Property changes on: . ___________________________________________________________________ Modified: svn:mergeinfo Merged /head/sys:r176448,178132,178853,179436,179695,179771,182293 Index: dev/bce/if_bce.c =================================================================== --- dev/bce/if_bce.c (revision 184569) +++ dev/bce/if_bce.c (working copy) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2006-2007 Broadcom Corporation + * Copyright (c) 2006-2008 Broadcom Corporation * David Christensen . All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,13 +34,19 @@ /* * The following controllers are supported by this driver: * BCM5706C A2, A3 + * BCM5706S A2, A3 * BCM5708C B1, B2 + * BCM5708S B1, B2 + * BCM5709C A1, C0 + * BCM5716 C0 * * The following controllers are not supported by this driver: - * BCM5706C A0, A1 - * BCM5706S A0, A1, A2, A3 - * BCM5708C A0, B0 - * BCM5708S A0, B0, B1, B2 + * BCM5706C A0, A1 (pre-production) + * BCM5706S A0, A1 (pre-production) + * BCM5708C A0, B0 (pre-production) + * BCM5708S A0, B0 (pre-production) + * BCM5709C A0 B0, B1, B2 (pre-production) + * BCM5709S A0, A1, B0, B1, B2, C0 (pre-production) */ #include "opt_bce.h" @@ -80,7 +86,13 @@ int bce_debug_bootcode_running_failure = 0; #endif +/****************************************************************************/ +/* BCE Build Time Options */ +/****************************************************************************/ +#define BCE_USE_SPLIT_HEADER 1 +/* #define BCE_NVRAM_WRITE_SUPPORT 1 */ + /****************************************************************************/ /* PCI Device ID Table */ /* */ @@ -110,6 +122,19 @@ /* BCM5708S controllers and OEM boards. */ { BRCM_VENDORID, BRCM_DEVICEID_BCM5708S, PCI_ANY_ID, PCI_ANY_ID, "Broadcom NetXtreme II BCM5708 1000Base-SX" }, + + /* BCM5709C controllers and OEM boards. */ + { BRCM_VENDORID, BRCM_DEVICEID_BCM5709, PCI_ANY_ID, PCI_ANY_ID, + "Broadcom NetXtreme II BCM5709 1000Base-T" }, + + /* BCM5709S controllers and OEM boards. */ + { BRCM_VENDORID, BRCM_DEVICEID_BCM5709S, PCI_ANY_ID, PCI_ANY_ID, + "Broadcom NetXtreme II BCM5709 1000Base-SX" }, + + /* BCM5716 controllers and OEM boards. */ + { BRCM_VENDORID, BRCM_DEVICEID_BCM5716, PCI_ANY_ID, PCI_ANY_ID, + "Broadcom NetXtreme II BCM5716 1000Base-T" }, + { 0, 0, 0, 0, NULL } }; @@ -119,92 +144,111 @@ /****************************************************************************/ static struct flash_spec flash_table[] = { +#define BUFFERED_FLAGS (BCE_NV_BUFFERED | BCE_NV_TRANSLATE) +#define NONBUFFERED_FLAGS (BCE_NV_WREN) + /* Slow EEPROM */ {0x00000000, 0x40830380, 0x009f0081, 0xa184a053, 0xaf000400, - 1, SEEPROM_PAGE_BITS, SEEPROM_PAGE_SIZE, + BUFFERED_FLAGS, SEEPROM_PAGE_BITS, SEEPROM_PAGE_SIZE, SEEPROM_BYTE_ADDR_MASK, SEEPROM_TOTAL_SIZE, "EEPROM - slow"}, /* Expansion entry 0001 */ {0x08000002, 0x4b808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 0001"}, /* Saifun SA25F010 (non-buffered flash) */ /* strap, cfg1, & write1 need updates */ {0x04000001, 0x47808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, SAIFUN_FLASH_BASE_TOTAL_SIZE*2, "Non-buffered flash (128kB)"}, /* Saifun SA25F020 (non-buffered flash) */ /* strap, cfg1, & write1 need updates */ {0x0c000003, 0x4f808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, SAIFUN_FLASH_BASE_TOTAL_SIZE*4, "Non-buffered flash (256kB)"}, /* Expansion entry 0100 */ {0x11000000, 0x53808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 0100"}, /* Entry 0101: ST M45PE10 (non-buffered flash, TetonII B0) */ {0x19000002, 0x5b808201, 0x000500db, 0x03840253, 0xaf020406, - 0, ST_MICRO_FLASH_PAGE_BITS, ST_MICRO_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, ST_MICRO_FLASH_PAGE_BITS, ST_MICRO_FLASH_PAGE_SIZE, ST_MICRO_FLASH_BYTE_ADDR_MASK, ST_MICRO_FLASH_BASE_TOTAL_SIZE*2, "Entry 0101: ST M45PE10 (128kB non-bufferred)"}, /* Entry 0110: ST M45PE20 (non-buffered flash)*/ {0x15000001, 0x57808201, 0x000500db, 0x03840253, 0xaf020406, - 0, ST_MICRO_FLASH_PAGE_BITS, ST_MICRO_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, ST_MICRO_FLASH_PAGE_BITS, ST_MICRO_FLASH_PAGE_SIZE, ST_MICRO_FLASH_BYTE_ADDR_MASK, ST_MICRO_FLASH_BASE_TOTAL_SIZE*4, "Entry 0110: ST M45PE20 (256kB non-bufferred)"}, /* Saifun SA25F005 (non-buffered flash) */ /* strap, cfg1, & write1 need updates */ {0x1d000003, 0x5f808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, SAIFUN_FLASH_BASE_TOTAL_SIZE, "Non-buffered flash (64kB)"}, /* Fast EEPROM */ {0x22000000, 0x62808380, 0x009f0081, 0xa184a053, 0xaf000400, - 1, SEEPROM_PAGE_BITS, SEEPROM_PAGE_SIZE, + BUFFERED_FLAGS, SEEPROM_PAGE_BITS, SEEPROM_PAGE_SIZE, SEEPROM_BYTE_ADDR_MASK, SEEPROM_TOTAL_SIZE, "EEPROM - fast"}, /* Expansion entry 1001 */ {0x2a000002, 0x6b808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 1001"}, /* Expansion entry 1010 */ {0x26000001, 0x67808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 1010"}, /* ATMEL AT45DB011B (buffered flash) */ {0x2e000003, 0x6e808273, 0x00570081, 0x68848353, 0xaf000400, - 1, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, + BUFFERED_FLAGS, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, BUFFERED_FLASH_BYTE_ADDR_MASK, BUFFERED_FLASH_TOTAL_SIZE, "Buffered flash (128kB)"}, /* Expansion entry 1100 */ {0x33000000, 0x73808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 1100"}, /* Expansion entry 1101 */ {0x3b000002, 0x7b808201, 0x00050081, 0x03840253, 0xaf020406, - 0, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, + NONBUFFERED_FLAGS, SAIFUN_FLASH_PAGE_BITS, SAIFUN_FLASH_PAGE_SIZE, SAIFUN_FLASH_BYTE_ADDR_MASK, 0, "Entry 1101"}, /* Ateml Expansion entry 1110 */ {0x37000001, 0x76808273, 0x00570081, 0x68848353, 0xaf000400, - 1, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, + BUFFERED_FLAGS, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, BUFFERED_FLASH_BYTE_ADDR_MASK, 0, "Entry 1110 (Atmel)"}, /* ATMEL AT45DB021B (buffered flash) */ {0x3f000003, 0x7e808273, 0x00570081, 0x68848353, 0xaf000400, - 1, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, + BUFFERED_FLAGS, BUFFERED_FLASH_PAGE_BITS, BUFFERED_FLASH_PAGE_SIZE, BUFFERED_FLASH_BYTE_ADDR_MASK, BUFFERED_FLASH_TOTAL_SIZE*2, "Buffered flash (256kB)"}, }; +/* + * The BCM5709 controllers transparently handle the + * differences between Atmel 264 byte pages and all + * flash devices which use 256 byte pages, so no + * logical-to-physical mapping is required in the + * driver. + */ +static struct flash_spec flash_5709 = { + .flags = BCE_NV_BUFFERED, + .page_bits = BCM5709_FLASH_PAGE_BITS, + .page_size = BCM5709_FLASH_PAGE_SIZE, + .addr_mask = BCM5709_FLASH_BYTE_ADDR_MASK, + .total_size = BUFFERED_FLASH_TOTAL_SIZE * 2, + .name = "5709/5716 buffered flash (256kB)", +}; + /****************************************************************************/ /* FreeBSD device entry points. */ /****************************************************************************/ @@ -218,19 +262,41 @@ /* BCE Debug Data Structure Dump Routines */ /****************************************************************************/ #ifdef BCE_DEBUG +static u32 bce_reg_rd (struct bce_softc *, u32); +static void bce_reg_wr (struct bce_softc *, u32, u32); +static void bce_reg_wr16 (struct bce_softc *, u32, u16); +static u32 bce_ctx_rd (struct bce_softc *, u32, u32); +static void bce_dump_enet (struct bce_softc *, struct mbuf *); static void bce_dump_mbuf (struct bce_softc *, struct mbuf *); -static void bce_dump_tx_mbuf_chain (struct bce_softc *, int, int); -static void bce_dump_rx_mbuf_chain (struct bce_softc *, int, int); +static void bce_dump_tx_mbuf_chain (struct bce_softc *, u16, int); +static void bce_dump_rx_mbuf_chain (struct bce_softc *, u16, int); +#ifdef BCE_USE_SPLIT_HEADER +static void bce_dump_pg_mbuf_chain (struct bce_softc *, u16, int); +#endif static void bce_dump_txbd (struct bce_softc *, int, struct tx_bd *); static void bce_dump_rxbd (struct bce_softc *, int, struct rx_bd *); +#ifdef BCE_USE_SPLIT_HEADER +static void bce_dump_pgbd (struct bce_softc *, int, struct rx_bd *); +#endif static void bce_dump_l2fhdr (struct bce_softc *, int, struct l2_fhdr *); -static void bce_dump_tx_chain (struct bce_softc *, int, int); -static void bce_dump_rx_chain (struct bce_softc *, int, int); +static void bce_dump_ctx (struct bce_softc *, u16); +static void bce_dump_ftqs (struct bce_softc *); +static void bce_dump_tx_chain (struct bce_softc *, u16, int); +static void bce_dump_rx_chain (struct bce_softc *, u16, int); +#ifdef BCE_USE_SPLIT_HEADER +static void bce_dump_pg_chain (struct bce_softc *, u16, int); +#endif static void bce_dump_status_block (struct bce_softc *); static void bce_dump_stats_block (struct bce_softc *); static void bce_dump_driver_state (struct bce_softc *); static void bce_dump_hw_state (struct bce_softc *); +static void bce_dump_mq_regs (struct bce_softc *); static void bce_dump_bc_state (struct bce_softc *); +static void bce_dump_txp_state (struct bce_softc *, int); +static void bce_dump_rxp_state (struct bce_softc *, int); +static void bce_dump_tpat_state (struct bce_softc *, int); +static void bce_dump_cp_state (struct bce_softc *, int); +static void bce_dump_com_state (struct bce_softc *, int); static void bce_breakpoint (struct bce_softc *); #endif @@ -268,6 +334,7 @@ /****************************************************************************/ /* */ /****************************************************************************/ +static void bce_get_media (struct bce_softc *); static void bce_dma_map_addr (void *, bus_dma_segment_t *, int, int); static int bce_dma_alloc (device_t); static void bce_dma_free (struct bce_softc *); @@ -279,20 +346,35 @@ static int bce_fw_sync (struct bce_softc *, u32); static void bce_load_rv2p_fw (struct bce_softc *, u32 *, u32, u32); static void bce_load_cpu_fw (struct bce_softc *, struct cpu_reg *, struct fw_info *); +static void bce_init_rxp_cpu (struct bce_softc *); +static void bce_init_txp_cpu (struct bce_softc *); +static void bce_init_tpat_cpu (struct bce_softc *); +static void bce_init_cp_cpu (struct bce_softc *); +static void bce_init_com_cpu (struct bce_softc *); static void bce_init_cpus (struct bce_softc *); +static void bce_print_adapter_info (struct bce_softc *); +static void bce_probe_pci_caps (device_t, struct bce_softc *); static void bce_stop (struct bce_softc *); static int bce_reset (struct bce_softc *, u32); static int bce_chipinit (struct bce_softc *); static int bce_blockinit (struct bce_softc *); -static int bce_get_buf (struct bce_softc *, struct mbuf *, u16 *, u16 *, u32 *); static int bce_init_tx_chain (struct bce_softc *); +static void bce_free_tx_chain (struct bce_softc *); + +static int bce_get_rx_buf (struct bce_softc *, struct mbuf *, u16 *, u16 *, u32 *); +static int bce_init_rx_chain (struct bce_softc *); static void bce_fill_rx_chain (struct bce_softc *); -static int bce_init_rx_chain (struct bce_softc *); static void bce_free_rx_chain (struct bce_softc *); -static void bce_free_tx_chain (struct bce_softc *); +#ifdef BCE_USE_SPLIT_HEADER +static int bce_get_pg_buf (struct bce_softc *, struct mbuf *, u16 *, u16 *); +static int bce_init_pg_chain (struct bce_softc *); +static void bce_fill_pg_chain (struct bce_softc *); +static void bce_free_pg_chain (struct bce_softc *); +#endif + static int bce_tx_encap (struct bce_softc *, struct mbuf **); static void bce_start_locked (struct ifnet *); static void bce_start (struct ifnet *); @@ -305,19 +387,16 @@ static void bce_init (void *); static void bce_mgmt_init_locked (struct bce_softc *sc); -static void bce_init_context (struct bce_softc *); +static void bce_init_ctx (struct bce_softc *); static void bce_get_mac_addr (struct bce_softc *); static void bce_set_mac_addr (struct bce_softc *); static void bce_phy_intr (struct bce_softc *); +static inline u16 bce_get_hw_rx_cons(struct bce_softc *); static void bce_rx_intr (struct bce_softc *); static void bce_tx_intr (struct bce_softc *); static void bce_disable_intr (struct bce_softc *); -static void bce_enable_intr (struct bce_softc *); +static void bce_enable_intr (struct bce_softc *, int); -#ifdef DEVICE_POLLING -static void bce_poll_locked (struct ifnet *, enum poll_cmd, int); -static void bce_poll (struct ifnet *, enum poll_cmd, int); -#endif static void bce_intr (void *); static void bce_set_rx_mode (struct bce_softc *); static void bce_stats_update (struct bce_softc *); @@ -330,20 +409,28 @@ /* FreeBSD device dispatch table. */ /****************************************************************************/ static device_method_t bce_methods[] = { - /* Device interface */ + /* Device interface (device_if.h) */ DEVMETHOD(device_probe, bce_probe), DEVMETHOD(device_attach, bce_attach), DEVMETHOD(device_detach, bce_detach), DEVMETHOD(device_shutdown, bce_shutdown), +/* Supported by device interface but not used here. */ +/* DEVMETHOD(device_identify, bce_identify), */ +/* DEVMETHOD(device_suspend, bce_suspend), */ +/* DEVMETHOD(device_resume, bce_resume), */ +/* DEVMETHOD(device_quiesce, bce_quiesce), */ - /* bus interface */ + /* Bus interface (bus_if.h) */ DEVMETHOD(bus_print_child, bus_generic_print_child), DEVMETHOD(bus_driver_added, bus_generic_driver_added), - /* MII interface */ + /* MII interface (miibus_if.h) */ DEVMETHOD(miibus_readreg, bce_miibus_read_reg), DEVMETHOD(miibus_writereg, bce_miibus_write_reg), DEVMETHOD(miibus_statchg, bce_miibus_statchg), +/* Supported by MII interface but not used here. */ +/* DEVMETHOD(miibus_linkchg, bce_miibus_linkchg), */ +/* DEVMETHOD(miibus_mediainit, bce_miibus_mediainit), */ { 0, 0 } }; @@ -367,20 +454,27 @@ /****************************************************************************/ /* Tunable device values */ /****************************************************************************/ -static int bce_tso_enable = TRUE; -static int bce_msi_enable = 1; +SYSCTL_NODE(_hw, OID_AUTO, bce, CTLFLAG_RD, 0, "bce driver parameters"); /* Allowable values are TRUE or FALSE */ +static int bce_tso_enable = TRUE; TUNABLE_INT("hw.bce.tso_enable", &bce_tso_enable); -/* Allowable values are 0 (IRQ only) and 1 (IRQ or MSI) */ -TUNABLE_INT("hw.bce.msi_enable", &bce_msi_enable); - -SYSCTL_NODE(_hw, OID_AUTO, bce, CTLFLAG_RD, 0, "bce driver parameters"); SYSCTL_UINT(_hw_bce, OID_AUTO, tso_enable, CTLFLAG_RDTUN, &bce_tso_enable, 0, "TSO Enable/Disable"); + +/* Allowable values are 0 (IRQ), 1 (MSI/IRQ), and 2 (MSI-X/MSI/IRQ) */ +/* ToDo: Add MSI-X support. */ +static int bce_msi_enable = 1; +TUNABLE_INT("hw.bce.msi_enable", &bce_msi_enable); SYSCTL_UINT(_hw_bce, OID_AUTO, msi_enable, CTLFLAG_RDTUN, &bce_msi_enable, 0, -"MSI | INTx selector"); +"MSI-X|MSI|INTx selector"); +/* ToDo: Add tunable to enable/disable strict MTU handling. */ +/* Currently allows "loose" RX MTU checking (i.e. sets the */ +/* H/W RX MTU to the size of the largest receive buffer, or */ +/* 2048 bytes). */ + + /****************************************************************************/ /* Device probe function. */ /* */ @@ -411,14 +505,14 @@ svid = pci_get_subvendor(dev); sdid = pci_get_subdevice(dev); - DBPRINT(sc, BCE_VERBOSE_LOAD, + DBPRINT(sc, BCE_EXTREME_LOAD, "%s(); VID = 0x%04X, DID = 0x%04X, SVID = 0x%04X, " "SDID = 0x%04X\n", __FUNCTION__, vid, did, svid, sdid); /* Look through the list of known devices for a match. */ while(t->bce_name != NULL) { - if ((vid == t->bce_vid) && (did == t->bce_did) && + if ((vid == t->bce_vid) && (did == t->bce_did) && ((svid == t->bce_svid) || (t->bce_svid == PCI_ANY_ID)) && ((sdid == t->bce_sdid) || (t->bce_sdid == PCI_ANY_ID))) { @@ -428,7 +522,7 @@ return(ENOMEM); /* Print out the device identity. */ - snprintf(descbuf, BCE_DEVDESC_MAX, "%s (%c%d)", + snprintf(descbuf, BCE_DEVDESC_MAX, "%s (%c%d)", t->bce_name, (((pci_read_config(dev, PCIR_REVID, 4) & 0xf0) >> 4) + 'A'), (pci_read_config(dev, PCIR_REVID, 4) & 0xf)); @@ -445,6 +539,109 @@ /****************************************************************************/ +/* PCI Capabilities Probe Function. */ +/* */ +/* Walks the PCI capabiites list for the device to find what features are */ +/* supported. */ +/* */ +/* Returns: */ +/* None. */ +/****************************************************************************/ +static void +bce_print_adapter_info(struct bce_softc *sc) +{ + DBENTER(BCE_VERBOSE_LOAD); + + BCE_PRINTF("ASIC (0x%08X); ", sc->bce_chipid); + printf("Rev (%c%d); ", ((BCE_CHIP_ID(sc) & 0xf000) >> 12) + 'A', + ((BCE_CHIP_ID(sc) & 0x0ff0) >> 4)); + + /* Bus info. */ + if (sc->bce_flags & BCE_PCIE_FLAG) { + printf("Bus (PCIe x%d, ", sc->link_width); + switch (sc->link_speed) { + case 1: printf("2.5Gbps); "); break; + case 2: printf("5Gbps); "); break; + default: printf("Unknown link speed); "); + } + } else { + printf("Bus (PCI%s, %s, %dMHz); ", + ((sc->bce_flags & BCE_PCIX_FLAG) ? "-X" : ""), + ((sc->bce_flags & BCE_PCI_32BIT_FLAG) ? "32-bit" : "64-bit"), + sc->bus_speed_mhz); + } + + /* Firmware version and device features. */ + printf("F/W (0x%08X); Flags( ", sc->bce_fw_ver); +#ifdef BCE_USE_SPLIT_HEADER + printf("SPLT "); +#endif + if (sc->bce_flags & BCE_MFW_ENABLE_FLAG) + printf("MFW "); + if (sc->bce_flags & BCE_USING_MSI_FLAG) + printf("MSI "); + if (sc->bce_flags & BCE_USING_MSIX_FLAG) + printf("MSI-X "); + if (sc->bce_phy_flags & BCE_PHY_2_5G_CAPABLE_FLAG) + printf("2.5G "); + printf(")\n"); + + DBEXIT(BCE_VERBOSE_LOAD); +} + + +/****************************************************************************/ +/* PCI Capabilities Probe Function. */ +/* */ +/* Walks the PCI capabiites list for the device to find what features are */ +/* supported. */ +/* */ +/* Returns: */ +/* None. */ +/****************************************************************************/ +static void +bce_probe_pci_caps(device_t dev, struct bce_softc *sc) +{ + u32 reg; + + DBENTER(BCE_VERBOSE_LOAD); + + /* Check if PCI-X capability is enabled. */ + if (pci_find_extcap(dev, PCIY_PCIX, ®) == 0) { + if (reg != 0) + sc->bce_cap_flags |= BCE_PCIX_CAPABLE_FLAG; + } + + /* Check if PCIe capability is enabled. */ + if (pci_find_extcap(dev, PCIY_EXPRESS, ®) == 0) { + if (reg != 0) { + u16 link_status = pci_read_config(dev, reg + 0x12, 2); + DBPRINT(sc, BCE_INFO_LOAD, "PCIe link_status = 0x%08X\n", + link_status); + sc->link_speed = link_status & 0xf; + sc->link_width = (link_status >> 4) & 0x3f; + sc->bce_cap_flags |= BCE_PCIE_CAPABLE_FLAG; + sc->bce_flags |= BCE_PCIE_FLAG; + } + } + + /* Check if MSI capability is enabled. */ + if (pci_find_extcap(dev, PCIY_MSI, ®) == 0) { + if (reg != 0) + sc->bce_cap_flags |= BCE_MSI_CAPABLE_FLAG; + } + + /* Check if MSI-X capability is enabled. */ + if (pci_find_extcap(dev, PCIY_MSIX, ®) == 0) { + if (reg != 0) + sc->bce_cap_flags |= BCE_MSIX_CAPABLE_FLAG; + } + + DBEXIT(BCE_VERBOSE_LOAD); +} + + +/****************************************************************************/ /* Device attach function. */ /* */ /* Allocates device resources, performs secondary chip identification, */ @@ -460,21 +657,19 @@ struct bce_softc *sc; struct ifnet *ifp; u32 val; - int count, mbuf, rid, rc = 0; + int error, rid, rc = 0; sc = device_get_softc(dev); sc->bce_dev = dev; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_LOAD | BCE_VERBOSE_RESET); - mbuf = device_get_unit(dev); + sc->bce_unit = device_get_unit(dev); /* Set initial device and PHY flags */ sc->bce_flags = 0; sc->bce_phy_flags = 0; - sc->bce_unit = mbuf; - pci_enable_busmaster(dev); /* Allocate PCI memory resources. */ @@ -483,7 +678,7 @@ &rid, RF_ACTIVE | PCI_RF_DENSE); if (sc->bce_res_mem == NULL) { - BCE_PRINTF("%s(%d): PCI memory allocation failed\n", + BCE_PRINTF("%s(%d): PCI memory allocation failed\n", __FILE__, __LINE__); rc = ENXIO; goto bce_attach_fail; @@ -494,25 +689,74 @@ sc->bce_bhandle = rman_get_bushandle(sc->bce_res_mem); sc->bce_vhandle = (vm_offset_t) rman_get_virtual(sc->bce_res_mem); - /* If MSI is enabled in the driver, get the vector count. */ - count = bce_msi_enable ? pci_msi_count(dev) : 0; + bce_probe_pci_caps(dev, sc); - /* Allocate PCI IRQ resources. */ - if (count == 1 && pci_alloc_msi(dev, &count) == 0 && count == 1) { - rid = 1; - sc->bce_flags |= BCE_USING_MSI_FLAG; - DBPRINT(sc, BCE_VERBOSE_LOAD, - "Allocating %d MSI interrupt(s)\n", count); - } else { + rid = 1; +#if 0 + /* Try allocating MSI-X interrupts. */ + if ((sc->bce_cap_flags & BCE_MSIX_CAPABLE_FLAG) && + (bce_msi_enable >= 2) && + ((sc->bce_res_irq = bus_alloc_resource_any(dev, SYS_RES_MEMORY, + &rid, RF_ACTIVE)) != NULL)) { + + msi_needed = sc->bce_msi_count = 1; + + if (((error = pci_alloc_msix(dev, &sc->bce_msi_count)) != 0) || + (sc->bce_msi_count != msi_needed)) { + BCE_PRINTF("%s(%d): MSI-X allocation failed! Requested = %d," + "Received = %d, error = %d\n", __FILE__, __LINE__, + msi_needed, sc->bce_msi_count, error); + sc->bce_msi_count = 0; + pci_release_msi(dev); + bus_release_resource(dev, SYS_RES_MEMORY, rid, + sc->bce_res_irq); + sc->bce_res_irq = NULL; + } else { + DBPRINT(sc, BCE_INFO_LOAD, "%s(): Using MSI-X interrupt.\n", + __FUNCTION__); + sc->bce_flags |= BCE_USING_MSIX_FLAG; + sc->bce_intr = bce_intr; + } + } +#endif + + /* Try allocating a MSI interrupt. */ + if ((sc->bce_cap_flags & BCE_MSI_CAPABLE_FLAG) && + (bce_msi_enable >= 1) && (sc->bce_msi_count == 0)) { + sc->bce_msi_count = 1; + if ((error = pci_alloc_msi(dev, &sc->bce_msi_count)) != 0) { + BCE_PRINTF("%s(%d): MSI allocation failed! error = %d\n", + __FILE__, __LINE__, error); + sc->bce_msi_count = 0; + pci_release_msi(dev); + } else { + DBPRINT(sc, BCE_INFO_LOAD, "%s(): Using MSI interrupt.\n", + __FUNCTION__); + sc->bce_flags |= BCE_USING_MSI_FLAG; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) + sc->bce_flags |= BCE_ONE_SHOT_MSI_FLAG; + sc->bce_irq_rid = 1; + sc->bce_intr = bce_intr; + } + } + + /* Try allocating a legacy interrupt. */ + if (sc->bce_msi_count == 0) { + DBPRINT(sc, BCE_INFO_LOAD, "%s(): Using INTx interrupt.\n", + __FUNCTION__); rid = 0; - DBPRINT(sc, BCE_VERBOSE_LOAD, "Allocating IRQ interrupt\n"); + sc->bce_intr = bce_intr; } - sc->bce_res_irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, &rid, - RF_SHAREABLE | RF_ACTIVE); + sc->bce_res_irq = bus_alloc_resource_any(dev, SYS_RES_IRQ, + &rid, RF_SHAREABLE | RF_ACTIVE); + sc->bce_irq_rid = rid; + + /* Report any IRQ allocation errors. */ if (sc->bce_res_irq == NULL) { - BCE_PRINTF("%s(%d): PCI map interrupt failed!\n", + BCE_PRINTF("%s(%d): PCI map interrupt failed!\n", __FILE__, __LINE__); rc = ENXIO; goto bce_attach_fail; @@ -540,18 +784,22 @@ case BCE_CHIP_ID_5706_A1: case BCE_CHIP_ID_5708_A0: case BCE_CHIP_ID_5708_B0: + case BCE_CHIP_ID_5709_A0: + case BCE_CHIP_ID_5709_B0: + case BCE_CHIP_ID_5709_B1: + case BCE_CHIP_ID_5709_B2: BCE_PRINTF("%s(%d): Unsupported controller revision (%c%d)!\n", - __FILE__, __LINE__, + __FILE__, __LINE__, (((pci_read_config(dev, PCIR_REVID, 4) & 0xf0) >> 4) + 'A'), (pci_read_config(dev, PCIR_REVID, 4) & 0xf)); rc = ENODEV; goto bce_attach_fail; } - /* - * The embedded PCIe to PCI-X bridge (EPB) - * in the 5708 cannot address memory above - * 40 bits (E7_5708CB1_23043 & E6_5708SB1_23043). + /* + * The embedded PCIe to PCI-X bridge (EPB) + * in the 5708 cannot address memory above + * 40 bits (E7_5708CB1_23043 & E6_5708SB1_23043). */ if (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5708) sc->max_bus_addr = BCE_BUS_SPACE_MAXADDR; @@ -565,25 +813,23 @@ */ val = REG_RD_IND(sc, BCE_SHM_HDR_SIGNATURE); if ((val & BCE_SHM_HDR_SIGNATURE_SIG_MASK) == BCE_SHM_HDR_SIGNATURE_SIG) - sc->bce_shmem_base = REG_RD_IND(sc, BCE_SHM_HDR_ADDR_0); + /* Multi-port devices use different offsets in shared memory. */ + sc->bce_shmem_base = REG_RD_IND(sc, BCE_SHM_HDR_ADDR_0 + + (pci_get_function(sc->bce_dev) << 2)); else sc->bce_shmem_base = HOST_VIEW_SHMEM_BASE; - DBPRINT(sc, BCE_VERBOSE_FIRMWARE, "%s(): bce_shmem_base = 0x%08X\n", + DBPRINT(sc, BCE_VERBOSE_FIRMWARE, "%s(): bce_shmem_base = 0x%08X\n", __FUNCTION__, sc->bce_shmem_base); - sc->bce_fw_ver = REG_RD_IND(sc, sc->bce_shmem_base + + /* Fetch the bootcode revision. */ + sc->bce_fw_ver = REG_RD_IND(sc, sc->bce_shmem_base + BCE_DEV_INFO_BC_REV); - DBPRINT(sc, BCE_INFO_FIRMWARE, "%s(): bce_fw_ver = 0x%08X\n", - __FUNCTION__, sc->bce_fw_ver); /* Check if any management firmware is running. */ val = REG_RD_IND(sc, sc->bce_shmem_base + BCE_PORT_FEATURE); - if (val & (BCE_PORT_FEATURE_ASF_ENABLED | BCE_PORT_FEATURE_IMD_ENABLED)) { + if (val & (BCE_PORT_FEATURE_ASF_ENABLED | BCE_PORT_FEATURE_IMD_ENABLED)) sc->bce_flags |= BCE_MFW_ENABLE_FLAG; - DBPRINT(sc, BCE_INFO_LOAD, "%s(): BCE_MFW_ENABLE_FLAG\n", - __FUNCTION__); - } /* Get PCI bus information (speed and type). */ val = REG_RD(sc, BCE_PCICFG_MISC_STATUS); @@ -632,7 +878,7 @@ /* Reset the controller and announce to bootcode that driver is present. */ if (bce_reset(sc, BCE_DRV_MSG_CODE_RESET)) { - BCE_PRINTF("%s(%d): Controller reset failed!\n", + BCE_PRINTF("%s(%d): Controller reset failed!\n", __FILE__, __LINE__); rc = ENXIO; goto bce_attach_fail; @@ -662,7 +908,7 @@ * should be ready before generating an * interrupt while ticks control how long * a BD can sit in the chain before - * generating an interrupt. Set the default + * generating an interrupt. Set the default * values for the RX and TX chains. */ @@ -693,33 +939,14 @@ /* Update statistics once every second. */ sc->bce_stats_ticks = 1000000 & 0xffff00; - /* - * The SerDes based NetXtreme II controllers - * that support 2.5Gb operation (currently - * 5708S) use a PHY at address 2, otherwise - * the PHY is present at address 1. - */ - sc->bce_phy_addr = 1; + /* Find the media type for the adapter. */ + bce_get_media(sc); - if (BCE_CHIP_BOND_ID(sc) & BCE_CHIP_BOND_ID_SERDES_BIT) { - sc->bce_phy_flags |= BCE_PHY_SERDES_FLAG; - sc->bce_flags |= BCE_NO_WOL_FLAG; - if (BCE_CHIP_NUM(sc) != BCE_CHIP_NUM_5706) { - sc->bce_phy_addr = 2; - val = REG_RD_IND(sc, sc->bce_shmem_base + - BCE_SHARED_HW_CFG_CONFIG); - if (val & BCE_SHARED_HW_CFG_PHY_2_5G) { - sc->bce_phy_flags |= BCE_PHY_2_5G_CAPABLE_FLAG; - DBPRINT(sc, BCE_INFO_LOAD, "Found 2.5Gb capable adapter\n"); - } - } - } - /* Store data needed by PHY driver for backplane applications */ sc->bce_shared_hw_cfg = REG_RD_IND(sc, sc->bce_shmem_base + BCE_SHARED_HW_CFG_CONFIG); sc->bce_port_hw_cfg = REG_RD_IND(sc, sc->bce_shmem_base + - BCE_SHARED_HW_CFG_CONFIG); + BCE_PORT_HW_CFG_CONFIG); /* Allocate DMA memory resources. */ if (bce_dma_alloc(dev)) { @@ -732,7 +959,7 @@ /* Allocate an ifnet structure. */ ifp = sc->bce_ifp = if_alloc(IFT_ETHER); if (ifp == NULL) { - BCE_PRINTF("%s(%d): Interface allocation failed!\n", + BCE_PRINTF("%s(%d): Interface allocation failed!\n", __FILE__, __LINE__); rc = ENXIO; goto bce_attach_fail; @@ -757,10 +984,24 @@ ifp->if_capenable = ifp->if_capabilities; - /* Assume a standard 1500 byte MTU size for mbuf allocations. */ - sc->mbuf_alloc_size = MCLBYTES; -#ifdef DEVICE_POLLING - ifp->if_capabilities |= IFCAP_POLLING; + /* + * Assume standard mbuf sizes for buffer allocation. + * This may change later if the MTU size is set to + * something other than 1500. + */ +#ifdef BCE_USE_SPLIT_HEADER + sc->rx_bd_mbuf_alloc_size = MHLEN; + /* Make sure offset is 16 byte aligned for hardware. */ + sc->rx_bd_mbuf_align_pad = roundup2((MSIZE - MHLEN), 16) - + (MSIZE - MHLEN); + sc->rx_bd_mbuf_data_len = sc->rx_bd_mbuf_alloc_size - + sc->rx_bd_mbuf_align_pad; + sc->pg_bd_mbuf_alloc_size = MCLBYTES; +#else + sc->rx_bd_mbuf_alloc_size = MCLBYTES; + sc->rx_bd_mbuf_align_pad = roundup2(MCLBYTES, 16) - MCLBYTES; + sc->rx_bd_mbuf_data_len = sc->rx_bd_mbuf_alloc_size - + sc->rx_bd_mbuf_align_pad; #endif ifp->if_snd.ifq_drv_maxlen = USABLE_TX_BD; @@ -775,7 +1016,7 @@ /* Check for an MII child bus by probing the PHY. */ if (mii_phy_probe(dev, &sc->bce_miibus, bce_ifmedia_upd, bce_ifmedia_sts)) { - BCE_PRINTF("%s(%d): No PHY found on child MII bus!\n", + BCE_PRINTF("%s(%d): No PHY found on child MII bus!\n", __FILE__, __LINE__); rc = ENXIO; goto bce_attach_fail; @@ -793,30 +1034,31 @@ #endif /* Hookup IRQ last. */ - rc = bus_setup_intr(dev, sc->bce_res_irq, INTR_TYPE_NET | INTR_MPSAFE, NULL, - bce_intr, sc, &sc->bce_intrhand); + rc = bus_setup_intr(dev, sc->bce_res_irq, INTR_TYPE_NET | INTR_MPSAFE, + NULL, bce_intr, sc, &sc->bce_intrhand); if (rc) { - BCE_PRINTF("%s(%d): Failed to setup IRQ!\n", + BCE_PRINTF("%s(%d): Failed to setup IRQ!\n", __FILE__, __LINE__); bce_detach(dev); goto bce_attach_exit; } - /* - * At this point we've acquired all the resources + /* + * At this point we've acquired all the resources * we need to run so there's no turning back, we're * cleared for launch. */ /* Print some important debugging info. */ - DBRUN(BCE_INFO, bce_dump_driver_state(sc)); + DBRUNMSG(BCE_INFO, bce_dump_driver_state(sc)); /* Add the supported sysctls to the kernel. */ bce_add_sysctls(sc); BCE_LOCK(sc); - /* + + /* * The chip reset earlier notified the bootcode that * a driver is present. We now need to start our pulse * routine so that the bootcode is reminded that we're @@ -828,21 +1070,9 @@ BCE_UNLOCK(sc); /* Finally, print some useful adapter info */ - BCE_PRINTF("ASIC (0x%08X); ", sc->bce_chipid); - printf("Rev (%c%d); ", ((BCE_CHIP_ID(sc) & 0xf000) >> 12) + 'A', - ((BCE_CHIP_ID(sc) & 0x0ff0) >> 4)); - printf("Bus (PCI%s, %s, %dMHz); ", - ((sc->bce_flags & BCE_PCIX_FLAG) ? "-X" : ""), - ((sc->bce_flags & BCE_PCI_32BIT_FLAG) ? "32-bit" : "64-bit"), - sc->bus_speed_mhz); - printf("F/W (0x%08X); Flags( ", sc->bce_fw_ver); - if (sc->bce_flags & BCE_MFW_ENABLE_FLAG) - printf("MFW "); - if (sc->bce_flags & BCE_USING_MSI_FLAG) - printf("MSI "); - if (sc->bce_phy_flags & BCE_PHY_2_5G_CAPABLE_FLAG) - printf("2.5G "); - printf(")\n"); + bce_print_adapter_info(sc); + DBPRINT(sc, BCE_FATAL, "%s(): sc = %p\n", + __FUNCTION__, sc); goto bce_attach_exit; @@ -851,7 +1081,7 @@ bce_attach_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_LOAD | BCE_VERBOSE_RESET); return(rc); } @@ -872,26 +1102,23 @@ struct ifnet *ifp; u32 msg; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_UNLOAD | BCE_VERBOSE_RESET); ifp = sc->bce_ifp; -#ifdef DEVICE_POLLING - if (ifp->if_capenable & IFCAP_POLLING) - ether_poll_deregister(ifp); -#endif + /* Stop and reset the controller. */ + BCE_LOCK(sc); /* Stop the pulse so the bootcode can go to driver absent state. */ callout_stop(&sc->bce_pulse_callout); - /* Stop and reset the controller. */ - BCE_LOCK(sc); bce_stop(sc); if (sc->bce_flags & BCE_NO_WOL_FLAG) msg = BCE_DRV_MSG_CODE_UNLOAD_LNK_DN; else msg = BCE_DRV_MSG_CODE_UNLOAD; bce_reset(sc, msg); + BCE_UNLOCK(sc); ether_ifdetach(ifp); @@ -903,7 +1130,7 @@ /* Release all remaining resources. */ bce_release_resources(sc); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_UNLOAD | BCE_VERBOSE_RESET); return(0); } @@ -923,7 +1150,7 @@ struct bce_softc *sc = device_get_softc(dev); u32 msg; - DBPRINT(sc, BCE_VERBOSE_SPECIAL, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE); BCE_LOCK(sc); bce_stop(sc); @@ -933,14 +1160,61 @@ msg = BCE_DRV_MSG_CODE_UNLOAD; bce_reset(sc, msg); BCE_UNLOCK(sc); - - DBPRINT(sc, BCE_VERBOSE_SPECIAL, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE); + return (0); } +#ifdef BCE_DEBUG /****************************************************************************/ +/* Register read. */ +/* */ +/* Returns: */ +/* The value of the register. */ +/****************************************************************************/ +static u32 +bce_reg_rd(struct bce_softc *sc, u32 offset) +{ + u32 val = bus_space_read_4(sc->bce_btag, sc->bce_bhandle, offset); + DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", + __FUNCTION__, offset, val); + return val; +} + + +/****************************************************************************/ +/* Register write (16 bit). */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_reg_wr16(struct bce_softc *sc, u32 offset, u16 val) +{ + DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%04X\n", + __FUNCTION__, offset, val); + bus_space_write_2(sc->bce_btag, sc->bce_bhandle, offset, val); +} + + +/****************************************************************************/ +/* Register write. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_reg_wr(struct bce_softc *sc, u32 offset, u32 val) +{ + DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", + __FUNCTION__, offset, val); + bus_space_write_4(sc->bce_btag, sc->bce_bhandle, offset, val); +} +#endif + +/****************************************************************************/ /* Indirect register read. */ /* */ /* Reads NetXtreme II registers using an index/data register pair in PCI */ @@ -961,7 +1235,7 @@ { u32 val; val = pci_read_config(dev, BCE_PCICFG_REG_WINDOW, 4); - DBPRINT(sc, BCE_EXCESSIVE, "%s(); offset = 0x%08X, val = 0x%08X\n", + DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", __FUNCTION__, offset, val); return val; } @@ -987,7 +1261,7 @@ device_t dev; dev = sc->bce_dev; - DBPRINT(sc, BCE_EXCESSIVE, "%s(); offset = 0x%08X, val = 0x%08X\n", + DBPRINT(sc, BCE_INSANE_REG, "%s(); offset = 0x%08X, val = 0x%08X\n", __FUNCTION__, offset, val); pci_write_config(dev, BCE_PCICFG_REG_WINDOW_ADDRESS, offset, 4); @@ -995,7 +1269,59 @@ } +#ifdef BCE_DEBUG /****************************************************************************/ +/* Context memory read. */ +/* */ +/* The NetXtreme II controller uses context memory to track connection */ +/* information for L2 and higher network protocols. */ +/* */ +/* Returns: */ +/* The requested 32 bit value of context memory. */ +/****************************************************************************/ +static u32 +bce_ctx_rd(struct bce_softc *sc, u32 cid_addr, u32 ctx_offset) +{ + u32 idx, offset, retry_cnt = 5, val; + + DBRUNIF((cid_addr > MAX_CID_ADDR || ctx_offset & 0x3 || cid_addr & CTX_MASK), + BCE_PRINTF("%s(): Invalid CID address: 0x%08X.\n", + __FUNCTION__, cid_addr)); + + offset = ctx_offset + cid_addr; + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + + REG_WR(sc, BCE_CTX_CTX_CTRL, (offset | BCE_CTX_CTX_CTRL_READ_REQ)); + + for (idx = 0; idx < retry_cnt; idx++) { + val = REG_RD(sc, BCE_CTX_CTX_CTRL); + if ((val & BCE_CTX_CTX_CTRL_READ_REQ) == 0) + break; + DELAY(5); + } + + if (val & BCE_CTX_CTX_CTRL_READ_REQ) + BCE_PRINTF("%s(%d); Unable to read CTX memory: " + "cid_addr = 0x%08X, offset = 0x%08X!\n", + __FILE__, __LINE__, cid_addr, ctx_offset); + + val = REG_RD(sc, BCE_CTX_CTX_DATA); + } else { + REG_WR(sc, BCE_CTX_DATA_ADR, offset); + val = REG_RD(sc, BCE_CTX_DATA); + } + + DBPRINT(sc, BCE_EXTREME_CTX, "%s(); cid_addr = 0x%08X, offset = 0x%08X, " + "val = 0x%08X\n", __FUNCTION__, cid_addr, ctx_offset, val); + + return(val); +} +#endif + + +/****************************************************************************/ /* Context memory write. */ /* */ /* The NetXtreme II controller uses context memory to track connection */ @@ -1005,15 +1331,40 @@ /* Nothing. */ /****************************************************************************/ static void -bce_ctx_wr(struct bce_softc *sc, u32 cid_addr, u32 offset, u32 val) +bce_ctx_wr(struct bce_softc *sc, u32 cid_addr, u32 ctx_offset, u32 ctx_val) { + u32 idx, offset = ctx_offset + cid_addr; + u32 val, retry_cnt = 5; - DBPRINT(sc, BCE_EXCESSIVE, "%s(); cid_addr = 0x%08X, offset = 0x%08X, " - "val = 0x%08X\n", __FUNCTION__, cid_addr, offset, val); + DBPRINT(sc, BCE_EXTREME_CTX, "%s(); cid_addr = 0x%08X, offset = 0x%08X, " + "val = 0x%08X\n", __FUNCTION__, cid_addr, ctx_offset, ctx_val); - offset += cid_addr; - REG_WR(sc, BCE_CTX_DATA_ADR, offset); - REG_WR(sc, BCE_CTX_DATA, val); + DBRUNIF((cid_addr > MAX_CID_ADDR || ctx_offset & 0x3 || cid_addr & CTX_MASK), + BCE_PRINTF("%s(): Invalid CID address: 0x%08X.\n", + __FUNCTION__, cid_addr)); + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + + REG_WR(sc, BCE_CTX_CTX_DATA, ctx_val); + REG_WR(sc, BCE_CTX_CTX_CTRL, (offset | BCE_CTX_CTX_CTRL_WRITE_REQ)); + + for (idx = 0; idx < retry_cnt; idx++) { + val = REG_RD(sc, BCE_CTX_CTX_CTRL); + if ((val & BCE_CTX_CTX_CTRL_WRITE_REQ) == 0) + break; + DELAY(5); + } + + if (val & BCE_CTX_CTX_CTRL_WRITE_REQ) + BCE_PRINTF("%s(%d); Unable to write CTX memory: " + "cid_addr = 0x%08X, offset = 0x%08X!\n", + __FILE__, __LINE__, cid_addr, ctx_offset); + + } else { + REG_WR(sc, BCE_CTX_DATA_ADR, offset); + REG_WR(sc, BCE_CTX_DATA, ctx_val); + } } @@ -1036,7 +1387,7 @@ /* Make sure we are accessing the correct PHY address. */ if (phy != sc->bce_phy_addr) { - DBPRINT(sc, BCE_EXCESSIVE_PHY, "Invalid PHY address %d for PHY read!\n", phy); + DBPRINT(sc, BCE_INSANE_PHY, "Invalid PHY address %d for PHY read!\n", phy); return(0); } @@ -1050,6 +1401,7 @@ DELAY(40); } + val = BCE_MIPHY(phy) | BCE_MIREG(reg) | BCE_EMAC_MDIO_COMM_COMMAND_READ | BCE_EMAC_MDIO_COMM_DISEXT | BCE_EMAC_MDIO_COMM_START_BUSY; @@ -1077,8 +1429,6 @@ val = REG_RD(sc, BCE_EMAC_MDIO_COMM); } - DBPRINT(sc, BCE_EXCESSIVE, "%s(): phy = %d, reg = 0x%04X, val = 0x%04X\n", - __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff); if (sc->bce_phy_flags & BCE_PHY_INT_MODE_AUTO_POLLING_FLAG) { val = REG_RD(sc, BCE_EMAC_MDIO_MODE); @@ -1090,6 +1440,7 @@ DELAY(40); } + DB_PRINT_PHY_REG(reg, val); return (val & 0xffff); } @@ -1114,12 +1465,11 @@ /* Make sure we are accessing the correct PHY address. */ if (phy != sc->bce_phy_addr) { - DBPRINT(sc, BCE_EXCESSIVE_PHY, "Invalid PHY address %d for PHY write!\n", phy); + DBPRINT(sc, BCE_INSANE_PHY, "Invalid PHY address %d for PHY write!\n", phy); return(0); } - DBPRINT(sc, BCE_EXCESSIVE, "%s(): phy = %d, reg = 0x%04X, val = 0x%04X\n", - __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff); + DB_PRINT_PHY_REG(reg, val); if (sc->bce_phy_flags & BCE_PHY_INT_MODE_AUTO_POLLING_FLAG) { val1 = REG_RD(sc, BCE_EMAC_MDIO_MODE); @@ -1147,7 +1497,7 @@ } if (val1 & BCE_EMAC_MDIO_COMM_START_BUSY) - BCE_PRINTF("%s(%d): PHY write timeout!\n", + BCE_PRINTF("%s(%d): PHY write timeout!\n", __FILE__, __LINE__); if (sc->bce_phy_flags & BCE_PHY_INT_MODE_AUTO_POLLING_FLAG) { @@ -1182,11 +1532,13 @@ sc = device_get_softc(dev); + DBENTER(BCE_VERBOSE_PHY); + mii = device_get_softc(sc->bce_miibus); val = REG_RD(sc, BCE_EMAC_MODE); - val &= ~(BCE_EMAC_MODE_PORT | BCE_EMAC_MODE_HALF_DUPLEX | - BCE_EMAC_MODE_MAC_LOOP | BCE_EMAC_MODE_FORCE_LINK | + val &= ~(BCE_EMAC_MODE_PORT | BCE_EMAC_MODE_HALF_DUPLEX | + BCE_EMAC_MODE_MAC_LOOP | BCE_EMAC_MODE_FORCE_LINK | BCE_EMAC_MODE_25G); /* Set MII or GMII interface based on the speed negotiated by the PHY. */ @@ -1212,7 +1564,8 @@ val |= BCE_EMAC_MODE_PORT_GMII; break; default: - DBPRINT(sc, BCE_INFO, "Enabling default GMII interface.\n"); + DBPRINT(sc, BCE_INFO, "Unknown speed, enabling default GMII " + "interface.\n"); val |= BCE_EMAC_MODE_PORT_GMII; } @@ -1226,7 +1579,7 @@ REG_WR(sc, BCE_EMAC_MODE, val); #if 0 - /* Todo: Enable flow control support in brgphy and bge. */ + /* ToDo: Enable flow control support in brgphy and bge. */ /* FLAG0 is set if RX is enabled and FLAG1 if TX is enabled */ if (mii->mii_media_active & IFM_FLAG0) BCE_SETBIT(sc, BCE_EMAC_RX_MODE, BCE_EMAC_RX_MODE_FLOW_EN); @@ -1234,6 +1587,7 @@ BCE_SETBIT(sc, BCE_EMAC_RX_MODE, BCE_EMAC_TX_MODE_FLOW_EN); #endif + DBEXIT(BCE_VERBOSE_PHY); } @@ -1251,9 +1605,9 @@ bce_acquire_nvram_lock(struct bce_softc *sc) { u32 val; - int j; + int j, rc = 0; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Acquiring NVRAM lock.\n"); + DBENTER(BCE_VERBOSE_NVRAM); /* Request access to the flash interface. */ REG_WR(sc, BCE_NVM_SW_ARB, BCE_NVM_SW_ARB_ARB_REQ_SET2); @@ -1267,10 +1621,11 @@ if (j >= NVRAM_TIMEOUT_COUNT) { DBPRINT(sc, BCE_WARN, "Timeout acquiring NVRAM lock!\n"); - return EBUSY; + rc = EBUSY; } - return 0; + DBEXIT(BCE_VERBOSE_NVRAM); + return (rc); } @@ -1287,10 +1642,10 @@ static int bce_release_nvram_lock(struct bce_softc *sc) { - int j; u32 val; + int j, rc = 0; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Releasing NVRAM lock.\n"); + DBENTER(BCE_VERBOSE_NVRAM); /* * Relinquish nvram interface. @@ -1306,11 +1661,12 @@ } if (j >= NVRAM_TIMEOUT_COUNT) { - DBPRINT(sc, BCE_WARN, "Timeout reeasing NVRAM lock!\n"); - return EBUSY; + DBPRINT(sc, BCE_WARN, "Timeout releasing NVRAM lock!\n"); + rc = EBUSY; } - return 0; + DBEXIT(BCE_VERBOSE_NVRAM); + return (rc); } @@ -1327,13 +1683,14 @@ bce_enable_nvram_write(struct bce_softc *sc) { u32 val; + int rc = 0; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Enabling NVRAM write.\n"); + DBENTER(BCE_VERBOSE_NVRAM); val = REG_RD(sc, BCE_MISC_CFG); REG_WR(sc, BCE_MISC_CFG, val | BCE_MISC_CFG_NVM_WR_EN_PCI); - if (!sc->bce_flash_info->buffered) { + if (!(sc->bce_flash_info->flags & BCE_NV_BUFFERED)) { int j; REG_WR(sc, BCE_NVM_COMMAND, BCE_NVM_COMMAND_DONE); @@ -1349,10 +1706,12 @@ if (j >= NVRAM_TIMEOUT_COUNT) { DBPRINT(sc, BCE_WARN, "Timeout writing NVRAM!\n"); - return EBUSY; + rc = EBUSY; } } - return 0; + + DBENTER(BCE_VERBOSE_NVRAM); + return (rc); } @@ -1370,10 +1729,13 @@ { u32 val; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Disabling NVRAM write.\n"); + DBENTER(BCE_VERBOSE_NVRAM); val = REG_RD(sc, BCE_MISC_CFG); REG_WR(sc, BCE_MISC_CFG, val & ~BCE_MISC_CFG_NVM_WR_EN); + + DBEXIT(BCE_VERBOSE_NVRAM); + } #endif @@ -1392,12 +1754,14 @@ { u32 val; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Enabling NVRAM access.\n"); + DBENTER(BCE_VERBOSE_NVRAM); val = REG_RD(sc, BCE_NVM_ACCESS_ENABLE); /* Enable both bits, even on read. */ REG_WR(sc, BCE_NVM_ACCESS_ENABLE, val | BCE_NVM_ACCESS_ENABLE_EN | BCE_NVM_ACCESS_ENABLE_WR_EN); + + DBEXIT(BCE_VERBOSE_NVRAM); } @@ -1414,7 +1778,7 @@ { u32 val; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Disabling NVRAM access.\n"); + DBENTER(BCE_VERBOSE_NVRAM); val = REG_RD(sc, BCE_NVM_ACCESS_ENABLE); @@ -1422,6 +1786,8 @@ REG_WR(sc, BCE_NVM_ACCESS_ENABLE, val & ~(BCE_NVM_ACCESS_ENABLE_EN | BCE_NVM_ACCESS_ENABLE_WR_EN)); + + DBEXIT(BCE_VERBOSE_NVRAM); } @@ -1439,14 +1805,14 @@ bce_nvram_erase_page(struct bce_softc *sc, u32 offset) { u32 cmd; - int j; + int j, rc = 0; + DBENTER(BCE_VERBOSE_NVRAM); + /* Buffered flash doesn't require an erase. */ - if (sc->bce_flash_info->buffered) - return 0; + if (sc->bce_flash_info->flags & BCE_NV_BUFFERED) + goto bce_nvram_erase_page_exit; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Erasing NVRAM page.\n"); - /* Build an erase command. */ cmd = BCE_NVM_COMMAND_ERASE | BCE_NVM_COMMAND_WR | BCE_NVM_COMMAND_DOIT; @@ -1472,10 +1838,12 @@ if (j >= NVRAM_TIMEOUT_COUNT) { DBPRINT(sc, BCE_WARN, "Timeout erasing NVRAM.\n"); - return EBUSY; + rc = EBUSY; } - return 0; +bce_nvram_erase_page_exit: + DBEXIT(BCE_VERBOSE_NVRAM); + return (rc); } #endif /* BCE_NVRAM_WRITE_SUPPORT */ @@ -1496,11 +1864,13 @@ u32 cmd; int i, rc = 0; + DBENTER(BCE_EXTREME_NVRAM); + /* Build the command word. */ cmd = BCE_NVM_COMMAND_DOIT | cmd_flags; - /* Calculate the offset for buffered flash. */ - if (sc->bce_flash_info->buffered) { + /* Calculate the offset for buffered flash if translation is used. */ + if (sc->bce_flash_info->flags & BCE_NV_TRANSLATE) { offset = ((offset / sc->bce_flash_info->page_size) << sc->bce_flash_info->page_bits) + (offset % sc->bce_flash_info->page_size); @@ -1537,6 +1907,7 @@ rc = EBUSY; } + DBEXIT(BCE_EXTREME_NVRAM); return(rc); } @@ -1557,13 +1928,15 @@ u32 cmd_flags) { u32 cmd, val32; - int j; + int j, rc = 0; + DBENTER(BCE_VERBOSE_NVRAM); + /* Build the command word. */ cmd = BCE_NVM_COMMAND_DOIT | BCE_NVM_COMMAND_WR | cmd_flags; - /* Calculate the offset for buffered flash. */ - if (sc->bce_flash_info->buffered) { + /* Calculate the offset for buffered flash if translation is used. */ + if (sc->bce_flash_info->flags & BCE_NV_TRANSLATE) { offset = ((offset / sc->bce_flash_info->page_size) << sc->bce_flash_info->page_bits) + (offset % sc->bce_flash_info->page_size); @@ -1590,10 +1963,11 @@ if (j >= NVRAM_TIMEOUT_COUNT) { BCE_PRINTF("%s(%d): Timeout error writing NVRAM at offset 0x%08X\n", __FILE__, __LINE__, offset); - return EBUSY; + rc = EBUSY; } - return 0; + DBEXIT(BCE_VERBOSE_NVRAM); + return (rc); } #endif /* BCE_NVRAM_WRITE_SUPPORT */ @@ -1611,18 +1985,22 @@ bce_init_nvram(struct bce_softc *sc) { u32 val; - int j, entry_count, rc; + int j, entry_count, rc = 0; struct flash_spec *flash; - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_NVRAM); + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + sc->bce_flash_info = &flash_5709; + goto bce_init_nvram_get_flash_size; + } + /* Determine the selected interface. */ val = REG_RD(sc, BCE_NVM_CFG1); entry_count = sizeof(flash_table) / sizeof(struct flash_spec); - rc = 0; - /* * Flash reconfiguration is required to support additional * NVRAM devices not directly supported in hardware. @@ -1633,7 +2011,7 @@ if (val & 0x40000000) { /* Flash interface reconfigured by bootcode. */ - DBPRINT(sc,BCE_INFO_LOAD, + DBPRINT(sc,BCE_INFO_LOAD, "bce_init_nvram(): Flash WAS reconfigured.\n"); for (j = 0, flash = &flash_table[0]; j < entry_count; @@ -1648,8 +2026,8 @@ /* Flash interface not yet reconfigured. */ u32 mask; - DBPRINT(sc,BCE_INFO_LOAD, - "bce_init_nvram(): Flash was NOT reconfigured.\n"); + DBPRINT(sc, BCE_INFO_LOAD, "%s(): Flash was NOT reconfigured.\n", + __FUNCTION__); if (val & (1 << 23)) mask = FLASH_BACKUP_STRAP_MASK; @@ -1685,11 +2063,12 @@ /* Check if a matching device was found. */ if (j == entry_count) { sc->bce_flash_info = NULL; - BCE_PRINTF("%s(%d): Unknown Flash NVRAM found!\n", + BCE_PRINTF("%s(%d): Unknown Flash NVRAM found!\n", __FILE__, __LINE__); rc = ENODEV; } +bce_init_nvram_get_flash_size: /* Write the flash config data to the shared memory interface. */ val = REG_RD_IND(sc, sc->bce_shmem_base + BCE_SHARED_HW_CFG_CONFIG2); val &= BCE_SHARED_HW_CFG2_NVM_SIZE_MASK; @@ -1698,11 +2077,11 @@ else sc->bce_flash_size = sc->bce_flash_info->total_size; - DBPRINT(sc, BCE_INFO_LOAD, "bce_init_nvram() flash->total_size = 0x%08X\n", + DBPRINT(sc, BCE_INFO_LOAD, "%s(): Found %s, size = 0x%08X\n", + __FUNCTION__, sc->bce_flash_info->name, sc->bce_flash_info->total_size); - DBPRINT(sc, BCE_VERBOSE_NVRAM, "Exiting %s()\n", __FUNCTION__); - + DBEXIT(BCE_VERBOSE_NVRAM); return rc; } @@ -1723,12 +2102,14 @@ int rc = 0; u32 cmd_flags, offset32, len32, extra; + DBENTER(BCE_VERBOSE_NVRAM); + if (buf_size == 0) - return 0; + goto bce_nvram_read_exit; /* Request access to the flash interface. */ if ((rc = bce_acquire_nvram_lock(sc)) != 0) - return rc; + goto bce_nvram_read_exit; /* Enable access to flash interface */ bce_enable_nvram_access(sc); @@ -1810,7 +2191,7 @@ } if (rc) - return rc; + goto bce_nvram_read_locked_exit; cmd_flags = BCE_NVM_COMMAND_LAST; rc = bce_nvram_read_dword(sc, offset32, buf, cmd_flags); @@ -1818,10 +2199,13 @@ memcpy(ret_buf, buf, 4 - extra); } +bce_nvram_read_locked_exit: /* Disable access to flash interface and release the lock. */ bce_disable_nvram_access(sc); bce_release_nvram_lock(sc); +bce_nvram_read_exit: + DBEXIT(BCE_VERBOSE_NVRAM); return rc; } @@ -1846,6 +2230,8 @@ int rc = 0; int align_start, align_end; + DBENTER(BCE_VERBOSE_NVRAM); + buf = data_buf; offset32 = offset; len32 = buf_size; @@ -1855,7 +2241,7 @@ offset32 &= ~3; len32 += align_start; if ((rc = bce_nvram_read(sc, offset32, start, 4))) - return rc; + goto bce_nvram_write_exit; } if (len32 & 3) { @@ -1864,18 +2250,22 @@ len32 += align_end; if ((rc = bce_nvram_read(sc, offset32 + len32 - 4, end, 4))) { - return rc; + goto bce_nvram_write_exit; } } } if (align_start || align_end) { buf = malloc(len32, M_DEVBUF, M_NOWAIT); - if (buf == 0) - return ENOMEM; + if (buf == 0) { + rc = ENOMEM; + goto bce_nvram_write_exit; + } + if (align_start) { memcpy(buf, start, 4); } + if (align_end) { memcpy(buf + len32 - 4, end, 4); } @@ -1902,13 +2292,13 @@ /* Request access to the flash interface. */ if ((rc = bce_acquire_nvram_lock(sc)) != 0) - goto nvram_write_end; + goto bce_nvram_write_exit; /* Enable access to flash interface */ bce_enable_nvram_access(sc); cmd_flags = BCE_NVM_COMMAND_FIRST; - if (sc->bce_flash_info->buffered == 0) { + if (!(sc->bce_flash_info->flags & BCE_NV_BUFFERED)) { int j; /* Read the whole page into the buffer @@ -1923,7 +2313,7 @@ cmd_flags); if (rc) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; cmd_flags = 0; } @@ -1931,11 +2321,11 @@ /* Enable writes to flash interface (unlock write-protect) */ if ((rc = bce_enable_nvram_write(sc)) != 0) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; /* Erase the page */ if ((rc = bce_nvram_erase_page(sc, page_start)) != 0) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; /* Re-enable the write again for the actual write */ bce_enable_nvram_write(sc); @@ -1943,7 +2333,7 @@ /* Loop to write back the buffer data from page_start to * data_start */ i = 0; - if (sc->bce_flash_info->buffered == 0) { + if (!(sc->bce_flash_info->flags & BCE_NV_BUFFERED)) { for (addr = page_start; addr < data_start; addr += 4, i += 4) { @@ -1951,7 +2341,7 @@ &flash_buffer[i], cmd_flags); if (rc != 0) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; cmd_flags = 0; } @@ -1960,8 +2350,8 @@ /* Loop to write the new data from data_start to data_end */ for (addr = data_start; addr < data_end; addr += 4, i++) { if ((addr == page_end - 4) || - ((sc->bce_flash_info->buffered) && - (addr == data_end - 4))) { + ((sc->bce_flash_info->flags & BCE_NV_BUFFERED) && + (addr == data_end - 4))) { cmd_flags |= BCE_NVM_COMMAND_LAST; } @@ -1969,7 +2359,7 @@ cmd_flags); if (rc != 0) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; cmd_flags = 0; buf += 4; @@ -1977,7 +2367,7 @@ /* Loop to write back the buffer data from data_end * to page_end */ - if (sc->bce_flash_info->buffered == 0) { + if (!(sc->bce_flash_info->flags & BCE_NV_BUFFERED)) { for (addr = data_end; addr < page_end; addr += 4, i += 4) { @@ -1988,7 +2378,7 @@ &flash_buffer[i], cmd_flags); if (rc != 0) - goto nvram_write_end; + goto bce_nvram_write_locked_exit; cmd_flags = 0; } @@ -2005,11 +2395,19 @@ written += data_end - data_start; } -nvram_write_end: + goto bce_nvram_write_exit; + +bce_nvram_write_locked_exit: + bce_disable_nvram_write(sc); + bce_disable_nvram_access(sc); + bce_release_nvram_lock(sc); + +bce_nvram_write_exit: if (align_start || align_end) free(buf, M_DEVBUF); - return rc; + DBEXIT(BCE_VERBOSE_NVRAM); + return (rc); } #endif /* BCE_NVRAM_WRITE_SUPPORT */ @@ -2031,30 +2429,39 @@ int rc = 0; u32 magic, csum; + DBENTER(BCE_VERBOSE_NVRAM | BCE_VERBOSE_LOAD | BCE_VERBOSE_RESET); /* * Check that the device NVRAM is valid by reading * the magic value at offset 0. */ - if ((rc = bce_nvram_read(sc, 0, data, 4)) != 0) - goto bce_nvram_test_done; + if ((rc = bce_nvram_read(sc, 0, data, 4)) != 0) { + BCE_PRINTF("%s(%d): Unable to read NVRAM!\n", __FILE__, __LINE__); + goto bce_nvram_test_exit; + } - + /* + * Verify that offset 0 of the NVRAM contains + * a valid magic number. + */ magic = bce_be32toh(buf[0]); if (magic != BCE_NVRAM_MAGIC) { rc = ENODEV; BCE_PRINTF("%s(%d): Invalid NVRAM magic value! Expected: 0x%08X, " "Found: 0x%08X\n", __FILE__, __LINE__, BCE_NVRAM_MAGIC, magic); - goto bce_nvram_test_done; + goto bce_nvram_test_exit; } /* * Verify that the device NVRAM includes valid * configuration data. */ - if ((rc = bce_nvram_read(sc, 0x100, data, BCE_NVRAM_SIZE)) != 0) - goto bce_nvram_test_done; + if ((rc = bce_nvram_read(sc, 0x100, data, BCE_NVRAM_SIZE)) != 0) { + BCE_PRINTF("%s(%d): Unable to read Manufacturing Information from " + "NVRAM!\n", __FILE__, __LINE__); + goto bce_nvram_test_exit; + } csum = ether_crc32_le(data, 0x100); if (csum != BCE_CRC32_RESIDUAL) { @@ -2062,23 +2469,116 @@ BCE_PRINTF("%s(%d): Invalid Manufacturing Information NVRAM CRC! " "Expected: 0x%08X, Found: 0x%08X\n", __FILE__, __LINE__, BCE_CRC32_RESIDUAL, csum); - goto bce_nvram_test_done; + goto bce_nvram_test_exit; } csum = ether_crc32_le(data + 0x100, 0x100); if (csum != BCE_CRC32_RESIDUAL) { + rc = ENODEV; BCE_PRINTF("%s(%d): Invalid Feature Configuration Information " "NVRAM CRC! Expected: 0x%08X, Found: 08%08X\n", __FILE__, __LINE__, BCE_CRC32_RESIDUAL, csum); - rc = ENODEV; } -bce_nvram_test_done: +bce_nvram_test_exit: + DBEXIT(BCE_VERBOSE_NVRAM | BCE_VERBOSE_LOAD | BCE_VERBOSE_RESET); return rc; } /****************************************************************************/ +/* Identifies the current media type of the controller and sets the PHY */ +/* address. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_get_media(struct bce_softc *sc) +{ + u32 val; + + DBENTER(BCE_VERBOSE); + + /* Assume PHY address for copper controllers. */ + sc->bce_phy_addr = 1; + + if (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) { + u32 val = REG_RD(sc, BCE_MISC_DUAL_MEDIA_CTRL); + u32 bond_id = val & BCE_MISC_DUAL_MEDIA_CTRL_BOND_ID; + u32 strap; + + /* + * The BCM5709S is software configurable + * for Copper or SerDes operation. + */ + if (bond_id == BCE_MISC_DUAL_MEDIA_CTRL_BOND_ID_C) { + DBPRINT(sc, BCE_INFO_LOAD, "5709 bonded for copper.\n"); + goto bce_get_media_exit; + } else if (bond_id == BCE_MISC_DUAL_MEDIA_CTRL_BOND_ID_S) { + DBPRINT(sc, BCE_INFO_LOAD, "5709 bonded for dual media.\n"); + sc->bce_phy_flags |= BCE_PHY_SERDES_FLAG; + goto bce_get_media_exit; + } + + if (val & BCE_MISC_DUAL_MEDIA_CTRL_STRAP_OVERRIDE) + strap = (val & BCE_MISC_DUAL_MEDIA_CTRL_PHY_CTRL) >> 21; + else + strap = (val & BCE_MISC_DUAL_MEDIA_CTRL_PHY_CTRL_STRAP) >> 8; + + if (pci_get_function(sc->bce_dev) == 0) { + switch (strap) { + case 0x4: + case 0x5: + case 0x6: + DBPRINT(sc, BCE_INFO_LOAD, + "BCM5709 s/w configured for SerDes.\n"); + sc->bce_phy_flags |= BCE_PHY_SERDES_FLAG; + default: + DBPRINT(sc, BCE_INFO_LOAD, + "BCM5709 s/w configured for Copper.\n"); + } + } else { + switch (strap) { + case 0x1: + case 0x2: + case 0x4: + DBPRINT(sc, BCE_INFO_LOAD, + "BCM5709 s/w configured for SerDes.\n"); + sc->bce_phy_flags |= BCE_PHY_SERDES_FLAG; + default: + DBPRINT(sc, BCE_INFO_LOAD, + "BCM5709 s/w configured for Copper.\n"); + } + } + + } else if (BCE_CHIP_BOND_ID(sc) & BCE_CHIP_BOND_ID_SERDES_BIT) + sc->bce_phy_flags |= BCE_PHY_SERDES_FLAG; + + if (sc->bce_phy_flags && BCE_PHY_SERDES_FLAG) { + sc->bce_flags |= BCE_NO_WOL_FLAG; + if (BCE_CHIP_NUM(sc) != BCE_CHIP_NUM_5706) { + sc->bce_phy_addr = 2; + val = REG_RD_IND(sc, sc->bce_shmem_base + + BCE_SHARED_HW_CFG_CONFIG); + if (val & BCE_SHARED_HW_CFG_PHY_2_5G) { + sc->bce_phy_flags |= BCE_PHY_2_5G_CAPABLE_FLAG; + DBPRINT(sc, BCE_INFO_LOAD, "Found 2.5Gb capable adapter\n"); + } + } + } else if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5706) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5708)) + sc->bce_phy_flags |= BCE_PHY_CRC_FIX_FLAG; + +bce_get_media_exit: + DBPRINT(sc, (BCE_INFO_LOAD | BCE_INFO_PHY), + "Using PHY address %d.\n", sc->bce_phy_addr); + + DBEXIT(BCE_VERBOSE); +} + + +/****************************************************************************/ /* Free any DMA memory owned by the driver. */ /* */ /* Scans through each data structre that requires DMA memory and frees */ @@ -2092,14 +2592,16 @@ { int i; - DBPRINT(sc,BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_UNLOAD | BCE_VERBOSE_CTX); - /* Destroy the status block. */ - if (sc->status_block != NULL) + /* Free, unmap, and destroy the status block. */ + if (sc->status_block != NULL) { bus_dmamem_free( sc->status_tag, sc->status_block, sc->status_map); + sc->status_block = NULL; + } if (sc->status_map != NULL) { bus_dmamap_unload( @@ -2107,18 +2609,23 @@ sc->status_map); bus_dmamap_destroy(sc->status_tag, sc->status_map); + sc->status_map = NULL; } - if (sc->status_tag != NULL) + if (sc->status_tag != NULL) { bus_dma_tag_destroy(sc->status_tag); + sc->status_tag = NULL; + } - /* Destroy the statistics block. */ - if (sc->stats_block != NULL) + /* Free, unmap, and destroy the statistics block. */ + if (sc->stats_block != NULL) { bus_dmamem_free( sc->stats_tag, sc->stats_block, sc->stats_map); + sc->stats_block = NULL; + } if (sc->stats_map != NULL) { bus_dmamap_unload( @@ -2126,19 +2633,55 @@ sc->stats_map); bus_dmamap_destroy(sc->stats_tag, sc->stats_map); + sc->stats_map = NULL; } - if (sc->stats_tag != NULL) + if (sc->stats_tag != NULL) { bus_dma_tag_destroy(sc->stats_tag); + sc->stats_tag = NULL; + } + /* Free, unmap and destroy all context memory pages. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + for (i = 0; i < sc->ctx_pages; i++ ) { + if (sc->ctx_block[i] != NULL) { + bus_dmamem_free( + sc->ctx_tag, + sc->ctx_block[i], + sc->ctx_map[i]); + sc->ctx_block[i] = NULL; + } + + if (sc->ctx_map[i] != NULL) { + bus_dmamap_unload( + sc->ctx_tag, + sc->ctx_map[i]); + bus_dmamap_destroy( + sc->ctx_tag, + sc->ctx_map[i]); + sc->ctx_map[i] = NULL; + } + } + + /* Destroy the context memory tag. */ + if (sc->ctx_tag != NULL) { + bus_dma_tag_destroy(sc->ctx_tag); + sc->ctx_tag = NULL; + } + } + + /* Free, unmap and destroy all TX buffer descriptor chain pages. */ for (i = 0; i < TX_PAGES; i++ ) { - if (sc->tx_bd_chain[i] != NULL) + if (sc->tx_bd_chain[i] != NULL) { bus_dmamem_free( sc->tx_bd_chain_tag, sc->tx_bd_chain[i], sc->tx_bd_chain_map[i]); + sc->tx_bd_chain[i] = NULL; + } if (sc->tx_bd_chain_map[i] != NULL) { bus_dmamap_unload( @@ -2147,22 +2690,26 @@ bus_dmamap_destroy( sc->tx_bd_chain_tag, sc->tx_bd_chain_map[i]); + sc->tx_bd_chain_map[i] = NULL; } - } /* Destroy the TX buffer descriptor tag. */ - if (sc->tx_bd_chain_tag != NULL) + if (sc->tx_bd_chain_tag != NULL) { bus_dma_tag_destroy(sc->tx_bd_chain_tag); + sc->tx_bd_chain_tag = NULL; + } /* Free, unmap and destroy all RX buffer descriptor chain pages. */ for (i = 0; i < RX_PAGES; i++ ) { - if (sc->rx_bd_chain[i] != NULL) + if (sc->rx_bd_chain[i] != NULL) { bus_dmamem_free( sc->rx_bd_chain_tag, sc->rx_bd_chain[i], sc->rx_bd_chain_map[i]); + sc->rx_bd_chain[i] = NULL; + } if (sc->rx_bd_chain_map[i] != NULL) { bus_dmamap_unload( @@ -2171,50 +2718,107 @@ bus_dmamap_destroy( sc->rx_bd_chain_tag, sc->rx_bd_chain_map[i]); + sc->rx_bd_chain_map[i] = NULL; } } /* Destroy the RX buffer descriptor tag. */ - if (sc->rx_bd_chain_tag != NULL) + if (sc->rx_bd_chain_tag != NULL) { bus_dma_tag_destroy(sc->rx_bd_chain_tag); + sc->rx_bd_chain_tag = NULL; + } +#ifdef BCE_USE_SPLIT_HEADER + /* Free, unmap and destroy all page buffer descriptor chain pages. */ + for (i = 0; i < PG_PAGES; i++ ) { + if (sc->pg_bd_chain[i] != NULL) { + bus_dmamem_free( + sc->pg_bd_chain_tag, + sc->pg_bd_chain[i], + sc->pg_bd_chain_map[i]); + sc->pg_bd_chain[i] = NULL; + } + + if (sc->pg_bd_chain_map[i] != NULL) { + bus_dmamap_unload( + sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i]); + bus_dmamap_destroy( + sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i]); + sc->pg_bd_chain_map[i] = NULL; + } + } + + /* Destroy the page buffer descriptor tag. */ + if (sc->pg_bd_chain_tag != NULL) { + bus_dma_tag_destroy(sc->pg_bd_chain_tag); + sc->pg_bd_chain_tag = NULL; + } +#endif + + /* Unload and destroy the TX mbuf maps. */ for (i = 0; i < TOTAL_TX_BD; i++) { if (sc->tx_mbuf_map[i] != NULL) { - bus_dmamap_unload(sc->tx_mbuf_tag, + bus_dmamap_unload(sc->tx_mbuf_tag, sc->tx_mbuf_map[i]); - bus_dmamap_destroy(sc->tx_mbuf_tag, + bus_dmamap_destroy(sc->tx_mbuf_tag, sc->tx_mbuf_map[i]); + sc->tx_mbuf_map[i] = NULL; } } /* Destroy the TX mbuf tag. */ - if (sc->tx_mbuf_tag != NULL) + if (sc->tx_mbuf_tag != NULL) { bus_dma_tag_destroy(sc->tx_mbuf_tag); + sc->tx_mbuf_tag = NULL; + } - /* Unload and destroy the RX mbuf maps. */ for (i = 0; i < TOTAL_RX_BD; i++) { if (sc->rx_mbuf_map[i] != NULL) { - bus_dmamap_unload(sc->rx_mbuf_tag, + bus_dmamap_unload(sc->rx_mbuf_tag, sc->rx_mbuf_map[i]); - bus_dmamap_destroy(sc->rx_mbuf_tag, + bus_dmamap_destroy(sc->rx_mbuf_tag, sc->rx_mbuf_map[i]); + sc->rx_mbuf_map[i] = NULL; } } /* Destroy the RX mbuf tag. */ - if (sc->rx_mbuf_tag != NULL) + if (sc->rx_mbuf_tag != NULL) { bus_dma_tag_destroy(sc->rx_mbuf_tag); + sc->rx_mbuf_tag = NULL; + } +#ifdef BCE_USE_SPLIT_HEADER + /* Unload and destroy the page mbuf maps. */ + for (i = 0; i < TOTAL_PG_BD; i++) { + if (sc->pg_mbuf_map[i] != NULL) { + bus_dmamap_unload(sc->pg_mbuf_tag, + sc->pg_mbuf_map[i]); + bus_dmamap_destroy(sc->pg_mbuf_tag, + sc->pg_mbuf_map[i]); + sc->pg_mbuf_map[i] = NULL; + } + } + /* Destroy the page mbuf tag. */ + if (sc->pg_mbuf_tag != NULL) { + bus_dma_tag_destroy(sc->pg_mbuf_tag); + sc->pg_mbuf_tag = NULL; + } +#endif + /* Destroy the parent tag */ - if (sc->parent_tag != NULL) + if (sc->parent_tag != NULL) { bus_dma_tag_destroy(sc->parent_tag); + sc->parent_tag = NULL; + } - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_UNLOAD | BCE_VERBOSE_CTX); } @@ -2240,7 +2844,7 @@ printf("bce: %s(%d): Simulating DMA mapping error.\n", __FILE__, __LINE__); error = ENOMEM); - + /* Check for an error and signal the caller that an error occurred. */ if (error) { printf("bce %s(%d): DMA mapping error! error = %d, " @@ -2260,6 +2864,20 @@ /* Allocates DMA memory needed for the various global structures needed by */ /* hardware. */ /* */ +/* Memory alignment requirements: */ +/* +-----------------+----------+----------+----------+----------+ */ +/* | | 5706 | 5708 | 5709 | 5716 | */ +/* +-----------------+----------+----------+----------+----------+ */ +/* |Status Block | 8 bytes | 8 bytes | 16 bytes | 16 bytes | */ +/* |Statistics Block | 8 bytes | 8 bytes | 16 bytes | 16 bytes | */ +/* |RX Buffers | 16 bytes | 16 bytes | 16 bytes | 16 bytes | */ +/* |PG Buffers | none | none | none | none | */ +/* |TX Buffers | none | none | none | none | */ +/* |Chain Pages(1) | 4KiB | 4KiB | 4KiB | 4KiB | */ +/* +-----------------+----------+----------+----------+----------+ */ +/* */ +/* (1) Must align with CPU page size (BCM_PAGE_SZIE). */ +/* */ /* Returns: */ /* 0 for success, positive value for failure. */ /****************************************************************************/ @@ -2273,9 +2891,9 @@ int max_segments; sc = device_get_softc(dev); - - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_CTX); + /* * Allocate the parent bus DMA tag appropriate for PCI. */ @@ -2299,7 +2917,7 @@ /* * Create a DMA tag for the status block, allocate and clear the - * memory, map the memory into DMA space, and fetch the physical + * memory, map the memory into DMA space, and fetch the physical * address of the block. */ if (bus_dma_tag_create(sc->parent_tag, @@ -2339,7 +2957,7 @@ bce_dma_map_addr, &busaddr, BUS_DMA_NOWAIT); - + if (error) { BCE_PRINTF("%s(%d): Could not map status block DMA memory!\n", __FILE__, __LINE__); @@ -2348,13 +2966,12 @@ } sc->status_block_paddr = busaddr; - /* DRC - Fix for 64 bit addresses. */ - DBPRINT(sc, BCE_INFO, "status_block_paddr = 0x%08X\n", - (u32) sc->status_block_paddr); + DBPRINT(sc, BCE_INFO, "%s(): status_block_paddr = 0x%jX\n", + __FUNCTION__, (uintmax_t) sc->status_block_paddr); /* * Create a DMA tag for the statistics block, allocate and clear the - * memory, map the memory into DMA space, and fetch the physical + * memory, map the memory into DMA space, and fetch the physical * address of the block. */ if (bus_dma_tag_create(sc->parent_tag, @@ -2403,10 +3020,79 @@ } sc->stats_block_paddr = busaddr; - /* DRC - Fix for 64 bit address. */ - DBPRINT(sc,BCE_INFO, "stats_block_paddr = 0x%08X\n", - (u32) sc->stats_block_paddr); + DBPRINT(sc, BCE_INFO, "%s(): stats_block_paddr = 0x%jX\n", + __FUNCTION__, (uintmax_t) sc->stats_block_paddr); + /* BCM5709 uses host memory as cache for context memory. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + sc->ctx_pages = 0x2000 / BCM_PAGE_SIZE; + if (sc->ctx_pages == 0) + sc->ctx_pages = 1; + + DBRUNIF((sc->ctx_pages > 512), + BCE_PRINTF("%s(%d): Too many CTX pages! %d > 512\n", + __FILE__, __LINE__, sc->ctx_pages)); + + /* + * Create a DMA tag for the context pages, + * allocate and clear the memory, map the + * memory into DMA space, and fetch the + * physical address of the block. + */ + if(bus_dma_tag_create(sc->parent_tag, + BCM_PAGE_SIZE, + BCE_DMA_BOUNDARY, + sc->max_bus_addr, + BUS_SPACE_MAXADDR, + NULL, NULL, + BCM_PAGE_SIZE, + 1, + BCM_PAGE_SIZE, + 0, + NULL, NULL, + &sc->ctx_tag)) { + BCE_PRINTF("%s(%d): Could not allocate CTX DMA tag!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + for (i = 0; i < sc->ctx_pages; i++) { + + if(bus_dmamem_alloc(sc->ctx_tag, + (void **)&sc->ctx_block[i], + BUS_DMA_NOWAIT, + &sc->ctx_map[i])) { + BCE_PRINTF("%s(%d): Could not allocate CTX " + "DMA memory!\n", __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + bzero((char *)sc->ctx_block[i], BCM_PAGE_SIZE); + + error = bus_dmamap_load(sc->ctx_tag, + sc->ctx_map[i], + sc->ctx_block[i], + BCM_PAGE_SIZE, + bce_dma_map_addr, + &busaddr, + BUS_DMA_NOWAIT); + + if (error) { + BCE_PRINTF("%s(%d): Could not map CTX DMA memory!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + sc->ctx_paddr[i] = busaddr; + DBPRINT(sc, BCE_INFO, "%s(): ctx_paddr[%d] = 0x%jX\n", + __FUNCTION__, i, (uintmax_t) sc->ctx_paddr[i]); + } + } + /* * Create a DMA tag for the TX buffer descriptor chain, * allocate and clear the memory, and fetch the @@ -2416,7 +3102,7 @@ BCM_PAGE_SIZE, BCE_DMA_BOUNDARY, sc->max_bus_addr, - BUS_SPACE_MAXADDR, + BUS_SPACE_MAXADDR, NULL, NULL, BCE_TX_CHAIN_PAGE_SZ, 1, @@ -2458,9 +3144,8 @@ } sc->tx_bd_chain_paddr[i] = busaddr; - /* DRC - Fix for 64 bit systems. */ - DBPRINT(sc, BCE_INFO, "tx_bd_chain_paddr[%d] = 0x%08X\n", - i, (u32) sc->tx_bd_chain_paddr[i]); + DBPRINT(sc, BCE_INFO, "%s(): tx_bd_chain_paddr[%d] = 0x%jX\n", + __FUNCTION__, i, (uintmax_t) sc->tx_bd_chain_paddr[i]); } /* Check the required size before mapping to conserve resources. */ @@ -2473,7 +3158,7 @@ max_segments = BCE_MAX_SEGMENTS; max_seg_size = MCLBYTES; } - + /* Create a DMA tag for TX mbufs. */ if (bus_dma_tag_create(sc->parent_tag, 1, @@ -2495,7 +3180,7 @@ /* Create DMA maps for the TX mbufs clusters. */ for (i = 0; i < TOTAL_TX_BD; i++) { - if (bus_dmamap_create(sc->tx_mbuf_tag, BUS_DMA_NOWAIT, + if (bus_dmamap_create(sc->tx_mbuf_tag, BUS_DMA_NOWAIT, &sc->tx_mbuf_map[i])) { BCE_PRINTF("%s(%d): Unable to create TX mbuf DMA map!\n", __FILE__, __LINE__); @@ -2506,7 +3191,7 @@ /* * Create a DMA tag for the RX buffer descriptor chain, - * allocate and clear the memory, and fetch the physical + * allocate and clear the memory, and fetch the physical * address of the blocks. */ if (bus_dma_tag_create(sc->parent_tag, @@ -2557,23 +3242,29 @@ } sc->rx_bd_chain_paddr[i] = busaddr; - /* DRC - Fix for 64 bit systems. */ - DBPRINT(sc, BCE_INFO, "rx_bd_chain_paddr[%d] = 0x%08X\n", - i, (u32) sc->rx_bd_chain_paddr[i]); + DBPRINT(sc, BCE_INFO, "%s(): rx_bd_chain_paddr[%d] = 0x%jX\n", + __FUNCTION__, i, (uintmax_t) sc->rx_bd_chain_paddr[i]); } /* * Create a DMA tag for RX mbufs. */ +#ifdef BCE_USE_SPLIT_HEADER + max_size = max_seg_size = ((sc->rx_bd_mbuf_alloc_size < MCLBYTES) ? + MCLBYTES : sc->rx_bd_mbuf_alloc_size); +#else + max_size = max_seg_size = MJUM9BYTES; +#endif + if (bus_dma_tag_create(sc->parent_tag, 1, BCE_DMA_BOUNDARY, sc->max_bus_addr, BUS_SPACE_MAXADDR, NULL, NULL, - MJUM9BYTES, - BCE_MAX_SEGMENTS, - MJUM9BYTES, + max_size, + 1, + max_seg_size, 0, NULL, NULL, &sc->rx_mbuf_tag)) { @@ -2594,9 +3285,102 @@ } } +#ifdef BCE_USE_SPLIT_HEADER + /* + * Create a DMA tag for the page buffer descriptor chain, + * allocate and clear the memory, and fetch the physical + * address of the blocks. + */ + if (bus_dma_tag_create(sc->parent_tag, + BCM_PAGE_SIZE, + BCE_DMA_BOUNDARY, + BUS_SPACE_MAXADDR, + sc->max_bus_addr, + NULL, NULL, + BCE_PG_CHAIN_PAGE_SZ, + 1, + BCE_PG_CHAIN_PAGE_SZ, + 0, + NULL, NULL, + &sc->pg_bd_chain_tag)) { + BCE_PRINTF("%s(%d): Could not allocate page descriptor chain DMA tag!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + for (i = 0; i < PG_PAGES; i++) { + + if (bus_dmamem_alloc(sc->pg_bd_chain_tag, + (void **)&sc->pg_bd_chain[i], + BUS_DMA_NOWAIT, + &sc->pg_bd_chain_map[i])) { + BCE_PRINTF("%s(%d): Could not allocate page descriptor chain " + "DMA memory!\n", __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + bzero((char *)sc->pg_bd_chain[i], BCE_PG_CHAIN_PAGE_SZ); + + error = bus_dmamap_load(sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i], + sc->pg_bd_chain[i], + BCE_PG_CHAIN_PAGE_SZ, + bce_dma_map_addr, + &busaddr, + BUS_DMA_NOWAIT); + + if (error) { + BCE_PRINTF("%s(%d): Could not map page descriptor chain DMA memory!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + sc->pg_bd_chain_paddr[i] = busaddr; + DBPRINT(sc, BCE_INFO, "%s(): pg_bd_chain_paddr[%d] = 0x%jX\n", + __FUNCTION__, i, (uintmax_t) sc->pg_bd_chain_paddr[i]); + } + + /* + * Create a DMA tag for page mbufs. + */ + max_size = max_seg_size = ((sc->pg_bd_mbuf_alloc_size < MCLBYTES) ? + MCLBYTES : sc->pg_bd_mbuf_alloc_size); + + if (bus_dma_tag_create(sc->parent_tag, + 1, + BCE_DMA_BOUNDARY, + sc->max_bus_addr, + BUS_SPACE_MAXADDR, + NULL, NULL, + max_size, + 1, + max_seg_size, + 0, + NULL, NULL, + &sc->pg_mbuf_tag)) { + BCE_PRINTF("%s(%d): Could not allocate page mbuf DMA tag!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + + /* Create DMA maps for the page mbuf clusters. */ + for (i = 0; i < TOTAL_PG_BD; i++) { + if (bus_dmamap_create(sc->pg_mbuf_tag, BUS_DMA_NOWAIT, + &sc->pg_mbuf_map[i])) { + BCE_PRINTF("%s(%d): Unable to create page mbuf DMA map!\n", + __FILE__, __LINE__); + rc = ENOMEM; + goto bce_dma_alloc_exit; + } + } +#endif + bce_dma_alloc_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_CTX); return(rc); } @@ -2615,7 +3399,7 @@ { device_t dev; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); dev = sc->bce_dev; @@ -2628,12 +3412,12 @@ if (sc->bce_res_irq != NULL) { DBPRINT(sc, BCE_INFO_RESET, "Releasing IRQ.\n"); - bus_release_resource(dev, SYS_RES_IRQ, sc->bce_flags & BCE_USING_MSI_FLAG ? 1 : 0, + bus_release_resource(dev, SYS_RES_IRQ, sc->bce_irq_rid, sc->bce_res_irq); } - if (sc->bce_flags & BCE_USING_MSI_FLAG) { - DBPRINT(sc, BCE_INFO_RESET, "Releasing MSI vector.\n"); + if (sc->bce_flags & (BCE_USING_MSI_FLAG | BCE_USING_MSIX_FLAG)) { + DBPRINT(sc, BCE_INFO_RESET, "Releasing MSI/MSI-X vector.\n"); pci_release_msi(dev); } @@ -2650,8 +3434,7 @@ if (mtx_initialized(&sc->bce_mtx)) BCE_LOCK_DESTROY(sc); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - + DBEXIT(BCE_VERBOSE_RESET); } @@ -2670,6 +3453,8 @@ int i, rc = 0; u32 val; + DBENTER(BCE_VERBOSE_RESET); + /* Don't waste any time if we've timed out before. */ if (sc->bce_fw_timed_out) { rc = EBUSY; @@ -2680,7 +3465,8 @@ sc->bce_fw_wr_seq++; msg_data |= sc->bce_fw_wr_seq; - DBPRINT(sc, BCE_VERBOSE_FIRMWARE, "bce_fw_sync(): msg_data = 0x%08X\n", msg_data); + DBPRINT(sc, BCE_VERBOSE_FIRMWARE, "bce_fw_sync(): msg_data = 0x%08X\n", + msg_data); /* Send the message to the bootcode driver mailbox. */ REG_WR_IND(sc, sc->bce_shmem_base + BCE_DRV_MB, msg_data); @@ -2712,6 +3498,7 @@ } bce_fw_sync_exit: + DBEXIT(BCE_VERBOSE_RESET); return (rc); } @@ -2723,12 +3510,19 @@ /* Nothing. */ /****************************************************************************/ static void -bce_load_rv2p_fw(struct bce_softc *sc, u32 *rv2p_code, +bce_load_rv2p_fw(struct bce_softc *sc, u32 *rv2p_code, u32 rv2p_code_len, u32 rv2p_proc) { int i; u32 val; + DBENTER(BCE_VERBOSE_RESET); + + /* Set the page size used by RV2P. */ + if (rv2p_proc == RV2P_PROC2) { + BCE_RV2P_PROC2_CHG_MAX_BD_PAGE(USABLE_RX_BD_PER_PAGE); + } + for (i = 0; i < rv2p_code_len; i += 8) { REG_WR(sc, BCE_RV2P_INSTR_HIGH, *rv2p_code); rv2p_code++; @@ -2752,6 +3546,8 @@ else { REG_WR(sc, BCE_RV2P_COMMAND, BCE_RV2P_COMMAND_PROC2_RESET); } + + DBEXIT(BCE_VERBOSE_RESET); } @@ -2771,6 +3567,8 @@ u32 offset; u32 val; + DBENTER(BCE_VERBOSE_RESET); + /* Halt the CPU. */ val = REG_RD_IND(sc, cpu_reg->mode); val |= cpu_reg->mode_value_halt; @@ -2837,28 +3635,25 @@ val &= ~cpu_reg->mode_value_halt; REG_WR_IND(sc, cpu_reg->state, cpu_reg->state_value_clear); REG_WR_IND(sc, cpu_reg->mode, val); + + DBEXIT(BCE_VERBOSE_RESET); } /****************************************************************************/ -/* Initialize the RV2P, RX, TX, TPAT, and COM CPUs. */ +/* Initialize the RX CPU. */ /* */ -/* Loads the firmware for each CPU and starts the CPU. */ -/* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ static void -bce_init_cpus(struct bce_softc *sc) +bce_init_rxp_cpu(struct bce_softc *sc) { struct cpu_reg cpu_reg; struct fw_info fw; - /* Initialize the RV2P processor. */ - bce_load_rv2p_fw(sc, bce_rv2p_proc1, sizeof(bce_rv2p_proc1), RV2P_PROC1); - bce_load_rv2p_fw(sc, bce_rv2p_proc2, sizeof(bce_rv2p_proc2), RV2P_PROC2); + DBENTER(BCE_VERBOSE_RESET); - /* Initialize the RX Processor. */ cpu_reg.mode = BCE_RXP_CPU_MODE; cpu_reg.mode_value_halt = BCE_RXP_CPU_MODE_SOFT_HALT; cpu_reg.mode_value_sstep = BCE_RXP_CPU_MODE_STEP_ENA; @@ -2872,40 +3667,90 @@ cpu_reg.spad_base = BCE_RXP_SCRATCH; cpu_reg.mips_view_base = 0x8000000; - fw.ver_major = bce_RXP_b06FwReleaseMajor; - fw.ver_minor = bce_RXP_b06FwReleaseMinor; - fw.ver_fix = bce_RXP_b06FwReleaseFix; - fw.start_addr = bce_RXP_b06FwStartAddr; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + fw.ver_major = bce_RXP_b09FwReleaseMajor; + fw.ver_minor = bce_RXP_b09FwReleaseMinor; + fw.ver_fix = bce_RXP_b09FwReleaseFix; + fw.start_addr = bce_RXP_b09FwStartAddr; - fw.text_addr = bce_RXP_b06FwTextAddr; - fw.text_len = bce_RXP_b06FwTextLen; - fw.text_index = 0; - fw.text = bce_RXP_b06FwText; + fw.text_addr = bce_RXP_b09FwTextAddr; + fw.text_len = bce_RXP_b09FwTextLen; + fw.text_index = 0; + fw.text = bce_RXP_b09FwText; - fw.data_addr = bce_RXP_b06FwDataAddr; - fw.data_len = bce_RXP_b06FwDataLen; - fw.data_index = 0; - fw.data = bce_RXP_b06FwData; + fw.data_addr = bce_RXP_b09FwDataAddr; + fw.data_len = bce_RXP_b09FwDataLen; + fw.data_index = 0; + fw.data = bce_RXP_b09FwData; - fw.sbss_addr = bce_RXP_b06FwSbssAddr; - fw.sbss_len = bce_RXP_b06FwSbssLen; - fw.sbss_index = 0; - fw.sbss = bce_RXP_b06FwSbss; + fw.sbss_addr = bce_RXP_b09FwSbssAddr; + fw.sbss_len = bce_RXP_b09FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_RXP_b09FwSbss; - fw.bss_addr = bce_RXP_b06FwBssAddr; - fw.bss_len = bce_RXP_b06FwBssLen; - fw.bss_index = 0; - fw.bss = bce_RXP_b06FwBss; + fw.bss_addr = bce_RXP_b09FwBssAddr; + fw.bss_len = bce_RXP_b09FwBssLen; + fw.bss_index = 0; + fw.bss = bce_RXP_b09FwBss; - fw.rodata_addr = bce_RXP_b06FwRodataAddr; - fw.rodata_len = bce_RXP_b06FwRodataLen; - fw.rodata_index = 0; - fw.rodata = bce_RXP_b06FwRodata; + fw.rodata_addr = bce_RXP_b09FwRodataAddr; + fw.rodata_len = bce_RXP_b09FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_RXP_b09FwRodata; + } else { + fw.ver_major = bce_RXP_b06FwReleaseMajor; + fw.ver_minor = bce_RXP_b06FwReleaseMinor; + fw.ver_fix = bce_RXP_b06FwReleaseFix; + fw.start_addr = bce_RXP_b06FwStartAddr; + fw.text_addr = bce_RXP_b06FwTextAddr; + fw.text_len = bce_RXP_b06FwTextLen; + fw.text_index = 0; + fw.text = bce_RXP_b06FwText; + + fw.data_addr = bce_RXP_b06FwDataAddr; + fw.data_len = bce_RXP_b06FwDataLen; + fw.data_index = 0; + fw.data = bce_RXP_b06FwData; + + fw.sbss_addr = bce_RXP_b06FwSbssAddr; + fw.sbss_len = bce_RXP_b06FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_RXP_b06FwSbss; + + fw.bss_addr = bce_RXP_b06FwBssAddr; + fw.bss_len = bce_RXP_b06FwBssLen; + fw.bss_index = 0; + fw.bss = bce_RXP_b06FwBss; + + fw.rodata_addr = bce_RXP_b06FwRodataAddr; + fw.rodata_len = bce_RXP_b06FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_RXP_b06FwRodata; + } + DBPRINT(sc, BCE_INFO_RESET, "Loading RX firmware.\n"); bce_load_cpu_fw(sc, &cpu_reg, &fw); - /* Initialize the TX Processor. */ + DBEXIT(BCE_VERBOSE_RESET); +} + + +/****************************************************************************/ +/* Initialize the TX CPU. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_init_txp_cpu(struct bce_softc *sc) +{ + struct cpu_reg cpu_reg; + struct fw_info fw; + + DBENTER(BCE_VERBOSE_RESET); + cpu_reg.mode = BCE_TXP_CPU_MODE; cpu_reg.mode_value_halt = BCE_TXP_CPU_MODE_SOFT_HALT; cpu_reg.mode_value_sstep = BCE_TXP_CPU_MODE_STEP_ENA; @@ -2919,40 +3764,90 @@ cpu_reg.spad_base = BCE_TXP_SCRATCH; cpu_reg.mips_view_base = 0x8000000; - fw.ver_major = bce_TXP_b06FwReleaseMajor; - fw.ver_minor = bce_TXP_b06FwReleaseMinor; - fw.ver_fix = bce_TXP_b06FwReleaseFix; - fw.start_addr = bce_TXP_b06FwStartAddr; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + fw.ver_major = bce_TXP_b09FwReleaseMajor; + fw.ver_minor = bce_TXP_b09FwReleaseMinor; + fw.ver_fix = bce_TXP_b09FwReleaseFix; + fw.start_addr = bce_TXP_b09FwStartAddr; - fw.text_addr = bce_TXP_b06FwTextAddr; - fw.text_len = bce_TXP_b06FwTextLen; - fw.text_index = 0; - fw.text = bce_TXP_b06FwText; + fw.text_addr = bce_TXP_b09FwTextAddr; + fw.text_len = bce_TXP_b09FwTextLen; + fw.text_index = 0; + fw.text = bce_TXP_b09FwText; - fw.data_addr = bce_TXP_b06FwDataAddr; - fw.data_len = bce_TXP_b06FwDataLen; - fw.data_index = 0; - fw.data = bce_TXP_b06FwData; + fw.data_addr = bce_TXP_b09FwDataAddr; + fw.data_len = bce_TXP_b09FwDataLen; + fw.data_index = 0; + fw.data = bce_TXP_b09FwData; - fw.sbss_addr = bce_TXP_b06FwSbssAddr; - fw.sbss_len = bce_TXP_b06FwSbssLen; - fw.sbss_index = 0; - fw.sbss = bce_TXP_b06FwSbss; + fw.sbss_addr = bce_TXP_b09FwSbssAddr; + fw.sbss_len = bce_TXP_b09FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_TXP_b09FwSbss; - fw.bss_addr = bce_TXP_b06FwBssAddr; - fw.bss_len = bce_TXP_b06FwBssLen; - fw.bss_index = 0; - fw.bss = bce_TXP_b06FwBss; + fw.bss_addr = bce_TXP_b09FwBssAddr; + fw.bss_len = bce_TXP_b09FwBssLen; + fw.bss_index = 0; + fw.bss = bce_TXP_b09FwBss; - fw.rodata_addr = bce_TXP_b06FwRodataAddr; - fw.rodata_len = bce_TXP_b06FwRodataLen; - fw.rodata_index = 0; - fw.rodata = bce_TXP_b06FwRodata; + fw.rodata_addr = bce_TXP_b09FwRodataAddr; + fw.rodata_len = bce_TXP_b09FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_TXP_b09FwRodata; + } else { + fw.ver_major = bce_TXP_b06FwReleaseMajor; + fw.ver_minor = bce_TXP_b06FwReleaseMinor; + fw.ver_fix = bce_TXP_b06FwReleaseFix; + fw.start_addr = bce_TXP_b06FwStartAddr; + fw.text_addr = bce_TXP_b06FwTextAddr; + fw.text_len = bce_TXP_b06FwTextLen; + fw.text_index = 0; + fw.text = bce_TXP_b06FwText; + + fw.data_addr = bce_TXP_b06FwDataAddr; + fw.data_len = bce_TXP_b06FwDataLen; + fw.data_index = 0; + fw.data = bce_TXP_b06FwData; + + fw.sbss_addr = bce_TXP_b06FwSbssAddr; + fw.sbss_len = bce_TXP_b06FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_TXP_b06FwSbss; + + fw.bss_addr = bce_TXP_b06FwBssAddr; + fw.bss_len = bce_TXP_b06FwBssLen; + fw.bss_index = 0; + fw.bss = bce_TXP_b06FwBss; + + fw.rodata_addr = bce_TXP_b06FwRodataAddr; + fw.rodata_len = bce_TXP_b06FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_TXP_b06FwRodata; + } + DBPRINT(sc, BCE_INFO_RESET, "Loading TX firmware.\n"); bce_load_cpu_fw(sc, &cpu_reg, &fw); - /* Initialize the TX Patch-up Processor. */ + DBEXIT(BCE_VERBOSE_RESET); +} + + +/****************************************************************************/ +/* Initialize the TPAT CPU. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_init_tpat_cpu(struct bce_softc *sc) +{ + struct cpu_reg cpu_reg; + struct fw_info fw; + + DBENTER(BCE_VERBOSE_RESET); + cpu_reg.mode = BCE_TPAT_CPU_MODE; cpu_reg.mode_value_halt = BCE_TPAT_CPU_MODE_SOFT_HALT; cpu_reg.mode_value_sstep = BCE_TPAT_CPU_MODE_STEP_ENA; @@ -2966,40 +3861,187 @@ cpu_reg.spad_base = BCE_TPAT_SCRATCH; cpu_reg.mips_view_base = 0x8000000; - fw.ver_major = bce_TPAT_b06FwReleaseMajor; - fw.ver_minor = bce_TPAT_b06FwReleaseMinor; - fw.ver_fix = bce_TPAT_b06FwReleaseFix; - fw.start_addr = bce_TPAT_b06FwStartAddr; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + fw.ver_major = bce_TPAT_b09FwReleaseMajor; + fw.ver_minor = bce_TPAT_b09FwReleaseMinor; + fw.ver_fix = bce_TPAT_b09FwReleaseFix; + fw.start_addr = bce_TPAT_b09FwStartAddr; - fw.text_addr = bce_TPAT_b06FwTextAddr; - fw.text_len = bce_TPAT_b06FwTextLen; - fw.text_index = 0; - fw.text = bce_TPAT_b06FwText; + fw.text_addr = bce_TPAT_b09FwTextAddr; + fw.text_len = bce_TPAT_b09FwTextLen; + fw.text_index = 0; + fw.text = bce_TPAT_b09FwText; - fw.data_addr = bce_TPAT_b06FwDataAddr; - fw.data_len = bce_TPAT_b06FwDataLen; - fw.data_index = 0; - fw.data = bce_TPAT_b06FwData; + fw.data_addr = bce_TPAT_b09FwDataAddr; + fw.data_len = bce_TPAT_b09FwDataLen; + fw.data_index = 0; + fw.data = bce_TPAT_b09FwData; - fw.sbss_addr = bce_TPAT_b06FwSbssAddr; - fw.sbss_len = bce_TPAT_b06FwSbssLen; - fw.sbss_index = 0; - fw.sbss = bce_TPAT_b06FwSbss; + fw.sbss_addr = bce_TPAT_b09FwSbssAddr; + fw.sbss_len = bce_TPAT_b09FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_TPAT_b09FwSbss; - fw.bss_addr = bce_TPAT_b06FwBssAddr; - fw.bss_len = bce_TPAT_b06FwBssLen; - fw.bss_index = 0; - fw.bss = bce_TPAT_b06FwBss; + fw.bss_addr = bce_TPAT_b09FwBssAddr; + fw.bss_len = bce_TPAT_b09FwBssLen; + fw.bss_index = 0; + fw.bss = bce_TPAT_b09FwBss; - fw.rodata_addr = bce_TPAT_b06FwRodataAddr; - fw.rodata_len = bce_TPAT_b06FwRodataLen; - fw.rodata_index = 0; - fw.rodata = bce_TPAT_b06FwRodata; + fw.rodata_addr = bce_TPAT_b09FwRodataAddr; + fw.rodata_len = bce_TPAT_b09FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_TPAT_b09FwRodata; + } else { + fw.ver_major = bce_TPAT_b06FwReleaseMajor; + fw.ver_minor = bce_TPAT_b06FwReleaseMinor; + fw.ver_fix = bce_TPAT_b06FwReleaseFix; + fw.start_addr = bce_TPAT_b06FwStartAddr; + fw.text_addr = bce_TPAT_b06FwTextAddr; + fw.text_len = bce_TPAT_b06FwTextLen; + fw.text_index = 0; + fw.text = bce_TPAT_b06FwText; + + fw.data_addr = bce_TPAT_b06FwDataAddr; + fw.data_len = bce_TPAT_b06FwDataLen; + fw.data_index = 0; + fw.data = bce_TPAT_b06FwData; + + fw.sbss_addr = bce_TPAT_b06FwSbssAddr; + fw.sbss_len = bce_TPAT_b06FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_TPAT_b06FwSbss; + + fw.bss_addr = bce_TPAT_b06FwBssAddr; + fw.bss_len = bce_TPAT_b06FwBssLen; + fw.bss_index = 0; + fw.bss = bce_TPAT_b06FwBss; + + fw.rodata_addr = bce_TPAT_b06FwRodataAddr; + fw.rodata_len = bce_TPAT_b06FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_TPAT_b06FwRodata; + } + DBPRINT(sc, BCE_INFO_RESET, "Loading TPAT firmware.\n"); bce_load_cpu_fw(sc, &cpu_reg, &fw); - /* Initialize the Completion Processor. */ + DBEXIT(BCE_VERBOSE_RESET); +} + + +/****************************************************************************/ +/* Initialize the CP CPU. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_init_cp_cpu(struct bce_softc *sc) +{ + struct cpu_reg cpu_reg; + struct fw_info fw; + + DBENTER(BCE_VERBOSE_RESET); + + cpu_reg.mode = BCE_CP_CPU_MODE; + cpu_reg.mode_value_halt = BCE_CP_CPU_MODE_SOFT_HALT; + cpu_reg.mode_value_sstep = BCE_CP_CPU_MODE_STEP_ENA; + cpu_reg.state = BCE_CP_CPU_STATE; + cpu_reg.state_value_clear = 0xffffff; + cpu_reg.gpr0 = BCE_CP_CPU_REG_FILE; + cpu_reg.evmask = BCE_CP_CPU_EVENT_MASK; + cpu_reg.pc = BCE_CP_CPU_PROGRAM_COUNTER; + cpu_reg.inst = BCE_CP_CPU_INSTRUCTION; + cpu_reg.bp = BCE_CP_CPU_HW_BREAKPOINT; + cpu_reg.spad_base = BCE_CP_SCRATCH; + cpu_reg.mips_view_base = 0x8000000; + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + fw.ver_major = bce_CP_b09FwReleaseMajor; + fw.ver_minor = bce_CP_b09FwReleaseMinor; + fw.ver_fix = bce_CP_b09FwReleaseFix; + fw.start_addr = bce_CP_b09FwStartAddr; + + fw.text_addr = bce_CP_b09FwTextAddr; + fw.text_len = bce_CP_b09FwTextLen; + fw.text_index = 0; + fw.text = bce_CP_b09FwText; + + fw.data_addr = bce_CP_b09FwDataAddr; + fw.data_len = bce_CP_b09FwDataLen; + fw.data_index = 0; + fw.data = bce_CP_b09FwData; + + fw.sbss_addr = bce_CP_b09FwSbssAddr; + fw.sbss_len = bce_CP_b09FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_CP_b09FwSbss; + + fw.bss_addr = bce_CP_b09FwBssAddr; + fw.bss_len = bce_CP_b09FwBssLen; + fw.bss_index = 0; + fw.bss = bce_CP_b09FwBss; + + fw.rodata_addr = bce_CP_b09FwRodataAddr; + fw.rodata_len = bce_CP_b09FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_CP_b09FwRodata; + } else { + fw.ver_major = bce_CP_b06FwReleaseMajor; + fw.ver_minor = bce_CP_b06FwReleaseMinor; + fw.ver_fix = bce_CP_b06FwReleaseFix; + fw.start_addr = bce_CP_b06FwStartAddr; + + fw.text_addr = bce_CP_b06FwTextAddr; + fw.text_len = bce_CP_b06FwTextLen; + fw.text_index = 0; + fw.text = bce_CP_b06FwText; + + fw.data_addr = bce_CP_b06FwDataAddr; + fw.data_len = bce_CP_b06FwDataLen; + fw.data_index = 0; + fw.data = bce_CP_b06FwData; + + fw.sbss_addr = bce_CP_b06FwSbssAddr; + fw.sbss_len = bce_CP_b06FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_CP_b06FwSbss; + + fw.bss_addr = bce_CP_b06FwBssAddr; + fw.bss_len = bce_CP_b06FwBssLen; + fw.bss_index = 0; + fw.bss = bce_CP_b06FwBss; + + fw.rodata_addr = bce_CP_b06FwRodataAddr; + fw.rodata_len = bce_CP_b06FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_CP_b06FwRodata; + } + + DBPRINT(sc, BCE_INFO_RESET, "Loading CP firmware.\n"); + bce_load_cpu_fw(sc, &cpu_reg, &fw); + + DBEXIT(BCE_VERBOSE_RESET); +} + + +/****************************************************************************/ +/* Initialize the COM CPU. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_init_com_cpu(struct bce_softc *sc) +{ + struct cpu_reg cpu_reg; + struct fw_info fw; + + DBENTER(BCE_VERBOSE_RESET); + cpu_reg.mode = BCE_COM_CPU_MODE; cpu_reg.mode_value_halt = BCE_COM_CPU_MODE_SOFT_HALT; cpu_reg.mode_value_sstep = BCE_COM_CPU_MODE_STEP_ENA; @@ -3013,42 +4055,113 @@ cpu_reg.spad_base = BCE_COM_SCRATCH; cpu_reg.mips_view_base = 0x8000000; - fw.ver_major = bce_COM_b06FwReleaseMajor; - fw.ver_minor = bce_COM_b06FwReleaseMinor; - fw.ver_fix = bce_COM_b06FwReleaseFix; - fw.start_addr = bce_COM_b06FwStartAddr; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + fw.ver_major = bce_COM_b09FwReleaseMajor; + fw.ver_minor = bce_COM_b09FwReleaseMinor; + fw.ver_fix = bce_COM_b09FwReleaseFix; + fw.start_addr = bce_COM_b09FwStartAddr; - fw.text_addr = bce_COM_b06FwTextAddr; - fw.text_len = bce_COM_b06FwTextLen; - fw.text_index = 0; - fw.text = bce_COM_b06FwText; + fw.text_addr = bce_COM_b09FwTextAddr; + fw.text_len = bce_COM_b09FwTextLen; + fw.text_index = 0; + fw.text = bce_COM_b09FwText; - fw.data_addr = bce_COM_b06FwDataAddr; - fw.data_len = bce_COM_b06FwDataLen; - fw.data_index = 0; - fw.data = bce_COM_b06FwData; + fw.data_addr = bce_COM_b09FwDataAddr; + fw.data_len = bce_COM_b09FwDataLen; + fw.data_index = 0; + fw.data = bce_COM_b09FwData; - fw.sbss_addr = bce_COM_b06FwSbssAddr; - fw.sbss_len = bce_COM_b06FwSbssLen; - fw.sbss_index = 0; - fw.sbss = bce_COM_b06FwSbss; + fw.sbss_addr = bce_COM_b09FwSbssAddr; + fw.sbss_len = bce_COM_b09FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_COM_b09FwSbss; - fw.bss_addr = bce_COM_b06FwBssAddr; - fw.bss_len = bce_COM_b06FwBssLen; - fw.bss_index = 0; - fw.bss = bce_COM_b06FwBss; + fw.bss_addr = bce_COM_b09FwBssAddr; + fw.bss_len = bce_COM_b09FwBssLen; + fw.bss_index = 0; + fw.bss = bce_COM_b09FwBss; - fw.rodata_addr = bce_COM_b06FwRodataAddr; - fw.rodata_len = bce_COM_b06FwRodataLen; - fw.rodata_index = 0; - fw.rodata = bce_COM_b06FwRodata; + fw.rodata_addr = bce_COM_b09FwRodataAddr; + fw.rodata_len = bce_COM_b09FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_COM_b09FwRodata; + } else { + fw.ver_major = bce_COM_b06FwReleaseMajor; + fw.ver_minor = bce_COM_b06FwReleaseMinor; + fw.ver_fix = bce_COM_b06FwReleaseFix; + fw.start_addr = bce_COM_b06FwStartAddr; + fw.text_addr = bce_COM_b06FwTextAddr; + fw.text_len = bce_COM_b06FwTextLen; + fw.text_index = 0; + fw.text = bce_COM_b06FwText; + + fw.data_addr = bce_COM_b06FwDataAddr; + fw.data_len = bce_COM_b06FwDataLen; + fw.data_index = 0; + fw.data = bce_COM_b06FwData; + + fw.sbss_addr = bce_COM_b06FwSbssAddr; + fw.sbss_len = bce_COM_b06FwSbssLen; + fw.sbss_index = 0; + fw.sbss = bce_COM_b06FwSbss; + + fw.bss_addr = bce_COM_b06FwBssAddr; + fw.bss_len = bce_COM_b06FwBssLen; + fw.bss_index = 0; + fw.bss = bce_COM_b06FwBss; + + fw.rodata_addr = bce_COM_b06FwRodataAddr; + fw.rodata_len = bce_COM_b06FwRodataLen; + fw.rodata_index = 0; + fw.rodata = bce_COM_b06FwRodata; + } + DBPRINT(sc, BCE_INFO_RESET, "Loading COM firmware.\n"); bce_load_cpu_fw(sc, &cpu_reg, &fw); + + DBEXIT(BCE_VERBOSE_RESET); } /****************************************************************************/ +/* Initialize the RV2P, RX, TX, TPAT, COM, and CP CPUs. */ +/* */ +/* Loads the firmware for each CPU and starts the CPU. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_init_cpus(struct bce_softc *sc) +{ + DBENTER(BCE_VERBOSE_RESET); + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + bce_load_rv2p_fw(sc, bce_xi_rv2p_proc1, sizeof(bce_xi_rv2p_proc1), + RV2P_PROC1); + bce_load_rv2p_fw(sc, bce_xi_rv2p_proc2, sizeof(bce_xi_rv2p_proc2), + RV2P_PROC2); + } else { + bce_load_rv2p_fw(sc, bce_rv2p_proc1, sizeof(bce_rv2p_proc1), + RV2P_PROC1); + bce_load_rv2p_fw(sc, bce_rv2p_proc2, sizeof(bce_rv2p_proc2), + RV2P_PROC2); + } + + bce_init_rxp_cpu(sc); + bce_init_txp_cpu(sc); + bce_init_tpat_cpu(sc); + bce_init_com_cpu(sc); + bce_init_cp_cpu(sc); + + DBEXIT(BCE_VERBOSE_RESET); +} + + +/****************************************************************************/ /* Initialize context memory. */ /* */ /* Clears the memory associated with each Context ID (CID). */ @@ -3057,30 +4170,95 @@ /* Nothing. */ /****************************************************************************/ static void -bce_init_context(struct bce_softc *sc) +bce_init_ctx(struct bce_softc *sc) { - u32 vcid; - vcid = 96; - while (vcid) { - u32 vcid_addr, pcid_addr, offset; + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_CTX); - vcid--; + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + /* DRC: Replace this constant value with a #define. */ + int i, retry_cnt = 10; + u32 val; - vcid_addr = GET_CID_ADDR(vcid); - pcid_addr = vcid_addr; + DBPRINT(sc, BCE_INFO_CTX, "Initializing 5709 context.\n"); - REG_WR(sc, BCE_CTX_VIRT_ADDR, 0x00); - REG_WR(sc, BCE_CTX_PAGE_TBL, pcid_addr); + /* + * BCM5709 context memory may be cached + * in host memory so prepare the host memory + * for access. + */ + val = BCE_CTX_COMMAND_ENABLED | BCE_CTX_COMMAND_MEM_INIT | (1 << 12); + val |= (BCM_PAGE_BITS - 8) << 16; + REG_WR(sc, BCE_CTX_COMMAND, val); - /* Zero out the context. */ - for (offset = 0; offset < PHY_CTX_SIZE; offset += 4) { - CTX_WR(sc, 0x00, offset, 0); + /* Wait for mem init command to complete. */ + for (i = 0; i < retry_cnt; i++) { + val = REG_RD(sc, BCE_CTX_COMMAND); + if (!(val & BCE_CTX_COMMAND_MEM_INIT)) + break; + DELAY(2); } - REG_WR(sc, BCE_CTX_VIRT_ADDR, vcid_addr); - REG_WR(sc, BCE_CTX_PAGE_TBL, pcid_addr); + /* ToDo: Consider returning an error here. */ + DBRUNIF((val & BCE_CTX_COMMAND_MEM_INIT), + BCE_PRINTF("%s(): Context memory initialization failed!\n", + __FUNCTION__)); + + for (i = 0; i < sc->ctx_pages; i++) { + int j; + + /* Set the physical address of the context memory cache. */ + REG_WR(sc, BCE_CTX_HOST_PAGE_TBL_DATA0, + BCE_ADDR_LO(sc->ctx_paddr[i] & 0xfffffff0) | + BCE_CTX_HOST_PAGE_TBL_DATA0_VALID); + REG_WR(sc, BCE_CTX_HOST_PAGE_TBL_DATA1, + BCE_ADDR_HI(sc->ctx_paddr[i])); + REG_WR(sc, BCE_CTX_HOST_PAGE_TBL_CTRL, i | + BCE_CTX_HOST_PAGE_TBL_CTRL_WRITE_REQ); + + /* Verify that the context memory write was successful. */ + for (j = 0; j < retry_cnt; j++) { + val = REG_RD(sc, BCE_CTX_HOST_PAGE_TBL_CTRL); + if ((val & BCE_CTX_HOST_PAGE_TBL_CTRL_WRITE_REQ) == 0) + break; + DELAY(5); + } + + /* ToDo: Consider returning an error here. */ + DBRUNIF((val & BCE_CTX_HOST_PAGE_TBL_CTRL_WRITE_REQ), + BCE_PRINTF("%s(): Failed to initialize context page %d!\n", + __FUNCTION__, i)); + } + } else { + u32 vcid_addr, offset; + + DBPRINT(sc, BCE_INFO, "Initializing 5706/5708 context.\n"); + + /* + * For the 5706/5708, context memory is local to + * the controller, so initialize the controller + * context memory. + */ + + vcid_addr = GET_CID_ADDR(96); + while (vcid_addr) { + + vcid_addr -= PHY_CTX_SIZE; + + REG_WR(sc, BCE_CTX_VIRT_ADDR, 0); + REG_WR(sc, BCE_CTX_PAGE_TBL, vcid_addr); + + for(offset = 0; offset < PHY_CTX_SIZE; offset += 4) { + CTX_WR(sc, 0x00, offset, 0); + } + + REG_WR(sc, BCE_CTX_VIRT_ADDR, vcid_addr); + REG_WR(sc, BCE_CTX_PAGE_TBL, vcid_addr); + } + } + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_CTX); } @@ -3095,6 +4273,7 @@ { u32 mac_lo = 0, mac_hi = 0; + DBENTER(BCE_VERBOSE_RESET); /* * The NetXtreme II bootcode populates various NIC * power-on and runtime configuration items in a @@ -3110,7 +4289,7 @@ BCE_PORT_HW_CFG_MAC_LOWER); if ((mac_lo == 0) && (mac_hi == 0)) { - BCE_PRINTF("%s(%d): Invalid Ethernet address!\n", + BCE_PRINTF("%s(%d): Invalid Ethernet address!\n", __FILE__, __LINE__); } else { sc->eaddr[0] = (u_char)(mac_hi >> 8); @@ -3122,6 +4301,7 @@ } DBPRINT(sc, BCE_INFO_MISC, "Permanent Ethernet address = %6D\n", sc->eaddr, ":"); + DBEXIT(BCE_VERBOSE_RESET); } @@ -3137,6 +4317,9 @@ u32 val; u8 *mac_addr = sc->eaddr; + /* ToDo: Add support for setting multiple MAC addresses. */ + + DBENTER(BCE_VERBOSE_RESET); DBPRINT(sc, BCE_INFO_MISC, "Setting Ethernet address = %6D\n", sc->eaddr, ":"); val = (mac_addr[0] << 8) | mac_addr[1]; @@ -3147,6 +4330,8 @@ (mac_addr[4] << 8) | mac_addr[5]; REG_WR(sc, BCE_EMAC_MAC_MATCH1, val); + + DBEXIT(BCE_VERBOSE_RESET); } @@ -3164,7 +4349,7 @@ struct mii_data *mii = NULL; int mtmp, itmp; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); BCE_LOCK_ASSERT(sc); @@ -3175,13 +4360,16 @@ callout_stop(&sc->bce_tick_callout); /* Disable the transmit/receive blocks. */ - REG_WR(sc, BCE_MISC_ENABLE_CLR_BITS, 0x5ffffff); + REG_WR(sc, BCE_MISC_ENABLE_CLR_BITS, BCE_MISC_ENABLE_CLR_DEFAULT); REG_RD(sc, BCE_MISC_ENABLE_CLR_BITS); DELAY(20); bce_disable_intr(sc); /* Free RX buffers. */ +#ifdef BCE_USE_SPLIT_HEADER + bce_free_pg_chain(sc); +#endif bce_free_rx_chain(sc); /* Free TX buffers. */ @@ -3212,7 +4400,7 @@ ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_RESET); } @@ -3222,7 +4410,9 @@ u32 val; int i, rc = 0; - DBPRINT(sc, BCE_VERBOSE_RESET, "%s(): reset_code = 0x%08X\n", + DBENTER(BCE_VERBOSE_RESET); + + DBPRINT(sc, BCE_VERBOSE_RESET, "%s(): reset_code = 0x%08X\n", __FUNCTION__, reset_code); /* Wait for pending PCI transactions to complete. */ @@ -3234,6 +4424,14 @@ val = REG_RD(sc, BCE_MISC_ENABLE_CLR_BITS); DELAY(5); + /* Disable DMA */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + val = REG_RD(sc, BCE_MISC_NEW_CORE_CTL); + val &= ~BCE_MISC_NEW_CORE_CTL_DMA_ENABLE; + REG_WR(sc, BCE_MISC_NEW_CORE_CTL, val); + } + /* Assume bootcode is running. */ sc->bce_fw_timed_out = 0; @@ -3250,34 +4448,46 @@ val = REG_RD(sc, BCE_MISC_ID); /* Chip reset. */ - val = BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | - BCE_PCICFG_MISC_CONFIG_REG_WINDOW_ENA | - BCE_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP; - REG_WR(sc, BCE_PCICFG_MISC_CONFIG, val); + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + REG_WR(sc, BCE_MISC_COMMAND, BCE_MISC_COMMAND_SW_RESET); + REG_RD(sc, BCE_MISC_COMMAND); + DELAY(5); - /* Allow up to 30us for reset to complete. */ - for (i = 0; i < 10; i++) { - val = REG_RD(sc, BCE_PCICFG_MISC_CONFIG); - if ((val & (BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | - BCE_PCICFG_MISC_CONFIG_CORE_RST_BSY)) == 0) { - break; + val = BCE_PCICFG_MISC_CONFIG_REG_WINDOW_ENA | + BCE_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP; + + pci_write_config(sc->bce_dev, BCE_PCICFG_MISC_CONFIG, val, 4); + } else { + val = BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | + BCE_PCICFG_MISC_CONFIG_REG_WINDOW_ENA | + BCE_PCICFG_MISC_CONFIG_TARGET_MB_WORD_SWAP; + REG_WR(sc, BCE_PCICFG_MISC_CONFIG, val); + + /* Allow up to 30us for reset to complete. */ + for (i = 0; i < 10; i++) { + val = REG_RD(sc, BCE_PCICFG_MISC_CONFIG); + if ((val & (BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | + BCE_PCICFG_MISC_CONFIG_CORE_RST_BSY)) == 0) { + break; + } + DELAY(10); } - DELAY(10); - } - /* Check that reset completed successfully. */ - if (val & (BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | - BCE_PCICFG_MISC_CONFIG_CORE_RST_BSY)) { - BCE_PRINTF("%s(%d): Reset failed!\n", - __FILE__, __LINE__); - rc = EBUSY; - goto bce_reset_exit; + /* Check that reset completed successfully. */ + if (val & (BCE_PCICFG_MISC_CONFIG_CORE_RST_REQ | + BCE_PCICFG_MISC_CONFIG_CORE_RST_BSY)) { + BCE_PRINTF("%s(%d): Reset failed!\n", + __FILE__, __LINE__); + rc = EBUSY; + goto bce_reset_exit; + } } /* Make sure byte swapping is properly configured. */ val = REG_RD(sc, BCE_PCI_SWAP_DIAG0); if (val != 0x01020304) { - BCE_PRINTF("%s(%d): Byte swap is incorrect!\n", + BCE_PRINTF("%s(%d): Byte swap is incorrect!\n", __FILE__, __LINE__); rc = ENODEV; goto bce_reset_exit; @@ -3293,6 +4503,7 @@ __FILE__, __LINE__); bce_reset_exit: + DBEXIT(BCE_VERBOSE_RESET); return (rc); } @@ -3303,12 +4514,11 @@ u32 val; int rc = 0; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); - /* Make sure the interrupt is not active. */ - REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, BCE_PCICFG_INT_ACK_CMD_MASK_INT); + bce_disable_intr(sc); - /* + /* * Initialize DMA byte/word swapping, configure the number of DMA * channels and PCI clock compensation delay. */ @@ -3338,14 +4548,6 @@ REG_WR(sc, BCE_DMA_CONFIG, val); - /* Clear the PCI-X relaxed ordering bit. See errata E3_5708CA0_570. */ - if (sc->bce_flags & BCE_PCIX_FLAG) { - u16 val; - - val = pci_read_config(sc->bce_dev, BCE_PCI_PCIX_CMD, 2); - pci_write_config(sc->bce_dev, BCE_PCI_PCIX_CMD, val & ~0x2, 2); - } - /* Enable the RX_V2P and Context state machines before access. */ REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, BCE_MISC_ENABLE_SET_BITS_HOST_COALESCE_ENABLE | @@ -3353,7 +4555,7 @@ BCE_MISC_ENABLE_STATUS_BITS_CONTEXT_ENABLE); /* Initialize context mapping and zero out the quick contexts. */ - bce_init_context(sc); + bce_init_ctx(sc); /* Initialize the on-boards CPUs */ bce_init_cpus(sc); @@ -3368,6 +4570,15 @@ val = REG_RD(sc, BCE_MQ_CONFIG); val &= ~BCE_MQ_CONFIG_KNL_BYP_BLK_SIZE; val |= BCE_MQ_CONFIG_KNL_BYP_BLK_SIZE_256; + + /* Enable bins used on the 5709. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + val |= BCE_MQ_CONFIG_BIN_MQ_MODE; + if (BCE_CHIP_ID(sc) == BCE_CHIP_ID_5709_A1) + val |= BCE_MQ_CONFIG_HALT_DIS; + } + REG_WR(sc, BCE_MQ_CONFIG, val); val = 0x10000 + (MAX_CID_CNT * MB_KERNEL_CTX_SIZE); @@ -3384,8 +4595,11 @@ val |= (BCM_PAGE_BITS - 8) << 24 | 0x40; REG_WR(sc, BCE_TBDR_CONFIG, val); + /* Set the perfect match control register to default. */ + REG_WR_IND(sc, BCE_RXP_PM_CTRL, 0); + bce_chipinit_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_RESET); return(rc); } @@ -3403,7 +4617,7 @@ u32 reg, val; int rc = 0; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); /* Load the hardware default MAC address. */ bce_set_mac_addr(sc); @@ -3449,12 +4663,48 @@ (sc->bce_cmd_ticks_int << 16) | sc->bce_cmd_ticks); REG_WR(sc, BCE_HC_STATS_TICKS, (sc->bce_stats_ticks & 0xffff00)); - REG_WR(sc, BCE_HC_STAT_COLLECT_TICKS, - 0xbb8); /* 3ms */ - REG_WR(sc, BCE_HC_CONFIG, - (BCE_HC_CONFIG_RX_TMR_MODE | BCE_HC_CONFIG_TX_TMR_MODE | - BCE_HC_CONFIG_COLLECT_STATS)); + REG_WR(sc, BCE_HC_STAT_COLLECT_TICKS, 0xbb8); /* 3ms */ + /* Configure the Host Coalescing block. */ + val = BCE_HC_CONFIG_RX_TMR_MODE | BCE_HC_CONFIG_TX_TMR_MODE | + BCE_HC_CONFIG_COLLECT_STATS; + +#if 0 + /* ToDo: Add MSI-X support. */ + if (sc->bce_flags & BCE_USING_MSIX_FLAG) { + u32 base = ((BCE_TX_VEC - 1) * BCE_HC_SB_CONFIG_SIZE) + + BCE_HC_SB_CONFIG_1; + + REG_WR(sc, BCE_HC_MSIX_BIT_VECTOR, BCE_HC_MSIX_BIT_VECTOR_VAL); + + REG_WR(sc, base, BCE_HC_SB_CONFIG_1_TX_TMR_MODE | + BCE_HC_SB_CONFIG_1_ONE_SHOT); + + REG_WR(sc, base + BCE_HC_TX_QUICK_CONS_TRIP_OFF, + (sc->tx_quick_cons_trip_int << 16) | + sc->tx_quick_cons_trip); + + REG_WR(sc, base + BCE_HC_TX_TICKS_OFF, + (sc->tx_ticks_int << 16) | sc->tx_ticks); + + val |= BCE_HC_CONFIG_SB_ADDR_INC_128B; + } + + /* + * Tell the HC block to automatically set the + * INT_MASK bit after an MSI/MSI-X interrupt + * is generated so the driver doesn't have to. + */ + if (sc->bce_flags & BCE_ONE_SHOT_MSI_FLAG) + val |= BCE_HC_CONFIG_ONE_SHOT; + + /* Set the MSI-X status blocks to 128 byte boundaries. */ + if (sc->bce_flags & BCE_USING_MSIX_FLAG) + val |= BCE_HC_CONFIG_SB_ADDR_INC_128B; +#endif + + REG_WR(sc, BCE_HC_CONFIG, val); + /* Clear the internal statistics counters. */ REG_WR(sc, BCE_HC_COMMAND, BCE_HC_COMMAND_CLR_STAT_NOW); @@ -3476,6 +4726,14 @@ goto bce_blockinit_exit; } + /* Enable DMA */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + val = REG_RD(sc, BCE_MISC_NEW_CORE_CTL); + val |= BCE_MISC_NEW_CORE_CTL_DMA_ENABLE; + REG_WR(sc, BCE_MISC_NEW_CORE_CTL, val); + } + /* Allow bootcode to apply any additional fixes before enabling MAC. */ rc = bce_fw_sync(sc, BCE_DRV_MSG_DATA_WAIT2 | BCE_DRV_MSG_CODE_RESET); @@ -3483,112 +4741,100 @@ REG_WR(sc, BCE_HC_ATTN_BITS_ENABLE, STATUS_ATTN_BITS_LINK_STATE); /* Enable all remaining blocks in the MAC. */ - REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, 0x5ffffff); + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) + REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, BCE_MISC_ENABLE_DEFAULT_XI); + else + REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, BCE_MISC_ENABLE_DEFAULT); + REG_RD(sc, BCE_MISC_ENABLE_SET_BITS); DELAY(20); + /* Save the current host coalescing block settings. */ + sc->hc_command = REG_RD(sc, BCE_HC_COMMAND); + bce_blockinit_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_RESET); return (rc); } /****************************************************************************/ -/* Encapsulate an mbuf cluster into the rx_bd chain. */ +/* Encapsulate an mbuf into the rx_bd chain. */ /* */ -/* The NetXtreme II can support Jumbo frames by using multiple rx_bd's. */ -/* This routine will map an mbuf cluster into 1 or more rx_bd's as */ -/* necessary. */ -/* */ -/* Todo: Consider writing the hardware mailboxes here to make rx_bd's */ -/* available to the hardware as soon as possible. */ -/* */ /* Returns: */ /* 0 for success, positive value for failure. */ /****************************************************************************/ static int -bce_get_buf(struct bce_softc *sc, struct mbuf *m, u16 *prod, u16 *chain_prod, - u32 *prod_bseq) +bce_get_rx_buf(struct bce_softc *sc, struct mbuf *m, u16 *prod, + u16 *chain_prod, u32 *prod_bseq) { bus_dmamap_t map; bus_dma_segment_t segs[BCE_MAX_SEGMENTS]; struct mbuf *m_new = NULL; struct rx_bd *rxbd; - int i, nsegs, error, rc = 0; + int nsegs, error, rc = 0; #ifdef BCE_DEBUG u16 debug_chain_prod = *chain_prod; #endif - DBPRINT(sc, (BCE_VERBOSE_RESET | BCE_VERBOSE_RECV), "Entering %s()\n", - __FUNCTION__); + DBENTER(BCE_EXTREME_RESET | BCE_EXTREME_RECV | BCE_EXTREME_LOAD); /* Make sure the inputs are valid. */ DBRUNIF((*chain_prod > MAX_RX_BD), BCE_PRINTF("%s(%d): RX producer out of range: 0x%04X > 0x%04X\n", __FILE__, __LINE__, *chain_prod, (u16) MAX_RX_BD)); - DBPRINT(sc, BCE_VERBOSE_RECV, "%s(enter): prod = 0x%04X, chain_prod = 0x%04X, " + DBPRINT(sc, BCE_EXTREME_RECV, "%s(enter): prod = 0x%04X, chain_prod = 0x%04X, " "prod_bseq = 0x%08X\n", __FUNCTION__, *prod, *chain_prod, *prod_bseq); + /* Update some debug statistic counters */ + DBRUNIF((sc->free_rx_bd < sc->rx_low_watermark), + sc->rx_low_watermark = sc->free_rx_bd); + DBRUNIF((sc->free_rx_bd == sc->max_rx_bd), sc->rx_empty_count++); + /* Check whether this is a new mbuf allocation. */ if (m == NULL) { /* Simulate an mbuf allocation failure. */ DBRUNIF(DB_RANDOMTRUE(bce_debug_mbuf_allocation_failure), - sc->mbuf_alloc_failed++; - sc->mbuf_sim_alloc_failed++; + sc->mbuf_alloc_failed++; + sc->debug_mbuf_sim_alloc_failed++; rc = ENOBUFS; - goto bce_get_buf_exit); + goto bce_get_rx_buf_exit); /* This is a new mbuf allocation. */ +#ifdef BCE_USE_SPLIT_HEADER MGETHDR(m_new, M_DONTWAIT, MT_DATA); +#else + if (sc->rx_bd_mbuf_alloc_size <= MCLBYTES) + m_new = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + else + m_new = m_getjcl(M_DONTWAIT, MT_DATA, M_PKTHDR, sc->rx_bd_mbuf_alloc_size); +#endif + if (m_new == NULL) { - - DBPRINT(sc, BCE_WARN, "%s(%d): RX mbuf header allocation failed!\n", - __FILE__, __LINE__); - sc->mbuf_alloc_failed++; - rc = ENOBUFS; - goto bce_get_buf_exit; + goto bce_get_rx_buf_exit; } - DBRUNIF(1, sc->rx_mbuf_alloc++); - - /* Simulate an mbuf cluster allocation failure. */ - DBRUNIF(DB_RANDOMTRUE(bce_debug_mbuf_allocation_failure), - m_freem(m_new); - sc->rx_mbuf_alloc--; - sc->mbuf_alloc_failed++; - sc->mbuf_sim_alloc_failed++; - rc = ENOBUFS; - goto bce_get_buf_exit); - - /* Attach a cluster to the mbuf. */ - m_cljget(m_new, M_DONTWAIT, sc->mbuf_alloc_size); - if (!(m_new->m_flags & M_EXT)) { - - DBPRINT(sc, BCE_WARN, "%s(%d): RX mbuf chain allocation failed!\n", - __FILE__, __LINE__); - - m_freem(m_new); - DBRUNIF(1, sc->rx_mbuf_alloc--); - - sc->mbuf_alloc_failed++; - rc = ENOBUFS; - goto bce_get_buf_exit; - } - - /* Initialize the mbuf cluster. */ - m_new->m_len = m_new->m_pkthdr.len = sc->mbuf_alloc_size; + DBRUN(sc->debug_rx_mbuf_alloc++); } else { /* Reuse an existing mbuf. */ m_new = m; - m_new->m_len = m_new->m_pkthdr.len = sc->mbuf_alloc_size; - m_new->m_data = m_new->m_ext.ext_buf; } + /* Make sure we have a valid packet header. */ + M_ASSERTPKTHDR(m_new); + + /* Initialize the mbuf size and pad if necessary for alignment. */ + m_new->m_pkthdr.len = m_new->m_len = sc->rx_bd_mbuf_alloc_size; + m_adj(m_new, sc->rx_bd_mbuf_align_pad); + + /* ToDo: Consider calling m_fragment() to test error handling. */ + /* Map the mbuf cluster into device memory. */ map = sc->rx_mbuf_map[*chain_prod]; error = bus_dmamap_load_mbuf_sg(sc->rx_mbuf_tag, map, m_new, @@ -3596,80 +4842,204 @@ /* Handle any mapping errors. */ if (error) { - BCE_PRINTF("%s(%d): Error mapping mbuf into RX chain!\n", - __FILE__, __LINE__); + BCE_PRINTF("%s(%d): Error mapping mbuf into RX chain (%d)!\n", + __FILE__, __LINE__, error); m_freem(m_new); - DBRUNIF(1, sc->rx_mbuf_alloc--); + DBRUN(sc->debug_rx_mbuf_alloc--); rc = ENOBUFS; - goto bce_get_buf_exit; + goto bce_get_rx_buf_exit; } - /* Make sure there is room in the receive chain. */ - if (nsegs > sc->free_rx_bd) { - bus_dmamap_unload(sc->rx_mbuf_tag, map); + /* All mbufs must map to a single segment. */ + KASSERT(nsegs == 1, ("%s(): Too many segments returned (%d)!", + __FUNCTION__, nsegs)); - m_freem(m_new); - DBRUNIF(1, sc->rx_mbuf_alloc--); + /* ToDo: Do we need bus_dmamap_sync(,,BUS_DMASYNC_PREWRITE) here? */ - rc = EFBIG; - goto bce_get_buf_exit; - } - -#ifdef BCE_DEBUG - /* Track the distribution of buffer segments. */ - sc->rx_mbuf_segs[nsegs]++; -#endif - - /* Update some debug statistic counters */ - DBRUNIF((sc->free_rx_bd < sc->rx_low_watermark), - sc->rx_low_watermark = sc->free_rx_bd); - DBRUNIF((sc->free_rx_bd == sc->max_rx_bd), sc->rx_empty_count++); - - /* Setup the rx_bd for the first segment. */ + /* Setup the rx_bd for the segment. */ rxbd = &sc->rx_bd_chain[RX_PAGE(*chain_prod)][RX_IDX(*chain_prod)]; rxbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(segs[0].ds_addr)); rxbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(segs[0].ds_addr)); rxbd->rx_bd_len = htole32(segs[0].ds_len); - rxbd->rx_bd_flags = htole32(RX_BD_FLAGS_START); + rxbd->rx_bd_flags = htole32(RX_BD_FLAGS_START | RX_BD_FLAGS_END); *prod_bseq += segs[0].ds_len; - for (i = 1; i < nsegs; i++) { + /* Save the mbuf and update our counter. */ + sc->rx_mbuf_ptr[*chain_prod] = m_new; + sc->free_rx_bd -= nsegs; - *prod = NEXT_RX_BD(*prod); - *chain_prod = RX_CHAIN_IDX(*prod); + DBRUNMSG(BCE_INSANE_RECV, bce_dump_rx_mbuf_chain(sc, debug_chain_prod, + nsegs)); - rxbd = &sc->rx_bd_chain[RX_PAGE(*chain_prod)][RX_IDX(*chain_prod)]; + DBPRINT(sc, BCE_EXTREME_RECV, "%s(exit): prod = 0x%04X, chain_prod = 0x%04X, " + "prod_bseq = 0x%08X\n", __FUNCTION__, *prod, *chain_prod, *prod_bseq); - rxbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(segs[i].ds_addr)); - rxbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(segs[i].ds_addr)); - rxbd->rx_bd_len = htole32(segs[i].ds_len); - rxbd->rx_bd_flags = 0; - *prod_bseq += segs[i].ds_len; +bce_get_rx_buf_exit: + DBEXIT(BCE_EXTREME_RESET | BCE_EXTREME_RECV | BCE_EXTREME_LOAD); + + return(rc); +} + + +#ifdef BCE_USE_SPLIT_HEADER +/****************************************************************************/ +/* Encapsulate an mbuf cluster into the page chain. */ +/* */ +/* Returns: */ +/* 0 for success, positive value for failure. */ +/****************************************************************************/ +static int +bce_get_pg_buf(struct bce_softc *sc, struct mbuf *m, u16 *prod, + u16 *prod_idx) +{ + bus_dmamap_t map; + bus_addr_t busaddr; + struct mbuf *m_new = NULL; + struct rx_bd *pgbd; + int error, rc = 0; +#ifdef BCE_DEBUG + u16 debug_prod_idx = *prod_idx; +#endif + + DBENTER(BCE_EXTREME_RESET | BCE_EXTREME_RECV | BCE_EXTREME_LOAD); + + /* Make sure the inputs are valid. */ + DBRUNIF((*prod_idx > MAX_PG_BD), + BCE_PRINTF("%s(%d): page producer out of range: 0x%04X > 0x%04X\n", + __FILE__, __LINE__, *prod_idx, (u16) MAX_PG_BD)); + + DBPRINT(sc, BCE_EXTREME_RECV, "%s(enter): prod = 0x%04X, " + "chain_prod = 0x%04X\n", __FUNCTION__, *prod, *prod_idx); + + /* Update counters if we've hit a new low or run out of pages. */ + DBRUNIF((sc->free_pg_bd < sc->pg_low_watermark), + sc->pg_low_watermark = sc->free_pg_bd); + DBRUNIF((sc->free_pg_bd == sc->max_pg_bd), sc->pg_empty_count++); + + /* Check whether this is a new mbuf allocation. */ + if (m == NULL) { + + /* Simulate an mbuf allocation failure. */ + DBRUNIF(DB_RANDOMTRUE(bce_debug_mbuf_allocation_failure), + sc->mbuf_alloc_failed++; + sc->debug_mbuf_sim_alloc_failed++; + rc = ENOBUFS; + goto bce_get_pg_buf_exit); + + /* This is a new mbuf allocation. */ + m_new = m_getcl(M_DONTWAIT, MT_DATA, 0); + if (m_new == NULL) { + sc->mbuf_alloc_failed++; + rc = ENOBUFS; + goto bce_get_pg_buf_exit; + } + + DBRUN(sc->debug_pg_mbuf_alloc++); + } else { + /* Reuse an existing mbuf. */ + m_new = m; + m_new->m_data = m_new->m_ext.ext_buf; } - rxbd->rx_bd_flags |= htole32(RX_BD_FLAGS_END); + m_new->m_len = sc->pg_bd_mbuf_alloc_size; + /* ToDo: Consider calling m_fragment() to test error handling. */ + + /* Map the mbuf cluster into device memory. */ + map = sc->pg_mbuf_map[*prod_idx]; + error = bus_dmamap_load(sc->pg_mbuf_tag, map, mtod(m_new, void *), + sc->pg_bd_mbuf_alloc_size, bce_dma_map_addr, &busaddr, BUS_DMA_NOWAIT); + + /* Handle any mapping errors. */ + if (error) { + BCE_PRINTF("%s(%d): Error mapping mbuf into page chain!\n", + __FILE__, __LINE__); + + m_freem(m_new); + DBRUN(sc->debug_pg_mbuf_alloc--); + + rc = ENOBUFS; + goto bce_get_pg_buf_exit; + } + + /* ToDo: Do we need bus_dmamap_sync(,,BUS_DMASYNC_PREWRITE) here? */ + + /* + * The page chain uses the same rx_bd data structure + * as the receive chain but doesn't require a byte sequence (bseq). + */ + pgbd = &sc->pg_bd_chain[PG_PAGE(*prod_idx)][PG_IDX(*prod_idx)]; + + pgbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(busaddr)); + pgbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(busaddr)); + pgbd->rx_bd_len = htole32(sc->pg_bd_mbuf_alloc_size); + pgbd->rx_bd_flags = htole32(RX_BD_FLAGS_START | RX_BD_FLAGS_END); + /* Save the mbuf and update our counter. */ - sc->rx_mbuf_ptr[*chain_prod] = m_new; - sc->free_rx_bd -= nsegs; + sc->pg_mbuf_ptr[*prod_idx] = m_new; + sc->free_pg_bd--; - DBRUN(BCE_VERBOSE_RECV, bce_dump_rx_mbuf_chain(sc, debug_chain_prod, - nsegs)); + DBRUNMSG(BCE_INSANE_RECV, bce_dump_pg_mbuf_chain(sc, debug_prod_idx, + 1)); - DBPRINT(sc, BCE_VERBOSE_RECV, "%s(exit): prod = 0x%04X, chain_prod = 0x%04X, " - "prod_bseq = 0x%08X\n", __FUNCTION__, *prod, *chain_prod, *prod_bseq); + DBPRINT(sc, BCE_EXTREME_RECV, "%s(exit): prod = 0x%04X, " + "prod_idx = 0x%04X\n", __FUNCTION__, *prod, *prod_idx); -bce_get_buf_exit: - DBPRINT(sc, (BCE_VERBOSE_RESET | BCE_VERBOSE_RECV), "Exiting %s()\n", - __FUNCTION__); +bce_get_pg_buf_exit: + DBEXIT(BCE_EXTREME_RESET | BCE_EXTREME_RECV | BCE_EXTREME_LOAD); return(rc); } +#endif /* BCE_USE_SPLIT_HEADER */ +/****************************************************************************/ +/* Initialize the TX context memory. */ +/* */ +/* Returns: */ +/* Nothing */ +/****************************************************************************/ +static void +bce_init_tx_context(struct bce_softc *sc) +{ + u32 val; + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_CTX); + + /* Initialize the context ID for an L2 TX chain. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + /* Set the CID type to support an L2 connection. */ + val = BCE_L2CTX_TX_TYPE_TYPE_L2_XI | BCE_L2CTX_TX_TYPE_SIZE_L2_XI; + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TYPE_XI, val); + val = BCE_L2CTX_TX_CMD_TYPE_TYPE_L2_XI | (8 << 16); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_CMD_TYPE_XI, val); + + /* Point the hardware to the first page in the chain. */ + val = BCE_ADDR_HI(sc->tx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TBDR_BHADDR_HI_XI, val); + val = BCE_ADDR_LO(sc->tx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TBDR_BHADDR_LO_XI, val); + } else { + /* Set the CID type to support an L2 connection. */ + val = BCE_L2CTX_TX_TYPE_TYPE_L2 | BCE_L2CTX_TX_TYPE_SIZE_L2; + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TYPE, val); + val = BCE_L2CTX_TX_CMD_TYPE_TYPE_L2 | (8 << 16); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_CMD_TYPE, val); + + /* Point the hardware to the first page in the chain. */ + val = BCE_ADDR_HI(sc->tx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TBDR_BHADDR_HI, val); + val = BCE_ADDR_LO(sc->tx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TX_TBDR_BHADDR_LO, val); + } + + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_CTX); +} + + /****************************************************************************/ /* Allocate memory and initialize the TX data structures. */ /* */ @@ -3680,10 +5050,9 @@ bce_init_tx_chain(struct bce_softc *sc) { struct tx_bd *txbd; - u32 val; int i, rc = 0; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_LOAD); /* Set the initial TX producer/consumer indices. */ sc->tx_prod = 0; @@ -3691,8 +5060,8 @@ sc->tx_prod_bseq = 0; sc->used_tx_bd = 0; sc->max_tx_bd = USABLE_TX_BD; - DBRUNIF(1, sc->tx_hi_watermark = USABLE_TX_BD); - DBRUNIF(1, sc->tx_full_count = 0); + DBRUN(sc->tx_hi_watermark = USABLE_TX_BD); + DBRUN(sc->tx_full_count = 0); /* * The NetXtreme II supports a linked-list structre called @@ -3720,24 +5089,11 @@ txbd->tx_bd_haddr_lo = htole32(BCE_ADDR_LO(sc->tx_bd_chain_paddr[j])); } - /* Initialize the context ID for an L2 TX chain. */ - val = BCE_L2CTX_TYPE_TYPE_L2; - val |= BCE_L2CTX_TYPE_SIZE_L2; - CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TYPE, val); + bce_init_tx_context(sc); - val = BCE_L2CTX_CMD_TYPE_TYPE_L2 | (8 << 16); - CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_CMD_TYPE, val); + DBRUNMSG(BCE_INSANE_SEND, bce_dump_tx_chain(sc, 0, TOTAL_TX_BD)); + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_LOAD); - /* Point the hardware to the first page in the chain. */ - val = BCE_ADDR_HI(sc->tx_bd_chain_paddr[0]); - CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TBDR_BHADDR_HI, val); - val = BCE_ADDR_LO(sc->tx_bd_chain_paddr[0]); - CTX_WR(sc, GET_CID_ADDR(TX_CID), BCE_L2CTX_TBDR_BHADDR_LO, val); - - DBRUN(BCE_VERBOSE_SEND, bce_dump_tx_chain(sc, 0, TOTAL_TX_BD)); - - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - return(rc); } @@ -3753,7 +5109,7 @@ { int i; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_UNLOAD); /* Unmap, unload, and free any mbufs still in the TX mbuf chain. */ for (i = 0; i < TOTAL_TX_BD; i++) { @@ -3763,8 +5119,8 @@ BUS_DMASYNC_POSTWRITE); m_freem(sc->tx_mbuf_ptr[i]); sc->tx_mbuf_ptr[i] = NULL; - DBRUNIF(1, sc->tx_mbuf_alloc--); - } + DBRUN(sc->debug_tx_mbuf_alloc--); + } } /* Clear each TX chain page. */ @@ -3774,68 +5130,74 @@ sc->used_tx_bd = 0; /* Check if we lost any mbufs in the process. */ - DBRUNIF((sc->tx_mbuf_alloc), + DBRUNIF((sc->debug_tx_mbuf_alloc), BCE_PRINTF("%s(%d): Memory leak! Lost %d mbufs " "from tx chain!\n", - __FILE__, __LINE__, sc->tx_mbuf_alloc)); + __FILE__, __LINE__, sc->debug_tx_mbuf_alloc)); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_SEND | BCE_VERBOSE_UNLOAD); } /****************************************************************************/ -/* Add mbufs to the RX chain until its full or an mbuf allocation error */ -/* occurs. */ +/* Initialize the RX context memory. */ /* */ /* Returns: */ /* Nothing */ /****************************************************************************/ static void -bce_fill_rx_chain(struct bce_softc *sc) +bce_init_rx_context(struct bce_softc *sc) { - u16 prod, chain_prod; - u32 prod_bseq; -#ifdef BCE_DEBUG - int rx_mbuf_alloc_before, free_rx_bd_before; -#endif + u32 val; - DBPRINT(sc, BCE_EXCESSIVE_RECV, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_CTX); - prod = sc->rx_prod; - prod_bseq = sc->rx_prod_bseq; + /* Initialize the type, size, and BD cache levels for the RX context. */ + val = BCE_L2CTX_RX_CTX_TYPE_CTX_BD_CHN_TYPE_VALUE | + BCE_L2CTX_RX_CTX_TYPE_SIZE_L2 | + (0x02 << BCE_L2CTX_RX_BD_PRE_READ_SHIFT); -#ifdef BCE_DEBUG - rx_mbuf_alloc_before = sc->rx_mbuf_alloc; - free_rx_bd_before = sc->free_rx_bd; -#endif + /* + * Set the level for generating pause frames + * when the number of available rx_bd's gets + * too low (the low watermark) and the level + * when pause frames can be stopped (the high + * watermark). + */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + u32 lo_water, hi_water; - /* Keep filling the RX chain until it's full. */ - while (sc->free_rx_bd > 0) { - chain_prod = RX_CHAIN_IDX(prod); - if (bce_get_buf(sc, NULL, &prod, &chain_prod, &prod_bseq)) { - /* Bail out if we can't add an mbuf to the chain. */ - break; - } - prod = NEXT_RX_BD(prod); + lo_water = BCE_L2CTX_RX_LO_WATER_MARK_DEFAULT; + hi_water = USABLE_RX_BD / 4; + + lo_water /= BCE_L2CTX_RX_LO_WATER_MARK_SCALE; + hi_water /= BCE_L2CTX_RX_HI_WATER_MARK_SCALE; + + if (hi_water > 0xf) + hi_water = 0xf; + else if (hi_water == 0) + lo_water = 0; + val |= (lo_water << BCE_L2CTX_RX_LO_WATER_MARK_SHIFT) | + (hi_water << BCE_L2CTX_RX_HI_WATER_MARK_SHIFT); } -#if 0 - DBRUNIF((sc->rx_mbuf_alloc - rx_mbuf_alloc_before), - BCE_PRINTF("%s(): Installed %d mbufs in %d rx_bd entries.\n", - __FUNCTION__, (sc->rx_mbuf_alloc - rx_mbuf_alloc_before), - (free_rx_bd_before - sc->free_rx_bd))); -#endif + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_CTX_TYPE, val); - /* Save the RX chain producer index. */ - sc->rx_prod = prod; - sc->rx_prod_bseq = prod_bseq; + /* Setup the MQ BIN mapping for l2_ctx_host_bseq. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + val = REG_RD(sc, BCE_MQ_MAP_L2_5); + REG_WR(sc, BCE_MQ_MAP_L2_5, val | BCE_MQ_MAP_L2_5_ARM); + } - /* Tell the chip about the waiting rx_bd's. */ - REG_WR16(sc, MB_RX_CID_ADDR + BCE_L2CTX_HOST_BDIDX, sc->rx_prod); - REG_WR(sc, MB_RX_CID_ADDR + BCE_L2CTX_HOST_BSEQ, sc->rx_prod_bseq); + /* Point the hardware to the first page in the chain. */ + val = BCE_ADDR_HI(sc->rx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_NX_BDHADDR_HI, val); + val = BCE_ADDR_LO(sc->rx_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_NX_BDHADDR_LO, val); - DBPRINT(sc, BCE_EXCESSIVE_RECV, "Exiting %s()\n", __FUNCTION__); - + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_CTX); } @@ -3850,9 +5212,9 @@ { struct rx_bd *rxbd; int i, rc = 0; - u32 val; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); /* Initialize the RX producer and consumer indices. */ sc->rx_prod = 0; @@ -3860,8 +5222,8 @@ sc->rx_prod_bseq = 0; sc->free_rx_bd = USABLE_RX_BD; sc->max_rx_bd = USABLE_RX_BD; - DBRUNIF(1, sc->rx_low_watermark = USABLE_RX_BD); - DBRUNIF(1, sc->rx_empty_count = 0); + DBRUN(sc->rx_low_watermark = sc->max_rx_bd); + DBRUN(sc->rx_empty_count = 0); /* Initialize the RX next pointer chain entries. */ for (i = 0; i < RX_PAGES; i++) { @@ -3880,23 +5242,9 @@ rxbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(sc->rx_bd_chain_paddr[j])); } - /* Initialize the context ID for an L2 RX chain. */ - val = BCE_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE_VALUE; - val |= BCE_L2CTX_CTX_TYPE_SIZE_L2; - val |= 0x02 << 8; - CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_CTX_TYPE, val); - - /* Point the hardware to the first page in the chain. */ - val = BCE_ADDR_HI(sc->rx_bd_chain_paddr[0]); - CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_NX_BDHADDR_HI, val); - val = BCE_ADDR_LO(sc->rx_bd_chain_paddr[0]); - CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_NX_BDHADDR_LO, val); - - - /* Fill up the RX chain. */ +/* Fill up the RX chain. */ bce_fill_rx_chain(sc); - for (i = 0; i < RX_PAGES; i++) { bus_dmamap_sync( sc->rx_bd_chain_tag, @@ -3904,15 +5252,66 @@ BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); } - DBRUN(BCE_VERBOSE_RECV, bce_dump_rx_chain(sc, 0, TOTAL_RX_BD)); + bce_init_rx_context(sc); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - + DBRUNMSG(BCE_EXTREME_RECV, bce_dump_rx_chain(sc, 0, TOTAL_RX_BD)); + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); + /* ToDo: Are there possible failure modes here? */ return(rc); } /****************************************************************************/ +/* Add mbufs to the RX chain until its full or an mbuf allocation error */ +/* occurs. */ +/* */ +/* Returns: */ +/* Nothing */ +/****************************************************************************/ +static void +bce_fill_rx_chain(struct bce_softc *sc) +{ + u16 prod, prod_idx; + u32 prod_bseq; + + DBENTER(BCE_VERBOSE_RESET | BCE_EXTREME_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); + + /* Get the RX chain producer indices. */ + prod = sc->rx_prod; + prod_bseq = sc->rx_prod_bseq; + + /* Keep filling the RX chain until it's full. */ + while (sc->free_rx_bd > 0) { + prod_idx = RX_CHAIN_IDX(prod); + if (bce_get_rx_buf(sc, NULL, &prod, &prod_idx, &prod_bseq)) { + /* Bail out if we can't add an mbuf to the chain. */ + break; + } + prod = NEXT_RX_BD(prod); + } + + /* Save the RX chain producer indices. */ + sc->rx_prod = prod; + sc->rx_prod_bseq = prod_bseq; + + DBRUNIF(((prod & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE), + BCE_PRINTF("%s(): Invalid rx_prod value: 0x%04X\n", + __FUNCTION__, sc->rx_prod)); + + /* Write the mailbox and tell the chip about the waiting rx_bd's. */ + REG_WR16(sc, MB_GET_CID_ADDR(RX_CID) + BCE_L2MQ_RX_HOST_BDIDX, + sc->rx_prod); + REG_WR(sc, MB_GET_CID_ADDR(RX_CID) + BCE_L2MQ_RX_HOST_BSEQ, + sc->rx_prod_bseq); + + DBEXIT(BCE_VERBOSE_RESET | BCE_EXTREME_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); +} + + +/****************************************************************************/ /* Free memory and clear the RX data structures. */ /* */ /* Returns: */ @@ -3922,16 +5321,9 @@ bce_free_rx_chain(struct bce_softc *sc) { int i; -#ifdef BCE_DEBUG - int rx_mbuf_alloc_before; -#endif - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_UNLOAD); -#ifdef BCE_DEBUG - rx_mbuf_alloc_before = sc->rx_mbuf_alloc; -#endif - /* Free any mbufs still in the RX mbuf chain. */ for (i = 0; i < TOTAL_RX_BD; i++) { if (sc->rx_mbuf_ptr[i] != NULL) { @@ -3940,14 +5332,10 @@ BUS_DMASYNC_POSTREAD); m_freem(sc->rx_mbuf_ptr[i]); sc->rx_mbuf_ptr[i] = NULL; - DBRUNIF(1, sc->rx_mbuf_alloc--); + DBRUN(sc->debug_rx_mbuf_alloc--); } } - DBRUNIF((rx_mbuf_alloc_before - sc->rx_mbuf_alloc), - BCE_PRINTF("%s(): Released %d mbufs.\n", - __FUNCTION__, (rx_mbuf_alloc_before - sc->rx_mbuf_alloc))); - /* Clear each RX chain page. */ for (i = 0; i < RX_PAGES; i++) bzero((char *)sc->rx_bd_chain[i], BCE_RX_CHAIN_PAGE_SZ); @@ -3955,15 +5343,184 @@ sc->free_rx_bd = sc->max_rx_bd; /* Check if we lost any mbufs in the process. */ - DBRUNIF((sc->rx_mbuf_alloc), - BCE_PRINTF("%s(%d): Memory leak! Lost %d mbufs from rx chain!\n", - __FILE__, __LINE__, sc->rx_mbuf_alloc)); + DBRUNIF((sc->debug_rx_mbuf_alloc), + BCE_PRINTF("%s(): Memory leak! Lost %d mbufs from rx chain!\n", + __FUNCTION__, sc->debug_rx_mbuf_alloc)); - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_UNLOAD); } +#ifdef BCE_USE_SPLIT_HEADER /****************************************************************************/ +/* Allocate memory and initialize the page data structures. */ +/* Assumes that bce_init_rx_chain() has not already been called. */ +/* */ +/* Returns: */ +/* 0 for success, positive value for failure. */ +/****************************************************************************/ +static int +bce_init_pg_chain(struct bce_softc *sc) +{ + struct rx_bd *pgbd; + int i, rc = 0; + u32 val; + + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); + + /* Initialize the page producer and consumer indices. */ + sc->pg_prod = 0; + sc->pg_cons = 0; + sc->free_pg_bd = USABLE_PG_BD; + sc->max_pg_bd = USABLE_PG_BD; + DBRUN(sc->pg_low_watermark = sc->max_pg_bd); + DBRUN(sc->pg_empty_count = 0); + + /* Initialize the page next pointer chain entries. */ + for (i = 0; i < PG_PAGES; i++) { + int j; + + pgbd = &sc->pg_bd_chain[i][USABLE_PG_BD_PER_PAGE]; + + /* Check if we've reached the last page. */ + if (i == (PG_PAGES - 1)) + j = 0; + else + j = i + 1; + + /* Setup the chain page pointers. */ + pgbd->rx_bd_haddr_hi = htole32(BCE_ADDR_HI(sc->pg_bd_chain_paddr[j])); + pgbd->rx_bd_haddr_lo = htole32(BCE_ADDR_LO(sc->pg_bd_chain_paddr[j])); + } + + /* Setup the MQ BIN mapping for host_pg_bidx. */ + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) + REG_WR(sc, BCE_MQ_MAP_L2_3, BCE_MQ_MAP_L2_3_DEFAULT); + + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_PG_BUF_SIZE, 0); + + /* Configure the rx_bd and page chain mbuf cluster size. */ + val = (sc->rx_bd_mbuf_data_len << 16) | sc->pg_bd_mbuf_alloc_size; + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_PG_BUF_SIZE, val); + + /* Configure the context reserved for jumbo support. */ + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_RBDC_KEY, + BCE_L2CTX_RX_RBDC_JUMBO_KEY); + + /* Point the hardware to the first page in the page chain. */ + val = BCE_ADDR_HI(sc->pg_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_NX_PG_BDHADDR_HI, val); + val = BCE_ADDR_LO(sc->pg_bd_chain_paddr[0]); + CTX_WR(sc, GET_CID_ADDR(RX_CID), BCE_L2CTX_RX_NX_PG_BDHADDR_LO, val); + + /* Fill up the page chain. */ + bce_fill_pg_chain(sc); + + for (i = 0; i < PG_PAGES; i++) { + bus_dmamap_sync( + sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i], + BUS_DMASYNC_PREREAD | BUS_DMASYNC_PREWRITE); + } + + DBRUNMSG(BCE_EXTREME_RECV, bce_dump_pg_chain(sc, 0, TOTAL_PG_BD)); + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); + return(rc); +} + + +/****************************************************************************/ +/* Add mbufs to the page chain until its full or an mbuf allocation error */ +/* occurs. */ +/* */ +/* Returns: */ +/* Nothing */ +/****************************************************************************/ +static void +bce_fill_pg_chain(struct bce_softc *sc) +{ + u16 prod, prod_idx; + + DBENTER(BCE_VERBOSE_RESET | BCE_EXTREME_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); + + /* Get the page chain prodcuer index. */ + prod = sc->pg_prod; + + /* Keep filling the page chain until it's full. */ + while (sc->free_pg_bd > 0) { + prod_idx = PG_CHAIN_IDX(prod); + if (bce_get_pg_buf(sc, NULL, &prod, &prod_idx)) { + /* Bail out if we can't add an mbuf to the chain. */ + break; + } + prod = NEXT_PG_BD(prod); + } + + /* Save the page chain producer index. */ + sc->pg_prod = prod; + + DBRUNIF(((prod & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE), + BCE_PRINTF("%s(): Invalid pg_prod value: 0x%04X\n", + __FUNCTION__, sc->pg_prod)); + + /* + * Write the mailbox and tell the chip about + * the new rx_bd's in the page chain. + */ + REG_WR16(sc, MB_GET_CID_ADDR(RX_CID) + BCE_L2MQ_RX_HOST_PG_BDIDX, + sc->pg_prod); + + DBEXIT(BCE_VERBOSE_RESET | BCE_EXTREME_RECV | BCE_VERBOSE_LOAD | + BCE_VERBOSE_CTX); +} + + +/****************************************************************************/ +/* Free memory and clear the RX data structures. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_free_pg_chain(struct bce_softc *sc) +{ + int i; + + DBENTER(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_UNLOAD); + + /* Free any mbufs still in the mbuf page chain. */ + for (i = 0; i < TOTAL_PG_BD; i++) { + if (sc->pg_mbuf_ptr[i] != NULL) { + if (sc->pg_mbuf_map[i] != NULL) + bus_dmamap_sync(sc->pg_mbuf_tag, sc->pg_mbuf_map[i], + BUS_DMASYNC_POSTREAD); + m_freem(sc->pg_mbuf_ptr[i]); + sc->pg_mbuf_ptr[i] = NULL; + DBRUN(sc->debug_pg_mbuf_alloc--); + } + } + + /* Clear each page chain pages. */ + for (i = 0; i < PG_PAGES; i++) + bzero((char *)sc->pg_bd_chain[i], BCE_PG_CHAIN_PAGE_SZ); + + sc->free_pg_bd = sc->max_pg_bd; + + /* Check if we lost any mbufs in the process. */ + DBRUNIF((sc->debug_pg_mbuf_alloc), + BCE_PRINTF("%s(): Memory leak! Lost %d mbufs from page chain!\n", + __FUNCTION__, sc->debug_pg_mbuf_alloc)); + + DBEXIT(BCE_VERBOSE_RESET | BCE_VERBOSE_RECV | BCE_VERBOSE_UNLOAD); +} +#endif /* BCE_USE_SPLIT_HEADER */ + + +/****************************************************************************/ /* Set media options. */ /* */ /* Returns: */ @@ -3972,12 +5529,15 @@ static int bce_ifmedia_upd(struct ifnet *ifp) { - struct bce_softc *sc; + struct bce_softc *sc = ifp->if_softc; - sc = ifp->if_softc; + DBENTER(BCE_VERBOSE); + BCE_LOCK(sc); bce_ifmedia_upd_locked(ifp); BCE_UNLOCK(sc); + + DBEXIT(BCE_VERBOSE); return (0); } @@ -3991,12 +5551,11 @@ static void bce_ifmedia_upd_locked(struct ifnet *ifp) { - struct bce_softc *sc; + struct bce_softc *sc = ifp->if_softc; struct mii_data *mii; - struct ifmedia *ifm; - sc = ifp->if_softc; - ifm = &sc->bce_ifmedia; + DBENTER(BCE_VERBOSE); + BCE_LOCK_ASSERT(sc); mii = device_get_softc(sc->bce_miibus); @@ -4012,6 +5571,8 @@ } mii_mediachg(mii); } + + DBEXIT(BCE_VERBOSE); } @@ -4024,10 +5585,10 @@ static void bce_ifmedia_sts(struct ifnet *ifp, struct ifmediareq *ifmr) { - struct bce_softc *sc; + struct bce_softc *sc = ifp->if_softc; struct mii_data *mii; - sc = ifp->if_softc; + DBENTER(BCE_VERBOSE); BCE_LOCK(sc); @@ -4038,6 +5599,8 @@ ifmr->ifm_status = mii->mii_media_status; BCE_UNLOCK(sc); + + DBEXIT(BCE_VERBOSE); } @@ -4052,6 +5615,8 @@ { u32 new_link_state, old_link_state; + DBENTER(BCE_VERBOSE_PHY | BCE_VERBOSE_INTR); + new_link_state = sc->status_block->status_attn_bits & STATUS_ATTN_BITS_LINK_STATE; old_link_state = sc->status_block->status_attn_bits_ack & @@ -4060,32 +5625,58 @@ /* Handle any changes if the link state has changed. */ if (new_link_state != old_link_state) { - DBRUN(BCE_VERBOSE_INTR, bce_dump_status_block(sc)); - - sc->bce_link = 0; - callout_stop(&sc->bce_tick_callout); - bce_tick(sc); - /* Update the status_attn_bits_ack field in the status block. */ if (new_link_state) { REG_WR(sc, BCE_PCICFG_STATUS_BIT_SET_CMD, STATUS_ATTN_BITS_LINK_STATE); - DBPRINT(sc, BCE_INFO_MISC, "Link is now UP.\n"); + DBPRINT(sc, BCE_INFO_PHY, "%s(): Link is now UP.\n", + __FUNCTION__); } else { REG_WR(sc, BCE_PCICFG_STATUS_BIT_CLEAR_CMD, STATUS_ATTN_BITS_LINK_STATE); - DBPRINT(sc, BCE_INFO_MISC, "Link is now DOWN.\n"); + DBPRINT(sc, BCE_INFO_PHY, "%s(): Link is now DOWN.\n", + __FUNCTION__); } + /* + * Assume link is down and allow + * tick routine to update the state + * based on the actual media state. + */ + sc->bce_link = 0; + callout_stop(&sc->bce_tick_callout); + bce_tick(sc); } /* Acknowledge the link change interrupt. */ REG_WR(sc, BCE_EMAC_STATUS, BCE_EMAC_STATUS_LINK_CHANGE); + + DBEXIT(BCE_VERBOSE_PHY | BCE_VERBOSE_INTR); } /****************************************************************************/ +/* Reads the receive consumer value from the status block (skipping over */ +/* chain page pointer if necessary). */ +/* */ +/* Returns: */ +/* hw_cons */ +/****************************************************************************/ +static inline u16 +bce_get_hw_rx_cons(struct bce_softc *sc) +{ + u16 hw_cons; + + rmb(); + hw_cons = sc->status_block->status_rx_quick_consumer_index0; + if ((hw_cons & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE) + hw_cons++; + + return hw_cons; +} + +/****************************************************************************/ /* Handles received frame interrupt events. */ /* */ /* Returns: */ @@ -4094,262 +5685,342 @@ static void bce_rx_intr(struct bce_softc *sc) { - struct status_block *sblk = sc->status_block; struct ifnet *ifp = sc->bce_ifp; - u16 hw_cons, sw_cons, sw_chain_cons, sw_prod, sw_chain_prod; - u32 sw_prod_bseq; struct l2_fhdr *l2fhdr; + unsigned int pkt_len; + u16 sw_rx_cons, sw_rx_cons_idx, hw_rx_cons; + u32 status; +#ifdef BCE_USE_SPLIT_HEADER + unsigned int rem_len; + u16 sw_pg_cons, sw_pg_cons_idx; +#endif - DBRUNIF(1, sc->rx_interrupts++); + DBENTER(BCE_VERBOSE_RECV | BCE_VERBOSE_INTR); + DBRUN(sc->rx_interrupts++); + DBPRINT(sc, BCE_EXTREME_RECV, "%s(enter): rx_prod = 0x%04X, " + "rx_cons = 0x%04X, rx_prod_bseq = 0x%08X\n", + __FUNCTION__, sc->rx_prod, sc->rx_cons, sc->rx_prod_bseq); /* Prepare the RX chain pages to be accessed by the host CPU. */ for (int i = 0; i < RX_PAGES; i++) bus_dmamap_sync(sc->rx_bd_chain_tag, sc->rx_bd_chain_map[i], BUS_DMASYNC_POSTWRITE); +#ifdef BCE_USE_SPLIT_HEADER + /* Prepare the page chain pages to be accessed by the host CPU. */ + for (int i = 0; i < PG_PAGES; i++) + bus_dmamap_sync(sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i], BUS_DMASYNC_POSTWRITE); +#endif + /* Get the hardware's view of the RX consumer index. */ - hw_cons = sc->hw_rx_cons = sblk->status_rx_quick_consumer_index0; - if ((hw_cons & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE) - hw_cons++; + hw_rx_cons = sc->hw_rx_cons = bce_get_hw_rx_cons(sc); - /* Get working copies of the driver's view of the RX indices. */ - sw_cons = sc->rx_cons; - sw_prod = sc->rx_prod; - sw_prod_bseq = sc->rx_prod_bseq; + /* Get working copies of the driver's view of the consumer indices. */ + sw_rx_cons = sc->rx_cons; +#ifdef BCE_USE_SPLIT_HEADER + sw_pg_cons = sc->pg_cons; +#endif - DBPRINT(sc, BCE_INFO_RECV, "%s(enter): sw_prod = 0x%04X, " - "sw_cons = 0x%04X, sw_prod_bseq = 0x%08X\n", - __FUNCTION__, sw_prod, sw_cons, sw_prod_bseq); - - /* Prevent speculative reads from getting ahead of the status block. */ - bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, - BUS_SPACE_BARRIER_READ); - /* Update some debug statistics counters */ DBRUNIF((sc->free_rx_bd < sc->rx_low_watermark), sc->rx_low_watermark = sc->free_rx_bd); - DBRUNIF((sc->free_rx_bd == USABLE_RX_BD), sc->rx_empty_count++); + DBRUNIF((sc->free_rx_bd == sc->max_rx_bd), sc->rx_empty_count++); /* Scan through the receive chain as long as there is work to do */ - while (sw_cons != hw_cons) { - struct mbuf *m; - struct rx_bd *rxbd; - unsigned int len; - u32 status; + /* ToDo: Consider setting a limit on the number of packets processed. */ + rmb(); + while (sw_rx_cons != hw_rx_cons) { + struct mbuf *m0; - /* Clear the mbuf pointer. */ - m = NULL; - /* Convert the producer/consumer indices to an actual rx_bd index. */ - sw_chain_cons = RX_CHAIN_IDX(sw_cons); - sw_chain_prod = RX_CHAIN_IDX(sw_prod); + sw_rx_cons_idx = RX_CHAIN_IDX(sw_rx_cons); - /* Get the used rx_bd. */ - rxbd = &sc->rx_bd_chain[RX_PAGE(sw_chain_cons)][RX_IDX(sw_chain_cons)]; + /* Unmap the mbuf from DMA space. */ + bus_dmamap_sync(sc->rx_mbuf_tag, + sc->rx_mbuf_map[sw_rx_cons_idx], + BUS_DMASYNC_POSTREAD); + bus_dmamap_unload(sc->rx_mbuf_tag, + sc->rx_mbuf_map[sw_rx_cons_idx]); + + /* Remove the mbuf from the RX chain. */ + m0 = sc->rx_mbuf_ptr[sw_rx_cons_idx]; + sc->rx_mbuf_ptr[sw_rx_cons_idx] = NULL; + DBRUN(sc->debug_rx_mbuf_alloc--); sc->free_rx_bd++; - - DBRUN(BCE_VERBOSE_RECV, - BCE_PRINTF("%s(): ", __FUNCTION__); - bce_dump_rxbd(sc, sw_chain_cons, rxbd)); -#ifdef DEVICE_POLLING - if (ifp->if_capenable & IFCAP_POLLING) { - if (sc->bce_rxcycles <= 0) - break; - sc->bce_rxcycles--; - } -#endif + /* + * Frames received on the NetXteme II are prepended + * with an l2_fhdr structure which provides status + * information about the received frame (including + * VLAN tags and checksum info). The frames are also + * automatically adjusted to align the IP header + * (i.e. two null bytes are inserted before the + * Ethernet header). As a result the data DMA'd by + * the controller into the mbuf is as follows: + * +---------+-----+---------------------+-----+ + * | l2_fhdr | pad | packet data | FCS | + * +---------+-----+---------------------+-----+ + * The l2_fhdr needs to be checked and skipped and + * the FCS needs to be stripped before sending the + * packet up the stack. + */ + l2fhdr = mtod(m0, struct l2_fhdr *); - /* The mbuf is stored with the last rx_bd entry of a packet. */ - if (sc->rx_mbuf_ptr[sw_chain_cons] != NULL) { + /* Get the packet data + FCS length and the status. */ + pkt_len = l2fhdr->l2_fhdr_pkt_len; + status = l2fhdr->l2_fhdr_status; - /* Validate that this is the last rx_bd. */ - DBRUNIF((!(rxbd->rx_bd_flags & RX_BD_FLAGS_END)), - BCE_PRINTF("%s(%d): Unexpected mbuf found in rx_bd[0x%04X]!\n", - __FILE__, __LINE__, sw_chain_cons); - bce_breakpoint(sc)); + /* + * Skip over the l2_fhdr and pad, resulting in the + * following data in the mbuf: + * +---------------------+-----+ + * | packet data | FCS | + * +---------------------+-----+ + */ + m_adj(m0, sizeof(struct l2_fhdr) + ETHER_ALIGN); +#ifdef BCE_USE_SPLIT_HEADER + /* + * Check whether the received frame fits in a single + * mbuf or not (i.e. packet data + FCS <= + * sc->rx_bd_mbuf_data_len bytes). + */ + if (pkt_len > m0->m_len) { /* - * ToDo: If the received packet is small enough - * to fit into a single, non-M_EXT mbuf, - * allocate a new mbuf here, copy the data to - * that mbuf, and recycle the mapped jumbo frame. + * The received frame is larger than a single mbuf. + * If the frame was a TCP frame then only the TCP + * header is placed in the mbuf, the remaining + * payload (including FCS) is placed in the page + * chain, the SPLIT flag is set, and the header + * length is placed in the IP checksum field. + * If the frame is not a TCP frame then the mbuf + * is filled and the remaining bytes are placed + * in the page chain. */ - /* Unmap the mbuf from DMA space. */ - bus_dmamap_sync(sc->rx_mbuf_tag, - sc->rx_mbuf_map[sw_chain_cons], - BUS_DMASYNC_POSTREAD); - bus_dmamap_unload(sc->rx_mbuf_tag, - sc->rx_mbuf_map[sw_chain_cons]); + DBPRINT(sc, BCE_INFO_RECV, "%s(): Found a large packet.\n", + __FUNCTION__); - /* Remove the mbuf from the RX chain. */ - m = sc->rx_mbuf_ptr[sw_chain_cons]; - sc->rx_mbuf_ptr[sw_chain_cons] = NULL; - /* - * Frames received on the NetXteme II are prepended - * with an l2_fhdr structure which provides status - * information about the received frame (including - * VLAN tags and checksum info). The frames are also - * automatically adjusted to align the IP header - * (i.e. two null bytes are inserted before the - * Ethernet header). + * When the page chain is enabled and the TCP + * header has been split from the TCP payload, + * the ip_xsum structure will reflect the length + * of the TCP header, not the IP checksum. Set + * the packet length of the mbuf accordingly. */ - l2fhdr = mtod(m, struct l2_fhdr *); + if (status & L2_FHDR_STATUS_SPLIT) + m0->m_len = l2fhdr->l2_fhdr_ip_xsum; - len = l2fhdr->l2_fhdr_pkt_len; - status = l2fhdr->l2_fhdr_status; + rem_len = pkt_len - m0->m_len; - DBRUNIF(DB_RANDOMTRUE(bce_debug_l2fhdr_status_check), - BCE_PRINTF("Simulating l2_fhdr status error.\n"); - status = status | L2_FHDR_ERRORS_PHY_DECODE); + /* Pull mbufs off the page chain for the remaining data. */ + while (rem_len > 0) { + struct mbuf *m_pg; - /* Watch for unusual sized frames. */ - DBRUNIF(((len < BCE_MIN_MTU) || (len > BCE_MAX_JUMBO_ETHER_MTU_VLAN)), - BCE_PRINTF("%s(%d): Unusual frame size found. " - "Min(%d), Actual(%d), Max(%d)\n", - __FILE__, __LINE__, (int) BCE_MIN_MTU, - len, (int) BCE_MAX_JUMBO_ETHER_MTU_VLAN); - bce_dump_mbuf(sc, m); - bce_breakpoint(sc)); + sw_pg_cons_idx = PG_CHAIN_IDX(sw_pg_cons); - len -= ETHER_CRC_LEN; + /* Remove the mbuf from the page chain. */ + m_pg = sc->pg_mbuf_ptr[sw_pg_cons_idx]; + sc->pg_mbuf_ptr[sw_pg_cons_idx] = NULL; + DBRUN(sc->debug_pg_mbuf_alloc--); + sc->free_pg_bd++; - /* Check the received frame for errors. */ - if (status & (L2_FHDR_ERRORS_BAD_CRC | - L2_FHDR_ERRORS_PHY_DECODE | L2_FHDR_ERRORS_ALIGNMENT | - L2_FHDR_ERRORS_TOO_SHORT | L2_FHDR_ERRORS_GIANT_FRAME)) { + /* Unmap the page chain mbuf from DMA space. */ + bus_dmamap_sync(sc->pg_mbuf_tag, + sc->pg_mbuf_map[sw_pg_cons_idx], + BUS_DMASYNC_POSTREAD); + bus_dmamap_unload(sc->pg_mbuf_tag, + sc->pg_mbuf_map[sw_pg_cons_idx]); - /* Log the error and release the mbuf. */ - ifp->if_ierrors++; - DBRUNIF(1, sc->l2fhdr_status_errors++); - - /* Todo: Reuse the mbuf to improve performance. */ + /* Adjust the mbuf length. */ + if (rem_len < m_pg->m_len) { + /* The mbuf chain is complete. */ + m_pg->m_len = rem_len; + rem_len = 0; + } else { + /* More packet data is waiting. */ + rem_len -= m_pg->m_len; + } - m_freem(m); - m = NULL; - goto bce_rx_int_next_rx; + /* Concatenate the mbuf cluster to the mbuf. */ + m_cat(m0, m_pg); + + sw_pg_cons = NEXT_PG_BD(sw_pg_cons); } - /* Skip over the l2_fhdr when passing the data up the stack. */ - m_adj(m, sizeof(struct l2_fhdr) + ETHER_ALIGN); + /* Set the total packet length. */ + m0->m_pkthdr.len = pkt_len; - /* Adjust the packet length to match the received data. */ - m->m_pkthdr.len = m->m_len = len; + } else { + /* + * The received packet is small and fits in a + * single mbuf (i.e. the l2_fhdr + pad + packet + + * FCS <= MHLEN). In other words, the packet is + * 154 bytes or less in size. + */ - /* Send the packet to the appropriate interface. */ - m->m_pkthdr.rcvif = ifp; + DBPRINT(sc, BCE_INFO_RECV, "%s(): Found a small packet.\n", + __FUNCTION__); - DBRUN(BCE_VERBOSE_RECV, - struct ether_header *eh; - eh = mtod(m, struct ether_header *); - BCE_PRINTF("%s(): to: %6D, from: %6D, type: 0x%04X\n", - __FUNCTION__, eh->ether_dhost, ":", - eh->ether_shost, ":", htons(eh->ether_type))); + /* Set the total packet length. */ + m0->m_pkthdr.len = m0->m_len = pkt_len; + } +#endif - /* Validate the checksum if offload enabled. */ - if (ifp->if_capenable & IFCAP_RXCSUM) { + /* Remove the trailing Ethernet FCS. */ + m_adj(m0, -ETHER_CRC_LEN); - /* Check for an IP datagram. */ - if (status & L2_FHDR_STATUS_IP_DATAGRAM) { - m->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; + /* Check that the resulting mbuf chain is valid. */ + DBRUN(m_sanity(m0, FALSE)); + DBRUNIF(((m0->m_len < ETHER_HDR_LEN) | + (m0->m_pkthdr.len > BCE_MAX_JUMBO_ETHER_MTU_VLAN)), + BCE_PRINTF("Invalid Ethernet frame size!\n"); + m_print(m0, 128)); - /* Check if the IP checksum is valid. */ - if ((l2fhdr->l2_fhdr_ip_xsum ^ 0xffff) == 0) - m->m_pkthdr.csum_flags |= CSUM_IP_VALID; - else - DBPRINT(sc, BCE_WARN_SEND, - "%s(): Invalid IP checksum = 0x%04X!\n", - __FUNCTION__, l2fhdr->l2_fhdr_ip_xsum); - } + DBRUNIF(DB_RANDOMTRUE(bce_debug_l2fhdr_status_check), + BCE_PRINTF("Simulating l2_fhdr status error.\n"); + status = status | L2_FHDR_ERRORS_PHY_DECODE); - /* Check for a valid TCP/UDP frame. */ - if (status & (L2_FHDR_STATUS_TCP_SEGMENT | - L2_FHDR_STATUS_UDP_DATAGRAM)) { + /* Check the received frame for errors. */ + if (status & (L2_FHDR_ERRORS_BAD_CRC | + L2_FHDR_ERRORS_PHY_DECODE | L2_FHDR_ERRORS_ALIGNMENT | + L2_FHDR_ERRORS_TOO_SHORT | L2_FHDR_ERRORS_GIANT_FRAME)) { - /* Check for a good TCP/UDP checksum. */ - if ((status & (L2_FHDR_ERRORS_TCP_XSUM | - L2_FHDR_ERRORS_UDP_XSUM)) == 0) { - m->m_pkthdr.csum_data = - l2fhdr->l2_fhdr_tcp_udp_xsum; - m->m_pkthdr.csum_flags |= (CSUM_DATA_VALID - | CSUM_PSEUDO_HDR); - } else - DBPRINT(sc, BCE_WARN_SEND, - "%s(): Invalid TCP/UDP checksum = 0x%04X!\n", - __FUNCTION__, l2fhdr->l2_fhdr_tcp_udp_xsum); + /* Log the error and release the mbuf. */ + ifp->if_ierrors++; + DBRUN(sc->l2fhdr_status_errors++); + + m_freem(m0); + m0 = NULL; + goto bce_rx_int_next_rx; + } + + /* Send the packet to the appropriate interface. */ + m0->m_pkthdr.rcvif = ifp; + + /* Assume no hardware checksum. */ + m0->m_pkthdr.csum_flags = 0; + + /* Validate the checksum if offload enabled. */ + if (ifp->if_capenable & IFCAP_RXCSUM) { + + /* Check for an IP datagram. */ + if (!(status & L2_FHDR_STATUS_SPLIT) && + (status & L2_FHDR_STATUS_IP_DATAGRAM)) { + m0->m_pkthdr.csum_flags |= CSUM_IP_CHECKED; + + /* Check if the IP checksum is valid. */ + if ((l2fhdr->l2_fhdr_ip_xsum ^ 0xffff) == 0) + m0->m_pkthdr.csum_flags |= CSUM_IP_VALID; + } + + /* Check for a valid TCP/UDP frame. */ + if (status & (L2_FHDR_STATUS_TCP_SEGMENT | + L2_FHDR_STATUS_UDP_DATAGRAM)) { + + /* Check for a good TCP/UDP checksum. */ + if ((status & (L2_FHDR_ERRORS_TCP_XSUM | + L2_FHDR_ERRORS_UDP_XSUM)) == 0) { + m0->m_pkthdr.csum_data = + l2fhdr->l2_fhdr_tcp_udp_xsum; + m0->m_pkthdr.csum_flags |= (CSUM_DATA_VALID + | CSUM_PSEUDO_HDR); } - } + } + } - - /* - * If we received a packet with a vlan tag, - * attach that information to the packet. - */ - if (status & L2_FHDR_STATUS_L2_VLAN_TAG) { - DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): VLAN tag = 0x%04X\n", - __FUNCTION__, l2fhdr->l2_fhdr_vlan_tag); + /* + * If we received a packet with a vlan tag, + * attach that information to the packet. + */ + if (status & L2_FHDR_STATUS_L2_VLAN_TAG) { #if __FreeBSD_version < 700000 - VLAN_INPUT_TAG(ifp, m, l2fhdr->l2_fhdr_vlan_tag, continue); + VLAN_INPUT_TAG(ifp, m0, l2fhdr->l2_fhdr_vlan_tag, continue); #else - m->m_pkthdr.ether_vtag = l2fhdr->l2_fhdr_vlan_tag; - m->m_flags |= M_VLANTAG; -#endif - } + m0->m_pkthdr.ether_vtag = l2fhdr->l2_fhdr_vlan_tag; + m0->m_flags |= M_VLANTAG; +#endif + } - /* Pass the mbuf off to the upper layers. */ - ifp->if_ipackets++; + /* Pass the mbuf off to the upper layers. */ + ifp->if_ipackets++; bce_rx_int_next_rx: - sw_prod = NEXT_RX_BD(sw_prod); - } + sw_rx_cons = NEXT_RX_BD(sw_rx_cons); - sw_cons = NEXT_RX_BD(sw_cons); - /* If we have a packet, pass it up the stack */ - if (m) { + if (m0) { /* Make sure we don't lose our place when we release the lock. */ - sc->rx_cons = sw_cons; + sc->rx_cons = sw_rx_cons; +#ifdef BCE_USE_SPLIT_HEADER + sc->pg_cons = sw_pg_cons; +#endif - DBPRINT(sc, BCE_VERBOSE_RECV, "%s(): Passing received frame up.\n", - __FUNCTION__); BCE_UNLOCK(sc); - (*ifp->if_input)(ifp, m); - DBRUNIF(1, sc->rx_mbuf_alloc--); + (*ifp->if_input)(ifp, m0); BCE_LOCK(sc); - + /* Recover our place. */ - sw_cons = sc->rx_cons; + sw_rx_cons = sc->rx_cons; +#ifdef BCE_USE_SPLIT_HEADER + sw_pg_cons = sc->pg_cons; +#endif } /* Refresh hw_cons to see if there's new work */ - if (sw_cons == hw_cons) { - hw_cons = sc->hw_rx_cons = sblk->status_rx_quick_consumer_index0; - if ((hw_cons & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE) - hw_cons++; - } - - /* Prevent speculative reads from getting ahead of the status block. */ - bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, - BUS_SPACE_BARRIER_READ); + if (sw_rx_cons == hw_rx_cons) + hw_rx_cons = sc->hw_rx_cons = bce_get_hw_rx_cons(sc); } - /* No new packets to process. Refill the RX chain and exit. */ - sc->rx_cons = sw_cons; + /* No new packets to process. Refill the RX and page chains and exit. */ +#ifdef BCE_USE_SPLIT_HEADER + sc->pg_cons = sw_pg_cons; + bce_fill_pg_chain(sc); +#endif + + sc->rx_cons = sw_rx_cons; bce_fill_rx_chain(sc); for (int i = 0; i < RX_PAGES; i++) bus_dmamap_sync(sc->rx_bd_chain_tag, sc->rx_bd_chain_map[i], BUS_DMASYNC_PREWRITE); - DBPRINT(sc, BCE_INFO_RECV, "%s(exit): rx_prod = 0x%04X, " +#ifdef BCE_USE_SPLIT_HEADER + for (int i = 0; i < PG_PAGES; i++) + bus_dmamap_sync(sc->pg_bd_chain_tag, + sc->pg_bd_chain_map[i], BUS_DMASYNC_PREWRITE); +#endif + + DBPRINT(sc, BCE_EXTREME_RECV, "%s(exit): rx_prod = 0x%04X, " "rx_cons = 0x%04X, rx_prod_bseq = 0x%08X\n", __FUNCTION__, sc->rx_prod, sc->rx_cons, sc->rx_prod_bseq); + DBEXIT(BCE_VERBOSE_RECV | BCE_VERBOSE_INTR); } /****************************************************************************/ +/* Reads the transmit consumer value from the status block (skipping over */ +/* chain page pointer if necessary). */ +/* */ +/* Returns: */ +/* hw_cons */ +/****************************************************************************/ +static inline u16 +bce_get_hw_tx_cons(struct bce_softc *sc) +{ + u16 hw_cons; + + mb(); + hw_cons = sc->status_block->status_tx_quick_consumer_index0; + if ((hw_cons & USABLE_TX_BD_PER_PAGE) == USABLE_TX_BD_PER_PAGE) + hw_cons++; + + return hw_cons; +} + + +/****************************************************************************/ /* Handles transmit completion interrupt events. */ /* */ /* Returns: */ @@ -4358,25 +6029,23 @@ static void bce_tx_intr(struct bce_softc *sc) { - struct status_block *sblk = sc->status_block; struct ifnet *ifp = sc->bce_ifp; u16 hw_tx_cons, sw_tx_cons, sw_tx_chain_cons; + DBENTER(BCE_VERBOSE_SEND | BCE_VERBOSE_INTR); + DBRUN(sc->tx_interrupts++); + DBPRINT(sc, BCE_EXTREME_SEND, "%s(enter): tx_prod = 0x%04X, " + "tx_cons = 0x%04X, tx_prod_bseq = 0x%08X\n", + __FUNCTION__, sc->tx_prod, sc->tx_cons, sc->tx_prod_bseq); + BCE_LOCK_ASSERT(sc); - DBRUNIF(1, sc->tx_interrupts++); - /* Get the hardware's view of the TX consumer index. */ - hw_tx_cons = sc->hw_tx_cons = sblk->status_tx_quick_consumer_index0; - - /* Skip to the next entry if this is a chain page pointer. */ - if ((hw_tx_cons & USABLE_TX_BD_PER_PAGE) == USABLE_TX_BD_PER_PAGE) - hw_tx_cons++; - + hw_tx_cons = sc->hw_tx_cons = bce_get_hw_tx_cons(sc); sw_tx_cons = sc->tx_cons; /* Prevent speculative reads from getting ahead of the status block. */ - bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, + bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, BUS_SPACE_BARRIER_READ); /* Cycle through any completed TX chain page entries. */ @@ -4393,19 +6062,19 @@ DBRUNIF((sw_tx_chain_cons > MAX_TX_BD), BCE_PRINTF("%s(%d): TX chain consumer out of range! " - " 0x%04X > 0x%04X\n", __FILE__, __LINE__, sw_tx_chain_cons, + " 0x%04X > 0x%04X\n", __FILE__, __LINE__, sw_tx_chain_cons, (int) MAX_TX_BD); bce_breakpoint(sc)); - DBRUNIF(1, txbd = &sc->tx_bd_chain[TX_PAGE(sw_tx_chain_cons)] + DBRUN(txbd = &sc->tx_bd_chain[TX_PAGE(sw_tx_chain_cons)] [TX_IDX(sw_tx_chain_cons)]); - + DBRUNIF((txbd == NULL), - BCE_PRINTF("%s(%d): Unexpected NULL tx_bd[0x%04X]!\n", + BCE_PRINTF("%s(%d): Unexpected NULL tx_bd[0x%04X]!\n", __FILE__, __LINE__, sw_tx_chain_cons); bce_breakpoint(sc)); - DBRUN(BCE_INFO_SEND, BCE_PRINTF("%s(): ", __FUNCTION__); + DBRUNMSG(BCE_INFO_SEND, BCE_PRINTF("%s(): ", __FUNCTION__); bce_dump_txbd(sc, sw_tx_chain_cons, txbd)); /* @@ -4421,18 +6090,18 @@ "txmbuf == NULL!\n", __FILE__, __LINE__); bce_breakpoint(sc)); - DBRUN(BCE_INFO_SEND, + DBRUNMSG(BCE_INFO_SEND, BCE_PRINTF("%s(): Unloading map/freeing mbuf " "from tx_bd[0x%04X]\n", __FUNCTION__, sw_tx_chain_cons)); /* Unmap the mbuf. */ bus_dmamap_unload(sc->tx_mbuf_tag, sc->tx_mbuf_map[sw_tx_chain_cons]); - + /* Free the mbuf. */ m_freem(sc->tx_mbuf_ptr[sw_tx_chain_cons]); sc->tx_mbuf_ptr[sw_tx_chain_cons] = NULL; - DBRUNIF(1, sc->tx_mbuf_alloc--); + DBRUN(sc->debug_tx_mbuf_alloc--); ifp->if_opackets++; } @@ -4441,12 +6110,10 @@ sw_tx_cons = NEXT_TX_BD(sw_tx_cons); /* Refresh hw_cons to see if there's new work. */ - hw_tx_cons = sc->hw_tx_cons = sblk->status_tx_quick_consumer_index0; - if ((hw_tx_cons & USABLE_TX_BD_PER_PAGE) == USABLE_TX_BD_PER_PAGE) - hw_tx_cons++; + hw_tx_cons = sc->hw_tx_cons = bce_get_hw_tx_cons(sc); /* Prevent speculative reads from getting ahead of the status block. */ - bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, + bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, BUS_SPACE_BARRIER_READ); } @@ -4456,13 +6123,18 @@ /* Clear the tx hardware queue full flag. */ if (sc->used_tx_bd < sc->max_tx_bd) { DBRUNIF((ifp->if_drv_flags & IFF_DRV_OACTIVE), - DBPRINT(sc, BCE_INFO_SEND, - "%s(): Open TX chain! %d/%d (used/total)\n", + DBPRINT(sc, BCE_INFO_SEND, + "%s(): Open TX chain! %d/%d (used/total)\n", __FUNCTION__, sc->used_tx_bd, sc->max_tx_bd)); ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; } sc->tx_cons = sw_tx_cons; + + DBPRINT(sc, BCE_EXTREME_SEND, "%s(exit): tx_prod = 0x%04X, " + "tx_cons = 0x%04X, tx_prod_bseq = 0x%08X\n", + __FUNCTION__, sc->tx_prod, sc->tx_cons, sc->tx_prod_bseq); + DBEXIT(BCE_VERBOSE_SEND | BCE_VERBOSE_INTR); } @@ -4475,9 +6147,12 @@ static void bce_disable_intr(struct bce_softc *sc) { - REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, - BCE_PCICFG_INT_ACK_CMD_MASK_INT); + DBENTER(BCE_VERBOSE_INTR); + + REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, BCE_PCICFG_INT_ACK_CMD_MASK_INT); REG_RD(sc, BCE_PCICFG_INT_ACK_CMD); + + DBEXIT(BCE_VERBOSE_INTR); } @@ -4488,9 +6163,9 @@ /* Nothing. */ /****************************************************************************/ static void -bce_enable_intr(struct bce_softc *sc) +bce_enable_intr(struct bce_softc *sc, int coal_now) { - u32 val; + DBENTER(BCE_VERBOSE_INTR); REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, BCE_PCICFG_INT_ACK_CMD_INDEX_VALID | @@ -4499,8 +6174,11 @@ REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, BCE_PCICFG_INT_ACK_CMD_INDEX_VALID | sc->last_status_idx); - val = REG_RD(sc, BCE_HC_COMMAND); - REG_WR(sc, BCE_HC_COMMAND, val | BCE_HC_COMMAND_COAL_NOW); + /* Force an immediate interrupt (whether there is new data or not). */ + if (coal_now) + REG_WR(sc, BCE_HC_COMMAND, sc->hc_command | BCE_HC_COMMAND_COAL_NOW); + + DBEXIT(BCE_VERBOSE_INTR); } @@ -4514,9 +6192,9 @@ bce_init_locked(struct bce_softc *sc) { struct ifnet *ifp; - u32 ether_mtu; + u32 ether_mtu = 0; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); BCE_LOCK_ASSERT(sc); @@ -4529,19 +6207,19 @@ bce_stop(sc); if (bce_reset(sc, BCE_DRV_MSG_CODE_RESET)) { - BCE_PRINTF("%s(%d): Controller reset failed!\n", + BCE_PRINTF("%s(%d): Controller reset failed!\n", __FILE__, __LINE__); goto bce_init_locked_exit; } if (bce_chipinit(sc)) { - BCE_PRINTF("%s(%d): Controller initialization failed!\n", + BCE_PRINTF("%s(%d): Controller initialization failed!\n", __FILE__, __LINE__); goto bce_init_locked_exit; } if (bce_blockinit(sc)) { - BCE_PRINTF("%s(%d): Block initialization failed!\n", + BCE_PRINTF("%s(%d): Block initialization failed!\n", __FILE__, __LINE__); goto bce_init_locked_exit; } @@ -4550,56 +6228,55 @@ bcopy(IF_LLADDR(sc->bce_ifp), sc->eaddr, ETHER_ADDR_LEN); bce_set_mac_addr(sc); - /* Calculate and program the Ethernet MTU size. */ - ether_mtu = ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN + ifp->if_mtu + - ETHER_CRC_LEN; + /* + * Calculate and program the hardware Ethernet MTU + * size. Be generous on the receive if we have room. + */ +#ifdef BCE_USE_SPLIT_HEADER + if (ifp->if_mtu <= (sc->rx_bd_mbuf_data_len + sc->pg_bd_mbuf_alloc_size)) + ether_mtu = sc->rx_bd_mbuf_data_len + sc->pg_bd_mbuf_alloc_size; +#else + if (ifp->if_mtu <= sc->rx_bd_mbuf_data_len) + ether_mtu = sc->rx_bd_mbuf_data_len; +#endif + else + ether_mtu = ifp->if_mtu; - DBPRINT(sc, BCE_INFO_MISC, "%s(): setting mtu = %d\n",__FUNCTION__, ether_mtu); + ether_mtu += ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN + ETHER_CRC_LEN; - /* - * Program the mtu, enabling jumbo frame - * support if necessary. Also set the mbuf - * allocation count for RX frames. - */ - if (ether_mtu > ETHER_MAX_LEN + ETHER_VLAN_ENCAP_LEN) { - REG_WR(sc, BCE_EMAC_RX_MTU_SIZE, min(ether_mtu, BCE_MAX_JUMBO_ETHER_MTU) | + DBPRINT(sc, BCE_INFO_MISC, "%s(): setting h/w mtu = %d\n", __FUNCTION__, + ether_mtu); + + /* Program the mtu, enabling jumbo frame support if necessary. */ + if (ether_mtu > (ETHER_MAX_LEN + ETHER_VLAN_ENCAP_LEN)) + REG_WR(sc, BCE_EMAC_RX_MTU_SIZE, + min(ether_mtu, BCE_MAX_JUMBO_ETHER_MTU) | BCE_EMAC_RX_MTU_SIZE_JUMBO_ENA); - sc->mbuf_alloc_size = MJUM9BYTES; - } else { + else REG_WR(sc, BCE_EMAC_RX_MTU_SIZE, ether_mtu); - sc->mbuf_alloc_size = MCLBYTES; - } - /* Calculate the RX Ethernet frame size for rx_bd's. */ - sc->max_frame_size = sizeof(struct l2_fhdr) + 2 + ether_mtu + 8; + DBPRINT(sc, BCE_INFO_LOAD, + "%s(): rx_bd_mbuf_alloc_size = %d, rx_bce_mbuf_data_len = %d, " + "rx_bd_mbuf_align_pad = %d, pg_bd_mbuf_alloc_size = %d\n", + __FUNCTION__, sc->rx_bd_mbuf_alloc_size, sc->rx_bd_mbuf_data_len, + sc->rx_bd_mbuf_align_pad, sc->pg_bd_mbuf_alloc_size); - DBPRINT(sc, BCE_INFO_RECV, - "%s(): mclbytes = %d, mbuf_alloc_size = %d, " - "max_frame_size = %d\n", - __FUNCTION__, (int) MCLBYTES, sc->mbuf_alloc_size, sc->max_frame_size); - /* Program appropriate promiscuous/multicast filtering. */ bce_set_rx_mode(sc); +#ifdef BCE_USE_SPLIT_HEADER + /* Init page buffer descriptor chain. */ + bce_init_pg_chain(sc); +#endif + /* Init RX buffer descriptor chain. */ bce_init_rx_chain(sc); /* Init TX buffer descriptor chain. */ bce_init_tx_chain(sc); -#ifdef DEVICE_POLLING - /* Disable interrupts if we are polling. */ - if (ifp->if_capenable & IFCAP_POLLING) { - bce_disable_intr(sc); - - REG_WR(sc, BCE_HC_RX_QUICK_CONS_TRIP, - (1 << 16) | sc->bce_rx_quick_cons_trip); - REG_WR(sc, BCE_HC_TX_QUICK_CONS_TRIP, - (1 << 16) | sc->bce_tx_quick_cons_trip); - } else -#endif /* Enable host interrupts. */ - bce_enable_intr(sc); + bce_enable_intr(sc, 1); bce_ifmedia_upd_locked(ifp); @@ -4609,9 +6286,7 @@ callout_reset(&sc->bce_tick_callout, hz, bce_tick, sc); bce_init_locked_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - - return; + DBEXIT(BCE_VERBOSE_RESET); } @@ -4627,13 +6302,13 @@ { struct ifnet *ifp; - DBPRINT(sc, BCE_VERBOSE_RESET, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_RESET); BCE_LOCK_ASSERT(sc); /* Bail out if management firmware is not running. */ if (!(sc->bce_flags & BCE_MFW_ENABLE_FLAG)) { - DBPRINT(sc, BCE_VERBOSE_SPECIAL, + DBPRINT(sc, BCE_VERBOSE_SPECIAL, "No management firmware running...\n"); goto bce_mgmt_init_locked_exit; } @@ -4641,15 +6316,14 @@ ifp = sc->bce_ifp; /* Enable all critical blocks in the MAC. */ - REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, 0x5ffffff); + REG_WR(sc, BCE_MISC_ENABLE_SET_BITS, BCE_MISC_ENABLE_DEFAULT); REG_RD(sc, BCE_MISC_ENABLE_SET_BITS); DELAY(20); bce_ifmedia_upd_locked(ifp); + bce_mgmt_init_locked_exit: - DBPRINT(sc, BCE_VERBOSE_RESET, "Exiting %s()\n", __FUNCTION__); - - return; + DBEXIT(BCE_VERBOSE_RESET); } @@ -4664,9 +6338,13 @@ { struct bce_softc *sc = xsc; + DBENTER(BCE_VERBOSE_RESET); + BCE_LOCK(sc); bce_init_locked(sc); BCE_UNLOCK(sc); + + DBEXIT(BCE_VERBOSE_RESET); } @@ -4693,12 +6371,18 @@ u32 prod_bseq; int hdr_len = 0, e_hlen = 0, ip_hlen = 0, tcp_hlen = 0, ip_len = 0; - #ifdef BCE_DEBUG u16 debug_prod; #endif int i, error, nsegs, rc = 0; + DBENTER(BCE_VERBOSE_SEND); + DBPRINT(sc, BCE_INFO_SEND, + "%s(enter): tx_prod = 0x%04X, tx_chain_prod = %04X, " + "tx_prod_bseq = 0x%08X\n", + __FUNCTION__, sc->tx_prod, (u16) TX_CHAIN_IDX(sc->tx_prod), + sc->tx_prod_bseq); + /* Transfer any checksum offload flags to the bd. */ m0 = *m_head; if (m0->m_pkthdr.csum_flags) { @@ -4732,7 +6416,7 @@ __FILE__, __LINE__); goto bce_tx_encap_skip_tso; } - + /* Get IP header length in bytes (min 20) */ ip_hlen = ip->ip_hl << 2; @@ -4757,7 +6441,7 @@ hdr_len = e_hlen + ip_hlen + tcp_hlen; - DBPRINT(sc, BCE_EXCESSIVE_SEND, + DBPRINT(sc, BCE_EXTREME_SEND, "%s(): hdr_len = %d, e_hlen = %d, ip_hlen = %d, tcp_hlen = %d, ip_len = %d\n", __FUNCTION__, hdr_len, e_hlen, ip_hlen, tcp_hlen, ip_len); @@ -4767,7 +6451,7 @@ flags |= (((ip_hlen + tcp_hlen - 40) >> 2) << 8); bce_tx_encap_skip_tso: - DBRUNIF(1, sc->requested_tso_frames++); + DBRUN(sc->requested_tso_frames++); } } @@ -4788,11 +6472,11 @@ /* Check if the DMA mapping was successful */ if (error == EFBIG) { - + /* The mbuf is too fragmented for our DMA mapping. */ DBPRINT(sc, BCE_WARN, "%s(): fragmented mbuf (%d pieces)\n", __FUNCTION__, nsegs); - DBRUNIF(1, bce_dump_mbuf(sc, m0);); + DBRUN(bce_dump_mbuf(sc, m0);); /* Try to defrag the mbuf. */ m0 = m_defrag(*m_head, M_DONTWAIT); @@ -4801,7 +6485,8 @@ m_freem(*m_head); *m_head = NULL; sc->mbuf_alloc_failed++; - return (ENOBUFS); + rc = ENOBUFS; + goto bce_tx_encap_exit; } /* Defrag was successful, try mapping again */ @@ -4813,7 +6498,8 @@ if (error == ENOMEM) { /* Insufficient DMA buffers available. */ sc->tx_dma_map_failures++; - return (error); + rc = error; + goto bce_tx_encap_exit; } else if (error != 0) { /* Still can't map the mbuf, release it and return an error. */ BCE_PRINTF( @@ -4822,23 +6508,27 @@ m_freem(m0); *m_head = NULL; sc->tx_dma_map_failures++; - return (ENOBUFS); + rc = ENOBUFS; + goto bce_tx_encap_exit; } } else if (error == ENOMEM) { /* Insufficient DMA buffers available. */ sc->tx_dma_map_failures++; - return (error); + rc = error; + goto bce_tx_encap_exit; } else if (error != 0) { m_freem(m0); *m_head = NULL; sc->tx_dma_map_failures++; - return (error); + rc = error; + goto bce_tx_encap_exit; } /* Make sure there's room in the chain */ if (nsegs > (sc->max_tx_bd - sc->used_tx_bd)) { bus_dmamap_unload(sc->tx_mbuf_tag, map); - return (ENOBUFS); + rc = ENOBUFS; + goto bce_tx_encap_exit; } /* prod points to an empty tx_bd at this point. */ @@ -4849,14 +6539,14 @@ #endif DBPRINT(sc, BCE_INFO_SEND, - "%s(): Start: prod = 0x%04X, chain_prod = %04X, " + "%s(start): prod = 0x%04X, chain_prod = 0x%04X, " "prod_bseq = 0x%08X\n", __FUNCTION__, prod, chain_prod, prod_bseq); /* * Cycle through each mbuf segment that makes up * the outgoing frame, gathering the mapping info - * for that segment and creating a tx_bd to for + * for that segment and creating a tx_bd for * the mbuf. */ for (i = 0; i < nsegs ; i++) { @@ -4878,10 +6568,10 @@ /* Set the END flag on the last TX buffer descriptor. */ txbd->tx_bd_flags |= htole16(TX_BD_FLAGS_END); - DBRUN(BCE_EXCESSIVE_SEND, bce_dump_tx_chain(sc, debug_prod, nsegs)); + DBRUNMSG(BCE_EXTREME_SEND, bce_dump_tx_chain(sc, debug_prod, nsegs)); DBPRINT(sc, BCE_INFO_SEND, - "%s(): End: prod = 0x%04X, chain_prod = %04X, " + "%s( end ): prod = 0x%04X, chain_prod = 0x%04X, " "prod_bseq = 0x%08X\n", __FUNCTION__, prod, chain_prod, prod_bseq); @@ -4889,7 +6579,7 @@ * Ensure that the mbuf pointer for this transmission * is placed at the array index of the last * descriptor in this chain. This is done - * because a single map is used for all + * because a single map is used for all * segments of the mbuf and we don't want to * unload the map before all of the segments * have been freed. @@ -4898,17 +6588,25 @@ sc->used_tx_bd += nsegs; /* Update some debug statistic counters */ - DBRUNIF((sc->used_tx_bd > sc->tx_hi_watermark), + DBRUNIF((sc->used_tx_bd > sc->tx_hi_watermark), sc->tx_hi_watermark = sc->used_tx_bd); DBRUNIF((sc->used_tx_bd == sc->max_tx_bd), sc->tx_full_count++); - DBRUNIF(1, sc->tx_mbuf_alloc++); + DBRUNIF(sc->debug_tx_mbuf_alloc++); - DBRUN(BCE_VERBOSE_SEND, bce_dump_tx_mbuf_chain(sc, chain_prod, nsegs)); + DBRUNMSG(BCE_EXTREME_SEND, bce_dump_tx_mbuf_chain(sc, chain_prod, 1)); /* prod points to the next free tx_bd at this point. */ sc->tx_prod = prod; sc->tx_prod_bseq = prod_bseq; + DBPRINT(sc, BCE_INFO_SEND, + "%s(exit): prod = 0x%04X, chain_prod = %04X, " + "prod_bseq = 0x%08X\n", + __FUNCTION__, sc->tx_prod, (u16) TX_CHAIN_IDX(sc->tx_prod), + sc->tx_prod_bseq); + +bce_tx_encap_exit: + DBEXIT(BCE_VERBOSE_SEND); return(rc); } @@ -4927,22 +6625,32 @@ int count = 0; u16 tx_prod, tx_chain_prod; - /* If there's no link or the transmit queue is empty then just exit. */ - if (!sc->bce_link || IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { - DBPRINT(sc, BCE_INFO_SEND, "%s(): No link or transmit queue empty.\n", - __FUNCTION__); - goto bce_start_locked_exit; - } + DBENTER(BCE_VERBOSE_SEND | BCE_VERBOSE_CTX); + BCE_LOCK_ASSERT(sc); + /* prod points to the next free tx_bd. */ tx_prod = sc->tx_prod; tx_chain_prod = TX_CHAIN_IDX(tx_prod); DBPRINT(sc, BCE_INFO_SEND, - "%s(): Start: tx_prod = 0x%04X, tx_chain_prod = %04X, " + "%s(enter): tx_prod = 0x%04X, tx_chain_prod = 0x%04X, " "tx_prod_bseq = 0x%08X\n", __FUNCTION__, tx_prod, tx_chain_prod, sc->tx_prod_bseq); + /* If there's no link or the transmit queue is empty then just exit. */ + if (!sc->bce_link) { + DBPRINT(sc, BCE_INFO_SEND, "%s(): No link.\n", + __FUNCTION__); + goto bce_start_locked_exit; + } + + if (IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + DBPRINT(sc, BCE_INFO_SEND, "%s(): Transmit queue empty.\n", + __FUNCTION__); + goto bce_start_locked_exit; + } + /* * Keep adding entries while there is space in the ring. */ @@ -4950,6 +6658,8 @@ /* Check for any frames to send. */ IFQ_DRV_DEQUEUE(&ifp->if_snd, m_head); + + /* Stop when the transmit queue is empty. */ if (m_head == NULL) break; @@ -4960,11 +6670,12 @@ * to wait for the NIC to drain the chain. */ if (bce_tx_encap(sc, &m_head)) { + /* No room, put the frame back on the transmit queue. */ if (m_head != NULL) IFQ_DRV_PREPEND(&ifp->if_snd, m_head); ifp->if_drv_flags |= IFF_DRV_OACTIVE; DBPRINT(sc, BCE_INFO_SEND, - "TX chain is closed for business! Total tx_bd used = %d\n", + "TX chain is closed for business! Total tx_bd used = %d\n", sc->used_tx_bd); break; } @@ -4975,29 +6686,38 @@ ETHER_BPF_MTAP(ifp, m_head); } + /* Exit if no packets were dequeued. */ if (count == 0) { - /* no packets were dequeued */ - DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): No packets were dequeued\n", + DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): No packets were dequeued\n", __FUNCTION__); goto bce_start_locked_exit; } - /* Update the driver's counters. */ - tx_chain_prod = TX_CHAIN_IDX(sc->tx_prod); + DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): Inserted %d frames into send queue.\n", + __FUNCTION__, count); - DBPRINT(sc, BCE_INFO_SEND, - "%s(): End: tx_prod = 0x%04X, tx_chain_prod = 0x%04X, " - "tx_prod_bseq = 0x%08X\n", - __FUNCTION__, tx_prod, tx_chain_prod, sc->tx_prod_bseq); + REG_WR(sc, BCE_MQ_COMMAND, REG_RD(sc, BCE_MQ_COMMAND) | BCE_MQ_COMMAND_NO_MAP_ERROR); - /* Start the transmit. */ - REG_WR16(sc, MB_TX_CID_ADDR + BCE_L2CTX_TX_HOST_BIDX, sc->tx_prod); - REG_WR(sc, MB_TX_CID_ADDR + BCE_L2CTX_TX_HOST_BSEQ, sc->tx_prod_bseq); + /* Write the mailbox and tell the chip about the waiting tx_bd's. */ + DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): MB_GET_CID_ADDR(TX_CID) = 0x%08X; " + "BCE_L2MQ_TX_HOST_BIDX = 0x%08X, sc->tx_prod = 0x%04X\n", + __FUNCTION__, + MB_GET_CID_ADDR(TX_CID), BCE_L2MQ_TX_HOST_BIDX, sc->tx_prod); + REG_WR16(sc, MB_GET_CID_ADDR(TX_CID) + BCE_L2MQ_TX_HOST_BIDX, sc->tx_prod); + DBPRINT(sc, BCE_VERBOSE_SEND, "%s(): MB_GET_CID_ADDR(TX_CID) = 0x%08X; " + "BCE_L2MQ_TX_HOST_BSEQ = 0x%08X, sc->tx_prod_bseq = 0x%04X\n", + __FUNCTION__, + MB_GET_CID_ADDR(TX_CID), BCE_L2MQ_TX_HOST_BSEQ, sc->tx_prod_bseq); + REG_WR(sc, MB_GET_CID_ADDR(TX_CID) + BCE_L2MQ_TX_HOST_BSEQ, sc->tx_prod_bseq); /* Set the tx timeout. */ sc->watchdog_timer = BCE_TX_TIMEOUT; + DBRUNMSG(BCE_VERBOSE_SEND, bce_dump_ctx(sc, TX_CID)); + DBRUNMSG(BCE_VERBOSE_SEND, bce_dump_mq_regs(sc)); + bce_start_locked_exit: + DBEXIT(BCE_VERBOSE_SEND | BCE_VERBOSE_CTX); return; } @@ -5013,9 +6733,13 @@ { struct bce_softc *sc = ifp->if_softc; + DBENTER(BCE_VERBOSE_SEND); + BCE_LOCK(sc); bce_start_locked(ifp); BCE_UNLOCK(sc); + + DBEXIT(BCE_VERBOSE_SEND); } @@ -5033,24 +6757,43 @@ struct mii_data *mii; int mask, error = 0; + DBENTER(BCE_VERBOSE_MISC); + switch(command) { /* Set the interface MTU. */ case SIOCSIFMTU: /* Check that the MTU setting is supported. */ - if ((ifr->ifr_mtu < BCE_MIN_MTU) || + if ((ifr->ifr_mtu < BCE_MIN_MTU) || (ifr->ifr_mtu > BCE_MAX_JUMBO_MTU)) { error = EINVAL; break; } DBPRINT(sc, BCE_INFO_MISC, - "SIOCSIFMTU: Changing MTU from %d to %d\n", + "SIOCSIFMTU: Changing MTU from %d to %d\n", (int) ifp->if_mtu, (int) ifr->ifr_mtu); BCE_LOCK(sc); ifp->if_mtu = ifr->ifr_mtu; ifp->if_drv_flags &= ~IFF_DRV_RUNNING; +#ifdef BCE_USE_SPLIT_HEADER + /* No buffer allocation size changes are necessary. */ +#else + /* Recalculate our buffer allocation sizes. */ + if ((ifp->if_mtu + ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN + ETHER_CRC_LEN) > MCLBYTES) { + sc->rx_bd_mbuf_alloc_size = MJUM9BYTES; + sc->rx_bd_mbuf_align_pad = roundup2(MJUM9BYTES, 16) - MJUM9BYTES; + sc->rx_bd_mbuf_data_len = sc->rx_bd_mbuf_alloc_size - + sc->rx_bd_mbuf_align_pad; + } else { + sc->rx_bd_mbuf_alloc_size = MCLBYTES; + sc->rx_bd_mbuf_align_pad = roundup2(MCLBYTES, 16) - MCLBYTES; + sc->rx_bd_mbuf_data_len = sc->rx_bd_mbuf_alloc_size - + sc->rx_bd_mbuf_align_pad; + } +#endif + bce_init_locked(sc); BCE_UNLOCK(sc); break; @@ -5118,51 +6861,7 @@ mask = ifr->ifr_reqcap ^ ifp->if_capenable; DBPRINT(sc, BCE_INFO_MISC, "Received SIOCSIFCAP = 0x%08X\n", (u32) mask); -#ifdef DEVICE_POLLING - if (mask & IFCAP_POLLING) { - if (ifr->ifr_reqcap & IFCAP_POLLING) { - - /* Setup the poll routine to call. */ - error = ether_poll_register(bce_poll, ifp); - if (error) { - BCE_PRINTF("%s(%d): Error registering poll function!\n", - __FILE__, __LINE__); - goto bce_ioctl_exit; - } - - /* Clear the interrupt. */ - BCE_LOCK(sc); - bce_disable_intr(sc); - - REG_WR(sc, BCE_HC_RX_QUICK_CONS_TRIP, - (1 << 16) | sc->bce_rx_quick_cons_trip); - REG_WR(sc, BCE_HC_TX_QUICK_CONS_TRIP, - (1 << 16) | sc->bce_tx_quick_cons_trip); - - ifp->if_capenable |= IFCAP_POLLING; - BCE_UNLOCK(sc); - } else { - /* Clear the poll routine. */ - error = ether_poll_deregister(ifp); - - /* Enable interrupt even in error case */ - BCE_LOCK(sc); - bce_enable_intr(sc); - - REG_WR(sc, BCE_HC_TX_QUICK_CONS_TRIP, - (sc->bce_tx_quick_cons_trip_int << 16) | - sc->bce_tx_quick_cons_trip); - REG_WR(sc, BCE_HC_RX_QUICK_CONS_TRIP, - (sc->bce_rx_quick_cons_trip_int << 16) | - sc->bce_rx_quick_cons_trip); - - ifp->if_capenable &= ~IFCAP_POLLING; - BCE_UNLOCK(sc); - } - } -#endif /*DEVICE_POLLING */ - - /* Toggle the TX checksum capabilites enable flag. */ + /* Toggle the TX checksum capabilites enable flag. */ if (mask & IFCAP_TXCSUM) { ifp->if_capenable ^= IFCAP_TXCSUM; if (IFCAP_TXCSUM & ifp->if_capenable) @@ -5213,9 +6912,7 @@ break; } -#ifdef DEVICE_POLLING -bce_ioctl_exit: -#endif + DBEXIT(BCE_VERBOSE_MISC); return(error); } @@ -5229,98 +6926,45 @@ static void bce_watchdog(struct bce_softc *sc) { + DBENTER(BCE_EXTREME_SEND); BCE_LOCK_ASSERT(sc); + /* If the watchdog timer hasn't expired then just exit. */ if (sc->watchdog_timer == 0 || --sc->watchdog_timer) - return; + goto bce_watchdog_exit; - /* - * If we are in this routine because of pause frames, then - * don't reset the hardware. - */ - if (REG_RD(sc, BCE_EMAC_TX_STATUS) & BCE_EMAC_TX_STATUS_XOFFED) - return; + /* If pause frames are active then don't reset the hardware. */ + /* ToDo: Should we reset the timer here? */ + if (REG_RD(sc, BCE_EMAC_TX_STATUS) & BCE_EMAC_TX_STATUS_XOFFED) + goto bce_watchdog_exit; - BCE_PRINTF("%s(%d): Watchdog timeout occurred, resetting!\n", + BCE_PRINTF("%s(%d): Watchdog timeout occurred, resetting!\n", __FILE__, __LINE__); - DBRUN(BCE_VERBOSE_SEND, + DBRUNMSG(BCE_INFO, bce_dump_driver_state(sc); - bce_dump_status_block(sc)); + bce_dump_status_block(sc); + bce_dump_stats_block(sc); + bce_dump_ftqs(sc); + bce_dump_txp_state(sc, 0); + bce_dump_rxp_state(sc, 0); + bce_dump_tpat_state(sc, 0); + bce_dump_cp_state(sc, 0); + bce_dump_com_state(sc, 0)); - /* DBRUN(BCE_FATAL, bce_breakpoint(sc)); */ + DBRUN(bce_breakpoint(sc)); sc->bce_ifp->if_drv_flags &= ~IFF_DRV_RUNNING; bce_init_locked(sc); sc->bce_ifp->if_oerrors++; +bce_watchdog_exit: + DBEXIT(BCE_EXTREME_SEND); } -#ifdef DEVICE_POLLING -static void -bce_poll_locked(struct ifnet *ifp, enum poll_cmd cmd, int count) -{ - struct bce_softc *sc = ifp->if_softc; - - BCE_LOCK_ASSERT(sc); - - sc->bce_rxcycles = count; - - bus_dmamap_sync(sc->status_tag, sc->status_map, - BUS_DMASYNC_POSTWRITE); - - /* Check for any completed RX frames. */ - if (sc->status_block->status_rx_quick_consumer_index0 != - sc->hw_rx_cons) - bce_rx_intr(sc); - - /* Check for any completed TX frames. */ - if (sc->status_block->status_tx_quick_consumer_index0 != - sc->hw_tx_cons) - bce_tx_intr(sc); - - /* Check for new frames to transmit. */ - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) - bce_start_locked(ifp); - -} - - -static void -bce_poll(struct ifnet *ifp, enum poll_cmd cmd, int count) -{ - struct bce_softc *sc = ifp->if_softc; - - BCE_LOCK(sc); - if (ifp->if_drv_flags & IFF_DRV_RUNNING) - bce_poll_locked(ifp, cmd, count); - BCE_UNLOCK(sc); -} -#endif /* DEVICE_POLLING */ - - -#if 0 -static inline int -bce_has_work(struct bce_softc *sc) -{ - struct status_block *stat = sc->status_block; - - if ((stat->status_rx_quick_consumer_index0 != sc->hw_rx_cons) || - (stat->status_tx_quick_consumer_index0 != sc->hw_tx_cons)) - return 1; - - if (((stat->status_attn_bits & STATUS_ATTN_BITS_LINK_STATE) != 0) != - bp->link_up) - return 1; - - return 0; -} -#endif - - /* * Interrupt handler. */ @@ -5338,22 +6982,18 @@ struct bce_softc *sc; struct ifnet *ifp; u32 status_attn_bits; + u16 hw_rx_cons, hw_tx_cons; sc = xsc; ifp = sc->bce_ifp; - DBPRINT(sc, BCE_EXCESSIVE, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_VERBOSE_SEND | BCE_VERBOSE_RECV | BCE_VERBOSE_INTR); + DBRUNMSG(BCE_VERBOSE_INTR, bce_dump_status_block(sc)); + BCE_LOCK(sc); - DBRUNIF(1, sc->interrupts_generated++); + DBRUN(sc->interrupts_generated++); -#ifdef DEVICE_POLLING - if (ifp->if_capenable & IFCAP_POLLING) { - DBPRINT(sc, BCE_INFO_MISC, "Polling enabled!\n"); - goto bce_intr_exit; - } -#endif - bus_dmamap_sync(sc->status_tag, sc->status_map, BUS_DMASYNC_POSTWRITE); @@ -5363,15 +7003,22 @@ * driver and we haven't asserted our * interrupt then there's nothing to do. */ - if ((sc->status_block->status_idx == sc->last_status_idx) && - (REG_RD(sc, BCE_PCICFG_MISC_STATUS) & BCE_PCICFG_MISC_STATUS_INTA_VALUE)) - goto bce_intr_exit; + if ((sc->status_block->status_idx == sc->last_status_idx) && + (REG_RD(sc, BCE_PCICFG_MISC_STATUS) & BCE_PCICFG_MISC_STATUS_INTA_VALUE)) { + DBPRINT(sc, BCE_VERBOSE_INTR, "%s(): Spurious interrupt.\n", + __FUNCTION__); + goto bce_intr_exit; + } /* Ack the interrupt and stop others from occuring. */ REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, BCE_PCICFG_INT_ACK_CMD_USE_INT_HC_PARAM | BCE_PCICFG_INT_ACK_CMD_MASK_INT); + /* Check if the hardware has finished any work. */ + hw_rx_cons = bce_get_hw_rx_cons(sc); + hw_tx_cons = bce_get_hw_tx_cons(sc); + /* Keep processing data as long as there is work to do. */ for (;;) { @@ -5386,17 +7033,22 @@ (sc->status_block->status_attn_bits_ack & STATUS_ATTN_BITS_LINK_STATE)) bce_phy_intr(sc); + /* Clear any transient status updates during link state change. */ + REG_WR(sc, BCE_HC_COMMAND, + sc->hc_command | BCE_HC_COMMAND_COAL_NOW_WO_INT); + REG_RD(sc, BCE_HC_COMMAND); + /* If any other attention is asserted then the chip is toast. */ if (((status_attn_bits & ~STATUS_ATTN_BITS_LINK_STATE) != - (sc->status_block->status_attn_bits_ack & + (sc->status_block->status_attn_bits_ack & ~STATUS_ATTN_BITS_LINK_STATE))) { - DBRUN(1, sc->unexpected_attentions++); + DBRUN(sc->unexpected_attentions++); - BCE_PRINTF("%s(%d): Fatal attention detected: 0x%08X\n", + BCE_PRINTF("%s(%d): Fatal attention detected: 0x%08X\n", __FILE__, __LINE__, sc->status_block->status_attn_bits); - DBRUN(BCE_FATAL, + DBRUNMSG(BCE_FATAL, if (bce_debug_unexpected_attention == 0) bce_breakpoint(sc)); @@ -5405,36 +7057,34 @@ } /* Check for any completed RX frames. */ - if (sc->status_block->status_rx_quick_consumer_index0 != sc->hw_rx_cons) + if (hw_rx_cons != sc->hw_rx_cons) bce_rx_intr(sc); /* Check for any completed TX frames. */ - if (sc->status_block->status_tx_quick_consumer_index0 != sc->hw_tx_cons) + if (hw_tx_cons != sc->hw_tx_cons) bce_tx_intr(sc); /* Save the status block index value for use during the next interrupt. */ sc->last_status_idx = sc->status_block->status_idx; /* Prevent speculative reads from getting ahead of the status block. */ - bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, + bus_space_barrier(sc->bce_btag, sc->bce_bhandle, 0, 0, BUS_SPACE_BARRIER_READ); /* If there's no work left then exit the interrupt service routine. */ - if ((sc->status_block->status_rx_quick_consumer_index0 == sc->hw_rx_cons) && - (sc->status_block->status_tx_quick_consumer_index0 == sc->hw_tx_cons)) + hw_rx_cons = bce_get_hw_rx_cons(sc); + hw_tx_cons = bce_get_hw_tx_cons(sc); + + if ((hw_rx_cons == sc->hw_rx_cons) && (hw_tx_cons == sc->hw_tx_cons)) break; - + } bus_dmamap_sync(sc->status_tag, sc->status_map, BUS_DMASYNC_PREWRITE); /* Re-enable interrupts. */ - REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, - BCE_PCICFG_INT_ACK_CMD_INDEX_VALID | sc->last_status_idx | - BCE_PCICFG_INT_ACK_CMD_MASK_INT); - REG_WR(sc, BCE_PCICFG_INT_ACK_CMD, - BCE_PCICFG_INT_ACK_CMD_INDEX_VALID | sc->last_status_idx); + bce_enable_intr(sc, 0); /* Handle any frames that arrived while handling the interrupt. */ if (ifp->if_drv_flags & IFF_DRV_RUNNING && !IFQ_DRV_IS_EMPTY(&ifp->if_snd)) @@ -5442,6 +7092,8 @@ bce_intr_exit: BCE_UNLOCK(sc); + + DBEXIT(BCE_VERBOSE_SEND | BCE_VERBOSE_RECV | BCE_VERBOSE_INTR); } @@ -5460,6 +7112,8 @@ u32 rx_mode, sort_mode; int h, i; + DBENTER(BCE_VERBOSE_MISC); + BCE_LOCK_ASSERT(sc); ifp = sc->bce_ifp; @@ -5517,7 +7171,7 @@ /* Only make changes if the recive mode has actually changed. */ if (rx_mode != sc->rx_mode) { - DBPRINT(sc, BCE_VERBOSE_MISC, "Enabling new receive mode: 0x%08X\n", + DBPRINT(sc, BCE_VERBOSE_MISC, "Enabling new receive mode: 0x%08X\n", rx_mode); sc->rx_mode = rx_mode; @@ -5528,6 +7182,8 @@ REG_WR(sc, BCE_RPM_SORT_USER0, 0x0); REG_WR(sc, BCE_RPM_SORT_USER0, sort_mode); REG_WR(sc, BCE_RPM_SORT_USER0, sort_mode | BCE_RPM_SORT_USER0_ENA); + + DBEXIT(BCE_VERBOSE_MISC); } @@ -5544,32 +7200,16 @@ struct ifnet *ifp; struct statistics_block *stats; - DBPRINT(sc, BCE_EXCESSIVE, "Entering %s()\n", __FUNCTION__); + DBENTER(BCE_EXTREME_MISC); ifp = sc->bce_ifp; stats = (struct statistics_block *) sc->stats_block; - /* - * Update the interface statistics from the - * hardware statistics. - */ - ifp->if_collisions = (u_long) stats->stat_EtherStatsCollisions; - - ifp->if_ierrors = (u_long) stats->stat_EtherStatsUndersizePkts + - (u_long) stats->stat_EtherStatsOverrsizePkts + - (u_long) stats->stat_IfInMBUFDiscards + - (u_long) stats->stat_Dot3StatsAlignmentErrors + - (u_long) stats->stat_Dot3StatsFCSErrors; - - ifp->if_oerrors = (u_long) stats->stat_emac_tx_stat_dot3statsinternalmactransmiterrors + - (u_long) stats->stat_Dot3StatsExcessiveCollisions + - (u_long) stats->stat_Dot3StatsLateCollisions; - - /* - * Certain controllers don't report + /* + * Certain controllers don't report * carrier sense errors correctly. - * See errata E11_5708CA0_1165. + * See errata E11_5708CA0_1165. */ if (!(BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5706) && !(BCE_CHIP_ID(sc) == BCE_CHIP_ID_5708_A0)) @@ -5579,12 +7219,12 @@ * Update the sysctl statistics from the * hardware statistics. */ - sc->stat_IfHCInOctets = - ((u64) stats->stat_IfHCInOctets_hi << 32) + + sc->stat_IfHCInOctets = + ((u64) stats->stat_IfHCInOctets_hi << 32) + (u64) stats->stat_IfHCInOctets_lo; sc->stat_IfHCInBadOctets = - ((u64) stats->stat_IfHCInBadOctets_hi << 32) + + ((u64) stats->stat_IfHCInBadOctets_hi << 32) + (u64) stats->stat_IfHCInBadOctets_lo; sc->stat_IfHCOutOctets = @@ -5625,7 +7265,7 @@ sc->stat_Dot3StatsCarrierSenseErrors = stats->stat_Dot3StatsCarrierSenseErrors; - sc->stat_Dot3StatsFCSErrors = + sc->stat_Dot3StatsFCSErrors = stats->stat_Dot3StatsFCSErrors; sc->stat_Dot3StatsAlignmentErrors = @@ -5753,7 +7393,34 @@ sc->com_no_buffers = REG_RD_IND(sc, 0x120084); - DBPRINT(sc, BCE_EXCESSIVE, "Exiting %s()\n", __FUNCTION__); + /* + * Update the interface statistics from the + * hardware statistics. + */ + ifp->if_collisions = + (u_long) sc->stat_EtherStatsCollisions; + + /* ToDo: This method loses soft errors. */ + ifp->if_ierrors = + (u_long) sc->stat_EtherStatsUndersizePkts + + (u_long) sc->stat_EtherStatsOverrsizePkts + + (u_long) sc->stat_IfInMBUFDiscards + + (u_long) sc->stat_Dot3StatsAlignmentErrors + + (u_long) sc->stat_Dot3StatsFCSErrors + + (u_long) sc->stat_IfInFramesL2FilterDiscards + + (u_long) sc->stat_IfInRuleCheckerDiscards + + (u_long) sc->stat_IfInFTQDiscards + + (u_long) sc->com_no_buffers; + + /* ToDo: This method loses soft errors. */ + ifp->if_oerrors = + (u_long) sc->stat_emac_tx_stat_dot3statsinternalmactransmiterrors + + (u_long) sc->stat_Dot3StatsExcessiveCollisions + + (u_long) sc->stat_Dot3StatsLateCollisions; + + /* ToDo: Add additional statistics. */ + + DBEXIT(BCE_EXTREME_MISC); } @@ -5770,7 +7437,7 @@ struct bce_softc *sc = xsc; u32 msg; - DBPRINT(sc, BCE_EXCESSIVE_MISC, "pulse\n"); + DBENTER(BCE_EXTREME_MISC); BCE_LOCK_ASSERT(sc); @@ -5781,7 +7448,7 @@ /* Schedule the next pulse. */ callout_reset(&sc->bce_pulse_callout, hz, bce_pulse, sc); - return; + DBEXIT(BCE_EXTREME_MISC); } @@ -5800,38 +7467,52 @@ ifp = sc->bce_ifp; + DBENTER(BCE_EXTREME_MISC); + BCE_LOCK_ASSERT(sc); + /* Schedule the next tick. */ + callout_reset(&sc->bce_tick_callout, hz, bce_tick, sc); + /* Update the statistics from the hardware statistics block. */ bce_stats_update(sc); + /* Top off the receive and page chains. */ +#ifdef BCE_USE_SPLIT_HEADER + bce_fill_pg_chain(sc); +#endif + bce_fill_rx_chain(sc); + /* Check that chip hasn't hung. */ bce_watchdog(sc); - /* Schedule the next tick. */ - callout_reset(&sc->bce_tick_callout, hz, bce_tick, sc); - /* If link is up already up then we're done. */ if (sc->bce_link) - goto bce_tick_locked_exit; + goto bce_tick_exit; + /* Link is down. Check what the PHY's doing. */ mii = device_get_softc(sc->bce_miibus); mii_tick(mii); /* Check if the link has come up. */ - if (!sc->bce_link && mii->mii_media_status & IFM_ACTIVE && - IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE) { + if ((mii->mii_media_status & IFM_ACTIVE) && + (IFM_SUBTYPE(mii->mii_media_active) != IFM_NONE)) { + DBPRINT(sc, BCE_VERBOSE_MISC, "%s(): Link up!\n", __FUNCTION__); sc->bce_link++; if ((IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_T || IFM_SUBTYPE(mii->mii_media_active) == IFM_1000_SX) && bootverbose) - BCE_PRINTF("Gigabit link up\n"); + BCE_PRINTF("Gigabit link up!\n"); /* Now that link is up, handle any outstanding TX traffic. */ - if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) + if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd)) { + DBPRINT(sc, BCE_VERBOSE_MISC, "%s(): Found pending TX traffic.\n", + __FUNCTION__); bce_start_locked(ifp); + } } -bce_tick_locked_exit: +bce_tick_exit: + DBEXIT(BCE_EXTREME_MISC); return; } @@ -5942,7 +7623,7 @@ if (result == 1) { sc = (struct bce_softc *)arg1; - bce_dump_rx_chain(sc, 0, sc->max_rx_bd); + bce_dump_rx_chain(sc, 0, TOTAL_RX_BD); } return error; @@ -5977,7 +7658,64 @@ } +#ifdef BCE_USE_SPLIT_HEADER /****************************************************************************/ +/* Provides a sysctl interface to allow dumping the page chain. */ +/* */ +/* Returns: */ +/* 0 for success, positive value for failure. */ +/****************************************************************************/ +static int +bce_sysctl_dump_pg_chain(SYSCTL_HANDLER_ARGS) +{ + int error; + int result; + struct bce_softc *sc; + + result = -1; + error = sysctl_handle_int(oidp, &result, 0, req); + + if (error || !req->newptr) + return (error); + + if (result == 1) { + sc = (struct bce_softc *)arg1; + bce_dump_pg_chain(sc, 0, TOTAL_PG_BD); + } + + return error; +} +#endif + +/****************************************************************************/ +/* Provides a sysctl interface to allow reading arbitrary NVRAM offsets in */ +/* the device. DO NOT ENABLE ON PRODUCTION SYSTEMS! */ +/* */ +/* Returns: */ +/* 0 for success, positive value for failure. */ +/****************************************************************************/ +static int +bce_sysctl_nvram_read(SYSCTL_HANDLER_ARGS) +{ + struct bce_softc *sc = (struct bce_softc *)arg1; + int error; + u32 result; + u32 val[1]; + u8 *data = (u8 *) val; + + result = -1; + error = sysctl_handle_int(oidp, &result, 0, req); + if (error || (req->newptr == NULL)) + return (error); + + bce_nvram_read(sc, result, data, 4); + BCE_PRINTF("offset 0x%08X = 0x%08X\n", result, bce_be32toh(val[0])); + + return (error); +} + + +/****************************************************************************/ /* Provides a sysctl interface to allow reading arbitrary registers in the */ /* device. DO NOT ENABLE ON PRODUCTION SYSTEMS! */ /* */ @@ -5987,30 +7725,28 @@ static int bce_sysctl_reg_read(SYSCTL_HANDLER_ARGS) { - struct bce_softc *sc; + struct bce_softc *sc = (struct bce_softc *)arg1; int error; u32 val, result; - + result = -1; error = sysctl_handle_int(oidp, &result, 0, req); if (error || (req->newptr == NULL)) return (error); - + /* Make sure the register is accessible. */ if (result < 0x8000) { - sc = (struct bce_softc *)arg1; val = REG_RD(sc, result); BCE_PRINTF("reg 0x%08X = 0x%08X\n", result, val); } else if (result < 0x0280000) { - sc = (struct bce_softc *)arg1; val = REG_RD_IND(sc, result); BCE_PRINTF("reg 0x%08X = 0x%08X\n", result, val); } - + return (error); } - + /****************************************************************************/ /* Provides a sysctl interface to allow reading arbitrary PHY registers in */ /* the device. DO NOT ENABLE ON PRODUCTION SYSTEMS! */ @@ -6043,6 +7779,34 @@ /****************************************************************************/ +/* Provides a sysctl interface to allow reading a CID. */ +/* */ +/* Returns: */ +/* 0 for success, positive value for failure. */ +/****************************************************************************/ +static int +bce_sysctl_dump_ctx(SYSCTL_HANDLER_ARGS) +{ + struct bce_softc *sc; + int error; + u16 result; + + result = -1; + error = sysctl_handle_int(oidp, &result, 0, req); + if (error || (req->newptr == NULL)) + return (error); + + /* Make sure the register is accessible. */ + if (result <= TX_CID) { + sc = (struct bce_softc *)arg1; + bce_dump_ctx(sc, result); + } + + return (error); +} + + + /****************************************************************************/ /* Provides a sysctl interface to forcing the driver to dump state and */ /* enter the debugger. DO NOT ENABLE ON PRODUCTION SYSTEMS! */ /* */ @@ -6084,378 +7848,359 @@ struct sysctl_ctx_list *ctx; struct sysctl_oid_list *children; + DBENTER(BCE_VERBOSE_MISC); + ctx = device_get_sysctl_ctx(sc->bce_dev); children = SYSCTL_CHILDREN(device_get_sysctl_tree(sc->bce_dev)); #ifdef BCE_DEBUG - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "rx_low_watermark", CTLFLAG_RD, &sc->rx_low_watermark, 0, "Lowest level of free rx_bd's"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "rx_empty_count", CTLFLAG_RD, &sc->rx_empty_count, 0, "Number of times the RX chain was empty"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "tx_hi_watermark", CTLFLAG_RD, &sc->tx_hi_watermark, 0, "Highest level of used tx_bd's"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "tx_full_count", CTLFLAG_RD, &sc->tx_full_count, 0, "Number of times the TX chain was full"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "l2fhdr_status_errors", CTLFLAG_RD, &sc->l2fhdr_status_errors, 0, "l2_fhdr status errors"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "unexpected_attentions", CTLFLAG_RD, &sc->unexpected_attentions, - 0, "unexpected attentions"); + 0, "Unexpected attentions"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "lost_status_block_updates", CTLFLAG_RD, &sc->lost_status_block_updates, - 0, "lost status block updates"); + 0, "Lost status block updates"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "mbuf_sim_alloc_failed", - CTLFLAG_RD, &sc->mbuf_sim_alloc_failed, - 0, "mbuf cluster simulated allocation failures"); + SYSCTL_ADD_INT(ctx, children, OID_AUTO, + "debug_mbuf_sim_alloc_failed", + CTLFLAG_RD, &sc->debug_mbuf_sim_alloc_failed, + 0, "Simulated mbuf cluster allocation failures"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "requested_tso_frames", CTLFLAG_RD, &sc->requested_tso_frames, - 0, "The number of TSO frames received"); + 0, "Number of TSO frames received"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[1]", - CTLFLAG_RD, &sc->rx_mbuf_segs[1], - 0, "mbuf cluster with 1 segment"); + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + "rx_interrupts", + CTLFLAG_RD, &sc->rx_interrupts, + 0, "Number of RX interrupts"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[2]", - CTLFLAG_RD, &sc->rx_mbuf_segs[2], - 0, "mbuf cluster with 2 segments"); + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + "tx_interrupts", + CTLFLAG_RD, &sc->tx_interrupts, + 0, "Number of TX interrupts"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[3]", - CTLFLAG_RD, &sc->rx_mbuf_segs[3], - 0, "mbuf cluster with 3 segments"); + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + "rx_intr_time", + CTLFLAG_RD, &sc->rx_intr_time, + "RX interrupt time"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[4]", - CTLFLAG_RD, &sc->rx_mbuf_segs[4], - 0, "mbuf cluster with 4 segments"); + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + "tx_intr_time", + CTLFLAG_RD, &sc->tx_intr_time, + "TX interrupt time"); +#endif - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[5]", - CTLFLAG_RD, &sc->rx_mbuf_segs[5], - 0, "mbuf cluster with 5 segments"); - - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[6]", - CTLFLAG_RD, &sc->rx_mbuf_segs[6], - 0, "mbuf cluster with 6 segments"); - - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[7]", - CTLFLAG_RD, &sc->rx_mbuf_segs[7], - 0, "mbuf cluster with 7 segments"); - - SYSCTL_ADD_INT(ctx, children, OID_AUTO, - "rx_mbuf_segs[8]", - CTLFLAG_RD, &sc->rx_mbuf_segs[8], - 0, "mbuf cluster with 8 segments"); - -#endif - - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "mbuf_alloc_failed", CTLFLAG_RD, &sc->mbuf_alloc_failed, 0, "mbuf cluster allocation failures"); - SYSCTL_ADD_INT(ctx, children, OID_AUTO, + SYSCTL_ADD_INT(ctx, children, OID_AUTO, "tx_dma_map_failures", CTLFLAG_RD, &sc->tx_dma_map_failures, 0, "tx dma mapping failures"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHcInOctets", CTLFLAG_RD, &sc->stat_IfHCInOctets, "Bytes received"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCInBadOctets", CTLFLAG_RD, &sc->stat_IfHCInBadOctets, "Bad bytes received"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCOutOctets", CTLFLAG_RD, &sc->stat_IfHCOutOctets, "Bytes sent"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCOutBadOctets", CTLFLAG_RD, &sc->stat_IfHCOutBadOctets, "Bad bytes sent"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCInUcastPkts", CTLFLAG_RD, &sc->stat_IfHCInUcastPkts, "Unicast packets received"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCInMulticastPkts", CTLFLAG_RD, &sc->stat_IfHCInMulticastPkts, "Multicast packets received"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCInBroadcastPkts", CTLFLAG_RD, &sc->stat_IfHCInBroadcastPkts, "Broadcast packets received"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCOutUcastPkts", CTLFLAG_RD, &sc->stat_IfHCOutUcastPkts, "Unicast packets sent"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCOutMulticastPkts", CTLFLAG_RD, &sc->stat_IfHCOutMulticastPkts, "Multicast packets sent"); - SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, + SYSCTL_ADD_ULONG(ctx, children, OID_AUTO, "stat_IfHCOutBroadcastPkts", CTLFLAG_RD, &sc->stat_IfHCOutBroadcastPkts, "Broadcast packets sent"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_emac_tx_stat_dot3statsinternalmactransmiterrors", CTLFLAG_RD, &sc->stat_emac_tx_stat_dot3statsinternalmactransmiterrors, 0, "Internal MAC transmit errors"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsCarrierSenseErrors", CTLFLAG_RD, &sc->stat_Dot3StatsCarrierSenseErrors, 0, "Carrier sense errors"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsFCSErrors", CTLFLAG_RD, &sc->stat_Dot3StatsFCSErrors, 0, "Frame check sequence errors"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsAlignmentErrors", CTLFLAG_RD, &sc->stat_Dot3StatsAlignmentErrors, 0, "Alignment errors"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsSingleCollisionFrames", CTLFLAG_RD, &sc->stat_Dot3StatsSingleCollisionFrames, 0, "Single Collision Frames"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsMultipleCollisionFrames", CTLFLAG_RD, &sc->stat_Dot3StatsMultipleCollisionFrames, 0, "Multiple Collision Frames"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsDeferredTransmissions", CTLFLAG_RD, &sc->stat_Dot3StatsDeferredTransmissions, 0, "Deferred Transmissions"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsExcessiveCollisions", CTLFLAG_RD, &sc->stat_Dot3StatsExcessiveCollisions, 0, "Excessive Collisions"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_Dot3StatsLateCollisions", CTLFLAG_RD, &sc->stat_Dot3StatsLateCollisions, 0, "Late Collisions"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsCollisions", CTLFLAG_RD, &sc->stat_EtherStatsCollisions, 0, "Collisions"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsFragments", CTLFLAG_RD, &sc->stat_EtherStatsFragments, 0, "Fragments"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsJabbers", CTLFLAG_RD, &sc->stat_EtherStatsJabbers, 0, "Jabbers"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsUndersizePkts", CTLFLAG_RD, &sc->stat_EtherStatsUndersizePkts, 0, "Undersize packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsOverrsizePkts", CTLFLAG_RD, &sc->stat_EtherStatsOverrsizePkts, 0, "stat_EtherStatsOverrsizePkts"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx64Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx64Octets, 0, "Bytes received in 64 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx65Octetsto127Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx65Octetsto127Octets, 0, "Bytes received in 65 to 127 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx128Octetsto255Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx128Octetsto255Octets, 0, "Bytes received in 128 to 255 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx256Octetsto511Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx256Octetsto511Octets, 0, "Bytes received in 256 to 511 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx512Octetsto1023Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx512Octetsto1023Octets, 0, "Bytes received in 512 to 1023 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx1024Octetsto1522Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx1024Octetsto1522Octets, 0, "Bytes received in 1024 t0 1522 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsRx1523Octetsto9022Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsRx1523Octetsto9022Octets, 0, "Bytes received in 1523 to 9022 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx64Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx64Octets, 0, "Bytes sent in 64 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx65Octetsto127Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx65Octetsto127Octets, 0, "Bytes sent in 65 to 127 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx128Octetsto255Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx128Octetsto255Octets, 0, "Bytes sent in 128 to 255 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx256Octetsto511Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx256Octetsto511Octets, 0, "Bytes sent in 256 to 511 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx512Octetsto1023Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx512Octetsto1023Octets, 0, "Bytes sent in 512 to 1023 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx1024Octetsto1522Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx1024Octetsto1522Octets, 0, "Bytes sent in 1024 to 1522 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_EtherStatsPktsTx1523Octetsto9022Octets", CTLFLAG_RD, &sc->stat_EtherStatsPktsTx1523Octetsto9022Octets, 0, "Bytes sent in 1523 to 9022 byte packets"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_XonPauseFramesReceived", CTLFLAG_RD, &sc->stat_XonPauseFramesReceived, 0, "XON pause frames receved"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_XoffPauseFramesReceived", CTLFLAG_RD, &sc->stat_XoffPauseFramesReceived, 0, "XOFF pause frames received"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_OutXonSent", CTLFLAG_RD, &sc->stat_OutXonSent, 0, "XON pause frames sent"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_OutXoffSent", CTLFLAG_RD, &sc->stat_OutXoffSent, 0, "XOFF pause frames sent"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_FlowControlDone", CTLFLAG_RD, &sc->stat_FlowControlDone, 0, "Flow control done"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_MacControlFramesReceived", CTLFLAG_RD, &sc->stat_MacControlFramesReceived, 0, "MAC control frames received"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_XoffStateEntered", CTLFLAG_RD, &sc->stat_XoffStateEntered, 0, "XOFF state entered"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_IfInFramesL2FilterDiscards", CTLFLAG_RD, &sc->stat_IfInFramesL2FilterDiscards, 0, "Received L2 packets discarded"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_IfInRuleCheckerDiscards", CTLFLAG_RD, &sc->stat_IfInRuleCheckerDiscards, 0, "Received packets discarded by rule"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_IfInFTQDiscards", CTLFLAG_RD, &sc->stat_IfInFTQDiscards, 0, "Received packet FTQ discards"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_IfInMBUFDiscards", CTLFLAG_RD, &sc->stat_IfInMBUFDiscards, 0, "Received packets discarded due to lack of controller buffer memory"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_IfInRuleCheckerP4Hit", CTLFLAG_RD, &sc->stat_IfInRuleCheckerP4Hit, 0, "Received packets rule checker hits"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_CatchupInRuleCheckerDiscards", CTLFLAG_RD, &sc->stat_CatchupInRuleCheckerDiscards, 0, "Received packets discarded in Catchup path"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_CatchupInFTQDiscards", CTLFLAG_RD, &sc->stat_CatchupInFTQDiscards, 0, "Received packets discarded in FTQ in Catchup path"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_CatchupInMBUFDiscards", CTLFLAG_RD, &sc->stat_CatchupInMBUFDiscards, 0, "Received packets discarded in controller buffer memory in Catchup path"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "stat_CatchupInRuleCheckerP4Hit", CTLFLAG_RD, &sc->stat_CatchupInRuleCheckerP4Hit, 0, "Received packets rule checker hits in Catchup path"); - SYSCTL_ADD_UINT(ctx, children, OID_AUTO, + SYSCTL_ADD_UINT(ctx, children, OID_AUTO, "com_no_buffers", CTLFLAG_RD, &sc->com_no_buffers, 0, "Valid packets received but no RX buffers available"); @@ -6486,23 +8231,40 @@ (void *)sc, 0, bce_sysctl_dump_tx_chain, "I", "Dump tx_bd chain"); +#ifdef BCE_USE_SPLIT_HEADER SYSCTL_ADD_PROC(ctx, children, OID_AUTO, + "dump_pg_chain", CTLTYPE_INT | CTLFLAG_RW, + (void *)sc, 0, + bce_sysctl_dump_pg_chain, "I", "Dump page chain"); +#endif + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, + "dump_ctx", CTLTYPE_INT | CTLFLAG_RW, + (void *)sc, 0, + bce_sysctl_dump_ctx, "I", "Dump context memory"); + + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, "breakpoint", CTLTYPE_INT | CTLFLAG_RW, (void *)sc, 0, bce_sysctl_breakpoint, "I", "Driver breakpoint"); - SYSCTL_ADD_PROC(ctx, children, OID_AUTO, - "reg_read", CTLTYPE_INT | CTLFLAG_RW, - (void *)sc, 0, + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, + "reg_read", CTLTYPE_INT | CTLFLAG_RW, + (void *)sc, 0, bce_sysctl_reg_read, "I", "Register read"); - SYSCTL_ADD_PROC(ctx, children, OID_AUTO, - "phy_read", CTLTYPE_INT | CTLFLAG_RW, - (void *)sc, 0, + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, + "nvram_read", CTLTYPE_INT | CTLFLAG_RW, + (void *)sc, 0, + bce_sysctl_nvram_read, "I", "NVRAM read"); + + SYSCTL_ADD_PROC(ctx, children, OID_AUTO, + "phy_read", CTLTYPE_INT | CTLFLAG_RW, + (void *)sc, 0, bce_sysctl_phy_read, "I", "PHY register read"); #endif + DBEXIT(BCE_VERBOSE_MISC); } @@ -6524,7 +8286,6 @@ val = REG_RD(sc, BCE_MISC_COMMAND); val |= BCE_MISC_COMMAND_DISABLE_ALL; REG_WR(sc, BCE_MISC_COMMAND, val); - } @@ -6542,19 +8303,121 @@ val = REG_RD(sc, BCE_MISC_COMMAND); val |= BCE_MISC_COMMAND_ENABLE_ALL; REG_WR(sc, BCE_MISC_COMMAND, val); - } + /****************************************************************************/ +/* Prints out Ethernet frame information from an mbuf. */ +/* */ +/* Partially decode an Ethernet frame to look at some important headers. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static void +bce_dump_enet(struct bce_softc *sc, struct mbuf *m) +{ + struct ether_vlan_header *eh; + u16 etype; + int ehlen; + struct ip *ip; + struct tcphdr *th; + struct udphdr *uh; + struct arphdr *ah; + + BCE_PRINTF( + "-----------------------------" + " Frame Decode " + "-----------------------------\n"); + + eh = mtod(m, struct ether_vlan_header *); + + /* Handle VLAN encapsulation if present. */ + if (eh->evl_encap_proto == htons(ETHERTYPE_VLAN)) { + etype = ntohs(eh->evl_proto); + ehlen = ETHER_HDR_LEN + ETHER_VLAN_ENCAP_LEN; + } else { + etype = ntohs(eh->evl_encap_proto); + ehlen = ETHER_HDR_LEN; + } + + /* ToDo: Add VLAN output. */ + BCE_PRINTF("enet: dest = %6D, src = %6D, type = 0x%04X, hlen = %d\n", + eh->evl_dhost, ":", eh->evl_shost, ":", etype, ehlen); + + switch (etype) { + case ETHERTYPE_IP: + ip = (struct ip *)(m->m_data + ehlen); + BCE_PRINTF("--ip: dest = 0x%08X , src = 0x%08X, len = %d bytes, " + "protocol = 0x%02X, xsum = 0x%04X\n", + ntohl(ip->ip_dst.s_addr), ntohl(ip->ip_src.s_addr), + ntohs(ip->ip_len), ip->ip_p, ntohs(ip->ip_sum)); + + switch (ip->ip_p) { + case IPPROTO_TCP: + th = (struct tcphdr *)((caddr_t)ip + (ip->ip_hl << 2)); + BCE_PRINTF("-tcp: dest = %d, src = %d, hlen = %d bytes, " + "flags = 0x%b, csum = 0x%04X\n", + ntohs(th->th_dport), ntohs(th->th_sport), (th->th_off << 2), + th->th_flags, "\20\10CWR\07ECE\06URG\05ACK\04PSH\03RST\02SYN\01FIN", + ntohs(th->th_sum)); + break; + case IPPROTO_UDP: + uh = (struct udphdr *)((caddr_t)ip + (ip->ip_hl << 2)); + BCE_PRINTF("-udp: dest = %d, src = %d, len = %d bytes, " + "csum = 0x%04X\n", ntohs(uh->uh_dport), ntohs(uh->uh_sport), + ntohs(uh->uh_ulen), ntohs(uh->uh_sum)); + break; + case IPPROTO_ICMP: + BCE_PRINTF("icmp:\n"); + break; + default: + BCE_PRINTF("----: Other IP protocol.\n"); + } + break; + case ETHERTYPE_IPV6: + BCE_PRINTF("ipv6: No decode supported.\n"); + break; + case ETHERTYPE_ARP: + BCE_PRINTF("-arp: "); + ah = (struct arphdr *) (m->m_data + ehlen); + switch (ntohs(ah->ar_op)) { + case ARPOP_REVREQUEST: + printf("reverse ARP request\n"); + break; + case ARPOP_REVREPLY: + printf("reverse ARP reply\n"); + break; + case ARPOP_REQUEST: + printf("ARP request\n"); + break; + case ARPOP_REPLY: + printf("ARP reply\n"); + break; + default: + printf("other ARP operation\n"); + } + break; + default: + BCE_PRINTF("----: Other protocol.\n"); + } + + BCE_PRINTF( + "-----------------------------" + "--------------" + "-----------------------------\n"); +} + + +/****************************************************************************/ /* Prints out information about an mbuf. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_mbuf(struct bce_softc *sc, struct mbuf *m) { - u32 val_hi, val_lo; struct mbuf *mp = m; if (m == NULL) { @@ -6563,68 +8426,25 @@ } while (mp) { - val_hi = BCE_ADDR_HI(mp); - val_lo = BCE_ADDR_LO(mp); - BCE_PRINTF("mbuf: vaddr = 0x%08X:%08X, m_len = %d, m_flags = ( ", - val_hi, val_lo, mp->m_len); + BCE_PRINTF("mbuf: %p, m_len = %d, m_flags = 0x%b, m_data = %p\n", + mp, mp->m_len, mp->m_flags, + "\20\1M_EXT\2M_PKTHDR\3M_EOR\4M_RDONLY", + mp->m_data); - if (mp->m_flags & M_EXT) - printf("M_EXT "); - if (mp->m_flags & M_PKTHDR) - printf("M_PKTHDR "); - if (mp->m_flags & M_EOR) - printf("M_EOR "); - if (mp->m_flags & M_RDONLY) - printf("M_RDONLY "); - - val_hi = BCE_ADDR_HI(mp->m_data); - val_lo = BCE_ADDR_LO(mp->m_data); - printf(") m_data = 0x%08X:%08X\n", - val_hi, val_lo); - if (mp->m_flags & M_PKTHDR) { - BCE_PRINTF("- m_pkthdr: flags = ( "); - if (mp->m_flags & M_BCAST) - printf("M_BCAST "); - if (mp->m_flags & M_MCAST) - printf("M_MCAST "); - if (mp->m_flags & M_FRAG) - printf("M_FRAG "); - if (mp->m_flags & M_FIRSTFRAG) - printf("M_FIRSTFRAG "); - if (mp->m_flags & M_LASTFRAG) - printf("M_LASTFRAG "); - if (mp->m_flags & M_VLANTAG) - printf("M_VLANTAG "); - if (mp->m_flags & M_PROMISC) - printf("M_PROMISC "); - printf(") csum_flags = ( "); - if (mp->m_pkthdr.csum_flags & CSUM_IP) - printf("CSUM_IP "); - if (mp->m_pkthdr.csum_flags & CSUM_TCP) - printf("CSUM_TCP "); - if (mp->m_pkthdr.csum_flags & CSUM_UDP) - printf("CSUM_UDP "); - if (mp->m_pkthdr.csum_flags & CSUM_IP_FRAGS) - printf("CSUM_IP_FRAGS "); - if (mp->m_pkthdr.csum_flags & CSUM_FRAGMENT) - printf("CSUM_FRAGMENT "); - if (mp->m_pkthdr.csum_flags & CSUM_TSO) - printf("CSUM_TSO "); - if (mp->m_pkthdr.csum_flags & CSUM_IP_CHECKED) - printf("CSUM_IP_CHECKED "); - if (mp->m_pkthdr.csum_flags & CSUM_IP_VALID) - printf("CSUM_IP_VALID "); - if (mp->m_pkthdr.csum_flags & CSUM_DATA_VALID) - printf("CSUM_DATA_VALID "); - printf(")\n"); + BCE_PRINTF("- m_pkthdr: len = %d, flags = 0x%b, csum_flags = %b\n", + mp->m_pkthdr.len, mp->m_flags, + "\20\12M_BCAST\13M_MCAST\14M_FRAG\15M_FIRSTFRAG" + "\16M_LASTFRAG\21M_VLANTAG\22M_PROMISC\23M_NOFREE", + mp->m_pkthdr.csum_flags, + "\20\1CSUM_IP\2CSUM_TCP\3CSUM_UDP\4CSUM_IP_FRAGS" + "\5CSUM_FRAGMENT\6CSUM_TSO\11CSUM_IP_CHECKED" + "\12CSUM_IP_VALID\13CSUM_DATA_VALID\14CSUM_PSEUDO_HDR"); } if (mp->m_flags & M_EXT) { - val_hi = BCE_ADDR_HI(mp->m_ext.ext_buf); - val_lo = BCE_ADDR_LO(mp->m_ext.ext_buf); - BCE_PRINTF("- m_ext: vaddr = 0x%08X:%08X, ext_size = %d, type = ", - val_hi, val_lo, mp->m_ext.ext_size); + BCE_PRINTF("- m_ext: %p, ext_size = %d, type = ", + mp->m_ext.ext_buf, mp->m_ext.ext_size); switch (mp->m_ext.ext_type) { case EXT_CLUSTER: printf("EXT_CLUSTER\n"); break; case EXT_SFBUF: printf("EXT_SFBUF\n"); break; @@ -6651,8 +8471,8 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_tx_mbuf_chain(struct bce_softc *sc, int chain_prod, int count) +static __attribute__ ((noinline)) void +bce_dump_tx_mbuf_chain(struct bce_softc *sc, u16 chain_prod, int count) { struct mbuf *m; @@ -6663,7 +8483,7 @@ for (int i = 0; i < count; i++) { m = sc->tx_mbuf_ptr[chain_prod]; - BCE_PRINTF("txmbuf[%d]\n", chain_prod); + BCE_PRINTF("txmbuf[0x%04X]\n", chain_prod); bce_dump_mbuf(sc, m); chain_prod = TX_CHAIN_IDX(NEXT_TX_BD(chain_prod)); } @@ -6681,8 +8501,8 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_rx_mbuf_chain(struct bce_softc *sc, int chain_prod, int count) +static __attribute__ ((noinline)) void +bce_dump_rx_mbuf_chain(struct bce_softc *sc, u16 chain_prod, int count) { struct mbuf *m; @@ -6706,13 +8526,46 @@ } +#ifdef BCE_USE_SPLIT_HEADER /****************************************************************************/ +/* Prints out the mbufs in the mbuf page chain. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_pg_mbuf_chain(struct bce_softc *sc, u16 chain_prod, int count) +{ + struct mbuf *m; + + BCE_PRINTF( + "----------------------------" + " pg mbuf data " + "----------------------------\n"); + + for (int i = 0; i < count; i++) { + m = sc->pg_mbuf_ptr[chain_prod]; + BCE_PRINTF("pgmbuf[0x%04X]\n", chain_prod); + bce_dump_mbuf(sc, m); + chain_prod = PG_CHAIN_IDX(NEXT_PG_BD(chain_prod)); + } + + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); +} +#endif + + +/****************************************************************************/ /* Prints out a tx_bd structure. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_txbd(struct bce_softc *sc, int idx, struct tx_bd *txbd) { if (idx > MAX_TX_BD) @@ -6720,12 +8573,12 @@ BCE_PRINTF("tx_bd[0x%04X]: Invalid tx_bd index!\n", idx); else if ((idx & USABLE_TX_BD_PER_PAGE) == USABLE_TX_BD_PER_PAGE) /* TX Chain page pointer. */ - BCE_PRINTF("tx_bd[0x%04X]: haddr = 0x%08X:%08X, chain page pointer\n", + BCE_PRINTF("tx_bd[0x%04X]: haddr = 0x%08X:%08X, chain page pointer\n", idx, txbd->tx_bd_haddr_hi, txbd->tx_bd_haddr_lo); else { /* Normal tx_bd entry. */ BCE_PRINTF("tx_bd[0x%04X]: haddr = 0x%08X:%08X, nbytes = 0x%08X, " - "vlan tag= 0x%04X, flags = 0x%04X (", idx, + "vlan tag= 0x%04X, flags = 0x%04X (", idx, txbd->tx_bd_haddr_hi, txbd->tx_bd_haddr_lo, txbd->tx_bd_mss_nbytes, txbd->tx_bd_vlan_tag, txbd->tx_bd_flags); @@ -6768,7 +8621,7 @@ printf(" )\n"); } - + } @@ -6778,51 +8631,432 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_rxbd(struct bce_softc *sc, int idx, struct rx_bd *rxbd) { if (idx > MAX_RX_BD) /* Index out of range. */ BCE_PRINTF("rx_bd[0x%04X]: Invalid rx_bd index!\n", idx); else if ((idx & USABLE_RX_BD_PER_PAGE) == USABLE_RX_BD_PER_PAGE) - /* TX Chain page pointer. */ - BCE_PRINTF("rx_bd[0x%04X]: haddr = 0x%08X:%08X, chain page pointer\n", + /* RX Chain page pointer. */ + BCE_PRINTF("rx_bd[0x%04X]: haddr = 0x%08X:%08X, chain page pointer\n", idx, rxbd->rx_bd_haddr_hi, rxbd->rx_bd_haddr_lo); else - /* Normal tx_bd entry. */ + /* Normal rx_bd entry. */ BCE_PRINTF("rx_bd[0x%04X]: haddr = 0x%08X:%08X, nbytes = 0x%08X, " - "flags = 0x%08X\n", idx, + "flags = 0x%08X\n", idx, rxbd->rx_bd_haddr_hi, rxbd->rx_bd_haddr_lo, rxbd->rx_bd_len, rxbd->rx_bd_flags); } +#ifdef BCE_USE_SPLIT_HEADER /****************************************************************************/ +/* Prints out a rx_bd structure in the page chain. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_pgbd(struct bce_softc *sc, int idx, struct rx_bd *pgbd) +{ + if (idx > MAX_PG_BD) + /* Index out of range. */ + BCE_PRINTF("pg_bd[0x%04X]: Invalid pg_bd index!\n", idx); + else if ((idx & USABLE_PG_BD_PER_PAGE) == USABLE_PG_BD_PER_PAGE) + /* Page Chain page pointer. */ + BCE_PRINTF("px_bd[0x%04X]: haddr = 0x%08X:%08X, chain page pointer\n", + idx, pgbd->rx_bd_haddr_hi, pgbd->rx_bd_haddr_lo); + else + /* Normal rx_bd entry. */ + BCE_PRINTF("pg_bd[0x%04X]: haddr = 0x%08X:%08X, nbytes = 0x%08X, " + "flags = 0x%08X\n", idx, + pgbd->rx_bd_haddr_hi, pgbd->rx_bd_haddr_lo, + pgbd->rx_bd_len, pgbd->rx_bd_flags); +} +#endif + + +/****************************************************************************/ /* Prints out a l2_fhdr structure. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_l2fhdr(struct bce_softc *sc, int idx, struct l2_fhdr *l2fhdr) { - BCE_PRINTF("l2_fhdr[0x%04X]: status = 0x%08X, " - "pkt_len = 0x%04X, vlan = 0x%04x, ip_xsum = 0x%04X, " + BCE_PRINTF("l2_fhdr[0x%04X]: status = 0x%b, " + "pkt_len = %d, vlan = 0x%04x, ip_xsum/hdr_len = 0x%04X, " "tcp_udp_xsum = 0x%04X\n", idx, - l2fhdr->l2_fhdr_status, l2fhdr->l2_fhdr_pkt_len, - l2fhdr->l2_fhdr_vlan_tag, l2fhdr->l2_fhdr_ip_xsum, - l2fhdr->l2_fhdr_tcp_udp_xsum); + l2fhdr->l2_fhdr_status, BCE_L2FHDR_PRINTFB, + l2fhdr->l2_fhdr_pkt_len, l2fhdr->l2_fhdr_vlan_tag, + l2fhdr->l2_fhdr_ip_xsum, l2fhdr->l2_fhdr_tcp_udp_xsum); } /****************************************************************************/ +/* Prints out context memory info. (Only useful for CID 0 to 16.) */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_ctx(struct bce_softc *sc, u16 cid) +{ + if (cid <= TX_CID) { + BCE_PRINTF( + "----------------------------" + " CTX Data " + "----------------------------\n"); + + BCE_PRINTF(" 0x%04X - (CID) Context ID\n", cid); + + if (cid == RX_CID) { + BCE_PRINTF(" 0x%08X - (L2CTX_RX_HOST_BDIDX) host rx " + "producer index\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_HOST_BDIDX)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_HOST_BSEQ) host byte sequence\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_HOST_BSEQ)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_BSEQ) h/w byte sequence\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_BSEQ)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_BDHADDR_HI) h/w buffer " + "descriptor address\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_BDHADDR_HI)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_BDHADDR_LO) h/w buffer " + "descriptor address\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_BDHADDR_LO)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_BDIDX) h/w rx consumer index\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_BDIDX)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_HOST_PG_BDIDX) host page " + "producer index\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_HOST_PG_BDIDX)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_PG_BUF_SIZE) host rx_bd/page " + "buffer size\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_PG_BUF_SIZE)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_PG_BDHADDR_HI) h/w page " + "chain address\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_PG_BDHADDR_HI)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_PG_BDHADDR_LO) h/w page " + "chain address\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_PG_BDHADDR_LO)); + BCE_PRINTF(" 0x%08X - (L2CTX_RX_NX_PG_BDIDX) h/w page " + "consumer index\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_RX_NX_PG_BDIDX)); + } else if (cid == TX_CID) { + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TYPE_XI) ctx type\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_TX_TYPE_XI)); + BCE_PRINTF(" 0x%08X - (L2CTX_CMD_TX_TYPE_XI) ctx cmd\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_TX_CMD_TYPE_XI)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TBDR_BDHADDR_HI_XI) h/w buffer " + "descriptor address\n", CTX_RD(sc, + GET_CID_ADDR(cid), BCE_L2CTX_TX_TBDR_BHADDR_HI_XI)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TBDR_BHADDR_LO_XI) h/w buffer " + "descriptor address\n", CTX_RD(sc, + GET_CID_ADDR(cid), BCE_L2CTX_TX_TBDR_BHADDR_LO_XI)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_HOST_BIDX_XI) host producer " + "index\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_HOST_BIDX_XI)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_HOST_BSEQ_XI) host byte " + "sequence\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_HOST_BSEQ_XI)); + } else { + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TYPE) ctx type\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_TX_TYPE)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_CMD_TYPE) ctx cmd\n", + CTX_RD(sc, GET_CID_ADDR(cid), BCE_L2CTX_TX_CMD_TYPE)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TBDR_BDHADDR_HI) h/w buffer " + "descriptor address\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_TBDR_BHADDR_HI)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_TBDR_BHADDR_LO) h/w buffer " + "descriptor address\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_TBDR_BHADDR_LO)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_HOST_BIDX) host producer " + "index\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_HOST_BIDX)); + BCE_PRINTF(" 0x%08X - (L2CTX_TX_HOST_BSEQ) host byte " + "sequence\n", CTX_RD(sc, GET_CID_ADDR(cid), + BCE_L2CTX_TX_HOST_BSEQ)); + } + } else + BCE_PRINTF(" Unknown CID\n"); + + BCE_PRINTF( + "----------------------------" + " Raw CTX " + "----------------------------\n"); + + for (int i = 0x0; i < 0x300; i += 0x10) { + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", i, + CTX_RD(sc, GET_CID_ADDR(cid), i), + CTX_RD(sc, GET_CID_ADDR(cid), i + 0x4), + CTX_RD(sc, GET_CID_ADDR(cid), i + 0x8), + CTX_RD(sc, GET_CID_ADDR(cid), i + 0xc)); + } + + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); + } +} + + +/****************************************************************************/ +/* Prints out the FTQ data. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_ftqs(struct bce_softc *sc) +{ + u32 cmd, ctl, cur_depth, max_depth, valid_cnt, val; + + BCE_PRINTF( + "----------------------------" + " FTQ Data " + "----------------------------\n"); + + BCE_PRINTF(" FTQ Command Control Depth_Now Max_Depth Valid_Cnt \n"); + BCE_PRINTF(" ------- ---------- ---------- ---------- ---------- ----------\n"); + + /* Setup the generic statistic counters for the FTQ valid count. */ + val = (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RV2PPQ_VALID_CNT << 24) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RXPCQ_VALID_CNT << 16) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RXPQ_VALID_CNT << 8) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RLUPQ_VALID_CNT); + REG_WR(sc, BCE_HC_STAT_GEN_SEL_0, val); + + val = (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TSCHQ_VALID_CNT << 24) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RDMAQ_VALID_CNT << 16) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RV2PTQ_VALID_CNT << 8) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RV2PMQ_VALID_CNT); + REG_WR(sc, BCE_HC_STAT_GEN_SEL_1, val); + + val = (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TPATQ_VALID_CNT << 24) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TDMAQ_VALID_CNT << 16) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TXPQ_VALID_CNT << 8) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TBDRQ_VALID_CNT); + REG_WR(sc, BCE_HC_STAT_GEN_SEL_2, val); + + val = (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_COMQ_VALID_CNT << 24) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_COMTQ_VALID_CNT << 16) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_COMXQ_VALID_CNT << 8) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_TASQ_VALID_CNT); + REG_WR(sc, BCE_HC_STAT_GEN_SEL_3, val); + + /* Input queue to the Receive Lookup state machine */ + cmd = REG_RD(sc, BCE_RLUP_FTQ_CMD); + ctl = REG_RD(sc, BCE_RLUP_FTQ_CTL); + cur_depth = (ctl & BCE_RLUP_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RLUP_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT0); + BCE_PRINTF(" RLUP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Receive Processor */ + cmd = REG_RD_IND(sc, BCE_RXP_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_RXP_FTQ_CTL); + cur_depth = (ctl & BCE_RXP_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RXP_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT1); + BCE_PRINTF(" RXP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Recevie Processor */ + cmd = REG_RD_IND(sc, BCE_RXP_CFTQ_CMD); + ctl = REG_RD_IND(sc, BCE_RXP_CFTQ_CTL); + cur_depth = (ctl & BCE_RXP_CFTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RXP_CFTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT2); + BCE_PRINTF(" RXPC 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Receive Virtual to Physical state machine */ + cmd = REG_RD(sc, BCE_RV2P_PFTQ_CMD); + ctl = REG_RD(sc, BCE_RV2P_PFTQ_CTL); + cur_depth = (ctl & BCE_RV2P_PFTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RV2P_PFTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT3); + BCE_PRINTF(" RV2PP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Recevie Virtual to Physical state machine */ + cmd = REG_RD(sc, BCE_RV2P_MFTQ_CMD); + ctl = REG_RD(sc, BCE_RV2P_MFTQ_CTL); + cur_depth = (ctl & BCE_RV2P_MFTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RV2P_MFTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT4); + BCE_PRINTF(" RV2PM 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Receive Virtual to Physical state machine */ + cmd = REG_RD(sc, BCE_RV2P_TFTQ_CMD); + ctl = REG_RD(sc, BCE_RV2P_TFTQ_CTL); + cur_depth = (ctl & BCE_RV2P_TFTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RV2P_TFTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT5); + BCE_PRINTF(" RV2PT 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Receive DMA state machine */ + cmd = REG_RD(sc, BCE_RDMA_FTQ_CMD); + ctl = REG_RD(sc, BCE_RDMA_FTQ_CTL); + cur_depth = (ctl & BCE_RDMA_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_RDMA_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT6); + BCE_PRINTF(" RDMA 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit Scheduler state machine */ + cmd = REG_RD(sc, BCE_TSCH_FTQ_CMD); + ctl = REG_RD(sc, BCE_TSCH_FTQ_CTL); + cur_depth = (ctl & BCE_TSCH_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TSCH_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT7); + BCE_PRINTF(" TSCH 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit Buffer Descriptor state machine */ + cmd = REG_RD(sc, BCE_TBDR_FTQ_CMD); + ctl = REG_RD(sc, BCE_TBDR_FTQ_CTL); + cur_depth = (ctl & BCE_TBDR_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TBDR_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT8); + BCE_PRINTF(" TBDR 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit Processor */ + cmd = REG_RD_IND(sc, BCE_TXP_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_TXP_FTQ_CTL); + cur_depth = (ctl & BCE_TXP_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TXP_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT9); + BCE_PRINTF(" TXP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit DMA state machine */ + cmd = REG_RD(sc, BCE_TDMA_FTQ_CMD); + ctl = REG_RD(sc, BCE_TDMA_FTQ_CTL); + cur_depth = (ctl & BCE_TDMA_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TDMA_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT10); + BCE_PRINTF(" TDMA 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit Patch-Up Processor */ + cmd = REG_RD_IND(sc, BCE_TPAT_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_TPAT_FTQ_CTL); + cur_depth = (ctl & BCE_TPAT_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TPAT_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT11); + BCE_PRINTF(" TPAT 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Transmit Assembler state machine */ + cmd = REG_RD_IND(sc, BCE_TAS_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_TAS_FTQ_CTL); + cur_depth = (ctl & BCE_TAS_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_TAS_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT12); + BCE_PRINTF(" TAS 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Completion Processor */ + cmd = REG_RD_IND(sc, BCE_COM_COMXQ_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_COM_COMXQ_FTQ_CTL); + cur_depth = (ctl & BCE_COM_COMXQ_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_COM_COMXQ_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT13); + BCE_PRINTF(" COMX 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Completion Processor */ + cmd = REG_RD_IND(sc, BCE_COM_COMTQ_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_COM_COMTQ_FTQ_CTL); + cur_depth = (ctl & BCE_COM_COMTQ_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_COM_COMTQ_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT14); + BCE_PRINTF(" COMT 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Completion Processor */ + cmd = REG_RD_IND(sc, BCE_COM_COMQ_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_COM_COMQ_FTQ_CTL); + cur_depth = (ctl & BCE_COM_COMQ_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_COM_COMQ_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT15); + BCE_PRINTF(" COMX 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Setup the generic statistic counters for the FTQ valid count. */ + val = (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_CSQ_VALID_CNT << 16) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_CPQ_VALID_CNT << 8) | + (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_MGMQ_VALID_CNT); + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) + val = val | (BCE_HC_STAT_GEN_SEL_0_GEN_SEL_0_RV2PCSQ_VALID_CNT_XI << 24); + REG_WR(sc, BCE_HC_STAT_GEN_SEL_0, val); + + /* Input queue to the Management Control Processor */ + cmd = REG_RD_IND(sc, BCE_MCP_MCPQ_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_MCP_MCPQ_FTQ_CTL); + cur_depth = (ctl & BCE_MCP_MCPQ_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_MCP_MCPQ_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT0); + BCE_PRINTF(" MCP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Command Processor */ + cmd = REG_RD_IND(sc, BCE_CP_CPQ_FTQ_CMD); + ctl = REG_RD_IND(sc, BCE_CP_CPQ_FTQ_CTL); + cur_depth = (ctl & BCE_CP_CPQ_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_CP_CPQ_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT1); + BCE_PRINTF(" CP 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + /* Input queue to the Completion Scheduler state machine */ + cmd = REG_RD(sc, BCE_CSCH_CH_FTQ_CMD); + ctl = REG_RD(sc, BCE_CSCH_CH_FTQ_CTL); + cur_depth = (ctl & BCE_CSCH_CH_FTQ_CTL_CUR_DEPTH) >> 22; + max_depth = (ctl & BCE_CSCH_CH_FTQ_CTL_MAX_DEPTH) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT2); + BCE_PRINTF(" CS 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + + if ((BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5709) || + (BCE_CHIP_NUM(sc) == BCE_CHIP_NUM_5716)) { + /* Input queue to the Receive Virtual to Physical Command Scheduler */ + cmd = REG_RD(sc, BCE_RV2PCSR_FTQ_CMD); + ctl = REG_RD(sc, BCE_RV2PCSR_FTQ_CTL); + cur_depth = (ctl & 0xFFC00000) >> 22; + max_depth = (ctl & 0x003FF000) >> 12; + valid_cnt = REG_RD(sc, BCE_HC_STAT_GEN_STAT3); + BCE_PRINTF(" RV2PCSR 0x%08X 0x%08X 0x%08X 0x%08X 0x%08X\n", + cmd, ctl, cur_depth, max_depth, valid_cnt); + } + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); +} + + +/****************************************************************************/ /* Prints out the TX chain. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_tx_chain(struct bce_softc *sc, int tx_prod, int count) +static __attribute__ ((noinline)) void +bce_dump_tx_chain(struct bce_softc *sc, u16 tx_prod, int count) { struct tx_bd *txbd; @@ -6849,7 +9083,7 @@ for (int i = 0; i < count; i++) { txbd = &sc->tx_bd_chain[TX_PAGE(tx_prod)][TX_IDX(tx_prod)]; bce_dump_txbd(sc, tx_prod, txbd); - tx_prod = TX_CHAIN_IDX(NEXT_TX_BD(tx_prod)); + tx_prod = NEXT_TX_BD(tx_prod); } BCE_PRINTF( @@ -6865,12 +9099,12 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_rx_chain(struct bce_softc *sc, int rx_prod, int count) +static __attribute__ ((noinline)) void +bce_dump_rx_chain(struct bce_softc *sc, u16 rx_prod, int count) { struct rx_bd *rxbd; - /* First some info about the tx_bd chain structure. */ + /* First some info about the rx_bd chain structure. */ BCE_PRINTF( "----------------------------" " rx_bd chain " @@ -6893,7 +9127,7 @@ for (int i = 0; i < count; i++) { rxbd = &sc->rx_bd_chain[RX_PAGE(rx_prod)][RX_IDX(rx_prod)]; bce_dump_rxbd(sc, rx_prod, rxbd); - rx_prod = RX_CHAIN_IDX(NEXT_RX_BD(rx_prod)); + rx_prod = RX_CHAIN_IDX(rx_prod + 1); } BCE_PRINTF( @@ -6903,13 +9137,60 @@ } +#ifdef BCE_USE_SPLIT_HEADER /****************************************************************************/ +/* Prints out the page chain. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_pg_chain(struct bce_softc *sc, u16 pg_prod, int count) +{ + struct rx_bd *pgbd; + + /* First some info about the page chain structure. */ + BCE_PRINTF( + "----------------------------" + " page chain " + "----------------------------\n"); + + BCE_PRINTF("page size = 0x%08X, pg chain pages = 0x%08X\n", + (u32) BCM_PAGE_SIZE, (u32) PG_PAGES); + + BCE_PRINTF("rx_bd per page = 0x%08X, usable rx_bd per page = 0x%08X\n", + (u32) TOTAL_PG_BD_PER_PAGE, (u32) USABLE_PG_BD_PER_PAGE); + + BCE_PRINTF("total rx_bd = 0x%08X, max_pg_bd = 0x%08X\n", + (u32) TOTAL_PG_BD, (u32) MAX_PG_BD); + + BCE_PRINTF( + "----------------------------" + " page data " + "----------------------------\n"); + + /* Now print out the rx_bd's themselves. */ + for (int i = 0; i < count; i++) { + pgbd = &sc->pg_bd_chain[PG_PAGE(pg_prod)][PG_IDX(pg_prod)]; + bce_dump_pgbd(sc, pg_prod, pgbd); + pg_prod = PG_CHAIN_IDX(pg_prod + 1); + } + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); +} +#endif + + +/****************************************************************************/ /* Prints out the status block from host memory. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_status_block(struct bce_softc *sc) { struct status_block *sblk; @@ -6928,11 +9209,11 @@ sblk->status_attn_bits_ack); BCE_PRINTF("0x%04X(0x%04X) - rx_cons0\n", - sblk->status_rx_quick_consumer_index0, + sblk->status_rx_quick_consumer_index0, (u16) RX_CHAIN_IDX(sblk->status_rx_quick_consumer_index0)); BCE_PRINTF("0x%04X(0x%04X) - tx_cons0\n", - sblk->status_tx_quick_consumer_index0, + sblk->status_tx_quick_consumer_index0, (u16) TX_CHAIN_IDX(sblk->status_tx_quick_consumer_index0)); BCE_PRINTF(" 0x%04X - status_idx\n", sblk->status_idx); @@ -6968,43 +9249,43 @@ sblk->status_tx_quick_consumer_index3, (u16) TX_CHAIN_IDX(sblk->status_tx_quick_consumer_index3)); - if (sblk->status_rx_quick_consumer_index4 || + if (sblk->status_rx_quick_consumer_index4 || sblk->status_rx_quick_consumer_index5) BCE_PRINTF("rx_cons4 = 0x%08X, rx_cons5 = 0x%08X\n", sblk->status_rx_quick_consumer_index4, sblk->status_rx_quick_consumer_index5); - if (sblk->status_rx_quick_consumer_index6 || + if (sblk->status_rx_quick_consumer_index6 || sblk->status_rx_quick_consumer_index7) BCE_PRINTF("rx_cons6 = 0x%08X, rx_cons7 = 0x%08X\n", sblk->status_rx_quick_consumer_index6, sblk->status_rx_quick_consumer_index7); - if (sblk->status_rx_quick_consumer_index8 || + if (sblk->status_rx_quick_consumer_index8 || sblk->status_rx_quick_consumer_index9) BCE_PRINTF("rx_cons8 = 0x%08X, rx_cons9 = 0x%08X\n", sblk->status_rx_quick_consumer_index8, sblk->status_rx_quick_consumer_index9); - if (sblk->status_rx_quick_consumer_index10 || + if (sblk->status_rx_quick_consumer_index10 || sblk->status_rx_quick_consumer_index11) BCE_PRINTF("rx_cons10 = 0x%08X, rx_cons11 = 0x%08X\n", sblk->status_rx_quick_consumer_index10, sblk->status_rx_quick_consumer_index11); - if (sblk->status_rx_quick_consumer_index12 || + if (sblk->status_rx_quick_consumer_index12 || sblk->status_rx_quick_consumer_index13) BCE_PRINTF("rx_cons12 = 0x%08X, rx_cons13 = 0x%08X\n", sblk->status_rx_quick_consumer_index12, sblk->status_rx_quick_consumer_index13); - if (sblk->status_rx_quick_consumer_index14 || + if (sblk->status_rx_quick_consumer_index14 || sblk->status_rx_quick_consumer_index15) BCE_PRINTF("rx_cons14 = 0x%08X, rx_cons15 = 0x%08X\n", sblk->status_rx_quick_consumer_index14, sblk->status_rx_quick_consumer_index15); - if (sblk->status_completion_producer_index || + if (sblk->status_completion_producer_index || sblk->status_cmd_consumer_index) BCE_PRINTF("com_prod = 0x%08X, cmd_cons = 0x%08X\n", sblk->status_completion_producer_index, @@ -7023,7 +9304,7 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_stats_block(struct bce_softc *sc) { struct statistics_block *sblk; @@ -7035,79 +9316,79 @@ " Stats Block (All Stats Not Shown Are 0) " "---------------\n"); - if (sblk->stat_IfHCInOctets_hi + if (sblk->stat_IfHCInOctets_hi || sblk->stat_IfHCInOctets_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcInOctets\n", - sblk->stat_IfHCInOctets_hi, + "IfHcInOctets\n", + sblk->stat_IfHCInOctets_hi, sblk->stat_IfHCInOctets_lo); - if (sblk->stat_IfHCInBadOctets_hi + if (sblk->stat_IfHCInBadOctets_hi || sblk->stat_IfHCInBadOctets_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcInBadOctets\n", - sblk->stat_IfHCInBadOctets_hi, + "IfHcInBadOctets\n", + sblk->stat_IfHCInBadOctets_hi, sblk->stat_IfHCInBadOctets_lo); - if (sblk->stat_IfHCOutOctets_hi + if (sblk->stat_IfHCOutOctets_hi || sblk->stat_IfHCOutOctets_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcOutOctets\n", - sblk->stat_IfHCOutOctets_hi, + "IfHcOutOctets\n", + sblk->stat_IfHCOutOctets_hi, sblk->stat_IfHCOutOctets_lo); - if (sblk->stat_IfHCOutBadOctets_hi + if (sblk->stat_IfHCOutBadOctets_hi || sblk->stat_IfHCOutBadOctets_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcOutBadOctets\n", - sblk->stat_IfHCOutBadOctets_hi, + "IfHcOutBadOctets\n", + sblk->stat_IfHCOutBadOctets_hi, sblk->stat_IfHCOutBadOctets_lo); - if (sblk->stat_IfHCInUcastPkts_hi + if (sblk->stat_IfHCInUcastPkts_hi || sblk->stat_IfHCInUcastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcInUcastPkts\n", - sblk->stat_IfHCInUcastPkts_hi, + "IfHcInUcastPkts\n", + sblk->stat_IfHCInUcastPkts_hi, sblk->stat_IfHCInUcastPkts_lo); - if (sblk->stat_IfHCInBroadcastPkts_hi + if (sblk->stat_IfHCInBroadcastPkts_hi || sblk->stat_IfHCInBroadcastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcInBroadcastPkts\n", - sblk->stat_IfHCInBroadcastPkts_hi, + "IfHcInBroadcastPkts\n", + sblk->stat_IfHCInBroadcastPkts_hi, sblk->stat_IfHCInBroadcastPkts_lo); - if (sblk->stat_IfHCInMulticastPkts_hi + if (sblk->stat_IfHCInMulticastPkts_hi || sblk->stat_IfHCInMulticastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcInMulticastPkts\n", - sblk->stat_IfHCInMulticastPkts_hi, + "IfHcInMulticastPkts\n", + sblk->stat_IfHCInMulticastPkts_hi, sblk->stat_IfHCInMulticastPkts_lo); - if (sblk->stat_IfHCOutUcastPkts_hi + if (sblk->stat_IfHCOutUcastPkts_hi || sblk->stat_IfHCOutUcastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcOutUcastPkts\n", - sblk->stat_IfHCOutUcastPkts_hi, + "IfHcOutUcastPkts\n", + sblk->stat_IfHCOutUcastPkts_hi, sblk->stat_IfHCOutUcastPkts_lo); - if (sblk->stat_IfHCOutBroadcastPkts_hi + if (sblk->stat_IfHCOutBroadcastPkts_hi || sblk->stat_IfHCOutBroadcastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcOutBroadcastPkts\n", - sblk->stat_IfHCOutBroadcastPkts_hi, + "IfHcOutBroadcastPkts\n", + sblk->stat_IfHCOutBroadcastPkts_hi, sblk->stat_IfHCOutBroadcastPkts_lo); - if (sblk->stat_IfHCOutMulticastPkts_hi + if (sblk->stat_IfHCOutMulticastPkts_hi || sblk->stat_IfHCOutMulticastPkts_lo) BCE_PRINTF("0x%08X:%08X : " - "IfHcOutMulticastPkts\n", - sblk->stat_IfHCOutMulticastPkts_hi, + "IfHcOutMulticastPkts\n", + sblk->stat_IfHCOutMulticastPkts_hi, sblk->stat_IfHCOutMulticastPkts_lo); if (sblk->stat_emac_tx_stat_dot3statsinternalmactransmiterrors) BCE_PRINTF(" 0x%08X : " - "emac_tx_stat_dot3statsinternalmactransmiterrors\n", + "emac_tx_stat_dot3statsinternalmactransmiterrors\n", sblk->stat_emac_tx_stat_dot3statsinternalmactransmiterrors); if (sblk->stat_Dot3StatsCarrierSenseErrors) @@ -7129,7 +9410,7 @@ if (sblk->stat_Dot3StatsMultipleCollisionFrames) BCE_PRINTF(" 0x%08X : Dot3StatsMultipleCollisionFrames\n", sblk->stat_Dot3StatsMultipleCollisionFrames); - + if (sblk->stat_Dot3StatsDeferredTransmissions) BCE_PRINTF(" 0x%08X : Dot3StatsDeferredTransmissions\n", sblk->stat_Dot3StatsDeferredTransmissions); @@ -7146,7 +9427,7 @@ BCE_PRINTF(" 0x%08X : EtherStatsCollisions\n", sblk->stat_EtherStatsCollisions); - if (sblk->stat_EtherStatsFragments) + if (sblk->stat_EtherStatsFragments) BCE_PRINTF(" 0x%08X : EtherStatsFragments\n", sblk->stat_EtherStatsFragments); @@ -7295,7 +9576,7 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_driver_state(struct bce_softc *sc) { u32 val_hi, val_lo; @@ -7337,6 +9618,14 @@ "0x%08X:%08X - (sc->rx_bd_chain) rx_bd chain virtual address\n", val_hi, val_lo); +#ifdef BCE_USE_SPLIT_HEADER + val_hi = BCE_ADDR_HI(sc->pg_bd_chain); + val_lo = BCE_ADDR_LO(sc->pg_bd_chain); + BCE_PRINTF( + "0x%08X:%08X - (sc->pg_bd_chain) page chain virtual address\n", + val_hi, val_lo); +#endif + val_hi = BCE_ADDR_HI(sc->tx_mbuf_ptr); val_lo = BCE_ADDR_LO(sc->tx_mbuf_ptr); BCE_PRINTF( @@ -7345,13 +9634,21 @@ val_hi = BCE_ADDR_HI(sc->rx_mbuf_ptr); val_lo = BCE_ADDR_LO(sc->rx_mbuf_ptr); - BCE_PRINTF( + BCE_PRINTF( "0x%08X:%08X - (sc->rx_mbuf_ptr) rx mbuf chain virtual address\n", val_hi, val_lo); +#ifdef BCE_USE_SPLIT_HEADER + val_hi = BCE_ADDR_HI(sc->pg_mbuf_ptr); + val_lo = BCE_ADDR_LO(sc->pg_mbuf_ptr); + BCE_PRINTF( + "0x%08X:%08X - (sc->pg_mbuf_ptr) page mbuf chain virtual address\n", + val_hi, val_lo); +#endif + BCE_PRINTF(" 0x%08X - (sc->interrupts_generated) h/w intrs\n", sc->interrupts_generated); - + BCE_PRINTF(" 0x%08X - (sc->rx_interrupts) rx interrupts handled\n", sc->rx_interrupts); @@ -7370,8 +9667,8 @@ BCE_PRINTF(" 0x%08X - (sc->tx_prod_bseq) tx producer bseq index\n", sc->tx_prod_bseq); - BCE_PRINTF(" 0x%08X - (sc->tx_mbuf_alloc) tx mbufs allocated\n", - sc->tx_mbuf_alloc); + BCE_PRINTF(" 0x%08X - (sc->debug_tx_mbuf_alloc) tx mbufs allocated\n", + sc->debug_tx_mbuf_alloc); BCE_PRINTF(" 0x%08X - (sc->used_tx_bd) used tx_bd's\n", sc->used_tx_bd); @@ -7388,23 +9685,43 @@ BCE_PRINTF(" 0x%08X - (sc->rx_prod_bseq) rx producer bseq index\n", sc->rx_prod_bseq); - BCE_PRINTF(" 0x%08X - (sc->rx_mbuf_alloc) rx mbufs allocated\n", - sc->rx_mbuf_alloc); + BCE_PRINTF(" 0x%08X - (sc->debug_rx_mbuf_alloc) rx mbufs allocated\n", + sc->debug_rx_mbuf_alloc); BCE_PRINTF(" 0x%08X - (sc->free_rx_bd) free rx_bd's\n", sc->free_rx_bd); - BCE_PRINTF("0x%08X/%08X - (sc->rx_low_watermark) rx low watermark\n", - sc->rx_low_watermark, sc->max_rx_bd); +#ifdef BCE_USE_SPLIT_HEADER + BCE_PRINTF(" 0x%04X(0x%04X) - (sc->pg_prod) page producer index\n", + sc->pg_prod, (u16) PG_CHAIN_IDX(sc->pg_prod)); + BCE_PRINTF(" 0x%04X(0x%04X) - (sc->pg_cons) page consumer index\n", + sc->pg_cons, (u16) PG_CHAIN_IDX(sc->pg_cons)); + + BCE_PRINTF(" 0x%08X - (sc->debug_pg_mbuf_alloc) page mbufs allocated\n", + sc->debug_pg_mbuf_alloc); + + BCE_PRINTF(" 0x%08X - (sc->free_pg_bd) free page rx_bd's\n", + sc->free_pg_bd); + + BCE_PRINTF("0x%08X/%08X - (sc->pg_low_watermark) page low watermark\n", + sc->pg_low_watermark, sc->max_pg_bd); +#endif + BCE_PRINTF(" 0x%08X - (sc->mbuf_alloc_failed) " "mbuf alloc failures\n", sc->mbuf_alloc_failed); - BCE_PRINTF(" 0x%08X - (sc->mbuf_sim_alloc_failed) " + BCE_PRINTF(" 0x%08X - (sc->debug_mbuf_sim_alloc_failed) " "simulated mbuf alloc failures\n", - sc->mbuf_sim_alloc_failed); + sc->debug_mbuf_sim_alloc_failed); + BCE_PRINTF(" 0x%08X - (sc->bce_flags) bce mac flags\n", + sc->bce_flags); + + BCE_PRINTF(" 0x%08X - (sc->bce_phy_flags) bce phy flags\n", + sc->bce_phy_flags); + BCE_PRINTF( "----------------------------" "----------------" @@ -7419,10 +9736,10 @@ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_hw_state(struct bce_softc *sc) { - u32 val1; + u32 val; BCE_PRINTF( "----------------------------" @@ -7431,65 +9748,75 @@ BCE_PRINTF("0x%08X - bootcode version\n", sc->bce_fw_ver); - val1 = REG_RD(sc, BCE_MISC_ENABLE_STATUS_BITS); + val = REG_RD(sc, BCE_MISC_ENABLE_STATUS_BITS); BCE_PRINTF("0x%08X - (0x%06X) misc_enable_status_bits\n", - val1, BCE_MISC_ENABLE_STATUS_BITS); + val, BCE_MISC_ENABLE_STATUS_BITS); - val1 = REG_RD(sc, BCE_DMA_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) dma_status\n", val1, BCE_DMA_STATUS); + val = REG_RD(sc, BCE_DMA_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) dma_status\n", val, BCE_DMA_STATUS); - val1 = REG_RD(sc, BCE_CTX_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) ctx_status\n", val1, BCE_CTX_STATUS); + val = REG_RD(sc, BCE_CTX_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) ctx_status\n", val, BCE_CTX_STATUS); - val1 = REG_RD(sc, BCE_EMAC_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) emac_status\n", val1, BCE_EMAC_STATUS); + val = REG_RD(sc, BCE_EMAC_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) emac_status\n", val, BCE_EMAC_STATUS); - val1 = REG_RD(sc, BCE_RPM_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) rpm_status\n", val1, BCE_RPM_STATUS); + val = REG_RD(sc, BCE_RPM_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) rpm_status\n", val, BCE_RPM_STATUS); - val1 = REG_RD(sc, BCE_TBDR_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) tbdr_status\n", val1, BCE_TBDR_STATUS); + val = REG_RD(sc, 0x2004); + BCE_PRINTF("0x%08X - (0x%06X) rlup_status\n", val, 0x2004); - val1 = REG_RD(sc, BCE_TDMA_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) tdma_status\n", val1, BCE_TDMA_STATUS); + val = REG_RD(sc, BCE_RV2P_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) rv2p_status\n", val, BCE_RV2P_STATUS); - val1 = REG_RD(sc, BCE_HC_STATUS); - BCE_PRINTF("0x%08X - (0x%06X) hc_status\n", val1, BCE_HC_STATUS); + val = REG_RD(sc, 0x2c04); + BCE_PRINTF("0x%08X - (0x%06X) rdma_status\n", val, 0x2c04); - val1 = REG_RD_IND(sc, BCE_TXP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_state\n", val1, BCE_TXP_CPU_STATE); + val = REG_RD(sc, BCE_TBDR_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) tbdr_status\n", val, BCE_TBDR_STATUS); - val1 = REG_RD_IND(sc, BCE_TPAT_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_state\n", val1, BCE_TPAT_CPU_STATE); + val = REG_RD(sc, BCE_TDMA_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) tdma_status\n", val, BCE_TDMA_STATUS); - val1 = REG_RD_IND(sc, BCE_RXP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_state\n", val1, BCE_RXP_CPU_STATE); + val = REG_RD(sc, BCE_HC_STATUS); + BCE_PRINTF("0x%08X - (0x%06X) hc_status\n", val, BCE_HC_STATUS); - val1 = REG_RD_IND(sc, BCE_COM_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) com_cpu_state\n", val1, BCE_COM_CPU_STATE); + val = REG_RD_IND(sc, BCE_TXP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_state\n", val, BCE_TXP_CPU_STATE); - val1 = REG_RD_IND(sc, BCE_MCP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) mcp_cpu_state\n", val1, BCE_MCP_CPU_STATE); + val = REG_RD_IND(sc, BCE_TPAT_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_state\n", val, BCE_TPAT_CPU_STATE); - val1 = REG_RD_IND(sc, BCE_CP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) cp_cpu_state\n", val1, BCE_CP_CPU_STATE); + val = REG_RD_IND(sc, BCE_RXP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_state\n", val, BCE_RXP_CPU_STATE); - BCE_PRINTF( + val = REG_RD_IND(sc, BCE_COM_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) com_cpu_state\n", val, BCE_COM_CPU_STATE); + + val = REG_RD_IND(sc, BCE_MCP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) mcp_cpu_state\n", val, BCE_MCP_CPU_STATE); + + val = REG_RD_IND(sc, BCE_CP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) cp_cpu_state\n", val, BCE_CP_CPU_STATE); + + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); - BCE_PRINTF( + BCE_PRINTF( "----------------------------" " Register Dump " "----------------------------\n"); - for (int i = 0x400; i < 0x8000; i += 0x10) + for (int i = 0x400; i < 0x8000; i += 0x10) { BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", i, REG_RD(sc, i), REG_RD(sc, i + 0x4), REG_RD(sc, i + 0x8), REG_RD(sc, i + 0xC)); + } - BCE_PRINTF( + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); @@ -7497,12 +9824,44 @@ /****************************************************************************/ +/* Prints out the mailbox queue registers. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_mq_regs(struct bce_softc *sc) +{ + BCE_PRINTF( + "----------------------------" + " MQ Regs " + "----------------------------\n"); + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); + + for (int i = 0x3c00; i < 0x4000; i += 0x10) { + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", + i, REG_RD(sc, i), REG_RD(sc, i + 0x4), + REG_RD(sc, i + 0x8), REG_RD(sc, i + 0xC)); + } + + BCE_PRINTF( + "----------------------------" + "----------------" + "----------------------------\n"); +} + + +/****************************************************************************/ /* Prints out the bootcode state. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void +static __attribute__ ((noinline)) void bce_dump_bc_state(struct bce_softc *sc) { u32 val; @@ -7530,7 +9889,7 @@ BCE_PRINTF("0x%08X - (0x%06X) debug_cmd\n", val, BCE_BC_STATE_DEBUG_CMD); - BCE_PRINTF( + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); @@ -7538,44 +9897,53 @@ /****************************************************************************/ -/* Prints out the TXP state. */ +/* Prints out the TXP processor state. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_txp_state(struct bce_softc *sc) +static __attribute__ ((noinline)) void +bce_dump_txp_state(struct bce_softc *sc, int regs) { - u32 val1; + u32 val; + u32 fw_version[3]; BCE_PRINTF( "----------------------------" " TXP State " "----------------------------\n"); - val1 = REG_RD_IND(sc, BCE_TXP_CPU_MODE); - BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_mode\n", val1, BCE_TXP_CPU_MODE); + for (int i = 0; i < 3; i++) + fw_version[i] = htonl(REG_RD_IND(sc, + (BCE_TXP_SCRATCH + 0x10 + i * 4))); + BCE_PRINTF("Firmware version - %s\n", (char *) fw_version); - val1 = REG_RD_IND(sc, BCE_TXP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_state\n", val1, BCE_TXP_CPU_STATE); + val = REG_RD_IND(sc, BCE_TXP_CPU_MODE); + BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_mode\n", val, BCE_TXP_CPU_MODE); - val1 = REG_RD_IND(sc, BCE_TXP_CPU_EVENT_MASK); - BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_event_mask\n", val1, BCE_TXP_CPU_EVENT_MASK); + val = REG_RD_IND(sc, BCE_TXP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_state\n", val, BCE_TXP_CPU_STATE); - BCE_PRINTF( - "----------------------------" - " Register Dump " - "----------------------------\n"); + val = REG_RD_IND(sc, BCE_TXP_CPU_EVENT_MASK); + BCE_PRINTF("0x%08X - (0x%06X) txp_cpu_event_mask\n", val, + BCE_TXP_CPU_EVENT_MASK); - for (int i = BCE_TXP_CPU_MODE; i < 0x68000; i += 0x10) { - /* Skip the big blank spaces */ - if (i < 0x454000 && i > 0x5ffff) - BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", - i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), - REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + if (regs) { + BCE_PRINTF( + "----------------------------" + " Register Dump " + "----------------------------\n"); + + for (int i = BCE_TXP_CPU_MODE; i < 0x68000; i += 0x10) { + /* Skip the big blank spaces */ + if (i < 0x454000 && i > 0x5ffff) + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", + i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), + REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + } } - BCE_PRINTF( + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); @@ -7583,44 +9951,107 @@ /****************************************************************************/ -/* Prints out the RXP state. */ +/* Prints out the RXP processor state. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_rxp_state(struct bce_softc *sc) +static __attribute__ ((noinline)) void +bce_dump_rxp_state(struct bce_softc *sc, int regs) { - u32 val1; + u32 val; + u32 fw_version[3]; BCE_PRINTF( "----------------------------" " RXP State " "----------------------------\n"); - val1 = REG_RD_IND(sc, BCE_RXP_CPU_MODE); - BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_mode\n", val1, BCE_RXP_CPU_MODE); + for (int i = 0; i < 3; i++) + fw_version[i] = htonl(REG_RD_IND(sc, + (BCE_RXP_SCRATCH + 0x10 + i * 4))); + BCE_PRINTF("Firmware version - %s\n", (char *) fw_version); - val1 = REG_RD_IND(sc, BCE_RXP_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_state\n", val1, BCE_RXP_CPU_STATE); + val = REG_RD_IND(sc, BCE_RXP_CPU_MODE); + BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_mode\n", val, BCE_RXP_CPU_MODE); - val1 = REG_RD_IND(sc, BCE_RXP_CPU_EVENT_MASK); - BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_event_mask\n", val1, BCE_RXP_CPU_EVENT_MASK); + val = REG_RD_IND(sc, BCE_RXP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_state\n", val, BCE_RXP_CPU_STATE); - BCE_PRINTF( + val = REG_RD_IND(sc, BCE_RXP_CPU_EVENT_MASK); + BCE_PRINTF("0x%08X - (0x%06X) rxp_cpu_event_mask\n", val, + BCE_RXP_CPU_EVENT_MASK); + + if (regs) { + BCE_PRINTF( + "----------------------------" + " Register Dump " + "----------------------------\n"); + + for (int i = BCE_RXP_CPU_MODE; i < 0xe8fff; i += 0x10) { + /* Skip the big blank sapces */ + if (i < 0xc5400 && i > 0xdffff) + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", + i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), + REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + } + } + + BCE_PRINTF( "----------------------------" - " Register Dump " + "----------------" "----------------------------\n"); +} - for (int i = BCE_RXP_CPU_MODE; i < 0xe8fff; i += 0x10) { - /* Skip the big blank sapces */ - if (i < 0xc5400 && i > 0xdffff) - BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", - i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), - REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + +/****************************************************************************/ +/* Prints out the TPAT processor state. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_tpat_state(struct bce_softc *sc, int regs) +{ + u32 val; + u32 fw_version[3]; + + BCE_PRINTF( + "----------------------------" + " TPAT State " + "----------------------------\n"); + + for (int i = 0; i < 3; i++) + fw_version[i] = htonl(REG_RD_IND(sc, + (BCE_TPAT_SCRATCH + 0x410 + i * 4))); + BCE_PRINTF("Firmware version - %s\n", (char *) fw_version); + + val = REG_RD_IND(sc, BCE_TPAT_CPU_MODE); + BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_mode\n", val, BCE_TPAT_CPU_MODE); + + val = REG_RD_IND(sc, BCE_TPAT_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_state\n", val, BCE_TPAT_CPU_STATE); + + val = REG_RD_IND(sc, BCE_TPAT_CPU_EVENT_MASK); + BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_event_mask\n", val, + BCE_TPAT_CPU_EVENT_MASK); + + if (regs) { + BCE_PRINTF( + "----------------------------" + " Register Dump " + "----------------------------\n"); + + for (int i = BCE_TPAT_CPU_MODE; i < 0xa3fff; i += 0x10) { + /* Skip the big blank spaces */ + if (i < 0x854000 && i > 0x9ffff) + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", + i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), + REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + } } - BCE_PRINTF( + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); @@ -7628,44 +10059,105 @@ /****************************************************************************/ -/* Prints out the TPAT state. */ +/* Prints out the Command Procesor (CP) state. */ /* */ /* Returns: */ /* Nothing. */ /****************************************************************************/ -static void -bce_dump_tpat_state(struct bce_softc *sc) +static __attribute__ ((noinline)) void +bce_dump_cp_state(struct bce_softc *sc, int regs) { - u32 val1; + u32 val; + u32 fw_version[3]; BCE_PRINTF( "----------------------------" - " TPAT State " + " CP State " "----------------------------\n"); - val1 = REG_RD_IND(sc, BCE_TPAT_CPU_MODE); - BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_mode\n", val1, BCE_TPAT_CPU_MODE); + for (int i = 0; i < 3; i++) + fw_version[i] = htonl(REG_RD_IND(sc, + (BCE_CP_SCRATCH + 0x10 + i * 4))); + BCE_PRINTF("Firmware version - %s\n", (char *) fw_version); - val1 = REG_RD_IND(sc, BCE_TPAT_CPU_STATE); - BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_state\n", val1, BCE_TPAT_CPU_STATE); + val = REG_RD_IND(sc, BCE_CP_CPU_MODE); + BCE_PRINTF("0x%08X - (0x%06X) cp_cpu_mode\n", val, BCE_CP_CPU_MODE); - val1 = REG_RD_IND(sc, BCE_TPAT_CPU_EVENT_MASK); - BCE_PRINTF("0x%08X - (0x%06X) tpat_cpu_event_mask\n", val1, BCE_TPAT_CPU_EVENT_MASK); + val = REG_RD_IND(sc, BCE_CP_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) cp_cpu_state\n", val, BCE_CP_CPU_STATE); - BCE_PRINTF( + val = REG_RD_IND(sc, BCE_CP_CPU_EVENT_MASK); + BCE_PRINTF("0x%08X - (0x%06X) cp_cpu_event_mask\n", val, + BCE_CP_CPU_EVENT_MASK); + + if (regs) { + BCE_PRINTF( + "----------------------------" + " Register Dump " + "----------------------------\n"); + + for (int i = BCE_CP_CPU_MODE; i < 0x1aa000; i += 0x10) { + /* Skip the big blank spaces */ + if (i < 0x185400 && i > 0x19ffff) + BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", + i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), + REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + } + } + + BCE_PRINTF( "----------------------------" - " Register Dump " + "----------------" "----------------------------\n"); +} - for (int i = BCE_TPAT_CPU_MODE; i < 0xa3fff; i += 0x10) { - /* Skip the big blank spaces */ - if (i < 0x854000 && i > 0x9ffff) + +/****************************************************************************/ +/* Prints out the Completion Procesor (COM) state. */ +/* */ +/* Returns: */ +/* Nothing. */ +/****************************************************************************/ +static __attribute__ ((noinline)) void +bce_dump_com_state(struct bce_softc *sc, int regs) +{ + u32 val; + u32 fw_version[3]; + + BCE_PRINTF( + "----------------------------" + " COM State " + "----------------------------\n"); + + for (int i = 0; i < 3; i++) + fw_version[i] = htonl(REG_RD_IND(sc, + (BCE_COM_SCRATCH + 0x10 + i * 4))); + BCE_PRINTF("Firmware version - %s\n", (char *) fw_version); + + val = REG_RD_IND(sc, BCE_COM_CPU_MODE); + BCE_PRINTF("0x%08X - (0x%06X) com_cpu_mode\n", val, BCE_COM_CPU_MODE); + + val = REG_RD_IND(sc, BCE_COM_CPU_STATE); + BCE_PRINTF("0x%08X - (0x%06X) com_cpu_state\n", val, BCE_COM_CPU_STATE); + + val = REG_RD_IND(sc, BCE_COM_CPU_EVENT_MASK); + BCE_PRINTF("0x%08X - (0x%06X) com_cpu_event_mask\n", val, + BCE_COM_CPU_EVENT_MASK); + + if (regs) { + BCE_PRINTF( + "----------------------------" + " Register Dump " + "----------------------------\n"); + + for (int i = BCE_COM_CPU_MODE; i < 0x1053e8; i += 0x10) { BCE_PRINTF("0x%04X: 0x%08X 0x%08X 0x%08X 0x%08X\n", i, REG_RD_IND(sc, i), REG_RD_IND(sc, i + 0x4), REG_RD_IND(sc, i + 0x8), REG_RD_IND(sc, i + 0xC)); + } } - BCE_PRINTF( + BCE_PRINTF( "----------------------------" "----------------" "----------------------------\n"); @@ -7682,34 +10174,42 @@ bce_breakpoint(struct bce_softc *sc) { - /* Unreachable code to shut the compiler up about unused functions. */ + /* + * Unreachable code to silence compiler warnings + * about unused functions. + */ if (0) { bce_freeze_controller(sc); bce_unfreeze_controller(sc); + bce_dump_enet(sc, NULL); bce_dump_txbd(sc, 0, NULL); bce_dump_rxbd(sc, 0, NULL); bce_dump_tx_mbuf_chain(sc, 0, USABLE_TX_BD); - bce_dump_rx_mbuf_chain(sc, 0, sc->max_rx_bd); + bce_dump_rx_mbuf_chain(sc, 0, USABLE_RX_BD); bce_dump_l2fhdr(sc, 0, NULL); + bce_dump_ctx(sc, RX_CID); + bce_dump_ftqs(sc); bce_dump_tx_chain(sc, 0, USABLE_TX_BD); - bce_dump_rx_chain(sc, 0, sc->max_rx_bd); + bce_dump_rx_chain(sc, 0, USABLE_RX_BD); bce_dump_status_block(sc); bce_dump_stats_block(sc); bce_dump_driver_state(sc); bce_dump_hw_state(sc); bce_dump_bc_state(sc); - bce_dump_txp_state(sc); - bce_dump_rxp_state(sc); - bce_dump_tpat_state(sc); + bce_dump_txp_state(sc, 0); + bce_dump_rxp_state(sc, 0); + bce_dump_tpat_state(sc, 0); + bce_dump_cp_state(sc, 0); + bce_dump_com_state(sc, 0); +#ifdef BCE_USE_SPLIT_HEADER + bce_dump_pgbd(sc, 0, NULL); + bce_dump_pg_mbuf_chain(sc, 0, USABLE_PG_BD); + bce_dump_pg_chain(sc, 0, USABLE_PG_BD); +#endif } -/* bce_freeze_controller(sc); */ + bce_dump_status_block(sc); bce_dump_driver_state(sc); - bce_dump_status_block(sc); - bce_dump_tx_chain(sc, 0, TOTAL_TX_BD); - bce_dump_hw_state(sc); - bce_dump_txp_state(sc); -/* bce_unfreeze_controller(sc); */ /* Call the debugger. */ breakpoint(); Index: dev/bce/if_bcefw.h =================================================================== --- dev/bce/if_bcefw.h (revision 184569) +++ dev/bce/if_bcefw.h (working copy) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2006-2007 Broadcom Corporation + * Copyright (c) 2006-2008 Broadcom Corporation * David Christensen . All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,2073 +31,1320 @@ /* * This file contains firmware data derived from proprietary unpublished - * source code, Copyright (c) 2004, 2005 Broadcom Corporation. + * source code, Copyright (c) 2004, 2005, 2007, 2008 Broadcom Corporation. * * Permission is hereby granted for the distribution of this firmware data * in hexadecimal or equivalent format, provided this copyright notice is * accompanying it. */ -/* Firmware release 3.4.8 */ - -static int bce_COM_b06FwReleaseMajor = 0x1; -static int bce_COM_b06FwReleaseMinor = 0x0; -static int bce_COM_b06FwReleaseFix = 0x0; -static u32 bce_COM_b06FwStartAddr = 0x080000b4; -static u32 bce_COM_b06FwTextAddr = 0x08000000; -static int bce_COM_b06FwTextLen = 0x7d28; -static u32 bce_COM_b06FwDataAddr = 0x08007de0; -static int bce_COM_b06FwDataLen = 0x0; -static u32 bce_COM_b06FwRodataAddr = 0x08007d28; -static int bce_COM_b06FwRodataLen = 0x88; -static u32 bce_COM_b06FwBssAddr = 0x08007e40; -static int bce_COM_b06FwBssLen = 0x88; -static u32 bce_COM_b06FwSbssAddr = 0x08007de0; -static int bce_COM_b06FwSbssLen = 0x60; -/* static u32 bce_COM_b06FwSDataAddr = 0x00000000; */ -/* static int bce_COM_b06FwSDataLen = 0x0; */ -static u32 bce_COM_b06FwText[(0x7d28/4) + 1] = { -0xa00002d, -0x0, 0x0, 0xd, 0x636f6d20, -0x332e342e, 0x38000000, 0x3040802, 0x0, +/* Firmware release 4.4.17 for BCM5706 and BCM5708 (b06). */ +/* Firmware release 4.4.21 for BCM5709 and BCM5716 (b09). */ +int bce_COM_b06FwReleaseMajor = 0x1; +int bce_COM_b06FwReleaseMinor = 0x0; +int bce_COM_b06FwReleaseFix = 0x0; +u32 bce_COM_b06FwStartAddr = 0x080000f8; +u32 bce_COM_b06FwTextAddr = 0x08000000; +int bce_COM_b06FwTextLen = 0x4e94; +u32 bce_COM_b06FwDataAddr = 0x00000000; +int bce_COM_b06FwDataLen = 0x0; +u32 bce_COM_b06FwRodataAddr = 0x08004e94; +int bce_COM_b06FwRodataLen = 0x14; +u32 bce_COM_b06FwBssAddr = 0x08004ef8; +int bce_COM_b06FwBssLen = 0xbc; +u32 bce_COM_b06FwSbssAddr = 0x08004ec0; +int bce_COM_b06FwSbssLen = 0x38; +u32 bce_COM_b06FwSDataAddr = 0x00000000; +int bce_COM_b06FwSDataLen = 0x0; +u32 bce_COM_b06FwText[(0x4e94/4) + 1] = { +0xa00003e, +0x0, 0x0, 0xd, 0x636f6d34, +0x2e342e31, 0x37000000, 0x4041102, 0x0, 0x3, 0x14, 0x32, 0x3, 0x0, 0x0, 0x0, 0x0, -0x0, 0x10, 0xe6, 0xea60, +0x0, 0x10, 0x136, 0xea60, 0x1, 0x0, 0x0, 0x0, +0x8, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0xffff, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0x2, 0x20, 0x0, +0x0, 0x2, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0x10000003, 0x0, 0xd, -0xd, 0x3c020800, 0x24427de0, 0x3c030800, -0x24637ec8, 0xac400000, 0x43202b, 0x1480fffd, -0x24420004, 0x3c1d0800, 0x37bd7ffc, 0x3a0f021, -0x3c100800, 0x261000b4, 0x3c1c0800, 0x279c7de0, -0xe000142, 0x0, 0xd, 0x27bdffe8, -0x3c1a8000, 0x3c020008, 0x342d825, 0x3c036010, -0xafbf0010, 0x8c645000, 0x3c080800, 0x25070888, -0x3c050800, 0x24a67e40, 0x2402ff7f, 0x822024, -0x3484380c, 0xac645000, 0x2021, 0x24020037, -0x24030c80, 0xaf420008, 0xaf430024, 0xacc70000, -0x24840001, 0x2c820016, 0x1440fffc, 0x24c60004, -0x24a57e40, 0x3c020800, 0x24420894, 0x3c030800, -0x24630784, 0xaca20004, 0x3c020800, 0x2442025c, -0x3c040800, 0x24840abc, 0xaca2000c, 0x3c020800, -0x24424074, 0xaca30008, 0x3c030800, 0x246331dc, -0xaca20014, 0x3c020800, 0x2442373c, 0xaca30018, -0xaca3001c, 0x3c030800, 0x24636d6c, 0xaca20024, -0x3c020800, 0x24420404, 0xaca30028, 0x3c030800, -0x24633f98, 0xaca2002c, 0x3c020800, 0x24423fb8, -0xaca30030, 0x3c030800, 0x2463590c, 0xaca20034, -0x3c020800, 0x24423ebc, 0xaca30038, 0x3c030800, -0x24633884, 0xaca40010, 0xaca40020, 0x25040888, -0xaca2003c, 0x3c020800, 0x2442089c, 0xaca30040, -0xaca40044, 0xaca40048, 0xaca4004c, 0xe000faa, -0xaca20050, 0xe001bf0, 0x0, 0x8fbf0010, -0x3e00008, 0x27bd0018, 0x27bdffe0, 0xafb00010, -0x27500100, 0xafbf0018, 0xafb10014, 0x9203000b, -0x24020003, 0x1462005b, 0x96110008, 0x32220001, -0x10400009, 0x27430080, 0x8e020000, 0x96040014, -0x211c2, 0x21040, 0x621821, 0xa4640000, -0xa0000dc, 0x3c020800, 0x3c020800, 0x8c430020, -0x1060002a, 0x3c030800, 0xe001d7b, 0x0, -0x97420108, 0x8f850054, 0x9743010c, 0x3042003e, -0x21400, 0x621825, 0xaca30000, 0x8f840054, -0x8f420100, 0xac820004, 0x97430116, 0x9742010e, -0x8f840054, 0x31c00, 0x431025, 0xac820008, -0x97430110, 0x97440112, 0x8f850054, 0x31c00, -0x832025, 0xaca4000c, 0x97420114, 0x8f840054, -0x3042ffff, 0xac820010, 0x8f830054, 0xac600014, -0x8f820054, 0x3c030800, 0xac400018, 0x94627eae, -0x8f840054, 0x3c032000, 0x431025, 0xac82001c, -0xe001db5, 0x24040001, 0x3c030800, 0x8c620040, -0x24420001, 0xac620040, 0x3c020800, 0x8c430044, -0x32240004, 0x24630001, 0x10800017, 0xac430044, -0x8f4202b8, 0x4430007, 0x8e020020, 0x3c040800, -0x8c830060, 0x24020001, 0x24630001, 0xa0000fc, -0xac830060, 0x3c060800, 0x8cc4005c, 0xaf420280, -0x96030016, 0x1021, 0xa7430284, 0x8e050004, -0x24840001, 0x3c031000, 0xaf450288, 0xaf4302b8, -0xa0000fc, 0xacc4005c, 0x32220002, 0xa0000fc, -0x2102b, 0xd, 0x1021, 0x8fbf0018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x27440100, 0x94830008, 0x30620004, 0x10400017, -0x30620002, 0x8f4202b8, 0x4430007, 0x8c820020, -0x3c040800, 0x8c830060, 0x24020001, 0x24630001, -0x3e00008, 0xac830060, 0xaf420280, 0x94830016, -0x3c060800, 0xa7430284, 0x8c850004, 0x8cc4005c, -0x1021, 0x3c031000, 0x24840001, 0xaf450288, -0xaf4302b8, 0x3e00008, 0xacc4005c, 0x10400013, -0x0, 0x8f440100, 0x8f830010, 0x8f420104, -0x1062000c, 0x38830180, 0x3182b, 0x38820100, -0x2102b, 0x621824, 0x10600006, 0x3c020800, -0x8c430084, 0x8f440104, 0x24630001, 0xac430084, -0xaf840010, 0x3e00008, 0x24020001, 0x8f440100, -0x8f830010, 0x8f420104, 0x1062000c, 0x38830180, -0x3182b, 0x38820100, 0x2102b, 0x621824, -0x10600006, 0x3c020800, 0x8c430084, 0x8f440104, -0x24630001, 0xac430084, 0xaf840010, 0x3e00008, -0x1021, 0x27bdffc8, 0xafbf0034, 0xafbe0030, -0xafb7002c, 0xafb60028, 0xafb50024, 0xafb40020, -0xafb3001c, 0xafb20018, 0xafb10014, 0xe000044, -0xafb00010, 0x3c170800, 0x3c160800, 0x24120020, -0x24110030, 0x2795000c, 0x27940008, 0x3c134000, -0x3c1e0800, 0x8f820004, 0x3c040800, 0x8c830020, -0x10430005, 0x8ee200a4, 0xaf830004, 0xe001e72, -0x0, 0x8ee200a4, 0x8ec300a0, 0x10430004, -0x26c400a0, 0x94820002, 0xa742009e, 0xaee300a4, -0x8f500000, 0x32020007, 0x1040ffee, 0x32020001, -0x1040002c, 0x32020002, 0x8f420100, 0xaf420020, -0x8f430104, 0xaf4300a8, 0x9342010b, 0x93630000, -0x306300ff, 0x10720005, 0x304400ff, 0x10710006, -0x2c820016, 0xa00017e, 0x0, 0xaf950000, -0xa00017f, 0x2c820016, 0xaf940000, 0xa00017f, -0x0, 0xaf800000, 0x14400005, 0x41880, -0xe000222, 0x0, 0xa00018b, 0x0, -0x3c020800, 0x24427e40, 0x621821, 0x8c620000, -0x40f809, 0x0, 0x10400005, 0x3c030800, -0x8f420104, 0x3c016020, 0xac220014, 0x3c030800, -0x8c620034, 0xaf530138, 0x24420001, 0xac620034, -0x32020002, 0x1040001a, 0x32020004, 0x8f420140, -0xaf420020, 0x93630000, 0x306300ff, 0x10720005, -0x0, 0x10710006, 0x0, 0xa0001a8, -0x0, 0xaf950000, 0xa0001a9, 0x0, -0xaf940000, 0xa0001a9, 0x0, 0xaf800000, -0xe000ac1, 0x0, 0x3c040800, 0x8c820038, -0xaf530178, 0x24420001, 0xac820038, 0x32020004, -0x1040ffa4, 0x0, 0x8f420180, 0xaf420020, -0x93630000, 0x306300ff, 0x10720005, 0x0, -0x10710006, 0x0, 0xa0001c3, 0x0, -0xaf950000, 0xa0001c4, 0x0, 0xaf940000, -0xa0001c4, 0x0, 0xaf800000, 0x8f430180, -0x24020f00, 0x14620005, 0x0, 0x8f420188, -0xa742009c, 0xa0001dd, 0x8fc2003c, 0x93620000, -0x14520005, 0x0, 0xe000a38, 0x0, -0xa0001dd, 0x8fc2003c, 0x93620000, 0x14510008, -0x8fc2003c, 0xe000a38, 0x0, 0x14400004, -0x8fc2003c, 0xe0019c0, 0x0, 0x8fc2003c, -0xaf5301b8, 0x24420001, 0xa000156, 0xafc2003c, -0x27bdffe8, 0xafbf0010, 0x97420108, 0x24033000, -0x30447000, 0x10830016, 0x28823001, 0x10400007, -0x24024000, 0x1080000b, 0x24022000, 0x1082000c, -0x0, 0xa000209, 0x0, 0x10820010, -0x24025000, 0x10820012, 0x0, 0xa000209, -0x0, 0xd, 0xa00020b, 0x1021, -0xe000272, 0x0, 0xa00020c, 0x8fbf0010, -0xe00024c, 0x0, 0xa00020b, 0x1021, -0xe000442, 0x0, 0xa00020b, 0x1021, -0xe001bc5, 0x0, 0xa00020b, 0x1021, -0xd, 0x1021, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x93620000, 0x24030020, 0x304400ff, -0x10830005, 0x24020030, 0x10820007, 0x0, -0xa00021f, 0x0, 0x2782000c, 0xaf820000, -0x3e00008, 0x0, 0x27820008, 0xaf820000, -0x3e00008, 0x0, 0xaf800000, 0x3e00008, -0x0, 0xd, 0x3e00008, 0x1021, -0x3e00008, 0x1021, 0x27450100, 0x3c040800, -0x8c820088, 0x94a3000c, 0x24420001, 0x7a1821, -0xac820088, 0x8ca40018, 0x90664000, 0xaf440038, -0x8ca2001c, 0x2403fff8, 0x63600, 0x431024, -0x34420004, 0x3c030005, 0xaf42003c, 0xaf430030, -0x0, 0x0, 0x0, 0xaf460404, +0x0, 0x0, 0x0, 0x10, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x10000003, 0x0, +0xd, 0xd, 0x3c020800, 0x24424ec0, +0x3c030800, 0x24634fb4, 0xac400000, 0x43202b, +0x1480fffd, 0x24420004, 0x3c1d0800, 0x37bd7ffc, +0x3a0f021, 0x3c100800, 0x261000f8, 0x3c1c0800, +0x279c4ec0, 0xe0002a8, 0x0, 0xd, +0x3c036010, 0x8c645000, 0x2402ff7f, 0x3c1a8000, +0x822024, 0x3484380c, 0x24020037, 0xac645000, +0xaf420008, 0x24020c80, 0xaf420024, 0x3c1b8008, +0x3c060800, 0x24c60794, 0x3c020800, 0x24424ef8, +0x2404001b, 0x2484ffff, 0xac460000, 0x481fffd, +0x24420004, 0x3c020800, 0x24420378, 0x3c010800, +0xac224f00, 0x3c020800, 0x24420678, 0x3c010800, +0xac224f04, 0x3c020800, 0x24420a08, 0x3c030800, +0x24630900, 0x3c040800, 0x2484093c, 0x3c050800, +0x24a53d98, 0x3c010800, 0xac224f48, 0x3c020800, +0x24420568, 0x3c010800, 0xac264f44, 0x3c010800, +0xac254f54, 0x3c010800, 0xac234f5c, 0x3c010800, +0xac224f60, 0x3c010800, 0xac244f64, 0x3c010800, +0xac234efc, 0x3c010800, 0xac204f08, 0x3c010800, +0xac204f0c, 0x3c010800, 0xac204f10, 0x3c010800, +0xac204f14, 0x3c010800, 0xac204f18, 0x3c010800, +0xac204f1c, 0x3c010800, 0xac204f20, 0x3c010800, +0xac244f24, 0x3c010800, 0xac204f28, 0x3c010800, +0xac204f2c, 0x3c010800, 0xac204f30, 0x3c010800, +0xac204f34, 0x3c010800, 0xac204f38, 0x3c010800, +0xac264f3c, 0x3c010800, 0xac264f40, 0x3c010800, +0xac204f4c, 0x3c010800, 0xac254f50, 0x3c010800, +0xac234f58, 0xa000751, 0x0, 0x3c030800, +0x8c630020, 0x8f820008, 0x10430003, 0x0, +0xa00055d, 0xaf830008, 0x3e00008, 0x0, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x27500100, +0x92020009, 0x1040001a, 0x24030001, 0x3c020800, +0x8c420020, 0x10400016, 0x1821, 0xe00059b, +0x0, 0x96030008, 0x3c060800, 0x94c64f76, +0x8e040018, 0x8f820020, 0x9605000c, 0x31c00, +0x661825, 0xac440000, 0xac450004, 0x24040001, +0xac400008, 0xac40000c, 0xac400010, 0xac400014, +0xac400018, 0xe0005d3, 0xac43001c, 0x1821, +0x8fbf0014, 0x8fb00010, 0x601021, 0x3e00008, +0x27bd0018, 0x27bdffe8, 0xafbf0010, 0x97420108, +0x30437000, 0x24022000, 0x1062000a, 0x28642001, +0x54800012, 0x8fbf0010, 0x24024000, 0x10620008, +0x24026000, 0x1062000a, 0x8fbf0010, 0xa0000f9, +0x1021, 0x8fbf0010, 0xa0000b9, 0x27bd0018, +0xe0004c3, 0x0, 0xa0000f8, 0x8fbf0010, +0xe000ff5, 0x0, 0x8fbf0010, 0x1021, +0x3e00008, 0x27bd0018, 0x3c020800, 0x8c420020, +0x27bdffe8, 0x10400027, 0xafbf0010, 0xe00059b, +0x0, 0x97420108, 0x9743010c, 0x8f850020, +0x3042003e, 0x3063ffff, 0x21400, 0x431025, +0xaca20000, 0x8f420100, 0x3c060800, 0x94c64f76, +0x8fbf0010, 0xaca20004, 0x97430116, 0x9744010e, +0x3c022000, 0x31c00, 0x3084ffff, 0x641825, +0xaca30008, 0xc23025, 0x97420110, 0x97430112, +0x24040001, 0x21400, 0x3063ffff, 0x431025, +0xaca2000c, 0x97420114, 0x27bd0018, 0x3042ffff, +0xaca20010, 0xaca00014, 0xaca00018, 0xa0005d3, +0xaca6001c, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x3c020800, 0x8c420020, 0x27bdffe8, 0x1040002a, +0xafbf0010, 0xe00059b, 0x0, 0x97420108, +0x9743010c, 0x8f850020, 0x3042003e, 0x3063ffff, +0x21400, 0x431025, 0xaca20000, 0x8f420100, +0x3c060800, 0x94c64f76, 0x8fbf0010, 0xaca20004, +0x97430116, 0x9744010e, 0x3c022000, 0x31c00, +0x3084ffff, 0x641825, 0xaca30008, 0xc23025, +0x97420110, 0x97430112, 0x24040001, 0x21400, +0x3063ffff, 0x431025, 0xaca2000c, 0x97420114, +0x27bd0018, 0x3042ffff, 0xaca20010, 0x8f420118, +0xaca20014, 0x9342010b, 0x304200ff, 0xaca20018, +0xa0005d3, 0xaca6001c, 0x8fbf0010, 0x3e00008, +0x27bd0018, 0x27bdffe0, 0xafb00010, 0xafbf0018, +0xafb10014, 0x27500100, 0x9203000b, 0x2402001a, +0x96110008, 0x14620035, 0x2021, 0x32220001, +0x10400009, 0x0, 0x8e020000, 0x96030014, +0x211c2, 0x21040, 0x5a1021, 0xa4430080, +0xa000177, 0x32220002, 0xe000129, 0x0, +0x3c020800, 0x8c420040, 0x24420001, 0x3c010800, +0xac220040, 0x32220002, 0x2202b, 0x3c020800, +0x8c420044, 0x32230004, 0x24420001, 0x3c010800, +0xac220044, 0x1060001a, 0x8fbf0018, 0x8f4202b8, +0x4410008, 0x24040001, 0x3c020800, 0x8c420060, +0x24420001, 0x3c010800, 0xac220060, 0xa00019a, +0x8fb10014, 0x8e020020, 0x96030016, 0x2021, +0xaf420280, 0x8e020004, 0xa7430284, 0xaf420288, +0x3c021000, 0xaf4202b8, 0x3c020800, 0x8c42005c, +0x24420001, 0x3c010800, 0xac22005c, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0020, 0x27bdffe0, 0xafb00010, 0xafbf0018, +0xafb10014, 0x27500100, 0x9203000b, 0x24020003, +0x96110008, 0x14620035, 0x2021, 0x32220001, +0x10400009, 0x0, 0x8e020000, 0x96030014, +0x211c2, 0x21040, 0x5a1021, 0xa4430080, +0xa0001bb, 0x32220002, 0xe0000fb, 0x0, +0x3c020800, 0x8c420040, 0x24420001, 0x3c010800, +0xac220040, 0x32220002, 0x2202b, 0x3c020800, +0x8c420044, 0x32230004, 0x24420001, 0x3c010800, +0xac220044, 0x1060001a, 0x8fbf0018, 0x8f4202b8, +0x4410008, 0x24040001, 0x3c020800, 0x8c420060, +0x24420001, 0x3c010800, 0xac220060, 0xa0001de, +0x8fb10014, 0x8e020020, 0x96030016, 0x2021, +0xaf420280, 0x8e020004, 0xa7430284, 0xaf420288, +0x3c021000, 0xaf4202b8, 0x3c020800, 0x8c42005c, +0x24420001, 0x3c010800, 0xac22005c, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0020, 0x93620000, 0x3e00008, 0xaf800004, +0x3e00008, 0x1021, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0x8f420100, 0xaf420020, 0x8f420104, +0xaf4200a8, 0x9350010b, 0xe0001e2, 0x321000ff, +0x3c020800, 0x24424ef8, 0x101880, 0x2e10001c, +0x16000004, 0x621021, 0xe0001e5, 0xa0001fd, +0x0, 0x8c420000, 0x40f809, 0x0, +0x10400005, 0x3c024000, 0x8f430104, 0x3c026020, +0xac430014, 0x3c024000, 0xaf420138, 0x3c020800, +0x8c420034, 0x8fbf0014, 0x8fb00010, 0x24420001, +0x3c010800, 0xac220034, 0x3e00008, 0x27bd0018, +0x27bdffe8, 0xafbf0010, 0x8f420140, 0xe0001e2, +0xaf420020, 0xe000380, 0x0, 0x3c024000, +0xaf420178, 0x3c030800, 0x24630038, 0x8c620000, +0x8fbf0010, 0x27bd0018, 0x24420001, 0x3e00008, +0xac620000, 0x27bdffe8, 0xafbf0010, 0x8f420180, +0xe0001e2, 0xaf420020, 0x8f430180, 0x24020f00, +0x14620005, 0x0, 0x8f420188, 0xa742009c, +0xa000237, 0x3c024000, 0x93620000, 0x24030050, +0x304200ff, 0x14430008, 0x3c024000, 0xe00035e, +0x0, 0x14400004, 0x3c024000, 0xe000e9f, +0x0, 0x3c024000, 0xaf4201b8, 0x3c020800, +0x8c42003c, 0x8fbf0010, 0x24420001, 0x3c010800, +0xac22003c, 0x3e00008, 0x27bd0018, 0x3e00008, +0x1021, 0x8f430104, 0x8f820010, 0x10430008, +0x0, 0x3c020800, 0x8c420084, 0x24420001, +0x3c010800, 0xac220084, 0x8f420104, 0xaf820010, +0x3e00008, 0x0, 0x27bdffe8, 0xafbf0010, +0x27440100, 0x94820008, 0x30430002, 0x30420004, +0x1040001b, 0x0, 0x8f4202b8, 0x4410008, +0x24050001, 0x3c020800, 0x8c420060, 0x24420001, +0x3c010800, 0xac220060, 0xa00027f, 0x8fbf0010, +0x8c820020, 0x94830016, 0x2821, 0xaf420280, +0x8c820004, 0xa7430284, 0xaf420288, 0x3c021000, +0xaf4202b8, 0x3c020800, 0x8c42005c, 0x24420001, +0x3c010800, 0xac22005c, 0xa00027f, 0x8fbf0010, +0x10600008, 0x24050001, 0x3c020800, 0x8c420084, +0x24420001, 0x3c010800, 0xac220084, 0xa00027f, +0x8fbf0010, 0x8f440100, 0xe000242, 0x0, +0x2821, 0x8fbf0010, 0xa01021, 0x3e00008, +0x27bd0018, 0x3c020800, 0x8c420088, 0x27430100, +0x9465000c, 0x24420001, 0x3c010800, 0xac220088, +0x8c640018, 0x3451021, 0x90454000, 0xaf440038, +0x8c62001c, 0x2403fff8, 0x52e00, 0x431024, +0x34420004, 0xaf42003c, 0x3c020005, 0xaf420030, +0x0, 0x0, 0x0, 0xaf450404, 0x0, 0x0, 0x0, 0x3c020006, 0x34420001, 0xaf420030, 0x0, 0x0, 0x0, 0x8f420000, 0x30420010, 0x1040fffd, -0x1021, 0x3e00008, 0x0, 0x3c020800, -0x8c430020, 0x27bdffe8, 0xafb00010, 0x27500100, -0x1060001c, 0xafbf0014, 0xe001d7b, 0x0, -0x8f830054, 0x8e020018, 0xac620000, 0x8f840054, -0x9602000c, 0xac820004, 0x8f830054, 0xac600008, -0x8f820054, 0xac40000c, 0x8f830054, 0xac600010, -0x8f820054, 0xac400014, 0x8f830054, 0xac600018, -0x96020008, 0x3c030800, 0x94647eae, 0x8f850054, -0x21400, 0x441025, 0x24040001, 0xe001db5, -0xaca2001c, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0xafb00010, 0x27500100, -0xafbf0014, 0x92020009, 0x14400003, 0x3c020800, -0xa00029a, 0x24020001, 0x8c430020, 0x1060001d, -0x1021, 0xe001d7b, 0x0, 0x8f830054, -0x8e020018, 0xac620000, 0x8f840054, 0x9602000c, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac400014, 0x8f830054, 0xac600018, 0x96020008, -0x3c030800, 0x94647eae, 0x8f850054, 0x21400, -0x441025, 0x24040001, 0xe001db5, 0xaca2001c, -0x1021, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x8f830010, 0x8f420104, 0x1062000c, -0x38830180, 0x3182b, 0x38820100, 0x2102b, -0x621824, 0x10600006, 0x3c020800, 0x8c430084, -0x8f440104, 0x24630001, 0xac430084, 0xaf840010, -0x3e00008, 0x0, 0x27bdffa8, 0xafb3003c, -0x27530100, 0xafbf0054, 0xafbe0050, 0xafb7004c, -0xafb60048, 0xafb50044, 0xafb40040, 0xafb20038, -0xafb10034, 0xafb00030, 0xafa00014, 0xafa00018, -0xafa0001c, 0x96620008, 0x8f5e0100, 0x8e710018, -0xa021, 0x2601821, 0x30420001, 0x10400033, -0xafa30028, 0x8f630054, 0x2622ffff, 0x431023, -0x18400002, 0x0, 0xd, 0x8f62004c, -0x2221023, 0x18400028, 0x2021, 0x93650120, -0x93640121, 0x3c030800, 0x8c62008c, 0x308400ff, -0x24420001, 0x30a500ff, 0x803821, 0x1485000b, -0xac62008c, 0x3c040800, 0x8c830090, 0x24630001, -0xac830090, 0x93620122, 0x2102b, 0x21023, -0x30420005, 0xa0002f7, 0x34440004, 0x27660100, -0x41080, 0xc21021, 0x8c430000, 0x2231823, -0x4600004, 0x24820001, 0x30440007, 0x1485fff9, -0x41080, 0x10870007, 0x3c030800, 0xa3640121, -0x8c620094, 0x24040005, 0x24420001, 0xa0002f7, -0xac620094, 0x24040004, 0x80a021, 0x9362003f, -0x2c42000f, 0x50400006, 0x8e620020, 0x9363003f, -0x24020008, 0x54620007, 0x8e720020, 0x8e620020, -0x8f630040, 0x409021, 0x431023, 0x5c400001, -0x8f720040, 0x8f640040, 0xafa40010, 0x8f650048, -0xafa50024, 0x9343010b, 0x24020004, 0x1462000d, -0xb021, 0x24020001, 0xafa20014, 0x8e75001c, -0x96620008, 0x36940002, 0x24030001, 0xafa30020, -0x8f760024, 0x240b821, 0x30420020, 0xa000338, -0xafa20018, 0x96620008, 0x30430002, 0x10600003, -0x36940080, 0xa000321, 0x8e75001c, 0x8e750014, -0x30420040, 0x10400003, 0x2a0b821, 0xa000338, -0xafa00020, 0x96620010, 0x10400010, 0xafa00020, -0x8f620130, 0x8fa50024, 0x24040001, 0xafa40020, -0x14400004, 0xb7b023, 0x8f760024, 0xa000339, -0x2402fffb, 0x8fa30010, 0x2e31023, 0x18400004, -0x2402fffb, 0x96620010, 0x2c2b021, 0x2402fffb, -0x2828024, 0x12000034, 0x3c030800, 0x8c620030, -0x2021024, 0x10400030, 0x3c020800, 0x8c430020, -0x1060002e, 0x32820004, 0xe001d7b, 0x0, -0x8f830054, 0x8f420100, 0xac620000, 0x8f840054, -0x2a01821, 0x32820002, 0xac900004, 0x8f840054, -0x54400001, 0x2401821, 0xac830008, 0x8fa40028, -0x8f830054, 0x8c820020, 0xac62000c, 0x8f840054, -0x8f620040, 0xac820010, 0x8fa50028, 0x8f830054, -0x8ca20018, 0xac620014, 0x8f850054, 0x24040001, -0x3c020800, 0xaca00018, 0x94437eae, 0x8f850054, -0x3c024010, 0x621825, 0xe001db5, 0xaca3001c, -0x9763003a, 0x24020cbc, 0x14620008, 0x32820004, -0x3c020800, 0x8c4300b0, 0x10600003, 0x3c036000, -0x3c020001, 0xac626800, 0x32820004, 0x10400056, -0x8021, 0x3c029000, 0x34420001, 0x3c038000, -0x3c21025, 0xa360007c, 0xaf420020, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x93620023, -0x30420080, 0x10400011, 0x0, 0x8f65005c, -0x8f63004c, 0x9764003c, 0x8f620064, 0xa32823, -0x852821, 0xa2102b, 0x54400006, 0x3c023fff, -0x93620023, 0x3042007f, 0xa3620023, 0xaf710064, -0x3c023fff, 0xa00039c, 0x3442ffff, 0x8f62005c, -0x2221023, 0x4400011, 0x0, 0x8f65005c, -0x8f630064, 0x9764003c, 0x3c023fff, 0x3442ffff, -0xaf710064, 0xa32823, 0x852821, 0x45102b, -0x10400004, 0x2251021, 0x3c053fff, 0x34a5ffff, -0x2251021, 0xaf62005c, 0x24100001, 0xaf71004c, -0x8f620054, 0x16220009, 0x0, 0x93620023, -0x30420040, 0x14400005, 0x0, 0xe001359, -0x0, 0xa0003b5, 0x0, 0xe001395, -0x2021, 0x8f430074, 0x431021, 0xaf62000c, -0x93620082, 0x30420080, 0x50400001, 0xa3600081, -0x3c028000, 0x34420001, 0x3c21025, 0xaf420020, -0x9363007e, 0x9362007a, 0x10620004, 0x0, -0xe00130a, 0x24040001, 0x408021, 0x12000002, -0x24020001, 0xafa2001c, 0xe00104b, 0x2a02021, -0x10400009, 0x3c02021, 0xe00104e, 0x2a02821, -0x8fa3001c, 0x2c420001, 0x21023, 0x621824, -0xa0003d8, 0xafa3001c, 0x8f620024, 0x56102b, -0x10400003, 0x8fa40014, 0xd, 0x8fa40014, -0x10800004, 0x8fa50018, 0xe001307, 0x0, -0x8fa50018, 0x10a00004, 0x8fa2001c, 0xe000fe6, -0x0, 0x8fa2001c, 0x1040001a, 0x3c029000, -0x34420001, 0x3c21025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0xa362007d, 0x8f640074, -0x34630001, 0x3c31825, 0xaf430020, 0x4800009, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x24020002, 0x3c031000, 0xaf5e01c0, 0xa34201c4, -0xaf4301f8, 0x8fa30020, 0x10600033, 0x8fa50024, -0x8fa20010, 0x2d71821, 0xa22023, 0x651023, -0x440000a, 0x0, 0x8f620024, 0x2c21023, -0x18400005, 0x0, 0x8f620024, 0x571021, -0xa000410, 0xaf620048, 0xaf630048, 0x9762003c, -0x82102b, 0x10400020, 0x3c029000, 0x34420001, -0x3c040800, 0x8c830080, 0x8f450100, 0x3c068000, -0x24630001, 0xa21025, 0xac830080, 0xaf420020, -0x8f420020, 0x461024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0x34420004, 0xa362007d, -0x8f640074, 0x34630001, 0xa31825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4501c0, -0xa34201c4, 0xaf4301f8, 0x96620008, 0x8fbf0054, -0x8fbe0050, 0x8fb7004c, 0x8fb60048, 0x8fb50044, -0x8fb40040, 0x8fb3003c, 0x8fb20038, 0x8fb10034, -0x8fb00030, 0x21042, 0x30420001, 0x3e00008, -0x27bd0058, 0x27bdffe8, 0xafbf0010, 0x97420108, -0x24030019, 0x304400ff, 0x10830054, 0x2882001a, -0x10400017, 0x2882000a, 0x1040000b, 0x28820008, -0x1040003d, 0x0, 0x480007a, 0x28820002, -0x14400039, 0x24020006, 0x1082002f, 0x0, -0xa0004ca, 0x0, 0x2402000b, 0x1082003a, -0x2882000b, 0x14400071, 0x8fbf0010, 0x2402000e, -0x1082003a, 0x0, 0xa0004ca, 0x0, -0x24030020, 0x1083004f, 0x28820021, 0x1040000e, -0x2402001c, 0x1082003e, 0x2882001d, 0x10400005, -0x2402001b, 0x10820035, 0x0, 0xa0004ca, -0x0, 0x2402001f, 0x1082003d, 0x0, -0xa0004ca, 0x0, 0x240200c2, 0x10820034, -0x288200c3, 0x10400005, 0x24020080, 0x10820016, -0x0, 0xa0004ca, 0x0, 0x240200c8, -0x10820038, 0x240200c9, 0x1082004c, 0x8fbf0010, -0xa0004ca, 0x0, 0x93630000, 0x24020020, -0x14620005, 0x0, 0xe0004ce, 0x8f440100, -0xa0004cc, 0x8fbf0010, 0xe001098, 0x0, -0xa0004cc, 0x8fbf0010, 0xe0010c4, 0x0, -0xa0004cc, 0x8fbf0010, 0x8f440100, 0xe0010ec, -0x0, 0xa0004cc, 0x8fbf0010, 0xe001131, -0x0, 0xa0004cc, 0x8fbf0010, 0xe00062d, -0x0, 0xa0004cc, 0x8fbf0010, 0x8f440100, -0xe001182, 0x0, 0xa0004cc, 0x8fbf0010, -0xe0012ad, 0x0, 0xa0004cc, 0x8fbf0010, -0xe00067b, 0x0, 0xa0004cc, 0x8fbf0010, -0x8f440100, 0xe000f43, 0x0, 0xa0004cc, -0x8fbf0010, 0xe001362, 0x0, 0xa0004cc, -0x8fbf0010, 0x93620000, 0x10430014, 0x8fbf0010, -0x8f440100, 0xe001544, 0x0, 0x1040000e, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x0, 0x8f420100, 0x24030002, 0xaf4201c0, -0x3c021000, 0xa34301c4, 0xaf4201f8, 0xa0004cc, -0x8fbf0010, 0xd, 0x8fbf0010, 0x3e00008, +0x1021, 0x3e00008, 0x0, 0x27bdffe0, +0xafbf0018, 0xafb10014, 0xe000055, 0xafb00010, +0x3c028000, 0x34420070, 0x8c420000, 0xaf820014, +0xe0000b0, 0x0, 0x3c028000, 0x34460070, +0x3c030800, 0x8c6300a0, 0x3c020800, 0x8c4200a4, +0x10430004, 0x8f840014, 0x3c010800, 0xac2300a4, +0xa743009e, 0x8cca0000, 0x3c030800, 0x8c6300bc, +0x3c020800, 0x8c4200b8, 0x1442023, 0x641821, +0x4021, 0x64202b, 0x481021, 0x441021, +0x3c010800, 0xac2300bc, 0x3c010800, 0xac2200b8, +0x8f510000, 0x32220007, 0x1040ffe1, 0xaf8a0014, +0x8cc60000, 0x3c050800, 0x8ca500bc, 0x3c040800, +0x8c8400b8, 0xca3023, 0xa62821, 0x1021, +0xa6302b, 0x822021, 0x862021, 0x32270001, +0x3c010800, 0xac2500bc, 0x3c010800, 0xac2400b8, +0x10e00021, 0x32220002, 0x8f420100, 0xaf420020, +0x8f420104, 0xaf4200a8, 0x9342010b, 0xe0001e2, +0x305000ff, 0x2e02001c, 0x54400004, 0x101080, +0xe0001e5, 0xa0002f6, 0x0, 0x3c030800, +0x24634ef8, 0x431021, 0x8c420000, 0x40f809, +0x0, 0x10400005, 0x3c024000, 0x8f430104, +0x3c026020, 0xac430014, 0x3c024000, 0xaf420138, +0x3c020800, 0x8c420034, 0x24420001, 0x3c010800, +0xac220034, 0x32220002, 0x1040000e, 0x32220004, +0x8f420140, 0xe0001e2, 0xaf420020, 0xe000380, +0x0, 0x3c024000, 0xaf420178, 0x3c020800, +0x8c420038, 0x24420001, 0x3c010800, 0xac220038, +0x32220004, 0x1040ff9b, 0x3c028000, 0x8f420180, +0xe0001e2, 0xaf420020, 0x8f430180, 0x24020f00, +0x14620005, 0x0, 0x8f420188, 0xa742009c, +0xa00032b, 0x3c024000, 0x93620000, 0x24030050, +0x304200ff, 0x14430008, 0x3c024000, 0xe00035e, +0x0, 0x54400004, 0x3c024000, 0xe000e9f, +0x0, 0x3c024000, 0xaf4201b8, 0x3c020800, +0x8c42003c, 0x24420001, 0x3c010800, 0xac22003c, +0xa0002ae, 0x3c028000, 0x3c029000, 0x34420001, +0x822025, 0xaf440020, 0x8f420020, 0x440fffe, +0x0, 0x3e00008, 0x0, 0x3c028000, +0x34420001, 0x822025, 0x3e00008, 0xaf440020, +0x27bdffe0, 0xafb10014, 0xafb00010, 0x808821, +0xafbf0018, 0xe000333, 0x30b000ff, 0x9362007d, +0x2202021, 0x2028025, 0xa370007d, 0x8f700074, +0x3c028000, 0xe00033c, 0x2028024, 0x16000009, +0x8fbf0018, 0x8f4201f8, 0x440fffe, 0x24020002, +0xaf5101c0, 0xa34201c4, 0x3c021000, 0xaf4201f8, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x27bdffe8, 0xafbf0010, 0x8f440180, +0x97420184, 0x30420200, 0x10400005, 0x2821, +0xe0010b5, 0x0, 0xa000373, 0x24050001, +0x8f420188, 0x4400009, 0x8fbf0010, 0x8f420188, +0x3c03ff00, 0x431024, 0x3c030400, 0x14430003, +0x24050001, 0x9362003e, 0x8fbf0010, 0xa01021, +0x3e00008, 0x27bd0018, 0x8f420140, 0xaf420200, +0x3c021000, 0x3e00008, 0xaf420238, 0xa3600022, +0x8f440140, 0xa000341, 0x24050001, 0x27bdffe8, +0xafbf0014, 0xafb00010, 0x93620000, 0x24030020, +0x304200ff, 0x1043000b, 0x0, 0x93620000, +0x24030030, 0x304200ff, 0x10430006, 0x0, +0x93620000, 0x24030050, 0x304200ff, 0x1443005f, +0x8fbf0014, 0x93420148, 0x304200ff, 0x2443ffff, +0x2c620005, 0x10400059, 0x8fbf0014, 0x31080, +0x3c030800, 0x24634e94, 0x431021, 0x8c420000, +0x400008, 0x0, 0xe000333, 0x8f440140, +0x8f70000c, 0x8f420144, 0x16020002, 0x24020001, +0xaf62000c, 0xe00033c, 0x8f440140, 0x8f420144, +0x14500004, 0x8fbf0014, 0x8fb00010, 0xa001029, +0x27bd0018, 0x8f62000c, 0xa0003e9, 0x0, +0x97620010, 0x8f430144, 0x3042ffff, 0x14620006, +0x8fbf0014, 0x24020001, 0x8fb00010, 0xa7620010, +0xa000377, 0x27bd0018, 0x97620010, 0xa0003e9, +0x0, 0xe000333, 0x8f440140, 0x97620012, +0x8f430144, 0x3050ffff, 0x16030002, 0x24020001, +0xa7620012, 0xe00033c, 0x8f440140, 0x8f420144, +0x16020004, 0x8fbf0014, 0x8fb00010, 0xa00037c, +0x27bd0018, 0x97620012, 0xa0003e9, 0x0, +0x97620014, 0x8f430144, 0x3042ffff, 0x14620006, +0x8fbf0014, 0x24020001, 0x8fb00010, 0xa7620014, +0xa001355, 0x27bd0018, 0x97620014, 0xa0003e9, +0x0, 0x97620016, 0x8f430144, 0x3042ffff, +0x14620006, 0x24020001, 0x8fbf0014, 0x8fb00010, +0xa7620016, 0xa000c3d, 0x27bd0018, 0x97620016, +0x14400006, 0x8fbf0014, 0x3c020800, 0x8c420070, +0x24420001, 0x3c010800, 0xac220070, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x3c020800, 0x8c420020, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x1040001a, +0x27500100, 0xe00059b, 0x0, 0x96040008, +0x9603000c, 0x9605000e, 0x3c060800, 0x94c64f76, +0x8f820020, 0x31c00, 0x42400, 0x862025, +0x651825, 0xac400000, 0x8fbf0014, 0xac400004, +0x8fb00010, 0xac400008, 0x27bd0018, 0xac40000c, +0xac430010, 0xac400014, 0xac400018, 0xac44001c, +0xa0005d3, 0x24040001, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x8f420278, 0x440fffe, +0x24020002, 0xaf440240, 0xa3420244, 0x3c021000, +0x3e00008, 0xaf420278, 0x3c020800, 0x8c420020, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x1040001d, +0x27500100, 0xe00059b, 0x0, 0x8e020004, +0x8f830020, 0x9604000c, 0x3c050800, 0x94a54f76, +0xac620000, 0x9762002c, 0x42400, 0x3042ffff, +0x822025, 0x3c02400e, 0xa22825, 0xac640004, +0xac600008, 0x24040001, 0xac60000c, 0xac600010, +0xac600014, 0xac600018, 0xe0005d3, 0xac65001c, +0x8e040000, 0x8fbf0014, 0x8fb00010, 0xa000417, +0x27bd0018, 0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, 0x27bdffe0, 0xafbf0018, 0xafb10014, -0xafb00010, 0x9742010c, 0x14400053, 0x808821, -0x3c029000, 0x34420001, 0x2221025, 0xaf420020, -0x3c038000, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0xe001382, 0x2021, 0x93620081, -0x305000ff, 0x12000007, 0x0, 0xe001395, -0x24040001, 0x2603ffff, 0x307000ff, 0x1600fffb, -0x0, 0xe001083, 0x2202021, 0x93620023, -0x30420010, 0x14400014, 0x3c030800, 0x8f630074, -0x3c027fff, 0x3442ffff, 0x621824, 0xaf630074, -0x93620005, 0x34420001, 0xa3620005, 0x8f63004c, -0x8f620054, 0x1062000d, 0x24040001, 0xe001395, -0x2021, 0x8f430074, 0x431021, 0xaf62000c, -0xa000508, 0x24040001, 0x8c6200a8, 0x2021, -0x24420001, 0xac6200a8, 0xd, 0x3c028000, -0x34420001, 0x2221025, 0xaf420020, 0x1080001a, -0x3c029000, 0x34420001, 0x2221025, 0xaf420020, -0x3c038000, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0x9362007d, 0x3c038000, 0xa362007d, -0x8f640074, 0x34630001, 0x2231825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf5101c0, -0xa34201c4, 0xaf4301f8, 0xe001098, 0x0, -0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, -0x27bd0020, 0x27bdffd8, 0xafb20018, 0x809021, -0xafbf0020, 0xafb3001c, 0xafb10014, 0xafb00010, -0x9362003f, 0xa09821, 0x93640000, 0x24030020, -0x10830005, 0x304500ff, 0xe0013dc, 0x2402021, -0xa000627, 0x8fbf0020, 0x93620005, 0x24030030, -0x30420030, 0x144300e4, 0x8fbf0020, 0x24a2fff3, -0x2c420007, 0x10400006, 0x3c020800, 0x8f62004c, -0xaf620070, 0x8f63004c, 0xaf630050, 0x3c020800, -0x8c430020, 0x106000d5, 0x0, 0xe001d7b, -0x0, 0x8f830054, 0xac720000, 0x936200c4, -0x30420002, 0x10400004, 0x24020001, 0x8f830054, -0xa000562, 0xac620004, 0x8f840054, 0x24030003, -0xac830004, 0x8f6200dc, 0x8f630024, 0x431021, -0xaf620048, 0x8f840054, 0x8f6200dc, 0xac820008, -0x8f830054, 0xac60000c, 0x8f820054, 0xac400010, -0x8f830054, 0x8f62004c, 0x3c100800, 0xac620014, -0x8f850054, 0x2021, 0x26027ea0, 0xaca00018, -0x9443000e, 0x8f850054, 0x3c024010, 0x621825, -0xe001db5, 0xaca3001c, 0x8f830054, 0xac720000, -0x9362003e, 0x9363003f, 0x8f840054, 0x21200, -0x621825, 0xac830004, 0x93620082, 0x30420080, -0x10400004, 0x2008821, 0x3c020800, 0xa00058c, -0x8c420048, 0x9362003e, 0x30420040, 0x14400003, -0x1021, 0x93620081, 0x304200ff, 0x93630082, -0x8f840054, 0x21600, 0x31c00, 0x431025, -0xac820008, 0x8f830054, 0x8f620040, 0xac62000c, -0x8f840054, 0x8f620048, 0xac820010, 0x8f70004c, -0x8f820054, 0xac500014, 0x8f620050, 0x8f850054, -0x401821, 0x2021023, 0x5c400001, 0x2001821, -0x2021, 0x26227ea0, 0xaca30018, 0x9443000e, -0x8f850054, 0x3c02c00b, 0x621825, 0xe001db5, -0xaca3001c, 0x9363003f, 0x24020010, 0x14620004, -0x0, 0x8f820054, 0xa0005b8, 0xac500000, -0x8f620054, 0x8f840054, 0x401821, 0x2021023, -0x5c400001, 0x2001821, 0xac830000, 0x8f620058, -0x8f840054, 0x401821, 0x2021023, 0x5c400001, -0x2001821, 0xac830004, 0x93620023, 0x30420010, -0x10400004, 0x0, 0x8f830054, 0xa0005c8, -0x8f620128, 0x8f830054, 0x8f62005c, 0xac620008, -0x8f620060, 0x8f430074, 0x8f840054, 0x431021, -0xac82000c, 0x8f850054, 0x8f620064, 0xaca20010, -0x97630068, 0x9762006a, 0x8f840054, 0x31c00, -0x431025, 0xac820014, 0x93630082, 0x24020080, -0x14620005, 0x0, 0x8f820054, 0xac400018, -0xa0005f8, 0x2021, 0x8f63000c, 0x24020001, -0x10620005, 0x0, 0x9362003e, 0x30420040, -0x10400006, 0x0, 0x8f830054, 0x2402ffff, -0xac620018, 0xa0005f8, 0x2021, 0x8f63000c, -0x8f440074, 0x3c020800, 0x641823, 0x621024, -0x2c420001, 0x21023, 0x8f840054, 0x621824, -0x31843, 0xac830018, 0x2021, 0x26227ea0, -0x9443000e, 0x8f850054, 0x3c02c00c, 0x621825, -0xe001db5, 0xaca3001c, 0x8f840054, 0x8f630018, -0xac830000, 0x936200c4, 0x30420002, 0x10400006, -0x0, 0x976200c8, 0x8f830054, 0x3042ffff, -0xa00060d, 0xac620004, 0x8f820054, 0xac400004, -0x8f830054, 0x8f62006c, 0xac620008, 0x8f840054, -0x8f6200dc, 0xac82000c, 0x8f830054, 0xac600010, -0x93620005, 0x8f840054, 0x21600, 0x531025, -0xac820014, 0x8f830054, 0x24040001, 0x26227ea0, -0xac600018, 0x9443000e, 0x8f850054, 0x3c02400d, -0x621825, 0xe001db5, 0xaca3001c, 0xe001022, -0x2402021, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, -0x27bdffe0, 0xafb00010, 0x27500100, 0xafbf0018, -0xafb10014, 0x9603000c, 0x240200c1, 0x5462001f, -0x8e040000, 0x3c029000, 0x8f450100, 0x34420001, -0x3c038000, 0xa21025, 0xaf420020, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x9362007d, -0x3c038000, 0x34420004, 0xa362007d, 0x8f640074, -0x34630001, 0xa31825, 0xaf430020, 0x480002d, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x24020002, 0x3c031000, 0xaf4501c0, 0xa34201c4, -0xaf4301f8, 0xa000677, 0x8fbf0018, 0x8f65004c, -0x24060001, 0xe0011c1, 0x240704af, 0x3c020800, -0x8c430020, 0x9611000c, 0x1060001a, 0x8e100000, -0xe001d7b, 0x0, 0x8f820054, 0xac500000, -0x8f840054, 0x111400, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac400014, 0x8f830054, -0x24040001, 0x3c020800, 0xac600018, 0x94437eae, -0x8f850054, 0x3c024019, 0x621825, 0xe001db5, -0xaca3001c, 0x8fbf0018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0020, 0x27bdffb0, 0xafb5003c, -0xa821, 0xafb70044, 0xb821, 0xafb60040, -0xb021, 0xafbe0048, 0xf021, 0xafb40038, -0xa021, 0xafbf004c, 0xafb30034, 0xafb20030, -0xafb1002c, 0xafb00028, 0x9365003f, 0x8f530100, -0x9743010c, 0x8f620040, 0x8f440114, 0x3072ffff, -0x441023, 0x4410020, 0x30a500ff, 0x32420401, -0x10400396, 0x3c029000, 0x34420001, 0x2621025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x9362007d, 0x3c038000, -0x34420004, 0xa362007d, 0x8f640074, 0x34630001, -0x2631825, 0xaf430020, 0x4800384, 0x3c038000, -0x8f4201f8, 0x431024, 0x1440fffd, 0x24020002, -0x3c031000, 0xaf5301c0, 0xa34201c4, 0xaf4301f8, -0xa000a2d, 0x8fbf004c, 0x32420010, 0x1040006a, -0x3021, 0x9742010e, 0x304600ff, 0x24c3fff8, -0x2c62000f, 0x10400058, 0x3c020800, 0x24427d28, -0x31880, 0x621821, 0x8c640000, 0x800008, -0x0, 0x38a20012, 0xa00071f, 0x2a82b, -0x2402000e, 0x14a20004, 0x2402000c, 0x24150001, -0xa00071f, 0x24060010, 0x10a2004b, 0x38a30010, -0x2c630001, 0x38a20016, 0x2c420001, 0x621825, -0x5460004d, 0xa821, 0x24020014, 0x10a20046, -0x24020012, 0x10a20355, 0x24020008, 0x50a20046, -0x24150001, 0xd, 0xa00071f, 0x0, -0x24020016, 0x14a20005, 0x2402000c, 0x24150001, -0x24060010, 0xa00071f, 0x3252fffd, 0x10a20032, -0x38a30010, 0x2c630001, 0x38a2000e, 0x2c420001, -0x621825, 0x54600034, 0xa821, 0x24020014, -0x14a20004, 0x24020012, 0x24150001, 0xa00071f, -0x24060012, 0x10a2033a, 0x8fbf004c, 0xd, -0xa00071f, 0x0, 0x2402000e, 0x14a20004, -0x24020016, 0x24150001, 0xa00071f, 0x3252fffb, -0x14a20004, 0x24020014, 0x24150001, 0xa00071f, -0x3252fffd, 0x14a20010, 0x24150001, 0x24060012, -0xa00071f, 0x3252fffd, 0x2402000c, 0x14a2000a, -0x0, 0x9742010e, 0x2403000a, 0x21202, -0x10430003, 0x24150001, 0xd, 0x24150001, -0xa00071f, 0x24060014, 0x9742010e, 0x21202, -0x14a20003, 0x0, 0xa00071f, 0x24150001, -0x14a60003, 0x24020012, 0xa00071f, 0xa821, -0x10a2030e, 0xa821, 0x12a00021, 0x32420004, -0x54400001, 0x241e0001, 0x32430102, 0x24020002, -0x1462000f, 0x0, 0x9342010a, 0x30420020, -0x1440000b, 0x0, 0x8f630048, 0x8f620040, -0x14620004, 0x0, 0x8f620048, 0x24420001, -0xaf620048, 0x8f620040, 0x24420001, 0xaf620040, -0xa366003f, 0x38c30012, 0x2c630001, 0x38c20010, -0x2c420001, 0x621825, 0x10600005, 0x3c030800, -0x8c620074, 0x24420001, 0xe001348, 0xac620074, -0x32420040, 0x32430020, 0xafa3001c, 0x32430080, -0xafa30020, 0x32430001, 0xafa30014, 0x32430008, -0xafa30018, 0x32430100, 0x104000d0, 0xafa30010, -0x8f460110, 0x8f630054, 0x24c2ffff, 0x431023, -0x18400002, 0x0, 0xd, 0x8f62004c, -0xc21023, 0x18400028, 0x8821, 0x93650120, -0x93640121, 0x3c030800, 0x8c62008c, 0x308400ff, -0x24420001, 0x30a500ff, 0x804021, 0x1485000b, -0xac62008c, 0x3c040800, 0x8c830090, 0x24630001, -0xac830090, 0x93620122, 0x2102b, 0x21023, -0x30420005, 0xa00077f, 0x34510004, 0x27670100, -0x41080, 0xe21021, 0x8c430000, 0xc31823, -0x4600004, 0x24820001, 0x30440007, 0x1485fff9, -0x41080, 0x10880007, 0x3c030800, 0xa3640121, -0x8c620094, 0x24110005, 0x24420001, 0xa00077f, -0xac620094, 0x24110004, 0x32220001, 0x10400038, -0x3c020800, 0x8c430020, 0x8f500100, 0x10600033, -0x8f540110, 0xe001d7b, 0x0, 0x93620005, -0x10400017, 0x0, 0x8f820054, 0xac500000, -0x8f840054, 0x24020001, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac540014, 0x8f830054, -0x3c020800, 0xac600018, 0x94437eae, 0x8f840054, -0x3c024010, 0x621825, 0xa0007b6, 0xac83001c, -0x8f820054, 0xac500000, 0x8f830054, 0xac600004, -0x8f840054, 0x8f620040, 0xac820008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0xac740014, 0x8f820054, 0x3c030800, 0xac400018, -0x94627eae, 0x8f840054, 0x3c034018, 0x431025, -0xac82001c, 0xe001db5, 0x24040001, 0x24140001, -0x32220004, 0x10400062, 0x8fa2001c, 0x57c0005b, -0x8f420110, 0x8021, 0x3c029000, 0x8f460110, -0x34420001, 0x3c038000, 0x2621025, 0xa360007c, -0xaf420020, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0x93620023, 0x30420080, 0x10400011, -0x0, 0x8f65005c, 0x8f63004c, 0x9764003c, -0x8f620064, 0xa32823, 0x852821, 0xa2102b, -0x54400006, 0x3c023fff, 0x93620023, 0x3042007f, -0xa3620023, 0xaf660064, 0x3c023fff, 0xa0007ea, -0x3442ffff, 0x8f62005c, 0xc21023, 0x4400011, -0x0, 0x8f65005c, 0x8f630064, 0x9764003c, -0x3c023fff, 0x3442ffff, 0xaf660064, 0xa32823, -0x852821, 0x45102b, 0x10400004, 0xc51021, -0x3c053fff, 0x34a5ffff, 0xc51021, 0xaf62005c, -0x24100001, 0x13c00003, 0x0, 0xaf660070, -0xaf660050, 0xaf66004c, 0x8f620054, 0x14c20009, -0x0, 0x93620023, 0x30420040, 0x14400005, -0x0, 0xe001359, 0x0, 0xa000807, -0x0, 0xe001395, 0x2021, 0x8f430074, -0x431021, 0xaf62000c, 0x93620082, 0x30420080, -0x50400001, 0xa3600081, 0x3c028000, 0x34420001, -0x2621025, 0xaf420020, 0x9363007e, 0x9362007a, -0x1062000a, 0x200b021, 0xe00130a, 0x24040001, -0x408021, 0xa00081c, 0x200b021, 0x24040001, -0xe00130a, 0xaf62004c, 0x40b021, 0x8fa2001c, -0x1040004a, 0x0, 0x8f650058, 0x8f420120, -0x8f63004c, 0x431023, 0x4400008, 0x27420118, -0x8c440000, 0x24420004, 0xaf640018, 0x8c430000, -0xaf63001c, 0x8c440004, 0xaf640058, 0x9362003e, -0x30420040, 0x10400032, 0x0, 0x8f630058, -0x24a2ffff, 0x14620010, 0x3c029000, 0x34420001, -0x2621025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x9363003e, -0x3c028000, 0x34420001, 0x2621025, 0x34630080, -0xa363003e, 0xaf420020, 0x8f620058, 0x8f63004c, -0x431023, 0x18400020, 0x3c029000, 0x34420001, -0x2621025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x3c038000, -0x9362003e, 0x34630001, 0x24040001, 0x2631825, -0x304200bf, 0xa362003e, 0xe001382, 0xaf430020, -0x8f63004c, 0x8f620054, 0x1062000c, 0x24160001, -0xe00130a, 0x2021, 0xa000868, 0x24160001, -0x8f630058, 0x8f62004c, 0x14620004, 0x24160001, -0xe001083, 0x2602021, 0x24160001, 0x13c0007c, -0x8fa30020, 0x93620023, 0x30420040, 0x10400078, -0x0, 0x16800038, 0x3c110800, 0x8e220020, -0x8f70004c, 0x10400035, 0x24140001, 0xe001d7b, -0x0, 0x93620005, 0x10400017, 0x0, -0x8f820054, 0xac530000, 0x8f840054, 0x24020001, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac500014, 0x8f830054, 0x3c020800, 0xac600018, -0x94437eae, 0x8f840054, 0x3c024010, 0x621825, -0xa0008a4, 0xac83001c, 0x8f820054, 0xac530000, -0x8f830054, 0xac600004, 0x8f840054, 0x8f620040, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac700014, 0x8f820054, -0x3c030800, 0xac400018, 0x94627eae, 0x8f840054, -0x3c034018, 0x431025, 0xac82001c, 0xe001db5, -0x24040001, 0x24140001, 0x8e220020, 0x8f500100, -0x1040001a, 0x3c029000, 0xe001d7b, 0x0, -0x8f820054, 0xac500000, 0x8f830054, 0xac600004, -0x8f820054, 0xac400008, 0x8f830054, 0xac60000c, -0x8f820054, 0xac400010, 0x8f830054, 0xac600014, -0x8f850054, 0x24040001, 0x3c020800, 0xaca00018, -0x94437eae, 0x8f850054, 0x3c024019, 0x621825, -0xe001db5, 0xaca3001c, 0x3c029000, 0x34420001, -0x2621025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x9363003f, -0x2402000e, 0x1462000c, 0x0, 0xe001382, -0x24040001, 0xe001395, 0x24040001, 0x8f430074, -0x431021, 0xaf62000c, 0x9362003e, 0x304200bf, -0xa0008dd, 0xa362003e, 0xe001359, 0x0, -0x93630023, 0x3c028000, 0x34420001, 0x2621025, -0x306300bf, 0xa3630023, 0xaf420020, 0x8fa30020, -0x10600027, 0x8fa30014, 0x9362007c, 0x24420001, -0xa362007c, 0x9363007e, 0x9362007a, 0x14620020, -0x8fa30014, 0x9362007c, 0x3c030800, 0x8c640024, -0x44102b, 0x1440001a, 0x8fa30014, 0x3c029000, -0x34420001, 0x3c038000, 0x2621025, 0xa360007c, -0xaf420020, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0x93620023, 0x3c058000, 0x34a50001, -0x34420080, 0xa3620023, 0x9763003c, 0x8f62004c, -0x2021, 0x2652825, 0x621821, 0xaf63005c, -0xe00130a, 0xaf450020, 0x2c2b025, 0x8fa30014, -0x3062ffff, 0x10400003, 0x32420200, 0xa000915, -0x24170004, 0x10400003, 0x0, 0x24170040, -0x24160001, 0x12a000df, 0x32420002, 0x104000de, -0x8fa20018, 0x9342010a, 0x30420002, 0x10400037, -0x0, 0x93620023, 0x30420008, 0x14400033, -0x3c020800, 0x8c430020, 0x10600021, 0x3c029000, -0xe001d7b, 0x0, 0x8f840054, 0x8f430100, -0xac830000, 0x9342010a, 0x8f830054, 0x21600, -0xac620004, 0x8f840054, 0x8f620040, 0xac820008, -0x8f850054, 0x8f63004c, 0xaca3000c, 0x9362003f, -0x8f840054, 0x304200ff, 0xac820010, 0x8f830054, -0xac600014, 0x8f850054, 0x24040001, 0x3c020800, -0xaca00018, 0x94437eae, 0x8f850054, 0x3c02401a, -0x621825, 0xe001db5, 0xaca3001c, 0x3c029000, -0x34420001, 0x2621025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x93630023, 0x3c028000, 0x34420001, 0x2621025, -0x34630008, 0xa3630023, 0xaf420020, 0x9342010a, -0x30420020, 0x104000a0, 0x8fa20018, 0x93620023, -0x30420001, 0x14400033, 0x3c020800, 0x8c430020, -0x10600021, 0x3c029000, 0xe001d7b, 0x0, -0x8f840054, 0x8f430100, 0xac830000, 0x9342010a, -0x8f830054, 0x21600, 0xac620004, 0x8f840054, -0x8f620040, 0xac820008, 0x8f850054, 0x8f63004c, -0xaca3000c, 0x9362003f, 0x8f840054, 0x304200ff, -0xac820010, 0x8f830054, 0xac600014, 0x8f850054, -0x24040001, 0x3c020800, 0xaca00018, 0x94437eae, -0x8f850054, 0x3c02401a, 0x621825, 0xe001db5, -0xaca3001c, 0x3c029000, 0x34420001, 0x2621025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x93630023, 0x3c028000, -0x34420001, 0x2621025, 0x34630001, 0xa3630023, -0xaf420020, 0x93620023, 0x30420040, 0x10400066, -0x8fa20018, 0x16800037, 0x3c110800, 0x8e220020, -0x8f70004c, 0x10400050, 0x3c029000, 0xe001d7b, -0x0, 0x93620005, 0x10400017, 0x0, -0x8f820054, 0xac530000, 0x8f840054, 0x24020001, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac500014, 0x8f830054, 0x3c020800, 0xac600018, -0x94437eae, 0x8f840054, 0x3c024010, 0x621825, -0xa0009c8, 0xac83001c, 0x8f820054, 0xac530000, -0x8f830054, 0xac600004, 0x8f840054, 0x8f620040, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac700014, 0x8f820054, -0x3c030800, 0xac400018, 0x94627eae, 0x8f840054, -0x3c034018, 0x431025, 0xac82001c, 0xe001db5, -0x24040001, 0x8e220020, 0x1040001b, 0x3c029000, -0xe001d7b, 0x0, 0x8f820054, 0xac530000, -0x8f840054, 0x3c02008d, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac400014, 0x8f830054, -0x24040001, 0x3c020800, 0xac600018, 0x94437eae, -0x8f850054, 0x3c024019, 0x621825, 0xe001db5, -0xaca3001c, 0x3c029000, 0x34420001, 0x2621025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x93630023, 0x3c028000, -0x34420001, 0x2621025, 0x306300bf, 0xa3630023, -0xaf420020, 0x8fa20018, 0x1040000e, 0x8fa20010, -0x9342010a, 0xa3620082, 0x56e00005, 0x36f70008, -0x8fa30010, 0x10600004, 0x0, 0x36f70008, -0xa000a05, 0x24160001, 0xe001204, 0x2602021, -0x8fa20010, 0x10400003, 0x0, 0x36f70010, -0x24160001, 0x12c0001b, 0x3c029000, 0x34420001, -0x2621025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x9362007d, -0x3c038000, 0x2e21025, 0xa362007d, 0x8f640074, -0x34630001, 0x2631825, 0xaf430020, 0x4800009, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x24020002, 0x3c031000, 0xaf5301c0, 0xa34201c4, -0xaf4301f8, 0x9363003f, 0x24020012, 0x14620004, -0x8fbf004c, 0xe001348, 0x0, 0x8fbf004c, -0x8fbe0048, 0x8fb70044, 0x8fb60040, 0x8fb5003c, -0x8fb40038, 0x8fb30034, 0x8fb20030, 0x8fb1002c, -0x8fb00028, 0x3e00008, 0x27bd0050, 0x27bdffe8, -0xafbf0014, 0xafb00010, 0x8f500180, 0x97420184, -0x30420200, 0x10400009, 0x0, 0x93630000, -0x24020020, 0x1062001c, 0x0, 0xe0014fb, -0x2002021, 0xa000abd, 0x24020001, 0x8f420188, -0x4400073, 0x1021, 0x8f430188, 0x3c02ff00, -0x621824, 0x3c020200, 0x10620031, 0x43102b, -0x14400007, 0x3c020300, 0x1060000b, 0x3c020100, -0x1062000d, 0x0, 0xa000abb, 0x0, -0x10620027, 0x3c020400, 0x1062003e, 0x3c020800, -0xa000abb, 0x0, 0xe001242, 0x2002021, -0xa000abd, 0x24020001, 0x93620005, 0x30420020, -0x14400057, 0x24020001, 0x3c029000, 0x34420001, -0x2021025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x93620005, -0x3c038000, 0x34630001, 0x2031825, 0x34420020, -0xa3620005, 0xaf430020, 0x93620005, 0x30420020, -0x14400003, 0x2002021, 0xd, 0x2002021, -0xe00052e, 0x24055854, 0xa000abd, 0x24020001, -0x93620005, 0x30420001, 0x10400038, 0x3c029000, -0x34420001, 0x2021025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x93620023, 0x34420004, 0xa3620023, 0x93630005, -0x3c048000, 0x3c020800, 0x306300fe, 0xa3630005, -0x8c430020, 0x34840001, 0x2042025, 0xa000a9b, -0xaf440020, 0x8c430020, 0x10600021, 0x24020001, -0xe001d7b, 0x0, 0x8f820054, 0xac500000, -0x93630082, 0x9362003f, 0x8f840054, 0x31a00, -0x431025, 0xac820004, 0x8f830054, 0xac600008, -0x8f820054, 0xac40000c, 0x8f830054, 0xac600010, -0x8f820054, 0xac400014, 0x8f830054, 0x24040001, -0x3c020800, 0xac600018, 0x94437eae, 0x8f850054, -0x3c02400a, 0x621825, 0xe001db5, 0xaca3001c, -0xa000abd, 0x24020001, 0xd, 0x24020001, -0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, -0x27bdffe8, 0xafbf0010, 0x93630000, 0x24020020, -0x10620005, 0x0, 0x93630000, 0x24020030, -0x14620055, 0x8fbf0010, 0x93420148, 0x2444ffff, -0x2c830005, 0x1060004f, 0x3c020800, 0x24427d68, -0x41880, 0x621821, 0x8c640000, 0x800008, -0x0, 0x8f430144, 0x8f62000c, 0x1462000e, -0x24020001, 0xaf62000c, 0x93630000, 0x24020020, -0x14620005, 0x0, 0xe000bb8, 0x0, -0xa000b1f, 0x8fbf0010, 0xe0014e8, 0x0, -0xa000b1f, 0x8fbf0010, 0x8f62000c, 0xa000b18, -0x0, 0x97630010, 0x8f420144, 0x14430006, -0x24020001, 0xa7620010, 0xe0012de, 0x0, -0xa000b1f, 0x8fbf0010, 0x97620010, 0xa000b18, -0x0, 0x97630012, 0x8f420144, 0x14430006, -0x24020001, 0xa7620012, 0xe0012e3, 0x0, -0xa000b1f, 0x8fbf0010, 0x97620012, 0xa000b18, -0x0, 0x97630014, 0x8f420144, 0x14430006, -0x24020001, 0xa7620014, 0xe001301, 0x0, -0xa000b1f, 0x8fbf0010, 0x97620014, 0xa000b18, -0x0, 0x97630016, 0x8f420144, 0x14430006, -0x24020001, 0xa7620016, 0xe001304, 0x0, -0xa000b1f, 0x8fbf0010, 0x97620016, 0x14400006, -0x8fbf0010, 0x3c030800, 0x8c620070, 0x24420001, -0xac620070, 0x8fbf0010, 0x3e00008, 0x27bd0018, -0x27bdffe0, 0x3c029000, 0xafbf001c, 0xafb20018, -0xafb10014, 0xafb00010, 0x8f500140, 0x34420001, -0x3c038000, 0x2021025, 0xaf420020, 0x8f420020, -0x431024, 0x1440fffd, 0x24020012, 0x24030080, -0xa362003f, 0xa3630082, 0x93620023, 0x30420040, -0x10400007, 0x2821, 0x93620023, 0x24050001, -0x304200bf, 0xa3620023, 0xa000b3e, 0x3c028000, -0x3c028000, 0x34420001, 0x3c039000, 0x34630001, -0x3c048000, 0x2021025, 0x2031825, 0xaf420020, -0xaf430020, 0x8f420020, 0x441024, 0x1440fffd, -0x0, 0x9362007d, 0x3c038000, 0x34420020, -0xa362007d, 0x8f640074, 0x34630001, 0x2031825, -0xaf430020, 0x4800009, 0x3c038000, 0x8f4201f8, -0x431024, 0x1440fffd, 0x24020002, 0x3c031000, -0xaf5001c0, 0xa34201c4, 0xaf4301f8, 0x10a00055, -0x3c020800, 0x8c430020, 0x8f71004c, 0x10600051, -0x409021, 0xe001d7b, 0x0, 0x93620005, -0x10400017, 0x0, 0x8f820054, 0xac500000, -0x8f840054, 0x24020001, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac510014, 0x8f830054, -0x3c020800, 0x408821, 0x24427ea0, 0xac600018, -0x9443000e, 0x8f840054, 0xa000b92, 0x3c024010, -0x8f820054, 0xac500000, 0x8f830054, 0xac600004, -0x8f840054, 0x8f620040, 0xac820008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0x3c020800, 0xac710014, 0x8f840054, 0x408821, -0x24427ea0, 0xac800018, 0x9443000e, 0x8f840054, -0x3c024018, 0x621825, 0xac83001c, 0xe001db5, -0x24040001, 0x8e430020, 0x1060001b, 0x8fbf001c, -0xe001d7b, 0x0, 0x8f820054, 0xac500000, -0x8f840054, 0x3c02008d, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac400014, 0x8f830054, -0x24040001, 0x26227ea0, 0xac600018, 0x9443000e, -0x8f850054, 0x3c024019, 0x621825, 0xe001db5, -0xaca3001c, 0x8fbf001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe8, -0xafbf0014, 0xafb00010, 0x8f500140, 0x93620081, -0x24420001, 0xa3620081, 0x93630081, 0x14600002, -0x24020001, 0xa3620081, 0x9362003e, 0x30420040, -0x10400058, 0x0, 0x8f620058, 0x8f63004c, -0x431023, 0x28420002, 0x1040003a, 0x3c029000, -0x8f62004c, 0x8f630084, 0x8f640090, 0x431023, -0x441023, 0x441002a, 0x0, 0x8f62004c, -0x24420001, 0xaf620058, 0x9363003e, 0x30630080, -0x10600011, 0x3c029000, 0x34420001, 0x2021025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x9363003e, 0x3c028000, -0x34420001, 0x2021025, 0x3063007f, 0xa363003e, -0xa000c4f, 0xaf420020, 0x34420001, 0x2021025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x3c028000, 0x9363003e, 0x34420001, -0x24040001, 0x2021025, 0x306300bf, 0xa363003e, -0xe001382, 0xaf420020, 0xa000c1b, 0x24020001, -0xe001382, 0x24040001, 0xe001395, 0x24040001, -0x8f430074, 0x431021, 0xaf62000c, 0xa000c74, -0x8fbf0014, 0x34420001, 0x2021025, 0xaf420020, -0x3c038000, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0x3c038000, 0x9362003e, 0x34630001, -0x24040001, 0x2031825, 0x304200bf, 0xa362003e, -0xe001382, 0xaf430020, 0x8f630054, 0x8f62004c, -0x10620059, 0x24020001, 0xa3620081, 0xa000c4f, -0x0, 0x9363003f, 0x2402000e, 0x14620024, -0x24020080, 0x3c030800, 0xa3620082, 0x8c620020, -0x1040004e, 0x8fbf0014, 0xe001d7b, 0x0, -0x8f820054, 0xac500000, 0x93630082, 0x9362003f, -0x8f840054, 0x31a00, 0x431025, 0xac820004, -0x8f830054, 0xac600008, 0x8f820054, 0xac40000c, -0x8f830054, 0xac600010, 0x8f820054, 0xac400014, -0x8f830054, 0x24040001, 0x3c020800, 0xac600018, -0x94437eae, 0x8f850054, 0x3c02400a, 0x621825, -0xe001db5, 0xaca3001c, 0xa000c74, 0x8fbf0014, -0x93640081, 0x3c030800, 0x8c620048, 0x44102b, -0x10400005, 0x0, 0xe000b21, 0x0, -0xa000c74, 0x8fbf0014, 0xe00130a, 0x2021, -0x24040001, 0xe001395, 0x408021, 0x8f430074, -0x431021, 0xaf62000c, 0x1200001b, 0x3c029000, -0x8f450140, 0x34420001, 0x3c038000, 0xa21025, -0xaf420020, 0x8f420020, 0x431024, 0x1440fffd, -0x0, 0x9362007d, 0x3c038000, 0xa362007d, -0x8f640074, 0x34630001, 0xa31825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4501c0, -0xa34201c4, 0xaf4301f8, 0x8fbf0014, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x27bdffd8, 0xafb3001c, -0x27530100, 0xafbf0024, 0xafb40020, 0xafb20018, -0xafb10014, 0xafb00010, 0x96620008, 0x3c140800, -0x8f520100, 0x30420001, 0x104000da, 0x0, -0x8e700018, 0x8f630054, 0x2602ffff, 0x431023, -0x18400002, 0x0, 0xd, 0x8f62004c, -0x2021023, 0x18400028, 0x8821, 0x93650120, -0x93640121, 0x3c030800, 0x8c62008c, 0x308400ff, -0x24420001, 0x30a500ff, 0x803821, 0x1485000b, -0xac62008c, 0x3c040800, 0x8c830090, 0x24630001, -0xac830090, 0x93620122, 0x2102b, 0x21023, -0x30420005, 0xa000cb7, 0x34510004, 0x27660100, -0x41080, 0xc21021, 0x8c430000, 0x2031823, -0x4600004, 0x24820001, 0x30440007, 0x1485fff9, -0x41080, 0x10870007, 0x3c030800, 0xa3640121, -0x8c620094, 0x24110005, 0x24420001, 0xa000cb7, -0xac620094, 0x24110004, 0x32220001, 0x10400035, -0x8e820020, 0x10400034, 0x32220004, 0xe001d7b, -0x0, 0x93620005, 0x10400017, 0x0, -0x8f820054, 0xac520000, 0x8f840054, 0x24020001, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac500014, 0x8f830054, 0x3c020800, 0xac600018, -0x94437eae, 0x8f840054, 0x3c024010, 0x621825, -0xa000cec, 0xac83001c, 0x8f820054, 0xac520000, -0x8f830054, 0xac600004, 0x8f840054, 0x8f620040, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac700014, 0x8f820054, -0x3c030800, 0xac400018, 0x94627eae, 0x8f840054, -0x3c034018, 0x431025, 0xac82001c, 0xe001db5, -0x24040001, 0x32220004, 0x1040006e, 0x8821, -0x3c029000, 0x34420001, 0x3c038000, 0x2421025, -0xa360007c, 0xaf420020, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x93620023, 0x30420080, -0x10400011, 0x0, 0x8f65005c, 0x8f63004c, -0x9764003c, 0x8f620064, 0xa32823, 0x852821, -0xa2102b, 0x54400006, 0x3c023fff, 0x93620023, -0x3042007f, 0xa3620023, 0xaf700064, 0x3c023fff, -0xa000d1b, 0x3442ffff, 0x8f62005c, 0x2021023, -0x4400011, 0x0, 0x8f65005c, 0x8f630064, -0x9764003c, 0x3c023fff, 0x3442ffff, 0xaf700064, -0xa32823, 0x852821, 0x45102b, 0x10400004, -0x2051021, 0x3c053fff, 0x34a5ffff, 0x2051021, -0xaf62005c, 0x24110001, 0xaf70004c, 0x8f620054, -0x16020009, 0x0, 0x93620023, 0x30420040, -0x14400005, 0x0, 0xe001359, 0x0, -0xa000d34, 0x0, 0xe001395, 0x2021, -0x8f430074, 0x431021, 0xaf62000c, 0x93620082, -0x30420080, 0x50400001, 0xa3600081, 0x3c028000, -0x34420001, 0x2421025, 0xaf420020, 0x9363007e, -0x9362007a, 0x10620004, 0x0, 0xe00130a, -0x24040001, 0x408821, 0x1220001a, 0x3c029000, -0x34420001, 0x2421025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0xa362007d, 0x8f640074, -0x34630001, 0x2431825, 0xaf430020, 0x4800009, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x24020002, 0x3c031000, 0xaf5201c0, 0xa34201c4, -0xaf4301f8, 0x9342010b, 0x24110006, 0x14510004, -0x8e820020, 0x24020001, 0xaf620130, 0x8e820020, -0x10400028, 0x27500100, 0xe001d7b, 0x0, -0x8f830054, 0x8e020000, 0xac620000, 0x8f840054, -0x96020008, 0xac820004, 0x8f850054, 0x8e020014, -0xaca20008, 0x8f830054, 0xac60000c, 0x8f840054, -0x96020012, 0xac820010, 0x8f850054, 0x8e030020, -0xaca30014, 0x9602000c, 0x9603000e, 0x8f840054, -0x21400, 0x431025, 0xac820018, 0x9343010b, -0x14710005, 0x3c020800, 0x94437eae, 0x8f840054, -0xa000d8a, 0x3c024013, 0x94437eae, 0x8f840054, -0x3c024014, 0x621825, 0xac83001c, 0xe001db5, -0x24040001, 0x8e630014, 0x8f620040, 0x10430033, -0x0, 0xaf630040, 0x9362003e, 0x30420001, -0x1440000b, 0x3c029000, 0x93620022, 0x24420001, -0xa3620022, 0x93630022, 0x3c020800, 0x8c440098, -0x64182b, 0x14600020, 0x3c020800, 0x3c029000, -0x34420001, 0x2421025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0x34420001, 0xa362007d, -0x8f640074, 0x34630001, 0x2431825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf5201c0, -0xa34201c4, 0xaf4301f8, 0x24020001, 0xa7620012, -0xa000dc4, 0xa3600022, 0x9743007a, 0x9444002a, -0x641821, 0x3063fffe, 0xa7630012, 0x97420108, -0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x21042, 0x30420001, -0x3e00008, 0x27bd0028, 0x27bdffe0, 0xafb20018, -0x3c120800, 0x8e420020, 0xafb00010, 0x27500100, -0xafbf001c, 0x10400043, 0xafb10014, 0xe001d7b, -0x0, 0x8f840054, 0x8e020000, 0xac820000, -0x936300b1, 0x936200c5, 0x8f850054, 0x31e00, -0x21400, 0x34420100, 0x621825, 0xaca30004, -0x8f840054, 0x8e02001c, 0xac820008, 0x8f830054, -0x8f620048, 0xac62000c, 0x8f840054, 0x96020012, -0xac820010, 0x8f830054, 0x8f620040, 0x24040001, -0xac620014, 0x8f850054, 0x3c020800, 0x24517ea0, -0xaca00018, 0x9623000e, 0x8f850054, 0x3c024016, -0x621825, 0xe001db5, 0xaca3001c, 0x96030008, -0x30630010, 0x1060001b, 0x8e420020, 0x10400019, -0x8e100000, 0xe001d7b, 0x0, 0x8f820054, -0xac500000, 0x8f830054, 0xac600004, 0x8f820054, -0xac400008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac600014, 0x8f850054, -0x24040001, 0xaca00018, 0x9622000e, 0x8f850054, -0x3c034015, 0x431025, 0xe001db5, 0xaca2001c, -0xaf600130, 0x1021, 0x8fbf001c, 0x8fb20018, +0xafb00010, 0x27510100, 0xe000333, 0x808021, +0xa7600008, 0xe00033c, 0x2002021, 0x2002021, +0xe000341, 0x24050001, 0x3c020800, 0x8c420020, +0x1040001b, 0x8fbf0018, 0xe00059b, 0x0, +0x9622000c, 0x8f830020, 0x3c050800, 0x94a54f76, +0x21400, 0xac700000, 0xac620004, 0xac600008, +0x8f64004c, 0x3c02401f, 0xa22825, 0xac64000c, +0x8f620050, 0x8fbf0018, 0x8fb10014, 0xac620010, +0x8f620054, 0x8fb00010, 0x24040001, 0xac620014, +0x27bd0020, 0xac600018, 0xa0005d3, 0xac65001c, 0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x27bdffe0, 0xafb20018, 0x3c120800, 0x8e420020, -0xafb00010, 0x27500100, 0xafbf001c, 0x1040003e, -0xafb10014, 0xe001d7b, 0x0, 0x8f830054, -0x8e020000, 0xac620000, 0x8f840054, 0x24020100, -0xac820004, 0x8f830054, 0x8e02001c, 0xac620008, -0x8f840054, 0x8e020018, 0xac82000c, 0x8f830054, -0x96020012, 0xac620010, 0x8f840054, 0x8e020008, -0xac820014, 0x8f830054, 0x24040001, 0x3c020800, -0x24517ea0, 0xac600018, 0x9623000e, 0x8f850054, -0x3c024017, 0x621825, 0xe001db5, 0xaca3001c, -0x96030008, 0x30630010, 0x1060001b, 0x8e420020, -0x10400019, 0x8e100000, 0xe001d7b, 0x0, -0x8f820054, 0xac500000, 0x8f830054, 0xac600004, -0x8f820054, 0xac400008, 0x8f830054, 0xac60000c, -0x8f820054, 0xac400010, 0x8f830054, 0xac600014, -0x8f850054, 0x24040001, 0xaca00018, 0x9622000e, -0x8f850054, 0x3c034015, 0x431025, 0xe001db5, -0xaca2001c, 0xaf600130, 0x1021, 0x8fbf001c, -0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, -0x27bd0020, 0x27bdffd8, 0xafb10014, 0x808821, -0xafbf0024, 0xafb40020, 0xafb3001c, 0xafb20018, -0xafb00010, 0x93620023, 0xc0a021, 0x30420040, -0x10400056, 0x30b3ffff, 0x3c020800, 0x8c430020, -0x409021, 0x10600051, 0x8f70004c, 0xe001d7b, -0x0, 0x93620005, 0x10400017, 0x0, -0x8f820054, 0xac510000, 0x8f840054, 0x24020001, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac500014, 0x8f830054, 0x3c020800, 0x408021, -0x24427ea0, 0xac600018, 0x9443000e, 0x8f840054, -0xa000eb0, 0x3c024010, 0x8f820054, 0xac510000, -0x8f830054, 0xac600004, 0x8f840054, 0x8f620040, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0x3c020800, 0xac700014, -0x8f840054, 0x408021, 0x24427ea0, 0xac800018, -0x9443000e, 0x8f840054, 0x3c024018, 0x621825, -0xac83001c, 0xe001db5, 0x24040001, 0x8e430020, -0x1060001a, 0x0, 0xe001d7b, 0x0, -0x8f820054, 0xac510000, 0x8f840054, 0x3c02008d, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac400014, 0x8f830054, 0x24040001, 0x26027ea0, -0xac600018, 0x9443000e, 0x8f850054, 0x3c024019, -0x621825, 0xe001db5, 0xaca3001c, 0x93620023, -0x30420020, 0x14400003, 0x3c020800, 0x52800057, -0x3c029000, 0x8c430020, 0x409021, 0x8f70004c, -0x10600052, 0x3c029000, 0xe001d7b, 0x0, -0x93620005, 0x10400017, 0x0, 0x8f820054, -0xac510000, 0x8f840054, 0x24020001, 0xac820004, -0x8f830054, 0xac600008, 0x8f820054, 0xac40000c, -0x8f830054, 0xac600010, 0x8f820054, 0xac500014, -0x8f830054, 0x3c020800, 0x408021, 0x24427ea0, -0xac600018, 0x9443000e, 0x8f840054, 0xa000f0b, -0x3c024010, 0x8f820054, 0xac510000, 0x8f830054, -0xac600004, 0x8f840054, 0x8f620040, 0xac820008, -0x8f830054, 0xac60000c, 0x8f820054, 0xac400010, -0x8f830054, 0x3c020800, 0xac700014, 0x8f840054, -0x408021, 0x24427ea0, 0xac800018, 0x9443000e, -0x8f840054, 0x3c024018, 0x621825, 0xac83001c, -0xe001db5, 0x24040001, 0x8e430020, 0x1060001b, -0x3c029000, 0xe001d7b, 0x0, 0x8f820054, -0xac510000, 0x8f840054, 0x131400, 0xac820004, -0x8f830054, 0xac600008, 0x8f820054, 0xac40000c, -0x8f830054, 0xac600010, 0x8f820054, 0xac400014, -0x8f830054, 0x24040001, 0x26027ea0, 0xac600018, -0x9443000e, 0x8f850054, 0x3c02401b, 0x621825, -0xe001db5, 0xaca3001c, 0x3c029000, 0x34420001, -0x2221025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x93630023, -0x3c028000, 0x34420001, 0x2221025, 0x8fbf0024, -0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3063009f, 0xa3630023, 0xaf420020, -0x3e00008, 0x27bd0028, 0x27bdffe0, 0xafb10014, -0x27510100, 0x3c029000, 0x34420001, 0xafb00010, -0x808021, 0x2021025, 0x3c038000, 0xafbf0018, -0xaf420020, 0x8f420020, 0x431024, 0x1440fffd, -0x3c028000, 0xa7600008, 0x8f64005c, 0x34420001, -0x3c039000, 0x2021025, 0xaf640128, 0xaf420020, -0x8f450100, 0x34630001, 0x3c048000, 0xa31825, -0xaf430020, 0x8f420020, 0x441024, 0x1440fffd, -0x0, 0x9362007d, 0x3c038000, 0x34420001, -0xa362007d, 0x8f640074, 0x34630001, 0xa31825, -0xaf430020, 0x4800009, 0x3c038000, 0x8f4201f8, -0x431024, 0x1440fffd, 0x24020002, 0x3c031000, -0xaf4501c0, 0xa34201c4, 0xaf4301f8, 0x3c020800, -0x8c430020, 0x1060001f, 0x8fbf0018, 0xe001d7b, -0x0, 0x8f830054, 0xac700000, 0x9622000c, -0x8f840054, 0x21400, 0xac820004, 0x8f830054, -0xac600008, 0x8f840054, 0x8f62004c, 0xac82000c, -0x8f830054, 0x8f620050, 0xac620010, 0x8f840054, -0x8f620054, 0xac820014, 0x8f830054, 0x3c020800, -0xac600018, 0x94437eae, 0x8f840054, 0x3c02401f, -0x621825, 0xac83001c, 0xe001db5, 0x24040001, -0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, -0x27bd0020, 0x3c029000, 0x34420001, 0x822025, -0xaf440020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x3e00008, 0x0, -0x3c028000, 0x34420001, 0x822025, 0x3e00008, -0xaf440020, 0x3c020800, 0x24424a04, 0xaf82000c, -0x3e00008, 0x0, 0x27bdffe8, 0xafb00010, -0x27500100, 0xafbf0014, 0x8e02001c, 0x14400003, -0x3c020800, 0xd, 0x3c020800, 0x8c430020, -0x10600028, 0x1021, 0xe001d7b, 0x0, -0x8f830054, 0x8e020000, 0xac620000, 0x8f840054, -0x8e02001c, 0xac820004, 0x8f830054, 0xac600008, -0x8f840054, 0x8e020018, 0xac82000c, 0x8f850054, -0x96020012, 0xaca20010, 0x8f830054, 0xac600014, -0x8f820054, 0x3c030800, 0xac400018, 0x94627eae, -0x8f840054, 0x3c034012, 0x431025, 0xac82001c, -0xe001db5, 0x24040001, 0x9763003a, 0x24020cbc, -0x14620008, 0x1021, 0x3c020800, 0x8c4300b0, -0x10600003, 0x3c036000, 0x3c020001, 0xac626800, -0x1021, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x3c020800, 0x97430078, 0x9444002e, -0x1021, 0x641821, 0x3063fffe, 0x3e00008, -0xa7630010, 0x8f450118, 0x8f660048, 0xa61023, -0x18400029, 0x0, 0x8f620040, 0x8f630024, -0x431021, 0xa22023, 0x5c800001, 0x402821, -0xaf650048, 0x8f620040, 0x9763003c, 0xc21023, -0x43102a, 0x1040001c, 0x3c029000, 0x8f450100, -0x34420001, 0x3c038000, 0xa21025, 0xaf420020, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0x34420004, 0xa362007d, -0x8f640074, 0x34630001, 0xa31825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4501c0, -0xa34201c4, 0xaf4301f8, 0x3e00008, 0x1021, -0x8f420100, 0x34420001, 0xaf4200a4, 0x3e00008, -0x1021, 0x3c038000, 0x8f420278, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf440240, -0xa3420244, 0x3e00008, 0xaf430278, 0x30a500ff, -0x3c029000, 0x34420001, 0x803021, 0xc21025, -0xaf420020, 0x3c038000, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x9362007d, 0x3c038000, -0xa21025, 0xa362007d, 0x8f640074, 0x34630001, -0xc31825, 0xaf430020, 0x4800009, 0x3c038000, -0x8f4201f8, 0x431024, 0x1440fffd, 0x24020002, -0x3c031000, 0xaf4601c0, 0xa34201c4, 0xaf4301f8, -0x3e00008, 0x0, 0x8f620040, 0x3e00008, -0x441023, 0xaf650040, 0x9362003e, 0x30420001, -0x1440000a, 0x802821, 0x93620022, 0x24420001, -0xa3620022, 0x93630022, 0x3c020800, 0x8c440098, -0x64182b, 0x14600021, 0x3c020800, 0x3c029000, -0x34420001, 0xa21025, 0xaf420020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0x34420001, 0xa362007d, -0x8f640074, 0x34630001, 0xa31825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4501c0, -0xa34201c4, 0xaf4301f8, 0x24020001, 0x24030001, -0xa7630012, 0x3e00008, 0xa3600022, 0x9743007a, -0x9444002a, 0x1021, 0x641821, 0x3063fffe, -0x3e00008, 0xa7630012, 0x27bdffe8, 0xafbf0010, -0x9362003e, 0x30420040, 0x1440000e, 0x8fbf0010, -0x8f630058, 0x8f62004c, 0x1462000a, 0x0, -0x9362003e, 0x2021, 0x344200c0, 0xe001395, -0xa362003e, 0x8f430074, 0x431021, 0xaf62000c, -0x8fbf0010, 0x3e00008, 0x27bd0018, 0x3c020800, -0x8c430020, 0x27bdffe8, 0xafb00010, 0x27500100, -0x10600022, 0xafbf0014, 0xe001d7b, 0x0, -0x8f830054, 0x8e020000, 0xac620000, 0x8f840054, -0x8e020004, 0xac820004, 0x8f830054, 0x8e020018, -0xac620008, 0x8f840054, 0x8e03001c, 0xac83000c, -0x9602000c, 0x9203000a, 0x8f840054, 0x21400, -0x431025, 0xac820010, 0x8f830054, 0xac600014, -0x8f820054, 0xac400018, 0x96030008, 0x3c020800, -0x94447eae, 0x8f850054, 0x31c00, 0x641825, -0x24040001, 0xe001db5, 0xaca3001c, 0x8fbf0014, -0x8fb00010, 0x3e00008, 0x27bd0018, 0x3c020800, -0x8c430020, 0x27bdffe8, 0xafb00010, 0x27500100, -0x1060001e, 0xafbf0014, 0xe001d7b, 0x0, -0x8f820054, 0xac400000, 0x8f830054, 0xac600004, -0x8f820054, 0xac400008, 0x8f830054, 0xac60000c, -0x9602000c, 0x9603000e, 0x8f840054, 0x21400, -0x431025, 0xac820010, 0x8f830054, 0xac600014, -0x8f820054, 0xac400018, 0x96030008, 0x3c020800, -0x94447eae, 0x8f850054, 0x31c00, 0x641825, -0x24040001, 0xe001db5, 0xaca3001c, 0x8fbf0014, -0x8fb00010, 0x3e00008, 0x27bd0018, 0x27bdffe8, -0xafb00010, 0x27500100, 0xafbf0014, 0x9602000c, -0x10400022, 0x802821, 0x3c020800, 0x8c430020, -0x10600038, 0x8fbf0014, 0xe001d7b, 0x0, -0x8f840054, 0x8e030000, 0xac830000, 0x9602000c, -0x8f840054, 0x21400, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac400014, 0x8f830054, -0x24040001, 0x3c020800, 0xac600018, 0x94437eae, -0x8f850054, 0x3c02400b, 0x621825, 0xe001db5, -0xaca3001c, 0xa00112e, 0x8fbf0014, 0x93620005, -0x30420010, 0x14400015, 0x3c029000, 0x34420001, -0xa21025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x3c038000, -0x93620005, 0x34630001, 0xa02021, 0xa31825, -0x24055852, 0x34420010, 0xa3620005, 0xe00052e, -0xaf430020, 0xa00112e, 0x8fbf0014, 0xd, +0x3c020800, 0x8c420020, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0x1040001e, 0x27500100, 0xe00059b, +0x0, 0x8e020000, 0x8f830020, 0x96060008, +0x9605000c, 0xac620000, 0x8e020004, 0x3c040800, +0x94844f76, 0x52c00, 0xac620004, 0x8e020018, +0x63400, 0xc43025, 0xac620008, 0x8e02001c, +0x8fbf0014, 0x24040001, 0xac62000c, 0x9202000a, +0x8fb00010, 0x27bd0018, 0xa22825, 0xac650010, +0xac600014, 0xac600018, 0xa0005d3, 0xac66001c, 0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, -0x3c020800, 0x8c430020, 0x27bdffe8, 0xafb00010, -0x27500100, 0x10600020, 0xafbf0014, 0xe001d7b, -0x0, 0x8f840054, 0x8e020004, 0xac820000, -0x9603000c, 0x9762002c, 0x8f840054, 0x31c00, -0x431025, 0xac820004, 0x8f830054, 0xac600008, -0x8f820054, 0xac40000c, 0x8f830054, 0xac600010, -0x8f820054, 0xac400014, 0x8f830054, 0x24040001, -0x3c020800, 0xac600018, 0x94437eae, 0x8f850054, -0x3c02400e, 0x621825, 0xe001db5, 0xaca3001c, -0xe001022, 0x8e040000, 0x8fbf0014, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x3c020800, 0x8c430020, -0x27bdffe0, 0xafb10014, 0x808821, 0xafb00010, -0x30b0ffff, 0x1060001a, 0xafbf0018, 0xe001d7b, -0x0, 0x8f820054, 0xac510000, 0x8f840054, -0x101400, 0xac820004, 0x8f830054, 0xac600008, -0x8f820054, 0xac40000c, 0x8f830054, 0xac600010, -0x8f820054, 0xac400014, 0x8f830054, 0x3c020800, -0xac600018, 0x94437eae, 0x8f840054, 0x3c024019, -0x621825, 0xac83001c, 0xe001db5, 0x24040001, +0x93620000, 0x24030020, 0x304200ff, 0x10430003, +0x0, 0xa0010cb, 0x0, 0x3e00008, +0x0, 0x27bdffe8, 0xafb00010, 0xafbf0014, +0x9742010c, 0x10400004, 0x808021, 0xd, +0xa0004c0, 0x8fbf0014, 0x93620005, 0x30420010, +0x1440000e, 0x8fbf0014, 0xe000333, 0x0, +0x93620005, 0x2002021, 0x34420010, 0xe00033c, +0xa3620005, 0x2002021, 0x8fbf0014, 0x8fb00010, +0x24055852, 0xa00049d, 0x27bd0018, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x27bdffe8, 0xafbf0010, +0x8f440100, 0x97420108, 0x304300ff, 0x2402001f, +0x1062003f, 0x28620020, 0x1040001a, 0x24020038, +0x24020008, 0x1062005a, 0x28620009, 0x1040000a, +0x2402000a, 0x4600056, 0x28620002, 0x1440002b, +0x8fbf0010, 0x24020006, 0x10620028, 0x0, +0xa00052a, 0x0, 0x1062004d, 0x2862000a, +0x14400022, 0x8fbf0010, 0x2402000b, 0x10620024, +0x2402000e, 0x10620024, 0x0, 0xa00052a, +0x0, 0x10620036, 0x28620039, 0x1040000a, +0x24020080, 0x24020036, 0x1062003a, 0x28620037, +0x1040002c, 0x24020035, 0x10620033, 0x8fbf0010, +0xa00052a, 0x0, 0x1062000e, 0x28620081, +0x10400006, 0x240200c8, 0x24020039, 0x10620028, +0x8fbf0010, 0xa00052a, 0x0, 0x1062000f, +0x8fbf0010, 0xa00052a, 0x0, 0xa000475, +0x27bd0018, 0x8fbf0010, 0xa0003f3, 0x27bd0018, +0xa0004a6, 0x27bd0018, 0xa00041f, 0x27bd0018, +0x8fbf0010, 0xa000446, 0x27bd0018, 0x93620000, +0x24030020, 0x304200ff, 0x1043001a, 0x8fbf0010, +0xe001013, 0x0, 0x10400016, 0x8fbf0010, +0x8f440100, 0x8fbf0010, 0x2821, 0xa000341, +0x27bd0018, 0x8fbf0010, 0xa0006ae, 0x27bd0018, +0x9745010c, 0x8fbf0010, 0xa0006ce, 0x27bd0018, +0xa0006f3, 0x27bd0018, 0x9345010d, 0xa00073d, +0x27bd0018, 0x8fbf0010, 0xa000719, 0x27bd0018, +0x8fbf0010, 0x3e00008, 0x27bd0018, 0x3c040800, +0x94844f82, 0x3c020800, 0x8c424f8c, 0x3083ffff, +0x318c0, 0x431021, 0xaf42003c, 0x3c020800, +0x8c424f88, 0xaf420038, 0x3c020050, 0x34420008, +0xaf420030, 0x0, 0x0, 0x0, +0x8f420000, 0x30420020, 0x1040fffd, 0x0, +0x8f420400, 0x3c010800, 0xac224f78, 0x8f420404, +0x3c010800, 0xac224f7c, 0x3c020020, 0xaf420030, +0x0, 0x3c020800, 0x94424f80, 0x3c030800, +0x94634f84, 0x3c050800, 0x94a54f86, 0x24840001, +0x431021, 0x3083ffff, 0x3c010800, 0xa4224f80, +0x3c010800, 0xa4244f82, 0x14650003, 0x0, +0x3c010800, 0xa4204f82, 0x3e00008, 0x0, +0x3c05000a, 0x27bdffe8, 0x3452821, 0x3c040800, +0x24844f68, 0xafbf0010, 0xe00064b, 0x2406000a, +0x3c020800, 0x94424f6a, 0x3c030800, 0x94634f86, +0x3042000f, 0x24420003, 0x431804, 0x24027fff, +0x43102b, 0x10400002, 0xaf83001c, 0xd, +0xe00052c, 0x0, 0x3c020800, 0x94424f72, +0x8fbf0010, 0x27bd0018, 0x3e00008, 0xa74200a2, +0x3c02000a, 0x3421021, 0x94430006, 0x3c020800, +0x94424f72, 0x3c010800, 0xa4234f6e, 0x431023, +0x8f83001c, 0x21400, 0x21403, 0x43102b, +0x3e00008, 0x38420001, 0x3c060800, 0x94c64f72, +0x8f85001c, 0x3c02000a, 0x3422021, 0x94820006, +0x3c010800, 0xa4224f6e, 0x94830006, 0xc31023, +0x21400, 0x21403, 0x45102b, 0x38420001, +0x3c010800, 0xa4234f6e, 0x1440fff4, 0x0, +0x3e00008, 0x0, 0x3c03000a, 0x3431021, +0x94420006, 0x3c060800, 0x94c64f72, 0x8f85001c, +0x3c010800, 0xa4224f6e, 0xc21023, 0x21400, +0x21403, 0x45102b, 0x38420001, 0x1040000f, +0x0, 0x3432021, 0x94820006, 0x3c010800, +0xa4224f6e, 0x94830006, 0xc31023, 0x21400, +0x21403, 0x45102b, 0x38420001, 0x3c010800, +0xa4234f6e, 0x1440fff4, 0x0, 0x3c020800, +0x8c424f78, 0x27430400, 0xaf830020, 0xaf420038, +0x3c020800, 0x8c424f7c, 0xaf42003c, 0x3c020005, +0xaf420030, 0x3e00008, 0xaf800018, 0x8f820018, +0x3c030006, 0x21140, 0x431025, 0xaf420030, +0x0, 0x0, 0x0, 0x8f420000, +0x30420010, 0x1040fffd, 0x27420400, 0xaf820020, +0x3e00008, 0xaf800018, 0x3c060800, 0x8cc64f7c, +0x8f850018, 0x8f830020, 0x3c020800, 0x94424f72, +0x27bdffe0, 0x24a50001, 0x24630020, 0x24420001, +0x24c70020, 0xafb10014, 0xafb00010, 0xafbf0018, +0xaf850018, 0xaf830020, 0x3c010800, 0xa4224f72, +0x309000ff, 0x3c010800, 0xac274f7c, 0x4c10008, +0x8821, 0x4e00006, 0x0, 0x3c020800, +0x8c424f78, 0x24420001, 0x3c010800, 0xac224f78, +0x3c020800, 0x94424f72, 0x3c030800, 0x94634f80, +0x10202b, 0x431026, 0x2c420001, 0x441025, +0x14400004, 0x8f830018, 0x24020010, 0x1462000f, +0x0, 0xe0005c4, 0x24110001, 0x3c030800, +0x94634f72, 0x3c020800, 0x94424f80, 0x14620003, +0x0, 0xe00052c, 0x0, 0x16000003, +0x0, 0xe00059b, 0x0, 0x3c030800, +0x94634f76, 0x3c020800, 0x94424f74, 0x24630001, +0x3064ffff, 0x3c010800, 0xa4234f76, 0x14820003, +0x0, 0x3c010800, 0xa4204f76, 0x3c040800, +0x94844f72, 0x52000004, 0x3c05000a, 0xa74400a2, +0xa000639, 0x2201021, 0x3451021, 0x94430006, +0x8f86001c, 0x831023, 0x21400, 0x21403, +0x46102b, 0x38420001, 0x3c010800, 0xa4234f6e, +0x1040000f, 0x2201021, 0x3452821, 0x94a20006, +0x3c010800, 0xa4224f6e, 0x94a30006, 0x831023, +0x21400, 0x21403, 0x46102b, 0x38420001, +0x3c010800, 0xa4234f6e, 0x1440fff4, 0x2201021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, -0x27bd0020, 0x27bdffe8, 0x27450100, 0xafbf0010, -0x94a3000c, 0x240200c1, 0x14620031, 0x803021, -0x3c029000, 0x34420001, 0xc21025, 0xaf420020, -0x3c038000, 0x8f420020, 0x431024, 0x1440fffd, -0x3c028000, 0x34420001, 0x3c049000, 0x34840001, -0x3c058000, 0x24030012, 0xc21025, 0xc42025, -0xa363003f, 0xaf420020, 0xaf440020, 0x8f420020, -0x451024, 0x1440fffd, 0x0, 0x9362007d, -0x3c038000, 0x34420020, 0xa362007d, 0x8f640074, -0x34630001, 0xc31825, 0xaf430020, 0x4800009, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x24020002, 0x3c031000, 0xaf4601c0, 0xa34201c4, -0xaf4301f8, 0xc02021, 0x2821, 0x3021, -0xe000e6e, 0x24070755, 0xa0011bf, 0x8fbf0010, -0xc02021, 0x94a5000c, 0x24060001, 0xe000e6e, -0x2407075a, 0x8fbf0010, 0x3e00008, 0x27bd0018, -0x3c020800, 0x8c430020, 0x27bdffe0, 0xafb00010, -0x808021, 0xafb10014, 0xa08821, 0xafb20018, -0x30d200ff, 0x10600033, 0xafbf001c, 0xe001d7b, -0x0, 0x93620005, 0x10400017, 0x0, -0x8f820054, 0xac500000, 0x8f840054, 0x24020001, -0xac820004, 0x8f830054, 0xac600008, 0x8f820054, -0xac40000c, 0x8f830054, 0xac600010, 0x8f820054, -0xac510014, 0x8f830054, 0x3c020800, 0xac600018, -0x94437eae, 0x8f840054, 0x3c024010, 0x621825, -0xa0011fc, 0xac83001c, 0x8f820054, 0xac500000, -0x8f830054, 0xac600004, 0x8f840054, 0x8f620040, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac710014, 0x8f820054, -0x3c030800, 0xac400018, 0x94627eae, 0x8f840054, -0x3c034018, 0x431025, 0xac82001c, 0xe001db5, -0x2402021, 0x8fbf001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe8, -0xafbf0014, 0xafb00010, 0x93620005, 0x30420001, -0x10400034, 0x808021, 0x3c029000, 0x34420001, -0x2021025, 0xaf420020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x93620023, -0x34420004, 0xa3620023, 0x93630005, 0x3c048000, -0x3c020800, 0x306300fe, 0xa3630005, 0x8c430020, -0x34840001, 0x2042025, 0xaf440020, 0x1060001e, -0x8fbf0014, 0xe001d7b, 0x0, 0x8f820054, -0xac500000, 0x93630082, 0x9362003f, 0x8f840054, -0x31a00, 0x431025, 0xac820004, 0x8f830054, -0xac600008, 0x8f820054, 0xac40000c, 0x8f830054, -0xac600010, 0x8f820054, 0xac400014, 0x8f830054, -0x3c020800, 0xac600018, 0x94437eae, 0x8f840054, -0x3c02400a, 0x621825, 0xac83001c, 0xe001db5, -0x24040001, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0xafbf0010, 0x8f420188, -0x803821, 0x9364003f, 0x24030012, 0x21402, -0x14830023, 0x304500ff, 0x8f62004c, 0x3c039000, -0x34630001, 0xaf620070, 0x8f64004c, 0x3c068000, -0xe31825, 0xaf640050, 0xa3650080, 0xa365007a, -0xaf430020, 0x8f420020, 0x461024, 0x1440fffd, -0x0, 0x9362007d, 0x3c038000, 0xa362007d, -0x8f640074, 0x34630001, 0xe31825, 0xaf430020, -0x480001c, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4701c0, -0xa34201c4, 0xaf4301f8, 0xa00127f, 0x8fbf0010, -0x9362007e, 0x1445000e, 0x0, 0x93620080, -0x1045000b, 0x0, 0xa3650080, 0x8f830000, -0x93660080, 0x8f440180, 0x8f65004c, 0x8c620000, -0x40f809, 0x0, 0xa00127f, 0x8fbf0010, -0xa3650080, 0x8fbf0010, 0x3e00008, 0x27bd0018, -0x3c020800, 0x8c430020, 0x27bdffe0, 0xafb10014, -0x808821, 0xafb20018, 0xa09021, 0xafb00010, -0x30d000ff, 0x1060001b, 0xafbf001c, 0xe001d7b, -0x0, 0x8f820054, 0xac510000, 0x8f830054, -0xac700004, 0x8f820054, 0xac520008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0xac600014, 0x8f820054, 0x3c030800, 0xac400018, -0x94627eae, 0x8f840054, 0x3c034011, 0x431025, -0xac82001c, 0xe001db5, 0x24040001, 0xa0012a7, -0x24020001, 0x1021, 0x8fbf001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x27bdffe8, 0xafbf0014, 0xafb00010, 0x93630000, -0x24020020, 0x10620005, 0x27500100, 0xe001535, -0x0, 0xa0012db, 0x8fbf0014, 0x8f440100, -0x8f650050, 0xe0013a5, 0x9206001b, 0x3c020800, -0x8c430020, 0x1060001b, 0x8e100018, 0xe001d7b, -0x0, 0x8f840054, 0x8f420100, 0xac820000, -0x8f830054, 0xac700004, 0x8f840054, 0x8f620050, -0xac820008, 0x8f830054, 0xac60000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac600014, 0x8f850054, -0x24040001, 0x3c020800, 0xaca00018, 0x94437eae, -0x8f850054, 0x3c02401c, 0x621825, 0xe001db5, -0xaca3001c, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x8f420140, 0x3c031000, 0xaf420200, -0x3e00008, 0xaf430238, 0x3c029000, 0x8f450140, -0x34420001, 0x3c038000, 0xa21025, 0xaf420020, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x9362007d, 0x3c038000, 0x34420001, 0xa362007d, -0x8f640074, 0x34630001, 0xa31825, 0xaf430020, -0x4800009, 0x3c038000, 0x8f4201f8, 0x431024, -0x1440fffd, 0x24020002, 0x3c031000, 0xaf4501c0, -0xa34201c4, 0xaf4301f8, 0x3e00008, 0x0, -0xd, 0x3e00008, 0x0, 0xd, -0x3e00008, 0x0, 0x24020001, 0x3e00008, -0xa7620010, 0x9362003f, 0x2c840001, 0x304300ff, -0x2c62000d, 0x38420001, 0x822024, 0x10800003, -0x2c620014, 0x14400009, 0x1021, 0x9363007e, -0x9362007a, 0x14620007, 0x0, 0x9363007e, -0x24020001, 0x24630001, 0xa363007e, 0x3e00008, -0x0, 0x9363007e, 0x93620080, 0x14620006, -0x0, 0x9363000b, 0x24020001, 0x24630001, -0x3e00008, 0xa363000b, 0x3e00008, 0x1021, -0x93620005, 0x30420010, 0x10400006, 0x0, -0x8f62004c, 0xaf620050, 0x8f63004c, 0x3e00008, -0xaf630070, 0x9362000b, 0x10400012, 0x0, -0xa360000b, 0x9362003f, 0x9363007e, 0x9362007a, -0x14620005, 0x0, 0x9362007e, 0x24420001, -0x3e00008, 0xa362007e, 0x9363007e, 0x93620080, -0x14620004, 0x0, 0x9362000b, 0x24420001, -0xa362000b, 0x3e00008, 0x0, 0x27bdffe8, -0xafbf0010, 0xe001359, 0x0, 0x8f6300dc, -0x8f6200cc, 0x14620004, 0x8fbf0010, 0x24020001, -0xa7620010, 0x8fbf0010, 0x24020001, 0xa7620012, -0xa7620014, 0xa7620016, 0x3e00008, 0x27bd0018, -0x27bdffe8, 0x24020001, 0x24040001, 0xafbf0010, -0xe001382, 0xaf62000c, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x3c020800, 0x8c430020, 0x27bdffe8, -0x10600019, 0xafbf0010, 0xe001d7b, 0x0, -0x8f820054, 0xac400000, 0x8f830054, 0xac600004, -0x8f820054, 0xac400008, 0x8f830054, 0xac60000c, -0x8f820054, 0xac400010, 0x8f830054, 0xac600014, -0x8f820054, 0x3c030800, 0xac400018, 0x94627eae, -0x8f840054, 0x3c034020, 0x431025, 0xac82001c, -0xe001db5, 0x24040001, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x9762006a, 0x97630068, 0x22880, -0x3063ffff, 0x10a00002, 0x24660001, 0xa33021, -0x3c020800, 0x8c43004c, 0xc02821, 0x65102b, -0x54400001, 0xa01821, 0x602821, 0xaf650028, -0x54800001, 0xa3600081, 0x3e00008, 0x0, -0x10800004, 0x0, 0x8f620028, 0xa00139b, -0x22840, 0x8f650028, 0x3c020800, 0x8c420050, -0xa2182b, 0x54600001, 0xa01021, 0x10800002, -0x402821, 0xaf650028, 0x3e00008, 0x51040, +0x27bd0020, 0x3084ffff, 0x30a5ffff, 0x1821, +0x10800007, 0x0, 0x30820001, 0x10400002, +0x42042, 0x651821, 0xa000641, 0x52840, +0x3e00008, 0x601021, 0x10c00006, 0x24c6ffff, +0x8ca20000, 0x24a50004, 0xac820000, 0xa00064b, +0x24840004, 0x3e00008, 0x0, 0x10a00008, +0x24a3ffff, 0xac860000, 0x0, 0x0, +0x2402ffff, 0x2463ffff, 0x1462fffa, 0x24840004, +0x3e00008, 0x0, 0x24020001, 0xaf62000c, +0xa7620010, 0xa7620012, 0xa7620014, 0x3e00008, +0xa7620016, 0x3082007f, 0x3421021, 0x3c08000e, +0x481821, 0x3c020800, 0x8c420020, 0x27bdffd8, +0x2407ff80, 0xafb3001c, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf0020, 0x808021, 0x30b100ff, +0x872024, 0x30d200ff, 0x1040002f, 0x9821, +0xaf44002c, 0x90620000, 0x24030050, 0x304200ff, +0x1443000e, 0x0, 0x3c020800, 0x8c4200e0, +0x2021021, 0x471024, 0xaf42002c, 0x3c020800, +0x8c4200e0, 0x2021021, 0x3042007f, 0x3421021, +0x481021, 0x944200d4, 0x3053ffff, 0xe00059b, +0x0, 0x3c020800, 0x94424f76, 0x8f830020, +0x113400, 0xc23025, 0x122c00, 0x3c024000, +0xc23025, 0x34a50001, 0xac700000, 0x8fbf0020, +0xac600004, 0x8fb20018, 0xac730008, 0x8fb10014, +0xac60000c, 0x8fb3001c, 0xac650010, 0x8fb00010, +0xac600014, 0x24040001, 0xac600018, 0x27bd0028, +0xa0005d3, 0xac66001c, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0028, 0x9343010f, 0x24020010, 0x1062000e, +0x28650011, 0x10a00007, 0x24020012, 0x24020008, +0x2405003a, 0x10620006, 0x3021, 0x3e00008, +0x0, 0x24050035, 0x1462fffc, 0x3021, +0xa000666, 0x0, 0x8f420074, 0x24420fa0, +0x3e00008, 0xaf62000c, 0x27bdffe8, 0xafbf0010, +0xe000341, 0x24050001, 0x8fbf0010, 0x24020001, +0xa7620012, 0x27bd0018, 0x24020001, 0x3e00008, +0xa3600022, 0x27bdffe0, 0xafb10014, 0xafb00010, +0xafbf0018, 0x30b1ffff, 0xe000333, 0x808021, +0x9362003f, 0x24030004, 0x304200ff, 0x1443000c, +0x2002021, 0x12200008, 0x2402000a, 0xe00065f, +0x0, 0x93620005, 0x2403fffe, 0x431024, +0xa3620005, 0x24020012, 0xa362003f, 0x2002021, +0xe00033c, 0xa3600081, 0x16200003, 0x2002021, +0xe0006c3, 0x0, 0x2002021, 0x322600ff, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x24050038, +0xa000666, 0x27bd0020, 0x27bdffe0, 0xafbf001c, +0xafb20018, 0xafb10014, 0xafb00010, 0xe000333, +0x808021, 0xe00065f, 0x0, 0x9362003f, +0x24120018, 0x305100ff, 0x12320003, 0x2002021, +0x24020012, 0xa362003f, 0x93620005, 0x2403fffe, +0x431024, 0xe00033c, 0xa3620005, 0x2002021, +0x24050020, 0x16320007, 0x3021, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xa000341, +0x27bd0020, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x24050039, 0xa000666, 0x27bd0020, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x9742010c, +0x24050036, 0x808021, 0x14400010, 0x304600ff, +0xe000333, 0x0, 0x24020012, 0xa362003f, +0x93620005, 0x34420010, 0xe00065f, 0xa3620005, +0xe00033c, 0x2002021, 0x2002021, 0xe000341, +0x24050020, 0xa000732, 0x0, 0xe000666, +0x0, 0xe000333, 0x2002021, 0x93620023, +0x2403ff9f, 0x2002021, 0x431024, 0x8fbf0014, +0x8fb00010, 0xa3620023, 0xa00033c, 0x27bd0018, 0x27bdffe0, 0xafbf0018, 0xafb10014, 0xafb00010, -0x9362007e, 0x30d000ff, 0x1602002a, 0x808821, -0x93620080, 0x16020027, 0x0, 0x9362007f, -0x16020024, 0x0, 0x9362007a, 0x16020002, -0x0, 0xd, 0xe001329, 0x0, -0x3c029000, 0x34420001, 0x3c038000, 0x2221025, -0xa370007a, 0xaf420020, 0x8f420020, 0x431024, -0x1440fffd, 0x0, 0x9362007d, 0x3c038000, -0xa362007d, 0x8f640074, 0x34630001, 0x2231825, -0xaf430020, 0x480000c, 0x3c038000, 0x8f4201f8, -0x431024, 0x1440fffd, 0x24020002, 0x3c031000, -0xaf5101c0, 0xa34201c4, 0xaf4301f8, 0xa0013d8, -0x8fbf0018, 0xd, 0x8fbf0018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe0, -0xafbf0018, 0xafb10014, 0xafb00010, 0x93620005, -0x24030030, 0x30420030, 0x1443009a, 0x808821, -0x3c020800, 0x8c430020, 0x10600093, 0x0, -0xe001d7b, 0x0, 0x8f820054, 0xac510000, -0x9363003e, 0x9364003f, 0x8f850054, 0x31a00, -0x832025, 0xaca40004, 0x93620082, 0x30420080, -0x10400003, 0x3c020800, 0xa0013ff, 0x8c420048, -0x9362003e, 0x30420040, 0x14400003, 0x1021, -0x93620081, 0x304200ff, 0x93630082, 0x8f840054, -0x21600, 0x31c00, 0x431025, 0xac820008, -0x8f830054, 0x8f620040, 0xac62000c, 0x8f840054, -0x8f620048, 0xac820010, 0x8f850054, 0x8f63004c, -0xaca30014, 0x8f620050, 0x8f63004c, 0x431023, -0x4410004, 0x0, 0x8f830054, 0xa001418, -0x8f62004c, 0x8f830054, 0x8f620050, 0xac620018, -0x2021, 0x3c100800, 0x26027ea0, 0x9443000e, -0x8f850054, 0x3c02c00b, 0x621825, 0xe001db5, -0xaca3001c, 0x8f830054, 0x8f620054, 0xac620000, -0x8f840054, 0x8f620058, 0xac820004, 0x8f850054, -0x8f62005c, 0xaca20008, 0x8f630060, 0x8f420074, -0x8f840054, 0x621821, 0xac83000c, 0x8f850054, -0x8f620064, 0xaca20010, 0x97630068, 0x9762006a, -0x8f840054, 0x31c00, 0x431025, 0xac820014, -0x93630082, 0x24020080, 0x14620005, 0x0, -0x8f820054, 0xac400018, 0xa00145a, 0x2021, -0x8f63000c, 0x24020001, 0x10620005, 0x0, -0x9362003e, 0x30420040, 0x10400006, 0x0, -0x8f830054, 0x2402ffff, 0xac620018, 0xa00145a, -0x2021, 0x8f63000c, 0x8f440074, 0x3c020800, -0x641823, 0x621024, 0x2c420001, 0x21023, -0x8f840054, 0x621824, 0x31843, 0xac830018, -0x2021, 0x26107ea0, 0x9602000e, 0x8f850054, -0x3c03c00c, 0x431025, 0xe001db5, 0xaca2001c, -0x8f840054, 0x8f620018, 0xac820000, 0x8f830054, -0xac600004, 0x8f840054, 0x8f62006c, 0xac820008, -0x8f850054, 0x8f6200dc, 0xaca2000c, 0x8f830054, -0xac600010, 0x93620005, 0x8f830054, 0x21600, -0xac620014, 0x8f850054, 0x24040001, 0xaca00018, -0x9602000e, 0x8f850054, 0x3c03400d, 0x431025, -0xe001db5, 0xaca2001c, 0xa3600005, 0xe001022, -0x2202021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0020, 0x27bdffe0, 0xafb10014, -0x808821, 0xafb00010, 0x30d000ff, 0x30e700ff, -0x14e00031, 0xafbf0018, 0x93630000, 0x24020030, -0x1462002a, 0x0, 0x8f830000, 0x93660080, -0x8f440100, 0x8f65004c, 0x8c620000, 0x40f809, -0x0, 0x1040004d, 0x8fbf0018, 0x9362007e, -0x1602001b, 0x0, 0x93620080, 0x16020018, -0x0, 0x9362007f, 0x16020015, 0x0, -0x9362007a, 0x16020002, 0x0, 0xd, -0xa370007a, 0xe000f9a, 0x8f440100, 0xa360007c, -0xe000fa5, 0x8f440100, 0x3c038000, 0x8f4201f8, -0x431024, 0x1440fffd, 0x24020002, 0x3c031000, -0xaf5101c0, 0xa34201c4, 0xa0014dd, 0xaf4301f8, -0xd, 0xa0014e4, 0x8fbf0018, 0xd, -0xa0014e4, 0x8fbf0018, 0x9362007e, 0x16020025, -0x0, 0x93620080, 0x16020022, 0x0, -0x9362007f, 0x1602001f, 0x0, 0x9362007a, -0x16020002, 0x0, 0xd, 0xaf650050, -0xaf650070, 0xa370007a, 0xe000f9a, 0x8f440100, -0xa360007c, 0xe000fa5, 0x8f440100, 0x3c038000, -0x8f4201f8, 0x431024, 0x1440fffd, 0x24020002, -0x3c031000, 0xaf5101c0, 0xa34201c4, 0xaf4301f8, -0x93640000, 0x24020030, 0x14820008, 0x8fbf0018, -0x8f440100, 0xe001022, 0x0, 0xa0014e4, -0x8fbf0018, 0xd, 0x8fbf0018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe8, -0xafbf0010, 0xe001544, 0x8f440140, 0x1040000b, -0x3c038000, 0x8f4201f8, 0x431024, 0x1440fffd, -0x0, 0x8f420140, 0x24030002, 0xaf4201c0, -0x3c021000, 0xa34301c4, 0xaf4201f8, 0x8fbf0010, -0x3e00008, 0x27bd0018, 0x27bdffe8, 0xafbf0014, -0xafb00010, 0x8f420188, 0x9363007e, 0x21402, -0x305000ff, 0x1470002d, 0x0, 0x93620080, -0x1050002a, 0x0, 0xa3700080, 0x93630000, -0x24020030, 0x14620022, 0x0, 0x8f830000, -0x93660080, 0x8f440180, 0x8f65004c, 0x8c620000, -0x40f809, 0x0, 0x1040001e, 0x8fbf0014, -0xa370007a, 0xe000f9a, 0x8f440180, 0xa360007c, -0xe000fa5, 0x8f440180, 0x3c038000, 0x8f4201f8, -0x431024, 0x1440fffd, 0x0, 0x8f420180, -0x24030002, 0xaf4201c0, 0x3c021000, 0xa34301c4, -0xaf4201f8, 0xe001022, 0x8f440180, 0x8f440180, -0xe00188f, 0x2821, 0xa001532, 0x8fbf0014, -0xd, 0xa001532, 0x8fbf0014, 0xa3700080, +0x30b100ff, 0xe000333, 0x808021, 0x24020012, +0xe00065f, 0xa362003f, 0xe00033c, 0x2002021, +0x2002021, 0x2203021, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0x24050035, 0xa000666, 0x27bd0020, +0xa380002c, 0x3e00008, 0xa380002d, 0x8f420278, +0x440fffe, 0x8f820034, 0xaf420240, 0x24020002, +0xa3420244, 0x3c021000, 0x3e00008, 0xaf420278, +0x3c036000, 0x8c625400, 0x30420008, 0x1440fffd, +0x0, 0x8c625408, 0xaf820000, 0x24020052, +0xac605408, 0xac645430, 0xac625434, 0x24020008, +0x3e00008, 0xac625400, 0x3c026000, 0x8c425400, +0x30420008, 0x10400005, 0x3c036000, 0x8c625400, +0x30420008, 0x1440fffd, 0x0, 0x8f830000, +0x3c026000, 0x3e00008, 0xac435408, 0x90a30000, +0x24020005, 0x804021, 0x3063003f, 0x4821, +0x14620005, 0x5021, 0x90a2001c, 0x94a3001e, +0x304900ff, 0x306affff, 0xad00000c, 0xad000010, +0xad000024, 0x95020014, 0x8d05001c, 0x8d040018, +0x3042ffff, 0x491023, 0x21100, 0x237c3, +0x403821, 0x862023, 0xa2102b, 0x822023, +0xa72823, 0xad05001c, 0xad040018, 0xa5090014, +0xa5090020, 0xa50a0016, 0x3e00008, 0xa50a0022, +0x8f4201f8, 0x440fffe, 0x24020002, 0xaf4401c0, +0xa34201c4, 0x3c021000, 0x3e00008, 0xaf4201f8, +0x3c020800, 0x8c4200b4, 0x27bdffe8, 0xafbf0014, +0x24420001, 0xafb00010, 0x3c010800, 0xac2200b4, +0x8f430024, 0x3c02001f, 0x30aa00ff, 0x3442ff80, +0x30d800ff, 0x628024, 0x80f821, 0x30ef00ff, +0x1158003b, 0x1405821, 0x240cff80, 0x3c19000a, +0x3163007f, 0x310c0, 0x31940, 0x621821, +0x3c020800, 0x8c4200dc, 0x25680001, 0x310d007f, +0x3e21021, 0x431021, 0x3043007f, 0x3431821, +0x4c1024, 0x794821, 0xaf420024, 0x8d220024, +0x16c1824, 0x6c7026, 0xad22000c, 0x8d220024, +0x310800ff, 0xad220010, 0x95220014, 0x95230020, +0x8d27001c, 0x3042ffff, 0x3063ffff, 0x8d260018, +0x431023, 0x21100, 0x227c3, 0x402821, +0xc43023, 0xe2102b, 0xc23023, 0xe53823, +0xad27001c, 0xad260018, 0x95220020, 0xa5220014, +0x95220022, 0x154b000a, 0xa5220016, 0x8d230024, +0x8d220008, 0x25460001, 0x31450080, 0x14620004, +0x30c4007f, 0x108f0002, 0x38aa0080, 0xc05021, +0x51af0001, 0x31c800ff, 0x1518ffc9, 0x1005821, +0x8f840034, 0x3082007f, 0x3421821, 0x3c02000a, +0x621821, 0x2402ff80, 0x822024, 0xaf440024, +0xa06a0079, 0xa06a0083, 0x8c620050, 0x8f840034, +0xac620070, 0x8c650074, 0x3c027fff, 0x3442ffff, +0xa22824, 0xe000799, 0xac650074, 0xaf500024, 0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, -0x27bdffe8, 0xafbf0010, 0x8f440100, 0x8f650050, -0x9346011b, 0xe001483, 0x24070001, 0x8fbf0010, -0x3e00008, 0x27bd0018, 0x9363007e, 0x9362007a, -0x431026, 0x3e00008, 0x2102b, 0x9363007e, -0x9362007a, 0x1462000d, 0x1021, 0x93630000, -0x24020030, 0x14620006, 0x0, 0x9362007e, -0x24420001, 0xa362007e, 0x3e00008, 0x24020001, -0xd, 0x3e00008, 0x24020001, 0x3e00008, -0x0, 0x27bdffd8, 0xafb00010, 0x27500100, -0xafbf0020, 0xafb3001c, 0xafb20018, 0xafb10014, -0x96030008, 0x2402500d, 0x14620044, 0x24110001, -0x8e020018, 0x14400042, 0x24025011, 0x8e11001c, -0x8f530020, 0xe001d61, 0x2202021, 0x3222007f, -0x3c030008, 0x431021, 0x3422821, 0xaf85003c, -0x90a20007, 0x240300a0, 0x304200a0, 0x1443000e, -0x9021, 0x96020002, 0x96030006, 0x94a40016, -0x431025, 0x10820005, 0x0, 0x90a20007, -0x24120001, 0xa00157e, 0x3042005f, 0x90a20007, -0x3042007f, 0xa0a20007, 0xe001d6e, 0x2202021, -0xaf530020, 0x124000ba, 0x8fbf0020, 0xe001d7b, +0x27bdffc0, 0xafbe0038, 0xafb70034, 0xafb5002c, +0xafb20020, 0xafb1001c, 0xafb00018, 0xafbf003c, +0xafb60030, 0xafb40028, 0xafb30024, 0x8f450024, +0x8f460028, 0x8f43002c, 0x3c02001f, 0x3442ff80, +0x621824, 0xc23024, 0x80a821, 0xafa30014, +0xa2f024, 0xe00075d, 0xafa60010, 0x3c020800, +0x8c4200e0, 0x2410ff80, 0x3608821, 0x2a21021, +0x501024, 0xaf420024, 0x3c020800, 0x8c4200e0, +0x2a21021, 0x3042007f, 0x3421821, 0x3c02000a, +0x629021, 0x924200d2, 0x93630084, 0x305700ff, +0x306300ff, 0x24020001, 0x10620034, 0x3602021, +0x24020002, 0x14620036, 0x0, 0xe001321, +0x2402821, 0x92230083, 0x92220083, 0x3063007f, +0x3042007f, 0x210c0, 0x31940, 0x621821, +0x3c020800, 0x8c4200dc, 0x2a21021, 0x433821, +0xf01024, 0xaf420028, 0x92250078, 0x92240083, +0x30e2007f, 0x3421821, 0x3c02000c, 0x14850007, +0x628021, 0x2402ffff, 0xa24200f1, 0x2402ffff, +0xa64200f2, 0xa000855, 0x2402ffff, 0x96020020, +0xa24200f1, 0x96020022, 0xa64200f2, 0x8e020024, +0xae4200f4, 0x92220083, 0xa24200f0, 0x8e4200c8, +0xae4200fc, 0x8e4200c4, 0xae4200f8, 0x8e220050, +0xae420100, 0x8e4200cc, 0xae420104, 0x92220085, +0x3042003f, 0xa0008b0, 0x34420040, 0xe001344, +0x2402821, 0x92220085, 0xa0008b0, 0x3042003f, +0x93620085, 0x2403ffdf, 0x3042003f, 0xa3620085, +0x93620085, 0x431024, 0xa3620085, 0x93630083, +0x93620078, 0x307400ff, 0x304200ff, 0x10540036, +0x240aff80, 0x3c0c000c, 0x3283007f, 0x310c0, +0x31940, 0x621821, 0x3c020800, 0x8c4200dc, +0x26880001, 0x3109007f, 0x2a21021, 0x433821, +0x30e2007f, 0x3421821, 0xea1024, 0xaf420028, +0x6c8021, 0x8e020024, 0x28a1824, 0x6a5826, +0xae02000c, 0x8e020024, 0x310800ff, 0xae020010, +0x96020014, 0x96030020, 0x8e07001c, 0x3042ffff, +0x3063ffff, 0x8e060018, 0x431023, 0x21100, +0x227c3, 0x402821, 0xc43023, 0xe2102b, +0xc23023, 0xe53823, 0xae07001c, 0xae060018, +0x96020020, 0xa6020014, 0x96020022, 0xa6020016, +0x92220079, 0x304200ff, 0x10540007, 0x0, +0x51370001, 0x316800ff, 0x92220078, 0x304200ff, +0x1448ffcd, 0x100a021, 0x92220083, 0xa2220079, +0x8e220050, 0xa000910, 0xae220070, 0xa2220085, +0x8e22004c, 0x2405ff80, 0xae42010c, 0x92220085, +0x34420020, 0xa2220085, 0x924200d1, 0x3c030800, +0x8c6300dc, 0x305400ff, 0x3c020800, 0x8c4200e4, +0x143140, 0x1420c0, 0x2a31821, 0xc42021, +0x2a21021, 0x643821, 0x461021, 0x451824, +0xe52824, 0xaf450028, 0xaf43002c, 0x3042007f, +0x924400d0, 0x30e3007f, 0x3422821, 0x3431821, +0x3c02000c, 0x628021, 0x3c02000e, 0x309600ff, +0xa29821, 0x1296002a, 0x0, 0x8e02000c, +0x2002021, 0x2602821, 0x10400025, 0x26100028, +0xe000778, 0x0, 0x9262000d, 0x26830001, +0x307400ff, 0x3042007f, 0xa262000d, 0x2404ff80, +0x1697fff0, 0x26730020, 0x3c020800, 0x8c4200dc, +0xa021, 0x2a21021, 0x441024, 0xaf420028, +0x3c020800, 0x8c4200e4, 0x3c030800, 0x8c6300dc, +0x2a21021, 0x441024, 0xaf42002c, 0x3c020800, +0x8c4200e4, 0x2a31821, 0x3063007f, 0x2a21021, +0x3042007f, 0x3422021, 0x3431821, 0x3c02000c, +0x628021, 0x3c02000e, 0xa0008d2, 0x829821, +0x8e4200d8, 0xae220050, 0x8e4200d8, 0xae220070, +0x92250083, 0x924600d1, 0x92230083, 0x924400d1, +0x2402ff80, 0xa22824, 0x3063007f, 0x308400ff, +0xa62825, 0x64182a, 0x10600002, 0x30a500ff, +0x38a50080, 0xa2250083, 0xa2250079, 0xe00076b, +0x0, 0x9222007e, 0x2a02021, 0xa222007a, +0x8e230074, 0x3c027fff, 0x3442ffff, 0x621824, +0xe000799, 0xae230074, 0x8fa20010, 0xaf5e0024, +0x8fbf003c, 0xaf420028, 0x8fbe0038, 0x8fa20014, +0x8fb70034, 0x8fb60030, 0x8fb5002c, 0x8fb40028, +0x8fb30024, 0x8fb20020, 0x8fb1001c, 0x8fb00018, +0x27bd0040, 0x3e00008, 0xaf42002c, 0x90a20000, +0x24420001, 0xa0a20000, 0x3c030800, 0x8c6300f4, +0x304200ff, 0x1443000f, 0x803021, 0xa0a00000, +0x3c020800, 0x8c4200e4, 0x8f840034, 0x822021, +0x3082007f, 0x3421821, 0x3c02000c, 0x621821, +0x2402ff80, 0x822024, 0xacc30000, 0x3e00008, +0xaf440028, 0x8c820000, 0x24420020, 0x3e00008, +0xac820000, 0x94c20000, 0x3c080800, 0x950800ca, +0x30e7ffff, 0x804821, 0x1021021, 0xa4c20000, +0x94c20000, 0x3042ffff, 0xe2102b, 0x54400001, +0xa4c70000, 0x94a20000, 0x3c030800, 0x8c6300cc, +0x24420001, 0xa4a20000, 0x94a20000, 0x3042ffff, +0x54430007, 0x8f860028, 0x107102b, 0xa4a00000, +0x54400001, 0x1003821, 0xa4c70000, 0x8f860028, +0x8cc4001c, 0xaf44003c, 0x94a20000, 0x8f43003c, +0x3042ffff, 0x210c0, 0x621821, 0xaf43003c, +0x8f42003c, 0x822023, 0x18800004, 0x0, +0x8cc20018, 0xa000971, 0x24420001, 0x8cc20018, +0xaf420038, 0x3c020050, 0x34420010, 0xaf420030, +0x0, 0x0, 0x0, 0x8f420000, +0x30420020, 0x1040fffd, 0x0, 0x8f420404, +0xad220004, 0x8f420400, 0xad220000, 0x3c020020, +0xaf420030, 0x3e00008, 0x0, 0x27bdffe0, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf001c, +0x94c20000, 0xc08021, 0x3c120800, 0x965200c6, +0x24420001, 0xa6020000, 0x96030000, 0x94e20000, +0xe03021, 0x14430005, 0x8fb10030, 0xe000946, +0x2403821, 0xa0009a3, 0x0, 0x8c830004, +0x8c820004, 0x24420040, 0x4610007, 0xac820004, +0x8c820004, 0x4400004, 0x0, 0x8c820000, +0x24420001, 0xac820000, 0x96020000, 0x3042ffff, +0x50520001, 0xa6000000, 0x96220000, 0x24420001, +0xa6220000, 0x8f820028, 0x96230000, 0x94420016, +0x14430004, 0x8fbf001c, 0x24020001, 0xa6220000, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x8f890028, 0x27bdffe0, +0xafbf0018, 0x8d220028, 0x27480400, 0x30e700ff, +0xaf420038, 0x8d22002c, 0xaf880030, 0xaf42003c, +0x3c020005, 0xaf420030, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x8f820054, 0xac400000, 0x8f830054, 0xac600004, -0x8f820054, 0xac510008, 0x8f830054, 0xac60000c, -0x8f820054, 0xac400010, 0x8f830054, 0xac600014, -0x8f820054, 0x3c030800, 0xac400018, 0x94627eae, -0x8f840054, 0x3c035080, 0x431025, 0xac82001c, -0x0, 0x0, 0x0, 0xe001db5, -0x24040001, 0xa00163d, 0x8fbf0020, 0x24025011, -0x1462000b, 0x24025010, 0x3c020008, 0x3421821, -0xaf830038, 0x9062021c, 0x34420001, 0xa062021c, -0xe00177b, 0x8e040000, 0xa00163d, 0x8fbf0020, -0x14620005, 0x24025013, 0xe0016e6, 0x2002021, -0xa00163d, 0x8fbf0020, 0x14620005, 0x2402500e, -0xe001856, 0x2002021, 0xa00163d, 0x8fbf0020, -0x14620009, 0x24025012, 0x8e020000, 0x8e03001c, -0xaf820028, 0xaf83001c, 0x9202001b, 0xa3820014, -0xa00163d, 0x8fbf0020, 0x14620015, 0x24025014, -0x8e02001c, 0x8f840028, 0xaf82002c, 0x9203001b, -0xa3830020, 0xe00188f, 0x2821, 0x10400003, -0x0, 0xa0015d6, 0x8821, 0xe0017ed, -0x0, 0x8f840028, 0x8f85001c, 0x93860014, -0xe001483, 0x2203821, 0xa00163d, 0x8fbf0020, -0x1462000d, 0x3c020800, 0x8e04001c, 0x3c020080, -0x821024, 0x10400005, 0x0, 0xe001a90, -0x0, 0xa0015eb, 0x3c020800, 0xe001adf, -0x0, 0x3c020800, 0x8c430020, 0x1060004f, -0x24025001, 0x96030008, 0x10620005, 0x24025002, -0x50620009, 0x8e02001c, 0xa0015fc, 0x0, -0x8e020000, 0x8e03001c, 0xaf820048, 0xaf830044, -0xa0015fc, 0x0, 0xaf820040, 0xe001d7b, +0x8c82000c, 0x8c82000c, 0xad020000, 0x8c820010, +0xad020004, 0x8c820018, 0xad020008, 0x8c82001c, +0xad02000c, 0x8ca20014, 0xad020010, 0x8c820020, +0xad020014, 0x90820005, 0x304200ff, 0x21200, +0xad020018, 0x8ca20018, 0xad02001c, 0x8ca2000c, +0xad020020, 0x8ca20010, 0xad020024, 0x8ca2001c, +0xad020028, 0x8ca20020, 0xad02002c, 0xad060030, +0xad000034, 0x97830026, 0x3402ffff, 0x14620002, +0x602021, 0x3404ffff, 0x10e00011, 0xad040038, +0x95230036, 0x95240036, 0x24020001, 0x3063ffff, +0x318c2, 0x691821, 0x90650040, 0x30840007, +0x821004, 0x451025, 0xa0620040, 0x8f820028, +0x94420056, 0x3042ffff, 0xa000a0a, 0xad02003c, +0x95230036, 0x95240036, 0x24020001, 0x3063ffff, +0x318c2, 0x691821, 0x90650040, 0x30840007, +0x821004, 0x21027, 0x451024, 0xa0620040, +0xad00003c, 0x0, 0x0, 0x0, +0x3c020006, 0x34420040, 0xaf420030, 0x0, +0x0, 0x0, 0x8f420000, 0x30420010, +0x1040fffd, 0x8f860028, 0xaf880030, 0x24c20056, +0x24c7003c, 0x24c40028, 0x24c50032, 0x24c60036, +0xe000984, 0xafa20010, 0x8fbf0018, 0x3e00008, +0x27bd0020, 0x8f830024, 0x3c050800, 0x8ca500e8, +0x8f820034, 0x30633fff, 0x31980, 0x451021, +0x431021, 0x2403ff80, 0x3045007f, 0x431024, +0xaf420028, 0x3451821, 0x3c02000c, 0x623021, +0x90c2000d, 0x3821, 0x34420010, 0xa0c2000d, +0x8f890028, 0x8f8a0024, 0x95230036, 0xa1382, +0x30480003, 0x24020001, 0xa4c3000e, 0x1102000b, +0x29020002, 0x10400005, 0x24020002, 0x1100000c, +0x24030001, 0xa000a4d, 0x1821, 0x11020006, +0x0, 0xa000a4d, 0x1821, 0x8cc2002c, +0xa000a4d, 0x24430001, 0x8cc20014, 0x24430001, +0x8cc20018, 0x43102b, 0x14400003, 0x0, +0xa000a56, 0x24070001, 0x9522003e, 0x24420001, +0xa522003e, 0xa1382, 0x30430003, 0x2c620002, +0x10400009, 0x802821, 0x14600004, 0x0, +0x8cc60034, 0xa000a66, 0x0, 0x8cc60038, +0xa000a66, 0x802821, 0x3021, 0x3c040800, +0x24844f90, 0xa0009b7, 0x0, 0x27490100, +0x8d22000c, 0x95230006, 0x1202021, 0x21602, +0x3045003f, 0x3063ffff, 0x24020027, 0x28a60028, +0x10a2000e, 0xaf830024, 0x10c00008, 0x24020031, +0x24020021, 0x10a20009, 0x24020025, 0x10a20007, +0x9382002d, 0xa000a84, 0x0, 0x10a20005, +0x9382002d, 0xa000a84, 0x0, 0xa000a22, +0x0, 0xa000754, 0x0, 0x95230006, +0x91240005, 0x8d25000c, 0x8d260010, 0x8d270018, +0x8d28001c, 0x8d290020, 0x24420001, 0x3c010800, +0xa4234f96, 0x3c010800, 0xa0244f95, 0x3c010800, +0xac254f9c, 0x3c010800, 0xac264fa0, 0x3c010800, +0xac274fa8, 0x3c010800, 0xac284fac, 0x3c010800, +0xac294fb0, 0x3e00008, 0xa382002d, 0x8f870028, +0x27bdffc0, 0xafb30034, 0xafb20030, 0xafb1002c, +0xafb00028, 0xafbf0038, 0x3c020800, 0x8c4200d0, +0x94e30030, 0x30b0ffff, 0x501007, 0x3045ffff, +0x3063ffff, 0xc09821, 0xa7a20010, 0x3c110800, +0x963100c6, 0x14a30006, 0x3092ffff, 0x8ce20024, +0x24420030, 0xaf42003c, 0xa000abd, 0x8ce20020, +0x94e20032, 0x3042ffff, 0x54a20008, 0x27a40018, +0x8ce2002c, 0x24420030, 0xaf42003c, 0x8ce20028, +0xaf420038, 0xa000acb, 0x8f840028, 0x27a50010, +0x27a60020, 0x2203821, 0xe000946, 0xa7a00020, +0x8fa20018, 0x24420030, 0xaf420038, 0x8fa2001c, +0xaf42003c, 0x8f840028, 0x3c020005, 0xaf420030, +0x94820034, 0x27430400, 0x3042ffff, 0x202102b, +0x14400007, 0xaf830030, 0x94820054, 0x94830034, +0x2021021, 0x431023, 0xa000adf, 0x3043ffff, +0x94830054, 0x94820034, 0x2231821, 0x501023, +0x621823, 0x3063ffff, 0x94820016, 0x3042ffff, +0x14430003, 0x0, 0xa000aed, 0x24030001, +0x94820016, 0x3042ffff, 0x43102b, 0x10400005, +0x8f820030, 0x94820016, 0x621023, 0x3043ffff, +0x8f820030, 0xac530000, 0xac400004, 0xac520008, +0xac43000c, 0x3c020006, 0x34420010, 0xaf420030, +0x0, 0x0, 0x0, 0x8f420000, +0x30420010, 0x1040fffd, 0x1018c2, 0x641821, +0x90650040, 0x32040007, 0x24020001, 0x8fbf0038, +0x8fb30034, 0x8fb20030, 0x8fb1002c, 0x8fb00028, +0x821004, 0x451025, 0x27bd0040, 0x3e00008, +0xa0620040, 0x27bdffa8, 0xafb60050, 0xafb5004c, +0xafb40048, 0xafb30044, 0xafb1003c, 0xafbf0054, +0xafb20040, 0xafb00038, 0x8c900000, 0x3c020800, +0x8c4200e8, 0x8f860034, 0x96030002, 0x2413ff80, +0xc23021, 0x30633fff, 0x31980, 0xc33821, +0xf31024, 0x90b20000, 0xaf42002c, 0x92030002, +0x30e2007f, 0x3423021, 0x3c02000e, 0xc28821, +0x306300c0, 0x24020040, 0x80a821, 0xa0b021, +0x14620026, 0xa021, 0x8e340038, 0x8e220018, +0x14400002, 0x24020001, 0xae220018, 0x9202000d, +0x30420020, 0x14400015, 0x8f820034, 0x3c030800, +0x8c6300dc, 0x1238c0, 0x123140, 0x431021, +0xc73021, 0x463821, 0x30e30007, 0x3c020080, +0x30e60078, 0xc23025, 0x3431821, 0xf31024, +0xaf420800, 0x24630900, 0xaf460810, 0x8e220018, +0x8c630008, 0x431021, 0xae220018, 0x8e22002c, +0x8e230018, 0x24420001, 0x62182b, 0x1060003d, +0x0, 0xa000ba1, 0x0, 0x92030002, +0x2402ffc0, 0x431024, 0x304200ff, 0x14400005, +0x24020001, 0xae220018, 0x8e340034, 0xa000b8a, +0x0, 0x8e220014, 0x24420001, 0xae220018, +0x92020000, 0x21600, 0x21603, 0x4410029, +0x0, 0x96020002, 0x27a40010, 0x802821, +0xa7a20016, 0x96020002, 0x24070001, 0x3021, +0x3042ffff, 0xaf820024, 0xe0009b7, 0xafa0001c, +0x96030002, 0x3c040800, 0x8c8400e8, 0x8f820034, +0x30633fff, 0x31980, 0x441021, 0x431021, +0x3043007f, 0x3c05000c, 0x531024, 0x3431821, +0xaf420028, 0x651821, 0x9062000d, 0x122140, +0x3042007f, 0xa062000d, 0x3c030800, 0x8c6300e4, +0x8f820034, 0x431021, 0x443821, 0x30e2007f, +0x3421021, 0x451021, 0xf31824, 0xaf430028, +0xaea20000, 0x9222000d, 0x30420010, 0x10400013, +0x2a02021, 0x8f830028, 0x8ea40000, 0x2803021, +0x9462003e, 0x2442ffff, 0xa462003e, 0x94840002, +0x9625000e, 0x3084ffff, 0xe000a9c, 0x30a5ffff, +0x8f820028, 0x94430034, 0x9622000e, 0x14430003, +0x2a02021, 0x24020001, 0xa382002c, 0x2c02821, +0xe00092c, 0x0, 0x8fbf0054, 0x8fb60050, +0x8fb5004c, 0x8fb40048, 0x8fb30044, 0x8fb20040, +0x8fb1003c, 0x8fb00038, 0x3e00008, 0x27bd0058, +0x8f850028, 0x27bdffd0, 0xafb40028, 0xafb20020, +0xafbf002c, 0xafb30024, 0xafb1001c, 0xafb00018, +0x90a800d0, 0x90a600d1, 0x3c020800, 0x8c4200e4, +0x8f830034, 0x30c700ff, 0xa3a60010, 0x621821, +0x71140, 0x621821, 0x3062007f, 0x3422021, +0x3c02000c, 0x822021, 0x2402ff80, 0x621824, +0x311200ff, 0x8cb100d8, 0xafa40014, 0x8cb300dc, +0xa021, 0xaf430028, 0x10f2001f, 0x24020001, +0x8fa60014, 0x27a40014, 0x27a50010, 0x8cc20004, +0x2228021, 0x2701023, 0x4400017, 0x24020001, +0x90c3000d, 0x2402ff80, 0x431024, 0x304200ff, +0x14400007, 0x2008821, 0x90c2000d, 0x34420040, +0xe00092c, 0xa0c2000d, 0xa000be8, 0x93a20010, +0xe000b0a, 0x24140001, 0x8f830028, 0xac7000d8, +0x93a20010, 0xa06200d1, 0x93a20010, 0x1452ffe5, +0x8fa60014, 0x24020001, 0x16820004, 0x8fbf002c, +0xe000754, 0x0, 0x8fbf002c, 0x8fb40028, +0x8fb30024, 0x8fb20020, 0x8fb1001c, 0x8fb00018, +0x3e00008, 0x27bd0030, 0x27bdffd8, 0xafb3001c, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf0020, +0x809821, 0xe08021, 0x30b1ffff, 0xe00059b, +0x30d200ff, 0x0, 0x0, 0x0, +0x8f820020, 0xac510000, 0xac520004, 0xac530008, +0xac40000c, 0xac400010, 0xac400014, 0xac400018, +0x3c030800, 0x94634f76, 0x2038025, 0xac50001c, +0x0, 0x0, 0x0, 0x24040001, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0xa0005d3, 0x27bd0028, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x30a5ffff, 0x30c600ff, +0x808021, 0x24020c80, 0xaf420024, 0x0, 0x0, 0x0, 0x0, 0x0, -0x96030008, 0x2402500a, 0x5462000a, 0x2862500a, -0x8f830054, 0x8e020004, 0xac620000, 0x8f840054, -0x8e020018, 0xac820004, 0x8f850054, 0xa001627, -0x8e02001c, 0x14400010, 0x28625086, 0x1040000e, -0x28625082, 0x1440000c, 0x0, 0x8f820054, -0xac400000, 0x8f830054, 0xac600004, 0x8f840054, -0x8e020000, 0xac820008, 0x8f830054, 0x8e02001c, -0xa00162a, 0xac62000c, 0x8f830054, 0x8e020004, -0xac620000, 0x8f840054, 0x8e020018, 0xac820004, -0x8f850054, 0x8e020000, 0xaca20008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0xac600014, 0x8f820054, 0xac400018, 0x96030008, -0x3c020800, 0x94447eae, 0x8f850054, 0x31c00, -0x641825, 0xaca3001c, 0x0, 0x0, -0x0, 0xe001db5, 0x24040001, 0x8fbf0020, -0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0028, 0x27bdffd8, 0x27430100, -0xafbf0020, 0xafb3001c, 0xafb20018, 0xafb10014, -0xafb00010, 0x8c730004, 0x3c090080, 0x2691024, -0x1040003b, 0x3c0500ff, 0x34a5ffff, 0x8f820048, -0x2652824, 0x8f830044, 0x2404ff80, 0x3c06000c, -0x491021, 0xa21023, 0x431021, 0x441824, -0x3042007f, 0x461021, 0xaf430028, 0x3421821, -0x94680002, 0x94670000, 0xa91023, 0x442024, -0x3042007f, 0x461021, 0x3421021, 0xaf440028, -0x14e80079, 0x8fbf0020, 0xac400000, 0x3c020800, -0x8c430020, 0x50600075, 0x8fb3001c, 0xe001d7b, -0x0, 0x0, 0x0, 0x0, -0x8f820054, 0xac400000, 0x8f830054, 0xac600004, -0x8f820054, 0xac530008, 0x8f830054, 0xac60000c, -0x8f820054, 0xac400010, 0x8f830054, 0xac600014, -0x8f820054, 0x3c030800, 0xac400018, 0x94627eae, -0x8f840054, 0x3c03500a, 0x431025, 0xac82001c, -0x0, 0x0, 0xa0016c6, 0x0, -0x3c0200ff, 0x9063000a, 0x3442ffff, 0x10600041, -0x2629024, 0x3262007f, 0x3c030008, 0x431021, -0x3428821, 0x8f840040, 0x2402ff80, 0x2421024, -0xaf420020, 0xaf440028, 0x9623001a, 0x3c02000b, -0x3442c000, 0x31840, 0x621821, 0x3432021, -0x90850000, 0x90820001, 0x14a2002a, 0x9622001c, -0x30420080, 0x10400004, 0x3c020800, 0xe001bf5, -0x2202021, 0x3c020800, 0x8c430020, 0x10600035, -0xa620001c, 0xe001d7b, 0x0, 0x0, -0x0, 0x0, 0x8f820054, 0xac400000, -0x8f830054, 0xac600004, 0x8f820054, 0xac530008, -0x8f830054, 0xac60000c, 0x8f820054, 0xac400010, -0x8f830054, 0xac600014, 0x8f820054, 0x3c030800, -0xac400018, 0x94627eae, 0x8f840054, 0x3c03500b, -0x431025, 0xac82001c, 0x0, 0x0, -0x0, 0xe001db5, 0x24040001, 0xa0016df, -0x8fbf0020, 0x3042bfff, 0x34428000, 0xa0016de, -0xa622001c, 0x2402021, 0xe001d61, 0x8f500020, -0x3262007f, 0x3c030008, 0x431021, 0x3428821, -0x9623001c, 0x2402021, 0x3063efff, 0xe001d6e, -0xa623001c, 0xaf500020, 0x8f440100, 0xe00188f, -0x2821, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x1021, 0x3e00008, -0x27bd0028, 0x27bdffd8, 0xafb00010, 0x3c100008, -0x3501021, 0xafbf0020, 0xafb3001c, 0xafb20018, -0xafb10014, 0x8c5101d8, 0x8f520020, 0x809821, -0xaf820038, 0xe001d61, 0x2202021, 0x3222007f, -0x501021, 0x3421821, 0xaf83003c, 0x90620007, -0x30420020, 0x10400005, 0x8021, 0x90620007, -0x24100001, 0xa001702, 0x3042005f, 0x90620007, -0x34420080, 0xa0620007, 0x8f83003c, 0x94620016, -0x2202021, 0x24420001, 0xe001d6e, 0xa4620016, -0x2402ff80, 0x2221024, 0x3223007f, 0xaf520020, -0xaf42002c, 0x3c02000e, 0x621821, 0x3432021, -0xaf84003c, 0xe001d7b, 0x0, 0x0, -0x0, 0x0, 0x8f830054, 0x8e620004, -0xac620000, 0x8f840054, 0x8e620018, 0xac820004, -0x8f83003c, 0x94620014, 0x2c420002, 0x14400009, -0x1021, 0x94620012, 0x14400004, 0x0, -0x94620014, 0xa00172a, 0x2442ffff, 0x94620012, -0x2442ffff, 0x8f86003c, 0x8f870054, 0x90c40007, -0x90c50007, 0x8cc3001c, 0x3084000f, 0x24840003, -0x822004, 0x30a5000f, 0x24020100, 0xa21004, -0x2442ffff, 0x621824, 0x31942, 0x832021, -0xace40008, 0x8f82003c, 0x9443000e, 0x8f840054, -0x101400, 0x621825, 0xac83000c, 0x8f820054, -0xac400010, 0x8f830054, 0xac600014, 0x8f820054, -0x3c030800, 0xac400018, 0x94627eae, 0x8f840054, -0x3c035010, 0x431025, 0xac82001c, 0x0, -0x0, 0x0, 0xe001db5, 0x24040001, -0x8f84003c, 0x8c83001c, 0x8c82001c, 0x3c058000, -0x24420020, 0x4610008, 0xac82001c, 0x8c82001c, -0x451024, 0x14400004, 0x0, 0x8c820018, -0x24420001, 0xac820018, 0x8f83003c, 0x94620008, -0x24420001, 0xa4620008, 0x94640008, 0x94620010, -0x14820003, 0x0, 0xe001f06, 0x0, -0x8f84003c, 0x9482000e, 0x24420001, 0xa482000e, -0x9483000e, 0x9482000c, 0x24420001, 0x43102a, -0x10400002, 0x24020001, 0xa482000e, 0x8fbf0020, -0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0028, 0x27bdffd0, 0x3c020008, -0xafb10014, 0x3428821, 0xafbf0028, 0xafb50024, -0xafb40020, 0xafb3001c, 0xafb20018, 0xafb00010, -0xaf910038, 0x9222021c, 0x30420001, 0x1040005b, -0x80a021, 0x9222021b, 0x24030003, 0x30420003, -0x14430057, 0x8fbf0028, 0x3c020800, 0x8c430020, -0x10600054, 0x8fb50024, 0xe001d7b, 0x2208021, -0x9021, 0x1821, 0x3c020800, 0x24537ea0, -0x3c15d011, 0x16400027, 0x2821, 0x8f820054, -0xac540000, 0x8f830054, 0x8e020000, 0x26100004, -0xac620004, 0x8f840054, 0x8e020000, 0x26100004, -0xac820008, 0x8f830054, 0x8e020000, 0x26100004, -0xac62000c, 0x8f840054, 0x8e020000, 0x26100004, -0xac820010, 0x8f830054, 0x8e020000, 0x26100004, -0xac620014, 0x8f850054, 0x8e030000, 0x2021, -0xaca30018, 0x9662000e, 0x8f830054, 0x26100004, -0x551025, 0xe001db5, 0xac62001c, 0x2111823, -0x2c620228, 0x5040ffdb, 0x24120001, 0xa00179a, -0x0, 0x8f820054, 0x33080, 0xac540000, -0x10c0000c, 0x24040001, 0x8e040000, 0x26100004, -0x8f830054, 0x51080, 0x24a50001, 0x431021, -0xa6182b, 0xac440004, 0x5460fff8, 0x8e040000, -0x24040001, 0x9663000e, 0x8f850054, 0x3c025011, -0x621825, 0xe001db5, 0xaca3001c, 0x8f830038, -0x3c048000, 0x24020001, 0xa0620197, 0x8f420278, -0x441024, 0x1440fffd, 0x24020002, 0x3c031000, -0xaf540240, 0xa3420244, 0xaf430278, 0x8fbf0028, -0x8fb50024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0030, -0x93850020, 0x3c030008, 0x3433821, 0x51140, -0x24420120, 0xe23021, 0x90c30005, 0x51080, -0xa0e30079, 0x90c40005, 0x451021, 0x210c0, -0xa0e40083, 0x94c30000, 0x24420088, 0xe22821, -0x3063000f, 0x28620008, 0x10400008, 0x28620006, -0x14400006, 0x0, 0xaca0000c, 0xaca00010, -0xaca00024, 0xa00180d, 0x94c20000, 0x8f83002c, -0xaca3000c, 0xaca30010, 0xaca30024, 0x94c20000, -0x3042e1ff, 0x34422040, 0xa001848, 0xa4c20000, -0x93840020, 0x41940, 0x24630120, 0xe33021, -0x41080, 0x441021, 0x210c0, 0x94c40000, -0x24420088, 0x30830020, 0x14600029, 0xe22821, -0x3082000f, 0x2444ffff, 0x2c83000b, 0x10600027, -0x3c020800, 0x24427d80, 0x41880, 0x621821, -0x8c640000, 0x800008, 0x0, 0x8cc20008, -0xaca2000c, 0x8cc30008, 0xaca30010, 0x8cc20008, -0xaca20024, 0x94c30000, 0x3063e3ff, 0x30620200, -0x1040000d, 0xa4c30000, 0xa001840, 0x34622040, -0xaca0000c, 0xaca00010, 0xaca00024, 0x94c20000, -0x3043e3ff, 0x30620200, 0x10400003, 0xa4c30000, -0xa001840, 0x34622040, 0x34620040, 0xa4c20000, -0x94c20000, 0x3042fdff, 0xa001848, 0xa4c20000, -0xaca0000c, 0xaca00010, 0xaca00024, 0x93820020, -0x24420001, 0xa3820020, 0x90e3010e, 0x304200ff, -0x14430002, 0x0, 0xa3800020, 0x93830020, -0x90e2010c, 0x1462ffbe, 0x0, 0x3e00008, -0x0, 0x27bdffe0, 0xafb10014, 0x808821, -0xafbf0018, 0xafb00010, 0x8e24001c, 0x3c0200ff, -0x3442ffff, 0x2403ff80, 0x821024, 0x431024, -0x3084007f, 0xaf420020, 0x3c020008, 0x822021, -0xe001d7b, 0x3448021, 0x0, 0x0, -0x0, 0x8f830054, 0x8e220004, 0xac620000, -0x8f840054, 0x8e020000, 0xac820004, 0x8f830054, -0x8e020004, 0xac620008, 0x8f840054, 0x8e020010, -0xac82000c, 0x8f830054, 0x8e020014, 0xac620010, -0x8f840054, 0x8e020018, 0xac820014, 0x8f850054, -0x8e02001c, 0x3c030800, 0xaca20018, 0x94627eae, -0x8f840054, 0x3c035013, 0x431025, 0xac82001c, -0x0, 0x0, 0x0, 0xe001db5, -0x24040001, 0x8fbf0018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0020, 0x27bdffc0, 0x3c020008, -0x3423021, 0xafbf003c, 0xafb60038, 0xafb50034, -0xafb40030, 0xafb3002c, 0xafb20028, 0xafb10024, -0xafb00020, 0x8cc301d8, 0x2402ff80, 0xaf860038, -0x621824, 0xaf43002c, 0x8cc201d8, 0x3c03000e, -0x3042007f, 0x431021, 0x3422821, 0xaf85003c, -0x90a20007, 0x9821, 0x30420010, 0x104000c2, -0x80b021, 0x90c3010d, 0x90c2010c, 0x106200be, -0xa821, 0xafa00018, 0x27b40018, 0x8f840038, -0x9083010d, 0x307200ff, 0x121140, 0x24420120, -0x828021, 0x96110000, 0x3225000f, 0x111942, -0x30630001, 0x38a20008, 0x2c420001, 0x621825, -0x14600003, 0x2402000a, 0x14a20005, 0x32220020, -0x908301ef, 0x908201ee, 0x106200a7, 0x32220020, -0x5440008b, 0x2002021, 0x24020008, 0x14a2000b, -0x2402000a, 0x2002021, 0x2202821, 0x2c03021, -0x2403821, 0xe001c5c, 0xafb40010, 0xe001c34, -0x2402021, 0xa001956, 0x0, 0x14a20024, -0x32220040, 0x8e050008, 0x2402ff80, 0xa21024, -0x30a3007f, 0xaf420028, 0x3c02000c, 0x621821, -0x32220080, 0x10400005, 0x3432021, 0x9482001c, -0x30421000, 0x54400078, 0x24150001, 0xe001c41, -0x2003021, 0x8f830038, 0x906201ef, 0x2002021, -0x24420001, 0xa06201ef, 0x8f880038, 0x2202821, -0x2c03021, 0x9102021a, 0x2403821, 0x24130001, -0x304200df, 0xa102021a, 0xe001c5c, 0xafb40010, -0xe001c34, 0x2402021, 0xa00195b, 0x0, -0x14400071, 0x24020007, 0x10a20013, 0x28a20008, -0x10400005, 0x24020006, 0x10a20008, 0x0, -0xa00193c, 0x0, 0x2402000b, 0x10a20029, -0x0, 0xa00193c, 0x0, 0x8c8201f0, -0x10400045, 0x32220800, 0x14400019, 0x2002021, -0xa00194b, 0x96020000, 0x8c8201f0, 0x1040003e, -0x32220800, 0x10400037, 0x3c0200ff, 0x8e040008, -0x3442ffff, 0x3c030080, 0x822824, 0xa31824, -0x5460000b, 0x2002021, 0x2402ff80, 0xa21024, -0xaf420028, 0x3084007f, 0x3c02000c, 0x822021, -0x3442021, 0xe001c41, 0x2003021, 0x2002021, -0x2202821, 0x2c03021, 0x2403821, 0xe001c5c, -0xafb40010, 0x8f820038, 0x24130001, 0xa00195b, -0xa0400117, 0x8c820220, 0x8e03001c, 0x431023, -0x1840001d, 0x32220800, 0x50400017, 0x96020000, -0x24130001, 0xe001c34, 0x2402021, 0xe001c27, -0x2402021, 0xa00195b, 0x0, 0x8c820220, -0x8e03001c, 0x431023, 0x1840000f, 0x32220800, -0x10400008, 0x2002021, 0xafb40010, 0x2202821, -0x2c03021, 0xe001c5c, 0x2403821, 0xa00195b, -0x24130001, 0x96020000, 0x24150001, 0x34421000, -0xa00195b, 0xa6020000, 0xa00195b, 0x24150001, -0x2202821, 0x2c03021, 0x2403821, 0xe001c5c, -0xafb40010, 0x8f830038, 0x906201ef, 0x24130001, -0x24420001, 0xa06201ef, 0x16a0000f, 0x0, -0x8f830038, 0x9062010d, 0x24420001, 0xa062010d, -0x8f850038, 0x9064010d, 0x90a2010e, 0x50820001, -0xa0a0010d, 0x8f820038, 0x9044010d, 0x9043010c, -0x1483ff46, 0x0, 0x12600004, 0x2601021, -0xe001ce0, 0x2c02021, 0x2601021, 0x8fbf003c, -0x8fb60038, 0x8fb50034, 0x8fb40030, 0x8fb3002c, -0x8fb20028, 0x8fb10024, 0x8fb00020, 0x3e00008, -0x27bd0040, 0x27bdffe0, 0x3c020008, 0x3423021, -0xafbf001c, 0xafb20018, 0xafb10014, 0xafb00010, -0x8cc301d8, 0x2402ff80, 0x9021, 0x27470100, -0xaf860038, 0x621824, 0xaf43002c, 0x8cc401d8, -0x3c05000e, 0x94e20016, 0x3084007f, 0x852021, -0x3441821, 0x2442ffff, 0x2c420004, 0xaf83003c, -0x50400021, 0x94e30016, 0x94e20008, 0x30420010, -0x5040001d, 0x94e30016, 0x90c3018f, 0x24020001, -0x90c4018e, 0x31902, 0x621004, 0x304200ff, -0x2442ffff, 0x822024, 0x418c0, 0x641823, -0x31880, 0x246301a0, 0xc31821, 0x94700008, -0x90c2018e, 0x94710012, 0x24120001, 0x24420001, -0xa0c2018e, 0x8f440100, 0x3c02000b, 0xe001ce0, -0x2028025, 0x2002021, 0xe001cad, 0x2202821, -0xa0019ba, 0x2401021, 0x24020006, 0x14620005, -0x2401021, 0x8f440100, 0xe001ce0, 0x0, -0x2401021, 0x8fbf001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffc8, -0xafbf0030, 0xafb3002c, 0xafb20028, 0xafb10024, -0xafb00020, 0x8f440188, 0x3c020008, 0x3423821, -0x3c02ff00, 0x3c038100, 0xaf870038, 0x822024, -0x14830086, 0xafa00018, 0xe03021, 0x8cc301d8, -0x2408ff80, 0x681824, 0xaf43002c, 0x8cc201d8, -0x3c03000e, 0x3042007f, 0x431021, 0x3422021, -0xaf84003c, 0x90820007, 0x30420010, 0x104000ad, -0x8fbf0030, 0x90c3010d, 0x90c2010c, 0x106200aa, -0x8fb3002c, 0x90c3010d, 0x307200ff, 0x121140, -0x24420120, 0xc28021, 0x96110000, 0x3224000f, -0x111942, 0x30630001, 0x38820008, 0x2c420001, -0x621825, 0x14600004, 0x32220020, 0x2402000a, -0x14820052, 0x32220020, 0x1040000a, 0x24130001, -0x2002021, 0x27a20018, 0xafa20010, 0x8f460180, -0x2202821, 0xe001c5c, 0x2403821, 0xa001a34, -0x0, 0x24020008, 0x54820008, 0x8e050008, -0x2002021, 0x27a20018, 0xafa20010, 0x8f460180, -0x2202821, 0xa001a30, 0x2403821, 0xa81824, -0x30a2007f, 0xaf430028, 0x3c03000c, 0x431021, -0x32230080, 0x10600015, 0x3422021, 0x9482001c, -0x30421000, 0x10400011, 0x0, 0x8f420188, -0x304200ff, 0x21140, 0x24420120, 0xc22021, -0x94830000, 0x30630400, 0x14600021, 0x9821, -0x90c201ee, 0x24420001, 0xa0c201ee, 0x94830000, -0x34630400, 0xa001a3d, 0xa4830000, 0xe001c41, -0x2003021, 0x8f850038, 0x90a2021a, 0x2002021, -0x27a30018, 0x304200df, 0xa0a2021a, 0xafa30010, -0x8f460180, 0x2403821, 0x2202821, 0xe001c5c, -0x0, 0xe001c34, 0x2402021, 0x8f830038, -0x9062010d, 0x24420001, 0xa062010d, 0x8f850038, -0x9064010d, 0x90a2010e, 0x50820001, 0xa0a0010d, -0x1260004c, 0x8fbf0030, 0x8f440180, 0xe001ce0, -0x0, 0xa001a8a, 0x8fbf0030, 0x8f420188, -0x304200ff, 0x21140, 0x24420120, 0xe22021, -0x94830000, 0x30630400, 0x1460003e, 0x8fbf0030, -0x90e201ee, 0x24420001, 0xa0e201ee, 0x94830000, -0x34630400, 0xa001a89, 0xa4830000, 0x3c028200, -0x14820011, 0x0, 0x8f420188, 0x304200ff, -0x21140, 0x24420120, 0xe22021, 0x94830000, -0x34630800, 0xa4830000, 0x30631000, 0x10600029, -0x8fbf0030, 0x8f440180, 0xe00188f, 0x2821, -0xa001a8a, 0x8fbf0030, 0x8f420188, 0xe02821, -0x90e3007b, 0x304200ff, 0x1443001e, 0x8fbf0030, -0x3c028300, 0x14820008, 0x3c027fff, 0x90a2021b, -0x34420002, 0xa0a2021b, 0xe00177b, 0x8f440180, -0xa001a8a, 0x8fbf0030, 0x8ce30074, 0x3442ffff, -0x3c048000, 0x621824, 0xace30074, 0x8f4201f8, -0x441024, 0x1440fffd, 0x0, 0x8f420180, -0x24030002, 0xaf4201c0, 0xa34301c4, 0x8f820034, -0x3c031000, 0xaf4301f8, 0x24420001, 0xaf820034, -0x8fbf0030, 0x8fb3002c, 0x8fb20028, 0x8fb10024, -0x8fb00020, 0x3e00008, 0x27bd0038, 0x27bdffe8, -0xafb00010, 0x808021, 0x3c050080, 0x2051024, -0x10400045, 0xafbf0014, 0x3c0200ff, 0x3442ffff, -0x8f830048, 0x2023024, 0x8f840044, 0x2408ff80, -0x3c07000c, 0x651821, 0xc31823, 0x642021, -0x881024, 0x3083007f, 0x671821, 0x3432021, -0xaf420028, 0x94820002, 0x94830000, 0x24420001, -0xa4820002, 0x3042ffff, 0x14430030, 0x8fbf0014, -0xc52023, 0x881824, 0xaf430028, 0x3082007f, -0x471021, 0x3422021, 0x41e02, 0x30630060, -0x24020020, 0x14620025, 0x8fbf0014, 0x3c020800, -0xac800000, 0x8c430020, 0x50600021, 0x8fb00010, -0xe001d7b, 0x0, 0x0, 0x0, -0x0, 0x8f820054, 0xac400000, 0x8f830054, -0xac600004, 0x8f820054, 0xac500008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0xac600014, 0x8f820054, 0x3c030800, 0xac400018, -0x94627eae, 0x8f840054, 0x3c03500a, 0x431025, -0xac82001c, 0x0, 0x0, 0x0, -0xe001db5, 0x24040001, 0x8fbf0014, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x27bdffd0, 0xafb40020, -0x80a021, 0x3c020080, 0x2821024, 0xafbf002c, -0xafb60028, 0xafb50024, 0xafb3001c, 0xafb20018, -0xafb10014, 0x14400066, 0xafb00010, 0x2402ff80, -0x2821024, 0x3283007f, 0xaf420028, 0x3c02000c, -0x621821, 0x3439021, 0x8f840040, 0x9642001a, -0x8f56002c, 0x3c03000e, 0x2442e000, 0x21040, -0x431021, 0xaf44002c, 0x3422021, 0x90830001, -0x90820000, 0x24630001, 0xa0830001, 0x306300ff, -0x1462004e, 0x0, 0x9643001c, 0x30628000, -0x1040004a, 0x30620080, 0x10400027, 0x3c020800, -0x96430018, 0x8f820048, 0x8f550020, 0x628021, -0xe001d61, 0x2002021, 0x3202007f, 0x3c130008, -0x531021, 0x3421821, 0x8c710000, 0x3c020800, -0x2221024, 0x50400012, 0x90620001, 0xe001d6e, -0x2002021, 0x3c1000ff, 0x3610ffff, 0x2308024, -0xe001d61, 0x2002021, 0x3222007f, 0x531021, -0x3422821, 0x90a3001e, 0x2002021, 0x2463ffff, -0xe001d6e, 0xa0a3001e, 0xa001b2d, 0x0, -0x2002021, 0x2442ffff, 0xe001d6e, 0xa0620001, -0xaf550020, 0x3c020800, 0x8c430020, 0x1060001f, -0xa640001c, 0xe001d7b, 0x0, 0x0, -0x0, 0x0, 0x8f820054, 0xac400000, -0x8f830054, 0xac600004, 0x8f820054, 0xac540008, -0x8f830054, 0xac60000c, 0x8f820054, 0xac400010, -0x8f830054, 0xac600014, 0x8f820054, 0x3c030800, -0xac400018, 0x94627eae, 0x8f840054, 0x3c03500b, -0x431025, 0xac82001c, 0x0, 0x0, -0x0, 0xe001db5, 0x24040001, 0xaf56002c, -0x8fbf002c, 0x8fb60028, 0x8fb50024, 0x8fb40020, -0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0030, 0x27bdffe8, 0x3c020008, -0x3421821, 0xafb00010, 0xafbf0014, 0xaf830038, -0xe00197a, 0x27500100, 0x8f840038, 0x8e030018, -0x8c820220, 0x621023, 0x5c400001, 0xac830220, -0x96030016, 0x2402000b, 0x14620007, 0x0, -0x96020008, 0x30420010, 0x10400003, 0x24020001, -0x8f830038, 0xac6201f0, 0xe00153f, 0x0, -0x14400005, 0x8fbf0014, 0x8f440100, 0xe00188f, -0x2821, 0x8fbf0014, 0x8fb00010, 0x24020001, -0x3e00008, 0x27bd0018, 0x27bdffe0, 0xafb00010, -0x808021, 0xafbf001c, 0xafb20018, 0xafb10014, -0x8f520020, 0xe001d61, 0x8821, 0x3202007f, -0x3c030008, 0x431021, 0x3422821, 0x90a30007, -0x30620020, 0x10400004, 0x3062005f, 0xa0a20007, -0xa001b95, 0x24110001, 0x34620080, 0xa0a20007, -0x94a20016, 0x2002021, 0x24420001, 0xe001d6e, -0xa4a20016, 0x3c020800, 0x8c430020, 0xaf520020, -0x10600022, 0x8fbf001c, 0x12200021, 0x8fb20018, -0xe001d7b, 0x0, 0x0, 0x0, -0x0, 0x8f820054, 0xac400000, 0x8f830054, -0xac600004, 0x8f820054, 0xac500008, 0x8f830054, -0xac60000c, 0x8f820054, 0xac400010, 0x8f830054, -0xac600014, 0x8f820054, 0x3c030800, 0xac400018, -0x94627eae, 0x8f840054, 0x3c035080, 0x431025, -0xac82001c, 0x0, 0x0, 0x0, -0xe001db5, 0x24040001, 0x8fbf001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x27bdffe8, 0xafbf0014, 0xafb00010, 0x97430116, -0x2402000c, 0x1462001f, 0x27500100, 0x3c020008, -0x3421821, 0xaf830038, 0xe00197a, 0x0, -0x8f840038, 0x8e030018, 0x8c820220, 0x621023, -0x5c400001, 0xac830220, 0x96030016, 0x2402000b, -0x14620007, 0x0, 0x96020008, 0x30420010, -0x10400003, 0x24020001, 0x8f830038, 0xac6201f0, -0xe00153f, 0x0, 0x14400009, 0x8fbf0014, -0x8f440100, 0xe00188f, 0x2821, 0xa001bed, -0x8fbf0014, 0xe001556, 0x0, 0x8fbf0014, -0x8fb00010, 0x3e00008, 0x27bd0018, 0x3c020800, -0x244273a8, 0xaf820008, 0x3e00008, 0x0, -0x27bdffd8, 0xafbf0020, 0xafb3001c, 0xafb20018, -0xafb10014, 0xafb00010, 0x94830018, 0x8f820048, -0x8f530020, 0x628021, 0xe001d61, 0x2002021, -0x3202007f, 0x3c120008, 0x521021, 0x3421821, -0x8c710000, 0x3c020800, 0x2221024, 0x50400012, -0x90620001, 0xe001d6e, 0x2002021, 0x3c1000ff, -0x3610ffff, 0x2308024, 0xe001d61, 0x2002021, -0x3222007f, 0x521021, 0x3422821, 0x90a3001e, -0x2002021, 0x2463ffff, 0xe001d6e, 0xa0a3001e, -0xa001c20, 0x8fbf0020, 0x2002021, 0x2442ffff, -0xe001d6e, 0xa0620001, 0x8fbf0020, 0xaf530020, -0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, -0x3e00008, 0x27bd0028, 0x27bdffe8, 0x308400ff, -0x41080, 0x8f830038, 0x441021, 0x210c0, -0xafbf0010, 0x431021, 0xe001a90, 0x8c44009c, +0xe000bf7, 0x0, 0x3c040800, 0x248400e0, +0x8c820000, 0x2403ff80, 0x8fbf0014, 0x2021021, +0x431024, 0xaf420024, 0x8c820000, 0x3c03000a, +0x2028021, 0x3210007f, 0x3501021, 0x8fb00010, +0x431021, 0x27bd0018, 0x3e00008, 0xaf820028, +0x27bdffe8, 0xafbf0010, 0x8f440140, 0x3c030800, +0x8c6300e0, 0x2402ff80, 0xaf840034, 0x831821, +0x621024, 0xaf420024, 0x3c020008, 0x3424021, +0x95050002, 0x3063007f, 0x3c02000a, 0x3431821, +0x621821, 0x30a5ffff, 0x3402ffff, 0x3021, +0x3c076020, 0x10a20006, 0xaf830028, 0x2402ffff, +0xa5020002, 0x946500d4, 0xe000c1c, 0x30a5ffff, +0x8fbf0010, 0x24020c80, 0x27bd0018, 0x3e00008, +0xaf420024, 0x3c020008, 0x3424021, 0x95020002, +0x3c0a0800, 0x954a00c6, 0x3046ffff, 0x14c00007, +0x3402ffff, 0x8f820028, 0x8f840034, 0x3c076020, +0x944500d4, 0xa000c85, 0x30a5ffff, 0x10c20024, +0x8f870028, 0x94e20054, 0x94e40016, 0x3045ffff, +0xa61023, 0xa6182b, 0x3089ffff, 0x10600004, +0x3044ffff, 0xc51023, 0x1221023, 0x3044ffff, +0x8a102b, 0x1040000c, 0x12a1023, 0x24020001, +0xa5020016, 0x2402ffff, 0xa5020002, 0x94e500d4, +0x8f840034, 0x3021, 0x30a5ffff, 0x3c076020, +0xa000c1c, 0x0, 0x44102a, 0x10400008, +0x0, 0x95020016, 0x30420001, 0x10400004, +0x0, 0x9742007e, 0x24420014, 0xa5020016, +0x3e00008, 0x0, 0x8f840028, 0x27bdffe0, +0xafbf0018, 0x94820034, 0x9483003e, 0x1060001a, +0x3048ffff, 0x9383002c, 0x24020001, 0x14620027, +0x8fbf0018, 0x8f820028, 0x818c2, 0x31080007, +0x621821, 0x2447003a, 0x24490054, 0x24440020, +0x24450030, 0x24460034, 0x90620040, 0x304200ff, +0x1021007, 0x30420001, 0x10400016, 0x8fbf0018, +0xe000984, 0xafa90010, 0x8f820028, 0x94420034, +0xa000c9e, 0x3048ffff, 0x94830036, 0x94820034, +0x1043000e, 0x8fbf0018, 0x94820036, 0xa4820034, +0x94820056, 0xa4820054, 0x8c82002c, 0xac820024, +0x94820032, 0xa4820030, 0x9482003c, 0xa482003a, +0x8fbf0018, 0xa000c5e, 0x27bd0020, 0x3e00008, +0x27bd0020, 0x27bdffe8, 0xafbf0010, 0x8f4a0100, +0x3c050800, 0x8ca500e0, 0x3c020800, 0x90424f9c, +0x3c0c0800, 0x958c4f96, 0x1452821, 0x304b003f, +0x30a2007f, 0x3424021, 0x39690032, 0x3c02000a, +0x3963003f, 0x2c630001, 0x1024021, 0x2d290001, +0x2402ff80, 0xa22824, 0x1234825, 0xaf8a0034, +0x801821, 0xaf450024, 0x3021, 0x802821, +0x24070001, 0xaf880028, 0x3c040800, 0x24844f90, +0xaf8c0024, 0x15200006, 0xa380002d, 0x24020020, +0x1562000e, 0x3402ffff, 0x1582000c, 0x0, +0x24020020, 0x15620005, 0x0, 0x8c630014, +0x2402ffff, 0x10620007, 0x0, 0xe0009b7, +0x0, 0xa000cfa, 0x0, 0xe000a22, +0x602021, 0xe000c93, 0x0, 0x8fbf0010, +0x24020c80, 0x27bd0018, 0x3e00008, 0xaf420024, +0x3c020800, 0x8c4200e0, 0x27bdffa0, 0xafb1003c, +0x821021, 0x2411ff80, 0xafbe0058, 0xafb70054, +0xafb20040, 0xafb00038, 0xafbf005c, 0xafb60050, +0xafb5004c, 0xafb40048, 0xafb30044, 0x511024, +0x8f480024, 0x8f490028, 0x8f470028, 0xaf420024, +0x3c020800, 0x8c4200e0, 0x809021, 0x24060006, +0x821021, 0x3042007f, 0x3421821, 0x3c02000a, +0x628021, 0x3c02001f, 0x3442ff80, 0xe23824, +0x27a40010, 0x260500f0, 0x122f024, 0x102b824, +0xe00064b, 0xafa70030, 0x8fa20018, 0xae0200c4, +0x8fa2001c, 0xae0200c8, 0x8fa20024, 0xae0200cc, +0x93a40010, 0x920300d1, 0x2402ff80, 0x821024, +0x431025, 0x304900ff, 0x3083007f, 0x3122007f, +0x62102a, 0x10400004, 0x310c0, 0x1311026, +0x304900ff, 0x310c0, 0x31940, 0x621821, +0x3c020800, 0x8c4200dc, 0x920400d2, 0x2421021, +0x431021, 0x511024, 0xaf420028, 0x93a30010, +0x3063007f, 0x310c0, 0x31940, 0x621821, +0x3c020800, 0x8c4200dc, 0x2421021, 0x431021, +0x3042007f, 0x3421821, 0x3c02000c, 0x624021, +0x8fa30014, 0x2402ffff, 0x10620030, 0x309500ff, +0x93a20011, 0x95030014, 0x304400ff, 0x3063ffff, +0x64182b, 0x1060000d, 0x0, 0x95040014, +0x8d07001c, 0x8d060018, 0x3084ffff, 0x442023, +0x42100, 0x1021, 0xe43821, 0xe4202b, +0xc23021, 0xa000d74, 0xc43021, 0x95040014, +0x8d07001c, 0x8d060018, 0x3084ffff, 0x822023, +0x42100, 0x1021, 0x801821, 0xc23023, +0xe4202b, 0xc43023, 0xe33823, 0xad07001c, +0xad060018, 0x93a20011, 0xa5020014, 0x97a20012, +0xa5020016, 0x8fa20014, 0xad020010, 0x8fa20014, +0xad02000c, 0x93a20011, 0xa5020020, 0x97a20012, +0xa5020022, 0x8fa20014, 0xad020024, 0x2406ff80, +0x2461024, 0x3256007f, 0xaf420024, 0x3561821, +0x3c02000a, 0x628021, 0x8e02004c, 0x8fa20020, +0x3124007f, 0x428c0, 0xae020050, 0x8fa20020, +0x42140, 0x852821, 0xae020070, 0x93a20010, +0x1208821, 0xa2020083, 0x93a20010, 0xa2020079, +0x92020085, 0x3042003f, 0xa2020085, 0x3c020800, +0x8c4200dc, 0x2421021, 0x451021, 0x461024, +0xaf42002c, 0x3c020800, 0x8c4200e4, 0x3c030800, +0x8c6300dc, 0x2421021, 0x441021, 0x461024, +0xaf420028, 0x3c020800, 0x8c4200e4, 0x2431821, +0x651821, 0x2421021, 0x441021, 0x3042007f, +0x3063007f, 0x93a50010, 0x3422021, 0x3431821, +0x3c02000e, 0x624021, 0x3c02000c, 0x10b1008c, +0x824821, 0x3233007f, 0x16600019, 0x2404ff80, +0x3c020800, 0x8c4200dc, 0x2421021, 0x441024, +0xaf42002c, 0x3c020800, 0x8c4200e4, 0x3c030800, +0x8c6300dc, 0x2421021, 0x441024, 0xaf420028, +0x3c020800, 0x8c4200e4, 0x2431821, 0x3063007f, +0x2421021, 0x3042007f, 0x3422021, 0x3431821, +0x3c02000e, 0x624021, 0x3c02000c, 0x824821, +0x9124000d, 0x2414ff80, 0x1021, 0x942025, +0xa124000d, 0x95040002, 0x95050014, 0x8d07001c, +0x3084ffff, 0x30a5ffff, 0x8d060018, 0x852023, +0x42100, 0xe43821, 0xc23021, 0xe4202b, +0xc43021, 0xad07001c, 0xad060018, 0x95020002, +0xa5020014, 0xa5000016, 0x8d020008, 0xad020010, +0x8d020008, 0xad02000c, 0x95020002, 0xa5020020, +0xa5000022, 0x8d020008, 0xad020024, 0x9122000d, +0x30420040, 0x10400042, 0x26220001, 0x3c020800, +0x8c4200e0, 0xa3b30028, 0x3c10000a, 0x2421021, +0x541024, 0xaf420024, 0x3c020800, 0x8c4200e0, +0xa380002c, 0x27a4002c, 0x2421021, 0x3042007f, +0x3421821, 0x701821, 0x8c6200d8, 0x8d260004, +0x27a50028, 0xafa9002c, 0x461021, 0xac6200d8, +0xe000b0a, 0xaf830028, 0x93a30028, 0x8f820028, +0xe000754, 0xa04300d1, 0xe000c93, 0x0, +0x2541024, 0xaf420024, 0x3c020800, 0x8c4200dc, +0x132940, 0x1320c0, 0xa42021, 0x2421021, +0x441021, 0x541024, 0xaf42002c, 0x3c020800, +0x8c4200e4, 0x3c030800, 0x8c6300dc, 0x3563021, +0x2421021, 0x451021, 0x541024, 0xaf420028, +0x3c020800, 0x8c4200e4, 0x2431821, 0x641821, +0x2421021, 0x451021, 0x3042007f, 0x3063007f, +0x3422021, 0x3431821, 0x3c02000e, 0x624021, +0x3c02000c, 0xd08021, 0x824821, 0x26220001, +0x3043007f, 0x14750005, 0x304400ff, 0x2403ff80, +0x2231024, 0x431026, 0x304400ff, 0x93a20010, +0x808821, 0x25080028, 0x1444ff76, 0x25290020, +0x93a40010, 0x8fa30014, 0x2402ffff, 0x1062000a, +0x308900ff, 0x24820001, 0x24830001, 0x3042007f, +0x14550005, 0x306900ff, 0x2403ff80, 0x831024, +0x431026, 0x304900ff, 0x92020078, 0x305300ff, +0x11330032, 0x1208821, 0x3c020800, 0x8c4200dc, +0x3225007f, 0x520c0, 0x52940, 0xa42021, +0x2421021, 0x2406ff80, 0x441021, 0x461024, +0xaf42002c, 0x3c030800, 0x8c6300dc, 0x3c020800, +0x8c4200e4, 0x2431821, 0x2421021, 0x451021, +0x641821, 0x461024, 0x3063007f, 0xaf420028, +0x3431821, 0x3c02000e, 0x624021, 0x3c020800, +0x8c4200e4, 0x8d06000c, 0x1002021, 0x2421021, +0x451021, 0x3042007f, 0x3421821, 0x3c02000c, +0x624821, 0x10c0000d, 0x1202821, 0xe000778, +0x0, 0x2402ff80, 0x2221824, 0x26240001, +0x622826, 0x3082007f, 0x14550002, 0x308300ff, +0x30a300ff, 0x1473ffd0, 0x608821, 0x8e030074, +0x3c027fff, 0x3442ffff, 0x621824, 0xae030074, +0xe000799, 0x2402021, 0xaf570024, 0x8fa20030, +0xaf5e0028, 0x8fbf005c, 0x8fbe0058, 0x8fb70054, +0x8fb60050, 0x8fb5004c, 0x8fb40048, 0x8fb30044, +0x8fb20040, 0x8fb1003c, 0x8fb00038, 0x27bd0060, +0x3e00008, 0xaf42002c, 0x27bdffd8, 0xafb1001c, +0xafbf0020, 0xafb00018, 0x27510188, 0x92220003, +0x2408ff80, 0x3c03000a, 0x3047007f, 0xa3a70010, +0x8f460180, 0x3c020800, 0x8c4200e0, 0xaf860034, +0xc22821, 0xa81024, 0xaf420024, 0x92240000, +0x30a2007f, 0x3421021, 0x431021, 0xaf820028, +0x3084007f, 0x24020002, 0x14820025, 0x71940, +0x3c020800, 0x8c4200e4, 0xc21021, 0x432821, +0x30a2007f, 0x3421821, 0xa81024, 0xaf420028, +0x3c02000c, 0x621821, 0x9062000d, 0xafa30014, +0x481025, 0xa062000d, 0x8fa30014, 0x9062000d, +0x30420040, 0x5040006a, 0x8fbf0020, 0x8f860028, +0xa380002c, 0x27a40014, 0x8cc200d8, 0x8c630004, +0x27a50010, 0x431021, 0xe000b0a, 0xacc200d8, +0x93a30010, 0x8f820028, 0xe000754, 0xa04300d1, +0xe000c93, 0x0, 0xa000f35, 0x8fbf0020, +0xe00075d, 0xc02021, 0xe00076b, 0x0, +0x3c020008, 0x3428021, 0x92230001, 0x9202007b, +0x1443004f, 0x8fbf0020, 0x92220000, 0x3044007f, +0x24020004, 0x10820017, 0x28820005, 0x10400006, +0x24020005, 0x24020003, 0x10820007, 0x8fb1001c, +0xa000f36, 0x0, 0x10820012, 0x8fbf0020, +0xa000f36, 0x8fb1001c, 0x92050083, 0x92060078, +0x8e070074, 0x8f840034, 0x30a500ff, 0x73e02, +0x30c600ff, 0xe0007a1, 0x30e7007f, 0xa000f35, +0x8fbf0020, 0xe000d01, 0x8f840034, 0xa000f35, +0x8fbf0020, 0x24020c80, 0xaf420024, 0x9202003e, +0x30420040, 0x10400020, 0x0, 0x9202003e, +0x21600, 0x21603, 0x4410006, 0x0, +0x8f840034, 0xe0006ce, 0x24050093, 0xa000f35, +0x8fbf0020, 0x9202003f, 0x24030018, 0x304200ff, +0x1443000c, 0x8f840034, 0x24050039, 0xe000666, +0x3021, 0xe000333, 0x8f840034, 0x24020012, +0xa202003f, 0xe00033c, 0x8f840034, 0xa000f35, +0x8fbf0020, 0x24050036, 0xe000666, 0x3021, +0xa000f35, 0x8fbf0020, 0xe000333, 0x8f840034, +0x92020005, 0x34420020, 0xa2020005, 0xe00033c, +0x8f840034, 0xe0010cb, 0x8f840034, 0x8fbf0020, +0x8fb1001c, 0x8fb00018, 0x24020c80, 0x27bd0028, +0x3e00008, 0xaf420024, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0x27430100, 0x94620008, 0x21400, +0x21403, 0x4410002, 0x8021, 0x24100001, +0x94620008, 0x30420080, 0x1040001a, 0x2001021, +0x94620008, 0x30422000, 0x10400016, 0x2001021, +0x8c630018, 0x3c021c2d, 0x344219ed, 0x24060006, +0x1062000f, 0x3c076021, 0x3c020800, 0x8c4200d4, +0x10400007, 0x8f820028, 0x8f830028, 0x90620062, +0x3042000f, 0x34420040, 0xa0620062, 0x8f820028, +0x8f840034, 0x944500d4, 0xe000c1c, 0x30a5ffff, +0x2001021, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x27bdffe0, 0xafb10014, 0xafb00010, +0xa380002c, 0xafbf0018, 0x8f450100, 0x3c030800, +0x8c6300e0, 0x2402ff80, 0xaf850034, 0xa31821, +0x3064007f, 0x3442021, 0x621824, 0x3c02000a, +0x822021, 0xaf430024, 0x27500100, 0x8e020014, +0x8c8300dc, 0xaf840028, 0x431023, 0x18400004, +0x8821, 0x8e020014, 0xe000bad, 0xac8200dc, +0x9202000b, 0x24030002, 0x304200ff, 0x1443002f, +0x0, 0x96020008, 0x304300ff, 0x24020082, +0x14620005, 0x24020084, 0xe000a68, 0x0, +0xa000fc1, 0x0, 0x14620009, 0x24020081, +0x8f820028, 0x8f840034, 0x3c076021, 0x944500d4, +0x92060005, 0x30a5ffff, 0xa000fb0, 0x30c600ff, +0x14620027, 0x0, 0x9202000a, 0x304300ff, +0x30620020, 0x10400004, 0x30620040, 0x8f840034, +0xa000fac, 0x24060040, 0x10400004, 0x31600, +0x8f840034, 0xa000fac, 0x24060041, 0x21603, +0x4410017, 0x8f840034, 0x24060042, 0x8f820028, +0x3c076019, 0x944500d4, 0x30a5ffff, 0xe000c1c, +0x0, 0xa000fc1, 0x0, 0x9202000b, +0x24030016, 0x304200ff, 0x10430006, 0x0, +0x9202000b, 0x24030017, 0x304200ff, 0x14430004, +0x0, 0xe000f3b, 0x0, 0x408821, +0xe000c93, 0x0, 0x9202000a, 0x30420008, +0x10400006, 0x24020c80, 0x8f850028, 0x3c040008, +0xe0012f9, 0x3442021, 0x24020c80, 0xaf420024, +0x8fbf0018, 0x2201021, 0x8fb00010, 0x8fb10014, +0x3e00008, 0x27bd0020, 0x3c020800, 0x8c420020, +0x1040001d, 0x27450100, 0x90a30009, 0x3c020008, +0x3422021, 0x24020018, 0x54620003, 0x3c020008, +0xa000fe4, 0x24020008, 0x3422021, 0x24020016, +0x14620005, 0x24020017, 0x24020012, 0xa082003f, +0xa000fee, 0x94a70008, 0x54620006, 0x94a70008, +0x93620005, 0x2403fffe, 0x431024, 0xa3620005, +0x94a70008, 0x90a6001b, 0x8ca40000, 0x94a50006, +0xa000bf7, 0x73c00, 0x3e00008, 0x0, +0x27440100, 0x94820008, 0x304500ff, 0x38a30082, +0x38a20084, 0x2c630001, 0x2c420001, 0x621825, +0x10600006, 0x24a2ff80, 0x9382002d, 0x1040000e, +0x0, 0xa000cc6, 0x0, 0x304200ff, +0x2c430002, 0x24020083, 0x14a20005, 0x0, +0x8f430104, 0x3c026020, 0x3e00008, 0xac430014, +0x10600003, 0x0, 0xa000f66, 0x0, +0xa000fd3, 0x0, 0x9363007e, 0x9362007a, +0x14430009, 0x2021, 0x93620000, 0x24030050, +0x304200ff, 0x14430004, 0x24040001, 0x9362007e, +0x24420001, 0xa362007e, 0x3e00008, 0x801021, +0x8f4201f8, 0x440fffe, 0x24020002, 0xaf4401c0, +0xa34201c4, 0x3c021000, 0x3e00008, 0xaf4201f8, +0x27bdffe8, 0xafbf0010, 0x9362003f, 0x2403000a, +0x304200ff, 0x14430046, 0x0, 0x8f630054, +0x8f62004c, 0x1062007f, 0x3603021, 0x93620000, +0x24030050, 0x304200ff, 0x1443002f, 0x0, +0x8f440140, 0x3c020800, 0x8c4200e0, 0x2403ff80, +0x821021, 0x431024, 0xaf420024, 0x3c020800, +0x8c4200e0, 0x8f650054, 0x3c03000a, 0x822021, +0x3084007f, 0x3441021, 0x431021, 0xac450108, +0x9762003c, 0x8f63004c, 0x3042ffff, 0x21040, +0x621821, 0xaf63005c, 0x8f630054, 0x8f64004c, +0x9762003c, 0x641823, 0x3042ffff, 0x31843, +0x21040, 0x43102a, 0x10400006, 0x0, +0x8f620054, 0x8f63004c, 0x431023, 0xa001061, +0x21043, 0x9762003c, 0x3042ffff, 0x21040, +0xacc20064, 0x24020001, 0xa0c0007c, 0xa0c20084, +0x24020c80, 0xaf420024, 0xe001013, 0x8f440140, +0x10400049, 0x8fbf0010, 0x8f430140, 0x8f4201f8, +0x440fffe, 0x24020002, 0xaf4301c0, 0xa34201c4, +0x3c021000, 0xaf4201f8, 0xa0010b3, 0x8fbf0010, +0x9362003f, 0x24030010, 0x304200ff, 0x14430004, +0x0, 0x8f440140, 0xa00109f, 0x2821, +0x9362003f, 0x24030016, 0x304200ff, 0x14430004, +0x24020014, 0xa362003f, 0xa0010ad, 0x0, +0x8f62004c, 0x8f630050, 0x431023, 0x441002a, +0x8fbf0010, 0x93620081, 0x24420001, 0xa3620081, +0x93620081, 0x3c030800, 0x8c6300c0, 0x304200ff, +0x14430010, 0x0, 0x9362003f, 0x24030004, +0x304200ff, 0x14430006, 0x0, 0x8f440140, +0x8fbf0010, 0x24050093, 0xa0006ce, 0x27bd0018, +0x8f440140, 0x24050093, 0x8fbf0010, 0xa00073d, +0x27bd0018, 0x8f440140, 0xe000333, 0x0, +0x8f620054, 0x2442ffff, 0xaf620054, 0x8f620050, +0x2442ffff, 0xaf620050, 0xe00033c, 0x8f440140, +0x8f440140, 0x8fbf0010, 0x24050004, 0xa000341, +0x27bd0018, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x8f420188, 0x9363007e, 0x21402, 0x304400ff, +0x306300ff, 0x1464000d, 0x0, 0x93620080, +0x304200ff, 0x10440009, 0x0, 0xa3640080, +0x93620000, 0x24030050, 0x304200ff, 0x14430004, +0x0, 0xa000805, 0x8f440180, 0xa3640080, +0x3e00008, 0x0, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0x93620005, 0x24030030, 0x30420030, +0x14430089, 0x808021, 0x3c020800, 0x8c420020, +0x10400080, 0x2002021, 0xe00059b, 0x0, +0x8f850020, 0xacb00000, 0x9362003e, 0x9363003f, +0x304200ff, 0x21200, 0x306300ff, 0x431025, +0xaca20004, 0x93620082, 0x21600, 0x21603, +0x4410005, 0x0, 0x3c030800, 0x8c630048, +0xa0010f1, 0x0, 0x9362003e, 0x30420040, +0x14400003, 0x1821, 0x93620081, 0x304300ff, +0x93620082, 0x31e00, 0x304200ff, 0x21400, +0x621825, 0xaca30008, 0x8f620040, 0xaca2000c, +0x8f620048, 0xaca20010, 0x8f62004c, 0xaca20014, +0x8f620050, 0x8f63004c, 0x431023, 0x4410003, +0x0, 0xa001105, 0x8f62004c, 0x8f620050, +0xaca20018, 0x3c020800, 0x94424f76, 0x3c03c00b, +0x2021, 0x431025, 0xe0005d3, 0xaca2001c, +0x8f620054, 0x8f840020, 0xac820000, 0x8f620058, +0xac820004, 0x8f62005c, 0xac820008, 0x8f620060, +0x8f430074, 0x431021, 0xac82000c, 0x8f620064, +0xac820010, 0x97630068, 0x9762006a, 0x31c00, +0x3042ffff, 0x621825, 0xac830014, 0x93620082, +0x24030080, 0x304200ff, 0x14430003, 0x0, +0xa001139, 0xac800018, 0x8f63000c, 0x24020001, +0x1062000e, 0x2402ffff, 0x9362003e, 0x30420040, +0x1440000a, 0x2402ffff, 0x8f63000c, 0x8f420074, +0x621823, 0x3c020800, 0x621024, 0x14400002, +0x2821, 0x602821, 0x51043, 0xac820018, +0x3c020800, 0x94424f76, 0x3c03c00c, 0x2021, +0x431025, 0x8f830020, 0xe0005d3, 0xac62001c, +0x8f620018, 0x8f830020, 0x3c050800, 0x94a54f76, +0x24040001, 0xac620000, 0xac600004, 0x8f66006c, +0x3c02400d, 0xa22825, 0xac660008, 0x8f6200dc, +0xac62000c, 0xac600010, 0x93620005, 0x21600, +0xac620014, 0xac600018, 0xe0005d3, 0xac65001c, +0x2002021, 0x8fbf0014, 0x8fb00010, 0xa3600005, +0xa000417, 0x27bd0018, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x9742007c, 0x30c600ff, +0xa0860084, 0x3047ffff, 0x24020005, 0x14c2000b, +0x24e34650, 0x90a20112, 0x2c420007, 0x10400007, +0x24e30a00, 0x90a30112, 0x24020014, 0x621004, +0xe21021, 0xa001171, 0x3047ffff, 0x3067ffff, +0x3e00008, 0xa4870014, 0xac87004c, 0x8ca20108, +0x804021, 0xa04821, 0xe21023, 0x30c600ff, +0x18400003, 0x93aa0013, 0x24e2fffc, 0xaca20108, +0x30c20001, 0x10400008, 0x0, 0x8d020050, +0xe21023, 0x4410013, 0x24060005, 0x8d020054, +0x10e20010, 0x0, 0x8d020054, 0x14e2001a, +0x0, 0x3c020800, 0x8c4200d8, 0x30420020, +0x1040000a, 0x24020001, 0x91030078, 0x91020083, +0x14430006, 0x24020001, 0x1002021, 0x1202821, +0x24060004, 0xa00115f, 0x0, 0xa1000084, +0x11400009, 0xa5020014, 0x8f430100, 0x8f4201f8, +0x440fffe, 0x24020002, 0xaf4301c0, 0xa34201c4, +0x3c021000, 0xaf4201f8, 0x3e00008, 0x0, +0x27bdffe8, 0x8fa90028, 0xafbf0010, 0x804021, +0xe91823, 0x18600073, 0x30c600ff, 0xa080007c, +0xa0800081, 0x8ca20108, 0xe21023, 0x440004d, +0x0, 0x8c820050, 0x9483003c, 0x8c840064, +0x474823, 0x3063ffff, 0x1231821, 0x83202b, +0x10800004, 0x0, 0x8d020064, 0xa0011c2, +0xe21021, 0x9502003c, 0x3042ffff, 0x1221021, +0xe21021, 0xad02005c, 0x9502003c, 0x8d03005c, +0x3042ffff, 0x21040, 0xe21021, 0x43102b, +0x10400003, 0x0, 0xa0011d1, 0x8d02005c, +0x9502003c, 0x3042ffff, 0x21040, 0xe21021, +0xad02005c, 0xa1000084, 0xad07004c, 0x8ca20108, +0xe21023, 0x18400002, 0x24e2fffc, 0xaca20108, +0x30c20001, 0x1040000a, 0x0, 0x8d020050, +0xe21023, 0x4410004, 0x1002021, 0x8d020054, +0x14e20003, 0x0, 0xa0011f3, 0x24060005, +0x8d020054, 0x14e20047, 0x8fbf0010, 0x3c020800, +0x8c4200d8, 0x30420020, 0x1040000a, 0x24020001, +0x91030078, 0x91020083, 0x14430006, 0x24020001, +0x1002021, 0x24060004, 0x8fbf0010, 0xa00115f, +0x27bd0018, 0xa1000084, 0xa5020014, 0x8f430100, +0x8f4201f8, 0x440fffe, 0x24020002, 0xa001218, +0x0, 0x8c82005c, 0x491023, 0x43102b, +0x54400001, 0xac87005c, 0x9502003c, 0x3042ffff, +0x62102b, 0x14400007, 0x24020002, 0x9502003c, +0x8d03005c, 0x3042ffff, 0x621821, 0xad03005c, +0x24020002, 0xad07004c, 0xa1020084, 0xe001013, +0x8f440100, 0x1040001b, 0x8fbf0010, 0x8f430100, +0x8f4201f8, 0x440fffe, 0x24020002, 0xaf4301c0, +0xa34201c4, 0x3c021000, 0xaf4201f8, 0xa00122e, +0x8fbf0010, 0x30c20010, 0x1040000e, 0x8fbf0010, +0x8c83005c, 0x9482003c, 0x691823, 0x3042ffff, +0x621821, 0x3c023fff, 0x3444ffff, 0x83102b, +0x54400001, 0x801821, 0x1231021, 0xad02005c, 0x8fbf0010, 0x3e00008, 0x27bd0018, 0x27bdffe8, -0x308400ff, 0x41080, 0x8f830038, 0x441021, -0x210c0, 0xafbf0010, 0x431021, 0xe001adf, -0x8c44009c, 0x8fbf0010, 0x3e00008, 0x27bd0018, -0x8f820038, 0x27bdffe0, 0x801821, 0xafbf0018, -0xafb10014, 0xafb00010, 0x944601e4, 0xa08021, -0xe001bf5, 0xac660014, 0x2002021, 0xe001d61, -0x8f510020, 0x2002021, 0x3210007f, 0x3c020008, -0x2028021, 0x3501821, 0x24020050, 0xe001d6e, -0xa462001c, 0x8fbf0018, 0x8fb00010, 0xaf510020, -0x8fb10014, 0x3e00008, 0x27bd0020, 0x27bdffd8, -0xafb10014, 0x808821, 0xafb3001c, 0xc09821, -0xafb00010, 0x30b0ffff, 0xafb40020, 0x30f400ff, -0x32030030, 0x24020010, 0xafbf0024, 0x10620032, -0xafb20018, 0x8f83003c, 0x90620007, 0x30420020, -0xe001ee9, 0x2902b, 0x96240002, 0x3202000f, -0x21400, 0x32030020, 0x10600004, 0x442025, -0x8e22000c, 0x21600, 0x822025, 0x0, -0x0, 0x0, 0x8f820058, 0xac440000, -0x8f830058, 0xac600004, 0x8f820058, 0xac530008, -0x8f830058, 0xac60000c, 0x8f820058, 0xac400010, -0x8f830058, 0xac600014, 0x8f840058, 0x121023, -0x304200ff, 0xac820018, 0x8f83003c, 0x9462000e, -0x8f840058, 0x3042ffff, 0xac82001c, 0x0, -0x0, 0x0, 0xe001e8d, 0x24040001, -0x8fa20038, 0x24040001, 0xac440000, 0x8f830038, -0xe001b7f, 0x8c6401d8, 0x3202000f, 0x38430001, -0x2c630001, 0x38420005, 0x2c420001, 0x621825, -0x10600004, 0x8fbf0024, 0xe001c27, 0x2802021, -0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, -0x8f82003c, 0x27bdffe0, 0xafbf001c, 0xafb20018, -0xafb10014, 0xafb00010, 0x90500007, 0x808821, -0xa09021, 0x32100020, 0xe001ee9, 0x10802b, -0x0, 0x0, 0x0, 0x8f820058, -0xac510000, 0x8f830058, 0xac720004, 0x8f840058, -0x8f420100, 0xac820008, 0x8f830058, 0xac60000c, -0x8f820058, 0xac400010, 0x8f830058, 0xac600014, -0x8f820058, 0x108023, 0x321000ff, 0xac500018, -0x8f83003c, 0x9462000e, 0x8f840058, 0x3042ffff, -0xac82001c, 0x0, 0x0, 0x0, -0xe001e8d, 0x24040001, 0x8f830038, 0xe001b7f, -0x8c6401d8, 0x8fbf001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x3c038000, -0x8f420278, 0x431024, 0x1440fffd, 0x24020002, -0x3c031000, 0xaf440240, 0xa3420244, 0x3e00008, -0xaf430278, 0x27bdffe0, 0x3c020008, 0x3421821, -0xafbf0018, 0xaf830038, 0x9062010d, 0x24090001, -0x805021, 0x30c700ff, 0xa001cfd, 0x304800ff, -0x8f820038, 0x9043010e, 0x25040001, 0x308800ff, -0x681826, 0x3182b, 0x31823, 0x1034024, -0x8f830038, 0x9062010c, 0x11020014, 0x81140, -0x24420120, 0x622021, 0x94830000, 0x30630200, -0x1060000f, 0x8fbf0018, 0x8c820018, 0xa21023, -0x440ffeb, 0x0, 0x8c82001c, 0xa21023, -0x1c40ffe7, 0x0, 0xafa50010, 0x1402821, -0xe001d18, 0x1003021, 0x4821, 0x8fbf0018, -0x1201021, 0x3e00008, 0x27bd0020, 0x27bdffd8, -0xafb10014, 0x808821, 0xafb40020, 0xa0a021, -0xafb00010, 0x30d000ff, 0xafb3001c, 0x30f300ff, -0x101080, 0x501021, 0x8f850038, 0x3c030800, -0x8c640020, 0x210c0, 0x24420088, 0xafbf0024, -0xafb20018, 0x1080002e, 0xa29021, 0xe001d7b, -0x0, 0x0, 0x0, 0x0, -0x8f820054, 0xac400000, 0x8f840054, 0x96230000, -0x1411c2, 0x21400, 0x3063000f, 0x31a00, -0x431025, 0x501025, 0xac820004, 0x8e430004, -0x8f840054, 0x96220006, 0x30633fff, 0x31c00, -0x621825, 0xac830008, 0x8f820054, 0xac53000c, -0x8f830054, 0x8e220018, 0xac620010, 0x8f840054, -0x8e220008, 0xac820014, 0x8f850054, 0x8fa20038, -0x3c030800, 0xaca20018, 0x94627eae, 0x8f840054, -0x3c035081, 0x431025, 0xac82001c, 0x0, -0x0, 0x0, 0xe001db5, 0x24040001, -0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, -0x3c029000, 0x34420007, 0x2403ff80, 0x832024, -0x822025, 0xaf440020, 0x3c038000, 0x8f420020, -0x431024, 0x1440fffd, 0x0, 0x3e00008, -0x0, 0x3c028000, 0x34420007, 0x2403ff80, -0x832024, 0x822025, 0xaf440020, 0x3c038000, -0x8f420020, 0x431024, 0x1440fffd, 0x0, -0x3e00008, 0x0, 0x3c060800, 0x24c57ea0, -0x3c02000a, 0x3421821, 0x94640006, 0x94a2000a, -0x441023, 0x21400, 0x21c03, 0x4610004, -0xa4a40006, 0xd, 0xa001d8e, 0x24020001, -0x8f820050, 0x62102b, 0x14400002, 0x1021, -0x24020001, 0x304200ff, 0x1040001a, 0x274a0400, -0x3c07000a, 0x3c020800, 0x24457ea0, 0x94a9000a, -0x8f880050, 0x3471021, 0x94430006, 0x402021, -0xa4a30006, 0x94820006, 0xa4a20006, 0x1221023, -0x21400, 0x21403, 0x4410004, 0x48102b, -0xd, 0xa001da7, 0x24020001, 0x14400002, -0x1021, 0x24020001, 0x304200ff, 0x1440ffee, -0x3471021, 0x24c47ea0, 0x8c820010, 0xaf420038, -0x8c830014, 0x3c020005, 0xaf43003c, 0xaf420030, -0xaf80004c, 0xaf8a0054, 0x3e00008, 0x0, -0x27bdffe0, 0x8f82004c, 0x8f850054, 0x3c070800, -0x24e87ea0, 0xafbf001c, 0xafb20018, 0xafb10014, -0xafb00010, 0x9503000a, 0x8d060014, 0x9021, -0x309000ff, 0xe08821, 0x24420001, 0x24a50020, -0x24630001, 0xaf82004c, 0xaf850054, 0xa503000a, -0x24c30020, 0x3c028000, 0x4c10007, 0xad030014, -0x621024, 0x14400005, 0x26247ea0, 0x8d020010, -0x24420001, 0xad020010, 0x26247ea0, 0x9482000a, -0x94830018, 0x431026, 0x2c420001, 0x10182b, -0x431025, 0x8f83004c, 0x54400005, 0x24120001, -0x24020010, 0x1462001b, 0x26277ea0, 0x24120001, -0x31140, 0x3c030006, 0x431025, 0xaf420030, -0x0, 0x0, 0x0, 0x27450400, -0x8f420000, 0x30420010, 0x1040fffd, 0x26227ea0, -0x9444000a, 0x94430018, 0xaf80004c, 0xaf850054, -0x14830003, 0x0, 0xe001e39, 0x0, -0x16000004, 0x26277ea0, 0xe001d7b, 0x0, -0x26277ea0, 0x94e2000e, 0x94e3000c, 0x24420001, -0xa4e2000e, 0x3042ffff, 0x50430001, 0xa4e0000e, -0x12000005, 0x3c02000a, 0x94e2000a, 0xa74200a2, -0xa001e33, 0x2401021, 0x3421821, 0x94640006, -0x94e2000a, 0x441023, 0x21400, 0x21c03, -0x4610004, 0xa4e40006, 0xd, 0xa001e17, -0x24020001, 0x8f820050, 0x62102b, 0x14400002, -0x1021, 0x24020001, 0x304200ff, 0x10400019, -0x3c020800, 0x3c06000a, 0x24457ea0, 0x94a8000a, -0x8f870050, 0x3461021, 0x94430006, 0x402021, -0xa4a30006, 0x94820006, 0xa4a20006, 0x1021023, -0x21400, 0x21403, 0x4410004, 0x47102b, -0xd, 0xa001e2f, 0x24020001, 0x14400002, -0x1021, 0x24020001, 0x304200ff, 0x1440ffee, -0x3461021, 0x2401021, 0x8fbf001c, 0x8fb20018, +0x8faa0028, 0xafbf0010, 0x804021, 0xea4823, +0x19200021, 0x30c600ff, 0x8c83005c, 0x8c820064, +0x6a1823, 0x43102b, 0x50400010, 0x691821, +0x94a20110, 0x1221021, 0xa4a20110, 0x94a20110, +0x3042ffff, 0x43102b, 0x1440000a, 0x3c023fff, +0x94a20110, 0x431023, 0xa4a20110, 0x9482003c, +0x3042ffff, 0xa00124d, 0x621821, 0xa4a00110, +0x3c023fff, 0x3444ffff, 0x83102b, 0x54400001, +0x801821, 0x671021, 0xad02005c, 0xa100007c, +0xa001295, 0xa1000081, 0x30c20010, 0x1040003c, +0x0, 0x8c820050, 0x4a1023, 0x18400038, +0x0, 0x9082007c, 0x24420001, 0xa082007c, +0x9082007c, 0x3c030800, 0x8c630024, 0x304200ff, +0x43102b, 0x1440005c, 0x8fbf0010, 0x8ca20108, +0xe21023, 0x18400058, 0x0, 0x8c830054, +0x9482003c, 0x6a1823, 0x3042ffff, 0x31843, +0x21040, 0x43102a, 0x10400005, 0x0, +0x8c820054, 0x4a1023, 0xa00127c, 0x21043, +0x9482003c, 0x3042ffff, 0x21040, 0xad020064, +0x9502003c, 0x8d040064, 0x9503003c, 0x3042ffff, +0x21040, 0x822021, 0x3063ffff, 0x831821, +0x1431021, 0xad02005c, 0x8d020054, 0xaca20108, +0x24020002, 0xa1020084, 0xe001013, 0x8f440100, +0x10400035, 0x8fbf0010, 0x8f430100, 0x8f4201f8, +0x440fffe, 0x24020002, 0xa0012be, 0x0, +0xad07004c, 0x8ca20108, 0xe21023, 0x18400002, +0x24e2fffc, 0xaca20108, 0x30c20001, 0x1040000a, +0x0, 0x8d020050, 0xe21023, 0x4410004, +0x1002021, 0x8d020054, 0x14e20003, 0x0, +0xa0012b5, 0x24060005, 0x8d020054, 0x14e2001a, +0x8fbf0010, 0x3c020800, 0x8c4200d8, 0x30420020, +0x1040000a, 0x24020001, 0x91030078, 0x91020083, +0x14430006, 0x24020001, 0x1002021, 0x24060004, +0x8fbf0010, 0xa00115f, 0x27bd0018, 0xa1000084, +0xa5020014, 0x8f430100, 0x8f4201f8, 0x440fffe, +0x24020002, 0xaf4301c0, 0xa34201c4, 0x3c021000, +0xaf4201f8, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x8faa0010, 0x8c820050, 0x804021, 0x30c600ff, +0x4a1023, 0xa04821, 0x18400007, 0xe01821, +0x24020001, 0xa0800084, 0xa0a00112, 0xa4820014, +0xa001230, 0xafaa0010, 0xa0800081, 0xad07004c, +0x8ca20108, 0xe21023, 0x18400002, 0x24e2fffc, +0xaca20108, 0x30c20001, 0x10400008, 0x0, +0x8d020050, 0x621023, 0x4410013, 0x24060005, +0x8d020054, 0x10620010, 0x0, 0x8d020054, +0x14620011, 0x0, 0x3c020800, 0x8c4200d8, +0x30420020, 0x1040000a, 0x24020001, 0x91030078, +0x91020083, 0x14430006, 0x24020001, 0x1002021, +0x1202821, 0x24060004, 0xa00115f, 0x0, +0xa1000084, 0xa5020014, 0x3e00008, 0x0, +0x27bdffe0, 0xafbf0018, 0x27420100, 0x9046000a, +0x8c480014, 0x8c8b004c, 0x90820084, 0x30c900ff, +0x1681823, 0x304a00ff, 0x1c60001a, 0x2d460006, +0x24020001, 0x1421004, 0x10c00016, 0x30430003, +0x1203021, 0x1003821, 0x14600007, 0x304c000c, +0x15800009, 0x30420030, 0x1440000b, 0x8fbf0018, +0xa00131f, 0x0, 0xe001230, 0xafab0010, +0xa00131f, 0x8fbf0018, 0xe0011a5, 0xafab0010, +0xa00131f, 0x8fbf0018, 0xafab0010, 0xe0012c5, +0xafaa0014, 0x8fbf0018, 0x3e00008, 0x27bd0020, +0x24020003, 0xa0820084, 0x8c820054, 0x3e00008, +0xaca20108, 0x3c020008, 0x3421821, 0x90620081, +0x24060043, 0x3c076019, 0x24420001, 0xa0620081, +0x90630081, 0x3c020800, 0x8c4200c0, 0x306300ff, +0x14620010, 0x2403ff80, 0x3c020800, 0x8c4200e0, +0x821021, 0x431024, 0xaf420024, 0x3c020800, +0x8c4200e0, 0x3c03000a, 0x821021, 0x3042007f, +0x3421021, 0x431021, 0x944500d4, 0xa000c1c, +0x30a5ffff, 0x3e00008, 0x0, 0x27bdffe0, +0xafbf0018, 0xafb10014, 0xafb00010, 0x8f420180, +0x808021, 0xa08821, 0xe001326, 0x402021, +0xa2000084, 0x8e020054, 0x8fbf0018, 0x8fb00010, +0xae220108, 0x8fb10014, 0x3e00008, 0x27bd0020, +0x27bdffe0, 0x3c020008, 0xafb00010, 0xafbf0018, +0xafb10014, 0x3428021, 0x8f510140, 0x92030084, +0x8e040050, 0x8e02004c, 0x14820040, 0x306600ff, +0x3c020800, 0x8c4200e0, 0x2403ff80, 0x2221021, +0x431024, 0xaf420024, 0x3c020800, 0x8c4200e0, +0x9744007c, 0x92050081, 0x2221021, 0x3042007f, +0x3421821, 0x3c02000a, 0x621821, 0x14a0000b, +0x3084ffff, 0x24020005, 0x54c20014, 0x248205dc, +0x90620112, 0x24420001, 0xa0620112, 0x24020c80, +0xaf420024, 0xa00137e, 0x24020005, 0xa0600112, +0x24020005, 0x14c20009, 0x248205dc, 0x92020081, +0x2c420007, 0x50400005, 0x24820a00, 0x92030081, +0x24020014, 0x621004, 0x821021, 0x3044ffff, +0xa6040014, 0xe001326, 0x2202021, 0x9602003c, +0x8e03004c, 0x2202021, 0x3042ffff, 0x21040, +0x621821, 0xe000333, 0xae03005c, 0x9202007d, +0x2202021, 0x34420040, 0xe00033c, 0xa202007d, +0x8f4201f8, 0x440fffe, 0x24020002, 0xaf5101c0, +0xa34201c4, 0x3c021000, 0xaf4201f8, 0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x3c020800, 0x24457ea0, 0x94a3001a, 0x8ca40024, -0x403021, 0x318c0, 0x832021, 0xaf44003c, -0x8ca20020, 0xaf420038, 0x3c020050, 0x34420008, -0xaf420030, 0x0, 0x0, 0x0, -0x8f420000, 0x30420020, 0x1040fffd, 0x0, -0x8f430400, 0x24c67ea0, 0xacc30010, 0x8f420404, -0x3c030020, 0xacc20014, 0xaf430030, 0x94c40018, -0x94c3001c, 0x94c2001a, 0x94c5001e, 0x832021, -0x24420001, 0xa4c2001a, 0x3042ffff, 0x14450002, -0xa4c40018, 0xa4c0001a, 0x3e00008, 0x0, -0x8f82004c, 0x3c030006, 0x21140, 0x431025, -0xaf420030, 0x0, 0x0, 0x0, -0x27430400, 0x8f420000, 0x30420010, 0x1040fffd, -0x0, 0xaf80004c, 0xaf830054, 0x3e00008, -0x0, 0x27bdffe8, 0xafb00010, 0x3c100800, -0x26107ea0, 0x3c05000a, 0x2002021, 0x3452821, -0xafbf0014, 0xe001f35, 0x2406000a, 0x96020002, -0x9603001e, 0x3042000f, 0x24420003, 0x431804, -0x24027fff, 0x43102b, 0xaf830050, 0x10400002, -0x0, 0xd, 0xe001e39, 0x0, -0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, -0x8f86003c, 0x8f82005c, 0x8f830058, 0x27bdffe0, -0xafb10014, 0x8821, 0xafbf0018, 0xafb00010, -0x94c50008, 0x24420001, 0x24630020, 0xaf82005c, -0xaf830058, 0x24a50001, 0xa4c50008, 0x8cc3001c, -0x8cc2001c, 0x309000ff, 0x3c048000, 0x24420020, -0x4610008, 0xacc2001c, 0x8cc2001c, 0x441024, -0x14400004, 0x0, 0x8cc20018, 0x24420001, -0xacc20018, 0x8f84003c, 0x94830008, 0x94820010, -0x10620003, 0x0, 0x12000026, 0x0, -0x8f82005c, 0x24110001, 0x3c030006, 0x21140, -0x431025, 0xaf420030, 0x0, 0x0, -0x0, 0x27450400, 0x8f420000, 0x30420010, -0x1040fffd, 0x0, 0x8f82003c, 0x94440008, -0x94430010, 0xaf80005c, 0xaf850058, 0x14830013, -0x0, 0xe001f06, 0x0, 0x1600000f, -0x0, 0x8f84003c, 0x8c820018, 0xaf420038, -0x8c83001c, 0x3c020005, 0xaf43003c, 0xaf420030, -0x27420400, 0xaf80005c, 0xaf820058, 0xa001ed8, -0x0, 0x94820008, 0x94830010, 0x8f84003c, -0x9482000e, 0x24420001, 0xa482000e, 0x9483000e, -0x9482000c, 0x24420001, 0x43102a, 0x10400002, -0x24020001, 0xa482000e, 0x2201021, 0x8fbf0018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, -0x8f84003c, 0x8c820018, 0xaf420038, 0x8c83001c, -0x3c020005, 0xaf43003c, 0xaf420030, 0x27420400, -0xaf80005c, 0xaf820058, 0x3e00008, 0x0, -0x8f82005c, 0x3c030006, 0x21140, 0x431025, -0xaf420030, 0x0, 0x0, 0x0, -0x27430400, 0x8f420000, 0x30420010, 0x1040fffd, -0x0, 0xaf80005c, 0xaf830058, 0x3e00008, -0x0, 0x8f85003c, 0x8ca40004, 0x94a20012, -0x2403ff00, 0x832024, 0x210c0, 0x821021, -0xaf42003c, 0x8f43003c, 0x832023, 0x18800004, -0x0, 0x8ca20000, 0xa001f16, 0x24420001, -0x8ca20000, 0xaf420038, 0x3c020050, 0x34420008, -0xaf420030, 0x0, 0x0, 0x0, -0x8f420000, 0x30420020, 0x1040fffd, 0x0, -0x8f84003c, 0x8f420400, 0xac820018, 0x8f430404, -0x3c020020, 0xac83001c, 0xaf420030, 0x94830010, -0x9482000a, 0x621821, 0xa4830010, 0x94820012, -0x24420001, 0xa4820012, 0x94830012, 0x94820014, -0x50620001, 0xa4800012, 0x3e00008, 0x0, -0x10c00007, 0x0, 0x8ca20000, 0x24c6ffff, -0x24a50004, 0xac820000, 0x14c0fffb, 0x24840004, -0x3e00008, 0x0, 0xa001f46, 0xa01021, -0xac860000, 0x0, 0x0, 0x24840004, -0xa01021, 0x1440fffa, 0x24a5ffff, 0x3e00008, -0x0, 0x0 }; -static u32 bce_COM_b06FwData[(0x0/4) + 1] = { 0x0 }; -static u32 bce_COM_b06FwRodata[(0x88/4) + 1] = { -0x8001c1c, -0x8001c4c, 0x8001c4c, 0x8001c4c, 0x8001c4c, -0x8001c4c, 0x8001b74, 0x8001c4c, 0x8001bdc, -0x8001c4c, 0x8001b08, 0x8001c4c, 0x8001c4c, -0x8001c4c, 0x8001b14, 0x0, 0x8002b58, -0x8002ba8, 0x8002bd8, 0x8002c08, 0x8002c38, -0x0, 0x80060a0, 0x80060a0, 0x80060a0, -0x80060a0, 0x80060a0, 0x80060d4, 0x80060d4, -0x8006114, 0x8006120, 0x8006120, 0x80060a0, -0x0, 0x0 }; -static u32 bce_COM_b06FwBss[(0x88/4) + 1] = { 0x0 }; -static u32 bce_COM_b06FwSbss[(0x60/4) + 1] = { 0x0 }; -/* static u32 bce_COM_b06FwSdata[(0x0/4) + 1] = { 0x0 }; */ +0x0 }; +u32 bce_COM_b06FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_COM_b06FwRodata[(0x14/4) + 1] = { +0x8000e7c, 0x8000ec4, 0x8000ef8, +0x8000f44, 0x8000f78, 0x0 }; +u32 bce_COM_b06FwBss[(0xbc/4) + 1] = { 0x0 }; +u32 bce_COM_b06FwSbss[(0x38/4) + 1] = { 0x0 }; +u32 bce_COM_b06FwSdata[(0x0/4) + 1] = { 0x0 }; -static int bce_RXP_b06FwReleaseMajor = 0x1; -static int bce_RXP_b06FwReleaseMinor = 0x0; -static int bce_RXP_b06FwReleaseFix = 0x0; -static u32 bce_RXP_b06FwStartAddr = 0x08003184; -static u32 bce_RXP_b06FwTextAddr = 0x08000000; -static int bce_RXP_b06FwTextLen = 0x6820; -static u32 bce_RXP_b06FwDataAddr = 0x08006ac0; -static int bce_RXP_b06FwDataLen = 0x0; -static u32 bce_RXP_b06FwRodataAddr = 0x08006820; -static int bce_RXP_b06FwRodataLen = 0x278; -static u32 bce_RXP_b06FwBssAddr = 0x08006af0; -static int bce_RXP_b06FwBssLen = 0x13dc; -static u32 bce_RXP_b06FwSbssAddr = 0x08006ac0; -static int bce_RXP_b06FwSbssLen = 0x28; -/* static u32 bce_RXP_b06FwSDataAddr = 0x00000000; */ -/* static int bce_RXP_b06FwSDataLen = 0x0; */ -static u32 bce_RXP_b06FwText[(0x6820/4) + 1] = { -0xa000c61, -0x0, 0x0, 0xd, 0x72787020, -0x332e342e, 0x38000000, 0x3040803, 0x0, -0xd, 0x0, 0x0, 0x0, +int bce_RXP_b06FwReleaseMajor = 0x1; +int bce_RXP_b06FwReleaseMinor = 0x0; +int bce_RXP_b06FwReleaseFix = 0x0; +u32 bce_RXP_b06FwStartAddr = 0x080031d0; +u32 bce_RXP_b06FwTextAddr = 0x08000000; +int bce_RXP_b06FwTextLen = 0x70b4; +u32 bce_RXP_b06FwDataAddr = 0x00000000; +int bce_RXP_b06FwDataLen = 0x0; +u32 bce_RXP_b06FwRodataAddr = 0x080070b4; +int bce_RXP_b06FwRodataLen = 0x3c; +u32 bce_RXP_b06FwBssAddr = 0x08007174; +int bce_RXP_b06FwBssLen = 0x44c; +u32 bce_RXP_b06FwSbssAddr = 0x08007120; +int bce_RXP_b06FwSbssLen = 0x54; +u32 bce_RXP_b06FwSDataAddr = 0x00000000; +int bce_RXP_b06FwSDataLen = 0x0; +u32 bce_RXP_b06FwText[(0x70b4/4) + 1] = { +0xa000c74, +0x0, 0x0, 0xd, 0x72787034, +0x2e342e31, 0x37000000, 0x4041103, 0x0, +0x1, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, @@ -2887,2825 +2134,12124 @@ 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0x10000003, 0x0, 0xd, -0xd, 0x3c020800, 0x24426ac0, 0x3c030800, -0x24637ecc, 0xac400000, 0x43202b, 0x1480fffd, -0x24420004, 0x3c1d0800, 0x37bd7ffc, 0x3a0f021, -0x3c100800, 0x26103184, 0x3c1c0800, 0x279c6ac0, -0xe000ef6, 0x0, 0xd, 0x8ca20000, -0x463021, 0xaca60000, 0xc2302b, 0x10c00004, -0x0, 0x8c820000, 0x24420001, 0xac820000, -0x3e00008, 0x0, 0x24020800, 0x3e00008, -0xaf4201b8, 0x30a5ffff, 0x30c6ffff, 0x30e7ffff, -0x8f4201b8, 0x440fffe, 0x24020003, 0xa342018b, -0x9782000a, 0x8f830004, 0x8f880010, 0xaf440180, -0xa745018c, 0xa746018e, 0xa7470188, 0xa7420190, -0x31028000, 0x1040000c, 0xaf4301a8, 0x93420116, -0x304200fc, 0x5a1021, 0x24424004, 0x8c420000, -0x3042ffff, 0x14400004, 0x3c02ffff, 0x34427fff, -0x1021024, 0xaf820010, 0x97820012, 0x9743010c, -0x8f440104, 0x3042bfff, 0x31c00, 0x3084ffff, -0x641825, 0xa74201a6, 0xaf4301ac, 0x3c021000, -0xaf4201b8, 0x3e00008, 0x0, 0x27430180, -0x8f4201b8, 0x440fffe, 0x24022000, 0xa4620008, -0x24020002, 0xa062000b, 0xa4600010, 0x3c021000, -0xaf4201b8, 0x3e00008, 0x0, 0x27bdffe0, -0xafb00010, 0x808021, 0x8f840008, 0x3c020020, -0x34424000, 0xafbf001c, 0xafb20018, 0x821824, -0x14620007, 0xafb10014, 0x8f830010, 0x2402bfff, -0x821024, 0xaf820008, 0xa000cd7, 0x34631000, -0x3c020020, 0x34428000, 0x821824, 0x14620007, -0x3c02ffff, 0x8f830010, 0x34427fff, 0x821024, -0xaf820008, 0x34638000, 0xaf830010, 0xe000e5a, -0x0, 0x14400006, 0x0, 0x9743011e, -0x9742011c, 0x21400, 0x621825, 0xaf830004, -0x9742010c, 0x8f840008, 0x3047ffff, 0x30821000, -0x1040000f, 0x30820020, 0x1440000e, 0x24110005, -0x3c021000, 0x821024, 0x10400009, 0x3c030dff, -0x3463ffff, 0x3c020e00, 0x821024, 0x62182b, -0x50600004, 0x24110001, 0xa000cf7, 0x3c120800, -0x24110001, 0x3c120800, 0x8e420034, 0x14400020, -0x0, 0x8f820014, 0x1440001d, 0x0, -0x8f820010, 0x30424000, 0x14400019, 0x3c021f01, -0x823024, 0x3c021000, 0x14c20015, 0x30e20200, -0x14400013, 0x0, 0x9743010e, 0x24020003, -0xa342018b, 0x97840012, 0x9785000a, 0x24020002, -0xa742018c, 0x36220002, 0xaf400180, 0xa7420188, -0x24630004, 0x3084bfff, 0xa743018e, 0xa74401a6, -0xa7450190, 0xaf4601b8, 0xa000de6, 0x1021, -0x8f850008, 0x3c020001, 0xa21024, 0x10400007, -0x24040080, 0x9746010e, 0x24050002, 0xe000c86, -0x24070003, 0xa000de6, 0x1021, 0x8f860010, -0x30c24000, 0x10400015, 0x3c020f00, 0xa21024, -0x14400012, 0x0, 0x93420116, 0x34424000, -0x3421021, 0x94440002, 0x2c821389, 0x1040000b, -0x3c030800, 0x24636af0, 0x41142, 0x21080, -0x431021, 0x3084001f, 0x8c430000, 0x24020001, -0x821004, 0x621824, 0x2038025, 0x16000070, -0x24040180, 0x3c021000, 0xa21024, 0x1040004a, -0x3c020800, 0x8c420030, 0x1040000a, 0x30c24000, -0x10400008, 0x3c030f00, 0xa31824, 0x3c020100, -0x43102b, 0x14400004, 0x3c020800, 0xa000dad, -0x24040080, 0x3c020800, 0x8c420024, 0x30420008, -0x1040000d, 0x3c020f00, 0xa21024, 0x1440000b, -0x8e420034, 0x30e20200, 0x10400007, 0x24040180, -0x9746010e, 0x24050002, 0x3227fffb, 0x24c60004, -0xe000c86, 0x30c6ffff, 0x8e420034, 0x10400014, -0x0, 0x8f830008, 0x30620100, 0x10400010, -0x3c020f00, 0x621024, 0x3c030200, 0x1043000c, -0x3c020800, 0x8c420038, 0x8f830004, 0x2442ffff, -0x621824, 0x3c020800, 0x2442003c, 0x621821, -0x90620000, 0x24420004, 0xa000dad, 0x221c0, -0x0, 0x8f830008, 0x31602, 0x3050000f, -0x2602fffc, 0x2c420004, 0x14400031, 0x2021, -0x31242, 0x30420001, 0x10182b, 0x431024, -0x5040002b, 0x1021c0, 0x9746010e, 0x24050002, -0x3227fffb, 0x24c60004, 0xe000c86, 0x30c6ffff, -0xa000dad, 0x1021c0, 0x8f424000, 0x30420100, -0x1040004c, 0x8e420034, 0x10400017, 0x30a20100, -0x10400015, 0x3c020f00, 0xa21024, 0x3c030200, -0x10430011, 0x3c020800, 0x8f830004, 0x8c420038, -0x24050002, 0x3227fffb, 0x9746010e, 0x2442ffff, -0x621824, 0x3c020800, 0x2442003c, 0x621821, -0x90640000, 0x24c60004, 0x30c6ffff, 0x24840004, -0xe000c86, 0x421c0, 0x3c100800, 0x8e030024, -0x24020001, 0x1462000a, 0x30620001, 0x2021, -0x9746010e, 0x24050002, 0x36270002, 0x24c60004, -0xe000c86, 0x30c6ffff, 0xa000de6, 0x1021, -0x10400009, 0x32320004, 0x2021, 0x24050002, -0x9746010e, 0x2203821, 0x3231fffb, 0x24c60004, -0xe000c86, 0x30c6ffff, 0x8e020024, 0x30420004, -0x10400008, 0x24040100, 0x24050002, 0x9746010e, -0x2203821, 0x3231fffb, 0x24c60004, 0xe000c86, -0x30c6ffff, 0x8e020024, 0x30420008, 0x10400007, -0x24040180, 0x9746010e, 0x24050002, 0x2203821, -0x24c60004, 0xe000c86, 0x30c6ffff, 0x16400011, -0x1021, 0xe000cb0, 0x0, 0xa000de6, -0x1021, 0x3c020800, 0x8c420024, 0x30420001, -0x10400007, 0x2021, 0x9746010e, 0x24050002, -0x36270002, 0x24c60004, 0xe000c86, 0x30c6ffff, -0x1021, 0x8fbf001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x27440180, -0x8f4201b8, 0x440fffe, 0x0, 0x8f420148, -0x24030002, 0xa083000b, 0x21402, 0xa4820008, -0x8f420148, 0xa4820010, 0x8f420144, 0xac820024, -0x3c021000, 0x3e00008, 0xaf4201b8, 0x27bdffe0, -0xafbf0018, 0xafb10014, 0xafb00010, 0x8f420148, -0x3044ffff, 0x21402, 0x305000ff, 0x24020002, -0x1202000c, 0x27510180, 0x2a020003, 0x10400005, -0x24020003, 0x600001b, 0x0, 0xa000e19, -0x0, 0x12020007, 0x0, 0xa000e26, -0x0, 0xe000e2c, 0x0, 0xa000e19, -0x402021, 0xe000e41, 0x0, 0x402021, -0x8f4201b8, 0x440fffe, 0x36023000, 0xa6220008, -0x24020002, 0xa222000b, 0xa6240010, 0x8f420144, -0xae220024, 0x3c021000, 0xaf4201b8, 0xa000e28, -0x8fbf0018, 0xd, 0x8fbf0018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0020, 0x3084ffff, -0x2c821389, 0x10400010, 0x3c030800, 0x24636af0, -0x43142, 0x63080, 0xc33021, 0x3087001f, -0x24030001, 0x8cc40000, 0x8f850014, 0xe31804, -0x832025, 0x24a50001, 0xacc40000, 0xaf850014, -0x3e00008, 0x1021, 0x3e00008, 0x24020091, -0x3083ffff, 0x2c621389, 0x14400003, 0x3c020800, -0x3e00008, 0x24020091, 0x24426af0, 0x32942, -0x52880, 0xa22821, 0x3063001f, 0x24020001, -0x621004, 0x8ca30000, 0x8f840014, 0x21027, -0x621824, 0x2484ffff, 0xaca30000, 0xaf840014, -0x4810002, 0x0, 0xd, 0x3e00008, -0x1021, 0x8f4a0070, 0x93420112, 0x8f840008, -0x22882, 0x30820100, 0x14400003, 0x24a30003, -0x3e00008, 0x1021, 0x30824000, 0x10400010, -0x27424000, 0x31880, 0x431021, 0x8c460000, -0x24a30004, 0x31880, 0x27424000, 0x431021, -0x8c480000, 0x93430116, 0x27424000, 0x306300fc, -0x431021, 0x8c490000, 0xa000e82, 0x3c020800, -0x30822000, 0x1040ffea, 0x31880, 0x27424000, -0x431021, 0x8c460000, 0x24a30004, 0x31880, -0x27424000, 0x431021, 0x8c480000, 0x4821, -0x3c020800, 0x24470100, 0x61602, 0x21080, -0x471021, 0x8c450000, 0x61382, 0x304203fc, -0xe21021, 0x8c420400, 0xa22826, 0x61182, -0x304203fc, 0xe21021, 0x8c440800, 0x30c200ff, -0x21080, 0xe21021, 0x8c430c00, 0x81602, -0x21080, 0xe21021, 0x8c421000, 0xa42826, -0xa32826, 0xa22826, 0x81382, 0x304203fc, -0xe21021, 0x8c441400, 0x81182, 0x304203fc, -0xe21021, 0x8c431800, 0x310200ff, 0x21080, -0xe21021, 0x8c421c00, 0xa42826, 0xa32826, -0x11200015, 0xa22826, 0x91602, 0x21080, -0xe21021, 0x8c422000, 0xa22826, 0x91382, -0x304203fc, 0xe21021, 0x8c442400, 0x91182, -0x304203fc, 0xe21021, 0x8c432800, 0x312200ff, -0x21080, 0xe21021, 0x8c422c00, 0xa42826, -0xa32826, 0xa22826, 0x8f420070, 0x3c060800, -0x8cc43100, 0x4a5023, 0x2c820020, 0x10400007, -0x3c020800, 0x24423104, 0x41880, 0x621821, -0x24820001, 0xac6a0000, 0xacc23100, 0xaf850004, -0x3e00008, 0x24020001, 0x27bdffe8, 0x3c04600c, -0xafbf0014, 0xafb00010, 0x8c825000, 0x3c1a8000, -0x2403ff7f, 0x3c106000, 0x431024, 0x3442380c, -0xac825000, 0x24020003, 0x3c030008, 0xaf420008, -0x8e020808, 0x343d825, 0x3c030800, 0xac600020, -0x3042fff0, 0x38420010, 0x2c420001, 0xaf820000, -0xe000fbe, 0x0, 0xe0015cb, 0x0, -0x3c030400, 0x3463000c, 0x3c02ffff, 0x34420806, -0xae031948, 0xae02194c, 0x8e021980, 0x8fbf0014, -0x34420200, 0xae021980, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0xafbf0014, 0xe000ecf, -0xafb00010, 0x8f500000, 0x32020003, 0x1040fffd, -0x32020001, 0x10400004, 0x32020002, 0xe000f09, -0x0, 0x32020002, 0x1040fff6, 0x0, -0xe000f72, 0x0, 0xa000efa, 0x0, -0x27bdffe8, 0xafbf0014, 0xafb00010, 0x8f500128, -0xaf500020, 0x8f420104, 0x8f430100, 0xaf820008, -0xaf830010, 0xe000c83, 0x0, 0x8f434000, -0x3402ffff, 0x14620008, 0x3c040800, 0x248400f0, -0x9746010e, 0x3c050800, 0xe000c78, 0x24a500ec, -0xa000f31, 0x3c020800, 0x8f424000, 0x30420100, -0x10400008, 0x3c040800, 0x248400e8, 0x9746010e, -0x3c050800, 0xe000c78, 0x24a500e4, 0xa000f31, -0x3c020800, 0x3c040800, 0x248400e0, 0x9746010e, -0x3c050800, 0xe000c78, 0x24a500dc, 0x3c020800, -0x8c4200c0, 0x10400006, 0x3c030800, 0x8c6200c4, -0x24040001, 0x24420001, 0xa000f65, 0xac6200c4, -0x8f820008, 0x3c030010, 0x431024, 0x14400009, -0x3c020017, 0x3c030800, 0x8c620020, 0x2021, -0x24420001, 0xe000cbc, 0xac620020, 0xa000f65, -0x402021, 0x3442f7ff, 0x50102b, 0x10400008, -0x3c030800, 0x8c620020, 0x24040001, 0x24420001, -0xe000cbc, 0xac620020, 0xa000f65, 0x402021, -0x8f820010, 0x2403bfff, 0x431024, 0x1440000d, -0x0, 0x93630000, 0x24020020, 0x14620005, -0x0, 0xe001067, 0x0, 0xa000f65, -0x402021, 0xe0013ab, 0x0, 0xa000f65, -0x402021, 0xe00129b, 0x0, 0x402021, -0x10800006, 0x3c024000, 0x8f430124, 0x3c026020, -0xac430014, 0x0, 0x3c024000, 0xaf420138, -0x0, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0xafbf0010, 0x8f420140, -0xaf420020, 0x8f430148, 0x3c027000, 0x621824, -0x3c023000, 0x10620012, 0x43102b, 0x14400006, -0x3c024000, 0x3c022000, 0x10620009, 0x3c024000, -0xa000f98, 0x0, 0x1062000d, 0x3c025000, -0x1062000f, 0x3c024000, 0xa000f98, 0x0, -0xe000dec, 0x0, 0xa000f98, 0x3c024000, -0xe000dfc, 0x0, 0xa000f98, 0x3c024000, -0xe0012b1, 0x0, 0xa000f98, 0x3c024000, -0xe001993, 0x0, 0x3c024000, 0xaf420178, -0x0, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x10000003, 0x0, 0xd, 0xd, +0x3c020800, 0x24427120, 0x3c030800, 0x246375c0, +0xac400000, 0x43202b, 0x1480fffd, 0x24420004, +0x3c1d0800, 0x37bd7ffc, 0x3a0f021, 0x3c100800, +0x261031d0, 0x3c1c0800, 0x279c7120, 0xe000f54, +0x0, 0xd, 0x8ca20000, 0x463021, +0xc2102b, 0x10400004, 0xaca60000, 0x8c820000, +0x24420001, 0xac820000, 0x3e00008, 0x0, +0x8f4201b8, 0x440fffe, 0x24020800, 0xaf4201b8, +0x3e00008, 0x0, 0x3c020008, 0x3422821, +0x94a20048, 0x3084ffff, 0x1040001b, 0x24840012, +0x94a20048, 0x3042ffff, 0x44102a, 0x10400017, +0x24020003, 0x2402001a, 0x93430120, 0xa342018b, +0x8f820008, 0x306300ff, 0x30424000, 0x10400009, +0x2463fffe, 0x94a20048, 0x3042ffff, 0x43102b, +0x14400005, 0x8f820014, 0xa7430194, 0xa000cb9, +0x34420001, 0x8f820014, 0x2403fffe, 0x431024, +0x3e00008, 0xaf820014, 0x24020003, 0x3e00008, +0xa342018b, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf001c, 0x30b1ffff, 0x30d0ffff, +0x30f2ffff, 0x8f4201b8, 0x440fffe, 0x0, +0xaf440180, 0xe000c9b, 0x2002021, 0x8f830008, +0x8f840014, 0xa751018c, 0xa750018e, 0xa7430190, +0x8f830004, 0x30828000, 0xaf4301a8, 0xa7520188, +0x1040000e, 0x8f820014, 0x93420116, 0x304200fc, +0x24420004, 0x5a1021, 0x8c424000, 0x3042ffff, +0x14400006, 0x8f820014, 0x3c02ffff, 0x34427fff, +0x821024, 0xaf820014, 0x8f820014, 0x2403bfff, +0x431024, 0xa74201a6, 0x9743010c, 0x8f420104, +0x31c00, 0x3042ffff, 0x621825, 0xaf4301ac, +0x3c021000, 0xaf4201b8, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x27bdffe0, 0xafb20018, 0x30d2ffff, 0xaf440180, +0x2402021, 0xafb10014, 0xafb00010, 0x30f1ffff, +0xafbf001c, 0xe000c9b, 0x30b0ffff, 0x8f830014, +0x2402bfff, 0xa750018c, 0x621824, 0x8f820008, +0xa752018e, 0xa7510188, 0xa74301a6, 0xa7420190, +0x3c021000, 0xaf4201b8, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x27430180, 0x8f4201b8, 0x440fffe, 0x24022000, +0xa4620008, 0x24020002, 0xa062000b, 0xa4600010, +0x3c021000, 0xaf4201b8, 0x3e00008, 0x0, +0x8f470070, 0x93420112, 0x8f830008, 0x27bdfff0, +0x304200ff, 0x22882, 0x30620100, 0x3021, +0x10400043, 0x24a40003, 0x30624000, 0x10400010, +0x30622000, 0x41080, 0x5a1021, 0x8c434000, +0x24a40004, 0x41080, 0xafa30000, 0x5a1021, +0x8c424000, 0xafa20004, 0x93420116, 0x304200fc, +0x5a1021, 0x8c424000, 0xa000d45, 0xafa20008, +0x1040002f, 0x3021, 0x41080, 0x5a1021, +0x8c434000, 0x24a40004, 0x41080, 0xafa30000, +0x5a1021, 0x8c424000, 0xafa00008, 0xafa20004, +0x8fa80008, 0x3021, 0x2021, 0x240a0008, +0x3c090800, 0x25290100, 0x3a41021, 0x148a0003, +0x42a00, 0x1100000a, 0x0, 0x90420000, +0x24840001, 0x2c83000c, 0xa21021, 0x21080, +0x491021, 0x8c420000, 0x1460fff3, 0xc23026, +0x3c040800, 0x8c843104, 0x8f420070, 0x2c830020, +0x10600009, 0x473823, 0x3c030800, 0x24633108, +0x41080, 0x431021, 0x24830001, 0xac470000, +0x3c010800, 0xac233104, 0xaf860004, 0x24060001, +0xc01021, 0x3e00008, 0x27bd0010, 0x3c020800, +0x8c420038, 0x27bdffd0, 0xafb50024, 0xafb3001c, +0xafbf0028, 0xafb40020, 0xafb20018, 0xafb10014, +0xafb00010, 0x3c150800, 0x26b50038, 0x14400002, +0x2453ffff, 0x9821, 0x8f840008, 0x30824000, +0x1040000a, 0x30828000, 0x3c020020, 0x821024, +0x50400006, 0x30828000, 0x8f820014, 0x2403bfff, +0x831824, 0xa000d91, 0x34421000, 0x1040000a, +0x3c020020, 0x821024, 0x10400007, 0x8f820014, +0x3c03ffff, 0x34637fff, 0x831824, 0x34428000, +0xaf820014, 0xaf830008, 0xe000d1d, 0x0, +0x14400008, 0x8f840008, 0x9743011e, 0x9742011c, +0x3063ffff, 0x21400, 0x621825, 0xaf830004, +0x8f840008, 0x9742010c, 0x30831000, 0x10600011, +0x3046ffff, 0x30820020, 0x1440000f, 0x24120005, +0x3c021000, 0x821024, 0x1040000b, 0x24120001, +0x3c030e00, 0x3c020dff, 0x831824, 0x3442ffff, +0x43102b, 0x10400004, 0x0, 0xa000db3, +0x24120005, 0x24120001, 0x3c050800, 0x8ca50034, +0x54a00019, 0x8f840008, 0x8f82001c, 0x54400016, +0x8f840008, 0x8f820014, 0x30424000, 0x54400012, +0x8f840008, 0x3c021f01, 0x821024, 0x3c031000, +0x1443000d, 0x8f840008, 0x30c20200, 0x1440000b, +0x3c020001, 0x9746010e, 0x36470002, 0x2021, +0x24c60004, 0x30c6ffff, 0xe000cf5, 0x24050002, +0xa000e79, 0x8fbf0028, 0x3c020001, 0x821024, +0x1040000c, 0x8f830014, 0x3c020800, 0x8c4200d8, +0x9746010e, 0x24040080, 0x24420001, 0x30c6ffff, +0x24050002, 0x3c010800, 0xac2200d8, 0xa000e76, +0x24070003, 0x30624000, 0x10400006, 0x3c021000, +0x3c020f00, 0x821024, 0x50400001, 0x93420116, +0x3c021000, 0x821024, 0x10400044, 0x0, +0x3c020800, 0x8c420030, 0x1040000c, 0x30624000, +0x1040000a, 0x3c030f00, 0x831824, 0x3c020100, +0x43102b, 0x14400005, 0x0, 0x9746010e, +0x36470002, 0xa000e73, 0x24040080, 0x10a0000d, +0x30820100, 0x1040000b, 0x3c020f00, 0x821024, +0x3c030200, 0x10430007, 0x8f820004, 0x531024, +0x551021, 0x90420004, 0x24420004, 0xa000e29, +0x221c0, 0x0, 0x8f860008, 0x3c050800, +0x8ca500d0, 0x61602, 0x3050000f, 0x38a20001, +0x2c420001, 0x2e03000c, 0x431024, 0x14400018, +0x1021c0, 0x2602fffc, 0x2c420004, 0x54400014, +0x2021, 0x38a20002, 0x2c420001, 0x431024, +0x10400003, 0x61242, 0xa000e29, 0x2021, +0x10182b, 0x431024, 0x50400009, 0x1021c0, +0x9746010e, 0x2021, 0x24050002, 0x24c60004, +0x30c6ffff, 0xe000cbe, 0x3247fffb, 0x1021c0, +0x9746010e, 0xa000e73, 0x36470002, 0x8f424000, +0x3c110800, 0x8e310024, 0x30420100, 0x1040003d, +0x32220001, 0x2208021, 0x10a00017, 0x32540004, +0x30820100, 0x10400015, 0x24020001, 0x3c020f00, +0x821024, 0x3c030200, 0x1043000f, 0x8f820004, +0x9746010e, 0x2403821, 0x531024, 0x551021, +0x90440004, 0x24c60004, 0x30c6ffff, 0x24840004, +0x421c0, 0xe000cbe, 0x24050002, 0x2402fffe, +0x2228024, 0x3252fffb, 0x24020001, 0x16020007, +0x32020001, 0x32420004, 0x50400001, 0x36520002, +0x9746010e, 0xa000e72, 0x2403821, 0x1040000a, +0x32020004, 0x9746010e, 0x2403821, 0x2021, +0x24c60004, 0x30c6ffff, 0xe000cbe, 0x24050002, +0x3252fffb, 0x32020004, 0x10400008, 0x0, +0x9746010e, 0x2403821, 0x24040100, 0x24c60004, +0x30c6ffff, 0xe000cbe, 0x24050002, 0x56800010, +0x8fbf0028, 0xe000d11, 0x0, 0xa000e79, +0x8fbf0028, 0x1040000a, 0x8fbf0028, 0x9746010e, +0x36470002, 0x2021, 0x24c60004, 0x30c6ffff, +0x24050002, 0xe000cbe, 0x0, 0x8fbf0028, +0x8fb50024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x1021, 0x3e00008, +0x27bd0030, 0x27430180, 0x8f4201b8, 0x440fffe, +0x0, 0x8f420148, 0x21402, 0xa4620008, +0x24020002, 0xa062000b, 0x8f420148, 0xa4620010, +0x8f420144, 0xac620024, 0x3c021000, 0x3e00008, +0xaf4201b8, 0x27bdffe8, 0xafb00010, 0x3c04600c, +0xafbf0014, 0x8c825000, 0x2403ff7f, 0x3c1a8000, +0x431024, 0x3442380c, 0xac825000, 0x24020003, +0x3c106000, 0xaf420008, 0x8e020808, 0x3c1b8008, +0x3c010800, 0xac200020, 0x3042fff0, 0x38420010, +0x2c420001, 0xe00192b, 0xaf820000, 0x3c04ffff, +0x3c020400, 0x34830806, 0x3442000c, 0xae021948, +0xae03194c, 0x3c056016, 0x8e021980, 0x8ca30000, +0x34420200, 0x641824, 0xae021980, 0x3c025353, +0x14620003, 0x34a47c00, 0x8ca20004, 0x502021, +0x8c82007c, 0x8c830078, 0x8fbf0014, 0x8fb00010, +0x27bd0018, 0xaf820018, 0x3e00008, 0xaf830010, 0x27bdffe8, 0xafbf0010, 0x8f434000, 0x3402ffff, -0x14620008, 0x3c040800, 0x248400f0, 0x9746010e, -0x3c050800, 0xe000c78, 0x24a500ec, 0xa000fbc, -0x8fbf0010, 0x8f424000, 0x30420100, 0x10400008, -0x3c040800, 0x248400e8, 0x9746010e, 0x3c050800, -0xe000c78, 0x24a500e4, 0xa000fbc, 0x8fbf0010, -0x3c040800, 0x248400e0, 0x9746010e, 0x3c050800, -0xe000c78, 0x24a500dc, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x3e00008, 0x0, 0x3c029000, +0x3c040800, 0x248400f0, 0x3c050800, 0x24a500ec, +0x10620009, 0x0, 0x8f424000, 0x3c040800, +0x248400e8, 0x3c050800, 0x24a500e4, 0x30420100, +0x1040000b, 0x0, 0x9746010e, 0xe000c8b, +0x30c6ffff, 0x9746010e, 0x3c040800, 0x248431cc, +0x3c050800, 0x24a531c8, 0xa000ef2, 0x8fbf0010, +0x8f434000, 0x8f820010, 0x3c040800, 0x248400e0, +0x3c050800, 0x24a500dc, 0x1462000c, 0x0, +0x8f434004, 0x8f820018, 0x14620008, 0x0, +0x9746010e, 0x3c040800, 0x248431bc, 0x3c050800, +0x24a531b8, 0xa000ef2, 0x8fbf0010, 0x9746010e, +0x8fbf0010, 0x30c6ffff, 0xa000c8b, 0x27bd0018, +0x27bdffe8, 0xafbf0010, 0x8f420128, 0xaf420020, +0x8f420104, 0x8f430100, 0xaf820008, 0xe000c95, +0xaf830014, 0xe000ec1, 0x0, 0x3c020800, +0x8c4200c0, 0x10400008, 0x8f820008, 0x3c020800, +0x8c4200c4, 0x24420001, 0x3c010800, 0xac2200c4, +0xa000f25, 0x0, 0x3c030010, 0x431024, +0x1440000a, 0x2021, 0x3c020800, 0x8c420020, +0x24420001, 0x3c010800, 0xac220020, 0xe000d6c, +0x0, 0xa000f23, 0x0, 0x8f820014, +0x2403bfff, 0x431024, 0x14400005, 0x0, +0xe001a5a, 0x0, 0xa000f23, 0x0, +0xe000f96, 0x0, 0x10400006, 0x3c024000, +0x8f430124, 0x3c026020, 0xac430014, 0x0, +0x3c024000, 0xaf420138, 0x0, 0x8fbf0010, +0x3e00008, 0x27bd0018, 0x27bdffe8, 0xafbf0010, +0x8f420140, 0x3c044000, 0xaf420020, 0x8f430148, +0x3c027000, 0x621824, 0x10640010, 0x83102b, +0x14400006, 0x3c026000, 0x3c022000, 0x10620007, +0x0, 0xa000f4f, 0x3c024000, 0x1062000b, +0x3c024000, 0xa000f4f, 0x0, 0xe000e82, +0x0, 0xa000f4f, 0x3c024000, 0xe000fba, +0x0, 0xa000f4f, 0x3c024000, 0xe001938, +0x0, 0x3c024000, 0xaf420178, 0x0, +0x8fbf0010, 0x3e00008, 0x27bd0018, 0x27bdffe8, +0xafbf0014, 0xe000e92, 0xafb00010, 0x3c028000, +0x34420070, 0x8c430000, 0x403821, 0xaf830020, +0x603021, 0x8ce80000, 0x3c050800, 0x8ca500fc, +0x3c040800, 0x8c8400f8, 0x1063023, 0x1021, +0xa62821, 0xa6302b, 0x822021, 0x862021, +0x3c010800, 0xac2500fc, 0x3c010800, 0xac2400f8, +0x8f500000, 0x32020003, 0x1040ffee, 0x1003021, +0x8ce60000, 0x3c050800, 0x8ca500fc, 0x3c040800, +0x8c8400f8, 0xc83023, 0xa62821, 0x1021, +0xa6302b, 0x822021, 0x862021, 0x32070001, +0x3c010800, 0xac2500fc, 0xaf880020, 0x3c010800, +0xac2400f8, 0x10e00004, 0x32020002, 0xe000ef5, +0x0, 0x32020002, 0x5040ffd1, 0x3c028000, +0xe000f2f, 0x0, 0xa000f59, 0x3c028000, +0x27bdffe8, 0xafbf0010, 0xe000c95, 0x0, +0xaf400180, 0x8fbf0010, 0x2021, 0xa000d6c, +0x27bd0018, 0x8f420100, 0x3042003e, 0x14400011, +0x24020001, 0xaf400048, 0x8f420100, 0x304207c0, +0x10400005, 0x0, 0xaf40004c, 0xaf400050, +0x3e00008, 0x24020001, 0xaf400054, 0xaf400040, +0x8f420100, 0x30423800, 0x54400001, 0xaf400044, +0x24020001, 0x3e00008, 0x0, 0x3c029000, 0x34420001, 0x822025, 0xaf440020, 0x8f420020, 0x440fffe, 0x0, 0x3e00008, 0x0, 0x3c028000, 0x34420001, 0x822025, 0x3e00008, -0xaf440020, 0x308400ff, 0x8f4201b8, 0x440fffe, -0x0, 0x8f420128, 0xaf420180, 0x8f630040, -0x240240c2, 0xa7420188, 0x24020002, 0xa344018a, -0xa342018b, 0x24020008, 0xa7420190, 0x3c021000, -0xa7400192, 0xaf400194, 0xaf4001a4, 0xaf4001a8, -0xaf4001ac, 0xaf4201b8, 0x3e00008, 0xaf430198, -0x1021, 0xacc40000, 0x3e00008, 0xa4e50000, -0x9482000c, 0x24870014, 0x21302, 0x21080, -0x824021, 0xe8102b, 0x1040004d, 0x0, -0x90e30000, 0x2c620009, 0x10400047, 0x3c020800, -0x24426820, 0x31880, 0x621821, 0x8c620000, -0x400008, 0x0, 0xa000fee, 0x24e70001, -0x90e30001, 0x2402000a, 0x54620024, 0x1003821, -0x1071023, 0x2c42000a, 0x54400020, 0x1003821, -0x3c050800, 0x8ca27eb0, 0x24e70002, 0x34420100, -0xaca27eb0, 0x90e20000, 0x90e30001, 0x90e40002, -0x90e60003, 0x24e70004, 0x24a57eb0, 0x21600, -0x31c00, 0x431025, 0x42200, 0x441025, -0x461025, 0xaca20004, 0x90e20000, 0x90e30001, -0x90e40002, 0x90e60003, 0x24e70004, 0x21600, -0x31c00, 0x431025, 0x42200, 0x441025, -0x461025, 0xa000fee, 0xaca20008, 0x90e30001, -0x24020004, 0x1062000e, 0x601021, 0xa001036, -0x1001021, 0x90e30001, 0x24020003, 0x10620008, -0x601021, 0xa001036, 0x1001021, 0x90e30001, -0x24020002, 0x14620003, 0x1001021, 0x601021, -0xe21021, 0xa000fee, 0x403821, 0x90e20001, -0xa000fee, 0xe23821, 0xa000fee, 0x1003821, -0x3e00008, 0x1021, 0x24020001, 0xaf400044, -0x3e00008, 0xaf400050, 0x8f4201b8, 0x440fffe, -0x0, 0x8f420128, 0x3c040800, 0x24847e90, -0xaf420180, 0x8c830010, 0x240240c2, 0xa7420188, -0xaf430198, 0x90820006, 0xa342018a, 0x24020002, -0xa342018b, 0x94820008, 0xa7420190, 0x9082000a, -0x9083000b, 0x21200, 0x621825, 0xa7430192, -0x8c82000c, 0xaf420194, 0x8c820014, 0xaf4201a4, -0x8c820018, 0xaf4201a8, 0x8c82001c, 0xaf4201ac, -0x3c021000, 0xaf4201b8, 0x24020001, 0xaf400044, -0x3e00008, 0xaf400050, 0x27bdffb8, 0xafbf0044, -0xafbe0040, 0xafb7003c, 0xafb60038, 0xafb50034, -0xafb40030, 0xafb3002c, 0xafb20028, 0xafb10024, -0xafb00020, 0x8f670048, 0x9363003f, 0x3c020800, -0xac407eb0, 0x93620023, 0x30420010, 0x1440003d, -0x307500ff, 0x93420116, 0x93630005, 0x34424000, -0x30630001, 0x14600005, 0x342b021, 0xe00135c, -0x0, 0xa001290, 0x8fbf0044, 0x96c2000c, -0x30420020, 0x14400011, 0x24040008, 0x93420112, -0x8f430104, 0x34424000, 0x3422021, 0x3c020020, -0x621824, 0x10600003, 0x0, 0xa001098, -0x24040008, 0x8f420104, 0x3c030040, 0x431024, -0x10400008, 0x0, 0x24040010, 0xe000fce, -0x0, 0xe00135c, 0x0, 0xa001290, -0x8fbf0044, 0x8f820000, 0x10400018, 0x0, -0x8f420104, 0x3c030001, 0x431024, 0x10400013, -0x0, 0x8c83000c, 0x8f620030, 0x146201e6, -0x24020001, 0x8c830010, 0x8f62002c, 0x146201e2, -0x24020001, 0x9763003a, 0x96c20000, 0x144301de, -0x24020001, 0x97630038, 0x96c20002, 0x10430003, -0x0, 0xa00128f, 0x24020001, 0xaf400048, -0xaf400054, 0xaf400040, 0x8f730040, 0xf34023, -0x5010002, 0x0, 0xd, 0x9742011a, -0x3051ffff, 0x12200004, 0x8ed20004, 0x2511021, -0xa0010c8, 0x2450ffff, 0x2408021, 0x92d7000d, -0x3c060800, 0x24c57e90, 0xa4a00008, 0xa0a00006, -0x32e20004, 0x10400023, 0xaca00010, 0x24030012, -0x16a30009, 0x0, 0x3c030800, 0x8c620028, -0x24420001, 0xac620028, 0xe00103f, 0x0, -0xa001290, 0x8fbf0044, 0x8f620044, 0x1242000e, -0x2402001a, 0x8f620044, 0x2421023, 0x440fff6, -0x2471023, 0x441fff4, 0x3c020800, 0x8c4200d8, -0x10400004, 0x24020001, 0xa4a20008, 0xa001120, -0xacb30010, 0x2402001a, 0xa4a20008, 0x24020020, -0xacb30010, 0xa0b5000a, 0xa0a3000b, 0xa001120, -0xa0a20006, 0x272f023, 0x1bc00016, 0x23e102a, -0x54400007, 0x32f700fe, 0x57d1000f, 0x25e9021, -0x32e20001, 0x5440000c, 0x25e9021, 0x32f700fe, -0x220f021, 0x3c040800, 0x8c8300c8, 0x8821, -0x24020001, 0xa4a20008, 0xacb30010, 0x24630001, -0xa00110b, 0xac8300c8, 0x23e1023, 0xa00110b, -0x3051ffff, 0xf021, 0x24e2ffff, 0x2022823, -0x18a0001a, 0xb1102a, 0x14400014, 0xe08021, -0x24c47e90, 0x94820008, 0x3c050800, 0x8ca300cc, -0xac930010, 0x34420001, 0x24630001, 0xa4820008, -0x2531026, 0x2c420001, 0xaca300cc, 0x2d030001, -0x431024, 0x14400005, 0x2202821, 0xe001043, -0x0, 0xa001290, 0x8fbf0044, 0x2251023, -0x3051ffff, 0xa001133, 0x32f700f6, 0x2531023, -0x18400009, 0x24c47e90, 0x94820008, 0x3c050800, -0x8ca300d4, 0xac920010, 0x34420400, 0x24630001, -0xa4820008, 0xaca300d4, 0x32e20002, 0x1440004e, -0x3c030800, 0x32e20010, 0x1040ff9f, 0x0, -0x8f62004c, 0x8ed40008, 0x2442ffff, 0x12820047, -0x24637e90, 0x8f630054, 0x2682ffff, 0x431023, -0x1c400006, 0x3c030800, 0x8f62004c, 0x2821023, -0x4410006, 0x32e20020, 0x3c030800, 0x8c6200d0, -0x24420001, 0xa0010d7, 0xac6200d0, 0x10400013, -0x0, 0x96c20012, 0x51102b, 0x10400008, -0x3c020800, 0x96d10012, 0x12200003, 0x2511021, -0xa001158, 0x2450ffff, 0x2408021, 0x3c020800, -0x24427e90, 0x94430008, 0x90440006, 0x34630008, -0x34840004, 0xa4430008, 0xa0440006, 0x8f420104, -0x3c030080, 0x431024, 0x1040000c, 0x0, -0xe000fe9, 0x2c02021, 0x24030002, 0x10430019, -0x3c030800, 0x8c627eb0, 0x30420100, 0x10400003, -0x24637eb0, 0x8c620004, 0xaf62012c, 0x8f620124, -0x24420001, 0x2821026, 0x2c420001, 0xafa20018, -0x26a2fff7, 0x2c420007, 0x50400048, 0x8821, -0x1220001d, 0x2402021, 0x2202821, 0x27a60014, -0xe000fe5, 0x27a70010, 0x24030002, 0x14430008, -0x8fa30014, 0x3c030800, 0x24637e90, 0x94620008, -0xac730010, 0x34420001, 0xa001120, 0xa4620008, -0x12430003, 0x721023, 0x3c2f021, 0x609021, -0x97a20010, 0x12220003, 0x0, 0x32f700f6, -0x408821, 0x12200003, 0x2511021, 0xa001197, -0x2450ffff, 0x2408021, 0x96c4000e, 0x93630035, -0x8f62004c, 0x642004, 0x942021, 0x821023, -0x18400015, 0x0, 0x8f62004c, 0x2821023, -0x1c400015, 0x3c020800, 0x8f62004c, 0x1682001e, -0x0, 0x8f620018, 0x2021023, 0x1c40000e, -0x3c020800, 0x8f620018, 0x16020017, 0x0, -0x8f620058, 0x821023, 0x18400013, 0x3c020800, -0xa0011b8, 0x24427e90, 0x8f620058, 0x821023, -0x441000d, 0x3c020800, 0x24427e90, 0x94430008, -0xac500010, 0xac520014, 0xac540018, 0xac44001c, -0x34630020, 0xa0011c3, 0xa4430008, 0x2609021, -0x2408021, 0x8f640058, 0x8f62004c, 0x2821023, -0x1840000c, 0x0, 0x8f620054, 0x2821023, -0x1c400008, 0x3c020800, 0x24427e90, 0x94430008, -0xac500010, 0xac54000c, 0x34630040, 0xa0011e1, -0xa4430008, 0x9742011a, 0x5440000e, 0x8fa40018, -0x8f620058, 0x1482000b, 0x8fa40018, 0x8f63004c, -0x8f620054, 0x10620007, 0x3c030800, 0x24637e90, -0x94620008, 0xac700010, 0x34420080, 0xa4620008, -0x8fa40018, 0x3aa2000c, 0x2c420001, 0x4182b, -0x431024, 0x1040000b, 0x3c020800, 0x24427e90, -0x94440008, 0x2403000e, 0xac500010, 0xa055000a, -0xa043000b, 0xac54000c, 0x34840054, 0xa001216, -0xa4440008, 0x3aa20016, 0x2c420001, 0x431024, -0x1040000e, 0x3c020800, 0x24427e90, 0x94440008, -0x90450006, 0x24030010, 0xac500010, 0xa055000a, -0xa043000b, 0xac54000c, 0x3484005d, 0x34a50002, -0xa4440008, 0xa001216, 0xa0450006, 0x3aa20014, -0x2c420001, 0x431024, 0x1040000e, 0x3c020800, -0x24427e90, 0x94440008, 0x24030012, 0xa043000b, -0x90430006, 0xac500010, 0xa055000a, 0xac54000c, -0x3084fffe, 0x3484005c, 0x34630002, 0xa4440008, -0xa0430006, 0x32e20001, 0x10400037, 0x2402000c, -0x12a20016, 0x2aa2000d, 0x10400005, 0x2402000a, -0x12a20008, 0x32e20009, 0xa001251, 0x2102b, -0x2402000e, 0x12a20020, 0x32e20009, 0xa001251, -0x2102b, 0x3c020800, 0x24427e90, 0x94440008, -0x90450006, 0x24030008, 0xac500010, 0xa055000a, -0xa043000b, 0xa00124c, 0x34840013, 0x3c020800, -0x24447e90, 0x94830008, 0x30620004, 0x14400005, -0x90820006, 0x3463001b, 0xa4830008, 0xa00123d, -0x24030016, 0x3463001b, 0xa4830008, 0x24030010, -0xac900010, 0xa095000a, 0xa083000b, 0x34420002, -0xa00124f, 0xa0820006, 0x3c020800, 0x24427e90, -0x94440008, 0x90450006, 0x24030010, 0xac500010, -0xa055000a, 0xa043000b, 0x3484001b, 0x34a50002, -0xa4440008, 0xa0450006, 0x32e20009, 0x2102b, -0x21023, 0x30420007, 0x12200015, 0x34440003, -0x8f820018, 0x27430180, 0x24420001, 0xaf820018, -0x24020800, 0xaf4201b8, 0x24020004, 0xa4640008, -0xa062000b, 0x93420120, 0x2821, 0xa471000e, -0xac740024, 0xac720028, 0x5e1021, 0xa462000c, -0x3c021000, 0xaf4201b8, 0xa00126b, 0x3c040800, -0x24050001, 0x3c040800, 0x24827e90, 0x94420008, -0x10400021, 0xa01021, 0x8f4201b8, 0x440fffe, -0x0, 0x8f420128, 0x24847e90, 0xaf420180, -0x8c830010, 0x240240c2, 0xa7420188, 0xaf430198, -0x90820006, 0xa342018a, 0x24020002, 0xa342018b, -0x94820008, 0xa7420190, 0x9082000a, 0x9083000b, -0x21200, 0x621825, 0xa7430192, 0x8c82000c, -0xaf420194, 0x8c820014, 0xaf4201a4, 0x8c820018, -0xaf4201a8, 0x8c82001c, 0xaf4201ac, 0x3c021000, -0xaf4201b8, 0xa01021, 0x8fbf0044, 0x8fbe0040, -0x8fb7003c, 0x8fb60038, 0x8fb50034, 0x8fb40030, -0x8fb3002c, 0x8fb20028, 0x8fb10024, 0x8fb00020, -0x3e00008, 0x27bd0048, 0x8f420100, 0x3042003e, -0x14400011, 0x24020001, 0xaf400048, 0x8f420100, -0x304207c0, 0x10400005, 0x0, 0xaf40004c, -0xaf400050, 0x3e00008, 0x24020001, 0xaf400054, -0xaf400040, 0x8f420100, 0x30423800, 0x54400001, -0xaf400044, 0x24020001, 0x3e00008, 0x0, -0x27bdffd8, 0xafbf0020, 0xafb3001c, 0xafb20018, -0xafb10014, 0xafb00010, 0x8f510140, 0x8f530148, -0x3c028000, 0x2622024, 0x139402, 0x324300ff, -0x2c620081, 0x10400095, 0x27500180, 0x3c020800, -0x24426848, 0x31880, 0x621821, 0x8c620000, -0x400008, 0x0, 0x8f4201b8, 0x440fffe, -0x24020001, 0xa202000a, 0x24020002, 0xae110000, -0xae000004, 0xa6120008, 0xa202000b, 0xa6130010, -0x8f420144, 0xae000028, 0xa001340, 0xae020024, -0x10800008, 0x3c020800, 0x24030002, 0xa0437e80, -0x24427e80, 0xac510008, 0x8f430144, 0xa001355, -0xac430004, 0x8f4201b8, 0x440fffe, 0x24020002, -0xa001338, 0xae000000, 0x8f4201b8, 0x440fffe, -0x3c040800, 0xae110000, 0x90827e80, 0x1821, -0x10400002, 0x24857e80, 0x8ca30008, 0xae030004, -0xa6120008, 0x90837e80, 0x24020002, 0xa202000b, -0xa6130010, 0x34630001, 0xa203000a, 0x8f420144, -0xae020024, 0x90827e80, 0x10400002, 0x1821, -0x8ca30004, 0x3c021000, 0xae030028, 0xaf4201b8, -0xa001355, 0xa0807e80, 0x8f4201b8, 0x440fffe, -0x24020002, 0xa202000b, 0xa6120008, 0xa6130010, -0x8f420144, 0xa001340, 0xa6020012, 0x3262ffff, -0x1440001c, 0x0, 0x93620005, 0x30420004, -0x14400015, 0x0, 0xe000fc0, 0x2202021, -0x93620005, 0x2202021, 0x34420004, 0xe000fc9, +0xaf440020, 0x27bdffd8, 0xafb3001c, 0xafb00010, +0xafbf0020, 0xafb20018, 0xafb10014, 0x8f510140, +0x8f520148, 0x3c028000, 0x129c02, 0x2422024, +0x326300ff, 0x2402000e, 0x10620086, 0x27500180, +0x2862000f, 0x10400012, 0x28620037, 0x24020006, +0x1062003b, 0x28620007, 0x10400007, 0x24020009, +0x1060001a, 0x24020001, 0x10620025, 0x0, +0xa00106c, 0x0, 0x10620076, 0x2402000b, +0x1062005b, 0x3242ffff, 0xa00106c, 0x0, +0x10400008, 0x24020038, 0x28620035, 0x1040007b, +0x2402001f, 0x10620079, 0x0, 0xa00106c, +0x0, 0x10620075, 0x24020080, 0x10620042, +0x0, 0xa00106c, 0x0, 0x8f4201b8, +0x440fffe, 0x24020001, 0xae110000, 0xae000004, +0xa6130008, 0xa202000a, 0x24020002, 0xa202000b, +0xa6120010, 0x8f420144, 0xa001067, 0xae020024, +0x1080000a, 0x24020002, 0x3c010800, 0xa0227174, +0x3c010800, 0xac31717c, 0x8f420144, 0x3c010800, +0xac227178, 0xa00106e, 0x8fbf0020, 0x8f4201b8, +0x440fffe, 0x24020002, 0xa001051, 0x0, +0x8f4201b8, 0x440fffe, 0x0, 0xae110000, +0x3c020800, 0x90427174, 0x10400003, 0x1821, +0x3c030800, 0x8c63717c, 0xae030004, 0xa6130008, +0x3c020800, 0x90427174, 0x1821, 0x34420001, +0xa202000a, 0x24020002, 0xa202000b, 0xa6120010, +0x8f420144, 0xae020024, 0x3c020800, 0x90427174, +0x10400003, 0x3c021000, 0x3c030800, 0x8c637178, +0xae030028, 0xaf4201b8, 0x3c010800, 0xa0207174, +0xa00106e, 0x8fbf0020, 0x8f4201b8, 0x440fffe, +0x24020002, 0xa202000b, 0xa6130008, 0xa6120010, +0x8f420144, 0xa6020012, 0xa001069, 0x3c021000, +0x14400018, 0x0, 0x93620005, 0x30420004, +0x14400032, 0x0, 0xe000fac, 0x2202021, +0x93620005, 0x2202021, 0x34420004, 0xe000fb5, 0xa3620005, 0x93620005, 0x30420004, 0x14400002, 0x0, 0xd, 0x8f4201b8, 0x440fffe, -0x24020005, 0xa202000b, 0x3c021000, 0xae110000, -0xa001326, 0xaf4201b8, 0xd, 0xa001356, -0x8fbf0020, 0x8f4201b8, 0x440fffe, 0x24020001, -0xa202000a, 0x24020002, 0xae110000, 0xae000004, -0xa6120008, 0xa202000b, 0xa6130010, 0x8f420144, -0xae000028, 0xa001340, 0xae020024, 0x8f4201b8, -0x440fffe, 0x24020002, 0xae000000, 0xae110004, -0xa6120008, 0xa202000a, 0xa202000b, 0xa6130010, -0xae000024, 0x8f420144, 0xae020028, 0x3c021000, -0xaf4201b8, 0xa001356, 0x8fbf0020, 0x8f4201b8, -0x440fffe, 0x24020001, 0xa202000a, 0x24020002, -0xa202000b, 0x3c021000, 0xae110000, 0xae000004, -0xa6120008, 0xa6130010, 0xae000024, 0xae000028, -0xaf4201b8, 0xa001356, 0x8fbf0020, 0xd, +0x24020005, 0xae110000, 0xa202000b, 0x3c021000, +0xaf4201b8, 0x8f4201b8, 0x440fffe, 0x24020002, +0xae000000, 0xae110004, 0xa6130008, 0xa202000a, +0xa202000b, 0xa6120010, 0xae000024, 0x8f420144, +0xae020028, 0xa001069, 0x3c021000, 0x8f4201b8, +0x440fffe, 0x24020001, 0xae110000, 0xae000004, +0xa6130008, 0xa202000a, 0x24020002, 0xa202000b, +0xa6120010, 0xae000024, 0xae000028, 0x3c021000, +0xaf4201b8, 0xa00106e, 0x8fbf0020, 0xd, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, -0x8fb00010, 0x3e00008, 0x27bd0028, 0x27bdffe8, -0xafbf0010, 0xe000c83, 0x0, 0x2021, -0xe000cbc, 0xaf400180, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x8f620044, 0x821023, 0x4400008, -0x0, 0x8f620048, 0x821023, 0x4410004, -0x0, 0x9363003f, 0x3e00008, 0x24020001, -0x3e00008, 0x1021, 0x3e00008, 0x0, -0x97a80012, 0x24020800, 0xaf4201b8, 0x27420180, -0x24030004, 0xa043000b, 0xa444000c, 0xa445000e, -0xac460024, 0xac470028, 0xa4480008, 0x3c021000, -0x3e00008, 0xaf4201b8, 0x308400ff, 0xa3640082, -0x93620005, 0x2403ff80, 0x304200fe, 0x431025, -0xa3620005, 0x93620005, 0x30420002, 0x14400012, -0x27440180, 0x8f4201b8, 0x440fffe, 0x0, -0x8f430128, 0x2402400a, 0xa4820008, 0x24020001, -0xa082000a, 0x24020002, 0xa082000b, 0x3c021000, -0xac800004, 0xa4800010, 0xac800024, 0xac800028, -0xac830000, 0xaf4201b8, 0x3e00008, 0x0, -0xd, 0x3e00008, 0x24020001, 0xd, -0x3e00008, 0x24020010, 0x3e00008, 0x24020001, -0x3e00008, 0x24020001, 0x27bdff88, 0xafbf0074, -0xafbe0070, 0xafb7006c, 0xafb60068, 0xafb50064, -0xafb40060, 0xafb3005c, 0xafb20058, 0xafb10054, -0xafb00050, 0x8f510128, 0x93630000, 0x24020020, -0x14620005, 0x0, 0x0, 0xd, -0x0, 0x240000e7, 0x93620000, 0xafa00048, -0x93630005, 0x38420030, 0x30630001, 0x1060014c, -0x2c5e0001, 0x93420116, 0x93430112, 0x34424000, -0x342b821, 0x34634000, 0x8f420104, 0x343a821, -0x3c030001, 0x431024, 0x10400011, 0x0, -0x8ea3000c, 0x8f620030, 0x146201d0, 0x24020001, -0x8ea30010, 0x8f62002c, 0x146201cc, 0x24020001, -0x9763003a, 0x96e20000, 0x144301c8, 0x24020001, -0x97630038, 0x96e20002, 0x144301c4, 0x24020001, -0x93620000, 0x304300ff, 0x24020020, 0x10620009, -0x24020030, 0x10620007, 0x3c030800, 0x8c6200f4, -0x24420001, 0xe00135c, 0xac6200f4, 0xa0015a5, -0x8fbf0074, 0x3c030800, 0x8c627ec0, 0x40f809, -0x27a40040, 0x409021, 0x2402fffe, 0x2421024, -0x1040000a, 0x32420020, 0x10400004, 0x32420004, -0xe0015b0, 0x2202021, 0x32420004, 0x14400114, -0x24020001, 0xa0015a5, 0x8fbf0074, 0x8f420104, -0x3c030020, 0x431024, 0x10400010, 0x3c030800, -0x24637ec0, 0x8c620008, 0x40f809, 0x24040008, -0x30420020, 0x10400005, 0x0, 0xe0015b0, -0x2202021, 0xa001511, 0x0, 0xe001383, -0x24040008, 0xa001511, 0x0, 0x8f420104, -0x3c030040, 0x431024, 0x1040000c, 0x3c040800, -0x24847ec0, 0x8c820008, 0x40f809, 0x24040004, -0x30420020, 0x1440ffed, 0x0, 0xe001383, -0x24040010, 0xa001511, 0x0, 0x8f640048, -0x8f630040, 0x9742011a, 0x8ef60004, 0x92f3000d, -0x3050ffff, 0x2d02821, 0x24a6ffff, 0x32620004, -0x10400010, 0x832023, 0xe001366, 0x2c02021, -0x10400170, 0x3c030800, 0x24637ec0, 0x8c620008, -0x40f809, 0x24040002, 0x30420020, 0x1440ffd3, -0x0, 0xe001383, 0x24040020, 0xa001511, -0x0, 0x8f620040, 0x56a023, 0x1a800010, -0x214102a, 0x54400007, 0x327300fe, 0x16900009, -0x2d4b021, 0x32620001, 0x14400007, 0x2141023, -0x327300fe, 0x200a021, 0xa0b021, 0xa001452, -0x8021, 0x2141023, 0xa001452, 0x3050ffff, -0xa021, 0x8f620048, 0xc21823, 0x1860000c, -0x70102a, 0x14400006, 0x0, 0x8f620040, -0x16c20136, 0x0, 0x14800134, 0x0, -0x8f660048, 0x2031023, 0x3050ffff, 0x327300f6, -0x92a20001, 0x10400003, 0x32620002, 0xd, -0x32620002, 0x1040000c, 0x3c040800, 0x24847ec0, -0x8c820008, 0x40f809, 0x24040002, 0x30420020, -0x1440ff9e, 0x0, 0xe001373, 0x0, -0xa001511, 0x0, 0x8ee20008, 0xafa20044, -0x32620010, 0x1040012b, 0x32620020, 0x1040000c, -0x3c030800, 0x24637ec0, 0x8c620008, 0x40f809, -0x24040002, 0x30420020, 0x1440ff8c, 0x0, -0xe001383, 0x24040004, 0xa001511, 0x0, -0x8f420104, 0x3c030080, 0x431024, 0x50400007, -0xafb60018, 0xe0013a9, 0x0, 0x24030002, -0x10430102, 0x0, 0xafb60018, 0xafb0001c, -0xafb40020, 0x93420120, 0x8fa30044, 0x34424000, -0x3421021, 0x541021, 0xafa20028, 0x8f620040, -0xafa3003c, 0x3c030800, 0x24637ec0, 0xafa00034, -0xafa00038, 0xafa2002c, 0xafa20030, 0x8c620004, -0x8f750040, 0x8f63004c, 0x27a40018, 0x40f809, -0xafa3004c, 0x409021, 0x24020001, 0x1642004c, -0x24020010, 0x8fa30018, 0x8fa2002c, 0x146200e3, -0x8fa2001c, 0x621021, 0xaf620040, 0x8f620040, -0x3403ffff, 0x431021, 0xaf620048, 0x8f620040, -0x551023, 0x1840000c, 0x97b0001e, 0xe000fc0, -0x2202021, 0x9362007d, 0x24040001, 0xafa40048, -0x2202021, 0x34420001, 0xe000fc9, 0xa362007d, -0xa0014d2, 0x8fa6003c, 0x1600000e, 0x8fa6003c, -0x8fa20020, 0x1040000b, 0x0, 0xe000fc0, -0x2202021, 0x9362007d, 0x24030001, 0x2202021, -0xafa30048, 0x34420004, 0xe000fc9, 0xa362007d, -0x8fa6003c, 0x8f62004c, 0xc21023, 0x1840001c, -0x3c023fff, 0x8f65005c, 0x8f63004c, 0x9764003c, -0x3442ffff, 0xa32823, 0x852821, 0x45102b, -0x10400003, 0x2202021, 0x3c053fff, 0x34a5ffff, -0xc51021, 0xe000fc0, 0xaf62005c, 0x8fa3003c, -0x8f620054, 0x24040001, 0x14620004, 0xafa40048, -0xaf64000c, 0xa0014ef, 0x0, 0x8f420074, -0x244203e8, 0xaf62000c, 0xe000fc9, 0x2202021, -0x8fa2003c, 0xaf62004c, 0xa001503, 0x32620001, -0x1242000c, 0x32420002, 0x14400098, 0x32420020, -0x10400004, 0x32420004, 0xe0015b0, 0x2202021, -0x32420004, 0x14400012, 0x24020001, 0xa0015a5, -0x8fbf0074, 0x32620001, 0x10400012, 0x3c030800, -0x24637ec0, 0x8c620008, 0x40f809, 0x24040001, -0x93630000, 0x24020030, 0x14620009, 0x32420020, -0x10400003, 0x0, 0xe0015b0, 0x2202021, -0xe0015be, 0x3c02021, 0xa0015a4, 0x1021, -0xd, 0x96e2000e, 0x8fa40044, 0x9743011a, -0xf021, 0x14600027, 0x44a821, 0x8fa2004c, -0x14820024, 0x0, 0x8f63004c, 0x8f620054, -0x10620020, 0x0, 0x9362007c, 0x304400ff, -0x24020002, 0x14820012, 0x240200ff, 0x27430180, -0x8f4201b8, 0x440fffe, 0x240240c8, 0xa4620008, -0x24020001, 0xa062000a, 0x24020002, 0xac710000, -0xac600004, 0xa062000b, 0xa4600010, 0x8f62004c, -0xac620024, 0x3c021000, 0xaf4201b8, 0x240200ff, -0x10820008, 0x0, 0xe000fc0, 0x2202021, -0x9362007c, 0x2202021, 0x24420001, 0xe000fc9, -0xa362007c, 0x8f62004c, 0x2a21023, 0x18400022, -0x8fa40048, 0x8ee40004, 0x8f620018, 0x821023, -0x1c400010, 0x0, 0x8f620018, 0x5482001a, -0x8fa40048, 0x8ee30008, 0x8f62001c, 0x621023, -0x1c400008, 0x0, 0x8f62001c, 0x54620012, -0x8fa40048, 0x8f620058, 0x2a21023, 0x5840000e, -0x8fa40048, 0x8f620058, 0xaf640018, 0x8ee30008, -0xaf63001c, 0xaf750058, 0x8f630050, 0x50430001, -0x241e0080, 0x24020010, 0x12420002, 0x24030001, -0xafa30048, 0x8fa40048, 0x1080000f, 0x32620008, -0x3c036000, 0x8c624ff8, 0x401021, 0x442fffd, -0x3c036000, 0xac714fc0, 0x0, 0x3c020200, -0xac624fc4, 0x0, 0x3c021000, 0xac624ff8, -0x0, 0x32620008, 0x10400003, 0x37de0003, -0x37c20004, 0x305effff, 0x3a420010, 0x2c420001, -0x10182b, 0x431024, 0x1040000a, 0x32420008, -0x93440120, 0x8fa60044, 0x2002821, 0x2c03821, -0xafbe0010, 0x942021, 0xe001375, 0x3084ffff, -0x32420008, 0x10400019, 0x2e020001, 0xe001383, -0x2021, 0xa0015a4, 0x2e020001, 0xe000fc0, -0x2202021, 0x9362007d, 0x2202021, 0x34420004, -0xe000fc9, 0xa362007d, 0x3c046000, 0x8c824ff8, -0x440fffe, 0x24020001, 0x3c030200, 0xac914fc0, -0xac834fc4, 0x3c031000, 0xac834ff8, 0xa0015a5, -0x8fbf0074, 0xaf400044, 0x24020001, 0x8fbf0074, -0x8fbe0070, 0x8fb7006c, 0x8fb60068, 0x8fb50064, -0x8fb40060, 0x8fb3005c, 0x8fb20058, 0x8fb10054, -0x8fb00050, 0x3e00008, 0x27bd0078, 0x27bdffe8, -0xafb00010, 0xafbf0014, 0xe000fc0, 0x808021, -0x93620005, 0x2002021, 0x304200fe, 0xe000fc9, -0xa3620005, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0xafb00010, 0xafbf0014, -0xe000c83, 0x808021, 0x24020180, 0x2002021, -0xe000cbc, 0xaf420180, 0x8fbf0014, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x3c020008, 0x3421021, -0x3c030800, 0xaf82001c, 0x3c020800, 0x24425770, -0xac627ec0, 0x24637ec0, 0x3c020800, 0x24425790, -0xac620004, 0x3c020800, 0x24425870, 0xac620008, -0xa3800020, 0x3e00008, 0x0, 0x8f82001c, -0x904401e6, 0x24030001, 0x14830002, 0x24020024, -0x24020001, 0x3e00008, 0x0, 0x27bdffd0, -0xafb00020, 0x808021, 0xafbf002c, 0xafb20028, -0xafb10024, 0x8e030000, 0x8e020014, 0x24120008, -0x14620027, 0x24110001, 0x8e020004, 0x10400022, -0x0, 0x8f420104, 0x3c034000, 0x431024, -0x14400006, 0x2002021, 0x24040014, 0xe00197b, -0x2002821, 0xa001616, 0x24020024, 0x27a50018, -0xe00164f, 0x27a6001a, 0x54400001, 0x24120009, -0x2002021, 0x2402821, 0x97a7001a, 0x97a30018, -0x3021, 0x27a2001c, 0xafa20014, 0xe001676, -0xafa30010, 0x1040000a, 0x24020011, 0x8fa4001c, -0x10820007, 0x24110002, 0xe00197b, 0x2002821, -0xa001615, 0x24110024, 0xe001969, 0x2002021, -0x2201021, 0x8fbf002c, 0x8fb20028, 0x8fb10024, -0x8fb00020, 0x3e00008, 0x27bd0030, 0x8f83001c, -0x27bdffe8, 0xafbf0014, 0xafb00010, 0x906201e6, -0x24050002, 0x10450027, 0x24100001, 0xa06501e6, -0x8f83001c, 0x24100024, 0x24020004, 0xa0620197, -0x10850012, 0x2c820003, 0x10400005, 0x24020001, -0x1082000a, 0x0, 0xa001648, 0x0, -0x24020004, 0x1082000d, 0x24020008, 0x1082000f, -0x0, 0xa001648, 0x0, 0xe001987, -0x24040018, 0xa00164b, 0x2001021, 0xe001987, -0x24040017, 0xa00164b, 0x2001021, 0xe001987, -0x24040016, 0xa00164b, 0x2001021, 0xe001987, -0x24040015, 0xa00164b, 0x2001021, 0xe001987, -0x24040017, 0x2001021, 0x8fbf0014, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x8f83001c, 0x3821, -0x8c820000, 0x8c630224, 0x4021, 0x431023, -0x304301ff, 0x14600006, 0x94840006, 0x24030200, -0x24070004, 0x4821, 0xa001660, 0x24080001, -0x24020200, 0x431823, 0x3069ffff, 0x64102b, -0x1040000e, 0x832023, 0x308201ff, 0x10400007, -0x24080001, 0x24e30004, 0x41242, 0x21080, -0x621821, 0xa001670, 0x3067ffff, 0x41242, -0x21080, 0xe21021, 0x3047ffff, 0x51000003, -0xa4a00000, 0xa4a70000, 0xa4c90000, 0x3e00008, -0x1001021, 0x27bdffd8, 0x8faa003c, 0x97ac003a, -0x30a9ffff, 0x30e8ffff, 0xafbf0020, 0x8c870010, -0x31220001, 0x1040000b, 0x948b0006, 0x10c00004, -0xe81021, 0x8c420000, 0x14480018, 0x24020003, -0x55000005, 0x94e60000, 0x94e60004, 0xa00168c, -0x94e50006, 0x94e60000, 0x94e50002, 0x24c20002, -0x30430003, 0x10600004, 0x24020004, 0x431023, -0xa001694, 0x304300ff, 0x1821, 0x25820006, -0x1621023, 0x431023, 0x14c20004, 0x24020002, -0x30a20300, 0x10400004, 0x2402000b, 0xad420000, -0xa0016aa, 0x2402ffff, 0x30a28000, 0x14400006, -0xafa90010, 0xafa80014, 0xe0017cf, 0xafaa0018, -0xa0016ab, 0x8fbf0020, 0xafa80014, 0xe0016ad, -0xafaa0018, 0x8fbf0020, 0x3e00008, 0x27bd0028, -0x27bdffa0, 0x97af0072, 0x8fb80078, 0x97b90076, -0xafb40058, 0x80a021, 0xafb1004c, 0x30b1ffff, -0xafb30054, 0x30d3ffff, 0x322200c0, 0xafbf005c, -0xafb20050, 0x10400003, 0xafb00048, 0xa001769, -0x2402000c, 0x3223000f, 0x10600005, 0x24020002, -0x10620005, 0x24020004, 0xa00176a, 0xaf020000, -0xa0016c8, 0x24120005, 0x2412000b, 0x31e80001, -0x3102ffff, 0x10400005, 0x2f220005, 0x50400004, -0x8cee0004, 0xa0016d1, 0x8cee0008, 0x8cee0004, -0xe3602, 0x3c0400ff, 0x3484ffff, 0x3c030080, -0x1c31024, 0x10400027, 0x1c48024, 0x2031023, -0x2405ff80, 0x451024, 0xaf420028, 0x31c2007f, -0x3c03000c, 0x431021, 0x3421021, 0x8c430000, -0x3c020100, 0x621024, 0x54400003, 0x3c020800, -0xa001769, 0x24020006, 0x621024, 0x54400003, -0x641024, 0xa001769, 0x24020008, 0xafa20040, -0x8fa20040, 0x451024, 0xaf42002c, 0x8fa20040, -0x3c03000e, 0x3042007f, 0x431021, 0x3421021, -0xafa20038, 0x8f82001c, 0x8fa30038, 0x944401e4, -0x8c620014, 0x10440016, 0x24020009, 0xa00176a, -0xaf020000, 0x2402ff80, 0x2021024, 0xaf42002c, -0x31c2007f, 0x3c03000e, 0x431021, 0x3421021, -0xafa20038, 0x8fa20038, 0x9442001c, 0x24030090, -0x3042c890, 0x1443005e, 0x24020006, 0x8fa20038, -0x8c430014, 0x8f420128, 0x14620059, 0x24020009, -0x8fa20038, 0x9442001c, 0x30420200, 0x10400054, -0x24020008, 0x8fa20038, 0x9042001f, 0x14460050, -0x24020006, 0x3102ffff, 0x1040001a, 0x24020004, -0x1322000d, 0x2b220005, 0x10400005, 0x24020008, -0x13200009, 0x0, 0xa001736, 0x0, -0x13220005, 0x2402000c, 0x53220006, 0x8ce30008, -0xa001736, 0x0, 0x8cec000c, 0xa001738, -0x8ced0010, 0x8ce50010, 0x1021, 0x36000, -0x6821, 0x2021, 0x1846025, 0xa001738, -0x1a56825, 0x8cec0008, 0x8ced000c, 0x8fa20038, -0x8c450010, 0x2662fff2, 0x3046ffff, 0x2021, -0x184102b, 0x14400006, 0x0, 0x148c0028, -0x24020007, 0x1a5102b, 0x10400025, 0x24020007, -0x10c00013, 0xc01821, 0x1021, 0x1a34821, -0x123202b, 0x1824021, 0x1044021, 0x1001021, -0x1201821, 0x2469ffff, 0x2d24ffff, 0x2448ffff, -0x1044021, 0x10c102b, 0x14400015, 0x2402000a, -0x15880003, 0x12d102b, 0x14400011, 0x2402000a, -0x8fa40038, 0xc01821, 0x1021, 0x1a35821, -0x8c890010, 0x163202b, 0x1825021, 0x1445021, -0x4021, 0x10a102b, 0x14400005, 0x24020007, -0x15480006, 0x12b102b, 0x10400004, 0x24020007, -0xaf020000, 0xa0017c7, 0x2402ffff, 0x8f83001c, -0x90620219, 0x30420008, 0x10400006, 0x32224000, -0x90620219, 0x35ef0002, 0x304200f7, 0xa0620219, -0x32224000, 0x10400028, 0x2402000b, 0x16420026, -0x35ef0010, 0x3c020080, 0x1c21024, 0x14400022, -0x0, 0x8fa20038, 0x9442001c, 0x30422000, -0x1040001d, 0x3c039000, 0x34630007, 0x8f450020, -0x2402ff80, 0x2021024, 0x431025, 0xaf420020, -0x8f420020, 0x440fffe, 0x3202007f, 0x3c030008, -0x431021, 0x3421021, 0xafa2003c, 0x8fa4003c, -0x9482001c, 0x3c038000, 0x34630007, 0x34420800, -0xa482001c, 0x2402ff80, 0x2021024, 0x431025, -0xaf420020, 0x8f420020, 0x440fffe, 0x0, -0xaf450020, 0x35ef0020, 0x8fa30038, 0x8fa40038, -0x93460120, 0x8fa20038, 0x9445001a, 0x9463001c, -0x9484001c, 0x8fa20038, 0xafa50010, 0x8c450004, -0x24020010, 0x3063000f, 0xafa20018, 0x24020100, -0x621004, 0x8fa30038, 0x2442ffff, 0xafb2001c, -0xa22824, 0xafa50014, 0x8c620008, 0x8fa30038, -0xafa20020, 0x8e820024, 0x8c63000c, 0x3203821, -0x3084000f, 0xafac0030, 0xafad0034, 0xafa20028, -0xafa30024, 0x9685000a, 0x42200, 0x1e42025, -0xa62821, 0x26660002, 0x30a5ffff, 0xe001943, -0x30c6ffff, 0x1021, 0x8fbf005c, 0x8fb40058, -0x8fb30054, 0x8fb20050, 0x8fb1004c, 0x8fb00048, -0x3e00008, 0x27bd0060, 0x27bdffd0, 0x5821, -0x806021, 0xe06821, 0x8faa0048, 0x97a80042, -0x97a90046, 0x30a5ffff, 0x30c7ffff, 0x31020001, -0x10400006, 0xafbf0028, 0x2d220009, 0x50400004, -0x8da30008, 0xa0017e1, 0x8da3000c, 0x8da30008, -0x2c620003, 0x54400003, 0x30a200c0, 0xa0017e8, -0x2402000d, 0x10400004, 0x2402000c, 0xad420000, -0xa001818, 0x2402ffff, 0x24020001, 0x1062001b, -0x30a2000f, 0x10600005, 0x24020002, 0x10620023, -0x1601021, 0xa001819, 0x8fbf0028, 0x30a6000f, -0x28c20007, 0x1040000f, 0x28c20003, 0x1440001c, -0x24020005, 0x8d820000, 0x8d830024, 0x1802021, -0xafad0010, 0xafa8001c, 0xafa90020, 0xafaa0024, -0xafa20014, 0xe00181b, 0xafa30018, 0xa001817, -0x405821, 0xa001815, 0x24020005, 0x1443000c, -0x24020005, 0x1802021, 0xafa80010, 0xafa90014, -0xafaa0018, 0x8c860000, 0x8c870024, 0xe0018c4, -0x1a02821, 0xa001817, 0x405821, 0x240200ff, -0xad420000, 0x240bffff, 0x1601021, 0x8fbf0028, -0x3e00008, 0x27bd0030, 0x27bdffc0, 0x8f8c001c, -0x97ae005e, 0xafb00038, 0x808021, 0x8fab0050, -0x8faf0064, 0x30a5ffff, 0x30c6ffff, 0xafbf003c, -0x9183018f, 0x9588000a, 0x95890182, 0x918a018c, -0x9182018d, 0x30f9ffff, 0x97b80062, 0x304d00ff, -0x31902, 0x24020001, 0x621004, 0x3108ffff, -0x15aa0005, 0x3129ffff, 0x15280031, 0x24020011, -0xa001865, 0x24020080, 0x2442ffff, 0x1a26824, -0x31c20001, 0x1040000f, 0x2f020011, 0x1040000d, -0x3c020800, 0x24426a50, 0x181880, 0x621821, -0x8c620000, 0x400008, 0x0, 0x8d640010, -0xa00184c, 0x8d6b0014, 0x8d64000c, 0xa00184c, -0x8d6b0014, 0x8d64000c, 0x8d6b0010, 0x8d820228, -0x2723ffee, 0x24420001, 0x10820003, 0x3063ffff, -0xa001865, 0x2402000f, 0xd10c0, 0x4d1023, -0x21080, 0x244201a0, 0x1825021, 0x8d440014, -0x164102b, 0x10400009, 0x3821, 0x1631821, -0x2462ffff, 0x4b102b, 0x14400005, 0x24020013, -0x83102b, 0x50400005, 0x30a24000, 0x24020012, -0xade20000, 0xa0018c0, 0x2402ffff, 0x50400028, -0x24050001, 0xa5430012, 0x8fa20054, 0xad420018, -0x24020005, 0x10c2000f, 0x28c20006, 0x10400005, -0x24020004, 0x10c20008, 0x24050001, 0xa001884, -0x91420007, 0x24020006, 0x10c20009, 0x24050001, -0xa001884, 0x91420007, 0x24070040, 0xa001883, -0x24050003, 0x24070020, 0xa001883, 0x24050002, -0x24070060, 0x24050004, 0x91420007, 0xe21025, -0xa1420007, 0x31c20008, 0x50400009, 0x35ce0010, -0x8f82001c, 0x8c430228, 0x24630001, 0xac430228, -0x9043018d, 0x24630001, 0xa043018d, 0x35ce0010, -0x8f83001c, 0x90620219, 0x30420008, 0x50400006, -0x95420010, 0x90620219, 0x35ce0002, 0x304200f7, -0xa0620219, 0x95420010, 0x91440007, 0x93490120, -0xafa20010, 0x9543000a, 0x24020014, 0xafa20018, -0xafa5001c, 0xafa30014, 0x8d420000, 0x1603821, -0xafa20020, 0x8d480004, 0x8e050024, 0x3021, -0x3084000f, 0xafa50028, 0x2405ff00, 0x1054024, -0xafa80024, 0x8d43000c, 0x42200, 0x1c42025, -0x1021, 0xe33821, 0xe3282b, 0xc23021, -0xc53021, 0xafa60030, 0xafa70034, 0x9605000a, -0x27260002, 0x30c6ffff, 0x3003821, 0xa92821, -0xe001943, 0x30a5ffff, 0x1021, 0x8fbf003c, -0x8fb00038, 0x3e00008, 0x27bd0040, 0x27bdffc0, -0x97a90052, 0x805021, 0x8f84001c, 0x8fa60058, -0xafbf0038, 0x908301e7, 0x24020001, 0x14620003, -0x97a70056, 0xa00190e, 0x2402000e, 0x31220001, -0x10400037, 0x248801fc, 0x2ce2002d, 0x10400034, -0x2ce2000d, 0x50400002, 0x8ca3000c, 0x8ca30010, -0x8c82022c, 0x24420001, 0x14620032, 0x24020010, -0x2ce20015, 0x1040000c, 0x3021, 0x1001821, -0x24a50018, 0x8ca20000, 0x24a50004, 0x24c60001, -0xac620000, 0x2cc20007, 0x1440fffa, 0x24630004, -0xa00191b, 0x0, 0x24e2ffec, 0x23883, -0x10e0000a, 0x24a50014, 0x1002021, 0xa01821, -0x8c620000, 0x24630004, 0x24c60001, 0xac820000, -0xc7102b, 0x1440fffa, 0x24840004, 0xc01821, -0x2c620007, 0x10400020, 0x24c60001, 0x31080, -0x482021, 0x61080, 0x452821, 0x8ca20000, -0x24a50004, 0x24630001, 0xac820000, 0x2c620007, -0x1440fffa, 0x24840004, 0xa00191b, 0x0, -0x8c82022c, 0x8ca3000c, 0x24420001, 0x10620004, -0x24020010, 0xacc20000, 0xa001940, 0x2402ffff, -0x3021, 0x1001821, 0x24a50014, 0x8ca20000, -0x24a50004, 0x24c60001, 0xac620000, 0x2cc20007, -0x1440fffa, 0x24630004, 0x8f83001c, 0x8c62022c, -0x24420001, 0xac62022c, 0x24020001, 0xa06201e7, -0x8f83001c, 0x90620219, 0x30420008, 0x10400005, -0x0, 0x90620219, 0x35290002, 0x304200f7, -0xa0620219, 0x93440120, 0x9545000a, 0x8d460024, -0x1021, 0x1821, 0xafa20030, 0xafa30034, -0x24020006, 0x3821, 0xafa00010, 0xafa00014, -0xafa00018, 0xafa2001c, 0xafa00020, 0xafa00024, -0xa42821, 0x1202021, 0x30a5ffff, 0xafa60028, -0xe001943, 0x3021, 0x1021, 0x8fbf0038, -0x3e00008, 0x27bd0040, 0x27bdfff8, 0x8fad001c, -0x8fae0028, 0x8faf002c, 0xafb00000, 0x8fb00030, -0x8fa80038, 0x8fa9003c, 0x97aa001a, 0x97ac0022, -0x93830020, 0x97ab0026, 0x24620001, 0xa3820020, -0x27420180, 0xa043000a, 0x2403000a, 0xa4440008, -0xa043000b, 0xa445000c, 0xa446000e, 0xa4470010, -0xa44a0012, 0xac4d0014, 0xa44c0018, 0xa44b001a, -0xac4e001c, 0xac4f0020, 0xac500024, 0xac480028, -0xac49002c, 0x8f430128, 0x8fb00000, 0xac430000, -0x3c021000, 0xaf4201b8, 0x3e00008, 0x27bd0008, -0x8f450128, 0x27430180, 0x24025000, 0xa4620008, -0xac650000, 0x93850020, 0x24a20001, 0xa3820020, -0x24020002, 0xa062000b, 0x2402000c, 0xa065000a, -0xa462001a, 0x8c820024, 0xac620024, 0x3c021000, -0x3e00008, 0xaf4201b8, 0x8f83001c, 0x27bdffe8, -0x24020002, 0xafbf0010, 0xa06201e6, 0x8f83001c, -0x24020004, 0xe001987, 0xa0620197, 0x8fbf0010, -0x3e00008, 0x27bd0018, 0x8f450128, 0x27430180, -0x24025085, 0xa4620008, 0x24020002, 0xa062000b, -0x3c021000, 0xac640028, 0xa460001a, 0xac650000, -0x3e00008, 0xaf4201b8, 0x27bdffe0, 0xafbf0018, -0xafb10014, 0xafb00010, 0x8f460148, 0x8f470144, -0x62402, 0x308500ff, 0x8f4201b8, 0x440fffe, -0x30a3003f, 0x2402000c, 0x14620010, 0x0, -0x8f420140, 0x27440180, 0xac820000, 0x8f430144, -0x2402000e, 0xa082000b, 0x30a20040, 0xa4860010, -0x10400004, 0xac830004, 0x24020001, 0xa0019ec, -0xa082000a, 0xa0019ec, 0xa080000a, 0x8f420140, -0x27430180, 0xaf820024, 0xac620000, 0x61202, -0x304200ff, 0xac620004, 0x24020002, 0xa062000b, -0x30c200ff, 0xac620024, 0x24020007, 0xa4640008, -0xac670028, 0x10a20018, 0xa460001a, 0x28a20008, -0x1040000a, 0x2402000f, 0x10a00027, 0x28a20004, -0x14400012, 0x24020001, 0x24020005, 0x10a2000f, -0x24020001, 0xa0019ec, 0xa060000a, 0x10a20011, -0x28a2000f, 0x5440001d, 0xa060000a, 0x28a20085, -0x10400019, 0x28a20083, 0x54400018, 0xa060000a, -0xa0019da, 0x3c020008, 0x24020001, 0xa0019ec, -0xa062000a, 0x3428021, 0x920201e6, 0xa0019e3, -0x24110002, 0x24110002, 0x10f1000c, 0x3c020008, -0x3428021, 0x920201e6, 0x10510009, 0x8fbf0018, -0x8f440140, 0xe0015b0, 0x0, 0xa21101e6, -0xa0019ed, 0x8fbf0018, 0xa060000a, 0x8fbf0018, -0x8fb10014, 0x8fb00010, 0x3c021000, 0xaf4201b8, -0x3e00008, 0x27bd0020, 0x10c00007, 0x0, -0x8ca20000, 0x24c6ffff, 0x24a50004, 0xac820000, -0x14c0fffb, 0x24840004, 0x3e00008, 0x0, -0xa001a04, 0xa01021, 0xac860000, 0x0, -0x0, 0x24840004, 0xa01021, 0x1440fffa, -0x24a5ffff, 0x3e00008, 0x0, 0x0 }; -static u32 bce_RXP_b06FwData[(0x0/4) + 1] = { 0x0 }; -static u32 bce_RXP_b06FwRodata[(0x278/4) + 1] = { -0x80040ec, 0x8003fec, 0x8004090, -0x80040a8, 0x80040c0, 0x80040e0, 0x80040ec, -0x80040ec, 0x8003ff4, 0x0, 0x8004b1c, -0x8004b54, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004b8c, 0x8004d50, 0x8004c98, -0x8004cd0, 0x8004d50, 0x8004c20, 0x8004d50, -0x8004d50, 0x8004cd0, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d10, 0x8004d50, 0x8004d10, 0x8004c98, -0x8004d50, 0x8004d50, 0x8004d10, 0x8004d10, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004d50, -0x8004d50, 0x8004d50, 0x8004d50, 0x8004bfc, -0x0, 0x8006110, 0x8006128, 0x8006128, -0x8006128, 0x8006110, 0x8006128, 0x8006128, -0x8006128, 0x8006110, 0x8006128, 0x8006128, -0x8006128, 0x8006110, 0x8006128, 0x8006128, -0x8006128, 0x800611c, 0x0, 0x0 }; -static u32 bce_RXP_b06FwBss[(0x13dc/4) + 1] = { 0x0 }; -static u32 bce_RXP_b06FwSbss[(0x28/4) + 1] = { 0x0 }; -/* static u32 bce_RXP_b06FwSdata[(0x0/4) + 1] = { 0x0 }; */ +0x8fb00010, 0x3e00008, 0x27bd0028, 0x3084ffff, +0x30a5ffff, 0x1821, 0x10800007, 0x0, +0x30820001, 0x10400002, 0x42042, 0x651821, +0xa001077, 0x52840, 0x3e00008, 0x601021, +0x10c00006, 0x24c6ffff, 0x8ca20000, 0x24a50004, +0xac820000, 0xa001081, 0x24840004, 0x3e00008, +0x0, 0x10a00008, 0x24a3ffff, 0xac860000, +0x0, 0x0, 0x2402ffff, 0x2463ffff, +0x1462fffa, 0x24840004, 0x3e00008, 0x0, +0x27bdffe0, 0xafb20018, 0xafb10014, 0xafb00010, +0xafbf001c, 0x9482000c, 0xa08821, 0x24900014, +0x21302, 0x21080, 0x829021, 0x3021, +0xa02021, 0xe00108a, 0x24050005, 0x212102b, +0x10400057, 0x1021, 0x92030000, 0x2c620009, +0x50400051, 0x92020001, 0x31080, 0x3c030800, +0x246370b4, 0x431021, 0x8c420000, 0x400008, +0x0, 0x92030001, 0x2402000c, 0x14620048, +0x24020001, 0x2501023, 0x2c42000a, 0x14400036, +0x26100002, 0x8e220000, 0x34420100, 0xae220000, +0x92020000, 0x92030001, 0x92040002, 0x92050003, +0x31c00, 0x21600, 0x431025, 0x42200, +0x441025, 0x451025, 0x26100004, 0xae220004, +0x92020000, 0x92030001, 0x92040002, 0x92050003, +0x21600, 0x31c00, 0x431025, 0x42200, +0x441025, 0x451025, 0x26100004, 0xa0010a4, +0xae220008, 0x92030001, 0x24020004, 0x14620016, +0x26100002, 0x92020000, 0x92040001, 0x8e230000, +0x21200, 0x441025, 0x34630004, 0x26100002, +0xae22000c, 0xa0010a4, 0xae230000, 0x92030001, +0x24020003, 0x14620008, 0x26100002, 0x8e220000, +0x92030000, 0x26100001, 0x34420008, 0xa2230010, +0xa0010a4, 0xae220000, 0xa0010fd, 0x24020001, +0x92030001, 0x24020002, 0x10620002, 0x26040002, +0x2402021, 0xa0010a4, 0x808021, 0xa0010a4, +0x26100001, 0x92020001, 0xa0010a4, 0x2028021, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0xe000fac, 0x808021, 0x9362007d, +0x2002021, 0x34420020, 0xe000fb5, 0xa362007d, +0x2002021, 0x8fbf0014, 0x8fb00010, 0xa001a30, +0x27bd0018, 0x308300ff, 0x30a500ff, 0x30c600ff, +0x27470180, 0x8f4201b8, 0x440fffe, 0x0, +0x8f420128, 0x34634000, 0xace20000, 0x24020001, +0xace00004, 0xa4e30008, 0xa0e2000a, 0x24020002, +0xa0e2000b, 0x3c021000, 0xa4e50010, 0xace00024, +0xace00028, 0xa4e60012, 0x3e00008, 0xaf4201b8, +0x27bdffe8, 0xafbf0010, 0x9362003f, 0x24030012, +0x304200ff, 0x1043000d, 0x803021, 0x8f620044, +0x821023, 0x440000a, 0x8fbf0010, 0x8f620048, +0x24040039, 0x2821, 0xc21023, 0x4410004, +0x24060012, 0xe001112, 0x0, 0x8fbf0010, +0x24020001, 0x3e00008, 0x27bd0018, 0x27bdffc8, +0xafb1002c, 0xa08821, 0xafb20030, 0x27a50010, +0x809021, 0x2202021, 0xafbf0034, 0xe001095, +0xafb00028, 0x10400009, 0x2402021, 0x8e220008, +0xaf620084, 0xe001103, 0xaf600040, 0x24040038, +0x2405008d, 0xa0011bf, 0x24060012, 0x93620034, +0x93630037, 0x8f640084, 0x304200ff, 0x306300ff, +0x432821, 0xa4202b, 0x1080000b, 0x0, +0x9763003c, 0x8f620084, 0x3063ffff, 0x451023, +0x62182b, 0x14600004, 0x0, 0x8f620084, +0xa001169, 0x458023, 0x9762003c, 0x3050ffff, +0x8fa30010, 0x30620004, 0x50400003, 0x2e020218, +0x8fa2001c, 0x202102b, 0x14400005, 0x2002021, +0x30620004, 0x10400002, 0x24040218, 0x8fa4001c, +0x2c820080, 0x10400002, 0x808021, 0x24100080, +0xe000fac, 0x2402021, 0x24020001, 0xaf62000c, +0x9362003e, 0x102040, 0x3042007f, 0xa362003e, +0x8e220004, 0x24420001, 0xaf620040, 0xa770003c, +0x8f620050, 0x9623000e, 0x431021, 0xaf620058, +0x8f620050, 0x441021, 0xaf62005c, 0x8e220004, +0xaf620018, 0x8e220008, 0xaf62001c, 0x8fa20010, +0x30420008, 0x5440000a, 0x93a20020, 0xa3600036, +0x93620036, 0x2403ffdf, 0xa3620035, 0x9362003e, +0x431024, 0xa362003e, 0xa00119f, 0x8e220008, +0xa3620035, 0x8e220008, 0xaf62004c, 0x8f620024, +0x8f630040, 0x431021, 0xaf620048, 0x93620000, +0x24030050, 0x304200ff, 0x14430012, 0x2403ff80, +0x3c020800, 0x8c4231a0, 0x2421021, 0x431024, +0xaf420028, 0x3c020800, 0x8c4231a0, 0x8e240008, +0x3c03000c, 0x2421021, 0x3042007f, 0x3421021, +0x431021, 0xac4400d8, 0x8e230008, 0xaf820028, +0xac4300dc, 0xe000fb5, 0x2402021, 0x24040038, +0x2821, 0x2406000a, 0xe001112, 0x0, +0x8fbf0034, 0x8fb20030, 0x8fb1002c, 0x8fb00028, +0x24020001, 0x3e00008, 0x27bd0038, 0x27bdffe8, +0xafbf0010, 0x90c7000d, 0xc02821, 0x30e60010, +0x10c0000a, 0x30e20004, 0x8ca30008, 0x8f620054, +0x10620006, 0x30e20004, 0x14400017, 0x8fbf0010, +0x2021, 0xa001a47, 0x27bd0018, 0x1040000d, +0x30e30012, 0x10c00010, 0x8fbf0010, 0x8ca30008, +0x8f620054, 0x1462000d, 0x24020001, 0x24040038, +0x2405008d, 0xe001112, 0x24060012, 0xa0011eb, +0x8fbf0010, 0x24020012, 0x14620003, 0x8fbf0010, +0xa001140, 0x27bd0018, 0x24020001, 0x3e00008, +0x27bd0018, 0x27bdfff8, 0x27420180, 0xafa20000, +0x308a00ff, 0x8f4201b8, 0x440fffe, 0x0, +0x8f460128, 0x3c020800, 0x8c4231a0, 0x2403ff80, +0xaf860050, 0xc21021, 0x431024, 0xaf420024, +0x3c020800, 0x8c4231a0, 0x8fa90000, 0x8fa80000, +0xc21021, 0x3042007f, 0x3421821, 0x3c02000a, +0x621821, 0x946400d4, 0x8fa70000, 0x8fa50000, +0x24020002, 0xaf830028, 0xa0a2000b, 0x8fa30000, +0x35426000, 0x3084ffff, 0xa4e20008, 0x3c021000, +0xad260000, 0xad040004, 0xac600024, 0x27bd0008, +0xaf4201b8, 0x3e00008, 0x24020001, 0x8c820004, +0x8f830028, 0x451023, 0xac820004, 0x90620063, +0x3042007f, 0xa0620063, 0x8c820020, 0x93830030, +0x8f850028, 0x34420002, 0xaf830044, 0xa7800042, +0xac820020, 0xa4a000e4, 0x90a20063, 0x2403ffbf, +0x431024, 0x3e00008, 0xa0a20063, 0x27430180, +0x8f4201b8, 0x440fffe, 0x8f820050, 0xac620000, +0x8f420124, 0xac620004, 0x24026083, 0xa4620008, +0x24020002, 0xa062000b, 0x3c021000, 0x3e00008, +0xaf4201b8, 0x8f880044, 0x93820030, 0x8f830028, +0x3c070800, 0x24e7758c, 0x481023, 0x304200ff, +0x304900fc, 0x24650088, 0x8f860048, 0x304a0003, +0x11200009, 0x2021, 0x24820004, 0x8ca30000, +0x304400ff, 0x89102a, 0xace30000, 0x24a50004, +0x1440fff9, 0x24e70004, 0x11400009, 0x2021, +0x24820001, 0x90a30000, 0x304400ff, 0x8a102b, +0xa0e30000, 0x24a50001, 0x1440fff9, 0x24e70001, +0x30c20003, 0x14400004, 0x8f850044, 0x31020003, +0x1040000d, 0x0, 0x10a00009, 0x2021, +0x24820001, 0x90c30000, 0x304400ff, 0x85102b, +0xa0e30000, 0x24c60001, 0x1440fff9, 0x24e70001, +0x3e00008, 0x0, 0x1100fffd, 0x2021, +0x24820004, 0x8cc30000, 0x304400ff, 0x88102b, +0xace30000, 0x24c60004, 0x1440fff9, 0x24e70004, +0x3e00008, 0x0, 0x8f830044, 0x93820030, +0x30c600ff, 0x30a500ff, 0x431023, 0x304300ff, +0x8f820028, 0x803821, 0x431021, 0x14c00002, +0x24480088, 0x833821, 0x30e20003, 0x14400005, +0x30a20003, 0x14400003, 0x30620003, 0x1040000d, +0x0, 0x10a00009, 0x2021, 0x24820001, +0x90e30000, 0x304400ff, 0x85102b, 0xa1030000, +0x24e70001, 0x1440fff9, 0x25080001, 0x3e00008, +0x0, 0x10a0fffd, 0x2021, 0x24820004, +0x8ce30000, 0x304400ff, 0x85102b, 0xad030000, +0x24e70004, 0x1440fff9, 0x25080004, 0x3e00008, +0x0, 0x27bdfff8, 0x2402ffff, 0xafa20000, +0x803821, 0x2405002f, 0x3c090800, 0x2529718c, +0x240800ff, 0x2406ffff, 0x90e20000, 0x24a3ffff, +0x62202, 0xc21026, 0x304200ff, 0x21080, +0x491021, 0x8c420000, 0x306500ff, 0x24e70001, +0x14a8fff5, 0x823026, 0x61027, 0xafa20004, +0xafa20000, 0x2821, 0x27a60004, 0xc51023, +0x90440003, 0x24a20001, 0xbd1821, 0x304500ff, +0x2ca20004, 0x1440fff9, 0xa0640000, 0x8fa20000, +0x3e00008, 0x27bd0008, 0x804821, 0x30aaffff, +0x30c600ff, 0x30e7ffff, 0x27480180, 0x8f4201b8, +0x440fffe, 0x8f820050, 0xad020000, 0x8f420124, +0xad020004, 0x8d220020, 0xa5070008, 0xa102000a, +0x24020016, 0xa102000b, 0x93430120, 0x8d220008, +0x8d240004, 0x306300ff, 0x431021, 0x97830042, +0x441021, 0x8d250024, 0x431023, 0x3c030800, +0x8c6331a0, 0x8f840028, 0xa502000c, 0x246300e8, +0x2402ffff, 0xa50a000e, 0xa5030010, 0xa5060012, +0xad050018, 0xad020024, 0x94820114, 0x2403fff7, +0x3042ffff, 0xad020028, 0x8c820118, 0xad02002c, +0x3c021000, 0xad000030, 0xaf4201b8, 0x8d220020, +0x431024, 0x3e00008, 0xad220020, 0x8f820028, +0x30e7ffff, 0x804821, 0x904200d3, 0x30a5ffff, +0x30c600ff, 0x21100, 0x30420f00, 0xe23825, +0x27480180, 0x8f4201b8, 0x440fffe, 0x8f820050, +0xad020000, 0x8f420124, 0xad020004, 0x8d220020, +0xa5070008, 0xa102000a, 0x24020017, 0xa102000b, +0x93430120, 0x8d220008, 0x8d240004, 0x306300ff, +0x431021, 0x97830042, 0x441021, 0x8f840028, +0x431023, 0x3c030800, 0x8c6331a0, 0xa502000c, +0xa505000e, 0x246300e8, 0xa5030010, 0xa5060012, +0xad000014, 0x8d220024, 0xad020018, 0x8c82005c, +0xad02001c, 0x8c820058, 0xad020020, 0x2402ffff, +0xad020024, 0x948200e6, 0x3042ffff, 0xad020028, +0x94820060, 0x948300be, 0x30427fff, 0x3063ffff, +0x21200, 0x431021, 0xad02002c, 0x3c021000, +0xad000030, 0xaf4201b8, 0x948200be, 0x2403fff7, +0xa21021, 0xa48200be, 0x8d220020, 0x431024, +0x3e00008, 0xad220020, 0x27430180, 0x8f4201b8, +0x440fffe, 0x24020018, 0xac640000, 0xa062000b, +0x8f820028, 0x944200e6, 0xa4620010, 0x3c021000, +0xac600030, 0x3e00008, 0xaf4201b8, 0x27430180, +0x8f4201b8, 0x440fffe, 0x8f82002c, 0x9442001c, +0x3042ffff, 0x211c0, 0xac620000, 0x24020019, +0xa062000b, 0x3c021000, 0xac600030, 0x3e00008, +0xaf4201b8, 0x8f870034, 0x30c300ff, 0x8f4201b8, +0x440fffe, 0x8f820050, 0x34636000, 0xaca20000, +0x9382004c, 0xa0a20005, 0x8ce20010, 0xa4a20006, +0xa4a30008, 0x8c820020, 0x2403fff7, 0xa0a2000a, +0x24020002, 0xa0a2000b, 0x8ce20000, 0xaca20010, +0x8ce20004, 0xaca20014, 0x8ce2001c, 0xaca20024, +0x8ce20020, 0xaca20028, 0x8ce2002c, 0xaca2002c, +0x8c820024, 0xaca20018, 0x3c021000, 0xaf4201b8, +0x8c820020, 0x431024, 0x3e00008, 0xac820020, +0x9382004c, 0x24030001, 0x27bdffe8, 0x433004, +0x2c420020, 0xafb00010, 0xafbf0014, 0x2410fffe, +0x10400005, 0x27450180, 0x3c020800, 0x8c423190, +0xa00138a, 0x461024, 0x3c020800, 0x8c423194, +0x461024, 0x14400007, 0x24060084, 0x8f830028, +0x2410ffff, 0x90620062, 0x3042000f, 0x34420040, +0xa0620062, 0xe001356, 0x0, 0x2001021, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x8f83002c, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf001c, 0x9062000d, 0xa09021, +0x30d100ff, 0x3042007f, 0xa062000d, 0x8f850028, +0x8e430018, 0x808021, 0x8ca2007c, 0x14620005, +0x2402000e, 0x90a20063, 0x34420020, 0xa0013b3, +0xa0a20063, 0xe001379, 0xa382004c, 0x2403ffff, +0x10430047, 0x2404ffff, 0x52200045, 0x2021, +0x8e430000, 0x3c020010, 0x621024, 0x50400004, +0x3c020008, 0x2002021, 0xa0013c2, 0x24020015, +0x621024, 0x50400009, 0x8e450000, 0x2002021, +0x24020014, 0xe001379, 0xa382004c, 0x2403ffff, +0x10430033, 0x2404ffff, 0x8e450000, 0x3c020002, +0xa21024, 0x10400016, 0x3c020004, 0x8f86002c, +0x8cc20014, 0x8cc30010, 0x8cc40014, 0x431023, +0x44102b, 0x50400005, 0x2002021, 0x8e43002c, +0x8cc20010, 0x10620003, 0x2002021, 0xa0013f3, +0x24020012, 0x3c020004, 0xa21024, 0x5040001c, +0x2021, 0x2002021, 0xa0013f3, 0x24020013, +0xa21024, 0x10400006, 0x8f83002c, 0x8c620010, +0x50400013, 0x2021, 0xa0013ed, 0x2002021, +0x8c620010, 0x50400004, 0x8e42002c, 0x2002021, +0xa0013f3, 0x24020011, 0x50400009, 0x2021, +0x2002021, 0x24020017, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430002, 0x2404ffff, 0x2021, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x801021, 0x3e00008, 0x27bd0020, 0x93830030, +0x27bdffe0, 0x24020034, 0xafb20018, 0xafb10014, +0xafbf001c, 0xafb00010, 0x808821, 0x1462000c, +0xa09021, 0x8f840034, 0xe0012a2, 0x8c900030, +0x12020007, 0x24020005, 0x2202021, 0xe001379, +0xa382004c, 0x2403ffff, 0x1043005f, 0x2404ffff, +0x92420004, 0x10400009, 0x8f820028, 0x2202021, +0x2402000c, 0xe001379, 0xa382004c, 0x2403ffff, +0x10430055, 0x2404ffff, 0x8f820028, 0xa3800024, +0x8e430004, 0x8c440080, 0x3c0200ff, 0x3442ffff, +0x621824, 0x83202b, 0x10800008, 0xaf83003c, +0x2202021, 0x24020019, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430044, 0x2404ffff, 0x97820042, +0x8f870044, 0x8f88003c, 0x471023, 0x11000039, +0xa7820042, 0x8f860028, 0x3045ffff, 0x8f840050, +0x90c300bc, 0x3c020800, 0x8c4231a0, 0x31882, +0x30700001, 0x822021, 0x101080, 0x1021021, +0xa2282b, 0x10a00010, 0x24820088, 0x8f840034, +0x1082000d, 0x3c033f01, 0x8e420000, 0x431024, +0x3c032500, 0x14430006, 0x30e500ff, 0x8c820000, +0xacc20088, 0x8c820010, 0xa001453, 0xacc20098, +0xe001277, 0x3021, 0x8f85003c, 0x93830024, +0x8f860028, 0x30a20003, 0x21023, 0x30420003, +0x433821, 0xa3870024, 0x94c400e4, 0xa22821, +0x8f830044, 0x8f820048, 0x34841000, 0xa4c400e4, +0x431021, 0xaf820048, 0x1200000e, 0xaf850044, +0x24e20004, 0xa3820024, 0x94c200e4, 0x24a30004, +0xaf830044, 0x34422000, 0xa4c200e4, 0xa001473, +0x2021, 0x8f820048, 0xaf800044, 0x471021, +0xaf820048, 0x2021, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0020, 0x8f860028, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0x90c20063, 0x30420020, 0x10400008, +0x30a500ff, 0x8cc2007c, 0x2403ffdf, 0x24420001, +0xacc2007c, 0x90c20063, 0x431024, 0xa0c20063, +0x10a00023, 0x8f830028, 0x27500180, 0x2002821, +0xe001356, 0x24060082, 0x8f820028, 0x90420063, +0x30420040, 0x50400019, 0xa380004c, 0x8f830034, +0x8f4201b8, 0x440fffe, 0x8f820050, 0xae020000, +0x24026082, 0xa6020008, 0x24020002, 0xa202000b, +0x8c620008, 0xae020010, 0x8c62000c, 0xae020014, +0x8c620014, 0xae020018, 0x8c620018, 0xae020024, +0x8c620024, 0xae020028, 0x8c620028, 0xae02002c, +0x3c021000, 0xaf4201b8, 0xa380004c, 0x8f830028, +0x8fbf0014, 0x8fb00010, 0x90620063, 0x27bd0018, +0x3042007f, 0xa0620063, 0x97820042, 0x8f860044, +0x8f850028, 0x93830030, 0x461023, 0xa7820042, +0xa4a000e4, 0x90a40063, 0x8f820048, 0xaf830044, +0x2403ffbf, 0x461021, 0x832024, 0xaf820048, +0xa0a40063, 0x8f820028, 0xa04000bd, 0x8f820028, +0x3e00008, 0xa44000be, 0x8f8a0028, 0x27bdffe0, +0xafb10014, 0xafb00010, 0x8f880044, 0xafbf0018, +0x93890024, 0x954200e4, 0x30d100ff, 0x109182b, +0x808021, 0x30ac00ff, 0x3047ffff, 0x5821, +0x14600003, 0x310600ff, 0x1203021, 0x1095823, +0x97830042, 0x68102b, 0x14400032, 0x0, +0x14680007, 0x24020001, 0x8e020020, 0x2403fffb, +0x34e78000, 0x431024, 0xae020020, 0x24020001, +0x34e70880, 0x15820005, 0x3165ffff, 0xe0012c7, +0x2002021, 0xa001508, 0x2002021, 0xe0012f8, +0x2002021, 0xe00133b, 0x8f840050, 0x8f840028, +0x94820060, 0x24420001, 0xa4820060, 0x94820060, +0x3c030800, 0x8c633188, 0x30427fff, 0x5443000f, +0x2002021, 0x94820060, 0x24038000, 0x431024, +0xa4820060, 0x90820060, 0x90830060, 0x304200ff, +0x211c2, 0x21027, 0x211c0, 0x3063007f, +0x621825, 0xa0830060, 0x2002021, 0x2202821, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0xa00147a, +0x27bd0020, 0x91420063, 0x2403ff80, 0x431025, +0xa1420063, 0x97820042, 0x3048ffff, 0x11000020, +0x93830024, 0x8f840028, 0x4b1023, 0x304600ff, +0x948300e4, 0x2402efff, 0x168282b, 0x621824, +0xa48300e4, 0x14a00003, 0x8e020020, 0x1005821, +0x3021, 0x2403fffb, 0x34e78000, 0x431024, +0xae020020, 0x24020001, 0x15820005, 0x3165ffff, +0xe0012c7, 0x2002021, 0xa001530, 0x97830042, +0xe0012f8, 0x2002021, 0x97830042, 0x8f820044, +0xa7800042, 0x431023, 0xaf820044, 0x93830024, +0x8f820028, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x27bd0020, 0x3e00008, 0xa04300bd, 0x8f820028, +0x90430088, 0x904500bd, 0x24490088, 0x3063003f, +0x2463ffe0, 0x24020001, 0x623804, 0x2c630020, +0x30e80019, 0xa3850024, 0x10600010, 0xaf890034, +0x3c028000, 0x34420002, 0x24050001, 0x24060001, +0x15000008, 0xe21824, 0x2821, 0x14600005, +0x30e20020, 0x10400005, 0x24050001, 0x91260001, +0x30c60001, 0xa0014c7, 0x0, 0x3e00008, +0x0, 0x27bdffd8, 0xafb00010, 0x8f900034, +0xafb40020, 0xafb10014, 0xafbf0024, 0xafb3001c, +0xafb20018, 0x8e050010, 0x3c020800, 0x8c4231b0, +0x8f860038, 0x30a33fff, 0x62182b, 0x8cd30014, +0x808821, 0x8cd20020, 0x10600078, 0xa021, +0x90c3000d, 0x2402ff80, 0x431024, 0x304200ff, +0x50400073, 0x2202021, 0x51382, 0x30420003, +0x5440006f, 0x2202021, 0x94c3001c, 0x8f820028, +0x8e050028, 0xa4430114, 0x8cc20010, 0x2621823, +0x14650007, 0x2402001f, 0x8f82003c, 0x621021, +0x262102b, 0x10400008, 0x8f83002c, 0x24020018, +0xe001379, 0xa382004c, 0x2403ffff, 0x1043006f, +0x2404ffff, 0x8f83002c, 0x8f84003c, 0x8c620010, +0x2449021, 0x441023, 0xac620010, 0x8f820028, +0xac720020, 0x8c420068, 0x52102b, 0x10400009, +0x8f830038, 0x2202021, 0x2402001d, 0xe001379, +0xa382004c, 0x2403ffff, 0x1043005c, 0x2404ffff, +0x8f830038, 0x8e020024, 0x8c630024, 0x10430007, +0x2202021, 0x2402001c, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430051, 0x2404ffff, 0x8f84002c, +0x8c820024, 0x24420001, 0xac820024, 0x12530004, +0x8f820028, 0x8c420068, 0x5642000e, 0x8e020000, +0x8e020000, 0x3c030080, 0x431024, 0x1440000d, +0x2402001a, 0x2202021, 0xe001379, 0xa382004c, +0x2403ffff, 0x1043003d, 0x2404ffff, 0xa0015c4, +0x8e020014, 0x3c030080, 0x431024, 0x50400003, +0x8e020014, 0xac800020, 0x8e020014, 0x2412ffff, +0x10520006, 0x2402001b, 0x2202021, 0xe001379, +0xa382004c, 0x1052002d, 0x2404ffff, 0x8e030000, +0x3c020001, 0x621024, 0x1040001f, 0x3c020080, +0x621024, 0x14400008, 0x2202021, 0x2402001a, +0xe001379, 0xa382004c, 0x2403ffff, 0x1043001f, +0x2404ffff, 0x2202021, 0x2002821, 0xe001399, +0x24060001, 0x2403ffff, 0x2404ffff, 0x1443000e, +0x24140001, 0xa0015f9, 0x8fbf0024, 0x2202021, +0x2402000d, 0x8fbf0024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x27bd0028, +0xa001379, 0xa382004c, 0x8f83002c, 0x2202021, +0x2803021, 0x94620036, 0x24050001, 0x24420001, +0xe0014c7, 0xa4620036, 0x2021, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x801021, 0x3e00008, 0x27bd0028, +0x8f830028, 0x27bdffd8, 0xafb40020, 0xafb3001c, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf0024, +0x90620063, 0x8f910034, 0x2412ffff, 0x34420040, +0x92250000, 0xa0620063, 0x8e220010, 0x809821, +0x30b0003f, 0x10520006, 0x360a021, 0x2402000d, +0xe001379, 0xa382004c, 0x10520056, 0x2405ffff, +0x8f830028, 0x8e220018, 0x8c63007c, 0x10430007, +0x2402000e, 0x2602021, 0xe001379, 0xa382004c, +0x2403ffff, 0x1043004b, 0x2405ffff, 0x24050020, +0x12050004, 0x8f830028, 0x90620063, 0x34420020, +0xa0620063, 0x8f84003c, 0x10800022, 0x3a030032, +0x3a020020, 0x2c420001, 0x2c630001, 0x431025, +0x50400004, 0x8f820028, 0x2602021, 0xa001647, +0x2402000a, 0x9683000a, 0x2405fffd, 0x94420060, +0x3042ffff, 0x10430034, 0x8fbf0024, 0x3c020800, +0x8c42318c, 0x44102b, 0x14400006, 0x2602021, +0x2821, 0xe0014c7, 0x24060001, 0xa00166e, +0x2821, 0x2402002d, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430023, 0x2405ffff, 0xa00166e, +0x2821, 0x16050005, 0x8f840028, 0x8e230014, +0x2402ffff, 0x50620018, 0x2602021, 0x94820060, +0x24420001, 0xa4820060, 0x94820060, 0x3c030800, +0x8c633188, 0x30427fff, 0x5443000f, 0x2602021, +0x94820060, 0x24038000, 0x431024, 0xa4820060, +0x90820060, 0x90830060, 0x304200ff, 0x211c2, +0x21027, 0x211c0, 0x3063007f, 0x621825, +0xa0830060, 0x2602021, 0xe00147a, 0x24050001, +0x2821, 0x8fbf0024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xa01021, +0x3e00008, 0x27bd0028, 0x8f830028, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x90620063, 0x8f870034, +0x808021, 0x34420040, 0x8ce60010, 0xa0620063, +0x3c030800, 0x8c6331b0, 0x30c23fff, 0x43102b, +0x1040004e, 0x8f850038, 0x2402ff80, 0x90a3000d, +0x431024, 0x304200ff, 0x50400049, 0x2002021, +0x61382, 0x30480003, 0x24020002, 0x55020044, +0x2002021, 0x94a2001c, 0x8f850028, 0x24030023, +0xa4a20114, 0x8ce60000, 0x61602, 0x3042003f, +0x10430010, 0x3c030083, 0x8ce30018, 0x8ca2007c, +0x10620006, 0x2402000e, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430038, 0x2404ffff, 0x8f830028, +0x90620063, 0x34420020, 0xa0620063, 0xa0016b3, +0x8f83002c, 0xc31024, 0x14430007, 0x8f83002c, +0x90a20062, 0x3042000f, 0x34420020, 0xa0a20062, +0xa3880040, 0x8f83002c, 0x9062000d, 0x3042007f, +0xa062000d, 0x8f83003c, 0x10600018, 0x2002021, +0x8f840038, 0x8c820010, 0x43102b, 0x10400009, +0x24020018, 0x2002021, 0xe001379, 0xa382004c, +0x2403ffff, 0x10430018, 0x2404ffff, 0xa0016db, +0x2021, 0x8c820010, 0x24050001, 0x2002021, +0x431023, 0x8f83002c, 0x24060001, 0xe0014c7, +0xac620010, 0xa0016db, 0x2021, 0xe00147a, +0x24050001, 0xa0016db, 0x2021, 0x2002021, +0x2402000d, 0x8fbf0014, 0x8fb00010, 0x27bd0018, +0xa001379, 0xa382004c, 0x8fbf0014, 0x8fb00010, +0x801021, 0x3e00008, 0x27bd0018, 0x27bdffd8, +0xafb00010, 0x8f900034, 0xafb3001c, 0xafbf0020, +0xafb20018, 0xafb10014, 0x8e120010, 0x3c030800, +0x8c6331b0, 0x32423fff, 0x43102b, 0x1040007c, +0x809821, 0x8f850038, 0x2402ff80, 0x90a3000d, +0x431024, 0x304200ff, 0x50400076, 0x2602021, +0x121382, 0x30420003, 0x24030001, 0x54430071, +0x2602021, 0x90a2000d, 0x30420008, 0x54400003, +0x8f82003c, 0xa00170b, 0x24020024, 0x50400003, +0x8e03000c, 0xa00170b, 0x24020027, 0x8ca20020, +0x14620005, 0x24020020, 0x8e030008, 0x8ca20024, +0x10620008, 0x24020020, 0xe001379, 0xa382004c, +0x2403ffff, 0x1043006a, 0x2404ffff, 0xa001736, +0x8f84002c, 0x8e020014, 0x2411ffff, 0x14510003, +0x8f870028, 0xa001731, 0x24020025, 0x8e030018, +0x8ce2007c, 0x14620016, 0x2402000e, 0x8e030024, +0x8ca20028, 0x14620012, 0x24020021, 0x8e060028, +0x8ca2002c, 0x14c2000e, 0x2402001f, 0x8e03002c, +0x1060000b, 0x24020023, 0x8ce20068, 0x43102b, +0x14400007, 0x24020026, 0x8ca20014, 0x661821, +0x43102b, 0x50400007, 0x8f84002c, 0x24020022, +0xe001379, 0xa382004c, 0x10510045, 0x2404ffff, +0x8f84002c, 0x2403fff7, 0x9082000d, 0x431024, +0xa082000d, 0x8f860028, 0x3c030800, 0x8c6331ac, +0x8f820050, 0x94c400e0, 0x8f85002c, 0x431021, +0x30847fff, 0x42040, 0x441021, 0x3043007f, +0x3432021, 0x3c03000e, 0x832021, 0x2403ff80, +0x431024, 0xaf42002c, 0xa4920000, 0x8ca20028, +0x24420001, 0xaca20028, 0x8ca2002c, 0x8e03002c, +0x431021, 0xaca2002c, 0x8e02002c, 0xaca20030, +0x8e020014, 0xaca20034, 0x94a20038, 0x24420001, +0xa4a20038, 0x94c600e0, 0x3c020800, 0x8c4231b0, +0x24c40001, 0x30837fff, 0x14620013, 0x803021, +0x24028000, 0x823024, 0x30c2ffff, 0x213c2, +0x304200ff, 0x21027, 0xa001773, 0x233c0, +0x2602021, 0x2402000d, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x27bd0028, +0xa001379, 0xa382004c, 0x8f820028, 0x2602021, +0x24050001, 0xe00147a, 0xa44600e0, 0x2021, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x801021, 0x3e00008, 0x27bd0028, +0x27bdffe0, 0xafb10014, 0x8f910034, 0xafb00010, +0xafbf0018, 0x8e260010, 0x3c030800, 0x8c6331b0, +0x30c23fff, 0x43102b, 0x1040005e, 0x808021, +0x8f850038, 0x2402ff80, 0x90a3000d, 0x431024, +0x304200ff, 0x50400058, 0x2002021, 0x8f82003c, +0x10400008, 0x61382, 0x8f820028, 0x9763000a, +0x2404fffd, 0x94420060, 0x3042ffff, 0x10430055, +0x61382, 0x30420003, 0x1440000e, 0x0, +0x92220002, 0x10400005, 0x8e230024, 0x50600015, +0x92230003, 0xa0017ac, 0x2002021, 0x8ca20024, +0x50620010, 0x92230003, 0x2002021, 0xa0017b4, +0x2402000f, 0x90a2000d, 0x30420008, 0x54400009, +0x92230003, 0x2002021, 0x24020010, 0xe001379, +0xa382004c, 0x2403ffff, 0x1043003a, 0x2404ffff, +0x92230003, 0x24020002, 0x5462000c, 0x92220003, +0x8f82003c, 0x54400009, 0x92220003, 0x2002021, +0x2402002c, 0xe001379, 0xa382004c, 0x2403ffff, +0x1043002c, 0x2404ffff, 0x92220003, 0x2202821, +0x2002021, 0x38460010, 0x2cc60001, 0x2c420001, +0xe001399, 0x463025, 0x2411ffff, 0x10510021, +0x2404ffff, 0x8f83003c, 0x10600012, 0x2002021, +0x3c020800, 0x8c42318c, 0x43102b, 0x14400006, +0x0, 0x2821, 0xe0014c7, 0x24060001, +0xa0017f2, 0x2021, 0x2402002d, 0xe001379, +0xa382004c, 0x1051000f, 0x2404ffff, 0xa0017f2, +0x2021, 0xe00147a, 0x24050001, 0xa0017f2, +0x2021, 0x2002021, 0x2402000d, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x27bd0020, 0xa001379, +0xa382004c, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x801021, 0x3e00008, 0x27bd0020, 0x93830040, +0x27bdffe0, 0x24020002, 0xafb10014, 0xafb00010, +0x808821, 0xafbf0018, 0x8021, 0x1062008c, +0x2404fffd, 0x97850042, 0x8f830044, 0x30a2ffff, +0x43102b, 0x5440007d, 0x8f840048, 0xe00123a, +0x0, 0x3c020800, 0x2442758c, 0x2202021, +0x402821, 0xe001400, 0xaf820034, 0x2409ffff, +0x1049007b, 0x2404ffff, 0x3c080800, 0x8d08759c, +0x3c020800, 0x8c4231b0, 0x3c030800, 0x9063758c, +0x31043fff, 0x82102b, 0x1040001b, 0x3067003f, +0x3c020800, 0x8c4231a8, 0x8f830050, 0x42180, +0x621821, 0x641821, 0x3062007f, 0x3422821, +0x3c02000c, 0xa22821, 0x3c020080, 0x34420001, +0x30660078, 0xc23025, 0x2402ff80, 0x621024, +0xaf420028, 0x30640007, 0xaf420804, 0x8f820028, +0x3442021, 0x24840940, 0xaf460814, 0xaf85002c, +0xaf840038, 0xac430118, 0x93830040, 0x24020003, +0x1462003b, 0x24020001, 0x24020026, 0x10e2003d, +0x28e20027, 0x10400013, 0x24020032, 0x24020022, +0x10e20038, 0x28e20023, 0x10400008, 0x24020024, +0x24020020, 0x10e20024, 0x24020021, 0x10e2001e, +0x2202021, 0xa001871, 0x2402000b, 0x10e2002d, +0x24020025, 0x10e20010, 0x2202021, 0xa001871, +0x2402000b, 0x10e2001a, 0x28e20033, 0x10400006, +0x2402003f, 0x24020031, 0x10e2000b, 0x2202021, +0xa001871, 0x2402000b, 0x10e20011, 0x2202021, +0xa001871, 0x2402000b, 0xe00155a, 0x2202021, +0xa00188c, 0x408021, 0xe0016e0, 0x2202021, +0xa00188c, 0x408021, 0xe001781, 0x2202021, +0xa00188c, 0x408021, 0x1509000e, 0x0, +0xe001601, 0x2202021, 0xa00188c, 0x408021, +0xe001379, 0xa382004c, 0xa00188c, 0x408021, +0x14620017, 0x2002021, 0x24020023, 0x14e20005, +0x2402000b, 0xe001677, 0x2202021, 0xa00188c, +0x408021, 0x2202021, 0xa382004c, 0xe001379, +0x2410ffff, 0xa00188d, 0x2002021, 0x30a500ff, +0xe001277, 0x24060001, 0x97830042, 0x8f820044, +0xa7800042, 0x431023, 0xaf820044, 0x2002021, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x801021, +0x3e00008, 0x27bd0020, 0x27bdffe0, 0xafb10014, +0xafbf0018, 0xafb00010, 0x8f460128, 0x3c030800, +0x8c6331a0, 0x2402ff80, 0xaf860050, 0xc31821, +0x3065007f, 0x3452821, 0x621824, 0x3c02000a, +0xaf430024, 0xa22821, 0x90a20062, 0x808821, +0xaf850028, 0x304200ff, 0x21102, 0xa3820040, +0x90a200bc, 0x30420002, 0x14400002, 0x24030034, +0x24030030, 0x8f820028, 0xa3830030, 0x93830040, +0x8c4200c0, 0xa380004c, 0xaf820044, 0x24020004, +0x10620030, 0x8f840044, 0x8e240004, 0x5080002d, +0x8f840044, 0x8e220010, 0x3083ffff, 0xa7840042, +0x1060001f, 0xaf820048, 0x8f830028, 0x2405ff80, +0x2202021, 0x90620063, 0xa21024, 0x304200ff, +0x1440000d, 0x0, 0xe0017f8, 0x97900042, +0x10400010, 0x401821, 0x2402fffd, 0x54620011, +0x8e230020, 0x2002821, 0xe001218, 0x2202021, +0xa0018de, 0x8e230020, 0x90620063, 0xa21024, +0x304200ff, 0x10400003, 0x2202021, 0xe00153c, +0x0, 0x97820042, 0x1440ffe4, 0x8f830028, +0x8e230020, 0x30620004, 0x10400006, 0x8f840044, +0x2402fffb, 0x621024, 0xe00122c, 0xae220020, +0x8f840044, 0x8f830028, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0x24020001, 0x27bd0020, 0x3e00008, +0xac6400c0, 0x30a500ff, 0x24030001, 0x24a90001, +0x69102b, 0x1040000c, 0x4021, 0x240a0001, +0xa31023, 0x4a3804, 0x24630001, 0x30820001, +0x69302b, 0x10400002, 0x42042, 0x1074025, +0x54c0fff8, 0xa31023, 0x3e00008, 0x1001021, +0x27bdffe0, 0x3c021edc, 0xafb20018, 0xafb10014, +0xafbf001c, 0xafb00010, 0x34526f41, 0x8821, +0x24050008, 0xe0018ee, 0x2202021, 0x118080, +0x3c070800, 0x24e7718c, 0x21600, 0x2071821, +0xac620000, 0x2821, 0x24a20001, 0x3045ffff, +0x8c620000, 0x2ca60008, 0x4410002, 0x22040, +0x922026, 0x14c0fff8, 0xac640000, 0x2078021, +0x8e040000, 0xe0018ee, 0x24050020, 0x26230001, +0x3071ffff, 0x2e230100, 0x1460ffe5, 0xae020000, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x3c020800, 0x2442624c, +0x3c010800, 0xac227180, 0x3c020800, 0x244247b8, +0x3c010800, 0xac227184, 0x24020006, 0x3c010800, +0xa0227188, 0xa001901, 0x0, 0x27bdffd8, +0xafb3001c, 0xafb20018, 0xafbf0020, 0xafb10014, +0xafb00010, 0x8f510140, 0x8f480148, 0x89402, +0x324300ff, 0x311300ff, 0x8f4201b8, 0x440fffe, +0x27500180, 0xae110000, 0x8f420144, 0x2464fff0, +0x2c830006, 0xae020004, 0x24020002, 0xa6120008, +0xa202000b, 0xae130024, 0x106000ca, 0x8fbf0020, +0x41080, 0x3c030800, 0x246370d8, 0x431021, +0x8c420000, 0x400008, 0x0, 0x3c020800, +0x8c4231a0, 0x2403ff80, 0x2221021, 0x431024, +0xaf420024, 0x3c020800, 0x8c4231a0, 0x2221021, +0x3042007f, 0x3421821, 0x3c02000a, 0x621821, +0x166000b3, 0xaf830028, 0x90620062, 0x3042000f, +0x34420030, 0xa0620062, 0xa001a1a, 0x8fbf0020, +0x3c046000, 0x8c832c08, 0x3c02f003, 0x3442ffff, +0x621824, 0xac832c08, 0x3c020800, 0x8c4231a0, +0x8c832c08, 0x24420074, 0x21082, 0x21480, +0x621825, 0xac832c08, 0xa001a1a, 0x8fbf0020, +0x3c020800, 0x8c4231a0, 0x2403ff80, 0x2221021, +0x431024, 0xaf420024, 0x3c020800, 0x8c4231a0, +0x3c03000a, 0x2221021, 0x3042007f, 0x3421021, +0x431021, 0xa001a19, 0xaf820028, 0x3c020800, +0x8c4231a0, 0x2404ff80, 0x2221021, 0x441024, +0xaf420024, 0x3c020800, 0x8c4231a0, 0x2221021, +0x3042007f, 0x3421821, 0x3c02000a, 0x621821, +0x90620063, 0x821024, 0x304200ff, 0x1040007c, +0xaf830028, 0x24620088, 0x94430012, 0x3c020800, +0x8c4231a8, 0x30633fff, 0x31980, 0x2221021, +0x431021, 0x3043007f, 0x3431821, 0x441024, +0x3c04000c, 0x641821, 0xaf420028, 0xe001348, +0xaf83002c, 0x8f4201b8, 0x440fffe, 0x0, +0xae110000, 0x8f420144, 0xae020004, 0x24020002, +0xa6120008, 0xa202000b, 0xae130024, 0xa001a1a, +0x8fbf0020, 0x2406ff80, 0x2261024, 0xaf420020, +0x3c020800, 0x8c4231a0, 0x31043fff, 0x42180, +0x2221021, 0x461024, 0xaf420024, 0x3c030800, +0x8c6331a8, 0x3c020800, 0x8c4231a0, 0x3227007f, +0x2231821, 0x2221021, 0x641821, 0x3042007f, +0x3064007f, 0x3422821, 0x3c02000a, 0x661824, +0xa22821, 0x3442021, 0x3c02000c, 0x822021, +0xaf430028, 0x3c020008, 0x3471821, 0x629021, +0xaf850028, 0xaf84002c, 0xe001348, 0x1008021, +0x8f4201b8, 0x440fffe, 0x8f82002c, 0x8f840028, +0x27450180, 0x9042000d, 0xacb10000, 0xa4b00006, +0x21600, 0x21603, 0x21027, 0x237c2, +0x14c00016, 0x24820088, 0x94420012, 0x32033fff, +0x30423fff, 0x14430012, 0x24026082, 0x90830063, +0x2402ff80, 0x431024, 0x304200ff, 0x5040000c, +0x24026082, 0x90820062, 0x3042000f, 0x34420040, +0xa0820062, 0x24026084, 0xa4a20008, 0x2402000d, +0xa0a20005, 0xa001a04, 0x3c022700, 0x24026082, +0xa4a20008, 0xa0a00005, 0x3c022700, 0x61c00, +0x621825, 0x24020002, 0xa0a2000b, 0xaca30010, +0xaca00014, 0xaca00024, 0xaca00028, 0xaca0002c, +0x8e42004c, 0x8f84002c, 0xaca20018, 0x9083000d, +0x2402ff80, 0x431024, 0x304200ff, 0x10400005, +0x8fbf0020, 0x9082000d, 0x3042007f, 0xa082000d, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3c021000, 0x27bd0028, 0x3e00008, +0xaf4201b8, 0x30a5ffff, 0x30c600ff, 0x27430180, +0x8f4201b8, 0x440fffe, 0x24020002, 0xac640000, +0xa4650008, 0xa066000a, 0xa062000b, 0x3c021000, +0xac670018, 0x3e00008, 0xaf4201b8, 0x3c036000, +0x8c624ff8, 0x440fffe, 0x3c020200, 0xac644fc0, +0xac624fc4, 0x3c021000, 0x3e00008, 0xac624ff8, +0x27bdffe8, 0xafbf0014, 0xafb00010, 0xe000fac, +0x808021, 0x93620005, 0x2403fffe, 0x2002021, +0x431024, 0x8fbf0014, 0x8fb00010, 0xa3620005, +0xa000fb5, 0x27bd0018, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0xe000c95, 0x808021, 0x93620000, +0x24030050, 0x304200ff, 0x14430004, 0x24020100, +0xaf420180, 0xa001a56, 0x2002021, 0xaf400180, +0x2002021, 0x8fbf0014, 0x8fb00010, 0xa000d6c, +0x27bd0018, 0x27bdff98, 0xafbe0060, 0xafb7005c, +0xafb20048, 0xafbf0064, 0xafb60058, 0xafb50054, +0xafb40050, 0xafb3004c, 0xafb10044, 0xafb00040, +0x8f500128, 0x9363003f, 0x93620005, 0xf021, +0x307200ff, 0x21027, 0x30420001, 0xb821, +0x14400064, 0xafa00038, 0x93430116, 0x93440112, +0x8f450104, 0x3c020001, 0x306300ff, 0x308400ff, +0xa22824, 0x3433821, 0x3441021, 0x24494000, +0x10a00013, 0x24e84000, 0x8d23000c, 0x8f620030, +0x146201a3, 0x24020001, 0x8d230010, 0x8f62002c, +0x1462019f, 0x24020001, 0x9762003a, 0x94e34000, +0x3042ffff, 0x1462019a, 0x24020001, 0x97620038, +0x95030002, 0x3042ffff, 0x14620195, 0x24020001, +0x93620000, 0x304300ff, 0x24020020, 0x10620005, +0x24020050, 0x10620006, 0x0, 0xa001a9d, +0x0, 0xd, 0xa001aa6, 0xafa00030, +0x3c1e0800, 0x27de7180, 0xa001aa6, 0xafa00030, +0x3c020800, 0x8c4200f4, 0x24420001, 0x3c010800, +0xac2200f4, 0xe000f8d, 0x0, 0xa001c22, +0x8fbf0064, 0x8f420104, 0x3c030020, 0x9113000d, +0x431024, 0x2202b, 0x42140, 0xafa40030, +0x8f430104, 0x3c020040, 0x621824, 0x14600002, +0x34850040, 0x802821, 0x32620020, 0xafa50030, +0x14400002, 0x34a60080, 0xa03021, 0x10c0000b, +0xafa60030, 0x93c50008, 0x8f67004c, 0x2002021, +0x52b00, 0x34a50081, 0x30a5f081, 0xe001a22, +0x30c600ff, 0xa001c1f, 0x0, 0x9362003e, +0x30420040, 0x1040000f, 0x24020004, 0x56420007, +0x24020012, 0x2002021, 0x1202821, 0xe0011c8, +0x1003021, 0xa001c22, 0x8fbf0064, 0x16420005, +0x0, 0xe001a47, 0x2021, 0xa001c22, +0x8fbf0064, 0x9742011a, 0x9504000e, 0x93630035, +0x32650004, 0x3055ffff, 0x642004, 0xafa4003c, +0x8d110004, 0x10a00015, 0x8d140008, 0x9362003e, +0x30420040, 0x10400007, 0x0, 0xe001129, +0x2202021, 0x1040000d, 0x0, 0xa001c1f, +0x0, 0x8f620044, 0x2221023, 0x4400132, +0x0, 0x8f620048, 0x2221023, 0x441012e, +0x24040016, 0xa001b35, 0x8fc20004, 0x8f620048, +0x2221023, 0x4400008, 0x0, 0x3c020800, +0x8c423100, 0x24420001, 0x3c010800, 0xac223100, +0xa001c14, 0x0, 0x8f620040, 0x2221023, +0x18400009, 0x2402000c, 0x3c020800, 0x8c423100, +0x327300fc, 0xa821, 0x24420001, 0x3c010800, +0xac223100, 0x2402000c, 0xafa20030, 0x8f620040, +0x511823, 0x1860000d, 0x2a3102a, 0x14400103, +0x0, 0x14750006, 0x2a31023, 0x3a620001, +0x30420001, 0x144000fd, 0x0, 0x2a31023, +0x2238821, 0xa001b1d, 0x3055ffff, 0x1821, +0x32620002, 0x1040001a, 0x32620010, 0x9362003e, +0x30420040, 0x50400011, 0x8fc20004, 0xe000fac, +0x2002021, 0x24020018, 0xa362003f, 0x93620005, +0x2403fffe, 0x2002021, 0x431024, 0xe000fb5, +0xa3620005, 0x24040039, 0x2821, 0xe001112, +0x24060018, 0xa001c21, 0x24020001, 0x24040017, +0x40f809, 0x0, 0xa001c21, 0x24020001, +0x104000e5, 0x0, 0x8f64004c, 0x8f620054, +0x2821023, 0x1c4000e0, 0x2841023, 0x4420001, +0x80a021, 0xafa30018, 0xafb10010, 0xafb50014, +0x93420120, 0x8f660040, 0x9764003c, 0x304200ff, +0x3422821, 0x8fa2003c, 0xa32821, 0x8fa30030, +0x3084ffff, 0x44202b, 0x8fc20000, 0x641825, +0x24a54000, 0xafa50020, 0xafa60028, 0xafa30030, +0xafa60024, 0xafa0002c, 0xafb40034, 0x40f809, +0x27a40010, 0x8fa20030, 0x30420002, 0x54400001, +0x327300fe, 0x9362003e, 0x30420040, 0x10400037, +0x8fa30014, 0x8f620054, 0x1682001a, 0x32620001, +0x24020014, 0x12420010, 0x2a420015, 0x10400006, +0x24020016, 0x2402000c, 0x12420007, 0x32620001, +0xa001b7e, 0x0, 0x12420005, 0x32620001, +0xa001b7e, 0x0, 0xa001b79, 0x2417000e, +0xa001b79, 0x24170010, 0xa001b7d, 0x24170012, +0x93620023, 0x2403ffbd, 0x431024, 0xa3620023, +0x32620001, 0x10400019, 0x8fa30014, 0x2402000c, +0x1242000e, 0x2a42000d, 0x10400006, 0x2402000e, +0x2402000a, 0x12420007, 0x8fa20024, 0xa001b96, +0x24420001, 0x12420008, 0x8fa20024, 0xa001b96, +0x24420001, 0xa001b94, 0x24170008, 0x2402000e, +0x16e20002, 0x24170016, 0x24170010, 0x8fa20024, +0x24420001, 0xafa20024, 0x8fa30014, 0x8fa20024, +0x8f760040, 0x431021, 0xaf620040, 0x8fa2003c, +0x93640036, 0x8f630040, 0x2829021, 0x3402ffff, +0x821004, 0x621821, 0xaf630048, 0x8fa60030, +0x30c20008, 0x1040000e, 0x0, 0x8f620058, +0x16420004, 0x30c600ff, 0x9742011a, 0x50400001, +0x34c60010, 0x93c50008, 0x8fa70034, 0x2002021, +0x52b00, 0x34a50080, 0xe001a22, 0x30a5f080, +0x8f620040, 0x561023, 0x18400017, 0x8fa20018, +0x3c020800, 0x8c423198, 0x30420010, 0x10400009, +0x24020001, 0x97620068, 0x14400006, 0x24020001, +0xa7620068, 0x9742007a, 0x2442000a, 0xa001bda, +0xa7620012, 0xa7620012, 0xe000fac, 0x2002021, +0x9362007d, 0x24030001, 0x2002021, 0x34420001, +0xa001bd8, 0xafa30038, 0x1840000a, 0x0, +0xe000fac, 0x2002021, 0x9362007d, 0x24030001, +0x2002021, 0xafa30038, 0x34420004, 0xe000fb5, +0xa362007d, 0x9362003e, 0x30420040, 0x1440000c, +0x32620001, 0x1040000a, 0x0, 0x8f630040, +0x8fc20004, 0x24040018, 0x24630001, 0x40f809, +0xaf630040, 0x8fa20030, 0xa001c21, 0x30420004, +0x8f620058, 0x10520010, 0x0, 0x8f620018, +0x2221023, 0x1c400008, 0x24020001, 0x8f620018, +0x16220009, 0x0, 0x8f62001c, 0x2821023, +0x4400005, 0x24020001, 0xaf720058, 0xafa20038, +0xaf710018, 0xaf74001c, 0x12e0000b, 0x8fa30038, +0xe000fac, 0x2002021, 0xa377003f, 0xe000fb5, +0x2002021, 0x2e03021, 0x24040037, 0xe001112, +0x2821, 0x8fa30038, 0x10600003, 0x0, +0xe001a30, 0x2002021, 0x12a00005, 0x1821, +0x8fa20030, 0x30420004, 0x50400011, 0x601021, +0x24030001, 0xa001c21, 0x601021, 0xe000fac, +0x2002021, 0x9362007d, 0x2002021, 0x34420004, +0xe000fb5, 0xa362007d, 0xe001a30, 0x2002021, +0xa001c21, 0x24020001, 0xaf400044, 0x24020001, +0x8fbf0064, 0x8fbe0060, 0x8fb7005c, 0x8fb60058, +0x8fb50054, 0x8fb40050, 0x8fb3004c, 0x8fb20048, +0x8fb10044, 0x8fb00040, 0x3e00008, 0x27bd0068, +0x0 }; +u32 bce_RXP_b06FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_RXP_b06FwRodata[(0x3c/4) + 1] = { +0x80043e0, 0x80043e0, 0x8004358, +0x8004390, 0x80043c4, 0x80043e8, 0x80043e8, +0x80043e8, 0x80042c8, 0x80065f4, 0x8006864, +0x8006560, 0x8006630, 0x80065b4, 0x80066e8, +0x0 }; +u32 bce_RXP_b06FwBss[(0x44c/4) + 1] = { 0x0 }; +u32 bce_RXP_b06FwSbss[(0x54/4) + 1] = { 0x0 }; +u32 bce_RXP_b06FwSdata[(0x0/4) + 1] = { 0x0 }; -static u32 bce_rv2p_proc1[] = { - 0x00000008, 0xac000001, 0x0000000c, 0x2f800001, 0x00000010, 0x203f0146, - 0x00000010, 0x213f0003, 0x00000010, 0x20bf002b, 0x00000018, 0x8000fffd, - 0x00000010, 0xb1b8b017, 0x0000000b, 0x2fdf0002, 0x00000000, 0x03d80000, - 0x00000000, 0x2c380000, 0x00000008, 0x2c800000, 0x00000008, 0x2d000000, - 0x00000010, 0x91d40000, 0x00000008, 0x2d800108, 0x00000008, 0x02000002, - 0x00000010, 0x91de0000, 0x0000000f, 0x42e0001c, 0x00000010, 0x91840a08, - 0x00000008, 0x2c8000b0, 0x00000008, 0x2d000008, 0x00000008, 0x2d800150, - 0x00000000, 0x00000000, 0x00000010, 0x91de0000, 0x00000010, 0x2c620002, - 0x00000018, 0x80000012, 0x0000000b, 0x2fdf0002, 0x0000000c, 0x1f800002, - 0x00000000, 0x2c070000, 0x00000018, 0x8000ffe6, 0x00000008, 0x02000002, - 0x0000000f, 0x42e0001c, 0x00000010, 0x91840a08, 0x00000008, 0x2c8000b0, - 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, 0x00000008, 0x2d800108, - 0x00000000, 0x00000000, 0x00000010, 0x91de0000, 0x00000018, 0x80000004, - 0x0000000c, 0x1f800002, 0x00000000, 0x00000000, 0x00000018, 0x8000ffd9, - 0x0000000c, 0x29800002, 0x0000000c, 0x1f800002, 0x00000000, 0x2adf0000, - 0x00000008, 0x2a000005, 0x00000018, 0x8000ffd4, 0x00000008, 0x02240030, - 0x00000018, 0x00040000, 0x00000018, 0x80000016, 0x00000018, 0x80000018, - 0x00000018, 0x8000001c, 0x00000018, 0x8000004d, 0x00000018, 0x8000008d, - 0x00000018, 0x80000010, 0x00000018, 0x8000000f, 0x00000018, 0x8000000e, - 0x00000018, 0x8000000d, 0x00000018, 0x800000c3, 0x00000018, 0x8000000b, - 0x00000018, 0x8000000a, 0x00000018, 0x80000009, 0x00000018, 0x800000fe, - 0x00000018, 0x80000007, 0x00000018, 0x80000006, 0x00000018, 0x80000100, - 0x00000018, 0x80000105, 0x00000018, 0x80000003, 0x00000018, 0x80000099, - 0x00000018, 0x80000123, 0x00000018, 0x80000000, 0x0000000c, 0x1f800001, - 0x00000000, 0x00000000, 0x00000018, 0x8000ffb9, 0x00000010, 0x91d40000, - 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, 0x00000008, 0x2a000002, - 0x00000018, 0x8000ffb4, 0x00000010, 0xb1a0b012, 0x0000000b, 0x2fdf0002, - 0x00000000, 0x2c200000, 0x00000008, 0x2c800000, 0x00000008, 0x2d000000, - 0x00000010, 0x91d40000, 0x00000008, 0x2d80011c, 0x00000000, 0x00000000, - 0x00000010, 0x91de0000, 0x0000000f, 0x47600008, 0x0000000f, 0x060e0001, - 0x00000010, 0x001f0000, 0x00000000, 0x0f580000, 0x00000000, 0x0a640000, - 0x00000000, 0x0ae50000, 0x00000000, 0x0b660000, 0x00000000, 0x0d610000, - 0x00000018, 0x80000013, 0x0000000f, 0x47600008, 0x0000000b, 0x2fdf0002, - 0x00000008, 0x2c800000, 0x00000008, 0x2d000000, 0x00000010, 0x91d40000, - 0x00000008, 0x2d80011c, 0x0000000f, 0x060e0001, 0x00000010, 0x001f0000, - 0x00000000, 0x0f580000, 0x00000010, 0x91de0000, 0x00000000, 0x0a640000, - 0x00000000, 0x0ae50000, 0x00000000, 0x0b660000, 0x00000000, 0x0d610000, - 0x00000000, 0x02620000, 0x0000000b, 0x2fdf0002, 0x00000000, 0x309a0000, - 0x00000000, 0x31040000, 0x00000000, 0x0c961800, 0x00000009, 0x0c99ffff, - 0x00000004, 0xcc993400, 0x00000010, 0xb1963202, 0x00000008, 0x0f800000, - 0x0000000c, 0x29800001, 0x00000010, 0x00220002, 0x0000000c, 0x29520001, - 0x0000000c, 0x29520000, 0x00000008, 0x22000001, 0x0000000c, 0x1f800001, - 0x00000000, 0x2adf0000, 0x00000008, 0x2a000003, 0x00000018, 0x8000ff82, - 0x00000010, 0xb1a0b01d, 0x0000000b, 0x2fdf0002, 0x00000000, 0x2c200000, - 0x00000008, 0x2c8000b0, 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, - 0x00000008, 0x2d800150, 0x00000000, 0x00000000, 0x00000010, 0x205f0000, - 0x00000008, 0x2c800000, 0x00000008, 0x2d000000, 0x00000008, 0x2d800108, - 0x00000000, 0x00000000, 0x00000010, 0x91de0000, 0x0000000f, 0x47600008, - 0x00000000, 0x060e0000, 0x00000010, 0x001f0000, 0x00000000, 0x0f580000, - 0x00000010, 0x91de0000, 0x00000000, 0x0a640000, 0x00000000, 0x0ae50000, - 0x00000000, 0x0b670000, 0x00000000, 0x0d620000, 0x00000000, 0x0ce71800, - 0x00000009, 0x0c99ffff, 0x00000004, 0xcc993400, 0x00000010, 0xb1963220, - 0x00000008, 0x0f800000, 0x00000018, 0x8000001e, 0x0000000f, 0x47600008, - 0x0000000b, 0x2fdf0002, 0x00000008, 0x2c8000b0, 0x00000008, 0x2d000008, - 0x00000010, 0x91d40000, 0x00000008, 0x2d80012c, 0x0000000f, 0x060e0001, - 0x00000010, 0x001f0000, 0x00000000, 0x0f580000, 0x00000010, 0x91de0000, - 0x00000000, 0x0a640000, 0x00000000, 0x0ae50000, 0x00000000, 0x0b670000, - 0x00000000, 0x0d620000, 0x00000000, 0x02630000, 0x0000000f, 0x47620010, - 0x00000000, 0x0ce71800, 0x0000000b, 0x2fdf0002, 0x00000000, 0x311a0000, - 0x00000000, 0x31840000, 0x0000000b, 0xc20000ff, 0x00000002, 0x42040000, - 0x00000001, 0x31620800, 0x0000000f, 0x020e0010, 0x00000002, 0x31620800, - 0x00000009, 0x0c99ffff, 0x00000004, 0xcc993400, 0x00000010, 0xb1963202, - 0x00000008, 0x0f800000, 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, - 0x0000000c, 0x61420006, 0x00000008, 0x22000008, 0x00000000, 0x2adf0000, - 0x00000008, 0x2a000004, 0x00000018, 0x8000ff41, 0x00000008, 0x2c8000b0, - 0x00000008, 0x2d000008, 0x00000010, 0x91a0b008, 0x00000010, 0x91d40000, - 0x0000000c, 0x31620018, 0x00000008, 0x2d800001, 0x00000000, 0x00000000, - 0x00000010, 0x91de0000, 0x00000008, 0xac000001, 0x00000018, 0x8000000e, - 0x00000000, 0x0380b000, 0x0000000b, 0x2fdf0002, 0x00000000, 0x2c004000, - 0x00000010, 0x91d40000, 0x00000008, 0x2d800101, 0x00000000, 0x00000000, - 0x00000010, 0x91de0000, 0x0000000c, 0x31620018, 0x00000008, 0x2d800001, - 0x00000000, 0x00000000, 0x00000010, 0x91de0000, 0x0000000b, 0x2fdf0002, - 0x00000000, 0x2c000e00, 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, - 0x00000008, 0x2a000007, 0x00000018, 0x8000ff26, 0x00000010, 0xb1a0b016, - 0x0000000b, 0x2fdf0002, 0x00000000, 0x03d80000, 0x00000000, 0x2c200000, - 0x00000008, 0x2c8000b0, 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, - 0x00000008, 0x2d800150, 0x00000000, 0x00000000, 0x00000010, 0x205f0000, - 0x00000008, 0x2c800000, 0x00000008, 0x2d000000, 0x00000008, 0x2d800108, - 0x00000008, 0x07000001, 0x00000010, 0xb5de1c00, 0x00000010, 0x2c620002, - 0x00000018, 0x8000000a, 0x0000000b, 0x2fdf0002, 0x00000000, 0x2c070000, - 0x0000000c, 0x1f800001, 0x00000010, 0x91de0000, 0x00000018, 0x8000ff10, - 0x00000008, 0x2c8000b0, 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, - 0x00000008, 0x2d800108, 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, - 0x00000010, 0x91de0000, 0x00000000, 0x2adf0000, 0x00000008, 0x2a00000a, - 0x00000018, 0x8000ff06, 0x00000000, 0x82265600, 0x0000000f, 0x47220008, - 0x00000009, 0x070e000f, 0x00000008, 0x070e0008, 0x00000008, 0x02800001, - 0x00000007, 0x02851c00, 0x00000008, 0x82850001, 0x00000000, 0x02840a00, - 0x00000007, 0x42851c00, 0x00000003, 0xc3aa5200, 0x00000000, 0x03b10e00, - 0x00000010, 0x001f0000, 0x0000000f, 0x0f280007, 0x00000007, 0x4b071c00, - 0x00000000, 0x00000000, 0x0000000f, 0x0a960003, 0x00000000, 0x0a955c00, - 0x00000000, 0x4a005a00, 0x00000000, 0x0c960a00, 0x00000009, 0x0c99ffff, - 0x00000008, 0x0d00ffff, 0x00000010, 0xb1963202, 0x00000008, 0x0f800005, - 0x00000010, 0x00220020, 0x00000000, 0x02a70000, 0x00000010, 0xb1850002, - 0x00000008, 0x82850200, 0x00000000, 0x02000000, 0x00000000, 0x03a60000, - 0x00000018, 0x80000053, 0x00000000, 0x072b0000, 0x00000001, 0x878c1c00, - 0x00000000, 0x870e1e00, 0x00000000, 0x860c1e00, 0x00000000, 0x03061e00, - 0x00000010, 0xb18e0003, 0x00000018, 0x8000004c, 0x00000018, 0x8000fffa, - 0x00000010, 0x918c0003, 0x00000010, 0xb1870002, 0x00000018, 0x80000048, - 0x00000010, 0x91d40000, 0x0000000c, 0x29800001, 0x00000000, 0x2a860000, - 0x00000000, 0x230c0000, 0x00000000, 0x2b070000, 0x00000010, 0xb187000e, - 0x00000008, 0x2a000008, 0x00000018, 0x80000040, 0x00000010, 0x91d40000, - 0x00000000, 0x28d18c00, 0x00000000, 0x2a860000, 0x00000000, 0x230c0000, - 0x00000000, 0x2b070000, 0x00000018, 0x8000fff8, 0x00000010, 0x91d40000, - 0x0000000c, 0x29800001, 0x00000000, 0x2aab0000, 0x00000000, 0xa3265600, - 0x00000000, 0x2b000000, 0x0000000c, 0x1f800001, 0x00000008, 0x2a000008, - 0x00000018, 0x8000fec7, 0x00000010, 0x91d40000, 0x0000000c, 0x29800001, - 0x0000000c, 0x1f800001, 0x00000008, 0x2a000009, 0x00000018, 0x8000fec2, - 0x00000010, 0x91d40000, 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, - 0x00000000, 0x29420000, 0x00000008, 0x2a000002, 0x00000018, 0x8000febc, - 0x00000018, 0x8000febb, 0x00000010, 0xb1bcb016, 0x0000000b, 0x2fdf0002, - 0x00000000, 0x03d80000, 0x00000000, 0x2c3c0000, 0x00000008, 0x2c8000b0, - 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, 0x00000008, 0x2d800150, - 0x00000000, 0x00000000, 0x00000010, 0x205f0000, 0x00000008, 0x2c800000, - 0x00000008, 0x2d000000, 0x00000008, 0x2d800108, 0x00000008, 0x07000001, - 0x00000010, 0xb5de1c00, 0x00000010, 0x2c620002, 0x00000018, 0x8000000a, - 0x0000000b, 0x2fdf0002, 0x00000000, 0x2c070000, 0x0000000c, 0x1f800000, - 0x00000010, 0x91de0000, 0x00000018, 0x8000fea5, 0x00000008, 0x2c8000b0, - 0x00000008, 0x2d000008, 0x00000010, 0x91d40000, 0x00000008, 0x2d800108, - 0x0000000c, 0x29800000, 0x0000000c, 0x1f800000, 0x00000010, 0x91de0000, - 0x00000000, 0x2adf0000, 0x00000008, 0x2a000006, 0x00000018, 0x8000fe9b, - 0x00000010, 0x91d40000, 0x0000000c, 0x29800001, 0x0000000c, 0x1f800001, - 0x00000008, 0x2a00000b, 0x00000018, 0x8000fe96, 0x00000008, 0x03050004, - 0x00000006, 0x83040c00, 0x00000008, 0x02850200, 0x00000000, 0x86050c00, - 0x00000001, 0x860c0e00, 0x00000008, 0x02040004, 0x00000000, 0x02041800, - 0x00000000, 0x83871800, 0x00000018, 0x00020000 +int bce_TPAT_b06FwReleaseMajor = 0x1; +int bce_TPAT_b06FwReleaseMinor = 0x0; +int bce_TPAT_b06FwReleaseFix = 0x0; +u32 bce_TPAT_b06FwStartAddr = 0x08000488; +u32 bce_TPAT_b06FwTextAddr = 0x08000400; +int bce_TPAT_b06FwTextLen = 0x1a90; +u32 bce_TPAT_b06FwDataAddr = 0x00000000; +int bce_TPAT_b06FwDataLen = 0x0; +u32 bce_TPAT_b06FwRodataAddr = 0x00000000; +int bce_TPAT_b06FwRodataLen = 0x0; +u32 bce_TPAT_b06FwBssAddr = 0x08001f04; +int bce_TPAT_b06FwBssLen = 0x450; +u32 bce_TPAT_b06FwSbssAddr = 0x08001ec0; +int bce_TPAT_b06FwSbssLen = 0x44; +u32 bce_TPAT_b06FwSDataAddr = 0x00000000; +int bce_TPAT_b06FwSDataLen = 0x0; +u32 bce_TPAT_b06FwText[(0x1a90/4) + 1] = { +0xa000122, +0x0, 0x0, 0xd, 0x74706134, +0x2e342e31, 0x37000000, 0x4041101, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x10000003, 0x0, +0xd, 0xd, 0x3c020800, 0x24421ec0, +0x3c030800, 0x24632354, 0xac400000, 0x43202b, +0x1480fffd, 0x24420004, 0x3c1d0800, 0x37bd2ffc, +0x3a0f021, 0x3c100800, 0x26100488, 0x3c1c0800, +0x279c1ec0, 0xe00055f, 0x0, 0xd, +0x8ca30000, 0x663021, 0xc3102b, 0x10400004, +0xaca60000, 0x8c870000, 0x24e50001, 0xac850000, +0x3e00008, 0x0, 0x3c096008, 0x8d245000, +0x2407ff7f, 0x3c1a8000, 0x872824, 0x34a2380c, +0xad225000, 0x8f590008, 0x3c08601c, 0x3c096000, +0x37380001, 0xaf580008, 0xaf800028, 0xaf400080, +0xaf400084, 0x8d070008, 0x8d2f0808, 0x3c086016, +0x8d0c0000, 0x31eefff0, 0x39ca0010, 0x3c0dffff, +0x340b8000, 0x3c030080, 0x34b3021, 0x2d440001, +0x18d2824, 0x3c025353, 0x3c010800, 0xac230420, +0xaf86001c, 0xaf870010, 0xaf840014, 0x35037c00, +0x10a20006, 0x275b4000, 0x8c6a007c, 0x8c630078, +0xaf8a0038, 0x3e00008, 0xaf830020, 0x8d060004, +0xc91821, 0x8c6a007c, 0x8c630078, 0xaf8a0038, +0x3e00008, 0xaf830020, 0x3084ffff, 0x30820007, +0x8f850028, 0x10400002, 0x24830007, 0x3064fff8, +0x853021, 0x30c41fff, 0x3441821, 0x247b4000, +0xaf850018, 0xaf840028, 0x3e00008, 0xaf440084, +0x3084ffff, 0x30820007, 0x8f850040, 0x8f860010, +0x10400002, 0x24830007, 0x3064fff8, 0x852021, +0x86182b, 0x14600002, 0xaf85002c, 0x862023, +0x3442821, 0x34068000, 0xaf840040, 0xaf440080, +0xa62021, 0x3e00008, 0xaf84001c, 0x8f860034, +0x3c020001, 0x822025, 0x30c30002, 0x30c50004, +0x10600004, 0x1021, 0x3c070100, 0x872025, +0x24020001, 0x50a0000b, 0xaf820030, 0x3c080010, +0x882025, 0x24050001, 0xaf850030, 0xaf441000, +0x0, 0x0, 0x0, 0x3e00008, +0x0, 0xaf441000, 0x0, 0x0, +0x0, 0x3e00008, 0x0, 0x8f820030, +0x10400004, 0x0, 0x8f431000, 0x461fffe, +0x0, 0x3e00008, 0x0, 0x8f420178, +0x440fffe, 0x8f87001c, 0x24060800, 0x24050008, +0x8ce30008, 0xaf460178, 0xa7450140, 0xa7400142, +0x97440104, 0x8f860034, 0x3089ffff, 0x30c30001, +0x10600091, 0x1204021, 0x252afffe, 0x240b0002, +0xa74b0146, 0x3148ffff, 0xa74a0148, 0x3c0c0800, +0x8d8c043c, 0x1580008a, 0x8f990024, 0x30cd0020, +0x15a00002, 0x24040009, 0x24040001, 0x30cf0c00, +0x240e0400, 0x51ee0001, 0x34840004, 0xa744014a, +0x3c050800, 0x8ca50420, 0x3c0c0048, 0x3c0b0001, +0xac1825, 0x30ca0002, 0x6b2825, 0x11400004, +0x1821, 0x3c0d0100, 0xad2825, 0x24030001, +0x30ce0004, 0x51c00005, 0xaf830030, 0x3c060010, +0xa62825, 0x24030001, 0xaf830030, 0xaf451000, +0x0, 0x0, 0x0, 0x0, +0x8f830030, 0x10600023, 0x0, 0x8f4f1000, +0x5e1fffe, 0x0, 0x1060001e, 0x0, +0x8f591000, 0x3c020020, 0x322c024, 0x13000019, +0x8f8a0034, 0x31440002, 0x10800016, 0x0, +0x974b1014, 0x15600013, 0x0, 0x974e1008, +0x31c5ffff, 0x24ad0006, 0xd1882, 0x33080, +0xc72821, 0x31ac0001, 0x31a30003, 0x118000a0, +0x8ca20000, 0xd, 0xc7c021, 0xaf020000, +0x3c050800, 0x8ca50430, 0x24a60001, 0x3c010800, +0xac260430, 0x8f6a0000, 0x3419ffff, 0xaf8a000c, +0x8ce20000, 0x10590064, 0x0, 0x8cf80000, +0x33050100, 0x10a00048, 0x0, 0x3c020800, +0x8c420448, 0x485021, 0x142c82b, 0x3c010800, +0xac2a0448, 0x13200006, 0x0, 0x3c0b0800, +0x8d6b044c, 0x25670001, 0x3c010800, 0xac27044c, +0x3c0d0800, 0x8dad0470, 0x1a86021, 0x18d202b, +0x3c010800, 0xac2c0470, 0x10800007, 0x8f990028, +0x3c0e0800, 0x8dce0474, 0x25c80001, 0x3c010800, +0xac280474, 0x8f990028, 0x1203021, 0x31290007, +0x272a0008, 0x31451fff, 0x345c021, 0xaf990018, +0xaf850028, 0x271b4000, 0xaf450084, 0x11200003, +0x8f8b0040, 0x24c20007, 0x3046fff8, 0x8f840010, +0xcb2821, 0xa4382b, 0x14e00002, 0xaf8b002c, +0xa42823, 0x3456821, 0x34088000, 0x1a86021, +0x3c041000, 0xaf850040, 0xaf8c001c, 0xaf450080, +0x3e00008, 0xaf440178, 0xa0001cc, 0xa7400146, +0x24180f00, 0x13380006, 0x30c40020, 0x14800002, +0x24030009, 0x24030001, 0xa0001d9, 0xa743014a, +0x30c20020, 0x1440fffc, 0x2403000d, 0x24030005, +0xa0001d9, 0xa743014a, 0x94e50008, 0x94ea000a, +0x94f9000c, 0x8f830020, 0xa3400, 0x3338ffff, +0x30afffff, 0x11e3002c, 0xd82025, 0x3c030800, +0x8c630440, 0x687021, 0x1c3402b, 0x3c010800, +0xac2e0440, 0x5100ffc4, 0x8f990028, 0x3c060800, +0x8cc60444, 0x24cf0001, 0x3c010800, 0xac2f0444, +0xa00023b, 0x8f990028, 0x3c040800, 0x8c840450, +0x885821, 0x164382b, 0x3c010800, 0xac2b0450, +0x10e00006, 0x0, 0x3c0d0800, 0x8dad0454, +0x25ac0001, 0x3c010800, 0xac2c0454, 0x3c030800, +0x8c630478, 0x687021, 0x1c3402b, 0x3c010800, +0xac2e0478, 0x5100ffa8, 0x8f990028, 0x3c060800, +0x8cc6047c, 0x24cf0001, 0x3c010800, 0xac2f047c, +0xa00023b, 0x8f990028, 0x8f820038, 0x1482ffd3, +0x0, 0x3c040800, 0x8c840468, 0x885821, +0x164382b, 0x3c010800, 0xac2b0468, 0x50e0ff96, +0x8f990028, 0x3c0d0800, 0x8dad046c, 0x25ac0001, +0x3c010800, 0xac2c046c, 0xa00023b, 0x8f990028, +0x14600010, 0x304effff, 0x3c04ffff, 0x441024, +0x445026, 0xac82b, 0x2c02b, 0x3197824, +0x11e00005, 0x0, 0x0, 0xd, +0x0, 0x2400019f, 0x8cab0000, 0xa00020f, +0x1641025, 0x39c3ffff, 0x3682b, 0xe602b, +0x18d2024, 0x10800005, 0x0, 0x0, +0xd, 0x0, 0x240001a8, 0x8caf0000, +0xa00020f, 0x35e2ffff, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0x8f420178, 0x440fffe, 0x8f860034, +0x30c30200, 0x14600006, 0x66a82, 0x0, +0xd, 0x0, 0x24000200, 0x66a82, +0x31aa0003, 0xa6100, 0x18a5821, 0xb4880, +0x12a4021, 0x83880, 0x3c050800, 0x24a51f04, +0xe58021, 0x8e040000, 0x10800005, 0x0, +0x0, 0xd, 0x0, 0x24000204, +0x8f6e000c, 0x5c000c7, 0x8f85001c, 0x24020001, +0xae020000, 0x8ca30008, 0xa2000007, 0x8f7f0004, +0x1fc402, 0x330600ff, 0x24d90005, 0x193083, +0x2ccf0041, 0x15e00005, 0xa2180004, 0x0, +0xd, 0x0, 0x24000218, 0xe00065d, +0x26040014, 0x8f670004, 0x8f450108, 0x3c041000, +0xa41824, 0x106000a4, 0xa6070008, 0x974b0104, +0x920a0007, 0x2569ffec, 0x35480002, 0x3124ffff, +0xa2080007, 0x8f780004, 0x330fffff, 0x2dee0013, +0x55c00005, 0x92030007, 0x92060007, 0x34d90001, +0xa2190007, 0x92030007, 0x241f0001, 0x107f0096, +0x24020003, 0x1062009d, 0x8f88001c, 0x8f650004, +0x960e0008, 0x3c19ffff, 0x30a3ffff, 0x247f0002, +0x1f3083, 0x30c700ff, 0x72080, 0xa2060005, +0x884821, 0x8d380000, 0x974f0104, 0x3c07ff7f, +0x3195824, 0x31edffff, 0x1ae6023, 0x2582fffe, +0x1625025, 0xad2a0000, 0x92040005, 0x3c0cfff6, +0x358bffff, 0x308500ff, 0x51880, 0x70f821, +0x93e60014, 0x34ffffff, 0x30d9000f, 0x3246821, +0x31b800ff, 0x187080, 0x1d07821, 0x8dea0020, +0x1c84821, 0xa20d0006, 0x14b1024, 0xae0a000c, +0xad22000c, 0x92050006, 0x8e06000c, 0x5fc824, +0x51880, 0x70c021, 0x970f0026, 0xdf2024, +0x687021, 0xae04000c, 0xaf190020, 0xaf0f0024, +0xadcf0010, 0x8f860034, 0x240c0010, 0x24020002, +0xa74c0140, 0xa7400142, 0xa7400144, 0xa7420146, +0x974b0104, 0x24090001, 0x30c80002, 0x256afffe, +0xa74a0148, 0x3c050009, 0xa749014a, 0x11000003, +0x1821, 0x3c050109, 0x24030001, 0x30cd0004, +0x51a00005, 0xaf830030, 0x3c0e0010, 0xae2825, +0x24030001, 0xaf830030, 0xaf451000, 0x0, +0x0, 0x0, 0x0, 0x92060004, +0x24c40002, 0x30990007, 0x19c023, 0x330f0007, +0xae0f0010, 0x8f900030, 0x12000004, 0x0, +0x8f471000, 0x4e1fffe, 0x0, 0x8f6b0000, +0x3c030800, 0x8c630440, 0xaf8b000c, 0x974a0104, +0x3149ffff, 0x2528fffe, 0x682821, 0xa3f82b, +0x3c010800, 0xac250440, 0x13e00007, 0x8f980028, +0x3c0c0800, 0x8d8c0444, 0x25820001, 0x3c010800, +0xac220444, 0x8f980028, 0x27190010, 0x332f1fff, +0xaf980018, 0xaf8f0028, 0xaf4f0084, 0x974e0104, +0x34f8021, 0x31c4ffff, 0x308d0007, 0x11a00003, +0x261b4000, 0x24860007, 0x30c4fff8, 0x8f9f0040, +0x8f850010, 0x9f2021, 0x85382b, 0x14e00002, +0xaf9f002c, 0x852023, 0x8fbf0014, 0x8fb00010, +0x3444021, 0x34038000, 0xaf840040, 0x1032821, +0xaf440080, 0x27bd0018, 0x3c041000, 0xaf85001c, +0x3e00008, 0xaf440178, 0x974d0104, 0x25acfff0, +0xa00030a, 0x3184ffff, 0x8f88001c, 0x3c09ffff, +0x8d07000c, 0xe92824, 0xa41825, 0xa000318, +0xad03000c, 0xa00034b, 0xae000000, 0x3c0dffff, +0x8d0c0010, 0x18d5824, 0x1645025, 0xa000318, +0xad0a0010, 0x27bdffe0, 0xafbf0018, 0xafb10014, +0xafb00010, 0x8f420178, 0x440fffe, 0x8f830034, +0x30640200, 0x14800006, 0x36282, 0x0, +0xd, 0x0, 0x24000287, 0x36282, +0x31890003, 0x95900, 0x1695021, 0xa4080, +0x1093821, 0x73080, 0x3c050800, 0x24a51f04, +0xc58021, 0x8e030000, 0x14600005, 0x0, +0x0, 0xd, 0x0, 0x2400028b, +0x8f6d0004, 0x5a20099, 0x92180006, 0x92070005, +0x920d0004, 0x3c0c0001, 0x72880, 0xb04821, +0x8d2b0018, 0x27710008, 0x25a60005, 0x16c5021, +0xad2a0018, 0x63082, 0x2202021, 0xe00065d, +0x26050014, 0x92080006, 0x8f7f0004, 0x3c027fff, +0x82080, 0x917021, 0x8dd80004, 0x3443ffff, +0x3e3c824, 0x3197821, 0xadcf0004, 0x92070005, +0x920b0004, 0x96060008, 0x72880, 0xb1f821, +0x8fed0000, 0x974c0104, 0x3c07ffff, 0x1a71824, +0x318affff, 0x14b4821, 0x1264023, 0x3102ffff, +0x622025, 0xafe40000, 0x92030007, 0x24190001, +0x10790063, 0x240e0003, 0x106e0072, 0x0, +0x8e190010, 0x241f000a, 0xa75f0140, 0xa7590142, +0x92180004, 0x8f850034, 0x24070001, 0xa7580144, +0xa7400146, 0x974f0104, 0x30b10002, 0x3c060041, +0xa74f0148, 0x1821, 0xa747014a, 0x12200003, +0x30a20004, 0x3c060141, 0x24030001, 0x50400005, +0xaf830030, 0x3c030010, 0xc33025, 0x24030001, +0xaf830030, 0xaf461000, 0x0, 0x0, +0x0, 0x0, 0x8f880030, 0x11000004, +0x0, 0x8f441000, 0x481fffe, 0x0, +0x8f6e0000, 0x92050004, 0x3c0a0800, 0x8d4a0440, +0xaf8e000c, 0x974d0104, 0x30ab00ff, 0x31acffff, +0x16c3021, 0x1464821, 0x12a802b, 0x3c010800, +0xac290440, 0x12000006, 0x30b800ff, 0x3c070800, +0x8ce70444, 0x24f10001, 0x3c010800, 0xac310444, +0x270f000a, 0x31e2ffff, 0x30450007, 0x10a00003, +0x8f840028, 0x24590007, 0x3322fff8, 0x448021, +0x32021fff, 0xaf840018, 0xaf820028, 0xaf420084, +0x97480104, 0x3421821, 0x3104ffff, 0x309f0007, +0x13e00003, 0x247b4000, 0x24890007, 0x3124fff8, +0x8f860040, 0x8f850010, 0x862021, 0x85502b, +0x15400002, 0xaf86002c, 0x852023, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x3446821, 0x340e8000, +0x1ae6021, 0x3c0b1000, 0x27bd0020, 0xaf840040, +0xaf8c001c, 0xaf440080, 0x3e00008, 0xaf4b0178, +0x97480104, 0x92040004, 0x8e23000c, 0x1041021, +0x245ffff2, 0x67c024, 0x33f9ffff, 0x3197825, +0xae2f000c, 0xa00040a, 0x8e190010, 0x8e0f000c, +0xae000000, 0x188880, 0x2307021, 0xa0003dc, +0xadcf0020, 0x97450104, 0x920e0004, 0x8e2c0010, +0xae6821, 0x25abffee, 0x1875024, 0x3166ffff, +0x1464825, 0xae290010, 0xa00040a, 0x8e190010, +0x8f830034, 0x30624000, 0x1040000c, 0x0, +0x8f620008, 0x8f660000, 0x24040030, 0x62e02, +0x30a300f0, 0x10640007, 0x24070040, 0x10670007, +0x0, 0x3e00008, 0x0, 0xa0001b8, +0x0, 0xa0002cb, 0x0, 0xa0003ba, +0x0, 0x8f620000, 0x97430104, 0x3046ffff, +0x3067ffff, 0x8f440178, 0x480fffe, 0x30cd0007, +0xd6023, 0x318a0007, 0x24c9fffe, 0x240b000a, +0xa74b0140, 0xa74a0142, 0xa7490144, 0xa7400146, +0xa7470148, 0x8f480108, 0x31050020, 0x14a00002, +0x24040009, 0x24040001, 0x8f830034, 0xa744014a, +0x2821, 0x306e0002, 0x11c00003, 0x3c040041, +0x3c040141, 0x24050001, 0x306f0004, 0x51e00005, +0xaf850030, 0x3c190010, 0x24180001, 0x992025, +0xaf980030, 0xaf441000, 0x0, 0x0, +0x0, 0x0, 0x8f830030, 0x10600004, +0x0, 0x8f421000, 0x441fffe, 0x0, +0x8f6e0000, 0x276d0008, 0x8f880020, 0xaf8e000c, +0x95ac0008, 0x95ab000a, 0x95aa000c, 0x3185ffff, +0xb2400, 0x3149ffff, 0x10a80039, 0x892025, +0x3c0b0800, 0x8d6b0440, 0xc76821, 0x25acfffe, +0x16c5021, 0x14b482b, 0x3c010800, 0xac2a0440, +0x11200006, 0x24d80008, 0x3c0f0800, 0x8def0444, +0x25ee0001, 0x3c010800, 0xac2e0444, 0x3302ffff, +0x30460007, 0x10c00003, 0x8f830028, 0x24590007, +0x3322fff8, 0x30e6ffff, 0x30c70007, 0x432821, +0x30a21fff, 0x3424021, 0xaf830018, 0xaf820028, +0x251b4000, 0xaf420084, 0x10e00003, 0x8f8a0040, +0x24c40007, 0x3086fff8, 0x8f840010, 0xca2821, +0xa4482b, 0x15200002, 0xaf8a002c, 0xa42823, +0xaf850040, 0xaf450080, 0x3c0b0800, 0x8d6b0434, +0x3456821, 0x340e8000, 0x1ae6021, 0x11600005, +0xaf8c001c, 0x9386003f, 0x240f000e, 0x50cf0017, +0x2418043f, 0x3c191000, 0x3e00008, 0xaf590178, +0x8f8f0038, 0x148fffc6, 0xc74021, 0x3c030800, +0x8c630468, 0x2502fffe, 0x62c821, 0x323c02b, +0x3c010800, 0xac390468, 0x1300ffcc, 0x24d80008, +0x3c040800, 0x8c84046c, 0x24850001, 0x3c010800, +0xac25046c, 0xa0004e5, 0x3302ffff, 0x3c191000, +0xa7580148, 0x3e00008, 0xaf590178, 0x8f420178, +0x440fffe, 0x8f840034, 0x30834000, 0x10600006, +0x3c090008, 0x0, 0xd, 0x0, +0x24000378, 0x3c090008, 0xaf490140, 0x24080800, +0xaf480178, 0x8f870034, 0x97460104, 0x30e50001, +0x10a00026, 0x30c4ffff, 0x248afffe, 0x240b0002, +0xa74b0146, 0xa74a0148, 0x8f8f0028, 0x2402000d, +0xa742014a, 0x8f780000, 0x25f90008, 0x332e1fff, +0x34e6821, 0x308c0007, 0xaf98000c, 0xaf8f0018, +0xaf8e0028, 0x803821, 0xaf4e0084, 0x11800003, +0x25bb4000, 0x24830007, 0x3067fff8, 0x8f880040, +0x8f850010, 0xe82021, 0x85302b, 0x14c00002, +0xaf88002c, 0x852023, 0x3443821, 0x34098000, +0xaf840040, 0xe92821, 0xaf440080, 0x3c041000, +0xaf85001c, 0x3e00008, 0xaf440178, 0xa7400146, +0xa00053c, 0x8f8f0028, 0x27bdffe0, 0xafb00010, +0xafbf0018, 0xafb10014, 0x3c086008, 0x8d1f5000, +0x2402ff7f, 0x3c1a8000, 0x3e2c824, 0x3738380c, +0xad185000, 0x8f510008, 0x3c07601c, 0x3c086000, +0x36300001, 0xaf500008, 0xaf800028, 0xaf400080, +0xaf400084, 0x8ce60008, 0x8d0f0808, 0x3c076016, +0x8cec0000, 0x31eefff0, 0x39ca0010, 0x3c0dffff, +0x340b8000, 0x3c030080, 0x34b4821, 0x2d440001, +0x18d2824, 0x3c025353, 0x3c010800, 0xac230420, +0xaf89001c, 0xaf860010, 0xaf840014, 0x275b4000, +0x14a20003, 0x34e37c00, 0x8ce50004, 0xa81821, +0x8c64007c, 0x8c630078, 0x3c068000, 0x34d00070, +0xaf830020, 0xaf840038, 0x2008821, 0x8e080000, +0x8f4b0000, 0x396a0001, 0x31490001, 0x11200017, +0xaf880008, 0x2204821, 0x8d2f0000, 0x3c050800, +0x8ca5045c, 0x3c1f0800, 0x8fff0458, 0x1e81823, +0xa34021, 0x1021, 0x103c82b, 0x3e2c021, +0x3193821, 0x3c010800, 0xac28045c, 0x3c010800, +0xac270458, 0x8f4e0000, 0x39cd0001, 0x31ac0001, +0x1580ffed, 0x1e04021, 0xaf8f0008, 0x8e190000, +0x3c070800, 0x8ce7045c, 0x3c0d0800, 0x8dad0458, +0x328c023, 0xf85021, 0x7021, 0x158602b, +0x1ae5821, 0x16c4821, 0x3c010800, 0xac2a045c, +0x3c010800, 0xac290458, 0x8f430108, 0x8f440100, +0x30662000, 0xaf830034, 0x10c0000a, 0xaf840024, +0x3c1f0800, 0x8fff042c, 0x27e80001, 0x3c010800, +0xac28042c, 0x3c0b4000, 0xaf4b0138, 0xa000590, +0x0, 0x30620200, 0x14400015, 0x24050f00, +0x10850013, 0x240c0d00, 0x108c0026, 0x30620006, +0x1040fff5, 0x3c0b4000, 0x93690000, 0x24060010, +0x312500f0, 0x10a60074, 0x240a0070, 0x10aa0063, +0x0, 0x8f84003c, 0x24830001, 0xaf83003c, +0x3c0b4000, 0xaf4b0138, 0xa000590, 0x0, +0x97440104, 0x1080ffe4, 0x3c0b4000, 0x30664000, +0x10c00050, 0x0, 0x8f620008, 0x8f6a0000, +0x24090030, 0xa1e02, 0x306300f0, 0x10690055, +0x240b0040, 0x146bffec, 0x8f84003c, 0xe0003ba, +0x0, 0x8f84003c, 0x24830001, 0xa0005dd, +0xaf83003c, 0x974d0104, 0x11a0ffcf, 0x3c0b4000, +0x8f4e0178, 0x5c0fffe, 0x306f4000, 0x11e00006, +0x3c1f0008, 0x0, 0xd, 0x0, +0x24000378, 0x3c1f0008, 0xaf5f0140, 0x24080800, +0xaf480178, 0x8f990034, 0x97580104, 0x33270001, +0x10e0003e, 0x3306ffff, 0x24c5fffe, 0x24020002, +0xa7420146, 0xa7450148, 0x8f830028, 0x240c000d, +0xa74c014a, 0x8f640000, 0x246b0008, 0x316a1fff, +0xc03821, 0x34a4821, 0x30c60007, 0xaf84000c, +0xaf830018, 0xaf8a0028, 0x253b4000, 0xaf4a0084, +0x10c00003, 0x8f8f0040, 0x24ed0007, 0x31a7fff8, +0x8f840010, 0xef3021, 0xc4702b, 0x15c00002, +0xaf8f002c, 0xc43023, 0x8f88003c, 0x346f821, +0x34058000, 0x3e5c821, 0x25070001, 0x3c181000, +0x3c0b4000, 0xaf860040, 0xaf99001c, 0xaf460080, +0xaf580178, 0xaf87003c, 0xaf4b0138, 0xa000590, +0x0, 0xe0001b8, 0x0, 0x8f84003c, +0x24830001, 0xa0005dd, 0xaf83003c, 0xe000683, +0x0, 0x8f84003c, 0x24830001, 0xa0005dd, +0xaf83003c, 0xe0002cb, 0x0, 0x8f84003c, +0x24830001, 0xa0005dd, 0xaf83003c, 0xa7400146, +0xa000610, 0x8f830028, 0xe00049a, 0x0, +0x8f84003c, 0x24830001, 0xa0005dd, 0xaf83003c, +0x3084ffff, 0x30a5ffff, 0x10800007, 0x1821, +0x30820001, 0x10400002, 0x42042, 0x651821, +0x1480fffb, 0x52840, 0x3e00008, 0x601021, +0x10c00007, 0x0, 0x8ca20000, 0x24c6ffff, +0x24a50004, 0xac820000, 0x14c0fffb, 0x24840004, +0x3e00008, 0x0, 0x10a00008, 0x24a3ffff, +0xac860000, 0x0, 0x0, 0x2402ffff, +0x2463ffff, 0x1462fffa, 0x24840004, 0x3e00008, +0x0, 0x308effff, 0x30d8ffff, 0x57c00, +0x1f86025, 0x39cdffff, 0x1ac5021, 0x14c582b, +0x14b4821, 0x94402, 0x3127ffff, 0xe83021, +0x62402, 0x30c5ffff, 0xa41821, 0x3862ffff, +0x3e00008, 0x3042ffff, 0x3c0c0800, 0x8d8c0484, +0x240bff80, 0x27bdffd8, 0x1845021, 0x14b4824, +0xaf490020, 0x3c080800, 0x8d080484, 0xafb20018, +0xafb00010, 0xafbf0020, 0xafb3001c, 0xafb10014, +0x93660004, 0x1043821, 0x30e4007f, 0x9a1021, +0x3c030008, 0x439021, 0x30c50020, 0x3608021, +0x3c080111, 0x277b0008, 0x14a00002, 0x26460070, +0x2646006c, 0x92130004, 0x97510104, 0x920f0004, +0x3267000f, 0x322effff, 0x31ed0040, 0x1c72823, +0x11a00005, 0x4821, 0x925900bc, 0x33380004, +0x1700008c, 0x0, 0x924300bc, 0x307f0004, +0x13e0000f, 0x0, 0x10a0000d, 0x0, +0x960e0002, 0x240aff80, 0xa76021, 0x25cdfffe, +0xa74d1016, 0x920b0004, 0x14b2024, 0x308200ff, +0x10400081, 0x10c4025, 0x3c0f0400, 0x10f4025, +0x8f530178, 0x660fffe, 0x2404000a, 0xa7440140, +0x960d0002, 0x24040009, 0x31ac0007, 0xc5823, +0x316a0007, 0xa74a0142, 0x96020002, 0x2443fffe, +0xa7430144, 0xa7400146, 0x975f0104, 0xa75f0148, +0x8f590108, 0x33380020, 0x53000001, 0x24040001, +0x920f0004, 0x31ee0010, 0x15c00002, 0x34830010, +0x801821, 0xa743014a, 0x0, 0x0, +0x0, 0x0, 0xaf481000, 0x0, +0x0, 0x0, 0x0, 0x8f511000, +0x621fffe, 0x3113ffff, 0x12600003, 0x0, +0x8f481018, 0xacc80000, 0x96030006, 0x307fffff, +0x27f90002, 0x199882, 0x138880, 0x23b3021, +0x8cd80000, 0x15200053, 0x183402, 0x921f0004, +0x2419ff80, 0x33fc024, 0x331100ff, 0x12200028, +0x0, 0x924300bc, 0x30720002, 0x12400024, +0x0, 0x9745100c, 0x24a2fffe, 0xa7421016, +0x0, 0x3c090400, 0x35270030, 0xaf471000, +0x0, 0x0, 0x0, 0x0, +0x8f4a1000, 0x541fffe, 0x0, 0x9752100c, +0x8f4f101c, 0xc02021, 0x325fffff, 0x27f90030, +0x19c082, 0x188880, 0x23b4021, 0x31e6ffff, +0xad0f0000, 0xe000672, 0xf2c02, 0x137080, +0x1db9821, 0x8e640000, 0x26400, 0x308dffff, +0xae6d0000, 0x8e6b0000, 0x16c3025, 0xae660000, +0x97650008, 0x9773000a, 0x976a000c, 0x8f830020, +0x134c00, 0x3142ffff, 0x30a7ffff, 0x10e30032, +0x1222025, 0x96180002, 0x3c101000, 0x27110008, +0xe000173, 0x3224ffff, 0x97440104, 0xe000181, +0x3084ffff, 0xaf500178, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0028, 0x10a0ff74, 0x0, 0x24a5fffc, +0xa0006ab, 0x24090004, 0x8cd10000, 0xaf511018, +0x8f530178, 0x660ff7e, 0x2404000a, 0xa0006c0, +0x0, 0xa74021, 0x8f8e001c, 0x8f4c101c, +0x87882, 0xf2080, 0x8e6821, 0xc2c02, +0xc02021, 0xadac0000, 0xe000672, 0x3186ffff, +0x23b3821, 0x8ceb0000, 0x22c00, 0x403021, +0x316affff, 0xacea0000, 0x8ce20000, 0x454825, +0xa0006f0, 0xace90000, 0x8f8b0038, 0x148bffcd, +0x0, 0x97480104, 0x960f0002, 0x3c040800, +0x2484046c, 0x310dffff, 0x31eeffff, 0x1ae6021, +0x3c050800, 0x24a50468, 0xe000139, 0x2586fffe, +0xa000726, 0x0, 0xa4102b, 0x10400009, +0x24030001, 0x52840, 0xa4102b, 0x4a00003, +0x31840, 0x5440fffc, 0x52840, 0x10600007, +0x0, 0x85302b, 0x14c00002, 0x31842, +0x852023, 0x1460fffb, 0x52842, 0x3e00008, +0x801021, 0x8f850000, 0x27bdffe8, 0x53027, +0x2cc30001, 0x2ca40002, 0x831025, 0x10400003, +0xafbf0010, 0x2405007f, 0xaf850000, 0x52827, +0x30a5ffff, 0xe000651, 0x240426f5, 0x8f830004, +0x240402bd, 0x403021, 0x83382b, 0x10e00009, +0x24050001, 0x42040, 0x83102b, 0x4800003, +0x52840, 0x5440fffc, 0x42040, 0x10a00008, +0xc35021, 0x64402b, 0x15000002, 0x52842, +0x641823, 0x14a0fffb, 0x42042, 0xc35021, +0x8fbf0010, 0xa4c02, 0x312200ff, 0x27bd0018, +0xaf8a0000, 0x3e00008, 0xaf890004, 0x0 }; +u32 bce_TPAT_b06FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_TPAT_b06FwRodata[(0x0/4) + 1] = { 0x0 }; +u32 bce_TPAT_b06FwBss[(0x450/4) + 1] = { 0x0 }; +u32 bce_TPAT_b06FwSbss[(0x44/4) + 1] = { 0x0 }; +u32 bce_TPAT_b06FwSdata[(0x0/4) + 1] = { 0x0 }; + +int bce_TXP_b06FwReleaseMajor = 0x1; +int bce_TXP_b06FwReleaseMinor = 0x0; +int bce_TXP_b06FwReleaseFix = 0x0; +u32 bce_TXP_b06FwStartAddr = 0x08000098; +u32 bce_TXP_b06FwTextAddr = 0x08000000; +int bce_TXP_b06FwTextLen = 0x3ab0; +u32 bce_TXP_b06FwDataAddr = 0x00000000; +int bce_TXP_b06FwDataLen = 0x0; +u32 bce_TXP_b06FwRodataAddr = 0x00000000; +int bce_TXP_b06FwRodataLen = 0x0; +u32 bce_TXP_b06FwBssAddr = 0x08003b48; +int bce_TXP_b06FwBssLen = 0x14c; +u32 bce_TXP_b06FwSbssAddr = 0x08003ae0; +int bce_TXP_b06FwSbssLen = 0x68; +u32 bce_TXP_b06FwSDataAddr = 0x00000000; +int bce_TXP_b06FwSDataLen = 0x0; +u32 bce_TXP_b06FwText[(0x3ab0/4) + 1] = { +0xa000026, +0x0, 0x0, 0xd, 0x74787034, +0x2e342e31, 0x37000000, 0x4041100, 0xa, +0x136, 0xea60, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x1d, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x10000003, 0x0, +0xd, 0xd, 0x3c020800, 0x24423ae0, +0x3c030800, 0x24633c94, 0xac400000, 0x43202b, +0x1480fffd, 0x24420004, 0x3c1d0800, 0x37bd7ffc, +0x3a0f021, 0x3c100800, 0x26100098, 0x3c1c0800, +0x279c3ae0, 0xe00030f, 0x0, 0xd, +0x8f830038, 0x3c088000, 0x35070070, 0x8ce50000, +0x833025, 0x3c029000, 0xc22025, 0xaf850030, +0xaf440020, 0x8f490020, 0x520fffe, 0x3c038000, +0x34620070, 0x8c450000, 0x8f860030, 0x3c190800, +0x8f39007c, 0x3c0e0800, 0x8dce0078, 0xa62023, +0x3245821, 0x7821, 0x164682b, 0x1cf6021, +0x18d5021, 0x3c010800, 0xac2b007c, 0x3c010800, +0xac2a0078, 0x3e00008, 0x0, 0xa00003d, +0x24040001, 0x8f840038, 0x3c058000, 0x34a20001, +0x821825, 0x3e00008, 0xaf430020, 0x3e00008, +0x1021, 0x3084ffff, 0x30a5ffff, 0x10800007, +0x1821, 0x30820001, 0x10400002, 0x42042, +0x651821, 0x1480fffb, 0x52840, 0x3e00008, +0x601021, 0x10c00007, 0x0, 0x8ca20000, +0x24c6ffff, 0x24a50004, 0xac820000, 0x14c0fffb, +0x24840004, 0x3e00008, 0x0, 0x10a00008, +0x24a3ffff, 0xac860000, 0x0, 0x0, +0x2402ffff, 0x2463ffff, 0x1462fffa, 0x24840004, +0x3e00008, 0x0, 0x308affff, 0x93a80013, +0xa74a0144, 0x97490e16, 0x30c600ff, 0x3c021000, +0xa7490146, 0xaf450148, 0xa3460152, 0xa748015a, +0xaf470160, 0x8fa40018, 0x8fa30014, 0xa7440158, +0xaf430154, 0x3e00008, 0xaf420178, 0x3e00008, +0x0, 0x3c038000, 0x34620070, 0x8c490000, +0x8f88003c, 0x24840007, 0x27bdfff8, 0x3084fff8, +0xaf890030, 0x974d008a, 0x31acffff, 0xafac0000, +0x8fab0000, 0x1685023, 0x2547ffff, 0x30e61fff, +0xc4282b, 0x14a0fff7, 0x3c0c8000, 0x358b0070, +0x8d6a0000, 0x3c070800, 0x8ce70084, 0x3c060800, +0x8cc60080, 0x81082, 0x1491823, 0x27880, +0xe37021, 0x2021, 0x1c3c82b, 0xc4c021, +0x1fa4021, 0x3194821, 0x25024000, 0x27bd0008, +0x3c010800, 0xac2e0084, 0x3c010800, 0xac290080, +0x3e00008, 0x0, 0x8f82003c, 0x24860007, +0x30c5fff8, 0xa21821, 0x30641fff, 0x3e00008, +0xaf84003c, 0x3c0e20ff, 0x27bdffe0, 0x3c1a8000, +0x3c0f8008, 0x35cdfffd, 0xafbf0018, 0xafb10014, +0xafb00010, 0xaf8f0044, 0xaf4d0e00, 0x0, +0x0, 0x0, 0x0, 0x0, +0x3c0c00ff, 0x358bfffd, 0xaf4b0e00, 0x3c066004, +0x8cc95000, 0x240aff7f, 0x3c116000, 0x12a4024, +0x3507380c, 0xacc75000, 0x8e240438, 0x24050009, +0xaf450008, 0x3083ffff, 0x38622f71, 0x2450c0b3, +0xaf80004c, 0xe000064, 0xaf80003c, 0x52000001, +0xae20442c, 0xe00046d, 0x0, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0xa000e86, 0x27bd0020, +0x27bdffd0, 0xafb20028, 0xafb10024, 0xafbf002c, +0xafb00020, 0x93620008, 0x809021, 0xa08821, +0x1440002d, 0x24040010, 0xe00009a, 0x0, +0x8f8e004c, 0x3c103200, 0x31c600ff, 0x67c00, +0x1f06025, 0x25cd0001, 0xaf8d004c, 0xac4c0000, +0x936b0009, 0x9369000a, 0x316a00ff, 0xa3c00, +0x312800ff, 0xe82025, 0xac440004, 0x8f83004c, +0x6400043, 0xac430008, 0xac40000c, 0x97980040, +0x33050008, 0x14a00002, 0x26280006, 0x26280002, +0x97420e14, 0x8f450e1c, 0x8f670004, 0x937f0002, +0x3044ffff, 0x33f900ff, 0xafb90010, 0x8f710014, +0xafa80018, 0xe000087, 0xafb10014, 0x8fbf002c, +0x8fb20028, 0x8fb10024, 0x8fb00020, 0x24040010, +0xa0000c3, 0x27bd0030, 0x93690009, 0x9368000b, +0x312300ff, 0x310200ff, 0x628021, 0x261f000a, +0x33f0ffff, 0xe00009a, 0x2002021, 0x8f86004c, +0x3c0d4100, 0x24d90001, 0xaf99004c, 0x93780009, +0x30c600ff, 0x67400, 0x330500ff, 0x24af0002, +0x1cf6025, 0x18d5825, 0xac4b0000, 0x8f6a000c, +0x1523825, 0xac470004, 0x97440e14, 0x8f450e1c, +0x8f670004, 0x93690002, 0x3084ffff, 0x312800ff, +0xafa80010, 0x8f630014, 0xafb10018, 0xe000087, +0xafa30014, 0x2002021, 0x8fbf002c, 0x8fb20028, +0x8fb10024, 0x8fb00020, 0xa0000c3, 0x27bd0030, +0x3c128000, 0xa000114, 0xac52000c, 0x27bdffd8, +0xafb3001c, 0xafbf0020, 0xafb20018, 0xafb10014, +0xafb00010, 0x93620008, 0x14400081, 0x809821, +0xaf60000c, 0x97850040, 0x30a44000, 0x1080008b, +0x24030016, 0x24104007, 0xa363000a, 0xaf700014, +0x938f0042, 0x8f6c0014, 0x31ee0007, 0xe6a40, +0x18d5825, 0xaf6b0014, 0x978a0040, 0x8f680014, +0x31490010, 0x1093825, 0xaf670014, 0x97860040, +0x30c30008, 0x5060008d, 0x2821, 0x8f660014, +0x3c031000, 0x3c028100, 0xc32825, 0xaf650014, +0x97440e0a, 0x2418000e, 0x3405fffc, 0x309fffff, +0x3e2c825, 0xaf790004, 0xa3780002, 0x9372000a, +0x26510004, 0xa371000a, 0x97830040, 0x9364000a, +0x30661f00, 0x61183, 0x44f821, 0x27f90028, +0xa3790009, 0x97580e0c, 0xa7780010, 0x93720009, +0x26510002, 0x32300007, 0x107823, 0x31ee0007, +0xa36e000b, 0x936d0009, 0x976c0010, 0x8f900034, +0x97890040, 0x31ab00ff, 0x16c5021, 0x1454021, +0x31270040, 0x10e00005, 0x3105ffff, 0xb0382b, +0x3c068000, 0x10e00014, 0x8821, 0x205402b, +0x15000033, 0x2021, 0x8f4a0e14, 0xaf4a0e10, +0x8f490e1c, 0xaf490e18, 0xaf450e00, 0x8f4c0000, +0x318b0008, 0x1160fffd, 0x0, 0x974d0e08, +0xa08021, 0x3021, 0xa78d0040, 0x8f450e04, +0x24110001, 0xaf850034, 0x976e0010, 0x31d2ffff, +0x8e640000, 0x901023, 0x14400009, 0xae620000, +0x8f6a0014, 0x8f870048, 0x35490040, 0xaf690014, +0x8f480e10, 0xace80020, 0x8f430e18, 0xace30024, +0xc02021, 0xe0000f5, 0x2002821, 0x8e660000, +0x14c00005, 0x0, 0x8f6b0014, 0x240cffbf, +0x16c9824, 0xaf730014, 0x8f6d000c, 0x1b22821, +0xaf65000c, 0x93720008, 0x16400003, 0x0, +0x16200031, 0x0, 0xa3710008, 0x2002021, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x801021, 0x3e00008, 0x27bd0028, +0x8f900034, 0x97910040, 0x3c068000, 0x2009021, +0x322f0040, 0x15e0ffd2, 0x8821, 0x977f0010, +0x8f980034, 0x33f9ffff, 0x1738ffed, 0x2021, +0x3021, 0xa0001b9, 0x24110001, 0x2403000e, +0x24104007, 0xa363000a, 0xaf700014, 0x938f0042, +0x8f6c0014, 0x31ee0007, 0xe6a40, 0x18d5825, +0xaf6b0014, 0x978a0040, 0x8f680014, 0x31490010, +0x1093825, 0xaf670014, 0x97860040, 0x30c30008, +0x1460ff76, 0x0, 0x2821, 0xaf600004, +0xa000187, 0xa3600002, 0x8f6f0014, 0x3c19efff, +0x3738fffe, 0x1f87024, 0xa0001d7, 0xaf6e0014, +0x8f870038, 0x8f8a0044, 0x8f860048, 0x27bdffe0, +0xafb00018, 0xafbf001c, 0x8f450104, 0x8d4900ac, +0xaf470080, 0x8cc80020, 0xa93823, 0x8021, +0xaf480e10, 0x8f440e10, 0x4821, 0xaf440e14, +0x8cc20024, 0xaf420e18, 0x8f430e18, 0xaf430e1c, +0x10e00036, 0x2d390001, 0x936b0008, 0x11600051, +0x0, 0x976e0010, 0x31cdffff, 0xed602b, +0x1580004c, 0x0, 0x97780010, 0x330fffff, +0xaf4f0e00, 0x8f5f0000, 0x33f90008, 0x1320fffd, +0x0, 0x97420e08, 0x8f460e04, 0x3045ffff, +0x30a30001, 0x1060008c, 0x0, 0xd, +0x30a8a040, 0x24040040, 0x1104003d, 0x30a9a000, +0x11200087, 0x0, 0x936c0008, 0x51800009, +0x27a40010, 0x976f0010, 0x31eeffff, 0xce682b, +0x11a00004, 0x27a40010, 0x30b80040, 0x1300007c, +0x0, 0xafa70010, 0xa7850040, 0xaf860034, +0xe000158, 0x0, 0x404821, 0x1440ffd0, +0x8fa70010, 0x8f420e14, 0x8f840048, 0xac820020, +0x8f470e1c, 0xac870024, 0x2d390001, 0x3303025, +0x10c00019, 0x8fbf001c, 0x8f840038, 0x24100f00, +0x10900089, 0x0, 0x8f580178, 0x700fffe, +0x24070f00, 0x10870071, 0x0, 0x97590e14, +0x24020240, 0x3c0b1000, 0xa7590144, 0x97460e16, +0xa7460146, 0x8f490e1c, 0xaf490148, 0xa3400152, +0xa740015a, 0xaf400160, 0xa7400158, 0xaf420154, +0xaf4b0178, 0x8fbf001c, 0x8fb00018, 0x3e00008, +0x27bd0020, 0xaf470e00, 0xa00022e, 0x0, +0x8f490178, 0x520fffe, 0x240a0800, 0x8f84003c, +0xaf4a0178, 0x9758008a, 0x330fffff, 0x1e47023, +0x25cdffff, 0x31ac1fff, 0x2d8b0008, 0x1560fff9, +0x0, 0x8f83004c, 0x8f9f0038, 0xc04821, +0x3442021, 0x24660001, 0x24190f00, 0xaf86004c, +0x306a00ff, 0xe93823, 0x24864000, 0x13f90005, +0x24080001, 0x938b0042, 0x31680007, 0x81240, +0x34480001, 0xa7c00, 0x3c180100, 0x1f87025, +0xac8e4000, 0x8f8d004c, 0x30ac0036, 0x30a40008, +0xaccd0004, 0x1080002e, 0x10c3025, 0x974d0e0a, +0x8f8c003c, 0x3c028100, 0x31a4ffff, 0x258b0008, +0x824025, 0x3c031000, 0x31651fff, 0x25390006, +0x241f000e, 0xaf480160, 0xc33025, 0xa75f015a, +0xaf85003c, 0xa7590158, 0x14e0000a, 0x8f9f0038, +0x24050f00, 0x53e50002, 0x24100001, 0x34c60040, +0x8f430e10, 0x8f880048, 0xad030020, 0x8f4b0e18, +0xad0b0024, 0x8f420e1c, 0x8f440e14, 0xaf420148, +0xa34a0152, 0x3c0a1000, 0xaf460154, 0xaf440144, +0xa000221, 0xaf4a0178, 0x14c0ff76, 0x30a8a040, +0x8f420e14, 0x8f840048, 0x4821, 0xac820020, +0x8f470e1c, 0xac870024, 0xa000258, 0x2d390001, +0x8f98003c, 0x25390002, 0xa7590158, 0x270f0008, +0x31ee1fff, 0xa0002af, 0xaf8e003c, 0xaf40014c, +0x11200033, 0x0, 0x97450e10, 0xa7450144, +0x97500e12, 0xa7500146, 0x8f420e18, 0xaf420148, +0x3c0b1000, 0x24020040, 0xa3400152, 0xa740015a, +0xaf400160, 0xa7400158, 0xaf420154, 0xaf4b0178, +0xa000273, 0x8fbf001c, 0x11200009, 0x0, +0x975f0e08, 0x33e50040, 0x14a00005, 0x0, +0x0, 0xd, 0x0, 0x24000298, +0x8f480178, 0x500fffe, 0x0, 0x974f0e10, +0x3c0e0500, 0x24032000, 0x31edffff, 0x1ae6025, +0xaf4c014c, 0x97420e14, 0x3c0b1000, 0xa7420144, +0x97440e16, 0xa7440146, 0x8f4a0e1c, 0xaf4a0148, +0xa3400152, 0x8f840038, 0xa740015a, 0xaf400160, +0xa7400158, 0xaf430154, 0xa00025f, 0xaf4b0178, +0x97480e14, 0xa7480144, 0x975f0e16, 0xa75f0146, +0xa0002dc, 0x8f420e1c, 0x27bdffe0, 0xafb20018, +0xafb10014, 0xafb00010, 0xafbf001c, 0xe0000ca, +0x0, 0x3c028000, 0x8f8a0044, 0x34500070, +0x3c120800, 0x26523bb0, 0x2008821, 0x8e080000, +0x8f450000, 0x38a40001, 0x30830001, 0x10600017, +0xaf880030, 0x2204821, 0x8d2c0000, 0x3c020800, +0x8c42006c, 0x3c180800, 0x8f180068, 0x1881823, +0x436821, 0xc821, 0x1a3782b, 0x3197021, +0x1cf4021, 0x3c010800, 0xac2d006c, 0x3c010800, +0xac280068, 0x8f4b0000, 0x39670001, 0x30e60001, +0x14c0ffed, 0x1804021, 0xaf8c0030, 0x8e180000, +0x3c0e0800, 0x8dce006c, 0x3c0c0800, 0x8d8c0068, +0x3087823, 0x1cf2821, 0x4021, 0xaf302b, +0x1885821, 0x1662021, 0x3c010800, 0xac25006c, +0x3c010800, 0xac240068, 0x8f490100, 0x25470088, +0xaf870048, 0xaf890038, 0xaf490020, 0x8e070000, +0xaf870030, 0x8f590178, 0x720fffe, 0x0, +0x8e0f0000, 0x3c0d0800, 0x8dad0074, 0x3c0c0800, +0x8d8c0070, 0x1e77023, 0x1ae2821, 0x3021, +0xae582b, 0x1862021, 0x8b3821, 0x24090800, +0x3c010800, 0xac250074, 0x3c010800, 0xac270070, +0xaf490178, 0x93430108, 0xa3830042, 0x93820042, +0x305f0001, 0x17e00015, 0x8f830038, 0x241f0d00, +0x107f0019, 0x24020f00, 0x1062001d, 0x0, +0x91470000, 0x24030050, 0x30e900ff, 0x11230004, +0x3c054000, 0xaf450138, 0xa00031c, 0x0, +0xe0008ed, 0x0, 0x8f8a0044, 0x3c054000, +0xaf450138, 0xa00031c, 0x0, 0x93990042, +0x33380006, 0x185100, 0xe00020d, 0x152d821, +0xa000378, 0x8f8a0044, 0x3c1b0800, 0x277b3c30, +0xe00020d, 0x0, 0xa000378, 0x8f8a0044, +0x3c1b0800, 0x277b3c50, 0xe00020d, 0x0, +0xa000378, 0x8f8a0044, 0x90aa0001, 0x8fab0010, +0x8cac0010, 0x3c0300ff, 0x8d680004, 0xad6c0020, +0x8cad0014, 0xe06021, 0x3462ffff, 0xad6d0024, +0x8ca70018, 0x3c09ff00, 0x109c024, 0xad670028, +0x8cae001c, 0x182c824, 0x3197825, 0xad6f0004, +0xad6e002c, 0x8cad0008, 0x314a00ff, 0xad6d001c, +0x94a90002, 0x3128ffff, 0xad680010, 0x90a70000, +0xa5600002, 0xa1600004, 0xa1670000, 0x90a30002, +0x306200ff, 0x21982, 0x10600005, 0x24050001, +0x1065000e, 0x0, 0x3e00008, 0xa16a0001, +0x8cd80028, 0x354a0080, 0xad780018, 0x8ccf0014, +0xad6f0014, 0x8cce0030, 0xad6e0008, 0x8cc4002c, +0xa16a0001, 0x3e00008, 0xad64000c, 0x8ccd001c, +0xad6d0018, 0x8cc90014, 0xad690014, 0x8cc80024, +0xad680008, 0x8cc70020, 0xad67000c, 0x8cc20014, +0x8c830064, 0x43c82b, 0x13200007, 0x0, +0x8cc20014, 0x144cffe4, 0x0, 0x354a0080, +0x3e00008, 0xa16a0001, 0x8c820064, 0xa0003ce, +0x0, 0x90aa0000, 0x27bdfff8, 0x8fa9001c, +0xa3aa0000, 0x8fae0000, 0x3c0fff80, 0x8fa80018, +0x35e2ffff, 0x8ccd002c, 0x1c26024, 0xafac0000, +0xa1200004, 0xe06021, 0xa7a00002, 0x8fb80000, +0x8d270004, 0x1881821, 0xa05821, 0xc05021, +0x6d2826, 0x3c06ff7f, 0x3c0f00ff, 0x2cad0001, +0x35eeffff, 0x34d9ffff, 0x3c02ff00, 0x3193024, +0xd1dc0, 0x10ec824, 0xe2c024, 0xc37025, +0x3197825, 0xad2e0000, 0xad2f0004, 0x8d450024, +0xafae0000, 0xad250008, 0x8d4d0020, 0x2405ffff, +0xad2d000c, 0x95680002, 0x3107ffff, 0xad270010, +0x91660018, 0x30c200ff, 0x219c2, 0x50600001, +0x8d450034, 0xad250014, 0x8d670008, 0x27bd0008, +0xad27001c, 0x8c8b00cc, 0xad2c0028, 0xad20002c, +0xad2b0024, 0xad200018, 0xad200020, 0x9549003a, +0x25240001, 0x3e00008, 0xa544003a, 0x27bdffe0, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf001c, +0x90980000, 0xc08821, 0x3c0d00ff, 0x330f007f, +0xa0cf0000, 0x908e0001, 0x35acffff, 0x3c0aff00, +0xa0ce0001, 0x94a6001e, 0xa2200004, 0x8cab0014, +0x8e290004, 0xa08021, 0x16c2824, 0x12a4024, +0x809021, 0x1052025, 0xa6260002, 0xae240004, +0x26050020, 0x26240008, 0xe000072, 0x24060002, +0x92470000, 0x26050028, 0x26240014, 0x71e00, +0x31603, 0x24060004, 0x4400003, 0x2403ffff, +0x96590002, 0x3323ffff, 0xe000072, 0xae230010, +0x26240024, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x24050003, 0x3021, 0xa00007c, +0x27bd0020, 0x27bdffd8, 0xafb1001c, 0xafb00018, +0xafbf0020, 0x90a80000, 0x24020001, 0x8fb0003c, +0x3103003f, 0x808821, 0x10620014, 0x8faa0038, +0x240b0005, 0x506b0016, 0xafaa0010, 0xa02021, +0xc02821, 0xe000414, 0x2003021, 0x922400bc, +0x30830002, 0x10600003, 0x26060030, 0xacc00000, +0x24c60004, 0x8fbf0020, 0x8fb1001c, 0x8fb00018, +0xc01021, 0x3e00008, 0x27bd0028, 0x1403821, +0xe00038f, 0xafb00010, 0xa000458, 0x0, +0xe0003d6, 0xafb00014, 0xa000458, 0x0, +0x3c02000a, 0x3421821, 0x3c040800, 0x24843b48, +0x2405001a, 0x3021, 0xa00007c, 0xaf83002c, +0x3c038000, 0x34620070, 0x8c480000, 0xa05821, +0xc04821, 0x308a00ff, 0xaf880030, 0x8f440178, +0x480fffe, 0x3c0d8000, 0x35ac0070, 0x8d860000, +0x3c040800, 0x8c840074, 0x3c190800, 0x8f390070, +0xc82823, 0x857021, 0x1021, 0x1c5c02b, +0x3227821, 0x1f86821, 0x3c010800, 0xac2e0074, +0x3c010800, 0xac2d0070, 0x974c0e16, 0xa74c0146, +0x97480e14, 0xa7480144, 0xaf47014c, 0xa34a0152, +0xa74b0158, 0x93460108, 0x30c50008, 0x54a00001, +0x35291000, 0x934b0900, 0x24070050, 0x316a00ff, +0x11470007, 0x0, 0x8f4c0e1c, 0xaf4c0148, +0xaf490154, 0x3c091000, 0x3e00008, 0xaf490178, +0x934e0108, 0x31c80008, 0x11000012, 0x0, +0x93580108, 0x330f0010, 0x51e00001, 0x35290008, +0x3c060800, 0x90c63bac, 0xa3460150, 0x8f4509a4, +0xaf450148, 0x974409a0, 0xa7440144, 0x974309a2, +0xa7430146, 0xaf490154, 0x3c091000, 0x3e00008, +0xaf490178, 0x3c020800, 0x8c423b68, 0x30590008, +0x5720ffef, 0x35290008, 0xa0004ad, 0x0, +0x24070040, 0xaf470814, 0xaf400810, 0x8f420944, +0x8f430950, 0x8f440954, 0x8f45095c, 0x8f46094c, +0xaf820064, 0xaf830054, 0xaf840050, 0xaf85005c, +0x3e00008, 0xaf860060, 0x93460109, 0x30c5007f, +0x518c0, 0x52140, 0x831021, 0x3e00008, +0x24420088, 0x3c0a0800, 0x914a3b6d, 0x3c090800, +0x95293b66, 0x3c051100, 0xa3c00, 0x25280002, +0xe83025, 0xc51825, 0x24820008, 0xac830000, +0x3e00008, 0xac800004, 0x8f4a002c, 0x974d0908, +0x3c0e000e, 0x34e3821, 0x31acffff, 0xc41c0, +0xaf48002c, 0x97430908, 0x94eb001a, 0x804021, +0x24020001, 0x3169ffff, 0xac890000, 0x8ce6001c, +0xa05821, 0xac860004, 0x8ce40020, 0xad040008, +0x90e30019, 0x30630003, 0x1062003e, 0x0, +0x28650002, 0x14a00071, 0x240f0002, 0x106f004c, +0x0, 0x24180003, 0x10780055, 0x0, +0x3c090800, 0x95293b5c, 0x93430934, 0x934f0921, +0x3c050800, 0x94a53b62, 0x306400ff, 0x94ee002a, +0x46882, 0x31ec00ff, 0x978f0058, 0xdc600, +0xccc00, 0x3127ffff, 0x3191025, 0xa73021, +0x462025, 0x1cf6821, 0x3c034000, 0x836025, +0xd4c00, 0xad090004, 0xad0c0000, 0x93590920, +0x3c180006, 0x25090014, 0x193e00, 0xf82825, +0xad050008, 0x8f4e092c, 0x25e60001, 0x30c27fff, +0xad0e000c, 0x8f440930, 0xa7820058, 0x25020028, +0xad040010, 0x8f4d0938, 0xad0d0014, 0xad2b0004, +0x8f4c0940, 0xad2c0008, 0x93430937, 0x3c190800, +0x93393b6c, 0xad200010, 0x34700, 0x19c400, +0x1185825, 0x3567ffff, 0xad27000c, 0x3e00008, +0xaf4a002c, 0x3c090800, 0x95293b5c, 0x3c0d0800, +0x95ad3b66, 0x3c0c0800, 0x958c3b58, 0x94e40024, +0x312effff, 0x1ae3021, 0xcc1823, 0x4cc00, +0x2462fff2, 0x322c025, 0x240f0800, 0xad18000c, +0xad0f0014, 0xad000010, 0xa000503, 0x25080018, +0x94e50024, 0x94ee0028, 0x3c090800, 0x95293b5c, +0x56c00, 0xe6400, 0x35a68100, 0x35840800, +0xad06000c, 0xad040010, 0xa000503, 0x25080014, +0x3c090800, 0x95293b5c, 0x3c0f0800, 0x95ef3b66, +0x3c060800, 0x94c63b58, 0x94e40024, 0x3125ffff, +0x94ed0028, 0x1e57021, 0x1c66023, 0x4cc00, +0xd1c00, 0x2582ffee, 0x627825, 0x37388100, +0x24050800, 0xad18000c, 0xad0f0010, 0xad050018, +0xad000014, 0xa000503, 0x2508001c, 0x1460ff94, +0x0, 0x94e30024, 0x3c090800, 0x95293b5c, +0x31400, 0x34590800, 0xad19000c, 0xa000503, +0x25080010, 0x3e00008, 0x240201f4, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0xe00005c, 0x808021, +0x24050040, 0xaf450814, 0x8f830054, 0x8f840050, +0x8f85005c, 0x701821, 0x641023, 0x18400004, +0xaf830054, 0xaf630054, 0x8f660054, 0xaf860050, +0x1200000c, 0x0, 0x8f440074, 0x93680081, +0x3409fa00, 0x2d070007, 0x10e00005, 0x891021, +0x936c0081, 0x240b01f4, 0x18b5004, 0x1441021, +0xaf62000c, 0x8f4e095c, 0x1c56823, 0x19a00004, +0x8fbf0014, 0x8f4f095c, 0xaf8f005c, 0x8fbf0014, +0x8fb00010, 0xa00005e, 0x27bd0018, 0x8f840064, +0x8f830054, 0x8f820050, 0xaf640044, 0xaf630050, +0x3e00008, 0xaf620054, 0x3c038000, 0x34620070, +0x8c430000, 0x27bdfff8, 0x308700ff, 0x30a900ff, +0x30c800ff, 0xaf830030, 0x8f440178, 0x480fffe, +0x3c028000, 0x34590070, 0x8f380000, 0xa3a70003, +0x3c070800, 0x8ce70074, 0x8fac0000, 0x3c060800, +0x8cc60070, 0x3037823, 0x3c0e7fff, 0xefc821, +0x35cdffff, 0x5021, 0x18d2824, 0xca1821, +0x847c0, 0x32f202b, 0xa81025, 0x64c021, +0xafa20000, 0x3c010800, 0xac390074, 0x3c010800, +0xac380070, 0x934f010a, 0xa3a00002, 0x3c0e80ff, +0xa3af0001, 0x8fac0000, 0x312b007f, 0x35cdffff, +0x18d4824, 0xb5600, 0x12a4025, 0x24073000, +0x2406ff80, 0x3c051000, 0x27bd0008, 0xaf48014c, +0xaf470154, 0xa7400158, 0xa3460152, 0x3e00008, +0xaf450178, 0x27bdffe8, 0xafbf0014, 0xafb00010, +0x8f650074, 0x3c068000, 0x309000ff, 0xa62025, +0xe00005c, 0xaf640074, 0x93630005, 0x34620008, +0xe00005e, 0xa3620005, 0x2002021, 0x8fbf0014, +0x8fb00010, 0x24050005, 0x24060001, 0xa0005a7, +0x27bd0018, 0x27bdffe0, 0x3c038000, 0xafb00010, +0xafbf0018, 0xafb10014, 0x34620070, 0x8c470000, +0x309000ff, 0x30a800ff, 0xaf870030, 0x8f440178, +0x480fffe, 0x3c188000, 0x37110070, 0x8e2f0000, +0x3c0d0800, 0x8dad0074, 0x3c0a0800, 0x8d4a0070, +0x1e77023, 0x1ae2821, 0x5821, 0xae302b, +0x14b4821, 0x1263821, 0x3c010800, 0xac250074, +0x8821, 0x3c010800, 0xac270070, 0x1100000f, +0x0, 0x8f620074, 0x2619ffff, 0x3208007f, +0x2fe02, 0x33e5007f, 0x15000006, 0x332200ff, +0x2407ff80, 0x2072026, 0x24a3ffff, 0x838025, +0x320200ff, 0x408021, 0x24111008, 0xe00005c, +0x0, 0x8f490818, 0x31250004, 0x14a0fffd, +0x3208007f, 0x8c0c0, 0x87940, 0x1f87021, +0x25cd0088, 0xaf4d0818, 0x274a0980, 0x954c0022, +0xa74c0146, 0x954b0020, 0xa74b0144, 0x8d460024, +0xaf460148, 0xa3500150, 0xe00005e, 0xa7400158, +0x2201021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffe8, 0x308400ff, +0xafbf0010, 0xe0005f2, 0x30a500ff, 0x8f830054, +0x8fbf0010, 0x34450040, 0x2404ff90, 0x3c021000, +0x27bd0018, 0xaf43014c, 0xa3440152, 0xaf450154, +0x3e00008, 0xaf420178, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0x9345093f, 0x24020006, 0x3c080800, +0x95083b62, 0x30a300ff, 0x2487ffd8, 0x24050004, +0x10620036, 0x24060002, 0x974e093c, 0x3c0d0204, +0x63400, 0x31ccffff, 0x18d5825, 0xac8b0000, +0x934a093e, 0x31490020, 0x11200008, 0x0, +0x935f0936, 0x3c190103, 0x37380300, 0x33f000ff, +0x2187825, 0x24050008, 0xac8f0004, 0x93580934, +0x934d0921, 0x3c104000, 0x330e00ff, 0xe6082, +0x31ab00ff, 0xc5600, 0xb1400, 0x1421825, +0x68f825, 0x3f0c825, 0xac99ffd8, 0x93580937, +0x8f4c0948, 0x8f4d0940, 0x57882, 0x330e00ff, +0x1cf5821, 0x18d2823, 0xb5700, 0x1461025, +0x30a3ffff, 0x434025, 0xf4880, 0x1273021, +0xace80020, 0xe00005c, 0x24d00028, 0x24040004, +0xe00005e, 0xa364003f, 0x2001021, 0x8fbf0014, +0x8fb00010, 0x3e00008, 0x27bd0018, 0xa000657, +0x24060012, 0x27bdffd0, 0x24090010, 0xafb50024, +0xafb40020, 0xafb3001c, 0xafb10014, 0xafb00010, +0x3c010800, 0xa0293b6c, 0xafbf0028, 0xafb20018, +0x97480908, 0x309400ff, 0x3c02000e, 0x3107ffff, +0x731c0, 0xaf46002c, 0x97440908, 0x9344010b, +0x30b300ff, 0x3428021, 0x30830030, 0xa821, +0x106000e4, 0x8821, 0x240c0004, 0x3c010800, +0xa02c3b6c, 0x934b093e, 0xb5600, 0xa2e03, +0x4a00131, 0x0, 0xaf400048, 0x9352010b, +0x324f0020, 0x11e00006, 0x0, 0x935f093e, +0x1fce00, 0x19c603, 0x7000148, 0x0, +0x9346010b, 0x30c20040, 0x10400003, 0x8f920054, +0x8f870054, 0x24f2ffff, 0x960a002c, 0x93450934, +0x93490937, 0xa78a0058, 0x30a600ff, 0x312700ff, +0x71080, 0x462021, 0x91f821, 0x3c010800, +0xa43f3b62, 0x92030018, 0x3c010800, 0xa4203b5c, +0x3c010800, 0xa4203b58, 0x307000ff, 0x3f04021, +0x250b000a, 0x3170ffff, 0x3c010800, 0xa4283b64, +0x3c010800, 0xa4283b66, 0xe00009a, 0x2002021, +0xe0004d6, 0x402021, 0x8f4b002c, 0x97580908, +0x3c19000e, 0x3594021, 0x330fffff, 0xf71c0, +0xaf4e002c, 0x97430908, 0x950d001a, 0x24110001, +0x403821, 0x31acffff, 0xac4c0000, 0x8d0a001c, +0xac4a0004, 0x8d050020, 0xac450008, 0x91090019, +0x31230003, 0x107100bd, 0x28710002, 0x16200103, +0x240c0002, 0x106c00f5, 0x240d0003, 0x106d00ca, +0x0, 0x3c090800, 0x95293b5c, 0x93430934, +0x93580921, 0x3c0a0800, 0x954a3b62, 0x306400ff, +0x950c002a, 0x4f882, 0x331900ff, 0x97980058, +0x1f7600, 0x197c00, 0x3126ffff, 0x1cf4025, +0x1466821, 0x10d8825, 0x1982821, 0x3c084000, +0x2281025, 0x54c00, 0xace90004, 0xace20000, +0x93430920, 0x3c040006, 0x24e90014, 0x3fe00, +0x3e4c825, 0xacf90008, 0x8f4e092c, 0x270f0001, +0x31e67fff, 0xacee000c, 0x8f4d0930, 0xa7860058, +0x24e60028, 0xaced0010, 0x8f4c0938, 0xacec0014, +0xad320004, 0x8f510940, 0xad310008, 0x93420937, +0x3c050800, 0x90a53b6c, 0xad200010, 0x22700, +0x51c00, 0x83f825, 0x37f2ffff, 0xad32000c, +0xaf4b002c, 0x12a00033, 0x0, 0x9352093f, +0x24150006, 0x24050004, 0x324b00ff, 0x117500cd, +0x24090002, 0x974f093c, 0x3c0e0204, 0x31edffff, +0x1ae6025, 0xacec0028, 0x9351093e, 0x32220020, +0x10400008, 0x0, 0x93440936, 0x3c180103, +0x371f0300, 0x309900ff, 0x33f2825, 0xacc50004, +0x24050008, 0x93520934, 0x93430921, 0x56082, +0x324b00ff, 0xba882, 0x306400ff, 0x15fe00, +0x4c400, 0x3f8c825, 0x32a7825, 0x1e87025, +0xacceffd8, 0x934d0937, 0x8f520948, 0x8f420940, +0x31b100ff, 0x22c5821, 0x2423023, 0xb1f00, +0x9ac00, 0x754825, 0x30c8ffff, 0x1285025, +0xe00005c, 0xacea0020, 0x24070004, 0xe00005e, +0xa367003f, 0xe0000c3, 0x2002021, 0x3c050800, +0x90a53b6c, 0x30b00003, 0x1200000f, 0x2802021, +0x8f880054, 0x25090001, 0xaf890054, 0xaf690050, +0x8f6a0054, 0x1493823, 0x18e00002, 0x1202021, +0x8f640054, 0xaf640054, 0x8f420074, 0x244601f4, +0xaf66000c, 0x2802021, 0x2602821, 0xa7600068, +0xe0005f2, 0x3c131000, 0x8f8e0054, 0x34540006, +0xaf4e014c, 0x8f8d004c, 0x8fbf0028, 0x8fb50024, +0x31b100ff, 0x25ac0001, 0xaf8c004c, 0x8fb20018, +0xa3510152, 0x8fb00010, 0xaf540154, 0x8fb10014, +0xaf530178, 0x8fb40020, 0x8fb3001c, 0x3e00008, +0x27bd0030, 0x9359093e, 0x19c600, 0x189603, +0x6420048, 0x24110002, 0x93420923, 0x30440002, +0x1080ff1e, 0x8f870060, 0x8f860054, 0x14e6ff1b, +0x0, 0xe00005c, 0x0, 0x9365003f, +0x24080016, 0x30a900ff, 0x1128000c, 0x240a0008, +0x3c0d0800, 0x91ad3b6c, 0x35ac0001, 0x3c010800, +0xa02c3b6c, 0x936b003f, 0x316300ff, 0x106a0065, +0x240e000a, 0x106e005e, 0x2402000c, 0xe00005e, +0x0, 0xa0006b0, 0x0, 0x3c090800, +0x95293b5c, 0x3c190800, 0x97393b66, 0x3c180800, +0x97183b58, 0x950e0024, 0x313fffff, 0x33f7821, +0x1f86823, 0xe8c00, 0x25acfff2, 0x22c5025, +0x24050800, 0x24470018, 0xac4a000c, 0xac450014, +0xa0006f8, 0xac400010, 0x3c090800, 0x95293b5c, +0x3c180800, 0x97183b66, 0x3c0f0800, 0x95ef3b58, +0x950d0024, 0x3139ffff, 0x950c0028, 0x3197021, +0x1cf8823, 0xd2c00, 0xc5400, 0x2622ffee, +0x1423025, 0x34a48100, 0x24030800, 0xace4000c, +0xace60010, 0xace30018, 0xace00014, 0xa0006f8, +0x24e7001c, 0x3c010800, 0xa0313b6c, 0x9343093e, +0x24150001, 0x307f0020, 0x17e0fed4, 0x24110008, +0xa0006b0, 0x24110004, 0x8f6e0084, 0x8f4d0940, +0x11a0fecd, 0xaf8e0054, 0x240f0014, 0x3c010800, +0xa02f3b6c, 0xa0006af, 0x0, 0x95020024, +0x95060028, 0x3c090800, 0x95293b5c, 0x22400, +0x61c00, 0x349f8100, 0x34790800, 0xacff000c, +0xacf90010, 0xa0006f8, 0x24e70014, 0x1460ff01, +0x0, 0x95180024, 0x3c090800, 0x95293b5c, +0x24470010, 0x187c00, 0x35ee0800, 0xa0006f8, +0xac4e000c, 0xa000732, 0x24090012, 0x8f64004c, +0xaf640054, 0x8f630054, 0xa0006b9, 0xaf630050, +0xa362003f, 0xe00005e, 0x0, 0xa0006b0, +0x0, 0x24020014, 0xa000806, 0xa362003f, +0x27bdffe8, 0x308400ff, 0xafbf0010, 0xe0005f2, +0x30a500ff, 0x9378007e, 0x9379007f, 0x936e0080, +0x9368007a, 0x332f00ff, 0x186600, 0xf6c00, +0x31cb00ff, 0x18d4825, 0xb5200, 0x8fbf0010, +0x12a3825, 0x310600ff, 0x34447000, 0xe62825, +0x2402ff81, 0x3c031000, 0x27bd0018, 0xaf45014c, +0xaf440154, 0xa3420152, 0x3e00008, 0xaf430178, +0x27bdffd8, 0xafb20018, 0xafb10014, 0xafb00010, +0xafbf0020, 0xafb3001c, 0x93420109, 0x308600ff, +0x30b000ff, 0x618c2, 0x32040002, 0x30710001, +0x14800005, 0x305200ff, 0x93670005, 0x30e50008, +0x10a0000d, 0x30c80010, 0x2402021, 0xe0005de, +0x2202821, 0x24040001, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x801021, +0x3e00008, 0x27bd0028, 0x15000032, 0x0, +0x93430109, 0x2821, 0x3062007f, 0x220c0, +0x2f940, 0x3e49821, 0x26790088, 0x33b9821, +0x8e780024, 0x8e6f0008, 0x130f0046, 0x0, +0x8f640084, 0x24180002, 0x4fd82, 0x33f90003, +0x1338007c, 0x0, 0x93660083, 0x934a0109, +0x51460004, 0x3205007c, 0x10a00060, 0x0, +0x3205007c, 0x14a00053, 0x2402021, 0x16200006, +0x32040001, 0x8e7f0024, 0x8f590104, 0x17f9ffd6, +0x2021, 0x32040001, 0x1080000a, 0x2402021, +0x8f420940, 0x8f930064, 0x10530006, 0x0, +0xe00068e, 0x2202821, 0x8f430940, 0xaf630044, +0x2402021, 0xe00063b, 0x2202821, 0xa00083f, +0x24040001, 0x3c090800, 0x8d290064, 0x25260001, +0x3c010800, 0xac260064, 0x16000012, 0x0, +0x8f6d0084, 0x3c0e00c0, 0x1ae6024, 0x15800005, +0x2402021, 0xe00080d, 0x2202821, 0xa00083f, +0x24040001, 0x24050004, 0xe0005a7, 0x24060001, +0x2402021, 0xe00080d, 0x2202821, 0xa00083f, +0x24040001, 0xe00003d, 0x24040001, 0x936b007d, +0x20b5025, 0xe00005e, 0xa36a007d, 0xa000882, +0x8f6d0084, 0x8f660074, 0x8f480104, 0x8e670024, +0x64e02, 0x1507ffb6, 0x3126007f, 0x936b0083, +0x26440001, 0x308a007f, 0x11460043, 0x316300ff, +0x5464ffb0, 0x8f640084, 0x26450001, 0x30b1007f, +0x30a200ff, 0x12260004, 0x24050001, 0x409021, +0xa000855, 0x24110001, 0x240fff80, 0x24f7024, +0x1cf9026, 0x324200ff, 0x409021, 0xa000855, +0x24110001, 0xe00068e, 0x2202821, 0x32180030, +0x1300ffaa, 0x32100082, 0x2402021, 0xe0005de, +0x2202821, 0xa00083f, 0x24040001, 0x8f6e0074, +0x3c0f8000, 0x24050003, 0x1cf9025, 0xaf720074, +0x93710083, 0x24060001, 0xe0005a7, 0x322400ff, +0xe00003d, 0x24040001, 0x936d007d, 0x20d6025, +0xe00005e, 0xa36c007d, 0x3c0b0800, 0x8d6b0054, +0x25700001, 0x3c010800, 0xac300054, 0xa00083f, +0x24040001, 0x8f680074, 0x3c098000, 0x24050004, +0x1093825, 0xaf670074, 0x93630083, 0x24060001, +0xe0005a7, 0x306400ff, 0xe00003d, 0x24040001, +0x9362007d, 0x2029825, 0xe00005e, 0xa373007d, +0xa00083f, 0x24040001, 0x324d0080, 0x39ac0080, +0x546cff6c, 0x8f640084, 0xa0008a8, 0x26450001, +0x27bdffd8, 0x3c0a0008, 0xafbf0024, 0xafb40020, +0xafb3001c, 0xafb20018, 0xafb10014, 0xafb00010, +0x34ad821, 0x24090040, 0xaf490814, 0xaf400810, +0x8f420944, 0x8f430950, 0x8f460954, 0x8f47095c, +0x8f48094c, 0x93440108, 0x9345010b, 0xaf820064, +0x308400ff, 0x30a500ff, 0xaf830054, 0xaf860050, +0xaf87005c, 0xe000829, 0xaf880060, 0x14400160, +0x8fbf0024, 0xa7600068, 0x934d0900, 0x240b0050, +0x3c140800, 0x26943c70, 0x31ac00ff, 0x3c120800, +0x26523c80, 0x118b0003, 0x0, 0xa021, +0x9021, 0x934f0109, 0x8f880054, 0x24020010, +0x31f1007f, 0x1170c0, 0x116940, 0x1ae2821, +0x24b80088, 0xaf580818, 0x8f4a0104, 0x8f4b09a4, +0x3c0c000e, 0x34cc821, 0x14b4823, 0x3c010800, +0xac293b48, 0x8f440958, 0x3c010800, 0xa0223b6c, +0x97460908, 0x881823, 0x3c010800, 0xac233b4c, +0x30c7ffff, 0x7f9c0, 0x3c010800, 0xac283b70, +0xaf5f002c, 0x97420908, 0x9730002c, 0x8e910000, +0x932f0018, 0x3789821, 0xa7900058, 0xaf930048, +0x220f809, 0x31f000ff, 0x304e0002, 0x15c00133, +0x0, 0x30530001, 0x12600152, 0x0, +0x8f5109a4, 0x24130001, 0x3c010800, 0xac313b74, +0x934e0934, 0x934d0937, 0x31cc00ff, 0x31a500ff, +0x55880, 0x16c4821, 0x1305021, 0x3c010800, +0xa42a3b64, 0x3c010800, 0xa4293b62, 0x93420934, +0x304400ff, 0x2041821, 0x24700010, 0x3c010800, +0xa4303b60, 0x241f0006, 0x8f980054, 0x3c010800, +0xac3f3b68, 0x8f99005c, 0x8f4f0958, 0x8021, +0x3382823, 0x4a00142, 0x1f82023, 0x4800140, +0xa4402b, 0x11000142, 0x0, 0x3c010800, +0xac253b4c, 0x8e420000, 0x40f809, 0x0, +0x30470002, 0x14e000dd, 0x408821, 0x30460001, +0x54c00010, 0x8e420004, 0x3c040800, 0x8c843b50, +0x3c03c000, 0x838025, 0xaf500e00, 0x8f4a0000, +0x31490008, 0x1120fffd, 0x0, 0x974c0e08, +0x24100001, 0xa78c0040, 0x8f4b0e04, 0xaf8b0034, +0x8e420004, 0x40f809, 0x0, 0x2228825, +0x32250002, 0x14a00153, 0x0, 0x3c090800, +0x95293b58, 0x3c060800, 0x94c63b64, 0x3c040800, +0x94843b5a, 0x3c180800, 0x8f183b50, 0x1265021, +0x3c0f0800, 0x8def3b74, 0x3c190800, 0x97393b6e, +0x144f821, 0x8f4d0940, 0x3092821, 0x27ee0002, +0xb95821, 0x1f86021, 0x3c010800, 0xa42b3b5c, +0x3c010800, 0xa42a3b66, 0xaf8d0064, 0x3c010800, +0xac2c3b74, 0xe00009a, 0x31c4ffff, 0x8f87004c, +0x402021, 0x3c010800, 0xa0273b6d, 0x8e420008, +0x24e80001, 0xaf88004c, 0x40f809, 0x0, +0x8f4b002c, 0x97490908, 0x3c03000e, 0x3433821, +0x3124ffff, 0x431c0, 0x8f8a0054, 0xaf46002c, +0x97430908, 0x94ff001a, 0x404021, 0x33f9ffff, +0xac590000, 0x8cf8001c, 0xac580004, 0x8cef0020, +0xac4f0008, 0x90ee0019, 0x31c30003, 0x107300ec, +0x0, 0x28620002, 0x14400108, 0x240c0002, +0x106c00fa, 0x240d0003, 0x106d00b7, 0x0, +0x3c090800, 0x95293b5c, 0x935f0934, 0x934c0921, +0x3c0e0800, 0x95ce3b62, 0x33f900ff, 0x94e5002a, +0x196882, 0x318300ff, 0x978c0058, 0xd1600, +0x3c400, 0x312fffff, 0x1cf3021, 0x584825, +0x1263825, 0xacf821, 0x3c044000, 0xe4c825, +0x1f6c00, 0xad0d0004, 0xad190000, 0x93430920, +0x3c180006, 0x250d0014, 0x37e00, 0x1f87025, +0xad0e0008, 0x8f42092c, 0x25860001, 0x8e4c000c, +0xad02000c, 0x8f440930, 0x30c97fff, 0xa7890058, +0xad040010, 0x8f470938, 0x25040028, 0xad070014, +0xadaa0004, 0x8f450940, 0xada50008, 0x935f0937, +0x3c190800, 0x93393b6c, 0xada00010, 0x1fc700, +0x191c00, 0x3037825, 0x35eeffff, 0xadae000c, +0xaf4b002c, 0x180f809, 0x0, 0x3c060800, +0x94c63b66, 0x3c020800, 0x94423b5a, 0xc24821, +0x252b0002, 0xe0000c3, 0x3164ffff, 0x3c070800, +0x8ce73b48, 0x3c0a0800, 0x8d4a3b50, 0xea4023, +0x3c010800, 0xac283b48, 0x15000006, 0x0, +0x3c0a0800, 0x8d4a3b68, 0x35480040, 0x3c010800, +0xac283b68, 0x1200008b, 0x8f840048, 0x8f470e10, +0x8f900048, 0xae070020, 0x8f4b0e18, 0xae0b0024, +0x3c100800, 0x96103b5c, 0xe00005c, 0x0, +0x240e0040, 0xaf4e0814, 0x8f860054, 0x8f890050, +0xd01821, 0x692823, 0x18a00004, 0xaf830054, +0xaf630054, 0x8f6f0054, 0xaf8f0050, 0x1200000c, +0x0, 0x8f440074, 0x93780081, 0x3403fa00, +0x2f020007, 0x10400005, 0x831821, 0x93790081, +0x240c01f4, 0x32c6804, 0x1a41821, 0xaf63000c, +0x8f48095c, 0x8f8a005c, 0x10af823, 0x1be00003, +0x0, 0x8f50095c, 0xaf90005c, 0xe00005e, +0x0, 0x8f840054, 0x8e470010, 0x3c010800, +0xac243b70, 0xe0f809, 0x0, 0x3c0b0800, +0x8d6b3b48, 0x1560ff10, 0x241f0006, 0x8f4d0024, +0x97430908, 0x8f890064, 0x8f850054, 0x3c19001f, +0x978f0058, 0x8f8e002c, 0x8f930050, 0x3078ffff, +0x372cff80, 0x1ac3024, 0x1811c0, 0x32320010, +0xaf420024, 0xa5cf002c, 0xaf460024, 0xaf690044, +0xaf650050, 0xaf730054, 0x56400076, 0x8e880004, +0x323f0040, 0x57e0007f, 0x8e910008, 0x8e99000c, +0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3200008, 0x27bd0028, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x93520109, +0x8fbf0024, 0x8fb40020, 0x324400ff, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x2821, +0xa00063b, 0x27bd0028, 0x3c090800, 0x95293b5c, +0x3c040800, 0x94843b66, 0x3c1f0800, 0x97ff3b58, +0x94f80024, 0x3125ffff, 0x94e30028, 0x85c821, +0x33f7823, 0x186400, 0x36c00, 0x25eeffee, +0x1ae3025, 0x35828100, 0x24040800, 0xad02000c, +0xad060010, 0xad040018, 0xad000014, 0xa0009c7, +0x2508001c, 0x93460109, 0x8f870038, 0x64600, +0x107f825, 0xaf5f0080, 0x8f5909a0, 0x8f5809a4, +0xaf590e14, 0xaf590e10, 0xaf580e1c, 0xa000941, +0xaf580e18, 0xac930020, 0xa000a19, 0xac930024, +0x3c010800, 0xac203b4c, 0xa000967, 0x8e420000, +0x3c010800, 0xac243b4c, 0xa000967, 0x8e420000, +0x3c090800, 0x95293b5c, 0x3c190800, 0x97393b66, +0x3c050800, 0x94a53b58, 0x94ef0024, 0x313fffff, +0x33fc021, 0x3057023, 0xf6c00, 0x25c3fff2, +0x1a36025, 0xac4c000c, 0x24020800, 0xad020014, +0xad000010, 0xa0009c7, 0x25080018, 0x94e60024, +0x94e40028, 0x3c090800, 0x95293b5c, 0x6fc00, +0x4cc00, 0x37e58100, 0x37380800, 0xad05000c, +0xad180010, 0xa0009c7, 0x25080014, 0x1460fefc, +0x0, 0x94ef0024, 0x3c090800, 0x95293b5c, +0xf7400, 0x35c30800, 0xad03000c, 0xa0009c7, +0x25080010, 0x100f809, 0x0, 0xa000a5e, +0x323f0040, 0x1200ff71, 0x0, 0x8f4d0e14, +0x8f920048, 0xae4d0020, 0x8f530e1c, 0xa000a48, +0xae530024, 0x220f809, 0x0, 0xa000a61, +0x8e99000c, 0x8f820018, 0x804021, 0x3c040100, +0x90470085, 0x30e30020, 0x10600009, 0x0, +0x3c070800, 0x8ce73b70, 0x8f830014, 0xe32023, +0x4800008, 0x93890000, 0x14e30003, 0x1002021, +0x3e00008, 0x801021, 0x3c040100, 0x3e00008, +0x801021, 0x1120000b, 0x673823, 0x8f8c001c, +0x24090034, 0x918b00bc, 0x316a0002, 0x51400001, +0x24090030, 0xe9682b, 0x15a0fff1, 0x1002021, +0xe93823, 0x2419fffc, 0xb9c024, 0xf97824, +0xf8702b, 0x15c0ffea, 0x1e82021, 0x30c20003, +0x21823, 0x14c00012, 0x30690003, 0x3021, +0xa97021, 0x1c66821, 0xed602b, 0x1180ffe0, +0x3c040100, 0x2d2f0001, 0x6482b, 0x1053821, +0x1e93024, 0x14c0ffda, 0x24e4fffc, 0x2419fffc, +0xb9c024, 0x3082021, 0x3e00008, 0x801021, +0x8f8b001c, 0x24060004, 0x916a00bc, 0x31440004, +0x1480ffec, 0xa97021, 0xa000b0e, 0x3021, +0x27bdffe8, 0xafbf0010, 0x8f460100, 0x934a0109, +0x3c1f0800, 0x8fff0090, 0x2407ff80, 0x314f00ff, +0x31e8007f, 0x86140, 0x3e6c821, 0x32cc021, +0x27090120, 0x1277024, 0x3c010800, 0xa02f3bac, +0xaf4e080c, 0x3c0d0800, 0x8dad0090, 0x3c040080, +0x34820003, 0x1a65821, 0x16c1821, 0x24650120, +0x30aa0078, 0x1424025, 0xaf48081c, 0x3c1f0800, +0x8fff0090, 0x8f880044, 0x3e6c021, 0x33190007, +0x3074824, 0x33a7821, 0xaf490028, 0x25e909c0, +0x952e0002, 0x3c0d0800, 0x8dad008c, 0x3c0a0800, +0x8d4a0090, 0x31cc3fff, 0x1a61821, 0xc5980, +0x6b2821, 0xa72024, 0xaf44002c, 0x95220002, +0x3c1f0800, 0x8fff008c, 0x91070085, 0x30593fff, +0x3e67821, 0x19c180, 0x1467021, 0x1f86821, +0x31cc007f, 0x31ab007f, 0x19a2821, 0x17a5021, +0x3c03000c, 0x3c04000e, 0xa32821, 0x1441021, +0x30e60020, 0x27470980, 0xaf820028, 0xaf880018, +0xaf890020, 0xaf85001c, 0x10c00006, 0xaf870024, +0x8d020050, 0x8ca4010c, 0x443023, 0x18c00077, +0x0, 0x910c0085, 0x240dffdf, 0x18d3824, +0xa1070085, 0x8f8b0018, 0x8f890020, 0x8f870024, +0x8d65004c, 0xaf850014, 0x912f000d, 0x31ee0020, +0x11c00017, 0x0, 0x24090001, 0xa3890000, +0xaf800008, 0x8ce40024, 0x8f850008, 0x240a0008, +0xaf800004, 0xaf80000c, 0x3c010800, 0xa42a3b5a, +0x3c010800, 0xa4203b6e, 0xe000ae2, 0x3021, +0x8f850020, 0x8fbf0010, 0xaf820010, 0x90a8000d, +0x27bd0018, 0x83942, 0x3e00008, 0x30e20001, +0x913f0002, 0x24180001, 0x33f900ff, 0x192182, +0x10980039, 0x24080002, 0x1088005b, 0x8f860028, +0x8ce50024, 0x14a0001b, 0x8f9f001c, 0x91220000, +0x240a0005, 0x3046003f, 0x10ca0047, 0x24040001, +0x8f860004, 0xa3840000, 0xaf86000c, 0xaf860008, +0x8ce40024, 0x8f850008, 0x240a0008, 0x3c010800, +0xa42a3b5a, 0x3c010800, 0xa4203b6e, 0xe000ae2, +0x0, 0x8f850020, 0x8fbf0010, 0xaf820010, +0x90a8000d, 0x27bd0018, 0x83942, 0x3e00008, +0x30e20001, 0x8cf80008, 0x8cf90024, 0x8fee00c4, +0xa3800000, 0x8ce40024, 0xaf8e0008, 0x8f850008, +0x8f860004, 0x3197823, 0x240a0008, 0xaf8f000c, +0x3c010800, 0xa42a3b5a, 0x3c010800, 0xa4203b6e, +0xe000ae2, 0x0, 0x8f850020, 0x8fbf0010, +0xaf820010, 0x90a8000d, 0x27bd0018, 0x83942, +0x3e00008, 0x30e20001, 0x91230000, 0x3062003f, +0x10440027, 0x8f85001c, 0x8ce40024, 0x14800021, +0x0, 0x8d2e0018, 0x3c187fff, 0x8f85001c, +0x370fffff, 0x1cf1824, 0xaf830004, 0x8f9f0004, +0x8ca80084, 0x3e8c82b, 0x17200002, 0x3e02021, +0x8ca40084, 0xa000b9d, 0xaf840004, 0x8ca3010c, +0xa000b7b, 0xaf830014, 0x8d2c0018, 0x8f860004, +0x3c0d7fff, 0x8f89001c, 0x35a3ffff, 0x1835824, +0x24040001, 0xaf8b000c, 0xad2000cc, 0xa3840000, +0xa000ba9, 0xaf860008, 0x8cca0014, 0xa000b9d, +0xaf8a0004, 0x8ca300c8, 0xa000be0, 0xaf830004, +0x8f840028, 0x8cac0064, 0x8c8d0014, 0x18d582b, +0x11600004, 0x0, 0x8ca20064, 0xa000be0, +0xaf820004, 0x8c820014, 0xa000be0, 0xaf820004, +0x8f850008, 0x27bdffe0, 0xafbf0018, 0xafb10014, +0x14a00007, 0xafb00010, 0x8f860020, 0x24020005, +0x90c40000, 0x3083003f, 0x106200b6, 0x8f84001c, +0x8f910004, 0xa08021, 0x8f8c0024, 0x3c050800, +0x8ca53b4c, 0x8d8b0004, 0x31663fff, 0xc5502b, +0x55400001, 0xc02821, 0x938d0000, 0x11a00073, +0xb0f82b, 0x8f98001c, 0x24040034, 0x930f00bc, +0x31ee0002, 0x51c00001, 0x24040030, 0xa4c82b, +0x172000d1, 0x0, 0xa42823, 0xb0f82b, +0x3c010800, 0xa4243b58, 0x17e00068, 0x2002021, +0x3c030800, 0x8c633b48, 0x83102b, 0x54400001, +0x801821, 0x8f880020, 0x3c010800, 0xac233b50, +0x4821, 0x9104000d, 0x30830020, 0x50600001, +0x8f490e18, 0x8f830010, 0x123382b, 0x10e00059, +0x0, 0x3c040800, 0x8c843b50, 0x895821, +0x6b502b, 0x11400056, 0x90602b, 0x693023, +0xc02021, 0x3c010800, 0xac263b50, 0x12000003, +0x241ffffc, 0x1090008a, 0x32270003, 0x9fc824, +0x3c010800, 0xac393b50, 0x3c010800, 0xa4203b6e, +0x8f840008, 0x12040007, 0x8f83001c, 0xaf910004, +0x2002021, 0x8c7100cc, 0xaf900008, 0x26300001, +0xac7000cc, 0x3c020800, 0x8c423b50, 0x8f8a000c, +0x24070018, 0x822023, 0x1422823, 0xaf840008, +0x10800002, 0xaf85000c, 0x24070010, 0x8f860018, +0x3c010800, 0xa0273b6c, 0x24070040, 0x90cc0085, +0x318b00c0, 0x11670040, 0x8f8d0010, 0x14a00015, +0x2021, 0x934a0109, 0x8f420974, 0x314500ff, +0x22602, 0x24a30001, 0x3090007f, 0x3071007f, +0x1230007a, 0x2407ff80, 0xa0c30083, 0x3c090800, +0x8d293b68, 0x8f880020, 0x240d0002, 0x352c0008, +0x3c010800, 0xa02d3bad, 0x3c010800, 0xac2c3b68, +0x24040010, 0x910e000d, 0x31c60020, 0x10c00005, +0x801821, 0x24080001, 0x3c010800, 0xac283b50, +0x34830001, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x601021, 0x3e00008, 0x27bd0020, 0x3c010800, +0xa4203b58, 0x13e0ff9a, 0x2002021, 0xa000c31, +0xa02021, 0x3c040800, 0x8c843b50, 0x90602b, +0x1180ffae, 0x0, 0x3c0f0800, 0x95ef3b58, +0x1e47021, 0x1c6682b, 0x11a00007, 0x2c820004, +0x3c1f6000, 0x8ff95404, 0x3338003f, 0x1700ffe5, +0x24030042, 0x2c820004, 0x1040ffa0, 0x24030042, +0xa000c8f, 0x8fbf0018, 0x152dffc0, 0x0, +0x8cdf0074, 0x3c038000, 0x2405ff80, 0x3e3c825, +0xacd90074, 0x90d80085, 0x240e0004, 0x24040010, +0x330f003f, 0x1e54025, 0xa0c80085, 0x8f880020, +0x3c010800, 0xa02e3bad, 0x24030001, 0x9106000d, +0x30c90020, 0x15200003, 0x0, 0x3c030800, +0x8c633b50, 0x3c010800, 0xac233b48, 0xa000c86, +0x0, 0x8f87000c, 0x8c880084, 0xe8282b, +0x14a00002, 0xe08821, 0x8c910084, 0x24090001, +0xa3890000, 0x8f440e18, 0x2202821, 0xe000ae2, +0x2203021, 0x2208021, 0xa000c17, 0xaf820010, +0x71823, 0x30660003, 0x3c010800, 0xa4263b6e, +0x12200005, 0x8f8c001c, 0x918b00bc, 0x316a0004, +0x15400015, 0x24cd0004, 0x3c0f0800, 0x95ef3b6e, +0x1e47021, 0xae302b, 0x50c0ff6e, 0x8f840008, +0x2c850005, 0x14a0ffa3, 0x24030042, 0x30980003, +0x17000002, 0x981823, 0x2483fffc, 0x3c010800, +0xac233b50, 0xa000c53, 0x0, 0xa75824, +0xa000c7b, 0x1671826, 0x3c010800, 0xa42d3b6e, +0xa000ce3, 0x0, 0x3c010800, 0xac203b50, +0xa000c8e, 0x24030042, 0x8f83000c, 0x14600007, +0x1021, 0x8f880020, 0x24050005, 0x91060000, +0x30c400ff, 0x10850003, 0x0, 0x3e00008, +0x0, 0x910a0018, 0x314900ff, 0x939c2, +0x14e0fffa, 0x8f850018, 0x3c040800, 0x94843b58, +0x3c030800, 0x8c633b70, 0x3c190800, 0x8f393b50, +0x3c0f0800, 0x95ef3b6e, 0x64c021, 0x8cad0054, +0x3197021, 0x1cf6021, 0x18d5823, 0x1960001a, +0x0, 0x974d0e10, 0x8f8c0028, 0x910a001c, +0x31a6ffff, 0x8d850004, 0x314900ff, 0x8d830000, +0xc96823, 0xd3900, 0xa77821, 0x2021, +0x1e7c82b, 0x64c021, 0x3197021, 0xad8f0004, +0xad8e0000, 0x918b000a, 0x1ab5021, 0xa18a000a, +0x8f880028, 0x97490e12, 0xa5090008, 0x9107000d, +0x34e60008, 0xa106000d, 0x3e00008, 0x0, +0x27bdffe0, 0x93870000, 0x8f8f0020, 0x8fad0014, +0x3c0e7fff, 0x8f890008, 0x35c8ffff, 0xafbf001c, +0xafb00018, 0x1a81824, 0x91ea000d, 0x717c0, +0x3c1fbfff, 0x625825, 0x2d2e0001, 0x8f900014, +0x37f9ffff, 0x3c180800, 0x8f183b70, 0x3c0f0800, +0x95ef3b66, 0x1796824, 0xe4780, 0x3c07efff, +0x3c05f0ff, 0x1a81825, 0x31490020, 0x34e2ffff, +0x34acffff, 0x3105823, 0x27a50010, 0x24060002, +0x25ea0002, 0x621824, 0x808021, 0x15200002, +0x4021, 0x8f480e1c, 0xa7aa0012, 0x5600037, +0x24070000, 0x30ff00ff, 0x1fcf00, 0x8f8b0018, +0x793825, 0xafa70014, 0x916f0085, 0x3c080800, +0x91083b6d, 0x3c18dfff, 0x31ee00c0, 0x370affff, +0xe182b, 0x3c1f0800, 0x97ff3b60, 0xea6824, +0xa3a80011, 0x31740, 0x1a24825, 0x8fb90010, +0xafa90014, 0x3c0a0800, 0x914a3b6f, 0xa7bf0016, +0x8fa80014, 0x32cc024, 0x3c0b0100, 0x3c0f0fff, +0x30b1825, 0x31470003, 0x35eeffff, 0x10c6824, +0x71600, 0x6ef824, 0x3c097000, 0x1a2c825, +0x3e95825, 0xafb90014, 0xafab0010, 0xe000072, +0xa3a00015, 0x8f8c0020, 0x26020008, 0x9186000d, +0x30c40020, 0x10800006, 0x8fbf001c, 0x3c050800, +0x94a53b5c, 0x24b0ffff, 0x3c010800, 0xa4303b5c, +0x8fb00018, 0x3e00008, 0x27bd0020, 0x8f980010, +0x118502b, 0x5540ffc7, 0x24070001, 0xa000d63, +0x30ff00ff, 0x93820000, 0x27bdffe0, 0xafbf0018, +0x1040000f, 0x805021, 0x8f880020, 0x240b0005, +0x8f890004, 0x91070000, 0x8f84001c, 0x1002821, +0x30e3003f, 0x8f860028, 0x106b0008, 0x3821, +0xafa90010, 0xe000446, 0xafaa0014, 0xa3800000, +0x8fbf0018, 0x3e00008, 0x27bd0020, 0x8d190018, +0x3c0f0800, 0x8def3b50, 0x8f98000c, 0x3c027fff, +0x8d080014, 0x345fffff, 0x33f6824, 0x1f87021, +0x1ae6023, 0x1883821, 0xafa90010, 0xe000446, +0xafaa0014, 0xa000db1, 0xa3800000, 0x8f870020, +0x3c050800, 0x94a53b6e, 0x3c020800, 0x8c423b68, +0x90e6000d, 0x52400, 0x30c30020, 0x1060002c, +0x444025, 0x8f850018, 0x6021, 0x240b0001, +0x90a30085, 0x4821, 0x240a0001, 0x3c0f8000, +0x35ee0070, 0x8dc70000, 0xaf870030, 0x8f580178, +0x700fffe, 0x3c038000, 0x34790070, 0x8f380000, +0x3c050800, 0x8ca50074, 0x3c0d0800, 0x8dad0070, +0x3077823, 0xaf3821, 0x1021, 0xef302b, +0x1a22021, 0x861821, 0x3c010800, 0xac270074, +0x3c010800, 0xac230070, 0xaf4b0148, 0x3c190800, +0x8f393b70, 0xa7490144, 0xa74a0146, 0xaf59014c, +0x3c0b0800, 0x916b3b6d, 0xa34b0152, 0xaf480154, +0x3c081000, 0xa74c0158, 0x3e00008, 0xaf480178, +0x8f4b0e1c, 0x3c0a0800, 0x8d4a3b50, 0x97490e16, +0x974d0e14, 0x1456021, 0x312affff, 0xa000dd4, +0x31a9ffff, 0x8f830020, 0x9064000d, 0x30820020, +0x10400029, 0x0, 0x4821, 0x5021, +0x4021, 0x3c078000, 0x34eb0070, 0x8d670000, +0xaf870030, 0x8f4c0178, 0x580fffe, 0x3c0d8000, +0x35ac0070, 0x8d8b0000, 0x3c050800, 0x8ca50074, +0x3c040800, 0x8c840070, 0x1673023, 0xa67821, +0x1021, 0x1e6c82b, 0x82c021, 0x3197021, +0x3c010800, 0xac2f0074, 0x3c010800, 0xac2e0070, +0xaf490148, 0x3c0d0800, 0x8dad3b70, 0xa7480144, +0x24090040, 0xa74a0146, 0x3c081000, 0x240aff91, +0xaf4d014c, 0xa34a0152, 0xaf490154, 0xa7400158, +0x3e00008, 0xaf480178, 0x8f490e18, 0x97460e12, +0x97450e10, 0x30caffff, 0xa000e0a, 0x30a8ffff, +0x8f830020, 0x27bdfff8, 0x9064000d, 0x30820020, +0x1040003a, 0x0, 0x240b0001, 0x4821, +0x240a0001, 0x3c088000, 0x35070070, 0x8ce30000, +0xaf830030, 0x8f4c0178, 0x580fffe, 0x3c0e8000, +0x3c040800, 0x90843bac, 0x35c70070, 0x8cec0000, +0x3c050800, 0x8ca50074, 0xa3a40003, 0x3c190800, +0x8f390070, 0x8fad0000, 0x1833023, 0xa63821, +0x1021, 0x3227821, 0xe6c02b, 0x1f86021, +0x1ae4025, 0xafa80000, 0x3c010800, 0xac270074, +0x3c010800, 0xac2c0070, 0x9346010a, 0x3c040800, +0x90843bad, 0xa3a00002, 0xa3a60001, 0x8fa30000, +0x3c0580ff, 0x3099007f, 0x34a2ffff, 0x627824, +0x19c600, 0x1f87025, 0x240d3000, 0xaf4e014c, +0x27bd0008, 0xaf4d0154, 0xa7400158, 0xaf4b0148, +0xa7490144, 0xa74a0146, 0x3c091000, 0x240aff80, +0xa34a0152, 0x3e00008, 0xaf490178, 0x8f4b0e18, +0x97460e12, 0x97450e10, 0x30caffff, 0xa000e3e, +0x30a9ffff, 0x8f850018, 0x24020080, 0x90a40085, +0x308300c0, 0x10620005, 0x8f86001c, 0x8f880004, +0x8f870008, 0xacc800c8, 0xacc700c4, 0x3e00008, +0x0, 0x3c0a0800, 0x254a3808, 0x3c090800, +0x252938d4, 0x3c080800, 0x25082c94, 0x3c070800, +0x24e739e8, 0x3c060800, 0x24c63678, 0x3c050800, +0x24a533fc, 0x3c040800, 0x24843024, 0x3c030800, +0x24633710, 0x3c020800, 0x244234e4, 0x3c010800, +0xac2a3c78, 0x3c010800, 0xac293c74, 0x3c010800, +0xac283c70, 0x3c010800, 0xac273c7c, 0x3c010800, +0xac263c8c, 0x3c010800, 0xac253c84, 0x3c010800, +0xac243c80, 0x3c010800, 0xac233c90, 0x3c010800, +0xac223c88, 0x3e00008, 0x0, 0x0 }; +u32 bce_TXP_b06FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_TXP_b06FwRodata[(0x0/4) + 1] = { 0x0 }; +u32 bce_TXP_b06FwBss[(0x14c/4) + 1] = { 0x0 }; +u32 bce_TXP_b06FwSbss[(0x68/4) + 1] = { 0x0 }; +u32 bce_TXP_b06FwSdata[(0x0/4) + 1] = { 0x0 }; + +int bce_CP_b06FwReleaseMajor = 0x1; +int bce_CP_b06FwReleaseMinor = 0x0; +int bce_CP_b06FwReleaseFix = 0x0; +u32 bce_CP_b06FwStartAddr = 0x08000080; +u32 bce_CP_b06FwTextAddr = 0x08000000; +int bce_CP_b06FwTextLen = 0x5998; +u32 bce_CP_b06FwDataAddr = 0x08005ae0; +int bce_CP_b06FwDataLen = 0x84; +u32 bce_CP_b06FwRodataAddr = 0x08005998; +int bce_CP_b06FwRodataLen = 0x130; +u32 bce_CP_b06FwBssAddr = 0x08005c50; +int bce_CP_b06FwBssLen = 0x5d8; +u32 bce_CP_b06FwSbssAddr = 0x08005b64; +int bce_CP_b06FwSbssLen = 0xe9; +u32 bce_CP_b06FwSDataAddr = 0x00000000; +int bce_CP_b06FwSDataLen = 0x0; +u32 bce_CP_b06FwText[(0x5998/4) + 1] = { +0xa000020, +0x0, 0x0, 0xd, 0x6370342e, +0x342e3137, 0x0, 0x4041104, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x20, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x10000003, 0x0, 0xd, 0xd, +0x3c020800, 0x24425b64, 0x3c030800, 0x24636228, +0xac400000, 0x43202b, 0x1480fffd, 0x24420004, +0x3c1d0800, 0x37bd7ffc, 0x3a0f021, 0x3c100800, +0x26100080, 0x3c1c0800, 0x279c5b64, 0xe00019c, +0x0, 0xd, 0x27bdffe8, 0x3c096018, +0xafbf0010, 0x8d2c5000, 0x240dff7f, 0x24080031, +0x18d5824, 0x356a380c, 0x24070c00, 0x3c1a8000, +0xad2a5000, 0x3c04800a, 0xaf480008, 0x3c1b8008, +0xaf470024, 0xe000a1c, 0xaf840008, 0xe0009df, +0x0, 0xe00092c, 0x0, 0xe001301, +0x0, 0x3c046016, 0x8c850000, 0x3c06ffff, +0x3c025353, 0xa61824, 0x1062003f, 0x34867c00, +0x94c201f2, 0xa7800024, 0x10400003, 0xa78000c4, +0x38581e1e, 0xa7980024, 0x94c201f8, 0x10400004, +0x978300c4, 0x38591e1e, 0xa79900c4, 0x978300c4, +0x2c7f0067, 0x53e00001, 0x24030066, 0x97840024, +0x2c820401, 0x14400002, 0x602821, 0x24040400, +0x3c076000, 0x8ce90438, 0x2403103c, 0x3128ffff, +0x11030017, 0x30b9ffff, 0x5720000c, 0xa38000c6, +0x24020050, 0xa38200c6, 0x939f00c6, 0x13e0000a, +0x8fbf0010, 0x27bd0018, 0xa78000c4, 0xa7800024, +0xa780002c, 0x3e00008, 0xa78000de, 0x939f00c6, +0x17e0fff8, 0x8fbf0010, 0x27bd0018, 0xa78500c4, +0xa7840024, 0xa780002c, 0x3e00008, 0xa78000de, +0xa38000c6, 0x8ccb003c, 0x316a0001, 0x1140000e, +0x0, 0x30a7ffff, 0x10e0ffe6, 0x24020050, +0x8ccc00c8, 0x31860001, 0x14c0ffe4, 0x939f00c6, +0xa000072, 0x24020051, 0x8c8f0004, 0x3c0e6000, +0xa000055, 0x1ee3021, 0x8cef0808, 0x240d5708, +0xf7402, 0x11cd0004, 0x30b8ffff, 0x24050066, +0xa000073, 0x24040400, 0x1700ffd4, 0x939f00c6, +0xa000072, 0x24020050, 0x8f860008, 0x3089ffff, +0x93940, 0x8cc30010, 0x3c080050, 0xe82025, +0xaf430038, 0x8cc50014, 0x27420400, 0xaf820014, +0xaf45003c, 0xaf440030, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x8f4b0000, 0x316a0020, +0x1140fffd, 0x0, 0x3e00008, 0x0, +0x8f840008, 0x948a001a, 0x8c870024, 0x3149ffff, +0x940c0, 0xe83021, 0xaf46003c, 0x8c850024, +0x8f43003c, 0xa31023, 0x18400029, 0x0, +0x8c8b0020, 0x25620001, 0x3c0d0050, 0x35ac0008, +0xaf420038, 0xaf4c0030, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x8f4f0000, 0x31ee0020, +0x11c0fffd, 0x0, 0x8f4a0400, 0x3c080020, +0xac8a0010, 0x8f490404, 0xac890014, 0xaf480030, +0x0, 0x94860018, 0x9487001c, 0xc71821, +0xa4830018, 0x9485001a, 0x24a20001, 0xa482001a, +0x9498001a, 0x9499001e, 0x13380003, 0x0, +0x3e00008, 0x0, 0x3e00008, 0xa480001a, +0x8c820020, 0xa0000cc, 0x3c0d0050, 0xa0000bd, +0x0, 0x3c030800, 0x8c630020, 0x8f820010, +0x27bdffe8, 0x10620008, 0xafbf0010, 0xe0000f4, +0xaf830010, 0x3c030800, 0x8c630020, 0x24040001, +0x10640004, 0x8f890008, 0x8fbf0010, 0x3e00008, +0x27bd0018, 0x8fbf0010, 0x3c076012, 0xa520000a, +0x9528000a, 0x34e50010, 0x27bd0018, 0x3106ffff, +0x3e00008, 0xaca60090, 0x3c020800, 0x8c420020, +0x27bdffc8, 0xafbf0034, 0xafbe0030, 0xafb7002c, +0xafb60028, 0xafb50024, 0xafb40020, 0xafb3001c, +0xafb20018, 0xafb10014, 0x10400050, 0xafb00010, +0x8f840008, 0x94860006, 0x9483000a, 0xc32823, +0x30b6ffff, 0x12c0004a, 0x8fbf0034, 0x94890018, +0x948a000a, 0x12a4023, 0x3102ffff, 0x2c2382b, +0x14e00002, 0x2c02021, 0x402021, 0x2c8c0005, +0x15800002, 0x80a021, 0x24140004, 0xe0000a3, +0x2802021, 0x8f870008, 0x2809821, 0xaf80000c, +0x94ed000a, 0x2808821, 0x1280004e, 0x31b2ffff, +0x3c177000, 0x3c154000, 0x3c1e6000, 0x8f8f0014, +0x8dee0000, 0x1d71824, 0x50750050, 0x2202021, +0x2a3802b, 0x16000035, 0x3c182000, 0x50780047, +0x2202021, 0x24100001, 0x8f83000c, 0x14600039, +0x2915823, 0x230f823, 0x250c821, 0x33f1ffff, +0x1620ffee, 0x3332ffff, 0x8f870008, 0x3c110020, +0xaf510030, 0x0, 0x94e6000a, 0x3c1e6012, +0x37d50010, 0x2662821, 0xa4e5000a, 0x94e2000a, +0x94f2000a, 0x94f40018, 0x3057ffff, 0x1292003b, +0xaeb70090, 0x8ced0014, 0x8ce40010, 0x137140, +0x1ae4021, 0xe5fc3, 0x10e502b, 0x8b4821, +0x12a1821, 0xace80014, 0xace30010, 0x2d33823, +0x30f6ffff, 0x16c0ffb9, 0x8f840008, 0x8fbf0034, +0x8fbe0030, 0x8fb7002c, 0x8fb60028, 0x8fb50024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0038, 0x107e001b, +0x0, 0x1477ffcc, 0x24100001, 0xe00165c, +0x0, 0x8f83000c, 0x1060ffcb, 0x230f823, +0x2915823, 0x8f870008, 0x1702021, 0xa000187, +0x3093ffff, 0x8f83000c, 0x1460ffcb, 0x3c110020, +0xaf510030, 0xa000153, 0x0, 0xe000893, +0x2402821, 0xa000147, 0x408021, 0xe000726, +0x2402821, 0xa000147, 0x408021, 0xe001524, +0x2202021, 0xa000147, 0x408021, 0xe0000bd, +0x0, 0xa000169, 0x2d33823, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0xe000037, 0x0, +0x3c028000, 0x34500070, 0xa0001aa, 0x8e060000, +0x8f4f0000, 0x39ee0001, 0x31c20001, 0x10400024, +0x8f8600a0, 0x8e070000, 0x3c0c0800, 0x8d8c003c, +0x3c090800, 0x8d290038, 0xe66823, 0x18d2821, +0x5021, 0xad302b, 0x12a4021, 0x1062021, +0x3c010800, 0xac25003c, 0xaf8700a0, 0x3c010800, +0xac240038, 0xe0000f6, 0x0, 0x3c030800, +0x8c630070, 0x1060ffe6, 0x602021, 0x3c050800, +0x8ca50068, 0x3c060800, 0x8cc6006c, 0xe0015eb, +0x0, 0x3c010800, 0xac200070, 0x8f4f0000, +0x39ee0001, 0x31c20001, 0x1440ffde, 0x8f8600a0, +0x8e0a0000, 0x8f8b00a0, 0x3c050800, 0x8ca5003c, +0x3c040800, 0x8c840038, 0x14b4823, 0xa93821, +0xe9402b, 0x821821, 0x68f821, 0x3c010800, +0xac27003c, 0x3c010800, 0xac3f0038, 0x8f590100, +0x24180c00, 0x13380013, 0x0, 0x8f4d0100, +0x24020020, 0xaf4d0020, 0x936c0000, 0x318300ff, +0x10620012, 0x240e0050, 0x106e0004, 0x3c0f4000, +0xaf4f0138, 0xa0001a3, 0x0, 0xe00129b, +0x8f440100, 0x3c0f4000, 0xaf4f0138, 0xa0001a3, +0x0, 0xe00010f, 0x0, 0x3c0f4000, +0xaf4f0138, 0xa0001a3, 0x0, 0xe00060c, +0x8f440100, 0x3c0f4000, 0xaf4f0138, 0xa0001a3, +0x0, 0xa4102b, 0x24030001, 0x10400009, +0x3021, 0x52840, 0xa4102b, 0x4a00003, +0x31840, 0x5440fffc, 0x52840, 0x5060000a, +0x4182b, 0x85382b, 0x54e00004, 0x31842, +0xc33025, 0x852023, 0x31842, 0x1460fff9, +0x52842, 0x4182b, 0x3e00008, 0xc31021, +0x8f850014, 0x3c070008, 0x3473021, 0x8ca80004, +0x24030050, 0x24070088, 0xaf480020, 0x8ca90008, +0x90ca0000, 0x314200ff, 0x1043000c, 0x0, +0x8f4501b8, 0x4a0fffe, 0x3c024009, 0xe21825, +0x3c061000, 0x4102b, 0xaf480180, 0xaf490184, +0xaf430188, 0x3e00008, 0xaf4601b8, 0x90ac000c, +0x318b0001, 0x1560000a, 0x0, 0x90af000c, +0x31ee0002, 0x11c0ffee, 0x3821, 0x8cb90014, +0x94b80012, 0xacd9001c, 0xa000221, 0xa4d8001a, +0x94ad000e, 0xa000230, 0xa4cd002c, 0x3084ffff, +0x30a5ffff, 0x8f4201b8, 0x440fffe, 0x3c074080, +0x873025, 0x3c031000, 0xaf400180, 0xaf450184, +0xaf460188, 0x3e00008, 0xaf4301b8, 0x3e00008, +0x4102b, 0x3084ffff, 0x8f4201b8, 0x440fffe, +0x3c074038, 0x8ca60000, 0x872825, 0x3c031000, +0xaf460180, 0xaf450188, 0x3e00008, 0xaf4301b8, +0x8ca30000, 0x24020028, 0x27bdffe8, 0xaf430020, +0x24040081, 0xa3620034, 0xafbf0010, 0xe00024a, +0x0, 0x8fbf0010, 0x24020008, 0x3e00008, +0x27bd0018, 0x8f8d0028, 0x8f820030, 0x3c0c0800, +0x258c5cd4, 0x25ab0001, 0xd50c0, 0x3168000f, +0x3c060800, 0x24c65cd0, 0x14c3821, 0x25030001, +0x1464821, 0xad250000, 0xace40000, 0x3063000f, +0x11020003, 0xaf880028, 0x3e00008, 0x0, +0x3e00008, 0xaf830030, 0x8f820030, 0x8f870028, +0x1047000b, 0x0, 0x3c080800, 0x25085cd4, +0x228c0, 0xa83021, 0x8cc30000, 0x24420001, +0x10640005, 0x3042000f, 0x5447fffa, 0x228c0, +0x3e00008, 0x0, 0x3c070800, 0x24e75cd0, +0xa72021, 0xacc00000, 0x3e00008, 0xac800000, +0x8f830030, 0x8f860028, 0x1066000b, 0x804021, +0x3c070800, 0x24e75cd0, 0x328c0, 0xa71021, +0x8c440000, 0x24630001, 0x10880005, 0x3063000f, +0x5466fffa, 0x328c0, 0x3e00008, 0x1021, +0x3c070800, 0x24e75cd4, 0xa73021, 0x3e00008, +0x8cc20000, 0x3c039000, 0x34620001, 0x822025, +0xaf440020, 0x8f450020, 0x4a0fffe, 0x0, +0x3e00008, 0x0, 0x3c038000, 0x34620001, +0x822025, 0x3e00008, 0xaf440020, 0x8f850014, +0x27bdffe0, 0xafb10014, 0xafbf0018, 0xafb00010, +0x8cb00004, 0x808821, 0x24030081, 0xaf500020, +0x93640023, 0x30820010, 0x10400011, 0x0, +0x8f4701b8, 0x4e0fffe, 0x0, 0xaf500180, +0x11102b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3c0a401f, 0x6a4825, 0x3c081000, 0x27bd0020, +0xaf400184, 0xaf490188, 0x3e00008, 0xaf4801b8, +0xe0002a2, 0x2002021, 0x93660023, 0x2002021, +0x34c30010, 0xe0002ab, 0xa3630023, 0xa0002bd, +0x1821, 0x8f820014, 0x27bdffe0, 0xafb10014, +0xafb00010, 0xafbf0018, 0x808821, 0xe00028d, +0x8c44001c, 0x408021, 0x10400012, 0x24050089, +0x8f4e01b8, 0x5c0fffe, 0x8f9f0014, 0xaf500180, +0x3c194001, 0x8ff8001c, 0xb98025, 0x11102b, +0xaf580184, 0x8fbf0018, 0xaf500188, 0x8fb10014, +0x8fb00010, 0x3c0f1000, 0x27bd0020, 0x3e00008, +0xaf4f01b8, 0x24050030, 0xe000d51, 0x24040004, +0x408021, 0x1040ffea, 0x24050083, 0x8f860014, +0x3c0d0008, 0x34d2821, 0x3c0c5001, 0xaf420020, +0xacac0000, 0x8cc40004, 0x240b4646, 0xa4ab002e, +0xaca40018, 0x8cca0008, 0x402021, 0xacaa001c, +0x8cc9000c, 0xaca90020, 0x8cc80010, 0xaca80024, +0x8cc70014, 0xaca70028, 0x8cc30018, 0xaca3002c, +0xe000262, 0x8cc5001c, 0xa0002e1, 0x2821, +0x8f860014, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafbf001c, 0xafb00010, 0x8cd00004, 0x3c070008, +0x3478821, 0xaf500020, 0x92250000, 0x24030050, +0x809021, 0x30a200ff, 0x10430019, 0x24040088, +0x8f4801b8, 0x500fffe, 0x3c0d400e, 0x8d6025, +0x3c041000, 0xaf500180, 0xaf400184, 0xaf4c0188, +0xaf4401b8, 0x922a0000, 0x240bff80, 0x2002021, +0x14b4825, 0xa2290000, 0x24050004, 0xe000d33, +0x24060030, 0x12102b, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0xe000277, 0x2002021, 0xa000321, 0x2021, +0x27bdffe0, 0xafb10014, 0x3091ffff, 0xafb00010, +0xafbf0018, 0x12200015, 0xa08021, 0x8ca40000, +0x10800013, 0x24050002, 0xe000d33, 0x24060140, +0xae000000, 0x8f4201b8, 0x440000d, 0x2021, +0x3c064000, 0x2262825, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0x3c031000, 0x27bd0020, 0xaf440180, +0xaf450188, 0x3e00008, 0xaf4301b8, 0x8ca40000, +0x8f4201b8, 0x440fffe, 0x3c064000, 0x2262825, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3c031000, +0x27bd0020, 0xaf440180, 0xaf450188, 0x3e00008, +0xaf4301b8, 0x8f860014, 0x27bdffe0, 0xafb20018, +0xafb10014, 0xafb00010, 0xafbf001c, 0x94c20002, +0x809021, 0x30510004, 0x12200016, 0xa08021, +0x8cc3001c, 0xaca30000, 0x90cd0010, 0x24050014, +0x31ac00ff, 0x11850022, 0x0, 0xe000954, +0x0, 0x2002821, 0x2404008b, 0xe00033d, +0x0, 0x12182b, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x601021, 0x3e00008, +0x27bd0020, 0xaca00000, 0x3c086000, 0x8d04442c, +0x3c076c62, 0x34e67970, 0x1086003d, 0x24040002, +0xe000d51, 0x24050140, 0x10400043, 0xae020000, +0xe00094c, 0x0, 0x14400040, 0x2002821, +0xe000950, 0x0, 0xa000373, 0x8f860014, +0x94cf0002, 0x31ee0001, 0x15c0003d, 0x0, +0x8cc20004, 0x1040003e, 0xae020008, 0x8e0a0000, +0x3c098000, 0x24060001, 0xaf4a0020, 0x8f680074, +0x1093825, 0xaf670074, 0xa3600005, 0xaf66000c, +0x8e040008, 0x8f850014, 0xa7660010, 0x419c2, +0xa7660012, 0xa7660014, 0xa7660016, 0xa7630008, +0x8ca20008, 0xaf62002c, 0x8cbf000c, 0xaf7f0030, +0x8cb90010, 0xaf790034, 0x8cb80014, 0x1220001d, +0xaf780038, 0x8cab0018, 0x24030002, 0xaf6b0024, +0x1640ffc1, 0x2002821, 0xe00033d, 0x2021, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x1821, 0x601021, 0x3e00008, 0x27bd0020, +0x978a002c, 0x978b0024, 0x14b482b, 0x1120ffaf, +0x24040092, 0x24040002, 0xe000d51, 0x24050140, +0x1440ffbf, 0xae020000, 0x2002821, 0xa00037c, +0x24040083, 0x8cb10018, 0xa0003ba, 0xaf710138, +0xe00028d, 0x8cc40004, 0xa00039e, 0x0, +0x2002821, 0xa00037c, 0x24040087, 0x3086ffff, +0x8f4201b8, 0x440fffe, 0x3c094006, 0x8ca80000, +0xc93825, 0xaf480180, 0x8ca40004, 0x3c031000, +0xaf440184, 0xaf470188, 0x3e00008, 0xaf4301b8, +0x27bdffe0, 0xafb00010, 0x8f900014, 0xafb20018, +0xafb10014, 0xafbf001c, 0x809021, 0x8e040004, +0xa08821, 0xaca40000, 0xaf440020, 0x92030003, +0x30620004, 0x1040002d, 0x24020012, 0x24020006, +0xa362003f, 0x920a001b, 0x2409ffc0, 0x3148003f, +0x1093825, 0xa367003e, 0x92060003, 0x30c50001, +0x14a0002c, 0x0, 0x8e020008, 0x1040002d, +0xae220008, 0x2c9c2, 0xa7790008, 0x8e18000c, +0x240c0001, 0x240b0014, 0xaf78002c, 0x8e0f0010, +0xaf6f0030, 0x960e0016, 0xa76e0038, 0x960d0014, +0xa76d003a, 0xaf6c000c, 0xa76c0010, 0xa76c0012, +0xa76c0014, 0xa76c0016, 0xa36b0034, 0x12400023, +0x2202821, 0x92120003, 0x8fbf001c, 0x32510002, +0x2e300001, 0x26020007, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0xa362003f, +0x920a001b, 0x2409ffc0, 0x3148003f, 0x1093825, +0xa367003e, 0x92060003, 0x30c50001, 0x10a0ffd6, +0x0, 0xe00028d, 0x8e040008, 0x1440ffd5, +0xae220008, 0x2202821, 0xe00024a, 0x24040087, +0x12102b, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0xe0003e0, +0x24040082, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x1021, 0x3e00008, 0x27bd0020, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x8ca60000, +0xa03821, 0x8f850014, 0xaf460020, 0x808021, +0x8ca90004, 0x24020800, 0x24062000, 0xaf69005c, +0x8ca50008, 0x54602, 0x51c02, 0x30a4ff00, +0xa3680021, 0xa3630020, 0x1082000d, 0x2c8a0801, +0x11400035, 0x240f2000, 0x240b0200, 0x108b0008, +0x24060400, 0x2c8c0201, 0x11800044, 0x240e0400, +0x240d0100, 0x108d0002, 0x24060100, 0x24064000, +0x8f690074, 0x3c0aff00, 0x3c02ffff, 0x12a4024, +0x1061825, 0xaf630074, 0xa3650081, 0x8f850014, +0x8ca3000c, 0x622024, 0x5080002c, 0xe02821, +0xaf63003c, 0x8ca40010, 0x8f420074, 0x240cffbf, +0x24060004, 0x82f823, 0xaf7f0060, 0x8cb90014, +0xaf790064, 0x8caf0018, 0xfc402, 0xa7780068, +0xa76f006a, 0x8cae001c, 0xaf6e006c, 0x90ad000e, +0xa36d003e, 0x936b003e, 0x16c2824, 0xa365003e, +0x16000004, 0xe02821, 0xe0003e0, 0x24040082, +0x3021, 0x8fbf0014, 0x8fb00010, 0xc01021, +0x3e00008, 0x27bd0018, 0x108fffd5, 0x34068000, +0x2c982001, 0x1700ffd2, 0x24064000, 0x24194000, +0x1099ffcf, 0x3c060001, 0x341f8000, 0x549fffcc, +0x24064000, 0xa000469, 0x3c060002, 0xe0003e0, +0x2404008b, 0x10302b, 0x8fbf0014, 0x8fb00010, +0xc01021, 0x3e00008, 0x27bd0018, 0x548effc0, +0x24064000, 0xa000469, 0x24061000, 0x8cb90000, +0x8f880014, 0x27bdffe8, 0xaf590020, 0xafbf0010, +0x8d0a0008, 0x24030050, 0xaf6a0040, 0x8d090008, +0x805021, 0x2404008c, 0xaf690044, 0x8d18000c, +0x24090003, 0xaf780048, 0x8d0f0010, 0xaf6f004c, +0x8d0e0010, 0xaf6e0084, 0x8d0d0014, 0xaf6d0050, +0x8d0c0018, 0xaf6c0054, 0x8d0b001c, 0xaf6b0058, +0x93660000, 0x30c200ff, 0x1043000f, 0x0, +0x8f670048, 0x8f620040, 0xe24023, 0x5000003, +0x0, 0x15400004, 0x24040082, 0xe0003e0, +0x0, 0x4821, 0x8fbf0010, 0x1201021, +0x3e00008, 0x27bd0018, 0xaf600084, 0x3c1f0800, +0x8fff0050, 0x8cb90000, 0x2418ff80, 0x3c0c000c, +0x33f7021, 0x1d87824, 0xaf4f0028, 0x8d0b0014, +0x31cd007f, 0x1ba1821, 0x6cf821, 0xafeb00d8, +0x8d060014, 0xaf9f00c8, 0xafe600dc, 0x8d020010, +0x2447fffe, 0xa0004c9, 0xafe70108, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x9363003e, 0x808021, +0x802821, 0x30620040, 0x1040000e, 0x2021, +0x93660000, 0x24040050, 0x30c500ff, 0x10a40010, +0x0, 0xe000958, 0x8e040000, 0x8e040000, +0x8fbf0014, 0x8fb00010, 0xa762013c, 0xa000a18, +0x27bd0018, 0xe0003e0, 0x0, 0x93660000, +0x24040050, 0x30c500ff, 0x14a4fff2, 0x0, +0xe000958, 0x8e040000, 0x8e0e0000, 0x3c0f0800, +0x8def0050, 0x240aff80, 0x3c0c000c, 0x1cf4821, +0x12a4024, 0xaf480028, 0x312d007f, 0x1ba5821, +0x8e040000, 0x16c3821, 0x8fbf0014, 0x8fb00010, +0xa4e200d6, 0x27bd0018, 0xa000a18, 0xaf8700c8, +0x27bdffe8, 0xafbf0010, 0x8ca90000, 0x8f880014, +0xa03821, 0xaf490020, 0x8d050014, 0x8d050018, +0x24060005, 0xaf650018, 0x8f63004c, 0xaf63001c, +0x8f620050, 0xaf620070, 0x10800004, 0x8fbf0010, +0xc01021, 0x3e00008, 0x27bd0018, 0xe02021, +0x8f62004c, 0xe0004ec, 0x8f630050, 0x8fbf0010, +0x3021, 0xc01021, 0x3e00008, 0x27bd0018, +0x27bdffe0, 0xafb10014, 0xafb00010, 0xafbf0018, +0xa08021, 0x8ca50000, 0x808821, 0x24020050, +0xaf450020, 0x93660000, 0x2002021, 0x30c300ff, +0x10620007, 0x11282b, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0xa01021, 0x3e00008, 0x27bd0020, +0xe0004ec, 0x0, 0xe0015a9, 0x8e040000, +0x11282b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xa01021, 0x3e00008, 0x27bd0020, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x8ca20000, 0xa08021, +0x24030006, 0xaf420020, 0x1480000a, 0x8fbf0014, +0xe0004ec, 0xa02021, 0x93650000, 0x24030050, +0x30a400ff, 0x10830007, 0x0, 0x1821, +0x8fbf0014, 0x8fb00010, 0x601021, 0x3e00008, +0x27bd0018, 0xe0015a9, 0x8e040000, 0xa000569, +0x1821, 0x27bdffe0, 0xafb20018, 0x3092ffff, +0xafb00010, 0xafbf001c, 0xafb10014, 0x1640001b, +0xa08021, 0x93640000, 0x24030050, 0x308200ff, +0x10430025, 0x240bff80, 0x9764013c, 0xe0009af, +0x3084ffff, 0x936e0000, 0x240d0050, 0x31d100ff, +0x162d0005, 0x0, 0x9378003e, 0x330f0040, +0x11e00025, 0x0, 0xe0002a2, 0x2002021, +0x936d0005, 0x240efffe, 0x2002021, 0x1ae6024, +0x358b0002, 0xe0002ab, 0xa36b0005, 0x8f4f01b8, +0x5e0fffe, 0x3c19400b, 0xaf500180, 0x259c025, +0x3c101000, 0xaf400184, 0x8fbf001c, 0xaf580188, +0x8fb20018, 0xaf5001b8, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x3c0c0800, 0x8d8c0050, +0x3c08000c, 0x1855021, 0x3149007f, 0x14b3024, +0x13a3821, 0xe82821, 0xaf460028, 0x94a400d6, +0xa000580, 0xaf8500c8, 0xe0002a2, 0x2002021, +0x93670005, 0x2408fffe, 0x2002021, 0xe83024, +0x34c50002, 0xa3650005, 0x9362007d, 0x34430002, +0xe0002ab, 0xa363007d, 0xe000a1a, 0x2002021, +0x937f0000, 0x33f900ff, 0x13310009, 0x24110001, +0x8f440178, 0x480fffe, 0x240a0002, 0x3c091000, +0xaf500140, 0xa34a0144, 0xa000594, 0xaf490178, +0xaf71000c, 0xa7710010, 0xa7710012, 0xa7710014, +0xa0005c1, 0xa7710016, 0x8f850014, 0x27bdffe8, +0xafbf0010, 0x8ca60004, 0x24030050, 0x24040086, +0xaf460020, 0x93670000, 0x30e200ff, 0x10430007, +0xc02821, 0xe000572, 0x0, 0x8fbf0010, +0x1021, 0x3e00008, 0x27bd0018, 0x93690005, +0x31280002, 0x1100fff7, 0x2021, 0x8fbf0010, +0x1021, 0x3e00008, 0x27bd0018, 0x27bdffe0, +0xafbf0018, 0xafb10014, 0xafb00010, 0x93660001, +0x808021, 0xe0002a2, 0x30d10004, 0x93640005, +0x1029c2, 0xa7650000, 0x34830040, 0xa3630005, +0xe0002ab, 0x2002021, 0xe000a1a, 0x2002021, +0x24020001, 0xaf62000c, 0x2002021, 0xa7620010, +0x24050002, 0xa7620012, 0x24060140, 0xa7620014, +0xe000d33, 0xa7620016, 0x16200004, 0x8fbf0018, +0x9788002c, 0x2507ffff, 0xa787002c, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe0, +0xafbf0018, 0xafb10014, 0xafb00010, 0xe0002a2, +0x808821, 0x93630005, 0x2202021, 0xe0002ab, +0x307000ff, 0x2402003e, 0x12020005, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x8f440178, 0x480fffe, 0x24060007, 0x3c051000, +0xaf510140, 0x2202021, 0xa3460144, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0xaf450178, 0xa0005e8, +0x27bd0020, 0x27bdffe8, 0xafbf0014, 0xafb00010, +0x8f500020, 0x0, 0xe000a1a, 0xaf440020, +0xaf500020, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x24091680, 0x3c08000c, 0xaf490028, +0x3483821, 0x8ce60000, 0x3c036000, 0x8c654448, +0xc41026, 0x3e00008, 0xa21021, 0x24020004, +0x24030001, 0xa362007d, 0xa3630005, 0x8f450178, +0x4a0fffe, 0x0, 0xaf440140, 0x24060002, +0x3c041000, 0xa3460144, 0x3e00008, 0xaf440178, +0x27bdffe0, 0xafb00010, 0x8f900014, 0xafbf0018, +0xafb10014, 0x920c000e, 0xa08821, 0xa36c0021, +0x920b000d, 0xa36b0020, 0x960a0012, 0xa76a003c, +0x96090010, 0x3126ffff, 0xaf660084, 0xe000636, +0x8e04001c, 0xaf62004c, 0x8f68004c, 0x24450001, +0x403021, 0xaf680050, 0x8f620050, 0x3c1f7fff, +0x24040005, 0xaf620054, 0xaf650058, 0x8f630058, +0x37f9ffff, 0x3c0b7f00, 0xaf63005c, 0xa3600023, +0xaf790064, 0xa3640037, 0x8e070014, 0x24030050, +0x2202021, 0xaf670048, 0x8f780048, 0x24c7fffe, +0xaf780024, 0x8e0f0018, 0xaf6f006c, 0x920e000c, +0xa36e0036, 0x936d003e, 0x35ac0020, 0xa36c003e, +0x8f6a0074, 0x14b4824, 0x35284000, 0xaf680074, +0x93650000, 0x30a200ff, 0x5043000b, 0x8e280000, +0xe0004ec, 0x0, 0xe000640, 0x8e240000, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x1021, +0x3e00008, 0x27bd0020, 0x3c090800, 0x8d290050, +0x2402ff80, 0x3c10000c, 0x1092821, 0xa21824, +0xaf430028, 0x8e390000, 0x3c1f0800, 0x8fff0050, +0x33fc021, 0x330f007f, 0x1fa7021, 0x1d06821, +0xada600d8, 0xada000dc, 0xada70108, 0xe0004ec, +0xaf8d00c8, 0xe000640, 0x8e240000, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x1021, 0x3e00008, +0x27bd0020, 0x3084ffff, 0x8f4201b8, 0x440fffe, +0x3c074035, 0x873025, 0x3c031000, 0xaf450180, +0xaf400184, 0xaf460188, 0x3e00008, 0xaf4301b8, +0x27bdffe0, 0xafb10014, 0x808821, 0x8f840014, +0xafbf0018, 0xafb00010, 0x8c900004, 0x2404008a, +0xaf500020, 0x93630005, 0x30620002, 0x14400022, +0x2002821, 0x93650023, 0x2404008d, 0x30a60020, +0x14c0001d, 0x2002821, 0x9369003f, 0x24070012, +0x312800ff, 0x11070018, 0x24040081, 0xe0002a2, +0x2002021, 0x936c0023, 0x240a0004, 0x2002021, +0x358b0042, 0xa36b0023, 0xe0002ab, 0xa36a007d, +0x8f4d0178, 0x5a0fffe, 0x0, 0xaf500140, +0x11102b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x240f0002, 0x3c0e1000, 0x27bd0020, 0xa34f0144, +0x3e00008, 0xaf4e0178, 0xe0006aa, 0x0, +0x11102b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x3084ffff, 0x8f4201b8, +0x440fffe, 0x3c074036, 0x873025, 0x3c031000, +0xaf450180, 0xaf400184, 0xaf460188, 0x3e00008, +0xaf4301b8, 0x27bdffe0, 0xafb20018, 0x809021, +0x8f840014, 0xafb10014, 0xafbf001c, 0xafb00010, +0x8c900004, 0x24110012, 0x2404008a, 0xaf500020, +0x93630005, 0x30620002, 0x14400019, 0x2002821, +0x9367003f, 0x2002821, 0x30e600ff, 0x10d10014, +0x24040081, 0x936a003f, 0x24080004, 0x314900ff, +0x1128000f, 0x0, 0xe0002a2, 0x2002021, +0x936e0023, 0x240cfffe, 0x2002021, 0x35cd0020, +0xa36d0023, 0xa371003f, 0x936b0005, 0x16c2824, +0xe0002ab, 0xa3650005, 0x2002821, 0x2021, +0xe0006eb, 0x0, 0x12102b, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x27bdffd8, 0xafb3001c, 0x3093ffff, +0xafb40020, 0xafb20018, 0xafbf0024, 0xafb10014, +0xafb00010, 0x30b4ffff, 0x12600027, 0x9021, +0x8f900014, 0x8e030000, 0x3c068000, 0x24020040, +0x33e02, 0x32c02, 0x30e4007f, 0x668824, +0x1482001d, 0x30a500ff, 0x8f830020, 0x2c680009, +0x51000010, 0x8f91000c, 0x35880, 0x3c0c0800, +0x258c5998, 0x16c5021, 0x8d490000, 0x1200008, +0x0, 0x2922821, 0x30a5ffff, 0xe00023c, +0x24040084, 0x16200002, 0x8f900014, 0xaf800020, +0x8f91000c, 0x260a0020, 0x26490001, 0x1408021, +0x3132ffff, 0x16200004, 0xaf8a0014, 0x253582b, +0x1560ffdc, 0x0, 0x2401021, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x24080034, +0x10a80051, 0x0, 0x3c050800, 0x24a55d50, +0xe00024a, 0x24040081, 0x8f900014, 0x11102b, +0xa00074d, 0xaf820020, 0x24070033, 0x14a7fff6, +0x0, 0x3c050800, 0x24a55d50, 0xe000255, +0x2202021, 0x8f900014, 0xa00074d, 0xaf820020, +0x24030022, 0x10a30042, 0x0, 0x3c050800, +0x24a55d50, 0xe00033d, 0x24040081, 0x8f900014, +0xa000769, 0x11102b, 0x24060007, 0x14a6fff7, +0x0, 0x3c050800, 0x24a55d50, 0xe000558, +0x2202021, 0xa000773, 0x8f900014, 0x24040006, +0x14a4ffee, 0x0, 0x3c050800, 0x24a55d50, +0xe00051d, 0x2202021, 0xa000773, 0x8f900014, +0x24020005, 0x14a2ffe5, 0x0, 0x3c050800, +0x24a55d50, 0xe000449, 0x2202021, 0xa000773, +0x8f900014, 0x241f0004, 0x14bfffdc, 0x0, +0x3c050800, 0x24a55d50, 0xe0004ac, 0x2202021, +0xa000773, 0x8f900014, 0x2cad0037, 0x51a0ffa9, +0x8f91000c, 0x5c080, 0x3c190800, 0x273959bc, +0x3197821, 0x8dee0000, 0x1c00008, 0x0, +0x2928021, 0x3205ffff, 0xe00023c, 0x24040084, +0xa00074d, 0x8f900014, 0x3c050800, 0x24a55d50, +0xe00064d, 0x2202021, 0xa000773, 0x8f900014, +0x3c050800, 0x24a55d50, 0xe000539, 0x2202021, +0xa000773, 0x8f900014, 0xe0006b5, 0x2202021, +0xa000773, 0x8f900014, 0xe0006f6, 0x2202021, +0xa000773, 0x8f900014, 0x3c050800, 0x24a55d50, +0xe0003ed, 0x2202021, 0xa000773, 0x8f900014, +0xe0002b0, 0x2202021, 0xa000773, 0x8f900014, +0xe000248, 0x2202021, 0xa00074d, 0xaf820020, +0xe000311, 0x2202021, 0xa000773, 0x8f900014, +0xe000215, 0x2202021, 0xa000773, 0x8f900014, +0xe0002d6, 0x2202021, 0xa000773, 0x8f900014, +0x3c050800, 0x24a55d50, 0xe000366, 0x2202021, +0xa000773, 0x8f900014, 0x3084ffff, 0x30c600ff, +0x8f4201b8, 0x440fffe, 0x64400, 0x1043025, +0x3c072000, 0xc72025, 0x3c031000, 0xaf400180, +0xaf450184, 0xaf440188, 0x3e00008, 0xaf4301b8, +0x27bdffe8, 0xafb00010, 0xafbf0014, 0x3c076000, +0x24060002, 0x10800006, 0xa08021, 0x10102b, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x3c09600e, 0xad200034, 0x8ce5201c, 0x8f820014, +0x2408fffc, 0xa81824, 0xace3201c, 0xe0007e7, +0x8c45000c, 0x10102b, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x3c02600e, 0x34470100, +0x24090018, 0x274a0400, 0x0, 0x0, +0x0, 0x3c060050, 0x34c30200, 0xaf440038, +0xaf45003c, 0xaf430030, 0x1401821, 0x8f4b0000, +0x31680020, 0x1100fffd, 0x2406007f, 0x2408ffff, +0x8c6c0000, 0x24c6ffff, 0x24630004, 0xacec0000, +0x14c8fffb, 0x24e70004, 0x0, 0x0, +0x0, 0x3c0f0020, 0xaf4f0030, 0x0, +0x24ad0200, 0x1a5702b, 0x2529ffff, 0x8e2021, +0x1520ffe1, 0x1a02821, 0x3e00008, 0x0, +0x27bdffe0, 0xafb10014, 0xafbf0018, 0xafb00010, +0x3c05600e, 0x8ca20034, 0x808821, 0x14400006, +0x3c046000, 0x8c87201c, 0x2408fffc, 0xe83024, +0x34c30001, 0xac83201c, 0x8f8b0014, 0x24090001, +0xaca90034, 0x95690002, 0x8d650014, 0x8d70000c, +0x2d240081, 0x8d670004, 0x8d660008, 0x10800007, +0x8d6a0010, 0x2d2c0004, 0x1580000e, 0x30ce0007, +0x312d0003, 0x11a0000b, 0x0, 0x2404008b, +0x2002821, 0xe0007e7, 0x24060003, 0x11102b, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x15c0fff6, 0x2404008b, 0x3c030020, +0xaf430030, 0x0, 0x24020001, 0xaf82000c, +0x0, 0x0, 0x0, 0x3c1f0150, +0x13fc825, 0x25380003, 0x3c0f600e, 0xaf470038, +0x181882, 0xaf46003c, 0x35e8003c, 0xaf590030, +0x27470400, 0x8f440000, 0x30860020, 0x10c0fffd, +0x0, 0x10600008, 0x2466ffff, 0x2403ffff, +0x8ceb0000, 0x24c6ffff, 0x24e70004, 0xad0b0000, +0x14c3fffb, 0x25080004, 0x3c08600e, 0xad090038, +0x0, 0x0, 0x0, 0x3c070020, +0xaf470030, 0x0, 0xe00080f, 0x1402021, +0x2002821, 0x2021, 0xe0007e7, 0x24060003, +0x11102b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffd8, 0xafb20018, +0x3092ffff, 0xafb10014, 0xafbf0020, 0xafb3001c, +0xafb00010, 0x1240002c, 0x8821, 0xa0008a7, +0x24130001, 0x50b3003c, 0x8ce5000c, 0xd, +0x262d0001, 0x31b1ffff, 0x24ec0020, 0x232382b, +0x10e00021, 0xaf8c0014, 0x8f82000c, 0x1440001e, +0x8f870014, 0x3c067000, 0x3c032000, 0x8ce40000, +0x862824, 0x14a30018, 0x8f850034, 0x44402, +0x3c098000, 0x898024, 0x14a0ffea, 0x310600ff, +0x24040002, 0x10c4001f, 0x28ca0003, 0x11400016, +0x240b0003, 0x14d3ffe7, 0x262d0001, 0x2002821, +0xe0007f5, 0x24040001, 0x8f870014, 0xaf820034, +0x262d0001, 0x31b1ffff, 0x24ec0020, 0x232382b, +0x14e0ffe1, 0xaf8c0014, 0x2201021, 0x8fbf0020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0028, 0x14cbffd2, 0x262d0001, +0xe000835, 0x2002021, 0x8f870014, 0xa0008c1, +0xaf820034, 0x2002821, 0xe0007f5, 0x2021, +0xa0008c0, 0x8f870014, 0xe0007e7, 0x24040084, +0x1600ffc3, 0x8f870014, 0xa0008a1, 0xaf800034, +0x3082ffff, 0x14400003, 0x1821, 0x42402, +0x24030010, 0x308500ff, 0x14a00005, 0x3087000f, +0x24660008, 0x42202, 0x30c300ff, 0x3087000f, +0x14e00005, 0x30890003, 0x24680004, 0x42102, +0x310300ff, 0x30890003, 0x15200005, 0x388b0001, +0x246a0002, 0x42082, 0x314300ff, 0x388b0001, +0x31640001, 0x10800002, 0x246c0001, 0x318300ff, +0x3e00008, 0x601021, 0x308bffff, 0xb3942, +0x30e600ff, 0x3c090800, 0x25295c50, 0x64080, +0x1096021, 0x8d870000, 0x3164001f, 0x240a0001, +0x8a1804, 0x30a500ff, 0xe32025, 0x14a00002, +0x31027, 0xe22024, 0x240f0001, 0xcf7004, +0x1096821, 0xe2827, 0x14800005, 0xada40000, +0x8f860004, 0xa61024, 0x3e00008, 0xaf820004, +0x8f880004, 0x1c81025, 0x3e00008, 0xaf820004, +0x3c06001f, 0x3c036000, 0x3084ffff, 0x34c5ff80, +0x24020020, 0xac602008, 0xac60200c, 0xac602010, +0xac652014, 0xac642018, 0xac622000, 0x0, +0x0, 0x3e00008, 0x0, 0x27bdffe8, +0x2402ffff, 0xafbf0010, 0xaf820004, 0x2021, +0x3c060800, 0x24c65c50, 0x2405ffff, 0x24890001, +0x44080, 0x3124ffff, 0x1061821, 0x2c870020, +0x14e0fffa, 0xac650000, 0xe00091d, 0x2021, +0x24020001, 0x3c046000, 0x24050020, 0xac822018, +0xac852000, 0x0, 0x0, 0x0, +0x244a0001, 0x3142ffff, 0x2c460400, 0x14c0fff7, +0x8fbf0010, 0x3e00008, 0x27bd0018, 0x8f830000, +0x2c620400, 0x3e00008, 0x38420001, 0x8f830000, +0x24620001, 0x3e00008, 0xaf820000, 0x8f830000, +0x2462ffff, 0x3e00008, 0xaf820000, 0x27bdffe0, +0xafb10014, 0xafbf0018, 0xafb00010, 0x8f6b0030, +0x3c066000, 0x808821, 0xaccb2008, 0x8f6a002c, +0x3c028000, 0x24030008, 0xacca200c, 0x9769003a, +0x97680038, 0x92c00, 0x3107ffff, 0xa72025, +0xacc42010, 0xacc22014, 0xacc32000, 0x0, +0x0, 0x0, 0x3c036000, 0x8c6d2000, +0x31ac0008, 0x1580fff9, 0x0, 0x8c6e2014, +0x5c00020, 0x0, 0xe0008e1, 0x8f840004, +0x24080, 0x3c090800, 0x25295c50, 0x1093821, +0x8ce40000, 0xe0008e1, 0x28140, 0x2022021, +0x3090ffff, 0x2002021, 0xe0008ff, 0x2821, +0x3c0c8000, 0x22c5825, 0x3210ffff, 0x3c116000, +0x240a0020, 0xae2b2014, 0xae302018, 0xae2a2000, +0x0, 0x0, 0x0, 0x2001021, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x8c662014, 0x3c02001f, 0x3443ff80, +0x3c1fffe8, 0xc3c024, 0x37f90800, 0x3198021, +0x1079c2, 0x3c0c8000, 0x22c5825, 0x31f0ffff, +0x3c116000, 0x240a0020, 0xae2b2014, 0xae302018, +0xae2a2000, 0x0, 0x0, 0x0, +0x2001021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffe8, 0xafb00010, +0x3402ffff, 0x3090ffff, 0xafbf0014, 0x12020006, +0x2002021, 0xe00091d, 0x0, 0x2002021, +0xe0008ff, 0x24050001, 0x8f840000, 0x8fbf0014, +0x8fb00010, 0x2483ffff, 0x27bd0018, 0x3e00008, +0xaf830000, 0x439c2, 0x30e6003f, 0x43b42, +0x71840, 0x24021000, 0x2cc40020, 0x24c8ffe0, +0xaf42002c, 0x24630001, 0x14800003, 0x30a900ff, +0x71840, 0x310600ff, 0x36080, 0x24080001, +0x19a5821, 0x3c0a000e, 0xc82804, 0x16a3821, +0x11200005, 0x53027, 0x8ce90000, 0x1253025, +0x3e00008, 0xace60000, 0x8cee0000, 0x1c66824, +0x3e00008, 0xaced0000, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0x3c046000, 0x8c850808, 0x3403f000, +0x30a2f000, 0x50430006, 0x24020001, 0x8c870808, +0x3404e000, 0x30e6f000, 0x10c4001e, 0x24020002, +0xaf820038, 0x3c106000, 0x3c0a0200, 0xae0a0814, +0x24091000, 0x3c08000e, 0x8e034400, 0x3482021, +0xaf49002c, 0x24050120, 0xe000d97, 0x3021, +0x8f830038, 0x10600004, 0x3c021691, 0x240b0001, +0x106b000e, 0x3c023d6c, 0x344f0090, 0xae0f4408, +0x8fbf0014, 0x8fb00010, 0x3c0c6000, 0x240e1000, +0x3c0d0200, 0x27bd0018, 0xad8e4420, 0x3e00008, +0xad8d0810, 0xa0009ee, 0xaf800038, 0x3c0218da, +0x344f0090, 0xae0f4408, 0x8fbf0014, 0x8fb00010, +0x3c0c6000, 0x240e1000, 0x3c0d0200, 0x27bd0018, +0xad8e4420, 0x3e00008, 0xad8d0810, 0xa0009c2, +0x24050001, 0xa0009c2, 0x2821, 0x3c080800, +0x2508605c, 0x2404ffff, 0x1001821, 0x2402001e, +0x2442ffff, 0xac640000, 0x441fffd, 0x24630004, +0x3c070800, 0x24e760d8, 0x8ce5fffc, 0x2404001c, +0x24060001, 0x308a001f, 0x1464804, 0x24840001, +0x91027, 0x2c830020, 0x1460fffa, 0xa22824, +0xace5fffc, 0x3c056666, 0x34a4616e, 0x3c060800, +0x24c66198, 0xaf840050, 0xaf880094, 0x2404ffff, +0xc01821, 0x2402001f, 0x2442ffff, 0xac640000, +0x441fffd, 0x24630004, 0x3c076666, 0x3c050800, +0x24a56158, 0xaf860040, 0x34e6616e, 0xaf860090, +0x2404ffff, 0xa01821, 0x2402000f, 0x2442ffff, +0xac640000, 0x441fffd, 0x24630004, 0x3c0b6666, +0x3c060800, 0x24c660d8, 0x3568616e, 0xaf85009c, +0xaf880068, 0x2404ffff, 0xc01821, 0x2402001f, +0x2442ffff, 0xac640000, 0x441fffd, 0x24630004, +0x3c0d6666, 0x3c0a0800, 0x254a6218, 0x35ac616e, +0xaf860088, 0xaf8c0054, 0x2404ffff, 0x1401821, +0x24020003, 0x2442ffff, 0xac640000, 0x441fffd, +0x24630004, 0x3c090800, 0x25296228, 0x8d27fffc, +0x24040006, 0x24050001, 0x3099001f, 0x325c004, +0x24840001, 0x187827, 0x2c8e0020, 0x15c0fffa, +0xef3824, 0xad27fffc, 0x3c096666, 0x24030400, +0x240403dc, 0x24050200, 0x24060066, 0x3522616e, +0x3c080800, 0x25085d5c, 0xaf82006c, 0xaf83003c, +0xaf830064, 0xaf830048, 0xaf83007c, 0xaf8a0084, +0xaf84005c, 0xaf850044, 0xaf86004c, 0xaf840070, +0xaf850058, 0xaf860078, 0x1001821, 0x24020002, +0x2442ffff, 0xac600000, 0x441fffd, 0x24630004, +0x24040003, 0x2403000c, 0x3c0a0800, 0x254a5d68, +0xaf8a0060, 0xa000a95, 0x2405ffff, 0x41880, +0x24840001, 0x685821, 0x2c8700c0, 0x14e0fffb, +0xad650000, 0x3c0e6666, 0x35cd616e, 0x240c17a0, +0x24081800, 0xaf8d0080, 0xaf8c008c, 0x3e00008, +0xaf880074, 0x2482007f, 0x221c2, 0x3e00008, +0xaf840098, 0xaf440028, 0x3c04000c, 0x3442021, +0x52882, 0xa000d97, 0x3021, 0x42180, +0x3c036000, 0xac641008, 0x0, 0x52980, +0xac65100c, 0x0, 0x3e00008, 0x8c62100c, +0x27bdffe8, 0x802821, 0x24040038, 0xafbf0014, +0xe000aac, 0xafb00010, 0x24040e00, 0xaf440028, +0x3c10000c, 0x3502021, 0x24050010, 0xe000d97, +0x3021, 0x3501021, 0xac400000, 0xac400004, +0x24040038, 0x8fbf0014, 0x8fb00010, 0x24053fff, +0x27bd0018, 0xa000aac, 0x8c430000, 0x42180, +0x3c036000, 0xac641008, 0x0, 0x8c62100c, +0x3e00008, 0x21182, 0x27bdffc8, 0xafb40020, +0x8f940060, 0xafbe0030, 0xafb7002c, 0xafb60028, +0xb821, 0x80b021, 0x241e00c0, 0xafbf0034, +0xafb50024, 0xafb3001c, 0xafb20018, 0xafb10014, +0xafb00010, 0xa000ae9, 0xafa5003c, 0x50400001, +0x8f940060, 0x27deffff, 0x13c00028, 0x26940004, +0x8e920000, 0x3c030800, 0x24636058, 0x1240fff7, +0x283102b, 0x3c040800, 0x24845d5c, 0x2841023, +0x2a8c0, 0x9821, 0xa000af8, 0x24110001, +0x118840, 0x12200026, 0x0, 0x2b38021, +0x2512824, 0x2002021, 0x10a0fff9, 0x26730001, +0xe000ab5, 0x0, 0x166840, 0x32ec0001, +0x1ac2021, 0xe000aac, 0x2002821, 0x8f89008c, +0x26f70001, 0x8fa6003c, 0x3aeb0001, 0x316a0001, +0x2528ffff, 0x113827, 0x2cab021, 0xaf88008c, +0x16e6ffe7, 0x2479024, 0xae920000, 0x2e01021, +0x8fbf0034, 0x8fbe0030, 0x8fb7002c, 0x8fb60028, +0x8fb50024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0038, +0x3c0e0800, 0x25ce6058, 0x28e102b, 0xa000ae4, +0xae920000, 0x27bdffd8, 0xafb10014, 0xafb00010, +0xafbf0020, 0xafb3001c, 0xafb20018, 0xa08821, +0x10a0001f, 0x48040, 0x3c130800, 0x26735d5c, +0xa000b31, 0x24120001, 0x12200019, 0x26100001, +0xe000acc, 0x2002021, 0x23142, 0x2444ffa0, +0x61880, 0x3045001f, 0x2c8217a1, 0x731821, +0x2631ffff, 0x1040fff4, 0xb23004, 0x8c690000, +0x2002021, 0x24053fff, 0x1264024, 0x1500ffee, +0x1263825, 0xe000aac, 0xac670000, 0x8f8a008c, +0x26100001, 0x25470001, 0x1620ffe9, 0xaf87008c, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x8f850094, +0x805821, 0x4021, 0x4821, 0x240a001f, +0x3c0c0800, 0x258c60d4, 0x3c0d0800, 0x25ad605c, +0x8ca60000, 0x50c00014, 0x4021, 0xad1023, +0x238c0, 0x24030001, 0xa000b6a, 0x2021, +0x15000003, 0xe41021, 0x24482024, 0x4821, +0x25290001, 0x512b0013, 0x2506dfdc, 0x10600006, +0x24840001, 0xc37024, 0x15c0fff5, 0x31840, +0xa000b68, 0x4021, 0x10ac0026, 0x24a30004, +0x602821, 0x254affff, 0x1540ffe5, 0xaf850094, +0x512b0004, 0x2506dfdc, 0x4021, 0x3e00008, +0x1001021, 0x66142, 0x30c5001f, 0xc5080, +0x3c070800, 0x24e7605c, 0x24040001, 0x1473021, +0x1120000f, 0xa42004, 0x3c050800, 0x24a560d8, +0x14800005, 0x2529ffff, 0x24c60004, 0x10c50011, +0x0, 0x24040001, 0x8ccf0000, 0x4c027, +0x42040, 0x1f86824, 0x1520fff5, 0xaccd0000, +0x8f990070, 0x1001021, 0x32b4823, 0x3e00008, +0xaf890070, 0x3c050800, 0x24a5605c, 0xa000b72, +0x4021, 0x3c060800, 0x24c6605c, 0xa000b8b, +0x24040001, 0x308800ff, 0x24020002, 0x1102000a, +0x24030003, 0x1103005c, 0x8f89009c, 0x24040004, +0x1104005f, 0x24050005, 0x11050067, 0x1821, +0x3e00008, 0x601021, 0x8f890040, 0x3c0c0800, +0x258c6198, 0x3c040800, 0x24846218, 0x24030020, +0x1060000f, 0x5821, 0x240d0002, 0x240e0003, +0x3c0f0800, 0x25ef6198, 0x8d270000, 0x14e0000b, +0x30f9ffff, 0x25290004, 0x124c02b, 0x53000001, +0x1804821, 0x2463ffff, 0x5460fff8, 0x8d270000, +0x1601821, 0x3e00008, 0x601021, 0x13200032, +0x3c0500ff, 0x30e200ff, 0x403021, 0x10400042, +0x5021, 0x24050001, 0x2021, 0x5c840, +0xa6c024, 0x17000003, 0x332500ff, 0x14a0fffb, +0x24840001, 0x12cc023, 0x1828c0, 0xaa6021, +0x8c5021, 0x3144001f, 0x240c0001, 0x8c1804, +0x31027, 0xe23024, 0x110d0041, 0xad260000, +0x110e004c, 0xa1840, 0x110d0036, 0x8f870064, +0x510e0056, 0x8f8c0058, 0x240d0004, 0x110d005a, +0x8f8e007c, 0x240e0005, 0x150effda, 0x1601821, +0x240b1430, 0x11400006, 0x1821, 0x8f840098, +0x24630001, 0x6a402b, 0x1500fffd, 0x1645821, +0x8f8a0078, 0xaf890084, 0x1601821, 0x2549ffff, +0xa000bc2, 0xaf890078, 0xe52024, 0x73602, +0x1080ffd0, 0x240a0018, 0x75402, 0x314600ff, +0xa000bca, 0x240a0010, 0x3c0c0800, 0x258c6158, +0x3c040800, 0x24846198, 0xa000bb1, 0x24030010, +0x3c0c0800, 0x258c60d8, 0x3c040800, 0x24846158, +0xa000bb0, 0x8f890088, 0x71a02, 0x306600ff, +0xa000bca, 0x240a0008, 0x8f890084, 0x3c0c0800, +0x258c6218, 0x3c040800, 0x24846228, 0xa000bb1, +0x24030004, 0xa4080, 0x250b0030, 0x24e6ffff, +0x1601821, 0xaf890040, 0xa000bc2, 0xaf860064, +0xac982, 0x197880, 0x3c070800, 0x24e76158, +0x1e72021, 0xa1842, 0x8c8f0000, 0x3079001f, +0x32c3804, 0x7c027, 0x1f86024, 0xa000bdf, +0xac8c0000, 0x33142, 0x62880, 0xaf2821, +0x3062001f, 0x8cb80000, 0x24630001, 0x4cc804, +0x32142, 0x193827, 0x41080, 0x3073024, +0x4f2021, 0xa000c23, 0xaca60000, 0xa68c0, +0x25ab0032, 0x258affff, 0x1601821, 0xaf89009c, +0xa000bc2, 0xaf8a0058, 0x254b1030, 0xaf890088, +0x1601821, 0x25c9ffff, 0xa000bc2, 0xaf89007c, +0x30860007, 0x2cc20006, 0x10400014, 0x0, +0x64080, 0x3c030800, 0x24635a98, 0x1033821, +0x8ce40000, 0x800008, 0x0, 0x24090003, +0x10a9000e, 0x0, 0x240a0005, 0x10aa000b, +0x0, 0x240b0001, 0x10ab0008, 0x0, +0x8f8c0098, 0x10ac0005, 0x0, 0x3e00008, +0x1021, 0xa000b50, 0xa02021, 0xa000b9e, +0xc02021, 0x27bdffe8, 0x308400ff, 0x24030002, +0x1083000b, 0xafbf0010, 0x24060003, 0x1086003a, +0x24080004, 0x10880068, 0x240e0005, 0x108e007f, +0x2caf1430, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x2ca20030, 0x1440fffc, 0x8fbf0010, 0x24a5ffd0, +0x531c2, 0x66880, 0x3c070800, 0x24e76198, +0x1a73021, 0x8cc90000, 0x52882, 0x30ac001f, +0x240b0001, 0x18b5004, 0x8f840040, 0x12a4025, +0xacc80000, 0x8c830000, 0x50600001, 0xaf860040, +0x8f980064, 0x30ae0001, 0x24a6ffff, 0x270f0001, +0x15c00002, 0xaf8f0064, 0x24a60001, 0x64142, +0x82080, 0x871821, 0x8c790000, 0x30c2001f, +0x24060001, 0x46f804, 0x33f3824, 0x10e0ffda, +0x8fbf0010, 0x5c182, 0x187080, 0x3c0f0800, +0x25ef6158, 0x1cf4821, 0x8d2b0000, 0x56842, +0x31a5001f, 0xa66004, 0x16c5025, 0x27bd0018, +0x3e00008, 0xad2a0000, 0x2ca70030, 0x14e0ffca, +0x8fbf0010, 0x30b90007, 0x1723ffc7, 0x24a8ffce, +0x86a02, 0xd6080, 0x3c0b0800, 0x256b6158, +0x18b3021, 0x8cc40000, 0x828c2, 0x30aa001f, +0x24080001, 0x1484804, 0x8f82009c, 0x891825, +0xacc30000, 0x8c5f0000, 0x53e00001, 0xaf86009c, +0x57040, 0xe7942, 0xf2880, 0x3c040800, +0x24846198, 0xa41821, 0x8c6b0000, 0x25df0001, +0x31cd001f, 0x1f5142, 0x1a86004, 0x16c4825, +0xa1080, 0xac690000, 0x442821, 0x8ca60000, +0x8f980058, 0x33f9001f, 0x8fbf0010, 0x3283804, +0xc77825, 0x270e0001, 0x27bd0018, 0xacaf0000, +0x3e00008, 0xaf8e0058, 0x24a5efd0, 0x2cb80400, +0x1300ff99, 0x8fbf0010, 0x53142, 0x65880, +0x3c0a0800, 0x254a60d8, 0x16a3021, 0x8cc40000, +0x30a3001f, 0x24090001, 0x691004, 0x8f990088, +0x82f825, 0xacdf0000, 0x8f270000, 0x50e00001, +0xaf860088, 0x8f8d007c, 0x8fbf0010, 0x27bd0018, +0x25ac0001, 0x3e00008, 0xaf8c007c, 0x15e0ff82, +0x8fbf0010, 0x8f860098, 0x61040, 0x46f821, +0x1f2100, 0x3e4c821, 0x193840, 0x24f81430, +0xb8402b, 0x1100ff78, 0x8fbf0010, 0x24a4ebd0, +0xe0001fe, 0xc02821, 0x27942, 0xf7080, +0x3c0d0800, 0x25ad6218, 0x1cd2021, 0x8c8b0000, +0x304c001f, 0x24060001, 0x1861804, 0x8f890084, +0x1635025, 0xac8a0000, 0x8d250000, 0x50a00001, +0xaf840084, 0x8f980078, 0x8fbf0010, 0x27bd0018, +0x27080001, 0x3e00008, 0xaf880078, 0x30a50007, +0x24030003, 0x10a30010, 0x28a20004, 0x14400008, +0x24070002, 0x24030004, 0x10a30015, 0x24080005, +0x10a8000f, 0x8f850098, 0x3e00008, 0x0, +0x14a7fffd, 0x802821, 0x14c3fffb, 0x24040002, +0xa000c62, 0x0, 0x24090005, 0x802821, +0x10c9fffb, 0x24040003, 0x3e00008, 0x0, +0x14c5fff1, 0x802821, 0xa000c62, 0x24040005, +0x240a0001, 0x802821, 0x10cafff1, 0x24040004, +0x3e00008, 0x0, 0x27bdffe0, 0xafb00010, +0x481c2, 0x2607ffd0, 0x24c3003f, 0x2ce223d0, +0x24c6007f, 0xafb20018, 0xafb10014, 0xafbf001c, +0x30b100ff, 0x2002021, 0x32982, 0x691c2, +0x10400008, 0x2403ffff, 0xe000b22, 0x0, +0x2002021, 0x2202821, 0xe000d10, 0x2403021, +0x1821, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x601021, 0x3e00008, 0x27bd0020, +0x27bdffd8, 0x24a2007f, 0xafb3001c, 0xafb20018, +0x299c2, 0x309200ff, 0x24a3003f, 0x2402021, +0x2602821, 0xafb10014, 0xafb00010, 0xafbf0020, +0xe000c45, 0x38982, 0x408021, 0x402021, +0x2202821, 0x14400009, 0x1821, 0x8fbf0020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x601021, 0x3e00008, 0x27bd0028, 0xe000ad3, +0x0, 0x402821, 0x2002021, 0x1051fff3, +0x1019c0, 0xe000b22, 0x0, 0x2002021, +0x2402821, 0xe000d10, 0x2603021, 0x8fbf0020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x1821, 0x601021, 0x3e00008, 0x27bd0028, +0x3084ffff, 0x30a5ffff, 0x10800007, 0x1821, +0x30820001, 0x10400002, 0x42042, 0x651821, +0x1480fffb, 0x52840, 0x3e00008, 0x601021, +0x10c00007, 0x0, 0x8ca20000, 0x24c6ffff, +0x24a50004, 0xac820000, 0x14c0fffb, 0x24840004, +0x3e00008, 0x0, 0x10a00008, 0x24a3ffff, +0xac860000, 0x0, 0x0, 0x2402ffff, +0x2463ffff, 0x1462fffa, 0x24840004, 0x3e00008, +0x0, 0x30a5ffff, 0x8f4201b8, 0x440fffe, +0x3c076015, 0xa73025, 0x3c031000, 0xaf440180, +0xaf400184, 0xaf460188, 0x3e00008, 0xaf4301b8, +0x8f8500c8, 0x2c864000, 0x801821, 0x8ca70084, +0x87102b, 0x14400010, 0x0, 0x8ca80084, +0x2d064000, 0x50c0000f, 0x24034000, 0x8caa0084, +0x8a482b, 0x51200001, 0x8ca30084, 0x35a42, +0xb2080, 0x3c050800, 0x24a55ae0, 0x851821, +0x3e00008, 0x8c620000, 0x14c0fff4, 0x0, +0x24034000, 0x35a42, 0xb2080, 0x3c050800, +0x24a55ae0, 0x851821, 0x3e00008, 0x8c620000, +0x8f8300c8, 0x906600d0, 0x24c50001, 0xa06500d0, +0x8f8500c8, 0x906400d0, 0x90a200d2, 0x10440017, +0x0, 0x936c0078, 0x8f8b00b4, 0x318a00ff, +0xa16a000c, 0x25490001, 0x938700bc, 0x312200ff, +0x3048007f, 0x1107000b, 0x26827, 0xa3620078, +0x8f4e0178, 0x5c0fffe, 0x8f9900a8, 0x24180002, +0x3c0f1000, 0xaf590140, 0xa3580144, 0x3e00008, +0xaf4f0178, 0xa000de0, 0x31a20080, 0xa0a000d0, +0xa000dd6, 0x0, 0x8f8700c8, 0x27bdffc8, +0xafbf0030, 0xafb7002c, 0xafb60028, 0xafb50024, +0xafb40020, 0xafb3001c, 0xafb20018, 0xafb10014, +0xafb00010, 0x94e300e0, 0x94e200e2, 0x104300d7, +0x2405ffff, 0x3c047fff, 0x3497ffff, 0x2415ff80, +0xa000ec7, 0x3c16000e, 0x108a00d1, 0x8fbf0030, +0x8f9100a8, 0x3c180800, 0x8f18005c, 0x1230c0, +0x129140, 0x3117021, 0x1d57824, 0xaf4f002c, +0x94ec00e2, 0x31cd007f, 0x1ba5821, 0x318a7fff, +0x1764821, 0xa8040, 0x2091021, 0x94530000, +0x3c080800, 0x8d080058, 0x246c021, 0x32733fff, +0x131980, 0x1032021, 0x2242821, 0x30bf007f, +0x3fac821, 0xb5a024, 0xaf54002c, 0x336a021, +0x8e870010, 0x8e8f0030, 0x3785821, 0x256d0088, +0xef7023, 0x240c0002, 0xae8e0010, 0xaf8d00a4, +0xa16c0088, 0x976a003c, 0x8e840030, 0x8f9100a4, +0xe000dad, 0x3150ffff, 0x24b80, 0x2094025, +0x3c024200, 0x1022025, 0xae240004, 0x8e830004, +0x8f8d00a4, 0x8e860000, 0x240e0008, 0xada3001c, +0xada60018, 0xada0000c, 0xada00010, 0x929f000a, +0x33f900ff, 0xa5b90014, 0x96850008, 0x3c1f000c, +0xa5a50016, 0x9298000a, 0x331100ff, 0xa5b10020, +0x96900008, 0x24180005, 0xa5b00022, 0xada00024, +0x928f000b, 0x2410c000, 0x31e700ff, 0xa5a70002, +0xa1ae0001, 0x8e8c0030, 0x8f8b00a4, 0x8f8400a8, +0xad6c0008, 0x3c0a0800, 0x8d4a0054, 0x1444821, +0x1354024, 0xaf480028, 0x3c020800, 0x8c420054, +0x443021, 0x30c3007f, 0x7ac821, 0x33f2821, +0x2458821, 0xaf9100b4, 0xaf8500b8, 0xa2380000, +0x8f8a00b4, 0x2403ffbf, 0x2418ffdf, 0x954f0002, +0x1f03824, 0xf37025, 0xa54e0002, 0x914d0002, +0x31ac003f, 0x358b0040, 0xa14b0002, 0x8f8600b4, +0x8f8900c8, 0xacc00004, 0x8d28007c, 0x3c098000, +0xacc80008, 0x90c4000d, 0x3082007f, 0xa0c2000d, +0x8f8500b4, 0x90bf000d, 0x3e3c824, 0xa0b9000d, +0x8f9100b4, 0x9233000d, 0x2789024, 0xa232000d, +0x8e900034, 0x8f8b00b4, 0xad700010, 0x8e87002c, +0x8e8f0030, 0xef7023, 0xad6e0014, 0x916d0018, +0x31ac007f, 0xa16c0018, 0x8f9f00b4, 0x8e8a0030, +0x8fe80018, 0x1572024, 0x1093024, 0xc41025, +0xafe20018, 0x9283000a, 0xa3e3001c, 0x96990008, +0x8f8500b4, 0x8f9800c8, 0xa4b9001e, 0x8e900030, +0x8e840030, 0xe0001fe, 0x8f050084, 0x8f8500c8, +0x29140, 0x29900, 0x90af00bc, 0x2538821, +0x403021, 0x31e70002, 0x10e00003, 0x2118021, +0x29080, 0x2128021, 0x90b900bc, 0x33270004, +0x10e00002, 0x6f880, 0x21f8021, 0x8e980030, +0x8f8b00b4, 0x24068000, 0x330f0003, 0xf7023, +0x31cd0003, 0x20d6021, 0xad6c0004, 0x94a400e2, +0x94aa00e2, 0x94b000e2, 0x31497fff, 0x25220001, +0x30537fff, 0x2061824, 0x734025, 0xa4a800e2, +0x94a400e2, 0x3c140800, 0x8e940060, 0x30917fff, +0x12340022, 0x0, 0xe000dcd, 0x0, +0x8f8700c8, 0x2821, 0x94f300e0, 0x94f000e2, +0x1213000f, 0x8fbf0030, 0x90e900d0, 0x90e800d1, +0x313200ff, 0x310400ff, 0x244302b, 0x14c0ff36, +0x264a0001, 0x90ee00d2, 0x264b0001, 0x31cd00ff, +0x8d6021, 0x158bff33, 0x8f9100a8, 0x8fbf0030, +0x8fb7002c, 0x8fb60028, 0x8fb50024, 0x8fb40020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0xa01021, 0x3e00008, 0x27bd0038, 0x94a300e2, +0x664024, 0xa4a800e2, 0x90a400e2, 0x90b900e2, +0x309100ff, 0x11a1c2, 0x14f827, 0x1f39c0, +0x3332007f, 0x2473025, 0xa000ebf, 0xa0a600e2, +0x3084ffff, 0x30a5ffff, 0xaf440018, 0xaf45001c, +0x3e00008, 0x8f420014, 0x27bdffb8, 0xafb00020, +0x8f9000c8, 0x3084ffff, 0xafa40010, 0xafbf0044, +0xafbe0040, 0xafb7003c, 0xafb60038, 0xafb50034, +0xafb40030, 0xafb3002c, 0xafb20028, 0xafb10024, +0xa7a00018, 0x920600d1, 0x920500d0, 0x30c400ff, +0x30a300ff, 0x64102b, 0x10400122, 0xafa00014, +0x920900d0, 0x8fb50010, 0x312800ff, 0x883823, +0x24f4ffff, 0x14882b, 0x15982b, 0x2339024, +0x52400126, 0x8fb40014, 0x961e0012, 0x961f0010, +0x8fb70010, 0x3dfc823, 0x171400, 0x19c400, +0x22403, 0x181403, 0x2e2b02a, 0x52c00001, +0x402021, 0x284282b, 0x10a00002, 0x801821, +0x2801821, 0x33c00, 0x71c03, 0x3064ffff, +0x2c860009, 0x14c00002, 0x60b821, 0x24170008, +0x8e0a0008, 0x176980, 0x8e09000c, 0x31abffff, +0x3c0c0010, 0x16c4025, 0x27520400, 0xaf4a0038, +0xaf9200b0, 0xaf49003c, 0xaf480030, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x8f4f0000, +0x31ee0020, 0x11c0fffd, 0x17982a, 0x2711024, +0xa000f5a, 0xb021, 0x55e00101, 0x92580001, +0x31130080, 0x126001d0, 0x1202021, 0x96550012, +0x32a5ffff, 0xe000da2, 0xa7b50018, 0x8f9000c8, +0x291a023, 0x26de0001, 0x8f9100b0, 0x1eb400, +0x16b403, 0x26230040, 0x2d7f82a, 0x14882b, +0x24180001, 0x609021, 0x3f11024, 0xaf8300b0, +0xafb80014, 0x104001bd, 0x8f8900a8, 0x3c0c0800, +0x8d8c0054, 0x240bff80, 0x921e00d0, 0x1895021, +0x14b2824, 0x921900d0, 0xaf450028, 0x8e470010, +0x3c080800, 0x8d080058, 0x3c180800, 0x8f180054, +0x30e33fff, 0x32180, 0x1043021, 0x1265821, +0x2402ff80, 0x162f824, 0x920c00d0, 0xaf5f002c, +0x92480000, 0x33d100ff, 0x333500ff, 0x3099821, +0x117140, 0x1578c0, 0x326d007f, 0x1cf3821, +0x1ba2821, 0x318300ff, 0x3164007f, 0x3c0a000c, +0xaa8821, 0x367f021, 0x33140, 0x9a1021, +0x3108003f, 0x3c1f000e, 0xd1c021, 0x5f9821, +0x27d90088, 0x2d150008, 0xaf9100b8, 0xaf9900a4, +0xaf9800b4, 0xaf9300ac, 0x12a0018b, 0x8821, +0x240e0001, 0x10e4004, 0x310d005d, 0x11a0ffb2, +0x310f0002, 0x8e4a0028, 0x3c030080, 0x3c04ffef, +0xae6a0000, 0x8e450024, 0xa260000a, 0x3488ffff, +0xae650004, 0x9247002c, 0x3c1fff9f, 0x37feffff, +0xa267000c, 0x8e62000c, 0x3c180040, 0xa267000b, +0x433025, 0xc8c824, 0x33e8824, 0x238a825, +0xae75000c, 0x8e490004, 0xae600018, 0x3c0f00ff, +0xae690014, 0x8e4d002c, 0x35eeffff, 0x8f8b00a8, +0x1ae6024, 0xae6c0010, 0x8e470008, 0xa6600008, +0x96450012, 0xae670020, 0x8e42000c, 0x30b03fff, +0x105180, 0xae620024, 0x8e5e0014, 0x14b1821, +0x30a40001, 0xae7e0028, 0x8e590018, 0x331c2, +0x44380, 0xae79002c, 0x8e51001c, 0xc8f821, +0xa67f001c, 0xae710030, 0x96580002, 0x8e550020, +0xa678001e, 0xae750034, 0x92490033, 0x31300004, +0x56000005, 0x92500000, 0x8f8c00c8, 0x8d8b007c, +0xae6b0030, 0x92500000, 0x8f8f00b4, 0xa1f00000, +0x924e0033, 0x31cd0002, 0x51a00007, 0x925e0001, +0x8f8900b4, 0x2418ff80, 0x91310000, 0x311a825, +0xa1350000, 0x925e0001, 0x8f9900b4, 0x2409ffbf, +0x240bffdf, 0xa33e0001, 0x8f9500b4, 0x92b8000d, +0x3311007f, 0xa2b1000d, 0x8f8e00b4, 0x91d0000d, +0x2097824, 0xa1cf000d, 0x8f8800b4, 0x8e6d0014, +0x910a000d, 0x2dac0001, 0xc2940, 0x14b3824, +0xe51825, 0xa103000d, 0x96420012, 0x8f8800b4, +0x8f8700c8, 0xa5020002, 0x8e450004, 0x90ff00bc, +0x30a40003, 0x43023, 0x30de0003, 0xbe1021, +0x33f90002, 0x17200002, 0x24440034, 0x24440030, +0x90e200bc, 0xa23024, 0x30df0004, 0x17e00002, +0x24830004, 0x801821, 0x8f8f00a4, 0x24090002, +0xad030004, 0xa1e90000, 0x924e003f, 0x8f8d00a4, +0xa1ae0001, 0x8f9500a4, 0x924c003f, 0x8e440004, +0xa6ac0002, 0x976b003c, 0xe000dad, 0x3170ffff, +0x25380, 0x20a3825, 0x3c054200, 0xe51825, +0xaea30004, 0x8f8600a4, 0x8e480038, 0xacc80018, +0x8e440034, 0xacc4001c, 0xacc0000c, 0xacc00010, +0xa4c00014, 0xa4c00016, 0xa4c00020, 0xa4c00022, +0xacc00024, 0x8e640014, 0x50800001, 0x24040001, +0xacc40008, 0xe000dcd, 0x24110001, 0xa000f4d, +0x8f9000c8, 0x920f00d2, 0x920e00d0, 0x8fb50010, +0x31eb00ff, 0x31cd00ff, 0x8d6023, 0x16c5021, +0x2554ffff, 0x14882b, 0x15982b, 0x2339024, +0x1640fedd, 0x0, 0x8fb40014, 0x8fbf0044, +0x8fbe0040, 0x3a820001, 0x8fb7003c, 0x8fb60038, +0x8fb50034, 0x8fb40030, 0x8fb3002c, 0x8fb20028, +0x8fb10024, 0x8fb00020, 0x3e00008, 0x27bd0048, +0x33110020, 0x122000ef, 0x24150001, 0x921e00bc, +0x241f0001, 0xa821, 0x33d90001, 0x1320000d, +0xafbf001c, 0x8e440014, 0x8e080084, 0x88102b, +0x14400002, 0x803021, 0x8e060084, 0x8e030064, +0xc3a82b, 0x16a00002, 0xc02021, 0x8e040064, +0x80a821, 0x8e470014, 0x8e050064, 0xe5302b, +0x14c00002, 0xe02021, 0x8e040064, 0x95f023, +0x13c00004, 0x8fac001c, 0x240a0002, 0xafaa001c, +0x8fac001c, 0x28c582b, 0x156000a9, 0x1821, +0x8e4f0038, 0x8e6d000c, 0x3c0e0080, 0xae6f0000, +0x8e4a0034, 0x3c10ff9f, 0x1ae5825, 0xae6a0004, +0x9246003f, 0x360cffff, 0x16c3824, 0x3c050020, +0x3c03ffef, 0xa266000b, 0xe51025, 0x3468ffff, +0x8f8700b0, 0x48f824, 0x3c040008, 0x3e4c825, +0xae79000c, 0x8cf80014, 0xae600018, 0x2be7821, +0xae780014, 0x8cf10018, 0xa660003a, 0xa6600038, +0xae71001c, 0x8ce90008, 0xae690024, 0x8cee000c, +0xae6f002c, 0xae600028, 0xae6e0020, 0x8ced0014, +0x1b58023, 0x21e9023, 0x12400011, 0xae720010, +0x90ea003d, 0x8e650004, 0x8e640000, 0xa3100, +0xa6c821, 0x1021, 0x326402b, 0x82f821, +0x3e8c021, 0xae790004, 0xae780000, 0x90f1003d, +0xa271000a, 0x8f8900b0, 0x95320006, 0xa6720008, +0x8f8900a4, 0x24180002, 0x2a02021, 0xa1380000, +0x976f003c, 0x8f9200a4, 0xe000dad, 0x31f1ffff, +0x27380, 0x8f8500b0, 0x22e8025, 0x3c0d4200, +0x20d6025, 0xae4c0004, 0x8f8400a4, 0x8cab0038, +0xac8b0018, 0x8ca70034, 0xac87001c, 0xac80000c, +0xac800010, 0xa4800014, 0xa4800016, 0xa4800020, +0xa4800022, 0xac800024, 0x90b3003f, 0xa4930002, +0x12a00135, 0x24020001, 0x53c00002, 0x90a2003d, +0x90a2003e, 0x245f0001, 0xa09f0001, 0x8f9900a4, +0xaf350008, 0x8f8300c8, 0x24070034, 0x906600bc, +0x30c50002, 0x50a00001, 0x24070030, 0x8f9200b0, +0x8f8600b4, 0x906c00bc, 0x924a0000, 0x2412c000, +0x32a40003, 0xa0ca0000, 0x8f8500b0, 0x8f9900b4, +0x24020004, 0x90bf0001, 0x444023, 0x31090003, +0xa33f0001, 0x8f8a00b4, 0x8f9800b0, 0xf53821, +0x954f0002, 0x970e0012, 0xe93821, 0x1f26824, +0x31d13fff, 0x1b18025, 0xa5500002, 0x914b0002, +0x31880004, 0x3173003f, 0x36630040, 0xa1430002, +0x12a00002, 0x8f8500b4, 0xe83821, 0x8f8c00c8, +0xaca70004, 0x2413ffbf, 0x8d8b007c, 0x2ea40001, +0x2408ffdf, 0xacab0008, 0x90a3000d, 0x4c940, +0x306a007f, 0xa0aa000d, 0x8f8500b4, 0x90a6000d, +0xd31024, 0xa0a2000d, 0x8f8700b4, 0x90ff000d, +0x3e8c024, 0x3194825, 0xa0e9000d, 0x8f8d00b0, +0x8f8c00b4, 0x8daf0020, 0xad8f0010, 0x8dae0024, +0xad8e0014, 0x8db10028, 0xad910018, 0x8db0002c, +0xe000dcd, 0xad90001c, 0x8fab001c, 0x24030002, +0x116300ee, 0x8f8300c8, 0x8f9000c8, 0x8fa3001c, +0x608821, 0x14600002, 0x60a821, 0xa021, +0x56a0fe38, 0x291a023, 0x14882b, 0x8faa0010, +0x960d0010, 0x3c0b0020, 0x1564023, 0x2cd6021, +0x3112ffff, 0xa60c0010, 0xafb20010, 0xaf4b0030, +0x0, 0x96170010, 0x96130012, 0x1277008e, +0x16f180, 0x8e16000c, 0x8e1f0008, 0x1e17c3, +0x2de2821, 0xbec02b, 0x3e2a821, 0x2b8c821, +0xae05000c, 0xae190008, 0x8fb30010, 0x13b82b, +0x2378024, 0x1200ff04, 0x8f9000c8, 0xa000f13, +0x0, 0x8e5e0038, 0xa6600008, 0x24100003, +0xae7e0000, 0x8e5f0034, 0xa260000a, 0x8f8300b0, +0xae7f0004, 0x3c050080, 0x9078003f, 0xa270000c, +0x8e62000c, 0x3c11ff9f, 0xa278000b, 0x454825, +0x3639ffff, 0x3c04ffef, 0x8f9f00b0, 0x1393024, +0x3487ffff, 0xc77824, 0xae6f000c, 0x8fee0014, +0x97e80012, 0x8f8c00a8, 0xae6e0010, 0x8fea0014, +0xae600018, 0xae600020, 0xae6a0014, 0xae600024, +0x8fed0018, 0x310a3fff, 0xa5980, 0xae6d0028, +0x8ffe0008, 0x16c9021, 0x31030001, 0xae7e0030, +0x8ff1000c, 0x8f9900a4, 0x12c1c2, 0x38380, +0x3102821, 0x24020002, 0xa665001c, 0xa6600036, +0xae71002c, 0xa3220000, 0x9769003c, 0x8f8b00a4, +0x3c044200, 0x3127ffff, 0xe43025, 0xad660004, +0x8f8e00b0, 0x240c0001, 0x2418c000, 0x8dcf0038, +0x24060034, 0xad6f0018, 0x8dcd0034, 0xad6d001c, +0xad60000c, 0xad600010, 0xa5600014, 0xa5600016, +0xa5600020, 0xa5600022, 0xad600024, 0xa5750002, +0xa16c0001, 0x8f8800a4, 0x8f9e00b0, 0x8f9200b4, +0xad150008, 0x93df0000, 0xa25f0000, 0x8f8300b0, +0x8f9000b4, 0x90730001, 0xa2130001, 0x8f8400b4, +0x94910002, 0x2382824, 0xaa1025, 0xa4820002, +0x90990002, 0x3329003f, 0xa0890002, 0x8f8300c8, +0x8f8400b4, 0x906700bc, 0x30ef0002, 0x51e00001, +0x24060030, 0xac860004, 0x8c65007c, 0x2409ffbf, +0x2a08821, 0xac850008, 0x9082000d, 0x3059007f, +0xa099000d, 0x8f8600b4, 0x90c4000d, 0x893824, +0xa0c7000d, 0x8f8a00b4, 0x914f000d, 0x35ee0020, +0xa14e000d, 0x8f8800b0, 0x8f9300b4, 0x8d0d0020, +0xae6d0010, 0x8d0c0024, 0xae6c0014, 0x8d0b0028, +0xae6b0018, 0x8d12002c, 0xe000dcd, 0xae72001c, +0xa001115, 0x8f9000c8, 0x96020014, 0x8e040004, +0x3059ffff, 0x1948c0, 0x893821, 0xaf47003c, +0x8e0f0004, 0x8f46003c, 0x1e67023, 0x19c0003c, +0x0, 0x8e050000, 0x24a20001, 0x3c180010, +0x37150008, 0xaf420038, 0xaf550030, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x8f430000, +0x307f0020, 0x13e0fffd, 0x0, 0x8f530400, +0x3c1e0020, 0xae130008, 0x8f570404, 0xae17000c, +0xaf5e0030, 0x0, 0x3c060800, 0x8cc60044, +0x24160001, 0x10d600b9, 0x0, 0x960f0012, +0x3c050800, 0x8ca50040, 0xaf7021, 0xa60e0012, +0x960a0014, 0x254d0001, 0xa60d0014, 0x960c0014, +0x3184ffff, 0x5486ff49, 0x8fb30010, 0xa6000014, +0xe000eed, 0x30a5ffff, 0x3c040800, 0x8c840024, +0x96070012, 0x444823, 0xe93023, 0xa6060012, +0xa001130, 0x8fb30010, 0xa0820001, 0x8f8800a4, +0x24040001, 0xad040008, 0xa0010c7, 0x8f8300c8, +0x8e020000, 0xa0011c1, 0x3c180010, 0x8f8700b8, +0x8fac001c, 0x907000d0, 0x907800d0, 0x906600d0, +0x321100ff, 0x330a00ff, 0xa28c0, 0x111140, +0x45c821, 0x30c900ff, 0x3795821, 0x97940, +0x1e76821, 0x256e0088, 0xaf8e00a4, 0xaf8d00b4, +0xa16c0088, 0x9768003c, 0x3c02021, 0x8f9100a4, +0xe000dad, 0x3110ffff, 0x2fb80, 0x21f2025, +0x3c034200, 0x8f9f00b0, 0x83c025, 0xae380004, +0x8fea0038, 0x8f9800a4, 0x3021, 0x6c900, +0xaf0a0018, 0x8fe20034, 0x3c087fff, 0x3504ffff, +0xaf02001c, 0x93e9003e, 0x8f07001c, 0x8f110018, +0x97900, 0x92f02, 0xef6021, 0x3257025, +0x18f682b, 0x22e8021, 0x20d5821, 0xaf0c001c, +0xaf0b0018, 0xaf00000c, 0xaf000010, 0x93e3003e, +0x240f0005, 0x3c44024, 0xa7030014, 0x97ea0004, +0x3c02021, 0xa70a0016, 0x93e2003e, 0xa7020020, +0x97e60004, 0xa7060022, 0xaf000024, 0x93e5003f, +0xa7050002, 0x93f9003d, 0x27290001, 0xa3090001, +0x8f8700a4, 0x8f8e00b4, 0xacfe0008, 0xa1cf0000, +0x8f8600b4, 0x8f9100b0, 0x94cd0002, 0x96300012, +0x2411ffdf, 0x24d6024, 0x32123fff, 0x1925825, +0xa4cb0002, 0x90c30002, 0x240cff80, 0x306a003f, +0x35420040, 0xa0c20002, 0x8f8900b4, 0x8f8500c8, +0x3c068000, 0xad200004, 0x8cbf007c, 0xad3f0008, +0x9139000d, 0x3338007f, 0xa138000d, 0x8f8e00b4, +0x91c7000d, 0xf37824, 0xa1cf000d, 0x8f9200b4, +0x2413ffff, 0x924d000d, 0x1b18024, 0xa250000d, +0x8f8a00b4, 0xad530010, 0xad550014, 0x914b0018, +0x18b1825, 0xa1430018, 0x8f8900b4, 0x8f9900b0, +0x8d220018, 0x462824, 0xa8f825, 0xad3f0018, +0x9338003e, 0xa138001c, 0x8f8700b0, 0x8f8e00b4, +0x8f9100c8, 0x94ef0004, 0xa5cf001e, 0xe0001fe, +0x8e250084, 0x8f8600c8, 0x28140, 0x26900, +0x90d300bc, 0x20d9021, 0x402821, 0x32750002, +0x12a00003, 0x3d22021, 0x2a880, 0x952021, +0x90d200bc, 0x32530004, 0x12600003, 0x33cd0003, +0x5f880, 0x9f2021, 0x240e0004, 0x1cd6023, +0x8f9e00b4, 0x318b0003, 0x8b4021, 0xe000dcd, +0xafc80004, 0xa001110, 0x8f9000c8, 0x960b0012, +0x3c080800, 0x8d080024, 0x10b9021, 0xa6120012, +0xa001130, 0x8fb30010, 0x27bdffe0, 0xafb10014, +0x3c110800, 0x8e310050, 0xafbf0018, 0xafb00010, +0xaf8400a8, 0x93700074, 0x2247021, 0x31cd007f, +0x240fff80, 0x3205007f, 0x1cf5024, 0x1ba6021, +0x3c0b000a, 0xa38500bc, 0x18b2821, 0xaf4a0024, +0x94a80010, 0x97670006, 0x90a60062, 0x24020030, +0xe82023, 0x30c300f0, 0xaf8500c8, 0x10620009, +0x3090ffff, 0x16000017, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0x24090c00, 0x27bd0020, 0x3e00008, +0xaf490024, 0x94a200e0, 0x94a400e2, 0x90bf0113, +0x821826, 0x3079ffff, 0x33f800c0, 0x17000012, +0x2f310001, 0x16000025, 0x0, 0x5620ffef, +0x8fbf0018, 0xe000def, 0x0, 0xa0012b8, +0x8fbf0018, 0xe000ef3, 0x2002021, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x24090c00, 0x27bd0020, +0x3e00008, 0xaf490024, 0x1620ffde, 0x0, +0xe000def, 0x0, 0x1440ffdc, 0x8fbf0018, +0x16000006, 0x8f8300c8, 0x90680113, 0x3102003f, +0xa0620113, 0xa0012b8, 0x8fbf0018, 0xe000ef3, +0x2002021, 0x5040ffd1, 0x8fbf0018, 0x8f8300c8, +0x90680113, 0xa0012e1, 0x3102003f, 0xe000ef3, +0x2002021, 0x1440ffc9, 0x8fbf0018, 0x12200007, +0x8f8300c8, 0x90670113, 0x30e6003f, 0x34c20040, +0xa0620113, 0xa0012b8, 0x8fbf0018, 0xe000def, +0x0, 0x5040ffbd, 0x8fbf0018, 0x8f8300c8, +0x90670113, 0x30e6003f, 0xa0012f5, 0x34c20040, +0xaf9b00c0, 0x3e00008, 0xaf8000e4, 0x3089ffff, +0x94042, 0x2d020041, 0x92980, 0x14400002, +0x95040, 0x24080040, 0x87940, 0x8c0c0, +0x1f85821, 0x256701a8, 0xef7021, 0x25cc007f, +0x240dff80, 0x18d1824, 0x653021, 0xca2821, +0x25640088, 0x240a0088, 0x3c010800, 0xac2a004c, +0x3c010800, 0xac240050, 0xaf8500cc, 0x3c010800, +0xac290060, 0x3c010800, 0xac280064, 0x3c010800, +0xac270054, 0x3c010800, 0xac230058, 0x3c010800, +0xac26005c, 0x3e00008, 0x0, 0x308300ff, +0x30c6ffff, 0x30e400ff, 0x8f4201b8, 0x440fffe, +0x34c00, 0x1243825, 0x3c086000, 0xe82025, +0x3c031000, 0xaf450180, 0xaf460184, 0xaf440188, +0x3e00008, 0xaf4301b8, 0x8f860014, 0x3c096012, +0x35270010, 0x8ccb0004, 0x3c0c600e, 0x35850010, +0x316a0006, 0x2d480001, 0xace800c4, 0x8cc40004, +0xaca43180, 0x8cc20008, 0x94c30002, 0xaca23184, +0x3e00008, 0xa78300dc, 0x3c030800, 0x8c630050, +0x8f8400e0, 0x8f860014, 0x2402ff80, 0x64c021, +0x302c824, 0xaf590028, 0x8ccd0004, 0x3305007f, +0xba7821, 0x3c0e000c, 0x1ee2821, 0xacad0058, +0x8cc80008, 0xaf8500c8, 0x3c076012, 0xaca8005c, +0x8ccc0010, 0x34e80010, 0xacac000c, 0x8ccb000c, +0xacab0008, 0x94aa0014, 0x3c020800, 0x8c420044, +0x25490001, 0xa4a90014, 0x94a40014, 0x3083ffff, +0x10620017, 0x8f8400c8, 0x3c0a0800, 0x8d4a0040, +0xa4aa0012, 0x8cce0018, 0xac8e0024, 0x8ccd0014, +0xac8d0020, 0x8cc70018, 0xac87002c, 0x8ccc0014, +0x24060001, 0xac8c0028, 0x8d0b00bc, 0x5166001a, +0x8d0200b4, 0x8d0200b8, 0xa482003a, 0x948f003a, +0xa48f003c, 0x948800d4, 0x3e00008, 0x3102ffff, +0x3c090800, 0x8d290024, 0xa4a00014, 0x8f8400c8, +0xa4a90012, 0x8cce0018, 0xac8e0024, 0x8ccd0014, +0xac8d0020, 0x8cc70018, 0xac87002c, 0x8ccc0014, +0x24060001, 0xac8c0028, 0x8d0b00bc, 0x5566ffea, +0x8d0200b8, 0x8d0200b4, 0xa482003a, 0x948f003a, +0xa48f003c, 0x948800d4, 0x3e00008, 0x3102ffff, +0x8f860014, 0x3c0c0800, 0x8d8c0050, 0x240bff80, +0x8ccd0008, 0x3c03000c, 0xd51c0, 0x18a4021, +0x10b4824, 0xaf8a00e0, 0xaf490028, 0x90c70007, +0x3105007f, 0xba1021, 0x432821, 0x30e40004, +0x1080002f, 0xaf8500c8, 0x90cf0007, 0x31ee0008, +0x11c0003c, 0x0, 0x8cd9000c, 0x8cc40014, +0x324c02b, 0x13000026, 0x0, 0x8cc2000c, +0xaca20064, 0x8ccd0018, 0x2402fff8, 0xacad0068, +0x8ccc0010, 0xacac0080, 0x8ccb000c, 0xacab0084, +0x8cca001c, 0xacaa007c, 0x90a900bc, 0x1224024, +0xa0a800bc, 0x90c30007, 0x30670008, 0x10e00004, +0x8f8500c8, 0x90af00bc, 0x35ee0001, 0xa0ae00bc, +0x90d90007, 0x33380001, 0x1300000f, 0x8f8400c8, +0x24070020, 0x908200bc, 0x34490002, 0xa08900bc, +0x8f8400c8, 0x90880062, 0x310300f0, 0x14670006, +0x240a0034, 0xac8a00c0, 0xa0013d7, 0x0, +0xa0013b1, 0x8cc20014, 0x90cb0007, 0x31660002, +0x10c00005, 0x0, 0x908d00bc, 0x35ac0004, +0xa08c00bc, 0x8f8400c8, 0x90980113, 0x330f003f, +0xa08f0113, 0x8f8e00c8, 0x95c500d4, 0x3e00008, +0x30a2ffff, 0xaca00064, 0xa0013b2, 0x0, +0x27bdffd8, 0xafb00010, 0x8f900014, 0xafbf0024, +0xafb40020, 0xafb20018, 0xafb10014, 0xafb3001c, +0x9613000e, 0x3c07600a, 0x3c146006, 0x3264ffff, +0x36930010, 0xe001304, 0x34f40410, 0x8f8400cc, +0x3c11600e, 0xe000aa2, 0x36310010, 0x920e0015, +0x3c070800, 0x8ce70060, 0x3c126012, 0x31cd000f, +0xa38d00e8, 0x8e0e0004, 0x8e0d0008, 0x96080012, +0x961f0010, 0x9619001a, 0x9618001e, 0x960f001c, +0x310cffff, 0x33ebffff, 0x332affff, 0x3309ffff, +0x31e6ffff, 0x3c010800, 0xac2b0040, 0x3c010800, +0xac2c0024, 0x3c010800, 0xac2a0044, 0xae293178, +0xae26317c, 0x92020015, 0x96030016, 0x36520010, +0x304400ff, 0x3065ffff, 0x3c060800, 0x8cc60064, +0xae243188, 0xae4500b4, 0x92080014, 0x96190018, +0x241f0001, 0x11fc004, 0x332fffff, 0x3c050800, +0x8ca50058, 0xae5800b8, 0xae4f00bc, 0x920c0014, +0xaf8e00d0, 0xaf8d00d4, 0x318b00ff, 0xae4b00c0, +0x920a0015, 0xae670048, 0xae66004c, 0x314900ff, +0xae4900c8, 0xae65007c, 0x3c030800, 0x8c630050, +0x3c040800, 0x8c84004c, 0x3c080800, 0x8d080054, +0x3c020800, 0x8c42005c, 0x8fbf0024, 0xae630080, +0x8fb00010, 0xae830074, 0x8fb3001c, 0xae22319c, +0xae4200dc, 0xae2731a0, 0xae2631a4, 0xae24318c, +0xae233190, 0xae283194, 0xae253198, 0xae870050, +0xae860054, 0xae850070, 0x8fb10014, 0xae4700e0, +0xae4600e4, 0xae4400cc, 0xae4300d0, 0xae4800d4, +0xae4500d8, 0x8fb40020, 0x8fb20018, 0x3e00008, +0x27bd0028, 0x27bdffe0, 0xafb10014, 0xafbf0018, +0x24110001, 0xe00094c, 0xafb00010, 0x10510005, +0x978400de, 0x978300c4, 0x83102b, 0x14400008, +0x8f8500cc, 0x24070002, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0xe01021, 0x3e00008, 0x27bd0020, +0xe000d51, 0x24040005, 0xaf8200e0, 0x1040fff6, +0x24070002, 0xe000950, 0x8f900014, 0x979f00de, +0x8f9900e0, 0x8f8d00c0, 0x27ef0001, 0x240e0050, +0xaf590020, 0xa78f00de, 0xa1ae0000, 0x3c0c0800, +0x8d8c0064, 0x8f8600c0, 0x240a8000, 0xc5e00, +0xaccb0074, 0xa4c00006, 0x94c9000a, 0x241fff80, +0x3c0d000c, 0x12ac024, 0xa4d8000a, 0x90c8000a, +0x24182000, 0x11f1825, 0xa0c3000a, 0x8f8700c0, +0xa0e00078, 0x8f8500c0, 0x3821, 0xa0a00083, +0x3c020800, 0x8c420050, 0x8f8400e0, 0x447821, +0x1ffc824, 0xaf590028, 0x960b0002, 0x31ee007f, +0x1da6021, 0x18d3021, 0xa4cb00d4, 0x960a0002, +0xaf8600c8, 0x3c0e0004, 0x25492401, 0xa4c900e6, +0x8e080004, 0xacc80004, 0x8e030008, 0xacc30000, +0xa4c00010, 0xa4c00014, 0xa0c000d0, 0x8f8500c8, +0x2403ffbf, 0xa0a000d1, 0x3c040800, 0x8c840064, +0x8f8200c8, 0xa04400d2, 0x8e1f000c, 0x8f8a00c8, +0x978f00dc, 0xad5f001c, 0x8e190010, 0x24100030, +0xad590018, 0xa5400030, 0xa5510054, 0xa5510056, +0xa54f0016, 0xad4e0068, 0xad580080, 0xad580084, +0x914d0062, 0x31ac000f, 0x358b0010, 0xa14b0062, +0x8f8600c8, 0x90c90063, 0x3128007f, 0xa0c80063, +0x8f8400c8, 0x2406ffff, 0x90850063, 0xa31024, +0xa0820063, 0x8f9100c8, 0xe01021, 0x923f00bc, +0x37f90001, 0xa23900bc, 0x8f8a00c8, 0x938f00e8, +0xad580064, 0xad5000c0, 0x914e00d3, 0xf6900, +0x31cc000f, 0x18d5825, 0xa14b00d3, 0x8f8500c8, +0x8f8900d4, 0xaca900e8, 0x8f8800d0, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x27bd0020, 0xaca800ec, +0xa4a600d6, 0xa4a000e0, 0xa4a000e2, 0x3e00008, +0x0, 0x27bdffe0, 0xafb00010, 0x8f900014, +0xafb10014, 0xafbf0018, 0x8e190004, 0x3c180800, +0x8f180050, 0x240fff80, 0x1989c0, 0x2387021, +0x31cd007f, 0x1cf6024, 0x1ba5021, 0x3c0b000c, +0xaf4c0028, 0x14b4021, 0x950900d4, 0x950400d6, +0x8e070004, 0x3131ffff, 0xaf8800c8, 0xe000a1a, +0x721c0, 0x8e060004, 0x8f8300c0, 0x629c0, +0xaf450020, 0x9064003e, 0x30820040, 0x14400006, +0x8f8400c8, 0x341fffff, 0x948300d6, 0x3062ffff, +0x145f0004, 0x0, 0x948400d6, 0xe0009af, +0x3084ffff, 0x8e070004, 0x8f8600cc, 0x24050005, +0xe000d33, 0x721c0, 0x2203021, 0x24040013, +0x2821, 0x14400009, 0x3821, 0x978800de, +0x8fbf0018, 0x8fb10014, 0x2510ffff, 0xa79000de, +0x8fb00010, 0xa001328, 0x27bd0020, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x24040013, 0x2821, +0x24070003, 0xa001328, 0x27bd0020, 0x27bdffe0, +0xafb10014, 0x3091ffff, 0xafb00010, 0xafbf0018, +0x1220001d, 0x8021, 0x8f860014, 0x8cc50000, +0x24030006, 0x53f02, 0x51402, 0x30e40007, +0x14830015, 0x304500ff, 0x2ca80006, 0x1100004d, +0x55880, 0x3c0c0800, 0x258c5ab0, 0x16c5021, +0x8d490000, 0x1200008, 0x0, 0x8f8e00e4, +0x240d0001, 0x11cd0059, 0x0, 0x260b0001, +0x3170ffff, 0x24ca0020, 0x211202b, 0x1403021, +0x1480ffe6, 0xaf8a0014, 0x2001021, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x938700c6, 0x14e00038, 0x24040014, 0xe0013e9, +0x0, 0x8f860014, 0x24020001, 0xa001540, +0xaf8200e4, 0x8f8900e4, 0x24080002, 0x1128003b, +0x24040013, 0x2821, 0x3021, 0x24070001, +0xe001328, 0x0, 0xa001540, 0x8f860014, +0x8f8700e4, 0x24050002, 0x14e5fff6, 0x24040012, +0xe001395, 0x0, 0x8f8500e0, 0x403021, +0x24040012, 0xe001328, 0x3821, 0xa001540, +0x8f860014, 0x8f8300e4, 0x241f0003, 0x147fffd0, +0x260b0001, 0xe001347, 0x0, 0x8f8500e0, +0x403021, 0x24020002, 0x24040010, 0x3821, +0xaf8200e4, 0xe001328, 0x0, 0xa001540, +0x8f860014, 0x8f8f00e4, 0x24060002, 0x11e6000b, +0x0, 0x24040010, 0x2821, 0x3021, +0xa00155d, 0x24070001, 0x2821, 0xe001328, +0x3021, 0xa001540, 0x8f860014, 0xe001456, +0x0, 0x14400012, 0x8f990014, 0x8f860014, +0x24020003, 0xa001540, 0xaf8200e4, 0xe0014e2, +0x0, 0xa001540, 0x8f860014, 0xe001337, +0x0, 0x24020002, 0x24040014, 0x2821, +0x3021, 0x3821, 0xa00157a, 0xaf8200e4, +0x403821, 0x24040010, 0x97380002, 0x2821, +0xe001328, 0x3306ffff, 0xa001540, 0x8f860014, +0x8f8400c0, 0x3c077fff, 0x34e6ffff, 0x8c850074, +0x24020001, 0xa61824, 0xac830074, 0x3e00008, +0xa0820005, 0x10a00036, 0x2ca20080, 0x274a0400, +0x3c0b0005, 0x24090080, 0x10400007, 0x24080080, +0x30a6000f, 0xc54021, 0x2d030081, 0x14600002, +0xa04821, 0x24080080, 0xaf4b0030, 0x0, +0x0, 0x0, 0x11000009, 0x3821, +0x1403021, 0x8c8d0000, 0x24e70004, 0xe8602b, +0xaccd0000, 0x24840004, 0x1580fffa, 0x24c60004, +0x0, 0x0, 0x0, 0x3c0e0006, +0x10e3825, 0xaf470030, 0x0, 0x0, +0x0, 0x8f4f0000, 0x31e80010, 0x1100fffd, +0x0, 0x8f42003c, 0x8f43003c, 0x49c821, +0x323c02b, 0x13000004, 0x0, 0x8f4c0038, +0x25860001, 0xaf460038, 0x8f47003c, 0xa92823, +0xe96821, 0xaf4d003c, 0x14a0ffce, 0x2ca20080, +0x3e00008, 0x0, 0x27bdffd0, 0x3c020002, +0xafb10014, 0x3c11000c, 0xaf450038, 0xafb3001c, +0xaf46003c, 0x809821, 0xaf420030, 0x24050088, +0xaf440028, 0x3512021, 0xafbf0028, 0xafb50024, +0xafb40020, 0xafb20018, 0xe0015b2, 0xafb00010, +0x3c1f0800, 0x8fff004c, 0x3c180800, 0x8f180064, +0x2410ff80, 0x3f3a821, 0x32b9007f, 0x2b07824, +0x18a0c0, 0x33a7021, 0x189140, 0x1d12021, +0xaf4f0028, 0xe0015b2, 0x2542821, 0x3c0d0800, +0x8dad0050, 0x24050120, 0x1b35821, 0x316c007f, +0x1705024, 0x19a4821, 0x1312021, 0xe0015b2, +0xaf4a0028, 0x3c080800, 0x8d080054, 0x3c050800, +0x8ca50064, 0x1133821, 0x30e6007f, 0xf01824, +0xda2021, 0x912021, 0xaf430028, 0xe0015b2, +0x52940, 0x3c020800, 0x8c420058, 0x3c100800, +0x8e100060, 0x1200001c, 0x538821, 0x2415ff80, +0xa001635, 0x3c14000c, 0x3226007f, 0x2351824, +0xda2021, 0x2402821, 0xaf430028, 0x942021, +0xe0015b2, 0x2610ffc0, 0x1200000f, 0x2328821, +0x2e050041, 0x10a0fff4, 0x24121000, 0x3226007f, +0x109180, 0x2351824, 0xda2021, 0x2402821, +0xaf430028, 0x942021, 0xe0015b2, 0x8021, +0x1600fff3, 0x2328821, 0x3c0b0800, 0x8d6b005c, +0x240aff80, 0x24050002, 0x1734021, 0x10a4824, +0xaf490028, 0x3c040800, 0x94840062, 0x3110007f, +0x21a8821, 0x3c07000c, 0xe000d81, 0x2279821, +0x402821, 0x2602021, 0x8fbf0028, 0x8fb50024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0xa0015b2, 0x27bd0030, 0x8f830014, +0x8c620004, 0x10400003, 0x0, 0x3e00008, +0x0, 0x8c640010, 0x8c650008, 0xa0015eb, +0x8c66000c, 0x0 }; +u32 bce_CP_b06FwData[(0x84/4) + 1] = { +0x0, 0x1b, 0xf, +0xa, 0x8, 0x6, 0x5, +0x5, 0x4, 0x4, 0x3, +0x3, 0x3, 0x3, 0x3, +0x2, 0x2, 0x2, 0x2, +0x2, 0x2, 0x2, 0x2, +0x2, 0x2, 0x2, 0x2, +0x2, 0x2, 0x2, 0x1, +0x1, 0x1, 0x0 }; +u32 bce_CP_b06FwRodata[(0x130/4) + 1] = { +0x8001e8c, +0x8001d18, 0x8001e68, 0x8001e44, 0x8001e20, +0x8001dfc, 0x8001dd4, 0x8001dac, 0x8001d80, +0x8001f84, 0x8001f74, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001eb4, 0x8001eb4, 0x8001d34, +0x8001d34, 0x8001f64, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001f54, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001f44, 0x8001d34, 0x8001d34, +0x8001f34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001d34, 0x8001d34, +0x8001d34, 0x8001d34, 0x8001f1c, 0x8001d34, +0x8001d34, 0x8001f0c, 0x8001efc, 0x8003170, +0x8003178, 0x8003140, 0x800314c, 0x8003158, +0x8003164, 0x80055f8, 0x80055b8, 0x8005584, +0x8005558, 0x8005534, 0x80054f0, 0x0 }; +u32 bce_CP_b06FwBss[(0x5d8/4) + 1] = { 0x0 }; +u32 bce_CP_b06FwSbss[(0xe9/4) + 1] = { 0x0 }; +u32 bce_CP_b06FwSdata[(0x0/4) + 1] = { 0x0 }; + +u32 bce_rv2p_proc1[] = { + 0x00000010, 0xb1800002, + 0x0000001f, 0x01020d00, + 0x00000008, 0xac000001, + 0x00000000, 0x05000000, + 0x0000000c, 0x2f800001, + 0x00000000, 0x2b000000, + 0x00000000, 0x2b800000, + 0x00000010, 0x203f006d, + 0x00000010, 0x213f0003, + 0x00000010, 0x20bf003d, + 0x00000018, 0x8000fffd, + 0x00000010, 0xb1b8b014, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c380000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x80000086, + 0x00000008, 0x2d80011c, + 0x00000008, 0x02000001, + 0x00000010, 0x91de0000, + 0x0000000f, 0x42e0001c, + 0x00000010, 0x91840a19, + 0x00000010, 0x08660018, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000f, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ffe9, + 0x00000008, 0x02000001, + 0x0000000f, 0x42e0001c, + 0x00000010, 0x91840a1c, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d000006, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800106, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x08660015, + 0x00000018, 0x8000fff1, + 0x00000010, 0x205f0000, + 0x00000008, 0xb1000001, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000b, 0x2fdf0002, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2c070000, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffd1, + 0x0000000b, 0x2fdf0002, + 0x0000000c, 0x1f800000, + 0x00000000, 0x2c070000, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffcb, + 0x0000000c, 0x1f800002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffc8, + 0x0000000c, 0x29800002, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a000005, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ffc2, + 0x00000008, 0x02240047, + 0x00000018, 0x00040000, + 0x00000018, 0x8000001b, + 0x00000018, 0x8000001d, + 0x00000018, 0x80000057, + 0x00000018, 0x8000008e, + 0x00000018, 0x8000008d, + 0x00000018, 0x80000015, + 0x00000018, 0x80000014, + 0x00000018, 0x80000013, + 0x00000018, 0x80000012, + 0x00000018, 0x800000ca, + 0x00000018, 0x80000010, + 0x00000018, 0x8000000f, + 0x00000018, 0x8000000e, + 0x00000018, 0x800000c6, + 0x00000018, 0x8000000c, + 0x00000018, 0x8000000b, + 0x00000018, 0x80000014, + 0x00000018, 0x8000001a, + 0x00000018, 0x80000008, + 0x00000018, 0x8000009e, + 0x00000018, 0x80000036, + 0x00000018, 0x800000c6, + 0x00000018, 0x800000f2, + 0x00000018, 0x800000bc, + 0x00000018, 0x80000117, + 0x00000018, 0x80000040, + 0x00000018, 0x80000000, + 0x0000000c, 0x1f800001, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffa2, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff9c, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000000, 0x29420000, + 0x00000008, 0x2a000002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff95, + 0x00000018, 0x8000ff94, + 0x00000010, 0xb1bcb013, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c3c0000, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000001d, + 0x00000008, 0x2d800150, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x2c6201b2, + 0x00000018, 0x80000005, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800108, + 0x0000000c, 0x29800000, + 0x0000000c, 0x1f800000, + 0x00000010, 0x91de0000, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a000006, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff76, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a00000b, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff70, + 0x00000018, 0x00020000, + 0x00000000, 0x06820000, + 0x00000010, 0xb18a0006, + 0x00000000, 0x860c1400, + 0x00000010, 0xb18c0004, + 0x00000000, 0x05000000, + 0x00000008, 0x2a000001, + 0x00000010, 0x91d40000, + 0x00000018, 0x000d0000, + 0x00000010, 0xb1a0b013, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c200000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000fff1, + 0x00000008, 0x2d80011c, + 0x00000010, 0x001f0000, + 0x00000010, 0x91de0000, + 0x0000000f, 0x47600008, + 0x0000000f, 0x060e0001, + 0x00000000, 0x0f580000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0d610000, + 0x00000018, 0x80000013, + 0x0000000f, 0x47600008, + 0x0000000b, 0x2fdf0002, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d80011c, + 0x0000000f, 0x060e0001, + 0x00000010, 0x001f0000, + 0x00000000, 0x0f580000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0d610000, + 0x00000000, 0x02620000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x309a0000, + 0x00000000, 0x31040000, + 0x00000000, 0x0c961800, + 0x00000009, 0x0c99ffff, + 0x00000004, 0xcc993400, + 0x00000010, 0xb1963202, + 0x00000008, 0x0f800000, + 0x0000000c, 0x29800001, + 0x00000010, 0x00220002, + 0x0000000c, 0x29520001, + 0x0000000c, 0x29520000, + 0x00000008, 0x0200000e, + 0x00000008, 0x0280001a, + 0x00000010, 0xb1c40a02, + 0x00000008, 0x02000003, + 0x00000008, 0x22000001, + 0x0000000c, 0x1f800001, + 0x00000000, 0x2adf0000, + 0x00000000, 0x2a000800, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff2f, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000010, 0x91a0b00a, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ffbb, + 0x0000000c, 0x31620018, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000008, 0xac000001, + 0x00000018, 0x80000010, + 0x00000000, 0x0380b000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c004000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ffaf, + 0x00000008, 0x2d800101, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000c, 0x31620018, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c000e00, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000007, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff0f, + 0x00000010, 0xb1a0b017, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c200000, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800150, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x2c620002, + 0x00000018, 0x8000000b, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c070000, + 0x0000000c, 0x1f800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000fef8, + 0x00000008, 0x2c8000b0, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800108, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000a, + 0x00000000, 0x05000000, + 0x00000018, 0x8000feed, + 0x00000010, 0x91d40000, + 0x00000008, 0x0600aaaa, + 0x00000018, 0x8000ff7c, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000009, + 0x00000008, 0x0500aaaa, + 0x00000018, 0x8000fee5, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ff74, + 0x00000010, 0x91a03c02, + 0x00000010, 0xb1e66207, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c310000, + 0x00000009, 0x2cb1007f, + 0x00000008, 0x2cd90000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d80010d, + 0x00000010, 0xb1a80007, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c200000, + 0x00000000, 0x2ca70000, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0xb1a60010, + 0x00000010, 0x001f0000, + 0x0000000f, 0x0f300007, + 0x00000000, 0x0a600000, + 0x00000000, 0x0ae10000, + 0x0000000f, 0x4b620008, + 0x00000009, 0x0b1600ff, + 0x00000000, 0x0d620000, + 0x00000009, 0x0d1a00ff, + 0x00000010, 0x07300003, + 0x0000000c, 0x0d1a0008, + 0x0000000c, 0x0b160008, + 0x0000000f, 0x4ce30018, + 0x00000000, 0x0c992c00, + 0x00000004, 0xcc993400, + 0x00000008, 0x0f800000, + 0x0000000c, 0x29800001, + 0x00000000, 0x33310000, + 0x00000008, 0x22000016, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000c, + 0x00000010, 0x009f0000, + 0x00000000, 0x0f200000, + 0x0000000c, 0x1f800001, + 0x00000008, 0x05005555, + 0x00000018, 0x8000feb8, + 0x00000010, 0x91d40000, + 0x00000008, 0x0600aaaa, + 0x00000018, 0x8000ff47, + 0x0000000f, 0x47220008, + 0x00000009, 0x070e000f, + 0x00000008, 0x070e0008, + 0x00000008, 0x02800001, + 0x00000007, 0x02851c00, + 0x00000008, 0x82850001, + 0x00000000, 0x02854c00, + 0x00000007, 0x42851c00, + 0x00000003, 0xc3aa5200, + 0x00000000, 0x03b10e00, + 0x00000007, 0x4b071c00, + 0x0000000f, 0x0f300007, + 0x0000000f, 0x0a960003, + 0x00000000, 0x0a955c00, + 0x00000000, 0x4a005a00, + 0x00000000, 0x0c960a00, + 0x00000009, 0x0c99ffff, + 0x00000008, 0x0d00ffff, + 0x00000010, 0xb1963202, + 0x00000008, 0x0f800005, + 0x00000010, 0xb1a80009, + 0x00000010, 0x205f0000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c200000, + 0x00000000, 0x2ca70000, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000c, 0x29800001, + 0x00000010, 0x001f0000, + 0x0000000c, 0x1f800001, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000d, + 0x00000008, 0x0500aaaa, + 0x00000018, 0x8000fe91, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ff20, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000007, + 0x00000008, 0x05005555, + 0x00000018, 0x8000fe89, + 0x00000008, 0x03050004, + 0x00000006, 0x83040c00, + 0x00000008, 0x02850200, + 0x00000000, 0x86050c00, + 0x00000001, 0x860c0e00, + 0x00000008, 0x02040004, + 0x00000000, 0x02041800, + 0x00000000, 0x83871800, + 0x00000018, 0x00020000, }; -static u32 bce_rv2p_proc2[] = { - 0x00000000, 0x2a000000, - 0x00000010, 0xb1d40000, 0x00000008, 0x02540003, 0x00000018, 0x00040000, - 0x00000018, 0x8000000b, 0x00000018, 0x8000000b, 0x00000018, 0x8000000f, - 0x00000018, 0x8000004c, 0x00000018, 0x800001bd, 0x00000018, 0x800001e5, - 0x00000018, 0x8000019f, 0x00000018, 0x800001fd, 0x00000018, 0x800001a3, - 0x00000018, 0x800001aa, 0x00000018, 0x8000022f, 0x00000018, 0x80000000, - 0x0000000c, 0x29800001, 0x00000000, 0x2a000000, 0x0000000c, 0x29800000, - 0x00000010, 0x20530000, 0x00000018, 0x8000ffed, 0x0000000c, 0x29800001, - 0x00000010, 0x91de0000, 0x00000010, 0x001f0000, 0x00000000, 0x2f80aa00, - 0x00000000, 0x2a000000, 0x00000000, 0x0d610000, 0x00000000, 0x03620000, - 0x00000000, 0x2c400000, 0x00000000, 0x02638c00, 0x00000000, 0x26460000, - 0x00000008, 0x02040012, 0x00000010, 0xb906082c, 0x00000000, 0x0f580000, - 0x00000000, 0x0a640000, 0x00000000, 0x0ae50000, 0x00000000, 0x0b660000, - 0x00000000, 0x0c000000, 0x00000000, 0x0b800000, 0x00000008, 0x0cc60012, - 0x00000008, 0x0f800003, 0x00000000, 0x00000000, 0x00000010, 0x009f0000, - 0x00000008, 0x27110012, 0x00000000, 0x66900000, 0x00000008, 0xa31b0012, - 0x00000010, 0xb197320d, 0x00000000, 0x25960000, 0x00000010, 0x001f0000, - 0x00000008, 0x0f800003, 0x0000000c, 0x29800000, 0x00000010, 0x20530000, - 0x00000000, 0x22c58c00, 0x00000010, 0x009f0000, 0x00000000, 0x27002200, - 0x00000000, 0x26802000, 0x00000000, 0x231b0000, 0x0000000c, 0x69520001, - 0x00000018, 0x8000fff4, 0x00000010, 0x01130002, 0x00000010, 0xb1980003, - 0x00000010, 0x001f0000, 0x00000008, 0x0f800004, 0x00000008, 0x22000003, - 0x00000008, 0x2c80000c, 0x00000008, 0x2d00000c, 0x00000010, 0x009f0000, - 0x00000000, 0x25960000, 0x0000000c, 0x29800000, 0x00000000, 0x32140000, - 0x00000000, 0x32950000, 0x00000000, 0x33160000, 0x00000000, 0x31e32e00, - 0x00000008, 0x2d800010, 0x00000010, 0x20530000, 0x00000018, 0x8000ffb6, - 0x00000000, 0x23000000, 0x00000000, 0x25e60000, 0x00000008, 0x2200000b, - 0x0000000c, 0x69520000, 0x0000000c, 0x29800000, 0x00000010, 0x20530000, - 0x00000018, 0x8000ffaf, 0x0000000c, 0x29800001, 0x00000010, 0x91de0000, - 0x00000000, 0x2fd50000, 0x00000010, 0x001f0000, 0x00000000, 0x02700000, - 0x00000000, 0x0d620000, 0x00000000, 0xbb630800, 0x00000000, 0x2a000000, - 0x00000009, 0x076000ff, 0x0000000f, 0x2c0e0007, 0x00000008, 0x2c800000, - 0x00000008, 0x2d000064, 0x00000008, 0x2d80011c, 0x00000009, 0x06420002, - 0x0000000c, 0x61420001, 0x00000000, 0x0f400000, 0x00000000, 0x02d08c00, - 0x00000000, 0x23000000, 0x00000004, 0x826da000, 0x00000000, 0x8304a000, - 0x00000000, 0x22c50c00, 0x00000000, 0x03760000, 0x00000004, 0x83860a00, - 0x00000000, 0x83870c00, 0x00000010, 0x91de0000, 0x00000000, 0x037c0000, - 0x00000000, 0x837b0c00, 0x00000001, 0x83060e00, 0x00000000, 0x83870c00, - 0x00000000, 0x82850e00, 0x00000010, 0xb1860016, 0x0000000f, 0x47610018, - 0x00000000, 0x068e0000, 0x0000000f, 0x47670010, 0x0000000f, 0x47e20010, - 0x00000000, 0x870e1e00, 0x00000010, 0xb70e1a10, 0x00000010, 0x0ce7000e, - 0x00000008, 0x22000009, 0x00000000, 0x286d0000, 0x0000000f, 0x65680010, - 0x00000003, 0xf66c9400, 0x00000010, 0xb972a003, 0x0000000c, 0x73e70019, - 0x0000000c, 0x21420004, 0x0000000c, 0x29800000, 0x00000000, 0x37ed0000, - 0x0000000c, 0x73e7001a, 0x00000010, 0x20530000, 0x00000008, 0x22000008, - 0x0000000c, 0x61420004, 0x00000000, 0x02f60000, 0x00000004, 0x82840a00, - 0x00000010, 0xb1840a2b, 0x00000010, 0x2d67000a, 0x00000010, 0xb96d0804, - 0x00000004, 0xb6ed0a00, 0x00000000, 0x37ed0000, 0x00000018, 0x80000029, - 0x0000000c, 0x61420000, 0x00000000, 0x37040000, 0x00000000, 0x37850000, - 0x0000000c, 0x33e7001a, 0x00000018, 0x80000024, 0x00000010, 0xb96d0809, - 0x00000004, 0xb6ed0a00, 0x00000000, 0x036d0000, 0x00000004, 0xb76e0c00, - 0x00000010, 0x91ee0c1f, 0x0000000c, 0x73e7001a, 0x00000004, 0xb6ef0c00, - 0x00000000, 0x37ed0000, 0x00000018, 0x8000001b, 0x0000000c, 0x61420000, - 0x00000010, 0xb7ee0a05, 0x00000010, 0xb96f0815, 0x00000003, 0xb76e0800, - 0x00000004, 0xb7ef0a00, 0x00000018, 0x80000015, 0x00000010, 0x0ce7000c, - 0x00000008, 0x22000009, 0x00000000, 0x286d0000, 0x0000000f, 0x65680010, - 0x00000003, 0xf66c9400, 0x00000010, 0xb972a003, 0x0000000c, 0x73e70019, - 0x0000000c, 0x21420004, 0x0000000c, 0x29800000, 0x00000010, 0x20530000, - 0x00000008, 0x22000008, 0x0000000c, 0x61420004, 0x00000000, 0x37040000, - 0x00000000, 0x37850000, 0x00000000, 0x036d0000, 0x00000003, 0xb8f10c00, - 0x00000018, 0x80000004, 0x00000000, 0x02840000, 0x00000002, 0x21421800, - 0x0000000c, 0x61420000, 0x00000000, 0x286d0000, 0x0000000f, 0x65ed0010, - 0x00000009, 0x266dffff, 0x00000000, 0x23000000, 0x00000010, 0xb1840a40, - 0x00000010, 0x01420002, 0x00000004, 0xb8f10a00, 0x00000003, 0x83760a00, - 0x00000010, 0xb8040c3c, 0x00000010, 0xb7e6080a, 0x00000000, 0x0a640000, - 0x00000000, 0x0ae50000, 0x00000009, 0x0c68ffff, 0x00000009, 0x0b67ffff, - 0x00000000, 0x0be60000, 0x00000000, 0x0c840000, 0x00000010, 0xb197320b, - 0x00000008, 0x0f800002, 0x00000018, 0x80000009, 0x00000000, 0x0a6a0000, - 0x00000000, 0x0aeb0000, 0x00000000, 0x0c000000, 0x00000009, 0x0b6cffff, - 0x00000000, 0x0be90000, 0x00000000, 0x0c840000, 0x00000010, 0xb1973202, - 0x00000008, 0x0f800002, 0x00000010, 0x001f0000, 0x00000000, 0x0c860000, - 0x00000000, 0x06980000, 0x00000008, 0x0f800003, 0x00000000, 0x00000000, - 0x00000010, 0x009f0000, 0x00000010, 0xb1973212, 0x00000000, 0x231b0000, - 0x00000000, 0x28840000, 0x00000000, 0x02043600, 0x00000003, 0x8384a000, - 0x0000000f, 0x65870010, 0x00000009, 0x2607ffff, 0x00000000, 0x27111a00, - 0x00000000, 0x66900000, 0x0000000c, 0x29000000, 0x00000000, 0x24c60000, - 0x0000000c, 0x29800000, 0x00000000, 0x06980000, 0x00000010, 0x20530000, - 0x00000000, 0x22c58c00, 0x00000010, 0x001f0000, 0x00000008, 0x0f800003, - 0x00000018, 0x8000ffee, 0x00000000, 0x02043600, 0x00000000, 0x231b0000, - 0x00000000, 0x03840000, 0x00000010, 0x91870a03, 0x00000000, 0x03d00000, - 0x00000002, 0x21421800, 0x00000003, 0x8387a000, 0x0000000f, 0x65870010, - 0x00000009, 0x2607ffff, 0x00000000, 0x27111a00, 0x00000000, 0x66900000, - 0x0000000c, 0x29000000, 0x00000000, 0x32140000, 0x00000000, 0x32950000, - 0x00000005, 0x73e72c00, 0x00000005, 0x74683000, 0x00000000, 0x33170000, - 0x00000018, 0x80000146, 0x00000010, 0x91c60005, 0x00000008, 0x07000004, - 0x00000010, 0xb1c41c03, 0x00000010, 0x91840a06, 0x00000000, 0x28840000, - 0x00000000, 0x24c60000, 0x0000000c, 0x29800000, 0x00000010, 0x20530000, - 0x00000000, 0x22c58c00, 0x00000010, 0xb1840a97, 0x0000000c, 0x21420006, - 0x00000010, 0x0ce7001d, 0x0000000f, 0x43680010, 0x00000000, 0x03f30c00, - 0x00000010, 0x91870856, 0x0000000f, 0x46ec0010, 0x00000010, 0xb68d0c54, - 0x00000000, 0x838d0c00, 0x00000000, 0xa3050800, 0x00000001, 0xa3460e00, - 0x00000000, 0x28840000, 0x00000000, 0x02048c00, 0x00000008, 0x22000008, - 0x00000000, 0x03840000, 0x00000010, 0x91870a03, 0x00000000, 0x03d00000, - 0x00000002, 0x21421800, 0x00000003, 0x8387a000, 0x0000000f, 0x65870010, - 0x00000009, 0x2607ffff, 0x00000000, 0x27750c00, 0x00000000, 0x66f40000, - 0x0000000c, 0x29000000, 0x00000000, 0x24c60000, 0x0000000c, 0x29800000, - 0x00000000, 0x03068c00, 0x00000003, 0xf4680c00, 0x00000010, 0x20530000, - 0x00000000, 0x22c58c00, 0x00000018, 0x8000ffe2, 0x00000000, 0x39760000, - 0x00000000, 0x39840000, 0x0000000c, 0x33e70019, 0x00000000, 0x031e0000, - 0x00000009, 0x076000ff, 0x00000010, 0x001f0000, 0x0000000f, 0x0f0e0007, - 0x00000000, 0x83850800, 0x00000000, 0x0a7d0000, 0x00000000, 0x0afe0000, - 0x00000000, 0x0b7f0000, 0x00000000, 0x0d7a0000, 0x00000000, 0x0c000000, - 0x00000000, 0x0bfc0000, 0x00000000, 0x0c970e00, 0x00000008, 0x0f800003, - 0x0000000f, 0x47670010, 0x00000008, 0x070e0001, 0x0000000b, 0xc38000ff, - 0x00000002, 0x43870000, 0x00000001, 0x33e70e00, 0x0000000f, 0x038e0010, - 0x00000002, 0x33e70e00, 0x00000000, 0x28f30000, 0x00000010, 0x009f0000, - 0x00000000, 0x02043600, 0x00000008, 0x22000006, 0x00000000, 0x231b0000, - 0x00000000, 0x23ff0000, 0x00000000, 0x241b0000, 0x00000000, 0x03840000, - 0x00000010, 0x91870a03, 0x00000000, 0x03d00000, 0x00000002, 0x21421800, - 0x00000003, 0x8387a000, 0x0000000f, 0x65870010, 0x00000009, 0x2607ffff, - 0x00000000, 0x27110000, 0x00000000, 0x26900000, 0x0000000c, 0x29000000, - 0x00000000, 0x24c60000, 0x0000000c, 0x29800000, 0x00000003, 0xf4683600, - 0x00000000, 0x3a100000, 0x00000000, 0x3a910000, 0x00000003, 0xf66c2400, - 0x00000010, 0xb1923605, 0x00000010, 0x001f0000, 0x00000008, 0x0f800004, - 0x00000000, 0x00000000, 0x00000010, 0x009f0000, 0x00000000, 0x3e170000, - 0x00000000, 0x3e940000, 0x00000000, 0x3f150000, 0x00000000, 0x3f960000, - 0x00000010, 0x001f0000, 0x00000000, 0x0f060000, 0x00000010, 0x20530000, - 0x00000000, 0x22c53600, 0x00000018, 0x8000ffa6, 0x00000000, 0x031e0000, - 0x00000000, 0x83850800, 0x00000009, 0x076000ff, 0x00000010, 0x001f0000, - 0x0000000f, 0x0f0e0007, 0x00000000, 0x0c000000, 0x00000000, 0x0a7d0000, - 0x00000000, 0x0afe0000, 0x00000000, 0x0b7f0000, 0x00000000, 0x0d7a0000, - 0x00000000, 0x0bfc0000, 0x00000000, 0x0c970e00, 0x00000008, 0x0f800003, - 0x0000000f, 0x47670010, 0x00000008, 0x070e0001, 0x0000000b, 0xc38000ff, - 0x00000002, 0x43870000, 0x00000001, 0x33e70e00, 0x0000000f, 0x038e0010, - 0x00000002, 0x33e70e00, 0x00000000, 0x39840000, 0x00000003, 0xb9720800, - 0x00000000, 0x28f30000, 0x0000000f, 0x65680010, 0x00000010, 0x009f0000, - 0x00000000, 0x02043600, 0x00000008, 0x22000007, 0x00000000, 0x231b0000, - 0x00000000, 0x23ff0000, 0x00000000, 0x241b0000, 0x00000000, 0x03840000, - 0x00000010, 0x91870a03, 0x00000000, 0x03d00000, 0x00000002, 0x21421800, - 0x00000003, 0x8387a000, 0x0000000f, 0x65870010, 0x00000009, 0x2607ffff, - 0x00000000, 0x27110000, 0x00000000, 0x26900000, 0x0000000c, 0x29000000, - 0x00000000, 0x24c60000, 0x0000000c, 0x29800000, 0x00000003, 0xf4683600, - 0x00000000, 0x3a100000, 0x00000000, 0x3a910000, 0x00000003, 0xf66c2400, - 0x00000010, 0xb1923605, 0x00000010, 0x001f0000, 0x00000008, 0x0f800004, - 0x00000000, 0x00000000, 0x00000010, 0x009f0000, 0x00000000, 0x3e170000, - 0x00000000, 0x3e940000, 0x00000000, 0x3f150000, 0x00000000, 0x3f960000, - 0x00000010, 0x001f0000, 0x00000000, 0x0f060000, 0x00000010, 0x20530000, - 0x00000000, 0x22c53600, 0x00000018, 0x8000ff6a, 0x00000010, 0x0ce70005, - 0x00000008, 0x2c80000c, 0x00000008, 0x2d000070, 0x00000008, 0x2d800010, - 0x00000000, 0x00000000, 0x00000010, 0x205f0000, 0x00000018, 0x80000121, - 0x00000000, 0x2c1e0000, 0x00000008, 0x2c8000b8, 0x00000008, 0x2d000010, - 0x00000008, 0x2d800048, 0x00000000, 0x00000000, 0x00000010, 0x91de0000, - 0x00000018, 0x8000fe59, 0x0000000c, 0x29800001, 0x00000000, 0x2a000000, - 0x00000010, 0x001f0000, 0x00000000, 0x0f008000, 0x00000008, 0x0f800007, - 0x00000018, 0x80000006, 0x0000000c, 0x29800001, 0x00000000, 0x2a000000, - 0x00000010, 0x001f0000, 0x0000000f, 0x0f470007, 0x00000008, 0x0f800008, - 0x0000000c, 0x29800000, 0x00000010, 0x20530000, 0x00000018, 0x8000fe4b, - 0x0000000c, 0x29800001, 0x00000010, 0x91de0000, 0x00000000, 0x2fd50000, - 0x00000000, 0x2a000000, 0x00000009, 0x0261ffff, 0x0000000d, 0x70e10001, - 0x00000018, 0x80000105, 0x00000000, 0x2c400000, 0x00000008, 0x2c8000c4, - 0x00000008, 0x2d00001c, 0x00000008, 0x2d800001, 0x00000005, 0x70e10800, - 0x00000010, 0x91de0000, 0x00000018, 0x8000fe3d, 0x0000000c, 0x29800001, - 0x00000010, 0x91de0000, 0x00000000, 0x2fd50000, 0x00000010, 0x001f0000, - 0x00000000, 0x02700000, 0x00000000, 0x0d620000, 0x00000000, 0xbb630800, - 0x00000000, 0x2a000000, 0x00000000, 0x0f400000, 0x00000000, 0x2c400000, - 0x0000000c, 0x73e7001b, 0x00000010, 0x0ce7000e, 0x00000000, 0x286d0000, - 0x0000000f, 0x65ed0010, 0x00000009, 0x266dffff, 0x00000018, 0x8000006c, - 0x00000008, 0x02000004, 0x00000010, 0x91c40803, 0x0000000c, 0x29800000, - 0x00000010, 0x20530000, 0x00000018, 0x800000e9, 0x00000008, 0x2c8000b8, - 0x00000008, 0x2d000010, 0x00000008, 0x2d800048, 0x00000018, 0x80000005, - 0x00000008, 0x2c8000c4, 0x00000008, 0x2d00001c, 0x00000008, 0x2d800001, - 0x00000000, 0x00000000, 0x00000010, 0x205f0000, 0x00000008, 0x2c800048, - 0x00000008, 0x2d000068, 0x00000008, 0x2d800104, 0x00000000, 0x00000000, - 0x00000010, 0x91de0000, 0x00000000, 0x27f60000, 0x00000010, 0xb87a9e04, - 0x00000008, 0x2200000d, 0x0000000c, 0x29800000, 0x00000010, 0x20530000, - 0x00000018, 0x8000fe14, 0x0000000c, 0x29800001, 0x00000010, 0x91de0000, - 0x00000000, 0x2fd50000, 0x00000010, 0x001f0000, 0x00000000, 0x02700000, - 0x00000000, 0x0d620000, 0x00000000, 0xbb630800, 0x00000000, 0x2a000000, - 0x00000010, 0x0e670011, 0x00000000, 0x286d0000, 0x0000000f, 0x65ed0010, - 0x00000009, 0x266dffff, 0x00000004, 0xb8f1a000, 0x00000000, 0x0f400000, - 0x0000000c, 0x73e7001c, 0x00000018, 0x80000043, 0x00000008, 0x02000004, - 0x00000010, 0x91c40802, 0x0000000c, 0x29800000, 0x00000000, 0x2c1e0000, - 0x00000008, 0x2c8000b8, 0x00000008, 0x2d000010, 0x00000008, 0x2d800048, - 0x00000010, 0x20530000, 0x00000010, 0x91de0000, 0x00000018, 0x8000fdfa, - 0x0000000c, 0x29800001, 0x00000000, 0x03550000, 0x00000000, 0x06460000, - 0x00000000, 0x03d60000, 0x00000000, 0x2a000000, 0x0000000f, 0x0f480007, - 0x00000010, 0xb18c0027, 0x0000000f, 0x47420008, 0x00000009, 0x070e000f, - 0x00000008, 0x070e0008, 0x00000010, 0x001f0000, 0x00000008, 0x09000001, - 0x00000007, 0x09121c00, 0x00000003, 0xcbca9200, 0x00000000, 0x0b97a200, - 0x00000007, 0x4b171c00, 0x0000000f, 0x0a960003, 0x00000000, 0x0a959c00, - 0x00000000, 0x4a009a00, 0x00000008, 0x82120001, 0x00000001, 0x0c170800, - 0x00000000, 0x02180000, 0x00000000, 0x0c971800, 0x00000008, 0x0d00ffff, - 0x00000008, 0x0f800006, 0x0000000c, 0x29000000, 0x00000008, 0x22000001, - 0x00000000, 0x22c50c00, 0x00000010, 0x009f0000, 0x00000010, 0xb197320b, - 0x00000000, 0x231b0000, 0x00000000, 0x27110800, 0x00000000, 0x66900000, - 0x0000000c, 0x29800000, 0x00000000, 0x02180000, 0x00000010, 0x20530000, - 0x00000000, 0x22c53600, 0x00000010, 0x001f0000, 0x00000008, 0x0f800006, - 0x00000018, 0x8000fff5, 0x00000010, 0x91870002, 0x00000008, 0x2200000a, - 0x00000000, 0x231b0000, 0x00000000, 0x27110800, 0x00000000, 0x66900000, - 0x0000000c, 0x29800000, 0x00000008, 0x0200000a, 0x00000010, 0x91c40804, - 0x00000010, 0x02c20003, 0x00000010, 0x001f0000, 0x00000008, 0x0f800008, - 0x00000010, 0x20530000, 0x00000018, 0x8000fdc5, 0x0000000c, 0x29800001, - 0x00000000, 0x2a000000, 0x00000018, 0x8000fdc2, 0x00000000, 0x06820000, - 0x00000010, 0x001f0000, 0x00000010, 0x0ce70028, 0x00000000, 0x03720000, - 0x00000000, 0xa8760c00, 0x00000000, 0x0cf60000, 0x00000010, 0xb8723224, - 0x00000000, 0x03440000, 0x00000008, 0x22000010, 0x00000000, 0x03ca0000, - 0x0000000f, 0x65680010, 0x00000000, 0x0bcf0000, 0x00000000, 0x27f20000, - 0x00000010, 0xb7ef3203, 0x0000000c, 0x21420004, 0x0000000c, 0x73e70019, - 0x00000000, 0x07520000, 0x00000000, 0x29000000, 0x0000000c, 0x29800000, - 0x00000004, 0xb9723200, 0x00000010, 0x20530000, 0x00000000, 0x22060000, - 0x0000000c, 0x61420004, 0x00000000, 0x25070000, 0x00000000, 0x27970000, - 0x00000000, 0x290e0000, 0x00000010, 0x0ce70010, 0x00000010, 0xb873320f, - 0x0000000f, 0x436c0010, 0x00000000, 0x03f30c00, 0x00000000, 0x03f30000, - 0x00000000, 0x83990e00, 0x00000001, 0x83860e00, 0x00000000, 0x83060e00, - 0x00000003, 0xf66c0c00, 0x00000000, 0x39f30e00, 0x00000000, 0x3af50e00, - 0x00000000, 0x7a740000, 0x0000000f, 0x43680010, 0x00000001, 0x83860e00, - 0x00000000, 0x83060e00, 0x00000003, 0xf4680c00, 0x00000000, 0x286d0000, - 0x00000010, 0xb1e9a056, 0x00000000, 0x03690000, 0x00000010, 0xb1f60c54, - 0x00000000, 0x0a6a0000, 0x00000000, 0x0aeb0000, 0x00000009, 0x0b6cffff, - 0x00000000, 0x0c000000, 0x00000000, 0x0be90000, 0x00000003, 0x8cf6a000, - 0x0000000c, 0x09800002, 0x00000010, 0x009f0000, 0x00000010, 0xb8173209, - 0x00000000, 0x35140000, 0x00000000, 0x35950000, 0x00000005, 0x766c2c00, - 0x00000000, 0x34970000, 0x00000004, 0xb8f12e00, 0x00000010, 0x001f0000, - 0x00000008, 0x0f800004, 0x00000018, 0x8000fff7, 0x00000000, 0x03e90000, - 0x00000010, 0xb8f6a01a, 0x00000010, 0x20130019, 0x00000010, 0xb1f10e18, - 0x00000000, 0x83973200, 0x00000000, 0x38700e00, 0x00000000, 0xbb760e00, - 0x00000000, 0x37d00000, 0x0000000c, 0x73e7001a, 0x00000003, 0xb8f1a000, - 0x00000000, 0x32140000, 0x00000000, 0x32950000, 0x00000005, 0x73e72c00, - 0x00000000, 0x33190000, 0x00000005, 0x74680000, 0x00000010, 0x0ce7000d, - 0x00000008, 0x22000009, 0x00000000, 0x07520000, 0x00000000, 0x29000000, - 0x0000000c, 0x73e70019, 0x0000000f, 0x65680010, 0x0000000c, 0x21420004, - 0x0000000c, 0x29800000, 0x00000010, 0x20530000, 0x0000000c, 0x61420004, - 0x00000000, 0x290e0000, 0x00000018, 0x80000002, 0x00000010, 0x91973206, - 0x00000000, 0x35140000, 0x00000000, 0x35950000, 0x00000005, 0x766c2c00, - 0x00000000, 0x34990000, 0x00000004, 0xb8f13200, 0x00000000, 0x83690c00, - 0x00000010, 0xb1860013, 0x00000000, 0x28e90000, 0x00000008, 0x22000004, - 0x00000000, 0x23ec0000, 0x00000000, 0x03690000, 0x00000010, 0xb8660c07, - 0x00000009, 0x036cffff, 0x00000000, 0x326a0000, 0x00000000, 0x32eb0000, - 0x00000005, 0x73e70c00, 0x00000000, 0x33690000, 0x00000005, 0x74680000, - 0x0000000c, 0x73e7001c, 0x00000000, 0x03690000, 0x00000010, 0xb1f60c12, - 0x00000010, 0xb1d00c11, 0x0000000c, 0x21420005, 0x0000000c, 0x33e7001c, - 0x00000018, 0x8000000e, 0x00000010, 0x2e67000d, 0x00000000, 0x03690000, - 0x00000010, 0xb1f60c0b, 0x00000010, 0xb1d00c0a, 0x00000000, 0x03440000, - 0x00000008, 0x2200000c, 0x00000000, 0x07520000, 0x00000000, 0x29000000, - 0x0000000c, 0x29800000, 0x0000000c, 0x33e7001c, 0x00000010, 0x20530000, - 0x00000000, 0x22060000, 0x00000000, 0x290e0000, 0x00000018, 0x000d0000, - 0x00000000, 0x06820000, 0x00000010, 0x2de7000d, 0x00000010, 0x0ce7000c, - 0x00000000, 0x27f20000, 0x00000010, 0xb96d9e0a, 0x00000000, 0xa86d9e00, - 0x00000009, 0x0361ffff, 0x00000010, 0xb7500c07, 0x00000008, 0x2200000f, - 0x0000000f, 0x65680010, 0x00000000, 0x29000000, 0x0000000c, 0x29800000, - 0x0000000c, 0x33e7001b, 0x00000010, 0x20530000, 0x00000018, 0x000d0000 + +u32 bce_rv2p_proc2[] = { + 0x00000010, 0xb1800004, + 0x0000001f, 0x01020d00, + 0x00000008, 0x050000ff, + 0x00000018, 0x00020000, + 0x00000000, 0x2a000000, + 0x00000010, 0xb1d40000, + 0x00000008, 0x02540007, + 0x00000018, 0x00040000, + 0x00000018, 0x8000000f, + 0x00000018, 0x80000010, + 0x00000018, 0x8000003b, + 0x00000018, 0x800000f6, + 0x00000018, 0x8000010b, + 0x00000018, 0x80000133, + 0x00000018, 0x800000f5, + 0x00000018, 0x800001ef, + 0x00000018, 0x800001e6, + 0x00000018, 0x800000f8, + 0x00000018, 0x8000000c, + 0x00000018, 0x800001eb, + 0x00000018, 0x8000023e, + 0x00000018, 0x80000069, + 0x00000018, 0x800000dd, + 0x00000000, 0x2a000000, + 0x00000018, 0x8000ffed, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ffe8, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000018, 0x8000ffe5, + 0x00000018, 0x00020000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963421, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d000006, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d610000, + 0x00000018, 0x000a0000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963416, + 0x00000010, 0x205f0000, + 0x00000000, 0x09d80000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c8000b2, + 0x00000008, 0x2d00000a, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d620000, + 0x00000000, 0x2c130000, + 0x00000018, 0x000a0000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963409, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d00006a, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d7a0000, + 0x00000018, 0x000a0000, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000010, 0x001f0000, + 0x00000000, 0x2f80aa00, + 0x00000000, 0x2a000000, + 0x00000000, 0x0d610000, + 0x00000000, 0x03620000, + 0x00000000, 0x2c400000, + 0x00000000, 0x02638c00, + 0x00000000, 0x26460000, + 0x00000008, 0x02040012, + 0x00000010, 0xb9060827, + 0x00000000, 0x0f580000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0b800000, + 0x00000008, 0x0cc60012, + 0x00000018, 0x8000ffca, + 0x00000008, 0x0f800003, + 0x00000000, 0x00000000, + 0x00000010, 0x009f0000, + 0x00000008, 0x27110012, + 0x00000000, 0x66900000, + 0x00000008, 0xa31b0012, + 0x00000010, 0xb1980003, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800004, + 0x00000008, 0x22000003, + 0x00000008, 0x2c80000c, + 0x00000008, 0x2d00000c, + 0x00000010, 0x009f0000, + 0x00000000, 0x25960000, + 0x0000000c, 0x29800000, + 0x00000000, 0x06660000, + 0x00000000, 0x86611800, + 0x00000009, 0x0260000f, + 0x0000000f, 0x02040002, + 0x00000010, 0xb60c0803, + 0x0000000c, 0x1fbf0000, + 0x0000000c, 0x33660010, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000005, 0x73662c00, + 0x00000000, 0x31e32e00, + 0x00000008, 0x2d800010, + 0x00000010, 0x20530000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000ff8f, + 0x00000000, 0x23000000, + 0x00000009, 0x25e6ffff, + 0x00000008, 0x2200000b, + 0x0000000c, 0x69520000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff88, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000010, 0x001f0000, + 0x00000000, 0x2f80aa00, + 0x00000000, 0x2a000000, + 0x00000000, 0x2c400000, + 0x00000008, 0x2c800040, + 0x00000008, 0x2d000020, + 0x00000008, 0x2d80011c, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000f, 0x42ea0010, + 0x00000010, 0x004f0004, + 0x00000010, 0xb7469200, + 0x00000008, 0x02490012, + 0x00000010, 0xb5840a00, + 0x00000000, 0x0d610000, + 0x00000010, 0xba66345a, + 0x00000000, 0x03620000, + 0x00000010, 0xb8630c58, + 0x00000008, 0x83050012, + 0x00000010, 0x004f0002, + 0x00000000, 0x03490000, + 0x00000001, 0x83068c00, + 0x00000000, 0x83c60c00, + 0x00000010, 0xb1870010, + 0x00000000, 0x0b6e0000, + 0x00000018, 0x8000ff69, + 0x00000001, 0x06691400, + 0x00000010, 0x918c0002, + 0x00000008, 0xb4e90001, + 0x00000010, 0xb1e92c4c, + 0x00000000, 0x86692c00, + 0x00000000, 0x02000000, + 0x00000009, 0x02eaffff, + 0x00000010, 0x000c0002, + 0x00000000, 0x02040a00, + 0x0000000f, 0x460c0001, + 0x0000000f, 0x02850001, + 0x00000010, 0x918c01fc, + 0x00000010, 0xb7040e43, + 0x00000000, 0x2c400000, + 0x00000000, 0x0f400000, + 0x00000000, 0x0d610000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0b800000, + 0x00000008, 0x0c860012, + 0x00000008, 0x0f800003, + 0x0000000c, 0x29520000, + 0x00000010, 0x009f0000, + 0x00000008, 0x27110012, + 0x00000000, 0x66900000, + 0x00000000, 0x26460000, + 0x00000000, 0x23060000, + 0x00000010, 0xb1980005, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800004, + 0x00000000, 0x00000000, + 0x00000010, 0x001f0000, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000000, 0x31e32e00, + 0x00000005, 0x73662c00, + 0x00000000, 0x25960000, + 0x00000010, 0xb1870016, + 0x0000000c, 0x29800000, + 0x0000000f, 0x0f6b0007, + 0x00000000, 0x0d690000, + 0x00000000, 0x0a6c0000, + 0x00000000, 0x0aed0000, + 0x00000000, 0x0b6e0000, + 0x00000000, 0x0b800000, + 0x00000000, 0x0c870000, + 0x0000000c, 0x69520001, + 0x00000008, 0x0f800003, + 0x00000010, 0x20530000, + 0x00000010, 0x001f0000, + 0x00000000, 0x22c58c00, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110000, + 0x00000000, 0x26900000, + 0x00000010, 0xb8170e03, + 0x0000000c, 0x29800000, + 0x00000018, 0x8000fff7, + 0x00000010, 0xb1980002, + 0x00000008, 0x0f800004, + 0x00000008, 0x2200001a, + 0x00000008, 0x2c80000c, + 0x00000008, 0x2d00000c, + 0x00000008, 0x2d800010, + 0x00000010, 0x001f0000, + 0x00000000, 0x0d6e0000, + 0x00000003, 0xe7cf3400, + 0x0000000c, 0x29800000, + 0x00000010, 0x91de0000, + 0x00000010, 0xb1870007, + 0x00000000, 0x36140000, + 0x00000000, 0x36950000, + 0x00000000, 0x37160000, + 0x00000008, 0x2c800050, + 0x00000008, 0x2d000030, + 0x00000008, 0x2d80000c, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff1d, + 0x00000000, 0x26460000, + 0x00000000, 0x23000000, + 0x00000009, 0x25e6ffff, + 0x00000000, 0x0b6e0000, + 0x00000003, 0xe7cf2c00, + 0x00000008, 0x2200001b, + 0x0000000c, 0x69520000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff13, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x00000010, 0x003f000b, + 0x00000000, 0x06660000, + 0x00000000, 0x86611800, + 0x00000009, 0x026000f0, + 0x00000010, 0xb70c0807, + 0x0000000c, 0x73660010, + 0x00000008, 0x2c800018, + 0x00000008, 0x2d000018, + 0x00000008, 0x2d800002, + 0x0000000c, 0x5fbf0000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000ff05, + 0x0000000c, 0x29800001, + 0x00000018, 0x8000ff03, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000010, 0x001f0000, + 0x00000000, 0x0f008000, + 0x00000008, 0x0f800007, + 0x00000018, 0x800000f3, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x00000009, 0x0261ffff, + 0x0000000d, 0x70e10001, + 0x00000018, 0x800000d8, + 0x00000000, 0x2c400000, + 0x00000008, 0x2c8000c4, + 0x00000008, 0x2d00001c, + 0x00000008, 0x2d800001, + 0x00000005, 0x70e10800, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000feef, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x02700000, + 0x00000000, 0x0d620000, + 0x00000000, 0xbb630800, + 0x00000000, 0x2a000000, + 0x00000000, 0x0f400000, + 0x00000000, 0x2c400000, + 0x0000000c, 0x73e7001b, + 0x00000010, 0x0ce7000e, + 0x00000000, 0x286d0000, + 0x0000000f, 0x65ed0010, + 0x00000009, 0x266dffff, + 0x00000018, 0x80000034, + 0x00000008, 0x02000004, + 0x00000010, 0x91c40803, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x800000bc, + 0x00000008, 0x2c8000b8, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800048, + 0x00000018, 0x80000005, + 0x00000008, 0x2c8000c4, + 0x00000008, 0x2d00001c, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800048, + 0x00000008, 0x2d000068, + 0x00000008, 0x2d800104, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x27f60000, + 0x00000010, 0xb87a9e04, + 0x00000008, 0x2200000d, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000fec6, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x02700000, + 0x00000000, 0x0d620000, + 0x00000000, 0xbb630800, + 0x00000000, 0x2a000000, + 0x00000010, 0x0e670011, + 0x00000000, 0x286d0000, + 0x0000000f, 0x65ed0010, + 0x00000009, 0x266dffff, + 0x00000004, 0xb8f1a000, + 0x00000000, 0x0f400000, + 0x0000000c, 0x73e7001c, + 0x00000018, 0x8000000b, + 0x00000008, 0x02000004, + 0x00000010, 0x91c40802, + 0x0000000c, 0x29800000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c8000b8, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800048, + 0x00000010, 0x20530000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000feac, + 0x00000000, 0x06820000, + 0x00000010, 0x001f0000, + 0x00000010, 0x0ce7002f, + 0x00000000, 0x03720000, + 0x00000000, 0x0cf60000, + 0x00000003, 0x8ced3200, + 0x00000000, 0xa8190c00, + 0x00000010, 0xb872322a, + 0x00000000, 0x03ca0000, + 0x0000000f, 0x65680010, + 0x00000000, 0x0bcf0000, + 0x00000000, 0x27f20000, + 0x00000000, 0x08510000, + 0x00000000, 0x28ed0000, + 0x00000004, 0xb9723200, + 0x00000000, 0x03720000, + 0x00000003, 0xbbf60c00, + 0x00000000, 0x03440000, + 0x00000008, 0x22000010, + 0x00000010, 0xb7ef3204, + 0x0000000c, 0x21420004, + 0x0000000c, 0x73e70019, + 0x00000000, 0x3bf60000, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000000, 0x22060000, + 0x0000000c, 0x61420004, + 0x00000000, 0x25070000, + 0x00000000, 0x27970000, + 0x00000000, 0x28940000, + 0x00000000, 0x290e0000, + 0x00000010, 0x0ce70010, + 0x00000010, 0xb873320f, + 0x0000000f, 0x436c0010, + 0x00000000, 0x03f30c00, + 0x00000000, 0x03f30000, + 0x00000000, 0x83990e00, + 0x00000001, 0x83860e00, + 0x00000000, 0x83060e00, + 0x00000003, 0xf66c0c00, + 0x00000000, 0x39f30e00, + 0x00000000, 0x3af50e00, + 0x00000000, 0x7a740000, + 0x0000000f, 0x43680010, + 0x00000001, 0x83860e00, + 0x00000000, 0x83060e00, + 0x00000003, 0xf4680c00, + 0x00000000, 0x286d0000, + 0x00000010, 0xb1e9a05a, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c58, + 0x00000000, 0x0a6a0000, + 0x00000000, 0x0aeb0000, + 0x00000009, 0x0b6cffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0be90000, + 0x00000003, 0x8cf6a000, + 0x0000000c, 0x09800002, + 0x00000010, 0x009f0000, + 0x00000010, 0xb817320a, + 0x00000000, 0x35140000, + 0x00000000, 0x35950000, + 0x00000005, 0x766c2c00, + 0x00000000, 0x34970000, + 0x00000004, 0xb8f12e00, + 0x00000010, 0x001f0000, + 0x00000018, 0x8000fe8f, + 0x00000008, 0x0f800004, + 0x00000018, 0x8000fff6, + 0x00000000, 0x03e90000, + 0x00000010, 0xb8f6a01b, + 0x00000010, 0x2013001a, + 0x00000010, 0xb1f10e19, + 0x00000000, 0x83973200, + 0x00000000, 0x38700e00, + 0x00000000, 0xbb760e00, + 0x00000000, 0x3bf60000, + 0x00000000, 0x37d00000, + 0x0000000c, 0x73e7001a, + 0x00000003, 0xb8f1a000, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000005, 0x73e72c00, + 0x00000000, 0x33190000, + 0x00000005, 0x74680000, + 0x00000010, 0x0ce7000d, + 0x00000008, 0x22000009, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x73e70019, + 0x0000000f, 0x65680010, + 0x0000000c, 0x21420004, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x61420004, + 0x00000000, 0x290e0000, + 0x00000018, 0x80000002, + 0x00000010, 0x91973206, + 0x00000000, 0x35140000, + 0x00000000, 0x35950000, + 0x00000005, 0x766c2c00, + 0x00000000, 0x34990000, + 0x00000004, 0xb8f13200, + 0x00000000, 0x83690c00, + 0x00000010, 0xb1860015, + 0x00000000, 0x28e90000, + 0x00000008, 0x22000004, + 0x00000009, 0x2470ffff, + 0x0000000f, 0x65700010, + 0x00000000, 0x23ec0000, + 0x00000000, 0x03690000, + 0x00000010, 0xb8660c07, + 0x00000009, 0x036cffff, + 0x00000000, 0x326a0000, + 0x00000000, 0x32eb0000, + 0x00000005, 0x73e70c00, + 0x00000000, 0x33690000, + 0x00000005, 0x74680000, + 0x0000000c, 0x73e7001c, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c12, + 0x00000010, 0xb1d00c11, + 0x0000000c, 0x21420005, + 0x0000000c, 0x33e7001c, + 0x00000018, 0x8000000e, + 0x00000010, 0x2e67000d, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c0b, + 0x00000010, 0xb1d00c0a, + 0x00000000, 0x03440000, + 0x00000008, 0x2200000c, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x0000000c, 0x33e7001c, + 0x00000010, 0x20530000, + 0x00000000, 0x22060000, + 0x00000000, 0x290e0000, + 0x00000018, 0x000d0000, + 0x00000000, 0x06820000, + 0x00000010, 0x2de7000d, + 0x00000010, 0x0ce7000c, + 0x00000000, 0x27f20000, + 0x00000010, 0xb96d9e0a, + 0x00000000, 0xa86d9e00, + 0x00000009, 0x0361ffff, + 0x00000010, 0xb7500c07, + 0x00000008, 0x2200000f, + 0x0000000f, 0x65680010, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x0000000c, 0x33e7001b, + 0x00000010, 0x20530000, + 0x00000018, 0x000d0000, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000010, 0x001f0000, + 0x0000000f, 0x0f470007, + 0x00000008, 0x0f800008, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000fe08, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x33510000, + 0x00000000, 0x2a000000, + 0x00000010, 0xb1c60023, + 0x0000000f, 0x0f500007, + 0x00000000, 0x0a600000, + 0x00000000, 0x0ae10000, + 0x0000000f, 0x4b620008, + 0x00000009, 0x0b1600ff, + 0x0000000f, 0x4c620010, + 0x00000000, 0x0d620000, + 0x00000009, 0x0d1a00ff, + 0x00000010, 0x07500003, + 0x0000000c, 0x0d1a0008, + 0x0000000c, 0x0b160008, + 0x00000000, 0x0cc60000, + 0x00000000, 0x0b800000, + 0x00000000, 0x06980000, + 0x00000008, 0x0f800003, + 0x00000010, 0x06c20004, + 0x0000000c, 0x29000002, + 0x00000010, 0x26420002, + 0x0000000c, 0x29520003, + 0x00000008, 0x22000001, + 0x00000010, 0x009f0000, + 0x00000000, 0x231b0000, + 0x00000000, 0x27111a00, + 0x00000000, 0x66900000, + 0x0000000c, 0x29520000, + 0x00000010, 0xb1973209, + 0x0000000c, 0x29800000, + 0x00000000, 0x06980000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520003, + 0x00000000, 0x22c58c00, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800003, + 0x00000018, 0x8000fff3, + 0x00000010, 0xb1c80013, + 0x00000010, 0xb1c60003, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520000, + 0x0000000c, 0x29520003, + 0x00000010, 0x06c20002, + 0x0000000c, 0x29520002, + 0x00000000, 0x22c58c00, + 0x00000000, 0x27650000, + 0x00000000, 0x26e40000, + 0x00000008, 0x22000016, + 0x00000010, 0xb1c60003, + 0x00000000, 0x23480000, + 0x00000010, 0xb1800005, + 0x00000000, 0x23480000, + 0x0000000c, 0x29800000, + 0x0000000f, 0x0f500007, + 0x00000018, 0x80000012, + 0x00000008, 0x22000016, + 0x0000000c, 0x29800000, + 0x00000000, 0x30140000, + 0x00000000, 0x30950000, + 0x00000010, 0x07500003, + 0x00000009, 0x0b1600ff, + 0x00000009, 0x0d1a00ff, + 0x0000000f, 0x31160008, + 0x00000000, 0x31623400, + 0x00000003, 0xf1623000, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c510000, + 0x00000009, 0x2cd1007f, + 0x00000008, 0x2cd90000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d80000c, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x05c20003, + 0x00000000, 0x33000000, + 0x00000008, 0x0f800007, + 0x00000010, 0x20530000, + 0x00000010, 0x009f0000, + 0x00000018, 0x8000fdb4, + 0x0000000c, 0x29800001, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x0000000f, 0x0f500007, + 0x00000010, 0xb1c6002d, + 0x0000000f, 0x47420008, + 0x00000009, 0x070e000f, + 0x00000008, 0x070e0008, + 0x00000010, 0x001f0000, + 0x00000008, 0x09000001, + 0x00000007, 0x09121c00, + 0x00000003, 0xcbca9200, + 0x00000000, 0x0b97a200, + 0x00000007, 0x42171c00, + 0x00000000, 0x0b040000, + 0x0000000f, 0x0a840003, + 0x00000000, 0x0a959c00, + 0x00000000, 0x4a009a00, + 0x00000008, 0x82120001, + 0x00000001, 0x0c170800, + 0x00000000, 0x0c978c00, + 0x00000000, 0x02180000, + 0x00000008, 0x0d00ffff, + 0x00000008, 0x0f800006, + 0x0000000c, 0x29000000, + 0x00000010, 0x06c20004, + 0x0000000c, 0x29520002, + 0x00000010, 0x26420002, + 0x0000000c, 0x29520003, + 0x00000008, 0x22000001, + 0x00000010, 0x009f0000, + 0x00000010, 0xb197320c, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110800, + 0x00000000, 0x66900000, + 0x0000000c, 0x29800000, + 0x00000000, 0x02180000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520003, + 0x00000000, 0x22c53600, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800006, + 0x00000018, 0x8000fff4, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110800, + 0x00000000, 0x66900000, + 0x00000010, 0xb1c8000b, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520000, + 0x0000000c, 0x29520003, + 0x00000010, 0x06c20002, + 0x0000000c, 0x29520002, + 0x00000000, 0x22c58c00, + 0x00000000, 0x27650000, + 0x00000000, 0x26e40000, + 0x00000000, 0x23480000, + 0x00000008, 0x22000017, + 0x0000000c, 0x29800000, + 0x00000010, 0x001f0000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000fd76, }; -static int bce_TPAT_b06FwReleaseMajor = 0x1; -static int bce_TPAT_b06FwReleaseMinor = 0x0; -static int bce_TPAT_b06FwReleaseFix = 0x0; -static u32 bce_TPAT_b06FwStartAddr = 0x08000860; -static u32 bce_TPAT_b06FwTextAddr = 0x08000800; -static int bce_TPAT_b06FwTextLen = 0x16b0; -static u32 bce_TPAT_b06FwDataAddr = 0x08001ee0; -static int bce_TPAT_b06FwDataLen = 0x0; -static u32 bce_TPAT_b06FwRodataAddr = 0x00000000; -static int bce_TPAT_b06FwRodataLen = 0x0; -static u32 bce_TPAT_b06FwBssAddr = 0x08001f20; -static int bce_TPAT_b06FwBssLen = 0x450; -static u32 bce_TPAT_b06FwSbssAddr = 0x08001ee0; -static int bce_TPAT_b06FwSbssLen = 0x38; -/* static u32 bce_TPAT_b06FwSDataAddr = 0x00000000; */ -/* static int bce_TPAT_b06FwSDataLen = 0x0; */ -static u32 bce_TPAT_b06FwText[(0x16b0/4) + 1] = { -0xa000218, 0x0, 0x0, -0xd, 0x74706174, 0x20332e34, 0x2e380000, -0x3040801, 0x0, 0x0, 0x0, +int bce_TXP_b09FwReleaseMajor = 0x1; +int bce_TXP_b09FwReleaseMinor = 0x0; +int bce_TXP_b09FwReleaseFix = 0x0; +u32 bce_TXP_b09FwStartAddr = 0x08000094; +u32 bce_TXP_b09FwTextAddr = 0x08000000; +int bce_TXP_b09FwTextLen = 0x3b1c; +u32 bce_TXP_b09FwDataAddr = 0x00000000; +int bce_TXP_b09FwDataLen = 0x0; +u32 bce_TXP_b09FwRodataAddr = 0x08003b1c; +int bce_TXP_b09FwRodataLen = 0x30; +u32 bce_TXP_b09FwBssAddr = 0x08003bec; +int bce_TXP_b09FwBssLen = 0x24c; +u32 bce_TXP_b09FwSbssAddr = 0x08003b80; +int bce_TXP_b09FwSbssLen = 0x6c; +u32 bce_TXP_b09FwSDataAddr = 0x00000000; +int bce_TXP_b09FwSDataLen = 0x0; +u32 bce_TXP_b09FwText[(0x3b1c/4) + 1] = { +0xa000025, +0x0, 0x0, 0xd, 0x74787034, +0x2e342e32, 0x31000000, 0x4041500, 0xa, +0x136, 0xea60, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x1d, 0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x10000003, 0x0, 0xd, +0xd, 0x3c020800, 0x24423b80, 0x3c030800, +0x24633e38, 0xac400000, 0x43202b, 0x1480fffd, +0x24420004, 0x3c1d0800, 0x37bd7ffc, 0x3a0f021, +0x3c100800, 0x26100094, 0x3c1c0800, 0x279c3b80, +0xe0004b9, 0x0, 0xd, 0x3c058000, +0x8f830030, 0x34a70070, 0x8ce80000, 0x833025, +0x3c029000, 0xc22025, 0xaca40020, 0x3c078000, +0xaf880024, 0x8ce90020, 0x520fffe, 0x34e40070, +0x3c180800, 0x8f18007c, 0x3c0d0800, 0x8dad0078, +0x8c850000, 0x7021, 0x1ae5821, 0xa8c823, +0x3195021, 0x159602b, 0x16c4021, 0x3c010800, +0xac2a007c, 0x3c010800, 0xac280078, 0x3e00008, +0x0, 0xa00003c, 0x24040001, 0x8f850030, +0x3c048000, 0x34830001, 0xa31025, 0x3e00008, +0xac820020, 0x3e00008, 0x1021, 0x3084ffff, +0x30a5ffff, 0x10800007, 0x1821, 0x30820001, +0x10400002, 0x42042, 0x651821, 0x1480fffb, +0x52840, 0x3e00008, 0x601021, 0x10c00007, +0x0, 0x8ca20000, 0x24c6ffff, 0x24a50004, +0xac820000, 0x14c0fffb, 0x24840004, 0x3e00008, +0x0, 0x10a00008, 0x24a3ffff, 0xac860000, +0x0, 0x0, 0x2402ffff, 0x2463ffff, +0x1462fffa, 0x24840004, 0x3e00008, 0x0, +0x90aa0031, 0x8fab0010, 0x8cac0040, 0x3c0300ff, +0x8d680004, 0xad6c0020, 0x8cad0044, 0xe06021, +0x3462ffff, 0xad6d0024, 0x8ca70048, 0x3c09ff00, +0x109c024, 0xad670028, 0x8cae004c, 0x182c824, +0x3197825, 0xad6f0004, 0xad6e002c, 0x8cad0038, +0x314a00ff, 0xad6d001c, 0x94a90032, 0x3128ffff, +0xad680010, 0x90a70030, 0xa5600002, 0xa1600004, +0xa1670000, 0x90a30032, 0x306200ff, 0x21982, +0x10600005, 0x24050001, 0x1065000e, 0x0, +0x3e00008, 0xa16a0001, 0x8cd80028, 0x354a0080, +0xad780018, 0x8ccf0014, 0xad6f0014, 0x8cce0030, +0xad6e0008, 0x8cc4002c, 0xa16a0001, 0x3e00008, +0xad64000c, 0x8ccd001c, 0xad6d0018, 0x8cc90014, +0xad690014, 0x8cc80024, 0xad680008, 0x8cc70020, +0xad67000c, 0x8cc20014, 0x8c830070, 0x43c82b, +0x13200007, 0x0, 0x8cc20014, 0x144cffe4, +0x0, 0x354a0080, 0x3e00008, 0xa16a0001, +0x8c820070, 0xa0000c4, 0x0, 0x90890030, +0x27bdfff8, 0x8fa8001c, 0xa3a90000, 0x8fa30000, +0x3c0dff80, 0x35a2ffff, 0x8cac002c, 0x625824, +0xafab0000, 0xa1000004, 0xc05821, 0xa7a00002, +0x8d060004, 0xa04821, 0x167c821, 0x8fa50000, +0x805021, 0x3c18ff7f, 0x32c2026, 0x3c0e00ff, +0x2c8c0001, 0x370fffff, 0x35cdffff, 0x3c02ff00, +0xafc824, 0xedc024, 0xc27824, 0xc1dc0, +0x3236825, 0x1f87025, 0xad0d0000, 0xad0e0004, +0x8d240024, 0xafad0000, 0xad040008, 0x8d2c0020, +0x2404ffff, 0xad0c000c, 0x95470032, 0x30e6ffff, +0xad060010, 0x91450048, 0x30a200ff, 0x219c2, +0x50600001, 0x8d240034, 0xad040014, 0x8d470038, +0x8faa0018, 0x27bd0008, 0xad0b0028, 0xad0a0024, +0xad07001c, 0xad00002c, 0xad000018, 0x3e00008, +0xad000020, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf001c, 0x908f0030, 0xc08821, +0x3c0d00ff, 0xa0cf0000, 0x908e0031, 0x35acffff, +0x3c0aff00, 0xa0ce0001, 0x94a6001e, 0xa2200004, +0x8cab0014, 0x8e290004, 0xa08021, 0x16c2824, +0x12a4024, 0x809021, 0x1052025, 0xa6260002, +0xae240004, 0x26050020, 0x26240008, 0xe000070, +0x24060002, 0x92470030, 0x26050028, 0x26240014, +0x71e00, 0x31603, 0x24060004, 0x4400003, +0x2403ffff, 0x96580032, 0x3303ffff, 0xe000070, +0xae230010, 0x26240024, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x24050003, 0x3021, +0xa00007a, 0x27bd0020, 0x27bdffd8, 0xafb1001c, +0xafb00018, 0xafbf0020, 0x90a90030, 0x24020001, +0xe05021, 0x3123003f, 0xa04021, 0x8fb00040, +0x808821, 0xc04821, 0x10620014, 0x8fa70038, +0x240b0005, 0xa02021, 0xc02821, 0x106b0013, +0x2003021, 0xe000106, 0x0, 0x9225007c, +0x30a40002, 0x10800003, 0x26030030, 0xae000030, +0x26030034, 0x8fbf0020, 0x8fb1001c, 0x8fb00018, +0x601021, 0x3e00008, 0x27bd0028, 0xe000085, +0xafb00010, 0xa00014c, 0x0, 0x8fa3003c, +0x1002021, 0x1202821, 0x1403021, 0xafa30010, +0xe0000cc, 0xafb00014, 0xa00014c, 0x0, +0x8f820050, 0x24430001, 0x304200ff, 0xaf830050, +0x3e00008, 0x0, 0x3c058000, 0x8ca30e10, +0x8f840044, 0xac830020, 0x8ca20e18, 0x3e00008, +0xac820024, 0x3c058000, 0x8ca30e14, 0x8f840044, +0xac830020, 0x8ca20e1c, 0x3e00008, 0xac820024, +0x93820038, 0x1040001b, 0x2483000f, 0x2404fff0, +0x643824, 0x10e00019, 0x978b002c, 0x9784004c, +0x9389002e, 0x3c0a601c, 0xa00018d, 0x1644023, +0x1037021, 0x642823, 0x11260002, 0x31c2ffff, +0x30a2ffff, 0x47302b, 0x50c0000e, 0xe44821, +0x8d4d000c, 0x31a3ffff, 0x36400, 0xc2c03, +0x4a1fff3, 0x3021, 0x30637fff, 0xa000185, +0x24060001, 0x3e00008, 0x0, 0x9784004c, +0xe44821, 0x3123ffff, 0x3168ffff, 0x68382b, +0x54e0fff8, 0xa783004c, 0x938a002e, 0x11400005, +0x240f0001, 0x6bc023, 0xa380002e, 0x3e00008, +0xa798004c, 0x6bc023, 0xa38f002e, 0x3e00008, +0xa798004c, 0x3e00008, 0x0, 0x27bdffe8, +0xafb00010, 0x3084ffff, 0x3c108000, 0x93a8002b, +0xafbf0014, 0xa6040144, 0x960a0e16, 0x30c600ff, +0x8fa90030, 0xa60a0146, 0xae050148, 0xa2060152, +0xa608015a, 0xae070160, 0x8fa3002c, 0xa6090158, +0x1202021, 0xe000179, 0xae030154, 0x3c021000, +0xae020178, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x3c038000, 0x34620070, 0x8c4b0000, +0x8f8a003c, 0x24840007, 0x27bdfff8, 0x3084fff8, +0xaf8b0024, 0x3c098000, 0x952e008a, 0x31cdffff, +0xafad0000, 0x8fac0000, 0x18a4023, 0x2507ffff, +0x30e61fff, 0xc4282b, 0x14a0fff7, 0x35280070, +0x3c070800, 0x8ce70084, 0x3c060800, 0x8cc60080, +0x8d0c0000, 0xa1082, 0x2021, 0x18b1823, +0xe35021, 0x35384000, 0x27880, 0x143c82b, +0xc45821, 0x1794821, 0x1f81021, 0x27bd0008, +0x3c010800, 0xac2a0084, 0x3c010800, 0xac290080, +0x3e00008, 0x0, 0x8f82003c, 0x24860007, +0x30c5fff8, 0xa21821, 0x30641fff, 0x3e00008, +0xaf84003c, 0x3c0320ff, 0x27bdffe8, 0x3c076000, +0x3c088000, 0x24050010, 0x3464fffd, 0xace53008, +0xafbf0010, 0xad040e00, 0x0, 0x0, +0x0, 0x0, 0x0, 0x3c0200ff, +0x345ffffd, 0xad1f0e00, 0x3c0b6004, 0x8d785000, +0x2419ff7f, 0x3c0e0002, 0x3197824, 0x35ec380c, +0x35cd0109, 0xaced4c18, 0x24060009, 0xad6c5000, +0x8cea0438, 0xad060008, 0xad000014, 0x8ce94c1c, +0x3145ffff, 0x3c065709, 0x91e02, 0x38a42f71, +0x3062000f, 0x34c80010, 0xaf820048, 0x10400007, +0x2485c0b3, 0x8ceb4c1c, 0x3c0d001f, 0x35acfc00, +0x16c5024, 0xa49c2, 0xaf890034, 0x8cf90808, +0x241ff000, 0x33fc024, 0x3087026, 0x3067826, +0x2de80001, 0x2dc60001, 0x1063825, 0x50e00009, +0xa3800038, 0x3c09601c, 0x8d240008, 0x24030001, +0xa3830038, 0x30827c00, 0xa780004c, 0xa380002e, +0xa782002c, 0xaf800050, 0x14a00003, 0xaf80003c, +0x3c056000, 0xaca0442c, 0xe000564, 0x0, +0x8fbf0010, 0xa000ea1, 0x27bd0018, 0x27bdffc8, +0xafb3002c, 0xafb20028, 0xafbf0030, 0xafb10024, +0xafb00020, 0x93620008, 0x809821, 0xa09021, +0x14400035, 0x24040010, 0xe0001c6, 0x0, +0xe000165, 0x408021, 0x2c400, 0x3c193200, +0x3198825, 0xae110000, 0x936f0009, 0x976e0012, +0x936a000a, 0x31ec00ff, 0x31cdffff, 0x18d5821, +0xb4400, 0x314900ff, 0x1093825, 0xae070004, +0x8f850050, 0x97840040, 0x403021, 0x30832000, +0x1460004d, 0xae050008, 0xae00000c, 0x3c058000, +0x97840040, 0x662004f, 0x8e03000c, 0x30900008, +0x16000002, 0x26480006, 0x26480002, 0x94a40e14, +0x8ca50e1c, 0x8f670004, 0x936a0002, 0x3084ffff, +0x314900ff, 0xafa90010, 0x8f720014, 0xafa80018, +0xe0001ac, 0xafb20014, 0x8fbf0030, 0x8fb3002c, +0x8fb20028, 0x8fb10024, 0x8fb00020, 0x24040010, +0xa0001ef, 0x27bd0038, 0x93650009, 0x97710012, +0x936d000b, 0x30ae00ff, 0x1d15821, 0x31ac00ff, +0x16c8021, 0x2602000a, 0x3050ffff, 0xe0001c6, +0x2002021, 0xe000165, 0x408821, 0x93680009, +0x97640012, 0x2fc00, 0x310900ff, 0x308affff, +0x12a3821, 0x24e30002, 0x3e3c025, 0x3c194100, +0x3193025, 0xae260000, 0x8f6f000c, 0x3c0e8000, +0x403021, 0x1f32825, 0xae250004, 0x95cd0e14, +0x8dc50e1c, 0x8f670004, 0x936c0002, 0x31a4ffff, +0x318b00ff, 0xafab0010, 0x8f680014, 0xafb20018, +0xe0001ac, 0xafa80014, 0x2002021, 0x8fbf0030, +0x8fb3002c, 0x8fb20028, 0x8fb10024, 0x8fb00020, +0xa0001ef, 0x27bd0038, 0x97620012, 0x3c058000, +0x97840040, 0x305fffff, 0x661ffb4, 0xae1f000c, +0x8e03000c, 0x3c078000, 0x679825, 0xa000268, +0xae13000c, 0x27bdffd8, 0xafb40020, 0xafbf0024, +0xafb3001c, 0xafb20018, 0xafb10014, 0xafb00010, +0x93620008, 0x14400094, 0x80a021, 0xaf60000c, +0x97850040, 0x30a44000, 0x1080009e, 0x24030016, +0x24104007, 0xa363000a, 0xaf700014, 0x938f0042, +0x8f6c0014, 0x31ee0001, 0xe6a40, 0x18d5825, +0xaf6b0014, 0x978a0040, 0x8f680014, 0x31490010, +0x1093825, 0xaf670014, 0x97860040, 0x30c30008, +0x1060009f, 0x0, 0x8f660014, 0x3c031000, +0x3c048000, 0xc32825, 0xaf650014, 0x94820e0a, +0x3c1f8100, 0x2413000e, 0x3059ffff, 0x33fc025, +0xaf780004, 0xa3730002, 0x9372000a, 0x3406fffc, +0x26510004, 0xa371000a, 0x97880040, 0x31072000, +0x10e00091, 0x0, 0x3c0b8000, 0x97890040, +0x95680e0c, 0x97840040, 0x91842, 0x3107c000, +0x30650003, 0x71303, 0x309f1000, 0xa2c025, +0x1fca03, 0x3199825, 0x1390c0, 0xa7720012, +0x97910040, 0x936f000a, 0x118182, 0x320e003c, +0x1cf6821, 0x25ac003c, 0xa36c0009, 0x956a0e0c, +0x31493fff, 0xa7690010, 0x976d0012, 0x936c0009, +0x18d5821, 0x256a0002, 0x31490007, 0x94023, +0x31030007, 0xa363000b, 0x93670009, 0x97640012, +0x97650010, 0x30e200ff, 0x8f900028, 0x97980040, +0x44f821, 0x3e5c821, 0x3269821, 0x33120040, +0x12400005, 0x3266ffff, 0xd0702b, 0x3c118000, +0x11c00016, 0x9021, 0x206782b, 0x15e0002d, +0x2021, 0x3c108000, 0x8e120e14, 0x3c058000, +0xae120e10, 0x8e110e1c, 0xae110e18, 0xae060e00, +0x8cb80000, 0x33130008, 0x1260fffd, 0x0, +0x94b90e08, 0xc08021, 0x8821, 0xa7990040, +0x8ca60e04, 0x24120001, 0xaf860028, 0x977f0010, +0x33f3ffff, 0x8e890000, 0x1302023, 0x10800058, +0xae840000, 0x2202021, 0xe000240, 0x2002821, +0x8e8c0000, 0x15800005, 0x0, 0x8f6d0014, +0x240effbf, 0x1aea024, 0xaf740014, 0x8f78000c, +0x3138821, 0xaf71000c, 0x936f0008, 0x15e00003, +0x0, 0x16400040, 0x0, 0xa3720008, +0x2002021, 0x8fbf0024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x801021, +0x3e00008, 0x27bd0028, 0x8f900028, 0x97820040, +0x3c118000, 0x2009821, 0x30450040, 0x14a0ffd9, +0x9021, 0x97680010, 0x8f870028, 0x3103ffff, +0x1467ffec, 0x2021, 0x8821, 0xa000336, +0x24120001, 0x2403000e, 0x24104007, 0xa363000a, +0xaf700014, 0x938f0042, 0x8f6c0014, 0x31ee0001, +0xe6a40, 0x18d5825, 0xaf6b0014, 0x978a0040, +0x8f680014, 0x31490010, 0x1093825, 0xaf670014, +0x97860040, 0x30c30008, 0x1460ff63, 0x0, +0xaf600004, 0xa3600002, 0x97880040, 0x31072000, +0x14e0ff71, 0x3021, 0xa7600012, 0x97910040, +0x936f000a, 0x3c0b8000, 0x32301f00, 0x107183, +0x1cf6821, 0x25ac0028, 0xa36c0009, 0x956a0e0c, +0xa000307, 0xa76a0010, 0x8f660014, 0x3c1fefff, +0x37f9fffe, 0xd99824, 0xa00034c, 0xaf730014, +0x8f6b0014, 0x356a0040, 0xe00016b, 0xaf6a0014, +0xa00033b, 0x2202021, 0x8f880044, 0x8f8c0030, +0x27bdffc0, 0x3c048000, 0xafb70034, 0xafb40028, +0xafb1001c, 0xafbf0038, 0xafb60030, 0xafb5002c, +0xafb30024, 0xafb20020, 0xafb00018, 0x8c8b0104, +0x8d0a0024, 0xac8c0080, 0x95090020, 0x16a8823, +0xb821, 0xa4890e10, 0x95070022, 0xa021, +0xa4870e12, 0x8d060024, 0xac860e18, 0x94850e10, +0xa4850e14, 0x94820e12, 0xa4820e16, 0x8c830e18, +0xac830e1c, 0x12200033, 0x3c168000, 0x936d0008, +0x11a00056, 0x0, 0x97700010, 0x320fffff, +0x22f702b, 0x15c00051, 0x0, 0x97730010, +0x3272ffff, 0xaed20e00, 0x3c058000, 0x8cb50000, +0x32b40008, 0x1280fffd, 0x0, 0x94b90e08, +0x8ca50e04, 0x3330ffff, 0x32180001, 0x13000046, +0x0, 0xd, 0x3204a040, 0x241f0040, +0x109f0047, 0x3214a000, 0x12800041, 0x0, +0x93730008, 0x52600009, 0x27a40010, 0x97690010, +0x3127ffff, 0xa7102b, 0x10400004, 0x27a40010, +0x32120040, 0x12400036, 0x0, 0xafb10010, +0xa7900040, 0xaf850028, 0xe0002ba, 0x0, +0x40a021, 0x104000c8, 0x8fb10010, 0x1620ffcf, +0x0, 0x2e960001, 0x2d78825, 0x12200019, +0x8fbf0038, 0x8f850030, 0x24170f00, 0x10b70075, +0x3c048000, 0x8c880178, 0x500fffe, 0x24130f00, +0x50b30095, 0x3c048000, 0x94890e14, 0x24140240, +0x3c051000, 0xa4890144, 0x94870e16, 0xa4870146, +0x8c820e1c, 0xac820148, 0xa0800152, 0xa480015a, +0xac800160, 0xa4800158, 0xac940154, 0xac850178, +0x8fbf0038, 0x8fb70034, 0x8fb60030, 0x8fb5002c, +0x8fb40028, 0x8fb30024, 0x8fb20020, 0x8fb1001c, +0x8fb00018, 0x3e00008, 0x27bd0040, 0xaed10e00, +0xa0003c4, 0x3c058000, 0x14a0ffbc, 0x3204a040, +0xe000172, 0xa021, 0xa0003eb, 0x2e960001, +0x3c038000, 0x8c620178, 0x440fffe, 0x24060800, +0x8f84003c, 0xac660178, 0x3c038000, 0x946c008a, +0x318bffff, 0x1645023, 0x2549ffff, 0x31271fff, +0x2ce80008, 0x1500fff9, 0x346e4000, 0xa0a021, +0xe000165, 0x8e9021, 0x8f830030, 0x240d0f00, +0x40a821, 0x2348823, 0x3c068000, 0x106d0005, +0x24050001, 0x93930042, 0x32650001, 0x57a40, +0x35e50001, 0x151400, 0x3c080100, 0x482025, +0xae440000, 0x8f9f0050, 0x32190036, 0x32180008, +0xae5f0004, 0x13000045, 0xb99825, 0x94c30e0a, +0x8f8d003c, 0x3c0c8100, 0x306bffff, 0x25b20008, +0x32471fff, 0x16c4825, 0x3c0a1000, 0x26920006, +0x2410000e, 0xacc90160, 0x26a9825, 0xa4d0015a, +0xaf87003c, 0xa4d20158, 0x16200008, 0x3c108000, +0x8f980030, 0x24050f00, 0x53050002, 0x24170001, +0x36730040, 0xe00016b, 0x3c108000, 0x36040e14, +0x8c880000, 0x8e190e1c, 0x361f0144, 0xafe80000, +0x2402021, 0xae190148, 0xa2150152, 0xae130154, +0xe000179, 0x3c151000, 0xae150178, 0xa0003e8, +0x0, 0x12800005, 0x3c0c8000, 0x958b0e08, +0x316a0040, 0x11400048, 0x0, 0x8c8d0178, +0x5a0fffe, 0x0, 0x949f0e10, 0x3c190500, +0x24062000, 0x33f5ffff, 0x2b98025, 0xac90014c, +0x94980e14, 0x3c031000, 0xa4980144, 0x948f0e16, +0xa48f0146, 0x8c8e0e1c, 0xac8e0148, 0xa0800152, +0xa480015a, 0xac800160, 0xa4800158, 0xac860154, +0xac830178, 0xa0003f2, 0x3c048000, 0x8f8f003c, +0x26920002, 0xa4d20158, 0x25ee0008, 0x31c61fff, +0xa00044f, 0xaf86003c, 0xac80014c, 0x1280001b, +0x0, 0x94910e10, 0xa4910144, 0x94920e12, +0xa4920146, 0x8c820e18, 0x8fbf0038, 0x8fb70034, +0x8fb60030, 0x8fb5002c, 0x8fb40028, 0x8fb30024, +0x8fb20020, 0x8fb1001c, 0x8fb00018, 0xac820148, +0x3c0a8000, 0x240b0040, 0x3c041000, 0x27bd0040, +0xa1400152, 0xa540015a, 0xad400160, 0xa5400158, +0xad4b0154, 0x3e00008, 0xad440178, 0x94970e14, +0xa4970144, 0x94960e16, 0xa4960146, 0x8c820e1c, +0xa000494, 0x8fbf0038, 0xe000172, 0x2e960001, +0xa0003ec, 0x2d78825, 0x0, 0xd, +0x0, 0x24000339, 0xa00046c, 0x3c048000, +0x27bdffd8, 0xafb10014, 0x3c118000, 0xafb00010, +0xafb40020, 0xafb3001c, 0xafb20018, 0xafbf0024, +0x3c130800, 0x26733c54, 0xe0001f6, 0x36300070, +0x3c140800, 0x26943cd4, 0x2009021, 0x8e080000, +0x8e240000, 0x38830001, 0x30620001, 0x10400016, +0x3c0a8000, 0x2404821, 0x8d220000, 0x3c1f0800, +0x8fff006c, 0x3c0f0800, 0x8def0068, 0x481823, +0x3e36021, 0xc021, 0x183702b, 0x1f86821, +0x1ae5821, 0x3c010800, 0xac2c006c, 0x3c010800, +0xac2b0068, 0x8d470000, 0x38e60001, 0x30c50001, +0x14a0ffed, 0x404021, 0x3c1f0800, 0x8fff006c, +0x3c0f0800, 0x8def0068, 0x8e030000, 0xc021, +0x1f86821, 0x681023, 0x3e26021, 0x182702b, +0x1ae3821, 0x3c010800, 0xac2c006c, 0x3c010800, +0xac270068, 0x8e270100, 0x240bff80, 0x3c05800a, +0x24e60240, 0xcb4024, 0xae270020, 0xae280024, +0x8e080000, 0x30c4007f, 0x855021, 0x3c098000, +0xaf8a0044, 0xaf870030, 0xaf880024, 0x8d2a0178, +0x540fffe, 0x0, 0x3c190800, 0x8f390074, +0x3c0e0800, 0x8dce0070, 0x8e020000, 0x7821, +0x1cf6021, 0x48f823, 0x33f5821, 0x17f682b, +0x18d4021, 0x24060800, 0x3c010800, 0xac2b0074, +0x3c010800, 0xac280070, 0xad260178, 0x91250108, +0xa3850042, 0x93840042, 0x30890001, 0x1120000f, +0x240f0d00, 0x24e3f800, 0x2c6a0301, 0x1140001c, +0x719c2, 0x2464fff0, 0x44842, 0x93940, +0xe000397, 0xf3d821, 0x3c094000, 0x3c078000, +0xace90138, 0xa0004c8, 0x0, 0x10ef0026, +0x24180f00, 0x10f8002a, 0x3c038008, 0x34620080, +0x904a0000, 0x24190050, 0x315f00ff, 0x17f9fff3, +0x3c094000, 0xe0009b0, 0x0, 0x3c094000, +0x3c078000, 0xace90138, 0xa0004c8, 0x0, +0x8f840034, 0x64282b, 0x14a0000b, 0x8f8c0048, +0x8c5821, 0x2568ffff, 0x103302b, 0x14c00006, +0x647023, 0xe6940, 0xe000397, 0x1b4d821, +0xa000524, 0x3c094000, 0x0, 0xd, +0x0, 0x240003b0, 0xe000397, 0x0, +0xa000524, 0x3c094000, 0x3c1b0800, 0x277b3dd4, +0xe000397, 0x0, 0xa000524, 0x3c094000, +0x3c1b0800, 0x277b3df4, 0xe000397, 0x0, +0xa000524, 0x3c094000, 0x8f820050, 0x24430001, +0x304200ff, 0xaf830050, 0x3e00008, 0x0, +0x411c0, 0x3e00008, 0x24420240, 0x3c040800, +0x24843bec, 0x2405001a, 0xa00007a, 0x3021, +0x27bdffe0, 0xafbf001c, 0xafb20018, 0xafb10014, +0xafb00010, 0x3c108000, 0x920b0109, 0x2412ff80, +0xe000561, 0x3164007f, 0x8f910030, 0x515021, +0x1524024, 0xae080024, 0x92030109, 0xe000561, +0x3064007f, 0x24060080, 0x240700c0, 0x24040040, +0xae000810, 0xae040814, 0xae060818, 0xae07081c, +0x920c0109, 0x51f821, 0x33f8007f, 0x3c19800a, +0x3191021, 0x3184007f, 0xe000561, 0xaf820044, +0x8e110100, 0x3c0c0080, 0x35850001, 0x2227821, +0x1f24824, 0xae090804, 0x8e0e0100, 0x35980002, +0x36090900, 0x1c26821, 0x31ab0078, 0x1655025, +0xae0a0820, 0x8e050100, 0x8e080100, 0x36050980, +0x1021821, 0x24640040, 0x923024, 0xae060808, +0x8e070100, 0xe2f821, 0x27f90040, 0x33320078, +0x2588825, 0xae110824, 0x8e040100, 0x952f000c, +0x8fbf001c, 0x8fb20018, 0x31eeffff, 0xe69c0, +0xae0d0800, 0xae0c0828, 0x952b000c, 0x8fb10014, +0x316affff, 0xa41c0, 0xae08002c, 0x8ca30050, +0x8fb00010, 0x8ca2003c, 0x8d240004, 0x8ca6001c, +0x8ca70038, 0x27bd0020, 0xaf830068, 0xaf820058, +0xaf840054, 0xaf860060, 0x3e00008, 0xaf870064, +0x3c0a0800, 0x914a3c11, 0x3c090800, 0x95293c0a, +0x3c051100, 0xa3c00, 0x25280002, 0xe83025, +0xc51825, 0x24820008, 0xac830000, 0x3e00008, +0xac800004, 0x3c088000, 0x35070900, 0x90e60011, +0x24020028, 0x805021, 0x30c300ff, 0xa06021, +0x10620002, 0x340b86dd, 0x240b0800, 0x3c078000, +0x34e20a9a, 0x94590000, 0x34ef0a9c, 0x34ed0aa0, +0x3338ffff, 0xad580000, 0x8dee0000, 0x34e80a80, +0x24040001, 0xad4e0004, 0x8da90000, 0xad490008, +0x91050019, 0x30a30003, 0x10640043, 0x28660002, +0x14c000b0, 0x24040002, 0x1064008b, 0x24050003, +0x10650096, 0x34e60aa4, 0x3c090800, 0x95293c00, +0x24020800, 0x5162004d, 0x3c0e8000, 0x3c0e8000, +0x35c50900, 0x90a60012, 0x90b90019, 0x35cb0980, +0x8d680028, 0x30c700ff, 0x77880, 0x3138ffff, +0x332300ff, 0x1f81021, 0x32500, 0x887025, +0x25c00, 0x3c0d6000, 0x1cd3025, 0x356906ff, +0xad490004, 0xad460000, 0x8ca7002c, 0x25490028, +0xad470008, 0x8cb90030, 0xad59000c, 0x8cb80034, +0xad580010, 0x8caf0038, 0xad4f0014, 0x8ca3001c, +0xad430018, 0x8ca80020, 0x3c038000, 0x3462093c, +0xad48001c, 0x8ca40024, 0x346f0900, 0xad440020, +0x8cad0028, 0xad4d0024, 0x8c590000, 0xad2c0004, +0x25220014, 0xad390000, 0x8c78010c, 0xad380008, +0x91e80012, 0x3c040800, 0x90843c10, 0xad200010, +0x82f00, 0x46c00, 0xad6025, 0x358affff, +0x3e00008, 0xad2a000c, 0x3c090800, 0x95293c00, +0x3c0f0800, 0x95ef3c0a, 0x34f90aa4, 0x3c0e0800, +0x95ce3bfc, 0x97280000, 0x3138ffff, 0x1f86821, +0x1ae3823, 0x82c00, 0x24e3fff2, 0xa32025, +0x24020800, 0xad44000c, 0xad400010, 0xad4b0014, +0x1562ffb6, 0x254a0018, 0x3c0e8000, 0x35cd0900, +0x91a20011, 0x91a70019, 0x3c050800, 0x94a53c06, +0x304600ff, 0x35cb0a80, 0x956e002a, 0x6c882, +0x30f800ff, 0x9787005c, 0x191e00, 0x187c00, +0x3128ffff, 0xa82021, 0x6f4825, 0x1241025, +0x1c73021, 0x3c0b4000, 0x4bc825, 0x6c400, +0xad590000, 0xad580004, 0x91af0018, 0x3c030006, +0x24e90001, 0xf4600, 0x1037025, 0xad4e0008, +0x8da5002c, 0x3c038000, 0x3462093c, 0xad45000c, +0x8dab001c, 0x31247fff, 0x25490014, 0xad4b0010, +0x8c590000, 0xad2c0004, 0x346f0900, 0xad390000, +0x8c78010c, 0xa784005c, 0x25220014, 0xad380008, +0x91e80012, 0x3c040800, 0x90843c10, 0xad200010, +0x82f00, 0x46c00, 0xad6025, 0x358affff, +0x3e00008, 0xad2a000c, 0x34e20aa4, 0x94460000, +0x95190028, 0x3c090800, 0x95293c00, 0x6c400, +0x197c00, 0x370e8100, 0x1eb6825, 0xad4e000c, +0xad4d0010, 0xa0005ed, 0x254a0014, 0x3c090800, +0x95293c00, 0x3c180800, 0x97183c0a, 0x3c0f0800, +0x95ef3bfc, 0x94ce0000, 0x3139ffff, 0x950d0028, +0x3194021, 0x10f3823, 0xe2400, 0xd2c00, +0x24e3ffee, 0xa33025, 0x34828100, 0xad42000c, +0xad460010, 0xad400014, 0xad4b0018, 0xa0005ed, +0x254a001c, 0x1460ff54, 0x34e90aa4, 0x95280000, +0x3c090800, 0x95293c00, 0x83c00, 0xeb1825, +0xad43000c, 0xa0005ed, 0x254a0010, 0x3e00008, +0x240207d0, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf001c, 0xe00005a, 0x808821, +0x8f880058, 0x8f870054, 0x3c058008, 0x34b20080, +0x1112821, 0x3c108000, 0x24020080, 0x240300c0, +0xa72023, 0xae020818, 0x3c068008, 0xae03081c, +0x18800004, 0xaf850058, 0xacc50004, 0x8cc90004, +0xaf890054, 0x12200009, 0x36040980, 0xe0006a0, +0x0, 0x924c0027, 0x8e0b0074, 0x1825004, +0x14b3021, 0xae46000c, 0x36040980, 0x8c8e001c, +0x8f8f0060, 0x1cf6823, 0x19a00004, 0x8fbf001c, +0x8c90001c, 0xaf900060, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0xa00005c, 0x27bd0020, +0x8f860068, 0x8f830058, 0x8f820054, 0x3c058008, +0x34a40080, 0xac860050, 0xac83003c, 0x3e00008, +0xaca20004, 0x3c088000, 0x35070070, 0x3c030800, +0x8c630054, 0x8cea0000, 0x27bdfff8, 0x24620001, +0x308b00ff, 0x3c010800, 0xac220054, 0x30ac00ff, +0x30c800ff, 0xaf8a0024, 0x3c098000, 0x8d240178, +0x480fffe, 0x35250070, 0x3c180800, 0x8f180074, +0x3c0d0800, 0x8dad0070, 0x8ca70000, 0xa3ab0003, +0x8fb90000, 0xea2023, 0x3c037fff, 0x3043821, +0x3462ffff, 0x7021, 0x3225024, 0x1ae3021, +0xe4582b, 0x847c0, 0xcb2021, 0x1482825, +0xafa50000, 0x3c010800, 0xac270074, 0x3c010800, +0xac240070, 0x9123010a, 0xa3a00002, 0x3c0280ff, +0xa3a30001, 0x8fb80000, 0x318f007f, 0x3459ffff, +0x3196824, 0xf7600, 0x3c0b0020, 0x1ae6025, +0x356a2000, 0x2406ff80, 0x3c051000, 0x27bd0008, +0xad2c014c, 0xad2a0154, 0xa5200158, 0xa1260152, +0x3e00008, 0xad250178, 0x3c038000, 0x34620070, +0x8c4a0000, 0x308c00ff, 0x30ab00ff, 0xaf8a0024, +0x3c098000, 0x8d240178, 0x480fffe, 0x0, +0x35290070, 0x3c050800, 0x8ca50074, 0x3c040800, +0x8c840070, 0x8d2e0000, 0x1021, 0x82c821, +0x1ca6823, 0xadc021, 0x30d302b, 0x3c078000, +0x3267821, 0x3c010800, 0xac380074, 0x34e80a00, +0x3c010800, 0xac2f0070, 0x950d0022, 0x34e90980, +0xb702b, 0xa4ed0146, 0x950a0020, 0xe1540, +0xa4ea0144, 0x8d060024, 0xace60148, 0xa0ec0150, +0x9125004c, 0xa0e5016d, 0x3e00008, 0xa4e00158, +0x27bdffe8, 0x308400ff, 0xafbf0010, 0xe000717, +0x30a500ff, 0x8f830058, 0x8fbf0010, 0x3c058000, +0x34460040, 0x2404ff90, 0x3c021000, 0x27bd0018, +0xaca3014c, 0xa0a40152, 0xaca60154, 0x3e00008, +0xaca20178, 0x27bdffe0, 0x3c088008, 0xafbf001c, +0xafb20018, 0xafb10014, 0xafb00010, 0x35100080, +0x8e060018, 0x3c078000, 0x309200ff, 0xc72025, +0xae040018, 0xe00005a, 0x30b100ff, 0x92030005, +0x34620008, 0xe00005c, 0xa2020005, 0x2402021, +0xe000741, 0x2202821, 0x2402021, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x24050005, +0x24060001, 0xa0006da, 0x27bd0020, 0x3c088000, +0x27bdffe8, 0xafb00010, 0x35050980, 0xafbf0014, +0x90a70009, 0x24020006, 0x35060900, 0x30e300ff, +0x24100004, 0x10620072, 0x24080002, 0x94ae005c, +0x3c0d0204, 0x31ccffff, 0x18d5825, 0xac8b0000, +0x90aa0008, 0x31490020, 0x11200008, 0x0, +0x90bf004e, 0x3c190103, 0x37380300, 0x33ef00ff, +0x1f82825, 0x24100008, 0xac850004, 0x90cc0011, +0x90c90011, 0x318a00ff, 0xa5882, 0x312700ff, +0x256a0005, 0xa1080, 0x38e30028, 0x14600029, +0x824823, 0x90cf0012, 0x3c198000, 0x37220900, +0x31e500ff, 0x57080, 0x1d06821, 0xd3400, +0x34c406ff, 0xad240004, 0x904c0011, 0x90580012, +0x373f0980, 0x8fe40034, 0x8f2f010c, 0x105882, +0x330500ff, 0xab7021, 0x83400, 0x8f1823, +0xe6f00, 0x1a61025, 0x319f00fc, 0x3067ffff, +0x3e9c021, 0x47c825, 0x14b7821, 0xf2880, +0xaf19000c, 0xe00005a, 0x1258021, 0x3c0a8008, +0x24090004, 0x35480080, 0xe00005c, 0xa1090009, +0x2001021, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x90ce0011, 0x90cd0019, 0x3c070800, +0x94e73c06, 0x31c600ff, 0x62082, 0x31ac00ff, +0x45e00, 0xc1c00, 0x1631025, 0x47c825, +0x3c1f4000, 0x33fc025, 0x3c198000, 0xad380000, +0x37220900, 0x904c0011, 0x90580012, 0x373f0980, +0x8fe40034, 0x8f2f010c, 0x105882, 0x330500ff, +0xab7021, 0x83400, 0x8f1823, 0xe6f00, +0x1a61025, 0x319f00fc, 0x3067ffff, 0x3e9c021, +0x47c825, 0x14b7821, 0xf2880, 0xaf19000c, +0xe00005a, 0x1258021, 0x3c0a8008, 0x24090004, +0x35480080, 0xe00005c, 0xa1090009, 0x2001021, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0xa00077c, 0x24080012, 0x27bdffd8, 0xafb40020, +0xafb3001c, 0xafb20018, 0xafb10014, 0xafbf0024, +0xafb00010, 0x3c068000, 0x90c3010b, 0x309200ff, +0x30b300ff, 0x30620030, 0xa021, 0x10400070, +0x8821, 0x34c40980, 0x90880008, 0x83e00, +0x72e03, 0x4a00097, 0x24040004, 0x8f880058, +0x3c010800, 0xa0243c10, 0x3c0c8000, 0xad800048, +0x3c038000, 0x906e010b, 0x31c50020, 0x10a00007, +0x3c028000, 0x34790980, 0x93380008, 0x188600, +0x107e03, 0x5e2009c, 0x3c028008, 0x34500900, +0x34470a80, 0x904d010b, 0x94eb002c, 0x92030011, +0x921f0012, 0x90e50018, 0x307800ff, 0x33f900ff, +0x197880, 0x1f87021, 0x1d15021, 0x30b100ff, +0x1514821, 0x2524000a, 0x31ac0040, 0x3091ffff, +0xc302b, 0x2202021, 0xa78b005c, 0x3c010800, +0xa42a3c06, 0x3c010800, 0xa4293c08, 0x3c010800, +0xa4293c0a, 0x3c010800, 0xa4203c00, 0x3c010800, +0xa4203bfc, 0xe0001c6, 0x1068023, 0xe0005bd, +0x402021, 0x402021, 0xe0005ca, 0x2002821, +0x1680005c, 0x0, 0xe0001ef, 0x2202021, +0x3c080800, 0x91083c10, 0x31140003, 0x12800016, +0x3c1f8008, 0x8f840058, 0x3c0c8008, 0x35860080, +0x248b0001, 0xaccb003c, 0x3c058008, 0x8caa0004, +0x1602021, 0x14b4823, 0x19200002, 0xaf8b0058, +0x8ca40004, 0xe0006a0, 0xaca40004, 0x3c0f8000, +0x8dee0074, 0x3c058008, 0x34ad0080, 0x4e8821, +0xadb1000c, 0x3c1f8008, 0x37f90080, 0x2402021, +0x2602821, 0xa320006b, 0xe000717, 0x3c128000, +0x8f980058, 0x34500006, 0xae58014c, 0xe00055b, +0x3c131000, 0xa2420152, 0x8fbf0024, 0xae500154, +0x8fb40020, 0xae530178, 0x8fb10014, 0x8fb3001c, +0x8fb20018, 0x8fb00010, 0x3e00008, 0x27bd0028, +0x34c30980, 0x906f0008, 0xf7600, 0xe6e03, +0x5a00033, 0x34c20900, 0x9059001b, 0x241f0010, +0x3c010800, 0xa03f3c10, 0x33380002, 0x1300ff90, +0x8f880058, 0x8f830064, 0x1468ff8e, 0x3c038000, +0xe00005a, 0x0, 0x3c098008, 0x35250080, +0x90a40009, 0x24070016, 0x308800ff, 0x1107000d, +0x0, 0x90a60009, 0x3c0c0800, 0x918c3c10, +0x240a0008, 0x30c400ff, 0x358b0001, 0x3c010800, +0xa02b3c10, 0x108a002f, 0x240d000a, 0x108d0028, +0x2402000c, 0xe00005c, 0x0, 0xa000809, +0x8f880058, 0xe000770, 0x402021, 0xa00083b, +0x0, 0x3c0b8008, 0x356a0080, 0x8d480054, +0x8cc9010c, 0x1120ff66, 0xaf880058, 0x24060014, +0x3c010800, 0xa0263c10, 0xa000808, 0x3c0c8000, +0x90710008, 0x24140002, 0x3c010800, 0xa0343c10, +0x32300020, 0x1200000b, 0x24140001, 0x8f880058, +0xa000809, 0x24110008, 0x345f0080, 0x8fe70038, +0xac470004, 0x8c430004, 0xafe3003c, 0xa000814, +0x3c028000, 0x8f880058, 0xa000809, 0x24110004, +0xa0a20009, 0xe00005c, 0x0, 0xa000809, +0x8f880058, 0x24020014, 0xa0008ba, 0xa0a20009, +0x27bdffe8, 0xafbf0014, 0xafb00010, 0x3c108000, +0x92020109, 0x24050001, 0xe000717, 0x304400ff, +0x3c1f8008, 0x93f8000e, 0x37e30080, 0x93f9000f, +0x906e0026, 0x93e9000a, 0x332f00ff, 0x186600, +0xf6c00, 0x31cb00ff, 0x18d5025, 0xb3200, +0x1463825, 0x312800ff, 0x34456000, 0xe82025, +0x2402ff81, 0x3c031000, 0xae04014c, 0x8fbf0014, +0xae050154, 0xa2020152, 0xae030178, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x27bdffe8, 0x308400ff, +0xafbf0010, 0xe000717, 0x30a500ff, 0x34460040, +0x3c048000, 0x2405ff92, 0xac860154, 0xa0850152, +0x8f830058, 0x8fbf0010, 0x3c021000, 0x27bd0018, +0xac83014c, 0x3e00008, 0xac820178, 0x27bdffd8, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf0020, +0xafb3001c, 0x3c078000, 0x90e20109, 0x308600ff, +0x30b000ff, 0x618c2, 0x32040002, 0x30710001, +0x14800007, 0x305200ff, 0x3c098008, 0x35330080, +0x92680005, 0x31050008, 0x10a0000c, 0x30ca0010, +0x2402021, 0xe000752, 0x2202821, 0x24020001, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x15400030, +0x34e50a00, 0x8cb90024, 0x8cb80008, 0x13380047, +0x4021, 0x3c0e8008, 0x35d30080, 0x926d0068, +0x240b0002, 0x31ac00ff, 0x118b0080, 0x3c068000, +0x927f004c, 0x90c40109, 0x509f0004, 0x3213007c, +0x11000067, 0x0, 0x3213007c, 0x1660005a, +0x2402021, 0x16200008, 0x320c0001, 0x3c078000, +0x34eb0a00, 0x8d650024, 0x8ce80104, 0x14a8ffdc, +0x1021, 0x320c0001, 0x1180000d, 0x2402021, +0x3c108000, 0x8e0e010c, 0x8f8d0068, 0x11cd0008, +0x0, 0xe0007ef, 0x2202821, 0x8e0f010c, +0x3c188008, 0x37100080, 0xae0f0050, 0x2402021, +0xe000741, 0x2202821, 0xa00090d, 0x24020001, +0x3c070800, 0x8ce70064, 0x24e60001, 0x3c010800, +0xac260064, 0x1600000d, 0x0, 0x2202821, +0xe000741, 0x2402021, 0x926f0068, 0x240d0002, +0x31ee00ff, 0x11cd0022, 0x2402021, 0xe0008c1, +0x0, 0xa00090d, 0x24020001, 0xe00003c, +0x24040001, 0x926c0025, 0x20c5825, 0xe00005c, +0xa26b0025, 0xa00094d, 0x2202821, 0x8e630018, +0x8ce40104, 0x8cbf0024, 0x31602, 0x149fffb5, +0x3045007f, 0x9269004c, 0x26440001, 0x3093007f, +0x12650040, 0x312300ff, 0x1464ffaf, 0x3c0e8008, +0x26480001, 0x3111007f, 0x310200ff, 0x1225000b, +0x24080001, 0x409021, 0xa00091a, 0x24110001, +0x24050004, 0xe0006da, 0x24060001, 0xe0008c1, +0x0, 0xa00090d, 0x24020001, 0x2407ff80, +0x2472824, 0xa79026, 0x324200ff, 0x409021, +0xa00091a, 0x24110001, 0xe0007ef, 0x2202821, +0x32060030, 0x10c0ffa3, 0x32100082, 0x2402021, +0xe000752, 0x2202821, 0xa00090d, 0x24020001, +0x8e630018, 0x2402021, 0x2202821, 0x661025, +0xe0008e3, 0xae620018, 0x9264004c, 0x24050003, +0x24060001, 0xe0006da, 0x308400ff, 0xe00003c, +0x24040001, 0x926a0025, 0x20a4825, 0xe00005c, +0xa2690025, 0xa00090d, 0x24020001, 0x8e780018, +0x3c198000, 0x2402021, 0x3197825, 0x2202821, +0xe000741, 0xae6f0018, 0x9264004c, 0xa000995, +0x24050004, 0x32460080, 0x38ca0080, 0x146aff6e, +0x3c0e8008, 0xa00096e, 0x26480001, 0x27bdffc8, +0xafb00010, 0x3c108000, 0xafbf0030, 0xafb7002c, +0xafb60028, 0xafb50024, 0xafb40020, 0xafb3001c, +0xafb20018, 0xe000569, 0xafb10014, 0x92040108, +0x9205010b, 0x308400ff, 0xe0008f4, 0x30a500ff, +0x144000de, 0x8fbf0030, 0x3c098008, 0x35280080, +0xa100006b, 0x36070980, 0x90e60000, 0x24020050, +0x3c150800, 0x26b53e14, 0x30c300ff, 0x3c140800, +0x26943e24, 0x10620003, 0x3c108000, 0xa821, +0xa021, 0x241f0010, 0x36110a00, 0x36130980, +0x8e170104, 0x8f8d0058, 0x8e380024, 0x36190a80, +0x8e720020, 0x3c010800, 0xa03f3c10, 0x972c002c, +0x8eb60000, 0x932b0018, 0x24d7023, 0x2f87823, +0x3c010800, 0xac2f3bec, 0x3c010800, 0xac2e3bf0, +0x3c010800, 0xac2d3c14, 0xa78c005c, 0x2c0f809, +0x317200ff, 0x304a0002, 0x154000be, 0x30450001, +0x10a000ca, 0x0, 0x361f0900, 0x8e360024, +0x93f90011, 0x93f80012, 0x93ef0011, 0x332e00ff, +0x331700ff, 0x176880, 0x31ec00ff, 0x1ae8021, +0x24c5821, 0x2125021, 0x25690010, 0x3c010800, +0xac363c18, 0x3c010800, 0xa42a3c08, 0x3c010800, +0xa4293c04, 0x3c010800, 0xa4303c06, 0x260b821, +0x3c168000, 0x8f920058, 0x8f850060, 0x8ef30020, +0x24110006, 0xb23023, 0x3c010800, 0xac313c0c, +0x2722823, 0x4c000ba, 0x9821, 0x4a000b8, +0xc5202b, 0x108000ba, 0x0, 0x3c010800, +0xac263bf0, 0x8e900000, 0x200f809, 0x0, +0x408821, 0x30420002, 0x1440006e, 0x32260001, +0x54c00011, 0x8e920004, 0x3c080800, 0x8d083bf4, +0x3c03c000, 0x3c048000, 0x1033825, 0xaec70e00, +0x8c8a0000, 0x31490008, 0x1120fffd, 0x0, +0x948c0e08, 0x24130001, 0xa78c0040, 0x8c8b0e04, +0xaf8b0028, 0x8e920004, 0x240f809, 0x0, +0x2228825, 0x322d0002, 0x15a000a1, 0x0, +0x3c180800, 0x97183bfc, 0x3c120800, 0x96523c08, +0x3c190800, 0x97393bfe, 0x3c070800, 0x8ce73bf4, +0x3124021, 0x3c0b0800, 0x8d6b3c18, 0x3c0e0800, +0x95ce3c12, 0x3c128000, 0x1197821, 0x8e4a010c, +0xf86821, 0x25ec0002, 0x1ae1821, 0x1674821, +0xaf8a0068, 0x3c010800, 0xac293c18, 0x3c010800, +0xa4233c00, 0x3c010800, 0xa4283c0a, 0xe0001c6, +0x3184ffff, 0xe00055b, 0x408021, 0x3c010800, +0xa0223c11, 0x8e820008, 0x40f809, 0x2002021, +0x8f850058, 0xe0005ca, 0x402021, 0x8e86000c, +0xc0f809, 0x402021, 0x3c100800, 0x96103c0a, +0x3c020800, 0x94423bfe, 0x2022021, 0x24850002, +0xe0001ef, 0x30a4ffff, 0x3c190800, 0x8f393bec, +0x3c1f0800, 0x8fff3bf4, 0x33fc023, 0x3c010800, +0xac383bec, 0x17000006, 0x0, 0x3c050800, +0x8ca53c0c, 0x34bf0040, 0x3c010800, 0xac3f3c0c, +0x1260004f, 0x8f900044, 0x8e460e10, 0x8f930044, +0xae660020, 0x8e440e18, 0xae640024, 0x3c040800, +0x94843c00, 0xe0006a2, 0x0, 0x8f830058, +0x8e890010, 0x3c010800, 0xac233c14, 0x120f809, +0x0, 0x3c080800, 0x8d083bec, 0x1500ff7e, +0x8f920058, 0x9794005c, 0x3c17800e, 0x32360010, +0xe0006d1, 0xa6f4002c, 0x56c00041, 0x8eaa0004, +0x322b0040, 0x5560004b, 0x8eb10008, 0x8eb9000c, +0x8fbf0030, 0x8fb7002c, 0x8fb60028, 0x8fb50024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3200008, 0x27bd0038, 0x8fb7002c, +0x8fb60028, 0x8fb50024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0038, 0x92110109, 0x8fbf0030, 0x8fb7002c, +0x322400ff, 0x8fb60028, 0x8fb50024, 0x8fb40020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x2821, 0xa000741, 0x27bd0038, 0x92080109, +0x8f830030, 0x83e00, 0xe33025, 0xae060080, +0x8e220020, 0x8e240024, 0xae020e14, 0xae020e10, +0xae040e1c, 0xae040e18, 0xa0009f0, 0x361f0900, +0x24020001, 0xae020020, 0xa000a7c, 0xae020024, +0x3c010800, 0xac203bf0, 0xa000a17, 0x8e900000, +0x3c010800, 0xac253bf0, 0xa000a17, 0x8e900000, +0x140f809, 0x0, 0xa000a92, 0x322b0040, +0x5260ffb5, 0x9794005c, 0x8ecf0e14, 0x8f940044, +0xae8f0020, 0x8ece0e1c, 0xae8e0024, 0xa000a8b, +0x9794005c, 0x220f809, 0x0, 0xa000a95, +0x8eb9000c, 0x8f820000, 0x42180, 0x3e00008, +0x821021, 0x3c078008, 0x34e20080, 0x90430069, +0x804021, 0x10600009, 0x3c040100, 0x3c070800, +0x8ce73c14, 0x8f83001c, 0xe32023, 0x4800008, +0x93890008, 0x14e30003, 0x1002021, 0x3e00008, +0x801021, 0x3c040100, 0x3e00008, 0x801021, +0x1120000b, 0x673823, 0x3c0d8000, 0x35ac0980, +0x918b007c, 0x316a0002, 0x11400020, 0x24090034, +0xe9702b, 0x15c0fff1, 0x1002021, 0xe93823, +0x2403fffc, 0xa3c824, 0xe3c024, 0xf9782b, +0x15e0ffea, 0x3082021, 0x30c40003, 0x41023, +0x14c00014, 0x30490003, 0x3021, 0xa97821, +0x1e67021, 0xee682b, 0x11a0ffe0, 0x3c040100, +0x2d380001, 0x6c82b, 0x1054821, 0x3193824, +0x14e0ffda, 0x2524fffc, 0x2402fffc, 0xa21824, +0x682021, 0x3e00008, 0x801021, 0xa000b01, +0x24090030, 0x3c0c8000, 0x35860980, 0x90cb007c, +0x316a0004, 0x1540ffe9, 0x24060004, 0xa000b10, +0x3021, 0x3c030800, 0x8c63005c, 0x8f820004, +0x27bdffe8, 0xafbf0014, 0x10620005, 0xafb00010, +0x329c0, 0x24a40280, 0xaf840000, 0xaf830004, +0x3c108000, 0x361f0a00, 0x97f90032, 0xe000ae2, +0x33243fff, 0x8e180100, 0x3c0f0180, 0x35ee0003, +0x3024821, 0x312d0078, 0x240cff80, 0x12c5824, +0x1ae5025, 0xae0b0028, 0xae0b080c, 0xae0a082c, +0x36100980, 0x92030069, 0x3127007f, 0x3c08800c, +0xe83021, 0x10600006, 0xaf860020, 0x8e04003c, +0x8e05006c, 0x851023, 0x1840007f, 0x0, +0x3c088008, 0x35070080, 0x3c068000, 0xa0e00069, +0x34c30980, 0x8c620038, 0x3c068000, 0x34c50a00, +0x90b0003c, 0x32090020, 0x11200019, 0xaf82001c, +0x240a0001, 0x3c0d8000, 0x35b00a00, 0xa38a0008, +0xaf800010, 0x8e040024, 0x8f850010, 0x240c0008, +0xaf80000c, 0xaf800014, 0x3c010800, 0xa42c3bfe, +0x3c010800, 0xa4203c12, 0xe000ae6, 0x3021, +0x920b003c, 0x8fbf0014, 0x8fb00010, 0xb5142, +0xaf820018, 0x27bd0018, 0x3e00008, 0x31420001, +0x90ad0032, 0x240b0001, 0x31ac00ff, 0xc2182, +0x108b003f, 0x240e0002, 0x108e0062, 0x34d80ac0, +0x3c038000, 0x34640a00, 0x8c8d0024, 0x15a0001d, +0x34660900, 0x90980030, 0x240e0005, 0x330f003f, +0x11ee004c, 0x24050001, 0x8f86000c, 0xa3850008, +0xaf860014, 0xaf860010, 0x3c0d8000, 0x35b00a00, +0x8e040024, 0x8f850010, 0x240c0008, 0x3c010800, +0xa42c3bfe, 0x3c010800, 0xa4203c12, 0xe000ae6, +0x0, 0x920b003c, 0x8fbf0014, 0x8fb00010, +0xb5142, 0xaf820018, 0x27bd0018, 0x3e00008, +0x31420001, 0x8c890008, 0x8c900024, 0x8cc70064, +0x3c0d8000, 0x1304023, 0xaf870010, 0x35b00a00, +0xa3800008, 0x8e040024, 0x8f86000c, 0x8f850010, +0x240c0008, 0xaf880014, 0x3c010800, 0xa42c3bfe, +0x3c010800, 0xa4203c12, 0xe000ae6, 0x0, +0x920b003c, 0x8fbf0014, 0x8fb00010, 0xb5142, +0xaf820018, 0x27bd0018, 0x3e00008, 0x31420001, +0x90bf0030, 0x33f9003f, 0x53240028, 0x34c50ac0, +0x8ca40024, 0x14800022, 0x34c90900, 0x8ca70048, +0x3c087fff, 0x3505ffff, 0xe51024, 0x3c0c8000, +0xaf82000c, 0x35850900, 0x8f8a000c, 0x8cab0060, +0x14b802b, 0x16000002, 0x1402021, 0x8ca40060, +0xa000b7d, 0xaf84000c, 0x8e02006c, 0xa000b58, +0x3c068000, 0x8c820048, 0x8f86000c, 0x3c047fff, +0x3483ffff, 0x43f824, 0x3c198008, 0x24050001, +0xaf9f0014, 0xaf20006c, 0xa3850008, 0xa000b8b, +0xaf860010, 0x8f0f0014, 0xa000b7d, 0xaf8f000c, +0x8d220068, 0xa000bc5, 0x3c0c8000, 0x34c40980, +0x8c860070, 0x8ca30014, 0xc3102b, 0x10400004, +0x0, 0x8c820070, 0xa000bc5, 0x3c0c8000, +0x8ca20014, 0xa000bc5, 0x3c0c8000, 0x8f850010, +0x27bdffe0, 0xafbf0018, 0xafb10014, 0x14a00008, +0xafb00010, 0x3c048000, 0x34870a00, 0x90e60030, +0x24020005, 0x30c3003f, 0x106200b7, 0x34840900, +0x8f91000c, 0xa08021, 0x3c048000, 0x348e0a00, +0x8dcd0004, 0x3c060800, 0x8cc63bf0, 0x31a73fff, +0xe6602b, 0x55800001, 0xe03021, 0x938f0008, +0x11e00076, 0xd0102b, 0x34990980, 0x9338007c, +0x33040002, 0x10800077, 0x24030034, 0xc3f82b, +0x17e000d6, 0xc33023, 0xd0102b, 0x3c010800, +0xa4233bfc, 0x1440006d, 0x2001821, 0x3c040800, +0x8c843bec, 0x64282b, 0x54a00001, 0x602021, +0x3c058000, 0x34a90a00, 0x9128003c, 0x3c010800, +0xac243bf4, 0x31030020, 0x14600002, 0x4821, +0x8ca90e18, 0x8f880018, 0x128502b, 0x1140005f, +0x0, 0x3c050800, 0x8ca53bf4, 0xa96021, +0x10c582b, 0x1160005c, 0xb0682b, 0x1093823, +0xe02821, 0x3c010800, 0xac273bf4, 0x12000003, +0x2402fffc, 0x10b0008c, 0x322a0003, 0xa2f824, +0x3c010800, 0xa4203c12, 0x3c010800, 0xac3f3bf4, +0x3e02821, 0x8f840010, 0x12040006, 0x3c038008, +0x8c6a006c, 0x2002021, 0xaf91000c, 0x25500001, +0xac70006c, 0x8f8b0014, 0x858823, 0xaf910010, +0x1652023, 0xaf840014, 0x12200002, 0x24070018, +0x24070010, 0x3c0e8008, 0x35c60080, 0x90cd0068, +0x240c0001, 0x3c010800, 0xa0273c10, 0x31a700ff, +0x10ec0047, 0x0, 0x14800018, 0x2821, +0x3c0b8000, 0x91650109, 0x35710980, 0x8e230018, +0x30a500ff, 0x35602, 0x24a30001, 0x3146007f, +0x3070007f, 0x1206007e, 0x240cff80, 0x3c0f8008, +0x35e90080, 0xa123004c, 0x3c080800, 0x8d083c0c, +0x240e0002, 0x3c010800, 0xa02e3c51, 0x350d0008, +0x3c010800, 0xac2d3c0c, 0x24050010, 0x3c1f8000, +0x37e40a00, 0x9099003c, 0x33380020, 0x13000005, +0xa02021, 0x24020001, 0x3c010800, 0xac223bf4, +0x34a40001, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x801021, 0x3e00008, 0x27bd0020, 0x3c010800, +0xa4203bfc, 0x1040ff95, 0x2001821, 0xa000c18, +0xc01821, 0xa000c10, 0x24030030, 0x3c050800, +0x8ca53bf4, 0xb0682b, 0x11a0ffa8, 0x0, +0x3c040800, 0x94843bfc, 0x857821, 0x1e7702b, +0x11c00007, 0x2ca20004, 0x3c1f6000, 0x8ff95404, +0x3338003f, 0x1700ffe3, 0x24040042, 0x2ca20004, +0x1040ff9a, 0x24040042, 0xa000c7b, 0x8fbf0018, +0x1528ffb9, 0x0, 0x8cc20018, 0x3c188000, +0x24190002, 0x58f825, 0xacdf0018, 0x37040a00, +0xa0d90068, 0x9089003c, 0x240f0004, 0xa01021, +0x31280020, 0x3c010800, 0xa02f3c51, 0x11000002, +0x24050010, 0x24020001, 0x3c010800, 0xac223bec, +0xa000c71, 0x3c1f8000, 0x8f880014, 0x8c890060, +0x109282b, 0x14a00002, 0x1008821, 0x8c910060, +0x3c0b8000, 0x8d640e18, 0x240a0001, 0x2202821, +0x2203021, 0xa38a0008, 0xe000ae6, 0x2208021, +0xa000bff, 0xaf820018, 0xa1823, 0x12200007, +0x30640003, 0x3c0d8000, 0x35a70980, 0x90ec007c, +0x318b0004, 0x15600019, 0x248e0004, 0x3c010800, +0xa4243c12, 0x3c180800, 0x97183c12, 0x3052021, +0xc4782b, 0x11e0ff6c, 0x8f840010, 0x2ca60005, +0x14c0ffa4, 0x24040042, 0x30b90003, 0x17200002, +0xb91823, 0x24a3fffc, 0x3c010800, 0xac233bf4, +0x3c010800, 0xa4203c12, 0xa000c3e, 0x602821, +0xac3824, 0xa000c64, 0xec1826, 0x3c010800, +0xa42e3c12, 0xa000cce, 0x0, 0x3c010800, +0xac203bf4, 0xa000c7a, 0x24040042, 0x8f830014, +0x3c0b8000, 0x356a0a00, 0x14600006, 0x1021, +0x91460030, 0x24050005, 0x30c400ff, 0x10850003, +0x0, 0x3e00008, 0x0, 0x91490048, +0x312800ff, 0x839c2, 0x14e0fffa, 0x3c048008, +0x3c060800, 0x94c63bfc, 0x3c030800, 0x8c633c14, +0x3c050800, 0x8ca53bf4, 0x3c180800, 0x97183c12, +0x66c821, 0x8c8e0004, 0x3257821, 0x1f86821, +0x1ae6023, 0x1980001d, 0x0, 0x95780e10, +0x8f8e0020, 0x914f004c, 0x3306ffff, 0x8dc90004, +0x31ed00ff, 0x8dc70000, 0xcd7823, 0xf6100, +0x12c2821, 0x5021, 0xea2021, 0xac182b, +0x83c821, 0xadc50004, 0xadd90000, 0x91d8000a, +0x1f86821, 0xa1cd000a, 0x956c0e12, 0x8f8a0020, +0xa54c0008, 0x95490038, 0x25280001, 0xa5480038, +0x9147000d, 0x34eb0008, 0xa14b000d, 0x3e00008, +0x0, 0x27bdffd8, 0xafb00018, 0x938f0008, +0x8fb00014, 0x3c087fff, 0x8f870010, 0x3c0c8000, +0x3518ffff, 0xafbf0020, 0xafb1001c, 0x35990a00, +0x2181824, 0x932a003c, 0xf5fc0, 0x3c02bfff, +0x2cf00001, 0x3449ffff, 0x6bf825, 0x3c080800, +0x8d083c14, 0x8f99001c, 0x3c180800, 0x97183c0a, +0x3e95824, 0x107f80, 0x3c07efff, 0x3c05f0ff, +0x16f1825, 0x3c118000, 0x31490020, 0x34e2ffff, +0x34adffff, 0x362e0980, 0x27a50010, 0x24060002, +0x1194023, 0x270a0002, 0x621824, 0x808021, +0x15200002, 0x5821, 0x8d8b0e1c, 0xa7aa0012, +0x500003a, 0x24070000, 0x30ef00ff, 0xf3f00, +0x674025, 0x3c028008, 0xafa80014, 0x344b0080, +0x916a0068, 0x3c0f0800, 0x91ef3c11, 0x3c09dfff, +0x353fffff, 0xa602b, 0x3c020800, 0x94423c04, +0xa3af0011, 0x11fc024, 0xccf40, 0x3191825, +0x8fa70010, 0xafa30014, 0x3c1f0800, 0x93ff3c13, +0xa7a20016, 0x8fa80014, 0xed4824, 0x3c0b0100, +0x3c0a0fff, 0x12bc825, 0x33f80003, 0x354cffff, +0x10d7824, 0x3c027000, 0x32c3824, 0x181e00, +0xe24825, 0x1e35825, 0xafab0014, 0xafa90010, +0x91df007c, 0xa3bf0015, 0xe000070, 0x0, +0x362d0a00, 0x91a6003c, 0x30c40020, 0x10800006, +0x26020008, 0x3c110800, 0x96313c00, 0x262effff, +0x3c010800, 0xa42e3c00, 0x8fbf0020, 0x8fb1001c, +0x8fb00018, 0x3e00008, 0x27bd0028, 0x8f8a0018, +0x16a602b, 0x5580ffc4, 0x24070001, 0xa000d58, +0x30ef00ff, 0x93830008, 0x3c028000, 0x27bdffd8, +0x34480a00, 0x805021, 0xafbf0020, 0x34460ac0, +0x1002821, 0x1060000e, 0x34440980, 0x91070030, +0x240b0005, 0x8f89000c, 0x30ec003f, 0x118b000b, +0x3821, 0xafa90010, 0x3c0b8008, 0x8d69006c, +0xafaa0018, 0xe000137, 0xafa90014, 0xa3800008, +0x8fbf0020, 0x3e00008, 0x27bd0028, 0x8d1f0048, +0x3c180800, 0x8f183bf4, 0x8f990014, 0x3c027fff, +0x8d080044, 0x3443ffff, 0xafa90010, 0x3c0b8008, +0x8d69006c, 0x3e37024, 0x3197821, 0x1cf6823, +0x1a83821, 0xafaa0018, 0xe000137, 0xafa90014, +0xa000dad, 0xa3800008, 0x3c058000, 0x34a60a00, +0x90c7003c, 0x3c060800, 0x94c63c12, 0x3c020800, +0x8c423c0c, 0x30e30020, 0x62400, 0x10600031, +0x445025, 0x3c088008, 0x35050080, 0x90a30068, +0x7021, 0x240d0001, 0x5821, 0x240c0001, +0x3c188000, 0x370f0070, 0x8de90000, 0x3c088000, +0xaf890024, 0x8d190178, 0x720fffe, 0x35070070, +0x3c030800, 0x8c630074, 0x3c0f0800, 0x8def0070, +0x8ce20000, 0xc021, 0x492023, 0x642821, +0xa4302b, 0x1f84821, 0x1263821, 0x3c010800, +0xac250074, 0x3c010800, 0xac270070, 0xad0d0148, +0x3c020800, 0x8c423c14, 0xa50b0144, 0xa50c0146, +0xad02014c, 0x3c040800, 0x90843c11, 0x3c038008, +0xa1040152, 0xad0a0154, 0xa50e0158, 0x346e0080, +0x91cd004c, 0x3c0a1000, 0xa10d016d, 0x3e00008, +0xad0a0178, 0x8cad0e1c, 0x3c0c0800, 0x8d8c3bf4, +0x94ab0e16, 0x94a90e14, 0x1867021, 0x316cffff, +0xa000dd5, 0x312bffff, 0x3c048000, 0x34830a00, +0x9065003c, 0x30a20020, 0x1040002b, 0x0, +0x6021, 0x5821, 0x5021, 0x3c088000, +0x35040070, 0x8c890000, 0x3c088000, 0xaf890024, +0x8d0d0178, 0x5a0fffe, 0x350e0070, 0x3c050800, +0x8ca50074, 0x3c040800, 0x8c840070, 0x8dcd0000, +0x1021, 0x82c821, 0x1a93823, 0xa7c021, +0x307302b, 0x3267821, 0x3c010800, 0xac380074, +0x3c010800, 0xac2f0070, 0xad0c0148, 0x3c0e0800, +0x8dce3c14, 0xa50a0144, 0x240cff91, 0xa50b0146, +0x240b0040, 0xad0e014c, 0xa10c0152, 0xad0b0154, +0xa5000158, 0x910a0109, 0x3c091000, 0xa10a016d, +0x3e00008, 0xad090178, 0x8c8c0e18, 0x94870e12, +0x94860e10, 0x30ebffff, 0xa000e10, 0x30caffff, +0x3c048000, 0x34830a00, 0x9065003c, 0x30a20020, +0x10400039, 0x27bdfff8, 0x240d0001, 0x6021, +0x240b0001, 0x3c088000, 0x35040070, 0x8c8a0000, +0x3c098000, 0xaf8a0024, 0x8d2e0178, 0x5c0fffe, +0x352f0070, 0x3c050800, 0x8ca50074, 0x3c040800, +0x8c840070, 0x8dee0000, 0x1021, 0x82c821, +0x1ca3823, 0xa7c021, 0x307302b, 0x3267821, +0x3c010800, 0xac380074, 0x3c010800, 0xac2f0070, +0x912a0109, 0x3c080800, 0x91083c51, 0x3c0680ff, +0xa3aa0003, 0x8fae0000, 0x3108007f, 0x34c2ffff, +0x1c92025, 0xafa40000, 0x9127010a, 0xa3a00002, +0x82e00, 0xa3a70001, 0x8fa30000, 0x240f3000, +0x3c0a1000, 0x62c824, 0x325c025, 0xad38014c, +0x27bd0008, 0xad2f0154, 0xa5200158, 0xad2d0148, +0xa52c0144, 0xa52b0146, 0x240bff80, 0xa12b0152, +0x3e00008, 0xad2a0178, 0x8c8d0e18, 0x94870e12, +0x94860e10, 0x30ebffff, 0xa000e46, 0x30ccffff, +0x27bdffe8, 0xafb00010, 0x3c108000, 0xafbf0014, +0x36180a00, 0x970f0032, 0xe000ae2, 0x31e43fff, +0x8e0e0100, 0x240dff80, 0x3c042000, 0x1c25821, +0x16d6024, 0xc4940, 0x316a007f, 0x12a4025, +0x1043825, 0x3c048008, 0xae070830, 0x34860080, +0x90c50068, 0x24030002, 0x30a200ff, 0x10430004, +0x8f9f000c, 0x8f990010, 0xac9f0068, 0xac990064, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x3c0a0800, 0x254a381c, 0x3c090800, 0x252938f4, +0x3c080800, 0x25082ca8, 0x3c070800, 0x24e73a04, +0x3c060800, 0x24c63658, 0x3c050800, 0x24a533b0, +0x3c040800, 0x24842fc0, 0x3c030800, 0x2463370c, +0x3c020800, 0x244234a8, 0x3c010800, 0xac2a3e1c, +0x3c010800, 0xac293e18, 0x3c010800, 0xac283e14, +0x3c010800, 0xac273e20, 0x3c010800, 0xac263e30, +0x3c010800, 0xac253e28, 0x3c010800, 0xac243e24, +0x3c010800, 0xac233e34, 0x3c010800, 0xac223e2c, +0x3e00008, 0x0, 0x0 }; +u32 bce_TXP_b09FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_TXP_b09FwRodata[(0x30/4) + 1] = { +0x80000940, 0x80000900, 0x80080100, +0x80080080, 0x80080000, 0x800e0000, 0x80080080, +0x80080000, 0x80000a80, 0x80000a00, 0x80000980, +0x80000900, 0x0 }; +u32 bce_TXP_b09FwBss[(0x24c/4) + 1] = { 0x0 }; +u32 bce_TXP_b09FwSbss[(0x6c/4) + 1] = { 0x0 }; +u32 bce_TXP_b09FwSdata[(0x0/4) + 1] = { 0x0 }; + +int bce_TPAT_b09FwReleaseMajor = 0x1; +int bce_TPAT_b09FwReleaseMinor = 0x0; +int bce_TPAT_b09FwReleaseFix = 0x0; +u32 bce_TPAT_b09FwStartAddr = 0x08000488; +u32 bce_TPAT_b09FwTextAddr = 0x08000400; +int bce_TPAT_b09FwTextLen = 0x14f4; +u32 bce_TPAT_b09FwDataAddr = 0x00000000; +int bce_TPAT_b09FwDataLen = 0x0; +u32 bce_TPAT_b09FwRodataAddr = 0x080018f4; +int bce_TPAT_b09FwRodataLen = 0x4; +u32 bce_TPAT_b09FwBssAddr = 0x08001968; +int bce_TPAT_b09FwBssLen = 0x10a0; +u32 bce_TPAT_b09FwSbssAddr = 0x08001920; +int bce_TPAT_b09FwSbssLen = 0x48; +u32 bce_TPAT_b09FwSDataAddr = 0x00000000; +int bce_TPAT_b09FwSDataLen = 0x0; +u32 bce_TPAT_b09FwText[(0x14f4/4) + 1] = { +0xa000122, +0x0, 0x0, 0xd, 0x74706134, +0x2e342e32, 0x31000000, 0x4041501, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x10000003, 0x0, -0xd, 0xd, 0x3c020800, 0x24421ee0, -0x3c030800, 0x24632370, 0xac400000, 0x43202b, +0xd, 0xd, 0x3c020800, 0x24421920, +0x3c030800, 0x24632a08, 0xac400000, 0x43202b, 0x1480fffd, 0x24420004, 0x3c1d0800, 0x37bd2ffc, -0x3a0f021, 0x3c100800, 0x26100860, 0x3c1c0800, -0x279c1ee0, 0xe0005cb, 0x0, 0xd, -0x8f840014, 0x3c038000, 0x8f420178, 0x431024, -0x1440fffd, 0x0, 0x8c850008, 0x24020800, -0xaf420178, 0x97440104, 0x3c020008, 0xaf420140, -0x8f830028, 0x308affff, 0x30630001, 0x10600008, -0x1404821, 0x2543fffe, 0x3069ffff, 0x24020002, -0xa7420146, 0xa7430148, 0xa000249, 0x3c020800, -0xa7400146, 0x3c020800, 0x8c43083c, 0x1460000e, -0x24020f00, 0x8f820028, 0x30430020, 0x3182b, -0x31823, 0x30650009, 0x30420c00, 0x24030400, -0x14430002, 0x34a40001, 0x34a40005, 0xa744014a, -0xa00026b, 0x3c020800, 0x8f830018, 0x14620008, -0x0, 0x8f820028, 0x30420020, 0x2102b, -0x21023, 0x3042000d, 0xa000269, 0x34420005, -0x8f820028, 0x30420020, 0x2102b, 0x21023, -0x30420009, 0x34420001, 0xa742014a, 0x3c020800, -0x8c430820, 0x8f840028, 0x3c020048, 0x621825, -0x30840006, 0x24020002, 0x1082000d, 0x2c820003, -0x50400005, 0x24020004, 0x10800012, 0x3c020001, -0xa00028b, 0x0, 0x10820007, 0x24020006, -0x1482000f, 0x3c020111, 0xa000283, 0x621025, -0xa000282, 0x3c020101, 0x3c020011, 0x621025, -0x24030001, 0xaf421000, 0xaf830024, 0xa00028b, -0x0, 0x621025, 0xaf421000, 0xaf800024, +0x3a0f021, 0x3c100800, 0x26100488, 0x3c1c0800, +0x279c1920, 0xe000582, 0x0, 0xd, +0x2402ff80, 0x27bdffe0, 0x821024, 0xafb00010, +0xaf420020, 0xafbf0018, 0xafb10014, 0x93650004, +0x3084007f, 0x3441821, 0x3c020008, 0x621821, +0x30a50020, 0x3608021, 0x3c080111, 0x277b0008, +0x14a00002, 0x2466005c, 0x24660058, 0x92020004, +0x97430104, 0x92040004, 0x3047000f, 0x3063ffff, +0x30840040, 0x672823, 0x10800009, 0x4821, +0x92020005, 0x30420004, 0x10400005, 0x0, +0x10a00003, 0x0, 0x24a5fffc, 0x24090004, +0x92020005, 0x30420004, 0x10400012, 0x0, +0x10a00010, 0x0, 0x96020002, 0xa72021, +0x1044025, 0x2442fffe, 0xa7421016, 0x92030004, +0x2402ff80, 0x431024, 0x304200ff, 0x10400003, +0x3c020400, 0xa000172, 0x1024025, 0x8cc20000, +0xaf421018, 0x8f420178, 0x440fffe, 0x2402000a, +0xa7420140, 0x96020002, 0x24040009, 0x30420007, +0x21023, 0x30420007, 0xa7420142, 0x96020002, +0x2442fffe, 0xa7420144, 0xa7400146, 0x97420104, +0xa7420148, 0x8f420108, 0x30420020, 0x50400001, +0x24040001, 0x92020004, 0x30420010, 0x14400002, +0x34830010, 0x801821, 0xa743014a, 0x0, +0x0, 0x0, 0x0, 0xaf481000, 0x0, 0x0, 0x0, 0x0, -0x8f830024, 0x10600045, 0x3c048000, 0x8f421000, -0x441024, 0x1040fffd, 0x0, 0x1060003f, -0x0, 0x8f421000, 0x3c030020, 0x431024, -0x1040003a, 0x0, 0x8f820028, 0x30420002, -0x10400036, 0x0, 0x97421014, 0x14400033, -0x0, 0x97421008, 0x8f840014, 0x24420006, -0x24082, 0x81880, 0x643821, 0x8ce50000, -0x30430003, 0x30420001, 0x10400004, 0x0, -0xd, 0xa0002d0, 0x81080, 0x54600010, -0x30a5ffff, 0x3c06ffff, 0xa62824, 0x5182b, -0xa61026, 0x2102b, 0x621824, 0x10600005, -0x0, 0x0, 0xd, 0x0, -0x2400019c, 0x8ce20000, 0xa0002cf, 0x462825, -0x5182b, 0x38a2ffff, 0x2102b, 0x621824, -0x10600005, 0x0, 0x0, 0xd, -0x0, 0x240001a5, 0x8ce20000, 0x3445ffff, -0x81080, 0x441021, 0x3c030800, 0xac450000, -0x8c620830, 0x24420001, 0xac620830, 0x8f620000, -0x8f840014, 0xaf820000, 0x8c830000, 0x3402ffff, -0x1462000b, 0x3c020800, 0x8c440850, 0x891821, -0xac430850, 0x64182b, 0x1060001d, 0x3c050800, -0x8ca20854, 0x24420001, 0xa0002ff, 0xaca20854, -0x8c820000, 0x30420100, 0x1040000b, 0x3c020800, -0x8c440848, 0x891821, 0xac430848, 0x64182b, -0x1060000f, 0x3c050800, 0x8ca2084c, 0x24420001, -0xa0002ff, 0xaca2084c, 0x3c020800, 0x8c440840, -0x891821, 0xac430840, 0x64182b, 0x10600004, -0x3c050800, 0x8ca20844, 0x24420001, 0xaca20844, -0x8f84001c, 0x1402821, 0x24820008, 0x30421fff, -0x24434000, 0x343d821, 0x30a30007, 0xaf840010, -0xaf82001c, 0xaf420084, 0x10600002, 0x24a20007, -0x3045fff8, 0x8f820034, 0x8f840004, 0x451821, -0xaf820020, 0x64102b, 0xaf830034, 0x14400002, -0x641023, 0xaf820034, 0x8f840034, 0x34028000, -0x821021, 0x3421821, 0x3c021000, 0xaf830014, -0xaf440080, 0x3e00008, 0xaf420178, 0x27bdffe0, -0x3c038000, 0xafbf0018, 0xafb10014, 0xafb00010, -0x8f420178, 0x431024, 0x1440fffd, 0x0, -0x8f830028, 0x30620200, 0x54400006, 0x31a82, -0x0, 0xd, 0x0, 0x240001e6, -0x31a82, 0x30630003, 0x31100, 0x431021, +0x8f421000, 0x441fffe, 0x3102ffff, 0x10400007, +0x0, 0x92020004, 0x30420040, 0x14400003, +0x0, 0x8f421018, 0xacc20000, 0x96020006, +0x3042ffff, 0x24420002, 0x21043, 0x21040, +0x3628821, 0x96220000, 0x1120000d, 0x3044ffff, +0xa71021, 0x8f83001c, 0x8f45101c, 0x21082, +0x21080, 0x431021, 0xac450000, 0x30a6ffff, +0xe00060b, 0x52c02, 0x402021, 0xa6220000, +0x92030004, 0x2402ff80, 0x431024, 0x304200ff, +0x1040001f, 0x0, 0x92020005, 0x30420002, +0x1040001b, 0x0, 0x9742100c, 0x2442fffe, +0xa7421016, 0x0, 0x3c020400, 0x34420030, +0xaf421000, 0x0, 0x0, 0x0, +0x0, 0x8f421000, 0x441fffe, 0x0, +0x9742100c, 0x8f45101c, 0x3042ffff, 0x24420030, +0x21082, 0x21080, 0x5b1021, 0xac450000, +0x30a6ffff, 0xe00060b, 0x52c02, 0xa6220000, +0x96040002, 0x24840008, 0xe00024e, 0x3084ffff, +0x97440104, 0xe00025c, 0x3084ffff, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x3c021000, 0x27bd0020, +0x3e00008, 0xaf420178, 0xa4102b, 0x10400009, +0x24030001, 0x52840, 0xa4102b, 0x4a00003, +0x31840, 0x5440fffc, 0x52840, 0x10600007, +0x0, 0x85102b, 0x14400002, 0x31842, +0x852023, 0xa0001f0, 0x52842, 0x3e00008, +0x801021, 0x8f820000, 0x27bdffe8, 0xafbf0014, +0x21827, 0x2c630001, 0x2c420002, 0x431025, +0xafb00010, 0x10400003, 0x240426f5, 0x2402007f, +0xaf820000, 0x8f850000, 0x52827, 0xe00061c, +0x30a5ffff, 0x8f840004, 0x240502bd, 0xe0001e7, +0x408021, 0x2028021, 0x101402, 0xaf900000, +0x8fbf0014, 0x8fb00010, 0xaf820004, 0x27bd0018, +0x3e00008, 0x304200ff, 0x8ca20000, 0x463021, +0xc2102b, 0x10400004, 0xaca60000, 0x8c820000, +0x24420001, 0xac820000, 0x3e00008, 0x0, +0x3c046008, 0x8c825000, 0x2403ff7f, 0x3c056000, +0x431024, 0x3442380c, 0xac825000, 0x8ca24c1c, +0x3c1a8000, 0x34038000, 0x21602, 0x3042000f, +0xaf82003c, 0x10400007, 0x3432021, 0x8ca34c1c, +0x3c02001f, 0x3442fc00, 0x621824, 0x319c2, +0xaf830024, 0x8f420008, 0xaf84001c, 0x275b4000, +0x34420001, 0xaf420008, 0xaf80002c, 0x3c02601c, +0xaf400080, 0xaf400084, 0x8c440008, 0x8ca30808, +0x3c020080, 0x3c010800, 0xac220420, 0x2402fff0, +0x621824, 0x3c025709, 0x14620004, 0xaf840014, +0x24020001, 0x3e00008, 0xaf820028, 0x3e00008, +0xaf800028, 0x3084ffff, 0x30820007, 0x8f85002c, +0x10400002, 0x24830007, 0x3064fff8, 0xa41021, +0x30421fff, 0x3421821, 0x247b4000, 0xaf850018, +0xaf82002c, 0x3e00008, 0xaf420084, 0x3084ffff, +0x3082000f, 0x8f850044, 0x8f860014, 0x10400002, +0x2483000f, 0x3064fff0, 0xa41021, 0x46182b, +0xaf850030, 0x462023, 0x14600002, 0xaf820044, +0xaf840044, 0x8f820044, 0x34048000, 0x3421821, +0x641821, 0xaf83001c, 0x3e00008, 0xaf420080, +0x8f820028, 0x10400008, 0x8f820038, 0x8f82ffd4, +0x14400005, 0x8f820038, 0x3c02ffbf, 0x3442ffff, +0x822024, 0x8f820038, 0x30430006, 0x24020002, +0x1062000f, 0x3c020101, 0x2c620003, 0x50400005, +0x24020004, 0x1060000f, 0x3c020001, 0xa000295, +0x0, 0x10620005, 0x24020006, 0x1462000c, +0x3c020111, 0xa00028e, 0x821025, 0x3c020011, +0x821025, 0xaf421000, 0x24020001, 0xa000295, +0xaf820034, 0x821025, 0xaf421000, 0xaf800034, +0x0, 0x0, 0x0, 0x3e00008, +0x0, 0x8f820034, 0x10400004, 0x0, +0x8f421000, 0x441fffe, 0x0, 0x3e00008, +0x0, 0x8f820020, 0x229c2, 0x24a3fff0, +0x31842, 0x2444f800, 0x31140, 0x431021, 0x21080, 0x431021, 0x21080, 0x3c030800, -0x24631f20, 0x438821, 0x8e240000, 0x10800005, -0x0, 0x0, 0xd, 0x0, -0x240001ea, 0x8f62000c, 0x4410003, 0x24020001, -0xa0003c8, 0xae200000, 0x8f850014, 0xae220000, -0x8ca70008, 0xa2200007, 0x8f620004, 0x21402, -0xa2220004, 0x304300ff, 0x24630005, 0x33083, -0x2cc20041, 0x14400006, 0x26300014, 0x0, -0xd, 0x0, 0x240001fe, 0x26300014, -0xe00070c, 0x2002021, 0x8f620004, 0xa6220008, -0x8f430108, 0x3c021000, 0x621824, 0x10600008, -0x0, 0x97420104, 0x92230007, 0x2442ffec, -0x3045ffff, 0x34630002, 0xa00036a, 0xa2230007, -0x97420104, 0x2442fff0, 0x3045ffff, 0x8f620004, -0x3042ffff, 0x2c420013, 0x54400005, 0x92230007, -0x92220007, 0x34420001, 0xa2220007, 0x92230007, -0x24020001, 0x10620009, 0x28620002, 0x14400014, -0x24020002, 0x10620012, 0x24020003, 0x1062000a, -0x0, 0xa00038b, 0x0, 0x8f820014, -0x8c43000c, 0x3c04ffff, 0x641824, 0x651825, -0xa00038b, 0xac43000c, 0x8f820014, 0x8c430010, -0x3c04ffff, 0x641824, 0x651825, 0xac430010, -0x8f620004, 0x3042ffff, 0x24420002, 0x21083, -0xa2220005, 0x304500ff, 0x8f820014, 0x3c04ffff, -0x52880, 0xa22821, 0x8ca70000, 0x96220008, -0x97430104, 0xe42024, 0x24420002, 0x621823, -0x833825, 0xaca70000, 0x92240005, 0x41080, -0x2021021, 0x90430000, 0x3c05fff6, 0x34a5ffff, -0x3063000f, 0x832021, 0xa2240006, 0x308200ff, -0x24420003, 0x21080, 0x2021021, 0x8c460000, -0x308300ff, 0x8f820014, 0x3c04ff7f, 0x31880, -0xc53824, 0x621821, 0xae26000c, 0xac67000c, -0x8e22000c, 0x92230006, 0x3484ffff, 0x441024, -0x24630003, 0x31880, 0x2031821, 0xe42024, -0xae22000c, 0xac640000, 0x92220006, 0x24420004, -0x21080, 0x2021021, 0x94470002, 0xac470000, -0x92230006, 0x8f820014, 0x31880, 0x621821, -0xac670010, 0x24020010, 0x24030002, 0xa7420140, -0xa7400142, 0xa7400144, 0xa7430146, 0x97420104, -0x8f840028, 0x24030001, 0x2442fffe, 0x30840006, -0xa7420148, 0x24020002, 0xa743014a, 0x1082000d, -0x2c820003, 0x10400005, 0x24020004, 0x10800011, -0x3c020009, 0xa0003ee, 0x0, 0x10820007, -0x24020006, 0x1482000d, 0x3c020119, 0xa0003e8, -0x24030001, 0xa0003e7, 0x3c020109, 0x3c020019, -0x24030001, 0xaf421000, 0xaf830024, 0xa0003ee, -0x0, 0xaf421000, 0xaf800024, 0x0, -0x0, 0x0, 0x0, 0x92220004, -0x24030008, 0x3c050800, 0x24420002, 0x30420007, -0x621823, 0x8f820024, 0x3c040800, 0x30630007, -0x10400006, 0xae230010, 0x3c038000, 0x8f421000, -0x431024, 0x1040fffd, 0x0, 0x8f620000, -0xaf820000, 0x97430104, 0x8c820840, 0x2463fffe, -0x431821, 0xac830840, 0x62182b, 0x10600003, -0x8ca20844, 0x24420001, 0xaca20844, 0x8f82001c, -0xaf820010, 0x24420010, 0x30421fff, 0xaf82001c, -0xaf420084, 0x97430104, 0x24424000, 0x342d821, -0x3063ffff, 0x30620007, 0x10400002, 0x24620007, -0x3043fff8, 0x8f820034, 0x8f840004, 0x431821, -0xaf820020, 0x64102b, 0xaf830034, 0x14400002, -0x641023, 0xaf820034, 0x8f840034, 0x34028000, -0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x821021, -0x3421821, 0x3c021000, 0xaf830014, 0xaf440080, -0xaf420178, 0x3e00008, 0x27bd0020, 0x27bdffe0, -0x3c038000, 0xafbf0018, 0xafb10014, 0xafb00010, -0x8f420178, 0x431024, 0x1440fffd, 0x0, -0x8f830028, 0x30620200, 0x54400006, 0x31a82, -0x0, 0xd, 0x0, 0x2400026d, -0x31a82, 0x30630003, 0x31100, 0x431021, -0x21080, 0x431021, 0x21080, 0x3c030800, -0x24631f20, 0x438021, 0x8e040000, 0x14800005, -0x0, 0x0, 0xd, 0x0, -0x24000271, 0x8f620004, 0x4410008, 0x26050014, -0x92020006, 0x8e03000c, 0x24420003, 0x21080, -0xa21021, 0xac430000, 0xae000000, 0x92020005, -0x24420001, 0x21080, 0xa21021, 0x8c430000, -0x3c040001, 0x641821, 0xac430000, 0x92060004, -0x27710008, 0x2202021, 0x24c60005, 0xe00070c, -0x63082, 0x92040006, 0x3c057fff, 0x8f620004, -0x42080, 0x912021, 0x8c830004, 0x34a5ffff, -0x451024, 0x621821, 0xac830004, 0x92050005, -0x3c07ffff, 0x92040004, 0x52880, 0xb12821, -0x8ca30000, 0x97420104, 0x96060008, 0x671824, -0x441021, 0x461023, 0x3042ffff, 0x621825, -0xaca30000, 0x92030007, 0x24020001, 0x1062000a, -0x28620002, 0x1440001d, 0x2402000a, 0x24020002, -0x10620019, 0x24020003, 0x1062000e, 0x2402000a, -0xa0004a6, 0x0, 0x92020004, 0x97430104, -0x8e24000c, 0x621821, 0x2463fff2, 0x3063ffff, -0x872024, 0x832025, 0xae24000c, 0xa0004a6, -0x2402000a, 0x92020004, 0x97430104, 0x8e240010, -0x621821, 0x2463ffee, 0x3063ffff, 0x872024, -0x832025, 0xae240010, 0x2402000a, 0xa7420140, -0x96030012, 0x8f840028, 0xa7430142, 0x92020004, -0xa7420144, 0xa7400146, 0x97430104, 0x30840006, -0x24020001, 0xa7430148, 0xa742014a, 0x24020002, -0x1082000d, 0x2c820003, 0x10400005, 0x24020004, -0x10800011, 0x3c020041, 0xa0004cb, 0x0, -0x10820007, 0x24020006, 0x1482000d, 0x3c020151, -0xa0004c5, 0x24030001, 0xa0004c4, 0x3c020141, -0x3c020051, 0x24030001, 0xaf421000, 0xaf830024, -0xa0004cb, 0x0, 0xaf421000, 0xaf800024, +0x24631968, 0x2c840301, 0x14800013, 0x433021, +0x8f840024, 0xa4102b, 0x1440000f, 0x3021, +0xa41023, 0x21940, 0x621821, 0x31880, +0x621821, 0x8f82003c, 0x821021, 0x2442ffff, +0x45102b, 0x14400004, 0x31880, 0x3c020800, +0x24421968, 0x623021, 0x3e00008, 0xc01021, +0x8f82001c, 0x27bdffe0, 0xafbf0018, 0xafb10014, +0xafb00010, 0x8c440008, 0x8f420178, 0x440fffe, +0x24020800, 0xaf420178, 0x24020008, 0xa7420140, +0xa7400142, 0x97420104, 0x8f840038, 0x3051ffff, +0x30820001, 0x10400007, 0x2208021, 0x2623fffe, +0x24020002, 0x3070ffff, 0xa7420146, 0xa0002df, +0xa7430148, 0xa7400146, 0x3c020800, 0x8c42043c, +0x1440000d, 0x8f830020, 0x30820020, 0x14400002, +0x24030009, 0x24030001, 0x602021, 0x8f830020, +0x24020900, 0x50620001, 0x34840004, 0xa744014a, +0xa0002fa, 0x0, 0x24020f00, 0x14620005, +0x30820020, 0x14400006, 0x2403000d, 0xa0002f9, +0x24030005, 0x14400002, 0x24030009, 0x24030001, +0xa743014a, 0x3c020800, 0x8c420420, 0x3c040048, +0xe000271, 0x442025, 0xe00029a, 0x0, +0x8f820034, 0x1040003e, 0x0, 0x8f421000, +0x3c030020, 0x431024, 0x10400039, 0x8f820038, +0x30420002, 0x10400036, 0x0, 0x97421014, +0x14400033, 0x0, 0x97421008, 0x8f88001c, +0x3042ffff, 0x24420006, 0x21882, 0x33880, +0xe83021, 0x30430001, 0x8cc40000, 0x10600004, +0x30420003, 0xd, 0xa00033b, 0xe81021, +0x54400010, 0x3084ffff, 0x3c05ffff, 0x852024, +0x851826, 0x3182b, 0x4102b, 0x431024, +0x10400005, 0x0, 0x0, 0xd, +0x0, 0x240001d0, 0x8cc20000, 0xa00033a, +0x452025, 0x3883ffff, 0x3182b, 0x4102b, +0x431024, 0x10400005, 0x0, 0x0, +0xd, 0x0, 0x240001d9, 0x8cc20000, +0x3444ffff, 0xe81021, 0xac440000, 0x3c020800, +0x8c420430, 0x24420001, 0x3c010800, 0xac220430, +0x8f620000, 0x8f84001c, 0xaf820010, 0x8c830000, +0x3402ffff, 0x14620007, 0x2003021, 0x3c040800, +0x24840454, 0x3c050800, 0x24a50450, 0xa00035c, +0x0, 0x8c820000, 0x30420100, 0x10400007, +0x2003021, 0x3c040800, 0x2484044c, 0x3c050800, +0x24a50448, 0xa00035c, 0x0, 0x3c040800, +0x24840444, 0x3c050800, 0x24a50440, 0xe000217, +0x0, 0xe00024e, 0x24040008, 0xe00025c, +0x2202021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3c021000, 0x27bd0020, 0x3e00008, 0xaf420178, +0x8f820038, 0x27bdffe8, 0xafbf0014, 0x30420200, +0x14400005, 0xafb00010, 0x0, 0xd, +0x0, 0x24000209, 0x8f420178, 0x440fffe, +0x0, 0xe0002a2, 0x0, 0x14400005, +0x408021, 0x0, 0xd, 0x0, +0x24000210, 0x8e020000, 0x10400005, 0x0, +0x0, 0xd, 0x0, 0x24000213, +0x8f62000c, 0x4410003, 0x24020001, 0xa000422, +0xae000000, 0xae020000, 0x8f82001c, 0x8c480008, +0xa2000007, 0x8f65000c, 0x8f640004, 0x30a3ffff, +0x42402, 0x852023, 0x308200ff, 0x431021, +0x24420005, 0x23083, 0x2cc20081, 0xa605000a, +0x14400005, 0xa2040004, 0x0, 0xd, +0x0, 0x2400022b, 0x8f85001c, 0xe000629, +0x26040014, 0x8f620004, 0x8f430108, 0xa6020008, +0x3c021000, 0x621824, 0x10600008, 0x0, +0x97420104, 0x92030007, 0x2442ffec, 0x34630002, +0x3045ffff, 0xa0003b3, 0xa2030007, 0x97420104, +0x2442fff0, 0x3045ffff, 0x8f620004, 0x3042ffff, +0x2c420013, 0x54400005, 0x92030007, 0x92020007, +0x34420001, 0xa2020007, 0x92030007, 0x24020001, +0x10620005, 0x24020003, 0x1062000a, 0x8f82001c, +0xa0003cf, 0x0, 0x8f82001c, 0x3c04ffff, +0x8c43000c, 0x641824, 0x651825, 0xa0003cf, +0xac43000c, 0x3c04ffff, 0x8c430010, 0x641824, +0x651825, 0xac430010, 0x8f620004, 0x96040008, +0x3042ffff, 0x24420002, 0x21083, 0xa2020005, +0x8f83001c, 0x304200ff, 0x21080, 0x432821, +0x8ca80000, 0x8ca20000, 0x24030004, 0x21702, +0x14430013, 0x0, 0x97420104, 0x3083ffff, +0x3042ffff, 0x431023, 0x3c03ffff, 0x1031824, +0x2442fffe, 0x624025, 0xaca80000, 0x92030005, +0x306200ff, 0x21080, 0x501021, 0x90420014, +0x3042000f, 0x431021, 0xa000409, 0xa2020006, +0x8ca30004, 0x97420104, 0x3084ffff, 0x3068ffff, +0x3042ffff, 0x441023, 0x2442ffd6, 0x21400, +0x1024025, 0x9602000a, 0xaca80004, 0x92030007, +0x92040005, 0x24420028, 0x21083, 0x441021, +0x34630004, 0xa2030007, 0xa2020006, 0x8f820038, +0x2403fffb, 0x34420002, 0x431024, 0xaf820038, +0x92030006, 0x8f87001c, 0x31880, 0x701021, +0x8c440020, 0x3c02fff6, 0x3442ffff, 0x824024, +0x671821, 0xae04000c, 0xac68000c, 0x92050006, +0x3c03ff7f, 0x8e02000c, 0x52880, 0xb02021, +0x3463ffff, 0x1033024, 0x94880026, 0xa72821, +0x431024, 0xae02000c, 0xac860020, 0xac880024, +0xaca80010, 0x24020010, 0xa7420140, 0x24020002, +0xa7400142, 0xa7400144, 0xa7420146, 0x97420104, +0x3c040008, 0x2442fffe, 0xa7420148, 0x24020001, +0xe000271, 0xa742014a, 0x9603000a, 0x92020004, +0x431021, 0x24420002, 0x30420007, 0x21023, +0x30420007, 0xe00029a, 0xae020010, 0x8f620000, +0x3c050800, 0x24a50440, 0x3c040800, 0x24840444, +0xaf820010, 0x97460104, 0x30c6ffff, 0xe000217, +0x24c6fffe, 0xe00024e, 0x24040010, 0x97440104, +0xe00025c, 0x3084ffff, 0x8fbf0014, 0x8fb00010, +0x3c021000, 0x27bd0018, 0x3e00008, 0xaf420178, +0x27bdffe0, 0xafb10014, 0x8f910038, 0xafbf0018, +0x32220200, 0x14400005, 0xafb00010, 0x0, +0xd, 0x0, 0x240002ab, 0x8f420178, +0x440fffe, 0x0, 0xe0002a2, 0x0, +0x14400005, 0x408021, 0x0, 0xd, +0x0, 0x240002b2, 0x8e020000, 0x54400006, +0x92020007, 0x0, 0xd, 0x0, +0x240002b5, 0x92020007, 0x30420004, 0x10400004, +0x36220002, 0x2403fffb, 0x431024, 0xaf820038, +0x8f620004, 0x4430008, 0x92020007, 0x92020006, +0x8e03000c, 0xae000000, 0x21080, 0x501021, +0xac430020, 0x92020007, 0x30420004, 0x54400009, +0x9602000a, 0x92020005, 0x3c030001, 0x21080, +0x501021, 0x8c460018, 0xc33021, 0xac460018, +0x9602000a, 0x92060004, 0x27710008, 0x2202021, +0xc23021, 0x24c60005, 0x26050014, 0xe000629, +0x63082, 0x92040006, 0x8f650004, 0x3c027fff, +0x42080, 0x912021, 0x8c830004, 0x3442ffff, +0xa22824, 0x651821, 0xac830004, 0x92020007, +0x92040005, 0x92030004, 0x30420004, 0x10400014, +0x96070008, 0x308400ff, 0x42080, 0x912021, +0x8c860004, 0x97420104, 0x9605000a, 0x306300ff, +0x3042ffff, 0x431021, 0x451021, 0x30e3ffff, +0x431023, 0x2442ffd8, 0x30c6ffff, 0x21400, +0xc23025, 0xac860004, 0xa0004c0, 0x92030007, +0x308500ff, 0x52880, 0xb12821, 0x8ca40000, +0x97420104, 0x306300ff, 0x3042ffff, 0x431021, +0x471023, 0x3c03ffff, 0x832024, 0x3042ffff, +0x822025, 0xaca40000, 0x92030007, 0x24020001, +0x10620005, 0x24020003, 0x10620011, 0x0, +0xa0004e2, 0x8e030010, 0x97420104, 0x92030004, +0x9605000a, 0x8e24000c, 0x431021, 0x451021, +0x2442fff2, 0x3c03ffff, 0x832024, 0x3042ffff, +0x822025, 0xae24000c, 0xa0004e2, 0x8e030010, +0x97420104, 0x92030004, 0x9605000a, 0x8e240010, +0x431021, 0x451021, 0x2442ffee, 0x3c03ffff, +0x832024, 0x3042ffff, 0x822025, 0xae240010, +0x8e030010, 0x2402000a, 0xa7420140, 0xa7430142, +0x9603000a, 0x92020004, 0x3c040040, 0x431021, +0xa7420144, 0xa7400146, 0x97420104, 0xa7420148, +0x24020001, 0xe000271, 0xa742014a, 0xe00029a, +0x0, 0x8f620000, 0x92030004, 0x3c050800, +0x24a50440, 0xaf820010, 0x97460104, 0x3c040800, +0x24840444, 0x30c6ffff, 0xe000217, 0x663021, +0x9602000a, 0x92040004, 0x822021, 0x2484000a, +0xe00024e, 0x3084ffff, 0x97440104, 0xe00025c, +0x3084ffff, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3c021000, 0x27bd0020, 0x3e00008, 0xaf420178, +0x8f820038, 0x30424000, 0x14400003, 0x0, +0xa0002c5, 0x0, 0x8f620008, 0x8f620000, +0x21602, 0x304300f0, 0x24020030, 0x10620005, +0x24020040, 0x10620005, 0x0, 0x3e00008, +0x0, 0xa000369, 0x0, 0xa00044d, +0x0, 0x27bdffe0, 0xafb10014, 0xafb00010, +0xafbf0018, 0x8f620000, 0x97430104, 0x3050ffff, +0x3071ffff, 0x8f420178, 0x440fffe, 0x32020007, +0x21023, 0x30420007, 0x2403000a, 0x2604fffe, +0xa7430140, 0xa7420142, 0xa7440144, 0xa7400146, +0xa7510148, 0x8f420108, 0x30420020, 0x14400002, +0x24030009, 0x24030001, 0xa743014a, 0xe000271, +0x3c040040, 0xe00029a, 0x0, 0x8f620000, +0x2113021, 0x24c6fffe, 0x3c050800, 0x24a50440, +0x3c040800, 0x24840444, 0xaf820010, 0xe000217, +0x0, 0x26040008, 0xe00024e, 0x3084ffff, +0xe00025c, 0x2202021, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0x3c021000, 0x27bd0020, 0x3e00008, +0xaf420178, 0x8f820038, 0x27bdffe8, 0xafbf0014, +0x30424000, 0x10400005, 0xafb00010, 0x0, +0xd, 0x0, 0x240003a2, 0x8f420178, +0x440fffe, 0x24020800, 0xaf420178, 0x24020008, +0xa7420140, 0xa7400142, 0x8f820038, 0x97430104, +0x30420001, 0x10400007, 0x3070ffff, 0x2603fffe, +0x24020002, 0xa7420146, 0xa7430148, 0xa000574, +0x2402000d, 0xa7400146, 0x2402000d, 0xa742014a, +0x8f620000, 0x24040008, 0xaf820010, 0xe00024e, +0x0, 0xe00025c, 0x2002021, 0x8fbf0014, +0x8fb00010, 0x3c021000, 0x27bd0018, 0x3e00008, +0xaf420178, 0x27bdffe8, 0xafbf0010, 0xe000221, +0x0, 0x3c028000, 0x34440070, 0x8c830000, +0x8f420000, 0x38420001, 0x30420001, 0x10400018, +0xaf83000c, 0x804821, 0x604021, 0x8d270000, +0x3c050800, 0x8ca5045c, 0x3c040800, 0x8c840458, +0xe83023, 0x1021, 0xa62821, 0x822021, +0xa6302b, 0x862021, 0x3c010800, 0xac25045c, +0x3c010800, 0xac240458, 0x8f420000, 0x38420001, +0x30420001, 0x1440ffed, 0xe04021, 0xaf87000c, +0x3c028000, 0x34420070, 0x3c050800, 0x8ca5045c, +0x8f87000c, 0x3c040800, 0x8c840458, 0x8c460000, +0x1021, 0x822021, 0xc73023, 0xa62821, +0x8f820028, 0xa6302b, 0x862021, 0x3c010800, +0xac25045c, 0x3c010800, 0xac240458, 0x10400016, +0x0, 0x97420104, 0x10400005, 0x8f830008, +0x14600007, 0x2462ffff, 0xa0005c8, 0x2c62000a, +0x2c620010, 0x50400004, 0x8f830008, 0x24620001, +0xaf820008, 0x8f830008, 0x2c62000a, 0x14400003, +0x2c620007, 0xa0005cf, 0xaf80ffd4, 0x10400002, +0x24020001, 0xaf82ffd4, 0x8f430108, 0x8f440100, +0x30622000, 0xaf830038, 0x10400008, 0xaf840020, +0x3c020800, 0x8c42042c, 0x24420001, 0x3c010800, +0xac22042c, 0xa000607, 0x3c024000, 0x30620200, +0x14400003, 0x24020f00, 0x14820008, 0x24020d00, +0x97420104, 0x50400024, 0x3c024000, 0xe00050d, +0x0, 0xa000604, 0x8f820040, 0x14820008, +0x30620006, 0x97420104, 0x5040001b, 0x3c024000, +0xe000556, 0x0, 0xa000604, 0x8f820040, +0x10400015, 0x3c024000, 0x93620000, 0x304300f0, +0x24020010, 0x10620006, 0x0, 0x24020070, +0x10620007, 0x0, 0xa000604, 0x8f820040, +0xe000522, 0x0, 0xa000604, 0x8f820040, +0xe000139, 0x0, 0x8f820040, 0x24420001, +0xaf820040, 0x3c024000, 0xaf420138, 0x0, +0xa000587, 0x3c028000, 0x3084ffff, 0x30c6ffff, +0x52c00, 0xa62825, 0x3882ffff, 0x451021, +0x45282b, 0x451021, 0x21c02, 0x3042ffff, +0x431021, 0x21c02, 0x3042ffff, 0x431021, +0x3842ffff, 0x3e00008, 0x3042ffff, 0x3084ffff, +0x30a5ffff, 0x1821, 0x10800007, 0x0, +0x30820001, 0x10400002, 0x42042, 0x651821, +0xa00061f, 0x52840, 0x3e00008, 0x601021, +0x10c00006, 0x24c6ffff, 0x8ca20000, 0x24a50004, +0xac820000, 0xa000629, 0x24840004, 0x3e00008, +0x0, 0x10a00008, 0x24a3ffff, 0xac860000, +0x0, 0x0, 0x2402ffff, 0x2463ffff, +0x1462fffa, 0x24840004, 0x3e00008, 0x0, +0x0 }; +u32 bce_TPAT_b09FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_TPAT_b09FwRodata[(0x4/4) + 1] = { +0x1, +0x0 }; +u32 bce_TPAT_b09FwBss[(0x10a0/4) + 1] = { 0x0 }; +u32 bce_TPAT_b09FwSbss[(0x48/4) + 1] = { 0x0 }; +u32 bce_TPAT_b09FwSdata[(0x0/4) + 1] = { 0x0 }; + +int bce_COM_b09FwReleaseMajor = 0x1; +int bce_COM_b09FwReleaseMinor = 0x0; +int bce_COM_b09FwReleaseFix = 0x0; +u32 bce_COM_b09FwStartAddr = 0x080000f8; +u32 bce_COM_b09FwTextAddr = 0x08000000; +int bce_COM_b09FwTextLen = 0x4c18; +u32 bce_COM_b09FwDataAddr = 0x00000000; +int bce_COM_b09FwDataLen = 0x0; +u32 bce_COM_b09FwRodataAddr = 0x08004c18; +int bce_COM_b09FwRodataLen = 0x30; +u32 bce_COM_b09FwBssAddr = 0x08004c98; +int bce_COM_b09FwBssLen = 0xbc; +u32 bce_COM_b09FwSbssAddr = 0x08004c60; +int bce_COM_b09FwSbssLen = 0x38; +u32 bce_COM_b09FwSDataAddr = 0x00000000; +int bce_COM_b09FwSDataLen = 0x0; +u32 bce_COM_b09FwText[(0x4c18/4) + 1] = { +0xa00003e, +0x0, 0x0, 0xd, 0x636f6d34, +0x2e342e32, 0x31000000, 0x4041502, 0x0, +0x3, 0x14, 0x32, 0x3, 0x0, 0x0, 0x0, 0x0, -0x8f820024, 0x3c060800, 0x10400006, 0x3c050800, -0x3c038000, 0x8f421000, 0x431024, 0x1040fffd, -0x0, 0x8f620000, 0xaf820000, 0x92040004, -0x97420104, 0x8ca30840, 0x441021, 0x621021, -0xaca20840, 0x43102b, 0x10400003, 0x8cc20844, -0x24420001, 0xacc20844, 0x92020004, 0x2444000a, -0x30830007, 0x10600002, 0x24820007, 0x304403f8, -0x8f82001c, 0xaf820010, 0x441021, 0x30421fff, -0xaf82001c, 0xaf420084, 0x97430104, 0x24424000, -0x342d821, 0x3063ffff, 0x30620007, 0x10400002, -0x24620007, 0x3043fff8, 0x8f820034, 0x8f840004, -0x431821, 0xaf820020, 0x64102b, 0xaf830034, -0x14400002, 0x641023, 0xaf820034, 0x8f840034, -0x34028000, 0x8fbf0018, 0x8fb10014, 0x8fb00010, -0x821021, 0x3421821, 0x3c021000, 0xaf830014, -0xaf440080, 0xaf420178, 0x3e00008, 0x27bd0020, -0x3c080800, 0x3c070800, 0x8f620000, 0x97430104, -0x3c048000, 0x3045ffff, 0x3066ffff, 0x8f420178, -0x441024, 0x1440fffd, 0x2402000a, 0x30a30007, -0xa7420140, 0x24020008, 0x431023, 0x30420007, -0x24a3fffe, 0xa7420142, 0xa7430144, 0xa7400146, -0xa7460148, 0x8f420108, 0x8f830028, 0x30420020, -0x2102b, 0x21023, 0x30420009, 0x34420001, -0x30630006, 0xa742014a, 0x24020002, 0x1062000d, -0x2c620003, 0x10400005, 0x24020004, 0x10600011, -0x3c020041, 0xa000546, 0x0, 0x10620007, -0x24020006, 0x1462000d, 0x3c020151, 0xa000540, -0x24030001, 0xa00053f, 0x3c020141, 0x3c020051, -0x24030001, 0xaf421000, 0xaf830024, 0xa000546, -0x0, 0xaf421000, 0xaf800024, 0x0, -0x0, 0x0, 0x0, 0x8f820024, -0xc51821, 0x24a50008, 0x10400006, 0x30c6ffff, -0x3c048000, 0x8f421000, 0x441024, 0x1040fffd, -0x0, 0x8ce40840, 0x8f620000, 0x2463fffe, -0x831821, 0xace30840, 0x64182b, 0xaf820000, -0x10600003, 0x8d020844, 0x24420001, 0xad020844, -0x30a3ffff, 0x30620007, 0x10400002, 0x24620007, -0x3043fff8, 0x8f84001c, 0xc02821, 0x831021, -0x30421fff, 0x24434000, 0x343d821, 0x30a30007, -0xaf840010, 0xaf82001c, 0xaf420084, 0x10600002, -0x24a20007, 0x3045fff8, 0x8f820034, 0x8f840004, -0x451821, 0xaf820020, 0x64102b, 0xaf830034, -0x14400002, 0x641023, 0xaf820034, 0x8f840034, -0x34028000, 0x3c030800, 0x8c650834, 0x821021, -0x3421821, 0xaf830014, 0xaf440080, 0x10a00006, -0x2402000e, 0x93830033, 0x14620004, 0x3c021000, -0x2402043f, 0xa7420148, 0x3c021000, 0x3e00008, -0xaf420178, 0x3c038000, 0x8f420178, 0x431024, -0x1440fffd, 0x0, 0x8f820028, 0x30424000, -0x10400006, 0x24020800, 0x0, 0xd, -0x0, 0x2400034d, 0x24020800, 0xaf420178, -0x97440104, 0x3c030008, 0xaf430140, 0x8f820028, -0x30420001, 0x10400006, 0x3084ffff, 0x24020002, -0x2483fffe, 0xa7420146, 0xa0005a8, 0xa7430148, -0xa7400146, 0x8f85001c, 0x803021, 0x2402000d, -0xa742014a, 0x8f640000, 0x24a30008, 0x30631fff, -0x24624000, 0x342d821, 0x30c20007, 0xaf840000, -0xaf850010, 0xaf83001c, 0xaf430084, 0x10400002, -0x24c20007, 0x3046fff8, 0x8f820034, 0x8f840004, -0x461821, 0xaf820020, 0x64102b, 0xaf830034, -0x14400002, 0x641023, 0xaf820034, 0x8f840034, -0x34028000, 0x821021, 0x3421821, 0x3c021000, -0xaf830014, 0xaf440080, 0x3e00008, 0xaf420178, -0x27bdffe8, 0x3c046008, 0xafbf0014, 0xafb00010, -0x8c825000, 0x3c1a8000, 0x2403ff7f, 0x375b4000, -0x431024, 0x3442380c, 0xac825000, 0x8f430008, -0x3c100800, 0x37428000, 0x34630001, 0xaf430008, -0xaf820014, 0x3c02601c, 0xaf80001c, 0xaf400080, -0xaf400084, 0x8c450008, 0x3c036000, 0x8c620808, -0x3c040800, 0x3c030080, 0xac830820, 0x3042fff0, -0x38420010, 0x2c420001, 0xaf850004, 0xaf820008, -0xe0006e4, 0x0, 0x8f420000, 0x30420001, -0x1040fffb, 0x0, 0x8f430108, 0x8f440100, -0x30622000, 0xaf830028, 0xaf840018, 0x10400004, -0x8e02082c, 0x24420001, 0xa000654, 0xae02082c, -0x30620200, 0x14400003, 0x24020f00, 0x14820028, -0x24020d00, 0x97420104, 0x1040001c, 0x30624000, -0x14400005, 0x0, 0xe00022f, 0x0, -0xa000648, 0x0, 0x8f620008, 0x8f630000, -0x24020030, 0x31e02, 0x306300f0, 0x10620007, -0x28620031, 0x14400037, 0x24020040, 0x10620007, -0x0, 0xa000648, 0x0, 0xe00031e, -0x0, 0xa000648, 0x0, 0xe000432, -0x0, 0xa000648, 0x0, 0x30620040, -0x14400035, 0x3c024000, 0x0, 0xd, -0x0, 0x24000399, 0xa000655, 0x3c024000, -0x14820010, 0x30620006, 0x97420104, 0x10400005, -0x30620040, 0xe00058c, 0x0, 0xa000648, -0x0, 0x14400024, 0x3c024000, 0x0, -0xd, 0x0, 0x240003aa, 0xa000655, -0x3c024000, 0x10400014, 0x30621000, 0x1040000b, -0x0, 0x8f620000, 0x24030010, 0x21602, -0x304200f0, 0x10430005, 0x0, 0xe000721, -0x0, 0xa000648, 0x0, 0xe00050f, -0x0, 0x8f820030, 0x24420001, 0xaf820030, -0xa000655, 0x3c024000, 0x30620040, 0x14400006, -0x3c024000, 0x0, 0xd, 0x0, -0x240003c1, 0x3c024000, 0xaf420138, 0xa0005eb, -0x0, 0x3c046008, 0x8c835000, 0x3c1a8000, -0x2402ff7f, 0x375b4000, 0x621824, 0x3463380c, -0xac835000, 0x8f420008, 0x3c056000, 0x3c03601c, -0x34420001, 0xaf420008, 0x37428000, 0xaf80001c, -0xaf820014, 0xaf400080, 0xaf400084, 0x8c660008, -0x8ca20808, 0x3c040800, 0x3c030080, 0xac830820, -0x3042fff0, 0x38420010, 0x2c420001, 0xaf860004, -0xaf820008, 0x3e00008, 0x0, 0x3084ffff, -0x30820007, 0x10400002, 0x24820007, 0x3044fff8, -0x8f82001c, 0x441821, 0x30631fff, 0x24644000, -0x344d821, 0xaf820010, 0xaf83001c, 0x3e00008, -0xaf430084, 0x3084ffff, 0x30820007, 0x10400002, -0x24820007, 0x3044fff8, 0x8f820034, 0x8f830004, -0x442021, 0xaf820020, 0x83102b, 0xaf840034, -0x14400002, 0x831023, 0xaf820034, 0x8f820034, -0x34038000, 0x431821, 0x3432021, 0xaf840014, -0x3e00008, 0xaf420080, 0x8f830028, 0x24020002, -0x30630006, 0x1062000d, 0x2c620003, 0x50400005, -0x24020004, 0x10600012, 0x3c020001, 0xa0006b6, -0x0, 0x10620007, 0x24020006, 0x1462000f, -0x3c020111, 0xa0006ae, 0x821025, 0xa0006ad, -0x3c020101, 0x3c020011, 0x821025, 0x24030001, -0xaf421000, 0xaf830024, 0xa0006b6, 0x0, -0x821025, 0xaf421000, 0xaf800024, 0x0, -0x0, 0x0, 0x3e00008, 0x0, -0x8f820024, 0x10400005, 0x3c038000, 0x8f421000, -0x431024, 0x1040fffd, 0x0, 0x3e00008, -0x0, 0x8f820028, 0x27bdffe8, 0x30424000, -0x14400005, 0xafbf0010, 0xe00022f, 0x0, -0xa0006e2, 0x8fbf0010, 0x8f620008, 0x8f630000, -0x24020030, 0x31e02, 0x306300f0, 0x10620008, -0x28620031, 0x1440000d, 0x8fbf0010, 0x24020040, -0x10620007, 0x0, 0xa0006e2, 0x0, -0xe00031e, 0x0, 0xa0006e2, 0x8fbf0010, -0xe000432, 0x0, 0x8fbf0010, 0x3e00008, -0x27bd0018, 0x8f84002c, 0x10800010, 0x3c026000, -0x8c430c3c, 0x30630fff, 0xaf83000c, 0x14600013, -0x3082000f, 0x10400005, 0x308200f0, 0x10400003, -0x30820f00, 0x14400007, 0x0, 0x0, -0xd, 0x0, 0x240003dd, 0x3e00008, -0x0, 0x0, 0xd, 0x0, -0x240003e2, 0x3e00008, 0x0, 0xaf83002c, -0x3e00008, 0x0, 0x8ca20000, 0x463021, -0xaca60000, 0xc2302b, 0x10c00004, 0x0, -0x8c820000, 0x24420001, 0xac820000, 0x3e00008, -0x0, 0x10c00007, 0x0, 0x8ca20000, -0x24c6ffff, 0x24a50004, 0xac820000, 0x14c0fffb, -0x24840004, 0x3e00008, 0x0, 0xa00071d, -0xa01021, 0xac860000, 0x0, 0x0, -0x24840004, 0xa01021, 0x1440fffa, 0x24a5ffff, -0x3e00008, 0x0, 0x27bdffd8, 0xafbf0024, +0x0, 0x10, 0x136, 0xea60, +0x1, 0x0, 0x0, 0x0, +0x8, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x2, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x10000003, 0x0, +0xd, 0xd, 0x3c020800, 0x24424c60, +0x3c030800, 0x24634d54, 0xac400000, 0x43202b, +0x1480fffd, 0x24420004, 0x3c1d0800, 0x37bd9ffc, +0x3a0f021, 0x3c100800, 0x261000f8, 0x3c1c0800, +0x279c4c60, 0xe0002d0, 0x0, 0xd, +0x3c036010, 0x8c655000, 0x2402ff7f, 0x3c048000, +0xa22824, 0x34a5380c, 0x24020037, 0xac655000, +0xac820008, 0x24020c80, 0xac820024, 0x3c060800, +0x24c60884, 0x3c020800, 0x24424c98, 0x2405001b, +0x24a5ffff, 0xac460000, 0x4a1fffd, 0x24420004, +0x3c020800, 0x24420370, 0x3c010800, 0xac224ca0, +0x3c020800, 0x24420744, 0x3c030800, 0x24630a30, +0x3c040800, 0x24840a70, 0x3c050800, 0x24a53214, +0x3c010800, 0xac224ca4, 0x3c020800, 0x2442056c, +0x3c010800, 0xac264ce8, 0x3c010800, 0xac254cf4, +0x3c010800, 0xac234cfc, 0x3c010800, 0xac224d00, +0x3c010800, 0xac244d04, 0x3c010800, 0xac234c9c, +0x3c010800, 0xac204ca8, 0x3c010800, 0xac204cac, +0x3c010800, 0xac204cb0, 0x3c010800, 0xac204cb4, +0x3c010800, 0xac204cb8, 0x3c010800, 0xac204cbc, +0x3c010800, 0xac204cc0, 0x3c010800, 0xac244cc4, +0x3c010800, 0xac204cc8, 0x3c010800, 0xac204ccc, +0x3c010800, 0xac204cd0, 0x3c010800, 0xac204cd4, +0x3c010800, 0xac204cd8, 0x3c010800, 0xac264cdc, +0x3c010800, 0xac264ce0, 0x3c010800, 0xac264ce4, +0x3c010800, 0xac204cec, 0x3c010800, 0xac254cf0, +0x3c010800, 0xac234cf8, 0xa00057a, 0x0, +0x3c030800, 0x8c630020, 0x8f820004, 0x10430003, +0x0, 0xa000d8b, 0xaf830004, 0x3e00008, +0x0, 0x27bdffe8, 0x3c028000, 0xafb00010, +0xafbf0014, 0x34500100, 0x92020009, 0x1040001a, +0x24030001, 0x3c020800, 0x8c420020, 0x10400016, +0x1821, 0xe000dc5, 0x0, 0x96030008, +0x3c060800, 0x94c64d3a, 0x8e040018, 0x8f82002c, +0x9605000c, 0x31c00, 0x661825, 0xac440000, +0xac450004, 0x24040001, 0xac400008, 0xac40000c, +0xac400010, 0xac400014, 0xac400018, 0xe000dec, +0xac43001c, 0x1821, 0x8fbf0014, 0x8fb00010, +0x601021, 0x3e00008, 0x27bd0018, 0x27bdffe8, +0xafbf0010, 0x3c028000, 0x94420108, 0x30437000, +0x24022000, 0x1062000a, 0x28642001, 0x54800012, +0x8fbf0010, 0x24024000, 0x10620008, 0x24026000, +0x1062000a, 0x8fbf0010, 0xa0000f8, 0x1021, +0x8fbf0010, 0xa0000b6, 0x27bd0018, 0xe0004fa, +0x0, 0xa0000f7, 0x8fbf0010, 0xe000d26, +0x0, 0x8fbf0010, 0x1021, 0x3e00008, +0x27bd0018, 0x3c020800, 0x8c420020, 0x27bdffe8, +0x10400028, 0xafbf0010, 0xe000dc5, 0x0, +0x3c058000, 0x94a20108, 0x94a3010c, 0x8f86002c, +0x3042003e, 0x3063ffff, 0x21400, 0x431025, +0xacc20000, 0x8ca20100, 0x3c070800, 0x94e74d3a, +0x8fbf0010, 0xacc20004, 0x94a30116, 0x94a4010e, +0x3c022000, 0x31c00, 0x3084ffff, 0x641825, +0xacc30008, 0xe23825, 0x94a20110, 0x94a30112, +0x24040001, 0x21400, 0x3063ffff, 0x431025, +0xacc2000c, 0x94a20114, 0x27bd0018, 0x3042ffff, +0xacc20010, 0xacc00014, 0xacc00018, 0xa000dec, +0xacc7001c, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x3c020800, 0x8c420020, 0x27bdffe8, 0x1040002b, +0xafbf0010, 0xe000dc5, 0x0, 0x3c058000, +0x94a20108, 0x94a3010c, 0x8f86002c, 0x3042003e, +0x3063ffff, 0x21400, 0x431025, 0xacc20000, +0x8ca20100, 0x3c070800, 0x94e74d3a, 0x8fbf0010, +0xacc20004, 0x94a30116, 0x94a4010e, 0x3c022000, +0x31c00, 0x3084ffff, 0x641825, 0xacc30008, +0xe23825, 0x94a20110, 0x94a30112, 0x24040001, +0x21400, 0x3063ffff, 0x431025, 0xacc2000c, +0x94a20114, 0x27bd0018, 0x3042ffff, 0xacc20010, +0x8ca20118, 0xacc20014, 0x90a2010b, 0x304200ff, +0xacc20018, 0xa000dec, 0xacc7001c, 0x8fbf0010, +0x3e00008, 0x27bd0018, 0x27bdffe0, 0xafb00010, +0x3c108000, 0xafb10014, 0xafbf001c, 0xafb20018, +0x36110100, 0x9223000b, 0x2402001a, 0x96320008, +0x14620064, 0x2821, 0x32420001, 0x1040000f, +0x0, 0x8e220000, 0x21b40, 0x3c02003f, +0x3442ffff, 0x43102b, 0x10400003, 0x96240014, +0x3c020040, 0x621821, 0x3082ffff, 0x621025, +0xae020080, 0xa0001a8, 0x0, 0x3c020800, +0x8c420020, 0x10400028, 0x0, 0xe000dc5, +0x0, 0x96020108, 0x9603010c, 0x8f85002c, +0x3042003e, 0x3063ffff, 0x21400, 0x431025, +0xaca20000, 0x8e020100, 0x3c060800, 0x94c64d3a, +0xaca20004, 0x96030116, 0x9604010e, 0x3c022000, +0x31c00, 0x3084ffff, 0x641825, 0xaca30008, +0xc23025, 0x96020110, 0x96030112, 0x24040001, +0x21400, 0x3063ffff, 0x431025, 0xaca2000c, +0x96020114, 0x3042ffff, 0xaca20010, 0x8e020118, +0xaca20014, 0x9202010b, 0x304200ff, 0xaca20018, +0xe000dec, 0xaca6001c, 0x3c020800, 0x8c420040, +0x24420001, 0x3c010800, 0xac220040, 0x3c030800, +0x8c630044, 0x32420002, 0x32440004, 0x24630001, +0x3c010800, 0xac230044, 0x1080001a, 0x2282b, +0x3c068000, 0x8cc202b8, 0x4430008, 0x8e240020, +0x3c020800, 0x8c420060, 0x24420001, 0x3c010800, +0xac220060, 0xa0001ca, 0x24050001, 0x3c020800, +0x8c42005c, 0x96230016, 0x8e250004, 0x24420001, +0xacc40280, 0x2463fffc, 0x3c010800, 0xac22005c, +0x3c021000, 0xa4c30284, 0xacc50288, 0xacc202b8, +0x2821, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0xa01021, 0x3e00008, 0x27bd0020, +0x27bdffe0, 0x3c068000, 0xafb00010, 0xafbf0018, +0xafb10014, 0x34d00100, 0x9203000b, 0x24020003, +0x96110008, 0x1462003b, 0x2821, 0x32220001, +0x1040000f, 0x0, 0x8e020000, 0x21b40, +0x3c02003f, 0x3442ffff, 0x43102b, 0x10400003, +0x96040014, 0x3c020040, 0x621821, 0x3082ffff, +0x621025, 0xacc20080, 0xa0001f4, 0x0, +0xe0000fa, 0x0, 0x3c020800, 0x8c420040, +0x24420001, 0x3c010800, 0xac220040, 0x3c030800, +0x8c630044, 0x32220002, 0x32240004, 0x24630001, +0x3c010800, 0xac230044, 0x1080001a, 0x2282b, +0x3c068000, 0x8cc202b8, 0x4430008, 0x8e040020, +0x3c020800, 0x8c420060, 0x24420001, 0x3c010800, +0xac220060, 0xa000216, 0x24050001, 0x3c020800, +0x8c42005c, 0x96030016, 0x8e050004, 0x24420001, +0xacc40280, 0x2463fffc, 0x3c010800, 0xac22005c, +0x3c021000, 0xa4c30284, 0xacc50288, 0xacc202b8, +0x2821, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xa01021, 0x3e00008, 0x27bd0020, 0x3c028008, +0x34420080, 0x90420000, 0x3e00008, 0xaf800000, +0x3e00008, 0x1021, 0x27bdffe8, 0x3c028000, +0xafbf0014, 0xafb00010, 0x8c430100, 0xac430020, +0x8c430104, 0xac4300a8, 0x9050010b, 0xe00021c, +0x321000ff, 0x3c020800, 0x24424c98, 0x101880, +0x2e10001c, 0x16000005, 0x621021, 0xe000221, +0x401821, 0xa00023c, 0x0, 0x8c420000, +0x40f809, 0x0, 0x401821, 0x3c020800, +0x8c420034, 0x10600005, 0x24440001, 0x3c028000, +0x8c430104, 0x3c026020, 0xac430014, 0x8fbf0014, +0x8fb00010, 0x3c034000, 0x3c028000, 0x27bd0018, +0xac430138, 0x3c010800, 0xac240034, 0x3e00008, +0x0, 0x27bdffe8, 0xafbf0014, 0xafb00010, +0x3c108000, 0x8e020140, 0xe00021c, 0xae020020, +0xe000365, 0x0, 0x3c040800, 0x24840038, +0x8c820000, 0x3c034000, 0xae030178, 0x8fbf0014, +0x8fb00010, 0x24420001, 0x27bd0018, 0x3e00008, +0xac820000, 0x27bdffe8, 0xafb00010, 0xafbf0014, +0x3c108000, 0x8e020180, 0xe00021c, 0xae020020, +0x8e030180, 0x24020f00, 0x54620008, 0x3c028008, +0x8e020188, 0x3c0300e0, 0x3042ffff, 0x431025, +0xae020080, 0xa000281, 0x3c028000, 0x34420080, +0x90420000, 0x24030050, 0x304200ff, 0x14430008, +0x3c028000, 0xe00033f, 0x0, 0x14400004, +0x3c028000, 0xe000bb2, 0x0, 0x3c028000, +0x3c034000, 0xac4301b8, 0x3c020800, 0x8c42003c, +0x8fbf0014, 0x8fb00010, 0x24420001, 0x3c010800, +0xac22003c, 0x3e00008, 0x27bd0018, 0x3e00008, +0x1021, 0x3c048000, 0x8c830104, 0x8f82000c, +0x10430008, 0x0, 0x3c020800, 0x8c420084, +0x8c830104, 0x24420001, 0xaf83000c, 0x3c010800, +0xac220084, 0x3e00008, 0x0, 0x27bdffe8, +0x3c068000, 0xafbf0010, 0x34c40100, 0x94820008, +0x30430002, 0x30420004, 0x1040001c, 0x0, +0x8cc202b8, 0x4410008, 0x24070001, 0x3c020800, +0x8c420060, 0x24420001, 0x3c010800, 0xac220060, +0xa0002cd, 0x8fbf0010, 0x3c020800, 0x8c42005c, +0x94830016, 0x8c850004, 0x8c840020, 0x24420001, +0x3c010800, 0xac22005c, 0x2463fffc, 0x3c021000, +0x3821, 0xacc40280, 0xa4c30284, 0xacc50288, +0xacc202b8, 0xa0002cd, 0x8fbf0010, 0x10600008, +0x24070001, 0x3c020800, 0x8c420084, 0x24420001, +0x3c010800, 0xac220084, 0xa0002cd, 0x8fbf0010, +0xe00028e, 0x0, 0x3821, 0x8fbf0010, +0xe01021, 0x3e00008, 0x27bd0018, 0x27bdffe8, +0xafbf0014, 0xe000055, 0xafb00010, 0x3c028000, +0x34420070, 0x8c420000, 0xaf820010, 0xe0000ad, +0x0, 0x3c078000, 0x34e90070, 0x8d280000, +0x8f860010, 0x3c050800, 0x8ca500bc, 0x3c040800, +0x8c8400b8, 0x1063023, 0x1021, 0xa62821, +0x822021, 0xa6302b, 0x862021, 0x3c010800, +0xac2500bc, 0x3c010800, 0xac2400b8, 0x8cf00000, +0x32020007, 0x1040ffe9, 0xaf880010, 0x3c050800, +0x8ca500bc, 0x3c040800, 0x8c8400b8, 0x8d260000, +0x1021, 0x822021, 0xc83023, 0xa62821, +0xa6302b, 0x862021, 0x32070001, 0x3c010800, +0xac2500bc, 0x3c010800, 0xac2400b8, 0x10e00004, +0x32020002, 0xe000223, 0x0, 0x32020002, +0x10400004, 0x32020004, 0xe00024e, 0x0, +0x32020004, 0x5040ffca, 0x3c028000, 0xe000262, +0x0, 0xa0002d5, 0x3c028000, 0x3c029000, +0x34420001, 0x822025, 0x3c028000, 0xac440020, +0x3c038000, 0x8c620020, 0x440fffe, 0x0, +0x3e00008, 0x0, 0x3c028000, 0x34430001, +0x832025, 0x3e00008, 0xac440020, 0x27bdffe0, +0xafb10014, 0xafb00010, 0x808821, 0xafbf0018, +0xe000310, 0x30b000ff, 0x8f83ffbc, 0x2202021, +0x90620025, 0x2028025, 0xa0700025, 0x8c700018, +0x3c028000, 0xe00031b, 0x2028024, 0x1600000a, +0x8fbf0018, 0x3c038000, 0x8c6201f8, 0x440fffe, +0x24020002, 0xac7101c0, 0xa06201c4, 0x3c021000, +0xac6201f8, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffe8, 0xafbf0010, +0x3c038000, 0x94620184, 0x30420200, 0x10400005, +0x2021, 0xe001037, 0x0, 0xa000355, +0x24040001, 0x8c620188, 0x440000a, 0x8fbf0010, +0x8c620188, 0x3c03ff00, 0x431024, 0x3c030400, +0x14430004, 0x24040001, 0x8f82ffbc, 0x90420008, +0x8fbf0010, 0x801021, 0x3e00008, 0x27bd0018, +0x3c028000, 0x8c430140, 0xac430200, 0x3c031000, +0x3e00008, 0xac430238, 0x8f82ffc0, 0x24050001, +0xa040001a, 0x3c028000, 0xa000320, 0x8c440140, +0x27bdffe0, 0xafb10014, 0x8f91ffbc, 0xafbf001c, +0xafb20018, 0xafb00010, 0x92220000, 0x24030020, +0x304200ff, 0x1043000c, 0x3c028000, 0x92220000, +0x24030030, 0x304200ff, 0x10430007, 0x3c028000, +0x92220000, 0x24030050, 0x304200ff, 0x14430081, +0x8fbf001c, 0x3c028000, 0x90420148, 0x304200ff, +0x2443ffff, 0x2c620005, 0x1040007a, 0x8fbf001c, +0x31080, 0x3c030800, 0x24634c28, 0x431021, +0x8c420000, 0x400008, 0x0, 0x3c118000, +0x8e240140, 0xe000310, 0x8f92ffbc, 0x8e50000c, +0x8e220144, 0x16020002, 0x24020001, 0xae42000c, +0xe00031b, 0x8e240140, 0x8e220144, 0x14500006, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0xa000fa5, 0x27bd0020, 0x8e42000c, 0xa0003f3, +0x0, 0x96220010, 0x3c038000, 0x8c630144, +0x3042ffff, 0x14620009, 0x0, 0x24020001, +0xa6220010, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0xa000359, 0x27bd0020, 0x96220010, +0xa0003f3, 0x0, 0x92220000, 0x24030020, +0x304200ff, 0x1443000b, 0x3c128000, 0x96220012, +0x3c038000, 0x8c630144, 0x3042ffff, 0x14620018, +0x0, 0x24020001, 0xa6220012, 0xa0003cc, +0x8fbf001c, 0x8e440140, 0xe000310, 0x0, +0x96220012, 0x8e430144, 0x3050ffff, 0x16030002, +0x24020001, 0xa6220012, 0xe00031b, 0x8e440140, +0x8e420144, 0x16020006, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0xa00035f, 0x27bd0020, +0x96220012, 0xa0003f3, 0x0, 0x96220014, +0x3c038000, 0x8c630144, 0x3042ffff, 0x14620009, +0x0, 0x24020001, 0xa6220014, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xa0012bc, +0x27bd0020, 0x96220014, 0xa0003f3, 0x0, +0x96220016, 0x3c038000, 0x8c630144, 0x3042ffff, +0x14620008, 0x24020001, 0xa6220016, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xa0009e9, +0x27bd0020, 0x96220016, 0x14400006, 0x8fbf001c, +0x3c020800, 0x8c420070, 0x24420001, 0x3c010800, +0xac220070, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x27bdffe8, 0x3c028000, +0xafb00010, 0x34500100, 0x3c020800, 0x8c420020, +0x1040001a, 0xafbf0014, 0xe000dc5, 0x0, +0x96040008, 0x9603000c, 0x9605000e, 0x3c060800, +0x94c64d3a, 0x8f82002c, 0x31c00, 0x42400, +0x862025, 0x651825, 0xac400000, 0x8fbf0014, +0xac400004, 0x8fb00010, 0xac400008, 0x27bd0018, +0xac40000c, 0xac430010, 0xac400014, 0xac400018, +0xac44001c, 0xa000dec, 0x24040001, 0x8fbf0014, +0x8fb00010, 0x3e00008, 0x27bd0018, 0x27bdffe8, +0x3c028000, 0xafb00010, 0x34500100, 0x3c020800, +0x8c420020, 0x1040001c, 0xafbf0014, 0xe000dc5, +0x0, 0x8e020004, 0x8f83002c, 0x9604000c, +0x3c050800, 0x94a54d3a, 0xac620000, 0x3c028008, +0x9442002c, 0x42400, 0x8fbf0014, 0x3042ffff, +0x822025, 0x3c02400e, 0xa22825, 0xac640004, +0x8fb00010, 0xac600008, 0x24040001, 0xac60000c, +0x27bd0018, 0xac600010, 0xac600014, 0xac600018, +0xa000dec, 0xac65001c, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x27bdffd8, 0xafbf0024, 0xafb40020, 0xafb3001c, 0xafb20018, 0xafb10014, -0xafb00010, 0x8f620000, 0x3c048000, 0x97430104, -0x21542, 0x30520078, 0x8f620000, 0x36450002, -0x3070ffff, 0x3051ffff, 0x8f420178, 0x441024, -0x1440fffd, 0x32230007, 0x2624fffe, 0x24020008, -0x431023, 0x30420007, 0x80a021, 0xa7450140, -0xa7440144, 0xa7420142, 0xa7400146, 0x12000004, -0x2602fffc, 0xa7420148, 0xa000749, 0x0, -0x2622fffa, 0xa7420144, 0xa7400148, 0x8f620000, -0x2442fffc, 0xaf620000, 0x8f420108, 0x30420020, -0x2102b, 0x21023, 0x30420009, 0x34420001, -0xa742014a, 0x8f630004, 0x3652021, 0x8f620000, -0x3063ffff, 0x839821, 0x21602, 0x304400f0, -0x24030050, 0x10830008, 0x24020060, 0x14820026, -0x3c040800, 0x8f820014, 0x8f640008, 0x3203fffc, -0x621821, 0xac64fff8, 0x8f820028, 0x3c033000, -0xaf431000, 0x3c030211, 0xaf401000, 0xaf431000, -0x30420006, 0x1040002a, 0x3c038000, 0x8f421000, -0x431024, 0x1040fffd, 0x0, 0x97441014, -0x8f451020, 0x8f461020, 0x52c02, 0xe00079b, -0x30c6ffff, 0x16000006, 0xa6620000, 0x8f431020, -0x3721021, 0x511021, 0xa000780, 0xac43fffc, -0x8f820014, 0x8f441020, 0x3203fffc, 0x621821, -0xac64fffc, 0x3c040800, 0x24840844, 0x3c050800, -0x24a50840, 0x3c021000, 0xa7500148, 0xa7540144, -0xaf420178, 0x8f630000, 0x2606fffe, 0x2263021, -0xaf830000, 0xe000701, 0x0, 0x2512021, -0xe000676, 0x3084ffff, 0xe000684, 0x2002021, +0xafb00010, 0xe000310, 0x809021, 0x8f94ffc0, +0x8f91ffbc, 0x3c108000, 0xa680000c, 0x8e22001c, +0x2402021, 0x36130100, 0xe00031b, 0xae22006c, +0x8e040100, 0xe000320, 0x24050001, 0x3c020800, +0x8c420020, 0x1040001e, 0x8fbf0024, 0xe000dc5, +0x0, 0x9662000c, 0x8f83002c, 0x3c050800, +0x94a54d3a, 0x21400, 0xac720000, 0xac620004, +0xac600008, 0x8e240038, 0x3c02401f, 0xa22825, +0xac64000c, 0x8e22003c, 0x8fbf0024, 0x8fb3001c, +0xac620010, 0x8e820004, 0x8fb20018, 0x8fb40020, +0xac620014, 0x8fb10014, 0xac600018, 0x8fb00010, +0x24040001, 0xac65001c, 0xa000dec, 0x27bd0028, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x27bdffe8, +0x3c028000, 0xafb00010, 0x34500100, 0x3c020800, +0x8c420020, 0x1040001e, 0xafbf0014, 0xe000dc5, +0x0, 0x8e020000, 0x8f83002c, 0x96060008, +0x9605000c, 0xac620000, 0x8e020004, 0x3c040800, +0x94844d3a, 0x52c00, 0xac620004, 0x8e020018, +0x63400, 0xc43025, 0xac620008, 0x8e02001c, +0x8fbf0014, 0x24040001, 0xac62000c, 0x9202000a, +0x8fb00010, 0x27bd0018, 0xa22825, 0xac650010, +0xac600014, 0xac600018, 0xa000dec, 0xac66001c, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x8f82ffbc, 0x24030020, 0x90420000, 0x304200ff, +0x10430003, 0x0, 0xa0010a0, 0x0, +0x3e00008, 0x0, 0x27bdffe0, 0x3c028000, +0xafb10014, 0xafb00010, 0xafbf0018, 0x34500100, +0x9602000c, 0x1040001f, 0x808821, 0x3c020800, +0x8c420020, 0x1040002f, 0x8fbf0018, 0xe000dc5, +0x0, 0x9602000c, 0x8e040000, 0x8f83002c, +0x21400, 0x3c050800, 0x94a54d3a, 0xac640000, +0xac620004, 0x8e040018, 0x3c02400b, 0xa22825, +0xac640008, 0x8e02001c, 0x8fbf0018, 0x8fb10014, +0xac62000c, 0x8fb00010, 0xac600010, 0x24040001, +0xac600014, 0x27bd0020, 0xac600018, 0xa000dec, +0xac65001c, 0x8f90ffbc, 0x92020005, 0x30420010, +0x1440000e, 0x0, 0xe000310, 0x0, +0x92020005, 0x2202021, 0x34420010, 0xe00031b, +0xa2020005, 0x2202021, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0xa0004b1, 0x27bd0020, 0xd, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x27bdffe8, 0xafbf0010, 0x3c058000, +0x8ca40100, 0x94a20108, 0x304300ff, 0x2402001f, +0x1062003f, 0x28620020, 0x10400019, 0x24020038, +0x2862000a, 0x1040000d, 0x2402000b, 0x28620008, +0x5040002d, 0x8fbf0010, 0x460005f, 0x28620002, +0x14400029, 0x8fbf0010, 0x24020006, 0x10620026, +0x0, 0xa00056c, 0x0, 0x10620027, +0x2862000b, 0x14400055, 0x8fbf0010, 0x2402000e, +0x10620025, 0x0, 0xa00056c, 0x0, +0x1062003f, 0x28620039, 0x1040000a, 0x24020080, +0x24020036, 0x10620045, 0x28620037, 0x10400035, +0x24020035, 0x1062003d, 0x8fbf0010, 0xa00056c, +0x0, 0x1062000e, 0x28620081, 0x10400006, +0x240200c8, 0x24020039, 0x10620032, 0x8fbf0010, +0xa00056c, 0x0, 0x10620010, 0x8fbf0010, +0xa00056c, 0x0, 0xa000488, 0x27bd0018, +0x8fbf0010, 0xa0003ff, 0x27bd0018, 0x8fbf0010, +0xa0004bb, 0x27bd0018, 0xa000424, 0x27bd0018, +0x8fbf0010, 0xa00044b, 0x27bd0018, 0x8f82ffbc, +0x24030020, 0x90420000, 0x304200ff, 0x10430023, +0x8fbf0010, 0xe000f8b, 0x0, 0x1040001f, +0x8fbf0010, 0x3c038000, 0x8c6201f8, 0x440fffe, +0x0, 0x8c620100, 0xac6201c0, 0x24020002, +0xa06201c4, 0x3c021000, 0xac6201f8, 0xa00056c, +0x8fbf0010, 0x8fbf0010, 0xa000ed4, 0x27bd0018, +0x34a20100, 0x9445000c, 0x8fbf0010, 0xa000ef9, +0x27bd0018, 0xa000f24, 0x27bd0018, 0x34a20100, +0x9045000d, 0xa000f75, 0x27bd0018, 0x8fbf0010, +0xa000f4c, 0x27bd0018, 0x8fbf0010, 0x3e00008, +0x27bd0018, 0x3c038000, 0x8c620278, 0x440fffe, +0x24020002, 0xac640240, 0xa0620244, 0x3c021000, +0x3e00008, 0xac620278, 0x411c0, 0x3e00008, +0x24420240, 0xa3800018, 0x3e00008, 0xa3800019, +0x3c038000, 0x8c620278, 0x440fffe, 0x8f82001c, +0xac620240, 0x24020002, 0xa0620244, 0x3c021000, +0x3e00008, 0xac620278, 0x3e00008, 0x0, +0x90830030, 0x24020005, 0x802821, 0x3063003f, +0x5021, 0x14620005, 0x5821, 0x9082004c, +0x9483004e, 0x304a00ff, 0x306bffff, 0xaca0000c, +0xaca00010, 0xaca00024, 0x8ca9001c, 0x8ca80018, +0x94a20014, 0x3042ffff, 0x4a1023, 0x21100, +0x237c3, 0x122202b, 0x1221823, 0x1061023, +0x441023, 0xaca3001c, 0xaca20018, 0xa4aa0014, +0xa4aa0020, 0xa4ab0016, 0x3e00008, 0xa4ab0022, +0x3e00008, 0x0, 0x3c048008, 0x34840080, +0x8c830018, 0x3c027fff, 0x3442ffff, 0x621824, +0x3c020800, 0x8c4200b4, 0xac830018, 0x3c038000, +0x24420001, 0x3c010800, 0xac2200b4, 0x8c6201f8, +0x440fffe, 0x8f82001c, 0xac6201c0, 0x24020002, +0xa06201c4, 0x3c021000, 0x3e00008, 0xac6201f8, +0x27bdffd8, 0xafb20018, 0x3c128008, 0xafb40020, +0xafb3001c, 0xafb10014, 0xafbf0024, 0xafb00010, +0x36510100, 0x9222000c, 0x3c140800, 0x929400f7, +0x304300ff, 0x24020001, 0x10620031, 0x809821, +0x24020002, 0x14620034, 0x36500080, 0xe001296, +0x0, 0x9204004c, 0xe000577, 0x3084007f, +0x2621021, 0x2403ff80, 0x431824, 0x3c048000, +0xac830094, 0x92450008, 0x9204004c, 0x3042007f, +0x3c038006, 0x14850007, 0x438021, 0x2402ffff, +0xa2220011, 0x2402ffff, 0xa6220012, 0xa0005ef, +0x2402ffff, 0x96020020, 0xa2220011, 0x96020022, +0xa6220012, 0x8e020024, 0x3c048008, 0xae220014, +0x34850080, 0x90a2004c, 0x34830100, 0xa0620010, +0x8ca2003c, 0xac620018, 0x8c820068, 0xac6200e4, +0x8c820064, 0xac6200e0, 0x8c82006c, 0xac6200e8, +0x24020001, 0xa0a20068, 0xa00060b, 0x3c048008, +0xe0012af, 0x0, 0x36420080, 0xa0400068, +0xa00060b, 0x3c048008, 0xa2000068, 0xa2000069, +0xa000647, 0x3c028008, 0x34830080, 0x8c620038, +0x34850100, 0xac62006c, 0x24020001, 0xa0620069, +0x90a200c5, 0x90830008, 0x305100ff, 0x3072007f, +0x1232001b, 0x3c088008, 0xe000577, 0x2202021, +0x2621021, 0x2403ff80, 0x431824, 0x3c048000, +0xac830094, 0x3042007f, 0x3c038006, 0x438021, +0x8e02000c, 0x1040000d, 0x2002021, 0xe000589, +0x0, 0x26220001, 0x305100ff, 0x9203003c, +0x2341026, 0x2102b, 0x21023, 0x3063007f, +0x2228824, 0xa000615, 0xa203003c, 0x3c088008, +0x35040100, 0x8c8200d0, 0x35070080, 0xace2003c, +0x8c8200d0, 0xad020000, 0x90e5004c, 0x908600c5, +0x90e3004c, 0x908400c5, 0x2402ff80, 0xa22824, +0x3063007f, 0x308400ff, 0xa62825, 0x64182a, +0x10600002, 0x30a500ff, 0x38a50080, 0xa0e5004c, +0xa1050009, 0x3c028008, 0x9043000e, 0x34440080, +0x3c058000, 0xa043000a, 0x8c830018, 0x3c027fff, +0x3442ffff, 0x621824, 0xac830018, 0x8ca201f8, +0x440fffe, 0x0, 0xacb301c0, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x24020002, 0xa0a201c4, 0x27bd0028, +0x3c021000, 0x3e00008, 0xaca201f8, 0x90a20000, +0x27bdffe0, 0xafb20018, 0x24420001, 0xa0a20000, +0x3c030800, 0x8c6300f4, 0x304200ff, 0xafb10014, +0xafbf001c, 0xafb00010, 0xa08821, 0x14430002, +0x809021, 0xa0a00000, 0xe000577, 0x92240000, +0x8f90001c, 0x2403ff80, 0x2021021, 0x431024, +0x3c038000, 0xac620024, 0xe000577, 0x92240000, +0x2028021, 0x3210007f, 0x3c02800a, 0x2028021, +0xae500000, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0x94820006, +0x90830005, 0x8c85000c, 0x8c860010, 0x8c870018, +0x8c88001c, 0x8c840020, 0x3c010800, 0xa4224d0e, +0x3c010800, 0xa0234d0d, 0x3c010800, 0xac254d14, +0x3c010800, 0xac264d18, 0x3c010800, 0xac274d20, +0x3c010800, 0xac284d24, 0x3c010800, 0xac244d28, +0x3e00008, 0x0, 0x3c028008, 0x34420100, +0x8c440034, 0x3c038000, 0x34650400, 0xac640038, +0x8c420038, 0xaf850030, 0xac62003c, 0x3c020005, +0xac620030, 0x0, 0x0, 0x3e00008, +0x0, 0x3c020006, 0x308400ff, 0x822025, +0x3c028000, 0xac440030, 0x0, 0x0, +0x0, 0x3c038000, 0x8c620000, 0x30420010, +0x1040fffd, 0x34620400, 0x3e00008, 0xaf820030, +0x94c20000, 0x3c080800, 0x950800ca, 0x30e7ffff, +0x804821, 0x1021021, 0xa4c20000, 0x94c20000, +0x3042ffff, 0xe2102b, 0x54400001, 0xa4c70000, +0x94a20000, 0x3c030800, 0x8c6300cc, 0x24420001, +0xa4a20000, 0x94a20000, 0x3042ffff, 0x14430007, +0x3c028008, 0x107102b, 0xa4a00000, 0x54400001, +0x1003821, 0xa4c70000, 0x3c028008, 0x34460100, +0x8cc30028, 0x94a20000, 0x3c048000, 0x3042fffe, +0x210c0, 0x621021, 0xac82003c, 0x8c82003c, +0x621823, 0x18600004, 0x0, 0x8cc20024, +0xa0006e4, 0x24420001, 0x8cc20024, 0xac820038, +0x3c020050, 0x34420010, 0x3c038000, 0xac620030, +0x0, 0x0, 0x0, 0x8c620000, +0x30420020, 0x1040fffd, 0x0, 0x94a20000, +0x3c048000, 0x30420001, 0x210c0, 0x441021, +0x8c430400, 0xad230000, 0x8c420404, 0xad220004, +0x3c020020, 0x3e00008, 0xac820030, 0x27bdffe0, +0xafb20018, 0xafb10014, 0xafb00010, 0xafbf001c, +0x94c20000, 0xc08021, 0x3c120800, 0x965200c6, +0x24420001, 0xa6020000, 0x96030000, 0x94e20000, +0xe03021, 0x14430005, 0x8fb10030, 0xe0006b9, +0x2403821, 0xa00071b, 0x0, 0x8c830004, +0x8c820004, 0x24420040, 0x4610007, 0xac820004, +0x8c820004, 0x4400004, 0x0, 0x8c820000, +0x24420001, 0xac820000, 0x96020000, 0x3042ffff, +0x50520001, 0xa6000000, 0x96220000, 0x24420001, +0xa6220000, 0x3c028008, 0x34420100, 0x96230000, +0x9442003c, 0x14430004, 0x8fbf001c, 0x24020001, +0xa6220000, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe0, +0x3c028008, 0xafbf0018, 0x34420100, 0x8c480034, +0x3c038000, 0x34690400, 0xac680038, 0x8c420038, +0x30e700ff, 0xaf890030, 0xac62003c, 0x3c020005, +0xac620030, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x8c82000c, +0x8c82000c, 0x97830016, 0xad220000, 0x8c820010, +0x604021, 0xad220004, 0x8c820018, 0xad220008, +0x8c82001c, 0xad22000c, 0x8ca20014, 0xad220010, +0x8c820020, 0xad220014, 0x90820005, 0x304200ff, +0x21200, 0xad220018, 0x8ca20018, 0xad22001c, +0x8ca2000c, 0xad220020, 0x8ca20010, 0xad220024, +0x8ca2001c, 0xad220028, 0x8ca20020, 0xad22002c, +0x3402ffff, 0xad260030, 0xad200034, 0x50620001, +0x3408ffff, 0xad280038, 0x50e00011, 0x3c028008, +0x3c048008, 0x34840100, 0x94820050, 0x3042ffff, +0xad22003c, 0x94830044, 0x94850044, 0x24020001, +0x3063ffff, 0x318c2, 0x641821, 0x90640054, +0x30a50007, 0xa21004, 0xa000786, 0x441025, +0x34420100, 0xad20003c, 0x94430044, 0x94440044, +0x3063ffff, 0x318c2, 0x621821, 0x30840007, +0x90650054, 0x24020001, 0x821004, 0x21027, +0x451024, 0xa0620054, 0x0, 0x0, +0x0, 0x3c020006, 0x34420040, 0x3c038000, +0xac620030, 0x0, 0x0, 0x0, +0x8c620000, 0x30420010, 0x1040fffd, 0x3c068008, +0x34c20150, 0x34630400, 0x34c7014a, 0x34c40134, +0x34c50140, 0x34c60144, 0xafa20010, 0xe0006fc, +0xaf830030, 0x8fbf0018, 0x3e00008, 0x27bd0020, +0x8f830014, 0x3c050800, 0x8ca500e8, 0x8f82001c, +0x30633fff, 0x31980, 0x451021, 0x431021, +0x2403ff80, 0x431824, 0x3c058000, 0xaca30028, +0x3042007f, 0x3c03800c, 0x433021, 0x90c2000d, +0x3821, 0x34420010, 0xa0c2000d, 0x8f890014, +0x3c028008, 0x34420100, 0x94430044, 0x91382, +0x30480003, 0x24020001, 0xa4c3000e, 0x1102000b, +0x29020002, 0x10400005, 0x24020002, 0x1100000c, +0x24030001, 0xa0007cd, 0x1821, 0x11020006, +0x0, 0xa0007cd, 0x1821, 0x8cc2002c, +0xa0007cd, 0x24430001, 0x8cc20014, 0x24430001, +0x8cc20018, 0x43102b, 0x14400003, 0x3c038008, +0xa0007d7, 0x24070001, 0x34630100, 0x9462004c, +0x24420001, 0xa462004c, 0x91382, 0x30430003, +0x2c620002, 0x10400009, 0x802821, 0x14600004, +0x0, 0x94c20034, 0xa0007e7, 0x3046ffff, +0x8cc60038, 0xa0007e7, 0x802821, 0x3021, +0x3c040800, 0x24844d08, 0xa000730, 0x0, +0x3c028000, 0x34490100, 0x8d22000c, 0x95230006, +0x21602, 0x3063ffff, 0x3044003f, 0x24020027, +0x1082000f, 0xaf830014, 0x28820028, 0x10400008, +0x24020031, 0x24020021, 0x10820009, 0x24020025, +0x10820007, 0x93820019, 0xa00080e, 0x0, +0x10820005, 0x93820019, 0xa00080e, 0x0, +0xa0007a1, 0x1202021, 0x3c038000, 0x8c620278, +0x440fffe, 0x8f82001c, 0xac620240, 0x24020002, +0xa0620244, 0x3c021000, 0xac620278, 0x3e00008, +0x0, 0x95230006, 0x91240005, 0x8d25000c, +0x8d260010, 0x8d270018, 0x8d28001c, 0x8d290020, +0x24420001, 0x3c010800, 0xa4234d0e, 0x3c010800, +0xa0244d0d, 0x3c010800, 0xac254d14, 0x3c010800, +0xac264d18, 0x3c010800, 0xac274d20, 0x3c010800, +0xac284d24, 0x3c010800, 0xac294d28, 0x3e00008, +0xa3820019, 0x3c020800, 0x8c4200d0, 0x27bdffc0, +0xafb00028, 0x30b0ffff, 0x501007, 0x3c038008, +0xafb30034, 0xafb20030, 0xafb1002c, 0xafbf0038, +0xa7a20010, 0x34650100, 0x94a3003e, 0x3047ffff, +0xc09821, 0x3063ffff, 0x3c110800, 0x963100c6, +0x14e30007, 0x3092ffff, 0x8ca20030, 0x3c038000, +0x24420030, 0xac62003c, 0xa00084a, 0x8ca2002c, +0x94a20040, 0x3042ffff, 0x14e20009, 0x27a40018, +0x8ca20038, 0x3c038000, 0x24420030, 0xac62003c, +0x8ca20034, 0xac620038, 0xa000859, 0x3c038000, +0x27a50010, 0x27a60020, 0x2203821, 0xe0006b9, +0xa7a00020, 0x8fa30018, 0x3c028000, 0x24630030, +0xac430038, 0x8fa3001c, 0xac43003c, 0x3c038000, +0x3c020005, 0xac620030, 0x3c028008, 0x34440100, +0x94820042, 0x34630400, 0x3042ffff, 0x202102b, +0x14400007, 0xaf830030, 0x9482004e, 0x94830042, +0x2021021, 0x431023, 0xa00086f, 0x3043ffff, +0x9483004e, 0x94820042, 0x2231821, 0x501023, +0x621823, 0x3063ffff, 0x3c028008, 0x34440100, +0x9482003c, 0x3042ffff, 0x14430003, 0x0, +0xa00087f, 0x24030001, 0x9482003c, 0x3042ffff, +0x62102b, 0x14400005, 0x8f820030, 0x9482003c, +0x621023, 0x3043ffff, 0x8f820030, 0xac530000, +0xac400004, 0xac520008, 0xac43000c, 0x3c020006, +0x34420010, 0x3c038000, 0xac620030, 0x0, +0x0, 0x0, 0x8c620000, 0x30420010, +0x1040fffd, 0x3c028008, 0x1018c2, 0x34420100, +0x621821, 0x90650054, 0x32040007, 0x24020001, +0x8fbf0038, 0x8fb30034, 0x8fb20030, 0x8fb1002c, +0x8fb00028, 0x821004, 0x451025, 0x27bd0040, +0x3e00008, 0xa0620054, 0x27bdffa8, 0xafb60050, +0xafb5004c, 0xafb40048, 0xafb30044, 0xafb20040, +0xafb1003c, 0xafbf0054, 0xafb00038, 0x8c900000, +0x80b021, 0x3c020800, 0x8c4200e8, 0x96040032, +0x8f83001c, 0x2414ff80, 0x30843fff, 0x621821, +0x42180, 0x641821, 0x741024, 0x3c138000, +0xa09021, 0x90a50000, 0xae620028, 0x92040032, +0x3c02800c, 0x3063007f, 0x628821, 0x308400c0, +0x24020040, 0x1482002d, 0xa821, 0x8e350038, +0x8e220018, 0x14400002, 0x24020001, 0xae220018, +0x9202003c, 0x30420020, 0x1440000f, 0x0, +0xe000577, 0xa02021, 0x8f83001c, 0x621821, +0x30640078, 0x3c020080, 0x822025, 0x741824, +0xae630800, 0xae640810, 0x8e220018, 0x8e030008, +0x431021, 0xae220018, 0x8e22002c, 0x8e230018, +0x24420001, 0x62182b, 0x1060003d, 0x0, +0x92420000, 0x24420001, 0xa2420000, 0x3c030800, +0x8c6300f4, 0x304200ff, 0x50430001, 0xa2400000, +0xe000577, 0x92440000, 0x8f90001c, 0x2021021, +0x541024, 0xa00093f, 0xae620024, 0x92030032, +0x2402ffc0, 0x431024, 0x304200ff, 0x14400005, +0x24020001, 0xae220018, 0x96220034, 0xa000919, +0x3055ffff, 0x8e220014, 0x24420001, 0xae220018, +0x92020030, 0x21600, 0x21603, 0x441001c, +0x0, 0x96020032, 0x27a40010, 0x802821, +0xa7a20016, 0x96020032, 0x3021, 0x24070001, +0x3042ffff, 0xaf820014, 0xe000730, 0xafa0001c, +0x96020032, 0x8f83001c, 0x3c040800, 0x8c8400e8, +0x30423fff, 0x21180, 0x641821, 0x621821, +0x741024, 0xae62002c, 0x3063007f, 0x3c02800e, +0x621821, 0x9062000d, 0x3042007f, 0xa062000d, +0x9222000d, 0x30420010, 0x50400014, 0x92420000, +0x3c108008, 0x36100100, 0x9602004c, 0x8ec30000, +0x2a03021, 0x2442ffff, 0xa602004c, 0x94640032, +0x9625000e, 0x3084ffff, 0xe000826, 0x30a5ffff, +0x96030042, 0x9622000e, 0x54430004, 0x92420000, +0x24020001, 0xa3820018, 0x92420000, 0x24420001, +0xa2420000, 0x3c030800, 0x8c6300f4, 0x304200ff, +0x50430001, 0xa2400000, 0xe000577, 0x92440000, +0x8f90001c, 0x2403ff80, 0x2021021, 0x431024, +0x3c038000, 0xac620024, 0xe000577, 0x92440000, +0x2028021, 0x3210007f, 0x3c02800a, 0x2028021, +0xaed00000, 0x8fbf0054, 0x8fb60050, 0x8fb5004c, +0x8fb40048, 0x8fb30044, 0x8fb20040, 0x8fb1003c, +0x8fb00038, 0x3e00008, 0x27bd0058, 0x27bdffc8, +0x3c028008, 0xafb5002c, 0xafb20020, 0xafbf0030, +0xafb40028, 0xafb30024, 0xafb1001c, 0xafb00018, +0x34450100, 0x90470008, 0x90a600c5, 0x8f84001c, +0x2403ff80, 0x30c200ff, 0x211c0, 0x821021, +0x24420240, 0xa3a60010, 0x431024, 0x3c038000, +0x8cb300d0, 0x8cb400d4, 0xac620024, 0x24840040, +0x93a30010, 0x3084007f, 0x3c02800a, 0x822021, +0x30f2007f, 0xafa40014, 0x10720033, 0xa821, +0x8fa30014, 0x27a40014, 0x27a50010, 0x8c620034, +0x2628021, 0x2901023, 0x440002b, 0x2411ff80, +0x9062003c, 0x2221024, 0x304200ff, 0x1440001b, +0x2009821, 0x9062003c, 0x34420040, 0xa062003c, +0x93a20010, 0x24420001, 0x304300ff, 0xa3a20010, +0x3c020800, 0x8c4200f4, 0x50620001, 0xa3a00010, +0xe000577, 0x93a40010, 0x8f90001c, 0x3c038000, +0x2021021, 0x511024, 0xac620024, 0xe000577, +0x93a40010, 0x2028021, 0x3210007f, 0x3c02800a, +0x2028021, 0xa0009a0, 0xafb00014, 0xe00089f, +0x0, 0x3c028008, 0x34420100, 0xac5000d0, +0x93a30010, 0x24150001, 0xa04300c5, 0x93a20010, +0x1452ffd0, 0x8fa30014, 0x24020001, 0x16a2000b, +0x8fbf0030, 0x3c038000, 0x8c620278, 0x440fffe, +0x8f82001c, 0xac620240, 0x24020002, 0xa0620244, +0x3c021000, 0xac620278, 0x8fbf0030, 0x8fb5002c, +0x8fb40028, 0x8fb30024, 0x8fb20020, 0x8fb1001c, +0x8fb00018, 0x3e00008, 0x27bd0038, 0x27bdffd8, +0xafb3001c, 0xafb20018, 0xafb10014, 0xafb00010, +0xafbf0020, 0x809821, 0xe08021, 0x30b1ffff, +0xe000dc5, 0x30d200ff, 0x0, 0x0, +0x0, 0x8f82002c, 0xac510000, 0xac520004, +0xac530008, 0xac40000c, 0xac400010, 0xac400014, +0xac400018, 0x3c030800, 0x94634d3a, 0x2038025, +0xac50001c, 0x0, 0x0, 0x0, +0x24040001, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0xa000dec, 0x27bd0028, +0x30a5ffff, 0x30c600ff, 0x24030c80, 0x3c028000, +0xac430024, 0x0, 0x0, 0x0, +0x0, 0x0, 0xa0009b8, 0x0, +0x27bdffe8, 0x3c028008, 0xafb00010, 0xafbf0014, +0x34450100, 0x3c108000, 0x8e020140, 0x94a3000e, +0x3021, 0x402021, 0xaf82001c, 0x3063ffff, +0x3402ffff, 0x10620006, 0x3c076020, 0x2402ffff, +0xa4a2000e, 0x94a500da, 0xe0009dd, 0x30a5ffff, +0x24020c80, 0xae020024, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x3c028008, 0x34430100, +0x9462000e, 0x3c080800, 0x950800c6, 0x3046ffff, +0x14c00004, 0x3402ffff, 0x946500da, 0xa000a28, +0x8f84001c, 0x10c20027, 0x0, 0x9462004e, +0x9464003c, 0x3045ffff, 0xa61023, 0xa6182b, +0x3087ffff, 0x10600004, 0x3044ffff, 0xc51023, +0xe21023, 0x3044ffff, 0x88102b, 0x1040000e, +0xe81023, 0x3c028008, 0x34440100, 0x24030001, +0x34420080, 0xa4430016, 0x2402ffff, 0xa482000e, +0x948500da, 0x8f84001c, 0x3021, 0x30a5ffff, +0xa0009dd, 0x3c076020, 0x44102a, 0x10400009, +0x3c028008, 0x34430080, 0x94620016, 0x30420001, +0x10400004, 0x3c028000, 0x9442007e, 0x24420014, +0xa4620016, 0x3e00008, 0x0, 0x27bdffe0, +0x3c028008, 0xafbf001c, 0xafb00018, 0x34420100, +0x94430042, 0x9442004c, 0x10400019, 0x3068ffff, +0x93830018, 0x24020001, 0x14620029, 0x8fbf001c, +0x3c068008, 0x34d00100, 0x810c2, 0x501021, +0x90420054, 0x31030007, 0x34c70148, 0x304200ff, +0x621007, 0x30420001, 0x34c9014e, 0x34c4012c, +0x34c5013e, 0x10400016, 0x34c60142, 0xe0006fc, +0xafa90010, 0x96020042, 0xa000a45, 0x3048ffff, +0x3c028008, 0x34440100, 0x94830044, 0x94820042, +0x1043000f, 0x8fbf001c, 0x94820044, 0xa4820042, +0x94820050, 0xa482004e, 0x8c820038, 0xac820030, +0x94820040, 0xa482003e, 0x9482004a, 0xa4820048, +0x8fbf001c, 0x8fb00018, 0xa000a03, 0x27bd0020, +0x8fb00018, 0x3e00008, 0x27bd0020, 0x3c030800, +0x90634d14, 0x27bdffe8, 0x3c028000, 0x3068003f, +0xafbf0010, 0x8c450100, 0x3c0a0800, 0x954a4d0e, +0x39030032, 0x3902003f, 0x2c630001, 0x2c420001, +0x621825, 0xaf85001c, 0x804821, 0x802821, +0x3021, 0x24070001, 0xaf8a0014, 0x3c040800, +0x24844d08, 0x14600006, 0xa3800019, 0x24020020, +0x1502000e, 0x3402ffff, 0x1542000c, 0x0, +0x24020020, 0x15020005, 0x0, 0x8d230014, +0x2402ffff, 0x10620007, 0x0, 0xe000730, +0x0, 0xa000a9a, 0x0, 0xe0007a1, +0x1202021, 0xe000a38, 0x0, 0x8fbf0010, +0x24030c80, 0x3c028000, 0x27bd0018, 0x3e00008, +0xac430024, 0x27bdffb0, 0xafb00038, 0x3c108008, +0x36050110, 0xafb30044, 0x24060003, 0x809821, +0x27a40010, 0xafbf0048, 0xafb20040, 0xe000e74, +0xafb1003c, 0x27a40020, 0x360501e0, 0xe000e74, +0x24060003, 0x8fa20020, 0x36030100, 0xae020064, +0x8fa20024, 0xae020068, 0x8fa20028, 0xae02006c, +0x93a40010, 0x906300c5, 0x2402ff80, 0x821024, +0x431025, 0x305000ff, 0x3084007f, 0x3202007f, +0x82102a, 0x54400001, 0x3a100080, 0xe000577, +0x0, 0x2621021, 0x2403ff80, 0x431024, +0x3c038000, 0xac620094, 0x93a40010, 0x3c120800, +0x925200f7, 0xe000577, 0x3084007f, 0x2621021, +0x3042007f, 0x3c038006, 0x433821, 0x8fa30014, +0x2402ffff, 0x10620034, 0xafa70034, 0x93a20011, +0x94e30014, 0x304400ff, 0x3063ffff, 0x64182b, +0x10600010, 0x0, 0x94e60014, 0x8ce5001c, +0x8ce40018, 0x30c6ffff, 0x463023, 0x63100, +0xa62821, 0x1021, 0xa6302b, 0x822021, +0x862021, 0xace5001c, 0xace40018, 0xa000afd, +0x93a20011, 0x94e60014, 0x8ce5001c, 0x8ce40018, +0x30c6ffff, 0xc23023, 0x63100, 0x1021, +0xc01821, 0x822023, 0xa6302b, 0x862023, +0xa32823, 0xace5001c, 0xace40018, 0x93a20011, +0x8fa30034, 0xa4620014, 0x97a20012, 0xa4620016, +0x8fa20014, 0xac620010, 0x8fa20014, 0xac62000c, +0x93a20011, 0xa4620020, 0x97a20012, 0xa4620022, +0x8fa20014, 0xac620024, 0x3c048008, 0x34830080, +0x8c620038, 0x8fa20018, 0x2008821, 0xac62003c, +0x8fa20018, 0xac820000, 0x93a20010, 0xa062004c, +0x93a20010, 0xa0820009, 0xa0600068, 0x93a20010, +0x10510053, 0x93a40010, 0x3230007f, 0xe000577, +0x2002021, 0x2621021, 0x2409ff80, 0x3048007f, +0x3c038000, 0x491024, 0xac620094, 0x3c028006, +0x1024021, 0x9102003c, 0xafa80034, 0x2021, +0x491025, 0xa102003c, 0x8fa80034, 0x95020002, +0x95030014, 0x8d07001c, 0x3042ffff, 0x3063ffff, +0x8d060018, 0x431023, 0x21100, 0xe23821, +0xe2102b, 0xc43021, 0xc23021, 0xad07001c, +0xad060018, 0x95020002, 0xa5020014, 0xa5000016, +0x8d020008, 0xad020010, 0x8d020008, 0xad02000c, +0x95020002, 0xa5020020, 0xa5000022, 0x8d020008, +0xad020024, 0x9102003c, 0x30420040, 0x1040001a, +0x26220001, 0xa3b00030, 0x3c108008, 0xa3800018, +0x36100100, 0x8e0200d0, 0x8d030034, 0x27a40034, +0x27a50030, 0x431021, 0xe00089f, 0xae0200d0, +0x93a20030, 0x3c038000, 0xa20200c5, 0x8c620278, +0x440fffe, 0x8f82001c, 0xac620240, 0x24020002, +0xa0620244, 0x3c021000, 0xac620278, 0xe000a38, +0x0, 0x26220001, 0x3043007f, 0x14720005, +0x304400ff, 0x2403ff80, 0x2231024, 0x431026, +0x304400ff, 0x93a20010, 0xa000b19, 0x808821, +0x8fa30014, 0x2402ffff, 0x1062000a, 0x309000ff, +0x24820001, 0x24830001, 0x3042007f, 0x14520005, +0x307000ff, 0x2403ff80, 0x831024, 0x431026, +0x305000ff, 0x3c028008, 0x90420008, 0x2008821, +0x305000ff, 0x1230001d, 0x3c048008, 0x3222007f, +0x211c0, 0x2621021, 0x24420240, 0x2403ff80, +0x431824, 0x3c048000, 0xac830094, 0x3042007f, +0x3c038006, 0x431021, 0x8c43000c, 0x402021, +0x1060000d, 0xafa20034, 0xe000589, 0x0, +0x2402ff80, 0x2221824, 0x26240001, 0x622826, +0x3082007f, 0x14520002, 0x308300ff, 0x30a300ff, +0x1470ffe6, 0x608821, 0x3c048008, 0x34840080, +0x8c830018, 0x3c027fff, 0x3442ffff, 0x621824, +0xac830018, 0x3c038000, 0x8c6201f8, 0x440fffe, +0x0, 0xac7301c0, 0x8fbf0048, 0x8fb30044, +0x8fb20040, 0x8fb1003c, 0x8fb00038, 0x24020002, +0xa06201c4, 0x27bd0050, 0x3c021000, 0x3e00008, +0xac6201f8, 0x27bdffe0, 0x3c068000, 0xafbf001c, +0xafb00018, 0x34c70188, 0x90e20003, 0x3045007f, +0xa3a50010, 0x8cc40180, 0x90e20000, 0x3043007f, +0x24020003, 0x1062003b, 0xaf84001c, 0x28620004, +0x10400006, 0x24020004, 0x24020002, 0x10620009, +0x8fbf001c, 0xa000c46, 0x8fb00018, 0x10620041, +0x24020005, 0x10620048, 0x8fbf001c, 0xa000c46, +0x8fb00018, 0x511c0, 0x821021, 0x24830040, +0x24420240, 0x2404ff80, 0x441024, 0xacc20024, +0x3063007f, 0x3c02800a, 0x621821, 0x9062003c, +0xafa30014, 0x441025, 0xa062003c, 0x8fa30014, +0x9062003c, 0x30420040, 0x10400065, 0x8fbf001c, +0x3c108008, 0xa3800018, 0x36100100, 0x8e0200d0, +0x8c630034, 0x27a40014, 0x27a50010, 0x431021, +0xe00089f, 0xae0200d0, 0x93a20010, 0x3c038000, +0xa20200c5, 0x8c620278, 0x440fffe, 0x8f82001c, +0xac620240, 0x24020002, 0xa0620244, 0x3c021000, +0xac620278, 0xe000a38, 0x0, 0xa000c45, +0x8fbf001c, 0x3c068008, 0x90e30001, 0x90c2000b, +0x54430047, 0x8fbf001c, 0x34c20080, 0x8c470018, +0x9045004c, 0x90c60008, 0x73e02, 0x30a500ff, +0x30c600ff, 0xe0005ab, 0x30e7007f, 0xa000c45, +0x8fbf001c, 0x3c038008, 0x90e20001, 0x9063000b, +0x54620037, 0x8fbf001c, 0xe000aa2, 0x0, +0xa000c45, 0x8fbf001c, 0x3c058008, 0x90e30001, +0x90a2000b, 0x1443002e, 0x8fbf001c, 0x34b00080, +0x92020008, 0x30420040, 0x1040001f, 0x0, +0x92020008, 0x21600, 0x21603, 0x4410005, +0x0, 0xe000ef9, 0x24050093, 0xa000c45, +0x8fbf001c, 0x92020009, 0x24030018, 0x304200ff, +0x1443000d, 0x24050036, 0x24050039, 0xe000e91, +0x3021, 0xe000310, 0x8f84001c, 0x8f82ffbc, +0x24030012, 0xa0430009, 0xe00031b, 0x8f84001c, +0xa000c45, 0x8fbf001c, 0xe000e91, 0x3021, +0xa000c45, 0x8fbf001c, 0xe000310, 0x0, +0x92020005, 0x8f84001c, 0x34420020, 0xe00031b, +0xa2020005, 0xe0010a0, 0x8f84001c, 0x8fbf001c, +0x8fb00018, 0x24030c80, 0x3c028000, 0x27bd0020, +0x3e00008, 0xac430024, 0x27bdffe8, 0x3c068000, +0xafb00010, 0xafbf0014, 0x34c50100, 0x90a2000b, +0x24030016, 0x304200ff, 0x1443000b, 0x8021, +0x8ca20020, 0x8ca40020, 0x2403ff80, 0x431024, +0x21140, 0x3084007f, 0x441025, 0x3c032000, +0x431025, 0xacc20830, 0x94a20008, 0x21400, +0x21403, 0x4420001, 0x24100001, 0x94a20008, +0x30420080, 0x1040001a, 0x2001021, 0x94a20008, +0x30422000, 0x10400016, 0x2001021, 0x8ca30018, +0x3c021c2d, 0x344219ed, 0x10620011, 0x2001021, +0x3c020800, 0x8c4200d4, 0x10400005, 0x3c028008, +0x24030004, 0x34420100, 0xa04300ec, 0x3c028008, +0x34420100, 0x944500da, 0x8f84001c, 0x24060006, +0x30a5ffff, 0xe0009dd, 0x3c076021, 0x2001021, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x27bdffe0, 0x3c038000, 0x3c028008, 0xafb20018, +0xafb10014, 0xafb00010, 0xafbf001c, 0x34510100, +0x34700100, 0x8c630100, 0x8e020014, 0x8e2400d4, +0x9021, 0xaf83001c, 0x441023, 0x18400004, +0xa3800018, 0x8e020014, 0xe000950, 0xae2200d4, +0x9202000b, 0x24030002, 0x304200ff, 0x14430030, +0x0, 0x96020008, 0x304300ff, 0x24020082, +0x14620005, 0x24020084, 0xe0007e9, 0x0, +0xa000cda, 0x0, 0x14620008, 0x24020081, +0x962500da, 0x92060005, 0x8f84001c, 0x30a5ffff, +0x30c600ff, 0xa000cc9, 0x3c076021, 0x14620029, +0x0, 0x9202000a, 0x304300ff, 0x30620020, +0x10400005, 0x30620040, 0x962500da, 0x8f84001c, +0xa000cc7, 0x24060040, 0x10400005, 0x31600, +0x962500da, 0x8f84001c, 0xa000cc7, 0x24060041, +0x21603, 0x4410017, 0x0, 0x962500da, +0x8f84001c, 0x24060042, 0x30a5ffff, 0x3c076019, +0xe0009dd, 0x0, 0xa000cda, 0x0, +0x9202000b, 0x24030016, 0x304200ff, 0x10430006, +0x0, 0x9202000b, 0x24030017, 0x304200ff, +0x14430004, 0x0, 0xe000c4b, 0x0, +0x409021, 0xe000a38, 0x0, 0x9202000a, +0x30420008, 0x10400004, 0x3c028000, 0xe001273, +0x0, 0x3c028000, 0x24030c80, 0xac430024, +0x8fbf001c, 0x2401021, 0x8fb10014, 0x8fb20018, +0x8fb00010, 0x3e00008, 0x27bd0020, 0x2402ff80, +0x822024, 0x3c029000, 0x34420007, 0x822025, +0x3c028000, 0xac440020, 0x3c038000, 0x8c620020, +0x440fffe, 0x0, 0x3e00008, 0x0, +0x3c038000, 0x2402ff80, 0x822024, 0x34620007, +0x822025, 0xac640020, 0x8c620020, 0x440fffe, +0x0, 0x3e00008, 0x0, 0x3c028000, +0x34450100, 0x3c020800, 0x8c420020, 0x1040001b, +0x24020018, 0x90a30009, 0x14620003, 0x24020016, +0xa000d12, 0x24030008, 0x14620007, 0x24020017, +0x24030012, 0x3c028008, 0x34420080, 0xa0430009, +0xa000d1f, 0x94a70008, 0x54620007, 0x94a70008, +0x8f82ffbc, 0x2404fffe, 0x90430005, 0x641824, +0xa0430005, 0x94a70008, 0x90a6001b, 0x8ca40000, +0x94a50006, 0xa0009b8, 0x73c00, 0x3e00008, +0x0, 0x3c068000, 0x34c40100, 0x94820008, +0x304500ff, 0x38a30082, 0x38a20084, 0x2c630001, +0x2c420001, 0x621825, 0x10600006, 0x24a2ff80, +0x93820019, 0x1040000e, 0x0, 0xa000a70, +0x0, 0x304200ff, 0x2c430002, 0x24020083, +0x14a20005, 0x0, 0x8cc30104, 0x3c026020, +0x3e00008, 0xac430014, 0x10600003, 0x0, +0xa000c85, 0x0, 0xa000d04, 0x0, +0x3c050800, 0x94a54d46, 0x3c030800, 0x8c634d50, +0x3c048000, 0x30a2ffff, 0x230c0, 0x2402fff0, +0xc21024, 0x621821, 0xac83003c, 0x3c020800, +0x8c424d4c, 0x3c038000, 0xac820038, 0x3c020050, +0x34420010, 0xac620030, 0x0, 0x0, +0x0, 0x8c620000, 0x30420020, 0x1040fffd, +0x30c20008, 0x10400009, 0x3c028000, 0x8c620408, +0x8c63040c, 0x3c010800, 0xac224d3c, 0x3c010800, +0xac234d40, 0xa000d6f, 0x3c030020, 0x8c430400, +0x8c420404, 0x3c010800, 0xac234d3c, 0x3c010800, +0xac224d40, 0x3c030020, 0x3c028000, 0xac430030, +0x3c078000, 0x8ce20030, 0x431024, 0x1440fffd, +0x0, 0x3c030800, 0x94634d44, 0x3c020800, +0x94424d48, 0x3c060800, 0x94c64d4a, 0x24a50001, +0x621821, 0x30a4ffff, 0x3c020040, 0xace20030, +0x3c010800, 0xa4234d44, 0x3c010800, 0xa4254d46, +0x14860003, 0x0, 0x3c010800, 0xa4204d46, +0x3e00008, 0x0, 0x27bdffe8, 0x3c040800, +0x24844d2c, 0x3c05800a, 0xafbf0010, 0xe000e74, +0x2406000a, 0x3c020800, 0x94424d2e, 0x3c030800, +0x94634d4a, 0x3042000f, 0x24420003, 0x431804, +0x24027fff, 0x43102b, 0x10400002, 0xaf830028, +0xd, 0xe000d45, 0x0, 0x3c020800, +0x94424d30, 0x3c030800, 0x94634d36, 0x8fbf0010, +0x3042000f, 0x21500, 0x621825, 0x27bd0018, +0x3c028000, 0x3e00008, 0xac4300a0, 0x3c02800a, +0x94430006, 0x3c020800, 0x94424d36, 0x3c010800, +0xa4234d32, 0x431023, 0x8f830028, 0x3042ffff, +0x43102b, 0x3e00008, 0x38420001, 0x27bdffe8, +0xafbf0010, 0x3c02800a, 0x94420006, 0x3c010800, +0xa4224d32, 0xe000dac, 0x0, 0x5440fffa, +0x3c02800a, 0x8fbf0010, 0x3e00008, 0x27bd0018, +0x27bdffe8, 0xafbf0010, 0xe000dac, 0x0, +0x10400003, 0x0, 0xe000db8, 0x0, +0x3c020800, 0x8c424d3c, 0x3c038000, 0x8fbf0010, +0xac620038, 0x3c020800, 0x8c424d40, 0x34640400, +0x27bd0018, 0xac62003c, 0x3c020005, 0xac620030, +0xaf84002c, 0x3e00008, 0xaf800024, 0x8f820024, +0x3c030006, 0x21140, 0x431025, 0x3c038000, +0xac620030, 0x0, 0x0, 0x0, +0x8c620000, 0x30420010, 0x1040fffd, 0x34620400, +0xaf82002c, 0x3e00008, 0xaf800024, 0x3c060800, +0x8cc64d40, 0x8f850024, 0x8f83002c, 0x3c020800, +0x94424d36, 0x27bdffe0, 0x24a50001, 0x24630020, +0x24420001, 0x24c70020, 0xafb10014, 0xafb00010, +0xafbf0018, 0xaf850024, 0xaf83002c, 0x3c010800, +0xa4224d36, 0x309000ff, 0x3c010800, 0xac274d40, +0x4c10008, 0x8821, 0x4e00006, 0x0, +0x3c020800, 0x8c424d3c, 0x24420001, 0x3c010800, +0xac224d3c, 0x3c040800, 0x94844d44, 0x3c020800, +0x94424d36, 0x2e030001, 0x441026, 0x2c440001, +0x831824, 0x10600004, 0x10102b, 0x24020001, +0xaf820020, 0x10102b, 0x821025, 0x14400006, +0x8f820020, 0x14400004, 0x8f830024, 0x24020010, +0x1462000f, 0x0, 0xe000ddc, 0x24110001, +0x3c030800, 0x94634d36, 0x3c020800, 0x94424d44, +0x14620003, 0x0, 0xe000d45, 0x0, +0x16000003, 0x0, 0xe000dc5, 0x0, +0x3c030800, 0x94634d3a, 0x3c020800, 0x94424d38, +0x24630001, 0x3064ffff, 0x3c010800, 0xa4234d3a, +0x14820003, 0x0, 0x3c010800, 0xa4204d3a, +0x1200000b, 0x0, 0x3c020800, 0x94424d30, +0x3c030800, 0x94634d36, 0x21500, 0x621825, +0x3c028000, 0xac4300a0, 0xa000e4b, 0xaf800020, +0xe000dac, 0x0, 0x10400004, 0x2201021, +0xe000db8, 0x0, 0x2201021, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x3e00008, 0x0, 0x8f820034, 0x3c030006, +0x21140, 0x431025, 0x3c038000, 0xac620030, +0x0, 0x0, 0x0, 0x8c620000, +0x30420010, 0x1040fffd, 0x34620400, 0xaf820030, +0x3e00008, 0xaf800034, 0x3e00008, 0x1021, +0x3e00008, 0x0, 0x3084ffff, 0x30a5ffff, +0x1821, 0x10800007, 0x0, 0x30820001, +0x10400002, 0x42042, 0x651821, 0xa000e6a, +0x52840, 0x3e00008, 0x601021, 0x10c00006, +0x24c6ffff, 0x8ca20000, 0x24a50004, 0xac820000, +0xa000e74, 0x24840004, 0x3e00008, 0x0, +0x10a00008, 0x24a3ffff, 0xac860000, 0x0, +0x0, 0x2402ffff, 0x2463ffff, 0x1462fffa, +0x24840004, 0x3e00008, 0x0, 0x3c028008, +0x34420080, 0x24030001, 0xac43000c, 0xa4430010, +0xa4430012, 0xa4430014, 0x3e00008, 0xa4430016, +0x27bdffd8, 0x24820080, 0x2407ff80, 0x3043007f, +0xafb00010, 0x808021, 0x472024, 0x3c020800, +0x8c420020, 0x3c08800e, 0xafb3001c, 0xafb20018, +0xafb10014, 0xafbf0020, 0x3c098000, 0x681821, +0x30b100ff, 0x30d200ff, 0x10400029, 0x9821, +0x26020100, 0xad24002c, 0x472824, 0x3042007f, +0x482021, 0x90620000, 0x24030050, 0x304200ff, +0x14430004, 0x0, 0xad25002c, 0x948200da, +0x3053ffff, 0xe000dc5, 0x0, 0x3c030800, +0x94634d3a, 0x8f82002c, 0x112c00, 0xa32825, +0x122400, 0x3c034000, 0x34840001, 0xa32825, +0xac500000, 0x8fbf0020, 0xac400004, 0x8fb20018, +0xac530008, 0x8fb10014, 0xac40000c, 0x8fb3001c, +0xac440010, 0x8fb00010, 0xac400014, 0x24040001, +0xac400018, 0x27bd0028, 0xa000dec, 0xac45001c, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x3c068000, +0x34c20100, 0x9043000f, 0x24020010, 0x1062000e, +0x28650011, 0x10a00007, 0x24020012, 0x24020008, +0x2405003a, 0x10620006, 0x3021, 0x3e00008, +0x0, 0x24050035, 0x1462fffc, 0x3021, +0xa000e91, 0x0, 0x8cc20074, 0x8f83ffbc, +0x24420fa0, 0x3e00008, 0xac62000c, 0x27bdffe8, +0xafbf0010, 0xe000320, 0x24050001, 0x3c048008, +0x8fbf0010, 0x24020001, 0x34830080, 0xa4620012, +0x27bd0018, 0x24020001, 0x3e00008, 0xa080001a, +0x27bdffe0, 0xafb20018, 0xafb10014, 0xafb00010, +0xafbf001c, 0x30b2ffff, 0xe000310, 0x808821, +0x3c028008, 0x34500080, 0x92020009, 0x24030004, +0x304200ff, 0x1443000c, 0x3c028008, 0x12400008, +0x2402000a, 0xe000e88, 0x0, 0x92020005, +0x2403fffe, 0x431024, 0xa2020005, 0x24020012, +0xa2020009, 0x3c028008, 0x34420080, 0x2202021, +0xe00031b, 0xa0400027, 0x16400003, 0x2202021, +0xe000eec, 0x0, 0x2202021, 0x324600ff, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x24050038, 0xa000e91, 0x27bd0020, 0x27bdffe0, +0xafbf001c, 0xafb20018, 0xafb10014, 0xafb00010, +0xe000310, 0x808021, 0xe000e88, 0x0, +0x3c028008, 0x34450080, 0x90a20009, 0x24120018, +0x305100ff, 0x12320003, 0x2002021, 0x24020012, +0xa0a20009, 0x90a20005, 0x2403fffe, 0x431024, +0xe00031b, 0xa0a20005, 0x2002021, 0x24050020, +0x16320007, 0x3021, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0xa000320, 0x27bd0020, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x24050039, 0xa000e91, 0x27bd0020, 0x27bdffe8, +0x3c028000, 0xafb00010, 0xafbf0014, 0x34420100, +0x9442000c, 0x24050036, 0x808021, 0x14400012, +0x304600ff, 0xe000310, 0x0, 0x3c028008, +0x34420080, 0x24030012, 0xa0430009, 0x90430005, +0x34630010, 0xe000e88, 0xa0430005, 0xe00031b, +0x2002021, 0x2002021, 0xe000320, 0x24050020, +0xa000f69, 0x0, 0xe000e91, 0x0, +0xe000310, 0x2002021, 0x3c028008, 0x9043001b, +0x2405ff9f, 0x2002021, 0x651824, 0x8fbf0014, +0x8fb00010, 0xa043001b, 0xa00031b, 0x27bd0018, +0x27bdffe0, 0xafbf0018, 0xafb10014, 0xafb00010, +0x30b100ff, 0xe000310, 0x808021, 0x3c028008, +0x24030012, 0x34420080, 0xe000e88, 0xa0430009, +0xe00031b, 0x2002021, 0x2002021, 0x2203021, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x24050035, +0xa000e91, 0x27bd0020, 0x3c048008, 0x9083000e, +0x9082000a, 0x1443000b, 0x2821, 0x8f82ffbc, +0x24030050, 0x24050001, 0x90420000, 0x304200ff, +0x14430004, 0x0, 0x9082000e, 0x24420001, +0xa082000e, 0x3e00008, 0xa01021, 0x3c038000, +0x8c6201f8, 0x440fffe, 0x24020002, 0xac6401c0, +0xa06201c4, 0x3c021000, 0x3e00008, 0xac6201f8, +0x27bdffe0, 0xafb20018, 0x3c128008, 0xafb10014, +0xafbf001c, 0xafb00010, 0x36510080, 0x92220009, +0x2403000a, 0x304200ff, 0x1443003a, 0x0, +0x8e430004, 0x8e220038, 0x5062007e, 0x8fbf001c, +0x92220000, 0x24030050, 0x304200ff, 0x14430025, +0x3c028000, 0x8c420140, 0x8e430004, 0x36420100, +0x2202821, 0xac43001c, 0x9622005c, 0x8e230038, +0x3042ffff, 0x21040, 0x621821, 0xae23001c, +0x8e430004, 0x8e240038, 0x9622005c, 0x641823, +0x3042ffff, 0x31843, 0x21040, 0x43102a, +0x10400006, 0x0, 0x8e420004, 0x8e230038, +0x431023, 0xa000fd7, 0x22043, 0x9622005c, +0x3042ffff, 0x22040, 0x3c028008, 0x34430100, +0x34420080, 0xaca4002c, 0xa0400024, 0x24020001, +0xa062000c, 0xe000f8b, 0x0, 0x10400051, +0x8fbf001c, 0x3c028000, 0x8c440140, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xa000f9c, +0x27bd0020, 0x92220009, 0x24030010, 0x304200ff, +0x14430004, 0x3c028000, 0x8c440140, 0xa001019, +0x2821, 0x92220009, 0x24030016, 0x304200ff, +0x14430006, 0x24020014, 0xa2220009, 0x3c028000, +0x8c440140, 0xa00102c, 0x8fbf001c, 0x8e220038, +0x8e23003c, 0x431023, 0x4410032, 0x8fbf001c, +0x92220027, 0x24420001, 0xa2220027, 0x92220027, +0x3c030800, 0x8c630048, 0x304200ff, 0x14430016, +0x3c108000, 0x92220009, 0x24030004, 0x304200ff, +0x14430009, 0x3c028000, 0x8c440140, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x24050093, +0xa000ef9, 0x27bd0020, 0x8c440140, 0x24050093, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0xa000f75, 0x27bd0020, 0x8e040140, 0xe000310, +0x0, 0x8e420004, 0x2442ffff, 0xae420004, +0x8e22003c, 0x2442ffff, 0xae22003c, 0xe00031b, +0x8e040140, 0x8e040140, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x24050004, 0xa000320, +0x27bd0020, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x3c068000, 0x8cc20188, +0x3c038008, 0x34650080, 0x9063000e, 0x21402, +0x304400ff, 0x306300ff, 0x1464000e, 0x3c028008, +0x90a20026, 0x304200ff, 0x10440009, 0x8f82ffbc, +0xa0a40026, 0x24030050, 0x90420000, 0x304200ff, +0x14430006, 0x0, 0xa0005c1, 0x8cc40180, +0x3c028008, 0x34420080, 0xa0440026, 0x3e00008, +0x0, 0x27bdffe0, 0x30e700ff, 0xafb20018, +0xafbf001c, 0xafb10014, 0xafb00010, 0x809021, +0x14e00006, 0x30c600ff, 0x0, 0xd, +0x0, 0xa00108b, 0x24000117, 0x3c038008, +0x9062000e, 0x304200ff, 0x14460023, 0x34620080, +0x90420026, 0x304200ff, 0x1446001f, 0x0, +0x9062000f, 0x304200ff, 0x1446001b, 0x0, +0x9062000a, 0x304200ff, 0x14460003, 0x8f90ffbc, +0xd, 0x8f90ffbc, 0x8f82ffc0, 0x3c118000, +0xae05003c, 0xac450000, 0xa066000a, 0xe000310, +0x8e240100, 0xa2000024, 0xe00031b, 0x8e240100, +0x3c038000, 0x8c6201f8, 0x440fffe, 0x24020002, +0xac7201c0, 0xa06201c4, 0x3c021000, 0xac6201f8, +0xa00108c, 0x8fbf001c, 0x0, 0xd, +0x0, 0x24000140, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x8f83ffbc, 0x3c028000, 0x8c440100, 0x34420100, +0x8c65003c, 0x9046001b, 0xa001052, 0x24070001, +0x3c028008, 0x9043000e, 0x9042000a, 0x431026, +0x304200ff, 0x3e00008, 0x2102b, 0x27bdffe0, +0x3c028008, 0xafb10014, 0xafb00010, 0xafbf0018, +0x34500080, 0x92020005, 0x24030030, 0x30420030, +0x14430084, 0x808821, 0x3c020800, 0x8c420020, +0x10400081, 0x8fbf0018, 0xe000dc5, 0x0, +0x8f86002c, 0xacd10000, 0x92020008, 0x92030009, +0x304200ff, 0x21200, 0x306300ff, 0x431025, +0xacc20004, 0x9202004d, 0x21600, 0x21603, +0x4410005, 0x0, 0x3c030800, 0x8c630048, +0xa0010ca, 0x3c108008, 0x92020008, 0x30420040, +0x14400003, 0x1821, 0x92020027, 0x304300ff, +0x3c108008, 0x36110080, 0x9222004d, 0x31e00, +0x3c050800, 0x94a54d3a, 0x304200ff, 0x21400, +0x621825, 0xacc30008, 0x8e230030, 0x3c02c00b, +0xa22825, 0xacc3000c, 0x8e220034, 0x2021, +0xacc20010, 0x8e220038, 0xacc20014, 0x8e22003c, +0xacc20018, 0xe000dec, 0xacc5001c, 0x8e020004, +0x8f84002c, 0x3c058000, 0xac820000, 0x8e220020, +0xac820004, 0x8e22001c, 0xac820008, 0x8e220058, +0x8ca30074, 0x431021, 0xac82000c, 0x8e22002c, +0xac820010, 0x8e220040, 0x8e230044, 0x21400, +0x431025, 0xac820014, 0x9222004d, 0x24030080, +0x304200ff, 0x14430003, 0x0, 0xa00110c, +0xac800018, 0x8e23000c, 0x24020001, 0x1062000e, +0x2402ffff, 0x92220008, 0x30420040, 0x1440000a, +0x2402ffff, 0x8e23000c, 0x8ca20074, 0x621823, +0x3c020800, 0x621024, 0x14400002, 0x2821, +0x602821, 0x51043, 0xac820018, 0x3c020800, +0x94424d3a, 0x3c03c00c, 0x2021, 0x431025, +0x8f83002c, 0xe000dec, 0xac62001c, 0x3c048008, +0x34820100, 0x8c420000, 0x8f83002c, 0x34840080, +0x3c060800, 0x94c64d3a, 0xac620000, 0xac600004, +0x8c850048, 0x3c02400d, 0xc23025, 0xac650008, +0xac60000c, 0xac600010, 0x90820005, 0x8fbf0018, +0x8fb10014, 0x21600, 0xac620014, 0x8fb00010, +0xac600018, 0x24040001, 0xac66001c, 0xa000dec, +0x27bd0020, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x3c028000, 0x9443007c, +0x3c028008, 0x34460100, 0x308400ff, 0x3065ffff, +0x24020005, 0x24a34650, 0xa0c4000c, 0x5482000c, +0x3065ffff, 0x90c2000d, 0x2c420007, 0x10400007, +0x24a30a00, 0x90c3000d, 0x24020014, 0x621004, +0xa21021, 0xa001149, 0x3045ffff, 0x3065ffff, +0x3c028008, 0x34420080, 0x3e00008, 0xa4450014, +0x3c038008, 0x34680080, 0xad050038, 0x34670100, +0x8ce2001c, 0x308400ff, 0xa21023, 0x18400003, +0x30c600ff, 0x24a2fffc, 0xace2001c, 0x30820001, +0x50400008, 0x3c038008, 0x8d02003c, 0xa21023, +0x4410012, 0x24040005, 0x8c620004, 0x10a2000f, +0x3c038008, 0x8c620004, 0x14a20018, 0x0, +0x3c020800, 0x8c4200d8, 0x30420020, 0x10400009, +0x3c028008, 0x34620080, 0x90630008, 0x9042004c, +0x14430004, 0x3c028008, 0x24040004, 0xa001133, +0x0, 0x34430080, 0x34420100, 0xa040000c, +0x24020001, 0xa4620014, 0x10c00004, 0x3c028000, +0x8c440100, 0xa000f9c, 0x0, 0x3e00008, +0x0, 0x27bdffe8, 0xa61823, 0xafbf0010, +0x1860004e, 0x308800ff, 0x3c028008, 0x34470080, +0xa0e00024, 0x34440100, 0xa0e00027, 0x8c82001c, +0xa21023, 0x440002b, 0x0, 0x8ce2003c, +0x94e3005c, 0x8ce4002c, 0x453023, 0x3063ffff, +0xc31821, 0x83202b, 0x10800004, 0xe01821, +0x8ce2002c, 0xa00119c, 0xa21021, 0x94e2005c, +0x3042ffff, 0xc21021, 0xa21021, 0xac62001c, +0x3c028008, 0x34470080, 0x94e2005c, 0x8ce3001c, +0x3042ffff, 0x21040, 0xa21021, 0x43102b, +0x10400003, 0x0, 0xa0011ad, 0x8ce2001c, +0x94e2005c, 0x3042ffff, 0x21040, 0xa21021, +0xace2001c, 0x3c028008, 0x34420100, 0x8fbf0010, +0x1002021, 0x24060001, 0xa040000c, 0xa00114d, +0x27bd0018, 0x8ce2001c, 0x461023, 0x43102b, +0x54400001, 0xace5001c, 0x94e2005c, 0x3042ffff, +0x62102b, 0x14400007, 0x24020002, 0x94e2005c, +0x8ce3001c, 0x3042ffff, 0x621821, 0xace3001c, +0x24020002, 0xace50038, 0xe000f8b, 0xa082000c, +0x10400018, 0x8fbf0010, 0x3c028000, 0x8c440100, +0x8fbf0010, 0xa000f9c, 0x27bd0018, 0x31020010, +0x10400010, 0x8fbf0010, 0x3c028008, 0x34450080, +0x8ca3001c, 0x94a2005c, 0x661823, 0x3042ffff, +0x621821, 0x3c023fff, 0x3444ffff, 0x83102b, +0x54400001, 0x801821, 0xc31021, 0xaca2001c, +0x8fbf0010, 0x3e00008, 0x27bd0018, 0x27bdffe8, +0xc04021, 0xa63023, 0xafbf0010, 0x18c00026, +0x308a00ff, 0x3c028008, 0x34490080, 0x8d24001c, +0x8d23002c, 0x882023, 0x64182b, 0x1060000f, +0x34470100, 0x8ce20020, 0x461021, 0xace20020, +0x8ce20020, 0x44102b, 0x1440000b, 0x3c023fff, +0x8ce20020, 0x441023, 0xace20020, 0x9522005c, +0x3042ffff, 0xa001202, 0x822021, 0xace00020, +0x862021, 0x3c023fff, 0x3443ffff, 0x64102b, +0x54400001, 0x602021, 0x3c028008, 0x34420080, +0x851821, 0xac43001c, 0xa0400024, 0xa0400027, +0xa001251, 0x8fbf0010, 0x31420010, 0x10400040, +0x8fbf0010, 0x3c068008, 0x34c40080, 0x8c82003c, +0x481023, 0x5840003b, 0x1402021, 0x90820024, +0x24420001, 0xa0820024, 0x90820024, 0x3c030800, +0x8c630024, 0x304200ff, 0x43102b, 0x54400034, +0x8fbf0010, 0x34c20100, 0x8c42001c, 0xa21023, +0x1840002f, 0x8fbf0010, 0x8cc30004, 0x9482005c, +0x681823, 0x3042ffff, 0x31843, 0x21040, +0x43102a, 0x10400005, 0x0, 0x8cc20004, +0x481023, 0xa001237, 0x21043, 0x9482005c, +0x3042ffff, 0x21040, 0x3c068008, 0xac82002c, +0x34c50080, 0x94a2005c, 0x8ca4002c, 0x94a3005c, +0x3042ffff, 0x21040, 0x822021, 0x3063ffff, +0x832021, 0x1041021, 0xaca2001c, 0x8cc20004, +0x34c60100, 0xacc2001c, 0x24020002, 0xe000f8b, +0xa0c2000c, 0x1040000a, 0x8fbf0010, 0x3c028000, +0x8c440100, 0x8fbf0010, 0xa000f9c, 0x27bd0018, +0x1402021, 0x24060001, 0xa00114d, 0x27bd0018, +0x3e00008, 0x27bd0018, 0x3c098008, 0x352a0080, +0x8d42003c, 0x308300ff, 0x352b0100, 0x461023, +0x30e700ff, 0x18400006, 0x602021, 0x24020001, +0xa160000c, 0xa160000d, 0xa0011e4, 0xa5420014, +0x24020005, 0x35290100, 0x3021, 0x14e20008, +0xa1400027, 0x9122000d, 0x2c420006, 0x10400004, +0x0, 0x9122000d, 0x24420001, 0xa122000d, +0xa00114d, 0x0, 0x3c038008, 0x3c028000, +0x34420100, 0x34640080, 0x34630100, 0x9045000a, +0x8c480014, 0x8c890038, 0x9062000c, 0x30aa00ff, +0x1281823, 0x304700ff, 0x1c60000e, 0x2ce40006, +0x24020001, 0xe21004, 0x1080000a, 0x30430003, +0x1402021, 0x1002821, 0x1203021, 0x14600007, +0x304b000c, 0x15600007, 0x30420030, 0x14400007, +0x0, 0x3e00008, 0x0, 0xa0011e4, +0x0, 0xa00117e, 0x0, 0xa001257, +0x0, 0x3c038008, 0x34640100, 0x24020003, +0xa082000c, 0x8c620004, 0x3e00008, 0xac82001c, +0x3c058008, 0x34a30080, 0x90620027, 0x34a50100, +0x24060043, 0x24420001, 0xa0620027, 0x90630027, +0x3c020800, 0x8c420048, 0x306300ff, 0x14620004, +0x24070021, 0x94a500da, 0xa0009dd, 0x30a5ffff, +0x3e00008, 0x0, 0x27bdffe8, 0xafbf0010, +0x3c028000, 0xe00129d, 0x8c440180, 0x3c028008, +0x34430100, 0xa060000c, 0x8c420004, 0x8fbf0010, +0x27bd0018, 0x3e00008, 0xac62001c, 0x27bdffe0, +0x3c028008, 0xafbf0018, 0xafb10014, 0xafb00010, +0x34450080, 0x34460100, 0x3c088000, 0x8d090140, +0x90c3000c, 0x8ca4003c, 0x8ca20038, 0x14820038, +0x306700ff, 0x9502007c, 0x90a30027, 0x14600009, +0x3045ffff, 0x24020005, 0x54e20008, 0x3c048008, +0x90c2000d, 0x24420001, 0xa0c2000d, 0xa0012d8, +0x3c048008, 0xa0c0000d, 0x3c048008, 0x34820100, +0x9042000c, 0x24030005, 0x304200ff, 0x1443000a, +0x24a205dc, 0x34830080, 0x90620027, 0x2c420007, +0x50400005, 0x24a20a00, 0x90630027, 0x24020014, +0x621004, 0xa21021, 0x3c108008, 0x36100080, +0x3045ffff, 0x1202021, 0xe00129d, 0xa6050014, +0x9602005c, 0x8e030038, 0x3c118000, 0x3042ffff, +0x21040, 0x621821, 0xae03001c, 0xe000310, +0x8e240140, 0x92020025, 0x34420040, 0xa2020025, +0xe00031b, 0x8e240140, 0x8e240140, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0xa000f9c, 0x27bd0020, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x0 }; +u32 bce_COM_b09FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_COM_b09FwRodata[(0x30/4) + 1] = { +0x80080100, 0x80080080, 0x80080000, +0x80080240, 0x8000e20, 0x8000e78, 0x8000ebc, +0x8000f50, 0x8000f94, 0x80080100, 0x80080080, +0x80080000, 0x0 }; +u32 bce_COM_b09FwBss[(0xbc/4) + 1] = { 0x0 }; +u32 bce_COM_b09FwSbss[(0x38/4) + 1] = { 0x0 }; +u32 bce_COM_b09FwSdata[(0x0/4) + 1] = { 0x0 }; + +int bce_RXP_b09FwReleaseMajor = 0x1; +int bce_RXP_b09FwReleaseMinor = 0x0; +int bce_RXP_b09FwReleaseFix = 0x0; +u32 bce_RXP_b09FwStartAddr = 0x080031d0; +u32 bce_RXP_b09FwTextAddr = 0x08000000; +int bce_RXP_b09FwTextLen = 0x786c; +u32 bce_RXP_b09FwDataAddr = 0x00000000; +int bce_RXP_b09FwDataLen = 0x0; +u32 bce_RXP_b09FwRodataAddr = 0x0800786c; +int bce_RXP_b09FwRodataLen = 0xf0; +u32 bce_RXP_b09FwBssAddr = 0x080079d8; +int bce_RXP_b09FwBssLen = 0x1c; +u32 bce_RXP_b09FwSbssAddr = 0x08007980; +int bce_RXP_b09FwSbssLen = 0x58; +u32 bce_RXP_b09FwSDataAddr = 0x00000000; +int bce_RXP_b09FwSDataLen = 0x0; +u32 bce_RXP_b09FwText[(0x786c/4) + 1] = { +0xa000c74, +0x0, 0x0, 0xd, 0x72787034, +0x2e342e32, 0x31000000, 0x4041503, 0x0, +0x1, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x10000003, 0x0, 0xd, 0xd, +0x3c020800, 0x24427980, 0x3c030800, 0x246379f4, +0xac400000, 0x43202b, 0x1480fffd, 0x24420004, +0x3c1d0800, 0x37bd9ffc, 0x3a0f021, 0x3c100800, +0x261031d0, 0x3c1c0800, 0x279c7980, 0xe00122f, +0x0, 0xd, 0x3c028000, 0x30a5ffff, +0x30c600ff, 0x34480180, 0x3c038000, 0x8c6901b8, +0x520fffe, 0x0, 0xad040000, 0xa5050008, +0x3c041000, 0x24050002, 0xa106000a, 0xa105000b, +0xad070018, 0xa06001b0, 0x3e00008, 0xac6401b8, +0x3c056000, 0x8ca24ff8, 0x440fffe, 0x0, +0xaca44fc0, 0x3c031000, 0x3c040200, 0xaca44fc4, +0x3e00008, 0xaca34ff8, 0x27bdffe8, 0xafbf0014, +0xafb00010, 0xe001281, 0x808021, 0x3c048008, +0x34850080, 0x90a60005, 0x2403fffe, 0x2002021, +0xc31024, 0x8fbf0014, 0x8fb00010, 0xa0a20005, +0xa00128b, 0x27bd0018, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0xe000efb, 0x808021, 0x3c068008, +0x34c50080, 0x90a40000, 0x24020050, 0x308300ff, +0x10620007, 0x3c098000, 0x2002021, 0x8fbf0014, +0x8fb00010, 0xad200180, 0xa000feb, 0x27bd0018, +0x24080100, 0x3c078000, 0x2002021, 0x8fbf0014, +0x8fb00010, 0xace80180, 0xa000feb, 0x27bd0018, +0x27bdff88, 0x3c078008, 0xafb60068, 0xafb50064, +0xafb3005c, 0xafb00050, 0xafbf0074, 0xafbe0070, +0xafb7006c, 0xafb40060, 0xafb20058, 0xafb10054, +0x3c068000, 0x34e80080, 0x8cd10128, 0x91040009, +0xacc00084, 0x91050005, 0x309000ff, 0x9821, +0x51027, 0x30430001, 0xa821, 0x1460003a, +0xb021, 0x94d20116, 0x94cd0116, 0x8cce0104, +0x3c0f0001, 0x34ca0c00, 0x324bffff, 0x31acffff, +0x1cf4824, 0x18a3021, 0x1520001e, 0x16a4021, +0x3c0a8008, 0x35490080, 0x91240000, 0x24050020, +0x308300ff, 0x10650083, 0x0, 0x24130050, +0x50730042, 0xafa00030, 0x3c110800, 0x8e3100f4, +0x26300001, 0x3c010800, 0xac3000f4, 0xe00136b, +0x0, 0x8fbf0074, 0x8fbe0070, 0x8fb7006c, +0x8fb60068, 0x8fb50064, 0x8fb40060, 0x8fb3005c, +0x8fb20058, 0x8fb10054, 0x8fb00050, 0x3e00008, +0x27bd0078, 0x8cd7000c, 0x8cf4001c, 0x52f4001c, +0x8cd80010, 0x24020001, 0x8fbf0074, 0x8fbe0070, +0x8fb7006c, 0x8fb60068, 0x8fb50064, 0x8fb40060, +0x8fb3005c, 0x8fb20058, 0x8fb10054, 0x8fb00050, +0x3e00008, 0x27bd0078, 0xe000cb7, 0x2021, +0x8fbf0074, 0x8fbe0070, 0x8fb7006c, 0x8fb60068, +0x8fb50064, 0x8fb40060, 0x8fb3005c, 0x8fb20058, +0x8fb10054, 0x8fb00050, 0x3e00008, 0x27bd0078, +0x8ce6002c, 0x1706ffe4, 0x24020001, 0x94ff003e, +0x951e0000, 0x33f9ffff, 0x57d9ffe0, 0x8fbf0074, +0x94e2003c, 0x95030002, 0x3047ffff, 0x1467ffda, +0x24020001, 0xa000cf6, 0x3c0a8008, 0x3c130800, +0x267379e4, 0x3c0e8000, 0x8dd40104, 0x3c170020, +0x3c0d0040, 0x2979024, 0x12782b, 0xf2940, +0xafa50030, 0x8dcc0104, 0x9112000d, 0x18d5824, +0x15600002, 0x34a40040, 0xa02021, 0x32580020, +0x17000002, 0x34860080, 0x803021, 0x14c00081, +0xafa60030, 0x3c038008, 0x34670080, 0x90ff0008, +0x33e60040, 0x50c00006, 0x3c078008, 0x24020004, +0x12020086, 0x24050012, 0x1205ffc3, 0x3c078008, +0x34ed0100, 0x3c0e8000, 0x95cc011a, 0x950a000e, +0x91ab0008, 0x32490004, 0x3197ffff, 0x16a2004, +0xafa4003c, 0x8d140004, 0x11200019, 0x8d1e0008, +0x34e30080, 0x90780008, 0x330f0040, 0x15e00010, +0x0, 0x8c710050, 0x2918023, 0x6000006, +0x3c088000, 0x8c770034, 0x2979023, 0x6420059, +0x8e620008, 0x3c088000, 0xad000044, 0xa000d17, +0x24020001, 0xd, 0xa000d42, 0xafa00030, +0xe00143d, 0x2802021, 0x1440fff7, 0x3c088000, +0x3c068008, 0x34c30080, 0x8c790034, 0x2994023, +0x5000013, 0x2202021, 0x3c140800, 0x8e943100, +0x26930001, 0x3c010800, 0xac333100, 0xe001281, +0x3c108008, 0x361f0080, 0x93f60025, 0x2202021, +0x36c90004, 0xa3e90025, 0xe00128b, 0x0, +0xe000c9d, 0x2202021, 0xa000d17, 0x24020001, +0x8c670030, 0x287f823, 0x1be00008, 0x2409000c, +0x3c050800, 0x8ca53100, 0x325200fc, 0xb821, +0x24a20001, 0x3c010800, 0xac223100, 0xafa90030, +0x8c630030, 0x744023, 0x190000e1, 0x2e8202a, +0x5480ffe2, 0x2202021, 0x12e8001c, 0x2e86023, +0x288a021, 0x3197ffff, 0x324d0002, 0x11a00034, +0x32590010, 0x3c1e8008, 0x37d00080, 0x92160008, +0x32d50040, 0x52a000d4, 0x8e620008, 0x2202021, +0xe001281, 0x24120018, 0xa2120009, 0x920f0005, +0x2418fffe, 0x2202021, 0x1f87024, 0xe00128b, +0xa20e0005, 0x24040039, 0x2821, 0xe001417, +0x24060018, 0xa000d17, 0x24020001, 0x3a4b0001, +0x316a0001, 0x1540ffc1, 0x2202021, 0xa000db1, +0x2e86023, 0x40f809, 0x24040016, 0xa000d17, +0x24020001, 0x9268000c, 0x3c1e8008, 0x37d90080, +0x8b300, 0x8f270038, 0x36d50081, 0x2202021, +0x32a5f081, 0xe000c8b, 0x30c600ff, 0x3c088000, +0xad000044, 0xa000d17, 0x24020001, 0x2202021, +0xe0014fa, 0x1002821, 0xa000d18, 0x8fbf0074, +0x5320ff91, 0x3c088000, 0x3c078008, 0x34e90080, +0x8d230038, 0x8cff0004, 0x3df3023, 0x5cc0ff8a, +0x3c088000, 0x3c31023, 0x4420001, 0x60f021, +0xafa80018, 0x3c198000, 0xafb40010, 0xafb70014, +0x97270120, 0x8d2a0030, 0x953f005c, 0x8fb8003c, +0x8fab0030, 0x30e6ffff, 0x33efffff, 0xc86821, +0x372e4000, 0x30f602b, 0x8e620004, 0x16c2025, +0x1ae1821, 0xafa40030, 0xafa90048, 0xafa30020, +0xafaa0028, 0xafaa0024, 0xafa0002c, 0xafbe0034, +0x40f809, 0x27a40010, 0x8fa50030, 0x30a80002, +0x11000002, 0x8fa90048, 0x325200fe, 0x91280008, +0x31090040, 0x51200013, 0x8fa40024, 0x3c058008, +0x8ca20004, 0x105e00a4, 0x240a0014, 0x32580001, +0x5300000c, 0x8fa40024, 0x2419000c, 0x121900c1, +0x2a06000d, 0x10c000bb, 0x2407000e, 0x241f000a, +0x521f0001, 0x24150008, 0x8fa90024, 0x25240001, +0xafa40024, 0x3c188008, 0x37050080, 0x8faf0014, +0x8cae0030, 0x340cffff, 0x8f6821, 0xacad0030, +0xafae0038, 0x90a4004e, 0x8ca30030, 0x8fa2003c, +0x8c5804, 0x6b5021, 0xacaa0034, 0x8fa60030, +0x3c22021, 0x30c80008, 0x1100000b, 0xafa40040, +0x8cb90020, 0x13240090, 0x30c600ff, 0x9268000c, +0x8fa70034, 0x2202021, 0x84b00, 0x35300080, +0xe000c8b, 0x3205f080, 0x3c0a8008, 0x35500080, +0x8e070030, 0x8fa20038, 0xe23023, 0x18c00065, +0x262e0080, 0x3c040800, 0x8c843198, 0x240fff80, +0x1cf6824, 0x31cc007f, 0x3c068000, 0x3c038004, +0x308b0010, 0xaccd0090, 0x1160003b, 0x1832821, +0x90b8006b, 0x57000039, 0x3c108008, 0x241f0001, +0xa0bf006b, 0x94c5007a, 0x24b9000a, 0xa6190012, +0x3c0a8008, 0x35450080, 0x90a20008, 0x30470040, +0x14e00004, 0x3c038008, 0x324b0001, 0x1560006c, +0x0, 0x34640080, 0x8c8c0020, 0x8fb20040, +0x11920009, 0x34630100, 0x8c6e0000, 0x28e6823, +0x19a00012, 0x8fa50040, 0x24160001, 0xac850020, +0xac740000, 0xac7e0004, 0x16a0002d, 0x0, +0x16c00027, 0x0, 0x12e00005, 0x1821, +0x8fa40030, 0x30950004, 0x52a0fe97, 0x601021, +0x24030001, 0xa000d17, 0x601021, 0x8c6f0000, +0x15f4fff1, 0x0, 0x8c790004, 0x3d9c023, +0x701ffe9, 0x8fa50040, 0xa000e77, 0x0, +0xa000db3, 0x4021, 0x40f809, 0x24040017, +0xa000d17, 0x24020001, 0x3c108008, 0x36100080, +0x24160001, 0x2202021, 0xe001281, 0xa6160012, +0x92090025, 0x2202021, 0x24160001, 0x35220001, +0xe00128b, 0xa2020025, 0xa000e62, 0x3c0a8008, +0xe000c9d, 0x2202021, 0xa000e7b, 0x0, +0xe001281, 0x2202021, 0x3c038008, 0x347e0080, +0x2202021, 0xe00128b, 0xa3d50009, 0x2a03021, +0x24040037, 0xe001417, 0x2821, 0xa000e79, +0x0, 0x8fa80018, 0x5900ffae, 0x3c0a8008, +0xe001281, 0x2202021, 0x92060025, 0x2202021, +0x24160001, 0x34c20004, 0xe00128b, 0xa2020025, +0xa000e62, 0x3c0a8008, 0x520aff5c, 0x24150012, +0x2a040015, 0x10800024, 0x240b0016, 0x2403000c, +0x5603ff57, 0x32580001, 0x3c0c8008, 0x918e001b, +0x240fffbd, 0x2415000e, 0x1cf6824, 0xa18d001b, +0xa000e1d, 0x32580001, 0x3c1f8000, 0x97e5011a, +0x50a0ff6e, 0x34c60010, 0xa000e41, 0x9268000c, +0x8cb40030, 0x8e770008, 0x24040018, 0x26930001, +0x2e0f809, 0xacb30030, 0x8fb10030, 0xa000d17, +0x32220004, 0x1607ff49, 0x8fa90024, 0xa000e28, +0x24150010, 0x2410000e, 0x52b0ff43, 0x24150010, +0xa000e27, 0x24150016, 0x560bff35, 0x32580001, +0x3c0c8008, 0x918e001b, 0x240fffbd, 0x24150010, +0x1cf6824, 0xa18d001b, 0xa000e1d, 0x32580001, +0x8ca30000, 0x663021, 0xc3102b, 0x10400004, +0xaca60000, 0x8c870000, 0x24e50001, 0xac850000, +0x3e00008, 0x0, 0x3c038000, 0x8c6201b8, +0x440fffe, 0x24040800, 0xac6401b8, 0x3e00008, +0x0, 0x3c058008, 0x94a20048, 0x3084ffff, +0x10400019, 0x24840012, 0x94a90048, 0x3c038000, +0x3128ffff, 0x104382a, 0x10e00013, 0x34660180, +0x946d0120, 0x8f8c0004, 0x240b001a, 0x31aaffff, +0x31834000, 0xa0cb000b, 0x10600010, 0x2544fffe, +0x94af0048, 0x31eeffff, 0x1c4282b, 0x14a0000c, +0x8f98000c, 0xa4c40014, 0x8f86000c, 0x34c20001, +0x3e00008, 0xaf82000c, 0x3c078000, 0x24040003, +0x34e20180, 0x3e00008, 0xa044000b, 0x8f98000c, +0x2419fffe, 0x3191024, 0x3e00008, 0xaf82000c, +0x27bdffd8, 0xafb40020, 0xafb3001c, 0xafb20018, +0xafb10014, 0xafbf0024, 0xafb00010, 0x801821, +0x30b3ffff, 0x30d2ffff, 0x30f4ffff, 0x3c118000, +0x8e2201b8, 0x440fffe, 0x36300180, 0x2402021, +0xe000f02, 0xae030000, 0x8f86000c, 0x8f850004, +0x8f830000, 0x30c48000, 0xa613000c, 0xa612000e, +0xa6050010, 0xae030028, 0xa6140008, 0x1080000e, +0x3c0f8000, 0x962c0116, 0x318bfffc, 0x256a0004, +0x1514821, 0x8d284000, 0x3107ffff, 0x14e00007, +0x2414bfff, 0x3c0effff, 0x35cd7fff, 0xcd3024, +0xaf86000c, 0x3c0f8000, 0x2414bfff, 0x35f10180, +0xd49824, 0xa6330026, 0x8df20104, 0xae32002c, +0x3c061000, 0xa1e001b0, 0xade601b8, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x27bdffd8, +0xafb10014, 0x3c118000, 0x804021, 0xafb40020, +0xafb00010, 0x30d4ffff, 0x36300180, 0x2802021, +0xae080000, 0xafb3001c, 0xafb20018, 0x30f3ffff, +0xafbf0024, 0xe000f02, 0x30b2ffff, 0x8f85000c, +0x8f830004, 0x2406bfff, 0xa62024, 0xa612000c, +0xa614000e, 0xa6130008, 0xa6040026, 0xa6030010, +0x3c021000, 0xa22001b0, 0xae2201b8, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x3c028000, +0x34450180, 0x3c048000, 0x8c8301b8, 0x460fffe, +0x24072000, 0x24060002, 0xa4a70008, 0xa0a6000b, +0xa4a00010, 0x3c051000, 0xa08001b0, 0xac8501b8, +0x3e00008, 0x0, 0x3c058000, 0x34a40070, +0x8c8a0000, 0x90a60112, 0x8f840004, 0x27bdfff0, +0x30c300ff, 0x31882, 0x30820100, 0x3821, +0x10400039, 0x24660003, 0x30874000, 0x50e00039, +0x30882000, 0x61080, 0x45c821, 0x8f2f4000, +0x24780004, 0x187080, 0xafaf0000, 0x1c56821, +0x8dac4000, 0xafac0004, 0x94ab0116, 0x3169fffc, +0x1254021, 0x8d054000, 0xafa50008, 0x8fa90008, +0x3021, 0x2821, 0x3c070800, 0x24e70010, +0xa000fc4, 0x24080008, 0x90420000, 0x24a50001, +0x2cad000c, 0x62c821, 0x19c080, 0x3077821, +0x8dee00f0, 0x11a00006, 0xce3026, 0x3a51021, +0x14a8fff5, 0x51a00, 0x5520fff4, 0x90420000, +0x3c048000, 0x34870070, 0x3c050800, 0x8ca53104, +0x8ce30000, 0x2ca80020, 0x11000009, 0x6a3823, +0x55880, 0x3c0c0800, 0x258c0010, 0x16c4821, +0x24aa0001, 0xad2730f8, 0x3c010800, 0xac2a3104, +0xaf860000, 0x24070001, 0xe01021, 0x3e00008, +0x27bd0010, 0x1100fffc, 0x3821, 0x66080, +0x1855821, 0x8d644000, 0x24690004, 0x93880, +0xafa40000, 0xe51821, 0x8c664000, 0xafa00008, +0xa000fb4, 0xafa60004, 0x3c020800, 0x8c420038, +0x27bdffd8, 0xafb40020, 0xafb20018, 0xafbf0024, +0xafb3001c, 0xafb10014, 0xafb00010, 0x3c140800, +0x26940038, 0x14400002, 0x2452ffff, 0x9021, +0x8f850004, 0x30a34000, 0x1060000f, 0x30a98000, +0x3c060020, 0xa62024, 0x1080000b, 0x8f87000c, +0x2408bfff, 0xa82824, 0x34e31000, 0xaf850004, +0x30af2000, 0x15e0000a, 0x3c110004, 0x2413ffbf, +0xa001015, 0x731024, 0x15200062, 0x3c0b0020, +0x30af2000, 0x11e0fff9, 0x8f83000c, 0x3c110004, +0xb18024, 0x1200fff6, 0x2413ffbf, 0x34620040, +0x30b80100, 0x1300000f, 0xaf82000c, 0x3c1f0020, +0xbfc824, 0x13200005, 0x3c0a8000, 0x3c030004, +0xa31024, 0x104000c5, 0x0, 0x9549011e, +0x9548011c, 0x3126ffff, 0x83c00, 0xc72025, +0xaf840000, 0x3c0d8000, 0x95ac010c, 0x30ab1000, +0x11600008, 0x3186ffff, 0x30ae0020, 0x15c00006, +0x24110005, 0x3c101000, 0xb07824, 0x15e00070, +0x3c1f0e00, 0x24110001, 0x30a20100, 0x54400009, +0x3c0c0001, 0x8f830014, 0x54600006, 0x3c0c0001, +0x8f87000c, 0x30e44000, 0x10800097, 0x3c0a1f01, +0x3c0c0001, 0xac3024, 0x14c00069, 0x3c108000, +0x8f84000c, 0x30934000, 0x12600006, 0x3c031000, +0x3c190f00, 0xb9c024, 0x13000088, 0x3c1f8000, +0x3c031000, 0xa31024, 0x1040002c, 0x3c068000, +0x3c070800, 0x8ce70030, 0x14e00070, 0x30884000, +0x30a60100, 0x10c00095, 0x3c0e0f00, 0xae6824, +0x3c0c0200, 0x11ac0091, 0x8f930000, 0x2728024, +0x2147821, 0x91f40004, 0x26920004, 0x1221c0, +0x3c0e8000, 0x95c6010e, 0x36270002, 0x24c20004, +0x3046ffff, 0x24050002, 0xe000f29, 0x0, 0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, -0x3084ffff, 0x3882ffff, 0x30c6ffff, 0x52c00, -0xa62825, 0x451021, 0x45282b, 0x451021, -0x3043ffff, 0x21402, 0x621021, 0x3044ffff, -0x21402, 0x821021, 0x3842ffff, 0x3e00008, -0x3042ffff, 0x0 }; -static u32 bce_TPAT_b06FwData[(0x0/4) + 1] = { 0x0 }; -static u32 bce_TPAT_b06FwRodata[(0x0/4) + 1] = { 0x0 }; -static u32 bce_TPAT_b06FwBss[(0x450/4) + 1] = { 0x0 }; -static u32 bce_TPAT_b06FwSbss[(0x38/4) + 1] = { 0x0 }; -/* static u32 bce_TPAT_b06FwSdata[(0x0/4) + 1] = { 0x0 }; */ +0x8fb10014, 0x8fb00010, 0x1021, 0x3e00008, +0x27bd0028, 0xab5024, 0x1140ff9e, 0x30af2000, +0x8f8c000c, 0x3c0effff, 0x35cd7fff, 0xad2824, +0x35838000, 0xa001005, 0xaf850004, 0x8cd04000, +0x320f0100, 0x11e00039, 0x30b80100, 0x3c100800, +0x8e100024, 0x13000014, 0x32330004, 0x3c020f00, +0xa2f824, 0x3c190200, 0x13f9000f, 0x8f830000, +0x94c9010e, 0x2203821, 0x725824, 0x1745021, +0x91480004, 0x25240004, 0x3086ffff, 0x25140004, +0x1421c0, 0x24050002, 0xe000f29, 0x2412fffe, +0x2128024, 0x3231fffb, 0x24070001, 0x1207006c, +0x32060001, 0x14c0008d, 0x3c0e8000, 0x320f0004, +0x15e00081, 0x3c188000, 0x5660ffca, 0x8fbf0024, +0xe000f88, 0x0, 0xa001066, 0x8fbf0024, +0x3c190dff, 0xbfc024, 0x3733ffff, 0x278882b, +0x5220ff8d, 0x24110001, 0xa001033, 0x24110005, +0x3c0e0800, 0x8dce00d8, 0x960f010e, 0x24040080, +0x25cd0001, 0x31e6ffff, 0x24050002, 0x3c010800, +0xac2d00d8, 0xa001063, 0x24070003, 0x3c1f0800, +0x8fff0024, 0x33f90001, 0x1320ffae, 0x8fbf0024, +0x94c6010e, 0x36270002, 0x2021, 0x24c20004, +0x3046ffff, 0xa001063, 0x24050002, 0x1100ff91, +0x30a60100, 0x3c0b0f00, 0xab5024, 0x3c090100, +0x12a202b, 0x1480ff8b, 0x0, 0x3c058000, +0x94a6010e, 0x36270002, 0x24040080, 0x24c20004, +0x3046ffff, 0xa001063, 0x24050002, 0x97e30116, +0xa00104a, 0x3c031000, 0xaa4824, 0x3c081000, +0x1528ff68, 0x3c0c0001, 0x30cb0200, 0x1560ff66, +0xac3024, 0x3c148000, 0x9692010e, 0x36270002, +0x2021, 0x26450004, 0x30a6ffff, 0xe000f64, +0x24050002, 0xa001066, 0x8fbf0024, 0xe000f97, +0x0, 0xa001026, 0x8f850004, 0x0, +0x3c060800, 0x8cc600d0, 0x51602, 0x3050000f, +0x38df0001, 0x2ff90001, 0x2e03000c, 0x323c024, +0x1700ff6b, 0x1021c0, 0x2608fffc, 0x2d070004, +0x14e00007, 0x3c0e8000, 0x38ca0002, 0x2d490001, +0x1232024, 0x5080000e, 0x53242, 0x3c0e8000, +0x95c6010e, 0x2021, 0xa001060, 0x36270002, +0x32330004, 0x52600001, 0x36310002, 0x3c0c8000, +0x9586010e, 0x2203821, 0xa0010bc, 0x2021, +0x10182b, 0xc35824, 0x15600006, 0x3c058000, +0x1021c0, 0x3c0e8000, 0x95c6010e, 0xa001060, +0x36270002, 0x94ad010e, 0x2021, 0x24050002, +0x25ac0004, 0x3186ffff, 0xe000f29, 0x3227fffb, +0xa00110e, 0x1021c0, 0x9710010e, 0x2203821, +0x24040100, 0x26110004, 0x3226ffff, 0xe000f29, +0x24050002, 0xa00109b, 0x0, 0x95c5010e, +0x2203821, 0x2021, 0x24ad0004, 0x31a6ffff, +0xe000f29, 0x24050002, 0xa001098, 0x3231fffb, +0x3c028000, 0x34450180, 0x3c048000, 0x8c8301b8, +0x460fffe, 0x0, 0x8c8a0148, 0x24080002, +0xa4c02, 0xa4a90008, 0xa0a8000b, 0x8c870148, +0xa4a70010, 0x8c860144, 0xaca60024, 0x3c051000, +0xa08001b0, 0x3e00008, 0xac8501b8, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x3c10600c, 0x8e1f5000, +0x2402ff7f, 0x3c098000, 0x3e2c824, 0x3738380c, +0x240f0003, 0xae185000, 0xad2f0008, 0x3c010800, +0xac200020, 0xe001526, 0x0, 0x3c0effff, +0x3c0a0400, 0x3c096000, 0x3546000c, 0x35c50806, +0xad261948, 0x3c0a6016, 0xad25194c, 0x8d2c1980, +0x8d4d0000, 0x3c080010, 0x35038051, 0x3c046000, +0x358b0200, 0x1ae3824, 0x3c025353, 0xad2b1980, +0x34842020, 0xae03537c, 0x3c050800, 0x24a5786c, +0x2406000a, 0x10e20009, 0x35437c00, 0x8c700078, +0x8c68007c, 0x8fbf0014, 0xaf900008, 0x8fb00010, +0x27bd0018, 0xa001381, 0xaf880010, 0x8d470004, +0x8fbf0014, 0xe91821, 0x8c700078, 0x8c68007c, +0xaf900008, 0x8fb00010, 0x27bd0018, 0xa001381, +0xaf880010, 0x27bdffe8, 0xafb00010, 0xafbf0014, +0x3c108000, 0x8e034000, 0x3402ffff, 0x3c040800, +0x248400f0, 0x3c050800, 0x24a500ec, 0x10620017, +0x0, 0x8e074000, 0x3c040800, 0x248400e8, +0x3c050800, 0x24a500e4, 0x30e60100, 0x14c0000f, +0x0, 0x8e0a4000, 0x8f890008, 0x3c040800, +0x248400e0, 0x3c050800, 0x24a500dc, 0x11490014, +0x3c0d8000, 0x95a6010e, 0x8fbf0014, 0x8fb00010, +0x30c6ffff, 0xa000ef1, 0x27bd0018, 0x9608010e, +0xe000ef1, 0x3106ffff, 0x9606010e, 0x3c040800, +0x248431cc, 0x3c050800, 0x24a531c8, 0x8fbf0014, +0x8fb00010, 0x30c6ffff, 0xa000ef1, 0x27bd0018, +0x8e0c4004, 0x8f8b0010, 0x158bffea, 0x3c0d8000, +0x9606010e, 0x3c040800, 0x248431bc, 0x3c050800, +0x24a531b8, 0xa0011a5, 0x8fbf0014, 0x27bdffe8, +0x3c058000, 0xafbf0014, 0xafb00010, 0x8cb00128, +0xacb00020, 0x8ca30104, 0x8ca40100, 0xaf830004, +0xe000efb, 0xaf84000c, 0xe00117a, 0x0, +0x3c020800, 0x8c4200c0, 0x10400026, 0x8f890004, +0x3c070800, 0x8ce700c4, 0x24e60001, 0x3c010800, +0xac2600c4, 0x3c1f8000, 0x8ff90124, 0x3c186020, +0xaf190014, 0x0, 0x3c068000, 0x3c024000, +0xacc20138, 0x0, 0x12000013, 0x8fbf0014, +0x260d0140, 0x260f0080, 0x2419ff80, 0x1b97024, +0x1f9c024, 0x185940, 0x31ec007f, 0xe4940, +0x31aa007f, 0x3c082000, 0x35050002, 0x16c3825, +0x12a2025, 0x858025, 0xe51825, 0xacc30830, +0xacd00830, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x3c0a0010, 0x12a4024, 0x1100000f, +0x8f8e000c, 0x240fbfff, 0x1cf6824, 0x11a00007, +0x0, 0xe00126a, 0x0, 0x1040ffdb, +0x3c068000, 0xa0011cb, 0x3c1f8000, 0xe000cd1, +0x0, 0xa0011f4, 0x0, 0x3c0c0800, +0x8d8c0020, 0x258b0001, 0x3c010800, 0xac2b0020, +0xe000feb, 0x2021, 0xa0011f4, 0x0, +0x27bdffe8, 0x3c028000, 0xafbf0010, 0x8c460140, +0x3c037000, 0x3c054000, 0xac460020, 0x8c440148, +0x832024, 0x10850013, 0xa4102b, 0x1040000b, +0x3c072000, 0x3c086000, 0x10880017, 0x0, +0x3c0a4000, 0x3c098000, 0xad2a0178, 0x0, +0x8fbf0010, 0x3e00008, 0x27bd0018, 0x5487fff9, +0x3c0a4000, 0xe00112d, 0x0, 0xa001216, +0x3c0a4000, 0xe001290, 0x0, 0x3c0a4000, +0x3c098000, 0xad2a0178, 0x0, 0x8fbf0010, +0x3e00008, 0x27bd0018, 0xe001d47, 0x0, +0xa001216, 0x3c0a4000, 0x27bdffe0, 0xafb20018, +0x3c128000, 0xafb10014, 0xafbf001c, 0xafb00010, +0xe001140, 0x36510070, 0x8e270000, 0xaf870018, +0x8e280000, 0x3c0c0800, 0x8d8c00fc, 0x3c090800, +0x8d2900f8, 0x1076823, 0x18d2821, 0x5021, +0xad302b, 0x12a1821, 0x662021, 0x3c010800, +0xac2500fc, 0x3c010800, 0xac2400f8, 0x8e500000, +0x32020003, 0x1040ffee, 0x1003821, 0xaf880018, +0x3c040800, 0x8c8400fc, 0x3c190800, 0x8f3900f8, +0x8e230000, 0xf821, 0x33f7821, 0x682823, +0x857021, 0x1c5c02b, 0x1f84021, 0x32070001, +0x3c010800, 0xac2e00fc, 0x3c010800, 0xac2800f8, +0x14e00008, 0x0, 0x32060002, 0x10c0ffd6, +0x0, 0xe001205, 0x0, 0xa001237, +0x0, 0xe0011b4, 0x0, 0xa001260, +0x32060002, 0x3c038000, 0x8c640100, 0x3082003e, +0x14400008, 0x0, 0xac600048, 0x8c660100, +0x30c507c0, 0x10a00005, 0x0, 0xac60004c, +0xac600050, 0x3e00008, 0x24020001, 0xac600054, +0xac600040, 0x8c680100, 0x31073800, 0x10e0fff9, +0x0, 0x24020001, 0x3e00008, 0xac600044, +0x3c039000, 0x34620001, 0x822025, 0x3c038000, +0xac640020, 0x8c650020, 0x4a0fffe, 0x0, +0x3e00008, 0x0, 0x3c028000, 0x34430001, +0x832025, 0x3e00008, 0xac440020, 0x27bdffd8, +0x3c048000, 0xafb20018, 0xafb00010, 0xafbf0024, +0xafb40020, 0xafb3001c, 0xafb10014, 0x8c930140, +0x8c910148, 0x2402000e, 0x34900180, 0x119402, +0x324300ff, 0x10620045, 0x2242824, 0x2866000f, +0x10c00017, 0x286a0037, 0x24070006, 0x10670099, +0x28680007, 0x51000073, 0x24040009, 0x10600082, +0x3c068000, 0x24090001, 0x14690014, 0x0, +0x10a000ae, 0x3c038000, 0x8c900144, 0x24140002, +0x3c010800, 0xa03479d8, 0x3c010800, 0xac3379e0, +0x3c010800, 0xac3079dc, 0xa0012f5, 0x8fbf0024, +0x15400042, 0x286b0035, 0x240d0038, 0x106d0044, +0x240e0080, 0x106e00a2, 0x3c038000, 0x0, +0xd, 0x0, 0x240004c0, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0xe001281, +0x2602021, 0x92830005, 0x2602021, 0x346e0004, +0xe00128b, 0xa28e0005, 0x928d0005, 0x31ac0004, +0x15800006, 0x3c038000, 0x0, 0xd, +0x0, 0x24000468, 0x3c038000, 0x8c6f01b8, +0x5e0fffe, 0x24180005, 0x3c141000, 0xae130000, +0xa218000b, 0xa06001b0, 0xac7401b8, 0x3c038000, +0x8c7901b8, 0x720fffe, 0x241f0002, 0xae000000, +0xae130004, 0xa6120008, 0xa21f000a, 0xa21f000b, +0xa6110010, 0xae000024, 0x8c710144, 0xae110028, +0x3c121000, 0xa06001b0, 0xac7201b8, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0x11600005, +0x3c048000, 0x240c001f, 0x146cffc0, 0x0, +0x3c048000, 0x8c8201b8, 0x440fffe, 0x0, +0xae130000, 0x24070001, 0x3c131000, 0x24060002, +0xae000004, 0x8fbf0024, 0xa6120008, 0x8fb40020, +0xa207000a, 0x8fb20018, 0xa206000b, 0xa6110010, +0xae000024, 0x8fb10014, 0xae000028, 0xa08001b0, +0x8fb00010, 0xac9301b8, 0x8fb3001c, 0x3e00008, +0x27bd0028, 0x1064ffc9, 0x2405000b, 0x1465ffa3, +0x3225ffff, 0x54a0ffc6, 0x3c038000, 0x8f94ff18, +0x928b0005, 0x316a0004, 0x1140ffa8, 0x0, +0x0, 0xd, 0x0, 0x24000476, +0xa0012c5, 0x8fbf0024, 0x8cc301b8, 0x460fffe, +0x0, 0xae130000, 0xae000004, 0x24130001, +0xa6120008, 0x24120002, 0xa213000a, 0xa212000b, +0xa6110010, 0x8cd10144, 0x3c0f1000, 0xae110024, +0xae000028, 0xa0c001b0, 0xaccf01b8, 0xa0012f5, +0x8fbf0024, 0x3c038000, 0x8c7901b8, 0x720fffe, +0x1021, 0x3c040800, 0x908479d8, 0xae130000, +0x10800003, 0x34870001, 0x3c020800, 0x8c4279e0, +0x24060002, 0xae020004, 0xa6120008, 0x3c028000, +0xa207000a, 0xa206000b, 0xa6110010, 0x8c5f0144, +0x1021, 0xae1f0024, 0x10800003, 0x3c038000, +0x3c020800, 0x8c4279dc, 0xae020028, 0x3c010800, +0xa02079d8, 0xa0012f2, 0x3c121000, 0x8c7801b8, +0x700fffe, 0x241f0002, 0xa0012e8, 0x0, +0x8c6801b8, 0x500fffe, 0x24040002, 0xa204000b, +0xa6120008, 0xa6110010, 0x8c690144, 0xa6090012, +0xa0012f2, 0x3c121000, 0x27bdffe8, 0xafbf0010, +0xe000efb, 0x0, 0x3c028000, 0x8fbf0010, +0x2021, 0xac400180, 0xa000feb, 0x27bd0018, +0x3084ffff, 0x30a5ffff, 0x10800007, 0x1821, +0x30820001, 0x10400002, 0x42042, 0x651821, +0x1480fffb, 0x52840, 0x3e00008, 0x601021, +0x10c00007, 0x0, 0x8ca20000, 0x24c6ffff, +0x24a50004, 0xac820000, 0x14c0fffb, 0x24840004, +0x3e00008, 0x0, 0x10a00008, 0x24a3ffff, +0xac860000, 0x0, 0x0, 0x2402ffff, +0x2463ffff, 0x1462fffa, 0x24840004, 0x3e00008, +0x0, 0x27bdffe0, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf001c, 0x9486000c, 0xa09021, +0x24900014, 0x61b02, 0x31080, 0x448821, +0x3021, 0xa02021, 0xe00138b, 0x24050005, +0x211202b, 0x10800012, 0x1021, 0x92030000, +0x2c650009, 0x50a00009, 0x92020001, 0x34880, +0x3c0a0800, 0x254a78a0, 0x12a4021, 0x8d070000, +0xe00008, 0x0, 0x92020001, 0x2028021, +0x211202b, 0x5480fff2, 0x92030000, 0x1021, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0xa0013a5, 0x26100001, +0x920c0001, 0x240b000c, 0x158b0040, 0x2307023, +0x2dcd000a, 0x15a0003d, 0x26080006, 0x8e430000, +0x26020002, 0x34640100, 0xae440000, 0x921f0002, +0x90590001, 0x904e0002, 0x904b0003, 0x1f7e00, +0x19c400, 0x1f86025, 0xe6a00, 0x18d5025, +0x14b4825, 0xae490004, 0x92070006, 0x91050001, +0x91040002, 0x91190003, 0x71e00, 0x53400, +0x66f825, 0x41200, 0x3e2c025, 0x3197825, +0x2610000a, 0xa0013a5, 0xae4f0008, 0x921f0001, +0x26040002, 0x24100002, 0x57f00001, 0x2202021, +0xa0013a5, 0x808021, 0x920e0001, 0x240d0003, +0x15cdffcb, 0x24020001, 0x8e590000, 0x92180002, +0x26100003, 0x372f0008, 0xa2580010, 0xa0013a5, +0xae4f0000, 0x92050001, 0x24060004, 0x14a6ffc0, +0x24020001, 0x920c0002, 0x920b0003, 0x8e490000, +0xc5200, 0x14b4025, 0x35270004, 0x26100004, +0xae48000c, 0xa0013a5, 0xae470000, 0xa0013b9, +0x24020001, 0x27bdffe8, 0xafbf0014, 0xafb00010, +0xe001281, 0x808021, 0x3c048008, 0x34830080, +0x90650025, 0x2002021, 0x34a20020, 0xe00128b, +0xa0620025, 0x2002021, 0x8fbf0014, 0x8fb00010, +0xa000c9d, 0x27bd0018, 0x3c038000, 0x27bdfff8, +0x34620180, 0xafa20000, 0x308c00ff, 0x30ad00ff, +0x30ce00ff, 0x3c0b8000, 0x8d6401b8, 0x480fffe, +0x0, 0x8fa90000, 0x8d680128, 0x8faa0000, +0x8fa70000, 0x8fa40000, 0x24050001, 0x24020002, +0xa085000a, 0x8fa30000, 0x35994000, 0x3c051000, +0xa062000b, 0x8fb80000, 0x8fac0000, 0x8fa60000, +0x8faf0000, 0x27bd0008, 0xad280000, 0xad400004, +0xad800024, 0xacc00028, 0xa4f90008, 0xa70d0010, +0xa5ee0012, 0xa16001b0, 0x3e00008, 0xad6501b8, +0x3c068008, 0x27bdffe8, 0x34c50080, 0xafbf0010, +0x90a70009, 0x24020012, 0x30e300ff, 0x1062000b, +0x803021, 0x8ca80050, 0x882023, 0x4800008, +0x8fbf0010, 0x8caa0034, 0x24040039, 0x2821, +0xca4823, 0x5200005, 0x24060012, 0x8fbf0010, +0x24020001, 0x3e00008, 0x27bd0018, 0xe001417, +0x0, 0x8fbf0010, 0x24020001, 0x3e00008, +0x27bd0018, 0x27bdffc8, 0xafb1002c, 0xa08821, +0xafb20030, 0x27a50010, 0x809021, 0x2202021, +0xafbf0034, 0xe001396, 0xafb00028, 0x14400081, +0x3c0c8008, 0x918b0011, 0x918a0012, 0x35860080, +0x8cc80054, 0x316500ff, 0x314900ff, 0xa92821, +0xa8382b, 0x14e0004f, 0x8fa30010, 0x94df005c, +0x30660004, 0x10c00056, 0x33e4ffff, 0x8fa2001c, +0x82102b, 0x54400005, 0x2c830080, 0x30670004, +0x14e0007e, 0x24040218, 0x2c830080, 0x10600002, +0x808021, 0x24100080, 0xe001281, 0x2402021, +0x3c038008, 0x34660080, 0x24070001, 0xacc7000c, +0x90c20008, 0x106040, 0x34670100, 0x305f007f, +0xa0df0008, 0x8e390004, 0x27380001, 0xacd80030, +0xa4d0005c, 0x8cce003c, 0x962f000e, 0x1cf6821, +0xaccd0020, 0x8ccb003c, 0x16c5021, 0xacca001c, +0x8e290004, 0xace90000, 0x8e250008, 0xace50004, +0x8fa80010, 0x31040008, 0x5480002f, 0x93a60020, +0xa0c0004e, 0x90c5004e, 0x2408ffdf, 0x3c188008, +0xa0e50008, 0x90c40008, 0x370c0080, 0x24090050, +0x888024, 0xa0d00008, 0x8e390008, 0xad990038, +0x8f0e0014, 0x8d8f0030, 0x1cf6821, 0xad8d0034, +0x918b0000, 0x316a00ff, 0x11490029, 0x26480100, +0xe00128b, 0x2402021, 0x24040038, 0x2821, +0xe001417, 0x2406000a, 0x8fbf0034, 0x8fb20030, +0x8fb1002c, 0x8fb00028, 0x24020001, 0x3e00008, +0x27bd0038, 0x94d8005c, 0x8cd00054, 0x330effff, +0x2057823, 0x1cf682b, 0x15a0ffac, 0x8fa30010, +0x8cd90054, 0x30660004, 0x14c0ffac, 0x3252023, +0xa001476, 0x2c820218, 0x3c188008, 0x370c0080, +0xa0e60008, 0x8e390008, 0x24090050, 0xad990038, +0x8f0e0014, 0x8d8f0030, 0x1cf6821, 0xad8d0034, +0x918b0000, 0x316a00ff, 0x1549ffd9, 0x26480100, +0x2406ff80, 0x1062824, 0x3c048000, 0xac850028, +0x8e270008, 0x3103007f, 0x3c10800c, 0x70f821, +0xafe700d0, 0x8e220008, 0xaf9f0024, 0xa0014b1, +0xafe200d4, 0x8e230008, 0x3c048008, 0x34820080, +0xac430054, 0x2402021, 0xe001406, 0xac400030, +0x24040038, 0x2405008d, 0xe001417, 0x24060012, +0x8fbf0034, 0x8fb20030, 0x8fb1002c, 0x8fb00028, +0x24020001, 0x3e00008, 0x27bd0038, 0xa00147b, +0x8fa4001c, 0x27bdffe8, 0xafbf0010, 0x90a6000d, +0x30c70010, 0x10e0000c, 0x804021, 0x3c028008, +0x8c440004, 0x8ca30008, 0x10640008, 0x30c90004, +0x30c50004, 0x10a0001c, 0x8fbf0010, 0x24020001, +0x3e00008, 0x27bd0018, 0x30c90004, 0x11200010, +0x30cb0012, 0x10e0fff9, 0x8fbf0010, 0x3c088008, +0x8ca70008, 0x8d060004, 0x14e6fff5, 0x24020001, +0x24040038, 0x2405008d, 0xe001417, 0x24060012, +0x8fbf0010, 0x24020001, 0x3e00008, 0x27bd0018, +0x240a0012, 0x156affe9, 0x8fbf0010, 0x1002021, +0xa00145a, 0x27bd0018, 0x2021, 0xa000cb7, +0x27bd0018, 0x3c050800, 0x24a554dc, 0x3c040800, +0x248472b8, 0x3c020800, 0x244254e4, 0x24030006, +0x3c010800, 0xac2579e4, 0x3c010800, 0xac2479e8, +0x3c010800, 0xac2279ec, 0x3c010800, 0xa02379f0, +0x3e00008, 0x0, 0x3e00008, 0x24020001, +0x3c028000, 0x308800ff, 0x34470180, 0x3c068000, +0x8cc301b8, 0x460fffe, 0x0, 0x8cc90128, +0x2419ff80, 0x3c0e800a, 0x25380100, 0x3197824, +0x330d007f, 0xaccf0024, 0x1ae2021, 0xace90000, +0x948c00da, 0x350a6000, 0x3c051000, 0x318bffff, +0x24080002, 0x24020001, 0xaceb0004, 0xa4ea0008, +0xa0e8000b, 0xace00024, 0xaf890054, 0xa0c001b0, +0xacc501b8, 0x3e00008, 0xaf840024, 0x8c990004, +0x8f8d0024, 0x2409ffbf, 0x325c023, 0xac980004, +0x91af00c4, 0x2403ffef, 0x31ee007f, 0xa1ae00c4, +0x8c8c0020, 0x938b0030, 0x8f860024, 0x358a0002, +0xaf8b0048, 0xa7800044, 0xac8a0020, 0xa4c000ac, +0x90c800c4, 0x1093824, 0xa0c700c4, 0x8f840024, +0xac8000dc, 0x908500c4, 0xa31024, 0x3e00008, +0xa08200c4, 0x3c028000, 0x34450180, 0x3c048000, +0x8c8301b8, 0x460fffe, 0x8f890054, 0x24076083, +0x24060002, 0xaca90000, 0x8c880124, 0xaca80004, +0xa4a70008, 0xa0a6000b, 0x3c051000, 0xa08001b0, +0x3e00008, 0xac8501b8, 0x93880030, 0x8f890048, +0x8f820024, 0x30c600ff, 0x1093823, 0x30e900ff, +0x1221821, 0x30a500ff, 0x24680078, 0x10c00002, +0x1243821, 0x803821, 0x30e40003, 0x14800003, +0x30aa0003, 0x1140000d, 0x312b0003, 0x10a00009, +0x1021, 0x90ed0000, 0x244e0001, 0x31c200ff, +0x45602b, 0xa10d0000, 0x24e70001, 0x1580fff9, +0x25080001, 0x3e00008, 0x0, 0x1560fff3, +0x0, 0x10a0fffb, 0x1021, 0x8cf80000, +0x24590004, 0x332200ff, 0x45782b, 0xad180000, +0x24e70004, 0x15e0fff9, 0x25080004, 0x3e00008, +0x0, 0x93850030, 0x93880040, 0x8f870048, +0x43200, 0x3103007f, 0xe5102b, 0x30c47f00, +0x1040000f, 0x642825, 0x8f840024, 0x3c098000, +0x8c8a00dc, 0xad2a00a4, 0x3c038000, 0xa35825, +0xac6b00a0, 0x8c6c00a0, 0x580fffe, 0x0, +0x8c6d00ac, 0xac8d00dc, 0x3e00008, 0x8c6200a8, +0xa0015bb, 0x8f840024, 0x93880041, 0x3c028000, +0x805021, 0x310300fe, 0xa3830041, 0x30abffff, +0x30cc00ff, 0x30e7ffff, 0x34480180, 0x3c098000, +0x8d2401b8, 0x480fffe, 0x8f8d0054, 0x24180016, +0xad0d0000, 0x8d220124, 0x8f8d0024, 0xad020004, +0x8d590020, 0xa5070008, 0x240201b4, 0xa119000a, +0xa118000b, 0x952f0120, 0x8d4e0008, 0x8d470004, +0x97830044, 0x8d590024, 0x1cf3021, 0xc72821, +0xa32023, 0x2418ffff, 0xa504000c, 0xa50b000e, +0xa5020010, 0xa50c0012, 0xad190018, 0xad180024, +0x95af00d8, 0x3c0b1000, 0x2407fff7, 0x31eeffff, +0xad0e0028, 0x8dac0074, 0xad0c002c, 0xad000030, +0xad2b01b8, 0x8d460020, 0xc72824, 0x3e00008, +0xad450020, 0x8f880024, 0x805821, 0x30e7ffff, +0x910900c6, 0x3c028000, 0x30a5ffff, 0x312400ff, +0x41a00, 0x675025, 0x30c600ff, 0x34470180, +0x3c098000, 0x8d2c01b8, 0x580fffe, 0x8f820054, +0x240f0017, 0xace20000, 0x8d390124, 0xacf90004, +0x8d780020, 0xa4ea0008, 0x241901b4, 0xa0f8000a, +0xa0ef000b, 0x95230120, 0x8d6e0008, 0x8d6d0004, +0x97840044, 0x1c35021, 0x14d6021, 0x1841023, +0xa4e2000c, 0xa4e5000e, 0xa4f90010, 0xa4e60012, +0xace00014, 0x8d780024, 0x240dffff, 0xacf80018, +0x8d0f006c, 0xacef001c, 0x8d0e0068, 0x3c0f1000, +0xacee0020, 0xaced0024, 0x950a00ae, 0x240dfff7, +0x3146ffff, 0xace60028, 0x950c0070, 0x95040072, +0x31837fff, 0x3ca00, 0x3082ffff, 0x322c021, +0xacf8002c, 0xace00030, 0xad2f01b8, 0x950e0072, +0x8d6a0020, 0xae3021, 0x14d2824, 0xa5060072, +0x3e00008, 0xad650020, 0x3c028000, 0x34460180, +0x3c058000, 0x8ca301b8, 0x460fffe, 0x24090018, +0xacc40000, 0xa0c9000b, 0x8f880024, 0x3c041000, +0x950700ae, 0xa4c70010, 0xacc00030, 0x3e00008, +0xaca401b8, 0x3c028000, 0x34450180, 0x3c048000, +0x8c8301b8, 0x460fffe, 0x8f8a002c, 0x24060019, +0x9549001c, 0x3128ffff, 0x839c0, 0xaca70000, +0xa0a6000b, 0x3c051000, 0xa08001b0, 0x3e00008, +0xac8501b8, 0x8f870034, 0x804821, 0x3c088000, +0x30c400ff, 0x8d0201b8, 0x440fffe, 0x8f860054, +0x93830050, 0x34996000, 0xaca60000, 0xa0a30005, +0x8ce20010, 0x240f0002, 0x3c061000, 0xa4a20006, +0xa4b90008, 0x8d380020, 0x2403fff7, 0xa0b8000a, +0xa0af000b, 0x8cee0000, 0xacae0010, 0x8ced0004, +0xacad0014, 0x8cec001c, 0xacac0024, 0x8ceb0020, +0xacab0028, 0x8cea002c, 0xacaa002c, 0x8d270024, +0xaca70018, 0xa10001b0, 0xad0601b8, 0x8d250020, +0xa32024, 0x3e00008, 0xad240020, 0x93850050, +0x24030001, 0x27bdffe8, 0xa33004, 0x2ca20020, +0xafb00010, 0xafbf0014, 0xc01821, 0x10400013, +0x2410fffe, 0x3c070800, 0x8ce73190, 0xe61024, +0x3c088000, 0x35050180, 0x14400005, 0x24060084, +0x8f890024, 0x240a0004, 0x2410ffff, 0xa12a00ec, +0xe00165a, 0x0, 0x2001021, 0x8fbf0014, +0x8fb00010, 0x3e00008, 0x27bd0018, 0x3c060800, +0x8cc63194, 0xa00168d, 0xc31024, 0x8f87002c, +0x27bdffe0, 0xafb20018, 0xafb10014, 0xafb00010, +0xafbf001c, 0x30d000ff, 0x90e6000d, 0xa08821, +0x809021, 0x30c5007f, 0xa0e5000d, 0x8f850024, +0x8e230018, 0x8ca200c0, 0x1062002e, 0x240a000e, +0xe001680, 0xa38a0050, 0x2409ffff, 0x10490022, +0x2404ffff, 0x52000020, 0x2021, 0x8e260000, +0x3c0c0010, 0xcc5824, 0x15600039, 0x3c0e0008, +0xce6824, 0x55a0003f, 0x2402021, 0x3c180002, +0xd88024, 0x1200001f, 0x3c0a0004, 0x8f87002c, +0x8ce20014, 0x8ce30010, 0x8ce50014, 0x43f823, +0x3e5c82b, 0x13200005, 0x2402021, 0x8e24002c, +0x8cf10010, 0x10910031, 0x2402021, 0x24020012, +0xa3820050, 0xe001680, 0x2412ffff, 0x10520002, +0x2404ffff, 0x2021, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0020, 0x90a800c4, 0x35040020, 0xa0016b6, +0xa0a400c4, 0xca4824, 0x1520000b, 0x8f8b002c, +0x8f8d002c, 0x8dac0010, 0x1580000b, 0x2402021, +0x8e2e002c, 0x51c0ffec, 0x2021, 0x2402021, +0xa0016d1, 0x24020017, 0x8d660010, 0x50c0ffe6, +0x2021, 0x2402021, 0xa0016d1, 0x24020011, +0x2402021, 0x24020015, 0xe001680, 0xa3820050, +0x240fffff, 0x104fffdc, 0x2404ffff, 0xa0016c0, +0x8e260000, 0xa0016f7, 0x24020014, 0x3c080004, +0xc83824, 0x50e0ffd4, 0x2021, 0x2402021, +0xa0016d1, 0x24020013, 0x8f860024, 0x27bdffe0, +0xafb10014, 0xafbf0018, 0xafb00010, 0x90c300c4, +0x30a500ff, 0x30620020, 0x10400008, 0x808821, +0x8ccb00c0, 0x2409ffdf, 0x256a0001, 0xacca00c0, +0x90c800c4, 0x1093824, 0xa0c700c4, 0x14a00040, +0x3c0c8000, 0x8f840024, 0x908700c4, 0x2418ffbf, +0x2406ffef, 0x30e3007f, 0xa08300c4, 0x979f0044, +0x8f820048, 0x8f8d0024, 0x3e2c823, 0xa7990044, +0xa5a000ac, 0x91af00c4, 0x1f87024, 0xa1ae00c4, +0x8f8c0024, 0xa18000c7, 0x8f8a0024, 0xa5400072, +0xad4000dc, 0x914500c4, 0xa65824, 0xa14b00c4, +0x8f900020, 0x8f840048, 0x97860044, 0x2042821, +0x10c0000f, 0xaf850020, 0xa3800040, 0x3c078000, +0x8e2c0008, 0x94ed0120, 0x8e2b0004, 0x18d5021, +0x14b8021, 0x2062023, 0x3086ffff, 0x30c8000f, +0x39090001, 0x31310001, 0x16200009, 0xa3880040, +0x93860030, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x27bd0020, 0xaf85004c, 0x3e00008, 0xaf860048, +0xc87023, 0x8fbf0018, 0x93860030, 0x8fb10014, +0x8fb00010, 0x34ef0c00, 0x10f2821, 0x27bd0020, +0xacee0084, 0xaf85004c, 0x3e00008, 0xaf860048, +0x35900180, 0x2002821, 0xe00165a, 0x24060082, +0x8f840024, 0x908600c4, 0x30c50040, 0x50a0ffba, +0xa3800050, 0x8f850034, 0x3c068000, 0x8ccd01b8, +0x5a0fffe, 0x8f890054, 0x24086082, 0x24070002, +0xae090000, 0xa6080008, 0xa207000b, 0x8ca30008, +0x3c0e1000, 0xae030010, 0x8ca2000c, 0xae020014, +0x8cbf0014, 0xae1f0018, 0x8cb90018, 0xae190024, +0x8cb80024, 0xae180028, 0x8caf0028, 0xae0f002c, +0xa0c001b0, 0xacce01b8, 0xa00171b, 0xa3800050, +0x8f8a0024, 0x27bdffe0, 0xafb10014, 0xafb00010, +0x8f880048, 0xafbf0018, 0x93890028, 0x954200ac, +0x30d100ff, 0x109182b, 0x808021, 0x30ac00ff, +0x3047ffff, 0x5821, 0x14600003, 0x310600ff, +0x1203021, 0x1095823, 0x97830044, 0x68202b, +0x1480001b, 0x0, 0x10680043, 0x240a0001, +0x118a0048, 0x34e70880, 0x3165ffff, 0xe0015fa, +0x2002021, 0xe00163b, 0x8f840054, 0x8f840024, +0x948d0070, 0x25ac0001, 0xa48c0070, 0x948b0070, +0x3c060800, 0x8cc63188, 0x31677fff, 0x10e6004f, +0x0, 0x2002021, 0x2202821, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0xa001707, 0x27bd0020, +0x914400c4, 0x2406ff80, 0x868825, 0xa15100c4, +0x97840044, 0x3088ffff, 0x1100001c, 0x93890028, +0x8f8e0024, 0x2419efff, 0x8bf823, 0x95d800ac, +0x168682b, 0x33e900ff, 0x3197824, 0xa5cf00ac, +0x51a0002a, 0x1005821, 0x8e050020, 0x2408fffb, +0x24030001, 0xa81024, 0xae020020, 0x11830025, +0x34e78000, 0x2002021, 0x3165ffff, 0xe0015fa, +0x1203021, 0x978b0044, 0x8f870048, 0xa7800044, +0xeb8023, 0xaf900048, 0x93890028, 0x8f8c0024, +0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x27bd0020, +0x3e00008, 0xa18900c7, 0x8e080020, 0x2409fffb, +0x34e78000, 0x1092824, 0xae050020, 0x158affba, +0x34e70880, 0x2002021, 0xe0015c7, 0x3165ffff, +0x2002021, 0x2202821, 0x8fbf0018, 0x8fb10014, +0x8fb00010, 0xa001707, 0x27bd0020, 0xa0017bf, +0x4821, 0x2002021, 0x3165ffff, 0xe0015c7, +0x1203021, 0x978b0044, 0x8f870048, 0xa7800044, +0xeb8023, 0xa0017cf, 0xaf900048, 0x94890070, +0x240a8000, 0x12a4024, 0xa4880070, 0x90850070, +0x90990070, 0x30a200ff, 0x219c2, 0x3f827, +0x1fc1c0, 0x332f007f, 0x1f87025, 0xa08e0070, +0xa0017a7, 0x2002021, 0x8f880024, 0x24030001, +0x910a0078, 0x910500c7, 0x25090078, 0x3147003f, +0x24e6ffe0, 0xc31804, 0x2cc20020, 0x30670019, +0xa3850028, 0x1040001a, 0xaf890034, 0x3c0a8000, +0x354b0002, 0x24050001, 0x24060001, 0x14e00016, +0x6b1024, 0x2821, 0x1440000f, 0x30630020, +0x1060000f, 0x24050001, 0x8d060074, 0x8d190074, +0x2403ff80, 0xc31024, 0x27940, 0x3338007f, +0x1f86825, 0x3c0e1000, 0x1ae6025, 0xad4c0830, +0x91280001, 0x31060001, 0xa00177d, 0x0, +0x3e00008, 0x0, 0x8d0f0074, 0x8d0d0074, +0x2418ff80, 0x1f87024, 0xe4140, 0x31ac007f, +0x10c5025, 0x3c0b1000, 0x14b3825, 0x3c098000, +0xa00177d, 0xad270830, 0x27bdffd8, 0xafb00010, +0x8f900034, 0xafb40020, 0xafb10014, 0xafbf0024, +0xafb3001c, 0xafb20018, 0x8e050010, 0x3c020800, +0x8c4231b0, 0x8f860038, 0x30a73fff, 0xe2182b, +0x8cd20014, 0x808821, 0x8cd30020, 0x10600007, +0xa021, 0x90cb000d, 0x240aff80, 0x14b4824, +0x312800ff, 0x1500000c, 0x56382, 0x2202021, +0x2411000d, 0xa3910050, 0x8fbf0024, 0x8fb40020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0xa001680, 0x27bd0028, 0x31850003, 0x54a0fff4, +0x2202021, 0x94cf001c, 0x8f8e0024, 0x8e070028, +0xa5cf00d8, 0x8ccd0010, 0x24d3023, 0x10e6005c, +0x2402001f, 0xe001680, 0xa3820050, 0x241fffff, +0x105f004e, 0x2404ffff, 0x8f83003c, 0x8f88002c, +0x2639821, 0x8d090010, 0x1231023, 0x8f83001c, +0xad020010, 0xad130020, 0x8c670074, 0xf3202b, +0x14800062, 0x2202021, 0x8f860038, 0x8e0c0024, +0x8cc50024, 0x11850007, 0x2202021, 0x240e001c, +0xe001680, 0xa38e0050, 0x240dffff, 0x104d0037, +0x2404ffff, 0x8f84002c, 0x8c980024, 0x270f0001, +0xac8f0024, 0x12720044, 0x8f99001c, 0x8f320074, +0x12530041, 0x3c0a0080, 0x8e090000, 0x12a1024, +0x1440003a, 0x0, 0x8e040014, 0x2412ffff, +0x10920006, 0x240b001b, 0x2202021, 0xe001680, +0xa38b0050, 0x10520021, 0x2404ffff, 0x8e030000, +0x3c0c0001, 0x6c2824, 0x10a00013, 0x3c060080, +0x66a024, 0x16800009, 0x2002821, 0x2202021, +0x240e001a, 0xe001680, 0xa38e0050, 0x240dffff, +0x104d0012, 0x2404ffff, 0x2002821, 0x2202021, +0xe0016a0, 0x24060001, 0x2410ffff, 0x2404ffff, +0x1050000a, 0x24140001, 0x8f8f002c, 0x2202021, +0x2803021, 0x95f20034, 0x24050001, 0x26580001, +0xe00177d, 0xa5f80034, 0x2021, 0x8fbf0024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x801021, 0x3e00008, 0x27bd0028, +0x8f83003c, 0xe3c821, 0x259c02b, 0x1300ffa8, +0x8f88002c, 0xa001866, 0x24020018, 0xac800020, +0xa001890, 0x8e040014, 0x8e1f0000, 0x3c070080, +0x3e79824, 0x1660fff9, 0x2408001a, 0x2202021, +0xe001680, 0xa3880050, 0x2403ffff, 0x1443ffba, +0x2404ffff, 0xa0018b9, 0x8fbf0024, 0x240b001d, +0xe001680, 0xa38b0050, 0x240affff, 0x144aff9a, +0x2404ffff, 0xa0018b9, 0x8fbf0024, 0x8f850024, +0x27bdffd8, 0xafb3001c, 0xafb20018, 0xafb10014, +0xafb00010, 0xafbf0020, 0x90a700c4, 0x8f910034, +0x2412ffff, 0x34e20040, 0x92260000, 0xa0a200c4, +0x8e230010, 0x809821, 0x10720006, 0x30d0003f, +0x2408000d, 0xe001680, 0xa3880050, 0x1052002e, +0x2406ffff, 0x8f8a0024, 0x8e290018, 0x8d4400c0, +0x11240007, 0x240c000e, 0x2602021, 0xe001680, +0xa38c0050, 0x240bffff, 0x104b0023, 0x2406ffff, +0x24040020, 0x12040004, 0x8f8d0024, 0x91af00c4, +0x35ee0020, 0xa1ae00c4, 0x8f85003c, 0x10a00022, +0x3a180032, 0x3a190020, 0x2f310001, 0x2f120001, +0x2328025, 0x16000044, 0x8f870024, 0x8f83ff18, +0x2406fffd, 0x94ff0070, 0x9462000a, 0x105f000f, +0x8fbf0020, 0x3c080800, 0x8d08318c, 0x105302b, +0x10c00022, 0x24060001, 0x2602021, 0x2402002d, +0xa3820050, 0xe001680, 0x2413ffff, 0x10530002, +0x2406ffff, 0x3021, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0xc01021, +0x3e00008, 0x27bd0028, 0x5204002a, 0x8e240014, +0x8f840024, 0x948d0070, 0x25ac0001, 0xa48c0070, +0x948b0070, 0x3c090800, 0x8d293188, 0x316a7fff, +0x1149000b, 0x0, 0x2602021, 0xe001707, +0x24050001, 0xa001923, 0x3021, 0x2602021, +0xe00177d, 0x2821, 0xa001923, 0x3021, +0x94870070, 0x24028000, 0x24050001, 0xe21824, +0xa4830070, 0x909f0070, 0x90910070, 0x33f900ff, +0x19c1c2, 0x189027, 0x1281c0, 0x322f007f, +0x1f07025, 0xa08e0070, 0xe001707, 0x2602021, +0xa001923, 0x3021, 0x2602021, 0xa00191d, +0x2402000a, 0x2405ffff, 0x1485ffd6, 0x8f840024, +0x2602021, 0xe001707, 0x24050001, 0xa001923, +0x3021, 0x8f880024, 0x27bdffe8, 0xafb00010, +0xafbf0014, 0x910a00c4, 0x8f870034, 0x808021, +0x35490040, 0x8ce60010, 0xa10900c4, 0x3c020800, +0x8c4231b0, 0x30c53fff, 0xa2182b, 0x10600007, +0x8f850038, 0x240dff80, 0x90ae000d, 0x1ae6024, +0x318b00ff, 0x15600008, 0x6c382, 0x2002021, +0x2403000d, 0x8fbf0014, 0x8fb00010, 0x27bd0018, +0xa001680, 0xa3830050, 0x33060003, 0x240f0002, +0x54cffff7, 0x2002021, 0x94a2001c, 0x8f850024, +0x24190023, 0xa4a200d8, 0x8ce80000, 0x81e02, +0x307f003f, 0x13f90035, 0x3c0a0083, 0x8ce80018, +0x8ca600c0, 0x11060008, 0x0, 0x2405000e, +0xe001680, 0xa3850050, 0x2407ffff, 0x10470018, +0x2404ffff, 0x8f850024, 0x90a900c4, 0x35240020, +0xa0a400c4, 0x8f8c002c, 0x918e000d, 0x31cd007f, +0xa18d000d, 0x8f83003c, 0x1060001c, 0x2002021, +0x8f840038, 0x8c980010, 0x303782b, 0x11e0000d, +0x24190018, 0x2002021, 0xa3990050, 0xe001680, +0x2410ffff, 0x10500002, 0x2404ffff, 0x2021, +0x8fbf0014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0018, 0x8c860010, 0x8f9f002c, 0x2002021, +0xc31023, 0xafe20010, 0x24050001, 0xe00177d, +0x24060001, 0xa0019a9, 0x2021, 0xe001707, +0x24050001, 0xa0019a9, 0x2021, 0x10a5824, +0x156affd9, 0x8f8c002c, 0xa0a600ec, 0xa001996, +0xa3860042, 0x27bdffd8, 0xafb00010, 0x8f900034, +0xafb20018, 0xafbf0020, 0xafb3001c, 0xafb10014, +0x8e110010, 0x3c030800, 0x8c6331b0, 0x32253fff, +0xa3102b, 0x10400008, 0x809021, 0x8f860038, +0x2409ff80, 0x90ca000d, 0x12a4024, 0x310700ff, +0x14e0000b, 0x116b82, 0x2402021, 0x2412000d, +0xa3920050, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0xa001680, 0x27bd0028, +0x31ac0003, 0x240b0001, 0x558bfff4, 0x2402021, +0x90cf000d, 0x31ee0008, 0x11c00060, 0x8f93003c, +0x16600009, 0x24020027, 0x8e19000c, 0x8cd80020, +0x17380005, 0x24020020, 0x8e020008, 0x8cdf0024, +0x105f0040, 0x24020020, 0xe001680, 0xa3820050, +0x2406ffff, 0x10460033, 0x2404ffff, 0x8f99002c, +0x240afff7, 0x3c13800e, 0x9329000d, 0x2404ff80, +0x3c0d8000, 0x12af824, 0xa33f000d, 0x8f99001c, +0x3c080800, 0x8d0831ac, 0x8f830054, 0x97270078, +0x8f9f002c, 0x1031021, 0x30e57fff, 0x53040, +0x467821, 0x31f8007f, 0x3136021, 0x1e47024, +0xadae002c, 0xa5910000, 0x8feb0028, 0x256a0001, +0xafea0028, 0x8fe3002c, 0x8e09002c, 0x694021, +0xafe8002c, 0x8e07002c, 0xafe70030, 0x8e050014, +0xafe50034, 0x97e6003a, 0x24c20001, 0xa7e2003a, +0x97330078, 0x3c100800, 0x8e1031b0, 0x26630001, +0x30717fff, 0x12300027, 0x603021, 0x8f8f001c, +0x2402021, 0x24050001, 0xe001707, 0xa5e60078, +0x2021, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x801021, 0x3e00008, +0x27bd0028, 0x8e050014, 0x2413ffff, 0x10b3001d, +0x8f830024, 0x8e080018, 0x8c6700c0, 0x15070009, +0x2402000e, 0x8e0a0024, 0x8cc90028, 0x15490005, +0x24020021, 0x8e070028, 0x8ccb002c, 0x10eb0013, +0x2402001f, 0xe001680, 0xa3820050, 0x1453ffb3, +0x2404ffff, 0xa001a2b, 0x8fbf0020, 0xa0019f3, +0x24020024, 0x240e8000, 0x6e6824, 0x31acffff, +0xc5bc2, 0x317100ff, 0x118027, 0xa001a24, +0x1033c0, 0xa001a42, 0x24020025, 0x8e05002c, +0x10a0ffec, 0x24020023, 0x8f8e001c, 0x8dcd0074, +0x1a5602b, 0x1580ffe7, 0x24020026, 0x8ccf0014, +0xa7c021, 0x1f8202b, 0x1080ff99, 0x8f99002c, +0x2402021, 0xa001a42, 0x24020022, 0x27bdffe0, +0xafb00010, 0x8f900034, 0xafb10014, 0xafbf0018, +0x8e050010, 0x3c030800, 0x8c6331b0, 0x808821, +0x30a43fff, 0x83102b, 0x10400007, 0x8f860038, +0x2409ff80, 0x90ca000d, 0x12a4024, 0x310700ff, +0x14e00009, 0x8f8b003c, 0x2410000d, 0x2202021, +0xa3900050, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xa001680, 0x27bd0020, 0x11600008, 0x5c382, +0x8f8f0024, 0x8f8eff18, 0x2407fffd, 0x95ec0070, +0x95cd000a, 0x11ac0038, 0x8fbf0018, 0x33050003, +0x14a00010, 0x0, 0x92190002, 0x13200041, +0x0, 0x8e060024, 0x50c0000f, 0x92040003, +0x2202021, 0x2402000f, 0xe001680, 0xa3820050, +0x2408ffff, 0x14480007, 0x2407ffff, 0xa001abf, +0x8fbf0018, 0x90c3000d, 0x30640008, 0x10800037, +0x2202021, 0x92040003, 0x24070002, 0x308900ff, +0x15270005, 0x308f00ff, 0x8f8a003c, 0x11400031, +0x240c002c, 0x308f00ff, 0x39e50010, 0x2cad0001, +0x2dee0001, 0x2002821, 0x1cd3025, 0xe0016a0, +0x2202021, 0x2410ffff, 0x1050000e, 0x2407ffff, +0x8f83003c, 0x10600017, 0x2202021, 0x3c190800, +0x8f39318c, 0x323c02b, 0x5700000c, 0x2411002d, +0x2202021, 0x2821, 0xe00177d, 0x24060001, +0x3821, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xe01021, 0x3e00008, 0x27bd0020, 0xe001680, +0xa3910050, 0x1450fff6, 0x2407ffff, 0xa001abf, +0x8fbf0018, 0xe001707, 0x24050001, 0xa001abe, +0x3821, 0x8cdf0024, 0x8e020024, 0x545fffc1, +0x2202021, 0xa001a9f, 0x92040003, 0xa001a93, +0x24020010, 0x2202021, 0xe001680, 0xa38c0050, +0x240bffff, 0x104bffe3, 0x2407ffff, 0xa001aa6, +0x92040003, 0x30a500ff, 0x24060001, 0x24a90001, +0xc9102b, 0x1040000c, 0x4021, 0x240a0001, +0xa61823, 0x308b0001, 0x24c60001, 0x6a3804, +0x42042, 0x11600002, 0xc9182b, 0x1074025, +0x1460fff8, 0xa61823, 0x3e00008, 0x1001021, +0x27bdffd8, 0xafb00018, 0x8f900034, 0xafb1001c, +0xafbf0020, 0x2403ffff, 0x2411002f, 0xafa30010, +0x92060000, 0x24050008, 0x26100001, 0x662026, +0xe001ade, 0x308400ff, 0x21e00, 0x3c021edc, +0x34466f41, 0xa001b06, 0x1021, 0x10a00009, +0x801821, 0x24450001, 0x30a2ffff, 0x2c450008, +0x461fffa, 0x32040, 0x862026, 0x14a0fff9, +0x801821, 0xe001ade, 0x24050020, 0x8fa30010, +0x2629ffff, 0x313100ff, 0x34202, 0x240700ff, +0x1627ffe2, 0x1021826, 0x35027, 0xafaa0014, +0xafaa0010, 0x3021, 0x27a80010, 0x27a70014, +0xe67823, 0x91ed0003, 0x24ce0001, 0xc86021, +0x31c600ff, 0x2ccb0004, 0x1560fff9, 0xa18d0000, +0x8fa20010, 0x8fbf0020, 0x8fb1001c, 0x8fb00018, +0x3e00008, 0x27bd0028, 0x93830030, 0x27bdffe0, +0x24020034, 0xafb10014, 0xafb00010, 0xafbf001c, +0xafb20018, 0x808821, 0x10620062, 0xa08021, +0x92040004, 0x14800045, 0x8f880024, 0xa3800028, +0x8e050004, 0x8d0600c8, 0x3c0700ff, 0x34e3ffff, +0xa32824, 0xc5102b, 0x1440004d, 0xaf85003c, +0x978a0044, 0x8f870048, 0x1471023, 0x10a00032, +0xa7820044, 0x8f98001c, 0x304cffff, 0x9312007c, +0x127882, 0x31f10001, 0x117080, 0x1c56821, +0x18d582b, 0x11600061, 0x8f860024, 0x8f890020, +0x8f84004c, 0x1089005e, 0x3c023f01, 0x8e1f0000, +0x3c102500, 0x3e2c824, 0x1730007a, 0x8f840034, +0x8f870034, 0x8f860024, 0x8ce30000, 0xacc30078, +0x8ce50010, 0xacc50088, 0x8f870048, 0x8f85003c, +0x938d0028, 0x30ae0003, 0xe4023, 0x310a0003, +0x14d4021, 0xa3880028, 0x94cb00ac, 0x1276021, +0xaf8c0020, 0x35691000, 0xa4c900ac, 0x16200051, +0x1452021, 0xaf840048, 0x2021, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x801021, +0x3e00008, 0x27bd0020, 0x8f840020, 0xaf800048, +0x873021, 0xa001b6f, 0xaf860020, 0x241f000c, +0xa39f0050, 0xe001680, 0x2202021, 0x2419ffff, +0x1059ffee, 0x2404ffff, 0x8f880024, 0xa3800028, +0x8e050004, 0x8d0600c8, 0x3c0700ff, 0x34e3ffff, +0xa32824, 0xc5102b, 0x1040ffb5, 0xaf85003c, +0x2202021, 0x24090019, 0xa3890050, 0xe001680, +0x2411ffff, 0x1051ffdd, 0x2404ffff, 0xa001b41, +0x8f85003c, 0x8f840024, 0x8f870034, 0x8cf20030, +0x908600c4, 0x30c50010, 0x14a00010, 0x8f830048, +0x2c680005, 0x15000028, 0x0, 0x908a00c4, +0x246bfffc, 0x31490010, 0x15200008, 0x316400ff, +0x8f8d004c, 0x8f8c0020, 0x11ac0004, 0x388f0001, +0x31ee0001, 0x15c0002f, 0x0, 0xe001af1, +0x0, 0xa001bc8, 0x0, 0x8f890020, +0x938d0028, 0x30ae0003, 0xe4023, 0x310a0003, +0x14d4021, 0xa3880028, 0x94cb00ac, 0x1276021, +0xaf8c0020, 0x35691000, 0xa4c900ac, 0x1220ffb1, +0x1452021, 0x25180004, 0xa3980028, 0x94cf00ac, +0x24920004, 0xaf920048, 0x35f12000, 0xa4d100ac, +0xa001b70, 0x2021, 0x8c8200dc, 0x1242ff6c, +0x2202021, 0x24180005, 0xa3980050, 0xe001680, +0x2412ffff, 0x1452ff66, 0x2404ffff, 0xa001b71, +0x8fbf001c, 0x30e500ff, 0xe001583, 0x3021, +0x8f860024, 0x8f870048, 0x8f890020, 0xa001b61, +0x8f85003c, 0xe0015ae, 0x0, 0xa001bc8, +0x0, 0x93830042, 0x27bdffe0, 0x24020002, +0xafb20018, 0xafb10014, 0xafbf001c, 0x808821, +0xafb00010, 0x9021, 0x10620050, 0x2404fffd, +0x97830044, 0x8f850048, 0x3066ffff, 0xc5202b, +0x14800056, 0x93870030, 0x3c088000, 0x95040120, +0x10e5004d, 0x8f8a0020, 0x8f84004c, 0x30a500ff, +0xe001583, 0x24060001, 0x8f9f0054, 0x3c058000, +0x3c194080, 0x27ed0178, 0x31b00078, 0x240eff80, +0x2195825, 0x34af0900, 0x31b80007, 0x1ae6024, +0xacac0800, 0x30f8021, 0xacab0810, 0x2202021, +0x2002821, 0xe001b2b, 0xaf900034, 0x2403ffff, +0x1043002e, 0x2404ffff, 0x8e0a0010, 0x3c070800, +0x8ce731b0, 0x92060000, 0x31443fff, 0x87102b, +0x1040001e, 0x30cb003f, 0x8f8d0054, 0x46180, +0x3c040800, 0x8c8431a8, 0x93980041, 0x3c050180, +0x8d4021, 0x10c2021, 0x3c0c8000, 0x8f880024, +0x34a20001, 0x30870078, 0x30860007, 0x35830940, +0x3099007f, 0x3c1f800c, 0x2410ff80, 0x906824, +0xe24825, 0xc37821, 0x33f7021, 0x37050001, +0xad8d0804, 0xaf8f0038, 0xad890814, 0xaf8e002c, +0xad8d0028, 0xad040074, 0xa3850041, 0x93830042, +0x24090003, 0x50690027, 0x2563ffe0, 0x240a0001, +0x106a001c, 0x24190023, 0x2402021, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x801021, +0x3e00008, 0x27bd0020, 0x31490003, 0x5520ffb3, +0x8f84004c, 0xa001c04, 0x8f90004c, 0x8f84004c, +0x24060001, 0xe001583, 0x306500ff, 0x93860030, +0x241f0034, 0x10df0018, 0x97830044, 0x8f850048, +0x3067ffff, 0xa73023, 0xaf860048, 0xa001c37, +0xa7800044, 0x11790038, 0x0, 0x2202021, +0x2411000b, 0xe001680, 0xa3910050, 0xa001c37, +0x409021, 0x2c720020, 0x1240fff8, 0x37880, +0x3c180800, 0x271878c4, 0x1f87021, 0x8dcb0000, +0x1600008, 0x0, 0x8f850048, 0x2ca30005, +0x5460001d, 0x97830044, 0x97880044, 0x310cffff, +0xac1023, 0x2c470005, 0x10e00003, 0x310400ff, +0x24adfffc, 0x31a400ff, 0x8f89004c, 0x8f850020, +0x11250004, 0x388e0001, 0x31cb0001, 0x1560002a, +0x0, 0x8f990024, 0x933f00c4, 0x37f10010, +0xa33100c4, 0x97830044, 0x8f850048, 0x8f840024, +0x3067ffff, 0xa73023, 0xac8000dc, 0xa7800044, +0xa001c37, 0xaf860048, 0xa7800044, 0x3067ffff, +0xa73023, 0xa001c37, 0xaf860048, 0x2410ffff, +0x11500005, 0x0, 0xe00195e, 0x2202021, +0xa001c37, 0x409021, 0xe0018e0, 0x2202021, +0xa001c37, 0x409021, 0xe0019c2, 0x2202021, +0xa001c37, 0x409021, 0xe001837, 0x2202021, +0xa001c37, 0x409021, 0xe001a64, 0x2202021, +0xa001c37, 0x409021, 0xe0015ae, 0x0, +0x97830044, 0x8f850048, 0x3070ffff, 0xb0c023, +0x2f0f0005, 0x11e0ffa7, 0x3067ffff, 0x8f8a0024, +0xa73023, 0xad4200dc, 0xa7800044, 0xa001c37, +0xaf860048, 0x27bdffd0, 0xafb20018, 0xafb00010, +0xafbf0028, 0xafb50024, 0xafb40020, 0xafb3001c, +0xafb10014, 0x3c0c8000, 0x8d880128, 0x240fff80, +0x3c07800a, 0x25100100, 0x250b0080, 0x20f6824, +0x3205007f, 0x16f7024, 0xad8e0090, 0xa72821, +0xad8d0024, 0x90a700ec, 0x3169007f, 0x3c0a8004, +0x12a1821, 0xa3870042, 0x9066007c, 0x809021, +0xaf83001c, 0x30c20002, 0xaf880054, 0xaf850024, +0xa01821, 0x14400002, 0x24040034, 0x24040030, +0xa3840030, 0x8c6600cc, 0x30f100ff, 0x24040004, +0xaf860048, 0x12240004, 0xa3800050, 0x8e530004, +0x1660001d, 0x3c088000, 0x93870041, 0x30f20001, +0x1240000f, 0x8fbf0028, 0x8cb80074, 0x8ca40074, +0x2419ff80, 0x3198824, 0x117140, 0x308f007f, +0x1cf6025, 0x3c0d2000, 0x18d5825, 0x30f500fe, +0x3c0a8000, 0xad4b0830, 0xa3950041, 0x8fbf0028, +0x8fb50024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x24020001, 0x27bd0030, +0x3e00008, 0xaca600cc, 0x8e590008, 0x951f0120, +0x8e460010, 0x33fc021, 0x3307ffff, 0x30f5000f, +0x32b40001, 0xaf860020, 0x1680003b, 0xa3950040, +0x35060c00, 0x2a61021, 0xf51823, 0xad030084, +0xaf82004c, 0x8e490004, 0x3128ffff, 0x1100002b, +0xa7890044, 0x2410ff80, 0x3c158000, 0x3c142000, +0xa001d25, 0x2413fffe, 0x90ae00c4, 0x20e6824, +0x31ac00ff, 0x1580002a, 0x2402021, 0x93840041, +0x97860044, 0x308f0001, 0x11e0000b, 0x2642824, +0x8f890024, 0x8d230074, 0x8d280074, 0xa3850041, +0x701024, 0x2c940, 0x311f007f, 0x33fc025, +0x3148825, 0xaeb10830, 0x10c00010, 0x8f850024, +0x90a700c4, 0x2075824, 0x316a00ff, 0x1540ffe6, +0x2402021, 0xe001bde, 0x97910044, 0x1040ffe8, +0x93840041, 0x2405fffd, 0x54450005, 0x8e430020, +0x2202821, 0xe001558, 0x2402021, 0x8e430020, +0x30700004, 0x1600000a, 0x2414fffb, 0x8f850024, +0xa001cdb, 0x8f860048, 0xa001d06, 0xaf86004c, +0xe001803, 0x0, 0xa001d15, 0x93840041, +0x749824, 0xe001572, 0xae530020, 0x8f850024, +0xa001cdb, 0x8f860048, 0x27bdffd8, 0xafb3001c, +0xafb10014, 0xafbf0020, 0xafb20018, 0xafb00010, +0x3c028000, 0x8c520140, 0x8c4b0148, 0x3c048000, +0xb8c02, 0x322300ff, 0x317300ff, 0x8c8501b8, +0x4a0fffe, 0x34900180, 0xae120000, 0x8c870144, +0x2464fff0, 0x24060002, 0x2c830006, 0xae070004, +0xa6110008, 0xa206000b, 0xae130024, 0x1060004f, +0x8fbf0020, 0x44880, 0x3c0a0800, 0x254a7944, +0x12a4021, 0x8d040000, 0x800008, 0x0, +0x3c100800, 0x8e1031a8, 0x31733fff, 0x138980, +0x2122821, 0x240cff80, 0xb12021, 0x264d0100, +0x26470080, 0x3c0f8000, 0x3c038004, 0x31a8007f, +0x30e9007f, 0x308a007f, 0x3c0e800a, 0x3c02800c, +0x8cc024, 0x1ac3024, 0xecc824, 0x1239821, +0x1428021, 0xade60024, 0x10ef821, 0xadf90090, +0xadf80028, 0xaf90002c, 0xaf9f0024, 0xaf93001c, +0xe00164a, 0x1608021, 0x3c038000, 0x8c6b01b8, +0x560fffe, 0x8f87002c, 0x8f860024, 0x34650180, +0x90f9000d, 0xacb20000, 0x24c20078, 0x19c600, +0x187e03, 0xf9027, 0x1227c2, 0xa4b00006, +0x10800071, 0x240e6082, 0xa4ae0008, 0xa0a00005, +0x240f0002, 0xa0af000b, 0x4c400, 0x8f8b001c, +0x3c192700, 0x3199025, 0xacb20010, 0xaca00014, +0xaca00024, 0xaca00028, 0xaca0002c, 0x8d730038, +0x2411ff80, 0xacb30018, 0x90f0000d, 0x2302824, +0x30a400ff, 0x10800005, 0x8fbf0020, 0x90ec000d, +0x319f007f, 0xa0ff000d, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3c0d8000, +0x3c0a1000, 0x27bd0028, 0xa1a001b0, 0x3e00008, +0xadaa01b8, 0x3c126000, 0x8e452c08, 0x3c03f003, +0x3462ffff, 0xa2f824, 0xae5f2c08, 0x8e582c08, +0x3c1901b0, 0x3199825, 0xae532c08, 0xa001db0, +0x8fbf0020, 0x265f0100, 0x2405ff80, 0x33f8007f, +0x3c068000, 0x3e57824, 0x3c19800a, 0x3192021, +0xaccf0024, 0x908e00c4, 0xae6824, 0x31ac00ff, +0x1180ffdd, 0xaf840024, 0x248e0078, 0x95cd0012, +0x3c0c0800, 0x8d8c31a8, 0x3c03800c, 0x31ab3fff, +0x1924821, 0xb5180, 0x12a4021, 0x3104007f, +0x1051024, 0x833821, 0xacc20028, 0xe00164a, +0xaf87002c, 0x3c038000, 0x8c6501b8, 0x4a0fffe, +0x0, 0xae120000, 0x8c720144, 0xae120004, +0xa6110008, 0x24110002, 0xa211000b, 0xae130024, +0xa001db0, 0x8fbf0020, 0x264d0100, 0x31af007f, +0x3c10800a, 0x240eff80, 0x1f02821, 0x1ae6024, +0x3c0b8000, 0xad6c0024, 0x1660ffb7, 0xaf850024, +0x24110003, 0xa0b100ec, 0xa001db0, 0x8fbf0020, +0x26480100, 0x310a007f, 0x3c0b800a, 0x2409ff80, +0x14b3021, 0x1092024, 0x3c078000, 0xace40024, +0xa001daf, 0xaf860024, 0x944d0012, 0x321f3fff, +0x31ac3fff, 0x159fff8c, 0x240e6082, 0x90c300c4, +0x2409ff80, 0x1231024, 0x304a00ff, 0x1140ff86, +0x0, 0x24070004, 0xa0c700ec, 0x8f87002c, +0x24086084, 0x2406000d, 0xa4a80008, 0xa0a60005, +0xa001d9a, 0x240f0002, 0x0 }; +u32 bce_RXP_b09FwData[(0x0/4) + 1] = { 0x0 }; +u32 bce_RXP_b09FwRodata[(0xf0/4) + 1] = { +0x5f865437, 0xe4ac62cc, 0x50103a45, +0x36621985, 0xbf14c0e8, 0x1bc27a1e, 0x84f4b556, +0x94ea6fe, 0x7dda01e7, 0xc04d7481, 0x80080100, +0x80080080, 0x80080000, 0x8004efc, 0x8004efc, +0x8004fd8, 0x8004fac, 0x8004f90, 0x8004ecc, +0x8004ecc, 0x8004ecc, 0x8004f04, 0x8007220, +0x800726c, 0x800722c, 0x8007150, 0x800722c, +0x800725c, 0x800722c, 0x8007150, 0x8007150, +0x8007150, 0x8007150, 0x8007150, 0x8007150, +0x8007150, 0x8007150, 0x8007150, 0x8007150, +0x800724c, 0x800723c, 0x8007150, 0x8007150, +0x8007150, 0x8007150, 0x8007150, 0x8007150, +0x8007150, 0x8007150, 0x8007150, 0x8007150, +0x8007150, 0x8007150, 0x800723c, 0x80077f4, +0x80076bc, 0x80077bc, 0x8007718, 0x80076e8, +0x80075a4, 0x0 }; +u32 bce_RXP_b09FwBss[(0x1c/4) + 1] = { 0x0 }; +u32 bce_RXP_b09FwSbss[(0x58/4) + 1] = { 0x0 }; +u32 bce_RXP_b09FwSdata[(0x0/4) + 1] = { 0x0 }; -static int bce_TXP_b06FwReleaseMajor = 0x1; -static int bce_TXP_b06FwReleaseMinor = 0x0; -static int bce_TXP_b06FwReleaseFix = 0x0; -static u32 bce_TXP_b06FwStartAddr = 0x08000064; -static u32 bce_TXP_b06FwTextAddr = 0x08000000; -static int bce_TXP_b06FwTextLen = 0x44d4; -static u32 bce_TXP_b06FwDataAddr = 0x08004520; -static int bce_TXP_b06FwDataLen = 0xd0; -static u32 bce_TXP_b06FwRodataAddr = 0x080044d8; -static int bce_TXP_b06FwRodataLen = 0x30; -static u32 bce_TXP_b06FwBssAddr = 0x08004670; -static int bce_TXP_b06FwBssLen = 0xa20; -static u32 bce_TXP_b06FwSbssAddr = 0x080045f0; -static int bce_TXP_b06FwSbssLen = 0x80; -/* static u32 bce_TXP_b06FwSDataAddr = 0x00000000; */ -/* static int bce_TXP_b06FwSDataLen = 0x0; */ -static u32 bce_TXP_b06FwText[(0x44d4/4) + 1] = { -0xa000019, -0x0, 0x0, 0xd, 0x74787020, -0x332e342e, 0x38000000, 0x3040800, 0xa, -0xe6, 0xea60, 0x0, 0x0, +int bce_CP_b09FwReleaseMajor = 0x1; +int bce_CP_b09FwReleaseMinor = 0x0; +int bce_CP_b09FwReleaseFix = 0x0; +u32 bce_CP_b09FwStartAddr = 0x08000080; +u32 bce_CP_b09FwTextAddr = 0x08000000; +int bce_CP_b09FwTextLen = 0x5938; +u32 bce_CP_b09FwDataAddr = 0x08005ac0; +int bce_CP_b09FwDataLen = 0x84; +u32 bce_CP_b09FwRodataAddr = 0x08005938; +int bce_CP_b09FwRodataLen = 0x16c; +u32 bce_CP_b09FwBssAddr = 0x08005bd8; +int bce_CP_b09FwBssLen = 0x19c; +u32 bce_CP_b09FwSbssAddr = 0x08005b44; +int bce_CP_b09FwSbssLen = 0x91; +u32 bce_CP_b09FwSDataAddr = 0x00000000; +int bce_CP_b09FwSDataLen = 0x0; +u32 bce_CP_b09FwText[(0x5938/4) + 1] = { +0xa000020, +0x0, 0x0, 0xd, 0x6370342e, +0x342e3231, 0x0, 0x4041504, 0x0, 0x0, 0x0, 0x0, 0x0, +0x38003c00, 0x0, 0x0, 0x0, +0x0, 0x20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0x10000003, 0x0, 0xd, -0xd, 0x3c020800, 0x244245f0, 0x3c030800, -0x24635090, 0xac400000, 0x43202b, 0x1480fffd, -0x24420004, 0x3c1d0800, 0x37bd7ffc, 0x3a0f021, -0x3c100800, 0x26100064, 0x3c1c0800, 0x279c45f0, -0xe00024f, 0x0, 0xd, 0x8f840018, -0x27bdffe8, 0xafb00010, 0x8f460104, 0x8f83000c, -0x8c8500ac, 0xaf430080, 0x948200a8, 0xa7420e10, -0x948300aa, 0xa7430e12, 0x8c8200ac, 0xaf420e18, -0x97430e10, 0xa7430e14, 0x97420e12, 0xc821, -0xa7420e16, 0x8f430e18, 0x6021, 0xc53023, -0xaf430e1c, 0x10c001aa, 0x2d820001, 0x3c0e1000, -0x2418fff8, 0x24100010, 0x240f0f00, 0x93620008, -0x10400009, 0x0, 0x97620010, 0xc2102b, -0x14400005, 0x0, 0x97620010, 0x3042ffff, -0xa000058, 0xaf420e00, 0xaf460e00, 0x8f420000, -0x30420008, 0x1040fffd, 0x0, 0x97420e08, -0x8f450e04, 0x3044ffff, 0x30820001, 0x14400005, -0x0, 0x14a00005, 0x3083a040, 0xa000229, -0x0, 0xd, 0x3083a040, 0x24020040, -0x14620054, 0x3082a000, 0x3c038000, 0x8f420178, -0x431024, 0x1440fffd, 0x308a0036, 0x8f880010, -0x30890008, 0x24020800, 0xaf420178, 0x1001821, -0x9742008a, 0x431023, 0x2442ffff, 0x30421fff, -0x2c420008, 0x1440fffa, 0xa06021, 0x8f82001c, -0xcc3023, 0x24070001, 0x8f83000c, 0x304b00ff, -0x24420001, 0xaf82001c, 0x25024000, 0x106f0005, -0x3422021, 0x93820016, 0x30420007, 0x21240, -0x34470001, 0xb1400, 0x3c030100, 0x431025, -0xac820000, 0x8f83001c, 0xea3825, 0x11200010, -0xac830004, 0xee3825, 0x97430e0a, 0x8f840010, -0x3c028100, 0x621825, 0x2402000e, 0xaf430160, -0x25830006, 0x24840008, 0x30841fff, 0xa742015a, -0xa7430158, 0xaf840010, 0xa0000a7, 0x0, -0x8f830010, 0x25820002, 0xa7420158, 0x24630008, -0x30631fff, 0xaf830010, 0x54c0000f, 0x8f420e14, -0x8f82000c, 0x504f0002, 0x24190001, 0x34e70040, -0x97420e10, 0x97430e12, 0x8f850018, 0x21400, -0x621825, 0xaca300a8, 0x8f840018, 0x8f420e18, -0xac8200ac, 0x8f420e14, 0x8f430e1c, 0xaf420144, -0xaf430148, 0xa34b0152, 0xaf470154, 0xa0001ef, -0xaf4e0178, 0x1040016a, 0x0, 0x93620008, -0x50400008, 0xafa60008, 0x97620010, 0xa2102b, -0x10400003, 0x30820040, 0x10400161, 0x0, -0xafa60008, 0xa7840014, 0xaf850008, 0x93620008, -0x14400060, 0x27ac0008, 0xaf60000c, 0x97820014, -0x30424000, 0x10400002, 0x2403000e, 0x24030016, -0xa363000a, 0x24034007, 0xaf630014, 0x93820016, -0x8f630014, 0x30420007, 0x21240, 0x621825, -0xaf630014, 0x97820014, 0x8f630014, 0x30420010, -0x621825, 0xaf630014, 0x97820014, 0x30420008, -0x5040000f, 0x2821, 0x8f620014, 0x4e1025, -0xaf620014, 0x97430e0a, 0x3c028100, 0x621825, -0x2402000e, 0xaf630004, 0xa3620002, 0x9363000a, -0x3405fffc, 0x24630004, 0xa0000f7, 0xa363000a, -0xaf600004, 0xa3600002, 0x97820014, 0x9363000a, -0x30421f00, 0x21182, 0x24420028, 0x621821, -0xa3630009, 0x97420e0c, 0xa7620010, 0x93630009, -0x24020008, 0x24630002, 0x30630007, 0x431023, -0x30420007, 0xa362000b, 0x93640009, 0x97620010, -0x8f890008, 0x97830014, 0x441021, 0xa21021, -0x30630040, 0x10600007, 0x3045ffff, 0xa9102b, -0x14400005, 0x125102b, 0x3c078000, 0xa00012b, -0x5821, 0x125102b, 0x544000ca, 0x6021, -0x97420e14, 0xa7420e10, 0x97430e16, 0xa7430e12, -0x8f420e1c, 0xaf420e18, 0xaf450e00, 0x8f420000, -0x30420008, 0x1040fffd, 0x0, 0x97420e08, -0xa04821, 0xa7820014, 0x8f430e04, 0x3821, -0x240b0001, 0xaf830008, 0x97620010, 0xa00013d, -0x304dffff, 0x8f890008, 0x97820014, 0x30420040, -0x10400004, 0x1206821, 0x3c078000, 0xa00013d, -0x5821, 0x97630010, 0x8f820008, 0x10430003, -0x3821, 0xa0001e2, 0x6021, 0x240b0001, -0x8d820000, 0x491023, 0x1440000d, 0xad820000, -0x8f620014, 0x34420040, 0xaf620014, 0x97430e10, -0x97420e12, 0x8f840018, 0x31c00, 0x431025, -0xac8200a8, 0x8f830018, 0x8f420e18, 0xac6200ac, -0x93620008, 0x14400041, 0x25260002, 0x8f840010, -0x9743008a, 0x3063ffff, 0xafa30000, 0x8fa20000, -0x441023, 0x2442ffff, 0x30421fff, 0x2c420010, -0x1440fff7, 0x0, 0x8f820010, 0x8f83001c, -0x21082, 0x21080, 0x24424000, 0x3422821, -0x605021, 0x24630001, 0x314200ff, 0x21400, -0xaf83001c, 0x3c033200, 0x431025, 0xaca20000, -0x93630009, 0x9362000a, 0x31c00, 0x431025, -0xaca20004, 0x8f83001c, 0x3c028000, 0xaca0000c, -0x10e00002, 0xaca30008, 0xaca2000c, 0x97820014, -0x30420008, 0x10400002, 0xc04021, 0x25280006, -0x97430e14, 0x93640002, 0x8f450e1c, 0x8f660004, -0x8f670014, 0x3063ffff, 0xa7430144, 0x97420e16, -0xa7420146, 0xaf450148, 0xa34a0152, 0x8f820010, -0x308400ff, 0xa744015a, 0xaf460160, 0xa7480158, -0xaf470154, 0xaf4e0178, 0x501021, 0x30421fff, -0xaf820010, 0xa0001cd, 0x8d820000, 0x93620009, -0x9363000b, 0x8f850010, 0x2463000a, 0x435021, -0x25440007, 0x982024, 0x9743008a, 0x3063ffff, -0xafa30000, 0x8fa20000, 0x451023, 0x2442ffff, -0x30421fff, 0x44102b, 0x1440fff7, 0x0, -0x8f820010, 0x8f84001c, 0x21082, 0x21080, -0x24424000, 0x3422821, 0x804021, 0x24840001, -0xaf84001c, 0x93630009, 0x310200ff, 0x22400, -0x3c024100, 0x24630002, 0x621825, 0x832025, -0xaca40000, 0x8f62000c, 0x471025, 0xaca20004, -0x97430e14, 0x93640002, 0x8f450e1c, 0x8f660004, -0x8f670014, 0x3063ffff, 0xa7430144, 0x97420e16, -0x308400ff, 0xa7420146, 0xaf450148, 0xa3480152, -0x8f830010, 0x25420007, 0x581024, 0xa744015a, -0xaf460160, 0xa7490158, 0xaf470154, 0xaf4e0178, -0x621821, 0x30631fff, 0xaf830010, 0x8d820000, -0x14400005, 0x0, 0x8f620014, 0x2403ffbf, -0x431024, 0xaf620014, 0x8f62000c, 0x4d1021, -0xaf62000c, 0x93630008, 0x14600008, 0x0, -0x11600006, 0x0, 0x8f630014, 0x3c02efff, -0x3442fffe, 0x621824, 0xaf630014, 0xa36b0008, -0x1206021, 0x1580000c, 0x8fa60008, 0x97420e14, -0x97430e16, 0x8f850018, 0x21400, 0x621825, -0xaca300a8, 0x8f840018, 0x8f420e1c, 0xac8200ac, -0xa0001f1, 0x2d820001, 0x14c0fe5c, 0x2d820001, -0x591025, 0x10400059, 0x24020f00, 0x8f83000c, -0x14620024, 0x3c048000, 0x1180000a, 0x3c038000, -0x97420e08, 0x30420040, 0x14400006, 0x0, -0x0, 0xd, 0x0, 0x24000284, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x0, 0x97420e10, 0x3c030500, 0x431025, -0xaf42014c, 0x97430e14, 0xa7430144, 0x97420e16, -0xa7420146, 0x8f430e1c, 0x24022000, 0xaf430148, -0x3c031000, 0xa3400152, 0xa740015a, 0xaf400160, -0xa7400158, 0xaf420154, 0xaf430178, 0x8f83000c, -0x3c048000, 0x8f420178, 0x441024, 0x1440fffd, -0x24020f00, 0x10620016, 0x0, 0x97420e14, -0xa7420144, 0x97430e16, 0xa7430146, 0x8f420e1c, -0x3c031000, 0xaf420148, 0xa000246, 0x24020240, -0x97420e14, 0x97430e16, 0x8f840018, 0x21400, -0x621825, 0xac8300a8, 0x8f850018, 0x8f420e1c, -0x6021, 0xaca200ac, 0xa0001f1, 0x2d820001, -0xaf40014c, 0x11800007, 0x0, 0x97420e10, -0xa7420144, 0x97430e12, 0xa7430146, 0xa000243, -0x8f420e18, 0x97420e14, 0xa7420144, 0x97430e16, -0xa7430146, 0x8f420e1c, 0xaf420148, 0x24020040, -0x3c031000, 0xa3400152, 0xa740015a, 0xaf400160, -0xa7400158, 0xaf420154, 0xaf430178, 0x8fb00010, -0x3e00008, 0x27bd0018, 0x27bdffd0, 0x3c1a8000, -0x3c0420ff, 0x3484fffd, 0x3c020008, 0x3421821, -0xafbf002c, 0xafb60028, 0xafb50024, 0xafb40020, +0x21003800, 0x0, 0x2b, 0x0, +0x10000003, 0x0, 0xd, 0xd, +0x3c020800, 0x24425b44, 0x3c030800, 0x24635d74, +0xac400000, 0x43202b, 0x1480fffd, 0x24420004, +0x3c1d0800, 0x37bd9ffc, 0x3a0f021, 0x3c100800, +0x26100080, 0x3c1c0800, 0x279c5b44, 0xe000286, +0x0, 0xd, 0xa01821, 0x801021, +0x802821, 0x3c046000, 0x3c076000, 0x24060008, +0x10600006, 0x34842078, 0x8c420000, 0xace22008, +0x8c630000, 0x3e00008, 0xace3200c, 0xa000fa3, +0x0, 0x24030040, 0x3c026000, 0x3e00008, +0xac432000, 0x3c056000, 0x8ca72074, 0x8f820000, +0xe23023, 0xc4182b, 0x14600007, 0x2821, +0x8f8afdfc, 0x24050001, 0xa1440013, 0x8f890000, +0x1244021, 0xaf880000, 0x3e00008, 0xa01021, +0x8f84fdfc, 0x8f850000, 0x90860013, 0x30c300ff, +0xa31023, 0xaf820000, 0x3e00008, 0xa0800013, +0x8f84fdfc, 0x27bdffe8, 0xafb00010, 0xafbf0014, +0x90890011, 0x90870011, 0x24020028, 0x312800ff, +0x39060028, 0x30e300ff, 0x2485002c, 0x2cd00001, +0x10620016, 0x2484001c, 0xe000037, 0x0, +0x8f8ffdfc, 0x3c056000, 0x24020204, 0x95ee003e, +0x95ed003c, 0xe5c00, 0x31acffff, 0x16c5025, +0xacaa2010, 0x52000001, 0x24020004, 0xaca22000, +0x0, 0x0, 0x0, 0x8fbf0014, +0x8fb00010, 0x3e00008, 0x27bd0018, 0xa00006f, +0x2821, 0x8f85fdfc, 0x27bdffd8, 0xafbf0020, 0xafb3001c, 0xafb20018, 0xafb10014, 0xafb00010, -0xaf830018, 0xaf440e00, 0x0, 0x0, -0x0, 0x0, 0x0, 0x3c0200ff, -0x3442fffd, 0x3c036004, 0xaf420e00, 0x8c705000, -0x2402ff7f, 0x2028024, 0x3610380c, 0x3c026000, -0xac705000, 0x8c440438, 0x24030009, 0xaf430008, -0xaf80001c, 0xaf800010, 0x3090ffff, 0x3a102f71, -0xe000819, 0x2610c0b3, 0xe000302, 0x0, -0x16000003, 0x0, 0x3c016000, 0xac20442c, -0xe000830, 0x24160800, 0xe000b90, 0x24140d00, -0x3c020800, 0x24554690, 0x3c130800, 0x24120f00, -0x3c110800, 0x3c104000, 0x8f420000, 0x30420001, -0x1040fffd, 0x0, 0x8f420100, 0x3c038000, -0xaf82000c, 0xaf420020, 0x8f420178, 0x431024, -0x1440fffd, 0x0, 0xaf560178, 0x93430108, -0xa3830016, 0x93820016, 0x30420001, 0x10400008, -0x0, 0x93820016, 0x30420006, 0x21100, -0xe000030, 0x55d821, 0xa0002b0, 0x0, -0x8f82000c, 0x14540005, 0x0, 0xe000030, -0x267b4710, 0xa0002b0, 0x0, 0x14520005, -0x0, 0xe000030, 0x263b4730, 0xa0002b0, -0x0, 0xe00047f, 0x0, 0xaf500138, -0xa000287, 0x0, 0x27bdfff8, 0x3084ffff, -0x24820007, 0x3044fff8, 0x8f850010, 0x9743008a, -0x3063ffff, 0xafa30000, 0x8fa20000, 0x451023, -0x2442ffff, 0x30421fff, 0x44102b, 0x1440fff7, -0x0, 0x8f820010, 0x21082, 0x21080, -0x24424000, 0x3421021, 0x3e00008, 0x27bd0008, -0x3084ffff, 0x8f820010, 0x24840007, 0x3084fff8, -0x441021, 0x30421fff, 0xaf820010, 0x3e00008, -0x0, 0x27bdffe8, 0x3c1a8000, 0x3c0420ff, -0x3484fffd, 0x3c020008, 0x3421821, 0xafbf0014, -0xafb00010, 0xaf830018, 0xaf440e00, 0x0, +0x809821, 0x90a40011, 0x24b0001c, 0x24b1002c, +0x308300ff, 0x38620028, 0xe000059, 0x2c520001, +0xe000061, 0x0, 0x2002021, 0x12400002, +0x2202821, 0x2821, 0xe000037, 0x0, +0x8f8dfdfc, 0x3c088000, 0x3c056000, 0x95ac003e, +0x95ab003c, 0x2683025, 0xc4c00, 0x316affff, +0x12a3825, 0xaca72010, 0x24020202, 0xaca62014, +0x52400001, 0x24020002, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x27bd0028, +0x3e00008, 0xaca22000, 0x27bdffe0, 0xafb20018, +0xafb10014, 0xafb00010, 0xafbf001c, 0x3c116000, +0x8e232074, 0x8f820000, 0x30d0ffff, 0x30f2ffff, +0x1062000c, 0x2406008f, 0xe000037, 0x0, +0x3c06801f, 0x104400, 0x34c5ff00, 0x1123825, +0x24040002, 0xae272010, 0x3021, 0xae252014, +0xae242000, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0xc01021, 0x3e00008, 0x27bd0020, +0x27bdffe0, 0xafb00010, 0x30d0ffff, 0xafbf0018, +0xafb10014, 0xe000037, 0x30f1ffff, 0x102400, +0x918025, 0x3c036000, 0xac702010, 0x8fbf0018, +0x8fb10014, 0x8fb00010, 0x24020004, 0xac622000, +0x27bd0020, 0x3e00008, 0x1021, 0x27bdffe8, +0x3c0c6018, 0xafbf0010, 0x8d985000, 0x2419ff7f, +0x3c088000, 0x3197824, 0x35ee380c, 0x340d8071, +0x240a0031, 0x24090c00, 0xad8e5000, 0x3c0b800a, +0xad8d53bc, 0xad0a0008, 0xad090024, 0xe000499, +0xaf8b0030, 0xe000457, 0x0, 0xe000046, +0x0, 0x3c076000, 0x8ce50808, 0x2406fff0, +0x3c035709, 0xa62024, 0x3462f000, 0x10820043, +0x241f0001, 0xe000d1d, 0xaf80003c, 0x3c066016, +0x3c086014, 0x8cc70000, 0x8d0500a0, 0x3c03ffff, +0xe32024, 0x3c025353, 0x52fc2, 0x10820044, +0x34c87c00, 0x950201f2, 0xa7800050, 0x10400003, +0xa7800060, 0x384c1e1e, 0xa78c0050, 0x950201f8, +0x10400004, 0x8f8e003c, 0x384d1e1e, 0xa78d0060, +0x8f8e003c, 0x11c00004, 0x97870060, 0x240f0020, +0xa78f0050, 0x97870060, 0x30e4ffff, 0x2c980081, +0x17000003, 0x97860050, 0x24070080, 0x24040080, +0x2cd90401, 0x53200001, 0x24060400, 0x3c036000, +0x8c650438, 0x241f103c, 0x30a2ffff, 0x505f002a, +0xa3800062, 0x5480000c, 0xa3800062, 0x24020050, +0xa3820062, 0x93880062, 0x1100000a, 0x8fbf0010, +0x27bd0018, 0xa7800060, 0xa7800050, 0xa7800058, +0x3e00008, 0xa7800076, 0x93880062, 0x1500fff8, +0x8fbf0010, 0x27bd0018, 0xa7870060, 0xa7860050, +0xa7800058, 0x3e00008, 0xa7800076, 0xaf9f003c, +0xe000d1d, 0x0, 0x3c066016, 0x3c086014, +0x8cc70000, 0x8d0500a0, 0x3c03ffff, 0xe32024, +0x3c025353, 0x52fc2, 0x1482ffbe, 0x34c87c00, +0x55880, 0x1665021, 0x8d490004, 0x3c066000, +0xa00010e, 0x1264021, 0x8d0a003c, 0x31490001, +0x11200009, 0x0, 0x1080ffd5, 0x24020050, +0x8d0b00c8, 0x31640001, 0x1480ffd3, 0x93880062, +0xa000131, 0x24020051, 0x1480ffcf, 0x93880062, +0xa000131, 0x24020050, 0x3083ffff, 0x8f880030, +0x8f87002c, 0x32140, 0x3c058000, 0x3c020050, +0x824825, 0x3c066000, 0x3c0a0100, 0x34ac0400, +0x8ccd08e0, 0x1aa5824, 0x11600005, 0x0, +0x8ccf08e0, 0x24e70001, 0x1ea7025, 0xacce08e0, +0x8d190010, 0x1805821, 0xacb90038, 0x8d180014, +0xacb8003c, 0xaca90030, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, -0x3c0200ff, 0x3442fffd, 0x3c036004, 0xaf420e00, -0x8c705000, 0x2402ff7f, 0x2028024, 0x3610380c, -0x3c026000, 0xac705000, 0x8c440438, 0x24030009, -0xaf430008, 0xaf80001c, 0xaf800010, 0x3090ffff, -0x3a102f71, 0xe000819, 0x2610c0b3, 0xe000302, -0x0, 0x16000003, 0x0, 0x3c016000, -0xac20442c, 0xe000830, 0x0, 0xe000b90, -0x0, 0x8fbf0014, 0x8fb00010, 0x3e00008, -0x27bd0018, 0x27bdffe8, 0x3c02000a, 0x3421821, -0x3c040800, 0x24844750, 0x2405001a, 0xafbf0010, -0xaf830028, 0xe000825, 0x3021, 0x3c050800, -0x3c020800, 0x24421ec4, 0xaca247b8, 0x24a547b8, -0x3c020800, 0x24421f78, 0x3c030800, 0x24631f90, -0x3c040800, 0xaca20004, 0x3c020800, 0x24420ce4, -0xaca30008, 0xac8247d0, 0x248447d0, 0x3c020800, -0x24420e7c, 0x3c070800, 0x24e71ecc, 0x3c060800, -0x24c61fa8, 0x3c050800, 0x24a51f00, 0x3c030800, -0xac820004, 0x3c020800, 0x24421fb0, 0xac870008, -0xac86000c, 0xac850010, 0xac6247f0, 0x246347f0, -0x3c020800, 0x8fbf0010, 0x24421fc8, 0x3c040800, -0xac620004, 0x2402001d, 0xac670008, 0xac66000c, -0xac650010, 0xac820060, 0x3e00008, 0x27bd0018, -0x8f830000, 0x9062003e, 0x4021, 0x30420004, -0x10400020, 0x603821, 0x3c026000, 0x8c435404, -0x3c040800, 0x8c820060, 0x3063003f, 0x43102b, -0x10400018, 0x3c040800, 0x24834750, 0x9745093c, -0x8c620004, 0x45102b, 0x10400006, 0x804821, -0x8ce20050, 0x8ce3004c, 0x431023, 0x1c400019, -0x3021, 0x25224750, 0x8c430004, 0x8d244750, -0x83102b, 0x54400001, 0x801821, 0xa03021, -0x66102b, 0x5440000f, 0x603021, 0xa00036b, -0x93420923, 0x3c020800, 0x24434750, 0x8c650004, -0x8c444750, 0x85182b, 0x10600002, 0x404821, -0x802821, 0x9746093c, 0xa6102b, 0x54400001, -0xa03021, 0x93420923, 0x30420002, 0x1040002e, -0x25224750, 0x8f830024, 0x8ce20124, 0x621023, -0x10c00028, 0x461821, 0x443000b, 0x28420002, -0x18600018, 0x24020001, 0x10620016, 0x24080001, -0x0, 0xd, 0x0, 0x24000103, -0xa00038e, 0x24080001, 0x10400009, 0x24020001, -0x10c2000c, 0x24080001, 0x0, 0xd, -0x0, 0x2400010b, 0xa00038e, 0x24080001, -0x0, 0xd, 0x0, 0x24000111, -0x4021, 0x1100000b, 0x25244750, 0x8c830034, -0x8d254750, 0x24c6ffff, 0x24020004, 0xa0820010, -0x24630001, 0x10a00003, 0xac830034, 0x24a2ffff, -0xad224750, 0x25224750, 0xac460008, 0xa4400026, -0x3e00008, 0x1021, 0x8f840008, 0x97830014, -0x3c020800, 0x8f850000, 0x24464750, 0x24020008, -0xa4c00012, 0xa4c20014, 0x30630040, 0x3182b, -0x31823, 0x30630018, 0x34630010, 0xacc40008, -0xa0c30024, 0x90a2003e, 0x30420004, 0x10400029, -0x0, 0x9743093c, 0x8f820008, 0x43102b, -0x10400014, 0x603821, 0x3c026000, 0x8c435404, -0x3c040800, 0x8c820060, 0x3063003f, 0x43102b, -0x1040000c, 0x0, 0x94a2013e, 0x30420001, -0x14400008, 0x0, 0x8ca20050, 0x8ca3004c, -0x431023, 0x18400003, 0x24020006, 0x3e00008, -0xacc00008, 0x97820014, 0x30420040, 0x10400005, -0x0, 0x8f830000, 0x9462013e, 0xa0003d9, -0x3042fffe, 0x8f820008, 0x47102b, 0x14400005, -0x0, 0x8f830000, 0x9462013e, 0x34420001, -0xa462013e, 0x8f820008, 0x2c420001, 0x21023, -0x3e00008, 0x30420006, 0x974309da, 0x804021, -0xad030000, 0x8f4209dc, 0xad020004, 0x8f4309e0, -0xad030008, 0x934409d9, 0x24020001, 0x30840003, -0x1082001f, 0x30a900ff, 0x28820002, 0x10400005, -0x24020002, 0x10800009, 0x3c0a0800, 0xa000431, -0x93430934, 0x1082000b, 0x24020003, 0x10820026, -0x3c0a0800, 0xa000431, 0x93430934, 0x974209e4, -0x21400, 0x34420800, 0xad02000c, 0xa000430, -0x25080010, 0x974209e4, 0x21400, 0x34428100, -0xad02000c, 0x974309e8, 0x3c0a0800, 0x31c00, -0x34630800, 0xad030010, 0xa000430, 0x25080014, -0x974409e4, 0x3c050800, 0x24a24750, 0x9443001e, -0x94460016, 0x94470012, 0xa05021, 0x24020800, -0xad000010, 0xad020014, 0x42400, 0x661821, -0x671823, 0x2463fff2, 0x832025, 0xad04000c, -0xa000430, 0x25080018, 0x974209e4, 0x3c050800, -0x21400, 0x34428100, 0xad02000c, 0x974409e8, -0x24a24750, 0x9443001e, 0x94460016, 0x94470012, -0xa05021, 0x24020800, 0xad000014, 0xad020018, -0x42400, 0x661821, 0x671823, 0x2463ffee, -0x832025, 0xad040010, 0x2508001c, 0x93430934, -0x93450921, 0x3c074000, 0x25444750, 0x9482001a, -0x94860016, 0x31882, 0x31e00, 0x52c00, -0xa72825, 0x651825, 0x461021, 0x621825, -0xad030000, 0x97820030, 0x974309ea, 0x431021, -0x21400, 0x34424000, 0xad020004, 0x97830030, -0x24630001, 0x30637fff, 0xa7830030, 0x93420920, -0x3c030006, 0x21600, 0x431025, 0xad020008, -0x8f43092c, 0xad03000c, 0x8f420930, 0xad020010, -0x8f430938, 0x25080014, 0xad030000, 0x8f820024, -0x11200004, 0xad020004, 0x8f420940, 0xa00045b, -0x2442ffff, 0x8f420940, 0xad020008, 0x8f440948, -0x8f420940, 0x93430936, 0x822823, 0x652806, -0x3402ffff, 0x45102b, 0x54400001, 0x3405ffff, -0x93420937, 0x25434750, 0x90640024, 0xad000010, -0x21700, 0x42400, 0x441025, 0x451025, -0xad02000c, 0x8f830000, 0x9062003e, 0x30420008, -0x1040000b, 0x25080014, 0x3c020101, 0x3442080a, -0xad020000, 0x8f430960, 0x8f420074, 0x621821, -0xad030004, 0x8f820000, 0x8c43012c, 0xad030008, -0x3e00008, 0x1001021, 0x27bdffc0, 0x3c020008, -0x3423021, 0xafbf003c, 0xafbe0038, 0xafb70034, -0xafb60030, 0xafb5002c, 0xafb40028, 0xafb30024, -0xafb20020, 0xafb1001c, 0xafb00018, 0xaf860000, -0x24020040, 0xaf420814, 0xaf400810, 0x8f420944, -0x8f430950, 0x8f440954, 0x8f45095c, 0xaf820038, -0xaf830024, 0xaf840020, 0xaf850034, 0x90c20000, -0x24030020, 0x304400ff, 0x10830005, 0x24020030, -0x10820011, 0x3c030800, 0xa0004b3, 0x8c62002c, -0x24020088, 0xaf420818, 0x93430109, 0x3c020800, -0x10600002, 0x245747d0, 0xd, 0x9342010a, -0x30420080, 0x14400010, 0x24020800, 0xd, -0xa0004bb, 0x24020800, 0xe0008a0, 0x0, -0xa000794, 0x8fbf003c, 0x24420001, 0xac62002c, -0x0, 0xd, 0x0, 0x240002cb, -0xa000794, 0x8fbf003c, 0xaf420178, 0x8f460104, -0x8f430988, 0x24c2ffff, 0x431023, 0x58400006, -0x8f4209a0, 0x0, 0xd, 0x0, -0x240002d6, 0x8f4209a0, 0x3c100800, 0x8f850024, -0x3c040800, 0x248447b8, 0xae024780, 0x8f4309a4, -0x8c820000, 0x26044780, 0x2492ffd0, 0xae450028, -0xae430034, 0xc31823, 0x40f809, 0xac83ffd0, -0x408821, 0x32220010, 0xafa20010, 0x32220002, -0x10400007, 0x200b021, 0x8e420020, 0x32340040, -0x2403ffbf, 0x431024, 0xa000773, 0xae420020, -0x32220020, 0x10400002, 0x3c020800, 0x245747f0, -0x32220001, 0x14400007, 0x0, 0x8f82000c, -0xaf420080, 0x8ec34780, 0xaf430e10, 0x8e420034, -0xaf420e18, 0x9343010b, 0x93420905, 0x30420008, -0x10400023, 0x307300ff, 0x8f830000, 0x8c620074, -0x4400002, 0x0, 0xd, 0x9063007b, -0x9342010a, 0x14620018, 0x32340040, 0x3c090800, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x8ec24780, 0x26c34780, 0xaf420144, 0x8c620004, -0x3c030100, 0xaf420148, 0x24020047, 0xaf43014c, -0xa3420152, 0x8d240030, 0x1021, 0x24032000, -0xa7420158, 0x3c021000, 0xaf430154, 0xaf420178, -0x24840001, 0xad240030, 0xa00054c, 0x3c030800, -0x32620002, 0x1040003c, 0x3c039000, 0x34630001, -0x8f82000c, 0x32340040, 0x3c048000, 0x431025, -0xaf420020, 0x8f420020, 0x441024, 0x1440fffd, -0x0, 0x8f830000, 0x90620005, 0x3c058000, -0x34420008, 0xa0620005, 0x8f860000, 0x34a50001, -0x8f84000c, 0x8cc20074, 0x3c038000, 0x852025, -0x431025, 0xacc20074, 0xaf440020, 0x90c3007b, -0x9342010a, 0x14620019, 0x3c040800, 0x3c090800, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x8ec24780, 0x26c34780, 0xaf420144, 0x8c620004, -0x3c030100, 0xaf420148, 0x24020046, 0xaf43014c, -0xa3420152, 0x8d240030, 0x1021, 0x24032000, -0xa7420158, 0x3c021000, 0xaf430154, 0xaf420178, -0x24840001, 0xad240030, 0x3c040800, 0x3c020800, -0x24424750, 0x8c430020, 0x2404ffbf, 0x641824, -0xa000773, 0xac430020, 0x93420108, 0x30420010, -0x10400032, 0x3c090800, 0x8f850000, 0x3c088000, -0x90a6007f, 0x90a2007e, 0x90a30080, 0x90a7007a, -0x30c600ff, 0x21600, 0x62400, 0x441025, -0x31a00, 0x431025, 0xe23825, 0xa0a6000a, -0x8f420178, 0x481024, 0x1440fffd, 0x8ec24780, -0x26c64780, 0x24c5ffd0, 0xaf420144, 0x8ca20034, -0xaf420148, 0x24020052, 0xaf47014c, 0xa3420152, -0x8d240030, 0x24036000, 0x1021, 0xa7420158, -0x3c021000, 0xaf430154, 0xaf420178, 0x24840001, -0x16600007, 0xad240030, 0x8ca20020, 0x32340040, -0x2403ffbf, 0x431024, 0xa000773, 0xaca20020, -0x8cc2ffd0, 0x10400005, 0x3c030800, 0x8c620034, -0xacc0ffd0, 0x24420001, 0xac620034, 0x9343093f, -0x24020012, 0x5462000e, 0x97420908, 0x32620038, -0x14400009, 0x3c030800, 0x8f830000, 0x8c62004c, -0xac62005c, 0x3c020800, 0x24444750, 0x8c820020, -0xa0005b2, 0x32340040, 0xac604750, 0x97420908, -0x5440001c, 0x97420908, 0x3c039000, 0x34630001, -0x8f82000c, 0x32340040, 0x3c048000, 0x431025, -0xaf420020, 0x8f420020, 0x441024, 0x1440fffd, -0x3c028000, 0x8f840000, 0x8f85000c, 0x34420001, -0x8c830050, 0xa22825, 0x3c020800, 0xaf830024, -0xac830070, 0xac83005c, 0x24444750, 0xaf450020, -0x8c820020, 0x2403ffbf, 0x431024, 0xa000773, -0xac820020, 0x211c0, 0xaf420024, 0x97420908, -0x3c030080, 0x34630003, 0x211c0, 0xaf42080c, -0xaf43081c, 0x974209ec, 0x8f4309a4, 0xa7820030, -0x3c020800, 0x24444750, 0xac83002c, 0x93420937, -0x93430934, 0x21080, 0x621821, 0xa483001a, -0x934209d8, 0x621821, 0xa483001c, 0x934209d8, -0x93430934, 0x3c1e0800, 0x80a021, 0x431021, -0x24420010, 0xa4820018, 0xa821, 0x24020006, -0xae820020, 0x32620038, 0x10400003, 0xa2800010, -0xa000622, 0x24110008, 0x8f420958, 0x8f830024, -0x8f840034, 0x431023, 0x832023, 0x4800003, -0xae820004, 0x4410003, 0x82102b, 0xa0005e8, -0xae800004, 0x54400001, 0xae840004, 0x8ee20000, -0x40f809, 0x0, 0x3c030800, 0x24644750, -0x90830010, 0x408821, 0x32220001, 0x14400015, -0x739825, 0x8c830008, 0x1060002e, 0x3c02c000, -0x621025, 0xaf420e00, 0x8f420000, 0x30420008, -0x1040fffd, 0x0, 0x97420e08, 0xa7820014, -0x8f430e04, 0x8e820008, 0xaf830008, 0x8f840008, -0x44102b, 0x10400003, 0x24150001, 0xd, -0x24150001, 0x8ee20004, 0x40f809, 0x0, -0x2228825, 0x32220002, 0x50400029, 0x8f470940, -0x12a00006, 0x8ec24780, 0x8f830000, 0xac6200a8, -0x8f840000, 0x8e820034, 0xac8200ac, 0x8f830000, -0x9062003e, 0x30420004, 0x10400008, 0x32220004, -0x12a00006, 0x0, 0x8e820008, 0x2102b, -0x21023, 0x2a2a824, 0x32220004, 0x50400014, -0x8f470940, 0x3c020800, 0x3263007d, 0x106000f7, -0x245747f0, 0x32620001, 0x50400006, 0x36310002, -0x8f830038, 0x8f420940, 0x106200f0, 0x0, -0x36310002, 0x24020008, 0xa6820014, 0x24020010, -0xa6800012, 0xae800008, 0xa2820024, 0x8f470940, -0x3c040800, 0x24884750, 0x8d02002c, 0x8d050008, -0x95040012, 0x9506000a, 0x95030026, 0x451021, -0x862021, 0x641821, 0xaf870038, 0xad02002c, -0x32620030, 0x10400009, 0xa5030016, 0x91020024, -0x32720040, 0x304200ef, 0x34420004, 0xa1020024, -0xaf400048, 0xa000678, 0x27d04750, 0x93420923, -0x30420002, 0x10400028, 0x32720040, 0x8f820000, -0x8f830024, 0x8c440124, 0x831023, 0x4400023, -0x27d04750, 0x95020016, 0x621021, 0x821023, -0x5c40001f, 0x96020012, 0x3c029000, 0x34420001, -0x91030024, 0x8f84000c, 0x3c058000, 0x34630001, -0x822025, 0xa1030024, 0xaf440020, 0x8f420020, -0x451024, 0x1440fffd, 0x0, 0x8f840000, -0x9083003f, 0x2402000a, 0x10620005, 0x2402000c, -0x9083003f, 0x24020008, 0x14620002, 0x24020014, -0xa082003f, 0x8f83000c, 0x3c028000, 0x34420001, -0x621825, 0xaf430020, 0x27d04750, 0x96020012, -0x9603001c, 0x96040014, 0x431021, 0x442021, -0x24840002, 0x3084ffff, 0xe0002b3, 0xa602001e, -0x8f85001c, 0xa01821, 0xa2030025, 0x8ee60008, -0x402021, 0x24a50001, 0xaf85001c, 0xc0f809, -0x0, 0x402021, 0xe0003df, 0x2402821, -0x8ee3000c, 0x60f809, 0x402021, 0x9604001e, -0x96020014, 0x822021, 0x24840002, 0xe0002c9, -0x3084ffff, 0x8fc24750, 0x8e030008, 0x431023, -0x14400012, 0xafc24750, 0x54600006, 0x8e020020, -0x3223004a, 0x24020002, 0x14620005, 0x0, -0x8e020020, 0x34420040, 0xa0006ab, 0xae020020, -0x52a00006, 0x36310002, 0x8e020030, 0xaf420e10, -0x8e030034, 0xaf430e18, 0x36310002, 0x52a00008, -0x96870016, 0x8f830000, 0x8f420e10, 0xac6200a8, -0x8f840000, 0x8f420e18, 0xac8200ac, 0x96870016, -0x92880024, 0x24020040, 0xaf420814, 0x8f820024, -0x471821, 0x31020001, 0xaf830024, 0x10400002, -0x24620001, 0xaf820024, 0x8f830024, 0x8f820020, -0x621023, 0x18400008, 0x0, 0x8f820000, -0xaf830020, 0xac430054, 0x54e00005, 0xaf400040, -0xa0006ce, 0x8f42095c, 0x54e00001, 0xaf400044, -0x8f42095c, 0x31030008, 0xaf820034, 0x10600016, -0x0, 0x8f840000, 0x90820120, 0x90830121, -0x304600ff, 0xc31823, 0x30630007, 0x24020007, -0x1062000c, 0x24020001, 0xa0820122, 0x8f850000, -0x61880, 0x8f840024, 0x24a20100, 0x431021, -0x24c30001, 0x30630007, 0xac440000, 0xa0006e7, -0xa0a30120, 0xa0800122, 0x14e00003, 0x31020001, -0x10400020, 0x32320002, 0x8f820000, 0x8c43000c, -0x30630001, 0x1060001b, 0x32320002, 0x3c029000, -0x8f83000c, 0x34420001, 0x3c048000, 0x621825, -0xaf430020, 0x8f420020, 0x441024, 0x1440fffd, -0x0, 0x8f830000, 0x8c62000c, 0x30420001, -0x10400007, 0x0, 0xe0007fc, 0x0, -0x8f430074, 0x8f840000, 0x431021, 0xac82000c, -0x8f83000c, 0x3c028000, 0x34420001, 0x621825, -0xaf430020, 0x8f820024, 0x3c030800, 0x24704750, -0xae020028, 0x8ee30010, 0x60f809, 0x0, -0x8f82002c, 0x24420001, 0xaf82002c, 0x12a00005, -0xaf40004c, 0x8f420e10, 0xae020030, 0x8f430e18, -0xae030034, 0x1240feb9, 0xa821, 0x8f870028, -0x97860030, 0x8f830000, 0x8f820038, 0x8f840024, -0x8f850020, 0x32340040, 0xa4e6002c, 0xac620044, -0x32220008, 0xac640050, 0xac650054, 0x10400040, -0x32620020, 0x10400018, 0x32650010, 0x3c090800, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x8ec24780, 0x26c34780, 0xaf420144, 0x8c620004, -0x3c030400, 0xaf420148, 0x24020041, 0xaf43014c, -0xa3420152, 0x8d240030, 0x1021, 0x24032000, -0xa7420158, 0x3c021000, 0xaf430154, 0xaf420178, -0x24840001, 0xad240030, 0x10a0000d, 0x3c090800, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x8ec24780, 0x26c34780, 0xaf420144, 0x8c620004, -0x3c030300, 0xaf420148, 0xa00075e, 0x2402004e, -0x32620008, 0x10400016, 0x3c038000, 0x8f420178, -0x431024, 0x1440fffd, 0x8ec24780, 0x26c34780, -0xaf420144, 0x8c620004, 0x3c030200, 0xaf420148, -0x2402004b, 0xaf43014c, 0xa3420152, 0x8d240030, -0x1021, 0x24032000, 0xa7420158, 0x3c021000, -0xaf430154, 0xaf420178, 0x24840001, 0xad240030, -0x8fa40010, 0x14800004, 0x3c030800, 0x32220010, -0x10400005, 0x0, 0x246347b8, 0x8c620004, -0x40f809, 0x0, 0x12800007, 0x3c040800, -0x248447b8, 0x8c820008, 0x40f809, 0x0, -0xa000794, 0x8fbf003c, 0x3c030800, 0x8c624770, -0x30420040, 0x14400015, 0x8fbf003c, 0x8f840024, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x8ec24780, 0x26c34780, 0xaf420144, 0x8c620004, -0x1821, 0xaf420148, 0x24020049, 0xaf44014c, -0xa3420152, 0x24020040, 0xa7430158, 0x3c031000, -0xaf420154, 0xaf430178, 0x8fbf003c, 0x8fbe0038, -0x8fb70034, 0x8fb60030, 0x8fb5002c, 0x8fb40028, -0x8fb30024, 0x8fb20020, 0x8fb1001c, 0x8fb00018, -0x3e00008, 0x27bd0040, 0x3c029000, 0x8f83000c, -0x34420001, 0x3c048000, 0x621825, 0xaf430020, -0x8f420020, 0x441024, 0x1440fffd, 0x0, -0x3e00008, 0x0, 0x8f83000c, 0x3c028000, -0x34420001, 0x621825, 0x3e00008, 0xaf430020, -0x3e00008, 0x1021, 0x3c020800, 0x24424750, -0x90450025, 0x9443001e, 0x3c021100, 0xac800004, -0x52c00, 0x24630002, 0x621825, 0xa32825, -0x24820008, 0x3e00008, 0xac850000, 0x3c020800, -0x24424750, 0x90470025, 0x8c480008, 0x8c460020, -0x8f850024, 0x3c030800, 0x3c048000, 0x8f420178, -0x441024, 0x1440fffd, 0x8c624780, 0x24634780, -0xaf420144, 0x8c620004, 0x30c32000, 0xaf420148, -0x3c021000, 0xaf45014c, 0xa3470152, 0xa7480158, -0xaf460154, 0xaf420178, 0x10600004, 0x3c030800, -0x8c620030, 0x24420001, 0xac620030, 0x3e00008, -0x0, 0x0, 0xd, 0x0, -0x2400017f, 0x3e00008, 0x0, 0x0, -0xd, 0x0, 0x2400018a, 0x3e00008, -0x0, 0x3e00008, 0x0, 0x3c020800, -0x24424750, 0xac400008, 0xa4400026, 0x3e00008, -0x24020001, 0x3c020800, 0x24424750, 0x24030008, -0x24040010, 0xac400008, 0xa4400012, 0xa4430014, -0xa0440024, 0x3e00008, 0x24020004, 0x8f820000, -0x90430081, 0x1460000e, 0x403021, 0x94c2006a, -0x22080, 0x50800001, 0x24040001, 0x94c20068, -0x3c030800, 0x8c650024, 0x442021, 0xa4182b, -0x54600001, 0x802821, 0xa00080e, 0xa02021, -0x8cc40028, 0x3c020800, 0x8c450028, 0x85182b, -0x54600001, 0x802821, 0x90c20081, 0x14400002, -0xa02021, 0xacc40028, 0x3e00008, 0x41040, -0x3e00008, 0x1021, 0x10c00007, 0x0, -0x8ca20000, 0x24c6ffff, 0x24a50004, 0xac820000, -0x14c0fffb, 0x24840004, 0x3e00008, 0x0, -0xa00082c, 0xa01021, 0xac860000, 0x0, -0x0, 0x24840004, 0xa01021, 0x1440fffa, -0x24a5ffff, 0x3e00008, 0x0, 0x27bdffe8, -0x3c02000a, 0x3421821, 0x3c040800, 0x24844750, -0x2405001a, 0xafbf0010, 0xaf830028, 0xe000825, -0x3021, 0x3c050800, 0x3c020800, 0x24422d34, -0xaca24810, 0x24a54810, 0x3c020800, 0x24422dec, -0x3c030800, 0x24632df4, 0x3c040800, 0xaca20004, -0x3c020800, 0x24422d3c, 0xaca30008, 0xac824820, -0x24844820, 0x3c020800, 0x24422d78, 0x3c070800, -0x24e72db8, 0x3c060800, 0x24c62dfc, 0x3c050800, -0x24a52190, 0x3c030800, 0xac820004, 0x3c020800, -0x24422e04, 0xac870008, 0xac86000c, 0xac850010, -0xac624840, 0x24634840, 0x8fbf0010, 0x3c020800, -0x24422e1c, 0xac620004, 0xac670008, 0xac66000c, -0xac650010, 0x3e00008, 0x27bd0018, 0x3c030800, -0x24624750, 0x90490025, 0x8c4a0008, 0x8f880024, -0x8c460020, 0x602821, 0x3c038000, 0xc03821, -0x8f420178, 0x431024, 0x1440fffd, 0x0, -0x97420e16, 0x93440900, 0xa7420146, 0x97430e14, -0x24020030, 0xa7430144, 0xaf48014c, 0xa3490152, -0x14820020, 0xa74a0158, 0x93420108, 0x30420008, -0x10400007, 0x24a34750, 0x93420108, 0x30420010, -0x14400008, 0x34c71000, 0xa00088a, 0x34c71008, -0x8c620020, 0x30420008, 0x54400001, 0x34c70008, -0x34e71000, 0x24a54750, 0x90a20064, 0xa3420150, -0x90a30064, 0x8f840048, 0x3063007f, 0x31080, -0x431021, 0x210c0, 0x248400ac, 0x822021, -0x8c830000, 0xaf430148, 0xaf470154, 0xa00089e, -0x3c021000, 0x8f420e1c, 0xaf420148, 0xaf460154, -0x3c021000, 0x3e00008, 0xaf420178, 0x27bdffc8, -0x3c020008, 0x3421821, 0xafbf0034, 0xafbe0030, -0xafb7002c, 0xafb60028, 0xafb50024, 0xafb40020, +0x0, 0x0, 0x3c038000, 0x8c640000, +0x30820020, 0x1040fffd, 0x3c0f6000, 0x8ded08e0, +0x3c0e0100, 0x1ae1824, 0x1460ffe1, 0x0, +0xaf87002c, 0x3e00008, 0xaf8b0040, 0x8f850030, +0x240bfff0, 0x3c068000, 0x94a7001a, 0x8ca90024, +0x30ecffff, 0xc38c0, 0xeb5024, 0x12a4021, +0xacc8003c, 0x8ca40024, 0x8cc3003c, 0x831023, +0x18400033, 0x0, 0x8cad0020, 0x25a20001, +0x3c0f0050, 0xacc20038, 0x35ee0010, 0x3c068000, +0xacce0030, 0x0, 0x0, 0x0, +0x0, 0x0, 0x0, 0x0, +0x0, 0x3c048000, 0x8c990000, 0x33380020, +0x1300fffd, 0x30e20008, 0x10400017, 0x3c098000, +0x8c880408, 0xaca80010, 0x8c83040c, 0xaca30014, +0x3c190020, 0x3c188000, 0xaf190030, 0x94ae0018, +0x94af001c, 0x1cf3021, 0xa4a60018, 0x94ad001a, +0x25a70001, 0xa4a7001a, 0x94ab001a, 0x94ac001e, +0x118b0003, 0x0, 0x3e00008, 0x0, +0x3e00008, 0xa4a0001a, 0x8d2a0400, 0xacaa0010, +0x8d240404, 0xaca40014, 0xa0001be, 0x3c190020, +0x8ca20020, 0xa0001a6, 0x3c0f0050, 0xa000194, +0x0, 0x3c030800, 0x8c630020, 0x8f820038, +0x27bdffe8, 0x10620008, 0xafbf0010, 0xe0001d8, +0xaf830038, 0x3c030800, 0x8c630020, 0x24040001, +0x10640004, 0x8f8c0030, 0x8fbf0010, 0x3e00008, +0x27bd0018, 0x8fbf0010, 0x3c058000, 0xa580000a, +0x958b000a, 0x958a0004, 0x27bd0018, 0x3167ffff, +0x3149000f, 0x94500, 0xe83025, 0x3e00008, +0xaca60080, 0x3c020800, 0x8c420020, 0x27bdffc8, +0xafbf0034, 0xafbe0030, 0xafb7002c, 0xafb60028, +0xafb50024, 0xafb40020, 0xafb3001c, 0xafb20018, +0xafb10014, 0x10400053, 0xafb00010, 0x8f840030, +0x94860006, 0x9483000a, 0xc32823, 0x30b6ffff, +0x12c0004d, 0x8fbf0034, 0x94890018, 0x948a000a, +0x12a4023, 0x3102ffff, 0x2c2382b, 0x14e00002, +0x2c02021, 0x402021, 0x2c8c0005, 0x15800002, +0x80a021, 0x24140004, 0xe000167, 0x2802021, +0x8f870030, 0x2809821, 0xaf800034, 0x94ed000a, +0x2808821, 0x12800051, 0x31b2ffff, 0x3c177000, +0x3c154000, 0x3c1e6000, 0x8f8f0040, 0x8dee0000, +0x1d71824, 0x50750053, 0x2202021, 0x2a3802b, +0x16000038, 0x3c182000, 0x1078004a, 0x0, +0x24100001, 0x8f830034, 0x1460003c, 0x2915823, +0x230f823, 0x250c821, 0x33f1ffff, 0x1620ffee, +0x3332ffff, 0x8f870030, 0x3c120020, 0x3c118000, +0xae320030, 0x94ea000a, 0x3c178000, 0x26a4821, +0xa4e9000a, 0x94e3000a, 0x94e80004, 0x3065ffff, +0x3106000f, 0x61500, 0xa2f025, 0xaefe0080, +0x94f4000a, 0x94f50018, 0x12b4003a, 0x13c940, +0x8cf80014, 0x8cee0010, 0x3195821, 0x7821, +0x179682b, 0x1cf6021, 0x18d2021, 0xaceb0014, +0xace40010, 0x2d33823, 0x30f6ffff, 0x16c0ffb6, +0x8f840030, 0x8fbf0034, 0x8fbe0030, 0x8fb7002c, +0x8fb60028, 0x8fb50024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0038, 0x107e001b, 0x0, 0x1477ffc9, +0x24100001, 0xe001644, 0x0, 0x8f830034, +0x1060ffc8, 0x230f823, 0x2915823, 0x8f870030, +0x1702021, 0xa000271, 0x3093ffff, 0x8f830034, +0x1460ffc8, 0x3c120020, 0x3c118000, 0xa00023a, +0xae320030, 0xe0003ea, 0x2202021, 0xa00022e, +0x408021, 0xe000c53, 0x2402821, 0xa00022e, +0x408021, 0xe000f04, 0x2202021, 0xa00022e, +0x408021, 0xe000194, 0x0, 0xa000253, +0x2d33823, 0x27bdffd0, 0xafb50024, 0xafb40020, 0xafb3001c, 0xafb20018, 0xafb10014, 0xafb00010, -0xaf830004, 0xe00079f, 0x0, 0x24020040, -0xaf420814, 0xaf400810, 0x8f420944, 0x8f430950, -0x8f440954, 0x8f45095c, 0xaf820038, 0xaf830024, -0xaf840020, 0xaf850034, 0xe0007ab, 0x0, -0x93430900, 0x24020020, 0x10620005, 0x24020030, -0x1062000f, 0x0, 0xa0008dd, 0x0, -0xd, 0x0, 0xd, 0x0, -0x240001fd, 0x24020088, 0xaf420818, 0x3c020800, -0x24574810, 0x3c030800, 0xa0008e0, 0x24734820, -0x93430109, 0x3063007f, 0x31140, 0x318c0, -0x431021, 0x24430088, 0xaf430818, 0x3c020800, -0x24574860, 0x3c030800, 0xa0008e0, 0x24734870, -0xd, 0xb821, 0x9821, 0x24020800, -0xaf420178, 0x8f440104, 0x93420108, 0x30420010, -0x10400004, 0x3c020800, 0xac404750, 0xa0008ef, -0x40a821, 0x8f4209a4, 0x3c030800, 0x60a821, -0x821023, 0xac624750, 0x8f420958, 0x8f830024, -0x26b04750, 0x431023, 0xae020004, 0xae030028, -0x8ee20000, 0x40f809, 0x0, 0x408821, -0x32220002, 0x14400015, 0x323e0010, 0x32220020, -0x10400002, 0x3c020800, 0x24534840, 0x32220001, -0x5440000b, 0x93420905, 0x8f82000c, 0x8f4309a4, -0xaf420080, 0x8f4209a0, 0xaf430e18, 0x8f430e18, -0xaf420e10, 0xaf420e14, 0xaf430e1c, 0x93420905, -0x30420008, 0x10400006, 0x0, 0x8e020020, -0x2403ffbf, 0x431024, 0xa000b00, 0xae020020, -0x9342010b, 0x30420002, 0x10400035, 0x0, -0x8f830004, 0x90620005, 0x24062040, 0x3c048000, -0x34420008, 0xa0620005, 0x8f420178, 0x441024, -0x1440fffd, 0x0, 0x97420e16, 0x93440900, -0xa7420146, 0x97430e14, 0x3c020100, 0xa7430144, -0x24030080, 0xaf42014c, 0x1021, 0xa3430152, -0x24030030, 0x1483020d, 0xa7420158, 0x93420108, -0x30420008, 0x10400007, 0x26a34750, 0x93420108, -0x30420010, 0x14400008, 0x24063040, 0xa00093f, -0x24063048, 0x8c620020, 0x30420008, 0x54400001, -0x24062048, 0x34c61000, 0x26a54750, 0x90a20064, -0xa3420150, 0x90a30064, 0x8f840048, 0x3063007f, -0x31080, 0x431021, 0x210c0, 0x248400ac, -0x822021, 0x8c830000, 0xa000b3e, 0xaf430148, -0x93420108, 0x30420010, 0x1040004a, 0x24076000, -0x8f850004, 0x3c088000, 0x90a2007e, 0x90a4007f, -0x90a30080, 0x90a6007a, 0x21600, 0x42400, -0x441025, 0x31a00, 0x431025, 0xc23025, -0x8f420178, 0x481024, 0x1440fffd, 0x0, -0x97420e16, 0x93440900, 0xa7420146, 0x97430e14, -0x24020052, 0xa7430144, 0x1821, 0xaf46014c, -0xa3420152, 0x24020030, 0x1482001e, 0xa7430158, -0x93420108, 0x30420008, 0x10400007, 0x26a34750, -0x93420108, 0x30420010, 0x14400008, 0x24077000, -0xa00097c, 0x24077008, 0x8c620020, 0x30420008, -0x54400001, 0x24076008, 0x34e71000, 0x26a54750, -0x90a20064, 0xa3420150, 0x90a30064, 0x8f840048, -0x3063007f, 0x31080, 0x431021, 0x210c0, -0x248400ac, 0x822021, 0x8c830000, 0xa00098c, -0xaf430148, 0x8f420e1c, 0xaf420148, 0xaf470154, -0x3c021000, 0xaf420178, 0x9343010b, 0x14600007, -0x8ea24750, 0x26a24750, 0x8c430020, 0x2404ffbf, -0x641824, 0xa000b00, 0xac430020, 0x54400001, -0xaea04750, 0x97420908, 0x211c0, 0xaf420024, -0x97420908, 0x3c030080, 0x34630003, 0x211c0, -0xaf42080c, 0xaf43081c, 0x974209ec, 0x8f4309a4, -0x26a44750, 0xa7820030, 0xac83002c, 0x93420937, -0x93430934, 0x21080, 0x621821, 0xa483001a, -0x934209d8, 0x621821, 0xa483001c, 0x934209d8, -0x93430934, 0x809021, 0x2a0b021, 0x431021, -0x24420010, 0xa4820018, 0x24020006, 0xae420020, -0x8f430958, 0x8f820024, 0x8f840034, 0xa021, -0x621823, 0x822023, 0x4800003, 0xae430004, -0x4610003, 0x83102b, 0xa0009c7, 0xae400004, -0x54400001, 0xae440004, 0x8e620000, 0x40f809, -0x0, 0x408821, 0x32220001, 0x54400010, -0x8e620004, 0x8e430008, 0x10600021, 0x3c02c000, -0x621025, 0xaf420e00, 0x8f420000, 0x30420008, -0x1040fffd, 0x0, 0x97420e08, 0xa7820014, -0x8f430e04, 0x24140001, 0xaf830008, 0x8e620004, -0x40f809, 0x0, 0x2228825, 0x32220002, -0x50400022, 0x8f490940, 0x1280000b, 0x32220004, -0x97420e14, 0x97430e16, 0x8f850004, 0x21400, -0x621825, 0xaca300a8, 0x8f840004, 0x8f420e1c, -0xac8200ac, 0x32220004, 0x50400014, 0x8f490940, -0x9343010b, 0x3c020800, 0x30630005, 0x106000f9, -0x24534840, 0x9342010b, 0x30420001, 0x50400006, -0x36310002, 0x8f830038, 0x8f420940, 0x106200f1, -0x0, 0x36310002, 0x24020008, 0xa6400012, -0xa6420014, 0xae400008, 0x8f490940, 0x26b04750, -0x8e06002c, 0x8e070008, 0x96030012, 0x9608000a, -0x9605001c, 0x96040014, 0x96020026, 0x652821, -0xa42021, 0x24840002, 0x3084ffff, 0xc73021, -0x681821, 0x431021, 0xaf890038, 0xae06002c, -0xa6020016, 0xe0002b3, 0xa605001e, 0x8f85001c, -0xa01821, 0xa2030025, 0x8e660008, 0x402021, -0x24a50001, 0xaf85001c, 0xc0f809, 0x0, -0x974309da, 0x403821, 0xace30000, 0x8f4209dc, -0xace20004, 0x8f4309e0, 0xace30008, 0x934409d9, -0x24020001, 0x30840003, 0x1082001d, 0xe04021, -0x28820002, 0x10400005, 0x24020002, 0x50800009, -0x974209e4, 0xa000a6a, 0x93420934, 0x1082000a, -0x24020003, 0x50820021, 0x974209e4, 0xa000a6a, -0x93420934, 0x24e80010, 0x21400, 0x34420800, -0xa000a69, 0xace2000c, 0x974209e4, 0x21400, -0x34428100, 0xace2000c, 0x974309e8, 0x24e80014, -0x31c00, 0x34630800, 0xa000a69, 0xace30010, -0x974409e4, 0x9603001e, 0x96050016, 0x96060012, -0x24e80018, 0x24020800, 0xace00010, 0xace20014, -0x42400, 0x651821, 0x661823, 0x2463fff2, -0x832025, 0xa000a69, 0xace4000c, 0x21400, -0x34428100, 0xace2000c, 0x974409e8, 0x9603001e, -0x96050016, 0x96060012, 0x24e8001c, 0x24020800, -0xace00014, 0xace20018, 0x42400, 0x651821, -0x661823, 0x2463ffee, 0x832025, 0xace40010, -0x93420934, 0x93440921, 0x3c064000, 0x26d04750, -0x9603001a, 0x96050016, 0x21082, 0x21600, -0x42400, 0x862025, 0x441025, 0x651821, -0x431025, 0xad020000, 0x97830030, 0x974209ea, -0x621821, 0x31c00, 0xad030004, 0x97820030, -0x24420001, 0x30427fff, 0xa7820030, 0x93430920, -0x3c020006, 0x31e00, 0x621825, 0xad030008, -0x8f42092c, 0xad02000c, 0x8f430930, 0xad030010, -0x8f440938, 0x25080014, 0xad040000, 0x8f820024, -0xad020004, 0x8f430940, 0xad030008, 0x93420937, -0x92030024, 0x8f440948, 0x8f450940, 0xad000010, -0x21700, 0x34630010, 0x31c00, 0x431025, -0x852023, 0x3084ffff, 0x441025, 0xad02000c, -0x8e63000c, 0x60f809, 0x25040014, 0x9604001e, -0x96020014, 0x822021, 0x24840002, 0xe0002c9, -0x3084ffff, 0x8ec24750, 0x8e030008, 0x431023, -0x14400014, 0xaec24750, 0x54600006, 0x8e020020, -0x32230042, 0x24020002, 0x14620005, 0x0, -0x8e020020, 0x34420040, 0xa000abd, 0xae020020, -0x52800008, 0x36310002, 0x97420e14, 0xa7420e10, -0x97430e16, 0xa7430e12, 0x8f420e1c, 0xaf420e18, -0x36310002, 0x1280000a, 0x0, 0x97420e10, -0x97430e12, 0x8f850004, 0x21400, 0x621825, -0xaca300a8, 0x8f840004, 0x8f420e18, 0xac8200ac, -0xe00079f, 0x96500016, 0x24020040, 0xaf420814, -0x8f830024, 0x8f820020, 0x702021, 0x821023, -0xaf840024, 0x58400006, 0x8f42095c, 0x8f830004, -0xac640054, 0x8c620054, 0xaf820020, 0x8f42095c, -0xaf820034, 0x12000009, 0x0, 0x8f830004, -0x8c62000c, 0x30420001, 0x10400004, 0x0, -0x8f420074, 0x244203e8, 0xac62000c, 0xe0007ab, -0x0, 0x8f820024, 0xae420028, 0x8e630010, -0x60f809, 0x0, 0x32220002, 0x1040fecb, -0x24020006, 0x8f870028, 0x97860030, 0x8f820004, -0x8f830038, 0x8f840024, 0x8f850020, 0xa4e6002c, -0xac430044, 0xac440050, 0xac450054, 0x57c00005, -0x8ee20004, 0x32220010, 0x10400005, 0x32220040, -0x8ee20004, 0x40f809, 0x0, 0x32220040, -0x10400006, 0x26a34750, 0x8ee20008, 0x40f809, -0x0, 0xa000b42, 0x8fbf0034, 0x8c620020, -0x30420040, 0x14400037, 0x8fbf0034, 0x24060040, -0x8f850024, 0x3c038000, 0x8f420178, 0x431024, -0x1440fffd, 0x0, 0x97420e16, 0x93440900, -0xa7420146, 0x97430e14, 0x1021, 0xa7430144, -0x1821, 0xaf45014c, 0xa3420152, 0x24020030, -0x1482001e, 0xa7430158, 0x93420108, 0x30420008, -0x10400007, 0x26a34750, 0x93420108, 0x30420010, -0x14400008, 0x24061040, 0xa000b2e, 0x24061048, -0x8c620020, 0x30420008, 0x54400001, 0x24060048, -0x34c61000, 0x26a54750, 0x90a20064, 0xa3420150, -0x90a30064, 0x8f840048, 0x3063007f, 0x31080, -0x431021, 0x210c0, 0x248400ac, 0x822021, -0x8c830000, 0xa000b3e, 0xaf430148, 0x8f420e1c, -0xaf420148, 0xaf460154, 0x3c021000, 0xaf420178, -0x8fbf0034, 0x8fbe0030, 0x8fb7002c, 0x8fb60028, -0x8fb50024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, -0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0038, -0x3e00008, 0x1021, 0x3c030800, 0x24654750, -0x8ca40004, 0x8c634750, 0x64102b, 0x54400001, -0x602021, 0x9743093c, 0x83102b, 0x54400001, -0x801821, 0x1021, 0xaca30008, 0x3e00008, -0xa4a00026, 0x8f850008, 0x97840014, 0x3c030800, -0x24634750, 0x24020008, 0xa4620014, 0x8f820008, -0xa4600012, 0x420c2, 0x30840008, 0x2c420001, -0x21023, 0x30420006, 0xac650008, 0x3e00008, -0xa0640024, 0x3c020800, 0x24424750, 0x90450025, -0x9443001e, 0x3c021100, 0xac800004, 0x52c00, -0x24630002, 0x621825, 0xa32825, 0x24820008, -0x3e00008, 0xac850000, 0x3e00008, 0x0, -0x3e00008, 0x0, 0x3e00008, 0x0, -0x3c020800, 0x24424750, 0xac400008, 0xa4400026, -0x3e00008, 0x24020001, 0x3c020800, 0x24424750, -0x24030008, 0xac400008, 0xa4400012, 0xa4430014, -0xa0400024, 0x3e00008, 0x24020006, 0x3c020800, -0x24464890, 0x24cd0004, 0x24cc0008, 0x24cb000c, -0x24ca0010, 0x24c90014, 0x24c80018, 0x24c7001c, -0x3c02000c, 0x3421821, 0x3c040800, 0x3c020800, -0x24422f58, 0xac824860, 0x24844860, 0x3c020800, -0x244240ac, 0xaf830048, 0x3c030800, 0x24634194, -0x3c050800, 0xac820004, 0x3c020800, 0x24424308, -0xac830008, 0xaca24870, 0x24a54870, 0x3c020800, -0x24424364, 0x3c030800, 0x24633c58, 0xaca20008, -0x3c020800, 0x24423f30, 0xaca3000c, 0xaca20010, -0xaf800050, 0xaf800040, 0x8f850040, 0x52140, -0x861021, 0x8d1821, 0xac400000, 0x8c1021, -0xac600000, 0x8b1821, 0xac400000, 0x8a1021, -0xac600000, 0x891821, 0xac400000, 0x881021, -0x872021, 0x24a50001, 0xac600000, 0xac400000, -0xac800000, 0xaf850040, 0x2ca50040, 0x14a0ffea, -0x0, 0xaf800040, 0xaf800044, 0xaf80007c, -0xaf800058, 0xaf80004c, 0xaf800074, 0x3e00008, -0x0, 0x27bdffe0, 0xafbf001c, 0xafb20018, -0xafb10014, 0xafb00010, 0x8f430100, 0x8f860048, -0xaf430028, 0x90c20074, 0x3042007f, 0xa382006c, -0x90c30083, 0xa383003c, 0x90c20078, 0x93440109, -0x3c050800, 0x24b14750, 0xa2230064, 0x309000ff, -0x3202007f, 0xa3820078, 0x9343010b, 0x24070001, -0x30630002, 0x10600008, 0xa09021, 0x8cc20074, -0x3c038000, 0x431025, 0xacc20074, 0x90c3021b, -0x34630001, 0xa0c3021b, 0x9383003c, 0x24020003, -0x12030032, 0xa2220065, 0x93420108, 0x30420010, -0x14400007, 0x0, 0x8f820048, 0x8c430074, -0x3c048000, 0x641825, 0xa000c0f, 0xac430074, -0x8f840048, 0x9082021b, 0x30420001, 0x14400006, -0x0, 0x8c830074, 0x3c027fff, 0x3442ffff, -0x621824, 0xac830074, 0x93420108, 0x30420008, -0x10400004, 0x0, 0xe001124, 0x2002021, -0x408021, 0x9382003c, 0x12020009, 0x0, -0xe0010fe, 0x2002021, 0xe001124, 0x2002021, -0x9383003c, 0x408021, 0x1603fff9, 0x0, -0xe0010fe, 0x2002021, 0x8f830048, 0x9062021b, -0x30420001, 0x14400045, 0x26434750, 0x24020001, -0xa0620065, 0xa000c6f, 0x24070030, 0x93420108, -0x30420018, 0x10400009, 0x8e424750, 0x93420108, -0x30420010, 0x14400034, 0x24070021, 0xe001124, -0x2002021, 0xa000c3a, 0xa2220064, 0x14400003, -0x3c030800, 0xa000c67, 0x24070021, 0x93820078, -0x8f860048, 0x21140, 0x24420120, 0xc23021, -0x94c50000, 0x24634520, 0x30a5002f, 0x30a2000f, -0x21080, 0x431021, 0x8c440000, 0xa01021, -0xa785003e, 0x30a50020, 0xaf860060, 0xaf840070, -0x24840004, 0xaf840064, 0x14a00009, 0x3c030800, -0x3045ffff, 0x24020008, 0x10a20006, 0x3c020800, -0x2402000a, 0x54a20005, 0x24020006, 0x3c030800, -0x3c020800, 0xa000c66, 0x24424320, 0x10a20005, -0x3c030800, 0x24020007, 0x54a20005, 0x3c020800, -0x3c030800, 0x3c020800, 0xa000c66, 0x24423b00, -0x244231d8, 0xac624874, 0x8f830048, 0x9062021b, -0x30420001, 0x10400004, 0x26434750, 0x24020002, -0xa0620065, 0x24070042, 0x8fbf001c, 0x8fb20018, +0xafbf0028, 0xe0000e4, 0x3c148000, 0x3c028008, +0x3c032000, 0x3c010800, 0xac200070, 0x34550080, +0x34720003, 0x24130001, 0x36900070, 0x2411ff80, +0xa0002a1, 0x8e060000, 0x3c198000, 0x8f380000, +0x3b0f0001, 0x31e20001, 0x10400025, 0x8f860084, +0x8e0d0000, 0x3c0c0800, 0x8d8c003c, 0x3c090800, +0x8d290038, 0x1a67023, 0x18e3821, 0x5021, +0xee302b, 0x12a4021, 0x1062021, 0x3c010800, +0xac27003c, 0xaf8d0084, 0x3c010800, 0xac240038, +0xe0001da, 0x0, 0x3c050800, 0x8ca50070, +0x10a0ffe5, 0xa02021, 0x3c050800, 0x8ca50068, +0x3c060800, 0x8cc6006c, 0xe0015e7, 0x0, +0x3c010800, 0xac200070, 0x3c198000, 0x8f380000, +0x3b0f0001, 0x31e20001, 0x1440ffdd, 0x8f860084, +0x3c0b0800, 0x8d6b003c, 0x8f8d0084, 0x3c090800, +0x8d290038, 0x8e0c0000, 0x3c088000, 0x1222021, +0x18d3023, 0x1662821, 0xa6382b, 0x871021, +0x3c010800, 0xac25003c, 0x3c010800, 0xac220038, +0x8d030100, 0x241f0c00, 0x107f0026, 0x0, +0x8d180100, 0x240e0020, 0xad180020, 0x92af0000, +0x31e300ff, 0x106e0023, 0x24190050, 0x10790026, +0x0, 0x3c048000, 0x8c880100, 0x15000003, +0x0, 0x56600014, 0x3c044000, 0x8c990100, +0x8c8f0100, 0x9821, 0x331c024, 0x186940, +0x31ee007f, 0x1ae6025, 0x1923025, 0xac860830, +0x8c8b0100, 0x8c870100, 0x256a0100, 0x1514824, +0x92940, 0x30e3007f, 0xa31025, 0x52f825, +0xac9f0830, 0x3c044000, 0xae840138, 0xa000299, +0x0, 0xe0001f6, 0x0, 0xa0002e3, +0x3c048000, 0x8d040100, 0xe000b1c, 0x0, +0xa0002e3, 0x3c048000, 0x8d040100, 0xe001520, +0x0, 0xa0002e3, 0x3c048000, 0xa4102b, +0x24030001, 0x10400009, 0x3021, 0x52840, +0xa4102b, 0x4a00003, 0x31840, 0x5440fffc, +0x52840, 0x5060000a, 0x4182b, 0x85382b, +0x54e00004, 0x31842, 0xc33025, 0x852023, +0x31842, 0x1460fff9, 0x52842, 0x4182b, +0x3e00008, 0xc31021, 0x3084ffff, 0x30c600ff, +0x3c078000, 0x8ce201b8, 0x440fffe, 0x64c00, +0x1243025, 0x3c082000, 0xc82025, 0x3c031000, +0xace00180, 0xace50184, 0xace40188, 0x3e00008, +0xace301b8, 0x3c066000, 0x8cc5201c, 0x2402fff0, +0x30830200, 0x30860100, 0x1060000e, 0xa22824, +0x34a50001, 0x30873000, 0x10e00005, 0x30830c00, +0x34a50004, 0x3c046000, 0x3e00008, 0xac85201c, +0x1060fffd, 0x3c046000, 0x34a50008, 0x3e00008, +0xac85201c, 0x54c0fff3, 0x34a50002, 0xa00033b, +0x30873000, 0x27bdffe8, 0xafb00010, 0xafbf0014, +0x3c076000, 0x24060002, 0x10800011, 0xa08021, +0x8f830040, 0xe000332, 0x8c640018, 0x8f820040, +0x2021, 0x24060001, 0x8c45000c, 0xe000323, +0x0, 0x16000002, 0x24020003, 0x1021, +0x8fbf0014, 0x8fb00010, 0x3e00008, 0x27bd0018, +0x8ce8201c, 0x2409fff0, 0x1092824, 0xace5201c, +0x8f870040, 0xa000358, 0x8ce5000c, 0x3c02600e, +0x804021, 0x34460100, 0x24090018, 0x0, +0x0, 0x0, 0x3c0a0050, 0x3c038000, +0x35470200, 0xac680038, 0x34640400, 0xac65003c, +0xac670030, 0x8c6c0000, 0x318b0020, 0x1160fffd, +0x2407ffff, 0x2403007f, 0x8c8d0000, 0x2463ffff, +0x24840004, 0xaccd0000, 0x1467fffb, 0x24c60004, +0x0, 0x0, 0x0, 0x24a40200, +0x85282b, 0x3c030020, 0x3c0e8000, 0x2529ffff, +0x1054021, 0xadc30030, 0x1520ffe0, 0x802821, +0x3e00008, 0x0, 0x8f820040, 0x27bdffd8, +0xafb3001c, 0xafbf0020, 0xafb20018, 0xafb10014, +0xafb00010, 0x94460002, 0x809821, 0x8c520018, +0x2cc30081, 0x8c480004, 0x8c470008, 0x8c51000c, +0x8c490010, 0x10600007, 0x8c4a0014, 0x2cc40004, +0x14800013, 0x30eb0007, 0x30c50003, 0x10a00010, +0x0, 0x2410008b, 0x2002021, 0x2202821, +0xe000323, 0x24060003, 0x16600002, 0x24020003, +0x1021, 0x8fbf0020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, +0x1560fff1, 0x2410008b, 0x3c0c8000, 0x3c030020, +0x241f0001, 0xad830030, 0xaf9f0034, 0x0, +0x0, 0x0, 0x2419fff0, 0x24d8000f, +0x3197824, 0x3c1000d0, 0xad880038, 0x1f07025, +0x24cd0003, 0x3c08600e, 0xad87003c, 0x35850400, +0xad8e0030, 0xd3882, 0x3504003c, 0x3c038000, +0x8c6b0000, 0x31620020, 0x1040fffd, 0x0, +0x10e00008, 0x24e3ffff, 0x2407ffff, 0x8ca80000, +0x2463ffff, 0x24a50004, 0xac880000, 0x1467fffb, +0x24840004, 0x3c04600e, 0xac860038, 0x0, +0x0, 0x0, 0x3c070020, 0x3c068000, +0x1202021, 0x1402821, 0xacc70030, 0xe000368, +0x8021, 0xe000332, 0x2402021, 0xa0003a8, +0x2002021, 0x27bdffd8, 0xafb20018, 0x3092ffff, +0xafb10014, 0xafbf0020, 0xafb3001c, 0xafb00010, +0x1240002c, 0x8821, 0xa0003fe, 0x24130003, +0x50b3003c, 0x8ce5000c, 0xd, 0x262d0001, +0x31b1ffff, 0x24ec0020, 0x232382b, 0x10e00021, +0xaf8c0040, 0x8f820034, 0x1440001e, 0x8f870040, +0x3c067000, 0x3c032000, 0x8ce40000, 0x862824, +0x14a30018, 0x8f850048, 0x44402, 0x3c098000, +0x898024, 0x14a0ffea, 0x310600ff, 0x24040002, +0x10c4001f, 0x28ca0003, 0x11400016, 0x240b0001, +0x14cbffe7, 0x262d0001, 0x2002821, 0xe00034a, +0x24040001, 0x8f870040, 0xaf820048, 0x262d0001, +0x31b1ffff, 0x24ec0020, 0x232382b, 0x14e0ffe1, +0xaf8c0040, 0x2201021, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0028, 0x14d3ffd2, 0x262d0001, 0xe00038f, +0x2002021, 0x8f870040, 0xa000418, 0xaf820048, +0x2002821, 0xe00034a, 0x2021, 0xa000417, +0x8f870040, 0xe000323, 0x24040084, 0x1600ffc3, +0x8f870040, 0xa0003f8, 0xaf800048, 0x449c2, +0x3127003f, 0x44342, 0x3c028000, 0x82040, +0x24031680, 0x2ce60020, 0xac43002c, 0x24eaffe0, +0x24820001, 0x14c00003, 0x30a900ff, 0x801021, +0x314700ff, 0x26080, 0x3c0d8000, 0x240a0001, +0x18d2021, 0x3c0b000e, 0xea2804, 0x8b3021, +0x11200005, 0x53827, 0x8cce0000, 0x1c53825, +0x3e00008, 0xacc70000, 0x8cd80000, 0x3077824, +0x3e00008, 0xaccf0000, 0x27bdffe0, 0xafb10014, +0xafb00010, 0xafbf0018, 0x3c076000, 0x8ce40808, +0x3402f000, 0x3c116000, 0x3083f000, 0x240501c0, +0x3c04800e, 0x3021, 0x10620006, 0x24100001, +0x8cea0808, 0x3149f000, 0x3928e000, 0x8382b, +0x78040, 0x3c0d0200, 0xae2d0814, 0x240c1680, +0x3c0b8000, 0x8e274400, 0xe000fad, 0xad6c002c, +0x12000004, 0x3c021691, 0x24050001, 0x12050010, +0x3c023d6c, 0x345800e0, 0xae384408, 0x3c110800, +0x8e31007c, 0x8fbf0018, 0x3c066000, 0x118540, +0x360f1680, 0x8fb10014, 0x8fb00010, 0x3c0e0200, +0x27bd0020, 0xaccf4420, 0x3e00008, 0xacce0810, +0x3c0218da, 0x345800e0, 0xae384408, 0x3c110800, +0x8e31007c, 0x8fbf0018, 0x3c066000, 0x118540, +0x360f1680, 0x8fb10014, 0x8fb00010, 0x3c0e0200, +0x27bd0020, 0xaccf4420, 0x3e00008, 0xacce0810, +0xa000438, 0x24050001, 0xa000438, 0x2821, +0x24020400, 0xa782000c, 0xa7800004, 0x2021, +0x3c060800, 0x24c65bd8, 0x2405ffff, 0x24890001, +0x44080, 0x3124ffff, 0x1061821, 0x2c870020, +0x14e0fffa, 0xac650000, 0x24040400, 0xa784000e, +0xa7800006, 0x2021, 0x3c060800, 0x24c65c58, +0x2405ffff, 0x248d0001, 0x46080, 0x31a4ffff, +0x1865821, 0x2c8a0020, 0x1540fffa, 0xad650000, +0xa7800010, 0xa7800008, 0xa780000a, 0x2021, +0x3c060800, 0x24c65cd8, 0x2405ffff, 0x24990001, +0x4c080, 0x3324ffff, 0x3067821, 0x2c8e0004, +0x15c0fffa, 0xade50000, 0x3c056000, 0x8ca73d00, +0x2403e08f, 0xe31024, 0x34460140, 0x3e00008, +0xaca63d00, 0x2487007f, 0x731c2, 0x24c5ffff, +0x518c2, 0x24640001, 0x3082ffff, 0x238c0, +0xa7840018, 0x3c010800, 0xac270030, 0xaf800014, +0x2821, 0x2021, 0x3021, 0x24890001, +0xa72821, 0x3124ffff, 0x2ca81701, 0x11000003, +0x2c830080, 0x1460fff9, 0x24c60001, 0xa7860012, +0x3e00008, 0xaf860014, 0x30a5ffff, 0x30c6ffff, +0x30a8001f, 0x806021, 0x30e700ff, 0x52942, +0x5021, 0x10c0001d, 0x24090001, 0x240b0001, +0x25180001, 0x10b2004, 0x330800ff, 0x1267826, +0x390e0020, 0x2ded0001, 0x2dc20001, 0x1a21825, +0x1060000d, 0x1445025, 0x5c880, 0x32c4021, +0x1001821, 0x10e0000f, 0xa2027, 0x8d040000, +0x8a1825, 0xad030000, 0x24ad0001, 0x4021, +0x5021, 0x31a5ffff, 0x252e0001, 0x31c9ffff, +0xc9102b, 0x1040ffe7, 0x25180001, 0x3e00008, +0x0, 0x8d0a0000, 0x1444024, 0xa0004ff, +0xac680000, 0x27bdffe8, 0x30a5ffff, 0x30c6ffff, +0xafb00010, 0xafbf0014, 0x30e7ffff, 0x5021, +0x3410ffff, 0x6021, 0x24af001f, 0xc04821, +0x24180001, 0x24190020, 0x5e00016, 0x1e01021, +0x2f943, 0x19f682a, 0x9702b, 0x1ae4024, +0x11000017, 0xc1880, 0x641021, 0x10e00005, +0x8c4b0000, 0xf84004, 0x83823, 0x1675824, +0x3821, 0x15400041, 0x4021, 0x55600016, +0x3169ffff, 0x258b0001, 0x316cffff, 0x5e1ffec, +0x1e01021, 0x24a2003e, 0x2f943, 0x19f682a, +0x9702b, 0x1ae4024, 0x1500ffeb, 0xc1880, +0x15460005, 0x3402ffff, 0x2002821, 0xe0004e3, +0x3821, 0x2001021, 0x8fbf0014, 0x8fb00010, +0x3e00008, 0x27bd0018, 0x15200003, 0x1601821, +0xb1c02, 0x24080010, 0x306a00ff, 0x15400005, +0x306e000f, 0x250d0008, 0x31a02, 0x31a800ff, +0x306e000f, 0x15c00005, 0x307f0003, 0x25100004, +0x31902, 0x320800ff, 0x307f0003, 0x17e00005, +0x38690001, 0x25020002, 0x31882, 0x304800ff, +0x38690001, 0x31230001, 0x10600004, 0x310300ff, +0x250a0001, 0x314800ff, 0x310300ff, 0xc6940, +0x1a34021, 0x240a0001, 0x10caffd5, 0x3110ffff, +0x246e0001, 0x31c800ff, 0x1119ffc6, 0x38c90001, +0x2d1f0020, 0x53e0001c, 0x258b0001, 0x240d0001, +0xa000576, 0x240e0020, 0x51460017, 0x258b0001, +0x25090001, 0x312800ff, 0x2d090020, 0x51200012, +0x258b0001, 0x25430001, 0x10d5004, 0x14b1024, +0x25090001, 0x1440fff4, 0x306affff, 0x3127ffff, +0x10ee000c, 0x2582ffff, 0x304cffff, 0x5021, +0x3410ffff, 0x312800ff, 0x2d090020, 0x5520fff2, +0x25430001, 0x258b0001, 0x1464826, 0xa000530, +0x316cffff, 0x3821, 0x5021, 0xa000582, +0x3410ffff, 0x27bdffd8, 0xafb00010, 0x30f0ffff, +0xafb10014, 0x103942, 0x3211ffe0, 0x71080, +0xafb3001c, 0xb12823, 0x30d3ffff, 0xafb20018, +0x30a5ffff, 0x809021, 0x2603021, 0x442021, +0xafbf0020, 0xe00050e, 0x3207001f, 0x2228821, +0x3403ffff, 0x2402021, 0x2002821, 0x2603021, +0x3821, 0x10430009, 0x3231ffff, 0x2201021, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0xe00050e, +0x0, 0x408821, 0x2201021, 0x8fbf0020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0028, 0x42400, 0x3c036000, +0xac603d08, 0x10a00002, 0x34821006, 0x34821016, +0x3e00008, 0xac623d04, 0x27bdffe0, 0xafb00010, +0x309000ff, 0x2e020006, 0xafbf0018, 0x10400008, +0xafb10014, 0x103080, 0x3c030800, 0x24635944, +0xc32821, 0x8ca40000, 0x800008, 0x0, +0x2021, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x801021, 0x3e00008, 0x27bd0020, 0x97910012, +0x16200051, 0x2021, 0x3c020800, 0x90420033, +0xa0005e9, 0x0, 0x978d000e, 0x15a00031, +0x2021, 0xa0005e9, 0x24020008, 0x9787000c, +0x14e0001a, 0x1821, 0x602021, 0x24020001, +0x1080ffe9, 0x8fbf0018, 0x429c2, 0x453021, +0xa6582b, 0x1160ffe4, 0x3c088000, 0x3c072000, +0x569c0, 0x1a76025, 0xad0c0020, 0x3c038008, +0x2402001f, 0x2442ffff, 0xac600000, 0x441fffd, +0x24630004, 0x24a50001, 0xa6702b, 0x15c0fff5, +0x569c0, 0xa0005d3, 0x8fbf0018, 0x97870004, +0x3c040800, 0x24845bd8, 0x24050400, 0xe00058e, +0x24060001, 0x978b000c, 0x24440001, 0x308affff, +0x2569ffff, 0x2d480400, 0x402821, 0x15000040, +0xa789000c, 0x24ac3800, 0xc19c0, 0xa0005e7, +0xa7800004, 0x97870006, 0x3c040800, 0x24845c58, +0x24050400, 0xe00058e, 0x24060001, 0x9799000e, +0x24440001, 0x3098ffff, 0x272fffff, 0x2f0e0400, +0x408821, 0x15c0002c, 0xa78f000e, 0xa7800006, +0x3a020003, 0x26240100, 0x3084ffff, 0xe0005bb, +0x2c450001, 0x11f8c0, 0x27f00100, 0x1021c0, +0xa0005e9, 0x24020008, 0x97850016, 0x9787000a, +0x3c040800, 0x24845cd8, 0xe00058e, 0x24060001, +0x97870012, 0x8f890014, 0x24450001, 0x30a8ffff, +0x24e3ffff, 0x109302b, 0x408021, 0x14c00018, +0xa7830012, 0xa780000a, 0x97850018, 0xe000f97, +0x2002021, 0x244a0500, 0x3144ffff, 0xe0005bb, +0x24050001, 0x3c050800, 0x94a50032, 0xe000f97, +0x2002021, 0x24452100, 0x3c020800, 0x90420033, +0xa0005e9, 0x521c0, 0xa000621, 0xa7840006, +0x24ac3800, 0xc19c0, 0xa0005e7, 0xa7840004, +0xa00063b, 0xa785000a, 0x308400ff, 0x27bdffe8, +0x2c820006, 0xafbf0014, 0xafb00010, 0x10400015, +0xa03821, 0x44080, 0x3c030800, 0x2463595c, +0x1032821, 0x8ca40000, 0x800008, 0x0, +0x24cc007f, 0x751c2, 0xc59c2, 0x3170ffff, +0x2547c400, 0x30e5ffff, 0x27840004, 0x2003021, +0xe0004e3, 0x24070001, 0x97860010, 0x2062021, +0xa7840010, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x3c050800, 0x8ca50030, 0x779c2, +0xe00030c, 0x25e4df00, 0x3045ffff, 0x3c040800, +0x24845cd8, 0x24060001, 0xe0004e3, 0x24070001, +0x978e0012, 0x8fbf0014, 0x8fb00010, 0x25cd0001, +0x27bd0018, 0x3e00008, 0xa78d0012, 0x7c9c2, +0x2738ff00, 0x1878c2, 0x31f0ffff, 0x3c040800, +0x24845c58, 0x2002821, 0x24060001, 0xe0004e3, +0x24070001, 0x978d000e, 0x260e0100, 0xe8400, +0x25ac0001, 0x3c0b6000, 0xa78c000e, 0xad603d08, +0x36040006, 0x3021, 0x3c076000, 0x8ce23d04, +0x305f0006, 0x17e0fffd, 0x24c90001, 0x61b00, +0x312600ff, 0x644025, 0x2cc50004, 0xace83d04, +0x14a0fff6, 0x8fbf0014, 0x8fb00010, 0x3e00008, +0x27bd0018, 0x751c2, 0x2549c800, 0x24060001, +0x24070001, 0x3c040800, 0x24845bd8, 0xe0004e3, +0x3125ffff, 0x9787000c, 0x8fbf0014, 0x8fb00010, +0x24e60001, 0x27bd0018, 0x3e00008, 0xa786000c, +0x8f850040, 0x3c068000, 0x3c078008, 0x8ca80004, +0x24030050, 0xacc80020, 0x8ca90008, 0x90ea0000, +0x314200ff, 0x1043000d, 0x24060088, 0x3c058000, +0x8ca701b8, 0x4e0fffe, 0x3c024009, 0xaca80180, +0xc21825, 0x3c081000, 0x4102b, 0xaca90184, +0xaca30188, 0x3e00008, 0xaca801b8, 0x90ac000c, +0x318b0001, 0x1560000a, 0x0, 0x90af000c, +0x31ee0002, 0x11c0ffed, 0x3021, 0x8cb90014, +0x94b80012, 0xacf9001c, 0xa0006c0, 0xa4f8001a, +0x94ad000e, 0xa0006d0, 0xa4ed002c, 0x3084ffff, +0x30a5ffff, 0x3c068000, 0x8cc201b8, 0x440fffe, +0x3c084080, 0x883825, 0x3c031000, 0xacc00180, +0xacc50184, 0xacc70188, 0x3e00008, 0xacc301b8, +0x3e00008, 0x4102b, 0x3084ffff, 0x3c068000, +0x8cc201b8, 0x440fffe, 0x3c084038, 0x8ca70000, +0x882825, 0x3c031000, 0xacc70180, 0xacc50188, +0x3e00008, 0xacc301b8, 0x8f8d0054, 0x8f82005c, +0x3c0c0800, 0x258c5cec, 0x25ab0001, 0xd50c0, +0x3168000f, 0x3c060800, 0x24c65ce8, 0x14c3821, +0x25030001, 0x1464821, 0xad250000, 0xace40000, +0x3063000f, 0x11020003, 0xaf880054, 0x3e00008, +0x0, 0x3e00008, 0xaf83005c, 0x8f82005c, +0x8f870054, 0x1047000b, 0x0, 0x3c080800, +0x25085cec, 0x228c0, 0xa83021, 0x8cc30000, +0x24420001, 0x10640005, 0x3042000f, 0x5447fffa, +0x228c0, 0x3e00008, 0x0, 0x3c070800, +0x24e75ce8, 0xa72021, 0xacc00000, 0x3e00008, +0xac800000, 0x8f83005c, 0x8f860054, 0x1066000b, +0x804021, 0x3c070800, 0x24e75ce8, 0x328c0, +0xa71021, 0x8c440000, 0x24630001, 0x10880005, +0x3063000f, 0x5466fffa, 0x328c0, 0x3e00008, +0x1021, 0x3c070800, 0x24e75cec, 0xa73021, +0x3e00008, 0x8cc20000, 0x3c039000, 0x34620001, +0x822025, 0x3c038000, 0xac640020, 0x8c650020, +0x4a0fffe, 0x0, 0x3e00008, 0x0, +0x3c028000, 0x34430001, 0x832025, 0x3e00008, +0xac440020, 0x8f850040, 0x27bdffe0, 0xafb20018, +0xafb10014, 0xafbf001c, 0xafb00010, 0x8cb00004, +0x8f91fdfc, 0x809021, 0x3c048000, 0xac900020, +0x9223001b, 0x30620010, 0x10400013, 0x24060081, +0x3c058000, 0x8ca801b8, 0x500fffe, 0x0, +0xacb00180, 0x12102b, 0x8fbf001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3c0b401f, 0xcb5025, +0x3c091000, 0x27bd0020, 0xaca00184, 0xacaa0188, +0x3e00008, 0xaca901b8, 0xe000737, 0x2002021, +0x9227001b, 0x2002021, 0x34e60010, 0xe000741, +0xa226001b, 0xa000755, 0x3021, 0x8f820040, +0x27bdffe0, 0xafb10014, 0xafb00010, 0xafbf0018, +0x808821, 0xe000722, 0x8c44001c, 0x408021, +0x10400013, 0x24060089, 0x3c058000, 0x8cab01b8, +0x560fffe, 0x8f8f0040, 0xacb00180, 0x3c0e4001, +0x8ded001c, 0x3c101000, 0xce6025, 0xacad0184, +0x11102b, 0xacac0188, 0x8fbf0018, 0xacb001b8, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, +0x24040004, 0xe0005c3, 0x24050030, 0x408021, +0x1040ffe9, 0x24060083, 0x8f860040, 0x3c058008, +0x3c0a8000, 0x24090050, 0x24040001, 0xad420020, +0xa0a90000, 0xa0a40001, 0x90c80004, 0x402021, +0xa0a80018, 0x90c70005, 0xa0a70019, 0x90c30006, +0xa0a3001a, 0x90c20007, 0xa0a2001b, 0x90df0008, +0xa0bf001c, 0x90d90009, 0xa0b9001d, 0x90d8000a, +0xa0b8001e, 0x90cf000b, 0xa0af001f, 0x90ce000c, +0xa0ae0020, 0x90cd000d, 0xa0ad0021, 0x90cc000e, +0xa0ac0022, 0x90cb000f, 0xa0ab0023, 0x90ca0010, +0xa0aa0024, 0x90c90011, 0xa0a90025, 0x94c80014, +0xa4a80028, 0x94c70016, 0xa4a7002a, 0x94c30018, +0xa4a3002c, 0xe0006f7, 0x8cc5001c, 0xa00077b, +0x3021, 0x8f860040, 0x27bdffe0, 0xafb20018, +0xafb10014, 0xafbf001c, 0xafb00010, 0x8cd00004, +0x3c058000, 0x3c118008, 0xacb00020, 0x809021, +0x92240000, 0x24020050, 0x308300ff, 0x1062001a, +0x24050088, 0x3c048000, 0x8c8701b8, 0x4e0fffe, +0x3c0d400e, 0xad6025, 0x3c0b1000, 0xac900180, +0xac800184, 0xac8c0188, 0xac8b01b8, 0x92290000, +0x240aff80, 0x2002821, 0x12a4025, 0xa2280000, +0x24040004, 0xe000653, 0x24060030, 0x12102b, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0xe00070c, 0x2002021, +0xa0007d2, 0x2821, 0x27bdffe0, 0xafb10014, +0x3091ffff, 0xafb00010, 0xafbf0018, 0x12200012, +0xa08021, 0x8ca50000, 0x14a00011, 0x24040002, +0x3c068000, 0x8cc201b8, 0x440fffe, 0x3c074000, +0x2272025, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3c031000, 0x27bd0020, 0xacc50180, 0xacc40188, +0x3e00008, 0xacc301b8, 0xa0007f9, 0x8ca50000, +0xe000653, 0x24060200, 0x2821, 0xa0007f9, +0xae000000, 0x8f860040, 0x27bdffe0, 0xafb10014, +0xafb00010, 0xafbf0018, 0x94c30002, 0x808821, +0x30620004, 0x10400043, 0xa08021, 0x8cc7001c, +0x3c048000, 0xaca70000, 0x8cc5001c, 0xac850020, +0x94c40002, 0x30830001, 0x14600061, 0x0, +0x8cc20004, 0x10400062, 0xae020008, 0x8f8dfdf8, +0x3c0f8000, 0x240a0001, 0x8dae0018, 0x8f86fdfc, +0x8f98fdf4, 0x1cf6025, 0xadac0018, 0xa1a00005, +0xadaa000c, 0x8e0b0008, 0x8f870040, 0xa5aa0010, +0xb49c2, 0xa5aa0012, 0xa5aa0014, 0xa5aa0016, +0xa4c9000c, 0x8ce80008, 0x8f850040, 0x8f820040, +0xacc8002c, 0x8ca4000c, 0x24070002, 0xacc4001c, +0x90430010, 0xa0c30011, 0x8f9f0040, 0x93f90011, +0xa3190008, 0x8f8f0040, 0x91ee0012, 0xa1ae004e, +0x8f8c0040, 0x918b0013, 0xa0cb0012, 0x8f880040, +0x950a0014, 0xa4ca003c, 0x95090016, 0xa4c9003e, +0x8d050018, 0xacc50014, 0x16200004, 0x2002821, +0xe0007ef, 0x2021, 0x3821, 0x8fbf0018, 0x8fb10014, 0x8fb00010, 0xe01021, 0x3e00008, -0x27bd0020, 0x27bdffe0, 0x3c020800, 0x24484750, -0xafbf0018, 0xafb10014, 0xafb00010, 0xa1000024, -0x8f430984, 0x8d060004, 0x30633fff, 0x66202b, -0x10800002, 0x408821, 0x603021, 0x8f420984, -0x2403fffc, 0xc32824, 0x30423ffc, 0x54a20132, -0xa1000062, 0x8f820048, 0x7021, 0x8d030028, -0x8c4401e8, 0x6021, 0x641823, 0x306401ff, -0x10800003, 0x5021, 0x24020200, 0x442023, -0x8f830060, 0x94620000, 0x30422200, 0x50400001, -0xa4640006, 0x8e234750, 0x8f820070, 0xa1000063, -0xad00004c, 0xaf840054, 0x621821, 0x83102b, -0xaf830068, 0x1040001d, 0x603821, 0x805021, -0x641823, 0x2c6201fd, 0x14400013, 0x25470004, -0x254c0200, 0x2463fe04, 0x2c6201fd, 0x14400008, -0x25470204, 0x254e0400, 0x25420208, 0x433821, -0x2403000c, 0xa1030063, 0xa000cc0, 0xad0e004c, -0xe33821, 0x24040200, 0x24020008, 0xa1020063, -0xa000cc0, 0xad0c004c, 0xe33821, 0x24040200, -0x24020004, 0xa1020063, 0xad0a004c, 0xe5102b, -0x14400065, 0x30e20003, 0x26244750, 0x90820063, -0x1040005e, 0x5821, 0x401821, 0x24070008, -0x1067001b, 0x28620009, 0x10400005, 0x24020004, -0x10620008, 0x26274750, 0xa000dfe, 0x0, -0x2402000c, 0x1062002c, 0x24a6fffc, 0xa000dfe, -0x26274750, 0x24a3fffc, 0x143102b, 0x14400008, -0x0, 0x8f820064, 0xa0800063, 0xa21023, -0x1543011f, 0xac820008, 0xa000dfc, 0x2442fffc, -0x8f820064, 0xa21023, 0xa000dfc, 0x2442fffc, -0x24a6fffc, 0x146102b, 0x14400008, 0x186102b, -0x8f820064, 0xa0800063, 0xa21023, 0x15460110, -0xac820008, 0xa000dfc, 0x2442fffc, 0x1440000a, -0x24030004, 0x8f820064, 0xa0830063, 0xac8a004c, -0xa21023, 0x2443fffc, 0x15860105, 0xac830008, -0xa000dfc, 0x2442fff8, 0x8f820064, 0xa21023, -0xa000dfc, 0x2442fff8, 0x146102b, 0x14400008, -0x186102b, 0x8f820064, 0xa0800063, 0xa21023, -0x154600f7, 0xac820008, 0xa000dfc, 0x2442fffc, -0x1440000b, 0x1c6102b, 0x8f820064, 0x24030004, -0xa0830063, 0xac8a004c, 0xa21023, 0x2443fffc, -0x158600eb, 0xac830008, 0xa000dfc, 0x2442fff8, -0x1440000a, 0x0, 0x8f830064, 0xa0870063, -0xac8c004c, 0xa31823, 0x2462fff8, 0x15c600e0, -0xac820008, 0xa000dfc, 0x2462fff4, 0x8f820064, -0xa21023, 0xa000dfc, 0x2442fff4, 0x8f820064, -0xa000dfc, 0xa21023, 0x10400072, 0x240d0004, -0x1a25823, 0xeb3821, 0xe5102b, 0x10400066, -0x26294750, 0x91220063, 0x2c42000c, 0x10400040, -0x24e20004, 0x8d22004c, 0xe21023, 0x1444003c, -0x24e20004, 0x24e20008, 0xa2102b, 0x54400031, -0x5821, 0xeb2823, 0x8f860070, 0x93840078, -0x91280063, 0x8f830048, 0x41080, 0x441021, -0x210c0, 0x246300ac, 0x621821, 0x8f440988, -0x8c620000, 0xa62823, 0xa82823, 0x822023, -0x54a400ac, 0xa1200062, 0x510d000f, 0x254c0200, -0x29020005, 0x50400005, 0x24020008, 0x11000007, -0x26244750, 0xa000d61, 0x90830063, 0x11020008, -0x26244750, 0xa000d61, 0x90830063, 0xe05021, -0xa000d5f, 0xad2a004c, 0xa000d5f, 0xad2c004c, -0x258e0200, 0xad2e004c, 0x26244750, 0x90830063, -0x8f820070, 0x24630004, 0xa0830063, 0x306500ff, -0x2442fffc, 0xe21023, 0x451023, 0xa000dfc, -0x4b1023, 0x8f820064, 0x91230063, 0x24420004, -0xa21023, 0x431023, 0xa000dfd, 0xad220008, -0xa2102b, 0x5440001a, 0x5821, 0xeb2823, -0x8f890070, 0x26264750, 0x93840078, 0x90c80063, -0x8f830048, 0x41080, 0x441021, 0x210c0, -0x246300ac, 0x621821, 0x8f440988, 0x8c620000, -0xa92823, 0xa82823, 0x822023, 0x10a40003, -0x24020006, 0xa000ebb, 0xa0c00062, 0xe91023, -0x481023, 0x4b1023, 0xa000dfd, 0xacc20008, -0x8f820064, 0x26244750, 0x90830063, 0x24420004, -0xa000dfb, 0xa21023, 0x5821, 0x8f820070, -0x26244750, 0x90830063, 0x24420004, 0xa000dfb, -0xe21023, 0x26284750, 0x91020063, 0x2c42000c, -0x10400043, 0x5821, 0x8d02004c, 0xe21023, -0x14440040, 0x24e20004, 0x24e30008, 0xa3102b, -0x54400035, 0x91030063, 0x65102b, 0x10400014, -0x26244750, 0x8f850070, 0x93840078, 0x91060063, -0x8f830048, 0x41080, 0x441021, 0x210c0, -0x246300ac, 0x621821, 0x8f440988, 0x8c620000, -0xe52823, 0xa62823, 0x822023, 0x10a40004, -0x26244750, 0xa1000062, 0xa000ebb, 0x24020006, -0x90830063, 0x24020004, 0x5062000e, 0x254c0200, -0x28620005, 0x50400005, 0x24020008, 0x50600007, -0xe05021, 0xa000dd3, 0x90830063, 0x50620007, -0x258e0200, 0xa000dd2, 0x26244750, 0xa000dd1, -0xac8a004c, 0xa000dd1, 0xac8c004c, 0xac8e004c, -0x26244750, 0x90830063, 0x8f820070, 0x24630004, -0xa0830063, 0x306500ff, 0x2442fffc, 0xe21023, -0xa000dfc, 0x451023, 0x8f820064, 0x24420004, -0xa21023, 0x431023, 0xa000dfd, 0xad020008, -0x24e20004, 0x45102b, 0x8f880070, 0x10400013, -0x26294750, 0x93840078, 0x91260063, 0x8f830048, -0x41080, 0x441021, 0x210c0, 0x246300ac, -0x621821, 0x8f440988, 0x8c650000, 0xe81023, -0x461023, 0x852023, 0x10440005, 0x26244750, -0xa1200062, 0xa000ebb, 0x24020006, 0x26244750, -0x90830063, 0xe81023, 0x431023, 0xac820008, -0x26274750, 0x97820072, 0x8ce40008, 0x8e234750, -0x14830004, 0xa4e20012, 0x8ce20020, 0x34420040, -0xace20020, 0x93830078, 0x8f840048, 0x8ce50008, -0x31080, 0x431021, 0x210c0, 0x8ce3002c, -0x248400ac, 0x822021, 0x651821, 0xac830000, -0x90e60063, 0x50c00023, 0x26254750, 0x8f820070, -0x4a102b, 0x14400005, 0x24c3fffc, 0x94e20012, -0x306600ff, 0x24420004, 0xa4e20012, 0x10c00019, -0x26254750, 0x94a20012, 0x8ca30008, 0x431021, -0x2442fffc, 0x8ca3004c, 0x461021, 0x4b1021, -0x1462000c, 0x24020008, 0x24c2fffc, 0x304600ff, -0x90a40063, 0x256b0004, 0x24020010, 0x24030062, -0xa4a20014, 0xaca30050, 0x2484fffc, 0xa000e3b, -0xa0a40063, 0x24030051, 0xa4a20014, 0xa000e3b, -0xaca30050, 0x26224750, 0x24030008, 0x24040051, -0xa4430014, 0xac440050, 0x26244750, 0x8c830020, -0x256b0004, 0xb1400, 0x622825, 0x10c00046, -0xac850020, 0x90820063, 0x14c20027, 0x24020004, -0x24020008, 0x10c20011, 0x28c20009, 0x10400005, -0x24020004, 0x10c20016, 0x26304750, 0xa000e89, -0x96030012, 0x2402000c, 0x14c20038, 0x26304750, -0x94830012, 0x3c024000, 0xa21025, 0xac820020, -0xa48e0060, 0x1c31823, 0xac830044, 0x26254750, -0x8ca20020, 0x94a40012, 0x3c032000, 0xa4ac005e, -0x431025, 0x1842023, 0xaca20020, 0xaca40040, -0x26254750, 0x8ca20020, 0x94a40012, 0x3c031000, -0xa4aa005c, 0x431025, 0x1442023, 0xaca20020, -0xa000e87, 0xaca4003c, 0x10c2000e, 0x24020008, -0x14c2001a, 0x26304750, 0x94830012, 0x3c022000, -0xa21025, 0xac820020, 0x1c31823, 0x11400003, -0xac830040, 0xa000e7a, 0xa48e005e, 0x240203fc, -0xa482005e, 0x26254750, 0x8ca20020, 0x94a40012, -0x3c031000, 0x431025, 0x1842023, 0xaca20020, -0x11400003, 0xaca4003c, 0xa000e87, 0xa4ac005c, -0x240201fc, 0xa4a2005c, 0x26304750, 0x96030012, -0xcb1021, 0xa6020026, 0x24020001, 0xa2020062, -0x8e02002c, 0xae0a0048, 0xae030054, 0x8e030008, -0x8f440988, 0x431021, 0x1444000b, 0x24044000, -0x8e020020, 0x34420008, 0xe000f5f, 0xae020020, -0x8f830060, 0xae020058, 0x94620000, 0x3042ffbf, -0xa000ea2, 0xa4620000, 0xe000f5f, 0x2021, -0xae020058, 0x26284750, 0x95050012, 0x8d020028, -0x8f870060, 0x8d030008, 0x95040026, 0x451021, -0x431021, 0x94e60000, 0x441021, 0x2442ffff, -0x30c32200, 0x14600006, 0xace2001c, 0x8d030028, -0x34c20200, 0xa4e20000, 0xa000eba, 0xace30018, -0x30c20200, 0x14400004, 0x1021, 0x34c20200, -0xa4e20000, 0x1021, 0x8fbf0018, 0x8fb10014, +0x27bd0020, 0xaca00000, 0x3c046000, 0x8c83442c, +0x3c08dead, 0x3506beef, 0x10660030, 0x0, +0x3c0a6c62, 0x35497970, 0x14690007, 0x24040002, +0x978c0058, 0x978d0050, 0x18d582b, 0x1160001e, +0x24040092, 0x24040002, 0xe0005c3, 0x24050200, +0x3c0f8000, 0xae020000, 0xade20020, 0x8e0e0000, +0x11c00021, 0x8f820040, 0x24180028, 0x24040003, +0x905f0010, 0x33f900ff, 0x57380001, 0x24040001, +0xe00004a, 0x0, 0x10400017, 0x8f860040, +0x94c40002, 0x30830001, 0x1060ffa1, 0x0, +0xe000722, 0x8cc40004, 0x1440ffa0, 0xae020008, +0x2002821, 0x24040087, 0xe0007ef, 0x0, +0x11382b, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xe01021, 0x3e00008, 0x27bd0020, 0x8c83442c, +0xa000862, 0x3c0a6c62, 0x2002821, 0xe0007ef, +0x24040083, 0xa00088a, 0x11382b, 0x3087ffff, +0x3c068000, 0x8cc201b8, 0x440fffe, 0x3c0a4006, +0x8ca90000, 0xea4025, 0xacc90180, 0x8ca40004, +0x3c031000, 0xacc40184, 0xacc80188, 0x3e00008, +0xacc301b8, 0x8cb80000, 0x8f870040, 0x27bdffe8, +0x3c0f8000, 0xadf80020, 0xafbf0010, 0x8ce90008, +0x8f86fdfc, 0x24080028, 0x8f82fdf8, 0xacc90030, +0x8cee000c, 0x24090009, 0xacce0034, 0x8ced0010, +0xaccd0038, 0x8cec0014, 0xaccc0020, 0x8ceb0018, +0xaccb0024, 0x8cea001c, 0xacca0028, 0xa0c80011, +0x8ce30004, 0xac430028, 0x14800005, 0x8fbf0010, +0xe000898, 0x24040082, 0x4821, 0x8fbf0010, +0x1201021, 0x3e00008, 0x27bd0018, 0x27bdffe0, +0xafb00010, 0x8f900040, 0xafb20018, 0xafb10014, +0xafbf001c, 0xa08821, 0x8e050004, 0x809021, +0x3c048000, 0xae250000, 0xac850020, 0x92030003, +0x30620004, 0x1040002f, 0x8f84fdf8, 0x24020006, +0x240affc0, 0xa0820009, 0x920b001b, 0x3169003f, +0x12a4025, 0xa0880008, 0x92070003, 0x30e60001, +0x14c0002f, 0x0, 0x8e020008, 0x10400030, +0xae220008, 0x8f8cfdfc, 0x219c2, 0x8f8efdf8, +0xa583000c, 0x8e02000c, 0x240f0001, 0x240d0014, +0xad82002c, 0x8e1f0010, 0xad9f001c, 0x96190016, +0xa599003c, 0x96180014, 0xa598003e, 0xadcf000c, +0xa5cf0010, 0xa5cf0012, 0xa5cf0014, 0xa5cf0016, +0xa18d0011, 0x12400024, 0x2202821, 0x92120003, +0x8fbf001c, 0x32510002, 0x2e300001, 0x26020008, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x24020012, 0x240affc0, 0xa0820009, +0x920b001b, 0x3169003f, 0x12a4025, 0xa0880008, +0x92070003, 0x30e60001, 0x10c0ffd3, 0x0, +0xe000722, 0x8e040008, 0x1440ffd2, 0xae220008, +0x2202821, 0xe0006eb, 0x24040087, 0x12102b, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0xe000898, 0x24040082, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x1021, 0x3e00008, 0x27bd0020, 0x27bdffe8, +0xafb00010, 0xafbf0014, 0x8cac0000, 0x8f8b0040, +0x3c088000, 0xad0c0020, 0xa04821, 0x8f88fdf8, +0x8d650004, 0x8f87fdfc, 0x808021, 0xad05001c, +0x916a0008, 0x24030008, 0x24052000, 0xa0ea0019, +0x8f860040, 0x90c40009, 0xa0e40018, 0x8f860040, +0x90c2000a, 0x304400ff, 0x1083000d, 0x288d0009, +0x51a0003e, 0x241f0020, 0x240e0002, 0x108e0008, +0x24050400, 0x288f0003, 0x11e0004d, 0x24190004, +0x24180001, 0x10980002, 0x24050100, 0x24054000, +0x8d0d0018, 0x3c0eff00, 0x1ae6024, 0x1855825, +0xad0b0018, 0x90ca000b, 0xa10a0027, 0x8f830040, +0x9464000c, 0x10800036, 0x1202821, 0x9466000c, +0x3c058000, 0xa506005c, 0x9079000e, 0x24060004, +0xa1190008, 0x8f980040, 0x930f000f, 0x2418ffbf, +0xa10f0009, 0x8f9f0040, 0x8fed0010, 0x8cae0074, +0x1ae6023, 0xad0c0058, 0x8feb0014, 0xad0b002c, +0x97ea0018, 0x3144ffff, 0xad040040, 0x97e7001a, +0x30e2ffff, 0xad020044, 0x8fe3001c, 0xad030048, +0x93f9000e, 0xa1190008, 0x910f0008, 0x1f82824, +0xa1050008, 0x16000004, 0x1202821, 0xe000898, +0x24040082, 0x3021, 0x8fbf0014, 0x8fb00010, +0xc01021, 0x3e00008, 0x27bd0018, 0x109fffcc, +0x34058000, 0x28830021, 0x1460ffc9, 0x24054000, +0x24020040, 0x1082ffc6, 0x3c050001, 0x24070080, +0x5487ffc3, 0x24054000, 0xa00094d, 0x3c050002, +0xe000898, 0x2404008b, 0x10302b, 0x8fbf0014, +0x8fb00010, 0xc01021, 0x3e00008, 0x27bd0018, +0x5499ffb7, 0x24054000, 0xa00094d, 0x24051000, +0x8ca80000, 0x8f870040, 0x27bdffe8, 0x3c0b8000, +0xad680020, 0xafbf0010, 0x8cea0008, 0x8f88fdf8, +0x8f8ffdfc, 0x3c02800c, 0xad0a0030, 0x8ced0008, +0x344a0100, 0xad0d0050, 0x8ce9000c, 0x806821, +0x2404008c, 0xad090034, 0x8ce30010, 0x24090003, +0xad030038, 0x8cff0010, 0x24030050, 0xad1f0054, +0x8cf90014, 0xad19003c, 0x8cf80018, 0xadf80004, +0x8cee001c, 0xad0e0020, 0x91060000, 0x30c200ff, +0x1043000f, 0x0, 0x8d180034, 0x8d190030, +0x3197823, 0x5e00003, 0x0, 0x15a00004, +0x24040082, 0xe000898, 0x0, 0x4821, +0x8fbf0010, 0x1201021, 0x3e00008, 0x27bd0018, +0xad000054, 0x8cae0000, 0xad6e0028, 0x8ce60014, +0xad4600d0, 0x8cec0014, 0xad4c00d4, 0x8ceb0010, +0x2567fffe, 0xa0009bb, 0xad47001c, 0x8f83fdf8, +0x27bdffe8, 0xafbf0014, 0xafb00010, 0x90670008, +0x801021, 0x802821, 0x30e60040, 0x2021, +0x10c00008, 0x8c500000, 0xe000086, 0x2002021, +0x2002021, 0x8fbf0014, 0x8fb00010, 0xa000495, +0x27bd0018, 0xe000898, 0x0, 0xe000086, +0x2002021, 0x2002021, 0x8fbf0014, 0x8fb00010, +0xa000495, 0x27bd0018, 0x27bdffe8, 0xafbf0010, +0x8cab0000, 0x8f870040, 0x3c0a8000, 0xad4b0020, +0x8f86fdf4, 0xa04021, 0x8ce50018, 0x8f87fdf8, +0x8f82fdfc, 0xacc50000, 0x8ce90038, 0x24050005, +0xacc90004, 0x8ce3003c, 0xac430000, 0x10800004, +0x8fbf0010, 0xa01021, 0x3e00008, 0x27bd0018, +0x1002021, 0x8ce20038, 0xe0009d4, 0x8ce3003c, +0x8fbf0010, 0x2821, 0xa01021, 0x3e00008, +0x27bd0018, 0x27bdffe8, 0xafbf0010, 0x8ca30000, +0x3c028000, 0x24060007, 0xac430020, 0x1480000b, +0x8fbf0010, 0xe0009d4, 0xa02021, 0x8f87fdf8, +0x24040050, 0x90e60000, 0x30c500ff, 0x10a40006, +0x0, 0x3021, 0x8fbf0010, 0xc01021, +0x3e00008, 0x27bd0018, 0xe000f8e, 0x0, +0xa000a1f, 0x3021, 0x27bdffe8, 0xafbf0010, +0x8ca30000, 0x3c028000, 0x24060006, 0xac430020, +0x1480000b, 0x8fbf0010, 0xe0009d4, 0xa02021, +0x8f87fdf8, 0x24040050, 0x90e60000, 0x30c500ff, +0x10a40006, 0x0, 0x3021, 0x8fbf0010, +0xc01021, 0x3e00008, 0x27bd0018, 0xe000f8e, +0x0, 0xa000a38, 0x3021, 0x27bdffd8, +0xafbf0020, 0xafb3001c, 0xafb20018, 0xafb10014, +0xafb00010, 0x8caa0000, 0x8f880040, 0x3c098000, +0xad2a0020, 0x8f87fdfc, 0x8d060004, 0x8f91fdf8, +0xa09021, 0x809821, 0x25050014, 0x24e40020, +0xae260028, 0x24060003, 0xe000fa3, 0x24f00030, +0x8f850040, 0x2002021, 0x24060003, 0xe000fa3, +0x24a50008, 0xe0009d4, 0x2402021, 0x92240000, +0x24030050, 0x308200ff, 0x10430008, 0x13102b, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0028, 0xe000f8e, +0x0, 0x13102b, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0028, 0x27bdffd8, 0xafb00010, 0x3090ffff, +0xafb10014, 0xafbf0020, 0xafb3001c, 0xafb20018, +0x12000017, 0xa08821, 0x3c048000, 0x8c8501b8, +0x4a0fffe, 0x0, 0xac910180, 0x24110093, +0x12110022, 0x3c0a400b, 0x20a4825, 0x3c048000, +0x3c108000, 0x3c081000, 0xac800184, 0x8fbf0020, +0xae090188, 0x8fb3001c, 0xae0801b8, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, +0xe000061, 0x8f92fdf8, 0x24030050, 0x92420000, +0x305300ff, 0x1263001c, 0x0, 0xe000737, +0x2202021, 0x8f98fdf8, 0x2402fffe, 0x2202021, +0x93030005, 0x62f824, 0x37f90002, 0xe000741, +0xa3190005, 0xa000a7c, 0x3c048000, 0x8f870040, +0x20a4825, 0x8ce60008, 0x3c108000, 0x3c081000, +0xac860184, 0x8fbf0020, 0xae090188, 0x8fb3001c, +0xae0801b8, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0028, 0x92450008, 0x30a40040, +0x1480ffe2, 0x0, 0xe000737, 0x2202021, +0x924c0005, 0x240dfffe, 0x2202021, 0x18d5824, +0x356a0002, 0xa24a0005, 0x92490025, 0x35280002, +0xe000741, 0xa2480025, 0xe000497, 0x2202021, +0x92470000, 0x30e600ff, 0x10d3000b, 0x240e0001, +0x3c048000, 0x8c8f0178, 0x5e0fffe, 0x24130002, +0x3c121000, 0xac910140, 0xa0930144, 0xac920178, +0xa000a7c, 0x3c048000, 0xae4e000c, 0xa64e0010, +0xa64e0012, 0xa64e0014, 0xa64e0016, 0xa000aca, +0x3c048000, 0x8f840040, 0x27bdffe8, 0xafbf0010, +0x8c860004, 0x8f87fdf8, 0x3c058000, 0xaca60020, +0x90e80000, 0x24020050, 0x24040086, 0x310300ff, +0x10620007, 0xc02821, 0xe000a72, 0x0, +0x8fbf0010, 0x1021, 0x3e00008, 0x27bd0018, +0x90e90005, 0x31270002, 0x10e0fff7, 0x2021, +0x8fbf0010, 0x1021, 0x3e00008, 0x27bd0018, +0x27bdffe0, 0xafb00010, 0x8f90fdf8, 0xafbf001c, +0xafb20018, 0xafb10014, 0x92060001, 0x808821, +0xe000737, 0x30d20004, 0x92040005, 0x1129c2, +0xa6050000, 0x34830040, 0xa2030005, 0xe000741, +0x2202021, 0xe000497, 0x2202021, 0x24020001, +0xae02000c, 0x2202821, 0xa6020010, 0x24040002, +0xa6020012, 0x24060200, 0xa6020014, 0xe000653, +0xa6020016, 0x16400004, 0x8fbf001c, 0x97880058, +0x2507ffff, 0xa7870058, 0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0020, 0x27bdffe0, -0x8f850048, 0x3c040800, 0x24864750, 0xafbf0018, -0xafb10014, 0xafb00010, 0x8cc20028, 0xacc00008, -0xa0c00024, 0x8ca301e8, 0x431023, 0x305101ff, -0x12200002, 0x24020200, 0x518823, 0x8f820070, -0x51102b, 0x54400004, 0xa0c00063, 0x24020004, -0xa0c20063, 0xacd10048, 0x8f430984, 0x24904750, -0x8e040004, 0x30633fff, 0x64102b, 0x54400001, -0x602021, 0x92030063, 0x97820066, 0x431021, -0xa6020012, 0x3043ffff, 0x2402fffc, 0x821024, -0x43102b, 0x10400003, 0x24020006, 0xa000f11, -0xa2000062, 0x96050012, 0x8e040020, 0x24020001, -0x24030008, 0xa2020062, 0x24020051, 0xa6030014, -0xae020050, 0xa6000026, 0x34840048, 0xae040020, -0x24044000, 0xe000f5f, 0xae050054, 0x8f840060, -0x8e030028, 0xae020058, 0xac830018, 0x96050012, -0x8e020028, 0x94830000, 0xa4910006, 0x451021, -0x2442ffff, 0x3063ffbf, 0x34630200, 0xac82001c, -0xa4830000, 0x93850078, 0x24020002, 0x8f840048, -0x51880, 0x651821, 0x318c0, 0x248400ac, -0x832021, 0x24050001, 0xac850000, 0xae05002c, +0xafbf0018, 0xafb10014, 0xafb00010, 0xe000737, +0x808821, 0x8f85fdf8, 0x2202021, 0x90a30005, +0xe000741, 0x307000ff, 0x2402003e, 0x12020005, 0x8fbf0018, 0x8fb10014, 0x8fb00010, 0x3e00008, -0x27bd0020, 0x3c020800, 0x24464750, 0x90c30062, -0x804821, 0x10600030, 0x405021, 0x90c20063, -0x8f840070, 0x1040002e, 0x41082, 0x8cc30048, -0x83102b, 0x1440002a, 0x41082, 0x33882, -0x10e0000c, 0x2821, 0xc04021, 0x1203021, -0x8d030058, 0x51080, 0x431021, 0x8c440000, -0x24a50001, 0xa7102b, 0xacc40000, 0x1440fff8, -0x24c60004, 0x25484750, 0x8d020048, 0x71880, -0x691821, 0xac620000, 0x8f840070, 0xe03021, -0x42082, 0xc4202b, 0x1080000f, 0x24e50001, -0x1003821, 0x51080, 0x492821, 0x8ce40058, -0x61080, 0x441021, 0x8c430000, 0xaca30000, -0x8f820070, 0x24c60001, 0x21082, 0xc2102b, -0x1440fff6, 0x24a50004, 0x3e00008, 0x0, -0x1040fffd, 0x2821, 0x3c020800, 0x24474750, -0x1203021, 0x8ce40058, 0x51080, 0x441021, -0x8c430000, 0xacc30000, 0x8f820070, 0x24a50001, -0x21082, 0xa2102b, 0x1440fff6, 0x24c60004, -0x3e00008, 0x0, 0x9782003e, 0x3089ffff, -0x3042000f, 0x2444ffff, 0x2c83000b, 0x10600064, -0x3c020800, 0x244244d8, 0x41880, 0x621821, -0x8c640000, 0x800008, 0x0, 0x3c050800, -0x3c040800, 0x24844750, 0x9483000a, 0x8f880060, -0x24a74550, 0x35228000, 0xa4e20002, 0x2463000e, -0xa000f9b, 0xa4a34550, 0x8f860060, 0x3c050800, -0x2402002e, 0xa4a245c0, 0x24a545c0, 0x35220001, -0xa4a20002, 0x8cc3000c, 0xaca3000c, 0x8cc40008, -0xaca40014, 0x8cc20010, 0x8cc30014, 0xaca20018, -0xaca3001c, 0x8f440994, 0xaca40020, 0x8f4609a0, -0x8f840048, 0xaca60024, 0x8c8201f4, 0x8c8301f8, -0xaca20028, 0xaca3002c, 0xa000fca, 0xa04821, -0x3c050800, 0x3c040800, 0x24844750, 0x9483000a, -0x8f880060, 0x24a74560, 0x35228002, 0xa4e20002, -0x2463000e, 0xa4a34560, 0x8d02000c, 0xace20004, -0x8c86002c, 0x8d050008, 0xc53023, 0x8d040010, -0x8d050014, 0xc01821, 0x1021, 0xa32821, -0xa3302b, 0x822021, 0x862021, 0xace40008, -0xace5000c, 0xa000fca, 0xe04821, 0x3c060800, -0x3c040800, 0x24844750, 0x9483000a, 0x8f870060, -0x24c54570, 0x35220003, 0xa4a20002, 0x24630012, -0xa000fc1, 0xa4c34570, 0x3c060800, 0x3c040800, -0x24844750, 0x9483000a, 0x8f870060, 0x24c54584, -0x35220005, 0xa4a20002, 0x24630012, 0xa4c34584, -0x8ce2000c, 0xaca2000c, 0x8c83002c, 0x8ce20008, -0xa04821, 0x621823, 0xa000fca, 0xaca30010, -0x4821, 0x3e00008, 0x1201021, 0x3c038000, -0x8f420178, 0x431024, 0x1440fffd, 0x3c020800, -0x24454750, 0x90a30064, 0xa3430150, 0x90a40062, -0x1080001a, 0x403021, 0x8ca2002c, 0x8ca40008, -0x93430980, 0x441023, 0x306300f0, 0x31a00, -0xaf420148, 0xa7430144, 0x8ca20020, 0x34421000, -0xaf420154, 0x94a3003e, 0xa743015a, 0x94a20042, -0xa742015c, 0x94a30046, 0xa743015e, 0x94a2005c, -0xaf420160, 0x94a3005e, 0xaf430164, 0x94a20060, -0xaf420168, 0xa000ff7, 0x24c54750, 0xaf400148, -0xa7400144, 0xa7400146, 0x8ca20020, 0x34421000, -0xaf420154, 0x24c54750, 0x8ca20028, 0xaf42014c, -0x90a30025, 0xa3430152, 0x94a2000a, 0x94a30026, -0x431021, 0x3c031000, 0xa7420158, 0xaf430178, -0x8ca20020, 0x30420008, 0x10400025, 0x0, -0x9382003c, 0x9383006c, 0x24440001, 0x3082007f, -0xa384003c, 0x14430003, 0x30820080, 0x38420080, -0xa382003c, 0x8f820048, 0x9383003c, 0xa0430083, -0x90a40062, 0x10800016, 0x3c038000, 0x8f420178, -0x431024, 0x1440fffd, 0x0, 0x9382003c, -0xa3420150, 0x9343010a, 0x24020080, 0xa3430151, -0x24c34750, 0xa3420152, 0xa7400158, 0x90620064, -0x3c038200, 0x3042007f, 0x431025, 0x24033000, -0xaf42014c, 0x3c021000, 0xaf430154, 0xaf420178, -0x3e00008, 0x0, 0x3c038000, 0x8f420178, -0x431024, 0x1440fffd, 0x3c050800, 0x24a64750, -0x90c30064, 0x8f840048, 0x3063007f, 0x31080, -0x431021, 0x210c0, 0x248400ac, 0x822021, -0x8c830000, 0xaf430148, 0x90c20064, 0xa3420150, -0xa7400144, 0xa7400146, 0x9342010a, 0x24030080, -0xa3420151, 0xa3430152, 0xa7400158, 0x90c30065, -0x24023000, 0x14600014, 0xacc20020, 0x90c20064, -0x3c038100, 0x3042007f, 0x431025, 0xaf42014c, -0x9383003c, 0x9384006c, 0x24630001, 0x3062007f, -0xa383003c, 0x14440003, 0x30620080, 0x38420080, -0xa382003c, 0x8f830048, 0x9382003c, 0xa0620083, -0xa001060, 0x24a24750, 0x9342010a, 0x3c038000, -0x431025, 0xaf42014c, 0x24a24750, 0x8c430020, -0x3c021000, 0xaf430154, 0x3e00008, 0xaf420178, -0x3c038000, 0x8f420178, 0x431024, 0x1440fffd, -0x3c020800, 0x24464750, 0x90c30065, 0x14600015, -0x402821, 0xa7400146, 0xa7400144, 0x8cc20028, -0x24030080, 0xaf42014c, 0xa3430152, 0xa7400158, -0x90c20064, 0xa3420150, 0x90c30064, 0x8f840048, -0x3063007f, 0x31080, 0x431021, 0x210c0, -0x248400ac, 0x822021, 0x8c830000, 0xa0010b9, -0x24021048, 0x24020002, 0x14620039, 0x0, -0x90c30064, 0x8f840048, 0x3063007f, 0x31080, -0x431021, 0x210c0, 0x248400ac, 0x822021, -0x8c830000, 0xaf430148, 0x90c20064, 0xa3420150, -0xa7400144, 0xa7400146, 0x9342010a, 0x24030080, -0xa3420151, 0xa3430152, 0xa7400158, 0x9342010a, -0x3c048000, 0x3c038300, 0x431025, 0x24033000, -0xaf42014c, 0x3c021000, 0xaf430154, 0xaf420178, -0x8f420178, 0x441024, 0x1440fffd, 0x0, -0x24a54750, 0xa7400146, 0xa7400144, 0x8ca20028, -0x24030080, 0xaf42014c, 0xa3430152, 0xa7400158, -0x90a20064, 0xa3420150, 0x90a30064, 0x8f840048, -0x3063007f, 0x31080, 0x431021, 0x210c0, -0x248400ac, 0x822021, 0x8c830000, 0x24021040, -0xaf430148, 0x3c031000, 0xaf420154, 0xaf430178, -0x3e00008, 0x0, 0x3c026000, 0x3e00008, -0xac400808, 0x3c020800, 0x24424750, 0xac400008, -0xa4400026, 0x3e00008, 0x24020001, 0x93830078, -0x3c050800, 0x24a54750, 0xa0a00062, 0x8f840048, -0xaca00008, 0xa4a00026, 0x31080, 0x431021, -0x210c0, 0x248400ac, 0x822021, 0x24030001, -0x24020056, 0xac830000, 0x3e00008, 0xa0a00065, -0x3c020800, 0x24464750, 0x90c30062, 0x10600015, -0x802821, 0x8cc20050, 0x90c30025, 0x94c4001e, -0x21600, 0x31c00, 0x431025, 0x24840002, -0x441025, 0xaca20000, 0x8cc30054, 0x94c20018, -0x31c00, 0x621825, 0xaca30004, 0x8cc40050, -0x24020062, 0x1482000d, 0x24a50008, 0xa0010fa, -0x8cc2004c, 0x90c20025, 0x94c3001e, 0x3c041100, -0xaca00004, 0x21400, 0x24630002, 0x641825, -0x431025, 0xaca20000, 0x24a50008, 0x3e00008, -0xa01021, 0x308500ff, 0x3c038000, 0x8f420178, -0x431024, 0x1440fffd, 0x24041040, 0x3c030800, -0x24634750, 0xa7400144, 0xa7400146, 0xac640020, -0xaf440154, 0x8c620028, 0xaf42014c, 0x8c630028, -0x8f82005c, 0x62102b, 0x10400002, 0x24020001, -0xaf82007c, 0xaf83005c, 0xa3400152, 0x9342010a, -0x30a3007f, 0xa3420151, 0xa7400158, 0xa3450150, -0x8f840048, 0x31080, 0x431021, 0x210c0, -0x248400ac, 0x822021, 0x8c830000, 0x3c021000, -0xaf430148, 0x3e00008, 0xaf420178, 0x308400ff, -0x3082007f, 0x50400004, 0x24020080, 0x2482ffff, -0x3e00008, 0x304200ff, 0x10820005, 0x0, -0x9382006c, 0x2442007f, 0x3e00008, 0x304200ff, -0x9382006c, 0x2442ffff, 0x3e00008, 0x304200ff, -0x0 }; -static u32 bce_TXP_b06FwData[(0xd0/4) + 1] = { -0x0, -0x14, 0x14, 0x14, 0x14, -0x10, 0x30, 0x30, 0x0, -0x0, 0x0, 0x10, 0x8000, -0x0, 0x0, 0x0, 0x8002, -0x0, 0x0, 0x0, 0x3, +0x27bd0020, 0x3c058000, 0x8ca40178, 0x480fffe, +0x24070007, 0x3c061000, 0xacb10140, 0x2202021, +0xa0a70144, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0xaca60178, 0xa000af5, 0x27bd0020, 0x27bdffe0, +0xafb00010, 0xafbf0018, 0xafb10014, 0x3c108000, +0x8e110020, 0x0, 0xe000497, 0xae040020, +0xae110020, 0x8fbf0018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x24091600, 0x3c088000, +0xad090028, 0x3c07800c, 0x8ce60000, 0x3c056000, +0x8ca34448, 0xc41026, 0x3e00008, 0x621021, +0x8f82fdf8, 0x24050001, 0x24030004, 0xa0430025, +0xa0450005, 0x3c058000, 0x8ca60178, 0x4c0fffe, +0x0, 0xaca40140, 0x24070002, 0x3c041000, +0xa0a70144, 0x3e00008, 0xaca40178, 0x27bdffd8, +0xafb10014, 0x8f910040, 0xafbf0020, 0xafb3001c, +0xafb20018, 0xafb00010, 0x922c000e, 0x8f92fdfc, +0x8f90fdf8, 0x809821, 0xa24c0019, 0x922b000d, +0xa24b0018, 0x962a0012, 0xa60a005c, 0x96290010, +0x3127ffff, 0xae070054, 0xe000b4b, 0x8e24001c, +0xae020038, 0x8e060038, 0x403821, 0x24450001, +0xae06003c, 0x8e02003c, 0x3c1f7fff, 0x24040005, +0xae420004, 0xae470000, 0xae050020, 0x8e030020, +0x37f9ffff, 0x3c0b7f00, 0xae03001c, 0xa240001b, +0xae19002c, 0xa2440012, 0x8e280014, 0x24030050, +0x2602021, 0xae080034, 0x8e180034, 0x24e8fffe, +0xae580014, 0x8e2f0018, 0xae0f0048, 0x922e000c, +0xa20e004e, 0x920d0008, 0x35ac0020, 0xa20c0008, +0x8e0a0018, 0x14b4824, 0x35264000, 0xae060018, +0x92050000, 0x30a200ff, 0x5043000d, 0x8e7f0000, +0xe0009d4, 0x0, 0xe000b55, 0x8e640000, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x1021, 0x3e00008, 0x27bd0028, +0x2419ff80, 0x3c0f8000, 0x27f80100, 0x3199024, +0xadf20028, 0x8e710000, 0x3c0e800c, 0x322d007f, +0x1ae8021, 0xae0700d0, 0xae0000d4, 0xae08001c, +0xe0009d4, 0x0, 0xe000b55, 0x8e640000, +0x8fbf0020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x1021, 0x3e00008, 0x27bd0028, +0x3084ffff, 0x3c068000, 0x8cc201b8, 0x440fffe, +0x3c084035, 0x883825, 0x3c031000, 0xacc50180, +0xacc00184, 0xacc70188, 0x3e00008, 0xacc301b8, +0x8f850040, 0x27bdffd8, 0xafb3001c, 0xafb20018, +0xafbf0020, 0xafb10014, 0xafb00010, 0x8cb00004, +0x8f92fdf8, 0x809821, 0x3c048000, 0xac900020, +0x92430005, 0x2002821, 0x30620002, 0x14400027, +0x2404008a, 0x8f91fdfc, 0x2002821, 0x2404008d, +0x9227001b, 0x30e60020, 0x14c00020, 0x0, +0x924a0009, 0x24080012, 0x314900ff, 0x1128001b, +0x24040081, 0xe000737, 0x2002021, 0x922d001b, +0x240b0004, 0x2002021, 0x35ac0042, 0xa22c001b, +0xe000741, 0xa24b0025, 0x3c048000, 0x8c8e0178, +0x5c0fffe, 0x0, 0xac900140, 0x24100002, +0xa0900144, 0x13102b, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3c0f1000, +0x27bd0028, 0x3e00008, 0xac8f0178, 0xe000bc5, +0x0, 0x13102b, 0x8fbf0020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0028, 0x3084ffff, 0x3c068000, 0x8cc201b8, +0x440fffe, 0x3c084036, 0x883825, 0x3c031000, +0xacc50180, 0xacc00184, 0xacc70188, 0x3e00008, +0xacc301b8, 0x8f850040, 0x27bdffd8, 0xafb3001c, +0xafb20018, 0xafb10014, 0xafbf0020, 0xafb00010, +0x8cb00004, 0x8f91fdf8, 0x809821, 0x3c048000, +0xac900020, 0x92220005, 0x24120012, 0x2002821, +0x30430002, 0x1460001a, 0x2404008a, 0x92270009, +0x2002821, 0x30e600ff, 0x10d20015, 0x24040081, +0x922a0009, 0x24080004, 0x314900ff, 0x11280010, +0x0, 0xe000737, 0x2002021, 0x8f8efdfc, +0x240dfffe, 0x2002021, 0x91d8001b, 0x370f0020, +0xa1cf001b, 0xa2320009, 0x922c0005, 0x18d5824, +0xe000741, 0xa22b0005, 0x2002821, 0x2021, +0xe000c12, 0x0, 0x13102b, 0x8fbf0020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0028, 0x27bdffd8, 0xafb3001c, +0x3093ffff, 0xafb40020, 0xafb20018, 0xafbf0024, +0xafb10014, 0xafb00010, 0x30b4ffff, 0x12600027, +0x9021, 0x8f900040, 0x8e030000, 0x3c068000, +0x24020040, 0x33e02, 0x32c02, 0x30e4007f, +0x668824, 0x1482001d, 0x30a500ff, 0x8f83004c, +0x2c68000a, 0x51000010, 0x8f910034, 0x35880, +0x3c0c0800, 0x258c5978, 0x16c5021, 0x8d490000, +0x1200008, 0x0, 0x2922821, 0x30a5ffff, +0xe0006dc, 0x24040084, 0x16200002, 0x8f900040, +0xaf80004c, 0x8f910034, 0x260b0020, 0x264a0001, +0x1608021, 0x3152ffff, 0x16200004, 0xaf8b0040, +0x253602b, 0x1580ffdc, 0x0, 0x2401021, +0x8fbf0024, 0x8fb40020, 0x8fb3001c, 0x8fb20018, +0x8fb10014, 0x8fb00010, 0x3e00008, 0x27bd0028, +0x24090034, 0x10a90054, 0x0, 0x3c050800, +0x24a55d68, 0xe0006eb, 0x24040081, 0x8f900040, +0x11102b, 0xa000c7a, 0xaf82004c, 0x2cad0037, +0x51a0ffe1, 0x8f910034, 0x5c080, 0x3c190800, +0x273959a0, 0x3197821, 0x8dee0000, 0x1c00008, +0x0, 0x241f0004, 0x10bf0045, 0x0, +0x3c050800, 0x24a55d68, 0xe0007ef, 0x24040081, +0x8f900040, 0xa000c96, 0x11102b, 0x24020005, +0x14a2fff7, 0x0, 0x3c050800, 0x24a55d68, +0xe000928, 0x2202021, 0x8f900040, 0xa000c7a, +0xaf82004c, 0x24040006, 0x14a4ffed, 0x0, +0x3c050800, 0x24a55d68, 0xe0009ef, 0x2202021, +0xa000cb4, 0x8f900040, 0x24060007, 0x14a6ffe4, +0x0, 0x3c050800, 0x24a55d68, 0xe000a27, +0x2202021, 0xa000cb4, 0x8f900040, 0x24070023, +0x14a7ffdb, 0x0, 0x3c050800, 0x24a55d68, +0xe000a40, 0x2202021, 0xa000cb4, 0x8f900040, +0x24030022, 0x14a3ffd2, 0x0, 0x3c050800, +0x24a55d68, 0xe000a0e, 0x2202021, 0xa000cb4, +0x8f900040, 0x24080033, 0x14a8ffb4, 0x0, +0x3c050800, 0x24a55d68, 0xe0008a6, 0x2202021, +0xa000cb4, 0x8f900040, 0x3c040800, 0x24845d68, +0xe000b64, 0x0, 0xa000cb4, 0x8f900040, +0x3c050800, 0x24a55d68, 0xe000999, 0x2202021, +0xa000cb4, 0x8f900040, 0x2928021, 0x3205ffff, +0xe0006dc, 0x24040084, 0xa000c7a, 0x8f900040, +0xe000bd1, 0x2202021, 0xa000cb4, 0x8f900040, +0xe000c1e, 0x2202021, 0xa000cb4, 0x8f900040, +0x3c050800, 0x24a55d68, 0xe0008c8, 0x2202021, +0xa000cb4, 0x8f900040, 0xe000746, 0x2202021, +0xa000cb4, 0x8f900040, 0xe0006e9, 0x2202021, +0xa000c7a, 0xaf82004c, 0xe0007c2, 0x2202021, +0xa000cb4, 0x8f900040, 0xe0006b5, 0x2202021, +0xa000cb4, 0x8f900040, 0xe000770, 0x2202021, +0xa000cb4, 0x8f900040, 0x3c050800, 0x24a55d68, +0xe00080e, 0x2202021, 0xa000cb4, 0x8f900040, +0x3c048201, 0x3c036000, 0x34820e02, 0xac603d68, +0xaf80007c, 0x3e00008, 0xac623d6c, 0x27bdffe8, +0xafb00010, 0x3090ffff, 0x101842, 0x2c620041, +0xafbf0014, 0x14400002, 0x24040080, 0x24030040, +0x3c010800, 0xac300060, 0x3c010800, 0xac230064, +0xe000f97, 0x602821, 0x244802bf, 0x2409ff80, +0x1092824, 0x103980, 0x103040, 0x8fbf0014, +0x8fb00010, 0xa72021, 0x861821, 0xaf830064, +0x3c010800, 0xac250058, 0x3c010800, 0xac24005c, +0x3e00008, 0x27bd0018, 0x308300ff, 0x30c6ffff, +0x30e400ff, 0x3c088000, 0x8d0201b8, 0x440fffe, +0x35400, 0x1443825, 0x3c096000, 0xe92025, +0x3c031000, 0xad050180, 0xad060184, 0xad040188, +0x3e00008, 0xad0301b8, 0x8f860040, 0x3c096012, +0x35270010, 0x8ccb0004, 0x3c0c600e, 0x35850010, +0x316a0006, 0x2d480001, 0xace800c4, 0x8cc40004, +0xaca43180, 0x8cc20008, 0x94c30002, 0xaca23184, +0x3e00008, 0xa7830074, 0x8f850040, 0x8f87ff50, +0x8f86ff58, 0x8cae0004, 0x3c0f6012, 0x35e80010, +0xacee0068, 0x8cad0008, 0xaced006c, 0x8cac0010, +0xaccc004c, 0x8cab000c, 0xaccb0048, 0x94ca0054, +0x3c020800, 0x8c420044, 0x25490001, 0xa4c90054, +0x94c40054, 0x3083ffff, 0x10620017, 0x0, +0x3c020800, 0x8c420040, 0xa4c20052, 0x8ca30018, +0xace30030, 0x8ca20014, 0xace2002c, 0x8cb90018, +0xacf90038, 0x8cb80014, 0x24050001, 0xacf80034, +0x8d0600bc, 0x50c50019, 0x8d0200b4, 0x8d0200b8, +0xa4e20048, 0x94e40048, 0xa4e4004a, 0x94e800da, +0x3e00008, 0x3102ffff, 0x3c020800, 0x8c420024, +0xa4c00054, 0xa4c20052, 0x8ca30018, 0xace30030, +0x8ca20014, 0xace2002c, 0x8cb90018, 0xacf90038, +0x8cb80014, 0x24050001, 0xacf80034, 0x8d0600bc, +0x54c5ffeb, 0x8d0200b8, 0x8d0200b4, 0xa4e20048, +0x94e40048, 0xa4e4004a, 0x94e800da, 0x3e00008, +0x3102ffff, 0x8f860040, 0x3c048000, 0x8cc90008, +0x8cc80008, 0x929c0, 0x839c0, 0xac870020, +0x90c30007, 0x30620004, 0x1040003a, 0xaf850078, +0x90cb0007, 0x316a0008, 0x11400039, 0x8f87ff54, +0x8ccd000c, 0x8cce0014, 0x1ae602b, 0x11800032, +0x0, 0x8cc2000c, 0xace20070, 0x8ccb0018, +0x8f85ff50, 0x8f88ff58, 0xaceb0074, 0x8cca0010, +0x2402fff8, 0xacaa00c8, 0x8cc9000c, 0xad090060, +0x8cc4001c, 0xaca400c0, 0x90e3007c, 0x62c824, +0xa0f9007c, 0x90d80007, 0x330f0008, 0x11e00004, +0x0, 0x90ed007c, 0x35ac0001, 0xa0ec007c, +0x90cf0007, 0x31ee0001, 0x11c00009, 0x0, +0x90e4007c, 0x24180002, 0x34820002, 0xa0e2007c, +0x90a300ec, 0x307900ff, 0x13380013, 0x24080034, +0x90c90007, 0x31260002, 0x10c00004, 0x0, +0x90eb007c, 0x356a0004, 0xa0ea007c, 0x90ed007d, +0x31ac003f, 0xa0ec007d, 0x94a700da, 0x3e00008, +0x30e2ffff, 0x8f87ff54, 0xa000dbb, 0x8cc20014, +0xa000dbc, 0xace00070, 0xa000ddd, 0xaca800cc, +0x8f8c0040, 0x27bdffd8, 0xafb3001c, 0xafb20018, +0xafb00010, 0xafbf0020, 0xafb10014, 0x918f0015, +0x3c13600e, 0x36730010, 0x31eb000f, 0xa38b0080, +0x8d8f0004, 0x8d8b0008, 0x959f0012, 0x95990010, +0x9584001a, 0x9598001e, 0x958e001c, 0x33edffff, +0x332affff, 0x3089ffff, 0x3308ffff, 0x31c7ffff, +0x3c010800, 0xac2d0024, 0x3c010800, 0xac290044, +0x3c010800, 0xac2a0040, 0xae683178, 0xae67317c, +0x91850015, 0x95910016, 0x3c126012, 0x36520010, +0x30a200ff, 0x3230ffff, 0xae623188, 0xae5000b4, +0x91830014, 0x959f0018, 0x24060001, 0x66c804, +0x33f8ffff, 0xae5900b8, 0xae5800bc, 0x918e0014, +0xaf8f0068, 0x3c086006, 0x31cd00ff, 0xae4d00c0, +0x918a0015, 0x9584000e, 0x3c07600a, 0x314900ff, +0xaf8b006c, 0x3084ffff, 0xae4900c8, 0x35110010, +0xe000d24, 0x34f00410, 0x3c020800, 0x8c420060, +0x3c030800, 0x8c630064, 0x3c060800, 0x8cc60058, +0x3c050800, 0x8ca5005c, 0x8f840064, 0x8fbf0020, +0xae23004c, 0xae65319c, 0xae030054, 0xae4500dc, +0xae6231a0, 0xae6331a4, 0xae663198, 0xae220048, +0x8fb3001c, 0xae020050, 0x8fb10014, 0xae4200e0, +0xae4300e4, 0xae4600d8, 0x8fb00010, 0x8fb20018, +0xa0004ca, 0x27bd0028, 0x97850076, 0x97830060, +0x27bdffe8, 0xafb00010, 0xa3102b, 0xafbf0014, +0x24040005, 0x8f900040, 0x10400055, 0x24090002, +0xe0005c3, 0x8f850064, 0xaf820078, 0x24040003, +0x1040004f, 0x24090002, 0x3c068000, 0xe00004a, +0xacc20020, 0x24070001, 0x24082000, 0x1040004d, +0x24040005, 0x978e0076, 0x8f8aff54, 0x24090050, +0x25c50001, 0xa7850076, 0xa1490000, 0x3c0d0800, +0x8dad0064, 0x24038000, 0x8f84ff50, 0xd6600, +0xad4c0018, 0xa5400006, 0x954b000a, 0x8f85ff58, +0x2402ff80, 0x1633024, 0xa546000a, 0x915f000a, +0x4821, 0x3e2c825, 0xa159000a, 0xa0a00008, +0xa140004c, 0xa08000c5, 0x96180002, 0x97830074, +0x3c020004, 0xa49800da, 0x960f0002, 0x2418ffbf, +0x25ee2401, 0xa48e00ae, 0x8e0d0004, 0xacad0044, +0x8e0c0008, 0xacac0040, 0xa4a00050, 0xa4a00054, +0x8e0b000c, 0x240c0030, 0xac8b0028, 0x8e060010, +0xac860024, 0xa480003e, 0xa487004e, 0xa4870050, +0xa483003c, 0xad420074, 0xac8800c8, 0xaca80060, +0xa08700ec, 0x909f00c4, 0x33f9007f, 0xa09900c4, +0x909000c4, 0x2187824, 0xa08f00c4, 0x914e007c, +0x35cd0001, 0xa14d007c, 0x938b0080, 0xad480070, +0xac8c00cc, 0xa08b00c6, 0x8f88006c, 0x8f870068, +0xac8800b4, 0xac8700b8, 0xa5400078, 0xa540007a, +0x8fbf0014, 0x8fb00010, 0x1201021, 0x3e00008, +0x27bd0018, 0x8f850078, 0xe000653, 0x8f860064, +0xa000ea9, 0x24090002, 0x27bdffe0, 0xafb00010, +0x8f900040, 0xafb10014, 0xafbf0018, 0x8e090004, +0xe000497, 0x921c0, 0x8e080004, 0x8f84ff50, +0x8f82ff58, 0x839c0, 0x3c068000, 0xacc70020, +0x948500da, 0x90430013, 0x1460002c, 0x30b1ffff, +0x8f8cff54, 0x918b0008, 0x316a0040, 0x15400013, +0x0, 0x8e180004, 0x8f860064, 0x24040005, +0xe000653, 0x1829c0, 0x8e0f0004, 0x978e0076, +0x2203021, 0x8fbf0018, 0x25cdffff, 0x8fb10014, +0x8fb00010, 0xf29c0, 0x24040013, 0x3821, +0x27bd0020, 0xa000d43, 0xa78d0076, 0xe000061, +0x0, 0x8e180004, 0x8f860064, 0x24040005, +0xe000653, 0x1829c0, 0x8e0f0004, 0x978e0076, +0x2203021, 0x8fbf0018, 0x25cdffff, 0x8fb10014, +0x8fb00010, 0xf29c0, 0x24040013, 0x3821, +0x27bd0020, 0xa000d43, 0xa78d0076, 0xe000059, +0x0, 0x8e180004, 0x8f860064, 0x24040005, +0xe000653, 0x1829c0, 0x8e0f0004, 0x978e0076, +0x2203021, 0x8fbf0018, 0x25cdffff, 0x8fb10014, +0x8fb00010, 0xf29c0, 0x24040013, 0x3821, +0x27bd0020, 0xa000d43, 0xa78d0076, 0x27bdffe0, +0xafb20018, 0x3092ffff, 0xafb00010, 0xafbf001c, +0xafb10014, 0x1240001e, 0x8021, 0x8f860040, +0x8cc50000, 0x24030006, 0x53f02, 0x51402, +0x30e40007, 0x14830016, 0x304500ff, 0x2ca80006, +0x11000040, 0x55880, 0x3c0c0800, 0x258c5a7c, +0x16c5021, 0x8d490000, 0x1200008, 0x0, +0x8f8e007c, 0x240d0001, 0x11cd0050, 0x24020002, +0xaf82007c, 0x26090001, 0x3130ffff, 0x24c80020, +0x212202b, 0x1003021, 0x1480ffe5, 0xaf880040, +0x2001021, 0x8fbf001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x3e00008, 0x27bd0020, 0x93870062, +0x54e00034, 0x3021, 0xe000df1, 0x0, +0x8f860040, 0xa000f21, 0x24020001, 0x8f87007c, +0x24050002, 0x10e50031, 0x24040013, 0x2821, +0x3021, 0x24070001, 0xe000d43, 0x0, +0xa000f22, 0x8f860040, 0x8f83007c, 0x24020002, +0x1462fff6, 0x24040012, 0xe000da6, 0x0, +0x8f850078, 0x403021, 0x24040012, 0xe000d43, +0x3821, 0xa000f22, 0x8f860040, 0x8f83007c, +0x24110003, 0x10710029, 0x241f0002, 0x107fffce, +0x26090001, 0x24040010, 0x2821, 0x3021, +0xa000f3f, 0x24070001, 0x8f91007c, 0x24060002, +0x1626fff9, 0x24040010, 0xe000e4b, 0x0, +0x14400023, 0x8f980040, 0x8f860040, 0xa000f21, +0x24020003, 0x24040014, 0xe000d43, 0x2821, +0x8f860040, 0xa000f21, 0x24020002, 0xe000eb3, +0x0, 0xa000f22, 0x8f860040, 0xe000d53, +0x0, 0x24190002, 0x24040014, 0x2821, +0x3021, 0x3821, 0xaf99007c, 0xe000d43, +0x0, 0xa000f22, 0x8f860040, 0xe000d63, +0x0, 0x8f850078, 0x24190002, 0x403021, +0x24040010, 0x3821, 0xa000f78, 0xaf99007c, +0x403821, 0x24040010, 0x970f0002, 0x2821, +0xe000d43, 0x31e6ffff, 0x8f860040, 0xa000f22, +0xaf91007c, 0x8f84ff54, 0x3c077fff, 0x34e6ffff, +0x8c850018, 0x24020001, 0xa61824, 0xac830018, +0x3e00008, 0xa0820005, 0x3084ffff, 0x30a5ffff, +0x10800007, 0x1821, 0x30820001, 0x10400002, +0x42042, 0x651821, 0x1480fffb, 0x52840, +0x3e00008, 0x601021, 0x10c00007, 0x0, +0x8ca20000, 0x24c6ffff, 0x24a50004, 0xac820000, +0x14c0fffb, 0x24840004, 0x3e00008, 0x0, +0x10a00008, 0x24a3ffff, 0xac860000, 0x0, +0x0, 0x2402ffff, 0x2463ffff, 0x1462fffa, +0x24840004, 0x3e00008, 0x0, 0x411c0, +0x3e00008, 0x24420240, 0x27bdffe8, 0xafb00010, +0x808021, 0xafbf0014, 0xe000fb8, 0xa02021, +0x504821, 0x240aff80, 0x8fbf0014, 0x8fb00010, +0x12a3024, 0x3127007f, 0x3c08800a, 0x3c042100, +0xe81021, 0xc42825, 0x3c038000, 0x27bd0018, +0xac650024, 0xaf820024, 0xac400000, 0xac650024, +0x3e00008, 0xac400040, 0x3c0d0800, 0x8dad0058, +0x56180, 0x240aff80, 0x1a45821, 0x16c4821, +0x12a3024, 0x3127007f, 0x3c08800c, 0x3c042100, +0xe81021, 0xc42825, 0x3c038000, 0xac650028, +0xaf820020, 0x3e00008, 0xac400024, 0x30a5ffff, +0x3c068000, 0x8cc201b8, 0x440fffe, 0x3c086015, +0xa83825, 0x3c031000, 0xacc40180, 0xacc00184, +0xacc70188, 0x3e00008, 0xacc301b8, 0x3c0d0800, +0x8dad0058, 0x56180, 0x240aff80, 0x1a45821, +0x16c4021, 0x10a4824, 0x93140, 0x3107007f, +0xc72825, 0x3c042000, 0xa41825, 0x3c028000, +0xac430830, 0x3e00008, 0xaf800020, 0x27bdffe8, +0xafb00010, 0x808021, 0xafbf0014, 0xe000fb8, +0xa02021, 0x504821, 0x240bff80, 0x12b5024, +0xa3940, 0x3128007f, 0x3c062000, 0x8fbf0014, +0x8fb00010, 0xe82825, 0x34c20001, 0xa21825, +0x3c048000, 0x27bd0018, 0xac830830, 0x3e00008, +0xaf800024, 0x3c058008, 0x8ca70060, 0x3c068008, +0x87102b, 0x14400011, 0x2c834000, 0x8ca80060, +0x2d034000, 0x1060000f, 0x24034000, 0x8cc90060, +0x89282b, 0x14a00002, 0x801821, 0x8cc30060, +0x35a42, 0xb3080, 0x3c0a0800, 0x254a5ac0, +0xca2021, 0x3e00008, 0x8c820000, 0x1460fff3, +0x24034000, 0x35a42, 0xb3080, 0x3c0a0800, +0x254a5ac0, 0xca2021, 0x3e00008, 0x8c820000, +0x3c058008, 0x90a60008, 0x93840090, 0x24c20001, +0x304200ff, 0x3043007f, 0x1064000c, 0x23827, +0xa0a20008, 0x3c048000, 0x8c850178, 0x4a0fffe, +0x8f8a0088, 0x24090002, 0x3c081000, 0xac8a0140, +0xa0890144, 0x3e00008, 0xac880178, 0xa00103d, +0x30e20080, 0x27bdffc8, 0x3c058008, 0x34a40080, +0xafbf0034, 0xafbe0030, 0xafb7002c, 0xafb60028, +0xafb50024, 0xafb40020, 0xafb3001c, 0xafb20018, +0xafb10014, 0xafb00010, 0x94830078, 0x9482007a, +0x104300cd, 0x2405ffff, 0x3c1e8008, 0x80b821, +0xa001119, 0x3c168000, 0x108a00c8, 0x8fbf0034, +0x8f840088, 0x3c0b0800, 0x8d6b005c, 0x240aff80, +0x3c07800e, 0x1644021, 0x10a4824, 0xaec9002c, +0x96e6007a, 0x3102007f, 0x471821, 0x30c57fff, +0x58040, 0x203a821, 0x96bf0000, 0x3c190800, +0x8f390058, 0x240fff80, 0x33f53fff, 0x3248821, +0x15c180, 0x2389021, 0x24f5824, 0x3c0c0100, +0x16c5025, 0x324e007f, 0x3c0d800c, 0x1cd9021, +0x2802821, 0xe000fbb, 0xaeca0028, 0x8e480010, +0x8e490030, 0x8f860024, 0x24020002, 0x1093823, +0xae470010, 0xa0c20000, 0x96e3005c, 0x8e440030, +0x8f910024, 0xe001016, 0x3070ffff, 0x22b80, +0x205c825, 0x3c1f4200, 0x33fc025, 0xae380004, +0x8e510004, 0x8f870024, 0x8e4f0000, 0x24080008, +0xacf1001c, 0xacef0018, 0xace0000c, 0xace00010, +0x9250000a, 0x24060005, 0x2405c000, 0x320e00ff, +0xa4ee0014, 0x964d0008, 0x2e09821, 0xa4ed0016, +0x924c000a, 0x3c0d8008, 0x318b00ff, 0xa4eb0020, +0x96440008, 0x35ac0100, 0xa4e40022, 0xace00024, +0x924a000b, 0x314900ff, 0xa4e90002, 0xa0e80001, +0x8e420030, 0x8f830024, 0x2408ffbf, 0xac620008, +0xa0660030, 0x8f8e0024, 0x2403ffdf, 0x95df0032, +0x3e5c824, 0x335c025, 0xa5d80032, 0x91d10032, +0x322f003f, 0x35f00040, 0xa1d00032, 0x8f890024, +0xad200034, 0x8d8b00c0, 0xad2b0038, 0x9124003c, +0x3c0b7fff, 0x308a007f, 0xa12a003c, 0x8f860024, +0x3564ffff, 0x90c7003c, 0xe81024, 0xa0c2003c, +0x8f990024, 0x9325003c, 0xa3f824, 0xa33f003c, +0x8e580034, 0x8f8c0024, 0xad980040, 0x8e4f002c, +0x8e510030, 0x1f18023, 0xad900044, 0x918e0048, +0x31cd007f, 0xa18d0048, 0x8f850024, 0x8e4a0030, +0x8ca90048, 0x1444024, 0x1363824, 0xe83025, +0xaca60048, 0x9242000a, 0xa0a2004c, 0x96430008, +0x8f9f0024, 0xa7e3004e, 0x8e500030, 0x8e440030, +0xe00030c, 0x8fc50060, 0x92f1007c, 0x2c140, +0x2c900, 0x3197821, 0x322e0002, 0x402821, +0x11c00003, 0x20f8021, 0x22080, 0x2048021, +0x926d007c, 0x31ac0004, 0x11800002, 0x57080, +0x20e8021, 0x8e440030, 0x8f870024, 0x24058000, +0x308b0003, 0xb5023, 0x31490003, 0x2094021, +0xace80034, 0x9664007a, 0x9662007a, 0x9670007a, +0x30467fff, 0x24c30001, 0x307f7fff, 0x205c824, +0x33fc025, 0xa678007a, 0x9671007a, 0x3c120800, +0x8e520060, 0x322f7fff, 0x11f20028, 0x0, +0x8f840088, 0xe000ff0, 0x2a02821, 0x8f840088, +0xe001000, 0x2802821, 0xe001035, 0x0, +0x96f30078, 0x96f4007a, 0x1293000f, 0x2821, +0x3c098008, 0x35240100, 0x93c80008, 0x908700c5, +0x3114007f, 0x30e400ff, 0x284302b, 0x14c0ff3e, +0x268a0001, 0x938d0090, 0x268b0001, 0x8d6021, +0x158bff3c, 0x8f840088, 0x8fbf0034, 0x8fbe0030, +0x8fb7002c, 0x8fb60028, 0x8fb50024, 0x8fb40020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0xa01021, 0x3e00008, 0x27bd0038, 0x967f007a, +0x3e5c824, 0xa679007a, 0x9278007a, 0x926e007a, +0x331100ff, 0x1179c2, 0xf9027, 0x1269c0, +0x31cc007f, 0x18d2825, 0xa265007a, 0xa00110e, +0x8f840088, 0x3c038000, 0x3084ffff, 0x30a5ffff, +0xac640018, 0xac65001c, 0x3e00008, 0x8c620014, +0x27bdffa8, 0x3c068008, 0xafbf0054, 0xafbe0050, +0xafb7004c, 0xafb60048, 0xafb50044, 0xafb40040, +0xafb3003c, 0xafb20038, 0xafb10034, 0xafb00030, +0x34c80100, 0x910500c5, 0x90c70008, 0x3084ffff, +0x30a500ff, 0x30e2007f, 0x45182a, 0xafa40010, +0xa7a00018, 0x1060009c, 0xafa00014, 0x90ca0008, +0x3149007f, 0xa93023, 0x24d4ffff, 0x14882b, +0x8fb30010, 0x13902b, 0x2328024, 0x52000085, +0x8fb40014, 0x3c038008, 0x94790052, 0x947e0050, +0x8fb60010, 0x33ec023, 0x18bc00, 0x171403, +0x16fc00, 0x2c2a82a, 0x16a00002, 0x1f2c03, +0x402821, 0x143c00, 0x72403, 0xa4102a, +0x54400001, 0xa02021, 0x28850009, 0x14a00002, +0x80b021, 0x24160008, 0x3c0c8008, 0x8d860048, +0x165980, 0x8d88004c, 0x3c038000, 0x3169ffff, +0x3c0a0010, 0x12a2025, 0x34700400, 0xac660038, +0xaf90008c, 0xac68003c, 0xac640030, 0x0, 0x0, 0x0, 0x0, 0x0, -0x5, 0x0, 0x0, 0x0, -0x0, 0x4, 0x0, 0x0, -0x0, 0x0, 0x6, 0x0, -0x0, 0x0, 0x0, 0x1, -0x0, 0x1, 0x0, 0x0, +0x0, 0x0, 0x0, 0x8c6e0000, +0x31cd0020, 0x11a0fffd, 0x16902a, 0x2517824, +0x11e00036, 0xb821, 0x3c158000, 0x3c118008, +0x92220008, 0x8ea40100, 0x8821, 0x305e007f, +0xe000fbb, 0x3c02821, 0x8e1f0010, 0x8ea40100, +0x33f93fff, 0x3202821, 0xe000fd3, 0xafb9001c, +0x92180000, 0x3302003f, 0x2c530008, 0x5260000d, +0x8021, 0x24050001, 0x451804, 0x3067005d, +0x14e000b1, 0x8f92008c, 0x30640002, 0x1480014d, +0x8f85008c, 0x30680080, 0x5500004a, 0x96120012, +0x8021, 0x8ea40100, 0xe000ff0, 0x8fa5001c, +0x8ea40100, 0xe001000, 0x3c02821, 0x1200004f, +0x3c078008, 0x26e90001, 0x8f93008c, 0x9bc00, +0x291a023, 0x17bc03, 0x2f6302a, 0x14882b, +0x26670040, 0x240a0001, 0xd1f024, 0xe08021, +0xaf87008c, 0x17c0ffcd, 0xafaa0014, 0x3c078008, +0x94e20050, 0x8fab0010, 0x3c058000, 0x2e24021, +0x3c030020, 0xa4e80050, 0xaca30030, 0x94f50050, +0x94f60052, 0x1772023, 0x3098ffff, 0x12d50041, +0xafb80010, 0x8cf8004c, 0x8ce90048, 0x172180, +0x3049821, 0xa821, 0x264302b, 0x135b821, +0x2e68021, 0xacf3004c, 0xacf00048, 0x8fb30010, +0x13902b, 0x2328024, 0x1600ff7f, 0x3c038008, +0x8fb40014, 0x8fbf0054, 0x8fbe0050, 0x3a820001, +0x8fb7004c, 0x8fb60048, 0x8fb50044, 0x8fb40040, +0x8fb3003c, 0x8fb20038, 0x8fb10034, 0x8fb00030, +0x3e00008, 0x27bd0058, 0x90cf0008, 0x938c0090, +0x31ee007f, 0xae6823, 0x18d5821, 0xa001164, +0x2574ffff, 0x8f840088, 0x24100001, 0xa7b20018, +0xe000fe4, 0x97a50018, 0x8ea40100, 0xe000ff0, +0x8fa5001c, 0x8ea40100, 0xe001000, 0x3c02821, +0x1600ffb5, 0x26e90001, 0x3c078008, 0x94e20050, +0x8fab0010, 0x3c058000, 0x2e24021, 0x3c030020, +0xa4e80050, 0xaca30030, 0x94f50050, 0x94f60052, +0x1772023, 0x3098ffff, 0x14882b, 0x16d5ffc1, +0xafb80010, 0x94f20054, 0x8cf90044, 0x325ffffe, +0x1f80c0, 0x3307821, 0xacaf003c, 0x8cee0044, +0x8cac003c, 0x1cc6823, 0x19a002e7, 0x0, +0x8cfe0040, 0x27c20001, 0x3c0a0050, 0xaca20038, +0x3c038000, 0x35450010, 0xac650030, 0x0, 0x0, 0x0, 0x0, 0x0, -0x0, 0x0, 0x0, 0x0 }; -static u32 bce_TXP_b06FwRodata[(0x30/4) + 1] = { -0x8003eb0, 0x8003edc, 0x8003f24, -0x8003f24, 0x8003db0, 0x8003ddc, 0x8003ddc, -0x8003f24, 0x8003f24, 0x8003f24, 0x8003e44, -0x0, 0x0 }; -static u32 bce_TXP_b06FwBss[(0xa20/4) + 1] = { 0x0 }; -static u32 bce_TXP_b06FwSbss[(0x80/4) + 1] = { 0x0 }; -/* static u32 bce_TXP_b06FwSdata[(0x0/4) + 1] = { 0x0 }; */ +0x0, 0x0, 0x0, 0x8c670000, +0x30e60020, 0x10c0fffd, 0x3c108008, 0x96030054, +0x3c178000, 0x3c068008, 0x306b0001, 0xb20c0, +0x97b021, 0x8ed80400, 0x3c070800, 0x8ce70044, +0x3c090020, 0xacd80048, 0x8ed50404, 0x24130001, +0xacd5004c, 0x10f302ce, 0xaee90030, 0x961f0052, +0x3c050800, 0x8ca50040, 0xbfc821, 0xa6190052, +0x960f0054, 0x25ec0001, 0xa60c0054, 0x960e0054, +0x31c4ffff, 0x5487ff0f, 0x8fb30010, 0x30a5ffff, +0xe001142, 0xa6000054, 0x3c0a0800, 0x8d4a0024, +0x961e0052, 0x4a2823, 0x3c59023, 0xa6120052, +0xa001166, 0x8fb30010, 0x8f930020, 0x3c070080, +0x8e440028, 0x3c1fffef, 0x37f9ffff, 0xae640000, +0x8e420024, 0xa260000a, 0x3c0fff9f, 0xae620004, +0x9245002c, 0x35eeffff, 0x3c0c0040, 0xa265000c, +0x8e71000c, 0xa265000b, 0x3c0600ff, 0x227c025, +0x3196824, 0x1ae5824, 0x16c5025, 0xae6a000c, +0x8e490004, 0xae600018, 0x34d0ffff, 0xae690014, +0x8e48002c, 0x8f820088, 0xa6600008, 0x1102024, +0xae640010, 0x8e510008, 0x96470012, 0xae710020, +0x8e58000c, 0x30e33fff, 0x32980, 0xae780024, +0x8e4c0014, 0xa2f821, 0x30f90001, 0xae6c0028, +0x8e4b0018, 0x1f71c2, 0x197b80, 0xae6b002c, +0x8e49001c, 0x1cf6821, 0xa66d001c, 0xae690030, +0x964a0002, 0x8e460020, 0xa66a001e, 0xae660034, +0x92430033, 0x30700004, 0x56000006, 0x924b0000, +0x3c068008, 0x34d00100, 0x8e0800c0, 0xae680030, +0x924b0000, 0x8f8a0024, 0xa14b0030, 0x92490033, +0x31230002, 0x50600007, 0x92440001, 0x8f8c0024, +0x240fff80, 0x918e0030, 0x1cf6825, 0xa18d0030, +0x92440001, 0x8f820024, 0x2418ffbf, 0x240affdf, +0xa0440031, 0x8f990024, 0x3c088008, 0x35040080, +0x9331003c, 0x323f007f, 0xa33f003c, 0x8f8d0024, +0x91af003c, 0x1f87024, 0xa1ae003c, 0x8f870024, +0x8e6c0014, 0x90e3003c, 0x2d8b0001, 0xb4940, +0x6a3024, 0xc98025, 0xa0f0003c, 0x96450012, +0x8f870024, 0xa4e50032, 0x8e450004, 0x909f007c, +0x30a20003, 0x28823, 0x32390003, 0xb91021, +0x33f80002, 0x17000002, 0x24440034, 0x24440030, +0x3c038008, 0x34660080, 0x90c9007c, 0xa98024, +0x32080004, 0x15000002, 0x24830004, 0x801821, +0x8f840024, 0x24080002, 0xace30034, 0xa0880000, +0x9242003f, 0x8f9f0024, 0x3c188008, 0x370f0080, +0xa3e20001, 0x8f910024, 0x9259003f, 0x8e440004, +0xa6390002, 0x95ee005c, 0xe001016, 0x31d0ffff, +0x26b80, 0x20d5825, 0x3c0c4200, 0x16c2825, +0xae250004, 0x8e4a0038, 0x8f850024, 0xacaa0018, +0x8e470034, 0xaca7001c, 0xaca0000c, 0xaca00010, +0xa4a00014, 0xa4a00016, 0xa4a00020, 0xa4a00022, +0xaca00024, 0x8e620014, 0x50400001, 0x24020001, +0xaca20008, 0xe001035, 0x24110001, 0xa0011ba, +0x24100001, 0x90b30001, 0x32720020, 0x12400187, +0x24100001, 0x3c078008, 0x34e30080, 0x9066007c, +0x8f930020, 0xafa00024, 0x30c90001, 0x11200011, +0xafb00020, 0x3c0c8008, 0x8cb10014, 0x8d8b0060, +0x22b502b, 0x15400003, 0x2203021, 0x3c108008, +0x8e060060, 0x3c0f8008, 0x35e30080, 0x8c6e0070, +0xce682b, 0x15a00002, 0xc02021, 0x8c640070, +0xafa40024, 0x8f82ff5c, 0x8ca40014, 0x8c590070, +0x99c02b, 0x53000001, 0x8c440070, 0x8fa20024, +0x82f823, 0x13e00003, 0xafbf0028, 0x24040002, +0xafa40020, 0x8fb20020, 0x292402b, 0x15000158, +0x1821, 0x8ca90038, 0x8e6b000c, 0x3c0c0080, +0xae690000, 0x8ca80034, 0x3c11ff9f, 0x16c3025, +0xae680004, 0x90aa003f, 0x3623ffff, 0xc31024, +0x3c050020, 0x3c12ffef, 0xa26a000b, 0x453825, +0x3644ffff, 0xe4c824, 0x3c1f0008, 0x8f87008c, +0x33fc025, 0xae78000c, 0x8cee0014, 0xae600018, +0x8fb10024, 0xae6e0014, 0x8ced0018, 0x8faf0028, +0xae6d001c, 0x8cf00008, 0x22f6021, 0xae700024, +0x8ceb000c, 0xa6600038, 0xa660003a, 0xae6c002c, +0xae600028, 0xae6b0020, 0x8ce30014, 0x8fa60028, +0x715023, 0x1462823, 0x10a0000f, 0xae650010, +0x90e2003d, 0xf821, 0x13f7821, 0x25100, +0x10a6821, 0x1aac02b, 0x1f87021, 0xae6e0000, +0xae6d0004, 0x90f0003d, 0xa270000a, 0x8f88008c, +0x95090006, 0xa6690008, 0x8f8f0024, 0x24180002, +0x3c0e8008, 0x8fa40024, 0x35cd0080, 0xa1f80000, +0x95a8005c, 0x8f920024, 0xe001016, 0x3110ffff, +0x22b80, 0x2056025, 0x3c094200, 0x8f85008c, +0x1895825, 0xae4b0004, 0x8f840024, 0x8cb10038, +0xac910018, 0x8ca30034, 0xac83001c, 0xac80000c, +0xac800010, 0xa4800014, 0xa4800016, 0xa4800020, +0xa4800022, 0xac800024, 0x90a6003f, 0x8fa70024, +0xa4860002, 0x10e0000c, 0x24020001, 0x8fb90028, +0x53200188, 0x90a2003d, 0x90a2003e, 0x244a0001, +0xa08a0001, 0x8f850024, 0x8fbf0024, 0xacbf0008, +0xa001398, 0x3c038008, 0xa0820001, 0x8f850024, +0x24040001, 0xaca40008, 0x3c038008, 0x34660080, +0x90d1007c, 0x32270002, 0x14e00002, 0x24060034, +0x24060030, 0x8f88008c, 0x3c0e8008, 0x35cd0080, +0x91090000, 0x91b9007c, 0x8fb00024, 0xa0a90030, +0x8f92008c, 0x8f820024, 0x8fb10024, 0x92440001, +0x320b0003, 0x240c0004, 0xa0440031, 0x18b1823, +0x8f9f008c, 0x8f8b0024, 0x2418c000, 0x97ee0012, +0x956f0032, 0x30670003, 0x31cd3fff, 0x1f84024, +0x10d2825, 0xa5650032, 0x91700032, 0xd15021, +0x1473021, 0x3209003f, 0x352c0040, 0xa16c0032, +0x8fb20024, 0x33270004, 0x12400002, 0x8f850024, +0xc73021, 0x3c1f8008, 0xaca60034, 0x37f90100, +0x8f3800c0, 0x8fa60024, 0x2408ffbf, 0xacb80038, +0x90ae003c, 0x2ccf0001, 0x240bffdf, 0x31cd007f, +0xa0ad003c, 0x8f8c0024, 0xf2140, 0x9190003c, +0x2084824, 0xa189003c, 0x8f910024, 0x9232003c, +0x24b1824, 0x641025, 0xa222003c, 0x8f99008c, +0x8f8f0024, 0x8f270020, 0xade70040, 0x8f2a0024, +0xadea0044, 0x8f3f0028, 0xadff0048, 0x8f38002c, +0xe001035, 0xadf8004c, 0x8fa50020, 0x24060002, +0x54a6009f, 0x8fa30020, 0x3c0a8000, 0x3c128008, +0x8d440100, 0x925f0008, 0x33e5007f, 0xe000fbb, +0x8f92ff5c, 0x8f990024, 0x8fa60020, 0x8fa40028, +0xa3260000, 0x964f005c, 0x8f910024, 0xe001016, +0x31f0ffff, 0x26380, 0x20c6825, 0x3c0e4200, +0x8f8c008c, 0x1ae4025, 0xae280004, 0x8d900038, +0x8f910024, 0x1021, 0x25900, 0xae300018, +0x8d850034, 0x3c047fff, 0x3489ffff, 0xae25001c, +0x9198003e, 0x8e27001c, 0x8e260018, 0x185100, +0x181f02, 0xea7021, 0x163f825, 0x1cac82b, +0xdf7821, 0x1f96821, 0x8fa40028, 0xae2e001c, +0xae2d0018, 0xae20000c, 0xae200010, 0x9188003e, +0x241f0005, 0x240fc000, 0xa6280014, 0x95900004, +0x89c024, 0xa6300016, 0x9185003e, 0xa6250020, +0x95830004, 0xa6230022, 0xae200024, 0x9182003f, +0xa6220002, 0x918b003d, 0x25670001, 0xa2270001, +0x8f860024, 0x8faa0028, 0x3c118008, 0x36270100, +0xacca0008, 0xa0df0030, 0x8f8b0024, 0x8f99008c, +0x2411ff80, 0x956e0032, 0x972d0012, 0x1ee8024, +0x31a83fff, 0x2082825, 0xa5650032, 0x916c0032, +0x240fffbf, 0x2410ffdf, 0x3183003f, 0x34620040, +0xa1620032, 0x8f990024, 0x2403ffff, 0xaf200034, +0x8cea00c0, 0xaf2a0038, 0x933f003c, 0x33e6007f, +0xa326003c, 0x8f880024, 0x3c198000, 0x910e003c, +0x1cf6824, 0xa10d003c, 0x8f8b0024, 0x9165003c, +0xb06024, 0xa16c003c, 0x8f9f0024, 0x3c0b8008, +0xafe30040, 0x8fa20024, 0xafe20044, 0x93e70048, +0xf15025, 0xa3ea0048, 0x8f900024, 0x8f8d008c, +0x8e060048, 0xd97824, 0x1f87025, 0xae0e0048, +0x91a8003e, 0xa208004c, 0x8f89008c, 0x8f8c0024, +0x95250004, 0xa585004e, 0xe00030c, 0x8d650060, +0x9244007c, 0x402821, 0x8fb10028, 0x51900, +0x21140, 0x433821, 0x308a0002, 0x11400003, +0x2271821, 0x53880, 0x671821, 0x3c0b8008, +0x35640080, 0x9098007c, 0x33090004, 0x11200003, +0x8faf0028, 0x51080, 0x621821, 0x240c0004, +0x8f910024, 0x31f00003, 0x1907023, 0x31cd0003, +0x6d4021, 0xae280034, 0x3c038008, 0xa6650038, +0x3c058000, 0x8ca40100, 0x90730008, 0xe001000, +0x3265007f, 0xe001035, 0x0, 0x8fa30020, +0x3f82b, 0x1f8023, 0x290a024, 0x608021, +0x608821, 0xa0011ba, 0x10802b, 0x8f910020, +0x8cb20038, 0x240f0003, 0xa6200008, 0xae320000, +0x8cbf0034, 0xa220000a, 0x8f99008c, 0xae3f0004, +0x3c050080, 0x932c003f, 0xa22f000c, 0x8e2e000c, +0x3c0dff9f, 0xa22c000b, 0x1c51025, 0x35a8ffff, +0x3c03ffef, 0x8f99008c, 0x482024, 0x346bffff, +0x8bc024, 0xae38000c, 0x8f290014, 0x97320012, +0x8f860088, 0xae290010, 0x8f330014, 0xae200018, +0xae200020, 0xae330014, 0xae200024, 0x8f270018, +0x32533fff, 0x135180, 0xae270028, 0x8f3f0008, +0x1467821, 0x324c0001, 0xae3f0030, 0x8f28000c, +0x8f830024, 0xf71c2, 0xc2b80, 0x1c56821, +0x24020002, 0x3c0b8008, 0xa62d001c, 0xa6200034, +0xae28002c, 0x35640080, 0xa0620000, 0x9498005c, +0x8f8f0024, 0x3c094200, 0x3307ffff, 0xe93025, +0xade60004, 0x8f92008c, 0x24190001, 0x2402c000, +0x8e4a0038, 0x24060034, 0xadea0018, 0x8e5f0034, +0x3c0a8008, 0x35520080, 0xadff001c, 0xade0000c, +0xade00010, 0xa5e00014, 0xa5e00016, 0xa5e00020, +0xa5e00022, 0xade00024, 0xa5f00002, 0xa1f90001, +0x8f8d0024, 0x8f8c008c, 0xadb00008, 0x918e0000, +0xa1ae0030, 0x8f88008c, 0x8f910024, 0x91050001, +0xa2250031, 0x8f870024, 0x94e30032, 0x625824, +0x1732025, 0xa4e40032, 0x90f80032, 0x3309003f, +0xa0e90032, 0x925f007c, 0x33f90002, 0x17200002, +0x8f840024, 0x24060030, 0x3c198008, 0xac860034, +0x37310100, 0x8e2f00c0, 0x240effbf, 0x2008821, +0xac8f0038, 0x908c003c, 0x10802b, 0x3185007f, +0xa085003c, 0x8f880024, 0x910d003c, 0x1ae1024, +0xa102003c, 0x8f840024, 0x9083003c, 0x346b0020, +0xa08b003c, 0x8f87008c, 0x8f8a0024, 0x8cf80020, +0xad580040, 0x8ce90024, 0xad490044, 0x8cf30028, +0xad530048, 0x8ce6002c, 0xe001035, 0xad46004c, +0xa0011ba, 0x0, 0x8ce20040, 0xa00122c, +0x3c0a0050, 0x244a0001, 0xa08a0001, 0x8f850024, +0x8fbf0024, 0xacbf0008, 0xa001398, 0x3c038008, +0x94cd0052, 0x3c020800, 0x8c420024, 0x4d4021, +0xa4c80052, 0xa001166, 0x8fb30010, 0x27bdffe0, +0x3c0d8008, 0xafb20018, 0xafb00010, 0xafbf001c, +0xafb10014, 0x35b20080, 0x8e4b0018, 0x35ac0100, +0x964a0006, 0x95a70050, 0x918900ec, 0xb4602, +0x1472823, 0x3103007f, 0x312600ff, 0x24020003, +0xaf840088, 0xa3830090, 0x10c2000b, 0x30b0ffff, +0x16000019, 0x3c128000, 0x24060c00, 0xae460024, +0x8fbf001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0020, 0x96590078, 0x9658007a, +0x924f007d, 0x3198826, 0x322effff, 0x31e400c0, +0x14800014, 0x2dd10001, 0x16000026, 0x0, +0x1620ffed, 0x3c128000, 0xe00104a, 0x0, +0xa001538, 0x24060c00, 0xe001149, 0x2002021, +0x3c128000, 0x24060c00, 0xae460024, 0x8fbf001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x3e00008, +0x27bd0020, 0x1620ffda, 0x0, 0xe00104a, +0x0, 0x5440ffd8, 0x3c128000, 0x16000006, +0x0, 0x9242007d, 0x3042003f, 0xa242007d, +0xa001537, 0x3c128000, 0xe001149, 0x2002021, +0x5040ffcd, 0x3c128000, 0x9242007d, 0xa001564, +0x3042003f, 0xe001149, 0x2002021, 0x5440ffc6, +0x3c128000, 0x12200007, 0x0, 0x925f007d, +0x33f0003f, 0x36020040, 0xa242007d, 0xa001537, +0x3c128000, 0xe00104a, 0x0, 0x5040ffba, +0x3c128000, 0x925f007d, 0x33f0003f, 0xa001577, +0x36020040, 0x411c0, 0x3e00008, 0x24420240, +0x3c050006, 0x851025, 0x3c038000, 0xac620030, +0x0, 0x0, 0x0, 0x3c058000, +0x8ca70000, 0x30e60010, 0x10c0fffd, 0x0, +0x8cab003c, 0x8caa003c, 0x1644821, 0x12a402b, +0x11000004, 0x3c068000, 0x8cad0038, 0x25ac0001, +0xacac0038, 0x8ccf003c, 0x1e47021, 0x3e00008, +0xacce003c, 0x27bdffd0, 0xafb20018, 0xafb00010, +0xafbf0028, 0xafb50024, 0xafb40020, 0xafb3001c, +0xafb10014, 0xa09021, 0x14a00012, 0x808021, +0x8f820028, 0x21880, 0x14600037, 0x24040010, +0xe001585, 0x0, 0x8fbf0028, 0x8fb50024, +0x8fb40020, 0x8fb3001c, 0x8fb20018, 0x8fb10014, +0x8fb00010, 0x1021, 0x27bd0030, 0x3e00008, +0xaf800028, 0x10a0001e, 0x8821, 0x3c138000, +0x24140020, 0xa0015c4, 0x3c150005, 0x26310004, +0x232502b, 0x11400017, 0x2401021, 0x8f880028, +0x8e070000, 0x24040080, 0x84880, 0x1331821, +0x25060001, 0xac670400, 0x26100004, 0x14d4fff3, +0xaf860028, 0xe001585, 0x0, 0xae750030, +0x0, 0x0, 0x0, 0x0, +0x26310004, 0x232502b, 0x1540ffec, 0xaf800028, +0x2401021, 0x8fbf0028, 0x8fb50024, 0x8fb40020, +0x8fb3001c, 0x8fb20018, 0x8fb10014, 0x8fb00010, +0x3e00008, 0x27bd0030, 0x32023, 0x3085000f, +0xa0015ad, 0x652021, 0x27bdffd8, 0x3c038000, +0xa03821, 0xac670038, 0xafb10014, 0xac66003c, +0x808821, 0x3c060022, 0xac660030, 0xafb00010, +0xac710028, 0x3c10800c, 0x3c04800c, 0x24050070, +0xafbf0024, 0xafb40020, 0xafb3001c, 0xe00159e, +0xafb20018, 0x26040080, 0xe00159e, 0x24050080, +0x26040100, 0xe00159e, 0x240500f0, 0x3c020800, +0x8c420064, 0x10400013, 0x8021, 0x3c148000, +0x2413ff80, 0x3c12800c, 0xe001582, 0x2002021, +0x514821, 0x312a007f, 0x1334024, 0x1522021, +0x24050050, 0xae880028, 0xe00159e, 0x26100001, +0x3c050800, 0x8ca50064, 0x205202b, 0x1480fff2, +0x0, 0x3c060800, 0x8cc60060, 0x10c00015, +0x8021, 0x3c148000, 0x2413ff80, 0x3c12800c, +0x3c190800, 0x8f390058, 0x10c180, 0x24050040, +0x3317821, 0x1f86821, 0x31ae007f, 0x1b36024, +0x1d22021, 0xae8c0028, 0xe00159e, 0x26100001, +0x3c060800, 0x8cc60060, 0x206582b, 0x1560fff0, +0x0, 0x3c100800, 0x8e10005c, 0x2414ff80, +0x3c1f800c, 0x2119821, 0x2749024, 0x3262007f, +0x3c118000, 0x5f2021, 0xae320028, 0xe00159e, +0x62840, 0x8fbf0024, 0x8fb40020, 0x8fb3001c, +0x8fb20018, 0x8fb10014, 0x8fb00010, 0x2021, +0x2821, 0xa00159e, 0x27bd0028, 0x8f830040, +0x8c620004, 0x10400003, 0x0, 0x3e00008, +0x0, 0x8c640010, 0x8c650008, 0xa0015e7, +0x8c66000c, 0x0 }; +u32 bce_CP_b09FwData[(0x84/4) + 1] = { +0x0, +0x1b, 0xf, 0xa, 0x8, +0x6, 0x5, 0x5, 0x4, +0x4, 0x3, 0x3, 0x3, +0x3, 0x3, 0x2, 0x2, +0x2, 0x2, 0x2, 0x2, +0x2, 0x2, 0x2, 0x2, +0x2, 0x2, 0x2, 0x2, +0x2, 0x1, 0x1, 0x1, +0x0 }; +u32 bce_CP_b09FwRodata[(0x16c/4) + 1] = { +0x80080100, +0x80080080, 0x80080000, 0x8001744, 0x8001744, +0x800177c, 0x800177c, 0x8001790, 0x8001760, +0x80019b8, 0x8001984, 0x8001a10, 0x8001a10, +0x8001a98, 0x80019c8, 0x80080240, 0x8003260, +0x80031cc, 0x8003288, 0x80032b0, 0x80032d8, +0x80032fc, 0x8003344, 0x8003320, 0x8003368, +0x8003234, 0x800345c, 0x800344c, 0x80031e8, +0x80031e8, 0x80031e8, 0x80033bc, 0x80033bc, +0x80031e8, 0x80031e8, 0x800343c, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x800342c, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x800341c, 0x80031e8, +0x80031e8, 0x800340c, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80031e8, +0x80031e8, 0x80031e8, 0x80031e8, 0x80033f4, +0x80031e8, 0x80031e8, 0x80033e4, 0x80033d4, +0x8003d6c, 0x8003d40, 0x8003d0c, 0x8003ce0, +0x8003cc0, 0x8003c74, 0x80080100, 0x80080080, +0x80080000, 0x80080080, 0x0 }; +u32 bce_CP_b09FwBss[(0x19c/4) + 1] = { 0x0 }; +u32 bce_CP_b09FwSbss[(0x91/4) + 1] = { 0x0 }; +u32 bce_CP_b09FwSdata[(0x0/4) + 1] = { 0x0 }; + +u32 bce_xi_rv2p_proc1[] = { + 0x00000010, 0xb1800002, + 0x0000001f, 0x05021000, + 0x00000008, 0xac000001, + 0x00000000, 0x05000000, + 0x0000000c, 0x2f800001, + 0x00000000, 0x2b000000, + 0x00000000, 0x2b800000, + 0x00000010, 0x203f006d, + 0x00000010, 0x213f0003, + 0x00000010, 0x20bf003d, + 0x00000018, 0x8000fffd, + 0x00000010, 0xb1b8b014, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c380000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000008b, + 0x00000008, 0x2d80011c, + 0x00000008, 0x02000001, + 0x00000010, 0x91de0000, + 0x0000000f, 0x42e0001c, + 0x00000010, 0x91840a19, + 0x00000010, 0x08660018, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000f, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ffe9, + 0x00000008, 0x02000001, + 0x0000000f, 0x42e0001c, + 0x00000010, 0x91840a1c, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d000006, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800106, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x08660015, + 0x00000018, 0x8000fff1, + 0x00000010, 0x205f0000, + 0x00000008, 0xb1000001, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000b, 0x2fdf0002, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2c070000, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffd1, + 0x0000000b, 0x2fdf0002, + 0x0000000c, 0x1f800000, + 0x00000000, 0x2c070000, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffcb, + 0x0000000c, 0x1f800002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffc8, + 0x0000000c, 0x29800002, + 0x0000000c, 0x1f800002, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a000005, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ffc2, + 0x00000008, 0x02240047, + 0x00000018, 0x00040000, + 0x00000018, 0x8000001b, + 0x00000018, 0x8000001d, + 0x00000018, 0x8000005c, + 0x00000018, 0x80000093, + 0x00000018, 0x80000092, + 0x00000018, 0x80000015, + 0x00000018, 0x80000014, + 0x00000018, 0x80000013, + 0x00000018, 0x80000012, + 0x00000018, 0x800000e2, + 0x00000018, 0x80000010, + 0x00000018, 0x8000000f, + 0x00000018, 0x8000000e, + 0x00000018, 0x800000de, + 0x00000018, 0x8000000c, + 0x00000018, 0x8000000b, + 0x00000018, 0x80000014, + 0x00000018, 0x8000001a, + 0x00000018, 0x80000008, + 0x00000018, 0x800000ae, + 0x00000018, 0x8000003b, + 0x00000018, 0x800000de, + 0x00000018, 0x8000010a, + 0x00000018, 0x800000d4, + 0x00000018, 0x8000012f, + 0x00000018, 0x80000045, + 0x00000018, 0x80000000, + 0x0000000c, 0x1f800001, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ffa2, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff9c, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000000, 0x29420000, + 0x00000008, 0x2a000002, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff95, + 0x00000018, 0x8000ff94, + 0x00000010, 0xb1bcb018, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c3c0000, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x80000022, + 0x00000008, 0x2d800134, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800140, + 0x00000008, 0x2d00003c, + 0x00000008, 0x2d80011c, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800080, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x2c6201ad, + 0x00000018, 0x80000005, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800108, + 0x0000000c, 0x29800000, + 0x0000000c, 0x1f800000, + 0x00000010, 0x91de0000, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a000006, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff71, + 0x00000010, 0x91d40000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a00000b, + 0x00000000, 0x05000000, + 0x00000018, 0x8000ff6b, + 0x00000018, 0x00020000, + 0x00000000, 0x06820000, + 0x00000010, 0xb18a0006, + 0x00000000, 0x860c1400, + 0x00000010, 0xb18c0004, + 0x00000000, 0x05000000, + 0x00000008, 0x2a000001, + 0x00000010, 0x91d40000, + 0x00000018, 0x000d0000, + 0x00000010, 0xb1a0b013, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c200000, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000fff1, + 0x00000008, 0x2d80011c, + 0x00000010, 0x001f0000, + 0x00000010, 0x91de0000, + 0x0000000f, 0x47600008, + 0x0000000f, 0x060e0001, + 0x00000000, 0x0f580000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0d610000, + 0x00000018, 0x80000013, + 0x0000000f, 0x47600008, + 0x0000000b, 0x2fdf0002, + 0x00000008, 0x2c800000, + 0x00000008, 0x2d000000, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d80011c, + 0x0000000f, 0x060e0001, + 0x00000010, 0x001f0000, + 0x00000000, 0x0f580000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0d610000, + 0x00000000, 0x02620000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x309a0000, + 0x00000000, 0x31040000, + 0x00000000, 0x0c961800, + 0x00000009, 0x0c99ffff, + 0x00000004, 0xcc993400, + 0x00000010, 0xb1963202, + 0x00000008, 0x0f800000, + 0x0000000c, 0x29800001, + 0x00000010, 0x00220002, + 0x0000000c, 0x29520001, + 0x0000000c, 0x29520000, + 0x00000008, 0x0200000e, + 0x00000008, 0x0280001a, + 0x00000010, 0xb1c40a02, + 0x00000008, 0x02000003, + 0x00000008, 0x22000001, + 0x0000000c, 0x1f800001, + 0x00000000, 0x2adf0000, + 0x00000000, 0x2a000800, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff2a, + 0x00000010, 0x91a0b00a, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000018, 0x80000010, + 0x00000008, 0xac000001, + 0x00000018, 0x8000000b, + 0x00000000, 0x0380b000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c004000, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ffb1, + 0x00000018, 0x80000034, + 0x00000018, 0x80000006, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c000e00, + 0x00000008, 0x2a000007, + 0x00000008, 0x05005555, + 0x00000018, 0x8000ff13, + 0x00000000, 0x06820000, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x05000002, + 0x0000000f, 0x4760001c, + 0x00000010, 0x918a1c08, + 0x00000010, 0x0ce70007, + 0x00000009, 0x0562ffff, + 0x00000010, 0xba6c1405, + 0x00000000, 0x2adf0000, + 0x00000000, 0x21000000, + 0x00000008, 0x2a000005, + 0x00000010, 0x91d40000, + 0x0000000c, 0x31620018, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000018, 0x000d0000, + 0x00000010, 0xb1a0b00e, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x03d80000, + 0x00000000, 0x2c200000, + 0x00000010, 0x91d40000, + 0x00000018, 0x80000014, + 0x00000010, 0x2c620002, + 0x00000018, 0x8000000b, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c070000, + 0x0000000c, 0x1f800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x05000000, + 0x00000018, 0x8000fef1, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000010, 0x91d40000, + 0x00000008, 0x2d800108, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000a, + 0x00000000, 0x05000000, + 0x00000018, 0x8000fee6, + 0x00000000, 0x05020000, + 0x00000008, 0x2c80010c, + 0x00000008, 0x2d000008, + 0x00000008, 0x2d800134, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800140, + 0x00000008, 0x2d00003c, + 0x00000008, 0x2d80011c, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800080, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000018, 0x000a0000, + 0x00000010, 0x91d40000, + 0x00000008, 0x0600aaaa, + 0x00000018, 0x8000ff69, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000009, + 0x00000008, 0x0500aaaa, + 0x00000018, 0x8000fecd, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ff61, + 0x00000010, 0x91a03c02, + 0x00000010, 0xb1e66207, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c310000, + 0x00000009, 0x2cb1007f, + 0x00000008, 0x2cd90000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d80010d, + 0x00000010, 0xb1a80007, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c200000, + 0x00000000, 0x2ca70000, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0xb1a60010, + 0x00000010, 0x001f0000, + 0x0000000f, 0x0f300007, + 0x00000000, 0x0a600000, + 0x00000000, 0x0ae10000, + 0x0000000f, 0x4b620008, + 0x00000009, 0x0b1600ff, + 0x00000000, 0x0d620000, + 0x00000009, 0x0d1a00ff, + 0x00000010, 0x07300003, + 0x0000000c, 0x0d1a0008, + 0x0000000c, 0x0b160008, + 0x0000000f, 0x4ce30018, + 0x00000000, 0x0c992c00, + 0x00000004, 0xcc993400, + 0x00000008, 0x0f800000, + 0x0000000c, 0x29800001, + 0x00000000, 0x33310000, + 0x00000008, 0x22000016, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000c, + 0x00000010, 0x009f0000, + 0x00000000, 0x0f200000, + 0x0000000c, 0x1f800001, + 0x00000008, 0x05005555, + 0x00000018, 0x8000fea0, + 0x00000010, 0x91d40000, + 0x00000008, 0x0600aaaa, + 0x00000018, 0x8000ff34, + 0x0000000f, 0x47220008, + 0x00000009, 0x070e000f, + 0x00000008, 0x070e0008, + 0x00000008, 0x02800001, + 0x00000007, 0x02851c00, + 0x00000008, 0x82850001, + 0x00000000, 0x02854c00, + 0x00000007, 0x42851c00, + 0x00000003, 0xc3aa5200, + 0x00000000, 0x03b10e00, + 0x00000007, 0x4b071c00, + 0x0000000f, 0x0f300007, + 0x0000000f, 0x0a960003, + 0x00000000, 0x0a955c00, + 0x00000000, 0x4a005a00, + 0x00000000, 0x0c960a00, + 0x00000009, 0x0c99ffff, + 0x00000008, 0x0d00ffff, + 0x00000010, 0xb1963202, + 0x00000008, 0x0f800005, + 0x00000010, 0xb1a80009, + 0x00000010, 0x205f0000, + 0x0000000b, 0x2fdf0002, + 0x00000000, 0x2c200000, + 0x00000000, 0x2ca70000, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d800108, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000c, 0x29800001, + 0x00000010, 0x001f0000, + 0x0000000c, 0x1f800001, + 0x00000000, 0x2adf0000, + 0x00000008, 0x2a00000d, + 0x00000008, 0x0500aaaa, + 0x00000018, 0x8000fe79, + 0x00000010, 0x91d40000, + 0x00000008, 0x06005555, + 0x00000018, 0x8000ff0d, + 0x0000000c, 0x29800001, + 0x0000000c, 0x1f800001, + 0x00000008, 0x2a000007, + 0x00000008, 0x05005555, + 0x00000018, 0x8000fe71, + 0x00000008, 0x03050004, + 0x00000006, 0x83040c00, + 0x00000008, 0x02850200, + 0x00000000, 0x86050c00, + 0x00000001, 0x860c0e00, + 0x00000008, 0x02040004, + 0x00000000, 0x02041800, + 0x00000000, 0x83871800, + 0x00000018, 0x00020000, +}; + +u32 bce_xi_rv2p_proc2[] = { + 0x00000010, 0xb1800004, + 0x0000001f, 0x05021000, + 0x00000008, 0x050000ff, + 0x00000018, 0x00020000, + 0x00000000, 0x2a000000, + 0x00000010, 0xb1d40000, + 0x00000008, 0x02540007, + 0x00000018, 0x00040000, + 0x00000018, 0x8000000f, + 0x00000018, 0x80000010, + 0x00000018, 0x8000003b, + 0x00000018, 0x800000f8, + 0x00000018, 0x8000010d, + 0x00000018, 0x8000013a, + 0x00000018, 0x800000f7, + 0x00000018, 0x800001fb, + 0x00000018, 0x800001f2, + 0x00000018, 0x800000fa, + 0x00000018, 0x8000000c, + 0x00000018, 0x800001f7, + 0x00000018, 0x8000024a, + 0x00000018, 0x8000006b, + 0x00000018, 0x800000df, + 0x00000000, 0x2a000000, + 0x00000018, 0x8000ffed, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ffe8, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000018, 0x8000ffe5, + 0x00000018, 0x00020000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963421, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d000006, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d610000, + 0x00000018, 0x000a0000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963416, + 0x00000010, 0x205f0000, + 0x00000000, 0x09d80000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c80010e, + 0x00000008, 0x2d00000a, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d620000, + 0x00000000, 0x2c130000, + 0x00000018, 0x000a0000, + 0x00000000, 0x05020000, + 0x00000010, 0x91963409, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c800006, + 0x00000008, 0x2d00006a, + 0x00000008, 0x2d800102, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x0d7a0000, + 0x00000018, 0x000a0000, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000010, 0x001f0000, + 0x00000000, 0x2f80aa00, + 0x00000000, 0x2a000000, + 0x00000000, 0x0d610000, + 0x00000000, 0x03620000, + 0x00000000, 0x2c400000, + 0x00000000, 0x02638c00, + 0x00000000, 0x26460000, + 0x00000008, 0x02040012, + 0x00000010, 0xb9060829, + 0x00000000, 0x0f580000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0b800000, + 0x00000008, 0x0cc60012, + 0x00000018, 0x8000ffca, + 0x00000008, 0x0f800003, + 0x00000000, 0x00000000, + 0x00000010, 0x009f0000, + 0x00000008, 0x27110012, + 0x00000000, 0x66900000, + 0x00000008, 0xa31b0012, + 0x00000010, 0xb1980003, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800004, + 0x00000008, 0x22000003, + 0x00000008, 0x2c80000c, + 0x00000008, 0x2d00000c, + 0x00000010, 0x009f0000, + 0x00000000, 0x25960000, + 0x00000010, 0x03520002, + 0x0000000c, 0x69520006, + 0x0000000c, 0x29800000, + 0x00000000, 0x06660000, + 0x00000000, 0x86611800, + 0x00000009, 0x0260000f, + 0x0000000f, 0x02040002, + 0x00000010, 0xb60c0803, + 0x0000000c, 0x1fbf0000, + 0x0000000c, 0x33660010, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000005, 0x73662c00, + 0x00000000, 0x31e32e00, + 0x00000008, 0x2d800010, + 0x00000010, 0x20530000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000ff8d, + 0x00000000, 0x23000000, + 0x00000009, 0x25e6ffff, + 0x00000008, 0x2200000b, + 0x0000000c, 0x69520000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff86, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000010, 0x001f0000, + 0x00000000, 0x2f80aa00, + 0x00000000, 0x2a000000, + 0x00000000, 0x2c400000, + 0x00000008, 0x2c800040, + 0x00000008, 0x2d000020, + 0x00000008, 0x2d80011c, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x0000000f, 0x42ea0010, + 0x00000010, 0x004f0004, + 0x00000010, 0xb7469200, + 0x00000008, 0x02490012, + 0x00000010, 0xb5840a00, + 0x00000000, 0x0d610000, + 0x00000010, 0xba66345a, + 0x00000000, 0x03620000, + 0x00000010, 0xb8630c58, + 0x00000008, 0x83050012, + 0x00000010, 0x004f0002, + 0x00000000, 0x03490000, + 0x00000001, 0x83068c00, + 0x00000000, 0x83c60c00, + 0x00000010, 0xb1870010, + 0x00000000, 0x0b6e0000, + 0x00000018, 0x8000ff67, + 0x00000001, 0x06691400, + 0x00000010, 0x918c0002, + 0x00000008, 0xb4e90001, + 0x00000010, 0xb1e92c4c, + 0x00000000, 0x86692c00, + 0x00000000, 0x02000000, + 0x00000009, 0x02eaffff, + 0x00000010, 0x000c0002, + 0x00000000, 0x02040a00, + 0x0000000f, 0x460c0001, + 0x0000000f, 0x02850001, + 0x00000010, 0x918c01fc, + 0x00000010, 0xb7040e43, + 0x00000000, 0x2c400000, + 0x00000000, 0x0f400000, + 0x00000000, 0x0d610000, + 0x00000000, 0x0a640000, + 0x00000000, 0x0ae50000, + 0x00000009, 0x0b66ffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0b800000, + 0x00000008, 0x0c860012, + 0x00000008, 0x0f800003, + 0x0000000c, 0x29520000, + 0x00000010, 0x009f0000, + 0x00000008, 0x27110012, + 0x00000000, 0x66900000, + 0x00000000, 0x26460000, + 0x00000000, 0x23060000, + 0x00000010, 0xb1980005, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800004, + 0x00000000, 0x00000000, + 0x00000010, 0x001f0000, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000000, 0x31e32e00, + 0x00000005, 0x73662c00, + 0x00000000, 0x25960000, + 0x00000010, 0xb1870016, + 0x0000000c, 0x29800000, + 0x0000000f, 0x0f6b0007, + 0x00000000, 0x0d690000, + 0x00000000, 0x0a6c0000, + 0x00000000, 0x0aed0000, + 0x00000000, 0x0b6e0000, + 0x00000000, 0x0b800000, + 0x00000000, 0x0c870000, + 0x0000000c, 0x69520001, + 0x00000008, 0x0f800003, + 0x00000010, 0x20530000, + 0x00000010, 0x001f0000, + 0x00000000, 0x22c58c00, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110000, + 0x00000000, 0x26900000, + 0x00000010, 0xb8170e03, + 0x0000000c, 0x29800000, + 0x00000018, 0x8000fff7, + 0x00000010, 0xb1980002, + 0x00000008, 0x0f800004, + 0x00000008, 0x2200001a, + 0x00000008, 0x2c80000c, + 0x00000008, 0x2d00000c, + 0x00000008, 0x2d800010, + 0x00000010, 0x001f0000, + 0x00000000, 0x0d6e0000, + 0x00000003, 0xe7cf3400, + 0x0000000c, 0x29800000, + 0x00000010, 0x91de0000, + 0x00000010, 0xb1870007, + 0x00000000, 0x36140000, + 0x00000000, 0x36950000, + 0x00000000, 0x37160000, + 0x00000008, 0x2c800050, + 0x00000008, 0x2d000030, + 0x00000008, 0x2d80000c, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff1b, + 0x00000000, 0x26460000, + 0x00000000, 0x23000000, + 0x00000009, 0x25e6ffff, + 0x00000000, 0x0b6e0000, + 0x00000003, 0xe7cf2c00, + 0x00000008, 0x2200001b, + 0x0000000c, 0x69520000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000ff11, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x00000010, 0x003f000b, + 0x00000000, 0x06660000, + 0x00000000, 0x86611800, + 0x00000009, 0x026000f0, + 0x00000010, 0xb70c0807, + 0x0000000c, 0x73660010, + 0x00000008, 0x2c800018, + 0x00000008, 0x2d000018, + 0x00000008, 0x2d800002, + 0x0000000c, 0x5fbf0000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000ff03, + 0x0000000c, 0x29800001, + 0x00000018, 0x8000ff01, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000010, 0x001f0000, + 0x00000000, 0x0f008000, + 0x00000008, 0x0f800007, + 0x00000018, 0x800000fd, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x00000009, 0x0261ffff, + 0x0000000d, 0x70e10001, + 0x00000018, 0x800000e2, + 0x00000000, 0x2c400000, + 0x00000008, 0x2c800120, + 0x00000008, 0x2d00001c, + 0x00000008, 0x2d800001, + 0x00000005, 0x70e10800, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000feed, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x02700000, + 0x00000000, 0x0d620000, + 0x00000000, 0xbb630800, + 0x00000000, 0x2a000000, + 0x00000000, 0x0f400000, + 0x00000000, 0x2c400000, + 0x0000000c, 0x73e7001b, + 0x00000010, 0x0ce70013, + 0x00000000, 0x286d0000, + 0x0000000f, 0x65ed0010, + 0x00000009, 0x266dffff, + 0x00000018, 0x8000003e, + 0x00000008, 0x02000004, + 0x00000010, 0x91c40803, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x800000c6, + 0x00000008, 0x2c800114, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d80002c, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800140, + 0x00000008, 0x2d00003c, + 0x00000008, 0x2d80001c, + 0x00000018, 0x80000005, + 0x00000008, 0x2c800120, + 0x00000008, 0x2d00001c, + 0x00000008, 0x2d800001, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c8000b8, + 0x00000008, 0x2d000068, + 0x00000008, 0x2d800104, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000000, 0x27f60000, + 0x00000010, 0xb87a9e04, + 0x00000008, 0x2200000d, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000febf, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x02700000, + 0x00000000, 0x0d620000, + 0x00000000, 0xbb630800, + 0x00000000, 0x2a000000, + 0x00000010, 0x0e670016, + 0x00000000, 0x286d0000, + 0x0000000f, 0x65ed0010, + 0x00000009, 0x266dffff, + 0x00000004, 0xb8f1a000, + 0x00000000, 0x0f400000, + 0x0000000c, 0x73e7001c, + 0x00000018, 0x80000010, + 0x00000008, 0x02000004, + 0x00000010, 0x91c40802, + 0x0000000c, 0x29800000, + 0x00000000, 0x2c1e0000, + 0x00000008, 0x2c800114, + 0x00000008, 0x2d000010, + 0x00000008, 0x2d80002c, + 0x00000000, 0x00000000, + 0x00000010, 0x205f0000, + 0x00000008, 0x2c800140, + 0x00000008, 0x2d00003c, + 0x00000008, 0x2d80001c, + 0x00000010, 0x20530000, + 0x00000010, 0x91de0000, + 0x00000018, 0x8000fea0, + 0x00000000, 0x06820000, + 0x00000010, 0x001f0000, + 0x00000010, 0x0ce7002f, + 0x00000000, 0x03720000, + 0x00000000, 0x0cf60000, + 0x00000003, 0x8ced3200, + 0x00000000, 0xa8190c00, + 0x00000010, 0xb872322a, + 0x00000000, 0x03ca0000, + 0x0000000f, 0x65680010, + 0x00000000, 0x0bcf0000, + 0x00000000, 0x27f20000, + 0x00000000, 0x08510000, + 0x00000000, 0x28ed0000, + 0x00000004, 0xb9723200, + 0x00000000, 0x03720000, + 0x00000003, 0xbbf60c00, + 0x00000000, 0x03440000, + 0x00000008, 0x22000010, + 0x00000010, 0xb7ef3204, + 0x0000000c, 0x21420004, + 0x0000000c, 0x73e70019, + 0x00000000, 0x3bf60000, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000000, 0x22060000, + 0x0000000c, 0x61420004, + 0x00000000, 0x25070000, + 0x00000000, 0x27970000, + 0x00000000, 0x28940000, + 0x00000000, 0x290e0000, + 0x00000010, 0x0ce70010, + 0x00000010, 0xb873320f, + 0x0000000f, 0x436c0010, + 0x00000000, 0x03f30c00, + 0x00000000, 0x03f30000, + 0x00000000, 0x83990e00, + 0x00000001, 0x83860e00, + 0x00000000, 0x83060e00, + 0x00000003, 0xf66c0c00, + 0x00000000, 0x39f30e00, + 0x00000000, 0x3af50e00, + 0x00000000, 0x7a740000, + 0x0000000f, 0x43680010, + 0x00000001, 0x83860e00, + 0x00000000, 0x83060e00, + 0x00000003, 0xf4680c00, + 0x00000000, 0x286d0000, + 0x00000010, 0xb1e9a05a, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c58, + 0x00000000, 0x0a6a0000, + 0x00000000, 0x0aeb0000, + 0x00000009, 0x0b6cffff, + 0x00000000, 0x0c000000, + 0x00000000, 0x0be90000, + 0x00000003, 0x8cf6a000, + 0x0000000c, 0x09800002, + 0x00000010, 0x009f0000, + 0x00000010, 0xb817320a, + 0x00000000, 0x35140000, + 0x00000000, 0x35950000, + 0x00000005, 0x766c2c00, + 0x00000000, 0x34970000, + 0x00000004, 0xb8f12e00, + 0x00000010, 0x001f0000, + 0x00000018, 0x8000fe83, + 0x00000008, 0x0f800004, + 0x00000018, 0x8000fff6, + 0x00000000, 0x03e90000, + 0x00000010, 0xb8f6a01b, + 0x00000010, 0x2013001a, + 0x00000010, 0xb1f10e19, + 0x00000000, 0x83973200, + 0x00000000, 0x38700e00, + 0x00000000, 0xbb760e00, + 0x00000000, 0x3bf60000, + 0x00000000, 0x37d00000, + 0x0000000c, 0x73e7001a, + 0x00000003, 0xb8f1a000, + 0x00000000, 0x32140000, + 0x00000000, 0x32950000, + 0x00000005, 0x73e72c00, + 0x00000000, 0x33190000, + 0x00000005, 0x74680000, + 0x00000010, 0x0ce7000d, + 0x00000008, 0x22000009, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x73e70019, + 0x0000000f, 0x65680010, + 0x0000000c, 0x21420004, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x61420004, + 0x00000000, 0x290e0000, + 0x00000018, 0x80000002, + 0x00000010, 0x91973206, + 0x00000000, 0x35140000, + 0x00000000, 0x35950000, + 0x00000005, 0x766c2c00, + 0x00000000, 0x34990000, + 0x00000004, 0xb8f13200, + 0x00000000, 0x83690c00, + 0x00000010, 0xb1860015, + 0x00000000, 0x28e90000, + 0x00000008, 0x22000004, + 0x00000009, 0x2470ffff, + 0x0000000f, 0x65700010, + 0x00000000, 0x23ec0000, + 0x00000000, 0x03690000, + 0x00000010, 0xb8660c07, + 0x00000009, 0x036cffff, + 0x00000000, 0x326a0000, + 0x00000000, 0x32eb0000, + 0x00000005, 0x73e70c00, + 0x00000000, 0x33690000, + 0x00000005, 0x74680000, + 0x0000000c, 0x73e7001c, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c12, + 0x00000010, 0xb1d00c11, + 0x0000000c, 0x21420005, + 0x0000000c, 0x33e7001c, + 0x00000018, 0x8000000e, + 0x00000010, 0x2e67000d, + 0x00000000, 0x03690000, + 0x00000010, 0xb1f60c0b, + 0x00000010, 0xb1d00c0a, + 0x00000000, 0x03440000, + 0x00000008, 0x2200000c, + 0x00000000, 0x07520000, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x0000000c, 0x33e7001c, + 0x00000010, 0x20530000, + 0x00000000, 0x22060000, + 0x00000000, 0x290e0000, + 0x00000018, 0x000d0000, + 0x00000000, 0x06820000, + 0x00000010, 0x2de7000d, + 0x00000010, 0x0ce7000c, + 0x00000000, 0x27f20000, + 0x00000010, 0xb96d9e0a, + 0x00000000, 0xa86d9e00, + 0x00000009, 0x0361ffff, + 0x00000010, 0xb7500c07, + 0x00000008, 0x2200000f, + 0x0000000f, 0x65680010, + 0x00000000, 0x29000000, + 0x0000000c, 0x29800000, + 0x0000000c, 0x33e7001b, + 0x00000010, 0x20530000, + 0x00000018, 0x000d0000, + 0x0000000c, 0x29800001, + 0x00000000, 0x2a000000, + 0x00000010, 0x001f0000, + 0x0000000f, 0x0f470007, + 0x00000008, 0x0f800008, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000fdfc, + 0x0000000c, 0x29800001, + 0x00000010, 0x91de0000, + 0x00000000, 0x2fd50000, + 0x00000010, 0x001f0000, + 0x00000000, 0x33510000, + 0x00000000, 0x2a000000, + 0x00000010, 0xb1c60023, + 0x0000000f, 0x0f500007, + 0x00000000, 0x0a600000, + 0x00000000, 0x0ae10000, + 0x0000000f, 0x4b620008, + 0x00000009, 0x0b1600ff, + 0x0000000f, 0x4c620010, + 0x00000000, 0x0d620000, + 0x00000009, 0x0d1a00ff, + 0x00000010, 0x07500003, + 0x0000000c, 0x0d1a0008, + 0x0000000c, 0x0b160008, + 0x00000000, 0x0cc60000, + 0x00000000, 0x0b800000, + 0x00000000, 0x06980000, + 0x00000008, 0x0f800003, + 0x00000010, 0x06c20004, + 0x0000000c, 0x29000002, + 0x00000010, 0x26420002, + 0x0000000c, 0x29520003, + 0x00000008, 0x22000001, + 0x00000010, 0x009f0000, + 0x00000000, 0x231b0000, + 0x00000000, 0x27111a00, + 0x00000000, 0x66900000, + 0x0000000c, 0x29520000, + 0x00000010, 0xb1973209, + 0x0000000c, 0x29800000, + 0x00000000, 0x06980000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520003, + 0x00000000, 0x22c58c00, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800003, + 0x00000018, 0x8000fff3, + 0x00000010, 0xb1c80013, + 0x00000010, 0xb1c60003, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520000, + 0x0000000c, 0x29520003, + 0x00000010, 0x06c20002, + 0x0000000c, 0x29520002, + 0x00000000, 0x22c58c00, + 0x00000000, 0x27650000, + 0x00000000, 0x26e40000, + 0x00000008, 0x22000016, + 0x00000010, 0xb1c60003, + 0x00000000, 0x23480000, + 0x00000010, 0xb1800005, + 0x00000000, 0x23480000, + 0x0000000c, 0x29800000, + 0x0000000f, 0x0f500007, + 0x00000018, 0x80000012, + 0x00000008, 0x22000016, + 0x0000000c, 0x29800000, + 0x00000000, 0x30140000, + 0x00000000, 0x30950000, + 0x00000010, 0x07500003, + 0x00000009, 0x0b1600ff, + 0x00000009, 0x0d1a00ff, + 0x0000000f, 0x31160008, + 0x00000000, 0x31623400, + 0x00000003, 0xf1623000, + 0x00000010, 0x205f0000, + 0x00000000, 0x2c510000, + 0x00000009, 0x2cd1007f, + 0x00000008, 0x2cd90000, + 0x00000008, 0x2d000000, + 0x00000008, 0x2d80000c, + 0x00000000, 0x00000000, + 0x00000010, 0x91de0000, + 0x00000010, 0x05c20003, + 0x00000000, 0x33000000, + 0x00000008, 0x0f800007, + 0x00000010, 0x20530000, + 0x00000010, 0x009f0000, + 0x00000018, 0x8000fda8, + 0x0000000c, 0x29800001, + 0x00000000, 0x2fd50000, + 0x00000000, 0x2a000000, + 0x0000000f, 0x0f500007, + 0x00000010, 0xb1c6002d, + 0x0000000f, 0x47420008, + 0x00000009, 0x070e000f, + 0x00000008, 0x070e0008, + 0x00000010, 0x001f0000, + 0x00000008, 0x09000001, + 0x00000007, 0x09121c00, + 0x00000003, 0xcbca9200, + 0x00000000, 0x0b97a200, + 0x00000007, 0x42171c00, + 0x00000000, 0x0b040000, + 0x0000000f, 0x0a840003, + 0x00000000, 0x0a959c00, + 0x00000000, 0x4a009a00, + 0x00000008, 0x82120001, + 0x00000001, 0x0c170800, + 0x00000000, 0x0c978c00, + 0x00000000, 0x02180000, + 0x00000008, 0x0d00ffff, + 0x00000008, 0x0f800006, + 0x0000000c, 0x29000000, + 0x00000010, 0x06c20004, + 0x0000000c, 0x29520002, + 0x00000010, 0x26420002, + 0x0000000c, 0x29520003, + 0x00000008, 0x22000001, + 0x00000010, 0x009f0000, + 0x00000010, 0xb197320c, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110800, + 0x00000000, 0x66900000, + 0x0000000c, 0x29800000, + 0x00000000, 0x02180000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520003, + 0x00000000, 0x22c53600, + 0x00000010, 0x001f0000, + 0x00000008, 0x0f800006, + 0x00000018, 0x8000fff4, + 0x00000000, 0x231b0000, + 0x00000000, 0x27110800, + 0x00000000, 0x66900000, + 0x00000010, 0xb1c8000b, + 0x0000000c, 0x29800000, + 0x00000010, 0x20530000, + 0x0000000c, 0x29520000, + 0x0000000c, 0x29520003, + 0x00000010, 0x06c20002, + 0x0000000c, 0x29520002, + 0x00000000, 0x22c58c00, + 0x00000000, 0x27650000, + 0x00000000, 0x26e40000, + 0x00000000, 0x23480000, + 0x00000008, 0x22000017, + 0x0000000c, 0x29800000, + 0x00000010, 0x001f0000, + 0x00000010, 0x20530000, + 0x00000018, 0x8000fd6a, +}; + + +/* + * The RV2P block must be configured for the system + * page size, or more specifically, the number of + * usable rx_bd's per page, and should be called + * as follows prior to loading the RV2P firmware: + * + * BCE_RV2P_PROC2_CHG_MAX_BD_PAGE(USABLE_RX_BD_PER_PAGE) + * + * The default value is 0xFF. + */ +#define BCE_RV2P_PROC2_MAX_BD_PAGE_LOC 5 +#define BCE_RV2P_PROC2_CHG_MAX_BD_PAGE(value) { \ + bce_rv2p_proc2[BCE_RV2P_PROC2_MAX_BD_PAGE_LOC] = \ + (bce_rv2p_proc2[BCE_RV2P_PROC2_MAX_BD_PAGE_LOC] & ~0xFFFF) | (value);\ +} + + + Index: dev/bce/if_bcereg.h =================================================================== --- dev/bce/if_bcereg.h (revision 184569) +++ dev/bce/if_bcereg.h (working copy) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2006-2007 Broadcom Corporation + * Copyright (c) 2006-2008 Broadcom Corporation * David Christensen . All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -97,9 +97,201 @@ #define __LITTLE_ENDIAN 1 #endif +#define BCE_DWORD_PRINTFB \ + "\020" \ + "\40b31" \ + "\37b30" \ + "\36b29" \ + "\35b28" \ + "\34b27" \ + "\33b26" \ + "\32b25" \ + "\31b24" \ + "\30b23" \ + "\27b22" \ + "\26b21" \ + "\25b20" \ + "\24b19" \ + "\23b18" \ + "\22b17" \ + "\21b16" \ + "\20b15" \ + "\17b14" \ + "\16b13" \ + "\15b12" \ + "\14b11" \ + "\13b10" \ + "\12b9" \ + "\11b8" \ + "\10b7" \ + "\07b6" \ + "\06b5" \ + "\05b4" \ + "\04b3" \ + "\03b2" \ + "\02b1" \ + "\01b0" + +/* MII Control Register 0x0 */ +#define BCE_BMCR_PRINTFB \ + "\020" \ + "\20Reset" \ + "\17Loopback" \ + "\16Spd0" \ + "\15AnegEna" \ + "\14PwrDn" \ + "\13Isolate" \ + "\12RstrtAneg" \ + "\11FD" \ + "\10CollTst" \ + "\07Spd1" \ + "\06Rsrvd" \ + "\05Rsrvd" \ + "\04Rsrvd" \ + "\03Rsrvd" \ + "\02Rsrvd" \ + "\01Rsrvd" + +/* MII Status Register 0x1 */ +#define BCE_BMSR_PRINTFB \ + "\020" \ + "\20Cap100T4" \ + "\17Cap100XFD" \ + "\16Cap100XHD" \ + "\15Cap10FD" \ + "\14Cap10HD" \ + "\13Cap100T2FD" \ + "\12Cap100T2HD" \ + "\11ExtStsPrsnt" \ + "\10Rsrvd" \ + "\07PrmblSupp" \ + "\06AnegCmpl" \ + "\05RemFaultDet" \ + "\04AnegCap" \ + "\03LnkUp" \ + "\02JabberDet" \ + "\01ExtCapSupp" + +/* MII Autoneg Advertisement Register 0x4 */ +#define BCE_ANAR_PRINTFB \ + "\020" \ + "\20AdvNxtPg" \ + "\17Rsrvd" \ + "\16AdvRemFault" \ + "\15Rsrvd" \ + "\14AdvAsymPause" \ + "\13AdvPause" \ + "\12Adv100T4" \ + "\11Adv100FD" \ + "\10Adv100HD" \ + "\07Adv10FD" \ + "\06Adv10HD" \ + "\05Rsrvd" \ + "\04Rsrvd" \ + "\03Rsrvd" \ + "\02Rsrvd" \ + "\01Adv802.3" + +/* MII Autoneg Link Partner Ability Register 0x5 */ +#define BCE_ANLPAR_PRINTFB \ + "\020" \ + "\20CapNxtPg" \ + "\17Ack" \ + "\16CapRemFault" \ + "\15Rsrvd" \ + "\14CapAsymPause" \ + "\13CapPause" \ + "\12Cap100T4" \ + "\11Cap100FD" \ + "\10Cap100HD" \ + "\07Cap10FD" \ + "\06Cap10HD" \ + "\05Rsrvd" \ + "\04Rsrvd" \ + "\03Rsrvd" \ + "\02Rsrvd" \ + "\01Cap802.3" + +/* 1000Base-T Control Register 0x09 */ +#define BCE_1000CTL_PRINTFB \ + "\020" \ + "\20Test3" \ + "\17Test2" \ + "\16Test1" \ + "\15MasterSlave" \ + "\14ForceMaster" \ + "\13SwitchDev" \ + "\12Adv1000TFD" \ + "\11Adv1000THD" \ + "\10Rsrvd" \ + "\07Rsrvd" \ + "\06Rsrvd" \ + "\05Rsrvd" \ + "\04Rsrvd" \ + "\03Rsrvd" \ + "\02Rsrvd" \ + "\01Rsrvd" + +/* MII 1000Base-T Status Register 0x0a */ +#define BCE_1000STS_PRINTFB \ + "\020" \ + "\20MstrSlvFault" \ + "\17Master" \ + "\16LclRcvrOk" \ + "\15RemRcvrOk" \ + "\14Cap1000FD" \ + "\13Cpa1000HD" \ + "\12Rsrvd" \ + "\11Rsrvd" + +/* MII Extended Status Register 0x0f */ +#define BCE_EXTSTS_PRINTFB \ + "\020" \ + "\20b15" \ + "\17b14" \ + "\16b13" \ + "\15b12" \ + "\14Rsrvd" \ + "\13Rsrvd" \ + "\12Rsrvd" \ + "\11Rsrvd" \ + "\10Rsrvd" \ + "\07Rsrvd" \ + "\06Rsrvd" \ + "\05Rsrvd" \ + "\04Rsrvd" \ + "\03Rsrvd" \ + "\02Rsrvd" \ + "\01Rsrvd" + +/* MII Autoneg Link Partner Ability Register 0x19 */ +#define BCE_AUXSTS_PRINTFB \ + "\020" \ + "\20AnegCmpl" \ + "\17AnegCmplAck" \ + "\16AnegAckDet" \ + "\15AnegAblDet" \ + "\14AnegNextPgWait" \ + "\13HCD" \ + "\12HCD" \ + "\11HCD" \ + "\10PrlDetFault" \ + "\07RemFault" \ + "\06PgRcvd" \ + "\05LnkPrtnrAnegAbl" \ + "\04LnkPrtnrNPAbl" \ + "\03LnkUp" \ + "\02EnaPauseRcv" \ + "\01EnaPausXmit" + +/* Remove before release. */ +/* #define BCE_DEBUG 1 */ +/* #define BCE_NVRAM_WRITE_SUPPORT */ + /****************************************************************************/ /* Debugging macros and definitions. */ /****************************************************************************/ + #define BCE_CP_LOAD 0x00000001 #define BCE_CP_SEND 0x00000002 #define BCE_CP_RECV 0x00000004 @@ -109,6 +301,8 @@ #define BCE_CP_PHY 0x00000040 #define BCE_CP_NVRAM 0x00000080 #define BCE_CP_FIRMWARE 0x00000100 +#define BCE_CP_CTX 0x00000200 +#define BCE_CP_REG 0x00000400 #define BCE_CP_MISC 0x00400000 #define BCE_CP_SPECIAL 0x00800000 #define BCE_CP_ALL 0x00FFFFFF @@ -119,70 +313,95 @@ #define BCE_LEVEL_WARN 0x01000000 #define BCE_LEVEL_INFO 0x02000000 #define BCE_LEVEL_VERBOSE 0x03000000 -#define BCE_LEVEL_EXCESSIVE 0x04000000 +#define BCE_LEVEL_EXTREME 0x04000000 +#define BCE_LEVEL_INSANE 0x05000000 #define BCE_LEVEL_MASK 0xFF000000 #define BCE_WARN_LOAD (BCE_CP_LOAD | BCE_LEVEL_WARN) #define BCE_INFO_LOAD (BCE_CP_LOAD | BCE_LEVEL_INFO) #define BCE_VERBOSE_LOAD (BCE_CP_LOAD | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_LOAD (BCE_CP_LOAD | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_LOAD (BCE_CP_LOAD | BCE_LEVEL_EXTREME) +#define BCE_INSANE_LOAD (BCE_CP_LOAD | BCE_LEVEL_INSANE) #define BCE_WARN_SEND (BCE_CP_SEND | BCE_LEVEL_WARN) #define BCE_INFO_SEND (BCE_CP_SEND | BCE_LEVEL_INFO) #define BCE_VERBOSE_SEND (BCE_CP_SEND | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_SEND (BCE_CP_SEND | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_SEND (BCE_CP_SEND | BCE_LEVEL_EXTREME) +#define BCE_INSANE_SEND (BCE_CP_SEND | BCE_LEVEL_INSANE) #define BCE_WARN_RECV (BCE_CP_RECV | BCE_LEVEL_WARN) #define BCE_INFO_RECV (BCE_CP_RECV | BCE_LEVEL_INFO) #define BCE_VERBOSE_RECV (BCE_CP_RECV | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_RECV (BCE_CP_RECV | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_RECV (BCE_CP_RECV | BCE_LEVEL_EXTREME) +#define BCE_INSANE_RECV (BCE_CP_RECV | BCE_LEVEL_INSANE) #define BCE_WARN_INTR (BCE_CP_INTR | BCE_LEVEL_WARN) #define BCE_INFO_INTR (BCE_CP_INTR | BCE_LEVEL_INFO) #define BCE_VERBOSE_INTR (BCE_CP_INTR | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_INTR (BCE_CP_INTR | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_INTR (BCE_CP_INTR | BCE_LEVEL_EXTREME) +#define BCE_INSANE_INTR (BCE_CP_INTR | BCE_LEVEL_INSANE) #define BCE_WARN_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_WARN) #define BCE_INFO_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_INFO) #define BCE_VERBOSE_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_EXTREME) +#define BCE_INSANE_UNLOAD (BCE_CP_UNLOAD | BCE_LEVEL_INSANE) #define BCE_WARN_RESET (BCE_CP_RESET | BCE_LEVEL_WARN) #define BCE_INFO_RESET (BCE_CP_RESET | BCE_LEVEL_INFO) #define BCE_VERBOSE_RESET (BCE_CP_RESET | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_RESET (BCE_CP_RESET | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_RESET (BCE_CP_RESET | BCE_LEVEL_EXTREME) +#define BCE_INSANE_RESET (BCE_CP_RESET | BCE_LEVEL_INSANE) #define BCE_WARN_PHY (BCE_CP_PHY | BCE_LEVEL_WARN) #define BCE_INFO_PHY (BCE_CP_PHY | BCE_LEVEL_INFO) #define BCE_VERBOSE_PHY (BCE_CP_PHY | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_PHY (BCE_CP_PHY | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_PHY (BCE_CP_PHY | BCE_LEVEL_EXTREME) +#define BCE_INSANE_PHY (BCE_CP_PHY | BCE_LEVEL_INSANE) #define BCE_WARN_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_WARN) #define BCE_INFO_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_INFO) #define BCE_VERBOSE_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_EXTREME) +#define BCE_INSANE_NVRAM (BCE_CP_NVRAM | BCE_LEVEL_INSANE) #define BCE_WARN_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_WARN) #define BCE_INFO_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_INFO) -#define BCE_VERBOSE_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_EXCESSIVE) +#define BCE_VERBOSE_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_VERBOSE) +#define BCE_EXTREME_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_EXTREME) +#define BCE_INSANE_FIRMWARE (BCE_CP_FIRMWARE | BCE_LEVEL_INSANE) +#define BCE_WARN_CTX (BCE_CP_CTX | BCE_LEVEL_WARN) +#define BCE_INFO_CTX (BCE_CP_CTX | BCE_LEVEL_INFO) +#define BCE_VERBOSE_CTX (BCE_CP_CTX | BCE_LEVEL_VERBOSE) +#define BCE_EXTREME_CTX (BCE_CP_CTX | BCE_LEVEL_EXTREME) +#define BCE_INSANE_CTX (BCE_CP_CTX | BCE_LEVEL_INSANE) + +#define BCE_WARN_REG (BCE_CP_REG | BCE_LEVEL_WARN) +#define BCE_INFO_REG (BCE_CP_REG | BCE_LEVEL_INFO) +#define BCE_VERBOSE_REG (BCE_CP_REG | BCE_LEVEL_VERBOSE) +#define BCE_EXTREME_REG (BCE_CP_REG | BCE_LEVEL_EXTREME) +#define BCE_INSANE_REG (BCE_CP_REG | BCE_LEVEL_INSANE) + #define BCE_WARN_MISC (BCE_CP_MISC | BCE_LEVEL_WARN) #define BCE_INFO_MISC (BCE_CP_MISC | BCE_LEVEL_INFO) #define BCE_VERBOSE_MISC (BCE_CP_MISC | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_MISC (BCE_CP_MISC | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_MISC (BCE_CP_MISC | BCE_LEVEL_EXTREME) +#define BCE_INSANE_MISC (BCE_CP_MISC | BCE_LEVEL_INSANE) #define BCE_WARN_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_WARN) #define BCE_INFO_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_INFO) #define BCE_VERBOSE_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_EXTREME) +#define BCE_INSANE_SPECIAL (BCE_CP_SPECIAL | BCE_LEVEL_INSANE) #define BCE_FATAL (BCE_CP_ALL | BCE_LEVEL_FATAL) #define BCE_WARN (BCE_CP_ALL | BCE_LEVEL_WARN) #define BCE_INFO (BCE_CP_ALL | BCE_LEVEL_INFO) #define BCE_VERBOSE (BCE_CP_ALL | BCE_LEVEL_VERBOSE) -#define BCE_EXCESSIVE (BCE_CP_ALL | BCE_LEVEL_EXCESSIVE) +#define BCE_EXTREME (BCE_CP_ALL | BCE_LEVEL_EXTREME) +#define BCE_INSANE (BCE_CP_ALL | BCE_LEVEL_INSANE) #define BCE_CODE_PATH(cp) ((cp & BCE_CP_MASK) & bce_debug) #define BCE_MSG_LEVEL(lv) ((lv & BCE_LEVEL_MASK) <= (bce_debug & BCE_LEVEL_MASK)) @@ -190,36 +409,80 @@ #ifdef BCE_DEBUG +/* + * Calculate the time delta between two reads + * of the 25MHz free running clock. + */ +#define BCE_TIME_DELTA(start, end) (start > end ? (start - end) : \ + (~start + end + 1)) + /* Print a message based on the logging level and code path. */ #define DBPRINT(sc, level, format, args...) \ if (BCE_LOG_MSG(level)) { \ device_printf(sc->bce_dev, format, ## args); \ } +/* Runs a particular command when debugging is enabled. */ +#define DBRUN(args...) \ + do { \ + args; \ + } while (0) + /* Runs a particular command based on the logging level and code path. */ -#define DBRUN(m, args...) \ - if (BCE_LOG_MSG(m)) { \ - args; \ +#define DBRUNMSG(msg, args...) \ + if (BCE_LOG_MSG(msg)) { \ + args; \ } /* Runs a particular command based on the logging level. */ #define DBRUNLV(level, args...) \ if (BCE_MSG_LEVEL(level)) { \ - args; \ + args; \ } /* Runs a particular command based on the code path. */ -#define DBRUNCP(cp, args...) \ - if (BCE_CODE_PATH(cp)) { \ - args; \ +#define DBRUNCP(cp, args...) \ + if (BCE_CODE_PATH(cp)) { \ + args; \ } /* Runs a particular command based on a condition. */ -#define DBRUNIF(cond, args...) \ - if (cond) { \ - args; \ +#define DBRUNIF(cond, args...) \ + if (cond) { \ + args; \ } +/* Announces function entry. */ +#if 0 +#define DBENTER(cond) \ + u32 start_time = REG_RD(sc, BCE_TIMER_25MHZ_FREE_RUN); \ + u32 end_time; \ + DBPRINT(sc, (cond), "%s(enter)\n", __FUNCTION__); +#endif + +#define DBENTER(cond) \ + DBPRINT(sc, (cond), "%s(enter)\n", __FUNCTION__) + +/* Announces function exit. */ +#if 0 +#define DBEXIT(cond, val) \ + end_time = REG_RD(sc, BCE_TIMER_25MHZ_FREE_RUN); \ + val += (u64) BCE_TIME_DELTA(start_time, end_time); \ + DBPRINT(sc, (cond), "%s(exit)\n", __FUNCTION__); +#endif + +#define DBEXIT(cond) \ + DBPRINT(sc, (cond), "%s(exit)\n", __FUNCTION__) + +/* Temporarily override the debug level. */ +#define DBPUSH(cond) \ + u32 bce_debug_temp = bce_debug; \ + bce_debug |= cond; + +/* Restore the previously overriden debug level. */ +#define DBPOP() \ + bce_debug = bce_debug_temp; + /* Needed for random() function which is only used in debugging. */ #include @@ -233,22 +496,76 @@ #define DB_OR_RANDOMTRUE(defects) || (random() < defects) #define DB_AND_RANDOMTRUE(defects) && (random() < defects) +#define DB_PRINT_PHY_REG(reg, val) \ + switch(reg) { \ + case 0x00: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (BMCR ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_BMCR_PRINTFB); break; \ + case 0x01: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (BMSR ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_BMSR_PRINTFB); break; \ + case 0x04: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (ANAR ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_ANAR_PRINTFB); break; \ + case 0x05: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (ANLPAR ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_ANLPAR_PRINTFB); break; \ + case 0x09: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (1000CTL), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_1000CTL_PRINTFB); break; \ + case 0x0a: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (1000STS), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_1000STS_PRINTFB); break; \ + case 0x0f: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (EXTSTS ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_EXTSTS_PRINTFB); break; \ + case 0x19: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X (AUXSTS ), val = 0x%b\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff, \ + BCE_AUXSTS_PRINTFB); break; \ + default: DBPRINT(sc, BCE_INSANE_PHY, \ + "%s(): phy = %d, reg = 0x%04X, val = 0x%04X\n", \ + __FUNCTION__, phy, (u16) reg & 0xffff, (u16) val & 0xffff); \ + } + #else #define DBPRINT(level, format, args...) -#define DBRUN(m, args...) +#define DBRUN(args...) +#define DBRUNMSG(msg, args...) #define DBRUNLV(level, args...) #define DBRUNCP(cp, args...) #define DBRUNIF(cond, args...) +#define DBENTER(cond) +#define DBEXIT(cond) +#define DBPUSH(cond) +#define DBPOP() #define DB_RANDOMFALSE(defects) #define DB_OR_RANDOMFALSE(percent) #define DB_AND_RANDOMFALSE(percent) #define DB_RANDOMTRUE(defects) #define DB_OR_RANDOMTRUE(percent) #define DB_AND_RANDOMTRUE(percent) +#define DB_PRINT_PHY_REG(reg, val) #endif /* BCE_DEBUG */ +#if defined(__i386__) || defined(__amd64__) +#define mb() __asm volatile("mfence" ::: "memory") +#define wmb() __asm volatile("sfence" ::: "memory") +#define rmb() __asm volatile("lfence" ::: "memory") +#else +#define mb() +#define rmb() +#define wmb() +#endif /****************************************************************************/ /* Device identification definitions. */ @@ -258,6 +575,9 @@ #define BRCM_DEVICEID_BCM5706S 0x16AA #define BRCM_DEVICEID_BCM5708 0x164C #define BRCM_DEVICEID_BCM5708S 0x16AC +#define BRCM_DEVICEID_BCM5709 0x1639 +#define BRCM_DEVICEID_BCM5709S 0x163A +#define BRCM_DEVICEID_BCM5716 0x163B #define HP_VENDORID 0x103C @@ -268,6 +588,8 @@ #define BCE_CHIP_NUM(sc) (((sc)->bce_chipid) & 0xffff0000) #define BCE_CHIP_NUM_5706 0x57060000 #define BCE_CHIP_NUM_5708 0x57080000 +#define BCE_CHIP_NUM_5709 0x57090000 +#define BCE_CHIP_NUM_5716 0x57160000 #define BCE_CHIP_REV(sc) (((sc)->bce_chipid) & 0x0000f000) #define BCE_CHIP_REV_Ax 0x00000000 @@ -286,6 +608,13 @@ #define BCE_CHIP_ID_5708_B0 0x57081000 #define BCE_CHIP_ID_5708_B1 0x57081010 #define BCE_CHIP_ID_5708_B2 0x57081020 +#define BCE_CHIP_ID_5709_A0 0x57090000 +#define BCE_CHIP_ID_5709_A1 0x57090010 +#define BCE_CHIP_ID_5709_B0 0x57091000 +#define BCE_CHIP_ID_5709_B1 0x57091010 +#define BCE_CHIP_ID_5709_B2 0x57091020 +#define BCE_CHIP_ID_5709_C0 0x57092000 +#define BCE_CHIP_ID_5716_C0 0x57162000 #define BCE_CHIP_BOND_ID(sc) (((sc)->bce_chipid) & 0xf) @@ -375,6 +704,11 @@ #define ST_MICRO_FLASH_PAGE_SIZE 256 #define ST_MICRO_FLASH_BASE_TOTAL_SIZE 65536 +#define BCM5709_FLASH_PAGE_BITS 8 +#define BCM5709_FLASH_PHY_PAGE_SIZE (1 << BCM5709_FLASH_PAGE_BITS) +#define BCM5709_FLASH_BYTE_ADDR_MASK (BCM5709_FLASH_PHY_PAGE_SIZE-1) +#define BCM5709_FLASH_PAGE_SIZE 256 + #define NVRAM_TIMEOUT_COUNT 30000 #define BCE_FLASHDESC_MAX 64 @@ -391,7 +725,10 @@ u32 config2; u32 config3; u32 write1; - u32 buffered; +#define BCE_NV_BUFFERED 0x00000001 +#define BCE_NV_TRANSLATE 0x00000002 +#define BCE_NV_WREN 0x00000004 + u32 flags; u32 page_bits; u32 page_size; u32 addr_mask; @@ -406,21 +743,21 @@ /* information which can be accessed by the driver. */ /****************************************************************************/ -/* +/* * This value (in milliseconds) determines the frequency of the driver * issuing the PULSE message code. The firmware monitors this periodic - * pulse to determine when to switch to an OS-absent mode. + * pulse to determine when to switch to an OS-absent mode. */ #define DRV_PULSE_PERIOD_MS 250 -/* +/* * This value (in milliseconds) determines how long the driver should * wait for an acknowledgement from the firmware before timing out. Once * the firmware has timed out, the driver will assume there is no firmware * running and there won't be any firmware-driver synchronization during a - * driver reset. + * driver reset. */ -#define FW_ACK_TIME_OUT_MS 100 +#define FW_ACK_TIME_OUT_MS 1000 #define BCE_DRV_RESET_SIGNATURE 0x00000000 @@ -741,12 +1078,20 @@ #define BCE_UNLOCK(_sc) mtx_unlock(&(_sc)->bce_mtx) #define BCE_LOCK_DESTROY(_sc) mtx_destroy(&(_sc)->bce_mtx) -#define REG_WR(sc, reg, val) bus_space_write_4(sc->bce_btag, sc->bce_bhandle, reg, val) -#define REG_WR16(sc, reg, val) bus_space_write_2(sc->bce_btag, sc->bce_bhandle, reg, val) -#define REG_RD(sc, reg) bus_space_read_4(sc->bce_btag, sc->bce_bhandle, reg) +#ifdef BCE_DEBUG +#define REG_WR(sc, offset, val) bce_reg_wr(sc, offset, val) +#define REG_WR16(sc, offset, val) bce_reg_wr16(sc, offset, val) +#define REG_RD(sc, offset) bce_reg_rd(sc, offset) +#else +#define REG_WR(sc, offset, val) bus_space_write_4(sc->bce_btag, sc->bce_bhandle, offset, val) +#define REG_WR16(sc, offset, val) bus_space_write_2(sc->bce_btag, sc->bce_bhandle, offset, val) +#define REG_RD(sc, offset) bus_space_read_4(sc->bce_btag, sc->bce_bhandle, offset) +#endif + #define REG_RD_IND(sc, offset) bce_reg_rd_ind(sc, offset) #define REG_WR_IND(sc, offset, val) bce_reg_wr_ind(sc, offset, val) #define CTX_WR(sc, cid_addr, offset, val) bce_ctx_wr(sc, cid_addr, offset, val) +#define CTX_RD(sc, cid_addr, offset) bce_ctx_rd(sc, cid_addr, offset) #define BCE_SETBIT(sc, reg, x) REG_WR(sc, reg, (REG_RD(sc, reg) | (x))) #define BCE_CLRBIT(sc, reg, x) REG_WR(sc, reg, (REG_RD(sc, reg) & ~(x))) #define PCI_SETBIT(dev, reg, x, s) pci_write_config(dev, reg, (pci_read_config(dev, reg, s) | (x)), s) @@ -762,11 +1107,6 @@ #endif -/* - * The following data structures are generated from RTL code. - * Do not modify any values below this line. - */ - /****************************************************************************/ /* Do not modify any of the following data structures, they are generated */ /* from RTL code. */ @@ -1008,6 +1348,7 @@ #define L2_FHDR_STATUS_TCP_SEGMENT (1<<14) #define L2_FHDR_STATUS_UDP_DATAGRAM (1<<15) + #define L2_FHDR_STATUS_SPLIT (1<<16) #define L2_FHDR_ERRORS_BAD_CRC (1<<17) #define L2_FHDR_ERRORS_PHY_DECODE (1<<18) #define L2_FHDR_ERRORS_ALIGNMENT (1<<19) @@ -1030,55 +1371,140 @@ #endif }; +#define BCE_L2FHDR_PRINTFB \ + "\20" \ + "\40UDP_XSUM_ERR" \ + "\37b30" \ + "\36b29" \ + "\35TCP_XSUM_ERR" \ + "\34b27" \ + "\33b26" \ + "\32b25" \ + "\31b24" \ + "\30b23" \ + "\27b22" \ + "\26GIANT_ERR" \ + "\25SHORT_ERR" \ + "\24ALIGN_ERR" \ + "\23PHY_ERR" \ + "\22CRC_ERR" \ + "\21SPLIT" \ + "\20UDP" \ + "\17TCP" \ + "\16IP" \ + "\15b12" \ + "\14b11" \ + "\13b10" \ + "\12b09" \ + "\11RSS" \ + "\10SNAP" \ + "\07VLAN" \ + "\06P4" \ + "\05P3" \ + "\04P2" + /* - * l2_context definition + * l2_tx_context definition (5706 and 5708) */ -#define BCE_L2CTX_TYPE 0x00000000 -#define BCE_L2CTX_TYPE_SIZE_L2 ((0xc0/0x20)<<16) -#define BCE_L2CTX_TYPE_TYPE (0xf<<28) -#define BCE_L2CTX_TYPE_TYPE_EMPTY (0<<28) -#define BCE_L2CTX_TYPE_TYPE_L2 (1<<28) +#define BCE_L2CTX_TX_TYPE 0x00000000 +#define BCE_L2CTX_TX_TYPE_SIZE_L2 ((0xc0/0x20)<<16) +#define BCE_L2CTX_TX_TYPE_TYPE (0xf<<28) +#define BCE_L2CTX_TX_TYPE_TYPE_EMPTY (0<<28) +#define BCE_L2CTX_TX_TYPE_TYPE_L2 (1<<28) -#define BCE_L2CTX_TX_HOST_BIDX 0x00000088 -#define BCE_L2CTX_EST_NBD 0x00000088 -#define BCE_L2CTX_CMD_TYPE 0x00000088 -#define BCE_L2CTX_CMD_TYPE_TYPE (0xf<<24) -#define BCE_L2CTX_CMD_TYPE_TYPE_L2 (0<<24) -#define BCE_L2CTX_CMD_TYPE_TYPE_TCP (1<<24) +#define BCE_L2CTX_TX_HOST_BIDX 0x00000088 +#define BCE_L2CTX_TX_EST_NBD 0x00000088 +#define BCE_L2CTX_TX_CMD_TYPE 0x00000088 +#define BCE_L2CTX_TX_CMD_TYPE_TYPE (0xf<<24) +#define BCE_L2CTX_TX_CMD_TYPE_TYPE_L2 (0<<24) +#define BCE_L2CTX_TX_CMD_TYPE_TYPE_TCP (1<<24) #define BCE_L2CTX_TX_HOST_BSEQ 0x00000090 -#define BCE_L2CTX_TSCH_BSEQ 0x00000094 -#define BCE_L2CTX_TBDR_BSEQ 0x00000098 -#define BCE_L2CTX_TBDR_BOFF 0x0000009c -#define BCE_L2CTX_TBDR_BIDX 0x0000009c -#define BCE_L2CTX_TBDR_BHADDR_HI 0x000000a0 -#define BCE_L2CTX_TBDR_BHADDR_LO 0x000000a4 -#define BCE_L2CTX_TXP_BOFF 0x000000a8 -#define BCE_L2CTX_TXP_BIDX 0x000000a8 -#define BCE_L2CTX_TXP_BSEQ 0x000000ac +#define BCE_L2CTX_TX_TSCH_BSEQ 0x00000094 +#define BCE_L2CTX_TX_TBDR_BSEQ 0x00000098 +#define BCE_L2CTX_TX_TBDR_BOFF 0x0000009c +#define BCE_L2CTX_TX_TBDR_BIDX 0x0000009c +#define BCE_L2CTX_TX_TBDR_BHADDR_HI 0x000000a0 +#define BCE_L2CTX_TX_TBDR_BHADDR_LO 0x000000a4 +#define BCE_L2CTX_TX_TXP_BOFF 0x000000a8 +#define BCE_L2CTX_TX_TXP_BIDX 0x000000a8 +#define BCE_L2CTX_TX_TXP_BSEQ 0x000000ac +/* + * l2_tx_context definition (5709 and 5716) + */ +#define BCE_L2CTX_TX_TYPE_XI 0x00000080 +#define BCE_L2CTX_TX_TYPE_SIZE_L2_XI ((0xc0/0x20)<<16) +#define BCE_L2CTX_TX_TYPE_TYPE_XI (0xf<<28) +#define BCE_L2CTX_TX_TYPE_TYPE_EMPTY_XI (0<<28) +#define BCE_L2CTX_TX_TYPE_TYPE_L2_XI (1<<28) + +#define BCE_L2CTX_TX_CMD_TYPE_XI 0x00000240 +#define BCE_L2CTX_TX_CMD_TYPE_TYPE_XI (0xf<<24) +#define BCE_L2CTX_TX_CMD_TYPE_TYPE_L2_XI (0<<24) +#define BCE_L2CTX_TX_CMD_TYPE_TYPE_TCP_XI (1<<24) +#define BCE_L2CTX_TX_HOST_BIDX_XI 0x00000240 +#define BCE_L2CTX_TX_HOST_BSEQ_XI 0x00000248 +#define BCE_L2CTX_TX_TBDR_BHADDR_HI_XI 0x00000258 +#define BCE_L2CTX_TX_TBDR_BHADDR_LO_XI 0x0000025c + + /* - * l2_bd_chain_context definition + * l2_rx_context definition (5706, 5708, 5709, and 5716) */ -#define BCE_L2CTX_BD_PRE_READ 0x00000000 -#define BCE_L2CTX_CTX_SIZE 0x00000000 -#define BCE_L2CTX_CTX_TYPE 0x00000000 -#define BCE_L2CTX_CTX_TYPE_SIZE_L2 ((0x20/20)<<16) -#define BCE_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE (0xf<<28) -#define BCE_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE_UNDEFINED (0<<28) -#define BCE_L2CTX_CTX_TYPE_CTX_BD_CHN_TYPE_VALUE (1<<28) +#define BCE_L2CTX_RX_WATER_MARK 0x00000000 +#define BCE_L2CTX_RX_LO_WATER_MARK_SHIFT 0 +#define BCE_L2CTX_RX_LO_WATER_MARK_DEFAULT 32 +#define BCE_L2CTX_RX_LO_WATER_MARK_SCALE 4 +#define BCE_L2CTX_RX_LO_WATER_MARK_DIS 0 +#define BCE_L2CTX_RX_HI_WATER_MARK_SHIFT 4 +#define BCE_L2CTX_RX_HI_WATER_MARK_SCALE 16 +#define BCE_L2CTX_RX_WATER_MARKS_MSK 0x000000ff -#define BCE_L2CTX_HOST_BDIDX 0x00000004 -#define BCE_L2CTX_HOST_BSEQ 0x00000008 -#define BCE_L2CTX_NX_BSEQ 0x0000000c -#define BCE_L2CTX_NX_BDHADDR_HI 0x00000010 -#define BCE_L2CTX_NX_BDHADDR_LO 0x00000014 -#define BCE_L2CTX_NX_BDIDX 0x00000018 +#define BCE_L2CTX_RX_BD_PRE_READ 0x00000000 +#define BCE_L2CTX_RX_BD_PRE_READ_SHIFT 8 +#define BCE_L2CTX_RX_CTX_SIZE 0x00000000 +#define BCE_L2CTX_RX_CTX_SIZE_SHIFT 16 +#define BCE_L2CTX_RX_CTX_TYPE_SIZE_L2 ((0x20/20)<> BCM_PAGE_BITS) +/* + * Page count must remain a power of 2 for all + * of the math to work correctly. + */ #define TX_PAGES 2 #define TOTAL_TX_BD_PER_PAGE (BCM_PAGE_SIZE / sizeof(struct tx_bd)) #define USABLE_TX_BD_PER_PAGE (TOTAL_TX_BD_PER_PAGE - 1) @@ -4517,31 +6174,55 @@ #define USABLE_TX_BD (USABLE_TX_BD_PER_PAGE * TX_PAGES) #define MAX_TX_BD (TOTAL_TX_BD - 1) -#define RX_PAGES 2 -#define TOTAL_RX_BD_PER_PAGE (BCM_PAGE_SIZE / sizeof(struct rx_bd)) -#define USABLE_RX_BD_PER_PAGE (TOTAL_RX_BD_PER_PAGE - 1) -#define TOTAL_RX_BD (TOTAL_RX_BD_PER_PAGE * RX_PAGES) -#define USABLE_RX_BD (USABLE_RX_BD_PER_PAGE * RX_PAGES) -#define MAX_RX_BD (TOTAL_RX_BD - 1) - #define NEXT_TX_BD(x) (((x) & USABLE_TX_BD_PER_PAGE) == \ (USABLE_TX_BD_PER_PAGE - 1)) ? \ (x) + 2 : (x) + 1 #define TX_CHAIN_IDX(x) ((x) & MAX_TX_BD) -#define TX_PAGE(x) (((x) & ~USABLE_TX_BD_PER_PAGE) >> 8) +#define TX_PAGE(x) (((x) & ~USABLE_TX_BD_PER_PAGE) >> (BCM_PAGE_BITS - 4)) #define TX_IDX(x) ((x) & USABLE_TX_BD_PER_PAGE) +/* + * Page count must remain a power of 2 for all + * of the math to work correctly. + */ +#define RX_PAGES 2 +#define TOTAL_RX_BD_PER_PAGE (BCM_PAGE_SIZE / sizeof(struct rx_bd)) +#define USABLE_RX_BD_PER_PAGE (TOTAL_RX_BD_PER_PAGE - 1) +#define TOTAL_RX_BD (TOTAL_RX_BD_PER_PAGE * RX_PAGES) +#define USABLE_RX_BD (USABLE_RX_BD_PER_PAGE * RX_PAGES) +#define MAX_RX_BD (TOTAL_RX_BD - 1) + #define NEXT_RX_BD(x) (((x) & USABLE_RX_BD_PER_PAGE) == \ (USABLE_RX_BD_PER_PAGE - 1)) ? \ (x) + 2 : (x) + 1 #define RX_CHAIN_IDX(x) ((x) & MAX_RX_BD) -#define RX_PAGE(x) (((x) & ~USABLE_RX_BD_PER_PAGE) >> 8) +#define RX_PAGE(x) (((x) & ~USABLE_RX_BD_PER_PAGE) >> (BCM_PAGE_BITS - 4)) #define RX_IDX(x) ((x) & USABLE_RX_BD_PER_PAGE) +/* + * To accomodate jumbo frames, the page chain should + * be 4 times larger than the receive chain. + */ +#define PG_PAGES (RX_PAGES * 4) +#define TOTAL_PG_BD_PER_PAGE (BCM_PAGE_SIZE / sizeof(struct rx_bd)) +#define USABLE_PG_BD_PER_PAGE (TOTAL_PG_BD_PER_PAGE - 1) +#define TOTAL_PG_BD (TOTAL_PG_BD_PER_PAGE * PG_PAGES) +#define USABLE_PG_BD (USABLE_PG_BD_PER_PAGE * PG_PAGES) +#define MAX_PG_BD (TOTAL_PG_BD - 1) + +#define NEXT_PG_BD(x) (((x) & USABLE_PG_BD_PER_PAGE) == \ + (USABLE_PG_BD_PER_PAGE - 1)) ? \ + (x) + 2 : (x) + 1 + +#define PG_CHAIN_IDX(x) ((x) & MAX_PG_BD) + +#define PG_PAGE(x) (((x) & ~USABLE_PG_BD_PER_PAGE) >> (BCM_PAGE_BITS - 4)) +#define PG_IDX(x) ((x) & USABLE_PG_BD_PER_PAGE) + /* Context size. */ #define CTX_SHIFT 7 #define CTX_SIZE (1 << CTX_SHIFT) @@ -4567,9 +6248,6 @@ #define TX_CID 16 #define RX_CID 0 -#define MB_TX_CID_ADDR MB_GET_CID_ADDR(TX_CID) -#define MB_RX_CID_ADDR MB_GET_CID_ADDR(RX_CID) - /****************************************************************************/ /* BCE Processor Firmwware Load Definitions */ /****************************************************************************/ @@ -4699,6 +6377,7 @@ #define BCE_STATS_BLK_SZ sizeof(struct statistics_block) #define BCE_TX_CHAIN_PAGE_SZ BCM_PAGE_SIZE #define BCE_RX_CHAIN_PAGE_SZ BCM_PAGE_SIZE +#define BCE_PG_CHAIN_PAGE_SZ BCM_PAGE_SIZE struct bce_softc { @@ -4713,8 +6392,13 @@ vm_offset_t bce_vhandle; /* Device virtual memory handle */ struct resource *bce_res_irq; /* IRQ Resource Handle */ struct mtx bce_mtx; /* Mutex */ - void *bce_intrhand; /* Interrupt handler */ + /* Interrupt handler. */ + driver_intr_t *bce_intr; + void *bce_intrhand; + int bce_irq_rid; + int bce_msi_count; + /* ASIC Chip ID. */ u32 bce_chipid; @@ -4727,7 +6411,17 @@ #define BCE_USING_DAC_FLAG 0x00000010 #define BCE_USING_MSI_FLAG 0x00000020 #define BCE_MFW_ENABLE_FLAG 0x00000040 +#define BCE_ONE_SHOT_MSI_FLAG 0x00000080 +#define BCE_USING_MSIX_FLAG 0x00000100 +#define BCE_PCIE_FLAG 0x00000200 + /* Controller capability flags. */ + u32 bce_cap_flags; +#define BCE_MSI_CAPABLE_FLAG 0x00000001 +#define BCE_MSIX_CAPABLE_FLAG 0x00000002 +#define BCE_PCIE_CAPABLE_FLAG 0x00000004 +#define BCE_PCIX_CAPABLE_FLAG 0x00000008 + /* PHY specific flags. */ u32 bce_phy_flags; #define BCE_PHY_SERDES_FLAG 0x00000001 @@ -4742,8 +6436,10 @@ u32 bce_shared_hw_cfg; u32 bce_port_hw_cfg; - bus_addr_t max_bus_addr; + bus_addr_t max_bus_addr; u16 bus_speed_mhz; /* PCI bus speed */ + u16 link_width; /* PCIe link width */ + u16 link_speed; /* PCIe link speed */ struct flash_spec *bce_flash_info; /* Flash NVRAM settings */ u32 bce_flash_size; /* Flash NVRAM size */ u32 bce_shmem_base; /* Shared Memory base address */ @@ -4792,7 +6488,7 @@ /* The device handle for the MII bus child device. */ device_t bce_miibus; - + /* Driver maintained TX chain pointers and byte counter. */ u16 rx_prod; u16 rx_cons; @@ -4800,6 +6496,8 @@ u16 tx_prod; u16 tx_cons; u32 tx_prod_bseq; /* Counts the bytes used. */ + u16 pg_prod; + u16 pg_cons; int bce_link; struct callout bce_tick_callout; @@ -4809,15 +6507,14 @@ /* Frame size and mbuf allocation size for RX frames. */ u32 max_frame_size; - int mbuf_alloc_size; + int rx_bd_mbuf_alloc_size; + int rx_bd_mbuf_data_len; + int rx_bd_mbuf_align_pad; + int pg_bd_mbuf_alloc_size; /* Receive mode settings (i.e promiscuous, multicast, etc.). */ u32 rx_mode; -#ifdef DEVICE_POLLING - int bce_rxcycles; /* Counter for receive polling cycles */ -#endif - /* Bus tag for the bce controller. */ bus_dma_tag_t parent_tag; @@ -4833,11 +6530,17 @@ struct rx_bd *rx_bd_chain[RX_PAGES]; bus_addr_t rx_bd_chain_paddr[RX_PAGES]; + /* H/W maintained page buffer descriptor chain structure. */ + bus_dma_tag_t pg_bd_chain_tag; + bus_dmamap_t pg_bd_chain_map[PG_PAGES]; + struct rx_bd *pg_bd_chain[PG_PAGES]; + bus_addr_t pg_bd_chain_paddr[PG_PAGES]; + /* H/W maintained status block. */ bus_dma_tag_t status_tag; bus_dmamap_t status_map; - struct status_block *status_block; /* virtual address */ - bus_addr_t status_block_paddr; /* Physical address */ + struct status_block *status_block; /* Virtual address */ + bus_addr_t status_block_paddr; /* Physical address */ /* Driver maintained status block values. */ u16 last_status_idx; @@ -4850,9 +6553,18 @@ struct statistics_block *stats_block; /* Virtual address */ bus_addr_t stats_block_paddr; /* Physical address */ + /* H/W maintained context block. */ + int ctx_pages; + bus_dma_tag_t ctx_tag; + /* DRC - Fix hard coded value. */ + bus_dmamap_t ctx_map[4]; + void *ctx_block[4]; /* Virtual address */ + bus_addr_t ctx_paddr[4]; /* Physical address */ + /* Bus tag for RX/TX mbufs. */ bus_dma_tag_t rx_mbuf_tag; bus_dma_tag_t tx_mbuf_tag; + bus_dma_tag_t pg_mbuf_tag; /* S/W maintained mbuf TX chain structure. */ bus_dmamap_t tx_mbuf_map[TOTAL_TX_BD]; @@ -4862,11 +6574,17 @@ bus_dmamap_t rx_mbuf_map[TOTAL_RX_BD]; struct mbuf *rx_mbuf_ptr[TOTAL_RX_BD]; - /* Track the number of rx_bd and tx_bd's in use. */ + /* S/W maintained mbuf page chain structure. */ + bus_dmamap_t pg_mbuf_map[TOTAL_PG_BD]; + struct mbuf *pg_mbuf_ptr[TOTAL_PG_BD]; + + /* Track the number of buffer descriptors in use. */ u16 free_rx_bd; u16 max_rx_bd; u16 used_tx_bd; u16 max_tx_bd; + u16 free_pg_bd; + u16 max_pg_bd; /* Provides access to hardware statistics through sysctl. */ u64 stat_IfHCInOctets; @@ -4934,25 +6652,36 @@ /* TX DMA mapping failure counter. */ u32 tx_dma_map_failures; + u32 hc_command; + #ifdef BCE_DEBUG /* Track the number of enqueued mbufs. */ - int tx_mbuf_alloc; - int rx_mbuf_alloc; + int debug_tx_mbuf_alloc; + int debug_rx_mbuf_alloc; + int debug_pg_mbuf_alloc; - /* Track the distribution buffer segments. */ - u32 rx_mbuf_segs[BCE_MAX_SEGMENTS+1]; - /* Track how many and what type of interrupts are generated. */ u32 interrupts_generated; u32 interrupts_handled; u32 rx_interrupts; u32 tx_interrupts; + /* Track interrupt time (25MHz clock). */ + u64 rx_intr_time; + u64 tx_intr_time; + u32 rx_low_watermark; /* Lowest number of rx_bd's free. */ u32 rx_empty_count; /* Number of times the RX chain was empty. */ + + u32 pg_low_watermark; /* Lowest number of pages free. */ + u32 pg_empty_count; /* Number of times the page chain was empty. */ + u32 tx_hi_watermark; /* Greatest number of tx_bd's used. */ u32 tx_full_count; /* Number of times the TX chain was full. */ - u32 mbuf_sim_alloc_failed; /* Mbuf simulated allocation failure counter. */ + + /* Simulated mbuf allocation failure counter. */ + u32 debug_mbuf_sim_alloc_failed; + u32 l2fhdr_status_errors; u32 unexpected_attentions; u32 lost_status_block_updates;