diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..c6127b3
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,52 @@
+# Prerequisites
+*.d
+
+# Object files
+*.o
+*.ko
+*.obj
+*.elf
+
+# Linker output
+*.ilk
+*.map
+*.exp
+
+# Precompiled Headers
+*.gch
+*.pch
+
+# Libraries
+*.lib
+*.a
+*.la
+*.lo
+
+# Shared objects (inc. Windows DLLs)
+*.dll
+*.so
+*.so.*
+*.dylib
+
+# Executables
+*.exe
+*.out
+*.app
+*.i*86
+*.x86_64
+*.hex
+
+# Debug files
+*.dSYM/
+*.su
+*.idb
+*.pdb
+
+# Kernel Module Compile Results
+*.mod*
+*.cmd
+.tmp_versions/
+modules.order
+Module.symvers
+Mkfile.old
+dkms.conf
diff --git a/BaS_gcc/.gdbinit b/BaS_gcc/.gdbinit
deleted file mode 100644
index bb92697..0000000
--- a/BaS_gcc/.gdbinit
+++ /dev/null
@@ -1,16 +0,0 @@
-#set disassemble-next-line on
-define tr
- #!killall m68k-bdm-gdbserver
- target remote | m68k-bdm-gdbserver pipe /dev/bdmcf3
- #target remote localhost:1234
- #target remote | m68k-bdm-gdbserver pipe /dev/tblcf2
- #target dbug /dev/ttyS0
- #monitor bdm-reset
-end
-define tbtr
- target remote | m68k-bdm-gdbserver pipe /dev/tblcf2
-end
-source mcf5474.gdb
-set breakpoint auto-hw
-
-
diff --git a/BaS_gcc/.indent.pro b/BaS_gcc/.indent.pro
deleted file mode 100644
index a37afc0..0000000
--- a/BaS_gcc/.indent.pro
+++ /dev/null
@@ -1,22 +0,0 @@
--bad
--bap
--bbb
--bbo
--bl
--blf
--bli0
--bls
--bs
--cbi0
--cdb
--cli4
--cs
--i4
--lp
--saf
--sai
--saw
--ts4
--npcs
--npsl
-
diff --git a/BaS_gcc/BaS_gcc.config b/BaS_gcc/BaS_gcc.config
deleted file mode 100644
index 146302d..0000000
--- a/BaS_gcc/BaS_gcc.config
+++ /dev/null
@@ -1,3 +0,0 @@
-// Add predefined macros for your project here. For example:
-// #define THE_ANSWER 42
-#define MACHINE_FIREBEE
diff --git a/BaS_gcc/BaS_gcc.creator b/BaS_gcc/BaS_gcc.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/BaS_gcc.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/BaS_gcc.files b/BaS_gcc/BaS_gcc.files
deleted file mode 100644
index 08f44bd..0000000
--- a/BaS_gcc/BaS_gcc.files
+++ /dev/null
@@ -1,397 +0,0 @@
-dma/dma.c
-dma/MCD_dmaApi.c
-dma/MCD_tasks.c
-dma/MCD_tasksInit.c
-exe/basflash.c
-exe/basflash_start.c
-firebee/bas.elf
-firebee/bas.lk
-firebee/bas.map
-firebee/bas.s19
-firebee/basflash.elf
-firebee/basflash.lk
-firebee/basflash.map
-firebee/basflash.s19
-firebee/depend
-firebee/libbas.a
-firebee/ram.elf
-firebee/ram.lk
-firebee/ram.map
-firebee/ram.s19
-flash/flash.c
-flash/s19reader.c
-flash_scripts/flash_firebee_bas.bdm
-flash_scripts/flash_firebee_etos.bdm
-flash_scripts/flash_firebee_firetos.bdm
-flash_scripts/flash_firebee_fpga.bdm
-flash_scripts/flash_m548x_bas.bdm
-flash_scripts/flash_m548x_dbug.bdm
-flash_scripts/flash_m548x_etos.bdm
-flash_scripts/m548xlite_dbug_ram.elf
-flash_scripts/m548xlite_dbug_ram.s19
-flash_scripts/run_m548x_dbug.bdm
-fs/cc932.c
-fs/cc936.c
-fs/cc949.c
-fs/cc950.c
-fs/ccsbcs.c
-fs/ff.c
-fs/unicode.c
-i2c/i2c.c
-if/driver_vec.c
-include/acia.h
-include/am79c874.h
-include/arp.h
-include/ati_ids.h
-include/bas_printf.h
-include/bas_string.h
-include/bas_types.h
-include/bas_utils.h
-include/bcm5222.h
-include/bootp.h
-include/cache.h
-include/conout.h
-include/debug.h
-include/diskio.h
-include/dma.h
-include/driver_mem.h
-include/driver_vec.h
-include/edid.h
-include/ehci.h
-include/eth.h
-include/exceptions.h
-include/fb.h
-include/fec.h
-include/fecbd.h
-include/ff.h
-include/ffconf.h
-include/firebee.h
-include/font.h
-include/i2c-algo-bit.h
-include/i2c.h
-include/icmp.h
-include/ikbd.h
-include/interrupts.h
-include/ip.h
-include/m54455.h
-include/m5484l.h
-include/MCD_dma.h
-include/mcd_initiators.h
-include/MCD_progCheck.h
-include/MCD_tasksInit.h
-include/MCF5475.h
-include/MCF5475_CLOCK.h
-include/MCF5475_CTM.h
-include/MCF5475_DMA.h
-include/MCF5475_DSPI.h
-include/MCF5475_EPORT.h
-include/MCF5475_FBCS.h
-include/MCF5475_FEC.h
-include/MCF5475_GPIO.h
-include/MCF5475_GPT.h
-include/MCF5475_I2C.h
-include/MCF5475_INTC.h
-include/MCF5475_MMU.h
-include/MCF5475_PAD.h
-include/MCF5475_PCI.h
-include/MCF5475_PCIARB.h
-include/MCF5475_PSC.h
-include/MCF5475_SDRAMC.h
-include/MCF5475_SEC.h
-include/MCF5475_SIU.h
-include/MCF5475_SLT.h
-include/MCF5475_SRAM.h
-include/MCF5475_USB.h
-include/MCF5475_XLB.h
-include/mmu.h
-include/mod_devicetable.h
-include/nbuf.h
-include/net.h
-include/net_timer.h
-include/nif.h
-include/ohci.h
-include/part.h
-include/pci.h
-include/pci_errata.h
-include/pci_ids.h
-include/queue.h
-include/radeon_reg.h
-include/radeonfb.h
-include/s19reader.h
-include/screen.h
-include/sd_card.h
-include/setjmp.h
-include/startcf.h
-include/sysinit.h
-include/tftp.h
-include/udp.h
-include/usb.h
-include/usb_defs.h
-include/usb_hub.h
-include/user_io.h
-include/util.h
-include/version.h
-include/videl.h
-include/video.h
-include/wait.h
-include/x86emu.h
-include/x86emu_regs.h
-include/x86pcibios.h
-include/xhdi_sd.h
-kbd/ikbd.c
-m54455/bas.elf
-m54455/bas.lk
-m54455/bas.map
-m54455/bas.s19
-m54455/basflash.elf
-m54455/basflash.lk
-m54455/basflash.map
-m54455/basflash.s19
-m54455/depend
-m54455/libbas.a
-m54455/ram.elf
-m54455/ram.lk
-m54455/ram.map
-m54455/ram.s19
-m5484lite/bas.elf
-m5484lite/bas.lk
-m5484lite/bas.map
-m5484lite/bas.s19
-m5484lite/basflash.elf
-m5484lite/basflash.lk
-m5484lite/basflash.map
-m5484lite/basflash.s19
-m5484lite/depend
-m5484lite/libbas.a
-m5484lite/ram.elf
-m5484lite/ram.lk
-m5484lite/ram.map
-m5484lite/ram.s19
-net/am79c874.c
-net/arp.c
-net/bcm5222.c
-net/bootp.c
-net/fec.c
-net/fecbd.c
-net/ip.c
-net/nbuf.c
-net/net_timer.c
-net/nif.c
-net/queue.c
-net/tftp.c
-net/udp.c
-nutil/s19header.c
-pci/ehci-hcd.c
-pci/ohci-hcd.c
-pci/pci.c
-pci/pci_errata.c
-pci/pci_wrappers.S
-radeon/i2c-algo-bit.c
-radeon/radeon_accel.c
-radeon/radeon_base.c
-radeon/radeon_cursor.c
-radeon/radeon_i2c.c
-radeon/radeon_monitor.c
-release/firebee/bas.s19
-release/m5484lite/bas.s19
-release/bascook.prg
-release/readme.txt
-spi/dspi.c
-spi/mmc.c
-spi/sd_card.c
-sys/BaS.c
-sys/cache.c
-sys/driver_mem.c
-sys/exceptions.S
-sys/fault_vectors.c
-sys/init_fpga.c
-sys/interrupts.c
-sys/mmu.c
-sys/startcf.S
-sys/sysinit.c
-tos/bascook/sources/bascook.c
-tos/bascook/bascook.prg
-tos/bascook/depend
-tos/bascook/mapfile
-tos/fpga_test/m5475/mshort/fpga_test.prg
-tos/fpga_test/m5475/fpga_test.prg
-tos/fpga_test/sources/fpga_test.c
-tos/fpga_test/sources/ser_printf.c
-tos/fpga_test/sources/vmem_test.c
-tos/fpga_test/depend
-tos/fpga_test/mapfile
-tos/jtagwait/include/bas_printf.h
-tos/jtagwait/include/bas_string.h
-tos/jtagwait/include/driver_vec.h
-tos/jtagwait/include/MCF5475.h
-tos/jtagwait/include/MCF5475_CLOCK.h
-tos/jtagwait/include/MCF5475_CTM.h
-tos/jtagwait/include/MCF5475_DMA.h
-tos/jtagwait/include/MCF5475_DSPI.h
-tos/jtagwait/include/MCF5475_EPORT.h
-tos/jtagwait/include/MCF5475_FBCS.h
-tos/jtagwait/include/MCF5475_FEC.h
-tos/jtagwait/include/MCF5475_GPIO.h
-tos/jtagwait/include/MCF5475_GPT.h
-tos/jtagwait/include/MCF5475_I2C.h
-tos/jtagwait/include/MCF5475_INTC.h
-tos/jtagwait/include/MCF5475_MMU.h
-tos/jtagwait/include/MCF5475_PAD.h
-tos/jtagwait/include/MCF5475_PCI.h
-tos/jtagwait/include/MCF5475_PCIARB.h
-tos/jtagwait/include/MCF5475_PSC.h
-tos/jtagwait/include/MCF5475_SDRAMC.h
-tos/jtagwait/include/MCF5475_SEC.h
-tos/jtagwait/include/MCF5475_SIU.h
-tos/jtagwait/include/MCF5475_SLT.h
-tos/jtagwait/include/MCF5475_SRAM.h
-tos/jtagwait/include/MCF5475_USB.h
-tos/jtagwait/include/MCF5475_XLB.h
-tos/jtagwait/m5475/mshort/jtagwait.prg
-tos/jtagwait/m5475/jtagwait.prg
-tos/jtagwait/sources/bas_printf.c
-tos/jtagwait/sources/bas_string.c
-tos/jtagwait/sources/jtagwait.c
-tos/jtagwait/sources/printf_helper.S
-tos/jtagwait/depend
-tos/jtagwait/mapfile
-tos/pci_mem/include/bas_string.h
-tos/pci_mem/include/bas_types.h
-tos/pci_mem/include/driver_vec.h
-tos/pci_mem/include/MCF5475.h
-tos/pci_mem/include/MCF5475_CLOCK.h
-tos/pci_mem/include/MCF5475_CTM.h
-tos/pci_mem/include/MCF5475_DMA.h
-tos/pci_mem/include/MCF5475_DSPI.h
-tos/pci_mem/include/MCF5475_EPORT.h
-tos/pci_mem/include/MCF5475_FBCS.h
-tos/pci_mem/include/MCF5475_FEC.h
-tos/pci_mem/include/MCF5475_GPIO.h
-tos/pci_mem/include/MCF5475_GPT.h
-tos/pci_mem/include/MCF5475_I2C.h
-tos/pci_mem/include/MCF5475_INTC.h
-tos/pci_mem/include/MCF5475_MMU.h
-tos/pci_mem/include/MCF5475_PAD.h
-tos/pci_mem/include/MCF5475_PCI.h
-tos/pci_mem/include/MCF5475_PCIARB.h
-tos/pci_mem/include/MCF5475_PSC.h
-tos/pci_mem/include/MCF5475_SDRAMC.h
-tos/pci_mem/include/MCF5475_SEC.h
-tos/pci_mem/include/MCF5475_SIU.h
-tos/pci_mem/include/MCF5475_SLT.h
-tos/pci_mem/include/MCF5475_SRAM.h
-tos/pci_mem/include/MCF5475_USB.h
-tos/pci_mem/include/MCF5475_XLB.h
-tos/pci_mem/include/pci.h
-tos/pci_mem/include/util.h
-tos/pci_mem/m5475/mshort/pci_mem.prg
-tos/pci_mem/m5475/pci_mem.prg
-tos/pci_mem/sources/pci_mem.c
-tos/pci_mem/depend
-tos/pci_mem/mapfile
-tos/pci_test/include/bas_string.h
-tos/pci_test/include/bas_types.h
-tos/pci_test/include/driver_vec.h
-tos/pci_test/include/MCF5475.h
-tos/pci_test/include/MCF5475_CLOCK.h
-tos/pci_test/include/MCF5475_CTM.h
-tos/pci_test/include/MCF5475_DMA.h
-tos/pci_test/include/MCF5475_DSPI.h
-tos/pci_test/include/MCF5475_EPORT.h
-tos/pci_test/include/MCF5475_FBCS.h
-tos/pci_test/include/MCF5475_FEC.h
-tos/pci_test/include/MCF5475_GPIO.h
-tos/pci_test/include/MCF5475_GPT.h
-tos/pci_test/include/MCF5475_I2C.h
-tos/pci_test/include/MCF5475_INTC.h
-tos/pci_test/include/MCF5475_MMU.h
-tos/pci_test/include/MCF5475_PAD.h
-tos/pci_test/include/MCF5475_PCI.h
-tos/pci_test/include/MCF5475_PCIARB.h
-tos/pci_test/include/MCF5475_PSC.h
-tos/pci_test/include/MCF5475_SDRAMC.h
-tos/pci_test/include/MCF5475_SEC.h
-tos/pci_test/include/MCF5475_SIU.h
-tos/pci_test/include/MCF5475_SLT.h
-tos/pci_test/include/MCF5475_SRAM.h
-tos/pci_test/include/MCF5475_USB.h
-tos/pci_test/include/MCF5475_XLB.h
-tos/pci_test/include/pci.h
-tos/pci_test/include/util.h
-tos/pci_test/m5475/mshort/pci_test.prg
-tos/pci_test/m5475/pci_test.prg
-tos/pci_test/sources/pci_test.c
-tos/pci_test/sources/printf_helper.S
-tos/pci_test/depend
-tos/pci_test/mapfile
-tos/vmem_test/include/bas_printf.h
-tos/vmem_test/include/bas_string.h
-tos/vmem_test/include/driver_vec.h
-tos/vmem_test/include/MCF5475.h
-tos/vmem_test/include/MCF5475_CLOCK.h
-tos/vmem_test/include/MCF5475_CTM.h
-tos/vmem_test/include/MCF5475_DMA.h
-tos/vmem_test/include/MCF5475_DSPI.h
-tos/vmem_test/include/MCF5475_EPORT.h
-tos/vmem_test/include/MCF5475_FBCS.h
-tos/vmem_test/include/MCF5475_FEC.h
-tos/vmem_test/include/MCF5475_GPIO.h
-tos/vmem_test/include/MCF5475_GPT.h
-tos/vmem_test/include/MCF5475_I2C.h
-tos/vmem_test/include/MCF5475_INTC.h
-tos/vmem_test/include/MCF5475_MMU.h
-tos/vmem_test/include/MCF5475_PAD.h
-tos/vmem_test/include/MCF5475_PCI.h
-tos/vmem_test/include/MCF5475_PCIARB.h
-tos/vmem_test/include/MCF5475_PSC.h
-tos/vmem_test/include/MCF5475_SDRAMC.h
-tos/vmem_test/include/MCF5475_SEC.h
-tos/vmem_test/include/MCF5475_SIU.h
-tos/vmem_test/include/MCF5475_SLT.h
-tos/vmem_test/include/MCF5475_SRAM.h
-tos/vmem_test/include/MCF5475_USB.h
-tos/vmem_test/include/MCF5475_XLB.h
-tos/vmem_test/m5475/mshort/vmem_test.prg
-tos/vmem_test/m5475/vmem_test.prg
-tos/vmem_test/sources/bas_printf.c
-tos/vmem_test/sources/bas_string.c
-tos/vmem_test/sources/printf_helper.S
-tos/vmem_test/sources/vmem_test.c
-tos/vmem_test/depend
-tos/vmem_test/mapfile
-usb/usb.c
-usb/usb_hub.c
-usb/usb_kbd.c
-usb/usb_mouse.c
-util/bas_printf.c
-util/bas_string.c
-util/conout.c
-util/libgcc_helper.S
-util/setjmp.S
-util/wait.c
-video/fbmem.c
-video/fbmodedb.c
-video/fbmon.c
-video/fnt_st_8x16.c
-video/offscreen.c
-video/vdi_fill.c
-video/videl.c
-video/video.c
-x86emu/x86biosemu.c
-x86emu/x86emu.c
-x86emu/x86emu_util.c
-x86emu/x86pcibios.c
-xhdi/xhdi_interface.c
-xhdi/xhdi_sd.c
-xhdi/xhdi_vec.S
-bas.lk.in
-bas_firebee.bdm
-bas_m5484.bdm
-basflash.lk.in
-check.bdm
-COPYING
-COPYING.LESSER
-Doxyfile
-dump.bdm
-mcf5474.gdb
-memory_map.txt
diff --git a/BaS_gcc/BaS_gcc.includes b/BaS_gcc/BaS_gcc.includes
deleted file mode 100644
index 76956f3..0000000
--- a/BaS_gcc/BaS_gcc.includes
+++ /dev/null
@@ -1,5 +0,0 @@
-include
-tos/jtagwait/include
-tos/pci_mem/include
-tos/pci_test/include
-tos/vmem_test/include
\ No newline at end of file
diff --git a/BaS_gcc/COPYING b/BaS_gcc/COPYING
deleted file mode 100644
index 94a9ed0..0000000
--- a/BaS_gcc/COPYING
+++ /dev/null
@@ -1,674 +0,0 @@
- GNU GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
- Preamble
-
- The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
- The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users. We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors. You can apply it to
-your programs, too.
-
- When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
- To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
- For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.
-
- Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
- For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
- Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so. This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software. The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable. Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products. If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
- Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary. To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
- The precise terms and conditions for copying, distribution and
-modification follow.
-
- TERMS AND CONDITIONS
-
- 0. Definitions.
-
- "This License" refers to version 3 of the GNU General Public License.
-
- "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
- "The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.
-
- To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy. The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
- A "covered work" means either the unmodified Program or a work based
-on the Program.
-
- To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
- To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
- An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
- 1. Source Code.
-
- The "source code" for a work means the preferred form of the work
-for making modifications to it. "Object code" means any non-source
-form of a work.
-
- A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
- The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
- The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
- The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
- The Corresponding Source for a work in source code form is that
-same work.
-
- 2. Basic Permissions.
-
- All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
- You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force. You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright. Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
- Conveying under any other circumstances is permitted solely under
-the conditions stated below. Sublicensing is not allowed; section 10
-makes it unnecessary.
-
- 3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
- No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
- When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
- 4. Conveying Verbatim Copies.
-
- You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
- You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
- 5. Conveying Modified Source Versions.
-
- You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
- a) The work must carry prominent notices stating that you modified
- it, and giving a relevant date.
-
- b) The work must carry prominent notices stating that it is
- released under this License and any conditions added under section
- 7. This requirement modifies the requirement in section 4 to
- "keep intact all notices".
-
- c) You must license the entire work, as a whole, under this
- License to anyone who comes into possession of a copy. This
- License will therefore apply, along with any applicable section 7
- additional terms, to the whole of the work, and all its parts,
- regardless of how they are packaged. This License gives no
- permission to license the work in any other way, but it does not
- invalidate such permission if you have separately received it.
-
- d) If the work has interactive user interfaces, each must display
- Appropriate Legal Notices; however, if the Program has interactive
- interfaces that do not display Appropriate Legal Notices, your
- work need not make them do so.
-
- A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
- 6. Conveying Non-Source Forms.
-
- You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
- a) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by the
- Corresponding Source fixed on a durable physical medium
- customarily used for software interchange.
-
- b) Convey the object code in, or embodied in, a physical product
- (including a physical distribution medium), accompanied by a
- written offer, valid for at least three years and valid for as
- long as you offer spare parts or customer support for that product
- model, to give anyone who possesses the object code either (1) a
- copy of the Corresponding Source for all the software in the
- product that is covered by this License, on a durable physical
- medium customarily used for software interchange, for a price no
- more than your reasonable cost of physically performing this
- conveying of source, or (2) access to copy the
- Corresponding Source from a network server at no charge.
-
- c) Convey individual copies of the object code with a copy of the
- written offer to provide the Corresponding Source. This
- alternative is allowed only occasionally and noncommercially, and
- only if you received the object code with such an offer, in accord
- with subsection 6b.
-
- d) Convey the object code by offering access from a designated
- place (gratis or for a charge), and offer equivalent access to the
- Corresponding Source in the same way through the same place at no
- further charge. You need not require recipients to copy the
- Corresponding Source along with the object code. If the place to
- copy the object code is a network server, the Corresponding Source
- may be on a different server (operated by you or a third party)
- that supports equivalent copying facilities, provided you maintain
- clear directions next to the object code saying where to find the
- Corresponding Source. Regardless of what server hosts the
- Corresponding Source, you remain obligated to ensure that it is
- available for as long as needed to satisfy these requirements.
-
- e) Convey the object code using peer-to-peer transmission, provided
- you inform other peers where the object code and Corresponding
- Source of the work are being offered to the general public at no
- charge under subsection 6d.
-
- A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
- A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling. In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage. For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product. A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
- "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source. The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
- If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
- The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed. Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
- Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
- 7. Additional Terms.
-
- "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
- When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
- Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
- a) Disclaiming warranty or limiting liability differently from the
- terms of sections 15 and 16 of this License; or
-
- b) Requiring preservation of specified reasonable legal notices or
- author attributions in that material or in the Appropriate Legal
- Notices displayed by works containing it; or
-
- c) Prohibiting misrepresentation of the origin of that material, or
- requiring that modified versions of such material be marked in
- reasonable ways as different from the original version; or
-
- d) Limiting the use for publicity purposes of names of licensors or
- authors of the material; or
-
- e) Declining to grant rights under trademark law for use of some
- trade names, trademarks, or service marks; or
-
- f) Requiring indemnification of licensors and authors of that
- material by anyone who conveys the material (or modified versions of
- it) with contractual assumptions of liability to the recipient, for
- any liability that these contractual assumptions directly impose on
- those licensors and authors.
-
- All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
- If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
- Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
- 8. Termination.
-
- You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
- However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
- Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
- Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
- 9. Acceptance Not Required for Having Copies.
-
- You are not required to accept this License in order to receive or
-run a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
- 10. Automatic Licensing of Downstream Recipients.
-
- Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.
-
- An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
- You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
- 11. Patents.
-
- A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".
-
- A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
- Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
- In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
- If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
- If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
- A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License. You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
- Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
- 12. No Surrender of Others' Freedom.
-
- If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all. For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
- 13. Use with the GNU Affero General Public License.
-
- Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
- 14. Revised Versions of this License.
-
- The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time. Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation. If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
- If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
- Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
- 15. Disclaimer of Warranty.
-
- THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
- 16. Limitation of Liability.
-
- IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
- 17. Interpretation of Sections 15 and 16.
-
- If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
- END OF TERMS AND CONDITIONS
-
- How to Apply These Terms to Your New Programs
-
- If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
- To do so, attach the following notices to the program. It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-
- Copyright (C)
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see .
-
-Also add information on how to contact you by electronic and paper mail.
-
- If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
- Copyright (C)
- This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
- This is free software, and you are welcome to redistribute it
- under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License. Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
- You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-.
-
- The GNU General Public License does not permit incorporating your program
-into proprietary programs. If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library. If this is what you want to do, use the GNU Lesser General
-Public License instead of this License. But first, please read
-.
diff --git a/BaS_gcc/COPYING.LESSER b/BaS_gcc/COPYING.LESSER
deleted file mode 100644
index ed88aef..0000000
--- a/BaS_gcc/COPYING.LESSER
+++ /dev/null
@@ -1,330 +0,0 @@
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
- This version of the GNU Lesser General Public License incorporates
-the terms and conditions of version 3 of the GNU General Public
-License, supplemented by the additional permissions listed below.
-
- 0. Additional Definitions.
-
- As used herein, "this License" refers to version 3 of the GNU Lesser
-General Public License, and the "GNU GPL" refers to version 3 of the GNU
-General Public License.
-
- "The Library" refers to a covered work governed by this License,
-other than an Application or a Combined Work as defined below.
-
- An "Application" is any work that makes use of an interface provided
-by the Library, but which is not otherwise based on the Library.
-Defining a subclass of a class defined by the Library is deemed a mode
-of using an interface provided by the Library.
-
- A "Combined Work" is a work produced by combining or linking an
-Application with the Library. The particular version of the Library
-with which the Combined Work was made is also called the "Linked
-Version".
-
- The "Minimal Corresponding Source" for a Combined Work means the
-Corresponding Source for the Combined Work, excluding any source code
-for portions of the Combined Work that, considered in isolation, are
-based on the Application, and not on the Linked Version.
-
- The "Corresponding Application Code" for a Combined Work means the
-object code and/or source code for the Application, including any data
-and utility programs needed for reproducing the Combined Work from the
-Application, but excluding the System Libraries of the Combined Work.
-
- 1. Exception to Section 3 of the GNU GPL.
-
- You may convey a covered work under sections 3 and 4 of this License
-without being bound by section 3 of the GNU GPL.
-
- 2. Conveying Modified Versions.
-
- If you modify a copy of the Library, and, in your modifications, a
-facility refers to a function or data to be supplied by an Application
-that uses the facility (other than as an argument passed when the
-facility is invoked), then you may convey a copy of the modified
-version:
-
- a) under this License, provided that you make a good faith effort to
- ensure that, in the event an Application does not supply the
- function or data, the facility still operates, and performs
- whatever part of its purpose remains meaningful, or
-
- b) under the GNU GPL, with none of the additional permissions of
- this License applicable to that copy.
-
- 3. Object Code Incorporating Material from Library Header Files.
-
- The object code form of an Application may incorporate material from
-a header file that is part of the Library. You may convey such object
-code under terms of your choice, provided that, if the incorporated
-material is not limited to numerical parameters, data structure
-layouts and accessors, or small macros, inline functions and templates
-(ten or fewer lines in length), you do both of the following:
-
- a) Give prominent notice with each copy of the object code that the
- Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the object code with a copy of the GNU GPL and this license
- document.
-
- 4. Combined Works.
-
- You may convey a Combined Work under terms of your choice that,
-taken together, effectively do not restrict modification of the
-portions of the Library contained in the Combined Work and reverse
-engineering for debugging such modifications, if you also do each of
-the following:
-
- a) Give prominent notice with each copy of the Combined Work that
- the Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the Combined Work with a copy of the GNU GPL and this license
- document.
-
- c) For a Combined Work that displays copyright notices during
- execution, include the copyright notice for the Library among
- these notices, as well as a reference directing the user to the
- copies of the GNU GPL and this license document.
-
- d) Do one of the following:
-
- 0) Convey the Minimal Corresponding Source under the terms of this
- License, and the Corresponding Application Code in a form
- suitable for, and under terms that permit, the user to
- recombine or relink the Application with a modified version of
- the Linked Version to produce a modified Combined Work, in the
- manner specified by section 6 of the GNU GPL for conveying
- Corresponding Source.
-
- 1) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (a) uses at run time
- a copy of the Library already present on the user's computer
- system, and (b) will operate properly with a modified version
- of the Library that is interface-compatible with the Linked
- Version.
-
- e) Provide Installation Information, but only if you would otherwise
- be required to provide such information under section 6 of the
- GNU GPL, and only to the extent that such information is
- necessary to install and execute a modified version of the
- Combined Work produced by recombining or relinking the
- Application with a modified version of the Linked Version. (If
- you use option 4d0, the Installation Information must accompany
- the Minimal Corresponding Source and Corresponding Application
- Code. If you use option 4d1, you must provide the Installation
- Information in the manner specified by section 6 of the GNU GPL
- for conveying Corresponding Source.)
-
- 5. Combined Libraries.
-
- You may place library facilities that are a work based on the
-Library side by side in a single library together with other library
-facilities that are not Applications and are not covered by this
-License, and convey such a combined library under terms of your
-choice, if you do both of the following:
-
- a) Accompany the combined library with a copy of the same work based
- on the Library, uncombined with any other library facilities,
- conveyed under the terms of this License.
-
- b) Give prominent notice with the combined library that part of it
- is a work based on the Library, and explaining where to find the
- accompanying uncombined form of the same work.
-
- 6. Revised Versions of the GNU Lesser General Public License.
-
- The Free Software Foundation may publish revised and/or new versions
-of the GNU Lesser General Public License from time to time. Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Library as you received it specifies that a certain numbered version
-of the GNU Lesser General Public License "or any later version"
-applies to it, you have the option of following the terms and
-conditions either of that published version or of any later version
-published by the Free Software Foundation. If the Library as you
-received it does not specify a version number of the GNU Lesser
-General Public License, you may choose any version of the GNU Lesser
-General Public License ever published by the Free Software Foundation.
-
- If the Library as you received it specifies that a proxy can decide
-whether future versions of the GNU Lesser General Public License shall
-apply, that proxy's public statement of acceptance of any version is
-permanent authorization for you to choose that version for the
-Library.
- GNU LESSER GENERAL PUBLIC LICENSE
- Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc.
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-
- This version of the GNU Lesser General Public License incorporates
-the terms and conditions of version 3 of the GNU General Public
-License, supplemented by the additional permissions listed below.
-
- 0. Additional Definitions.
-
- As used herein, "this License" refers to version 3 of the GNU Lesser
-General Public License, and the "GNU GPL" refers to version 3 of the GNU
-General Public License.
-
- "The Library" refers to a covered work governed by this License,
-other than an Application or a Combined Work as defined below.
-
- An "Application" is any work that makes use of an interface provided
-by the Library, but which is not otherwise based on the Library.
-Defining a subclass of a class defined by the Library is deemed a mode
-of using an interface provided by the Library.
-
- A "Combined Work" is a work produced by combining or linking an
-Application with the Library. The particular version of the Library
-with which the Combined Work was made is also called the "Linked
-Version".
-
- The "Minimal Corresponding Source" for a Combined Work means the
-Corresponding Source for the Combined Work, excluding any source code
-for portions of the Combined Work that, considered in isolation, are
-based on the Application, and not on the Linked Version.
-
- The "Corresponding Application Code" for a Combined Work means the
-object code and/or source code for the Application, including any data
-and utility programs needed for reproducing the Combined Work from the
-Application, but excluding the System Libraries of the Combined Work.
-
- 1. Exception to Section 3 of the GNU GPL.
-
- You may convey a covered work under sections 3 and 4 of this License
-without being bound by section 3 of the GNU GPL.
-
- 2. Conveying Modified Versions.
-
- If you modify a copy of the Library, and, in your modifications, a
-facility refers to a function or data to be supplied by an Application
-that uses the facility (other than as an argument passed when the
-facility is invoked), then you may convey a copy of the modified
-version:
-
- a) under this License, provided that you make a good faith effort to
- ensure that, in the event an Application does not supply the
- function or data, the facility still operates, and performs
- whatever part of its purpose remains meaningful, or
-
- b) under the GNU GPL, with none of the additional permissions of
- this License applicable to that copy.
-
- 3. Object Code Incorporating Material from Library Header Files.
-
- The object code form of an Application may incorporate material from
-a header file that is part of the Library. You may convey such object
-code under terms of your choice, provided that, if the incorporated
-material is not limited to numerical parameters, data structure
-layouts and accessors, or small macros, inline functions and templates
-(ten or fewer lines in length), you do both of the following:
-
- a) Give prominent notice with each copy of the object code that the
- Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the object code with a copy of the GNU GPL and this license
- document.
-
- 4. Combined Works.
-
- You may convey a Combined Work under terms of your choice that,
-taken together, effectively do not restrict modification of the
-portions of the Library contained in the Combined Work and reverse
-engineering for debugging such modifications, if you also do each of
-the following:
-
- a) Give prominent notice with each copy of the Combined Work that
- the Library is used in it and that the Library and its use are
- covered by this License.
-
- b) Accompany the Combined Work with a copy of the GNU GPL and this license
- document.
-
- c) For a Combined Work that displays copyright notices during
- execution, include the copyright notice for the Library among
- these notices, as well as a reference directing the user to the
- copies of the GNU GPL and this license document.
-
- d) Do one of the following:
-
- 0) Convey the Minimal Corresponding Source under the terms of this
- License, and the Corresponding Application Code in a form
- suitable for, and under terms that permit, the user to
- recombine or relink the Application with a modified version of
- the Linked Version to produce a modified Combined Work, in the
- manner specified by section 6 of the GNU GPL for conveying
- Corresponding Source.
-
- 1) Use a suitable shared library mechanism for linking with the
- Library. A suitable mechanism is one that (a) uses at run time
- a copy of the Library already present on the user's computer
- system, and (b) will operate properly with a modified version
- of the Library that is interface-compatible with the Linked
- Version.
-
- e) Provide Installation Information, but only if you would otherwise
- be required to provide such information under section 6 of the
- GNU GPL, and only to the extent that such information is
- necessary to install and execute a modified version of the
- Combined Work produced by recombining or relinking the
- Application with a modified version of the Linked Version. (If
- you use option 4d0, the Installation Information must accompany
- the Minimal Corresponding Source and Corresponding Application
- Code. If you use option 4d1, you must provide the Installation
- Information in the manner specified by section 6 of the GNU GPL
- for conveying Corresponding Source.)
-
- 5. Combined Libraries.
-
- You may place library facilities that are a work based on the
-Library side by side in a single library together with other library
-facilities that are not Applications and are not covered by this
-License, and convey such a combined library under terms of your
-choice, if you do both of the following:
-
- a) Accompany the combined library with a copy of the same work based
- on the Library, uncombined with any other library facilities,
- conveyed under the terms of this License.
-
- b) Give prominent notice with the combined library that part of it
- is a work based on the Library, and explaining where to find the
- accompanying uncombined form of the same work.
-
- 6. Revised Versions of the GNU Lesser General Public License.
-
- The Free Software Foundation may publish revised and/or new versions
-of the GNU Lesser General Public License from time to time. Such new
-versions will be similar in spirit to the present version, but may
-differ in detail to address new problems or concerns.
-
- Each version is given a distinguishing version number. If the
-Library as you received it specifies that a certain numbered version
-of the GNU Lesser General Public License "or any later version"
-applies to it, you have the option of following the terms and
-conditions either of that published version or of any later version
-published by the Free Software Foundation. If the Library as you
-received it does not specify a version number of the GNU Lesser
-General Public License, you may choose any version of the GNU Lesser
-General Public License ever published by the Free Software Foundation.
-
- If the Library as you received it specifies that a proxy can decide
-whether future versions of the GNU Lesser General Public License shall
-apply, that proxy's public statement of acceptance of any version is
-permanent authorization for you to choose that version for the
-Library.
diff --git a/BaS_gcc/Makefile b/BaS_gcc/Makefile
deleted file mode 100644
index 0645cee..0000000
--- a/BaS_gcc/Makefile
+++ /dev/null
@@ -1,361 +0,0 @@
-# Makefile for Firebee BaS
-#
-# This Makefile is meant for cross compiling the BaS with Vincent Riviere's cross compilers.
-# If you want to compile native on an Atari (you will need at least GCC 4.6.3), set
-# TCPREFIX to be empty.
-#
-# If you want to compile with the m68k-elf- toolchain, set TCPREFIX accordingly. Requires an extra
-# installation, but allows source level debugging over BDM with a recent gdb (tested with 7.5),
-# the m68k BDM tools from sourceforge (http://bdm.sourceforge.net) and a BDM pod (TBLCF and P&E tested).
-
-
-ifneq (yes,$(VERBOSE))
-Q=@
-else
-Q=
-endif
-
-# can be either "Y" or "N" (without quotes). "Y" for using the m68k-elf-, "N" for using the m68k-atari-mint
-# toolchain
-COMPILE_ELF=Y
-
-ifeq (Y,$(COMPILE_ELF))
-TCPREFIX=m68k-elf-
-EXE=elf
-FORMAT=elf32-m68k
-else
-TCPREFIX=m68k-atari-mint-
-EXE=s19
-FORMAT=srec
-endif
-
-CC=$(TCPREFIX)gcc
-LD=$(TCPREFIX)ld
-CPP=$(TCPREFIX)cpp
-OBJCOPY=$(TCPREFIX)objcopy
-AR=$(TCPREFIX)ar
-RANLIB=$(TCPREFIX)ranlib
-NATIVECC=gcc
-
-ifeq (Y,$(COMPILE_ELF))
-LDLIBS=-lgcc
-else
-LDLIBS=-lgcc
-endif
-
-INCLUDE=-Iinclude
-CFLAGS= -Wall \
- -O2 \
- -fomit-frame-pointer \
- -ffreestanding \
- -fno-strict-aliasing \
- -fleading-underscore \
- -Winline \
- -Wa,--register-prefix-optional
-
-CFLAGS_OPTIMIZED = -mcpu=5474 \
- -Wall \
- -O2 \
- -fomit-frame-pointer \
- -ffreestanding \
- -fleading-underscore \
- -Wa,--register-prefix-optional
-LDFLAGS=
-
-TRGTDIRS= ./firebee ./m54455 ./m5484lite
-OBJDIRS=$(patsubst %, %/objs,$(TRGTDIRS))
-TOOLDIR=util
-
-VPATH=dma exe flash fs i2c if kbd pci spi sys usb net util video radeon x86emu xhdi
-
-# Linker control file. The final $(LDCFILE) is intermediate only (preprocessed version of $(LDCSRC)
-LDCFILE=bas.lk
-LDRFILE=ram.lk
-LDCSRC=bas.lk.in
-LDCBSRC=basflash.lk.in
-LDCBFS=basflash.lk
-
-# this Makefile can create the BaS to flash or an arbitrary ram address (for BDM debugging). See
-# below for the definition of TARGET_ADDRESS
-FLASH_EXEC=bas.$(EXE)
-RAM_EXEC=ram.$(EXE)
-BASFLASH_EXEC=basflash.$(EXE)
-
-CSRCS= \
- sysinit.c \
- init_fpga.c \
- fault_vectors.c \
- interrupts.c \
- \
- bas_printf.c \
- bas_string.c \
- conout.c \
- \
- BaS.c \
- cache.c \
- mmu.c \
- mmc.c \
- unicode.c \
- ff.c \
- sd_card.c \
- wait.c \
- s19reader.c \
- flash.c \
- dma.c \
- i2c.c \
- xhdi_sd.c \
- xhdi_interface.c \
- pci.c \
- pci_errata.c \
- dspi.c \
- driver_vec.c \
- driver_mem.c \
- \
- MCD_dmaApi.c \
- MCD_tasks.c \
- MCD_tasksInit.c \
- \
- usb.c \
- ohci-hcd.c \
- ehci-hcd.c \
- usb_hub.c \
- usb_mouse.c \
- usb_kbd.c \
- ikbd.c \
- \
- nbuf.c \
- queue.c \
- net_timer.c \
- am79c874.c \
- bcm5222.c \
- nif.c \
- fecbd.c \
- fec.c \
- ip.c \
- udp.c \
- arp.c \
- bootp.c \
- tftp.c \
- \
- fbmem.c \
- fbmon.c \
- fbmodedb.c \
- offscreen.c \
- \
- videl.c \
- video.c \
- \
- i2c-algo-bit.c \
- \
- radeon_base.c \
- radeon_accel.c \
- radeon_cursor.c \
- radeon_monitor.c \
- radeon_i2c.c \
- fnt_st_8x16.c \
- \
- x86emu.c \
- x86pcibios.c \
- x86biosemu.c \
- x86emu_util.c \
- \
- basflash.c \
- basflash_start.c
-
-
-ASRCS= \
- startcf.S \
- exceptions.S \
- setjmp.S \
- xhdi_vec.S \
- pci_wrappers.S
-
-ifeq (Y,$(COMPILE_ELF)) # needed for __ vs ___ kludge
- ASRCS += libgcc_helper.S
-endif
-
-SRCS=$(ASRCS) $(CSRCS)
-COBJS=$(patsubst %.c,%.o,$(CSRCS))
-AOBJS=$(patsubst %.S,%.o,$(ASRCS))
-
-OBJS=$(COBJS) $(AOBJS)
-LIBBAS=libbas.a
-
-LIBS=$(patsubst %,%/$(LIBBAS),$(TRGTDIRS))
-
-all: ver fls ram bfl lib tos
-fls: $(patsubst %,%/$(FLASH_EXEC),$(TRGTDIRS))
-ram: $(patsubst %,%/$(RAM_EXEC),$(TRGTDIRS))
-bfl: $(patsubst %,%/$(BASFLASH_EXEC),$(TRGTDIRS))
-lib: $(LIBS)
-
-.PHONY: ver
-ver:
- touch include/version.h
-
-.PHONY: tos
-tos:
- $(Q)(cd tos; $(MAKE) -s)
-
-.PHONY: clean
-clean:
- $(Q)for d in $(TRGTDIRS);\
- do rm -f $$d/*.map $$d/*.s19 $$d/*.elf $$d/*.lk $$d/*.a $$d/objs/* $$d/depend;\
- done
- $(Q)rm -f tags
- $(Q)(cd tos; make -s clean)
-
-
-
-# flags for targets
-m5484lite/bas.$(EXE): MACHINE=MACHINE_M5484LITE
-m54455/bas.$(EXE): MACHINE=MACHINE_M54455
-firebee/bas.$(EXE): MACHINE=MACHINE_FIREBEE
-
-m5484lite/ram.$(EXE): MACHINE=MACHINE_M5484LITE
-m54455/ram.$(EXE): MACHINE=MACHINE_M54455
-firebee/ram.$(EXE): MACHINE=MACHINE_FIREBEE
-
-m5484lite/basflash.$(EXE): MACHINE=MACHINE_M5484LITE
-m54455/basflash.$(EXE): MACHINE=MACHINE_M54455
-firebee/basflash.$(EXE): MACHINE=MACHINE_FIREBEE
-
-m5484lite/bas.$(EXE): CFLAGS += -mcpu=5484
-m54455/bas.$(EXE): CFLAGS += -mcpu=54455 -msoft-float
-firebee/bas.$(EXE): CFLAGS += -mcpu=5474
-
-m5484lite/ram.$(EXE): CFLAGS += -mcpu=5484
-m54455/ram.$(EXE): CFLAGS += -mcpu=54455 -msoft-float
-firebee/ram.$(EXE): CFLAGS += -mcpu=5474
-
-m5484lite/basflash.$(EXE): CFLAGS += -mcpu=5484
-m54455/basflash.$(EXE): CFLAGS += -mcpu=54455 -msoft-float
-firebee/basflash.$(EXE): CFLAGS += -mcpu=5474
-
-#
-# generate pattern rules for different object files
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:%.c
- $(Q)echo CC $$<
- $(Q)$(CC) $$(CFLAGS) -D$$(MACHINE) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:%.S
- $(Q)echo CC $$<
- $(Q)$(CC) $$(CFLAGS) -Wa,--bitwise-or -D$$(MACHINE) $(INCLUDE) -c $$< -o $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-# rules for depend
-define DEP_TEMPLATE
-ifneq (clean,$$(MAKECMDGOALS))
-include $(1)/depend
-endif
-
-ifeq (firebee,$(1))
- MACHINE=MACHINE_FIREBEE
-else
- MACHINE=MACHINE_M5484LITE
-endif
-$(1)/depend:$(SRCS)
- $(Q)echo DEPEND
- $(Q)$(CC) $$(CFLAGS) -D$$(MACHINE) $(INCLUDE) -M $$^ | sed -e "s#^\(.*\).o:#"$(1)"/objs/\1.o:#" > $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call DEP_TEMPLATE,$(DIR))))
-
-
-#
-# generate pattern rules for libraries
-#
-define AR_TEMPLATE
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(LIBBAS): $$($(1)_OBJS)
- $(Q)echo AR $$@
- $(Q)$(AR) r $$@ $$?
- $(Q)$(RANLIB) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call AR_TEMPLATE,$(DIR))))
-
-ifeq ($(COMPILE_ELF),Y)
- FORMAT_ELF=1
-else
- FORMAT_ELF=0
-endif
-
-define LK_TEMPLATE
-$(1)/$$(LDCFILE): $(LDCSRC)
- $(Q)echo CPP $$<
- $(Q)$(CPP) $(INCLUDE) -DOBJDIR=$(1)/objs -P -DFORMAT_ELF=$(FORMAT_ELF) -D$$(MACHINE) $$< -o $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call LK_TEMPLATE,$(DIR))))
-
-#
-# define pattern rules for binaries
-#
-define EX_TEMPLATE
-# pattern rule for flash
-$(1)_MAPFILE=$(1)/$$(basename $$(FLASH_EXEC)).map
-$(1)/$$(FLASH_EXEC): $(1)/$(LIBBAS) $(1)/$$(LDCFILE)
- $(Q)echo CC $$@
- $(Q)$(CC) $$(CFLAGS) -nostdlib -Wl,--oformat -Wl,$$(FORMAT) -Wl,-Map -Wl,$$($(1)_MAPFILE) -Wl,--cref -Wl,-T -Wl,$(1)/$$(LDCFILE) $(LDLIBS) -o $$@
-ifeq ($(COMPILE_ELF),Y)
- $(Q)echo OBJCOPY $$@
- $(Q)$(OBJCOPY) -O srec $$@ $$(basename $$@).s19
-else
- $(Q)echo OBJCOPY $$@
- $(Q)objcopy -I srec -O elf32-big --alt-machine-code 4 $$@ $$(basename $$@).elf
-endif
-
-# pattern rule for RAM
-$(1)_MAPFILE_RAM=$(1)/$$(basename $$(RAM_EXEC)).map
-$(1)/$$(RAM_EXEC): $(1)/$(LIBBAS) $(1)/$$(LDCFILE)
- $(Q)echo CPP $$@
- $(Q)$(CPP) $(INCLUDE) -DCOMPILE_RAM -DOBJDIR=$(1)/objs -P -DFORMAT_ELF=$(FORMAT_ELF) -D$$(MACHINE) $(LDCSRC) -o $(1)/$$(LDRFILE)
- $(Q)echo CC $$@
- $(Q)$(CC) $$(CFLAGS) -nostdlib -Wl,--oformat -Wl,$$(FORMAT) -Wl,-Map -Wl,$$($(1)_MAPFILE_RAM) -Wl,--cref -Wl,-T -Wl,$(1)/$$(LDRFILE) $(LDLIBS) -o $$@
-ifeq ($(COMPILE_ELF),Y)
- $(Q)echo OBJCOPY $$@
- $(Q)$(OBJCOPY) -O srec $$@ $$(basename $$@).s19
-else
- $(Q)echo OBJCOPY $$<
- $(Q)objcopy -I srec -O elf32-big --alt-machine-code 4 $$@ $$(basename $$@).elf
-endif
-
-# pattern rule for basflash
-$(1)_MAPFILE_BFL=$(1)/$$(basename $$(BASFLASH_EXEC)).map
-$(1)/$$(BASFLASH_EXEC): $(1)/objs/basflash.o $(1)/objs/basflash_start.o $(1)/$(LIBBAS) $(LDCBFL)
- $(Q)echo CPP $$<
- $(CPP) $(INCLUDE) -P -DOBJDIR=$(1)/objs -DFORMAT_ELF=$(FORMAT_ELF) -D$$(MACHINE) $(LDCBSRC) -o $(1)/$$(LDCBFS)
- $(Q)echo CC $$<
- $(Q)$(CC) -nostdlib -Wl,--oformat -Wl,$$(FORMAT) -Wl,-Map -Wl,$$($(1)_MAPFILE_BFL) -Wl,--cref -Wl,-T -Wl,$(1)/$$(LDCBFS) -L$(1) -lbas $(LDLIBS) -o $$@
-ifeq ($(COMPILE_ELF),Y)
- $(Q)echo OBJCOPY $$<
- $(Q)$(OBJCOPY) -O srec $$@ $$(basename $$@).s19
-else
- $(Q)echo OBJCOPY $$<
- $(Q)objcopy -I srec -O elf32-big --alt-machine-code 4 $$@ $$(basename $$@).elf
-endif
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call EX_TEMPLATE,$(DIR))))
-
-
-indent: $(CSRCS)
- indent $<
-
-.PHONY: tags
-tags:
- ctags $(patsubst %,%/*,$(VPATH))
-
-.PHONY: printvars
-printvars:
- $(Q)$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-ifeq (MACHINE_M5484LITE,$$(MACHINE))
- MNAME=m5484lite
-else ifeq (MACHINE_FIREBEE,$(MACHINE))
- MNAME=firebee
-endif
-
-tools:
- $(NATIVECC) $(INCLUDE) -c $(TOOLDIR)/s19header.c -o $(TOOLDIR)/s19header.o
- $(NATIVECC) -o $(TOOLDIR)/s19header $(TOOLDIR)/s19header.o
-
diff --git a/BaS_gcc/bas.lk.in b/BaS_gcc/bas.lk.in
deleted file mode 100644
index 9092496..0000000
--- a/BaS_gcc/bas.lk.in
+++ /dev/null
@@ -1,282 +0,0 @@
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-# include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine!"
-#endif /* MACHINE_M5484LITE */
-
-/* make bas_rom access flags rx if compiling to RAM */
-#ifdef COMPILE_RAM
-#define ROMFLAGS WX
-#else
-#define ROMFLAGS RX
-#endif /* COMPILE_RAM */
-
-MEMORY
-{
- bas_rom (ROMFLAGS) : ORIGIN = TARGET_ADDRESS, LENGTH = 0x00100000
- /*
- * target to copy BaS data segment to. 1M should be enough for now
- */
- bas_ram (WX) : ORIGIN = SDRAM_START + SDRAM_SIZE - 0x00200000, LENGTH = 0x00100000
- /*
- * driver_ram is an uncached, reserved memory area for drivers (e.g. USB) that need this type of memory
- */
- driver_ram (WX) : ORIGIN = SDRAM_START + SDRAM_SIZE - 0x00100000, LENGTH = 0x00100000
-}
-
-SECTIONS
-{
- /* BaS in ROM */
- .text :
- {
- OBJDIR/startcf.o(.text) /* this one is the entry point so it must be the first */
-
- OBJDIR/sysinit.o(.text)
- OBJDIR/fault_vectors.o(.text)
-#ifdef MACHINE_FIREBEE
- OBJDIR/init_fpga.o(.text)
-#endif /* MACHINE_FIREBEE */
- OBJDIR/wait.o(.text)
- OBJDIR/exceptions.o(.text)
- OBJDIR/setjmp.o(.text)
- OBJDIR/driver_vec.o(.text)
- OBJDIR/interrupts.o(.text)
- OBJDIR/mmu.o(.text)
-
- OBJDIR/BaS.o(.text)
- OBJDIR/pci.o(.text)
- . = ALIGN(16);
- OBJDIR/pci_errata.o(.text)
- OBJDIR/pci_wrappers.o(.text)
- OBJDIR/usb.o(.text)
- OBJDIR/driver_mem.o(.text)
- OBJDIR/usb_hub.o(.text)
- OBJDIR/usb_mouse.o(.text)
- OBJDIR/usb_kbd.o(.text)
- OBJDIR/ohci-hcd.o(.text)
- OBJDIR/ehci-hcd.o(.text)
- OBJDIR/wait.o(.text)
-
- OBJDIR/nbuf.o(.text)
- OBJDIR/net_timer.o(.text)
- OBJDIR/queue.o(.text)
- OBJDIR/nif.o(.text)
- OBJDIR/fecbd.o(.text)
- OBJDIR/fec.o(.text)
- OBJDIR/am79c874.o(.text)
- OBJDIR/bcm5222.o(.text)
- OBJDIR/ip.o(.text)
- OBJDIR/udp.o(text)
- OBJDIR/bootp.o(text)
- OBJDIR/tftp.o(text)
- OBJDIR/arp.o(text)
-
- OBJDIR/unicode.o(.text)
- OBJDIR/mmc.o(.text)
- OBJDIR/ff.o(.text)
- OBJDIR/sd_card.o(.text)
- OBJDIR/s19reader.o(.text)
- OBJDIR/bas_printf.o(.text)
- OBJDIR/bas_string.o(.text)
- OBJDIR/conout.o(.text)
-#if (FORMAT_ELF == 1)
- OBJDIR/libgcc_helper.o(.text)
-#endif
- OBJDIR/cache.o(.text)
- OBJDIR/dma.o(.text)
- OBJDIR/MCD_dmaApi.o(.text)
- OBJDIR/MCD_tasks.o(.text)
- OBJDIR/MCD_tasksInit.o(.text)
-
- OBJDIR/video.o(.text)
- OBJDIR/videl.o(.text)
- OBJDIR/fbmem.o(.text)
- OBJDIR/fbmon.o(.text)
- OBJDIR/fbmodedb.o(.text)
- OBJDIR/fnt_st_8x16.o(.text)
- OBJDIR/offscreen.o(.text)
-
- OBJDIR/x86emu.o(.text)
- OBJDIR/x86emu_util.o(.text)
- OBJDIR/x86pcibios.o(.text)
- OBJDIR/x86biosemu.o(.text)
-
- OBJDIR/i2c-algo-bit.o(.text)
-
- OBJDIR/radeon_base.o(.text)
- OBJDIR/radeon_accel.o(.text)
- OBJDIR/radeon_cursor.o(.text)
- OBJDIR/radeon_monitor.o(.text)
- OBJDIR/radeon_i2c.o(.text)
-
- OBJDIR/xhdi_sd.o(.text)
- OBJDIR/xhdi_interface.o(.text)
- OBJDIR/xhdi_vec.o(.text)
-
-#ifdef COMPILE_RAM
- /*
- * if we compile to RAM anyway, there is no need to copy anything
- */
- . = ALIGN(4);
- __BAS_DATA_START = .;
- *(.data)
- __BAS_DATA_END = .;
- __BAS_BSS_START = .;
- *(.bss)
- __BAS_BSS_END = .;
-#endif /* COMPILE_RAM */
-
-#if (FORMAT_ELF == 1)
- *(.eh_frame)
- *(.rodata)
- *(.rodata.*)
-#endif
- } > bas_rom
-
-
-#if (TARGET_ADDRESS == BOOTFLASH_BASE_ADDRESS)
- /*
- * put BaS .data and .bss segments to flash, but relocate it to RAM after initialize_hardware() ran
- */
- .bas :
- AT (ALIGN(ADDR(.text) + SIZEOF(.text), 4))
- {
- . = ALIGN(4); /* same alignment than AT() statement! */
- __BAS_DATA_START = .;
- *(.data)
- __BAS_DATA_END = .;
- __BAS_BSS_START = .;
- *(.bss)
- __BAS_BSS_END = .;
-
- . = ALIGN(16);
- } > bas_ram
-#endif
-
- .driver_memory :
- {
- . = ALIGN(4);
- _driver_mem_buffer = .;
- //. = . + DRIVER_MEM_BUFFER_SIZE;
- } > driver_ram
-
- /*
- * Global memory map
- */
-
- /* SDRAM Initialization */
- ___SDRAM = SDRAM_START;
- ___SDRAM_SIZE = SDRAM_SIZE;
- _SDRAM_VECTOR_TABLE = ___SDRAM;
-
- /* ST-RAM */
- __STRAM = ___SDRAM;
- __STRAM_END = __TOS;
-
- /* TOS */
- __TOS = 0x00e00000;
-
- /* FastRAM */
- __FASTRAM = 0x10000000;
- __TARGET_ADDRESS = TARGET_ADDRESS;
-
-#if TARGET_ADDRESS == BOOTFLASH_BASE_ADDRESS
- __FASTRAM_END = __BAS_IN_RAM;
-#else
- __FASTRAM_END = TARGET_ADDRESS;
-#endif
- __FASTRAM_SIZE = __FASTRAM_END - __FASTRAM;
-
- /* Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes) */
- ___BOOT_FLASH = BOOTFLASH_BASE_ADDRESS;
- ___BOOT_FLASH_SIZE = BOOTFLASH_SIZE;
-
-#if TARGET_ADDRESS == BOOTFLASH_BASE_ADDRESS
- /* BaS */
- __BAS_LMA = LOADADDR(.bas);
- __BAS_IN_RAM = ADDR(.bas);
- __BAS_SIZE = SIZEOF(.bas);
-#else
- /* BaS is already in RAM - no need to copy anything */
- __BAS_IN_RAM = __FASTRAM_END;
- __BAS_SIZE = 0;
- __BAS_LMA = __BAS_IN_RAM;
-#endif
-
- /* Other flash components */
- __FIRETOS = 0xe0400000;
- __EMUTOS = EMUTOS_BASE_ADDRESS;
- __EMUTOS_SIZE = 0x00100000;
-
- /* where FPGA data lives in flash */
- __FPGA_CONFIG = 0xe0700000;
- __FPGA_CONFIG_SIZE = 0x100000;
-
- /* VIDEO RAM BASIS */
- __VRAM = 0x60000000;
-
- /* Memory mapped registers */
- __MBAR = 0xFF000000;
-
- /* 32KB on-chip System SRAM */
- __SYS_SRAM = __MBAR + 0x10000;
- __SYS_SRAM_SIZE = 0x00008000;
-
- /* MMU memory mapped registers */
- __MMUBAR = 0xFF040000;
-
-#if !defined(MACHINE_M54455) /* MCF54455 does not have RAMBAR0 and RAMBAR1 registers */
- /*
- * 4KB on-chip Core SRAM0: -> exception table
- */
- __RAMBAR0 = 0xFF100000;
- __RAMBAR0_SIZE = 0x00001000;
-
- /* 4KB on-chip Core SRAM1 */
- __RAMBAR1 = 0xFF101000;
- __RAMBAR1_SIZE = 0x00001000;
- __SUP_SP = __RAMBAR1 + __RAMBAR1_SIZE - 4;
-#else
- __RAMBAR0 = 0x80000000; /* RAMBAR must be between 0x80000000 on MCF54455 */
- __RAMBAR0_SIZE = 0x1000;
- __SUP_SP = __RAMBAR0 + __RAMBAR0_SIZE + 0x1000 - 4;
-#endif
-
- /*
- * FPGA_JTAG_LOADED (if 1) indicates that FPGA configuration has been loaded through JTAG
- * and shouldn't be overwritten on boot. For this to work (and not let us be faked
- * by a random uninitialised value), __FPGA_JTAG_VALID is used as a "magic value" and must be
- * 0xaffeaffe to make this work.
- */
-#if !defined(MACHINE_M54455) /* MCF54455 does not have RAMBAR0 and RAMBAR1 */
- __FPGA_JTAG_LOADED = __RAMBAR1;
- __FPGA_JTAG_VALID = __RAMBAR1 + 4;
-#else
- __FPGA_JTAG_LOADED = __RAMBAR0 + 0x1000;
- __FPGA_JTAG_VALID = __RAMBAR0 + 0x1000 + 4;
-#endif
-
- /* system variables */
- /* RAMBAR0 0 to 0x7FF -> exception vectors */
- _rt_mod = __RAMBAR0 + 0x800;
- _rt_ssp = __RAMBAR0 + 0x804;
- _rt_usp = __RAMBAR0 + 0x808;
- _rt_vbr = __RAMBAR0 + 0x80C; /* (8)01 */
- _rt_cacr = __RAMBAR0 + 0x810; /* 002 */
- _rt_asid = __RAMBAR0 + 0x814; /* 003 */
- _rt_acr0 = __RAMBAR0 + 0x818; /* 004 */
- _rt_acr1 = __RAMBAR0 + 0x81c; /* 005 */
- _rt_acr2 = __RAMBAR0 + 0x820; /* 006 */
- _rt_acr3 = __RAMBAR0 + 0x824; /* 007 */
- _rt_mmubar = __RAMBAR0 + 0x828; /* 008 */
- _rt_sr = __RAMBAR0 + 0x82c;
- _d0_save = __RAMBAR0 + 0x830;
- _a7_save = __RAMBAR0 + 0x834;
- _video_tlb = __RAMBAR0 + 0x838;
- _video_sbt = __RAMBAR0 + 0x83C;
- _rt_mbar = __RAMBAR0 + 0x844; /* (c)0f */
-}
diff --git a/BaS_gcc/bas_firebee.bdm b/BaS_gcc/bas_firebee.bdm
deleted file mode 100755
index 116fb57..0000000
--- a/BaS_gcc/bas_firebee.bdm
+++ /dev/null
@@ -1,68 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2 -v9 -d9
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-sleep 10
-
-# Turn on MBAR at 0xFF00_0000
-write-ctrl 0x0C0F 0xFF000000
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-
-# Turn on RAMBAR0 at address FF10_0000
-write-ctrl 0x0C04 0xFF100007
-
-# Turn on RAMBAR1 at address FF10_1000 (disabled - not mapped by bdm currently)
-write-ctrl 0x0C05 0xFF101001
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00041180 4
-write 0xFF000504 0x007F0001 4
-wait
-
-# Init CS1 (Atari I/O address range)
-write 0xFF00050C 0xFFF00000 4
-write 0xFF000514 0x00002180 4
-write 0xFF000510 0x000F0001 4
-# Init CS2 (FireBee 32 bit I/O address range)
-write 0xFF000518 0xF0000000 4
-write 0xFF000520 0x00002100 4
-write 0xFF00051C 0x07FF0001 4
-# Init CS3 (FireBee 16 bit I/O address range)
-write 0xFF000524 0xF8000000 4
-write 0xFF00052C 0x00000180 4
-write 0xFF000528 0x03FF0001 4
-# Init CS4 (FireBee video address range)
-write 0xFF000530 0x40000000 4
-write 0xFF000538 0x00000018 4
-write 0xFF000534 0x003F0001 4
-
-
-# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x0000001A 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x0800001A 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x1000001A 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x1800001A 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73622830 4 # SDCFG1
-write 0xFF00010C 0x46770000 4 # SDCFG2
-
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x048D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x008D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 100
-
-load -v firebee/ram.elf
-
-execute
-wait
diff --git a/BaS_gcc/bas_m5484.bdm b/BaS_gcc/bas_m5484.bdm
deleted file mode 100755
index 59a40a8..0000000
--- a/BaS_gcc/bas_m5484.bdm
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2 -v9 -d9
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-sleep 10
-
-wait
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-dump-register VBR
-
-# Turn on MBAR at 0xFF00_0000
-write-ctrl 0x0C0F 0xFF000000
-dump-register MBAR
-
-# Turn on RAMBAR0 at address FF10_0000
-write-ctrl 0x0C04 0xFF100007
-
-# Turn on RAMBAR1 at address FF10_1000 (disabled - not mapped by bdm currently)
-write-ctrl 0x0C05 0xFF101001
-
-# Init CS0 (BootFLASH @ E000_0000 - E03F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00041180 4
-write 0xFF000504 0x003F0001 4
-wait
-
-# SDRAM Initialization @ 0000_0000 - 0400_0000 64 MBytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x00000019 4 # SDRAM CS0 configuration (64Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x00000000 4 # SDRAM CS1 configuration
-write 0xFF000028 0x00000000 4 # SDRAM CS2 configuration
-write 0xFF00002C 0x00000000 4 # SDRAM CS3 configuration
-
-write 0xFF000108 0x73711630 4 # SDCFG1
-write 0xFF00010C 0x46370000 4 # SDCFG2
-
-write 0xFF000104 0xE10B0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x058D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x018D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 100
-
-load -v m5484lite/ram.elf
-execute
-# wait is _needed_ here if using the P&E BDM interface. Otherwise
-# the Coldfire resets after some time!
-wait
diff --git a/BaS_gcc/basflash.lk.in b/BaS_gcc/basflash.lk.in
deleted file mode 100644
index 290b7e7..0000000
--- a/BaS_gcc/basflash.lk.in
+++ /dev/null
@@ -1,115 +0,0 @@
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error unknown machine
-#endif
-
-MEMORY
-{
- flasher (WX) : ORIGIN = BFL_TARGET_ADDRESS, LENGTH = 0x00100000 /* target to load basflash */
-}
-
-SECTIONS
-{
- .text :
- {
- OBJDIR/basflash_start.o(.text)
- OBJDIR/basflash.o(.text)
-
- *(.data)
- *(.bss)
- *(.rodata)
- *(.rodata.*)
- } > flasher
-
- .bas :
- {
- }
-
- #define BAS_LABEL_LMA(x) ((x))
- /* _xprintf_before_copy = BAS_LABEL_LMA(_xprintf); */
- /* _display_progress_before_copy = BAS_LABEL_LMA(_display_progress); */
- /* _flush_and_invalidate_caches_before_copy = BAS_LABEL_LMA(_flush_and_invalidate_caches); */
-
- /*
- * Global memory map
- */
-
- /* SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes */
- ___SDRAM = 0x00000000;
- ___SDRAM_SIZE = 0x20000000;
-
- /* ST-RAM */
- __STRAM = ___SDRAM;
- __STRAM_END = __TOS;
-
- /* TOS */
- __TOS = 0x00e00000;
-
- /* FastRAM */
- __FASTRAM = 0x10000000;
- __FASTRAM_END = 0x1FFFFFFF;
-
- /* Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes) */
- ___BOOT_FLASH = 0xe0000000;
- ___BOOT_FLASH_SIZE = 0x00800000;
-
- /* BaS */
- __BAS_LMA = LOADADDR(.bas);
- __BAS_IN_RAM = ADDR(.bas);
- __BAS_SIZE = SIZEOF(.bas);
-
- /* Other flash components */
- __FIRETOS = 0xe0400000;
- __EMUTOS = 0xe0600000;
- __EMUTOS_SIZE = 0x00100000;
-
- /* VIDEO RAM BASIS */
- __VRAM = 0x60000000;
-
- /* Memory mapped registers */
- __MBAR = 0xFF000000;
-
- /* 32KB on-chip System SRAM */
- __SYS_SRAM = 0xFF010000;
- __SYS_SRAM_SIZE = 0x00008000;
-
- /* MMU memory mapped registers */
- __MMUBAR = 0xFF040000;
-
- /*
- * 4KB on-chip Core SRAM0: -> exception table and exception stack
- */
- __RAMBAR0 = 0xFF100000;
- __RAMBAR0_SIZE = 0x00001000;
- __SUP_SP = __RAMBAR0 + __RAMBAR0_SIZE - 4;
-
- /* system variables */
-
- /* RAMBAR0 0 to 0x7FF -> exception vectors */
- _rt_mod = __RAMBAR0 + 0x800;
- _rt_ssp = __RAMBAR0 + 0x804;
- _rt_usp = __RAMBAR0 + 0x808;
- _rt_vbr = __RAMBAR0 + 0x80C; /* (8)01 */
- _rt_cacr = __RAMBAR0 + 0x810; /* 002 */
- _rt_asid = __RAMBAR0 + 0x814; /* 003 */
- _rt_acr0 = __RAMBAR0 + 0x818; /* 004 */
- _rt_acr1 = __RAMBAR0 + 0x81c; /* 005 */
- _rt_acr2 = __RAMBAR0 + 0x820; /* 006 */
- _rt_acr3 = __RAMBAR0 + 0x824; /* 007 */
- _rt_mmubar = __RAMBAR0 + 0x828; /* 008 */
- _rt_sr = __RAMBAR0 + 0x82c;
- _d0_save = __RAMBAR0 + 0x830;
- _a7_save = __RAMBAR0 + 0x834;
- _video_tlb = __RAMBAR0 + 0x838;
- _video_sbt = __RAMBAR0 + 0x83C;
- _rt_mbar = __RAMBAR0 + 0x844; /* (c)0f */
-
- /* 4KB on-chip Core SRAM1: -> modified code */
- __RAMBAR1 = 0xFF101000;
- __RAMBAR1_SIZE = 0x00001000;
- }
diff --git a/BaS_gcc/check.bdm b/BaS_gcc/check.bdm
deleted file mode 100755
index b0b3e5d..0000000
--- a/BaS_gcc/check.bdm
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2 -v9 -d9
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-# Turn on MBAR at 0xFF00_0000
-write-ctrl 0x0C0F 0xFF000000
-
-# Turn on RAMBAR0 at address FF10_0000
-write-ctrl 0x0C04 0xFF100007
-
-# Turn on RAMBAR1 at address FF10_1000 (disabled - not mapped by bdm currently)
-write-ctrl 0x0C05 0xFF101001
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00041180 4
-write 0xFF000504 0x007F0001 4
-wait
-
-# Init CS1 (Atari I/O address range)
-write 0xFF00050C 0xFFF00000 4
-write 0xFF000514 0x00002180 4
-write 0xFF000510 0x000F0001 4
-# Init CS2 (FireBee 32 bit I/O address range)
-write 0xFF000518 0xF0000000 4
-write 0xFF000520 0x00002100 4
-write 0xFF00051C 0x07FF0001 4
-# Init CS3 (FireBee 16 bit I/O address range)
-write 0xFF000524 0xF8000000 4
-write 0xFF00052C 0x00000180 4
-write 0xFF000528 0x03FF0001 4
-# Init CS4 (FireBee video address range)
-write 0xFF000530 0x40000000 4
-write 0xFF000538 0x00000018 4
-write 0xFF000534 0x003F0001 4
-
-
-# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x0000001A 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x0800001A 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x1000001A 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x1800001A 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73622830 4 # SDCFG1
-write 0xFF00010C 0x46770000 4 # SDCFG2
-
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x048D0000 4 # SDMR (write to LMR)
-
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x008D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-
-dump-register SR
-write-ctrl 0x80e 0x2700
-write-ctrl 0x2 0xa50c8120
-dump-register D0
-dump-register ASID
-dump-register ACR0
-dump-register ACR1
-dump-register ACR2
-dump-register ACR3
-dump-register SR
-dump-register CACR
-dump-register RAMBAR1
-dump-register RAMBAR2
-dump-register MBAR
-dump-register 0xc05
\ No newline at end of file
diff --git a/BaS_gcc/dma/MCD_dmaApi.c b/BaS_gcc/dma/MCD_dmaApi.c
deleted file mode 100755
index f2276b5..0000000
--- a/BaS_gcc/dma/MCD_dmaApi.c
+++ /dev/null
@@ -1,932 +0,0 @@
-/*
- * File: MCD_dmaApi.c
- * Purpose: Main C file for multi-channel DMA API.
- *
- * Notes:
- */
-
-#include "MCD_dma.h"
-#include "MCD_tasksInit.h"
-#include "MCD_progCheck.h"
-
-/********************************************************************/
-/*
- * This is an API-internal pointer to the DMA's registers
- */
-dmaRegs *MCD_dmaBar;
-
-/*
- * These are the real and model task tables as generated by the
- * build process
- */
-extern TaskTableEntry MCD_realTaskTableSrc[NCHANNELS];
-extern TaskTableEntry MCD_modelTaskTableSrc[NUMOFVARIANTS];
-
-/*
- * However, this (usually) gets relocated to on-chip SRAM, at which
- * point we access them as these tables
- */
-volatile TaskTableEntry *MCD_taskTable;
-TaskTableEntry *MCD_modelTaskTable;
-
-
-/*
- * MCD_chStatus[] is an array of status indicators for remembering
- * whether a DMA has ever been attempted on each channel, pausing
- * status, etc.
- */
-static int MCD_chStatus[NCHANNELS] =
-{
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA,
- MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA, MCD_NO_DMA
-};
-
-/*
- * Prototypes for local functions
- */
-static void MCD_memcpy (int *dest, int *src, u32 size);
-static void MCD_resmActions (int channel);
-
-/*
- * Buffer descriptors used for storage of progress info for single Dmas
- * Also used as storage for the DMA for CRCs for single DMAs
- * Otherwise, the DMA does not parse these buffer descriptors
- */
-#ifdef MCD_INCLUDE_EU
-extern MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#else
-MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#endif
-MCD_bufDesc *MCD_relocBuffDesc;
-
-
-/*
- * Defines for the debug control register's functions
- */
-#define DBG_CTL_COMP1_TASK (0x00002000) /* have comparator 1 look for a task # */
-#define DBG_CTL_ENABLE (DBG_CTL_AUTO_ARM | \
- DBG_CTL_BREAK | \
- DBG_CTL_INT_BREAK | \
- DBG_CTL_COMP1_TASK)
-#define DBG_CTL_DISABLE (DBG_CTL_AUTO_ARM | \
- DBG_CTL_INT_BREAK | \
- DBG_CTL_COMP1_TASK)
-#define DBG_KILL_ALL_STAT (0xFFFFFFFF)
-
-/*
- * Offset to context save area where progress info is stored
- */
-#define CSAVE_OFFSET 10
-
-/*
- * Defines for Byte Swapping
- */
-#define MCD_BYTE_SWAP_KILLER 0xFFF8888F
-#define MCD_NO_BYTE_SWAP_ATALL 0x00040000
-
-/*
- * Execution Unit Identifiers
- */
-#define MAC 0 /* legacy - not used */
-#define LUAC 1 /* legacy - not used */
-#define CRC 2 /* legacy - not used */
-#define LURC 3 /* Logic Unit with CRC */
-
-/*
- * Task Identifiers
- */
-#define TASK_CHAINNOEU 0
-#define TASK_SINGLENOEU 1
-#ifdef MCD_INCLUDE_EU
-#define TASK_CHAINEU 2
-#define TASK_SINGLEEU 3
-#define TASK_FECRX 4
-#define TASK_FECTX 5
-#else
-#define TASK_CHAINEU 0
-#define TASK_SINGLEEU 1
-#define TASK_FECRX 2
-#define TASK_FECTX 3
-#endif
-
-/*
- * Structure to remember which variant is on which channel
- * TBD- need this?
- */
-typedef struct MCD_remVariants_struct MCD_remVariant;
-struct MCD_remVariants_struct
-{
- int remDestRsdIncr[NCHANNELS]; /* -1,0,1 */
- int remSrcRsdIncr[NCHANNELS]; /* -1,0,1 */
- s16 remDestIncr[NCHANNELS]; /* DestIncr */
- s16 remSrcIncr[NCHANNELS]; /* srcIncr */
- u32 remXferSize[NCHANNELS]; /* xferSize */
-};
-
-/*
- * Structure to remember the startDma parameters for each channel
- */
-MCD_remVariant MCD_remVariants;
-/********************************************************************/
-/*
- * Function: MCD_initDma
- * Purpose: Initializes the DMA API by setting up a pointer to the DMA
- * registers, relocating and creating the appropriate task
- * structures, and setting up some global settings
- * Arguments:
- * dmaBarAddr - pointer to the multichannel DMA registers
- * taskTableDest - location to move DMA task code and structs to
- * flags - operational parameters
- * Return Value:
- * MCD_TABLE_UNALIGNED if taskTableDest is not 512-byte aligned
- * MCD_OK otherwise
- */
-extern u32 MCD_funcDescTab0[];
-
-int MCD_initDma (dmaRegs *dmaBarAddr, void *taskTableDest, u32 flags)
-{
- int i;
- TaskTableEntry *entryPtr;
-
- /* setup the local pointer to register set */
- MCD_dmaBar = dmaBarAddr;
-
- /* do we need to move/create a task table */
- if ((flags & MCD_RELOC_TASKS) != 0)
- {
- int fixedSize;
- u32 *fixedPtr;
- /*int *tablePtr = taskTableDest;TBD*/
- int varTabsOffset, funcDescTabsOffset, contextSavesOffset;
- int taskDescTabsOffset;
- int taskTableSize, varTabsSize, funcDescTabsSize, contextSavesSize;
- int taskDescTabSize;
-
-
- /* check if physical address is aligned on 512 byte boundary */
- if (((u32) taskTableDest & 0x000001ff) != 0)
- return MCD_TABLE_UNALIGNED;
-
- MCD_taskTable = taskTableDest; /* set up local pointer to task Table */
-
- /*
- * Create a task table:
- * - compute aligned base offsets for variable tables and
- * function descriptor tables, then
- * - loop through the task table and setup the pointers
- * - copy over model task table with the the actual task descriptor
- * tables
- */
-
- taskTableSize = NCHANNELS * sizeof(TaskTableEntry);
- /* align variable tables to size */
- varTabsOffset = taskTableSize + (u32)taskTableDest;
- if ((varTabsOffset & (VAR_TAB_SIZE - 1)) != 0)
- varTabsOffset = (varTabsOffset + VAR_TAB_SIZE) & (~VAR_TAB_SIZE);
- /* align function descriptor tables */
- varTabsSize = NCHANNELS * VAR_TAB_SIZE;
- funcDescTabsOffset = varTabsOffset + varTabsSize;
-
- if ((funcDescTabsOffset & (FUNCDESC_TAB_SIZE - 1)) != 0)
- funcDescTabsOffset = (funcDescTabsOffset + FUNCDESC_TAB_SIZE) &
- (~FUNCDESC_TAB_SIZE);
-
- funcDescTabsSize = FUNCDESC_TAB_NUM * FUNCDESC_TAB_SIZE;
- contextSavesOffset = funcDescTabsOffset + funcDescTabsSize;
- contextSavesSize = (NCHANNELS * CONTEXT_SAVE_SIZE);
- fixedSize = taskTableSize + varTabsSize + funcDescTabsSize +
- contextSavesSize;
-
- /* zero the thing out */
- fixedPtr = (u32 *)taskTableDest;
- for (i = 0;i<(fixedSize/4);i++)
- fixedPtr[i] = 0;
-
- entryPtr = (TaskTableEntry*)MCD_taskTable;
- /* set up fixed pointers */
- for (i = 0; i < NCHANNELS; i++)
- {
- entryPtr[i].varTab = (u32)varTabsOffset; /* update ptr to local value */
- entryPtr[i].FDTandFlags = (u32)funcDescTabsOffset | MCD_TT_FLAGS_DEF;
- entryPtr[i].contextSaveSpace = (u32)contextSavesOffset;
- varTabsOffset += VAR_TAB_SIZE;
-#ifdef MCD_INCLUDE_EU /* if not there is only one, just point to the same one */
- funcDescTabsOffset += FUNCDESC_TAB_SIZE;
-#endif
- contextSavesOffset += CONTEXT_SAVE_SIZE;
- }
- /* copy over the function descriptor table */
- for ( i = 0; i < FUNCDESC_TAB_NUM; i++)
- {
- MCD_memcpy((void*)(entryPtr[i].FDTandFlags & ~MCD_TT_FLAGS_MASK),
- (void*)MCD_funcDescTab0, FUNCDESC_TAB_SIZE);
- }
-
- /* copy model task table to where the context saves stuff leaves off*/
- MCD_modelTaskTable = (TaskTableEntry*)contextSavesOffset;
-
- MCD_memcpy ((void*)MCD_modelTaskTable, (void*)MCD_modelTaskTableSrc,
- NUMOFVARIANTS * sizeof(TaskTableEntry));
-
- entryPtr = MCD_modelTaskTable; /* point to local version of
- model task table */
- taskDescTabsOffset = (u32)MCD_modelTaskTable +
- (NUMOFVARIANTS * sizeof(TaskTableEntry));
-
- /* copy actual task code and update TDT ptrs in local model task table */
- for (i = 0; i < NUMOFVARIANTS; i++)
- {
- taskDescTabSize = entryPtr[i].TDTend - entryPtr[i].TDTstart + 4;
- MCD_memcpy ((void*)taskDescTabsOffset, (void*)entryPtr[i].TDTstart, taskDescTabSize);
- entryPtr[i].TDTstart = (u32)taskDescTabsOffset;
- taskDescTabsOffset += taskDescTabSize;
- entryPtr[i].TDTend = (u32)taskDescTabsOffset - 4;
- }
-#ifdef MCD_INCLUDE_EU /* Tack single DMA BDs onto end of code so API controls
- where they are since DMA might write to them */
- MCD_relocBuffDesc = (MCD_bufDesc*)(entryPtr[NUMOFVARIANTS - 1].TDTend + 4);
-#else /* DMA does not touch them so they can be wherever and we don't need to
- waste SRAM on them */
- MCD_relocBuffDesc = MCD_singleBufDescs;
-#endif
- }
- else
- {
- /* point the would-be relocated task tables and the
- buffer descriptors to the ones the linker generated */
-
- if (((u32)MCD_realTaskTableSrc & 0x000001ff) != 0)
- return(MCD_TABLE_UNALIGNED);
-
- /* need to add code to make sure that every thing else is aligned properly TBD*/
- /* this is problematic if we init more than once or after running tasks,
- need to add variable to see if we have aleady init'd */
- entryPtr = MCD_realTaskTableSrc;
- for (i = 0; i < NCHANNELS; i++)
- {
- if (((entryPtr[i].varTab & (VAR_TAB_SIZE - 1)) != 0) ||
- ((entryPtr[i].FDTandFlags & (FUNCDESC_TAB_SIZE - 1)) != 0))
- return(MCD_TABLE_UNALIGNED);
- }
-
- MCD_taskTable = MCD_realTaskTableSrc;
- MCD_modelTaskTable = MCD_modelTaskTableSrc;
- MCD_relocBuffDesc = MCD_singleBufDescs;
- }
-
-
- /* Make all channels as totally inactive, and remember them as such: */
-
- MCD_dmaBar->taskbar = (u32) MCD_taskTable;
- for (i = 0; i < NCHANNELS; i++)
- {
- MCD_dmaBar->taskControl[i] = 0x0;
- MCD_chStatus[i] = MCD_NO_DMA;
- }
-
- /* Set up pausing mechanism to inactive state: */
- MCD_dmaBar->debugComp1 = 0; /* no particular values yet for either comparator registers */
- MCD_dmaBar->debugComp2 = 0;
- MCD_dmaBar->debugControl = DBG_CTL_DISABLE;
- MCD_dmaBar->debugStatus = DBG_KILL_ALL_STAT;
-
- /* enable or disable commbus prefetch, really need an ifdef or
- something to keep from trying to set this in the 8220 */
- if ((flags & MCD_COMM_PREFETCH_EN) != 0)
- MCD_dmaBar->ptdControl &= ~PTD_CTL_COMM_PREFETCH;
- else
- MCD_dmaBar->ptdControl |= PTD_CTL_COMM_PREFETCH;
-
- return MCD_OK;
-}
-/*********************** End of MCD_initDma() ***********************/
-
-/********************************************************************/
-/* Function: MCD_dmaStatus
- * Purpose: Returns the status of the DMA on the requested channel
- * Arguments: channel - channel number
- * Returns: Predefined status indicators
- */
-int MCD_dmaStatus (int channel)
-{
- u16 tcrValue;
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- tcrValue = MCD_dmaBar->taskControl[channel];
- if ((tcrValue & TASK_CTL_EN) == 0)
- { /* nothing running */
- /* if last reported with task enabled */
- if ( MCD_chStatus[channel] == MCD_RUNNING
- || MCD_chStatus[channel] == MCD_IDLE)
- MCD_chStatus[channel] = MCD_DONE;
- }
- else /* something is running */
- {
- /* There are three possibilities: paused, running or idle. */
- if ( MCD_chStatus[channel] == MCD_RUNNING
- || MCD_chStatus[channel] == MCD_IDLE)
- {
- MCD_dmaBar->ptdDebug = PTD_DBG_TSK_VLD_INIT;
- /* This register is selected to know which initiator is
- actually asserted. */
- if ((MCD_dmaBar->ptdDebug >> channel ) & 0x1 )
- MCD_chStatus[channel] = MCD_RUNNING;
- else
- MCD_chStatus[channel] = MCD_IDLE;
- /* do not change the status if it is already paused. */
- }
- }
- return MCD_chStatus[channel];
-}
-/******************** End of MCD_dmaStatus() ************************/
-
-/********************************************************************/
-/* Function: MCD_startDma
- * Ppurpose: Starts a particular kind of DMA
- * Arguments: see below
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-
-int MCD_startDma (
- int channel, /* the channel on which to run the DMA */
- s8 *srcAddr, /* the address to move data from, or physical buffer-descriptor address */
- s16 srcIncr, /* the amount to increment the source address per transfer */
- s8 *destAddr, /* the address to move data to */
- s16 destIncr, /* the amount to increment the destination address per transfer */
- u32 dmaSize, /* the number of bytes to transfer independent of the transfer size */
- u32 xferSize, /* the number bytes in of each data movement (1, 2, or 4) */
- u32 initiator, /* what device initiates the DMA */
- int priority, /* priority of the DMA */
- u32 flags, /* flags describing the DMA */
- u32 funcDesc /* a description of byte swapping, bit swapping, and CRC actions */
-#ifdef MCD_NEED_ADDR_TRANS
- s8 *srcAddrVirt /* virtual buffer descriptor address TBD*/
-#endif
-)
-{
- int srcRsdIncr, destRsdIncr;
- int *cSave;
- short xferSizeIncr;
- int tcrCount = 0;
-#ifdef MCD_INCLUDE_EU
- u32 *realFuncArray;
-#endif
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- /* tbd - need to determine the proper response to a bad funcDesc when not
- including EU functions, for now, assign a benign funcDesc, but maybe
- should return an error */
-#ifndef MCD_INCLUDE_EU
- funcDesc = MCD_FUNC_NOEU1;
-#endif
-
-#ifdef MCD_DEBUG
-printf("startDma:Setting up params\n");
-#endif
- /* Set us up for task-wise priority. We don't technically need to do this on every start, but
- since the register involved is in the same longword as other registers that users are in control
- of, setting it more than once is probably preferable. That since the documentation doesn't seem
- to be completely consistent about the nature of the PTD control register. */
- MCD_dmaBar->ptdControl |= (u16) 0x8000;
-#if 1 /* Not sure what we need to keep here rtm TBD */
- /* Calculate additional parameters to the regular DMA calls. */
- srcRsdIncr = srcIncr < 0 ? -1 : (srcIncr > 0 ? 1 : 0);
- destRsdIncr = destIncr < 0 ? -1 : (destIncr > 0 ? 1 : 0);
-
- xferSizeIncr = (xferSize & 0xffff) | 0x20000000;
-
- /* Remember for each channel which variant is running. */
- MCD_remVariants.remSrcRsdIncr[channel] = srcRsdIncr;
- MCD_remVariants.remDestRsdIncr[channel] = destRsdIncr;
- MCD_remVariants.remDestIncr[channel] = destIncr;
- MCD_remVariants.remSrcIncr[channel] = srcIncr;
- MCD_remVariants.remXferSize[channel] = xferSize;
-#endif
-
- cSave = (int*)(MCD_taskTable[channel].contextSaveSpace) + CSAVE_OFFSET + CURRBD;
-
-#ifdef MCD_INCLUDE_EU /* may move this to EU specific calls */
- realFuncArray = (u32 *) (MCD_taskTable[channel].FDTandFlags & 0xffffff00);
- /* Modify the LURC's normal and byte-residue-loop functions according to parameter. */
- realFuncArray[(LURC*16)] = xferSize == 4 ?
- funcDesc : xferSize == 2 ?
- funcDesc & 0xfffff00f : funcDesc & 0xffff000f;
- realFuncArray[(LURC*16+1)] = (funcDesc & MCD_BYTE_SWAP_KILLER) | MCD_NO_BYTE_SWAP_ATALL;
-#endif
- /* Write the initiator field in the TCR, and also set the initiator-hold
- bit. Note that,due to a hardware quirk, this could collide with an
- MDE access to the initiator-register file, so we have to verify that the write
- reads back correctly. */
-
- MCD_dmaBar->taskControl[channel] =
- (initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM;
-
- while(((MCD_dmaBar->taskControl[channel] & 0x1fff) !=
- ((initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM)) &&
- (tcrCount < 1000))
- {
- tcrCount++;
- /*MCD_dmaBar->ptd_tcr[channel] = (initiator << 8) | 0x0020;*/
- MCD_dmaBar->taskControl[channel] =
- (initiator << 8) | TASK_CTL_HIPRITSKEN | TASK_CTL_HLDINITNUM;
- }
-
- MCD_dmaBar->priority[channel] = (u8)priority & PRIORITY_PRI_MASK;
- /* should be albe to handle this stuff with only one write to ts reg - tbd */
- if (channel < 8 && channel >= 0)
- {
- MCD_dmaBar->taskSize0 &= ~(0xf << (7-channel)*4);
- MCD_dmaBar->taskSize0 |= (xferSize & 3) << (((7 - channel)*4) + 2);
- MCD_dmaBar->taskSize0 |= (xferSize & 3) << ((7 - channel)*4);
- }
- else
- {
- MCD_dmaBar->taskSize1 &= ~(0xf << (15-channel)*4);
- MCD_dmaBar->taskSize1 |= (xferSize & 3) << (((15 - channel)*4) + 2);
- MCD_dmaBar->taskSize1 |= (xferSize & 3) << ((15 - channel)*4);
- }
-
- /* setup task table flags/options which mostly control the line buffers */
- MCD_taskTable[channel].FDTandFlags &= ~MCD_TT_FLAGS_MASK;
- MCD_taskTable[channel].FDTandFlags |= (MCD_TT_FLAGS_MASK & flags);
-
- if (flags & MCD_FECTX_DMA)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_FECTX].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_FECTX].TDTend;
- MCD_startDmaENetXmit(srcAddr, srcAddr, destAddr, MCD_taskTable, channel);
- }
- else if (flags & MCD_FECRX_DMA)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_FECRX].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_FECRX].TDTend;
- MCD_startDmaENetRcv(srcAddr, srcAddr, destAddr, MCD_taskTable, channel);
- }
- else if(flags & MCD_SINGLE_DMA)
- {
- /* this buffer descriptor is used for storing off initial parameters for later
- progress query calculation and for the DMA to write the resulting checksum
- The DMA does not use this to determine how to operate, that info is passed
- with the init routine*/
- MCD_relocBuffDesc[channel].srcAddr = srcAddr;
- MCD_relocBuffDesc[channel].destAddr = destAddr;
- MCD_relocBuffDesc[channel].lastDestAddr = destAddr; /* definitely not its final value */
- MCD_relocBuffDesc[channel].dmaSize = dmaSize;
- MCD_relocBuffDesc[channel].flags = 0; /* not used */
- MCD_relocBuffDesc[channel].csumResult = 0; /* not used */
- MCD_relocBuffDesc[channel].next = 0; /* not used */
-
- /* Initialize the progress-querying stuff to show no progress:*/
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET] = (int)srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET] = (int)destAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET] = 0;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET] =
- (u32) &(MCD_relocBuffDesc[channel]);
- /* tbd - need to keep the user from trying to call the EU routine
- when MCD_INCLUDE_EU is not defined */
- if( funcDesc == MCD_FUNC_NOEU1 || funcDesc == MCD_FUNC_NOEU2)
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_SINGLENOEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_SINGLENOEU].TDTend;
- MCD_startDmaSingleNoEu(srcAddr, srcIncr, destAddr, destIncr, dmaSize,
- xferSizeIncr, flags, (int *)&(MCD_relocBuffDesc[channel]), cSave,
- MCD_taskTable, channel);
- }
- else
- {
- /* TDTStart and TDTEnd */
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_SINGLEEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_SINGLEEU].TDTend;
- MCD_startDmaSingleEu(srcAddr, srcIncr, destAddr, destIncr, dmaSize,
- xferSizeIncr, flags, (int *)&(MCD_relocBuffDesc[channel]), cSave,
- MCD_taskTable, channel);
- }
- }
- else
- { /* chained DMAS */
- /* Initialize the progress-querying stuff to show no progress:*/
-#if 1 /* (!defined(MCD_NEED_ADDR_TRANS)) */
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddr)->srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddr)->destAddr;
-#else /* if using address translation, need the virtual addr of the first buffdesc */
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddrVirt)->srcAddr;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET]
- = (int)((MCD_bufDesc*) srcAddrVirt)->destAddr;
-#endif
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET] = 0;
- ((volatile int *)MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET] = (u32) srcAddr;
-
- if( funcDesc == MCD_FUNC_NOEU1 || funcDesc == MCD_FUNC_NOEU2)
- {
- /*TDTStart and TDTEnd*/
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_CHAINNOEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_CHAINNOEU].TDTend;
- MCD_startDmaChainNoEu((int *)srcAddr, srcIncr, destIncr, xferSize,
- xferSizeIncr, cSave, MCD_taskTable, channel);
- }
- else
- {
- /*TDTStart and TDTEnd*/
- MCD_taskTable[channel].TDTstart = MCD_modelTaskTable[TASK_CHAINEU].TDTstart;
- MCD_taskTable[channel].TDTend = MCD_modelTaskTable[TASK_CHAINEU].TDTend;
- MCD_startDmaChainEu((int *)srcAddr, srcIncr, destIncr, xferSize,
- xferSizeIncr, cSave, MCD_taskTable, channel);
- }
- }
- MCD_chStatus[channel] = MCD_IDLE;
- return MCD_OK;
-}
-
-/************************ End of MCD_startDma() *********************/
-
-/********************************************************************/
-/* Function: MCD_XferProgrQuery
- * Purpose: Returns progress of DMA on requested channel
- * Arguments: channel - channel to retrieve progress for
- * progRep - pointer to user supplied MCD_XferProg struct
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * MCD_XferProgrQuery() upon completing or after aborting a DMA, or
- * while the DMA is in progress, this function returns the first
- * DMA-destination address not (or not yet) used in the DMA. When
- * encountering a non-ready buffer descriptor, the information for
- * the last completed descriptor is returned.
- *
- * MCD_XferProgQuery() has to avoid the possibility of getting
- * partially-updated information in the event that we should happen
- * to query DMA progress just as the DMA is updating it. It does that
- * by taking advantage of the fact context is not saved frequently for
- * the most part. We therefore read it at least twice until we get the
- * same information twice in a row.
- *
- * Because a small, but not insignificant, amount of time is required
- * to write out the progress-query information, especially upon
- * completion of the DMA, it would be wise to guarantee some time lag
- * between successive readings of the progress-query information.
- */
-
-/*
- * How many iterations of the loop below to execute to stabilize values
- */
-#define STABTIME 0
-
-int MCD_XferProgrQuery (int channel, MCD_XferProg *progRep)
-{
- MCD_XferProg prevRep;
- int again; /* true if we are to try again to get consistent results */
- int i; /* used as a time-waste counter */
- int destDiffBytes; /* Total number of bytes that we think actually got xfered. */
- int numIterations; /* number of iterations */
- int bytesNotXfered; /* bytes that did not get xfered. */
- s8 *LWAlignedInitDestAddr, *LWAlignedCurrDestAddr;
- int subModVal, addModVal; /* Mode values to added and subtracted from the
- final destAddr */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- /* Read a trial value for the progress-reporting values*/
- prevRep.lastSrcAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET];
- prevRep.lastDestAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET];
- prevRep.dmaSize = ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET];
- prevRep.currBufDesc =
- (MCD_bufDesc*) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET];
- /* Repeatedly reread those values until they match previous values: */
- do {
- /* Waste a little bit of time to ensure stability: */
- for (i = 0; i < STABTIME; i++)
- i += i >> 2; /* make sure this loop does something so that it doesn't get optimized out */
- /* Check them again: */
- progRep->lastSrcAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[SRCPTR + CSAVE_OFFSET];
- progRep->lastDestAddr =
- (s8 *) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DESTPTR + CSAVE_OFFSET];
- progRep->dmaSize = ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[DCOUNT + CSAVE_OFFSET];
- progRep->currBufDesc =
- (MCD_bufDesc*) ((volatile int*) MCD_taskTable[channel].contextSaveSpace)[CURRBD + CSAVE_OFFSET];
- /* See if they match: */
- if ( prevRep.lastSrcAddr != progRep->lastSrcAddr
- || prevRep.lastDestAddr != progRep->lastDestAddr
- || prevRep.dmaSize != progRep->dmaSize
- || prevRep.currBufDesc != progRep->currBufDesc)
- {
- /* If they don't match, remember previous values and try again:*/
- prevRep.lastSrcAddr = progRep->lastSrcAddr;
- prevRep.lastDestAddr = progRep->lastDestAddr;
- prevRep.dmaSize = progRep->dmaSize;
- prevRep.currBufDesc = progRep->currBufDesc;
- again = MCD_TRUE;
- }
- else
- again = MCD_FALSE;
- } while (again == MCD_TRUE);
-
-
- /* Update the dCount, srcAddr and destAddr */
- /* To calculate dmaCount, we consider destination address. C
- overs M1,P1,Z for destination */
- switch(MCD_remVariants.remDestRsdIncr[channel]) {
- case MINUS1:
- subModVal = ((int)progRep->lastDestAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- addModVal = ((int)progRep->currBufDesc->destAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- LWAlignedInitDestAddr = (progRep->currBufDesc->destAddr) - addModVal;
- LWAlignedCurrDestAddr = (progRep->lastDestAddr) - subModVal;
- destDiffBytes = LWAlignedInitDestAddr - LWAlignedCurrDestAddr;
- bytesNotXfered = (destDiffBytes/MCD_remVariants.remDestIncr[channel]) *
- ( MCD_remVariants.remDestIncr[channel]
- + MCD_remVariants.remXferSize[channel]);
- progRep->dmaSize = destDiffBytes - bytesNotXfered + addModVal - subModVal;
- break;
- case ZERO:
- progRep->lastDestAddr = progRep->currBufDesc->destAddr;
- break;
- case PLUS1:
- /* This value has to be subtracted from the final calculated dCount. */
- subModVal = ((int)progRep->currBufDesc->destAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- /* These bytes are already in lastDestAddr. */
- addModVal = ((int)progRep->lastDestAddr) & ((MCD_remVariants.remXferSize[channel]) - 1);
- LWAlignedInitDestAddr = (progRep->currBufDesc->destAddr) - subModVal;
- LWAlignedCurrDestAddr = (progRep->lastDestAddr) - addModVal;
- destDiffBytes = (progRep->lastDestAddr - LWAlignedInitDestAddr);
- numIterations = ( LWAlignedCurrDestAddr - LWAlignedInitDestAddr)/MCD_remVariants.remDestIncr[channel];
- bytesNotXfered = numIterations *
- ( MCD_remVariants.remDestIncr[channel]
- - MCD_remVariants.remXferSize[channel]);
- progRep->dmaSize = destDiffBytes - bytesNotXfered - subModVal;
- break;
- default:
- break;
- }
-
- /* This covers M1,P1,Z for source */
- switch(MCD_remVariants.remSrcRsdIncr[channel]) {
- case MINUS1:
- progRep->lastSrcAddr =
- progRep->currBufDesc->srcAddr +
- ( MCD_remVariants.remSrcIncr[channel] *
- (progRep->dmaSize/MCD_remVariants.remXferSize[channel]));
- break;
- case ZERO:
- progRep->lastSrcAddr = progRep->currBufDesc->srcAddr;
- break;
- case PLUS1:
- progRep->lastSrcAddr =
- progRep->currBufDesc->srcAddr +
- ( MCD_remVariants.remSrcIncr[channel] *
- (progRep->dmaSize/MCD_remVariants.remXferSize[channel]));
- break;
- default: break;
- }
-
- return MCD_OK;
-}
-/******************* End of MCD_XferProgrQuery() ********************/
-
-/********************************************************************/
-/* MCD_resmActions() does the majority of the actions of a DMA resume.
- * It is called from MCD_killDma() and MCD_resumeDma(). It has to be
- * a separate function because the kill function has to negate the task
- * enable before resuming it, but the resume function has to do nothing
- * if there is no DMA on that channel (i.e., if the enable bit is 0).
- */
-static void MCD_resmActions (int channel)
-{
- MCD_dmaBar->debugControl = DBG_CTL_DISABLE;
- MCD_dmaBar->debugStatus = MCD_dmaBar->debugStatus;
- MCD_dmaBar->ptdDebug = PTD_DBG_TSK_VLD_INIT; /* This register is selected to know
- which initiator is actually asserted. */
- if((MCD_dmaBar->ptdDebug >> channel ) & 0x1)
- MCD_chStatus[channel] = MCD_RUNNING;
- else
- MCD_chStatus[channel] = MCD_IDLE;
-}
-/********************* End of MCD_resmActions() *********************/
-
-/********************************************************************/
-/* Function: MCD_killDma
- * Purpose: Halt the DMA on the requested channel, without any
- * intention of resuming the DMA.
- * Arguments: channel - requested channel
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * A DMA may be killed from any state, including paused state, and it
- * always goes to the MCD_HALTED state even if it is killed while in
- * the MCD_NO_DMA or MCD_IDLE states.
- */
-int MCD_killDma (int channel)
-{
- /* MCD_XferProg progRep; */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- MCD_dmaBar->taskControl[channel] = 0x0;
- MCD_resumeDma (channel);
- /*
- * This must be after the write to the TCR so that the task doesn't
- * start up again momentarily, and before the status assignment so
- * as to override whatever MCD_resumeDma() may do to the channel
- * status.
- */
- MCD_chStatus[channel] = MCD_HALTED;
-
- /*
- * Update the current buffer descriptor's lastDestAddr field
- *
- * MCD_XferProgrQuery (channel, &progRep);
- * progRep.currBufDesc->lastDestAddr = progRep.lastDestAddr;
- */
- return MCD_OK;
-}
-/************************ End of MCD_killDma() **********************/
-
-/********************************************************************/
-/* Function: MCD_continDma
- * Purpose: Continue a DMA which as stopped due to encountering an
- * unready buffer descriptor.
- * Arguments: channel - channel to continue the DMA on
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- *
- * Notes:
- * This routine does not check to see if there is a task which can
- * be continued. Also this routine should not be used with single DMAs.
- */
-int MCD_continDma (int channel)
-{
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- MCD_dmaBar->taskControl[channel] |= TASK_CTL_EN;
- MCD_chStatus[channel] = MCD_RUNNING;
-
- return MCD_OK;
-}
-/********************** End of MCD_continDma() **********************/
-
-/*********************************************************************
- * MCD_pauseDma() and MCD_resumeDma() below use the DMA's debug unit
- * to freeze a task and resume it. We freeze a task by breakpointing
- * on the stated task. That is, not any specific place in the task,
- * but any time that task executes. In particular, when that task
- * executes, we want to freeze that task and only that task.
- *
- * The bits of the debug control register influence interrupts vs.
- * breakpoints as follows:
- * - Bits 14 and 0 enable or disable debug functions. If enabled, you
- * will get the interrupt but you may or may not get a breakpoint.
- * - Bits 2 and 1 decide whether you also get a breakpoint in addition
- * to an interrupt.
- *
- * The debug unit can do these actions in response to either internally
- * detected breakpoint conditions from the comparators, or in response
- * to the external breakpoint pin, or both.
- * - Bits 14 and 1 perform the above-described functions for
- * internally-generated conditions, i.e., the debug comparators.
- * - Bits 0 and 2 perform the above-described functions for external
- * conditions, i.e., the breakpoint external pin.
- *
- * Note that, although you "always" get the interrupt when you turn
- * the debug functions, the interrupt can nevertheless, if desired, be
- * masked by the corresponding bit in the PTD's IMR. Note also that
- * this means that bits 14 and 0 must enable debug functions before
- * bits 1 and 2, respectively, have any effect.
- *
- * NOTE: It's extremely important to not pause more than one DMA channel
- * at a time.
- ********************************************************************/
-
-/********************************************************************/
-/* Function: MCD_pauseDma
- * Purpose: Pauses the DMA on a given channel (if any DMA is running
- * on that channel).
- * Arguments: channel
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-int MCD_pauseDma (int channel)
-{
- /* MCD_XferProg progRep; */
-
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- if (MCD_dmaBar->taskControl[channel] & TASK_CTL_EN)
- {
- MCD_dmaBar->debugComp1 = channel;
- MCD_dmaBar->debugControl = DBG_CTL_ENABLE | (1 << (channel + 16));
- MCD_chStatus[channel] = MCD_PAUSED;
-
- /*
- * Update the current buffer descriptor's lastDestAddr field
- *
- * MCD_XferProgrQuery (channel, &progRep);
- * progRep.currBufDesc->lastDestAddr = progRep.lastDestAddr;
- */
- }
- return MCD_OK;
-}
-/************************* End of MCD_pauseDma() ********************/
-
-/********************************************************************/
-/* Function: MCD_resumeDma
- * Purpose: Resumes the DMA on a given channel (if any DMA is
- * running on that channel).
- * Arguments: channel - channel on which to resume DMA
- * Returns: MCD_CHANNEL_INVALID if channel is invalid, else MCD_OK
- */
-int MCD_resumeDma (int channel)
-{
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- if (MCD_dmaBar->taskControl[channel] & TASK_CTL_EN)
- MCD_resmActions (channel);
-
- return MCD_OK;
-}
-/************************ End of MCD_resumeDma() ********************/
-
-/********************************************************************/
-/* Function: MCD_csumQuery
- * Purpose: Provide the checksum after performing a non-chained DMA
- * Arguments: channel - channel to report on
- * csum - pointer to where to write the checksum/CRC
- * Returns: MCD_ERROR if the channel is invalid, else MCD_OK
- *
- * Notes:
- *
- */
-int MCD_csumQuery (int channel, u32 *csum)
-{
-#ifdef MCD_INCLUDE_EU
- if((channel < 0) || (channel >= NCHANNELS))
- return(MCD_CHANNEL_INVALID);
-
- *csum = MCD_relocBuffDesc[channel].csumResult;
- return(MCD_OK);
-#else
- return MCD_ERROR;
-#endif
-}
-/*********************** End of MCD_resumeDma() *********************/
-
-/********************************************************************/
-/* Function: MCD_getCodeSize
- * Purpose: Provide the size requirements of the microcoded tasks
- * Returns: Size in bytes
- */
-int MCD_getCodeSize(void)
-{
-#ifdef MCD_INCLUDE_EU
- return(0x2b5c);
-#else
- return(0x173c);
-#endif
-}
-/********************** End of MCD_getCodeSize() ********************/
-
-/********************************************************************/
-/* Function: MCD_getVersion
- * Purpose: Provide the version string and number
- * Arguments: longVersion - user supplied pointer to a pointer to a char
- * which points to the version string
- * Returns: Version number and version string (by reference)
- */
-char MCD_versionString[] = "Multi-channel DMA API Alpha v0.3 (2004-04-26)";
-#define MCD_REV_MAJOR 0x00
-#define MCD_REV_MINOR 0x03
-
-int MCD_getVersion(char **longVersion)
-{
- *longVersion = MCD_versionString;
- return((MCD_REV_MAJOR << 8) | MCD_REV_MINOR);
-}
-/********************** End of MCD_getVersion() *********************/
-
-/********************************************************************/
-/* Private version of memcpy()
- * Note that everything this is used for is longword-aligned.
- */
-static void MCD_memcpy (int *dest, int *src, u32 size)
-{
- u32 i;
-
- for (i = 0; i < size; i += sizeof(int), dest++, src++)
- *dest = *src;
-}
-/********************************************************************/
diff --git a/BaS_gcc/dma/MCD_tasks.c b/BaS_gcc/dma/MCD_tasks.c
deleted file mode 100755
index 76e8e37..0000000
--- a/BaS_gcc/dma/MCD_tasks.c
+++ /dev/null
@@ -1,2449 +0,0 @@
-/*
- * File: MCD_tasks.c
- * Purpose: Contains task code and structures for Multi-channel DMA
- *
- * Notes:
- */
-
-#include "MCD_dma.h"
-
-u32 MCD_varTab0[];
-u32 MCD_varTab1[];
-u32 MCD_varTab2[];
-u32 MCD_varTab3[];
-u32 MCD_varTab4[];
-u32 MCD_varTab5[];
-u32 MCD_varTab6[];
-u32 MCD_varTab7[];
-u32 MCD_varTab8[];
-u32 MCD_varTab9[];
-u32 MCD_varTab10[];
-u32 MCD_varTab11[];
-u32 MCD_varTab12[];
-u32 MCD_varTab13[];
-u32 MCD_varTab14[];
-u32 MCD_varTab15[];
-
-u32 MCD_funcDescTab0[];
-#ifdef MCD_INCLUDE_EU
-u32 MCD_funcDescTab1[];
-u32 MCD_funcDescTab2[];
-u32 MCD_funcDescTab3[];
-u32 MCD_funcDescTab4[];
-u32 MCD_funcDescTab5[];
-u32 MCD_funcDescTab6[];
-u32 MCD_funcDescTab7[];
-u32 MCD_funcDescTab8[];
-u32 MCD_funcDescTab9[];
-u32 MCD_funcDescTab10[];
-u32 MCD_funcDescTab11[];
-u32 MCD_funcDescTab12[];
-u32 MCD_funcDescTab13[];
-u32 MCD_funcDescTab14[];
-u32 MCD_funcDescTab15[];
-#endif
-
-u32 MCD_contextSave0[];
-u32 MCD_contextSave1[];
-u32 MCD_contextSave2[];
-u32 MCD_contextSave3[];
-u32 MCD_contextSave4[];
-u32 MCD_contextSave5[];
-u32 MCD_contextSave6[];
-u32 MCD_contextSave7[];
-u32 MCD_contextSave8[];
-u32 MCD_contextSave9[];
-u32 MCD_contextSave10[];
-u32 MCD_contextSave11[];
-u32 MCD_contextSave12[];
-u32 MCD_contextSave13[];
-u32 MCD_contextSave14[];
-u32 MCD_contextSave15[];
-
-u32 MCD_realTaskTableSrc[] =
-{
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab0, /* Task 0 Variable Table */
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave0, /* Task 0 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab1, /* Task 1 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab1, /* Task 1 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave1, /* Task 1 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab2, /* Task 2 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab2, /* Task 2 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave2, /* Task 2 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab3, /* Task 3 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab3, /* Task 3 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave3, /* Task 3 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab4, /* Task 4 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab4, /* Task 4 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave4, /* Task 4 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab5, /* Task 5 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab5, /* Task 5 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave5, /* Task 5 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab6, /* Task 6 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab6, /* Task 6 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave6, /* Task 6 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab7, /* Task 7 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab7, /* Task 7 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave7, /* Task 7 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab8, /* Task 8 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab8, /* Task 8 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave8, /* Task 8 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab9, /* Task 9 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab9, /* Task 9 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave9, /* Task 9 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab10, /* Task 10 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab10, /* Task 10 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave10, /* Task 10 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab11, /* Task 11 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab11, /* Task 11 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave11, /* Task 11 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab12, /* Task 12 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab12, /* Task 12 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave12, /* Task 12 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab13, /* Task 13 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab13, /* Task 13 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave13, /* Task 13 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab14, /* Task 14 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab14, /* Task 14 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave14, /* Task 14 context save space */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_varTab15, /* Task 15 Variable Table */
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_funcDescTab15, /* Task 15 Function Descriptor Table & Flags */
-#else
- (u32)MCD_funcDescTab0, /* Task 0 Function Descriptor Table & Flags */
-#endif
- 0x00000000,
- 0x00000000,
- (u32)MCD_contextSave15, /* Task 15 context save space */
- 0x00000000,
-};
-
-
-u32 MCD_varTab0[] =
-{ /* Task 0 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-
-u32 MCD_varTab1[] =
-{ /* Task 1 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab2[]=
-{ /* Task 2 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab3[]=
-{ /* Task 3 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab4[]=
-{ /* Task 4 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab5[]=
-{ /* Task 5 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab6[]=
-{ /* Task 6 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab7[]=
-{ /* Task 7 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab8[]=
-{ /* Task 8 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab9[]=
-{ /* Task 9 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab10[]=
-{ /* Task 10 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab11[]=
-{ /* Task 11 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab12[]=
-{ /* Task 12 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab13[]=
-{ /* Task 13 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab14[]=
-{ /* Task 14 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_varTab15[]=
-{ /* Task 15 Variable Table */
- 0x00000000, /* var[0] */
- 0x00000000, /* var[1] */
- 0x00000000, /* var[2] */
- 0x00000000, /* var[3] */
- 0x00000000, /* var[4] */
- 0x00000000, /* var[5] */
- 0x00000000, /* var[6] */
- 0x00000000, /* var[7] */
- 0x00000000, /* var[8] */
- 0x00000000, /* var[9] */
- 0x00000000, /* var[10] */
- 0x00000000, /* var[11] */
- 0x00000000, /* var[12] */
- 0x00000000, /* var[13] */
- 0x00000000, /* var[14] */
- 0x00000000, /* var[15] */
- 0x00000000, /* var[16] */
- 0x00000000, /* var[17] */
- 0x00000000, /* var[18] */
- 0x00000000, /* var[19] */
- 0x00000000, /* var[20] */
- 0x00000000, /* var[21] */
- 0x00000000, /* var[22] */
- 0x00000000, /* var[23] */
- 0xe0000000, /* inc[0] */
- 0x20000000, /* inc[1] */
- 0x2000ffff, /* inc[2] */
- 0x00000000, /* inc[3] */
- 0x00000000, /* inc[4] */
- 0x00000000, /* inc[5] */
- 0x00000000, /* inc[6] */
- 0x00000000, /* inc[7] */
-};
-
-u32 MCD_funcDescTab0[]=
-{ /* Task 0 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-#ifdef MCD_INCLUDE_EU
-u32 MCD_funcDescTab1[]=
-{ /* Task 1 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab2[]=
-{ /* Task 2 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab3[]=
-{ /* Task 3 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab4[]=
-{ /* Task 4 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab5[]=
-{ /* Task 5 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab6[]=
-{ /* Task 6 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab7[]=
-{ /* Task 7 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab8[]=
-{ /* Task 8 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab9[]=
-{ /* Task 9 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab10[]=
-{ /* Task 10 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab11[]=
-{ /* Task 11 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab12[]=
-{ /* Task 12 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab13[]=
-{ /* Task 13 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab14[]=
-{ /* Task 14 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-
-u32 MCD_funcDescTab15[]=
-{ /* Task 15 Function Descriptor Table */
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0xa0045670, /* mainFunc(), EU# 3 */
- 0xa0000000, /* rsduFunc(), EU# 3 */
- 0xa0000000, /* crcAccumVal(), EU# 3 */
- 0x20000000, /* setCrcAccum(), EU# 3 */
- 0x21800000, /* and(), EU# 3 */
- 0x21e00000, /* or(), EU# 3 */
- 0x20400000, /* add(), EU# 3 */
- 0x20500000, /* sub(), EU# 3 */
- 0x205a0000, /* andNot(), EU# 3 */
- 0x20a00000, /* shiftR(), EU# 3 */
- 0x202fa000, /* andReadyBit(), EU# 3 */
- 0x202f9000, /* andNotReadyBit(), EU# 3 */
- 0x202ea000, /* andWrapBit(), EU# 3 */
- 0x202da000, /* andLastBit(), EU# 3 */
- 0x202e2000, /* andInterruptBit(), EU# 3 */
- 0x202f2000, /* andCrcRestartBit(), EU# 3 */
-};
-#endif /*MCD_INCLUDE_EU*/
-
-u32 MCD_contextSave0[128]; /* Task 0 context save space */
-u32 MCD_contextSave1[128]; /* Task 1 context save space */
-u32 MCD_contextSave2[128]; /* Task 2 context save space */
-u32 MCD_contextSave3[128]; /* Task 3 context save space */
-u32 MCD_contextSave4[128]; /* Task 4 context save space */
-u32 MCD_contextSave5[128]; /* Task 5 context save space */
-u32 MCD_contextSave6[128]; /* Task 6 context save space */
-u32 MCD_contextSave7[128]; /* Task 7 context save space */
-u32 MCD_contextSave8[128]; /* Task 8 context save space */
-u32 MCD_contextSave9[128]; /* Task 9 context save space */
-u32 MCD_contextSave10[128]; /* Task 10 context save space */
-u32 MCD_contextSave11[128]; /* Task 11 context save space */
-u32 MCD_contextSave12[128]; /* Task 12 context save space */
-u32 MCD_contextSave13[128]; /* Task 13 context save space */
-u32 MCD_contextSave14[128]; /* Task 14 context save space */
-u32 MCD_contextSave15[128]; /* Task 15 context save space */
-
-
-u32 MCD_ChainNoEu_TDT[];
-u32 MCD_SingleNoEu_TDT[];
-#ifdef MCD_INCLUDE_EU
-u32 MCD_ChainEu_TDT[];
-u32 MCD_SingleEu_TDT[];
-#endif
-u32 MCD_ENetRcv_TDT[];
-u32 MCD_ENetXmit_TDT[];
-
-u32 MCD_modelTaskTableSrc[]=
-{
- (u32)MCD_ChainNoEu_TDT,
- (u32)&((u8*)MCD_ChainNoEu_TDT)[0x0000016c],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_SingleNoEu_TDT,
- (u32)&((u8*)MCD_SingleNoEu_TDT)[0x000000d4],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-#ifdef MCD_INCLUDE_EU
- (u32)MCD_ChainEu_TDT,
- (u32)&((u8*)MCD_ChainEu_TDT)[0x000001b4],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_SingleEu_TDT,
- (u32)&((u8*)MCD_SingleEu_TDT)[0x00000124],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-#endif
- (u32)MCD_ENetRcv_TDT,
- (u32)&((u8*)MCD_ENetRcv_TDT)[0x0000009c],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- (u32)MCD_ENetXmit_TDT,
- (u32)&((u8*)MCD_ENetXmit_TDT)[0x000000d0],
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
- 0x00000000,
-};
-u32 MCD_ChainNoEu_TDT[]=
-{
- 0x80004000, /* 0000(:370): LCDEXT: idx0 = 0x00000000; ; */
- 0x8118801b, /* 0004(:370): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xb8c60018, /* 0008(:371): LCD: idx2 = *(idx1 + var12); idx2 once var0; idx2 += inc3 */
- 0x10002b10, /* 000C(:372): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000d, /* 0010(:373): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x018cf89f, /* 0014(:373): DRD2B1: var6 = EU3(); EU3(idx2) */
- 0x6000000a, /* 0018(:374): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf89f, /* 001C(:374): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0020(:0): NOP */
- 0x98180364, /* 0024(:378): LCD: idx0 = idx0; idx0 == var13; idx0 += inc4 */
- 0x8118801b, /* 0028(:380): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xf8c6001a, /* 002C(:381): LCDEXT: idx2 = *(idx1 + var12 + 8); idx2 once var0; idx2 += inc3 */
- 0xb8c6601b, /* 0030(:382): LCD: idx3 = *(idx1 + var12 + 12); ; idx3 += inc3 */
- 0x10002710, /* 0034(:384): DRD1A: var9 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x00000f18, /* 0038(:385): DRD1A: var3 = idx3; FN=0 init=0 WS=0 RS=0 */
- 0xb8c6001d, /* 003C(:387): LCD: idx2 = *(idx1 + var12 + 20); idx2 once var0; idx2 += inc3 */
- 0x10001310, /* 0040(:388): DRD1A: var4 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000007, /* 0044(:389): DRD2A: EU0=0 EU1=0 EU2=0 EU3=7 EXT init=0 WS=0 RS=0 */
- 0x014cf88b, /* 0048(:389): DRD2B1: var5 = EU3(); EU3(idx2,var11) */
- 0x98c6001c, /* 004C(:391): LCD: idx2 = idx1 + var12 + 4; idx2 once var0; idx2 += inc3 */
- 0x00000710, /* 0050(:392): DRD1A: var1 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0x98c70018, /* 0054(:393): LCD: idx2 = idx1 + var14; idx2 once var0; idx2 += inc3 */
- 0x10001f10, /* 0058(:394): DRD1A: var7 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c818, /* 005C(:395): DRD1A: *idx2 = var3; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0060(:0): NOP */
- 0xc1476018, /* 0064(:399): LCDEXT: idx1 = var2 + var14; ; idx1 += inc3 */
- 0xc003231d, /* 0068(:399): LCDEXT: idx2 = var0, idx3 = var6; idx3 == var12; idx2 += inc3, idx3 += inc5 */
- 0x811a601b, /* 006C(:400): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xc1862102, /* 0070(:403): LCDEXT: idx5 = var3, idx6 = var12; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x849be009, /* 0074(:403): LCD: idx7 = var9; ; idx7 += inc1 */
- 0x03fed7b8, /* 0078(:406): DRD1A: *idx7; FN=0 init=31 WS=3 RS=3 */
- 0xda9b001b, /* 007C(:408): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0080(:408): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x1000cb20, /* 0084(:409): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0088(:410): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 008C(:410): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb28, /* 0090(:411): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0094(:412): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 0098(:412): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb30, /* 009C(:413): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00A0(:414): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00A4(:414): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb38, /* 00A8(:415): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 00AC(:416): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00B0(:0): NOP */
- 0xc1476018, /* 00B4(:420): LCDEXT: idx1 = var2 + var14; ; idx1 += inc3 */
- 0xc003241d, /* 00B8(:420): LCDEXT: idx2 = var0, idx3 = var6; idx3 == var16; idx2 += inc3, idx3 += inc5 */
- 0x811a601b, /* 00BC(:421): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xda9b001b, /* 00C0(:424): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00C4(:424): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 00C8(:425): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc1862102, /* 00CC(:427): LCDEXT: idx5 = var3, idx6 = var12; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x849be009, /* 00D0(:427): LCD: idx7 = var9; ; idx7 += inc1 */
- 0x0bfed7b8, /* 00D4(:430): DRD1A: *idx7; FN=0 TFD init=31 WS=3 RS=3 */
- 0xda9b001b, /* 00D8(:432): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00DC(:432): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x1000cb20, /* 00E0(:433): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00E4(:434): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00E8(:434): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb28, /* 00EC(:435): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00F0(:436): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 00F4(:436): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb30, /* 00F8(:437): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00FC(:438): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88f, /* 0100(:438): DRD2B1: idx2 = EU3(); EU3(idx2,var15) */
- 0x1000cb38, /* 0104(:439): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 0108(:440): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 010C(:0): NOP */
- 0x8118801b, /* 0110(:444): LCD: idx1 = var2; idx1 once var0; idx1 += inc3 */
- 0xd8c60018, /* 0114(:446): LCDEXT: idx2 = idx1 + var12; idx2 once var0; idx2 += inc3 */
- 0x98c6601c, /* 0118(:446): LCD: idx3 = idx1 + var12 + 4; ; idx3 += inc3 */
- 0x6000000b, /* 011C(:447): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c8cfc9f, /* 0120(:447): DRD2B1: *idx2 = EU3(); EU3(*idx2) */
- 0x000001f8, /* 0124(:0): NOP */
- 0xa146001e, /* 0128(:450): LCD: idx1 = *(var2 + var12 + 24); idx1 once var0; idx1 += inc3 */
- 0x10000b08, /* 012C(:451): DRD1A: var2 = idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x10002050, /* 0130(:452): DRD1A: var8 = var10; FN=0 MORE init=0 WS=0 RS=0 */
- 0xb8c60018, /* 0134(:453): LCD: idx2 = *(idx1 + var12); idx2 once var0; idx2 += inc3 */
- 0x10002b10, /* 0138(:454): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000a, /* 013C(:455): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf89f, /* 0140(:455): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x6000000d, /* 0144(:456): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT init=0 WS=0 RS=0 */
- 0x018cf89f, /* 0148(:456): DRD2B1: var6 = EU3(); EU3(idx2) */
- 0x000001f8, /* 014C(:0): NOP */
- 0x8618801b, /* 0150(:462): LCD: idx1 = var12; idx1 once var0; idx1 += inc3 */
- 0x7000000e, /* 0154(:463): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf21f, /* 0158(:463): DRD2B1: idx1 = EU3(); EU3(var8) */
- 0xd8990336, /* 015C(:464): LCDEXT: idx2 = idx1; idx2 > var12; idx2 += inc6 */
- 0x8019801b, /* 0160(:464): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x040001f8, /* 0164(:465): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 0168(:0): NOP */
- 0x000001f8, /* 016C(:0): NOP */
-};
-u32 MCD_SingleNoEu_TDT[]=
-{
- 0x8198001b, /* 0000(:657): LCD: idx0 = var3; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0004(:658): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf81f, /* 0008(:658): DRD2B1: idx0 = EU3(); EU3(idx0) */
- 0x8198801b, /* 000C(:659): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0x6000000e, /* 0010(:660): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x084cf85f, /* 0014(:660): DRD2B1: idx1 = EU3(); EU3(idx1) */
- 0x000001f8, /* 0018(:0): NOP */
- 0x8298001b, /* 001C(:664): LCD: idx0 = var5; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0020(:665): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x010cf81f, /* 0024(:665): DRD2B1: var4 = EU3(); EU3(idx0) */
- 0x6000000e, /* 0028(:666): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x018cf81f, /* 002C(:666): DRD2B1: var6 = EU3(); EU3(idx0) */
- 0xc202601b, /* 0030(:669): LCDEXT: idx0 = var4, idx1 = var4; ; idx0 += inc3, idx1 += inc3 */
- 0xc002221c, /* 0034(:669): LCDEXT: idx2 = var0, idx3 = var4; idx3 == var8; idx2 += inc3, idx3 += inc4 */
- 0x809a601b, /* 0038(:670): LCD: idx4 = var1; ; idx4 += inc3 */
- 0xc10420c2, /* 003C(:673): LCDEXT: idx5 = var2, idx6 = var8; idx6 < var3; idx5 += inc0, idx6 += inc2 */
- 0x839be009, /* 0040(:673): LCD: idx7 = var7; ; idx7 += inc1 */
- 0x03fed7b8, /* 0044(:676): DRD1A: *idx7; FN=0 init=31 WS=3 RS=3 */
- 0xda9b001b, /* 0048(:678): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 004C(:678): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000006, /* 0050(:680): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 0054(:680): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb28, /* 0058(:681): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 005C(:682): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 0060(:682): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb30, /* 0064(:683): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0068(:684): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 006C(:684): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x0000cb38, /* 0070(:685): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0074(:0): NOP */
- 0xc202601b, /* 0078(:689): LCDEXT: idx0 = var4, idx1 = var4; ; idx0 += inc3, idx1 += inc3 */
- 0xc002229c, /* 007C(:689): LCDEXT: idx2 = var0, idx3 = var4; idx3 == var10; idx2 += inc3, idx3 += inc4 */
- 0x809a601b, /* 0080(:690): LCD: idx4 = var1; ; idx4 += inc3 */
- 0xda9b001b, /* 0084(:693): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0088(:693): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 008C(:694): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc10420c2, /* 0090(:696): LCDEXT: idx5 = var2, idx6 = var8; idx6 < var3; idx5 += inc0, idx6 += inc2 */
- 0x839be009, /* 0094(:696): LCD: idx7 = var7; ; idx7 += inc1 */
- 0x0bfed7b8, /* 0098(:699): DRD1A: *idx7; FN=0 TFD init=31 WS=3 RS=3 */
- 0xda9b001b, /* 009C(:701): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00A0(:701): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000006, /* 00A4(:703): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00A8(:703): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb28, /* 00AC(:704): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00B0(:705): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00B4(:705): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x1000cb30, /* 00B8(:706): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00BC(:707): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf889, /* 00C0(:707): DRD2B1: idx2 = EU3(); EU3(idx2,var9) */
- 0x0000cb38, /* 00C4(:708): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00C8(:0): NOP */
- 0xc318022d, /* 00CC(:712): LCDEXT: idx0 = var6; idx0 > var8; idx0 += inc5 */
- 0x8018801b, /* 00D0(:712): LCD: idx1 = var0; idx1 once var0; idx1 += inc3 */
- 0x040001f8, /* 00D4(:713): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
-};
-#ifdef MCD_INCLUDE_EU
-u32 MCD_ChainEu_TDT[]=
-{
- 0x80004000, /* 0000(:947): LCDEXT: idx0 = 0x00000000; ; */
- 0x8198801b, /* 0004(:947): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xb8c68018, /* 0008(:948): LCD: idx2 = *(idx1 + var13); idx2 once var0; idx2 += inc3 */
- 0x10002f10, /* 000C(:949): DRD1A: var11 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000d, /* 0010(:950): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf89f, /* 0014(:950): DRD2B1: var7 = EU3(); EU3(idx2) */
- 0x6000000a, /* 0018(:951): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf89f, /* 001C(:951): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0020(:0): NOP */
- 0x981803a4, /* 0024(:955): LCD: idx0 = idx0; idx0 == var14; idx0 += inc4 */
- 0x8198801b, /* 0028(:957): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xf8c6801a, /* 002C(:958): LCDEXT: idx2 = *(idx1 + var13 + 8); idx2 once var0; idx2 += inc3 */
- 0xb8c6e01b, /* 0030(:959): LCD: idx3 = *(idx1 + var13 + 12); ; idx3 += inc3 */
- 0x10002b10, /* 0034(:961): DRD1A: var10 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x00001318, /* 0038(:962): DRD1A: var4 = idx3; FN=0 init=0 WS=0 RS=0 */
- 0xb8c6801d, /* 003C(:964): LCD: idx2 = *(idx1 + var13 + 20); idx2 once var0; idx2 += inc3 */
- 0x10001710, /* 0040(:965): DRD1A: var5 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000007, /* 0044(:966): DRD2A: EU0=0 EU1=0 EU2=0 EU3=7 EXT init=0 WS=0 RS=0 */
- 0x018cf88c, /* 0048(:966): DRD2B1: var6 = EU3(); EU3(idx2,var12) */
- 0x98c6801c, /* 004C(:968): LCD: idx2 = idx1 + var13 + 4; idx2 once var0; idx2 += inc3 */
- 0x00000b10, /* 0050(:969): DRD1A: var2 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0x98c78018, /* 0054(:970): LCD: idx2 = idx1 + var15; idx2 once var0; idx2 += inc3 */
- 0x10002310, /* 0058(:971): DRD1A: var8 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c820, /* 005C(:972): DRD1A: *idx2 = var4; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0060(:0): NOP */
- 0x8698801b, /* 0064(:976): LCD: idx1 = var13; idx1 once var0; idx1 += inc3 */
- 0x7000000f, /* 0068(:977): DRD2A: EU0=0 EU1=0 EU2=0 EU3=15 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf2df, /* 006C(:977): DRD2B1: idx1 = EU3(); EU3(var11) */
- 0xd899042d, /* 0070(:978): LCDEXT: idx2 = idx1; idx2 >= var16; idx2 += inc5 */
- 0x8019801b, /* 0074(:978): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x60000003, /* 0078(:979): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2cd7c7df, /* 007C(:979): DRD2B2: EU3(var13) */
- 0xd8990364, /* 0080(:980): LCDEXT: idx2 = idx1; idx2 == var13; idx2 += inc4 */
- 0x8019801b, /* 0084(:980): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x60000003, /* 0088(:981): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c17c7df, /* 008C(:981): DRD2B2: EU3(var1) */
- 0x000001f8, /* 0090(:0): NOP */
- 0xc1c7e018, /* 0094(:984): LCDEXT: idx1 = var3 + var15; ; idx1 += inc3 */
- 0xc003a35e, /* 0098(:984): LCDEXT: idx2 = var0, idx3 = var7; idx3 == var13; idx2 += inc3, idx3 += inc6 */
- 0x819a601b, /* 009C(:985): LCD: idx4 = var3; ; idx4 += inc3 */
- 0xc206a142, /* 00A0(:988): LCDEXT: idx5 = var4, idx6 = var13; idx6 < var5; idx5 += inc0, idx6 += inc2 */
- 0x851be009, /* 00A4(:988): LCD: idx7 = var10; ; idx7 += inc1 */
- 0x63fe0000, /* 00A8(:991): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 00AC(:991): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 00B0(:993): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00B4(:993): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 00B8(:994): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf81f, /* 00BC(:994): DRD2B1: var1 = EU3(); EU3(idx0) */
- 0x1000cb20, /* 00C0(:995): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00C4(:996): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00C8(:996): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb28, /* 00CC(:997): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00D0(:998): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00D4(:998): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb30, /* 00D8(:999): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00DC(:1000): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 00E0(:1000): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb38, /* 00E4(:1001): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 00E8(:1002): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00EC(:0): NOP */
- 0xc1c7e018, /* 00F0(:1006): LCDEXT: idx1 = var3 + var15; ; idx1 += inc3 */
- 0xc003a49e, /* 00F4(:1006): LCDEXT: idx2 = var0, idx3 = var7; idx3 == var18; idx2 += inc3, idx3 += inc6 */
- 0x819a601b, /* 00F8(:1007): LCD: idx4 = var3; ; idx4 += inc3 */
- 0xda9b001b, /* 00FC(:1010): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0100(:1010): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 0104(:1011): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc206a142, /* 0108(:1013): LCDEXT: idx5 = var4, idx6 = var13; idx6 < var5; idx5 += inc0, idx6 += inc2 */
- 0x851be009, /* 010C(:1013): LCD: idx7 = var10; ; idx7 += inc1 */
- 0x6bfe0000, /* 0110(:1016): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 TFD EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 0114(:1016): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 0118(:1018): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 011C(:1018): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 0120(:1019): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf81f, /* 0124(:1019): DRD2B1: var1 = EU3(); EU3(idx0) */
- 0x1000cb20, /* 0128(:1020): DRD1A: *idx2 = idx4; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 012C(:1021): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 0130(:1021): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb28, /* 0134(:1022): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0138(:1023): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 013C(:1023): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb30, /* 0140(:1024): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0144(:1025): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf891, /* 0148(:1025): DRD2B1: idx2 = EU3(); EU3(idx2,var17) */
- 0x1000cb38, /* 014C(:1026): DRD1A: *idx2 = idx7; FN=0 MORE init=0 WS=0 RS=0 */
- 0x0000c728, /* 0150(:1027): DRD1A: *idx1 = idx5; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0154(:0): NOP */
- 0x8198801b, /* 0158(:1031): LCD: idx1 = var3; idx1 once var0; idx1 += inc3 */
- 0xd8c68018, /* 015C(:1033): LCDEXT: idx2 = idx1 + var13; idx2 once var0; idx2 += inc3 */
- 0x98c6e01c, /* 0160(:1033): LCD: idx3 = idx1 + var13 + 4; ; idx3 += inc3 */
- 0x6000000b, /* 0164(:1034): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c8cfc9f, /* 0168(:1034): DRD2B1: *idx2 = EU3(); EU3(*idx2) */
- 0x0000cc08, /* 016C(:1035): DRD1A: *idx3 = var1; FN=0 init=0 WS=0 RS=0 */
- 0xa1c6801e, /* 0170(:1038): LCD: idx1 = *(var3 + var13 + 24); idx1 once var0; idx1 += inc3 */
- 0x10000f08, /* 0174(:1039): DRD1A: var3 = idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x10002458, /* 0178(:1040): DRD1A: var9 = var11; FN=0 MORE init=0 WS=0 RS=0 */
- 0xb8c68018, /* 017C(:1041): LCD: idx2 = *(idx1 + var13); idx2 once var0; idx2 += inc3 */
- 0x10002f10, /* 0180(:1042): DRD1A: var11 = idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x7000000a, /* 0184(:1043): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf89f, /* 0188(:1043): DRD2B1: idx0 = EU3(); EU3(idx2) */
- 0x6000000d, /* 018C(:1044): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT init=0 WS=0 RS=0 */
- 0x01ccf89f, /* 0190(:1044): DRD2B1: var7 = EU3(); EU3(idx2) */
- 0x000001f8, /* 0194(:0): NOP */
- 0x8698801b, /* 0198(:1050): LCD: idx1 = var13; idx1 once var0; idx1 += inc3 */
- 0x7000000e, /* 019C(:1051): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x084cf25f, /* 01A0(:1051): DRD2B1: idx1 = EU3(); EU3(var9) */
- 0xd899037f, /* 01A4(:1052): LCDEXT: idx2 = idx1; idx2 > var13; idx2 += inc7 */
- 0x8019801b, /* 01A8(:1052): LCD: idx3 = var0; idx3 once var0; idx3 += inc3 */
- 0x040001f8, /* 01AC(:1053): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 01B0(:0): NOP */
- 0x000001f8, /* 01B4(:0): NOP */
-};
-u32 MCD_SingleEu_TDT[]=
-{
- 0x8218001b, /* 0000(:1248): LCD: idx0 = var4; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0004(:1249): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf81f, /* 0008(:1249): DRD2B1: idx0 = EU3(); EU3(idx0) */
- 0x8218801b, /* 000C(:1250): LCD: idx1 = var4; idx1 once var0; idx1 += inc3 */
- 0x6000000e, /* 0010(:1251): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x084cf85f, /* 0014(:1251): DRD2B1: idx1 = EU3(); EU3(idx1) */
- 0x000001f8, /* 0018(:0): NOP */
- 0x8318001b, /* 001C(:1255): LCD: idx0 = var6; idx0 once var0; idx0 += inc3 */
- 0x7000000d, /* 0020(:1256): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf81f, /* 0024(:1256): DRD2B1: var5 = EU3(); EU3(idx0) */
- 0x6000000e, /* 0028(:1257): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT init=0 WS=0 RS=0 */
- 0x01ccf81f, /* 002C(:1257): DRD2B1: var7 = EU3(); EU3(idx0) */
- 0x8498001b, /* 0030(:1260): LCD: idx0 = var9; idx0 once var0; idx0 += inc3 */
- 0x7000000f, /* 0034(:1261): DRD2A: EU0=0 EU1=0 EU2=0 EU3=15 EXT MORE init=0 WS=0 RS=0 */
- 0x080cf19f, /* 0038(:1261): DRD2B1: idx0 = EU3(); EU3(var6) */
- 0xd81882a4, /* 003C(:1262): LCDEXT: idx1 = idx0; idx1 >= var10; idx1 += inc4 */
- 0x8019001b, /* 0040(:1262): LCD: idx2 = var0; idx2 once var0; idx2 += inc3 */
- 0x60000003, /* 0044(:1263): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c97c7df, /* 0048(:1263): DRD2B2: EU3(var9) */
- 0xd818826d, /* 004C(:1264): LCDEXT: idx1 = idx0; idx1 == var9; idx1 += inc5 */
- 0x8019001b, /* 0050(:1264): LCD: idx2 = var0; idx2 once var0; idx2 += inc3 */
- 0x60000003, /* 0054(:1265): DRD2A: EU0=0 EU1=0 EU2=0 EU3=3 EXT init=0 WS=0 RS=0 */
- 0x2c17c7df, /* 0058(:1265): DRD2B2: EU3(var1) */
- 0x000001f8, /* 005C(:0): NOP */
- 0xc282e01b, /* 0060(:1268): LCDEXT: idx0 = var5, idx1 = var5; ; idx0 += inc3, idx1 += inc3 */
- 0xc002a25e, /* 0064(:1268): LCDEXT: idx2 = var0, idx3 = var5; idx3 == var9; idx2 += inc3, idx3 += inc6 */
- 0x811a601b, /* 0068(:1269): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xc184a102, /* 006C(:1272): LCDEXT: idx5 = var3, idx6 = var9; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x841be009, /* 0070(:1272): LCD: idx7 = var8; ; idx7 += inc1 */
- 0x63fe0000, /* 0074(:1275): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 0078(:1275): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 007C(:1277): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 0080(:1277): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 0084(:1279): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf99f, /* 0088(:1279): DRD2B1: var1 = EU3(); EU3(idx6) */
- 0x70000006, /* 008C(:1280): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 0090(:1280): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb28, /* 0094(:1281): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0098(:1282): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 009C(:1282): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb30, /* 00A0(:1283): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00A4(:1284): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00A8(:1284): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x0000cb38, /* 00AC(:1285): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 00B0(:0): NOP */
- 0xc282e01b, /* 00B4(:1289): LCDEXT: idx0 = var5, idx1 = var5; ; idx0 += inc3, idx1 += inc3 */
- 0xc002a31e, /* 00B8(:1289): LCDEXT: idx2 = var0, idx3 = var5; idx3 == var12; idx2 += inc3, idx3 += inc6 */
- 0x811a601b, /* 00BC(:1290): LCD: idx4 = var2; ; idx4 += inc3 */
- 0xda9b001b, /* 00C0(:1293): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00C4(:1293): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x0000d3a0, /* 00C8(:1294): DRD1A: *idx4; FN=0 init=0 WS=0 RS=0 */
- 0xc184a102, /* 00CC(:1296): LCDEXT: idx5 = var3, idx6 = var9; idx6 < var4; idx5 += inc0, idx6 += inc2 */
- 0x841be009, /* 00D0(:1296): LCD: idx7 = var8; ; idx7 += inc1 */
- 0x6bfe0000, /* 00D4(:1299): DRD2A: EU0=0 EU1=0 EU2=0 EU3=0 TFD EXT init=31 WS=3 RS=3 */
- 0x0d4cfddf, /* 00D8(:1299): DRD2B1: *idx5 = EU3(); EU3(*idx7) */
- 0xda9b001b, /* 00DC(:1301): LCDEXT: idx5 = idx5, idx6 = idx6; idx5 once var0; idx5 += inc3, idx6 += inc3 */
- 0x9b9be01b, /* 00E0(:1301): LCD: idx7 = idx7; ; idx7 += inc3 */
- 0x70000002, /* 00E4(:1303): DRD2A: EU0=0 EU1=0 EU2=0 EU3=2 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf99f, /* 00E8(:1303): DRD2B1: var1 = EU3(); EU3(idx6) */
- 0x70000006, /* 00EC(:1304): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00F0(:1304): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb28, /* 00F4(:1305): DRD1A: *idx2 = idx5; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 00F8(:1306): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 00FC(:1306): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x1000cb30, /* 0100(:1307): DRD1A: *idx2 = idx6; FN=0 MORE init=0 WS=0 RS=0 */
- 0x70000006, /* 0104(:1308): DRD2A: EU0=0 EU1=0 EU2=0 EU3=6 EXT MORE init=0 WS=0 RS=0 */
- 0x088cf88b, /* 0108(:1308): DRD2B1: idx2 = EU3(); EU3(idx2,var11) */
- 0x0000cb38, /* 010C(:1309): DRD1A: *idx2 = idx7; FN=0 init=0 WS=0 RS=0 */
- 0x000001f8, /* 0110(:0): NOP */
- 0x8144801c, /* 0114(:1312): LCD: idx0 = var2 + var9 + 4; idx0 once var0; idx0 += inc3 */
- 0x0000c008, /* 0118(:1313): DRD1A: *idx0 = var1; FN=0 init=0 WS=0 RS=0 */
- 0xc398027f, /* 011C(:1315): LCDEXT: idx0 = var7; idx0 > var9; idx0 += inc7 */
- 0x8018801b, /* 0120(:1315): LCD: idx1 = var0; idx1 once var0; idx1 += inc3 */
- 0x040001f8, /* 0124(:1316): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
-};
-#endif
-u32 MCD_ENetRcv_TDT[]=
-{
- 0x80004000, /* 0000(:1389): LCDEXT: idx0 = 0x00000000; ; */
- 0x81988000, /* 0004(:1389): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0008(:1390): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 000C(:1391): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 0010(:1391): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0x98180209, /* 0014(:1394): LCD: idx0 = idx0; idx0 != var8; idx0 += inc1 */
- 0x81c40004, /* 0018(:1396): LCD: idx1 = var3 + var8 + 4; idx1 once var0; idx1 += inc0 */
- 0x7000000e, /* 001C(:1397): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x010cf05f, /* 0020(:1397): DRD2B1: var4 = EU3(); EU3(var1) */
- 0x7000000c, /* 0024(:1398): DRD2A: EU0=0 EU1=0 EU2=0 EU3=12 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf05f, /* 0028(:1398): DRD2B1: var7 = EU3(); EU3(var1) */
- 0x70000004, /* 002C(:1399): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf049, /* 0030(:1399): DRD2B1: var5 = EU3(); EU3(var1,var9) */
- 0x70000004, /* 0034(:1400): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x004cf04a, /* 0038(:1400): DRD2B1: var1 = EU3(); EU3(var1,var10) */
- 0x00000b88, /* 003C(:1403): DRD1A: var2 = *idx1; FN=0 init=0 WS=0 RS=0 */
- 0xc4030150, /* 0040(:1406): LCDEXT: idx1 = var8, idx2 = var6; idx1 < var5; idx1 += inc2, idx2 += inc0 */
- 0x8119e012, /* 0044(:1406): LCD: idx3 = var2; ; idx3 += inc2 */
- 0x03e0cf90, /* 0048(:1409): DRD1A: *idx3 = *idx2; FN=0 init=31 WS=0 RS=0 */
- 0x81188000, /* 004C(:1412): LCD: idx1 = var2; idx1 once var0; idx1 += inc0 */
- 0x000ac788, /* 0050(:1413): DRD1A: *idx1 = *idx1; FN=0 init=0 WS=1 RS=1 */
- 0xc4030000, /* 0054(:1415): LCDEXT: idx1 = var8, idx2 = var6; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x8199e000, /* 0058(:1415): LCD: idx3 = var3; ; idx3 += inc0 */
- 0x70000004, /* 005C(:1421): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x084cfc8b, /* 0060(:1421): DRD2B1: idx1 = EU3(); EU3(*idx2,var11) */
- 0x60000005, /* 0064(:1422): DRD2A: EU0=0 EU1=0 EU2=0 EU3=5 EXT init=0 WS=0 RS=0 */
- 0x0cccf841, /* 0068(:1422): DRD2B1: *idx3 = EU3(); EU3(idx1,var1) */
- 0x81c60000, /* 006C(:1428): LCD: idx1 = var3 + var12; idx1 once var0; idx1 += inc0 */
- 0xc399021b, /* 0070(:1430): LCDEXT: idx2 = var7; idx2 > var8; idx2 += inc3 */
- 0x80198000, /* 0074(:1430): LCD: idx3 = var0; idx3 once var0; idx3 += inc0 */
- 0x00008400, /* 0078(:1431): DRD1A: idx1 = var0; FN=0 init=0 WS=0 RS=0 */
- 0x00000f08, /* 007C(:1432): DRD1A: var3 = idx1; FN=0 init=0 WS=0 RS=0 */
- 0x81988000, /* 0080(:1435): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0084(:1436): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 0088(:1437): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 008C(:1437): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0xc2188209, /* 0090(:1440): LCDEXT: idx1 = var4; idx1 != var8; idx1 += inc1 */
- 0x80190000, /* 0094(:1440): LCD: idx2 = var0; idx2 once var0; idx2 += inc0 */
- 0x040001f8, /* 0098(:1441): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 009C(:0): NOP */
-};
-u32 MCD_ENetXmit_TDT[]=
-{
- 0x80004000, /* 0000(:1516): LCDEXT: idx0 = 0x00000000; ; */
- 0x81988000, /* 0004(:1516): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 0008(:1517): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 000C(:1518): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 0010(:1518): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0x98180309, /* 0014(:1521): LCD: idx0 = idx0; idx0 != var12; idx0 += inc1 */
- 0x80004003, /* 0018(:1523): LCDEXT: idx1 = 0x00000003; ; */
- 0x81c60004, /* 001C(:1523): LCD: idx2 = var3 + var12 + 4; idx2 once var0; idx2 += inc0 */
- 0x7000000e, /* 0020(:1524): DRD2A: EU0=0 EU1=0 EU2=0 EU3=14 EXT MORE init=0 WS=0 RS=0 */
- 0x014cf05f, /* 0024(:1524): DRD2B1: var5 = EU3(); EU3(var1) */
- 0x7000000c, /* 0028(:1525): DRD2A: EU0=0 EU1=0 EU2=0 EU3=12 EXT MORE init=0 WS=0 RS=0 */
- 0x028cf05f, /* 002C(:1525): DRD2B1: var10 = EU3(); EU3(var1) */
- 0x7000000d, /* 0030(:1526): DRD2A: EU0=0 EU1=0 EU2=0 EU3=13 EXT MORE init=0 WS=0 RS=0 */
- 0x018cf05f, /* 0034(:1526): DRD2B1: var6 = EU3(); EU3(var1) */
- 0x70000004, /* 0038(:1527): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT MORE init=0 WS=0 RS=0 */
- 0x01ccf04d, /* 003C(:1527): DRD2B1: var7 = EU3(); EU3(var1,var13) */
- 0x10000b90, /* 0040(:1528): DRD1A: var2 = *idx2; FN=0 MORE init=0 WS=0 RS=0 */
- 0x60000004, /* 0044(:1529): DRD2A: EU0=0 EU1=0 EU2=0 EU3=4 EXT init=0 WS=0 RS=0 */
- 0x020cf0a1, /* 0048(:1529): DRD2B1: var8 = EU3(); EU3(var2,idx1) */
- 0xc3188312, /* 004C(:1532): LCDEXT: idx1 = var6; idx1 > var12; idx1 += inc2 */
- 0x83c70000, /* 0050(:1532): LCD: idx2 = var7 + var14; idx2 once var0; idx2 += inc0 */
- 0x00001f10, /* 0054(:1533): DRD1A: var7 = idx2; FN=0 init=0 WS=0 RS=0 */
- 0xc583a3c3, /* 0058(:1535): LCDEXT: idx1 = var11, idx2 = var7; idx2 >= var15; idx1 += inc0, idx2 += inc3 */
- 0x81042325, /* 005C(:1535): LCD: idx3 = var2, idx4 = var8; idx4 == var12; idx3 += inc4, idx4 += inc5 */
- 0x03e0c798, /* 0060(:1540): DRD1A: *idx1 = *idx3; FN=0 init=31 WS=0 RS=0 */
- 0xd8990000, /* 0064(:1543): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x9999e000, /* 0068(:1543): LCD: idx3 = idx3; ; idx3 += inc0 */
- 0x000acf98, /* 006C(:1544): DRD1A: *idx3 = *idx3; FN=0 init=0 WS=1 RS=1 */
- 0xd8992306, /* 0070(:1546): LCDEXT: idx1 = idx1, idx2 = idx2; idx2 > var12; idx1 += inc0, idx2 += inc6 */
- 0x9999e03f, /* 0074(:1546): LCD: idx3 = idx3; ; idx3 += inc7 */
- 0x03eac798, /* 0078(:1549): DRD1A: *idx1 = *idx3; FN=0 init=31 WS=1 RS=1 */
- 0xd8990000, /* 007C(:1552): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x9999e000, /* 0080(:1552): LCD: idx3 = idx3; ; idx3 += inc0 */
- 0x000acf98, /* 0084(:1553): DRD1A: *idx3 = *idx3; FN=0 init=0 WS=1 RS=1 */
- 0xd8990000, /* 0088(:1555): LCDEXT: idx1 = idx1, idx2 = idx2; idx1 once var0; idx1 += inc0, idx2 += inc0 */
- 0x99832302, /* 008C(:1555): LCD: idx3 = idx3, idx4 = var6; idx4 > var12; idx3 += inc0, idx4 += inc2 */
- 0x0beac798, /* 0090(:1558): DRD1A: *idx1 = *idx3; FN=0 TFD init=31 WS=1 RS=1 */
- 0x81988000, /* 0094(:1560): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x6000000b, /* 0098(:1561): DRD2A: EU0=0 EU1=0 EU2=0 EU3=11 EXT init=0 WS=0 RS=0 */
- 0x0c4cfc5f, /* 009C(:1561): DRD2B1: *idx1 = EU3(); EU3(*idx1) */
- 0x81c80000, /* 00A0(:1563): LCD: idx1 = var3 + var16; idx1 once var0; idx1 += inc0 */
- 0xc5190312, /* 00A4(:1565): LCDEXT: idx2 = var10; idx2 > var12; idx2 += inc2 */
- 0x80198000, /* 00A8(:1565): LCD: idx3 = var0; idx3 once var0; idx3 += inc0 */
- 0x00008400, /* 00AC(:1566): DRD1A: idx1 = var0; FN=0 init=0 WS=0 RS=0 */
- 0x00000f08, /* 00B0(:1567): DRD1A: var3 = idx1; FN=0 init=0 WS=0 RS=0 */
- 0x81988000, /* 00B4(:1570): LCD: idx1 = var3; idx1 once var0; idx1 += inc0 */
- 0x10000788, /* 00B8(:1571): DRD1A: var1 = *idx1; FN=0 MORE init=0 WS=0 RS=0 */
- 0x6000000a, /* 00BC(:1572): DRD2A: EU0=0 EU1=0 EU2=0 EU3=10 EXT init=0 WS=0 RS=0 */
- 0x080cf05f, /* 00C0(:1572): DRD2B1: idx0 = EU3(); EU3(var1) */
- 0xc2988309, /* 00C4(:1575): LCDEXT: idx1 = var5; idx1 != var12; idx1 += inc1 */
- 0x80190000, /* 00C8(:1575): LCD: idx2 = var0; idx2 once var0; idx2 += inc0 */
- 0x040001f8, /* 00CC(:1576): DRD1A: FN=0 INT init=0 WS=0 RS=0 */
- 0x000001f8, /* 00D0(:0): NOP */
-};
-
-#ifdef MCD_INCLUDE_EU
-MCD_bufDesc MCD_singleBufDescs[NCHANNELS];
-#endif
diff --git a/BaS_gcc/dma/MCD_tasksInit.c b/BaS_gcc/dma/MCD_tasksInit.c
deleted file mode 100755
index fd651b2..0000000
--- a/BaS_gcc/dma/MCD_tasksInit.c
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
- * File: MCD_tasksInit.c
- * Purpose: Functions for initializing variable tables of different
- * types of tasks.
- *
- * Notes:
- */
-
-/*
- * Do not edit!
- */
-
-#include "MCD_dma.h"
-
-extern dmaRegs *MCD_dmaBar;
-
-
-/*
- * Task 0
- */
-
-void MCD_startDmaChainNoEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 2, (u32)currBD); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)xferSize); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)0x00000000); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x80000000); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0x00000010); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000004); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x08000000); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000001); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x40000000); /* inc[6] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 1
- */
-
-void MCD_startDmaSingleNoEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 7, (u32)srcAddr); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)destAddr); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)dmaSize); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)flags); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)currBD); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000004); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x08000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000001); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x40000000); /* inc[5] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 2
- */
-
-void MCD_startDmaChainEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)xferSize); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x00000000); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x00000000); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0x80000000); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000010); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x00000001); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 17, (u32)0x00000004); /* var[17] */
- MCD_SET_VAR(taskTable+channel, 18, (u32)0x08000000); /* var[18] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0x80000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0xc0000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x80000001); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0x40000000); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 3
- */
-
-void MCD_startDmaSingleEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 8, (u32)srcAddr); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)(0xe000 << 16) | (0xffff & srcIncr)); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)destAddr); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)(0xe000 << 16) | (0xffff & destIncr)); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)dmaSize); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)(0x2000 << 16) | (0xffff & xferSizeIncr)); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)flags); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)currBD); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 0, (u32)cSave); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000001); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x00000004); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x08000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x00000000); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0xc0000000); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x80000001); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0x40000000); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 4
- */
-
-void MCD_startDmaENetRcv(char *bDBase, char *currBD, char *rcvFifoPtr, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 0, (u32)bDBase); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)rcvFifoPtr); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x0000ffff); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x30000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)0x0fffffff); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000008); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)0x00000000); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)0x60000000); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)0x20000004); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0x40000000); /* inc[3] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
-
-
-/*
- * Task 5
- */
-
-void MCD_startDmaENetXmit(char *bDBase, char *currBD, char *xmitFifoPtr, volatile TaskTableEntry *taskTable, int channel)
-{
-
- MCD_SET_VAR(taskTable+channel, 0, (u32)bDBase); /* var[0] */
- MCD_SET_VAR(taskTable+channel, 3, (u32)currBD); /* var[3] */
- MCD_SET_VAR(taskTable+channel, 11, (u32)xmitFifoPtr); /* var[11] */
- MCD_SET_VAR(taskTable+channel, 1, (u32)0x00000000); /* var[1] */
- MCD_SET_VAR(taskTable+channel, 2, (u32)0x00000000); /* var[2] */
- MCD_SET_VAR(taskTable+channel, 4, (u32)0x00000000); /* var[4] */
- MCD_SET_VAR(taskTable+channel, 5, (u32)0x00000000); /* var[5] */
- MCD_SET_VAR(taskTable+channel, 6, (u32)0x00000000); /* var[6] */
- MCD_SET_VAR(taskTable+channel, 7, (u32)0x00000000); /* var[7] */
- MCD_SET_VAR(taskTable+channel, 8, (u32)0x00000000); /* var[8] */
- MCD_SET_VAR(taskTable+channel, 9, (u32)0x00000000); /* var[9] */
- MCD_SET_VAR(taskTable+channel, 10, (u32)0x00000000); /* var[10] */
- MCD_SET_VAR(taskTable+channel, 12, (u32)0x00000000); /* var[12] */
- MCD_SET_VAR(taskTable+channel, 13, (u32)0x0000ffff); /* var[13] */
- MCD_SET_VAR(taskTable+channel, 14, (u32)0xffffffff); /* var[14] */
- MCD_SET_VAR(taskTable+channel, 15, (u32)0x00000004); /* var[15] */
- MCD_SET_VAR(taskTable+channel, 16, (u32)0x00000008); /* var[16] */
- MCD_SET_VAR(taskTable+channel, 24, (u32)0x00000000); /* inc[0] */
- MCD_SET_VAR(taskTable+channel, 25, (u32)0x60000000); /* inc[1] */
- MCD_SET_VAR(taskTable+channel, 26, (u32)0x40000000); /* inc[2] */
- MCD_SET_VAR(taskTable+channel, 27, (u32)0xc000fffc); /* inc[3] */
- MCD_SET_VAR(taskTable+channel, 28, (u32)0xe0000004); /* inc[4] */
- MCD_SET_VAR(taskTable+channel, 29, (u32)0x80000000); /* inc[5] */
- MCD_SET_VAR(taskTable+channel, 30, (u32)0x4000ffff); /* inc[6] */
- MCD_SET_VAR(taskTable+channel, 31, (u32)0xe0000001); /* inc[7] */
-
- /* Set the task's Enable bit in its Task Control Register */
- MCD_dmaBar->taskControl[channel] |= (u16)0x8000;
-}
diff --git a/BaS_gcc/dma/dma.c b/BaS_gcc/dma/dma.c
deleted file mode 100644
index 50320e0..0000000
--- a/BaS_gcc/dma/dma.c
+++ /dev/null
@@ -1,674 +0,0 @@
-/*
- * dma.c
- *
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include "dma.h"
-#include
-#include "mcd_initiators.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "cache.h"
-#include "exceptions.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine!"
-#endif /* MACHINE_FIREBEE */
-
-// #define DEBUG
-#include "debug.h"
-
-extern char _SYS_SRAM[];
-#define SYS_SRAM &_SYS_SRAM[0]
-
-struct dma_channel
-{
- int req;
- void (*handler)(void);
-};
-
-static char used_reqs[32] =
-{
- DMA_ALWAYS, DMA_DSPI_RXFIFO, DMA_DSPI_TXFIFO, DMA_DREQ0,
- DMA_PSC0_RX, DMA_PSC0_TX, DMA_USB_EP0, DMA_USB_EP1,
- DMA_USB_EP2, DMA_USB_EP3, DMA_PCI_TX, DMA_PCI_RX,
- DMA_PSC1_RX, DMA_PSC1_TX, DMA_I2C_RX, DMA_I2C_TX,
- 0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 0, 0, 0,
- 0, 0, 0, 0
-};
-
-static struct dma_channel dma_channel[NCHANNELS] =
-{
- {-1, NULL}, {-1, NULL}, {-1, NULL}, {-1, NULL},
- {-1, NULL}, {-1, NULL}, {-1, NULL}, {-1, NULL},
- {-1, NULL}, {-1, NULL}, {-1, NULL}, {-1, NULL},
- {-1, NULL}, {-1, NULL}, {-1, NULL}, {-1, NULL},
-};
-
-/*
- * Enable all DMA interrupts
- *
- */
-void dma_irq_enable(void)
-{
- /* Unmask all task interrupts */
- MCF_DMA_DIMR = 0;
-
- /* Clear the interrupt pending register */
- MCF_DMA_DIPR = 0;
-
- dbg("DMA task interrupts unmasked.\r\n");
-}
-
-/*
- * Disable all DMA interrupts
- */
-void dma_irq_disable(void)
-{
- /* Mask all task interrupts */
- MCF_DMA_DIMR = (uint32_t) ~0;
-
- /* Clear any pending task interrupts */
- MCF_DMA_DIPR = (uint32_t) ~0;
-
- /* Mask the DMA interrupt in the interrupt controller */
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK48;
-
- dbg("DMA interrupts masked and disabled\r\n");
-}
-
-int dma_set_initiator(int initiator)
-{
- switch (initiator)
- {
- /* these initiators are always active */
- case DMA_ALWAYS:
- case DMA_DSPI_RXFIFO:
- case DMA_DSPI_TXFIFO:
- case DMA_DREQ0:
- case DMA_PSC0_RX:
- case DMA_PSC0_TX:
- case DMA_USB_EP0:
- case DMA_USB_EP1:
- case DMA_USB_EP2:
- case DMA_USB_EP3:
- case DMA_PCI_TX:
- case DMA_PCI_RX:
- case DMA_PSC1_RX:
- case DMA_I2C_RX:
- case DMA_I2C_TX:
- break;
-
- case DMA_FEC0_RX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC16(3)) | MCF_DMA_IMCR_IMC16_FEC0RX;
- used_reqs[16] = DMA_FEC0_RX;
- break;
-
- case DMA_FEC0_TX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC17(3)) | MCF_DMA_IMCR_IMC17_FEC0TX;
- used_reqs[17] = DMA_FEC0_TX;
- break;
-
- case DMA_FEC1_RX:
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC20(3)) | MCF_DMA_IMCR_IMC20_FEC1RX;
- used_reqs[20] = DMA_FEC1_RX;
- break;
-
- case DMA_FEC1_TX:
- if (used_reqs[21] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC21(3)) | MCF_DMA_IMCR_IMC21_FEC1TX;
- used_reqs[21] = DMA_FEC1_TX;
- }
- else if (used_reqs[25] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC25(3)) | MCF_DMA_IMCR_IMC25_FEC1TX;
- used_reqs[25] = DMA_FEC1_TX;
- }
- else if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC31(3)) | MCF_DMA_IMCR_IMC31_FEC1TX;
- used_reqs[31] = DMA_FEC1_TX;
- }
- else /* No empty slots */
- {
- err("no free slot found\r\n");
-
- return 1;
- }
- break;
-
- case DMA_DREQ1:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC29(3)) | MCF_DMA_IMCR_IMC29_DREQ1;
- used_reqs[29] = DMA_DREQ1;
- }
- else if (used_reqs[21] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC21(3)) | MCF_DMA_IMCR_IMC21_DREQ1;
- used_reqs[21] = DMA_DREQ1;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM0:
- if (used_reqs[24] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC24(3)) | MCF_DMA_IMCR_IMC24_CTM0;
- used_reqs[24] = DMA_CTM0;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM1:
- if (used_reqs[25] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC25(3)) | MCF_DMA_IMCR_IMC25_CTM1;
- used_reqs[25] = DMA_CTM1;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM2:
- if (used_reqs[26] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC26(3)) | MCF_DMA_IMCR_IMC26_CTM2;
- used_reqs[26] = DMA_CTM2;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM3:
- if (used_reqs[27] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC27(3)) | MCF_DMA_IMCR_IMC27_CTM3;
- used_reqs[27] = DMA_CTM3;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM4:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC28(3)) | MCF_DMA_IMCR_IMC28_CTM4;
- used_reqs[28] = DMA_CTM4;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM5:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC29(3)) | MCF_DMA_IMCR_IMC29_CTM5;
- used_reqs[29] = DMA_CTM5;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM6:
- if (used_reqs[30] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC30(3)) | MCF_DMA_IMCR_IMC30_CTM6;
- used_reqs[30] = DMA_CTM6;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_CTM7:
- if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC31(3)) | MCF_DMA_IMCR_IMC31_CTM7;
- used_reqs[31] = DMA_CTM7;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_USBEP4:
- if (used_reqs[26] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC26(3)) | MCF_DMA_IMCR_IMC26_USBEP4;
- used_reqs[26] = DMA_USBEP4;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_USBEP5:
- if (used_reqs[27] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC27(3)) | MCF_DMA_IMCR_IMC27_USBEP5;
- used_reqs[27] = DMA_USBEP5;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_USBEP6:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC28(3)) | MCF_DMA_IMCR_IMC28_USBEP6;
- used_reqs[28] = DMA_USBEP6;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
- return 1;
- }
- break;
-
- case DMA_PSC2_RX:
- if (used_reqs[28] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC28(3)) | MCF_DMA_IMCR_IMC28_PSC2RX;
- used_reqs[28] = DMA_PSC2_RX; }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_PSC2_TX:
- if (used_reqs[29] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC29(3)) | MCF_DMA_IMCR_IMC29_PSC2TX;
- used_reqs[29] = DMA_PSC2_TX;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_PSC3_RX:
- if (used_reqs[30] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC30(3)) | MCF_DMA_IMCR_IMC30_PSC3RX;
- used_reqs[30] = DMA_PSC3_RX;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- case DMA_PSC3_TX:
- if (used_reqs[31] == 0)
- {
- MCF_DMA_IMCR = (MCF_DMA_IMCR & ~MCF_DMA_IMCR_IMC31(3)) | MCF_DMA_IMCR_IMC31_PSC3TX;
- used_reqs[31] = DMA_PSC3_TX;
- }
- else /* No empty slots */
- {
- err("no free slot\r\n");
-
- return 1;
- }
- break;
-
- default:
- {
- err("don't know what to do\r\n");
-
- return 1;
- }
- }
- return 0;
-}
-
-/*
- * Return the initiator number for the given requestor
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * The initiator number (0-31) if initiator has been assigned
- * 0 (always initiator) otherwise
- */
-uint32_t dma_get_initiator(int requestor)
-{
- uint32_t i;
-
- for (i = 0; i < sizeof(used_reqs); ++i)
- {
- if (used_reqs[i] == requestor)
- return i;
- }
- err("no initiator found for requestor %d\r\n", requestor);
-
- return 0;
-}
-
-/*
- * Remove the given initiator from the active list
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- */
-void dma_free_initiator(int requestor)
-{
- uint32_t i;
-
- for (i = 16; i < sizeof(used_reqs); ++i)
- {
- if (used_reqs[i] == requestor)
- {
- used_reqs[i] = 0;
- break;
- }
- }
- dbg("DMA requestor %d freed\r\n", requestor);
-}
-
-/*
- * Attempt to find an available channel and mark it as used
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * First available channel or -1 if they are all occupied
- */
-int dma_set_channel(int requestor, void (*handler)(void))
-{
- int i;
-
- /* Check to see if this requestor is already assigned to a channel */
- dbg("check if requestor %d is already assigned to a channel\r\n", requestor);
- if ((i = dma_get_channel(requestor)) != -1)
- {
- return i;
- }
-
- for (i = 0; i < NCHANNELS; ++i)
- {
- if (dma_channel[i].req == -1)
- {
- dma_channel[i].req = requestor;
- dma_channel[i].handler = handler;
- dbg("assigned channel %d to requestor %d\r\n", i, requestor);
- return i;
- }
- }
- err("no free DMA channel found for requestor %d\r\n", requestor);
-
- /* All channels taken */
- return -1;
-}
-
-void dma_clear_channel(int channel)
-{
- if(channel >= 0 && channel < NCHANNELS)
- {
- dma_channel[channel].req = -1;
- dma_channel[channel].handler = NULL;
- dbg("cleared DMA channel %d\r\n", channel);
- }
-}
-
-/*
- * Return the channel being initiated by the given requestor
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- *
- * Return Value:
- * Channel that the requestor is controlling or -1 if hasn't been
- * activated
- */
-int dma_get_channel(int requestor)
-{
- uint32_t i;
-
- for (i = 0; i < NCHANNELS; ++i)
- {
- if (dma_channel[i].req == requestor)
- return i;
- }
- dbg("no channel occupied by requestor %d\r\n", requestor);
- return -1;
-}
-
-/*
- * Remove the channel being initiated by the given requestor from
- * the active list
- *
- * Parameters:
- * requestor Initiator/Requestor identifier
- */
-void dma_free_channel(int requestor)
-{
- uint32_t i;
-
- for (i = 0; i < NCHANNELS; ++i)
- {
- if (dma_channel[i].req == requestor)
- {
- dma_channel[i].req = -1;
- dma_channel[i].handler = NULL;
- break;
- }
- }
-}
-
-/*
- * This is the catch-all interrupt handler for the mult-channel DMA
- */
-bool dma_interrupt_handler(void *arg1, void *arg2)
-{
- int i, interrupts;
- uint32_t ipl;
-
- ipl = set_ipl(7); /* do not disturb */
-
- /*
- * Determine which interrupt(s) triggered by AND'ing the
- * pending interrupts with those that aren't masked.
- */
- interrupts = MCF_DMA_DIPR & ~MCF_DMA_DIMR;
-
- /* Make sure we are here for a reason */
- if (interrupts == 0)
- {
- err("not DMA interrupt!\r\n");
- return 0;
- }
-
- dbg("");
- /* Clear the interrupt in the pending register */
- MCF_DMA_DIPR = interrupts;
-
- for (i = 0; i < 16; ++i, interrupts >>= 1)
- {
- if (interrupts & 0x1)
- {
- /* If there is a handler, call it */
- if (dma_channel[i].handler != NULL)
- {
- dbg("call handler for DMA channel %d (%p)\r\n", i, dma_channel[i].handler);
- dma_channel[i].handler();
- }
- }
- }
-
- set_ipl(ipl);
-
- return true; /* handled */
-}
-/********************************************************************/
-
-void *dma_memcpy(void *dst, void *src, size_t n)
-{
- int ret;
-
-#ifdef DBG_DMA
- int32_t time;
- int32_t start;
- int32_t end;
-
- start = MCF_SLT0_SCNT;
-#endif /* DBG_DMA */
-
- ret = MCD_startDma(1, src, 4, dst, 4, n, 4, DMA_ALWAYS, 0, MCD_SINGLE_DMA, 0);
- if (ret == MCD_OK)
- {
- dbg("DMA on channel 1 successfully started\r\n");
- }
-
- do
- {
- ret = MCD_dmaStatus(1);
-#ifdef _NOT_USED_ /* suppress annoying printout for now */
- switch (ret)
- {
- case MCD_NO_DMA:
- xprintf("MCD_NO_DMA: no DMA active on this channel\r\n");
- return NULL;
- break;
- case MCD_IDLE:
- xprintf("MCD_IDLE: DMA defined but not active (initiator not ready)\r\n");
- break;
- case MCD_RUNNING:
- xprintf("MCD_RUNNING: DMA active and working on this channel\r\n");
- break;
- case MCD_PAUSED:
- xprintf("MCD_PAUSED: DMA defined and enabled, but currently paused\r\n");
- break;
- case MCD_HALTED:
- xprintf("MCD_HALTED: DMA killed\r\n");
- return NULL;
- break;
- case MCD_DONE:
- xprintf("MCD_DONE: DMA finished\r\n");
- break;
- case MCD_CHANNEL_INVALID:
- xprintf("MCD_CHANNEL_INVALID: invalid DMA channel\r\n");
- return NULL;
- break;
- default:
- xprintf("unknown DMA status %d\r\n", ret);
- break;
- }
-#endif
- } while (ret != MCD_DONE);
-
-#ifdef DBG_DMA
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
- dbg("took %d ms (%f Mbytes/second)\r\n", time, n / (float) time / 1000.0);
-#endif /* DBG_DMA */
-
- return dst;
-}
-
-int dma_init(void)
-{
- int i;
- int res;
-
- dbg("MCD DMA API initialization: ");
- res = MCD_initDma((dmaRegs *) &_MBAR[0x8000], SYS_SRAM, MCD_RELOC_TASKS | MCD_COMM_PREFETCH_EN);
- if (res != MCD_OK)
- {
- err("DMA API initialization failed (0x%x)\r\n", res);
- return 0;
- }
-
- /*
- * make sure dma_channel array is properly initialized
- */
- for (i = 0; i < NCHANNELS; i++)
- {
- dma_channel[i].req = -1;
- dma_channel[i].handler = NULL;
- }
-
- return 0;
-}
-
diff --git a/BaS_gcc/dump.bdm b/BaS_gcc/dump.bdm
deleted file mode 100755
index 9400201..0000000
--- a/BaS_gcc/dump.bdm
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2 -v9 -d9
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-
-dump-register D0
-#dump-register ASID
-dump-register ACR0
-dump-register ACR1
-#dump-register ACR2
-#dump-register ACR3
-dump-register SR
-dump-register CACR
-# dump-register RAMBAR1
-# dump-register RAMBAR2
-dump-register MBAR
diff --git a/BaS_gcc/exe/basflash.c b/BaS_gcc/exe/basflash.c
deleted file mode 100644
index 98e0c27..0000000
--- a/BaS_gcc/exe/basflash.c
+++ /dev/null
@@ -1,679 +0,0 @@
-/*
- * basflash.c
- *
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "diskio.h"
-#include "ff.h"
-#include "s19reader.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-error unknown machine!
-#endif /* MACHINE_M5484LITE */
-
-#define AMD_FLASH_BUS_SHIFT 1
-#define AMD_FLASH_CELL volatile uint16_t
-#define AMD_FLASH_CELL_BYTES 2
-#define AMD_FLASH_CELL_MASK 0x1
-#define AMD_FLASH_CMD_DATA(x) ((uint16_t) x)
-
-struct amd_flash_sector_info
-{
- uint32_t size; /* sector size in bytes */
- uint32_t offset; /* offset from base of device */
-};
-
-/*
- * AM29LV640D flash layout (bottom boot as used in the Firebee)
- */
-static struct amd_flash_sector_info sector[] =
-{
-{ 8 * 1024, 0x00000000 }, /* SA0 */
-{ 8 * 1024, 0x00008000 }, /* SA1 */
-{ 8 * 1024, 0x00010000 }, /* SA2 */
-{ 8 * 1024, 0x00018000 }, /* SA3 */
-{ 8 * 1024, 0x00020000 }, /* SA4 */
-{ 8 * 1024, 0x00028000 }, /* SA5 */
-{ 8 * 1024, 0x00030000 }, /* SA6 */
-{ 8 * 1024, 0x00038000 }, /* SA7 */
-{ 8 * 1024, 0x00040000 }, /* SA8 */
-{ 64 * 1024, 0x00048000 }, /* SA9 */
-{ 64 * 1024, 0x00050000 }, /* SA10 */
-{ 64 * 1024, 0x00058000 }, /* SA11 */
-{ 64 * 1024, 0x00060000 }, /* SA12 */
-{ 64 * 1024, 0x00068000 }, /* SA13 */
-{ 64 * 1024, 0x00070000 }, /* SA14 */
-{ 64 * 1024, 0x00078000 }, /* SA15 */
-{ 64 * 1024, 0x00080000 }, /* SA16 */
-{ 64 * 1024, 0x00088000 }, /* SA17 */
-{ 64 * 1024, 0x00090000 }, /* SA18 */
-{ 64 * 1024, 0x00098000 }, /* SA19 */
-{ 64 * 1024, 0x000a0000 }, /* SA20 */
-{ 64 * 1024, 0x000a8000 }, /* SA21 */
-{ 64 * 1024, 0x000b0000 }, /* SA22 */
-{ 64 * 1024, 0x000b8000 }, /* SA23 */
-{ 64 * 1024, 0x000c0000 }, /* SA24 */
-{ 64 * 1024, 0x000c8000 }, /* SA25 */
-{ 64 * 1024, 0x000d0000 }, /* SA26 */
-{ 64 * 1024, 0x000d8000 }, /* SA27 */
-{ 64 * 1024, 0x000e0000 }, /* SA28 */
-{ 64 * 1024, 0x000e8000 }, /* SA29 */
-{ 64 * 1024, 0x000f0000 }, /* SA30 */
-{ 64 * 1024, 0x000f8000 }, /* SA31 */
-{ 64 * 1024, 0x00100000 }, /* SA32 */
-{ 64 * 1024, 0x00108000 }, /* SA32 */
-{ 64 * 1024, 0x00110000 }, /* SA34 */
-{ 64 * 1024, 0x00118000 }, /* SA35 */
-{ 64 * 1024, 0x00120000 }, /* SA36 */
-{ 64 * 1024, 0x00128000 }, /* SA37 */
-{ 64 * 1024, 0x00130000 }, /* SA38 */
-{ 64 * 1024, 0x00138000 }, /* SA39 */
-{ 64 * 1024, 0x00140000 }, /* SA40 */
-{ 64 * 1024, 0x00148000 }, /* SA41 */
-{ 64 * 1024, 0x00150000 }, /* SA42 */
-{ 64 * 1024, 0x00158000 }, /* SA43 */
-{ 64 * 1024, 0x00160000 }, /* SA44 */
-{ 64 * 1024, 0x00168000 }, /* SA45 */
-{ 64 * 1024, 0x00170000 }, /* SA46 */
-{ 64 * 1024, 0x00178000 }, /* SA47 */
-{ 64 * 1024, 0x00180000 }, /* SA48 */
-{ 64 * 1024, 0x00188000 }, /* SA49 */
-{ 64 * 1024, 0x00190000 }, /* SA50 */
-{ 64 * 1024, 0x00198000 }, /* SA51 */
-{ 64 * 1024, 0x001a0000 }, /* SA52 */
-{ 64 * 1024, 0x001a8000 }, /* SA53 */
-{ 64 * 1024, 0x001b0000 }, /* SA54 */
-{ 64 * 1024, 0x001b8000 }, /* SA55 */
-{ 64 * 1024, 0x001c0000 }, /* SA56 */
-{ 64 * 1024, 0x001c8000 }, /* SA57 */
-{ 64 * 1024, 0x001d0000 }, /* SA58 */
-{ 64 * 1024, 0x001d8000 }, /* SA59 */
-{ 64 * 1024, 0x001e0000 }, /* SA60 */
-{ 64 * 1024, 0x001e8000 }, /* SA61 */
-{ 64 * 1024, 0x001f0000 }, /* SA62 */
-{ 64 * 1024, 0x001f8000 }, /* SA63 */
-{ 64 * 1024, 0x00200000 }, /* SA64 */
-{ 64 * 1024, 0x00208000 }, /* SA65 */
-{ 64 * 1024, 0x00210000 }, /* SA66 */
-{ 64 * 1024, 0x00218000 }, /* SA67 */
-{ 64 * 1024, 0x00220000 }, /* SA68 */
-{ 64 * 1024, 0x00228000 }, /* SA69 */
-{ 64 * 1024, 0x00230000 }, /* SA70 */
-{ 64 * 1024, 0x00238000 }, /* SA71 */
-{ 64 * 1024, 0x00240000 }, /* SA72 */
-{ 64 * 1024, 0x00248000 }, /* SA73 */
-{ 64 * 1024, 0x00250000 }, /* SA74 */
-{ 64 * 1024, 0x00258000 }, /* SA75 */
-{ 64 * 1024, 0x00260000 }, /* SA76 */
-{ 64 * 1024, 0x00268000 }, /* SA77 */
-{ 64 * 1024, 0x00270000 }, /* SA78 */
-{ 64 * 1024, 0x00278000 }, /* SA79 */
-{ 64 * 1024, 0x00280000 }, /* SA80 */
-{ 64 * 1024, 0x00288000 }, /* SA81 */
-{ 64 * 1024, 0x00290000 }, /* SA82 */
-{ 64 * 1024, 0x00298000 }, /* SA83 */
-{ 64 * 1024, 0x002a0000 }, /* SA84 */
-{ 64 * 1024, 0x002a8000 }, /* SA85 */
-{ 64 * 1024, 0x002b0000 }, /* SA86 */
-{ 64 * 1024, 0x002b8000 }, /* SA87 */
-{ 64 * 1024, 0x002c0000 }, /* SA88 */
-{ 64 * 1024, 0x002c8000 }, /* SA89 */
-{ 64 * 1024, 0x002d0000 }, /* SA90 */
-{ 64 * 1024, 0x002d8000 }, /* SA91 */
-{ 64 * 1024, 0x002e0000 }, /* SA92 */
-{ 64 * 1024, 0x002e8000 }, /* SA93 */
-{ 64 * 1024, 0x002f0000 }, /* SA94 */
-{ 64 * 1024, 0x002f8000 }, /* SA95 */
-{ 64 * 1024, 0x00300000 }, /* SA96 */
-{ 64 * 1024, 0x00308000 }, /* SA97 */
-{ 64 * 1024, 0x00310000 }, /* SA98 */
-{ 64 * 1024, 0x00318000 }, /* SA99 */
-{ 64 * 1024, 0x00320000 }, /* SA100 */
-{ 64 * 1024, 0x00328000 }, /* SA101 */
-{ 64 * 1024, 0x00330000 }, /* SA102 */
-{ 64 * 1024, 0x00338000 }, /* SA103 */
-{ 64 * 1024, 0x00340000 }, /* SA104 */
-{ 64 * 1024, 0x00348000 }, /* SA105 */
-{ 64 * 1024, 0x00350000 }, /* SA106 */
-{ 64 * 1024, 0x00358000 }, /* SA107 */
-{ 64 * 1024, 0x00360000 }, /* SA108 */
-{ 64 * 1024, 0x00368000 }, /* SA109 */
-{ 64 * 1024, 0x00370000 }, /* SA110 */
-{ 64 * 1024, 0x00378000 }, /* SA111 */
-{ 64 * 1024, 0x00380000 }, /* SA112 */
-{ 64 * 1024, 0x00388000 }, /* SA113 */
-{ 64 * 1024, 0x00390000 }, /* SA114 */
-{ 64 * 1024, 0x00398000 }, /* SA115 */
-{ 64 * 1024, 0x003a0000 }, /* SA116 */
-{ 64 * 1024, 0x003a8000 }, /* SA117 */
-{ 64 * 1024, 0x003b0000 }, /* SA118 */
-{ 64 * 1024, 0x003b8000 }, /* SA119 */
-{ 64 * 1024, 0x003c0000 }, /* SA120 */
-{ 64 * 1024, 0x003c8000 }, /* SA121 */
-{ 64 * 1024, 0x003d0000 }, /* SA122 */
-{ 64 * 1024, 0x003d8000 }, /* SA123 */
-{ 64 * 1024, 0x003e0000 }, /* SA124 */
-{ 64 * 1024, 0x003e8000 }, /* SA125 */
-{ 64 * 1024, 0x003f0000 }, /* SA126 */
-{ 64 * 1024, 0x003f8000 }, /* SA127 */
-};
-
-static const int AMD_FLASH_SECTORS = sizeof(sector) / sizeof(struct amd_flash_sector_info);
-
-#define SOFFSET(n) (sector[n].offset)
-#define SADDR(n) (SOFFSET(n) >> AMD_FLASH_BUS_SHIFT)
-#define SSIZE(n) (sector[n].size)
-
-#define AMD_FLASH_DEVICES 1
-
-static AMD_FLASH_CELL *pFlash;
-
-typedef struct romram
-{
- uint32_t flash_address;
- uint32_t ram_address;
- char *name;
-} ROMRAM;
-
-#if defined(MACHINE_FIREBEE)
-static const struct romram flash_areas[] =
-{
-{ 0xe0600000, 0x00e00000, "EmuTOS" }, /* EmuTOS */
-{ 0xe0400000, 0x00e00000, "FireTOS" }, /* FireTOS */
-{ 0xe0700000, 0x00e00000, "FPGA" }, /* FPGA config */
-};
-static const int num_flash_areas = sizeof(flash_areas) / sizeof(struct romram);
-#endif
-
-#define FLASH_ADDRESS 0xe0000000
-
-/*
- * erase a flash sector
- *
- * sector_num is the index into the sector table above.
- *
- * FIXME: need to disable data cache to ensure proper operation
- */
-void amd_flash_sector_erase(int n)
-{
- volatile AMD_FLASH_CELL status;
-
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0x80);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[SADDR(n)] = AMD_FLASH_CMD_DATA(0x30);
-
- do
- status = pFlash[SADDR(n)];
- while ((status & AMD_FLASH_CMD_DATA(0x80)) != AMD_FLASH_CMD_DATA(0x80));
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-}
-
-int amd_flash_erase(void *start, int bytes, void (*putchar)(int))
-{
- int i, ebytes = 0;
-
- if (bytes == 0)
- return 0;
-
- for (i = 0; i < AMD_FLASH_SECTORS; i++)
- {
- if (start >= (void *)((void *) pFlash + SOFFSET(i)) &&
- start <= (void *)((void *) pFlash + SOFFSET(i) + (SSIZE(i) - 1)))
- {
- break;
- }
- }
-
- while (ebytes < bytes)
- {
- if (putchar != NULL)
- {
- putchar('.');
- }
- amd_flash_sector_erase(i);
- ebytes += SSIZE(i);
- i++;
- }
-
- if (putchar != NULL)
- {
- putchar(10); /* LF */
- putchar(13); /* CR */
- }
-
- return ebytes;
-}
-
-void amd_flash_program_cell(AMD_FLASH_CELL *dst, AMD_FLASH_CELL data)
-{
- volatile AMD_FLASH_CELL status;
- int retry;
-
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xA0);
- *dst = data;
-
- /*
- * Wait for program operation to finish
- * (Data# Polling Algorithm)
- */
- retry = 0;
- while (1)
- {
- status = *dst;
- if ((status & AMD_FLASH_CMD_DATA(0x80)) ==
- (data & AMD_FLASH_CMD_DATA(0x80)))
- {
- break;
- }
- if (status & AMD_FLASH_CMD_DATA(0x20))
- {
- status = *dst;
- if ((status & AMD_FLASH_CMD_DATA(0x80)) ==
- (data & AMD_FLASH_CMD_DATA(0x80)))
- {
- break;
- }
- if (++retry > 1024)
- {
- break;
- }
- }
- }
-}
-
-
-int amd_flash_program(void *dest, void *source, int bytes, int erase, void (*func)(void), void (*putchar)(int))
-{
- AMD_FLASH_CELL *src, *dst;
- int hashi=1,hashj=0;
- char hash[5];
-
- hash[0]=8; /* Backspace */
- hash[1]=124;/* "|" */
- hash[2]=47; /* "/" */
- hash[3]=45; /* "-" */
- hash[4]=92; /* "\" */
-
- src = (AMD_FLASH_CELL *)source;
- dst = (AMD_FLASH_CELL *)dest;
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-
- /*
- * Erase device if necessary
- */
- if (erase)
- {
- amd_flash_erase(dest, bytes, putchar);
- }
-
- /*
- * Program device
- */
- while (bytes > 0)
- {
- amd_flash_program_cell(dst,*src);
-
- /* Verify Write */
- if (*dst == *src)
- {
- bytes -= AMD_FLASH_CELL_BYTES;
- *dst++, *src++;
-
- if ((putchar != NULL))
- {
- /* Hash marks to indicate progress */
- if (hashj == 0x1000)
- {
- hashj = -1;
- putchar(hash[0]);
- putchar(hash[hashi]);
-
- hashi++;
- if (hashi == 5)
- {
- hashi=1;
- }
-
- }
- hashj++;
- }
- }
- else
- break;
- }
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-
- if (putchar != NULL)
- {
- putchar(hash[0]);
- }
-
- /*
- * If a function was passed in, call it now
- */
- if ((func != NULL))
- {
- func();
- }
-
- return ((int)src - (int)source);
-}
-
-/*
- * this callback just does nothing besides returning OK. Meant to do a dry run over the file to check its integrity
- */
-static err_t simulate()
-{
- err_t ret = OK;
-
- return ret;
-}
-
-static err_t flash(uint8_t *dst, uint8_t *src, uint32_t length)
-{
- err_t ret = OK;
-
- /* TODO: do the actual flash */
- amd_flash_program(dst, src, length, 1, NULL, xputchar);
- return ret;
-}
-
-/*
- * this callback verifies the data against the S-record file contents after a write to destination
- */
-static err_t verify(uint8_t *dst, uint8_t *src, size_t length)
-{
- uint8_t *end = src + length;
-
- do
- {
- if (*src++ != *dst++)
- return FAIL;
- } while (src < end);
-
- return OK;
-}
-
-void srec_flash(char *flash_filename)
-{
- DRESULT res;
- FRESULT fres;
- FATFS fs;
- FIL file;
- err_t err;
- void *start_address;
- uint32_t length;
-
- res = disk_status(0);
- if (res == RES_OK)
- {
- fres = f_mount(0, &fs);
- if (fres == FR_OK)
- {
- if ((fres = f_open(&file, flash_filename, FA_READ) != FR_OK))
- {
- xprintf("flasher file %s not present on disk\r\n",
- flash_filename);
- }
- else
- {
- f_close(&file);
-
- /* first pass: parse and check for inconsistencies */
- xprintf("check file integrity: ");
- err = read_srecords(flash_filename, &start_address, &length,
- simulate);
- if (err == OK)
- {
- xprintf("OK.\r\nerase flash area (from %p, length 0x%lx): ",
- start_address, length);
- err = amd_flash_erase(start_address, length, xputchar);
-
- /* next pass: copy data to destination */
- xprintf("OK.\r\flash data: ");
- err = read_srecords(flash_filename, &start_address, &length, flash);
- if (err == OK)
- {
- /* next pass: verify data */
- xprintf("OK.\r\nverify data: ");
- err = read_srecords(flash_filename, &start_address,
- &length, verify);
- if (err == OK)
- {
- typedef void void_func(void);
- void_func *func;
-
- xprintf("OK.\r\n");
-
- xprintf(
- "target successfully written and verified. Start address: %p\r\n",
- start_address);
-
- func = (void_func *) start_address;
- (*func)();
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- }
- else
- {
- // xprintf("could not mount FAT FS\r\n");
- }
- f_mount(0, 0L);
- }
- else
- {
- // xprintf("could not initialize SD card\r\n");
- }
-}
-
-err_t srec_load(char *flash_filename)
-{
- FRESULT fres;
- FIL file;
- err_t err;
- void *start_address;
- uint32_t length;
-
- if ((fres = f_open(&file, flash_filename, FA_READ) != FR_OK))
- {
- xprintf("flasher file %s not present on disk\r\n", flash_filename);
- }
- else
- {
- f_close(&file);
-
- /* first pass: parse and check for inconsistencies */
- xprintf("check file integrity: ");
- err = read_srecords(flash_filename, &start_address, &length, simulate);
- if (err == OK)
- {
- /* next pass: copy data to destination */
- xprintf("OK (start address = %p).\r\ncopy/flash data: ", start_address);
- err = read_srecords(flash_filename, &start_address, &length, srec_memcpy);
- if (err == OK)
- {
- /* next pass: verify data */
- xprintf("OK (start address = %p).\r\nverify data: ", start_address);
- err = read_srecords(flash_filename, &start_address, &length, verify);
- if (err == OK)
- {
- typedef void void_func(void);
- void_func *func;
-
- xprintf("OK.\r\n");
- xprintf(
- "target successfully written and verified. Start address: %p\r\n",
- start_address);
-
- func = (void_func *) start_address;
- (*func)();
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- return OK;
-}
-
-void basflash(void)
-{
- // const char *basflash_str = "\\BASFLASH";
- const char *bastest_str = "\\BASTEST";
- DRESULT res;
- FRESULT fres;
- FATFS fs;
-
- xprintf("\r\nHello from BASFLASH.S19!\r\n\r\n");
-
- /*
- * read \BASTEST\ folder contents (search for .S19-files). If found load them to their final destination
- * (after BaS has copied them, not their flash location) and return.
- *
- * Files located in the BASTEST-folder thus override those in flash. Useful for testing before flashing
- */
- res = disk_status(0);
- xprintf("disk_status(0) = %d\r\n", res);
- if (res == RES_OK)
- {
- fres = f_mount(0, &fs);
- xprintf("f_mount() = %d\r\n", fres);
- if (fres == FR_OK)
- {
- DIR directory;
-
- fres = f_opendir(&directory, bastest_str);
- xprintf("f_opendir() = %d\r\n", fres);
- if (fres == FR_OK)
- {
- FILINFO fileinfo;
-
- fres = f_readdir(&directory, &fileinfo);
- xprintf("f_readdir() = %d\r\n", fres);
- while (fres == FR_OK)
- {
- const char *srec_ext = ".S19";
- char path[30];
-
- if (fileinfo.fname[0] != '\0') /* found a file */
- {
- xprintf("check file %s (%s == %s ?)\r\n",
- fileinfo.fname,
- &fileinfo.fname[strlen(fileinfo.fname) - 4],
- srec_ext);
- if (strlen(fileinfo.fname) >= 4
- && strncmp(
- &fileinfo.fname[strlen(fileinfo.fname)
- - 4], srec_ext, 4) == 0) /* we have a .S19 file */
- {
- /*
- * build path + filename
- */
- strcpy(path, bastest_str);
- strcat(path, "\\");
- strncat(path, fileinfo.fname, 13);
-
- xprintf("loading file %s\r\n", path);
- /*
- * load file
- */
- srec_load(path);
-// {
-// xprintf("failed to load file %s\r\n", path);
- // error handling
-// }
- }
- }
- else
- break; /* exit if no file found */
- fres = f_readdir(&directory, &fileinfo);
- xprintf("f_readdir() = %d\r\n", fres);
- }
- }
- else
- {
- xprintf("f_opendir %s failed with error code %d\r\n",
- bastest_str, fres);
- }
- }
- else
- {
- // xprintf("could not mount FAT FS\r\n");
- }
- f_mount(0, 0L); /* unmount SD card */
- }
-}
diff --git a/BaS_gcc/exe/basflash_start.c b/BaS_gcc/exe/basflash_start.c
deleted file mode 100644
index f5ea0de..0000000
--- a/BaS_gcc/exe/basflash_start.c
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * basflash_start.c
- *
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-
-#define STACKSIZE 16384
-static uint32_t ownstack[STACKSIZE];
-static uint32_t *stackptr = &ownstack[STACKSIZE - 1];
-
-/*
- * setup our own stack in SDRAM to prevent clashing BaS's in SRAM (size limited).
- */
-void startup(void)
-{
- static uint32_t oldstack;
-
- void basflash(void);
- __asm__ __volatile__("move.l sp,%0\n\t" : "=g"(oldstack) : :);
- __asm__ __volatile__("move.l %0,sp\n\t" : : "g"(stackptr) : );
- basflash();
- __asm__ __volatile__("move.l %0,sp\n\t" : : "g"(oldstack) : "sp");
- (void) stackptr; /* make compiler happy about unused variables */
-}
diff --git a/BaS_gcc/flash/flash.c b/BaS_gcc/flash/flash.c
deleted file mode 100644
index 658c10a..0000000
--- a/BaS_gcc/flash/flash.c
+++ /dev/null
@@ -1,383 +0,0 @@
-#include
-#include "bas_types.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#endif /* MACHINE_FIREBEE */
-
-#define AMD_FLASH_BUS_SHIFT 1
-#define AMD_FLASH_CELL volatile uint16_t
-#define AMD_FLASH_CELL_BYTES 2
-#define AMD_FLASH_CELL_MASK 0x1
-#define AMD_FLASH_CMD_DATA(x) ((uint16_t) x)
-
-struct amd_flash_sector_info
-{
- uint32_t size; /* sector size in bytes */
- uint32_t offset; /* offset from base of device */
-};
-
-/*
- * AM29LV640D flash layout (bottom boot as used in the Firebee )
- */
-static struct amd_flash_sector_info sector[] =
-{
-{ 8 * 1024, 0x00000000 }, /* SA0 */
-{ 8 * 1024, 0x00008000 }, /* SA1 */
-{ 8 * 1024, 0x00010000 }, /* SA2 */
-{ 8 * 1024, 0x00018000 }, /* SA3 */
-{ 8 * 1024, 0x00020000 }, /* SA4 */
-{ 8 * 1024, 0x00028000 }, /* SA5 */
-{ 8 * 1024, 0x00030000 }, /* SA6 */
-{ 8 * 1024, 0x00038000 }, /* SA7 */
-{ 8 * 1024, 0x00040000 }, /* SA8 */
-{ 64 * 1024, 0x00048000 }, /* SA9 */
-{ 64 * 1024, 0x00050000 }, /* SA10 */
-{ 64 * 1024, 0x00058000 }, /* SA11 */
-{ 64 * 1024, 0x00060000 }, /* SA12 */
-{ 64 * 1024, 0x00068000 }, /* SA13 */
-{ 64 * 1024, 0x00070000 }, /* SA14 */
-{ 64 * 1024, 0x00078000 }, /* SA15 */
-{ 64 * 1024, 0x00080000 }, /* SA16 */
-{ 64 * 1024, 0x00088000 }, /* SA17 */
-{ 64 * 1024, 0x00090000 }, /* SA18 */
-{ 64 * 1024, 0x00098000 }, /* SA19 */
-{ 64 * 1024, 0x000a0000 }, /* SA20 */
-{ 64 * 1024, 0x000a8000 }, /* SA21 */
-{ 64 * 1024, 0x000b0000 }, /* SA22 */
-{ 64 * 1024, 0x000b8000 }, /* SA23 */
-{ 64 * 1024, 0x000c0000 }, /* SA24 */
-{ 64 * 1024, 0x000c8000 }, /* SA25 */
-{ 64 * 1024, 0x000d0000 }, /* SA26 */
-{ 64 * 1024, 0x000d8000 }, /* SA27 */
-{ 64 * 1024, 0x000e0000 }, /* SA28 */
-{ 64 * 1024, 0x000e8000 }, /* SA29 */
-{ 64 * 1024, 0x000f0000 }, /* SA30 */
-{ 64 * 1024, 0x000f8000 }, /* SA31 */
-{ 64 * 1024, 0x00100000 }, /* SA32 */
-{ 64 * 1024, 0x00108000 }, /* SA32 */
-{ 64 * 1024, 0x00110000 }, /* SA34 */
-{ 64 * 1024, 0x00118000 }, /* SA35 */
-{ 64 * 1024, 0x00120000 }, /* SA36 */
-{ 64 * 1024, 0x00128000 }, /* SA37 */
-{ 64 * 1024, 0x00130000 }, /* SA38 */
-{ 64 * 1024, 0x00138000 }, /* SA39 */
-{ 64 * 1024, 0x00140000 }, /* SA40 */
-{ 64 * 1024, 0x00148000 }, /* SA41 */
-{ 64 * 1024, 0x00150000 }, /* SA42 */
-{ 64 * 1024, 0x00158000 }, /* SA43 */
-{ 64 * 1024, 0x00160000 }, /* SA44 */
-{ 64 * 1024, 0x00168000 }, /* SA45 */
-{ 64 * 1024, 0x00170000 }, /* SA46 */
-{ 64 * 1024, 0x00178000 }, /* SA47 */
-{ 64 * 1024, 0x00180000 }, /* SA48 */
-{ 64 * 1024, 0x00188000 }, /* SA49 */
-{ 64 * 1024, 0x00190000 }, /* SA50 */
-{ 64 * 1024, 0x00198000 }, /* SA51 */
-{ 64 * 1024, 0x001a0000 }, /* SA52 */
-{ 64 * 1024, 0x001a8000 }, /* SA53 */
-{ 64 * 1024, 0x001b0000 }, /* SA54 */
-{ 64 * 1024, 0x001b8000 }, /* SA55 */
-{ 64 * 1024, 0x001c0000 }, /* SA56 */
-{ 64 * 1024, 0x001c8000 }, /* SA57 */
-{ 64 * 1024, 0x001d0000 }, /* SA58 */
-{ 64 * 1024, 0x001d8000 }, /* SA59 */
-{ 64 * 1024, 0x001e0000 }, /* SA60 */
-{ 64 * 1024, 0x001e8000 }, /* SA61 */
-{ 64 * 1024, 0x001f0000 }, /* SA62 */
-{ 64 * 1024, 0x001f8000 }, /* SA63 */
-{ 64 * 1024, 0x00200000 }, /* SA64 */
-{ 64 * 1024, 0x00208000 }, /* SA65 */
-{ 64 * 1024, 0x00210000 }, /* SA66 */
-{ 64 * 1024, 0x00218000 }, /* SA67 */
-{ 64 * 1024, 0x00220000 }, /* SA68 */
-{ 64 * 1024, 0x00228000 }, /* SA69 */
-{ 64 * 1024, 0x00230000 }, /* SA70 */
-{ 64 * 1024, 0x00238000 }, /* SA71 */
-{ 64 * 1024, 0x00240000 }, /* SA72 */
-{ 64 * 1024, 0x00248000 }, /* SA73 */
-{ 64 * 1024, 0x00250000 }, /* SA74 */
-{ 64 * 1024, 0x00258000 }, /* SA75 */
-{ 64 * 1024, 0x00260000 }, /* SA76 */
-{ 64 * 1024, 0x00268000 }, /* SA77 */
-{ 64 * 1024, 0x00270000 }, /* SA78 */
-{ 64 * 1024, 0x00278000 }, /* SA79 */
-{ 64 * 1024, 0x00280000 }, /* SA80 */
-{ 64 * 1024, 0x00288000 }, /* SA81 */
-{ 64 * 1024, 0x00290000 }, /* SA82 */
-{ 64 * 1024, 0x00298000 }, /* SA83 */
-{ 64 * 1024, 0x002a0000 }, /* SA84 */
-{ 64 * 1024, 0x002a8000 }, /* SA85 */
-{ 64 * 1024, 0x002b0000 }, /* SA86 */
-{ 64 * 1024, 0x002b8000 }, /* SA87 */
-{ 64 * 1024, 0x002c0000 }, /* SA88 */
-{ 64 * 1024, 0x002c8000 }, /* SA89 */
-{ 64 * 1024, 0x002d0000 }, /* SA90 */
-{ 64 * 1024, 0x002d8000 }, /* SA91 */
-{ 64 * 1024, 0x002e0000 }, /* SA92 */
-{ 64 * 1024, 0x002e8000 }, /* SA93 */
-{ 64 * 1024, 0x002f0000 }, /* SA94 */
-{ 64 * 1024, 0x002f8000 }, /* SA95 */
-{ 64 * 1024, 0x00300000 }, /* SA96 */
-{ 64 * 1024, 0x00308000 }, /* SA97 */
-{ 64 * 1024, 0x00310000 }, /* SA98 */
-{ 64 * 1024, 0x00318000 }, /* SA99 */
-{ 64 * 1024, 0x00320000 }, /* SA100 */
-{ 64 * 1024, 0x00328000 }, /* SA101 */
-{ 64 * 1024, 0x00330000 }, /* SA102 */
-{ 64 * 1024, 0x00338000 }, /* SA103 */
-{ 64 * 1024, 0x00340000 }, /* SA104 */
-{ 64 * 1024, 0x00348000 }, /* SA105 */
-{ 64 * 1024, 0x00350000 }, /* SA106 */
-{ 64 * 1024, 0x00358000 }, /* SA107 */
-{ 64 * 1024, 0x00360000 }, /* SA108 */
-{ 64 * 1024, 0x00368000 }, /* SA109 */
-{ 64 * 1024, 0x00370000 }, /* SA110 */
-{ 64 * 1024, 0x00378000 }, /* SA111 */
-{ 64 * 1024, 0x00380000 }, /* SA112 */
-{ 64 * 1024, 0x00388000 }, /* SA113 */
-{ 64 * 1024, 0x00390000 }, /* SA114 */
-{ 64 * 1024, 0x00398000 }, /* SA115 */
-{ 64 * 1024, 0x003a0000 }, /* SA116 */
-{ 64 * 1024, 0x003a8000 }, /* SA117 */
-{ 64 * 1024, 0x003b0000 }, /* SA118 */
-{ 64 * 1024, 0x003b8000 }, /* SA119 */
-{ 64 * 1024, 0x003c0000 }, /* SA120 */
-{ 64 * 1024, 0x003c8000 }, /* SA121 */
-{ 64 * 1024, 0x003d0000 }, /* SA122 */
-{ 64 * 1024, 0x003d8000 }, /* SA123 */
-{ 64 * 1024, 0x003e0000 }, /* SA124 */
-{ 64 * 1024, 0x003e8000 }, /* SA125 */
-{ 64 * 1024, 0x003f0000 }, /* SA126 */
-{ 64 * 1024, 0x003f8000 }, /* SA127 */
-};
-
-static const int AMD_FLASH_SECTORS = sizeof(sector) / sizeof(struct amd_flash_sector_info);
-
-#define SOFFSET(n) (sector[n].offset)
-#define SADDR(n) (SOFFSET(n) >> AMD_FLASH_BUS_SHIFT)
-#define SSIZE(n) (sector[n].size)
-
-#define AMD_FLASH_DEVICES 1
-
-static AMD_FLASH_CELL *pFlash;
-
-typedef struct romram
-{
- uint32_t flash_address;
- uint32_t ram_address;
- char *name;
-} ROMRAM;
-
-static const struct romram flash_areas[] =
-{
-{ 0xe0000000, 0x00e00000, "BaS" }, /* BaS */
-{ 0xe0600000, 0x00e00000, "EmuTOS" }, /* EmuTOS */
-{ 0xe0400000, 0x00e00000, "FireTOS" }, /* FireTOS */
-{ 0xe0700000, 0x00e00000, "FPGA" }, /* FPGA config */
-};
-static const int num_flash_areas = sizeof(flash_areas) / sizeof(struct romram);
-
-#define FLASH_ADDRESS BOOTFLASH_BASE_ADDRESS
-
-/*
- * erase a flash sector
- *
- * sector_num is the index into the sector table above.
- *
- * FIXME: need to disable data cache to ensure proper operation
- */
-void amd_flash_sector_erase(int n)
-{
- volatile AMD_FLASH_CELL status;
-
- (void) num_flash_areas; /* to make compiler happy */
-
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0x80);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[SADDR(n)] = AMD_FLASH_CMD_DATA(0x30);
-
- do
- status = pFlash[SADDR(n)];
- while ((status & AMD_FLASH_CMD_DATA(0x80)) != AMD_FLASH_CMD_DATA(0x80));
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-}
-
-int amd_flash_erase(void *start, int bytes, void (*putchar)(int))
-{
- int i, ebytes = 0;
-
- if (bytes == 0)
- return 0;
-
- for (i = 0; i < AMD_FLASH_SECTORS; i++)
- {
- if (start >= (void *)((void *) pFlash + SOFFSET(i)) &&
- start <= (void *)((void *) pFlash + SOFFSET(i) + (SSIZE(i) - 1)))
- {
- break;
- }
- }
-
- while (ebytes < bytes)
- {
- if (putchar != NULL)
- {
- putchar('.');
- }
- amd_flash_sector_erase(i);
- ebytes += SSIZE(i);
- i++;
- }
-
- if (putchar != NULL)
- {
- putchar(10); /* LF */
- putchar(13); /* CR */
- }
-
- return ebytes;
-}
-
-void amd_flash_program_cell(AMD_FLASH_CELL *dst, AMD_FLASH_CELL data)
-{
- volatile AMD_FLASH_CELL status;
- int retry;
-
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0x2AA] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0x555] = AMD_FLASH_CMD_DATA(0xA0);
- *dst = data;
-
- /*
- * Wait for program operation to finish
- * (Data# Polling Algorithm)
- */
- retry = 0;
- while (1)
- {
- status = *dst;
- if ((status & AMD_FLASH_CMD_DATA(0x80)) ==
- (data & AMD_FLASH_CMD_DATA(0x80)))
- {
- break;
- }
- if (status & AMD_FLASH_CMD_DATA(0x20))
- {
- status = *dst;
- if ((status & AMD_FLASH_CMD_DATA(0x80)) ==
- (data & AMD_FLASH_CMD_DATA(0x80)))
- {
- break;
- }
- if (++retry > 1024)
- {
- break;
- }
- }
- }
-}
-
-
-int amd_flash_program(void *dest, void *source, int bytes, int erase, void (*func)(void), void (*putchar)(int))
-{
- AMD_FLASH_CELL *src;
- AMD_FLASH_CELL *dst;
- int hashi = 1;
- int hashj = 0;
- char hash[5];
-
- hash[0] = 8; /* Backspace */
- hash[1] = 124;/* "|" */
- hash[2] = 47; /* "/" */
- hash[3] = 45; /* "-" */
- hash[4] = 92; /* "\" */
-
- src = (AMD_FLASH_CELL *)source;
- dst = (AMD_FLASH_CELL *)dest;
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-
- /*
- * Erase device if necessary
- */
- if (erase)
- {
- amd_flash_erase(dest, bytes, putchar);
- }
-
- /*
- * Program device
- */
- while (bytes > 0)
- {
- amd_flash_program_cell(dst, *src);
-
- /* Verify Write */
- if (*dst == *src)
- {
- bytes -= AMD_FLASH_CELL_BYTES;
- *dst++, *src++;
-
- if ((putchar != NULL))
- {
- /* Hash marks to indicate progress */
- if (hashj == 0x1000)
- {
- hashj = -1;
- putchar(hash[0]);
- putchar(hash[hashi]);
-
- hashi++;
- if (hashi == 5)
- {
- hashi = 1;
- }
-
- }
- hashj++;
- }
- }
- else
- break;
- }
-
- /*
- * Place device in read mode
- */
- pFlash[0] = AMD_FLASH_CMD_DATA(0xAA);
- pFlash[0] = AMD_FLASH_CMD_DATA(0x55);
- pFlash[0] = AMD_FLASH_CMD_DATA(0xF0);
-
- if (putchar != NULL)
- {
- putchar(hash[0]);
- }
-
- /*
- * If a function was passed in, call it now
- */
- if ((func != NULL))
- {
- func();
- }
-
- return ((int)src - (int)source);
-}
-
diff --git a/BaS_gcc/flash/s19reader.c b/BaS_gcc/flash/s19reader.c
deleted file mode 100644
index 10780af..0000000
--- a/BaS_gcc/flash/s19reader.c
+++ /dev/null
@@ -1,449 +0,0 @@
-/*
- * s19reader.c
- *
- * Created on: 17.12.2012
- * Author: mfro
- * The ACP Firebee project
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2012 M. Froeschle
- */
-
-#include
-
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "sd_card.h"
-#include "diskio.h"
-#include "ff.h"
-#include "s19reader.h"
-#include "dma.h"
-#include "cache.h"
-
-// #define DEBUG
-#include "debug.h"
-
-/*
- * Yes, I know. The following doesn't really look like code should look like...
- *
- * I did try to map structures over the S-records with (packed) which didn't work reliably due to gcc _not_ packing them appropiate
- * and finally ended up with this. Not nice, put paid (and working).
- *
- */
-#define SREC_TYPE(a) (a)[0] /* type of record */
-#define SREC_COUNT(a) (a)[1] /* length of valid bytes to follow */
-#define SREC_ADDR16(a) (256 * (a)[2] + (a)[3]) /* 2 byte address field */
-#define SREC_ADDR24(a) (0x10000 * (a)[2] + 0x100 * \
- (a)[3] + (a)[4]) /* 3 byte address field */
-#define SREC_ADDR32(a) (0x1000000 * a[2] + 0x10000 * \
- (a)[3] + 0x100 * (a)[4] + (a)[5]) /* 4 byte address field */
-#define SREC_DATA16(a) ((uint8_t *)&((a)[4])) /* address of first byte of data in a record */
-#define SREC_DATA24(a) ((uint8_t *)&((a)[5])) /* address of first data byte in 24 bit record */
-#define SREC_DATA32(a) ((uint8_t *)&((a)[6])) /* adress of first byte of a record with 32 bit address field */
-#define SREC_DATA16_SIZE(a) (SREC_COUNT((a)) - 3) /* length of the data[] array without the checksum field */
-#define SREC_DATA24_SIZE(a) (SREC_COUNT((a)) - 4) /* length of the data[] array without the checksum field */
-#define SREC_DATA32_SIZE(a) (SREC_COUNT((a)) - 5) /* length of the data[] array without the checksum field */
-#define SREC_CHECKSUM(a) (a)[SREC_COUNT(a) + 2 - 1] /* record's checksum (two's complement of the sum of all bytes) */
-
-/*
- * convert a single hex character into byte
- */
-static uint8_t nibble_to_byte(uint8_t nibble)
-{
- if ((nibble >= '0') && (nibble <= '9'))
- return nibble - '0';
- else if ((nibble >= 'A' && nibble <= 'F'))
- return 10 + nibble - 'A';
- else if ((nibble >= 'a' && nibble <= 'f'))
- return 10 + nibble - 'a';
- return 0;
-}
-
-/*
- * convert two hex characters into byte
- */
-static uint8_t hex_to_byte(uint8_t hex[2])
-{
- return 16 * (nibble_to_byte(hex[0])) + (nibble_to_byte(hex[1]));
-}
-
-#ifdef _NOT_USED_
-/*
- * convert four hex characters into a 16 bit word
- */
-static uint16_t hex_to_word(uint8_t hex[4])
-{
- return 256 * hex_to_byte(&hex[0]) + hex_to_byte(&hex[2]);
-}
-
-/*
- * convert eight hex characters into a 32 bit word
- */
-static uint32_t hex_to_long(uint8_t hex[8])
-{
- return 65536 * hex_to_word(&hex[0]) + hex_to_word(&hex[4]);
-}
-#endif /* _NOT_USED_ */
-
-/*
- * compute the record checksum
- *
- * it consists of the one's complement of the byte sum of the data from the count field until the end
- */
-static uint8_t checksum(uint8_t arr[])
-{
- int i;
- uint8_t cs = SREC_COUNT(arr);
-
- for (i = 0; i < SREC_COUNT(arr) - 1; i++)
- {
- cs += arr[i + 2];
- }
- return ~cs;
-}
-
-#ifdef _NOT_USED_
-void print_record(uint8_t *arr)
-{
- switch (SREC_TYPE(arr))
- {
- case 0:
- {
- xprintf("type 0x%x ", SREC_TYPE(arr));
- xprintf("count 0x%x ", SREC_COUNT(arr));
- xprintf("addr 0x%x ", SREC_ADDR16(arr));
- xprintf("module %11.11s ", SREC_DATA16(arr));
- xprintf("chk 0x%x 0x%x\r\n", SREC_CHECKSUM(arr), checksum(arr));
- }
- break;
-
- case 3:
- case 7:
- {
- xprintf("type 0x%x ", SREC_TYPE(arr));
- xprintf("count 0x%x ", SREC_COUNT(arr));
- xprintf("addr 0x%x ", SREC_ADDR32(arr));
- xprintf("data %02x,%02x,%02x,%02x,... ",
- SREC_DATA32(arr)[0], SREC_DATA32(arr)[1], SREC_DATA32(arr)[3], SREC_DATA32(arr)[4]);
- xprintf("chk 0x%x 0x%x\r\n", SREC_CHECKSUM(arr), checksum(arr));
- }
- break;
-
- default:
- xprintf("unsupported report type %d in print_record\r\n", arr[0]);
- break;
- }
-}
-#endif /* _NOT_USED_ */
-
-/*
- * convert an S-record line into its corresponding byte vector (ASCII->binary)
- */
-static void line_to_vector(uint8_t *buff, uint8_t *vector)
-{
- int i;
- int length;
- uint8_t *vp = vector;
-
- length = hex_to_byte(buff + 2);
-
- buff++;
- *vp++ = nibble_to_byte(*buff); /* record type. Only one single nibble */
- buff++;
-
- for (i = 0; i <= length; i++)
- {
- *vp++ = hex_to_byte(buff);
- buff += 2;
- }
-}
-
-/*
- * read and parse a Motorola S-record file and copy contents to dst. The theory of operation is to read and parse the S-record file
- * and to use the supplied callback routine to copy the buffer to the destination once the S-record line is converted.
- * The memcpy callback can be anything (as long as it conforms parameter-wise) - a basically empty function to just let
- * read_srecords validate the file, a standard memcpy() to copy file contents to destination RAM or a more sophisticated
- * routine that does write/erase flash
- *
- * FIXME: Currently only records that the gcc toolchain emits are supported.
- *
- * Parameters:
- * IN
- * filename - the filename that contains the S-records
- * callback - the memcpy() routine discussed above
- * OUT
- * start_address - the execution address of the code as read from the file. Can be used to jump into and execute it
- * actual_length - the overall length of the binary code read from the file
- * returns
- * OK or an err_t error code if anything failed
- */
-err_t read_srecords(char *filename, void **start_address, uint32_t *actual_length, memcpy_callback_t callback)
-{
- FRESULT fres;
- FIL file;
- err_t ret = OK;
- uint32_t length = 0;
-
- if ((fres = f_open(&file, filename, FA_READ) == FR_OK))
- {
- uint8_t line[255];
- int lineno = 0;
- int data_records = 0;
- bool found_block_header = false;
- bool found_block_end = false;
- bool found_block_data = false;
-
- *actual_length = 0;
-
- while (ret == OK && (uint8_t *) f_gets((char *) line, sizeof(line), &file) != NULL)
- {
- lineno++;
- uint8_t vector[80];
-
- memset(vector, 0, sizeof(vector));
- line_to_vector(line, vector); /* vector now contains the decoded contents of line, from line[1] on */
-
- if (line[0] == 'S')
- {
- if (SREC_CHECKSUM(vector) != checksum(vector))
- {
- xprintf("invalid checksum 0x%x (should be 0x%x) in line %d\r\n",
- SREC_CHECKSUM(vector), checksum(vector), lineno);
- ret = FAIL;
- }
-
- switch (vector[0])
- {
- case 0: /* block header */
- found_block_header = true;
- if (found_block_data || found_block_end)
- {
- xprintf("S7 or S3 record found before S0: S-records corrupt?\r\n");
- ret = FAIL;
- }
-
- break;
-
- case 2: /* three byte address field data record */
- if (!found_block_header || found_block_end)
- {
- xprintf("S2 record found before S0 or after S7: S-records corrupt?\r\n");
- ret = FAIL;
- }
- ret = callback((uint8_t *) SREC_ADDR24(vector), SREC_DATA24(vector), SREC_DATA24_SIZE(vector));
- length += SREC_DATA24_SIZE(vector);
- data_records++;
- break;
-
- case 3: /* four byte address field data record */
- if (!found_block_header || found_block_end)
- {
- xprintf("S3 record found before S0 or after S7: S-records corrupt?\r\n");
- ret = FAIL;
- }
- length += SREC_DATA32_SIZE(vector);
- ret = callback((uint8_t *) SREC_ADDR32(vector), SREC_DATA32(vector), SREC_DATA32_SIZE(vector));
- data_records++;
- break;
-
- case 7: /* four byte address field end record */
- if (!found_block_header || found_block_end)
- {
- xprintf("S7 record found before S0 or after S7: S-records corrupt?\r\n");
- }
- else
- {
- // xprintf("S7 record (end) found after %d valid data blocks\r\n", data_records);
- *start_address = (void *) SREC_ADDR32(vector);
- xprintf("%d blocks read. Found start address %p\r\n", data_records, *start_address);
- }
- break;
-
- case 8: /* three byte address field end record */
- if (!found_block_header || found_block_end)
- {
- xprintf("S8 record found before S0 or after S8: S-records corrupt?\r\n");
- }
- else
- {
- // xprintf("S8 record (end) found after %d valid data blocks\r\n", data_records);
- *start_address = (void *) SREC_ADDR24(vector);
- }
- break;
-
- default:
- xprintf("unsupported record type (%d) found in line %d\r\n", vector[0], lineno);
- xprintf("offending line: \r\n");
- xprintf("%s\r\n", line);
- ret = FAIL;
- break;
- }
- }
- else
- {
- xprintf("illegal character ('%c') found on line %d: S-records corrupt?\r\n", line[0], lineno);
- ret = FAIL;
- break;
- }
- }
- f_close(&file);
- }
- else
- {
- xprintf("could not open file %s\r\n", filename);
- ret = FILE_OPEN;
- }
- *actual_length = length;
- return ret;
-}
-
-/*
- * this callback just does nothing besides returning OK. Meant to do a dry run over the file to check its integrity
- */
-static err_t simulate()
-{
- err_t ret = OK;
-
- return ret;
-}
-
-
-#ifdef _NOT_USED_
-static err_t flash(uint8_t *dst, uint8_t *src, uint32_t length)
-{
- err_t ret = OK;
-
- /* TODO: do the actual flash */
- amd_flash_program(dst, src, length, false, NULL, xputchar);
-
- return ret;
-}
-#endif /* _NOT_USED_ */
-
-
-/*
- * this callback verifies the data against the S-record file contents after a write to destination
- */
-static err_t verify(uint8_t *dst, uint8_t *src, size_t length)
-{
- uint8_t *end = src + length;
-
- do
- {
- if (*src++ != *dst++)
- {
- xprintf("data differs at %p (expected 0x%02x, got 0x%02x)\r\n",
- *(src - 1), *(dst - 1));
- return FAIL;
- }
- } while (src < end);
-
- return OK;
-}
-
-/*
- * needed to avoid missing type cast warning below
- */
-err_t srec_memcpy(uint8_t *dst, uint8_t *src, size_t n)
-{
- err_t e = OK;
-
- xprintf(".");
- dbg("\r\ncopy from %p to %p, length %d", src, dst, n);
- // dma_memcpy((void *) dst, (void *) src, n);
- memcpy((void *) dst, (void *) src, n);
- return e;
-}
-
-void srec_execute(char *flasher_filename)
-{
- DRESULT res;
- FRESULT fres;
- FATFS fs;
- FIL file;
- err_t err;
- void *start_address;
- uint32_t length;
-
- disk_initialize(0);
- res = disk_status(0);
- if (res == RES_OK)
- {
- fres = f_mount(0, &fs);
- if (fres == FR_OK)
- {
- if ((fres = f_open(&file, flasher_filename, FA_READ) != FR_OK))
- {
- xprintf("flasher file %s not present on disk\r\n", flasher_filename);
- }
- else
- {
- f_close(&file);
-
- /* first pass: parse and check for inconsistencies */
- xprintf("check file integrity: ");
- err = read_srecords(flasher_filename, &start_address, &length, simulate);
- if (err == OK)
- {
- /* next pass: copy data to destination */
- xprintf("OK (start address=%p, length = %ld).\r\ncopy data: ", start_address, length);
- err = read_srecords(flasher_filename, &start_address, &length, srec_memcpy);
- if (err == OK)
- {
- /* next pass: verify data */
- xprintf("OK.\r\nverify data: ");
- err = read_srecords(flasher_filename, &start_address, &length, verify);
- if (err == OK)
- {
- xprintf("OK.\r\n");
-
- typedef void void_func(void);
- void_func *func;
- xprintf("target successfully written and verified. Start address: %p\r\n", start_address);
-
- func = start_address;
- flush_and_invalidate_caches();
- (*func)();
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- else
- {
- xprintf("failed\r\n");
- }
- }
- }
- else
- {
- // xprintf("could not mount FAT FS\r\n");
- }
- f_mount(0, NULL);
- }
- else
- {
- // xprintf("could not initialize SD card\r\n");
- }
-}
-
diff --git a/BaS_gcc/flash_scripts/flash_firebee_bas.bdm b/BaS_gcc/flash_scripts/flash_firebee_bas.bdm
deleted file mode 100755
index 51c9b8a..0000000
--- a/BaS_gcc/flash_scripts/flash_firebee_bas.bdm
+++ /dev/null
@@ -1,53 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-sleep 1
-
-wait
-
-# use system sdram as flashlib scratch area.
-# TODO: plugin flashing seems to work o.k. now for smaller binaries, while it doesn't for larger ones (EmuTOS) yet.
-# This seems to be related to large flash buffers and PC-relative adressing of the plugin
-flash-plugin 0x1000 0xf000 flash29.plugin
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xe0000000
-
-# Erase flash from 0xE0000000 to 0xE00FFFFF (reserved space for BaS)
-#
-# Caution: sector offset numbers need to be the ones from the x16 address range
-# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
-#
-
-erase 0xe0000000 0
-erase 0xe0000000 0x1000
-erase 0xe0000000 0x2000
-erase 0xe0000000 0x3000
-erase 0xe0000000 0x4000
-erase 0xe0000000 0x5000
-erase 0xe0000000 0x6000
-erase 0xe0000000 0x7000
-erase 0xe0000000 0x8000
-erase 0xe0000000 0x10000
-erase 0xe0000000 0x18000
-erase 0xe0000000 0x20000
-erase 0xe0000000 0x28000
-erase 0xe0000000 0x30000
-erase 0xe0000000 0x38000
-erase 0xe0000000 0x40000
-erase 0xe0000000 0x48000
-erase 0xe0000000 0x50000
-erase 0xe0000000 0x58000
-erase 0xe0000000 0x60000
-erase 0xe0000000 0x70000
-erase 0xe0000000 0x78000
-
-erase-wait 0xe0000000
-# should now have erased from 0xe0000000 to 0xe00fffff
-
-dump-mem 0xe0010000 0x20 b
-
-load -v ../firebee/bas.elf
-wait
diff --git a/BaS_gcc/flash_scripts/flash_firebee_etos.bdm b/BaS_gcc/flash_scripts/flash_firebee_etos.bdm
deleted file mode 100755
index df3d892..0000000
--- a/BaS_gcc/flash_scripts/flash_firebee_etos.bdm
+++ /dev/null
@@ -1,81 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2
-#
-# flash EmuTOS using bdmctrl
-#
-open $1
-reset
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00001180 4
-write 0xFF000504 0x007F0001 4
-
-# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x0000001A 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x0800001A 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x1000001A 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x1800001A 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73622830 4 # SDCFG1
-write 0xFF00010C 0x46770000 4 # SDCFG2
-
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x048D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x008D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 10
-
-
-# use system sdram as flashlib scratch area
-# flashing EmuTOS with plugin does not work yet (at least not for 64bit hosts)
-#flash-plugin 0x1000 0xf000 flash29.plugin
-
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xe0000000
-
-# Erase flash from 0xE0600000 to 0xE06FFFFF (reserved space for EmuTOS)
-#
-# Caution: sector offset numbers need to be the ones from the x16 address range
-# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
-#
-# contrary to documentation, it seems we need to erase-wait after each sector
-
-erase 0xe0000000 0x300000
-erase-wait 0xe0000000
-erase 0xe0000000 0x308000
-erase-wait 0xe0000000
-erase 0xe0000000 0x310000
-erase-wait 0xe0000000
-erase 0xe0000000 0x318000
-erase-wait 0xe0000000
-erase 0xe0000000 0x320000
-erase-wait 0xe0000000
-erase 0xe0000000 0x328000
-erase-wait 0xe0000000
-erase 0xe0000000 0x330000
-erase-wait 0xe0000000
-erase 0xe0000000 0x338000
-erase-wait 0xe0000000
-erase 0xe0000000 0x340000
-erase-wait 0xe0000000
-erase 0xe0000000 0x348000
-erase-wait 0xe0000000
-erase 0xe0000000 0x350000
-erase-wait 0xe0000000
-erase 0xe0000000 0x358000
-erase-wait 0xe0000000
-erase 0xe0000000 0x360000
-erase-wait 0xe0000000
-erase 0xe0000000 0x368000
-erase-wait 0xe0000000
-erase 0xe0000000 0x370000
-erase-wait 0xe0000000
-erase 0xe0000000 0x378000
-erase-wait 0xe0000000
-
-load -v emutos-firebee.elf
diff --git a/BaS_gcc/flash_scripts/flash_firebee_firetos.bdm b/BaS_gcc/flash_scripts/flash_firebee_firetos.bdm
deleted file mode 100755
index 41a137c..0000000
--- a/BaS_gcc/flash_scripts/flash_firebee_firetos.bdm
+++ /dev/null
@@ -1,59 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00001180 4
-write 0xFF000504 0x007F0001 4
-
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xe0000000
-
-# flash-plugin (target-based flashing) does not work yet
-# flash-plugin 0x10000000 0x4000 flash29.plugin
-
-# Erase flash from 0xE0400000 to 0xE04FFFFF (reserved space for FireTOS)
-#
-# Caution: sector offset numbers need to be the ones from the x16 address range
-# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
-#
-# contrary to documentation, it seems we need to erase-wait after each sector
-
-erase 0xe0000000 0x200000
-erase-wait 0xe0000000
-erase 0xe0000000 0x208000
-erase-wait 0xe0000000
-erase 0xe0000000 0x210000
-erase-wait 0xe0000000
-erase 0xe0000000 0x218000
-erase-wait 0xe0000000
-erase 0xe0000000 0x220000
-erase-wait 0xe0000000
-erase 0xe0000000 0x228000
-erase-wait 0xe0000000
-erase 0xe0000000 0x230000
-erase-wait 0xe0000000
-erase 0xe0000000 0x238000
-erase-wait 0xe0000000
-erase 0xe0000000 0x240000
-erase-wait 0xe0000000
-erase 0xe0000000 0x248000
-erase-wait 0xe0000000
-erase 0xe0000000 0x250000
-erase-wait 0xe0000000
-erase 0xe0000000 0x258000
-erase-wait 0xe0000000
-erase 0xe0000000 0x260000
-erase-wait 0xe0000000
-erase 0xe0000000 0x268000
-erase-wait 0xe0000000
-erase 0xe0000000 0x270000
-erase-wait 0xe0000000
-erase 0xe0000000 0x278000
-erase-wait 0xe0000000
-
-load -v firetos.elf
diff --git a/BaS_gcc/flash_scripts/flash_firebee_fpga.bdm b/BaS_gcc/flash_scripts/flash_firebee_fpga.bdm
deleted file mode 100755
index ea40e17..0000000
--- a/BaS_gcc/flash_scripts/flash_firebee_fpga.bdm
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-#reset
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00001180 4
-write 0xFF000504 0x007F0001 4
-
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xe0000000
-
-# flash-plugin (target-based flashing) does not work yet
-#flash-plugin 0x10000000 0x4000 flash29.plugin
-
-# Erase flash from 0xE0700000 to 0xE07FFFFF (reserved space for FPGA)
-#
-# Caution: sector offset numbers need to be the ones from the x16 address range
-# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
-#
-# contrary to documentation, it seems we need to erase-wait after each sector
-
-erase 0xe0000000 0x380000
-erase-wait 0xe0000000
-erase 0xe0000000 0x388000
-erase-wait 0xe0000000
-erase 0xe0000000 0x390000
-erase-wait 0xe0000000
-erase 0xe0000000 0x398000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3A0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3A0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3A8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3B0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3B8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3C0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3C8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3D0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3D8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3E0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3E8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3F0000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3F8000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3F9000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FA000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FB000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FC000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FD000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FE000
-erase-wait 0xe0000000
-erase 0xe0000000 0x3FF000
-erase-wait 0xe0000000
-
-wait
-
-load -v FPGA.elf
diff --git a/BaS_gcc/flash_scripts/flash_m548x_bas.bdm b/BaS_gcc/flash_scripts/flash_m548x_bas.bdm
deleted file mode 100755
index 3db5836..0000000
--- a/BaS_gcc/flash_scripts/flash_m548x_bas.bdm
+++ /dev/null
@@ -1,92 +0,0 @@
-#!/usr/local/bin/bdmctrl
-#
-# m548x board initialization for bdmctrl
-#
-open $1
-reset
-wait
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-dump-register VBR
-
-# Turn on MBAR at 0xFF00_0000
-write-ctrl 0x0C0F 0xFF000000
-dump-register MBAR
-
-# Turn on RAMBAR0 at address FF10_0000
-write-ctrl 0x0C04 0xFF100007
-
-# Turn on RAMBAR1 at address FF10_1000 (disabled - not mapped by bdm currently)
-write-ctrl 0x0C05 0xFF101001
-
-#
-# Init CS0 (BootFLASH @ E000_0000 - E03F_FFFF 4Mbytes)
-write 0xFF000500 0xE0000000 4
-#write 0xFF000508 0x00041180 4
-write 0xFF000508 0x00100D80 4
-write 0xFF000504 0x003F0001 4
-
-# SDRAM Initialization @ 0000_0000 - 03FF_FFFF 64 Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x00000019 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x08000000 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x10000000 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x18000000 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73711630 4 # SDCFG1
-write 0xFF00010C 0x46370000 4 # SDCFG2
-
-write 0xFF000104 0xE10B0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x058D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x018D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 10
-
-
-# use system sdram as flashlib scratch area.
-# TODO: plugin flashing seems to work o.k. now for smaller binaries, while it doesn't for larger ones (EmuTOS) yet.
-# This seems to be related to large flash buffers and PC-relative adressing of the plugin
-#flash-plugin 0x1000 0xf000 flash29.plugin
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xE0000000
-#flash-plugin 0x1000 0xf000 flashintelc3.plugin
-
-# Erase flash from 0xE0000000 to 0xE00FFFFF (reserved space for bas)
-#
-# Caution: sector offset numbers need to be the ones from the x16 address range
-# column and they vary in size - needs to be exactly as in the data sheet (p. 9)
-#
-# contrary to documentation, it seems we need to erase-wait after each sector
-
-erase 0xE0000000 0
-erase 0xE0000000 1
-erase 0xE0000000 2
-erase 0xE0000000 3
-erase 0xE0000000 4
-erase 0xE0000000 5
-erase 0xE0000000 6
-erase 0xE0000000 7
-erase 0xE0000000 8
-erase 0xE0000000 9
-erase 0xE0000000 10
-erase 0xE0000000 11
-erase 0xE0000000 12
-erase 0xE0000000 13
-#erase 0xE0000000 0x2000
-#erase 0xE0000000 0x3000
-#erase 0xE0000000 0x4000
-#erase 0xE0000000 0x5000
-#erase 0xE0000000 0x00006000
-#erase 0xE0000000 0x00007000
-#erase 0xE0000000 0x00008000
-#erase 0xE0000000 0x00009000
-#erase 0xE0000000 0x0000a000
-#erase 0xE0000000 0x0000b000
-#erase-wait 0xe0000000
-load -v ../m5484lite/bas.elf
-wait
diff --git a/BaS_gcc/flash_scripts/flash_m548x_dbug.bdm b/BaS_gcc/flash_scripts/flash_m548x_dbug.bdm
deleted file mode 100755
index eab7723..0000000
--- a/BaS_gcc/flash_scripts/flash_m548x_dbug.bdm
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/local/bin/bdmctrl
-#
-# m548x board initialization for bdmctrl
-#
-open $1
-reset
-wait
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-dump-register VBR
-
-# Turn on MBAR at 0x1000_0000
-write-ctrl 0x0C0F 0x10000000
-dump-register MBAR
-
-# Turn on RAMBAR0 at address 2000_0000
-write-ctrl 0x0C04 0x20000007
-
-# Turn on RAMBAR1 at address FF10_1000 (disabled - not mapped by bdm currently)
-write-ctrl 0x0C05 0x20001001
-
-#
-# Init CS0 (BootFLASH @ FF80_0000 - FFBF_FFFF 4Mbytes)
-write 0xFF000500 0xFF800000 4
-write 0xFF000508 0x00100D80 4
-write 0xFF000504 0x003F0001 4
-
-# SDRAM Initialization @ 0000_0000 - 03FF_FFFF 64 Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x00000019 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x08000000 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x10000000 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x18000000 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73711630 4 # SDCFG1
-write 0xFF00010C 0x46370000 4 # SDCFG2
-
-write 0xFF000104 0xE10B0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x058D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x018D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 10
-
-
-# use system sdram as flashlib scratch area.
-# TODO: plugin flashing seems to work o.k. now for smaller binaries, while it doesn't for larger ones (EmuTOS) yet.
-# This seems to be related to large flash buffers and PC-relative adressing of the plugin
-#flash-plugin 0x1000 0xf000 flash29.plugin
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xFF800000
-#flash-plugin 0x1000 0xf000 flashintelc3.plugin
-
-# Erase flash from 0xFF800000 to 0xFFBFFFFF (reserved space for bas)
-#
-# contrary to documentation, it seems we need to erase-wait after each sector
-
-erase 0xFF800000 0
-erase 0xFF800000 1
-erase 0xFF800000 2
-erase 0xFF800000 3
-erase 0xFF800000 4
-erase 0xFF800000 5
-erase 0xFF800000 6
-erase 0xFF800000 7
-erase 0xFF800000 8
-erase 0xFF800000 9
-erase 0xFF800000 10
-erase 0xFF800000 11
-erase 0xFF800000 12
-erase 0xFF800000 13
-load -v m548xlite_dbug_flash.elf
-wait
diff --git a/BaS_gcc/flash_scripts/flash_m548x_etos.bdm b/BaS_gcc/flash_scripts/flash_m548x_etos.bdm
deleted file mode 100755
index c53b527..0000000
--- a/BaS_gcc/flash_scripts/flash_m548x_etos.bdm
+++ /dev/null
@@ -1,66 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2
-#
-# flash EmuTOS using bdmctrl
-#
-open $1
-reset
-
-# Turn on RAMBAR0 at address FF10_0000
-write-ctrl 0x0C04 0xFF100007
-
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-write 0xFF000500 0xE0000000 4
-write 0xFF000508 0x00001180 4
-write 0xFF000504 0x007F0001 4
-
-# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
-write 0xFF000004 0x000002AA 4 # SDRAMDS configuration
-write 0xFF000020 0x0000001A 4 # SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF)
-write 0xFF000024 0x0800001A 4 # SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF)
-write 0xFF000028 0x1000001A 4 # SDRAM CS2 configuration (128Mbytes 1000_0000 - 17FF_FFFF)
-write 0xFF00002C 0x1800001A 4 # SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF)
-write 0xFF000108 0x73622830 4 # SDCFG1
-write 0xFF00010C 0x46770000 4 # SDCFG2
-
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000100 0x40010000 4 # SDMR (write to LEMR)
-write 0xFF000100 0x048D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0xFF000104 0xE10D0002 4 # SDCR + IPALL
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0xFF000100 0x008D0000 4 # SDMR (write to LMR)
-write 0xFF000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 10
-
-
-# use sram as flashlib scratch area
-# flashing EmuTOS with plugin does not work yet (at least not for 64bit hosts)
-#flash-plugin 0xFF101000 0xffff flashintelc3.plugin
-
-# notify flashlib that we have flash at address 0xE0000000, length 0x7FFFFF, plugin is flash29
-flash 0xe0000000
-
-# Erase flash from 0xE0100000 to 0xE01FFFFF (reserved space for EmuTOS on the m5484lite)
-
-erase 0xe0000000 21
-erase 0xe0000000 22
-erase 0xe0000000 23
-erase 0xe0000000 24
-erase 0xe0000000 25
-erase 0xe0000000 26
-erase 0xe0000000 27
-erase 0xe0000000 28
-erase 0xe0000000 29
-erase 0xe0000000 30
-erase 0xe0000000 31
-erase 0xe0000000 32
-erase 0xe0000000 33
-erase 0xe0000000 34
-erase 0xe0000000 35
-erase 0xe0000000 36
-erase 0xe0000000 37
-erase 0xe0000000 38
-erase 0xe0000000 39
-
-load ../../emutos/emutos-m548x-bas.elf
diff --git a/BaS_gcc/flash_scripts/m548xlite_dbug_ram.elf b/BaS_gcc/flash_scripts/m548xlite_dbug_ram.elf
deleted file mode 100644
index 4926872..0000000
Binary files a/BaS_gcc/flash_scripts/m548xlite_dbug_ram.elf and /dev/null differ
diff --git a/BaS_gcc/flash_scripts/m548xlite_dbug_ram.s19 b/BaS_gcc/flash_scripts/m548xlite_dbug_ram.s19
deleted file mode 100644
index c2c89f1..0000000
--- a/BaS_gcc/flash_scripts/m548xlite_dbug_ram.s19
+++ /dev/null
@@ -1,5922 +0,0 @@
-S00F00006D35343735657662655F0000AD
-S3210000000000045F90000004000000EF220000EF220000EF220000EF220000EF2292
-S3210000001C0000EF220000EF220000EF220000EF220000EF220000EF220000EF224B
-S321000000380000EF220000EF220000EF220000EF220000EF220000EF220000EF222F
-S321000000540000EF220000EF220000EF220000EF220000F04E0000F04E0000F04E8C
-S321000000700000F04E0000F04E0000F04E0000F04E0000EF220000EF220000EF2243
-S3210000008C0000EF220000EF220000EF220000EF220000EF220000EF220000EF22DB
-S321000000A80000EF220000EF220000EF220000EF220000EF22000267900000EF22D7
-S321000000C40000EF220000EF220000EF220000EF220000EF220000EF220000EF22A3
-S321000000E00000EF220000EF220000EF220000EF220000EF220000EF220000EF2287
-S321000000FC0000EF220000F04E0000F04E0000F04E0000F04E0000F04E0000F04E5D
-S321000001180000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E13
-S321000001340000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EF7
-S321000001500000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EDB
-S3210000016C0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EBF
-S321000001880000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EA3
-S321000001A40000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E87
-S321000001C00000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E6B
-S321000001DC0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E4F
-S321000001F80000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E33
-S321000002140000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E16
-S321000002300000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EFA
-S3210000024C0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EDE
-S321000002680000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EC2
-S321000002840000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EA6
-S321000002A00000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E8A
-S321000002BC0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E6E
-S321000002D80000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E52
-S321000002F40000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E36
-S321000003100000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E19
-S3210000032C0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EFD
-S321000003480000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EE1
-S321000003640000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EC5
-S321000003800000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04EA9
-S3210000039C0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E8D
-S321000003B80000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E71
-S321000003D40000F04E0000F04E0000F04E0000F04E0000F04E0000F04E0000F04E55
-S31F000003F00000F04E0000F04E0000F04E0000F04E46FC27004EF90000F1BC98
-S321000004104E560000222E0008700AB08163242001E580D08141F90002B43C41F068
-S3210000042C0C002F28000C2F2800082F10487A000E4EB9000047084E5E4E7551FCBF
-S32100000448253038583A20202530385820253038580A0051FC4E5600002F042F03E9
-S321000004642F02487A008C4EB900004708206E000C242800044A82588F6624200258
-S32100000480E580D08241F90002B43C4AB00C1067082F024EBAFF7C588F5282700A09
-S3210000049CB0826EDE6048A342603A4878001042A72F014EB900004DF028007600CE
-S321000004B84FEF000C2003E580D08341F90002B43CB8B00C0066082F034EBAFF3E78
-S321000004D4588F5283700AB0836EDE5282206E000C22302C0066BC4CEE001CFFF4FA
-S321000004F04E5E4E752041646472657373202020202020436F756E7420205472695D
-S3210000050C676765720A0051FC4E5600002F0272002001E580D081242E000841F91F
-S321000005280002B43CB4B00C0066042001600A5281700AB0816EDEA140242EFFFC62
-S321000005444E5E4E754E56FFF048D70C0C262E00082F0361BC72FFB280588F6600C1
-S32100000560008874002002E580D08247F90002B43C4AB30C1067085282700AB0826A
-S3210000057C6EE645F900004708700AB082660A487A00684E92588F60542F034EB982
-S321000005980000ECFC4A80588F660A487A00644E92588F603C2002E580D08241F3A2
-S321000005B40C00264343E80004329336BC4AFC30130C404AFC670A487A00644E9238
-S321000005D0588F60142443208342A800083491A368000C216E000C00104CEE0C0CD9
-S321000005ECFFF04E5E4E7551FC427265616B207461626C652066756C6C2E0A0051D9
-S321000006084572726F723A2020496E76616C696420627265616B706F696E742061B5
-S32100000624646472657373210A0051FC514572726F723A20204164647265737320FC
-S32100000640697320726561642D6F6E6C79210A00514E5600002F0272002001E580C8
-S3210000065CD081242E000841F90002B43C528121820C08700AB0816EE4242EFFFCD1
-S321000006784E5E4E754E5600002F022F2E00084EBAFE8C720AB28063142200E58178
-S32100000694D28041F90002B43C242E000C21821C08242EFFFC4E5E4E754E56000041
-S321000006B02F0272002001E580D081242E000841F90002B43C528121820C0C700A20
-S321000006CCB0816EE4242EFFFC4E5E4E754E5600002F022F2E00084EBAFE30720AE1
-S321000006E8B28063142200E581D28041F90002B43C242E000C21821C0C242EFFFCCB
-S321000007044E5E4E754E560000222E0008700AB08163202001E580D08141F9000227
-S32100000720B43C41F00C00429842A80004425042A8000842A8000C4E5E4E7551FC8C
-S3210000073C4E56000093C92F0961C25289700AB089588F6EF24E5E4E754E56000058
-S321000007582F2E00084EBAFDB672FFB28067042F00619E4E5E4E7551FC4E56FFE8DC
-S3210000077448D70C0C246E000C222E0008A1435381660E2F0AA3674EBAFCD0508F14
-S3210000079060000204A342B4AE00086C0001FA47F22C00205310100C00002D67444F
-S321000007AC48780010486EFFF82F084EB900000B8C26004AAEFFF84FEF000C661202
-S321000007C82F13487A01D44EB900004708508F600001BEA3672F004EBAFD68528268
-S321000007E4508FB4AE00086DB2600001A8732800017063B08163227043B081673CD6
-S321000008007049B0816700015C7052B081670000EA7054B081670000846000016241
-S3210000081C7063B081671A7069B0816700013A7072B081670000C87074B081676269
-S32100000838600001424AAB0004672C2F390002B504486EFFFC52822F322C004EB933
-S3210000085400004DF022004A804FEF000C660E41F22C002010B0AEFFFC66027200D9
-S3210000087070FFB083660C2F014EBAFDD6588F600001162F012F034EBAFDF4508FAF
-S3210000088C5282B4AE00086D00FF0A600000FE4AAB0004672C2F390002B504486ED3
-S321000008A8FFFC52822F322C004EB900004DF022004A804FEF000C660E41F22C0085
-S321000008C42010B0AEFFFC6602A34170FFB083660C2F014EBAFDD4588F600000B821
-S321000008E02F012F034EBAFDF2508F5282B4AE00086D00FEAC600000A070FFB083C7
-S321000008FC66504AAB0004663E4EBAFE365282B4AE00086D00FE8E60000082487872
-S321000009180010486EFFF82F322C004EB900000B8C26004AAEFFF84FEF000C66060A
-S321000009344EBAFE0660082F004EBAFE16588F202E00085282B0826ECA603E2F0397
-S321000009504EBAFE02588F5282B4AE00086D00FE406034A3674EBAFD4642A74EBAD3
-S3210000096CFCE4508F5282B4AE00086D00FE26601A2F2A0004487A00364EB9000005
-S321000009884708508F5282B4AE00086D00FE0A4CEE0C0CFFE84E5E4E754572726F2C
-S321000009A4723A20204261642056616C75653A202025730A004572726F723A202081
-S321000009C0496E76616C6964206F7074696F6E3A202025730A0051FC514E56000037
-S321000009DC2F032F02206E000C7600429074002002E580D08241F90002B43C41F00A
-S321000009F80C004AA8001067402250202E000832A80004B090662252A80008200296
-S32100000A14E580D0822228000843F90002B43CA343B2B10C0C6D06226E000CA35125
-S32100000A307002B0A8001066082F024EBAFCCC588F5282700AB0826EA24EB90000DD
-S32100000A4CF21820034CEE000CFFF84E5E4E7551FC4E5600002F0274007200200186
-S32100000A68E580D08141F90002B43C41F00C004AA80010671E2010B0AE0008660CBE
-S32100000A84A3425281700AB0816ED8601222403151000432BC4AFC5281700AB0819B
-S32100000AA06EC44EB90000F2182002242EFFFC4E5E4E7551FC4E5600002F0A2F02B8
-S32100000ABC45F900004708243C00000B382F024E9248790002678448790000F678FA
-S32100000AD8487A00624E9248790002531C4879000253107139000267802F002F3976
-S32100000AF40002677C71390000F60C2F002F390000F5E0713900003F7C2F002F39E7
-S32100000B1000003F78487A00364E92487900003FD04E924879000267814E922F02C8
-S32100000B2C4E924CEE0404FFF84E5E4E750A0051FC2573206F6E207468652025731A
-S32100000B480A0051FC4669726D776172652076256425632E256425632E25642563D2
-S32100000B6420284275696C74206F6E202573202573290A00514E5600004EB9000289
-S32100000B8063584EB90000F1BC4E5E4E754E56FFF8486EFFF82F2E00084EB90000C1
-S32100000B9C56404A80662E2F2E0010486EFFFC2F2E00084EB900004DF02D40FFF818
-S32100000BB84A806614202E0008B0AEFFFC660A206E000C42907000600A206E000CD8
-S32100000BD4A350202EFFF84E5E4E7551FC4E56FFFC2F0A45F90002B51C222E0008CA
-S32100000BF0A3525581661C4878000A486EFFFC206E000C2F280004618424804AAEA5
-S32100000C0CFFFC6602A352A3674EB90000ECBC246EFFF84E5E4E7551FC4E560000CC
-S32100000C2842A74EB90000ED642F004EB90000B24423C00002B518A5672F39000215
-S32100000C44B5184EB90000054842A74EB90000ECBC4E5E4E754E56FFA848D7041CDC
-S32100000C6045F900004708222E00087600558166382F390002B504486EFFF8206E45
-S32100000C7C000C2F2800044EBAFF0824004AAEFFF84FEF000C6624206E000C2F2808
-S32100000C980004487900003FB44E92508F6000008042A742A74EB90000EC282400D2
-S32100000CB4508F487A00784E92487A008A4E92508F486EFFFC2F024EB90000EC281D
-S32100000CD028004AAEFFFC508F674C2F2EFFFC2F02487A007E4E92486EFFB82F2EE2
-S32100000CECFFFC4EB90000501C4A804FEF0014670C486EFFB8487A006A4E92508F91
-S32100000D08487AFE2E4E92200490820C8000000400588F620A240452837010B08332
-S32100000D246E9E4CEE041CFFA84E5E4E7553746B204672616D652052657475726E54
-S32100000D402050430A0051FC512D2D2D2D2D2D2D2D2D202D2D2D2D2D2D2D2D2D0AE2
-S32100000D5C0051FC51253038583A20253038580051202025730051FC514E56FFFC4D
-S32100000D782F0A246E000C2F390002B504486EFFFC2F2A00084EBAFDFE4AAEFFFC57
-S32100000D9466122F2A0008487900003FB44EB900004708600C2F002F2A00044EB95B
-S32100000DB00000ED88246EFFF84E5E4E754E5600002F0A2F02246E000C74004AAAA0
-S32100000DCC0004661842A74EB90000E578588F60142F322C004EB90000E578588F03
-S32100000DE852824AB22C0066EC4CEE0404FFF84E5E4E7551FC4E56FF9448D71C3CF8
-S32100000E04246E000C47F90000470849FAFD7C2F124EB90000ED10487800102600A8
-S32100000E20486EFFFC2F2A00044E944AAEFFFC4FEF001066122F2A000448790000E9
-S32100000E3C3FB44E93508F600001FE2F032F004EB90000EC4C2400202A00084A80A2
-S32100000E58508F670000802F390002B504486EFFFC2F004E942D40FFF84AAEFFFC76
-S32100000E744FEF000C66122F2A0008487900003FB44E93508F600001B82F024EB974
-S32100000E90000030444A80588F672C42A742A72F002203701FE0A1701DE0A9D283E7
-S32100000EACE6812F0141EEFFF82F082F024EB9000032004FEF00186000017E2F2E34
-S32100000EC8FFF82F032F024EB90000E6644FEF000C6000016828002F032F024EB9B8
-S32100000EE40000EC782F022A00487A015E4E934FEF00100C8300000008670E701051
-S32100000F00B08367187020B0836722602E203C000010542F052F004E93508F601EE2
-S32100000F1C203C000010602F052F004E93508F600E203C0000106C2F052F004E933A
-S32100000F38508F45EEFFB02F0A4EB900003ECC42A72F0A4EB900003B104A804FEF10
-S32100000F54000C670000B82F390002B504486EFFFC2F0A4E942D40FFF84AAEFFFC0A
-S32100000F704FEF000C665010120C00003D670000BE0C00005E663C0C83000000082C
-S32100000F8C67107010B08367167020B083671C600000A053824A846700FF3A6000B3
-S32100000FA8009A55824A846700FF2E6000008E59824A846700FF2260000082A3446C
-S32100000FC4604A2F024EB9000030444A80588F672A42A742A72F002203701FE0A13D
-S32100000FE0701DE0A9D283E6812F0141EEFFF82F082F024EB9000032004FEF0018D0
-S32100000FFC60122F2EFFF82F032F024EB90000E6644FEF000C0C8300000008670E03
-S321000010187010B08367127020B0836716601652824A846700FEB2601254824A8405
-S321000010346700FEA8600858824A846700FE9E4CEE1C3CFF944E5E4E752530385801
-S321000010503A2020005B253032585D20200051FC515B253034585D20200051FC5118
-S3210000106C5B253038585D20200051FC514E56FFD848D70C3C45F900004708262E24
-S3210000108800082F03487AFFBE4E9247EEFFF07400508F2F2E00102F034EB9000090
-S321000010A4EC782800508F2A2E0010518567127010B0AE001067227020B0AE001093
-S321000010C0673260402F04487A00984E92528316C45282508F7010B0826EC0602E98
-S321000010DC2F04487A00884E92548336C45482508F7010B0826EA860162F04487ADC
-S321000010F800784E92588326C45882508F7010B0826E90740041EEFFF079302800ED
-S32100001114705F2204048100000020B08163142F04487A00524E92508F528270101D
-S32100001130B0826ED86010487A00434E92588F52827010B0826EC6487AF9F04E92A4
-S3210000114CB6AE000C588F6500FF364CEE0C3CFFD84E5E4E7525303258200051FC7C
-S3210000116825303458200051FC25303858200000002563002E0051FC514E56FFE437
-S3210000118448D71C1C246E000C2F124EB90000ED10222E0008280053816F0000C28A
-S321000011A047F900004708222E000849FAF9E055816648206A000410100C00002AC2
-S321000011BC663C2F390002B504486EFFFC43E800012F094E9426004AAEFFFC67389D
-S321000011D8487800202F004EB90000EC782F0024002F03487A00B44E9326020482F1
-S321000011F4FFFFFF80607A48780010486EFFFC2F2A00044E9426004AAEFFFC660E35
-S321000012102F2A0004487900003FB44E936076222E00085781663048780010486EA8
-S3210000122CFFFC2F2A00084E9424004AAEFFFC660E2F2A0008487900003FB44E93E1
-S32100001248604AB6806326200224032600601E24030482FFFFFF806014263900022F
-S32100001264B50828390002876424030482FFFFFF802F042F034EB90000EC4C2F045C
-S321000012802F022F004EBAFDF223C20002B50823C4000287644CEE1C1CFFE44E5E7C
-S3210000129C4E7551FC2530385820636F6E7461696E7320253038580A004E56FFEC1E
-S321000012B848D7041C246E000C2F124EB90000ED102F390002B5042800486EFFFCF6
-S321000012D42F2A00044EBAF8B224004AAEFFFC4FEF001066142F2A000448790000EC
-S321000012F03FB44EB900004708508F60722F390002B504486EFFFC2F2A00084EBAA5
-S3210000130CF88026004AAEFFFC4FEF000C66142F2A0008487900003FB44EB900004E
-S321000013284708508F60407010B08467167020B0846620204220834EB9000286ECDA
-S321000013444A8067E6601E204230834EB9000286EC4A8067D6600E204210834EB9F1
-S32100001360000286EC4A8067C64EB9000287304CEE041CFFEC4E5E4E754E56FFFCED
-S3210000137C2F0A2F032F02246E000C2F124EB90000ED102F390002B5042600486ED1
-S32100001398FFFC2F2A00044EBAF7EC24004AAEFFFC4FEF001066142F2A00044879F3
-S321000013B400003FB44EB900004708508F60407010B08367167020B0836620204274
-S321000013D020104EB9000286EC4A8067E6601E204271D04EB9000286EC4A8067D696
-S321000013EC600E204271904EB9000286EC4A8067C64EB9000287304CEE040CFFF0A3
-S321000014084E5E4E754E560000202E0008E78041F90002533041F00C0020102F286F
-S32100001424001C2F002F2800182F00487A000C4EB9000047084E5E4E75253873203A
-S32100001440252D3235732025732025730A0051FC514E56FFEC48D71C04286E000CD6
-S3210000145C45F900004708222E000847F90002533053816666487A00F2487A00F2BC
-S32100001478487A00F6487A00FE487AFFBA4E92A36EFFFC74004FEF0014602A200201
-S32100001494E780720141F30C000328001366182F024EBAFF66486EFFFC4EB900000A
-S321000014B03E004A80508F660000A25282B4B9000253286DCE487900030000487AAC
-S321000014CC00B84E92508F600000867400601A2F2C00042002E7802F330C004EB956
-S321000014E800004F904A80508F672E5282B4B9000253286DDE740060442002E7801B
-S3210000150441F30C002F2800042F2C00042F104EB900004F244A804FEF000C662276
-S32100001520487A0042487A0042487A0046487A004E487AFF0A4E922F024EBAFED2D5
-S3210000153C4FEF001860185282B4B9000253286DB42F2C0004487900003F984E9209
-S32100001558508F4CEE1C04FFEC4E5E4E750051FC5153796E746178005144657363E9
-S3210000157472697074696F6E00436F6D6D616E64000A5573657220636F6465206DA0
-S32100001590617920737461727420617420616464726573732025233038580A005193
-S321000015AC4E56FFFC2F390002B504486EFFFC206E000C2F2800044EBAF5C84AAEF8
-S321000015C8FFFC6616206E000C2F280004487900003FB44EB9000047086012A5670D
-S321000015E42F004EB90000054842A74EB90000ECBC4E5E4E754E56FFFC222E000864
-S321000016005581663A2F390002B504486EFFFC206E000C2F2800044EBAF5744AAE20
-S3210000161CFFFC6616206E000C2F280004487900003FB44EB90000470860102F0097
-S321000016384EB90000ED7442A74EB90000ECBC4E5E4E7551FC4E56FFFC2F024EB9FD
-S321000016540000ED64242E000822005582663A2F390002B504486EFFFC206E000CC2
-S321000016702F2800044EBAF51622004AAEFFFC4FEF000C6622206E000C2F2800040E
-S3210000168C487900003FB44EB900004708508F602420390002B50C670222007410A4
-S321000016A8A3672F014EB90000B24422005382508F66EE23C00002B50C242EFFF8D0
-S321000016C44E5E4E754E56FFFC42A7486EFFFC206E000C2F2800044EBAF4B02F008C
-S321000016E02F002F00487A000E4EB9000047084E5E4E7551FC4865783A20252330B1
-S321000016FC38582C2042696E3A2025303332622C204465633A2025640A0051FC517E
-S321000017184E56FFDC48D71C7C246E000C47F90000470849F900003FB42F127C005A
-S321000017344EB90000ED1041EEFFFC2600487800102A082F082F2A00044EBAF43E6F
-S3210000175024004AAEFFFC4FEF0010660E2F2A00042F0C4E93508F600000C0487866
-S3210000176C00102F052F2A00084EBAF41628004AAEFFFC4FEF000C660E2F2A00086A
-S321000017882F0C4E93508F600000982F390002B5042F052F2A000C4EBAF3EC2A007F
-S321000017A44AAEFFFC4FEF000C660C2F2A000C2F0C4E93508F606EB4846306200283
-S321000017C024042800B48462482F032F024EB90000EC78BA80508F660C2F02487A89
-S321000017DC00584E93508F60440C8300000008670E7010B08367107020B0836712BD
-S321000017F860125282B48463C8600E5482B48463C060065882B48463B84A86670CB1
-S321000018142F02487A001C4E93508F6008487A002E4E93588F4CEE1C7CFFDC4E5E6A
-S321000018304E7551FC44617461206C6F63617465642061743A202025233038580A8F
-S3210000184C0051FC5144617461206E6F7420666F756E642E0A0051FC514E56FFE05C
-S3210000186848D71C3C246E000C47F90000470841EEFFFC49F900003FB4487800108B
-S3210000188428082F082F2A00044EBAF2FE24004AAEFFFC4FEF000C660E2F2A000454
-S321000018A02F0C4E93508F600000B0487800102F042F2A00084EBAF2D626004AAEC9
-S321000018BCFFFC4FEF000C660E2F2A00082F0C4E93508F60000088487800102F040A
-S321000018D82F2A000C4EBAF2AE28004AAEFFFC4FEF000C660C2F2A000C2F0C4E9389
-S321000018F4508F6060B48363062002240326002003908252802200D284B481620608
-S32100001910D084B6806408B882650EB883620A487A00444E93588F60302A02B483AA
-S3210000192C622A487800082F054EB90000EC782F00487800082004D08590822F00F5
-S321000019484EB90000E66452854FEF0014BA8363D64CEE1C3CFFE04E5E4E7551FC60
-S321000019644572726F723A20204F7665726C617070696E672064657374696E6174DA
-S32100001980696F6E0A0051FC514E56FFDC48D71C7C246E000C47FAF1F62F124EB913
-S3210000199C0000ED1041EEFFFC26004878001024082F082F2A00044E932C004AAE47
-S321000019B8FFFC4FEF00106618202A00042F00487900003FB44EB900004708508FE0
-S321000019D4600000EA487800102F022F2A00084E934AAEFFFC28404FEF000C670454
-S321000019F0BC806318202A00082F00487900003FB44EB900004708508F600000B69E
-S32100001A0C2F390002B5042F022F2A000C4E9328004AAEFFFC4FEF000C6618202AF1
-S32100001A28000C2F00487900003FB44EB900004708508F60000084222E00085B8160
-S32100001A4466302F390002B5042F022F2A00104E932A004AAEFFFC4FEF000C661867
-S32100001A60202A00102F00487900003FB44EB900004708508F604A7A002406BC8C5C
-S32100001A7C64422F042F032F024EB90000E6644FEF000C0C8300000008670E7010E5
-S32100001A98B08367127020B083671660165282D885B48C65D260125482D885B48C3D
-S32100001AB465C860085882D885B48C65BE4CEE1C7CFFDC4E5E4E7551FC4E56FFD401
-S32100001AD048D71CFC246E000C47F90000470841EEFFF849F900003FB44878001065
-S32100001AEC24082F082F2A00044EBAF0962C004AAEFFF84FEF000C660E2F2A000454
-S32100001B082F0C4E93508F600000C2487800102F022F2A00084EBAF06E2E004AAEB0
-S32100001B24FFF84FEF000C660E2F2A00082F0C4E93508F6000009A2F390002B50471
-S32100001B402F022F2A000C4EBAF0442A004AAEFFF84FEF000C660C2F2A000C2F0C3C
-S32100001B5C4E93508F6070240626077800A36EFFF85380B880644A487800082F034D
-S32100001B784EB90000EC784878000824402F024EB90000EC78B5C04FEF0010671AD4
-S32100001B942F032F02487A00424E9342AEFFF84FEF000C4AAEFFF8672660145282F2
-S32100001BB05283528420055380B88065B64AAEFFF867102F052F072F06487A002E28
-S32100001BCC4E934FEF00104CEE1CFCFFD44E5E4E754D69736D617463683A2020255F
-S32100001BE8233038582C2025233038580A0051FC51426C6F636B7320737461727450
-S32100001C04696E6720617420252330345820616E64202523303458206F66206C650A
-S32100001C206E67746820252330325820617265206964656E746963616C2E0A005121
-S32100001C3C4E56FF7448D71C1C246E000C47F90002B510222E000849F9000047088A
-S32100001C5855816D3E2F390002B504486EFFFC2F2A00044EBAEF2024004AAEFFFC8A
-S32100001C744FEF000C66102F2A0004487A00DC4E94508F600000CA2F024EB900026E
-S32100001C90636C4A80588F67066012241360EC2F02487A00D64E94508F600000A8BE
-S32100001CAC222E00085381670A222E0008558166000084A3672F024EB90000B24429
-S32100001CC82F022800487A00D24E94486EFFB44EB900003ECC45EEFF8C2F0A486E04
-S32100001CE4FFB44EB900003B1026004A804FEF001C6604240460C45380660A205224
-S32100001D0010100C00002E673442B23C002F0A2F024EB9000089502F0026004EB9F6
-S32100001D1C0002636C4A804FEF000C6714B682670CA3672F024EB90000B244508F83
-S32100001D38240360822682601241EA00082F082F024EB9000089502680508F4CEE2C
-S32100001D541C1CFF744E5E4E754572726F723A20496E76616C696420616464726508
-S32100001D7073733A2025730A004572726F723A2043616E6E6F74207772697465203D
-S32100001D8C746F206164647265737320253038582E0A0051FC253038583E2000512E
-S32100001DA84E56000042B90002B508701023C00002B50423C000028764203C00036E
-S32100001DC4000023C00002B50C23C00002B5104EB90000073C4EB9000052FC4EB907
-S32100001DE00000392C4EB900003AE44EB9000036584E5E4E754E5600002F0274000A
-S32100001DFCB4AE000C6C1C4EB9000263E8206E00081180280052B90002876852825C
-S32100001E18B4AE000C6DE42002242EFFFC4E5E4E754E560000487800142F2E00082E
-S32100001E3461BE4E5E4E7551FC4E5600004878001C2F2E000861AA4E5E4E7551FC05
-S32100001E504E560000487800282F2E000861964E5E4E7551FC4E56FFFC2F0A2F02C3
-S32100001E6C246E00082F2A00102F2A00082F0A487A00B04EB9000047082439000290
-S32100001E8887684FEF0010202A0014B0826F16A367486EFFFF4EBAFF565282508F18
-S32100001EA4202A0014B0826EEA2F2A00084EB90002636C4A80588F675475FC00809E
-S32100001EC0C4AA00244A82662C202A0010B0826F50A367486EFFFF4EBAFF1C206A5A
-S32100001EDC0008102EFFFF118028005282508F202A0010B0826EDE602C7400202A12
-S32100001EF800106F24206A000842302800202A00105282B0826EEE60102F2A00086C
-S32100001F14487A00464EB900004708508F4CEE0404FFF44E5E4E7551FC53656374EE
-S32100001F30696F6E3A2020252D3873202850616464723A2030782530385820205325
-S32100001F4C697A653A20307825303858290A0051FC4572726F723A20496E76616C66
-S32100001F68696420646F776E6C6F616420616464726573733A2025233038580A00A0
-S32100001F844E56FFF42F0A2F02246E0008487800122F0A4EBAFE5C4A92508F674EC3
-S32100001FA0732A00105581666A4A2A0011666441EEFFF4109A115A0001115A0002D8
-S32100001FBC115A0003115A0004115A0005115A0006115A0007422800082212518A52
-S32100001FD82F012F084EB900005274508F752A00114A826E2E6042732A0010558197
-S32100001FF466164A2A001166102F2A00082F2A00044EB9000055B8508F52B9000296
-S32100002010876C752A00114A826F16487800122F0A4EBAFDD253B900028770508FF4
-S3210000202C538266EA4CEE0404FFEC4E5E4E7551FC4E56FD9C48D71C7C45F9000250
-S32100002048876C49EAFFFC47EEFFE042942F0B4EBAFDD071D3588F0C800000015054
-S3210000206467220C8000000195671A0C800000019867122F00487A018A4EB900000D
-S321000020804708508F60000172082B000100136610487A01A24EB900004708588FDE
-S3210000209C6000015A302B0010263C00001DF40C40001C6620486EFFC44EBAFD8697
-S321000020B82F2EFFD44EB90000ED74508F71EEFFE27400B4806C60602C71EEFFF001
-S321000020D47400B4806C18A36741EEFFF42F0826434E935282508F71EEFFF0B480DC
-S321000020F06DE871EEFFE27400B4806C3241EEFFB070092208B0826F142002D0804B
-S3210000210C2200E580D08141EEFE2043F00C0022092F014EBAFD305282588F71EEA3
-S32100002128FFE2B4806DCE71EEFFE27400B4806C242002D0802200E580D08141EE54
-S32100002144FE2043F00C002F094EBAFD165282588F71EEFFE2B4806DDC202EFFE81C
-S321000021602414B0826F18A36741EEFFF42F0826434E935282508F202EFFE8B082A5
-S3210000217C6EE84292202EFFEC671E2540000441EA000453906512486EFFB04EBAFA
-S32100002198FDEC588F41EA0004539064EE4A9267502C14A96741EEFFF82F08264348
-S321000021B44E937400508FB4926C3A2A149A867800A367486EFFFF26434E9341EEDC
-S321000021D0FDBC102EFFFF1180480052844A2EFFFF508F66E02F05486EFDBC4EB904
-S321000021EC0000556C508F5282B4926DC64CEE1C7CFD9C4E5E4E7551FC4572726F25
-S32100002208723A20204E6F742061207265636F676E697A656420434F464620666F99
-S32100002224726D61743A2020253034580A0051FC514572726F723A20204E6F74200C
-S321000022406120434F46462065786563757461626C652E0A004E5600002F024AB98B
-S3210000225C0002B520673041F90002B5242010529041F90002DD8C1430080041F9A0
-S321000022780002B52053906610487800114EB90002870C42B90002B52460084EB962
-S321000022940002873014007182242EFFFC4E5E4E754E56000061AA0C00005366F840
-S321000022B061A24E5E4E7551FC4E56000073AE000B0481000000307036B08165008C
-S321000022CC009C307B1A064EFB8802006E006E006E006E006E006E006E006E006ED8
-S321000022E8006E0092009200920092009200920092007A007E00820086008A008E50
-S3210000230400920092009200920092009200920092009200920092009200920092BB
-S32100002320009200920092009200920092009200920092009200920092007A007ECB
-S3210000233C00820086008A008E122E000B703092807181601A700A6016700B601219
-S32100002358700C600E700D600A700E6006700F6002420071804E5E4E754E56000087
-S321000023742F024EBAFEDC2F004EBAFF3A2400E9824EBAFECE2F004EBAFF2C8082FD
-S321000023907180242EFFFC4E5E4E7551FC4E56FF2448D73CFC42AEFFF045F90000F6
-S321000023AC470841EEFFE447FAFFBC10FC000810FC007C10FC002F10FC002D10BCD6
-S321000023C8005C42B90002B52048780011A34C4EB90002870C588F4EBAFEC42C008C
-S321000023E44E93220677801D40FFFF0481000000315581630C59815581630001D895
-S32100002400600002747E0074000486000000307A00601A4E93E18A79807184D083B7
-S3210000241C7780102EFFFF848453801D40FFFF5285BA866FE2D4AE00082F024EB90B
-S32100002438000030444A802A40588F670000E67A00600A41EEFF4C11805800528588
-S321000024547DAEFFFF53862D46FFF84E931800BAAEFFF86DE2487800134EB9000277
-S32100002470870C588F60264EB9000286EC4A80671C4EB90002873041F90002B520B1
-S3210000248C2210529041F90002DD8C118018007E00200752870C80000007D06DCEB0
-S321000024A842A742A72F0D2F0541EEFF4C2F082F024EB9000032004A864FEF00188F
-S321000024C46F0E20427190D08377805282538666F271843203468190810280000043
-S321000024E000FF4A40671E487A019C4E922F0371842F00487A01B44E922F02487AED
-S321000024FC01CC4E924FEF00184AB90002B5206600008A487800114EB90002870C84
-S32100002518588F52AEFFF0700AB0AEFFF066000150607A2F024EB90002636C4A80A0
-S32100002534588F674E7BAEFFFF53854A856F124E93204210807180D08377805282B8
-S32100002550538566EE4E93320318007184468190810280000000FF4A40672C487AE2
-S3210000256C01184E922F0371842F00487A01304E9270004FEF0010600000F62F02E6
-S32100002588487A014E4E927000508F600000E652AEFFF0700AB0AEFFF0660000D4BB
-S321000025A4102EFFE42F004EB90002870C41EEFFE41030C8002F004EB90002870C44
-S321000025C0528CB9FC00000005508F6602A34C42AEFFF0600000A27400048600004C
-S321000025DC0030700A90862C0053864A806D224E93E18A79802004D0837780718417
-S321000025F88480102EFFFF53801D40FFFF200653864A806CDE102EFFFFD4AE00087A
-S32100002614120053811D41FFFF0C000001631A4E937180D0837780102EFFFF12006E
-S3210000263053811D41FFFF0C00000162E64E9373803003468092800281000000FFA2
-S3210000264C4A41670C487A00324E927000588F601E487A009E4E922F024EB900004D
-S32100002668ED74508F4EB900028730A34060046000FD664CEE3CFCFF244E5E4E7542
-S32100002684084572726F723A2020532D7265636F726420636865636B73756D2065B1
-S321000026A072726F72210A005145787065637465643A20202532582C2020526563F6
-S321000026BC65697665643A202532580A00416464726573733A202538580A0051FCB0
-S321000026D808496E76616C696420646F776E6C6F616420616464726573733A202514
-S321000026F4233038580A0051FC08532D7265636F726420646F776E6C6F6164207378
-S3210000271075636365737366756C210A004E56FFFC2F0A2F02206E000C45F90000CE
-S3210000272C4708202800044A8067362F390002B504486EFFFC2F004EB900000B8CE8
-S3210000274824004AAEFFFC6612206E000C2F280004487900003FB44E9260362F0092
-S32100002764487A003E4E9260022400487A00484E922F024EBAFC244EB90000F21899
-S321000027804EB90000ED6423C00002B50C4EB90000ED6423C00002B5084CEE0404FD
-S3210000279CFFF44E5E4E7551FC4F66667365743A20252330385820282564290A009F
-S321000027B845736361706520746F206C6F63616C20686F737420616E642073656EE9
-S321000027D46420532D7265636F726473206E6F772E2E2E0A004E5600002F0274009C
-S321000027F0B4AE000C6C1C4EB9000263E8206E00081180280052B900028774528252
-S3210000280CB4AE000C6DE4242EFFFC4E5E4E7551FC4E5600002F0A246E00084878AB
-S3210000282800342F0A61BA10120C00007F6674102A00010C000045666A102A0002E7
-S321000028440C00004C6660102A00030C0000466656082A00010011674E302A00288E
-S321000028600C4000346644302A002A0C400020663A302A002E0C4000286630302AB0
-S3210000287C00300C4000146318487A003A4EB900004708487A00584EB9000047086D
-S321000028987000601A2F2A00184EB90000ED74A340600C487A003C4EB900004708B8
-S321000028B47000246EFFFC4E5E4E7551FC084572726F723A20546F6F206D616E79D6
-S321000028D02053656374696F6E20486561646572732121210A0051FC5108457272D9
-S321000028EC6F723A204E6F742061207265636F676E697A656420454C462066696C41
-S3210000290865210A004E56FFDC2F0A2F02246E00084A6A002C676E202A001C243922
-S3210000292400028774B0826316A367486EFFFF4EBAFEB45282508F202A001CB08226
-S3210000294062EA487A00544EB9000047087400588F71EA002CB4806C3441EEFFDCFD
-S3210000295C487800202F084EBAFE842F2EFFF02F2EFFE82F2EFFE42F02487A0036BF
-S321000029784EB90000470852824FEF001C71EA002CB4806DCC4CEE0404FFD44E5E04
-S321000029944E7551FC0850726F6772616D20486561646572733A0A00512053656781
-S321000029B06D656E7420232564202856616464723A20253038582C205061646472D6
-S321000029CC3A20253038582C2053697A653A2025303858290A0051FC514E56FFE42C
-S321000029E848D71C1C282E000845F90002877841EA032449EA03282608A152A15017
-S32100002A042044A1544A680030670000CC20280020242AFFFCB0826318A367486E24
-S32100002A20FFFF4EBAFDC452822044508F20280020B08262E8487A00B24EB9000057
-S32100002A3C470874002044588F71E80030B4806C7A2002D0802200E580D08141EA52
-S32100002A58000447F00C00487800282F0B4EBAFD822F2B00142F2B000C2F2B00043A
-S32100002A742F02487A00844EB900004708222B00044FEF001C538167245381670628
-S32100002A905381670C602420434A906C14208260104A946C0C204471E80032B48011
-S32100002AAC67022882202B0010B092640224802044528271E80030B4806D86204303
-S32100002AC820106D0E22146D0AB0815DC049C04480600270004CEE1C1CFFE44E5EA6
-S32100002AE44E7551FC0853656374696F6E20486561646572733A0A00512053656337
-S32100002B0074696F6E2025642028547970653A20253038582C20416464723A2025E1
-S32100002B1C3038582C2053697A653A2025303858290A0051FC4E56FF6C48D71C3CAB
-S32100002B3849FAFCAE283C000287747A0095CAA143740060262002D0802200E5807D
-S32100002B54D08141F90002877C41F00C0020280010670AB083640624482628001062
-S32100002B705282206E000871E80030B4806DCE70FFB08367044A8A6618A367486EC2
-S32100002B8CFFFF4E94102EFFFF0C0000FF508F66EC6000015620442410600CA3670A
-S32100002BA8486EFFFF4E945282508FB68262F0222A00045381671653816700008CD0
-S32100002BC45381670000A45B81670000F660000114266A000C2F0B4EB90002636CB4
-S32100002BE04A80588F670001004AAA0014670000F874006010A367486EFFFF4E94CF
-S32100002BFC16EEFFFF5282508F202A0014B08262E8600000D847EEFFEC4878001000
-S32100002C182F0B4E9475AB000C2202E8815381508F6624720F7182C2800C81000045
-S32100002C34000167084A8167045581660E2F2B00042F134EB9000055B8508F204497
-S32100002C50202A0010D0AA0014B09062B442AA001095CAA345A14374006000FF0822
-S32100002C6C4A856776604047EEFF882610740096811D7C0058FFFF601AA367486E54
-S32100002C88FFFF4E9452827064B082508F6F0616EEFFFF600242134A2EFFFF66E0A7
-S32100002CA42F03486EFF884EB90000556C508F2044222A0010202A0014D081B09049
-S32100002CC062B06022266A000C2F0B4EB90002636C4A80588F671074006004421B53
-S32100002CDC5282202A0014B08262F442AA001095CAA14374006000FE804CEE1C3CF9
-S32100002CF8FF6C4E5E4E7551FC4E5600002F0B2F0A45F900028774222E0008429215
-S32100002D145381665447EA03302F0B4EBAFAFC53806704A140604C202A0350B0ABB0
-S32100002D30001C63162F0B4EBAFBD42F0B4EBAFCA6202A0004B092652060142F0B34
-S32100002D4C4EBAFC962F0B4EBAFBB8202A0004B092650A2F0B4EBAFDCE7000600EEC
-S32100002D68A340600A486A03304EBAFDBEA3404CEE0C00FFF84E5E4E754E56000021
-S32100002D842F0A487A002045F9000047084E92487A002C4E92487A00464E92246E5D
-S32100002DA0FFFC4E5E4E7551FC466C617368205574696C6974792055736167653A09
-S32100002DBC0A0A0051202028666C2961736820286529726173652061646472206233
-S32100002DD8797465730A0051FC202028666C29617368202877297269746520646599
-S32100002DF47374207372632062797465730A0A00514E56FFDC48D71C7C487A013A8F
-S32100002E1045F9000047084E927600588F7A6447F900028AD84C035800D7C549EBDD
-S32100002E2C00404A94670001002F0B2F03487A012A4E922F14487A013A4E9222146F
-S32100002E48700A2401E0A20C82000004004FEF00146F0A203C00002F9474146008DB
-S32100002E64203C00002FA4740AE4A12F012F004E92222B003C2014D08153802F00CB
-S32100002E802F01487A01304E92202B00604FEF00146716222B005C5380D0812F00B7
-S32100002E9C2F01487A01384E924FEF000C202B004452802F00487A014A4E927800CA
-S32100002EB8700B2D40FFFC7C0047F900028AD8508FD7C5B8AB00406C5A202B003C8A
-S32100002ED4D0842F00206B00504E902840202B003CD0842F00206B00544E90720AF5
-S32100002EF02400948C5282D882E2A22F022F002F0C2F06487A01184E92486EFFFC8E
-S32100002F0C4EB900003E004A804FEF0020662447F900028AD8D7C55286B8AB0040F1
-S32100002F286DA6487A01144E92588F52830C83000000026D00FEE04CEE1C7CFFDC78
-S32100002F444E5E4E75466C6173682044657669636520496E666F726D6174696F6EF8
-S32100002F603A0A0A0020204465766963652025643A202020202020202025730A00EC
-S32100002F7C2020546F74616C2053697A653A20202020202025235820002825644D7C
-S32100002F98292062797465730A0051FC512825644B292062797465730A0051FC51EB
-S32100002FB42020416464726573732052616E67653A20202025233038582D3E252393
-S32100002FD03038580A0051FC51202050726F7465637465642052616E67653A202501
-S32100002FEC233038582D3E25233038580A0051FC5120204163636573732053697ADD
-S32100003008653A2020202020256420627974652873290A00512020536563746F723B
-S32100003024202533643A2025233038582D3E252330385820282533644B290A000057
-S321000030400A0051FC4E5600002F02242E000891C82008E7802200D080D081D088E5
-S3210000305C43F900028AD843F10C0020290040672A2229003CB28262225380D081F5
-S32100003078B480621A2229005CB282620C202900605380D081B480631052882008C7
-S32100003094600C5288B1FC000000026DB07000242EFFFC4E5E4E7551FC4E56FFA448
-S321000030B048D70C1C206E00105388B1FC00000002646E2008E7802200D080D0816B
-S321000030CCD08847F90000470841F900028AD845F00C002F2E0008206A00504E90FF
-S321000030E8242E000CD4AE0008260053822F02206A00544E902800B6AE00086604F8
-S32100003104B082672C2F042F03487A00624E93486EFFB84EB900003ECCA367486E3C
-S32100003120FFB8487A00844EB900004F244A80670470006030240494832F2A0058F1
-S3210000313C52822F022F03206A00484E90B082670E2F022F00487A005A4E93700016
-S32100003158600A2F00487A007A4E93A3404CEE0C1CFFA44E5E4E7551FC4D75737452
-S3210000317420657261736520636F6D706C65746520736563746F72732028252330AD
-S32100003190385820746F202523303858290A436F6E74696E75653F2000796573003A
-S321000031AC466C617368204572617365206572726F723A2025235820627974657378
-S321000031C8206F6620252358206572617365640A00466C6173682045726173652074
-S321000031E4636F6D706C6574652E20252358206279746573206572617365640A009D
-S321000032004E560000206E00145388B1FC000000026504700060664AAE001C67348E
-S3210000321C2008E7802200D080D081D08841F900028AD841F00C002F28005842A773
-S321000032382F2E00182F2E00102F2E000C2F2E00082068004C4E90602C42A742A7B4
-S321000032542F2E00182F2E00102F2E000C2F2E00082008E7802200D080D081D088FE
-S3210000327041F900028AD820700C4C4E904E5E4E754E56FFC848D71C7C246E000CA9
-S3210000328C222E00085381660C4EBAFAEA4EBAFB6A6000022A47F90000470849FACB
-S321000032A8FD9CA367487A02262F2A00044EB900004F244A806678222E00085981C6
-S321000032C4660001FE2F390002B504486EFFFC2F2A00084EB900000B8C26004AAE92
-S321000032E0FFFC670000922F390002B504486EFFFC2F2A000C4EB900000B8C2800D9
-S321000032FC4AAEFFFC6700009E2F034E9424002004D08353802F004E9422004A8237
-S32100003318670000DE4A80670000D8B481660000D22F022F042F034EBAFD7C600061
-S321000033340194A367487A01A22F2A00044EB900004F244A806600017A222E000899
-S321000033505B816600017041EEFFFC2F390002B50424082F082F2A00084EB9000090
-S3210000336C0B8C26004AAEFFFC66102F2A0008487900003FB44E93600001442F3916
-S321000033880002B5042F022F2A000C4EB900000B8C2C004AAEFFFC66102F2A000C3A
-S321000033A4487900003FB44E936000011A2F390002B5042F022F2A00104EB9000033
-S321000033C00B8C28004AAEFFFC66102F2A0010487900003FB44E93600000F02F0343
-S321000033DC4E942A042400DA8353852F054E9422004A8267084A806704B481670E14
-S321000033F8487A00EA4E934EBAFA04600000C42002E7802200D080D081D08245F920
-S3210000341400028AD8220420320C44C280671252802F00487A00DC4E934EBAF9D658
-S32100003430600000962F064E94B480660A487A00FE4E93600000842002E780220099
-S3210000344CD080D081D08249F20C9C2F03206C00504E902F052440206C00544E9046
-S321000034682200B5C36604B08567282F012F0A487AFCF84E93486EFFE84EB90000D6
-S321000034843ECCA367486EFFE8487AFD1A4EB900004F244A80662EA367A3672F027F
-S321000034A02F042F062F034EBAFD58B084670C2F042F00487A00C44E93600E2F0006
-S321000034BC487A00EA4E9360044EBAF8BA4CEE1C7CFFC84E5E4E7551FC6572617343
-S321000034D8650051FC77726974650051FC496E76616C696420466C617368206164EE
-S321000034F464726573732072616E67650A0051FC51466C6173682057726974652087
-S321000035106572726F723A206279746520636F756E74206D7573742062652064695B
-S3210000352C76697369626C652062792025640A0051466C6173682057726974652057
-S321000035486572726F723A20736F7572636520616E642064657374696E6174696FA5
-S321000035646E20696E2073616D65206465766963650A0051FC466C6173682057725C
-S32100003580697465206572726F723A20252358206279746573206F66202523582087
-S3210000359C7772697474656E0A0051FC51466C61736820577269746520636F6D7070
-S321000035B86C6574652E20252358206279746573207772697474656E0A0051FC513D
-S321000035D44E5600002F0C2F0B2F0A246E000891C82008E7802200D080D081D088E6
-S321000035F043F900028AD847F10C0049EB00404A94663E2F0A2F0B4EB900004C9485
-S3210000360C28AA0040276A003C003C47EB004426EA004426EA004826EA004C26EAF3
-S32100003628005026EA005426EA005826EA005C26AA0060A340508F600C5288B1FC13
-S32100003644000000026D9A70004CEE1C00FFF44E5E4E7551FC4E56000091C82008C1
-S32100003660E7802200D080D081D08843F900028AD8528842B10C40B1FC000000025E
-S3210000367C6DE04E5E4E7551FC4E560000206E000870FFB09066044290600A5290B2
-S321000036987005B0906E02A9502010D0802200E780D08141F90002DDC843F00C0078
-S321000036B42F092F2E000C4EB900004C942F2E000C487A00164EB9000047082F2E78
-S321000036D0000C4EB900004CBC4E5E4E75257300514E560000206E00082F0A246E60
-S321000036EC000C53904A906C08A1504212700060322010D0802200E780D08141F9A4
-S321000037080002DDC843F00C002F092F0A4EB900004C942F0A487AFFBE4EB90000A2
-S3210000372447082F0A4EB900004CBC246EFFFC4E5E4E7551FC4E560000487900023C
-S32100003740DDC82F2E00084EB900004C942F2E0008487AFF8A4EB9000047082F2E13
-S3210000375C00084EB900004CBC4E5E4E754E5600002F0A2F02A9422202E78120011F
-S32100003778E781D28045F90002DDC841F218B82F0841F218002F084EB900004C94ED
-S3210000379453824A82508F6ED62F2E00082F0A4EB900004C94508F4CEE0404FFF8B2
-S321000037B04E5E4E754E56FF9C48D70C3C45F90002870CA16EFFFC780074006000B9
-S321000037CC00F822037012B08363160C8300000004674A70080C83000000086600D7
-S321000037E800B060147012B08167367015B0816730707FB0816600009A4A826F00A3
-S3210000380400BC4878000853824E92487800204E92487800084E924FEF000C4A84E9
-S32100003820670000A2600000BA2A024A826F1A487800084E92487800204E924878BA
-S3210000383C00084E924FEF000C538566E67015B0836616486EFFB4486EFFFC4EBABE
-S32100003858FE2C2400508F4A846762607C0C83000000046616486EFFB4486EFFFC85
-S321000038744EBAFE6A2400508F4A846744605E7012B0836638486EFFB44EBAFEAA1C
-S321000038902400A344588F6048220252817048B0816F1E2203048100000020706075
-S321000038ACB081631041EEFFB41183280052822F034E92588F4A84661C4EB9000292
-S321000038C887302600700DB083670E700AB08367087048B0826E00FEF047EEFFB492
-S321000038E4423328004878000D4E924878000A4E922F0B4EB900004CBC4A804FEF7D
-S32100003900000C670C4A8466082F0B4EBAFE5C588F2F0B2F2E00084EB900004C94E1
-S3210000391C4CEE0C3CFF9C202E00084E5E4E7551FC4E56000091C82008D0802200C3
-S32100003938E780D08143F90002DDC8528842310C00B1FC000000056DE24E5E4E7509
-S321000039544E5600004EB9000263E8220070FFB081670C206E0008108152AE0008F5
-S3210000397060E64E5E4E7551FC4E5600002F032F02760074002002E580D08241F92F
-S3210000398C0002B52841F00C00202E0008B09066227001B0A80004661A2F2800102B
-S321000039A82F28000C206800084E904A80508F6706A3437400600A5282700AB082D2
-S321000039C46EBE74002002E580D08241F90002B52841F00C00202E0008B0906620F6
-S321000039E07002B0A8000466182F2800102F28000C206800084E904A80508F67042D
-S321000039FCA34360085282700AB0826EC020034CEE000CFFF84E5E4E754E5600003A
-S32100003A182F0A72002001E580D08141F90002B52841F00C00202E000C43E8000827
-S32100003A34B091661A202E000845E80004B092660E42904292429142A8000C42A819
-S32100003A5000105281700AB0816EC2246EFFFC4E5E4E7551FC4E5600002F032F0246
-S32100003A6C242E0008262E000C4A83675E0C820000000167080C8200000002664EAA
-S32100003A884AAE0010674872002001E580D08141F90002B52841F00C00201022482C
-S32100003AA4B0836606B4A8000467284A80661C228321420004216E00100008216EE4
-S32100003AC00014000C216E00180010A340600A5281700AB0816EBA70004CEE000C64
-S32100003ADCFFF84E5E4E7551FC4E56000072002001E580D08141F90002B52852813C
-S32100003AF841F00C004298429842984298700A4290B0816EDE4E5E4E754E5600002B
-S32100003B142F0A2F032F02206E000C246E000872007600740043D2101167480C0072
-S32100003B30002067060C00000966184A82672A5283246E00084211740043F2380053
-S32100003B4C101166DE60244A826612A342700AB0816F184A88670421891C0052813D
-S32100003B68246E0008528343F23800101166B84A88670442B01C004CEE040CFFF498
-S32100003B8420014E5E4E7551FC4E56FFBC48D71C1C47F900028BE8243C00028BA04A
-S32100003BA02F024EB9000037B4486EFFD42F024EBAFF6026004FEF000C661A2F0B95
-S32100003BBC2F024EB900004C94486EFFD42F024EBAFF4426004FEF001042134A8334
-S32100003BD867000108283C000047087400B4B9000253286C642002E78041F90002B5
-S32100003BF4533049EEFFD445F00C002F142F124EB900004F904A80508F663820030D
-S32100003C105380B0AA00086D000096B0AA000C6E00008E082A00000013670C2F14FD
-S32100003C2C2F0B4EB900004C94508F2F0C2F03206A00144E90508F6000009E5282DC
-S32100003C48B4B9000253286D9C7400606C2002E78041F90002533049EEFFD445F0A0
-S32100003C640C002F2A00042F142F124EB900004F244A804FEF000C66422003538025
-S32100003C80B0AA00086D28B0AA000C6E22082A00000013670C2F142F0B4EB90000F9
-S32100003C9C4C94508F2F0C2F03206A00144E90508F60342F2EFFD4487A0038244459
-S32100003CB84E92508F60245282B4B9000253286D8C2F2EFFD4487900003F982444C0
-S32100003CD44E92487900003F804E924FEF000C4CEE1C1CFFBC4E5E4E754572726F10
-S32100003CF0723A20496E76616C69642073796E74617820666F723A2025730A0051A4
-S32100003D0C4E560000487A00124EB9000047084EBAFE70588F60EE51FC644255478D
-S32100003D283E2000514E56000041F900000000B1FC00000000671A700022300C00F0
-S32100003D4443F90000000023810C0052800C800000010065E841F900026BC0203C02
-S32100003D6000026BC0B1C06718223C0002875892802F012F082F004EB900004BB03B
-S32100003D7C4FEF000C203C00028758223C0002DF35B081671292802F0142A72F0026
-S32100003D984EB900004B884FEF000C4EB9000266A84EB90000EDD44EB900001DA83A
-S32100003DB4423900028BA0423900028BE84EB90002669442A742A74EB900000AB4BB
-S32100003DD04EB900026534487900003F804EB900004708487A00184EB90000470829
-S32100003DEC4EBAFF1E70004FEF00104E5E4E7551FC0A0051FC4E56FFF048D7041CED
-S32100003E08206E00087600740070165290B0906E00008A487A00944EB900004708CC
-S32100003E24588F4EB900028730722E2040B28063160C8000000003672E720AB28058
-S32100003E40671E720DB280662E6016702E2808B08467187051B08467127071B08818
-S32100003E5C670C601645F90002870C741B601845F90002870CA343741B600C4A8201
-S32100003E7867AC45F90002870C741B487800084E92487800204E92487800084E92A3
-S32100003E944FEF000C538266E6206E0008429020034CEE041CFFF04E5E4E7551FC11
-S32100003EB05072657373203C454E5445523E20746F20636F6E74696E75652E0051C4
-S32100003ECC4E5600002F0A2F032F0245F90002870C74004EB9000286E460542041C5
-S32100003EE8B1FC000000086706707FB081661E4A826F404878000853824E9248783A
-S32100003F0400204E92487800084E924FEF000C6026260252837048B0836F1C20414F
-S32100003F20706041E8FFE0B0886310206E00081181280052822F014E92588F4EB9DA
-S32100003F3C000287302200700DB081670C700AB08167067048B0826E92206E0008CF
-S32100003F58423028004878000D4E924878000A4E92202E0008508F4CEE040CFFF4E4
-S32100003F744E5E4E75000000046151FC51456E746572202768656C702720666F723D
-S32100003F902068656C702E0A004572726F723A204E6F207375636820636F6D6D61ED
-S32100003FAC6E643A2025730A004572726F723A20496E76616C69642076616C7565BD
-S32100003FC83A2025730A0051FC436F7079726967687420313939352D3230303720C7
-S32100003FE4467265657363616C652053656D69636F6E647563746F722C20496E634C
-S321000040002E0A00514572726F723A20496E76616C696420617267756D656E743A2D
-S3210000401C2025730A0051FC514572726F723A20496E76616C6964207265676973BD
-S321000040387465723A2025730A0051FC514E560000206E00102210538167065381F8
-S3210000405467166022102E000B2F00206800044E90206E000C5290601422680008E7
-S32100004070102E000B128052A80008206E000C52904E5E4E754E5600002F042F035D
-S3210000408C2F02226E000C282E0014206E0008740042184AAE0010674020114A80CD
-S321000040A8674026004C443803220020044C03080092804A816C14200346810681F3
-S321000040C40000003110C152824A8366DA6058200306810000003010C152824A83F3
-S321000040E066C8604620114A80660810BC0030A342603826004C44300322002003DA
-S321000040FC4C0408009280700AB0816312200306810000003010C152824A8366DA8C
-S321000041186010200306810000003710C152824A8366C820024CEE001CFFF44E5E7D
-S321000041344E7551FC4E5600002F02242E0008B4AE000C6C1C2F2E00142F2E001056
-S32100004150487800304EBAFEEE52824FEF000CB4AE000C6DE4242EFFFC4E5E4E75D0
-S3210000416C4E5600002F02242E0008B4AE000C6C1C2F2E00142F2E0010487800204E
-S321000041884EBAFEBA52824FEF000CB4AE000C6DE4242EFFFC4E5E4E754E56FF9881
-S321000041A448D73CFC242E0008246E0010266E000C42AEFFE449FAFE8A12134BFAFE
-S321000041C0FEC4670005040C010025672E0C01000A660004E02F02486EFFE44878F9
-S321000041DC000D4E942F02486EFFE44878000A4E94528B4FEF0018121366D060006E
-S321000041F804D07A007600528B702B7313B081630E7020B08167307023B081673E80
-S321000042146046702BB0816718702DB08167087030B0816720603208C500004A83D6
-S3210000423067CC602A08C500014A8367C2602008C500024A8367B8601608C500036A
-S3210000424C4A8367AE600C08C500044A8367A46002538B78007600528B700973134F
-S321000042682C01048600000030B0866518D8842004E584D880730104810000003030
-S32100004284D8814A8367D86002538B528B10130C00002E661C7600528B7009731365
-S321000042A0048100000030B0816404538B60084A8367E86002538B528B704C7313ED
-S321000042BCB081670E7068B0816708706CB0816702538B528B7020731326010483CD
-S321000042D800000058B083650003D2307B3A064EFB8802011A03C803C803C803C8FA
-S321000042F403C803C803C803C803C8024E032E004203C803C803C803C8004203C8B5
-S3210000431003C803C803C803B8021C027A03C803C8034A03C802A803C803C8011ACC
-S3210000432C2D5AFFE84878000AA36741EEFFE82F08486EFFC04EBAFD4243EEFFC034
-S321000043482600D3C02E094AAEFFE84FEF00106C067C2D52836018A546CC854A86C2
-S3210000436467067C2B5283600A0805000267047C2052830805000367324A06670E8B
-S321000043802F02486EFFE42F064E944FEF000C2F02486EFFE42F042F034EBAFD9E1E
-S3210000439C260420474FEF00104A10670002D8600002500805000066302F02486E49
-S321000043B8FFE42F042F034EBAFDAC4A064FEF0010670E2F02486EFFE42F064E94F6
-S321000043D44FEF000C20474A10670002A26000021A4A06670002282F02486EFFE48A
-S321000043F02F064E9420474FEF000C4A1067000282600001FA2D5AFFEC4878001001
-S3210000440C42A741EEFFEC2F08486EFFC04EBAFC6A43EEFFC02600D3C02E09422E21
-S32100004428FFFF080500034FEF001067460805000467222F02486EFFE44878003015
-S321000044444E942F02486EFFE4487800784E941D7C0001FFFF4FEF00182F02486EBB
-S32100004460FFE42F042F034EBAFCD026044FEF0010080500046700019A605A0805CC
-S3210000447C0000664C7C10CC856702548341EEFFE42F022D48FFF82F082F042F0304
-S321000044984EBAFCD24A864FEF001067282F022F2EFFF8487800304E942F022F2E9A
-S321000044B4FFF8487800784E9420474FEF00184A10670001BA6000013208050004F8
-S321000044D06700013E4A2EFFFF660001362F02486EFFE4487800304E942F02486E8E
-S321000044ECFFE4487800784E94548320474FEF00184A1067000180600000F82D5AFC
-S32100004508FFEC4878000842A741EEFFEC2F08486EFFC04EBAFB6826004FEF001050
-S3210000452443EEFFC0D3C02E0908050003670000AA600000882D5AFFECA56742A74B
-S3210000454041EEFFEC2F08486EFFC04EBAFB3826004FEF001043EEFFC0D3C02E092A
-S3210000455C08050003677A605A2D5AFFEC4878001042A741EEFFEC2F08486EFFC0A1
-S321000045784EBAFB0A26004FEF001043EEFFC0D3C02E0908050003674C602C2D5A10
-S32100004594FFEC4878000A42A741EEFFEC2F08486EFFC04EBAFADC26004FEF00104F
-S321000045B043EEFFC0D3C02E0908050003671E2F02486EFFE42F042F034EBAFB6EFA
-S321000045CC260420474FEF00104A10670000A8602008050000662E2F02486EFFE49A
-S321000045E82F042F034EBAFB7E20474FEF00104A10670000862F02486EFFE420479E
-S32100004604538710102F004E944FEF000C20474A1066E66068201A2F02486EFFE466
-S321000046202F004E94528B4FEF000C12136600FB98600000962C1A4A866700008629
-S3210000463C2F064EB900004CBC260008050000588F662C2F02486EFFE42F042F0040
-S321000046584EBAFB1220464FEF00104A10671A2F02486EFFE4204610182C082F00E1
-S321000046744E944FEF000C20464A1066E608050000673A2F02486EFFE42F042F030F
-S321000046904EBAFADA528B4FEF001012136600FB286026205A528B20AEFFE41213A0
-S321000046AC6600FB1860162F02486EFFE42F014E944FEF000C528B12136600FB0074
-S321000046C84CEE3CFCFF98202EFFE44E5E4E7551FC4E56FFF470004AAE000867204C
-S321000046E441EEFFF42D6E0008FFFCA550486E00102F2E000C2F084EBAFAA4206E65
-S32100004700FFFC42104E5E4E754E56FFF441EEFFF4223C0002870CA3502D41FFF8D7
-S3210000471C486E000C2F2E00082F084EBAFA784E5E4E7551FC4E56FFE848D71C0C15
-S32100004738266E000C49F900004708222E000842AEFFFC5381665642AB00087400F2
-S32100004754B4B90002532C6C0000D02002E780908241F90002573045F00C00082A48
-S321000047700000001366202F12487A00BE4E942F0BA567206A00144E90486EFFFC78
-S3210000478C4EB900003E004FEF00145282B4B90002532C6DBE6000008A7400B4B9BC
-S321000047A80002532C6C722002E780908241F90002573045F00C002F2A0004260A64
-S321000047C42F2B00042F124EB900004F244A804FEF000C663E202E00085580B0AA7D
-S321000047E000086D22B0AA000C6E1C20432F10487A00484E942F0B2F2E0008206A79
-S321000047FC00144E904FEF001060262F2B00044879000040044E94508F6016528267
-S32100004818B4B90002532C6D8E2F2B0004487A001A4E94508F4CEE1C0CFFE84E5EA5
-S321000048344E7551FC253132733A2000514572726F723A2020496E76616C69642041
-S321000048507365742F73686F77206F7074696F6E3A2025730A0051FC514E56FFEC28
-S3210000486C48D71C04286E000C45F900004708222E000842AEFFFC53816664487A19
-S3210000488800F44E92486EFFFC4EB900003E007400B4B90002532C508F6C0000CEC9
-S321000048A42002E780908241F90002573047F00C00082B0000001366202F13487A81
-S321000048C0FF784E922F2B0018487A00CA4E92486EFFFC4EB900003E004FEF001459
-S321000048DC5282B4B90002532C6DBE60000088222E00085781670A487A00A44E92FE
-S321000048F8588F60747400B4B90002532C6C5E2002E780908241F90002573047F022
-S321000049140C002F2B00042F2C00042F134EB900004F244A804FEF000C662C7001E5
-S32100004930B0AB00086D14B0AB000C6E0E2F0CA767206B00144E90508F60262F2C18
-S3210000494C00044879000040044E92508F60165282B4B90002532C6DA22F2C0004DB
-S32100004968487AFED64E92508F4CEE1C04FFEC4E5E4E7551FC56616C69642027732D
-S32100004984657427206F7074696F6E733A0A0051FC25730A004572726F723A204905
-S321000049A06E76616C696420617267756D656E74206C6973740A0051FC4E56FFFC22
-S321000049BC2F0A222E0008578167164EB900026B502F00487A00B04EB90000470838
-S321000049D86000009E4878000A486EFFFC246E000C2F2A00084EB900000B8C220085
-S321000049F420400C80000012C064220C800000012C67540C8000000258674C0C80C4
-S32100004A10000004B067440C80000009606646603A0C8100009600641A0C810000BC
-S32100004A2C12C0672A0C810000258067220C8100004B00662460180C81000096004D
-S32100004A4867100C810000E10067080C810001C200660A2F084EB900026BA0601479
-S32100004A64206E000C2F2800084879000040044EB900004708246EFFF84E5E4E75E4
-S32100004A8025640A004E5600002F0B2F0A2F02266E000C4AAB000866142F390002B8
-S32100004A9CB504487AFFE04EB900004708508F606274002002E58041FA006445F0D8
-S32100004AB80C002F2A00042F2B00082F124EB900004F244A804FEF000C67142F2B6D
-S32100004AD400082F2A00084EB900004F904A80508F660C202A000C23C00002B50462
-S32100004AF0601C52820C82000000046DB22F2B00044879000040044EB900004708EA
-S32100004B0C508F4CEE0C04FFF44E5E4E7500004B7C0000000300004B6C000000106B
-S32100004B2800004B580000000300004B6F0000000A00004B600000000300004B68A0
-S32100004B440000000800004B740000000300004B6A00000002646563696D616C00FF
-S32100004B606F6374616C0000003800320031360031300051FC62696E6172790051CB
-S32100004B7C68657861646563696D616C004E560000222E0008202E001020414A811C
-S32100004B98670E4A80670A600410EE000F538064F820014E5E4E7551FC4E5600002A
-S32100004BB42F02242E0008222E00102242206E000C4A8267264AAE000C67204A8147
-S32100004BD0671CA740C0819280E4895381650622D8538164FA5380650612D8538033
-S32100004BEC64FA2002242EFFFC4E5E4E754E560000202E0010206E0008226E000C37
-S32100004C084A806E1070006016B210660C5380670852885289121166F071107301C3
-S32100004C2490814E5E4E7551FC4E560000226E000C206E00081011670CB010660809
-S32100004C4052895288101166F473107100928020014E5E4E754E5600002F02222E67
-S32100004C5C0008202E00102241206E000C4A81671C4AAE000C67164A806F12600257
-S32100004C7812D84A106708240053804A826EF242112001242EFFFC4E5E4E7551FCC7
-S32100004C944E560000202E00082240206E000C4A8067104AAE000C670A600212D806
-S32100004CB0121066FA12814E5E4E7551FC4E560000206E000870004A886606200801
-S32100004CCC600652804A1866FA4E5E4E754E5600002F0A246E0008222E0010226EF6
-S32100004CE8000C4A8A67264AAE000C67204A816F1C2F0A61C041F20800588F60027E
-S32100004D0410D94A116708200153814A806EF24210200A246EFFFC4E5E4E7551FCF6
-S32100004D204E5600002F0A246E0008226E000C4A8A671C4AAE000C67162F0A61806C
-S32100004D3C41F20800588F1011670610D9101166FA1080200A246EFFFC4E5E4E7585
-S32100004D584E560000A3407220B2AE0008670C7009B0AE000857C049C044804E5ED6
-S32100004D744E7551FC4E5600002F02222E00082041700A41E8FFD02408B082621C31
-S32100004D902041701A41E8FFBFB0886210048100000061B08152C049C0448060022D
-S32100004DACA340242EFFFC4E5E4E7551FC4E560000222E0008048100000030700ACE
-S32100004DC8B08152C049C044804E5E4E754E560000222E0008048100000041701AFE
-S32100004DE4B08152C049C044804E5E4E754E56FFE848D7047C246E000C242E001004
-S32100004E0078007A007C004AAE0008670000FE4A826D0000F80C8200000001670096
-S32100004E1C00EE7024B0826D0000E6206E000877102F034EBAFF284A80588F6710C7
-S32100004E38528877102F034EBAFF184A80588F66F0702DB08367307030B083662ED1
-S32100004E54102800010C00007867060C000058661E4A8267067010B082661A43E894
-S32100004E700002771174104A83670000866012A34652884A826602740A7710224880
-S32100004E8C4A8367702F034EBAFEE44A80588F673A2F034EBAFF184A80588F670C7D
-S32100004EA8048300000030B6826D2C60222F034EBAFF1C4A80588F670C0683FFFFDE
-S32100004EC4FFC9B6826D14600A0683FFFFFFA9B6826D08A3454A8A672A60264A8662
-S32100004EE067104C0248005289988377114A8366A0600E4C0248005289D883771190
-S32100004EFC4A8366904A8A670224894A85670C4A8A670424AE000870006002200496
-S32100004F184CEE047CFFE84E5E4E7551FC4E5600002F042F032F02206E0008226EBA
-S32100004F34000C70007601242E00106F44141912187061180198807904701AB084BF
-S32100004F506304702092801802706198807904701AB0846304702094807101790200
-S32100004F6C908466144A0167104A02670C2203242E00105283B4816EBC4CEE001C03
-S32100004F88FFF44E5E4E7551FC4E5600002F032F02206E0008226E000C14191218C8
-S32100004FA47061160196807703701AB0836304702092801602706196807703701AAA
-S32100004FC0B08363047020948071017702908366084A0167044A0266C84CEE000CAF
-S32100004FDCFFF84E5E4E7551FC4E5600002F0A247900028C34601C487800202F0A2F
-S32100004FF82F2E00084EB900004BF84A804FEF000C6708246A00244A8A66E0200A6F
-S32100005014246EFFFC4E5E4E754E5600002F0A2F032F02202E0008242E000C2079F1
-S3210000503000028C3445F9000046D84A8866222F00487A00762F024E9270004FEFC0
-S3210000504C000C605E226800244A896726B0A900206520204926280020B68066E811
-S32100005068487800202F082F024EB900004C54A3404FEF000C6030220092830C81B6
-S321000050840000040064142F012F08487A00302F024E92A3404FEF001060102F0054
-S321000050A0487A00162F024E924FEF000C70004CEE040CFFF44E5E4E7525233038EF
-S321000050BC580051FC25732B25233034580051FC514E56FFA448D71C0C242E0008E0
-S321000050D847F90000470849FA00D042AEFFFC4A82662E247900028C3460202F0AB1
-S321000050F42F2A00202F0C4E93246A0024486EFFFC4EB900003E004A804FEF001045
-S3210000511066764A8A66DC60702F024EBAFEC84A802440588F664A2F390002B504D4
-S3210000512C486EFFF82F024EB900000B8C26004AAEFFF84FEF000C6720486EFFB892
-S321000051482F004EBAFED04A80508F6710486EFFB82F032F0C4E934FEF000C602497
-S321000051642F02487A002C4E93508F6018207C00FFFE00B1D2670E2F0A2F2A00208F
-S321000051802F0C4E934FEF000C4CEE1C0CFFA44E5E4E7551FC4572726F723A204E34
-S3210000519C6F20737563682073796D626F6C3A2025730A0051253038583A202573D5
-S321000051B80A0051FC4E56000043F900028C38205120084A88670422A800244E5E68
-S321000051D44E7551FC4E5600002F0A2F02242E000C61D64A802440677C254200206E
-S321000051F0487800202F2E00082F004EB900004C54422A001F43F900028C342011C8
-S3210000520C4A8020404FEF000C660A228A42AA0024200A6048B4A80020640A2540BF
-S321000052280024228A200A603820280024222800202240B282671A4A80660C214A3E
-S32100005244002442AA0024200A601AB4816312B4A90020640C25400024214A0024C1
-S32100005260200A6004204960C84CEE0404FFF84E5E4E7551FC4E5600002F2E000C0B
-S3210000527C2F2E00084EBAFF564E5E4E754E5600002F0A206E0008429045F900025A
-S321000052988C3043EA00082151002422885392246EFFFC4E5E4E7551FC4E560000F1
-S321000052B42F0A206E000845F900028C342252B1C9660C24A800242F0861BA588F80
-S321000052D060204A89671C20290024B088660E2368002400242F0861A0588F600675
-S321000052EC22404A8066E4246EFFFC4E5E4E7551FC4E5600002F0B2F0A2F0241F95F
-S3210000530800028C3074002202E7812001E581D28043E8000C528245F118004292BF
-S3210000532447F11828254B00240C82000000FA6DDA42A9270C4298429820894CEED7
-S321000053400C04FFF44E5E4E754E56FFEC48D70C0CA342B4AE000845F90000470837
-S3210000535C6C00018C206E000C47F02C00225310110C00002D67142F094EBAFD565C
-S32100005378588F5282B4AE00086DDE60000166732900010481000000417032B081A6
-S321000053946500014A307B1A064EFB88020066014000DA01400140014001400140E3
-S321000053B001400140014000E00140014001400140014000EA012A0140014001401B
-S321000053CC01400140014001400140014001400140014001400066014000DA014073
-S321000053E8014001400140014001400140014000E00140014001400140014000EACD
-S32100005404012A5482B4AE00086D0C487A00E44E92588F600000D22F390002B504E0
-S32100005420486EFFFC2F2B00084EB900004DF026004A804FEF000C6616202B00040E
-S3210000543CB0AEFFFC660C2F00487900003FB44E92508F588B2F134EBAFB904A805F
-S32100005458588F67082F004EBAFE50588F2F032F134EBAFE0A508F5282B4AE0008CF
-S321000054746D00FEEA60704EBAFE80606A42A74EBAFC48588F6060206E000C528257
-S3210000549047F02C002F134EBAFB4C4A80588F66162F13487A00684E92508F5482D8
-S321000054ACB4AE00086D00FEAE60342F004EBAFDF6588F5482B4AE00086D00FE9A71
-S321000054C86020487800FA2F3900028C30487A00524E924FEF000C600A2F09487AC0
-S321000054E4006C4E92508F4CEE0C0CFFEC4E5E4E754572726F723A20496E76616C71
-S3210000550069642076616C75650A0051FC4572726F723A20496E76616C696420736A
-S3210000551C796D626F6C3A2025730A00512564206F662025642073796D626F6C2000
-S321000055387461626C6520656E747269657320696E207573652E0A00514572726FAA
-S32100005554723A20496E76616C6964206F7074696F6E3A2025730A00514E560000F8
-S321000055702F0A247900028C346032207C00FFFE00B1D26624202E000CB0AA000491
-S3210000558C661A487800202F2E00082F0A4EB900004C54422A001F4FEF000C60081B
-S321000055A8246A00244A8A66CA246EFFFC4E5E4E754E56FFFC203C00FFFE002D40CA
-S321000055C4FFFC2F2E000C43EEFFFC2F094EBAFC064A802040670A20FC00FFFE003F
-S321000055E020AE00084E5E4E754E560000207900028C344A88660A602A202800242D
-S321000055FC67242040202E0008B0A8002066EE487800202F082F2E000C4EB90000F9
-S321000056184C54A3404FEF000C60182F2E0008487AFA902F2E000C4EB9000046D8EC
-S3210000563470004FEF000C4E5E4E7551FC4E5600002F2E00084EBAF99A4A80204010
-S32100005650670A226E000C22A80020A3404E5E4E754E5600002F0B2F0A222E000880
-S3210000566C5E8145F90002B354E689225252814A89662441F90002DF90203C0004D8
-S321000056884F909088E6882140000443F90002B34C2649208926C842932489205100
-S321000056A420280004B081652AB081660C2290248947E80008200B602893A80004AD
-S321000056C020280004E780D1C0248947E8000821410004200B600EB1D26604700044
-S321000056DC60062248205060C04CEE0C00FFF84E5E4E7551FC4E5600002F0B2F0A3C
-S321000056F8246E000820790002B35443EAFFF860102010B1C06D08B3C86E0EB3C040
-S321000057146D0A2040B3C86FECB3D06CE820290004D080245047F10C00B5CB661E96
-S32100005730202A0004D1A9000424502452228A20280004D08047F00C00B3CB66260C
-S3210000574C6010228A20280004D08047F00C00B3CB661420290004D1A8000422510B
-S32100005768208923C80002B3546008208923C80002B3544CEE0C00FFF84E5E4E75D1
-S321000057844E5600002F2E000C2F2E0008487A001E4EB900004708487A00384EB95A
-S321000057A0000047084EB9000262784FEF001060FE417373657274696F6E2066616A
-S321000057BC696C656420696E202573206174206C696E652025640A005150726F6329
-S321000057D86573732068616C7465642E0A0051FC514E560000206E00084A9057C0D1
-S321000057F449C044804E5E4E754E5600002F0A226E0008246E000C2F0A61DA4A8006
-S3210000581066222F0961D222124A80670A22C122AA00044292600E206900042081F1
-S3210000582C236A000400044292246EFFFC4E5E4E754E560000206E000820104E5EDF
-S321000058484E7551FC4E560000226E00082F0961904A80670470006006205122909B
-S3210000586420084E5E4E7551FC4E5600002F0A226E0008246E000C2F094EBAFF6A82
-S321000058804A80670A234A0004228A4292600C20690004208A234A00044292246E60
-S3210000589CFFFC4E5E4E7551FC4E560000206E000842904E5E4E7551FC4E560000C7
-S321000058B84E5E4E754E5600002F032F02242E0008AF674EB90000F018D48241F949
-S321000058D40002B5F0260043F02C002F094EB90000584C2F0324004EB90000F0183E
-S321000058F020024CEE000CFFF84E5E4E754E5600002F0A2F02246E0008AF674EB903
-S3210000590C0000F018357C0800000A426A000824002F0A48790002B5F04EB900002E
-S32100005928586C2F024EB90000F0184CEE0404FFF84E5E4E754E5600002F032F02AA
-S32100005944AF674EB90000F018A3422600588FA3674EBAFF664A80588F67122F005A
-S32100005960619A588F2F024EBAFF544A80588F66EE52820C82000000046DEA2F03C3
-S3210000597C4EB90000F018588F4CEE000CFFF84E5E4E7551FC4E5600002F032F0213
-S32100005998242E0008AF674EB90000F0182F2E000C2600D48241F90002B5F043F075
-S321000059B42C002F094EB90000586C2F034EB90000F0184CEE000CFFF84E5E4E75B5
-S321000059D04E5600002F032F02AF674EB90000F01848790002B5F026004EB90000F4
-S321000059EC584C24002F034EB90000F01820024CEE000CFFF84E5E4E754E5600001E
-S32100005A082F032F02AF674EB90000F01826007400588F41F90002B6102F302C00E6
-S32100005A244EB9000056F05282701EB082588F6EE67400600A2F004EB9000056F0EA
-S32100005A40588F2002D08041F90002B5F043F00C002F094EB90000584C4A80588F37
-S32100005A5C66DA52820C82000000046DDA2F034EB90000F018588F4CEE000CFFF8D6
-S32100005A784E5E4E754E5600002F0B2F0A2F0274002002D08041F90002B5F043F05B
-S32100005A940C002F094EB9000058A452820C8200000004588F6DDE74004878000CD1
-S32100005AB04EB9000056604A802440588F672C41F90002B61047F02C004878081032
-S32100005ACC4EB900005660268006800000000F0280FFFFFFF0254000044A80588F37
-S32100005AE86604A3406022426A0008426A000A2F0A48790002B5F04EB90000586CF7
-S32100005B045282701EB082508F6E9E70004CEE0C04FFF44E5E4E7551FC4E560000F3
-S32100005B20206E000872004230180050C01180180652810C81000000066DEC7200E1
-S32100005B3C2001E5809081528143F00C14425142A9000442A900080C810000000385
-S32100005B586DE24268003842A8000C42A8001042A8003C42A8004042A8004442A8A2
-S32100005B74004842A8004C42A8005020084E5E4E754E560000206E000830280038F6
-S32100005B900C400002643C71C02200E580908143E80014322E000E33810C0071E876
-S32100005BAC00382200E580908143F10C00236E0014000832280038236E00100004E3
-S32100005BC8528131410038A340600270004E5E4E754E560000226E00087200601AF2
-S32100005BE42001E580908141F10C14302E000EB050660620280008600C528171E9F5
-S32100005C000038B2806DDE70004E5E4E754E5600002F0A2F02246E00087400602250
-S32100005C1C2002E580908241F20C14302E000EB050660E2F2E00102F0A2068000468
-S32100005C384E90508F528271EA0038B4806DD64CEE0404FFF84E5E4E754E56000063
-S32100005C542F02206E0008720060162001E5809081342E000EB4700C146604A340E7
-S32100005C70600C528171E80038B2806DE27000242EFFFC4E5E4E7551FC4E560000A4
-S32100005C8C2F042F032F02206E0008222E000C7400E2814A81672479D02604D68276
-S32100005CA871C377C4B0836D04B0826C08528002800000FFFF5488240053814A8130
-S32100005CC466DC300246804CEE001CFFF471C04E5E4E7551FC4E5600002F0A2F0240
-S32100005CE0246E000C73920281000000F0E881598166581212700FC2800C01000594
-S32100005CFC654C487808002F2E00084EB900005BD872002040508F43F21800102937
-S32100005D180010B0301800662A52810C810000000465E875EA000A7392426A000AFC
-S32100005D3402810000000FE5812F012F0A4EBAFF46B480508F6704700060063542D4
-S32100005D50000AA3404CEE0404FFF84E5E4E7551FC4E5600002F0B2F0A2F02246E75
-S32100005D6C000C71EA0008266A0004D7C02F0B2F2E00084EBAFF584A8067567393F0
-S32100005D88700FC28071C1322A0008E580D28035410008342B00027393700FC28045
-S32100005DA4E58194813542000A73AB00090C810000000167087011B0816710601C18
-S32100005DC02F0A2F2E00084EB9000069FC60162F0A2F2E00084EB900006AC8600802
-S32100005DDC2F0A4EB9000058FC4CEE0C04FFF44E5E4E7551FC4E5600002F0A7200C9
-S32100005DF8226E000C206E000845F118001012B030180067047000600C52810C8148
-S32100005E140000000465DEA340246EFFFC4E5E4E754E56FFF82F0B2F0A2F02487847
-S32100005E3008002F2E00084EB900005BD872002440508F43F2180010321800142910
-S32100005E4C000841EEFFF8C0821180180052810C810000000465E07200226E000C64
-S32100005E681030180047F11800141343EEFFFCC0821380180052810C8100000004CC
-S32100005E8465DE486EFFFC2F084EBAFF624A80508F67182F2E000C487808002F2EB2
-S32100005EA000084EB9000065544FEF000C601841EA00042F08487808002F2E0008C3
-S32100005EBC4EB9000065544FEF000C4CEE0C04FFEC4E5E4E754E5600002F0C2F0BFD
-S32100005ED82F0A266E0008246E000C206E0010286E0018226C0004701472454229B1
-S32100005EF4000F1341000E322C000A42690012D2803341001042690014137C00FFD3
-S32100005F10001643E9000E136E001700094269000A1358000C1358000D1358000E61
-S32100005F2C1350000F13520010136A00010011136A00020012136A000300134878F9
-S32100005F4800142F094EBAFD3A3340000A322C000A7014D2803941000A2F0A2F0BFA
-S32100005F644EBAFEBE4A80662471AA00032F0071AA00022F0071AA00012F0071921C
-S32100005F802F00487A00284EB900004708700060122F0C487808002F0B2F002F0B08
-S32100005F9C206B003C4E904CEE1C00FFF44E5E4E75556E61626C6520746F206C6F31
-S32100005FB8636174652025642E25642E25642E25640A0051FC4E560000202E00080B
-S32100005FD44A804E5E4E7551FC4E560000206E00087200226E000C10311800226EF4
-S32100005FF000101180180010311800226E001411801804103118001180180850C012
-S3210000600C1180180C52810C810000000465CC42A8001042A8001442A8001842A844
-S32100006028001C4E5E4E7551FC4E56FFEC48D71C0C226E0008246E0010266E0014C6
-S3210000604476004A8A66064A8B670000804A89677A7400720060662001E580D08191
-S3210000606041F10C044AA800106754302E000EB050664C4A8A672249E8000A240C39
-S3210000607C7000600E49F208001614B63008036622528077A80002B0836DEA60322F
-S3210000609849E80003240C7000601249F308001614B630080A67047600600C52801B
-S321000060B477A80009B0836DE6600C52812011B08162944A83670420026002700059
-S321000060D04CEE1C0CFFEC4E5E4E7551FC4E5600002F0A2F024AAE0014670001081B
-S321000060EC4AAE001C670001004AAE0008670000F87002B0AE0020670A7001B0AE87
-S321000061080020660000E62F2E001C42A7302E000E2F002F2E00084EBAFF104A80C6
-S3210000612422404FEF0010671C91C8600E246E001410328800138088005288B1EE5B
-S3210000614000106DEC600000ACA14291C8246E00082008E580D08843EA00044AB1E1
-S3210000615C0C10660A240870FFB082671060385288700AB0886EDA70FFB082662AB4
-S3210000617891C82008E580D0887202B2B10C10660A240870FFB082671060105288D6
-S32100006194700AB0886EE070FFB082660274092002E580D08291C843F10C0032AE11
-S321000061B0000E136E00130002600E246E001410328800138088035288B1EE0010A4
-S321000061CC6DEC136E001B000991C8600E246E001C103288001380880A5288B1EED6
-S321000061E800186DEC236E002000104CEE0404FFF84E5E4E754E56FFE048D73C3CA1
-S32100006204246E0008262E000C48780806283C00005BD82F0A26444E9320432A0008
-S32100006220286800043028000A73E800080C40001C6500018430341800D9C10C404F
-S3210000623C000166000176102C00040C0000066600016A302C00020C400800660027
-S32100006258015E102C00050C00000466000152487808002F0A26444E93508F2F0061
-S321000062744EB900005FCC204024001010B02C00186626204210280001B02C001922
-S32100006290661A10280002B02C001A6610204210280003B02C001B6604A340600283
-S321000062ACA5402F0041EC000E2F0871AC00052F0041EC00082F0871AC00042F003D
-S321000062C8302C00022F002F054EBAFE0A73EC00065381660000DA20421010B02C0C
-S321000062E40018660000CE10280001B02C0019660000C2204210280002B02C001A64
-S32100006300660000B410280003B02C001B660000A82643266B000447EB000E36FCB1
-S3210000631C000136FC080016FC000616FC000436BC000247EB000C16EC000816ECB8
-S32100006338000916EC000A16EC000B16EC000C16EC000D16EC000E16EC000F16ECE1
-S32100006354001016AC001147EBFFED16D216EA000116EA000216EA000316EA000434
-S3210000637016EA0005487808002F0A2A444E95508F2F004EB900005FCC204016D826
-S3210000638C16D816D816902043317C001C000A2F034878080641EBFFF72F0841EBB2
-S321000063A800012F082F0A206A003C4E9060082F034EB9000058FC4CEE3C3CFFE038
-S321000063C44E5E4E754E5600002F02226E000822BC0000000A740072002002E58086
-S321000063E0D08241F10C044230180352810C81000000066DE872004230180A5281E6
-S321000063FC0C81000000046DF242A8001042280002422800095282700AB08262C212
-S32100006418242EFFFC4E5E4E754E5600004AAE0010673C4AAE000867364A6E000EF4
-S321000064346730487808062F2E00084EB900005BD82F2E001042A7322E000E2F014E
-S321000064502F004EBAFBDC206E001420804A8056C049C04480600270004E5E4E75EC
-S3210000646C4E5600002F0C2F0B2F0A266E00084EB9000059D04A802840670000C295
-S32100006488246C0004204B357C00010014157C00040013157C00060012357C080023
-S321000064A40010357C0001000E45EA000E7200103018001580180852810C810000EA
-S321000064C000066DEE487808002F0B4EB900005BD8508F2F004EB900005FCC72006B
-S321000064DC2040588F103018001580180E52810C81000000046DEE72004232181275
-S321000064F852810C81000000066DF27200206E000C103018001580181852810C8134
-S32100006514000000046DEA397C001C000A2F0C487808062F0B41EB00062F082F0B49
-S32100006530206B003C4E904A804FEF0014660A2F0C4EB9000058FC588F4CEE1C0045
-S3210000654CFFF44E5E4E7551FC4E56FFFC2F02486EFFFC2F2E0010302E000E2F00F5
-S321000065682F2E00084EBAFEB24A804FEF00106706202EFFFC606224002F2E0010D3
-S321000065842F2E00084EBAFEE2A36742A74EB9000252984FEF001042A74EB9000282
-S321000065A051F44A80588F672C486EFFFC2F2E0010302E000E2F002F2E00084EBA2A
-S321000065BCFE644A804FEF001066B242A74EB9000251F44A80588F66D452820C82A7
-S321000065D8000000036DA27000242EFFF84E5E4E754E56FFF048D71C04226E0008FD
-S321000065F4246E0010266E00144A8A66064A8B670000AA4A89670000A47400600063
-S3210000661000962002E580D08241F10C044AA8001067000082302E000EB050667882
-S3210000662C4A8A671C7200600E49F218001014B03018036664528171A80002B280B9
-S321000066486DEA601A220A600E49F318001014B030180A6648528171A80009B28076
-S321000066646DEA720060102002E580D08241F10C004230180752812002E580D08287
-S3210000668041F10C0471A80002B2806DDE720060064230180A528171A80009B2808B
-S3210000669C6DF242A80010600A52822011B0826200FF664CEE1C04FFF04E5E4E7563
-S321000066B84E5600002F0A226E000873917010B08165000182307B1A064EFB880210
-S321000066D4012801780178002200F601080178017801180178017800D200E401585C
-S321000066F0016801380148487A016C4EB900004708246E000873AA000170050C815E
-S3210000670C0000000562000082307B1A064EFB8802000C001E00300042005400668E
-S32100006728203C0000686C2F004EB90000470860000122203C000068802F004EB99D
-S321000067440000470860000110203C000068942F004EB900004708600000FE203CDC
-S32100006760000068AC2F004EB900004708600000EC203C000068C02F004EB9000078
-S3210000677C4708600000DA203C000068E42F004EB900004708600000C8203C0000C1
-S3210000679868FC2F004EB900004708600000B6203C000069182F004EB9000047087E
-S321000067B4600000A4203C0000692C2F004EB90000470860000092203C000069444E
-S321000067D02F004EB90000470860000080203C000069582F004EB900004708606ED2
-S321000067EC203C000069682F004EB900004708605E203C000069742F004EB90000AC
-S321000068084708604E203C000069882F004EB900004708603E203C000069A42F0069
-S321000068244EB900004708602E203C000069BC2F004EB900004708601E203C00008E
-S3210000684069CC2F004EB900004708600E203C000069E42F004EB900004708246E4E
-S3210000685CFFFC4E5E4E7551FC49434D50203A20004E657420556E72656163686152
-S32100006878626C650A0051FC51486F737420556E726561636861626C650A0051FCB4
-S3210000689450726F746F636F6C20556E726561636861626C650A0051FC506F72741A
-S321000068B020556E726561636861626C650A0051FC467261676D656E746174696F14
-S321000068CC6E206E656564656420616E64204446207365740A0051FC51536F7572FD
-S321000068E8636520726F757465206661696C65640A0051FC5144657374696E61740E
-S32100006904696F6E20556E726561636861626C650A0051FC5149434D505F54494D97
-S32100006920455F45584345454445440A0049434D505F504152414D455445525F5098
-S3210000693C524F424C454D0A0049434D505F534F555243455F5155454E43480A00E8
-S3210000695849434D505F52454449524543540A005149434D505F4543484F0A0051E6
-S3210000697449434D505F4543484F5F5245504C590A0051FC5149434D505F494E4662
-S321000069904F524D4154494F4E5F524551554553540A0051FC49434D505F494E4638
-S321000069AC4F524D4154494F4E5F5245504C590A0049434D505F54494D45535441CC
-S321000069C84D500A0049434D505F54494D455354414D505F5245504C590A0051FC88
-S321000069E4556E6B6E6F776E2049434D50206D6573736167650A0051FC4E56FFF861
-S32100006A002F0B2F0A266E000C71EB0008246B0004D5C0739251816664426A000286
-S32100006A1C421271EB000A2F002F0A4EB900005C8835400002246B000445EA000E04
-S32100006A38A96741EA000C2F0841EEFFFC2F084EB900004BB0A96741EA00102F08D9
-S32100006A5441EEFFF82F084EB900004BB02F0B102A00092F00486EFFF8486EFFFCB7
-S32100006A702F2E00084EB900005ED0600E2F0A4EBAFC382F0B4EB9000058FC4CEEB8
-S32100006A8C0C00FFF04E5E4E754E56000072002001D08041F90002B35841F00C0073
-S32100006AA8302E000AB050660620280004600C52810C81000000056DDA70004E5E78
-S32100006AC44E7551FC4E560000226E000C71E9000820690004D1C03029000A5180AC
-S32100006AE03340000A30290008508033400008302800022F00619E4A802040670A48
-S32100006AFC2F092F2E00084E9060082F094EB9000058FC4E5E4E7551FC4E560000A2
-S32100006B18226E0018206900047022316E0012002241E80022316E00160002302966
-S32100006B34000A426800065080314000043229000A50813341000A2F094878001183
-S32100006B50487808002F2E00084EB900005BD8508F2F004EB900005FCC588F2F0066
-S32100006B6C2F2E000C2F2E00084EB900005ED04E5E4E7551FC4E56000041F9000268
-S32100006B88B38030103200538130810C4100FF620430BC432171C04E5E4E7551FCD2
-S32100006BA44E56000072002001D08041F90002B35841F00C00302E000AB0506604F2
-S32100006BC04250600A52810C81000000056DDC4E5E4E7551FC4E5600007200200116
-S32100006BDCD08041F90002B35841F00C004A50660C30AE000A216E000C0004600AC6
-S32100006BF852810C81000000056DD84E5E4E7551FC4E560000302E000A33C0000214
-S32100006C14B3804E5E4E7551FC4E56000072002001D08041F90002B358528142701C
-S32100006C300C000C81000000056DE8303C432133C00002B3804E5E4E754E56000044
-S32100006C4C2F0A2F032F024EB9000059D04A8024406604200A6060206A000441E821
-S32100006C68002A30FC000430AE000A7400357C0004000A41F90002B6882F0A71E889
-S32100006C8400282F0071E8002A2F0043E800102F092F2800084EB900006B14260067
-S32100006CA053804FEF0014670A52820C82000000036DC24A83660A2F0A4EB900002B
-S32100006CBC58FC588F20034CEE040CFFF44E5E4E754E56FFE448D73C1C45F900026E
-S32100006CD8B6884A92204A671620525292759053AA00244AAA0024620001526000F0
-S32100006CF401364A2A00056606A1426000014243E80014283C00006C482F094EB946
-S32100006D100000583C26404A80588F6600008C2400A36742A74EB900025298508FDB
-S32100006D2C42A74EB9000251F44A80588F673441EA00142F0826084EB9000057E8D8
-S32100006D484A80588F66122F034EB90000583C2640588F4A806714604842A74EB909
-S32100006D64000251F44A80588F66CC4A8B6636302A002E284A53802F002A444E9525
-S32100006D8052820C8200000003588F6D94422A0005157C00010030487A00B84EB9F0
-S32100006D9C00004708A142588F6000009C71EB0008206B00044BEA0024D1C071EB87
-S32100006DB8000A260D59802A804BE80004224A248D49EA002E220038A800020C80B4
-S32100006DD4000002006404422A00054A81662C41E900142F084EB90000584C2F0016
-S32100006DF04EB9000058FC301442923200528138812F0026444E93A1424FEF000CA9
-S32100006E0C603430143200528138812F0026444E9320525292759020435390588FCC
-S32100006E28661841EA00142F084EB90000584C2F004EB9000058FC4292508F20024A
-S32100006E444CEE3C1CFFE44E5E4E7551FC54465450206C6F737420636F6E6E656345
-S32100006E6074696F6E20746F207365727665722E0A0051FC514E5600002F0A2F03B7
-S32100006E7C2F024EB9000059D04A8024406604200A6062206A000441E8002A30FC02
-S32100006E98000530EE000A42107400357C0005000A41F90002B6882F0A71EE000E05
-S32100006EB42F0071E8002A2F0043E800102F092F2800084EB900006B14260053808A
-S32100006ED04FEF0014670A52820C82000000036DC24A83660A2F0A4EB9000058FC78
-S32100006EEC588F20034CEE040CFFF44E5E4E7551FC4E56FFE848D73C0C286E000CED
-S32100006F0845F90002B38473EC0008206C000471C1243C0002B68847F0180073D392
-S32100006F2441F008F8578167105381670001065381670000CE600001462A42302B12
-S32100006F400002264243ED002C32112409B0416600009C0C400001661E3750002886
-S32100006F5C700117400005103900026BC02F004EB90002870C42AA0004600A30106B
-S32100006F78B06B0028660000F02F0C41EB00142F084EB90000586C2042301052806D
-S32100006F94308071EC000A5980D1AB001C52AA00047032B0AA0004660000DC2212DD
-S32100006FB0701F52812601E0A3A742C483D4810282FFFFFFFC928224814878000830
-S32100006FCC4EB90002870C201A41F900026BC0103008002F004EB90002870C42927F
-S32100006FE86000009EB041640000902F004EBAFC522F0C4EB9000058FC60000086A3
-S3210000700471EB00022F00487A00884EB90000470841EB00042F08487A008C4EB981
-S32100007020000047082042117C000100302F0C4EB9000058FC60522A42224245ED95
-S3210000703C002C3012B06B0002663A4A6B0002661A3350002870011340000530121A
-S32100007058528034802F0C4EB9000058FC60223010B0690028670C30102F00AB6703
-S321000070744EBAFDFE600E3012528034802F0C4EB9000058FC4CEE3C0CFFE84E5E16
-S321000070904E7551FC0A54465450204572726F72202325643A200051FC25730A0047
-S321000070AC4E56FFE848D71C1C4EB9000059D04A8024406606200A6000009C43F9B4
-S321000070C80002B688206A000473A900043141002A49E9000C47E8002C2F142F0B06
-S321000070E44EB900004C942F144EB900004CBC2400528241FA007443F3280012D862
-S3210000710012D812D812D812D812D876004FEF000C300250803540000A41F900025E
-S3210000711CB6882F0A71E800282F0071E8002A2F0043E800102F092F2800084EB99F
-S3210000713800006B14280053804FEF0014670A52830C83000000036DC04A84660A26
-S321000071542F0A4EB9000058FC588F20044CEE1C1CFFE84E5E4E7551FC6F637465BA
-S32100007170740051FC4E56FFF048D71C04286E0008206E00104AAE000C67044A88ED
-S3210000718C660670006000012445F90002B68847F90000470843EA0010256E000C97
-S321000071A8000C254C000812D812D812D870011290357C004500283540002C426A04
-S321000071C4002E15400004422A000542AA001C42AA0024429243EA0014422A0030E8
-S321000071E02F094EB9000058A471AC000473AC0005E18080812F004EB900006C0801
-S321000071FC4EB900006B803540002A2F3C00006EFC302A002A2F004EB900006BD412
-S32100007218A9424FEF001060564EBAFE8A4A806618487A00964E93302A002A2F00A1
-S321000072344EB900006BA47000508F6076A56742A74EB900025298508F600A102A92
-S3210000725000050C000001670E42A74EB9000251F44A80588F66E8102A00050C0014
-S3210000726C0001670A4A2A00306604538266A64A826618487A00684E93302A002AC6
-S321000072882F004EB900006BA47000508F60204A2A00306718487A00764E93302A3A
-S321000072A4002A2F004EB900006BA47000508F6002A3404CEE1C04FFF04E5E4E750D
-S321000072C04572726F723A20436F756C646E27742073656E64205446545020526549
-S321000072DC616420526571756573740A005446545020636F756C64206E6F74206D45
-S321000072F8616B6520636F6E6E656374696F6E20746F207365727665722E0A0051B0
-S32100007314084572726F727320696E205446545020646F776E6C6F61642E0A00517C
-S321000073304E56FFD048D73CFC286E0008206E00104AAE000C670E4A88670A202E2B
-S3210000734C0018B0AE0014640670006000028445F90002B68847F90000470843EA9B
-S321000073680010256E000C000C254C000812D812D812D81290357C00450028426AA5
-S32100007384002C422A003042AA0020422A0005157C0002000471AC000473AC0005C6
-S321000073A0E18080812F004EB900006C084EB900006B803540002A2F3C00006EFC59
-S321000073BC302A002A2F004EB900006BD4A94342054FEF000C60544EBAFCD84A80DF
-S321000073D8661A487A020C4E93302A002A2F004EB900006BA47000508F600001EAFF
-S321000073F4A56742A74EB900025298508F600C4A2A000567064A83663C602042A786
-S321000074104EB9000251F44A80588F66E64A05660A4A2A00306604538366A84A8391
-S3210000742C661A487AFEB84E93302A002A2F004EB900006BA47000508F6000019656
-S321000074484A2A0030671A487A01C44E93302A002A2F004EB900006BA47000508F7D
-S3210000746460000176282E00182A6E001498AE00147C01600000FE4EB9000059D0B0
-S321000074804A8028406700FECE206C000470033146002C41E8002A308071C40C8417
-S3210000749C000002006304303C02003E007400600A1035280011802804528271C7A5
-S321000074B8B48065F0300758803940000A74002F0C71EA00282F0071EA002A2F0082
-S321000074D443EA00102F092F2A00084EB900006B14204053804FEF0014670A528270
-S321000074F00C820000000365CE4A88660A2F0C4EB9000058FC588FA56742A74EB9FB
-S3210000750C00025298508F601671EA002C73C65380B280660A7A010C470200651A98
-S32100007528602642A74EB9000251F44A80588F66DC4A0567140C470200640E71C7C8
-S32100007544D1AA00204A2A0030663860624A2A0030204A662E4A05671E20280020A8
-S32100007560048400000200068000000200214000204BED02005286A943420553835B
-S3210000757C6600FEFC4A2A0030672C487AF8C84E9371EA002C53802F002F2A0020F1
-S32100007598487A00964E93302A002A2F004EB900006BA470004FEF0014602A487AC1
-S321000075B400984E9371EA002C53802F002F2A0020487A006A4E93302A002A2F007A
-S321000075D04EB900006BA4A3404FEF00144CEE3CFCFFD04E5E4E7551FC4572726FB9
-S321000075EC723A20436F756C646E27742073656E642054465450205772697465203E
-S32100007608526571756573740A0051FC51084572726F727320696E205446545020D5
-S3210000762475706C6F61642E0A0051FC5153656E74202564206279746573202825F2
-S321000076406420626C6F636B73290A005108544654502075706C6F6164207375634C
-S3210000765C6365737366756C0A0051FC514E5600002F0C2F0B2F0A45F90002B6889F
-S321000076784AAE000847F900004708673E4A2A0030284A66364A2A00056630487A39
-S3210000769400AC4E9371EC002C53802F002F2C001C487A00B64E934FEF001041EA73
-S321000076B000142F084EB9000057E84A80588F673C6064302A00282F00A9674EBA46
-S321000076CCF7A8487A00A84E9371EA002C53802F002F2A001C487A007A4E934FEF59
-S321000076E8001841EA00142F084EB9000057E84A80588F662A41EA00142F084EB9EE
-S321000077040000584C588F2F004EB9000058FC588F41EA00142F084EB9000057E8AB
-S321000077204A80588F67D6302A002A2F004EB900006BA4588F4CEE1C00FFF44E5EB4
-S3210000773C4E7551FC0854465450207472616E7366657220636F6D706C6574656473
-S32100007758200A0051526561642025642062797465732028256420626C6F636B73B9
-S32100007774290A0051084572726F727320696E2054465450207472616E7366657210
-S321000077902E0A00514E56FFF42F032F02486EFFF44EB90002696C486EFFF84EB919
-S321000077AC000268EC486EFFFC4EB9000268AC243C0002B7302F024EB9000063C8EB
-S321000077C8263C0002B6BC2F022F3C000061FC487808062F034EB900005B84486E34
-S321000077E4FFFC243C0002B710486EFFF8486EFFF42F024EB900005FDC2F022F3CFA
-S3210000780000005D60487808002F034EB900005B844EB900006C1C4CEE000CFFEC09
-S3210000781CA3404E5E4E7551FC4E56FFE448D70C1C246E000CA5790002B514487896
-S32100007838001047F900004708486EFFFC2F2A00044EB900000B8C24004AAEFFFCCC
-S3210000785466102F2A0004487900003FB44E936000009248780010486EFFFC2F2ADE
-S3210000787000084EB900000B8C26004AAEFFFC660E2F2A0008487900003FB44E93CD
-S3210000788C6068282A000C4EB9000264504A80675A4EB90000779445EEFFF82F0AF7
-S321000078A84EB90002692C71AA00032F0071AA00022F0071AA00012F0071922F000A
-S321000078C42F032F02487A00364E932F04487A00624E932F032F022F0A2F0448799E
-S321000078E00002B6BC4EB9000073304EB9000264084EB90000F2184CEE0C1CFFE49D
-S321000078FC4E5E4E7553656E64696E6720646174612066726F6D20307825303858F8
-S32100007918202D3E2030782530385820746F2025642E25642E25642E25640A0051E9
-S3210000793452656D6F74652066696C656E616D653A2025730A0051FC514E56FF78AF
-S3210000795048D73CFC282E0008246E000C49F900004708A5790002B5144BF9000301
-S3210000796C00007E002A0D4EB90002684897CB2600A3427C004A8A67000222206AB9
-S3210000798800044A886700021810100C00002D667A732800017063B081631A70437D
-S321000079A4B081673A7045B08167447049B081674E7053B081665860187063B08191
-S321000079C067207065B081672A7069B08167347073B081663EA542A346A543B4843A
-S321000079DC6C0000CC606CA542A346A343B4846C0001BA600000DCA542A346A94378
-S321000079F8B4846C0001AA600000ECA542A346A743B4846C000190600000F40C8300
-S32100007A1400000001670000AA0C830000000267240C8300000003670E0C8300008C
-S32100007A300004670000B06000016E2A0DA743B4846C00015A600000BEA543B484EC
-S32100007A4C6C5C20722C0010100C00002D664873280001704FB0816708706FB08180
-S32100007A68660001185282B8826F242F390002B504486EFFF42F322C004EB900007C
-S32100007A840B8C2E004AAEFFF44FEF000C670000B6600E487A03704E94588F6000FD
-S32100007AA0035E26485282B4846DA42F07487A037A4E94508F4EB9000264504A801B
-S32100007ABC67000340600000F0A343B4846C0000DC26722C00702D7313B0816700C9
-S32100007AD800AA5282B4846DEC600000C4A943B4846C0000BC26722C00702D731326
-S32100007AF4B0816700008A5282B4846DEC600000A420722C0010100C00002D660068
-S32100007B100082732800017041B08167067061B08166605282B8826F4E2F390002E9
-S32100007B2CB504486EFFF42F322C004EB900000B8C2A004AAEFFF44FEF000C6612D3
-S32100007B482F322C00487900003FB44E94508F600002A62F004EB90002636C4A8040
-S32100007B64588F662C2F05487A02CC4E94508F6000028A487A02EC4E94588F60003C
-S32100007B80027E2F322C00487A02FC4E94508F6000026E26485282B4846D00FF6A35
-S32100007B9C2F05487A03044E94508F4EB9000264504A806700024E4EB900007794B9
-S32100007BB84A8B6610486EFFA04EB90002685847EEFFA0588F4A86660000962F0B81
-S32100007BD44EB900004CBC45F30800588F6002538A10120C00002E6706B5CB66F279
-S32100007BF06002528AA767487A02C02F0A4EB900004F244A804FEF000C6602A5438C
-S32100007C0CA767487A02B02F0A4EB900004F244A804FEF000C6602A943A767487AE9
-S32100007C28029C2F0A4EB900004F244A804FEF000C6602A343A767487A028C2F0AF0
-S32100007C444EB900004F244A804FEF000C6602A7432F0A2F0B4EB9000263604A8035
-S32100007C60508F6702260045EEFFF02F0A4EB90002692C487A025C4E94508F0C832B
-S32100007C7C00000001672A0C8300000002671A0C8300000003670A0C8300000004AC
-S32100007C98671A6020203C00007EE0601E203C00007EE86016203C00007EC4600E4D
-S32100007CB4203C00007EC06006203C00007EF4243C000071742F004E9471AA00036C
-S32100007CD02F0071AA00022F0071AA00012F0071922F002F0B487A02164E94A36E93
-S32100007CECFFF44FEF001C538367705383673E5383670A53836700008C600000D4BD
-S32100007D082F0A2F0B48790002B6BC28424E944A804FEF000C670000BC2F054EB9F3
-S32100007D2400003954588FA3674EB900007668588F600000A42F0A2F0B48790002B9
-S32100007D40B6BC28424E944A804FEF000C6700008C2F074EB90000802C588F2F005D
-S32100007D5C4EB900007668588F60742F0A2F0B48790002B6BC28424E944A804FEF69
-S32100007D78000C675E4EB90000203CA3674EB900007668588F604C263C0002B6BC5D
-S32100007D942F0A2F0B2F0328424E944A804FEF000C6734A3674EB900002D0053801C
-S32100007DB0588F66262F0A2F0B2F0328424E944A804FEF000C6714A5674EB90000AB
-S32100007DCC2D00588F2F004EB900007668588F4EB9000264084EB90000F2184EB9F9
-S32100007DE80000ED6423C00002B50C4EB90000ED6423C00002B5084CEE3CFCFF789F
-S32100007E044E5E4E754572726F723A20204F6666736574206E6F742073706563695D
-S32100007E2066696564210A00514F66667365743A202025233038580A004572726FA1
-S32100007E3C723A2020496E76616C696420646F776E6C6F61642061646472657373F3
-S32100007E583A202025233038580A0051FC4572726F723A20204164647265737320C5
-S32100007E746E6F7420737065636966696564210A004572726F723A2020496E766192
-S32100007E906C6964206F7074696F6E3A202025730A0051FC51416464726573733A24
-S32100007EAC202025233038580A0051FC51535245430051FC51454C4600434F464604
-S32100007EC80051FC5142494E00446F776E6C6F6164696E67200051FC51496D61676F
-S32100007EE4650051FC532D5265636F72640051FC51556E6B6E6F776E00202725737E
-S32100007F00272066726F6D2025642E25642E25642E25640A004E5600004EB90000E1
-S32100007F1C6CCC72FFB280670C7253B28066EE4EB900006CCC4E5E4E754E56000058
-S32100007F382F02222E00082041703641E8FFD02408B0826500009A307B8A064EFBBE
-S32100007F548802006E006E006E006E006E006E006E006E006E006E00900090009085
-S32100007F7000900090009000900078007C008000840088008C009000900090009063
-S32100007F8C00900090009000900090009000900090009000900090009000900090F3
-S32100007FA8009000900090009000900090009000900078007C008000840088008C2B
-S32100007FC40481000000302001601A700A6016700B6012700C600E700D600A700E1F
-S32100007FE06006700F60027000242EFFFC4E5E4E754E5600002F024EB900006CCCF8
-S32100007FFC72FFB28067162F004EBAFF2E2400E9824EB900006CCC72FFB280660404
-S32100008018A14060082F004EBAFF148082242EFFFC4E5E4E754E56FFE048D71C7CBB
-S3210000803447FAFFBA49F9000047084EBAFED472FF2A00B280670001244E9372FF1A
-S3210000805028002C00B2806700011622050481000000315581630C598155816200D6
-S3210000806C0138600000AA760004850000003095CA60184E93240070FFB08267009C
-S3210000808800E6E18B8682D48479825386528AB5C56FE4D6AE00082F034EB90002E0
-S321000080A4636C4A80588F675E95CA601A4E93240070FFB082670000B42043718285
-S321000080C0D084108279805283528A20065380B5C06DDE4E93240070FFB082670048
-S321000080DC009230023204468190810280000000FF4A40670000B4487A00C04E9426
-S321000080F82F042F02487A00DA4E944FEF00106000009C2F03487A00EA4E9470000A
-S32100008114508F60000090048500000030700A90852A00760060164E93240070FFA8
-S32100008130B082673A2002D0847980E18B86825386200553854A806CE2D6AE0008FD
-S3210000814C600E4E93240070FFB0826716D48479822006538653806EEA4E932400FE
-S3210000816870FFB08266047000603630023204468190810280000000FF4A40670C26
-S32100008184487A002E4E947000588F6018487A00924E942F034EB90000ED74508F89
-S321000081A0A34060046000FE984CEE1C7CFFE04E5E4E7551FC084572726F723A20A7
-S321000081BC20532D7265636F726420636865636B73756D206572726F72210A005149
-S321000081D845787065637465643A20202532582C202052656365697665643A202518
-S321000081F432580A00084572726F723A20496E76616C696420646F776E6C6F61642A
-S3210000821020616464726573733A2025233038580A0051FC5108532D7265636F7299
-S3210000822C6420646F776E6C6F6164207375636365737366756C210A004E56000025
-S321000082482F0C2F0B2F0A266E000C222B000845F90000470866484EB9000268487D
-S321000082645380670E5380671453806724538067166028487A00B04E926000009EDC
-S32100008280487A00AE4E9260000094487A00B04E926000008A487A00AE4E926000AC
-S3210000829C0080487A00AC4E92607649F900026828A367487A00A82F014EB900009D
-S321000082B84F244A806606A7674E946058A367487A00982F2B00084EB900004F2413
-S321000082D44A806606A5674E94603EA367487A00862F2B00084EB900004F244A80CE
-S321000082F06606A3674E946024A367487A00742F2B00084EB900004F244A8066063E
-S3210000830CA9674E94600A2F2B0008487A005C4E924CEE1C00FFF44E5E4E7551FC8E
-S32100008328434F46460A0051FC532D5265636F72640A0051FC454C460A0051FC5109
-S32100008344496D6167650A0051556E6B6E6F776E0A0051FC51696D6167650051FCF1
-S32100008360737265636F726400636F66660051FC51656C66004572726F723A2049E9
-S3210000837C6E76616C69642046696C65747970653A2025730A0051FC514E56FF8042
-S32100008398206E000C20280008661A486EFF804EB900026858486EFF80487A00164E
-S321000083B44EB90000470860082F004EB9000268904E5E4E7525730A004E56FFEC19
-S321000083D048D7043C246E00082F0A4EB900004CBC72002800588FB2806C1C1432C9
-S321000083EC18000C02002E670C703094807502700AB08263345281B2846DE476006A
-S3210000840874007200602E41F2180010100C00002E670C52830C83000000036F16DA
-S32100008424600E52820C82000000036E044A8366047000605276005281B2846DCEDE
-S32100008440740076007200B2846C361A3218000C05002E671AD4822002E582D4808F
-S3210000845C7105D4800482000000305281B2846DDE6012206E000C118238007400DF
-S3210000847852835281B2846DCA206E000C11823800A3404CEE043CFFEC4E5E4E75B1
-S321000084944E56FFFC2F0A206E000C20280008662E45EEFFFC2F0A4EB9000268ACEC
-S321000084B071AA00032F0071AA00022F0071AA00012F0071922F00487A00404EB98B
-S321000084CC00004708602C486EFFFC2F004EBAFEF24A806614206E000C2F2800089E
-S321000084E8487A002E4EB900004708600A486EFFFC4EB9000268D4246EFFF84E5E97
-S321000085044E7551FC25642E25642E25642E25640A0051FC514572726F723A204942
-S321000085206E76616C696420495020616464726573733A2025730A00514E56FFFC10
-S3210000853C2F0A206E000C20280008662E45EEFFFC2F0A4EB9000268EC71AA000384
-S321000085582F0071AA00022F0071AA00012F0071922F00487AFF9C4EB90000470856
-S32100008574602C486EFFFC2F004EBAFE4E4A806614206E000C2F280008487AFF8A9D
-S321000085904EB900004708600A486EFFFC4EB900026914246EFFF84E5E4E7551FC8D
-S321000085AC4E56FFFC2F0A206E000C20280008662E45EEFFFC2F0A4EB90002696C12
-S321000085C871AA00032F0071AA00022F0071AA00012F0071922F00487AFF284EB98B
-S321000085E400004708602C486EFFFC2F004EBAFDDA4A806614206E000C2F2800089E
-S32100008600487AFF164EB900004708600A486EFFFC4EB900026994246EFFF84E5ED5
-S3210000861C4E7551FC4E56FFFC2F0A206E000C20280008662E45EEFFFC2F0A4EB968
-S321000086380002692C71AA00032F0071AA00022F0071AA00012F0071922F00487AB1
-S32100008654FEB44EB900004708602C486EFFFC2F004EBAFD664A806614206E000C47
-S321000086702F280008487AFEA24EB900004708600A486EFFFC4EB900026954246E5E
-S3210000868CFFF84E5E4E7551FC4E560000206E000812100C010030661010280001D1
-S321000086A80C000078670C0C00005867060C010024660C206E000C20BC00000010BF
-S321000086C4601E0C0100256608206E000CA5506010700A0C01004066027008206E42
-S321000086E0000C20804E5E4E754E56FFFC2F0A2F0245F90002B808202A000467009F
-S321000086FC00AC243C000087B42F022F004EB900004F904A80508F6722206A00040F
-S3210000871810100C00002E660000882F0243E800012F094EB900004F904A80508FD3
-S32100008734667243EA00082011676A486EFFFC2F004EBAFF4E2F2EFFFC48790002C4
-S32100008750B8042F114EB900000B8C4AB90002B80422404FEF0014672CA340600220
-S3210000876C5280205212300800D1C00C01003A67064A0166EC600242102F092F124E
-S321000087884EB900005274508FA34060162F12487900003FB44EB900004708508FA0
-S321000087A4A340600270004CEE0404FFF44E5E4E75657175004E5600002F0B2F0AF8
-S321000087C02F0247F90002B38CA3426002528245F90002B808205210302800D1C25D
-S321000087DC0C00003A670C4A00673E0C00002E66E0604242102F390002B8302F12CC
-S321000087F84EB90000527441EA00042490508F43EA000820914291A34260025282FC
-S3210000881420521030280067080C00002E66F0600C2252103128000C00002E66740C
-S321000088302052706273302801B08163147042B0816722704CB08167327057B08184
-S3210000884C672060367062B081670E706CB081671E7077B081670C6022421320520F
-S3210000886842302800603A16BC0001205242302800602E16BC00022052423028006D
-S321000088846022700113C00002DF302F08487A00224EB900004708508F20524230C7
-S321000088A02800600416BC00FF4CEE0C04FFF44E5E4E7551FC4E6F742061207661B7
-S321000088BC6C696420436F6C644669726520696E737472756374696F6E3A20257365
-S321000088D80A0051FC4E5600002F0A2F032F027000A342604A760060160C010028C7
-S321000088F4660652805283600A0C01002966025380528345F1380012120C01002CD4
-S3210000891066044A8067064A0166D66012148022302C00D283528121812C045282CB
-S3210000892C6008730121812C04528241F90002B80822702C004A8966A84CEE040CC2
-S32100008948FFF44E5E4E7551FC4E56FFEC48D71C0C49F90002DF30206E000C740027
-S32100008964421445F90002B80820302C00671825802C00206E000C528220302C00E5
-S3210000898066F0600642B22C005282700AB0826EF4202E000823C00002B8304EBAEC
-S3210000899CFD4C4A806600008A4EBAFE124A14660000804A92677A7400B4B90000BC
-S321000089B8BD386C702002E580D08241F90000B31047F00C002F2B00042F124EB90D
-S321000089D400004F904A80508F664442390002DF3342390002DF3242390002DF34A2
-S321000089F042B90002B80042790002DD8A33C00002DD88362B00024EBAFED42F03C3
-S32100008A0C2F2B0008206B00104E90B4B90000BD38508F661460165282B4B90000FB
-S32100008A28BD386D90B4B90000BD3867044A14670E2F12487A001C4EB90000470825
-S32100008A44508F4CEE1C0CFFEC20390002B8304E5E4E7551FC4572726F723A204938
-S32100008A606E76616C696420696E737472756374696F6E3A2025730A004E560000F4
-S32100008A7C2F032F0276087400A5672002E58043FA00509082D3C02F092F2E000821
-S32100008A984EB900004F244A804FEF000C660E260242390002DF3151826714601A3D
-S32100008AB452820C82000000086DC60C83000000086608700113C00002DF31200385
-S32100008AD04CEE000CFFF84E5E4E7551FC44300044310044320044330044340044F9
-S32100008AEC35004436004437004E5600002F2E00104EBAFF7A206E000820807008FE
-S32100008B08B0906710206E000C4290A3790002B7FCA340600270004E5E4E7551FCE6
-S32100008B244E5600002F0A2F032F0245F90002DF3176087400A5672002E58043FADD
-S32100008B4000609082D3C02F092F2E00084EB900004F244A804FEF000C660626024F
-S32100008B5C4212600A52820C82000000086DCEA567487A004A2F2E00084EB9000010
-S32100008B784F244A804FEF000C6606AF434212600C0C8300000008660414BC000164
-S32100008B9420034CEE040CFFF44E5E4E754130004131004132004133004134004170
-S32100008BB03500413600413700737000514E5600002F2E00104EBAFF5E206E00083F
-S32100008BCC20807008B0906710206E000CA350A5790002B7FCA340600270004E5EF7
-S32100008BE84E7551FC4E560000206E001010100C0000286636102800030C000029B9
-S32100008C04662C4A280004662643E800012F094EBAFF10226E000822807008B0914C
-S32100008C206710206E000CA550A9790002B7FCA340600270004E5E4E754E5600008D
-S32100008C3C206E001010100C0000286640102800030C0000296636102800040C002A
-S32100008C58002B662C4A280005662643E800012F094EBAFEBA226E00082280700864
-S32100008C74B0916710206E000CA75023C00002B7FCA340600270004E5E4E7551FC8C
-S32100008C904E560000206E001010100C00002D6642102800010C000028663810283C
-S32100008CAC00040C000029662E4A280005662843E800022F094EBAFE62226E00086F
-S32100008CC822807008B0916712206E000C7010A95023C00002B7FCA3406002700056
-S32100008CE44E5E4E754E56FFFC2F0C2F0B2F0A226E000845F900004708101149F92A
-S32100008D000002DF300C000023671618BC00012F09487A00924E92487A00AC4E9205
-S32100008D1C7000607847E90001486EFFFC2F0B4EBAF96810130C000024670C0C0096
-S32100008D38002567060C0000406604A5406002A3402F2EFFFC48790002B80441F19E
-S32100008D5408002F084EB900000B8C22004AB90002B804661218BC00012F0B4879F5
-S32100008D7000003FB44E927000601EC0AE000C671618BC00012F0B487A001C4E925C
-S32100008D8C487A00564E927000600220014CEE1C00FFF04E5E4E7551FC4E6F742088
-S32100008DA876616C696420696D6D65646961746520646174613A2025730A0051FCC7
-S32100008DC44974206D696768742068656C7020696620796F75207573652027232764
-S32100008DE02E0A005156616C7565206973206C6172676572207468616E207370651F
-S32100008DFC6369666965642E0A0051FC514E56FFFC2F0A246E001010120C00002350
-S32100008E186672206E0008A950206E000C203C00020000AF5023C00002B7FC42A759
-S32100008E342F0A4EBAFEB02D40FFFC4A390002DF30671241EEFFFC2F082F0A4EB917
-S32100008E50000056404A806734202EFFFC220042414A81671441F90002DF3323C0A0
-S32100008E6C0002B80010BC0001A340601641F90002DF3233C00002DD8A10BC00018E
-S32100008E88A34060027000246EFFF84E5E4E7551FC4E56FFC848D70C0C760047EE81
-S32100008EA4FFD82F2E001074002F0B4EB900004C9445EEFFFC1013248B0C0000289F
-S32100008EC0508F660841EB0001A3422488700060025280205212300800D1C00C0187
-S32100008EDC002E67064A0166EC603442102052D1C0704C73280001B0816716705786
-S32100008EF8B0816712706CB081670A7077B0816706600000EEA343102800020C0031
-S32100008F14002966025382A3406002528041F3080012100C01002967064A0166EE1E
-S32100008F306004538242104A82660000BE205210100C0000306610122800010C0118
-S32100008F4C007867220C010058671C0C0000246716486EFFF82F2E00104EB900004C
-S32100008F6856404A80508F67000088206E000CAF504878001048790002B8042F1290
-S32100008F844EB900000B8C2D40FFF84AB90002B8044FEF000C675E203CFFFF00009F
-S32100008FA0C0AEFFF866044A836728206E0008223C000100007001A35023C1000245
-S32100008FBCB7FC222EFFF813C00002DF3323C10002B800A3406028206E000873FCA4
-S32100008FD880002083302EFFFA23C10002B7FC33C00002DD8A700113C00002DF32B1
-S32100008FF4A340600270004CEE0C0CFFC84E5E4E754E5600002F0A2F032F02206E50
-S321000090100008226E000C700042A8000876002168000800042089141172000C02DF
-S3210000902C0028664C45E90001A341A340208A4A311800674245F1180014120C02EA
-S321000090480028670C0C02002C67060C020029662252830C020028660C421A52805A
-S32100009064218A3C00528160100C02002966025380421A218A3C0052814A311800A5
-S3210000908066BE4A8057C049C04CEE040CFFF444804E5E4E754E56FFFC2F0B266EE3
-S3210000909C00082F0A246E001020524A106700009A206A00044A1067000090226A97
-S321000090B800084A11660000862F084EBAFA6026807008B093670A206E000C7020B2
-S321000090D4AB506020A567487A00742F2A00044EB900004F244A806658206E000CC4
-S321000090F071FC0400AF50A553486EFFFC23C00002B7FC2F124EBAF58E2F2EFFFC89
-S3210000910C48790002B8042F124EB900000B8C22004AB90002B80467200480FFFFF7
-S3210000912880000C80000100006412700113C00002DF3233C10002DD8AA3406002A9
-S3210000914470004CEE0C00FFF44E5E4E75706300514E56FFEC48D71C04266E000863
-S32100009160286E000C246E001420524A106700017A206A00044A1067000170226AAB
-S3210000917C00084A11670001662F084EBAF99C26807008B093670A206E00107040AC
-S32100009198AD506022A567487AFFB02F2A00044EB900004F244A8066000138206EEB
-S321000091B4001071FC0800AF50A753486EFFFC23C00002B7FC2F124EBAF4C82F2E70
-S321000091D0FFFC48790002B8042F124EB900000B8C4AB90002B8042040670000FE9E
-S321000091EC0480FFFFFF800C8000000100640000EE700113C00002DF3247F90002E8
-S32100009208DD8A32080281000000FF36812F2A00084EBAF85E28807008B0946704DC
-S3210000922491C860182F2A00084EBAF8F628807008B094670000A0207C0000800079
-S321000092402414301332088280700CE1A2828208C1000B54AA0008206A000836812F
-S3210000925C10100C00002E661473280001704CB0816706706CB081666454AA000849
-S32100009278206A000810100C00002A664C732800017031B081673E7032B081670EDF
-S321000092947034B08167187038B081672260363013323C02008081368054AA0008FC
-S321000092B0601E3013323C04008081368054AA0008600E3013323C060080813680D0
-S321000092CC54AA0008206A00084A10670C700113C00002DF3070006006A3406002AB
-S321000092E870004CEE1C04FFEC4E5E4E754E56FFB048D70C3C41EEFFC845F9000250
-S32100009304DF3047F9000047082F2E000824082F084EB900004C9441EEFFF42608AA
-S3210000932041EEFFFC2F0228082F082F034EBAF7C64A80660000E22F022F042F03CA
-S3210000933C4EBAF87E4A80660000D22F022F042F034EBAF89E4A80660000C22F0238
-S321000093582F042F034EBAF8DA4A80660000B22F022F042F034EBAF9224A806600E9
-S3210000937400A22F022F042F034EBAFA8A4A80672E4AAE00106700008C4A39000234
-S32100009390DF3267000082700113C00002DF3371F90002DD8A23C00002B80042397E
-S321000093AC0002DF3260642F022F042F034EBAFADE4A80665641EEFFE82F022A0853
-S321000093C82F084EBAFC384A8067322F052F042F034EBAFCBA4A8066362F052F0489
-S321000093E4486EFFF82F034EBAFD684A8066242F2E0008487A00584E937001148062
-S321000094004240603E2F2E0008487A005E4E9314BC00014240602C20390002B7FCD7
-S3210000941CC0AE000C661414BC00012F390002B808487A004E4E934240600C302E02
-S32100009438FFFEE780322EFFF680814CEE0C3CFFB071C04E5E4E7551FC496E7661AC
-S321000094546C6964206F706572616E643A2025730A0051FC5153796E74617820452E
-S3210000947072726F723A2025730A0051FC496E76616C696420616464726573736996
-S3210000948C6E67206D6F646520666F72202725732720696E737472756374696F6ED5
-S321000094A80A0051FC4E5600007010B0AE000841F90002B830670A7020B0AE000836
-S321000094C4670C6012225032AE000E54906008225022AE000C58904E5E4E7551FC03
-S321000094E04E5600004A390002DF34670E71F90002DD882F004878001061B24A3953
-S321000094FC0002DF3241F90002B800672C4A390002DF33671273F90002DD8A20812E
-S321000095182F0148780020618C602673F90002DD8A2F01487800104EBAFF7C6014E2
-S321000095344A390002DF33670C22102F01487800204EBAFF664E5E4E754E56000049
-S3210000955042A72F2E00082F390002B80C4EBAFD964A390002DF30661A322E000E60
-S3210000956C82803D41000E71C12F00487800104EBAFF304EBAFF604E5E4E7551FCC4
-S321000095884E56FFF048D71C0473390002B38C53816218700113C00002DF30487A9D
-S321000095A400BC4EB900004708588F600000A649F90002DD88487A00CE45F900022D
-S321000095C0B8082F124EB900004F904A80508F660438BC080072006002528147EABB
-S321000095DC0008225341F1180010100C00003A67064A0066E8602042102013D081E5
-S321000095F852802540000C2F004EBAF47624004A390002DF31588F671260442F0978
-S32100009614487A007A4EB900004708508F60342F134EBAF4524A390002DF31588F23
-S321000096306624720CE3A2321484818480700113C00002DF34302E000E38822F008E
-S3210000964C2F2E00084EBAFEFA508F4CEE1C04FFF04E5E4E75496E76616C69642019
-S3210000966873697A65207370656369666965643A20202E57206F72202E4C206F6EC2
-S321000096846C790A0052454D530051FC514E6F7420612076616C6964206F70657248
-S321000096A0616E643A2025730A0051FC514E5600002F0B2F0A2F02342E000E47F9E3
-S321000096BC0002B80845EB00082F124EBAF3B04A390002DF3166327209E3A02F2E1E
-S321000096D8001084802F2E00082F2B00044EBAFC0E4A390002DF306620848071C236
-S321000096F42F00487800104EBAFDB04EBAFDE0600C2F12487A00144EB900004708E2
-S321000097104CEE0C04FFF44E5E4E7551FC4E6F7420612076616C69642064617461A2
-S3210000972C2072656769737465723A2025730A00514E5600002F0B2F0A2F02733955
-S321000097480002B38C4A81670653816718604A700113C00002DF30487AFF004EB96C
-S3210000976400004708600000883D7C80C0000E487A00882F390002B8084EB900002A
-S321000097804F904A8066063D7C81C0000E42A7302E000E2F002F3C00038C7D4EBAA7
-S3210000979CFF10605245F90002DD88487A005447F90002B8082F134EB900004F9005
-S321000097B84A80660434BC08002F2B00084EBAF2B24A390002DF3166223400720C86
-S321000097D4E3A23212848184803482700113C00002DF3448784C404878003D4EBA41
-S321000097F0FD5C4CEE0C04FFF44E5E4E75444956530051FC514E560000733900022C
-S3210000980CB38C0C810000000163100C8100000002671670FFB08167106012487AA3
-S3210000982800184EB90000470870006006A340600270004E5E4E7551FC496E7661DB
-S321000098446C69642073697A653A202E4C206F6E6C790A00514E5600002F0A45F9C2
-S321000098600002B8102F124EBAF2104A390002DF31661C322E000E82803D41000EBE
-S3210000987C71C12F00487800104EBAFC264EBAFC56600C2F12487AFE8A4EB9000017
-S321000098984708246EFFFC4E5E4E7551FC4E5600004EBAFF5A4A80673042A72F395F
-S321000098B40002B80C4EBAF42E23C00002B8004A390002DF306616700113C00002AF
-S321000098D0DF33302E000E2F002F2E00084EBAFF7A4E5E4E754E5600002F0A4EBA8F
-S321000098ECFF184A80674445F90002B8102F124EBAF2284A390002DF3166247201D1
-S3210000990813C10002DF337209E3A0322E000E82803D41000E30012F002F2E000896
-S321000099244EBAFC26600C2F12487A00124EB900004708246EFFFC4E5E4E7551FCD7
-S321000099404E6F7420612076616C6964206164647265737320726567697374657298
-S3210000995C3A2025730A0051FC4E56000010390002B38C0C00000167060C000002EA
-S32100009978660C487A001C4EB900004708600E302E000E2F002F2E00084EBAFBBAFC
-S321000099944E5E4E75496E76616C69642073697A653A202E4220206F6E6C790A00CA
-S321000099B04E56FFF048D71C04342E000E73390002B38C45F9000047085381670698
-S321000099CC53816708600E08C200066008487A00764E92606449F90002B80847EC7D
-S321000099E8000442A72F2E00082F134EBAF9004A390002DF30661647EC00082F133B
-S32100009A0484804EBAF0700C8000000008672A60102F13487AFC784E92423900026A
-S32100009A20DF3060207209E3A0848071C22F00487800104EBAFA784EBAFAA86008D5
-S32100009A3C2F13487AFCDC4E924CEE1C04FFF04E5E4E7551FC496E76616C69642060
-S32100009A5873697A653A202E42206F72202E57206F6E6C790A0051FC514E56000093
-S32100009A742F2E00102F2E00082F390002B8104EBAF8704A390002DF30661A322EE8
-S32100009A90000E82803D41000E71C12F00487800104EBAFA0A4EBAFA3A4E5E4E7530
-S32100009AAC4E5600002F0A45F90002B80C42A72F124EBAF22A4A390002DF30663E31
-S32100009AC80C40FFFF6604424060180C40000762044A40660E2F12487AFBB04EB962
-S32100009AE400004708601C7209E3A0322E000E82803D41000E42A730012F002F2EF5
-S32100009B0000084EBAFF6C246EFFFC4E5E4E7551FC4E5600002F0A45F90002B80C9E
-S32100009B1C2F124EBAF0040C8000000008671C322E000E82803D41000E71C12F0076
-S32100009B38487800104EBAF96E4EBAF99E600C2F12487AFDF64EB900004708246EE3
-S32100009B54FFFC4E5E4E7551FC4E5600002F0B2F0A2F0241F90002B38D222E00081C
-S32100009B70A5426002528243F90002B80847F11C00245343F228001011670E0C00EE
-S32100009B8C002E670C0C00003A66DE60041080605073290001704CB081671470551E
-S32100009BA8B0816718706CB08167087075B081670C60164210205342302800602889
-S32100009BC410BC0001205342302800601C700113C00002DF302F0A487A001C4EB9B6
-S32100009BE000004708508F2053423028004CEE0C04FFF44E5E4E7551FC4E6F7420DE
-S32100009BFC612076616C6964206174747269627574652025730A0051FC4E56FFE828
-S32100009C1848D71C1C342E000E45F90002DD887800700113C00002DF34487A031A0E
-S32100009C3449F90002B8082F144EB900004F904A80508F660408D200007339000246
-S32100009C50B38C47F9000047084A8167065381670E600E487A02F04E93588F600059
-S32100009C6C02D4600408D20003A3674EBAFEE441EC00042F1026084EBAEDF40C80B8
-S32100009C8800000008508F663220432F104EBAEE8E0C8000000008588F67103200F1
-S32100009CA47009E1A18282704082803401601620432F10487A02BC4E93508F600000
-S32100009CC002807209E3A0848071390002B38D3212EF8082803481A5674EBAFE8214
-S32100009CDC41EC00082F1026084EBAED920C8000000008508F662E20432F104EBA8C
-S32100009CF8EE2C0C8000000008588F670C36123200828370088280601820432F102F
-S32100009D14487A025E4E93508F600002223200301280813200348171390002B38D7F
-S32100009D30ED808280348141EC000C487A02542F1026084EB900004F904A80508FA0
-S32100009D4C6714487A024420432F104EB900004F904A80508F662608D2000143ECAB
-S32100009D680010A3442051A340260912280001D1FC000000010C010026670000C0FC
-S32100009D84600000B6487A020E20432F104EB900004F904A80508F6714487A01FE68
-S32100009DA020432F104EB900004F904A80508F66283012008000000600348043EC37
-S32100009DBC0010A34420512609A34012280001D1FC000000010C010026676C606438
-S32100009DD842A72F2E000820432F104EBAF5104A390002DF304FEF000C661E43ECDB
-S32100009DF4001084802051A340260912280001D1FC000000010C0100266734602C53
-S32100009E1020432F10487AF87A4E9342390002DF30508F6000011C43EC0010528080
-S32100009E2C2051260912300800D1C00C01002667064A0166E66008421008EA0005B1
-S32100009E4800014A84673E42A72F2E000820432F104EBAF49A4A390002DF304FEF2C
-S32100009E64000C660E49EC001484802014670000BC607220432F10487AF8144E9395
-S32100009E8042390002DF30508F600000B620432F104EBAEBE60C8000000008588F49
-S32100009E9C663820432F104EBAEC800C8000000008588F6718720CE3A032128081B0
-S32100009EB808C0000F348049EC001420146768602020432F10487AF7C24E93508F54
-S32100009ED4606A720CE3A032128280348149EC0014201467462F004EBAEB8C0C8042
-S32100009EF000000008588F662C2F144EBAEC280C8000000008588F6710720CE3A07D
-S32100009F0C3212808108C0000F348060162F14487AF7744E93508F601C720CE3A040
-S32100009F2832128280348171C22F00487800104EBAF5744EBAF5A4508F4CEE1C1C87
-S32100009F44FFE84E5E4E7551FC4D5341434C0051FC496E76616C69642073697A65F9
-S32100009F603A202E57206F72202E4C206F6E6C790A0051FC514E6F74206120766132
-S32100009F7C6C69642072656769737465723A2025730A0000003C3C00513C3C310097
-S32100009F983E3E00513E3E31004E56FFEC48D71C0C342E000E45F90002DD8849F900
-S32100009FB400004F90700113C00002DF34487A016A47F90002B8082F134E944A8036
-S32100009FD0660408D2000073390002B38C4A816706538167106010487AFF6C4EB917
-S32100009FEC000047086000012E600408D20003A3674EBAFB5E41EB00042F1026082C
-S3210000A0084EBAEA6E0C8000000008663220432F104EBAEB0A0C8000000008671000
-S3210000A02432007009E1A18282704082803401601820432F10487AFF3A4EB90000E6
-S3210000A0404708600000DC7209E3A0848071390002B38D3212EF8082803481A5670F
-S3210000A05C4EBAFAFE41EB00082F1026084EBAEA0E0C8000000008662E20432F1077
-S3210000A0784EBAEAAA0C8000000008670C32008282700882803401601420432F1028
-S3210000A094487AFEDE4EB90000470860000080848071390002B38D3212ED80828033
-S3210000A0B0348147EB000C20136756487AFED42F004E944A80670C487AFECC2F13FB
-S3210000A0CC4E944A80660C3012323C0200808134806032487AFEB82F134E944A80F5
-S3210000A0E8670C487AFEB02F134E944A80660C3012323C060080813480600E2F13F8
-S3210000A104487AF58A4EB900004708601071C22F00487800104EBAF3924EBAF3C2B6
-S3210000A1204CEE1C0CFFEC4E5E4E7551FC4D5341430051FC514E5600002F0A45F937
-S3210000A13C0002B80C2F390002B50448790002B8042F124EB900000B8C4AB90002B5
-S3210000A158B804204066102F12487900003FB44EB900004708603673390002B38C85
-S3210000A1744A81670A538167125381671A6022487AFDD04EB90000470860162F08D7
-S3210000A190487800104EBAF316600A2F08487800204EBAF30A246EFFFC4E5E4E754A
-S3210000A1AC4E5600002F0A2F02342E000E45F90002B8102F124EBAE8B60C80000098
-S3210000A1C8000866362F124EBAE9540C8000000008671A320082827008828071C154
-S3210000A1E42F00487800104EBAF2C04EBAF2F060202F12487AFD7C4EB90000470864
-S3210000A2006012848071C22F00487800104EBAF29E4EBAF2CE4CEE0404FFF84E5E4F
-S3210000A21C4E7551FC4E56FFE048D71C7C242E00084244424347F90002B8082A3C09
-S3210000A2380000A40845EB00042F052F124EB900004F904A80660E487840C02F029A
-S3210000A2544EBAFF56600001A42C3C0000A40C2F062F124EB900004F904A80660ED4
-S3210000A270487842C02F024EBAF5E06000018249EB00082F052F144EB900004F9080
-S3210000A28C4A80661A700113C00002DF33487846C02F3C000200014EBAF2A86000D8
-S3210000A2A801562F062F144EB900004F904A80661A700113C00002DF33487844C079
-S3210000A2C42F3C000200014EBAF2806000012E47F90002B38C10130C000002661CCD
-S3210000A2E0A3672F3C00038C7F2F124EBAF0082A004A390002DF30671E60000104F0
-S3210000A2FC42A72F3C00038C7F2F124EBAEFEC2A004A390002DF30660000EA203953
-S3210000A3180002B7FC721FC2804A416706243C0001807F323C0420C2804A4167027B
-S3210000A334743F223C00038840C2806702741F45F90002DF324A12670A363900025E
-S3210000A350DD8A7801421242A72F022F144EBAEF9622004A390002DF30660000941D
-S3210000A36C71C1E6807407C282E781751382804A82670A5382670A5382670A600C51
-S3210000A3887001601C7003601870026014700113C00002DF30487A00724EB9000065
-S3210000A3A44708605616807500700CE1A2ED81848184853D42000E4A44672E4A1200
-S3210000A3C0672073C37010E1A171F90002DD8A828023C10002B800700113C0000203
-S3210000A3DCDF334212600A14BC000133C30002DD8A71EE000E2F00487800104EBAEB
-S3210000A3F8F0B44EBAF0E44CEE1C7CFFE04E5E4E7553520051434352005768617441
-S3210000A4142073697A653F0A004E56FFEC48D70C1C47F90002B80808EE0000000F25
-S3210000A43045EB00042F124EBAE64026005180588F66302F124EBAE6DE26005180EF
-S3210000A44C588F671208C3000378007400B4B90000BD346C4E601C2F12487A0092AB
-S3210000A4684EB900004708508F607A78007400B4B90000BD346C302002E580D08204
-S3210000A48441F90000BF7445F00A002F0A2F2B00084EB900004F904A80508F660476
-S3210000A4A079EA00085282B4B90000BD346DD04A8466122F2B0008487A005C4EB9F3
-S3210000A4BC00004708508F6028700CE1A38883700113C00002DF3271EE000E33C402
-S3210000A4D80002DD8A2F00487800104EBAEFC84EBAEFF8508F4CEE0C1CFFEC4E5E74
-S3210000A4F44E7551FC4E6F742061207661696C642072656769737465723A202573DD
-S3210000A5100A0051FC496E76616C696420636F6E74726F6C20726567697374657265
-S3210000A52C3A2025730A0051FC4E56FFDC48D73C7C246E00082C3C00008A784244E4
-S3210000A54849FAE5DA2F0A26464E935180588F66162F0A4E945180588F660C42B9F5
-S3210000A5640002B8044240600000F047D274004A13670000E42F0B2A464E9526005D
-S3210000A5805180588F660E2F0B4E9426005180588F675250837001E7A05482888031
-S3210000A59C733228004A81670000AC702DB081670A702FB081677660000082528250
-S3210000A5B841F228002F0826464E932A005180588F663C41F228002F084E942A0080
-S3210000A5D45180588F670A50855283B6856E3660284232280241F228002F08487A39
-S3210000A5F000784EB900004708700113C00002DF304240508F60565283B6856E0C85
-S3210000A60C7001E7A088805283B6856FF45482733228004A81672E702FB081660E72
-S3210000A628528247F228004A136600FF4660242F0A487A004A4EB900004708700143
-S3210000A64413C00002DF304240508F600C47F228004A136600FF2030044CEE3C7CDA
-S3210000A660FFDC71C04E5E4E75496E76616C696420726567697374657220656E74AA
-S3210000A67C72793A2025730A00496E76616C6964206C69737420666F726D61743A4F
-S3210000A6982025730A0051FC514E5600002F0B2F0A2F02342E000E4EBAF1544A8071
-S3210000A6B4677C45F90002B80447F90002B808A3522F2B00044EBAFE6A33C00002EB
-S3210000A6D0DD884A92671E4A390002DF306654700113C00002DF3442A72F022F2E84
-S3210000A6EC00084EBAF380603EA3522F2B00084EBAFE3833C00002DD88700113C0F8
-S3210000A7080002DF344A92660C487A002A4EB90000470860164A390002DF30660E0C
-S3210000A72408C2000A2F022F2E00084EBAEE1C4CEE0C04FFF44E5E4E754E6F207698
-S3210000A740616C6964207265676973746572206C6973742077617320656E74657253
-S3210000A75C65640A004E56FFF048D70C0C4EBAF09A4A80675E47F90002B80845EBEB
-S3210000A77800042F124EBAE2FA24005180673C45EB00082F124EBAE2EA0C80000025
-S3210000A7940008671C32007009362E000EE1A18283828271C12F00487800104EBA37
-S3210000A7B0ECFC601A2F12487AEF644EB900004708600C2F12487AEF564EB90000BE
-S3210000A7CC47084CEE0C0CFFF04E5E4E754E56FFF048D70C0C4EBAF0224A80670057
-S3210000A7E8009047F90002B80845EB00082F124EBAE28024005180676C45EB0004DE
-S3210000A8042F124EBAE2700C80000000086720362E000E32007009E1A18283702048
-S3210000A8208280828271C12F00487800104EBAEC7E60462F3C0FFFFFF02F124EBA16
-S3210000A83CE4AC73C04A390002DF3066300C8100000008660272007009E1A1302E45
-S3210000A858000E8280828271C12F00487800104EBAEC44600C2F12487AEEAC4EB951
-S3210000A874000047084CEE0C0CFFF04E5E4E7551FC4E560000700333C00002DD8805
-S3210000A890700113C00002DF34302E000E2F002F2E00084EBAECA84E5E4E7551FCF5
-S3210000A8AC4E5600002F0B2F0A2F02342E000E4EBAEF484A806700009A45F9000288
-S3210000A8C8B80847EA00082F134EBAE1A651806748487A008E2F124EB900004F90AD
-S3210000A8E44A806710487A00822F124EB900004F904A80660C203C00038C7D2D4095
-S3210000A9000008600A203C00038C7F2D40000808C20007A3672F022F2E00084EBA6B
-S3210000A91CED90603C588A2F124EBAE1520C8000000008671E323C01808282340062
-S3210000A9387009E1A242A782822F012F3C0001807C4EBAF126600E2F132F12487AAA
-S3210000A954001C4EB9000047084CEE0C04FFF44E5E4E7551FC414E44004F520051B1
-S3210000A970496E76616C6964206F706572616E64733A2025732C25730A0051FC5124
-S3210000A98C4E5600002F0A2F032F024EBAEE6C4A8067544878FF0045F90002B808C3
-S3210000A9A82F2A00044EBAE33A34004A390002DF306638508A2F124EBAE0B84A3967
-S3210000A9C40002DF31661C32007009362E000EE1A18283828271C12F004878001004
-S3210000A9E04EBAEACA600C2F12487AED324EB9000047084CEE040CFFF44E5E4E7509
-S3210000A9FC4E56FFFC2F0A2F032F02342E000E486EFFFC45F90002B80C2F124EB991
-S3210000AA18000056404A806700008420390002B830222EFFFC5480928026010483AF
-S3210000AA34FFFFFF800C830000010064160281000000FF848171C22F0048780010C0
-S3210000AA504EBAEA5A605A7680D6810C8300007F80651020010480FFFF80000C80DF
-S3210000AA6C00007F80642602810000FFFF33C10002DD8A700113C00002DF3271C2D7
-S3210000AA882F00487800104EBAEA1C4EBAEA4C6018487A00224EB900004708600C43
-S3210000AAA42F12487A00404EB9000047084CEE040CFFF04E5E4E7551FC4572726F6A
-S3210000AAC0723A20646973706C6163656D656E74206C617267657220746861742021
-S3210000AADC31362D626974730A0051FC514E6F7420612076616C6964206C616265D4
-S3210000AAF86C3A2025730A00514E5600002F0A4EBAECFC4A80674245F90002B80843
-S3210000AB142F2A00044EBADF5E4A390002DF31661E7209E3A0322E000E82803D4178
-S3210000AB30000E42A730012F002F2E00084EBAEF32600E2F2A0008487AEBD44EB9C7
-S3210000AB4C00004708246EFFFC4E5E4E754E5600004EBAECA64A80673A4878FFF044
-S3210000AB682F390002B80C4EBAE1784A390002DF3066240C40000866024240720965
-S3210000AB84E3A0322E000E82803D41000E42A730012F002F2E00084EBAEED44E5E0C
-S3210000ABA04E7551FC4E5600002F0A4EBAEC584A80674445F90002B8102F124EBA94
-S3210000ABBCDEBC4A390002DF316624720113C10002DF337209E3A0322E000E8280F5
-S3210000ABD83D41000E30012F002F2E00084EBAE966600C2F12487AEB2E4EB9000024
-S3210000ABF44708246EFFFC4E5E4E7551FC4E5600002F0A4EBAEBFC4A80674445F928
-S3210000AC100002B8102F124EBADF0C4A390002DF316624720113C10002DF3372092F
-S3210000AC2CE3A0322E000E82803D41000E30012F002F2E00084EBAE90A600C2F121A
-S3210000AC48487AECF64EB900004708246EFFFC4E5E4E7551FC4E5600004878FFF054
-S3210000AC642F390002B80C4EBAE07C4A390002DF306616322E000E82803D41000E30
-S3210000AC8071C12F00487800104EBAE8224E5E4E754E5600002F0A73390002B38C36
-S3210000AC9C4A81670C5381671E5381674E600000A2700113C00002DF30487AE9AACA
-S3210000ACB84EB9000047086000008C3D7CC0C0000E487A008A2F390002B8084EB974
-S3210000ACD400004F904A8066063D7CC1C0000EA367302E000E2F002F3C00038C7DE5
-S3210000ACF04EBAE9BA6056487A005C45F90002B8082F124EB900004F904A80660A62
-S3210000AD0C303C080033C00002DD882F2A00084EBADD5C4A390002DF316626720C16
-S3210000AD28E3A032390002DD88828033C10002DD88700113C00002DF3448784C00F2
-S3210000AD444878003D4EBAE802246EFFFC4E5E4E754D554C530051FC514E5600007F
-S3210000AD602F0A4EBAEAA04A80673845F90002B80C2F124EBADD044A390002DF31DA
-S3210000AD7C6618322E000E82803D41000E71C12F00487800104EBAE71A600C2F1254
-S3210000AD98487AE9824EB900004708246EFFFC4E5E4E7551FC4E5600002F02342E96
-S3210000ADB4000E73390002B38C4A81670A538167225381672C6030700113C00002AC
-S3210000ADD0DF30487AE88C4EB9000047084A390002DF30671E602608C200074A39D3
-S3210000ADEC0002DF30671060180082000000C04A390002DF30660A2F022F2E000869
-S3210000AE084EBAFF52242EFFFC4E5E4E754E560000322E000E71390002B38C028193
-S3210000AE240000FF00ED8082802F012F2E00084EBAE7184E5E4E7551FC4E56FFECB7
-S3210000AE4048D71C0C45F90002B80849EA0004205447F900004F9010100C00002390
-S3210000AE5C6666487A00D42F124E934A806606343C08006026487A00CA2F124E936E
-S3210000AE784A806606343C08406014487A00C0343C08802F124E934A806604343C16
-S3210000AE9408C04878FF002F144EBADE4A33C00002DD884A390002DF30667A700163
-S3210000AEB013C00002DF3442A72F024878003D4EBAEBB06064263C0000AF342F03A3
-S3210000AECC2F124E934A806606343C01006026487A00602F124E934A806606343C2B
-S3210000AEE801406014487A0056343C01802F124E934A806604343C01C0203C0001A6
-S3210000AF04807D2D4000082F032F124E934A80660A203C00038C7D2D4000082F021D
-S3210000AF202F2E00084EBAFBDA4CEE1C0CFFEC4E5E4E7551FC425453540051FC51E9
-S3210000AF3C424348470051FC51425345540051FC514E5600002F0A45F90002B80C94
-S3210000AF582F124EBADBC84A390002DF31661C322E000E82803D41000E71C12F0077
-S3210000AF74487800104EBAE5324EBAE562600C2F12487AE9BA4EB900004708246E83
-S3210000AF90FFFC4E5E4E7551FC4E56000042A72F390002B8104EBADD4222004A395D
-S3210000AFAC0002DF3066360480FFFF80000C8000010000641E700113C00002DF326E
-S3210000AFC8302E000E33C10002DD8A2F002F2E00084EBAFF72600A487AFADC4EB988
-S3210000AFE4000047084E5E4E754E5600004EBAE8124A80673042A72F390002B80C6F
-S3210000B0004EBADCE623C00002B8004A390002DF306616700113C00002DF33302E01
-S3210000B01C000E2F002F2E00084EBAE8324E5E4E754E5600002F3CFFFF00002F396A
-S3210000B0380002B80C4EBADCAA33C00002DD8A4A390002DF30661A700113C00002EC
-S3210000B054DF3271EE000E2F00487800104EBAE44A4EBAE47A4E5E4E754E560000AE
-S3210000B07071EE000E2F00487800104EBAE4304E5E4E7551FC4E5600002F2E000C6D
-S3210000B08C487A00122F2E00084EB9000046D84E5E4E7551FC252D3130730051FC15
-S3210000B0A84E560000202E0008D1B90002B3904E5E4E7551FC4E56FFF42F0A2F0200
-S3210000B0C4242E000C222E001045EEFFF442120C8100000008670E7010B081671EF2
-S3210000B0E07020B081672E603E223C0000B13C71822F002F012F0A4EB9000046D85F
-S3210000B0FC6028223C0000B14471C22F002F012F0A4EB9000046D86012223C000097
-S3210000B118B14C2F022F012F0A4EB9000046D82F0A2F2E00084EB900004D204CEE0D
-S3210000B1340404FFEC4E5E4E753078253032580051307825303458005130782530E8
-S3210000B150385800514E56FF8448D7047C262E000C45F90000470824037A00486EF2
-S3210000B16CFF9C7C002F034EB9000055E84A80508F6712486EFF9C2F032F03487A9B
-S3210000B18800904E924FEF001076002F02487A00964E92780A508FB4AE0010642CA5
-S3210000B1A4487800102F024EB90000EC78508F2F00487A007E4E9254825A84528366
-S3210000B1C00C8300000004508F6C06B4AE001065D44A8566262604701FB0846F1017
-S3210000B1DC487A005E4E925283588F701FB0836EF02F2E0008487A004C4E92A3453A
-S3210000B1F8508F487A00454E92B4AE0010588F64044A8667844CEE047CFF844E5E0A
-S3210000B2144E7551FC253038583A0A253038583A2025733A0A0051FC512530386C2D
-S3210000B230583A2000253034582000000020002573000A00514E56FFE848D71C1C54
-S3210000B24C45F90002B39449EAFFFC41EA000428AE00084878001026082F2E0008BB
-S3210000B2684EB90000EC7820433800429242107400508F2002E580D08241FA008EA3
-S3210000B28447F00C003013C084B06B00026628A3522F2B00042F034EBAFDE8A567B5
-S3210000B2A04EBAFE0630042F002F02206B000C4E904FEF00144A926634600E52826D
-S3210000B2BC0C82000000816DB64A926624487A0A5A2F034EBAFDB44878001071C4C2
-S3210000B2D82F002F034EBAFDDE202E0008548028804FEF00144AAE000C67102F142E
-S3210000B2F42F2E00082F034EBAFE584FEF000C20144CEE1C1CFFE84E5E4E7551FCB0
-S3210000B310FFF800800000BD3C000000010000DC880000AFECFFF802800000BE4430
-S3210000B32C000000010000DC880000AFECFFF804800000BE4C000000010000DC8815
-S3210000B3480000AFECFFF806800000BE54000000010000DC880000AFECFFF80A8038
-S3210000B3640000BE5C000000010000DC880000AFECFFF80C800000BE640000000107
-S3210000B3800000DC88000098A4FFC008000000BE6C0000003D0000DD6C0000AE3CAA
-S3210000B39CFFC008400000BE740000003D0000DD6C0000AE3CFFC008C00000BE7C25
-S3210000B3B80000003D0000DD6C0000AE3CFFC008800000BE840000003D0000DD6CF4
-S3210000B3D40000AE3CF1C001000000BE6C00038C7D0000DC340000AE3CF1C0014099
-S3210000B3F00000BE740001807D0000DC340000AE3CF1C001C00000BE7C0001807D67
-S3210000B40C0000DC340000AE3CF1C001800000BE840001807D0000DC340000AE3CB8
-S3210000B428F00010000000BE8C00038C7F0000DB080000A220F1C020400000BE0C2A
-S3210000B44400038C7F0000D6600000A220F00020000000BE8C00038C7F0000DB0895
-S3210000B4600000A220F1C030400000BE0C00038C7F0000D6600000A220F0003000F7
-S3210000B47C0000BE8C00038C7F0000DB080000A220FFFF4AFC0000BD2C0000000084
-S3210000B4980000D86C0000B06CFFFF4E710000BD40000000000000D86C0000B06C18
-S3210000B4B4FFFF4AC80000BE94000000000000D86C0000B06CFFFF4BCC0000BE14CD
-S3210000B4D0000000000000D86C0000B06CFFFF4E730000BD44000000000000D86CF6
-S3210000B4EC0000B06CFFFF4E750000BD48000000000000D86C0000B06CFFFF4E723E
-S3210000B5080000BE9C000000000000D7A80000B02CFFFF4E7A0000BE1C00000000CC
-S3210000B5240000CE540000A41CFFFF4E7B0000BE1C000000000000CE540000A41CA0
-S3210000B540FFF848800000BE24000000000000D9C000000000FFF848C00000BE2CC6
-S3210000B55C000000000000D9C000000000FFF849C00000BEA4000000000000D9C039
-S3210000B57800000000000048000000BD4C000000000000D9C00000ADAC000049C065
-S3210000B5940000BEAC000000000000D9C00000AD5CFFF848400000BEB40000000098
-S3210000B5B00000D9C00000AD5CFFF84E580000BEBC000000000000D8200000AF4CCD
-S3210000B5CCFFF84E500000BEC4000000000000D8740000AF98FFF840C00000BE8C72
-S3210000B5E8000000010000DAC40000A220FFF842C00000BE8C000000010000DA3092
-S3210000B6040000A220FFF840800000BECC000000010000D8E40000AD5CFFF84480A0
-S3210000B6200000BD50000000010000D8E40000AD5CFFF846800000BD540000000166
-S3210000B63C0000D8E40000AD5CFFF04E400000BED4000000000000D7EC0000AC5C4D
-S3210000B658FFC046C00000BE8C000200010000DA780000A220FFC042000000BD5894
-S3210000B6740001807D0000D8E40000AE14FFC042400000BD580001807D0000D8E428
-S3210000B6900000AE14FFC042800000BD580001807D0000D8E40000AE14FFC044C001
-S3210000B6AC0000BE8C000200010000D9E00000A220FFC048400000BD5C00018C6463
-S3210000B6C80000D8400000954CFFC04A000000BD6000038C7F0000D8E40000AE14B5
-S3210000B6E4FFC04A400000BD6000038C7F0000D8E40000AE14FFC04A800000BD60AC
-S3210000B70000038C7F0000D8E40000AE14FFC04C000000BEDC0000007D0000CC9815
-S3210000B71C0000AC9000004C000000BEE400038C7D0000CC980000AC90FFC04EC068
-S3210000B7380000BD6400018C640000D8400000954CFFC04E800000BD6800018C6441
-S3210000B7540000D8400000954CFFC048C00000BE34000000240000D4B00000A6A033
-S3210000B770FFC04CC00000BE34000000240000D4B00000A6A0F1C041C00000BD6C31
-S3210000B78C00018C640000D0640000AC00FFC050C00000BEEC000000010000D84038
-S3210000B7A80000954CFFC051C00000BEEF000000010000D8400000954CFFC052C056
-S3210000B7C40000BD70000000010000D8400000954CFFC053C00000BD740000000138
-S3210000B7E00000D8400000954CFFC054C00000BD78000000010000D8400000954C4C
-S3210000B7FCFFC055C00000BD7C000000010000D8400000954CFFC056C00000BD8012
-S3210000B818000000010000D8400000954CFFC057C00000BD84000000010000D840E4
-S3210000B8340000954CFFC058C00000BD88000000010000D8400000954CFFC059C023
-S3210000B8500000BD8C000000010000D8400000954CFFC05AC00000BD90000000016C
-S3210000B86C0000D8400000954CFFC05BC00000BD94000000010000D8400000954C9C
-S3210000B888FFC05CC00000BD98000000010000D8400000954CFFC05DC00000BD9C3F
-S3210000B8A4000000010000D8400000954CFFC05EC00000BDA0000000010000D84035
-S3210000B8C00000954CFFC05FC00000BDA4000000010000D8400000954CF1C05080CB
-S3210000B8DC0000BEF40001807F0000D11C0000AB58F1C051800000BEFC0001807F6C
-S3210000B8F80000D11C0000AB58FF0060000000BDA8000000000000D6C80000A9FC37
-S3210000B914FF0061000000BDAC000000000000D6C80000A9FCFF0062000000BDB037
-S3210000B930000000000000D6C80000A9FCFF0063000000BDB4000000000000D6C841
-S3210000B94C0000A9FCFF0064000000BDB8000000000000D6C80000A9FCFF006500B5
-S3210000B9680000BDBC000000000000D6C80000A9FCFF0066000000BDC0000000001F
-S3210000B9840000D6C80000A9FCFF0067000000BDC4000000000000D6C80000A9FC34
-S3210000B9A0FF0068000000BDC8000000000000D6C80000A9FCFF0069000000BDCC65
-S3210000B9BC000000000000D6C80000A9FCFF006A000000BDD0000000000000D6C892
-S3210000B9D80000A9FCFF006B000000BDD4000000000000D6C80000A9FCFF006C00FF
-S3210000B9F40000BDD8000000000000D6C80000A9FCFF006D000000BDDC0000000054
-S3210000BA100000D6C80000A9FCFF006E000000BDE0000000000000D6C80000A9FC84
-S3210000BA2CFF006F000000BDE4000000000000D6C80000A9FCF10070000000BE3C4B
-S3210000BA48000000000000D7500000A98CF1C080800000BF0400038C7D0000D00030
-S3210000BA640000A8ACF1C081800000BF040001807C0000D0B80000A8ACF1F8918024
-S3210000BA800000BF08000000000000D9280000A760F1C090800000BDE800038C7F61
-S3210000BA9C0000D0000000A8ACF1C091800000BDE80001807C0000D0B80000A8AC24
-S3210000BAB8F1C091C00000BF1000038C7F0000D19C0000AC00F1C0B0800000BDECEA
-S3210000BAD400038C7F0000D0000000ABA4F1C0B1C00000BF1800038C7F0000D19CAF
-S3210000BAF0000098E4F1C0B1800000BDF00001807D0000D0B80000AB00F1C0C0C0C7
-S3210000BB0C0000BF2000038C7D0000CDAC00000000F1C0C1C00000BF2800038C7D8E
-S3210000BB280000CDAC00000000F1C0C0800000BDF400038C7D0000D0000000A8ACB0
-S3210000BB44F1C0C1800000BDF40001807C0000D0B80000A8ACF1F0D1800000BF3042
-S3210000BB60000000000000D9280000A760F1C0D1C00000BF3800038C7F0000D19C07
-S3210000BB7C0000AC00F1C0D0800000BDF800038C7F0000D0000000A8ACF1C0D18011
-S3210000BB980000BDF80001807C0000CC340000A8AC0000FFFF0000BF400000000088
-S3210000BBB40000D8E40000A134F1F8E0800000BDFC000000000000CF8C0000A7D802
-S3210000BBD0F1F8E0A00000BDFC000000000000CF340000A7D8F1F8E1800000BE00A7
-S3210000BBEC000000000000CF8C0000A7D8F1F8E1A00000BE00000000000000CF3432
-S3210000BC080000A7D8F1F8E0880000BE04000000000000CF8C0000A7D8F1F8E0A83D
-S3210000BC240000BE04000000000000CF340000A7D8F1F8E1880000BE0800000000A2
-S3210000BC400000CF8C0000A7D8F1F8E1A80000BE08000000000000CF340000A7D84E
-S3210000BC5CFFC0FB000000BF440001807C0000D8E40000AE14FFC0FB400000BF4491
-S3210000BC780001807C0000D8E40000AE14FFC0FB800000BF440001807C0000D8E439
-S3210000BC940000AE14FFC0FBC00000BF4C000000240000CE000000A884FFC04C40DE
-S3210000BCB00000BF540000003D0000C9980000973CFFC04C400000BF5C0000003D4B
-S3210000BCCC0000C9980000973CF1C081C00000BF5400038C7D0000CABC0000973CB8
-S3210000BCE8F1C080C00000BF5C00038C7D0000CABC0000973CFFC04C400000BF645B
-S3210000BD040000003D0000C99800009588FFC04C400000BF6C0000003D0000C9984E
-S3210000BD200000958844432E570051FC51494C4C4547414C0000000020000000819F
-S3210000BD3C4F5249004E4F50005254450052545300455854004E4547004E4F54006E
-S3210000BD58434C520050454100545354004A4D50004A5352004C454100534849008B
-S3210000BD74534C53005343430053435300534E450053455100535643005356530042
-S3210000BD9053504C00534D490053474500534C540053475400534C45004252410040
-S3210000BDAC4253520042484900424C53004243430042435300424E4500424551008D
-S3210000BDC8425643004256530042504C00424D490042474500424C54004247540050
-S3210000BDE4424C450053554200434D5000454F5200414E4400414444004153520038
-S3210000BE0041534C004C5352004C534C004D4F5645410051FC50554C53450051FCC9
-S3210000BE1C4D4F5645430051FC4558542E570051FC4558542E4C0051FC4D4F56458B
-S3210000BE384D0051FC4D4F5645510051FC414E44490051FC51535542490051FC51EE
-S3210000BE54414444490051FC51454F52490051FC51434D50490051FC51425453544B
-S3210000BE700051FC51424348470051FC51425345540051FC5142434C520051FC51D3
-S3210000BE8C4D4F56450051FC5148414C540051FC5153544F500051FC5145585442E1
-S3210000BEA82E4C0051455854420051FC51535741500051FC51554E4C4B0051FC512B
-S3210000BEC44C494E4B0051FC514E4547580051FC51545241500051FC514D554C53AA
-S3210000BEE00051FC514D554C550000000053540053460051FC414444510051FC511A
-S3210000BEFC53554251000000004F520051535542580051FC51535542410051FC514E
-S3210000BF18434D50410051FC514D554C552E5700514D554C532E57005141444458F7
-S3210000BF340051FC5141444441000000004443005157444441544100515744454243
-S3210000BF5055470051444956530051FC51444956550051FC5152454D530051FC5163
-S3210000BF6C52454D550051FC5143414352000000000002415349440000000000039D
-S3210000BF884143523000000000000441435231000000000005414352320000000079
-S3210000BFA40006414352330000000000074D4D55424152000000084F544845525FB8
-S3210000BFC041370800564252000000000008014D4143535200000008044D41534B3E
-S3210000BFDC00000000080541434330000000000806414343000000000008064143D8
-S3210000BFF8434558543031080741434345585432330808414343310000000008094D
-S3210000C0144143433200000000080A4143433300000000080B53520000000000004D
-S3210000C030080E5043000000000000080F524F4D42415230000C00524F4D4241526C
-S3210000C04C00000C00524F4D42415231000C0152414D42415230000C0452414D42AE
-S3210000C068415200000C0452414D42415231000C054D504352000000000C0C454449
-S3210000C08452414D4241520C0D4D424152320000000C0E5345434D424152000C0E47
-S3210000C0A04D424152000000000C0F4D424152310000000C0F4E56FFFC2F042F03CF
-S3210000C0BC2F02242E000C262E0010282E001470FEB083671A70FDB083671CA340DD
-S3210000C0D822034A836F06E380538166FA2202C2806708203C0000C1446006203C50
-S3210000C0F40000C1462F002F2E00084EB900004D20AF40A541508F6004E3805281CD
-S3210000C110B2846DF8C4805584E8A22F02487A002A486EFFFD4EB9000046D8486E21
-S3210000C12CFFFD2F2E00084EB900004D204CEE001CFFF04E5E4E7551FC4100440096
-S3210000C148256400514E5600002F02222E000C202E0010A742A348B1C06C08E3824E
-S3210000C1645288B1C06DF8C2825380E0A15581670653816732605E487800102F39CB
-S3210000C1800002B3904EB90000EC78A56773404EBAEF184FEF000C487800102F01D5
-S3210000C19C2F2E00084EBAEF1A4FEF000C602E487800202F390002B3904EB900009F
-S3210000C1B8EC78A96722004EBAEEE84FEF000C487800202F012F2E00084EBAEEEA52
-S3210000C1D44FEF000C242EFFFC4E5E4E754E56FFF048D7003C262E000C2A2E00108D
-S3210000C1F0282E0014A34022054A856F06E380538166FA2203C280EAA1A740A34220
-S3210000C20C6004E3805282B4846DF8C68024035384E8A2203C0000C2B04A81670604
-S3210000C228203C0000C2B32F002F2E00084EB900004D20508F4A82670E538267209F
-S3210000C24453826732538267446056203C0000C2B62F002F2E00084EB900004D2058
-S3210000C260508F6040203C0000C2B92F002F2E00084EB900004D20508F602A203C99
-S3210000C27C0000C2BC2F002F2E00084EB900004D20508F6014203C0000C2BF2F00BB
-S3210000C2982F2E00084EB900004D20508F4CEE003CFFF04E5E4E7551FC2E57002EF8
-S3210000C2B44C002A31002A32002A34002A380051FC4E56FF7048D71C7C242E000834
-S3210000C2D02C2E001045F90002B3907600AF41A540B0866C08E3815280B0866DF899
-S3210000C2EC2A2E000C2006CA81AF415580E0A5A54028065784B0846C0CE381528041
-S3210000C30828065784B0846DF447F900004D2049FAFD9C282E000C5B86C881ECA4D0
-S3210000C32470070C85000000076200061A307B5A064EFB880200100026003C0062B4
-S3210000C340008800AE010002ACA5674878FFFD2F042F024E94A3434FEF0010600054
-S3210000C35C05ECA5674878FFFE2F042F024E94A5434FEF0010600005D6487A05EE99
-S3210000C3782F024E93A5674878FFFE2F042F024E94487A05DC2F024E93A9434FEFA3
-S3210000C3940020600005B0487A05C82F024E93A5674878FFFE2F042F024E94487AE0
-S3210000C3B005B82F024E9376084FEF00206000058A487A05A92F024E93A567487883
-S3210000C3CCFFFE2F042F024E94487A05902F024E9376104FEF002060000564487836
-S3210000C3E800102F124EB90000EC78A56773404EBAECB02F01487AFD4A486EFFF432
-S3210000C4044EB9000046D8486EFFF42F024E93487A05502F024E93A5674878FFFE44
-S3210000C4202F042F024E94487A053E2F024E9376204FEF004060000512205277D059
-S3210000C43CA5674EBAEC6808030008588F670001327007C0834A40670000D0A94678
-S3210000C458487A050ACC832F024E93487A050A2F024E93AB672F032F024EBAFCDA5A
-S3210000C4742A3C0000C9702F052F024E93A5674878FFFE2F042F024E944A864FEFA4
-S3210000C49000346748487A04DC2F024E932F052F024E934878000E4878000F2F03DE
-S3210000C4AC2F024E944878000A4878000B2F032F024EBAFD222F052F024E93A367EC
-S3210000C4C82F032F024EBAFC7E77FC01004FEF0044600000FC2F052F024E93487815
-S3210000C4E4000E4878000F2F032F024E944878000A4878000B2F032F024EBAFCE236
-S3210000C500487A04702F024E932F052F024E93A3672F032F024EBAFC3677FC02006F
-S3210000C51C4FEF0044600000B4487A043E2F024E93AB672F032F024EBAFC182A3C5A
-S3210000C5380000C9702F052F024E93A5674878FFFE2F042F024E942F052F024E930D
-S3210000C5544878000E4878000F2F032F024E944878000A4878000B2F032F024EBAE3
-S3210000C570FC7077FC00804FEF0054605A71032F00487AFBC6486EFFF44EB9000028
-S3210000C58C46D8486EFFF42F024E93487A03CC2F024E93A5674878FFFE2F042F02E4
-S3210000C5A84E94487A03C42F024E934878000E4878000F2F032F024E944878000A48
-S3210000C5C44878000B2F032F024EBAFC1276404FEF0054487A038E2F024E93508F85
-S3210000C5E060000366220470020C840000000264064A84665C60165581670000BEDB
-S3210000C5FC5381670000F853816700025E6000033E487800102F124EB90000EC7832
-S3210000C618A56777404EBAEA8A487A03422F024E93487800102F032F024EBAEA8AF9
-S3210000C634487AFC7A2F024E93487A03282F024E9377FC80004FEF0030600002FADE
-S3210000C650487800202F124EB90000EC78A96726004EBAEA46486EFF902F034EB950
-S3210000C66C000055E84A804FEF0014670841EEFF9022086026487A02E22F024E93BE
-S3210000C688487800202F032F024EBAEA2A487AFC1D2F024E93223C0000C9664FEF79
-S3210000C6A4001C2F012F024E93263C00010000508F60000292487800102F124EB9C8
-S3210000C6C00000EC78A56773404EBAE9DE2F01487AFA78486EFFF44EB9000046D834
-S3210000C6DC486EFFF42F024E93487A028E2F024E9377FC04004FEF0028600002528C
-S3210000C6F8205277D0A5674EBAE9A808030008588F670001067007C0834A406700AF
-S3210000C71400B8A944487A024AC8832F024E93487A024A2F024E93AB672F032F025E
-S3210000C7304EBAFA1A4A844FEF001C6744487A023E2F024E934878000E4878000F47
-S3210000C74C2F032F024E944878000A4878000B2F032F024EBAFA80487A020C2F020B
-S3210000C7684E93A3672F032F024EBAF9DA77FC20004FEF003C600001CA487A020288
-S3210000C7842F024E934878000E4878000F2F032F024E944878000A4878000B2F03D8
-S3210000C7A02F024EBAFA3C487A01CA2F024E93487A01C02F024E93A3672F032F0267
-S3210000C7BC4EBAF98E77FC40004FEF00446000017E487A01962F024E93AB672F0309
-S3210000C7D82F024EBAF970487A01A42F024E934878000E4878000F2F032F024E9442
-S3210000C7F44878000A4878000B2F032F024EBAF9DE77FC10004FEF003C6000013AB4
-S3210000C81071032F00487AF932486EFFF44EB9000046D8486EFFF42F024E93487A2B
-S3210000C82C01602F024E934878000E4878000F2F032F024E944878000A4878000B00
-S3210000C8482F032F024EBAF992487A01142F024E9377FC08004FEF0044600000E6AC
-S3210000C864222A00580C810000000867107010B08167467020B0816774600000C4E4
-S3210000C880487800102F124EB90000EC78A56777C04EBAE816487A00FE028300008C
-S3210000C89C00FF2F024E93487800082F032F024EBAE8104FEF0020263C000200007C
-S3210000C8B86000008E487800102F124EB90000EC78A56777C04EBAE7DA487A00C264
-S3210000C8D42F024E93487800102F032F024EBAE7DA4FEF0020263C000200006058BA
-S3210000C8F0487800202F124EB90000EC78A96726004EBAE7A6487A008E2F024E936D
-S3210000C90C486EFF902F034EB9000055E84A804FEF001C6712486EFF902F024E935A
-S3210000C928508F263C000200006016487800202F032F024EBAE7804FEF000C263CD6
-S3210000C94400020000202E0014C0834A8066042540000420034CEE1C7CFF704E5E7D
-S3210000C9604E7551FC28002900292B002D28005B002C005D00285043290051FC5145
-S3210000C97C2C50435D2C0051FC2C50432C0051FC512850432C00000000230051FC24
-S3210000C9984E5600002F042F032F02487800102F390002B3904EB90000EC78A5674F
-S3210000C9B424004EBAE6F0AF43C68273FC7000C282700CE0A1B68157C349C34483E1
-S3210000C9D00802000B67204A836708203C0000CA886032203C0000CA900802000A63
-S3210000C9EC6726203C0000CA98601E4A836708203C0000CAA06012203C0000CAA81E
-S3210000CA080802000A6706203C0000CAB0283C0002B3982F002F044EBAE664202E02
-S3210000CA240008E580D0AE000841FAE8E22F300C08AB6771EE000E2F002F044EBA9C
-S3210000CA40F884487AFF2C2F044EB900004D204A83661AA5674878FFFD2F022F044B
-S3210000CA5C4EBAF656487A00562F044EB900004D204878000E4878FFFD2F022F04B7
-S3210000CA784EBAF63A4CEE001CFFF44E5E4E7551FC444956532E4C005152454D5327
-S3210000CA942E4C0051444956534C2E4C00444956552E4C005152454D552E4C0051B2
-S3210000CAB0444956554C2E4C003A0051FC4E5600002F02203C0000CB2C082E000081
-S3210000CACC000E6706203C0000CB34243C0002B3982F002F024EBAE5A2202E000880
-S3210000CAE8E580D0AE000841FAE8202F300C08AB6771EE000E2F002F024EBAF7C2EB
-S3210000CB04487AFE6A2F024EB900004D204878000B4878FFFD71EE000E2F002F02EC
-S3210000CB204EBAF592242EFFFC4E5E4E75444956552E570051444956532E5700518E
-S3210000CB3C4E5600002F0A2F032F02206E0008262E000C202E0010A741A342B48042
-S3210000CB586C08E3815282B4806DF8C6812403538043F90002B3E8E0A2A1514AAEF0
-S3210000CB740014676645D0101272000C000020670E528145F0180010120C00002006
-S3210000CB9066F2702E118018004A8267120C8200000001671A0C8200000002672276
-S3210000CBAC6070528170421180180022BC000000086066528170571180180022BC9C
-S3210000CBC80000001060565281704C1180180022BC00000020604643F900004D2000
-S3210000CBE44A8267120C820000000167160C8200000002671A6024487A00342F081C
-S3210000CC004E91508F601E487AF6A82F084E91508F6012487AF69F2F084E91508FC3
-S3210000CC1C600642B90002B39420024CEE040CFFF44E5E4E752E4200514E56000019
-S3210000CC382F02243C0002B398A367AF6771EE000E2F002F024EBAFEEE4878000B50
-S3210000CC544878FFFD71EE000E2F002F024EBAF452487AFD0A2F024EB900004D2079
-S3210000CC70202E0008E580D0AE000841FAE6942F300C08AB6771EE000E2F002F025A
-S3210000CC8C4EBAF636242EFFFC4E5E4E754E56FFEC48D70C1C45F90002B398487875
-S3210000CCA8001047FAE3D82F390002B3904EB90000EC7877C0A5674EBAE3E871FCC3
-S3210000CCC48FF8C083671A0C8000000400671E0C800000080067220C8000000C0039
-S3210000CCE067266030487A00B22F0A4E937820602C487A00A62F0A4E9378406020A9
-S3210000CCFC487A00A22F0A4E9378206014487A00962F0A4E937840600842B90002FD
-S3210000CD18B3946070202E0008E580D0AE000841FAE5E8240A2F300C08AB6771EE87
-S3210000CD34000E2F002F0A4EBAF588487AFC302F0A4EB900004D207020B08466120B
-S3210000CD504878000E4878FFFD2F032F0A4EBAF356602AA5674878FFFD2F032F0ABE
-S3210000CD6C4EBAF346487A00362F0A4EB900004D204878000E4878FFFD2F032F0ACA
-S3210000CD884EBAF32A4CEE0C1CFFEC4E5E4E7551FC4D554C552E4C00514D554C530C
-S3210000CDA42E4C00002D0051FC4E5600002F02202E0008E580D0AE000841FAE552F1
-S3210000CDC0243C0002B3982F300C08AB6771EE000E2F002F024EBAF4EE487AFB9615
-S3210000CDDC2F024EB900004D204878000B4878FFFD71EE000E2F002F024EBAF2BE84
-S3210000CDF8242EFFFC4E5E4E754E560000487800102F390002B3904EB90000EC78D1
-S3210000CE14A56773C04EBAE28EA740C0814A806726202E0008E580D0AE000841FA4A
-S3210000CE30E4E02F300C08AB6771EE000E2F0048790002B3984EBAF47E600623C02A
-S3210000CE4C0002B3944E5E4E754E56FFDC48D70C3C45F90002B3984878001047F98B
-S3210000CE6800004D202F390002B3904EB90000EC7875C0A5674EBAE22A71EE000E61
-S3210000CE84A343C6804FEF000C671C4878000E4878000F2F022F0A4EBAF218487AB8
-S3210000CEA0FAD02F0A4E934FEF0018780072002001E580D08141FAF0BE41F00A0051
-S3210000CEBC71FC0FFF7BE80008C082BA80660E2F082F0A4E93508F4A83664A602C45
-S3210000CED852817020B0816ECE4A84661C2F02487A0044486EFFF44EB9000046D813
-S3210000CEF4486EFFF42F0A4E934FEF00144A83661C487AFA6A2F0A4E934878000EAA
-S3210000CF104878000F2F022F0A4EBAF19A4FEF00184CEE0C3CFFDC4E5E4E7551FCC4
-S3210000CF2C52632530335800514E5600002F02243C0002B398A367AF6771EE000EEE
-S3210000CF482F002F024EBAFBEE4878000B4878FFFD71EE000E2F002F024EBAF152D7
-S3210000CF64487AFA0A2F024EB900004D20A5674878FFFD71EE000E2F002F024EBAA3
-S3210000CF80F134242EFFFC4E5E4E7551FC4E5600002F032F0271EE000E75FC0E006E
-S3210000CF9CC4807009E0A24A8266027408263C0002B398A367AF6771EE000E2F0019
-S3210000CFB82F034EBAFB80487AF9D42F034EB900004D20487800082F022F034EBA3A
-S3210000CFD4E0E8487AF9982F034EB900004D20A5674878FFFD71EE000E2F002F03E4
-S3210000CFF04EBAF0C24CEE000CFFF84E5E4E7551FC4E5600002F02243C0002B398EA
-S3210000D00CA367AF6771EE000E2F002F024EBAFB22202E0008E580D0AE000841FA74
-S3210000D028E2E82F300C08AB6771EE000E2F002F024EBAF28A487AF9322F024EB921
-S3210000D04400004D204878000B4878FFFD71EE000E2F002F024EBAF05A242EFFFC6A
-S3210000D0604E5E4E754E5600002F02202E0008E580D0AE000841FAE29A243C000210
-S3210000D07CB3982F300C08AB6771EE000E2F002F024EBAF236487AF8DE2F024EB9F5
-S3210000D09800004D204878000B4878FFFE71EE000E2F002F024EBAF006242EFFFC69
-S3210000D0B44E5E4E754E5600002F02243C0002B398A367AF6771EE000E2F002F027C
-S3210000D0D04EBAFA6A4878000B4878FFFD71EE000E2F002F024EBAEFCE487AF88679
-S3210000D0EC2F024EB900004D20202E0008E580D0AE000841FAE2102F300C08AB678A
-S3210000D10871EE000E2F002F024EBAF1B2242EFFFC4E5E4E754E5600002F032F02CA
-S3210000D12471EE000E75FC0E00C4807009E0A24A8266027408263C0002B398A36755
-S3210000D140AF6771EE000E2F002F034EBAF9F0487AF8442F034EB900004D20487894
-S3210000D15C00082F022F034EBADF58487AF8082F034EB900004D20202E0008E580E4
-S3210000D178D0AE000841FAE1922F300C08AB6771EE000E2F002F034EBAF1344CEEA7
-S3210000D194000CFFF84E5E4E754E5600002F02A541082E0000000E6702A341243C5B
-S3210000D1B00002B398A3672F01A5672F024EBAF97E202E0008E580D0AE000841FA9E
-S3210000D1CCE1442F300C08AB6771EE000E2F002F024EBAF0E6487AF78E2F024EB96D
-S3210000D1E800004D204878000B4878FFFE71EE000E2F002F024EBAEEB6242EFFFC6A
-S3210000D2044E5E4E754E5600002F02206E000C202E0008242E00100C8200000001E3
-S3210000D220670872FFB28267106010E5A05288B1FC000000086C44600CE280528885
-S3210000D23CB1FC000000086C362200C2AE00146704A340602C0C82000000016708FB
-S3210000D25872FFB28267106010E5A05288B1FC000000086DD8600CE2805288B1FC7A
-S3210000D274000000086DCA7000242EFFFC4E5E4E754E56FFC048D71CFC2C2E000831
-S3210000D29041FA021643EEFFF012D8A34312D8723841FA020843EEFFF2C2AE000CC2
-S3210000D2AC12D8702012D8B0816602A14345F900004D2049F90002B39897CB60047F
-S3210000D2C84A8B66220C8300000001660C41EEFFF224032D48FFF4604241EEFFF274
-S3210000D2E475FC80002D48FFF460340C8300000001661241EEFFF075FC01002D482E
-S3210000D300FFF44A85671C601041EEFFF075FC00802D48FFF44A85670A487A01924A
-S3210000D31C2F0C4E92508F7E00A3417A0078002006C082670000E0A3474A81675E78
-S3210000D3384A85670C487A016E2F0C4E927A00508F2F2EFFF42F0C4E922F04487A8C
-S3210000D354EDF4486EFFE44EB9000046D8486EFFE42F0C4E922F062F032F042F0299
-S3210000D3704EBAFE964A804FEF002C6602A34572000C83000000016700009A70FF09
-S3210000D38CB083670000A2600000A00C8300000001661A91C82002E380C086670A9E
-S3210000D3A80C84000000076702A3484A88671A605A91C82002E280C086670A0C8447
-S3210000D3C4000000076702A3484A886642487AF9D62F0C4E922F2EFFF42F0C4E925B
-S3210000D3E02F04487AED64486EFFE44EB9000046D8486EFFE42F0C4E92A345A341A7
-S3210000D3FC4FEF00240C8300000001671A70FFB08367246024A3410C830000000177
-S3210000D418670870FFB08367126012E7A252840C84000000086D00FEFC600EE282C6
-S3210000D43452840C84000000086D00FEEC5184664E4A8B664A4A8767460C830000F6
-S3210000D4500001670870FFB083672460362F06A367A167487800804EBAFDA02A0031
-S3210000D46C4FEF0010528BB7FC000000026D00FE4E60202F06A167A167487801007F
-S3210000D4884EBAFD7E2A004FEF0010528BB7FC000000026D00FE2C4CEE1CFCFFC04D
-S3210000D4A44E5E4E75410044002F0051FC4E56FFF048D7003C282E0008342E000E3A
-S3210000D4C0487800102F390002B3904EB90000EC78A5677BC04EBADBD2A541080276
-S3210000D4DC00066702A341263C0002B398A3672F01A5672F034EBAF64A0802000A58
-S3210000D4F867322004E580D08441FADE0E2F300C08AB6771C22F002F034EBAEDB2B5
-S3210000D514487AF45A2F034EB900004D2071C22F002F054EBAFD5C603071C22F0056
-S3210000D5302F054EBAFD50487AF4382F034EB900004D202004E580D08441FADDC601
-S3210000D54C2F300C08AB6771C22F002F034EBAED6A4CEE003CFFF04E5E4E7551FC24
-S3210000D5684E5600002F032F02206E0008262E000C202E0010A741A342B4806C08D1
-S3210000D584E3815282B4806DF8C68124035380E0A24AAE0014677043D01011720068
-S3210000D5A00C000020670E528143F0180010110C00002066F243F90002B3E8702E8E
-S3210000D5BC118018000C820000000167120C8200000002671A0C8200000003672271
-S3210000D5D86074528170421180180022BC00000008606A5281704C1180180022BC69
-S3210000D5F400000020605A528170571180180022BC00000010604A43F900004D20B7
-S3210000D6100C820000000167120C820000000267160C8200000003671A6024487A8B
-S3210000D62CF6042F084E91508F601E487AEC7B2F084E91508F6012487AEC6C2F088E
-S3210000D6484E91508F600642B90002B39420024CEE000CFFF84E5E4E754E560000E6
-S3210000D6642F02243C0002B398A3674878000D71EE000E2F002F024EBAFEEC202EE2
-S3210000D6800008E580D0AE000841FADC862F300C08AB6771EE000E2F002F024EBA9E
-S3210000D69CEC28487AF2D02F024EB900004D204878000B4878FFFE71EE000E2F000B
-S3210000D6B82F024EBAE9F8242EFFFC4E5E4E7551FC4E56FF9C2F0A2F0245F9000244
-S3210000D6D4B39073EE000E71FC00FFC0814A80661A487800102F124EB90000EC780F
-S3210000D6F024127140D480A5674EBAD9AE60160C80000000FF660842B90002B3948F
-S3210000D70C603871002412D480486EFF9C2F024EB9000055E84A806712486EFF9C0E
-S3210000D72848790002B3984EB900004D206010487800202F0248790002B3984EBAC6
-S3210000D744D9784CEE0404FF944E5E4E754E5600002F02487AF23C243C0002B398BC
-S3210000D7602F024EB900004D2071EE000E73FC00FF48780008C2802F012F024EBAB4
-S3210000D77CD940487AF1F02F024EB900004D204878000B4878FFFD71EE000E2F0007
-S3210000D7982F024EBAE918242EFFFC4E5E4E7551FC4E5600002F02487AF1E4243C60
-S3210000D7B40002B3982F024EB900004D20487800102F390002B3904EB90000EC7879
-S3210000D7D073C0A5674EBAD8D2487800102F012F024EBAD8DA242EFFFC4E5E4E759F
-S3210000D7EC4E5600002F02487AF1A0243C0002B3982F024EB900004D2071EE000E34
-S3210000D808720F48780008C2802F012F024EBAD8A6242EFFFC4E5E4E754E5600002C
-S3210000D824A5674878FFFE71EE000E2F0048790002B3984EBAE87C4E5E4E7551FC47
-S3210000D8404E560000202E0008E580D0AE000841FADAC02F300C08AB6771EE000E1A
-S3210000D85C2F0048790002B3984EBAEA5E4E5E4E754E5600004E5E4E754E56FFEC0C
-S3210000D8782F032F02487800102F390002B3904EB90000EC78A56777404EBAD8168A
-S3210000D894243C0002B398A5674878FFFE71EE000E2F002F024EBAE80A487A003241
-S3210000D8B02F024EB900004D202F03487AE88C486EFFEC4EB9000046D8486EFFECE2
-S3210000D8CC2F024EB900004D204CEE000CFFE44E5E4E7551FC2C2300514E5600006C
-S3210000D8E82F02243C0002B398A367AF6771EE000E2F002F024EBAF23E202E0008C5
-S3210000D904E580D0AE000841FADA042F300C08AB6771EE000E2F002F024EBAE9A614
-S3210000D920242EFFFC4E5E4E754E56FFF048D70C0C243C0002B39845F900004D2007
-S3210000D93C47FAE77677EE000EA367AF672F032F024EBAF1EE082E0003000F67346B
-S3210000D958487AF0112F024E92A5674878FFFE2F032F024E93487A004A2F024E92AF
-S3210000D9744878000B4878FFFE2F032F024E93487AEFE22F024E926022A5674878D3
-S3210000D990FFFD2F032F024E93487AEFD62F024E924878000B4878FFFD2F032F02B3
-S3210000D9AC4E934CEE0C0CFFF04E5E4E75292C2D280051FC514E560000A567487810
-S3210000D9C8FFFD71EE000E2F0048790002B3984EBAE6DC4E5E4E7551FC4E5600006D
-S3210000D9E42F02701023C00002B3E8202E0008E580D0AE000841FAD916243C000223
-S3210000DA00B3982F300C08AB6771EE000E2F002F024EBAE8B2487A00122F024EB9B9
-S3210000DA1C00004D20242EFFFC4E5E4E752C4343520051FC514E5600002F02487A86
-S3210000DA380038243C0002B3982F024EB900004D20202E0008E580D0AE000841FAC6
-S3210000DA54D8BC2F300C08AB6771EE000E2F002F024EBAE85E242EFFFC4E5E4E75C0
-S3210000DA704343522C0051FC514E5600002F02701023C00002B3E8202E0008E58062
-S3210000DA8CD0AE000841FAD87E243C0002B3982F300C08AB6771EE000E2F002F0262
-S3210000DAA84EBAE81A487A00122F024EB900004D20242EFFFC4E5E4E752C5352004C
-S3210000DAC44E5600002F02487A0038243C0002B3982F024EB900004D20202E0008C9
-S3210000DAE0E580D0AE000841FAD8282F300C08AB6771EE000E2F002F024EBAE7CAF3
-S3210000DAFC242EFFFC4E5E4E7553522C004E56FFF048D7041C73EE000E75FC0FC0FA
-S3210000DB18C48102810000F03F71FC01C0C082E780828071FC0E00C082243C0002FC
-S3210000DB34B398E680828077C145FAE786A3674878000D2F032F024EBAFA1C202E92
-S3210000DB500008E580D0AE000841FAD7B62F300C08AB672F032F024E92487AEE067A
-S3210000DB6C28002F024EB900004D2022047040B084633870080C8400000008641899
-S3210000DB8853810C8100000001635E70030C81000000036600008660500C8100002C
-S3210000DBA4000867487010B08167427020B081674E606C0C810000800064187040D3
-S3210000DBC0B081674E0C810000040067360C8100000800673E604C0C81000080003C
-S3210000DBDC67340C8100010000672C0C8100020000671460322F3C0001807F4878A4
-S3210000DBF8000B2F032F024E9260264878003F4878000B2F032F024E9260164878F4
-S3210000DC14001F4878000B2F032F024E92600642B90002B3944CEE041CFFF04E5E22
-S3210000DC304E7551FC4E5600002F024878000B243C0002B3984878FFFD71EE000E4C
-S3210000DC4C2F002F024EBAE462487AED1A2F024EB900004D20202E0008E580D0AE61
-S3210000DC68000841FAD6A42F300C08AB6771EE000E2F002F024EBAE646242EFFFC0A
-S3210000DC844E5E4E754E5600002F0B2F0A2F02243C0002B39845F90000EC7847F938
-S3210000DCA00002B390A367AF6771EE000E2F002F024EBAEE8A487AECDE2F024EB9EC
-S3210000DCBC00004D2022390002B3E80C8100000008670E7010B08167267020B081D8
-S3210000DCD8673E6058487800102F134E92A56722004EBAD3BE487800082F012F02EB
-S3210000DCF44EBAD3C6603A487800102F134E92A56722004EBAD3A0487800102F0138
-S3210000DD102F024EBAD3A8601C487800202F134E92A96722004EBAD3824878002050
-S3210000DD2C2F012F024EBAD38A487AEC3A2F024EB900004D20202E0008E580D0AE49
-S3210000DD48000841FAD5C42F300C08AB6771EE000E2F002F024EBAE5664CEE0C04EE
-S3210000DD64FFF44E5E4E7551FC4E5600002F032F02487800102F390002B3904EB963
-S3210000DD800000EC78A56777C04EBAD31E303CFF00C0834A40670842B90002B394F6
-S3210000DD9C604A487AEBF4243C0002B3982F024EB900004D20487800082F032F029D
-S3210000DDB84EBAD302487AEBB22F024EB900004D20202E0008E580D0AE000841FAEC
-S3210000DDD4D53C2F300C08AB6771EE000E2F002F024EBAE4DE4CEE000CFFF84E5E17
-S3210000DDF04E7551FC4E5600002F0A2F02206E000845F90000470875D073D00282C4
-S3210000DE0C00000C00E08202810000000384812F02487A00864E920C820000000410
-S3210000DE2867160C820000000867207009B082672C700CB08267386048203C0000AF
-S3210000DE44DEB02F004E92487A010C4E926046203C0000DED82F004E92487A00FAED
-S3210000DE604E926034203C0000DEFC2F004E92487A00E84E926022203C0000DF2878
-S3210000DE7C2F004E92487A00D64E926010203C0000DF4C2F004E92487A00C44E9291
-S3210000DE984CEE0404FFF84E5E4E7551FC2046533D25582C200051FC515068797372
-S3210000DEB46963616C20627573206572726F72206F6E20696E737472756374696F8E
-S3210000DED06E20666574636800506879736963616C20627573206572726F72206F18
-S3210000DEEC6E206F706572616E6420777269746500417474656D70746564207772A1
-S3210000DF0869746520746F2077726974652D70726F74656374656420737061636544
-S3210000DF240051FC51506879736963616C20627573206572726F72206F6E206F7050
-S3210000DF406572616E64207265616400515265736572766564000000000A0051FC11
-S3210000DF5C4E56FFEC2F032F0277FC8000740073C371EE000AE283C280700FB08253
-S3210000DF786500013E307B2A064EFB88020020003E00540074003E00940094009415
-S3210000DF94003E003E003E00B400D000EC0108012470744A816700010641EEFFECDC
-S3210000DFB070541180280052827010B0826EAC6000010241EEFFEC702E118028005E
-S3210000DFCC52827010B0826E96600000EC70734A81670000D241EEFFEC7053118008
-S3210000DFE8280052827010B0826E00FF78600000CC706D4A81670000B241EEFFEC7D
-S3210000E004704D1180280052827010B0826E00FF58600000AC70304A8167000092C9
-S3210000E02041EEFFEC70311180280052827010B0826E00FF386000008C70784A81A0
-S3210000E03C677241EEFFEC70581180280052827010B0826E00FF1A606E706E4A81CA
-S3210000E058675641EEFFEC704E1180280052827010B0826E00FEFE6052707A4A8101
-S3210000E074673A41EEFFEC705A1180280052827010B0826E00FEE2603670764A8131
-S3210000E090671E41EEFFEC70561180280052827010B0826E00FEC6601A70634A8180
-S3210000E0AC6702704341EEFFEC1180280052827010B0826E00FEAA41EEFFEC42303B
-S3210000E0C82800486EFFEC487A00144EB9000047084CEE000CFFE44E5E4E7551FC5C
-S3210000E0E4257300514E5600002F0A45F90002B8342F2A003C2F2A00382F2A003475
-S3210000E1002F2A00302F2A002C2F2A00282F2A00242F2A0020487A003A4EB9000075
-S3210000E11C47082F2A001C2F2A00182F2A00142F2A00102F2A000C2F2A00082F2AB7
-S3210000E13800042F12487A00424EB900004708246EFFFC4E5E4E7551FC416E3A20D4
-S3210000E1542530385820253038582025303858202530385820253038582025303803
-S3210000E17058202530385820253038580A0051FC51446E3A202530385820253038E5
-S3210000E18C58202530385820253038582025303858202530385820253038582025BB
-S3210000E1A83038580A0051FC514E5600002F0274002F2E00082002E580908241FA6B
-S3210000E1C400282F300C004EB900004F904A80508F66042002600A52827026B08285
-S3210000E1E06ED6A140242EFFFC4E5E4E750000E3DC0002B834000000200000E3DFAD
-S3210000E1FC0002B838000000200000E3E20002B83C000000200000E3E50002B84052
-S3210000E218000000200000E3E80002B844000000200000E3EB0002B84800000020EB
-S3210000E2340000E3EE0002B84C000000200000E3F10002B850000000200000E3F4FC
-S3210000E2500002B854000000200000E3F70002B858000000200000E3FA0002B85C7F
-S3210000E26C000000200000E3FD0002B860000000200000E4000002B8640000002034
-S3210000E2880000E4030002B868000000200000E4060002B86C000000200000E4092E
-S3210000E2A40002B870000000200000E3B40002B874000000200000E40C0002B87807
-S3210000E2C0000000200000E3B80002B87C000000200000E4140002B88000000020D9
-S3210000E2DC0000E3BC0002B884000000200000E41C0002B888000000200000E3C01E
-S3210000E2F80002B88C000000200000E4240002B890000000200000E3C40002B89437
-S3210000E314000000200000E42C0002B898000000200000E3C80002B89C0000002024
-S3210000E3300000E4340002B8A0000000200000E3CC0002B8A4000000200000E43CEC
-S3210000E34C0002B8A8000000200000E3D00002B8AC000000200000E4440002B8B062
-S3210000E368000000200000E44C0002B8B4000000200000E4540002B8B800000020EB
-S3210000E3840000E3D40002B8BC000000200000E45C0002B8C0000000200000E45F0D
-S3210000E3A00002B8C4000000100000E4620002B870000000204650300046503100B0
-S3210000E3BC4650320046503300465034004650350046503600465037004650494160
-S3210000E3D85200000044300044310044320044330044340044350044360044370015
-S3210000E3F44130004131004132004133004134004135004136004137004650306C31
-S3210000E4100051FC514650316C0051FC514650326C0051FC514650336C0051FC51D6
-S3210000E42C4650346C0051FC514650356C0051FC514650366C0051FC514650376C16
-S3210000E4480051FC51465043520051FC514650535200000000504300535200535035
-S3210000E4640051FC514E5600002F0B2F0A45F90002B83447F9000047082F2A00804D
-S3210000E480487A006E4E932F2A0084487A00744E932F2A0088487A007A4E932F2A1E
-S3210000E49C005C2F2A00582F2A00542F2A00502F2A004C2F2A00482F2A00442F2ABF
-S3210000E4B80040487A00644E932F2A007C2F2A00782F2A00742F2A00702F2A006CFA
-S3210000E4D42F2A00682F2A00642F2A0060487A006A4E934CEE0C00FFF84E5E4E7536
-S3210000E4F0465043523A2020253038580A0051FC51465053523A2020253038580A34
-S3210000E50C0051FC5146504941523A20253038580A0051FC514650302D333A202551
-S3210000E52830385825303858202530385825303858202530385825303858202530E3
-S3210000E5443858253038580A004650342D373A2025303858253038582025303858DF
-S3210000E560253038582025303858253038582025303858253038580A004E56000032
-S3210000E57C2F0B2F0A2F02242E000845F9000047084A82663247F90002B8342F2B06
-S3210000E598008C487A00904E9247EB009071D32F00487A008E4E9230132F004EBAC4
-S3210000E5B4F9A8487A008C4E924EBAFB2A60602F024EBAFBEA72FFB280673422000B
-S3210000E5D0E581928041FAFC16701041F01C00B0A8000822680004660E71D12F00C4
-S3210000E5EC2F10487A00584E92602C2F112F10487A00584E926020487A005C2F0200
-S3210000E6084EB900004F904A8066064EBAFE54600A2F024879000040244E924CEEA0
-S3210000E6240C04FFF44E5E4E7550433A2025303858200051FC53523A202530345843
-S3210000E640205B00005D0A005125733A2020253034580A005125733A202025303898
-S3210000E65C580A0051667075004E5600002F032F02206E000C222E0008242E001043
-S3210000E678B1FC00000008671070102608B083670E7020B083670E60102041108263
-S3210000E694600A204130826004204120824CEE000CFFF84E5E4E7551FC4E56FFD410
-S3210000E6B048D73CFC266E000845F900004708A34375D3700CE0AA73825981670E50
-S3210000E6CC5381670E5381670E5381670E60107408601474096010740A600C740B9B
-S3210000E6E86008487A03D44E9274002A3C0002B8342E0820454BE8003CD595280DBE
-S3210000E7042A4549ED008C486EFFFC2F144EB9000009D82C0071D3E4887380703F68
-S3210000E720B08165000358307B1A064EFB8802034E034E008000AA00D4032C032C4A
-S3210000E73C032C015A017E02020226024A032C026E0292032C032C032C032C032C1C
-S3210000E758032C032C032C02B602DA02DA02DA02DA02DA02DA02DA03040304030441
-S3210000E7740304030403040304030403040304030403040304030403040304032CF9
-S3210000E790032C032C032C032C032C032C032C032C032C032C032C032C032C032CD5
-S3210000E7AC032C487A03284E922F0B4EBAF63C42A74EBAFDBAA3672F144EB90000DF
-S3210000E7C8B2440C8300000001660002E0600002C6487A030E4E922F0B4EBAF6123C
-S3210000E7E442A74EBAFD90A3672F144EB90000B2440C8300000001660002B660003D
-S3210000E800029C4A8666262F14487A02EE4E9242A74EBAFD66A3672F144EB900007F
-S3210000E81CB2440C83000000016600028C600002722014B0B90002B5186700024E69
-S3210000E8384AAEFFFC67262F00487A02D64E9242A74EBAFD2EA3672F144EB9000025
-S3210000E854B2440C8300000001660002546000023A2F004EB900000A5C4A806700F7
-S3210000E870022423D40002B3EC204408EB00070002959076006000022C487A02B2C9
-S3210000E88C4E9242A74EBAFCE6A3672F144EB90000B2440C83000000016600020C69
-S3210000E8A8600001F222390002B3EC672C48784AFC487800102F014EBAFDA4204558
-S3210000E8C408A800070090204442B90002B3EC7600959008AB00070002600001D45F
-S3210000E8E041F90002B51C53904A906F1A20447600959042A74EBAFC82A3672F1408
-S3210000E8FC4EB90000B244600001AE2045A34308AB0007000208A80007009042B9A5
-S3210000E9180002B51C42A74EBAFC58A3672F144EB90000B2446000016E487A0222C6
-S3210000E9344E9242A74EBAFC3EA3672F144EB90000B2440C83000000016600016411
-S3210000E9506000014A487A02224E9242A74EBAFC1AA3672F144EB90000B2440C8354
-S3210000E96C000000016600014060000126487A02224E9242A74EBAFBF6A3672F1465
-S3210000E9884EB90000B2440C83000000016600011C60000102487A02124E9242A75B
-S3210000E9A44EBAFBD2A3672F144EB90000B2440C8300000001660000F8600000DE06
-S3210000E9C0487A01FE4E9242A74EBAFBAEA3672F144EB90000B2440C830000000120
-S3210000E9DC660000D4600000BA487A01F24E9242A74EBAFB8AA3672F144EB9000066
-S3210000E9F8B2440C8300000001660000B0600000960481000000182F01487A01DA01
-S3210000EA144E9242A74EBAFB5EA3672F144EB90000B2440C830000000166000084F2
-S3210000EA30606A0481000000202F01487A01D04E9242A74EBAFB34A3672F144EB93E
-S3210000EA4C0000B2440C8300000001665A60422F01487A01BA4E9242A74EBAFB1235
-S3210000EA68A3672F144EB90000B2440C8300000001663860202F014EB90000F27CEF
-S3210000EA8442A74EBAFAF0A3672F144EB90000B2440C8300000001661620390002E4
-S3210000EAA0B518670E2F004EB90000075442B90002B51820034CEE3CFCFFD44E5EA3
-S3210000EABC4E7551FC0A496C6C6567616C20737461636B2074797065210A0051FCD4
-S3210000EAD8416363657373204572726F723A20005141646472657373204572726F77
-S3210000EAF4723A2000496C6C6567616C20696E737472756374696F6E20617420255E
-S3210000EB10233038580A0051FC427265616B706F696E7420656E636F756E746572A7
-S3210000EB2C65642061742025233038580A0051FC5150726976696C65676520766993
-S3210000EB486F6C6174696F6E0A0051FC51556E696D706C656D656E74656420412D28
-S3210000EB644C696E6520496E737472756374696F6E0A0051FC556E696D706C656DA7
-S3210000EB80656E74656420462D4C696E6520496E737472756374696F6E0A0051FC2F
-S3210000EB9C446562756720496E746572727570740A0051FC51466F726D617420450D
-S3210000EBB872726F720A0051FC556E697469616C697A656420496E74657272757024
-S3210000EBD4740A005153707572696F757320496E746572727570740A004175746F56
-S3210000EBF0766563746F7220696E74657272757074206C6576656C2025640A005127
-S3210000EC0C54524150202325640A0051FC52657365727665643A202325640A0051EB
-S3210000EC284E560000206E0008226E000C4A89660820390002B86C600622A8000400
-S3210000EC4420104E5E4E7551FC4E560000222E00087010B0AE000C670A7020B0AE7D
-S3210000EC60000C6708600C70FEC081600870FCC081600220014E5E4E754E56000051
-S3210000EC7C2F02222E0008206E000CB1FC00000008671070102408B082670E702044
-S3210000EC98B082670E601220417190600E204171D060082041201060027000242EB2
-S3210000ECB4FFFC4E5E4E7551FC4E5600002F0A4AAE000845F90002B83466182F2AA7
-S3210000ECD0008C4EB900000A5C4A806710202A008C23C00002B3EC08EA0007009005
-S3210000ECEC2F0A4EB90000EEAC246EFFFC4E5E4E754E5600007001C0AE000808405D
-S3210000ED0800004E5E4E7551FC4E5600002F02206E000872107000141067380C02FF
-S3210000ED24002E662A733008017042B0816714704CB08167127062B0816708706C51
-S3210000ED40B08167066008720860107220600C7210600852801430080066C820016C
-S3210000ED5C242EFFFC4E5E4E754E56000020390002B8C04E5E4E7551FC4E56000002
-S3210000ED78202E000823C00002B8C04E5E4E7551FC4E5600002F2E00084EBAF41EE7
-S3210000ED9472FFB28067262200E581928041FAF44A701041F01C00B0A80008226863
-S3210000EDB00004660632AE000E601622AE000C60102F2E00084879000040244EB990
-S3210000EDCC000047084E5E4E754E56000042B90002B3EC42B90002B51842B9000260
-S3210000EDE8B51C303C200033C00002B8C44E5E4E754E56FFF048D7003C222E000886
-S3210000EE042A2E000C2601E183243C100000002042D1FC0000860870302801E184A2
-S3210000EE201180380070201180380070102242D3FC00008600118038007013138096
-S3210000EE3C48007007138048002242D3FC000086042001ED80183C00DD13840C00FB
-S3210000EE582242D3FC000086142001ED8079FCFF00EB8542310C00203C07DE290070
-S3210000EE744C4508002242D3FC000086187BC0C885E0842001ED80ED8113840C0087
-S3210000EE902242D3FC0000861C700513851C00118038004CEE003CFFF04E5E4E75C5
-S3210000EEAC206F00042C28003C2E06028700000003672E0C8700000001671C0C8722
-S3210000EEC800000002670A57862E3C70000000601A55862E3C600000006010538696
-S3210000EEE42E3C5000000060062E3C400000002C462D28008C3E2800902D074E7106
-S3210000EF002E4EF228D0FF0040F22890000080F22888000084F228840000884CD0B8
-S3210000EF1C7FFF4E714E7346FC270023CF00045F902E7C00045F902F0841F9000277
-S3210000EF38B83448D0FFFFF228F0FF0040F228B0000080F228A8000084F228A4001E
-S3210000EF540088215F002022572149003C21690004008C3169000200904EB9000007
-S3210000EF70F2182F094EB90000E6AC4FEF00044A80661C41F90002B8342E68003C1C
-S3210000EF8C222800042268002420280000206800204E7346FC27004EF900003D0CBD
-S3210000EFA846FC27002F0841F90002B8342140000021410004214200082143000CDD
-S3210000EFC42144001021450014214600182147001C21490024214A0028214B002C80
-S3210000EFE0214C0030214D0034214E0038225F21490020226F00042149003C216959
-S3210000EFFC0004008C3169000200902E7C00045F904EB90000F2184EF900003D0CF9
-S3210000F0184E56FFF848D700C040C72007028000000700E0882C2E00080286000053
-S3210000F0340007E18E02870000F8FF8E8646C74CD700C04FEF00084E5E4E754E5667
-S3210000F050FFF048D70303302E0004E4880280000000FF2F004EB9000039784FEF16
-S3210000F06C00040C8000000001670A4CD703034E5E4EFAFEA44CD703034E5E4E732B
-S3210000F088202F000446C04E75202F00044E7B00024E714E75202F00044E7B00038B
-S3210000F0A44E714E75202F00044E7B00044E714E75202F00044E7B00054E714E7583
-S3210000F0C0202F00044E7B00064E714E75202F00044E7B00074E714E75202F000492
-S3210000F0DC4E7B00084E714E75202F00044E7B08004E714E75202F00044E7B0801F4
-S3210000F0F84E714E75202F00044E7B08044E714E75202F00044E7B08054E714E751F
-S3210000F114202F00044E7B08064E714E75202F00044E7B08074E714E75202F00042D
-S3210000F1304E7B08084E714E75202F00044E7B08094E714E75202F00044E7B080A85
-S3210000F14C4E714E75202F00044E7B080B4E714E75202F00044E7B080F4E714E75B9
-S3210000F168202F00044E7B0C004E714E75202F00044E7B0C014E714E75202F0004DD
-S3210000F1844E7B0C044E714E75202F00044E7B0C054E714E75202F00044E7B0C0C2B
-S3210000F1A04E714E75202F00044E7B0C0E4E714E75202F00044E7B0C0F4E714E755A
-S3210000F1BC203C100000004E7B0C0F203C200000000680000000214E7B0C04203C89
-S3210000F1D8200010000680000000214E7B0C05203C200010000680000010002E40D4
-S3210000F1F4203C010C01004E7B00024EB900025F302E7C00045F904EB900003D2C1F
-S3210000F21060FE4E714E714AC84E71700072002040F4E8D1FC0000001052810C81D4
-S3210000F22C0000020066EE7200528020400C800000000466E04E75AF674EB9000010
-S3210000F248F0184FEF0004220061C642804E7B00044E7B00054E7B00064E7B000715
-S3210000F264203C010001004E7B00022F014EB90000F0184FEF00044E754E56000077
-S3210000F2802F032F02242E000822020481000000407041B081633E204241E8FFBFFA
-S3210000F29CB1FC00000006622070409480203C0000F2E07601E5A313C310000F0C29
-S3210000F2B82F012F004EB9000047086010203C0000F2FC2F022F004EB9000047080F
-S3210000F2D44CEE000CFFF84E5E4E7551FC0A4564676520506F727420496E746572B9
-S3210000F2F072757074202325640A0051FC0A5573657220446566696E6564205665BB
-S3210000F30C63746F72202325640A0051FC4E56FFCC48D71C3C262E000C47F900007E
-S3210000F328470842B90002B3F0222E000842B90002B3F4538166582F3C10000000CB
-S3210000F344487A016E4E937400508F60162602701FE0A3AF41C283D2820281FFFF88
-S3210000F360FFF8B4816608487A01704E93588F2002D08041FA01682F300C00487AB3
-S3210000F37C02104E9352827016B082508F6EC6487A02084E93588F6000011620436F
-S3210000F3987400222800042441602241EEFFE8119A2800101252824A00661249C000
-S3210000F3B441EEFFE82440423028004A806616601E10120C00002E66D641EEFFE8B1
-S3210000F3D0423028004A8A670A10120C00002E6602528A242E0008578266444A8AEB
-S3210000F3EC660E2F01487A01A64E93508F600000B048780010486EFFFC20432F28E7
-S3210000F40800084EB900000B8C28004AAEFFFC4FEF000C661420432F2800084879DA
-S3210000F42400003FB44E93508F607C780074002002D08041FA00A449F00C00486EFF
-S3210000F440FFE82A0C2F144EB900004F904A80508F6642222E0008578166122F0438
-S3210000F45C42A72F0A206C00044E904FEF000C603E4A8A66122045A3790002B3F0A4
-S3210000F4782F10487A013C4E93508F42A7A3672F0A206C00044E904FEF000C60161A
-S3210000F49452827016B0826E9620432F280004487A01204E93508F4CEE1C3CFFCC08
-S3210000F4B04E5E4E75496E7465726E616C204D6F64756C657320284D424152203DCE
-S3210000F4CC202523303858293A000000000A0051FC0000F5E4000224940000F5E8CC
-S3210000F4E800021EB00000F5EC00021BAC0000F6100001FDD40000F6040001FB7446
-S3210000F5040000F6180001E28C0000F6200001E06C0000F6280001D9CC0000F6301B
-S3210000F5200001D6680000F5F00001C4E00000F6380001C4000000F6400001B5D44D
-S3210000F53C0000F6480001A7A80000F5F40001A4A40000F65000019BE00000F5F83E
-S3210000F5580001994C0000F5FC000188840000F6000001361C0000F65800012644AB
-S3210000F5740000F6600001166C0000F668000106940000F6700000F6BC252D38738E
-S3210000F590200000000A0A00514572726F723A2020496E76616C69642052656769E2
-S3210000F5AC737465723A202025730A00514D6F64756C653A2025730A004572726F18
-S3210000F5C8723A20496E76616C6964204D6F64756C653A2025730A005100000001BA
-S3210000F5E45349550047505400534C54005043490043544D004932430053454300DD
-S3210000F6005553420045504F52540000006151FC51494E54430051FC514750494F7A
-S3210000F61C0051FC515352414D0051FC51464243530051FC51534452414D43005196
-S3210000F6385043494152420051464543300051FC51464543310051FC514453504945
-S3210000F6540051FC51505343300051FC51505343310051FC51505343320051FC51D7
-S3210000F670505343330051FC51436F6C6446697265204D4346353437580051FC512D
-S3210000F68C25313573203A20253032580A0051FC5125313573203A20253034580AFA
-S3210000F6A80051FC5125313573203A20253038580A0051FC514E56FFE048D71C7C63
-S3210000F6C4242E0008282E000C262E001045F90002B3F447EA000441EAFFFC49F980
-S3210000F6E000004F902A084A8467462C3C000105802F022F064E944A8067062045AA
-S3210000F6FC4A90674E41F910000000D1FC00008900719026802F002F06487AFF767B
-S3210000F7184EB9000047082F0A4EB900003E0020454A9067000E48601E2F02487A8E
-S3210000F7340E4C4E944A80665841F910000000D1FC00008900108360000E282C3CBE
-S3210000F750000105842F022F064E944A80670620454A90674E41F910000000D1FC83
-S3210000F76C0000890471D026802F002F06487AFF224EB9000047082F0A4EB900002A
-S3210000F7883E0020454A9067000DE4601E2F02487A0DEC4E944A80665C41F9100068
-S3210000F7A40000D1FC00008904308360000DC44A8467462C3C000105882F022F062E
-S3210000F7C04E944A80670620454A90674E41F910000000D1FC0000890471902680CF
-S3210000F7DC2F002F06487AFEAA4EB9000047082F0A4EB900003E0020454A906700C3
-S3210000F7F80D7C601E2F02487A0D884E944A80665841F910000000D1FC0000890452
-S3210000F814108360000D5C2C3C000105902F022F064E944A80670620454A90674E05
-S3210000F83041F910000000D1FC00008908719026802F002F06487AFE464EB90000F6
-S3210000F84C47082F0A4EB900003E0020454A9067000D18601E2F02487A0D2C4E9476
-S3210000F8684A80665A41F910000000D1FC00008908108360000CF84A8467442C3C74
-S3210000F884000105942F022F064E944A80670620454A90673E41F910000000D1FC4E
-S3210000F8A00000890C26902F132F06487AFE004EB9000047082F0A4EB900003E00F0
-S3210000F8BC20454A9067000CB260102F02487A0CCA4E944A8067544A8467442C3C45
-S3210000F8D8000105982F022F064E944A80670620454A90674C41F910000000D1FCE8
-S3210000F8F40000890C26902F132F06487AFDAC4EB9000047082F0A4EB900003E00F1
-S3210000F91020454A9067000C5E601E2F02487A0C7A4E944A80665C41F91000000016
-S3210000F92CD1FC0000890C208360000C3E4A8467462C3C0001059C2F022F064E943D
-S3210000F9484A80670620454A90673E41F910000000D1FC00008910719026802F00FC
-S3210000F9642F06487AFD244EB9000047082F0A4EB900003E0020454A9067000BF6EE
-S3210000F980600E2F02487A0C164E944A80664860522C3C000105A42F022F064E947C
-S3210000F99C4A80670620454A90674E41F910000000D1FC00008910719026802F0098
-S3210000F9B82F06487AFCD04EB9000047082F0A4EB900003E0020454A9067000BA243
-S3210000F9D4601E2F02487A0BCA4E944A80665C41F910000000D1FC0000891010831A
-S3210000F9F060000B824A8467462C3C000105AC2F022F064E944A80670620454A90B5
-S3210000FA0C673E41F910000000D1FC0000891471D026802F002F06487AFC784EB9F7
-S3210000FA28000047082F0A4EB900003E0020454A9067000B3A600E2F02487A0B6A2E
-S3210000FA444E944A80664860522C3C000105B42F022F064E944A80670620454A90B4
-S3210000FA60674E41F910000000D1FC0000891471D026802F002F06487AFC244EB9E7
-S3210000FA7C000047082F0A4EB900003E0020454A9067000AE6601E2F02487A0B1E6B
-S3210000FA984E944A80665C41F910000000D1FC00008914308360000AC64A846746CC
-S3210000FAB42C3C000105BC2F022F064E944A80670620454A90675241F91000000045
-S3210000FAD0D1FC00008918719026802F002F06487AFBAC4EB9000047082F0A4EB99C
-S3210000FAEC00003E0020454A9067000A7E60222F02487A0ABE4E944A80661241F9F1
-S3210000FB0810000000D1FC00008918108360000A5E4A8467462C3C000105C42F0224
-S3210000FB242F064E944A80670620454A90674E41F910000000D1FC0000891C7190C0
-S3210000FB4026802F002F06487AFB444EB9000047082F0A4EB900003E0020454A9085
-S3210000FB5C67000A16601E2F02487A0A5E4E944A80665C41F910000000D1FC0000A2
-S3210000FB78891C1083600009F64A8467462C3C000105CC2F022F064E944A806706A0
-S3210000FB9420454A90674E41F910000000D1FC00008934719026802F002F06487ABA
-S3210000FBB0FADC4EB9000047082F0A4EB900003E0020454A90670009AE601E2F027D
-S3210000FBCC487A09FE4E944A80665841F910000000D1FC0000893410836000098E86
-S3210000FBE82C3C000105D02F022F064E944A80670620454A90674E41F91000000000
-S3210000FC04D1FC00008938719026802F002F06487AFA784EB9000047082F0A4EB97B
-S3210000FC2000003E0020454A906700094A601E2F02487A099E4E944A80665C41F9CB
-S3210000FC3C10000000D1FC0000893810836000092A4A8467462C3C000105D82F02F0
-S3210000FC582F064E944A80670620454A90674E41F910000000D1FC0000893C71906B
-S3210000FC7426802F002F06487AFA104EB9000047082F0A4EB900003E0020454A9085
-S3210000FC90670008E2601E2F02487A093E4E944A80665841F910000000D1FC0000C8
-S3210000FCAC893C1083600008C22C3C000105E42F022F064E944A80670620454A90A4
-S3210000FCC8674E41F910000000D1FC00008940719026802F002F06487AF9AC4EB90C
-S3210000FCE4000047082F0A4EB900003E0020454A906700087E601E2F02487A08E6A6
-S3210000FD004E944A80665C41F910000000D1FC0000894010836000085E4A846746BF
-S3210000FD1C2C3C000105EC2F022F064E944A80670620454A90675241F910000000AA
-S3210000FD38D1FC00008944719026802F002F06487AF9444EB9000047082F0A4EB96F
-S3210000FD5400003E0020454A906700081660222F02487A08864E944A80661241F92A
-S3210000FD7010000000D1FC000089441083600007F64A8467462C3C000105F42F02C9
-S3210000FD8C2F064E944A80670620454A90674E41F910000000D1FC0000894871902A
-S3210000FDA826802F002F06487AF8DC4EB9000047082F0A4EB900003E0020454A9086
-S3210000FDC4670007AE601E2F02487A08264E944A80665C41F910000000D1FC0000DD
-S3210000FDE0894810836000078E4A8467462C3C000105FC2F022F064E944A80670644
-S3210000FDFC20454A90674E41F910000000D1FC0000894C719026802F002F06487A38
-S3210000FE18F8744EB9000047082F0A4EB900003E0020454A9067000746601E2F02E6
-S3210000FE34487A07C64E944A80665841F910000000D1FC0000894C108360000726A7
-S3210000FE502C3C000106042F022F064E944A80670620454A90674E41F91000000060
-S3210000FE6CD1FC00008950719026802F002F06487AF8104EB9000047082F0A4EB963
-S3210000FE8800003E0020454A90670006E2601E2F02487A076A4E944A80665C41F902
-S3210000FEA410000000D1FC000089501083600006C24A8467462C3C0001060C2F02A4
-S3210000FEC02F064E944A80670620454A90674E41F910000000D1FC000089547190E9
-S3210000FEDC26802F002F06487AF7A84EB9000047082F0A4EB900003E0020454A9086
-S3210000FEF86700067A601E2F02487A070A4E944A80665841F910000000D1FC0000FE
-S3210000FF14895410836000065A2C3C000106142F022F064E944A80670620454A905A
-S3210000FF30674E41F910000000D1FC0000895871D026802F002F06487AF7544EB9A3
-S3210000FF4C000047082F0A4EB900003E0020454A9067000616601E2F02487A06AEDF
-S3210000FF684E944A80665C41F910000000D1FC000089583083600005F64A84674688
-S3210000FF842C3C0001061C2F022F064E944A80670620454A90675241F9100000000F
-S3210000FFA0D1FC0000895C71D026802F002F06487AF6EC4EB9000047082F0A4EB908
-S3210000FFBC00003E0020454A90670005AE60222F02487A064E4E944A80661241F965
-S3210000FFD810000000D1FC0000895C30836000058E4A8467462C3C000106242F0260
-S3210000FFF42F064E944A80670620454A90674E41F910000000D1FC0000896471D064
-S3210001001026802F002F06487AF6844EB9000047082F0A4EB900003E0020454A9074
-S3210001002C67000546601E2F02487A05EE4E944A80665C41F910000000D1FC000016
-S3210001004889643083600005264A8467462C3C0001062C2F022F064E944A806706D5
-S3210001006420454A90674E41F910000000D1FC0000898471D026802F002F06487A54
-S32100010080F61C4EB9000047082F0A4EB900003E0020454A90670004DE601E2F0240
-S3210001009C487A058E4E944A80665641F910000000D1FC000089843083600004BE8B
-S321000100B82C3C000106342F022F064E944A80670620454A90674C41F910000000C7
-S321000100D4D1FC0000896826902F132F06487AF5CA4EB9000047082F0A4EB9000007
-S321000100F03E0020454A906700047C601E2F02487A05344E944A80665A41F9100029
-S3210001010C0000D1FC0000896820836000045C4A8467442C3C0001063C2F022F0625
-S321000101284E944A80670620454A90674C41F910000000D1FC0000898826902F1389
-S321000101442F06487AF5644EB9000047082F0A4EB900003E0020454A9067000416B4
-S32100010160601E2F02487A04D64E944A80665841F910000000D1FC000089882083FC
-S3210001017C600003F62C3C000106442F022F064E944A80670620454A90674E41F9A7
-S3210001019810000000D1FC0000896E71D026802F002F06487AF4F04EB90000470829
-S321000101B42F0A4EB900003E0020454A90670003B2601E2F02487A047A4E944A80B4
-S321000101D0665C41F910000000D1FC0000896E3083600003924A8467462C3C0001B0
-S321000101EC064C2F022F064E944A80670620454A90675241F910000000D1FC000010
-S32100010208898E71D026802F002F06487AF4884EB9000047082F0A4EB900003E005F
-S3210001022420454A906700034A60222F02487A041A4E944A80661241F910000000C3
-S32100010240D1FC0000898E30836000032A4A8467462C3C000106542F022F064E94F1
-S3210001025C4A80670620454A90674E41F910000000D1FC0000897271D026802F002C
-S321000102782F06487AF4204EB9000047082F0A4EB900003E0020454A90670002E2FA
-S32100010294601E2F02487A03BA4E944A80665C41F910000000D1FC000089723083E6
-S321000102B0600002C24A8467462C3C0001065C2F022F064E944A80670620454A9003
-S321000102CC674E41F910000000D1FC0000899271D026802F002F06487AF3B84EB969
-S321000102E8000047082F0A4EB900003E0020454A906700027A601E2F02487A035A36
-S321000103044E944A80665841F910000000D1FC0000899230836000025A2C3C000162
-S3210001032006642F022F064E944A80670620454A90674E41F910000000D1FC0000C6
-S3210001033C897671D026802F002F06487AF3544EB9000047082F0A4EB900003E0077
-S3210001035820454A9067000216601E2F02487A02FE4E944A80665C41F9100000009B
-S32100010374D1FC000089763083600001F64A8467462C3C0001066C2F022F064E94F2
-S321000103904A80670620454A90674E41F910000000D1FC0000899671D026802F00D3
-S321000103AC2F06487AF2EC4EB9000047082F0A4EB900003E0020454A90670001AE30
-S321000103C8601E2F02487A029E4E944A80665841F910000000D1FC000089963083AE
-S321000103E46000018E2C3C000106742F022F064E944A80670620454A90674E41F977
-S3210001040010000000D1FC0000897A71D026802F002F06487AF2884EB9000047081C
-S3210001041C2F0A4EB900003E0020454A906700014A601E2F02487A02424E944A80ED
-S32100010438665C41F910000000D1FC0000897A30836000012A4A8467462C3C0001A3
-S32100010454067C2F022F064E944A80670620454A90675241F910000000D1FC000075
-S32100010470899A71D026802F002F06487AF2204EB9000047082F0A4EB900003E0053
-S3210001048C20454A90670000E260222F02487A01E24E944A80661241F910000000FF
-S321000104A8D1FC0000899A3083600000C24A8467442C3C000106842F022F064E94B8
-S321000104C44A80670620454A90674A41F910000000D1FC0000897E71D026802F00BA
-S321000104E02F06487AF1B84EB9000047082F0A4EB900003E0020454A90677A601CE9
-S321000104FC2F02487A01844E944A80665241F910000000D1FC0000897E3083605C74
-S321000105184A84673E263C0001068C2F022F034E944A80670620454A90674241F9BA
-S3210001053410000000D1FC0000899E71D026802F002F03487AF1544EB900004708FB
-S321000105502F0A4EB900003E00601A2F02487A012E4E944A80660E41F91000000004
-S3210001056CD1FC0000899E30834CEE1C7CFFE04E5E4E7551FC4D52330053523300AE
-S32100010588435352330051FC5143523300524233005442330049504352330051FC91
-S321000105A4414352330051FC51495352330051FC51494D52330051FC5143545552D7
-S321000105C0330051FC43544C52330051FC495033004F505345543300514F505245D2
-S321000105DC534554330051FC5153494352330051FC49524352313300514952435279
-S321000105F832330051495253445233005149524D4452330051495246445233005125
-S321000106145246434E543300515446434E5433005152465352330051FC54465352C3
-S32100010630330051FC52464352330051FC54464352330051FC52464152330051FC20
-S3210001064C54464152330051FC52465250330051FC54465250330051FC5246575029
-S32100010668330051FC54465750330051FC524C524650330051544C52465033005118
-S32100010684524C574650330051544C5746503300514E56FFE048D71C7C242E00089F
-S321000106A0282E000C262E001045F90002B3F447EA000441EAFFFC49F900004F900E
-S321000106BC2A084A8467462C3C000115582F022F064E944A80670620454A90674E25
-S321000106D841F910000000D1FC00008800719026802F002F06487AEF9E4EB90000FF
-S321000106F447082F0A4EB900003E0020454A9067000E48601E2F02487A0E4C4E946D
-S321000107104A80665841F910000000D1FC00008800108360000E282C3C0001155C9C
-S3210001072C2F022F064E944A80670620454A90674E41F910000000D1FC0000880494
-S3210001074871D026802F002F06487AEF4A4EB9000047082F0A4EB900003E0020450F
-S321000107644A9067000DE4601E2F02487A0DEC4E944A80665C41F910000000D1FC51
-S3210001078000008804308360000DC44A8467462C3C000115602F022F064E944A807B
-S3210001079C670620454A90674E41F910000000D1FC00008804719026802F002F062B
-S321000107B8487AEED24EB9000047082F0A4EB900003E0020454A9067000D7C601E1B
-S321000107D42F02487A0D884E944A80665841F910000000D1FC00008804108360007A
-S321000107F00D5C2C3C000115682F022F064E944A80670620454A90674E41F91000DA
-S3210001080C0000D1FC00008808719026802F002F06487AEE6E4EB9000047082F0AB4
-S321000108284EB900003E0020454A9067000D18601E2F02487A0D2C4E944A80665A87
-S3210001084441F910000000D1FC00008808108360000CF84A8467442C3C0001156C90
-S321000108602F022F064E944A80670620454A90673E41F910000000D1FC0000880C67
-S3210001087C26902F132F06487AEE284EB9000047082F0A4EB900003E0020454A9041
-S3210001089867000CB260102F02487A0CCA4E944A8067544A8467442C3C0001157011
-S321000108B42F022F064E944A80670620454A90674C41F910000000D1FC0000880C05
-S321000108D026902F132F06487AEDD44EB9000047082F0A4EB900003E0020454A9042
-S321000108EC67000C5E601E2F02487A0C7A4E944A80665C41F910000000D1FC00009C
-S32100010908880C208360000C3E4A8467462C3C000115742F022F064E944A806706FF
-S3210001092420454A90673E41F910000000D1FC00008810719026802F002F06487A50
-S32100010940ED4C4EB9000047082F0A4EB900003E0020454A9067000BF6600E2F0241
-S3210001095C487A0C164E944A80664860522C3C0001157C2F022F064E944A8067060F
-S3210001097820454A90674E41F910000000D1FC00008810719026802F002F06487AEC
-S32100010994ECF84EB9000047082F0A4EB900003E0020454A9067000BA2601E2F0286
-S321000109B0487A0BCA4E944A80665C41F910000000D1FC00008810108360000B82F0
-S321000109CC4A8467462C3C000115842F022F064E944A80670620454A90673E41F9EE
-S321000109E810000000D1FC0000881471D026802F002F06487AECA04EB90000470884
-S32100010A042F0A4EB900003E0020454A9067000B3A600E2F02487A0B6A4E944A80E4
-S32100010A20664860522C3C0001158C2F022F064E944A80670620454A90674E41F99C
-S32100010A3C10000000D1FC0000881471D026802F002F06487AEC4C4EB90000470883
-S32100010A582F0A4EB900003E0020454A9067000AE6601E2F02487A0B1E4E944A8021
-S32100010A74665C41F910000000D1FC00008814308360000AC64A8467462C3C000123
-S32100010A9015942F022F064E944A80670620454A90675241F910000000D1FC00000C
-S32100010AAC8818719026802F002F06487AEBD44EB9000047082F0A4EB900003E0027
-S32100010AC820454A9067000A7E60222F02487A0ABE4E944A80661241F91000000032
-S32100010AE4D1FC00008818108360000A5E4A8467462C3C0001159C2F022F064E944A
-S32100010B004A80670620454A90674E41F910000000D1FC0000881C719026802F0016
-S32100010B1C2F06487AEB6C4EB9000047082F0A4EB900003E0020454A9067000A16CE
-S32100010B38601E2F02487A0A5E4E944A80665C41F910000000D1FC0000881C108305
-S32100010B54600009F64A8467462C3C000115A42F022F064E944A80670620454A90C4
-S32100010B70674E41F910000000D1FC00008834719026802F002F06487AEB044EB917
-S32100010B8C000047082F0A4EB900003E0020454A90670009AE601E2F02487A09FEA4
-S32100010BA84E944A80665841F910000000D1FC0000883410836000098E2C3C0001FA
-S32100010BC415A82F022F064E944A80670620454A90674E41F910000000D1FC0000C7
-S32100010BE08838719026802F002F06487AEAA04EB9000047082F0A4EB900003E0007
-S32100010BFC20454A906700094A601E2F02487A099E4E944A80665C41F9100000000D
-S32100010C18D1FC0000883810836000092A4A8467462C3C000115B02F022F064E9415
-S32100010C344A80670620454A90674E41F910000000D1FC0000883C719026802F00C1
-S32100010C502F06487AEA384EB9000047082F0A4EB900003E0020454A90670008E204
-S32100010C6C601E2F02487A093E4E944A80665841F910000000D1FC0000883C1083D5
-S32100010C88600008C22C3C000115BC2F022F064E944A80670620454A90674E41F938
-S32100010CA410000000D1FC00008840719026802F002F06487AE9D44EB900004708A8
-S32100010CC02F0A4EB900003E0020454A906700087E601E2F02487A08E64E944A805C
-S32100010CDC665C41F910000000D1FC0000884010836000085E4A8467462C3C000117
-S32100010CF815C42F022F064E944A80670620454A90675241F910000000D1FC000072
-S32100010D148844719026802F002F06487AE96C4EB9000047082F0A4EB900003E00FA
-S32100010D3020454A906700081660222F02487A08864E944A80661241F9100000006B
-S32100010D4CD1FC000088441083600007F64A8467462C3C000115CC2F022F064E94EE
-S32100010D684A80670620454A90674E41F910000000D1FC00008848719026802F0080
-S32100010D842F06487AE9044EB9000047082F0A4EB900003E0020454A90670007AE39
-S32100010DA0601E2F02487A08264E944A80665C41F910000000D1FC000088481083A9
-S32100010DBC6000078E4A8467462C3C000115D42F022F064E944A80670620454A9094
-S32100010DD8674E41F910000000D1FC0000884C719026802F002F06487AE89C4EB900
-S32100010DF4000047082F0A4EB900003E0020454A9067000746601E2F02487A07C6DE
-S32100010E104E944A80665841F910000000D1FC0000884C1083600007262C3C0001E1
-S32100010E2C15DC2F022F064E944A80670620454A90674E41F910000000D1FC000028
-S32100010E488850719026802F002F06487AE8384EB9000047082F0A4EB900003E00EE
-S32100010E6420454A90670006E2601E2F02487A076A4E944A80665C41F91000000043
-S32100010E80D1FC000088501083600006C24A8467462C3C000115E42F022F064E94CA
-S32100010E9C4A80670620454A90674E41F910000000D1FC00008854719026802F003F
-S32100010EB82F06487AE7D04EB9000047082F0A4EB900003E0020454A906700067A6F
-S32100010ED4601E2F02487A070A4E944A80665841F910000000D1FC00008854108389
-S32100010EF06000065A2C3C000115EC2F022F064E944A80670620454A90674E41F908
-S32100010F0C10000000D1FC0000885871D026802F002F06487AE77C4EB9000047083F
-S32100010F282F0A4EB900003E0020454A9067000616601E2F02487A06AE4E944A8095
-S32100010F44665C41F910000000D1FC000088583083600005F64A8467462C3C0001DF
-S32100010F6015F42F022F064E944A80670620454A90675241F910000000D1FC0000D7
-S32100010F7C885C71D026802F002F06487AE7144EB9000047082F0A4EB900003E0092
-S32100010F9820454A90670005AE60222F02487A064E4E944A80661241F910000000A6
-S32100010FB4D1FC0000885C30836000058E4A8467462C3C000115FC2F022F064E9486
-S32100010FD04A80670620454A90674E41F910000000D1FC0000886471D026802F00BA
-S32100010FEC2F06487AE6AC4EB9000047082F0A4EB900003E0020454A906700054694
-S32100011008601E2F02487A05EE4E944A80665C41F910000000D1FC0000886430833D
-S32100011024600005264A8467462C3C000116042F022F064E944A80670620454A9062
-S32100011040674E41F910000000D1FC0000888471D026802F002F06487AE6444EB977
-S3210001105C000047082F0A4EB900003E0020454A90670004DE601E2F02487A058E18
-S321000110784E944A80665641F910000000D1FC000088843083600004BE2C3C00018C
-S32100011094160C2F022F064E944A80670620454A90674C41F910000000D1FC00008F
-S321000110B0886826902F132F06487AE5F24EB9000047082F0A4EB900003E0020452E
-S321000110CC4A906700047C601E2F02487A05344E944A80665A41F910000000D1FC13
-S321000110E80000886820836000045C4A8467442C3C000116142F022F064E944A8074
-S32100011104670620454A90674C41F910000000D1FC0000888826902F132F06487A53
-S32100011120E58C4EB9000047082F0A4EB900003E0020454A9067000416601E2F02F8
-S3210001113C487A04D64E944A80665841F910000000D1FC000088882083600003F667
-S321000111582C3C0001161C2F022F064E944A80670620454A90674E41F9100000001C
-S32100011174D1FC0000886E71D026802F002F06487AE5184EB9000047082F0A4EB9F5
-S3210001119000003E0020454A90670003B2601E2F02487A047A4E944A80665C41F90C
-S321000111AC10000000D1FC0000886E3083600003924A8467462C3C000116242F0256
-S321000111C82F064E944A80670620454A90675241F910000000D1FC0000888E71D050
-S321000111E426802F002F06487AE4B04EB9000047082F0A4EB900003E0020454A9075
-S321000112006700034A60222F02487A041A4E944A80661241F910000000D1FC000049
-S3210001121C888E30836000032A4A8467462C3C0001162C2F022F064E944A806706B4
-S3210001123820454A90674E41F910000000D1FC0000887271D026802F002F06487A81
-S32100011254E4484EB9000047082F0A4EB900003E0020454A90670002E2601E2F023E
-S32100011270487A03BA4E944A80665C41F910000000D1FC000088723083600002C286
-S3210001128C4A8467462C3C000116342F022F064E944A80670620454A90674E41F964
-S321000112A810000000D1FC0000889271D026802F002F06487AE3E04EB90000470806
-S321000112C42F0A4EB900003E0020454A906700027A601E2F02487A035A4E944A80ED
-S321000112E0665841F910000000D1FC0000889230836000025A2C3C0001163C2F02A1
-S321000112FC2F064E944A80670620454A90674E41F910000000D1FC0000887671D037
-S3210001131826802F002F06487AE37C4EB9000047082F0A4EB900003E0020454A9074
-S3210001133467000216601E2F02487A02FE4E944A80665C41F910000000D1FC000021
-S3210001135088763083600001F64A8467462C3C000116442F022F064E944A806706B5
-S3210001136C20454A90674E41F910000000D1FC0000889671D026802F002F06487A28
-S32100011388E3144EB9000047082F0A4EB900003E0020454A90670001AE601E2F0273
-S321000113A4487A029E4E944A80665841F910000000D1FC0000889630836000018E83
-S321000113C02C3C0001164C2F022F064E944A80670620454A90674E41F91000000082
-S321000113DCD1FC0000887A71D026802F002F06487AE2B04EB9000047082F0A4EB9EA
-S321000113F800003E0020454A906700014A601E2F02487A02424E944A80665C41F946
-S3210001141410000000D1FC0000887A30836000012A4A8467462C3C000116542F0219
-S321000114302F064E944A80670620454A90675241F910000000D1FC0000889A71D0D9
-S3210001144C26802F002F06487AE2484EB9000047082F0A4EB900003E0020454A9074
-S32100011468670000E260222F02487A01E24E944A80661241F910000000D1FC000085
-S32100011484889A3083600000C24A8467442C3C0001165C2F022F064E944A8067067B
-S321000114A020454A90674A41F910000000D1FC0000887E71D026802F002F06487A0F
-S321000114BCE1E04EB9000047082F0A4EB900003E0020454A90677A601C2F02487AE9
-S321000114D801844E944A80665241F910000000D1FC0000887E3083605C4A84673E09
-S321000114F4263C000116642F022F034E944A80670620454A90674241F9100000004A
-S32100011510D1FC0000889E71D026802F002F03487AE17C4EB9000047082F0A4EB9C8
-S3210001152C00003E00601A2F02487A012E4E944A80660E41F910000000D1FC00008B
-S32100011548889E30834CEE1C7CFFE04E5E4E7551FC4D523200535232004353523278
-S321000115640051FC5143523200524232005442320049504352320051FC41435232BC
-S321000115800051FC51495352320051FC51494D52320051FC5143545552320051FC77
-S3210001159C43544C52320051FC495032004F505345543200514F505245534554324B
-S321000115B80051FC5153494352320051FC49524352313200514952435232320051F9
-S321000115D4495253445232005149524D445232005149524644523200515246434EC9
-S321000115F0543200515446434E5432005152465352320051FC54465352320051FC85
-S3210001160C52464352320051FC54464352320051FC52464152320051FC544641528A
-S32100011628320051FC52465250320051FC54465250320051FC52465750320051FCEE
-S3210001164454465750320051FC524C524650320051544C524650320051524C574674
-S3210001166050320051544C5746503200514E56FFE048D71C7C242E0008282E000C8E
-S3210001167C262E001045F90002B3F447EA000441EAFFFC49F900004F902A084A8484
-S3210001169867462C3C000125302F022F064E944A80670620454A90674E41F9100007
-S321000116B40000D1FC00008700719026802F002F06487ADFC64EB9000047082F0ABE
-S321000116D04EB900003E0020454A9067000E48601E2F02487A0E4C4E944A80665881
-S321000116EC41F910000000D1FC00008700108360000E282C3C000125342F022F06EC
-S321000117084E944A80670620454A90674E41F910000000D1FC0000870471D0268028
-S321000117242F002F06487ADF724EB9000047082F0A4EB900003E0020454A906700B1
-S321000117400DE4601E2F02487A0DEC4E944A80665C41F910000000D1FC000087041B
-S3210001175C308360000DC44A8467462C3C000125382F022F064E944A806706204561
-S321000117784A90674E41F910000000D1FC00008704719026802F002F06487ADEFA78
-S321000117944EB9000047082F0A4EB900003E0020454A9067000D7C601E2F02487ABE
-S321000117B00D884E944A80665841F910000000D1FC00008704108360000D5C2C3CB1
-S321000117CC000125402F022F064E944A80670620454A90674E41F910000000D1FC0A
-S321000117E800008708719026802F002F06487ADE964EB9000047082F0A4EB9000078
-S321000118043E0020454A9067000D18601E2F02487A0D2C4E944A80665A41F9100058
-S321000118200000D1FC00008708108360000CF84A8467442C3C000125442F022F06A1
-S3210001183C4E944A80670620454A90673E41F910000000D1FC0000870C26902F13EA
-S321000118582F06487ADE504EB9000047082F0A4EB900003E0020454A9067000CB210
-S3210001187460102F02487A0CCA4E944A8067544A8467442C3C000125482F022F06FC
-S321000118904E944A80670620454A90674C41F910000000D1FC0000870C26902F1388
-S321000118AC2F06487ADDFC4EB9000047082F0A4EB900003E0020454A9067000C5E65
-S321000118C8601E2F02487A0C7A4E944A80665C41F910000000D1FC0000870C20834B
-S321000118E460000C3E4A8467462C3C0001254C2F022F064E944A80670620454A9024
-S32100011900673E41F910000000D1FC00008710719026802F002F06487ADD744EB94C
-S3210001191C000047082F0A4EB900003E0020454A9067000BF6600E2F02487A0C16B1
-S321000119384E944A80664860522C3C000125542F022F064E944A80670620454A90E0
-S32100011954674E41F910000000D1FC00008710719026802F002F06487ADD204EB93C
-S32100011970000047082F0A4EB900003E0020454A9067000BA2601E2F02487A0BCAEE
-S3210001198C4E944A80665C41F910000000D1FC00008710108360000B824A84674621
-S321000119A82C3C0001255C2F022F064E944A80670620454A90673E41F91000000085
-S321000119C4D1FC0000871471D026802F002F06487ADCC84EB9000047082F0A4EB951
-S321000119E000003E0020454A9067000B3A600E2F02487A0B6A4E944A8066486052D9
-S321000119FC2C3C000125642F022F064E944A80670620454A90674E41F91000000019
-S32100011A18D1FC0000871471D026802F002F06487ADC744EB9000047082F0A4EB950
-S32100011A3400003E0020454A9067000AE6601E2F02487A0B1E4E944A80665C41F979
-S32100011A5010000000D1FC00008714308360000AC64A8467462C3C0001256C2F0272
-S32100011A6C2F064E944A80670620454A90675241F910000000D1FC0000871871905A
-S32100011A8826802F002F06487ADBFC4EB9000047082F0A4EB900003E0020454A9085
-S32100011AA467000A7E60222F02487A0ABE4E944A80661241F910000000D1FC0000B8
-S32100011AC08718108360000A5E4A8467462C3C000125742F022F064E944A8067060D
-S32100011ADC20454A90674E41F910000000D1FC0000871C719026802F002F06487A6C
-S32100011AF8DB944EB9000047082F0A4EB900003E0020454A9067000A16601E2F0213
-S32100011B14487A0A5E4E944A80665C41F910000000D1FC0000871C1083600009F66A
-S32100011B304A8467462C3C0001257C2F022F064E944A80670620454A90674E41F960
-S32100011B4C10000000D1FC00008734719026802F002F06487ADB2C4EB900004708B4
-S32100011B682F0A4EB900003E0020454A90670009AE601E2F02487A09FE4E944A805B
-S32100011B84665841F910000000D1FC0000873410836000098E2C3C000125802F02E5
-S32100011BA02F064E944A80670620454A90674E41F910000000D1FC00008738719009
-S32100011BBC26802F002F06487ADAC84EB9000047082F0A4EB900003E0020454A9085
-S32100011BD86700094A601E2F02487A099E4E944A80665C41F910000000D1FC000093
-S32100011BF4873810836000092A4A8467462C3C000125882F022F064E944A806706D9
-S32100011C1020454A90674E41F910000000D1FC0000873C719026802F002F06487A16
-S32100011C2CDA604EB9000047082F0A4EB900003E0020454A90670008E2601E2F0248
-S32100011C48487A093E4E944A80665841F910000000D1FC0000873C1083600008C26F
-S32100011C642C3C000125942F022F064E944A80670620454A90674E41F9100000007E
-S32100011C80D1FC00008740719026802F002F06487AD9FC4EB9000047082F0A4EB975
-S32100011C9C00003E0020454A906700087E601E2F02487A08E64E944A80665C41F9B4
-S32100011CB810000000D1FC0000874010836000085E4A8467462C3C0001259C2F0236
-S32100011CD42F064E944A80670620454A90675241F910000000D1FC000087447190C4
-S32100011CF026802F002F06487AD9944EB9000047082F0A4EB900003E0020454A9085
-S32100011D0C6700081660222F02487A08864E944A80661241F910000000D1FC0000F1
-S32100011D2887441083600007F64A8467462C3C000125A42F022F064E944A806706B1
-S32100011D4420454A90674E41F910000000D1FC00008748719026802F002F06487AD5
-S32100011D60D92C4EB9000047082F0A4EB900003E0020454A90670007AE601E2F027D
-S32100011D7C487A08264E944A80665C41F910000000D1FC0000874810836000078E78
-S32100011D984A8467462C3C000125AC2F022F064E944A80670620454A90674E41F9C6
-S32100011DB410000000D1FC0000874C719026802F002F06487AD8C44EB9000047089D
-S32100011DD02F0A4EB900003E0020454A9067000746601E2F02487A07C64E944A8095
-S32100011DEC665841F910000000D1FC0000874C1083600007262C3C000125B42F0299
-S32100011E082F064E944A80670620454A90674E41F910000000D1FC00008750719086
-S32100011E2426802F002F06487AD8604EB9000047082F0A4EB900003E0020454A9084
-S32100011E40670006E2601E2F02487A076A4E944A80665C41F910000000D1FC0000C9
-S32100011E5C87501083600006C24A8467462C3C000125BC2F022F064E944A8067068D
-S32100011E7820454A90674E41F910000000D1FC00008754719026802F002F06487A94
-S32100011E94D7F84EB9000047082F0A4EB900003E0020454A906700067A601E2F02B3
-S32100011EB0487A070A4E944A80665841F910000000D1FC0000875410836000065A8D
-S32100011ECC2C3C000125C42F022F064E944A80670620454A90674E41F910000000E4
-S32100011EE8D1FC0000875871D026802F002F06487AD7A44EB9000047082F0A4EB90D
-S32100011F0400003E0020454A9067000616601E2F02487A06AE4E944A80665C41F9ED
-S32100011F2010000000D1FC000087583083600005F64A8467462C3C000125CC2F02CE
-S32100011F3C2F064E944A80670620454A90675241F910000000D1FC0000875C71D001
-S32100011F5826802F002F06487AD73C4EB9000047082F0A4EB900003E0020454A9074
-S32100011F74670005AE60222F02487A064E4E944A80661241F910000000D1FC00002C
-S32100011F90875C30836000058E4A8467462C3C000125D42F022F064E944A80670649
-S32100011FAC20454A90674E41F910000000D1FC0000876471D026802F002F06487A0F
-S32100011FC8D6D44EB9000047082F0A4EB900003E0020454A9067000546601E2F02D8
-S32100011FE4487A05EE4E944A80665C41F910000000D1FC0000876430836000052677
-S321000120004A8467462C3C000125DC2F022F064E944A80670620454A90674E41F92B
-S3210001201C10000000D1FC0000878471D026802F002F06487AD66C4EB90000470814
-S321000120382F0A4EB900003E0020454A90670004DE601E2F02487A058E4E944A80CF
-S32100012054665641F910000000D1FC000087843083600004BE2C3C000125E42F0213
-S321000120702F064E944A80670620454A90674C41F910000000D1FC00008768269051
-S3210001208C2F132F06487AD61A4EB9000047082F0A4EB900003E0020454A9067008E
-S321000120A8047C601E2F02487A05344E944A80665A41F910000000D1FC0000876879
-S321000120C420836000045C4A8467442C3C000125EC2F022F064E944A8067062045BF
-S321000120E04A90674C41F910000000D1FC0000878826902F132F06487AD5B44EB9AB
-S321000120FC000047082F0A4EB900003E0020454A9067000416601E2F02487A04D6E9
-S321000121184E944A80665841F910000000D1FC000087882083600003F62C3C0001AF
-S3210001213425F42F022F064E944A80670620454A90674E41F910000000D1FC0000E5
-S32100012150876E71D026802F002F06487AD5404EB9000047082F0A4EB900003E0081
-S3210001216C20454A90670003B2601E2F02487A047A4E944A80665C41F9100000004E
-S32100012188D1FC0000876E3083600003924A8467462C3C000125FC2F022F064E947D
-S321000121A44A80670620454A90675241F910000000D1FC0000878E71D026802F00A7
-S321000121C02F06487AD4D84EB9000047082F0A4EB900003E0020454A906700034A92
-S321000121DC60222F02487A041A4E944A80661241F910000000D1FC0000878E30834A
-S321000121F86000032A4A8467462C3C000126042F022F064E944A80670620454A906B
-S32100012214674E41F910000000D1FC0000877271D026802F002F06487AD4704EB98A
-S32100012230000047082F0A4EB900003E0020454A90670002E2601E2F02487A03BA06
-S3210001224C4E944A80665C41F910000000D1FC000087723083600002C24A8467469F
-S321000122682C3C0001260C2F022F064E944A80670620454A90674E41F910000000FB
-S32100012284D1FC0000879271D026802F002F06487AD4084EB9000047082F0A4EB9D2
-S321000122A000003E0020454A906700027A601E2F02487A035A4E944A80665841F949
-S321000122BC10000000D1FC0000879230836000025A2C3C000126142F022F064E94AF
-S321000122D84A80670620454A90674E41F910000000D1FC0000877671D026802F008E
-S321000122F42F06487AD3A44EB9000047082F0A4EB900003E0020454A9067000216C7
-S32100012310601E2F02487A02FE4E944A80665C41F910000000D1FC00008776308304
-S3210001232C600001F64A8467462C3C0001261C2F022F064E944A80670620454A9053
-S32100012348674E41F910000000D1FC0000879671D026802F002F06487AD33C4EB966
-S32100012364000047082F0A4EB900003E0020454A90670001AE601E2F02487A029E23
-S321000123804E944A80665841F910000000D1FC0000879630836000018E2C3C000191
-S3210001239C26242F022F064E944A80670620454A90674E41F910000000D1FC00004A
-S321000123B8877A71D026802F002F06487AD2D84EB9000047082F0A4EB900003E0076
-S321000123D420454A906700014A601E2F02487A02424E944A80665C41F91000000088
-S321000123F0D1FC0000877A30836000012A4A8467462C3C0001262C2F022F064E9440
-S3210001240C4A80670620454A90675241F910000000D1FC0000879A71D026802F0030
-S321000124282F06487AD2704EB9000047082F0A4EB900003E0020454A90670000E2FC
-S3210001244460222F02487A01E24E944A80661241F910000000D1FC0000879A30830E
-S32100012460600000C24A8467442C3C000126342F022F064E944A80670620454A903D
-S3210001247C674A41F910000000D1FC0000877E71D026802F002F06487AD2084EB982
-S32100012498000047082F0A4EB900003E0020454A90677A601C2F02487A01844E945E
-S321000124B44A80665241F910000000D1FC0000877E3083605C4A84673E263C000122
-S321000124D0263C2F022F034E944A80670620454A90674241F910000000D1FC00000C
-S321000124EC879E71D026802F002F03487AD1A44EB9000047082F0A4EB900003E0055
-S32100012508601A2F02487A012E4E944A80660E41F910000000D1FC0000879E308305
-S321000125244CEE1C7CFFE04E5E4E7551FC4D52310053523100435352310051FC51CA
-S3210001254043523100524231005442310049504352310051FC414352310051FC51D5
-S3210001255C495352310051FC51494D52310051FC5143545552310051FC43544C52F7
-S32100012578310051FC495031004F505345543100514F505245534554310051FC51FA
-S3210001259453494352310051FC49524352313100514952435232310051495253447C
-S321000125B05231005149524D445231005149524644523100515246434E543100513C
-S321000125CC5446434E5431005152465352310051FC54465352310051FC5246435246
-S321000125E8310051FC54464352310051FC52464152310051FC54464152310051FC51
-S3210001260452465250310051FC54465250310051FC52465750310051FC5446575043
-S32100012620310051FC524C524650310051544C524650310051524C574650310051FA
-S3210001263C544C5746503100514E56FFE048D71C7C242E0008282E000C262E001012
-S3210001265845F90002B3F447EA000441EAFFFC49F900004F902A084A8467462C3CE7
-S32100012674000135082F022F064E944A80670620454A90674E41F910000000D1FC7B
-S3210001269000008600719026802F002F06487ACFEE4EB9000047082F0A4EB9000081
-S321000126AC3E0020454A9067000E48601E2F02487A0E4C4E944A80665841F9100052
-S321000126C80000D1FC00008600108360000E282C3C0001350C2F022F064E944A80B7
-S321000126E4670620454A90674E41F910000000D1FC0000860471D026802F002F0686
-S32100012700487ACF9A4EB9000047082F0A4EB900003E0020454A9067000DE4601EA2
-S3210001271C2F02487A0DEC4E944A80665C41F910000000D1FC00008604308360008C
-S321000127380DC44A8467462C3C000135102F022F064E944A80670620454A90674E11
-S3210001275441F910000000D1FC00008604719026802F002F06487ACF224EB90000FC
-S3210001277047082F0A4EB900003E0020454A9067000D7C601E2F02487A0D884E9462
-S3210001278C4A80665841F910000000D1FC00008604108360000D5C2C3C00013518EF
-S321000127A82F022F064E944A80670620454A90674E41F910000000D1FC00008608F6
-S321000127C4719026802F002F06487ACEBE4EB9000047082F0A4EB900003E00204560
-S321000127E04A9067000D18601E2F02487A0D2C4E944A80665A41F910000000D1FC43
-S321000127FC00008608108360000CF84A8467442C3C0001351C2F022F064E944A80F0
-S32100012818670620454A90673E41F910000000D1FC0000860C26902F132F06487AB4
-S32100012834CE784EB9000047082F0A4EB900003E0020454A9067000CB260102F0262
-S32100012850487A0CCA4E944A8067544A8467442C3C000135202F022F064E944A801D
-S3210001286C670620454A90674C41F910000000D1FC0000860C26902F132F06487A52
-S32100012888CE244EB9000047082F0A4EB900003E0020454A9067000C5E601E2F02A8
-S321000128A4487A0C7A4E944A80665C41F910000000D1FC0000860C208360000C3E65
-S321000128C04A8467462C3C000135242F022F064E944A80670620454A90673E41F91B
-S321000128DC10000000D1FC00008610719026802F002F06487ACD9C4EB900004708DA
-S321000128F82F0A4EB900003E0020454A9067000BF6600E2F02487A0C164E944A8069
-S32100012914664860522C3C0001352C2F022F064E944A80670620454A90674E41F9C9
-S3210001293010000000D1FC00008610719026802F002F06487ACD484EB900004708D9
-S3210001294C2F0A4EB900003E0020454A9067000BA2601E2F02487A0BCA4E944A80A5
-S32100012968665C41F910000000D1FC00008610108360000B824A8467462C3C000179
-S3210001298435342F022F064E944A80670620454A90673E41F910000000D1FC00004D
-S321000129A0861471D026802F002F06487ACCF04EB9000047082F0A4EB900003E00DD
-S321000129BC20454A9067000B3A600E2F02487A0B6A4E944A80664860522C3C0001C2
-S321000129D8353C2F022F064E944A80670620454A90674E41F910000000D1FC0000E1
-S321000129F4861471D026802F002F06487ACC9C4EB9000047082F0A4EB900003E00DD
-S32100012A1020454A9067000AE6601E2F02487A0B1E4E944A80665C41F910000000BB
-S32100012A2CD1FC00008614308360000AC64A8467462C3C000135442F022F064E9498
-S32100012A484A80670620454A90675241F910000000D1FC00008618719026802F00B1
-S32100012A642F06487ACC244EB9000047082F0A4EB900003E0020454A9067000A7E66
-S32100012A8060222F02487A0ABE4E944A80661241F910000000D1FC0000861810838A
-S32100012A9C60000A5E4A8467462C3C0001354C2F022F064E944A80670620454A902C
-S32100012AB8674E41F910000000D1FC0000861C719026802F002F06487ACBBC4EB932
-S32100012AD4000047082F0A4EB900003E0020454A9067000A16601E2F02487A0A5E73
-S32100012AF04E944A80665C41F910000000D1FC0000861C1083600009F64A8467462F
-S32100012B0C2C3C000135542F022F064E944A80670620454A90674E41F910000000F7
-S32100012B28D1FC00008634719026802F002F06487ACB544EB9000047082F0A4EB981
-S32100012B4400003E0020454A90670009AE601E2F02487A09FE4E944A80665841F9B7
-S32100012B6010000000D1FC0000863410836000098E2C3C000135582F022F064E94F3
-S32100012B7C4A80670620454A90674E41F910000000D1FC00008638719026802F0060
-S32100012B982F06487ACAF04EB9000047082F0A4EB900003E0020454A906700094A9C
-S32100012BB4601E2F02487A099E4E944A80665C41F910000000D1FC00008638108310
-S32100012BD06000092A4A8467462C3C000135602F022F064E944A80670620454A9018
-S32100012BEC674E41F910000000D1FC0000863C719026802F002F06487ACA884EB912
-S32100012C08000047082F0A4EB900003E0020454A90670008E2601E2F02487A093E94
-S32100012C244E944A80665841F910000000D1FC0000863C1083600008C22C3C000124
-S32100012C40356C2F022F064E944A80670620454A90674E41F910000000D1FC000046
-S32100012C5C8640719026802F002F06487ACA244EB9000047082F0A4EB900003E0000
-S32100012C7820454A906700087E601E2F02487A08E64E944A80665C41F910000000F6
-S32100012C94D1FC0000864010836000085E4A8467462C3C000135742F022F064E945C
-S32100012CB04A80670620454A90675241F910000000D1FC00008644719026802F001B
-S32100012CCC2F06487AC9BC4EB9000047082F0A4EB900003E0020454A9067000816D1
-S32100012CE860222F02487A08864E944A80661241F910000000D1FC0000864410832E
-S32100012D04600007F64A8467462C3C0001357C2F022F064E944A80670620454A90FC
-S32100012D20674E41F910000000D1FC00008648719026802F002F06487AC9544EB905
-S32100012D3C000047082F0A4EB900003E0020454A90670007AE601E2F02487A0826AD
-S32100012D584E944A80665C41F910000000D1FC0000864810836000078E4A84674602
-S32100012D742C3C000135842F022F064E944A80670620454A90674E41F9100000005D
-S32100012D90D1FC0000864C719026802F002F06487AC8EC4EB9000047082F0A4EB96A
-S32100012DAC00003E0020454A9067000746601E2F02487A07C64E944A80665841F9F1
-S32100012DC810000000D1FC0000864C1083600007262C3C0001358C2F022F064E94A7
-S32100012DE44A80670620454A90674E41F910000000D1FC00008650719026802F00DE
-S32100012E002F06487AC8884EB9000047082F0A4EB900003E0020454A90670006E206
-S32100012E1C601E2F02487A076A4E944A80665C41F910000000D1FC000086501083C3
-S32100012E38600006C24A8467462C3C000135942F022F064E944A80670620454A90E4
-S32100012E54674E41F910000000D1FC00008654719026802F002F06487AC8204EB9F9
-S32100012E70000047082F0A4EB900003E0020454A906700067A601E2F02487A070ACA
-S32100012E8C4E944A80665841F910000000D1FC0000865410836000065A2C3C00010C
-S32100012EA8359C2F022F064E944A80670620454A90674E41F910000000D1FC0000AC
-S32100012EC4865871D026802F002F06487AC7CC4EB9000047082F0A4EB900003E0099
-S32100012EE020454A9067000616601E2F02487A06AE4E944A80665C41F91000000030
-S32100012EFCD1FC000086583083600005F64A8467462C3C000135A42F022F064E94F5
-S32100012F184A80670620454A90675241F910000000D1FC0000865C71D026802F0058
-S32100012F342F06487AC7644EB9000047082F0A4EB900003E0020454A90670005AE2B
-S32100012F5060222F02487A064E4E944A80661241F910000000D1FC0000865C3083C5
-S32100012F6C6000058E4A8467462C3C000135AC2F022F064E944A80670620454A90CC
-S32100012F88674E41F910000000D1FC0000866471D026802F002F06487AC6FC4EB99A
-S32100012FA4000047082F0A4EB900003E0020454A9067000546601E2F02487A05EEE8
-S32100012FC04E944A80665C41F910000000D1FC000086643083600005264A846746C6
-S32100012FDC2C3C000135B42F022F064E944A80670620454A90674E41F910000000C3
-S32100012FF8D1FC0000868471D026802F002F06487AC6944EB9000047082F0A4EB9E2
-S3210001301400003E0020454A90670004DE601E2F02487A058E4E944A80665641F92D
-S3210001303010000000D1FC000086843083600004BE2C3C000135BC2F022F064E941F
-S3210001304C4A80670620454A90674C41F910000000D1FC0000866826902F132F0606
-S32100013068487AC6424EB9000047082F0A4EB900003E0020454A906700047C601E03
-S321000130842F02487A05344E944A80665A41F910000000D1FC000086682083600089
-S321000130A0045C4A8467442C3C000135C42F022F064E944A80670620454A90674C61
-S321000130BC41F910000000D1FC0000868826902F132F06487AC5DC4EB900004708E6
-S321000130D82F0A4EB900003E0020454A9067000416601E2F02487A04D64E944A80A0
-S321000130F4665841F910000000D1FC000086882083600003F62C3C000135CC2F023F
-S321000131102F064E944A80670620454A90674E41F910000000D1FC0000866E71D00E
-S3210001312C26802F002F06487AC5684EB9000047082F0A4EB900003E0020454A9074
-S32100013148670003B2601E2F02487A047A4E944A80665C41F910000000D1FC0000D4
-S32100013164866E3083600003924A8467462C3C000135D42F022F064E944A80670640
-S3210001318020454A90675241F910000000D1FC0000868E71D026802F002F06487AFC
-S3210001319CC5004EB9000047082F0A4EB900003E0020454A906700034A60222F02D1
-S321000131B8487A041A4E944A80661241F910000000D1FC0000868E30836000032A85
-S321000131D44A8467462C3C000135DC2F022F064E944A80670620454A90674E41F936
-S321000131F010000000D1FC0000867271D026802F002F06487AC4984EB90000470828
-S3210001320C2F0A4EB900003E0020454A90670002E2601E2F02487A03BA4E944A80BD
-S32100013228665C41F910000000D1FC000086723083600002C24A8467462C3C0001F7
-S3210001324435E42F022F064E944A80670620454A90674E41F910000000D1FC0000C4
-S32100013260869271D026802F002F06487AC4304EB9000047082F0A4EB900003E005E
-S3210001327C20454A906700027A601E2F02487A035A4E944A80665841F9100000008B
-S32100013298D1FC0000869230836000025A2C3C000135EC2F022F064E944A806706B6
-S321000132B420454A90674E41F910000000D1FC0000867671D026802F002F06487AE3
-S321000132D0C3CC4EB9000047082F0A4EB900003E0020454A9067000216601E2F020B
-S321000132EC487A02FE4E944A80665C41F910000000D1FC000086763083600001F672
-S321000133084A8467462C3C000135F42F022F064E944A80670620454A90674E41F9E8
-S3210001332410000000D1FC0000869671D026802F002F06487AC3644EB90000470803
-S321000133402F0A4EB900003E0020454A90670001AE601E2F02487A029E4E944A80DA
-S3210001335C665841F910000000D1FC0000869630836000018E2C3C000135FC2F02F0
-S321000133782F064E944A80670620454A90674E41F910000000D1FC0000867A71D098
-S3210001339426802F002F06487AC3004EB9000047082F0A4EB900003E0020454A9074
-S321000133B06700014A601E2F02487A02424E944A80665C41F910000000D1FC00000E
-S321000133CC867A30836000012A4A8467462C3C000136042F022F064E944A80670603
-S321000133E820454A90675241F910000000D1FC0000869A71D026802F002F06487A86
-S32100013404C2984EB9000047082F0A4EB900003E0020454A90670000E260222F023C
-S32100013420487A01E24E944A80661241F910000000D1FC0000869A3083600000C2B4
-S3210001343C4A8467442C3C0001360C2F022F064E944A80670620454A90674A41F9A0
-S3210001345810000000D1FC0000867E71D026802F002F06487AC2304EB9000047081B
-S321000134742F0A4EB900003E0020454A90677A601C2F02487A01844E944A8066523F
-S3210001349041F910000000D1FC0000867E3083605C4A84673E263C000136142F023E
-S321000134AC2F034E944A80670620454A90674241F910000000D1FC0000869E71D04E
-S321000134C826802F002F03487AC1CC4EB9000047082F0A4EB900003E00601A2F020C
-S321000134E4487A012E4E944A80660E41F910000000D1FC0000869E30834CEE1C7CF4
-S32100013500FFE04E5E4E7551FC4D52300053523000435352300051FC5143523000EE
-S3210001351C524230005442300049504352300051FC414352300051FC514953523095
-S321000135380051FC51494D52300051FC5143545552300051FC43544C52300051FCAF
-S32100013554495030004F505345543000514F505245534554300051FC51534943525E
-S32100013570300051FC495243523130005149524352323000514952534452300051F1
-S3210001358C49524D445230005149524644523000515246434E543000515446434EFC
-S321000135A85430005152465352300051FC54465352300051FC52464352300051FC0B
-S321000135C454464352300051FC52464152300051FC54464152300051FC52465250AC
-S321000135E0300051FC54465250300051FC52465750300051FC54465750300051FC18
-S321000135FC524C524650300051544C524650300051524C574650300051544C574653
-S32100013618503000514E56FFE048D71C7C242E0008282E000C262E001045F9000224
-S32100013634B3F047EA000849F900004F902A3C100000004A8467402C3C0001811091
-S321000136502F022F064E944A8067044A9267462045D1FC0000B000719026802F0099
-S3210001366C2F06487AC01C4EB900004708486A00044EB900003E004A9267004A7E0C
-S32100013688601A2F02487A4A824E944A80664E2045D1FC0000B000108360004A6205
-S321000136A42C3C000181182F022F064E944A8067044A9267462045D1FC0000B00118
-S321000136C0719026802F002F06487ABFC24EB900004708486A00044EB900003E0048
-S321000136DC4A9267004A24601A2F02487A4A304E944A8066522045D1FC0000B001EC
-S321000136F8108360004A084A8467402C3C000181202F022F064E944A8067044A9292
-S3210001371467462045D1FC0000B003719026802F002F06487ABF644EB900004708BA
-S32100013730486A00044EB900003E004A92670049C6601A2F02487A49DA4E944A80ED
-S3210001374C664E2045D1FC0000B0031083600049AA2C3C000181282F022F064E9481
-S321000137684A8067044A9267462045D1FC0000B004719026802F002F06487ABF0A04
-S321000137844EB900004708486A00044EB900003E004A926700496C601A2F02487A6C
-S321000137A049884E944A8066522045D1FC0000B0041083600049504A8467402C3C82
-S321000137BC000181302F022F064E944A8067044A92674A2045D1FC0000B005719046
-S321000137D826802F002F06487ABEAC4EB900004708486A00044EB900003E004A926B
-S321000137F46700490E601E2F02487A49324E944A80660E2045D1FC0000B00510836E
-S32100013810600048F24A8467402C3C000181382F022F064E944A8067044A9267465E
-S3210001382C2045D1FC0000B006719026802F002F06487ABE4E4EB900004708486AB0
-S3210001384800044EB900003E004A92670048B0601A2F02487A48DC4E944A806652E4
-S321000138642045D1FC0000B0061083600048944A8467402C3C000181402F022F0685
-S321000138804E944A8067044A9267462045D1FC0000B00E71D026802F002F06487A88
-S3210001389CBE004EB900004708486A00044EB900003E004A9267004852601A2F0272
-S321000138B8487A48864E944A80664E2045D1FC0000B00E3083600048362C3C000113
-S321000138D481482F022F064E944A8067044A9267462045D1FC0000B01071D0268029
-S321000138F02F002F06487ABDA64EB900004708486A00044EB900003E004A92670098
-S3210001390C47F8601A2F02487A48344E944A8066522045D1FC0000B0103083600007
-S3210001392847DC4A8467402C3C000181502F022F064E944A8067044A92674620453F
-S32100013944D1FC0000B01471D026802F002F06487ABD484EB900004708486A0004B1
-S321000139604EB900003E004A926700479A601A2F02487A47DE4E944A80664E204584
-S3210001397CD1FC0000B01430836000477E2C3C000181582F022F064E944A80670400
-S321000139984A9267462045D1FC0000B04071D026802F002F06487ABCEE4EB90000A3
-S321000139B44708486A00044EB900003E004A9267004740601A2F02487A478C4E94BA
-S321000139D04A8066522045D1FC0000B0403083600047244A8467402C3C00018160F3
-S321000139EC2F022F064E944A8067044A92674A2045D1FC0000B04271D026802F0074
-S32100013A082F06487ABC904EB900004708486A00044EB900003E004A92670046E29C
-S32100013A24601E2F02487A47364E944A80660E2045D1FC0000B0423083600046C62E
-S32100013A404A8467402C3C000181682F022F064E944A8067044A9267462045D1FC64
-S32100013A5C0000B04471D026802F002F06487ABC324EB900004708486A00044EB945
-S32100013A7800003E004A9267004684601A2F02487A46E04E944A8066522045D1FCB7
-S32100013A940000B0443083600046684A8467402C3C000181702F022F064E944A8079
-S32100013AB067044A9267462045D1FC0000B04671D026802F002F06487ABBD44EB934
-S32100013ACC00004708486A00044EB900003E004A9267004626601A2F02487A468AA1
-S32100013AE84E944A80664E2045D1FC0000B04630836000460A2C3C000181782F023D
-S32100013B042F064E944A8067044A9267462045D1FC0000B04871D026802F002F0654
-S32100013B20487ABB7A4EB900004708486A00044EB900003E004A92670045CC601A6C
-S32100013B3C2F02487A46384E944A8066522045D1FC0000B0483083600045B04A8491
-S32100013B5867402C3C000181802F022F064E944A8067044A9267462045D1FC000001
-S32100013B74B04A71D026802F002F06487ABB1C4EB900004708486A00044EB900003D
-S32100013B903E004A926700456E601A2F02487A45E24E944A80664E2045D1FC0000B8
-S32100013BACB04A3083600045522C3C000181882F022F064E944A8067044A926746DA
-S32100013BC82045D1FC0000B04C71D026802F002F06487ABAC24EB900004708486A1B
-S32100013BE400044EB900003E004A9267004514601A2F02487A45904E944A80665233
-S32100013C002045D1FC0000B04C3083600044F84A8467402C3C000181902F022F06CF
-S32100013C1C4E944A8067044A92674A2045D1FC0000B04E71D026802F002F06487AA4
-S32100013C38BA644EB900004708486A00044EB900003E004A92670044B6601E2F020E
-S32100013C54487A453A4E944A80660E2045D1FC0000B04E30836000449A4A84674056
-S32100013C702C3C000181982F022F064E944A8067044A9267462045D1FC0000B05077
-S32100013C8C71D026802F002F06487ABA064EB900004708486A00044EB900003E00F7
-S32100013CA84A9267004458601A2F02487A44E44E944A8066522045D1FC0000B050EF
-S32100013CC430836000443C4A8467402C3C000181A02F022F064E944A8067044A92F2
-S32100013CE067462045D1FC0000B05271D026802F002F06487AB9A84EB9000047081C
-S32100013CFC486A00044EB900003E004A92670043FA601A2F02487A448E4E944A803F
-S32100013D18664E2045D1FC0000B0523083600043DE2C3C000181A82F022F064E9492
-S32100013D344A8067044A9267462045D1FC0000B05471D026802F002F06487AB94E64
-S32100013D504EB900004708486A00044EB900003E004A92670043A0601A2F02487A6C
-S32100013D6C443C4E944A8066522045D1FC0000B0543083600043844A8467402C3C63
-S32100013D88000181B02F022F064E944A8067044A9267462045D1FC0000B05671D067
-S32100013DA426802F002F06487AB8F04EB900004708486A00044EB900003E004A925B
-S32100013DC067004342601A2F02487A43E64E944A80664E2045D1FC0000B056308313
-S32100013DDC600043262C3C000181B82F022F064E944A8067044A9267462045D1FC21
-S32100013DF80000B05871D026802F002F06487AB8964EB900004708486A00044EB932
-S32100013E1400003E004A92670042E8601A2F02487A43944E944A8066522045D1FC06
-S32100013E300000B0583083600042CC4A8467402C3C000181C02F022F064E944A8015
-S32100013E4C67044A92674A2045D1FC0000B05A71D026802F002F06487AB8384EB91B
-S32100013E6800004708486A00044EB900003E004A926700428A601E2F02487A433EEC
-S32100013E844E944A80660E2045D1FC0000B05A30836000426E4A8467402C3C00011E
-S32100013EA081C82F022F064E944A8067044A9267462045D1FC0000B05C71D026808B
-S32100013EBC2F002F06487AB7DA4EB900004708486A00044EB900003E004A92670098
-S32100013ED8422C601A2F02487A42E84E944A8066522045D1FC0000B05C308360000D
-S32100013EF442104A8467402C3C000181D02F022F064E944A8067044A9267462045BF
-S32100013F10D1FC0000B05E71D026802F002F06487AB77C4EB900004708486A000467
-S32100013F2C4EB900003E004A92670041CE601A2F02487A42924E944A80664E2045D5
-S32100013F48D1FC0000B05E3083600041B22C3C000181D82F022F064E944A80670436
-S32100013F644A9267462045D1FC0000B06071D026802F002F06487AB7224EB9000082
-S32100013F804708486A00044EB900003E004A9267004174601A2F02487A42404E940B
-S32100013F9C4A8066522045D1FC0000B0603083600041584A8467402C3C000181E053
-S32100013FB82F022F064E944A8067044A9267462045D1FC0000B06271D026802F0086
-S32100013FD42F06487AB6C44EB900004708486A00044EB900003E004A92670041166E
-S32100013FF0601A2F02487A41EA4E944A80664E2045D1FC0000B0623083600040FA25
-S3210001400C2C3C000181E82F022F064E944A8067044A9267462045D1FC0000B06473
-S3210001402871D026802F002F06487AB66A4EB900004708486A00044EB900003E00F7
-S321000140444A92670040BC601A2F02487A41984E944A8066522045D1FC0000B0642A
-S321000140603083600040A04A8467402C3C000181F02F022F064E944A8067044A92A2
-S3210001407C674A2045D1FC0000B06671D026802F002F06487AB60C4EB90000470803
-S32100014098486A00044EB900003E004A926700405E601E2F02487A41424E944A8089
-S321000140B4660E2045D1FC0000B0663083600040424A8467402C3C000181F82F0210
-S321000140D02F064E944A8067044A9267462045D1FC0000B06871D026802F002F0663
-S321000140EC487AB5AE4EB900004708486A00044EB900003E004A9267004000601A3E
-S321000141082F02487A40EC4E944A8066522045D1FC0000B068308360003FE44A84C3
-S3210001412467402C3C000182002F022F064E944A8067044A9267462045D1FC0000AE
-S32100014140B06A71D026802F002F06487AB5504EB900004708486A00044EB900001D
-S3210001415C3E004A9267003FA2601A2F02487A40964E944A80664E2045D1FC000009
-S32100014178B06A308360003F862C3C000182082F022F064E944A8067044A92674639
-S321000141942045D1FC0000B06C71D026802F002F06487AB4F64EB900004708486AFB
-S321000141B000044EB900003E004A9267003F48601A2F02487A40444E944A80665284
-S321000141CC2045D1FC0000B06C308360003F2C4A8467402C3C000182102F022F062E
-S321000141E84E944A8067044A9267462045D1FC0000B06E71D026802F002F06487AB7
-S32100014204B4984EB900004708486A00044EB900003E004A9267003EEA601A2F02E4
-S32100014220487A3FEE4E944A80664E2045D1FC0000B06E308360003ECE2C3C000154
-S3210001423C82182F022F064E944A8067044A9267462045D1FC0000B07071D0268086
-S321000142582F002F06487AB43E4EB900004708486A00044EB900003E004A92670097
-S321000142743E90601A2F02487A3F9C4E944A8066522045D1FC0000B0703083600048
-S321000142903E744A8467402C3C000182202F022F064E944A8067044A92674A20456A
-S321000142ACD1FC0000B07271D026802F002F06487AB3E04EB900004708486A000454
-S321000142C84EB900003E004A9267003E32601E2F02487A3F464E944A80660E204560
-S321000142E4D1FC0000B072308360003E164A8467402C3C000182282F022F064E9491
-S321000143004A8067044A9267462045D1FC0000B07471D026802F002F06487AB38244
-S3210001431C4EB900004708486A00044EB900003E004A9267003DD4601A2F02487A6C
-S321000143383EF04E944A8066522045D1FC0000B074308360003DB84A8467402C3C95
-S32100014354000182302F022F064E944A8067044A9267462045D1FC0000B07671D0F4
-S3210001437026802F002F06487AB3244EB900004708486A00044EB900003E004A925A
-S3210001438C67003D76601A2F02487A3E9A4E944A80664E2045D1FC0000B076308344
-S321000143A860003D5A2C3C000182382F022F064E944A8067044A9267462045D1FCA0
-S321000143C40000B07871D026802F002F06487AB2CA4EB900004708486A00044EB912
-S321000143E000003E004A9267003D1C601A2F02487A3E484E944A8066522045D1FC57
-S321000143FC0000B078308360003D004A8467402C3C000182402F022F064E944A8074
-S3210001441867044A9267462045D1FC0000B07A71D026802F002F06487AB26C4EB9FF
-S3210001443400004708486A00044EB900003E004A9267003CBE601A2F02487A3DF242
-S321000144504E944A80664E2045D1FC0000B07A308360003CA22C3C000182482F0238
-S3210001446C2F064E944A8067044A9267462045D1FC0000B07C71D026802F002F06AF
-S32100014488487AB2124EB900004708486A00044EB900003E004A9267003C64601ADD
-S321000144A42F02487A3DA04E944A8066522045D1FC0000B07C308360003C484A84FE
-S321000144C067402C3C000182502F022F064E944A8067044A92674A2045D1FC0000BB
-S321000144DCB07E71D026802F002F06487AB1B44EB900004708486A00044EB900000A
-S321000144F83E004A9267003C06601E2F02487A3D4A4E944A80660E2045D1FC000094
-S32100014514B07E308360003BEA4A8467402C3C000182582F022F064E944A806704E9
-S321000145304A9267462045D1FC0000B08071D026802F002F06487AB1564EB9000062
-S3210001454C4708486A00044EB900003E004A9267003BA8601A2F02487A3CF44E945D
-S321000145684A8066522045D1FC0000B080308360003B8C4A8467402C3C00018260B2
-S321000145842F022F064E944A8067044A9267462045D1FC0000B08271D026802F0094
-S321000145A02F06487AB0F84EB900004708486A00044EB900003E004A9267003B4A40
-S321000145BC601A2F02487A3C9E4E944A80664E2045D1FC0000B082308360003B2E55
-S321000145D82C3C000182682F022F064E944A8067044A9267462045D1FC0000B08401
-S321000145F471D026802F002F06487AB09E4EB900004708486A00044EB900003E00F8
-S321000146104A9267003AF0601A2F02487A3C4C4E944A8066522045D1FC0000B0845B
-S3210001462C308360003AD44A8467402C3C000182702F022F064E944A8067044A9221
-S3210001464867462045D1FC0000B08671D026802F002F06487AB0404EB900004708E7
-S32100014664486A00044EB900003E004A9267003A92601A2F02487A3BF64E944A80DF
-S32100014680664E2045D1FC0000B086308360003A762C3C000182782F022F064E948D
-S3210001469C4A8067044A9267462045D1FC0000B08871D026802F002F06487AAFE631
-S321000146B84EB900004708486A00044EB900003E004A9267003A38601A2F02487A6C
-S321000146D43BA44E944A8066522045D1FC0000B088308360003A1C4A8467402C3CD0
-S321000146F0000182802F022F064E944A8067044A92674A2045D1FC0000B08A71D0ED
-S3210001470C26802F002F06487AAF884EB900004708486A00044EB900003E004A925A
-S32100014728670039DA601E2F02487A3B4E4E944A80660E2045D1FC0000B08A3083BB
-S32100014744600039BE4A8467402C3C000182882F022F064E944A8067044A9267460D
-S321000147602045D1FC0000B08C71D026802F002F06487AAF2A4EB900004708486ADA
-S3210001477C00044EB900003E004A926700397C601A2F02487A3AF84E944A806652D6
-S321000147982045D1FC0000B08C3083600039604A8467402C3C000182902F022F068E
-S321000147B44E944A8067044A9267462045D1FC0000B08E719026802F002F06487A05
-S321000147D0AEBC4EB900004708486A00044EB900003E004A926700391E601A2F02C6
-S321000147EC487A3AA24E944A80664E2045D1FC0000B08E1083600039022C3C0001A5
-S3210001480882982F022F064E944A8067044A9267462045D1FC0000B10171902680E2
-S321000148242F002F06487AAE624EB900004708486A00044EB900003E004A926700A7
-S3210001484038C4601A2F02487A3A504E944A8066522045D1FC0000B1011083600027
-S3210001485C38A84A8467402C3C000182A02F022F064E944A8067044A9267462045EE
-S32100014878D1FC0000B10271D026802F002F06487AAE144EB900004708486A0004C2
-S321000148944EB900003E004A9267003866601A2F02487A39FA4E944A80664E204576
-S321000148B0D1FC0000B10230836000384A2C3C000182A82F022F064E944A806704C0
-S321000148CC4A9267462045D1FC0000B104719026802F002F06487AADAA4EB900002E
-S321000148E84708486A00044EB900003E004A926700380C601A2F02487A39A84E94AC
-S321000149044A8066522045D1FC0000B1041083600037F04A8467402C3C000182B0FD
-S321000149202F022F064E944A8067044A92674A2045D1FC0000B105719026802F00AC
-S3210001493C2F06487AAD4C4EB900004708486A00044EB900003E004A92670037AEEF
-S32100014958601E2F02487A39524E944A80660E2045D1FC0000B1051083600037927C
-S321000149744A8467402C3C000182B82F022F064E944A8067044A9267462045D1FCD0
-S321000149900000B106719026802F002F06487AACEE4EB900004708486A00044EB9D3
-S321000149AC00003E004A9267003750601A2F02487A38FC4E944A8066522045D1FCA9
-S321000149C80000B1061083600037344A8467402C3C000182C02F022F064E944A8085
-S321000149E467044A9267462045D1FC0000B107719026802F002F06487AAC904EB9C2
-S32100014A0000004708486A00044EB900003E004A92670036F2601A2F02487A38A693
-S32100014A1C4E944A80664E2045D1FC0000B1071083600036D62C3C000182C82F024A
-S32100014A382F064E944A8067044A9267462045D1FC0000B10871D026802F002F0650
-S32100014A54487AAC464EB900004708486A00044EB900003E004A9267003698601AAF
-S32100014A702F02487A38544E944A8066522045D1FC0000B10830836000367C4A84C2
-S32100014A8C67402C3C000182D02F022F064E944A8067044A9267462045D1FC00006D
-S32100014AA8B10A71D026802F002F06487AABE84EB900004708486A00044EB900007D
-S32100014AC43E004A926700363A601A2F02487A37FE4E944A80664E2045D1FC0000AA
-S32100014AE0B10A30836000361E2C3C000182D82F022F064E944A8067044A926746C8
-S32100014AFC2045D1FC0000B10C71D026802F002F06487AAB8E4EB900004708486A5A
-S32100014B1800044EB900003E004A92670035E0601A2F02487A37AC4E944A80665225
-S32100014B342045D1FC0000B10C3083600035C44A8467402C3C000182E02F022F06BD
-S32100014B504E944A8067044A92674A2045D1FC0000B131719026802F002F06487ABD
-S32100014B6CAB204EB900004708486A00044EB900003E004A9267003582601E2F0261
-S32100014B88487A37564E944A80660E2045D1FC0000B1311083600035664A84674084
-S32100014BA42C3C000182EC2F022F064E944A8067044A9267462045D1FC0000B161CD
-S32100014BC0719026802F002F06487AAAC24EB900004708486A00044EB900003E0048
-S32100014BDC4A9267003524601A2F02487A37044E944A8066522045D1FC0000B161CA
-S32100014BF81083600035084A8467402C3C000182F82F022F064E944A8067044A92B9
-S32100014C1467462045D1FC0000B191719026802F002F06487AAA644EB9000047082B
-S32100014C30486A00044EB900003E004A92670034C6601A2F02487A36B24E944A8028
-S32100014C4C664E2045D1FC0000B1911083600034AA2C3C000183042F022F064E9414
-S32100014C684A8067044A9267462045D1FC0000B1C1719026802F002F06487AAA0A46
-S32100014C844EB900004708486A00044EB900003E004A926700346C601A2F02487A6C
-S32100014CA036644E944A8066522045D1FC0000B1C11083600034504A8467402C3CFB
-S32100014CBC000183102F022F064E944A8067044A9267462045D1FC0000B1F1719066
-S32100014CD826802F002F06487AA9AC4EB900004708486A00044EB900003E004A926B
-S32100014CF46700340E601A2F02487A36124E944A80664E2045D1FC0000B1F1108378
-S32100014D10600033F22C3C0001831C2F022F064E944A8067044A9267462045D1FCBB
-S32100014D2C0000B221719026802F002F06487AA9524EB900004708486A00044EB9B6
-S32100014D4800003E004A92670033B4601A2F02487A35C44E944A8066522045D1FCE4
-S32100014D640000B2211083600033984A8467402C3C000183282F022F064E944A8000
-S32100014D8067044A92674A2045D1FC0000B13271D026802F002F06487AA9044EB942
-S32100014D9C00004708486A00044EB900003E004A9267003356601E2F02487A3572C6
-S32100014DB84E944A80660E2045D1FC0000B13230836000333A4A8467402C3C000145
-S32100014DD483342F022F064E944A8067044A9267462045D1FC0000B16271D02680D3
-S32100014DF02F002F06487AA8A64EB900004708486A00044EB900003E004A92670098
-S32100014E0C32F8601A2F02487A35204E944A8066522045D1FC0000B16230836000DB
-S32100014E2832DC4A8467402C3C000183402F022F064E944A8067044A92674620454D
-S32100014E44D1FC0000B19271D026802F002F06487AA8484EB900004708486A000432
-S32100014E604EB900003E004A926700329A601A2F02487A34CE4E944A80664E2045A7
-S32100014E7CD1FC0000B19230836000327E2C3C0001834C2F022F064E944A8067048B
-S32100014E984A9267462045D1FC0000B1C271D026802F002F06487AA7EE4EB9000020
-S32100014EB44708486A00044EB900003E004A9267003240601A2F02487A34804E94D9
-S32100014ED04A8066522045D1FC0000B1C23083600032244A8467402C3C0001835876
-S32100014EEC2F022F064E944A8067044A9267462045D1FC0000B1F271D026802F00B2
-S32100014F082F06487AA7904EB900004708486A00044EB900003E004A92670031E2B1
-S32100014F24601A2F02487A342E4E944A80664E2045D1FC0000B1F23083600031C65C
-S32100014F402C3C000183642F022F064E944A8067044A9267462045D1FC0000B222F2
-S32100014F5C71D026802F002F06487AA7364EB900004708486A00044EB900003E00F7
-S32100014F784A9267003188601A2F02487A33E04E944A8066522045D1FC0000B22230
-S32100014F9430836000316C4A8467402C3C000183702F022F064E944A8067044A9220
-S32100014FB0674A2045D1FC0000B134719026802F002F06487AA6C84EB90000470885
-S32100014FCC486A00044EB900003E004A926700312A601E2F02487A338E4E944A804B
-S32100014FE8660E2045D1FC0000B13410836000310E4A8467402C3C0001837C2F02DB
-S321000150042F064E944A8067044A9267462045D1FC0000B164719026802F002F0662
-S32100015020487AA66A4EB900004708486A00044EB900003E004A92670030CC601A91
-S3210001503C2F02487A333C4E944A8066522045D1FC0000B1641083600030B04A84A3
-S3210001505867402C3C000183882F022F064E944A8067044A9267462045D1FC0000E2
-S32100015074B194719026802F002F06487AA60C4EB900004708486A00044EB9000042
-S321000150903E004A926700306E601A2F02487A32EA4E944A80664E2045D1FC0000C3
-S321000150ACB1941083600030522C3C000183942F022F064E944A8067044A926746A1
-S321000150C82045D1FC0000B1C4719026802F002F06487AA5B24EB900004708486AF2
-S321000150E400044EB900003E004A9267003014601A2F02487A329C4E944A8066523A
-S321000151002045D1FC0000B1C4108360002FF84A8467402C3C000183A02F022F0664
-S3210001511C4E944A8067044A9267462045D1FC0000B1F4719026802F002F06487A2C
-S32100015138A5544EB900004708486A00044EB900003E004A9267002FB6601A2F0237
-S32100015154487A324A4E944A80664E2045D1FC0000B1F4108360002F9A2C3C00019E
-S3210001517083AC2F022F064E944A8067044A9267462045D1FC0000B2247190268038
-S3210001518C2F002F06487AA4FA4EB900004708486A00044EB900003E004A926700A8
-S321000151A82F5C601A2F02487A31FC4E944A8066522045D1FC0000B2241083600060
-S321000151C42F404A8467402C3C000183B82F022F064E944A8067044A92674A2045D1
-S321000151E0D1FC0000B135719026802F002F06487AA49C4EB900004708486A0004E0
-S321000151FC4EB900003E004A9267002EFE601E2F02487A31AA4E944A80660E20450B
-S32100015218D1FC0000B135108360002EE24A8467402C3C000183C42F022F064E9450
-S321000152344A8067044A9267462045D1FC0000B165719026802F002F06487AA43EA2
-S321000152504EB900004708486A00044EB900003E004A9267002EA0601A2F02487A6C
-S3210001526C31584E944A8066522045D1FC0000B165108360002E844A8467402C3C68
-S32100015288000183D02F022F064E944A8067044A9267462045D1FC0000B195719030
-S321000152A426802F002F06487AA3E04EB900004708486A00044EB900003E004A926B
-S321000152C067002E42601A2F02487A31064E944A80664E2045D1FC0000B1951083E5
-S321000152DC60002E262C3C000183DC2F022F064E944A8067044A9267462045D1FCFB
-S321000152F80000B1C5719026802F002F06487AA3864EB900004708486A00044EB914
-S3210001531400003E004A9267002DE8601A2F02487A30B84E944A8066522045D1FCF5
-S321000153300000B1C5108360002DCC4A8467402C3C000183E82F022F064E944A809D
-S3210001534C67044A9267462045D1FC0000B1F5719026802F002F06487AA3284EB9D3
-S3210001536800004708486A00044EB900003E004A9267002D8A601A2F02487A3066DB
-S321000153844E944A80664E2045D1FC0000B1F5108360002D6E2C3C000183F42F022F
-S321000153A02F064E944A8067044A9267462045D1FC0000B225719026802F002F0601
-S321000153BC487AA2CE4EB900004708486A00044EB900003E004A9267002D30601A31
-S321000153D82F02487A30184E944A8066522045D1FC0000B225108360002D144A8408
-S321000153F467402C3C000184002F022F064E944A8067044A92674A2045D1FC0000C6
-S32100015410B13E71D026802F002F06487AA2804EB900004708486A00044EB9000048
-S3210001542C3E004A9267002CD2601E2F02487A2FC64E944A80660E2045D1FC000026
-S32100015448B13E308360002CB64A8467402C3C0001840C2F022F064E944A80670472
-S321000154644A9267462045D1FC0000B16E71D026802F002F06487AA2224EB9000073
-S321000154804708486A00044EB900003E004A9267002C74601A2F02487A2F744E94EA
-S3210001549C4A8066522045D1FC0000B16E308360002C584A8467402C3C0001841809
-S321000154B82F022F064E944A8067044A9267462045D1FC0000B19E71D026802F0034
-S321000154D42F06487AA1C44EB900004708486A00044EB900003E004A9267002C1683
-S321000154F0601A2F02487A2F224E944A80664E2045D1FC0000B19E308360002BFAC2
-S3210001550C2C3C000184242F022F064E944A8067044A9267462045D1FC0000B1CEB4
-S3210001552871D026802F002F06487AA16A4EB900004708486A00044EB900003E00F7
-S321000155444A9267002BBC601A2F02487A2ED44E944A8066522045D1FC0000B1CE96
-S32100015560308360002BA04A8467402C3C000184302F022F064E944A8067044A925F
-S3210001557C67462045D1FC0000B1FE71D026802F002F06487AA10C4EB9000047086E
-S32100015598486A00044EB900003E004A9267002B5E601A2F02487A2E824E944A8060
-S321000155B4664E2045D1FC0000B1FE308360002B422C3C0001843C2F022F064E944E
-S321000155D04A8067044A9267462045D1FC0000B22E71D026802F002F06487AA0B289
-S321000155EC4EB900004708486A00044EB900003E004A9267002B04601A2F02487A6C
-S321000156082E344E944A8066522045D1FC0000B22E308360002AE84A8467402C3CA5
-S32100015624000184482F022F064E944A8067044A92674A2045D1FC0000B14971905F
-S3210001564026802F002F06487AA0444EB900004708486A00044EB900003E004A926A
-S3210001565C67002AA6601E2F02487A2DE24E944A80660E2045D1FC0000B149108395
-S3210001567860002A8A4A8467402C3C000184542F022F064E944A8067044A9267463F
-S321000156942045D1FC0000B179719026802F002F06487A9FE64EB900004708486A3D
-S321000156B000044EB900003E004A9267002A48601A2F02487A2D904E944A8066524B
-S321000156CC2045D1FC0000B179108360002A2C4A8467402C3C000184602F022F06EE
-S321000156E84E944A8067044A9267462045D1FC0000B1A9719026802F002F06487AA6
-S321000157049F884EB900004708486A00044EB900003E004A92670029EA601A2F0209
-S32100015720487A2D3E4E944A80664E2045D1FC0000B1A91083600029CE2C3C0001FA
-S3210001573C846C2F022F064E944A8067044A9267462045D1FC0000B1D971902680F1
-S321000157582F002F06487A9F2E4EB900004708486A00044EB900003E004A926700A7
-S321000157742990601A2F02487A2CF04E944A8066522045D1FC0000B1D910836000BD
-S3210001579029744A8467402C3C000184782F022F064E944A8067044A926746204514
-S321000157ACD1FC0000B209719026802F002F06487A9ED04EB900004708486A00040B
-S321000157C84EB900003E004A9267002932601A2F02487A2C9E4E944A80664E2045DF
-S321000157E4D1FC0000B2091083600029162C3C000184842F022F064E944A806704FA
-S321000158004A9267462045D1FC0000B239719026802F002F06487A9E764EB90000F7
-S3210001581C4708486A00044EB900003E004A92670028D8601A2F02487A2C504E9411
-S321000158384A8066522045D1FC0000B2391083600028BC4A8467402C3C00018490E5
-S321000158542F022F064E944A8067044A92674A2045D1FC0000B14A71D026802F00E4
-S321000158702F06487A9E284EB900004708486A00044EB900003E004A926700287A22
-S3210001588C601E2F02487A2BFE4E944A80660E2045D1FC0000B14A30836000285E79
-S321000158A84A8467402C3C0001849C2F022F064E944A8067044A9267462045D1FCA7
-S321000158C40000B17A71D026802F002F06487A9DCA4EB900004708486A00044EB90F
-S321000158E000003E004A926700281C601A2F02487A2BAC4E944A8066522045D1FC06
-S321000158FC0000B17A3083600028004A8467402C3C000184A82F022F064E944A8007
-S3210001591867044A9267462045D1FC0000B1AA71D026802F002F06487A9D6C4EB9CE
-S3210001593400004708486A00044EB900003E004A92670027BE601A2F02487A2B5AEC
-S321000159504E944A80664E2045D1FC0000B1AA3083600027A22C3C000184B42F0299
-S3210001596C2F064E944A8067044A9267462045D1FC0000B1DA71D026802F002F063B
-S32100015988487A9D124EB900004708486A00044EB900003E004A9267002764601AF2
-S321000159A42F02487A2B0C4E944A8066522045D1FC0000B1DA3083600027484A8445
-S321000159C067402C3C000184C02F022F064E944A8067044A9267462045D1FC000038
-S321000159DCB20A71D026802F002F06487A9CB44EB900004708486A00044EB900007C
-S321000159F83E004A9267002706601A2F02487A2ABA4E944A80664E2045D1FC0000FB
-S32100015A14B20A3083600026EA2C3C000184CC2F022F064E944A8067044A926746D1
-S32100015A302045D1FC0000B23A71D026802F002F06487A9C5A4EB900004708486A2A
-S32100015A4C00044EB900003E004A92670026AC601A2F02487A2A6C4E944A80665272
-S32100015A682045D1FC0000B23A3083600026904A8467402C3C000184D82F022F0694
-S32100015A844E944A8067044A92674A2045D1FC0000B14C719026802F002F06487A5F
-S32100015AA09BEC4EB900004708486A00044EB900003E004A926700264E601E2F02A5
-S32100015ABC487A2A1A4E944A80660E2045D1FC0000B14C1083600026324A846740B2
-S32100015AD82C3C000184E42F022F064E944A8067044A9267462045D1FC0000B17C75
-S32100015AF4719026802F002F06487A9B8E4EB900004708486A00044EB900003E0048
-S32100015B104A92670025F0601A2F02487A29C84E944A8066522045D1FC0000B17CF9
-S32100015B2C1083600025D44A8467402C3C000184F02F022F064E944A8067044A92BF
-S32100015B4867462045D1FC0000B1AC719026802F002F06487A9B304EB90000470810
-S32100015B64486A00044EB900003E004A9267002592601A2F02487A29764E944A8071
-S32100015B80664E2045D1FC0000B1AC1083600025762C3C000184FC2F022F064E9400
-S32100015B9C4A8067044A9267462045D1FC0000B1DC719026802F002F06487A9AD62C
-S32100015BB84EB900004708486A00044EB900003E004A9267002538601A2F02487A6C
-S32100015BD429284E944A8066522045D1FC0000B1DC10836000251C4A8467402C3C29
-S32100015BF0000185082F022F064E944A8067044A9267462045D1FC0000B20C71900D
-S32100015C0C26802F002F06487A9A784EB900004708486A00044EB900003E004A926A
-S32100015C28670024DA601A2F02487A28D64E944A80664E2045D1FC0000B20C1083A6
-S32100015C44600024BE2C3C000185142F022F064E944A8067044A9267462045D1FCC1
-S32100015C600000B23C719026802F002F06487A9A1E4EB900004708486A00044EB99B
-S32100015C7C00003E004A9267002480601A2F02487A28884E944A8066522045D1FC2D
-S32100015C980000B23C1083600024644A8467402C3C000185202F022F064E944A80EB
-S32100015CB467044A92674A2045D1FC0000B14D719026802F002F06487A99C04EB978
-S32100015CD000004708486A00044EB900003E004A9267002422601E2F02487A28360F
-S32100015CEC4E944A80660E2045D1FC0000B14D1083600024064A8467402C3C00014A
-S32100015D0885282F022F064E944A8067044A9267462045D1FC0000B17D71902680BE
-S32100015D242F002F06487A99624EB900004708486A00044EB900003E004A926700A7
-S32100015D4023C4601A2F02487A27E04E944A8066522045D1FC0000B17D108360002E
-S32100015D5C23A84A8467402C3C000185302F022F064E944A8067044A92674620455B
-S32100015D78D1FC0000B1AD719026802F002F06487A99044EB900004708486A000467
-S32100015D944EB900003E004A9267002366601A2F02487A278A4E944A80664E2045F8
-S32100015DB0D1FC0000B1AD10836000234A2C3C000185382F022F064E944A806704A2
-S32100015DCC4A9267462045D1FC0000B1DD719026802F002F06487A98AA4EB9000055
-S32100015DE84708486A00044EB900003E004A926700230C601A2F02487A27384E942E
-S32100015E044A8066522045D1FC0000B1DD1083600022F04A8467402C3C0001854091
-S32100015E202F022F064E944A8067044A9267462045D1FC0000B20D719026802F0092
-S32100015E3C2F06487A984C4EB900004708486A00044EB900003E004A92670022AE04
-S32100015E58601A2F02487A26E24E944A80664E2045D1FC0000B20D108360002292BA
-S32100015E742C3C000185482F022F064E944A8067044A9267462045D1FC0000B23DAE
-S32100015E90719026802F002F06487A97F24EB900004708486A00044EB900003E0048
-S32100015EAC4A9267002254601A2F02487A26904E944A8066522045D1FC0000B23D72
-S32100015EC81083600022384A8467402C3C000185502F022F064E944A8067044A925E
-S32100015EE4674A2045D1FC0000B15A71D026802F002F06487A97A44EB9000047080F
-S32100015F00486A00044EB900003E004A92670021F6601E2F02487A263A4E944A80AC
-S32100015F1C660E2045D1FC0000B15A3083600021DA4A8467402C3C0001855C2F02B3
-S32100015F382F064E944A8067044A9267462045D1FC0000B18A71D026802F002F06B9
-S32100015F54487A97464EB900004708486A00044EB900003E004A9267002198601AC4
-S32100015F702F02487A25E84E944A8066522045D1FC0000B18A30836000217C4A84BF
-S32100015F8C67402C3C000185682F022F064E944A8067044A9267462045D1FC0000BD
-S32100015FA8B1BA71D026802F002F06487A96E84EB900004708486A00044EB90000CD
-S32100015FC43E004A926700213A601A2F02487A25964E944A80664E2045D1FC000024
-S32100015FE0B1BA30836000211E2C3C000185742F022F064E944A8067044A92674679
-S32100015FFC2045D1FC0000B1EA71D026802F002F06487A968E4EB900004708486A7C
-S3210001601800044EB900003E004A92670020E0601A2F02487A25484E944A8066529B
-S321000160342045D1FC0000B1EA3083600020C44A8467402C3C000185802F022F063C
-S321000160504E944A8067044A9267462045D1FC0000B21A71D026802F002F06487A82
-S3210001606C96304EB900004708486A00044EB900003E004A9267002082601A2F026A
-S32100016088487A24F64E944A80664E2045D1FC0000B21A3083600020662C3C0001B9
-S321000160A4858C2F022F064E944A8067044A9267462045D1FC0000B24A71D02680AD
-S321000160C02F002F06487A95D64EB900004708486A00044EB900003E004A92670098
-S321000160DC2028601A2F02487A24A84E944A8066502045D1FC0000B24A308360007D
-S321000160F8200C4A84673E2C3C000185982F022F064E944A8067044A9267482045F3
-S32100016114D1FC0000B40026902F132F06487A958A4EB900004708486A00044EB9C6
-S3210001613000003E004A9267001FCC601E2F02487A24584E944A80660E2045D1FCA1
-S3210001614C0000B400208360001FB04A84673E2C3C000185A02F022F064E944A8097
-S3210001616867044A9267442045D1FC0000B40426902F132F06487A952E4EB900007F
-S321000161844708486A00044EB900003E004A9267001F70601A2F02487A24044E9465
-S321000161A04A8066502045D1FC0000B404208360001F544A84673E2C3C000185A8F3
-S321000161BC2F022F064E944A8067044A9267442045D1FC0000B40826902F132F06A1
-S321000161D8487A94D24EB900004708486A00044EB900003E004A9267001F14601A3B
-S321000161F42F02487A23B04E944A80664C2045D1FC0000B408208360001EF82C3CF5
-S32100016210000185B02F022F064E944A8067044A9267442045D1FC0000B40C269089
-S3210001622C2F132F06487A947A4EB900004708486A00044EB900003E004A92670074
-S321000162481EBC601A2F02487A23604E944A8066502045D1FC0000B40C2083600012
-S321000162641EA04A84673E2C3C000185B82F022F064E944A8067044A9267442045D7
-S32100016280D1FC0000B41026902F132F06487A941E4EB900004708486A00044EB9B6
-S3210001629C00003E004A9267001E60601A2F02487A230C4E944A80664C2045D1FCB4
-S321000162B80000B410208360001E442C3C000185C02F022F064E944A8067044A9293
-S321000162D467442045D1FC0000B41426902F132F06487A93C64EB900004708486AB2
-S321000162F000044EB900003E004A9267001E08601A2F02487A22BC4E944A8066502C
-S3210001630C2045D1FC0000B414208360001DEC4A84673E2C3C000185C82F022F06D9
-S321000163284E944A8067044A9267482045D1FC0000B44026902F132F06487A936A9E
-S321000163444EB900004708486A00044EB900003E004A9267001DAC601E2F02487A68
-S3210001636022684E944A80660E2045D1FC0000B440208360001D904A84673E2C3CBF
-S3210001637C000185D02F022F064E944A8067044A9267442045D1FC0000B470269098
-S321000163982F132F06487A930E4EB900004708486A00044EB900003E004A92670074
-S321000163B41D50601A2F02487A22144E944A8066502045D1FC0000B47020836000FB
-S321000163D01D344A84673E2C3C000185D82F022F064E944A8067044A9267442045B7
-S321000163ECD1FC0000B4A026902F132F06487A92B24EB900004708486A00044EB927
-S3210001640800003E004A9267001CF4601A2F02487A21C04E944A80664C2045D1FC02
-S321000164240000B4A0208360001CD82C3C000185E02F022F064E944A8067044A92E3
-S3210001644067442045D1FC0000B4D026902F132F06487A925A4EB900004708486AF5
-S3210001645C00044EB900003E004A9267001C9C601A2F02487A21704E944A80665079
-S321000164782045D1FC0000B4D0208360001C804A84673E2C3C000185E82F022F06FD
-S321000164944E944A8067044A9267442045D1FC0000B50026902F132F06487A91FEE2
-S321000164B04EB900004708486A00044EB900003E004A9267001C40601A2F02487A6C
-S321000164CC211C4E944A80664C2045D1FC0000B500208360001C242C3C000185F00A
-S321000164E82F022F064E944A8067044A9267442045D1FC0000B53026902F132F0649
-S32100016504487A91A64EB900004708486A00044EB900003E004A9267001BE8601A6A
-S321000165202F02487A20CC4E944A8066502045D1FC0000B530208360001BCC4A8448
-S3210001653C673E2C3C000185F82F022F064E944A8067044A9267482045D1FC000077
-S32100016558B56026902F132F06487A914A4EB900004708486A00044EB900003E00F0
-S321000165744A9267001B8C601E2F02487A20784E944A80660E2045D1FC0000B560AA
-S32100016590208360001B704A84673E2C3C000186002F022F064E944A8067044A929F
-S321000165AC67442045D1FC0000B44426902F132F06487A90EE4EB900004708486A82
-S321000165C800044EB900003E004A9267001B30601A2F02487A20244E944A806650C6
-S321000165E42045D1FC0000B444208360001B144A84673E2C3C000186082F022F0668
-S321000166004E944A8067044A9267442045D1FC0000B47426902F132F06487A90926E
-S3210001661C4EB900004708486A00044EB900003E004A9267001AD4601A2F02487A6C
-S321000166381FD04E944A80664C2045D1FC0000B474208360001AB82C3C00018610C4
-S321000166542F022F064E944A8067044A9267442045D1FC0000B4A426902F132F0668
-S32100016670487A903A4EB900004708486A00044EB900003E004A9267001A7C601AD7
-S3210001668C2F02487A1F804E944A8066502045D1FC0000B4A4208360001A604A8422
-S321000166A8673E2C3C000186182F022F064E944A8067044A9267442045D1FC0000ED
-S321000166C4B4D426902F132F06487A8FDE4EB900004708486A00044EB900003E007E
-S321000166E04A9267001A20601A2F02487A1F2C4E944A80664C2045D1FC0000B4D44A
-S321000166FC208360001A042C3C000186202F022F064E944A8067044A9267442045E2
-S32100016718D1FC0000B50426902F132F06487A8F864EB900004708486A00044EB9C1
-S3210001673400003E004A92670019C8601A2F02487A1EDC4E944A8066502045D1FCE5
-S321000167500000B5042083600019AC4A84673E2C3C000186282F022F064E944A8009
-S3210001676C67044A9267482045D1FC0000B53426902F132F06487A8F2A4EB900004A
-S321000167884708486A00044EB900003E004A926700196C601E2F02487A1E884E94E3
-S321000167A44A80660E2045D1FC0000B5342083600019504A84673E2C3C000186307B
-S321000167C02F022F064E944A8067044A9267442045D1FC0000B56426902F132F063A
-S321000167DC487A8ECE4EB900004708486A00044EB900003E004A9267001910601A45
-S321000167F82F02487A1E344E944A8066502045D1FC0000B5642083600018F44A84AF
-S32100016814673E2C3C000186382F022F064E944A8067044A9267442045D1FC00005F
-S32100016830B44826902F132F06487A8E724EB900004708486A00044EB900003E0009
-S3210001684C4A92670018B4601A2F02487A1DE04E944A80664C2045D1FC0000B44824
-S321000168682083600018982C3C000186402F022F064E944A8067044A9267442045C2
-S32100016884D1FC0000B47826902F132F06487A8E1A4EB900004708486A00044EB94E
-S321000168A000003E004A926700185C601A2F02487A1D904E944A8066502045D1FC32
-S321000168BC0000B4782083600018404A84673E2C3C000186482F022F064E944A8076
-S321000168D867044A9267442045D1FC0000B4A826902F132F06487A8DBE4EB90000DC
-S321000168F44708486A00044EB900003E004A9267001800601A2F02487A1D3C4E9434
-S321000169104A80664C2045D1FC0000B4A82083600017E42C3C000186502F022F06B7
-S3210001692C4E944A8067044A9267442045D1FC0000B4D826902F132F06487A8D660A
-S321000169484EB900004708486A00044EB900003E004A92670017A8601A2F02487A6C
-S321000169641CEC4E944A8066502045D1FC0000B4D820836000178C4A84673E2C3C67
-S32100016980000186582F022F064E944A8067044A9267482045D1FC0000B508269068
-S3210001699C2F132F06487A8D0A4EB900004708486A00044EB900003E004A92670074
-S321000169B8174C601E2F02487A1C984E944A80660E2045D1FC0000B5082083600022
-S321000169D417304A84673E2C3C000186602F022F064E944A8067044A92674420452E
-S321000169F0D1FC0000B53826902F132F06487A8CAE4EB900004708486A00044EB98E
-S32100016A0C00003E004A92670016F0601A2F02487A1C444E944A8066502045D1FC7F
-S32100016A280000B5382083600016D44A84673E2C3C000186682F022F064E944A8095
-S32100016A4467044A9267442045D1FC0000B56826902F132F06487A8C524EB900001A
-S32100016A604708486A00044EB900003E004A9267001694601A2F02487A1BF04E9482
-S32100016A7C4A80664C2045D1FC0000B5682083600016782C3C000186702F022F06D6
-S32100016A984E944A8067044A9267442045D1FC0000B44C26902F132F06487A8BFA97
-S32100016AB44EB900004708486A00044EB900003E004A926700163C601A2F02487A6C
-S32100016AD01BA04E944A8066502045D1FC0000B44C2083600016204A84673E2C3C40
-S32100016AEC0001867C2F022F064E944A8067044A9267442045D1FC0000B47C269068
-S32100016B082F132F06487A8B9E4EB900004708486A00044EB900003E004A92670074
-S32100016B2415E0601A2F02487A1B504E944A80664C2045D1FC0000B47C20836000BE
-S32100016B4015C42C3C000186882F022F064E944A8067044A9267442045D1FC0000AC
-S32100016B5CB4AC26902F132F06487A8B464EB900004708486A00044EB900003E00A5
-S32100016B784A9267001588601A2F02487A1B044E944A8066502045D1FC0000B4AC9A
-S32100016B9420836000156C4A84673E2C3C000186942F022F064E944A8067044A920B
-S32100016BB067482045D1FC0000B4DC26902F132F06487A8AEA4EB900004708486AE6
-S32100016BCC00044EB900003E004A926700152C601E2F02487A1AB44E944A80660E7A
-S32100016BE82045D1FC0000B4DC2083600015104A84673E2C3C000186A02F022F0638
-S32100016C044E944A8067044A9267442045D1FC0000B50C26902F132F06487A8A8ED5
-S32100016C204EB900004708486A00044EB900003E004A92670014D0601A2F02487A6C
-S32100016C3C1A644E944A8066502045D1FC0000B50C2083600014B44A84673E2C3CBC
-S32100016C58000186AC2F022F064E944A8067044A9267442045D1FC0000B53C269009
-S32100016C742F132F06487A8A324EB900004708486A00044EB900003E004A92670074
-S32100016C901474601A2F02487A1A144E944A80664C2045D1FC0000B53C208360003A
-S32100016CAC14582C3C000186B82F022F064E944A8067044A9267442045D1FC00007C
-S32100016CC8B56C26902F132F06487A89DA4EB900004708486A00044EB900003E00E5
-S32100016CE44A926700141C601A2F02487A19C84E944A8066502045D1FC0000B56C17
-S32100016D002083600014004A84673E2C3C000186C42F022F064E944A8067044A92DA
-S32100016D1C67442045D1FC0000B45026902F132F06487A897E4EB900004708486A75
-S32100016D3800044EB900003E004A92670013C0601A2F02487A19784E944A80664C7D
-S32100016D542045D1FC0000B4502083600013A42C3C000186CC2F022F064E944A805F
-S32100016D7067044A9267442045D1FC0000B48026902F132F06487A89264EB9000003
-S32100016D8C4708486A00044EB900003E004A9267001368601A2F02487A19284E944C
-S32100016DA84A8066502045D1FC0000B48020836000134C4A84673E2C3C000186D44A
-S32100016DC42F022F064E944A8067044A9267482045D1FC0000B4B026902F132F06E1
-S32100016DE0487A88CA4EB900004708486A00044EB900003E004A926700130C601E4B
-S32100016DFC2F02487A18D44E944A80660E2045D1FC0000B4B02083600012F04A840C
-S32100016E18673E2C3C000186DC2F022F064E944A8067044A9267442045D1FC0000B1
-S32100016E34B4E026902F132F06487A886E4EB900004708486A00044EB900003E0071
-S32100016E504A92670012B0601A2F02487A18804E944A8066502045D1FC0000B4E0ED
-S32100016E6C2083600012944A84673E2C3C000186E42F022F064E944A8067044A92BB
-S32100016E8867442045D1FC0000B51026902F132F06487A88124EB900004708486AB4
-S32100016EA400044EB900003E004A9267001254601A2F02487A182C4E944A80664CCA
-S32100016EC02045D1FC0000B5102083600012382C3C000186EC2F022F064E944A807E
-S32100016EDC67044A9267442045D1FC0000B54026902F132F06487A87BA4EB9000043
-S32100016EF84708486A00044EB900003E004A92670011FC601A2F02487A17DC4E949B
-S32100016F144A8066502045D1FC0000B5402083600011E04A84673E2C3C000186F469
-S32100016F302F022F064E944A8067044A9267442045D1FC0000B57026902F132F06B6
-S32100016F4C487A875E4EB900004708486A00044EB900003E004A92670011A0601ABC
-S32100016F682F02487A17884E944A80664C2045D1FC0000B5702083600011842C3CBF
-S32100016F84000186FC2F022F064E944A8067044A9267442045D1FC0000B454269073
-S32100016FA02F132F06487A87064EB900004708486A00044EB900003E004A92670074
-S32100016FBC1148601A2F02487A17384E944A8066502045D1FC0000B45420836000FE
-S32100016FD8112C4A84673E2C3C000187042F022F064E944A8067044A926748204585
-S32100016FF4D1FC0000B48426902F132F06487A86AA4EB900004708486A00044EB943
-S3210001701000003E004A92670010EC601E2F02487A16E44E944A80660E2045D1FC23
-S3210001702C0000B4842083600010D04A84673E2C3C0001870C2F022F064E944A80A5
-S3210001704867044A9267442045D1FC0000B4B426902F132F06487A864E4EB90000CF
-S321000170644708486A00044EB900003E004A9267001090601A2F02487A16904E94E7
-S321000170804A8066502045D1FC0000B4B42083600010744A84673E2C3C00018714D5
-S3210001709C2F022F064E944A8067044A9267442045D1FC0000B4E426902F132F06D6
-S321000170B8487A85F24EB900004708486A00044EB900003E004A9267001034601A2A
-S321000170D42F02487A163C4E944A80664C2045D1FC0000B4E42083600010182C3C99
-S321000170F00001871C2F022F064E944A8067044A9267442045D1FC0000B514269024
-S3210001710C2F132F06487A859A4EB900004708486A00044EB900003E004A92670074
-S321000171280FDC601A2F02487A15EC4E944A8066502045D1FC0000B514208360008B
-S321000171440FC04A84673E2C3C000187242F022F064E944A8067044A926744204569
-S32100017160D1FC0000B54426902F132F06487A853E4EB900004708486A00044EB981
-S3210001717C00003E004A9267000F80601A2F02487A15984E944A80664C2045D1FC36
-S321000171980000B544208360000F642C3C0001872C2F022F064E944A8067044A92F0
-S321000171B467442045D1FC0000B57426902F132F06487A84E64EB900004708486A51
-S321000171D000044EB900003E004A9267000F28601A2F02487A15484E944A806650AD
-S321000171EC2045D1FC0000B574208360000F0C4A84673E2C3C000187342F022F060A
-S321000172084E944A8067044A9267482045D1FC0000B45826902F132F06487A848A86
-S321000172244EB900004708486A00044EB900003E004A9267000ECC601E2F02487A68
-S3210001724014F44E944A80660E2045D1FC0000B458208360000EB04A84673E2C3C29
-S3210001725C0001873C2F022F064E944A8067044A9267442045D1FC0000B488269023
-S321000172782F132F06487A842E4EB900004708486A00044EB900003E004A92670074
-S321000172940E70601A2F02487A14A04E944A8066502045D1FC0000B4882083600065
-S321000172B00E544A84673E2C3C000187442F022F064E944A8067044A926744204549
-S321000172CCD1FC0000B4B826902F132F06487A83D24EB900004708486A00044EB90F
-S321000172E800003E004A9267000E14601A2F02487A144C4E944A80664C2045D1FC83
-S321000173040000B4B8208360000DF82C3C0001874C2F022F064E944A8067044A925D
-S3210001732067442045D1FC0000B4E826902F132F06487A837A4EB900004708486ADD
-S3210001733C00044EB900003E004A9267000DBC601A2F02487A13FC4E944A806650FB
-S321000173582045D1FC0000B4E8208360000DA04A84673E2C3C000187542F022F0677
-S321000173744E944A8067044A9267442045D1FC0000B51826902F132F06487A831EC9
-S321000173904EB900004708486A00044EB900003E004A9267000D60601A2F02487A6C
-S321000173AC13A84E944A80664C2045D1FC0000B518208360000D442C3C0001875C06
-S321000173C82F022F064E944A8067044A9267442045D1FC0000B54826902F132F0642
-S321000173E4487A82C64EB900004708486A00044EB900003E004A9267000D08601A59
-S321000174002F02487A13584E944A8066502045D1FC0000B548208360000CEC4A84B1
-S3210001741C673E2C3C000187642F022F064E944A8067044A9267482045D1FC00001A
-S32100017438B57826902F132F06487A826A4EB900004708486A00044EB900003E00D8
-S321000174544A9267000CAC601E2F02487A13044E944A80660E2045D1FC0000B57813
-S32100017470208360000C904A84673E2C3C0001876C2F022F064E944A8067044A9232
-S3210001748C67442045D1FC0000B45C26902F132F06487A820E4EB900004708486A69
-S321000174A800044EB900003E004A9267000C50601A2F02487A12B04E944A80665048
-S321000174C42045D1FC0000B45C208360000C344A84673E2C3C000187742F022F06E3
-S321000174E04E944A8067044A9267442045D1FC0000B48C26902F132F06487A81B257
-S321000174FC4EB900004708486A00044EB900003E004A9267000BF4601A2F02487A6D
-S32100017518125C4E944A80664C2045D1FC0000B48C208360000BD82C3C0001877CC0
-S321000175342F022F064E944A8067044A9267442045D1FC0000B4BC26902F132F0661
-S32100017550487A815A4EB900004708486A00044EB900003E004A9267000B9C601AC6
-S3210001756C2F02487A120C4E944A8066502045D1FC0000B4BC208360000B804A848B
-S32100017588673E2C3C000187842F022F064E944A8067044A9267442045D1FC000091
-S321000175A4B4EC26902F132F06487A80FE4EB900004708486A00044EB900003E0066
-S321000175C04A9267000B40601A2F02487A11B84E944A80664C2045D1FC0000B4ECB4
-S321000175DC208360000B242C3C0001878C2F022F064E944A8067044A926744204575
-S321000175F8D1FC0000B51C26902F132F06487A80A64EB900004708486A00044EB9AA
-S3210001761400003E004A9267000AE8601A2F02487A11684E944A80664E2045D1FC68
-S321000176300000B51C208360000ACC4A84673C2F02487A11524E944A8067044A92D3
-S3210001764C674A2045D1FC0000B54C26902F13487A1138487A804C4EB90000470850
-S32100017668486A00044EB900003E004A9267000A8E601E2F02487A11164E944A80E5
-S32100017684660E2045D1FC0000B54C208360000A724A8467402C3C0001879C2F028B
-S321000176A02F064E944A8067044A9267462045D1FC0000B57C26902F132F064879A1
-S321000176BC0000F6AC4EB900004708486A00044EB900003E004A9267000A30601AC1
-S321000176D82F02487A10C04E944A8066522045D1FC0000B57C208360000A144A8416
-S321000176F467402C3C000187A42F022F064E944A8067044A9267462045D1FC000000
-S32100017710B46026902F132F0648790000F6AC4EB900004708486A00044EB900009F
-S3210001772C3E004A92670009D2601A2F02487A106A4E944A80664E2045D1FC000065
-S32100017748B4602083600009B62C3C000187AC2F022F064E944A8067044A926746A6
-S321000177642045D1FC0000B49026902F132F0648790000F6AC4EB900004708486AF4
-S3210001778000044EB900003E004A9267000978601A2F02487A10184E944A806652E0
-S3210001779C2045D1FC0000B49020836000095C4A8467402C3C000187B42F022F066D
-S321000177B84E944A8067044A9267462045D1FC0000B4C026902F132F06487900007A
-S321000177D4F6AC4EB900004708486A00044EB900003E004A926700091A601A2F028E
-S321000177F0487A0FC24E944A80664E2045D1FC0000B4C02083600008FE2C3C00016B
-S3210001780C87BC2F022F064E944A8067044A9267462045D1FC0000B4F026902F1342
-S321000178282F0648790000F6AC4EB900004708486A00044EB900003E004A92670011
-S3210001784408C0601A2F02487A0F704E944A8066522045D1FC0000B4F02083600030
-S3210001786008A44A8467402C3C000187C42F022F064E944A8067044A92674A2045C1
-S3210001787CD1FC0000B52026902F132F0648790000F6AC4EB900004708486A0004AB
-S321000178984EB900003E004A9267000862601E2F02487A0F1A4E944A80660E2045BC
-S321000178B4D1FC0000B5202083600008464A8467402C3C000187CC2F022F064E9445
-S321000178D04A8067044A9267462045D1FC0000B55026902F132F0648790000F6AC10
-S321000178EC4EB900004708486A00044EB900003E004A9267000804601A2F02487A6C
-S321000179080EC44E944A8066522045D1FC0000B5502083600007E84A8467402C3C20
-S32100017924000187D42F022F064E944A8067044A9267462045D1FC0000B5802690C1
-S321000179402F132F0648790000F6AC4EB900004708486A00044EB900003E004A921D
-S3210001795C670007A6601A2F02487A0E6E4E944A80664E2045D1FC0000B5802083A1
-S321000179786000078A2C3C000187DC2F022F064E944A8067044A9267462045D1FCF7
-S321000179940000B46426902F132F0648790000F6AC4EB900004708486A00044EB915
-S321000179B000003E004A926700074C601A2F02487A0E1C4E944A8066522045D1FCB3
-S321000179CC0000B4642083600007304A8467402C3C000187E42F022F064E944A80EB
-S321000179E867044A9267462045D1FC0000B49426902F132F0648790000F6AC4EB977
-S32100017A0400004708486A00044EB900003E004A92670006EE601A2F02487A0DC69E
-S32100017A204E944A80664E2045D1FC0000B4942083600006D22C3C000187EC2F0281
-S32100017A3C2F064E944A8067044A9267462045D1FC0000B4C426902F132F064879BA
-S32100017A580000F6AC4EB900004708486A00044EB900003E004A9267000694601AC1
-S32100017A742F02487A0D744E944A8066522045D1FC0000B4C42083600006784A841E
-S32100017A9067402C3C000187F42F022F064E944A8067044A92674A2045D1FC00000C
-S32100017AACB4F426902F132F0648790000F6AC4EB900004708486A00044EB900006C
-S32100017AC83E004A9267000636601E2F02487A0D1E4E944A80660E2045D1FC0000F0
-S32100017AE4B4F420836000061A4A8467402C3C000187FC2F022F064E944A806704D6
-S32100017B004A9267462045D1FC0000B52426902F132F0648790000F6AC4EB9000037
-S32100017B1C4708486A00044EB900003E004A92670005D8601A2F02487A0CC84E94B9
-S32100017B384A8066522045D1FC0000B5242083600005BC4A8467402C3C000188046F
-S32100017B542F022F064E944A8067044A9267462045D1FC0000B55426902F132F06A0
-S32100017B7048790000F6AC4EB900004708486A00044EB900003E004A926700057A7C
-S32100017B8C601A2F02487A0C724E944A80664E2045D1FC0000B55420836000055EEA
-S32100017BA82C3C0001880C2F022F064E944A8067044A9267462045D1FC0000B5844C
-S32100017BC426902F132F0648790000F6AC4EB900004708486A00044EB900003E00BD
-S32100017BE04A9267000520601A2F02487A0C204E944A8066522045D1FC0000B584B2
-S32100017BFC2083600005044A8467402C3C000188142F022F064E944A8067044A9287
-S32100017C1867462045D1FC0000B46826902F132F0648790000F6AC4EB90000470868
-S32100017C34486A00044EB900003E004A92670004C2601A2F02487A0BCA4E944A803B
-S32100017C50664E2045D1FC0000B4682083600004A62C3C0001881C2F022F064E940D
-S32100017C6C4A8067044A9267462045D1FC0000B49826902F132F0648790000F6AC29
-S32100017C884EB900004708486A00044EB900003E004A9267000468601A2F02487A6C
-S32100017CA40B784E944A8066522045D1FC0000B49820836000044C4A8467402C3C28
-S32100017CC0000188242F022F064E944A8067044A92674A2045D1FC0000B4C8269086
-S32100017CDC2F132F0648790000F6AC4EB900004708486A00044EB900003E004A927E
-S32100017CF86700040A601E2F02487A0B224E944A80660E2045D1FC0000B4C82083E5
-S32100017D14600003EE4A8467402C3C0001882C2F022F064E944A8067044A92674663
-S32100017D302045D1FC0000B4F826902F132F0648790000F6AC4EB900004708486ABA
-S32100017D4C00044EB900003E004A92670003AC601A2F02487A0ACC4E944A80665232
-S32100017D682045D1FC0000B4F82083600003904A8467402C3C000188342F022F0684
-S32100017D844E944A8067044A9267462045D1FC0000B52826902F132F06487900003F
-S32100017DA0F6AC4EB900004708486A00044EB900003E004A926700034E601A2F028E
-S32100017DBC487A0A764E944A80664E2045D1FC0000B5282083600003322C3C000152
-S32100017DD8883C2F022F064E944A8067044A9267462045D1FC0000B55826902F1387
-S32100017DF42F0648790000F6AC4EB900004708486A00044EB900003E004A92670040
-S32100017E1002F4601A2F02487A0A244E944A8066522045D1FC0000B5582083600018
-S32100017E2C02D84A8467402C3C000188442F022F064E944A8067044A926746204544
-S32100017E48D1FC0000B58826902F132F0648790000F6AC4EB900004708486A000471
-S32100017E644EB900003E004A9267000296601A2F02487A09CE4E944A80664E2045D2
-S32100017E80D1FC0000B58820836000027A2C3C0001884C2F022F064E944A8067049C
-S32100017E9C4A9267462045D1FC0000B46C26902F132F0648790000F6AC4EB9000051
-S32100017EB84708486A00044EB900003E004A926700023C601A2F02487A097C4E9408
-S32100017ED44A8066522045D1FC0000B46C2083600002204A8467402C3C00018854D8
-S32100017EF02F022F064E944A8067044A92674A2045D1FC0000B49C26902F132F06B6
-S32100017F0C48790000F6AC4EB900004708486A00044EB900003E004A92670001DE7C
-S32100017F28601E2F02487A09264E944A80660E2045D1FC0000B49C2083600001C22E
-S32100017F444A8467402C3C0001885C2F022F064E944A8067044A9267462045D1FC20
-S32100017F600000B4CC26902F132F0648790000F6AC4EB900004708486A00044EB9DB
-S32100017F7C00003E004A9267000180601A2F02487A08D04E944A8066522045D1FC05
-S32100017F980000B4CC2083600001644A8467402C3C000188642F022F064E944A8002
-S32100017FB467044A9267462045D1FC0000B4FC26902F132F0648790000F6AC4EB93D
-S32100017FD000004708486A00044EB900003E004A9267000122601A2F02487A087AEF
-S32100017FEC4E944A80664E2045D1FC0000B4FC2083600001062C3C0001886C2F0298
-S321000180082F064E944A8067044A9267462045D1FC0000B52C26902F132F0648797F
-S321000180240000F6AC4EB900004708486A00044EB900003E004A92670000C8601AC1
-S321000180402F02487A08284E944A8066502045D1FC0000B52C2083600000AC4A8408
-S3210001805C673E263C000188742F022F034E944A8067044A9267422045D1FC0000CC
-S32100018078B55C26902F132F0348790000F6AC4EB900004708486A00044EB9000034
-S321000180943E004A92676A60182F02487A07D44E944A8066462045D1FC0000B55CFD
-S321000180B020836050263C0001887C2F022F034E944A8067044A92673C2045D1FCC8
-S321000180CC0000B58C26902F132F0348790000F6AC4EB900004708486A00044EB9B0
-S321000180E800003E0060162F02487A078A4E944A80660A2045D1FC0000B58C20830B
-S321000181044CEE1C7CFFE04E5E4E7551FC555342414953520055534241494D5200BF
-S321000181204550494E464F0051434647520051FC5143464741520051FC535045458D
-S3210001813C4452005146524D4E554D52004550544E520051FC494655520051FC5168
-S32100018158494652300051FC51494652310051FC51494652320051FC5149465233E0
-S321000181740051FC51494652340051FC51494652350051FC51494652360051FC512E
-S32100018190494652370051FC51494652380051FC51494652390051FC514946523195
-S321000181AC300051FC49465231310051FC49465231320051FC49465231330051FC80
-S321000181C849465231340051FC49465231350051FC49465231360051FC49465231C6
-S321000181E4370051FC49465231380051FC49465231390051FC49465232300051FC35
-S3210001820049465232310051FC49465232320051FC49465232330051FC4946523292
-S3210001821C340051FC49465232350051FC49465232360051FC49465232370051FCFC
-S3210001823849465232380051FC49465232390051FC49465233300051FC494652334D
-S32100018254310051FC5050434E540051FC4450434E540051FC43524345434E5400EF
-S32100018270425345434E54005150494445434E540046524D45434E54005458504386
-S3210001828C4E540051434E544F5652005145503041435200514550304D50535200BC
-S321000182A8455030494652005145503053520051FC424D5254520051FC42525452F7
-S321000182C40051FC515756414C5545520057494E4445585200574C454E4754480099
-S321000182E04550314F55544143520051FC4550324F55544143520051FC4550334FA1
-S321000182FC55544143520051FC4550344F55544143520051FC4550354F5554414369
-S32100018318520051FC4550364F55544143520051FC4550314F55544D50535200516C
-S321000183344550324F55544D50535200514550334F55544D50535200514550344F69
-S3210001835055544D50535200514550354F55544D50535200514550364F55544D5019
-S3210001836C535200514550314F55544946520051FC4550324F55544946520051FC1F
-S321000183884550334F55544946520051FC4550344F55544946520051FC4550354FDC
-S321000183A455544946520051FC4550364F55544946520051FC4550314F555453528B
-S321000183C00051FC514550324F555453520051FC514550334F555453520051FC51F7
-S321000183DC4550344F555453520051FC514550354F555453520051FC514550364F5B
-S321000183F8555453520051FC514550314F55545346520051FC4550324F5554534628
-S32100018414520051FC4550334F55545346520051FC4550344F55545346520051FCB5
-S321000184304550354F55545346520051FC4550364F55545346520051FC4550314925
-S3210001844C4E4143520051FC51455032494E4143520051FC51455033494E41435244
-S321000184680051FC51455034494E4143520051FC51455035494E4143520051FC51AA
-S32100018484455036494E4143520051FC51455031494E4D5053520051FC4550324903
-S321000184A04E4D5053520051FC455033494E4D5053520051FC455034494E4D50539E
-S321000184BC520051FC455035494E4D5053520051FC455036494E4D5053520051FC1D
-S321000184D8455031494E4946520051FC51455032494E4946520051FC5145503349B7
-S321000184F44E4946520051FC51455034494E4946520051FC51455035494E49465277
-S321000185100051FC51455036494E4946520051FC51455031494E53520045503249B7
-S3210001852C4E535200455033494E535200455034494E535200455035494E5352002A
-S32100018548455036494E535200455031494E5346520051FC51455032494E534652DA
-S321000185640051FC51455033494E5346520051FC51455034494E5346520051FC5185
-S32100018580455035494E5346520051FC51455036494E5346520051FC5155534253C6
-S3210001859C520051FC55534243520051FC4452414D435200514452414D445200513C
-S321000185B85553424953520051555342494D5200514550305354415400455031533A
-S321000185D4544154004550325354415400455033535441540045503453544154008F
-S321000185F04550355354415400455036535441540045503049535200514550314948
-S3210001860C5352005145503249535200514550334953520051455034495352005140
-S3210001862845503549535200514550364953520051455030494D520051455031490F
-S321000186444D520051455032494D520051455033494D520051455034494D52005120
-S32100018660455035494D520051455036494D5200514550304652434647520051FC24
-S3210001867C4550314652434647520051FC4550324652434647520051FC4550334632
-S3210001869852434647520051FC4550344652434647520051FC4550354652434647FC
-S321000186B4520051FC4550364652434647520051FC45503046445200514550314634
-S321000186D044520051455032464452005145503346445200514550344644520051C1
-S321000186EC455035464452005145503646445200514550304653520051455031466F
-S32100018708535200514550324653520051455033465352005145503446535200514C
-S321000187244550354653520051455036465352005145503046435200514550314628
-S321000187404352005145503246435200514550334643520051455034464352005154
-S3210001875C4550354643520051455036464352005145503046415200514550314612
-S321000187784152005145503246415200514550334641520051455034464152005124
-S3210001879445503546415200514550364641520051455030465250005145503146CF
-S321000187B052500051455032465250005145503346525000514550344652500051B0
-S321000187CC4550354652500051455036465250005145503046575000514550314674
-S321000187E85750005145503246575000514550334657500051455034465750005164
-S32100018804455035465750005145503646575000514550304C524650004550314C35
-S32100018820524650004550324C524650004550334C524650004550344C5246500059
-S3210001883C4550354C524650004550364C524650004550304C574650004550314C0C
-S32100018858574650004550324C574650004550334C574650004550344C574650000D
-S321000188744550354C574650004550364C574650004E56FFE048D71C7C242E000846
-S32100018890282E000C262E001045F90002B3F047EA000849F900004F902A3C10004C
-S321000188AC00004A8467402C3C000198082F022F064E944A8067044A9267462045C0
-S321000188C8D1FC0002100026902F132F0648790000F6AC4EB900004708486A000412
-S321000188E44EB900003E004A9267000F0E601A2F02487A0F124E944A80664E204579
-S32100018900D1FC00021000208360000EF22C3C000198102F022F064E944A806704E4
-S3210001891C4A9267462045D1FC0002100426902F132F0648790000F6AC4EB90000D0
-S321000189384708486A00044EB900003E004A9267000EB4601A2F02487A0EC04E94B0
-S321000189544A8066522045D1FC00021004208360000E984A8467402C3C00019818FF
-S321000189702F022F064E944A8067044A9267462045D1FC0002102826902F132F0645
-S3210001898C48790000F6AC4EB900004708486A00044EB900003E004A9267000E566D
-S321000189A8601A2F02487A0E6A4E944A80664E2045D1FC00021028208360000E3AB0
-S321000189C42C3C000198202F022F064E944A8067044A9267462045D1FC0002102CF9
-S321000189E026902F132F0648790000F6AC4EB900004708486A00044EB900003E0093
-S321000189FC4A9267000DFC601A2F02487A0E184E944A8066522045D1FC0002102CA5
-S32100018A18208360000DE04A8467402C3C000198282F022F064E944A8067044A9254
-S32100018A34674A2045D1FC0002100826902F132F0648790000F6AC4EB9000047083C
-S32100018A50486A00044EB900003E004A9267000D9E601E2F02487A0DC24E944A802E
-S32100018A6C660E2045D1FC00021008208360000D824A8467402C3C000198302F02BE
-S32100018A882F064E944A8067044A9267462045D1FC0002100C26902F132F064879B8
-S32100018AA40000F6AC4EB900004708486A00044EB900003E004A9267000D40601AB2
-S32100018AC02F02487A0D6C4E944A8066522045D1FC0002100C208360000D244A8471
-S32100018ADC67402C3C000198382F022F064E944A8067044A9267462045D1FC00025D
-S32100018AF8101026902F132F0648790000F6AC4EB900004708486A00044EB9000098
-S32100018B143E004A9267000CE2601A2F02487A0D164E944A80664E2045D1FC0002AB
-S32100018B301010208360000CC62C3C000198402F022F064E944A8067044A926746E6
-S32100018B4C2045D1FC0002101426902F132F0648790000F6AC4EB900004708486A16
-S32100018B6800044EB900003E004A9267000C88601A2F02487A0CC44E944A80665229
-S32100018B842045D1FC00021014208360000C6C4A8467402C3C000198482F022F06D7
-S32100018BA04E944A8067044A9267462045D1FC0002101C26902F132F0648790000C4
-S32100018BBCF6AC4EB900004708486A00044EB900003E004A9267000C2A601A2F027F
-S32100018BD8487A0C6E4E944A80664E2045D1FC0002101C208360000C0E2C3C0001F8
-S32100018BF498502F022F064E944A8067044A9267462045D1FC0002102026902F1314
-S32100018C102F0648790000F6AC4EB900004708486A00044EB900003E004A92670015
-S32100018C2C0BD0601A2F02487A0C1C4E944A8066522045D1FC0002102020836000EA
-S32100018C480BB44A8467402C3C000198582F022F064E944A8067044A92674A20450D
-S32100018C64D1FC0002103026902F132F0648790000F6AC4EB900004708486A000442
-S32100018C804EB900003E004A9267000B72601E2F02487A0BC64E944A80660E204505
-S32100018C9CD1FC00021030208360000B564A8467402C3C000198602F022F064E9424
-S32100018CB84A8067044A9267462045D1FC0002103826902F132F0648790000F6ACCF
-S32100018CD44EB900004708486A00044EB900003E004A9267000B14601A2F02487A5D
-S32100018CF00B704E944A8066522045D1FC00021038208360000AF84A8467402C3C24
-S32100018D0C000198682F022F064E944A8067044A9267462045D1FC0002200C269027
-S32100018D282F132F0648790000F6AC4EB900004708486A00044EB900003E004A9221
-S32100018D4467000AB6601A2F02487A0B1A4E944A80664E2045D1FC0002200C2083F0
-S32100018D6060000A9A2C3C000198702F022F064E944A8067044A9267462045D1FC43
-S32100018D7C0002300C26902F132F0648790000F6AC4EB900004708486A00044EB9F3
-S32100018D9800003E004A9267000A5C601A2F02487A0AC84E944A8066522045D1FCFC
-S32100018DB40002300C208360000A404A8467402C3C000198782F022F064E944A8011
-S32100018DD067044A9267462045D1FC0002201026902F132F0648790000F6AC4EB991
-S32100018DEC00004708486A00044EB900003E004A92670009FE601A2F02487A0A72E7
-S32100018E084E944A80664E2045D1FC000220102083600009E22C3C000198802F02E3
-S32100018E242F064E944A8067044A9267462045D1FC0002301026902F132F064879F4
-S32100018E400000F6AC4EB900004708486A00044EB900003E004A92670009A4601AB2
-S32100018E5C2F02487A0A204E944A8066522045D1FC000230102083600009884A849C
-S32100018E7867402C3C000198882F022F064E944A8067044A92674A2045D1FC000269
-S32100018E94201426902F132F0648790000F6AC4EB900004708486A00044EB90000E4
-S32100018EB03E004A9267000946601E2F02487A09CA4E944A80660E2045D1FC000237
-S32100018ECC201420836000092A4A8467402C3C000198902F022F064E944A80670496
-S32100018EE84A9267462045D1FC0002301426902F132F0648790000F6AC4EB90000CF
-S32100018F044708486A00044EB900003E004A92670008E8601A2F02487A09744E9401
-S32100018F204A8066522045D1FC000230142083600008CC4A8467402C3C000198984F
-S32100018F3C2F022F064E944A8067044A9267462045D1FC0002204426902F132F0647
-S32100018F5848790000F6AC4EB900004708486A00044EB900003E004A926700088A6D
-S32100018F74601A2F02487A091E4E944A80664E2045D1FC0002204420836000086ED5
-S32100018F902C3C000198A02F022F064E944A8067044A9267462045D1FC000230446F
-S32100018FAC26902F132F0648790000F6AC4EB900004708486A00044EB900003E00C1
-S32100018FC84A9267000830601A2F02487A08CC4E944A8066522045D1FC00023044BE
-S32100018FE42083600008144A8467402C3C000198A82F022F064E944A8067044A92D4
-S3210001900067462045D1FC0002204C26902F132F0648790000F6AC4EB9000047081A
-S3210001901C486A00044EB900003E004A92670007D2601A2F02487A08764E944A8083
-S32100019038664E2045D1FC0002204C2083600007B62C3C000198AC2F022F064E940C
-S321000190544A8067044A9267462045D1FC0002304C26902F132F0648790000F6ACFB
-S321000190704EB900004708486A00044EB900003E004A9267000778601A2F02487A5D
-S3210001908C08204E944A8066522045D1FC0002304C20836000075C4A8467402C3C42
-S321000190A8000198B02F022F064E944A8067044A92674C2045D1FC000280182690CE
-S321000190C42F132F0648790000F68C4EB900004708486A00044EB900003E004A92A2
-S321000190E06700071A60202F02487A07C64E944A8066102045D1FC000280187183C3
-S321000190FC2080600006FC4A8467402C3C000198B82F022F064E944A8067044A92C8
-S3210001911867482045D1FC0002802826902F132F0648790000F68C4EB900004708E3
-S32100019134486A00044EB900003E004A92670006BA601C2F02487A076E4E944A808A
-S3210001915066542045D1FC00028028718320806000069C4A8467402C3C000198C09A
-S3210001916C2F022F064E944A8067044A9267482045D1FC0002803026902F132F06C7
-S3210001918848790000F69C4EB900004708486A00044EB900003E004A926700065A7D
-S321000191A4601C2F02487A07164E944A8066502045D1FC0002803071C320806000A2
-S321000191C0063C2C3C000198C82F022F064E944A8067044A9267482045D1FC000245
-S321000191DC803826902F132F0648790000F69C4EB900004708486A00044EB9000025
-S321000191F83E004A92670005FE601C2F02487A06C24E944A8066542045D1FC0002FF
-S32100019214803871C32080600005E04A8467402C3C000198D02F022F064E944A800E
-S3210001923067044A9267482045D1FC0002A01826902F132F0648790000F68C4EB9C2
-S3210001924C00004708486A00044EB900003E004A926700059E601C2F02487A066AF0
-S321000192684E944A8066502045D1FC0002A01871832080600005802C3C000198D843
-S321000192842F022F064E944A8067044A9267482045D1FC0002A02826902F132F0696
-S321000192A048790000F68C4EB900004708486A00044EB900003E004A92670005428D
-S321000192BC601C2F02487A06164E944A8066542045D1FC0002A028718320806000AE
-S321000192D805244A8467402C3C000198DC2F022F064E944A8067044A92674C204587
-S321000192F4D1FC0002A03026902F132F0648790000F69C4EB900004708486A00042C
-S321000193104EB900003E004A92670004E260202F02487A05BA4E944A806610204513
-S3210001932CD1FC0002A03071C32080600004C44A8467402C3C000198E42F022F06C3
-S321000193484E944A8067044A9267482045D1FC0002A03826902F132F064879000066
-S32100019364F69C4EB900004708486A00044EB900003E004A9267000482601C2F028D
-S32100019380487A05624E944A8066542045D1FC0002A03871C32080600004644A84C5
-S3210001939C67402C3C000198EC2F022F064E944A8067044A9267482045D1FC0002DE
-S321000193B8C01826902F132F0648790000F68C4EB900004708486A00044EB9000037
-S321000193D43E004A9267000422601C2F02487A050A4E944A8066502045D1FC0002BB
-S321000193F0C01871832080600004042C3C000198F42F022F064E944A8067044A9238
-S3210001940C67482045D1FC0002C02826902F132F0648790000F68C4EB900004708AC
-S32100019428486A00044EB900003E004A92670003C6601C2F02487A04B64E944A8045
-S3210001944466542045D1FC0002C02871832080600003A84A8467402C3C000198FC1E
-S321000194602F022F064E944A8067044A9267482045D1FC0002C03026902F132F0690
-S3210001947C48790000F69C4EB900004708486A00044EB900003E004A92670003667D
-S32100019498601C2F02487A045E4E944A8066502045D1FC0002C03071C32080600026
-S321000194B403482C3C000199042F022F064E944A8067044A9267482045D1FC000208
-S321000194D0C03826902F132F0648790000F69C4EB900004708486A00044EB90000EE
-S321000194EC3E004A926700030A601C2F02487A040A4E944A8066542045D1FC0002B8
-S32100019508C03871C32080600002EC4A8467402C3C0001990C2F022F064E944A8091
-S3210001952467044A92674C2045D1FC0002E01826902F132F0648790000F68C4EB987
-S3210001954000004708486A00044EB900003E004A92670002AA60202F02487A03B2A7
-S3210001955C4E944A8066102045D1FC0002E018718320806000028C4A8467402C3C3F
-S32100019578000199142F022F064E944A8067044A9267482045D1FC0002E028269028
-S321000195942F132F0648790000F68C4EB900004708486A00044EB900003E004A92CD
-S321000195B06700024A601C2F02487A035A4E944A8066542045D1FC0002E028718383
-S321000195CC20806000022C4A8467402C3C0001991C2F022F064E944A8067044A9262
-S321000195E867482045D1FC0002E03026902F132F0648790000F69C4EB90000470897
-S32100019604486A00044EB900003E004A92670001EA601C2F02487A03024E944A80FA
-S3210001962066502045D1FC0002E03071C32080600001CC2C3C000199242F022F06A0
-S3210001963C4E944A8067044A9267482045D1FC0002E03826902F132F06487900002F
-S32100019658F69C4EB900004708486A00044EB900003E004A926700018E601C2F028D
-S32100019674487A02AE4E944A8066542045D1FC0002E03871C32080600001704A843C
-S3210001969067402C3C0001992C2F022F064E944A8067044A9267482045D1FC0003A5
-S321000196AC201826902F132F0648790000F68C4EB900004708486A00044EB90000E0
-S321000196C83E004A926700012E601C2F02487A02564E944A8066502045D1FC000371
-S321000196E4201871832080600001102C3C000199342F022F064E944A8067044A9297
-S3210001970067482045D1FC0003202826902F132F0648790000F68C4EB90000470854
-S3210001971C486A00044EB900003E004A92670000D2601C2F02487A02024E944A80FB
-S3210001973866522045D1FC0003202871832080600000B44A84673E263C0001993C86
-S321000197542F022F034E944A8067044A9267482045D1FC0003203026902F132F033E
-S3210001977048790000F69C4EB900004708486A00044EB900003E004A926772601EFF
-S3210001978C2F02487A01AC4E944A80660E2045D1FC0003203071C3208060564A841D
-S321000197A8673A263C000199442F022F034E944A8067044A92673E2045D1FC00038D
-S321000197C4203826902F132F0348790000F69C4EB900004708486A00044EB900009A
-S321000197E03E0060182F02487A015C4E944A80660C2045D1FC0003203871C32080E1
-S321000197FC4CEE1C7CFFE04E5E4E7551FC455541435248005145554143524C0051C7
-S32100019818455541535248005145554153524C005153494D52480051FC53494D52EC
-S321000198344C0051FC53495352480051FC534953524C0051FC534943524C0051FCFE
-S32100019850534944520051FC51534D43520051FC514D4541520051FC514343435274
-S3210001986C300051FC43434352310051FC43435053524830004343505352483100DC
-S3210001988843435053524C300043435053524C310043445052300051FC43445052FF
-S321000198A4310051FC465230004652310041465243520051FC414653520051FC510D
-S321000198C041464953520051FC4146494D520051FC445243520051FC514453520055
-S321000198DC444953520051FC5144494D520051FC514D445243520051FC4D445352D4
-S321000198F80051FC514D444953520051FC4D44494D520051FC524E475243520051FE
-S32100019914524E4753520051FC524E474953520051524E47494D52005141455352E6
-S321000199304352005141455353520051FC4145534953520051414553494D52005139
-S3210001994C4E56FFE448D71C3C242E0008282E001045F90002B3F047EA0008263CBC
-S32100019968100000004AAE000C49F900004F9067422A3C00019BB02F022F054E9405
-S321000199844A8067044A9267482043D1FC00008F00719026802F002F054879000076
-S321000199A0F68C4EB900004708486A00044EB900003E004A92670001EE601A2F02F4
-S321000199BC487A01F24E944A8066502043D1FC00008F001084600001D22A3C000184
-S321000199D89BB82F022F054E944A8067044A9267482043D1FC00008F0471902680A8
-S321000199F42F002F0548790000F68C4EB900004708486A00044EB900003E004A927D
-S32100019A1067000192601A2F02487A019E4E944A8066562043D1FC00008F0410846E
-S32100019A2C600001764AAE000C67422A3C00019BC02F022F054E944A8067044A9279
-S32100019A4867482043D1FC00008F08719026802F002F0548790000F68C4EB9000031
-S32100019A644708486A00044EB900003E004A9267000130601A2F02487A01444E948D
-S32100019A804A8066502043D1FC00008F081084600001142A3C00019BC82F022F0544
-S32100019A9C4E944A8067044A9267482043D1FC00008F0C719026802F002F0548796F
-S32100019AB80000F68C4EB900004708486A00044EB900003E004A92670000D4601A27
-S32100019AD42F02487A00F04E944A8066542043D1FC00008F0C1084600000B84AAEB7
-S32100019AF0000C6740283C00019BD02F022F044E944A8067044A92674A2043D1FC98
-S32100019B0C00008F10719026802F002F0448790000F68C4EB900004708486A00043F
-S32100019B284EB900003E004A926772601E2F02487A00984E944A80660C2043D1FCC9
-S32100019B4400008F10108460584AAE000C673C283C00019BD82F022F044E944A8084
-S32100019B6067044A92673E2043D1FC00008F20719026802F002F0448790000F68CCB
-S32100019B7C4EB900004708486A00044EB900003E0060162F02487A00464E944A801A
-S32100019B98660A2043D1FC00008F2010844CEE1C3CFFE44E5E4E7551FC4932415288
-S32100019BB40051FC5149324644520051FC493243520051FC51493253520051FC51E0
-S32100019BD0493244520051FC5149324943520051FC4E56FFE048D71C7C242E000889
-S32100019BEC282E000C262E001045F90002B3F047EA000849F900004F902A3C1000DD
-S32100019C0800004A8467402C3C0001A3FC2F022F064E944A8067044A926746204551
-S32100019C24D1FC00008A0026902F132F0648790000F6AC4EB900004708486A00042A
-S32100019C404EB900003E004A92670007A6601A2F02487A07AA4E944A80664E2045E9
-S32100019C5CD1FC00008A0020836000078A2C3C0001A4042F022F064E944A8067046C
-S32100019C784A9267462045D1FC00008A0826902F132F0648790000F6AC4EB90000E5
-S32100019C944708486A00044EB900003E004A926700074C601A2F02487A07584E941F
-S32100019CB04A8066522045D1FC00008A082083600007304A8467402C3C0001A40C83
-S32100019CCC2F022F064E944A8067044A9267462045D1FC00008A0C26902F132F067A
-S32100019CE848790000F6AC4EB900004708486A00044EB900003E004A92670006EE6E
-S32100019D04601A2F02487A07024E944A80664E2045D1FC00008A0C2083600006D2C3
-S32100019D202C3C0001A4142F022F064E944A8067044A9267462045D1FC00008A102D
-S32100019D3C26902F132F0648790000F6AC4EB900004708486A00044EB900003E0023
-S32100019D584A9267000694601A2F02487A06B04E944A8066522045D1FC00008A10B8
-S32100019D742083600006784A8467402C3C0001A41C2F022F064E944A8067044A9254
-S32100019D90674A2045D1FC00008A1426902F132F0648790000F6AC4EB90000470849
-S32100019DAC486A00044EB900003E004A9267000636601E2F02487A065A4E944A809D
-S32100019DC8660E2045D1FC00008A1420836000061A4A8467402C3C0001A4242F023A
-S32100019DE42F064E944A8067044A9267462045D1FC00008A1826902F132F064879C5
-S32100019E000000F6AC4EB900004708486A00044EB900003E004A92670005D8601AB2
-S32100019E1C2F02487A06044E944A8066522045D1FC00008A182083600005BC4A845C
-S32100019E3867402C3C0001A42C2F022F064E944A8067044A9267462045D1FC0000EF
-S32100019E548A1C26902F132F0648790000F6AC4EB900004708486A00044EB90000A2
-S32100019E703E004A926700057A601A2F02487A05AE4E944A80664E2045D1FC00001D
-S32100019E8C8A1C20836000055E2C3C0001A4342F022F064E944A8067044A92674660
-S32100019EA82045D1FC00008A2026902F132F0648790000F6AC4EB900004708486A23
-S32100019EC400044EB900003E004A9267000520601A2F02487A055C4E944A80665298
-S32100019EE02045D1FC00008A202083600005044A8467402C3C0001A43C2F022F0653
-S32100019EFC4E944A8067044A9267462045D1FC00008A2426902F132F0648790000D5
-S32100019F18F6AC4EB900004708486A00044EB900003E004A92670004C2601A2F027F
-S32100019F34487A05064E944A80664E2045D1FC00008A242083600004A62C3C0001E7
-S32100019F50A4442F022F064E944A8067044A9267462045D1FC00008A2826902F1324
-S32100019F6C2F0648790000F6AC4EB900004708486A00044EB900003E004A926700A6
-S32100019F880468601A2F02487A04B44E944A8066522045D1FC00008A2820836000DA
-S32100019FA4044C4A8467402C3C000198D82F022F064E944A8067044A92674A20458D
-S32100019FC0D1FC00008A2C26902F132F0648790000F6AC4EB900004708486A00045F
-S32100019FDC4EB900003E004A926700040A601E2F02487AF8EA4E944A80660E2045F4
-S32100019FF8D1FC00008A2C2083600003EE4A8467402C3C0001A44C2F022F064E94B9
-S3210001A0144A8067044A9267462045D1FC00008A3026902F132F0648790000F6ACEF
-S3210001A0304EB900004708486A00044EB900003E004A92670003AC601A2F02487A5D
-S3210001A04C04004E944A8066522045D1FC00008A302083600003904A8467402C3C2A
-S3210001A0680001A4542F022F064E944A8067044A9267462045D1FC00008A34269030
-S3210001A0842F132F0648790000F6AC4EB900004708486A00044EB900003E004A92B2
-S3210001A0A06700034E601A2F02487A03AA4E944A80664E2045D1FC00008A342083D8
-S3210001A0BC600003322C3C0001A45C2F022F064E944A8067044A9267462045D1FC4B
-S3210001A0D800008A3826902F132F0648790000F6AC4EB900004708486A00044EB900
-S3210001A0F400003E004A92670002F4601A2F02487A03584E944A8066522045D1FC74
-S3210001A11000008A382083600002D84A8467402C3C0001A4642F022F064E944A8095
-S3210001A12C67044A9267462045D1FC00008A3C26902F132F0648790000F6AC4EB98D
-S3210001A14800004708486A00044EB900003E004A9267000296601A2F02487A03025D
-S3210001A1644E944A80664E2045D1FC00008A3C20836000027A2C3C0001A46C2F0257
-S3210001A1802F064E944A8067044A9267462045D1FC00008A4026902F132F064879FD
-S3210001A19C0000F6AC4EB900004708486A00044EB900003E004A926700023C601AB2
-S3210001A1B82F02487A02B04E944A8066522045D1FC00008A402083600002204A848C
-S3210001A1D467402C3C0001A4742F022F064E944A8067044A92674A2045D1FC000004
-S3210001A1F08A4426902F132F0648790000F6AC4EB900004708486A00044EB90000DB
-S3210001A20C3E004A92670001DE601E2F02487A025A4E944A80660E2045D1FC0000B0
-S3210001A2288A442083600001C24A8467402C3C0001A47C2F022F064E944A80670404
-S3210001A2444A9267462045D1FC00008A4826902F132F0648790000F6AC4EB90000D3
-S3210001A2604708486A00044EB900003E004A9267000180601A2F02487A02044E9478
-S3210001A27C4A8066522045D1FC00008A482083600001644A8467402C3C0001A484CB
-S3210001A2982F022F064E944A8067044A9267462045D1FC00008A7C26902F132F0638
-S3210001A2B448790000F6AC4EB900004708486A00044EB900003E004A92670001226D
-S3210001A2D0601A2F02487A01AE4E944A80664E2045D1FC00008A7C208360000106AD
-S3210001A2EC2C3C0001A48C2F022F064E944A8067044A9267462045D1FC00008A8074
-S3210001A30826902F132F0648790000F6AC4EB900004708486A00044EB900003E0051
-S3210001A3244A92670000C8601A2F02487A015C4E944A8066502045D1FC00008A80A3
-S3210001A3402083600000AC4A84673E263C0001A4942F022F034E944A8067044A92E7
-S3210001A35C67422045D1FC00008A8426902F132F0348790000F6AC4EB90000470812
-S3210001A378486A00044EB900003E004A92676A60182F02487A01084E944A8066464E
-S3210001A3942045D1FC00008A8420836050263C0001A49C2F022F034E944A806704F6
-S3210001A3B04A92673C2045D1FC00008A8826902F132F0348790000F6AC4EB9000033
-S3210001A3CC4708486A00044EB900003E0060162F02487A00BE4E944A80660A20457C
-S3210001A3E8D1FC00008A8820834CEE1C7CFFE04E5E4E7551FC444D43520051FC519F
-S3210001A404445443520051FC5144435441523000514443544152310051444354416F
-S3210001A420523200514443544152330051444354415234005144435441523500516B
-S3210001A43C4443544152360051444354415237005144495253520051FC4454465211
-S3210001A4580051FC51445246520051FC51445446445230005144544644523100518C
-S3210001A47444544644523200514454464452330051445246445230005144524644C3
-S3210001A49052310051445246445232005144524644523300514E56FFDC48D73C7C94
-S3210001A4AC242E00082A2E000C282E001045F90002B3F047EA000849F910000000FB
-S3210001A4C8263C00004F904A85673C2C3C0001A7682F022F062A434E954A8067045B
-S3210001A4E44A92673C26AC7F002F132F0648790000F6AC4EB900004708486A00049F
-S3210001A5004EB900003E004A926700025460162F02487A02562A434E954A806644D5
-S3210001A51C29447F006000023C2C3C0001A7702F022F062A434E954A8067044A924B
-S3210001A538673A26AC7F042F132F0648790000F6AC4EB900004708486A00044EB91D
-S3210001A55400003E004A926700020260142F02487A020C4E954A80664829447F049F
-S3210001A570600001EC4A85673C2C3C0001A7782F022F062A434E954A8067044A92BA
-S3210001A58C673C26AC7F082F132F0648790000F6AC4EB900004708486A00044EB9C3
-S3210001A5A800003E004A92670001AE60162F02487A01C02A434E954A806644294405
-S3210001A5C47F08600001962C3C0001A7802F022F062A434E954A8067044A92673AFE
-S3210001A5E026AC7F0C2F132F0648790000F6AC4EB900004708486A00044EB900000E
-S3210001A5FC3E004A926700015C60142F02487A01764E954A80664829447F0C6000CD
-S3210001A61801464A85673C2C3C0001A7882F022F062A434E954A8067044A92674060
-S3210001A63426AC7F102F132F0648790000F6AC4EB900004708486A00044EB90000B5
-S3210001A6503E004A9267000108601A2F02487A012A2A434E954A80660829447F1041
-S3210001A66C600000F04A85673C2C3C0001A7902F022F062A434E954A8067044A92A2
-S3210001A688673C26AC7F142F132F0648790000F6AC4EB900004708486A00044EB9BA
-S3210001A6A400003E004A92670000B260162F02487A00DC24434E924A8066462944F1
-S3210001A6C07F146000009A4A85673A283C0001A7982F022F042A434E954A806704ED
-S3210001A6DC4A92673826AC7F182F132F0448790000F6AC4EB900004708486A000493
-S3210001A6F84EB900003E004A92675C60142F02487A009024434E924A80663C294444
-S3210001A7147F186046283C0001A7A02F022F042A434E954A8067044A92673026AC0B
-S3210001A7307F1C2F132F0448790000F6AC4EB900004708486A00044EB900003E0042
-S3210001A74C60102F02487A004E4E924A80660429447F1C4CEE3C7CFFDC4E5E4E75E1
-S3210001A76843544352463000514354435246310051435443524632005143544352C6
-S3210001A78446330051435443525634005143544352563500514354435256360051D0
-S3210001A7A043544352563700514E56FFE048D71C7C242E0008282E000C262E001032
-S3210001A7BC45F90002B3F047EA000849F900004F902A3C100000004A8467402C3CEA
-S3210001A7D80001B4782F022F064E944A8067044A9267462045D1FC000098042690A7
-S3210001A7F42F132F0648790000F6AC4EB900004708486A00044EB900003E004A923B
-S3210001A81067000C5C601A2F02487A0C5E4E944A80664E2045D1FC000098042083AE
-S3210001A82C60000C402C3C0001B4802F022F064E944A8067044A9267462045D1FC88
-S3210001A8480000980826902F132F0648790000F6AC4EB900004708486A00044EB9AA
-S3210001A86400003E004A9267000C02601A2F02487A0C0C4E944A8066522045D1FC27
-S3210001A88000009808208360000BE64A8467402C3C0001B4882F022F064E944A80F5
-S3210001A89C67044A9267462045D1FC0000982426902F132F0648790000F6AC4EB920
-S3210001A8B800004708486A00044EB900003E004A9267000BA4601A2F02487A0BB613
-S3210001A8D44E944A80664E2045D1FC00009824208360000B882C3C0001B4902F029F
-S3210001A8F02F064E944A8067044A9267462045D1FC0000984026902F132F06487978
-S3210001A90C0000F6AC4EB900004708486A00044EB900003E004A9267000B4A601A23
-S3210001A9282F02487A0B644E944A8066522045D1FC00009840208360000B2E4A8432
-S3210001A94467402C3C0001B4982F022F064E944A8067044A92674A2045D1FC000058
-S3210001A960984426902F132F0648790000F6AC4EB900004708486A00044EB9000055
-S3210001A97C3E004A9267000AEC601E2F02487A0B0E4E944A80660E2045D1FC000065
-S3210001A9989844208360000AD04A8467402C3C0001B4A02F022F064E944A80670434
-S3210001A9B44A9267462045D1FC0000986426902F132F0648790000F6AC4EB9000032
-S3210001A9D04708486A00044EB900003E004A9267000A8E601A2F02487A0AB84E942E
-S3210001A9EC4A8066522045D1FC00009864208360000A724A8467402C3C0001B4A8DF
-S3210001AA082F022F064E944A8067044A9267462045D1FC0000988426902F132F06AA
-S3210001AA2448790000F6AC4EB900004708486A00044EB900003E004A9267000A30DE
-S3210001AA40601A2F02487A0A624E944A80664E2045D1FC00009884208360000A144B
-S3210001AA5C2C3C0001B4B02F022F064E944A8067044A9267462045D1FC00009888B2
-S3210001AA7826902F132F0648790000F6AC4EB900004708486A00044EB900003E00DA
-S3210001AA944A92670009D6601A2F02487A0A104E944A8066522045D1FC0000988840
-S3210001AAB02083600009BA4A8467402C3C0001B4B82F022F064E944A8067044A921A
-S3210001AACC67462045D1FC000098C426902F132F0648790000F6AC4EB90000470846
-S3210001AAE8486A00044EB900003E004A9267000978601A2F02487A09BA4E944A80B0
-S3210001AB04664E2045D1FC000098C420836000095C2C3C0001B4C02F022F064E945F
-S3210001AB204A8067044A9267462045D1FC000098E426902F132F0648790000F6AC16
-S3210001AB3C4EB900004708486A00044EB900003E004A926700091E601A2F02487ACE
-S3210001AB5809684E944A8066522045D1FC000098E42083600009024A8467402C3C6C
-S3210001AB740001B4C82F022F064E944A8067044A92674A2045D1FC000098E82690CF
-S3210001AB902F132F0648790000F6AC4EB900004708486A00044EB900003E004A929B
-S3210001ABAC670008C0601E2F02487A09124E944A80660E2045D1FC000098E8208356
-S3210001ABC8600008A44A8467402C3C0001B4D02F022F064E944A8067044A926746F6
-S3210001ABE42045D1FC000098EC26902F132F0648790000F6AC4EB900004708486A00
-S3210001AC0000044EB900003E004A9267000862601A2F02487A08BC4E944A806652A6
-S3210001AC1C2045D1FC000098EC2083600008464A8467402C3C0001B4D82F022F063E
-S3210001AC384E944A8067044A9267462045D1FC0000991826902F132F064879000088
-S3210001AC54F6AC4EB900004708486A00044EB900003E004A9267000804601A2F02F0
-S3210001AC70487A08664E944A80664E2045D1FC000099182083600007E82C3C0001F3
-S3210001AC8CB4E02F022F064E944A8067044A9267462045D1FC0000991C26902F132C
-S3210001ACA82F0648790000F6AC4EB900004708486A00044EB900003E004A9267005D
-S3210001ACC407AA601A2F02487A08144E944A8066522045D1FC0000991C20836000E5
-S3210001ACE0078E4A8467402C3C0001B4E82F022F064E944A8067044A9267462045D7
-S3210001ACFCD1FC0000992026902F132F0648790000F6AC4EB900004708486A000413
-S3210001AD184EB900003E004A926700074C601A2F02487A07BE4E944A80664E204546
-S3210001AD34D1FC000099202083600007302C3C0001B4F02F022F064E944A806704B2
-S3210001AD504A9267462045D1FC0000992426902F132F0648790000F6AC4EB90000D1
-S3210001AD6C4708486A00044EB900003E004A92670006F2601A2F02487A076C4E947D
-S3210001AD884A8066522045D1FC000099242083600006D64A8467402C3C0001B4F8CE
-S3210001ADA42F022F064E944A8067044A92674A2045D1FC0000994426902F132F0646
-S3210001ADC048790000F6AC4EB900004708486A00044EB900003E004A9267000694DF
-S3210001ADDC601E2F02487A07164E944A80660E2045D1FC0000994420836000067816
-S3210001ADF84A8467402C3C0001B5042F022F064E944A8067044A9267462045D1FC69
-S3210001AE140000998426902F132F0648790000F6AC4EB900004708486A00044EB95B
-S3210001AE3000003E004A9267000636601A2F02487A06C44E944A8066522045D1FC75
-S3210001AE4C0000998420836000061A4A8467402C3C0001B5102F022F064E944A80EE
-S3210001AE6867044A9267462045D1FC0000998826902F132F0648790000F6AC4EB9E9
-S3210001AE8400004708486A00044EB900003E004A92670005D8601A2F02487A06725C
-S3210001AEA04E944A80664E2045D1FC000099882083600005BC2C3C0001B51C2F02AD
-S3210001AEBC2F064E944A8067044A9267462045D1FC0000998C26902F132F06487959
-S3210001AED80000F6AC4EB900004708486A00044EB900003E004A926700057E601A24
-S3210001AEF42F02487A06244E944A8066522045D1FC0000998C2083600005624A842B
-S3210001AF1067402C3C0001B5282F022F064E944A8067044A9267462045D1FC0000F9
-S3210001AF2C999026902F132F0648790000F6AC4EB900004708486A00044EB9000036
-S3210001AF483E004A9267000520601A2F02487A05D24E944A80664E2045D1FC00006A
-S3210001AF6499902083600005042C3C0001B5342F022F064E944A8067044A9267463D
-S3210001AF802045D1FC0000999426902F132F0648790000F6AC4EB900004708486AB7
-S3210001AF9C00044EB900003E004A92670004C6601A2F02487A05844E944A806652E2
-S3210001AFB82045D1FC000099942083600004AA4A8467402C3C0001B5402F022F062D
-S3210001AFD44E944A8067044A92674A2045D1FC0000999826902F132F064879000065
-S3210001AFF0F6AC4EB900004708486A00044EB900003E004A9267000468601E2F02ED
-S3210001B00C487A05324E944A80660E2045D1FC0000999820836000044C4A846740DD
-S3210001B0282C3C0001B54C2F022F064E944A8067044A9267462045D1FC0000999C2E
-S3210001B04426902F132F0648790000F6AC4EB900004708486A00044EB900003E0008
-S3210001B0604A926700040A601A2F02487A04E04E944A8066522045D1FC0000999C60
-S3210001B07C2083600003EE4A8467402C3C0001B5582F022F064E944A8067044A9279
-S3210001B09867462045D1FC000099A026902F132F0648790000F6AC4EB90000470897
-S3210001B0B4486A00044EB900003E004A92670003AC601A2F02487A048E4E944A80E1
-S3210001B0D0664E2045D1FC000099A02083600003902C3C0001B5642F022F064E94DE
-S3210001B0EC4A8067044A9267462045D1FC000099A426902F132F0648790000F6AC84
-S3210001B1084EB900004708486A00044EB900003E004A9267000352601A2F02487ACE
-S3210001B12404404E944A8066522045D1FC000099A42083600003364A8467402C3CD8
-S3210001B1400001B5702F022F064E944A8067044A9267462045D1FC000099A8269097
-S3210001B15C2F132F0648790000F6AC4EB900004708486A00044EB900003E004A92C9
-S3210001B178670002F4601A2F02487A03EE4E944A80664E2045D1FC000099A8208383
-S3210001B194600002D82C3C0001B57C2F022F064E944A8067044A9267462045D1FC8C
-S3210001B1B0000099AC26902F132F0648790000F6AC4EB900004708486A00044EB994
-S3210001B1CC00003E004A926700029A601A2F02487A03A04E944A8066522045D1FC9D
-S3210001B1E8000099AC20836000027E4A8467402C3C0001B5882F022F064E944A804F
-S3210001B20467044A92674A2045D1FC000099B026902F132F0648790000F6AC4EB91D
-S3210001B22000004708486A00044EB900003E004A926700023C601E2F02487A034E7E
-S3210001B23C4E944A80660E2045D1FC000099B02083600002204A8467402C3C000151
-S3210001B258B5942F022F064E944A8067044A9267462045D1FC000099B426902F130D
-S3210001B2742F0648790000F6AC4EB900004708486A00044EB900003E004A9267008B
-S3210001B29001DE601A2F02487A02FC4E944A8066522045D1FC000099B4208360006B
-S3210001B2AC01C24A8467402C3C0001B5A02F022F064E944A8067044A92674620451E
-S3210001B2C8D1FC000099B826902F132F0648790000F6AC4EB900004708486A0004A9
-S3210001B2E44EB900003E004A9267000180601A2F02487A02AA4E944A80664E204560
-S3210001B300D1FC000099B82083600001642C3C0001B5AC2F022F064E944A8067045D
-S3210001B31C4A9267462045D1FC000099BC26902F132F0648790000F6AC4EB9000067
-S3210001B3384708486A00044EB900003E004A9267000126601A2F02487A025C4E9491
-S3210001B3544A8066522045D1FC000099BC20836000010A4A8467402C3C0001B5B874
-S3210001B3702F022F064E944A8067044A9267462045D1FC000099C026902F132F06FC
-S3210001B38C48790000F6AC4EB900004708486A00044EB900003E004A92670000C8DF
-S3210001B3A8601A2F02487A020A4E944A80664C2045D1FC000099C02083600000AC71
-S3210001B3C42C3C0001B5C42F022F064E944A8067044A9267422045D1FC000099C4F3
-S3210001B3E026902F132F0648790000F6AC4EB900004708486A00044EB900003E0069
-S3210001B3FC4A92676E60182F02487A01BE4E944A80664A2045D1FC000099C42083C5
-S3210001B41860544A84673A263C0001B5CC2F022F034E944A8067044A92673C2045AC
-S3210001B434D1FC000099C826902F132F0348790000F6AC4EB900004708486A00042E
-S3210001B4504EB900003E0060162F02487A01704E944A80660A2045D1FC000099C80B
-S3210001B46C20834CEE1C7CFFE04E5E4E75454952310051FC5145494D52310051FCA0
-S3210001B488454352310051FC514D4D4652310051FC4D534352310051FC4D4942437A
-S3210001B4A4310051FC524352310051FC51525F484153483100544352310051FC5193
-S3210001B4C050414C52310051FC50415552310051FC4F5044310051FC514941555223
-S3210001B4DC310051FC49414C52310051FC47415552310051FC47414C52310051FCD8
-S3210001B4F846454354465752310051FC5146454352464452310051FC514645435266
-S3210001B514465352310051FC5146454352464352310051FC51464543524C5246503C
-S3210001B530310051FC464543524C574650310051FC46454352464152310051FC51DB
-S3210001B54C46454352465250310051FC5146454352465750310051FC514645435407
-S3210001B568464452310051FC5146454354465352310051FC5146454354464352310B
-S3210001B5840051FC51464543544C524650310051FC464543544C574650310051FC59
-S3210001B5A046454354464152310051FC5146454354465250310051FC5146454354C3
-S3210001B5BC465750310051FC5146525354310051FC43544357523100514E56FFE06B
-S3210001B5D848D71C7C242E0008282E000C262E001045F90002B3F047EA000849F91B
-S3210001B5F400004F902A3C100000004A8467402C3C0001C2A42F022F064E944A8089
-S3210001B61067044A9267462045D1FC0000900426902F132F0648790000F6AC4EB9C6
-S3210001B62C00004708486A00044EB900003E004A9267000C5C601A2F02487A0C5E2F
-S3210001B6484E944A80664E2045D1FC00009004208360000C402C3C0001C2AC2F0262
-S3210001B6642F064E944A8067044A9267462045D1FC0000900826902F132F06487936
-S3210001B6800000F6AC4EB900004708486A00044EB900003E004A9267000C02601AE9
-S3210001B69C2F02487A0C0C4E944A8066522045D1FC00009008208360000BE64A8490
-S3210001B6B867402C3C0001C2B42F022F064E944A8067044A9267462045D1FC0000B1
-S3210001B6D4902426902F132F0648790000F6AC4EB900004708486A00044EB90000FC
-S3210001B6F03E004A9267000BA4601A2F02487A0BB64E944A80664E2045D1FC000047
-S3210001B70C9024208360000B882C3C0001C2BC2F022F064E944A8067044A926746E3
-S3210001B7282045D1FC0000904026902F132F0648790000F6AC4EB900004708486A64
-S3210001B74400044EB900003E004A9267000B4A601A2F02487A0B644E944A806652C1
-S3210001B7602045D1FC00009040208360000B2E4A8467402C3C0001C2C42F022F06BE
-S3210001B77C4E944A8067044A92674A2045D1FC0000904426902F132F064879000012
-S3210001B798F6AC4EB900004708486A00044EB900003E004A9267000AEC601E2F02B3
-S3210001B7B4487A0B0E4E944A80660E2045D1FC00009044208360000AD04A8467401F
-S3210001B7D02C3C0001C2CC2F022F064E944A8067044A9267462045D1FC0000906433
-S3210001B7EC26902F132F0648790000F6AC4EB900004708486A00044EB900003E0059
-S3210001B8084A9267000A8E601A2F02487A0AB84E944A8066522045D1FC0000906489
-S3210001B824208360000A724A8467402C3C0001C2D42F022F064E944A8067044A92B5
-S3210001B84067462045D1FC0000908426902F132F0648790000F6AC4EB9000047080C
-S3210001B85C486A00044EB900003E004A9267000A30601A2F02487A0A624E944A80CC
-S3210001B878664E2045D1FC00009084208360000A142C3C0001C2DC2F022F064E9443
-S3210001B8944A8067044A9267462045D1FC0000908826902F132F0648790000F6ACF9
-S3210001B8B04EB900004708486A00044EB900003E004A92670009D6601A2F02487A95
-S3210001B8CC0A104E944A8066522045D1FC000090882083600009BA4A8467402C3CEE
-S3210001B8E80001C2E42F022F064E944A8067044A9267462045D1FC000090C4269054
-S3210001B9042F132F0648790000F6AC4EB900004708486A00044EB900003E004A9219
-S3210001B92067000978601A2F02487A09BA4E944A80664E2045D1FC000090C4208363
-S3210001B93C6000095C2C3C0001C2EC2F022F064E944A8067044A9267462045D1FCD4
-S3210001B958000090E426902F132F0648790000F6AC4EB900004708486A00044EB9B5
-S3210001B97400003E004A926700091E601A2F02487A09684E944A8066522045D1FC94
-S3210001B990000090E42083600009024A8467402C3C0001C2F42F022F064E944A806C
-S3210001B9AC67044A92674A2045D1FC000090E826902F132F0648790000F6AC4EB93F
-S3210001B9C800004708486A00044EB900003E004A92670008C0601E2F02487A09127B
-S3210001B9E44E944A80660E2045D1FC000090E82083600008A44A8467402C3C0001E9
-S3210001BA00C2FC2F022F064E944A8067044A9267462045D1FC000090EC26902F13B9
-S3210001BA1C2F0648790000F6AC4EB900004708486A00044EB900003E004A926700DB
-S3210001BA380862601A2F02487A08BC4E944A8066522045D1FC000090EC208360003B
-S3210001BA5408464A8467402C3C0001C3042F022F064E944A8067044A926746204571
-S3210001BA70D1FC0000911826902F132F0648790000F6AC4EB900004708486A0004A1
-S3210001BA8C4EB900003E004A9267000804601A2F02487A08664E944A80664E204563
-S3210001BAA8D1FC000091182083600007E82C3C0001C30C2F022F064E944A8067045E
-S3210001BAC44A9267462045D1FC0000911C26902F132F0648790000F6AC4EB9000060
-S3210001BAE04708486A00044EB900003E004A92670007AA601A2F02487A08144E949A
-S3210001BAFC4A8066522045D1FC0000911C20836000078E4A8467402C3C0001C31479
-S3210001BB182F022F064E944A8067044A9267462045D1FC0000912026902F132F06F4
-S3210001BB3448790000F6AC4EB900004708486A00044EB900003E004A926700074CA4
-S3210001BB50601A2F02487A07BE4E944A80664E2045D1FC0000912020836000073023
-S3210001BB6C2C3C0001C31C2F022F064E944A8067044A9267462045D1FC0000912481
-S3210001BB8826902F132F0648790000F6AC4EB900004708486A00044EB900003E00B9
-S3210001BBA44A92670006F2601A2F02487A076C4E944A8066522045D1FC0000912418
-S3210001BBC02083600006D64A8467402C3C0001C3242F022F064E944A8067044A9265
-S3210001BBDC674A2045D1FC0000914426902F132F0648790000F6AC4EB900004708A8
-S3210001BBF8486A00044EB900003E004A9267000694601E2F02487A07164E944A8018
-S3210001BC14660E2045D1FC000091442083600006784A8467402C3C0001C3302F020F
-S3210001BC302F064E944A8067044A9267462045D1FC0000918426902F132F064879E7
-S3210001BC4C0000F6AC4EB900004708486A00044EB900003E004A9267000636601AE9
-S3210001BC682F02487A06C44E944A8066522045D1FC0000918420836000061A4A8460
-S3210001BC8467402C3C0001C33C2F022F064E944A8067044A9267462045D1FC000056
-S3210001BCA0918826902F132F0648790000F6AC4EB900004708486A00044EB90000C5
-S3210001BCBC3E004A92670005D8601A2F02487A06724E944A80664E2045D1FC000090
-S3210001BCD891882083600005BC2C3C0001C3482F022F064E944A8067044A926746F2
-S3210001BCF42045D1FC0000918C26902F132F0648790000F6AC4EB900004708486A46
-S3210001BD1000044EB900003E004A926700057E601A2F02487A06244E944A80665206
-S3210001BD2C2045D1FC0000918C2083600005624A8467402C3C0001C3542F022F06E0
-S3210001BD484E944A8067044A9267462045D1FC0000919026902F132F0648790000F7
-S3210001BD64F6AC4EB900004708486A00044EB900003E004A9267000520601A2F02B6
-S3210001BD80487A05D24E944A80664E2045D1FC000091902083600005042C3C0001DF
-S3210001BD9CC3602F022F064E944A8067044A9267462045D1FC0000919426902F130C
-S3210001BDB82F0648790000F6AC4EB900004708486A00044EB900003E004A9267003C
-S3210001BDD404C6601A2F02487A05844E944A8066522045D1FC0000919420836000CE
-S3210001BDF004AA4A8467402C3C0001C36C2F022F064E944A8067044A92674A204506
-S3210001BE0CD1FC0000919826902F132F0648790000F6AC4EB900004708486A000481
-S3210001BE284EB900003E004A9267000468601E2F02487A05324E944A80660E2045D6
-S3210001BE44D1FC0000919820836000044C4A8467402C3C0001C3782F022F064E9431
-S3210001BE604A8067044A9267462045D1FC0000919C26902F132F0648790000F6AC12
-S3210001BE7C4EB900004708486A00044EB900003E004A926700040A601A2F02487A94
-S3210001BE9804E04E944A8066522045D1FC0000919C2083600003EE4A8467402C3C0F
-S3210001BEB40001C3842F022F064E944A8067044A9267462045D1FC000091A0269004
-S3210001BED02F132F0648790000F6AC4EB900004708486A00044EB900003E004A9248
-S3210001BEEC670003AC601A2F02487A048E4E944A80664E2045D1FC000091A02083B8
-S3210001BF08600003902C3C0001C3902F022F064E944A8067044A9267462045D1FC2F
-S3210001BF24000091A426902F132F0648790000F6AC4EB900004708486A00044EB922
-S3210001BF4000003E004A9267000352601A2F02487A04404E944A8066522045D1FCC1
-S3210001BF5C000091A42083600003364A8467402C3C0001C39C2F022F064E944A8002
-S3210001BF7867044A9267462045D1FC000091A826902F132F0648790000F6AC4EB9B0
-S3210001BF9400004708486A00044EB900003E004A92670002F4601A2F02487A03EEA9
-S3210001BFB04E944A80664E2045D1FC000091A82083600002D82C3C0001C3A82F02C1
-S3210001BFCC2F064E944A8067044A9267462045D1FC000091AC26902F132F06487920
-S3210001BFE80000F6AC4EB900004708486A00044EB900003E004A926700029A601AEA
-S3210001C0042F02487A03A04E944A8066522045D1FC000091AC20836000027E4A845F
-S3210001C02067402C3C0001C3B42F022F064E944A8067044A92674A2045D1FC00003A
-S3210001C03C91B026902F132F0648790000F6AC4EB900004708486A00044EB90000FD
-S3210001C0583E004A926700023C601E2F02487A034E4E944A80660E2045D1FC0000F2
-S3210001C07491B02083600002204A8467402C3C0001C3C02F022F064E944A80670465
-S3210001C0904A9267462045D1FC000091B426902F132F0648790000F6AC4EB90000F6
-S3210001C0AC4708486A00044EB900003E004A92670001DE601A2F02487A02FC4E94B8
-S3210001C0C84A8066522045D1FC000091B42083600001C24A8467402C3C0001C3CC29
-S3210001C0E42F022F064E944A8067044A9267462045D1FC000091B826902F132F068B
-S3210001C10048790000F6AC4EB900004708486A00044EB900003E004A9267000180A4
-S3210001C11C601A2F02487A02AA4E944A80664E2045D1FC000091B8208360000164A4
-S3210001C1382C3C0001C3D82F022F064E944A8067044A9267462045D1FC000091BC5B
-S3210001C15426902F132F0648790000F6AC4EB900004708486A00044EB900003E00E7
-S3210001C1704A9267000126601A2F02487A025C4E944A8066522045D1FC000091BC94
-S3210001C18C20836000010A4A8467402C3C0001C3E42F022F064E944A8067044A92A4
-S3210001C1A867462045D1FC000091C026902F132F0648790000F6AC4EB9000047085E
-S3210001C1C4486A00044EB900003E004A92670000C8601A2F02487A020A4E944A802D
-S3210001C1E0664C2045D1FC000091C02083600000AC2C3C0001C3F02F022F064E94F4
-S3210001C1FC4A8067044A9267422045D1FC000091C426902F132F0648790000F6AC4F
-S3210001C2184EB900004708486A00044EB900003E004A92676E60182F02487A01BED7
-S3210001C2344E944A80664A2045D1FC000091C4208360544A84673A263C0001C3F820
-S3210001C2502F022F034E944A8067044A92673C2045D1FC000091C826902F132F031D
-S3210001C26C48790000F6AC4EB900004708486A00044EB900003E0060162F02487A92
-S3210001C28801704E944A80660A2045D1FC000091C820834CEE1C7CFFE04E5E4E75B8
-S3210001C2A4454952300051FC5145494D52300051FC454352300051FC514D4D465245
-S3210001C2C0300051FC4D534352300051FC4D494243300051FC524352300051FC51DF
-S3210001C2DC525F484153483000544352300051FC5150414C52300051FC504155529F
-S3210001C2F8300051FC4F5044300051FC5149415552300051FC49414C52300051FCA2
-S3210001C31447415552300051FC47414C52300051FC46454354465752300051FC51D8
-S3210001C33046454352464452300051FC5146454352465352300051FC514645435227
-S3210001C34C464352300051FC51464543524C524650300051FC464543524C574650FB
-S3210001C368300051FC46454352464152300051FC5146454352465250300051FC5198
-S3210001C38446454352465750300051FC5146454354464452300051FC5146454354CD
-S3210001C3A0465352300051FC5146454354464352300051FC51464543544C524650A0
-S3210001C3BC300051FC464543544C574650300051FC46454354464152300051FC5140
-S3210001C3D846454354465250300051FC5146454354465750300051FC51465253544E
-S3210001C3F4300051FC43544357523000514E56FFEC48D71C0C242E000845F9000235
-S3210001C410B3F04AAE000C49F9100000006740263C0001C4D047EA00082F022F03D6
-S3210001C42C4EB900004F904A8067044A92673C26AC0C002F132F0348790000F6AC9E
-S3210001C4484EB900004708486A00044EB900003E004A92676860182F02487A006EFC
-S3210001C4644EB900004F904A806640296E00100C00604E263C0001C4D82F022F039C
-S3210001C4804EB900004F904A8067044A92673626AC0C042F132F0348790000F6AC4C
-S3210001C49C4EB900004708486A00044EB900003E0060162F02487A00264EB9000096
-S3210001C4B84F904A806606296E00100C044CEE1C0CFFEC4E5E4E7551FC5041435266
-S3210001C4D40051FC51504153520051FC514E56FFDC48D73C7C242E0008282E000CC1
-S3210001C4F0262E001045F90002B3F047EA000849F9100000002A3C00004F904A8444
-S3210001C50C673C2C3C0001D4D82F022F062A454E954A8067044A92673C26AC0B000B
-S3210001C5282F132F0648790000F6AC4EB900004708486A00044EB900003E004A92E9
-S3210001C54467000F8660162F02487A0F8A2A454E954A80664429430B0060000F6EBC
-S3210001C5602C3C0001D4E02F022F062A454E954A8067044A92673A26AC0B042F130E
-S3210001C57C2F0648790000F6AC4EB900004708486A00044EB900003E004A92670070
-S3210001C5980F3460142F02487A0F404E954A80664829430B0460000F1E4A84673CB3
-S3210001C5B42C3C0001D4E82F022F062A454E954A8067044A92673C26AC0B082F13AC
-S3210001C5D02F0648790000F6AC4EB900004708486A00044EB900003E004A9267001C
-S3210001C5EC0EE060162F02487A0EF42A454E954A80664429430B0860000EC82C3CF0
-S3210001C6080001D4F42F022F062A454E954A8067044A92673A26AC0B0C2F132F067C
-S3210001C62448790000F6AC4EB900004708486A00044EB900003E004A9267000E8E60
-S3210001C64060142F02487A0EAE4E954A80664829430B0C60000E784A84673C2C3C17
-S3210001C65C0001D4FC2F022F062A454E954A8067044A92674026AC0B102F132F0616
-S3210001C67848790000F6AC4EB900004708486A00044EB900003E004A9267000E3A60
-S3210001C694601A2F02487A0E622A454E954A80660829430B1060000E224A84673C94
-S3210001C6B02C3C0001D5042F022F062A454E954A8067044A92673C26AC0B142F1386
-S3210001C6CC2F0648790000F6AC4EB900004708486A00044EB900003E004A9267001F
-S3210001C6E80DE460162F02487A0E142A454E954A80664829430B1460000DCC4A8457
-S3210001C704673C2C3C0001D50C2F022F062A454E954A8067044A92673C26AC0B3CA0
-S3210001C7202F132F0648790000F6AC4EB900004708486A00044EB900003E004A92EF
-S3210001C73C67000D8E60162F02487A0DC62A454E954A80664429430B3C60000D7640
-S3210001C7582C3C0001D5142F022F062A454E954A8067044A92673A26AC0B602F1383
-S3210001C7742F0648790000F6AC4EB900004708486A00044EB900003E004A92670076
-S3210001C7900D3C60142F02487A0D7C4E954A80664829430B6060000D264A84673C17
-S3210001C7AC2C3C0001D51C2F022F062A454E954A8067044A92673C26AC0B642F1321
-S3210001C7C82F0648790000F6AC4EB900004708486A00044EB900003E004A92670022
-S3210001C7E40CE860162F02487A0D302A454E954A80664429430B6460000CD02C3C53
-S3210001C8000001D5282F022F062A454E954A8067044A92673A26AC0B682F132F06F1
-S3210001C81C48790000F6AC4EB900004708486A00044EB900003E004A9267000C9660
-S3210001C83860142F02487A0CEA4E954A80664829430B6860000C804A84673C2C3C81
-S3210001C8540001D5342F022F062A454E954A8067044A92674026AC0B6C2F132F0687
-S3210001C87048790000F6AC4EB900004708486A00044EB900003E004A9267000C4260
-S3210001C88C601A2F02487A0CA22A454E954A80660829430B6C60000C2A4A84673CFA
-S3210001C8A82C3C0001D53C2F022F062A454E954A8067044A92673C26AC0B702F13F8
-S3210001C8C42F0648790000F6AC4EB900004708486A00044EB900003E004A92670025
-S3210001C8E00BEC60162F02487A0C542A454E954A80664829430B7060000BD44A84B7
-S3210001C8FC673C2C3C0001D5482F022F062A454E954A8067044A92673C26AC0B7433
-S3210001C9182F132F0648790000F6AC4EB900004708486A00044EB900003E004A92F5
-S3210001C93467000B9660162F02487A0C0A2A454E954A80664429430B7460000B7EBF
-S3210001C9502C3C0001D5542F022F062A454E954A8067044A92673A26AC0B782F1331
-S3210001C96C2F0648790000F6AC4EB900004708486A00044EB900003E004A9267007C
-S3210001C9880B4460142F02487A0BC44E954A80664829430B7860000B2E4A84673CB3
-S3210001C9A42C3C0001D5602F022F062A454E954A8067044A92673C26AC0B802F13C7
-S3210001C9C02F0648790000F6AC4EB900004708486A00044EB900003E004A92670028
-S3210001C9DC0AF060162F02487A0B7C2A454E954A80664429430B8060000AD82C3CE7
-S3210001C9F80001D5682F022F062A454E954A8067044A92673A26AC0B842F132F069C
-S3210001CA1448790000F6AC4EB900004708486A00044EB900003E004A9267000A9E60
-S3210001CA3060142F02487A0B324E954A80664829430B8460000A884A84673C2C3C1E
-S3210001CA4C0001D5702F022F062A454E954A8067044A92674026AC0B882F132F0635
-S3210001CA6848790000F6AC4EB900004708486A00044EB900003E004A9267000A4A60
-S3210001CA84601A2F02487A0AE62A454E954A80660829430B8860000A324A84673C9C
-S3210001CAA02C3C0001D5782F022F062A454E954A8067044A92673C26AC0BF82F133A
-S3210001CABC2F0648790000F6AC4EB900004708486A00044EB900003E004A9267002B
-S3210001CAD809F460162F02487A0A982A454E954A80664E29430BF8600009DC4A84E1
-S3210001CAF467422C3C0001D5802F022F062A454E954A8067044A926746204CD1FC09
-S3210001CB100000840026902F132F0648790000F6AC4EB900004708486A00044EB9DB
-S3210001CB2C00003E004A9267000998601A2F02487A0A442A454E954A80664ED9FC64
-S3210001CB480000840028836000097C2C3C0001D5882F022F062A454E954A80670403
-S3210001CB644A926744204CD1FC0000840426902F132F0648790000F6AC4EB90000CF
-S3210001CB804708486A00044EB900003E004A926700093C60182F02487A09F04E9579
-S3210001CB9C4A806652D9FC000084042883600009224A8467422C3C0001D5902F02EB
-S3210001CBB82F062A454E954A8067044A926746204CD1FC0000840826902F132F0623
-S3210001CBD448790000F6AC4EB900004708486A00044EB900003E004A92670008DE61
-S3210001CBF0601A2F02487A099A2A454E954A80664ED9FC000084082883600008C20C
-S3210001CC0C2C3C0001D5982F022F062A454E954A8067044A926744204CD1FC000082
-S3210001CC28840C26902F132F0648790000F6AC4EB900004708486A00044EB90000B6
-S3210001CC443E004A926700088260182F02487A09464E954A806652D9FC0000840C3E
-S3210001CC602883600008684A8467422C3C0001D5A02F022F062A454E954A806704F4
-S3210001CC7C4A92674A204CD1FC0000841026902F132F0648790000F6AC4EB90000A4
-S3210001CC984708486A00044EB900003E004A9267000824601E2F02487A08F02A45E8
-S3210001CCB44E954A80660CD9FC000084102883600008084A8467422C3C0001D5A85D
-S3210001CCD02F022F062A454E954A8067044A926746204CD1FC0000841426902F1302
-S3210001CCEC2F0648790000F6AC4EB900004708486A00044EB900003E004A926700F9
-S3210001CD0807C4601A2F02487A08982A454E954A806652D9FC0000841428836000E4
-S3210001CD2407A84A8467422C3C0001D5B02F022F062A454E954A8067044A92674662
-S3210001CD40204CD1FC0000841826902F132F0648790000F6AC4EB900004708486A63
-S3210001CD5C00044EB900003E004A9267000764601A2F02487A08402A454E954A80EC
-S3210001CD78664ED9FC000084182883600007482C3C0001D5B82F022F062A454E956B
-S3210001CD944A8067044A926744204CD1FC0000841C26902F132F0648790000F6AC57
-S3210001CDB04EB900004708486A00044EB900003E004A926700070860182F02487A52
-S3210001CDCC07EC4E954A806652D9FC0000841C2883600006EE4A8467422C3C000198
-S3210001CDE8D5C02F022F062A454E954A8067044A926746204CD1FC0000844026906A
-S3210001CE042F132F0648790000F6AC4EB900004708486A00044EB900003E004A9204
-S3210001CE20670006AA601A2F02487A07962A454E954A80664ED9FC000084402883BA
-S3210001CE3C6000068E2C3C0001D5C82F022F062A454E954A8067044A926744204CF9
-S3210001CE58D1FC0000844426902F132F0648790000F6AC4EB900004708486A000486
-S3210001CE744EB900003E004A926700064E60182F02487A07424E954A806652D9FCD1
-S3210001CE90000084442883600006344A8467422C3C0001D5D02F022F062A454E9535
-S3210001CEAC4A8067044A92674A204CD1FC0000844826902F132F0648790000F6AC0C
-S3210001CEC84EB900004708486A00044EB900003E004A92670005F0601E2F02487A4D
-S3210001CEE406EC2A454E954A80660CD9FC000084482883600005D44A8467422C3C47
-S3210001CF000001D5D82F022F062A454E954A8067044A926746204CD1FC0000844CE1
-S3210001CF1C26902F132F0648790000F6AC4EB900004708486A00044EB900003E0011
-S3210001CF384A9267000590601A2F02487A06942A454E954A806652D9FC0000844C7E
-S3210001CF542883600005744A8467422C3C0001D5E02F022F062A454E954A806704B4
-S3210001CF704A926746204CD1FC0000845026902F132F0648790000F6AC4EB9000071
-S3210001CF8C4708486A00044EB900003E004A9267000530601A2F02487A063C2A45A2
-S3210001CFA84E954A80664ED9FC000084502883600005142C3C0001D5EC2F022F06A8
-S3210001CFC42A454E954A8067044A926744204CD1FC0000845426902F132F0648793D
-S3210001CFE00000F6AC4EB900004708486A00044EB900003E004A92670004D46018A8
-S3210001CFFC2F02487A05EC4E954A806652D9FC000084542883600004BA4A846742DC
-S3210001D0182C3C0001D5F82F022F062A454E954A8067044A926746204CD1FC000010
-S3210001D034848026902F132F0648790000F6AC4EB900004708486A00044EB9000032
-S3210001D0503E004A9267000476601A2F02487A059A2A454E954A80664ED9FC000011
-S3210001D06C848028836000045A2C3C0001D6002F022F062A454E954A8067044A922C
-S3210001D0886744204CD1FC0000848426902F132F0648790000F6AC4EB900004708B3
-S3210001D0A4486A00044EB900003E004A926700041A60182F02487A05464E954A80AA
-S3210001D0C06652D9FC000084842883600004004A8467422C3C0001D6082F022F0685
-S3210001D0DC2A454E954A8067044A92674A204CD1FC0000848826902F132F064879EA
-S3210001D0F80000F6AC4EB900004708486A00044EB900003E004A92670003BC601EA2
-S3210001D1142F02487A04F02A454E954A80660CD9FC000084882883600003A04A8426
-S3210001D13067422C3C0001D6102F022F062A454E954A8067044A926746204CD1FC35
-S3210001D14C0000848C26902F132F0648790000F6AC4EB900004708486A00044EB90D
-S3210001D16800003E004A926700035C601A2F02487A04982A454E954A806652D9FC12
-S3210001D1840000848C2883600003404A8467422C3C0001D6182F022F062A454E95A4
-S3210001D1A04A8067044A926746204CD1FC0000849026902F132F0648790000F6ACD1
-S3210001D1BC4EB900004708486A00044EB900003E004A92670002FC601A2F02487A51
-S3210001D1D804402A454E954A80664ED9FC000084902883600002E02C3C0001D620EB
-S3210001D1F42F022F062A454E954A8067044A926744204CD1FC0000849826902F1357
-S3210001D2102F0648790000F6AC4EB900004708486A00044EB900003E004A926700CF
-S3210001D22C02A060182F02487A03EC4E954A806652D9FC00008498288360000286FA
-S3210001D2484A8467422C3C0001D6282F022F062A454E954A8067044A926746204C03
-S3210001D264D1FC0000849C26902F132F0648790000F6AC4EB900004708486A00041E
-S3210001D2804EB900003E004A9267000242601A2F02487A03962A454E954A80664EE9
-S3210001D29CD9FC0000849C2883600002262C3C0001D6302F022F062A454E954A8056
-S3210001D2B867044A926744204CD1FC000084C026902F132F0648790000F6AC4EB94D
-S3210001D2D400004708486A00044EB900003E004A92670001E660182F02487A034213
-S3210001D2F04E954A806652D9FC000084C02883600001CC4A8467422C3C0001D638D7
-S3210001D30C2F022F062A454E954A8067044A92674A204CD1FC000084C426902F130B
-S3210001D3282F0648790000F6AC4EB900004708486A00044EB900003E004A926700B6
-S3210001D3440188601E2F02487A02EC2A454E954A80660CD9FC000084C42883600028
-S3210001D360016C4A8467422C3C0001D6402F022F062A454E954A8067044A926746D1
-S3210001D37C204CD1FC000084C826902F132F0648790000F6AC4EB900004708486A71
-S3210001D39800044EB900003E004A9267000128601A2F02487A029424454E924A80A7
-S3210001D3B46652D9FC000084C828836000010C4A8467422C3C0001D6482F022F0601
-S3210001D3D02A454E954A8067044A926746204CD1FC000084CC26902F132F064879B3
-S3210001D3EC0000F6AC4EB900004708486A00044EB900003E004A92670000C8601AA6
-S3210001D4082F02487A023C24454E924A80664CD9FC000084CC2883600000AC2C3CC7
-S3210001D4240001D6502F022F062A454E954A8067044A926740204CD1FC000084D0C1
-S3210001D44026902F132F0648790000F6AC4EB900004708486A00044EB900003E00E8
-S3210001D45C4A92676C60162F02487A01EA4E924A806648D9FC000084D028836054CA
-S3210001D4784A84673A263C0001D65C2F022F032A454E954A8067044A92673AD9FC51
-S3210001D494000084D426942F132F0348790000F6AC4EB900004708486A00044EB979
-S3210001D4B000003E0060162F02487A01A224454E924A806608D9FC000084D42883B6
-S3210001D4CC4CEE3C7CFFDC4E5E4E7551FC5043494944520051504349534352005193
-S3210001D4E850434943435249520051FC515043494352310051504349424152300060
-S3210001D50450434942415231005043494352320051504349475343520050434954F3
-S3210001D52042415452300051FC5043495442415452310051FC504349544352005155
-S3210001D53C504349495730425441520051504349495731425441520051504349495A
-S3210001D558573242544152005150434949574352005043494943520051504349496C
-S3210001D5745352005150434943415200515043495450535200504349545341520060
-S3210001D59050434954544352005043495445520051504349544E4152005043495406
-S3210001D5AC4C5752005043495444435200504349545352005150434954464452002C
-S3210001D5C850434954465352005043495446435200504349544641520050434954E1
-S3210001D5E4465250520051FC5150434954465750520051FC5150434952505352001C
-S3210001D6005043495253415200504349525443520050434952455200515043495298
-S3210001D61C4E415200504349524443520050434952535200515043495246445200D5
-S3210001D6385043495246535200504349524643520050434952464152005043495278
-S3210001D654465250520051FC5150434952465750520051FC514E56FFDC48D73C7C7A
-S3210001D670242E00082A2E000C282E001045F90002B3F047EA000849F91000000005
-S3210001D68C263C00004F904A85673C2C3C0001D9842F022F062A434E954A80670417
-S3210001D6A84A92673C26AC00042F132F0648790000F6AC4EB900004708486A000424
-S3210001D6C44EB900003E004A92670002AA60162F02487A02AE2A434E954A80664432
-S3210001D6E029440004600002922C3C0001D98C2F022F062A434E954A8067044A922D
-S3210001D6FC673A26AC00202F132F0648790000F6AC4EB900004708486A00044EB98B
-S3210001D71800003E004A926700025860142F02487A02644E954A806648294400205E
-S3210001D734600002424A85673C2C3C0001D9942F022F062A434E954A8067044A921F
-S3210001D750673C26AC00242F132F0648790000F6AC4EB900004708486A00044EB930
-S3210001D76C00003E004A926700020460162F02487A02182A434E954A80664429445F
-S3210001D7880024600001EC2C3C0001D99C2F022F062A434E954A8067044A92673AC7
-S3210001D7A426AC00282F132F0648790000F6AC4EB900004708486A00044EB900007B
-S3210001D7C03E004A92670001B260142F02487A01CE4E954A8066482944002860008C
-S3210001D7DC019C4A85673C2C3C0001D9A42F022F062A434E954A8067044A926740C7
-S3210001D7F826AC002C2F132F0648790000F6AC4EB900004708486A00044EB9000023
-S3210001D8143E004A926700015E601A2F02487A01822A434E954A8066082944002C00
-S3210001D830600001464A85673C2C3C0001D9AC2F022F062A434E954A8067044A9207
-S3210001D84C673C26AC01002F132F0648790000F6AC4EB900004708486A00044EB956
-S3210001D86800003E004A926700010860162F02487A013424434E924A806648294449
-S3210001D8840100600000F04A85673C2C3C0001D9B42F022F062A434E954A806704DD
-S3210001D8A04A92673C26AC01042F132F0648790000F6AC4EB900004708486A000429
-S3210001D8BC4EB900003E004A92670000B260162F02487A00E624434E924A80664207
-S3210001D8D8294401046000009A2C3C0001D9BC2F022F062A434E954A8067044A92FC
-S3210001D8F4673626AC01082F132F0648790000F6AC4EB900004708486A00044EB9AC
-S3210001D91000003E004A92676060122F02487A009E4E924A80664029440108604C9E
-S3210001D92C4A856736283C0001D9C42F022F042A434E954A8067044A92673226AC3A
-S3210001D948010C2F132F0448790000F6AC4EB900004708486A00044EB900003E0086
-S3210001D96460122F02487A005A24434E924A8066042944010C4CEE3C7CFFDC4E5E73
-S3210001D9804E7551FC534452414D4453004353304346470051435331434647005197
-S3210001D99C4353324346470051435333434647005153444D520051FC515344435295
-S3210001D9B80051FC51534443464731005153444346473200514E56FFDC48D73C7C85
-S3210001D9D4242E00082A2E000C262E001045F90002B3F047EA000849F910000000A0
-S3210001D9F0283C00004F904A85673C2C3C0001DFDC2F022F062A444E954A8067044F
-S3210001DA0C4A92673C26AC05002F132F0648790000F6AC4EB900004708486A0004BB
-S3210001DA284EB900003E004A926700059E60162F02487A05A22A444E954A806644DB
-S3210001DA4429430500600005862C3C0001DFE42F022F062A444E954A8067044A926F
-S3210001DA60673A26AC05042F132F0648790000F6AC4EB900004708486A00044EB93A
-S3210001DA7C00003E004A926700054C60142F02487A05584E954A8066482943050421
-S3210001DA98600005364A85673C2C3C0001DFEC2F022F062A444E954A8067044A9262
-S3210001DAB4673C26AC05082F132F0648790000F6AC4EB900004708486A00044EB9E0
-S3210001DAD000003E004A92670004F860162F02487A050C2A444E954A80664429430B
-S3210001DAEC0508600004E02C3C0001DFF42F022F062A444E954A8067044A92673A21
-S3210001DB0826AC050C2F132F0648790000F6AC4EB900004708486A00044EB900002A
-S3210001DB243E004A92670004A660142F02487A04C24E954A8066482943050C60004E
-S3210001DB4004904A85673C2C3C0001DFFC2F022F062A444E954A8067044A92674009
-S3210001DB5C26AC05102F132F0648790000F6AC4EB900004708486A00044EB90000D2
-S3210001DB783E004A9267000452601A2F02487A04762A444E954A80660829430510C2
-S3210001DB946000043A4A85673C2C3C0001E0042F022F062A444E954A8067044A9249
-S3210001DBB0673C26AC05142F132F0648790000F6AC4EB900004708486A00044EB9D7
-S3210001DBCC00003E004A92670003FC60162F02487A04282A444E954A8066482943EC
-S3210001DBE80514600003E44A85673C2C3C0001E00C2F022F062A444E954A80670407
-S3210001DC044A92673C26AC05182F132F0648790000F6AC4EB900004708486A0004A9
-S3210001DC204EB900003E004A92670003A660162F02487A03DA2A444E954A806644A5
-S3210001DC3C294305186000038E2C3C0001E0142F022F062A444E954A8067044A9226
-S3210001DC58673A26AC051C2F132F0648790000F6AC4EB900004708486A00044EB928
-S3210001DC7400003E004A926700035460142F02487A03904E954A8066482943051CD3
-S3210001DC906000033E4A85673C2C3C0001E01C2F022F062A444E954A8067044A9231
-S3210001DCAC673C26AC05202F132F0648790000F6AC4EB900004708486A00044EB9CE
-S3210001DCC800003E004A926700030060162F02487A03442A444E954A8066442943D4
-S3210001DCE40520600002E82C3C0001E0242F022F062A444E954A8067044A92673AD8
-S3210001DD0026AC05242F132F0648790000F6AC4EB900004708486A00044EB9000018
-S3210001DD1C3E004A92670002AE60142F02487A02FA4E954A80664829430524600000
-S3210001DD3802984A85673C2C3C0001E02C2F022F062A444E954A8067044A926740D8
-S3210001DD5426AC05282F132F0648790000F6AC4EB900004708486A00044EB90000C0
-S3210001DD703E004A926700025A601A2F02487A02AE2A444E954A8066082943052874
-S3210001DD8C600002424A85673C2C3C0001E0342F022F062A444E954A8067044A9219
-S3210001DDA8673C26AC052C2F132F0648790000F6AC4EB900004708486A00044EB9C5
-S3210001DDC400003E004A926700020460162F02487A02602A444E954A8066482943B5
-S3210001DDE0052C600001EC4A85673C2C3C0001E03C2F022F062A444E954A806704BF
-S3210001DDFC4A92673C26AC05302F132F0648790000F6AC4EB900004708486A000498
-S3210001DE184EB900003E004A92670001AE60162F02487A02122A444E954A8066446E
-S3210001DE3429430530600001962C3C0001E0442F022F062A444E954A8067044A92DE
-S3210001DE50673A26AC05342F132F0648790000F6AC4EB900004708486A00044EB916
-S3210001DE6C00003E004A926700015C60142F02487A01C84E954A8066482943053485
-S3210001DE88600001464A85673C2C3C0001E04C2F022F062A444E954A8067044A9201
-S3210001DEA4673C26AC05382F132F0648790000F6AC4EB900004708486A00044EB9BC
-S3210001DEC000003E004A926700010860162F02487A017C2A444E954A80664429439E
-S3210001DEDC0538600000F02C3C0001E0542F022F062A444E954A8067044A92673A90
-S3210001DEF826AC053C2F132F0648790000F6AC4EB900004708486A00044EB9000007
-S3210001DF143E004A92670000B660142F02487A01324E954A8066462943053C6000B3
-S3210001DF3000A04A85673A263C0001E05C2F022F032A444E954A8067044A92673CB7
-S3210001DF4C26AC05402F132F0348790000F6AC4EB900004708486A00044EB90000B1
-S3210001DF683E004A92676260182F02487A00E82A444E954A80660629430540604C7C
-S3210001DF844A856736263C0001E0642F022F032A444E954A8067044A92673226AC37
-S3210001DFA005442F132F0348790000F6AC4EB900004708486A00044EB900003E00ED
-S3210001DFBC60122F02487A00A224444E924A806604294305444CEE3C7CFFDC4E5E91
-S3210001DFD84E7551FC43534152300051FC43534D52300051FC43534352300051FC16
-S3210001DFF443534152310051FC43534D52310051FC43534352310051FC43534152DE
-S3210001E010320051FC43534D52320051FC43534352320051FC43534152330051FC67
-S3210001E02C43534D52330051FC43534352330051FC43534152340051FC43534D5292
-S3210001E048340051FC43534352340051FC43534152350051FC43534D52350051FC26
-S3210001E06443534352350051FC4E56FFE448D71C3C262E0008282E001045F90002EC
-S3210001E080B3F0243C100000004AAE000C49F900004F9067442A3C0001E26447EABC
-S3210001E09C00082F032F054E944A8067044A9267462042D1FC0001FFC026902F136C
-S3210001E0B82F0548790000F6AC4EB900004708486A00044EB900003E004A9267001A
-S3210001E0D40184601A2F03487A01884E944A80664E2042D1FC0001FFC0208460005A
-S3210001E0F001682A3C0001E26C2F032F054E944A8067044A9267462042D1FC0001B9
-S3210001E10CFFC426902F132F0548790000F6AC4EB900004708486A00044EB900008B
-S3210001E1283E004A926700012A601A2F03487A01364E944A8066542042D1FC0001ED
-S3210001E144FFC420846000010E4AAE000C67402A3C0001E2742F032F054E944A8068
-S3210001E16067044A9267462042D1FC0001FFC826902F132F0548790000F6AC4EB91B
-S3210001E17C00004708486A00044EB900003E004A92670000CA601A2F03487A00DEDD
-S3210001E1984E944A80664C2042D1FC0001FFC82084600000AE2A3C0001E27C2F0366
-S3210001E1B42F054E944A8067044A9267422042D1FC0001FFCC26902F132F05487990
-S3210001E1D00000F6AC4EB900004708486A00044EB900003E004A92677060182F03DC
-S3210001E1EC487A008E4E944A80664C2042D1FC0001FFCC208460564AAE000C673A68
-S3210001E208283C0001E2842F032F044E944A8067044A92673C2042D1FC0001FFD02E
-S3210001E22426902F132F0448790000F6AC4EB900004708486A00044EB900003E00F8
-S3210001E24060162F03487A003E4E944A80660A2042D1FC0001FFD020844CEE1C3CC2
-S3210001E25CFFE44E5E4E7551FC535343520051FC51544343520051FC515443435231
-S3210001E27844520051544343524457005154434352534543004E56FFDC48D73C7C27
-S3210001E294242E0008282E000C262E001045F90002B3F047EA000849F910000000D9
-S3210001E2B02A3C00004F904A84673E2C3C0001F8302F022F062A454E954A80670415
-S3210001E2CC4A92673E71AC0A0026802F002F0648790000F68C4EB900004708486A32
-S3210001E2E800044EB900003E004A926700153260162F02487A15342A454E954A8072
-S3210001E304664619430A006000151A2C3C0001F83C2F022F062A454E954A806704CB
-S3210001E3204A92673C71AC0A0126802F002F0648790000F68C4EB900004708486ADE
-S3210001E33C00044EB900003E004A92670014DE60142F02487A14EC4E954A80664A7C
-S3210001E35819430A01600014C84A84673E2C3C0001F8482F022F062A454E954A8061
-S3210001E37467044A92673E71AC0A0226802F002F0648790000F68C4EB900004708CE
-S3210001E390486A00044EB900003E004A926700148860162F02487A14A22A454E951F
-S3210001E3AC4A80664619430A02600014702C3C0001F8542F022F062A454E954A8055
-S3210001E3C867044A92673C71AC0A0426802F002F0648790000F68C4EB9000047087A
-S3210001E3E4486A00044EB900003E004A926700143460142F02487A145A4E954A800E
-S3210001E400664A19430A046000141E4A84673E2C3C0001F8602F022F062A454E9561
-S3210001E41C4A8067044A92674271AC0A0526802F002F0648790000F68C4EB90000A3
-S3210001E4384708486A00044EB900003E004A92670013DE601A2F02487A14102A4543
-S3210001E4544E954A80660819430A05600013C64A84673E2C3C0001F86C2F022F0640
-S3210001E4702A454E954A8067044A92673E71AC0A0626802F002F0648790000F68C07
-S3210001E48C4EB900004708486A00044EB900003E004A926700138660162F02487AD7
-S3210001E4A813C42A454E954A80664A19430A066000136E4A84673E2C3C0001F87815
-S3210001E4C42F022F062A454E954A8067044A92673E71AC0A0726802F002F064879CE
-S3210001E4E00000F68C4EB900004708486A00044EB900003E004A926700132E60164C
-S3210001E4FC2F02487A13782A454E954A80664619430A07600013162C3C0001F884DC
-S3210001E5182F022F062A454E954A8067044A92673C71AC0A0826802F002F0648797A
-S3210001E5340000F68C4EB900004708486A00044EB900003E004A92670012DA60144E
-S3210001E5502F02487A13304E954A80664A19430A08600012C44A84673E2C3C000195
-S3210001E56CF8902F022F062A454E954A8067044A92673E71AC0A0926802F002F065C
-S3210001E58848790000F68C4EB900004708486A00044EB900003E004A926700128403
-S3210001E5A460162F02487A12E62A454E954A80664619430A096000126C2C3C000175
-S3210001E5C0F89C2F022F062A454E954A8067044A92673C71AC0A0A26802F002F06FD
-S3210001E5DC48790000F68C4EB900004708486A00044EB900003E004A926700123003
-S3210001E5F860142F02487A129E4E954A80664A19430A0A6000121A4A84673E2C3CB5
-S3210001E6140001F8A82F022F062A454E954A8067044A92674271AC0A0C26802F00C8
-S3210001E6302F0648790000F68C4EB900004708486A00044EB900003E004A926700BB
-S3210001E64C11DA601A2F02487A12542A454E954A80660819430A0C600011C24A84F0
-S3210001E668673E2C3C0001F8B82F022F062A454E954A8067044A92673E71AC0A0D2F
-S3210001E68426802F002F0648790000F68C4EB900004708486A00044EB900003E00D5
-S3210001E6A04A926700118260162F02487A120C2A454E954A80664A19430A0D60005B
-S3210001E6BC116A4A84673E2C3C0001F8C82F022F062A454E954A8067044A92673EB6
-S3210001E6D871AC0A0E26802F002F0648790000F68C4EB900004708486A00044EB98A
-S3210001E6F400003E004A926700112A60162F02487A11C42A454E954A8066461943E5
-S3210001E7100A0E600011122C3C0001F8D42F022F062A454E954A8067044A92673CAA
-S3210001E72C71AC0A1026802F002F0648790000F68C4EB900004708486A00044EB933
-S3210001E74800003E004A92670010D660142F02487A117C4E954A80664A19430A1080
-S3210001E764600010C04A84673E2C3C0001F8E02F022F062A454E954A8067044A92E5
-S3210001E780673E71AC0A1126802F002F0648790000F68C4EB900004708486A000440
-S3210001E79C4EB900003E004A926700108060162F02487A11322A454E954A806646CE
-S3210001E7B819430A11600010682C3C0001F8EC2F022F062A454E954A8067044A92D9
-S3210001E7D4673C71AC0A1226802F002F0648790000F68C4EB900004708486A0004ED
-S3210001E7F04EB900003E004A926700102C60142F02487A10EA4E954A80664A194328
-S3210001E80C0A12600010164A84673E2C3C0001F8F82F022F062A454E954A8067048E
-S3210001E8284A92674271AC0A1426802F002F0648790000F68C4EB900004708486AB8
-S3210001E84400044EB900003E004A9267000FD6601A2F02487A10A02A454E954A8007
-S3210001E860660819430A1460000FBE4A84673E2C3C0001F9042F022F062A454E95EF
-S3210001E87C4A8067044A92673E71AC0A1526802F002F0648790000F68C4EB9000033
-S3210001E8984708486A00044EB900003E004A9267000F7E60162F02487A10542A4507
-S3210001E8B44E954A80664A19430A1560000F664A84673E2C3C0001F9102F022F0649
-S3210001E8D02A454E954A8067044A92673E71AC0A1626802F002F0648790000F68C93
-S3210001E8EC4EB900004708486A00044EB900003E004A9267000F2660162F02487AD7
-S3210001E90810082A454E954A80664619430A1660000F0E2C3C0001F91C2F022F062F
-S3210001E9242A454E954A8067044A92673C71AC0A1726802F002F0648790000F68C3F
-S3210001E9404EB900004708486A00044EB900003E004A9267000ED260142F02487AD9
-S3210001E95C0FC04E954A80664A19430A1760000EBC4A84673E2C3C0001F9282F0297
-S3210001E9782F062A454E954A8067044A92673E71AC0A1826802F002F064879000035
-S3210001E994F68C4EB900004708486A00044EB900003E004A9267000E7C60162F0219
-S3210001E9B0487A0F762A454E954A80664619430A1860000E642C3C0001F9342F021E
-S3210001E9CC2F062A454E954A8067044A92673C71AC0A1926802F002F0648790000E2
-S3210001E9E8F68C4EB900004708486A00044EB900003E004A9267000E2860142F021B
-S3210001EA04487A0F2E4E954A80664A19430A1960000E124A84673E2C3C0001F9407F
-S3210001EA202F022F062A454E954A8067044A92674271AC0A1A26802F002F06487955
-S3210001EA3C0000F68C4EB900004708486A00044EB900003E004A9267000DD2601A48
-S3210001EA582F02487A0EE42A454E954A80660819430A1A60000DBA4A84673E2C3CAA
-S3210001EA740001F94C2F022F062A454E954A8067044A92673E71AC0A1C26802F00B3
-S3210001EA902F0648790000F68C4EB900004708486A00044EB900003E004A92670057
-S3210001EAAC0D7A60162F02487A0E982A454E954A80664A19430A1C60000D624A84C6
-S3210001EAC8673E2C3C0001F95C2F022F062A454E954A8067044A92673E71AC0A1D16
-S3210001EAE426802F002F0648790000F68C4EB900004708486A00044EB900003E0071
-S3210001EB004A9267000D2260162F02487A0E502A454E954A80664619430A1D60000E
-S3210001EB1C0D0A2C3C0001F96C2F022F062A454E954A8067044A92673C71AC0A1E40
-S3210001EB3826802F002F0648790000F68C4EB900004708486A00044EB900003E001C
-S3210001EB544A9267000CCE60142F02487A0E0C4E954A80664A19430A1E60000CB8FB
-S3210001EB704A84673E2C3C0001F9782F022F062A454E954A8067044A92673E71ACAA
-S3210001EB8C0A2026802F002F0648790000F68C4EB900004708486A00044EB90000DC
-S3210001EBA83E004A9267000C7860162F02487A0DC22A454E954A80664619430A20BF
-S3210001EBC460000C602C3C0001F9882F022F062A454E954A8067044A92673C71ACEF
-S3210001EBE00A2126802F002F0648790000F68C4EB900004708486A00044EB9000087
-S3210001EBFC3E004A9267000C2460142F02487A0D7E4E954A80664A19430A2160000F
-S3210001EC180C0E4A84673E2C3C0001F9942F022F062A454E954A8067044A926742E4
-S3210001EC3471AC0A2226802F002F0648790000F68C4EB900004708486A00044EB914
-S3210001EC5000003E004A9267000BCE601A2F02487A0D342A454E954A8066081943B3
-S3210001EC6C0A2260000BB64A84673E2C3C0001F9A02F022F062A454E954A806704D6
-S3210001EC884A92673E71AC0A2426802F002F0648790000F68C4EB900004708486A48
-S3210001ECA400044EB900003E004A9267000B7660162F02487A0CE82A454E954A80C7
-S3210001ECC0664A19430A2460000B5E4A84673E2C3C0001F9B02F022F062A454E95F1
-S3210001ECDC4A8067044A92673E71AC0A2526802F002F0648790000F68C4EB90000BF
-S3210001ECF84708486A00044EB900003E004A9267000B1E60162F02487A0CA02A45BF
-S3210001ED144E954A80664619430A2560000B062C3C0001F9C02F022F062A454E95AD
-S3210001ED304A8067044A92673C71AC0A2626802F002F0648790000F68C4EB900006B
-S3210001ED4C4708486A00044EB900003E004A9267000ACA60142F02487A0C5C4E9591
-S3210001ED684A80664A19430A2660000AB44A84673E2C3C0001F9D02F022F062A45EA
-S3210001ED844E954A8067044A92673E71AC0A2726802F002F0648790000F68C4EB931
-S3210001EDA000004708486A00044EB900003E004A9267000A7460162F02487A0C16BA
-S3210001EDBC2A454E954A80664619430A2760000A5C2C3C0001F9E02F022F062A4502
-S3210001EDD84E954A8067044A92673C71AC0A2826802F002F0648790000F68C4EB9DE
-S3210001EDF400004708486A00044EB900003E004A9267000A2060142F02487A0BD201
-S3210001EE104E954A80664A19430A2860000A0A4A84673E2C3C0001F9F02F022F0655
-S3210001EE2C2A454E954A8067044A92674271AC0A2926802F002F0648790000F68C1A
-S3210001EE484EB900004708486A00044EB900003E004A92670009CA601A2F02487AD3
-S3210001EE640B8C2A454E954A80660819430A29600009B24A84673E2C3C0001FA00EA
-S3210001EE802F022F062A454E954A8067044A92673E71AC0A2A26802F002F064879E5
-S3210001EE9C0000F68C4EB900004708486A00044EB900003E004A926700097260164C
-S3210001EEB82F02487A0B442A454E954A80664A19430A2A6000095A4A84673E2C3CFB
-S3210001EED40001FA102F022F062A454E954A8067044A92673E71AC0A2C26802F007A
-S3210001EEF02F0648790000F68C4EB900004708486A00044EB900003E004A926700F3
-S3210001EF0C091A60162F02487A0AFC2A454E954A80664619430A2C600009022C3C23
-S3210001EF280001FA202F022F062A454E954A8067044A92673C71AC0A2D26802F0016
-S3210001EF442F0648790000F68C4EB900004708486A00044EB900003E004A9267009E
-S3210001EF6008C660142F02487A0AB84E954A80664A19430A2D600008B04A84673E1C
-S3210001EF7C2C3C0001FA302F022F062A454E954A8067044A92673E71AC0A2E268076
-S3210001EF982F002F0648790000F68C4EB900004708486A00044EB900003E004A9282
-S3210001EFB46700087060162F02487A0A722A454E954A80664619430A2E600008585A
-S3210001EFD02C3C0001FA3C2F022F062A454E954A8067044A92673C71AC0A30268016
-S3210001EFEC2F002F0648790000F68C4EB900004708486A00044EB900003E004A922E
-S3210001F0086700081C60142F02487A0A2A4E954A80664A19430A30600008064A8490
-S3210001F024673E2C3C0001FA482F022F062A454E954A8067044A92674271AC0A31AF
-S3210001F04026802F002F0648790000F68C4EB900004708486A00044EB900003E000F
-S3210001F05C4A92670007C6601A2F02487A09E02A454E954A80660819430A316000AA
-S3210001F07807AE4A84673E2C3C0001FA542F022F062A454E954A8067044A92673E28
-S3210001F09471AC0A3226802F002F0648790000F68C4EB900004708486A00044EB9A0
-S3210001F0B000003E004A926700076E60162F02487A09942A454E954A80664A194319
-S3210001F0CC0A32600007564A84673E2C3C0001FA602F022F062A454E954A80670405
-S3210001F0E84A92673E71AC0A3426802F002F0648790000F68C4EB900004708486AD4
-S3210001F10400044EB900003E004A926700071660162F02487A09482A454E954A8069
-S3210001F120664619430A34600006FE2C3C0001FA6C2F022F062A454E954A80670466
-S3210001F13C4A92673C71AC0A3526802F002F0648790000F68C4EB900004708486A80
-S3210001F15800044EB900003E004A92670006C260142F02487A09004E954A80664A73
-S3210001F17419430A35600006AC4A84673E2C3C0001FA782F022F062A454E954A80FB
-S3210001F19067044A92673E71AC0A3626802F002F0648790000F68C4EB90000470870
-S3210001F1AC486A00044EB900003E004A926700066C60162F02487A08B62A454E9517
-S3210001F1C84A80664619430A36600006542C3C0001FA842F022F062A454E954A80EF
-S3210001F1E467044A92673C71AC0A3726802F002F0648790000F68C4EB9000047081D
-S3210001F200486A00044EB900003E004A926700061860142F02487A086E4E954A8005
-S3210001F21C664A19430A37600006024A84673E2C3C0001FA902F022F062A454E95FC
-S3210001F2384A8067044A92674271AC0A3826802F002F0648790000F68C4EB9000046
-S3210001F2544708486A00044EB900003E004A92670005C2601A2F02487A08242A453B
-S3210001F2704E954A80660819430A38600005AA4A84673E2C3C0001FAA02F022F06D7
-S3210001F28C2A454E954A8067044A92673E71AC0A3926802F002F0648790000F68CAA
-S3210001F2A84EB900004708486A00044EB900003E004A926700056A60162F02487AD7
-S3210001F2C407DC2A454E954A80664A19430A39600005524A84673E2C3C0001FAACA0
-S3210001F2E02F022F062A454E954A8067044A92673E71AC0A3A26802F002F06487971
-S3210001F2FC0000F68C4EB900004708486A00044EB900003E004A926700051260164C
-S3210001F3182F02487A07902A454E954A80664619430A3A600004FA2C3C0001FAB867
-S3210001F3342F022F062A454E954A8067044A92673C71AC0A3C26802F002F0648791C
-S3210001F3500000F68C4EB900004708486A00044EB900003E004A92670004BE60144E
-S3210001F36C2F02487A07484E954A80664A19430A3C600004A84A84673E2C3C000155
-S3210001F388FAC82F022F062A454E954A8067044A92673E71AC0A3D26802F002F06C4
-S3210001F3A448790000F68C4EB900004708486A00044EB900003E004A926700046803
-S3210001F3C060162F02487A07022A454E954A80664619430A3D600004502C3C000130
-S3210001F3DCFAD82F022F062A454E954A8067044A92673C71AC0A3E26802F002F0661
-S3210001F3F848790000F68C4EB900004708486A00044EB900003E004A926700041403
-S3210001F41460142F02487A06BE4E954A80664A19430A3E600003FE4A84673E2C3C6D
-S3210001F4300001FAE42F022F062A454E954A8067044A92674271EC0A4026802F00EC
-S3210001F44C2F0648790000F69C4EB900004708486A00044EB900003E004A92670081
-S3210001F46803BE601A2F02487A06742A454E954A80660839430A40600003A64A84B2
-S3210001F484673E2C3C0001FAF02F022F062A454E954A8067044A92673E71AC0A4296
-S3210001F4A026802F002F0648790000F68C4EB900004708486A00044EB900003E00AB
-S3210001F4BC4A926700036660162F02487A06282A454E954A80664A19430A42600016
-S3210001F4D8034E4A84673E2C3C0001FAFC2F022F062A454E954A8067044A92673E80
-S3210001F4F471AC0A4326802F002F0648790000F68C4EB900004708486A00044EB92B
-S3210001F51000003E004A926700030E60162F02487A05DC2A454E954A8066461943D8
-S3210001F52C0A43600002F62C3C0001FB042F022F062A454E954A8067044A92673C43
-S3210001F54871EC0A4426802F002F0648790000F69C4EB900004708486A00044EB985
-S3210001F56400003E004A92670002BA60142F02487A05904E954A80664A39430A4424
-S3210001F580600002A44A84673E2C3C0001FB142F022F062A454E954A8067044A92AE
-S3210001F59C673E71EC0A4826802F002F0648790000F69C4EB900004708486A00048F
-S3210001F5B84EB900003E004A926700026460162F02487A054A2A454E954A806646C2
-S3210001F5D439430A486000024C2C3C0001FB202F022F062A454E954A8067044A924B
-S3210001F5F0673C71EC0A4A26802F002F0648790000F69C4EB900004708486A00043B
-S3210001F60C4EB900003E004A926700021060142F02487A05024E954A80664A3943FA
-S3210001F6280A4A600001FA4A84673E2C3C0001FB2C2F022F062A454E954A80670420
-S3210001F6444A92674271AC0A4C26802F002F0648790000F68C4EB900004708486A56
-S3210001F66000044EB900003E004A92670001BA601A2F02487A04B82A454E954A80FB
-S3210001F67C660819430A4C600001A24A84673E2C3C0001FB382F022F062A454E9581
-S3210001F6984A8067044A92673E71AC0A4D26802F002F0648790000F68C4EB90000D1
-S3210001F6B44708486A00044EB900003E004A926700016260162F02487A046C244501
-S3210001F6D04E924A80664A19430A4D6000014A4A84673E2C3C0001FB442F022F06DE
-S3210001F6EC2A454E954A8067044A92673E71AC0A4E26802F002F0648790000F68C31
-S3210001F7084EB900004708486A00044EB900003E004A926700010A60162F02487AD6
-S3210001F724042024454E924A80664619430A4E600000F22C3C0001FB502F022F06BF
-S3210001F7402A454E954A8067044A92673C71AC0A4F26802F002F0648790000F68CDD
-S3210001F75C4EB900004708486A00044EB900003E004A92670000B660142F02487AD9
-S3210001F77803D84E924A80664819430A4F600000A04A84673C263C0001FB5C2F022A
-S3210001F7942F032A454E954A8067044A92673C71EC0A5026802F002F03487900009B
-S3210001F7B0F68C4EB900004708486A00044EB900003E004A92676060162F02487A57
-S3210001F7CC039024454E924A806640718339400A506048263C0001FB682F022F0336
-S3210001F7E82A454E954A8067044A92673271AC0A5226802F002F0348790000F68C3F
-S3210001F8044EB900004708486A00044EB900003E0060102F02487A034E4E924A8032
-S3210001F820660419430A524CEE3C7CFFDC4E5E4E75504F44525F464243544C005117
-S3210001F83C504F44525F464243530051FC504F44525F444D410051FC51504F445271
-S3210001F8585F46454330480051504F44525F464543304C0051504F44525F46454306
-S3210001F87431480051504F44525F464543314C0051504F44525F4645434932430057
-S3210001F890504F44525F50434942470051504F44525F50434942520051504F445281
-S3210001F8AC5F50534333505343320051FC504F44525F50534331505343300051FC4E
-S3210001F8C8504F44525F445350490051FC504444525F464243544C0051504444529D
-S3210001F8E45F464243530051FC504444525F444D410051FC51504444525F464543E7
-S3210001F90030480051504444525F464543304C0051504444525F46454331480051D6
-S3210001F91C504444525F464543314C0051504444525F464543493243005044445264
-S3210001F9385F50434942470051504444525F50434942520051504444525F505343DE
-S3210001F95433505343320051FC504444525F50534331505343300051FC50444452CB
-S3210001F9705F445350490051FC5050445344525F464243544C0051FC51505044532C
-S3210001F98C44525F46424353005050445344525F444D4100515050445344525F4684
-S3210001F9A8454330480051FC515050445344525F464543304C0051FC515050445353
-S3210001F9C444525F46454331480051FC515050445344525F464543314C0051FC5131
-S3210001F9E05050445344525F4645434932430051FC5050445344525F50434942476E
-S3210001F9FC0051FC515050445344525F50434942520051FC515050445344525F5094
-S3210001FA1853433350534332005050445344525F505343315053433000505044535A
-S3210001FA3444525F445350490050434C52525F464243544C0050434C52525F4642D3
-S3210001FA504353005150434C52525F444D410051FC50434C52525F46454330480083
-S3210001FA6C50434C52525F464543304C0050434C52525F46454331480050434C52F1
-S3210001FA88525F464543314C0050434C52525F4645434932430051FC5150434C5222
-S3210001FAA4525F50434942470050434C52525F50434942520050434C52525F505352
-S3210001FAC0433350534332005150434C52525F5053433150534330005150434C52B3
-S3210001FADC525F4453504900515041525F464243544C0051FC5041525F464243537B
-S3210001FAF80051FC515041525F444D41005041525F4645434932434952510051FC32
-S3210001FB145041525F50434942470051FC5041525F50434942520051FC5041525F99
-S3210001FB30505343330051FC515041525F505343320051FC515041525F50534331AA
-S3210001FB4C0051FC515041525F505343300051FC515041525F445350490051FC51F2
-S3210001FB685041525F54494D45520051FC4E56FFE048D73C3C242E0008282E001090
-S3210001FB8445F90002B3F047EA0008263C00004F904AAE000C49F910000000673E06
-S3210001FBA02A3C0001FDA42F022F052A434E954A8067044A92673E71EC0F002680BD
-S3210001FBBC2F002F0548790000F69C4EB900004708486A00044EB900003E004A9243
-S3210001FBD8670001BE60162F02487A01C22A434E954A80664639440F00600001A65F
-S3210001FBF42A3C0001FDAC2F022F052A434E954A8067044A92673C71AC0F0426809F
-S3210001FC102F002F0548790000F68C4EB900004708486A00044EB900003E004A92FE
-S3210001FC2C6700016A60142F02487A01764E954A80664C19440F04600001544AAE89
-S3210001FC48000C673E2A3C0001FDB42F022F052A434E954A8067044A92673E71AC48
-S3210001FC640F0526802F002F0548790000F68C4EB900004708486A00044EB900000A
-S3210001FC803E004A926700011260162F02487A01262A434E954A80664619440F0506
-S3210001FC9C600000FA2A3C0001FDBC2F022F052A434E954A8067044A92673C71AC45
-S3210001FCB80F0826802F002F0548790000F68C4EB900004708486A00044EB90000B3
-S3210001FCD43E004A92670000BE60142F02487A00DA4E954A80664A19440F0860005C
-S3210001FCF000A84AAE000C673C283C0001FDC42F022F042A434E954A8067044A92B7
-S3210001FD0C674071AC0F0926802F002F0448790000F68C4EB900004708486A0004A1
-S3210001FD284EB900003E004A926766601A2F02487A008C2A434E954A8066061944EE
-S3210001FD440F0960504AAE000C6738283C0001FDCC2F022F042A434E954A8067041A
-S3210001FD604A92673471AC0F0C26802F002F0448790000F68C4EB900004708486A7E
-S3210001FD7C00044EB900003E0060122F02487A004224434E924A80660419440F0C81
-S3210001FD984CEE3C3CFFE04E5E4E7551FC45505041520051FC45504444520051FC7A
-S3210001FDB445504945520051FC455044520051FC5145505044520051FC45504652AC
-S3210001FDD00051FC514E56FFE448D71C3C242E0008282E000C262E001045F9000214
-S3210001FDECB3F047EA000849F9100000004A84673E2A3C000219442F022F054EB922
-S3210001FE0800004F904A8067044A92673E26AC07002F132F0548790000F6AC4EB989
-S3210001FE2400004708486A00044EB900003E004A9267001B0260182F02487A1B0685
-S3210001FE404EB900004F904A8066462943070060001AE82A3C0002194C2F022F053C
-S3210001FE5C4EB900004F904A8067044A92673E26AC07042F132F0548790000F6AC31
-S3210001FE784EB900004708486A00044EB900003E004A9267001AAC60182F02487AA2
-S3210001FE941AB84EB900004F904A80664A2943070460001A924A84673E2A3C0002BB
-S3210001FEB019542F022F054EB900004F904A8067044A92673E26AC07082F132F056A
-S3210001FECC48790000F6AC4EB900004708486A00044EB900003E004A9267001A52B0
-S3210001FEE860182F02487A1A664EB900004F904A8066462943070860001A382A3C1D
-S3210001FF040002195C2F022F054EB900004F904A8067044A92673E26AC070C2F133B
-S3210001FF202F0548790000F6AC4EB900004708486A00044EB900003E004A92670093
-S3210001FF3C19FC60182F02487A1A184EB900004F904A80664A2943070C600019E2B6
-S3210001FF584A84673E2A3C000219642F022F054EB900004F904A8067044A92674229
-S3210001FF7426AC07102F132F0548790000F6AC4EB900004708486A00044EB9000095
-S3210001FF903E004A92670019A2601C2F02487A19C64EB900004F904A80660829433A
-S3210001FFAC0710600019884A84673E2A3C0002196C2F022F054EB900004F904A80A5
-S3210001FFC867044A92673E26AC07142F132F0548790000F6AC4EB900004708486A5C
-S3210001FFE400044EB900003E004A926700194860182F02487A19744EB900004F902F
-S321000200004A80664C294307146000192E4A8467402A3C000219742F022F054EB95C
-S3210002001C00004F904A8067044A92674071AC071826802F002F0548790000F68CA1
-S321000200384EB900004708486A00044EB900003E004A92670018EC60182F02487AA1
-S3210002005419204EB900004F904A80664819430718600018D22A3C0002197C2F02FE
-S321000200702F054EB900004F904A8067044A92674071AC071926802F002F05487993
-S3210002008C0000F68C4EB900004708486A00044EB900003E004A9267001894601816
-S321000200A82F02487A18D04EB900004F904A80664C194307196000187A4A84674014
-S321000200C42A3C000219842F022F054EB900004F904A8067044A92674071AC0741AB
-S321000200E026802F002F0548790000F68C4EB900004708486A00044EB900003E005F
-S321000200FC4A926700183860182F02487A187C4EB900004F904A806648194307414C
-S321000201186000181E2A3C0002198C2F022F054EB900004F904A8067044A9267401D
-S3210002013471AC074226802F002F0548790000F68C4EB900004708486A00044EB9E2
-S3210002015000003E004A92670017E060182F02487A182C4EB900004F904A80664C02
-S3210002016C19430742600017C64A8467402A3C000219942F022F054EB900004F90B8
-S321000201884A8067044A92674471AC074326802F002F0548790000F68C4EB90000DD
-S321000201A44708486A00044EB900003E004A9267001784601C2F02487A17D84EB9AA
-S321000201C000004F904A806608194307436000176A4A8467402A3C0002199C2F02BA
-S321000201DC2F054EB900004F904A8067044A92674071AC074426802F002F054879FB
-S321000201F80000F68C4EB900004708486A00044EB900003E004A9267001728601816
-S321000202142F02487A17844EB900004F904A80664C194307446000170E4A84674035
-S321000202302A3C000219A42F022F054EB900004F904A8067044A92674071AC074519
-S3210002024C26802F002F0548790000F68C4EB900004708486A00044EB900003E00F1
-S321000202684A92670016CC60182F02487A17304EB900004F904A8066481943074595
-S32100020284600016B22A3C000219AC2F022F054EB900004F904A8067044A926740FE
-S321000202A071AC074626802F002F0548790000F68C4EB900004708486A00044EB971
-S321000202BC00003E004A926700167460182F02487A16E04EB900004F904A80664C50
-S321000202D8194307466000165A4A8467402A3C000219B42F022F054EB900004F9094
-S321000202F44A8067044A92674071AC074726802F002F0548790000F68C4EB9000070
-S321000203104708486A00044EB900003E004A926700161860182F02487A168C4EB9FA
-S3210002032C00004F904A80664819430747600015FE2A3C000219BC2F022F054EB990
-S3210002034800004F904A8067044A92674071AC074826802F002F0548790000F68C42
-S321000203644EB900004708486A00044EB900003E004A92670015C060182F02487AA1
-S32100020380163C4EB900004F904A80664C19430748600015A64A8467402A3C000202
-S3210002039C19C42F022F054EB900004F904A8067044A92674471AC074926802F0017
-S321000203B82F0548790000F68C4EB900004708486A00044EB900003E004A92670016
-S321000203D41564601C2F02487A15E84EB900004F904A806608194307496000154A97
-S321000203F04A8467402A3C000219CC2F022F054EB900004F904A8067044A92674024
-S3210002040C71AC074A26802F002F0548790000F68C4EB900004708486A00044EB9FF
-S3210002042800003E004A926700150860182F02487A15944EB900004F904A80664C9C
-S321000204441943074A600014EE4A8467402A3C000219D42F022F054EB900004F9070
-S321000204604A8067044A92674071AC074B26802F002F0548790000F68C4EB90000FE
-S3210002047C4708486A00044EB900003E004A92670014AC60182F02487A15404EB948
-S3210002049800004F904A8066481943074B600014922A3C000219DC2F022F054EB96C
-S321000204B400004F904A8067044A92674071AC074C26802F002F0548790000F68CD1
-S321000204D04EB900004708486A00044EB900003E004A926700145460182F02487AA1
-S321000204EC14F04EB900004F904A80664C1943074C6000143A4A8467402A3C00024C
-S3210002050819E42F022F054EB900004F904A8067044A92674071AC074D26802F0089
-S321000205242F0548790000F68C4EB900004708486A00044EB900003E004A926700A8
-S3210002054013F860182F02487A149C4EB900004F904A8066481943074D600013DE12
-S3210002055C2A3C000219EC2F022F054EB900004F904A8067044A92674071AC074E99
-S3210002057826802F002F0548790000F68C4EB900004708486A00044EB900003E00C2
-S321000205944A92670013A060182F02487A144C4EB900004F904A80664C1943074E6F
-S321000205B0600013864A8467402A3C000219F42F022F054EB900004F904A806704C4
-S321000205CC4A92674471AC074F26802F002F0548790000F68C4EB900004708486ABD
-S321000205E800044EB900003E004A9267001344601C2F02487A13F84EB900004F90AC
-S321000206044A8066081943074F6000132A4A8467402A3C000219FC2F022F054EB9ED
-S3210002062000004F904A8067044A92674071AC075126802F002F0548790000F68C5E
-S3210002063C4EB900004708486A00044EB900003E004A92670012E860182F02487AA1
-S3210002065813A44EB900004F904A80664C19430751600012CE4A8467402A3C000294
-S321000206741A042F022F054EB900004F904A8067044A92674071AC075226802F00F6
-S321000206902F0548790000F68C4EB900004708486A00044EB900003E004A9267003B
-S321000206AC128C60182F02487A13504EB900004F904A8066481943075260001272C7
-S321000206C82A3C00021A0C2F022F054EB900004F904A8067044A92674071AC075306
-S321000206E426802F002F0548790000F68C4EB900004708486A00044EB900003E0055
-S321000207004A926700123460182F02487A13004EB900004F904A80664C19430753B6
-S3210002071C6000121A4A8467402A3C00021A142F022F054EB900004F904A806704A2
-S321000207384A92674071AC075426802F002F0548790000F68C4EB900004708486A4E
-S3210002075400044EB900003E004A92670011D860182F02487A12AC4EB900004F90FD
-S321000207704A80664819430754600011BE2A3C00021A1C2F022F054EB900004F901E
-S3210002078C4A8067044A92674071AC075526802F002F0548790000F68C4EB90000C5
-S321000207A84708486A00044EB900003E004A926700118060182F02487A125C4EB92F
-S321000207C400004F904A80664C19430755600011664A8467402A3C00021A242F02DB
-S321000207E02F054EB900004F904A8067044A92674471AC075626802F002F054879DB
-S321000207FC0000F68C4EB900004708486A00044EB900003E004A9267001124601C12
-S321000208182F02487A12084EB900004F904A806608194307566000110A4A846740E8
-S321000208342A3C00021A2C2F022F054EB900004F904A8067044A92674071AC075774
-S3210002085026802F002F0548790000F68C4EB900004708486A00044EB900003E00E7
-S3210002086C4A92670010C860182F02487A11B44EB900004F904A80664C1943075701
-S32100020888600010AE4A8467402A3C00021A342F022F054EB900004F904A80670483
-S321000208A44A92674071AC075826802F002F0548790000F68C4EB900004708486ADD
-S321000208C000044EB900003E004A926700106C60182F02487A11604EB900004F904A
-S321000208DC4A80664819430758600010522A3C00021A3C2F022F054EB900004F90FA
-S321000208F84A8067044A92674071AC075926802F002F0548790000F68C4EB9000054
-S321000209144708486A00044EB900003E004A926700101460182F02487A11104EB97B
-S3210002093000004F904A80664C1943075960000FFA4A8467402A3C00021A442F02B7
-S3210002094C2F054EB900004F904A8067044A92674071AC075A26802F002F0548796D
-S321000209680000F68C4EB900004708486A00044EB900003E004A9267000FB8601816
-S321000209842F02487A10BC4EB900004F904A8066481943075A60000F9E2A3C000200
-S321000209A01A4C2F022F054EB900004F904A8067044A92674071AC075B26802F0076
-S321000209BC2F0548790000F68C4EB900004708486A00044EB900003E004A9267000C
-S321000209D80F6060182F02487A106C4EB900004F904A80664C1943075B60000F46D0
-S321000209F44A8467402A3C00021A542F022F054EB900004F904A8067044A9267448D
-S32100020A1071AC075C26802F002F0548790000F68C4EB900004708486A00044EB9E3
-S32100020A2C00003E004A9267000F04601C2F02487A10184EB900004F904A8066085D
-S32100020A481943075C60000EEA4A8467402A3C00021A5C2F022F054EB900004F90D5
-S32100020A644A8067044A92674071AC075D26802F002F0548790000F68C4EB90000E2
-S32100020A804708486A00044EB900003E004A9267000EA860182F02487A0FC44EB9CA
-S32100020A9C00004F904A80664C1943075D60000E8E4A8467402A3C00021A642F0293
-S32100020AB82F054EB900004F904A8067044A92674071AC075E26802F002F054879FC
-S32100020AD40000F68C4EB900004708486A00044EB900003E004A9267000E4C601816
-S32100020AF02F02487A0F704EB900004F904A8066481943075E60000E322A3C000249
-S32100020B0C1A6C2F022F054EB900004F904A8067044A92674071AC075F26802F00E4
-S32100020B282F0548790000F68C4EB900004708486A00044EB900003E004A9267009E
-S32100020B440DF460182F02487A0F204EB900004F904A80664C1943075F60000DDA87
-S32100020B604A8467402A3C00021A742F022F054EB900004F904A8067044A92674003
-S32100020B7C71AC076026802F002F0548790000F68C4EB900004708486A00044EB972
-S32100020B9800003E004A9267000D9860182F02487A0ECC4EB900004F904A80664870
-S32100020BB41943076060000D7E2A3C00021A7C2F022F054EB900004F904A806704F1
-S32100020BD04A92674071AC076126802F002F0548790000F68C4EB900004708486AA5
-S32100020BEC00044EB900003E004A9267000D4060182F02487A0E7C4EB900004F9031
-S32100020C084A80664C1943076160000D264A8467402A3C00021A842F022F054EB90E
-S32100020C2400004F904A8067044A92674471AC076226802F002F0548790000F68C3F
-S32100020C404EB900004708486A00044EB900003E004A9267000CE4601C2F02487A9D
-S32100020C5C0E284EB900004F904A8066081943076260000CCA4A8467402A3C000248
-S32100020C781A8C2F022F054EB900004F904A8067044A92674071AC076326802F0053
-S32100020C942F0548790000F68C4EB900004708486A00044EB900003E004A92670031
-S32100020CB00C8860182F02487A0DD44EB900004F904A80664C1943076360000C6E3E
-S32100020CCC4A8467402A3C00021A942F022F054EB900004F904A8067044A92674076
-S32100020CE871AC076426802F002F0548790000F68C4EB900004708486A00044EB901
-S32100020D0400003E004A9267000C2C60182F02487A0D804EB900004F904A806648BC
-S32100020D201943076460000C122A3C00021A9C2F022F054EB900004F904A806704CC
-S32100020D3C4A92674071AC076526802F002F0548790000F68C4EB900004708486A33
-S32100020D5800044EB900003E004A9267000BD460182F02487A0D304EB900004F907E
-S32100020D744A80664C1943076560000BBA4A8467402A3C00021AA42F022F054EB9EB
-S32100020D9000004F904A8067044A92674071AC076626802F002F0548790000F68CD2
-S32100020DAC4EB900004708486A00044EB900003E004A9267000B7860182F02487AA1
-S32100020DC80CDC4EB900004F904A8066481943076660000B5E2A3C00021AAC2F02D0
-S32100020DE42F054EB900004F904A8067044A92674071AC076726802F002F054879C4
-S32100020E000000F68C4EB900004708486A00044EB900003E004A9267000B20601815
-S32100020E1C2F02487A0C8C4EB900004F904A80664C1943076760000B064A84674015
-S32100020E382A3C00021AB42F022F054EB900004F904A8067044A92674471AC0768CD
-S32100020E5426802F002F0548790000F68C4EB900004708486A00044EB900003E00DD
-S32100020E704A9267000AC4601C2F02487A0C384EB900004F904A80660819430768B1
-S32100020E8C60000AAA4A8467402A3C00021ABC2F022F054EB900004F904A806704FB
-S32100020EA84A92674071AC076926802F002F0548790000F68C4EB900004708486AC2
-S32100020EC400044EB900003E004A9267000A6860182F02487A0BE44EB900004F90CC
-S32100020EE04A80664C1943076960000A4E4A8467402A3C00021AC42F022F054EB9C7
-S32100020EFC00004F904A8067044A92674071AC076A26802F002F0548790000F68C61
-S32100020F184EB900004708486A00044EB900003E004A9267000A0C60182F02487AA0
-S32100020F340B904EB900004F904A8066481943076A600009F22A3C00021ACC2F02F9
-S32100020F502F054EB900004F904A8067044A92674071AC076B26802F002F05487952
-S32100020F6C0000F68C4EB900004708486A00044EB900003E004A92670009B4601816
-S32100020F882F02487A0B404EB900004F904A80664C1943076B6000099A4A8467405F
-S32100020FA42A3C00021AD42F022F054EB900004F904A8067044A92674071AC076C40
-S32100020FC026802F002F0548790000F68C4EB900004708486A00044EB900003E0070
-S32100020FDC4A926700095860182F02487A0AEC4EB900004F904A8066481943076CBF
-S32100020FF86000093E2A3C00021ADC2F022F054EB900004F904A8067044A926740CD
-S3210002101471AC076D26802F002F0548790000F68C4EB900004708486A00044EB9C8
-S3210002103000003E004A926700090060182F02487A0A9C4EB900004F904A80664C9F
-S3210002104C1943076D600008E64A8467402A3C00021AE42F022F054EB900004F903C
-S321000210684A8067044A92674471AC076E26802F002F0548790000F68C4EB90000C3
-S321000210844708486A00044EB900003E004A92670008A4601C2F02487A0A484EB947
-S321000210A000004F904A8066081943076E6000088A4A8467402A3C00021AEC2F023E
-S321000210BC2F054EB900004F904A8067044A92674071AC076F26802F002F054879E1
-S321000210D80000F68C4EB900004708486A00044EB900003E004A9267000848601816
-S321000210F42F02487A09F44EB900004F904A80664C1943076F6000082E4A846740A9
-S321000211102A3C00021AF42F022F054EB900004F904A8067044A92674071AC0770AE
-S3210002112C26802F002F0548790000F68C4EB900004708486A00044EB900003E0002
-S321000211484A92670007EC60182F02487A09A04EB900004F904A8066481943077008
-S32100021164600007D22A3C00021AFC2F022F054EB900004F904A8067044A926740AD
-S3210002118071AC077126802F002F0548790000F68C4EB900004708486A00044EB957
-S3210002119C00003E004A926700079460182F02487A09504EB900004F904A80664CED
-S321000211B8194307716000077A4A8467402A3C00021B042F022F054EB900004F9017
-S321000211D44A8067044A92674071AC077226802F002F0548790000F68C4EB9000056
-S321000211F04708486A00044EB900003E004A926700073860182F02487A08FC4EB999
-S3210002120C00004F904A806648194307726000071E2A3C00021B0C2F022F054EB912
-S3210002122800004F904A8067044A92674071AC077326802F002F0548790000F68C28
-S321000212444EB900004708486A00044EB900003E004A92670006E060182F02487AA1
-S3210002126008AC4EB900004F904A80664C19430773600006C64A8467402A3C000275
-S3210002127C1B142F022F054EB900004F904A8067044A92674471AC077426802F00AB
-S321000212982F0548790000F68C4EB900004708486A00044EB900003E004A92670027
-S321000212B40684601C2F02487A08584EB900004F904A806608194307746000066AF8
-S321000212D04A8467402A3C00021B1C2F022F054EB900004F904A8067044A926740E3
-S321000212EC71AC077526802F002F0548790000F68C4EB900004708486A00044EB9E6
-S3210002130800003E004A926700062860182F02487A08044EB900004F904A80664C39
-S32100021324194307756000060E4A8467402A3C00021B242F022F054EB900004F90F2
-S321000213404A8067044A92674071AC077626802F002F0548790000F68C4EB90000E4
-S3210002135C4708486A00044EB900003E004A92670005CC60182F02487A07B04EB9E6
-S3210002137800004F904A80664819430776600005B22A3C00021B2C2F022F054EB9EF
-S3210002139400004F904A8067044A92674071AC077726802F002F0548790000F68CB7
-S321000213B04EB900004708486A00044EB900003E004A926700057460182F02487AA1
-S321000213CC07604EB900004F904A80664C194307776000055A4A8467402A3C0002BE
-S321000213E81B342F022F054EB900004F904A8067044A92674071AC077826802F001E
-S321000214042F0548790000F68C4EB900004708486A00044EB900003E004A926700B9
-S32100021420051860182F02487A070C4EB900004F904A80664819430778600004FE72
-S3210002143C2A3C00021B3C2F022F054EB900004F904A8067044A92674071AC07792D
-S3210002145826802F002F0548790000F68C4EB900004708486A00044EB900003E00D3
-S321000214744A92670004C060182F02487A06BC4EB900004F904A80664C19430779E2
-S32100021490600004A64A8467402A3C00021B442F022F054EB900004F904A80670472
-S321000214AC4A92674471AC077A26802F002F0548790000F68C4EB900004708486AA3
-S321000214C800044EB900003E004A9267000464601C2F02487A06684EB900004F9049
-S321000214E44A8066081943077A6000044A4A8467402A3C00021B4C2F022F054EB971
-S3210002150000004F904A8067044A92674071AC077B26802F002F0548790000F68C45
-S3210002151C4EB900004708486A00044EB900003E004A926700040860182F02487AA0
-S3210002153806144EB900004F904A80664C1943077B600003EE4A8467402A3C000207
-S321000215541B542F022F054EB900004F904A8067044A92674071AC077C26802F008C
-S321000215702F0548790000F68C4EB900004708486A00044EB900003E004A9267004C
-S3210002158C03AC60182F02487A05C04EB900004F904A8066481943077C600003922A
-S321000215A82A3C00021B5C2F022F054EB900004F904A8067044A92674071AC077D9C
-S321000215C426802F002F0548790000F68C4EB900004708486A00044EB900003E0066
-S321000215E04A926700035460182F02487A05704EB900004F904A80664C1943077D2B
-S321000215FC6000033A4A8467402A3C00021B642F022F054EB900004F904A80670452
-S321000216184A92674071AC077E26802F002F0548790000F68C4EB900004708486A35
-S3210002163400044EB900003E004A92670002F860182F02487A051C4EB900004F909A
-S321000216504A8066481943077E600002DE2A3C00021B6C2F022F054EB900004F90A3
-S3210002166C4A8067044A92674071AC07E026802F002F0548790000F68C4EB900004B
-S321000216884708486A00044EB900003E004A92670002A060182F02487A04CC4EB9CD
-S321000216A400004F904A80664C194307E0600002864A8467402A3C00021B742F02FF
-S321000216C02F054EB900004F904A8067044A92674471AC07E426802F002F0548795E
-S321000216DC0000F68C4EB900004708486A00044EB900003E004A9267000244601C12
-S321000216F82F02487A04784EB900004F904A806608194307E46000022A4A846740F9
-S321000217142A3C00021B7C2F022F054EB900004F904A8067044A92674071AC07E8A3
-S3210002173026802F002F0548790000F68C4EB900004708486A00044EB900003E00F8
-S3210002174C4A92670001E860182F02487A04244EB900004F904A80664C194307E80D
-S32100021768600001CE4A8467402A3C00021B842F022F054EB900004F904A80670432
-S321000217844A92674071AC07EC26802F002F0548790000F68C4EB900004708486A5A
-S321000217A000044EB900003E004A926700018C60182F02487A03D04EB900004F90E8
-S321000217BC4A806648194307EC600001722A3C00021B8C2F022F054EB900004F9015
-S321000217D84A8067044A92674071AC07F026802F002F0548790000F68C4EB90000CE
-S321000217F44708486A00044EB900003E004A926700013460182F02487A03804EB91A
-S3210002181000004F904A80664C194307F06000011A4A8467402A3C00021B942F02CE
-S3210002182C2F054EB900004F904A8067044A92674071AC07F426802F002F054879E4
-S321000218480000F68C4EB900004708486A00044EB900003E004A92670000D8601816
-S321000218642F02487A032C4EB900004F904A806648194307F4600000BE2A3C000203
-S321000218801B9C2F022F054EB900004F904A8067044A92673E71AC07F826802F009B
-S3210002189C2F0548790000F68C4EB900004708486A00044EB900003E004A9267001D
-S321000218B8008060162F02487A02DC4EB900004F904A806644194307F860664A84FC
-S321000218D4673A263C00021BA42F022F034EB900004F904A8067044A92673C71AC12
-S321000218F007FC26802F002F0348790000F68C4EB900004708486A00044EB9000074
-S3210002190C3E0060282F02487A02904EB900004F904A806606194307FC60124A92A3
-S32100021928660E2F024879000040244EB9000047084CEE1C3CFFE44E5E4E7551FC4A
-S32100021944495052480051FC514950524C0051FC51494D52480051FC51494D524CD7
-S321000219600051FC51494E544652434800494E544652434C0049524C520051FC51CE
-S3210002197C4941434B4C505200494352310051FC51494352320051FC5149435233D5
-S321000219980051FC51494352340051FC51494352350051FC51494352360051FC517A
-S321000219B4494352370051FC51494352380051FC51494352390051FC5149435231E4
-S321000219D0300051FC49435231310051FC49435231320051FC49435231330051FCCC
-S321000219EC49435231340051FC49435231350051FC49435231370051FC4943523114
-S32100021A08380051FC49435231390051FC49435232300051FC49435232310051FC85
-S32100021A2449435232320051FC49435232330051FC49435232340051FC49435232DE
-S32100021A40350051FC49435232360051FC49435232370051FC49435232380051FC44
-S32100021A5C49435232390051FC49435233300051FC49435233310051FC49435233A2
-S32100021A78320051FC49435233330051FC49435233340051FC49435233350051FC15
-S32100021A9449435233360051FC49435233370051FC49435233380051FC494352335E
-S32100021AB0390051FC49435234300051FC49435234310051FC49435234320051FCDC
-S32100021ACC49435234330051FC49435234340051FC49435234350051FC494352342B
-S32100021AE8360051FC49435234370051FC49435234380051FC49435234390051FC92
-S32100021B0449435235300051FC49435235310051FC49435235320051FC49435235F7
-S32100021B20330051FC49435235340051FC49435235350051FC49435235360051FC62
-S32100021B3C49435235370051FC49435235380051FC49435235390051FC49435236A9
-S32100021B58300051FC49435236310051FC49435236320051FC53574941434B0051B4
-S32100021B744C314941434B00514C324941434B00514C334941434B00514C3449418E
-S32100021B90434B00514C354941434B00514C364941434B00514C374941434B005191
-S32100021BAC4E56FFDC48D73C7C242E00082A2E000C282E001045F90002B3F047EA87
-S32100021BC8000849F910000000263C00004F904A85673C2C3C00021E702F022F068E
-S32100021BE42A434E954A8067044A92673C26AC09002F132F0648790000F6AC4EB91D
-S32100021C0000004708486A00044EB900003E004A926700025460162F02487A02561C
-S32100021C1C2A434E954A806644294409006000023C2C3C00021E782F022F062A43F9
-S32100021C384E954A8067044A92673A26AC09042F132F0648790000F6AC4EB9000033
-S32100021C544708486A00044EB900003E004A926700020260142F02487A020C4E9583
-S32100021C704A80664829440904600001EC4A85673C2C3C00021E802F022F062A43C4
-S32100021C8C4E954A8067044A92673C26AC09082F132F0648790000F6AC4EB90000D9
-S32100021CA84708486A00044EB900003E004A92670001AE60162F02487A01C02A4345
-S32100021CC44E954A80664429440908600001962C3C00021E882F022F062A434E956A
-S32100021CE04A8067044A92673A26AC090C2F132F0648790000F6AC4EB90000470817
-S32100021CFC486A00044EB900003E004A926700015C60142F02487A01764E954A809E
-S32100021D1866482944090C600001464A85673C2C3C00021E902F022F062A434E9590
-S32100021D344A8067044A92674026AC09102F132F0648790000F6AC4EB900004708B8
-S32100021D50486A00044EB900003E004A9267000108601A2F02487A012A2A434E9540
-S32100021D6C4A80660829440910600000F04A85673C2C3C00021E982F022F062A43E0
-S32100021D884E954A8067044A92673C26AC09142F132F0648790000F6AC4EB90000D0
-S32100021DA44708486A00044EB900003E004A92670000B260162F02487A00DC244330
-S32100021DC04E924A806646294409146000009A4A85673A283C00021EA02F022F042D
-S32100021DDC2A434E954A8067044A92673826AC09182F132F0448790000F6AC4EB911
-S32100021DF800004708486A00044EB900003E004A92675C60142F02487A0090244380
-S32100021E144E924A80663C294409186046283C00021EA82F022F042A434E954A8080
-S32100021E3067044A92673026AC091C2F132F0448790000F6AC4EB900004708486AD9
-S32100021E4C00044EB900003E0060102F02487A004E4E924A8066042944091C4CEE98
-S32100021E683C7CFFDC4E5E4E75534C54434E543000534352300051FC5153434E545E
-S32100021E84300051FC535352300051FC51534C54434E543100534352310051FC5137
-S32100021EA053434E54310051FC535352310051FC514E56FFDC48D73C7C242E0008F1
-S32100021EBC2A2E000C262E001045F90002B3F047EA000849F910000000283C000068
-S32100021ED84F904A85673C2C3C000224142F022F062A444E954A8067044A92673C88
-S32100021EF426AC08002F132F0648790000F6AC4EB900004708486A00044EB9000003
-S32100021F103E004A92670004F260162F02487A04F62A444E954A806644294308009A
-S32100021F2C600004DA2C3C0002241C2F022F062A444E954A8067044A92673A26AC6E
-S32100021F4808042F132F0648790000F6AC4EB900004708486A00044EB900003E003E
-S32100021F644A92670004A060142F02487A04AC4E954A806648294308046000048A9A
-S32100021F804A85673C2C3C000224242F022F062A444E954A8067044A92673C26ACDC
-S32100021F9C08082F132F0648790000F6AC4EB900004708486A00044EB900003E00E6
-S32100021FB84A926700044C60162F02487A04602A444E954A80664429430808600004
-S32100021FD404342C3C0002242C2F022F062A444E954A8067044A92673A26AC080CA8
-S32100021FF02F132F0648790000F6AC4EB900004708486A00044EB900003E004A92C6
-S3210002200C670003FA60142F02487A04164E954A8066482943080C600003E44A85DA
-S32100022028673C2C3C000224342F022F062A444E954A8067044A92674026AC0810D6
-S321000220442F132F0648790000F6AC4EB900004708486A00044EB900003E004A9271
-S32100022060670003A6601A2F02487A03CA2A444E954A806608294308106000038E14
-S3210002207C4A85673C2C3C0002243C2F022F062A444E954A8067044A92673C26ACC7
-S3210002209808142F132F0648790000F6AC4EB900004708486A00044EB900003E00DD
-S321000220B44A926700035060162F02487A037C2A444E954A806648294308146000D9
-S321000220D003384A85673C2C3C000224442F022F062A444E954A8067044A92673C02
-S321000220EC26AC08182F132F0648790000F6AC4EB900004708486A00044EB90000F1
-S321000221083E004A92670002FA60162F02487A032E2A444E954A806644294308184B
-S32100022124600002E22C3C0002244C2F022F062A444E954A8067044A92673A26AC3E
-S32100022140081C2F132F0648790000F6AC4EB900004708486A00044EB900003E002C
-S3210002215C4A92670002A860142F02487A02E44E954A8066482943081C6000029246
-S321000221784A85673C2C3C000224542F022F062A444E954A8067044A92673C26ACB2
-S3210002219408202F132F0648790000F6AC4EB900004708486A00044EB900003E00D4
-S321000221B04A926700025460162F02487A02982A444E954A806644294308206000B6
-S321000221CC023C2C3C0002245C2F022F062A444E954A8067044A92673A26AC082460
-S321000221E82F132F0648790000F6AC4EB900004708486A00044EB900003E004A92CC
-S321000222046700020260142F02487A024E4E954A80664829430824600001EC4A8585
-S32100022220673C2C3C000224642F022F062A444E954A8067044A92674026AC082894
-S3210002223C2F132F0648790000F6AC4EB900004708486A00044EB900003E004A9277
-S32100022258670001AE601A2F02487A02022A444E954A8066082943082860000196BF
-S321000222744A85673C2C3C0002246C2F022F062A444E954A8067044A92673C26AC9D
-S32100022290082C2F132F0648790000F6AC4EB900004708486A00044EB900003E00CB
-S321000222AC4A926700015860162F02487A01B424444E924A8066482943082C600094
-S321000222C801404A85673C2C3C000224742F022F062A444E954A8067044A92673CD2
-S321000222E426AC08302F132F0648790000F6AC4EB900004708486A00044EB90000DF
-S321000223003E004A926700010260162F02487A016624444E924A8066442943083005
-S3210002231C600000EA2C3C0002247C2F022F062A444E954A8067044A92673A26AC0E
-S3210002233808342F132F0648790000F6AC4EB900004708486A00044EB900003E001A
-S321000223544A92670000B060142F02487A011C4E924A806646294308346000009AF6
-S321000223704A85673A263C000224842F022F032A444E954A8067044A92673826AC97
-S3210002238C08382F132F0348790000F6AC4EB900004708486A00044EB900003E00C5
-S321000223A84A92675C60142F02487A00D224444E924A80663C294308386046263CD1
-S321000223C40002248C2F022F032A444E954A8067044A92673026AC083C2F132F035D
-S321000223E048790000F6AC4EB900004708486A00044EB900003E0060102F02487AC2
-S321000223FC00904E924A8066042943083C4CEE3C7CFFDC4E5E4E7551FC474D5330C9
-S321000224180051FC5147434952300051FC4750574D300051FC475352300051FC51EE
-S32100022434474D53310051FC5147434952310051FC4750574D310051FC4753523155
-S321000224500051FC51474D53320051FC5147434952320051FC4750574D320051FCB5
-S3210002246C475352320051FC51474D53330051FC5147434952330051FC4750574DF8
-S32100022488330051FC475352330051FC514E56FFE048D73C3C262E0008282E001017
-S321000224A445F90002B3F0243C00004F904AAE000C49F91000000067402A3C00028D
-S321000224C0260847EA00082F032F052A424E954A8067044A92673C26AC00102F1304
-S321000224DC2F0548790000F6AC4EB900004708486A00044EB900003E004A926700B1
-S321000224F8010460162F03487A010824424E924A80664429440010600000EC2A3C5F
-S32100022514000226102F032F052A424E954A8067044A92673A26AC00382F132F0584
-S3210002253048790000F6AC4EB900004708486A00044EB900003E004A92670000B2DE
-S3210002254C60142F03487A00BE4E924A806648294400386000009C4AAE000C673AA7
-S32100022568283C000226182F032F042A424E954A8067044A92673826AC00442F13EF
-S321000225842F0448790000F6AC4EB900004708486A00044EB900003E004A92675CAD
-S321000225A060142F03487A007224424E924A80663C294400446046283C0002261C8C
-S321000225BC2F032F042A424E954A8067044A92673026AC00502F132F044879000047
-S321000225D8F6AC4EB900004708486A00044EB900003E0060102F03487A002C4E927C
-S321000225F44A806604294400504CEE3C3CFFE04E5E4E7551FC534243520051FC51BD
-S321000226105345435341435200525352004A544147494400514E560000226E00086B
-S3210002262C206E000C7000B0AE0010640A22D85880B0AE001065F64E5E4E7551FC4D
-S321000226484E560000206E000820BC00026BC4A7404E5E4E754E56000071FC173C6D
-S321000226644E5E4E754E560000A1404E5E4E7551FC4E5600002F0220790002B8C8B2
-S32100022680A54171FCA00221400078A3680080242E000820280080E4A80800000027
-S3210002269C6702A741202E000841F900026BF421810C00242EFFFC4E5E4E7551FC21
-S321000226B84E560000222E00087010B081620470FD601A20790002B8C830301A1C53
-S321000226D40280000080004A4067042F01619270004E5E4E754E5600002F032F02E2
-S321000226F0222E00087010B081620470FD603620790002B8C830301A1C0280000021
-S3210002270C80004A40672021410070A3427610D681E7A200820000E00221420078BC
-S3210002272841F900026BF4A9701C0070004CEE000CFFF84E5E4E7551FC4E560000B0
-S321000227442F02222E00087010B081620470FD602220790002B8C843F01A0034291D
-S32100022760001C08C2000F3342001C41F900026BF4A7701C007000242EFFFC4E5E98
-S3210002277C4E7551FC4E560000226E00087010B089620470FD601C20790002B8C8CA
-S3210002279842709A1C2F094EBAFF1841F900026BF4AB709C0070004E5E4E7551FCE0
-S321000227B44E56FFD848D7047C262E0008206E000C7010B083620670FD600001AC5C
-S321000227D02003E78022790002B8CC43F10C00246900182D6A0044FFF024690018E6
-S321000227EC2D6A003CFFF4246900182D6A0040FFF824690018202A00382D40FFFC01
-S321000228082469001820AA004424690018216A003C000424690018216A0040000811
-S3210002282424690018216A0038000C2010B0AEFFF0661E20280004B0AEFFF4661404
-S3210002284020280008B0AEFFF8660A2028000CB0AEFFFC67162D50FFF02D68000430
-S3210002285CFFF42D680008FFF82028000C609A43F90002BAD822313C00675E0C81D2
-S3210002287800000001676270FFB081660000AA45F13C00282800042C2A00C024685A
-S32100022894000C2A065385C885CAAA000C2468000C202A000C45F13A002428000491
-S321000228B0908594849082756A008022004C4218017542D4864C0218009081D085C0
-S321000228CC908421400008605A2468000C216A000C0004604E45F13C002C2A00C048
-S321000228E82468000C22065381282A000CC881C2A800042468000C202A000C2428E9
-S3210002290400042A28000490849A8045F13A009481736A008094804C4128027341C6
-S3210002292092864C0218009A819A842145000822313C4067100C810000000167161D
-S3210002293C70FFB081671060342268000C222900082081700060282468000C222A66
-S32100022958000845F13C00202800084C6A000000C045F13A00756A00A04C020800D6
-S32100022974D280208170004CEE047CFFD84E5E4E754E56FFD448D73CFC226E000C72
-S32100022990242E0008262E00147A007010B082620670FD6000028A24790002B8C855
-S321000229ACA140322A001208C1000F354100124A6E00126D0A4A6E00125EC049C026
-S321000229C844802200A1404A6E001A6D0A4A6E001A5EC049C0448041F90002BAD850
-S321000229E43D6E0022FFFE21802C0021812C4049F02A00396E001A008049F02A0023
-S32100022A00396E001200A049F02C002002296E002000C0E78026790002B8CC41F39B
-S32100022A1C0C002828001806840000003860025285322E0026E18900810000006056
-S32100022A3835812A1C7DF22A1C222E0024028600001FFFE18908C1000608C10005A8
-S32100022A54BC8167080C85000003E86DCA122E002B7007C2801581283C0C82000053
-S32100022A70000864307A1C2002E5809A80700FEBA04680C1AA0060A741C2AE00205C
-S32100022A8C7C1E20012E02E5879C87EDA881AA0060EBA983AA0060602E7A3C200205
-S32100022AA8E5809A80700FEBA04680C1AA0064A741C2AE00207C3E20012E02E587FD
-S32100022AC49C87EDA881AA0064EBA983AA00642028000C49F90002B8D042002140BF
-S32100022AE0000C71AE002F81A8000C082E0004002E6722245420EA006020AA006442
-S32100022AFC2F022F0B2F032F092F094EB900022E9C4FEF001460000110082E0005D8
-S32100022B18002E6722245420EA004020AA00442F022F0B2F032F092F094EB90002FC
-S32100022B342FC84FEF0014600000E6082E0000002E670000882002E7802479000273
-S32100022B50BAD445F20C00254900082543000C25430010256E001C0014429242AAAB
-S32100022B6C000442AA00182A6800182B4900442A6800182B43003C2A68001842ADEE
-S32100022B8800402A6800182B4A0038285420EC002020AC00242F022F0B2F042F0A23
-S32100022BA42F2E002C302EFFFE2F002F2E001C302E001A2F002F03302E00122F0009
-S32100022BC02F094EB9000233244FEF002C6054246800182569000800442468001819
-S32100022BDC2569000C003C2468001842AA004024680018254900382454200920DA4A
-S32100022BF820922F022F0B2F04302EFFFE2F002F2E0020302E001A2F00302E00124B
-S32100022C142F002F094EB9000234204FEF002041F900026BF4A5702C0070004CEEF4
-S32100022C303CFCFFD44E5E4E754E5600002F02242E00087010B082620470FD605C96
-S32100022C4C20790002B8C843F900026BF471FC800073F02A1CC08122312C004A808C
-S32100022C6866160C810000000367045581662EAD712C0020312C0060280C8100008B
-S32100022C840003670455816618A368008022280080A540E4A9080100006702A7404A
-S32100022CA023802C0020312C00242EFFFC4E5E4E754E56FFE448D71C3C206E000C70
-S32100022CBC47F90002B8CC202E000849F90002B8D023C00002B8C8082E000000135E
-S32100022CD86700010430080280000001FF4A4066000108268843E80200707F2409C2
-S32100022CF4C0824A40670A0482FFFFFF80088200072602068300000800303C00FFC7
-S32100022D10C0834A40670A068300000100088300082803068400000100720042B02A
-S32100022D2C1C0052810C81000004C06DF2245372002001E7807A038A8341F20C00AA
-S32100022D48701021440018214200082145000C0682000000800684000000805281A8
-S32100022D64B0816ED4487801002F3C00027634202A000C42002F004EBAF8A84FEF53
-S32100022D80000C2884487800802F3C000277342F044EBAF892245441EA0080260809
-S32100022D9C72004FEF000C2001E78049F20C0041EC000420142410280894805882D1
-S32100022DB82F022F002F034EBAF86420442883D68220035980208052810C8100009E
-S32100022DD400044FEF000C6DC6604C41F900026C3430080280000001FF4A40670621
-S32100022DF070FE6000009E72002001E78043F00C003429000A707FC4804A4266E4AA
-S32100022E0C3029000E0280000000FF4A4066D652817010B0816ED6268828BC000298
-S32100022E28773420790002B8C8203C0002B8D423C00002BAD42093720042701A1C56
-S32100022E4443F900026BF47010A3711C005281B0816EEA42A8007042A8007471FC9C
-S32100022E60A00221400078A168007C082E0001001367123028001202800000FFFEA2
-S32100022E7C314000127000600E32280012700182803141001270004CEE1C3CFFE489
-S32100022E984E5E4E754E560000202E0018226E0014E78041F10C002268000822AEF2
-S32100022EB4000822680008236E000C000C22680008236E0010002C2268000842A9DB
-S32100022ED000042268000842A900082268000842A900102268000842A900142268AD
-S32100022EEC000842A900182268000842A9001C2268000842A900202268000842A904
-S32100022F0800242268000842A900282268000842A900302268000871FCFFFF2340CF
-S32100022F24003422680008A169003822680008A969003C22680008700823400040F4
-S32100022F402268000842A9006022680008203C600000002340006422680008203C8D
-S32100022F5C400000002340006822680008203CC000FFFC2340006C22680008203CE0
-S32100022F78E00000042340007022680008203C800000002340007422680008203C4B
-S32100022F944000FFFF2340007820680008203CE00000012140007C202E0018207957
-S32100022FB00002B8C843F00A003229001C08C1000F3341001C4E5E4E754E5600004C
-S32100022FCC202E0018226E0014E78041F10C002268000822AE000822680008236EA5
-S32100022FE8000C000C22680008236E001000182268000842A900042268000842A964
-S3210002300400082268000842A900102268000842A900142268000842A9001C22685F
-S32100023020000842A900202268000871FCFFFF2340002422680008203C30000000D7
-S3210002303C2340002822680008203C0FFFFFFF2340002C22680008700823400030BF
-S321000230582268000842A9006022680008203C600000002340006422680008203C74
-S32100023074200000042340006820680008203C400000002140006C202E0018207951
-S321000230900002B8C843F00A003229001C08C1000F3341001C4E5E4E754E5600006B
-S321000230AC202E0030E780206E002C41F00C0022680008236E00080020736E000EEA
-S321000230C82268000871C10080E00000002340006422680008236E0010000C736ED9
-S321000230E400162268000871C10080E00000002340006022680008236E0018001080
-S32100023100736E001E2268000871C108C0001D2340006822680008202E00202340D5
-S3210002311C001822680008202E00242340000822680008202E0028228022680008CC
-S3210002313842A900042268000842A900142268000842A9001C2268000842A90024B9
-S3210002315422680008A369002822680008A969002C22680008203C08000000234068
-S3210002317000302268000842A9006C22680008203CC000000023400070226800080F
-S3210002318C203C800000002340007422680008203C80000001234000782068000892
-S321000231A8203C400000002140007C202E003020790002B8C843F00A003229001C3D
-S321000231C408C1000F3341001C4E5E4E754E560000202E0024E780206E002041F0B4
-S321000231E00C0022680008236E0008000C736E000E2268000871C10080E000000075
-S321000231FC23400064736E00122268000871C10080E000000023400060226800087C
-S32100023218236E00140030736E001A2268000871C108C0001D2340006822680008BC
-S3210002323422AE001C2268000842A900042268000842A900082268000842A90010F7
-S321000232502268000842A900142268000842A900182268000842A9001C2268000809
-S3210002326C42A900202268000842A900242268000842A900282268000842A9002C44
-S321000232882268000842A9003422680008203C800000002340003822680008701056
-S321000232A42340003C22680008A369004022680008A969004422680008203C0800AB
-S321000232C00000234000482268000842A9006C22680008203C800000002340007015
-S321000232DC22680008203CC00000002340007422680008203C8000000123400078FF
-S321000232F820680008203C400000002140007C202E002420790002B8C843F00A00DF
-S321000233143229001C08C1000F3341001C4E5E4E754E560000202E0030E780206E30
-S32100023330002C41F00C0022680008236E0008001C736E000E2268000871C1008096
-S3210002334CE00000002340006422680008236E00100008736E00162268000871C1C0
-S321000233680080E00000002340006022680008236E0018000C736E001E2268000846
-S3210002338471C108C0001D2340006822680008202E00202340001422680008202EEC
-S321000233A000242340000422680008202E002822802268000842A9001022680008B5
-S321000233BC42A900182268000842A9002022680008A969002422680008203C08008F
-S321000233D80000234000282268000842A9006C22680008203C80000001234000701B
-S321000233F420680008203C4000000021400074202E003020790002B8C843F00A00DE
-S321000234103229001C08C1000F3341001C4E5E4E754E560000202E0024E780206E3F
-S3210002342C002041F00C0022680008236E00080008736E000E2268000871C10080B9
-S32100023448E000000023400064736E00122268000871C10080E000000023400060DF
-S3210002346422680008236E0014002C736E001A2268000871C108C0001D2340006872
-S321000234802268000822AE001C2268000842A900042268000842A9000C226800080E
-S3210002349C42A900102268000842A900142268000842A900182268000842A9001C52
-S321000234B82268000842A900202268000842A900242268000842A90028226800087B
-S321000234D442A9003022680008203C80000000234000342268000870102340003807
-S321000234F022680008A969003C22680008203C08000000234000402268000842A9C2
-S3210002350C006C22680008203C800000002340007022680008203C8000000123401C
-S32100023528007420680008203C4000000021400078202E002420790002B8C843F046
-S321000235440A003229001C08C1000F3341001C4E5E4E7551FC4E56FFF048D7041CEC
-S3210002356075AE000B263C100000002443D5FC000090082002E180E7802043D1FCBD
-S3210002357C0000902428320800D5C07182E180E780429222300800D1C07002C28052
-S321000235984A4167422243D3FC000090C47182E180E380720183B10C00600A22104D
-S321000235B47002C2804A41671C22437182E180E780D3FC0000900422310800D3C0C0
-S321000235D002811000000067DA22BC1000000070134A02660270112F004EB9000225
-S321000235EC4CE42F004EB90002278070134A02508F660270112F004EB900024D5C34
-S3210002360870134A02588F660270112F004EB900024CB42484588F4CEE041CFFF0EF
-S321000236244E5E4E754E5600002F0A2F032F0275AE000B45F9100000002002E180D4
-S32100023640D5FC00009008E78026320800D5C0701242924A02660270102F004EB9E1
-S3210002365C00024CE42F004EB90002278070124A02660270102F004EB900024D5CA2
-S3210002367870124A02660270102F004EB900024CB424834CEE040CFFF44E5E4E75ED
-S321000236944E56000043F91000000071AE000B2049E180D1FC00009008E38042B074
-S321000236B00C0070404A2E000B660471FC008081A907084E5E4E7551FC4E560000C7
-S321000236CC2F032F0275AE000BAF674EB90000F018260010022F004EBAFE74100231
-S321000236E82F004EBAFF3C10022F0061A041F910000000E182D1FC00009024E38277
-S3210002370472FDC3B02C004EB900005A042F034EB90000F0184CEE000CFFF84E5E04
-S321000237204E7551FC4E5600004E5E4E754E5600004878006042A771AE000B721801
-S3210002373C4C01080041F90002DBD843F00C002F094EB900004B884E5E4E7551FC18
-S321000237584E5600002F032F0273AE000B203C10000000E181E781204122000681DA
-S3210002377400009188263C80F0000022402183180022000681000091A806800000C0
-S321000237909024D3FC000091C4218318002231880008C100192381880022318800BD
-S321000237AC0881001923818800A3700800740A4E71538266FA4CEE000CFFF84E5EB5
-S321000237C84E7551FC4E56FFF048D7003CA1417600206E0008183038007A08A3420A
-S321000237E47184C480A340C081B1826712E2890A81EDB883207984E28C538566E2EF
-S32100023800600AE2897984E28C538566D652830C83000000066DC2701AE0A94CEE6A
-S3210002381C003CFFF071814E5E4E7551FC4E5600002F032F02206E000C77A80001EE
-S3210002383871AE000B7390E180E78022407018E1A17010E1A371A800028283E18086
-S32100023854828071A80003243C10000000828020020680000090E42381080077A8D9
-S32100023870000573A800047018E1A17010E1A320020680000090E882832381080031
-S3210002388C2F084EBAFF3C22000C00002065180682000091187780A3400483000041
-S321000238A80020E7A081B12800600E06820000911CA340E3A081B128004CEE000C52
-S321000238C4FFF84E5E4E7551FC4E5600002F0A2F032F02162E000B4A2E000F661E93
-S321000238E0323C80000C030001662C303910000A44323C0800808133C010000A44A5
-S321000238FC6026102E000F0C000001661C323CF0000C0300016604323C0FC03039C8
-S3210002391810000A44808133C010000A44243C100000007183E180E7802440200229
-S3210002393406800000911C42B20800200206800000911842B208002002068000004B
-S32100023950912442B20800200206800000912042B208002F2E00102F034EBAFEBEEA
-S3210002396C2002068000009008204242B208002002068000009004D1FC000090847C
-S32100023988A1720800203C05EE00202180A800102E000FD1CA0C0000016606A940FE
-S321000239A48190600A0C0000026604A340819020020680000090C4A97208002002D7
-S321000239C006800000918C223C0F20000025810800200206800000919873FC0300C2
-S321000239DC2581080020020680000091AC223C0F240000258108002002068000004D
-S321000239F891B873FC01002581080020020680000091440682000091C8A7720800C5
-S32100023A14203C03000000258028004CEE040CFFF44E5E4E754E5600002F02222E91
-S32100023A30000C70054C4010015281743FC48141F91000000071AE000BE38AE18047
-S32100023A4CD1FC00009044E38021820C00242EFFFC4E5E4E754E5600002F042F03DE
-S32100023A682F02122E000B76264A01660276277007142E0013182E000FC0827407F4
-S32100023A84C48441F910000000E78243F0380080821340074022487181E180D3FC90
-S32100023AA000009004E380A1710C0022487181E180D3FC00009008E380A1710C0048
-S32100023ABC70BF4A016604717CFF7FC1A807084CEE001CFFF44E5E4E754E560000C3
-S32100023AD870124A2E000B660270102F004EB900024CE42F004EB9000227404E5E2A
-S32100023AF44E7551FC4E56FFE048D73C3C263C00005990283C00023AD46000019ACA
-S32100023B1071AE000B72184C01080041F90002DBD8A34541F00C0052A80034301204
-S32100023B2C0800000B6718323C0608C2804A41660E322A000202810000F8004A41C2
-S32100023B48670852A800386000012A7217C2804A4167347A0008000004670452A851
-S32100023B64005008000002670452A8005408000001670452A80058080000006738BD
-S32100023B8041E8005C52904A85670000F0603008000005670452A8004C0800000836
-S32100023B9C670452A8004008000007670452A8004408000006670641E800485290DA
-S32100023BB84A85670000BEA5674EB9000058BC2640322A0002701292803741000AF4
-S32100023BD4377C000E00084EB9000059D028404A80588F662A3012357C080000022E
-S32100023BF0028000003000348008D200072F0BA56728434E942F0228444E944FEF1A
-S32100023C0C000C600000982F00A5672A434E95256C000400043012357C080000026F
-S32100023C28028000003000348008D200072F022A444E95246B0004302A000C2F0087
-S32100023C442F2E000C4EB900005C504A804FEF001467182F0B302A000C2F002F2E79
-S32100023C60000C4EB900005C0C4FEF000C603A2F0B4EB9000058FC588F602E301295
-S32100023C7C357C08000002028000003000348008D20007A5674EB9000058BC2F00CC
-S32100023C98A56726434E932F0226444E934FEF001075AE000B10022F004EB9000270
-S32100023CB44AF84A802440588F6600FE524CEE3C3CFFE04E5E4E7551FC4E560000EE
-S32100023CD048790002B6BC42A74EBAFE1E4E5E4E754E56000048790002B6BCA3673C
-S32100023CEC4EBAFE0A4E5E4E754E5600002F032F02142E000B70124A02660270102B
-S32100023D082F004EB900024DBC70124A02660270102F004EB900024D8C26007012E7
-S32100023D244A0266122F3C00023CCC487800104EB900024D1860102F3C00023CE00B
-S32100023D40487800124EB900024D182F3CA00456702F3C10002007AB672F0342A77B
-S32100023D5C4878080042A7223C100000000681000091847582E182E782D2822F0141
-S32100023D7842A72F2E000C2F004EB9000229844CEE000CFFF84E5E4E754E560000A0
-S32100023D942F0A102E000B2F004EB900024A3C4A802440588F674271AE000B721859
-S32100023DB04C01080041F90002DBD852B00C30A3674EB9000058BC2F004EB9000012
-S32100023DCC58FC42AA0004426A0002508F102E000B2F004EB900024A3C4A802440CD
-S32100023DE8588F66BE246EFFFC4E5E4E754E56000042A761944E5E4E754E5600001B
-S32100023E04A36761884E5E4E754E5600002F032F02142E000B70134A02660270112C
-S32100023E202F004EB900024DBC70134A02660270112F004EB900024D8C26007013CB
-S32100023E3C4A0266122F3C00023DF4487800114EB900024D1860102F3C00023E00A6
-S32100023E58487800134EB900024D182F3CA00456702F3C10001007AD672F0342A76F
-S32100023E74487805EA42A7223C100000000681000091A47582E182E782D2822F0121
-S32100023E9042A72F2E000C2F004EB9000229844CEE000CFFF84E5E4E754E56000087
-S32100023EAC2F0275AE000B10022F004EBAF7DC10022F004EBAF86C4EB900005A7CED
-S32100023EC810022F004EB900024B8410022F004EBAF8802F2E0018102E000F2F000B
-S32100023EE410022F004EBAF9E2102E000F0C000001660C4878008410022F004EBA3D
-S32100023F00FB284A2E000B56C044802F00AB6771822F004EBAFB4CA36771822F003F
-S32100023F1C4EB900024B40508F2F0010022F004EBAFDC842A710022F004EB900029E
-S32100023F384B40508F2F002F024EBAFECA41F91000000071AE000BD1FC00009024D6
-S32100023F54E180E380720283B00C00242EFFFC4E5E4E7551FC4E5600002F0A2F03BA
-S32100023F702F0271AE000B45F9100000002400224AD3FC00009004E182E7827380D2
-S32100023F8CE181D5FC00009008E3812631280041F90002DBD8C6B21C002383280012
-S32100023FA8080300116712738074184C02180043F01C00529152A9002C0803001205
-S32100023FC46712738074184C02180043F01C00529152A9002808030013671273809C
-S32100023FE074184C02180043F01C00529152A90024080300146712738074184C0215
-S32100023FFC180043F01C00529152A90020080300156712738074184C02180043F08B
-S321000240181C00529152A9001C08030017670C738074184C02180052B01C180803B3
-S32100024034001B670C738074184C02180052B01C140803001C670C738074184C025C
-S32100024050180052B01C100803001D6712738074184C02180043F01C00529152A953
-S3210002406C000C0803001E6712738074184C02180043F01C00529152A90008223C0A
-S3210002408880000000C2836710718072184C01080041F00C00529852904CEE040CB5
-S321000240A4FFF44E5E4E7551FC4E560000A3674EBAFEB4A3404E5E4E754E560000EB
-S321000240C042A74EBAFEA4A3404E5E4E754E56000070134A2E000B660270112F0035
-S321000240DC4EB900024CE42F004EB9000227404E5E4E7551FC4E5600002F0B2F0A15
-S321000240F8246E001C73EA000A06810000000E0C81000005EA6F06700060000088B1
-S3210002411447F900004BB0AD672F2E00102F2A00044E93AD672F2E0014202A0004BA
-S321000241305C802F004E93A56741EE001A2F08222A000406810000000C2F014E93FF
-S3210002414C4FEF0024102E000B2F004EB900024AA04A802640588F67EC2F0AA367D5
-S321000241684EB900005990322A000A700ED280374100023213276A00040004008134
-S32100024184000088003681102E000B2F004EBAFF3AA3404FEF000C4CEE0C00FFF8B5
-S321000241A04E5E4E754E5600002F2E0018302E00162F002F2E00102F2E000C2F2E9D
-S321000241BC0008A3674EBAFF2E4E5E4E754E5600002F2E0018302E00162F002F2E10
-S321000241D800102F2E000C2F2E000842A74EBAFF0A4E5E4E754E5600002F0273AE86
-S321000241F4000B71AE000F41F91000000024002001E180E3807381E181E3814A8295
-S32100024210661C2248D3FC00009084D1FC000090C4740285B10C0070FBC1B01C00EA
-S3210002422C601A2248D3FC00009084D1FC000090C474FDC5B10C00700481B01C00D2
-S32100024248242EFFFC4E5E4E754E5600002F0B2F0A2F0271AE000B47F90000470895
-S321000242642F00487A01B04E9371AE000B243C10000000E180E78024402002068045
-S32100024280000090042F320800487A01B24E9320020680000090082F320800487A5C
-S3210002429C01B84E9320020680000090242F320800487A01BE4E9320020680000095
-S321000242B890842F320800487A01C44E9320020680000090882F320800487A01CA47
-S321000242D44E9320020680000090C42F320800487A01D04E9320020680000091448F
-S321000242F02F320800487A01D64E9320020680000091882F320800487A01DC4E931D
-S3210002430C200206800000918C2F320800487A01E24E9320020680000091902F32AF
-S321000243280800487A01E84E9320020680000091942F320800487A01EE4E932002F3
-S321000243440680000091982F320800487A01F44E93200206800000919C2F32080067
-S32100024360487A01FA4E9320020680000091A02F320800487A02004E93200206800C
-S3210002437C000091A82F320800487A02064E9320020680000091AC2F320800487AC0
-S32100024398020C4E9320020680000091B02F320800487A02124E9320020680000061
-S321000243B491B42F320800487A02184E9320020680000091B82F320800487A021E3E
-S321000243D04E9320020680000091BC2F320800487A02244E9320020680000091C0C8
-S321000243EC2F320800487A022A4E930682000091C42F322800487A02324E93487A76
-S3210002440802444E934CEE0C04FFF44E5E4E7551FC0A2D2D2D2D2D2D2D2D2D2D2D77
-S321000244242D2D204645432564202D2D2D2D2D2D2D2D2D2D2D2D2D0A004549522030
-S3210002444020202020202530387820202020202020200A005145494D5220202020AB
-S3210002445C202530387820202020202020200A005145435220202020202025303895
-S321000244787820202020202020200A00515243522020202020202530387820202041
-S3210002449420202020200A0051525F484153482020202530387820202020202020EF
-S321000244B0200A00515443522020202020202530387820202020202020200A005164
-S321000244CC4645435446575220202530387820202020202020200A005146454352FB
-S321000244E846535220202530387820202020202020200A005146454352464352200A
-S32100024504202530387820202020202020200A0051464543524C5246502025303812
-S321000245207820202020202020200A0051464543524C5746502025303878202020C6
-S3210002453C20202020200A0051464543524641522020253038782020202020202042
-S32100024558200A00514645435246525020202530387820202020202020200A00511C
-S321000245744645435246575020202530387820202020202020200A00514645435454
-S3210002459046535220202530387820202020202020200A005146454354464352205F
-S321000245AC202530387820202020202020200A0051464543544C5246502025303868
-S321000245C87820202020202020200A0051464543544C57465020253038782020201C
-S321000245E420202020200A0051464543544641522020253038782020202020202098
-S32100024600200A00514645435446525020202530387820202020202020200A005171
-S3210002461C4645435446575020202530387820202020202020200A0051465253548C
-S3210002463820202020202530387820202020202020200A00512D2D2D2D2D2D2D2DF6
-S321000246542D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A0A0051A5
-S321000246704E5600002F0B2F0A71AE000B47F9000047082F00487A00F64E9371AE6F
-S3210002468C000B72184C01080041F90002DBD845F00C002F1A487A00FA4E932F1AC1
-S321000246A8487A00FE4E932F1A487A01024E932F1A487A01064E932F1A487A010A55
-S321000246C44E932F1A487A010E4E932F1A487A01124E932F1A487A01164E932F1AAB
-S321000246E0487A011A4E932F1A487A011E4E932F1A487A01224E932F1A487A0126AC
-S321000246FC4E932F1A487A012A4E932F1A487A012E4E93487A01344E932F12487AAC
-S3210002471801344E932F2A0008487A01364E932F2A000C487A01384E932F2A001082
-S32100024734487A013A4E932F2A0014487A013C4E932F2A0018487A013E4E932F2A8A
-S32100024750001C487A01404E932F2A0020487A01424E932F2A0024487A01444E9381
-S3210002476C487A014A4E934CEE0C00FFF84E5E4E750A2020204645432564204C6FF3
-S32100024788670A2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A0051546F74616C3A20251B
-S321000247A434640A0068626572723A202534640A00626162723A20202534640A0043
-S321000247C0626162743A20202534640A006772613A2020202534640A007478663AD4
-S321000247DC2020202534640A006D69693A2020202534640A006C633A202020202544
-S321000247F834640A00726C3A202020202534640A007866756E3A20202534640A009A
-S3210002481478666572723A202534640A0072666572723A202534640A006474786640
-S321000248303A20202534640A00647278663A20202534640A000A524653573A0A009E
-S3210002484C696E763A2020202534640A006D3A20202020202534640A0062633A206D
-S321000248682020202534640A006D633A202020202534640A006C673A202020202502
-S3210002488434640A006E6F3A202020202534640A0063723A202020202534640A00BA
-S321000248A06F763A202020202534640A0074723A202020202534640A002D2D2D2D73
-S321000248BC2D2D2D2D2D2D2D2D2D2D2D0A0A0051FC4E5600004E5E4E754E560000D1
-S321000248D84E5E4E754E5600002F0A2F032F0271AE000B43F910000000E1802049CD
-S321000248F4D1FC00009004E780D3FC00009040223C00800000761F21810800721F8B
-S32100024910D1C071AE000F75AE000BC2807017E1A1008160000000E18271AE0013D5
-S3210002492CE782C6807012E1A3828308C1001123812800D3C27000221002810080CD
-S321000249480000660A52800C80000100006DEC0C80000100006604A3406010246E47
-S32100024964001420BC008000002011348070004CEE040CFFF44E5E4E754E5600001A
-S321000249802F0A2F0271AE000B43F910000000E180E7802049D1FC00009004244934
-S3210002499CD5FC00009040223C0080000021810800721FD1C071AE000F741FC280A9
-S321000249B87017E1A171AE0013008150000000C4807012E1A271EE0016828208C144
-S321000249D40011828071AE000BE180E380D3FC0000900825810C0071AE000BE1801A
-S321000249F0E78024310800223108000881001723810800D3C0700022100281008000
-S32100024A0C0000660A52800C80000100006DEC0C80000100006604A340600A20BC3E
-S32100024A2800800000228270004CEE0404FFF84E5E4E7551FC4E5600002F042F03D8
-S32100024A442F0271AE000B24390002B3FCE580D082D08020790002DD8443F00C00A3
-S32100024A6028094AA900042049670608110007670470006022528216022202701F18
-S32100024A7CE0A17003C280D2820281000000FC9681718323C00002B3FC20044CEE10
-S32100024A98001CFFF44E5E4E754E5600002F032F0271AE000B24390002B400E580D3
-S32100024AB4D082D08020790002DD8441F00C0008100007670470006022528216029B
-S32100024AD02202701FE0A17003C280D2820281000000FC9681718323C00002B40062
-S32100024AEC20084CEE000CFFF84E5E4E754E56000073AE000B20790002B404D2815C
-S32100024B082001E581D280D288D28122790002DD8043F11C000811000767047000BE
-S32100024B24601452882008720A4C410801718123C00002B40420094E5E4E7551FC71
-S32100024B404E56000073AE000F5381661871AE000B72144C01080020790002DD802E
-S32100024B5C43F00C002009601271AE000BE78020790002DD8443F00C0020094E5EBA
-S32100024B784E7551FC4E5600004E5E4E754E5600002F0A2F032F0245F90002DD8019
-S32100024B94223C0002DC9B0281FFFFFFFC24810681000000A023C10002DD84760021
-S32100024BB04EB9000059D075AE000B2240D4822002E582D4802002D083E7802040B2
-S32100024BCCD1D230FC900030FC080020A900042F09A5674EB9000059905283700AE2
-S32100024BE8B083508F6EC2D483E7827005205201F028F8760071AE000B2279000272
-S32100024C04DD84E580D083D080528341F10C0030FC1000425842900C8300000004D5
-S32100024C206DDA71AE000BE580D083E780720503F108F842B90002B40442B90002C3
-S32100024C3CB3FC42B90002B4004CEE040CFFF44E5E4E7551FC4E5600002F032F02F4
-S32100024C584EB90002627843F9100000002049D1FC00008014D3FC000080182410A4
-S32100024C7420114680C480208276000802000067142003D08041F900027B7020701A
-S32100024C900C044A8867024E905283E28A7010B08362DC4EB9000263484CEE000CAB
-S32100024CACFFF8A3404E5E4E754E56000072002001D08041F900027B7041F00C00B0
-S32100024CC8202E0008B0906606A1584290600852817010B08162DC4E5E4E7551FC15
-S32100024CE44E5600002F0272002001D080242E000841F900027B70B4B00C00660499
-S32100024D002001600A52817010B08162E0A140242EFFFC4E5E4E7551FC4E560000B0
-S32100024D1C2F2E000861C272FFB280588F662C72002001D08041F900027B7041F094
-S32100024D380C0070FFB090660C20EE000820AE000C2001600A52817010B0816ED8E5
-S32100024D54A1404E5E4E7551FC4E5600002F02721041F900027BF0D1C1242E0008B4
-S32100024D707110B48066044210600852817020B08162E2242EFFFC4E5E4E7551FC65
-S32100024D8C4E5600002F02720041F900027BF0242E000871301800B4806604200143
-S32100024DA8600A52817020B08162E27000242EFFFC4E5E4E754E5600002F0B2F0A62
-S32100024DC4222E000843F91000000045F900027BF0D3FC0000805C7023B0816500A8
-S32100024DE002F8307B1A064EFB880202F202F202F202F202F202F202F202F202F283
-S32100024DFC02F202F202F202F202F202F202F2004800580068008200E20120014217
-S32100024E180164018601A801CA01EC020E0230024E026C028602A002BA02D470FC01
-S32100024E34C191157C0010001070006000029E70F3C191157C0011001170006000AF
-S32100024E50028E2011157C001200140280FFFFFCFF08C00008228070006000027493
-S32100024E6C41EA00154A10264A661820110280FFFFF3FF08C0000A228010BC0013A4
-S32100024E8870006000025241EA00194A10661820110280FFF3FFFF08C000132280A6
-S32100024EA410BC001370006000023241EB001F4A1066000222201102803FFFFFFFE9
-S32100024EC0228010BC001370006000021441EA001D4A10661820110280F3FFFFFFA4
-S32100024EDC08C0001A228010BC00147000600001F441EA00154A10660001E4201173
-S32100024EF80280FFFFF3FF228010BC00147000600001D641EA00184A10660001C631
-S32100024F1420110280FFFCFFFF08C00010228010BC00157000600001B441EA0019A9
-S32100024F304A10660001A420110280FFF3FFFF08C00012228010BC00167000600027
-S32100024F4C019241EA001A4A106600018220110280FFCFFFFF08C00015228010BC5C
-S32100024F68001770006000017041EA001B4A106600016020110280FF3FFFFF08C0AF
-S32100024F840017228010BC001870006000014E41EA001C4A106600013E2011028054
-S32100024FA0FCFFFFFF08C00018228010BC001970006000012C41EA001D4A10660088
-S32100024FBC011C20110280F3FFFFFF08C0001B228010BC001A70006000010A41EAA0
-S32100024FD8001E4A10660000FA20110280CFFFFFFF08C0001C228010BC001B700081
-S32100024FF4600000E841EA001F4A10660000D8201102803FFFFFFF08C0001F2280F7
-S3210002501010BC001C7000600000C641EA001A4A10660000B620110280FFCFFFFFC4
-S3210002502C228010BC001D7000600000A841EA001B4A106600009820110280FF3FCE
-S32100025048FFFF228010BC001E70006000008A41EA001C4A10667A20110280FCFF31
-S32100025064FFFF228010BC001F7000606E41EA001C4A106660201100800300000044
-S32100025080228010BC00207000605441EA001D4A106646201100800C0000002280AD
-S3210002509C10BC00217000603A41EA001E4A10662C2011008030000000228010BC75
-S321000250B800227000602041EA001F4A10661220110080C0000000228010BC0023A4
-S321000250D470006006A340600270004CEE0C00FFF84E5E4E754E56000041F9100093
-S321000250F00708A1687910A168790C201008C0001020804E5E4E7551FC4E56000065
-S3210002510C2F0241F9100000007007122E000F142E000BC0817207C282E78180818A
-S321000251281140077041E8070842A8791042A8790C2010088000102080242EFFFCCC
-S321000251444E5E4E754E5600002F0A206E000C7190E58043F91000000045F10C006D
-S3210002516042AA080042280003246EFFFCA3404E5E4E7551FC4E5600002F0A2F0290
-S3210002517C75AE000B2002E58041F91000000043F00C0071822200E580908142A95B
-S32100025198080041F90002B40843F00C001282136E000F00012449136E001300028C
-S321000251B42F0942A72F3C00025148707E738290812F00A3674EB900003A644A8014
-S321000251D06716357CFFFF0008357C07BC000A73FC150425410004A3404CEE0404F2
-S321000251ECFFF84E5E4E7551FC4E56000071AE000B2200E580908141F90002B4088E
-S3210002520871B00C034E5E4E754E5600002F032F0275AE000B2002E58090822202F1
-S3210002522441F90002B40841F00C0070071228000216280001C280C6807183E7805C
-S3210002524082807182448043F91000000041F108001141077E0C020003660C203C55
-S3210002525CF7FFFFFFC1A9070860280C020002660C203CEFFFFFFFC1A90708601680
-S32100025278203CBFFFFFFF0C0200016606203CDFFFFFFFC1A907084CEE000CFFF891
-S321000252944E5E4E754E56FFF048D71C0449F91000000071AE000B45EC0800E98097
-S321000252B0D5C0429271AE000B2200E580908141F90002B40847F00C00302E000E08
-S321000252CC322B000AC0C175C0700117400003102E000B2F004EBAFF2E220275EBA5
-S321000252E800087010E1A271AE000BE580828241F40C002141080424AB00044CEE48
-S321000253041C04FFF0A3404E5E4E7551FC4A616E20323120323030370032323A3381
-S32100025320353A35320051FC5100000020000000090002582C000000020000000044
-S3210002533C0000000A0000000000001C3C000258300002583C00025850000000021F
-S3210002535800000003000000030000000000001ACC00025854000258640002587807
-S3210002537400000002000000030000000400000000000019880002587C00025888B3
-S32100025390000258A00000000200000003000000030000000000001864000258A47D
-S321000253AC000258B0000258C000000002000000000000000A000000000000077036
-S321000253C8000258C4000258D0000258FC000000020000000300000003000000001B
-S321000253E40000171800025900000259100002592000000002000000010000000131
-S3210002540000000000000016C800025924000259340002593C000000020000000003
-S3210002541C00000001000000010000164C000259400002594C000259540000000215
-S321000254380000000000000001000000000000271C000259580002596C00025978BF
-S32100025454000000020000000000000004000000000000794C0002597C00025990A7
-S32100025470000259B40000000200000000000000040000000000003280000259B83E
-S3210002548C000259C8000259D800000001000000000000000100000001000015F896
-S321000254A8000259DC0002594C000259E400000001000000010000000100000000C0
-S321000254C4000015AC000259E8000259F4000259FC00000002000000000000000117
-S321000254E0000000000000145000025A0400025A0C00025A14000000020000000109
-S321000254FC00000001000000000000137800025A18000259F400025A2400000002BB
-S32100025518000000020000000200000000000012B400025A2800025A3400025A40F5
-S32100025534000000020000000000000002000000010000118000025A4400025A546D
-S3210002555000025A600000000200000001000000020000000000000DFC00025A64AD
-S3210002556C00025A7400025A8000000002000000000000000A0000000000000DBC9A
-S3210002558800025A8400025A9800025AA80000000200000002000000020000000021
-S321000255A400000D7400025AAC00025ABC00025AC800000005000000000000000019
-S321000255C00000000000000B7800025AD000025AD800025AD90000000200000000AD
-S321000255DC000000000000000000000C5800025ADC00025AD800025AE80000000394
-S321000255F80000000000000002000000000000486800025AEC00025AF800025B08DC
-S32100025614000000030000000000000001000000000000473000025B1000025B1C11
-S3210002563000025B280000000200000000000000000000000100000C2400025B3011
-S3210002564C00025AD800025B3C00000003000000010000000A0000000000005348C4
-S3210002566800025B4000025B4800025B740000000100000000000000010000000108
-S3210002568400000BE000025B7C00025B8C00025B940000000200000003000000035C
-S321000256A0000000000000782400025B9800025BAC00025BC000000003000000002C
-S321000256BC000000000000000000000AB400025BC400025AD800025BD40000000383
-S321000256D80000000000000002000000000000F31800025BDC00025BF400025C0CAD
-S321000256F4000000030000000000000001000000020000F31800025AD800025AD819
-S3210002571000025C100000000400000000000000000000000000025F4800025C18E4
-S3210002572C00025AD800025C300000000400000000000000010000000000004A84C4
-S3210002574800025C3800025C5400000004000000000000000100000000000049B8EF
-S3210002576400025C5C00025C700000000400000000000000010000000000008620EE
-S3210002578000025C7800025C8400000004000000000000000100000000000085AC17
-S3210002579C00025C8C00025C98000000040000000000000001000000000000853847
-S321000257B800025CA000025CB00000000400000000000000010000000000008494A4
-S321000257D400025CB800025CC400000005000000000000000100000000000083945C
-S321000257F000025CD000025CDC000000050000000000000001000000000000824461
-S3210002580C00025CE800025D000000000300000000000000010000000000026A88DB
-S3210002582800025D0861736D00417373656D626C790051FC513C3C616464723E2065
-S321000258443C617373656D626C793E3E0062630051426C6F636B20436F6D706172A5
-S32100025860650051FC6164647231206164647232206C656E677468000062660051FE
-S3210002587C426C6F636B2046696C6C0051626567696E20656E642064617461203CB3
-S32100025898696E633E00000000626D0051426C6F636B204D6F7665005162656769CA
-S321000258B46E20656E642064657374000062720051427265616B706F696E740051B6
-S321000258D03C616464723E203C2D637C74203C76616C75653E3E203C2D72203C6116
-S321000258EC646472202E2E2E3E3E203C2D693E000062730051426C6F636B2053651F
-S32100025908617263680051FC51626567696E20656E64206461746100006463005111
-S321000259244461746120436F6E766572740051FC51646174610051FC5164697300CE
-S32100025940446973617373656D626C65003C616464723E0000646C0051446F776E09
-S3210002595C6C6F616420436F6E736F6C650051FC513C6F66667365743E00000000F5
-S32100025978646E0051446F776E6C6F6164204E6574776F726B0051FC513C2D637CC0
-S32100025994657C697C73203C2D6F206F66667365743E3E203C66696C656E616D65FE
-S321000259B03E000000666C0051466C617368205574696C6974696573003C6F706528
-S321000259CC726174696F6E202E2E2E3E00676F00514578656375746500677400511C
-S321000259E84578656375746520546F0051616464720051FC5168656C700051FC5114
-S32100025A0448656C700051FC513C636D643E0000006C7200514C6F6F7020526561A8
-S32100025A20640000006C7700514C6F6F7020577269746500516164647220646174C0
-S32100025A3C610000006D6400514D656D6F727920446973706C61790051626567696C
-S32100025A586E203C656E643E006D6D00514D656D6F7279204D6F646966790051FC72
-S32100025A7461646472203C646174613E007264005152656769737465722044697393
-S32100025A90706C61790051FC513C7265676973746572202E2E2E3E0000726D0051E5
-S32100025AAC5265676973746572204D6F646966790072656720646174610051FC5173
-S32100025AC872657365740051FC526573657400000000736400537461636B204475A1
-S32100025AE46D7000517365740053657420436F6E66696700513C6F7074696F6E203C
-S32100025B0076616C75653E005173686F770051FC5153686F7720436F6E666967005F
-S32100025B1C3C6F7074696F6E3E0051FC51737465700051FC515374657020284F76B1
-S32100025B386572290073796D0053796D626F6C00513C73796D623E203C2D61207377
-S32100025B54796D622076616C75653E203C2D722073796D3E203C2D637C6C7C733EB7
-S32100025B700051FC5174726163650051FC54726163652028496E746F290051FC517F
-S32100025B8C3C636F756E743E007570005155706C6F61642042696E6172792044616D
-S32100025BA874610051626567696E20656E642066696C656E616D6500517665720058
-S32100025BC4446973706C61792056657273696F6E0069726D640051FC51496E746507
-S32100025BE0726E616C20526567204D6F642F446973700051FC6D6F64756C652E7244
-S32100025BFC65676973746572203C646174613E0051697264006D6D61700051FC5185
-S32100025C18446973706C617920746865206D656D6F7279206D61700051626173652E
-S32100025C340051FC513C6865787C6465637C62696E7C6F63747C756E6B6E6F776E82
-S32100025C503E0051FC626175640051FC513C393630307C31393230307C333834309D
-S32100025C6C303E005173657276657200513C686F73742049503E0051FC636C696592
-S32100025C886E7400513C626F6172642049503E005167617465776179003C676174CF
-S32100025CA4657761792049503E0051FC516E65746D61736B003C6E65746D61736B6F
-S32100025CC03E0051FC66696C656E616D650051FC513C66696C656E616D653E00514A
-S32100025CDC66696C65747970650051FC513C737265637C636F66667C656C667C6909
-S32100025CF86D6167653E0051FC65746861646472003C61613A62623A63633A646489
-S32100025D143A65653A66663E0000004B00000000000000000000000000FFFFFF00DB
-S32100025D300000020000CF5485CF01746573742E733139000000000000000000000A
-S32100025D4C0000000000000000000000000000000000000000000000004E5600008F
-S32100025D68303CFFC033C010000A444E5E4E7551FC4E56000041F910000A4F10BCCC
-S32100025D84000C42287BF14EB900026B502F0042A74EB90000EDF84E5E4E7551FC95
-S32100025DA04E56000043F91000000041E901042010028010000000666E71FC02AA11
-S32100025DBC23400004203C0000000073FC0FFFC2807014E1A9008100000019234135
-S32100025DD80020203C7372293023400108203C463700002340010C20BCE10F00026A
-S32100025DF443E90100700222BC4001000022BC058D0000819070048190819022BCD8
-S32100025E10018D000020100880001F20802010008010000F0020804E5E4E7551FC3E
-S32100025E2C4E5600002F0243FA00DC41F910000000F2115480203CFF8000004240E6
-S32100025E482140050022280B607018E0A9AF40C0810C8080000000641643FA00BE59
-S32100025E64F2004000F2115423F2000438F2830030602206808000000043FA009A3C
-S32100025E80F2004000F211542243FA0096F2115423F2000438F283000CF200000362
-S32100025E9CF2026000601643FA0084F2115428F2000003F202600006828000000087
-S32100025EB8706E4C420000723FC280700AE1A9203C003F0001008100100180214153
-S32100025ED4050821400504203CE000000042402140050C70784C420000723FC2809A
-S32100025EF0700AE1A900810010018021410514203C00FF000121400510242EFFFCDE
-S32100025F0C4E5E4E7541E000000000000041E0000000000000401E47AE147AE148B6
-S32100025F2841E00000000000004E5600004EBAFE2E4EBAFEF24EBAFE624EBAFE36C0
-S32100025F444E5E4E754E56FFF048D70C0C45F900004708263C000260DC2F034E92C1
-S32100025F60487A017E4E92487A01B04E9248780020243C0002615041F9000000007C
-S32100025F7C203C0400000047F008FF2F0B2F3C00000000487A01E42F024E92487846
-S32100025F980020203C1000000006800003FFFF2F002F3C10000000487A01CC2F0268
-S32100025FB44E924878002041F910010000203C0000800047F008FF2F0B2F3C1001EE
-S32100025FD00000487A01B02F024E924878002041F920000000203C0000100047F04C
-S32100025FEC08FF2F0B2F3C20000000487A01982F024E924878002041F9200010000F
-S32100026008203C0000100043F008FF2F092F3C20001000487A01802F024E924878E7
-S32100026024001041F9FF800000203C0020000043F008FF2F092F3CFF800000487AF5
-S3210002604001682F024E922F034E92487A01684E92487A018A4E9241F9000000003E
-S3210002605C203C0003000043F008FF243C000262082F092F3C00000000487A01AEA7
-S321000260782F024E922F3C0002FFFF2F3C00000000487A01A62F024E9241F9100158
-S321000260940000203C0000300043F008FF2F092F3C10010000487A01922F024E9208
-S321000260B02F034E92487A018E4E92487A019C4E92487A00E642A7487A01A44E9272
-S321000260CC2F034E924CEE0C0CFFF04E5E4E7551FC0A0051FC2020202020205479BD
-S321000260E870652020202020202020202020537461727420202020202020202045EC
-S321000261046E64202020202020506F72742053697A650A005120202D2D2D2D2D2DDC
-S321000261202D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D6F
-S3210002613C2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A00512020252D313473205D
-S3210002615820202523303858202020252330385820202025642D6269740A0051FCC7
-S32100026174534452414D0051FC4D4241520051FC5153797374656D205352414D00AB
-S32100026190436F7265205352414D300051436F7265205352414D310051426F6F749C
-S321000261AC20466C617368005120202050726F746563746564202020202020202066
-S321000261C8205374617274202020202020202020456E640A0020202D2D2D2D2D2DF6
-S321000261E42D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2DAB
-S321000262002D2D2D2D2D2D0A002020252D31347320202025233038582020202523E8
-S3210002621C3038580A0051FC516442554720436F64650051FC644255472044617451
-S32100026238610051FC4D4344204150490020202020436869702053656C65637473CF
-S321000262540A0051FC20202D2D2D2D2D2D2D2D2D2D2D2D2D2D2D2D0A0020204353DF
-S321000262702564202025730A004E560000AD674EB90000F0184E5E4E754E56FFF0D6
-S3210002628C48D71C04246E0008206E001049F90002DF4047F4880061D42F3C0000B1
-S321000262A800502F3CFF8020002F0C4EB900004BB0202E000C4A804FEF000C6F0658
-S321000262C416DA538066FA42A7243C0000005042A7A3672F022F3C0002DF402F3CDF
-S321000262E0FF8020004EB9000285F0B4804FEF001867122F022F00487A00184EB939
-S321000262FC000047084FEF000C4CEE1C04FFF04E5E4E7551FC466C617368207072F0
-S321000263186F6772616D6D696E67206572726F723A202025235820627974657320D5
-S321000263346F6620252358207772697474656E210A0051FC514E56000042A74EB926
-S321000263500000F0184E5E4E754E5600004E5E4E754E56000070004E5E4E7551FCCF
-S3210002636C4E560000222E0008203C00030000B280650A068003FD0000B280653CB8
-S32100026388203C20000000B280650A068000001000B2806528203C20001000B280C1
-S321000263A4650A068000001000B2806514203C10010000B2806528068000008000F3
-S321000263C0B280641E41F910010000A340B288651443F900003000D3C8B28954C0CE
-S321000263DC49C04480600270004E5E4E754E56000022390002B514558166084EB97A
-S321000263F800006CCC60064EB9000287304E5E4E754E5600007002B0B90002B5146A
-S3210002641466344EBAFE60487801004EB90000F09042A74EB9000236C8203C0002CE
-S3210002643040BC2F00A3674EB900003A142F3C00024C50A3674EB900003A144E5EAA
-S3210002644C4E7551FC4E56FFF82F0A2F027002B0B90002B514660000A245F9000229
-S32100026468B6BC203C000240BC2F0A42A72F0048780067A3674EB900003A644A8053
-S32100026484671C42A7203C00024C5042A72F0048780070A3674EB900003A644A80CD
-S321000264A0660E487A006C4EB9000047087000605641EEFFF82F0824084EB9000228
-S321000264BC69AC2F0A4EB900005B1C71FC05EA2540000C203C000241C82540003C1B
-S321000264D82F02A367A367A36742A74EB900023EA8AD672F022F0A4EB900004BB0F9
-S321000264F42F3C000081004EB90000F0904EBAFE46A3404CEE0404FFF04E5E4E7542
-S321000265104572726F723A20556E61626C6520746F2072656769737465722068613B
-S3210002652C6E646C65720A00514E56FF9C2F0A45EEFF9C224A41FA012222D822D8D7
-S3210002654822D822D822D832D8203CFF80000012D8A36EFFE02D40FFD8203C0020C2
-S3210002656400002D40FFDC203C000284982D40FFE4203C000285F02D40FFE8203C7E
-S3210002658000027FF42D40FFEC203C00027F182D40FFF0203C0002870C2D40FFF488
-S3210002659C203C000000002D40FFF8203C000300002D40FFFC2F2EFFD84EB9000217
-S321000265B886D02F0A4EB9000035D4224A41FA00B6203CE000000022D822D822D899
-S321000265D422D822D832D812D8A36EFFE02D40FFD8203C010000002D40FFDC203C86
-S321000265F000027CF02D40FFE4203C00027DAC2D40FFE8203C00027C502D40FFEC6C
-S3210002660C203C00027C102D40FFF0203C0002870C2D40FFF442AEFFFC2F2EFFD8B4
-S321000266284EB900027F042F0A4EB9000035D4A7672F3C10010000203C1000000083
-S321000266440680000080002F004EB900022CB042A7AD674EB900025108246EFF9890
-S321000266604E5E4E7532384633323043334220283120782031362D6269742900512C
-S3210002667C3238463132384A334420283120782031362D6269742900514E560000CC
-S3210002669842A7A76742A74EB9000251744E5E4E754E5600002F0C2F0B2F0A49F92D
-S321000266B4000047082F3C000000004EB90000F0F0487A007E4E9447F910000000AF
-S321000266D045EB004422127001C2804A416706487A00684E9422127002C2804A41D4
-S321000266EC6706487A00684E9422127008C2804A416706487A00704E9424BC000037
-S32100026708000B377C40000F00177C00800F05202B070C0280FFFFFF7E2740070C64
-S3210002672443F900030000203C03FD0000D3C023C90002B8704CEE1C00FFF44E5E18
-S321000267404E7551FC0A0A005145787465726E616C2052657365740A0057617463C1
-S3210002675C68646F672054696D65722052657365740A0051FC4A544147205265736C
-S3210002677865740A0000000001640051FC4D35343735455642450051FC4FEFFFF4A6
-S3210002679448D7030448C00C800000001067200C800000001367240C8000000014C6
-S321000267B0672C4CD703044FEF000C2F0F4EB90000EFA84EB9000287302200700090
-S321000267CC601A2F014EB90002870C4FEF00047000600A4EB9000286EC600000026A
-S321000267E84CD703044FEF000C4E7300004E56FFFC4AAE000856C044801D40FFFF84
-S3210002680448780014A367486EFFFF4EB9000262884E5E4E754E56000071B9FF802F
-S3210002682020144E5E4E7551FC4E56FFFC1D6E000BFFFF48780016A367486EFFFF9D
-S3210002683C4EB9000262884E5E4E7551FC4E56000071B9FF8020164E5E4E7551FC4A
-S321000268584E560000206E0008720043F9FF8020007131181E1180180052814A8077
-S321000268746608422800282008600C7028B0816EDE4230180020084E5E4E7551FCE9
-S321000268904E5600004878001E487800282F2E00084EB9000262884E5E4E7551FC66
-S321000268AC4E560000206E0008720043F9FF802000103118101180180052810C81CF
-S321000268C8000000046DE820084E5E4E754E56000048780010A9672F2E00084EB9CC
-S321000268E4000262884E5E4E754E560000206E0008720043F9FF8020001031180C49
-S321000269001180180052810C81000000046DE820084E5E4E754E5600004878000C0A
-S3210002691CA9672F2E00084EB9000262884E5E4E754E560000206E0008720043F998
-S32100026938FF802000103118081180180052810C81000000046DE820084E5E4E7542
-S321000269544E56000048780008A9672F2E00084EB9000262884E5E4E754E56000038
-S32100026970206E0008720043F9FF802000103118041180180052810C8100000004B6
-S3210002698C6DE820084E5E4E754E560000A967A9672F2E00084EB9000262884E5E33
-S321000269A84E7551FC4E560000206E0008720043F9FF80200010311818118018001A
-S321000269C452810C81000000066DE820084E5E4E754E56FFE448D7043C2F2E000812
-S321000269E04EB900004CBC78002A00528574007600588FB6856C64206E0008123057
-S321000269FC38000C01003A671E4A01671A0C82000000026C5441EEFFFD1181280072
-S32100026A1852825283B6856DD6603845EEFFFD42322800487800107400486EFFF8DF
-S32100026A342F0A4EB900004DF04A804FEF000C6606B5EEFFF8671A206E000C1180FB
-S32100026A50480052845283B6856D9C5D8457C049C04480600270004CEE043CFFE4F7
-S32100026A6C4E5E4E754E56000048780018AD672F2E00084EB9000262884E5E4E7540
-S32100026A884E56FFF82F02206E000C202800086648486EFFF84EBAFF0E7400588F69
-S32100026AA460080C8200000005671041EEFFF8203C00026B1873B02800600A203C44
-S32100026AC000026B2073AEFFFD2F012F004EB90000470852820C8200000006508F0C
-S32100026ADC6DC86030486EFFF82F004EBAFEEC4A80508F670C486EFFF84EBAFF7AB9
-S32100026AF8588F6014206E000C2F280008487A00224EB900004708508F242EFFF4C8
-S32100026B144E5E4E75253032583A0051FC253032580A0051FC4572726F723A2020CE
-S32100026B30496E76616C69642045746865726E657420416464726573733A20202596
-S32100026B4C730A00514E5600002039FF8020000C8000002580671A0C8000009600E7
-S32100026B6867180C800000E10067160C800001C2006714601A71FC2580601871FC65
-S32100026B849600601271FCE100600C203C0001C200600471FC4B004E5E4E7551FC34
-S32100026BA04E56FFFC2D6E0008FFFC42A7A967486EFFFC4EB9000262884E5E4E7588
-S32100026BC02D5C7C2F4D756C74692D6368616E6E656C20444D412041504920416CB3
-S32100026BDC7068612076302E332028323030342D30342D32362900000000000001D7
-S32100026BF80000000100000001000000010000000100000001000000010000000172
-S32100026C140000000100000001000000010000000100000001000000010000000155
-S32100026C3000000001000000000000000000026E34000276340000000000000000EF
-S32100026C4C0002BBD800000000000000000000000000026EB40002763400000000BF
-S32100026C68000000000002BDD800000000000000000000000000026F340002763420
-S32100026C8400000000000000000002BFD800000000000000000000000000026FB42E
-S32100026CA00002763400000000000000000002C1D800000000000000000000000089
-S32100026CBC000270340002763400000000000000000002C3D80000000000000000C5
-S32100026CD800000000000270B40002763400000000000000000002C5D80000000027
-S32100026CF40000000000000000000271340002763400000000000000000002C7D888
-S32100026D10000000000000000000000000000271B40002763400000000000000008C
-S32100026D2C0002C9D80000000000000000000000000002723400027634000000004C
-S32100026D48000000000002CBD8000000000000000000000000000272B400027634AE
-S32100026D6400000000000000000002CDD800000000000000000000000000027334BB
-S32100026D800002763400000000000000000002CFD80000000000000000000000009A
-S32100026D9C000273B40002763400000000000000000002D1D8000000000000000053
-S32100026DB800000000000274340002763400000000000000000002D3D800000000B4
-S32100026DD40000000000000000000274B40002763400000000000000000002D5D816
-S32100026DF00000000000000000000000000002753400027634000000000000000028
-S32100026E0C0002D7D8000000000000000000000000000275B40002763400000000DA
-S32100026E28000000000002D9D8000000000000000000000000000000000000000093
-S32100026E44000000000000000000000000000000000000000000000000000000002A
-S32100026E60000000000000000000000000000000000000000000000000000000000E
-S32100026E7C000000000000000000000000000000000000000000000000E000000012
-S32100026E98200000002000FFFF000000000000000000000000000000000000000098
-S32100026EB400000000000000000000000000000000000000000000000000000000BA
-S32100026ED0000000000000000000000000000000000000000000000000000000009E
-S32100026EEC0000000000000000000000000000000000000000000000000000000082
-S32100026F08000000000000000000000000E0000000200000002000FFFF0000000047
-S32100026F240000000000000000000000000000000000000000000000000000000049
-S32100026F40000000000000000000000000000000000000000000000000000000002D
-S32100026F5C0000000000000000000000000000000000000000000000000000000011
-S32100026F7800000000000000000000000000000000000000000000000000000000F5
-S32100026F94E0000000200000002000FFFF00000000000000000000000000000000BB
-S32100026FB000000000000000000000000000000000000000000000000000000000BD
-S32100026FCC00000000000000000000000000000000000000000000000000000000A1
-S32100026FE80000000000000000000000000000000000000000000000000000000085
-S3210002700400000000000000000000000000000000E0000000200000002000FFFF4A
-S32100027020000000000000000000000000000000000000000000000000000000004C
-S3210002703C0000000000000000000000000000000000000000000000000000000030
-S321000270580000000000000000000000000000000000000000000000000000000014
-S3210002707400000000000000000000000000000000000000000000000000000000F8
-S3210002709000000000E0000000200000002000FFFF000000000000000000000000BE
-S321000270AC00000000000000000000000000000000000000000000000000000000C0
-S321000270C800000000000000000000000000000000000000000000000000000000A4
-S321000270E40000000000000000000000000000000000000000000000000000000088
-S321000271000000000000000000000000000000000000000000E0000000200000006B
-S3210002711C2000FFFF00000000000000000000000000000000000000000000000031
-S321000271380000000000000000000000000000000000000000000000000000000033
-S321000271540000000000000000000000000000000000000000000000000000000017
-S3210002717000000000000000000000000000000000000000000000000000000000FB
-S3210002718C0000000000000000E0000000200000002000FFFF0000000000000000C1
-S321000271A800000000000000000000000000000000000000000000000000000000C3
-S321000271C400000000000000000000000000000000000000000000000000000000A7
-S321000271E0000000000000000000000000000000000000000000000000000000008B
-S321000271FC000000000000000000000000000000000000000000000000E00000008F
-S32100027218200000002000FFFF000000000000000000000000000000000000000014
-S321000272340000000000000000000000000000000000000000000000000000000036
-S32100027250000000000000000000000000000000000000000000000000000000001A
-S3210002726C00000000000000000000000000000000000000000000000000000000FE
-S32100027288000000000000000000000000E0000000200000002000FFFF00000000C4
-S321000272A400000000000000000000000000000000000000000000000000000000C6
-S321000272C000000000000000000000000000000000000000000000000000000000AA
-S321000272DC000000000000000000000000000000000000000000000000000000008E
-S321000272F80000000000000000000000000000000000000000000000000000000072
-S32100027314E0000000200000002000FFFF0000000000000000000000000000000037
-S321000273300000000000000000000000000000000000000000000000000000000039
-S3210002734C000000000000000000000000000000000000000000000000000000001D
-S321000273680000000000000000000000000000000000000000000000000000000001
-S3210002738400000000000000000000000000000000E0000000200000002000FFFFC7
-S321000273A000000000000000000000000000000000000000000000000000000000C9
-S321000273BC00000000000000000000000000000000000000000000000000000000AD
-S321000273D80000000000000000000000000000000000000000000000000000000091
-S321000273F40000000000000000000000000000000000000000000000000000000075
-S3210002741000000000E0000000200000002000FFFF0000000000000000000000003A
-S3210002742C000000000000000000000000000000000000000000000000000000003C
-S321000274480000000000000000000000000000000000000000000000000000000020
-S321000274640000000000000000000000000000000000000000000000000000000004
-S321000274800000000000000000000000000000000000000000E000000020000000E8
-S3210002749C2000FFFF000000000000000000000000000000000000000000000000AE
-S321000274B800000000000000000000000000000000000000000000000000000000B0
-S321000274D40000000000000000000000000000000000000000000000000000000094
-S321000274F00000000000000000000000000000000000000000000000000000000078
-S3210002750C0000000000000000E0000000200000002000FFFF00000000000000003D
-S32100027528000000000000000000000000000000000000000000000000000000003F
-S321000275440000000000000000000000000000000000000000000000000000000023
-S321000275600000000000000000000000000000000000000000000000000000000007
-S3210002757C000000000000000000000000000000000000000000000000E00000000B
-S32100027598200000002000FFFF000000000000000000000000000000000000000091
-S321000275B400000000000000000000000000000000000000000000000000000000B3
-S321000275D00000000000000000000000000000000000000000000000000000000097
-S321000275EC000000000000000000000000000000000000000000000000000000007B
-S32100027608000000000000000000000000E0000000200000002000FFFF0000000040
-S321000276240000000000000000000000000000000000000000000000000000000042
-S321000276400000000000000000000000000000000000000000000000000000000026
-S3210002765C000000000000000000000000000000000000000000000000000000000A
-S3210002767800000000000000000000000000000000000000000000000000000000EE
-S3210002769400000000000000000000000000000000000000000000000000000000D2
-S321000276B000000000000000000000000000000000000000000000000000000000B6
-S321000276CC000000000000000000000000000000000000000000000000000000009A
-S321000276E8000000000000000000000000A0045670A0000000A000000020000000B4
-S321000277042180000021E000002040000020500000205A000020A00000202FA000C6
-S32100027720202F9000202EA000202DA000202E2000202F2000000277B400027920E6
-S3210002773C000000000000000000000000000000000000000000000000000279248A
-S32100027758000279F80000000000000000000000000000000000000000000000009A
-S32100027774000279FC00027A98000000000000000000000000000000000000000066
-S321000277900000000000027A9C00027B6C00000000000000000000000000000000D4
-S321000277AC0000000000000000800040008118801BB8C6001810002B107000000D67
-S321000277C8018CF89F6000000A080CF89F000001F8981803648118801BF8C6001A48
-S321000277E4B8C6601B1000271000000F18B8C6001D1000131060000007014CF88B15
-S3210002780098C6001C0000071098C7001810001F100000C818000001F8C1476018C4
-S3210002781CC003231D811A601BC1862102849BE00903FED7B8DA9B001B9B9BE01B6C
-S321000278381000CB2070000006088CF88F1000CB2870000006088CF88F1000CB3001
-S3210002785470000006088CF88F1000CB380000C728000001F8C1476018C003241D00
-S32100027870811A601BDA9B001B9B9BE01B0000D3A0C1862102849BE0090BFED7B8A0
-S3210002788CDA9B001B9B9BE01B1000CB2070000006088CF88F1000CB287000000612
-S321000278A8088CF88F1000CB3070000006088CF88F1000CB380000C728000001F80A
-S321000278C48118801BD8C6001898C6601C6000000B0C8CFC9F000001F8A146001E40
-S321000278E010000B0810002050B8C6001810002B107000000A080CF89F6000000D6E
-S321000278FC018CF89F000001F88618801B7000000E084CF21FD89903368019801B51
-S32100027918040001F8000001F8000001F88198001B7000000D080CF81F8198801BCC
-S321000279346000000E084CF85F000001F88298001B7000000D010CF81F6000000ED9
-S32100027950018CF81FC202601BC002221C809A601BC10420C2839BE00903FED7B85D
-S3210002796CDA9B001B9B9BE01B70000006088CF8891000CB2870000006088CF8891D
-S321000279881000CB3070000006088CF8890000CB38000001F8C202601BC002229C8A
-S321000279A4809A601BDA9B001B9B9BE01B0000D3A0C10420C2839BE0090BFED7B8B0
-S321000279C0DA9B001B9B9BE01B70000006088CF8891000CB2870000006088CF889C9
-S321000279DC1000CB3070000006088CF8890000CB38000001F8C318022D8018801BB8
-S321000279F8040001F88000400081988000100007886000000A080CF05F98180209EE
-S32100027A1481C400047000000E010CF05F7000000C01CCF05F70000004014CF04999
-S32100027A3070000004004CF04A00000B88C40301508119E01203E0CF9081188000A6
-S32100027A4C000AC788C40300008199E00070000004084CFC8B600000050CCCF84137
-S32100027A6881C60000C399021B801980000000840000000F0881988000100007884E
-S32100027A846000000A080CF05FC218820980190000040001F8000001F8800040005D
-S32100027AA081988000100007886000000A080CF05F981803098000400381C60004F3
-S32100027ABC7000000E014CF05F7000000C028CF05F7000000D018CF05F7000000466
-S32100027AD801CCF04D10000B9060000004020CF0A1C318831283C7000000001F10E9
-S32100027AF4C583A3C38104232503E0C798D89900009999E000000ACF98D899230623
-S32100027B109999E03F03EAC798D89900009999E000000ACF98D8990000998323020E
-S32100027B2C0BEAC798819880006000000B0C4CFC5F81C80000C519031280198000D5
-S32100027B480000840000000F0881988000100007886000000A080CF05FC298830993
-S32100027B6480190000040001F8000001F8FFFFFFFF00000000FFFFFFFF0000000076
-S32100027B80FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFFF1
-S32100027B9C00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000D1
-S32100027BB8FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFFB9
-S32100027BD400000000FFFFFFFF00000000FFFFFFFF00000000FFFFFFFF0000000099
-S32100027BF0000102030405060708090A0B0C0D0E0F000000000000000000000000F9
-S32100027C0C000000004E5600002F0272002001E180EF80207900028760242E000840
-S32100027C2843F00C002009B480650A06800001FFFFB480630C52810C810000008025
-S32100027C446DD27000242EFFFC4E5E4E754E5600002F032F0272002001E180EF8047
-S32100027C60207900028760242E000843F00C002009B480650E260224090682000137
-S32100027C7CFFFFB682630C52810C81000000806DCE70004CEE000CFFF84E5E4E7508
-S32100027C984E56000020790002876030BC006030BC00D030100800000767F830BC00
-S32100027CB400FF4E5E4E7551FC4E560000222E00087011E1A1E2812079000287600D
-S32100027CD041F01A0030BC002030BC00D03210303C0080C0814A4067F430BC00FF3E
-S32100027CEC4E5E4E754E56FFE848D7047C262E0008282E000C246E00107A004A8433
-S32100027D0866042004606E618874002C390002876022027011E1A1D286B681650A2B
-S32100027D2406810001FFFFB681630A52820C82000000806DDA22027011E1A1D28669
-S32100027D409681D883BA846C204A8A67084878002E4E92588F2F024EBAFF640685C4
-S32100027D5C000200005282588FBA846DE04A8A670E4878000A4E924878000D4E921B
-S32100027D78508F20054CEE047CFFE84E5E4E7551FC4E560000206E000830BC004020
-S32100027D9430AE000E3210303C0080C0814A4067F430BC00FF4E5E4E754E56FFE4AA
-S32100027DB048D71C0C286E001C246E000CA34241EEFFF8760010FC000810FC007CFB
-S32100027DCC10FC002F10FC002D10BC005C4AAE0014266E0008671A2F0C2F2E001026
-S32100027DE82F2E00084EBAFF024FEF000C4AAE00106F5E600A4EBAFE9A4AAE0010D8
-S32100027E046F5230122F002F0B4EBAFF7A3012B053508F664055AE00104A5B4A5A47
-S32100027E204A8C672E0C83000010006624102EFFF8A1432F004E9441EEFFF810301A
-S32100027E3C28002F004E9452820C8200000005508F6602A34252834AAE00106EAE5D
-S32100027E584A8C670A102EFFF82F004E94588F4AAE00186706266E00184E93200A5E
-S32100027E744CEE1C0CFFE490AE000C4E5E4E7551FC4E56FFEC48D7007C262E000819
-S32100027E90282E000C7A004A84675E720020790002876024012C087011E1A2D488B2
-S32100027EACB682650A06820001FFFFB682630A52810C81000000806DD82401701114
-S32100027EC8E1A2D4869682D883BA846C2024017011E1A2E28206850002000052818F
-S32100027EE443F02A0032BC006032BC0001BA846DE030BC00FF4CEE007CFFEC4E5E1D
-S32100027F004E7551FC4E560000202E000823C0000287604E5E4E7551FC4E56000027
-S32100027F1C2F0291C86008B1FC000000086C082008E180EB80600C2008E180E180DC
-S32100027F380680FFF9000024390002B438222E0008D082B28065000092B1FC0000DC
-S32100027F5400086C16227C000100002208E181EB81B1FC000000086C20601A227C8F
-S32100027F70000100002208E181E1810681FFF90000B1FC000000086C04327C20008C
-S32100027F8CD2825389202E0008D289B0816246B1FC000000086C16227C0001000041
-S32100027FA82208E181EB81B1FC000000086C20601A227C000100002208E181E18175
-S32100027FC40681FFF90000B1FC000000086C04327C2000D4815389D4892002600C0B
-S32100027FE052887027B0886E00FF3A7000242EFFFC4E5E4E754E5600002F0291C8D3
-S32100027FFC6008B1FC000000086C082008E180EB80600C2008E180E1800680FFF908
-S32100028018000024390002B438222E0008D082B280656CB1FC000000086C16227C77
-S32100028034000100002208E181EB81B1FC000000086C20601A227C000100002208AB
-S32100028050E181E1810681FFF90000B1FC000000086C04327C2000D2825389202E58
-S3210002806C0008D289B0816222B1FC000000086C0A2008E180EB80D082601C2008C3
-S32100028088E180E1800680FFF90000D082600C52887027B0886E00FF607000242E9E
-S321000280A4FFFC4E5E4E7551FC4E56FFEC48D7007C282E00082C2E000C91C84A86EA
-S321000280C067000142720060080C81000000086C082001E180EB80600C2001E18034
-S321000280DCE1800680FFF9000022790002B438D0892609B88065460C810000000818
-S321000280F86C162401E182EB822A3C000100000C81000000086C20601A2401E18263
-S32100028114E1820682FFF900002A3C000100000C81000000086C047BFC2000D4830A
-S321000281305385D485B882630A52817027B0816E88601C0C81000000086C14200110
-S3210002814CE180EB80D6809883DC84B1C66C0000AA60182001E180E1800680FFF90C
-S321000281680000D6809883DC84B1C66C0000900C81000000086C182401E182EB82A1
-S32100028184E282706033802A000C81000000086C3E601C2401E182E1820682FFF9A0
-S321000281A00000E282706033802A000C81000000086C202001E180EB80E280363CC8
-S321000281BC00D0243C0001000033830A000C81000000086C2A60242001E180E1801C
-S321000281D80680FFF90000E280363C00D0243C0001000033830A000C8100000008AB
-S321000281F46C0475FC2000D1C25281B1C66D00FF744CEE007CFFEC4E5E4E7551FC4C
-S321000282104E5600002F032F02202E00082400E1820C80000000086C1EEB82E28277
-S3210002822C722020790002B43831812A002400E1820C80000000086C3A6022E18293
-S321000282480682FFF90000E282722020790002B43831812A002400E1820C80000026
-S3210002826400086C16EB82E282323C00D031812A000C80000000086C34601AE18270
-S321000282800682FFF90000E282323C00D031812A000C80000000086C182400E1823D
-S3210002829CEB82E282727031812A000C80000000086C38601C2400E182E182068209
-S321000282B8FFF90000E282727031812A000C80000000086C1A2200E181EB81E2811B
-S321000282D4343C008043F01A003611C4834A4267AC601E2200E181E1810681FFF939
-S321000282F00000E281343C008043F01A003611C4834A42678C2400E18251806C0EEB
-S3210002830CEB82E282303C00FF31802A006012E1820682FFF90000E282303C00FF12
-S3210002832831802A004CEE000CFFF84E5E4E7551FC4E56FFEC48D7007C282E0008D5
-S321000283442C2E000C91C84A866700013E720060080C81000000086C082001E1807B
-S32100028360EB80600C2001E180E1800680FFF9000022790002B438D0892609B88078
-S3210002837C65460C81000000086C162401E182EB822A3C000100000C81000000082A
-S321000283986C20601A2401E182E1820682FFF900002A3C000100000C810000000854
-S321000283B46C047BFC2000D4835385D485B882630A52817027B0816E88601C0C81D5
-S321000283D0000000086C142001E180EB80D6809883DC84B1C66C0000A66018200121
-S321000283ECE180E1800680FFF90000D6809883DC84B1C66C00008C0C810000000858
-S321000284086C182401E182EB82E282706033802A000C81000000086C3C601C2401E8
-S32100028424E182E1820682FFF90000E282706033802A000C81000000086C1E240199
-S32100028440E182EB82E282700133802A00243C000100000C81000000086C2860228A
-S3210002845C2401E182E1820682FFF90000E282700133802A00243C000100000C81F1
-S32100028478000000086C0475FC2000D1C25281B1C66D00FF784CEE007CFFEC4E5EC9
-S321000284944E7551FC4E56FFE848D7047C2A2E0008262E000C246E00107C004A83DF
-S321000284B066062003600001082F032F054EBAFBEE7400508F60080C820000000808
-S321000284CC6C082002E180EB80600C2002E180E1800680FFF9000028390002B4380D
-S321000284E8D084BA8065460C82000000086C16207C000100002202E181EB810C8202
-S32100028504000000086C20601A207C000100002202E181E1810681FFF900000C82B3
-S32100028520000000086C04307C2000D2845388D288BA81630A52827027B0826E8A2B
-S3210002853C601C0C82000000086C1420052202E181EB81D8819084D680BC836C48BC
-S32100028558601820052202E181E1810681FFF90000D8819084D680BC836C2E4A8A8B
-S3210002857467084878002E4E92588F2F024EBAFC8E223C000100000C820000000807
-S32100028590588F6C0473FC2000DC815282BC836DD24A8A670E4878000A4E9248787F
-S321000285AC000D4E92508F2F032F054EBAFD802006508F4CEE047CFFE84E5E4E75DF
-S321000285C84E560000206E000830BC004030AE000E707030803210303C0080C0813E
-S321000285E44A4067F030BC00FF4E5E4E754E56FFE048D71C1C242E0010286E001C4A
-S32100028600246E000CA34341EEFFF8780010FC000810FC007C10FC002F10FC002D24
-S3210002861C10BC005C4AAE0014266E000867102F0C2F022F2E00084EBAFE644FEF7A
-S32100028638000C2F022F2E00084EBAFA6A508F4A826F4E30122F002F0B4EBAFF7680
-S321000286543012B053508F663C55824A5B4A5A4A8C672E0C84000010006624102E49
-S32100028670FFF8A1442F004E9441EEFFF8103038002F004E9452830C8300000005E1
-S3210002868C508F6602A34352844A826EB24A8C670A102EFFF82F004E94588F2F0236
-S321000286A82F2E00084EBAFC8A4AAE0018508F6706266E00184E93200A4CEE1C1C36
-S321000286C4FFE090AE000C4E5E4E7551FC4E560000202E000823C00002B4384E5E36
-S321000286E04E7551FC4E5600004E5E4E754E56000041F910000000D1FC000086040E
-S321000286FC739002810000000120014E5E4E7551FC4E56000041F910000000D1FC3B
-S321000287180000860412107004C2804A0167EA116E000B00084E5E4E754E5600009A
-S3210002873443F9100000002049D1FC0000860412107001C2804A0167E8D3FC0000D7
-S30D00028750860C71114E5E4E7596
-S5050000171FC4
-S70500000400F6
diff --git a/BaS_gcc/flash_scripts/run_m548x_dbug.bdm b/BaS_gcc/flash_scripts/run_m548x_dbug.bdm
deleted file mode 100755
index f0eb3c1..0000000
--- a/BaS_gcc/flash_scripts/run_m548x_dbug.bdm
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/usr/local/bin/bdmctrl -D2 -v9 -d9
-#
-# firebee board initialization for bdmctrl
-#
-open $1
-reset
-sleep 1
-
-wait
-
-# set VBR
-write-ctrl 0x0801 0x00000000
-dump-register VBR
-
-# Turn on MBAR at 0x1000_0000
-write-ctrl 0x0C0F 0x10000000
-dump-register MBAR
-
-# Turn on RAMBAR0 at address 20000000
-write-ctrl 0x0C04 0x20000021
-
-# Turn on RAMBAR1 at address 20001000
-write-ctrl 0x0C05 0x20001021
-
-# Init CS0 (BootFLASH @ ff80_0000 - ff8F_FFFF 8Mbytes)
-write 0x10000500 0xff800000 4
-write 0x10000508 0x00041180 4
-write 0x10000504 0x003F0001 4
-wait
-
-# SDRAM Initialization @ 0000_0000 - 03FF_FFFF 64 MBytes
-write 0x10000004 0x000002AA 4 # SDRAMDS configuration
-write 0x10000020 0x00000019 4 # SDRAM CS0 configuration (64Mbytes 0000_0000 - 03FF_FFFF)
-write 0x10000024 0x00000000 4 # SDRAM CS1 configuration
-write 0x10000028 0x00000000 4 # SDRAM CS2 configuration
-write 0x1000002C 0x00000000 4 # SDRAM CS3 configuration
-
-write 0x10000108 0x73711630 4 # SDCFG1
-write 0x1000010C 0x46370000 4 # SDCFG2
-
-write 0x10000104 0xE10B0002 4 # SDCR + IPALL
-write 0x10000100 0x40010000 4 # SDMR (write to LEMR)
-write 0x10000100 0x058D0000 4 # SDMR (write to LMR)
-sleep 100
-write 0x10000104 0xE10D0002 4 # SDCR + IPALL
-write 0x10000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0x10000104 0xE10D0004 4 # SDCR + IREF (first refresh)
-write 0x10000100 0x018D0000 4 # SDMR (write to LMR)
-write 0x10000104 0x710D0F00 4 # SDCR (lock SDMR and enable refresh)
-sleep 100
-
-load m548xlite_dbug_ram.elf
-
-execute
-wait
diff --git a/BaS_gcc/fs/cc932.c b/BaS_gcc/fs/cc932.c
deleted file mode 100644
index 90eca62..0000000
--- a/BaS_gcc/fs/cc932.c
+++ /dev/null
@@ -1,3798 +0,0 @@
-/*------------------------------------------------------------------------*/
-/* Unicode - OEM code bidirectional converter (C)ChaN, 2009 */
-/* */
-/* CP932 (Japanese Shift-JIS) */
-/*------------------------------------------------------------------------*/
-
-#include "ff.h"
-
-#define _TINY_TABLE 0
-
-#if !_USE_LFN || _CODE_PAGE != 932
-#error This file is not needed in current configuration. Remove from the project.
-#endif
-
-
-static
-const WCHAR uni2sjis[] = {
- /* Unicode - Sjis, Unicode - Sjis, Unicode - Sjis, Unicode - Sjis, */
- 0x00A7, 0x8198, 0x00A8, 0x814E, 0x00B0, 0x818B, 0x00B1, 0x817D,
- 0x00B4, 0x814C, 0x00B6, 0x81F7, 0x00D7, 0x817E, 0x00F7, 0x8180,
- 0x0391, 0x839F, 0x0392, 0x83A0, 0x0393, 0x83A1, 0x0394, 0x83A2,
- 0x0395, 0x83A3, 0x0396, 0x83A4, 0x0397, 0x83A5, 0x0398, 0x83A6,
- 0x0399, 0x83A7, 0x039A, 0x83A8, 0x039B, 0x83A9, 0x039C, 0x83AA,
- 0x039D, 0x83AB, 0x039E, 0x83AC, 0x039F, 0x83AD, 0x03A0, 0x83AE,
- 0x03A1, 0x83AF, 0x03A3, 0x83B0, 0x03A4, 0x83B1, 0x03A5, 0x83B2,
- 0x03A6, 0x83B3, 0x03A7, 0x83B4, 0x03A8, 0x83B5, 0x03A9, 0x83B6,
- 0x03B1, 0x83BF, 0x03B2, 0x83C0, 0x03B3, 0x83C1, 0x03B4, 0x83C2,
- 0x03B5, 0x83C3, 0x03B6, 0x83C4, 0x03B7, 0x83C5, 0x03B8, 0x83C6,
- 0x03B9, 0x83C7, 0x03BA, 0x83C8, 0x03BB, 0x83C9, 0x03BC, 0x83CA,
- 0x03BD, 0x83CB, 0x03BE, 0x83CC, 0x03BF, 0x83CD, 0x03C0, 0x83CE,
- 0x03C1, 0x83CF, 0x03C3, 0x83D0, 0x03C4, 0x83D1, 0x03C5, 0x83D2,
- 0x03C6, 0x83D3, 0x03C7, 0x83D4, 0x03C8, 0x83D5, 0x03C9, 0x83D6,
- 0x0401, 0x8446, 0x0410, 0x8440, 0x0411, 0x8441, 0x0412, 0x8442,
- 0x0413, 0x8443, 0x0414, 0x8444, 0x0415, 0x8445, 0x0416, 0x8447,
- 0x0417, 0x8448, 0x0418, 0x8449, 0x0419, 0x844A, 0x041A, 0x844B,
- 0x041B, 0x844C, 0x041C, 0x844D, 0x041D, 0x844E, 0x041E, 0x844F,
- 0x041F, 0x8450, 0x0420, 0x8451, 0x0421, 0x8452, 0x0422, 0x8453,
- 0x0423, 0x8454, 0x0424, 0x8455, 0x0425, 0x8456, 0x0426, 0x8457,
- 0x0427, 0x8458, 0x0428, 0x8459, 0x0429, 0x845A, 0x042A, 0x845B,
- 0x042B, 0x845C, 0x042C, 0x845D, 0x042D, 0x845E, 0x042E, 0x845F,
- 0x042F, 0x8460, 0x0430, 0x8470, 0x0431, 0x8471, 0x0432, 0x8472,
- 0x0433, 0x8473, 0x0434, 0x8474, 0x0435, 0x8475, 0x0436, 0x8477,
- 0x0437, 0x8478, 0x0438, 0x8479, 0x0439, 0x847A, 0x043A, 0x847B,
- 0x043B, 0x847C, 0x043C, 0x847D, 0x043D, 0x847E, 0x043E, 0x8480,
- 0x043F, 0x8481, 0x0440, 0x8482, 0x0441, 0x8483, 0x0442, 0x8484,
- 0x0443, 0x8485, 0x0444, 0x8486, 0x0445, 0x8487, 0x0446, 0x8488,
- 0x0447, 0x8489, 0x0448, 0x848A, 0x0449, 0x848B, 0x044A, 0x848C,
- 0x044B, 0x848D, 0x044C, 0x848E, 0x044D, 0x848F, 0x044E, 0x8490,
- 0x044F, 0x8491, 0x0451, 0x8476, 0x2010, 0x815D, 0x2015, 0x815C,
- 0x2018, 0x8165, 0x2019, 0x8166, 0x201C, 0x8167, 0x201D, 0x8168,
- 0x2020, 0x81F5, 0x2021, 0x81F6, 0x2025, 0x8164, 0x2026, 0x8163,
- 0x2030, 0x81F1, 0x2032, 0x818C, 0x2033, 0x818D, 0x203B, 0x81A6,
- 0x2103, 0x818E, 0x2116, 0x8782, 0x2121, 0x8784, 0x212B, 0x81F0,
- 0x2160, 0x8754, 0x2161, 0x8755, 0x2162, 0x8756, 0x2163, 0x8757,
- 0x2164, 0x8758, 0x2165, 0x8759, 0x2166, 0x875A, 0x2167, 0x875B,
- 0x2168, 0x875C, 0x2169, 0x875D, 0x2170, 0xFA40, 0x2171, 0xFA41,
- 0x2172, 0xFA42, 0x2173, 0xFA43, 0x2174, 0xFA44, 0x2175, 0xFA45,
- 0x2176, 0xFA46, 0x2177, 0xFA47, 0x2178, 0xFA48, 0x2179, 0xFA49,
- 0x2190, 0x81A9, 0x2191, 0x81AA, 0x2192, 0x81A8, 0x2193, 0x81AB,
- 0x21D2, 0x81CB, 0x21D4, 0x81CC, 0x2200, 0x81CD, 0x2202, 0x81DD,
- 0x2203, 0x81CE, 0x2207, 0x81DE, 0x2208, 0x81B8, 0x220B, 0x81B9,
- 0x2211, 0x8794, 0x221A, 0x81E3, 0x221D, 0x81E5, 0x221E, 0x8187,
- 0x221F, 0x8798, 0x2220, 0x81DA, 0x2225, 0x8161, 0x2227, 0x81C8,
- 0x2228, 0x81C9, 0x2229, 0x81BF, 0x222A, 0x81BE, 0x222B, 0x81E7,
- 0x222C, 0x81E8, 0x222E, 0x8793, 0x2234, 0x8188, 0x2235, 0x81E6,
- 0x223D, 0x81E4, 0x2252, 0x81E0, 0x2260, 0x8182, 0x2261, 0x81DF,
- 0x2266, 0x8185, 0x2267, 0x8186, 0x226A, 0x81E1, 0x226B, 0x81E2,
- 0x2282, 0x81BC, 0x2283, 0x81BD, 0x2286, 0x81BA, 0x2287, 0x81BB,
- 0x22A5, 0x81DB, 0x22BF, 0x8799, 0x2312, 0x81DC, 0x2460, 0x8740,
- 0x2461, 0x8741, 0x2462, 0x8742, 0x2463, 0x8743, 0x2464, 0x8744,
- 0x2465, 0x8745, 0x2466, 0x8746, 0x2467, 0x8747, 0x2468, 0x8748,
- 0x2469, 0x8749, 0x246A, 0x874A, 0x246B, 0x874B, 0x246C, 0x874C,
- 0x246D, 0x874D, 0x246E, 0x874E, 0x246F, 0x874F, 0x2470, 0x8750,
- 0x2471, 0x8751, 0x2472, 0x8752, 0x2473, 0x8753, 0x2500, 0x849F,
- 0x2501, 0x84AA, 0x2502, 0x84A0, 0x2503, 0x84AB, 0x250C, 0x84A1,
- 0x250F, 0x84AC, 0x2510, 0x84A2, 0x2513, 0x84AD, 0x2514, 0x84A4,
- 0x2517, 0x84AF, 0x2518, 0x84A3, 0x251B, 0x84AE, 0x251C, 0x84A5,
- 0x251D, 0x84BA, 0x2520, 0x84B5, 0x2523, 0x84B0, 0x2524, 0x84A7,
- 0x2525, 0x84BC, 0x2528, 0x84B7, 0x252B, 0x84B2, 0x252C, 0x84A6,
- 0x252F, 0x84B6, 0x2530, 0x84BB, 0x2533, 0x84B1, 0x2534, 0x84A8,
- 0x2537, 0x84B8, 0x2538, 0x84BD, 0x253B, 0x84B3, 0x253C, 0x84A9,
- 0x253F, 0x84B9, 0x2542, 0x84BE, 0x254B, 0x84B4, 0x25A0, 0x81A1,
- 0x25A1, 0x81A0, 0x25B2, 0x81A3, 0x25B3, 0x81A2, 0x25BC, 0x81A5,
- 0x25BD, 0x81A4, 0x25C6, 0x819F, 0x25C7, 0x819E, 0x25CB, 0x819B,
- 0x25CE, 0x819D, 0x25CF, 0x819C, 0x25EF, 0x81FC, 0x2605, 0x819A,
- 0x2606, 0x8199, 0x2640, 0x818A, 0x2642, 0x8189, 0x266A, 0x81F4,
- 0x266D, 0x81F3, 0x266F, 0x81F2, 0x3000, 0x8140, 0x3001, 0x8141,
- 0x3002, 0x8142, 0x3003, 0x8156, 0x3005, 0x8158, 0x3006, 0x8159,
- 0x3007, 0x815A, 0x3008, 0x8171, 0x3009, 0x8172, 0x300A, 0x8173,
- 0x300B, 0x8174, 0x300C, 0x8175, 0x300D, 0x8176, 0x300E, 0x8177,
- 0x300F, 0x8178, 0x3010, 0x8179, 0x3011, 0x817A, 0x3012, 0x81A7,
- 0x3013, 0x81AC, 0x3014, 0x816B, 0x3015, 0x816C, 0x301D, 0x8780,
- 0x301F, 0x8781, 0x3041, 0x829F, 0x3042, 0x82A0, 0x3043, 0x82A1,
- 0x3044, 0x82A2, 0x3045, 0x82A3, 0x3046, 0x82A4, 0x3047, 0x82A5,
- 0x3048, 0x82A6, 0x3049, 0x82A7, 0x304A, 0x82A8, 0x304B, 0x82A9,
- 0x304C, 0x82AA, 0x304D, 0x82AB, 0x304E, 0x82AC, 0x304F, 0x82AD,
- 0x3050, 0x82AE, 0x3051, 0x82AF, 0x3052, 0x82B0, 0x3053, 0x82B1,
- 0x3054, 0x82B2, 0x3055, 0x82B3, 0x3056, 0x82B4, 0x3057, 0x82B5,
- 0x3058, 0x82B6, 0x3059, 0x82B7, 0x305A, 0x82B8, 0x305B, 0x82B9,
- 0x305C, 0x82BA, 0x305D, 0x82BB, 0x305E, 0x82BC, 0x305F, 0x82BD,
- 0x3060, 0x82BE, 0x3061, 0x82BF, 0x3062, 0x82C0, 0x3063, 0x82C1,
- 0x3064, 0x82C2, 0x3065, 0x82C3, 0x3066, 0x82C4, 0x3067, 0x82C5,
- 0x3068, 0x82C6, 0x3069, 0x82C7, 0x306A, 0x82C8, 0x306B, 0x82C9,
- 0x306C, 0x82CA, 0x306D, 0x82CB, 0x306E, 0x82CC, 0x306F, 0x82CD,
- 0x3070, 0x82CE, 0x3071, 0x82CF, 0x3072, 0x82D0, 0x3073, 0x82D1,
- 0x3074, 0x82D2, 0x3075, 0x82D3, 0x3076, 0x82D4, 0x3077, 0x82D5,
- 0x3078, 0x82D6, 0x3079, 0x82D7, 0x307A, 0x82D8, 0x307B, 0x82D9,
- 0x307C, 0x82DA, 0x307D, 0x82DB, 0x307E, 0x82DC, 0x307F, 0x82DD,
- 0x3080, 0x82DE, 0x3081, 0x82DF, 0x3082, 0x82E0, 0x3083, 0x82E1,
- 0x3084, 0x82E2, 0x3085, 0x82E3, 0x3086, 0x82E4, 0x3087, 0x82E5,
- 0x3088, 0x82E6, 0x3089, 0x82E7, 0x308A, 0x82E8, 0x308B, 0x82E9,
- 0x308C, 0x82EA, 0x308D, 0x82EB, 0x308E, 0x82EC, 0x308F, 0x82ED,
- 0x3090, 0x82EE, 0x3091, 0x82EF, 0x3092, 0x82F0, 0x3093, 0x82F1,
- 0x309B, 0x814A, 0x309C, 0x814B, 0x309D, 0x8154,
- 0x309E, 0x8155, 0x30A1, 0x8340, 0x30A2, 0x8341, 0x30A3, 0x8342,
- 0x30A4, 0x8343, 0x30A5, 0x8344, 0x30A6, 0x8345, 0x30A7, 0x8346,
- 0x30A8, 0x8347, 0x30A9, 0x8348, 0x30AA, 0x8349, 0x30AB, 0x834A,
- 0x30AC, 0x834B, 0x30AD, 0x834C, 0x30AE, 0x834D, 0x30AF, 0x834E,
- 0x30B0, 0x834F, 0x30B1, 0x8350, 0x30B2, 0x8351, 0x30B3, 0x8352,
- 0x30B4, 0x8353, 0x30B5, 0x8354, 0x30B6, 0x8355, 0x30B7, 0x8356,
- 0x30B8, 0x8357, 0x30B9, 0x8358, 0x30BA, 0x8359, 0x30BB, 0x835A,
- 0x30BC, 0x835B, 0x30BD, 0x835C, 0x30BE, 0x835D, 0x30BF, 0x835E,
- 0x30C0, 0x835F, 0x30C1, 0x8360, 0x30C2, 0x8361, 0x30C3, 0x8362,
- 0x30C4, 0x8363, 0x30C5, 0x8364, 0x30C6, 0x8365, 0x30C7, 0x8366,
- 0x30C8, 0x8367, 0x30C9, 0x8368, 0x30CA, 0x8369, 0x30CB, 0x836A,
- 0x30CC, 0x836B, 0x30CD, 0x836C, 0x30CE, 0x836D, 0x30CF, 0x836E,
- 0x30D0, 0x836F, 0x30D1, 0x8370, 0x30D2, 0x8371, 0x30D3, 0x8372,
- 0x30D4, 0x8373, 0x30D5, 0x8374, 0x30D6, 0x8375, 0x30D7, 0x8376,
- 0x30D8, 0x8377, 0x30D9, 0x8378, 0x30DA, 0x8379, 0x30DB, 0x837A,
- 0x30DC, 0x837B, 0x30DD, 0x837C, 0x30DE, 0x837D, 0x30DF, 0x837E,
- 0x30E0, 0x8380, 0x30E1, 0x8381, 0x30E2, 0x8382, 0x30E3, 0x8383,
- 0x30E4, 0x8384, 0x30E5, 0x8385, 0x30E6, 0x8386, 0x30E7, 0x8387,
- 0x30E8, 0x8388, 0x30E9, 0x8389, 0x30EA, 0x838A, 0x30EB, 0x838B,
- 0x30EC, 0x838C, 0x30ED, 0x838D, 0x30EE, 0x838E, 0x30EF, 0x838F,
- 0x30F0, 0x8390, 0x30F1, 0x8391, 0x30F2, 0x8392, 0x30F3, 0x8393,
- 0x30F4, 0x8394, 0x30F5, 0x8395, 0x30F6, 0x8396, 0x30FB, 0x8145,
- 0x30FC, 0x815B, 0x30FD, 0x8152, 0x30FE, 0x8153, 0x3231, 0x878A,
- 0x3232, 0x878B, 0x3239, 0x878C, 0x32A4, 0x8785, 0x32A5, 0x8786,
- 0x32A6, 0x8787, 0x32A7, 0x8788, 0x32A8, 0x8789, 0x3303, 0x8765,
- 0x330D, 0x8769, 0x3314, 0x8760, 0x3318, 0x8763, 0x3322, 0x8761,
- 0x3323, 0x876B, 0x3326, 0x876A, 0x3327, 0x8764, 0x332B, 0x876C,
- 0x3336, 0x8766, 0x333B, 0x876E, 0x3349, 0x875F, 0x334A, 0x876D,
- 0x334D, 0x8762, 0x3351, 0x8767, 0x3357, 0x8768, 0x337B, 0x877E,
- 0x337C, 0x878F, 0x337D, 0x878E, 0x337E, 0x878D, 0x338E, 0x8772,
- 0x338F, 0x8773, 0x339C, 0x876F, 0x339D, 0x8770, 0x339E, 0x8771,
- 0x33A1, 0x8775, 0x33C4, 0x8774, 0x33CD, 0x8783, 0x4E00, 0x88EA,
- 0x4E01, 0x929A, 0x4E03, 0x8EB5, 0x4E07, 0x969C, 0x4E08, 0x8FE4,
- 0x4E09, 0x8E4F, 0x4E0A, 0x8FE3, 0x4E0B, 0x89BA, 0x4E0D, 0x9573,
- 0x4E0E, 0x975E, 0x4E10, 0x98A0, 0x4E11, 0x894E, 0x4E14, 0x8A8E,
- 0x4E15, 0x98A1, 0x4E16, 0x90A2, 0x4E17, 0x99C0, 0x4E18, 0x8B75,
- 0x4E19, 0x95B8, 0x4E1E, 0x8FE5, 0x4E21, 0x97BC, 0x4E26, 0x95C0,
- 0x4E28, 0xFA68, 0x4E2A, 0x98A2, 0x4E2D, 0x9286, 0x4E31, 0x98A3,
- 0x4E32, 0x8BF8, 0x4E36, 0x98A4, 0x4E38, 0x8ADB, 0x4E39, 0x924F,
- 0x4E3B, 0x8EE5, 0x4E3C, 0x98A5, 0x4E3F, 0x98A6, 0x4E42, 0x98A7,
- 0x4E43, 0x9454, 0x4E45, 0x8B76, 0x4E4B, 0x9456, 0x4E4D, 0x93E1,
- 0x4E4E, 0x8CC1, 0x4E4F, 0x9652, 0x4E55, 0xE568, 0x4E56, 0x98A8,
- 0x4E57, 0x8FE6, 0x4E58, 0x98A9, 0x4E59, 0x89B3, 0x4E5D, 0x8BE3,
- 0x4E5E, 0x8CEE, 0x4E5F, 0x96E7, 0x4E62, 0x9BA4, 0x4E71, 0x9790,
- 0x4E73, 0x93FB, 0x4E7E, 0x8AA3, 0x4E80, 0x8B54, 0x4E82, 0x98AA,
- 0x4E85, 0x98AB, 0x4E86, 0x97B9, 0x4E88, 0x975C, 0x4E89, 0x9188,
- 0x4E8A, 0x98AD, 0x4E8B, 0x8E96, 0x4E8C, 0x93F1, 0x4E8E, 0x98B0,
- 0x4E91, 0x895D, 0x4E92, 0x8CDD, 0x4E94, 0x8CDC, 0x4E95, 0x88E4,
- 0x4E98, 0x986A, 0x4E99, 0x9869, 0x4E9B, 0x8DB1, 0x4E9C, 0x889F,
- 0x4E9E, 0x98B1, 0x4E9F, 0x98B2, 0x4EA0, 0x98B3, 0x4EA1, 0x9653,
- 0x4EA2, 0x98B4, 0x4EA4, 0x8CF0, 0x4EA5, 0x88E5, 0x4EA6, 0x9692,
- 0x4EA8, 0x8B9C, 0x4EAB, 0x8B9D, 0x4EAC, 0x8B9E, 0x4EAD, 0x92E0,
- 0x4EAE, 0x97BA, 0x4EB0, 0x98B5, 0x4EB3, 0x98B6, 0x4EB6, 0x98B7,
- 0x4EBA, 0x906C, 0x4EC0, 0x8F59, 0x4EC1, 0x906D, 0x4EC2, 0x98BC,
- 0x4EC4, 0x98BA, 0x4EC6, 0x98BB, 0x4EC7, 0x8B77, 0x4ECA, 0x8DA1,
- 0x4ECB, 0x89EE, 0x4ECD, 0x98B9, 0x4ECE, 0x98B8, 0x4ECF, 0x95A7,
- 0x4ED4, 0x8E65, 0x4ED5, 0x8E64, 0x4ED6, 0x91BC, 0x4ED7, 0x98BD,
- 0x4ED8, 0x9574, 0x4ED9, 0x90E5, 0x4EDD, 0x8157, 0x4EDE, 0x98BE,
- 0x4EDF, 0x98C0, 0x4EE1, 0xFA69, 0x4EE3, 0x91E3, 0x4EE4, 0x97DF,
- 0x4EE5, 0x88C8, 0x4EED, 0x98BF, 0x4EEE, 0x89BC, 0x4EF0, 0x8BC2,
- 0x4EF2, 0x9287, 0x4EF6, 0x8C8F, 0x4EF7, 0x98C1, 0x4EFB, 0x9443,
- 0x4EFC, 0xFA6A, 0x4F00, 0xFA6B, 0x4F01, 0x8AE9, 0x4F03, 0xFA6C,
- 0x4F09, 0x98C2, 0x4F0A, 0x88C9, 0x4F0D, 0x8CDE, 0x4F0E, 0x8AEA,
- 0x4F0F, 0x959A, 0x4F10, 0x94B0, 0x4F11, 0x8B78, 0x4F1A, 0x89EF,
- 0x4F1C, 0x98E5, 0x4F1D, 0x9360, 0x4F2F, 0x948C, 0x4F30, 0x98C4,
- 0x4F34, 0x94BA, 0x4F36, 0x97E0, 0x4F38, 0x904C, 0x4F39, 0xFA6D,
- 0x4F3A, 0x8E66, 0x4F3C, 0x8E97, 0x4F3D, 0x89BE, 0x4F43, 0x92CF,
- 0x4F46, 0x9241, 0x4F47, 0x98C8, 0x4F4D, 0x88CA, 0x4F4E, 0x92E1,
- 0x4F4F, 0x8F5A, 0x4F50, 0x8DB2, 0x4F51, 0x9743, 0x4F53, 0x91CC,
- 0x4F55, 0x89BD, 0x4F56, 0xFA6E, 0x4F57, 0x98C7, 0x4F59, 0x975D,
- 0x4F5A, 0x98C3, 0x4F5B, 0x98C5, 0x4F5C, 0x8DEC, 0x4F5D, 0x98C6,
- 0x4F5E, 0x9B43, 0x4F69, 0x98CE, 0x4F6F, 0x98D1, 0x4F70, 0x98CF,
- 0x4F73, 0x89C0, 0x4F75, 0x95B9, 0x4F76, 0x98C9, 0x4F7B, 0x98CD,
- 0x4F7C, 0x8CF1, 0x4F7F, 0x8E67, 0x4F83, 0x8AA4, 0x4F86, 0x98D2,
- 0x4F88, 0x98CA, 0x4F8A, 0xFA70, 0x4F8B, 0x97E1, 0x4F8D, 0x8E98,
- 0x4F8F, 0x98CB, 0x4F91, 0x98D0, 0x4F92, 0xFA6F, 0x4F94, 0xFA72,
- 0x4F96, 0x98D3, 0x4F98, 0x98CC, 0x4F9A, 0xFA71, 0x4F9B, 0x8B9F,
- 0x4F9D, 0x88CB, 0x4FA0, 0x8BA0, 0x4FA1, 0x89BF, 0x4FAB, 0x9B44,
- 0x4FAD, 0x9699, 0x4FAE, 0x958E, 0x4FAF, 0x8CF2, 0x4FB5, 0x904E,
- 0x4FB6, 0x97B5, 0x4FBF, 0x95D6, 0x4FC2, 0x8C57, 0x4FC3, 0x91A3,
- 0x4FC4, 0x89E2, 0x4FC9, 0xFA61, 0x4FCA, 0x8F72, 0x4FCD, 0xFA73,
- 0x4FCE, 0x98D7, 0x4FD0, 0x98DC, 0x4FD1, 0x98DA, 0x4FD4, 0x98D5,
- 0x4FD7, 0x91AD, 0x4FD8, 0x98D8, 0x4FDA, 0x98DB, 0x4FDB, 0x98D9,
- 0x4FDD, 0x95DB, 0x4FDF, 0x98D6, 0x4FE1, 0x904D, 0x4FE3, 0x9693,
- 0x4FE4, 0x98DD, 0x4FE5, 0x98DE, 0x4FEE, 0x8F43, 0x4FEF, 0x98EB,
- 0x4FF3, 0x946F, 0x4FF5, 0x9555, 0x4FF6, 0x98E6, 0x4FF8, 0x95EE,
- 0x4FFA, 0x89B4, 0x4FFE, 0x98EA, 0x4FFF, 0xFA76, 0x5005, 0x98E4,
- 0x5006, 0x98ED, 0x5009, 0x9171, 0x500B, 0x8CC2, 0x500D, 0x947B,
- 0x500F, 0xE0C5, 0x5011, 0x98EC, 0x5012, 0x937C, 0x5014, 0x98E1,
- 0x5016, 0x8CF4, 0x5019, 0x8CF3, 0x501A, 0x98DF, 0x501E, 0xFA77,
- 0x501F, 0x8ED8, 0x5021, 0x98E7, 0x5022, 0xFA75, 0x5023, 0x95ED,
- 0x5024, 0x926C, 0x5025, 0x98E3, 0x5026, 0x8C91, 0x5028, 0x98E0,
- 0x5029, 0x98E8, 0x502A, 0x98E2, 0x502B, 0x97CF, 0x502C, 0x98E9,
- 0x502D, 0x9860, 0x5036, 0x8BE4, 0x5039, 0x8C90, 0x5040, 0xFA74,
- 0x5042, 0xFA7A, 0x5043, 0x98EE, 0x5046, 0xFA78, 0x5047, 0x98EF,
- 0x5048, 0x98F3, 0x5049, 0x88CC, 0x504F, 0x95CE, 0x5050, 0x98F2,
- 0x5055, 0x98F1, 0x5056, 0x98F5, 0x505A, 0x98F4, 0x505C, 0x92E2,
- 0x5065, 0x8C92, 0x506C, 0x98F6, 0x5070, 0xFA79, 0x5072, 0x8EC3,
- 0x5074, 0x91A4, 0x5075, 0x92E3, 0x5076, 0x8BF4, 0x5078, 0x98F7,
- 0x507D, 0x8B55, 0x5080, 0x98F8, 0x5085, 0x98FA, 0x508D, 0x9654,
- 0x5091, 0x8C86, 0x5094, 0xFA7B, 0x5098, 0x8E50, 0x5099, 0x94F5,
- 0x509A, 0x98F9, 0x50AC, 0x8DC3, 0x50AD, 0x9762, 0x50B2, 0x98FC,
- 0x50B3, 0x9942, 0x50B4, 0x98FB, 0x50B5, 0x8DC2, 0x50B7, 0x8F9D,
- 0x50BE, 0x8C58, 0x50C2, 0x9943, 0x50C5, 0x8BCD, 0x50C9, 0x9940,
- 0x50CA, 0x9941, 0x50CD, 0x93AD, 0x50CF, 0x919C, 0x50D1, 0x8BA1,
- 0x50D5, 0x966C, 0x50D6, 0x9944, 0x50D8, 0xFA7D, 0x50DA, 0x97BB,
- 0x50DE, 0x9945, 0x50E3, 0x9948, 0x50E5, 0x9946, 0x50E7, 0x916D,
- 0x50ED, 0x9947, 0x50EE, 0x9949, 0x50F4, 0xFA7C, 0x50F5, 0x994B,
- 0x50F9, 0x994A, 0x50FB, 0x95C6, 0x5100, 0x8B56, 0x5101, 0x994D,
- 0x5102, 0x994E, 0x5104, 0x89AD, 0x5109, 0x994C, 0x5112, 0x8EF2,
- 0x5114, 0x9951, 0x5115, 0x9950, 0x5116, 0x994F, 0x5118, 0x98D4,
- 0x511A, 0x9952, 0x511F, 0x8F9E, 0x5121, 0x9953, 0x512A, 0x9744,
- 0x5132, 0x96D7, 0x5137, 0x9955, 0x513A, 0x9954, 0x513B, 0x9957,
- 0x513C, 0x9956, 0x513F, 0x9958, 0x5140, 0x9959, 0x5141, 0x88F2,
- 0x5143, 0x8CB3, 0x5144, 0x8C5A, 0x5145, 0x8F5B, 0x5146, 0x929B,
- 0x5147, 0x8BA2, 0x5148, 0x90E6, 0x5149, 0x8CF5, 0x514A, 0xFA7E,
- 0x514B, 0x8D8E, 0x514C, 0x995B, 0x514D, 0x96C6, 0x514E, 0x9365,
- 0x5150, 0x8E99, 0x5152, 0x995A, 0x5154, 0x995C, 0x515A, 0x937D,
- 0x515C, 0x8A95, 0x5162, 0x995D, 0x5164, 0xFA80, 0x5165, 0x93FC,
- 0x5168, 0x9153, 0x5169, 0x995F, 0x516A, 0x9960, 0x516B, 0x94AA,
- 0x516C, 0x8CF6, 0x516D, 0x985A, 0x516E, 0x9961, 0x5171, 0x8BA4,
- 0x5175, 0x95BA, 0x5176, 0x91B4, 0x5177, 0x8BEF, 0x5178, 0x9354,
- 0x517C, 0x8C93, 0x5180, 0x9962, 0x5182, 0x9963, 0x5185, 0x93E0,
- 0x5186, 0x897E, 0x5189, 0x9966, 0x518A, 0x8DFB, 0x518C, 0x9965,
- 0x518D, 0x8DC4, 0x518F, 0x9967, 0x5190, 0xE3EC, 0x5191, 0x9968,
- 0x5192, 0x9660, 0x5193, 0x9969, 0x5195, 0x996A, 0x5196, 0x996B,
- 0x5197, 0x8FE7, 0x5199, 0x8ECA, 0x519D, 0xFA81, 0x51A0, 0x8AA5,
- 0x51A2, 0x996E, 0x51A4, 0x996C, 0x51A5, 0x96BB, 0x51A6, 0x996D,
- 0x51A8, 0x9579, 0x51A9, 0x996F, 0x51AA, 0x9970, 0x51AB, 0x9971,
- 0x51AC, 0x937E, 0x51B0, 0x9975, 0x51B1, 0x9973, 0x51B2, 0x9974,
- 0x51B3, 0x9972, 0x51B4, 0x8DE1, 0x51B5, 0x9976, 0x51B6, 0x96E8,
- 0x51B7, 0x97E2, 0x51BD, 0x9977, 0x51BE, 0xFA82, 0x51C4, 0x90A6,
- 0x51C5, 0x9978, 0x51C6, 0x8F79, 0x51C9, 0x9979, 0x51CB, 0x929C,
- 0x51CC, 0x97BD, 0x51CD, 0x9380, 0x51D6, 0x99C3, 0x51DB, 0x997A,
- 0x51DC, 0xEAA3, 0x51DD, 0x8BC3, 0x51E0, 0x997B, 0x51E1, 0x967D,
- 0x51E6, 0x8F88, 0x51E7, 0x91FA, 0x51E9, 0x997D, 0x51EA, 0x93E2,
- 0x51EC, 0xFA83, 0x51ED, 0x997E, 0x51F0, 0x9980, 0x51F1, 0x8A4D,
- 0x51F5, 0x9981, 0x51F6, 0x8BA5, 0x51F8, 0x93CA, 0x51F9, 0x899A,
- 0x51FA, 0x8F6F, 0x51FD, 0x949F, 0x51FE, 0x9982, 0x5200, 0x9381,
- 0x5203, 0x906E, 0x5204, 0x9983, 0x5206, 0x95AA, 0x5207, 0x90D8,
- 0x5208, 0x8AA0, 0x520A, 0x8AA7, 0x520B, 0x9984, 0x520E, 0x9986,
- 0x5211, 0x8C59, 0x5214, 0x9985, 0x5215, 0xFA84, 0x5217, 0x97F1,
- 0x521D, 0x8F89, 0x5224, 0x94BB, 0x5225, 0x95CA, 0x5227, 0x9987,
- 0x5229, 0x9798, 0x522A, 0x9988, 0x522E, 0x9989, 0x5230, 0x939E,
- 0x5233, 0x998A, 0x5236, 0x90A7, 0x5237, 0x8DFC, 0x5238, 0x8C94,
- 0x5239, 0x998B, 0x523A, 0x8E68, 0x523B, 0x8D8F, 0x5243, 0x92E4,
- 0x5244, 0x998D, 0x5247, 0x91A5, 0x524A, 0x8DED, 0x524B, 0x998E,
- 0x524C, 0x998F, 0x524D, 0x914F, 0x524F, 0x998C, 0x5254, 0x9991,
- 0x5256, 0x9655, 0x525B, 0x8D84, 0x525E, 0x9990, 0x5263, 0x8C95,
- 0x5264, 0x8DDC, 0x5265, 0x948D, 0x5269, 0x9994, 0x526A, 0x9992,
- 0x526F, 0x959B, 0x5270, 0x8FE8, 0x5271, 0x999B, 0x5272, 0x8A84,
- 0x5273, 0x9995, 0x5274, 0x9993, 0x5275, 0x916E, 0x527D, 0x9997,
- 0x527F, 0x9996, 0x5283, 0x8A63, 0x5287, 0x8C80, 0x5288, 0x999C,
- 0x5289, 0x97AB, 0x528D, 0x9998, 0x5291, 0x999D, 0x5292, 0x999A,
- 0x5294, 0x9999, 0x529B, 0x97CD, 0x529C, 0xFA85, 0x529F, 0x8CF7,
- 0x52A0, 0x89C1, 0x52A3, 0x97F2, 0x52A6, 0xFA86, 0x52A9, 0x8F95,
- 0x52AA, 0x9377, 0x52AB, 0x8D85, 0x52AC, 0x99A0, 0x52AD, 0x99A1,
- 0x52AF, 0xFB77, 0x52B1, 0x97E3, 0x52B4, 0x984A, 0x52B5, 0x99A3,
- 0x52B9, 0x8CF8, 0x52BC, 0x99A2, 0x52BE, 0x8A4E, 0x52C0, 0xFA87,
- 0x52C1, 0x99A4, 0x52C3, 0x9675, 0x52C5, 0x92BA, 0x52C7, 0x9745,
- 0x52C9, 0x95D7, 0x52CD, 0x99A5, 0x52D2, 0xE8D3, 0x52D5, 0x93AE,
- 0x52D7, 0x99A6, 0x52D8, 0x8AA8, 0x52D9, 0x96B1, 0x52DB, 0xFA88,
- 0x52DD, 0x8F9F, 0x52DE, 0x99A7, 0x52DF, 0x95E5, 0x52E0, 0x99AB,
- 0x52E2, 0x90A8, 0x52E3, 0x99A8, 0x52E4, 0x8BCE, 0x52E6, 0x99A9,
- 0x52E7, 0x8AA9, 0x52F2, 0x8C4D, 0x52F3, 0x99AC, 0x52F5, 0x99AD,
- 0x52F8, 0x99AE, 0x52F9, 0x99AF, 0x52FA, 0x8ED9, 0x52FE, 0x8CF9,
- 0x52FF, 0x96DC, 0x5300, 0xFA89, 0x5301, 0x96E6, 0x5302, 0x93F5,
- 0x5305, 0x95EF, 0x5306, 0x99B0, 0x5307, 0xFA8A, 0x5308, 0x99B1,
- 0x530D, 0x99B3, 0x530F, 0x99B5, 0x5310, 0x99B4, 0x5315, 0x99B6,
- 0x5316, 0x89BB, 0x5317, 0x966B, 0x5319, 0x8DFA, 0x531A, 0x99B7,
- 0x531D, 0x9178, 0x5320, 0x8FA0, 0x5321, 0x8BA7, 0x5323, 0x99B8,
- 0x5324, 0xFA8B, 0x532A, 0x94D9, 0x532F, 0x99B9, 0x5331, 0x99BA,
- 0x5333, 0x99BB, 0x5338, 0x99BC, 0x5339, 0x9543, 0x533A, 0x8BE6,
- 0x533B, 0x88E3, 0x533F, 0x93BD, 0x5340, 0x99BD, 0x5341, 0x8F5C,
- 0x5343, 0x90E7, 0x5345, 0x99BF, 0x5346, 0x99BE, 0x5347, 0x8FA1,
- 0x5348, 0x8CDF, 0x5349, 0x99C1, 0x534A, 0x94BC, 0x534D, 0x99C2,
- 0x5351, 0x94DA, 0x5352, 0x91B2, 0x5353, 0x91EC, 0x5354, 0x8BA6,
- 0x5357, 0x93EC, 0x5358, 0x9250, 0x535A, 0x948E, 0x535C, 0x966D,
- 0x535E, 0x99C4, 0x5360, 0x90E8, 0x5366, 0x8C54, 0x5369, 0x99C5,
- 0x536E, 0x99C6, 0x536F, 0x894B, 0x5370, 0x88F3, 0x5371, 0x8AEB,
- 0x5372, 0xFA8C, 0x5373, 0x91A6, 0x5374, 0x8B70, 0x5375, 0x9791,
- 0x5377, 0x99C9, 0x5378, 0x89B5, 0x537B, 0x99C8, 0x537F, 0x8BA8,
- 0x5382, 0x99CA, 0x5384, 0x96EF, 0x5393, 0xFA8D, 0x5396, 0x99CB,
- 0x5398, 0x97D0, 0x539A, 0x8CFA, 0x539F, 0x8CB4, 0x53A0, 0x99CC,
- 0x53A5, 0x99CE, 0x53A6, 0x99CD, 0x53A8, 0x907E, 0x53A9, 0x8958,
- 0x53AD, 0x897D, 0x53AE, 0x99CF, 0x53B0, 0x99D0, 0x53B2, 0xFA8E,
- 0x53B3, 0x8CB5, 0x53B6, 0x99D1, 0x53BB, 0x8B8E, 0x53C2, 0x8E51,
- 0x53C3, 0x99D2, 0x53C8, 0x9694, 0x53C9, 0x8DB3, 0x53CA, 0x8B79,
- 0x53CB, 0x9746, 0x53CC, 0x916F, 0x53CD, 0x94BD, 0x53CE, 0x8EFB,
- 0x53D4, 0x8F66, 0x53D6, 0x8EE6, 0x53D7, 0x8EF3, 0x53D9, 0x8F96,
- 0x53DB, 0x94BE, 0x53DD, 0xFA8F, 0x53DF, 0x99D5, 0x53E1, 0x8962,
- 0x53E2, 0x9170, 0x53E3, 0x8CFB, 0x53E4, 0x8CC3, 0x53E5, 0x8BE5,
- 0x53E8, 0x99D9, 0x53E9, 0x9240, 0x53EA, 0x91FC, 0x53EB, 0x8BA9,
- 0x53EC, 0x8FA2, 0x53ED, 0x99DA, 0x53EE, 0x99D8, 0x53EF, 0x89C2,
- 0x53F0, 0x91E4, 0x53F1, 0x8EB6, 0x53F2, 0x8E6A, 0x53F3, 0x8945,
- 0x53F6, 0x8A90, 0x53F7, 0x8D86, 0x53F8, 0x8E69, 0x53FA, 0x99DB,
- 0x5401, 0x99DC, 0x5403, 0x8B68, 0x5404, 0x8A65, 0x5408, 0x8D87,
- 0x5409, 0x8B67, 0x540A, 0x92DD, 0x540B, 0x8944, 0x540C, 0x93AF,
- 0x540D, 0x96BC, 0x540E, 0x8D40, 0x540F, 0x9799, 0x5410, 0x9366,
- 0x5411, 0x8CFC, 0x541B, 0x8C4E, 0x541D, 0x99E5, 0x541F, 0x8BE1,
- 0x5420, 0x9669, 0x5426, 0x94DB, 0x5429, 0x99E4, 0x542B, 0x8ADC,
- 0x542C, 0x99DF, 0x542D, 0x99E0, 0x542E, 0x99E2, 0x5436, 0x99E3,
- 0x5438, 0x8B7A, 0x5439, 0x9081, 0x543B, 0x95AB, 0x543C, 0x99E1,
- 0x543D, 0x99DD, 0x543E, 0x8CE1, 0x5440, 0x99DE, 0x5442, 0x9843,
- 0x5446, 0x95F0, 0x5448, 0x92E6, 0x5449, 0x8CE0, 0x544A, 0x8D90,
- 0x544E, 0x99E6, 0x5451, 0x93DB, 0x545F, 0x99EA, 0x5468, 0x8EFC,
- 0x546A, 0x8EF4, 0x5470, 0x99ED, 0x5471, 0x99EB, 0x5473, 0x96A1,
- 0x5475, 0x99E8, 0x5476, 0x99F1, 0x5477, 0x99EC, 0x547B, 0x99EF,
- 0x547C, 0x8CC4, 0x547D, 0x96BD, 0x5480, 0x99F0, 0x5484, 0x99F2,
- 0x5486, 0x99F4, 0x548A, 0xFA92, 0x548B, 0x8DEE, 0x548C, 0x9861,
- 0x548E, 0x99E9, 0x548F, 0x99E7, 0x5490, 0x99F3, 0x5492, 0x99EE,
- 0x549C, 0xFA91, 0x54A2, 0x99F6, 0x54A4, 0x9A42, 0x54A5, 0x99F8,
- 0x54A8, 0x99FC, 0x54A9, 0xFA93, 0x54AB, 0x9A40, 0x54AC, 0x99F9,
- 0x54AF, 0x9A5D, 0x54B2, 0x8DE7, 0x54B3, 0x8A50, 0x54B8, 0x99F7,
- 0x54BC, 0x9A44, 0x54BD, 0x88F4, 0x54BE, 0x9A43, 0x54C0, 0x88A3,
- 0x54C1, 0x9569, 0x54C2, 0x9A41, 0x54C4, 0x99FA, 0x54C7, 0x99F5,
- 0x54C8, 0x99FB, 0x54C9, 0x8DC6, 0x54D8, 0x9A45, 0x54E1, 0x88F5,
- 0x54E2, 0x9A4E, 0x54E5, 0x9A46, 0x54E6, 0x9A47, 0x54E8, 0x8FA3,
- 0x54E9, 0x9689, 0x54ED, 0x9A4C, 0x54EE, 0x9A4B, 0x54F2, 0x934E,
- 0x54FA, 0x9A4D, 0x54FD, 0x9A4A, 0x54FF, 0xFA94, 0x5504, 0x8953,
- 0x5506, 0x8DB4, 0x5507, 0x904F, 0x550F, 0x9A48, 0x5510, 0x9382,
- 0x5514, 0x9A49, 0x5516, 0x88A0, 0x552E, 0x9A53, 0x552F, 0x9742,
- 0x5531, 0x8FA5, 0x5533, 0x9A59, 0x5538, 0x9A58, 0x5539, 0x9A4F,
- 0x553E, 0x91C1, 0x5540, 0x9A50, 0x5544, 0x91ED, 0x5545, 0x9A55,
- 0x5546, 0x8FA4, 0x554C, 0x9A52, 0x554F, 0x96E2, 0x5553, 0x8C5B,
- 0x5556, 0x9A56, 0x5557, 0x9A57, 0x555C, 0x9A54, 0x555D, 0x9A5A,
- 0x5563, 0x9A51, 0x557B, 0x9A60, 0x557C, 0x9A65, 0x557E, 0x9A61,
- 0x5580, 0x9A5C, 0x5583, 0x9A66, 0x5584, 0x9150, 0x5586, 0xFA95,
- 0x5587, 0x9A68, 0x5589, 0x8D41, 0x558A, 0x9A5E, 0x558B, 0x929D,
- 0x5598, 0x9A62, 0x5599, 0x9A5B, 0x559A, 0x8AAB, 0x559C, 0x8AEC,
- 0x559D, 0x8A85, 0x559E, 0x9A63, 0x559F, 0x9A5F, 0x55A7, 0x8C96,
- 0x55A8, 0x9A69, 0x55A9, 0x9A67, 0x55AA, 0x9172, 0x55AB, 0x8B69,
- 0x55AC, 0x8BAA, 0x55AE, 0x9A64, 0x55B0, 0x8BF2, 0x55B6, 0x8963,
- 0x55C4, 0x9A6D, 0x55C5, 0x9A6B, 0x55C7, 0x9AA5, 0x55D4, 0x9A70,
- 0x55DA, 0x9A6A, 0x55DC, 0x9A6E, 0x55DF, 0x9A6C, 0x55E3, 0x8E6B,
- 0x55E4, 0x9A6F, 0x55F7, 0x9A72, 0x55F9, 0x9A77, 0x55FD, 0x9A75,
- 0x55FE, 0x9A74, 0x5606, 0x9251, 0x5609, 0x89C3, 0x5614, 0x9A71,
- 0x5616, 0x9A73, 0x5617, 0x8FA6, 0x5618, 0x8952, 0x561B, 0x9A76,
- 0x5629, 0x89DC, 0x562F, 0x9A82, 0x5631, 0x8FFA, 0x5632, 0x9A7D,
- 0x5634, 0x9A7B, 0x5636, 0x9A7C, 0x5638, 0x9A7E, 0x5642, 0x895C,
- 0x564C, 0x9158, 0x564E, 0x9A78, 0x5650, 0x9A79, 0x565B, 0x8A9A,
- 0x5664, 0x9A81, 0x5668, 0x8AED, 0x566A, 0x9A84, 0x566B, 0x9A80,
- 0x566C, 0x9A83, 0x5674, 0x95AC, 0x5678, 0x93D3, 0x567A, 0x94B6,
- 0x5680, 0x9A86, 0x5686, 0x9A85, 0x5687, 0x8A64, 0x568A, 0x9A87,
- 0x568F, 0x9A8A, 0x5694, 0x9A89, 0x56A0, 0x9A88, 0x56A2, 0x9458,
- 0x56A5, 0x9A8B, 0x56AE, 0x9A8C, 0x56B4, 0x9A8E, 0x56B6, 0x9A8D,
- 0x56BC, 0x9A90, 0x56C0, 0x9A93, 0x56C1, 0x9A91, 0x56C2, 0x9A8F,
- 0x56C3, 0x9A92, 0x56C8, 0x9A94, 0x56CE, 0x9A95, 0x56D1, 0x9A96,
- 0x56D3, 0x9A97, 0x56D7, 0x9A98, 0x56D8, 0x9964, 0x56DA, 0x8EFA,
- 0x56DB, 0x8E6C, 0x56DE, 0x89F1, 0x56E0, 0x88F6, 0x56E3, 0x9263,
- 0x56EE, 0x9A99, 0x56F0, 0x8DA2, 0x56F2, 0x88CD, 0x56F3, 0x907D,
- 0x56F9, 0x9A9A, 0x56FA, 0x8CC5, 0x56FD, 0x8D91, 0x56FF, 0x9A9C,
- 0x5700, 0x9A9B, 0x5703, 0x95DE, 0x5704, 0x9A9D, 0x5708, 0x9A9F,
- 0x5709, 0x9A9E, 0x570B, 0x9AA0, 0x570D, 0x9AA1, 0x570F, 0x8C97,
- 0x5712, 0x8980, 0x5713, 0x9AA2, 0x5716, 0x9AA4, 0x5718, 0x9AA3,
- 0x571C, 0x9AA6, 0x571F, 0x9379, 0x5726, 0x9AA7, 0x5727, 0x88B3,
- 0x5728, 0x8DDD, 0x572D, 0x8C5C, 0x5730, 0x926E, 0x5737, 0x9AA8,
- 0x5738, 0x9AA9, 0x573B, 0x9AAB, 0x5740, 0x9AAC, 0x5742, 0x8DE2,
- 0x5747, 0x8BCF, 0x574A, 0x9656, 0x574E, 0x9AAA, 0x574F, 0x9AAD,
- 0x5750, 0x8DBF, 0x5751, 0x8D42, 0x5759, 0xFA96, 0x5761, 0x9AB1,
- 0x5764, 0x8DA3, 0x5765, 0xFA97, 0x5766, 0x9252, 0x5769, 0x9AAE,
- 0x576A, 0x92D8, 0x577F, 0x9AB2, 0x5782, 0x9082, 0x5788, 0x9AB0,
- 0x5789, 0x9AB3, 0x578B, 0x8C5E, 0x5793, 0x9AB4, 0x57A0, 0x9AB5,
- 0x57A2, 0x8D43, 0x57A3, 0x8A5F, 0x57A4, 0x9AB7, 0x57AA, 0x9AB8,
- 0x57AC, 0xFA98, 0x57B0, 0x9AB9, 0x57B3, 0x9AB6, 0x57C0, 0x9AAF,
- 0x57C3, 0x9ABA, 0x57C6, 0x9ABB, 0x57C7, 0xFA9A, 0x57C8, 0xFA99,
- 0x57CB, 0x9684, 0x57CE, 0x8FE9, 0x57D2, 0x9ABD, 0x57D3, 0x9ABE,
- 0x57D4, 0x9ABC, 0x57D6, 0x9AC0, 0x57DC, 0x9457, 0x57DF, 0x88E6,
- 0x57E0, 0x9575, 0x57E3, 0x9AC1, 0x57F4, 0x8FFB, 0x57F7, 0x8EB7,
- 0x57F9, 0x947C, 0x57FA, 0x8AEE, 0x57FC, 0x8DE9, 0x5800, 0x9678,
- 0x5802, 0x93B0, 0x5805, 0x8C98, 0x5806, 0x91CD, 0x580A, 0x9ABF,
- 0x580B, 0x9AC2, 0x5815, 0x91C2, 0x5819, 0x9AC3, 0x581D, 0x9AC4,
- 0x5821, 0x9AC6, 0x5824, 0x92E7, 0x582A, 0x8AAC, 0x582F, 0xEA9F,
- 0x5830, 0x8981, 0x5831, 0x95F1, 0x5834, 0x8FEA, 0x5835, 0x9367,
- 0x583A, 0x8DE4, 0x583D, 0x9ACC, 0x5840, 0x95BB, 0x5841, 0x97DB,
- 0x584A, 0x89F2, 0x584B, 0x9AC8, 0x5851, 0x9159, 0x5852, 0x9ACB,
- 0x5854, 0x9383, 0x5857, 0x9368, 0x5858, 0x9384, 0x5859, 0x94B7,
- 0x585A, 0x92CB, 0x585E, 0x8DC7, 0x5862, 0x9AC7, 0x5869, 0x8996,
- 0x586B, 0x9355, 0x5870, 0x9AC9, 0x5872, 0x9AC5, 0x5875, 0x906F,
- 0x5879, 0x9ACD, 0x587E, 0x8F6D, 0x5883, 0x8BAB, 0x5885, 0x9ACE,
- 0x5893, 0x95E6, 0x5897, 0x919D, 0x589C, 0x92C4, 0x589E, 0xFA9D,
- 0x589F, 0x9AD0, 0x58A8, 0x966E, 0x58AB, 0x9AD1, 0x58AE, 0x9AD6,
- 0x58B2, 0xFA9E, 0x58B3, 0x95AD, 0x58B8, 0x9AD5, 0x58B9, 0x9ACF,
- 0x58BA, 0x9AD2, 0x58BB, 0x9AD4, 0x58BE, 0x8DA4, 0x58C1, 0x95C7,
- 0x58C5, 0x9AD7, 0x58C7, 0x9264, 0x58CA, 0x89F3, 0x58CC, 0x8FEB,
- 0x58D1, 0x9AD9, 0x58D3, 0x9AD8, 0x58D5, 0x8D88, 0x58D7, 0x9ADA,
- 0x58D8, 0x9ADC, 0x58D9, 0x9ADB, 0x58DC, 0x9ADE, 0x58DE, 0x9AD3,
- 0x58DF, 0x9AE0, 0x58E4, 0x9ADF, 0x58E5, 0x9ADD, 0x58EB, 0x8E6D,
- 0x58EC, 0x9070, 0x58EE, 0x9173, 0x58EF, 0x9AE1, 0x58F0, 0x90BA,
- 0x58F1, 0x88EB, 0x58F2, 0x9484, 0x58F7, 0x92D9, 0x58F9, 0x9AE3,
- 0x58FA, 0x9AE2, 0x58FB, 0x9AE4, 0x58FC, 0x9AE5, 0x58FD, 0x9AE6,
- 0x5902, 0x9AE7, 0x5909, 0x95CF, 0x590A, 0x9AE8, 0x590B, 0xFA9F,
- 0x590F, 0x89C4, 0x5910, 0x9AE9, 0x5915, 0x975B, 0x5916, 0x8A4F,
- 0x5918, 0x99C7, 0x5919, 0x8F67, 0x591A, 0x91BD, 0x591B, 0x9AEA,
- 0x591C, 0x96E9, 0x5922, 0x96B2, 0x5925, 0x9AEC, 0x5927, 0x91E5,
- 0x5929, 0x9356, 0x592A, 0x91BE, 0x592B, 0x9576, 0x592C, 0x9AED,
- 0x592D, 0x9AEE, 0x592E, 0x899B, 0x5931, 0x8EB8, 0x5932, 0x9AEF,
- 0x5937, 0x88CE, 0x5938, 0x9AF0, 0x593E, 0x9AF1, 0x5944, 0x8982,
- 0x5947, 0x8AEF, 0x5948, 0x93DE, 0x5949, 0x95F2, 0x594E, 0x9AF5,
- 0x594F, 0x9174, 0x5950, 0x9AF4, 0x5951, 0x8C5F, 0x5953, 0xFAA0,
- 0x5954, 0x967A, 0x5955, 0x9AF3, 0x5957, 0x9385, 0x5958, 0x9AF7,
- 0x595A, 0x9AF6, 0x595B, 0xFAA1, 0x595D, 0xFAA2, 0x5960, 0x9AF9,
- 0x5962, 0x9AF8, 0x5963, 0xFAA3, 0x5965, 0x899C, 0x5967, 0x9AFA,
- 0x5968, 0x8FA7, 0x5969, 0x9AFC, 0x596A, 0x9244, 0x596C, 0x9AFB,
- 0x596E, 0x95B1, 0x5973, 0x8F97, 0x5974, 0x937A, 0x5978, 0x9B40,
- 0x597D, 0x8D44, 0x5981, 0x9B41, 0x5982, 0x9440, 0x5983, 0x94DC,
- 0x5984, 0x96CF, 0x598A, 0x9444, 0x598D, 0x9B4A, 0x5993, 0x8B57,
- 0x5996, 0x9764, 0x5999, 0x96AD, 0x599B, 0x9BAA, 0x599D, 0x9B42,
- 0x59A3, 0x9B45, 0x59A4, 0xFAA4, 0x59A5, 0x91C3, 0x59A8, 0x9657,
- 0x59AC, 0x9369, 0x59B2, 0x9B46, 0x59B9, 0x9685, 0x59BA, 0xFAA5,
- 0x59BB, 0x8DC8, 0x59BE, 0x8FA8, 0x59C6, 0x9B47, 0x59C9, 0x8E6F,
- 0x59CB, 0x8E6E, 0x59D0, 0x88B7, 0x59D1, 0x8CC6, 0x59D3, 0x90A9,
- 0x59D4, 0x88CF, 0x59D9, 0x9B4B, 0x59DA, 0x9B4C, 0x59DC, 0x9B49,
- 0x59E5, 0x8957, 0x59E6, 0x8AAD, 0x59E8, 0x9B48, 0x59EA, 0x96C3,
- 0x59EB, 0x9550, 0x59F6, 0x88A6, 0x59FB, 0x88F7, 0x59FF, 0x8E70,
- 0x5A01, 0x88D0, 0x5A03, 0x88A1, 0x5A09, 0x9B51, 0x5A11, 0x9B4F,
- 0x5A18, 0x96BA, 0x5A1A, 0x9B52, 0x5A1C, 0x9B50, 0x5A1F, 0x9B4E,
- 0x5A20, 0x9050, 0x5A25, 0x9B4D, 0x5A29, 0x95D8, 0x5A2F, 0x8CE2,
- 0x5A35, 0x9B56, 0x5A36, 0x9B57, 0x5A3C, 0x8FA9, 0x5A40, 0x9B53,
- 0x5A41, 0x984B, 0x5A46, 0x946B, 0x5A49, 0x9B55, 0x5A5A, 0x8DA5,
- 0x5A62, 0x9B58, 0x5A66, 0x9577, 0x5A6A, 0x9B59, 0x5A6C, 0x9B54,
- 0x5A7F, 0x96B9, 0x5A92, 0x947D, 0x5A9A, 0x9B5A, 0x5A9B, 0x9551,
- 0x5ABC, 0x9B5B, 0x5ABD, 0x9B5F, 0x5ABE, 0x9B5C, 0x5AC1, 0x89C5,
- 0x5AC2, 0x9B5E, 0x5AC9, 0x8EB9, 0x5ACB, 0x9B5D, 0x5ACC, 0x8C99,
- 0x5AD0, 0x9B6B, 0x5AD6, 0x9B64, 0x5AD7, 0x9B61, 0x5AE1, 0x9284,
- 0x5AE3, 0x9B60, 0x5AE6, 0x9B62, 0x5AE9, 0x9B63, 0x5AFA, 0x9B65,
- 0x5AFB, 0x9B66, 0x5B09, 0x8AF0, 0x5B0B, 0x9B68, 0x5B0C, 0x9B67,
- 0x5B16, 0x9B69, 0x5B22, 0x8FEC, 0x5B2A, 0x9B6C, 0x5B2C, 0x92DA,
- 0x5B30, 0x8964, 0x5B32, 0x9B6A, 0x5B36, 0x9B6D, 0x5B3E, 0x9B6E,
- 0x5B40, 0x9B71, 0x5B43, 0x9B6F, 0x5B45, 0x9B70, 0x5B50, 0x8E71,
- 0x5B51, 0x9B72, 0x5B54, 0x8D45, 0x5B55, 0x9B73, 0x5B56, 0xFAA6,
- 0x5B57, 0x8E9A, 0x5B58, 0x91B6, 0x5B5A, 0x9B74, 0x5B5B, 0x9B75,
- 0x5B5C, 0x8E79, 0x5B5D, 0x8D46, 0x5B5F, 0x96D0, 0x5B63, 0x8B47,
- 0x5B64, 0x8CC7, 0x5B65, 0x9B76, 0x5B66, 0x8A77, 0x5B69, 0x9B77,
- 0x5B6B, 0x91B7, 0x5B70, 0x9B78, 0x5B71, 0x9BA1, 0x5B73, 0x9B79,
- 0x5B75, 0x9B7A, 0x5B78, 0x9B7B, 0x5B7A, 0x9B7D, 0x5B80, 0x9B7E,
- 0x5B83, 0x9B80, 0x5B85, 0x91EE, 0x5B87, 0x8946, 0x5B88, 0x8EE7,
- 0x5B89, 0x88C0, 0x5B8B, 0x9176, 0x5B8C, 0x8AAE, 0x5B8D, 0x8EB3,
- 0x5B8F, 0x8D47, 0x5B95, 0x9386, 0x5B97, 0x8F40, 0x5B98, 0x8AAF,
- 0x5B99, 0x9288, 0x5B9A, 0x92E8, 0x5B9B, 0x88B6, 0x5B9C, 0x8B58,
- 0x5B9D, 0x95F3, 0x5B9F, 0x8EC0, 0x5BA2, 0x8B71, 0x5BA3, 0x90E9,
- 0x5BA4, 0x8EBA, 0x5BA5, 0x9747, 0x5BA6, 0x9B81, 0x5BAE, 0x8B7B,
- 0x5BB0, 0x8DC9, 0x5BB3, 0x8A51, 0x5BB4, 0x8983, 0x5BB5, 0x8FAA,
- 0x5BB6, 0x89C6, 0x5BB8, 0x9B82, 0x5BB9, 0x9765, 0x5BBF, 0x8F68,
- 0x5BC0, 0xFAA7, 0x5BC2, 0x8EE2, 0x5BC3, 0x9B83, 0x5BC4, 0x8AF1,
- 0x5BC5, 0x93D0, 0x5BC6, 0x96A7, 0x5BC7, 0x9B84, 0x5BC9, 0x9B85,
- 0x5BCC, 0x9578, 0x5BD0, 0x9B87, 0x5BD2, 0x8AA6, 0x5BD3, 0x8BF5,
- 0x5BD4, 0x9B86, 0x5BD8, 0xFAA9, 0x5BDB, 0x8AB0, 0x5BDD, 0x9051,
- 0x5BDE, 0x9B8B, 0x5BDF, 0x8E40, 0x5BE1, 0x89C7, 0x5BE2, 0x9B8A,
- 0x5BE4, 0x9B88, 0x5BE5, 0x9B8C, 0x5BE6, 0x9B89, 0x5BE7, 0x944A,
- 0x5BE8, 0x9ECB, 0x5BE9, 0x9052, 0x5BEB, 0x9B8D, 0x5BEC, 0xFAAA,
- 0x5BEE, 0x97BE, 0x5BF0, 0x9B8E, 0x5BF3, 0x9B90, 0x5BF5, 0x929E,
- 0x5BF6, 0x9B8F, 0x5BF8, 0x90A1, 0x5BFA, 0x8E9B, 0x5BFE, 0x91CE,
- 0x5BFF, 0x8EF5, 0x5C01, 0x9595, 0x5C02, 0x90EA, 0x5C04, 0x8ECB,
- 0x5C05, 0x9B91, 0x5C06, 0x8FAB, 0x5C07, 0x9B92, 0x5C08, 0x9B93,
- 0x5C09, 0x88D1, 0x5C0A, 0x91B8, 0x5C0B, 0x9071, 0x5C0D, 0x9B94,
- 0x5C0E, 0x93B1, 0x5C0F, 0x8FAC, 0x5C11, 0x8FAD, 0x5C13, 0x9B95,
- 0x5C16, 0x90EB, 0x5C1A, 0x8FAE, 0x5C1E, 0xFAAB, 0x5C20, 0x9B96,
- 0x5C22, 0x9B97, 0x5C24, 0x96DE, 0x5C28, 0x9B98, 0x5C2D, 0x8BC4,
- 0x5C31, 0x8F41, 0x5C38, 0x9B99, 0x5C39, 0x9B9A, 0x5C3A, 0x8EDA,
- 0x5C3B, 0x904B, 0x5C3C, 0x93F2, 0x5C3D, 0x9073, 0x5C3E, 0x94F6,
- 0x5C3F, 0x9441, 0x5C40, 0x8BC7, 0x5C41, 0x9B9B, 0x5C45, 0x8B8F,
- 0x5C46, 0x9B9C, 0x5C48, 0x8BFC, 0x5C4A, 0x93CD, 0x5C4B, 0x89AE,
- 0x5C4D, 0x8E72, 0x5C4E, 0x9B9D, 0x5C4F, 0x9BA0, 0x5C50, 0x9B9F,
- 0x5C51, 0x8BFB, 0x5C53, 0x9B9E, 0x5C55, 0x9357, 0x5C5E, 0x91AE,
- 0x5C60, 0x936A, 0x5C61, 0x8EC6, 0x5C64, 0x9177, 0x5C65, 0x979A,
- 0x5C6C, 0x9BA2, 0x5C6E, 0x9BA3, 0x5C6F, 0x93D4, 0x5C71, 0x8E52,
- 0x5C76, 0x9BA5, 0x5C79, 0x9BA6, 0x5C8C, 0x9BA7, 0x5C90, 0x8AF2,
- 0x5C91, 0x9BA8, 0x5C94, 0x9BA9, 0x5CA1, 0x89AA, 0x5CA6, 0xFAAC,
- 0x5CA8, 0x915A, 0x5CA9, 0x8AE2, 0x5CAB, 0x9BAB, 0x5CAC, 0x96A6,
- 0x5CB1, 0x91D0, 0x5CB3, 0x8A78, 0x5CB6, 0x9BAD, 0x5CB7, 0x9BAF,
- 0x5CB8, 0x8ADD, 0x5CBA, 0xFAAD, 0x5CBB, 0x9BAC, 0x5CBC, 0x9BAE,
- 0x5CBE, 0x9BB1, 0x5CC5, 0x9BB0, 0x5CC7, 0x9BB2, 0x5CD9, 0x9BB3,
- 0x5CE0, 0x93BB, 0x5CE1, 0x8BAC, 0x5CE8, 0x89E3, 0x5CE9, 0x9BB4,
- 0x5CEA, 0x9BB9, 0x5CED, 0x9BB7, 0x5CEF, 0x95F5, 0x5CF0, 0x95F4,
- 0x5CF5, 0xFAAE, 0x5CF6, 0x9387, 0x5CFA, 0x9BB6, 0x5CFB, 0x8F73,
- 0x5CFD, 0x9BB5, 0x5D07, 0x9092, 0x5D0B, 0x9BBA, 0x5D0E, 0x8DE8,
- 0x5D11, 0x9BC0, 0x5D14, 0x9BC1, 0x5D15, 0x9BBB, 0x5D16, 0x8A52,
- 0x5D17, 0x9BBC, 0x5D18, 0x9BC5, 0x5D19, 0x9BC4, 0x5D1A, 0x9BC3,
- 0x5D1B, 0x9BBF, 0x5D1F, 0x9BBE, 0x5D22, 0x9BC2, 0x5D27, 0xFAAF,
- 0x5D29, 0x95F6, 0x5D42, 0xFAB2, 0x5D4B, 0x9BC9, 0x5D4C, 0x9BC6,
- 0x5D4E, 0x9BC8, 0x5D50, 0x9792, 0x5D52, 0x9BC7, 0x5D53, 0xFAB0,
- 0x5D5C, 0x9BBD, 0x5D69, 0x9093, 0x5D6C, 0x9BCA, 0x5D6D, 0xFAB3,
- 0x5D6F, 0x8DB5, 0x5D73, 0x9BCB, 0x5D76, 0x9BCC, 0x5D82, 0x9BCF,
- 0x5D84, 0x9BCE, 0x5D87, 0x9BCD, 0x5D8B, 0x9388, 0x5D8C, 0x9BB8,
- 0x5D90, 0x9BD5, 0x5D9D, 0x9BD1, 0x5DA2, 0x9BD0, 0x5DAC, 0x9BD2,
- 0x5DAE, 0x9BD3, 0x5DB7, 0x9BD6, 0x5DB8, 0xFAB4, 0x5DB9, 0xFAB5,
- 0x5DBA, 0x97E4, 0x5DBC, 0x9BD7, 0x5DBD, 0x9BD4, 0x5DC9, 0x9BD8,
- 0x5DCC, 0x8ADE, 0x5DCD, 0x9BD9, 0x5DD0, 0xFAB6, 0x5DD2, 0x9BDB,
- 0x5DD3, 0x9BDA, 0x5DD6, 0x9BDC, 0x5DDB, 0x9BDD, 0x5DDD, 0x90EC,
- 0x5DDE, 0x8F42, 0x5DE1, 0x8F84, 0x5DE3, 0x9183, 0x5DE5, 0x8D48,
- 0x5DE6, 0x8DB6, 0x5DE7, 0x8D49, 0x5DE8, 0x8B90, 0x5DEB, 0x9BDE,
- 0x5DEE, 0x8DB7, 0x5DF1, 0x8CC8, 0x5DF2, 0x9BDF, 0x5DF3, 0x96A4,
- 0x5DF4, 0x9462, 0x5DF5, 0x9BE0, 0x5DF7, 0x8D4A, 0x5DFB, 0x8AAA,
- 0x5DFD, 0x9246, 0x5DFE, 0x8BD0, 0x5E02, 0x8E73, 0x5E03, 0x957A,
- 0x5E06, 0x94BF, 0x5E0B, 0x9BE1, 0x5E0C, 0x8AF3, 0x5E11, 0x9BE4,
- 0x5E16, 0x929F, 0x5E19, 0x9BE3, 0x5E1A, 0x9BE2, 0x5E1B, 0x9BE5,
- 0x5E1D, 0x92E9, 0x5E25, 0x9083, 0x5E2B, 0x8E74, 0x5E2D, 0x90C8,
- 0x5E2F, 0x91D1, 0x5E30, 0x8B41, 0x5E33, 0x92A0, 0x5E36, 0x9BE6,
- 0x5E37, 0x9BE7, 0x5E38, 0x8FED, 0x5E3D, 0x9658, 0x5E40, 0x9BEA,
- 0x5E43, 0x9BE9, 0x5E44, 0x9BE8, 0x5E45, 0x959D, 0x5E47, 0x9BF1,
- 0x5E4C, 0x9679, 0x5E4E, 0x9BEB, 0x5E54, 0x9BED, 0x5E55, 0x968B,
- 0x5E57, 0x9BEC, 0x5E5F, 0x9BEE, 0x5E61, 0x94A6, 0x5E62, 0x9BEF,
- 0x5E63, 0x95BC, 0x5E64, 0x9BF0, 0x5E72, 0x8AB1, 0x5E73, 0x95BD,
- 0x5E74, 0x944E, 0x5E75, 0x9BF2, 0x5E76, 0x9BF3, 0x5E78, 0x8D4B,
- 0x5E79, 0x8AB2, 0x5E7A, 0x9BF4, 0x5E7B, 0x8CB6, 0x5E7C, 0x9763,
- 0x5E7D, 0x9748, 0x5E7E, 0x8AF4, 0x5E7F, 0x9BF6, 0x5E81, 0x92A1,
- 0x5E83, 0x8D4C, 0x5E84, 0x8FAF, 0x5E87, 0x94DD, 0x5E8A, 0x8FB0,
- 0x5E8F, 0x8F98, 0x5E95, 0x92EA, 0x5E96, 0x95F7, 0x5E97, 0x9358,
- 0x5E9A, 0x8D4D, 0x5E9C, 0x957B, 0x5EA0, 0x9BF7, 0x5EA6, 0x9378,
- 0x5EA7, 0x8DC0, 0x5EAB, 0x8CC9, 0x5EAD, 0x92EB, 0x5EB5, 0x88C1,
- 0x5EB6, 0x8F8E, 0x5EB7, 0x8D4E, 0x5EB8, 0x9766, 0x5EC1, 0x9BF8,
- 0x5EC2, 0x9BF9, 0x5EC3, 0x9470, 0x5EC8, 0x9BFA, 0x5EC9, 0x97F5,
- 0x5ECA, 0x984C, 0x5ECF, 0x9BFC, 0x5ED0, 0x9BFB, 0x5ED3, 0x8A66,
- 0x5ED6, 0x9C40, 0x5EDA, 0x9C43, 0x5EDB, 0x9C44, 0x5EDD, 0x9C42,
- 0x5EDF, 0x955F, 0x5EE0, 0x8FB1, 0x5EE1, 0x9C46, 0x5EE2, 0x9C45,
- 0x5EE3, 0x9C41, 0x5EE8, 0x9C47, 0x5EE9, 0x9C48, 0x5EEC, 0x9C49,
- 0x5EF0, 0x9C4C, 0x5EF1, 0x9C4A, 0x5EF3, 0x9C4B, 0x5EF4, 0x9C4D,
- 0x5EF6, 0x8984, 0x5EF7, 0x92EC, 0x5EF8, 0x9C4E, 0x5EFA, 0x8C9A,
- 0x5EFB, 0x89F4, 0x5EFC, 0x9455, 0x5EFE, 0x9C4F, 0x5EFF, 0x93F9,
- 0x5F01, 0x95D9, 0x5F03, 0x9C50, 0x5F04, 0x984D, 0x5F09, 0x9C51,
- 0x5F0A, 0x95BE, 0x5F0B, 0x9C54, 0x5F0C, 0x989F, 0x5F0D, 0x98AF,
- 0x5F0F, 0x8EAE, 0x5F10, 0x93F3, 0x5F11, 0x9C55, 0x5F13, 0x8B7C,
- 0x5F14, 0x92A2, 0x5F15, 0x88F8, 0x5F16, 0x9C56, 0x5F17, 0x95A4,
- 0x5F18, 0x8D4F, 0x5F1B, 0x926F, 0x5F1F, 0x92ED, 0x5F21, 0xFAB7,
- 0x5F25, 0x96ED, 0x5F26, 0x8CB7, 0x5F27, 0x8CCA, 0x5F29, 0x9C57,
- 0x5F2D, 0x9C58, 0x5F2F, 0x9C5E, 0x5F31, 0x8EE3, 0x5F34, 0xFAB8,
- 0x5F35, 0x92A3, 0x5F37, 0x8BAD, 0x5F38, 0x9C59, 0x5F3C, 0x954A,
- 0x5F3E, 0x9265, 0x5F41, 0x9C5A, 0x5F45, 0xFA67, 0x5F48, 0x9C5B,
- 0x5F4A, 0x8BAE, 0x5F4C, 0x9C5C, 0x5F4E, 0x9C5D, 0x5F51, 0x9C5F,
- 0x5F53, 0x9396, 0x5F56, 0x9C60, 0x5F57, 0x9C61, 0x5F59, 0x9C62,
- 0x5F5C, 0x9C53, 0x5F5D, 0x9C52, 0x5F61, 0x9C63, 0x5F62, 0x8C60,
- 0x5F66, 0x9546, 0x5F67, 0xFAB9, 0x5F69, 0x8DCA, 0x5F6A, 0x9556,
- 0x5F6B, 0x92A4, 0x5F6C, 0x956A, 0x5F6D, 0x9C64, 0x5F70, 0x8FB2,
- 0x5F71, 0x8965, 0x5F73, 0x9C65, 0x5F77, 0x9C66, 0x5F79, 0x96F0,
- 0x5F7C, 0x94DE, 0x5F7F, 0x9C69, 0x5F80, 0x899D, 0x5F81, 0x90AA,
- 0x5F82, 0x9C68, 0x5F83, 0x9C67, 0x5F84, 0x8C61, 0x5F85, 0x91D2,
- 0x5F87, 0x9C6D, 0x5F88, 0x9C6B, 0x5F8A, 0x9C6A, 0x5F8B, 0x97A5,
- 0x5F8C, 0x8CE3, 0x5F90, 0x8F99, 0x5F91, 0x9C6C, 0x5F92, 0x936B,
- 0x5F93, 0x8F5D, 0x5F97, 0x93BE, 0x5F98, 0x9C70, 0x5F99, 0x9C6F,
- 0x5F9E, 0x9C6E, 0x5FA0, 0x9C71, 0x5FA1, 0x8CE4, 0x5FA8, 0x9C72,
- 0x5FA9, 0x959C, 0x5FAA, 0x8F7A, 0x5FAD, 0x9C73, 0x5FAE, 0x94F7,
- 0x5FB3, 0x93BF, 0x5FB4, 0x92A5, 0x5FB7, 0xFABA, 0x5FB9, 0x934F,
- 0x5FBC, 0x9C74, 0x5FBD, 0x8B4A, 0x5FC3, 0x9053, 0x5FC5, 0x954B,
- 0x5FCC, 0x8AF5, 0x5FCD, 0x9445, 0x5FD6, 0x9C75, 0x5FD7, 0x8E75,
- 0x5FD8, 0x9659, 0x5FD9, 0x965A, 0x5FDC, 0x899E, 0x5FDD, 0x9C7A,
- 0x5FDE, 0xFABB, 0x5FE0, 0x9289, 0x5FE4, 0x9C77, 0x5FEB, 0x89F5,
- 0x5FF0, 0x9CAB, 0x5FF1, 0x9C79, 0x5FF5, 0x944F, 0x5FF8, 0x9C78,
- 0x5FFB, 0x9C76, 0x5FFD, 0x8D9A, 0x5FFF, 0x9C7C, 0x600E, 0x9C83,
- 0x600F, 0x9C89, 0x6010, 0x9C81, 0x6012, 0x937B, 0x6015, 0x9C86,
- 0x6016, 0x957C, 0x6019, 0x9C80, 0x601B, 0x9C85, 0x601C, 0x97E5,
- 0x601D, 0x8E76, 0x6020, 0x91D3, 0x6021, 0x9C7D, 0x6025, 0x8B7D,
- 0x6026, 0x9C88, 0x6027, 0x90AB, 0x6028, 0x8985, 0x6029, 0x9C82,
- 0x602A, 0x89F6, 0x602B, 0x9C87, 0x602F, 0x8BAF, 0x6031, 0x9C84,
- 0x603A, 0x9C8A, 0x6041, 0x9C8C, 0x6042, 0x9C96, 0x6043, 0x9C94,
- 0x6046, 0x9C91, 0x604A, 0x9C90, 0x604B, 0x97F6, 0x604D, 0x9C92,
- 0x6050, 0x8BB0, 0x6052, 0x8D50, 0x6055, 0x8F9A, 0x6059, 0x9C99,
- 0x605A, 0x9C8B, 0x605D, 0xFABC, 0x605F, 0x9C8F, 0x6060, 0x9C7E,
- 0x6062, 0x89F8, 0x6063, 0x9C93, 0x6064, 0x9C95, 0x6065, 0x9270,
- 0x6068, 0x8DA6, 0x6069, 0x89B6, 0x606A, 0x9C8D, 0x606B, 0x9C98,
- 0x606C, 0x9C97, 0x606D, 0x8BB1, 0x606F, 0x91A7, 0x6070, 0x8A86,
- 0x6075, 0x8C62, 0x6077, 0x9C8E, 0x6081, 0x9C9A, 0x6083, 0x9C9D,
- 0x6084, 0x9C9F, 0x6085, 0xFABD, 0x6089, 0x8EBB, 0x608A, 0xFABE,
- 0x608B, 0x9CA5, 0x608C, 0x92EE, 0x608D, 0x9C9B, 0x6092, 0x9CA3,
- 0x6094, 0x89F7, 0x6096, 0x9CA1, 0x6097, 0x9CA2, 0x609A, 0x9C9E,
- 0x609B, 0x9CA0, 0x609F, 0x8CE5, 0x60A0, 0x9749, 0x60A3, 0x8AB3,
- 0x60A6, 0x8978, 0x60A7, 0x9CA4, 0x60A9, 0x9459, 0x60AA, 0x88AB,
- 0x60B2, 0x94DF, 0x60B3, 0x9C7B, 0x60B4, 0x9CAA, 0x60B5, 0x9CAE,
- 0x60B6, 0x96E3, 0x60B8, 0x9CA7, 0x60BC, 0x9389, 0x60BD, 0x9CAC,
- 0x60C5, 0x8FEE, 0x60C6, 0x9CAD, 0x60C7, 0x93D5, 0x60D1, 0x9866,
- 0x60D3, 0x9CA9, 0x60D5, 0xFAC0, 0x60D8, 0x9CAF, 0x60DA, 0x8D9B,
- 0x60DC, 0x90C9, 0x60DE, 0xFABF, 0x60DF, 0x88D2, 0x60E0, 0x9CA8,
- 0x60E1, 0x9CA6, 0x60E3, 0x9179, 0x60E7, 0x9C9C, 0x60E8, 0x8E53,
- 0x60F0, 0x91C4, 0x60F1, 0x9CBB, 0x60F2, 0xFAC2, 0x60F3, 0x917A,
- 0x60F4, 0x9CB6, 0x60F6, 0x9CB3, 0x60F7, 0x9CB4, 0x60F9, 0x8EE4,
- 0x60FA, 0x9CB7, 0x60FB, 0x9CBA, 0x6100, 0x9CB5, 0x6101, 0x8F44,
- 0x6103, 0x9CB8, 0x6106, 0x9CB2, 0x6108, 0x96FA, 0x6109, 0x96F9,
- 0x610D, 0x9CBC, 0x610E, 0x9CBD, 0x610F, 0x88D3, 0x6111, 0xFAC3,
- 0x6115, 0x9CB1, 0x611A, 0x8BF0, 0x611B, 0x88A4, 0x611F, 0x8AB4,
- 0x6120, 0xFAC1, 0x6121, 0x9CB9, 0x6127, 0x9CC1, 0x6128, 0x9CC0,
- 0x612C, 0x9CC5, 0x6130, 0xFAC5, 0x6134, 0x9CC6, 0x6137, 0xFAC4,
- 0x613C, 0x9CC4, 0x613D, 0x9CC7, 0x613E, 0x9CBF, 0x613F, 0x9CC3,
- 0x6142, 0x9CC8, 0x6144, 0x9CC9, 0x6147, 0x9CBE, 0x6148, 0x8E9C,
- 0x614A, 0x9CC2, 0x614B, 0x91D4, 0x614C, 0x8D51, 0x614D, 0x9CB0,
- 0x614E, 0x9054, 0x6153, 0x9CD6, 0x6155, 0x95E7, 0x6158, 0x9CCC,
- 0x6159, 0x9CCD, 0x615A, 0x9CCE, 0x615D, 0x9CD5, 0x615F, 0x9CD4,
- 0x6162, 0x969D, 0x6163, 0x8AB5, 0x6165, 0x9CD2, 0x6167, 0x8C64,
- 0x6168, 0x8A53, 0x616B, 0x9CCF, 0x616E, 0x97B6, 0x616F, 0x9CD1,
- 0x6170, 0x88D4, 0x6171, 0x9CD3, 0x6173, 0x9CCA, 0x6174, 0x9CD0,
- 0x6175, 0x9CD7, 0x6176, 0x8C63, 0x6177, 0x9CCB, 0x617E, 0x977C,
- 0x6182, 0x974A, 0x6187, 0x9CDA, 0x618A, 0x9CDE, 0x618E, 0x919E,
- 0x6190, 0x97F7, 0x6191, 0x9CDF, 0x6194, 0x9CDC, 0x6196, 0x9CD9,
- 0x6198, 0xFAC6, 0x6199, 0x9CD8, 0x619A, 0x9CDD, 0x61A4, 0x95AE,
- 0x61A7, 0x93B2, 0x61A9, 0x8C65, 0x61AB, 0x9CE0, 0x61AC, 0x9CDB,
- 0x61AE, 0x9CE1, 0x61B2, 0x8C9B, 0x61B6, 0x89AF, 0x61BA, 0x9CE9,
- 0x61BE, 0x8AB6, 0x61C3, 0x9CE7, 0x61C6, 0x9CE8, 0x61C7, 0x8DA7,
- 0x61C8, 0x9CE6, 0x61C9, 0x9CE4, 0x61CA, 0x9CE3, 0x61CB, 0x9CEA,
- 0x61CC, 0x9CE2, 0x61CD, 0x9CEC, 0x61D0, 0x89F9, 0x61E3, 0x9CEE,
- 0x61E6, 0x9CED, 0x61F2, 0x92A6, 0x61F4, 0x9CF1, 0x61F6, 0x9CEF,
- 0x61F7, 0x9CE5, 0x61F8, 0x8C9C, 0x61FA, 0x9CF0, 0x61FC, 0x9CF4,
- 0x61FD, 0x9CF3, 0x61FE, 0x9CF5, 0x61FF, 0x9CF2, 0x6200, 0x9CF6,
- 0x6208, 0x9CF7, 0x6209, 0x9CF8, 0x620A, 0x95E8, 0x620C, 0x9CFA,
- 0x620D, 0x9CF9, 0x620E, 0x8F5E, 0x6210, 0x90AC, 0x6211, 0x89E4,
- 0x6212, 0x89FA, 0x6213, 0xFAC7, 0x6214, 0x9CFB, 0x6216, 0x88BD,
- 0x621A, 0x90CA, 0x621B, 0x9CFC, 0x621D, 0xE6C1, 0x621E, 0x9D40,
- 0x621F, 0x8C81, 0x6221, 0x9D41, 0x6226, 0x90ED, 0x622A, 0x9D42,
- 0x622E, 0x9D43, 0x622F, 0x8B59, 0x6230, 0x9D44, 0x6232, 0x9D45,
- 0x6233, 0x9D46, 0x6234, 0x91D5, 0x6238, 0x8CCB, 0x623B, 0x96DF,
- 0x623F, 0x965B, 0x6240, 0x8F8A, 0x6241, 0x9D47, 0x6247, 0x90EE,
- 0x6248, 0xE7BB, 0x6249, 0x94E0, 0x624B, 0x8EE8, 0x624D, 0x8DCB,
- 0x624E, 0x9D48, 0x6253, 0x91C5, 0x6255, 0x95A5, 0x6258, 0x91EF,
- 0x625B, 0x9D4B, 0x625E, 0x9D49, 0x6260, 0x9D4C, 0x6263, 0x9D4A,
- 0x6268, 0x9D4D, 0x626E, 0x95AF, 0x6271, 0x88B5, 0x6276, 0x957D,
- 0x6279, 0x94E1, 0x627C, 0x9D4E, 0x627E, 0x9D51, 0x627F, 0x8FB3,
- 0x6280, 0x8B5A, 0x6282, 0x9D4F, 0x6283, 0x9D56, 0x6284, 0x8FB4,
- 0x6289, 0x9D50, 0x628A, 0x9463, 0x6291, 0x977D, 0x6292, 0x9D52,
- 0x6293, 0x9D53, 0x6294, 0x9D57, 0x6295, 0x938A, 0x6296, 0x9D54,
- 0x6297, 0x8D52, 0x6298, 0x90DC, 0x629B, 0x9D65, 0x629C, 0x94B2,
- 0x629E, 0x91F0, 0x62A6, 0xFAC8, 0x62AB, 0x94E2, 0x62AC, 0x9DAB,
- 0x62B1, 0x95F8, 0x62B5, 0x92EF, 0x62B9, 0x9695, 0x62BB, 0x9D5A,
- 0x62BC, 0x899F, 0x62BD, 0x928A, 0x62C2, 0x9D63, 0x62C5, 0x9253,
- 0x62C6, 0x9D5D, 0x62C7, 0x9D64, 0x62C8, 0x9D5F, 0x62C9, 0x9D66,
- 0x62CA, 0x9D62, 0x62CC, 0x9D61, 0x62CD, 0x948F, 0x62CF, 0x9D5B,
- 0x62D0, 0x89FB, 0x62D1, 0x9D59, 0x62D2, 0x8B91, 0x62D3, 0x91F1,
- 0x62D4, 0x9D55, 0x62D7, 0x9D58, 0x62D8, 0x8D53, 0x62D9, 0x90D9,
- 0x62DB, 0x8FB5, 0x62DC, 0x9D60, 0x62DD, 0x9471, 0x62E0, 0x8B92,
- 0x62E1, 0x8A67, 0x62EC, 0x8A87, 0x62ED, 0x9040, 0x62EE, 0x9D68,
- 0x62EF, 0x9D6D, 0x62F1, 0x9D69, 0x62F3, 0x8C9D, 0x62F5, 0x9D6E,
- 0x62F6, 0x8E41, 0x62F7, 0x8D89, 0x62FE, 0x8F45, 0x62FF, 0x9D5C,
- 0x6301, 0x8E9D, 0x6302, 0x9D6B, 0x6307, 0x8E77, 0x6308, 0x9D6C,
- 0x6309, 0x88C2, 0x630C, 0x9D67, 0x6311, 0x92A7, 0x6319, 0x8B93,
- 0x631F, 0x8BB2, 0x6327, 0x9D6A, 0x6328, 0x88A5, 0x632B, 0x8DC1,
- 0x632F, 0x9055, 0x633A, 0x92F0, 0x633D, 0x94D2, 0x633E, 0x9D70,
- 0x633F, 0x917D, 0x6349, 0x91A8, 0x634C, 0x8E4A, 0x634D, 0x9D71,
- 0x634F, 0x9D73, 0x6350, 0x9D6F, 0x6355, 0x95DF, 0x6357, 0x92BB,
- 0x635C, 0x917B, 0x6367, 0x95F9, 0x6368, 0x8ECC, 0x6369, 0x9D80,
- 0x636B, 0x9D7E, 0x636E, 0x9098, 0x6372, 0x8C9E, 0x6376, 0x9D78,
- 0x6377, 0x8FB7, 0x637A, 0x93E6, 0x637B, 0x9450, 0x6380, 0x9D76,
- 0x6383, 0x917C, 0x6388, 0x8EF6, 0x6389, 0x9D7B, 0x638C, 0x8FB6,
- 0x638E, 0x9D75, 0x638F, 0x9D7A, 0x6392, 0x9472, 0x6396, 0x9D74,
- 0x6398, 0x8C40, 0x639B, 0x8A7C, 0x639F, 0x9D7C, 0x63A0, 0x97A9,
- 0x63A1, 0x8DCC, 0x63A2, 0x9254, 0x63A3, 0x9D79, 0x63A5, 0x90DA,
- 0x63A7, 0x8D54, 0x63A8, 0x9084, 0x63A9, 0x8986, 0x63AA, 0x915B,
- 0x63AB, 0x9D77, 0x63AC, 0x8B64, 0x63B2, 0x8C66, 0x63B4, 0x92CD,
- 0x63B5, 0x9D7D, 0x63BB, 0x917E, 0x63BE, 0x9D81, 0x63C0, 0x9D83,
- 0x63C3, 0x91B5, 0x63C4, 0x9D89, 0x63C6, 0x9D84, 0x63C9, 0x9D86,
- 0x63CF, 0x9560, 0x63D0, 0x92F1, 0x63D2, 0x9D87, 0x63D6, 0x974B,
- 0x63DA, 0x9767, 0x63DB, 0x8AB7, 0x63E1, 0x88AC, 0x63E3, 0x9D85,
- 0x63E9, 0x9D82, 0x63EE, 0x8AF6, 0x63F4, 0x8987, 0x63F5, 0xFAC9,
- 0x63F6, 0x9D88, 0x63FA, 0x9768, 0x6406, 0x9D8C, 0x640D, 0x91B9,
- 0x640F, 0x9D93, 0x6413, 0x9D8D, 0x6416, 0x9D8A, 0x6417, 0x9D91,
- 0x641C, 0x9D72, 0x6426, 0x9D8E, 0x6428, 0x9D92, 0x642C, 0x94C0,
- 0x642D, 0x938B, 0x6434, 0x9D8B, 0x6436, 0x9D8F, 0x643A, 0x8C67,
- 0x643E, 0x8DEF, 0x6442, 0x90DB, 0x644E, 0x9D97, 0x6458, 0x9345,
- 0x6460, 0xFACA, 0x6467, 0x9D94, 0x6469, 0x9680, 0x646F, 0x9D95,
- 0x6476, 0x9D96, 0x6478, 0x96CC, 0x647A, 0x90A0, 0x6483, 0x8C82,
- 0x6488, 0x9D9D, 0x6492, 0x8E54, 0x6493, 0x9D9A, 0x6495, 0x9D99,
- 0x649A, 0x9451, 0x649D, 0xFACB, 0x649E, 0x93B3, 0x64A4, 0x9350,
- 0x64A5, 0x9D9B, 0x64A9, 0x9D9C, 0x64AB, 0x958F, 0x64AD, 0x9464,
- 0x64AE, 0x8E42, 0x64B0, 0x90EF, 0x64B2, 0x966F, 0x64B9, 0x8A68,
- 0x64BB, 0x9DA3, 0x64BC, 0x9D9E, 0x64C1, 0x9769, 0x64C2, 0x9DA5,
- 0x64C5, 0x9DA1, 0x64C7, 0x9DA2, 0x64CD, 0x9180, 0x64CE, 0xFACC,
- 0x64D2, 0x9DA0, 0x64D4, 0x9D5E, 0x64D8, 0x9DA4, 0x64DA, 0x9D9F,
- 0x64E0, 0x9DA9, 0x64E1, 0x9DAA, 0x64E2, 0x9346, 0x64E3, 0x9DAC,
- 0x64E6, 0x8E43, 0x64E7, 0x9DA7, 0x64EC, 0x8B5B, 0x64EF, 0x9DAD,
- 0x64F1, 0x9DA6, 0x64F2, 0x9DB1, 0x64F4, 0x9DB0, 0x64F6, 0x9DAF,
- 0x64FA, 0x9DB2, 0x64FD, 0x9DB4, 0x64FE, 0x8FEF, 0x6500, 0x9DB3,
- 0x6505, 0x9DB7, 0x6518, 0x9DB5, 0x651C, 0x9DB6, 0x651D, 0x9D90,
- 0x6523, 0x9DB9, 0x6524, 0x9DB8, 0x652A, 0x9D98, 0x652B, 0x9DBA,
- 0x652C, 0x9DAE, 0x652F, 0x8E78, 0x6534, 0x9DBB, 0x6535, 0x9DBC,
- 0x6536, 0x9DBE, 0x6537, 0x9DBD, 0x6538, 0x9DBF, 0x6539, 0x89FC,
- 0x653B, 0x8D55, 0x653E, 0x95FA, 0x653F, 0x90AD, 0x6545, 0x8CCC,
- 0x6548, 0x9DC1, 0x654D, 0x9DC4, 0x654E, 0xFACD, 0x654F, 0x9571,
- 0x6551, 0x8B7E, 0x6555, 0x9DC3, 0x6556, 0x9DC2, 0x6557, 0x9473,
- 0x6558, 0x9DC5, 0x6559, 0x8BB3, 0x655D, 0x9DC7, 0x655E, 0x9DC6,
- 0x6562, 0x8AB8, 0x6563, 0x8E55, 0x6566, 0x93D6, 0x656C, 0x8C68,
- 0x6570, 0x9094, 0x6572, 0x9DC8, 0x6574, 0x90AE, 0x6575, 0x9347,
- 0x6577, 0x957E, 0x6578, 0x9DC9, 0x6582, 0x9DCA, 0x6583, 0x9DCB,
- 0x6587, 0x95B6, 0x6588, 0x9B7C, 0x6589, 0x90C4, 0x658C, 0x956B,
- 0x658E, 0x8DD6, 0x6590, 0x94E3, 0x6591, 0x94C1, 0x6597, 0x936C,
- 0x6599, 0x97BF, 0x659B, 0x9DCD, 0x659C, 0x8ECE, 0x659F, 0x9DCE,
- 0x65A1, 0x88B4, 0x65A4, 0x8BD2, 0x65A5, 0x90CB, 0x65A7, 0x9580,
- 0x65AB, 0x9DCF, 0x65AC, 0x8E61, 0x65AD, 0x9266, 0x65AF, 0x8E7A,
- 0x65B0, 0x9056, 0x65B7, 0x9DD0, 0x65B9, 0x95FB, 0x65BC, 0x8997,
- 0x65BD, 0x8E7B, 0x65C1, 0x9DD3, 0x65C3, 0x9DD1, 0x65C4, 0x9DD4,
- 0x65C5, 0x97B7, 0x65C6, 0x9DD2, 0x65CB, 0x90F9, 0x65CC, 0x9DD5,
- 0x65CF, 0x91B0, 0x65D2, 0x9DD6, 0x65D7, 0x8AF8, 0x65D9, 0x9DD8,
- 0x65DB, 0x9DD7, 0x65E0, 0x9DD9, 0x65E1, 0x9DDA, 0x65E2, 0x8AF9,
- 0x65E5, 0x93FA, 0x65E6, 0x9255, 0x65E7, 0x8B8C, 0x65E8, 0x8E7C,
- 0x65E9, 0x9181, 0x65EC, 0x8F7B, 0x65ED, 0x88AE, 0x65F1, 0x9DDB,
- 0x65FA, 0x89A0, 0x65FB, 0x9DDF, 0x6600, 0xFACE, 0x6602, 0x8D56,
- 0x6603, 0x9DDE, 0x6606, 0x8DA9, 0x6607, 0x8FB8, 0x6609, 0xFAD1,
- 0x660A, 0x9DDD, 0x660C, 0x8FB9, 0x660E, 0x96BE, 0x660F, 0x8DA8,
- 0x6613, 0x88D5, 0x6614, 0x90CC, 0x6615, 0xFACF, 0x661C, 0x9DE4,
- 0x661E, 0xFAD3, 0x661F, 0x90AF, 0x6620, 0x8966, 0x6624, 0xFAD4,
- 0x6625, 0x8F74, 0x6627, 0x9686, 0x6628, 0x8DF0, 0x662D, 0x8FBA,
- 0x662E, 0xFAD2, 0x662F, 0x90A5, 0x6631, 0xFA63, 0x6634, 0x9DE3,
- 0x6635, 0x9DE1, 0x6636, 0x9DE2, 0x663B, 0xFAD0, 0x663C, 0x928B,
- 0x663F, 0x9E45, 0x6641, 0x9DE8, 0x6642, 0x8E9E, 0x6643, 0x8D57,
- 0x6644, 0x9DE6, 0x6649, 0x9DE7, 0x664B, 0x9057, 0x664F, 0x9DE5,
- 0x6652, 0x8E4E, 0x6657, 0xFAD6, 0x6659, 0xFAD7, 0x665D, 0x9DEA,
- 0x665E, 0x9DE9, 0x665F, 0x9DEE, 0x6662, 0x9DEF, 0x6664, 0x9DEB,
- 0x6665, 0xFAD5, 0x6666, 0x8A41, 0x6667, 0x9DEC, 0x6668, 0x9DED,
- 0x6669, 0x94D3, 0x666E, 0x9581, 0x666F, 0x8C69, 0x6670, 0x9DF0,
- 0x6673, 0xFAD9, 0x6674, 0x90B0, 0x6676, 0x8FBB, 0x667A, 0x9271,
- 0x6681, 0x8BC5, 0x6683, 0x9DF1, 0x6684, 0x9DF5, 0x6687, 0x89C9,
- 0x6688, 0x9DF2, 0x6689, 0x9DF4, 0x668E, 0x9DF3, 0x6691, 0x8F8B,
- 0x6696, 0x9267, 0x6697, 0x88C3, 0x6698, 0x9DF6, 0x6699, 0xFADA,
- 0x669D, 0x9DF7, 0x66A0, 0xFADB, 0x66A2, 0x92A8, 0x66A6, 0x97EF,
- 0x66AB, 0x8E62, 0x66AE, 0x95E9, 0x66B2, 0xFADC, 0x66B4, 0x965C,
- 0x66B8, 0x9E41, 0x66B9, 0x9DF9, 0x66BC, 0x9DFC, 0x66BE, 0x9DFB,
- 0x66BF, 0xFADD, 0x66C1, 0x9DF8, 0x66C4, 0x9E40, 0x66C7, 0x93DC,
- 0x66C9, 0x9DFA, 0x66D6, 0x9E42, 0x66D9, 0x8F8C, 0x66DA, 0x9E43,
- 0x66DC, 0x976A, 0x66DD, 0x9498, 0x66E0, 0x9E44, 0x66E6, 0x9E46,
- 0x66E9, 0x9E47, 0x66F0, 0x9E48, 0x66F2, 0x8BC8, 0x66F3, 0x8967,
- 0x66F4, 0x8D58, 0x66F5, 0x9E49, 0x66F7, 0x9E4A, 0x66F8, 0x8F91,
- 0x66F9, 0x9182, 0x66FA, 0xFADE, 0x66FB, 0xFA66, 0x66FC, 0x99D6,
- 0x66FD, 0x915D, 0x66FE, 0x915C, 0x66FF, 0x91D6, 0x6700, 0x8DC5,
- 0x6703, 0x98F0, 0x6708, 0x8C8E, 0x6709, 0x974C, 0x670B, 0x95FC,
- 0x670D, 0x959E, 0x670E, 0xFADF, 0x670F, 0x9E4B, 0x6714, 0x8DF1,
- 0x6715, 0x92BD, 0x6716, 0x9E4C, 0x6717, 0x984E, 0x671B, 0x965D,
- 0x671D, 0x92A9, 0x671E, 0x9E4D, 0x671F, 0x8AFA, 0x6726, 0x9E4E,
- 0x6727, 0x9E4F, 0x6728, 0x96D8, 0x672A, 0x96A2, 0x672B, 0x9696,
- 0x672C, 0x967B, 0x672D, 0x8E44, 0x672E, 0x9E51, 0x6731, 0x8EE9,
- 0x6734, 0x9670, 0x6736, 0x9E53, 0x6737, 0x9E56, 0x6738, 0x9E55,
- 0x673A, 0x8AF7, 0x673D, 0x8B80, 0x673F, 0x9E52, 0x6741, 0x9E54,
- 0x6746, 0x9E57, 0x6749, 0x9099, 0x674E, 0x979B, 0x674F, 0x88C7,
- 0x6750, 0x8DDE, 0x6751, 0x91BA, 0x6753, 0x8EDB, 0x6756, 0x8FF1,
- 0x6759, 0x9E5A, 0x675C, 0x936D, 0x675E, 0x9E58, 0x675F, 0x91A9,
- 0x6760, 0x9E59, 0x6761, 0x8FF0, 0x6762, 0x96DB, 0x6763, 0x9E5B,
- 0x6764, 0x9E5C, 0x6765, 0x9788, 0x6766, 0xFAE1, 0x676A, 0x9E61,
- 0x676D, 0x8D59, 0x676F, 0x9474, 0x6770, 0x9E5E, 0x6771, 0x938C,
- 0x6772, 0x9DDC, 0x6773, 0x9DE0, 0x6775, 0x8B6E, 0x6777, 0x9466,
- 0x677C, 0x9E60, 0x677E, 0x8FBC, 0x677F, 0x94C2, 0x6785, 0x9E66,
- 0x6787, 0x94F8, 0x6789, 0x9E5D, 0x678B, 0x9E63, 0x678C, 0x9E62,
- 0x6790, 0x90CD, 0x6795, 0x968D, 0x6797, 0x97D1, 0x679A, 0x9687,
- 0x679C, 0x89CA, 0x679D, 0x8E7D, 0x67A0, 0x9867, 0x67A1, 0x9E65,
- 0x67A2, 0x9095, 0x67A6, 0x9E64, 0x67A9, 0x9E5F, 0x67AF, 0x8CCD,
- 0x67B3, 0x9E6B, 0x67B4, 0x9E69, 0x67B6, 0x89CB, 0x67B7, 0x9E67,
- 0x67B8, 0x9E6D, 0x67B9, 0x9E73, 0x67BB, 0xFAE2, 0x67C0, 0xFAE4,
- 0x67C1, 0x91C6, 0x67C4, 0x95BF, 0x67C6, 0x9E75, 0x67CA, 0x9541,
- 0x67CE, 0x9E74, 0x67CF, 0x9490, 0x67D0, 0x965E, 0x67D1, 0x8AB9,
- 0x67D3, 0x90F5, 0x67D4, 0x8F5F, 0x67D8, 0x92D1, 0x67DA, 0x974D,
- 0x67DD, 0x9E70, 0x67DE, 0x9E6F, 0x67E2, 0x9E71, 0x67E4, 0x9E6E,
- 0x67E7, 0x9E76, 0x67E9, 0x9E6C, 0x67EC, 0x9E6A, 0x67EE, 0x9E72,
- 0x67EF, 0x9E68, 0x67F1, 0x928C, 0x67F3, 0x96F6, 0x67F4, 0x8EC4,
- 0x67F5, 0x8DF2, 0x67FB, 0x8DB8, 0x67FE, 0x968F, 0x67FF, 0x8A60,
- 0x6801, 0xFAE5, 0x6802, 0x92CC, 0x6803, 0x93C8, 0x6804, 0x8968,
- 0x6813, 0x90F0, 0x6816, 0x90B2, 0x6817, 0x8C49, 0x681E, 0x9E78,
- 0x6821, 0x8D5A, 0x6822, 0x8A9C, 0x6829, 0x9E7A, 0x682A, 0x8A94,
- 0x682B, 0x9E81, 0x6832, 0x9E7D, 0x6834, 0x90F1, 0x6838, 0x8A6A,
- 0x6839, 0x8DAA, 0x683C, 0x8A69, 0x683D, 0x8DCD, 0x6840, 0x9E7B,
- 0x6841, 0x8C85, 0x6842, 0x8C6A, 0x6843, 0x938D, 0x6844, 0xFAE6,
- 0x6846, 0x9E79, 0x6848, 0x88C4, 0x684D, 0x9E7C, 0x684E, 0x9E7E,
- 0x6850, 0x8BCB, 0x6851, 0x8C4B, 0x6852, 0xFAE3, 0x6853, 0x8ABA,
- 0x6854, 0x8B6A, 0x6859, 0x9E82, 0x685C, 0x8DF7, 0x685D, 0x9691,
- 0x685F, 0x8E56, 0x6863, 0x9E83, 0x6867, 0x954F, 0x6874, 0x9E8F,
- 0x6876, 0x89B1, 0x6877, 0x9E84, 0x687E, 0x9E95, 0x687F, 0x9E85,
- 0x6881, 0x97C0, 0x6883, 0x9E8C, 0x6885, 0x947E, 0x688D, 0x9E94,
- 0x688F, 0x9E87, 0x6893, 0x88B2, 0x6894, 0x9E89, 0x6897, 0x8D5B,
- 0x689B, 0x9E8B, 0x689D, 0x9E8A, 0x689F, 0x9E86, 0x68A0, 0x9E91,
- 0x68A2, 0x8FBD, 0x68A6, 0x9AEB, 0x68A7, 0x8CE6, 0x68A8, 0x979C,
- 0x68AD, 0x9E88, 0x68AF, 0x92F2, 0x68B0, 0x8A42, 0x68B1, 0x8DAB,
- 0x68B3, 0x9E80, 0x68B5, 0x9E90, 0x68B6, 0x8A81, 0x68B9, 0x9E8E,
- 0x68BA, 0x9E92, 0x68BC, 0x938E, 0x68C4, 0x8AFC, 0x68C6, 0x9EB0,
- 0x68C8, 0xFA64, 0x68C9, 0x96C7, 0x68CA, 0x9E97, 0x68CB, 0x8AFB,
- 0x68CD, 0x9E9E, 0x68CF, 0xFAE7, 0x68D2, 0x965F, 0x68D4, 0x9E9F,
- 0x68D5, 0x9EA1, 0x68D7, 0x9EA5, 0x68D8, 0x9E99, 0x68DA, 0x9249,
- 0x68DF, 0x938F, 0x68E0, 0x9EA9, 0x68E1, 0x9E9C, 0x68E3, 0x9EA6,
- 0x68E7, 0x9EA0, 0x68EE, 0x9058, 0x68EF, 0x9EAA, 0x68F2, 0x90B1,
- 0x68F9, 0x9EA8, 0x68FA, 0x8ABB, 0x6900, 0x986F, 0x6901, 0x9E96,
- 0x6904, 0x9EA4, 0x6905, 0x88D6, 0x6908, 0x9E98, 0x690B, 0x96B8,
- 0x690C, 0x9E9D, 0x690D, 0x9041, 0x690E, 0x92C5, 0x690F, 0x9E93,
- 0x6912, 0x9EA3, 0x6919, 0x909A, 0x691A, 0x9EAD, 0x691B, 0x8A91,
- 0x691C, 0x8C9F, 0x6921, 0x9EAF, 0x6922, 0x9E9A, 0x6923, 0x9EAE,
- 0x6925, 0x9EA7, 0x6926, 0x9E9B, 0x6928, 0x9EAB, 0x692A, 0x9EAC,
- 0x6930, 0x9EBD, 0x6934, 0x93CC, 0x6936, 0x9EA2, 0x6939, 0x9EB9,
- 0x693D, 0x9EBB, 0x693F, 0x92D6, 0x694A, 0x976B, 0x6953, 0x9596,
- 0x6954, 0x9EB6, 0x6955, 0x91C8, 0x6959, 0x9EBC, 0x695A, 0x915E,
- 0x695C, 0x9EB3, 0x695D, 0x9EC0, 0x695E, 0x9EBF, 0x6960, 0x93ED,
- 0x6961, 0x9EBE, 0x6962, 0x93E8, 0x6968, 0xFAE9, 0x696A, 0x9EC2,
- 0x696B, 0x9EB5, 0x696D, 0x8BC6, 0x696E, 0x9EB8, 0x696F, 0x8F7C,
- 0x6973, 0x9480, 0x6974, 0x9EBA, 0x6975, 0x8BC9, 0x6977, 0x9EB2,
- 0x6978, 0x9EB4, 0x6979, 0x9EB1, 0x697C, 0x984F, 0x697D, 0x8A79,
- 0x697E, 0x9EB7, 0x6981, 0x9EC1, 0x6982, 0x8A54, 0x698A, 0x8DE5,
- 0x698E, 0x897C, 0x6991, 0x9ED2, 0x6994, 0x9850, 0x6995, 0x9ED5,
- 0x6998, 0xFAEB, 0x699B, 0x9059, 0x699C, 0x9ED4, 0x69A0, 0x9ED3,
- 0x69A7, 0x9ED0, 0x69AE, 0x9EC4, 0x69B1, 0x9EE1, 0x69B2, 0x9EC3,
- 0x69B4, 0x9ED6, 0x69BB, 0x9ECE, 0x69BE, 0x9EC9, 0x69BF, 0x9EC6,
- 0x69C1, 0x9EC7, 0x69C3, 0x9ECF, 0x69C7, 0xEAA0, 0x69CA, 0x9ECC,
- 0x69CB, 0x8D5C, 0x69CC, 0x92C6, 0x69CD, 0x9184, 0x69CE, 0x9ECA,
- 0x69D0, 0x9EC5, 0x69D3, 0x9EC8, 0x69D8, 0x976C, 0x69D9, 0x968A,
- 0x69DD, 0x9ECD, 0x69DE, 0x9ED7, 0x69E2, 0xFAEC, 0x69E7, 0x9EDF,
- 0x69E8, 0x9ED8, 0x69EB, 0x9EE5, 0x69ED, 0x9EE3, 0x69F2, 0x9EDE,
- 0x69F9, 0x9EDD, 0x69FB, 0x92CE, 0x69FD, 0x9185, 0x69FF, 0x9EDB,
- 0x6A02, 0x9ED9, 0x6A05, 0x9EE0, 0x6A0A, 0x9EE6, 0x6A0B, 0x94F3,
- 0x6A0C, 0x9EEC, 0x6A12, 0x9EE7, 0x6A13, 0x9EEA, 0x6A14, 0x9EE4,
- 0x6A17, 0x9294, 0x6A19, 0x9557, 0x6A1B, 0x9EDA, 0x6A1E, 0x9EE2,
- 0x6A1F, 0x8FBE, 0x6A21, 0x96CD, 0x6A22, 0x9EF6, 0x6A23, 0x9EE9,
- 0x6A29, 0x8CA0, 0x6A2A, 0x89A1, 0x6A2B, 0x8A7E, 0x6A2E, 0x9ED1,
- 0x6A30, 0xFAED, 0x6A35, 0x8FBF, 0x6A36, 0x9EEE, 0x6A38, 0x9EF5,
- 0x6A39, 0x8EF7, 0x6A3A, 0x8A92, 0x6A3D, 0x924D, 0x6A44, 0x9EEB,
- 0x6A46, 0xFAEF, 0x6A47, 0x9EF0, 0x6A48, 0x9EF4, 0x6A4B, 0x8BB4,
- 0x6A58, 0x8B6B, 0x6A59, 0x9EF2, 0x6A5F, 0x8B40, 0x6A61, 0x93C9,
- 0x6A62, 0x9EF1, 0x6A66, 0x9EF3, 0x6A6B, 0xFAEE, 0x6A72, 0x9EED,
- 0x6A73, 0xFAF0, 0x6A78, 0x9EEF, 0x6A7E, 0xFAF1, 0x6A7F, 0x8A80,
- 0x6A80, 0x9268, 0x6A84, 0x9EFA, 0x6A8D, 0x9EF8, 0x6A8E, 0x8CE7,
- 0x6A90, 0x9EF7, 0x6A97, 0x9F40, 0x6A9C, 0x9E77, 0x6AA0, 0x9EF9,
- 0x6AA2, 0x9EFB, 0x6AA3, 0x9EFC, 0x6AAA, 0x9F4B, 0x6AAC, 0x9F47,
- 0x6AAE, 0x9E8D, 0x6AB3, 0x9F46, 0x6AB8, 0x9F45, 0x6ABB, 0x9F42,
- 0x6AC1, 0x9EE8, 0x6AC2, 0x9F44, 0x6AC3, 0x9F43, 0x6AD1, 0x9F49,
- 0x6AD3, 0x9845, 0x6ADA, 0x9F4C, 0x6ADB, 0x8BF9, 0x6ADE, 0x9F48,
- 0x6ADF, 0x9F4A, 0x6AE2, 0xFAF2, 0x6AE4, 0xFAF3, 0x6AE8, 0x94A5,
- 0x6AEA, 0x9F4D, 0x6AFA, 0x9F51, 0x6AFB, 0x9F4E, 0x6B04, 0x9793,
- 0x6B05, 0x9F4F, 0x6B0A, 0x9EDC, 0x6B12, 0x9F52, 0x6B16, 0x9F53,
- 0x6B1D, 0x8954, 0x6B1F, 0x9F55, 0x6B20, 0x8C87, 0x6B21, 0x8E9F,
- 0x6B23, 0x8BD3, 0x6B27, 0x89A2, 0x6B32, 0x977E, 0x6B37, 0x9F57,
- 0x6B38, 0x9F56, 0x6B39, 0x9F59, 0x6B3A, 0x8B5C, 0x6B3D, 0x8BD4,
- 0x6B3E, 0x8ABC, 0x6B43, 0x9F5C, 0x6B47, 0x9F5B, 0x6B49, 0x9F5D,
- 0x6B4C, 0x89CC, 0x6B4E, 0x9256, 0x6B50, 0x9F5E, 0x6B53, 0x8ABD,
- 0x6B54, 0x9F60, 0x6B59, 0x9F5F, 0x6B5B, 0x9F61, 0x6B5F, 0x9F62,
- 0x6B61, 0x9F63, 0x6B62, 0x8E7E, 0x6B63, 0x90B3, 0x6B64, 0x8D9F,
- 0x6B66, 0x9590, 0x6B69, 0x95E0, 0x6B6A, 0x9863, 0x6B6F, 0x8E95,
- 0x6B73, 0x8DCE, 0x6B74, 0x97F0, 0x6B78, 0x9F64, 0x6B79, 0x9F65,
- 0x6B7B, 0x8E80, 0x6B7F, 0x9F66, 0x6B80, 0x9F67, 0x6B83, 0x9F69,
- 0x6B84, 0x9F68, 0x6B86, 0x9677, 0x6B89, 0x8F7D, 0x6B8A, 0x8EEA,
- 0x6B8B, 0x8E63, 0x6B8D, 0x9F6A, 0x6B95, 0x9F6C, 0x6B96, 0x9042,
- 0x6B98, 0x9F6B, 0x6B9E, 0x9F6D, 0x6BA4, 0x9F6E, 0x6BAA, 0x9F6F,
- 0x6BAB, 0x9F70, 0x6BAF, 0x9F71, 0x6BB1, 0x9F73, 0x6BB2, 0x9F72,
- 0x6BB3, 0x9F74, 0x6BB4, 0x89A3, 0x6BB5, 0x9269, 0x6BB7, 0x9F75,
- 0x6BBA, 0x8E45, 0x6BBB, 0x8A6B, 0x6BBC, 0x9F76, 0x6BBF, 0x9361,
- 0x6BC0, 0x9ACA, 0x6BC5, 0x8B42, 0x6BC6, 0x9F77, 0x6BCB, 0x9F78,
- 0x6BCD, 0x95EA, 0x6BCE, 0x9688, 0x6BD2, 0x93C5, 0x6BD3, 0x9F79,
- 0x6BD4, 0x94E4, 0x6BD6, 0xFAF4, 0x6BD8, 0x94F9, 0x6BDB, 0x96D1,
- 0x6BDF, 0x9F7A, 0x6BEB, 0x9F7C, 0x6BEC, 0x9F7B, 0x6BEF, 0x9F7E,
- 0x6BF3, 0x9F7D, 0x6C08, 0x9F81, 0x6C0F, 0x8E81, 0x6C11, 0x96AF,
- 0x6C13, 0x9F82, 0x6C14, 0x9F83, 0x6C17, 0x8B43, 0x6C1B, 0x9F84,
- 0x6C23, 0x9F86, 0x6C24, 0x9F85, 0x6C34, 0x9085, 0x6C37, 0x9558,
- 0x6C38, 0x8969, 0x6C3E, 0x94C3, 0x6C3F, 0xFAF5, 0x6C40, 0x92F3,
- 0x6C41, 0x8F60, 0x6C42, 0x8B81, 0x6C4E, 0x94C4, 0x6C50, 0x8EAC,
- 0x6C55, 0x9F88, 0x6C57, 0x8ABE, 0x6C5A, 0x8998, 0x6C5C, 0xFAF6,
- 0x6C5D, 0x93F0, 0x6C5E, 0x9F87, 0x6C5F, 0x8D5D, 0x6C60, 0x9272,
- 0x6C62, 0x9F89, 0x6C68, 0x9F91, 0x6C6A, 0x9F8A, 0x6C6F, 0xFAF8,
- 0x6C70, 0x91BF, 0x6C72, 0x8B82, 0x6C73, 0x9F92, 0x6C7A, 0x8C88,
- 0x6C7D, 0x8B44, 0x6C7E, 0x9F90, 0x6C81, 0x9F8E, 0x6C82, 0x9F8B,
- 0x6C83, 0x9780, 0x6C86, 0xFAF7, 0x6C88, 0x92BE, 0x6C8C, 0x93D7,
- 0x6C8D, 0x9F8C, 0x6C90, 0x9F94, 0x6C92, 0x9F93, 0x6C93, 0x8C42,
- 0x6C96, 0x89AB, 0x6C99, 0x8DB9, 0x6C9A, 0x9F8D, 0x6C9B, 0x9F8F,
- 0x6CA1, 0x9676, 0x6CA2, 0x91F2, 0x6CAB, 0x9697, 0x6CAE, 0x9F9C,
- 0x6CB1, 0x9F9D, 0x6CB3, 0x89CD, 0x6CB8, 0x95A6, 0x6CB9, 0x96FB,
- 0x6CBA, 0x9F9F, 0x6CBB, 0x8EA1, 0x6CBC, 0x8FC0, 0x6CBD, 0x9F98,
- 0x6CBE, 0x9F9E, 0x6CBF, 0x8988, 0x6CC1, 0x8BB5, 0x6CC4, 0x9F95,
- 0x6CC5, 0x9F9A, 0x6CC9, 0x90F2, 0x6CCA, 0x9491, 0x6CCC, 0x94E5,
- 0x6CD3, 0x9F97, 0x6CD5, 0x9640, 0x6CD7, 0x9F99, 0x6CD9, 0x9FA2,
- 0x6CDA, 0xFAF9, 0x6CDB, 0x9FA0, 0x6CDD, 0x9F9B, 0x6CE1, 0x9641,
- 0x6CE2, 0x9467, 0x6CE3, 0x8B83, 0x6CE5, 0x9344, 0x6CE8, 0x928D,
- 0x6CEA, 0x9FA3, 0x6CEF, 0x9FA1, 0x6CF0, 0x91D7, 0x6CF1, 0x9F96,
- 0x6CF3, 0x896A, 0x6D04, 0xFAFA, 0x6D0B, 0x976D, 0x6D0C, 0x9FAE,
- 0x6D12, 0x9FAD, 0x6D17, 0x90F4, 0x6D19, 0x9FAA, 0x6D1B, 0x978C,
- 0x6D1E, 0x93B4, 0x6D1F, 0x9FA4, 0x6D25, 0x92C3, 0x6D29, 0x896B,
- 0x6D2A, 0x8D5E, 0x6D2B, 0x9FA7, 0x6D32, 0x8F46, 0x6D33, 0x9FAC,
- 0x6D35, 0x9FAB, 0x6D36, 0x9FA6, 0x6D38, 0x9FA9, 0x6D3B, 0x8A88,
- 0x6D3D, 0x9FA8, 0x6D3E, 0x9468, 0x6D41, 0x97AC, 0x6D44, 0x8FF2,
- 0x6D45, 0x90F3, 0x6D59, 0x9FB4, 0x6D5A, 0x9FB2, 0x6D5C, 0x956C,
- 0x6D63, 0x9FAF, 0x6D64, 0x9FB1, 0x6D66, 0x8959, 0x6D69, 0x8D5F,
- 0x6D6A, 0x9851, 0x6D6C, 0x8A5C, 0x6D6E, 0x9582, 0x6D6F, 0xFAFC,
- 0x6D74, 0x9781, 0x6D77, 0x8A43, 0x6D78, 0x905A, 0x6D79, 0x9FB3,
- 0x6D85, 0x9FB8, 0x6D87, 0xFAFB, 0x6D88, 0x8FC1, 0x6D8C, 0x974F,
- 0x6D8E, 0x9FB5, 0x6D93, 0x9FB0, 0x6D95, 0x9FB6, 0x6D96, 0xFB40,
- 0x6D99, 0x97DC, 0x6D9B, 0x9393, 0x6D9C, 0x93C0, 0x6DAC, 0xFB41,
- 0x6DAF, 0x8A55, 0x6DB2, 0x8974, 0x6DB5, 0x9FBC, 0x6DB8, 0x9FBF,
- 0x6DBC, 0x97C1, 0x6DC0, 0x9784, 0x6DC5, 0x9FC6, 0x6DC6, 0x9FC0,
- 0x6DC7, 0x9FBD, 0x6DCB, 0x97D2, 0x6DCC, 0x9FC3, 0x6DCF, 0xFB42,
- 0x6DD1, 0x8F69, 0x6DD2, 0x9FC5, 0x6DD5, 0x9FCA, 0x6DD8, 0x9391,
- 0x6DD9, 0x9FC8, 0x6DDE, 0x9FC2, 0x6DE1, 0x9257, 0x6DE4, 0x9FC9,
- 0x6DE6, 0x9FBE, 0x6DE8, 0x9FC4, 0x6DEA, 0x9FCB, 0x6DEB, 0x88FA,
- 0x6DEC, 0x9FC1, 0x6DEE, 0x9FCC, 0x6DF1, 0x905B, 0x6DF2, 0xFB44,
- 0x6DF3, 0x8F7E, 0x6DF5, 0x95A3, 0x6DF7, 0x8DAC, 0x6DF8, 0xFB43,
- 0x6DF9, 0x9FB9, 0x6DFA, 0x9FC7, 0x6DFB, 0x9359, 0x6DFC, 0xFB45,
- 0x6E05, 0x90B4, 0x6E07, 0x8A89, 0x6E08, 0x8DCF, 0x6E09, 0x8FC2,
- 0x6E0A, 0x9FBB, 0x6E0B, 0x8F61, 0x6E13, 0x8C6B, 0x6E15, 0x9FBA,
- 0x6E19, 0x9FD0, 0x6E1A, 0x8F8D, 0x6E1B, 0x8CB8, 0x6E1D, 0x9FDF,
- 0x6E1F, 0x9FD9, 0x6E20, 0x8B94, 0x6E21, 0x936E, 0x6E23, 0x9FD4,
- 0x6E24, 0x9FDD, 0x6E25, 0x88AD, 0x6E26, 0x8951, 0x6E27, 0xFB48,
- 0x6E29, 0x89B7, 0x6E2B, 0x9FD6, 0x6E2C, 0x91AA, 0x6E2D, 0x9FCD,
- 0x6E2E, 0x9FCF, 0x6E2F, 0x8D60, 0x6E38, 0x9FE0, 0x6E39, 0xFB46,
- 0x6E3A, 0x9FDB, 0x6E3C, 0xFB49, 0x6E3E, 0x9FD3, 0x6E43, 0x9FDA,
- 0x6E4A, 0x96A9, 0x6E4D, 0x9FD8, 0x6E4E, 0x9FDC, 0x6E56, 0x8CCE,
- 0x6E58, 0x8FC3, 0x6E5B, 0x9258, 0x6E5C, 0xFB47, 0x6E5F, 0x9FD2,
- 0x6E67, 0x974E, 0x6E6B, 0x9FD5, 0x6E6E, 0x9FCE, 0x6E6F, 0x9392,
- 0x6E72, 0x9FD1, 0x6E76, 0x9FD7, 0x6E7E, 0x9870, 0x6E7F, 0x8EBC,
- 0x6E80, 0x969E, 0x6E82, 0x9FE1, 0x6E8C, 0x94AC, 0x6E8F, 0x9FED,
- 0x6E90, 0x8CB9, 0x6E96, 0x8F80, 0x6E98, 0x9FE3, 0x6E9C, 0x97AD,
- 0x6E9D, 0x8D61, 0x6E9F, 0x9FF0, 0x6EA2, 0x88EC, 0x6EA5, 0x9FEE,
- 0x6EAA, 0x9FE2, 0x6EAF, 0x9FE8, 0x6EB2, 0x9FEA, 0x6EB6, 0x976E,
- 0x6EB7, 0x9FE5, 0x6EBA, 0x934D, 0x6EBD, 0x9FE7, 0x6EBF, 0xFB4A,
- 0x6EC2, 0x9FEF, 0x6EC4, 0x9FE9, 0x6EC5, 0x96C5, 0x6EC9, 0x9FE4,
- 0x6ECB, 0x8EA0, 0x6ECC, 0x9FFC, 0x6ED1, 0x8A8A, 0x6ED3, 0x9FE6,
- 0x6ED4, 0x9FEB, 0x6ED5, 0x9FEC, 0x6EDD, 0x91EA, 0x6EDE, 0x91D8,
- 0x6EEC, 0x9FF4, 0x6EEF, 0x9FFA, 0x6EF2, 0x9FF8, 0x6EF4, 0x9348,
- 0x6EF7, 0xE042, 0x6EF8, 0x9FF5, 0x6EFE, 0x9FF6, 0x6EFF, 0x9FDE,
- 0x6F01, 0x8B99, 0x6F02, 0x9559, 0x6F06, 0x8EBD, 0x6F09, 0x8D97,
- 0x6F0F, 0x9852, 0x6F11, 0x9FF2, 0x6F13, 0xE041, 0x6F14, 0x8989,
- 0x6F15, 0x9186, 0x6F20, 0x9499, 0x6F22, 0x8ABF, 0x6F23, 0x97F8,
- 0x6F2B, 0x969F, 0x6F2C, 0x92D0, 0x6F31, 0x9FF9, 0x6F32, 0x9FFB,
- 0x6F38, 0x9151, 0x6F3E, 0xE040, 0x6F3F, 0x9FF7, 0x6F41, 0x9FF1,
- 0x6F45, 0x8AC1, 0x6F54, 0x8C89, 0x6F58, 0xE04E, 0x6F5B, 0xE049,
- 0x6F5C, 0x90F6, 0x6F5F, 0x8A83, 0x6F64, 0x8F81, 0x6F66, 0xE052,
- 0x6F6D, 0xE04B, 0x6F6E, 0x92AA, 0x6F6F, 0xE048, 0x6F70, 0x92D7,
- 0x6F74, 0xE06B, 0x6F78, 0xE045, 0x6F7A, 0xE044, 0x6F7C, 0xE04D,
- 0x6F80, 0xE047, 0x6F81, 0xE046, 0x6F82, 0xE04C, 0x6F84, 0x909F,
- 0x6F86, 0xE043, 0x6F88, 0xFB4B, 0x6F8E, 0xE04F, 0x6F91, 0xE050,
- 0x6F97, 0x8AC0, 0x6FA1, 0xE055, 0x6FA3, 0xE054, 0x6FA4, 0xE056,
- 0x6FAA, 0xE059, 0x6FB1, 0x9362, 0x6FB3, 0xE053, 0x6FB5, 0xFB4C,
- 0x6FB9, 0xE057, 0x6FC0, 0x8C83, 0x6FC1, 0x91F7, 0x6FC2, 0xE051,
- 0x6FC3, 0x945A, 0x6FC6, 0xE058, 0x6FD4, 0xE05D, 0x6FD5, 0xE05B,
- 0x6FD8, 0xE05E, 0x6FDB, 0xE061, 0x6FDF, 0xE05A, 0x6FE0, 0x8D8A,
- 0x6FE1, 0x9447, 0x6FE4, 0x9FB7, 0x6FEB, 0x9794, 0x6FEC, 0xE05C,
- 0x6FEE, 0xE060, 0x6FEF, 0x91F3, 0x6FF1, 0xE05F, 0x6FF3, 0xE04A,
- 0x6FF5, 0xFB4D, 0x6FF6, 0xE889, 0x6FFA, 0xE064, 0x6FFE, 0xE068,
- 0x7001, 0xE066, 0x7005, 0xFB4E, 0x7007, 0xFB4F, 0x7009, 0xE062,
- 0x700B, 0xE063, 0x700F, 0xE067, 0x7011, 0xE065, 0x7015, 0x956D,
- 0x7018, 0xE06D, 0x701A, 0xE06A, 0x701B, 0xE069, 0x701D, 0xE06C,
- 0x701E, 0x93D2, 0x701F, 0xE06E, 0x7026, 0x9295, 0x7027, 0x91EB,
- 0x7028, 0xFB50, 0x702C, 0x90A3, 0x7030, 0xE06F, 0x7032, 0xE071,
- 0x703E, 0xE070, 0x704C, 0x9FF3, 0x7051, 0xE072, 0x7058, 0x93E5,
- 0x7063, 0xE073, 0x706B, 0x89CE, 0x706F, 0x9394, 0x7070, 0x8A44,
- 0x7078, 0x8B84, 0x707C, 0x8EDC, 0x707D, 0x8DD0, 0x7085, 0xFB51,
- 0x7089, 0x9846, 0x708A, 0x9086, 0x708E, 0x898A, 0x7092, 0xE075,
- 0x7099, 0xE074, 0x70AB, 0xFB52, 0x70AC, 0xE078, 0x70AD, 0x9259,
- 0x70AE, 0xE07B, 0x70AF, 0xE076, 0x70B3, 0xE07A, 0x70B8, 0xE079,
- 0x70B9, 0x935F, 0x70BA, 0x88D7, 0x70BB, 0xFA62, 0x70C8, 0x97F3,
- 0x70CB, 0xE07D, 0x70CF, 0x8947, 0x70D9, 0xE080, 0x70DD, 0xE07E,
- 0x70DF, 0xE07C, 0x70F1, 0xE077, 0x70F9, 0x9642, 0x70FD, 0xE082,
- 0x7104, 0xFB54, 0x7109, 0xE081, 0x710F, 0xFB53, 0x7114, 0x898B,
- 0x7119, 0xE084, 0x711A, 0x95B0, 0x711C, 0xE083, 0x7121, 0x96B3,
- 0x7126, 0x8FC5, 0x7136, 0x9152, 0x713C, 0x8FC4, 0x7146, 0xFB56,
- 0x7147, 0xFB57, 0x7149, 0x97F9, 0x714C, 0xE08A, 0x714E, 0x90F7,
- 0x7155, 0xE086, 0x7156, 0xE08B, 0x7159, 0x898C, 0x715C, 0xFB55,
- 0x7162, 0xE089, 0x7164, 0x9481, 0x7165, 0xE085, 0x7166, 0xE088,
- 0x7167, 0x8FC6, 0x7169, 0x94CF, 0x716C, 0xE08C, 0x716E, 0x8ECF,
- 0x717D, 0x90F8, 0x7184, 0xE08F, 0x7188, 0xE087, 0x718A, 0x8C46,
- 0x718F, 0xE08D, 0x7194, 0x976F, 0x7195, 0xE090, 0x7199, 0xEAA4,
- 0x719F, 0x8F6E, 0x71A8, 0xE091, 0x71AC, 0xE092, 0x71B1, 0x944D,
- 0x71B9, 0xE094, 0x71BE, 0xE095, 0x71C1, 0xFB59, 0x71C3, 0x9452,
- 0x71C8, 0x9395, 0x71C9, 0xE097, 0x71CE, 0xE099, 0x71D0, 0x97D3,
- 0x71D2, 0xE096, 0x71D4, 0xE098, 0x71D5, 0x898D, 0x71D7, 0xE093,
- 0x71DF, 0x9A7A, 0x71E0, 0xE09A, 0x71E5, 0x9187, 0x71E6, 0x8E57,
- 0x71E7, 0xE09C, 0x71EC, 0xE09B, 0x71ED, 0x9043, 0x71EE, 0x99D7,
- 0x71F5, 0xE09D, 0x71F9, 0xE09F, 0x71FB, 0xE08E, 0x71FC, 0xE09E,
- 0x71FE, 0xFB5A, 0x71FF, 0xE0A0, 0x7206, 0x949A, 0x720D, 0xE0A1,
- 0x7210, 0xE0A2, 0x721B, 0xE0A3, 0x7228, 0xE0A4, 0x722A, 0x92DC,
- 0x722C, 0xE0A6, 0x722D, 0xE0A5, 0x7230, 0xE0A7, 0x7232, 0xE0A8,
- 0x7235, 0x8EDD, 0x7236, 0x9583, 0x723A, 0x96EA, 0x723B, 0xE0A9,
- 0x723C, 0xE0AA, 0x723D, 0x9175, 0x723E, 0x8EA2, 0x723F, 0xE0AB,
- 0x7240, 0xE0AC, 0x7246, 0xE0AD, 0x7247, 0x95D0, 0x7248, 0x94C5,
- 0x724B, 0xE0AE, 0x724C, 0x9476, 0x7252, 0x92AB, 0x7258, 0xE0AF,
- 0x7259, 0x89E5, 0x725B, 0x8B8D, 0x725D, 0x96C4, 0x725F, 0x96B4,
- 0x7261, 0x89B2, 0x7262, 0x9853, 0x7267, 0x9671, 0x7269, 0x95A8,
- 0x7272, 0x90B5, 0x7274, 0xE0B0, 0x7279, 0x93C1, 0x727D, 0x8CA1,
- 0x727E, 0xE0B1, 0x7280, 0x8DD2, 0x7281, 0xE0B3, 0x7282, 0xE0B2,
- 0x7287, 0xE0B4, 0x7292, 0xE0B5, 0x7296, 0xE0B6, 0x72A0, 0x8B5D,
- 0x72A2, 0xE0B7, 0x72A7, 0xE0B8, 0x72AC, 0x8CA2, 0x72AF, 0x94C6,
- 0x72B1, 0xFB5B, 0x72B2, 0xE0BA, 0x72B6, 0x8FF3, 0x72B9, 0xE0B9,
- 0x72BE, 0xFB5C, 0x72C2, 0x8BB6, 0x72C3, 0xE0BB, 0x72C4, 0xE0BD,
- 0x72C6, 0xE0BC, 0x72CE, 0xE0BE, 0x72D0, 0x8CCF, 0x72D2, 0xE0BF,
- 0x72D7, 0x8BE7, 0x72D9, 0x915F, 0x72DB, 0x8D9D, 0x72E0, 0xE0C1,
- 0x72E1, 0xE0C2, 0x72E2, 0xE0C0, 0x72E9, 0x8EEB, 0x72EC, 0x93C6,
- 0x72ED, 0x8BB7, 0x72F7, 0xE0C4, 0x72F8, 0x924B, 0x72F9, 0xE0C3,
- 0x72FC, 0x9854, 0x72FD, 0x9482, 0x730A, 0xE0C7, 0x7316, 0xE0C9,
- 0x7317, 0xE0C6, 0x731B, 0x96D2, 0x731C, 0xE0C8, 0x731D, 0xE0CA,
- 0x731F, 0x97C2, 0x7324, 0xFB5D, 0x7325, 0xE0CE, 0x7329, 0xE0CD,
- 0x732A, 0x9296, 0x732B, 0x944C, 0x732E, 0x8CA3, 0x732F, 0xE0CC,
- 0x7334, 0xE0CB, 0x7336, 0x9750, 0x7337, 0x9751, 0x733E, 0xE0CF,
- 0x733F, 0x898E, 0x7344, 0x8D96, 0x7345, 0x8E82, 0x734E, 0xE0D0,
- 0x734F, 0xE0D1, 0x7357, 0xE0D3, 0x7363, 0x8F62, 0x7368, 0xE0D5,
- 0x736A, 0xE0D4, 0x7370, 0xE0D6, 0x7372, 0x8A6C, 0x7375, 0xE0D8,
- 0x7377, 0xFB5F, 0x7378, 0xE0D7, 0x737A, 0xE0DA, 0x737B, 0xE0D9,
- 0x7384, 0x8CBA, 0x7387, 0x97A6, 0x7389, 0x8BCA, 0x738B, 0x89A4,
- 0x7396, 0x8BE8, 0x73A9, 0x8ADF, 0x73B2, 0x97E6, 0x73B3, 0xE0DC,
- 0x73BB, 0xE0DE, 0x73BD, 0xFB60, 0x73C0, 0xE0DF, 0x73C2, 0x89CF,
- 0x73C8, 0xE0DB, 0x73C9, 0xFB61, 0x73CA, 0x8E58, 0x73CD, 0x92BF,
- 0x73CE, 0xE0DD, 0x73D2, 0xFB64, 0x73D6, 0xFB62, 0x73DE, 0xE0E2,
- 0x73E0, 0x8EEC, 0x73E3, 0xFB63, 0x73E5, 0xE0E0, 0x73EA, 0x8C5D,
- 0x73ED, 0x94C7, 0x73EE, 0xE0E1, 0x73F1, 0xE0FC, 0x73F5, 0xFB66,
- 0x73F8, 0xE0E7, 0x73FE, 0x8CBB, 0x7403, 0x8B85, 0x7405, 0xE0E4,
- 0x7406, 0x979D, 0x7407, 0xFB65, 0x7409, 0x97AE, 0x7422, 0x91F4,
- 0x7425, 0xE0E6, 0x7426, 0xFB67, 0x7429, 0xFB69, 0x742A, 0xFB68,
- 0x742E, 0xFB6A, 0x7432, 0xE0E8, 0x7433, 0x97D4, 0x7434, 0x8BD5,
- 0x7435, 0x94FA, 0x7436, 0x9469, 0x743A, 0xE0E9, 0x743F, 0xE0EB,
- 0x7441, 0xE0EE, 0x7455, 0xE0EA, 0x7459, 0xE0ED, 0x745A, 0x8CE8,
- 0x745B, 0x896C, 0x745C, 0xE0EF, 0x745E, 0x9090, 0x745F, 0xE0EC,
- 0x7460, 0x97DA, 0x7462, 0xFB6B, 0x7463, 0xE0F2, 0x7464, 0xEAA2,
- 0x7469, 0xE0F0, 0x746A, 0xE0F3, 0x746F, 0xE0E5, 0x7470, 0xE0F1,
- 0x7473, 0x8DBA, 0x7476, 0xE0F4, 0x747E, 0xE0F5, 0x7483, 0x979E,
- 0x7489, 0xFB6C, 0x748B, 0xE0F6, 0x749E, 0xE0F7, 0x749F, 0xFB6D,
- 0x74A2, 0xE0E3, 0x74A7, 0xE0F8, 0x74B0, 0x8AC2, 0x74BD, 0x8EA3,
- 0x74CA, 0xE0F9, 0x74CF, 0xE0FA, 0x74D4, 0xE0FB, 0x74DC, 0x895A,
- 0x74E0, 0xE140, 0x74E2, 0x955A, 0x74E3, 0xE141, 0x74E6, 0x8AA2,
- 0x74E7, 0xE142, 0x74E9, 0xE143, 0x74EE, 0xE144, 0x74F0, 0xE146,
- 0x74F1, 0xE147, 0x74F2, 0xE145, 0x74F6, 0x9572, 0x74F7, 0xE149,
- 0x74F8, 0xE148, 0x7501, 0xFB6E, 0x7503, 0xE14B, 0x7504, 0xE14A,
- 0x7505, 0xE14C, 0x750C, 0xE14D, 0x750D, 0xE14F, 0x750E, 0xE14E,
- 0x7511, 0x8D99, 0x7513, 0xE151, 0x7515, 0xE150, 0x7518, 0x8AC3,
- 0x751A, 0x9072, 0x751C, 0x935B, 0x751E, 0xE152, 0x751F, 0x90B6,
- 0x7523, 0x8E59, 0x7525, 0x8999, 0x7526, 0xE153, 0x7528, 0x9770,
- 0x752B, 0x95E1, 0x752C, 0xE154, 0x752F, 0xFAA8, 0x7530, 0x9363,
- 0x7531, 0x9752, 0x7532, 0x8D62, 0x7533, 0x905C, 0x7537, 0x926A,
- 0x7538, 0x99B2, 0x753A, 0x92AC, 0x753B, 0x89E6, 0x753C, 0xE155,
- 0x7544, 0xE156, 0x7546, 0xE15B, 0x7549, 0xE159, 0x754A, 0xE158,
- 0x754B, 0x9DC0, 0x754C, 0x8A45, 0x754D, 0xE157, 0x754F, 0x88D8,
- 0x7551, 0x94A8, 0x7554, 0x94C8, 0x7559, 0x97AF, 0x755A, 0xE15C,
- 0x755B, 0xE15A, 0x755C, 0x927B, 0x755D, 0x90A4, 0x7560, 0x94A9,
- 0x7562, 0x954C, 0x7564, 0xE15E, 0x7565, 0x97AA, 0x7566, 0x8C6C,
- 0x7567, 0xE15F, 0x7569, 0xE15D, 0x756A, 0x94D4, 0x756B, 0xE160,
- 0x756D, 0xE161, 0x756F, 0xFB6F, 0x7570, 0x88D9, 0x7573, 0x8FF4,
- 0x7574, 0xE166, 0x7576, 0xE163, 0x7577, 0x93EB, 0x7578, 0xE162,
- 0x757F, 0x8B45, 0x7582, 0xE169, 0x7586, 0xE164, 0x7587, 0xE165,
- 0x7589, 0xE168, 0x758A, 0xE167, 0x758B, 0x9544, 0x758E, 0x9161,
- 0x758F, 0x9160, 0x7591, 0x8B5E, 0x7594, 0xE16A, 0x759A, 0xE16B,
- 0x759D, 0xE16C, 0x75A3, 0xE16E, 0x75A5, 0xE16D, 0x75AB, 0x8975,
- 0x75B1, 0xE176, 0x75B2, 0x94E6, 0x75B3, 0xE170, 0x75B5, 0xE172,
- 0x75B8, 0xE174, 0x75B9, 0x905D, 0x75BC, 0xE175, 0x75BD, 0xE173,
- 0x75BE, 0x8EBE, 0x75C2, 0xE16F, 0x75C3, 0xE171, 0x75C5, 0x9561,
- 0x75C7, 0x8FC7, 0x75CA, 0xE178, 0x75CD, 0xE177, 0x75D2, 0xE179,
- 0x75D4, 0x8EA4, 0x75D5, 0x8DAD, 0x75D8, 0x9397, 0x75D9, 0xE17A,
- 0x75DB, 0x92C9, 0x75DE, 0xE17C, 0x75E2, 0x979F, 0x75E3, 0xE17B,
- 0x75E9, 0x9189, 0x75F0, 0xE182, 0x75F2, 0xE184, 0x75F3, 0xE185,
- 0x75F4, 0x9273, 0x75FA, 0xE183, 0x75FC, 0xE180, 0x75FE, 0xE17D,
- 0x75FF, 0xE17E, 0x7601, 0xE181, 0x7609, 0xE188, 0x760B, 0xE186,
- 0x760D, 0xE187, 0x761F, 0xE189, 0x7620, 0xE18B, 0x7621, 0xE18C,
- 0x7622, 0xE18D, 0x7624, 0xE18E, 0x7627, 0xE18A, 0x7630, 0xE190,
- 0x7634, 0xE18F, 0x763B, 0xE191, 0x7642, 0x97C3, 0x7646, 0xE194,
- 0x7647, 0xE192, 0x7648, 0xE193, 0x764C, 0x8AE0, 0x7652, 0x96FC,
- 0x7656, 0x95C8, 0x7658, 0xE196, 0x765C, 0xE195, 0x7661, 0xE197,
- 0x7662, 0xE198, 0x7667, 0xE19C, 0x7668, 0xE199, 0x7669, 0xE19A,
- 0x766A, 0xE19B, 0x766C, 0xE19D, 0x7670, 0xE19E, 0x7672, 0xE19F,
- 0x7676, 0xE1A0, 0x7678, 0xE1A1, 0x767A, 0x94AD, 0x767B, 0x936F,
- 0x767C, 0xE1A2, 0x767D, 0x9492, 0x767E, 0x9553, 0x7680, 0xE1A3,
- 0x7682, 0xFB70, 0x7683, 0xE1A4, 0x7684, 0x9349, 0x7686, 0x8A46,
- 0x7687, 0x8D63, 0x7688, 0xE1A5, 0x768B, 0xE1A6, 0x768E, 0xE1A7,
- 0x7690, 0x8E48, 0x7693, 0xE1A9, 0x7696, 0xE1A8, 0x7699, 0xE1AA,
- 0x769A, 0xE1AB, 0x769B, 0xFB73, 0x769C, 0xFB71, 0x769E, 0xFB72,
- 0x76A6, 0xFB74, 0x76AE, 0x94E7, 0x76B0, 0xE1AC, 0x76B4, 0xE1AD,
- 0x76B7, 0xEA89, 0x76B8, 0xE1AE, 0x76B9, 0xE1AF, 0x76BA, 0xE1B0,
- 0x76BF, 0x8E4D, 0x76C2, 0xE1B1, 0x76C3, 0x9475, 0x76C6, 0x967E,
- 0x76C8, 0x896D, 0x76CA, 0x8976, 0x76CD, 0xE1B2, 0x76D2, 0xE1B4,
- 0x76D6, 0xE1B3, 0x76D7, 0x9390, 0x76DB, 0x90B7, 0x76DC, 0x9F58,
- 0x76DE, 0xE1B5, 0x76DF, 0x96BF, 0x76E1, 0xE1B6, 0x76E3, 0x8AC4,
- 0x76E4, 0x94D5, 0x76E5, 0xE1B7, 0x76E7, 0xE1B8, 0x76EA, 0xE1B9,
- 0x76EE, 0x96DA, 0x76F2, 0x96D3, 0x76F4, 0x92BC, 0x76F8, 0x918A,
- 0x76FB, 0xE1BB, 0x76FE, 0x8F82, 0x7701, 0x8FC8, 0x7704, 0xE1BE,
- 0x7707, 0xE1BD, 0x7708, 0xE1BC, 0x7709, 0x94FB, 0x770B, 0x8AC5,
- 0x770C, 0x8CA7, 0x771B, 0xE1C4, 0x771E, 0xE1C1, 0x771F, 0x905E,
- 0x7720, 0x96B0, 0x7724, 0xE1C0, 0x7725, 0xE1C2, 0x7726, 0xE1C3,
- 0x7729, 0xE1BF, 0x7737, 0xE1C5, 0x7738, 0xE1C6, 0x773A, 0x92AD,
- 0x773C, 0x8AE1, 0x7740, 0x9285, 0x7746, 0xFB76, 0x7747, 0xE1C7,
- 0x775A, 0xE1C8, 0x775B, 0xE1CB, 0x7761, 0x9087, 0x7763, 0x93C2,
- 0x7765, 0xE1CC, 0x7766, 0x9672, 0x7768, 0xE1C9, 0x776B, 0xE1CA,
- 0x7779, 0xE1CF, 0x777E, 0xE1CE, 0x777F, 0xE1CD, 0x778B, 0xE1D1,
- 0x778E, 0xE1D0, 0x7791, 0xE1D2, 0x779E, 0xE1D4, 0x77A0, 0xE1D3,
- 0x77A5, 0x95CB, 0x77AC, 0x8F75, 0x77AD, 0x97C4, 0x77B0, 0xE1D5,
- 0x77B3, 0x93B5, 0x77B6, 0xE1D6, 0x77B9, 0xE1D7, 0x77BB, 0xE1DB,
- 0x77BC, 0xE1D9, 0x77BD, 0xE1DA, 0x77BF, 0xE1D8, 0x77C7, 0xE1DC,
- 0x77CD, 0xE1DD, 0x77D7, 0xE1DE, 0x77DA, 0xE1DF, 0x77DB, 0x96B5,
- 0x77DC, 0xE1E0, 0x77E2, 0x96EE, 0x77E3, 0xE1E1, 0x77E5, 0x926D,
- 0x77E7, 0x948A, 0x77E9, 0x8BE9, 0x77ED, 0x925A, 0x77EE, 0xE1E2,
- 0x77EF, 0x8BB8, 0x77F3, 0x90CE, 0x77FC, 0xE1E3, 0x7802, 0x8DBB,
- 0x780C, 0xE1E4, 0x7812, 0xE1E5, 0x7814, 0x8CA4, 0x7815, 0x8DD3,
- 0x7820, 0xE1E7, 0x7821, 0xFB78, 0x7825, 0x9375, 0x7826, 0x8DD4,
- 0x7827, 0x8B6D, 0x7832, 0x9643, 0x7834, 0x946A, 0x783A, 0x9376,
- 0x783F, 0x8D7B, 0x7845, 0xE1E9, 0x784E, 0xFB79, 0x785D, 0x8FC9,
- 0x7864, 0xFB7A, 0x786B, 0x97B0, 0x786C, 0x8D64, 0x786F, 0x8CA5,
- 0x7872, 0x94A1, 0x7874, 0xE1EB, 0x787A, 0xFB7B, 0x787C, 0xE1ED,
- 0x7881, 0x8CE9, 0x7886, 0xE1EC, 0x7887, 0x92F4, 0x788C, 0xE1EF,
- 0x788D, 0x8A56, 0x788E, 0xE1EA, 0x7891, 0x94E8, 0x7893, 0x894F,
- 0x7895, 0x8DEA, 0x7897, 0x9871, 0x789A, 0xE1EE, 0x78A3, 0xE1F0,
- 0x78A7, 0x95C9, 0x78A9, 0x90D7, 0x78AA, 0xE1F2, 0x78AF, 0xE1F3,
- 0x78B5, 0xE1F1, 0x78BA, 0x8A6D, 0x78BC, 0xE1F9, 0x78BE, 0xE1F8,
- 0x78C1, 0x8EA5, 0x78C5, 0xE1FA, 0x78C6, 0xE1F5, 0x78CA, 0xE1FB,
- 0x78CB, 0xE1F6, 0x78D0, 0x94D6, 0x78D1, 0xE1F4, 0x78D4, 0xE1F7,
- 0x78DA, 0xE241, 0x78E7, 0xE240, 0x78E8, 0x9681, 0x78EC, 0xE1FC,
- 0x78EF, 0x88E9, 0x78F4, 0xE243, 0x78FD, 0xE242, 0x7901, 0x8FCA,
- 0x7907, 0xE244, 0x790E, 0x9162, 0x7911, 0xE246, 0x7912, 0xE245,
- 0x7919, 0xE247, 0x7926, 0xE1E6, 0x792A, 0xE1E8, 0x792B, 0xE249,
- 0x792C, 0xE248, 0x7930, 0xFB7C, 0x793A, 0x8EA6, 0x793C, 0x97E7,
- 0x793E, 0x8ED0, 0x7940, 0xE24A, 0x7941, 0x8C56, 0x7947, 0x8B5F,
- 0x7948, 0x8B46, 0x7949, 0x8E83, 0x7950, 0x9753, 0x7953, 0xE250,
- 0x7955, 0xE24F, 0x7956, 0x9163, 0x7957, 0xE24C, 0x795A, 0xE24E,
- 0x795D, 0x8F6A, 0x795E, 0x905F, 0x795F, 0xE24D, 0x7960, 0xE24B,
- 0x7962, 0x9449, 0x7965, 0x8FCB, 0x7968, 0x955B, 0x796D, 0x8DD5,
- 0x7977, 0x9398, 0x797A, 0xE251, 0x797F, 0xE252, 0x7980, 0xE268,
- 0x7981, 0x8BD6, 0x7984, 0x985C, 0x7985, 0x9154, 0x798A, 0xE253,
- 0x798D, 0x89D0, 0x798E, 0x92F5, 0x798F, 0x959F, 0x7994, 0xFB81,
- 0x799B, 0xFB83, 0x799D, 0xE254, 0x79A6, 0x8B9A, 0x79A7, 0xE255,
- 0x79AA, 0xE257, 0x79AE, 0xE258, 0x79B0, 0x9448, 0x79B3, 0xE259,
- 0x79B9, 0xE25A, 0x79BA, 0xE25B, 0x79BD, 0x8BD7, 0x79BE, 0x89D1,
- 0x79BF, 0x93C3, 0x79C0, 0x8F47, 0x79C1, 0x8E84, 0x79C9, 0xE25C,
- 0x79CB, 0x8F48, 0x79D1, 0x89C8, 0x79D2, 0x9562, 0x79D5, 0xE25D,
- 0x79D8, 0x94E9, 0x79DF, 0x9164, 0x79E1, 0xE260, 0x79E3, 0xE261,
- 0x79E4, 0x9489, 0x79E6, 0x9060, 0x79E7, 0xE25E, 0x79E9, 0x9281,
- 0x79EC, 0xE25F, 0x79F0, 0x8FCC, 0x79FB, 0x88DA, 0x7A00, 0x8B48,
- 0x7A08, 0xE262, 0x7A0B, 0x92F6, 0x7A0D, 0xE263, 0x7A0E, 0x90C5,
- 0x7A14, 0x96AB, 0x7A17, 0x9542, 0x7A18, 0xE264, 0x7A19, 0xE265,
- 0x7A1A, 0x9274, 0x7A1C, 0x97C5, 0x7A1F, 0xE267, 0x7A20, 0xE266,
- 0x7A2E, 0x8EED, 0x7A31, 0xE269, 0x7A32, 0x88EE, 0x7A37, 0xE26C,
- 0x7A3B, 0xE26A, 0x7A3C, 0x89D2, 0x7A3D, 0x8C6D, 0x7A3E, 0xE26B,
- 0x7A3F, 0x8D65, 0x7A40, 0x8D92, 0x7A42, 0x95E4, 0x7A43, 0xE26D,
- 0x7A46, 0x9673, 0x7A49, 0xE26F, 0x7A4D, 0x90CF, 0x7A4E, 0x896E,
- 0x7A4F, 0x89B8, 0x7A50, 0x88AA, 0x7A57, 0xE26E, 0x7A61, 0xE270,
- 0x7A62, 0xE271, 0x7A63, 0x8FF5, 0x7A69, 0xE272, 0x7A6B, 0x8A6E,
- 0x7A70, 0xE274, 0x7A74, 0x8C8A, 0x7A76, 0x8B86, 0x7A79, 0xE275,
- 0x7A7A, 0x8BF3, 0x7A7D, 0xE276, 0x7A7F, 0x90FA, 0x7A81, 0x93CB,
- 0x7A83, 0x90DE, 0x7A84, 0x8DF3, 0x7A88, 0xE277, 0x7A92, 0x9282,
- 0x7A93, 0x918B, 0x7A95, 0xE279, 0x7A96, 0xE27B, 0x7A97, 0xE278,
- 0x7A98, 0xE27A, 0x7A9F, 0x8C41, 0x7AA9, 0xE27C, 0x7AAA, 0x8C45,
- 0x7AAE, 0x8B87, 0x7AAF, 0x9771, 0x7AB0, 0xE27E, 0x7AB6, 0xE280,
- 0x7ABA, 0x894D, 0x7ABF, 0xE283, 0x7AC3, 0x8A96, 0x7AC4, 0xE282,
- 0x7AC5, 0xE281, 0x7AC7, 0xE285, 0x7AC8, 0xE27D, 0x7ACA, 0xE286,
- 0x7ACB, 0x97A7, 0x7ACD, 0xE287, 0x7ACF, 0xE288, 0x7AD1, 0xFB84,
- 0x7AD2, 0x9AF2, 0x7AD3, 0xE28A, 0x7AD5, 0xE289, 0x7AD9, 0xE28B,
- 0x7ADA, 0xE28C, 0x7ADC, 0x97B3, 0x7ADD, 0xE28D, 0x7ADF, 0xE8ED,
- 0x7AE0, 0x8FCD, 0x7AE1, 0xE28E, 0x7AE2, 0xE28F, 0x7AE3, 0x8F76,
- 0x7AE5, 0x93B6, 0x7AE6, 0xE290, 0x7AE7, 0xFB85, 0x7AEA, 0x9247,
- 0x7AEB, 0xFB87, 0x7AED, 0xE291, 0x7AEF, 0x925B, 0x7AF0, 0xE292,
- 0x7AF6, 0x8BA3, 0x7AF8, 0x995E, 0x7AF9, 0x927C, 0x7AFA, 0x8EB1,
- 0x7AFF, 0x8AC6, 0x7B02, 0xE293, 0x7B04, 0xE2A0, 0x7B06, 0xE296,
- 0x7B08, 0x8B88, 0x7B0A, 0xE295, 0x7B0B, 0xE2A2, 0x7B0F, 0xE294,
- 0x7B11, 0x8FCE, 0x7B18, 0xE298, 0x7B19, 0xE299, 0x7B1B, 0x934A,
- 0x7B1E, 0xE29A, 0x7B20, 0x8A7D, 0x7B25, 0x9079, 0x7B26, 0x9584,
- 0x7B28, 0xE29C, 0x7B2C, 0x91E6, 0x7B33, 0xE297, 0x7B35, 0xE29B,
- 0x7B36, 0xE29D, 0x7B39, 0x8DF9, 0x7B45, 0xE2A4, 0x7B46, 0x954D,
- 0x7B48, 0x94A4, 0x7B49, 0x9399, 0x7B4B, 0x8BD8, 0x7B4C, 0xE2A3,
- 0x7B4D, 0xE2A1, 0x7B4F, 0x94B3, 0x7B50, 0xE29E, 0x7B51, 0x927D,
- 0x7B52, 0x939B, 0x7B54, 0x939A, 0x7B56, 0x8DF4, 0x7B5D, 0xE2B6,
- 0x7B65, 0xE2A6, 0x7B67, 0xE2A8, 0x7B6C, 0xE2AB, 0x7B6E, 0xE2AC,
- 0x7B70, 0xE2A9, 0x7B71, 0xE2AA, 0x7B74, 0xE2A7, 0x7B75, 0xE2A5,
- 0x7B7A, 0xE29F, 0x7B86, 0x95CD, 0x7B87, 0x89D3, 0x7B8B, 0xE2B3,
- 0x7B8D, 0xE2B0, 0x7B8F, 0xE2B5, 0x7B92, 0xE2B4, 0x7B94, 0x9493,
- 0x7B95, 0x96A5, 0x7B97, 0x8E5A, 0x7B98, 0xE2AE, 0x7B99, 0xE2B7,
- 0x7B9A, 0xE2B2, 0x7B9C, 0xE2B1, 0x7B9D, 0xE2AD, 0x7B9E, 0xFB88,
- 0x7B9F, 0xE2AF, 0x7BA1, 0x8AC7, 0x7BAA, 0x925C, 0x7BAD, 0x90FB,
- 0x7BB1, 0x94A0, 0x7BB4, 0xE2BC, 0x7BB8, 0x94A2, 0x7BC0, 0x90DF,
- 0x7BC1, 0xE2B9, 0x7BC4, 0x94CD, 0x7BC6, 0xE2BD, 0x7BC7, 0x95D1,
- 0x7BC9, 0x927A, 0x7BCB, 0xE2B8, 0x7BCC, 0xE2BA, 0x7BCF, 0xE2BB,
- 0x7BDD, 0xE2BE, 0x7BE0, 0x8EC2, 0x7BE4, 0x93C4, 0x7BE5, 0xE2C3,
- 0x7BE6, 0xE2C2, 0x7BE9, 0xE2BF, 0x7BED, 0x9855, 0x7BF3, 0xE2C8,
- 0x7BF6, 0xE2CC, 0x7BF7, 0xE2C9, 0x7C00, 0xE2C5, 0x7C07, 0xE2C6,
- 0x7C0D, 0xE2CB, 0x7C11, 0xE2C0, 0x7C12, 0x99D3, 0x7C13, 0xE2C7,
- 0x7C14, 0xE2C1, 0x7C17, 0xE2CA, 0x7C1F, 0xE2D0, 0x7C21, 0x8AC8,
- 0x7C23, 0xE2CD, 0x7C27, 0xE2CE, 0x7C2A, 0xE2CF, 0x7C2B, 0xE2D2,
- 0x7C37, 0xE2D1, 0x7C38, 0x94F4, 0x7C3D, 0xE2D3, 0x7C3E, 0x97FA,
- 0x7C3F, 0x95EB, 0x7C40, 0xE2D8, 0x7C43, 0xE2D5, 0x7C4C, 0xE2D4,
- 0x7C4D, 0x90D0, 0x7C4F, 0xE2D7, 0x7C50, 0xE2D9, 0x7C54, 0xE2D6,
- 0x7C56, 0xE2DD, 0x7C58, 0xE2DA, 0x7C5F, 0xE2DB, 0x7C60, 0xE2C4,
- 0x7C64, 0xE2DC, 0x7C65, 0xE2DE, 0x7C6C, 0xE2DF, 0x7C73, 0x95C4,
- 0x7C75, 0xE2E0, 0x7C7E, 0x96E0, 0x7C81, 0x8BCC, 0x7C82, 0x8C48,
- 0x7C83, 0xE2E1, 0x7C89, 0x95B2, 0x7C8B, 0x9088, 0x7C8D, 0x96AE,
- 0x7C90, 0xE2E2, 0x7C92, 0x97B1, 0x7C95, 0x9494, 0x7C97, 0x9165,
- 0x7C98, 0x9453, 0x7C9B, 0x8F6C, 0x7C9F, 0x88BE, 0x7CA1, 0xE2E7,
- 0x7CA2, 0xE2E5, 0x7CA4, 0xE2E3, 0x7CA5, 0x8A9F, 0x7CA7, 0x8FCF,
- 0x7CA8, 0xE2E8, 0x7CAB, 0xE2E6, 0x7CAD, 0xE2E4, 0x7CAE, 0xE2EC,
- 0x7CB1, 0xE2EB, 0x7CB2, 0xE2EA, 0x7CB3, 0xE2E9, 0x7CB9, 0xE2ED,
- 0x7CBD, 0xE2EE, 0x7CBE, 0x90B8, 0x7CC0, 0xE2EF, 0x7CC2, 0xE2F1,
- 0x7CC5, 0xE2F0, 0x7CCA, 0x8CD0, 0x7CCE, 0x9157, 0x7CD2, 0xE2F3,
- 0x7CD6, 0x939C, 0x7CD8, 0xE2F2, 0x7CDC, 0xE2F4, 0x7CDE, 0x95B3,
- 0x7CDF, 0x918C, 0x7CE0, 0x8D66, 0x7CE2, 0xE2F5, 0x7CE7, 0x97C6,
- 0x7CEF, 0xE2F7, 0x7CF2, 0xE2F8, 0x7CF4, 0xE2F9, 0x7CF6, 0xE2FA,
- 0x7CF8, 0x8E85, 0x7CFA, 0xE2FB, 0x7CFB, 0x8C6E, 0x7CFE, 0x8B8A,
- 0x7D00, 0x8B49, 0x7D02, 0xE340, 0x7D04, 0x96F1, 0x7D05, 0x8D67,
- 0x7D06, 0xE2FC, 0x7D0A, 0xE343, 0x7D0B, 0x96E4, 0x7D0D, 0x945B,
- 0x7D10, 0x9552, 0x7D14, 0x8F83, 0x7D15, 0xE342, 0x7D17, 0x8ED1,
- 0x7D18, 0x8D68, 0x7D19, 0x8E86, 0x7D1A, 0x8B89, 0x7D1B, 0x95B4,
- 0x7D1C, 0xE341, 0x7D20, 0x9166, 0x7D21, 0x9661, 0x7D22, 0x8DF5,
- 0x7D2B, 0x8E87, 0x7D2C, 0x92DB, 0x7D2E, 0xE346, 0x7D2F, 0x97DD,
- 0x7D30, 0x8DD7, 0x7D32, 0xE347, 0x7D33, 0x9061, 0x7D35, 0xE349,
- 0x7D39, 0x8FD0, 0x7D3A, 0x8DAE, 0x7D3F, 0xE348, 0x7D42, 0x8F49,
- 0x7D43, 0x8CBC, 0x7D44, 0x9167, 0x7D45, 0xE344, 0x7D46, 0xE34A,
- 0x7D48, 0xFB8A, 0x7D4B, 0xE345, 0x7D4C, 0x8C6F, 0x7D4E, 0xE34D,
- 0x7D4F, 0xE351, 0x7D50, 0x8C8B, 0x7D56, 0xE34C, 0x7D5B, 0xE355,
- 0x7D5C, 0xFB8B, 0x7D5E, 0x8D69, 0x7D61, 0x978D, 0x7D62, 0x88BA,
- 0x7D63, 0xE352, 0x7D66, 0x8B8B, 0x7D68, 0xE34F, 0x7D6E, 0xE350,
- 0x7D71, 0x939D, 0x7D72, 0xE34E, 0x7D73, 0xE34B, 0x7D75, 0x8A47,
- 0x7D76, 0x90E2, 0x7D79, 0x8CA6, 0x7D7D, 0xE357, 0x7D89, 0xE354,
- 0x7D8F, 0xE356, 0x7D93, 0xE353, 0x7D99, 0x8C70, 0x7D9A, 0x91B1,
- 0x7D9B, 0xE358, 0x7D9C, 0x918E, 0x7D9F, 0xE365, 0x7DA0, 0xFB8D,
- 0x7DA2, 0xE361, 0x7DA3, 0xE35B, 0x7DAB, 0xE35F, 0x7DAC, 0x8EF8,
- 0x7DAD, 0x88DB, 0x7DAE, 0xE35A, 0x7DAF, 0xE362, 0x7DB0, 0xE366,
- 0x7DB1, 0x8D6A, 0x7DB2, 0x96D4, 0x7DB4, 0x92D4, 0x7DB5, 0xE35C,
- 0x7DB7, 0xFB8C, 0x7DB8, 0xE364, 0x7DBA, 0xE359, 0x7DBB, 0x925D,
- 0x7DBD, 0xE35E, 0x7DBE, 0x88BB, 0x7DBF, 0x96C8, 0x7DC7, 0xE35D,
- 0x7DCA, 0x8BD9, 0x7DCB, 0x94EA, 0x7DCF, 0x918D, 0x7DD1, 0x97CE,
- 0x7DD2, 0x8F8F, 0x7DD5, 0xE38E, 0x7DD6, 0xFB8E, 0x7DD8, 0xE367,
- 0x7DDA, 0x90FC, 0x7DDC, 0xE363, 0x7DDD, 0xE368, 0x7DDE, 0xE36A,
- 0x7DE0, 0x92F7, 0x7DE1, 0xE36D, 0x7DE4, 0xE369, 0x7DE8, 0x95D2,
- 0x7DE9, 0x8AC9, 0x7DEC, 0x96C9, 0x7DEF, 0x88DC, 0x7DF2, 0xE36C,
- 0x7DF4, 0x97FB, 0x7DFB, 0xE36B, 0x7E01, 0x898F, 0x7E04, 0x93EA,
- 0x7E05, 0xE36E, 0x7E09, 0xE375, 0x7E0A, 0xE36F, 0x7E0B, 0xE376,
- 0x7E12, 0xE372, 0x7E1B, 0x949B, 0x7E1E, 0x8EC8, 0x7E1F, 0xE374,
- 0x7E21, 0xE371, 0x7E22, 0xE377, 0x7E23, 0xE370, 0x7E26, 0x8F63,
- 0x7E2B, 0x9644, 0x7E2E, 0x8F6B, 0x7E31, 0xE373, 0x7E32, 0xE380,
- 0x7E35, 0xE37B, 0x7E37, 0xE37E, 0x7E39, 0xE37C, 0x7E3A, 0xE381,
- 0x7E3B, 0xE37A, 0x7E3D, 0xE360, 0x7E3E, 0x90D1, 0x7E41, 0x94C9,
- 0x7E43, 0xE37D, 0x7E46, 0xE378, 0x7E4A, 0x9140, 0x7E4B, 0x8C71,
- 0x7E4D, 0x8F4A, 0x7E52, 0xFB8F, 0x7E54, 0x9044, 0x7E55, 0x9155,
- 0x7E56, 0xE384, 0x7E59, 0xE386, 0x7E5A, 0xE387, 0x7E5D, 0xE383,
- 0x7E5E, 0xE385, 0x7E66, 0xE379, 0x7E67, 0xE382, 0x7E69, 0xE38A,
- 0x7E6A, 0xE389, 0x7E6D, 0x969A, 0x7E70, 0x8C4A, 0x7E79, 0xE388,
- 0x7E7B, 0xE38C, 0x7E7C, 0xE38B, 0x7E7D, 0xE38F, 0x7E7F, 0xE391,
- 0x7E82, 0x8E5B, 0x7E83, 0xE38D, 0x7E88, 0xE392, 0x7E89, 0xE393,
- 0x7E8A, 0xFA5C, 0x7E8C, 0xE394, 0x7E8E, 0xE39A, 0x7E8F, 0x935A,
- 0x7E90, 0xE396, 0x7E92, 0xE395, 0x7E93, 0xE397, 0x7E94, 0xE398,
- 0x7E96, 0xE399, 0x7E9B, 0xE39B, 0x7E9C, 0xE39C, 0x7F36, 0x8ACA,
- 0x7F38, 0xE39D, 0x7F3A, 0xE39E, 0x7F45, 0xE39F, 0x7F47, 0xFB90,
- 0x7F4C, 0xE3A0, 0x7F4D, 0xE3A1, 0x7F4E, 0xE3A2, 0x7F50, 0xE3A3,
- 0x7F51, 0xE3A4, 0x7F54, 0xE3A6, 0x7F55, 0xE3A5, 0x7F58, 0xE3A7,
- 0x7F5F, 0xE3A8, 0x7F60, 0xE3A9, 0x7F67, 0xE3AC, 0x7F68, 0xE3AA,
- 0x7F69, 0xE3AB, 0x7F6A, 0x8DDF, 0x7F6B, 0x8C72, 0x7F6E, 0x9275,
- 0x7F70, 0x94B1, 0x7F72, 0x8F90, 0x7F75, 0x946C, 0x7F77, 0x94EB,
- 0x7F78, 0xE3AD, 0x7F79, 0x9CEB, 0x7F82, 0xE3AE, 0x7F83, 0xE3B0,
- 0x7F85, 0x9785, 0x7F86, 0xE3AF, 0x7F87, 0xE3B2, 0x7F88, 0xE3B1,
- 0x7F8A, 0x9772, 0x7F8C, 0xE3B3, 0x7F8E, 0x94FC, 0x7F94, 0xE3B4,
- 0x7F9A, 0xE3B7, 0x7F9D, 0xE3B6, 0x7F9E, 0xE3B5, 0x7FA1, 0xFB91,
- 0x7FA3, 0xE3B8, 0x7FA4, 0x8C51, 0x7FA8, 0x9141, 0x7FA9, 0x8B60,
- 0x7FAE, 0xE3BC, 0x7FAF, 0xE3B9, 0x7FB2, 0xE3BA, 0x7FB6, 0xE3BD,
- 0x7FB8, 0xE3BE, 0x7FB9, 0xE3BB, 0x7FBD, 0x8948, 0x7FC1, 0x89A5,
- 0x7FC5, 0xE3C0, 0x7FC6, 0xE3C1, 0x7FCA, 0xE3C2, 0x7FCC, 0x9782,
- 0x7FD2, 0x8F4B, 0x7FD4, 0xE3C4, 0x7FD5, 0xE3C3, 0x7FE0, 0x9089,
- 0x7FE1, 0xE3C5, 0x7FE6, 0xE3C6, 0x7FE9, 0xE3C7, 0x7FEB, 0x8AE3,
- 0x7FF0, 0x8ACB, 0x7FF3, 0xE3C8, 0x7FF9, 0xE3C9, 0x7FFB, 0x967C,
- 0x7FFC, 0x9783, 0x8000, 0x9773, 0x8001, 0x9856, 0x8003, 0x8D6C,
- 0x8004, 0xE3CC, 0x8005, 0x8ED2, 0x8006, 0xE3CB, 0x800B, 0xE3CD,
- 0x800C, 0x8EA7, 0x8010, 0x91CF, 0x8012, 0xE3CE, 0x8015, 0x8D6B,
- 0x8017, 0x96D5, 0x8018, 0xE3CF, 0x8019, 0xE3D0, 0x801C, 0xE3D1,
- 0x8021, 0xE3D2, 0x8028, 0xE3D3, 0x8033, 0x8EA8, 0x8036, 0x96EB,
- 0x803B, 0xE3D5, 0x803D, 0x925E, 0x803F, 0xE3D4, 0x8046, 0xE3D7,
- 0x804A, 0xE3D6, 0x8052, 0xE3D8, 0x8056, 0x90B9, 0x8058, 0xE3D9,
- 0x805A, 0xE3DA, 0x805E, 0x95B7, 0x805F, 0xE3DB, 0x8061, 0x918F,
- 0x8062, 0xE3DC, 0x8068, 0xE3DD, 0x806F, 0x97FC, 0x8070, 0xE3E0,
- 0x8072, 0xE3DF, 0x8073, 0xE3DE, 0x8074, 0x92AE, 0x8076, 0xE3E1,
- 0x8077, 0x9045, 0x8079, 0xE3E2, 0x807D, 0xE3E3, 0x807E, 0x9857,
- 0x807F, 0xE3E4, 0x8084, 0xE3E5, 0x8085, 0xE3E7, 0x8086, 0xE3E6,
- 0x8087, 0x94A3, 0x8089, 0x93F7, 0x808B, 0x985D, 0x808C, 0x94A7,
- 0x8093, 0xE3E9, 0x8096, 0x8FD1, 0x8098, 0x9549, 0x809A, 0xE3EA,
- 0x809B, 0xE3E8, 0x809D, 0x8ACC, 0x80A1, 0x8CD2, 0x80A2, 0x8E88,
- 0x80A5, 0x94EC, 0x80A9, 0x8CA8, 0x80AA, 0x9662, 0x80AC, 0xE3ED,
- 0x80AD, 0xE3EB, 0x80AF, 0x8D6D, 0x80B1, 0x8D6E, 0x80B2, 0x88E7,
- 0x80B4, 0x8DE6, 0x80BA, 0x9478, 0x80C3, 0x88DD, 0x80C4, 0xE3F2,
- 0x80C6, 0x925F, 0x80CC, 0x9477, 0x80CE, 0x91D9, 0x80D6, 0xE3F4,
- 0x80D9, 0xE3F0, 0x80DA, 0xE3F3, 0x80DB, 0xE3EE, 0x80DD, 0xE3F1,
- 0x80DE, 0x9645, 0x80E1, 0x8CD3, 0x80E4, 0x88FB, 0x80E5, 0xE3EF,
- 0x80EF, 0xE3F6, 0x80F1, 0xE3F7, 0x80F4, 0x93B7, 0x80F8, 0x8BB9,
- 0x80FC, 0xE445, 0x80FD, 0x945C, 0x8102, 0x8E89, 0x8105, 0x8BBA,
- 0x8106, 0x90C6, 0x8107, 0x9865, 0x8108, 0x96AC, 0x8109, 0xE3F5,
- 0x810A, 0x90D2, 0x811A, 0x8B72, 0x811B, 0xE3F8, 0x8123, 0xE3FA,
- 0x8129, 0xE3F9, 0x812F, 0xE3FB, 0x8131, 0x9245, 0x8133, 0x945D,
- 0x8139, 0x92AF, 0x813E, 0xE442, 0x8146, 0xE441, 0x814B, 0xE3FC,
- 0x814E, 0x9074, 0x8150, 0x9585, 0x8151, 0xE444, 0x8153, 0xE443,
- 0x8154, 0x8D6F, 0x8155, 0x9872, 0x815F, 0xE454, 0x8165, 0xE448,
- 0x8166, 0xE449, 0x816B, 0x8EEE, 0x816E, 0xE447, 0x8170, 0x8D98,
- 0x8171, 0xE446, 0x8174, 0xE44A, 0x8178, 0x92B0, 0x8179, 0x95A0,
- 0x817A, 0x9142, 0x817F, 0x91DA, 0x8180, 0xE44E, 0x8182, 0xE44F,
- 0x8183, 0xE44B, 0x8188, 0xE44C, 0x818A, 0xE44D, 0x818F, 0x8D70,
- 0x8193, 0xE455, 0x8195, 0xE451, 0x819A, 0x9586, 0x819C, 0x968C,
- 0x819D, 0x9547, 0x81A0, 0xE450, 0x81A3, 0xE453, 0x81A4, 0xE452,
- 0x81A8, 0x9663, 0x81A9, 0xE456, 0x81B0, 0xE457, 0x81B3, 0x9156,
- 0x81B5, 0xE458, 0x81B8, 0xE45A, 0x81BA, 0xE45E, 0x81BD, 0xE45B,
- 0x81BE, 0xE459, 0x81BF, 0x945E, 0x81C0, 0xE45C, 0x81C2, 0xE45D,
- 0x81C6, 0x89B0, 0x81C8, 0xE464, 0x81C9, 0xE45F, 0x81CD, 0xE460,
- 0x81D1, 0xE461, 0x81D3, 0x919F, 0x81D8, 0xE463, 0x81D9, 0xE462,
- 0x81DA, 0xE465, 0x81DF, 0xE466, 0x81E0, 0xE467, 0x81E3, 0x9062,
- 0x81E5, 0x89E7, 0x81E7, 0xE468, 0x81E8, 0x97D5, 0x81EA, 0x8EA9,
- 0x81ED, 0x8F4C, 0x81F3, 0x8E8A, 0x81F4, 0x9276, 0x81FA, 0xE469,
- 0x81FB, 0xE46A, 0x81FC, 0x8950, 0x81FE, 0xE46B, 0x8201, 0xE46C,
- 0x8202, 0xE46D, 0x8205, 0xE46E, 0x8207, 0xE46F, 0x8208, 0x8BBB,
- 0x8209, 0x9DA8, 0x820A, 0xE470, 0x820C, 0x90E3, 0x820D, 0xE471,
- 0x820E, 0x8EC9, 0x8210, 0xE472, 0x8212, 0x98AE, 0x8216, 0xE473,
- 0x8217, 0x95DC, 0x8218, 0x8ADA, 0x821B, 0x9143, 0x821C, 0x8F77,
- 0x821E, 0x9591, 0x821F, 0x8F4D, 0x8229, 0xE474, 0x822A, 0x8D71,
- 0x822B, 0xE475, 0x822C, 0x94CA, 0x822E, 0xE484, 0x8233, 0xE477,
- 0x8235, 0x91C7, 0x8236, 0x9495, 0x8237, 0x8CBD, 0x8238, 0xE476,
- 0x8239, 0x9144, 0x8240, 0xE478, 0x8247, 0x92F8, 0x8258, 0xE47A,
- 0x8259, 0xE479, 0x825A, 0xE47C, 0x825D, 0xE47B, 0x825F, 0xE47D,
- 0x8262, 0xE480, 0x8264, 0xE47E, 0x8266, 0x8ACD, 0x8268, 0xE481,
- 0x826A, 0xE482, 0x826B, 0xE483, 0x826E, 0x8DAF, 0x826F, 0x97C7,
- 0x8271, 0xE485, 0x8272, 0x9046, 0x8276, 0x8990, 0x8277, 0xE486,
- 0x8278, 0xE487, 0x827E, 0xE488, 0x828B, 0x88F0, 0x828D, 0xE489,
- 0x8292, 0xE48A, 0x8299, 0x9587, 0x829D, 0x8EC5, 0x829F, 0xE48C,
- 0x82A5, 0x8A48, 0x82A6, 0x88B0, 0x82AB, 0xE48B, 0x82AC, 0xE48E,
- 0x82AD, 0x946D, 0x82AF, 0x9063, 0x82B1, 0x89D4, 0x82B3, 0x9646,
- 0x82B8, 0x8C7C, 0x82B9, 0x8BDA, 0x82BB, 0xE48D, 0x82BD, 0x89E8,
- 0x82C5, 0x8AA1, 0x82D1, 0x8991, 0x82D2, 0xE492, 0x82D3, 0x97E8,
- 0x82D4, 0x91DB, 0x82D7, 0x9563, 0x82D9, 0xE49E, 0x82DB, 0x89D5,
- 0x82DC, 0xE49C, 0x82DE, 0xE49A, 0x82DF, 0xE491, 0x82E1, 0xE48F,
- 0x82E3, 0xE490, 0x82E5, 0x8EE1, 0x82E6, 0x8BEA, 0x82E7, 0x9297,
- 0x82EB, 0x93CF, 0x82F1, 0x8970, 0x82F3, 0xE494, 0x82F4, 0xE493,
- 0x82F9, 0xE499, 0x82FA, 0xE495, 0x82FB, 0xE498, 0x8301, 0xFB93,
- 0x8302, 0x96CE, 0x8303, 0xE497, 0x8304, 0x89D6, 0x8305, 0x8A9D,
- 0x8306, 0xE49B, 0x8309, 0xE49D, 0x830E, 0x8C73, 0x8316, 0xE4A1,
- 0x8317, 0xE4AA, 0x8318, 0xE4AB, 0x831C, 0x88A9, 0x8323, 0xE4B2,
- 0x8328, 0x88EF, 0x832B, 0xE4A9, 0x832F, 0xE4A8, 0x8331, 0xE4A3,
- 0x8332, 0xE4A2, 0x8334, 0xE4A0, 0x8335, 0xE49F, 0x8336, 0x9283,
- 0x8338, 0x91F9, 0x8339, 0xE4A5, 0x8340, 0xE4A4, 0x8345, 0xE4A7,
- 0x8349, 0x9190, 0x834A, 0x8C74, 0x834F, 0x8960, 0x8350, 0xE4A6,
- 0x8352, 0x8D72, 0x8358, 0x9191, 0x8362, 0xFB94, 0x8373, 0xE4B8,
- 0x8375, 0xE4B9, 0x8377, 0x89D7, 0x837B, 0x89AC, 0x837C, 0xE4B6,
- 0x837F, 0xFB95, 0x8385, 0xE4AC, 0x8387, 0xE4B4, 0x8389, 0xE4BB,
- 0x838A, 0xE4B5, 0x838E, 0xE4B3, 0x8393, 0xE496, 0x8396, 0xE4B1,
- 0x839A, 0xE4AD, 0x839E, 0x8ACE, 0x839F, 0xE4AF, 0x83A0, 0xE4BA,
- 0x83A2, 0xE4B0, 0x83A8, 0xE4BC, 0x83AA, 0xE4AE, 0x83AB, 0x949C,
- 0x83B1, 0x9789, 0x83B5, 0xE4B7, 0x83BD, 0xE4CD, 0x83C1, 0xE4C5,
- 0x83C5, 0x909B, 0x83C7, 0xFB96, 0x83CA, 0x8B65, 0x83CC, 0x8BDB,
- 0x83CE, 0xE4C0, 0x83D3, 0x89D9, 0x83D6, 0x8FD2, 0x83D8, 0xE4C3,
- 0x83DC, 0x8DD8, 0x83DF, 0x9370, 0x83E0, 0xE4C8, 0x83E9, 0x95EC,
- 0x83EB, 0xE4BF, 0x83EF, 0x89D8, 0x83F0, 0x8CD4, 0x83F1, 0x9548,
- 0x83F2, 0xE4C9, 0x83F4, 0xE4BD, 0x83F6, 0xFB97, 0x83F7, 0xE4C6,
- 0x83FB, 0xE4D0, 0x83FD, 0xE4C1, 0x8403, 0xE4C2, 0x8404, 0x93B8,
- 0x8407, 0xE4C7, 0x840B, 0xE4C4, 0x840C, 0x9647, 0x840D, 0xE4CA,
- 0x840E, 0x88DE, 0x8413, 0xE4BE, 0x8420, 0xE4CC, 0x8422, 0xE4CB,
- 0x8429, 0x948B, 0x842A, 0xE4D2, 0x842C, 0xE4DD, 0x8431, 0x8A9E,
- 0x8435, 0xE4E0, 0x8438, 0xE4CE, 0x843C, 0xE4D3, 0x843D, 0x978E,
- 0x8446, 0xE4DC, 0x8448, 0xFB98, 0x8449, 0x9774, 0x844E, 0x97A8,
- 0x8457, 0x9298, 0x845B, 0x8A8B, 0x8461, 0x9592, 0x8462, 0xE4E2,
- 0x8463, 0x939F, 0x8466, 0x88AF, 0x8469, 0xE4DB, 0x846B, 0xE4D7,
- 0x846C, 0x9192, 0x846D, 0xE4D1, 0x846E, 0xE4D9, 0x846F, 0xE4DE,
- 0x8471, 0x944B, 0x8475, 0x88A8, 0x8477, 0xE4D6, 0x8479, 0xE4DF,
- 0x847A, 0x9598, 0x8482, 0xE4DA, 0x8484, 0xE4D5, 0x848B, 0x8FD3,
- 0x8490, 0x8F4E, 0x8494, 0x8EAA, 0x8499, 0x96D6, 0x849C, 0x9566,
- 0x849F, 0xE4E5, 0x84A1, 0xE4EE, 0x84AD, 0xE4D8, 0x84B2, 0x8A97,
- 0x84B4, 0xFB99, 0x84B8, 0x8FF6, 0x84B9, 0xE4E3, 0x84BB, 0xE4E8,
- 0x84BC, 0x9193, 0x84BF, 0xE4E4, 0x84C1, 0xE4EB, 0x84C4, 0x927E,
- 0x84C6, 0xE4EC, 0x84C9, 0x9775, 0x84CA, 0xE4E1, 0x84CB, 0x8A57,
- 0x84CD, 0xE4E7, 0x84D0, 0xE4EA, 0x84D1, 0x96AA, 0x84D6, 0xE4ED,
- 0x84D9, 0xE4E6, 0x84DA, 0xE4E9, 0x84DC, 0xFA60, 0x84EC, 0x9648,
- 0x84EE, 0x9840, 0x84F4, 0xE4F1, 0x84FC, 0xE4F8, 0x84FF, 0xE4F0,
- 0x8500, 0x8EC1, 0x8506, 0xE4CF, 0x8511, 0x95CC, 0x8513, 0x96A0,
- 0x8514, 0xE4F7, 0x8515, 0xE4F6, 0x8517, 0xE4F2, 0x8518, 0xE4F3,
- 0x851A, 0x8955, 0x851F, 0xE4F5, 0x8521, 0xE4EF, 0x8526, 0x92D3,
- 0x852C, 0xE4F4, 0x852D, 0x88FC, 0x8535, 0x91A0, 0x853D, 0x95C1,
- 0x8540, 0xE4F9, 0x8541, 0xE540, 0x8543, 0x94D7, 0x8548, 0xE4FC,
- 0x8549, 0x8FD4, 0x854A, 0x8EC7, 0x854B, 0xE542, 0x854E, 0x8BBC,
- 0x8553, 0xFB9A, 0x8555, 0xE543, 0x8557, 0x9599, 0x8558, 0xE4FB,
- 0x8559, 0xFB9B, 0x855A, 0xE4D4, 0x8563, 0xE4FA, 0x8568, 0x986E,
- 0x8569, 0x93A0, 0x856A, 0x9593, 0x856B, 0xFB9C, 0x856D, 0xE54A,
- 0x8577, 0xE550, 0x857E, 0xE551, 0x8580, 0xE544, 0x8584, 0x9496,
- 0x8587, 0xE54E, 0x8588, 0xE546, 0x858A, 0xE548, 0x8590, 0xE552,
- 0x8591, 0xE547, 0x8594, 0xE54B, 0x8597, 0x8992, 0x8599, 0x93E3,
- 0x859B, 0xE54C, 0x859C, 0xE54F, 0x85A4, 0xE545, 0x85A6, 0x9145,
- 0x85A8, 0xE549, 0x85A9, 0x8E46, 0x85AA, 0x9064, 0x85AB, 0x8C4F,
- 0x85AC, 0x96F2, 0x85AE, 0x96F7, 0x85AF, 0x8F92, 0x85B0, 0xFB9E,
- 0x85B9, 0xE556, 0x85BA, 0xE554, 0x85C1, 0x986D, 0x85C9, 0xE553,
- 0x85CD, 0x9795, 0x85CF, 0xE555, 0x85D0, 0xE557, 0x85D5, 0xE558,
- 0x85DC, 0xE55B, 0x85DD, 0xE559, 0x85E4, 0x93A1, 0x85E5, 0xE55A,
- 0x85E9, 0x94CB, 0x85EA, 0xE54D, 0x85F7, 0x8F93, 0x85F9, 0xE55C,
- 0x85FA, 0xE561, 0x85FB, 0x9194, 0x85FE, 0xE560, 0x8602, 0xE541,
- 0x8606, 0xE562, 0x8607, 0x9168, 0x860A, 0xE55D, 0x860B, 0xE55F,
- 0x8613, 0xE55E, 0x8616, 0x9F50, 0x8617, 0x9F41, 0x861A, 0xE564,
- 0x8622, 0xE563, 0x862D, 0x9796, 0x862F, 0xE1BA, 0x8630, 0xE565,
- 0x863F, 0xE566, 0x864D, 0xE567, 0x864E, 0x8CD5, 0x8650, 0x8B73,
- 0x8654, 0xE569, 0x8655, 0x997C, 0x865A, 0x8B95, 0x865C, 0x97B8,
- 0x865E, 0x8BF1, 0x865F, 0xE56A, 0x8667, 0xE56B, 0x866B, 0x928E,
- 0x8671, 0xE56C, 0x8679, 0x93F8, 0x867B, 0x88B8, 0x868A, 0x89E1,
- 0x868B, 0xE571, 0x868C, 0xE572, 0x8693, 0xE56D, 0x8695, 0x8E5C,
- 0x86A3, 0xE56E, 0x86A4, 0x9461, 0x86A9, 0xE56F, 0x86AA, 0xE570,
- 0x86AB, 0xE57A, 0x86AF, 0xE574, 0x86B0, 0xE577, 0x86B6, 0xE573,
- 0x86C4, 0xE575, 0x86C6, 0xE576, 0x86C7, 0x8ED6, 0x86C9, 0xE578,
- 0x86CB, 0x9260, 0x86CD, 0x8C75, 0x86CE, 0x8A61, 0x86D4, 0xE57B,
- 0x86D9, 0x8A5E, 0x86DB, 0xE581, 0x86DE, 0xE57C, 0x86DF, 0xE580,
- 0x86E4, 0x94B8, 0x86E9, 0xE57D, 0x86EC, 0xE57E, 0x86ED, 0x9567,
- 0x86EE, 0x94D8, 0x86EF, 0xE582, 0x86F8, 0x91FB, 0x86F9, 0xE58C,
- 0x86FB, 0xE588, 0x86FE, 0x89E9, 0x8700, 0xE586, 0x8702, 0x9649,
- 0x8703, 0xE587, 0x8706, 0xE584, 0x8708, 0xE585, 0x8709, 0xE58A,
- 0x870A, 0xE58D, 0x870D, 0xE58B, 0x8711, 0xE589, 0x8712, 0xE583,
- 0x8718, 0x9277, 0x871A, 0xE594, 0x871C, 0x96A8, 0x8725, 0xE592,
- 0x8729, 0xE593, 0x8734, 0xE58E, 0x8737, 0xE590, 0x873B, 0xE591,
- 0x873F, 0xE58F, 0x8749, 0x90E4, 0x874B, 0x9858, 0x874C, 0xE598,
- 0x874E, 0xE599, 0x8753, 0xE59F, 0x8755, 0x9049, 0x8757, 0xE59B,
- 0x8759, 0xE59E, 0x875F, 0xE596, 0x8760, 0xE595, 0x8763, 0xE5A0,
- 0x8766, 0x89DA, 0x8768, 0xE59C, 0x876A, 0xE5A1, 0x876E, 0xE59D,
- 0x8774, 0xE59A, 0x8776, 0x92B1, 0x8778, 0xE597, 0x877F, 0x9488,
- 0x8782, 0xE5A5, 0x878D, 0x975A, 0x879F, 0xE5A4, 0x87A2, 0xE5A3,
- 0x87AB, 0xE5AC, 0x87AF, 0xE5A6, 0x87B3, 0xE5AE, 0x87BA, 0x9786,
- 0x87BB, 0xE5B1, 0x87BD, 0xE5A8, 0x87C0, 0xE5A9, 0x87C4, 0xE5AD,
- 0x87C6, 0xE5B0, 0x87C7, 0xE5AF, 0x87CB, 0xE5A7, 0x87D0, 0xE5AA,
- 0x87D2, 0xE5BB, 0x87E0, 0xE5B4, 0x87EF, 0xE5B2, 0x87F2, 0xE5B3,
- 0x87F6, 0xE5B8, 0x87F7, 0xE5B9, 0x87F9, 0x8A49, 0x87FB, 0x8B61,
- 0x87FE, 0xE5B7, 0x8805, 0xE5A2, 0x8807, 0xFBA1, 0x880D, 0xE5B6,
- 0x880E, 0xE5BA, 0x880F, 0xE5B5, 0x8811, 0xE5BC, 0x8815, 0xE5BE,
- 0x8816, 0xE5BD, 0x8821, 0xE5C0, 0x8822, 0xE5BF, 0x8823, 0xE579,
- 0x8827, 0xE5C4, 0x8831, 0xE5C1, 0x8836, 0xE5C2, 0x8839, 0xE5C3,
- 0x883B, 0xE5C5, 0x8840, 0x8C8C, 0x8842, 0xE5C7, 0x8844, 0xE5C6,
- 0x8846, 0x8F4F, 0x884C, 0x8D73, 0x884D, 0x9FA5, 0x8852, 0xE5C8,
- 0x8853, 0x8F70, 0x8857, 0x8A58, 0x8859, 0xE5C9, 0x885B, 0x8971,
- 0x885D, 0x8FD5, 0x885E, 0xE5CA, 0x8861, 0x8D74, 0x8862, 0xE5CB,
- 0x8863, 0x88DF, 0x8868, 0x955C, 0x886B, 0xE5CC, 0x8870, 0x908A,
- 0x8872, 0xE5D3, 0x8875, 0xE5D0, 0x8877, 0x928F, 0x887D, 0xE5D1,
- 0x887E, 0xE5CE, 0x887F, 0x8BDC, 0x8881, 0xE5CD, 0x8882, 0xE5D4,
- 0x8888, 0x8C55, 0x888B, 0x91DC, 0x888D, 0xE5DA, 0x8892, 0xE5D6,
- 0x8896, 0x91B3, 0x8897, 0xE5D5, 0x8899, 0xE5D8, 0x889E, 0xE5CF,
- 0x88A2, 0xE5D9, 0x88A4, 0xE5DB, 0x88AB, 0x94ED, 0x88AE, 0xE5D7,
- 0x88B0, 0xE5DC, 0x88B1, 0xE5DE, 0x88B4, 0x8CD1, 0x88B5, 0xE5D2,
- 0x88B7, 0x88BF, 0x88BF, 0xE5DD, 0x88C1, 0x8DD9, 0x88C2, 0x97F4,
- 0x88C3, 0xE5DF, 0x88C4, 0xE5E0, 0x88C5, 0x9195, 0x88CF, 0x97A0,
- 0x88D4, 0xE5E1, 0x88D5, 0x9754, 0x88D8, 0xE5E2, 0x88D9, 0xE5E3,
- 0x88DC, 0x95E2, 0x88DD, 0xE5E4, 0x88DF, 0x8DBE, 0x88E1, 0x97A1,
- 0x88E8, 0xE5E9, 0x88F2, 0xE5EA, 0x88F3, 0x8FD6, 0x88F4, 0xE5E8,
- 0x88F5, 0xFBA2, 0x88F8, 0x9787, 0x88F9, 0xE5E5, 0x88FC, 0xE5E7,
- 0x88FD, 0x90BB, 0x88FE, 0x909E, 0x8902, 0xE5E6, 0x8904, 0xE5EB,
- 0x8907, 0x95A1, 0x890A, 0xE5ED, 0x890C, 0xE5EC, 0x8910, 0x8A8C,
- 0x8912, 0x964A, 0x8913, 0xE5EE, 0x891C, 0xFA5D, 0x891D, 0xE5FA,
- 0x891E, 0xE5F0, 0x8925, 0xE5F1, 0x892A, 0xE5F2, 0x892B, 0xE5F3,
- 0x8936, 0xE5F7, 0x8938, 0xE5F8, 0x893B, 0xE5F6, 0x8941, 0xE5F4,
- 0x8943, 0xE5EF, 0x8944, 0xE5F5, 0x894C, 0xE5F9, 0x894D, 0xE8B5,
- 0x8956, 0x89A6, 0x895E, 0xE5FC, 0x895F, 0x8BDD, 0x8960, 0xE5FB,
- 0x8964, 0xE641, 0x8966, 0xE640, 0x896A, 0xE643, 0x896D, 0xE642,
- 0x896F, 0xE644, 0x8972, 0x8F50, 0x8974, 0xE645, 0x8977, 0xE646,
- 0x897E, 0xE647, 0x897F, 0x90BC, 0x8981, 0x9776, 0x8983, 0xE648,
- 0x8986, 0x95A2, 0x8987, 0x9465, 0x8988, 0xE649, 0x898A, 0xE64A,
- 0x898B, 0x8CA9, 0x898F, 0x8B4B, 0x8993, 0xE64B, 0x8996, 0x8E8B,
- 0x8997, 0x9460, 0x8998, 0xE64C, 0x899A, 0x8A6F, 0x89A1, 0xE64D,
- 0x89A6, 0xE64F, 0x89A7, 0x9797, 0x89A9, 0xE64E, 0x89AA, 0x9065,
- 0x89AC, 0xE650, 0x89AF, 0xE651, 0x89B2, 0xE652, 0x89B3, 0x8ACF,
- 0x89BA, 0xE653, 0x89BD, 0xE654, 0x89BF, 0xE655, 0x89C0, 0xE656,
- 0x89D2, 0x8A70, 0x89DA, 0xE657, 0x89DC, 0xE658, 0x89DD, 0xE659,
- 0x89E3, 0x89F0, 0x89E6, 0x9047, 0x89E7, 0xE65A, 0x89F4, 0xE65B,
- 0x89F8, 0xE65C, 0x8A00, 0x8CBE, 0x8A02, 0x92F9, 0x8A03, 0xE65D,
- 0x8A08, 0x8C76, 0x8A0A, 0x9075, 0x8A0C, 0xE660, 0x8A0E, 0x93A2,
- 0x8A10, 0xE65F, 0x8A12, 0xFBA3, 0x8A13, 0x8C50, 0x8A16, 0xE65E,
- 0x8A17, 0x91F5, 0x8A18, 0x8B4C, 0x8A1B, 0xE661, 0x8A1D, 0xE662,
- 0x8A1F, 0x8FD7, 0x8A23, 0x8C8D, 0x8A25, 0xE663, 0x8A2A, 0x964B,
- 0x8A2D, 0x90DD, 0x8A31, 0x8B96, 0x8A33, 0x96F3, 0x8A34, 0x9169,
- 0x8A36, 0xE664, 0x8A37, 0xFBA4, 0x8A3A, 0x9066, 0x8A3B, 0x9290,
- 0x8A3C, 0x8FD8, 0x8A41, 0xE665, 0x8A46, 0xE668, 0x8A48, 0xE669,
- 0x8A50, 0x8DBC, 0x8A51, 0x91C0, 0x8A52, 0xE667, 0x8A54, 0x8FD9,
- 0x8A55, 0x955D, 0x8A5B, 0xE666, 0x8A5E, 0x8E8C, 0x8A60, 0x8972,
- 0x8A62, 0xE66D, 0x8A63, 0x8C77, 0x8A66, 0x8E8E, 0x8A69, 0x8E8D,
- 0x8A6B, 0x986C, 0x8A6C, 0xE66C, 0x8A6D, 0xE66B, 0x8A6E, 0x9146,
- 0x8A70, 0x8B6C, 0x8A71, 0x9862, 0x8A72, 0x8A59, 0x8A73, 0x8FDA,
- 0x8A79, 0xFBA5, 0x8A7C, 0xE66A, 0x8A82, 0xE66F, 0x8A84, 0xE670,
- 0x8A85, 0xE66E, 0x8A87, 0x8CD6, 0x8A89, 0x975F, 0x8A8C, 0x8E8F,
- 0x8A8D, 0x9446, 0x8A91, 0xE673, 0x8A93, 0x90BE, 0x8A95, 0x9261,
- 0x8A98, 0x9755, 0x8A9A, 0xE676, 0x8A9E, 0x8CEA, 0x8AA0, 0x90BD,
- 0x8AA1, 0xE672, 0x8AA3, 0xE677, 0x8AA4, 0x8CEB, 0x8AA5, 0xE674,
- 0x8AA6, 0xE675, 0x8AA7, 0xFBA6, 0x8AA8, 0xE671, 0x8AAC, 0x90E0,
- 0x8AAD, 0x93C7, 0x8AB0, 0x924E, 0x8AB2, 0x89DB, 0x8AB9, 0x94EE,
- 0x8ABC, 0x8B62, 0x8ABE, 0xFBA7, 0x8ABF, 0x92B2, 0x8AC2, 0xE67A,
- 0x8AC4, 0xE678, 0x8AC7, 0x926B, 0x8ACB, 0x90BF, 0x8ACC, 0x8AD0,
- 0x8ACD, 0xE679, 0x8ACF, 0x907A, 0x8AD2, 0x97C8, 0x8AD6, 0x985F,
- 0x8ADA, 0xE67B, 0x8ADB, 0xE687, 0x8ADC, 0x92B3, 0x8ADE, 0xE686,
- 0x8ADF, 0xFBA8, 0x8AE0, 0xE683, 0x8AE1, 0xE68B, 0x8AE2, 0xE684,
- 0x8AE4, 0xE680, 0x8AE6, 0x92FA, 0x8AE7, 0xE67E, 0x8AEB, 0xE67C,
- 0x8AED, 0x9740, 0x8AEE, 0x8E90, 0x8AF1, 0xE681, 0x8AF3, 0xE67D,
- 0x8AF6, 0xFBAA, 0x8AF7, 0xE685, 0x8AF8, 0x8F94, 0x8AFA, 0x8CBF,
- 0x8AFE, 0x91F8, 0x8B00, 0x9664, 0x8B01, 0x8979, 0x8B02, 0x88E0,
- 0x8B04, 0x93A3, 0x8B07, 0xE689, 0x8B0C, 0xE688, 0x8B0E, 0x93E4,
- 0x8B10, 0xE68D, 0x8B14, 0xE682, 0x8B16, 0xE68C, 0x8B17, 0xE68E,
- 0x8B19, 0x8CAA, 0x8B1A, 0xE68A, 0x8B1B, 0x8D75, 0x8B1D, 0x8ED3,
- 0x8B20, 0xE68F, 0x8B21, 0x9777, 0x8B26, 0xE692, 0x8B28, 0xE695,
- 0x8B2B, 0xE693, 0x8B2C, 0x9554, 0x8B33, 0xE690, 0x8B39, 0x8BDE,
- 0x8B3E, 0xE694, 0x8B41, 0xE696, 0x8B49, 0xE69A, 0x8B4C, 0xE697,
- 0x8B4E, 0xE699, 0x8B4F, 0xE698, 0x8B53, 0xFBAB, 0x8B56, 0xE69B,
- 0x8B58, 0x8EAF, 0x8B5A, 0xE69D, 0x8B5B, 0xE69C, 0x8B5C, 0x9588,
- 0x8B5F, 0xE69F, 0x8B66, 0x8C78, 0x8B6B, 0xE69E, 0x8B6C, 0xE6A0,
- 0x8B6F, 0xE6A1, 0x8B70, 0x8B63, 0x8B71, 0xE3BF, 0x8B72, 0x8FF7,
- 0x8B74, 0xE6A2, 0x8B77, 0x8CEC, 0x8B7D, 0xE6A3, 0x8B7F, 0xFBAC,
- 0x8B80, 0xE6A4, 0x8B83, 0x8E5D, 0x8B8A, 0x9DCC, 0x8B8C, 0xE6A5,
- 0x8B8E, 0xE6A6, 0x8B90, 0x8F51, 0x8B92, 0xE6A7, 0x8B93, 0xE6A8,
- 0x8B96, 0xE6A9, 0x8B99, 0xE6AA, 0x8B9A, 0xE6AB, 0x8C37, 0x924A,
- 0x8C3A, 0xE6AC, 0x8C3F, 0xE6AE, 0x8C41, 0xE6AD, 0x8C46, 0x93A4,
- 0x8C48, 0xE6AF, 0x8C4A, 0x964C, 0x8C4C, 0xE6B0, 0x8C4E, 0xE6B1,
- 0x8C50, 0xE6B2, 0x8C55, 0xE6B3, 0x8C5A, 0x93D8, 0x8C61, 0x8FDB,
- 0x8C62, 0xE6B4, 0x8C6A, 0x8D8B, 0x8C6B, 0x98AC, 0x8C6C, 0xE6B5,
- 0x8C78, 0xE6B6, 0x8C79, 0x955E, 0x8C7A, 0xE6B7, 0x8C7C, 0xE6BF,
- 0x8C82, 0xE6B8, 0x8C85, 0xE6BA, 0x8C89, 0xE6B9, 0x8C8A, 0xE6BB,
- 0x8C8C, 0x9665, 0x8C8D, 0xE6BC, 0x8C8E, 0xE6BD, 0x8C94, 0xE6BE,
- 0x8C98, 0xE6C0, 0x8C9D, 0x8A4C, 0x8C9E, 0x92E5, 0x8CA0, 0x9589,
- 0x8CA1, 0x8DE0, 0x8CA2, 0x8D76, 0x8CA7, 0x956E, 0x8CA8, 0x89DD,
- 0x8CA9, 0x94CC, 0x8CAA, 0xE6C3, 0x8CAB, 0x8AD1, 0x8CAC, 0x90D3,
- 0x8CAD, 0xE6C2, 0x8CAE, 0xE6C7, 0x8CAF, 0x9299, 0x8CB0, 0x96E1,
- 0x8CB2, 0xE6C5, 0x8CB3, 0xE6C6, 0x8CB4, 0x8B4D, 0x8CB6, 0xE6C8,
- 0x8CB7, 0x9483, 0x8CB8, 0x91DD, 0x8CBB, 0x94EF, 0x8CBC, 0x935C,
- 0x8CBD, 0xE6C4, 0x8CBF, 0x9666, 0x8CC0, 0x89EA, 0x8CC1, 0xE6CA,
- 0x8CC2, 0x9847, 0x8CC3, 0x92C0, 0x8CC4, 0x9864, 0x8CC7, 0x8E91,
- 0x8CC8, 0xE6C9, 0x8CCA, 0x91AF, 0x8CCD, 0xE6DA, 0x8CCE, 0x9147,
- 0x8CD1, 0x93F6, 0x8CD3, 0x956F, 0x8CDA, 0xE6CD, 0x8CDB, 0x8E5E,
- 0x8CDC, 0x8E92, 0x8CDE, 0x8FDC, 0x8CE0, 0x9485, 0x8CE2, 0x8CAB,
- 0x8CE3, 0xE6CC, 0x8CE4, 0xE6CB, 0x8CE6, 0x958A, 0x8CEA, 0x8EBF,
- 0x8CED, 0x9371, 0x8CF0, 0xFBAD, 0x8CF4, 0xFBAE, 0x8CFA, 0xE6CF,
- 0x8CFB, 0xE6D0, 0x8CFC, 0x8D77, 0x8CFD, 0xE6CE, 0x8D04, 0xE6D1,
- 0x8D05, 0xE6D2, 0x8D07, 0xE6D4, 0x8D08, 0x91A1, 0x8D0A, 0xE6D3,
- 0x8D0B, 0x8AE4, 0x8D0D, 0xE6D6, 0x8D0F, 0xE6D5, 0x8D10, 0xE6D7,
- 0x8D12, 0xFBAF, 0x8D13, 0xE6D9, 0x8D14, 0xE6DB, 0x8D16, 0xE6DC,
- 0x8D64, 0x90D4, 0x8D66, 0x8ECD, 0x8D67, 0xE6DD, 0x8D6B, 0x8A71,
- 0x8D6D, 0xE6DE, 0x8D70, 0x9196, 0x8D71, 0xE6DF, 0x8D73, 0xE6E0,
- 0x8D74, 0x958B, 0x8D76, 0xFBB0, 0x8D77, 0x8B4E, 0x8D81, 0xE6E1,
- 0x8D85, 0x92B4, 0x8D8A, 0x897A, 0x8D99, 0xE6E2, 0x8DA3, 0x8EEF,
- 0x8DA8, 0x9096, 0x8DB3, 0x91AB, 0x8DBA, 0xE6E5, 0x8DBE, 0xE6E4,
- 0x8DC2, 0xE6E3, 0x8DCB, 0xE6EB, 0x8DCC, 0xE6E9, 0x8DCF, 0xE6E6,
- 0x8DD6, 0xE6E8, 0x8DDA, 0xE6E7, 0x8DDB, 0xE6EA, 0x8DDD, 0x8B97,
- 0x8DDF, 0xE6EE, 0x8DE1, 0x90D5, 0x8DE3, 0xE6EF, 0x8DE8, 0x8CD7,
- 0x8DEA, 0xE6EC, 0x8DEB, 0xE6ED, 0x8DEF, 0x9848, 0x8DF3, 0x92B5,
- 0x8DF5, 0x9148, 0x8DFC, 0xE6F0, 0x8DFF, 0xE6F3, 0x8E08, 0xE6F1,
- 0x8E09, 0xE6F2, 0x8E0A, 0x9778, 0x8E0F, 0x93A5, 0x8E10, 0xE6F6,
- 0x8E1D, 0xE6F4, 0x8E1E, 0xE6F5, 0x8E1F, 0xE6F7, 0x8E2A, 0xE748,
- 0x8E30, 0xE6FA, 0x8E34, 0xE6FB, 0x8E35, 0xE6F9, 0x8E42, 0xE6F8,
- 0x8E44, 0x92FB, 0x8E47, 0xE740, 0x8E48, 0xE744, 0x8E49, 0xE741,
- 0x8E4A, 0xE6FC, 0x8E4C, 0xE742, 0x8E50, 0xE743, 0x8E55, 0xE74A,
- 0x8E59, 0xE745, 0x8E5F, 0x90D6, 0x8E60, 0xE747, 0x8E63, 0xE749,
- 0x8E64, 0xE746, 0x8E72, 0xE74C, 0x8E74, 0x8F52, 0x8E76, 0xE74B,
- 0x8E7C, 0xE74D, 0x8E81, 0xE74E, 0x8E84, 0xE751, 0x8E85, 0xE750,
- 0x8E87, 0xE74F, 0x8E8A, 0xE753, 0x8E8B, 0xE752, 0x8E8D, 0x96F4,
- 0x8E91, 0xE755, 0x8E93, 0xE754, 0x8E94, 0xE756, 0x8E99, 0xE757,
- 0x8EA1, 0xE759, 0x8EAA, 0xE758, 0x8EAB, 0x9067, 0x8EAC, 0xE75A,
- 0x8EAF, 0x8BEB, 0x8EB0, 0xE75B, 0x8EB1, 0xE75D, 0x8EBE, 0xE75E,
- 0x8EC5, 0xE75F, 0x8EC6, 0xE75C, 0x8EC8, 0xE760, 0x8ECA, 0x8ED4,
- 0x8ECB, 0xE761, 0x8ECC, 0x8B4F, 0x8ECD, 0x8C52, 0x8ECF, 0xFBB2,
- 0x8ED2, 0x8CAC, 0x8EDB, 0xE762, 0x8EDF, 0x93EE, 0x8EE2, 0x935D,
- 0x8EE3, 0xE763, 0x8EEB, 0xE766, 0x8EF8, 0x8EB2, 0x8EFB, 0xE765,
- 0x8EFC, 0xE764, 0x8EFD, 0x8C79, 0x8EFE, 0xE767, 0x8F03, 0x8A72,
- 0x8F05, 0xE769, 0x8F09, 0x8DDA, 0x8F0A, 0xE768, 0x8F0C, 0xE771,
- 0x8F12, 0xE76B, 0x8F13, 0xE76D, 0x8F14, 0x95E3, 0x8F15, 0xE76A,
- 0x8F19, 0xE76C, 0x8F1B, 0xE770, 0x8F1C, 0xE76E, 0x8F1D, 0x8B50,
- 0x8F1F, 0xE76F, 0x8F26, 0xE772, 0x8F29, 0x9479, 0x8F2A, 0x97D6,
- 0x8F2F, 0x8F53, 0x8F33, 0xE773, 0x8F38, 0x9741, 0x8F39, 0xE775,
- 0x8F3B, 0xE774, 0x8F3E, 0xE778, 0x8F3F, 0x9760, 0x8F42, 0xE777,
- 0x8F44, 0x8A8D, 0x8F45, 0xE776, 0x8F46, 0xE77B, 0x8F49, 0xE77A,
- 0x8F4C, 0xE779, 0x8F4D, 0x9351, 0x8F4E, 0xE77C, 0x8F57, 0xE77D,
- 0x8F5C, 0xE77E, 0x8F5F, 0x8D8C, 0x8F61, 0x8C44, 0x8F62, 0xE780,
- 0x8F63, 0xE781, 0x8F64, 0xE782, 0x8F9B, 0x9068, 0x8F9C, 0xE783,
- 0x8F9E, 0x8EAB, 0x8F9F, 0xE784, 0x8FA3, 0xE785, 0x8FA7, 0x999F,
- 0x8FA8, 0x999E, 0x8FAD, 0xE786, 0x8FAE, 0xE390, 0x8FAF, 0xE787,
- 0x8FB0, 0x9243, 0x8FB1, 0x904A, 0x8FB2, 0x945F, 0x8FB7, 0xE788,
- 0x8FBA, 0x95D3, 0x8FBB, 0x92D2, 0x8FBC, 0x8D9E, 0x8FBF, 0x9248,
- 0x8FC2, 0x8949, 0x8FC4, 0x9698, 0x8FC5, 0x9076, 0x8FCE, 0x8C7D,
- 0x8FD1, 0x8BDF, 0x8FD4, 0x95D4, 0x8FDA, 0xE789, 0x8FE2, 0xE78B,
- 0x8FE5, 0xE78A, 0x8FE6, 0x89DE, 0x8FE9, 0x93F4, 0x8FEA, 0xE78C,
- 0x8FEB, 0x9497, 0x8FED, 0x9352, 0x8FEF, 0xE78D, 0x8FF0, 0x8F71,
- 0x8FF4, 0xE78F, 0x8FF7, 0x96C0, 0x8FF8, 0xE79E, 0x8FF9, 0xE791,
- 0x8FFA, 0xE792, 0x8FFD, 0x92C7, 0x9000, 0x91DE, 0x9001, 0x9197,
- 0x9003, 0x93A6, 0x9005, 0xE790, 0x9006, 0x8B74, 0x900B, 0xE799,
- 0x900D, 0xE796, 0x900E, 0xE7A3, 0x900F, 0x93A7, 0x9010, 0x9280,
- 0x9011, 0xE793, 0x9013, 0x92FC, 0x9014, 0x9372, 0x9015, 0xE794,
- 0x9016, 0xE798, 0x9017, 0x9080, 0x9019, 0x9487, 0x901A, 0x92CA,
- 0x901D, 0x90C0, 0x901E, 0xE797, 0x901F, 0x91AC, 0x9020, 0x91A2,
- 0x9021, 0xE795, 0x9022, 0x88A7, 0x9023, 0x9841, 0x9027, 0xE79A,
- 0x902E, 0x91DF, 0x9031, 0x8F54, 0x9032, 0x9069, 0x9035, 0xE79C,
- 0x9036, 0xE79B, 0x9038, 0x88ED, 0x9039, 0xE79D, 0x903C, 0x954E,
- 0x903E, 0xE7A5, 0x9041, 0x93D9, 0x9042, 0x908B, 0x9045, 0x9278,
- 0x9047, 0x8BF6, 0x9049, 0xE7A4, 0x904A, 0x9756, 0x904B, 0x895E,
- 0x904D, 0x95D5, 0x904E, 0x89DF, 0x904F, 0xE79F, 0x9050, 0xE7A0,
- 0x9051, 0xE7A1, 0x9052, 0xE7A2, 0x9053, 0x93B9, 0x9054, 0x9242,
- 0x9055, 0x88E1, 0x9056, 0xE7A6, 0x9058, 0xE7A7, 0x9059, 0xEAA1,
- 0x905C, 0x91BB, 0x905E, 0xE7A8, 0x9060, 0x8993, 0x9061, 0x916B,
- 0x9063, 0x8CAD, 0x9065, 0x9779, 0x9067, 0xFBB5, 0x9068, 0xE7A9,
- 0x9069, 0x934B, 0x906D, 0x9198, 0x906E, 0x8ED5, 0x906F, 0xE7AA,
- 0x9072, 0xE7AD, 0x9075, 0x8F85, 0x9076, 0xE7AB, 0x9077, 0x914A,
- 0x9078, 0x9149, 0x907A, 0x88E2, 0x907C, 0x97C9, 0x907D, 0xE7AF,
- 0x907F, 0x94F0, 0x9080, 0xE7B1, 0x9081, 0xE7B0, 0x9082, 0xE7AE,
- 0x9083, 0xE284, 0x9084, 0x8AD2, 0x9087, 0xE78E, 0x9089, 0xE7B3,
- 0x908A, 0xE7B2, 0x908F, 0xE7B4, 0x9091, 0x9757, 0x90A3, 0x93DF,
- 0x90A6, 0x964D, 0x90A8, 0xE7B5, 0x90AA, 0x8ED7, 0x90AF, 0xE7B6,
- 0x90B1, 0xE7B7, 0x90B5, 0xE7B8, 0x90B8, 0x9340, 0x90C1, 0x88E8,
- 0x90CA, 0x8D78, 0x90CE, 0x9859, 0x90DB, 0xE7BC, 0x90DE, 0xFBB6,
- 0x90E1, 0x8C53, 0x90E2, 0xE7B9, 0x90E4, 0xE7BA, 0x90E8, 0x9594,
- 0x90ED, 0x8A73, 0x90F5, 0x9758, 0x90F7, 0x8BBD, 0x90FD, 0x9373,
- 0x9102, 0xE7BD, 0x9112, 0xE7BE, 0x9115, 0xFBB8, 0x9119, 0xE7BF,
- 0x9127, 0xFBB9, 0x912D, 0x9341, 0x9130, 0xE7C1, 0x9132, 0xE7C0,
- 0x9149, 0x93D1, 0x914A, 0xE7C2, 0x914B, 0x8F55, 0x914C, 0x8EDE,
- 0x914D, 0x947A, 0x914E, 0x9291, 0x9152, 0x8EF0, 0x9154, 0x908C,
- 0x9156, 0xE7C3, 0x9158, 0xE7C4, 0x9162, 0x907C, 0x9163, 0xE7C5,
- 0x9165, 0xE7C6, 0x9169, 0xE7C7, 0x916A, 0x978F, 0x916C, 0x8F56,
- 0x9172, 0xE7C9, 0x9173, 0xE7C8, 0x9175, 0x8D79, 0x9177, 0x8D93,
- 0x9178, 0x8E5F, 0x9182, 0xE7CC, 0x9187, 0x8F86, 0x9189, 0xE7CB,
- 0x918B, 0xE7CA, 0x918D, 0x91E7, 0x9190, 0x8CED, 0x9192, 0x90C1,
- 0x9197, 0x94AE, 0x919C, 0x8F58, 0x91A2, 0xE7CD, 0x91A4, 0x8FDD,
- 0x91AA, 0xE7D0, 0x91AB, 0xE7CE, 0x91AF, 0xE7CF, 0x91B4, 0xE7D2,
- 0x91B5, 0xE7D1, 0x91B8, 0x8FF8, 0x91BA, 0xE7D3, 0x91C0, 0xE7D4,
- 0x91C1, 0xE7D5, 0x91C6, 0x94CE, 0x91C7, 0x8DD1, 0x91C8, 0x8EDF,
- 0x91C9, 0xE7D6, 0x91CB, 0xE7D7, 0x91CC, 0x97A2, 0x91CD, 0x8F64,
- 0x91CE, 0x96EC, 0x91CF, 0x97CA, 0x91D0, 0xE7D8, 0x91D1, 0x8BE0,
- 0x91D6, 0xE7D9, 0x91D7, 0xFBBB, 0x91D8, 0x9342, 0x91DA, 0xFBBA,
- 0x91DB, 0xE7DC, 0x91DC, 0x8A98, 0x91DD, 0x906A, 0x91DE, 0xFBBC,
- 0x91DF, 0xE7DA, 0x91E1, 0xE7DB, 0x91E3, 0x92DE, 0x91E4, 0xFBBF,
- 0x91E5, 0xFBC0, 0x91E6, 0x9674, 0x91E7, 0x8BFA, 0x91ED, 0xFBBD,
- 0x91EE, 0xFBBE, 0x91F5, 0xE7DE, 0x91F6, 0xE7DF, 0x91FC, 0xE7DD,
- 0x91FF, 0xE7E1, 0x9206, 0xFBC1, 0x920A, 0xFBC3, 0x920D, 0x93DD,
- 0x920E, 0x8A62, 0x9210, 0xFBC2, 0x9211, 0xE7E5, 0x9214, 0xE7E2,
- 0x9215, 0xE7E4, 0x921E, 0xE7E0, 0x9229, 0xE86E, 0x922C, 0xE7E3,
- 0x9234, 0x97E9, 0x9237, 0x8CD8, 0x9239, 0xFBCA, 0x923A, 0xFBC4,
- 0x923C, 0xFBC6, 0x923F, 0xE7ED, 0x9240, 0xFBC5, 0x9244, 0x9353,
- 0x9245, 0xE7E8, 0x9248, 0xE7EB, 0x9249, 0xE7E9, 0x924B, 0xE7EE,
- 0x924E, 0xFBC7, 0x9250, 0xE7EF, 0x9251, 0xFBC9, 0x9257, 0xE7E7,
- 0x9259, 0xFBC8, 0x925A, 0xE7F4, 0x925B, 0x8994, 0x925E, 0xE7E6,
- 0x9262, 0x94AB, 0x9264, 0xE7EA, 0x9266, 0x8FDE, 0x9267, 0xFBCB,
- 0x9271, 0x8D7A, 0x9277, 0xFBCD, 0x9278, 0xFBCE, 0x927E, 0x9667,
- 0x9280, 0x8BE2, 0x9283, 0x8F65, 0x9285, 0x93BA, 0x9288, 0xFA5F,
- 0x9291, 0x914C, 0x9293, 0xE7F2, 0x9295, 0xE7EC, 0x9296, 0xE7F1,
- 0x9298, 0x96C1, 0x929A, 0x92B6, 0x929B, 0xE7F3, 0x929C, 0xE7F0,
- 0x92A7, 0xFBCC, 0x92AD, 0x914B, 0x92B7, 0xE7F7, 0x92B9, 0xE7F6,
- 0x92CF, 0xE7F5, 0x92D0, 0xFBD2, 0x92D2, 0x964E, 0x92D3, 0xFBD6,
- 0x92D5, 0xFBD4, 0x92D7, 0xFBD0, 0x92D9, 0xFBD1, 0x92E0, 0xFBD5,
- 0x92E4, 0x8F9B, 0x92E7, 0xFBCF, 0x92E9, 0xE7F8, 0x92EA, 0x95DD,
- 0x92ED, 0x8973, 0x92F2, 0x9565, 0x92F3, 0x9292, 0x92F8, 0x8B98,
- 0x92F9, 0xFA65, 0x92FA, 0xE7FA, 0x92FB, 0xFBD9, 0x92FC, 0x8D7C,
- 0x92FF, 0xFBDC, 0x9302, 0xFBDE, 0x9306, 0x8E4B, 0x930F, 0xE7F9,
- 0x9310, 0x908D, 0x9318, 0x908E, 0x9319, 0xE840, 0x931A, 0xE842,
- 0x931D, 0xFBDD, 0x931E, 0xFBDB, 0x9320, 0x8FF9, 0x9321, 0xFBD8,
- 0x9322, 0xE841, 0x9323, 0xE843, 0x9325, 0xFBD7, 0x9326, 0x8BD1,
- 0x9328, 0x9564, 0x932B, 0x8EE0, 0x932C, 0x9842, 0x932E, 0xE7FC,
- 0x932F, 0x8DF6, 0x9332, 0x985E, 0x9335, 0xE845, 0x933A, 0xE844,
- 0x933B, 0xE846, 0x9344, 0xE7FB, 0x9348, 0xFA5E, 0x934B, 0x93E7,
- 0x934D, 0x9374, 0x9354, 0x92D5, 0x9356, 0xE84B, 0x9357, 0xFBE0,
- 0x935B, 0x9262, 0x935C, 0xE847, 0x9360, 0xE848, 0x936C, 0x8C4C,
- 0x936E, 0xE84A, 0x9370, 0xFBDF, 0x9375, 0x8CAE, 0x937C, 0xE849,
- 0x937E, 0x8FDF, 0x938C, 0x8A99, 0x9394, 0xE84F, 0x9396, 0x8DBD,
- 0x9397, 0x9199, 0x939A, 0x92C8, 0x93A4, 0xFBE1, 0x93A7, 0x8A5A,
- 0x93AC, 0xE84D, 0x93AD, 0xE84E, 0x93AE, 0x92C1, 0x93B0, 0xE84C,
- 0x93B9, 0xE850, 0x93C3, 0xE856, 0x93C6, 0xFBE2, 0x93C8, 0xE859,
- 0x93D0, 0xE858, 0x93D1, 0x934C, 0x93D6, 0xE851, 0x93D7, 0xE852,
- 0x93D8, 0xE855, 0x93DD, 0xE857, 0x93DE, 0xFBE3, 0x93E1, 0x8BBE,
- 0x93E4, 0xE85A, 0x93E5, 0xE854, 0x93E8, 0xE853, 0x93F8, 0xFBE4,
- 0x9403, 0xE85E, 0x9407, 0xE85F, 0x9410, 0xE860, 0x9413, 0xE85D,
- 0x9414, 0xE85C, 0x9418, 0x8FE0, 0x9419, 0x93A8, 0x941A, 0xE85B,
- 0x9421, 0xE864, 0x942B, 0xE862, 0x9431, 0xFBE5, 0x9435, 0xE863,
- 0x9436, 0xE861, 0x9438, 0x91F6, 0x943A, 0xE865, 0x9441, 0xE866,
- 0x9444, 0xE868, 0x9445, 0xFBE6, 0x9448, 0xFBE7, 0x9451, 0x8AD3,
- 0x9452, 0xE867, 0x9453, 0x96F8, 0x945A, 0xE873, 0x945B, 0xE869,
- 0x945E, 0xE86C, 0x9460, 0xE86A, 0x9462, 0xE86B, 0x946A, 0xE86D,
- 0x9470, 0xE86F, 0x9475, 0xE870, 0x9477, 0xE871, 0x947C, 0xE874,
- 0x947D, 0xE872, 0x947E, 0xE875, 0x947F, 0xE877, 0x9481, 0xE876,
- 0x9577, 0x92B7, 0x9580, 0x96E5, 0x9582, 0xE878, 0x9583, 0x914D,
- 0x9587, 0xE879, 0x9589, 0x95C2, 0x958A, 0xE87A, 0x958B, 0x8A4A,
- 0x958F, 0x895B, 0x9591, 0x8AD5, 0x9592, 0xFBE8, 0x9593, 0x8AD4,
- 0x9594, 0xE87B, 0x9596, 0xE87C, 0x9598, 0xE87D, 0x9599, 0xE87E,
- 0x95A0, 0xE880, 0x95A2, 0x8AD6, 0x95A3, 0x8A74, 0x95A4, 0x8D7D,
- 0x95A5, 0x94B4, 0x95A7, 0xE882, 0x95A8, 0xE881, 0x95AD, 0xE883,
- 0x95B2, 0x897B, 0x95B9, 0xE886, 0x95BB, 0xE885, 0x95BC, 0xE884,
- 0x95BE, 0xE887, 0x95C3, 0xE88A, 0x95C7, 0x88C5, 0x95CA, 0xE888,
- 0x95CC, 0xE88C, 0x95CD, 0xE88B, 0x95D4, 0xE88E, 0x95D5, 0xE88D,
- 0x95D6, 0xE88F, 0x95D8, 0x93AC, 0x95DC, 0xE890, 0x95E1, 0xE891,
- 0x95E2, 0xE893, 0x95E5, 0xE892, 0x961C, 0x958C, 0x9621, 0xE894,
- 0x9628, 0xE895, 0x962A, 0x8DE3, 0x962E, 0xE896, 0x962F, 0xE897,
- 0x9632, 0x9668, 0x963B, 0x916A, 0x963F, 0x88A2, 0x9640, 0x91C9,
- 0x9642, 0xE898, 0x9644, 0x958D, 0x964B, 0xE89B, 0x964C, 0xE899,
- 0x964D, 0x8D7E, 0x964F, 0xE89A, 0x9650, 0x8CC0, 0x965B, 0x95C3,
- 0x965C, 0xE89D, 0x965D, 0xE89F, 0x965E, 0xE89E, 0x965F, 0xE8A0,
- 0x9662, 0x8940, 0x9663, 0x9077, 0x9664, 0x8F9C, 0x9665, 0x8AD7,
- 0x9666, 0xE8A1, 0x966A, 0x9486, 0x966C, 0xE8A3, 0x9670, 0x8941,
- 0x9672, 0xE8A2, 0x9673, 0x92C2, 0x9675, 0x97CB, 0x9676, 0x93A9,
- 0x9677, 0xE89C, 0x9678, 0x97A4, 0x967A, 0x8CAF, 0x967D, 0x977A,
- 0x9685, 0x8BF7, 0x9686, 0x97B2, 0x9688, 0x8C47, 0x968A, 0x91E0,
- 0x968B, 0xE440, 0x968D, 0xE8A4, 0x968E, 0x8A4B, 0x968F, 0x908F,
- 0x9694, 0x8A75, 0x9695, 0xE8A6, 0x9697, 0xE8A7, 0x9698, 0xE8A5,
- 0x9699, 0x8C84, 0x969B, 0x8DDB, 0x969C, 0x8FE1, 0x969D, 0xFBEB,
- 0x96A0, 0x8942, 0x96A3, 0x97D7, 0x96A7, 0xE8A9, 0x96A8, 0xE7AC,
- 0x96AA, 0xE8A8, 0x96AF, 0xFBEC, 0x96B0, 0xE8AC, 0x96B1, 0xE8AA,
- 0x96B2, 0xE8AB, 0x96B4, 0xE8AD, 0x96B6, 0xE8AE, 0x96B7, 0x97EA,
- 0x96B8, 0xE8AF, 0x96B9, 0xE8B0, 0x96BB, 0x90C7, 0x96BC, 0x94B9,
- 0x96C0, 0x909D, 0x96C1, 0x8AE5, 0x96C4, 0x9759, 0x96C5, 0x89EB,
- 0x96C6, 0x8F57, 0x96C7, 0x8CD9, 0x96C9, 0xE8B3, 0x96CB, 0xE8B2,
- 0x96CC, 0x8E93, 0x96CD, 0xE8B4, 0x96CE, 0xE8B1, 0x96D1, 0x8E47,
- 0x96D5, 0xE8B8, 0x96D6, 0xE5AB, 0x96D9, 0x99D4, 0x96DB, 0x9097,
- 0x96DC, 0xE8B6, 0x96E2, 0x97A3, 0x96E3, 0x93EF, 0x96E8, 0x894A,
- 0x96EA, 0x90E1, 0x96EB, 0x8EB4, 0x96F0, 0x95B5, 0x96F2, 0x895F,
- 0x96F6, 0x97EB, 0x96F7, 0x978B, 0x96F9, 0xE8B9, 0x96FB, 0x9364,
- 0x9700, 0x8EF9, 0x9704, 0xE8BA, 0x9706, 0xE8BB, 0x9707, 0x906B,
- 0x9708, 0xE8BC, 0x970A, 0x97EC, 0x970D, 0xE8B7, 0x970E, 0xE8BE,
- 0x970F, 0xE8C0, 0x9711, 0xE8BF, 0x9713, 0xE8BD, 0x9716, 0xE8C1,
- 0x9719, 0xE8C2, 0x971C, 0x919A, 0x971E, 0x89E0, 0x9724, 0xE8C3,
- 0x9727, 0x96B6, 0x972A, 0xE8C4, 0x9730, 0xE8C5, 0x9732, 0x9849,
- 0x9733, 0xFBED, 0x9738, 0x9E50, 0x9739, 0xE8C6, 0x973B, 0xFBEE,
- 0x973D, 0xE8C7, 0x973E, 0xE8C8, 0x9742, 0xE8CC, 0x9743, 0xFBEF,
- 0x9744, 0xE8C9, 0x9746, 0xE8CA, 0x9748, 0xE8CB, 0x9749, 0xE8CD,
- 0x974D, 0xFBF0, 0x974F, 0xFBF1, 0x9751, 0xFBF2, 0x9752, 0x90C2,
- 0x9755, 0xFBF3, 0x9756, 0x96F5, 0x9759, 0x90C3, 0x975C, 0xE8CE,
- 0x975E, 0x94F1, 0x9760, 0xE8CF, 0x9761, 0xEA72, 0x9762, 0x96CA,
- 0x9764, 0xE8D0, 0x9766, 0xE8D1, 0x9768, 0xE8D2, 0x9769, 0x8A76,
- 0x976B, 0xE8D4, 0x976D, 0x9078, 0x9771, 0xE8D5, 0x9774, 0x8C43,
- 0x9779, 0xE8D6, 0x977A, 0xE8DA, 0x977C, 0xE8D8, 0x9781, 0xE8D9,
- 0x9784, 0x8A93, 0x9785, 0xE8D7, 0x9786, 0xE8DB, 0x978B, 0xE8DC,
- 0x978D, 0x88C6, 0x978F, 0xE8DD, 0x9790, 0xE8DE, 0x9798, 0x8FE2,
- 0x979C, 0xE8DF, 0x97A0, 0x8B66, 0x97A3, 0xE8E2, 0x97A6, 0xE8E1,
- 0x97A8, 0xE8E0, 0x97AB, 0xE691, 0x97AD, 0x95DA, 0x97B3, 0xE8E3,
- 0x97B4, 0xE8E4, 0x97C3, 0xE8E5, 0x97C6, 0xE8E6, 0x97C8, 0xE8E7,
- 0x97CB, 0xE8E8, 0x97D3, 0x8AD8, 0x97DC, 0xE8E9, 0x97ED, 0xE8EA,
- 0x97EE, 0x9442, 0x97F2, 0xE8EC, 0x97F3, 0x89B9, 0x97F5, 0xE8EF,
- 0x97F6, 0xE8EE, 0x97FB, 0x8943, 0x97FF, 0x8BBF, 0x9801, 0x95C5,
- 0x9802, 0x92B8, 0x9803, 0x8DA0, 0x9805, 0x8D80, 0x9806, 0x8F87,
- 0x9808, 0x907B, 0x980C, 0xE8F1, 0x980F, 0xE8F0, 0x9810, 0x9761,
- 0x9811, 0x8AE6, 0x9812, 0x94D0, 0x9813, 0x93DA, 0x9817, 0x909C,
- 0x9818, 0x97CC, 0x981A, 0x8C7A, 0x9821, 0xE8F4, 0x9824, 0xE8F3,
- 0x982C, 0x966A, 0x982D, 0x93AA, 0x9834, 0x896F, 0x9837, 0xE8F5,
- 0x9838, 0xE8F2, 0x983B, 0x9570, 0x983C, 0x978A, 0x983D, 0xE8F6,
- 0x9846, 0xE8F7, 0x984B, 0xE8F9, 0x984C, 0x91E8, 0x984D, 0x8A7A,
- 0x984E, 0x8A7B, 0x984F, 0xE8F8, 0x9854, 0x8AE7, 0x9855, 0x8CB0,
- 0x9857, 0xFBF4, 0x9858, 0x8AE8, 0x985B, 0x935E, 0x985E, 0x97DE,
- 0x9865, 0xFBF5, 0x9867, 0x8CDA, 0x986B, 0xE8FA, 0x986F, 0xE8FB,
- 0x9870, 0xE8FC, 0x9871, 0xE940, 0x9873, 0xE942, 0x9874, 0xE941,
- 0x98A8, 0x9597, 0x98AA, 0xE943, 0x98AF, 0xE944, 0x98B1, 0xE945,
- 0x98B6, 0xE946, 0x98C3, 0xE948, 0x98C4, 0xE947, 0x98C6, 0xE949,
- 0x98DB, 0x94F2, 0x98DC, 0xE3CA, 0x98DF, 0x9048, 0x98E2, 0x8B51,
- 0x98E9, 0xE94A, 0x98EB, 0xE94B, 0x98ED, 0x99AA, 0x98EE, 0x9F5A,
- 0x98EF, 0x94D1, 0x98F2, 0x88F9, 0x98F4, 0x88B9, 0x98FC, 0x8E94,
- 0x98FD, 0x964F, 0x98FE, 0x8FFC, 0x9903, 0xE94C, 0x9905, 0x96DD,
- 0x9909, 0xE94D, 0x990A, 0x977B, 0x990C, 0x8961, 0x9910, 0x8E60,
- 0x9912, 0xE94E, 0x9913, 0x89EC, 0x9914, 0xE94F, 0x9918, 0xE950,
- 0x991D, 0xE952, 0x991E, 0xE953, 0x9920, 0xE955, 0x9921, 0xE951,
- 0x9924, 0xE954, 0x9927, 0xFBF8, 0x9928, 0x8AD9, 0x992C, 0xE956,
- 0x992E, 0xE957, 0x993D, 0xE958, 0x993E, 0xE959, 0x9942, 0xE95A,
- 0x9945, 0xE95C, 0x9949, 0xE95B, 0x994B, 0xE95E, 0x994C, 0xE961,
- 0x9950, 0xE95D, 0x9951, 0xE95F, 0x9952, 0xE960, 0x9955, 0xE962,
- 0x9957, 0x8BC0, 0x9996, 0x8EF1, 0x9997, 0xE963, 0x9998, 0xE964,
- 0x9999, 0x8D81, 0x999E, 0xFBFA, 0x99A5, 0xE965, 0x99A8, 0x8A5D,
- 0x99AC, 0x946E, 0x99AD, 0xE966, 0x99AE, 0xE967, 0x99B3, 0x9279,
- 0x99B4, 0x93E9, 0x99BC, 0xE968, 0x99C1, 0x949D, 0x99C4, 0x91CA,
- 0x99C5, 0x8977, 0x99C6, 0x8BEC, 0x99C8, 0x8BED, 0x99D0, 0x9293,
- 0x99D1, 0xE96D, 0x99D2, 0x8BEE, 0x99D5, 0x89ED, 0x99D8, 0xE96C,
- 0x99DB, 0xE96A, 0x99DD, 0xE96B, 0x99DF, 0xE969, 0x99E2, 0xE977,
- 0x99ED, 0xE96E, 0x99EE, 0xE96F, 0x99F1, 0xE970, 0x99F2, 0xE971,
- 0x99F8, 0xE973, 0x99FB, 0xE972, 0x99FF, 0x8F78, 0x9A01, 0xE974,
- 0x9A05, 0xE976, 0x9A0E, 0x8B52, 0x9A0F, 0xE975, 0x9A12, 0x919B,
- 0x9A13, 0x8CB1, 0x9A19, 0xE978, 0x9A28, 0x91CB, 0x9A2B, 0xE979,
- 0x9A30, 0x93AB, 0x9A37, 0xE97A, 0x9A3E, 0xE980, 0x9A40, 0xE97D,
- 0x9A42, 0xE97C, 0x9A43, 0xE97E, 0x9A45, 0xE97B, 0x9A4D, 0xE982,
- 0x9A4E, 0xFBFB, 0x9A55, 0xE981, 0x9A57, 0xE984, 0x9A5A, 0x8BC1,
- 0x9A5B, 0xE983, 0x9A5F, 0xE985, 0x9A62, 0xE986, 0x9A64, 0xE988,
- 0x9A65, 0xE987, 0x9A69, 0xE989, 0x9A6A, 0xE98B, 0x9A6B, 0xE98A,
- 0x9AA8, 0x8D9C, 0x9AAD, 0xE98C, 0x9AB0, 0xE98D, 0x9AB8, 0x8A5B,
- 0x9ABC, 0xE98E, 0x9AC0, 0xE98F, 0x9AC4, 0x9091, 0x9ACF, 0xE990,
- 0x9AD1, 0xE991, 0x9AD3, 0xE992, 0x9AD4, 0xE993, 0x9AD8, 0x8D82,
- 0x9AD9, 0xFBFC, 0x9ADC, 0xFC40, 0x9ADE, 0xE994, 0x9ADF, 0xE995,
- 0x9AE2, 0xE996, 0x9AE3, 0xE997, 0x9AE6, 0xE998, 0x9AEA, 0x94AF,
- 0x9AEB, 0xE99A, 0x9AED, 0x9545, 0x9AEE, 0xE99B, 0x9AEF, 0xE999,
- 0x9AF1, 0xE99D, 0x9AF4, 0xE99C, 0x9AF7, 0xE99E, 0x9AFB, 0xE99F,
- 0x9B06, 0xE9A0, 0x9B18, 0xE9A1, 0x9B1A, 0xE9A2, 0x9B1F, 0xE9A3,
- 0x9B22, 0xE9A4, 0x9B23, 0xE9A5, 0x9B25, 0xE9A6, 0x9B27, 0xE9A7,
- 0x9B28, 0xE9A8, 0x9B29, 0xE9A9, 0x9B2A, 0xE9AA, 0x9B2E, 0xE9AB,
- 0x9B2F, 0xE9AC, 0x9B31, 0x9F54, 0x9B32, 0xE9AD, 0x9B3B, 0xE2F6,
- 0x9B3C, 0x8B53, 0x9B41, 0x8A40, 0x9B42, 0x8DB0, 0x9B43, 0xE9AF,
- 0x9B44, 0xE9AE, 0x9B45, 0x96A3, 0x9B4D, 0xE9B1, 0x9B4E, 0xE9B2,
- 0x9B4F, 0xE9B0, 0x9B51, 0xE9B3, 0x9B54, 0x9682, 0x9B58, 0xE9B4,
- 0x9B5A, 0x8B9B, 0x9B6F, 0x9844, 0x9B72, 0xFC42, 0x9B74, 0xE9B5,
- 0x9B75, 0xFC41, 0x9B83, 0xE9B7, 0x9B8E, 0x88BC, 0x9B8F, 0xFC43,
- 0x9B91, 0xE9B8, 0x9B92, 0x95A9, 0x9B93, 0xE9B6, 0x9B96, 0xE9B9,
- 0x9B97, 0xE9BA, 0x9B9F, 0xE9BB, 0x9BA0, 0xE9BC, 0x9BA8, 0xE9BD,
- 0x9BAA, 0x968E, 0x9BAB, 0x8E4C, 0x9BAD, 0x8DF8, 0x9BAE, 0x914E,
- 0x9BB1, 0xFC44, 0x9BB4, 0xE9BE, 0x9BB9, 0xE9C1, 0x9BBB, 0xFC45,
- 0x9BC0, 0xE9BF, 0x9BC6, 0xE9C2, 0x9BC9, 0x8CEF, 0x9BCA, 0xE9C0,
- 0x9BCF, 0xE9C3, 0x9BD1, 0xE9C4, 0x9BD2, 0xE9C5, 0x9BD4, 0xE9C9,
- 0x9BD6, 0x8E49, 0x9BDB, 0x91E2, 0x9BE1, 0xE9CA, 0x9BE2, 0xE9C7,
- 0x9BE3, 0xE9C6, 0x9BE4, 0xE9C8, 0x9BE8, 0x8C7E, 0x9BF0, 0xE9CE,
- 0x9BF1, 0xE9CD, 0x9BF2, 0xE9CC, 0x9BF5, 0x88B1, 0x9C00, 0xFC46,
- 0x9C04, 0xE9D8, 0x9C06, 0xE9D4, 0x9C08, 0xE9D5, 0x9C09, 0xE9D1,
- 0x9C0A, 0xE9D7, 0x9C0C, 0xE9D3, 0x9C0D, 0x8A82, 0x9C10, 0x986B,
- 0x9C12, 0xE9D6, 0x9C13, 0xE9D2, 0x9C14, 0xE9D0, 0x9C15, 0xE9CF,
- 0x9C1B, 0xE9DA, 0x9C21, 0xE9DD, 0x9C24, 0xE9DC, 0x9C25, 0xE9DB,
- 0x9C2D, 0x9568, 0x9C2E, 0xE9D9, 0x9C2F, 0x88F1, 0x9C30, 0xE9DE,
- 0x9C32, 0xE9E0, 0x9C39, 0x8A8F, 0x9C3A, 0xE9CB, 0x9C3B, 0x8956,
- 0x9C3E, 0xE9E2, 0x9C46, 0xE9E1, 0x9C47, 0xE9DF, 0x9C48, 0x924C,
- 0x9C52, 0x9690, 0x9C57, 0x97D8, 0x9C5A, 0xE9E3, 0x9C60, 0xE9E4,
- 0x9C67, 0xE9E5, 0x9C76, 0xE9E6, 0x9C78, 0xE9E7, 0x9CE5, 0x92B9,
- 0x9CE7, 0xE9E8, 0x9CE9, 0x94B5, 0x9CEB, 0xE9ED, 0x9CEC, 0xE9E9,
- 0x9CF0, 0xE9EA, 0x9CF3, 0x9650, 0x9CF4, 0x96C2, 0x9CF6, 0x93CE,
- 0x9D03, 0xE9EE, 0x9D06, 0xE9EF, 0x9D07, 0x93BC, 0x9D08, 0xE9EC,
- 0x9D09, 0xE9EB, 0x9D0E, 0x89A8, 0x9D12, 0xE9F7, 0x9D15, 0xE9F6,
- 0x9D1B, 0x8995, 0x9D1F, 0xE9F4, 0x9D23, 0xE9F3, 0x9D26, 0xE9F1,
- 0x9D28, 0x8A9B, 0x9D2A, 0xE9F0, 0x9D2B, 0x8EB0, 0x9D2C, 0x89A7,
- 0x9D3B, 0x8D83, 0x9D3E, 0xE9FA, 0x9D3F, 0xE9F9, 0x9D41, 0xE9F8,
- 0x9D44, 0xE9F5, 0x9D46, 0xE9FB, 0x9D48, 0xE9FC, 0x9D50, 0xEA44,
- 0x9D51, 0xEA43, 0x9D59, 0xEA45, 0x9D5C, 0x894C, 0x9D5D, 0xEA40,
- 0x9D5E, 0xEA41, 0x9D60, 0x8D94, 0x9D61, 0x96B7, 0x9D64, 0xEA42,
- 0x9D6B, 0xFC48, 0x9D6C, 0x9651, 0x9D6F, 0xEA4A, 0x9D70, 0xFC47,
- 0x9D72, 0xEA46, 0x9D7A, 0xEA4B, 0x9D87, 0xEA48, 0x9D89, 0xEA47,
- 0x9D8F, 0x8C7B, 0x9D9A, 0xEA4C, 0x9DA4, 0xEA4D, 0x9DA9, 0xEA4E,
- 0x9DAB, 0xEA49, 0x9DAF, 0xE9F2, 0x9DB2, 0xEA4F, 0x9DB4, 0x92DF,
- 0x9DB8, 0xEA53, 0x9DBA, 0xEA54, 0x9DBB, 0xEA52, 0x9DC1, 0xEA51,
- 0x9DC2, 0xEA57, 0x9DC4, 0xEA50, 0x9DC6, 0xEA55, 0x9DCF, 0xEA56,
- 0x9DD3, 0xEA59, 0x9DD9, 0xEA58, 0x9DE6, 0xEA5B, 0x9DED, 0xEA5C,
- 0x9DEF, 0xEA5D, 0x9DF2, 0x9868, 0x9DF8, 0xEA5A, 0x9DF9, 0x91E9,
- 0x9DFA, 0x8DEB, 0x9DFD, 0xEA5E, 0x9E19, 0xFC4A, 0x9E1A, 0xEA5F,
- 0x9E1B, 0xEA60, 0x9E1E, 0xEA61, 0x9E75, 0xEA62, 0x9E78, 0x8CB2,
- 0x9E79, 0xEA63, 0x9E7D, 0xEA64, 0x9E7F, 0x8EAD, 0x9E81, 0xEA65,
- 0x9E88, 0xEA66, 0x9E8B, 0xEA67, 0x9E8C, 0xEA68, 0x9E91, 0xEA6B,
- 0x9E92, 0xEA69, 0x9E93, 0x985B, 0x9E95, 0xEA6A, 0x9E97, 0x97ED,
- 0x9E9D, 0xEA6C, 0x9E9F, 0x97D9, 0x9EA5, 0xEA6D, 0x9EA6, 0x949E,
- 0x9EA9, 0xEA6E, 0x9EAA, 0xEA70, 0x9EAD, 0xEA71, 0x9EB8, 0xEA6F,
- 0x9EB9, 0x8D8D, 0x9EBA, 0x96CB, 0x9EBB, 0x9683, 0x9EBC, 0x9BF5,
- 0x9EBE, 0x9F80, 0x9EBF, 0x969B, 0x9EC4, 0x89A9, 0x9ECC, 0xEA73,
- 0x9ECD, 0x8B6F, 0x9ECE, 0xEA74, 0x9ECF, 0xEA75, 0x9ED0, 0xEA76,
- 0x9ED1, 0xFC4B, 0x9ED2, 0x8D95, 0x9ED4, 0xEA77, 0x9ED8, 0xE0D2,
- 0x9ED9, 0x96D9, 0x9EDB, 0x91E1, 0x9EDC, 0xEA78, 0x9EDD, 0xEA7A,
- 0x9EDE, 0xEA79, 0x9EE0, 0xEA7B, 0x9EE5, 0xEA7C, 0x9EE8, 0xEA7D,
- 0x9EEF, 0xEA7E, 0x9EF4, 0xEA80, 0x9EF6, 0xEA81, 0x9EF7, 0xEA82,
- 0x9EF9, 0xEA83, 0x9EFB, 0xEA84, 0x9EFC, 0xEA85, 0x9EFD, 0xEA86,
- 0x9F07, 0xEA87, 0x9F08, 0xEA88, 0x9F0E, 0x9343, 0x9F13, 0x8CDB,
- 0x9F15, 0xEA8A, 0x9F20, 0x916C, 0x9F21, 0xEA8B, 0x9F2C, 0xEA8C,
- 0x9F3B, 0x9540, 0x9F3E, 0xEA8D, 0x9F4A, 0xEA8E, 0x9F4B, 0xE256,
- 0x9F4E, 0xE6D8, 0x9F4F, 0xE8EB, 0x9F52, 0xEA8F, 0x9F54, 0xEA90,
- 0x9F5F, 0xEA92, 0x9F60, 0xEA93, 0x9F61, 0xEA94, 0x9F62, 0x97EE,
- 0x9F63, 0xEA91, 0x9F66, 0xEA95, 0x9F67, 0xEA96, 0x9F6A, 0xEA98,
- 0x9F6C, 0xEA97, 0x9F72, 0xEA9A, 0x9F76, 0xEA9B, 0x9F77, 0xEA99,
- 0x9F8D, 0x97B4, 0x9F95, 0xEA9C, 0x9F9C, 0xEA9D, 0x9F9D, 0xE273,
- 0x9FA0, 0xEA9E, 0xF929, 0xFAE0, 0xF9DC, 0xFBE9, 0xFA0E, 0xFA90,
- 0xFA0F, 0xFA9B, 0xFA10, 0xFA9C, 0xFA11, 0xFAB1, 0xFA12, 0xFAD8,
- 0xFA13, 0xFAE8, 0xFA14, 0xFAEA, 0xFA15, 0xFB58, 0xFA16, 0xFB5E,
- 0xFA17, 0xFB75, 0xFA18, 0xFB7D, 0xFA19, 0xFB7E, 0xFA1A, 0xFB80,
- 0xFA1B, 0xFB82, 0xFA1C, 0xFB86, 0xFA1D, 0xFB89, 0xFA1E, 0xFB92,
- 0xFA1F, 0xFB9D, 0xFA20, 0xFB9F, 0xFA21, 0xFBA0, 0xFA22, 0xFBA9,
- 0xFA23, 0xFBB1, 0xFA24, 0xFBB3, 0xFA25, 0xFBB4, 0xFA26, 0xFBB7,
- 0xFA27, 0xFBD3, 0xFA28, 0xFBDA, 0xFA29, 0xFBEA, 0xFA2A, 0xFBF6,
- 0xFA2B, 0xFBF7, 0xFA2C, 0xFBF9, 0xFA2D, 0xFC49, 0xFF01, 0x8149,
- 0xFF02, 0xFA57, 0xFF03, 0x8194, 0xFF04, 0x8190, 0xFF05, 0x8193,
- 0xFF06, 0x8195, 0xFF07, 0xFA56, 0xFF08, 0x8169, 0xFF09, 0x816A,
- 0xFF0A, 0x8196, 0xFF0B, 0x817B, 0xFF0C, 0x8143, 0xFF0D, 0x817C,
- 0xFF0E, 0x8144, 0xFF0F, 0x815E, 0xFF10, 0x824F, 0xFF11, 0x8250,
- 0xFF12, 0x8251, 0xFF13, 0x8252, 0xFF14, 0x8253, 0xFF15, 0x8254,
- 0xFF16, 0x8255, 0xFF17, 0x8256, 0xFF18, 0x8257, 0xFF19, 0x8258,
- 0xFF1A, 0x8146, 0xFF1B, 0x8147, 0xFF1C, 0x8183, 0xFF1D, 0x8181,
- 0xFF1E, 0x8184, 0xFF1F, 0x8148, 0xFF20, 0x8197, 0xFF21, 0x8260,
- 0xFF22, 0x8261, 0xFF23, 0x8262, 0xFF24, 0x8263, 0xFF25, 0x8264,
- 0xFF26, 0x8265, 0xFF27, 0x8266, 0xFF28, 0x8267, 0xFF29, 0x8268,
- 0xFF2A, 0x8269, 0xFF2B, 0x826A, 0xFF2C, 0x826B, 0xFF2D, 0x826C,
- 0xFF2E, 0x826D, 0xFF2F, 0x826E, 0xFF30, 0x826F, 0xFF31, 0x8270,
- 0xFF32, 0x8271, 0xFF33, 0x8272, 0xFF34, 0x8273, 0xFF35, 0x8274,
- 0xFF36, 0x8275, 0xFF37, 0x8276, 0xFF38, 0x8277, 0xFF39, 0x8278,
- 0xFF3A, 0x8279, 0xFF3B, 0x816D, 0xFF3C, 0x815F, 0xFF3D, 0x816E,
- 0xFF3E, 0x814F, 0xFF3F, 0x8151, 0xFF40, 0x814D, 0xFF41, 0x8281,
- 0xFF42, 0x8282, 0xFF43, 0x8283, 0xFF44, 0x8284, 0xFF45, 0x8285,
- 0xFF46, 0x8286, 0xFF47, 0x8287, 0xFF48, 0x8288, 0xFF49, 0x8289,
- 0xFF4A, 0x828A, 0xFF4B, 0x828B, 0xFF4C, 0x828C, 0xFF4D, 0x828D,
- 0xFF4E, 0x828E, 0xFF4F, 0x828F, 0xFF50, 0x8290, 0xFF51, 0x8291,
- 0xFF52, 0x8292, 0xFF53, 0x8293, 0xFF54, 0x8294, 0xFF55, 0x8295,
- 0xFF56, 0x8296, 0xFF57, 0x8297, 0xFF58, 0x8298, 0xFF59, 0x8299,
- 0xFF5A, 0x829A, 0xFF5B, 0x816F, 0xFF5C, 0x8162, 0xFF5D, 0x8170,
- 0xFF5E, 0x8160, 0xFF61, 0x00A1, 0xFF62, 0x00A2, 0xFF63, 0x00A3,
- 0xFF64, 0x00A4, 0xFF65, 0x00A5, 0xFF66, 0x00A6, 0xFF67, 0x00A7,
- 0xFF68, 0x00A8, 0xFF69, 0x00A9, 0xFF6A, 0x00AA, 0xFF6B, 0x00AB,
- 0xFF6C, 0x00AC, 0xFF6D, 0x00AD, 0xFF6E, 0x00AE, 0xFF6F, 0x00AF,
- 0xFF70, 0x00B0, 0xFF71, 0x00B1, 0xFF72, 0x00B2, 0xFF73, 0x00B3,
- 0xFF74, 0x00B4, 0xFF75, 0x00B5, 0xFF76, 0x00B6, 0xFF77, 0x00B7,
- 0xFF78, 0x00B8, 0xFF79, 0x00B9, 0xFF7A, 0x00BA, 0xFF7B, 0x00BB,
- 0xFF7C, 0x00BC, 0xFF7D, 0x00BD, 0xFF7E, 0x00BE, 0xFF7F, 0x00BF,
- 0xFF80, 0x00C0, 0xFF81, 0x00C1, 0xFF82, 0x00C2, 0xFF83, 0x00C3,
- 0xFF84, 0x00C4, 0xFF85, 0x00C5, 0xFF86, 0x00C6, 0xFF87, 0x00C7,
- 0xFF88, 0x00C8, 0xFF89, 0x00C9, 0xFF8A, 0x00CA, 0xFF8B, 0x00CB,
- 0xFF8C, 0x00CC, 0xFF8D, 0x00CD, 0xFF8E, 0x00CE, 0xFF8F, 0x00CF,
- 0xFF90, 0x00D0, 0xFF91, 0x00D1, 0xFF92, 0x00D2, 0xFF93, 0x00D3,
- 0xFF94, 0x00D4, 0xFF95, 0x00D5, 0xFF96, 0x00D6, 0xFF97, 0x00D7,
- 0xFF98, 0x00D8, 0xFF99, 0x00D9, 0xFF9A, 0x00DA, 0xFF9B, 0x00DB,
- 0xFF9C, 0x00DC, 0xFF9D, 0x00DD, 0xFF9E, 0x00DE, 0xFF9F, 0x00DF,
- 0xFFE0, 0x8191, 0xFFE1, 0x8192, 0xFFE2, 0x81CA, 0xFFE3, 0x8150,
- 0xFFE4, 0xFA55, 0xFFE5, 0x818F, 0, 0
-};
-
-#if !_TINY_TABLE
-static
-const WCHAR sjis2uni[] = {
- /* SJIS - Unicode, SJIS - Unicode, SJIS - Unicode, SJIS - Unicode, */
- 0x00A1, 0xFF61, 0x00A2, 0xFF62, 0x00A3, 0xFF63, 0x00A4, 0xFF64,
- 0x00A5, 0xFF65, 0x00A6, 0xFF66, 0x00A7, 0xFF67, 0x00A8, 0xFF68,
- 0x00A9, 0xFF69, 0x00AA, 0xFF6A, 0x00AB, 0xFF6B, 0x00AC, 0xFF6C,
- 0x00AD, 0xFF6D, 0x00AE, 0xFF6E, 0x00AF, 0xFF6F, 0x00B0, 0xFF70,
- 0x00B1, 0xFF71, 0x00B2, 0xFF72, 0x00B3, 0xFF73, 0x00B4, 0xFF74,
- 0x00B5, 0xFF75, 0x00B6, 0xFF76, 0x00B7, 0xFF77, 0x00B8, 0xFF78,
- 0x00B9, 0xFF79, 0x00BA, 0xFF7A, 0x00BB, 0xFF7B, 0x00BC, 0xFF7C,
- 0x00BD, 0xFF7D, 0x00BE, 0xFF7E, 0x00BF, 0xFF7F, 0x00C0, 0xFF80,
- 0x00C1, 0xFF81, 0x00C2, 0xFF82, 0x00C3, 0xFF83, 0x00C4, 0xFF84,
- 0x00C5, 0xFF85, 0x00C6, 0xFF86, 0x00C7, 0xFF87, 0x00C8, 0xFF88,
- 0x00C9, 0xFF89, 0x00CA, 0xFF8A, 0x00CB, 0xFF8B, 0x00CC, 0xFF8C,
- 0x00CD, 0xFF8D, 0x00CE, 0xFF8E, 0x00CF, 0xFF8F, 0x00D0, 0xFF90,
- 0x00D1, 0xFF91, 0x00D2, 0xFF92, 0x00D3, 0xFF93, 0x00D4, 0xFF94,
- 0x00D5, 0xFF95, 0x00D6, 0xFF96, 0x00D7, 0xFF97, 0x00D8, 0xFF98,
- 0x00D9, 0xFF99, 0x00DA, 0xFF9A, 0x00DB, 0xFF9B, 0x00DC, 0xFF9C,
- 0x00DD, 0xFF9D, 0x00DE, 0xFF9E, 0x00DF, 0xFF9F, 0x8140, 0x3000,
- 0x8141, 0x3001, 0x8142, 0x3002, 0x8143, 0xFF0C, 0x8144, 0xFF0E,
- 0x8145, 0x30FB, 0x8146, 0xFF1A, 0x8147, 0xFF1B, 0x8148, 0xFF1F,
- 0x8149, 0xFF01, 0x814A, 0x309B, 0x814B, 0x309C, 0x814C, 0x00B4,
- 0x814D, 0xFF40, 0x814E, 0x00A8, 0x814F, 0xFF3E, 0x8150, 0xFFE3,
- 0x8151, 0xFF3F, 0x8152, 0x30FD, 0x8153, 0x30FE, 0x8154, 0x309D,
- 0x8155, 0x309E, 0x8156, 0x3003, 0x8157, 0x4EDD, 0x8158, 0x3005,
- 0x8159, 0x3006, 0x815A, 0x3007, 0x815B, 0x30FC, 0x815C, 0x2015,
- 0x815D, 0x2010, 0x815E, 0xFF0F, 0x815F, 0xFF3C, 0x8160, 0xFF5E,
- 0x8161, 0x2225, 0x8162, 0xFF5C, 0x8163, 0x2026, 0x8164, 0x2025,
- 0x8165, 0x2018, 0x8166, 0x2019, 0x8167, 0x201C, 0x8168, 0x201D,
- 0x8169, 0xFF08, 0x816A, 0xFF09, 0x816B, 0x3014, 0x816C, 0x3015,
- 0x816D, 0xFF3B, 0x816E, 0xFF3D, 0x816F, 0xFF5B, 0x8170, 0xFF5D,
- 0x8171, 0x3008, 0x8172, 0x3009, 0x8173, 0x300A, 0x8174, 0x300B,
- 0x8175, 0x300C, 0x8176, 0x300D, 0x8177, 0x300E, 0x8178, 0x300F,
- 0x8179, 0x3010, 0x817A, 0x3011, 0x817B, 0xFF0B, 0x817C, 0xFF0D,
- 0x817D, 0x00B1, 0x817E, 0x00D7, 0x8180, 0x00F7, 0x8181, 0xFF1D,
- 0x8182, 0x2260, 0x8183, 0xFF1C, 0x8184, 0xFF1E, 0x8185, 0x2266,
- 0x8186, 0x2267, 0x8187, 0x221E, 0x8188, 0x2234, 0x8189, 0x2642,
- 0x818A, 0x2640, 0x818B, 0x00B0, 0x818C, 0x2032, 0x818D, 0x2033,
- 0x818E, 0x2103, 0x818F, 0xFFE5, 0x8190, 0xFF04, 0x8191, 0xFFE0,
- 0x8192, 0xFFE1, 0x8193, 0xFF05, 0x8194, 0xFF03, 0x8195, 0xFF06,
- 0x8196, 0xFF0A, 0x8197, 0xFF20, 0x8198, 0x00A7, 0x8199, 0x2606,
- 0x819A, 0x2605, 0x819B, 0x25CB, 0x819C, 0x25CF, 0x819D, 0x25CE,
- 0x819E, 0x25C7, 0x819F, 0x25C6, 0x81A0, 0x25A1, 0x81A1, 0x25A0,
- 0x81A2, 0x25B3, 0x81A3, 0x25B2, 0x81A4, 0x25BD, 0x81A5, 0x25BC,
- 0x81A6, 0x203B, 0x81A7, 0x3012, 0x81A8, 0x2192, 0x81A9, 0x2190,
- 0x81AA, 0x2191, 0x81AB, 0x2193, 0x81AC, 0x3013, 0x81B8, 0x2208,
- 0x81B9, 0x220B, 0x81BA, 0x2286, 0x81BB, 0x2287, 0x81BC, 0x2282,
- 0x81BD, 0x2283, 0x81BE, 0x222A, 0x81BF, 0x2229, 0x81C8, 0x2227,
- 0x81C9, 0x2228, 0x81CA, 0xFFE2, 0x81CB, 0x21D2, 0x81CC, 0x21D4,
- 0x81CD, 0x2200, 0x81CE, 0x2203, 0x81DA, 0x2220, 0x81DB, 0x22A5,
- 0x81DC, 0x2312, 0x81DD, 0x2202, 0x81DE, 0x2207, 0x81DF, 0x2261,
- 0x81E0, 0x2252, 0x81E1, 0x226A, 0x81E2, 0x226B, 0x81E3, 0x221A,
- 0x81E4, 0x223D, 0x81E5, 0x221D, 0x81E6, 0x2235, 0x81E7, 0x222B,
- 0x81E8, 0x222C, 0x81F0, 0x212B, 0x81F1, 0x2030, 0x81F2, 0x266F,
- 0x81F3, 0x266D, 0x81F4, 0x266A, 0x81F5, 0x2020, 0x81F6, 0x2021,
- 0x81F7, 0x00B6, 0x81FC, 0x25EF, 0x824F, 0xFF10, 0x8250, 0xFF11,
- 0x8251, 0xFF12, 0x8252, 0xFF13, 0x8253, 0xFF14, 0x8254, 0xFF15,
- 0x8255, 0xFF16, 0x8256, 0xFF17, 0x8257, 0xFF18, 0x8258, 0xFF19,
- 0x8260, 0xFF21, 0x8261, 0xFF22, 0x8262, 0xFF23, 0x8263, 0xFF24,
- 0x8264, 0xFF25, 0x8265, 0xFF26, 0x8266, 0xFF27, 0x8267, 0xFF28,
- 0x8268, 0xFF29, 0x8269, 0xFF2A, 0x826A, 0xFF2B, 0x826B, 0xFF2C,
- 0x826C, 0xFF2D, 0x826D, 0xFF2E, 0x826E, 0xFF2F, 0x826F, 0xFF30,
- 0x8270, 0xFF31, 0x8271, 0xFF32, 0x8272, 0xFF33, 0x8273, 0xFF34,
- 0x8274, 0xFF35, 0x8275, 0xFF36, 0x8276, 0xFF37, 0x8277, 0xFF38,
- 0x8278, 0xFF39, 0x8279, 0xFF3A, 0x8281, 0xFF41, 0x8282, 0xFF42,
- 0x8283, 0xFF43, 0x8284, 0xFF44, 0x8285, 0xFF45, 0x8286, 0xFF46,
- 0x8287, 0xFF47, 0x8288, 0xFF48, 0x8289, 0xFF49, 0x828A, 0xFF4A,
- 0x828B, 0xFF4B, 0x828C, 0xFF4C, 0x828D, 0xFF4D, 0x828E, 0xFF4E,
- 0x828F, 0xFF4F, 0x8290, 0xFF50, 0x8291, 0xFF51, 0x8292, 0xFF52,
- 0x8293, 0xFF53, 0x8294, 0xFF54, 0x8295, 0xFF55, 0x8296, 0xFF56,
- 0x8297, 0xFF57, 0x8298, 0xFF58, 0x8299, 0xFF59, 0x829A, 0xFF5A,
- 0x829F, 0x3041, 0x82A0, 0x3042, 0x82A1, 0x3043, 0x82A2, 0x3044,
- 0x82A3, 0x3045, 0x82A4, 0x3046, 0x82A5, 0x3047, 0x82A6, 0x3048,
- 0x82A7, 0x3049, 0x82A8, 0x304A, 0x82A9, 0x304B, 0x82AA, 0x304C,
- 0x82AB, 0x304D, 0x82AC, 0x304E, 0x82AD, 0x304F, 0x82AE, 0x3050,
- 0x82AF, 0x3051, 0x82B0, 0x3052, 0x82B1, 0x3053, 0x82B2, 0x3054,
- 0x82B3, 0x3055, 0x82B4, 0x3056, 0x82B5, 0x3057, 0x82B6, 0x3058,
- 0x82B7, 0x3059, 0x82B8, 0x305A, 0x82B9, 0x305B, 0x82BA, 0x305C,
- 0x82BB, 0x305D, 0x82BC, 0x305E, 0x82BD, 0x305F, 0x82BE, 0x3060,
- 0x82BF, 0x3061, 0x82C0, 0x3062, 0x82C1, 0x3063, 0x82C2, 0x3064,
- 0x82C3, 0x3065, 0x82C4, 0x3066, 0x82C5, 0x3067, 0x82C6, 0x3068,
- 0x82C7, 0x3069, 0x82C8, 0x306A, 0x82C9, 0x306B, 0x82CA, 0x306C,
- 0x82CB, 0x306D, 0x82CC, 0x306E, 0x82CD, 0x306F, 0x82CE, 0x3070,
- 0x82CF, 0x3071, 0x82D0, 0x3072, 0x82D1, 0x3073, 0x82D2, 0x3074,
- 0x82D3, 0x3075, 0x82D4, 0x3076, 0x82D5, 0x3077, 0x82D6, 0x3078,
- 0x82D7, 0x3079, 0x82D8, 0x307A, 0x82D9, 0x307B, 0x82DA, 0x307C,
- 0x82DB, 0x307D, 0x82DC, 0x307E, 0x82DD, 0x307F, 0x82DE, 0x3080,
- 0x82DF, 0x3081, 0x82E0, 0x3082, 0x82E1, 0x3083, 0x82E2, 0x3084,
- 0x82E3, 0x3085, 0x82E4, 0x3086, 0x82E5, 0x3087, 0x82E6, 0x3088,
- 0x82E7, 0x3089, 0x82E8, 0x308A, 0x82E9, 0x308B, 0x82EA, 0x308C,
- 0x82EB, 0x308D, 0x82EC, 0x308E, 0x82ED, 0x308F, 0x82EE, 0x3090,
- 0x82EF, 0x3091, 0x82F0, 0x3092, 0x82F1, 0x3093, 0x8340, 0x30A1,
- 0x8341, 0x30A2, 0x8342, 0x30A3, 0x8343, 0x30A4, 0x8344, 0x30A5,
- 0x8345, 0x30A6, 0x8346, 0x30A7, 0x8347, 0x30A8, 0x8348, 0x30A9,
- 0x8349, 0x30AA, 0x834A, 0x30AB, 0x834B, 0x30AC, 0x834C, 0x30AD,
- 0x834D, 0x30AE, 0x834E, 0x30AF, 0x834F, 0x30B0, 0x8350, 0x30B1,
- 0x8351, 0x30B2, 0x8352, 0x30B3, 0x8353, 0x30B4, 0x8354, 0x30B5,
- 0x8355, 0x30B6, 0x8356, 0x30B7, 0x8357, 0x30B8, 0x8358, 0x30B9,
- 0x8359, 0x30BA, 0x835A, 0x30BB, 0x835B, 0x30BC, 0x835C, 0x30BD,
- 0x835D, 0x30BE, 0x835E, 0x30BF, 0x835F, 0x30C0, 0x8360, 0x30C1,
- 0x8361, 0x30C2, 0x8362, 0x30C3, 0x8363, 0x30C4, 0x8364, 0x30C5,
- 0x8365, 0x30C6, 0x8366, 0x30C7, 0x8367, 0x30C8, 0x8368, 0x30C9,
- 0x8369, 0x30CA, 0x836A, 0x30CB, 0x836B, 0x30CC, 0x836C, 0x30CD,
- 0x836D, 0x30CE, 0x836E, 0x30CF, 0x836F, 0x30D0, 0x8370, 0x30D1,
- 0x8371, 0x30D2, 0x8372, 0x30D3, 0x8373, 0x30D4, 0x8374, 0x30D5,
- 0x8375, 0x30D6, 0x8376, 0x30D7, 0x8377, 0x30D8, 0x8378, 0x30D9,
- 0x8379, 0x30DA, 0x837A, 0x30DB, 0x837B, 0x30DC, 0x837C, 0x30DD,
- 0x837D, 0x30DE, 0x837E, 0x30DF, 0x8380, 0x30E0, 0x8381, 0x30E1,
- 0x8382, 0x30E2, 0x8383, 0x30E3, 0x8384, 0x30E4, 0x8385, 0x30E5,
- 0x8386, 0x30E6, 0x8387, 0x30E7, 0x8388, 0x30E8, 0x8389, 0x30E9,
- 0x838A, 0x30EA, 0x838B, 0x30EB, 0x838C, 0x30EC, 0x838D, 0x30ED,
- 0x838E, 0x30EE, 0x838F, 0x30EF, 0x8390, 0x30F0, 0x8391, 0x30F1,
- 0x8392, 0x30F2, 0x8393, 0x30F3, 0x8394, 0x30F4,
- 0x8395, 0x30F5, 0x8396, 0x30F6, 0x839F, 0x0391, 0x83A0, 0x0392,
- 0x83A1, 0x0393, 0x83A2, 0x0394, 0x83A3, 0x0395, 0x83A4, 0x0396,
- 0x83A5, 0x0397, 0x83A6, 0x0398, 0x83A7, 0x0399, 0x83A8, 0x039A,
- 0x83A9, 0x039B, 0x83AA, 0x039C, 0x83AB, 0x039D, 0x83AC, 0x039E,
- 0x83AD, 0x039F, 0x83AE, 0x03A0, 0x83AF, 0x03A1, 0x83B0, 0x03A3,
- 0x83B1, 0x03A4, 0x83B2, 0x03A5, 0x83B3, 0x03A6, 0x83B4, 0x03A7,
- 0x83B5, 0x03A8, 0x83B6, 0x03A9, 0x83BF, 0x03B1, 0x83C0, 0x03B2,
- 0x83C1, 0x03B3, 0x83C2, 0x03B4, 0x83C3, 0x03B5, 0x83C4, 0x03B6,
- 0x83C5, 0x03B7, 0x83C6, 0x03B8, 0x83C7, 0x03B9, 0x83C8, 0x03BA,
- 0x83C9, 0x03BB, 0x83CA, 0x03BC, 0x83CB, 0x03BD, 0x83CC, 0x03BE,
- 0x83CD, 0x03BF, 0x83CE, 0x03C0, 0x83CF, 0x03C1, 0x83D0, 0x03C3,
- 0x83D1, 0x03C4, 0x83D2, 0x03C5, 0x83D3, 0x03C6, 0x83D4, 0x03C7,
- 0x83D5, 0x03C8, 0x83D6, 0x03C9, 0x8440, 0x0410, 0x8441, 0x0411,
- 0x8442, 0x0412, 0x8443, 0x0413, 0x8444, 0x0414, 0x8445, 0x0415,
- 0x8446, 0x0401, 0x8447, 0x0416, 0x8448, 0x0417, 0x8449, 0x0418,
- 0x844A, 0x0419, 0x844B, 0x041A, 0x844C, 0x041B, 0x844D, 0x041C,
- 0x844E, 0x041D, 0x844F, 0x041E, 0x8450, 0x041F, 0x8451, 0x0420,
- 0x8452, 0x0421, 0x8453, 0x0422, 0x8454, 0x0423, 0x8455, 0x0424,
- 0x8456, 0x0425, 0x8457, 0x0426, 0x8458, 0x0427, 0x8459, 0x0428,
- 0x845A, 0x0429, 0x845B, 0x042A, 0x845C, 0x042B, 0x845D, 0x042C,
- 0x845E, 0x042D, 0x845F, 0x042E, 0x8460, 0x042F, 0x8470, 0x0430,
- 0x8471, 0x0431, 0x8472, 0x0432, 0x8473, 0x0433, 0x8474, 0x0434,
- 0x8475, 0x0435, 0x8476, 0x0451, 0x8477, 0x0436, 0x8478, 0x0437,
- 0x8479, 0x0438, 0x847A, 0x0439, 0x847B, 0x043A, 0x847C, 0x043B,
- 0x847D, 0x043C, 0x847E, 0x043D, 0x8480, 0x043E, 0x8481, 0x043F,
- 0x8482, 0x0440, 0x8483, 0x0441, 0x8484, 0x0442, 0x8485, 0x0443,
- 0x8486, 0x0444, 0x8487, 0x0445, 0x8488, 0x0446, 0x8489, 0x0447,
- 0x848A, 0x0448, 0x848B, 0x0449, 0x848C, 0x044A, 0x848D, 0x044B,
- 0x848E, 0x044C, 0x848F, 0x044D, 0x8490, 0x044E, 0x8491, 0x044F,
- 0x849F, 0x2500, 0x84A0, 0x2502, 0x84A1, 0x250C, 0x84A2, 0x2510,
- 0x84A3, 0x2518, 0x84A4, 0x2514, 0x84A5, 0x251C, 0x84A6, 0x252C,
- 0x84A7, 0x2524, 0x84A8, 0x2534, 0x84A9, 0x253C, 0x84AA, 0x2501,
- 0x84AB, 0x2503, 0x84AC, 0x250F, 0x84AD, 0x2513, 0x84AE, 0x251B,
- 0x84AF, 0x2517, 0x84B0, 0x2523, 0x84B1, 0x2533, 0x84B2, 0x252B,
- 0x84B3, 0x253B, 0x84B4, 0x254B, 0x84B5, 0x2520, 0x84B6, 0x252F,
- 0x84B7, 0x2528, 0x84B8, 0x2537, 0x84B9, 0x253F, 0x84BA, 0x251D,
- 0x84BB, 0x2530, 0x84BC, 0x2525, 0x84BD, 0x2538, 0x84BE, 0x2542,
- 0x8740, 0x2460, 0x8741, 0x2461, 0x8742, 0x2462, 0x8743, 0x2463,
- 0x8744, 0x2464, 0x8745, 0x2465, 0x8746, 0x2466, 0x8747, 0x2467,
- 0x8748, 0x2468, 0x8749, 0x2469, 0x874A, 0x246A, 0x874B, 0x246B,
- 0x874C, 0x246C, 0x874D, 0x246D, 0x874E, 0x246E, 0x874F, 0x246F,
- 0x8750, 0x2470, 0x8751, 0x2471, 0x8752, 0x2472, 0x8753, 0x2473,
- 0x8754, 0x2160, 0x8755, 0x2161, 0x8756, 0x2162, 0x8757, 0x2163,
- 0x8758, 0x2164, 0x8759, 0x2165, 0x875A, 0x2166, 0x875B, 0x2167,
- 0x875C, 0x2168, 0x875D, 0x2169, 0x875F, 0x3349, 0x8760, 0x3314,
- 0x8761, 0x3322, 0x8762, 0x334D, 0x8763, 0x3318, 0x8764, 0x3327,
- 0x8765, 0x3303, 0x8766, 0x3336, 0x8767, 0x3351, 0x8768, 0x3357,
- 0x8769, 0x330D, 0x876A, 0x3326, 0x876B, 0x3323, 0x876C, 0x332B,
- 0x876D, 0x334A, 0x876E, 0x333B, 0x876F, 0x339C, 0x8770, 0x339D,
- 0x8771, 0x339E, 0x8772, 0x338E, 0x8773, 0x338F, 0x8774, 0x33C4,
- 0x8775, 0x33A1, 0x877E, 0x337B, 0x8780, 0x301D, 0x8781, 0x301F,
- 0x8782, 0x2116, 0x8783, 0x33CD, 0x8784, 0x2121, 0x8785, 0x32A4,
- 0x8786, 0x32A5, 0x8787, 0x32A6, 0x8788, 0x32A7, 0x8789, 0x32A8,
- 0x878A, 0x3231, 0x878B, 0x3232, 0x878C, 0x3239, 0x878D, 0x337E,
- 0x878E, 0x337D, 0x878F, 0x337C, 0x8793, 0x222E, 0x8794, 0x2211,
- 0x8798, 0x221F, 0x8799, 0x22BF, 0x889F, 0x4E9C, 0x88A0, 0x5516,
- 0x88A1, 0x5A03, 0x88A2, 0x963F, 0x88A3, 0x54C0, 0x88A4, 0x611B,
- 0x88A5, 0x6328, 0x88A6, 0x59F6, 0x88A7, 0x9022, 0x88A8, 0x8475,
- 0x88A9, 0x831C, 0x88AA, 0x7A50, 0x88AB, 0x60AA, 0x88AC, 0x63E1,
- 0x88AD, 0x6E25, 0x88AE, 0x65ED, 0x88AF, 0x8466, 0x88B0, 0x82A6,
- 0x88B1, 0x9BF5, 0x88B2, 0x6893, 0x88B3, 0x5727, 0x88B4, 0x65A1,
- 0x88B5, 0x6271, 0x88B6, 0x5B9B, 0x88B7, 0x59D0, 0x88B8, 0x867B,
- 0x88B9, 0x98F4, 0x88BA, 0x7D62, 0x88BB, 0x7DBE, 0x88BC, 0x9B8E,
- 0x88BD, 0x6216, 0x88BE, 0x7C9F, 0x88BF, 0x88B7, 0x88C0, 0x5B89,
- 0x88C1, 0x5EB5, 0x88C2, 0x6309, 0x88C3, 0x6697, 0x88C4, 0x6848,
- 0x88C5, 0x95C7, 0x88C6, 0x978D, 0x88C7, 0x674F, 0x88C8, 0x4EE5,
- 0x88C9, 0x4F0A, 0x88CA, 0x4F4D, 0x88CB, 0x4F9D, 0x88CC, 0x5049,
- 0x88CD, 0x56F2, 0x88CE, 0x5937, 0x88CF, 0x59D4, 0x88D0, 0x5A01,
- 0x88D1, 0x5C09, 0x88D2, 0x60DF, 0x88D3, 0x610F, 0x88D4, 0x6170,
- 0x88D5, 0x6613, 0x88D6, 0x6905, 0x88D7, 0x70BA, 0x88D8, 0x754F,
- 0x88D9, 0x7570, 0x88DA, 0x79FB, 0x88DB, 0x7DAD, 0x88DC, 0x7DEF,
- 0x88DD, 0x80C3, 0x88DE, 0x840E, 0x88DF, 0x8863, 0x88E0, 0x8B02,
- 0x88E1, 0x9055, 0x88E2, 0x907A, 0x88E3, 0x533B, 0x88E4, 0x4E95,
- 0x88E5, 0x4EA5, 0x88E6, 0x57DF, 0x88E7, 0x80B2, 0x88E8, 0x90C1,
- 0x88E9, 0x78EF, 0x88EA, 0x4E00, 0x88EB, 0x58F1, 0x88EC, 0x6EA2,
- 0x88ED, 0x9038, 0x88EE, 0x7A32, 0x88EF, 0x8328, 0x88F0, 0x828B,
- 0x88F1, 0x9C2F, 0x88F2, 0x5141, 0x88F3, 0x5370, 0x88F4, 0x54BD,
- 0x88F5, 0x54E1, 0x88F6, 0x56E0, 0x88F7, 0x59FB, 0x88F8, 0x5F15,
- 0x88F9, 0x98F2, 0x88FA, 0x6DEB, 0x88FB, 0x80E4, 0x88FC, 0x852D,
- 0x8940, 0x9662, 0x8941, 0x9670, 0x8942, 0x96A0, 0x8943, 0x97FB,
- 0x8944, 0x540B, 0x8945, 0x53F3, 0x8946, 0x5B87, 0x8947, 0x70CF,
- 0x8948, 0x7FBD, 0x8949, 0x8FC2, 0x894A, 0x96E8, 0x894B, 0x536F,
- 0x894C, 0x9D5C, 0x894D, 0x7ABA, 0x894E, 0x4E11, 0x894F, 0x7893,
- 0x8950, 0x81FC, 0x8951, 0x6E26, 0x8952, 0x5618, 0x8953, 0x5504,
- 0x8954, 0x6B1D, 0x8955, 0x851A, 0x8956, 0x9C3B, 0x8957, 0x59E5,
- 0x8958, 0x53A9, 0x8959, 0x6D66, 0x895A, 0x74DC, 0x895B, 0x958F,
- 0x895C, 0x5642, 0x895D, 0x4E91, 0x895E, 0x904B, 0x895F, 0x96F2,
- 0x8960, 0x834F, 0x8961, 0x990C, 0x8962, 0x53E1, 0x8963, 0x55B6,
- 0x8964, 0x5B30, 0x8965, 0x5F71, 0x8966, 0x6620, 0x8967, 0x66F3,
- 0x8968, 0x6804, 0x8969, 0x6C38, 0x896A, 0x6CF3, 0x896B, 0x6D29,
- 0x896C, 0x745B, 0x896D, 0x76C8, 0x896E, 0x7A4E, 0x896F, 0x9834,
- 0x8970, 0x82F1, 0x8971, 0x885B, 0x8972, 0x8A60, 0x8973, 0x92ED,
- 0x8974, 0x6DB2, 0x8975, 0x75AB, 0x8976, 0x76CA, 0x8977, 0x99C5,
- 0x8978, 0x60A6, 0x8979, 0x8B01, 0x897A, 0x8D8A, 0x897B, 0x95B2,
- 0x897C, 0x698E, 0x897D, 0x53AD, 0x897E, 0x5186, 0x8980, 0x5712,
- 0x8981, 0x5830, 0x8982, 0x5944, 0x8983, 0x5BB4, 0x8984, 0x5EF6,
- 0x8985, 0x6028, 0x8986, 0x63A9, 0x8987, 0x63F4, 0x8988, 0x6CBF,
- 0x8989, 0x6F14, 0x898A, 0x708E, 0x898B, 0x7114, 0x898C, 0x7159,
- 0x898D, 0x71D5, 0x898E, 0x733F, 0x898F, 0x7E01, 0x8990, 0x8276,
- 0x8991, 0x82D1, 0x8992, 0x8597, 0x8993, 0x9060, 0x8994, 0x925B,
- 0x8995, 0x9D1B, 0x8996, 0x5869, 0x8997, 0x65BC, 0x8998, 0x6C5A,
- 0x8999, 0x7525, 0x899A, 0x51F9, 0x899B, 0x592E, 0x899C, 0x5965,
- 0x899D, 0x5F80, 0x899E, 0x5FDC, 0x899F, 0x62BC, 0x89A0, 0x65FA,
- 0x89A1, 0x6A2A, 0x89A2, 0x6B27, 0x89A3, 0x6BB4, 0x89A4, 0x738B,
- 0x89A5, 0x7FC1, 0x89A6, 0x8956, 0x89A7, 0x9D2C, 0x89A8, 0x9D0E,
- 0x89A9, 0x9EC4, 0x89AA, 0x5CA1, 0x89AB, 0x6C96, 0x89AC, 0x837B,
- 0x89AD, 0x5104, 0x89AE, 0x5C4B, 0x89AF, 0x61B6, 0x89B0, 0x81C6,
- 0x89B1, 0x6876, 0x89B2, 0x7261, 0x89B3, 0x4E59, 0x89B4, 0x4FFA,
- 0x89B5, 0x5378, 0x89B6, 0x6069, 0x89B7, 0x6E29, 0x89B8, 0x7A4F,
- 0x89B9, 0x97F3, 0x89BA, 0x4E0B, 0x89BB, 0x5316, 0x89BC, 0x4EEE,
- 0x89BD, 0x4F55, 0x89BE, 0x4F3D, 0x89BF, 0x4FA1, 0x89C0, 0x4F73,
- 0x89C1, 0x52A0, 0x89C2, 0x53EF, 0x89C3, 0x5609, 0x89C4, 0x590F,
- 0x89C5, 0x5AC1, 0x89C6, 0x5BB6, 0x89C7, 0x5BE1, 0x89C8, 0x79D1,
- 0x89C9, 0x6687, 0x89CA, 0x679C, 0x89CB, 0x67B6, 0x89CC, 0x6B4C,
- 0x89CD, 0x6CB3, 0x89CE, 0x706B, 0x89CF, 0x73C2, 0x89D0, 0x798D,
- 0x89D1, 0x79BE, 0x89D2, 0x7A3C, 0x89D3, 0x7B87, 0x89D4, 0x82B1,
- 0x89D5, 0x82DB, 0x89D6, 0x8304, 0x89D7, 0x8377, 0x89D8, 0x83EF,
- 0x89D9, 0x83D3, 0x89DA, 0x8766, 0x89DB, 0x8AB2, 0x89DC, 0x5629,
- 0x89DD, 0x8CA8, 0x89DE, 0x8FE6, 0x89DF, 0x904E, 0x89E0, 0x971E,
- 0x89E1, 0x868A, 0x89E2, 0x4FC4, 0x89E3, 0x5CE8, 0x89E4, 0x6211,
- 0x89E5, 0x7259, 0x89E6, 0x753B, 0x89E7, 0x81E5, 0x89E8, 0x82BD,
- 0x89E9, 0x86FE, 0x89EA, 0x8CC0, 0x89EB, 0x96C5, 0x89EC, 0x9913,
- 0x89ED, 0x99D5, 0x89EE, 0x4ECB, 0x89EF, 0x4F1A, 0x89F0, 0x89E3,
- 0x89F1, 0x56DE, 0x89F2, 0x584A, 0x89F3, 0x58CA, 0x89F4, 0x5EFB,
- 0x89F5, 0x5FEB, 0x89F6, 0x602A, 0x89F7, 0x6094, 0x89F8, 0x6062,
- 0x89F9, 0x61D0, 0x89FA, 0x6212, 0x89FB, 0x62D0, 0x89FC, 0x6539,
- 0x8A40, 0x9B41, 0x8A41, 0x6666, 0x8A42, 0x68B0, 0x8A43, 0x6D77,
- 0x8A44, 0x7070, 0x8A45, 0x754C, 0x8A46, 0x7686, 0x8A47, 0x7D75,
- 0x8A48, 0x82A5, 0x8A49, 0x87F9, 0x8A4A, 0x958B, 0x8A4B, 0x968E,
- 0x8A4C, 0x8C9D, 0x8A4D, 0x51F1, 0x8A4E, 0x52BE, 0x8A4F, 0x5916,
- 0x8A50, 0x54B3, 0x8A51, 0x5BB3, 0x8A52, 0x5D16, 0x8A53, 0x6168,
- 0x8A54, 0x6982, 0x8A55, 0x6DAF, 0x8A56, 0x788D, 0x8A57, 0x84CB,
- 0x8A58, 0x8857, 0x8A59, 0x8A72, 0x8A5A, 0x93A7, 0x8A5B, 0x9AB8,
- 0x8A5C, 0x6D6C, 0x8A5D, 0x99A8, 0x8A5E, 0x86D9, 0x8A5F, 0x57A3,
- 0x8A60, 0x67FF, 0x8A61, 0x86CE, 0x8A62, 0x920E, 0x8A63, 0x5283,
- 0x8A64, 0x5687, 0x8A65, 0x5404, 0x8A66, 0x5ED3, 0x8A67, 0x62E1,
- 0x8A68, 0x64B9, 0x8A69, 0x683C, 0x8A6A, 0x6838, 0x8A6B, 0x6BBB,
- 0x8A6C, 0x7372, 0x8A6D, 0x78BA, 0x8A6E, 0x7A6B, 0x8A6F, 0x899A,
- 0x8A70, 0x89D2, 0x8A71, 0x8D6B, 0x8A72, 0x8F03, 0x8A73, 0x90ED,
- 0x8A74, 0x95A3, 0x8A75, 0x9694, 0x8A76, 0x9769, 0x8A77, 0x5B66,
- 0x8A78, 0x5CB3, 0x8A79, 0x697D, 0x8A7A, 0x984D, 0x8A7B, 0x984E,
- 0x8A7C, 0x639B, 0x8A7D, 0x7B20, 0x8A7E, 0x6A2B, 0x8A80, 0x6A7F,
- 0x8A81, 0x68B6, 0x8A82, 0x9C0D, 0x8A83, 0x6F5F, 0x8A84, 0x5272,
- 0x8A85, 0x559D, 0x8A86, 0x6070, 0x8A87, 0x62EC, 0x8A88, 0x6D3B,
- 0x8A89, 0x6E07, 0x8A8A, 0x6ED1, 0x8A8B, 0x845B, 0x8A8C, 0x8910,
- 0x8A8D, 0x8F44, 0x8A8E, 0x4E14, 0x8A8F, 0x9C39, 0x8A90, 0x53F6,
- 0x8A91, 0x691B, 0x8A92, 0x6A3A, 0x8A93, 0x9784, 0x8A94, 0x682A,
- 0x8A95, 0x515C, 0x8A96, 0x7AC3, 0x8A97, 0x84B2, 0x8A98, 0x91DC,
- 0x8A99, 0x938C, 0x8A9A, 0x565B, 0x8A9B, 0x9D28, 0x8A9C, 0x6822,
- 0x8A9D, 0x8305, 0x8A9E, 0x8431, 0x8A9F, 0x7CA5, 0x8AA0, 0x5208,
- 0x8AA1, 0x82C5, 0x8AA2, 0x74E6, 0x8AA3, 0x4E7E, 0x8AA4, 0x4F83,
- 0x8AA5, 0x51A0, 0x8AA6, 0x5BD2, 0x8AA7, 0x520A, 0x8AA8, 0x52D8,
- 0x8AA9, 0x52E7, 0x8AAA, 0x5DFB, 0x8AAB, 0x559A, 0x8AAC, 0x582A,
- 0x8AAD, 0x59E6, 0x8AAE, 0x5B8C, 0x8AAF, 0x5B98, 0x8AB0, 0x5BDB,
- 0x8AB1, 0x5E72, 0x8AB2, 0x5E79, 0x8AB3, 0x60A3, 0x8AB4, 0x611F,
- 0x8AB5, 0x6163, 0x8AB6, 0x61BE, 0x8AB7, 0x63DB, 0x8AB8, 0x6562,
- 0x8AB9, 0x67D1, 0x8ABA, 0x6853, 0x8ABB, 0x68FA, 0x8ABC, 0x6B3E,
- 0x8ABD, 0x6B53, 0x8ABE, 0x6C57, 0x8ABF, 0x6F22, 0x8AC0, 0x6F97,
- 0x8AC1, 0x6F45, 0x8AC2, 0x74B0, 0x8AC3, 0x7518, 0x8AC4, 0x76E3,
- 0x8AC5, 0x770B, 0x8AC6, 0x7AFF, 0x8AC7, 0x7BA1, 0x8AC8, 0x7C21,
- 0x8AC9, 0x7DE9, 0x8ACA, 0x7F36, 0x8ACB, 0x7FF0, 0x8ACC, 0x809D,
- 0x8ACD, 0x8266, 0x8ACE, 0x839E, 0x8ACF, 0x89B3, 0x8AD0, 0x8ACC,
- 0x8AD1, 0x8CAB, 0x8AD2, 0x9084, 0x8AD3, 0x9451, 0x8AD4, 0x9593,
- 0x8AD5, 0x9591, 0x8AD6, 0x95A2, 0x8AD7, 0x9665, 0x8AD8, 0x97D3,
- 0x8AD9, 0x9928, 0x8ADA, 0x8218, 0x8ADB, 0x4E38, 0x8ADC, 0x542B,
- 0x8ADD, 0x5CB8, 0x8ADE, 0x5DCC, 0x8ADF, 0x73A9, 0x8AE0, 0x764C,
- 0x8AE1, 0x773C, 0x8AE2, 0x5CA9, 0x8AE3, 0x7FEB, 0x8AE4, 0x8D0B,
- 0x8AE5, 0x96C1, 0x8AE6, 0x9811, 0x8AE7, 0x9854, 0x8AE8, 0x9858,
- 0x8AE9, 0x4F01, 0x8AEA, 0x4F0E, 0x8AEB, 0x5371, 0x8AEC, 0x559C,
- 0x8AED, 0x5668, 0x8AEE, 0x57FA, 0x8AEF, 0x5947, 0x8AF0, 0x5B09,
- 0x8AF1, 0x5BC4, 0x8AF2, 0x5C90, 0x8AF3, 0x5E0C, 0x8AF4, 0x5E7E,
- 0x8AF5, 0x5FCC, 0x8AF6, 0x63EE, 0x8AF7, 0x673A, 0x8AF8, 0x65D7,
- 0x8AF9, 0x65E2, 0x8AFA, 0x671F, 0x8AFB, 0x68CB, 0x8AFC, 0x68C4,
- 0x8B40, 0x6A5F, 0x8B41, 0x5E30, 0x8B42, 0x6BC5, 0x8B43, 0x6C17,
- 0x8B44, 0x6C7D, 0x8B45, 0x757F, 0x8B46, 0x7948, 0x8B47, 0x5B63,
- 0x8B48, 0x7A00, 0x8B49, 0x7D00, 0x8B4A, 0x5FBD, 0x8B4B, 0x898F,
- 0x8B4C, 0x8A18, 0x8B4D, 0x8CB4, 0x8B4E, 0x8D77, 0x8B4F, 0x8ECC,
- 0x8B50, 0x8F1D, 0x8B51, 0x98E2, 0x8B52, 0x9A0E, 0x8B53, 0x9B3C,
- 0x8B54, 0x4E80, 0x8B55, 0x507D, 0x8B56, 0x5100, 0x8B57, 0x5993,
- 0x8B58, 0x5B9C, 0x8B59, 0x622F, 0x8B5A, 0x6280, 0x8B5B, 0x64EC,
- 0x8B5C, 0x6B3A, 0x8B5D, 0x72A0, 0x8B5E, 0x7591, 0x8B5F, 0x7947,
- 0x8B60, 0x7FA9, 0x8B61, 0x87FB, 0x8B62, 0x8ABC, 0x8B63, 0x8B70,
- 0x8B64, 0x63AC, 0x8B65, 0x83CA, 0x8B66, 0x97A0, 0x8B67, 0x5409,
- 0x8B68, 0x5403, 0x8B69, 0x55AB, 0x8B6A, 0x6854, 0x8B6B, 0x6A58,
- 0x8B6C, 0x8A70, 0x8B6D, 0x7827, 0x8B6E, 0x6775, 0x8B6F, 0x9ECD,
- 0x8B70, 0x5374, 0x8B71, 0x5BA2, 0x8B72, 0x811A, 0x8B73, 0x8650,
- 0x8B74, 0x9006, 0x8B75, 0x4E18, 0x8B76, 0x4E45, 0x8B77, 0x4EC7,
- 0x8B78, 0x4F11, 0x8B79, 0x53CA, 0x8B7A, 0x5438, 0x8B7B, 0x5BAE,
- 0x8B7C, 0x5F13, 0x8B7D, 0x6025, 0x8B7E, 0x6551, 0x8B80, 0x673D,
- 0x8B81, 0x6C42, 0x8B82, 0x6C72, 0x8B83, 0x6CE3, 0x8B84, 0x7078,
- 0x8B85, 0x7403, 0x8B86, 0x7A76, 0x8B87, 0x7AAE, 0x8B88, 0x7B08,
- 0x8B89, 0x7D1A, 0x8B8A, 0x7CFE, 0x8B8B, 0x7D66, 0x8B8C, 0x65E7,
- 0x8B8D, 0x725B, 0x8B8E, 0x53BB, 0x8B8F, 0x5C45, 0x8B90, 0x5DE8,
- 0x8B91, 0x62D2, 0x8B92, 0x62E0, 0x8B93, 0x6319, 0x8B94, 0x6E20,
- 0x8B95, 0x865A, 0x8B96, 0x8A31, 0x8B97, 0x8DDD, 0x8B98, 0x92F8,
- 0x8B99, 0x6F01, 0x8B9A, 0x79A6, 0x8B9B, 0x9B5A, 0x8B9C, 0x4EA8,
- 0x8B9D, 0x4EAB, 0x8B9E, 0x4EAC, 0x8B9F, 0x4F9B, 0x8BA0, 0x4FA0,
- 0x8BA1, 0x50D1, 0x8BA2, 0x5147, 0x8BA3, 0x7AF6, 0x8BA4, 0x5171,
- 0x8BA5, 0x51F6, 0x8BA6, 0x5354, 0x8BA7, 0x5321, 0x8BA8, 0x537F,
- 0x8BA9, 0x53EB, 0x8BAA, 0x55AC, 0x8BAB, 0x5883, 0x8BAC, 0x5CE1,
- 0x8BAD, 0x5F37, 0x8BAE, 0x5F4A, 0x8BAF, 0x602F, 0x8BB0, 0x6050,
- 0x8BB1, 0x606D, 0x8BB2, 0x631F, 0x8BB3, 0x6559, 0x8BB4, 0x6A4B,
- 0x8BB5, 0x6CC1, 0x8BB6, 0x72C2, 0x8BB7, 0x72ED, 0x8BB8, 0x77EF,
- 0x8BB9, 0x80F8, 0x8BBA, 0x8105, 0x8BBB, 0x8208, 0x8BBC, 0x854E,
- 0x8BBD, 0x90F7, 0x8BBE, 0x93E1, 0x8BBF, 0x97FF, 0x8BC0, 0x9957,
- 0x8BC1, 0x9A5A, 0x8BC2, 0x4EF0, 0x8BC3, 0x51DD, 0x8BC4, 0x5C2D,
- 0x8BC5, 0x6681, 0x8BC6, 0x696D, 0x8BC7, 0x5C40, 0x8BC8, 0x66F2,
- 0x8BC9, 0x6975, 0x8BCA, 0x7389, 0x8BCB, 0x6850, 0x8BCC, 0x7C81,
- 0x8BCD, 0x50C5, 0x8BCE, 0x52E4, 0x8BCF, 0x5747, 0x8BD0, 0x5DFE,
- 0x8BD1, 0x9326, 0x8BD2, 0x65A4, 0x8BD3, 0x6B23, 0x8BD4, 0x6B3D,
- 0x8BD5, 0x7434, 0x8BD6, 0x7981, 0x8BD7, 0x79BD, 0x8BD8, 0x7B4B,
- 0x8BD9, 0x7DCA, 0x8BDA, 0x82B9, 0x8BDB, 0x83CC, 0x8BDC, 0x887F,
- 0x8BDD, 0x895F, 0x8BDE, 0x8B39, 0x8BDF, 0x8FD1, 0x8BE0, 0x91D1,
- 0x8BE1, 0x541F, 0x8BE2, 0x9280, 0x8BE3, 0x4E5D, 0x8BE4, 0x5036,
- 0x8BE5, 0x53E5, 0x8BE6, 0x533A, 0x8BE7, 0x72D7, 0x8BE8, 0x7396,
- 0x8BE9, 0x77E9, 0x8BEA, 0x82E6, 0x8BEB, 0x8EAF, 0x8BEC, 0x99C6,
- 0x8BED, 0x99C8, 0x8BEE, 0x99D2, 0x8BEF, 0x5177, 0x8BF0, 0x611A,
- 0x8BF1, 0x865E, 0x8BF2, 0x55B0, 0x8BF3, 0x7A7A, 0x8BF4, 0x5076,
- 0x8BF5, 0x5BD3, 0x8BF6, 0x9047, 0x8BF7, 0x9685, 0x8BF8, 0x4E32,
- 0x8BF9, 0x6ADB, 0x8BFA, 0x91E7, 0x8BFB, 0x5C51, 0x8BFC, 0x5C48,
- 0x8C40, 0x6398, 0x8C41, 0x7A9F, 0x8C42, 0x6C93, 0x8C43, 0x9774,
- 0x8C44, 0x8F61, 0x8C45, 0x7AAA, 0x8C46, 0x718A, 0x8C47, 0x9688,
- 0x8C48, 0x7C82, 0x8C49, 0x6817, 0x8C4A, 0x7E70, 0x8C4B, 0x6851,
- 0x8C4C, 0x936C, 0x8C4D, 0x52F2, 0x8C4E, 0x541B, 0x8C4F, 0x85AB,
- 0x8C50, 0x8A13, 0x8C51, 0x7FA4, 0x8C52, 0x8ECD, 0x8C53, 0x90E1,
- 0x8C54, 0x5366, 0x8C55, 0x8888, 0x8C56, 0x7941, 0x8C57, 0x4FC2,
- 0x8C58, 0x50BE, 0x8C59, 0x5211, 0x8C5A, 0x5144, 0x8C5B, 0x5553,
- 0x8C5C, 0x572D, 0x8C5D, 0x73EA, 0x8C5E, 0x578B, 0x8C5F, 0x5951,
- 0x8C60, 0x5F62, 0x8C61, 0x5F84, 0x8C62, 0x6075, 0x8C63, 0x6176,
- 0x8C64, 0x6167, 0x8C65, 0x61A9, 0x8C66, 0x63B2, 0x8C67, 0x643A,
- 0x8C68, 0x656C, 0x8C69, 0x666F, 0x8C6A, 0x6842, 0x8C6B, 0x6E13,
- 0x8C6C, 0x7566, 0x8C6D, 0x7A3D, 0x8C6E, 0x7CFB, 0x8C6F, 0x7D4C,
- 0x8C70, 0x7D99, 0x8C71, 0x7E4B, 0x8C72, 0x7F6B, 0x8C73, 0x830E,
- 0x8C74, 0x834A, 0x8C75, 0x86CD, 0x8C76, 0x8A08, 0x8C77, 0x8A63,
- 0x8C78, 0x8B66, 0x8C79, 0x8EFD, 0x8C7A, 0x981A, 0x8C7B, 0x9D8F,
- 0x8C7C, 0x82B8, 0x8C7D, 0x8FCE, 0x8C7E, 0x9BE8, 0x8C80, 0x5287,
- 0x8C81, 0x621F, 0x8C82, 0x6483, 0x8C83, 0x6FC0, 0x8C84, 0x9699,
- 0x8C85, 0x6841, 0x8C86, 0x5091, 0x8C87, 0x6B20, 0x8C88, 0x6C7A,
- 0x8C89, 0x6F54, 0x8C8A, 0x7A74, 0x8C8B, 0x7D50, 0x8C8C, 0x8840,
- 0x8C8D, 0x8A23, 0x8C8E, 0x6708, 0x8C8F, 0x4EF6, 0x8C90, 0x5039,
- 0x8C91, 0x5026, 0x8C92, 0x5065, 0x8C93, 0x517C, 0x8C94, 0x5238,
- 0x8C95, 0x5263, 0x8C96, 0x55A7, 0x8C97, 0x570F, 0x8C98, 0x5805,
- 0x8C99, 0x5ACC, 0x8C9A, 0x5EFA, 0x8C9B, 0x61B2, 0x8C9C, 0x61F8,
- 0x8C9D, 0x62F3, 0x8C9E, 0x6372, 0x8C9F, 0x691C, 0x8CA0, 0x6A29,
- 0x8CA1, 0x727D, 0x8CA2, 0x72AC, 0x8CA3, 0x732E, 0x8CA4, 0x7814,
- 0x8CA5, 0x786F, 0x8CA6, 0x7D79, 0x8CA7, 0x770C, 0x8CA8, 0x80A9,
- 0x8CA9, 0x898B, 0x8CAA, 0x8B19, 0x8CAB, 0x8CE2, 0x8CAC, 0x8ED2,
- 0x8CAD, 0x9063, 0x8CAE, 0x9375, 0x8CAF, 0x967A, 0x8CB0, 0x9855,
- 0x8CB1, 0x9A13, 0x8CB2, 0x9E78, 0x8CB3, 0x5143, 0x8CB4, 0x539F,
- 0x8CB5, 0x53B3, 0x8CB6, 0x5E7B, 0x8CB7, 0x5F26, 0x8CB8, 0x6E1B,
- 0x8CB9, 0x6E90, 0x8CBA, 0x7384, 0x8CBB, 0x73FE, 0x8CBC, 0x7D43,
- 0x8CBD, 0x8237, 0x8CBE, 0x8A00, 0x8CBF, 0x8AFA, 0x8CC0, 0x9650,
- 0x8CC1, 0x4E4E, 0x8CC2, 0x500B, 0x8CC3, 0x53E4, 0x8CC4, 0x547C,
- 0x8CC5, 0x56FA, 0x8CC6, 0x59D1, 0x8CC7, 0x5B64, 0x8CC8, 0x5DF1,
- 0x8CC9, 0x5EAB, 0x8CCA, 0x5F27, 0x8CCB, 0x6238, 0x8CCC, 0x6545,
- 0x8CCD, 0x67AF, 0x8CCE, 0x6E56, 0x8CCF, 0x72D0, 0x8CD0, 0x7CCA,
- 0x8CD1, 0x88B4, 0x8CD2, 0x80A1, 0x8CD3, 0x80E1, 0x8CD4, 0x83F0,
- 0x8CD5, 0x864E, 0x8CD6, 0x8A87, 0x8CD7, 0x8DE8, 0x8CD8, 0x9237,
- 0x8CD9, 0x96C7, 0x8CDA, 0x9867, 0x8CDB, 0x9F13, 0x8CDC, 0x4E94,
- 0x8CDD, 0x4E92, 0x8CDE, 0x4F0D, 0x8CDF, 0x5348, 0x8CE0, 0x5449,
- 0x8CE1, 0x543E, 0x8CE2, 0x5A2F, 0x8CE3, 0x5F8C, 0x8CE4, 0x5FA1,
- 0x8CE5, 0x609F, 0x8CE6, 0x68A7, 0x8CE7, 0x6A8E, 0x8CE8, 0x745A,
- 0x8CE9, 0x7881, 0x8CEA, 0x8A9E, 0x8CEB, 0x8AA4, 0x8CEC, 0x8B77,
- 0x8CED, 0x9190, 0x8CEE, 0x4E5E, 0x8CEF, 0x9BC9, 0x8CF0, 0x4EA4,
- 0x8CF1, 0x4F7C, 0x8CF2, 0x4FAF, 0x8CF3, 0x5019, 0x8CF4, 0x5016,
- 0x8CF5, 0x5149, 0x8CF6, 0x516C, 0x8CF7, 0x529F, 0x8CF8, 0x52B9,
- 0x8CF9, 0x52FE, 0x8CFA, 0x539A, 0x8CFB, 0x53E3, 0x8CFC, 0x5411,
- 0x8D40, 0x540E, 0x8D41, 0x5589, 0x8D42, 0x5751, 0x8D43, 0x57A2,
- 0x8D44, 0x597D, 0x8D45, 0x5B54, 0x8D46, 0x5B5D, 0x8D47, 0x5B8F,
- 0x8D48, 0x5DE5, 0x8D49, 0x5DE7, 0x8D4A, 0x5DF7, 0x8D4B, 0x5E78,
- 0x8D4C, 0x5E83, 0x8D4D, 0x5E9A, 0x8D4E, 0x5EB7, 0x8D4F, 0x5F18,
- 0x8D50, 0x6052, 0x8D51, 0x614C, 0x8D52, 0x6297, 0x8D53, 0x62D8,
- 0x8D54, 0x63A7, 0x8D55, 0x653B, 0x8D56, 0x6602, 0x8D57, 0x6643,
- 0x8D58, 0x66F4, 0x8D59, 0x676D, 0x8D5A, 0x6821, 0x8D5B, 0x6897,
- 0x8D5C, 0x69CB, 0x8D5D, 0x6C5F, 0x8D5E, 0x6D2A, 0x8D5F, 0x6D69,
- 0x8D60, 0x6E2F, 0x8D61, 0x6E9D, 0x8D62, 0x7532, 0x8D63, 0x7687,
- 0x8D64, 0x786C, 0x8D65, 0x7A3F, 0x8D66, 0x7CE0, 0x8D67, 0x7D05,
- 0x8D68, 0x7D18, 0x8D69, 0x7D5E, 0x8D6A, 0x7DB1, 0x8D6B, 0x8015,
- 0x8D6C, 0x8003, 0x8D6D, 0x80AF, 0x8D6E, 0x80B1, 0x8D6F, 0x8154,
- 0x8D70, 0x818F, 0x8D71, 0x822A, 0x8D72, 0x8352, 0x8D73, 0x884C,
- 0x8D74, 0x8861, 0x8D75, 0x8B1B, 0x8D76, 0x8CA2, 0x8D77, 0x8CFC,
- 0x8D78, 0x90CA, 0x8D79, 0x9175, 0x8D7A, 0x9271, 0x8D7B, 0x783F,
- 0x8D7C, 0x92FC, 0x8D7D, 0x95A4, 0x8D7E, 0x964D, 0x8D80, 0x9805,
- 0x8D81, 0x9999, 0x8D82, 0x9AD8, 0x8D83, 0x9D3B, 0x8D84, 0x525B,
- 0x8D85, 0x52AB, 0x8D86, 0x53F7, 0x8D87, 0x5408, 0x8D88, 0x58D5,
- 0x8D89, 0x62F7, 0x8D8A, 0x6FE0, 0x8D8B, 0x8C6A, 0x8D8C, 0x8F5F,
- 0x8D8D, 0x9EB9, 0x8D8E, 0x514B, 0x8D8F, 0x523B, 0x8D90, 0x544A,
- 0x8D91, 0x56FD, 0x8D92, 0x7A40, 0x8D93, 0x9177, 0x8D94, 0x9D60,
- 0x8D95, 0x9ED2, 0x8D96, 0x7344, 0x8D97, 0x6F09, 0x8D98, 0x8170,
- 0x8D99, 0x7511, 0x8D9A, 0x5FFD, 0x8D9B, 0x60DA, 0x8D9C, 0x9AA8,
- 0x8D9D, 0x72DB, 0x8D9E, 0x8FBC, 0x8D9F, 0x6B64, 0x8DA0, 0x9803,
- 0x8DA1, 0x4ECA, 0x8DA2, 0x56F0, 0x8DA3, 0x5764, 0x8DA4, 0x58BE,
- 0x8DA5, 0x5A5A, 0x8DA6, 0x6068, 0x8DA7, 0x61C7, 0x8DA8, 0x660F,
- 0x8DA9, 0x6606, 0x8DAA, 0x6839, 0x8DAB, 0x68B1, 0x8DAC, 0x6DF7,
- 0x8DAD, 0x75D5, 0x8DAE, 0x7D3A, 0x8DAF, 0x826E, 0x8DB0, 0x9B42,
- 0x8DB1, 0x4E9B, 0x8DB2, 0x4F50, 0x8DB3, 0x53C9, 0x8DB4, 0x5506,
- 0x8DB5, 0x5D6F, 0x8DB6, 0x5DE6, 0x8DB7, 0x5DEE, 0x8DB8, 0x67FB,
- 0x8DB9, 0x6C99, 0x8DBA, 0x7473, 0x8DBB, 0x7802, 0x8DBC, 0x8A50,
- 0x8DBD, 0x9396, 0x8DBE, 0x88DF, 0x8DBF, 0x5750, 0x8DC0, 0x5EA7,
- 0x8DC1, 0x632B, 0x8DC2, 0x50B5, 0x8DC3, 0x50AC, 0x8DC4, 0x518D,
- 0x8DC5, 0x6700, 0x8DC6, 0x54C9, 0x8DC7, 0x585E, 0x8DC8, 0x59BB,
- 0x8DC9, 0x5BB0, 0x8DCA, 0x5F69, 0x8DCB, 0x624D, 0x8DCC, 0x63A1,
- 0x8DCD, 0x683D, 0x8DCE, 0x6B73, 0x8DCF, 0x6E08, 0x8DD0, 0x707D,
- 0x8DD1, 0x91C7, 0x8DD2, 0x7280, 0x8DD3, 0x7815, 0x8DD4, 0x7826,
- 0x8DD5, 0x796D, 0x8DD6, 0x658E, 0x8DD7, 0x7D30, 0x8DD8, 0x83DC,
- 0x8DD9, 0x88C1, 0x8DDA, 0x8F09, 0x8DDB, 0x969B, 0x8DDC, 0x5264,
- 0x8DDD, 0x5728, 0x8DDE, 0x6750, 0x8DDF, 0x7F6A, 0x8DE0, 0x8CA1,
- 0x8DE1, 0x51B4, 0x8DE2, 0x5742, 0x8DE3, 0x962A, 0x8DE4, 0x583A,
- 0x8DE5, 0x698A, 0x8DE6, 0x80B4, 0x8DE7, 0x54B2, 0x8DE8, 0x5D0E,
- 0x8DE9, 0x57FC, 0x8DEA, 0x7895, 0x8DEB, 0x9DFA, 0x8DEC, 0x4F5C,
- 0x8DED, 0x524A, 0x8DEE, 0x548B, 0x8DEF, 0x643E, 0x8DF0, 0x6628,
- 0x8DF1, 0x6714, 0x8DF2, 0x67F5, 0x8DF3, 0x7A84, 0x8DF4, 0x7B56,
- 0x8DF5, 0x7D22, 0x8DF6, 0x932F, 0x8DF7, 0x685C, 0x8DF8, 0x9BAD,
- 0x8DF9, 0x7B39, 0x8DFA, 0x5319, 0x8DFB, 0x518A, 0x8DFC, 0x5237,
- 0x8E40, 0x5BDF, 0x8E41, 0x62F6, 0x8E42, 0x64AE, 0x8E43, 0x64E6,
- 0x8E44, 0x672D, 0x8E45, 0x6BBA, 0x8E46, 0x85A9, 0x8E47, 0x96D1,
- 0x8E48, 0x7690, 0x8E49, 0x9BD6, 0x8E4A, 0x634C, 0x8E4B, 0x9306,
- 0x8E4C, 0x9BAB, 0x8E4D, 0x76BF, 0x8E4E, 0x6652, 0x8E4F, 0x4E09,
- 0x8E50, 0x5098, 0x8E51, 0x53C2, 0x8E52, 0x5C71, 0x8E53, 0x60E8,
- 0x8E54, 0x6492, 0x8E55, 0x6563, 0x8E56, 0x685F, 0x8E57, 0x71E6,
- 0x8E58, 0x73CA, 0x8E59, 0x7523, 0x8E5A, 0x7B97, 0x8E5B, 0x7E82,
- 0x8E5C, 0x8695, 0x8E5D, 0x8B83, 0x8E5E, 0x8CDB, 0x8E5F, 0x9178,
- 0x8E60, 0x9910, 0x8E61, 0x65AC, 0x8E62, 0x66AB, 0x8E63, 0x6B8B,
- 0x8E64, 0x4ED5, 0x8E65, 0x4ED4, 0x8E66, 0x4F3A, 0x8E67, 0x4F7F,
- 0x8E68, 0x523A, 0x8E69, 0x53F8, 0x8E6A, 0x53F2, 0x8E6B, 0x55E3,
- 0x8E6C, 0x56DB, 0x8E6D, 0x58EB, 0x8E6E, 0x59CB, 0x8E6F, 0x59C9,
- 0x8E70, 0x59FF, 0x8E71, 0x5B50, 0x8E72, 0x5C4D, 0x8E73, 0x5E02,
- 0x8E74, 0x5E2B, 0x8E75, 0x5FD7, 0x8E76, 0x601D, 0x8E77, 0x6307,
- 0x8E78, 0x652F, 0x8E79, 0x5B5C, 0x8E7A, 0x65AF, 0x8E7B, 0x65BD,
- 0x8E7C, 0x65E8, 0x8E7D, 0x679D, 0x8E7E, 0x6B62, 0x8E80, 0x6B7B,
- 0x8E81, 0x6C0F, 0x8E82, 0x7345, 0x8E83, 0x7949, 0x8E84, 0x79C1,
- 0x8E85, 0x7CF8, 0x8E86, 0x7D19, 0x8E87, 0x7D2B, 0x8E88, 0x80A2,
- 0x8E89, 0x8102, 0x8E8A, 0x81F3, 0x8E8B, 0x8996, 0x8E8C, 0x8A5E,
- 0x8E8D, 0x8A69, 0x8E8E, 0x8A66, 0x8E8F, 0x8A8C, 0x8E90, 0x8AEE,
- 0x8E91, 0x8CC7, 0x8E92, 0x8CDC, 0x8E93, 0x96CC, 0x8E94, 0x98FC,
- 0x8E95, 0x6B6F, 0x8E96, 0x4E8B, 0x8E97, 0x4F3C, 0x8E98, 0x4F8D,
- 0x8E99, 0x5150, 0x8E9A, 0x5B57, 0x8E9B, 0x5BFA, 0x8E9C, 0x6148,
- 0x8E9D, 0x6301, 0x8E9E, 0x6642, 0x8E9F, 0x6B21, 0x8EA0, 0x6ECB,
- 0x8EA1, 0x6CBB, 0x8EA2, 0x723E, 0x8EA3, 0x74BD, 0x8EA4, 0x75D4,
- 0x8EA5, 0x78C1, 0x8EA6, 0x793A, 0x8EA7, 0x800C, 0x8EA8, 0x8033,
- 0x8EA9, 0x81EA, 0x8EAA, 0x8494, 0x8EAB, 0x8F9E, 0x8EAC, 0x6C50,
- 0x8EAD, 0x9E7F, 0x8EAE, 0x5F0F, 0x8EAF, 0x8B58, 0x8EB0, 0x9D2B,
- 0x8EB1, 0x7AFA, 0x8EB2, 0x8EF8, 0x8EB3, 0x5B8D, 0x8EB4, 0x96EB,
- 0x8EB5, 0x4E03, 0x8EB6, 0x53F1, 0x8EB7, 0x57F7, 0x8EB8, 0x5931,
- 0x8EB9, 0x5AC9, 0x8EBA, 0x5BA4, 0x8EBB, 0x6089, 0x8EBC, 0x6E7F,
- 0x8EBD, 0x6F06, 0x8EBE, 0x75BE, 0x8EBF, 0x8CEA, 0x8EC0, 0x5B9F,
- 0x8EC1, 0x8500, 0x8EC2, 0x7BE0, 0x8EC3, 0x5072, 0x8EC4, 0x67F4,
- 0x8EC5, 0x829D, 0x8EC6, 0x5C61, 0x8EC7, 0x854A, 0x8EC8, 0x7E1E,
- 0x8EC9, 0x820E, 0x8ECA, 0x5199, 0x8ECB, 0x5C04, 0x8ECC, 0x6368,
- 0x8ECD, 0x8D66, 0x8ECE, 0x659C, 0x8ECF, 0x716E, 0x8ED0, 0x793E,
- 0x8ED1, 0x7D17, 0x8ED2, 0x8005, 0x8ED3, 0x8B1D, 0x8ED4, 0x8ECA,
- 0x8ED5, 0x906E, 0x8ED6, 0x86C7, 0x8ED7, 0x90AA, 0x8ED8, 0x501F,
- 0x8ED9, 0x52FA, 0x8EDA, 0x5C3A, 0x8EDB, 0x6753, 0x8EDC, 0x707C,
- 0x8EDD, 0x7235, 0x8EDE, 0x914C, 0x8EDF, 0x91C8, 0x8EE0, 0x932B,
- 0x8EE1, 0x82E5, 0x8EE2, 0x5BC2, 0x8EE3, 0x5F31, 0x8EE4, 0x60F9,
- 0x8EE5, 0x4E3B, 0x8EE6, 0x53D6, 0x8EE7, 0x5B88, 0x8EE8, 0x624B,
- 0x8EE9, 0x6731, 0x8EEA, 0x6B8A, 0x8EEB, 0x72E9, 0x8EEC, 0x73E0,
- 0x8EED, 0x7A2E, 0x8EEE, 0x816B, 0x8EEF, 0x8DA3, 0x8EF0, 0x9152,
- 0x8EF1, 0x9996, 0x8EF2, 0x5112, 0x8EF3, 0x53D7, 0x8EF4, 0x546A,
- 0x8EF5, 0x5BFF, 0x8EF6, 0x6388, 0x8EF7, 0x6A39, 0x8EF8, 0x7DAC,
- 0x8EF9, 0x9700, 0x8EFA, 0x56DA, 0x8EFB, 0x53CE, 0x8EFC, 0x5468,
- 0x8F40, 0x5B97, 0x8F41, 0x5C31, 0x8F42, 0x5DDE, 0x8F43, 0x4FEE,
- 0x8F44, 0x6101, 0x8F45, 0x62FE, 0x8F46, 0x6D32, 0x8F47, 0x79C0,
- 0x8F48, 0x79CB, 0x8F49, 0x7D42, 0x8F4A, 0x7E4D, 0x8F4B, 0x7FD2,
- 0x8F4C, 0x81ED, 0x8F4D, 0x821F, 0x8F4E, 0x8490, 0x8F4F, 0x8846,
- 0x8F50, 0x8972, 0x8F51, 0x8B90, 0x8F52, 0x8E74, 0x8F53, 0x8F2F,
- 0x8F54, 0x9031, 0x8F55, 0x914B, 0x8F56, 0x916C, 0x8F57, 0x96C6,
- 0x8F58, 0x919C, 0x8F59, 0x4EC0, 0x8F5A, 0x4F4F, 0x8F5B, 0x5145,
- 0x8F5C, 0x5341, 0x8F5D, 0x5F93, 0x8F5E, 0x620E, 0x8F5F, 0x67D4,
- 0x8F60, 0x6C41, 0x8F61, 0x6E0B, 0x8F62, 0x7363, 0x8F63, 0x7E26,
- 0x8F64, 0x91CD, 0x8F65, 0x9283, 0x8F66, 0x53D4, 0x8F67, 0x5919,
- 0x8F68, 0x5BBF, 0x8F69, 0x6DD1, 0x8F6A, 0x795D, 0x8F6B, 0x7E2E,
- 0x8F6C, 0x7C9B, 0x8F6D, 0x587E, 0x8F6E, 0x719F, 0x8F6F, 0x51FA,
- 0x8F70, 0x8853, 0x8F71, 0x8FF0, 0x8F72, 0x4FCA, 0x8F73, 0x5CFB,
- 0x8F74, 0x6625, 0x8F75, 0x77AC, 0x8F76, 0x7AE3, 0x8F77, 0x821C,
- 0x8F78, 0x99FF, 0x8F79, 0x51C6, 0x8F7A, 0x5FAA, 0x8F7B, 0x65EC,
- 0x8F7C, 0x696F, 0x8F7D, 0x6B89, 0x8F7E, 0x6DF3, 0x8F80, 0x6E96,
- 0x8F81, 0x6F64, 0x8F82, 0x76FE, 0x8F83, 0x7D14, 0x8F84, 0x5DE1,
- 0x8F85, 0x9075, 0x8F86, 0x9187, 0x8F87, 0x9806, 0x8F88, 0x51E6,
- 0x8F89, 0x521D, 0x8F8A, 0x6240, 0x8F8B, 0x6691, 0x8F8C, 0x66D9,
- 0x8F8D, 0x6E1A, 0x8F8E, 0x5EB6, 0x8F8F, 0x7DD2, 0x8F90, 0x7F72,
- 0x8F91, 0x66F8, 0x8F92, 0x85AF, 0x8F93, 0x85F7, 0x8F94, 0x8AF8,
- 0x8F95, 0x52A9, 0x8F96, 0x53D9, 0x8F97, 0x5973, 0x8F98, 0x5E8F,
- 0x8F99, 0x5F90, 0x8F9A, 0x6055, 0x8F9B, 0x92E4, 0x8F9C, 0x9664,
- 0x8F9D, 0x50B7, 0x8F9E, 0x511F, 0x8F9F, 0x52DD, 0x8FA0, 0x5320,
- 0x8FA1, 0x5347, 0x8FA2, 0x53EC, 0x8FA3, 0x54E8, 0x8FA4, 0x5546,
- 0x8FA5, 0x5531, 0x8FA6, 0x5617, 0x8FA7, 0x5968, 0x8FA8, 0x59BE,
- 0x8FA9, 0x5A3C, 0x8FAA, 0x5BB5, 0x8FAB, 0x5C06, 0x8FAC, 0x5C0F,
- 0x8FAD, 0x5C11, 0x8FAE, 0x5C1A, 0x8FAF, 0x5E84, 0x8FB0, 0x5E8A,
- 0x8FB1, 0x5EE0, 0x8FB2, 0x5F70, 0x8FB3, 0x627F, 0x8FB4, 0x6284,
- 0x8FB5, 0x62DB, 0x8FB6, 0x638C, 0x8FB7, 0x6377, 0x8FB8, 0x6607,
- 0x8FB9, 0x660C, 0x8FBA, 0x662D, 0x8FBB, 0x6676, 0x8FBC, 0x677E,
- 0x8FBD, 0x68A2, 0x8FBE, 0x6A1F, 0x8FBF, 0x6A35, 0x8FC0, 0x6CBC,
- 0x8FC1, 0x6D88, 0x8FC2, 0x6E09, 0x8FC3, 0x6E58, 0x8FC4, 0x713C,
- 0x8FC5, 0x7126, 0x8FC6, 0x7167, 0x8FC7, 0x75C7, 0x8FC8, 0x7701,
- 0x8FC9, 0x785D, 0x8FCA, 0x7901, 0x8FCB, 0x7965, 0x8FCC, 0x79F0,
- 0x8FCD, 0x7AE0, 0x8FCE, 0x7B11, 0x8FCF, 0x7CA7, 0x8FD0, 0x7D39,
- 0x8FD1, 0x8096, 0x8FD2, 0x83D6, 0x8FD3, 0x848B, 0x8FD4, 0x8549,
- 0x8FD5, 0x885D, 0x8FD6, 0x88F3, 0x8FD7, 0x8A1F, 0x8FD8, 0x8A3C,
- 0x8FD9, 0x8A54, 0x8FDA, 0x8A73, 0x8FDB, 0x8C61, 0x8FDC, 0x8CDE,
- 0x8FDD, 0x91A4, 0x8FDE, 0x9266, 0x8FDF, 0x937E, 0x8FE0, 0x9418,
- 0x8FE1, 0x969C, 0x8FE2, 0x9798, 0x8FE3, 0x4E0A, 0x8FE4, 0x4E08,
- 0x8FE5, 0x4E1E, 0x8FE6, 0x4E57, 0x8FE7, 0x5197, 0x8FE8, 0x5270,
- 0x8FE9, 0x57CE, 0x8FEA, 0x5834, 0x8FEB, 0x58CC, 0x8FEC, 0x5B22,
- 0x8FED, 0x5E38, 0x8FEE, 0x60C5, 0x8FEF, 0x64FE, 0x8FF0, 0x6761,
- 0x8FF1, 0x6756, 0x8FF2, 0x6D44, 0x8FF3, 0x72B6, 0x8FF4, 0x7573,
- 0x8FF5, 0x7A63, 0x8FF6, 0x84B8, 0x8FF7, 0x8B72, 0x8FF8, 0x91B8,
- 0x8FF9, 0x9320, 0x8FFA, 0x5631, 0x8FFB, 0x57F4, 0x8FFC, 0x98FE,
- 0x9040, 0x62ED, 0x9041, 0x690D, 0x9042, 0x6B96, 0x9043, 0x71ED,
- 0x9044, 0x7E54, 0x9045, 0x8077, 0x9046, 0x8272, 0x9047, 0x89E6,
- 0x9048, 0x98DF, 0x9049, 0x8755, 0x904A, 0x8FB1, 0x904B, 0x5C3B,
- 0x904C, 0x4F38, 0x904D, 0x4FE1, 0x904E, 0x4FB5, 0x904F, 0x5507,
- 0x9050, 0x5A20, 0x9051, 0x5BDD, 0x9052, 0x5BE9, 0x9053, 0x5FC3,
- 0x9054, 0x614E, 0x9055, 0x632F, 0x9056, 0x65B0, 0x9057, 0x664B,
- 0x9058, 0x68EE, 0x9059, 0x699B, 0x905A, 0x6D78, 0x905B, 0x6DF1,
- 0x905C, 0x7533, 0x905D, 0x75B9, 0x905E, 0x771F, 0x905F, 0x795E,
- 0x9060, 0x79E6, 0x9061, 0x7D33, 0x9062, 0x81E3, 0x9063, 0x82AF,
- 0x9064, 0x85AA, 0x9065, 0x89AA, 0x9066, 0x8A3A, 0x9067, 0x8EAB,
- 0x9068, 0x8F9B, 0x9069, 0x9032, 0x906A, 0x91DD, 0x906B, 0x9707,
- 0x906C, 0x4EBA, 0x906D, 0x4EC1, 0x906E, 0x5203, 0x906F, 0x5875,
- 0x9070, 0x58EC, 0x9071, 0x5C0B, 0x9072, 0x751A, 0x9073, 0x5C3D,
- 0x9074, 0x814E, 0x9075, 0x8A0A, 0x9076, 0x8FC5, 0x9077, 0x9663,
- 0x9078, 0x976D, 0x9079, 0x7B25, 0x907A, 0x8ACF, 0x907B, 0x9808,
- 0x907C, 0x9162, 0x907D, 0x56F3, 0x907E, 0x53A8, 0x9080, 0x9017,
- 0x9081, 0x5439, 0x9082, 0x5782, 0x9083, 0x5E25, 0x9084, 0x63A8,
- 0x9085, 0x6C34, 0x9086, 0x708A, 0x9087, 0x7761, 0x9088, 0x7C8B,
- 0x9089, 0x7FE0, 0x908A, 0x8870, 0x908B, 0x9042, 0x908C, 0x9154,
- 0x908D, 0x9310, 0x908E, 0x9318, 0x908F, 0x968F, 0x9090, 0x745E,
- 0x9091, 0x9AC4, 0x9092, 0x5D07, 0x9093, 0x5D69, 0x9094, 0x6570,
- 0x9095, 0x67A2, 0x9096, 0x8DA8, 0x9097, 0x96DB, 0x9098, 0x636E,
- 0x9099, 0x6749, 0x909A, 0x6919, 0x909B, 0x83C5, 0x909C, 0x9817,
- 0x909D, 0x96C0, 0x909E, 0x88FE, 0x909F, 0x6F84, 0x90A0, 0x647A,
- 0x90A1, 0x5BF8, 0x90A2, 0x4E16, 0x90A3, 0x702C, 0x90A4, 0x755D,
- 0x90A5, 0x662F, 0x90A6, 0x51C4, 0x90A7, 0x5236, 0x90A8, 0x52E2,
- 0x90A9, 0x59D3, 0x90AA, 0x5F81, 0x90AB, 0x6027, 0x90AC, 0x6210,
- 0x90AD, 0x653F, 0x90AE, 0x6574, 0x90AF, 0x661F, 0x90B0, 0x6674,
- 0x90B1, 0x68F2, 0x90B2, 0x6816, 0x90B3, 0x6B63, 0x90B4, 0x6E05,
- 0x90B5, 0x7272, 0x90B6, 0x751F, 0x90B7, 0x76DB, 0x90B8, 0x7CBE,
- 0x90B9, 0x8056, 0x90BA, 0x58F0, 0x90BB, 0x88FD, 0x90BC, 0x897F,
- 0x90BD, 0x8AA0, 0x90BE, 0x8A93, 0x90BF, 0x8ACB, 0x90C0, 0x901D,
- 0x90C1, 0x9192, 0x90C2, 0x9752, 0x90C3, 0x9759, 0x90C4, 0x6589,
- 0x90C5, 0x7A0E, 0x90C6, 0x8106, 0x90C7, 0x96BB, 0x90C8, 0x5E2D,
- 0x90C9, 0x60DC, 0x90CA, 0x621A, 0x90CB, 0x65A5, 0x90CC, 0x6614,
- 0x90CD, 0x6790, 0x90CE, 0x77F3, 0x90CF, 0x7A4D, 0x90D0, 0x7C4D,
- 0x90D1, 0x7E3E, 0x90D2, 0x810A, 0x90D3, 0x8CAC, 0x90D4, 0x8D64,
- 0x90D5, 0x8DE1, 0x90D6, 0x8E5F, 0x90D7, 0x78A9, 0x90D8, 0x5207,
- 0x90D9, 0x62D9, 0x90DA, 0x63A5, 0x90DB, 0x6442, 0x90DC, 0x6298,
- 0x90DD, 0x8A2D, 0x90DE, 0x7A83, 0x90DF, 0x7BC0, 0x90E0, 0x8AAC,
- 0x90E1, 0x96EA, 0x90E2, 0x7D76, 0x90E3, 0x820C, 0x90E4, 0x8749,
- 0x90E5, 0x4ED9, 0x90E6, 0x5148, 0x90E7, 0x5343, 0x90E8, 0x5360,
- 0x90E9, 0x5BA3, 0x90EA, 0x5C02, 0x90EB, 0x5C16, 0x90EC, 0x5DDD,
- 0x90ED, 0x6226, 0x90EE, 0x6247, 0x90EF, 0x64B0, 0x90F0, 0x6813,
- 0x90F1, 0x6834, 0x90F2, 0x6CC9, 0x90F3, 0x6D45, 0x90F4, 0x6D17,
- 0x90F5, 0x67D3, 0x90F6, 0x6F5C, 0x90F7, 0x714E, 0x90F8, 0x717D,
- 0x90F9, 0x65CB, 0x90FA, 0x7A7F, 0x90FB, 0x7BAD, 0x90FC, 0x7DDA,
- 0x9140, 0x7E4A, 0x9141, 0x7FA8, 0x9142, 0x817A, 0x9143, 0x821B,
- 0x9144, 0x8239, 0x9145, 0x85A6, 0x9146, 0x8A6E, 0x9147, 0x8CCE,
- 0x9148, 0x8DF5, 0x9149, 0x9078, 0x914A, 0x9077, 0x914B, 0x92AD,
- 0x914C, 0x9291, 0x914D, 0x9583, 0x914E, 0x9BAE, 0x914F, 0x524D,
- 0x9150, 0x5584, 0x9151, 0x6F38, 0x9152, 0x7136, 0x9153, 0x5168,
- 0x9154, 0x7985, 0x9155, 0x7E55, 0x9156, 0x81B3, 0x9157, 0x7CCE,
- 0x9158, 0x564C, 0x9159, 0x5851, 0x915A, 0x5CA8, 0x915B, 0x63AA,
- 0x915C, 0x66FE, 0x915D, 0x66FD, 0x915E, 0x695A, 0x915F, 0x72D9,
- 0x9160, 0x758F, 0x9161, 0x758E, 0x9162, 0x790E, 0x9163, 0x7956,
- 0x9164, 0x79DF, 0x9165, 0x7C97, 0x9166, 0x7D20, 0x9167, 0x7D44,
- 0x9168, 0x8607, 0x9169, 0x8A34, 0x916A, 0x963B, 0x916B, 0x9061,
- 0x916C, 0x9F20, 0x916D, 0x50E7, 0x916E, 0x5275, 0x916F, 0x53CC,
- 0x9170, 0x53E2, 0x9171, 0x5009, 0x9172, 0x55AA, 0x9173, 0x58EE,
- 0x9174, 0x594F, 0x9175, 0x723D, 0x9176, 0x5B8B, 0x9177, 0x5C64,
- 0x9178, 0x531D, 0x9179, 0x60E3, 0x917A, 0x60F3, 0x917B, 0x635C,
- 0x917C, 0x6383, 0x917D, 0x633F, 0x917E, 0x63BB, 0x9180, 0x64CD,
- 0x9181, 0x65E9, 0x9182, 0x66F9, 0x9183, 0x5DE3, 0x9184, 0x69CD,
- 0x9185, 0x69FD, 0x9186, 0x6F15, 0x9187, 0x71E5, 0x9188, 0x4E89,
- 0x9189, 0x75E9, 0x918A, 0x76F8, 0x918B, 0x7A93, 0x918C, 0x7CDF,
- 0x918D, 0x7DCF, 0x918E, 0x7D9C, 0x918F, 0x8061, 0x9190, 0x8349,
- 0x9191, 0x8358, 0x9192, 0x846C, 0x9193, 0x84BC, 0x9194, 0x85FB,
- 0x9195, 0x88C5, 0x9196, 0x8D70, 0x9197, 0x9001, 0x9198, 0x906D,
- 0x9199, 0x9397, 0x919A, 0x971C, 0x919B, 0x9A12, 0x919C, 0x50CF,
- 0x919D, 0x5897, 0x919E, 0x618E, 0x919F, 0x81D3, 0x91A0, 0x8535,
- 0x91A1, 0x8D08, 0x91A2, 0x9020, 0x91A3, 0x4FC3, 0x91A4, 0x5074,
- 0x91A5, 0x5247, 0x91A6, 0x5373, 0x91A7, 0x606F, 0x91A8, 0x6349,
- 0x91A9, 0x675F, 0x91AA, 0x6E2C, 0x91AB, 0x8DB3, 0x91AC, 0x901F,
- 0x91AD, 0x4FD7, 0x91AE, 0x5C5E, 0x91AF, 0x8CCA, 0x91B0, 0x65CF,
- 0x91B1, 0x7D9A, 0x91B2, 0x5352, 0x91B3, 0x8896, 0x91B4, 0x5176,
- 0x91B5, 0x63C3, 0x91B6, 0x5B58, 0x91B7, 0x5B6B, 0x91B8, 0x5C0A,
- 0x91B9, 0x640D, 0x91BA, 0x6751, 0x91BB, 0x905C, 0x91BC, 0x4ED6,
- 0x91BD, 0x591A, 0x91BE, 0x592A, 0x91BF, 0x6C70, 0x91C0, 0x8A51,
- 0x91C1, 0x553E, 0x91C2, 0x5815, 0x91C3, 0x59A5, 0x91C4, 0x60F0,
- 0x91C5, 0x6253, 0x91C6, 0x67C1, 0x91C7, 0x8235, 0x91C8, 0x6955,
- 0x91C9, 0x9640, 0x91CA, 0x99C4, 0x91CB, 0x9A28, 0x91CC, 0x4F53,
- 0x91CD, 0x5806, 0x91CE, 0x5BFE, 0x91CF, 0x8010, 0x91D0, 0x5CB1,
- 0x91D1, 0x5E2F, 0x91D2, 0x5F85, 0x91D3, 0x6020, 0x91D4, 0x614B,
- 0x91D5, 0x6234, 0x91D6, 0x66FF, 0x91D7, 0x6CF0, 0x91D8, 0x6EDE,
- 0x91D9, 0x80CE, 0x91DA, 0x817F, 0x91DB, 0x82D4, 0x91DC, 0x888B,
- 0x91DD, 0x8CB8, 0x91DE, 0x9000, 0x91DF, 0x902E, 0x91E0, 0x968A,
- 0x91E1, 0x9EDB, 0x91E2, 0x9BDB, 0x91E3, 0x4EE3, 0x91E4, 0x53F0,
- 0x91E5, 0x5927, 0x91E6, 0x7B2C, 0x91E7, 0x918D, 0x91E8, 0x984C,
- 0x91E9, 0x9DF9, 0x91EA, 0x6EDD, 0x91EB, 0x7027, 0x91EC, 0x5353,
- 0x91ED, 0x5544, 0x91EE, 0x5B85, 0x91EF, 0x6258, 0x91F0, 0x629E,
- 0x91F1, 0x62D3, 0x91F2, 0x6CA2, 0x91F3, 0x6FEF, 0x91F4, 0x7422,
- 0x91F5, 0x8A17, 0x91F6, 0x9438, 0x91F7, 0x6FC1, 0x91F8, 0x8AFE,
- 0x91F9, 0x8338, 0x91FA, 0x51E7, 0x91FB, 0x86F8, 0x91FC, 0x53EA,
- 0x9240, 0x53E9, 0x9241, 0x4F46, 0x9242, 0x9054, 0x9243, 0x8FB0,
- 0x9244, 0x596A, 0x9245, 0x8131, 0x9246, 0x5DFD, 0x9247, 0x7AEA,
- 0x9248, 0x8FBF, 0x9249, 0x68DA, 0x924A, 0x8C37, 0x924B, 0x72F8,
- 0x924C, 0x9C48, 0x924D, 0x6A3D, 0x924E, 0x8AB0, 0x924F, 0x4E39,
- 0x9250, 0x5358, 0x9251, 0x5606, 0x9252, 0x5766, 0x9253, 0x62C5,
- 0x9254, 0x63A2, 0x9255, 0x65E6, 0x9256, 0x6B4E, 0x9257, 0x6DE1,
- 0x9258, 0x6E5B, 0x9259, 0x70AD, 0x925A, 0x77ED, 0x925B, 0x7AEF,
- 0x925C, 0x7BAA, 0x925D, 0x7DBB, 0x925E, 0x803D, 0x925F, 0x80C6,
- 0x9260, 0x86CB, 0x9261, 0x8A95, 0x9262, 0x935B, 0x9263, 0x56E3,
- 0x9264, 0x58C7, 0x9265, 0x5F3E, 0x9266, 0x65AD, 0x9267, 0x6696,
- 0x9268, 0x6A80, 0x9269, 0x6BB5, 0x926A, 0x7537, 0x926B, 0x8AC7,
- 0x926C, 0x5024, 0x926D, 0x77E5, 0x926E, 0x5730, 0x926F, 0x5F1B,
- 0x9270, 0x6065, 0x9271, 0x667A, 0x9272, 0x6C60, 0x9273, 0x75F4,
- 0x9274, 0x7A1A, 0x9275, 0x7F6E, 0x9276, 0x81F4, 0x9277, 0x8718,
- 0x9278, 0x9045, 0x9279, 0x99B3, 0x927A, 0x7BC9, 0x927B, 0x755C,
- 0x927C, 0x7AF9, 0x927D, 0x7B51, 0x927E, 0x84C4, 0x9280, 0x9010,
- 0x9281, 0x79E9, 0x9282, 0x7A92, 0x9283, 0x8336, 0x9284, 0x5AE1,
- 0x9285, 0x7740, 0x9286, 0x4E2D, 0x9287, 0x4EF2, 0x9288, 0x5B99,
- 0x9289, 0x5FE0, 0x928A, 0x62BD, 0x928B, 0x663C, 0x928C, 0x67F1,
- 0x928D, 0x6CE8, 0x928E, 0x866B, 0x928F, 0x8877, 0x9290, 0x8A3B,
- 0x9291, 0x914E, 0x9292, 0x92F3, 0x9293, 0x99D0, 0x9294, 0x6A17,
- 0x9295, 0x7026, 0x9296, 0x732A, 0x9297, 0x82E7, 0x9298, 0x8457,
- 0x9299, 0x8CAF, 0x929A, 0x4E01, 0x929B, 0x5146, 0x929C, 0x51CB,
- 0x929D, 0x558B, 0x929E, 0x5BF5, 0x929F, 0x5E16, 0x92A0, 0x5E33,
- 0x92A1, 0x5E81, 0x92A2, 0x5F14, 0x92A3, 0x5F35, 0x92A4, 0x5F6B,
- 0x92A5, 0x5FB4, 0x92A6, 0x61F2, 0x92A7, 0x6311, 0x92A8, 0x66A2,
- 0x92A9, 0x671D, 0x92AA, 0x6F6E, 0x92AB, 0x7252, 0x92AC, 0x753A,
- 0x92AD, 0x773A, 0x92AE, 0x8074, 0x92AF, 0x8139, 0x92B0, 0x8178,
- 0x92B1, 0x8776, 0x92B2, 0x8ABF, 0x92B3, 0x8ADC, 0x92B4, 0x8D85,
- 0x92B5, 0x8DF3, 0x92B6, 0x929A, 0x92B7, 0x9577, 0x92B8, 0x9802,
- 0x92B9, 0x9CE5, 0x92BA, 0x52C5, 0x92BB, 0x6357, 0x92BC, 0x76F4,
- 0x92BD, 0x6715, 0x92BE, 0x6C88, 0x92BF, 0x73CD, 0x92C0, 0x8CC3,
- 0x92C1, 0x93AE, 0x92C2, 0x9673, 0x92C3, 0x6D25, 0x92C4, 0x589C,
- 0x92C5, 0x690E, 0x92C6, 0x69CC, 0x92C7, 0x8FFD, 0x92C8, 0x939A,
- 0x92C9, 0x75DB, 0x92CA, 0x901A, 0x92CB, 0x585A, 0x92CC, 0x6802,
- 0x92CD, 0x63B4, 0x92CE, 0x69FB, 0x92CF, 0x4F43, 0x92D0, 0x6F2C,
- 0x92D1, 0x67D8, 0x92D2, 0x8FBB, 0x92D3, 0x8526, 0x92D4, 0x7DB4,
- 0x92D5, 0x9354, 0x92D6, 0x693F, 0x92D7, 0x6F70, 0x92D8, 0x576A,
- 0x92D9, 0x58F7, 0x92DA, 0x5B2C, 0x92DB, 0x7D2C, 0x92DC, 0x722A,
- 0x92DD, 0x540A, 0x92DE, 0x91E3, 0x92DF, 0x9DB4, 0x92E0, 0x4EAD,
- 0x92E1, 0x4F4E, 0x92E2, 0x505C, 0x92E3, 0x5075, 0x92E4, 0x5243,
- 0x92E5, 0x8C9E, 0x92E6, 0x5448, 0x92E7, 0x5824, 0x92E8, 0x5B9A,
- 0x92E9, 0x5E1D, 0x92EA, 0x5E95, 0x92EB, 0x5EAD, 0x92EC, 0x5EF7,
- 0x92ED, 0x5F1F, 0x92EE, 0x608C, 0x92EF, 0x62B5, 0x92F0, 0x633A,
- 0x92F1, 0x63D0, 0x92F2, 0x68AF, 0x92F3, 0x6C40, 0x92F4, 0x7887,
- 0x92F5, 0x798E, 0x92F6, 0x7A0B, 0x92F7, 0x7DE0, 0x92F8, 0x8247,
- 0x92F9, 0x8A02, 0x92FA, 0x8AE6, 0x92FB, 0x8E44, 0x92FC, 0x9013,
- 0x9340, 0x90B8, 0x9341, 0x912D, 0x9342, 0x91D8, 0x9343, 0x9F0E,
- 0x9344, 0x6CE5, 0x9345, 0x6458, 0x9346, 0x64E2, 0x9347, 0x6575,
- 0x9348, 0x6EF4, 0x9349, 0x7684, 0x934A, 0x7B1B, 0x934B, 0x9069,
- 0x934C, 0x93D1, 0x934D, 0x6EBA, 0x934E, 0x54F2, 0x934F, 0x5FB9,
- 0x9350, 0x64A4, 0x9351, 0x8F4D, 0x9352, 0x8FED, 0x9353, 0x9244,
- 0x9354, 0x5178, 0x9355, 0x586B, 0x9356, 0x5929, 0x9357, 0x5C55,
- 0x9358, 0x5E97, 0x9359, 0x6DFB, 0x935A, 0x7E8F, 0x935B, 0x751C,
- 0x935C, 0x8CBC, 0x935D, 0x8EE2, 0x935E, 0x985B, 0x935F, 0x70B9,
- 0x9360, 0x4F1D, 0x9361, 0x6BBF, 0x9362, 0x6FB1, 0x9363, 0x7530,
- 0x9364, 0x96FB, 0x9365, 0x514E, 0x9366, 0x5410, 0x9367, 0x5835,
- 0x9368, 0x5857, 0x9369, 0x59AC, 0x936A, 0x5C60, 0x936B, 0x5F92,
- 0x936C, 0x6597, 0x936D, 0x675C, 0x936E, 0x6E21, 0x936F, 0x767B,
- 0x9370, 0x83DF, 0x9371, 0x8CED, 0x9372, 0x9014, 0x9373, 0x90FD,
- 0x9374, 0x934D, 0x9375, 0x7825, 0x9376, 0x783A, 0x9377, 0x52AA,
- 0x9378, 0x5EA6, 0x9379, 0x571F, 0x937A, 0x5974, 0x937B, 0x6012,
- 0x937C, 0x5012, 0x937D, 0x515A, 0x937E, 0x51AC, 0x9380, 0x51CD,
- 0x9381, 0x5200, 0x9382, 0x5510, 0x9383, 0x5854, 0x9384, 0x5858,
- 0x9385, 0x5957, 0x9386, 0x5B95, 0x9387, 0x5CF6, 0x9388, 0x5D8B,
- 0x9389, 0x60BC, 0x938A, 0x6295, 0x938B, 0x642D, 0x938C, 0x6771,
- 0x938D, 0x6843, 0x938E, 0x68BC, 0x938F, 0x68DF, 0x9390, 0x76D7,
- 0x9391, 0x6DD8, 0x9392, 0x6E6F, 0x9393, 0x6D9B, 0x9394, 0x706F,
- 0x9395, 0x71C8, 0x9396, 0x5F53, 0x9397, 0x75D8, 0x9398, 0x7977,
- 0x9399, 0x7B49, 0x939A, 0x7B54, 0x939B, 0x7B52, 0x939C, 0x7CD6,
- 0x939D, 0x7D71, 0x939E, 0x5230, 0x939F, 0x8463, 0x93A0, 0x8569,
- 0x93A1, 0x85E4, 0x93A2, 0x8A0E, 0x93A3, 0x8B04, 0x93A4, 0x8C46,
- 0x93A5, 0x8E0F, 0x93A6, 0x9003, 0x93A7, 0x900F, 0x93A8, 0x9419,
- 0x93A9, 0x9676, 0x93AA, 0x982D, 0x93AB, 0x9A30, 0x93AC, 0x95D8,
- 0x93AD, 0x50CD, 0x93AE, 0x52D5, 0x93AF, 0x540C, 0x93B0, 0x5802,
- 0x93B1, 0x5C0E, 0x93B2, 0x61A7, 0x93B3, 0x649E, 0x93B4, 0x6D1E,
- 0x93B5, 0x77B3, 0x93B6, 0x7AE5, 0x93B7, 0x80F4, 0x93B8, 0x8404,
- 0x93B9, 0x9053, 0x93BA, 0x9285, 0x93BB, 0x5CE0, 0x93BC, 0x9D07,
- 0x93BD, 0x533F, 0x93BE, 0x5F97, 0x93BF, 0x5FB3, 0x93C0, 0x6D9C,
- 0x93C1, 0x7279, 0x93C2, 0x7763, 0x93C3, 0x79BF, 0x93C4, 0x7BE4,
- 0x93C5, 0x6BD2, 0x93C6, 0x72EC, 0x93C7, 0x8AAD, 0x93C8, 0x6803,
- 0x93C9, 0x6A61, 0x93CA, 0x51F8, 0x93CB, 0x7A81, 0x93CC, 0x6934,
- 0x93CD, 0x5C4A, 0x93CE, 0x9CF6, 0x93CF, 0x82EB, 0x93D0, 0x5BC5,
- 0x93D1, 0x9149, 0x93D2, 0x701E, 0x93D3, 0x5678, 0x93D4, 0x5C6F,
- 0x93D5, 0x60C7, 0x93D6, 0x6566, 0x93D7, 0x6C8C, 0x93D8, 0x8C5A,
- 0x93D9, 0x9041, 0x93DA, 0x9813, 0x93DB, 0x5451, 0x93DC, 0x66C7,
- 0x93DD, 0x920D, 0x93DE, 0x5948, 0x93DF, 0x90A3, 0x93E0, 0x5185,
- 0x93E1, 0x4E4D, 0x93E2, 0x51EA, 0x93E3, 0x8599, 0x93E4, 0x8B0E,
- 0x93E5, 0x7058, 0x93E6, 0x637A, 0x93E7, 0x934B, 0x93E8, 0x6962,
- 0x93E9, 0x99B4, 0x93EA, 0x7E04, 0x93EB, 0x7577, 0x93EC, 0x5357,
- 0x93ED, 0x6960, 0x93EE, 0x8EDF, 0x93EF, 0x96E3, 0x93F0, 0x6C5D,
- 0x93F1, 0x4E8C, 0x93F2, 0x5C3C, 0x93F3, 0x5F10, 0x93F4, 0x8FE9,
- 0x93F5, 0x5302, 0x93F6, 0x8CD1, 0x93F7, 0x8089, 0x93F8, 0x8679,
- 0x93F9, 0x5EFF, 0x93FA, 0x65E5, 0x93FB, 0x4E73, 0x93FC, 0x5165,
- 0x9440, 0x5982, 0x9441, 0x5C3F, 0x9442, 0x97EE, 0x9443, 0x4EFB,
- 0x9444, 0x598A, 0x9445, 0x5FCD, 0x9446, 0x8A8D, 0x9447, 0x6FE1,
- 0x9448, 0x79B0, 0x9449, 0x7962, 0x944A, 0x5BE7, 0x944B, 0x8471,
- 0x944C, 0x732B, 0x944D, 0x71B1, 0x944E, 0x5E74, 0x944F, 0x5FF5,
- 0x9450, 0x637B, 0x9451, 0x649A, 0x9452, 0x71C3, 0x9453, 0x7C98,
- 0x9454, 0x4E43, 0x9455, 0x5EFC, 0x9456, 0x4E4B, 0x9457, 0x57DC,
- 0x9458, 0x56A2, 0x9459, 0x60A9, 0x945A, 0x6FC3, 0x945B, 0x7D0D,
- 0x945C, 0x80FD, 0x945D, 0x8133, 0x945E, 0x81BF, 0x945F, 0x8FB2,
- 0x9460, 0x8997, 0x9461, 0x86A4, 0x9462, 0x5DF4, 0x9463, 0x628A,
- 0x9464, 0x64AD, 0x9465, 0x8987, 0x9466, 0x6777, 0x9467, 0x6CE2,
- 0x9468, 0x6D3E, 0x9469, 0x7436, 0x946A, 0x7834, 0x946B, 0x5A46,
- 0x946C, 0x7F75, 0x946D, 0x82AD, 0x946E, 0x99AC, 0x946F, 0x4FF3,
- 0x9470, 0x5EC3, 0x9471, 0x62DD, 0x9472, 0x6392, 0x9473, 0x6557,
- 0x9474, 0x676F, 0x9475, 0x76C3, 0x9476, 0x724C, 0x9477, 0x80CC,
- 0x9478, 0x80BA, 0x9479, 0x8F29, 0x947A, 0x914D, 0x947B, 0x500D,
- 0x947C, 0x57F9, 0x947D, 0x5A92, 0x947E, 0x6885, 0x9480, 0x6973,
- 0x9481, 0x7164, 0x9482, 0x72FD, 0x9483, 0x8CB7, 0x9484, 0x58F2,
- 0x9485, 0x8CE0, 0x9486, 0x966A, 0x9487, 0x9019, 0x9488, 0x877F,
- 0x9489, 0x79E4, 0x948A, 0x77E7, 0x948B, 0x8429, 0x948C, 0x4F2F,
- 0x948D, 0x5265, 0x948E, 0x535A, 0x948F, 0x62CD, 0x9490, 0x67CF,
- 0x9491, 0x6CCA, 0x9492, 0x767D, 0x9493, 0x7B94, 0x9494, 0x7C95,
- 0x9495, 0x8236, 0x9496, 0x8584, 0x9497, 0x8FEB, 0x9498, 0x66DD,
- 0x9499, 0x6F20, 0x949A, 0x7206, 0x949B, 0x7E1B, 0x949C, 0x83AB,
- 0x949D, 0x99C1, 0x949E, 0x9EA6, 0x949F, 0x51FD, 0x94A0, 0x7BB1,
- 0x94A1, 0x7872, 0x94A2, 0x7BB8, 0x94A3, 0x8087, 0x94A4, 0x7B48,
- 0x94A5, 0x6AE8, 0x94A6, 0x5E61, 0x94A7, 0x808C, 0x94A8, 0x7551,
- 0x94A9, 0x7560, 0x94AA, 0x516B, 0x94AB, 0x9262, 0x94AC, 0x6E8C,
- 0x94AD, 0x767A, 0x94AE, 0x9197, 0x94AF, 0x9AEA, 0x94B0, 0x4F10,
- 0x94B1, 0x7F70, 0x94B2, 0x629C, 0x94B3, 0x7B4F, 0x94B4, 0x95A5,
- 0x94B5, 0x9CE9, 0x94B6, 0x567A, 0x94B7, 0x5859, 0x94B8, 0x86E4,
- 0x94B9, 0x96BC, 0x94BA, 0x4F34, 0x94BB, 0x5224, 0x94BC, 0x534A,
- 0x94BD, 0x53CD, 0x94BE, 0x53DB, 0x94BF, 0x5E06, 0x94C0, 0x642C,
- 0x94C1, 0x6591, 0x94C2, 0x677F, 0x94C3, 0x6C3E, 0x94C4, 0x6C4E,
- 0x94C5, 0x7248, 0x94C6, 0x72AF, 0x94C7, 0x73ED, 0x94C8, 0x7554,
- 0x94C9, 0x7E41, 0x94CA, 0x822C, 0x94CB, 0x85E9, 0x94CC, 0x8CA9,
- 0x94CD, 0x7BC4, 0x94CE, 0x91C6, 0x94CF, 0x7169, 0x94D0, 0x9812,
- 0x94D1, 0x98EF, 0x94D2, 0x633D, 0x94D3, 0x6669, 0x94D4, 0x756A,
- 0x94D5, 0x76E4, 0x94D6, 0x78D0, 0x94D7, 0x8543, 0x94D8, 0x86EE,
- 0x94D9, 0x532A, 0x94DA, 0x5351, 0x94DB, 0x5426, 0x94DC, 0x5983,
- 0x94DD, 0x5E87, 0x94DE, 0x5F7C, 0x94DF, 0x60B2, 0x94E0, 0x6249,
- 0x94E1, 0x6279, 0x94E2, 0x62AB, 0x94E3, 0x6590, 0x94E4, 0x6BD4,
- 0x94E5, 0x6CCC, 0x94E6, 0x75B2, 0x94E7, 0x76AE, 0x94E8, 0x7891,
- 0x94E9, 0x79D8, 0x94EA, 0x7DCB, 0x94EB, 0x7F77, 0x94EC, 0x80A5,
- 0x94ED, 0x88AB, 0x94EE, 0x8AB9, 0x94EF, 0x8CBB, 0x94F0, 0x907F,
- 0x94F1, 0x975E, 0x94F2, 0x98DB, 0x94F3, 0x6A0B, 0x94F4, 0x7C38,
- 0x94F5, 0x5099, 0x94F6, 0x5C3E, 0x94F7, 0x5FAE, 0x94F8, 0x6787,
- 0x94F9, 0x6BD8, 0x94FA, 0x7435, 0x94FB, 0x7709, 0x94FC, 0x7F8E,
- 0x9540, 0x9F3B, 0x9541, 0x67CA, 0x9542, 0x7A17, 0x9543, 0x5339,
- 0x9544, 0x758B, 0x9545, 0x9AED, 0x9546, 0x5F66, 0x9547, 0x819D,
- 0x9548, 0x83F1, 0x9549, 0x8098, 0x954A, 0x5F3C, 0x954B, 0x5FC5,
- 0x954C, 0x7562, 0x954D, 0x7B46, 0x954E, 0x903C, 0x954F, 0x6867,
- 0x9550, 0x59EB, 0x9551, 0x5A9B, 0x9552, 0x7D10, 0x9553, 0x767E,
- 0x9554, 0x8B2C, 0x9555, 0x4FF5, 0x9556, 0x5F6A, 0x9557, 0x6A19,
- 0x9558, 0x6C37, 0x9559, 0x6F02, 0x955A, 0x74E2, 0x955B, 0x7968,
- 0x955C, 0x8868, 0x955D, 0x8A55, 0x955E, 0x8C79, 0x955F, 0x5EDF,
- 0x9560, 0x63CF, 0x9561, 0x75C5, 0x9562, 0x79D2, 0x9563, 0x82D7,
- 0x9564, 0x9328, 0x9565, 0x92F2, 0x9566, 0x849C, 0x9567, 0x86ED,
- 0x9568, 0x9C2D, 0x9569, 0x54C1, 0x956A, 0x5F6C, 0x956B, 0x658C,
- 0x956C, 0x6D5C, 0x956D, 0x7015, 0x956E, 0x8CA7, 0x956F, 0x8CD3,
- 0x9570, 0x983B, 0x9571, 0x654F, 0x9572, 0x74F6, 0x9573, 0x4E0D,
- 0x9574, 0x4ED8, 0x9575, 0x57E0, 0x9576, 0x592B, 0x9577, 0x5A66,
- 0x9578, 0x5BCC, 0x9579, 0x51A8, 0x957A, 0x5E03, 0x957B, 0x5E9C,
- 0x957C, 0x6016, 0x957D, 0x6276, 0x957E, 0x6577, 0x9580, 0x65A7,
- 0x9581, 0x666E, 0x9582, 0x6D6E, 0x9583, 0x7236, 0x9584, 0x7B26,
- 0x9585, 0x8150, 0x9586, 0x819A, 0x9587, 0x8299, 0x9588, 0x8B5C,
- 0x9589, 0x8CA0, 0x958A, 0x8CE6, 0x958B, 0x8D74, 0x958C, 0x961C,
- 0x958D, 0x9644, 0x958E, 0x4FAE, 0x958F, 0x64AB, 0x9590, 0x6B66,
- 0x9591, 0x821E, 0x9592, 0x8461, 0x9593, 0x856A, 0x9594, 0x90E8,
- 0x9595, 0x5C01, 0x9596, 0x6953, 0x9597, 0x98A8, 0x9598, 0x847A,
- 0x9599, 0x8557, 0x959A, 0x4F0F, 0x959B, 0x526F, 0x959C, 0x5FA9,
- 0x959D, 0x5E45, 0x959E, 0x670D, 0x959F, 0x798F, 0x95A0, 0x8179,
- 0x95A1, 0x8907, 0x95A2, 0x8986, 0x95A3, 0x6DF5, 0x95A4, 0x5F17,
- 0x95A5, 0x6255, 0x95A6, 0x6CB8, 0x95A7, 0x4ECF, 0x95A8, 0x7269,
- 0x95A9, 0x9B92, 0x95AA, 0x5206, 0x95AB, 0x543B, 0x95AC, 0x5674,
- 0x95AD, 0x58B3, 0x95AE, 0x61A4, 0x95AF, 0x626E, 0x95B0, 0x711A,
- 0x95B1, 0x596E, 0x95B2, 0x7C89, 0x95B3, 0x7CDE, 0x95B4, 0x7D1B,
- 0x95B5, 0x96F0, 0x95B6, 0x6587, 0x95B7, 0x805E, 0x95B8, 0x4E19,
- 0x95B9, 0x4F75, 0x95BA, 0x5175, 0x95BB, 0x5840, 0x95BC, 0x5E63,
- 0x95BD, 0x5E73, 0x95BE, 0x5F0A, 0x95BF, 0x67C4, 0x95C0, 0x4E26,
- 0x95C1, 0x853D, 0x95C2, 0x9589, 0x95C3, 0x965B, 0x95C4, 0x7C73,
- 0x95C5, 0x9801, 0x95C6, 0x50FB, 0x95C7, 0x58C1, 0x95C8, 0x7656,
- 0x95C9, 0x78A7, 0x95CA, 0x5225, 0x95CB, 0x77A5, 0x95CC, 0x8511,
- 0x95CD, 0x7B86, 0x95CE, 0x504F, 0x95CF, 0x5909, 0x95D0, 0x7247,
- 0x95D1, 0x7BC7, 0x95D2, 0x7DE8, 0x95D3, 0x8FBA, 0x95D4, 0x8FD4,
- 0x95D5, 0x904D, 0x95D6, 0x4FBF, 0x95D7, 0x52C9, 0x95D8, 0x5A29,
- 0x95D9, 0x5F01, 0x95DA, 0x97AD, 0x95DB, 0x4FDD, 0x95DC, 0x8217,
- 0x95DD, 0x92EA, 0x95DE, 0x5703, 0x95DF, 0x6355, 0x95E0, 0x6B69,
- 0x95E1, 0x752B, 0x95E2, 0x88DC, 0x95E3, 0x8F14, 0x95E4, 0x7A42,
- 0x95E5, 0x52DF, 0x95E6, 0x5893, 0x95E7, 0x6155, 0x95E8, 0x620A,
- 0x95E9, 0x66AE, 0x95EA, 0x6BCD, 0x95EB, 0x7C3F, 0x95EC, 0x83E9,
- 0x95ED, 0x5023, 0x95EE, 0x4FF8, 0x95EF, 0x5305, 0x95F0, 0x5446,
- 0x95F1, 0x5831, 0x95F2, 0x5949, 0x95F3, 0x5B9D, 0x95F4, 0x5CF0,
- 0x95F5, 0x5CEF, 0x95F6, 0x5D29, 0x95F7, 0x5E96, 0x95F8, 0x62B1,
- 0x95F9, 0x6367, 0x95FA, 0x653E, 0x95FB, 0x65B9, 0x95FC, 0x670B,
- 0x9640, 0x6CD5, 0x9641, 0x6CE1, 0x9642, 0x70F9, 0x9643, 0x7832,
- 0x9644, 0x7E2B, 0x9645, 0x80DE, 0x9646, 0x82B3, 0x9647, 0x840C,
- 0x9648, 0x84EC, 0x9649, 0x8702, 0x964A, 0x8912, 0x964B, 0x8A2A,
- 0x964C, 0x8C4A, 0x964D, 0x90A6, 0x964E, 0x92D2, 0x964F, 0x98FD,
- 0x9650, 0x9CF3, 0x9651, 0x9D6C, 0x9652, 0x4E4F, 0x9653, 0x4EA1,
- 0x9654, 0x508D, 0x9655, 0x5256, 0x9656, 0x574A, 0x9657, 0x59A8,
- 0x9658, 0x5E3D, 0x9659, 0x5FD8, 0x965A, 0x5FD9, 0x965B, 0x623F,
- 0x965C, 0x66B4, 0x965D, 0x671B, 0x965E, 0x67D0, 0x965F, 0x68D2,
- 0x9660, 0x5192, 0x9661, 0x7D21, 0x9662, 0x80AA, 0x9663, 0x81A8,
- 0x9664, 0x8B00, 0x9665, 0x8C8C, 0x9666, 0x8CBF, 0x9667, 0x927E,
- 0x9668, 0x9632, 0x9669, 0x5420, 0x966A, 0x982C, 0x966B, 0x5317,
- 0x966C, 0x50D5, 0x966D, 0x535C, 0x966E, 0x58A8, 0x966F, 0x64B2,
- 0x9670, 0x6734, 0x9671, 0x7267, 0x9672, 0x7766, 0x9673, 0x7A46,
- 0x9674, 0x91E6, 0x9675, 0x52C3, 0x9676, 0x6CA1, 0x9677, 0x6B86,
- 0x9678, 0x5800, 0x9679, 0x5E4C, 0x967A, 0x5954, 0x967B, 0x672C,
- 0x967C, 0x7FFB, 0x967D, 0x51E1, 0x967E, 0x76C6, 0x9680, 0x6469,
- 0x9681, 0x78E8, 0x9682, 0x9B54, 0x9683, 0x9EBB, 0x9684, 0x57CB,
- 0x9685, 0x59B9, 0x9686, 0x6627, 0x9687, 0x679A, 0x9688, 0x6BCE,
- 0x9689, 0x54E9, 0x968A, 0x69D9, 0x968B, 0x5E55, 0x968C, 0x819C,
- 0x968D, 0x6795, 0x968E, 0x9BAA, 0x968F, 0x67FE, 0x9690, 0x9C52,
- 0x9691, 0x685D, 0x9692, 0x4EA6, 0x9693, 0x4FE3, 0x9694, 0x53C8,
- 0x9695, 0x62B9, 0x9696, 0x672B, 0x9697, 0x6CAB, 0x9698, 0x8FC4,
- 0x9699, 0x4FAD, 0x969A, 0x7E6D, 0x969B, 0x9EBF, 0x969C, 0x4E07,
- 0x969D, 0x6162, 0x969E, 0x6E80, 0x969F, 0x6F2B, 0x96A0, 0x8513,
- 0x96A1, 0x5473, 0x96A2, 0x672A, 0x96A3, 0x9B45, 0x96A4, 0x5DF3,
- 0x96A5, 0x7B95, 0x96A6, 0x5CAC, 0x96A7, 0x5BC6, 0x96A8, 0x871C,
- 0x96A9, 0x6E4A, 0x96AA, 0x84D1, 0x96AB, 0x7A14, 0x96AC, 0x8108,
- 0x96AD, 0x5999, 0x96AE, 0x7C8D, 0x96AF, 0x6C11, 0x96B0, 0x7720,
- 0x96B1, 0x52D9, 0x96B2, 0x5922, 0x96B3, 0x7121, 0x96B4, 0x725F,
- 0x96B5, 0x77DB, 0x96B6, 0x9727, 0x96B7, 0x9D61, 0x96B8, 0x690B,
- 0x96B9, 0x5A7F, 0x96BA, 0x5A18, 0x96BB, 0x51A5, 0x96BC, 0x540D,
- 0x96BD, 0x547D, 0x96BE, 0x660E, 0x96BF, 0x76DF, 0x96C0, 0x8FF7,
- 0x96C1, 0x9298, 0x96C2, 0x9CF4, 0x96C3, 0x59EA, 0x96C4, 0x725D,
- 0x96C5, 0x6EC5, 0x96C6, 0x514D, 0x96C7, 0x68C9, 0x96C8, 0x7DBF,
- 0x96C9, 0x7DEC, 0x96CA, 0x9762, 0x96CB, 0x9EBA, 0x96CC, 0x6478,
- 0x96CD, 0x6A21, 0x96CE, 0x8302, 0x96CF, 0x5984, 0x96D0, 0x5B5F,
- 0x96D1, 0x6BDB, 0x96D2, 0x731B, 0x96D3, 0x76F2, 0x96D4, 0x7DB2,
- 0x96D5, 0x8017, 0x96D6, 0x8499, 0x96D7, 0x5132, 0x96D8, 0x6728,
- 0x96D9, 0x9ED9, 0x96DA, 0x76EE, 0x96DB, 0x6762, 0x96DC, 0x52FF,
- 0x96DD, 0x9905, 0x96DE, 0x5C24, 0x96DF, 0x623B, 0x96E0, 0x7C7E,
- 0x96E1, 0x8CB0, 0x96E2, 0x554F, 0x96E3, 0x60B6, 0x96E4, 0x7D0B,
- 0x96E5, 0x9580, 0x96E6, 0x5301, 0x96E7, 0x4E5F, 0x96E8, 0x51B6,
- 0x96E9, 0x591C, 0x96EA, 0x723A, 0x96EB, 0x8036, 0x96EC, 0x91CE,
- 0x96ED, 0x5F25, 0x96EE, 0x77E2, 0x96EF, 0x5384, 0x96F0, 0x5F79,
- 0x96F1, 0x7D04, 0x96F2, 0x85AC, 0x96F3, 0x8A33, 0x96F4, 0x8E8D,
- 0x96F5, 0x9756, 0x96F6, 0x67F3, 0x96F7, 0x85AE, 0x96F8, 0x9453,
- 0x96F9, 0x6109, 0x96FA, 0x6108, 0x96FB, 0x6CB9, 0x96FC, 0x7652,
- 0x9740, 0x8AED, 0x9741, 0x8F38, 0x9742, 0x552F, 0x9743, 0x4F51,
- 0x9744, 0x512A, 0x9745, 0x52C7, 0x9746, 0x53CB, 0x9747, 0x5BA5,
- 0x9748, 0x5E7D, 0x9749, 0x60A0, 0x974A, 0x6182, 0x974B, 0x63D6,
- 0x974C, 0x6709, 0x974D, 0x67DA, 0x974E, 0x6E67, 0x974F, 0x6D8C,
- 0x9750, 0x7336, 0x9751, 0x7337, 0x9752, 0x7531, 0x9753, 0x7950,
- 0x9754, 0x88D5, 0x9755, 0x8A98, 0x9756, 0x904A, 0x9757, 0x9091,
- 0x9758, 0x90F5, 0x9759, 0x96C4, 0x975A, 0x878D, 0x975B, 0x5915,
- 0x975C, 0x4E88, 0x975D, 0x4F59, 0x975E, 0x4E0E, 0x975F, 0x8A89,
- 0x9760, 0x8F3F, 0x9761, 0x9810, 0x9762, 0x50AD, 0x9763, 0x5E7C,
- 0x9764, 0x5996, 0x9765, 0x5BB9, 0x9766, 0x5EB8, 0x9767, 0x63DA,
- 0x9768, 0x63FA, 0x9769, 0x64C1, 0x976A, 0x66DC, 0x976B, 0x694A,
- 0x976C, 0x69D8, 0x976D, 0x6D0B, 0x976E, 0x6EB6, 0x976F, 0x7194,
- 0x9770, 0x7528, 0x9771, 0x7AAF, 0x9772, 0x7F8A, 0x9773, 0x8000,
- 0x9774, 0x8449, 0x9775, 0x84C9, 0x9776, 0x8981, 0x9777, 0x8B21,
- 0x9778, 0x8E0A, 0x9779, 0x9065, 0x977A, 0x967D, 0x977B, 0x990A,
- 0x977C, 0x617E, 0x977D, 0x6291, 0x977E, 0x6B32, 0x9780, 0x6C83,
- 0x9781, 0x6D74, 0x9782, 0x7FCC, 0x9783, 0x7FFC, 0x9784, 0x6DC0,
- 0x9785, 0x7F85, 0x9786, 0x87BA, 0x9787, 0x88F8, 0x9788, 0x6765,
- 0x9789, 0x83B1, 0x978A, 0x983C, 0x978B, 0x96F7, 0x978C, 0x6D1B,
- 0x978D, 0x7D61, 0x978E, 0x843D, 0x978F, 0x916A, 0x9790, 0x4E71,
- 0x9791, 0x5375, 0x9792, 0x5D50, 0x9793, 0x6B04, 0x9794, 0x6FEB,
- 0x9795, 0x85CD, 0x9796, 0x862D, 0x9797, 0x89A7, 0x9798, 0x5229,
- 0x9799, 0x540F, 0x979A, 0x5C65, 0x979B, 0x674E, 0x979C, 0x68A8,
- 0x979D, 0x7406, 0x979E, 0x7483, 0x979F, 0x75E2, 0x97A0, 0x88CF,
- 0x97A1, 0x88E1, 0x97A2, 0x91CC, 0x97A3, 0x96E2, 0x97A4, 0x9678,
- 0x97A5, 0x5F8B, 0x97A6, 0x7387, 0x97A7, 0x7ACB, 0x97A8, 0x844E,
- 0x97A9, 0x63A0, 0x97AA, 0x7565, 0x97AB, 0x5289, 0x97AC, 0x6D41,
- 0x97AD, 0x6E9C, 0x97AE, 0x7409, 0x97AF, 0x7559, 0x97B0, 0x786B,
- 0x97B1, 0x7C92, 0x97B2, 0x9686, 0x97B3, 0x7ADC, 0x97B4, 0x9F8D,
- 0x97B5, 0x4FB6, 0x97B6, 0x616E, 0x97B7, 0x65C5, 0x97B8, 0x865C,
- 0x97B9, 0x4E86, 0x97BA, 0x4EAE, 0x97BB, 0x50DA, 0x97BC, 0x4E21,
- 0x97BD, 0x51CC, 0x97BE, 0x5BEE, 0x97BF, 0x6599, 0x97C0, 0x6881,
- 0x97C1, 0x6DBC, 0x97C2, 0x731F, 0x97C3, 0x7642, 0x97C4, 0x77AD,
- 0x97C5, 0x7A1C, 0x97C6, 0x7CE7, 0x97C7, 0x826F, 0x97C8, 0x8AD2,
- 0x97C9, 0x907C, 0x97CA, 0x91CF, 0x97CB, 0x9675, 0x97CC, 0x9818,
- 0x97CD, 0x529B, 0x97CE, 0x7DD1, 0x97CF, 0x502B, 0x97D0, 0x5398,
- 0x97D1, 0x6797, 0x97D2, 0x6DCB, 0x97D3, 0x71D0, 0x97D4, 0x7433,
- 0x97D5, 0x81E8, 0x97D6, 0x8F2A, 0x97D7, 0x96A3, 0x97D8, 0x9C57,
- 0x97D9, 0x9E9F, 0x97DA, 0x7460, 0x97DB, 0x5841, 0x97DC, 0x6D99,
- 0x97DD, 0x7D2F, 0x97DE, 0x985E, 0x97DF, 0x4EE4, 0x97E0, 0x4F36,
- 0x97E1, 0x4F8B, 0x97E2, 0x51B7, 0x97E3, 0x52B1, 0x97E4, 0x5DBA,
- 0x97E5, 0x601C, 0x97E6, 0x73B2, 0x97E7, 0x793C, 0x97E8, 0x82D3,
- 0x97E9, 0x9234, 0x97EA, 0x96B7, 0x97EB, 0x96F6, 0x97EC, 0x970A,
- 0x97ED, 0x9E97, 0x97EE, 0x9F62, 0x97EF, 0x66A6, 0x97F0, 0x6B74,
- 0x97F1, 0x5217, 0x97F2, 0x52A3, 0x97F3, 0x70C8, 0x97F4, 0x88C2,
- 0x97F5, 0x5EC9, 0x97F6, 0x604B, 0x97F7, 0x6190, 0x97F8, 0x6F23,
- 0x97F9, 0x7149, 0x97FA, 0x7C3E, 0x97FB, 0x7DF4, 0x97FC, 0x806F,
- 0x9840, 0x84EE, 0x9841, 0x9023, 0x9842, 0x932C, 0x9843, 0x5442,
- 0x9844, 0x9B6F, 0x9845, 0x6AD3, 0x9846, 0x7089, 0x9847, 0x8CC2,
- 0x9848, 0x8DEF, 0x9849, 0x9732, 0x984A, 0x52B4, 0x984B, 0x5A41,
- 0x984C, 0x5ECA, 0x984D, 0x5F04, 0x984E, 0x6717, 0x984F, 0x697C,
- 0x9850, 0x6994, 0x9851, 0x6D6A, 0x9852, 0x6F0F, 0x9853, 0x7262,
- 0x9854, 0x72FC, 0x9855, 0x7BED, 0x9856, 0x8001, 0x9857, 0x807E,
- 0x9858, 0x874B, 0x9859, 0x90CE, 0x985A, 0x516D, 0x985B, 0x9E93,
- 0x985C, 0x7984, 0x985D, 0x808B, 0x985E, 0x9332, 0x985F, 0x8AD6,
- 0x9860, 0x502D, 0x9861, 0x548C, 0x9862, 0x8A71, 0x9863, 0x6B6A,
- 0x9864, 0x8CC4, 0x9865, 0x8107, 0x9866, 0x60D1, 0x9867, 0x67A0,
- 0x9868, 0x9DF2, 0x9869, 0x4E99, 0x986A, 0x4E98, 0x986B, 0x9C10,
- 0x986C, 0x8A6B, 0x986D, 0x85C1, 0x986E, 0x8568, 0x986F, 0x6900,
- 0x9870, 0x6E7E, 0x9871, 0x7897, 0x9872, 0x8155, 0x989F, 0x5F0C,
- 0x98A0, 0x4E10, 0x98A1, 0x4E15, 0x98A2, 0x4E2A, 0x98A3, 0x4E31,
- 0x98A4, 0x4E36, 0x98A5, 0x4E3C, 0x98A6, 0x4E3F, 0x98A7, 0x4E42,
- 0x98A8, 0x4E56, 0x98A9, 0x4E58, 0x98AA, 0x4E82, 0x98AB, 0x4E85,
- 0x98AC, 0x8C6B, 0x98AD, 0x4E8A, 0x98AE, 0x8212, 0x98AF, 0x5F0D,
- 0x98B0, 0x4E8E, 0x98B1, 0x4E9E, 0x98B2, 0x4E9F, 0x98B3, 0x4EA0,
- 0x98B4, 0x4EA2, 0x98B5, 0x4EB0, 0x98B6, 0x4EB3, 0x98B7, 0x4EB6,
- 0x98B8, 0x4ECE, 0x98B9, 0x4ECD, 0x98BA, 0x4EC4, 0x98BB, 0x4EC6,
- 0x98BC, 0x4EC2, 0x98BD, 0x4ED7, 0x98BE, 0x4EDE, 0x98BF, 0x4EED,
- 0x98C0, 0x4EDF, 0x98C1, 0x4EF7, 0x98C2, 0x4F09, 0x98C3, 0x4F5A,
- 0x98C4, 0x4F30, 0x98C5, 0x4F5B, 0x98C6, 0x4F5D, 0x98C7, 0x4F57,
- 0x98C8, 0x4F47, 0x98C9, 0x4F76, 0x98CA, 0x4F88, 0x98CB, 0x4F8F,
- 0x98CC, 0x4F98, 0x98CD, 0x4F7B, 0x98CE, 0x4F69, 0x98CF, 0x4F70,
- 0x98D0, 0x4F91, 0x98D1, 0x4F6F, 0x98D2, 0x4F86, 0x98D3, 0x4F96,
- 0x98D4, 0x5118, 0x98D5, 0x4FD4, 0x98D6, 0x4FDF, 0x98D7, 0x4FCE,
- 0x98D8, 0x4FD8, 0x98D9, 0x4FDB, 0x98DA, 0x4FD1, 0x98DB, 0x4FDA,
- 0x98DC, 0x4FD0, 0x98DD, 0x4FE4, 0x98DE, 0x4FE5, 0x98DF, 0x501A,
- 0x98E0, 0x5028, 0x98E1, 0x5014, 0x98E2, 0x502A, 0x98E3, 0x5025,
- 0x98E4, 0x5005, 0x98E5, 0x4F1C, 0x98E6, 0x4FF6, 0x98E7, 0x5021,
- 0x98E8, 0x5029, 0x98E9, 0x502C, 0x98EA, 0x4FFE, 0x98EB, 0x4FEF,
- 0x98EC, 0x5011, 0x98ED, 0x5006, 0x98EE, 0x5043, 0x98EF, 0x5047,
- 0x98F0, 0x6703, 0x98F1, 0x5055, 0x98F2, 0x5050, 0x98F3, 0x5048,
- 0x98F4, 0x505A, 0x98F5, 0x5056, 0x98F6, 0x506C, 0x98F7, 0x5078,
- 0x98F8, 0x5080, 0x98F9, 0x509A, 0x98FA, 0x5085, 0x98FB, 0x50B4,
- 0x98FC, 0x50B2, 0x9940, 0x50C9, 0x9941, 0x50CA, 0x9942, 0x50B3,
- 0x9943, 0x50C2, 0x9944, 0x50D6, 0x9945, 0x50DE, 0x9946, 0x50E5,
- 0x9947, 0x50ED, 0x9948, 0x50E3, 0x9949, 0x50EE, 0x994A, 0x50F9,
- 0x994B, 0x50F5, 0x994C, 0x5109, 0x994D, 0x5101, 0x994E, 0x5102,
- 0x994F, 0x5116, 0x9950, 0x5115, 0x9951, 0x5114, 0x9952, 0x511A,
- 0x9953, 0x5121, 0x9954, 0x513A, 0x9955, 0x5137, 0x9956, 0x513C,
- 0x9957, 0x513B, 0x9958, 0x513F, 0x9959, 0x5140, 0x995A, 0x5152,
- 0x995B, 0x514C, 0x995C, 0x5154, 0x995D, 0x5162, 0x995E, 0x7AF8,
- 0x995F, 0x5169, 0x9960, 0x516A, 0x9961, 0x516E, 0x9962, 0x5180,
- 0x9963, 0x5182, 0x9964, 0x56D8, 0x9965, 0x518C, 0x9966, 0x5189,
- 0x9967, 0x518F, 0x9968, 0x5191, 0x9969, 0x5193, 0x996A, 0x5195,
- 0x996B, 0x5196, 0x996C, 0x51A4, 0x996D, 0x51A6, 0x996E, 0x51A2,
- 0x996F, 0x51A9, 0x9970, 0x51AA, 0x9971, 0x51AB, 0x9972, 0x51B3,
- 0x9973, 0x51B1, 0x9974, 0x51B2, 0x9975, 0x51B0, 0x9976, 0x51B5,
- 0x9977, 0x51BD, 0x9978, 0x51C5, 0x9979, 0x51C9, 0x997A, 0x51DB,
- 0x997B, 0x51E0, 0x997C, 0x8655, 0x997D, 0x51E9, 0x997E, 0x51ED,
- 0x9980, 0x51F0, 0x9981, 0x51F5, 0x9982, 0x51FE, 0x9983, 0x5204,
- 0x9984, 0x520B, 0x9985, 0x5214, 0x9986, 0x520E, 0x9987, 0x5227,
- 0x9988, 0x522A, 0x9989, 0x522E, 0x998A, 0x5233, 0x998B, 0x5239,
- 0x998C, 0x524F, 0x998D, 0x5244, 0x998E, 0x524B, 0x998F, 0x524C,
- 0x9990, 0x525E, 0x9991, 0x5254, 0x9992, 0x526A, 0x9993, 0x5274,
- 0x9994, 0x5269, 0x9995, 0x5273, 0x9996, 0x527F, 0x9997, 0x527D,
- 0x9998, 0x528D, 0x9999, 0x5294, 0x999A, 0x5292, 0x999B, 0x5271,
- 0x999C, 0x5288, 0x999D, 0x5291, 0x999E, 0x8FA8, 0x999F, 0x8FA7,
- 0x99A0, 0x52AC, 0x99A1, 0x52AD, 0x99A2, 0x52BC, 0x99A3, 0x52B5,
- 0x99A4, 0x52C1, 0x99A5, 0x52CD, 0x99A6, 0x52D7, 0x99A7, 0x52DE,
- 0x99A8, 0x52E3, 0x99A9, 0x52E6, 0x99AA, 0x98ED, 0x99AB, 0x52E0,
- 0x99AC, 0x52F3, 0x99AD, 0x52F5, 0x99AE, 0x52F8, 0x99AF, 0x52F9,
- 0x99B0, 0x5306, 0x99B1, 0x5308, 0x99B2, 0x7538, 0x99B3, 0x530D,
- 0x99B4, 0x5310, 0x99B5, 0x530F, 0x99B6, 0x5315, 0x99B7, 0x531A,
- 0x99B8, 0x5323, 0x99B9, 0x532F, 0x99BA, 0x5331, 0x99BB, 0x5333,
- 0x99BC, 0x5338, 0x99BD, 0x5340, 0x99BE, 0x5346, 0x99BF, 0x5345,
- 0x99C0, 0x4E17, 0x99C1, 0x5349, 0x99C2, 0x534D, 0x99C3, 0x51D6,
- 0x99C4, 0x535E, 0x99C5, 0x5369, 0x99C6, 0x536E, 0x99C7, 0x5918,
- 0x99C8, 0x537B, 0x99C9, 0x5377, 0x99CA, 0x5382, 0x99CB, 0x5396,
- 0x99CC, 0x53A0, 0x99CD, 0x53A6, 0x99CE, 0x53A5, 0x99CF, 0x53AE,
- 0x99D0, 0x53B0, 0x99D1, 0x53B6, 0x99D2, 0x53C3, 0x99D3, 0x7C12,
- 0x99D4, 0x96D9, 0x99D5, 0x53DF, 0x99D6, 0x66FC, 0x99D7, 0x71EE,
- 0x99D8, 0x53EE, 0x99D9, 0x53E8, 0x99DA, 0x53ED, 0x99DB, 0x53FA,
- 0x99DC, 0x5401, 0x99DD, 0x543D, 0x99DE, 0x5440, 0x99DF, 0x542C,
- 0x99E0, 0x542D, 0x99E1, 0x543C, 0x99E2, 0x542E, 0x99E3, 0x5436,
- 0x99E4, 0x5429, 0x99E5, 0x541D, 0x99E6, 0x544E, 0x99E7, 0x548F,
- 0x99E8, 0x5475, 0x99E9, 0x548E, 0x99EA, 0x545F, 0x99EB, 0x5471,
- 0x99EC, 0x5477, 0x99ED, 0x5470, 0x99EE, 0x5492, 0x99EF, 0x547B,
- 0x99F0, 0x5480, 0x99F1, 0x5476, 0x99F2, 0x5484, 0x99F3, 0x5490,
- 0x99F4, 0x5486, 0x99F5, 0x54C7, 0x99F6, 0x54A2, 0x99F7, 0x54B8,
- 0x99F8, 0x54A5, 0x99F9, 0x54AC, 0x99FA, 0x54C4, 0x99FB, 0x54C8,
- 0x99FC, 0x54A8, 0x9A40, 0x54AB, 0x9A41, 0x54C2, 0x9A42, 0x54A4,
- 0x9A43, 0x54BE, 0x9A44, 0x54BC, 0x9A45, 0x54D8, 0x9A46, 0x54E5,
- 0x9A47, 0x54E6, 0x9A48, 0x550F, 0x9A49, 0x5514, 0x9A4A, 0x54FD,
- 0x9A4B, 0x54EE, 0x9A4C, 0x54ED, 0x9A4D, 0x54FA, 0x9A4E, 0x54E2,
- 0x9A4F, 0x5539, 0x9A50, 0x5540, 0x9A51, 0x5563, 0x9A52, 0x554C,
- 0x9A53, 0x552E, 0x9A54, 0x555C, 0x9A55, 0x5545, 0x9A56, 0x5556,
- 0x9A57, 0x5557, 0x9A58, 0x5538, 0x9A59, 0x5533, 0x9A5A, 0x555D,
- 0x9A5B, 0x5599, 0x9A5C, 0x5580, 0x9A5D, 0x54AF, 0x9A5E, 0x558A,
- 0x9A5F, 0x559F, 0x9A60, 0x557B, 0x9A61, 0x557E, 0x9A62, 0x5598,
- 0x9A63, 0x559E, 0x9A64, 0x55AE, 0x9A65, 0x557C, 0x9A66, 0x5583,
- 0x9A67, 0x55A9, 0x9A68, 0x5587, 0x9A69, 0x55A8, 0x9A6A, 0x55DA,
- 0x9A6B, 0x55C5, 0x9A6C, 0x55DF, 0x9A6D, 0x55C4, 0x9A6E, 0x55DC,
- 0x9A6F, 0x55E4, 0x9A70, 0x55D4, 0x9A71, 0x5614, 0x9A72, 0x55F7,
- 0x9A73, 0x5616, 0x9A74, 0x55FE, 0x9A75, 0x55FD, 0x9A76, 0x561B,
- 0x9A77, 0x55F9, 0x9A78, 0x564E, 0x9A79, 0x5650, 0x9A7A, 0x71DF,
- 0x9A7B, 0x5634, 0x9A7C, 0x5636, 0x9A7D, 0x5632, 0x9A7E, 0x5638,
- 0x9A80, 0x566B, 0x9A81, 0x5664, 0x9A82, 0x562F, 0x9A83, 0x566C,
- 0x9A84, 0x566A, 0x9A85, 0x5686, 0x9A86, 0x5680, 0x9A87, 0x568A,
- 0x9A88, 0x56A0, 0x9A89, 0x5694, 0x9A8A, 0x568F, 0x9A8B, 0x56A5,
- 0x9A8C, 0x56AE, 0x9A8D, 0x56B6, 0x9A8E, 0x56B4, 0x9A8F, 0x56C2,
- 0x9A90, 0x56BC, 0x9A91, 0x56C1, 0x9A92, 0x56C3, 0x9A93, 0x56C0,
- 0x9A94, 0x56C8, 0x9A95, 0x56CE, 0x9A96, 0x56D1, 0x9A97, 0x56D3,
- 0x9A98, 0x56D7, 0x9A99, 0x56EE, 0x9A9A, 0x56F9, 0x9A9B, 0x5700,
- 0x9A9C, 0x56FF, 0x9A9D, 0x5704, 0x9A9E, 0x5709, 0x9A9F, 0x5708,
- 0x9AA0, 0x570B, 0x9AA1, 0x570D, 0x9AA2, 0x5713, 0x9AA3, 0x5718,
- 0x9AA4, 0x5716, 0x9AA5, 0x55C7, 0x9AA6, 0x571C, 0x9AA7, 0x5726,
- 0x9AA8, 0x5737, 0x9AA9, 0x5738, 0x9AAA, 0x574E, 0x9AAB, 0x573B,
- 0x9AAC, 0x5740, 0x9AAD, 0x574F, 0x9AAE, 0x5769, 0x9AAF, 0x57C0,
- 0x9AB0, 0x5788, 0x9AB1, 0x5761, 0x9AB2, 0x577F, 0x9AB3, 0x5789,
- 0x9AB4, 0x5793, 0x9AB5, 0x57A0, 0x9AB6, 0x57B3, 0x9AB7, 0x57A4,
- 0x9AB8, 0x57AA, 0x9AB9, 0x57B0, 0x9ABA, 0x57C3, 0x9ABB, 0x57C6,
- 0x9ABC, 0x57D4, 0x9ABD, 0x57D2, 0x9ABE, 0x57D3, 0x9ABF, 0x580A,
- 0x9AC0, 0x57D6, 0x9AC1, 0x57E3, 0x9AC2, 0x580B, 0x9AC3, 0x5819,
- 0x9AC4, 0x581D, 0x9AC5, 0x5872, 0x9AC6, 0x5821, 0x9AC7, 0x5862,
- 0x9AC8, 0x584B, 0x9AC9, 0x5870, 0x9ACA, 0x6BC0, 0x9ACB, 0x5852,
- 0x9ACC, 0x583D, 0x9ACD, 0x5879, 0x9ACE, 0x5885, 0x9ACF, 0x58B9,
- 0x9AD0, 0x589F, 0x9AD1, 0x58AB, 0x9AD2, 0x58BA, 0x9AD3, 0x58DE,
- 0x9AD4, 0x58BB, 0x9AD5, 0x58B8, 0x9AD6, 0x58AE, 0x9AD7, 0x58C5,
- 0x9AD8, 0x58D3, 0x9AD9, 0x58D1, 0x9ADA, 0x58D7, 0x9ADB, 0x58D9,
- 0x9ADC, 0x58D8, 0x9ADD, 0x58E5, 0x9ADE, 0x58DC, 0x9ADF, 0x58E4,
- 0x9AE0, 0x58DF, 0x9AE1, 0x58EF, 0x9AE2, 0x58FA, 0x9AE3, 0x58F9,
- 0x9AE4, 0x58FB, 0x9AE5, 0x58FC, 0x9AE6, 0x58FD, 0x9AE7, 0x5902,
- 0x9AE8, 0x590A, 0x9AE9, 0x5910, 0x9AEA, 0x591B, 0x9AEB, 0x68A6,
- 0x9AEC, 0x5925, 0x9AED, 0x592C, 0x9AEE, 0x592D, 0x9AEF, 0x5932,
- 0x9AF0, 0x5938, 0x9AF1, 0x593E, 0x9AF2, 0x7AD2, 0x9AF3, 0x5955,
- 0x9AF4, 0x5950, 0x9AF5, 0x594E, 0x9AF6, 0x595A, 0x9AF7, 0x5958,
- 0x9AF8, 0x5962, 0x9AF9, 0x5960, 0x9AFA, 0x5967, 0x9AFB, 0x596C,
- 0x9AFC, 0x5969, 0x9B40, 0x5978, 0x9B41, 0x5981, 0x9B42, 0x599D,
- 0x9B43, 0x4F5E, 0x9B44, 0x4FAB, 0x9B45, 0x59A3, 0x9B46, 0x59B2,
- 0x9B47, 0x59C6, 0x9B48, 0x59E8, 0x9B49, 0x59DC, 0x9B4A, 0x598D,
- 0x9B4B, 0x59D9, 0x9B4C, 0x59DA, 0x9B4D, 0x5A25, 0x9B4E, 0x5A1F,
- 0x9B4F, 0x5A11, 0x9B50, 0x5A1C, 0x9B51, 0x5A09, 0x9B52, 0x5A1A,
- 0x9B53, 0x5A40, 0x9B54, 0x5A6C, 0x9B55, 0x5A49, 0x9B56, 0x5A35,
- 0x9B57, 0x5A36, 0x9B58, 0x5A62, 0x9B59, 0x5A6A, 0x9B5A, 0x5A9A,
- 0x9B5B, 0x5ABC, 0x9B5C, 0x5ABE, 0x9B5D, 0x5ACB, 0x9B5E, 0x5AC2,
- 0x9B5F, 0x5ABD, 0x9B60, 0x5AE3, 0x9B61, 0x5AD7, 0x9B62, 0x5AE6,
- 0x9B63, 0x5AE9, 0x9B64, 0x5AD6, 0x9B65, 0x5AFA, 0x9B66, 0x5AFB,
- 0x9B67, 0x5B0C, 0x9B68, 0x5B0B, 0x9B69, 0x5B16, 0x9B6A, 0x5B32,
- 0x9B6B, 0x5AD0, 0x9B6C, 0x5B2A, 0x9B6D, 0x5B36, 0x9B6E, 0x5B3E,
- 0x9B6F, 0x5B43, 0x9B70, 0x5B45, 0x9B71, 0x5B40, 0x9B72, 0x5B51,
- 0x9B73, 0x5B55, 0x9B74, 0x5B5A, 0x9B75, 0x5B5B, 0x9B76, 0x5B65,
- 0x9B77, 0x5B69, 0x9B78, 0x5B70, 0x9B79, 0x5B73, 0x9B7A, 0x5B75,
- 0x9B7B, 0x5B78, 0x9B7C, 0x6588, 0x9B7D, 0x5B7A, 0x9B7E, 0x5B80,
- 0x9B80, 0x5B83, 0x9B81, 0x5BA6, 0x9B82, 0x5BB8, 0x9B83, 0x5BC3,
- 0x9B84, 0x5BC7, 0x9B85, 0x5BC9, 0x9B86, 0x5BD4, 0x9B87, 0x5BD0,
- 0x9B88, 0x5BE4, 0x9B89, 0x5BE6, 0x9B8A, 0x5BE2, 0x9B8B, 0x5BDE,
- 0x9B8C, 0x5BE5, 0x9B8D, 0x5BEB, 0x9B8E, 0x5BF0, 0x9B8F, 0x5BF6,
- 0x9B90, 0x5BF3, 0x9B91, 0x5C05, 0x9B92, 0x5C07, 0x9B93, 0x5C08,
- 0x9B94, 0x5C0D, 0x9B95, 0x5C13, 0x9B96, 0x5C20, 0x9B97, 0x5C22,
- 0x9B98, 0x5C28, 0x9B99, 0x5C38, 0x9B9A, 0x5C39, 0x9B9B, 0x5C41,
- 0x9B9C, 0x5C46, 0x9B9D, 0x5C4E, 0x9B9E, 0x5C53, 0x9B9F, 0x5C50,
- 0x9BA0, 0x5C4F, 0x9BA1, 0x5B71, 0x9BA2, 0x5C6C, 0x9BA3, 0x5C6E,
- 0x9BA4, 0x4E62, 0x9BA5, 0x5C76, 0x9BA6, 0x5C79, 0x9BA7, 0x5C8C,
- 0x9BA8, 0x5C91, 0x9BA9, 0x5C94, 0x9BAA, 0x599B, 0x9BAB, 0x5CAB,
- 0x9BAC, 0x5CBB, 0x9BAD, 0x5CB6, 0x9BAE, 0x5CBC, 0x9BAF, 0x5CB7,
- 0x9BB0, 0x5CC5, 0x9BB1, 0x5CBE, 0x9BB2, 0x5CC7, 0x9BB3, 0x5CD9,
- 0x9BB4, 0x5CE9, 0x9BB5, 0x5CFD, 0x9BB6, 0x5CFA, 0x9BB7, 0x5CED,
- 0x9BB8, 0x5D8C, 0x9BB9, 0x5CEA, 0x9BBA, 0x5D0B, 0x9BBB, 0x5D15,
- 0x9BBC, 0x5D17, 0x9BBD, 0x5D5C, 0x9BBE, 0x5D1F, 0x9BBF, 0x5D1B,
- 0x9BC0, 0x5D11, 0x9BC1, 0x5D14, 0x9BC2, 0x5D22, 0x9BC3, 0x5D1A,
- 0x9BC4, 0x5D19, 0x9BC5, 0x5D18, 0x9BC6, 0x5D4C, 0x9BC7, 0x5D52,
- 0x9BC8, 0x5D4E, 0x9BC9, 0x5D4B, 0x9BCA, 0x5D6C, 0x9BCB, 0x5D73,
- 0x9BCC, 0x5D76, 0x9BCD, 0x5D87, 0x9BCE, 0x5D84, 0x9BCF, 0x5D82,
- 0x9BD0, 0x5DA2, 0x9BD1, 0x5D9D, 0x9BD2, 0x5DAC, 0x9BD3, 0x5DAE,
- 0x9BD4, 0x5DBD, 0x9BD5, 0x5D90, 0x9BD6, 0x5DB7, 0x9BD7, 0x5DBC,
- 0x9BD8, 0x5DC9, 0x9BD9, 0x5DCD, 0x9BDA, 0x5DD3, 0x9BDB, 0x5DD2,
- 0x9BDC, 0x5DD6, 0x9BDD, 0x5DDB, 0x9BDE, 0x5DEB, 0x9BDF, 0x5DF2,
- 0x9BE0, 0x5DF5, 0x9BE1, 0x5E0B, 0x9BE2, 0x5E1A, 0x9BE3, 0x5E19,
- 0x9BE4, 0x5E11, 0x9BE5, 0x5E1B, 0x9BE6, 0x5E36, 0x9BE7, 0x5E37,
- 0x9BE8, 0x5E44, 0x9BE9, 0x5E43, 0x9BEA, 0x5E40, 0x9BEB, 0x5E4E,
- 0x9BEC, 0x5E57, 0x9BED, 0x5E54, 0x9BEE, 0x5E5F, 0x9BEF, 0x5E62,
- 0x9BF0, 0x5E64, 0x9BF1, 0x5E47, 0x9BF2, 0x5E75, 0x9BF3, 0x5E76,
- 0x9BF4, 0x5E7A, 0x9BF5, 0x9EBC, 0x9BF6, 0x5E7F, 0x9BF7, 0x5EA0,
- 0x9BF8, 0x5EC1, 0x9BF9, 0x5EC2, 0x9BFA, 0x5EC8, 0x9BFB, 0x5ED0,
- 0x9BFC, 0x5ECF, 0x9C40, 0x5ED6, 0x9C41, 0x5EE3, 0x9C42, 0x5EDD,
- 0x9C43, 0x5EDA, 0x9C44, 0x5EDB, 0x9C45, 0x5EE2, 0x9C46, 0x5EE1,
- 0x9C47, 0x5EE8, 0x9C48, 0x5EE9, 0x9C49, 0x5EEC, 0x9C4A, 0x5EF1,
- 0x9C4B, 0x5EF3, 0x9C4C, 0x5EF0, 0x9C4D, 0x5EF4, 0x9C4E, 0x5EF8,
- 0x9C4F, 0x5EFE, 0x9C50, 0x5F03, 0x9C51, 0x5F09, 0x9C52, 0x5F5D,
- 0x9C53, 0x5F5C, 0x9C54, 0x5F0B, 0x9C55, 0x5F11, 0x9C56, 0x5F16,
- 0x9C57, 0x5F29, 0x9C58, 0x5F2D, 0x9C59, 0x5F38, 0x9C5A, 0x5F41,
- 0x9C5B, 0x5F48, 0x9C5C, 0x5F4C, 0x9C5D, 0x5F4E, 0x9C5E, 0x5F2F,
- 0x9C5F, 0x5F51, 0x9C60, 0x5F56, 0x9C61, 0x5F57, 0x9C62, 0x5F59,
- 0x9C63, 0x5F61, 0x9C64, 0x5F6D, 0x9C65, 0x5F73, 0x9C66, 0x5F77,
- 0x9C67, 0x5F83, 0x9C68, 0x5F82, 0x9C69, 0x5F7F, 0x9C6A, 0x5F8A,
- 0x9C6B, 0x5F88, 0x9C6C, 0x5F91, 0x9C6D, 0x5F87, 0x9C6E, 0x5F9E,
- 0x9C6F, 0x5F99, 0x9C70, 0x5F98, 0x9C71, 0x5FA0, 0x9C72, 0x5FA8,
- 0x9C73, 0x5FAD, 0x9C74, 0x5FBC, 0x9C75, 0x5FD6, 0x9C76, 0x5FFB,
- 0x9C77, 0x5FE4, 0x9C78, 0x5FF8, 0x9C79, 0x5FF1, 0x9C7A, 0x5FDD,
- 0x9C7B, 0x60B3, 0x9C7C, 0x5FFF, 0x9C7D, 0x6021, 0x9C7E, 0x6060,
- 0x9C80, 0x6019, 0x9C81, 0x6010, 0x9C82, 0x6029, 0x9C83, 0x600E,
- 0x9C84, 0x6031, 0x9C85, 0x601B, 0x9C86, 0x6015, 0x9C87, 0x602B,
- 0x9C88, 0x6026, 0x9C89, 0x600F, 0x9C8A, 0x603A, 0x9C8B, 0x605A,
- 0x9C8C, 0x6041, 0x9C8D, 0x606A, 0x9C8E, 0x6077, 0x9C8F, 0x605F,
- 0x9C90, 0x604A, 0x9C91, 0x6046, 0x9C92, 0x604D, 0x9C93, 0x6063,
- 0x9C94, 0x6043, 0x9C95, 0x6064, 0x9C96, 0x6042, 0x9C97, 0x606C,
- 0x9C98, 0x606B, 0x9C99, 0x6059, 0x9C9A, 0x6081, 0x9C9B, 0x608D,
- 0x9C9C, 0x60E7, 0x9C9D, 0x6083, 0x9C9E, 0x609A, 0x9C9F, 0x6084,
- 0x9CA0, 0x609B, 0x9CA1, 0x6096, 0x9CA2, 0x6097, 0x9CA3, 0x6092,
- 0x9CA4, 0x60A7, 0x9CA5, 0x608B, 0x9CA6, 0x60E1, 0x9CA7, 0x60B8,
- 0x9CA8, 0x60E0, 0x9CA9, 0x60D3, 0x9CAA, 0x60B4, 0x9CAB, 0x5FF0,
- 0x9CAC, 0x60BD, 0x9CAD, 0x60C6, 0x9CAE, 0x60B5, 0x9CAF, 0x60D8,
- 0x9CB0, 0x614D, 0x9CB1, 0x6115, 0x9CB2, 0x6106, 0x9CB3, 0x60F6,
- 0x9CB4, 0x60F7, 0x9CB5, 0x6100, 0x9CB6, 0x60F4, 0x9CB7, 0x60FA,
- 0x9CB8, 0x6103, 0x9CB9, 0x6121, 0x9CBA, 0x60FB, 0x9CBB, 0x60F1,
- 0x9CBC, 0x610D, 0x9CBD, 0x610E, 0x9CBE, 0x6147, 0x9CBF, 0x613E,
- 0x9CC0, 0x6128, 0x9CC1, 0x6127, 0x9CC2, 0x614A, 0x9CC3, 0x613F,
- 0x9CC4, 0x613C, 0x9CC5, 0x612C, 0x9CC6, 0x6134, 0x9CC7, 0x613D,
- 0x9CC8, 0x6142, 0x9CC9, 0x6144, 0x9CCA, 0x6173, 0x9CCB, 0x6177,
- 0x9CCC, 0x6158, 0x9CCD, 0x6159, 0x9CCE, 0x615A, 0x9CCF, 0x616B,
- 0x9CD0, 0x6174, 0x9CD1, 0x616F, 0x9CD2, 0x6165, 0x9CD3, 0x6171,
- 0x9CD4, 0x615F, 0x9CD5, 0x615D, 0x9CD6, 0x6153, 0x9CD7, 0x6175,
- 0x9CD8, 0x6199, 0x9CD9, 0x6196, 0x9CDA, 0x6187, 0x9CDB, 0x61AC,
- 0x9CDC, 0x6194, 0x9CDD, 0x619A, 0x9CDE, 0x618A, 0x9CDF, 0x6191,
- 0x9CE0, 0x61AB, 0x9CE1, 0x61AE, 0x9CE2, 0x61CC, 0x9CE3, 0x61CA,
- 0x9CE4, 0x61C9, 0x9CE5, 0x61F7, 0x9CE6, 0x61C8, 0x9CE7, 0x61C3,
- 0x9CE8, 0x61C6, 0x9CE9, 0x61BA, 0x9CEA, 0x61CB, 0x9CEB, 0x7F79,
- 0x9CEC, 0x61CD, 0x9CED, 0x61E6, 0x9CEE, 0x61E3, 0x9CEF, 0x61F6,
- 0x9CF0, 0x61FA, 0x9CF1, 0x61F4, 0x9CF2, 0x61FF, 0x9CF3, 0x61FD,
- 0x9CF4, 0x61FC, 0x9CF5, 0x61FE, 0x9CF6, 0x6200, 0x9CF7, 0x6208,
- 0x9CF8, 0x6209, 0x9CF9, 0x620D, 0x9CFA, 0x620C, 0x9CFB, 0x6214,
- 0x9CFC, 0x621B, 0x9D40, 0x621E, 0x9D41, 0x6221, 0x9D42, 0x622A,
- 0x9D43, 0x622E, 0x9D44, 0x6230, 0x9D45, 0x6232, 0x9D46, 0x6233,
- 0x9D47, 0x6241, 0x9D48, 0x624E, 0x9D49, 0x625E, 0x9D4A, 0x6263,
- 0x9D4B, 0x625B, 0x9D4C, 0x6260, 0x9D4D, 0x6268, 0x9D4E, 0x627C,
- 0x9D4F, 0x6282, 0x9D50, 0x6289, 0x9D51, 0x627E, 0x9D52, 0x6292,
- 0x9D53, 0x6293, 0x9D54, 0x6296, 0x9D55, 0x62D4, 0x9D56, 0x6283,
- 0x9D57, 0x6294, 0x9D58, 0x62D7, 0x9D59, 0x62D1, 0x9D5A, 0x62BB,
- 0x9D5B, 0x62CF, 0x9D5C, 0x62FF, 0x9D5D, 0x62C6, 0x9D5E, 0x64D4,
- 0x9D5F, 0x62C8, 0x9D60, 0x62DC, 0x9D61, 0x62CC, 0x9D62, 0x62CA,
- 0x9D63, 0x62C2, 0x9D64, 0x62C7, 0x9D65, 0x629B, 0x9D66, 0x62C9,
- 0x9D67, 0x630C, 0x9D68, 0x62EE, 0x9D69, 0x62F1, 0x9D6A, 0x6327,
- 0x9D6B, 0x6302, 0x9D6C, 0x6308, 0x9D6D, 0x62EF, 0x9D6E, 0x62F5,
- 0x9D6F, 0x6350, 0x9D70, 0x633E, 0x9D71, 0x634D, 0x9D72, 0x641C,
- 0x9D73, 0x634F, 0x9D74, 0x6396, 0x9D75, 0x638E, 0x9D76, 0x6380,
- 0x9D77, 0x63AB, 0x9D78, 0x6376, 0x9D79, 0x63A3, 0x9D7A, 0x638F,
- 0x9D7B, 0x6389, 0x9D7C, 0x639F, 0x9D7D, 0x63B5, 0x9D7E, 0x636B,
- 0x9D80, 0x6369, 0x9D81, 0x63BE, 0x9D82, 0x63E9, 0x9D83, 0x63C0,
- 0x9D84, 0x63C6, 0x9D85, 0x63E3, 0x9D86, 0x63C9, 0x9D87, 0x63D2,
- 0x9D88, 0x63F6, 0x9D89, 0x63C4, 0x9D8A, 0x6416, 0x9D8B, 0x6434,
- 0x9D8C, 0x6406, 0x9D8D, 0x6413, 0x9D8E, 0x6426, 0x9D8F, 0x6436,
- 0x9D90, 0x651D, 0x9D91, 0x6417, 0x9D92, 0x6428, 0x9D93, 0x640F,
- 0x9D94, 0x6467, 0x9D95, 0x646F, 0x9D96, 0x6476, 0x9D97, 0x644E,
- 0x9D98, 0x652A, 0x9D99, 0x6495, 0x9D9A, 0x6493, 0x9D9B, 0x64A5,
- 0x9D9C, 0x64A9, 0x9D9D, 0x6488, 0x9D9E, 0x64BC, 0x9D9F, 0x64DA,
- 0x9DA0, 0x64D2, 0x9DA1, 0x64C5, 0x9DA2, 0x64C7, 0x9DA3, 0x64BB,
- 0x9DA4, 0x64D8, 0x9DA5, 0x64C2, 0x9DA6, 0x64F1, 0x9DA7, 0x64E7,
- 0x9DA8, 0x8209, 0x9DA9, 0x64E0, 0x9DAA, 0x64E1, 0x9DAB, 0x62AC,
- 0x9DAC, 0x64E3, 0x9DAD, 0x64EF, 0x9DAE, 0x652C, 0x9DAF, 0x64F6,
- 0x9DB0, 0x64F4, 0x9DB1, 0x64F2, 0x9DB2, 0x64FA, 0x9DB3, 0x6500,
- 0x9DB4, 0x64FD, 0x9DB5, 0x6518, 0x9DB6, 0x651C, 0x9DB7, 0x6505,
- 0x9DB8, 0x6524, 0x9DB9, 0x6523, 0x9DBA, 0x652B, 0x9DBB, 0x6534,
- 0x9DBC, 0x6535, 0x9DBD, 0x6537, 0x9DBE, 0x6536, 0x9DBF, 0x6538,
- 0x9DC0, 0x754B, 0x9DC1, 0x6548, 0x9DC2, 0x6556, 0x9DC3, 0x6555,
- 0x9DC4, 0x654D, 0x9DC5, 0x6558, 0x9DC6, 0x655E, 0x9DC7, 0x655D,
- 0x9DC8, 0x6572, 0x9DC9, 0x6578, 0x9DCA, 0x6582, 0x9DCB, 0x6583,
- 0x9DCC, 0x8B8A, 0x9DCD, 0x659B, 0x9DCE, 0x659F, 0x9DCF, 0x65AB,
- 0x9DD0, 0x65B7, 0x9DD1, 0x65C3, 0x9DD2, 0x65C6, 0x9DD3, 0x65C1,
- 0x9DD4, 0x65C4, 0x9DD5, 0x65CC, 0x9DD6, 0x65D2, 0x9DD7, 0x65DB,
- 0x9DD8, 0x65D9, 0x9DD9, 0x65E0, 0x9DDA, 0x65E1, 0x9DDB, 0x65F1,
- 0x9DDC, 0x6772, 0x9DDD, 0x660A, 0x9DDE, 0x6603, 0x9DDF, 0x65FB,
- 0x9DE0, 0x6773, 0x9DE1, 0x6635, 0x9DE2, 0x6636, 0x9DE3, 0x6634,
- 0x9DE4, 0x661C, 0x9DE5, 0x664F, 0x9DE6, 0x6644, 0x9DE7, 0x6649,
- 0x9DE8, 0x6641, 0x9DE9, 0x665E, 0x9DEA, 0x665D, 0x9DEB, 0x6664,
- 0x9DEC, 0x6667, 0x9DED, 0x6668, 0x9DEE, 0x665F, 0x9DEF, 0x6662,
- 0x9DF0, 0x6670, 0x9DF1, 0x6683, 0x9DF2, 0x6688, 0x9DF3, 0x668E,
- 0x9DF4, 0x6689, 0x9DF5, 0x6684, 0x9DF6, 0x6698, 0x9DF7, 0x669D,
- 0x9DF8, 0x66C1, 0x9DF9, 0x66B9, 0x9DFA, 0x66C9, 0x9DFB, 0x66BE,
- 0x9DFC, 0x66BC, 0x9E40, 0x66C4, 0x9E41, 0x66B8, 0x9E42, 0x66D6,
- 0x9E43, 0x66DA, 0x9E44, 0x66E0, 0x9E45, 0x663F, 0x9E46, 0x66E6,
- 0x9E47, 0x66E9, 0x9E48, 0x66F0, 0x9E49, 0x66F5, 0x9E4A, 0x66F7,
- 0x9E4B, 0x670F, 0x9E4C, 0x6716, 0x9E4D, 0x671E, 0x9E4E, 0x6726,
- 0x9E4F, 0x6727, 0x9E50, 0x9738, 0x9E51, 0x672E, 0x9E52, 0x673F,
- 0x9E53, 0x6736, 0x9E54, 0x6741, 0x9E55, 0x6738, 0x9E56, 0x6737,
- 0x9E57, 0x6746, 0x9E58, 0x675E, 0x9E59, 0x6760, 0x9E5A, 0x6759,
- 0x9E5B, 0x6763, 0x9E5C, 0x6764, 0x9E5D, 0x6789, 0x9E5E, 0x6770,
- 0x9E5F, 0x67A9, 0x9E60, 0x677C, 0x9E61, 0x676A, 0x9E62, 0x678C,
- 0x9E63, 0x678B, 0x9E64, 0x67A6, 0x9E65, 0x67A1, 0x9E66, 0x6785,
- 0x9E67, 0x67B7, 0x9E68, 0x67EF, 0x9E69, 0x67B4, 0x9E6A, 0x67EC,
- 0x9E6B, 0x67B3, 0x9E6C, 0x67E9, 0x9E6D, 0x67B8, 0x9E6E, 0x67E4,
- 0x9E6F, 0x67DE, 0x9E70, 0x67DD, 0x9E71, 0x67E2, 0x9E72, 0x67EE,
- 0x9E73, 0x67B9, 0x9E74, 0x67CE, 0x9E75, 0x67C6, 0x9E76, 0x67E7,
- 0x9E77, 0x6A9C, 0x9E78, 0x681E, 0x9E79, 0x6846, 0x9E7A, 0x6829,
- 0x9E7B, 0x6840, 0x9E7C, 0x684D, 0x9E7D, 0x6832, 0x9E7E, 0x684E,
- 0x9E80, 0x68B3, 0x9E81, 0x682B, 0x9E82, 0x6859, 0x9E83, 0x6863,
- 0x9E84, 0x6877, 0x9E85, 0x687F, 0x9E86, 0x689F, 0x9E87, 0x688F,
- 0x9E88, 0x68AD, 0x9E89, 0x6894, 0x9E8A, 0x689D, 0x9E8B, 0x689B,
- 0x9E8C, 0x6883, 0x9E8D, 0x6AAE, 0x9E8E, 0x68B9, 0x9E8F, 0x6874,
- 0x9E90, 0x68B5, 0x9E91, 0x68A0, 0x9E92, 0x68BA, 0x9E93, 0x690F,
- 0x9E94, 0x688D, 0x9E95, 0x687E, 0x9E96, 0x6901, 0x9E97, 0x68CA,
- 0x9E98, 0x6908, 0x9E99, 0x68D8, 0x9E9A, 0x6922, 0x9E9B, 0x6926,
- 0x9E9C, 0x68E1, 0x9E9D, 0x690C, 0x9E9E, 0x68CD, 0x9E9F, 0x68D4,
- 0x9EA0, 0x68E7, 0x9EA1, 0x68D5, 0x9EA2, 0x6936, 0x9EA3, 0x6912,
- 0x9EA4, 0x6904, 0x9EA5, 0x68D7, 0x9EA6, 0x68E3, 0x9EA7, 0x6925,
- 0x9EA8, 0x68F9, 0x9EA9, 0x68E0, 0x9EAA, 0x68EF, 0x9EAB, 0x6928,
- 0x9EAC, 0x692A, 0x9EAD, 0x691A, 0x9EAE, 0x6923, 0x9EAF, 0x6921,
- 0x9EB0, 0x68C6, 0x9EB1, 0x6979, 0x9EB2, 0x6977, 0x9EB3, 0x695C,
- 0x9EB4, 0x6978, 0x9EB5, 0x696B, 0x9EB6, 0x6954, 0x9EB7, 0x697E,
- 0x9EB8, 0x696E, 0x9EB9, 0x6939, 0x9EBA, 0x6974, 0x9EBB, 0x693D,
- 0x9EBC, 0x6959, 0x9EBD, 0x6930, 0x9EBE, 0x6961, 0x9EBF, 0x695E,
- 0x9EC0, 0x695D, 0x9EC1, 0x6981, 0x9EC2, 0x696A, 0x9EC3, 0x69B2,
- 0x9EC4, 0x69AE, 0x9EC5, 0x69D0, 0x9EC6, 0x69BF, 0x9EC7, 0x69C1,
- 0x9EC8, 0x69D3, 0x9EC9, 0x69BE, 0x9ECA, 0x69CE, 0x9ECB, 0x5BE8,
- 0x9ECC, 0x69CA, 0x9ECD, 0x69DD, 0x9ECE, 0x69BB, 0x9ECF, 0x69C3,
- 0x9ED0, 0x69A7, 0x9ED1, 0x6A2E, 0x9ED2, 0x6991, 0x9ED3, 0x69A0,
- 0x9ED4, 0x699C, 0x9ED5, 0x6995, 0x9ED6, 0x69B4, 0x9ED7, 0x69DE,
- 0x9ED8, 0x69E8, 0x9ED9, 0x6A02, 0x9EDA, 0x6A1B, 0x9EDB, 0x69FF,
- 0x9EDC, 0x6B0A, 0x9EDD, 0x69F9, 0x9EDE, 0x69F2, 0x9EDF, 0x69E7,
- 0x9EE0, 0x6A05, 0x9EE1, 0x69B1, 0x9EE2, 0x6A1E, 0x9EE3, 0x69ED,
- 0x9EE4, 0x6A14, 0x9EE5, 0x69EB, 0x9EE6, 0x6A0A, 0x9EE7, 0x6A12,
- 0x9EE8, 0x6AC1, 0x9EE9, 0x6A23, 0x9EEA, 0x6A13, 0x9EEB, 0x6A44,
- 0x9EEC, 0x6A0C, 0x9EED, 0x6A72, 0x9EEE, 0x6A36, 0x9EEF, 0x6A78,
- 0x9EF0, 0x6A47, 0x9EF1, 0x6A62, 0x9EF2, 0x6A59, 0x9EF3, 0x6A66,
- 0x9EF4, 0x6A48, 0x9EF5, 0x6A38, 0x9EF6, 0x6A22, 0x9EF7, 0x6A90,
- 0x9EF8, 0x6A8D, 0x9EF9, 0x6AA0, 0x9EFA, 0x6A84, 0x9EFB, 0x6AA2,
- 0x9EFC, 0x6AA3, 0x9F40, 0x6A97, 0x9F41, 0x8617, 0x9F42, 0x6ABB,
- 0x9F43, 0x6AC3, 0x9F44, 0x6AC2, 0x9F45, 0x6AB8, 0x9F46, 0x6AB3,
- 0x9F47, 0x6AAC, 0x9F48, 0x6ADE, 0x9F49, 0x6AD1, 0x9F4A, 0x6ADF,
- 0x9F4B, 0x6AAA, 0x9F4C, 0x6ADA, 0x9F4D, 0x6AEA, 0x9F4E, 0x6AFB,
- 0x9F4F, 0x6B05, 0x9F50, 0x8616, 0x9F51, 0x6AFA, 0x9F52, 0x6B12,
- 0x9F53, 0x6B16, 0x9F54, 0x9B31, 0x9F55, 0x6B1F, 0x9F56, 0x6B38,
- 0x9F57, 0x6B37, 0x9F58, 0x76DC, 0x9F59, 0x6B39, 0x9F5A, 0x98EE,
- 0x9F5B, 0x6B47, 0x9F5C, 0x6B43, 0x9F5D, 0x6B49, 0x9F5E, 0x6B50,
- 0x9F5F, 0x6B59, 0x9F60, 0x6B54, 0x9F61, 0x6B5B, 0x9F62, 0x6B5F,
- 0x9F63, 0x6B61, 0x9F64, 0x6B78, 0x9F65, 0x6B79, 0x9F66, 0x6B7F,
- 0x9F67, 0x6B80, 0x9F68, 0x6B84, 0x9F69, 0x6B83, 0x9F6A, 0x6B8D,
- 0x9F6B, 0x6B98, 0x9F6C, 0x6B95, 0x9F6D, 0x6B9E, 0x9F6E, 0x6BA4,
- 0x9F6F, 0x6BAA, 0x9F70, 0x6BAB, 0x9F71, 0x6BAF, 0x9F72, 0x6BB2,
- 0x9F73, 0x6BB1, 0x9F74, 0x6BB3, 0x9F75, 0x6BB7, 0x9F76, 0x6BBC,
- 0x9F77, 0x6BC6, 0x9F78, 0x6BCB, 0x9F79, 0x6BD3, 0x9F7A, 0x6BDF,
- 0x9F7B, 0x6BEC, 0x9F7C, 0x6BEB, 0x9F7D, 0x6BF3, 0x9F7E, 0x6BEF,
- 0x9F80, 0x9EBE, 0x9F81, 0x6C08, 0x9F82, 0x6C13, 0x9F83, 0x6C14,
- 0x9F84, 0x6C1B, 0x9F85, 0x6C24, 0x9F86, 0x6C23, 0x9F87, 0x6C5E,
- 0x9F88, 0x6C55, 0x9F89, 0x6C62, 0x9F8A, 0x6C6A, 0x9F8B, 0x6C82,
- 0x9F8C, 0x6C8D, 0x9F8D, 0x6C9A, 0x9F8E, 0x6C81, 0x9F8F, 0x6C9B,
- 0x9F90, 0x6C7E, 0x9F91, 0x6C68, 0x9F92, 0x6C73, 0x9F93, 0x6C92,
- 0x9F94, 0x6C90, 0x9F95, 0x6CC4, 0x9F96, 0x6CF1, 0x9F97, 0x6CD3,
- 0x9F98, 0x6CBD, 0x9F99, 0x6CD7, 0x9F9A, 0x6CC5, 0x9F9B, 0x6CDD,
- 0x9F9C, 0x6CAE, 0x9F9D, 0x6CB1, 0x9F9E, 0x6CBE, 0x9F9F, 0x6CBA,
- 0x9FA0, 0x6CDB, 0x9FA1, 0x6CEF, 0x9FA2, 0x6CD9, 0x9FA3, 0x6CEA,
- 0x9FA4, 0x6D1F, 0x9FA5, 0x884D, 0x9FA6, 0x6D36, 0x9FA7, 0x6D2B,
- 0x9FA8, 0x6D3D, 0x9FA9, 0x6D38, 0x9FAA, 0x6D19, 0x9FAB, 0x6D35,
- 0x9FAC, 0x6D33, 0x9FAD, 0x6D12, 0x9FAE, 0x6D0C, 0x9FAF, 0x6D63,
- 0x9FB0, 0x6D93, 0x9FB1, 0x6D64, 0x9FB2, 0x6D5A, 0x9FB3, 0x6D79,
- 0x9FB4, 0x6D59, 0x9FB5, 0x6D8E, 0x9FB6, 0x6D95, 0x9FB7, 0x6FE4,
- 0x9FB8, 0x6D85, 0x9FB9, 0x6DF9, 0x9FBA, 0x6E15, 0x9FBB, 0x6E0A,
- 0x9FBC, 0x6DB5, 0x9FBD, 0x6DC7, 0x9FBE, 0x6DE6, 0x9FBF, 0x6DB8,
- 0x9FC0, 0x6DC6, 0x9FC1, 0x6DEC, 0x9FC2, 0x6DDE, 0x9FC3, 0x6DCC,
- 0x9FC4, 0x6DE8, 0x9FC5, 0x6DD2, 0x9FC6, 0x6DC5, 0x9FC7, 0x6DFA,
- 0x9FC8, 0x6DD9, 0x9FC9, 0x6DE4, 0x9FCA, 0x6DD5, 0x9FCB, 0x6DEA,
- 0x9FCC, 0x6DEE, 0x9FCD, 0x6E2D, 0x9FCE, 0x6E6E, 0x9FCF, 0x6E2E,
- 0x9FD0, 0x6E19, 0x9FD1, 0x6E72, 0x9FD2, 0x6E5F, 0x9FD3, 0x6E3E,
- 0x9FD4, 0x6E23, 0x9FD5, 0x6E6B, 0x9FD6, 0x6E2B, 0x9FD7, 0x6E76,
- 0x9FD8, 0x6E4D, 0x9FD9, 0x6E1F, 0x9FDA, 0x6E43, 0x9FDB, 0x6E3A,
- 0x9FDC, 0x6E4E, 0x9FDD, 0x6E24, 0x9FDE, 0x6EFF, 0x9FDF, 0x6E1D,
- 0x9FE0, 0x6E38, 0x9FE1, 0x6E82, 0x9FE2, 0x6EAA, 0x9FE3, 0x6E98,
- 0x9FE4, 0x6EC9, 0x9FE5, 0x6EB7, 0x9FE6, 0x6ED3, 0x9FE7, 0x6EBD,
- 0x9FE8, 0x6EAF, 0x9FE9, 0x6EC4, 0x9FEA, 0x6EB2, 0x9FEB, 0x6ED4,
- 0x9FEC, 0x6ED5, 0x9FED, 0x6E8F, 0x9FEE, 0x6EA5, 0x9FEF, 0x6EC2,
- 0x9FF0, 0x6E9F, 0x9FF1, 0x6F41, 0x9FF2, 0x6F11, 0x9FF3, 0x704C,
- 0x9FF4, 0x6EEC, 0x9FF5, 0x6EF8, 0x9FF6, 0x6EFE, 0x9FF7, 0x6F3F,
- 0x9FF8, 0x6EF2, 0x9FF9, 0x6F31, 0x9FFA, 0x6EEF, 0x9FFB, 0x6F32,
- 0x9FFC, 0x6ECC, 0xE040, 0x6F3E, 0xE041, 0x6F13, 0xE042, 0x6EF7,
- 0xE043, 0x6F86, 0xE044, 0x6F7A, 0xE045, 0x6F78, 0xE046, 0x6F81,
- 0xE047, 0x6F80, 0xE048, 0x6F6F, 0xE049, 0x6F5B, 0xE04A, 0x6FF3,
- 0xE04B, 0x6F6D, 0xE04C, 0x6F82, 0xE04D, 0x6F7C, 0xE04E, 0x6F58,
- 0xE04F, 0x6F8E, 0xE050, 0x6F91, 0xE051, 0x6FC2, 0xE052, 0x6F66,
- 0xE053, 0x6FB3, 0xE054, 0x6FA3, 0xE055, 0x6FA1, 0xE056, 0x6FA4,
- 0xE057, 0x6FB9, 0xE058, 0x6FC6, 0xE059, 0x6FAA, 0xE05A, 0x6FDF,
- 0xE05B, 0x6FD5, 0xE05C, 0x6FEC, 0xE05D, 0x6FD4, 0xE05E, 0x6FD8,
- 0xE05F, 0x6FF1, 0xE060, 0x6FEE, 0xE061, 0x6FDB, 0xE062, 0x7009,
- 0xE063, 0x700B, 0xE064, 0x6FFA, 0xE065, 0x7011, 0xE066, 0x7001,
- 0xE067, 0x700F, 0xE068, 0x6FFE, 0xE069, 0x701B, 0xE06A, 0x701A,
- 0xE06B, 0x6F74, 0xE06C, 0x701D, 0xE06D, 0x7018, 0xE06E, 0x701F,
- 0xE06F, 0x7030, 0xE070, 0x703E, 0xE071, 0x7032, 0xE072, 0x7051,
- 0xE073, 0x7063, 0xE074, 0x7099, 0xE075, 0x7092, 0xE076, 0x70AF,
- 0xE077, 0x70F1, 0xE078, 0x70AC, 0xE079, 0x70B8, 0xE07A, 0x70B3,
- 0xE07B, 0x70AE, 0xE07C, 0x70DF, 0xE07D, 0x70CB, 0xE07E, 0x70DD,
- 0xE080, 0x70D9, 0xE081, 0x7109, 0xE082, 0x70FD, 0xE083, 0x711C,
- 0xE084, 0x7119, 0xE085, 0x7165, 0xE086, 0x7155, 0xE087, 0x7188,
- 0xE088, 0x7166, 0xE089, 0x7162, 0xE08A, 0x714C, 0xE08B, 0x7156,
- 0xE08C, 0x716C, 0xE08D, 0x718F, 0xE08E, 0x71FB, 0xE08F, 0x7184,
- 0xE090, 0x7195, 0xE091, 0x71A8, 0xE092, 0x71AC, 0xE093, 0x71D7,
- 0xE094, 0x71B9, 0xE095, 0x71BE, 0xE096, 0x71D2, 0xE097, 0x71C9,
- 0xE098, 0x71D4, 0xE099, 0x71CE, 0xE09A, 0x71E0, 0xE09B, 0x71EC,
- 0xE09C, 0x71E7, 0xE09D, 0x71F5, 0xE09E, 0x71FC, 0xE09F, 0x71F9,
- 0xE0A0, 0x71FF, 0xE0A1, 0x720D, 0xE0A2, 0x7210, 0xE0A3, 0x721B,
- 0xE0A4, 0x7228, 0xE0A5, 0x722D, 0xE0A6, 0x722C, 0xE0A7, 0x7230,
- 0xE0A8, 0x7232, 0xE0A9, 0x723B, 0xE0AA, 0x723C, 0xE0AB, 0x723F,
- 0xE0AC, 0x7240, 0xE0AD, 0x7246, 0xE0AE, 0x724B, 0xE0AF, 0x7258,
- 0xE0B0, 0x7274, 0xE0B1, 0x727E, 0xE0B2, 0x7282, 0xE0B3, 0x7281,
- 0xE0B4, 0x7287, 0xE0B5, 0x7292, 0xE0B6, 0x7296, 0xE0B7, 0x72A2,
- 0xE0B8, 0x72A7, 0xE0B9, 0x72B9, 0xE0BA, 0x72B2, 0xE0BB, 0x72C3,
- 0xE0BC, 0x72C6, 0xE0BD, 0x72C4, 0xE0BE, 0x72CE, 0xE0BF, 0x72D2,
- 0xE0C0, 0x72E2, 0xE0C1, 0x72E0, 0xE0C2, 0x72E1, 0xE0C3, 0x72F9,
- 0xE0C4, 0x72F7, 0xE0C5, 0x500F, 0xE0C6, 0x7317, 0xE0C7, 0x730A,
- 0xE0C8, 0x731C, 0xE0C9, 0x7316, 0xE0CA, 0x731D, 0xE0CB, 0x7334,
- 0xE0CC, 0x732F, 0xE0CD, 0x7329, 0xE0CE, 0x7325, 0xE0CF, 0x733E,
- 0xE0D0, 0x734E, 0xE0D1, 0x734F, 0xE0D2, 0x9ED8, 0xE0D3, 0x7357,
- 0xE0D4, 0x736A, 0xE0D5, 0x7368, 0xE0D6, 0x7370, 0xE0D7, 0x7378,
- 0xE0D8, 0x7375, 0xE0D9, 0x737B, 0xE0DA, 0x737A, 0xE0DB, 0x73C8,
- 0xE0DC, 0x73B3, 0xE0DD, 0x73CE, 0xE0DE, 0x73BB, 0xE0DF, 0x73C0,
- 0xE0E0, 0x73E5, 0xE0E1, 0x73EE, 0xE0E2, 0x73DE, 0xE0E3, 0x74A2,
- 0xE0E4, 0x7405, 0xE0E5, 0x746F, 0xE0E6, 0x7425, 0xE0E7, 0x73F8,
- 0xE0E8, 0x7432, 0xE0E9, 0x743A, 0xE0EA, 0x7455, 0xE0EB, 0x743F,
- 0xE0EC, 0x745F, 0xE0ED, 0x7459, 0xE0EE, 0x7441, 0xE0EF, 0x745C,
- 0xE0F0, 0x7469, 0xE0F1, 0x7470, 0xE0F2, 0x7463, 0xE0F3, 0x746A,
- 0xE0F4, 0x7476, 0xE0F5, 0x747E, 0xE0F6, 0x748B, 0xE0F7, 0x749E,
- 0xE0F8, 0x74A7, 0xE0F9, 0x74CA, 0xE0FA, 0x74CF, 0xE0FB, 0x74D4,
- 0xE0FC, 0x73F1, 0xE140, 0x74E0, 0xE141, 0x74E3, 0xE142, 0x74E7,
- 0xE143, 0x74E9, 0xE144, 0x74EE, 0xE145, 0x74F2, 0xE146, 0x74F0,
- 0xE147, 0x74F1, 0xE148, 0x74F8, 0xE149, 0x74F7, 0xE14A, 0x7504,
- 0xE14B, 0x7503, 0xE14C, 0x7505, 0xE14D, 0x750C, 0xE14E, 0x750E,
- 0xE14F, 0x750D, 0xE150, 0x7515, 0xE151, 0x7513, 0xE152, 0x751E,
- 0xE153, 0x7526, 0xE154, 0x752C, 0xE155, 0x753C, 0xE156, 0x7544,
- 0xE157, 0x754D, 0xE158, 0x754A, 0xE159, 0x7549, 0xE15A, 0x755B,
- 0xE15B, 0x7546, 0xE15C, 0x755A, 0xE15D, 0x7569, 0xE15E, 0x7564,
- 0xE15F, 0x7567, 0xE160, 0x756B, 0xE161, 0x756D, 0xE162, 0x7578,
- 0xE163, 0x7576, 0xE164, 0x7586, 0xE165, 0x7587, 0xE166, 0x7574,
- 0xE167, 0x758A, 0xE168, 0x7589, 0xE169, 0x7582, 0xE16A, 0x7594,
- 0xE16B, 0x759A, 0xE16C, 0x759D, 0xE16D, 0x75A5, 0xE16E, 0x75A3,
- 0xE16F, 0x75C2, 0xE170, 0x75B3, 0xE171, 0x75C3, 0xE172, 0x75B5,
- 0xE173, 0x75BD, 0xE174, 0x75B8, 0xE175, 0x75BC, 0xE176, 0x75B1,
- 0xE177, 0x75CD, 0xE178, 0x75CA, 0xE179, 0x75D2, 0xE17A, 0x75D9,
- 0xE17B, 0x75E3, 0xE17C, 0x75DE, 0xE17D, 0x75FE, 0xE17E, 0x75FF,
- 0xE180, 0x75FC, 0xE181, 0x7601, 0xE182, 0x75F0, 0xE183, 0x75FA,
- 0xE184, 0x75F2, 0xE185, 0x75F3, 0xE186, 0x760B, 0xE187, 0x760D,
- 0xE188, 0x7609, 0xE189, 0x761F, 0xE18A, 0x7627, 0xE18B, 0x7620,
- 0xE18C, 0x7621, 0xE18D, 0x7622, 0xE18E, 0x7624, 0xE18F, 0x7634,
- 0xE190, 0x7630, 0xE191, 0x763B, 0xE192, 0x7647, 0xE193, 0x7648,
- 0xE194, 0x7646, 0xE195, 0x765C, 0xE196, 0x7658, 0xE197, 0x7661,
- 0xE198, 0x7662, 0xE199, 0x7668, 0xE19A, 0x7669, 0xE19B, 0x766A,
- 0xE19C, 0x7667, 0xE19D, 0x766C, 0xE19E, 0x7670, 0xE19F, 0x7672,
- 0xE1A0, 0x7676, 0xE1A1, 0x7678, 0xE1A2, 0x767C, 0xE1A3, 0x7680,
- 0xE1A4, 0x7683, 0xE1A5, 0x7688, 0xE1A6, 0x768B, 0xE1A7, 0x768E,
- 0xE1A8, 0x7696, 0xE1A9, 0x7693, 0xE1AA, 0x7699, 0xE1AB, 0x769A,
- 0xE1AC, 0x76B0, 0xE1AD, 0x76B4, 0xE1AE, 0x76B8, 0xE1AF, 0x76B9,
- 0xE1B0, 0x76BA, 0xE1B1, 0x76C2, 0xE1B2, 0x76CD, 0xE1B3, 0x76D6,
- 0xE1B4, 0x76D2, 0xE1B5, 0x76DE, 0xE1B6, 0x76E1, 0xE1B7, 0x76E5,
- 0xE1B8, 0x76E7, 0xE1B9, 0x76EA, 0xE1BA, 0x862F, 0xE1BB, 0x76FB,
- 0xE1BC, 0x7708, 0xE1BD, 0x7707, 0xE1BE, 0x7704, 0xE1BF, 0x7729,
- 0xE1C0, 0x7724, 0xE1C1, 0x771E, 0xE1C2, 0x7725, 0xE1C3, 0x7726,
- 0xE1C4, 0x771B, 0xE1C5, 0x7737, 0xE1C6, 0x7738, 0xE1C7, 0x7747,
- 0xE1C8, 0x775A, 0xE1C9, 0x7768, 0xE1CA, 0x776B, 0xE1CB, 0x775B,
- 0xE1CC, 0x7765, 0xE1CD, 0x777F, 0xE1CE, 0x777E, 0xE1CF, 0x7779,
- 0xE1D0, 0x778E, 0xE1D1, 0x778B, 0xE1D2, 0x7791, 0xE1D3, 0x77A0,
- 0xE1D4, 0x779E, 0xE1D5, 0x77B0, 0xE1D6, 0x77B6, 0xE1D7, 0x77B9,
- 0xE1D8, 0x77BF, 0xE1D9, 0x77BC, 0xE1DA, 0x77BD, 0xE1DB, 0x77BB,
- 0xE1DC, 0x77C7, 0xE1DD, 0x77CD, 0xE1DE, 0x77D7, 0xE1DF, 0x77DA,
- 0xE1E0, 0x77DC, 0xE1E1, 0x77E3, 0xE1E2, 0x77EE, 0xE1E3, 0x77FC,
- 0xE1E4, 0x780C, 0xE1E5, 0x7812, 0xE1E6, 0x7926, 0xE1E7, 0x7820,
- 0xE1E8, 0x792A, 0xE1E9, 0x7845, 0xE1EA, 0x788E, 0xE1EB, 0x7874,
- 0xE1EC, 0x7886, 0xE1ED, 0x787C, 0xE1EE, 0x789A, 0xE1EF, 0x788C,
- 0xE1F0, 0x78A3, 0xE1F1, 0x78B5, 0xE1F2, 0x78AA, 0xE1F3, 0x78AF,
- 0xE1F4, 0x78D1, 0xE1F5, 0x78C6, 0xE1F6, 0x78CB, 0xE1F7, 0x78D4,
- 0xE1F8, 0x78BE, 0xE1F9, 0x78BC, 0xE1FA, 0x78C5, 0xE1FB, 0x78CA,
- 0xE1FC, 0x78EC, 0xE240, 0x78E7, 0xE241, 0x78DA, 0xE242, 0x78FD,
- 0xE243, 0x78F4, 0xE244, 0x7907, 0xE245, 0x7912, 0xE246, 0x7911,
- 0xE247, 0x7919, 0xE248, 0x792C, 0xE249, 0x792B, 0xE24A, 0x7940,
- 0xE24B, 0x7960, 0xE24C, 0x7957, 0xE24D, 0x795F, 0xE24E, 0x795A,
- 0xE24F, 0x7955, 0xE250, 0x7953, 0xE251, 0x797A, 0xE252, 0x797F,
- 0xE253, 0x798A, 0xE254, 0x799D, 0xE255, 0x79A7, 0xE256, 0x9F4B,
- 0xE257, 0x79AA, 0xE258, 0x79AE, 0xE259, 0x79B3, 0xE25A, 0x79B9,
- 0xE25B, 0x79BA, 0xE25C, 0x79C9, 0xE25D, 0x79D5, 0xE25E, 0x79E7,
- 0xE25F, 0x79EC, 0xE260, 0x79E1, 0xE261, 0x79E3, 0xE262, 0x7A08,
- 0xE263, 0x7A0D, 0xE264, 0x7A18, 0xE265, 0x7A19, 0xE266, 0x7A20,
- 0xE267, 0x7A1F, 0xE268, 0x7980, 0xE269, 0x7A31, 0xE26A, 0x7A3B,
- 0xE26B, 0x7A3E, 0xE26C, 0x7A37, 0xE26D, 0x7A43, 0xE26E, 0x7A57,
- 0xE26F, 0x7A49, 0xE270, 0x7A61, 0xE271, 0x7A62, 0xE272, 0x7A69,
- 0xE273, 0x9F9D, 0xE274, 0x7A70, 0xE275, 0x7A79, 0xE276, 0x7A7D,
- 0xE277, 0x7A88, 0xE278, 0x7A97, 0xE279, 0x7A95, 0xE27A, 0x7A98,
- 0xE27B, 0x7A96, 0xE27C, 0x7AA9, 0xE27D, 0x7AC8, 0xE27E, 0x7AB0,
- 0xE280, 0x7AB6, 0xE281, 0x7AC5, 0xE282, 0x7AC4, 0xE283, 0x7ABF,
- 0xE284, 0x9083, 0xE285, 0x7AC7, 0xE286, 0x7ACA, 0xE287, 0x7ACD,
- 0xE288, 0x7ACF, 0xE289, 0x7AD5, 0xE28A, 0x7AD3, 0xE28B, 0x7AD9,
- 0xE28C, 0x7ADA, 0xE28D, 0x7ADD, 0xE28E, 0x7AE1, 0xE28F, 0x7AE2,
- 0xE290, 0x7AE6, 0xE291, 0x7AED, 0xE292, 0x7AF0, 0xE293, 0x7B02,
- 0xE294, 0x7B0F, 0xE295, 0x7B0A, 0xE296, 0x7B06, 0xE297, 0x7B33,
- 0xE298, 0x7B18, 0xE299, 0x7B19, 0xE29A, 0x7B1E, 0xE29B, 0x7B35,
- 0xE29C, 0x7B28, 0xE29D, 0x7B36, 0xE29E, 0x7B50, 0xE29F, 0x7B7A,
- 0xE2A0, 0x7B04, 0xE2A1, 0x7B4D, 0xE2A2, 0x7B0B, 0xE2A3, 0x7B4C,
- 0xE2A4, 0x7B45, 0xE2A5, 0x7B75, 0xE2A6, 0x7B65, 0xE2A7, 0x7B74,
- 0xE2A8, 0x7B67, 0xE2A9, 0x7B70, 0xE2AA, 0x7B71, 0xE2AB, 0x7B6C,
- 0xE2AC, 0x7B6E, 0xE2AD, 0x7B9D, 0xE2AE, 0x7B98, 0xE2AF, 0x7B9F,
- 0xE2B0, 0x7B8D, 0xE2B1, 0x7B9C, 0xE2B2, 0x7B9A, 0xE2B3, 0x7B8B,
- 0xE2B4, 0x7B92, 0xE2B5, 0x7B8F, 0xE2B6, 0x7B5D, 0xE2B7, 0x7B99,
- 0xE2B8, 0x7BCB, 0xE2B9, 0x7BC1, 0xE2BA, 0x7BCC, 0xE2BB, 0x7BCF,
- 0xE2BC, 0x7BB4, 0xE2BD, 0x7BC6, 0xE2BE, 0x7BDD, 0xE2BF, 0x7BE9,
- 0xE2C0, 0x7C11, 0xE2C1, 0x7C14, 0xE2C2, 0x7BE6, 0xE2C3, 0x7BE5,
- 0xE2C4, 0x7C60, 0xE2C5, 0x7C00, 0xE2C6, 0x7C07, 0xE2C7, 0x7C13,
- 0xE2C8, 0x7BF3, 0xE2C9, 0x7BF7, 0xE2CA, 0x7C17, 0xE2CB, 0x7C0D,
- 0xE2CC, 0x7BF6, 0xE2CD, 0x7C23, 0xE2CE, 0x7C27, 0xE2CF, 0x7C2A,
- 0xE2D0, 0x7C1F, 0xE2D1, 0x7C37, 0xE2D2, 0x7C2B, 0xE2D3, 0x7C3D,
- 0xE2D4, 0x7C4C, 0xE2D5, 0x7C43, 0xE2D6, 0x7C54, 0xE2D7, 0x7C4F,
- 0xE2D8, 0x7C40, 0xE2D9, 0x7C50, 0xE2DA, 0x7C58, 0xE2DB, 0x7C5F,
- 0xE2DC, 0x7C64, 0xE2DD, 0x7C56, 0xE2DE, 0x7C65, 0xE2DF, 0x7C6C,
- 0xE2E0, 0x7C75, 0xE2E1, 0x7C83, 0xE2E2, 0x7C90, 0xE2E3, 0x7CA4,
- 0xE2E4, 0x7CAD, 0xE2E5, 0x7CA2, 0xE2E6, 0x7CAB, 0xE2E7, 0x7CA1,
- 0xE2E8, 0x7CA8, 0xE2E9, 0x7CB3, 0xE2EA, 0x7CB2, 0xE2EB, 0x7CB1,
- 0xE2EC, 0x7CAE, 0xE2ED, 0x7CB9, 0xE2EE, 0x7CBD, 0xE2EF, 0x7CC0,
- 0xE2F0, 0x7CC5, 0xE2F1, 0x7CC2, 0xE2F2, 0x7CD8, 0xE2F3, 0x7CD2,
- 0xE2F4, 0x7CDC, 0xE2F5, 0x7CE2, 0xE2F6, 0x9B3B, 0xE2F7, 0x7CEF,
- 0xE2F8, 0x7CF2, 0xE2F9, 0x7CF4, 0xE2FA, 0x7CF6, 0xE2FB, 0x7CFA,
- 0xE2FC, 0x7D06, 0xE340, 0x7D02, 0xE341, 0x7D1C, 0xE342, 0x7D15,
- 0xE343, 0x7D0A, 0xE344, 0x7D45, 0xE345, 0x7D4B, 0xE346, 0x7D2E,
- 0xE347, 0x7D32, 0xE348, 0x7D3F, 0xE349, 0x7D35, 0xE34A, 0x7D46,
- 0xE34B, 0x7D73, 0xE34C, 0x7D56, 0xE34D, 0x7D4E, 0xE34E, 0x7D72,
- 0xE34F, 0x7D68, 0xE350, 0x7D6E, 0xE351, 0x7D4F, 0xE352, 0x7D63,
- 0xE353, 0x7D93, 0xE354, 0x7D89, 0xE355, 0x7D5B, 0xE356, 0x7D8F,
- 0xE357, 0x7D7D, 0xE358, 0x7D9B, 0xE359, 0x7DBA, 0xE35A, 0x7DAE,
- 0xE35B, 0x7DA3, 0xE35C, 0x7DB5, 0xE35D, 0x7DC7, 0xE35E, 0x7DBD,
- 0xE35F, 0x7DAB, 0xE360, 0x7E3D, 0xE361, 0x7DA2, 0xE362, 0x7DAF,
- 0xE363, 0x7DDC, 0xE364, 0x7DB8, 0xE365, 0x7D9F, 0xE366, 0x7DB0,
- 0xE367, 0x7DD8, 0xE368, 0x7DDD, 0xE369, 0x7DE4, 0xE36A, 0x7DDE,
- 0xE36B, 0x7DFB, 0xE36C, 0x7DF2, 0xE36D, 0x7DE1, 0xE36E, 0x7E05,
- 0xE36F, 0x7E0A, 0xE370, 0x7E23, 0xE371, 0x7E21, 0xE372, 0x7E12,
- 0xE373, 0x7E31, 0xE374, 0x7E1F, 0xE375, 0x7E09, 0xE376, 0x7E0B,
- 0xE377, 0x7E22, 0xE378, 0x7E46, 0xE379, 0x7E66, 0xE37A, 0x7E3B,
- 0xE37B, 0x7E35, 0xE37C, 0x7E39, 0xE37D, 0x7E43, 0xE37E, 0x7E37,
- 0xE380, 0x7E32, 0xE381, 0x7E3A, 0xE382, 0x7E67, 0xE383, 0x7E5D,
- 0xE384, 0x7E56, 0xE385, 0x7E5E, 0xE386, 0x7E59, 0xE387, 0x7E5A,
- 0xE388, 0x7E79, 0xE389, 0x7E6A, 0xE38A, 0x7E69, 0xE38B, 0x7E7C,
- 0xE38C, 0x7E7B, 0xE38D, 0x7E83, 0xE38E, 0x7DD5, 0xE38F, 0x7E7D,
- 0xE390, 0x8FAE, 0xE391, 0x7E7F, 0xE392, 0x7E88, 0xE393, 0x7E89,
- 0xE394, 0x7E8C, 0xE395, 0x7E92, 0xE396, 0x7E90, 0xE397, 0x7E93,
- 0xE398, 0x7E94, 0xE399, 0x7E96, 0xE39A, 0x7E8E, 0xE39B, 0x7E9B,
- 0xE39C, 0x7E9C, 0xE39D, 0x7F38, 0xE39E, 0x7F3A, 0xE39F, 0x7F45,
- 0xE3A0, 0x7F4C, 0xE3A1, 0x7F4D, 0xE3A2, 0x7F4E, 0xE3A3, 0x7F50,
- 0xE3A4, 0x7F51, 0xE3A5, 0x7F55, 0xE3A6, 0x7F54, 0xE3A7, 0x7F58,
- 0xE3A8, 0x7F5F, 0xE3A9, 0x7F60, 0xE3AA, 0x7F68, 0xE3AB, 0x7F69,
- 0xE3AC, 0x7F67, 0xE3AD, 0x7F78, 0xE3AE, 0x7F82, 0xE3AF, 0x7F86,
- 0xE3B0, 0x7F83, 0xE3B1, 0x7F88, 0xE3B2, 0x7F87, 0xE3B3, 0x7F8C,
- 0xE3B4, 0x7F94, 0xE3B5, 0x7F9E, 0xE3B6, 0x7F9D, 0xE3B7, 0x7F9A,
- 0xE3B8, 0x7FA3, 0xE3B9, 0x7FAF, 0xE3BA, 0x7FB2, 0xE3BB, 0x7FB9,
- 0xE3BC, 0x7FAE, 0xE3BD, 0x7FB6, 0xE3BE, 0x7FB8, 0xE3BF, 0x8B71,
- 0xE3C0, 0x7FC5, 0xE3C1, 0x7FC6, 0xE3C2, 0x7FCA, 0xE3C3, 0x7FD5,
- 0xE3C4, 0x7FD4, 0xE3C5, 0x7FE1, 0xE3C6, 0x7FE6, 0xE3C7, 0x7FE9,
- 0xE3C8, 0x7FF3, 0xE3C9, 0x7FF9, 0xE3CA, 0x98DC, 0xE3CB, 0x8006,
- 0xE3CC, 0x8004, 0xE3CD, 0x800B, 0xE3CE, 0x8012, 0xE3CF, 0x8018,
- 0xE3D0, 0x8019, 0xE3D1, 0x801C, 0xE3D2, 0x8021, 0xE3D3, 0x8028,
- 0xE3D4, 0x803F, 0xE3D5, 0x803B, 0xE3D6, 0x804A, 0xE3D7, 0x8046,
- 0xE3D8, 0x8052, 0xE3D9, 0x8058, 0xE3DA, 0x805A, 0xE3DB, 0x805F,
- 0xE3DC, 0x8062, 0xE3DD, 0x8068, 0xE3DE, 0x8073, 0xE3DF, 0x8072,
- 0xE3E0, 0x8070, 0xE3E1, 0x8076, 0xE3E2, 0x8079, 0xE3E3, 0x807D,
- 0xE3E4, 0x807F, 0xE3E5, 0x8084, 0xE3E6, 0x8086, 0xE3E7, 0x8085,
- 0xE3E8, 0x809B, 0xE3E9, 0x8093, 0xE3EA, 0x809A, 0xE3EB, 0x80AD,
- 0xE3EC, 0x5190, 0xE3ED, 0x80AC, 0xE3EE, 0x80DB, 0xE3EF, 0x80E5,
- 0xE3F0, 0x80D9, 0xE3F1, 0x80DD, 0xE3F2, 0x80C4, 0xE3F3, 0x80DA,
- 0xE3F4, 0x80D6, 0xE3F5, 0x8109, 0xE3F6, 0x80EF, 0xE3F7, 0x80F1,
- 0xE3F8, 0x811B, 0xE3F9, 0x8129, 0xE3FA, 0x8123, 0xE3FB, 0x812F,
- 0xE3FC, 0x814B, 0xE440, 0x968B, 0xE441, 0x8146, 0xE442, 0x813E,
- 0xE443, 0x8153, 0xE444, 0x8151, 0xE445, 0x80FC, 0xE446, 0x8171,
- 0xE447, 0x816E, 0xE448, 0x8165, 0xE449, 0x8166, 0xE44A, 0x8174,
- 0xE44B, 0x8183, 0xE44C, 0x8188, 0xE44D, 0x818A, 0xE44E, 0x8180,
- 0xE44F, 0x8182, 0xE450, 0x81A0, 0xE451, 0x8195, 0xE452, 0x81A4,
- 0xE453, 0x81A3, 0xE454, 0x815F, 0xE455, 0x8193, 0xE456, 0x81A9,
- 0xE457, 0x81B0, 0xE458, 0x81B5, 0xE459, 0x81BE, 0xE45A, 0x81B8,
- 0xE45B, 0x81BD, 0xE45C, 0x81C0, 0xE45D, 0x81C2, 0xE45E, 0x81BA,
- 0xE45F, 0x81C9, 0xE460, 0x81CD, 0xE461, 0x81D1, 0xE462, 0x81D9,
- 0xE463, 0x81D8, 0xE464, 0x81C8, 0xE465, 0x81DA, 0xE466, 0x81DF,
- 0xE467, 0x81E0, 0xE468, 0x81E7, 0xE469, 0x81FA, 0xE46A, 0x81FB,
- 0xE46B, 0x81FE, 0xE46C, 0x8201, 0xE46D, 0x8202, 0xE46E, 0x8205,
- 0xE46F, 0x8207, 0xE470, 0x820A, 0xE471, 0x820D, 0xE472, 0x8210,
- 0xE473, 0x8216, 0xE474, 0x8229, 0xE475, 0x822B, 0xE476, 0x8238,
- 0xE477, 0x8233, 0xE478, 0x8240, 0xE479, 0x8259, 0xE47A, 0x8258,
- 0xE47B, 0x825D, 0xE47C, 0x825A, 0xE47D, 0x825F, 0xE47E, 0x8264,
- 0xE480, 0x8262, 0xE481, 0x8268, 0xE482, 0x826A, 0xE483, 0x826B,
- 0xE484, 0x822E, 0xE485, 0x8271, 0xE486, 0x8277, 0xE487, 0x8278,
- 0xE488, 0x827E, 0xE489, 0x828D, 0xE48A, 0x8292, 0xE48B, 0x82AB,
- 0xE48C, 0x829F, 0xE48D, 0x82BB, 0xE48E, 0x82AC, 0xE48F, 0x82E1,
- 0xE490, 0x82E3, 0xE491, 0x82DF, 0xE492, 0x82D2, 0xE493, 0x82F4,
- 0xE494, 0x82F3, 0xE495, 0x82FA, 0xE496, 0x8393, 0xE497, 0x8303,
- 0xE498, 0x82FB, 0xE499, 0x82F9, 0xE49A, 0x82DE, 0xE49B, 0x8306,
- 0xE49C, 0x82DC, 0xE49D, 0x8309, 0xE49E, 0x82D9, 0xE49F, 0x8335,
- 0xE4A0, 0x8334, 0xE4A1, 0x8316, 0xE4A2, 0x8332, 0xE4A3, 0x8331,
- 0xE4A4, 0x8340, 0xE4A5, 0x8339, 0xE4A6, 0x8350, 0xE4A7, 0x8345,
- 0xE4A8, 0x832F, 0xE4A9, 0x832B, 0xE4AA, 0x8317, 0xE4AB, 0x8318,
- 0xE4AC, 0x8385, 0xE4AD, 0x839A, 0xE4AE, 0x83AA, 0xE4AF, 0x839F,
- 0xE4B0, 0x83A2, 0xE4B1, 0x8396, 0xE4B2, 0x8323, 0xE4B3, 0x838E,
- 0xE4B4, 0x8387, 0xE4B5, 0x838A, 0xE4B6, 0x837C, 0xE4B7, 0x83B5,
- 0xE4B8, 0x8373, 0xE4B9, 0x8375, 0xE4BA, 0x83A0, 0xE4BB, 0x8389,
- 0xE4BC, 0x83A8, 0xE4BD, 0x83F4, 0xE4BE, 0x8413, 0xE4BF, 0x83EB,
- 0xE4C0, 0x83CE, 0xE4C1, 0x83FD, 0xE4C2, 0x8403, 0xE4C3, 0x83D8,
- 0xE4C4, 0x840B, 0xE4C5, 0x83C1, 0xE4C6, 0x83F7, 0xE4C7, 0x8407,
- 0xE4C8, 0x83E0, 0xE4C9, 0x83F2, 0xE4CA, 0x840D, 0xE4CB, 0x8422,
- 0xE4CC, 0x8420, 0xE4CD, 0x83BD, 0xE4CE, 0x8438, 0xE4CF, 0x8506,
- 0xE4D0, 0x83FB, 0xE4D1, 0x846D, 0xE4D2, 0x842A, 0xE4D3, 0x843C,
- 0xE4D4, 0x855A, 0xE4D5, 0x8484, 0xE4D6, 0x8477, 0xE4D7, 0x846B,
- 0xE4D8, 0x84AD, 0xE4D9, 0x846E, 0xE4DA, 0x8482, 0xE4DB, 0x8469,
- 0xE4DC, 0x8446, 0xE4DD, 0x842C, 0xE4DE, 0x846F, 0xE4DF, 0x8479,
- 0xE4E0, 0x8435, 0xE4E1, 0x84CA, 0xE4E2, 0x8462, 0xE4E3, 0x84B9,
- 0xE4E4, 0x84BF, 0xE4E5, 0x849F, 0xE4E6, 0x84D9, 0xE4E7, 0x84CD,
- 0xE4E8, 0x84BB, 0xE4E9, 0x84DA, 0xE4EA, 0x84D0, 0xE4EB, 0x84C1,
- 0xE4EC, 0x84C6, 0xE4ED, 0x84D6, 0xE4EE, 0x84A1, 0xE4EF, 0x8521,
- 0xE4F0, 0x84FF, 0xE4F1, 0x84F4, 0xE4F2, 0x8517, 0xE4F3, 0x8518,
- 0xE4F4, 0x852C, 0xE4F5, 0x851F, 0xE4F6, 0x8515, 0xE4F7, 0x8514,
- 0xE4F8, 0x84FC, 0xE4F9, 0x8540, 0xE4FA, 0x8563, 0xE4FB, 0x8558,
- 0xE4FC, 0x8548, 0xE540, 0x8541, 0xE541, 0x8602, 0xE542, 0x854B,
- 0xE543, 0x8555, 0xE544, 0x8580, 0xE545, 0x85A4, 0xE546, 0x8588,
- 0xE547, 0x8591, 0xE548, 0x858A, 0xE549, 0x85A8, 0xE54A, 0x856D,
- 0xE54B, 0x8594, 0xE54C, 0x859B, 0xE54D, 0x85EA, 0xE54E, 0x8587,
- 0xE54F, 0x859C, 0xE550, 0x8577, 0xE551, 0x857E, 0xE552, 0x8590,
- 0xE553, 0x85C9, 0xE554, 0x85BA, 0xE555, 0x85CF, 0xE556, 0x85B9,
- 0xE557, 0x85D0, 0xE558, 0x85D5, 0xE559, 0x85DD, 0xE55A, 0x85E5,
- 0xE55B, 0x85DC, 0xE55C, 0x85F9, 0xE55D, 0x860A, 0xE55E, 0x8613,
- 0xE55F, 0x860B, 0xE560, 0x85FE, 0xE561, 0x85FA, 0xE562, 0x8606,
- 0xE563, 0x8622, 0xE564, 0x861A, 0xE565, 0x8630, 0xE566, 0x863F,
- 0xE567, 0x864D, 0xE568, 0x4E55, 0xE569, 0x8654, 0xE56A, 0x865F,
- 0xE56B, 0x8667, 0xE56C, 0x8671, 0xE56D, 0x8693, 0xE56E, 0x86A3,
- 0xE56F, 0x86A9, 0xE570, 0x86AA, 0xE571, 0x868B, 0xE572, 0x868C,
- 0xE573, 0x86B6, 0xE574, 0x86AF, 0xE575, 0x86C4, 0xE576, 0x86C6,
- 0xE577, 0x86B0, 0xE578, 0x86C9, 0xE579, 0x8823, 0xE57A, 0x86AB,
- 0xE57B, 0x86D4, 0xE57C, 0x86DE, 0xE57D, 0x86E9, 0xE57E, 0x86EC,
- 0xE580, 0x86DF, 0xE581, 0x86DB, 0xE582, 0x86EF, 0xE583, 0x8712,
- 0xE584, 0x8706, 0xE585, 0x8708, 0xE586, 0x8700, 0xE587, 0x8703,
- 0xE588, 0x86FB, 0xE589, 0x8711, 0xE58A, 0x8709, 0xE58B, 0x870D,
- 0xE58C, 0x86F9, 0xE58D, 0x870A, 0xE58E, 0x8734, 0xE58F, 0x873F,
- 0xE590, 0x8737, 0xE591, 0x873B, 0xE592, 0x8725, 0xE593, 0x8729,
- 0xE594, 0x871A, 0xE595, 0x8760, 0xE596, 0x875F, 0xE597, 0x8778,
- 0xE598, 0x874C, 0xE599, 0x874E, 0xE59A, 0x8774, 0xE59B, 0x8757,
- 0xE59C, 0x8768, 0xE59D, 0x876E, 0xE59E, 0x8759, 0xE59F, 0x8753,
- 0xE5A0, 0x8763, 0xE5A1, 0x876A, 0xE5A2, 0x8805, 0xE5A3, 0x87A2,
- 0xE5A4, 0x879F, 0xE5A5, 0x8782, 0xE5A6, 0x87AF, 0xE5A7, 0x87CB,
- 0xE5A8, 0x87BD, 0xE5A9, 0x87C0, 0xE5AA, 0x87D0, 0xE5AB, 0x96D6,
- 0xE5AC, 0x87AB, 0xE5AD, 0x87C4, 0xE5AE, 0x87B3, 0xE5AF, 0x87C7,
- 0xE5B0, 0x87C6, 0xE5B1, 0x87BB, 0xE5B2, 0x87EF, 0xE5B3, 0x87F2,
- 0xE5B4, 0x87E0, 0xE5B5, 0x880F, 0xE5B6, 0x880D, 0xE5B7, 0x87FE,
- 0xE5B8, 0x87F6, 0xE5B9, 0x87F7, 0xE5BA, 0x880E, 0xE5BB, 0x87D2,
- 0xE5BC, 0x8811, 0xE5BD, 0x8816, 0xE5BE, 0x8815, 0xE5BF, 0x8822,
- 0xE5C0, 0x8821, 0xE5C1, 0x8831, 0xE5C2, 0x8836, 0xE5C3, 0x8839,
- 0xE5C4, 0x8827, 0xE5C5, 0x883B, 0xE5C6, 0x8844, 0xE5C7, 0x8842,
- 0xE5C8, 0x8852, 0xE5C9, 0x8859, 0xE5CA, 0x885E, 0xE5CB, 0x8862,
- 0xE5CC, 0x886B, 0xE5CD, 0x8881, 0xE5CE, 0x887E, 0xE5CF, 0x889E,
- 0xE5D0, 0x8875, 0xE5D1, 0x887D, 0xE5D2, 0x88B5, 0xE5D3, 0x8872,
- 0xE5D4, 0x8882, 0xE5D5, 0x8897, 0xE5D6, 0x8892, 0xE5D7, 0x88AE,
- 0xE5D8, 0x8899, 0xE5D9, 0x88A2, 0xE5DA, 0x888D, 0xE5DB, 0x88A4,
- 0xE5DC, 0x88B0, 0xE5DD, 0x88BF, 0xE5DE, 0x88B1, 0xE5DF, 0x88C3,
- 0xE5E0, 0x88C4, 0xE5E1, 0x88D4, 0xE5E2, 0x88D8, 0xE5E3, 0x88D9,
- 0xE5E4, 0x88DD, 0xE5E5, 0x88F9, 0xE5E6, 0x8902, 0xE5E7, 0x88FC,
- 0xE5E8, 0x88F4, 0xE5E9, 0x88E8, 0xE5EA, 0x88F2, 0xE5EB, 0x8904,
- 0xE5EC, 0x890C, 0xE5ED, 0x890A, 0xE5EE, 0x8913, 0xE5EF, 0x8943,
- 0xE5F0, 0x891E, 0xE5F1, 0x8925, 0xE5F2, 0x892A, 0xE5F3, 0x892B,
- 0xE5F4, 0x8941, 0xE5F5, 0x8944, 0xE5F6, 0x893B, 0xE5F7, 0x8936,
- 0xE5F8, 0x8938, 0xE5F9, 0x894C, 0xE5FA, 0x891D, 0xE5FB, 0x8960,
- 0xE5FC, 0x895E, 0xE640, 0x8966, 0xE641, 0x8964, 0xE642, 0x896D,
- 0xE643, 0x896A, 0xE644, 0x896F, 0xE645, 0x8974, 0xE646, 0x8977,
- 0xE647, 0x897E, 0xE648, 0x8983, 0xE649, 0x8988, 0xE64A, 0x898A,
- 0xE64B, 0x8993, 0xE64C, 0x8998, 0xE64D, 0x89A1, 0xE64E, 0x89A9,
- 0xE64F, 0x89A6, 0xE650, 0x89AC, 0xE651, 0x89AF, 0xE652, 0x89B2,
- 0xE653, 0x89BA, 0xE654, 0x89BD, 0xE655, 0x89BF, 0xE656, 0x89C0,
- 0xE657, 0x89DA, 0xE658, 0x89DC, 0xE659, 0x89DD, 0xE65A, 0x89E7,
- 0xE65B, 0x89F4, 0xE65C, 0x89F8, 0xE65D, 0x8A03, 0xE65E, 0x8A16,
- 0xE65F, 0x8A10, 0xE660, 0x8A0C, 0xE661, 0x8A1B, 0xE662, 0x8A1D,
- 0xE663, 0x8A25, 0xE664, 0x8A36, 0xE665, 0x8A41, 0xE666, 0x8A5B,
- 0xE667, 0x8A52, 0xE668, 0x8A46, 0xE669, 0x8A48, 0xE66A, 0x8A7C,
- 0xE66B, 0x8A6D, 0xE66C, 0x8A6C, 0xE66D, 0x8A62, 0xE66E, 0x8A85,
- 0xE66F, 0x8A82, 0xE670, 0x8A84, 0xE671, 0x8AA8, 0xE672, 0x8AA1,
- 0xE673, 0x8A91, 0xE674, 0x8AA5, 0xE675, 0x8AA6, 0xE676, 0x8A9A,
- 0xE677, 0x8AA3, 0xE678, 0x8AC4, 0xE679, 0x8ACD, 0xE67A, 0x8AC2,
- 0xE67B, 0x8ADA, 0xE67C, 0x8AEB, 0xE67D, 0x8AF3, 0xE67E, 0x8AE7,
- 0xE680, 0x8AE4, 0xE681, 0x8AF1, 0xE682, 0x8B14, 0xE683, 0x8AE0,
- 0xE684, 0x8AE2, 0xE685, 0x8AF7, 0xE686, 0x8ADE, 0xE687, 0x8ADB,
- 0xE688, 0x8B0C, 0xE689, 0x8B07, 0xE68A, 0x8B1A, 0xE68B, 0x8AE1,
- 0xE68C, 0x8B16, 0xE68D, 0x8B10, 0xE68E, 0x8B17, 0xE68F, 0x8B20,
- 0xE690, 0x8B33, 0xE691, 0x97AB, 0xE692, 0x8B26, 0xE693, 0x8B2B,
- 0xE694, 0x8B3E, 0xE695, 0x8B28, 0xE696, 0x8B41, 0xE697, 0x8B4C,
- 0xE698, 0x8B4F, 0xE699, 0x8B4E, 0xE69A, 0x8B49, 0xE69B, 0x8B56,
- 0xE69C, 0x8B5B, 0xE69D, 0x8B5A, 0xE69E, 0x8B6B, 0xE69F, 0x8B5F,
- 0xE6A0, 0x8B6C, 0xE6A1, 0x8B6F, 0xE6A2, 0x8B74, 0xE6A3, 0x8B7D,
- 0xE6A4, 0x8B80, 0xE6A5, 0x8B8C, 0xE6A6, 0x8B8E, 0xE6A7, 0x8B92,
- 0xE6A8, 0x8B93, 0xE6A9, 0x8B96, 0xE6AA, 0x8B99, 0xE6AB, 0x8B9A,
- 0xE6AC, 0x8C3A, 0xE6AD, 0x8C41, 0xE6AE, 0x8C3F, 0xE6AF, 0x8C48,
- 0xE6B0, 0x8C4C, 0xE6B1, 0x8C4E, 0xE6B2, 0x8C50, 0xE6B3, 0x8C55,
- 0xE6B4, 0x8C62, 0xE6B5, 0x8C6C, 0xE6B6, 0x8C78, 0xE6B7, 0x8C7A,
- 0xE6B8, 0x8C82, 0xE6B9, 0x8C89, 0xE6BA, 0x8C85, 0xE6BB, 0x8C8A,
- 0xE6BC, 0x8C8D, 0xE6BD, 0x8C8E, 0xE6BE, 0x8C94, 0xE6BF, 0x8C7C,
- 0xE6C0, 0x8C98, 0xE6C1, 0x621D, 0xE6C2, 0x8CAD, 0xE6C3, 0x8CAA,
- 0xE6C4, 0x8CBD, 0xE6C5, 0x8CB2, 0xE6C6, 0x8CB3, 0xE6C7, 0x8CAE,
- 0xE6C8, 0x8CB6, 0xE6C9, 0x8CC8, 0xE6CA, 0x8CC1, 0xE6CB, 0x8CE4,
- 0xE6CC, 0x8CE3, 0xE6CD, 0x8CDA, 0xE6CE, 0x8CFD, 0xE6CF, 0x8CFA,
- 0xE6D0, 0x8CFB, 0xE6D1, 0x8D04, 0xE6D2, 0x8D05, 0xE6D3, 0x8D0A,
- 0xE6D4, 0x8D07, 0xE6D5, 0x8D0F, 0xE6D6, 0x8D0D, 0xE6D7, 0x8D10,
- 0xE6D8, 0x9F4E, 0xE6D9, 0x8D13, 0xE6DA, 0x8CCD, 0xE6DB, 0x8D14,
- 0xE6DC, 0x8D16, 0xE6DD, 0x8D67, 0xE6DE, 0x8D6D, 0xE6DF, 0x8D71,
- 0xE6E0, 0x8D73, 0xE6E1, 0x8D81, 0xE6E2, 0x8D99, 0xE6E3, 0x8DC2,
- 0xE6E4, 0x8DBE, 0xE6E5, 0x8DBA, 0xE6E6, 0x8DCF, 0xE6E7, 0x8DDA,
- 0xE6E8, 0x8DD6, 0xE6E9, 0x8DCC, 0xE6EA, 0x8DDB, 0xE6EB, 0x8DCB,
- 0xE6EC, 0x8DEA, 0xE6ED, 0x8DEB, 0xE6EE, 0x8DDF, 0xE6EF, 0x8DE3,
- 0xE6F0, 0x8DFC, 0xE6F1, 0x8E08, 0xE6F2, 0x8E09, 0xE6F3, 0x8DFF,
- 0xE6F4, 0x8E1D, 0xE6F5, 0x8E1E, 0xE6F6, 0x8E10, 0xE6F7, 0x8E1F,
- 0xE6F8, 0x8E42, 0xE6F9, 0x8E35, 0xE6FA, 0x8E30, 0xE6FB, 0x8E34,
- 0xE6FC, 0x8E4A, 0xE740, 0x8E47, 0xE741, 0x8E49, 0xE742, 0x8E4C,
- 0xE743, 0x8E50, 0xE744, 0x8E48, 0xE745, 0x8E59, 0xE746, 0x8E64,
- 0xE747, 0x8E60, 0xE748, 0x8E2A, 0xE749, 0x8E63, 0xE74A, 0x8E55,
- 0xE74B, 0x8E76, 0xE74C, 0x8E72, 0xE74D, 0x8E7C, 0xE74E, 0x8E81,
- 0xE74F, 0x8E87, 0xE750, 0x8E85, 0xE751, 0x8E84, 0xE752, 0x8E8B,
- 0xE753, 0x8E8A, 0xE754, 0x8E93, 0xE755, 0x8E91, 0xE756, 0x8E94,
- 0xE757, 0x8E99, 0xE758, 0x8EAA, 0xE759, 0x8EA1, 0xE75A, 0x8EAC,
- 0xE75B, 0x8EB0, 0xE75C, 0x8EC6, 0xE75D, 0x8EB1, 0xE75E, 0x8EBE,
- 0xE75F, 0x8EC5, 0xE760, 0x8EC8, 0xE761, 0x8ECB, 0xE762, 0x8EDB,
- 0xE763, 0x8EE3, 0xE764, 0x8EFC, 0xE765, 0x8EFB, 0xE766, 0x8EEB,
- 0xE767, 0x8EFE, 0xE768, 0x8F0A, 0xE769, 0x8F05, 0xE76A, 0x8F15,
- 0xE76B, 0x8F12, 0xE76C, 0x8F19, 0xE76D, 0x8F13, 0xE76E, 0x8F1C,
- 0xE76F, 0x8F1F, 0xE770, 0x8F1B, 0xE771, 0x8F0C, 0xE772, 0x8F26,
- 0xE773, 0x8F33, 0xE774, 0x8F3B, 0xE775, 0x8F39, 0xE776, 0x8F45,
- 0xE777, 0x8F42, 0xE778, 0x8F3E, 0xE779, 0x8F4C, 0xE77A, 0x8F49,
- 0xE77B, 0x8F46, 0xE77C, 0x8F4E, 0xE77D, 0x8F57, 0xE77E, 0x8F5C,
- 0xE780, 0x8F62, 0xE781, 0x8F63, 0xE782, 0x8F64, 0xE783, 0x8F9C,
- 0xE784, 0x8F9F, 0xE785, 0x8FA3, 0xE786, 0x8FAD, 0xE787, 0x8FAF,
- 0xE788, 0x8FB7, 0xE789, 0x8FDA, 0xE78A, 0x8FE5, 0xE78B, 0x8FE2,
- 0xE78C, 0x8FEA, 0xE78D, 0x8FEF, 0xE78E, 0x9087, 0xE78F, 0x8FF4,
- 0xE790, 0x9005, 0xE791, 0x8FF9, 0xE792, 0x8FFA, 0xE793, 0x9011,
- 0xE794, 0x9015, 0xE795, 0x9021, 0xE796, 0x900D, 0xE797, 0x901E,
- 0xE798, 0x9016, 0xE799, 0x900B, 0xE79A, 0x9027, 0xE79B, 0x9036,
- 0xE79C, 0x9035, 0xE79D, 0x9039, 0xE79E, 0x8FF8, 0xE79F, 0x904F,
- 0xE7A0, 0x9050, 0xE7A1, 0x9051, 0xE7A2, 0x9052, 0xE7A3, 0x900E,
- 0xE7A4, 0x9049, 0xE7A5, 0x903E, 0xE7A6, 0x9056, 0xE7A7, 0x9058,
- 0xE7A8, 0x905E, 0xE7A9, 0x9068, 0xE7AA, 0x906F, 0xE7AB, 0x9076,
- 0xE7AC, 0x96A8, 0xE7AD, 0x9072, 0xE7AE, 0x9082, 0xE7AF, 0x907D,
- 0xE7B0, 0x9081, 0xE7B1, 0x9080, 0xE7B2, 0x908A, 0xE7B3, 0x9089,
- 0xE7B4, 0x908F, 0xE7B5, 0x90A8, 0xE7B6, 0x90AF, 0xE7B7, 0x90B1,
- 0xE7B8, 0x90B5, 0xE7B9, 0x90E2, 0xE7BA, 0x90E4, 0xE7BB, 0x6248,
- 0xE7BC, 0x90DB, 0xE7BD, 0x9102, 0xE7BE, 0x9112, 0xE7BF, 0x9119,
- 0xE7C0, 0x9132, 0xE7C1, 0x9130, 0xE7C2, 0x914A, 0xE7C3, 0x9156,
- 0xE7C4, 0x9158, 0xE7C5, 0x9163, 0xE7C6, 0x9165, 0xE7C7, 0x9169,
- 0xE7C8, 0x9173, 0xE7C9, 0x9172, 0xE7CA, 0x918B, 0xE7CB, 0x9189,
- 0xE7CC, 0x9182, 0xE7CD, 0x91A2, 0xE7CE, 0x91AB, 0xE7CF, 0x91AF,
- 0xE7D0, 0x91AA, 0xE7D1, 0x91B5, 0xE7D2, 0x91B4, 0xE7D3, 0x91BA,
- 0xE7D4, 0x91C0, 0xE7D5, 0x91C1, 0xE7D6, 0x91C9, 0xE7D7, 0x91CB,
- 0xE7D8, 0x91D0, 0xE7D9, 0x91D6, 0xE7DA, 0x91DF, 0xE7DB, 0x91E1,
- 0xE7DC, 0x91DB, 0xE7DD, 0x91FC, 0xE7DE, 0x91F5, 0xE7DF, 0x91F6,
- 0xE7E0, 0x921E, 0xE7E1, 0x91FF, 0xE7E2, 0x9214, 0xE7E3, 0x922C,
- 0xE7E4, 0x9215, 0xE7E5, 0x9211, 0xE7E6, 0x925E, 0xE7E7, 0x9257,
- 0xE7E8, 0x9245, 0xE7E9, 0x9249, 0xE7EA, 0x9264, 0xE7EB, 0x9248,
- 0xE7EC, 0x9295, 0xE7ED, 0x923F, 0xE7EE, 0x924B, 0xE7EF, 0x9250,
- 0xE7F0, 0x929C, 0xE7F1, 0x9296, 0xE7F2, 0x9293, 0xE7F3, 0x929B,
- 0xE7F4, 0x925A, 0xE7F5, 0x92CF, 0xE7F6, 0x92B9, 0xE7F7, 0x92B7,
- 0xE7F8, 0x92E9, 0xE7F9, 0x930F, 0xE7FA, 0x92FA, 0xE7FB, 0x9344,
- 0xE7FC, 0x932E, 0xE840, 0x9319, 0xE841, 0x9322, 0xE842, 0x931A,
- 0xE843, 0x9323, 0xE844, 0x933A, 0xE845, 0x9335, 0xE846, 0x933B,
- 0xE847, 0x935C, 0xE848, 0x9360, 0xE849, 0x937C, 0xE84A, 0x936E,
- 0xE84B, 0x9356, 0xE84C, 0x93B0, 0xE84D, 0x93AC, 0xE84E, 0x93AD,
- 0xE84F, 0x9394, 0xE850, 0x93B9, 0xE851, 0x93D6, 0xE852, 0x93D7,
- 0xE853, 0x93E8, 0xE854, 0x93E5, 0xE855, 0x93D8, 0xE856, 0x93C3,
- 0xE857, 0x93DD, 0xE858, 0x93D0, 0xE859, 0x93C8, 0xE85A, 0x93E4,
- 0xE85B, 0x941A, 0xE85C, 0x9414, 0xE85D, 0x9413, 0xE85E, 0x9403,
- 0xE85F, 0x9407, 0xE860, 0x9410, 0xE861, 0x9436, 0xE862, 0x942B,
- 0xE863, 0x9435, 0xE864, 0x9421, 0xE865, 0x943A, 0xE866, 0x9441,
- 0xE867, 0x9452, 0xE868, 0x9444, 0xE869, 0x945B, 0xE86A, 0x9460,
- 0xE86B, 0x9462, 0xE86C, 0x945E, 0xE86D, 0x946A, 0xE86E, 0x9229,
- 0xE86F, 0x9470, 0xE870, 0x9475, 0xE871, 0x9477, 0xE872, 0x947D,
- 0xE873, 0x945A, 0xE874, 0x947C, 0xE875, 0x947E, 0xE876, 0x9481,
- 0xE877, 0x947F, 0xE878, 0x9582, 0xE879, 0x9587, 0xE87A, 0x958A,
- 0xE87B, 0x9594, 0xE87C, 0x9596, 0xE87D, 0x9598, 0xE87E, 0x9599,
- 0xE880, 0x95A0, 0xE881, 0x95A8, 0xE882, 0x95A7, 0xE883, 0x95AD,
- 0xE884, 0x95BC, 0xE885, 0x95BB, 0xE886, 0x95B9, 0xE887, 0x95BE,
- 0xE888, 0x95CA, 0xE889, 0x6FF6, 0xE88A, 0x95C3, 0xE88B, 0x95CD,
- 0xE88C, 0x95CC, 0xE88D, 0x95D5, 0xE88E, 0x95D4, 0xE88F, 0x95D6,
- 0xE890, 0x95DC, 0xE891, 0x95E1, 0xE892, 0x95E5, 0xE893, 0x95E2,
- 0xE894, 0x9621, 0xE895, 0x9628, 0xE896, 0x962E, 0xE897, 0x962F,
- 0xE898, 0x9642, 0xE899, 0x964C, 0xE89A, 0x964F, 0xE89B, 0x964B,
- 0xE89C, 0x9677, 0xE89D, 0x965C, 0xE89E, 0x965E, 0xE89F, 0x965D,
- 0xE8A0, 0x965F, 0xE8A1, 0x9666, 0xE8A2, 0x9672, 0xE8A3, 0x966C,
- 0xE8A4, 0x968D, 0xE8A5, 0x9698, 0xE8A6, 0x9695, 0xE8A7, 0x9697,
- 0xE8A8, 0x96AA, 0xE8A9, 0x96A7, 0xE8AA, 0x96B1, 0xE8AB, 0x96B2,
- 0xE8AC, 0x96B0, 0xE8AD, 0x96B4, 0xE8AE, 0x96B6, 0xE8AF, 0x96B8,
- 0xE8B0, 0x96B9, 0xE8B1, 0x96CE, 0xE8B2, 0x96CB, 0xE8B3, 0x96C9,
- 0xE8B4, 0x96CD, 0xE8B5, 0x894D, 0xE8B6, 0x96DC, 0xE8B7, 0x970D,
- 0xE8B8, 0x96D5, 0xE8B9, 0x96F9, 0xE8BA, 0x9704, 0xE8BB, 0x9706,
- 0xE8BC, 0x9708, 0xE8BD, 0x9713, 0xE8BE, 0x970E, 0xE8BF, 0x9711,
- 0xE8C0, 0x970F, 0xE8C1, 0x9716, 0xE8C2, 0x9719, 0xE8C3, 0x9724,
- 0xE8C4, 0x972A, 0xE8C5, 0x9730, 0xE8C6, 0x9739, 0xE8C7, 0x973D,
- 0xE8C8, 0x973E, 0xE8C9, 0x9744, 0xE8CA, 0x9746, 0xE8CB, 0x9748,
- 0xE8CC, 0x9742, 0xE8CD, 0x9749, 0xE8CE, 0x975C, 0xE8CF, 0x9760,
- 0xE8D0, 0x9764, 0xE8D1, 0x9766, 0xE8D2, 0x9768, 0xE8D3, 0x52D2,
- 0xE8D4, 0x976B, 0xE8D5, 0x9771, 0xE8D6, 0x9779, 0xE8D7, 0x9785,
- 0xE8D8, 0x977C, 0xE8D9, 0x9781, 0xE8DA, 0x977A, 0xE8DB, 0x9786,
- 0xE8DC, 0x978B, 0xE8DD, 0x978F, 0xE8DE, 0x9790, 0xE8DF, 0x979C,
- 0xE8E0, 0x97A8, 0xE8E1, 0x97A6, 0xE8E2, 0x97A3, 0xE8E3, 0x97B3,
- 0xE8E4, 0x97B4, 0xE8E5, 0x97C3, 0xE8E6, 0x97C6, 0xE8E7, 0x97C8,
- 0xE8E8, 0x97CB, 0xE8E9, 0x97DC, 0xE8EA, 0x97ED, 0xE8EB, 0x9F4F,
- 0xE8EC, 0x97F2, 0xE8ED, 0x7ADF, 0xE8EE, 0x97F6, 0xE8EF, 0x97F5,
- 0xE8F0, 0x980F, 0xE8F1, 0x980C, 0xE8F2, 0x9838, 0xE8F3, 0x9824,
- 0xE8F4, 0x9821, 0xE8F5, 0x9837, 0xE8F6, 0x983D, 0xE8F7, 0x9846,
- 0xE8F8, 0x984F, 0xE8F9, 0x984B, 0xE8FA, 0x986B, 0xE8FB, 0x986F,
- 0xE8FC, 0x9870, 0xE940, 0x9871, 0xE941, 0x9874, 0xE942, 0x9873,
- 0xE943, 0x98AA, 0xE944, 0x98AF, 0xE945, 0x98B1, 0xE946, 0x98B6,
- 0xE947, 0x98C4, 0xE948, 0x98C3, 0xE949, 0x98C6, 0xE94A, 0x98E9,
- 0xE94B, 0x98EB, 0xE94C, 0x9903, 0xE94D, 0x9909, 0xE94E, 0x9912,
- 0xE94F, 0x9914, 0xE950, 0x9918, 0xE951, 0x9921, 0xE952, 0x991D,
- 0xE953, 0x991E, 0xE954, 0x9924, 0xE955, 0x9920, 0xE956, 0x992C,
- 0xE957, 0x992E, 0xE958, 0x993D, 0xE959, 0x993E, 0xE95A, 0x9942,
- 0xE95B, 0x9949, 0xE95C, 0x9945, 0xE95D, 0x9950, 0xE95E, 0x994B,
- 0xE95F, 0x9951, 0xE960, 0x9952, 0xE961, 0x994C, 0xE962, 0x9955,
- 0xE963, 0x9997, 0xE964, 0x9998, 0xE965, 0x99A5, 0xE966, 0x99AD,
- 0xE967, 0x99AE, 0xE968, 0x99BC, 0xE969, 0x99DF, 0xE96A, 0x99DB,
- 0xE96B, 0x99DD, 0xE96C, 0x99D8, 0xE96D, 0x99D1, 0xE96E, 0x99ED,
- 0xE96F, 0x99EE, 0xE970, 0x99F1, 0xE971, 0x99F2, 0xE972, 0x99FB,
- 0xE973, 0x99F8, 0xE974, 0x9A01, 0xE975, 0x9A0F, 0xE976, 0x9A05,
- 0xE977, 0x99E2, 0xE978, 0x9A19, 0xE979, 0x9A2B, 0xE97A, 0x9A37,
- 0xE97B, 0x9A45, 0xE97C, 0x9A42, 0xE97D, 0x9A40, 0xE97E, 0x9A43,
- 0xE980, 0x9A3E, 0xE981, 0x9A55, 0xE982, 0x9A4D, 0xE983, 0x9A5B,
- 0xE984, 0x9A57, 0xE985, 0x9A5F, 0xE986, 0x9A62, 0xE987, 0x9A65,
- 0xE988, 0x9A64, 0xE989, 0x9A69, 0xE98A, 0x9A6B, 0xE98B, 0x9A6A,
- 0xE98C, 0x9AAD, 0xE98D, 0x9AB0, 0xE98E, 0x9ABC, 0xE98F, 0x9AC0,
- 0xE990, 0x9ACF, 0xE991, 0x9AD1, 0xE992, 0x9AD3, 0xE993, 0x9AD4,
- 0xE994, 0x9ADE, 0xE995, 0x9ADF, 0xE996, 0x9AE2, 0xE997, 0x9AE3,
- 0xE998, 0x9AE6, 0xE999, 0x9AEF, 0xE99A, 0x9AEB, 0xE99B, 0x9AEE,
- 0xE99C, 0x9AF4, 0xE99D, 0x9AF1, 0xE99E, 0x9AF7, 0xE99F, 0x9AFB,
- 0xE9A0, 0x9B06, 0xE9A1, 0x9B18, 0xE9A2, 0x9B1A, 0xE9A3, 0x9B1F,
- 0xE9A4, 0x9B22, 0xE9A5, 0x9B23, 0xE9A6, 0x9B25, 0xE9A7, 0x9B27,
- 0xE9A8, 0x9B28, 0xE9A9, 0x9B29, 0xE9AA, 0x9B2A, 0xE9AB, 0x9B2E,
- 0xE9AC, 0x9B2F, 0xE9AD, 0x9B32, 0xE9AE, 0x9B44, 0xE9AF, 0x9B43,
- 0xE9B0, 0x9B4F, 0xE9B1, 0x9B4D, 0xE9B2, 0x9B4E, 0xE9B3, 0x9B51,
- 0xE9B4, 0x9B58, 0xE9B5, 0x9B74, 0xE9B6, 0x9B93, 0xE9B7, 0x9B83,
- 0xE9B8, 0x9B91, 0xE9B9, 0x9B96, 0xE9BA, 0x9B97, 0xE9BB, 0x9B9F,
- 0xE9BC, 0x9BA0, 0xE9BD, 0x9BA8, 0xE9BE, 0x9BB4, 0xE9BF, 0x9BC0,
- 0xE9C0, 0x9BCA, 0xE9C1, 0x9BB9, 0xE9C2, 0x9BC6, 0xE9C3, 0x9BCF,
- 0xE9C4, 0x9BD1, 0xE9C5, 0x9BD2, 0xE9C6, 0x9BE3, 0xE9C7, 0x9BE2,
- 0xE9C8, 0x9BE4, 0xE9C9, 0x9BD4, 0xE9CA, 0x9BE1, 0xE9CB, 0x9C3A,
- 0xE9CC, 0x9BF2, 0xE9CD, 0x9BF1, 0xE9CE, 0x9BF0, 0xE9CF, 0x9C15,
- 0xE9D0, 0x9C14, 0xE9D1, 0x9C09, 0xE9D2, 0x9C13, 0xE9D3, 0x9C0C,
- 0xE9D4, 0x9C06, 0xE9D5, 0x9C08, 0xE9D6, 0x9C12, 0xE9D7, 0x9C0A,
- 0xE9D8, 0x9C04, 0xE9D9, 0x9C2E, 0xE9DA, 0x9C1B, 0xE9DB, 0x9C25,
- 0xE9DC, 0x9C24, 0xE9DD, 0x9C21, 0xE9DE, 0x9C30, 0xE9DF, 0x9C47,
- 0xE9E0, 0x9C32, 0xE9E1, 0x9C46, 0xE9E2, 0x9C3E, 0xE9E3, 0x9C5A,
- 0xE9E4, 0x9C60, 0xE9E5, 0x9C67, 0xE9E6, 0x9C76, 0xE9E7, 0x9C78,
- 0xE9E8, 0x9CE7, 0xE9E9, 0x9CEC, 0xE9EA, 0x9CF0, 0xE9EB, 0x9D09,
- 0xE9EC, 0x9D08, 0xE9ED, 0x9CEB, 0xE9EE, 0x9D03, 0xE9EF, 0x9D06,
- 0xE9F0, 0x9D2A, 0xE9F1, 0x9D26, 0xE9F2, 0x9DAF, 0xE9F3, 0x9D23,
- 0xE9F4, 0x9D1F, 0xE9F5, 0x9D44, 0xE9F6, 0x9D15, 0xE9F7, 0x9D12,
- 0xE9F8, 0x9D41, 0xE9F9, 0x9D3F, 0xE9FA, 0x9D3E, 0xE9FB, 0x9D46,
- 0xE9FC, 0x9D48, 0xEA40, 0x9D5D, 0xEA41, 0x9D5E, 0xEA42, 0x9D64,
- 0xEA43, 0x9D51, 0xEA44, 0x9D50, 0xEA45, 0x9D59, 0xEA46, 0x9D72,
- 0xEA47, 0x9D89, 0xEA48, 0x9D87, 0xEA49, 0x9DAB, 0xEA4A, 0x9D6F,
- 0xEA4B, 0x9D7A, 0xEA4C, 0x9D9A, 0xEA4D, 0x9DA4, 0xEA4E, 0x9DA9,
- 0xEA4F, 0x9DB2, 0xEA50, 0x9DC4, 0xEA51, 0x9DC1, 0xEA52, 0x9DBB,
- 0xEA53, 0x9DB8, 0xEA54, 0x9DBA, 0xEA55, 0x9DC6, 0xEA56, 0x9DCF,
- 0xEA57, 0x9DC2, 0xEA58, 0x9DD9, 0xEA59, 0x9DD3, 0xEA5A, 0x9DF8,
- 0xEA5B, 0x9DE6, 0xEA5C, 0x9DED, 0xEA5D, 0x9DEF, 0xEA5E, 0x9DFD,
- 0xEA5F, 0x9E1A, 0xEA60, 0x9E1B, 0xEA61, 0x9E1E, 0xEA62, 0x9E75,
- 0xEA63, 0x9E79, 0xEA64, 0x9E7D, 0xEA65, 0x9E81, 0xEA66, 0x9E88,
- 0xEA67, 0x9E8B, 0xEA68, 0x9E8C, 0xEA69, 0x9E92, 0xEA6A, 0x9E95,
- 0xEA6B, 0x9E91, 0xEA6C, 0x9E9D, 0xEA6D, 0x9EA5, 0xEA6E, 0x9EA9,
- 0xEA6F, 0x9EB8, 0xEA70, 0x9EAA, 0xEA71, 0x9EAD, 0xEA72, 0x9761,
- 0xEA73, 0x9ECC, 0xEA74, 0x9ECE, 0xEA75, 0x9ECF, 0xEA76, 0x9ED0,
- 0xEA77, 0x9ED4, 0xEA78, 0x9EDC, 0xEA79, 0x9EDE, 0xEA7A, 0x9EDD,
- 0xEA7B, 0x9EE0, 0xEA7C, 0x9EE5, 0xEA7D, 0x9EE8, 0xEA7E, 0x9EEF,
- 0xEA80, 0x9EF4, 0xEA81, 0x9EF6, 0xEA82, 0x9EF7, 0xEA83, 0x9EF9,
- 0xEA84, 0x9EFB, 0xEA85, 0x9EFC, 0xEA86, 0x9EFD, 0xEA87, 0x9F07,
- 0xEA88, 0x9F08, 0xEA89, 0x76B7, 0xEA8A, 0x9F15, 0xEA8B, 0x9F21,
- 0xEA8C, 0x9F2C, 0xEA8D, 0x9F3E, 0xEA8E, 0x9F4A, 0xEA8F, 0x9F52,
- 0xEA90, 0x9F54, 0xEA91, 0x9F63, 0xEA92, 0x9F5F, 0xEA93, 0x9F60,
- 0xEA94, 0x9F61, 0xEA95, 0x9F66, 0xEA96, 0x9F67, 0xEA97, 0x9F6C,
- 0xEA98, 0x9F6A, 0xEA99, 0x9F77, 0xEA9A, 0x9F72, 0xEA9B, 0x9F76,
- 0xEA9C, 0x9F95, 0xEA9D, 0x9F9C, 0xEA9E, 0x9FA0, 0xEA9F, 0x582F,
- 0xEAA0, 0x69C7, 0xEAA1, 0x9059, 0xEAA2, 0x7464, 0xEAA3, 0x51DC,
- 0xEAA4, 0x7199, 0xFA40, 0x2170, 0xFA41, 0x2171, 0xFA42, 0x2172,
- 0xFA43, 0x2173, 0xFA44, 0x2174, 0xFA45, 0x2175, 0xFA46, 0x2176,
- 0xFA47, 0x2177, 0xFA48, 0x2178, 0xFA49, 0x2179, 0xFA55, 0xFFE4,
- 0xFA56, 0xFF07, 0xFA57, 0xFF02, 0xFA5C, 0x7E8A, 0xFA5D, 0x891C,
- 0xFA5E, 0x9348, 0xFA5F, 0x9288, 0xFA60, 0x84DC, 0xFA61, 0x4FC9,
- 0xFA62, 0x70BB, 0xFA63, 0x6631, 0xFA64, 0x68C8, 0xFA65, 0x92F9,
- 0xFA66, 0x66FB, 0xFA67, 0x5F45, 0xFA68, 0x4E28, 0xFA69, 0x4EE1,
- 0xFA6A, 0x4EFC, 0xFA6B, 0x4F00, 0xFA6C, 0x4F03, 0xFA6D, 0x4F39,
- 0xFA6E, 0x4F56, 0xFA6F, 0x4F92, 0xFA70, 0x4F8A, 0xFA71, 0x4F9A,
- 0xFA72, 0x4F94, 0xFA73, 0x4FCD, 0xFA74, 0x5040, 0xFA75, 0x5022,
- 0xFA76, 0x4FFF, 0xFA77, 0x501E, 0xFA78, 0x5046, 0xFA79, 0x5070,
- 0xFA7A, 0x5042, 0xFA7B, 0x5094, 0xFA7C, 0x50F4, 0xFA7D, 0x50D8,
- 0xFA7E, 0x514A, 0xFA80, 0x5164, 0xFA81, 0x519D, 0xFA82, 0x51BE,
- 0xFA83, 0x51EC, 0xFA84, 0x5215, 0xFA85, 0x529C, 0xFA86, 0x52A6,
- 0xFA87, 0x52C0, 0xFA88, 0x52DB, 0xFA89, 0x5300, 0xFA8A, 0x5307,
- 0xFA8B, 0x5324, 0xFA8C, 0x5372, 0xFA8D, 0x5393, 0xFA8E, 0x53B2,
- 0xFA8F, 0x53DD, 0xFA90, 0xFA0E, 0xFA91, 0x549C, 0xFA92, 0x548A,
- 0xFA93, 0x54A9, 0xFA94, 0x54FF, 0xFA95, 0x5586, 0xFA96, 0x5759,
- 0xFA97, 0x5765, 0xFA98, 0x57AC, 0xFA99, 0x57C8, 0xFA9A, 0x57C7,
- 0xFA9B, 0xFA0F, 0xFA9C, 0xFA10, 0xFA9D, 0x589E, 0xFA9E, 0x58B2,
- 0xFA9F, 0x590B, 0xFAA0, 0x5953, 0xFAA1, 0x595B, 0xFAA2, 0x595D,
- 0xFAA3, 0x5963, 0xFAA4, 0x59A4, 0xFAA5, 0x59BA, 0xFAA6, 0x5B56,
- 0xFAA7, 0x5BC0, 0xFAA8, 0x752F, 0xFAA9, 0x5BD8, 0xFAAA, 0x5BEC,
- 0xFAAB, 0x5C1E, 0xFAAC, 0x5CA6, 0xFAAD, 0x5CBA, 0xFAAE, 0x5CF5,
- 0xFAAF, 0x5D27, 0xFAB0, 0x5D53, 0xFAB1, 0xFA11, 0xFAB2, 0x5D42,
- 0xFAB3, 0x5D6D, 0xFAB4, 0x5DB8, 0xFAB5, 0x5DB9, 0xFAB6, 0x5DD0,
- 0xFAB7, 0x5F21, 0xFAB8, 0x5F34, 0xFAB9, 0x5F67, 0xFABA, 0x5FB7,
- 0xFABB, 0x5FDE, 0xFABC, 0x605D, 0xFABD, 0x6085, 0xFABE, 0x608A,
- 0xFABF, 0x60DE, 0xFAC0, 0x60D5, 0xFAC1, 0x6120, 0xFAC2, 0x60F2,
- 0xFAC3, 0x6111, 0xFAC4, 0x6137, 0xFAC5, 0x6130, 0xFAC6, 0x6198,
- 0xFAC7, 0x6213, 0xFAC8, 0x62A6, 0xFAC9, 0x63F5, 0xFACA, 0x6460,
- 0xFACB, 0x649D, 0xFACC, 0x64CE, 0xFACD, 0x654E, 0xFACE, 0x6600,
- 0xFACF, 0x6615, 0xFAD0, 0x663B, 0xFAD1, 0x6609, 0xFAD2, 0x662E,
- 0xFAD3, 0x661E, 0xFAD4, 0x6624, 0xFAD5, 0x6665, 0xFAD6, 0x6657,
- 0xFAD7, 0x6659, 0xFAD8, 0xFA12, 0xFAD9, 0x6673, 0xFADA, 0x6699,
- 0xFADB, 0x66A0, 0xFADC, 0x66B2, 0xFADD, 0x66BF, 0xFADE, 0x66FA,
- 0xFADF, 0x670E, 0xFAE0, 0xF929, 0xFAE1, 0x6766, 0xFAE2, 0x67BB,
- 0xFAE3, 0x6852, 0xFAE4, 0x67C0, 0xFAE5, 0x6801, 0xFAE6, 0x6844,
- 0xFAE7, 0x68CF, 0xFAE8, 0xFA13, 0xFAE9, 0x6968, 0xFAEA, 0xFA14,
- 0xFAEB, 0x6998, 0xFAEC, 0x69E2, 0xFAED, 0x6A30, 0xFAEE, 0x6A6B,
- 0xFAEF, 0x6A46, 0xFAF0, 0x6A73, 0xFAF1, 0x6A7E, 0xFAF2, 0x6AE2,
- 0xFAF3, 0x6AE4, 0xFAF4, 0x6BD6, 0xFAF5, 0x6C3F, 0xFAF6, 0x6C5C,
- 0xFAF7, 0x6C86, 0xFAF8, 0x6C6F, 0xFAF9, 0x6CDA, 0xFAFA, 0x6D04,
- 0xFAFB, 0x6D87, 0xFAFC, 0x6D6F, 0xFB40, 0x6D96, 0xFB41, 0x6DAC,
- 0xFB42, 0x6DCF, 0xFB43, 0x6DF8, 0xFB44, 0x6DF2, 0xFB45, 0x6DFC,
- 0xFB46, 0x6E39, 0xFB47, 0x6E5C, 0xFB48, 0x6E27, 0xFB49, 0x6E3C,
- 0xFB4A, 0x6EBF, 0xFB4B, 0x6F88, 0xFB4C, 0x6FB5, 0xFB4D, 0x6FF5,
- 0xFB4E, 0x7005, 0xFB4F, 0x7007, 0xFB50, 0x7028, 0xFB51, 0x7085,
- 0xFB52, 0x70AB, 0xFB53, 0x710F, 0xFB54, 0x7104, 0xFB55, 0x715C,
- 0xFB56, 0x7146, 0xFB57, 0x7147, 0xFB58, 0xFA15, 0xFB59, 0x71C1,
- 0xFB5A, 0x71FE, 0xFB5B, 0x72B1, 0xFB5C, 0x72BE, 0xFB5D, 0x7324,
- 0xFB5E, 0xFA16, 0xFB5F, 0x7377, 0xFB60, 0x73BD, 0xFB61, 0x73C9,
- 0xFB62, 0x73D6, 0xFB63, 0x73E3, 0xFB64, 0x73D2, 0xFB65, 0x7407,
- 0xFB66, 0x73F5, 0xFB67, 0x7426, 0xFB68, 0x742A, 0xFB69, 0x7429,
- 0xFB6A, 0x742E, 0xFB6B, 0x7462, 0xFB6C, 0x7489, 0xFB6D, 0x749F,
- 0xFB6E, 0x7501, 0xFB6F, 0x756F, 0xFB70, 0x7682, 0xFB71, 0x769C,
- 0xFB72, 0x769E, 0xFB73, 0x769B, 0xFB74, 0x76A6, 0xFB75, 0xFA17,
- 0xFB76, 0x7746, 0xFB77, 0x52AF, 0xFB78, 0x7821, 0xFB79, 0x784E,
- 0xFB7A, 0x7864, 0xFB7B, 0x787A, 0xFB7C, 0x7930, 0xFB7D, 0xFA18,
- 0xFB7E, 0xFA19, 0xFB80, 0xFA1A, 0xFB81, 0x7994, 0xFB82, 0xFA1B,
- 0xFB83, 0x799B, 0xFB84, 0x7AD1, 0xFB85, 0x7AE7, 0xFB86, 0xFA1C,
- 0xFB87, 0x7AEB, 0xFB88, 0x7B9E, 0xFB89, 0xFA1D, 0xFB8A, 0x7D48,
- 0xFB8B, 0x7D5C, 0xFB8C, 0x7DB7, 0xFB8D, 0x7DA0, 0xFB8E, 0x7DD6,
- 0xFB8F, 0x7E52, 0xFB90, 0x7F47, 0xFB91, 0x7FA1, 0xFB92, 0xFA1E,
- 0xFB93, 0x8301, 0xFB94, 0x8362, 0xFB95, 0x837F, 0xFB96, 0x83C7,
- 0xFB97, 0x83F6, 0xFB98, 0x8448, 0xFB99, 0x84B4, 0xFB9A, 0x8553,
- 0xFB9B, 0x8559, 0xFB9C, 0x856B, 0xFB9D, 0xFA1F, 0xFB9E, 0x85B0,
- 0xFB9F, 0xFA20, 0xFBA0, 0xFA21, 0xFBA1, 0x8807, 0xFBA2, 0x88F5,
- 0xFBA3, 0x8A12, 0xFBA4, 0x8A37, 0xFBA5, 0x8A79, 0xFBA6, 0x8AA7,
- 0xFBA7, 0x8ABE, 0xFBA8, 0x8ADF, 0xFBA9, 0xFA22, 0xFBAA, 0x8AF6,
- 0xFBAB, 0x8B53, 0xFBAC, 0x8B7F, 0xFBAD, 0x8CF0, 0xFBAE, 0x8CF4,
- 0xFBAF, 0x8D12, 0xFBB0, 0x8D76, 0xFBB1, 0xFA23, 0xFBB2, 0x8ECF,
- 0xFBB3, 0xFA24, 0xFBB4, 0xFA25, 0xFBB5, 0x9067, 0xFBB6, 0x90DE,
- 0xFBB7, 0xFA26, 0xFBB8, 0x9115, 0xFBB9, 0x9127, 0xFBBA, 0x91DA,
- 0xFBBB, 0x91D7, 0xFBBC, 0x91DE, 0xFBBD, 0x91ED, 0xFBBE, 0x91EE,
- 0xFBBF, 0x91E4, 0xFBC0, 0x91E5, 0xFBC1, 0x9206, 0xFBC2, 0x9210,
- 0xFBC3, 0x920A, 0xFBC4, 0x923A, 0xFBC5, 0x9240, 0xFBC6, 0x923C,
- 0xFBC7, 0x924E, 0xFBC8, 0x9259, 0xFBC9, 0x9251, 0xFBCA, 0x9239,
- 0xFBCB, 0x9267, 0xFBCC, 0x92A7, 0xFBCD, 0x9277, 0xFBCE, 0x9278,
- 0xFBCF, 0x92E7, 0xFBD0, 0x92D7, 0xFBD1, 0x92D9, 0xFBD2, 0x92D0,
- 0xFBD3, 0xFA27, 0xFBD4, 0x92D5, 0xFBD5, 0x92E0, 0xFBD6, 0x92D3,
- 0xFBD7, 0x9325, 0xFBD8, 0x9321, 0xFBD9, 0x92FB, 0xFBDA, 0xFA28,
- 0xFBDB, 0x931E, 0xFBDC, 0x92FF, 0xFBDD, 0x931D, 0xFBDE, 0x9302,
- 0xFBDF, 0x9370, 0xFBE0, 0x9357, 0xFBE1, 0x93A4, 0xFBE2, 0x93C6,
- 0xFBE3, 0x93DE, 0xFBE4, 0x93F8, 0xFBE5, 0x9431, 0xFBE6, 0x9445,
- 0xFBE7, 0x9448, 0xFBE8, 0x9592, 0xFBE9, 0xF9DC, 0xFBEA, 0xFA29,
- 0xFBEB, 0x969D, 0xFBEC, 0x96AF, 0xFBED, 0x9733, 0xFBEE, 0x973B,
- 0xFBEF, 0x9743, 0xFBF0, 0x974D, 0xFBF1, 0x974F, 0xFBF2, 0x9751,
- 0xFBF3, 0x9755, 0xFBF4, 0x9857, 0xFBF5, 0x9865, 0xFBF6, 0xFA2A,
- 0xFBF7, 0xFA2B, 0xFBF8, 0x9927, 0xFBF9, 0xFA2C, 0xFBFA, 0x999E,
- 0xFBFB, 0x9A4E, 0xFBFC, 0x9AD9, 0xFC40, 0x9ADC, 0xFC41, 0x9B75,
- 0xFC42, 0x9B72, 0xFC43, 0x9B8F, 0xFC44, 0x9BB1, 0xFC45, 0x9BBB,
- 0xFC46, 0x9C00, 0xFC47, 0x9D70, 0xFC48, 0x9D6B, 0xFC49, 0xFA2D,
- 0xFC4A, 0x9E19, 0xFC4B, 0x9ED1, 0, 0
-};
-#endif
-
-
-
-WCHAR ff_convert ( /* Converted code, 0 means conversion error */
- WCHAR src, /* Character code to be converted */
- UINT dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
- )
-{
- const WCHAR *p;
- WCHAR c;
- int i, n, li, hi;
-
-
- if (src <= 0x80) { /* ASCII */
- c = src;
- } else {
-#if !_TINY_TABLE
- if (dir) { /* OEMCP to unicode */
- p = sjis2uni;
- hi = sizeof(sjis2uni) / 4 - 1;
- } else { /* Unicode to OEMCP */
- p = uni2sjis;
- hi = sizeof(uni2sjis) / 4 - 1;
- }
- li = 0;
- for (n = 16; n; n--) {
- i = li + (hi - li) / 2;
- if (src == p[i * 2]) break;
- if (src > p[i * 2])
- li = i;
- else
- hi = i;
- }
- c = n ? p[i * 2 + 1] : 0;
-#else
- if (dir) { /* OEMCP to unicode (Incremental search)*/
- p = &uni2sjis[1];
- do {
- c = *p;
- p += 2;
- } while (c && c != src);
- p -= 3;
- c = *p;
- } else { /* Unicode to OEMCP */
- li = 0; hi = sizeof(uni2sjis) / 4 - 1;
- for (n = 16; n; n--) {
- i = li + (hi - li) / 2;
- if (src == uni2sjis[i * 2]) break;
- if (src > uni2sjis[i * 2])
- li = i;
- else
- hi = i;
- }
- c = n ? uni2sjis[i * 2 + 1] : 0;
- }
-#endif
- }
-
- return c;
-}
-
-
-
-WCHAR ff_wtoupper ( /* Upper converted character */
- WCHAR chr /* Input character */
- )
-{
- static const WCHAR tbl_lower[] = { 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101, 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F, 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D, 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B, 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A, 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148, 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157, 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165, 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173, 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1, 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8, 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF, 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7, 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A, 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448, 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F, 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457, 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0 };
- static const WCHAR tbl_upper[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
- int i;
-
-
- for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
-
- return tbl_lower[i] ? tbl_upper[i] : chr;
-}
diff --git a/BaS_gcc/fs/cc936.c b/BaS_gcc/fs/cc936.c
deleted file mode 100644
index ac8db50..0000000
--- a/BaS_gcc/fs/cc936.c
+++ /dev/null
@@ -1,10973 +0,0 @@
-/*------------------------------------------------------------------------*/
-/* Unicode - OEM code bidirectional converter (C)ChaN, 2009 */
-/* */
-/* CP936 (Simplified Chinese GBK) */
-/*------------------------------------------------------------------------*/
-
-#include
-
-
-#if !_USE_LFN || _CODE_PAGE != 936
-#error This file is not needed in current configuration. Remove from the project.
-#endif
-
-static
-const WCHAR uni2oem[] = {
- /* Unicode - OEM, Unicode - OEM, Unicode - OEM, Unicode - OEM */
- 0x00A4, 0xA1E8, 0x00A7, 0xA1EC, 0x00A8, 0xA1A7, 0x00B0, 0xA1E3,
- 0x00B1, 0xA1C0, 0x00B7, 0xA1A4, 0x00D7, 0xA1C1, 0x00E0, 0xA8A4,
- 0x00E1, 0xA8A2, 0x00E8, 0xA8A8, 0x00E9, 0xA8A6, 0x00EA, 0xA8BA,
- 0x00EC, 0xA8AC, 0x00ED, 0xA8AA, 0x00F2, 0xA8B0, 0x00F3, 0xA8AE,
- 0x00F7, 0xA1C2, 0x00F9, 0xA8B4, 0x00FA, 0xA8B2, 0x00FC, 0xA8B9,
- 0x0101, 0xA8A1, 0x0113, 0xA8A5, 0x011B, 0xA8A7, 0x012B, 0xA8A9,
- 0x0144, 0xA8BD, 0x0148, 0xA8BE, 0x014D, 0xA8AD, 0x016B, 0xA8B1,
- 0x01CE, 0xA8A3, 0x01D0, 0xA8AB, 0x01D2, 0xA8AF, 0x01D4, 0xA8B3,
- 0x01D6, 0xA8B5, 0x01D8, 0xA8B6, 0x01DA, 0xA8B7, 0x01DC, 0xA8B8,
- 0x0251, 0xA8BB, 0x0261, 0xA8C0, 0x02C7, 0xA1A6, 0x02C9, 0xA1A5,
- 0x02CA, 0xA840, 0x02CB, 0xA841, 0x02D9, 0xA842, 0x0391, 0xA6A1,
- 0x0392, 0xA6A2, 0x0393, 0xA6A3, 0x0394, 0xA6A4, 0x0395, 0xA6A5,
- 0x0396, 0xA6A6, 0x0397, 0xA6A7, 0x0398, 0xA6A8, 0x0399, 0xA6A9,
- 0x039A, 0xA6AA, 0x039B, 0xA6AB, 0x039C, 0xA6AC, 0x039D, 0xA6AD,
- 0x039E, 0xA6AE, 0x039F, 0xA6AF, 0x03A0, 0xA6B0, 0x03A1, 0xA6B1,
- 0x03A3, 0xA6B2, 0x03A4, 0xA6B3, 0x03A5, 0xA6B4, 0x03A6, 0xA6B5,
- 0x03A7, 0xA6B6, 0x03A8, 0xA6B7, 0x03A9, 0xA6B8, 0x03B1, 0xA6C1,
- 0x03B2, 0xA6C2, 0x03B3, 0xA6C3, 0x03B4, 0xA6C4, 0x03B5, 0xA6C5,
- 0x03B6, 0xA6C6, 0x03B7, 0xA6C7, 0x03B8, 0xA6C8, 0x03B9, 0xA6C9,
- 0x03BA, 0xA6CA, 0x03BB, 0xA6CB, 0x03BC, 0xA6CC, 0x03BD, 0xA6CD,
- 0x03BE, 0xA6CE, 0x03BF, 0xA6CF, 0x03C0, 0xA6D0, 0x03C1, 0xA6D1,
- 0x03C3, 0xA6D2, 0x03C4, 0xA6D3, 0x03C5, 0xA6D4, 0x03C6, 0xA6D5,
- 0x03C7, 0xA6D6, 0x03C8, 0xA6D7, 0x03C9, 0xA6D8, 0x0401, 0xA7A7,
- 0x0410, 0xA7A1, 0x0411, 0xA7A2, 0x0412, 0xA7A3, 0x0413, 0xA7A4,
- 0x0414, 0xA7A5, 0x0415, 0xA7A6, 0x0416, 0xA7A8, 0x0417, 0xA7A9,
- 0x0418, 0xA7AA, 0x0419, 0xA7AB, 0x041A, 0xA7AC, 0x041B, 0xA7AD,
- 0x041C, 0xA7AE, 0x041D, 0xA7AF, 0x041E, 0xA7B0, 0x041F, 0xA7B1,
- 0x0420, 0xA7B2, 0x0421, 0xA7B3, 0x0422, 0xA7B4, 0x0423, 0xA7B5,
- 0x0424, 0xA7B6, 0x0425, 0xA7B7, 0x0426, 0xA7B8, 0x0427, 0xA7B9,
- 0x0428, 0xA7BA, 0x0429, 0xA7BB, 0x042A, 0xA7BC, 0x042B, 0xA7BD,
- 0x042C, 0xA7BE, 0x042D, 0xA7BF, 0x042E, 0xA7C0, 0x042F, 0xA7C1,
- 0x0430, 0xA7D1, 0x0431, 0xA7D2, 0x0432, 0xA7D3, 0x0433, 0xA7D4,
- 0x0434, 0xA7D5, 0x0435, 0xA7D6, 0x0436, 0xA7D8, 0x0437, 0xA7D9,
- 0x0438, 0xA7DA, 0x0439, 0xA7DB, 0x043A, 0xA7DC, 0x043B, 0xA7DD,
- 0x043C, 0xA7DE, 0x043D, 0xA7DF, 0x043E, 0xA7E0, 0x043F, 0xA7E1,
- 0x0440, 0xA7E2, 0x0441, 0xA7E3, 0x0442, 0xA7E4, 0x0443, 0xA7E5,
- 0x0444, 0xA7E6, 0x0445, 0xA7E7, 0x0446, 0xA7E8, 0x0447, 0xA7E9,
- 0x0448, 0xA7EA, 0x0449, 0xA7EB, 0x044A, 0xA7EC, 0x044B, 0xA7ED,
- 0x044C, 0xA7EE, 0x044D, 0xA7EF, 0x044E, 0xA7F0, 0x044F, 0xA7F1,
- 0x0451, 0xA7D7, 0x2010, 0xA95C, 0x2013, 0xA843, 0x2014, 0xA1AA,
- 0x2015, 0xA844, 0x2016, 0xA1AC, 0x2018, 0xA1AE, 0x2019, 0xA1AF,
- 0x201C, 0xA1B0, 0x201D, 0xA1B1, 0x2025, 0xA845, 0x2026, 0xA1AD,
- 0x2030, 0xA1EB, 0x2032, 0xA1E4, 0x2033, 0xA1E5, 0x2035, 0xA846,
- 0x203B, 0xA1F9, 0x20AC, 0x0080, 0x2103, 0xA1E6, 0x2105, 0xA847,
- 0x2109, 0xA848, 0x2116, 0xA1ED, 0x2121, 0xA959, 0x2160, 0xA2F1,
- 0x2161, 0xA2F2, 0x2162, 0xA2F3, 0x2163, 0xA2F4, 0x2164, 0xA2F5,
- 0x2165, 0xA2F6, 0x2166, 0xA2F7, 0x2167, 0xA2F8, 0x2168, 0xA2F9,
- 0x2169, 0xA2FA, 0x216A, 0xA2FB, 0x216B, 0xA2FC, 0x2170, 0xA2A1,
- 0x2171, 0xA2A2, 0x2172, 0xA2A3, 0x2173, 0xA2A4, 0x2174, 0xA2A5,
- 0x2175, 0xA2A6, 0x2176, 0xA2A7, 0x2177, 0xA2A8, 0x2178, 0xA2A9,
- 0x2179, 0xA2AA, 0x2190, 0xA1FB, 0x2191, 0xA1FC, 0x2192, 0xA1FA,
- 0x2193, 0xA1FD, 0x2196, 0xA849, 0x2197, 0xA84A, 0x2198, 0xA84B,
- 0x2199, 0xA84C, 0x2208, 0xA1CA, 0x220F, 0xA1C7, 0x2211, 0xA1C6,
- 0x2215, 0xA84D, 0x221A, 0xA1CC, 0x221D, 0xA1D8, 0x221E, 0xA1DE,
- 0x221F, 0xA84E, 0x2220, 0xA1CF, 0x2223, 0xA84F, 0x2225, 0xA1CE,
- 0x2227, 0xA1C4, 0x2228, 0xA1C5, 0x2229, 0xA1C9, 0x222A, 0xA1C8,
- 0x222B, 0xA1D2, 0x222E, 0xA1D3, 0x2234, 0xA1E0, 0x2235, 0xA1DF,
- 0x2236, 0xA1C3, 0x2237, 0xA1CB, 0x223D, 0xA1D7, 0x2248, 0xA1D6,
- 0x224C, 0xA1D5, 0x2252, 0xA850, 0x2260, 0xA1D9, 0x2261, 0xA1D4,
- 0x2264, 0xA1DC, 0x2265, 0xA1DD, 0x2266, 0xA851, 0x2267, 0xA852,
- 0x226E, 0xA1DA, 0x226F, 0xA1DB, 0x2295, 0xA892, 0x2299, 0xA1D1,
- 0x22A5, 0xA1CD, 0x22BF, 0xA853, 0x2312, 0xA1D0, 0x2460, 0xA2D9,
- 0x2461, 0xA2DA, 0x2462, 0xA2DB, 0x2463, 0xA2DC, 0x2464, 0xA2DD,
- 0x2465, 0xA2DE, 0x2466, 0xA2DF, 0x2467, 0xA2E0, 0x2468, 0xA2E1,
- 0x2469, 0xA2E2, 0x2474, 0xA2C5, 0x2475, 0xA2C6, 0x2476, 0xA2C7,
- 0x2477, 0xA2C8, 0x2478, 0xA2C9, 0x2479, 0xA2CA, 0x247A, 0xA2CB,
- 0x247B, 0xA2CC, 0x247C, 0xA2CD, 0x247D, 0xA2CE, 0x247E, 0xA2CF,
- 0x247F, 0xA2D0, 0x2480, 0xA2D1, 0x2481, 0xA2D2, 0x2482, 0xA2D3,
- 0x2483, 0xA2D4, 0x2484, 0xA2D5, 0x2485, 0xA2D6, 0x2486, 0xA2D7,
- 0x2487, 0xA2D8, 0x2488, 0xA2B1, 0x2489, 0xA2B2, 0x248A, 0xA2B3,
- 0x248B, 0xA2B4, 0x248C, 0xA2B5, 0x248D, 0xA2B6, 0x248E, 0xA2B7,
- 0x248F, 0xA2B8, 0x2490, 0xA2B9, 0x2491, 0xA2BA, 0x2492, 0xA2BB,
- 0x2493, 0xA2BC, 0x2494, 0xA2BD, 0x2495, 0xA2BE, 0x2496, 0xA2BF,
- 0x2497, 0xA2C0, 0x2498, 0xA2C1, 0x2499, 0xA2C2, 0x249A, 0xA2C3,
- 0x249B, 0xA2C4, 0x2500, 0xA9A4, 0x2501, 0xA9A5, 0x2502, 0xA9A6,
- 0x2503, 0xA9A7, 0x2504, 0xA9A8, 0x2505, 0xA9A9, 0x2506, 0xA9AA,
- 0x2507, 0xA9AB, 0x2508, 0xA9AC, 0x2509, 0xA9AD, 0x250A, 0xA9AE,
- 0x250B, 0xA9AF, 0x250C, 0xA9B0, 0x250D, 0xA9B1, 0x250E, 0xA9B2,
- 0x250F, 0xA9B3, 0x2510, 0xA9B4, 0x2511, 0xA9B5, 0x2512, 0xA9B6,
- 0x2513, 0xA9B7, 0x2514, 0xA9B8, 0x2515, 0xA9B9, 0x2516, 0xA9BA,
- 0x2517, 0xA9BB, 0x2518, 0xA9BC, 0x2519, 0xA9BD, 0x251A, 0xA9BE,
- 0x251B, 0xA9BF, 0x251C, 0xA9C0, 0x251D, 0xA9C1, 0x251E, 0xA9C2,
- 0x251F, 0xA9C3, 0x2520, 0xA9C4, 0x2521, 0xA9C5, 0x2522, 0xA9C6,
- 0x2523, 0xA9C7, 0x2524, 0xA9C8, 0x2525, 0xA9C9, 0x2526, 0xA9CA,
- 0x2527, 0xA9CB, 0x2528, 0xA9CC, 0x2529, 0xA9CD, 0x252A, 0xA9CE,
- 0x252B, 0xA9CF, 0x252C, 0xA9D0, 0x252D, 0xA9D1, 0x252E, 0xA9D2,
- 0x252F, 0xA9D3, 0x2530, 0xA9D4, 0x2531, 0xA9D5, 0x2532, 0xA9D6,
- 0x2533, 0xA9D7, 0x2534, 0xA9D8, 0x2535, 0xA9D9, 0x2536, 0xA9DA,
- 0x2537, 0xA9DB, 0x2538, 0xA9DC, 0x2539, 0xA9DD, 0x253A, 0xA9DE,
- 0x253B, 0xA9DF, 0x253C, 0xA9E0, 0x253D, 0xA9E1, 0x253E, 0xA9E2,
- 0x253F, 0xA9E3, 0x2540, 0xA9E4, 0x2541, 0xA9E5, 0x2542, 0xA9E6,
- 0x2543, 0xA9E7, 0x2544, 0xA9E8, 0x2545, 0xA9E9, 0x2546, 0xA9EA,
- 0x2547, 0xA9EB, 0x2548, 0xA9EC, 0x2549, 0xA9ED, 0x254A, 0xA9EE,
- 0x254B, 0xA9EF, 0x2550, 0xA854, 0x2551, 0xA855, 0x2552, 0xA856,
- 0x2553, 0xA857, 0x2554, 0xA858, 0x2555, 0xA859, 0x2556, 0xA85A,
- 0x2557, 0xA85B, 0x2558, 0xA85C, 0x2559, 0xA85D, 0x255A, 0xA85E,
- 0x255B, 0xA85F, 0x255C, 0xA860, 0x255D, 0xA861, 0x255E, 0xA862,
- 0x255F, 0xA863, 0x2560, 0xA864, 0x2561, 0xA865, 0x2562, 0xA866,
- 0x2563, 0xA867, 0x2564, 0xA868, 0x2565, 0xA869, 0x2566, 0xA86A,
- 0x2567, 0xA86B, 0x2568, 0xA86C, 0x2569, 0xA86D, 0x256A, 0xA86E,
- 0x256B, 0xA86F, 0x256C, 0xA870, 0x256D, 0xA871, 0x256E, 0xA872,
- 0x256F, 0xA873, 0x2570, 0xA874, 0x2571, 0xA875, 0x2572, 0xA876,
- 0x2573, 0xA877, 0x2581, 0xA878, 0x2582, 0xA879, 0x2583, 0xA87A,
- 0x2584, 0xA87B, 0x2585, 0xA87C, 0x2586, 0xA87D, 0x2587, 0xA87E,
- 0x2588, 0xA880, 0x2589, 0xA881, 0x258A, 0xA882, 0x258B, 0xA883,
- 0x258C, 0xA884, 0x258D, 0xA885, 0x258E, 0xA886, 0x258F, 0xA887,
- 0x2593, 0xA888, 0x2594, 0xA889, 0x2595, 0xA88A, 0x25A0, 0xA1F6,
- 0x25A1, 0xA1F5, 0x25B2, 0xA1F8, 0x25B3, 0xA1F7, 0x25BC, 0xA88B,
- 0x25BD, 0xA88C, 0x25C6, 0xA1F4, 0x25C7, 0xA1F3, 0x25CB, 0xA1F0,
- 0x25CE, 0xA1F2, 0x25CF, 0xA1F1, 0x25E2, 0xA88D, 0x25E3, 0xA88E,
- 0x25E4, 0xA88F, 0x25E5, 0xA890, 0x2605, 0xA1EF, 0x2606, 0xA1EE,
- 0x2609, 0xA891, 0x2640, 0xA1E2, 0x2642, 0xA1E1, 0x3000, 0xA1A1,
- 0x3001, 0xA1A2, 0x3002, 0xA1A3, 0x3003, 0xA1A8, 0x3005, 0xA1A9,
- 0x3006, 0xA965, 0x3007, 0xA996, 0x3008, 0xA1B4, 0x3009, 0xA1B5,
- 0x300A, 0xA1B6, 0x300B, 0xA1B7, 0x300C, 0xA1B8, 0x300D, 0xA1B9,
- 0x300E, 0xA1BA, 0x300F, 0xA1BB, 0x3010, 0xA1BE, 0x3011, 0xA1BF,
- 0x3012, 0xA893, 0x3013, 0xA1FE, 0x3014, 0xA1B2, 0x3015, 0xA1B3,
- 0x3016, 0xA1BC, 0x3017, 0xA1BD, 0x301D, 0xA894, 0x301E, 0xA895,
- 0x3021, 0xA940, 0x3022, 0xA941, 0x3023, 0xA942, 0x3024, 0xA943,
- 0x3025, 0xA944, 0x3026, 0xA945, 0x3027, 0xA946, 0x3028, 0xA947,
- 0x3029, 0xA948, 0x3041, 0xA4A1, 0x3042, 0xA4A2, 0x3043, 0xA4A3,
- 0x3044, 0xA4A4, 0x3045, 0xA4A5, 0x3046, 0xA4A6, 0x3047, 0xA4A7,
- 0x3048, 0xA4A8, 0x3049, 0xA4A9, 0x304A, 0xA4AA, 0x304B, 0xA4AB,
- 0x304C, 0xA4AC, 0x304D, 0xA4AD, 0x304E, 0xA4AE, 0x304F, 0xA4AF,
- 0x3050, 0xA4B0, 0x3051, 0xA4B1, 0x3052, 0xA4B2, 0x3053, 0xA4B3,
- 0x3054, 0xA4B4, 0x3055, 0xA4B5, 0x3056, 0xA4B6, 0x3057, 0xA4B7,
- 0x3058, 0xA4B8, 0x3059, 0xA4B9, 0x305A, 0xA4BA, 0x305B, 0xA4BB,
- 0x305C, 0xA4BC, 0x305D, 0xA4BD, 0x305E, 0xA4BE, 0x305F, 0xA4BF,
- 0x3060, 0xA4C0, 0x3061, 0xA4C1, 0x3062, 0xA4C2, 0x3063, 0xA4C3,
- 0x3064, 0xA4C4, 0x3065, 0xA4C5, 0x3066, 0xA4C6, 0x3067, 0xA4C7,
- 0x3068, 0xA4C8, 0x3069, 0xA4C9, 0x306A, 0xA4CA, 0x306B, 0xA4CB,
- 0x306C, 0xA4CC, 0x306D, 0xA4CD, 0x306E, 0xA4CE, 0x306F, 0xA4CF,
- 0x3070, 0xA4D0, 0x3071, 0xA4D1, 0x3072, 0xA4D2, 0x3073, 0xA4D3,
- 0x3074, 0xA4D4, 0x3075, 0xA4D5, 0x3076, 0xA4D6, 0x3077, 0xA4D7,
- 0x3078, 0xA4D8, 0x3079, 0xA4D9, 0x307A, 0xA4DA, 0x307B, 0xA4DB,
- 0x307C, 0xA4DC, 0x307D, 0xA4DD, 0x307E, 0xA4DE, 0x307F, 0xA4DF,
- 0x3080, 0xA4E0, 0x3081, 0xA4E1, 0x3082, 0xA4E2, 0x3083, 0xA4E3,
- 0x3084, 0xA4E4, 0x3085, 0xA4E5, 0x3086, 0xA4E6, 0x3087, 0xA4E7,
- 0x3088, 0xA4E8, 0x3089, 0xA4E9, 0x308A, 0xA4EA, 0x308B, 0xA4EB,
- 0x308C, 0xA4EC, 0x308D, 0xA4ED, 0x308E, 0xA4EE, 0x308F, 0xA4EF,
- 0x3090, 0xA4F0, 0x3091, 0xA4F1, 0x3092, 0xA4F2, 0x3093, 0xA4F3,
- 0x309B, 0xA961, 0x309C, 0xA962, 0x309D, 0xA966, 0x309E, 0xA967,
- 0x30A1, 0xA5A1, 0x30A2, 0xA5A2, 0x30A3, 0xA5A3, 0x30A4, 0xA5A4,
- 0x30A5, 0xA5A5, 0x30A6, 0xA5A6, 0x30A7, 0xA5A7, 0x30A8, 0xA5A8,
- 0x30A9, 0xA5A9, 0x30AA, 0xA5AA, 0x30AB, 0xA5AB, 0x30AC, 0xA5AC,
- 0x30AD, 0xA5AD, 0x30AE, 0xA5AE, 0x30AF, 0xA5AF, 0x30B0, 0xA5B0,
- 0x30B1, 0xA5B1, 0x30B2, 0xA5B2, 0x30B3, 0xA5B3, 0x30B4, 0xA5B4,
- 0x30B5, 0xA5B5, 0x30B6, 0xA5B6, 0x30B7, 0xA5B7, 0x30B8, 0xA5B8,
- 0x30B9, 0xA5B9, 0x30BA, 0xA5BA, 0x30BB, 0xA5BB, 0x30BC, 0xA5BC,
- 0x30BD, 0xA5BD, 0x30BE, 0xA5BE, 0x30BF, 0xA5BF, 0x30C0, 0xA5C0,
- 0x30C1, 0xA5C1, 0x30C2, 0xA5C2, 0x30C3, 0xA5C3, 0x30C4, 0xA5C4,
- 0x30C5, 0xA5C5, 0x30C6, 0xA5C6, 0x30C7, 0xA5C7, 0x30C8, 0xA5C8,
- 0x30C9, 0xA5C9, 0x30CA, 0xA5CA, 0x30CB, 0xA5CB, 0x30CC, 0xA5CC,
- 0x30CD, 0xA5CD, 0x30CE, 0xA5CE, 0x30CF, 0xA5CF, 0x30D0, 0xA5D0,
- 0x30D1, 0xA5D1, 0x30D2, 0xA5D2, 0x30D3, 0xA5D3, 0x30D4, 0xA5D4,
- 0x30D5, 0xA5D5, 0x30D6, 0xA5D6, 0x30D7, 0xA5D7, 0x30D8, 0xA5D8,
- 0x30D9, 0xA5D9, 0x30DA, 0xA5DA, 0x30DB, 0xA5DB, 0x30DC, 0xA5DC,
- 0x30DD, 0xA5DD, 0x30DE, 0xA5DE, 0x30DF, 0xA5DF, 0x30E0, 0xA5E0,
- 0x30E1, 0xA5E1, 0x30E2, 0xA5E2, 0x30E3, 0xA5E3, 0x30E4, 0xA5E4,
- 0x30E5, 0xA5E5, 0x30E6, 0xA5E6, 0x30E7, 0xA5E7, 0x30E8, 0xA5E8,
- 0x30E9, 0xA5E9, 0x30EA, 0xA5EA, 0x30EB, 0xA5EB, 0x30EC, 0xA5EC,
- 0x30ED, 0xA5ED, 0x30EE, 0xA5EE, 0x30EF, 0xA5EF, 0x30F0, 0xA5F0,
- 0x30F1, 0xA5F1, 0x30F2, 0xA5F2, 0x30F3, 0xA5F3, 0x30F4, 0xA5F4,
- 0x30F5, 0xA5F5, 0x30F6, 0xA5F6, 0x30FC, 0xA960, 0x30FD, 0xA963,
- 0x30FE, 0xA964, 0x3105, 0xA8C5, 0x3106, 0xA8C6, 0x3107, 0xA8C7,
- 0x3108, 0xA8C8, 0x3109, 0xA8C9, 0x310A, 0xA8CA, 0x310B, 0xA8CB,
- 0x310C, 0xA8CC, 0x310D, 0xA8CD, 0x310E, 0xA8CE, 0x310F, 0xA8CF,
- 0x3110, 0xA8D0, 0x3111, 0xA8D1, 0x3112, 0xA8D2, 0x3113, 0xA8D3,
- 0x3114, 0xA8D4, 0x3115, 0xA8D5, 0x3116, 0xA8D6, 0x3117, 0xA8D7,
- 0x3118, 0xA8D8, 0x3119, 0xA8D9, 0x311A, 0xA8DA, 0x311B, 0xA8DB,
- 0x311C, 0xA8DC, 0x311D, 0xA8DD, 0x311E, 0xA8DE, 0x311F, 0xA8DF,
- 0x3120, 0xA8E0, 0x3121, 0xA8E1, 0x3122, 0xA8E2, 0x3123, 0xA8E3,
- 0x3124, 0xA8E4, 0x3125, 0xA8E5, 0x3126, 0xA8E6, 0x3127, 0xA8E7,
- 0x3128, 0xA8E8, 0x3129, 0xA8E9, 0x3220, 0xA2E5, 0x3221, 0xA2E6,
- 0x3222, 0xA2E7, 0x3223, 0xA2E8, 0x3224, 0xA2E9, 0x3225, 0xA2EA,
- 0x3226, 0xA2EB, 0x3227, 0xA2EC, 0x3228, 0xA2ED, 0x3229, 0xA2EE,
- 0x3231, 0xA95A, 0x32A3, 0xA949, 0x338E, 0xA94A, 0x338F, 0xA94B,
- 0x339C, 0xA94C, 0x339D, 0xA94D, 0x339E, 0xA94E, 0x33A1, 0xA94F,
- 0x33C4, 0xA950, 0x33CE, 0xA951, 0x33D1, 0xA952, 0x33D2, 0xA953,
- 0x33D5, 0xA954, 0x4E00, 0xD2BB, 0x4E01, 0xB6A1, 0x4E02, 0x8140,
- 0x4E03, 0xC6DF, 0x4E04, 0x8141, 0x4E05, 0x8142, 0x4E06, 0x8143,
- 0x4E07, 0xCDF2, 0x4E08, 0xD5C9, 0x4E09, 0xC8FD, 0x4E0A, 0xC9CF,
- 0x4E0B, 0xCFC2, 0x4E0C, 0xD8A2, 0x4E0D, 0xB2BB, 0x4E0E, 0xD3EB,
- 0x4E0F, 0x8144, 0x4E10, 0xD8A4, 0x4E11, 0xB3F3, 0x4E12, 0x8145,
- 0x4E13, 0xD7A8, 0x4E14, 0xC7D2, 0x4E15, 0xD8A7, 0x4E16, 0xCAC0,
- 0x4E17, 0x8146, 0x4E18, 0xC7F0, 0x4E19, 0xB1FB, 0x4E1A, 0xD2B5,
- 0x4E1B, 0xB4D4, 0x4E1C, 0xB6AB, 0x4E1D, 0xCBBF, 0x4E1E, 0xD8A9,
- 0x4E1F, 0x8147, 0x4E20, 0x8148, 0x4E21, 0x8149, 0x4E22, 0xB6AA,
- 0x4E23, 0x814A, 0x4E24, 0xC1BD, 0x4E25, 0xD1CF, 0x4E26, 0x814B,
- 0x4E27, 0xC9A5, 0x4E28, 0xD8AD, 0x4E29, 0x814C, 0x4E2A, 0xB8F6,
- 0x4E2B, 0xD1BE, 0x4E2C, 0xE3DC, 0x4E2D, 0xD6D0, 0x4E2E, 0x814D,
- 0x4E2F, 0x814E, 0x4E30, 0xB7E1, 0x4E31, 0x814F, 0x4E32, 0xB4AE,
- 0x4E33, 0x8150, 0x4E34, 0xC1D9, 0x4E35, 0x8151, 0x4E36, 0xD8BC,
- 0x4E37, 0x8152, 0x4E38, 0xCDE8, 0x4E39, 0xB5A4, 0x4E3A, 0xCEAA,
- 0x4E3B, 0xD6F7, 0x4E3C, 0x8153, 0x4E3D, 0xC0F6, 0x4E3E, 0xBED9,
- 0x4E3F, 0xD8AF, 0x4E40, 0x8154, 0x4E41, 0x8155, 0x4E42, 0x8156,
- 0x4E43, 0xC4CB, 0x4E44, 0x8157, 0x4E45, 0xBEC3, 0x4E46, 0x8158,
- 0x4E47, 0xD8B1, 0x4E48, 0xC3B4, 0x4E49, 0xD2E5, 0x4E4A, 0x8159,
- 0x4E4B, 0xD6AE, 0x4E4C, 0xCEDA, 0x4E4D, 0xD5A7, 0x4E4E, 0xBAF5,
- 0x4E4F, 0xB7A6, 0x4E50, 0xC0D6, 0x4E51, 0x815A, 0x4E52, 0xC6B9,
- 0x4E53, 0xC5D2, 0x4E54, 0xC7C7, 0x4E55, 0x815B, 0x4E56, 0xB9D4,
- 0x4E57, 0x815C, 0x4E58, 0xB3CB, 0x4E59, 0xD2D2, 0x4E5A, 0x815D,
- 0x4E5B, 0x815E, 0x4E5C, 0xD8BF, 0x4E5D, 0xBEC5, 0x4E5E, 0xC6F2,
- 0x4E5F, 0xD2B2, 0x4E60, 0xCFB0, 0x4E61, 0xCFE7, 0x4E62, 0x815F,
- 0x4E63, 0x8160, 0x4E64, 0x8161, 0x4E65, 0x8162, 0x4E66, 0xCAE9,
- 0x4E67, 0x8163, 0x4E68, 0x8164, 0x4E69, 0xD8C0, 0x4E6A, 0x8165,
- 0x4E6B, 0x8166, 0x4E6C, 0x8167, 0x4E6D, 0x8168, 0x4E6E, 0x8169,
- 0x4E6F, 0x816A, 0x4E70, 0xC2F2, 0x4E71, 0xC2D2, 0x4E72, 0x816B,
- 0x4E73, 0xC8E9, 0x4E74, 0x816C, 0x4E75, 0x816D, 0x4E76, 0x816E,
- 0x4E77, 0x816F, 0x4E78, 0x8170, 0x4E79, 0x8171, 0x4E7A, 0x8172,
- 0x4E7B, 0x8173, 0x4E7C, 0x8174, 0x4E7D, 0x8175, 0x4E7E, 0xC7AC,
- 0x4E7F, 0x8176, 0x4E80, 0x8177, 0x4E81, 0x8178, 0x4E82, 0x8179,
- 0x4E83, 0x817A, 0x4E84, 0x817B, 0x4E85, 0x817C, 0x4E86, 0xC1CB,
- 0x4E87, 0x817D, 0x4E88, 0xD3E8, 0x4E89, 0xD5F9, 0x4E8A, 0x817E,
- 0x4E8B, 0xCAC2, 0x4E8C, 0xB6FE, 0x4E8D, 0xD8A1, 0x4E8E, 0xD3DA,
- 0x4E8F, 0xBFF7, 0x4E90, 0x8180, 0x4E91, 0xD4C6, 0x4E92, 0xBBA5,
- 0x4E93, 0xD8C1, 0x4E94, 0xCEE5, 0x4E95, 0xBEAE, 0x4E96, 0x8181,
- 0x4E97, 0x8182, 0x4E98, 0xD8A8, 0x4E99, 0x8183, 0x4E9A, 0xD1C7,
- 0x4E9B, 0xD0A9, 0x4E9C, 0x8184, 0x4E9D, 0x8185, 0x4E9E, 0x8186,
- 0x4E9F, 0xD8BD, 0x4EA0, 0xD9EF, 0x4EA1, 0xCDF6, 0x4EA2, 0xBFBA,
- 0x4EA3, 0x8187, 0x4EA4, 0xBDBB, 0x4EA5, 0xBAA5, 0x4EA6, 0xD2E0,
- 0x4EA7, 0xB2FA, 0x4EA8, 0xBAE0, 0x4EA9, 0xC4B6, 0x4EAA, 0x8188,
- 0x4EAB, 0xCFED, 0x4EAC, 0xBEA9, 0x4EAD, 0xCDA4, 0x4EAE, 0xC1C1,
- 0x4EAF, 0x8189, 0x4EB0, 0x818A, 0x4EB1, 0x818B, 0x4EB2, 0xC7D7,
- 0x4EB3, 0xD9F1, 0x4EB4, 0x818C, 0x4EB5, 0xD9F4, 0x4EB6, 0x818D,
- 0x4EB7, 0x818E, 0x4EB8, 0x818F, 0x4EB9, 0x8190, 0x4EBA, 0xC8CB,
- 0x4EBB, 0xD8E9, 0x4EBC, 0x8191, 0x4EBD, 0x8192, 0x4EBE, 0x8193,
- 0x4EBF, 0xD2DA, 0x4EC0, 0xCAB2, 0x4EC1, 0xC8CA, 0x4EC2, 0xD8EC,
- 0x4EC3, 0xD8EA, 0x4EC4, 0xD8C6, 0x4EC5, 0xBDF6, 0x4EC6, 0xC6CD,
- 0x4EC7, 0xB3F0, 0x4EC8, 0x8194, 0x4EC9, 0xD8EB, 0x4ECA, 0xBDF1,
- 0x4ECB, 0xBDE9, 0x4ECC, 0x8195, 0x4ECD, 0xC8D4, 0x4ECE, 0xB4D3,
- 0x4ECF, 0x8196, 0x4ED0, 0x8197, 0x4ED1, 0xC2D8, 0x4ED2, 0x8198,
- 0x4ED3, 0xB2D6, 0x4ED4, 0xD7D0, 0x4ED5, 0xCACB, 0x4ED6, 0xCBFB,
- 0x4ED7, 0xD5CC, 0x4ED8, 0xB8B6, 0x4ED9, 0xCFC9, 0x4EDA, 0x8199,
- 0x4EDB, 0x819A, 0x4EDC, 0x819B, 0x4EDD, 0xD9DA, 0x4EDE, 0xD8F0,
- 0x4EDF, 0xC7AA, 0x4EE0, 0x819C, 0x4EE1, 0xD8EE, 0x4EE2, 0x819D,
- 0x4EE3, 0xB4FA, 0x4EE4, 0xC1EE, 0x4EE5, 0xD2D4, 0x4EE6, 0x819E,
- 0x4EE7, 0x819F, 0x4EE8, 0xD8ED, 0x4EE9, 0x81A0, 0x4EEA, 0xD2C7,
- 0x4EEB, 0xD8EF, 0x4EEC, 0xC3C7, 0x4EED, 0x81A1, 0x4EEE, 0x81A2,
- 0x4EEF, 0x81A3, 0x4EF0, 0xD1F6, 0x4EF1, 0x81A4, 0x4EF2, 0xD6D9,
- 0x4EF3, 0xD8F2, 0x4EF4, 0x81A5, 0x4EF5, 0xD8F5, 0x4EF6, 0xBCFE,
- 0x4EF7, 0xBCDB, 0x4EF8, 0x81A6, 0x4EF9, 0x81A7, 0x4EFA, 0x81A8,
- 0x4EFB, 0xC8CE, 0x4EFC, 0x81A9, 0x4EFD, 0xB7DD, 0x4EFE, 0x81AA,
- 0x4EFF, 0xB7C2, 0x4F00, 0x81AB, 0x4F01, 0xC6F3, 0x4F02, 0x81AC,
- 0x4F03, 0x81AD, 0x4F04, 0x81AE, 0x4F05, 0x81AF, 0x4F06, 0x81B0,
- 0x4F07, 0x81B1, 0x4F08, 0x81B2, 0x4F09, 0xD8F8, 0x4F0A, 0xD2C1,
- 0x4F0B, 0x81B3, 0x4F0C, 0x81B4, 0x4F0D, 0xCEE9, 0x4F0E, 0xBCBF,
- 0x4F0F, 0xB7FC, 0x4F10, 0xB7A5, 0x4F11, 0xD0DD, 0x4F12, 0x81B5,
- 0x4F13, 0x81B6, 0x4F14, 0x81B7, 0x4F15, 0x81B8, 0x4F16, 0x81B9,
- 0x4F17, 0xD6DA, 0x4F18, 0xD3C5, 0x4F19, 0xBBEF, 0x4F1A, 0xBBE1,
- 0x4F1B, 0xD8F1, 0x4F1C, 0x81BA, 0x4F1D, 0x81BB, 0x4F1E, 0xC9A1,
- 0x4F1F, 0xCEB0, 0x4F20, 0xB4AB, 0x4F21, 0x81BC, 0x4F22, 0xD8F3,
- 0x4F23, 0x81BD, 0x4F24, 0xC9CB, 0x4F25, 0xD8F6, 0x4F26, 0xC2D7,
- 0x4F27, 0xD8F7, 0x4F28, 0x81BE, 0x4F29, 0x81BF, 0x4F2A, 0xCEB1,
- 0x4F2B, 0xD8F9, 0x4F2C, 0x81C0, 0x4F2D, 0x81C1, 0x4F2E, 0x81C2,
- 0x4F2F, 0xB2AE, 0x4F30, 0xB9C0, 0x4F31, 0x81C3, 0x4F32, 0xD9A3,
- 0x4F33, 0x81C4, 0x4F34, 0xB0E9, 0x4F35, 0x81C5, 0x4F36, 0xC1E6,
- 0x4F37, 0x81C6, 0x4F38, 0xC9EC, 0x4F39, 0x81C7, 0x4F3A, 0xCBC5,
- 0x4F3B, 0x81C8, 0x4F3C, 0xCBC6, 0x4F3D, 0xD9A4, 0x4F3E, 0x81C9,
- 0x4F3F, 0x81CA, 0x4F40, 0x81CB, 0x4F41, 0x81CC, 0x4F42, 0x81CD,
- 0x4F43, 0xB5E8, 0x4F44, 0x81CE, 0x4F45, 0x81CF, 0x4F46, 0xB5AB,
- 0x4F47, 0x81D0, 0x4F48, 0x81D1, 0x4F49, 0x81D2, 0x4F4A, 0x81D3,
- 0x4F4B, 0x81D4, 0x4F4C, 0x81D5, 0x4F4D, 0xCEBB, 0x4F4E, 0xB5CD,
- 0x4F4F, 0xD7A1, 0x4F50, 0xD7F4, 0x4F51, 0xD3D3, 0x4F52, 0x81D6,
- 0x4F53, 0xCCE5, 0x4F54, 0x81D7, 0x4F55, 0xBACE, 0x4F56, 0x81D8,
- 0x4F57, 0xD9A2, 0x4F58, 0xD9DC, 0x4F59, 0xD3E0, 0x4F5A, 0xD8FD,
- 0x4F5B, 0xB7F0, 0x4F5C, 0xD7F7, 0x4F5D, 0xD8FE, 0x4F5E, 0xD8FA,
- 0x4F5F, 0xD9A1, 0x4F60, 0xC4E3, 0x4F61, 0x81D9, 0x4F62, 0x81DA,
- 0x4F63, 0xD3B6, 0x4F64, 0xD8F4, 0x4F65, 0xD9DD, 0x4F66, 0x81DB,
- 0x4F67, 0xD8FB, 0x4F68, 0x81DC, 0x4F69, 0xC5E5, 0x4F6A, 0x81DD,
- 0x4F6B, 0x81DE, 0x4F6C, 0xC0D0, 0x4F6D, 0x81DF, 0x4F6E, 0x81E0,
- 0x4F6F, 0xD1F0, 0x4F70, 0xB0DB, 0x4F71, 0x81E1, 0x4F72, 0x81E2,
- 0x4F73, 0xBCD1, 0x4F74, 0xD9A6, 0x4F75, 0x81E3, 0x4F76, 0xD9A5,
- 0x4F77, 0x81E4, 0x4F78, 0x81E5, 0x4F79, 0x81E6, 0x4F7A, 0x81E7,
- 0x4F7B, 0xD9AC, 0x4F7C, 0xD9AE, 0x4F7D, 0x81E8, 0x4F7E, 0xD9AB,
- 0x4F7F, 0xCAB9, 0x4F80, 0x81E9, 0x4F81, 0x81EA, 0x4F82, 0x81EB,
- 0x4F83, 0xD9A9, 0x4F84, 0xD6B6, 0x4F85, 0x81EC, 0x4F86, 0x81ED,
- 0x4F87, 0x81EE, 0x4F88, 0xB3DE, 0x4F89, 0xD9A8, 0x4F8A, 0x81EF,
- 0x4F8B, 0xC0FD, 0x4F8C, 0x81F0, 0x4F8D, 0xCACC, 0x4F8E, 0x81F1,
- 0x4F8F, 0xD9AA, 0x4F90, 0x81F2, 0x4F91, 0xD9A7, 0x4F92, 0x81F3,
- 0x4F93, 0x81F4, 0x4F94, 0xD9B0, 0x4F95, 0x81F5, 0x4F96, 0x81F6,
- 0x4F97, 0xB6B1, 0x4F98, 0x81F7, 0x4F99, 0x81F8, 0x4F9A, 0x81F9,
- 0x4F9B, 0xB9A9, 0x4F9C, 0x81FA, 0x4F9D, 0xD2C0, 0x4F9E, 0x81FB,
- 0x4F9F, 0x81FC, 0x4FA0, 0xCFC0, 0x4FA1, 0x81FD, 0x4FA2, 0x81FE,
- 0x4FA3, 0xC2C2, 0x4FA4, 0x8240, 0x4FA5, 0xBDC4, 0x4FA6, 0xD5EC,
- 0x4FA7, 0xB2E0, 0x4FA8, 0xC7C8, 0x4FA9, 0xBFEB, 0x4FAA, 0xD9AD,
- 0x4FAB, 0x8241, 0x4FAC, 0xD9AF, 0x4FAD, 0x8242, 0x4FAE, 0xCEEA,
- 0x4FAF, 0xBAEE, 0x4FB0, 0x8243, 0x4FB1, 0x8244, 0x4FB2, 0x8245,
- 0x4FB3, 0x8246, 0x4FB4, 0x8247, 0x4FB5, 0xC7D6, 0x4FB6, 0x8248,
- 0x4FB7, 0x8249, 0x4FB8, 0x824A, 0x4FB9, 0x824B, 0x4FBA, 0x824C,
- 0x4FBB, 0x824D, 0x4FBC, 0x824E, 0x4FBD, 0x824F, 0x4FBE, 0x8250,
- 0x4FBF, 0xB1E3, 0x4FC0, 0x8251, 0x4FC1, 0x8252, 0x4FC2, 0x8253,
- 0x4FC3, 0xB4D9, 0x4FC4, 0xB6ED, 0x4FC5, 0xD9B4, 0x4FC6, 0x8254,
- 0x4FC7, 0x8255, 0x4FC8, 0x8256, 0x4FC9, 0x8257, 0x4FCA, 0xBFA1,
- 0x4FCB, 0x8258, 0x4FCC, 0x8259, 0x4FCD, 0x825A, 0x4FCE, 0xD9DE,
- 0x4FCF, 0xC7CE, 0x4FD0, 0xC0FE, 0x4FD1, 0xD9B8, 0x4FD2, 0x825B,
- 0x4FD3, 0x825C, 0x4FD4, 0x825D, 0x4FD5, 0x825E, 0x4FD6, 0x825F,
- 0x4FD7, 0xCBD7, 0x4FD8, 0xB7FD, 0x4FD9, 0x8260, 0x4FDA, 0xD9B5,
- 0x4FDB, 0x8261, 0x4FDC, 0xD9B7, 0x4FDD, 0xB1A3, 0x4FDE, 0xD3E1,
- 0x4FDF, 0xD9B9, 0x4FE0, 0x8262, 0x4FE1, 0xD0C5, 0x4FE2, 0x8263,
- 0x4FE3, 0xD9B6, 0x4FE4, 0x8264, 0x4FE5, 0x8265, 0x4FE6, 0xD9B1,
- 0x4FE7, 0x8266, 0x4FE8, 0xD9B2, 0x4FE9, 0xC1A9, 0x4FEA, 0xD9B3,
- 0x4FEB, 0x8267, 0x4FEC, 0x8268, 0x4FED, 0xBCF3, 0x4FEE, 0xD0DE,
- 0x4FEF, 0xB8A9, 0x4FF0, 0x8269, 0x4FF1, 0xBEE3, 0x4FF2, 0x826A,
- 0x4FF3, 0xD9BD, 0x4FF4, 0x826B, 0x4FF5, 0x826C, 0x4FF6, 0x826D,
- 0x4FF7, 0x826E, 0x4FF8, 0xD9BA, 0x4FF9, 0x826F, 0x4FFA, 0xB0B3,
- 0x4FFB, 0x8270, 0x4FFC, 0x8271, 0x4FFD, 0x8272, 0x4FFE, 0xD9C2,
- 0x4FFF, 0x8273, 0x5000, 0x8274, 0x5001, 0x8275, 0x5002, 0x8276,
- 0x5003, 0x8277, 0x5004, 0x8278, 0x5005, 0x8279, 0x5006, 0x827A,
- 0x5007, 0x827B, 0x5008, 0x827C, 0x5009, 0x827D, 0x500A, 0x827E,
- 0x500B, 0x8280, 0x500C, 0xD9C4, 0x500D, 0xB1B6, 0x500E, 0x8281,
- 0x500F, 0xD9BF, 0x5010, 0x8282, 0x5011, 0x8283, 0x5012, 0xB5B9,
- 0x5013, 0x8284, 0x5014, 0xBEF3, 0x5015, 0x8285, 0x5016, 0x8286,
- 0x5017, 0x8287, 0x5018, 0xCCC8, 0x5019, 0xBAF2, 0x501A, 0xD2D0,
- 0x501B, 0x8288, 0x501C, 0xD9C3, 0x501D, 0x8289, 0x501E, 0x828A,
- 0x501F, 0xBDE8, 0x5020, 0x828B, 0x5021, 0xB3AB, 0x5022, 0x828C,
- 0x5023, 0x828D, 0x5024, 0x828E, 0x5025, 0xD9C5, 0x5026, 0xBEEB,
- 0x5027, 0x828F, 0x5028, 0xD9C6, 0x5029, 0xD9BB, 0x502A, 0xC4DF,
- 0x502B, 0x8290, 0x502C, 0xD9BE, 0x502D, 0xD9C1, 0x502E, 0xD9C0,
- 0x502F, 0x8291, 0x5030, 0x8292, 0x5031, 0x8293, 0x5032, 0x8294,
- 0x5033, 0x8295, 0x5034, 0x8296, 0x5035, 0x8297, 0x5036, 0x8298,
- 0x5037, 0x8299, 0x5038, 0x829A, 0x5039, 0x829B, 0x503A, 0xD5AE,
- 0x503B, 0x829C, 0x503C, 0xD6B5, 0x503D, 0x829D, 0x503E, 0xC7E3,
- 0x503F, 0x829E, 0x5040, 0x829F, 0x5041, 0x82A0, 0x5042, 0x82A1,
- 0x5043, 0xD9C8, 0x5044, 0x82A2, 0x5045, 0x82A3, 0x5046, 0x82A4,
- 0x5047, 0xBCD9, 0x5048, 0xD9CA, 0x5049, 0x82A5, 0x504A, 0x82A6,
- 0x504B, 0x82A7, 0x504C, 0xD9BC, 0x504D, 0x82A8, 0x504E, 0xD9CB,
- 0x504F, 0xC6AB, 0x5050, 0x82A9, 0x5051, 0x82AA, 0x5052, 0x82AB,
- 0x5053, 0x82AC, 0x5054, 0x82AD, 0x5055, 0xD9C9, 0x5056, 0x82AE,
- 0x5057, 0x82AF, 0x5058, 0x82B0, 0x5059, 0x82B1, 0x505A, 0xD7F6,
- 0x505B, 0x82B2, 0x505C, 0xCDA3, 0x505D, 0x82B3, 0x505E, 0x82B4,
- 0x505F, 0x82B5, 0x5060, 0x82B6, 0x5061, 0x82B7, 0x5062, 0x82B8,
- 0x5063, 0x82B9, 0x5064, 0x82BA, 0x5065, 0xBDA1, 0x5066, 0x82BB,
- 0x5067, 0x82BC, 0x5068, 0x82BD, 0x5069, 0x82BE, 0x506A, 0x82BF,
- 0x506B, 0x82C0, 0x506C, 0xD9CC, 0x506D, 0x82C1, 0x506E, 0x82C2,
- 0x506F, 0x82C3, 0x5070, 0x82C4, 0x5071, 0x82C5, 0x5072, 0x82C6,
- 0x5073, 0x82C7, 0x5074, 0x82C8, 0x5075, 0x82C9, 0x5076, 0xC5BC,
- 0x5077, 0xCDB5, 0x5078, 0x82CA, 0x5079, 0x82CB, 0x507A, 0x82CC,
- 0x507B, 0xD9CD, 0x507C, 0x82CD, 0x507D, 0x82CE, 0x507E, 0xD9C7,
- 0x507F, 0xB3A5, 0x5080, 0xBFFE, 0x5081, 0x82CF, 0x5082, 0x82D0,
- 0x5083, 0x82D1, 0x5084, 0x82D2, 0x5085, 0xB8B5, 0x5086, 0x82D3,
- 0x5087, 0x82D4, 0x5088, 0xC0FC, 0x5089, 0x82D5, 0x508A, 0x82D6,
- 0x508B, 0x82D7, 0x508C, 0x82D8, 0x508D, 0xB0F8, 0x508E, 0x82D9,
- 0x508F, 0x82DA, 0x5090, 0x82DB, 0x5091, 0x82DC, 0x5092, 0x82DD,
- 0x5093, 0x82DE, 0x5094, 0x82DF, 0x5095, 0x82E0, 0x5096, 0x82E1,
- 0x5097, 0x82E2, 0x5098, 0x82E3, 0x5099, 0x82E4, 0x509A, 0x82E5,
- 0x509B, 0x82E6, 0x509C, 0x82E7, 0x509D, 0x82E8, 0x509E, 0x82E9,
- 0x509F, 0x82EA, 0x50A0, 0x82EB, 0x50A1, 0x82EC, 0x50A2, 0x82ED,
- 0x50A3, 0xB4F6, 0x50A4, 0x82EE, 0x50A5, 0xD9CE, 0x50A6, 0x82EF,
- 0x50A7, 0xD9CF, 0x50A8, 0xB4A2, 0x50A9, 0xD9D0, 0x50AA, 0x82F0,
- 0x50AB, 0x82F1, 0x50AC, 0xB4DF, 0x50AD, 0x82F2, 0x50AE, 0x82F3,
- 0x50AF, 0x82F4, 0x50B0, 0x82F5, 0x50B1, 0x82F6, 0x50B2, 0xB0C1,
- 0x50B3, 0x82F7, 0x50B4, 0x82F8, 0x50B5, 0x82F9, 0x50B6, 0x82FA,
- 0x50B7, 0x82FB, 0x50B8, 0x82FC, 0x50B9, 0x82FD, 0x50BA, 0xD9D1,
- 0x50BB, 0xC9B5, 0x50BC, 0x82FE, 0x50BD, 0x8340, 0x50BE, 0x8341,
- 0x50BF, 0x8342, 0x50C0, 0x8343, 0x50C1, 0x8344, 0x50C2, 0x8345,
- 0x50C3, 0x8346, 0x50C4, 0x8347, 0x50C5, 0x8348, 0x50C6, 0x8349,
- 0x50C7, 0x834A, 0x50C8, 0x834B, 0x50C9, 0x834C, 0x50CA, 0x834D,
- 0x50CB, 0x834E, 0x50CC, 0x834F, 0x50CD, 0x8350, 0x50CE, 0x8351,
- 0x50CF, 0xCFF1, 0x50D0, 0x8352, 0x50D1, 0x8353, 0x50D2, 0x8354,
- 0x50D3, 0x8355, 0x50D4, 0x8356, 0x50D5, 0x8357, 0x50D6, 0xD9D2,
- 0x50D7, 0x8358, 0x50D8, 0x8359, 0x50D9, 0x835A, 0x50DA, 0xC1C5,
- 0x50DB, 0x835B, 0x50DC, 0x835C, 0x50DD, 0x835D, 0x50DE, 0x835E,
- 0x50DF, 0x835F, 0x50E0, 0x8360, 0x50E1, 0x8361, 0x50E2, 0x8362,
- 0x50E3, 0x8363, 0x50E4, 0x8364, 0x50E5, 0x8365, 0x50E6, 0xD9D6,
- 0x50E7, 0xC9AE, 0x50E8, 0x8366, 0x50E9, 0x8367, 0x50EA, 0x8368,
- 0x50EB, 0x8369, 0x50EC, 0xD9D5, 0x50ED, 0xD9D4, 0x50EE, 0xD9D7,
- 0x50EF, 0x836A, 0x50F0, 0x836B, 0x50F1, 0x836C, 0x50F2, 0x836D,
- 0x50F3, 0xCBDB, 0x50F4, 0x836E, 0x50F5, 0xBDA9, 0x50F6, 0x836F,
- 0x50F7, 0x8370, 0x50F8, 0x8371, 0x50F9, 0x8372, 0x50FA, 0x8373,
- 0x50FB, 0xC6A7, 0x50FC, 0x8374, 0x50FD, 0x8375, 0x50FE, 0x8376,
- 0x50FF, 0x8377, 0x5100, 0x8378, 0x5101, 0x8379, 0x5102, 0x837A,
- 0x5103, 0x837B, 0x5104, 0x837C, 0x5105, 0x837D, 0x5106, 0xD9D3,
- 0x5107, 0xD9D8, 0x5108, 0x837E, 0x5109, 0x8380, 0x510A, 0x8381,
- 0x510B, 0xD9D9, 0x510C, 0x8382, 0x510D, 0x8383, 0x510E, 0x8384,
- 0x510F, 0x8385, 0x5110, 0x8386, 0x5111, 0x8387, 0x5112, 0xC8E5,
- 0x5113, 0x8388, 0x5114, 0x8389, 0x5115, 0x838A, 0x5116, 0x838B,
- 0x5117, 0x838C, 0x5118, 0x838D, 0x5119, 0x838E, 0x511A, 0x838F,
- 0x511B, 0x8390, 0x511C, 0x8391, 0x511D, 0x8392, 0x511E, 0x8393,
- 0x511F, 0x8394, 0x5120, 0x8395, 0x5121, 0xC0DC, 0x5122, 0x8396,
- 0x5123, 0x8397, 0x5124, 0x8398, 0x5125, 0x8399, 0x5126, 0x839A,
- 0x5127, 0x839B, 0x5128, 0x839C, 0x5129, 0x839D, 0x512A, 0x839E,
- 0x512B, 0x839F, 0x512C, 0x83A0, 0x512D, 0x83A1, 0x512E, 0x83A2,
- 0x512F, 0x83A3, 0x5130, 0x83A4, 0x5131, 0x83A5, 0x5132, 0x83A6,
- 0x5133, 0x83A7, 0x5134, 0x83A8, 0x5135, 0x83A9, 0x5136, 0x83AA,
- 0x5137, 0x83AB, 0x5138, 0x83AC, 0x5139, 0x83AD, 0x513A, 0x83AE,
- 0x513B, 0x83AF, 0x513C, 0x83B0, 0x513D, 0x83B1, 0x513E, 0x83B2,
- 0x513F, 0xB6F9, 0x5140, 0xD8A3, 0x5141, 0xD4CA, 0x5142, 0x83B3,
- 0x5143, 0xD4AA, 0x5144, 0xD0D6, 0x5145, 0xB3E4, 0x5146, 0xD5D7,
- 0x5147, 0x83B4, 0x5148, 0xCFC8, 0x5149, 0xB9E2, 0x514A, 0x83B5,
- 0x514B, 0xBFCB, 0x514C, 0x83B6, 0x514D, 0xC3E2, 0x514E, 0x83B7,
- 0x514F, 0x83B8, 0x5150, 0x83B9, 0x5151, 0xB6D2, 0x5152, 0x83BA,
- 0x5153, 0x83BB, 0x5154, 0xCDC3, 0x5155, 0xD9EE, 0x5156, 0xD9F0,
- 0x5157, 0x83BC, 0x5158, 0x83BD, 0x5159, 0x83BE, 0x515A, 0xB5B3,
- 0x515B, 0x83BF, 0x515C, 0xB6B5, 0x515D, 0x83C0, 0x515E, 0x83C1,
- 0x515F, 0x83C2, 0x5160, 0x83C3, 0x5161, 0x83C4, 0x5162, 0xBEA4,
- 0x5163, 0x83C5, 0x5164, 0x83C6, 0x5165, 0xC8EB, 0x5166, 0x83C7,
- 0x5167, 0x83C8, 0x5168, 0xC8AB, 0x5169, 0x83C9, 0x516A, 0x83CA,
- 0x516B, 0xB0CB, 0x516C, 0xB9AB, 0x516D, 0xC1F9, 0x516E, 0xD9E2,
- 0x516F, 0x83CB, 0x5170, 0xC0BC, 0x5171, 0xB9B2, 0x5172, 0x83CC,
- 0x5173, 0xB9D8, 0x5174, 0xD0CB, 0x5175, 0xB1F8, 0x5176, 0xC6E4,
- 0x5177, 0xBEDF, 0x5178, 0xB5E4, 0x5179, 0xD7C8, 0x517A, 0x83CD,
- 0x517B, 0xD1F8, 0x517C, 0xBCE6, 0x517D, 0xCADE, 0x517E, 0x83CE,
- 0x517F, 0x83CF, 0x5180, 0xBCBD, 0x5181, 0xD9E6, 0x5182, 0xD8E7,
- 0x5183, 0x83D0, 0x5184, 0x83D1, 0x5185, 0xC4DA, 0x5186, 0x83D2,
- 0x5187, 0x83D3, 0x5188, 0xB8D4, 0x5189, 0xC8BD, 0x518A, 0x83D4,
- 0x518B, 0x83D5, 0x518C, 0xB2E1, 0x518D, 0xD4D9, 0x518E, 0x83D6,
- 0x518F, 0x83D7, 0x5190, 0x83D8, 0x5191, 0x83D9, 0x5192, 0xC3B0,
- 0x5193, 0x83DA, 0x5194, 0x83DB, 0x5195, 0xC3E1, 0x5196, 0xDAA2,
- 0x5197, 0xC8DF, 0x5198, 0x83DC, 0x5199, 0xD0B4, 0x519A, 0x83DD,
- 0x519B, 0xBEFC, 0x519C, 0xC5A9, 0x519D, 0x83DE, 0x519E, 0x83DF,
- 0x519F, 0x83E0, 0x51A0, 0xB9DA, 0x51A1, 0x83E1, 0x51A2, 0xDAA3,
- 0x51A3, 0x83E2, 0x51A4, 0xD4A9, 0x51A5, 0xDAA4, 0x51A6, 0x83E3,
- 0x51A7, 0x83E4, 0x51A8, 0x83E5, 0x51A9, 0x83E6, 0x51AA, 0x83E7,
- 0x51AB, 0xD9FB, 0x51AC, 0xB6AC, 0x51AD, 0x83E8, 0x51AE, 0x83E9,
- 0x51AF, 0xB7EB, 0x51B0, 0xB1F9, 0x51B1, 0xD9FC, 0x51B2, 0xB3E5,
- 0x51B3, 0xBEF6, 0x51B4, 0x83EA, 0x51B5, 0xBFF6, 0x51B6, 0xD2B1,
- 0x51B7, 0xC0E4, 0x51B8, 0x83EB, 0x51B9, 0x83EC, 0x51BA, 0x83ED,
- 0x51BB, 0xB6B3, 0x51BC, 0xD9FE, 0x51BD, 0xD9FD, 0x51BE, 0x83EE,
- 0x51BF, 0x83EF, 0x51C0, 0xBEBB, 0x51C1, 0x83F0, 0x51C2, 0x83F1,
- 0x51C3, 0x83F2, 0x51C4, 0xC6E0, 0x51C5, 0x83F3, 0x51C6, 0xD7BC,
- 0x51C7, 0xDAA1, 0x51C8, 0x83F4, 0x51C9, 0xC1B9, 0x51CA, 0x83F5,
- 0x51CB, 0xB5F2, 0x51CC, 0xC1E8, 0x51CD, 0x83F6, 0x51CE, 0x83F7,
- 0x51CF, 0xBCF5, 0x51D0, 0x83F8, 0x51D1, 0xB4D5, 0x51D2, 0x83F9,
- 0x51D3, 0x83FA, 0x51D4, 0x83FB, 0x51D5, 0x83FC, 0x51D6, 0x83FD,
- 0x51D7, 0x83FE, 0x51D8, 0x8440, 0x51D9, 0x8441, 0x51DA, 0x8442,
- 0x51DB, 0xC1DD, 0x51DC, 0x8443, 0x51DD, 0xC4FD, 0x51DE, 0x8444,
- 0x51DF, 0x8445, 0x51E0, 0xBCB8, 0x51E1, 0xB7B2, 0x51E2, 0x8446,
- 0x51E3, 0x8447, 0x51E4, 0xB7EF, 0x51E5, 0x8448, 0x51E6, 0x8449,
- 0x51E7, 0x844A, 0x51E8, 0x844B, 0x51E9, 0x844C, 0x51EA, 0x844D,
- 0x51EB, 0xD9EC, 0x51EC, 0x844E, 0x51ED, 0xC6BE, 0x51EE, 0x844F,
- 0x51EF, 0xBFAD, 0x51F0, 0xBBCB, 0x51F1, 0x8450, 0x51F2, 0x8451,
- 0x51F3, 0xB5CA, 0x51F4, 0x8452, 0x51F5, 0xDBC9, 0x51F6, 0xD0D7,
- 0x51F7, 0x8453, 0x51F8, 0xCDB9, 0x51F9, 0xB0BC, 0x51FA, 0xB3F6,
- 0x51FB, 0xBBF7, 0x51FC, 0xDBCA, 0x51FD, 0xBAAF, 0x51FE, 0x8454,
- 0x51FF, 0xD4E4, 0x5200, 0xB5B6, 0x5201, 0xB5F3, 0x5202, 0xD8D6,
- 0x5203, 0xC8D0, 0x5204, 0x8455, 0x5205, 0x8456, 0x5206, 0xB7D6,
- 0x5207, 0xC7D0, 0x5208, 0xD8D7, 0x5209, 0x8457, 0x520A, 0xBFAF,
- 0x520B, 0x8458, 0x520C, 0x8459, 0x520D, 0xDBBB, 0x520E, 0xD8D8,
- 0x520F, 0x845A, 0x5210, 0x845B, 0x5211, 0xD0CC, 0x5212, 0xBBAE,
- 0x5213, 0x845C, 0x5214, 0x845D, 0x5215, 0x845E, 0x5216, 0xEBBE,
- 0x5217, 0xC1D0, 0x5218, 0xC1F5, 0x5219, 0xD4F2, 0x521A, 0xB8D5,
- 0x521B, 0xB4B4, 0x521C, 0x845F, 0x521D, 0xB3F5, 0x521E, 0x8460,
- 0x521F, 0x8461, 0x5220, 0xC9BE, 0x5221, 0x8462, 0x5222, 0x8463,
- 0x5223, 0x8464, 0x5224, 0xC5D0, 0x5225, 0x8465, 0x5226, 0x8466,
- 0x5227, 0x8467, 0x5228, 0xC5D9, 0x5229, 0xC0FB, 0x522A, 0x8468,
- 0x522B, 0xB1F0, 0x522C, 0x8469, 0x522D, 0xD8D9, 0x522E, 0xB9CE,
- 0x522F, 0x846A, 0x5230, 0xB5BD, 0x5231, 0x846B, 0x5232, 0x846C,
- 0x5233, 0xD8DA, 0x5234, 0x846D, 0x5235, 0x846E, 0x5236, 0xD6C6,
- 0x5237, 0xCBA2, 0x5238, 0xC8AF, 0x5239, 0xC9B2, 0x523A, 0xB4CC,
- 0x523B, 0xBFCC, 0x523C, 0x846F, 0x523D, 0xB9F4, 0x523E, 0x8470,
- 0x523F, 0xD8DB, 0x5240, 0xD8DC, 0x5241, 0xB6E7, 0x5242, 0xBCC1,
- 0x5243, 0xCCEA, 0x5244, 0x8471, 0x5245, 0x8472, 0x5246, 0x8473,
- 0x5247, 0x8474, 0x5248, 0x8475, 0x5249, 0x8476, 0x524A, 0xCFF7,
- 0x524B, 0x8477, 0x524C, 0xD8DD, 0x524D, 0xC7B0, 0x524E, 0x8478,
- 0x524F, 0x8479, 0x5250, 0xB9D0, 0x5251, 0xBDA3, 0x5252, 0x847A,
- 0x5253, 0x847B, 0x5254, 0xCCDE, 0x5255, 0x847C, 0x5256, 0xC6CA,
- 0x5257, 0x847D, 0x5258, 0x847E, 0x5259, 0x8480, 0x525A, 0x8481,
- 0x525B, 0x8482, 0x525C, 0xD8E0, 0x525D, 0x8483, 0x525E, 0xD8DE,
- 0x525F, 0x8484, 0x5260, 0x8485, 0x5261, 0xD8DF, 0x5262, 0x8486,
- 0x5263, 0x8487, 0x5264, 0x8488, 0x5265, 0xB0FE, 0x5266, 0x8489,
- 0x5267, 0xBEE7, 0x5268, 0x848A, 0x5269, 0xCAA3, 0x526A, 0xBCF4,
- 0x526B, 0x848B, 0x526C, 0x848C, 0x526D, 0x848D, 0x526E, 0x848E,
- 0x526F, 0xB8B1, 0x5270, 0x848F, 0x5271, 0x8490, 0x5272, 0xB8EE,
- 0x5273, 0x8491, 0x5274, 0x8492, 0x5275, 0x8493, 0x5276, 0x8494,
- 0x5277, 0x8495, 0x5278, 0x8496, 0x5279, 0x8497, 0x527A, 0x8498,
- 0x527B, 0x8499, 0x527C, 0x849A, 0x527D, 0xD8E2, 0x527E, 0x849B,
- 0x527F, 0xBDCB, 0x5280, 0x849C, 0x5281, 0xD8E4, 0x5282, 0xD8E3,
- 0x5283, 0x849D, 0x5284, 0x849E, 0x5285, 0x849F, 0x5286, 0x84A0,
- 0x5287, 0x84A1, 0x5288, 0xC5FC, 0x5289, 0x84A2, 0x528A, 0x84A3,
- 0x528B, 0x84A4, 0x528C, 0x84A5, 0x528D, 0x84A6, 0x528E, 0x84A7,
- 0x528F, 0x84A8, 0x5290, 0xD8E5, 0x5291, 0x84A9, 0x5292, 0x84AA,
- 0x5293, 0xD8E6, 0x5294, 0x84AB, 0x5295, 0x84AC, 0x5296, 0x84AD,
- 0x5297, 0x84AE, 0x5298, 0x84AF, 0x5299, 0x84B0, 0x529A, 0x84B1,
- 0x529B, 0xC1A6, 0x529C, 0x84B2, 0x529D, 0xC8B0, 0x529E, 0xB0EC,
- 0x529F, 0xB9A6, 0x52A0, 0xBCD3, 0x52A1, 0xCEF1, 0x52A2, 0xDBBD,
- 0x52A3, 0xC1D3, 0x52A4, 0x84B3, 0x52A5, 0x84B4, 0x52A6, 0x84B5,
- 0x52A7, 0x84B6, 0x52A8, 0xB6AF, 0x52A9, 0xD6FA, 0x52AA, 0xC5AC,
- 0x52AB, 0xBDD9, 0x52AC, 0xDBBE, 0x52AD, 0xDBBF, 0x52AE, 0x84B7,
- 0x52AF, 0x84B8, 0x52B0, 0x84B9, 0x52B1, 0xC0F8, 0x52B2, 0xBEA2,
- 0x52B3, 0xC0CD, 0x52B4, 0x84BA, 0x52B5, 0x84BB, 0x52B6, 0x84BC,
- 0x52B7, 0x84BD, 0x52B8, 0x84BE, 0x52B9, 0x84BF, 0x52BA, 0x84C0,
- 0x52BB, 0x84C1, 0x52BC, 0x84C2, 0x52BD, 0x84C3, 0x52BE, 0xDBC0,
- 0x52BF, 0xCAC6, 0x52C0, 0x84C4, 0x52C1, 0x84C5, 0x52C2, 0x84C6,
- 0x52C3, 0xB2AA, 0x52C4, 0x84C7, 0x52C5, 0x84C8, 0x52C6, 0x84C9,
- 0x52C7, 0xD3C2, 0x52C8, 0x84CA, 0x52C9, 0xC3E3, 0x52CA, 0x84CB,
- 0x52CB, 0xD1AB, 0x52CC, 0x84CC, 0x52CD, 0x84CD, 0x52CE, 0x84CE,
- 0x52CF, 0x84CF, 0x52D0, 0xDBC2, 0x52D1, 0x84D0, 0x52D2, 0xC0D5,
- 0x52D3, 0x84D1, 0x52D4, 0x84D2, 0x52D5, 0x84D3, 0x52D6, 0xDBC3,
- 0x52D7, 0x84D4, 0x52D8, 0xBFB1, 0x52D9, 0x84D5, 0x52DA, 0x84D6,
- 0x52DB, 0x84D7, 0x52DC, 0x84D8, 0x52DD, 0x84D9, 0x52DE, 0x84DA,
- 0x52DF, 0xC4BC, 0x52E0, 0x84DB, 0x52E1, 0x84DC, 0x52E2, 0x84DD,
- 0x52E3, 0x84DE, 0x52E4, 0xC7DA, 0x52E5, 0x84DF, 0x52E6, 0x84E0,
- 0x52E7, 0x84E1, 0x52E8, 0x84E2, 0x52E9, 0x84E3, 0x52EA, 0x84E4,
- 0x52EB, 0x84E5, 0x52EC, 0x84E6, 0x52ED, 0x84E7, 0x52EE, 0x84E8,
- 0x52EF, 0x84E9, 0x52F0, 0xDBC4, 0x52F1, 0x84EA, 0x52F2, 0x84EB,
- 0x52F3, 0x84EC, 0x52F4, 0x84ED, 0x52F5, 0x84EE, 0x52F6, 0x84EF,
- 0x52F7, 0x84F0, 0x52F8, 0x84F1, 0x52F9, 0xD9E8, 0x52FA, 0xC9D7,
- 0x52FB, 0x84F2, 0x52FC, 0x84F3, 0x52FD, 0x84F4, 0x52FE, 0xB9B4,
- 0x52FF, 0xCEF0, 0x5300, 0xD4C8, 0x5301, 0x84F5, 0x5302, 0x84F6,
- 0x5303, 0x84F7, 0x5304, 0x84F8, 0x5305, 0xB0FC, 0x5306, 0xB4D2,
- 0x5307, 0x84F9, 0x5308, 0xD0D9, 0x5309, 0x84FA, 0x530A, 0x84FB,
- 0x530B, 0x84FC, 0x530C, 0x84FD, 0x530D, 0xD9E9, 0x530E, 0x84FE,
- 0x530F, 0xDECB, 0x5310, 0xD9EB, 0x5311, 0x8540, 0x5312, 0x8541,
- 0x5313, 0x8542, 0x5314, 0x8543, 0x5315, 0xD8B0, 0x5316, 0xBBAF,
- 0x5317, 0xB1B1, 0x5318, 0x8544, 0x5319, 0xB3D7, 0x531A, 0xD8CE,
- 0x531B, 0x8545, 0x531C, 0x8546, 0x531D, 0xD4D1, 0x531E, 0x8547,
- 0x531F, 0x8548, 0x5320, 0xBDB3, 0x5321, 0xBFEF, 0x5322, 0x8549,
- 0x5323, 0xCFBB, 0x5324, 0x854A, 0x5325, 0x854B, 0x5326, 0xD8D0,
- 0x5327, 0x854C, 0x5328, 0x854D, 0x5329, 0x854E, 0x532A, 0xB7CB,
- 0x532B, 0x854F, 0x532C, 0x8550, 0x532D, 0x8551, 0x532E, 0xD8D1,
- 0x532F, 0x8552, 0x5330, 0x8553, 0x5331, 0x8554, 0x5332, 0x8555,
- 0x5333, 0x8556, 0x5334, 0x8557, 0x5335, 0x8558, 0x5336, 0x8559,
- 0x5337, 0x855A, 0x5338, 0x855B, 0x5339, 0xC6A5, 0x533A, 0xC7F8,
- 0x533B, 0xD2BD, 0x533C, 0x855C, 0x533D, 0x855D, 0x533E, 0xD8D2,
- 0x533F, 0xC4E4, 0x5340, 0x855E, 0x5341, 0xCAAE, 0x5342, 0x855F,
- 0x5343, 0xC7A7, 0x5344, 0x8560, 0x5345, 0xD8A6, 0x5346, 0x8561,
- 0x5347, 0xC9FD, 0x5348, 0xCEE7, 0x5349, 0xBBDC, 0x534A, 0xB0EB,
- 0x534B, 0x8562, 0x534C, 0x8563, 0x534D, 0x8564, 0x534E, 0xBBAA,
- 0x534F, 0xD0AD, 0x5350, 0x8565, 0x5351, 0xB1B0, 0x5352, 0xD7E4,
- 0x5353, 0xD7BF, 0x5354, 0x8566, 0x5355, 0xB5A5, 0x5356, 0xC2F4,
- 0x5357, 0xC4CF, 0x5358, 0x8567, 0x5359, 0x8568, 0x535A, 0xB2A9,
- 0x535B, 0x8569, 0x535C, 0xB2B7, 0x535D, 0x856A, 0x535E, 0xB1E5,
- 0x535F, 0xDFB2, 0x5360, 0xD5BC, 0x5361, 0xBFA8, 0x5362, 0xC2AC,
- 0x5363, 0xD8D5, 0x5364, 0xC2B1, 0x5365, 0x856B, 0x5366, 0xD8D4,
- 0x5367, 0xCED4, 0x5368, 0x856C, 0x5369, 0xDAE0, 0x536A, 0x856D,
- 0x536B, 0xCEC0, 0x536C, 0x856E, 0x536D, 0x856F, 0x536E, 0xD8B4,
- 0x536F, 0xC3AE, 0x5370, 0xD3A1, 0x5371, 0xCEA3, 0x5372, 0x8570,
- 0x5373, 0xBCB4, 0x5374, 0xC8B4, 0x5375, 0xC2D1, 0x5376, 0x8571,
- 0x5377, 0xBEED, 0x5378, 0xD0B6, 0x5379, 0x8572, 0x537A, 0xDAE1,
- 0x537B, 0x8573, 0x537C, 0x8574, 0x537D, 0x8575, 0x537E, 0x8576,
- 0x537F, 0xC7E4, 0x5380, 0x8577, 0x5381, 0x8578, 0x5382, 0xB3A7,
- 0x5383, 0x8579, 0x5384, 0xB6F2, 0x5385, 0xCCFC, 0x5386, 0xC0FA,
- 0x5387, 0x857A, 0x5388, 0x857B, 0x5389, 0xC0F7, 0x538A, 0x857C,
- 0x538B, 0xD1B9, 0x538C, 0xD1E1, 0x538D, 0xD8C7, 0x538E, 0x857D,
- 0x538F, 0x857E, 0x5390, 0x8580, 0x5391, 0x8581, 0x5392, 0x8582,
- 0x5393, 0x8583, 0x5394, 0x8584, 0x5395, 0xB2DE, 0x5396, 0x8585,
- 0x5397, 0x8586, 0x5398, 0xC0E5, 0x5399, 0x8587, 0x539A, 0xBAF1,
- 0x539B, 0x8588, 0x539C, 0x8589, 0x539D, 0xD8C8, 0x539E, 0x858A,
- 0x539F, 0xD4AD, 0x53A0, 0x858B, 0x53A1, 0x858C, 0x53A2, 0xCFE1,
- 0x53A3, 0xD8C9, 0x53A4, 0x858D, 0x53A5, 0xD8CA, 0x53A6, 0xCFC3,
- 0x53A7, 0x858E, 0x53A8, 0xB3F8, 0x53A9, 0xBEC7, 0x53AA, 0x858F,
- 0x53AB, 0x8590, 0x53AC, 0x8591, 0x53AD, 0x8592, 0x53AE, 0xD8CB,
- 0x53AF, 0x8593, 0x53B0, 0x8594, 0x53B1, 0x8595, 0x53B2, 0x8596,
- 0x53B3, 0x8597, 0x53B4, 0x8598, 0x53B5, 0x8599, 0x53B6, 0xDBCC,
- 0x53B7, 0x859A, 0x53B8, 0x859B, 0x53B9, 0x859C, 0x53BA, 0x859D,
- 0x53BB, 0xC8A5, 0x53BC, 0x859E, 0x53BD, 0x859F, 0x53BE, 0x85A0,
- 0x53BF, 0xCFD8, 0x53C0, 0x85A1, 0x53C1, 0xC8FE, 0x53C2, 0xB2CE,
- 0x53C3, 0x85A2, 0x53C4, 0x85A3, 0x53C5, 0x85A4, 0x53C6, 0x85A5,
- 0x53C7, 0x85A6, 0x53C8, 0xD3D6, 0x53C9, 0xB2E6, 0x53CA, 0xBCB0,
- 0x53CB, 0xD3D1, 0x53CC, 0xCBAB, 0x53CD, 0xB7B4, 0x53CE, 0x85A7,
- 0x53CF, 0x85A8, 0x53D0, 0x85A9, 0x53D1, 0xB7A2, 0x53D2, 0x85AA,
- 0x53D3, 0x85AB, 0x53D4, 0xCAE5, 0x53D5, 0x85AC, 0x53D6, 0xC8A1,
- 0x53D7, 0xCADC, 0x53D8, 0xB1E4, 0x53D9, 0xD0F0, 0x53DA, 0x85AD,
- 0x53DB, 0xC5D1, 0x53DC, 0x85AE, 0x53DD, 0x85AF, 0x53DE, 0x85B0,
- 0x53DF, 0xDBC5, 0x53E0, 0xB5FE, 0x53E1, 0x85B1, 0x53E2, 0x85B2,
- 0x53E3, 0xBFDA, 0x53E4, 0xB9C5, 0x53E5, 0xBEE4, 0x53E6, 0xC1ED,
- 0x53E7, 0x85B3, 0x53E8, 0xDFB6, 0x53E9, 0xDFB5, 0x53EA, 0xD6BB,
- 0x53EB, 0xBDD0, 0x53EC, 0xD5D9, 0x53ED, 0xB0C8, 0x53EE, 0xB6A3,
- 0x53EF, 0xBFC9, 0x53F0, 0xCCA8, 0x53F1, 0xDFB3, 0x53F2, 0xCAB7,
- 0x53F3, 0xD3D2, 0x53F4, 0x85B4, 0x53F5, 0xD8CF, 0x53F6, 0xD2B6,
- 0x53F7, 0xBAC5, 0x53F8, 0xCBBE, 0x53F9, 0xCCBE, 0x53FA, 0x85B5,
- 0x53FB, 0xDFB7, 0x53FC, 0xB5F0, 0x53FD, 0xDFB4, 0x53FE, 0x85B6,
- 0x53FF, 0x85B7, 0x5400, 0x85B8, 0x5401, 0xD3F5, 0x5402, 0x85B9,
- 0x5403, 0xB3D4, 0x5404, 0xB8F7, 0x5405, 0x85BA, 0x5406, 0xDFBA,
- 0x5407, 0x85BB, 0x5408, 0xBACF, 0x5409, 0xBCAA, 0x540A, 0xB5F5,
- 0x540B, 0x85BC, 0x540C, 0xCDAC, 0x540D, 0xC3FB, 0x540E, 0xBAF3,
- 0x540F, 0xC0F4, 0x5410, 0xCDC2, 0x5411, 0xCFF2, 0x5412, 0xDFB8,
- 0x5413, 0xCFC5, 0x5414, 0x85BD, 0x5415, 0xC2C0, 0x5416, 0xDFB9,
- 0x5417, 0xC2F0, 0x5418, 0x85BE, 0x5419, 0x85BF, 0x541A, 0x85C0,
- 0x541B, 0xBEFD, 0x541C, 0x85C1, 0x541D, 0xC1DF, 0x541E, 0xCDCC,
- 0x541F, 0xD2F7, 0x5420, 0xB7CD, 0x5421, 0xDFC1, 0x5422, 0x85C2,
- 0x5423, 0xDFC4, 0x5424, 0x85C3, 0x5425, 0x85C4, 0x5426, 0xB7F1,
- 0x5427, 0xB0C9, 0x5428, 0xB6D6, 0x5429, 0xB7D4, 0x542A, 0x85C5,
- 0x542B, 0xBAAC, 0x542C, 0xCCFD, 0x542D, 0xBFD4, 0x542E, 0xCBB1,
- 0x542F, 0xC6F4, 0x5430, 0x85C6, 0x5431, 0xD6A8, 0x5432, 0xDFC5,
- 0x5433, 0x85C7, 0x5434, 0xCEE2, 0x5435, 0xB3B3, 0x5436, 0x85C8,
- 0x5437, 0x85C9, 0x5438, 0xCEFC, 0x5439, 0xB4B5, 0x543A, 0x85CA,
- 0x543B, 0xCEC7, 0x543C, 0xBAF0, 0x543D, 0x85CB, 0x543E, 0xCEE1,
- 0x543F, 0x85CC, 0x5440, 0xD1BD, 0x5441, 0x85CD, 0x5442, 0x85CE,
- 0x5443, 0xDFC0, 0x5444, 0x85CF, 0x5445, 0x85D0, 0x5446, 0xB4F4,
- 0x5447, 0x85D1, 0x5448, 0xB3CA, 0x5449, 0x85D2, 0x544A, 0xB8E6,
- 0x544B, 0xDFBB, 0x544C, 0x85D3, 0x544D, 0x85D4, 0x544E, 0x85D5,
- 0x544F, 0x85D6, 0x5450, 0xC4C5, 0x5451, 0x85D7, 0x5452, 0xDFBC,
- 0x5453, 0xDFBD, 0x5454, 0xDFBE, 0x5455, 0xC5BB, 0x5456, 0xDFBF,
- 0x5457, 0xDFC2, 0x5458, 0xD4B1, 0x5459, 0xDFC3, 0x545A, 0x85D8,
- 0x545B, 0xC7BA, 0x545C, 0xCED8, 0x545D, 0x85D9, 0x545E, 0x85DA,
- 0x545F, 0x85DB, 0x5460, 0x85DC, 0x5461, 0x85DD, 0x5462, 0xC4D8,
- 0x5463, 0x85DE, 0x5464, 0xDFCA, 0x5465, 0x85DF, 0x5466, 0xDFCF,
- 0x5467, 0x85E0, 0x5468, 0xD6DC, 0x5469, 0x85E1, 0x546A, 0x85E2,
- 0x546B, 0x85E3, 0x546C, 0x85E4, 0x546D, 0x85E5, 0x546E, 0x85E6,
- 0x546F, 0x85E7, 0x5470, 0x85E8, 0x5471, 0xDFC9, 0x5472, 0xDFDA,
- 0x5473, 0xCEB6, 0x5474, 0x85E9, 0x5475, 0xBAC7, 0x5476, 0xDFCE,
- 0x5477, 0xDFC8, 0x5478, 0xC5DE, 0x5479, 0x85EA, 0x547A, 0x85EB,
- 0x547B, 0xC9EB, 0x547C, 0xBAF4, 0x547D, 0xC3FC, 0x547E, 0x85EC,
- 0x547F, 0x85ED, 0x5480, 0xBED7, 0x5481, 0x85EE, 0x5482, 0xDFC6,
- 0x5483, 0x85EF, 0x5484, 0xDFCD, 0x5485, 0x85F0, 0x5486, 0xC5D8,
- 0x5487, 0x85F1, 0x5488, 0x85F2, 0x5489, 0x85F3, 0x548A, 0x85F4,
- 0x548B, 0xD5A6, 0x548C, 0xBACD, 0x548D, 0x85F5, 0x548E, 0xBECC,
- 0x548F, 0xD3BD, 0x5490, 0xB8C0, 0x5491, 0x85F6, 0x5492, 0xD6E4,
- 0x5493, 0x85F7, 0x5494, 0xDFC7, 0x5495, 0xB9BE, 0x5496, 0xBFA7,
- 0x5497, 0x85F8, 0x5498, 0x85F9, 0x5499, 0xC1FC, 0x549A, 0xDFCB,
- 0x549B, 0xDFCC, 0x549C, 0x85FA, 0x549D, 0xDFD0, 0x549E, 0x85FB,
- 0x549F, 0x85FC, 0x54A0, 0x85FD, 0x54A1, 0x85FE, 0x54A2, 0x8640,
- 0x54A3, 0xDFDB, 0x54A4, 0xDFE5, 0x54A5, 0x8641, 0x54A6, 0xDFD7,
- 0x54A7, 0xDFD6, 0x54A8, 0xD7C9, 0x54A9, 0xDFE3, 0x54AA, 0xDFE4,
- 0x54AB, 0xE5EB, 0x54AC, 0xD2A7, 0x54AD, 0xDFD2, 0x54AE, 0x8642,
- 0x54AF, 0xBFA9, 0x54B0, 0x8643, 0x54B1, 0xD4DB, 0x54B2, 0x8644,
- 0x54B3, 0xBFC8, 0x54B4, 0xDFD4, 0x54B5, 0x8645, 0x54B6, 0x8646,
- 0x54B7, 0x8647, 0x54B8, 0xCFCC, 0x54B9, 0x8648, 0x54BA, 0x8649,
- 0x54BB, 0xDFDD, 0x54BC, 0x864A, 0x54BD, 0xD1CA, 0x54BE, 0x864B,
- 0x54BF, 0xDFDE, 0x54C0, 0xB0A7, 0x54C1, 0xC6B7, 0x54C2, 0xDFD3,
- 0x54C3, 0x864C, 0x54C4, 0xBAE5, 0x54C5, 0x864D, 0x54C6, 0xB6DF,
- 0x54C7, 0xCDDB, 0x54C8, 0xB9FE, 0x54C9, 0xD4D5, 0x54CA, 0x864E,
- 0x54CB, 0x864F, 0x54CC, 0xDFDF, 0x54CD, 0xCFEC, 0x54CE, 0xB0A5,
- 0x54CF, 0xDFE7, 0x54D0, 0xDFD1, 0x54D1, 0xD1C6, 0x54D2, 0xDFD5,
- 0x54D3, 0xDFD8, 0x54D4, 0xDFD9, 0x54D5, 0xDFDC, 0x54D6, 0x8650,
- 0x54D7, 0xBBA9, 0x54D8, 0x8651, 0x54D9, 0xDFE0, 0x54DA, 0xDFE1,
- 0x54DB, 0x8652, 0x54DC, 0xDFE2, 0x54DD, 0xDFE6, 0x54DE, 0xDFE8,
- 0x54DF, 0xD3B4, 0x54E0, 0x8653, 0x54E1, 0x8654, 0x54E2, 0x8655,
- 0x54E3, 0x8656, 0x54E4, 0x8657, 0x54E5, 0xB8E7, 0x54E6, 0xC5B6,
- 0x54E7, 0xDFEA, 0x54E8, 0xC9DA, 0x54E9, 0xC1A8, 0x54EA, 0xC4C4,
- 0x54EB, 0x8658, 0x54EC, 0x8659, 0x54ED, 0xBFDE, 0x54EE, 0xCFF8,
- 0x54EF, 0x865A, 0x54F0, 0x865B, 0x54F1, 0x865C, 0x54F2, 0xD5DC,
- 0x54F3, 0xDFEE, 0x54F4, 0x865D, 0x54F5, 0x865E, 0x54F6, 0x865F,
- 0x54F7, 0x8660, 0x54F8, 0x8661, 0x54F9, 0x8662, 0x54FA, 0xB2B8,
- 0x54FB, 0x8663, 0x54FC, 0xBADF, 0x54FD, 0xDFEC, 0x54FE, 0x8664,
- 0x54FF, 0xDBC1, 0x5500, 0x8665, 0x5501, 0xD1E4, 0x5502, 0x8666,
- 0x5503, 0x8667, 0x5504, 0x8668, 0x5505, 0x8669, 0x5506, 0xCBF4,
- 0x5507, 0xB4BD, 0x5508, 0x866A, 0x5509, 0xB0A6, 0x550A, 0x866B,
- 0x550B, 0x866C, 0x550C, 0x866D, 0x550D, 0x866E, 0x550E, 0x866F,
- 0x550F, 0xDFF1, 0x5510, 0xCCC6, 0x5511, 0xDFF2, 0x5512, 0x8670,
- 0x5513, 0x8671, 0x5514, 0xDFED, 0x5515, 0x8672, 0x5516, 0x8673,
- 0x5517, 0x8674, 0x5518, 0x8675, 0x5519, 0x8676, 0x551A, 0x8677,
- 0x551B, 0xDFE9, 0x551C, 0x8678, 0x551D, 0x8679, 0x551E, 0x867A,
- 0x551F, 0x867B, 0x5520, 0xDFEB, 0x5521, 0x867C, 0x5522, 0xDFEF,
- 0x5523, 0xDFF0, 0x5524, 0xBBBD, 0x5525, 0x867D, 0x5526, 0x867E,
- 0x5527, 0xDFF3, 0x5528, 0x8680, 0x5529, 0x8681, 0x552A, 0xDFF4,
- 0x552B, 0x8682, 0x552C, 0xBBA3, 0x552D, 0x8683, 0x552E, 0xCADB,
- 0x552F, 0xCEA8, 0x5530, 0xE0A7, 0x5531, 0xB3AA, 0x5532, 0x8684,
- 0x5533, 0xE0A6, 0x5534, 0x8685, 0x5535, 0x8686, 0x5536, 0x8687,
- 0x5537, 0xE0A1, 0x5538, 0x8688, 0x5539, 0x8689, 0x553A, 0x868A,
- 0x553B, 0x868B, 0x553C, 0xDFFE, 0x553D, 0x868C, 0x553E, 0xCDD9,
- 0x553F, 0xDFFC, 0x5540, 0x868D, 0x5541, 0xDFFA, 0x5542, 0x868E,
- 0x5543, 0xBFD0, 0x5544, 0xD7C4, 0x5545, 0x868F, 0x5546, 0xC9CC,
- 0x5547, 0x8690, 0x5548, 0x8691, 0x5549, 0xDFF8, 0x554A, 0xB0A1,
- 0x554B, 0x8692, 0x554C, 0x8693, 0x554D, 0x8694, 0x554E, 0x8695,
- 0x554F, 0x8696, 0x5550, 0xDFFD, 0x5551, 0x8697, 0x5552, 0x8698,
- 0x5553, 0x8699, 0x5554, 0x869A, 0x5555, 0xDFFB, 0x5556, 0xE0A2,
- 0x5557, 0x869B, 0x5558, 0x869C, 0x5559, 0x869D, 0x555A, 0x869E,
- 0x555B, 0x869F, 0x555C, 0xE0A8, 0x555D, 0x86A0, 0x555E, 0x86A1,
- 0x555F, 0x86A2, 0x5560, 0x86A3, 0x5561, 0xB7C8, 0x5562, 0x86A4,
- 0x5563, 0x86A5, 0x5564, 0xC6A1, 0x5565, 0xC9B6, 0x5566, 0xC0B2,
- 0x5567, 0xDFF5, 0x5568, 0x86A6, 0x5569, 0x86A7, 0x556A, 0xC5BE,
- 0x556B, 0x86A8, 0x556C, 0xD8C4, 0x556D, 0xDFF9, 0x556E, 0xC4F6,
- 0x556F, 0x86A9, 0x5570, 0x86AA, 0x5571, 0x86AB, 0x5572, 0x86AC,
- 0x5573, 0x86AD, 0x5574, 0x86AE, 0x5575, 0xE0A3, 0x5576, 0xE0A4,
- 0x5577, 0xE0A5, 0x5578, 0xD0A5, 0x5579, 0x86AF, 0x557A, 0x86B0,
- 0x557B, 0xE0B4, 0x557C, 0xCCE4, 0x557D, 0x86B1, 0x557E, 0xE0B1,
- 0x557F, 0x86B2, 0x5580, 0xBFA6, 0x5581, 0xE0AF, 0x5582, 0xCEB9,
- 0x5583, 0xE0AB, 0x5584, 0xC9C6, 0x5585, 0x86B3, 0x5586, 0x86B4,
- 0x5587, 0xC0AE, 0x5588, 0xE0AE, 0x5589, 0xBAED, 0x558A, 0xBAB0,
- 0x558B, 0xE0A9, 0x558C, 0x86B5, 0x558D, 0x86B6, 0x558E, 0x86B7,
- 0x558F, 0xDFF6, 0x5590, 0x86B8, 0x5591, 0xE0B3, 0x5592, 0x86B9,
- 0x5593, 0x86BA, 0x5594, 0xE0B8, 0x5595, 0x86BB, 0x5596, 0x86BC,
- 0x5597, 0x86BD, 0x5598, 0xB4AD, 0x5599, 0xE0B9, 0x559A, 0x86BE,
- 0x559B, 0x86BF, 0x559C, 0xCFB2, 0x559D, 0xBAC8, 0x559E, 0x86C0,
- 0x559F, 0xE0B0, 0x55A0, 0x86C1, 0x55A1, 0x86C2, 0x55A2, 0x86C3,
- 0x55A3, 0x86C4, 0x55A4, 0x86C5, 0x55A5, 0x86C6, 0x55A6, 0x86C7,
- 0x55A7, 0xD0FA, 0x55A8, 0x86C8, 0x55A9, 0x86C9, 0x55AA, 0x86CA,
- 0x55AB, 0x86CB, 0x55AC, 0x86CC, 0x55AD, 0x86CD, 0x55AE, 0x86CE,
- 0x55AF, 0x86CF, 0x55B0, 0x86D0, 0x55B1, 0xE0AC, 0x55B2, 0x86D1,
- 0x55B3, 0xD4FB, 0x55B4, 0x86D2, 0x55B5, 0xDFF7, 0x55B6, 0x86D3,
- 0x55B7, 0xC5E7, 0x55B8, 0x86D4, 0x55B9, 0xE0AD, 0x55BA, 0x86D5,
- 0x55BB, 0xD3F7, 0x55BC, 0x86D6, 0x55BD, 0xE0B6, 0x55BE, 0xE0B7,
- 0x55BF, 0x86D7, 0x55C0, 0x86D8, 0x55C1, 0x86D9, 0x55C2, 0x86DA,
- 0x55C3, 0x86DB, 0x55C4, 0xE0C4, 0x55C5, 0xD0E1, 0x55C6, 0x86DC,
- 0x55C7, 0x86DD, 0x55C8, 0x86DE, 0x55C9, 0xE0BC, 0x55CA, 0x86DF,
- 0x55CB, 0x86E0, 0x55CC, 0xE0C9, 0x55CD, 0xE0CA, 0x55CE, 0x86E1,
- 0x55CF, 0x86E2, 0x55D0, 0x86E3, 0x55D1, 0xE0BE, 0x55D2, 0xE0AA,
- 0x55D3, 0xC9A4, 0x55D4, 0xE0C1, 0x55D5, 0x86E4, 0x55D6, 0xE0B2,
- 0x55D7, 0x86E5, 0x55D8, 0x86E6, 0x55D9, 0x86E7, 0x55DA, 0x86E8,
- 0x55DB, 0x86E9, 0x55DC, 0xCAC8, 0x55DD, 0xE0C3, 0x55DE, 0x86EA,
- 0x55DF, 0xE0B5, 0x55E0, 0x86EB, 0x55E1, 0xCECB, 0x55E2, 0x86EC,
- 0x55E3, 0xCBC3, 0x55E4, 0xE0CD, 0x55E5, 0xE0C6, 0x55E6, 0xE0C2,
- 0x55E7, 0x86ED, 0x55E8, 0xE0CB, 0x55E9, 0x86EE, 0x55EA, 0xE0BA,
- 0x55EB, 0xE0BF, 0x55EC, 0xE0C0, 0x55ED, 0x86EF, 0x55EE, 0x86F0,
- 0x55EF, 0xE0C5, 0x55F0, 0x86F1, 0x55F1, 0x86F2, 0x55F2, 0xE0C7,
- 0x55F3, 0xE0C8, 0x55F4, 0x86F3, 0x55F5, 0xE0CC, 0x55F6, 0x86F4,
- 0x55F7, 0xE0BB, 0x55F8, 0x86F5, 0x55F9, 0x86F6, 0x55FA, 0x86F7,
- 0x55FB, 0x86F8, 0x55FC, 0x86F9, 0x55FD, 0xCBD4, 0x55FE, 0xE0D5,
- 0x55FF, 0x86FA, 0x5600, 0xE0D6, 0x5601, 0xE0D2, 0x5602, 0x86FB,
- 0x5603, 0x86FC, 0x5604, 0x86FD, 0x5605, 0x86FE, 0x5606, 0x8740,
- 0x5607, 0x8741, 0x5608, 0xE0D0, 0x5609, 0xBCCE, 0x560A, 0x8742,
- 0x560B, 0x8743, 0x560C, 0xE0D1, 0x560D, 0x8744, 0x560E, 0xB8C2,
- 0x560F, 0xD8C5, 0x5610, 0x8745, 0x5611, 0x8746, 0x5612, 0x8747,
- 0x5613, 0x8748, 0x5614, 0x8749, 0x5615, 0x874A, 0x5616, 0x874B,
- 0x5617, 0x874C, 0x5618, 0xD0EA, 0x5619, 0x874D, 0x561A, 0x874E,
- 0x561B, 0xC2EF, 0x561C, 0x874F, 0x561D, 0x8750, 0x561E, 0xE0CF,
- 0x561F, 0xE0BD, 0x5620, 0x8751, 0x5621, 0x8752, 0x5622, 0x8753,
- 0x5623, 0xE0D4, 0x5624, 0xE0D3, 0x5625, 0x8754, 0x5626, 0x8755,
- 0x5627, 0xE0D7, 0x5628, 0x8756, 0x5629, 0x8757, 0x562A, 0x8758,
- 0x562B, 0x8759, 0x562C, 0xE0DC, 0x562D, 0xE0D8, 0x562E, 0x875A,
- 0x562F, 0x875B, 0x5630, 0x875C, 0x5631, 0xD6F6, 0x5632, 0xB3B0,
- 0x5633, 0x875D, 0x5634, 0xD7EC, 0x5635, 0x875E, 0x5636, 0xCBBB,
- 0x5637, 0x875F, 0x5638, 0x8760, 0x5639, 0xE0DA, 0x563A, 0x8761,
- 0x563B, 0xCEFB, 0x563C, 0x8762, 0x563D, 0x8763, 0x563E, 0x8764,
- 0x563F, 0xBAD9, 0x5640, 0x8765, 0x5641, 0x8766, 0x5642, 0x8767,
- 0x5643, 0x8768, 0x5644, 0x8769, 0x5645, 0x876A, 0x5646, 0x876B,
- 0x5647, 0x876C, 0x5648, 0x876D, 0x5649, 0x876E, 0x564A, 0x876F,
- 0x564B, 0x8770, 0x564C, 0xE0E1, 0x564D, 0xE0DD, 0x564E, 0xD2AD,
- 0x564F, 0x8771, 0x5650, 0x8772, 0x5651, 0x8773, 0x5652, 0x8774,
- 0x5653, 0x8775, 0x5654, 0xE0E2, 0x5655, 0x8776, 0x5656, 0x8777,
- 0x5657, 0xE0DB, 0x5658, 0xE0D9, 0x5659, 0xE0DF, 0x565A, 0x8778,
- 0x565B, 0x8779, 0x565C, 0xE0E0, 0x565D, 0x877A, 0x565E, 0x877B,
- 0x565F, 0x877C, 0x5660, 0x877D, 0x5661, 0x877E, 0x5662, 0xE0DE,
- 0x5663, 0x8780, 0x5664, 0xE0E4, 0x5665, 0x8781, 0x5666, 0x8782,
- 0x5667, 0x8783, 0x5668, 0xC6F7, 0x5669, 0xD8AC, 0x566A, 0xD4EB,
- 0x566B, 0xE0E6, 0x566C, 0xCAC9, 0x566D, 0x8784, 0x566E, 0x8785,
- 0x566F, 0x8786, 0x5670, 0x8787, 0x5671, 0xE0E5, 0x5672, 0x8788,
- 0x5673, 0x8789, 0x5674, 0x878A, 0x5675, 0x878B, 0x5676, 0xB8C1,
- 0x5677, 0x878C, 0x5678, 0x878D, 0x5679, 0x878E, 0x567A, 0x878F,
- 0x567B, 0xE0E7, 0x567C, 0xE0E8, 0x567D, 0x8790, 0x567E, 0x8791,
- 0x567F, 0x8792, 0x5680, 0x8793, 0x5681, 0x8794, 0x5682, 0x8795,
- 0x5683, 0x8796, 0x5684, 0x8797, 0x5685, 0xE0E9, 0x5686, 0xE0E3,
- 0x5687, 0x8798, 0x5688, 0x8799, 0x5689, 0x879A, 0x568A, 0x879B,
- 0x568B, 0x879C, 0x568C, 0x879D, 0x568D, 0x879E, 0x568E, 0xBABF,
- 0x568F, 0xCCE7, 0x5690, 0x879F, 0x5691, 0x87A0, 0x5692, 0x87A1,
- 0x5693, 0xE0EA, 0x5694, 0x87A2, 0x5695, 0x87A3, 0x5696, 0x87A4,
- 0x5697, 0x87A5, 0x5698, 0x87A6, 0x5699, 0x87A7, 0x569A, 0x87A8,
- 0x569B, 0x87A9, 0x569C, 0x87AA, 0x569D, 0x87AB, 0x569E, 0x87AC,
- 0x569F, 0x87AD, 0x56A0, 0x87AE, 0x56A1, 0x87AF, 0x56A2, 0x87B0,
- 0x56A3, 0xCFF9, 0x56A4, 0x87B1, 0x56A5, 0x87B2, 0x56A6, 0x87B3,
- 0x56A7, 0x87B4, 0x56A8, 0x87B5, 0x56A9, 0x87B6, 0x56AA, 0x87B7,
- 0x56AB, 0x87B8, 0x56AC, 0x87B9, 0x56AD, 0x87BA, 0x56AE, 0x87BB,
- 0x56AF, 0xE0EB, 0x56B0, 0x87BC, 0x56B1, 0x87BD, 0x56B2, 0x87BE,
- 0x56B3, 0x87BF, 0x56B4, 0x87C0, 0x56B5, 0x87C1, 0x56B6, 0x87C2,
- 0x56B7, 0xC8C2, 0x56B8, 0x87C3, 0x56B9, 0x87C4, 0x56BA, 0x87C5,
- 0x56BB, 0x87C6, 0x56BC, 0xBDC0, 0x56BD, 0x87C7, 0x56BE, 0x87C8,
- 0x56BF, 0x87C9, 0x56C0, 0x87CA, 0x56C1, 0x87CB, 0x56C2, 0x87CC,
- 0x56C3, 0x87CD, 0x56C4, 0x87CE, 0x56C5, 0x87CF, 0x56C6, 0x87D0,
- 0x56C7, 0x87D1, 0x56C8, 0x87D2, 0x56C9, 0x87D3, 0x56CA, 0xC4D2,
- 0x56CB, 0x87D4, 0x56CC, 0x87D5, 0x56CD, 0x87D6, 0x56CE, 0x87D7,
- 0x56CF, 0x87D8, 0x56D0, 0x87D9, 0x56D1, 0x87DA, 0x56D2, 0x87DB,
- 0x56D3, 0x87DC, 0x56D4, 0xE0EC, 0x56D5, 0x87DD, 0x56D6, 0x87DE,
- 0x56D7, 0xE0ED, 0x56D8, 0x87DF, 0x56D9, 0x87E0, 0x56DA, 0xC7F4,
- 0x56DB, 0xCBC4, 0x56DC, 0x87E1, 0x56DD, 0xE0EE, 0x56DE, 0xBBD8,
- 0x56DF, 0xD8B6, 0x56E0, 0xD2F2, 0x56E1, 0xE0EF, 0x56E2, 0xCDC5,
- 0x56E3, 0x87E2, 0x56E4, 0xB6DA, 0x56E5, 0x87E3, 0x56E6, 0x87E4,
- 0x56E7, 0x87E5, 0x56E8, 0x87E6, 0x56E9, 0x87E7, 0x56EA, 0x87E8,
- 0x56EB, 0xE0F1, 0x56EC, 0x87E9, 0x56ED, 0xD4B0, 0x56EE, 0x87EA,
- 0x56EF, 0x87EB, 0x56F0, 0xC0A7, 0x56F1, 0xB4D1, 0x56F2, 0x87EC,
- 0x56F3, 0x87ED, 0x56F4, 0xCEA7, 0x56F5, 0xE0F0, 0x56F6, 0x87EE,
- 0x56F7, 0x87EF, 0x56F8, 0x87F0, 0x56F9, 0xE0F2, 0x56FA, 0xB9CC,
- 0x56FB, 0x87F1, 0x56FC, 0x87F2, 0x56FD, 0xB9FA, 0x56FE, 0xCDBC,
- 0x56FF, 0xE0F3, 0x5700, 0x87F3, 0x5701, 0x87F4, 0x5702, 0x87F5,
- 0x5703, 0xC6D4, 0x5704, 0xE0F4, 0x5705, 0x87F6, 0x5706, 0xD4B2,
- 0x5707, 0x87F7, 0x5708, 0xC8A6, 0x5709, 0xE0F6, 0x570A, 0xE0F5,
- 0x570B, 0x87F8, 0x570C, 0x87F9, 0x570D, 0x87FA, 0x570E, 0x87FB,
- 0x570F, 0x87FC, 0x5710, 0x87FD, 0x5711, 0x87FE, 0x5712, 0x8840,
- 0x5713, 0x8841, 0x5714, 0x8842, 0x5715, 0x8843, 0x5716, 0x8844,
- 0x5717, 0x8845, 0x5718, 0x8846, 0x5719, 0x8847, 0x571A, 0x8848,
- 0x571B, 0x8849, 0x571C, 0xE0F7, 0x571D, 0x884A, 0x571E, 0x884B,
- 0x571F, 0xCDC1, 0x5720, 0x884C, 0x5721, 0x884D, 0x5722, 0x884E,
- 0x5723, 0xCAA5, 0x5724, 0x884F, 0x5725, 0x8850, 0x5726, 0x8851,
- 0x5727, 0x8852, 0x5728, 0xD4DA, 0x5729, 0xDBD7, 0x572A, 0xDBD9,
- 0x572B, 0x8853, 0x572C, 0xDBD8, 0x572D, 0xB9E7, 0x572E, 0xDBDC,
- 0x572F, 0xDBDD, 0x5730, 0xB5D8, 0x5731, 0x8854, 0x5732, 0x8855,
- 0x5733, 0xDBDA, 0x5734, 0x8856, 0x5735, 0x8857, 0x5736, 0x8858,
- 0x5737, 0x8859, 0x5738, 0x885A, 0x5739, 0xDBDB, 0x573A, 0xB3A1,
- 0x573B, 0xDBDF, 0x573C, 0x885B, 0x573D, 0x885C, 0x573E, 0xBBF8,
- 0x573F, 0x885D, 0x5740, 0xD6B7, 0x5741, 0x885E, 0x5742, 0xDBE0,
- 0x5743, 0x885F, 0x5744, 0x8860, 0x5745, 0x8861, 0x5746, 0x8862,
- 0x5747, 0xBEF9, 0x5748, 0x8863, 0x5749, 0x8864, 0x574A, 0xB7BB,
- 0x574B, 0x8865, 0x574C, 0xDBD0, 0x574D, 0xCCAE, 0x574E, 0xBFB2,
- 0x574F, 0xBBB5, 0x5750, 0xD7F8, 0x5751, 0xBFD3, 0x5752, 0x8866,
- 0x5753, 0x8867, 0x5754, 0x8868, 0x5755, 0x8869, 0x5756, 0x886A,
- 0x5757, 0xBFE9, 0x5758, 0x886B, 0x5759, 0x886C, 0x575A, 0xBCE1,
- 0x575B, 0xCCB3, 0x575C, 0xDBDE, 0x575D, 0xB0D3, 0x575E, 0xCEEB,
- 0x575F, 0xB7D8, 0x5760, 0xD7B9, 0x5761, 0xC6C2, 0x5762, 0x886D,
- 0x5763, 0x886E, 0x5764, 0xC0A4, 0x5765, 0x886F, 0x5766, 0xCCB9,
- 0x5767, 0x8870, 0x5768, 0xDBE7, 0x5769, 0xDBE1, 0x576A, 0xC6BA,
- 0x576B, 0xDBE3, 0x576C, 0x8871, 0x576D, 0xDBE8, 0x576E, 0x8872,
- 0x576F, 0xC5F7, 0x5770, 0x8873, 0x5771, 0x8874, 0x5772, 0x8875,
- 0x5773, 0xDBEA, 0x5774, 0x8876, 0x5775, 0x8877, 0x5776, 0xDBE9,
- 0x5777, 0xBFC0, 0x5778, 0x8878, 0x5779, 0x8879, 0x577A, 0x887A,
- 0x577B, 0xDBE6, 0x577C, 0xDBE5, 0x577D, 0x887B, 0x577E, 0x887C,
- 0x577F, 0x887D, 0x5780, 0x887E, 0x5781, 0x8880, 0x5782, 0xB4B9,
- 0x5783, 0xC0AC, 0x5784, 0xC2A2, 0x5785, 0xDBE2, 0x5786, 0xDBE4,
- 0x5787, 0x8881, 0x5788, 0x8882, 0x5789, 0x8883, 0x578A, 0x8884,
- 0x578B, 0xD0CD, 0x578C, 0xDBED, 0x578D, 0x8885, 0x578E, 0x8886,
- 0x578F, 0x8887, 0x5790, 0x8888, 0x5791, 0x8889, 0x5792, 0xC0DD,
- 0x5793, 0xDBF2, 0x5794, 0x888A, 0x5795, 0x888B, 0x5796, 0x888C,
- 0x5797, 0x888D, 0x5798, 0x888E, 0x5799, 0x888F, 0x579A, 0x8890,
- 0x579B, 0xB6E2, 0x579C, 0x8891, 0x579D, 0x8892, 0x579E, 0x8893,
- 0x579F, 0x8894, 0x57A0, 0xDBF3, 0x57A1, 0xDBD2, 0x57A2, 0xB9B8,
- 0x57A3, 0xD4AB, 0x57A4, 0xDBEC, 0x57A5, 0x8895, 0x57A6, 0xBFD1,
- 0x57A7, 0xDBF0, 0x57A8, 0x8896, 0x57A9, 0xDBD1, 0x57AA, 0x8897,
- 0x57AB, 0xB5E6, 0x57AC, 0x8898, 0x57AD, 0xDBEB, 0x57AE, 0xBFE5,
- 0x57AF, 0x8899, 0x57B0, 0x889A, 0x57B1, 0x889B, 0x57B2, 0xDBEE,
- 0x57B3, 0x889C, 0x57B4, 0xDBF1, 0x57B5, 0x889D, 0x57B6, 0x889E,
- 0x57B7, 0x889F, 0x57B8, 0xDBF9, 0x57B9, 0x88A0, 0x57BA, 0x88A1,
- 0x57BB, 0x88A2, 0x57BC, 0x88A3, 0x57BD, 0x88A4, 0x57BE, 0x88A5,
- 0x57BF, 0x88A6, 0x57C0, 0x88A7, 0x57C1, 0x88A8, 0x57C2, 0xB9A1,
- 0x57C3, 0xB0A3, 0x57C4, 0x88A9, 0x57C5, 0x88AA, 0x57C6, 0x88AB,
- 0x57C7, 0x88AC, 0x57C8, 0x88AD, 0x57C9, 0x88AE, 0x57CA, 0x88AF,
- 0x57CB, 0xC2F1, 0x57CC, 0x88B0, 0x57CD, 0x88B1, 0x57CE, 0xB3C7,
- 0x57CF, 0xDBEF, 0x57D0, 0x88B2, 0x57D1, 0x88B3, 0x57D2, 0xDBF8,
- 0x57D3, 0x88B4, 0x57D4, 0xC6D2, 0x57D5, 0xDBF4, 0x57D6, 0x88B5,
- 0x57D7, 0x88B6, 0x57D8, 0xDBF5, 0x57D9, 0xDBF7, 0x57DA, 0xDBF6,
- 0x57DB, 0x88B7, 0x57DC, 0x88B8, 0x57DD, 0xDBFE, 0x57DE, 0x88B9,
- 0x57DF, 0xD3F2, 0x57E0, 0xB2BA, 0x57E1, 0x88BA, 0x57E2, 0x88BB,
- 0x57E3, 0x88BC, 0x57E4, 0xDBFD, 0x57E5, 0x88BD, 0x57E6, 0x88BE,
- 0x57E7, 0x88BF, 0x57E8, 0x88C0, 0x57E9, 0x88C1, 0x57EA, 0x88C2,
- 0x57EB, 0x88C3, 0x57EC, 0x88C4, 0x57ED, 0xDCA4, 0x57EE, 0x88C5,
- 0x57EF, 0xDBFB, 0x57F0, 0x88C6, 0x57F1, 0x88C7, 0x57F2, 0x88C8,
- 0x57F3, 0x88C9, 0x57F4, 0xDBFA, 0x57F5, 0x88CA, 0x57F6, 0x88CB,
- 0x57F7, 0x88CC, 0x57F8, 0xDBFC, 0x57F9, 0xC5E0, 0x57FA, 0xBBF9,
- 0x57FB, 0x88CD, 0x57FC, 0x88CE, 0x57FD, 0xDCA3, 0x57FE, 0x88CF,
- 0x57FF, 0x88D0, 0x5800, 0xDCA5, 0x5801, 0x88D1, 0x5802, 0xCCC3,
- 0x5803, 0x88D2, 0x5804, 0x88D3, 0x5805, 0x88D4, 0x5806, 0xB6D1,
- 0x5807, 0xDDC0, 0x5808, 0x88D5, 0x5809, 0x88D6, 0x580A, 0x88D7,
- 0x580B, 0xDCA1, 0x580C, 0x88D8, 0x580D, 0xDCA2, 0x580E, 0x88D9,
- 0x580F, 0x88DA, 0x5810, 0x88DB, 0x5811, 0xC7B5, 0x5812, 0x88DC,
- 0x5813, 0x88DD, 0x5814, 0x88DE, 0x5815, 0xB6E9, 0x5816, 0x88DF,
- 0x5817, 0x88E0, 0x5818, 0x88E1, 0x5819, 0xDCA7, 0x581A, 0x88E2,
- 0x581B, 0x88E3, 0x581C, 0x88E4, 0x581D, 0x88E5, 0x581E, 0xDCA6,
- 0x581F, 0x88E6, 0x5820, 0xDCA9, 0x5821, 0xB1A4, 0x5822, 0x88E7,
- 0x5823, 0x88E8, 0x5824, 0xB5CC, 0x5825, 0x88E9, 0x5826, 0x88EA,
- 0x5827, 0x88EB, 0x5828, 0x88EC, 0x5829, 0x88ED, 0x582A, 0xBFB0,
- 0x582B, 0x88EE, 0x582C, 0x88EF, 0x582D, 0x88F0, 0x582E, 0x88F1,
- 0x582F, 0x88F2, 0x5830, 0xD1DF, 0x5831, 0x88F3, 0x5832, 0x88F4,
- 0x5833, 0x88F5, 0x5834, 0x88F6, 0x5835, 0xB6C2, 0x5836, 0x88F7,
- 0x5837, 0x88F8, 0x5838, 0x88F9, 0x5839, 0x88FA, 0x583A, 0x88FB,
- 0x583B, 0x88FC, 0x583C, 0x88FD, 0x583D, 0x88FE, 0x583E, 0x8940,
- 0x583F, 0x8941, 0x5840, 0x8942, 0x5841, 0x8943, 0x5842, 0x8944,
- 0x5843, 0x8945, 0x5844, 0xDCA8, 0x5845, 0x8946, 0x5846, 0x8947,
- 0x5847, 0x8948, 0x5848, 0x8949, 0x5849, 0x894A, 0x584A, 0x894B,
- 0x584B, 0x894C, 0x584C, 0xCBFA, 0x584D, 0xEBF3, 0x584E, 0x894D,
- 0x584F, 0x894E, 0x5850, 0x894F, 0x5851, 0xCBDC, 0x5852, 0x8950,
- 0x5853, 0x8951, 0x5854, 0xCBFE, 0x5855, 0x8952, 0x5856, 0x8953,
- 0x5857, 0x8954, 0x5858, 0xCCC1, 0x5859, 0x8955, 0x585A, 0x8956,
- 0x585B, 0x8957, 0x585C, 0x8958, 0x585D, 0x8959, 0x585E, 0xC8FB,
- 0x585F, 0x895A, 0x5860, 0x895B, 0x5861, 0x895C, 0x5862, 0x895D,
- 0x5863, 0x895E, 0x5864, 0x895F, 0x5865, 0xDCAA, 0x5866, 0x8960,
- 0x5867, 0x8961, 0x5868, 0x8962, 0x5869, 0x8963, 0x586A, 0x8964,
- 0x586B, 0xCCEE, 0x586C, 0xDCAB, 0x586D, 0x8965, 0x586E, 0x8966,
- 0x586F, 0x8967, 0x5870, 0x8968, 0x5871, 0x8969, 0x5872, 0x896A,
- 0x5873, 0x896B, 0x5874, 0x896C, 0x5875, 0x896D, 0x5876, 0x896E,
- 0x5877, 0x896F, 0x5878, 0x8970, 0x5879, 0x8971, 0x587A, 0x8972,
- 0x587B, 0x8973, 0x587C, 0x8974, 0x587D, 0x8975, 0x587E, 0xDBD3,
- 0x587F, 0x8976, 0x5880, 0xDCAF, 0x5881, 0xDCAC, 0x5882, 0x8977,
- 0x5883, 0xBEB3, 0x5884, 0x8978, 0x5885, 0xCAFB, 0x5886, 0x8979,
- 0x5887, 0x897A, 0x5888, 0x897B, 0x5889, 0xDCAD, 0x588A, 0x897C,
- 0x588B, 0x897D, 0x588C, 0x897E, 0x588D, 0x8980, 0x588E, 0x8981,
- 0x588F, 0x8982, 0x5890, 0x8983, 0x5891, 0x8984, 0x5892, 0xC9CA,
- 0x5893, 0xC4B9, 0x5894, 0x8985, 0x5895, 0x8986, 0x5896, 0x8987,
- 0x5897, 0x8988, 0x5898, 0x8989, 0x5899, 0xC7BD, 0x589A, 0xDCAE,
- 0x589B, 0x898A, 0x589C, 0x898B, 0x589D, 0x898C, 0x589E, 0xD4F6,
- 0x589F, 0xD0E6, 0x58A0, 0x898D, 0x58A1, 0x898E, 0x58A2, 0x898F,
- 0x58A3, 0x8990, 0x58A4, 0x8991, 0x58A5, 0x8992, 0x58A6, 0x8993,
- 0x58A7, 0x8994, 0x58A8, 0xC4AB, 0x58A9, 0xB6D5, 0x58AA, 0x8995,
- 0x58AB, 0x8996, 0x58AC, 0x8997, 0x58AD, 0x8998, 0x58AE, 0x8999,
- 0x58AF, 0x899A, 0x58B0, 0x899B, 0x58B1, 0x899C, 0x58B2, 0x899D,
- 0x58B3, 0x899E, 0x58B4, 0x899F, 0x58B5, 0x89A0, 0x58B6, 0x89A1,
- 0x58B7, 0x89A2, 0x58B8, 0x89A3, 0x58B9, 0x89A4, 0x58BA, 0x89A5,
- 0x58BB, 0x89A6, 0x58BC, 0xDBD4, 0x58BD, 0x89A7, 0x58BE, 0x89A8,
- 0x58BF, 0x89A9, 0x58C0, 0x89AA, 0x58C1, 0xB1DA, 0x58C2, 0x89AB,
- 0x58C3, 0x89AC, 0x58C4, 0x89AD, 0x58C5, 0xDBD5, 0x58C6, 0x89AE,
- 0x58C7, 0x89AF, 0x58C8, 0x89B0, 0x58C9, 0x89B1, 0x58CA, 0x89B2,
- 0x58CB, 0x89B3, 0x58CC, 0x89B4, 0x58CD, 0x89B5, 0x58CE, 0x89B6,
- 0x58CF, 0x89B7, 0x58D0, 0x89B8, 0x58D1, 0xDBD6, 0x58D2, 0x89B9,
- 0x58D3, 0x89BA, 0x58D4, 0x89BB, 0x58D5, 0xBABE, 0x58D6, 0x89BC,
- 0x58D7, 0x89BD, 0x58D8, 0x89BE, 0x58D9, 0x89BF, 0x58DA, 0x89C0,
- 0x58DB, 0x89C1, 0x58DC, 0x89C2, 0x58DD, 0x89C3, 0x58DE, 0x89C4,
- 0x58DF, 0x89C5, 0x58E0, 0x89C6, 0x58E1, 0x89C7, 0x58E2, 0x89C8,
- 0x58E3, 0x89C9, 0x58E4, 0xC8C0, 0x58E5, 0x89CA, 0x58E6, 0x89CB,
- 0x58E7, 0x89CC, 0x58E8, 0x89CD, 0x58E9, 0x89CE, 0x58EA, 0x89CF,
- 0x58EB, 0xCABF, 0x58EC, 0xC8C9, 0x58ED, 0x89D0, 0x58EE, 0xD7B3,
- 0x58EF, 0x89D1, 0x58F0, 0xC9F9, 0x58F1, 0x89D2, 0x58F2, 0x89D3,
- 0x58F3, 0xBFC7, 0x58F4, 0x89D4, 0x58F5, 0x89D5, 0x58F6, 0xBAF8,
- 0x58F7, 0x89D6, 0x58F8, 0x89D7, 0x58F9, 0xD2BC, 0x58FA, 0x89D8,
- 0x58FB, 0x89D9, 0x58FC, 0x89DA, 0x58FD, 0x89DB, 0x58FE, 0x89DC,
- 0x58FF, 0x89DD, 0x5900, 0x89DE, 0x5901, 0x89DF, 0x5902, 0xE2BA,
- 0x5903, 0x89E0, 0x5904, 0xB4A6, 0x5905, 0x89E1, 0x5906, 0x89E2,
- 0x5907, 0xB1B8, 0x5908, 0x89E3, 0x5909, 0x89E4, 0x590A, 0x89E5,
- 0x590B, 0x89E6, 0x590C, 0x89E7, 0x590D, 0xB8B4, 0x590E, 0x89E8,
- 0x590F, 0xCFC4, 0x5910, 0x89E9, 0x5911, 0x89EA, 0x5912, 0x89EB,
- 0x5913, 0x89EC, 0x5914, 0xD9E7, 0x5915, 0xCFA6, 0x5916, 0xCDE2,
- 0x5917, 0x89ED, 0x5918, 0x89EE, 0x5919, 0xD9ED, 0x591A, 0xB6E0,
- 0x591B, 0x89EF, 0x591C, 0xD2B9, 0x591D, 0x89F0, 0x591E, 0x89F1,
- 0x591F, 0xB9BB, 0x5920, 0x89F2, 0x5921, 0x89F3, 0x5922, 0x89F4,
- 0x5923, 0x89F5, 0x5924, 0xE2B9, 0x5925, 0xE2B7, 0x5926, 0x89F6,
- 0x5927, 0xB4F3, 0x5928, 0x89F7, 0x5929, 0xCCEC, 0x592A, 0xCCAB,
- 0x592B, 0xB7F2, 0x592C, 0x89F8, 0x592D, 0xD8B2, 0x592E, 0xD1EB,
- 0x592F, 0xBABB, 0x5930, 0x89F9, 0x5931, 0xCAA7, 0x5932, 0x89FA,
- 0x5933, 0x89FB, 0x5934, 0xCDB7, 0x5935, 0x89FC, 0x5936, 0x89FD,
- 0x5937, 0xD2C4, 0x5938, 0xBFE4, 0x5939, 0xBCD0, 0x593A, 0xB6E1,
- 0x593B, 0x89FE, 0x593C, 0xDEC5, 0x593D, 0x8A40, 0x593E, 0x8A41,
- 0x593F, 0x8A42, 0x5940, 0x8A43, 0x5941, 0xDEC6, 0x5942, 0xDBBC,
- 0x5943, 0x8A44, 0x5944, 0xD1D9, 0x5945, 0x8A45, 0x5946, 0x8A46,
- 0x5947, 0xC6E6, 0x5948, 0xC4CE, 0x5949, 0xB7EE, 0x594A, 0x8A47,
- 0x594B, 0xB7DC, 0x594C, 0x8A48, 0x594D, 0x8A49, 0x594E, 0xBFFC,
- 0x594F, 0xD7E0, 0x5950, 0x8A4A, 0x5951, 0xC6F5, 0x5952, 0x8A4B,
- 0x5953, 0x8A4C, 0x5954, 0xB1BC, 0x5955, 0xDEC8, 0x5956, 0xBDB1,
- 0x5957, 0xCCD7, 0x5958, 0xDECA, 0x5959, 0x8A4D, 0x595A, 0xDEC9,
- 0x595B, 0x8A4E, 0x595C, 0x8A4F, 0x595D, 0x8A50, 0x595E, 0x8A51,
- 0x595F, 0x8A52, 0x5960, 0xB5EC, 0x5961, 0x8A53, 0x5962, 0xC9DD,
- 0x5963, 0x8A54, 0x5964, 0x8A55, 0x5965, 0xB0C2, 0x5966, 0x8A56,
- 0x5967, 0x8A57, 0x5968, 0x8A58, 0x5969, 0x8A59, 0x596A, 0x8A5A,
- 0x596B, 0x8A5B, 0x596C, 0x8A5C, 0x596D, 0x8A5D, 0x596E, 0x8A5E,
- 0x596F, 0x8A5F, 0x5970, 0x8A60, 0x5971, 0x8A61, 0x5972, 0x8A62,
- 0x5973, 0xC5AE, 0x5974, 0xC5AB, 0x5975, 0x8A63, 0x5976, 0xC4CC,
- 0x5977, 0x8A64, 0x5978, 0xBCE9, 0x5979, 0xCBFD, 0x597A, 0x8A65,
- 0x597B, 0x8A66, 0x597C, 0x8A67, 0x597D, 0xBAC3, 0x597E, 0x8A68,
- 0x597F, 0x8A69, 0x5980, 0x8A6A, 0x5981, 0xE5F9, 0x5982, 0xC8E7,
- 0x5983, 0xE5FA, 0x5984, 0xCDFD, 0x5985, 0x8A6B, 0x5986, 0xD7B1,
- 0x5987, 0xB8BE, 0x5988, 0xC2E8, 0x5989, 0x8A6C, 0x598A, 0xC8D1,
- 0x598B, 0x8A6D, 0x598C, 0x8A6E, 0x598D, 0xE5FB, 0x598E, 0x8A6F,
- 0x598F, 0x8A70, 0x5990, 0x8A71, 0x5991, 0x8A72, 0x5992, 0xB6CA,
- 0x5993, 0xBCCB, 0x5994, 0x8A73, 0x5995, 0x8A74, 0x5996, 0xD1FD,
- 0x5997, 0xE6A1, 0x5998, 0x8A75, 0x5999, 0xC3EE, 0x599A, 0x8A76,
- 0x599B, 0x8A77, 0x599C, 0x8A78, 0x599D, 0x8A79, 0x599E, 0xE6A4,
- 0x599F, 0x8A7A, 0x59A0, 0x8A7B, 0x59A1, 0x8A7C, 0x59A2, 0x8A7D,
- 0x59A3, 0xE5FE, 0x59A4, 0xE6A5, 0x59A5, 0xCDD7, 0x59A6, 0x8A7E,
- 0x59A7, 0x8A80, 0x59A8, 0xB7C1, 0x59A9, 0xE5FC, 0x59AA, 0xE5FD,
- 0x59AB, 0xE6A3, 0x59AC, 0x8A81, 0x59AD, 0x8A82, 0x59AE, 0xC4DD,
- 0x59AF, 0xE6A8, 0x59B0, 0x8A83, 0x59B1, 0x8A84, 0x59B2, 0xE6A7,
- 0x59B3, 0x8A85, 0x59B4, 0x8A86, 0x59B5, 0x8A87, 0x59B6, 0x8A88,
- 0x59B7, 0x8A89, 0x59B8, 0x8A8A, 0x59B9, 0xC3C3, 0x59BA, 0x8A8B,
- 0x59BB, 0xC6DE, 0x59BC, 0x8A8C, 0x59BD, 0x8A8D, 0x59BE, 0xE6AA,
- 0x59BF, 0x8A8E, 0x59C0, 0x8A8F, 0x59C1, 0x8A90, 0x59C2, 0x8A91,
- 0x59C3, 0x8A92, 0x59C4, 0x8A93, 0x59C5, 0x8A94, 0x59C6, 0xC4B7,
- 0x59C7, 0x8A95, 0x59C8, 0x8A96, 0x59C9, 0x8A97, 0x59CA, 0xE6A2,
- 0x59CB, 0xCABC, 0x59CC, 0x8A98, 0x59CD, 0x8A99, 0x59CE, 0x8A9A,
- 0x59CF, 0x8A9B, 0x59D0, 0xBDE3, 0x59D1, 0xB9C3, 0x59D2, 0xE6A6,
- 0x59D3, 0xD0D5, 0x59D4, 0xCEAF, 0x59D5, 0x8A9C, 0x59D6, 0x8A9D,
- 0x59D7, 0xE6A9, 0x59D8, 0xE6B0, 0x59D9, 0x8A9E, 0x59DA, 0xD2A6,
- 0x59DB, 0x8A9F, 0x59DC, 0xBDAA, 0x59DD, 0xE6AD, 0x59DE, 0x8AA0,
- 0x59DF, 0x8AA1, 0x59E0, 0x8AA2, 0x59E1, 0x8AA3, 0x59E2, 0x8AA4,
- 0x59E3, 0xE6AF, 0x59E4, 0x8AA5, 0x59E5, 0xC0D1, 0x59E6, 0x8AA6,
- 0x59E7, 0x8AA7, 0x59E8, 0xD2CC, 0x59E9, 0x8AA8, 0x59EA, 0x8AA9,
- 0x59EB, 0x8AAA, 0x59EC, 0xBCA7, 0x59ED, 0x8AAB, 0x59EE, 0x8AAC,
- 0x59EF, 0x8AAD, 0x59F0, 0x8AAE, 0x59F1, 0x8AAF, 0x59F2, 0x8AB0,
- 0x59F3, 0x8AB1, 0x59F4, 0x8AB2, 0x59F5, 0x8AB3, 0x59F6, 0x8AB4,
- 0x59F7, 0x8AB5, 0x59F8, 0x8AB6, 0x59F9, 0xE6B1, 0x59FA, 0x8AB7,
- 0x59FB, 0xD2F6, 0x59FC, 0x8AB8, 0x59FD, 0x8AB9, 0x59FE, 0x8ABA,
- 0x59FF, 0xD7CB, 0x5A00, 0x8ABB, 0x5A01, 0xCDFE, 0x5A02, 0x8ABC,
- 0x5A03, 0xCDDE, 0x5A04, 0xC2A6, 0x5A05, 0xE6AB, 0x5A06, 0xE6AC,
- 0x5A07, 0xBDBF, 0x5A08, 0xE6AE, 0x5A09, 0xE6B3, 0x5A0A, 0x8ABD,
- 0x5A0B, 0x8ABE, 0x5A0C, 0xE6B2, 0x5A0D, 0x8ABF, 0x5A0E, 0x8AC0,
- 0x5A0F, 0x8AC1, 0x5A10, 0x8AC2, 0x5A11, 0xE6B6, 0x5A12, 0x8AC3,
- 0x5A13, 0xE6B8, 0x5A14, 0x8AC4, 0x5A15, 0x8AC5, 0x5A16, 0x8AC6,
- 0x5A17, 0x8AC7, 0x5A18, 0xC4EF, 0x5A19, 0x8AC8, 0x5A1A, 0x8AC9,
- 0x5A1B, 0x8ACA, 0x5A1C, 0xC4C8, 0x5A1D, 0x8ACB, 0x5A1E, 0x8ACC,
- 0x5A1F, 0xBEEA, 0x5A20, 0xC9EF, 0x5A21, 0x8ACD, 0x5A22, 0x8ACE,
- 0x5A23, 0xE6B7, 0x5A24, 0x8ACF, 0x5A25, 0xB6F0, 0x5A26, 0x8AD0,
- 0x5A27, 0x8AD1, 0x5A28, 0x8AD2, 0x5A29, 0xC3E4, 0x5A2A, 0x8AD3,
- 0x5A2B, 0x8AD4, 0x5A2C, 0x8AD5, 0x5A2D, 0x8AD6, 0x5A2E, 0x8AD7,
- 0x5A2F, 0x8AD8, 0x5A30, 0x8AD9, 0x5A31, 0xD3E9, 0x5A32, 0xE6B4,
- 0x5A33, 0x8ADA, 0x5A34, 0xE6B5, 0x5A35, 0x8ADB, 0x5A36, 0xC8A2,
- 0x5A37, 0x8ADC, 0x5A38, 0x8ADD, 0x5A39, 0x8ADE, 0x5A3A, 0x8ADF,
- 0x5A3B, 0x8AE0, 0x5A3C, 0xE6BD, 0x5A3D, 0x8AE1, 0x5A3E, 0x8AE2,
- 0x5A3F, 0x8AE3, 0x5A40, 0xE6B9, 0x5A41, 0x8AE4, 0x5A42, 0x8AE5,
- 0x5A43, 0x8AE6, 0x5A44, 0x8AE7, 0x5A45, 0x8AE8, 0x5A46, 0xC6C5,
- 0x5A47, 0x8AE9, 0x5A48, 0x8AEA, 0x5A49, 0xCDF1, 0x5A4A, 0xE6BB,
- 0x5A4B, 0x8AEB, 0x5A4C, 0x8AEC, 0x5A4D, 0x8AED, 0x5A4E, 0x8AEE,
- 0x5A4F, 0x8AEF, 0x5A50, 0x8AF0, 0x5A51, 0x8AF1, 0x5A52, 0x8AF2,
- 0x5A53, 0x8AF3, 0x5A54, 0x8AF4, 0x5A55, 0xE6BC, 0x5A56, 0x8AF5,
- 0x5A57, 0x8AF6, 0x5A58, 0x8AF7, 0x5A59, 0x8AF8, 0x5A5A, 0xBBE9,
- 0x5A5B, 0x8AF9, 0x5A5C, 0x8AFA, 0x5A5D, 0x8AFB, 0x5A5E, 0x8AFC,
- 0x5A5F, 0x8AFD, 0x5A60, 0x8AFE, 0x5A61, 0x8B40, 0x5A62, 0xE6BE,
- 0x5A63, 0x8B41, 0x5A64, 0x8B42, 0x5A65, 0x8B43, 0x5A66, 0x8B44,
- 0x5A67, 0xE6BA, 0x5A68, 0x8B45, 0x5A69, 0x8B46, 0x5A6A, 0xC0B7,
- 0x5A6B, 0x8B47, 0x5A6C, 0x8B48, 0x5A6D, 0x8B49, 0x5A6E, 0x8B4A,
- 0x5A6F, 0x8B4B, 0x5A70, 0x8B4C, 0x5A71, 0x8B4D, 0x5A72, 0x8B4E,
- 0x5A73, 0x8B4F, 0x5A74, 0xD3A4, 0x5A75, 0xE6BF, 0x5A76, 0xC9F4,
- 0x5A77, 0xE6C3, 0x5A78, 0x8B50, 0x5A79, 0x8B51, 0x5A7A, 0xE6C4,
- 0x5A7B, 0x8B52, 0x5A7C, 0x8B53, 0x5A7D, 0x8B54, 0x5A7E, 0x8B55,
- 0x5A7F, 0xD0F6, 0x5A80, 0x8B56, 0x5A81, 0x8B57, 0x5A82, 0x8B58,
- 0x5A83, 0x8B59, 0x5A84, 0x8B5A, 0x5A85, 0x8B5B, 0x5A86, 0x8B5C,
- 0x5A87, 0x8B5D, 0x5A88, 0x8B5E, 0x5A89, 0x8B5F, 0x5A8A, 0x8B60,
- 0x5A8B, 0x8B61, 0x5A8C, 0x8B62, 0x5A8D, 0x8B63, 0x5A8E, 0x8B64,
- 0x5A8F, 0x8B65, 0x5A90, 0x8B66, 0x5A91, 0x8B67, 0x5A92, 0xC3BD,
- 0x5A93, 0x8B68, 0x5A94, 0x8B69, 0x5A95, 0x8B6A, 0x5A96, 0x8B6B,
- 0x5A97, 0x8B6C, 0x5A98, 0x8B6D, 0x5A99, 0x8B6E, 0x5A9A, 0xC3C4,
- 0x5A9B, 0xE6C2, 0x5A9C, 0x8B6F, 0x5A9D, 0x8B70, 0x5A9E, 0x8B71,
- 0x5A9F, 0x8B72, 0x5AA0, 0x8B73, 0x5AA1, 0x8B74, 0x5AA2, 0x8B75,
- 0x5AA3, 0x8B76, 0x5AA4, 0x8B77, 0x5AA5, 0x8B78, 0x5AA6, 0x8B79,
- 0x5AA7, 0x8B7A, 0x5AA8, 0x8B7B, 0x5AA9, 0x8B7C, 0x5AAA, 0xE6C1,
- 0x5AAB, 0x8B7D, 0x5AAC, 0x8B7E, 0x5AAD, 0x8B80, 0x5AAE, 0x8B81,
- 0x5AAF, 0x8B82, 0x5AB0, 0x8B83, 0x5AB1, 0x8B84, 0x5AB2, 0xE6C7,
- 0x5AB3, 0xCFB1, 0x5AB4, 0x8B85, 0x5AB5, 0xEBF4, 0x5AB6, 0x8B86,
- 0x5AB7, 0x8B87, 0x5AB8, 0xE6CA, 0x5AB9, 0x8B88, 0x5ABA, 0x8B89,
- 0x5ABB, 0x8B8A, 0x5ABC, 0x8B8B, 0x5ABD, 0x8B8C, 0x5ABE, 0xE6C5,
- 0x5ABF, 0x8B8D, 0x5AC0, 0x8B8E, 0x5AC1, 0xBCDE, 0x5AC2, 0xC9A9,
- 0x5AC3, 0x8B8F, 0x5AC4, 0x8B90, 0x5AC5, 0x8B91, 0x5AC6, 0x8B92,
- 0x5AC7, 0x8B93, 0x5AC8, 0x8B94, 0x5AC9, 0xBCB5, 0x5ACA, 0x8B95,
- 0x5ACB, 0x8B96, 0x5ACC, 0xCFD3, 0x5ACD, 0x8B97, 0x5ACE, 0x8B98,
- 0x5ACF, 0x8B99, 0x5AD0, 0x8B9A, 0x5AD1, 0x8B9B, 0x5AD2, 0xE6C8,
- 0x5AD3, 0x8B9C, 0x5AD4, 0xE6C9, 0x5AD5, 0x8B9D, 0x5AD6, 0xE6CE,
- 0x5AD7, 0x8B9E, 0x5AD8, 0xE6D0, 0x5AD9, 0x8B9F, 0x5ADA, 0x8BA0,
- 0x5ADB, 0x8BA1, 0x5ADC, 0xE6D1, 0x5ADD, 0x8BA2, 0x5ADE, 0x8BA3,
- 0x5ADF, 0x8BA4, 0x5AE0, 0xE6CB, 0x5AE1, 0xB5D5, 0x5AE2, 0x8BA5,
- 0x5AE3, 0xE6CC, 0x5AE4, 0x8BA6, 0x5AE5, 0x8BA7, 0x5AE6, 0xE6CF,
- 0x5AE7, 0x8BA8, 0x5AE8, 0x8BA9, 0x5AE9, 0xC4DB, 0x5AEA, 0x8BAA,
- 0x5AEB, 0xE6C6, 0x5AEC, 0x8BAB, 0x5AED, 0x8BAC, 0x5AEE, 0x8BAD,
- 0x5AEF, 0x8BAE, 0x5AF0, 0x8BAF, 0x5AF1, 0xE6CD, 0x5AF2, 0x8BB0,
- 0x5AF3, 0x8BB1, 0x5AF4, 0x8BB2, 0x5AF5, 0x8BB3, 0x5AF6, 0x8BB4,
- 0x5AF7, 0x8BB5, 0x5AF8, 0x8BB6, 0x5AF9, 0x8BB7, 0x5AFA, 0x8BB8,
- 0x5AFB, 0x8BB9, 0x5AFC, 0x8BBA, 0x5AFD, 0x8BBB, 0x5AFE, 0x8BBC,
- 0x5AFF, 0x8BBD, 0x5B00, 0x8BBE, 0x5B01, 0x8BBF, 0x5B02, 0x8BC0,
- 0x5B03, 0x8BC1, 0x5B04, 0x8BC2, 0x5B05, 0x8BC3, 0x5B06, 0x8BC4,
- 0x5B07, 0x8BC5, 0x5B08, 0x8BC6, 0x5B09, 0xE6D2, 0x5B0A, 0x8BC7,
- 0x5B0B, 0x8BC8, 0x5B0C, 0x8BC9, 0x5B0D, 0x8BCA, 0x5B0E, 0x8BCB,
- 0x5B0F, 0x8BCC, 0x5B10, 0x8BCD, 0x5B11, 0x8BCE, 0x5B12, 0x8BCF,
- 0x5B13, 0x8BD0, 0x5B14, 0x8BD1, 0x5B15, 0x8BD2, 0x5B16, 0xE6D4,
- 0x5B17, 0xE6D3, 0x5B18, 0x8BD3, 0x5B19, 0x8BD4, 0x5B1A, 0x8BD5,
- 0x5B1B, 0x8BD6, 0x5B1C, 0x8BD7, 0x5B1D, 0x8BD8, 0x5B1E, 0x8BD9,
- 0x5B1F, 0x8BDA, 0x5B20, 0x8BDB, 0x5B21, 0x8BDC, 0x5B22, 0x8BDD,
- 0x5B23, 0x8BDE, 0x5B24, 0x8BDF, 0x5B25, 0x8BE0, 0x5B26, 0x8BE1,
- 0x5B27, 0x8BE2, 0x5B28, 0x8BE3, 0x5B29, 0x8BE4, 0x5B2A, 0x8BE5,
- 0x5B2B, 0x8BE6, 0x5B2C, 0x8BE7, 0x5B2D, 0x8BE8, 0x5B2E, 0x8BE9,
- 0x5B2F, 0x8BEA, 0x5B30, 0x8BEB, 0x5B31, 0x8BEC, 0x5B32, 0xE6D5,
- 0x5B33, 0x8BED, 0x5B34, 0xD9F8, 0x5B35, 0x8BEE, 0x5B36, 0x8BEF,
- 0x5B37, 0xE6D6, 0x5B38, 0x8BF0, 0x5B39, 0x8BF1, 0x5B3A, 0x8BF2,
- 0x5B3B, 0x8BF3, 0x5B3C, 0x8BF4, 0x5B3D, 0x8BF5, 0x5B3E, 0x8BF6,
- 0x5B3F, 0x8BF7, 0x5B40, 0xE6D7, 0x5B41, 0x8BF8, 0x5B42, 0x8BF9,
- 0x5B43, 0x8BFA, 0x5B44, 0x8BFB, 0x5B45, 0x8BFC, 0x5B46, 0x8BFD,
- 0x5B47, 0x8BFE, 0x5B48, 0x8C40, 0x5B49, 0x8C41, 0x5B4A, 0x8C42,
- 0x5B4B, 0x8C43, 0x5B4C, 0x8C44, 0x5B4D, 0x8C45, 0x5B4E, 0x8C46,
- 0x5B4F, 0x8C47, 0x5B50, 0xD7D3, 0x5B51, 0xE6DD, 0x5B52, 0x8C48,
- 0x5B53, 0xE6DE, 0x5B54, 0xBFD7, 0x5B55, 0xD4D0, 0x5B56, 0x8C49,
- 0x5B57, 0xD7D6, 0x5B58, 0xB4E6, 0x5B59, 0xCBEF, 0x5B5A, 0xE6DA,
- 0x5B5B, 0xD8C3, 0x5B5C, 0xD7CE, 0x5B5D, 0xD0A2, 0x5B5E, 0x8C4A,
- 0x5B5F, 0xC3CF, 0x5B60, 0x8C4B, 0x5B61, 0x8C4C, 0x5B62, 0xE6DF,
- 0x5B63, 0xBCBE, 0x5B64, 0xB9C2, 0x5B65, 0xE6DB, 0x5B66, 0xD1A7,
- 0x5B67, 0x8C4D, 0x5B68, 0x8C4E, 0x5B69, 0xBAA2, 0x5B6A, 0xC2CF,
- 0x5B6B, 0x8C4F, 0x5B6C, 0xD8AB, 0x5B6D, 0x8C50, 0x5B6E, 0x8C51,
- 0x5B6F, 0x8C52, 0x5B70, 0xCAEB, 0x5B71, 0xE5EE, 0x5B72, 0x8C53,
- 0x5B73, 0xE6DC, 0x5B74, 0x8C54, 0x5B75, 0xB7F5, 0x5B76, 0x8C55,
- 0x5B77, 0x8C56, 0x5B78, 0x8C57, 0x5B79, 0x8C58, 0x5B7A, 0xC8E6,
- 0x5B7B, 0x8C59, 0x5B7C, 0x8C5A, 0x5B7D, 0xC4F5, 0x5B7E, 0x8C5B,
- 0x5B7F, 0x8C5C, 0x5B80, 0xE5B2, 0x5B81, 0xC4FE, 0x5B82, 0x8C5D,
- 0x5B83, 0xCBFC, 0x5B84, 0xE5B3, 0x5B85, 0xD5AC, 0x5B86, 0x8C5E,
- 0x5B87, 0xD3EE, 0x5B88, 0xCAD8, 0x5B89, 0xB0B2, 0x5B8A, 0x8C5F,
- 0x5B8B, 0xCBCE, 0x5B8C, 0xCDEA, 0x5B8D, 0x8C60, 0x5B8E, 0x8C61,
- 0x5B8F, 0xBAEA, 0x5B90, 0x8C62, 0x5B91, 0x8C63, 0x5B92, 0x8C64,
- 0x5B93, 0xE5B5, 0x5B94, 0x8C65, 0x5B95, 0xE5B4, 0x5B96, 0x8C66,
- 0x5B97, 0xD7DA, 0x5B98, 0xB9D9, 0x5B99, 0xD6E6, 0x5B9A, 0xB6A8,
- 0x5B9B, 0xCDF0, 0x5B9C, 0xD2CB, 0x5B9D, 0xB1A6, 0x5B9E, 0xCAB5,
- 0x5B9F, 0x8C67, 0x5BA0, 0xB3E8, 0x5BA1, 0xC9F3, 0x5BA2, 0xBFCD,
- 0x5BA3, 0xD0FB, 0x5BA4, 0xCAD2, 0x5BA5, 0xE5B6, 0x5BA6, 0xBBC2,
- 0x5BA7, 0x8C68, 0x5BA8, 0x8C69, 0x5BA9, 0x8C6A, 0x5BAA, 0xCFDC,
- 0x5BAB, 0xB9AC, 0x5BAC, 0x8C6B, 0x5BAD, 0x8C6C, 0x5BAE, 0x8C6D,
- 0x5BAF, 0x8C6E, 0x5BB0, 0xD4D7, 0x5BB1, 0x8C6F, 0x5BB2, 0x8C70,
- 0x5BB3, 0xBAA6, 0x5BB4, 0xD1E7, 0x5BB5, 0xCFFC, 0x5BB6, 0xBCD2,
- 0x5BB7, 0x8C71, 0x5BB8, 0xE5B7, 0x5BB9, 0xC8DD, 0x5BBA, 0x8C72,
- 0x5BBB, 0x8C73, 0x5BBC, 0x8C74, 0x5BBD, 0xBFED, 0x5BBE, 0xB1F6,
- 0x5BBF, 0xCBDE, 0x5BC0, 0x8C75, 0x5BC1, 0x8C76, 0x5BC2, 0xBCC5,
- 0x5BC3, 0x8C77, 0x5BC4, 0xBCC4, 0x5BC5, 0xD2FA, 0x5BC6, 0xC3DC,
- 0x5BC7, 0xBFDC, 0x5BC8, 0x8C78, 0x5BC9, 0x8C79, 0x5BCA, 0x8C7A,
- 0x5BCB, 0x8C7B, 0x5BCC, 0xB8BB, 0x5BCD, 0x8C7C, 0x5BCE, 0x8C7D,
- 0x5BCF, 0x8C7E, 0x5BD0, 0xC3C2, 0x5BD1, 0x8C80, 0x5BD2, 0xBAAE,
- 0x5BD3, 0xD4A2, 0x5BD4, 0x8C81, 0x5BD5, 0x8C82, 0x5BD6, 0x8C83,
- 0x5BD7, 0x8C84, 0x5BD8, 0x8C85, 0x5BD9, 0x8C86, 0x5BDA, 0x8C87,
- 0x5BDB, 0x8C88, 0x5BDC, 0x8C89, 0x5BDD, 0xC7DE, 0x5BDE, 0xC4AF,
- 0x5BDF, 0xB2EC, 0x5BE0, 0x8C8A, 0x5BE1, 0xB9D1, 0x5BE2, 0x8C8B,
- 0x5BE3, 0x8C8C, 0x5BE4, 0xE5BB, 0x5BE5, 0xC1C8, 0x5BE6, 0x8C8D,
- 0x5BE7, 0x8C8E, 0x5BE8, 0xD5AF, 0x5BE9, 0x8C8F, 0x5BEA, 0x8C90,
- 0x5BEB, 0x8C91, 0x5BEC, 0x8C92, 0x5BED, 0x8C93, 0x5BEE, 0xE5BC,
- 0x5BEF, 0x8C94, 0x5BF0, 0xE5BE, 0x5BF1, 0x8C95, 0x5BF2, 0x8C96,
- 0x5BF3, 0x8C97, 0x5BF4, 0x8C98, 0x5BF5, 0x8C99, 0x5BF6, 0x8C9A,
- 0x5BF7, 0x8C9B, 0x5BF8, 0xB4E7, 0x5BF9, 0xB6D4, 0x5BFA, 0xCBC2,
- 0x5BFB, 0xD1B0, 0x5BFC, 0xB5BC, 0x5BFD, 0x8C9C, 0x5BFE, 0x8C9D,
- 0x5BFF, 0xCAD9, 0x5C00, 0x8C9E, 0x5C01, 0xB7E2, 0x5C02, 0x8C9F,
- 0x5C03, 0x8CA0, 0x5C04, 0xC9E4, 0x5C05, 0x8CA1, 0x5C06, 0xBDAB,
- 0x5C07, 0x8CA2, 0x5C08, 0x8CA3, 0x5C09, 0xCEBE, 0x5C0A, 0xD7F0,
- 0x5C0B, 0x8CA4, 0x5C0C, 0x8CA5, 0x5C0D, 0x8CA6, 0x5C0E, 0x8CA7,
- 0x5C0F, 0xD0A1, 0x5C10, 0x8CA8, 0x5C11, 0xC9D9, 0x5C12, 0x8CA9,
- 0x5C13, 0x8CAA, 0x5C14, 0xB6FB, 0x5C15, 0xE6D8, 0x5C16, 0xBCE2,
- 0x5C17, 0x8CAB, 0x5C18, 0xB3BE, 0x5C19, 0x8CAC, 0x5C1A, 0xC9D0,
- 0x5C1B, 0x8CAD, 0x5C1C, 0xE6D9, 0x5C1D, 0xB3A2, 0x5C1E, 0x8CAE,
- 0x5C1F, 0x8CAF, 0x5C20, 0x8CB0, 0x5C21, 0x8CB1, 0x5C22, 0xDECC,
- 0x5C23, 0x8CB2, 0x5C24, 0xD3C8, 0x5C25, 0xDECD, 0x5C26, 0x8CB3,
- 0x5C27, 0xD2A2, 0x5C28, 0x8CB4, 0x5C29, 0x8CB5, 0x5C2A, 0x8CB6,
- 0x5C2B, 0x8CB7, 0x5C2C, 0xDECE, 0x5C2D, 0x8CB8, 0x5C2E, 0x8CB9,
- 0x5C2F, 0x8CBA, 0x5C30, 0x8CBB, 0x5C31, 0xBECD, 0x5C32, 0x8CBC,
- 0x5C33, 0x8CBD, 0x5C34, 0xDECF, 0x5C35, 0x8CBE, 0x5C36, 0x8CBF,
- 0x5C37, 0x8CC0, 0x5C38, 0xCAAC, 0x5C39, 0xD2FC, 0x5C3A, 0xB3DF,
- 0x5C3B, 0xE5EA, 0x5C3C, 0xC4E1, 0x5C3D, 0xBEA1, 0x5C3E, 0xCEB2,
- 0x5C3F, 0xC4F2, 0x5C40, 0xBED6, 0x5C41, 0xC6A8, 0x5C42, 0xB2E3,
- 0x5C43, 0x8CC1, 0x5C44, 0x8CC2, 0x5C45, 0xBED3, 0x5C46, 0x8CC3,
- 0x5C47, 0x8CC4, 0x5C48, 0xC7FC, 0x5C49, 0xCCEB, 0x5C4A, 0xBDEC,
- 0x5C4B, 0xCEDD, 0x5C4C, 0x8CC5, 0x5C4D, 0x8CC6, 0x5C4E, 0xCABA,
- 0x5C4F, 0xC6C1, 0x5C50, 0xE5EC, 0x5C51, 0xD0BC, 0x5C52, 0x8CC7,
- 0x5C53, 0x8CC8, 0x5C54, 0x8CC9, 0x5C55, 0xD5B9, 0x5C56, 0x8CCA,
- 0x5C57, 0x8CCB, 0x5C58, 0x8CCC, 0x5C59, 0xE5ED, 0x5C5A, 0x8CCD,
- 0x5C5B, 0x8CCE, 0x5C5C, 0x8CCF, 0x5C5D, 0x8CD0, 0x5C5E, 0xCAF4,
- 0x5C5F, 0x8CD1, 0x5C60, 0xCDC0, 0x5C61, 0xC2C5, 0x5C62, 0x8CD2,
- 0x5C63, 0xE5EF, 0x5C64, 0x8CD3, 0x5C65, 0xC2C4, 0x5C66, 0xE5F0,
- 0x5C67, 0x8CD4, 0x5C68, 0x8CD5, 0x5C69, 0x8CD6, 0x5C6A, 0x8CD7,
- 0x5C6B, 0x8CD8, 0x5C6C, 0x8CD9, 0x5C6D, 0x8CDA, 0x5C6E, 0xE5F8,
- 0x5C6F, 0xCDCD, 0x5C70, 0x8CDB, 0x5C71, 0xC9BD, 0x5C72, 0x8CDC,
- 0x5C73, 0x8CDD, 0x5C74, 0x8CDE, 0x5C75, 0x8CDF, 0x5C76, 0x8CE0,
- 0x5C77, 0x8CE1, 0x5C78, 0x8CE2, 0x5C79, 0xD2D9, 0x5C7A, 0xE1A8,
- 0x5C7B, 0x8CE3, 0x5C7C, 0x8CE4, 0x5C7D, 0x8CE5, 0x5C7E, 0x8CE6,
- 0x5C7F, 0xD3EC, 0x5C80, 0x8CE7, 0x5C81, 0xCBEA, 0x5C82, 0xC6F1,
- 0x5C83, 0x8CE8, 0x5C84, 0x8CE9, 0x5C85, 0x8CEA, 0x5C86, 0x8CEB,
- 0x5C87, 0x8CEC, 0x5C88, 0xE1AC, 0x5C89, 0x8CED, 0x5C8A, 0x8CEE,
- 0x5C8B, 0x8CEF, 0x5C8C, 0xE1A7, 0x5C8D, 0xE1A9, 0x5C8E, 0x8CF0,
- 0x5C8F, 0x8CF1, 0x5C90, 0xE1AA, 0x5C91, 0xE1AF, 0x5C92, 0x8CF2,
- 0x5C93, 0x8CF3, 0x5C94, 0xB2ED, 0x5C95, 0x8CF4, 0x5C96, 0xE1AB,
- 0x5C97, 0xB8DA, 0x5C98, 0xE1AD, 0x5C99, 0xE1AE, 0x5C9A, 0xE1B0,
- 0x5C9B, 0xB5BA, 0x5C9C, 0xE1B1, 0x5C9D, 0x8CF5, 0x5C9E, 0x8CF6,
- 0x5C9F, 0x8CF7, 0x5CA0, 0x8CF8, 0x5CA1, 0x8CF9, 0x5CA2, 0xE1B3,
- 0x5CA3, 0xE1B8, 0x5CA4, 0x8CFA, 0x5CA5, 0x8CFB, 0x5CA6, 0x8CFC,
- 0x5CA7, 0x8CFD, 0x5CA8, 0x8CFE, 0x5CA9, 0xD1D2, 0x5CAA, 0x8D40,
- 0x5CAB, 0xE1B6, 0x5CAC, 0xE1B5, 0x5CAD, 0xC1EB, 0x5CAE, 0x8D41,
- 0x5CAF, 0x8D42, 0x5CB0, 0x8D43, 0x5CB1, 0xE1B7, 0x5CB2, 0x8D44,
- 0x5CB3, 0xD4C0, 0x5CB4, 0x8D45, 0x5CB5, 0xE1B2, 0x5CB6, 0x8D46,
- 0x5CB7, 0xE1BA, 0x5CB8, 0xB0B6, 0x5CB9, 0x8D47, 0x5CBA, 0x8D48,
- 0x5CBB, 0x8D49, 0x5CBC, 0x8D4A, 0x5CBD, 0xE1B4, 0x5CBE, 0x8D4B,
- 0x5CBF, 0xBFF9, 0x5CC0, 0x8D4C, 0x5CC1, 0xE1B9, 0x5CC2, 0x8D4D,
- 0x5CC3, 0x8D4E, 0x5CC4, 0xE1BB, 0x5CC5, 0x8D4F, 0x5CC6, 0x8D50,
- 0x5CC7, 0x8D51, 0x5CC8, 0x8D52, 0x5CC9, 0x8D53, 0x5CCA, 0x8D54,
- 0x5CCB, 0xE1BE, 0x5CCC, 0x8D55, 0x5CCD, 0x8D56, 0x5CCE, 0x8D57,
- 0x5CCF, 0x8D58, 0x5CD0, 0x8D59, 0x5CD1, 0x8D5A, 0x5CD2, 0xE1BC,
- 0x5CD3, 0x8D5B, 0x5CD4, 0x8D5C, 0x5CD5, 0x8D5D, 0x5CD6, 0x8D5E,
- 0x5CD7, 0x8D5F, 0x5CD8, 0x8D60, 0x5CD9, 0xD6C5, 0x5CDA, 0x8D61,
- 0x5CDB, 0x8D62, 0x5CDC, 0x8D63, 0x5CDD, 0x8D64, 0x5CDE, 0x8D65,
- 0x5CDF, 0x8D66, 0x5CE0, 0x8D67, 0x5CE1, 0xCFBF, 0x5CE2, 0x8D68,
- 0x5CE3, 0x8D69, 0x5CE4, 0xE1BD, 0x5CE5, 0xE1BF, 0x5CE6, 0xC2CD,
- 0x5CE7, 0x8D6A, 0x5CE8, 0xB6EB, 0x5CE9, 0x8D6B, 0x5CEA, 0xD3F8,
- 0x5CEB, 0x8D6C, 0x5CEC, 0x8D6D, 0x5CED, 0xC7CD, 0x5CEE, 0x8D6E,
- 0x5CEF, 0x8D6F, 0x5CF0, 0xB7E5, 0x5CF1, 0x8D70, 0x5CF2, 0x8D71,
- 0x5CF3, 0x8D72, 0x5CF4, 0x8D73, 0x5CF5, 0x8D74, 0x5CF6, 0x8D75,
- 0x5CF7, 0x8D76, 0x5CF8, 0x8D77, 0x5CF9, 0x8D78, 0x5CFA, 0x8D79,
- 0x5CFB, 0xBEFE, 0x5CFC, 0x8D7A, 0x5CFD, 0x8D7B, 0x5CFE, 0x8D7C,
- 0x5CFF, 0x8D7D, 0x5D00, 0x8D7E, 0x5D01, 0x8D80, 0x5D02, 0xE1C0,
- 0x5D03, 0xE1C1, 0x5D04, 0x8D81, 0x5D05, 0x8D82, 0x5D06, 0xE1C7,
- 0x5D07, 0xB3E7, 0x5D08, 0x8D83, 0x5D09, 0x8D84, 0x5D0A, 0x8D85,
- 0x5D0B, 0x8D86, 0x5D0C, 0x8D87, 0x5D0D, 0x8D88, 0x5D0E, 0xC6E9,
- 0x5D0F, 0x8D89, 0x5D10, 0x8D8A, 0x5D11, 0x8D8B, 0x5D12, 0x8D8C,
- 0x5D13, 0x8D8D, 0x5D14, 0xB4DE, 0x5D15, 0x8D8E, 0x5D16, 0xD1C2,
- 0x5D17, 0x8D8F, 0x5D18, 0x8D90, 0x5D19, 0x8D91, 0x5D1A, 0x8D92,
- 0x5D1B, 0xE1C8, 0x5D1C, 0x8D93, 0x5D1D, 0x8D94, 0x5D1E, 0xE1C6,
- 0x5D1F, 0x8D95, 0x5D20, 0x8D96, 0x5D21, 0x8D97, 0x5D22, 0x8D98,
- 0x5D23, 0x8D99, 0x5D24, 0xE1C5, 0x5D25, 0x8D9A, 0x5D26, 0xE1C3,
- 0x5D27, 0xE1C2, 0x5D28, 0x8D9B, 0x5D29, 0xB1C0, 0x5D2A, 0x8D9C,
- 0x5D2B, 0x8D9D, 0x5D2C, 0x8D9E, 0x5D2D, 0xD5B8, 0x5D2E, 0xE1C4,
- 0x5D2F, 0x8D9F, 0x5D30, 0x8DA0, 0x5D31, 0x8DA1, 0x5D32, 0x8DA2,
- 0x5D33, 0x8DA3, 0x5D34, 0xE1CB, 0x5D35, 0x8DA4, 0x5D36, 0x8DA5,
- 0x5D37, 0x8DA6, 0x5D38, 0x8DA7, 0x5D39, 0x8DA8, 0x5D3A, 0x8DA9,
- 0x5D3B, 0x8DAA, 0x5D3C, 0x8DAB, 0x5D3D, 0xE1CC, 0x5D3E, 0xE1CA,
- 0x5D3F, 0x8DAC, 0x5D40, 0x8DAD, 0x5D41, 0x8DAE, 0x5D42, 0x8DAF,
- 0x5D43, 0x8DB0, 0x5D44, 0x8DB1, 0x5D45, 0x8DB2, 0x5D46, 0x8DB3,
- 0x5D47, 0xEFFA, 0x5D48, 0x8DB4, 0x5D49, 0x8DB5, 0x5D4A, 0xE1D3,
- 0x5D4B, 0xE1D2, 0x5D4C, 0xC7B6, 0x5D4D, 0x8DB6, 0x5D4E, 0x8DB7,
- 0x5D4F, 0x8DB8, 0x5D50, 0x8DB9, 0x5D51, 0x8DBA, 0x5D52, 0x8DBB,
- 0x5D53, 0x8DBC, 0x5D54, 0x8DBD, 0x5D55, 0x8DBE, 0x5D56, 0x8DBF,
- 0x5D57, 0x8DC0, 0x5D58, 0xE1C9, 0x5D59, 0x8DC1, 0x5D5A, 0x8DC2,
- 0x5D5B, 0xE1CE, 0x5D5C, 0x8DC3, 0x5D5D, 0xE1D0, 0x5D5E, 0x8DC4,
- 0x5D5F, 0x8DC5, 0x5D60, 0x8DC6, 0x5D61, 0x8DC7, 0x5D62, 0x8DC8,
- 0x5D63, 0x8DC9, 0x5D64, 0x8DCA, 0x5D65, 0x8DCB, 0x5D66, 0x8DCC,
- 0x5D67, 0x8DCD, 0x5D68, 0x8DCE, 0x5D69, 0xE1D4, 0x5D6A, 0x8DCF,
- 0x5D6B, 0xE1D1, 0x5D6C, 0xE1CD, 0x5D6D, 0x8DD0, 0x5D6E, 0x8DD1,
- 0x5D6F, 0xE1CF, 0x5D70, 0x8DD2, 0x5D71, 0x8DD3, 0x5D72, 0x8DD4,
- 0x5D73, 0x8DD5, 0x5D74, 0xE1D5, 0x5D75, 0x8DD6, 0x5D76, 0x8DD7,
- 0x5D77, 0x8DD8, 0x5D78, 0x8DD9, 0x5D79, 0x8DDA, 0x5D7A, 0x8DDB,
- 0x5D7B, 0x8DDC, 0x5D7C, 0x8DDD, 0x5D7D, 0x8DDE, 0x5D7E, 0x8DDF,
- 0x5D7F, 0x8DE0, 0x5D80, 0x8DE1, 0x5D81, 0x8DE2, 0x5D82, 0xE1D6,
- 0x5D83, 0x8DE3, 0x5D84, 0x8DE4, 0x5D85, 0x8DE5, 0x5D86, 0x8DE6,
- 0x5D87, 0x8DE7, 0x5D88, 0x8DE8, 0x5D89, 0x8DE9, 0x5D8A, 0x8DEA,
- 0x5D8B, 0x8DEB, 0x5D8C, 0x8DEC, 0x5D8D, 0x8DED, 0x5D8E, 0x8DEE,
- 0x5D8F, 0x8DEF, 0x5D90, 0x8DF0, 0x5D91, 0x8DF1, 0x5D92, 0x8DF2,
- 0x5D93, 0x8DF3, 0x5D94, 0x8DF4, 0x5D95, 0x8DF5, 0x5D96, 0x8DF6,
- 0x5D97, 0x8DF7, 0x5D98, 0x8DF8, 0x5D99, 0xE1D7, 0x5D9A, 0x8DF9,
- 0x5D9B, 0x8DFA, 0x5D9C, 0x8DFB, 0x5D9D, 0xE1D8, 0x5D9E, 0x8DFC,
- 0x5D9F, 0x8DFD, 0x5DA0, 0x8DFE, 0x5DA1, 0x8E40, 0x5DA2, 0x8E41,
- 0x5DA3, 0x8E42, 0x5DA4, 0x8E43, 0x5DA5, 0x8E44, 0x5DA6, 0x8E45,
- 0x5DA7, 0x8E46, 0x5DA8, 0x8E47, 0x5DA9, 0x8E48, 0x5DAA, 0x8E49,
- 0x5DAB, 0x8E4A, 0x5DAC, 0x8E4B, 0x5DAD, 0x8E4C, 0x5DAE, 0x8E4D,
- 0x5DAF, 0x8E4E, 0x5DB0, 0x8E4F, 0x5DB1, 0x8E50, 0x5DB2, 0x8E51,
- 0x5DB3, 0x8E52, 0x5DB4, 0x8E53, 0x5DB5, 0x8E54, 0x5DB6, 0x8E55,
- 0x5DB7, 0xE1DA, 0x5DB8, 0x8E56, 0x5DB9, 0x8E57, 0x5DBA, 0x8E58,
- 0x5DBB, 0x8E59, 0x5DBC, 0x8E5A, 0x5DBD, 0x8E5B, 0x5DBE, 0x8E5C,
- 0x5DBF, 0x8E5D, 0x5DC0, 0x8E5E, 0x5DC1, 0x8E5F, 0x5DC2, 0x8E60,
- 0x5DC3, 0x8E61, 0x5DC4, 0x8E62, 0x5DC5, 0xE1DB, 0x5DC6, 0x8E63,
- 0x5DC7, 0x8E64, 0x5DC8, 0x8E65, 0x5DC9, 0x8E66, 0x5DCA, 0x8E67,
- 0x5DCB, 0x8E68, 0x5DCC, 0x8E69, 0x5DCD, 0xCEA1, 0x5DCE, 0x8E6A,
- 0x5DCF, 0x8E6B, 0x5DD0, 0x8E6C, 0x5DD1, 0x8E6D, 0x5DD2, 0x8E6E,
- 0x5DD3, 0x8E6F, 0x5DD4, 0x8E70, 0x5DD5, 0x8E71, 0x5DD6, 0x8E72,
- 0x5DD7, 0x8E73, 0x5DD8, 0x8E74, 0x5DD9, 0x8E75, 0x5DDA, 0x8E76,
- 0x5DDB, 0xE7DD, 0x5DDC, 0x8E77, 0x5DDD, 0xB4A8, 0x5DDE, 0xD6DD,
- 0x5DDF, 0x8E78, 0x5DE0, 0x8E79, 0x5DE1, 0xD1B2, 0x5DE2, 0xB3B2,
- 0x5DE3, 0x8E7A, 0x5DE4, 0x8E7B, 0x5DE5, 0xB9A4, 0x5DE6, 0xD7F3,
- 0x5DE7, 0xC7C9, 0x5DE8, 0xBEDE, 0x5DE9, 0xB9AE, 0x5DEA, 0x8E7C,
- 0x5DEB, 0xCED7, 0x5DEC, 0x8E7D, 0x5DED, 0x8E7E, 0x5DEE, 0xB2EE,
- 0x5DEF, 0xDBCF, 0x5DF0, 0x8E80, 0x5DF1, 0xBCBA, 0x5DF2, 0xD2D1,
- 0x5DF3, 0xCBC8, 0x5DF4, 0xB0CD, 0x5DF5, 0x8E81, 0x5DF6, 0x8E82,
- 0x5DF7, 0xCFEF, 0x5DF8, 0x8E83, 0x5DF9, 0x8E84, 0x5DFA, 0x8E85,
- 0x5DFB, 0x8E86, 0x5DFC, 0x8E87, 0x5DFD, 0xD9E3, 0x5DFE, 0xBDED,
- 0x5DFF, 0x8E88, 0x5E00, 0x8E89, 0x5E01, 0xB1D2, 0x5E02, 0xCAD0,
- 0x5E03, 0xB2BC, 0x5E04, 0x8E8A, 0x5E05, 0xCBA7, 0x5E06, 0xB7AB,
- 0x5E07, 0x8E8B, 0x5E08, 0xCAA6, 0x5E09, 0x8E8C, 0x5E0A, 0x8E8D,
- 0x5E0B, 0x8E8E, 0x5E0C, 0xCFA3, 0x5E0D, 0x8E8F, 0x5E0E, 0x8E90,
- 0x5E0F, 0xE0F8, 0x5E10, 0xD5CA, 0x5E11, 0xE0FB, 0x5E12, 0x8E91,
- 0x5E13, 0x8E92, 0x5E14, 0xE0FA, 0x5E15, 0xC5C1, 0x5E16, 0xCCFB,
- 0x5E17, 0x8E93, 0x5E18, 0xC1B1, 0x5E19, 0xE0F9, 0x5E1A, 0xD6E3,
- 0x5E1B, 0xB2AF, 0x5E1C, 0xD6C4, 0x5E1D, 0xB5DB, 0x5E1E, 0x8E94,
- 0x5E1F, 0x8E95, 0x5E20, 0x8E96, 0x5E21, 0x8E97, 0x5E22, 0x8E98,
- 0x5E23, 0x8E99, 0x5E24, 0x8E9A, 0x5E25, 0x8E9B, 0x5E26, 0xB4F8,
- 0x5E27, 0xD6A1, 0x5E28, 0x8E9C, 0x5E29, 0x8E9D, 0x5E2A, 0x8E9E,
- 0x5E2B, 0x8E9F, 0x5E2C, 0x8EA0, 0x5E2D, 0xCFAF, 0x5E2E, 0xB0EF,
- 0x5E2F, 0x8EA1, 0x5E30, 0x8EA2, 0x5E31, 0xE0FC, 0x5E32, 0x8EA3,
- 0x5E33, 0x8EA4, 0x5E34, 0x8EA5, 0x5E35, 0x8EA6, 0x5E36, 0x8EA7,
- 0x5E37, 0xE1A1, 0x5E38, 0xB3A3, 0x5E39, 0x8EA8, 0x5E3A, 0x8EA9,
- 0x5E3B, 0xE0FD, 0x5E3C, 0xE0FE, 0x5E3D, 0xC3B1, 0x5E3E, 0x8EAA,
- 0x5E3F, 0x8EAB, 0x5E40, 0x8EAC, 0x5E41, 0x8EAD, 0x5E42, 0xC3DD,
- 0x5E43, 0x8EAE, 0x5E44, 0xE1A2, 0x5E45, 0xB7F9, 0x5E46, 0x8EAF,
- 0x5E47, 0x8EB0, 0x5E48, 0x8EB1, 0x5E49, 0x8EB2, 0x5E4A, 0x8EB3,
- 0x5E4B, 0x8EB4, 0x5E4C, 0xBBCF, 0x5E4D, 0x8EB5, 0x5E4E, 0x8EB6,
- 0x5E4F, 0x8EB7, 0x5E50, 0x8EB8, 0x5E51, 0x8EB9, 0x5E52, 0x8EBA,
- 0x5E53, 0x8EBB, 0x5E54, 0xE1A3, 0x5E55, 0xC4BB, 0x5E56, 0x8EBC,
- 0x5E57, 0x8EBD, 0x5E58, 0x8EBE, 0x5E59, 0x8EBF, 0x5E5A, 0x8EC0,
- 0x5E5B, 0xE1A4, 0x5E5C, 0x8EC1, 0x5E5D, 0x8EC2, 0x5E5E, 0xE1A5,
- 0x5E5F, 0x8EC3, 0x5E60, 0x8EC4, 0x5E61, 0xE1A6, 0x5E62, 0xB4B1,
- 0x5E63, 0x8EC5, 0x5E64, 0x8EC6, 0x5E65, 0x8EC7, 0x5E66, 0x8EC8,
- 0x5E67, 0x8EC9, 0x5E68, 0x8ECA, 0x5E69, 0x8ECB, 0x5E6A, 0x8ECC,
- 0x5E6B, 0x8ECD, 0x5E6C, 0x8ECE, 0x5E6D, 0x8ECF, 0x5E6E, 0x8ED0,
- 0x5E6F, 0x8ED1, 0x5E70, 0x8ED2, 0x5E71, 0x8ED3, 0x5E72, 0xB8C9,
- 0x5E73, 0xC6BD, 0x5E74, 0xC4EA, 0x5E75, 0x8ED4, 0x5E76, 0xB2A2,
- 0x5E77, 0x8ED5, 0x5E78, 0xD0D2, 0x5E79, 0x8ED6, 0x5E7A, 0xE7DB,
- 0x5E7B, 0xBBC3, 0x5E7C, 0xD3D7, 0x5E7D, 0xD3C4, 0x5E7E, 0x8ED7,
- 0x5E7F, 0xB9E3, 0x5E80, 0xE2CF, 0x5E81, 0x8ED8, 0x5E82, 0x8ED9,
- 0x5E83, 0x8EDA, 0x5E84, 0xD7AF, 0x5E85, 0x8EDB, 0x5E86, 0xC7EC,
- 0x5E87, 0xB1D3, 0x5E88, 0x8EDC, 0x5E89, 0x8EDD, 0x5E8A, 0xB4B2,
- 0x5E8B, 0xE2D1, 0x5E8C, 0x8EDE, 0x5E8D, 0x8EDF, 0x5E8E, 0x8EE0,
- 0x5E8F, 0xD0F2, 0x5E90, 0xC2AE, 0x5E91, 0xE2D0, 0x5E92, 0x8EE1,
- 0x5E93, 0xBFE2, 0x5E94, 0xD3A6, 0x5E95, 0xB5D7, 0x5E96, 0xE2D2,
- 0x5E97, 0xB5EA, 0x5E98, 0x8EE2, 0x5E99, 0xC3ED, 0x5E9A, 0xB8FD,
- 0x5E9B, 0x8EE3, 0x5E9C, 0xB8AE, 0x5E9D, 0x8EE4, 0x5E9E, 0xC5D3,
- 0x5E9F, 0xB7CF, 0x5EA0, 0xE2D4, 0x5EA1, 0x8EE5, 0x5EA2, 0x8EE6,
- 0x5EA3, 0x8EE7, 0x5EA4, 0x8EE8, 0x5EA5, 0xE2D3, 0x5EA6, 0xB6C8,
- 0x5EA7, 0xD7F9, 0x5EA8, 0x8EE9, 0x5EA9, 0x8EEA, 0x5EAA, 0x8EEB,
- 0x5EAB, 0x8EEC, 0x5EAC, 0x8EED, 0x5EAD, 0xCDA5, 0x5EAE, 0x8EEE,
- 0x5EAF, 0x8EEF, 0x5EB0, 0x8EF0, 0x5EB1, 0x8EF1, 0x5EB2, 0x8EF2,
- 0x5EB3, 0xE2D8, 0x5EB4, 0x8EF3, 0x5EB5, 0xE2D6, 0x5EB6, 0xCAFC,
- 0x5EB7, 0xBFB5, 0x5EB8, 0xD3B9, 0x5EB9, 0xE2D5, 0x5EBA, 0x8EF4,
- 0x5EBB, 0x8EF5, 0x5EBC, 0x8EF6, 0x5EBD, 0x8EF7, 0x5EBE, 0xE2D7,
- 0x5EBF, 0x8EF8, 0x5EC0, 0x8EF9, 0x5EC1, 0x8EFA, 0x5EC2, 0x8EFB,
- 0x5EC3, 0x8EFC, 0x5EC4, 0x8EFD, 0x5EC5, 0x8EFE, 0x5EC6, 0x8F40,
- 0x5EC7, 0x8F41, 0x5EC8, 0x8F42, 0x5EC9, 0xC1AE, 0x5ECA, 0xC0C8,
- 0x5ECB, 0x8F43, 0x5ECC, 0x8F44, 0x5ECD, 0x8F45, 0x5ECE, 0x8F46,
- 0x5ECF, 0x8F47, 0x5ED0, 0x8F48, 0x5ED1, 0xE2DB, 0x5ED2, 0xE2DA,
- 0x5ED3, 0xC0AA, 0x5ED4, 0x8F49, 0x5ED5, 0x8F4A, 0x5ED6, 0xC1CE,
- 0x5ED7, 0x8F4B, 0x5ED8, 0x8F4C, 0x5ED9, 0x8F4D, 0x5EDA, 0x8F4E,
- 0x5EDB, 0xE2DC, 0x5EDC, 0x8F4F, 0x5EDD, 0x8F50, 0x5EDE, 0x8F51,
- 0x5EDF, 0x8F52, 0x5EE0, 0x8F53, 0x5EE1, 0x8F54, 0x5EE2, 0x8F55,
- 0x5EE3, 0x8F56, 0x5EE4, 0x8F57, 0x5EE5, 0x8F58, 0x5EE6, 0x8F59,
- 0x5EE7, 0x8F5A, 0x5EE8, 0xE2DD, 0x5EE9, 0x8F5B, 0x5EEA, 0xE2DE,
- 0x5EEB, 0x8F5C, 0x5EEC, 0x8F5D, 0x5EED, 0x8F5E, 0x5EEE, 0x8F5F,
- 0x5EEF, 0x8F60, 0x5EF0, 0x8F61, 0x5EF1, 0x8F62, 0x5EF2, 0x8F63,
- 0x5EF3, 0x8F64, 0x5EF4, 0xDBC8, 0x5EF5, 0x8F65, 0x5EF6, 0xD1D3,
- 0x5EF7, 0xCDA2, 0x5EF8, 0x8F66, 0x5EF9, 0x8F67, 0x5EFA, 0xBDA8,
- 0x5EFB, 0x8F68, 0x5EFC, 0x8F69, 0x5EFD, 0x8F6A, 0x5EFE, 0xDEC3,
- 0x5EFF, 0xD8A5, 0x5F00, 0xBFAA, 0x5F01, 0xDBCD, 0x5F02, 0xD2EC,
- 0x5F03, 0xC6FA, 0x5F04, 0xC5AA, 0x5F05, 0x8F6B, 0x5F06, 0x8F6C,
- 0x5F07, 0x8F6D, 0x5F08, 0xDEC4, 0x5F09, 0x8F6E, 0x5F0A, 0xB1D7,
- 0x5F0B, 0xDFAE, 0x5F0C, 0x8F6F, 0x5F0D, 0x8F70, 0x5F0E, 0x8F71,
- 0x5F0F, 0xCABD, 0x5F10, 0x8F72, 0x5F11, 0xDFB1, 0x5F12, 0x8F73,
- 0x5F13, 0xB9AD, 0x5F14, 0x8F74, 0x5F15, 0xD2FD, 0x5F16, 0x8F75,
- 0x5F17, 0xB8A5, 0x5F18, 0xBAEB, 0x5F19, 0x8F76, 0x5F1A, 0x8F77,
- 0x5F1B, 0xB3DA, 0x5F1C, 0x8F78, 0x5F1D, 0x8F79, 0x5F1E, 0x8F7A,
- 0x5F1F, 0xB5DC, 0x5F20, 0xD5C5, 0x5F21, 0x8F7B, 0x5F22, 0x8F7C,
- 0x5F23, 0x8F7D, 0x5F24, 0x8F7E, 0x5F25, 0xC3D6, 0x5F26, 0xCFD2,
- 0x5F27, 0xBBA1, 0x5F28, 0x8F80, 0x5F29, 0xE5F3, 0x5F2A, 0xE5F2,
- 0x5F2B, 0x8F81, 0x5F2C, 0x8F82, 0x5F2D, 0xE5F4, 0x5F2E, 0x8F83,
- 0x5F2F, 0xCDE4, 0x5F30, 0x8F84, 0x5F31, 0xC8F5, 0x5F32, 0x8F85,
- 0x5F33, 0x8F86, 0x5F34, 0x8F87, 0x5F35, 0x8F88, 0x5F36, 0x8F89,
- 0x5F37, 0x8F8A, 0x5F38, 0x8F8B, 0x5F39, 0xB5AF, 0x5F3A, 0xC7BF,
- 0x5F3B, 0x8F8C, 0x5F3C, 0xE5F6, 0x5F3D, 0x8F8D, 0x5F3E, 0x8F8E,
- 0x5F3F, 0x8F8F, 0x5F40, 0xECB0, 0x5F41, 0x8F90, 0x5F42, 0x8F91,
- 0x5F43, 0x8F92, 0x5F44, 0x8F93, 0x5F45, 0x8F94, 0x5F46, 0x8F95,
- 0x5F47, 0x8F96, 0x5F48, 0x8F97, 0x5F49, 0x8F98, 0x5F4A, 0x8F99,
- 0x5F4B, 0x8F9A, 0x5F4C, 0x8F9B, 0x5F4D, 0x8F9C, 0x5F4E, 0x8F9D,
- 0x5F4F, 0x8F9E, 0x5F50, 0xE5E6, 0x5F51, 0x8F9F, 0x5F52, 0xB9E9,
- 0x5F53, 0xB5B1, 0x5F54, 0x8FA0, 0x5F55, 0xC2BC, 0x5F56, 0xE5E8,
- 0x5F57, 0xE5E7, 0x5F58, 0xE5E9, 0x5F59, 0x8FA1, 0x5F5A, 0x8FA2,
- 0x5F5B, 0x8FA3, 0x5F5C, 0x8FA4, 0x5F5D, 0xD2CD, 0x5F5E, 0x8FA5,
- 0x5F5F, 0x8FA6, 0x5F60, 0x8FA7, 0x5F61, 0xE1EA, 0x5F62, 0xD0CE,
- 0x5F63, 0x8FA8, 0x5F64, 0xCDAE, 0x5F65, 0x8FA9, 0x5F66, 0xD1E5,
- 0x5F67, 0x8FAA, 0x5F68, 0x8FAB, 0x5F69, 0xB2CA, 0x5F6A, 0xB1EB,
- 0x5F6B, 0x8FAC, 0x5F6C, 0xB1F2, 0x5F6D, 0xC5ED, 0x5F6E, 0x8FAD,
- 0x5F6F, 0x8FAE, 0x5F70, 0xD5C3, 0x5F71, 0xD3B0, 0x5F72, 0x8FAF,
- 0x5F73, 0xE1DC, 0x5F74, 0x8FB0, 0x5F75, 0x8FB1, 0x5F76, 0x8FB2,
- 0x5F77, 0xE1DD, 0x5F78, 0x8FB3, 0x5F79, 0xD2DB, 0x5F7A, 0x8FB4,
- 0x5F7B, 0xB3B9, 0x5F7C, 0xB1CB, 0x5F7D, 0x8FB5, 0x5F7E, 0x8FB6,
- 0x5F7F, 0x8FB7, 0x5F80, 0xCDF9, 0x5F81, 0xD5F7, 0x5F82, 0xE1DE,
- 0x5F83, 0x8FB8, 0x5F84, 0xBEB6, 0x5F85, 0xB4FD, 0x5F86, 0x8FB9,
- 0x5F87, 0xE1DF, 0x5F88, 0xBADC, 0x5F89, 0xE1E0, 0x5F8A, 0xBBB2,
- 0x5F8B, 0xC2C9, 0x5F8C, 0xE1E1, 0x5F8D, 0x8FBA, 0x5F8E, 0x8FBB,
- 0x5F8F, 0x8FBC, 0x5F90, 0xD0EC, 0x5F91, 0x8FBD, 0x5F92, 0xCDBD,
- 0x5F93, 0x8FBE, 0x5F94, 0x8FBF, 0x5F95, 0xE1E2, 0x5F96, 0x8FC0,
- 0x5F97, 0xB5C3, 0x5F98, 0xC5C7, 0x5F99, 0xE1E3, 0x5F9A, 0x8FC1,
- 0x5F9B, 0x8FC2, 0x5F9C, 0xE1E4, 0x5F9D, 0x8FC3, 0x5F9E, 0x8FC4,
- 0x5F9F, 0x8FC5, 0x5FA0, 0x8FC6, 0x5FA1, 0xD3F9, 0x5FA2, 0x8FC7,
- 0x5FA3, 0x8FC8, 0x5FA4, 0x8FC9, 0x5FA5, 0x8FCA, 0x5FA6, 0x8FCB,
- 0x5FA7, 0x8FCC, 0x5FA8, 0xE1E5, 0x5FA9, 0x8FCD, 0x5FAA, 0xD1AD,
- 0x5FAB, 0x8FCE, 0x5FAC, 0x8FCF, 0x5FAD, 0xE1E6, 0x5FAE, 0xCEA2,
- 0x5FAF, 0x8FD0, 0x5FB0, 0x8FD1, 0x5FB1, 0x8FD2, 0x5FB2, 0x8FD3,
- 0x5FB3, 0x8FD4, 0x5FB4, 0x8FD5, 0x5FB5, 0xE1E7, 0x5FB6, 0x8FD6,
- 0x5FB7, 0xB5C2, 0x5FB8, 0x8FD7, 0x5FB9, 0x8FD8, 0x5FBA, 0x8FD9,
- 0x5FBB, 0x8FDA, 0x5FBC, 0xE1E8, 0x5FBD, 0xBBD5, 0x5FBE, 0x8FDB,
- 0x5FBF, 0x8FDC, 0x5FC0, 0x8FDD, 0x5FC1, 0x8FDE, 0x5FC2, 0x8FDF,
- 0x5FC3, 0xD0C4, 0x5FC4, 0xE2E0, 0x5FC5, 0xB1D8, 0x5FC6, 0xD2E4,
- 0x5FC7, 0x8FE0, 0x5FC8, 0x8FE1, 0x5FC9, 0xE2E1, 0x5FCA, 0x8FE2,
- 0x5FCB, 0x8FE3, 0x5FCC, 0xBCC9, 0x5FCD, 0xC8CC, 0x5FCE, 0x8FE4,
- 0x5FCF, 0xE2E3, 0x5FD0, 0xECFE, 0x5FD1, 0xECFD, 0x5FD2, 0xDFAF,
- 0x5FD3, 0x8FE5, 0x5FD4, 0x8FE6, 0x5FD5, 0x8FE7, 0x5FD6, 0xE2E2,
- 0x5FD7, 0xD6BE, 0x5FD8, 0xCDFC, 0x5FD9, 0xC3A6, 0x5FDA, 0x8FE8,
- 0x5FDB, 0x8FE9, 0x5FDC, 0x8FEA, 0x5FDD, 0xE3C3, 0x5FDE, 0x8FEB,
- 0x5FDF, 0x8FEC, 0x5FE0, 0xD6D2, 0x5FE1, 0xE2E7, 0x5FE2, 0x8FED,
- 0x5FE3, 0x8FEE, 0x5FE4, 0xE2E8, 0x5FE5, 0x8FEF, 0x5FE6, 0x8FF0,
- 0x5FE7, 0xD3C7, 0x5FE8, 0x8FF1, 0x5FE9, 0x8FF2, 0x5FEA, 0xE2EC,
- 0x5FEB, 0xBFEC, 0x5FEC, 0x8FF3, 0x5FED, 0xE2ED, 0x5FEE, 0xE2E5,
- 0x5FEF, 0x8FF4, 0x5FF0, 0x8FF5, 0x5FF1, 0xB3C0, 0x5FF2, 0x8FF6,
- 0x5FF3, 0x8FF7, 0x5FF4, 0x8FF8, 0x5FF5, 0xC4EE, 0x5FF6, 0x8FF9,
- 0x5FF7, 0x8FFA, 0x5FF8, 0xE2EE, 0x5FF9, 0x8FFB, 0x5FFA, 0x8FFC,
- 0x5FFB, 0xD0C3, 0x5FFC, 0x8FFD, 0x5FFD, 0xBAF6, 0x5FFE, 0xE2E9,
- 0x5FFF, 0xB7DE, 0x6000, 0xBBB3, 0x6001, 0xCCAC, 0x6002, 0xCBCB,
- 0x6003, 0xE2E4, 0x6004, 0xE2E6, 0x6005, 0xE2EA, 0x6006, 0xE2EB,
- 0x6007, 0x8FFE, 0x6008, 0x9040, 0x6009, 0x9041, 0x600A, 0xE2F7,
- 0x600B, 0x9042, 0x600C, 0x9043, 0x600D, 0xE2F4, 0x600E, 0xD4F5,
- 0x600F, 0xE2F3, 0x6010, 0x9044, 0x6011, 0x9045, 0x6012, 0xC5AD,
- 0x6013, 0x9046, 0x6014, 0xD5FA, 0x6015, 0xC5C2, 0x6016, 0xB2C0,
- 0x6017, 0x9047, 0x6018, 0x9048, 0x6019, 0xE2EF, 0x601A, 0x9049,
- 0x601B, 0xE2F2, 0x601C, 0xC1AF, 0x601D, 0xCBBC, 0x601E, 0x904A,
- 0x601F, 0x904B, 0x6020, 0xB5A1, 0x6021, 0xE2F9, 0x6022, 0x904C,
- 0x6023, 0x904D, 0x6024, 0x904E, 0x6025, 0xBCB1, 0x6026, 0xE2F1,
- 0x6027, 0xD0D4, 0x6028, 0xD4B9, 0x6029, 0xE2F5, 0x602A, 0xB9D6,
- 0x602B, 0xE2F6, 0x602C, 0x904F, 0x602D, 0x9050, 0x602E, 0x9051,
- 0x602F, 0xC7D3, 0x6030, 0x9052, 0x6031, 0x9053, 0x6032, 0x9054,
- 0x6033, 0x9055, 0x6034, 0x9056, 0x6035, 0xE2F0, 0x6036, 0x9057,
- 0x6037, 0x9058, 0x6038, 0x9059, 0x6039, 0x905A, 0x603A, 0x905B,
- 0x603B, 0xD7DC, 0x603C, 0xEDA1, 0x603D, 0x905C, 0x603E, 0x905D,
- 0x603F, 0xE2F8, 0x6040, 0x905E, 0x6041, 0xEDA5, 0x6042, 0xE2FE,
- 0x6043, 0xCAD1, 0x6044, 0x905F, 0x6045, 0x9060, 0x6046, 0x9061,
- 0x6047, 0x9062, 0x6048, 0x9063, 0x6049, 0x9064, 0x604A, 0x9065,
- 0x604B, 0xC1B5, 0x604C, 0x9066, 0x604D, 0xBBD0, 0x604E, 0x9067,
- 0x604F, 0x9068, 0x6050, 0xBFD6, 0x6051, 0x9069, 0x6052, 0xBAE3,
- 0x6053, 0x906A, 0x6054, 0x906B, 0x6055, 0xCBA1, 0x6056, 0x906C,
- 0x6057, 0x906D, 0x6058, 0x906E, 0x6059, 0xEDA6, 0x605A, 0xEDA3,
- 0x605B, 0x906F, 0x605C, 0x9070, 0x605D, 0xEDA2, 0x605E, 0x9071,
- 0x605F, 0x9072, 0x6060, 0x9073, 0x6061, 0x9074, 0x6062, 0xBBD6,
- 0x6063, 0xEDA7, 0x6064, 0xD0F4, 0x6065, 0x9075, 0x6066, 0x9076,
- 0x6067, 0xEDA4, 0x6068, 0xBADE, 0x6069, 0xB6F7, 0x606A, 0xE3A1,
- 0x606B, 0xB6B2, 0x606C, 0xCCF1, 0x606D, 0xB9A7, 0x606E, 0x9077,
- 0x606F, 0xCFA2, 0x6070, 0xC7A1, 0x6071, 0x9078, 0x6072, 0x9079,
- 0x6073, 0xBFD2, 0x6074, 0x907A, 0x6075, 0x907B, 0x6076, 0xB6F1,
- 0x6077, 0x907C, 0x6078, 0xE2FA, 0x6079, 0xE2FB, 0x607A, 0xE2FD,
- 0x607B, 0xE2FC, 0x607C, 0xC4D5, 0x607D, 0xE3A2, 0x607E, 0x907D,
- 0x607F, 0xD3C1, 0x6080, 0x907E, 0x6081, 0x9080, 0x6082, 0x9081,
- 0x6083, 0xE3A7, 0x6084, 0xC7C4, 0x6085, 0x9082, 0x6086, 0x9083,
- 0x6087, 0x9084, 0x6088, 0x9085, 0x6089, 0xCFA4, 0x608A, 0x9086,
- 0x608B, 0x9087, 0x608C, 0xE3A9, 0x608D, 0xBAB7, 0x608E, 0x9088,
- 0x608F, 0x9089, 0x6090, 0x908A, 0x6091, 0x908B, 0x6092, 0xE3A8,
- 0x6093, 0x908C, 0x6094, 0xBBDA, 0x6095, 0x908D, 0x6096, 0xE3A3,
- 0x6097, 0x908E, 0x6098, 0x908F, 0x6099, 0x9090, 0x609A, 0xE3A4,
- 0x609B, 0xE3AA, 0x609C, 0x9091, 0x609D, 0xE3A6, 0x609E, 0x9092,
- 0x609F, 0xCEF2, 0x60A0, 0xD3C6, 0x60A1, 0x9093, 0x60A2, 0x9094,
- 0x60A3, 0xBBBC, 0x60A4, 0x9095, 0x60A5, 0x9096, 0x60A6, 0xD4C3,
- 0x60A7, 0x9097, 0x60A8, 0xC4FA, 0x60A9, 0x9098, 0x60AA, 0x9099,
- 0x60AB, 0xEDA8, 0x60AC, 0xD0FC, 0x60AD, 0xE3A5, 0x60AE, 0x909A,
- 0x60AF, 0xC3F5, 0x60B0, 0x909B, 0x60B1, 0xE3AD, 0x60B2, 0xB1AF,
- 0x60B3, 0x909C, 0x60B4, 0xE3B2, 0x60B5, 0x909D, 0x60B6, 0x909E,
- 0x60B7, 0x909F, 0x60B8, 0xBCC2, 0x60B9, 0x90A0, 0x60BA, 0x90A1,
- 0x60BB, 0xE3AC, 0x60BC, 0xB5BF, 0x60BD, 0x90A2, 0x60BE, 0x90A3,
- 0x60BF, 0x90A4, 0x60C0, 0x90A5, 0x60C1, 0x90A6, 0x60C2, 0x90A7,
- 0x60C3, 0x90A8, 0x60C4, 0x90A9, 0x60C5, 0xC7E9, 0x60C6, 0xE3B0,
- 0x60C7, 0x90AA, 0x60C8, 0x90AB, 0x60C9, 0x90AC, 0x60CA, 0xBEAA,
- 0x60CB, 0xCDEF, 0x60CC, 0x90AD, 0x60CD, 0x90AE, 0x60CE, 0x90AF,
- 0x60CF, 0x90B0, 0x60D0, 0x90B1, 0x60D1, 0xBBF3, 0x60D2, 0x90B2,
- 0x60D3, 0x90B3, 0x60D4, 0x90B4, 0x60D5, 0xCCE8, 0x60D6, 0x90B5,
- 0x60D7, 0x90B6, 0x60D8, 0xE3AF, 0x60D9, 0x90B7, 0x60DA, 0xE3B1,
- 0x60DB, 0x90B8, 0x60DC, 0xCFA7, 0x60DD, 0xE3AE, 0x60DE, 0x90B9,
- 0x60DF, 0xCEA9, 0x60E0, 0xBBDD, 0x60E1, 0x90BA, 0x60E2, 0x90BB,
- 0x60E3, 0x90BC, 0x60E4, 0x90BD, 0x60E5, 0x90BE, 0x60E6, 0xB5EB,
- 0x60E7, 0xBEE5, 0x60E8, 0xB2D2, 0x60E9, 0xB3CD, 0x60EA, 0x90BF,
- 0x60EB, 0xB1B9, 0x60EC, 0xE3AB, 0x60ED, 0xB2D1, 0x60EE, 0xB5AC,
- 0x60EF, 0xB9DF, 0x60F0, 0xB6E8, 0x60F1, 0x90C0, 0x60F2, 0x90C1,
- 0x60F3, 0xCFEB, 0x60F4, 0xE3B7, 0x60F5, 0x90C2, 0x60F6, 0xBBCC,
- 0x60F7, 0x90C3, 0x60F8, 0x90C4, 0x60F9, 0xC8C7, 0x60FA, 0xD0CA,
- 0x60FB, 0x90C5, 0x60FC, 0x90C6, 0x60FD, 0x90C7, 0x60FE, 0x90C8,
- 0x60FF, 0x90C9, 0x6100, 0xE3B8, 0x6101, 0xB3EE, 0x6102, 0x90CA,
- 0x6103, 0x90CB, 0x6104, 0x90CC, 0x6105, 0x90CD, 0x6106, 0xEDA9,
- 0x6107, 0x90CE, 0x6108, 0xD3FA, 0x6109, 0xD3E4, 0x610A, 0x90CF,
- 0x610B, 0x90D0, 0x610C, 0x90D1, 0x610D, 0xEDAA, 0x610E, 0xE3B9,
- 0x610F, 0xD2E2, 0x6110, 0x90D2, 0x6111, 0x90D3, 0x6112, 0x90D4,
- 0x6113, 0x90D5, 0x6114, 0x90D6, 0x6115, 0xE3B5, 0x6116, 0x90D7,
- 0x6117, 0x90D8, 0x6118, 0x90D9, 0x6119, 0x90DA, 0x611A, 0xD3DE,
- 0x611B, 0x90DB, 0x611C, 0x90DC, 0x611D, 0x90DD, 0x611E, 0x90DE,
- 0x611F, 0xB8D0, 0x6120, 0xE3B3, 0x6121, 0x90DF, 0x6122, 0x90E0,
- 0x6123, 0xE3B6, 0x6124, 0xB7DF, 0x6125, 0x90E1, 0x6126, 0xE3B4,
- 0x6127, 0xC0A2, 0x6128, 0x90E2, 0x6129, 0x90E3, 0x612A, 0x90E4,
- 0x612B, 0xE3BA, 0x612C, 0x90E5, 0x612D, 0x90E6, 0x612E, 0x90E7,
- 0x612F, 0x90E8, 0x6130, 0x90E9, 0x6131, 0x90EA, 0x6132, 0x90EB,
- 0x6133, 0x90EC, 0x6134, 0x90ED, 0x6135, 0x90EE, 0x6136, 0x90EF,
- 0x6137, 0x90F0, 0x6138, 0x90F1, 0x6139, 0x90F2, 0x613A, 0x90F3,
- 0x613B, 0x90F4, 0x613C, 0x90F5, 0x613D, 0x90F6, 0x613E, 0x90F7,
- 0x613F, 0xD4B8, 0x6140, 0x90F8, 0x6141, 0x90F9, 0x6142, 0x90FA,
- 0x6143, 0x90FB, 0x6144, 0x90FC, 0x6145, 0x90FD, 0x6146, 0x90FE,
- 0x6147, 0x9140, 0x6148, 0xB4C8, 0x6149, 0x9141, 0x614A, 0xE3BB,
- 0x614B, 0x9142, 0x614C, 0xBBC5, 0x614D, 0x9143, 0x614E, 0xC9F7,
- 0x614F, 0x9144, 0x6150, 0x9145, 0x6151, 0xC9E5, 0x6152, 0x9146,
- 0x6153, 0x9147, 0x6154, 0x9148, 0x6155, 0xC4BD, 0x6156, 0x9149,
- 0x6157, 0x914A, 0x6158, 0x914B, 0x6159, 0x914C, 0x615A, 0x914D,
- 0x615B, 0x914E, 0x615C, 0x914F, 0x615D, 0xEDAB, 0x615E, 0x9150,
- 0x615F, 0x9151, 0x6160, 0x9152, 0x6161, 0x9153, 0x6162, 0xC2FD,
- 0x6163, 0x9154, 0x6164, 0x9155, 0x6165, 0x9156, 0x6166, 0x9157,
- 0x6167, 0xBBDB, 0x6168, 0xBFAE, 0x6169, 0x9158, 0x616A, 0x9159,
- 0x616B, 0x915A, 0x616C, 0x915B, 0x616D, 0x915C, 0x616E, 0x915D,
- 0x616F, 0x915E, 0x6170, 0xCEBF, 0x6171, 0x915F, 0x6172, 0x9160,
- 0x6173, 0x9161, 0x6174, 0x9162, 0x6175, 0xE3BC, 0x6176, 0x9163,
- 0x6177, 0xBFB6, 0x6178, 0x9164, 0x6179, 0x9165, 0x617A, 0x9166,
- 0x617B, 0x9167, 0x617C, 0x9168, 0x617D, 0x9169, 0x617E, 0x916A,
- 0x617F, 0x916B, 0x6180, 0x916C, 0x6181, 0x916D, 0x6182, 0x916E,
- 0x6183, 0x916F, 0x6184, 0x9170, 0x6185, 0x9171, 0x6186, 0x9172,
- 0x6187, 0x9173, 0x6188, 0x9174, 0x6189, 0x9175, 0x618A, 0x9176,
- 0x618B, 0xB1EF, 0x618C, 0x9177, 0x618D, 0x9178, 0x618E, 0xD4F7,
- 0x618F, 0x9179, 0x6190, 0x917A, 0x6191, 0x917B, 0x6192, 0x917C,
- 0x6193, 0x917D, 0x6194, 0xE3BE, 0x6195, 0x917E, 0x6196, 0x9180,
- 0x6197, 0x9181, 0x6198, 0x9182, 0x6199, 0x9183, 0x619A, 0x9184,
- 0x619B, 0x9185, 0x619C, 0x9186, 0x619D, 0xEDAD, 0x619E, 0x9187,
- 0x619F, 0x9188, 0x61A0, 0x9189, 0x61A1, 0x918A, 0x61A2, 0x918B,
- 0x61A3, 0x918C, 0x61A4, 0x918D, 0x61A5, 0x918E, 0x61A6, 0x918F,
- 0x61A7, 0xE3BF, 0x61A8, 0xBAA9, 0x61A9, 0xEDAC, 0x61AA, 0x9190,
- 0x61AB, 0x9191, 0x61AC, 0xE3BD, 0x61AD, 0x9192, 0x61AE, 0x9193,
- 0x61AF, 0x9194, 0x61B0, 0x9195, 0x61B1, 0x9196, 0x61B2, 0x9197,
- 0x61B3, 0x9198, 0x61B4, 0x9199, 0x61B5, 0x919A, 0x61B6, 0x919B,
- 0x61B7, 0xE3C0, 0x61B8, 0x919C, 0x61B9, 0x919D, 0x61BA, 0x919E,
- 0x61BB, 0x919F, 0x61BC, 0x91A0, 0x61BD, 0x91A1, 0x61BE, 0xBAB6,
- 0x61BF, 0x91A2, 0x61C0, 0x91A3, 0x61C1, 0x91A4, 0x61C2, 0xB6AE,
- 0x61C3, 0x91A5, 0x61C4, 0x91A6, 0x61C5, 0x91A7, 0x61C6, 0x91A8,
- 0x61C7, 0x91A9, 0x61C8, 0xD0B8, 0x61C9, 0x91AA, 0x61CA, 0xB0C3,
- 0x61CB, 0xEDAE, 0x61CC, 0x91AB, 0x61CD, 0x91AC, 0x61CE, 0x91AD,
- 0x61CF, 0x91AE, 0x61D0, 0x91AF, 0x61D1, 0xEDAF, 0x61D2, 0xC0C1,
- 0x61D3, 0x91B0, 0x61D4, 0xE3C1, 0x61D5, 0x91B1, 0x61D6, 0x91B2,
- 0x61D7, 0x91B3, 0x61D8, 0x91B4, 0x61D9, 0x91B5, 0x61DA, 0x91B6,
- 0x61DB, 0x91B7, 0x61DC, 0x91B8, 0x61DD, 0x91B9, 0x61DE, 0x91BA,
- 0x61DF, 0x91BB, 0x61E0, 0x91BC, 0x61E1, 0x91BD, 0x61E2, 0x91BE,
- 0x61E3, 0x91BF, 0x61E4, 0x91C0, 0x61E5, 0x91C1, 0x61E6, 0xC5B3,
- 0x61E7, 0x91C2, 0x61E8, 0x91C3, 0x61E9, 0x91C4, 0x61EA, 0x91C5,
- 0x61EB, 0x91C6, 0x61EC, 0x91C7, 0x61ED, 0x91C8, 0x61EE, 0x91C9,
- 0x61EF, 0x91CA, 0x61F0, 0x91CB, 0x61F1, 0x91CC, 0x61F2, 0x91CD,
- 0x61F3, 0x91CE, 0x61F4, 0x91CF, 0x61F5, 0xE3C2, 0x61F6, 0x91D0,
- 0x61F7, 0x91D1, 0x61F8, 0x91D2, 0x61F9, 0x91D3, 0x61FA, 0x91D4,
- 0x61FB, 0x91D5, 0x61FC, 0x91D6, 0x61FD, 0x91D7, 0x61FE, 0x91D8,
- 0x61FF, 0xDCB2, 0x6200, 0x91D9, 0x6201, 0x91DA, 0x6202, 0x91DB,
- 0x6203, 0x91DC, 0x6204, 0x91DD, 0x6205, 0x91DE, 0x6206, 0xEDB0,
- 0x6207, 0x91DF, 0x6208, 0xB8EA, 0x6209, 0x91E0, 0x620A, 0xCEEC,
- 0x620B, 0xEAA7, 0x620C, 0xD0E7, 0x620D, 0xCAF9, 0x620E, 0xC8D6,
- 0x620F, 0xCFB7, 0x6210, 0xB3C9, 0x6211, 0xCED2, 0x6212, 0xBDE4,
- 0x6213, 0x91E1, 0x6214, 0x91E2, 0x6215, 0xE3DE, 0x6216, 0xBBF2,
- 0x6217, 0xEAA8, 0x6218, 0xD5BD, 0x6219, 0x91E3, 0x621A, 0xC6DD,
- 0x621B, 0xEAA9, 0x621C, 0x91E4, 0x621D, 0x91E5, 0x621E, 0x91E6,
- 0x621F, 0xEAAA, 0x6220, 0x91E7, 0x6221, 0xEAAC, 0x6222, 0xEAAB,
- 0x6223, 0x91E8, 0x6224, 0xEAAE, 0x6225, 0xEAAD, 0x6226, 0x91E9,
- 0x6227, 0x91EA, 0x6228, 0x91EB, 0x6229, 0x91EC, 0x622A, 0xBDD8,
- 0x622B, 0x91ED, 0x622C, 0xEAAF, 0x622D, 0x91EE, 0x622E, 0xC2BE,
- 0x622F, 0x91EF, 0x6230, 0x91F0, 0x6231, 0x91F1, 0x6232, 0x91F2,
- 0x6233, 0xB4C1, 0x6234, 0xB4F7, 0x6235, 0x91F3, 0x6236, 0x91F4,
- 0x6237, 0xBBA7, 0x6238, 0x91F5, 0x6239, 0x91F6, 0x623A, 0x91F7,
- 0x623B, 0x91F8, 0x623C, 0x91F9, 0x623D, 0xECE6, 0x623E, 0xECE5,
- 0x623F, 0xB7BF, 0x6240, 0xCBF9, 0x6241, 0xB1E2, 0x6242, 0x91FA,
- 0x6243, 0xECE7, 0x6244, 0x91FB, 0x6245, 0x91FC, 0x6246, 0x91FD,
- 0x6247, 0xC9C8, 0x6248, 0xECE8, 0x6249, 0xECE9, 0x624A, 0x91FE,
- 0x624B, 0xCAD6, 0x624C, 0xDED0, 0x624D, 0xB2C5, 0x624E, 0xD4FA,
- 0x624F, 0x9240, 0x6250, 0x9241, 0x6251, 0xC6CB, 0x6252, 0xB0C7,
- 0x6253, 0xB4F2, 0x6254, 0xC8D3, 0x6255, 0x9242, 0x6256, 0x9243,
- 0x6257, 0x9244, 0x6258, 0xCDD0, 0x6259, 0x9245, 0x625A, 0x9246,
- 0x625B, 0xBFB8, 0x625C, 0x9247, 0x625D, 0x9248, 0x625E, 0x9249,
- 0x625F, 0x924A, 0x6260, 0x924B, 0x6261, 0x924C, 0x6262, 0x924D,
- 0x6263, 0xBFDB, 0x6264, 0x924E, 0x6265, 0x924F, 0x6266, 0xC7A4,
- 0x6267, 0xD6B4, 0x6268, 0x9250, 0x6269, 0xC0A9, 0x626A, 0xDED1,
- 0x626B, 0xC9A8, 0x626C, 0xD1EF, 0x626D, 0xC5A4, 0x626E, 0xB0E7,
- 0x626F, 0xB3B6, 0x6270, 0xC8C5, 0x6271, 0x9251, 0x6272, 0x9252,
- 0x6273, 0xB0E2, 0x6274, 0x9253, 0x6275, 0x9254, 0x6276, 0xB7F6,
- 0x6277, 0x9255, 0x6278, 0x9256, 0x6279, 0xC5FA, 0x627A, 0x9257,
- 0x627B, 0x9258, 0x627C, 0xB6F3, 0x627D, 0x9259, 0x627E, 0xD5D2,
- 0x627F, 0xB3D0, 0x6280, 0xBCBC, 0x6281, 0x925A, 0x6282, 0x925B,
- 0x6283, 0x925C, 0x6284, 0xB3AD, 0x6285, 0x925D, 0x6286, 0x925E,
- 0x6287, 0x925F, 0x6288, 0x9260, 0x6289, 0xBEF1, 0x628A, 0xB0D1,
- 0x628B, 0x9261, 0x628C, 0x9262, 0x628D, 0x9263, 0x628E, 0x9264,
- 0x628F, 0x9265, 0x6290, 0x9266, 0x6291, 0xD2D6, 0x6292, 0xCAE3,
- 0x6293, 0xD7A5, 0x6294, 0x9267, 0x6295, 0xCDB6, 0x6296, 0xB6B6,
- 0x6297, 0xBFB9, 0x6298, 0xD5DB, 0x6299, 0x9268, 0x629A, 0xB8A7,
- 0x629B, 0xC5D7, 0x629C, 0x9269, 0x629D, 0x926A, 0x629E, 0x926B,
- 0x629F, 0xDED2, 0x62A0, 0xBFD9, 0x62A1, 0xC2D5, 0x62A2, 0xC7C0,
- 0x62A3, 0x926C, 0x62A4, 0xBBA4, 0x62A5, 0xB1A8, 0x62A6, 0x926D,
- 0x62A7, 0x926E, 0x62A8, 0xC5EA, 0x62A9, 0x926F, 0x62AA, 0x9270,
- 0x62AB, 0xC5FB, 0x62AC, 0xCCA7, 0x62AD, 0x9271, 0x62AE, 0x9272,
- 0x62AF, 0x9273, 0x62B0, 0x9274, 0x62B1, 0xB1A7, 0x62B2, 0x9275,
- 0x62B3, 0x9276, 0x62B4, 0x9277, 0x62B5, 0xB5D6, 0x62B6, 0x9278,
- 0x62B7, 0x9279, 0x62B8, 0x927A, 0x62B9, 0xC4A8, 0x62BA, 0x927B,
- 0x62BB, 0xDED3, 0x62BC, 0xD1BA, 0x62BD, 0xB3E9, 0x62BE, 0x927C,
- 0x62BF, 0xC3F2, 0x62C0, 0x927D, 0x62C1, 0x927E, 0x62C2, 0xB7F7,
- 0x62C3, 0x9280, 0x62C4, 0xD6F4, 0x62C5, 0xB5A3, 0x62C6, 0xB2F0,
- 0x62C7, 0xC4B4, 0x62C8, 0xC4E9, 0x62C9, 0xC0AD, 0x62CA, 0xDED4,
- 0x62CB, 0x9281, 0x62CC, 0xB0E8, 0x62CD, 0xC5C4, 0x62CE, 0xC1E0,
- 0x62CF, 0x9282, 0x62D0, 0xB9D5, 0x62D1, 0x9283, 0x62D2, 0xBEDC,
- 0x62D3, 0xCDD8, 0x62D4, 0xB0CE, 0x62D5, 0x9284, 0x62D6, 0xCDCF,
- 0x62D7, 0xDED6, 0x62D8, 0xBED0, 0x62D9, 0xD7BE, 0x62DA, 0xDED5,
- 0x62DB, 0xD5D0, 0x62DC, 0xB0DD, 0x62DD, 0x9285, 0x62DE, 0x9286,
- 0x62DF, 0xC4E2, 0x62E0, 0x9287, 0x62E1, 0x9288, 0x62E2, 0xC2A3,
- 0x62E3, 0xBCF0, 0x62E4, 0x9289, 0x62E5, 0xD3B5, 0x62E6, 0xC0B9,
- 0x62E7, 0xC5A1, 0x62E8, 0xB2A6, 0x62E9, 0xD4F1, 0x62EA, 0x928A,
- 0x62EB, 0x928B, 0x62EC, 0xC0A8, 0x62ED, 0xCAC3, 0x62EE, 0xDED7,
- 0x62EF, 0xD5FC, 0x62F0, 0x928C, 0x62F1, 0xB9B0, 0x62F2, 0x928D,
- 0x62F3, 0xC8AD, 0x62F4, 0xCBA9, 0x62F5, 0x928E, 0x62F6, 0xDED9,
- 0x62F7, 0xBFBD, 0x62F8, 0x928F, 0x62F9, 0x9290, 0x62FA, 0x9291,
- 0x62FB, 0x9292, 0x62FC, 0xC6B4, 0x62FD, 0xD7A7, 0x62FE, 0xCAB0,
- 0x62FF, 0xC4C3, 0x6300, 0x9293, 0x6301, 0xB3D6, 0x6302, 0xB9D2,
- 0x6303, 0x9294, 0x6304, 0x9295, 0x6305, 0x9296, 0x6306, 0x9297,
- 0x6307, 0xD6B8, 0x6308, 0xEAFC, 0x6309, 0xB0B4, 0x630A, 0x9298,
- 0x630B, 0x9299, 0x630C, 0x929A, 0x630D, 0x929B, 0x630E, 0xBFE6,
- 0x630F, 0x929C, 0x6310, 0x929D, 0x6311, 0xCCF4, 0x6312, 0x929E,
- 0x6313, 0x929F, 0x6314, 0x92A0, 0x6315, 0x92A1, 0x6316, 0xCDDA,
- 0x6317, 0x92A2, 0x6318, 0x92A3, 0x6319, 0x92A4, 0x631A, 0xD6BF,
- 0x631B, 0xC2CE, 0x631C, 0x92A5, 0x631D, 0xCECE, 0x631E, 0xCCA2,
- 0x631F, 0xD0AE, 0x6320, 0xC4D3, 0x6321, 0xB5B2, 0x6322, 0xDED8,
- 0x6323, 0xD5F5, 0x6324, 0xBCB7, 0x6325, 0xBBD3, 0x6326, 0x92A6,
- 0x6327, 0x92A7, 0x6328, 0xB0A4, 0x6329, 0x92A8, 0x632A, 0xC5B2,
- 0x632B, 0xB4EC, 0x632C, 0x92A9, 0x632D, 0x92AA, 0x632E, 0x92AB,
- 0x632F, 0xD5F1, 0x6330, 0x92AC, 0x6331, 0x92AD, 0x6332, 0xEAFD,
- 0x6333, 0x92AE, 0x6334, 0x92AF, 0x6335, 0x92B0, 0x6336, 0x92B1,
- 0x6337, 0x92B2, 0x6338, 0x92B3, 0x6339, 0xDEDA, 0x633A, 0xCDA6,
- 0x633B, 0x92B4, 0x633C, 0x92B5, 0x633D, 0xCDEC, 0x633E, 0x92B6,
- 0x633F, 0x92B7, 0x6340, 0x92B8, 0x6341, 0x92B9, 0x6342, 0xCEE6,
- 0x6343, 0xDEDC, 0x6344, 0x92BA, 0x6345, 0xCDB1, 0x6346, 0xC0A6,
- 0x6347, 0x92BB, 0x6348, 0x92BC, 0x6349, 0xD7BD, 0x634A, 0x92BD,
- 0x634B, 0xDEDB, 0x634C, 0xB0C6, 0x634D, 0xBAB4, 0x634E, 0xC9D3,
- 0x634F, 0xC4F3, 0x6350, 0xBEE8, 0x6351, 0x92BE, 0x6352, 0x92BF,
- 0x6353, 0x92C0, 0x6354, 0x92C1, 0x6355, 0xB2B6, 0x6356, 0x92C2,
- 0x6357, 0x92C3, 0x6358, 0x92C4, 0x6359, 0x92C5, 0x635A, 0x92C6,
- 0x635B, 0x92C7, 0x635C, 0x92C8, 0x635D, 0x92C9, 0x635E, 0xC0CC,
- 0x635F, 0xCBF0, 0x6360, 0x92CA, 0x6361, 0xBCF1, 0x6362, 0xBBBB,
- 0x6363, 0xB5B7, 0x6364, 0x92CB, 0x6365, 0x92CC, 0x6366, 0x92CD,
- 0x6367, 0xC5F5, 0x6368, 0x92CE, 0x6369, 0xDEE6, 0x636A, 0x92CF,
- 0x636B, 0x92D0, 0x636C, 0x92D1, 0x636D, 0xDEE3, 0x636E, 0xBEDD,
- 0x636F, 0x92D2, 0x6370, 0x92D3, 0x6371, 0xDEDF, 0x6372, 0x92D4,
- 0x6373, 0x92D5, 0x6374, 0x92D6, 0x6375, 0x92D7, 0x6376, 0xB4B7,
- 0x6377, 0xBDDD, 0x6378, 0x92D8, 0x6379, 0x92D9, 0x637A, 0xDEE0,
- 0x637B, 0xC4ED, 0x637C, 0x92DA, 0x637D, 0x92DB, 0x637E, 0x92DC,
- 0x637F, 0x92DD, 0x6380, 0xCFC6, 0x6381, 0x92DE, 0x6382, 0xB5E0,
- 0x6383, 0x92DF, 0x6384, 0x92E0, 0x6385, 0x92E1, 0x6386, 0x92E2,
- 0x6387, 0xB6DE, 0x6388, 0xCADA, 0x6389, 0xB5F4, 0x638A, 0xDEE5,
- 0x638B, 0x92E3, 0x638C, 0xD5C6, 0x638D, 0x92E4, 0x638E, 0xDEE1,
- 0x638F, 0xCCCD, 0x6390, 0xC6FE, 0x6391, 0x92E5, 0x6392, 0xC5C5,
- 0x6393, 0x92E6, 0x6394, 0x92E7, 0x6395, 0x92E8, 0x6396, 0xD2B4,
- 0x6397, 0x92E9, 0x6398, 0xBEF2, 0x6399, 0x92EA, 0x639A, 0x92EB,
- 0x639B, 0x92EC, 0x639C, 0x92ED, 0x639D, 0x92EE, 0x639E, 0x92EF,
- 0x639F, 0x92F0, 0x63A0, 0xC2D3, 0x63A1, 0x92F1, 0x63A2, 0xCCBD,
- 0x63A3, 0xB3B8, 0x63A4, 0x92F2, 0x63A5, 0xBDD3, 0x63A6, 0x92F3,
- 0x63A7, 0xBFD8, 0x63A8, 0xCDC6, 0x63A9, 0xD1DA, 0x63AA, 0xB4EB,
- 0x63AB, 0x92F4, 0x63AC, 0xDEE4, 0x63AD, 0xDEDD, 0x63AE, 0xDEE7,
- 0x63AF, 0x92F5, 0x63B0, 0xEAFE, 0x63B1, 0x92F6, 0x63B2, 0x92F7,
- 0x63B3, 0xC2B0, 0x63B4, 0xDEE2, 0x63B5, 0x92F8, 0x63B6, 0x92F9,
- 0x63B7, 0xD6C0, 0x63B8, 0xB5A7, 0x63B9, 0x92FA, 0x63BA, 0xB2F4,
- 0x63BB, 0x92FB, 0x63BC, 0xDEE8, 0x63BD, 0x92FC, 0x63BE, 0xDEF2,
- 0x63BF, 0x92FD, 0x63C0, 0x92FE, 0x63C1, 0x9340, 0x63C2, 0x9341,
- 0x63C3, 0x9342, 0x63C4, 0xDEED, 0x63C5, 0x9343, 0x63C6, 0xDEF1,
- 0x63C7, 0x9344, 0x63C8, 0x9345, 0x63C9, 0xC8E0, 0x63CA, 0x9346,
- 0x63CB, 0x9347, 0x63CC, 0x9348, 0x63CD, 0xD7E1, 0x63CE, 0xDEEF,
- 0x63CF, 0xC3E8, 0x63D0, 0xCCE1, 0x63D1, 0x9349, 0x63D2, 0xB2E5,
- 0x63D3, 0x934A, 0x63D4, 0x934B, 0x63D5, 0x934C, 0x63D6, 0xD2BE,
- 0x63D7, 0x934D, 0x63D8, 0x934E, 0x63D9, 0x934F, 0x63DA, 0x9350,
- 0x63DB, 0x9351, 0x63DC, 0x9352, 0x63DD, 0x9353, 0x63DE, 0xDEEE,
- 0x63DF, 0x9354, 0x63E0, 0xDEEB, 0x63E1, 0xCED5, 0x63E2, 0x9355,
- 0x63E3, 0xB4A7, 0x63E4, 0x9356, 0x63E5, 0x9357, 0x63E6, 0x9358,
- 0x63E7, 0x9359, 0x63E8, 0x935A, 0x63E9, 0xBFAB, 0x63EA, 0xBEBE,
- 0x63EB, 0x935B, 0x63EC, 0x935C, 0x63ED, 0xBDD2, 0x63EE, 0x935D,
- 0x63EF, 0x935E, 0x63F0, 0x935F, 0x63F1, 0x9360, 0x63F2, 0xDEE9,
- 0x63F3, 0x9361, 0x63F4, 0xD4AE, 0x63F5, 0x9362, 0x63F6, 0xDEDE,
- 0x63F7, 0x9363, 0x63F8, 0xDEEA, 0x63F9, 0x9364, 0x63FA, 0x9365,
- 0x63FB, 0x9366, 0x63FC, 0x9367, 0x63FD, 0xC0BF, 0x63FE, 0x9368,
- 0x63FF, 0xDEEC, 0x6400, 0xB2F3, 0x6401, 0xB8E9, 0x6402, 0xC2A7,
- 0x6403, 0x9369, 0x6404, 0x936A, 0x6405, 0xBDC1, 0x6406, 0x936B,
- 0x6407, 0x936C, 0x6408, 0x936D, 0x6409, 0x936E, 0x640A, 0x936F,
- 0x640B, 0xDEF5, 0x640C, 0xDEF8, 0x640D, 0x9370, 0x640E, 0x9371,
- 0x640F, 0xB2AB, 0x6410, 0xB4A4, 0x6411, 0x9372, 0x6412, 0x9373,
- 0x6413, 0xB4EA, 0x6414, 0xC9A6, 0x6415, 0x9374, 0x6416, 0x9375,
- 0x6417, 0x9376, 0x6418, 0x9377, 0x6419, 0x9378, 0x641A, 0x9379,
- 0x641B, 0xDEF6, 0x641C, 0xCBD1, 0x641D, 0x937A, 0x641E, 0xB8E3,
- 0x641F, 0x937B, 0x6420, 0xDEF7, 0x6421, 0xDEFA, 0x6422, 0x937C,
- 0x6423, 0x937D, 0x6424, 0x937E, 0x6425, 0x9380, 0x6426, 0xDEF9,
- 0x6427, 0x9381, 0x6428, 0x9382, 0x6429, 0x9383, 0x642A, 0xCCC2,
- 0x642B, 0x9384, 0x642C, 0xB0E1, 0x642D, 0xB4EE, 0x642E, 0x9385,
- 0x642F, 0x9386, 0x6430, 0x9387, 0x6431, 0x9388, 0x6432, 0x9389,
- 0x6433, 0x938A, 0x6434, 0xE5BA, 0x6435, 0x938B, 0x6436, 0x938C,
- 0x6437, 0x938D, 0x6438, 0x938E, 0x6439, 0x938F, 0x643A, 0xD0AF,
- 0x643B, 0x9390, 0x643C, 0x9391, 0x643D, 0xB2EB, 0x643E, 0x9392,
- 0x643F, 0xEBA1, 0x6440, 0x9393, 0x6441, 0xDEF4, 0x6442, 0x9394,
- 0x6443, 0x9395, 0x6444, 0xC9E3, 0x6445, 0xDEF3, 0x6446, 0xB0DA,
- 0x6447, 0xD2A1, 0x6448, 0xB1F7, 0x6449, 0x9396, 0x644A, 0xCCAF,
- 0x644B, 0x9397, 0x644C, 0x9398, 0x644D, 0x9399, 0x644E, 0x939A,
- 0x644F, 0x939B, 0x6450, 0x939C, 0x6451, 0x939D, 0x6452, 0xDEF0,
- 0x6453, 0x939E, 0x6454, 0xCBA4, 0x6455, 0x939F, 0x6456, 0x93A0,
- 0x6457, 0x93A1, 0x6458, 0xD5AA, 0x6459, 0x93A2, 0x645A, 0x93A3,
- 0x645B, 0x93A4, 0x645C, 0x93A5, 0x645D, 0x93A6, 0x645E, 0xDEFB,
- 0x645F, 0x93A7, 0x6460, 0x93A8, 0x6461, 0x93A9, 0x6462, 0x93AA,
- 0x6463, 0x93AB, 0x6464, 0x93AC, 0x6465, 0x93AD, 0x6466, 0x93AE,
- 0x6467, 0xB4DD, 0x6468, 0x93AF, 0x6469, 0xC4A6, 0x646A, 0x93B0,
- 0x646B, 0x93B1, 0x646C, 0x93B2, 0x646D, 0xDEFD, 0x646E, 0x93B3,
- 0x646F, 0x93B4, 0x6470, 0x93B5, 0x6471, 0x93B6, 0x6472, 0x93B7,
- 0x6473, 0x93B8, 0x6474, 0x93B9, 0x6475, 0x93BA, 0x6476, 0x93BB,
- 0x6477, 0x93BC, 0x6478, 0xC3FE, 0x6479, 0xC4A1, 0x647A, 0xDFA1,
- 0x647B, 0x93BD, 0x647C, 0x93BE, 0x647D, 0x93BF, 0x647E, 0x93C0,
- 0x647F, 0x93C1, 0x6480, 0x93C2, 0x6481, 0x93C3, 0x6482, 0xC1CC,
- 0x6483, 0x93C4, 0x6484, 0xDEFC, 0x6485, 0xBEEF, 0x6486, 0x93C5,
- 0x6487, 0xC6B2, 0x6488, 0x93C6, 0x6489, 0x93C7, 0x648A, 0x93C8,
- 0x648B, 0x93C9, 0x648C, 0x93CA, 0x648D, 0x93CB, 0x648E, 0x93CC,
- 0x648F, 0x93CD, 0x6490, 0x93CE, 0x6491, 0xB3C5, 0x6492, 0xC8F6,
- 0x6493, 0x93CF, 0x6494, 0x93D0, 0x6495, 0xCBBA, 0x6496, 0xDEFE,
- 0x6497, 0x93D1, 0x6498, 0x93D2, 0x6499, 0xDFA4, 0x649A, 0x93D3,
- 0x649B, 0x93D4, 0x649C, 0x93D5, 0x649D, 0x93D6, 0x649E, 0xD7B2,
- 0x649F, 0x93D7, 0x64A0, 0x93D8, 0x64A1, 0x93D9, 0x64A2, 0x93DA,
- 0x64A3, 0x93DB, 0x64A4, 0xB3B7, 0x64A5, 0x93DC, 0x64A6, 0x93DD,
- 0x64A7, 0x93DE, 0x64A8, 0x93DF, 0x64A9, 0xC1C3, 0x64AA, 0x93E0,
- 0x64AB, 0x93E1, 0x64AC, 0xC7CB, 0x64AD, 0xB2A5, 0x64AE, 0xB4E9,
- 0x64AF, 0x93E2, 0x64B0, 0xD7AB, 0x64B1, 0x93E3, 0x64B2, 0x93E4,
- 0x64B3, 0x93E5, 0x64B4, 0x93E6, 0x64B5, 0xC4EC, 0x64B6, 0x93E7,
- 0x64B7, 0xDFA2, 0x64B8, 0xDFA3, 0x64B9, 0x93E8, 0x64BA, 0xDFA5,
- 0x64BB, 0x93E9, 0x64BC, 0xBAB3, 0x64BD, 0x93EA, 0x64BE, 0x93EB,
- 0x64BF, 0x93EC, 0x64C0, 0xDFA6, 0x64C1, 0x93ED, 0x64C2, 0xC0DE,
- 0x64C3, 0x93EE, 0x64C4, 0x93EF, 0x64C5, 0xC9C3, 0x64C6, 0x93F0,
- 0x64C7, 0x93F1, 0x64C8, 0x93F2, 0x64C9, 0x93F3, 0x64CA, 0x93F4,
- 0x64CB, 0x93F5, 0x64CC, 0x93F6, 0x64CD, 0xB2D9, 0x64CE, 0xC7E6,
- 0x64CF, 0x93F7, 0x64D0, 0xDFA7, 0x64D1, 0x93F8, 0x64D2, 0xC7DC,
- 0x64D3, 0x93F9, 0x64D4, 0x93FA, 0x64D5, 0x93FB, 0x64D6, 0x93FC,
- 0x64D7, 0xDFA8, 0x64D8, 0xEBA2, 0x64D9, 0x93FD, 0x64DA, 0x93FE,
- 0x64DB, 0x9440, 0x64DC, 0x9441, 0x64DD, 0x9442, 0x64DE, 0xCBD3,
- 0x64DF, 0x9443, 0x64E0, 0x9444, 0x64E1, 0x9445, 0x64E2, 0xDFAA,
- 0x64E3, 0x9446, 0x64E4, 0xDFA9, 0x64E5, 0x9447, 0x64E6, 0xB2C1,
- 0x64E7, 0x9448, 0x64E8, 0x9449, 0x64E9, 0x944A, 0x64EA, 0x944B,
- 0x64EB, 0x944C, 0x64EC, 0x944D, 0x64ED, 0x944E, 0x64EE, 0x944F,
- 0x64EF, 0x9450, 0x64F0, 0x9451, 0x64F1, 0x9452, 0x64F2, 0x9453,
- 0x64F3, 0x9454, 0x64F4, 0x9455, 0x64F5, 0x9456, 0x64F6, 0x9457,
- 0x64F7, 0x9458, 0x64F8, 0x9459, 0x64F9, 0x945A, 0x64FA, 0x945B,
- 0x64FB, 0x945C, 0x64FC, 0x945D, 0x64FD, 0x945E, 0x64FE, 0x945F,
- 0x64FF, 0x9460, 0x6500, 0xC5CA, 0x6501, 0x9461, 0x6502, 0x9462,
- 0x6503, 0x9463, 0x6504, 0x9464, 0x6505, 0x9465, 0x6506, 0x9466,
- 0x6507, 0x9467, 0x6508, 0x9468, 0x6509, 0xDFAB, 0x650A, 0x9469,
- 0x650B, 0x946A, 0x650C, 0x946B, 0x650D, 0x946C, 0x650E, 0x946D,
- 0x650F, 0x946E, 0x6510, 0x946F, 0x6511, 0x9470, 0x6512, 0xD4DC,
- 0x6513, 0x9471, 0x6514, 0x9472, 0x6515, 0x9473, 0x6516, 0x9474,
- 0x6517, 0x9475, 0x6518, 0xC8C1, 0x6519, 0x9476, 0x651A, 0x9477,
- 0x651B, 0x9478, 0x651C, 0x9479, 0x651D, 0x947A, 0x651E, 0x947B,
- 0x651F, 0x947C, 0x6520, 0x947D, 0x6521, 0x947E, 0x6522, 0x9480,
- 0x6523, 0x9481, 0x6524, 0x9482, 0x6525, 0xDFAC, 0x6526, 0x9483,
- 0x6527, 0x9484, 0x6528, 0x9485, 0x6529, 0x9486, 0x652A, 0x9487,
- 0x652B, 0xBEF0, 0x652C, 0x9488, 0x652D, 0x9489, 0x652E, 0xDFAD,
- 0x652F, 0xD6A7, 0x6530, 0x948A, 0x6531, 0x948B, 0x6532, 0x948C,
- 0x6533, 0x948D, 0x6534, 0xEAB7, 0x6535, 0xEBB6, 0x6536, 0xCAD5,
- 0x6537, 0x948E, 0x6538, 0xD8FC, 0x6539, 0xB8C4, 0x653A, 0x948F,
- 0x653B, 0xB9A5, 0x653C, 0x9490, 0x653D, 0x9491, 0x653E, 0xB7C5,
- 0x653F, 0xD5FE, 0x6540, 0x9492, 0x6541, 0x9493, 0x6542, 0x9494,
- 0x6543, 0x9495, 0x6544, 0x9496, 0x6545, 0xB9CA, 0x6546, 0x9497,
- 0x6547, 0x9498, 0x6548, 0xD0A7, 0x6549, 0xF4CD, 0x654A, 0x9499,
- 0x654B, 0x949A, 0x654C, 0xB5D0, 0x654D, 0x949B, 0x654E, 0x949C,
- 0x654F, 0xC3F4, 0x6550, 0x949D, 0x6551, 0xBEC8, 0x6552, 0x949E,
- 0x6553, 0x949F, 0x6554, 0x94A0, 0x6555, 0xEBB7, 0x6556, 0xB0BD,
- 0x6557, 0x94A1, 0x6558, 0x94A2, 0x6559, 0xBDCC, 0x655A, 0x94A3,
- 0x655B, 0xC1B2, 0x655C, 0x94A4, 0x655D, 0xB1D6, 0x655E, 0xB3A8,
- 0x655F, 0x94A5, 0x6560, 0x94A6, 0x6561, 0x94A7, 0x6562, 0xB8D2,
- 0x6563, 0xC9A2, 0x6564, 0x94A8, 0x6565, 0x94A9, 0x6566, 0xB6D8,
- 0x6567, 0x94AA, 0x6568, 0x94AB, 0x6569, 0x94AC, 0x656A, 0x94AD,
- 0x656B, 0xEBB8, 0x656C, 0xBEB4, 0x656D, 0x94AE, 0x656E, 0x94AF,
- 0x656F, 0x94B0, 0x6570, 0xCAFD, 0x6571, 0x94B1, 0x6572, 0xC7C3,
- 0x6573, 0x94B2, 0x6574, 0xD5FB, 0x6575, 0x94B3, 0x6576, 0x94B4,
- 0x6577, 0xB7F3, 0x6578, 0x94B5, 0x6579, 0x94B6, 0x657A, 0x94B7,
- 0x657B, 0x94B8, 0x657C, 0x94B9, 0x657D, 0x94BA, 0x657E, 0x94BB,
- 0x657F, 0x94BC, 0x6580, 0x94BD, 0x6581, 0x94BE, 0x6582, 0x94BF,
- 0x6583, 0x94C0, 0x6584, 0x94C1, 0x6585, 0x94C2, 0x6586, 0x94C3,
- 0x6587, 0xCEC4, 0x6588, 0x94C4, 0x6589, 0x94C5, 0x658A, 0x94C6,
- 0x658B, 0xD5AB, 0x658C, 0xB1F3, 0x658D, 0x94C7, 0x658E, 0x94C8,
- 0x658F, 0x94C9, 0x6590, 0xECB3, 0x6591, 0xB0DF, 0x6592, 0x94CA,
- 0x6593, 0xECB5, 0x6594, 0x94CB, 0x6595, 0x94CC, 0x6596, 0x94CD,
- 0x6597, 0xB6B7, 0x6598, 0x94CE, 0x6599, 0xC1CF, 0x659A, 0x94CF,
- 0x659B, 0xF5FA, 0x659C, 0xD0B1, 0x659D, 0x94D0, 0x659E, 0x94D1,
- 0x659F, 0xD5E5, 0x65A0, 0x94D2, 0x65A1, 0xCED3, 0x65A2, 0x94D3,
- 0x65A3, 0x94D4, 0x65A4, 0xBDEF, 0x65A5, 0xB3E2, 0x65A6, 0x94D5,
- 0x65A7, 0xB8AB, 0x65A8, 0x94D6, 0x65A9, 0xD5B6, 0x65AA, 0x94D7,
- 0x65AB, 0xEDBD, 0x65AC, 0x94D8, 0x65AD, 0xB6CF, 0x65AE, 0x94D9,
- 0x65AF, 0xCBB9, 0x65B0, 0xD0C2, 0x65B1, 0x94DA, 0x65B2, 0x94DB,
- 0x65B3, 0x94DC, 0x65B4, 0x94DD, 0x65B5, 0x94DE, 0x65B6, 0x94DF,
- 0x65B7, 0x94E0, 0x65B8, 0x94E1, 0x65B9, 0xB7BD, 0x65BA, 0x94E2,
- 0x65BB, 0x94E3, 0x65BC, 0xECB6, 0x65BD, 0xCAA9, 0x65BE, 0x94E4,
- 0x65BF, 0x94E5, 0x65C0, 0x94E6, 0x65C1, 0xC5D4, 0x65C2, 0x94E7,
- 0x65C3, 0xECB9, 0x65C4, 0xECB8, 0x65C5, 0xC2C3, 0x65C6, 0xECB7,
- 0x65C7, 0x94E8, 0x65C8, 0x94E9, 0x65C9, 0x94EA, 0x65CA, 0x94EB,
- 0x65CB, 0xD0FD, 0x65CC, 0xECBA, 0x65CD, 0x94EC, 0x65CE, 0xECBB,
- 0x65CF, 0xD7E5, 0x65D0, 0x94ED, 0x65D1, 0x94EE, 0x65D2, 0xECBC,
- 0x65D3, 0x94EF, 0x65D4, 0x94F0, 0x65D5, 0x94F1, 0x65D6, 0xECBD,
- 0x65D7, 0xC6EC, 0x65D8, 0x94F2, 0x65D9, 0x94F3, 0x65DA, 0x94F4,
- 0x65DB, 0x94F5, 0x65DC, 0x94F6, 0x65DD, 0x94F7, 0x65DE, 0x94F8,
- 0x65DF, 0x94F9, 0x65E0, 0xCEDE, 0x65E1, 0x94FA, 0x65E2, 0xBCC8,
- 0x65E3, 0x94FB, 0x65E4, 0x94FC, 0x65E5, 0xC8D5, 0x65E6, 0xB5A9,
- 0x65E7, 0xBEC9, 0x65E8, 0xD6BC, 0x65E9, 0xD4E7, 0x65EA, 0x94FD,
- 0x65EB, 0x94FE, 0x65EC, 0xD1AE, 0x65ED, 0xD0F1, 0x65EE, 0xEAB8,
- 0x65EF, 0xEAB9, 0x65F0, 0xEABA, 0x65F1, 0xBAB5, 0x65F2, 0x9540,
- 0x65F3, 0x9541, 0x65F4, 0x9542, 0x65F5, 0x9543, 0x65F6, 0xCAB1,
- 0x65F7, 0xBFF5, 0x65F8, 0x9544, 0x65F9, 0x9545, 0x65FA, 0xCDFA,
- 0x65FB, 0x9546, 0x65FC, 0x9547, 0x65FD, 0x9548, 0x65FE, 0x9549,
- 0x65FF, 0x954A, 0x6600, 0xEAC0, 0x6601, 0x954B, 0x6602, 0xB0BA,
- 0x6603, 0xEABE, 0x6604, 0x954C, 0x6605, 0x954D, 0x6606, 0xC0A5,
- 0x6607, 0x954E, 0x6608, 0x954F, 0x6609, 0x9550, 0x660A, 0xEABB,
- 0x660B, 0x9551, 0x660C, 0xB2FD, 0x660D, 0x9552, 0x660E, 0xC3F7,
- 0x660F, 0xBBE8, 0x6610, 0x9553, 0x6611, 0x9554, 0x6612, 0x9555,
- 0x6613, 0xD2D7, 0x6614, 0xCEF4, 0x6615, 0xEABF, 0x6616, 0x9556,
- 0x6617, 0x9557, 0x6618, 0x9558, 0x6619, 0xEABC, 0x661A, 0x9559,
- 0x661B, 0x955A, 0x661C, 0x955B, 0x661D, 0xEAC3, 0x661E, 0x955C,
- 0x661F, 0xD0C7, 0x6620, 0xD3B3, 0x6621, 0x955D, 0x6622, 0x955E,
- 0x6623, 0x955F, 0x6624, 0x9560, 0x6625, 0xB4BA, 0x6626, 0x9561,
- 0x6627, 0xC3C1, 0x6628, 0xD7F2, 0x6629, 0x9562, 0x662A, 0x9563,
- 0x662B, 0x9564, 0x662C, 0x9565, 0x662D, 0xD5D1, 0x662E, 0x9566,
- 0x662F, 0xCAC7, 0x6630, 0x9567, 0x6631, 0xEAC5, 0x6632, 0x9568,
- 0x6633, 0x9569, 0x6634, 0xEAC4, 0x6635, 0xEAC7, 0x6636, 0xEAC6,
- 0x6637, 0x956A, 0x6638, 0x956B, 0x6639, 0x956C, 0x663A, 0x956D,
- 0x663B, 0x956E, 0x663C, 0xD6E7, 0x663D, 0x956F, 0x663E, 0xCFD4,
- 0x663F, 0x9570, 0x6640, 0x9571, 0x6641, 0xEACB, 0x6642, 0x9572,
- 0x6643, 0xBBCE, 0x6644, 0x9573, 0x6645, 0x9574, 0x6646, 0x9575,
- 0x6647, 0x9576, 0x6648, 0x9577, 0x6649, 0x9578, 0x664A, 0x9579,
- 0x664B, 0xBDFA, 0x664C, 0xC9CE, 0x664D, 0x957A, 0x664E, 0x957B,
- 0x664F, 0xEACC, 0x6650, 0x957C, 0x6651, 0x957D, 0x6652, 0xC9B9,
- 0x6653, 0xCFFE, 0x6654, 0xEACA, 0x6655, 0xD4CE, 0x6656, 0xEACD,
- 0x6657, 0xEACF, 0x6658, 0x957E, 0x6659, 0x9580, 0x665A, 0xCDED,
- 0x665B, 0x9581, 0x665C, 0x9582, 0x665D, 0x9583, 0x665E, 0x9584,
- 0x665F, 0xEAC9, 0x6660, 0x9585, 0x6661, 0xEACE, 0x6662, 0x9586,
- 0x6663, 0x9587, 0x6664, 0xCEEE, 0x6665, 0x9588, 0x6666, 0xBBDE,
- 0x6667, 0x9589, 0x6668, 0xB3BF, 0x6669, 0x958A, 0x666A, 0x958B,
- 0x666B, 0x958C, 0x666C, 0x958D, 0x666D, 0x958E, 0x666E, 0xC6D5,
- 0x666F, 0xBEB0, 0x6670, 0xCEFA, 0x6671, 0x958F, 0x6672, 0x9590,
- 0x6673, 0x9591, 0x6674, 0xC7E7, 0x6675, 0x9592, 0x6676, 0xBEA7,
- 0x6677, 0xEAD0, 0x6678, 0x9593, 0x6679, 0x9594, 0x667A, 0xD6C7,
- 0x667B, 0x9595, 0x667C, 0x9596, 0x667D, 0x9597, 0x667E, 0xC1C0,
- 0x667F, 0x9598, 0x6680, 0x9599, 0x6681, 0x959A, 0x6682, 0xD4DD,
- 0x6683, 0x959B, 0x6684, 0xEAD1, 0x6685, 0x959C, 0x6686, 0x959D,
- 0x6687, 0xCFBE, 0x6688, 0x959E, 0x6689, 0x959F, 0x668A, 0x95A0,
- 0x668B, 0x95A1, 0x668C, 0xEAD2, 0x668D, 0x95A2, 0x668E, 0x95A3,
- 0x668F, 0x95A4, 0x6690, 0x95A5, 0x6691, 0xCAEE, 0x6692, 0x95A6,
- 0x6693, 0x95A7, 0x6694, 0x95A8, 0x6695, 0x95A9, 0x6696, 0xC5AF,
- 0x6697, 0xB0B5, 0x6698, 0x95AA, 0x6699, 0x95AB, 0x669A, 0x95AC,
- 0x669B, 0x95AD, 0x669C, 0x95AE, 0x669D, 0xEAD4, 0x669E, 0x95AF,
- 0x669F, 0x95B0, 0x66A0, 0x95B1, 0x66A1, 0x95B2, 0x66A2, 0x95B3,
- 0x66A3, 0x95B4, 0x66A4, 0x95B5, 0x66A5, 0x95B6, 0x66A6, 0x95B7,
- 0x66A7, 0xEAD3, 0x66A8, 0xF4DF, 0x66A9, 0x95B8, 0x66AA, 0x95B9,
- 0x66AB, 0x95BA, 0x66AC, 0x95BB, 0x66AD, 0x95BC, 0x66AE, 0xC4BA,
- 0x66AF, 0x95BD, 0x66B0, 0x95BE, 0x66B1, 0x95BF, 0x66B2, 0x95C0,
- 0x66B3, 0x95C1, 0x66B4, 0xB1A9, 0x66B5, 0x95C2, 0x66B6, 0x95C3,
- 0x66B7, 0x95C4, 0x66B8, 0x95C5, 0x66B9, 0xE5DF, 0x66BA, 0x95C6,
- 0x66BB, 0x95C7, 0x66BC, 0x95C8, 0x66BD, 0x95C9, 0x66BE, 0xEAD5,
- 0x66BF, 0x95CA, 0x66C0, 0x95CB, 0x66C1, 0x95CC, 0x66C2, 0x95CD,
- 0x66C3, 0x95CE, 0x66C4, 0x95CF, 0x66C5, 0x95D0, 0x66C6, 0x95D1,
- 0x66C7, 0x95D2, 0x66C8, 0x95D3, 0x66C9, 0x95D4, 0x66CA, 0x95D5,
- 0x66CB, 0x95D6, 0x66CC, 0x95D7, 0x66CD, 0x95D8, 0x66CE, 0x95D9,
- 0x66CF, 0x95DA, 0x66D0, 0x95DB, 0x66D1, 0x95DC, 0x66D2, 0x95DD,
- 0x66D3, 0x95DE, 0x66D4, 0x95DF, 0x66D5, 0x95E0, 0x66D6, 0x95E1,
- 0x66D7, 0x95E2, 0x66D8, 0x95E3, 0x66D9, 0xCAEF, 0x66DA, 0x95E4,
- 0x66DB, 0xEAD6, 0x66DC, 0xEAD7, 0x66DD, 0xC6D8, 0x66DE, 0x95E5,
- 0x66DF, 0x95E6, 0x66E0, 0x95E7, 0x66E1, 0x95E8, 0x66E2, 0x95E9,
- 0x66E3, 0x95EA, 0x66E4, 0x95EB, 0x66E5, 0x95EC, 0x66E6, 0xEAD8,
- 0x66E7, 0x95ED, 0x66E8, 0x95EE, 0x66E9, 0xEAD9, 0x66EA, 0x95EF,
- 0x66EB, 0x95F0, 0x66EC, 0x95F1, 0x66ED, 0x95F2, 0x66EE, 0x95F3,
- 0x66EF, 0x95F4, 0x66F0, 0xD4BB, 0x66F1, 0x95F5, 0x66F2, 0xC7FA,
- 0x66F3, 0xD2B7, 0x66F4, 0xB8FC, 0x66F5, 0x95F6, 0x66F6, 0x95F7,
- 0x66F7, 0xEAC2, 0x66F8, 0x95F8, 0x66F9, 0xB2DC, 0x66FA, 0x95F9,
- 0x66FB, 0x95FA, 0x66FC, 0xC2FC, 0x66FD, 0x95FB, 0x66FE, 0xD4F8,
- 0x66FF, 0xCCE6, 0x6700, 0xD7EE, 0x6701, 0x95FC, 0x6702, 0x95FD,
- 0x6703, 0x95FE, 0x6704, 0x9640, 0x6705, 0x9641, 0x6706, 0x9642,
- 0x6707, 0x9643, 0x6708, 0xD4C2, 0x6709, 0xD3D0, 0x670A, 0xEBC3,
- 0x670B, 0xC5F3, 0x670C, 0x9644, 0x670D, 0xB7FE, 0x670E, 0x9645,
- 0x670F, 0x9646, 0x6710, 0xEBD4, 0x6711, 0x9647, 0x6712, 0x9648,
- 0x6713, 0x9649, 0x6714, 0xCBB7, 0x6715, 0xEBDE, 0x6716, 0x964A,
- 0x6717, 0xC0CA, 0x6718, 0x964B, 0x6719, 0x964C, 0x671A, 0x964D,
- 0x671B, 0xCDFB, 0x671C, 0x964E, 0x671D, 0xB3AF, 0x671E, 0x964F,
- 0x671F, 0xC6DA, 0x6720, 0x9650, 0x6721, 0x9651, 0x6722, 0x9652,
- 0x6723, 0x9653, 0x6724, 0x9654, 0x6725, 0x9655, 0x6726, 0xEBFC,
- 0x6727, 0x9656, 0x6728, 0xC4BE, 0x6729, 0x9657, 0x672A, 0xCEB4,
- 0x672B, 0xC4A9, 0x672C, 0xB1BE, 0x672D, 0xD4FD, 0x672E, 0x9658,
- 0x672F, 0xCAF5, 0x6730, 0x9659, 0x6731, 0xD6EC, 0x6732, 0x965A,
- 0x6733, 0x965B, 0x6734, 0xC6D3, 0x6735, 0xB6E4, 0x6736, 0x965C,
- 0x6737, 0x965D, 0x6738, 0x965E, 0x6739, 0x965F, 0x673A, 0xBBFA,
- 0x673B, 0x9660, 0x673C, 0x9661, 0x673D, 0xD0E0, 0x673E, 0x9662,
- 0x673F, 0x9663, 0x6740, 0xC9B1, 0x6741, 0x9664, 0x6742, 0xD4D3,
- 0x6743, 0xC8A8, 0x6744, 0x9665, 0x6745, 0x9666, 0x6746, 0xB8CB,
- 0x6747, 0x9667, 0x6748, 0xE8BE, 0x6749, 0xC9BC, 0x674A, 0x9668,
- 0x674B, 0x9669, 0x674C, 0xE8BB, 0x674D, 0x966A, 0x674E, 0xC0EE,
- 0x674F, 0xD0D3, 0x6750, 0xB2C4, 0x6751, 0xB4E5, 0x6752, 0x966B,
- 0x6753, 0xE8BC, 0x6754, 0x966C, 0x6755, 0x966D, 0x6756, 0xD5C8,
- 0x6757, 0x966E, 0x6758, 0x966F, 0x6759, 0x9670, 0x675A, 0x9671,
- 0x675B, 0x9672, 0x675C, 0xB6C5, 0x675D, 0x9673, 0x675E, 0xE8BD,
- 0x675F, 0xCAF8, 0x6760, 0xB8DC, 0x6761, 0xCCF5, 0x6762, 0x9674,
- 0x6763, 0x9675, 0x6764, 0x9676, 0x6765, 0xC0B4, 0x6766, 0x9677,
- 0x6767, 0x9678, 0x6768, 0xD1EE, 0x6769, 0xE8BF, 0x676A, 0xE8C2,
- 0x676B, 0x9679, 0x676C, 0x967A, 0x676D, 0xBABC, 0x676E, 0x967B,
- 0x676F, 0xB1AD, 0x6770, 0xBDDC, 0x6771, 0x967C, 0x6772, 0xEABD,
- 0x6773, 0xE8C3, 0x6774, 0x967D, 0x6775, 0xE8C6, 0x6776, 0x967E,
- 0x6777, 0xE8CB, 0x6778, 0x9680, 0x6779, 0x9681, 0x677A, 0x9682,
- 0x677B, 0x9683, 0x677C, 0xE8CC, 0x677D, 0x9684, 0x677E, 0xCBC9,
- 0x677F, 0xB0E5, 0x6780, 0x9685, 0x6781, 0xBCAB, 0x6782, 0x9686,
- 0x6783, 0x9687, 0x6784, 0xB9B9, 0x6785, 0x9688, 0x6786, 0x9689,
- 0x6787, 0xE8C1, 0x6788, 0x968A, 0x6789, 0xCDF7, 0x678A, 0x968B,
- 0x678B, 0xE8CA, 0x678C, 0x968C, 0x678D, 0x968D, 0x678E, 0x968E,
- 0x678F, 0x968F, 0x6790, 0xCEF6, 0x6791, 0x9690, 0x6792, 0x9691,
- 0x6793, 0x9692, 0x6794, 0x9693, 0x6795, 0xD5ED, 0x6796, 0x9694,
- 0x6797, 0xC1D6, 0x6798, 0xE8C4, 0x6799, 0x9695, 0x679A, 0xC3B6,
- 0x679B, 0x9696, 0x679C, 0xB9FB, 0x679D, 0xD6A6, 0x679E, 0xE8C8,
- 0x679F, 0x9697, 0x67A0, 0x9698, 0x67A1, 0x9699, 0x67A2, 0xCAE0,
- 0x67A3, 0xD4E6, 0x67A4, 0x969A, 0x67A5, 0xE8C0, 0x67A6, 0x969B,
- 0x67A7, 0xE8C5, 0x67A8, 0xE8C7, 0x67A9, 0x969C, 0x67AA, 0xC7B9,
- 0x67AB, 0xB7E3, 0x67AC, 0x969D, 0x67AD, 0xE8C9, 0x67AE, 0x969E,
- 0x67AF, 0xBFDD, 0x67B0, 0xE8D2, 0x67B1, 0x969F, 0x67B2, 0x96A0,
- 0x67B3, 0xE8D7, 0x67B4, 0x96A1, 0x67B5, 0xE8D5, 0x67B6, 0xBCDC,
- 0x67B7, 0xBCCF, 0x67B8, 0xE8DB, 0x67B9, 0x96A2, 0x67BA, 0x96A3,
- 0x67BB, 0x96A4, 0x67BC, 0x96A5, 0x67BD, 0x96A6, 0x67BE, 0x96A7,
- 0x67BF, 0x96A8, 0x67C0, 0x96A9, 0x67C1, 0xE8DE, 0x67C2, 0x96AA,
- 0x67C3, 0xE8DA, 0x67C4, 0xB1FA, 0x67C5, 0x96AB, 0x67C6, 0x96AC,
- 0x67C7, 0x96AD, 0x67C8, 0x96AE, 0x67C9, 0x96AF, 0x67CA, 0x96B0,
- 0x67CB, 0x96B1, 0x67CC, 0x96B2, 0x67CD, 0x96B3, 0x67CE, 0x96B4,
- 0x67CF, 0xB0D8, 0x67D0, 0xC4B3, 0x67D1, 0xB8CC, 0x67D2, 0xC6E2,
- 0x67D3, 0xC8BE, 0x67D4, 0xC8E1, 0x67D5, 0x96B5, 0x67D6, 0x96B6,
- 0x67D7, 0x96B7, 0x67D8, 0xE8CF, 0x67D9, 0xE8D4, 0x67DA, 0xE8D6,
- 0x67DB, 0x96B8, 0x67DC, 0xB9F1, 0x67DD, 0xE8D8, 0x67DE, 0xD7F5,
- 0x67DF, 0x96B9, 0x67E0, 0xC4FB, 0x67E1, 0x96BA, 0x67E2, 0xE8DC,
- 0x67E3, 0x96BB, 0x67E4, 0x96BC, 0x67E5, 0xB2E9, 0x67E6, 0x96BD,
- 0x67E7, 0x96BE, 0x67E8, 0x96BF, 0x67E9, 0xE8D1, 0x67EA, 0x96C0,
- 0x67EB, 0x96C1, 0x67EC, 0xBCED, 0x67ED, 0x96C2, 0x67EE, 0x96C3,
- 0x67EF, 0xBFC2, 0x67F0, 0xE8CD, 0x67F1, 0xD6F9, 0x67F2, 0x96C4,
- 0x67F3, 0xC1F8, 0x67F4, 0xB2F1, 0x67F5, 0x96C5, 0x67F6, 0x96C6,
- 0x67F7, 0x96C7, 0x67F8, 0x96C8, 0x67F9, 0x96C9, 0x67FA, 0x96CA,
- 0x67FB, 0x96CB, 0x67FC, 0x96CC, 0x67FD, 0xE8DF, 0x67FE, 0x96CD,
- 0x67FF, 0xCAC1, 0x6800, 0xE8D9, 0x6801, 0x96CE, 0x6802, 0x96CF,
- 0x6803, 0x96D0, 0x6804, 0x96D1, 0x6805, 0xD5A4, 0x6806, 0x96D2,
- 0x6807, 0xB1EA, 0x6808, 0xD5BB, 0x6809, 0xE8CE, 0x680A, 0xE8D0,
- 0x680B, 0xB6B0, 0x680C, 0xE8D3, 0x680D, 0x96D3, 0x680E, 0xE8DD,
- 0x680F, 0xC0B8, 0x6810, 0x96D4, 0x6811, 0xCAF7, 0x6812, 0x96D5,
- 0x6813, 0xCBA8, 0x6814, 0x96D6, 0x6815, 0x96D7, 0x6816, 0xC6DC,
- 0x6817, 0xC0F5, 0x6818, 0x96D8, 0x6819, 0x96D9, 0x681A, 0x96DA,
- 0x681B, 0x96DB, 0x681C, 0x96DC, 0x681D, 0xE8E9, 0x681E, 0x96DD,
- 0x681F, 0x96DE, 0x6820, 0x96DF, 0x6821, 0xD0A3, 0x6822, 0x96E0,
- 0x6823, 0x96E1, 0x6824, 0x96E2, 0x6825, 0x96E3, 0x6826, 0x96E4,
- 0x6827, 0x96E5, 0x6828, 0x96E6, 0x6829, 0xE8F2, 0x682A, 0xD6EA,
- 0x682B, 0x96E7, 0x682C, 0x96E8, 0x682D, 0x96E9, 0x682E, 0x96EA,
- 0x682F, 0x96EB, 0x6830, 0x96EC, 0x6831, 0x96ED, 0x6832, 0xE8E0,
- 0x6833, 0xE8E1, 0x6834, 0x96EE, 0x6835, 0x96EF, 0x6836, 0x96F0,
- 0x6837, 0xD1F9, 0x6838, 0xBACB, 0x6839, 0xB8F9, 0x683A, 0x96F1,
- 0x683B, 0x96F2, 0x683C, 0xB8F1, 0x683D, 0xD4D4, 0x683E, 0xE8EF,
- 0x683F, 0x96F3, 0x6840, 0xE8EE, 0x6841, 0xE8EC, 0x6842, 0xB9F0,
- 0x6843, 0xCCD2, 0x6844, 0xE8E6, 0x6845, 0xCEA6, 0x6846, 0xBFF2,
- 0x6847, 0x96F4, 0x6848, 0xB0B8, 0x6849, 0xE8F1, 0x684A, 0xE8F0,
- 0x684B, 0x96F5, 0x684C, 0xD7C0, 0x684D, 0x96F6, 0x684E, 0xE8E4,
- 0x684F, 0x96F7, 0x6850, 0xCDA9, 0x6851, 0xC9A3, 0x6852, 0x96F8,
- 0x6853, 0xBBB8, 0x6854, 0xBDDB, 0x6855, 0xE8EA, 0x6856, 0x96F9,
- 0x6857, 0x96FA, 0x6858, 0x96FB, 0x6859, 0x96FC, 0x685A, 0x96FD,
- 0x685B, 0x96FE, 0x685C, 0x9740, 0x685D, 0x9741, 0x685E, 0x9742,
- 0x685F, 0x9743, 0x6860, 0xE8E2, 0x6861, 0xE8E3, 0x6862, 0xE8E5,
- 0x6863, 0xB5B5, 0x6864, 0xE8E7, 0x6865, 0xC7C5, 0x6866, 0xE8EB,
- 0x6867, 0xE8ED, 0x6868, 0xBDB0, 0x6869, 0xD7AE, 0x686A, 0x9744,
- 0x686B, 0xE8F8, 0x686C, 0x9745, 0x686D, 0x9746, 0x686E, 0x9747,
- 0x686F, 0x9748, 0x6870, 0x9749, 0x6871, 0x974A, 0x6872, 0x974B,
- 0x6873, 0x974C, 0x6874, 0xE8F5, 0x6875, 0x974D, 0x6876, 0xCDB0,
- 0x6877, 0xE8F6, 0x6878, 0x974E, 0x6879, 0x974F, 0x687A, 0x9750,
- 0x687B, 0x9751, 0x687C, 0x9752, 0x687D, 0x9753, 0x687E, 0x9754,
- 0x687F, 0x9755, 0x6880, 0x9756, 0x6881, 0xC1BA, 0x6882, 0x9757,
- 0x6883, 0xE8E8, 0x6884, 0x9758, 0x6885, 0xC3B7, 0x6886, 0xB0F0,
- 0x6887, 0x9759, 0x6888, 0x975A, 0x6889, 0x975B, 0x688A, 0x975C,
- 0x688B, 0x975D, 0x688C, 0x975E, 0x688D, 0x975F, 0x688E, 0x9760,
- 0x688F, 0xE8F4, 0x6890, 0x9761, 0x6891, 0x9762, 0x6892, 0x9763,
- 0x6893, 0xE8F7, 0x6894, 0x9764, 0x6895, 0x9765, 0x6896, 0x9766,
- 0x6897, 0xB9A3, 0x6898, 0x9767, 0x6899, 0x9768, 0x689A, 0x9769,
- 0x689B, 0x976A, 0x689C, 0x976B, 0x689D, 0x976C, 0x689E, 0x976D,
- 0x689F, 0x976E, 0x68A0, 0x976F, 0x68A1, 0x9770, 0x68A2, 0xC9D2,
- 0x68A3, 0x9771, 0x68A4, 0x9772, 0x68A5, 0x9773, 0x68A6, 0xC3CE,
- 0x68A7, 0xCEE0, 0x68A8, 0xC0E6, 0x68A9, 0x9774, 0x68AA, 0x9775,
- 0x68AB, 0x9776, 0x68AC, 0x9777, 0x68AD, 0xCBF3, 0x68AE, 0x9778,
- 0x68AF, 0xCCDD, 0x68B0, 0xD0B5, 0x68B1, 0x9779, 0x68B2, 0x977A,
- 0x68B3, 0xCAE1, 0x68B4, 0x977B, 0x68B5, 0xE8F3, 0x68B6, 0x977C,
- 0x68B7, 0x977D, 0x68B8, 0x977E, 0x68B9, 0x9780, 0x68BA, 0x9781,
- 0x68BB, 0x9782, 0x68BC, 0x9783, 0x68BD, 0x9784, 0x68BE, 0x9785,
- 0x68BF, 0x9786, 0x68C0, 0xBCEC, 0x68C1, 0x9787, 0x68C2, 0xE8F9,
- 0x68C3, 0x9788, 0x68C4, 0x9789, 0x68C5, 0x978A, 0x68C6, 0x978B,
- 0x68C7, 0x978C, 0x68C8, 0x978D, 0x68C9, 0xC3DE, 0x68CA, 0x978E,
- 0x68CB, 0xC6E5, 0x68CC, 0x978F, 0x68CD, 0xB9F7, 0x68CE, 0x9790,
- 0x68CF, 0x9791, 0x68D0, 0x9792, 0x68D1, 0x9793, 0x68D2, 0xB0F4,
- 0x68D3, 0x9794, 0x68D4, 0x9795, 0x68D5, 0xD7D8, 0x68D6, 0x9796,
- 0x68D7, 0x9797, 0x68D8, 0xBCAC, 0x68D9, 0x9798, 0x68DA, 0xC5EF,
- 0x68DB, 0x9799, 0x68DC, 0x979A, 0x68DD, 0x979B, 0x68DE, 0x979C,
- 0x68DF, 0x979D, 0x68E0, 0xCCC4, 0x68E1, 0x979E, 0x68E2, 0x979F,
- 0x68E3, 0xE9A6, 0x68E4, 0x97A0, 0x68E5, 0x97A1, 0x68E6, 0x97A2,
- 0x68E7, 0x97A3, 0x68E8, 0x97A4, 0x68E9, 0x97A5, 0x68EA, 0x97A6,
- 0x68EB, 0x97A7, 0x68EC, 0x97A8, 0x68ED, 0x97A9, 0x68EE, 0xC9AD,
- 0x68EF, 0x97AA, 0x68F0, 0xE9A2, 0x68F1, 0xC0E2, 0x68F2, 0x97AB,
- 0x68F3, 0x97AC, 0x68F4, 0x97AD, 0x68F5, 0xBFC3, 0x68F6, 0x97AE,
- 0x68F7, 0x97AF, 0x68F8, 0x97B0, 0x68F9, 0xE8FE, 0x68FA, 0xB9D7,
- 0x68FB, 0x97B1, 0x68FC, 0xE8FB, 0x68FD, 0x97B2, 0x68FE, 0x97B3,
- 0x68FF, 0x97B4, 0x6900, 0x97B5, 0x6901, 0xE9A4, 0x6902, 0x97B6,
- 0x6903, 0x97B7, 0x6904, 0x97B8, 0x6905, 0xD2CE, 0x6906, 0x97B9,
- 0x6907, 0x97BA, 0x6908, 0x97BB, 0x6909, 0x97BC, 0x690A, 0x97BD,
- 0x690B, 0xE9A3, 0x690C, 0x97BE, 0x690D, 0xD6B2, 0x690E, 0xD7B5,
- 0x690F, 0x97BF, 0x6910, 0xE9A7, 0x6911, 0x97C0, 0x6912, 0xBDB7,
- 0x6913, 0x97C1, 0x6914, 0x97C2, 0x6915, 0x97C3, 0x6916, 0x97C4,
- 0x6917, 0x97C5, 0x6918, 0x97C6, 0x6919, 0x97C7, 0x691A, 0x97C8,
- 0x691B, 0x97C9, 0x691C, 0x97CA, 0x691D, 0x97CB, 0x691E, 0x97CC,
- 0x691F, 0xE8FC, 0x6920, 0xE8FD, 0x6921, 0x97CD, 0x6922, 0x97CE,
- 0x6923, 0x97CF, 0x6924, 0xE9A1, 0x6925, 0x97D0, 0x6926, 0x97D1,
- 0x6927, 0x97D2, 0x6928, 0x97D3, 0x6929, 0x97D4, 0x692A, 0x97D5,
- 0x692B, 0x97D6, 0x692C, 0x97D7, 0x692D, 0xCDD6, 0x692E, 0x97D8,
- 0x692F, 0x97D9, 0x6930, 0xD2AC, 0x6931, 0x97DA, 0x6932, 0x97DB,
- 0x6933, 0x97DC, 0x6934, 0xE9B2, 0x6935, 0x97DD, 0x6936, 0x97DE,
- 0x6937, 0x97DF, 0x6938, 0x97E0, 0x6939, 0xE9A9, 0x693A, 0x97E1,
- 0x693B, 0x97E2, 0x693C, 0x97E3, 0x693D, 0xB4AA, 0x693E, 0x97E4,
- 0x693F, 0xB4BB, 0x6940, 0x97E5, 0x6941, 0x97E6, 0x6942, 0xE9AB,
- 0x6943, 0x97E7, 0x6944, 0x97E8, 0x6945, 0x97E9, 0x6946, 0x97EA,
- 0x6947, 0x97EB, 0x6948, 0x97EC, 0x6949, 0x97ED, 0x694A, 0x97EE,
- 0x694B, 0x97EF, 0x694C, 0x97F0, 0x694D, 0x97F1, 0x694E, 0x97F2,
- 0x694F, 0x97F3, 0x6950, 0x97F4, 0x6951, 0x97F5, 0x6952, 0x97F6,
- 0x6953, 0x97F7, 0x6954, 0xD0A8, 0x6955, 0x97F8, 0x6956, 0x97F9,
- 0x6957, 0xE9A5, 0x6958, 0x97FA, 0x6959, 0x97FB, 0x695A, 0xB3FE,
- 0x695B, 0x97FC, 0x695C, 0x97FD, 0x695D, 0xE9AC, 0x695E, 0xC0E3,
- 0x695F, 0x97FE, 0x6960, 0xE9AA, 0x6961, 0x9840, 0x6962, 0x9841,
- 0x6963, 0xE9B9, 0x6964, 0x9842, 0x6965, 0x9843, 0x6966, 0xE9B8,
- 0x6967, 0x9844, 0x6968, 0x9845, 0x6969, 0x9846, 0x696A, 0x9847,
- 0x696B, 0xE9AE, 0x696C, 0x9848, 0x696D, 0x9849, 0x696E, 0xE8FA,
- 0x696F, 0x984A, 0x6970, 0x984B, 0x6971, 0xE9A8, 0x6972, 0x984C,
- 0x6973, 0x984D, 0x6974, 0x984E, 0x6975, 0x984F, 0x6976, 0x9850,
- 0x6977, 0xBFAC, 0x6978, 0xE9B1, 0x6979, 0xE9BA, 0x697A, 0x9851,
- 0x697B, 0x9852, 0x697C, 0xC2A5, 0x697D, 0x9853, 0x697E, 0x9854,
- 0x697F, 0x9855, 0x6980, 0xE9AF, 0x6981, 0x9856, 0x6982, 0xB8C5,
- 0x6983, 0x9857, 0x6984, 0xE9AD, 0x6985, 0x9858, 0x6986, 0xD3DC,
- 0x6987, 0xE9B4, 0x6988, 0xE9B5, 0x6989, 0xE9B7, 0x698A, 0x9859,
- 0x698B, 0x985A, 0x698C, 0x985B, 0x698D, 0xE9C7, 0x698E, 0x985C,
- 0x698F, 0x985D, 0x6990, 0x985E, 0x6991, 0x985F, 0x6992, 0x9860,
- 0x6993, 0x9861, 0x6994, 0xC0C6, 0x6995, 0xE9C5, 0x6996, 0x9862,
- 0x6997, 0x9863, 0x6998, 0xE9B0, 0x6999, 0x9864, 0x699A, 0x9865,
- 0x699B, 0xE9BB, 0x699C, 0xB0F1, 0x699D, 0x9866, 0x699E, 0x9867,
- 0x699F, 0x9868, 0x69A0, 0x9869, 0x69A1, 0x986A, 0x69A2, 0x986B,
- 0x69A3, 0x986C, 0x69A4, 0x986D, 0x69A5, 0x986E, 0x69A6, 0x986F,
- 0x69A7, 0xE9BC, 0x69A8, 0xD5A5, 0x69A9, 0x9870, 0x69AA, 0x9871,
- 0x69AB, 0xE9BE, 0x69AC, 0x9872, 0x69AD, 0xE9BF, 0x69AE, 0x9873,
- 0x69AF, 0x9874, 0x69B0, 0x9875, 0x69B1, 0xE9C1, 0x69B2, 0x9876,
- 0x69B3, 0x9877, 0x69B4, 0xC1F1, 0x69B5, 0x9878, 0x69B6, 0x9879,
- 0x69B7, 0xC8B6, 0x69B8, 0x987A, 0x69B9, 0x987B, 0x69BA, 0x987C,
- 0x69BB, 0xE9BD, 0x69BC, 0x987D, 0x69BD, 0x987E, 0x69BE, 0x9880,
- 0x69BF, 0x9881, 0x69C0, 0x9882, 0x69C1, 0xE9C2, 0x69C2, 0x9883,
- 0x69C3, 0x9884, 0x69C4, 0x9885, 0x69C5, 0x9886, 0x69C6, 0x9887,
- 0x69C7, 0x9888, 0x69C8, 0x9889, 0x69C9, 0x988A, 0x69CA, 0xE9C3,
- 0x69CB, 0x988B, 0x69CC, 0xE9B3, 0x69CD, 0x988C, 0x69CE, 0xE9B6,
- 0x69CF, 0x988D, 0x69D0, 0xBBB1, 0x69D1, 0x988E, 0x69D2, 0x988F,
- 0x69D3, 0x9890, 0x69D4, 0xE9C0, 0x69D5, 0x9891, 0x69D6, 0x9892,
- 0x69D7, 0x9893, 0x69D8, 0x9894, 0x69D9, 0x9895, 0x69DA, 0x9896,
- 0x69DB, 0xBCF7, 0x69DC, 0x9897, 0x69DD, 0x9898, 0x69DE, 0x9899,
- 0x69DF, 0xE9C4, 0x69E0, 0xE9C6, 0x69E1, 0x989A, 0x69E2, 0x989B,
- 0x69E3, 0x989C, 0x69E4, 0x989D, 0x69E5, 0x989E, 0x69E6, 0x989F,
- 0x69E7, 0x98A0, 0x69E8, 0x98A1, 0x69E9, 0x98A2, 0x69EA, 0x98A3,
- 0x69EB, 0x98A4, 0x69EC, 0x98A5, 0x69ED, 0xE9CA, 0x69EE, 0x98A6,
- 0x69EF, 0x98A7, 0x69F0, 0x98A8, 0x69F1, 0x98A9, 0x69F2, 0xE9CE,
- 0x69F3, 0x98AA, 0x69F4, 0x98AB, 0x69F5, 0x98AC, 0x69F6, 0x98AD,
- 0x69F7, 0x98AE, 0x69F8, 0x98AF, 0x69F9, 0x98B0, 0x69FA, 0x98B1,
- 0x69FB, 0x98B2, 0x69FC, 0x98B3, 0x69FD, 0xB2DB, 0x69FE, 0x98B4,
- 0x69FF, 0xE9C8, 0x6A00, 0x98B5, 0x6A01, 0x98B6, 0x6A02, 0x98B7,
- 0x6A03, 0x98B8, 0x6A04, 0x98B9, 0x6A05, 0x98BA, 0x6A06, 0x98BB,
- 0x6A07, 0x98BC, 0x6A08, 0x98BD, 0x6A09, 0x98BE, 0x6A0A, 0xB7AE,
- 0x6A0B, 0x98BF, 0x6A0C, 0x98C0, 0x6A0D, 0x98C1, 0x6A0E, 0x98C2,
- 0x6A0F, 0x98C3, 0x6A10, 0x98C4, 0x6A11, 0x98C5, 0x6A12, 0x98C6,
- 0x6A13, 0x98C7, 0x6A14, 0x98C8, 0x6A15, 0x98C9, 0x6A16, 0x98CA,
- 0x6A17, 0xE9CB, 0x6A18, 0xE9CC, 0x6A19, 0x98CB, 0x6A1A, 0x98CC,
- 0x6A1B, 0x98CD, 0x6A1C, 0x98CE, 0x6A1D, 0x98CF, 0x6A1E, 0x98D0,
- 0x6A1F, 0xD5C1, 0x6A20, 0x98D1, 0x6A21, 0xC4A3, 0x6A22, 0x98D2,
- 0x6A23, 0x98D3, 0x6A24, 0x98D4, 0x6A25, 0x98D5, 0x6A26, 0x98D6,
- 0x6A27, 0x98D7, 0x6A28, 0xE9D8, 0x6A29, 0x98D8, 0x6A2A, 0xBAE1,
- 0x6A2B, 0x98D9, 0x6A2C, 0x98DA, 0x6A2D, 0x98DB, 0x6A2E, 0x98DC,
- 0x6A2F, 0xE9C9, 0x6A30, 0x98DD, 0x6A31, 0xD3A3, 0x6A32, 0x98DE,
- 0x6A33, 0x98DF, 0x6A34, 0x98E0, 0x6A35, 0xE9D4, 0x6A36, 0x98E1,
- 0x6A37, 0x98E2, 0x6A38, 0x98E3, 0x6A39, 0x98E4, 0x6A3A, 0x98E5,
- 0x6A3B, 0x98E6, 0x6A3C, 0x98E7, 0x6A3D, 0xE9D7, 0x6A3E, 0xE9D0,
- 0x6A3F, 0x98E8, 0x6A40, 0x98E9, 0x6A41, 0x98EA, 0x6A42, 0x98EB,
- 0x6A43, 0x98EC, 0x6A44, 0xE9CF, 0x6A45, 0x98ED, 0x6A46, 0x98EE,
- 0x6A47, 0xC7C1, 0x6A48, 0x98EF, 0x6A49, 0x98F0, 0x6A4A, 0x98F1,
- 0x6A4B, 0x98F2, 0x6A4C, 0x98F3, 0x6A4D, 0x98F4, 0x6A4E, 0x98F5,
- 0x6A4F, 0x98F6, 0x6A50, 0xE9D2, 0x6A51, 0x98F7, 0x6A52, 0x98F8,
- 0x6A53, 0x98F9, 0x6A54, 0x98FA, 0x6A55, 0x98FB, 0x6A56, 0x98FC,
- 0x6A57, 0x98FD, 0x6A58, 0xE9D9, 0x6A59, 0xB3C8, 0x6A5A, 0x98FE,
- 0x6A5B, 0xE9D3, 0x6A5C, 0x9940, 0x6A5D, 0x9941, 0x6A5E, 0x9942,
- 0x6A5F, 0x9943, 0x6A60, 0x9944, 0x6A61, 0xCFF0, 0x6A62, 0x9945,
- 0x6A63, 0x9946, 0x6A64, 0x9947, 0x6A65, 0xE9CD, 0x6A66, 0x9948,
- 0x6A67, 0x9949, 0x6A68, 0x994A, 0x6A69, 0x994B, 0x6A6A, 0x994C,
- 0x6A6B, 0x994D, 0x6A6C, 0x994E, 0x6A6D, 0x994F, 0x6A6E, 0x9950,
- 0x6A6F, 0x9951, 0x6A70, 0x9952, 0x6A71, 0xB3F7, 0x6A72, 0x9953,
- 0x6A73, 0x9954, 0x6A74, 0x9955, 0x6A75, 0x9956, 0x6A76, 0x9957,
- 0x6A77, 0x9958, 0x6A78, 0x9959, 0x6A79, 0xE9D6, 0x6A7A, 0x995A,
- 0x6A7B, 0x995B, 0x6A7C, 0xE9DA, 0x6A7D, 0x995C, 0x6A7E, 0x995D,
- 0x6A7F, 0x995E, 0x6A80, 0xCCB4, 0x6A81, 0x995F, 0x6A82, 0x9960,
- 0x6A83, 0x9961, 0x6A84, 0xCFAD, 0x6A85, 0x9962, 0x6A86, 0x9963,
- 0x6A87, 0x9964, 0x6A88, 0x9965, 0x6A89, 0x9966, 0x6A8A, 0x9967,
- 0x6A8B, 0x9968, 0x6A8C, 0x9969, 0x6A8D, 0x996A, 0x6A8E, 0xE9D5,
- 0x6A8F, 0x996B, 0x6A90, 0xE9DC, 0x6A91, 0xE9DB, 0x6A92, 0x996C,
- 0x6A93, 0x996D, 0x6A94, 0x996E, 0x6A95, 0x996F, 0x6A96, 0x9970,
- 0x6A97, 0xE9DE, 0x6A98, 0x9971, 0x6A99, 0x9972, 0x6A9A, 0x9973,
- 0x6A9B, 0x9974, 0x6A9C, 0x9975, 0x6A9D, 0x9976, 0x6A9E, 0x9977,
- 0x6A9F, 0x9978, 0x6AA0, 0xE9D1, 0x6AA1, 0x9979, 0x6AA2, 0x997A,
- 0x6AA3, 0x997B, 0x6AA4, 0x997C, 0x6AA5, 0x997D, 0x6AA6, 0x997E,
- 0x6AA7, 0x9980, 0x6AA8, 0x9981, 0x6AA9, 0xE9DD, 0x6AAA, 0x9982,
- 0x6AAB, 0xE9DF, 0x6AAC, 0xC3CA, 0x6AAD, 0x9983, 0x6AAE, 0x9984,
- 0x6AAF, 0x9985, 0x6AB0, 0x9986, 0x6AB1, 0x9987, 0x6AB2, 0x9988,
- 0x6AB3, 0x9989, 0x6AB4, 0x998A, 0x6AB5, 0x998B, 0x6AB6, 0x998C,
- 0x6AB7, 0x998D, 0x6AB8, 0x998E, 0x6AB9, 0x998F, 0x6ABA, 0x9990,
- 0x6ABB, 0x9991, 0x6ABC, 0x9992, 0x6ABD, 0x9993, 0x6ABE, 0x9994,
- 0x6ABF, 0x9995, 0x6AC0, 0x9996, 0x6AC1, 0x9997, 0x6AC2, 0x9998,
- 0x6AC3, 0x9999, 0x6AC4, 0x999A, 0x6AC5, 0x999B, 0x6AC6, 0x999C,
- 0x6AC7, 0x999D, 0x6AC8, 0x999E, 0x6AC9, 0x999F, 0x6ACA, 0x99A0,
- 0x6ACB, 0x99A1, 0x6ACC, 0x99A2, 0x6ACD, 0x99A3, 0x6ACE, 0x99A4,
- 0x6ACF, 0x99A5, 0x6AD0, 0x99A6, 0x6AD1, 0x99A7, 0x6AD2, 0x99A8,
- 0x6AD3, 0x99A9, 0x6AD4, 0x99AA, 0x6AD5, 0x99AB, 0x6AD6, 0x99AC,
- 0x6AD7, 0x99AD, 0x6AD8, 0x99AE, 0x6AD9, 0x99AF, 0x6ADA, 0x99B0,
- 0x6ADB, 0x99B1, 0x6ADC, 0x99B2, 0x6ADD, 0x99B3, 0x6ADE, 0x99B4,
- 0x6ADF, 0x99B5, 0x6AE0, 0x99B6, 0x6AE1, 0x99B7, 0x6AE2, 0x99B8,
- 0x6AE3, 0x99B9, 0x6AE4, 0x99BA, 0x6AE5, 0x99BB, 0x6AE6, 0x99BC,
- 0x6AE7, 0x99BD, 0x6AE8, 0x99BE, 0x6AE9, 0x99BF, 0x6AEA, 0x99C0,
- 0x6AEB, 0x99C1, 0x6AEC, 0x99C2, 0x6AED, 0x99C3, 0x6AEE, 0x99C4,
- 0x6AEF, 0x99C5, 0x6AF0, 0x99C6, 0x6AF1, 0x99C7, 0x6AF2, 0x99C8,
- 0x6AF3, 0x99C9, 0x6AF4, 0x99CA, 0x6AF5, 0x99CB, 0x6AF6, 0x99CC,
- 0x6AF7, 0x99CD, 0x6AF8, 0x99CE, 0x6AF9, 0x99CF, 0x6AFA, 0x99D0,
- 0x6AFB, 0x99D1, 0x6AFC, 0x99D2, 0x6AFD, 0x99D3, 0x6AFE, 0x99D4,
- 0x6AFF, 0x99D5, 0x6B00, 0x99D6, 0x6B01, 0x99D7, 0x6B02, 0x99D8,
- 0x6B03, 0x99D9, 0x6B04, 0x99DA, 0x6B05, 0x99DB, 0x6B06, 0x99DC,
- 0x6B07, 0x99DD, 0x6B08, 0x99DE, 0x6B09, 0x99DF, 0x6B0A, 0x99E0,
- 0x6B0B, 0x99E1, 0x6B0C, 0x99E2, 0x6B0D, 0x99E3, 0x6B0E, 0x99E4,
- 0x6B0F, 0x99E5, 0x6B10, 0x99E6, 0x6B11, 0x99E7, 0x6B12, 0x99E8,
- 0x6B13, 0x99E9, 0x6B14, 0x99EA, 0x6B15, 0x99EB, 0x6B16, 0x99EC,
- 0x6B17, 0x99ED, 0x6B18, 0x99EE, 0x6B19, 0x99EF, 0x6B1A, 0x99F0,
- 0x6B1B, 0x99F1, 0x6B1C, 0x99F2, 0x6B1D, 0x99F3, 0x6B1E, 0x99F4,
- 0x6B1F, 0x99F5, 0x6B20, 0xC7B7, 0x6B21, 0xB4CE, 0x6B22, 0xBBB6,
- 0x6B23, 0xD0C0, 0x6B24, 0xECA3, 0x6B25, 0x99F6, 0x6B26, 0x99F7,
- 0x6B27, 0xC5B7, 0x6B28, 0x99F8, 0x6B29, 0x99F9, 0x6B2A, 0x99FA,
- 0x6B2B, 0x99FB, 0x6B2C, 0x99FC, 0x6B2D, 0x99FD, 0x6B2E, 0x99FE,
- 0x6B2F, 0x9A40, 0x6B30, 0x9A41, 0x6B31, 0x9A42, 0x6B32, 0xD3FB,
- 0x6B33, 0x9A43, 0x6B34, 0x9A44, 0x6B35, 0x9A45, 0x6B36, 0x9A46,
- 0x6B37, 0xECA4, 0x6B38, 0x9A47, 0x6B39, 0xECA5, 0x6B3A, 0xC6DB,
- 0x6B3B, 0x9A48, 0x6B3C, 0x9A49, 0x6B3D, 0x9A4A, 0x6B3E, 0xBFEE,
- 0x6B3F, 0x9A4B, 0x6B40, 0x9A4C, 0x6B41, 0x9A4D, 0x6B42, 0x9A4E,
- 0x6B43, 0xECA6, 0x6B44, 0x9A4F, 0x6B45, 0x9A50, 0x6B46, 0xECA7,
- 0x6B47, 0xD0AA, 0x6B48, 0x9A51, 0x6B49, 0xC7B8, 0x6B4A, 0x9A52,
- 0x6B4B, 0x9A53, 0x6B4C, 0xB8E8, 0x6B4D, 0x9A54, 0x6B4E, 0x9A55,
- 0x6B4F, 0x9A56, 0x6B50, 0x9A57, 0x6B51, 0x9A58, 0x6B52, 0x9A59,
- 0x6B53, 0x9A5A, 0x6B54, 0x9A5B, 0x6B55, 0x9A5C, 0x6B56, 0x9A5D,
- 0x6B57, 0x9A5E, 0x6B58, 0x9A5F, 0x6B59, 0xECA8, 0x6B5A, 0x9A60,
- 0x6B5B, 0x9A61, 0x6B5C, 0x9A62, 0x6B5D, 0x9A63, 0x6B5E, 0x9A64,
- 0x6B5F, 0x9A65, 0x6B60, 0x9A66, 0x6B61, 0x9A67, 0x6B62, 0xD6B9,
- 0x6B63, 0xD5FD, 0x6B64, 0xB4CB, 0x6B65, 0xB2BD, 0x6B66, 0xCEE4,
- 0x6B67, 0xC6E7, 0x6B68, 0x9A68, 0x6B69, 0x9A69, 0x6B6A, 0xCDE1,
- 0x6B6B, 0x9A6A, 0x6B6C, 0x9A6B, 0x6B6D, 0x9A6C, 0x6B6E, 0x9A6D,
- 0x6B6F, 0x9A6E, 0x6B70, 0x9A6F, 0x6B71, 0x9A70, 0x6B72, 0x9A71,
- 0x6B73, 0x9A72, 0x6B74, 0x9A73, 0x6B75, 0x9A74, 0x6B76, 0x9A75,
- 0x6B77, 0x9A76, 0x6B78, 0x9A77, 0x6B79, 0xB4F5, 0x6B7A, 0x9A78,
- 0x6B7B, 0xCBC0, 0x6B7C, 0xBCDF, 0x6B7D, 0x9A79, 0x6B7E, 0x9A7A,
- 0x6B7F, 0x9A7B, 0x6B80, 0x9A7C, 0x6B81, 0xE9E2, 0x6B82, 0xE9E3,
- 0x6B83, 0xD1EA, 0x6B84, 0xE9E5, 0x6B85, 0x9A7D, 0x6B86, 0xB4F9,
- 0x6B87, 0xE9E4, 0x6B88, 0x9A7E, 0x6B89, 0xD1B3, 0x6B8A, 0xCAE2,
- 0x6B8B, 0xB2D0, 0x6B8C, 0x9A80, 0x6B8D, 0xE9E8, 0x6B8E, 0x9A81,
- 0x6B8F, 0x9A82, 0x6B90, 0x9A83, 0x6B91, 0x9A84, 0x6B92, 0xE9E6,
- 0x6B93, 0xE9E7, 0x6B94, 0x9A85, 0x6B95, 0x9A86, 0x6B96, 0xD6B3,
- 0x6B97, 0x9A87, 0x6B98, 0x9A88, 0x6B99, 0x9A89, 0x6B9A, 0xE9E9,
- 0x6B9B, 0xE9EA, 0x6B9C, 0x9A8A, 0x6B9D, 0x9A8B, 0x6B9E, 0x9A8C,
- 0x6B9F, 0x9A8D, 0x6BA0, 0x9A8E, 0x6BA1, 0xE9EB, 0x6BA2, 0x9A8F,
- 0x6BA3, 0x9A90, 0x6BA4, 0x9A91, 0x6BA5, 0x9A92, 0x6BA6, 0x9A93,
- 0x6BA7, 0x9A94, 0x6BA8, 0x9A95, 0x6BA9, 0x9A96, 0x6BAA, 0xE9EC,
- 0x6BAB, 0x9A97, 0x6BAC, 0x9A98, 0x6BAD, 0x9A99, 0x6BAE, 0x9A9A,
- 0x6BAF, 0x9A9B, 0x6BB0, 0x9A9C, 0x6BB1, 0x9A9D, 0x6BB2, 0x9A9E,
- 0x6BB3, 0xECAF, 0x6BB4, 0xC5B9, 0x6BB5, 0xB6CE, 0x6BB6, 0x9A9F,
- 0x6BB7, 0xD2F3, 0x6BB8, 0x9AA0, 0x6BB9, 0x9AA1, 0x6BBA, 0x9AA2,
- 0x6BBB, 0x9AA3, 0x6BBC, 0x9AA4, 0x6BBD, 0x9AA5, 0x6BBE, 0x9AA6,
- 0x6BBF, 0xB5EE, 0x6BC0, 0x9AA7, 0x6BC1, 0xBBD9, 0x6BC2, 0xECB1,
- 0x6BC3, 0x9AA8, 0x6BC4, 0x9AA9, 0x6BC5, 0xD2E3, 0x6BC6, 0x9AAA,
- 0x6BC7, 0x9AAB, 0x6BC8, 0x9AAC, 0x6BC9, 0x9AAD, 0x6BCA, 0x9AAE,
- 0x6BCB, 0xCEE3, 0x6BCC, 0x9AAF, 0x6BCD, 0xC4B8, 0x6BCE, 0x9AB0,
- 0x6BCF, 0xC3BF, 0x6BD0, 0x9AB1, 0x6BD1, 0x9AB2, 0x6BD2, 0xB6BE,
- 0x6BD3, 0xD8B9, 0x6BD4, 0xB1C8, 0x6BD5, 0xB1CF, 0x6BD6, 0xB1D1,
- 0x6BD7, 0xC5FE, 0x6BD8, 0x9AB3, 0x6BD9, 0xB1D0, 0x6BDA, 0x9AB4,
- 0x6BDB, 0xC3AB, 0x6BDC, 0x9AB5, 0x6BDD, 0x9AB6, 0x6BDE, 0x9AB7,
- 0x6BDF, 0x9AB8, 0x6BE0, 0x9AB9, 0x6BE1, 0xD5B1, 0x6BE2, 0x9ABA,
- 0x6BE3, 0x9ABB, 0x6BE4, 0x9ABC, 0x6BE5, 0x9ABD, 0x6BE6, 0x9ABE,
- 0x6BE7, 0x9ABF, 0x6BE8, 0x9AC0, 0x6BE9, 0x9AC1, 0x6BEA, 0xEBA4,
- 0x6BEB, 0xBAC1, 0x6BEC, 0x9AC2, 0x6BED, 0x9AC3, 0x6BEE, 0x9AC4,
- 0x6BEF, 0xCCBA, 0x6BF0, 0x9AC5, 0x6BF1, 0x9AC6, 0x6BF2, 0x9AC7,
- 0x6BF3, 0xEBA5, 0x6BF4, 0x9AC8, 0x6BF5, 0xEBA7, 0x6BF6, 0x9AC9,
- 0x6BF7, 0x9ACA, 0x6BF8, 0x9ACB, 0x6BF9, 0xEBA8, 0x6BFA, 0x9ACC,
- 0x6BFB, 0x9ACD, 0x6BFC, 0x9ACE, 0x6BFD, 0xEBA6, 0x6BFE, 0x9ACF,
- 0x6BFF, 0x9AD0, 0x6C00, 0x9AD1, 0x6C01, 0x9AD2, 0x6C02, 0x9AD3,
- 0x6C03, 0x9AD4, 0x6C04, 0x9AD5, 0x6C05, 0xEBA9, 0x6C06, 0xEBAB,
- 0x6C07, 0xEBAA, 0x6C08, 0x9AD6, 0x6C09, 0x9AD7, 0x6C0A, 0x9AD8,
- 0x6C0B, 0x9AD9, 0x6C0C, 0x9ADA, 0x6C0D, 0xEBAC, 0x6C0E, 0x9ADB,
- 0x6C0F, 0xCACF, 0x6C10, 0xD8B5, 0x6C11, 0xC3F1, 0x6C12, 0x9ADC,
- 0x6C13, 0xC3A5, 0x6C14, 0xC6F8, 0x6C15, 0xEBAD, 0x6C16, 0xC4CA,
- 0x6C17, 0x9ADD, 0x6C18, 0xEBAE, 0x6C19, 0xEBAF, 0x6C1A, 0xEBB0,
- 0x6C1B, 0xB7D5, 0x6C1C, 0x9ADE, 0x6C1D, 0x9ADF, 0x6C1E, 0x9AE0,
- 0x6C1F, 0xB7FA, 0x6C20, 0x9AE1, 0x6C21, 0xEBB1, 0x6C22, 0xC7E2,
- 0x6C23, 0x9AE2, 0x6C24, 0xEBB3, 0x6C25, 0x9AE3, 0x6C26, 0xBAA4,
- 0x6C27, 0xD1F5, 0x6C28, 0xB0B1, 0x6C29, 0xEBB2, 0x6C2A, 0xEBB4,
- 0x6C2B, 0x9AE4, 0x6C2C, 0x9AE5, 0x6C2D, 0x9AE6, 0x6C2E, 0xB5AA,
- 0x6C2F, 0xC2C8, 0x6C30, 0xC7E8, 0x6C31, 0x9AE7, 0x6C32, 0xEBB5,
- 0x6C33, 0x9AE8, 0x6C34, 0xCBAE, 0x6C35, 0xE3DF, 0x6C36, 0x9AE9,
- 0x6C37, 0x9AEA, 0x6C38, 0xD3C0, 0x6C39, 0x9AEB, 0x6C3A, 0x9AEC,
- 0x6C3B, 0x9AED, 0x6C3C, 0x9AEE, 0x6C3D, 0xD9DB, 0x6C3E, 0x9AEF,
- 0x6C3F, 0x9AF0, 0x6C40, 0xCDA1, 0x6C41, 0xD6AD, 0x6C42, 0xC7F3,
- 0x6C43, 0x9AF1, 0x6C44, 0x9AF2, 0x6C45, 0x9AF3, 0x6C46, 0xD9E0,
- 0x6C47, 0xBBE3, 0x6C48, 0x9AF4, 0x6C49, 0xBABA, 0x6C4A, 0xE3E2,
- 0x6C4B, 0x9AF5, 0x6C4C, 0x9AF6, 0x6C4D, 0x9AF7, 0x6C4E, 0x9AF8,
- 0x6C4F, 0x9AF9, 0x6C50, 0xCFAB, 0x6C51, 0x9AFA, 0x6C52, 0x9AFB,
- 0x6C53, 0x9AFC, 0x6C54, 0xE3E0, 0x6C55, 0xC9C7, 0x6C56, 0x9AFD,
- 0x6C57, 0xBAB9, 0x6C58, 0x9AFE, 0x6C59, 0x9B40, 0x6C5A, 0x9B41,
- 0x6C5B, 0xD1B4, 0x6C5C, 0xE3E1, 0x6C5D, 0xC8EA, 0x6C5E, 0xB9AF,
- 0x6C5F, 0xBDAD, 0x6C60, 0xB3D8, 0x6C61, 0xCEDB, 0x6C62, 0x9B42,
- 0x6C63, 0x9B43, 0x6C64, 0xCCC0, 0x6C65, 0x9B44, 0x6C66, 0x9B45,
- 0x6C67, 0x9B46, 0x6C68, 0xE3E8, 0x6C69, 0xE3E9, 0x6C6A, 0xCDF4,
- 0x6C6B, 0x9B47, 0x6C6C, 0x9B48, 0x6C6D, 0x9B49, 0x6C6E, 0x9B4A,
- 0x6C6F, 0x9B4B, 0x6C70, 0xCCAD, 0x6C71, 0x9B4C, 0x6C72, 0xBCB3,
- 0x6C73, 0x9B4D, 0x6C74, 0xE3EA, 0x6C75, 0x9B4E, 0x6C76, 0xE3EB,
- 0x6C77, 0x9B4F, 0x6C78, 0x9B50, 0x6C79, 0xD0DA, 0x6C7A, 0x9B51,
- 0x6C7B, 0x9B52, 0x6C7C, 0x9B53, 0x6C7D, 0xC6FB, 0x6C7E, 0xB7DA,
- 0x6C7F, 0x9B54, 0x6C80, 0x9B55, 0x6C81, 0xC7DF, 0x6C82, 0xD2CA,
- 0x6C83, 0xCED6, 0x6C84, 0x9B56, 0x6C85, 0xE3E4, 0x6C86, 0xE3EC,
- 0x6C87, 0x9B57, 0x6C88, 0xC9F2, 0x6C89, 0xB3C1, 0x6C8A, 0x9B58,
- 0x6C8B, 0x9B59, 0x6C8C, 0xE3E7, 0x6C8D, 0x9B5A, 0x6C8E, 0x9B5B,
- 0x6C8F, 0xC6E3, 0x6C90, 0xE3E5, 0x6C91, 0x9B5C, 0x6C92, 0x9B5D,
- 0x6C93, 0xEDB3, 0x6C94, 0xE3E6, 0x6C95, 0x9B5E, 0x6C96, 0x9B5F,
- 0x6C97, 0x9B60, 0x6C98, 0x9B61, 0x6C99, 0xC9B3, 0x6C9A, 0x9B62,
- 0x6C9B, 0xC5E6, 0x6C9C, 0x9B63, 0x6C9D, 0x9B64, 0x6C9E, 0x9B65,
- 0x6C9F, 0xB9B5, 0x6CA0, 0x9B66, 0x6CA1, 0xC3BB, 0x6CA2, 0x9B67,
- 0x6CA3, 0xE3E3, 0x6CA4, 0xC5BD, 0x6CA5, 0xC1A4, 0x6CA6, 0xC2D9,
- 0x6CA7, 0xB2D7, 0x6CA8, 0x9B68, 0x6CA9, 0xE3ED, 0x6CAA, 0xBBA6,
- 0x6CAB, 0xC4AD, 0x6CAC, 0x9B69, 0x6CAD, 0xE3F0, 0x6CAE, 0xBEDA,
- 0x6CAF, 0x9B6A, 0x6CB0, 0x9B6B, 0x6CB1, 0xE3FB, 0x6CB2, 0xE3F5,
- 0x6CB3, 0xBAD3, 0x6CB4, 0x9B6C, 0x6CB5, 0x9B6D, 0x6CB6, 0x9B6E,
- 0x6CB7, 0x9B6F, 0x6CB8, 0xB7D0, 0x6CB9, 0xD3CD, 0x6CBA, 0x9B70,
- 0x6CBB, 0xD6CE, 0x6CBC, 0xD5D3, 0x6CBD, 0xB9C1, 0x6CBE, 0xD5B4,
- 0x6CBF, 0xD1D8, 0x6CC0, 0x9B71, 0x6CC1, 0x9B72, 0x6CC2, 0x9B73,
- 0x6CC3, 0x9B74, 0x6CC4, 0xD0B9, 0x6CC5, 0xC7F6, 0x6CC6, 0x9B75,
- 0x6CC7, 0x9B76, 0x6CC8, 0x9B77, 0x6CC9, 0xC8AA, 0x6CCA, 0xB2B4,
- 0x6CCB, 0x9B78, 0x6CCC, 0xC3DA, 0x6CCD, 0x9B79, 0x6CCE, 0x9B7A,
- 0x6CCF, 0x9B7B, 0x6CD0, 0xE3EE, 0x6CD1, 0x9B7C, 0x6CD2, 0x9B7D,
- 0x6CD3, 0xE3FC, 0x6CD4, 0xE3EF, 0x6CD5, 0xB7A8, 0x6CD6, 0xE3F7,
- 0x6CD7, 0xE3F4, 0x6CD8, 0x9B7E, 0x6CD9, 0x9B80, 0x6CDA, 0x9B81,
- 0x6CDB, 0xB7BA, 0x6CDC, 0x9B82, 0x6CDD, 0x9B83, 0x6CDE, 0xC5A2,
- 0x6CDF, 0x9B84, 0x6CE0, 0xE3F6, 0x6CE1, 0xC5DD, 0x6CE2, 0xB2A8,
- 0x6CE3, 0xC6FC, 0x6CE4, 0x9B85, 0x6CE5, 0xC4E0, 0x6CE6, 0x9B86,
- 0x6CE7, 0x9B87, 0x6CE8, 0xD7A2, 0x6CE9, 0x9B88, 0x6CEA, 0xC0E1,
- 0x6CEB, 0xE3F9, 0x6CEC, 0x9B89, 0x6CED, 0x9B8A, 0x6CEE, 0xE3FA,
- 0x6CEF, 0xE3FD, 0x6CF0, 0xCCA9, 0x6CF1, 0xE3F3, 0x6CF2, 0x9B8B,
- 0x6CF3, 0xD3BE, 0x6CF4, 0x9B8C, 0x6CF5, 0xB1C3, 0x6CF6, 0xEDB4,
- 0x6CF7, 0xE3F1, 0x6CF8, 0xE3F2, 0x6CF9, 0x9B8D, 0x6CFA, 0xE3F8,
- 0x6CFB, 0xD0BA, 0x6CFC, 0xC6C3, 0x6CFD, 0xD4F3, 0x6CFE, 0xE3FE,
- 0x6CFF, 0x9B8E, 0x6D00, 0x9B8F, 0x6D01, 0xBDE0, 0x6D02, 0x9B90,
- 0x6D03, 0x9B91, 0x6D04, 0xE4A7, 0x6D05, 0x9B92, 0x6D06, 0x9B93,
- 0x6D07, 0xE4A6, 0x6D08, 0x9B94, 0x6D09, 0x9B95, 0x6D0A, 0x9B96,
- 0x6D0B, 0xD1F3, 0x6D0C, 0xE4A3, 0x6D0D, 0x9B97, 0x6D0E, 0xE4A9,
- 0x6D0F, 0x9B98, 0x6D10, 0x9B99, 0x6D11, 0x9B9A, 0x6D12, 0xC8F7,
- 0x6D13, 0x9B9B, 0x6D14, 0x9B9C, 0x6D15, 0x9B9D, 0x6D16, 0x9B9E,
- 0x6D17, 0xCFB4, 0x6D18, 0x9B9F, 0x6D19, 0xE4A8, 0x6D1A, 0xE4AE,
- 0x6D1B, 0xC2E5, 0x6D1C, 0x9BA0, 0x6D1D, 0x9BA1, 0x6D1E, 0xB6B4,
- 0x6D1F, 0x9BA2, 0x6D20, 0x9BA3, 0x6D21, 0x9BA4, 0x6D22, 0x9BA5,
- 0x6D23, 0x9BA6, 0x6D24, 0x9BA7, 0x6D25, 0xBDF2, 0x6D26, 0x9BA8,
- 0x6D27, 0xE4A2, 0x6D28, 0x9BA9, 0x6D29, 0x9BAA, 0x6D2A, 0xBAE9,
- 0x6D2B, 0xE4AA, 0x6D2C, 0x9BAB, 0x6D2D, 0x9BAC, 0x6D2E, 0xE4AC,
- 0x6D2F, 0x9BAD, 0x6D30, 0x9BAE, 0x6D31, 0xB6FD, 0x6D32, 0xD6DE,
- 0x6D33, 0xE4B2, 0x6D34, 0x9BAF, 0x6D35, 0xE4AD, 0x6D36, 0x9BB0,
- 0x6D37, 0x9BB1, 0x6D38, 0x9BB2, 0x6D39, 0xE4A1, 0x6D3A, 0x9BB3,
- 0x6D3B, 0xBBEE, 0x6D3C, 0xCDDD, 0x6D3D, 0xC7A2, 0x6D3E, 0xC5C9,
- 0x6D3F, 0x9BB4, 0x6D40, 0x9BB5, 0x6D41, 0xC1F7, 0x6D42, 0x9BB6,
- 0x6D43, 0xE4A4, 0x6D44, 0x9BB7, 0x6D45, 0xC7B3, 0x6D46, 0xBDAC,
- 0x6D47, 0xBDBD, 0x6D48, 0xE4A5, 0x6D49, 0x9BB8, 0x6D4A, 0xD7C7,
- 0x6D4B, 0xB2E2, 0x6D4C, 0x9BB9, 0x6D4D, 0xE4AB, 0x6D4E, 0xBCC3,
- 0x6D4F, 0xE4AF, 0x6D50, 0x9BBA, 0x6D51, 0xBBEB, 0x6D52, 0xE4B0,
- 0x6D53, 0xC5A8, 0x6D54, 0xE4B1, 0x6D55, 0x9BBB, 0x6D56, 0x9BBC,
- 0x6D57, 0x9BBD, 0x6D58, 0x9BBE, 0x6D59, 0xD5E3, 0x6D5A, 0xBFA3,
- 0x6D5B, 0x9BBF, 0x6D5C, 0xE4BA, 0x6D5D, 0x9BC0, 0x6D5E, 0xE4B7,
- 0x6D5F, 0x9BC1, 0x6D60, 0xE4BB, 0x6D61, 0x9BC2, 0x6D62, 0x9BC3,
- 0x6D63, 0xE4BD, 0x6D64, 0x9BC4, 0x6D65, 0x9BC5, 0x6D66, 0xC6D6,
- 0x6D67, 0x9BC6, 0x6D68, 0x9BC7, 0x6D69, 0xBAC6, 0x6D6A, 0xC0CB,
- 0x6D6B, 0x9BC8, 0x6D6C, 0x9BC9, 0x6D6D, 0x9BCA, 0x6D6E, 0xB8A1,
- 0x6D6F, 0xE4B4, 0x6D70, 0x9BCB, 0x6D71, 0x9BCC, 0x6D72, 0x9BCD,
- 0x6D73, 0x9BCE, 0x6D74, 0xD4A1, 0x6D75, 0x9BCF, 0x6D76, 0x9BD0,
- 0x6D77, 0xBAA3, 0x6D78, 0xBDFE, 0x6D79, 0x9BD1, 0x6D7A, 0x9BD2,
- 0x6D7B, 0x9BD3, 0x6D7C, 0xE4BC, 0x6D7D, 0x9BD4, 0x6D7E, 0x9BD5,
- 0x6D7F, 0x9BD6, 0x6D80, 0x9BD7, 0x6D81, 0x9BD8, 0x6D82, 0xCDBF,
- 0x6D83, 0x9BD9, 0x6D84, 0x9BDA, 0x6D85, 0xC4F9, 0x6D86, 0x9BDB,
- 0x6D87, 0x9BDC, 0x6D88, 0xCFFB, 0x6D89, 0xC9E6, 0x6D8A, 0x9BDD,
- 0x6D8B, 0x9BDE, 0x6D8C, 0xD3BF, 0x6D8D, 0x9BDF, 0x6D8E, 0xCFD1,
- 0x6D8F, 0x9BE0, 0x6D90, 0x9BE1, 0x6D91, 0xE4B3, 0x6D92, 0x9BE2,
- 0x6D93, 0xE4B8, 0x6D94, 0xE4B9, 0x6D95, 0xCCE9, 0x6D96, 0x9BE3,
- 0x6D97, 0x9BE4, 0x6D98, 0x9BE5, 0x6D99, 0x9BE6, 0x6D9A, 0x9BE7,
- 0x6D9B, 0xCCCE, 0x6D9C, 0x9BE8, 0x6D9D, 0xC0D4, 0x6D9E, 0xE4B5,
- 0x6D9F, 0xC1B0, 0x6DA0, 0xE4B6, 0x6DA1, 0xCED0, 0x6DA2, 0x9BE9,
- 0x6DA3, 0xBBC1, 0x6DA4, 0xB5D3, 0x6DA5, 0x9BEA, 0x6DA6, 0xC8F3,
- 0x6DA7, 0xBDA7, 0x6DA8, 0xD5C7, 0x6DA9, 0xC9AC, 0x6DAA, 0xB8A2,
- 0x6DAB, 0xE4CA, 0x6DAC, 0x9BEB, 0x6DAD, 0x9BEC, 0x6DAE, 0xE4CC,
- 0x6DAF, 0xD1C4, 0x6DB0, 0x9BED, 0x6DB1, 0x9BEE, 0x6DB2, 0xD2BA,
- 0x6DB3, 0x9BEF, 0x6DB4, 0x9BF0, 0x6DB5, 0xBAAD, 0x6DB6, 0x9BF1,
- 0x6DB7, 0x9BF2, 0x6DB8, 0xBAD4, 0x6DB9, 0x9BF3, 0x6DBA, 0x9BF4,
- 0x6DBB, 0x9BF5, 0x6DBC, 0x9BF6, 0x6DBD, 0x9BF7, 0x6DBE, 0x9BF8,
- 0x6DBF, 0xE4C3, 0x6DC0, 0xB5ED, 0x6DC1, 0x9BF9, 0x6DC2, 0x9BFA,
- 0x6DC3, 0x9BFB, 0x6DC4, 0xD7CD, 0x6DC5, 0xE4C0, 0x6DC6, 0xCFFD,
- 0x6DC7, 0xE4BF, 0x6DC8, 0x9BFC, 0x6DC9, 0x9BFD, 0x6DCA, 0x9BFE,
- 0x6DCB, 0xC1DC, 0x6DCC, 0xCCCA, 0x6DCD, 0x9C40, 0x6DCE, 0x9C41,
- 0x6DCF, 0x9C42, 0x6DD0, 0x9C43, 0x6DD1, 0xCAE7, 0x6DD2, 0x9C44,
- 0x6DD3, 0x9C45, 0x6DD4, 0x9C46, 0x6DD5, 0x9C47, 0x6DD6, 0xC4D7,
- 0x6DD7, 0x9C48, 0x6DD8, 0xCCD4, 0x6DD9, 0xE4C8, 0x6DDA, 0x9C49,
- 0x6DDB, 0x9C4A, 0x6DDC, 0x9C4B, 0x6DDD, 0xE4C7, 0x6DDE, 0xE4C1,
- 0x6DDF, 0x9C4C, 0x6DE0, 0xE4C4, 0x6DE1, 0xB5AD, 0x6DE2, 0x9C4D,
- 0x6DE3, 0x9C4E, 0x6DE4, 0xD3D9, 0x6DE5, 0x9C4F, 0x6DE6, 0xE4C6,
- 0x6DE7, 0x9C50, 0x6DE8, 0x9C51, 0x6DE9, 0x9C52, 0x6DEA, 0x9C53,
- 0x6DEB, 0xD2F9, 0x6DEC, 0xB4E3, 0x6DED, 0x9C54, 0x6DEE, 0xBBB4,
- 0x6DEF, 0x9C55, 0x6DF0, 0x9C56, 0x6DF1, 0xC9EE, 0x6DF2, 0x9C57,
- 0x6DF3, 0xB4BE, 0x6DF4, 0x9C58, 0x6DF5, 0x9C59, 0x6DF6, 0x9C5A,
- 0x6DF7, 0xBBEC, 0x6DF8, 0x9C5B, 0x6DF9, 0xD1CD, 0x6DFA, 0x9C5C,
- 0x6DFB, 0xCCED, 0x6DFC, 0xEDB5, 0x6DFD, 0x9C5D, 0x6DFE, 0x9C5E,
- 0x6DFF, 0x9C5F, 0x6E00, 0x9C60, 0x6E01, 0x9C61, 0x6E02, 0x9C62,
- 0x6E03, 0x9C63, 0x6E04, 0x9C64, 0x6E05, 0xC7E5, 0x6E06, 0x9C65,
- 0x6E07, 0x9C66, 0x6E08, 0x9C67, 0x6E09, 0x9C68, 0x6E0A, 0xD4A8,
- 0x6E0B, 0x9C69, 0x6E0C, 0xE4CB, 0x6E0D, 0xD7D5, 0x6E0E, 0xE4C2,
- 0x6E0F, 0x9C6A, 0x6E10, 0xBDA5, 0x6E11, 0xE4C5, 0x6E12, 0x9C6B,
- 0x6E13, 0x9C6C, 0x6E14, 0xD3E6, 0x6E15, 0x9C6D, 0x6E16, 0xE4C9,
- 0x6E17, 0xC9F8, 0x6E18, 0x9C6E, 0x6E19, 0x9C6F, 0x6E1A, 0xE4BE,
- 0x6E1B, 0x9C70, 0x6E1C, 0x9C71, 0x6E1D, 0xD3E5, 0x6E1E, 0x9C72,
- 0x6E1F, 0x9C73, 0x6E20, 0xC7FE, 0x6E21, 0xB6C9, 0x6E22, 0x9C74,
- 0x6E23, 0xD4FC, 0x6E24, 0xB2B3, 0x6E25, 0xE4D7, 0x6E26, 0x9C75,
- 0x6E27, 0x9C76, 0x6E28, 0x9C77, 0x6E29, 0xCEC2, 0x6E2A, 0x9C78,
- 0x6E2B, 0xE4CD, 0x6E2C, 0x9C79, 0x6E2D, 0xCEBC, 0x6E2E, 0x9C7A,
- 0x6E2F, 0xB8DB, 0x6E30, 0x9C7B, 0x6E31, 0x9C7C, 0x6E32, 0xE4D6,
- 0x6E33, 0x9C7D, 0x6E34, 0xBFCA, 0x6E35, 0x9C7E, 0x6E36, 0x9C80,
- 0x6E37, 0x9C81, 0x6E38, 0xD3CE, 0x6E39, 0x9C82, 0x6E3A, 0xC3EC,
- 0x6E3B, 0x9C83, 0x6E3C, 0x9C84, 0x6E3D, 0x9C85, 0x6E3E, 0x9C86,
- 0x6E3F, 0x9C87, 0x6E40, 0x9C88, 0x6E41, 0x9C89, 0x6E42, 0x9C8A,
- 0x6E43, 0xC5C8, 0x6E44, 0xE4D8, 0x6E45, 0x9C8B, 0x6E46, 0x9C8C,
- 0x6E47, 0x9C8D, 0x6E48, 0x9C8E, 0x6E49, 0x9C8F, 0x6E4A, 0x9C90,
- 0x6E4B, 0x9C91, 0x6E4C, 0x9C92, 0x6E4D, 0xCDC4, 0x6E4E, 0xE4CF,
- 0x6E4F, 0x9C93, 0x6E50, 0x9C94, 0x6E51, 0x9C95, 0x6E52, 0x9C96,
- 0x6E53, 0xE4D4, 0x6E54, 0xE4D5, 0x6E55, 0x9C97, 0x6E56, 0xBAFE,
- 0x6E57, 0x9C98, 0x6E58, 0xCFE6, 0x6E59, 0x9C99, 0x6E5A, 0x9C9A,
- 0x6E5B, 0xD5BF, 0x6E5C, 0x9C9B, 0x6E5D, 0x9C9C, 0x6E5E, 0x9C9D,
- 0x6E5F, 0xE4D2, 0x6E60, 0x9C9E, 0x6E61, 0x9C9F, 0x6E62, 0x9CA0,
- 0x6E63, 0x9CA1, 0x6E64, 0x9CA2, 0x6E65, 0x9CA3, 0x6E66, 0x9CA4,
- 0x6E67, 0x9CA5, 0x6E68, 0x9CA6, 0x6E69, 0x9CA7, 0x6E6A, 0x9CA8,
- 0x6E6B, 0xE4D0, 0x6E6C, 0x9CA9, 0x6E6D, 0x9CAA, 0x6E6E, 0xE4CE,
- 0x6E6F, 0x9CAB, 0x6E70, 0x9CAC, 0x6E71, 0x9CAD, 0x6E72, 0x9CAE,
- 0x6E73, 0x9CAF, 0x6E74, 0x9CB0, 0x6E75, 0x9CB1, 0x6E76, 0x9CB2,
- 0x6E77, 0x9CB3, 0x6E78, 0x9CB4, 0x6E79, 0x9CB5, 0x6E7A, 0x9CB6,
- 0x6E7B, 0x9CB7, 0x6E7C, 0x9CB8, 0x6E7D, 0x9CB9, 0x6E7E, 0xCDE5,
- 0x6E7F, 0xCAAA, 0x6E80, 0x9CBA, 0x6E81, 0x9CBB, 0x6E82, 0x9CBC,
- 0x6E83, 0xC0A3, 0x6E84, 0x9CBD, 0x6E85, 0xBDA6, 0x6E86, 0xE4D3,
- 0x6E87, 0x9CBE, 0x6E88, 0x9CBF, 0x6E89, 0xB8C8, 0x6E8A, 0x9CC0,
- 0x6E8B, 0x9CC1, 0x6E8C, 0x9CC2, 0x6E8D, 0x9CC3, 0x6E8E, 0x9CC4,
- 0x6E8F, 0xE4E7, 0x6E90, 0xD4B4, 0x6E91, 0x9CC5, 0x6E92, 0x9CC6,
- 0x6E93, 0x9CC7, 0x6E94, 0x9CC8, 0x6E95, 0x9CC9, 0x6E96, 0x9CCA,
- 0x6E97, 0x9CCB, 0x6E98, 0xE4DB, 0x6E99, 0x9CCC, 0x6E9A, 0x9CCD,
- 0x6E9B, 0x9CCE, 0x6E9C, 0xC1EF, 0x6E9D, 0x9CCF, 0x6E9E, 0x9CD0,
- 0x6E9F, 0xE4E9, 0x6EA0, 0x9CD1, 0x6EA1, 0x9CD2, 0x6EA2, 0xD2E7,
- 0x6EA3, 0x9CD3, 0x6EA4, 0x9CD4, 0x6EA5, 0xE4DF, 0x6EA6, 0x9CD5,
- 0x6EA7, 0xE4E0, 0x6EA8, 0x9CD6, 0x6EA9, 0x9CD7, 0x6EAA, 0xCFAA,
- 0x6EAB, 0x9CD8, 0x6EAC, 0x9CD9, 0x6EAD, 0x9CDA, 0x6EAE, 0x9CDB,
- 0x6EAF, 0xCBDD, 0x6EB0, 0x9CDC, 0x6EB1, 0xE4DA, 0x6EB2, 0xE4D1,
- 0x6EB3, 0x9CDD, 0x6EB4, 0xE4E5, 0x6EB5, 0x9CDE, 0x6EB6, 0xC8DC,
- 0x6EB7, 0xE4E3, 0x6EB8, 0x9CDF, 0x6EB9, 0x9CE0, 0x6EBA, 0xC4E7,
- 0x6EBB, 0xE4E2, 0x6EBC, 0x9CE1, 0x6EBD, 0xE4E1, 0x6EBE, 0x9CE2,
- 0x6EBF, 0x9CE3, 0x6EC0, 0x9CE4, 0x6EC1, 0xB3FC, 0x6EC2, 0xE4E8,
- 0x6EC3, 0x9CE5, 0x6EC4, 0x9CE6, 0x6EC5, 0x9CE7, 0x6EC6, 0x9CE8,
- 0x6EC7, 0xB5E1, 0x6EC8, 0x9CE9, 0x6EC9, 0x9CEA, 0x6ECA, 0x9CEB,
- 0x6ECB, 0xD7CC, 0x6ECC, 0x9CEC, 0x6ECD, 0x9CED, 0x6ECE, 0x9CEE,
- 0x6ECF, 0xE4E6, 0x6ED0, 0x9CEF, 0x6ED1, 0xBBAC, 0x6ED2, 0x9CF0,
- 0x6ED3, 0xD7D2, 0x6ED4, 0xCCCF, 0x6ED5, 0xEBF8, 0x6ED6, 0x9CF1,
- 0x6ED7, 0xE4E4, 0x6ED8, 0x9CF2, 0x6ED9, 0x9CF3, 0x6EDA, 0xB9F6,
- 0x6EDB, 0x9CF4, 0x6EDC, 0x9CF5, 0x6EDD, 0x9CF6, 0x6EDE, 0xD6CD,
- 0x6EDF, 0xE4D9, 0x6EE0, 0xE4DC, 0x6EE1, 0xC2FA, 0x6EE2, 0xE4DE,
- 0x6EE3, 0x9CF7, 0x6EE4, 0xC2CB, 0x6EE5, 0xC0C4, 0x6EE6, 0xC2D0,
- 0x6EE7, 0x9CF8, 0x6EE8, 0xB1F5, 0x6EE9, 0xCCB2, 0x6EEA, 0x9CF9,
- 0x6EEB, 0x9CFA, 0x6EEC, 0x9CFB, 0x6EED, 0x9CFC, 0x6EEE, 0x9CFD,
- 0x6EEF, 0x9CFE, 0x6EF0, 0x9D40, 0x6EF1, 0x9D41, 0x6EF2, 0x9D42,
- 0x6EF3, 0x9D43, 0x6EF4, 0xB5CE, 0x6EF5, 0x9D44, 0x6EF6, 0x9D45,
- 0x6EF7, 0x9D46, 0x6EF8, 0x9D47, 0x6EF9, 0xE4EF, 0x6EFA, 0x9D48,
- 0x6EFB, 0x9D49, 0x6EFC, 0x9D4A, 0x6EFD, 0x9D4B, 0x6EFE, 0x9D4C,
- 0x6EFF, 0x9D4D, 0x6F00, 0x9D4E, 0x6F01, 0x9D4F, 0x6F02, 0xC6AF,
- 0x6F03, 0x9D50, 0x6F04, 0x9D51, 0x6F05, 0x9D52, 0x6F06, 0xC6E1,
- 0x6F07, 0x9D53, 0x6F08, 0x9D54, 0x6F09, 0xE4F5, 0x6F0A, 0x9D55,
- 0x6F0B, 0x9D56, 0x6F0C, 0x9D57, 0x6F0D, 0x9D58, 0x6F0E, 0x9D59,
- 0x6F0F, 0xC2A9, 0x6F10, 0x9D5A, 0x6F11, 0x9D5B, 0x6F12, 0x9D5C,
- 0x6F13, 0xC0EC, 0x6F14, 0xD1DD, 0x6F15, 0xE4EE, 0x6F16, 0x9D5D,
- 0x6F17, 0x9D5E, 0x6F18, 0x9D5F, 0x6F19, 0x9D60, 0x6F1A, 0x9D61,
- 0x6F1B, 0x9D62, 0x6F1C, 0x9D63, 0x6F1D, 0x9D64, 0x6F1E, 0x9D65,
- 0x6F1F, 0x9D66, 0x6F20, 0xC4AE, 0x6F21, 0x9D67, 0x6F22, 0x9D68,
- 0x6F23, 0x9D69, 0x6F24, 0xE4ED, 0x6F25, 0x9D6A, 0x6F26, 0x9D6B,
- 0x6F27, 0x9D6C, 0x6F28, 0x9D6D, 0x6F29, 0xE4F6, 0x6F2A, 0xE4F4,
- 0x6F2B, 0xC2FE, 0x6F2C, 0x9D6E, 0x6F2D, 0xE4DD, 0x6F2E, 0x9D6F,
- 0x6F2F, 0xE4F0, 0x6F30, 0x9D70, 0x6F31, 0xCAFE, 0x6F32, 0x9D71,
- 0x6F33, 0xD5C4, 0x6F34, 0x9D72, 0x6F35, 0x9D73, 0x6F36, 0xE4F1,
- 0x6F37, 0x9D74, 0x6F38, 0x9D75, 0x6F39, 0x9D76, 0x6F3A, 0x9D77,
- 0x6F3B, 0x9D78, 0x6F3C, 0x9D79, 0x6F3D, 0x9D7A, 0x6F3E, 0xD1FA,
- 0x6F3F, 0x9D7B, 0x6F40, 0x9D7C, 0x6F41, 0x9D7D, 0x6F42, 0x9D7E,
- 0x6F43, 0x9D80, 0x6F44, 0x9D81, 0x6F45, 0x9D82, 0x6F46, 0xE4EB,
- 0x6F47, 0xE4EC, 0x6F48, 0x9D83, 0x6F49, 0x9D84, 0x6F4A, 0x9D85,
- 0x6F4B, 0xE4F2, 0x6F4C, 0x9D86, 0x6F4D, 0xCEAB, 0x6F4E, 0x9D87,
- 0x6F4F, 0x9D88, 0x6F50, 0x9D89, 0x6F51, 0x9D8A, 0x6F52, 0x9D8B,
- 0x6F53, 0x9D8C, 0x6F54, 0x9D8D, 0x6F55, 0x9D8E, 0x6F56, 0x9D8F,
- 0x6F57, 0x9D90, 0x6F58, 0xC5CB, 0x6F59, 0x9D91, 0x6F5A, 0x9D92,
- 0x6F5B, 0x9D93, 0x6F5C, 0xC7B1, 0x6F5D, 0x9D94, 0x6F5E, 0xC2BA,
- 0x6F5F, 0x9D95, 0x6F60, 0x9D96, 0x6F61, 0x9D97, 0x6F62, 0xE4EA,
- 0x6F63, 0x9D98, 0x6F64, 0x9D99, 0x6F65, 0x9D9A, 0x6F66, 0xC1CA,
- 0x6F67, 0x9D9B, 0x6F68, 0x9D9C, 0x6F69, 0x9D9D, 0x6F6A, 0x9D9E,
- 0x6F6B, 0x9D9F, 0x6F6C, 0x9DA0, 0x6F6D, 0xCCB6, 0x6F6E, 0xB3B1,
- 0x6F6F, 0x9DA1, 0x6F70, 0x9DA2, 0x6F71, 0x9DA3, 0x6F72, 0xE4FB,
- 0x6F73, 0x9DA4, 0x6F74, 0xE4F3, 0x6F75, 0x9DA5, 0x6F76, 0x9DA6,
- 0x6F77, 0x9DA7, 0x6F78, 0xE4FA, 0x6F79, 0x9DA8, 0x6F7A, 0xE4FD,
- 0x6F7B, 0x9DA9, 0x6F7C, 0xE4FC, 0x6F7D, 0x9DAA, 0x6F7E, 0x9DAB,
- 0x6F7F, 0x9DAC, 0x6F80, 0x9DAD, 0x6F81, 0x9DAE, 0x6F82, 0x9DAF,
- 0x6F83, 0x9DB0, 0x6F84, 0xB3CE, 0x6F85, 0x9DB1, 0x6F86, 0x9DB2,
- 0x6F87, 0x9DB3, 0x6F88, 0xB3BA, 0x6F89, 0xE4F7, 0x6F8A, 0x9DB4,
- 0x6F8B, 0x9DB5, 0x6F8C, 0xE4F9, 0x6F8D, 0xE4F8, 0x6F8E, 0xC5EC,
- 0x6F8F, 0x9DB6, 0x6F90, 0x9DB7, 0x6F91, 0x9DB8, 0x6F92, 0x9DB9,
- 0x6F93, 0x9DBA, 0x6F94, 0x9DBB, 0x6F95, 0x9DBC, 0x6F96, 0x9DBD,
- 0x6F97, 0x9DBE, 0x6F98, 0x9DBF, 0x6F99, 0x9DC0, 0x6F9A, 0x9DC1,
- 0x6F9B, 0x9DC2, 0x6F9C, 0xC0BD, 0x6F9D, 0x9DC3, 0x6F9E, 0x9DC4,
- 0x6F9F, 0x9DC5, 0x6FA0, 0x9DC6, 0x6FA1, 0xD4E8, 0x6FA2, 0x9DC7,
- 0x6FA3, 0x9DC8, 0x6FA4, 0x9DC9, 0x6FA5, 0x9DCA, 0x6FA6, 0x9DCB,
- 0x6FA7, 0xE5A2, 0x6FA8, 0x9DCC, 0x6FA9, 0x9DCD, 0x6FAA, 0x9DCE,
- 0x6FAB, 0x9DCF, 0x6FAC, 0x9DD0, 0x6FAD, 0x9DD1, 0x6FAE, 0x9DD2,
- 0x6FAF, 0x9DD3, 0x6FB0, 0x9DD4, 0x6FB1, 0x9DD5, 0x6FB2, 0x9DD6,
- 0x6FB3, 0xB0C4, 0x6FB4, 0x9DD7, 0x6FB5, 0x9DD8, 0x6FB6, 0xE5A4,
- 0x6FB7, 0x9DD9, 0x6FB8, 0x9DDA, 0x6FB9, 0xE5A3, 0x6FBA, 0x9DDB,
- 0x6FBB, 0x9DDC, 0x6FBC, 0x9DDD, 0x6FBD, 0x9DDE, 0x6FBE, 0x9DDF,
- 0x6FBF, 0x9DE0, 0x6FC0, 0xBCA4, 0x6FC1, 0x9DE1, 0x6FC2, 0xE5A5,
- 0x6FC3, 0x9DE2, 0x6FC4, 0x9DE3, 0x6FC5, 0x9DE4, 0x6FC6, 0x9DE5,
- 0x6FC7, 0x9DE6, 0x6FC8, 0x9DE7, 0x6FC9, 0xE5A1, 0x6FCA, 0x9DE8,
- 0x6FCB, 0x9DE9, 0x6FCC, 0x9DEA, 0x6FCD, 0x9DEB, 0x6FCE, 0x9DEC,
- 0x6FCF, 0x9DED, 0x6FD0, 0x9DEE, 0x6FD1, 0xE4FE, 0x6FD2, 0xB1F4,
- 0x6FD3, 0x9DEF, 0x6FD4, 0x9DF0, 0x6FD5, 0x9DF1, 0x6FD6, 0x9DF2,
- 0x6FD7, 0x9DF3, 0x6FD8, 0x9DF4, 0x6FD9, 0x9DF5, 0x6FDA, 0x9DF6,
- 0x6FDB, 0x9DF7, 0x6FDC, 0x9DF8, 0x6FDD, 0x9DF9, 0x6FDE, 0xE5A8,
- 0x6FDF, 0x9DFA, 0x6FE0, 0xE5A9, 0x6FE1, 0xE5A6, 0x6FE2, 0x9DFB,
- 0x6FE3, 0x9DFC, 0x6FE4, 0x9DFD, 0x6FE5, 0x9DFE, 0x6FE6, 0x9E40,
- 0x6FE7, 0x9E41, 0x6FE8, 0x9E42, 0x6FE9, 0x9E43, 0x6FEA, 0x9E44,
- 0x6FEB, 0x9E45, 0x6FEC, 0x9E46, 0x6FED, 0x9E47, 0x6FEE, 0xE5A7,
- 0x6FEF, 0xE5AA, 0x6FF0, 0x9E48, 0x6FF1, 0x9E49, 0x6FF2, 0x9E4A,
- 0x6FF3, 0x9E4B, 0x6FF4, 0x9E4C, 0x6FF5, 0x9E4D, 0x6FF6, 0x9E4E,
- 0x6FF7, 0x9E4F, 0x6FF8, 0x9E50, 0x6FF9, 0x9E51, 0x6FFA, 0x9E52,
- 0x6FFB, 0x9E53, 0x6FFC, 0x9E54, 0x6FFD, 0x9E55, 0x6FFE, 0x9E56,
- 0x6FFF, 0x9E57, 0x7000, 0x9E58, 0x7001, 0x9E59, 0x7002, 0x9E5A,
- 0x7003, 0x9E5B, 0x7004, 0x9E5C, 0x7005, 0x9E5D, 0x7006, 0x9E5E,
- 0x7007, 0x9E5F, 0x7008, 0x9E60, 0x7009, 0x9E61, 0x700A, 0x9E62,
- 0x700B, 0x9E63, 0x700C, 0x9E64, 0x700D, 0x9E65, 0x700E, 0x9E66,
- 0x700F, 0x9E67, 0x7010, 0x9E68, 0x7011, 0xC6D9, 0x7012, 0x9E69,
- 0x7013, 0x9E6A, 0x7014, 0x9E6B, 0x7015, 0x9E6C, 0x7016, 0x9E6D,
- 0x7017, 0x9E6E, 0x7018, 0x9E6F, 0x7019, 0x9E70, 0x701A, 0xE5AB,
- 0x701B, 0xE5AD, 0x701C, 0x9E71, 0x701D, 0x9E72, 0x701E, 0x9E73,
- 0x701F, 0x9E74, 0x7020, 0x9E75, 0x7021, 0x9E76, 0x7022, 0x9E77,
- 0x7023, 0xE5AC, 0x7024, 0x9E78, 0x7025, 0x9E79, 0x7026, 0x9E7A,
- 0x7027, 0x9E7B, 0x7028, 0x9E7C, 0x7029, 0x9E7D, 0x702A, 0x9E7E,
- 0x702B, 0x9E80, 0x702C, 0x9E81, 0x702D, 0x9E82, 0x702E, 0x9E83,
- 0x702F, 0x9E84, 0x7030, 0x9E85, 0x7031, 0x9E86, 0x7032, 0x9E87,
- 0x7033, 0x9E88, 0x7034, 0x9E89, 0x7035, 0xE5AF, 0x7036, 0x9E8A,
- 0x7037, 0x9E8B, 0x7038, 0x9E8C, 0x7039, 0xE5AE, 0x703A, 0x9E8D,
- 0x703B, 0x9E8E, 0x703C, 0x9E8F, 0x703D, 0x9E90, 0x703E, 0x9E91,
- 0x703F, 0x9E92, 0x7040, 0x9E93, 0x7041, 0x9E94, 0x7042, 0x9E95,
- 0x7043, 0x9E96, 0x7044, 0x9E97, 0x7045, 0x9E98, 0x7046, 0x9E99,
- 0x7047, 0x9E9A, 0x7048, 0x9E9B, 0x7049, 0x9E9C, 0x704A, 0x9E9D,
- 0x704B, 0x9E9E, 0x704C, 0xB9E0, 0x704D, 0x9E9F, 0x704E, 0x9EA0,
- 0x704F, 0xE5B0, 0x7050, 0x9EA1, 0x7051, 0x9EA2, 0x7052, 0x9EA3,
- 0x7053, 0x9EA4, 0x7054, 0x9EA5, 0x7055, 0x9EA6, 0x7056, 0x9EA7,
- 0x7057, 0x9EA8, 0x7058, 0x9EA9, 0x7059, 0x9EAA, 0x705A, 0x9EAB,
- 0x705B, 0x9EAC, 0x705C, 0x9EAD, 0x705D, 0x9EAE, 0x705E, 0xE5B1,
- 0x705F, 0x9EAF, 0x7060, 0x9EB0, 0x7061, 0x9EB1, 0x7062, 0x9EB2,
- 0x7063, 0x9EB3, 0x7064, 0x9EB4, 0x7065, 0x9EB5, 0x7066, 0x9EB6,
- 0x7067, 0x9EB7, 0x7068, 0x9EB8, 0x7069, 0x9EB9, 0x706A, 0x9EBA,
- 0x706B, 0xBBF0, 0x706C, 0xECE1, 0x706D, 0xC3F0, 0x706E, 0x9EBB,
- 0x706F, 0xB5C6, 0x7070, 0xBBD2, 0x7071, 0x9EBC, 0x7072, 0x9EBD,
- 0x7073, 0x9EBE, 0x7074, 0x9EBF, 0x7075, 0xC1E9, 0x7076, 0xD4EE,
- 0x7077, 0x9EC0, 0x7078, 0xBEC4, 0x7079, 0x9EC1, 0x707A, 0x9EC2,
- 0x707B, 0x9EC3, 0x707C, 0xD7C6, 0x707D, 0x9EC4, 0x707E, 0xD4D6,
- 0x707F, 0xB2D3, 0x7080, 0xECBE, 0x7081, 0x9EC5, 0x7082, 0x9EC6,
- 0x7083, 0x9EC7, 0x7084, 0x9EC8, 0x7085, 0xEAC1, 0x7086, 0x9EC9,
- 0x7087, 0x9ECA, 0x7088, 0x9ECB, 0x7089, 0xC2AF, 0x708A, 0xB4B6,
- 0x708B, 0x9ECC, 0x708C, 0x9ECD, 0x708D, 0x9ECE, 0x708E, 0xD1D7,
- 0x708F, 0x9ECF, 0x7090, 0x9ED0, 0x7091, 0x9ED1, 0x7092, 0xB3B4,
- 0x7093, 0x9ED2, 0x7094, 0xC8B2, 0x7095, 0xBFBB, 0x7096, 0xECC0,
- 0x7097, 0x9ED3, 0x7098, 0x9ED4, 0x7099, 0xD6CB, 0x709A, 0x9ED5,
- 0x709B, 0x9ED6, 0x709C, 0xECBF, 0x709D, 0xECC1, 0x709E, 0x9ED7,
- 0x709F, 0x9ED8, 0x70A0, 0x9ED9, 0x70A1, 0x9EDA, 0x70A2, 0x9EDB,
- 0x70A3, 0x9EDC, 0x70A4, 0x9EDD, 0x70A5, 0x9EDE, 0x70A6, 0x9EDF,
- 0x70A7, 0x9EE0, 0x70A8, 0x9EE1, 0x70A9, 0x9EE2, 0x70AA, 0x9EE3,
- 0x70AB, 0xECC5, 0x70AC, 0xBEE6, 0x70AD, 0xCCBF, 0x70AE, 0xC5DA,
- 0x70AF, 0xBEBC, 0x70B0, 0x9EE4, 0x70B1, 0xECC6, 0x70B2, 0x9EE5,
- 0x70B3, 0xB1FE, 0x70B4, 0x9EE6, 0x70B5, 0x9EE7, 0x70B6, 0x9EE8,
- 0x70B7, 0xECC4, 0x70B8, 0xD5A8, 0x70B9, 0xB5E3, 0x70BA, 0x9EE9,
- 0x70BB, 0xECC2, 0x70BC, 0xC1B6, 0x70BD, 0xB3E3, 0x70BE, 0x9EEA,
- 0x70BF, 0x9EEB, 0x70C0, 0xECC3, 0x70C1, 0xCBB8, 0x70C2, 0xC0C3,
- 0x70C3, 0xCCFE, 0x70C4, 0x9EEC, 0x70C5, 0x9EED, 0x70C6, 0x9EEE,
- 0x70C7, 0x9EEF, 0x70C8, 0xC1D2, 0x70C9, 0x9EF0, 0x70CA, 0xECC8,
- 0x70CB, 0x9EF1, 0x70CC, 0x9EF2, 0x70CD, 0x9EF3, 0x70CE, 0x9EF4,
- 0x70CF, 0x9EF5, 0x70D0, 0x9EF6, 0x70D1, 0x9EF7, 0x70D2, 0x9EF8,
- 0x70D3, 0x9EF9, 0x70D4, 0x9EFA, 0x70D5, 0x9EFB, 0x70D6, 0x9EFC,
- 0x70D7, 0x9EFD, 0x70D8, 0xBAE6, 0x70D9, 0xC0D3, 0x70DA, 0x9EFE,
- 0x70DB, 0xD6F2, 0x70DC, 0x9F40, 0x70DD, 0x9F41, 0x70DE, 0x9F42,
- 0x70DF, 0xD1CC, 0x70E0, 0x9F43, 0x70E1, 0x9F44, 0x70E2, 0x9F45,
- 0x70E3, 0x9F46, 0x70E4, 0xBFBE, 0x70E5, 0x9F47, 0x70E6, 0xB7B3,
- 0x70E7, 0xC9D5, 0x70E8, 0xECC7, 0x70E9, 0xBBE2, 0x70EA, 0x9F48,
- 0x70EB, 0xCCCC, 0x70EC, 0xBDFD, 0x70ED, 0xC8C8, 0x70EE, 0x9F49,
- 0x70EF, 0xCFA9, 0x70F0, 0x9F4A, 0x70F1, 0x9F4B, 0x70F2, 0x9F4C,
- 0x70F3, 0x9F4D, 0x70F4, 0x9F4E, 0x70F5, 0x9F4F, 0x70F6, 0x9F50,
- 0x70F7, 0xCDE9, 0x70F8, 0x9F51, 0x70F9, 0xC5EB, 0x70FA, 0x9F52,
- 0x70FB, 0x9F53, 0x70FC, 0x9F54, 0x70FD, 0xB7E9, 0x70FE, 0x9F55,
- 0x70FF, 0x9F56, 0x7100, 0x9F57, 0x7101, 0x9F58, 0x7102, 0x9F59,
- 0x7103, 0x9F5A, 0x7104, 0x9F5B, 0x7105, 0x9F5C, 0x7106, 0x9F5D,
- 0x7107, 0x9F5E, 0x7108, 0x9F5F, 0x7109, 0xD1C9, 0x710A, 0xBAB8,
- 0x710B, 0x9F60, 0x710C, 0x9F61, 0x710D, 0x9F62, 0x710E, 0x9F63,
- 0x710F, 0x9F64, 0x7110, 0xECC9, 0x7111, 0x9F65, 0x7112, 0x9F66,
- 0x7113, 0xECCA, 0x7114, 0x9F67, 0x7115, 0xBBC0, 0x7116, 0xECCB,
- 0x7117, 0x9F68, 0x7118, 0xECE2, 0x7119, 0xB1BA, 0x711A, 0xB7D9,
- 0x711B, 0x9F69, 0x711C, 0x9F6A, 0x711D, 0x9F6B, 0x711E, 0x9F6C,
- 0x711F, 0x9F6D, 0x7120, 0x9F6E, 0x7121, 0x9F6F, 0x7122, 0x9F70,
- 0x7123, 0x9F71, 0x7124, 0x9F72, 0x7125, 0x9F73, 0x7126, 0xBDB9,
- 0x7127, 0x9F74, 0x7128, 0x9F75, 0x7129, 0x9F76, 0x712A, 0x9F77,
- 0x712B, 0x9F78, 0x712C, 0x9F79, 0x712D, 0x9F7A, 0x712E, 0x9F7B,
- 0x712F, 0xECCC, 0x7130, 0xD1E6, 0x7131, 0xECCD, 0x7132, 0x9F7C,
- 0x7133, 0x9F7D, 0x7134, 0x9F7E, 0x7135, 0x9F80, 0x7136, 0xC8BB,
- 0x7137, 0x9F81, 0x7138, 0x9F82, 0x7139, 0x9F83, 0x713A, 0x9F84,
- 0x713B, 0x9F85, 0x713C, 0x9F86, 0x713D, 0x9F87, 0x713E, 0x9F88,
- 0x713F, 0x9F89, 0x7140, 0x9F8A, 0x7141, 0x9F8B, 0x7142, 0x9F8C,
- 0x7143, 0x9F8D, 0x7144, 0x9F8E, 0x7145, 0xECD1, 0x7146, 0x9F8F,
- 0x7147, 0x9F90, 0x7148, 0x9F91, 0x7149, 0x9F92, 0x714A, 0xECD3,
- 0x714B, 0x9F93, 0x714C, 0xBBCD, 0x714D, 0x9F94, 0x714E, 0xBCE5,
- 0x714F, 0x9F95, 0x7150, 0x9F96, 0x7151, 0x9F97, 0x7152, 0x9F98,
- 0x7153, 0x9F99, 0x7154, 0x9F9A, 0x7155, 0x9F9B, 0x7156, 0x9F9C,
- 0x7157, 0x9F9D, 0x7158, 0x9F9E, 0x7159, 0x9F9F, 0x715A, 0x9FA0,
- 0x715B, 0x9FA1, 0x715C, 0xECCF, 0x715D, 0x9FA2, 0x715E, 0xC9B7,
- 0x715F, 0x9FA3, 0x7160, 0x9FA4, 0x7161, 0x9FA5, 0x7162, 0x9FA6,
- 0x7163, 0x9FA7, 0x7164, 0xC3BA, 0x7165, 0x9FA8, 0x7166, 0xECE3,
- 0x7167, 0xD5D5, 0x7168, 0xECD0, 0x7169, 0x9FA9, 0x716A, 0x9FAA,
- 0x716B, 0x9FAB, 0x716C, 0x9FAC, 0x716D, 0x9FAD, 0x716E, 0xD6F3,
- 0x716F, 0x9FAE, 0x7170, 0x9FAF, 0x7171, 0x9FB0, 0x7172, 0xECD2,
- 0x7173, 0xECCE, 0x7174, 0x9FB1, 0x7175, 0x9FB2, 0x7176, 0x9FB3,
- 0x7177, 0x9FB4, 0x7178, 0xECD4, 0x7179, 0x9FB5, 0x717A, 0xECD5,
- 0x717B, 0x9FB6, 0x717C, 0x9FB7, 0x717D, 0xC9BF, 0x717E, 0x9FB8,
- 0x717F, 0x9FB9, 0x7180, 0x9FBA, 0x7181, 0x9FBB, 0x7182, 0x9FBC,
- 0x7183, 0x9FBD, 0x7184, 0xCFA8, 0x7185, 0x9FBE, 0x7186, 0x9FBF,
- 0x7187, 0x9FC0, 0x7188, 0x9FC1, 0x7189, 0x9FC2, 0x718A, 0xD0DC,
- 0x718B, 0x9FC3, 0x718C, 0x9FC4, 0x718D, 0x9FC5, 0x718E, 0x9FC6,
- 0x718F, 0xD1AC, 0x7190, 0x9FC7, 0x7191, 0x9FC8, 0x7192, 0x9FC9,
- 0x7193, 0x9FCA, 0x7194, 0xC8DB, 0x7195, 0x9FCB, 0x7196, 0x9FCC,
- 0x7197, 0x9FCD, 0x7198, 0xECD6, 0x7199, 0xCEF5, 0x719A, 0x9FCE,
- 0x719B, 0x9FCF, 0x719C, 0x9FD0, 0x719D, 0x9FD1, 0x719E, 0x9FD2,
- 0x719F, 0xCAEC, 0x71A0, 0xECDA, 0x71A1, 0x9FD3, 0x71A2, 0x9FD4,
- 0x71A3, 0x9FD5, 0x71A4, 0x9FD6, 0x71A5, 0x9FD7, 0x71A6, 0x9FD8,
- 0x71A7, 0x9FD9, 0x71A8, 0xECD9, 0x71A9, 0x9FDA, 0x71AA, 0x9FDB,
- 0x71AB, 0x9FDC, 0x71AC, 0xB0BE, 0x71AD, 0x9FDD, 0x71AE, 0x9FDE,
- 0x71AF, 0x9FDF, 0x71B0, 0x9FE0, 0x71B1, 0x9FE1, 0x71B2, 0x9FE2,
- 0x71B3, 0xECD7, 0x71B4, 0x9FE3, 0x71B5, 0xECD8, 0x71B6, 0x9FE4,
- 0x71B7, 0x9FE5, 0x71B8, 0x9FE6, 0x71B9, 0xECE4, 0x71BA, 0x9FE7,
- 0x71BB, 0x9FE8, 0x71BC, 0x9FE9, 0x71BD, 0x9FEA, 0x71BE, 0x9FEB,
- 0x71BF, 0x9FEC, 0x71C0, 0x9FED, 0x71C1, 0x9FEE, 0x71C2, 0x9FEF,
- 0x71C3, 0xC8BC, 0x71C4, 0x9FF0, 0x71C5, 0x9FF1, 0x71C6, 0x9FF2,
- 0x71C7, 0x9FF3, 0x71C8, 0x9FF4, 0x71C9, 0x9FF5, 0x71CA, 0x9FF6,
- 0x71CB, 0x9FF7, 0x71CC, 0x9FF8, 0x71CD, 0x9FF9, 0x71CE, 0xC1C7,
- 0x71CF, 0x9FFA, 0x71D0, 0x9FFB, 0x71D1, 0x9FFC, 0x71D2, 0x9FFD,
- 0x71D3, 0x9FFE, 0x71D4, 0xECDC, 0x71D5, 0xD1E0, 0x71D6, 0xA040,
- 0x71D7, 0xA041, 0x71D8, 0xA042, 0x71D9, 0xA043, 0x71DA, 0xA044,
- 0x71DB, 0xA045, 0x71DC, 0xA046, 0x71DD, 0xA047, 0x71DE, 0xA048,
- 0x71DF, 0xA049, 0x71E0, 0xECDB, 0x71E1, 0xA04A, 0x71E2, 0xA04B,
- 0x71E3, 0xA04C, 0x71E4, 0xA04D, 0x71E5, 0xD4EF, 0x71E6, 0xA04E,
- 0x71E7, 0xECDD, 0x71E8, 0xA04F, 0x71E9, 0xA050, 0x71EA, 0xA051,
- 0x71EB, 0xA052, 0x71EC, 0xA053, 0x71ED, 0xA054, 0x71EE, 0xDBC6,
- 0x71EF, 0xA055, 0x71F0, 0xA056, 0x71F1, 0xA057, 0x71F2, 0xA058,
- 0x71F3, 0xA059, 0x71F4, 0xA05A, 0x71F5, 0xA05B, 0x71F6, 0xA05C,
- 0x71F7, 0xA05D, 0x71F8, 0xA05E, 0x71F9, 0xECDE, 0x71FA, 0xA05F,
- 0x71FB, 0xA060, 0x71FC, 0xA061, 0x71FD, 0xA062, 0x71FE, 0xA063,
- 0x71FF, 0xA064, 0x7200, 0xA065, 0x7201, 0xA066, 0x7202, 0xA067,
- 0x7203, 0xA068, 0x7204, 0xA069, 0x7205, 0xA06A, 0x7206, 0xB1AC,
- 0x7207, 0xA06B, 0x7208, 0xA06C, 0x7209, 0xA06D, 0x720A, 0xA06E,
- 0x720B, 0xA06F, 0x720C, 0xA070, 0x720D, 0xA071, 0x720E, 0xA072,
- 0x720F, 0xA073, 0x7210, 0xA074, 0x7211, 0xA075, 0x7212, 0xA076,
- 0x7213, 0xA077, 0x7214, 0xA078, 0x7215, 0xA079, 0x7216, 0xA07A,
- 0x7217, 0xA07B, 0x7218, 0xA07C, 0x7219, 0xA07D, 0x721A, 0xA07E,
- 0x721B, 0xA080, 0x721C, 0xA081, 0x721D, 0xECDF, 0x721E, 0xA082,
- 0x721F, 0xA083, 0x7220, 0xA084, 0x7221, 0xA085, 0x7222, 0xA086,
- 0x7223, 0xA087, 0x7224, 0xA088, 0x7225, 0xA089, 0x7226, 0xA08A,
- 0x7227, 0xA08B, 0x7228, 0xECE0, 0x7229, 0xA08C, 0x722A, 0xD7A6,
- 0x722B, 0xA08D, 0x722C, 0xC5C0, 0x722D, 0xA08E, 0x722E, 0xA08F,
- 0x722F, 0xA090, 0x7230, 0xEBBC, 0x7231, 0xB0AE, 0x7232, 0xA091,
- 0x7233, 0xA092, 0x7234, 0xA093, 0x7235, 0xBEF4, 0x7236, 0xB8B8,
- 0x7237, 0xD2AF, 0x7238, 0xB0D6, 0x7239, 0xB5F9, 0x723A, 0xA094,
- 0x723B, 0xD8B3, 0x723C, 0xA095, 0x723D, 0xCBAC, 0x723E, 0xA096,
- 0x723F, 0xE3DD, 0x7240, 0xA097, 0x7241, 0xA098, 0x7242, 0xA099,
- 0x7243, 0xA09A, 0x7244, 0xA09B, 0x7245, 0xA09C, 0x7246, 0xA09D,
- 0x7247, 0xC6AC, 0x7248, 0xB0E6, 0x7249, 0xA09E, 0x724A, 0xA09F,
- 0x724B, 0xA0A0, 0x724C, 0xC5C6, 0x724D, 0xEBB9, 0x724E, 0xA0A1,
- 0x724F, 0xA0A2, 0x7250, 0xA0A3, 0x7251, 0xA0A4, 0x7252, 0xEBBA,
- 0x7253, 0xA0A5, 0x7254, 0xA0A6, 0x7255, 0xA0A7, 0x7256, 0xEBBB,
- 0x7257, 0xA0A8, 0x7258, 0xA0A9, 0x7259, 0xD1C0, 0x725A, 0xA0AA,
- 0x725B, 0xC5A3, 0x725C, 0xA0AB, 0x725D, 0xEAF2, 0x725E, 0xA0AC,
- 0x725F, 0xC4B2, 0x7260, 0xA0AD, 0x7261, 0xC4B5, 0x7262, 0xC0CE,
- 0x7263, 0xA0AE, 0x7264, 0xA0AF, 0x7265, 0xA0B0, 0x7266, 0xEAF3,
- 0x7267, 0xC4C1, 0x7268, 0xA0B1, 0x7269, 0xCEEF, 0x726A, 0xA0B2,
- 0x726B, 0xA0B3, 0x726C, 0xA0B4, 0x726D, 0xA0B5, 0x726E, 0xEAF0,
- 0x726F, 0xEAF4, 0x7270, 0xA0B6, 0x7271, 0xA0B7, 0x7272, 0xC9FC,
- 0x7273, 0xA0B8, 0x7274, 0xA0B9, 0x7275, 0xC7A3, 0x7276, 0xA0BA,
- 0x7277, 0xA0BB, 0x7278, 0xA0BC, 0x7279, 0xCCD8, 0x727A, 0xCEFE,
- 0x727B, 0xA0BD, 0x727C, 0xA0BE, 0x727D, 0xA0BF, 0x727E, 0xEAF5,
- 0x727F, 0xEAF6, 0x7280, 0xCFAC, 0x7281, 0xC0E7, 0x7282, 0xA0C0,
- 0x7283, 0xA0C1, 0x7284, 0xEAF7, 0x7285, 0xA0C2, 0x7286, 0xA0C3,
- 0x7287, 0xA0C4, 0x7288, 0xA0C5, 0x7289, 0xA0C6, 0x728A, 0xB6BF,
- 0x728B, 0xEAF8, 0x728C, 0xA0C7, 0x728D, 0xEAF9, 0x728E, 0xA0C8,
- 0x728F, 0xEAFA, 0x7290, 0xA0C9, 0x7291, 0xA0CA, 0x7292, 0xEAFB,
- 0x7293, 0xA0CB, 0x7294, 0xA0CC, 0x7295, 0xA0CD, 0x7296, 0xA0CE,
- 0x7297, 0xA0CF, 0x7298, 0xA0D0, 0x7299, 0xA0D1, 0x729A, 0xA0D2,
- 0x729B, 0xA0D3, 0x729C, 0xA0D4, 0x729D, 0xA0D5, 0x729E, 0xA0D6,
- 0x729F, 0xEAF1, 0x72A0, 0xA0D7, 0x72A1, 0xA0D8, 0x72A2, 0xA0D9,
- 0x72A3, 0xA0DA, 0x72A4, 0xA0DB, 0x72A5, 0xA0DC, 0x72A6, 0xA0DD,
- 0x72A7, 0xA0DE, 0x72A8, 0xA0DF, 0x72A9, 0xA0E0, 0x72AA, 0xA0E1,
- 0x72AB, 0xA0E2, 0x72AC, 0xC8AE, 0x72AD, 0xE1EB, 0x72AE, 0xA0E3,
- 0x72AF, 0xB7B8, 0x72B0, 0xE1EC, 0x72B1, 0xA0E4, 0x72B2, 0xA0E5,
- 0x72B3, 0xA0E6, 0x72B4, 0xE1ED, 0x72B5, 0xA0E7, 0x72B6, 0xD7B4,
- 0x72B7, 0xE1EE, 0x72B8, 0xE1EF, 0x72B9, 0xD3CC, 0x72BA, 0xA0E8,
- 0x72BB, 0xA0E9, 0x72BC, 0xA0EA, 0x72BD, 0xA0EB, 0x72BE, 0xA0EC,
- 0x72BF, 0xA0ED, 0x72C0, 0xA0EE, 0x72C1, 0xE1F1, 0x72C2, 0xBFF1,
- 0x72C3, 0xE1F0, 0x72C4, 0xB5D2, 0x72C5, 0xA0EF, 0x72C6, 0xA0F0,
- 0x72C7, 0xA0F1, 0x72C8, 0xB1B7, 0x72C9, 0xA0F2, 0x72CA, 0xA0F3,
- 0x72CB, 0xA0F4, 0x72CC, 0xA0F5, 0x72CD, 0xE1F3, 0x72CE, 0xE1F2,
- 0x72CF, 0xA0F6, 0x72D0, 0xBAFC, 0x72D1, 0xA0F7, 0x72D2, 0xE1F4,
- 0x72D3, 0xA0F8, 0x72D4, 0xA0F9, 0x72D5, 0xA0FA, 0x72D6, 0xA0FB,
- 0x72D7, 0xB9B7, 0x72D8, 0xA0FC, 0x72D9, 0xBED1, 0x72DA, 0xA0FD,
- 0x72DB, 0xA0FE, 0x72DC, 0xAA40, 0x72DD, 0xAA41, 0x72DE, 0xC4FC,
- 0x72DF, 0xAA42, 0x72E0, 0xBADD, 0x72E1, 0xBDC6, 0x72E2, 0xAA43,
- 0x72E3, 0xAA44, 0x72E4, 0xAA45, 0x72E5, 0xAA46, 0x72E6, 0xAA47,
- 0x72E7, 0xAA48, 0x72E8, 0xE1F5, 0x72E9, 0xE1F7, 0x72EA, 0xAA49,
- 0x72EB, 0xAA4A, 0x72EC, 0xB6C0, 0x72ED, 0xCFC1, 0x72EE, 0xCAA8,
- 0x72EF, 0xE1F6, 0x72F0, 0xD5F8, 0x72F1, 0xD3FC, 0x72F2, 0xE1F8,
- 0x72F3, 0xE1FC, 0x72F4, 0xE1F9, 0x72F5, 0xAA4B, 0x72F6, 0xAA4C,
- 0x72F7, 0xE1FA, 0x72F8, 0xC0EA, 0x72F9, 0xAA4D, 0x72FA, 0xE1FE,
- 0x72FB, 0xE2A1, 0x72FC, 0xC0C7, 0x72FD, 0xAA4E, 0x72FE, 0xAA4F,
- 0x72FF, 0xAA50, 0x7300, 0xAA51, 0x7301, 0xE1FB, 0x7302, 0xAA52,
- 0x7303, 0xE1FD, 0x7304, 0xAA53, 0x7305, 0xAA54, 0x7306, 0xAA55,
- 0x7307, 0xAA56, 0x7308, 0xAA57, 0x7309, 0xAA58, 0x730A, 0xE2A5,
- 0x730B, 0xAA59, 0x730C, 0xAA5A, 0x730D, 0xAA5B, 0x730E, 0xC1D4,
- 0x730F, 0xAA5C, 0x7310, 0xAA5D, 0x7311, 0xAA5E, 0x7312, 0xAA5F,
- 0x7313, 0xE2A3, 0x7314, 0xAA60, 0x7315, 0xE2A8, 0x7316, 0xB2FE,
- 0x7317, 0xE2A2, 0x7318, 0xAA61, 0x7319, 0xAA62, 0x731A, 0xAA63,
- 0x731B, 0xC3CD, 0x731C, 0xB2C2, 0x731D, 0xE2A7, 0x731E, 0xE2A6,
- 0x731F, 0xAA64, 0x7320, 0xAA65, 0x7321, 0xE2A4, 0x7322, 0xE2A9,
- 0x7323, 0xAA66, 0x7324, 0xAA67, 0x7325, 0xE2AB, 0x7326, 0xAA68,
- 0x7327, 0xAA69, 0x7328, 0xAA6A, 0x7329, 0xD0C9, 0x732A, 0xD6ED,
- 0x732B, 0xC3A8, 0x732C, 0xE2AC, 0x732D, 0xAA6B, 0x732E, 0xCFD7,
- 0x732F, 0xAA6C, 0x7330, 0xAA6D, 0x7331, 0xE2AE, 0x7332, 0xAA6E,
- 0x7333, 0xAA6F, 0x7334, 0xBAEF, 0x7335, 0xAA70, 0x7336, 0xAA71,
- 0x7337, 0xE9E0, 0x7338, 0xE2AD, 0x7339, 0xE2AA, 0x733A, 0xAA72,
- 0x733B, 0xAA73, 0x733C, 0xAA74, 0x733D, 0xAA75, 0x733E, 0xBBAB,
- 0x733F, 0xD4B3, 0x7340, 0xAA76, 0x7341, 0xAA77, 0x7342, 0xAA78,
- 0x7343, 0xAA79, 0x7344, 0xAA7A, 0x7345, 0xAA7B, 0x7346, 0xAA7C,
- 0x7347, 0xAA7D, 0x7348, 0xAA7E, 0x7349, 0xAA80, 0x734A, 0xAA81,
- 0x734B, 0xAA82, 0x734C, 0xAA83, 0x734D, 0xE2B0, 0x734E, 0xAA84,
- 0x734F, 0xAA85, 0x7350, 0xE2AF, 0x7351, 0xAA86, 0x7352, 0xE9E1,
- 0x7353, 0xAA87, 0x7354, 0xAA88, 0x7355, 0xAA89, 0x7356, 0xAA8A,
- 0x7357, 0xE2B1, 0x7358, 0xAA8B, 0x7359, 0xAA8C, 0x735A, 0xAA8D,
- 0x735B, 0xAA8E, 0x735C, 0xAA8F, 0x735D, 0xAA90, 0x735E, 0xAA91,
- 0x735F, 0xAA92, 0x7360, 0xE2B2, 0x7361, 0xAA93, 0x7362, 0xAA94,
- 0x7363, 0xAA95, 0x7364, 0xAA96, 0x7365, 0xAA97, 0x7366, 0xAA98,
- 0x7367, 0xAA99, 0x7368, 0xAA9A, 0x7369, 0xAA9B, 0x736A, 0xAA9C,
- 0x736B, 0xAA9D, 0x736C, 0xE2B3, 0x736D, 0xCCA1, 0x736E, 0xAA9E,
- 0x736F, 0xE2B4, 0x7370, 0xAA9F, 0x7371, 0xAAA0, 0x7372, 0xAB40,
- 0x7373, 0xAB41, 0x7374, 0xAB42, 0x7375, 0xAB43, 0x7376, 0xAB44,
- 0x7377, 0xAB45, 0x7378, 0xAB46, 0x7379, 0xAB47, 0x737A, 0xAB48,
- 0x737B, 0xAB49, 0x737C, 0xAB4A, 0x737D, 0xAB4B, 0x737E, 0xE2B5,
- 0x737F, 0xAB4C, 0x7380, 0xAB4D, 0x7381, 0xAB4E, 0x7382, 0xAB4F,
- 0x7383, 0xAB50, 0x7384, 0xD0FE, 0x7385, 0xAB51, 0x7386, 0xAB52,
- 0x7387, 0xC2CA, 0x7388, 0xAB53, 0x7389, 0xD3F1, 0x738A, 0xAB54,
- 0x738B, 0xCDF5, 0x738C, 0xAB55, 0x738D, 0xAB56, 0x738E, 0xE7E0,
- 0x738F, 0xAB57, 0x7390, 0xAB58, 0x7391, 0xE7E1, 0x7392, 0xAB59,
- 0x7393, 0xAB5A, 0x7394, 0xAB5B, 0x7395, 0xAB5C, 0x7396, 0xBEC1,
- 0x7397, 0xAB5D, 0x7398, 0xAB5E, 0x7399, 0xAB5F, 0x739A, 0xAB60,
- 0x739B, 0xC2EA, 0x739C, 0xAB61, 0x739D, 0xAB62, 0x739E, 0xAB63,
- 0x739F, 0xE7E4, 0x73A0, 0xAB64, 0x73A1, 0xAB65, 0x73A2, 0xE7E3,
- 0x73A3, 0xAB66, 0x73A4, 0xAB67, 0x73A5, 0xAB68, 0x73A6, 0xAB69,
- 0x73A7, 0xAB6A, 0x73A8, 0xAB6B, 0x73A9, 0xCDE6, 0x73AA, 0xAB6C,
- 0x73AB, 0xC3B5, 0x73AC, 0xAB6D, 0x73AD, 0xAB6E, 0x73AE, 0xE7E2,
- 0x73AF, 0xBBB7, 0x73B0, 0xCFD6, 0x73B1, 0xAB6F, 0x73B2, 0xC1E1,
- 0x73B3, 0xE7E9, 0x73B4, 0xAB70, 0x73B5, 0xAB71, 0x73B6, 0xAB72,
- 0x73B7, 0xE7E8, 0x73B8, 0xAB73, 0x73B9, 0xAB74, 0x73BA, 0xE7F4,
- 0x73BB, 0xB2A3, 0x73BC, 0xAB75, 0x73BD, 0xAB76, 0x73BE, 0xAB77,
- 0x73BF, 0xAB78, 0x73C0, 0xE7EA, 0x73C1, 0xAB79, 0x73C2, 0xE7E6,
- 0x73C3, 0xAB7A, 0x73C4, 0xAB7B, 0x73C5, 0xAB7C, 0x73C6, 0xAB7D,
- 0x73C7, 0xAB7E, 0x73C8, 0xE7EC, 0x73C9, 0xE7EB, 0x73CA, 0xC9BA,
- 0x73CB, 0xAB80, 0x73CC, 0xAB81, 0x73CD, 0xD5E4, 0x73CE, 0xAB82,
- 0x73CF, 0xE7E5, 0x73D0, 0xB7A9, 0x73D1, 0xE7E7, 0x73D2, 0xAB83,
- 0x73D3, 0xAB84, 0x73D4, 0xAB85, 0x73D5, 0xAB86, 0x73D6, 0xAB87,
- 0x73D7, 0xAB88, 0x73D8, 0xAB89, 0x73D9, 0xE7EE, 0x73DA, 0xAB8A,
- 0x73DB, 0xAB8B, 0x73DC, 0xAB8C, 0x73DD, 0xAB8D, 0x73DE, 0xE7F3,
- 0x73DF, 0xAB8E, 0x73E0, 0xD6E9, 0x73E1, 0xAB8F, 0x73E2, 0xAB90,
- 0x73E3, 0xAB91, 0x73E4, 0xAB92, 0x73E5, 0xE7ED, 0x73E6, 0xAB93,
- 0x73E7, 0xE7F2, 0x73E8, 0xAB94, 0x73E9, 0xE7F1, 0x73EA, 0xAB95,
- 0x73EB, 0xAB96, 0x73EC, 0xAB97, 0x73ED, 0xB0E0, 0x73EE, 0xAB98,
- 0x73EF, 0xAB99, 0x73F0, 0xAB9A, 0x73F1, 0xAB9B, 0x73F2, 0xE7F5,
- 0x73F3, 0xAB9C, 0x73F4, 0xAB9D, 0x73F5, 0xAB9E, 0x73F6, 0xAB9F,
- 0x73F7, 0xABA0, 0x73F8, 0xAC40, 0x73F9, 0xAC41, 0x73FA, 0xAC42,
- 0x73FB, 0xAC43, 0x73FC, 0xAC44, 0x73FD, 0xAC45, 0x73FE, 0xAC46,
- 0x73FF, 0xAC47, 0x7400, 0xAC48, 0x7401, 0xAC49, 0x7402, 0xAC4A,
- 0x7403, 0xC7F2, 0x7404, 0xAC4B, 0x7405, 0xC0C5, 0x7406, 0xC0ED,
- 0x7407, 0xAC4C, 0x7408, 0xAC4D, 0x7409, 0xC1F0, 0x740A, 0xE7F0,
- 0x740B, 0xAC4E, 0x740C, 0xAC4F, 0x740D, 0xAC50, 0x740E, 0xAC51,
- 0x740F, 0xE7F6, 0x7410, 0xCBF6, 0x7411, 0xAC52, 0x7412, 0xAC53,
- 0x7413, 0xAC54, 0x7414, 0xAC55, 0x7415, 0xAC56, 0x7416, 0xAC57,
- 0x7417, 0xAC58, 0x7418, 0xAC59, 0x7419, 0xAC5A, 0x741A, 0xE8A2,
- 0x741B, 0xE8A1, 0x741C, 0xAC5B, 0x741D, 0xAC5C, 0x741E, 0xAC5D,
- 0x741F, 0xAC5E, 0x7420, 0xAC5F, 0x7421, 0xAC60, 0x7422, 0xD7C1,
- 0x7423, 0xAC61, 0x7424, 0xAC62, 0x7425, 0xE7FA, 0x7426, 0xE7F9,
- 0x7427, 0xAC63, 0x7428, 0xE7FB, 0x7429, 0xAC64, 0x742A, 0xE7F7,
- 0x742B, 0xAC65, 0x742C, 0xE7FE, 0x742D, 0xAC66, 0x742E, 0xE7FD,
- 0x742F, 0xAC67, 0x7430, 0xE7FC, 0x7431, 0xAC68, 0x7432, 0xAC69,
- 0x7433, 0xC1D5, 0x7434, 0xC7D9, 0x7435, 0xC5FD, 0x7436, 0xC5C3,
- 0x7437, 0xAC6A, 0x7438, 0xAC6B, 0x7439, 0xAC6C, 0x743A, 0xAC6D,
- 0x743B, 0xAC6E, 0x743C, 0xC7ED, 0x743D, 0xAC6F, 0x743E, 0xAC70,
- 0x743F, 0xAC71, 0x7440, 0xAC72, 0x7441, 0xE8A3, 0x7442, 0xAC73,
- 0x7443, 0xAC74, 0x7444, 0xAC75, 0x7445, 0xAC76, 0x7446, 0xAC77,
- 0x7447, 0xAC78, 0x7448, 0xAC79, 0x7449, 0xAC7A, 0x744A, 0xAC7B,
- 0x744B, 0xAC7C, 0x744C, 0xAC7D, 0x744D, 0xAC7E, 0x744E, 0xAC80,
- 0x744F, 0xAC81, 0x7450, 0xAC82, 0x7451, 0xAC83, 0x7452, 0xAC84,
- 0x7453, 0xAC85, 0x7454, 0xAC86, 0x7455, 0xE8A6, 0x7456, 0xAC87,
- 0x7457, 0xE8A5, 0x7458, 0xAC88, 0x7459, 0xE8A7, 0x745A, 0xBAF7,
- 0x745B, 0xE7F8, 0x745C, 0xE8A4, 0x745D, 0xAC89, 0x745E, 0xC8F0,
- 0x745F, 0xC9AA, 0x7460, 0xAC8A, 0x7461, 0xAC8B, 0x7462, 0xAC8C,
- 0x7463, 0xAC8D, 0x7464, 0xAC8E, 0x7465, 0xAC8F, 0x7466, 0xAC90,
- 0x7467, 0xAC91, 0x7468, 0xAC92, 0x7469, 0xAC93, 0x746A, 0xAC94,
- 0x746B, 0xAC95, 0x746C, 0xAC96, 0x746D, 0xE8A9, 0x746E, 0xAC97,
- 0x746F, 0xAC98, 0x7470, 0xB9E5, 0x7471, 0xAC99, 0x7472, 0xAC9A,
- 0x7473, 0xAC9B, 0x7474, 0xAC9C, 0x7475, 0xAC9D, 0x7476, 0xD1FE,
- 0x7477, 0xE8A8, 0x7478, 0xAC9E, 0x7479, 0xAC9F, 0x747A, 0xACA0,
- 0x747B, 0xAD40, 0x747C, 0xAD41, 0x747D, 0xAD42, 0x747E, 0xE8AA,
- 0x747F, 0xAD43, 0x7480, 0xE8AD, 0x7481, 0xE8AE, 0x7482, 0xAD44,
- 0x7483, 0xC1A7, 0x7484, 0xAD45, 0x7485, 0xAD46, 0x7486, 0xAD47,
- 0x7487, 0xE8AF, 0x7488, 0xAD48, 0x7489, 0xAD49, 0x748A, 0xAD4A,
- 0x748B, 0xE8B0, 0x748C, 0xAD4B, 0x748D, 0xAD4C, 0x748E, 0xE8AC,
- 0x748F, 0xAD4D, 0x7490, 0xE8B4, 0x7491, 0xAD4E, 0x7492, 0xAD4F,
- 0x7493, 0xAD50, 0x7494, 0xAD51, 0x7495, 0xAD52, 0x7496, 0xAD53,
- 0x7497, 0xAD54, 0x7498, 0xAD55, 0x7499, 0xAD56, 0x749A, 0xAD57,
- 0x749B, 0xAD58, 0x749C, 0xE8AB, 0x749D, 0xAD59, 0x749E, 0xE8B1,
- 0x749F, 0xAD5A, 0x74A0, 0xAD5B, 0x74A1, 0xAD5C, 0x74A2, 0xAD5D,
- 0x74A3, 0xAD5E, 0x74A4, 0xAD5F, 0x74A5, 0xAD60, 0x74A6, 0xAD61,
- 0x74A7, 0xE8B5, 0x74A8, 0xE8B2, 0x74A9, 0xE8B3, 0x74AA, 0xAD62,
- 0x74AB, 0xAD63, 0x74AC, 0xAD64, 0x74AD, 0xAD65, 0x74AE, 0xAD66,
- 0x74AF, 0xAD67, 0x74B0, 0xAD68, 0x74B1, 0xAD69, 0x74B2, 0xAD6A,
- 0x74B3, 0xAD6B, 0x74B4, 0xAD6C, 0x74B5, 0xAD6D, 0x74B6, 0xAD6E,
- 0x74B7, 0xAD6F, 0x74B8, 0xAD70, 0x74B9, 0xAD71, 0x74BA, 0xE8B7,
- 0x74BB, 0xAD72, 0x74BC, 0xAD73, 0x74BD, 0xAD74, 0x74BE, 0xAD75,
- 0x74BF, 0xAD76, 0x74C0, 0xAD77, 0x74C1, 0xAD78, 0x74C2, 0xAD79,
- 0x74C3, 0xAD7A, 0x74C4, 0xAD7B, 0x74C5, 0xAD7C, 0x74C6, 0xAD7D,
- 0x74C7, 0xAD7E, 0x74C8, 0xAD80, 0x74C9, 0xAD81, 0x74CA, 0xAD82,
- 0x74CB, 0xAD83, 0x74CC, 0xAD84, 0x74CD, 0xAD85, 0x74CE, 0xAD86,
- 0x74CF, 0xAD87, 0x74D0, 0xAD88, 0x74D1, 0xAD89, 0x74D2, 0xE8B6,
- 0x74D3, 0xAD8A, 0x74D4, 0xAD8B, 0x74D5, 0xAD8C, 0x74D6, 0xAD8D,
- 0x74D7, 0xAD8E, 0x74D8, 0xAD8F, 0x74D9, 0xAD90, 0x74DA, 0xAD91,
- 0x74DB, 0xAD92, 0x74DC, 0xB9CF, 0x74DD, 0xAD93, 0x74DE, 0xF0AC,
- 0x74DF, 0xAD94, 0x74E0, 0xF0AD, 0x74E1, 0xAD95, 0x74E2, 0xC6B0,
- 0x74E3, 0xB0EA, 0x74E4, 0xC8BF, 0x74E5, 0xAD96, 0x74E6, 0xCDDF,
- 0x74E7, 0xAD97, 0x74E8, 0xAD98, 0x74E9, 0xAD99, 0x74EA, 0xAD9A,
- 0x74EB, 0xAD9B, 0x74EC, 0xAD9C, 0x74ED, 0xAD9D, 0x74EE, 0xCECD,
- 0x74EF, 0xEAB1, 0x74F0, 0xAD9E, 0x74F1, 0xAD9F, 0x74F2, 0xADA0,
- 0x74F3, 0xAE40, 0x74F4, 0xEAB2, 0x74F5, 0xAE41, 0x74F6, 0xC6BF,
- 0x74F7, 0xB4C9, 0x74F8, 0xAE42, 0x74F9, 0xAE43, 0x74FA, 0xAE44,
- 0x74FB, 0xAE45, 0x74FC, 0xAE46, 0x74FD, 0xAE47, 0x74FE, 0xAE48,
- 0x74FF, 0xEAB3, 0x7500, 0xAE49, 0x7501, 0xAE4A, 0x7502, 0xAE4B,
- 0x7503, 0xAE4C, 0x7504, 0xD5E7, 0x7505, 0xAE4D, 0x7506, 0xAE4E,
- 0x7507, 0xAE4F, 0x7508, 0xAE50, 0x7509, 0xAE51, 0x750A, 0xAE52,
- 0x750B, 0xAE53, 0x750C, 0xAE54, 0x750D, 0xDDF9, 0x750E, 0xAE55,
- 0x750F, 0xEAB4, 0x7510, 0xAE56, 0x7511, 0xEAB5, 0x7512, 0xAE57,
- 0x7513, 0xEAB6, 0x7514, 0xAE58, 0x7515, 0xAE59, 0x7516, 0xAE5A,
- 0x7517, 0xAE5B, 0x7518, 0xB8CA, 0x7519, 0xDFB0, 0x751A, 0xC9F5,
- 0x751B, 0xAE5C, 0x751C, 0xCCF0, 0x751D, 0xAE5D, 0x751E, 0xAE5E,
- 0x751F, 0xC9FA, 0x7520, 0xAE5F, 0x7521, 0xAE60, 0x7522, 0xAE61,
- 0x7523, 0xAE62, 0x7524, 0xAE63, 0x7525, 0xC9FB, 0x7526, 0xAE64,
- 0x7527, 0xAE65, 0x7528, 0xD3C3, 0x7529, 0xCBA6, 0x752A, 0xAE66,
- 0x752B, 0xB8A6, 0x752C, 0xF0AE, 0x752D, 0xB1C2, 0x752E, 0xAE67,
- 0x752F, 0xE5B8, 0x7530, 0xCCEF, 0x7531, 0xD3C9, 0x7532, 0xBCD7,
- 0x7533, 0xC9EA, 0x7534, 0xAE68, 0x7535, 0xB5E7, 0x7536, 0xAE69,
- 0x7537, 0xC4D0, 0x7538, 0xB5E9, 0x7539, 0xAE6A, 0x753A, 0xEEAE,
- 0x753B, 0xBBAD, 0x753C, 0xAE6B, 0x753D, 0xAE6C, 0x753E, 0xE7DE,
- 0x753F, 0xAE6D, 0x7540, 0xEEAF, 0x7541, 0xAE6E, 0x7542, 0xAE6F,
- 0x7543, 0xAE70, 0x7544, 0xAE71, 0x7545, 0xB3A9, 0x7546, 0xAE72,
- 0x7547, 0xAE73, 0x7548, 0xEEB2, 0x7549, 0xAE74, 0x754A, 0xAE75,
- 0x754B, 0xEEB1, 0x754C, 0xBDE7, 0x754D, 0xAE76, 0x754E, 0xEEB0,
- 0x754F, 0xCEB7, 0x7550, 0xAE77, 0x7551, 0xAE78, 0x7552, 0xAE79,
- 0x7553, 0xAE7A, 0x7554, 0xC5CF, 0x7555, 0xAE7B, 0x7556, 0xAE7C,
- 0x7557, 0xAE7D, 0x7558, 0xAE7E, 0x7559, 0xC1F4, 0x755A, 0xDBCE,
- 0x755B, 0xEEB3, 0x755C, 0xD0F3, 0x755D, 0xAE80, 0x755E, 0xAE81,
- 0x755F, 0xAE82, 0x7560, 0xAE83, 0x7561, 0xAE84, 0x7562, 0xAE85,
- 0x7563, 0xAE86, 0x7564, 0xAE87, 0x7565, 0xC2D4, 0x7566, 0xC6E8,
- 0x7567, 0xAE88, 0x7568, 0xAE89, 0x7569, 0xAE8A, 0x756A, 0xB7AC,
- 0x756B, 0xAE8B, 0x756C, 0xAE8C, 0x756D, 0xAE8D, 0x756E, 0xAE8E,
- 0x756F, 0xAE8F, 0x7570, 0xAE90, 0x7571, 0xAE91, 0x7572, 0xEEB4,
- 0x7573, 0xAE92, 0x7574, 0xB3EB, 0x7575, 0xAE93, 0x7576, 0xAE94,
- 0x7577, 0xAE95, 0x7578, 0xBBFB, 0x7579, 0xEEB5, 0x757A, 0xAE96,
- 0x757B, 0xAE97, 0x757C, 0xAE98, 0x757D, 0xAE99, 0x757E, 0xAE9A,
- 0x757F, 0xE7DC, 0x7580, 0xAE9B, 0x7581, 0xAE9C, 0x7582, 0xAE9D,
- 0x7583, 0xEEB6, 0x7584, 0xAE9E, 0x7585, 0xAE9F, 0x7586, 0xBDAE,
- 0x7587, 0xAEA0, 0x7588, 0xAF40, 0x7589, 0xAF41, 0x758A, 0xAF42,
- 0x758B, 0xF1E2, 0x758C, 0xAF43, 0x758D, 0xAF44, 0x758E, 0xAF45,
- 0x758F, 0xCAE8, 0x7590, 0xAF46, 0x7591, 0xD2C9, 0x7592, 0xF0DA,
- 0x7593, 0xAF47, 0x7594, 0xF0DB, 0x7595, 0xAF48, 0x7596, 0xF0DC,
- 0x7597, 0xC1C6, 0x7598, 0xAF49, 0x7599, 0xB8ED, 0x759A, 0xBECE,
- 0x759B, 0xAF4A, 0x759C, 0xAF4B, 0x759D, 0xF0DE, 0x759E, 0xAF4C,
- 0x759F, 0xC5B1, 0x75A0, 0xF0DD, 0x75A1, 0xD1F1, 0x75A2, 0xAF4D,
- 0x75A3, 0xF0E0, 0x75A4, 0xB0CC, 0x75A5, 0xBDEA, 0x75A6, 0xAF4E,
- 0x75A7, 0xAF4F, 0x75A8, 0xAF50, 0x75A9, 0xAF51, 0x75AA, 0xAF52,
- 0x75AB, 0xD2DF, 0x75AC, 0xF0DF, 0x75AD, 0xAF53, 0x75AE, 0xB4AF,
- 0x75AF, 0xB7E8, 0x75B0, 0xF0E6, 0x75B1, 0xF0E5, 0x75B2, 0xC6A3,
- 0x75B3, 0xF0E1, 0x75B4, 0xF0E2, 0x75B5, 0xB4C3, 0x75B6, 0xAF54,
- 0x75B7, 0xAF55, 0x75B8, 0xF0E3, 0x75B9, 0xD5EE, 0x75BA, 0xAF56,
- 0x75BB, 0xAF57, 0x75BC, 0xCCDB, 0x75BD, 0xBED2, 0x75BE, 0xBCB2,
- 0x75BF, 0xAF58, 0x75C0, 0xAF59, 0x75C1, 0xAF5A, 0x75C2, 0xF0E8,
- 0x75C3, 0xF0E7, 0x75C4, 0xF0E4, 0x75C5, 0xB2A1, 0x75C6, 0xAF5B,
- 0x75C7, 0xD6A2, 0x75C8, 0xD3B8, 0x75C9, 0xBEB7, 0x75CA, 0xC8AC,
- 0x75CB, 0xAF5C, 0x75CC, 0xAF5D, 0x75CD, 0xF0EA, 0x75CE, 0xAF5E,
- 0x75CF, 0xAF5F, 0x75D0, 0xAF60, 0x75D1, 0xAF61, 0x75D2, 0xD1F7,
- 0x75D3, 0xAF62, 0x75D4, 0xD6CC, 0x75D5, 0xBADB, 0x75D6, 0xF0E9,
- 0x75D7, 0xAF63, 0x75D8, 0xB6BB, 0x75D9, 0xAF64, 0x75DA, 0xAF65,
- 0x75DB, 0xCDB4, 0x75DC, 0xAF66, 0x75DD, 0xAF67, 0x75DE, 0xC6A6,
- 0x75DF, 0xAF68, 0x75E0, 0xAF69, 0x75E1, 0xAF6A, 0x75E2, 0xC1A1,
- 0x75E3, 0xF0EB, 0x75E4, 0xF0EE, 0x75E5, 0xAF6B, 0x75E6, 0xF0ED,
- 0x75E7, 0xF0F0, 0x75E8, 0xF0EC, 0x75E9, 0xAF6C, 0x75EA, 0xBBBE,
- 0x75EB, 0xF0EF, 0x75EC, 0xAF6D, 0x75ED, 0xAF6E, 0x75EE, 0xAF6F,
- 0x75EF, 0xAF70, 0x75F0, 0xCCB5, 0x75F1, 0xF0F2, 0x75F2, 0xAF71,
- 0x75F3, 0xAF72, 0x75F4, 0xB3D5, 0x75F5, 0xAF73, 0x75F6, 0xAF74,
- 0x75F7, 0xAF75, 0x75F8, 0xAF76, 0x75F9, 0xB1D4, 0x75FA, 0xAF77,
- 0x75FB, 0xAF78, 0x75FC, 0xF0F3, 0x75FD, 0xAF79, 0x75FE, 0xAF7A,
- 0x75FF, 0xF0F4, 0x7600, 0xF0F6, 0x7601, 0xB4E1, 0x7602, 0xAF7B,
- 0x7603, 0xF0F1, 0x7604, 0xAF7C, 0x7605, 0xF0F7, 0x7606, 0xAF7D,
- 0x7607, 0xAF7E, 0x7608, 0xAF80, 0x7609, 0xAF81, 0x760A, 0xF0FA,
- 0x760B, 0xAF82, 0x760C, 0xF0F8, 0x760D, 0xAF83, 0x760E, 0xAF84,
- 0x760F, 0xAF85, 0x7610, 0xF0F5, 0x7611, 0xAF86, 0x7612, 0xAF87,
- 0x7613, 0xAF88, 0x7614, 0xAF89, 0x7615, 0xF0FD, 0x7616, 0xAF8A,
- 0x7617, 0xF0F9, 0x7618, 0xF0FC, 0x7619, 0xF0FE, 0x761A, 0xAF8B,
- 0x761B, 0xF1A1, 0x761C, 0xAF8C, 0x761D, 0xAF8D, 0x761E, 0xAF8E,
- 0x761F, 0xCEC1, 0x7620, 0xF1A4, 0x7621, 0xAF8F, 0x7622, 0xF1A3,
- 0x7623, 0xAF90, 0x7624, 0xC1F6, 0x7625, 0xF0FB, 0x7626, 0xCADD,
- 0x7627, 0xAF91, 0x7628, 0xAF92, 0x7629, 0xB4F1, 0x762A, 0xB1F1,
- 0x762B, 0xCCB1, 0x762C, 0xAF93, 0x762D, 0xF1A6, 0x762E, 0xAF94,
- 0x762F, 0xAF95, 0x7630, 0xF1A7, 0x7631, 0xAF96, 0x7632, 0xAF97,
- 0x7633, 0xF1AC, 0x7634, 0xD5CE, 0x7635, 0xF1A9, 0x7636, 0xAF98,
- 0x7637, 0xAF99, 0x7638, 0xC8B3, 0x7639, 0xAF9A, 0x763A, 0xAF9B,
- 0x763B, 0xAF9C, 0x763C, 0xF1A2, 0x763D, 0xAF9D, 0x763E, 0xF1AB,
- 0x763F, 0xF1A8, 0x7640, 0xF1A5, 0x7641, 0xAF9E, 0x7642, 0xAF9F,
- 0x7643, 0xF1AA, 0x7644, 0xAFA0, 0x7645, 0xB040, 0x7646, 0xB041,
- 0x7647, 0xB042, 0x7648, 0xB043, 0x7649, 0xB044, 0x764A, 0xB045,
- 0x764B, 0xB046, 0x764C, 0xB0A9, 0x764D, 0xF1AD, 0x764E, 0xB047,
- 0x764F, 0xB048, 0x7650, 0xB049, 0x7651, 0xB04A, 0x7652, 0xB04B,
- 0x7653, 0xB04C, 0x7654, 0xF1AF, 0x7655, 0xB04D, 0x7656, 0xF1B1,
- 0x7657, 0xB04E, 0x7658, 0xB04F, 0x7659, 0xB050, 0x765A, 0xB051,
- 0x765B, 0xB052, 0x765C, 0xF1B0, 0x765D, 0xB053, 0x765E, 0xF1AE,
- 0x765F, 0xB054, 0x7660, 0xB055, 0x7661, 0xB056, 0x7662, 0xB057,
- 0x7663, 0xD1A2, 0x7664, 0xB058, 0x7665, 0xB059, 0x7666, 0xB05A,
- 0x7667, 0xB05B, 0x7668, 0xB05C, 0x7669, 0xB05D, 0x766A, 0xB05E,
- 0x766B, 0xF1B2, 0x766C, 0xB05F, 0x766D, 0xB060, 0x766E, 0xB061,
- 0x766F, 0xF1B3, 0x7670, 0xB062, 0x7671, 0xB063, 0x7672, 0xB064,
- 0x7673, 0xB065, 0x7674, 0xB066, 0x7675, 0xB067, 0x7676, 0xB068,
- 0x7677, 0xB069, 0x7678, 0xB9EF, 0x7679, 0xB06A, 0x767A, 0xB06B,
- 0x767B, 0xB5C7, 0x767C, 0xB06C, 0x767D, 0xB0D7, 0x767E, 0xB0D9,
- 0x767F, 0xB06D, 0x7680, 0xB06E, 0x7681, 0xB06F, 0x7682, 0xD4ED,
- 0x7683, 0xB070, 0x7684, 0xB5C4, 0x7685, 0xB071, 0x7686, 0xBDD4,
- 0x7687, 0xBBCA, 0x7688, 0xF0A7, 0x7689, 0xB072, 0x768A, 0xB073,
- 0x768B, 0xB8DE, 0x768C, 0xB074, 0x768D, 0xB075, 0x768E, 0xF0A8,
- 0x768F, 0xB076, 0x7690, 0xB077, 0x7691, 0xB0A8, 0x7692, 0xB078,
- 0x7693, 0xF0A9, 0x7694, 0xB079, 0x7695, 0xB07A, 0x7696, 0xCDEE,
- 0x7697, 0xB07B, 0x7698, 0xB07C, 0x7699, 0xF0AA, 0x769A, 0xB07D,
- 0x769B, 0xB07E, 0x769C, 0xB080, 0x769D, 0xB081, 0x769E, 0xB082,
- 0x769F, 0xB083, 0x76A0, 0xB084, 0x76A1, 0xB085, 0x76A2, 0xB086,
- 0x76A3, 0xB087, 0x76A4, 0xF0AB, 0x76A5, 0xB088, 0x76A6, 0xB089,
- 0x76A7, 0xB08A, 0x76A8, 0xB08B, 0x76A9, 0xB08C, 0x76AA, 0xB08D,
- 0x76AB, 0xB08E, 0x76AC, 0xB08F, 0x76AD, 0xB090, 0x76AE, 0xC6A4,
- 0x76AF, 0xB091, 0x76B0, 0xB092, 0x76B1, 0xD6E5, 0x76B2, 0xF1E4,
- 0x76B3, 0xB093, 0x76B4, 0xF1E5, 0x76B5, 0xB094, 0x76B6, 0xB095,
- 0x76B7, 0xB096, 0x76B8, 0xB097, 0x76B9, 0xB098, 0x76BA, 0xB099,
- 0x76BB, 0xB09A, 0x76BC, 0xB09B, 0x76BD, 0xB09C, 0x76BE, 0xB09D,
- 0x76BF, 0xC3F3, 0x76C0, 0xB09E, 0x76C1, 0xB09F, 0x76C2, 0xD3DB,
- 0x76C3, 0xB0A0, 0x76C4, 0xB140, 0x76C5, 0xD6D1, 0x76C6, 0xC5E8,
- 0x76C7, 0xB141, 0x76C8, 0xD3AF, 0x76C9, 0xB142, 0x76CA, 0xD2E6,
- 0x76CB, 0xB143, 0x76CC, 0xB144, 0x76CD, 0xEEC1, 0x76CE, 0xB0BB,
- 0x76CF, 0xD5B5, 0x76D0, 0xD1CE, 0x76D1, 0xBCE0, 0x76D2, 0xBAD0,
- 0x76D3, 0xB145, 0x76D4, 0xBFF8, 0x76D5, 0xB146, 0x76D6, 0xB8C7,
- 0x76D7, 0xB5C1, 0x76D8, 0xC5CC, 0x76D9, 0xB147, 0x76DA, 0xB148,
- 0x76DB, 0xCAA2, 0x76DC, 0xB149, 0x76DD, 0xB14A, 0x76DE, 0xB14B,
- 0x76DF, 0xC3CB, 0x76E0, 0xB14C, 0x76E1, 0xB14D, 0x76E2, 0xB14E,
- 0x76E3, 0xB14F, 0x76E4, 0xB150, 0x76E5, 0xEEC2, 0x76E6, 0xB151,
- 0x76E7, 0xB152, 0x76E8, 0xB153, 0x76E9, 0xB154, 0x76EA, 0xB155,
- 0x76EB, 0xB156, 0x76EC, 0xB157, 0x76ED, 0xB158, 0x76EE, 0xC4BF,
- 0x76EF, 0xB6A2, 0x76F0, 0xB159, 0x76F1, 0xEDEC, 0x76F2, 0xC3A4,
- 0x76F3, 0xB15A, 0x76F4, 0xD6B1, 0x76F5, 0xB15B, 0x76F6, 0xB15C,
- 0x76F7, 0xB15D, 0x76F8, 0xCFE0, 0x76F9, 0xEDEF, 0x76FA, 0xB15E,
- 0x76FB, 0xB15F, 0x76FC, 0xC5CE, 0x76FD, 0xB160, 0x76FE, 0xB6DC,
- 0x76FF, 0xB161, 0x7700, 0xB162, 0x7701, 0xCAA1, 0x7702, 0xB163,
- 0x7703, 0xB164, 0x7704, 0xEDED, 0x7705, 0xB165, 0x7706, 0xB166,
- 0x7707, 0xEDF0, 0x7708, 0xEDF1, 0x7709, 0xC3BC, 0x770A, 0xB167,
- 0x770B, 0xBFB4, 0x770C, 0xB168, 0x770D, 0xEDEE, 0x770E, 0xB169,
- 0x770F, 0xB16A, 0x7710, 0xB16B, 0x7711, 0xB16C, 0x7712, 0xB16D,
- 0x7713, 0xB16E, 0x7714, 0xB16F, 0x7715, 0xB170, 0x7716, 0xB171,
- 0x7717, 0xB172, 0x7718, 0xB173, 0x7719, 0xEDF4, 0x771A, 0xEDF2,
- 0x771B, 0xB174, 0x771C, 0xB175, 0x771D, 0xB176, 0x771E, 0xB177,
- 0x771F, 0xD5E6, 0x7720, 0xC3DF, 0x7721, 0xB178, 0x7722, 0xEDF3,
- 0x7723, 0xB179, 0x7724, 0xB17A, 0x7725, 0xB17B, 0x7726, 0xEDF6,
- 0x7727, 0xB17C, 0x7728, 0xD5A3, 0x7729, 0xD1A3, 0x772A, 0xB17D,
- 0x772B, 0xB17E, 0x772C, 0xB180, 0x772D, 0xEDF5, 0x772E, 0xB181,
- 0x772F, 0xC3D0, 0x7730, 0xB182, 0x7731, 0xB183, 0x7732, 0xB184,
- 0x7733, 0xB185, 0x7734, 0xB186, 0x7735, 0xEDF7, 0x7736, 0xBFF4,
- 0x7737, 0xBEEC, 0x7738, 0xEDF8, 0x7739, 0xB187, 0x773A, 0xCCF7,
- 0x773B, 0xB188, 0x773C, 0xD1DB, 0x773D, 0xB189, 0x773E, 0xB18A,
- 0x773F, 0xB18B, 0x7740, 0xD7C5, 0x7741, 0xD5F6, 0x7742, 0xB18C,
- 0x7743, 0xEDFC, 0x7744, 0xB18D, 0x7745, 0xB18E, 0x7746, 0xB18F,
- 0x7747, 0xEDFB, 0x7748, 0xB190, 0x7749, 0xB191, 0x774A, 0xB192,
- 0x774B, 0xB193, 0x774C, 0xB194, 0x774D, 0xB195, 0x774E, 0xB196,
- 0x774F, 0xB197, 0x7750, 0xEDF9, 0x7751, 0xEDFA, 0x7752, 0xB198,
- 0x7753, 0xB199, 0x7754, 0xB19A, 0x7755, 0xB19B, 0x7756, 0xB19C,
- 0x7757, 0xB19D, 0x7758, 0xB19E, 0x7759, 0xB19F, 0x775A, 0xEDFD,
- 0x775B, 0xBEA6, 0x775C, 0xB1A0, 0x775D, 0xB240, 0x775E, 0xB241,
- 0x775F, 0xB242, 0x7760, 0xB243, 0x7761, 0xCBAF, 0x7762, 0xEEA1,
- 0x7763, 0xB6BD, 0x7764, 0xB244, 0x7765, 0xEEA2, 0x7766, 0xC4C0,
- 0x7767, 0xB245, 0x7768, 0xEDFE, 0x7769, 0xB246, 0x776A, 0xB247,
- 0x776B, 0xBDDE, 0x776C, 0xB2C7, 0x776D, 0xB248, 0x776E, 0xB249,
- 0x776F, 0xB24A, 0x7770, 0xB24B, 0x7771, 0xB24C, 0x7772, 0xB24D,
- 0x7773, 0xB24E, 0x7774, 0xB24F, 0x7775, 0xB250, 0x7776, 0xB251,
- 0x7777, 0xB252, 0x7778, 0xB253, 0x7779, 0xB6C3, 0x777A, 0xB254,
- 0x777B, 0xB255, 0x777C, 0xB256, 0x777D, 0xEEA5, 0x777E, 0xD8BA,
- 0x777F, 0xEEA3, 0x7780, 0xEEA6, 0x7781, 0xB257, 0x7782, 0xB258,
- 0x7783, 0xB259, 0x7784, 0xC3E9, 0x7785, 0xB3F2, 0x7786, 0xB25A,
- 0x7787, 0xB25B, 0x7788, 0xB25C, 0x7789, 0xB25D, 0x778A, 0xB25E,
- 0x778B, 0xB25F, 0x778C, 0xEEA7, 0x778D, 0xEEA4, 0x778E, 0xCFB9,
- 0x778F, 0xB260, 0x7790, 0xB261, 0x7791, 0xEEA8, 0x7792, 0xC2F7,
- 0x7793, 0xB262, 0x7794, 0xB263, 0x7795, 0xB264, 0x7796, 0xB265,
- 0x7797, 0xB266, 0x7798, 0xB267, 0x7799, 0xB268, 0x779A, 0xB269,
- 0x779B, 0xB26A, 0x779C, 0xB26B, 0x779D, 0xB26C, 0x779E, 0xB26D,
- 0x779F, 0xEEA9, 0x77A0, 0xEEAA, 0x77A1, 0xB26E, 0x77A2, 0xDEAB,
- 0x77A3, 0xB26F, 0x77A4, 0xB270, 0x77A5, 0xC6B3, 0x77A6, 0xB271,
- 0x77A7, 0xC7C6, 0x77A8, 0xB272, 0x77A9, 0xD6F5, 0x77AA, 0xB5C9,
- 0x77AB, 0xB273, 0x77AC, 0xCBB2, 0x77AD, 0xB274, 0x77AE, 0xB275,
- 0x77AF, 0xB276, 0x77B0, 0xEEAB, 0x77B1, 0xB277, 0x77B2, 0xB278,
- 0x77B3, 0xCDAB, 0x77B4, 0xB279, 0x77B5, 0xEEAC, 0x77B6, 0xB27A,
- 0x77B7, 0xB27B, 0x77B8, 0xB27C, 0x77B9, 0xB27D, 0x77BA, 0xB27E,
- 0x77BB, 0xD5B0, 0x77BC, 0xB280, 0x77BD, 0xEEAD, 0x77BE, 0xB281,
- 0x77BF, 0xF6C4, 0x77C0, 0xB282, 0x77C1, 0xB283, 0x77C2, 0xB284,
- 0x77C3, 0xB285, 0x77C4, 0xB286, 0x77C5, 0xB287, 0x77C6, 0xB288,
- 0x77C7, 0xB289, 0x77C8, 0xB28A, 0x77C9, 0xB28B, 0x77CA, 0xB28C,
- 0x77CB, 0xB28D, 0x77CC, 0xB28E, 0x77CD, 0xDBC7, 0x77CE, 0xB28F,
- 0x77CF, 0xB290, 0x77D0, 0xB291, 0x77D1, 0xB292, 0x77D2, 0xB293,
- 0x77D3, 0xB294, 0x77D4, 0xB295, 0x77D5, 0xB296, 0x77D6, 0xB297,
- 0x77D7, 0xB4A3, 0x77D8, 0xB298, 0x77D9, 0xB299, 0x77DA, 0xB29A,
- 0x77DB, 0xC3AC, 0x77DC, 0xF1E6, 0x77DD, 0xB29B, 0x77DE, 0xB29C,
- 0x77DF, 0xB29D, 0x77E0, 0xB29E, 0x77E1, 0xB29F, 0x77E2, 0xCAB8,
- 0x77E3, 0xD2D3, 0x77E4, 0xB2A0, 0x77E5, 0xD6AA, 0x77E6, 0xB340,
- 0x77E7, 0xEFF2, 0x77E8, 0xB341, 0x77E9, 0xBED8, 0x77EA, 0xB342,
- 0x77EB, 0xBDC3, 0x77EC, 0xEFF3, 0x77ED, 0xB6CC, 0x77EE, 0xB0AB,
- 0x77EF, 0xB343, 0x77F0, 0xB344, 0x77F1, 0xB345, 0x77F2, 0xB346,
- 0x77F3, 0xCAAF, 0x77F4, 0xB347, 0x77F5, 0xB348, 0x77F6, 0xEDB6,
- 0x77F7, 0xB349, 0x77F8, 0xEDB7, 0x77F9, 0xB34A, 0x77FA, 0xB34B,
- 0x77FB, 0xB34C, 0x77FC, 0xB34D, 0x77FD, 0xCEF9, 0x77FE, 0xB7AF,
- 0x77FF, 0xBFF3, 0x7800, 0xEDB8, 0x7801, 0xC2EB, 0x7802, 0xC9B0,
- 0x7803, 0xB34E, 0x7804, 0xB34F, 0x7805, 0xB350, 0x7806, 0xB351,
- 0x7807, 0xB352, 0x7808, 0xB353, 0x7809, 0xEDB9, 0x780A, 0xB354,
- 0x780B, 0xB355, 0x780C, 0xC6F6, 0x780D, 0xBFB3, 0x780E, 0xB356,
- 0x780F, 0xB357, 0x7810, 0xB358, 0x7811, 0xEDBC, 0x7812, 0xC5F8,
- 0x7813, 0xB359, 0x7814, 0xD1D0, 0x7815, 0xB35A, 0x7816, 0xD7A9,
- 0x7817, 0xEDBA, 0x7818, 0xEDBB, 0x7819, 0xB35B, 0x781A, 0xD1E2,
- 0x781B, 0xB35C, 0x781C, 0xEDBF, 0x781D, 0xEDC0, 0x781E, 0xB35D,
- 0x781F, 0xEDC4, 0x7820, 0xB35E, 0x7821, 0xB35F, 0x7822, 0xB360,
- 0x7823, 0xEDC8, 0x7824, 0xB361, 0x7825, 0xEDC6, 0x7826, 0xEDCE,
- 0x7827, 0xD5E8, 0x7828, 0xB362, 0x7829, 0xEDC9, 0x782A, 0xB363,
- 0x782B, 0xB364, 0x782C, 0xEDC7, 0x782D, 0xEDBE, 0x782E, 0xB365,
- 0x782F, 0xB366, 0x7830, 0xC5E9, 0x7831, 0xB367, 0x7832, 0xB368,
- 0x7833, 0xB369, 0x7834, 0xC6C6, 0x7835, 0xB36A, 0x7836, 0xB36B,
- 0x7837, 0xC9E9, 0x7838, 0xD4D2, 0x7839, 0xEDC1, 0x783A, 0xEDC2,
- 0x783B, 0xEDC3, 0x783C, 0xEDC5, 0x783D, 0xB36C, 0x783E, 0xC0F9,
- 0x783F, 0xB36D, 0x7840, 0xB4A1, 0x7841, 0xB36E, 0x7842, 0xB36F,
- 0x7843, 0xB370, 0x7844, 0xB371, 0x7845, 0xB9E8, 0x7846, 0xB372,
- 0x7847, 0xEDD0, 0x7848, 0xB373, 0x7849, 0xB374, 0x784A, 0xB375,
- 0x784B, 0xB376, 0x784C, 0xEDD1, 0x784D, 0xB377, 0x784E, 0xEDCA,
- 0x784F, 0xB378, 0x7850, 0xEDCF, 0x7851, 0xB379, 0x7852, 0xCEF8,
- 0x7853, 0xB37A, 0x7854, 0xB37B, 0x7855, 0xCBB6, 0x7856, 0xEDCC,
- 0x7857, 0xEDCD, 0x7858, 0xB37C, 0x7859, 0xB37D, 0x785A, 0xB37E,
- 0x785B, 0xB380, 0x785C, 0xB381, 0x785D, 0xCFF5, 0x785E, 0xB382,
- 0x785F, 0xB383, 0x7860, 0xB384, 0x7861, 0xB385, 0x7862, 0xB386,
- 0x7863, 0xB387, 0x7864, 0xB388, 0x7865, 0xB389, 0x7866, 0xB38A,
- 0x7867, 0xB38B, 0x7868, 0xB38C, 0x7869, 0xB38D, 0x786A, 0xEDD2,
- 0x786B, 0xC1F2, 0x786C, 0xD3B2, 0x786D, 0xEDCB, 0x786E, 0xC8B7,
- 0x786F, 0xB38E, 0x7870, 0xB38F, 0x7871, 0xB390, 0x7872, 0xB391,
- 0x7873, 0xB392, 0x7874, 0xB393, 0x7875, 0xB394, 0x7876, 0xB395,
- 0x7877, 0xBCEF, 0x7878, 0xB396, 0x7879, 0xB397, 0x787A, 0xB398,
- 0x787B, 0xB399, 0x787C, 0xC5F0, 0x787D, 0xB39A, 0x787E, 0xB39B,
- 0x787F, 0xB39C, 0x7880, 0xB39D, 0x7881, 0xB39E, 0x7882, 0xB39F,
- 0x7883, 0xB3A0, 0x7884, 0xB440, 0x7885, 0xB441, 0x7886, 0xB442,
- 0x7887, 0xEDD6, 0x7888, 0xB443, 0x7889, 0xB5EF, 0x788A, 0xB444,
- 0x788B, 0xB445, 0x788C, 0xC2B5, 0x788D, 0xB0AD, 0x788E, 0xCBE9,
- 0x788F, 0xB446, 0x7890, 0xB447, 0x7891, 0xB1AE, 0x7892, 0xB448,
- 0x7893, 0xEDD4, 0x7894, 0xB449, 0x7895, 0xB44A, 0x7896, 0xB44B,
- 0x7897, 0xCDEB, 0x7898, 0xB5E2, 0x7899, 0xB44C, 0x789A, 0xEDD5,
- 0x789B, 0xEDD3, 0x789C, 0xEDD7, 0x789D, 0xB44D, 0x789E, 0xB44E,
- 0x789F, 0xB5FA, 0x78A0, 0xB44F, 0x78A1, 0xEDD8, 0x78A2, 0xB450,
- 0x78A3, 0xEDD9, 0x78A4, 0xB451, 0x78A5, 0xEDDC, 0x78A6, 0xB452,
- 0x78A7, 0xB1CC, 0x78A8, 0xB453, 0x78A9, 0xB454, 0x78AA, 0xB455,
- 0x78AB, 0xB456, 0x78AC, 0xB457, 0x78AD, 0xB458, 0x78AE, 0xB459,
- 0x78AF, 0xB45A, 0x78B0, 0xC5F6, 0x78B1, 0xBCEE, 0x78B2, 0xEDDA,
- 0x78B3, 0xCCBC, 0x78B4, 0xB2EA, 0x78B5, 0xB45B, 0x78B6, 0xB45C,
- 0x78B7, 0xB45D, 0x78B8, 0xB45E, 0x78B9, 0xEDDB, 0x78BA, 0xB45F,
- 0x78BB, 0xB460, 0x78BC, 0xB461, 0x78BD, 0xB462, 0x78BE, 0xC4EB,
- 0x78BF, 0xB463, 0x78C0, 0xB464, 0x78C1, 0xB4C5, 0x78C2, 0xB465,
- 0x78C3, 0xB466, 0x78C4, 0xB467, 0x78C5, 0xB0F5, 0x78C6, 0xB468,
- 0x78C7, 0xB469, 0x78C8, 0xB46A, 0x78C9, 0xEDDF, 0x78CA, 0xC0DA,
- 0x78CB, 0xB4E8, 0x78CC, 0xB46B, 0x78CD, 0xB46C, 0x78CE, 0xB46D,
- 0x78CF, 0xB46E, 0x78D0, 0xC5CD, 0x78D1, 0xB46F, 0x78D2, 0xB470,
- 0x78D3, 0xB471, 0x78D4, 0xEDDD, 0x78D5, 0xBFC4, 0x78D6, 0xB472,
- 0x78D7, 0xB473, 0x78D8, 0xB474, 0x78D9, 0xEDDE, 0x78DA, 0xB475,
- 0x78DB, 0xB476, 0x78DC, 0xB477, 0x78DD, 0xB478, 0x78DE, 0xB479,
- 0x78DF, 0xB47A, 0x78E0, 0xB47B, 0x78E1, 0xB47C, 0x78E2, 0xB47D,
- 0x78E3, 0xB47E, 0x78E4, 0xB480, 0x78E5, 0xB481, 0x78E6, 0xB482,
- 0x78E7, 0xB483, 0x78E8, 0xC4A5, 0x78E9, 0xB484, 0x78EA, 0xB485,
- 0x78EB, 0xB486, 0x78EC, 0xEDE0, 0x78ED, 0xB487, 0x78EE, 0xB488,
- 0x78EF, 0xB489, 0x78F0, 0xB48A, 0x78F1, 0xB48B, 0x78F2, 0xEDE1,
- 0x78F3, 0xB48C, 0x78F4, 0xEDE3, 0x78F5, 0xB48D, 0x78F6, 0xB48E,
- 0x78F7, 0xC1D7, 0x78F8, 0xB48F, 0x78F9, 0xB490, 0x78FA, 0xBBC7,
- 0x78FB, 0xB491, 0x78FC, 0xB492, 0x78FD, 0xB493, 0x78FE, 0xB494,
- 0x78FF, 0xB495, 0x7900, 0xB496, 0x7901, 0xBDB8, 0x7902, 0xB497,
- 0x7903, 0xB498, 0x7904, 0xB499, 0x7905, 0xEDE2, 0x7906, 0xB49A,
- 0x7907, 0xB49B, 0x7908, 0xB49C, 0x7909, 0xB49D, 0x790A, 0xB49E,
- 0x790B, 0xB49F, 0x790C, 0xB4A0, 0x790D, 0xB540, 0x790E, 0xB541,
- 0x790F, 0xB542, 0x7910, 0xB543, 0x7911, 0xB544, 0x7912, 0xB545,
- 0x7913, 0xEDE4, 0x7914, 0xB546, 0x7915, 0xB547, 0x7916, 0xB548,
- 0x7917, 0xB549, 0x7918, 0xB54A, 0x7919, 0xB54B, 0x791A, 0xB54C,
- 0x791B, 0xB54D, 0x791C, 0xB54E, 0x791D, 0xB54F, 0x791E, 0xEDE6,
- 0x791F, 0xB550, 0x7920, 0xB551, 0x7921, 0xB552, 0x7922, 0xB553,
- 0x7923, 0xB554, 0x7924, 0xEDE5, 0x7925, 0xB555, 0x7926, 0xB556,
- 0x7927, 0xB557, 0x7928, 0xB558, 0x7929, 0xB559, 0x792A, 0xB55A,
- 0x792B, 0xB55B, 0x792C, 0xB55C, 0x792D, 0xB55D, 0x792E, 0xB55E,
- 0x792F, 0xB55F, 0x7930, 0xB560, 0x7931, 0xB561, 0x7932, 0xB562,
- 0x7933, 0xB563, 0x7934, 0xEDE7, 0x7935, 0xB564, 0x7936, 0xB565,
- 0x7937, 0xB566, 0x7938, 0xB567, 0x7939, 0xB568, 0x793A, 0xCABE,
- 0x793B, 0xECEA, 0x793C, 0xC0F1, 0x793D, 0xB569, 0x793E, 0xC9E7,
- 0x793F, 0xB56A, 0x7940, 0xECEB, 0x7941, 0xC6EE, 0x7942, 0xB56B,
- 0x7943, 0xB56C, 0x7944, 0xB56D, 0x7945, 0xB56E, 0x7946, 0xECEC,
- 0x7947, 0xB56F, 0x7948, 0xC6ED, 0x7949, 0xECED, 0x794A, 0xB570,
- 0x794B, 0xB571, 0x794C, 0xB572, 0x794D, 0xB573, 0x794E, 0xB574,
- 0x794F, 0xB575, 0x7950, 0xB576, 0x7951, 0xB577, 0x7952, 0xB578,
- 0x7953, 0xECF0, 0x7954, 0xB579, 0x7955, 0xB57A, 0x7956, 0xD7E6,
- 0x7957, 0xECF3, 0x7958, 0xB57B, 0x7959, 0xB57C, 0x795A, 0xECF1,
- 0x795B, 0xECEE, 0x795C, 0xECEF, 0x795D, 0xD7A3, 0x795E, 0xC9F1,
- 0x795F, 0xCBEE, 0x7960, 0xECF4, 0x7961, 0xB57D, 0x7962, 0xECF2,
- 0x7963, 0xB57E, 0x7964, 0xB580, 0x7965, 0xCFE9, 0x7966, 0xB581,
- 0x7967, 0xECF6, 0x7968, 0xC6B1, 0x7969, 0xB582, 0x796A, 0xB583,
- 0x796B, 0xB584, 0x796C, 0xB585, 0x796D, 0xBCC0, 0x796E, 0xB586,
- 0x796F, 0xECF5, 0x7970, 0xB587, 0x7971, 0xB588, 0x7972, 0xB589,
- 0x7973, 0xB58A, 0x7974, 0xB58B, 0x7975, 0xB58C, 0x7976, 0xB58D,
- 0x7977, 0xB5BB, 0x7978, 0xBBF6, 0x7979, 0xB58E, 0x797A, 0xECF7,
- 0x797B, 0xB58F, 0x797C, 0xB590, 0x797D, 0xB591, 0x797E, 0xB592,
- 0x797F, 0xB593, 0x7980, 0xD9F7, 0x7981, 0xBDFB, 0x7982, 0xB594,
- 0x7983, 0xB595, 0x7984, 0xC2BB, 0x7985, 0xECF8, 0x7986, 0xB596,
- 0x7987, 0xB597, 0x7988, 0xB598, 0x7989, 0xB599, 0x798A, 0xECF9,
- 0x798B, 0xB59A, 0x798C, 0xB59B, 0x798D, 0xB59C, 0x798E, 0xB59D,
- 0x798F, 0xB8A3, 0x7990, 0xB59E, 0x7991, 0xB59F, 0x7992, 0xB5A0,
- 0x7993, 0xB640, 0x7994, 0xB641, 0x7995, 0xB642, 0x7996, 0xB643,
- 0x7997, 0xB644, 0x7998, 0xB645, 0x7999, 0xB646, 0x799A, 0xECFA,
- 0x799B, 0xB647, 0x799C, 0xB648, 0x799D, 0xB649, 0x799E, 0xB64A,
- 0x799F, 0xB64B, 0x79A0, 0xB64C, 0x79A1, 0xB64D, 0x79A2, 0xB64E,
- 0x79A3, 0xB64F, 0x79A4, 0xB650, 0x79A5, 0xB651, 0x79A6, 0xB652,
- 0x79A7, 0xECFB, 0x79A8, 0xB653, 0x79A9, 0xB654, 0x79AA, 0xB655,
- 0x79AB, 0xB656, 0x79AC, 0xB657, 0x79AD, 0xB658, 0x79AE, 0xB659,
- 0x79AF, 0xB65A, 0x79B0, 0xB65B, 0x79B1, 0xB65C, 0x79B2, 0xB65D,
- 0x79B3, 0xECFC, 0x79B4, 0xB65E, 0x79B5, 0xB65F, 0x79B6, 0xB660,
- 0x79B7, 0xB661, 0x79B8, 0xB662, 0x79B9, 0xD3ED, 0x79BA, 0xD8AE,
- 0x79BB, 0xC0EB, 0x79BC, 0xB663, 0x79BD, 0xC7DD, 0x79BE, 0xBACC,
- 0x79BF, 0xB664, 0x79C0, 0xD0E3, 0x79C1, 0xCBBD, 0x79C2, 0xB665,
- 0x79C3, 0xCDBA, 0x79C4, 0xB666, 0x79C5, 0xB667, 0x79C6, 0xB8D1,
- 0x79C7, 0xB668, 0x79C8, 0xB669, 0x79C9, 0xB1FC, 0x79CA, 0xB66A,
- 0x79CB, 0xC7EF, 0x79CC, 0xB66B, 0x79CD, 0xD6D6, 0x79CE, 0xB66C,
- 0x79CF, 0xB66D, 0x79D0, 0xB66E, 0x79D1, 0xBFC6, 0x79D2, 0xC3EB,
- 0x79D3, 0xB66F, 0x79D4, 0xB670, 0x79D5, 0xEFF5, 0x79D6, 0xB671,
- 0x79D7, 0xB672, 0x79D8, 0xC3D8, 0x79D9, 0xB673, 0x79DA, 0xB674,
- 0x79DB, 0xB675, 0x79DC, 0xB676, 0x79DD, 0xB677, 0x79DE, 0xB678,
- 0x79DF, 0xD7E2, 0x79E0, 0xB679, 0x79E1, 0xB67A, 0x79E2, 0xB67B,
- 0x79E3, 0xEFF7, 0x79E4, 0xB3D3, 0x79E5, 0xB67C, 0x79E6, 0xC7D8,
- 0x79E7, 0xD1ED, 0x79E8, 0xB67D, 0x79E9, 0xD6C8, 0x79EA, 0xB67E,
- 0x79EB, 0xEFF8, 0x79EC, 0xB680, 0x79ED, 0xEFF6, 0x79EE, 0xB681,
- 0x79EF, 0xBBFD, 0x79F0, 0xB3C6, 0x79F1, 0xB682, 0x79F2, 0xB683,
- 0x79F3, 0xB684, 0x79F4, 0xB685, 0x79F5, 0xB686, 0x79F6, 0xB687,
- 0x79F7, 0xB688, 0x79F8, 0xBDD5, 0x79F9, 0xB689, 0x79FA, 0xB68A,
- 0x79FB, 0xD2C6, 0x79FC, 0xB68B, 0x79FD, 0xBBE0, 0x79FE, 0xB68C,
- 0x79FF, 0xB68D, 0x7A00, 0xCFA1, 0x7A01, 0xB68E, 0x7A02, 0xEFFC,
- 0x7A03, 0xEFFB, 0x7A04, 0xB68F, 0x7A05, 0xB690, 0x7A06, 0xEFF9,
- 0x7A07, 0xB691, 0x7A08, 0xB692, 0x7A09, 0xB693, 0x7A0A, 0xB694,
- 0x7A0B, 0xB3CC, 0x7A0C, 0xB695, 0x7A0D, 0xC9D4, 0x7A0E, 0xCBB0,
- 0x7A0F, 0xB696, 0x7A10, 0xB697, 0x7A11, 0xB698, 0x7A12, 0xB699,
- 0x7A13, 0xB69A, 0x7A14, 0xEFFE, 0x7A15, 0xB69B, 0x7A16, 0xB69C,
- 0x7A17, 0xB0DE, 0x7A18, 0xB69D, 0x7A19, 0xB69E, 0x7A1A, 0xD6C9,
- 0x7A1B, 0xB69F, 0x7A1C, 0xB6A0, 0x7A1D, 0xB740, 0x7A1E, 0xEFFD,
- 0x7A1F, 0xB741, 0x7A20, 0xB3ED, 0x7A21, 0xB742, 0x7A22, 0xB743,
- 0x7A23, 0xF6D5, 0x7A24, 0xB744, 0x7A25, 0xB745, 0x7A26, 0xB746,
- 0x7A27, 0xB747, 0x7A28, 0xB748, 0x7A29, 0xB749, 0x7A2A, 0xB74A,
- 0x7A2B, 0xB74B, 0x7A2C, 0xB74C, 0x7A2D, 0xB74D, 0x7A2E, 0xB74E,
- 0x7A2F, 0xB74F, 0x7A30, 0xB750, 0x7A31, 0xB751, 0x7A32, 0xB752,
- 0x7A33, 0xCEC8, 0x7A34, 0xB753, 0x7A35, 0xB754, 0x7A36, 0xB755,
- 0x7A37, 0xF0A2, 0x7A38, 0xB756, 0x7A39, 0xF0A1, 0x7A3A, 0xB757,
- 0x7A3B, 0xB5BE, 0x7A3C, 0xBCDA, 0x7A3D, 0xBBFC, 0x7A3E, 0xB758,
- 0x7A3F, 0xB8E5, 0x7A40, 0xB759, 0x7A41, 0xB75A, 0x7A42, 0xB75B,
- 0x7A43, 0xB75C, 0x7A44, 0xB75D, 0x7A45, 0xB75E, 0x7A46, 0xC4C2,
- 0x7A47, 0xB75F, 0x7A48, 0xB760, 0x7A49, 0xB761, 0x7A4A, 0xB762,
- 0x7A4B, 0xB763, 0x7A4C, 0xB764, 0x7A4D, 0xB765, 0x7A4E, 0xB766,
- 0x7A4F, 0xB767, 0x7A50, 0xB768, 0x7A51, 0xF0A3, 0x7A52, 0xB769,
- 0x7A53, 0xB76A, 0x7A54, 0xB76B, 0x7A55, 0xB76C, 0x7A56, 0xB76D,
- 0x7A57, 0xCBEB, 0x7A58, 0xB76E, 0x7A59, 0xB76F, 0x7A5A, 0xB770,
- 0x7A5B, 0xB771, 0x7A5C, 0xB772, 0x7A5D, 0xB773, 0x7A5E, 0xB774,
- 0x7A5F, 0xB775, 0x7A60, 0xB776, 0x7A61, 0xB777, 0x7A62, 0xB778,
- 0x7A63, 0xB779, 0x7A64, 0xB77A, 0x7A65, 0xB77B, 0x7A66, 0xB77C,
- 0x7A67, 0xB77D, 0x7A68, 0xB77E, 0x7A69, 0xB780, 0x7A6A, 0xB781,
- 0x7A6B, 0xB782, 0x7A6C, 0xB783, 0x7A6D, 0xB784, 0x7A6E, 0xB785,
- 0x7A6F, 0xB786, 0x7A70, 0xF0A6, 0x7A71, 0xB787, 0x7A72, 0xB788,
- 0x7A73, 0xB789, 0x7A74, 0xD1A8, 0x7A75, 0xB78A, 0x7A76, 0xBEBF,
- 0x7A77, 0xC7EE, 0x7A78, 0xF1B6, 0x7A79, 0xF1B7, 0x7A7A, 0xBFD5,
- 0x7A7B, 0xB78B, 0x7A7C, 0xB78C, 0x7A7D, 0xB78D, 0x7A7E, 0xB78E,
- 0x7A7F, 0xB4A9, 0x7A80, 0xF1B8, 0x7A81, 0xCDBB, 0x7A82, 0xB78F,
- 0x7A83, 0xC7D4, 0x7A84, 0xD5AD, 0x7A85, 0xB790, 0x7A86, 0xF1B9,
- 0x7A87, 0xB791, 0x7A88, 0xF1BA, 0x7A89, 0xB792, 0x7A8A, 0xB793,
- 0x7A8B, 0xB794, 0x7A8C, 0xB795, 0x7A8D, 0xC7CF, 0x7A8E, 0xB796,
- 0x7A8F, 0xB797, 0x7A90, 0xB798, 0x7A91, 0xD2A4, 0x7A92, 0xD6CF,
- 0x7A93, 0xB799, 0x7A94, 0xB79A, 0x7A95, 0xF1BB, 0x7A96, 0xBDD1,
- 0x7A97, 0xB4B0, 0x7A98, 0xBEBD, 0x7A99, 0xB79B, 0x7A9A, 0xB79C,
- 0x7A9B, 0xB79D, 0x7A9C, 0xB4DC, 0x7A9D, 0xCED1, 0x7A9E, 0xB79E,
- 0x7A9F, 0xBFDF, 0x7AA0, 0xF1BD, 0x7AA1, 0xB79F, 0x7AA2, 0xB7A0,
- 0x7AA3, 0xB840, 0x7AA4, 0xB841, 0x7AA5, 0xBFFA, 0x7AA6, 0xF1BC,
- 0x7AA7, 0xB842, 0x7AA8, 0xF1BF, 0x7AA9, 0xB843, 0x7AAA, 0xB844,
- 0x7AAB, 0xB845, 0x7AAC, 0xF1BE, 0x7AAD, 0xF1C0, 0x7AAE, 0xB846,
- 0x7AAF, 0xB847, 0x7AB0, 0xB848, 0x7AB1, 0xB849, 0x7AB2, 0xB84A,
- 0x7AB3, 0xF1C1, 0x7AB4, 0xB84B, 0x7AB5, 0xB84C, 0x7AB6, 0xB84D,
- 0x7AB7, 0xB84E, 0x7AB8, 0xB84F, 0x7AB9, 0xB850, 0x7ABA, 0xB851,
- 0x7ABB, 0xB852, 0x7ABC, 0xB853, 0x7ABD, 0xB854, 0x7ABE, 0xB855,
- 0x7ABF, 0xC1FE, 0x7AC0, 0xB856, 0x7AC1, 0xB857, 0x7AC2, 0xB858,
- 0x7AC3, 0xB859, 0x7AC4, 0xB85A, 0x7AC5, 0xB85B, 0x7AC6, 0xB85C,
- 0x7AC7, 0xB85D, 0x7AC8, 0xB85E, 0x7AC9, 0xB85F, 0x7ACA, 0xB860,
- 0x7ACB, 0xC1A2, 0x7ACC, 0xB861, 0x7ACD, 0xB862, 0x7ACE, 0xB863,
- 0x7ACF, 0xB864, 0x7AD0, 0xB865, 0x7AD1, 0xB866, 0x7AD2, 0xB867,
- 0x7AD3, 0xB868, 0x7AD4, 0xB869, 0x7AD5, 0xB86A, 0x7AD6, 0xCAFA,
- 0x7AD7, 0xB86B, 0x7AD8, 0xB86C, 0x7AD9, 0xD5BE, 0x7ADA, 0xB86D,
- 0x7ADB, 0xB86E, 0x7ADC, 0xB86F, 0x7ADD, 0xB870, 0x7ADE, 0xBEBA,
- 0x7ADF, 0xBEB9, 0x7AE0, 0xD5C2, 0x7AE1, 0xB871, 0x7AE2, 0xB872,
- 0x7AE3, 0xBFA2, 0x7AE4, 0xB873, 0x7AE5, 0xCDAF, 0x7AE6, 0xF1B5,
- 0x7AE7, 0xB874, 0x7AE8, 0xB875, 0x7AE9, 0xB876, 0x7AEA, 0xB877,
- 0x7AEB, 0xB878, 0x7AEC, 0xB879, 0x7AED, 0xBDDF, 0x7AEE, 0xB87A,
- 0x7AEF, 0xB6CB, 0x7AF0, 0xB87B, 0x7AF1, 0xB87C, 0x7AF2, 0xB87D,
- 0x7AF3, 0xB87E, 0x7AF4, 0xB880, 0x7AF5, 0xB881, 0x7AF6, 0xB882,
- 0x7AF7, 0xB883, 0x7AF8, 0xB884, 0x7AF9, 0xD6F1, 0x7AFA, 0xF3C3,
- 0x7AFB, 0xB885, 0x7AFC, 0xB886, 0x7AFD, 0xF3C4, 0x7AFE, 0xB887,
- 0x7AFF, 0xB8CD, 0x7B00, 0xB888, 0x7B01, 0xB889, 0x7B02, 0xB88A,
- 0x7B03, 0xF3C6, 0x7B04, 0xF3C7, 0x7B05, 0xB88B, 0x7B06, 0xB0CA,
- 0x7B07, 0xB88C, 0x7B08, 0xF3C5, 0x7B09, 0xB88D, 0x7B0A, 0xF3C9,
- 0x7B0B, 0xCBF1, 0x7B0C, 0xB88E, 0x7B0D, 0xB88F, 0x7B0E, 0xB890,
- 0x7B0F, 0xF3CB, 0x7B10, 0xB891, 0x7B11, 0xD0A6, 0x7B12, 0xB892,
- 0x7B13, 0xB893, 0x7B14, 0xB1CA, 0x7B15, 0xF3C8, 0x7B16, 0xB894,
- 0x7B17, 0xB895, 0x7B18, 0xB896, 0x7B19, 0xF3CF, 0x7B1A, 0xB897,
- 0x7B1B, 0xB5D1, 0x7B1C, 0xB898, 0x7B1D, 0xB899, 0x7B1E, 0xF3D7,
- 0x7B1F, 0xB89A, 0x7B20, 0xF3D2, 0x7B21, 0xB89B, 0x7B22, 0xB89C,
- 0x7B23, 0xB89D, 0x7B24, 0xF3D4, 0x7B25, 0xF3D3, 0x7B26, 0xB7FB,
- 0x7B27, 0xB89E, 0x7B28, 0xB1BF, 0x7B29, 0xB89F, 0x7B2A, 0xF3CE,
- 0x7B2B, 0xF3CA, 0x7B2C, 0xB5DA, 0x7B2D, 0xB8A0, 0x7B2E, 0xF3D0,
- 0x7B2F, 0xB940, 0x7B30, 0xB941, 0x7B31, 0xF3D1, 0x7B32, 0xB942,
- 0x7B33, 0xF3D5, 0x7B34, 0xB943, 0x7B35, 0xB944, 0x7B36, 0xB945,
- 0x7B37, 0xB946, 0x7B38, 0xF3CD, 0x7B39, 0xB947, 0x7B3A, 0xBCE3,
- 0x7B3B, 0xB948, 0x7B3C, 0xC1FD, 0x7B3D, 0xB949, 0x7B3E, 0xF3D6,
- 0x7B3F, 0xB94A, 0x7B40, 0xB94B, 0x7B41, 0xB94C, 0x7B42, 0xB94D,
- 0x7B43, 0xB94E, 0x7B44, 0xB94F, 0x7B45, 0xF3DA, 0x7B46, 0xB950,
- 0x7B47, 0xF3CC, 0x7B48, 0xB951, 0x7B49, 0xB5C8, 0x7B4A, 0xB952,
- 0x7B4B, 0xBDEE, 0x7B4C, 0xF3DC, 0x7B4D, 0xB953, 0x7B4E, 0xB954,
- 0x7B4F, 0xB7A4, 0x7B50, 0xBFF0, 0x7B51, 0xD6FE, 0x7B52, 0xCDB2,
- 0x7B53, 0xB955, 0x7B54, 0xB4F0, 0x7B55, 0xB956, 0x7B56, 0xB2DF,
- 0x7B57, 0xB957, 0x7B58, 0xF3D8, 0x7B59, 0xB958, 0x7B5A, 0xF3D9,
- 0x7B5B, 0xC9B8, 0x7B5C, 0xB959, 0x7B5D, 0xF3DD, 0x7B5E, 0xB95A,
- 0x7B5F, 0xB95B, 0x7B60, 0xF3DE, 0x7B61, 0xB95C, 0x7B62, 0xF3E1,
- 0x7B63, 0xB95D, 0x7B64, 0xB95E, 0x7B65, 0xB95F, 0x7B66, 0xB960,
- 0x7B67, 0xB961, 0x7B68, 0xB962, 0x7B69, 0xB963, 0x7B6A, 0xB964,
- 0x7B6B, 0xB965, 0x7B6C, 0xB966, 0x7B6D, 0xB967, 0x7B6E, 0xF3DF,
- 0x7B6F, 0xB968, 0x7B70, 0xB969, 0x7B71, 0xF3E3, 0x7B72, 0xF3E2,
- 0x7B73, 0xB96A, 0x7B74, 0xB96B, 0x7B75, 0xF3DB, 0x7B76, 0xB96C,
- 0x7B77, 0xBFEA, 0x7B78, 0xB96D, 0x7B79, 0xB3EF, 0x7B7A, 0xB96E,
- 0x7B7B, 0xF3E0, 0x7B7C, 0xB96F, 0x7B7D, 0xB970, 0x7B7E, 0xC7A9,
- 0x7B7F, 0xB971, 0x7B80, 0xBCF2, 0x7B81, 0xB972, 0x7B82, 0xB973,
- 0x7B83, 0xB974, 0x7B84, 0xB975, 0x7B85, 0xF3EB, 0x7B86, 0xB976,
- 0x7B87, 0xB977, 0x7B88, 0xB978, 0x7B89, 0xB979, 0x7B8A, 0xB97A,
- 0x7B8B, 0xB97B, 0x7B8C, 0xB97C, 0x7B8D, 0xB9BF, 0x7B8E, 0xB97D,
- 0x7B8F, 0xB97E, 0x7B90, 0xF3E4, 0x7B91, 0xB980, 0x7B92, 0xB981,
- 0x7B93, 0xB982, 0x7B94, 0xB2AD, 0x7B95, 0xBBFE, 0x7B96, 0xB983,
- 0x7B97, 0xCBE3, 0x7B98, 0xB984, 0x7B99, 0xB985, 0x7B9A, 0xB986,
- 0x7B9B, 0xB987, 0x7B9C, 0xF3ED, 0x7B9D, 0xF3E9, 0x7B9E, 0xB988,
- 0x7B9F, 0xB989, 0x7BA0, 0xB98A, 0x7BA1, 0xB9DC, 0x7BA2, 0xF3EE,
- 0x7BA3, 0xB98B, 0x7BA4, 0xB98C, 0x7BA5, 0xB98D, 0x7BA6, 0xF3E5,
- 0x7BA7, 0xF3E6, 0x7BA8, 0xF3EA, 0x7BA9, 0xC2E1, 0x7BAA, 0xF3EC,
- 0x7BAB, 0xF3EF, 0x7BAC, 0xF3E8, 0x7BAD, 0xBCFD, 0x7BAE, 0xB98E,
- 0x7BAF, 0xB98F, 0x7BB0, 0xB990, 0x7BB1, 0xCFE4, 0x7BB2, 0xB991,
- 0x7BB3, 0xB992, 0x7BB4, 0xF3F0, 0x7BB5, 0xB993, 0x7BB6, 0xB994,
- 0x7BB7, 0xB995, 0x7BB8, 0xF3E7, 0x7BB9, 0xB996, 0x7BBA, 0xB997,
- 0x7BBB, 0xB998, 0x7BBC, 0xB999, 0x7BBD, 0xB99A, 0x7BBE, 0xB99B,
- 0x7BBF, 0xB99C, 0x7BC0, 0xB99D, 0x7BC1, 0xF3F2, 0x7BC2, 0xB99E,
- 0x7BC3, 0xB99F, 0x7BC4, 0xB9A0, 0x7BC5, 0xBA40, 0x7BC6, 0xD7AD,
- 0x7BC7, 0xC6AA, 0x7BC8, 0xBA41, 0x7BC9, 0xBA42, 0x7BCA, 0xBA43,
- 0x7BCB, 0xBA44, 0x7BCC, 0xF3F3, 0x7BCD, 0xBA45, 0x7BCE, 0xBA46,
- 0x7BCF, 0xBA47, 0x7BD0, 0xBA48, 0x7BD1, 0xF3F1, 0x7BD2, 0xBA49,
- 0x7BD3, 0xC2A8, 0x7BD4, 0xBA4A, 0x7BD5, 0xBA4B, 0x7BD6, 0xBA4C,
- 0x7BD7, 0xBA4D, 0x7BD8, 0xBA4E, 0x7BD9, 0xB8DD, 0x7BDA, 0xF3F5,
- 0x7BDB, 0xBA4F, 0x7BDC, 0xBA50, 0x7BDD, 0xF3F4, 0x7BDE, 0xBA51,
- 0x7BDF, 0xBA52, 0x7BE0, 0xBA53, 0x7BE1, 0xB4DB, 0x7BE2, 0xBA54,
- 0x7BE3, 0xBA55, 0x7BE4, 0xBA56, 0x7BE5, 0xF3F6, 0x7BE6, 0xF3F7,
- 0x7BE7, 0xBA57, 0x7BE8, 0xBA58, 0x7BE9, 0xBA59, 0x7BEA, 0xF3F8,
- 0x7BEB, 0xBA5A, 0x7BEC, 0xBA5B, 0x7BED, 0xBA5C, 0x7BEE, 0xC0BA,
- 0x7BEF, 0xBA5D, 0x7BF0, 0xBA5E, 0x7BF1, 0xC0E9, 0x7BF2, 0xBA5F,
- 0x7BF3, 0xBA60, 0x7BF4, 0xBA61, 0x7BF5, 0xBA62, 0x7BF6, 0xBA63,
- 0x7BF7, 0xC5F1, 0x7BF8, 0xBA64, 0x7BF9, 0xBA65, 0x7BFA, 0xBA66,
- 0x7BFB, 0xBA67, 0x7BFC, 0xF3FB, 0x7BFD, 0xBA68, 0x7BFE, 0xF3FA,
- 0x7BFF, 0xBA69, 0x7C00, 0xBA6A, 0x7C01, 0xBA6B, 0x7C02, 0xBA6C,
- 0x7C03, 0xBA6D, 0x7C04, 0xBA6E, 0x7C05, 0xBA6F, 0x7C06, 0xBA70,
- 0x7C07, 0xB4D8, 0x7C08, 0xBA71, 0x7C09, 0xBA72, 0x7C0A, 0xBA73,
- 0x7C0B, 0xF3FE, 0x7C0C, 0xF3F9, 0x7C0D, 0xBA74, 0x7C0E, 0xBA75,
- 0x7C0F, 0xF3FC, 0x7C10, 0xBA76, 0x7C11, 0xBA77, 0x7C12, 0xBA78,
- 0x7C13, 0xBA79, 0x7C14, 0xBA7A, 0x7C15, 0xBA7B, 0x7C16, 0xF3FD,
- 0x7C17, 0xBA7C, 0x7C18, 0xBA7D, 0x7C19, 0xBA7E, 0x7C1A, 0xBA80,
- 0x7C1B, 0xBA81, 0x7C1C, 0xBA82, 0x7C1D, 0xBA83, 0x7C1E, 0xBA84,
- 0x7C1F, 0xF4A1, 0x7C20, 0xBA85, 0x7C21, 0xBA86, 0x7C22, 0xBA87,
- 0x7C23, 0xBA88, 0x7C24, 0xBA89, 0x7C25, 0xBA8A, 0x7C26, 0xF4A3,
- 0x7C27, 0xBBC9, 0x7C28, 0xBA8B, 0x7C29, 0xBA8C, 0x7C2A, 0xF4A2,
- 0x7C2B, 0xBA8D, 0x7C2C, 0xBA8E, 0x7C2D, 0xBA8F, 0x7C2E, 0xBA90,
- 0x7C2F, 0xBA91, 0x7C30, 0xBA92, 0x7C31, 0xBA93, 0x7C32, 0xBA94,
- 0x7C33, 0xBA95, 0x7C34, 0xBA96, 0x7C35, 0xBA97, 0x7C36, 0xBA98,
- 0x7C37, 0xBA99, 0x7C38, 0xF4A4, 0x7C39, 0xBA9A, 0x7C3A, 0xBA9B,
- 0x7C3B, 0xBA9C, 0x7C3C, 0xBA9D, 0x7C3D, 0xBA9E, 0x7C3E, 0xBA9F,
- 0x7C3F, 0xB2BE, 0x7C40, 0xF4A6, 0x7C41, 0xF4A5, 0x7C42, 0xBAA0,
- 0x7C43, 0xBB40, 0x7C44, 0xBB41, 0x7C45, 0xBB42, 0x7C46, 0xBB43,
- 0x7C47, 0xBB44, 0x7C48, 0xBB45, 0x7C49, 0xBB46, 0x7C4A, 0xBB47,
- 0x7C4B, 0xBB48, 0x7C4C, 0xBB49, 0x7C4D, 0xBCAE, 0x7C4E, 0xBB4A,
- 0x7C4F, 0xBB4B, 0x7C50, 0xBB4C, 0x7C51, 0xBB4D, 0x7C52, 0xBB4E,
- 0x7C53, 0xBB4F, 0x7C54, 0xBB50, 0x7C55, 0xBB51, 0x7C56, 0xBB52,
- 0x7C57, 0xBB53, 0x7C58, 0xBB54, 0x7C59, 0xBB55, 0x7C5A, 0xBB56,
- 0x7C5B, 0xBB57, 0x7C5C, 0xBB58, 0x7C5D, 0xBB59, 0x7C5E, 0xBB5A,
- 0x7C5F, 0xBB5B, 0x7C60, 0xBB5C, 0x7C61, 0xBB5D, 0x7C62, 0xBB5E,
- 0x7C63, 0xBB5F, 0x7C64, 0xBB60, 0x7C65, 0xBB61, 0x7C66, 0xBB62,
- 0x7C67, 0xBB63, 0x7C68, 0xBB64, 0x7C69, 0xBB65, 0x7C6A, 0xBB66,
- 0x7C6B, 0xBB67, 0x7C6C, 0xBB68, 0x7C6D, 0xBB69, 0x7C6E, 0xBB6A,
- 0x7C6F, 0xBB6B, 0x7C70, 0xBB6C, 0x7C71, 0xBB6D, 0x7C72, 0xBB6E,
- 0x7C73, 0xC3D7, 0x7C74, 0xD9E1, 0x7C75, 0xBB6F, 0x7C76, 0xBB70,
- 0x7C77, 0xBB71, 0x7C78, 0xBB72, 0x7C79, 0xBB73, 0x7C7A, 0xBB74,
- 0x7C7B, 0xC0E0, 0x7C7C, 0xF4CC, 0x7C7D, 0xD7D1, 0x7C7E, 0xBB75,
- 0x7C7F, 0xBB76, 0x7C80, 0xBB77, 0x7C81, 0xBB78, 0x7C82, 0xBB79,
- 0x7C83, 0xBB7A, 0x7C84, 0xBB7B, 0x7C85, 0xBB7C, 0x7C86, 0xBB7D,
- 0x7C87, 0xBB7E, 0x7C88, 0xBB80, 0x7C89, 0xB7DB, 0x7C8A, 0xBB81,
- 0x7C8B, 0xBB82, 0x7C8C, 0xBB83, 0x7C8D, 0xBB84, 0x7C8E, 0xBB85,
- 0x7C8F, 0xBB86, 0x7C90, 0xBB87, 0x7C91, 0xF4CE, 0x7C92, 0xC1A3,
- 0x7C93, 0xBB88, 0x7C94, 0xBB89, 0x7C95, 0xC6C9, 0x7C96, 0xBB8A,
- 0x7C97, 0xB4D6, 0x7C98, 0xD5B3, 0x7C99, 0xBB8B, 0x7C9A, 0xBB8C,
- 0x7C9B, 0xBB8D, 0x7C9C, 0xF4D0, 0x7C9D, 0xF4CF, 0x7C9E, 0xF4D1,
- 0x7C9F, 0xCBDA, 0x7CA0, 0xBB8E, 0x7CA1, 0xBB8F, 0x7CA2, 0xF4D2,
- 0x7CA3, 0xBB90, 0x7CA4, 0xD4C1, 0x7CA5, 0xD6E0, 0x7CA6, 0xBB91,
- 0x7CA7, 0xBB92, 0x7CA8, 0xBB93, 0x7CA9, 0xBB94, 0x7CAA, 0xB7E0,
- 0x7CAB, 0xBB95, 0x7CAC, 0xBB96, 0x7CAD, 0xBB97, 0x7CAE, 0xC1B8,
- 0x7CAF, 0xBB98, 0x7CB0, 0xBB99, 0x7CB1, 0xC1BB, 0x7CB2, 0xF4D3,
- 0x7CB3, 0xBEAC, 0x7CB4, 0xBB9A, 0x7CB5, 0xBB9B, 0x7CB6, 0xBB9C,
- 0x7CB7, 0xBB9D, 0x7CB8, 0xBB9E, 0x7CB9, 0xB4E2, 0x7CBA, 0xBB9F,
- 0x7CBB, 0xBBA0, 0x7CBC, 0xF4D4, 0x7CBD, 0xF4D5, 0x7CBE, 0xBEAB,
- 0x7CBF, 0xBC40, 0x7CC0, 0xBC41, 0x7CC1, 0xF4D6, 0x7CC2, 0xBC42,
- 0x7CC3, 0xBC43, 0x7CC4, 0xBC44, 0x7CC5, 0xF4DB, 0x7CC6, 0xBC45,
- 0x7CC7, 0xF4D7, 0x7CC8, 0xF4DA, 0x7CC9, 0xBC46, 0x7CCA, 0xBAFD,
- 0x7CCB, 0xBC47, 0x7CCC, 0xF4D8, 0x7CCD, 0xF4D9, 0x7CCE, 0xBC48,
- 0x7CCF, 0xBC49, 0x7CD0, 0xBC4A, 0x7CD1, 0xBC4B, 0x7CD2, 0xBC4C,
- 0x7CD3, 0xBC4D, 0x7CD4, 0xBC4E, 0x7CD5, 0xB8E2, 0x7CD6, 0xCCC7,
- 0x7CD7, 0xF4DC, 0x7CD8, 0xBC4F, 0x7CD9, 0xB2DA, 0x7CDA, 0xBC50,
- 0x7CDB, 0xBC51, 0x7CDC, 0xC3D3, 0x7CDD, 0xBC52, 0x7CDE, 0xBC53,
- 0x7CDF, 0xD4E3, 0x7CE0, 0xBFB7, 0x7CE1, 0xBC54, 0x7CE2, 0xBC55,
- 0x7CE3, 0xBC56, 0x7CE4, 0xBC57, 0x7CE5, 0xBC58, 0x7CE6, 0xBC59,
- 0x7CE7, 0xBC5A, 0x7CE8, 0xF4DD, 0x7CE9, 0xBC5B, 0x7CEA, 0xBC5C,
- 0x7CEB, 0xBC5D, 0x7CEC, 0xBC5E, 0x7CED, 0xBC5F, 0x7CEE, 0xBC60,
- 0x7CEF, 0xC5B4, 0x7CF0, 0xBC61, 0x7CF1, 0xBC62, 0x7CF2, 0xBC63,
- 0x7CF3, 0xBC64, 0x7CF4, 0xBC65, 0x7CF5, 0xBC66, 0x7CF6, 0xBC67,
- 0x7CF7, 0xBC68, 0x7CF8, 0xF4E9, 0x7CF9, 0xBC69, 0x7CFA, 0xBC6A,
- 0x7CFB, 0xCFB5, 0x7CFC, 0xBC6B, 0x7CFD, 0xBC6C, 0x7CFE, 0xBC6D,
- 0x7CFF, 0xBC6E, 0x7D00, 0xBC6F, 0x7D01, 0xBC70, 0x7D02, 0xBC71,
- 0x7D03, 0xBC72, 0x7D04, 0xBC73, 0x7D05, 0xBC74, 0x7D06, 0xBC75,
- 0x7D07, 0xBC76, 0x7D08, 0xBC77, 0x7D09, 0xBC78, 0x7D0A, 0xCEC9,
- 0x7D0B, 0xBC79, 0x7D0C, 0xBC7A, 0x7D0D, 0xBC7B, 0x7D0E, 0xBC7C,
- 0x7D0F, 0xBC7D, 0x7D10, 0xBC7E, 0x7D11, 0xBC80, 0x7D12, 0xBC81,
- 0x7D13, 0xBC82, 0x7D14, 0xBC83, 0x7D15, 0xBC84, 0x7D16, 0xBC85,
- 0x7D17, 0xBC86, 0x7D18, 0xBC87, 0x7D19, 0xBC88, 0x7D1A, 0xBC89,
- 0x7D1B, 0xBC8A, 0x7D1C, 0xBC8B, 0x7D1D, 0xBC8C, 0x7D1E, 0xBC8D,
- 0x7D1F, 0xBC8E, 0x7D20, 0xCBD8, 0x7D21, 0xBC8F, 0x7D22, 0xCBF7,
- 0x7D23, 0xBC90, 0x7D24, 0xBC91, 0x7D25, 0xBC92, 0x7D26, 0xBC93,
- 0x7D27, 0xBDF4, 0x7D28, 0xBC94, 0x7D29, 0xBC95, 0x7D2A, 0xBC96,
- 0x7D2B, 0xD7CF, 0x7D2C, 0xBC97, 0x7D2D, 0xBC98, 0x7D2E, 0xBC99,
- 0x7D2F, 0xC0DB, 0x7D30, 0xBC9A, 0x7D31, 0xBC9B, 0x7D32, 0xBC9C,
- 0x7D33, 0xBC9D, 0x7D34, 0xBC9E, 0x7D35, 0xBC9F, 0x7D36, 0xBCA0,
- 0x7D37, 0xBD40, 0x7D38, 0xBD41, 0x7D39, 0xBD42, 0x7D3A, 0xBD43,
- 0x7D3B, 0xBD44, 0x7D3C, 0xBD45, 0x7D3D, 0xBD46, 0x7D3E, 0xBD47,
- 0x7D3F, 0xBD48, 0x7D40, 0xBD49, 0x7D41, 0xBD4A, 0x7D42, 0xBD4B,
- 0x7D43, 0xBD4C, 0x7D44, 0xBD4D, 0x7D45, 0xBD4E, 0x7D46, 0xBD4F,
- 0x7D47, 0xBD50, 0x7D48, 0xBD51, 0x7D49, 0xBD52, 0x7D4A, 0xBD53,
- 0x7D4B, 0xBD54, 0x7D4C, 0xBD55, 0x7D4D, 0xBD56, 0x7D4E, 0xBD57,
- 0x7D4F, 0xBD58, 0x7D50, 0xBD59, 0x7D51, 0xBD5A, 0x7D52, 0xBD5B,
- 0x7D53, 0xBD5C, 0x7D54, 0xBD5D, 0x7D55, 0xBD5E, 0x7D56, 0xBD5F,
- 0x7D57, 0xBD60, 0x7D58, 0xBD61, 0x7D59, 0xBD62, 0x7D5A, 0xBD63,
- 0x7D5B, 0xBD64, 0x7D5C, 0xBD65, 0x7D5D, 0xBD66, 0x7D5E, 0xBD67,
- 0x7D5F, 0xBD68, 0x7D60, 0xBD69, 0x7D61, 0xBD6A, 0x7D62, 0xBD6B,
- 0x7D63, 0xBD6C, 0x7D64, 0xBD6D, 0x7D65, 0xBD6E, 0x7D66, 0xBD6F,
- 0x7D67, 0xBD70, 0x7D68, 0xBD71, 0x7D69, 0xBD72, 0x7D6A, 0xBD73,
- 0x7D6B, 0xBD74, 0x7D6C, 0xBD75, 0x7D6D, 0xBD76, 0x7D6E, 0xD0F5,
- 0x7D6F, 0xBD77, 0x7D70, 0xBD78, 0x7D71, 0xBD79, 0x7D72, 0xBD7A,
- 0x7D73, 0xBD7B, 0x7D74, 0xBD7C, 0x7D75, 0xBD7D, 0x7D76, 0xBD7E,
- 0x7D77, 0xF4EA, 0x7D78, 0xBD80, 0x7D79, 0xBD81, 0x7D7A, 0xBD82,
- 0x7D7B, 0xBD83, 0x7D7C, 0xBD84, 0x7D7D, 0xBD85, 0x7D7E, 0xBD86,
- 0x7D7F, 0xBD87, 0x7D80, 0xBD88, 0x7D81, 0xBD89, 0x7D82, 0xBD8A,
- 0x7D83, 0xBD8B, 0x7D84, 0xBD8C, 0x7D85, 0xBD8D, 0x7D86, 0xBD8E,
- 0x7D87, 0xBD8F, 0x7D88, 0xBD90, 0x7D89, 0xBD91, 0x7D8A, 0xBD92,
- 0x7D8B, 0xBD93, 0x7D8C, 0xBD94, 0x7D8D, 0xBD95, 0x7D8E, 0xBD96,
- 0x7D8F, 0xBD97, 0x7D90, 0xBD98, 0x7D91, 0xBD99, 0x7D92, 0xBD9A,
- 0x7D93, 0xBD9B, 0x7D94, 0xBD9C, 0x7D95, 0xBD9D, 0x7D96, 0xBD9E,
- 0x7D97, 0xBD9F, 0x7D98, 0xBDA0, 0x7D99, 0xBE40, 0x7D9A, 0xBE41,
- 0x7D9B, 0xBE42, 0x7D9C, 0xBE43, 0x7D9D, 0xBE44, 0x7D9E, 0xBE45,
- 0x7D9F, 0xBE46, 0x7DA0, 0xBE47, 0x7DA1, 0xBE48, 0x7DA2, 0xBE49,
- 0x7DA3, 0xBE4A, 0x7DA4, 0xBE4B, 0x7DA5, 0xBE4C, 0x7DA6, 0xF4EB,
- 0x7DA7, 0xBE4D, 0x7DA8, 0xBE4E, 0x7DA9, 0xBE4F, 0x7DAA, 0xBE50,
- 0x7DAB, 0xBE51, 0x7DAC, 0xBE52, 0x7DAD, 0xBE53, 0x7DAE, 0xF4EC,
- 0x7DAF, 0xBE54, 0x7DB0, 0xBE55, 0x7DB1, 0xBE56, 0x7DB2, 0xBE57,
- 0x7DB3, 0xBE58, 0x7DB4, 0xBE59, 0x7DB5, 0xBE5A, 0x7DB6, 0xBE5B,
- 0x7DB7, 0xBE5C, 0x7DB8, 0xBE5D, 0x7DB9, 0xBE5E, 0x7DBA, 0xBE5F,
- 0x7DBB, 0xBE60, 0x7DBC, 0xBE61, 0x7DBD, 0xBE62, 0x7DBE, 0xBE63,
- 0x7DBF, 0xBE64, 0x7DC0, 0xBE65, 0x7DC1, 0xBE66, 0x7DC2, 0xBE67,
- 0x7DC3, 0xBE68, 0x7DC4, 0xBE69, 0x7DC5, 0xBE6A, 0x7DC6, 0xBE6B,
- 0x7DC7, 0xBE6C, 0x7DC8, 0xBE6D, 0x7DC9, 0xBE6E, 0x7DCA, 0xBE6F,
- 0x7DCB, 0xBE70, 0x7DCC, 0xBE71, 0x7DCD, 0xBE72, 0x7DCE, 0xBE73,
- 0x7DCF, 0xBE74, 0x7DD0, 0xBE75, 0x7DD1, 0xBE76, 0x7DD2, 0xBE77,
- 0x7DD3, 0xBE78, 0x7DD4, 0xBE79, 0x7DD5, 0xBE7A, 0x7DD6, 0xBE7B,
- 0x7DD7, 0xBE7C, 0x7DD8, 0xBE7D, 0x7DD9, 0xBE7E, 0x7DDA, 0xBE80,
- 0x7DDB, 0xBE81, 0x7DDC, 0xBE82, 0x7DDD, 0xBE83, 0x7DDE, 0xBE84,
- 0x7DDF, 0xBE85, 0x7DE0, 0xBE86, 0x7DE1, 0xBE87, 0x7DE2, 0xBE88,
- 0x7DE3, 0xBE89, 0x7DE4, 0xBE8A, 0x7DE5, 0xBE8B, 0x7DE6, 0xBE8C,
- 0x7DE7, 0xBE8D, 0x7DE8, 0xBE8E, 0x7DE9, 0xBE8F, 0x7DEA, 0xBE90,
- 0x7DEB, 0xBE91, 0x7DEC, 0xBE92, 0x7DED, 0xBE93, 0x7DEE, 0xBE94,
- 0x7DEF, 0xBE95, 0x7DF0, 0xBE96, 0x7DF1, 0xBE97, 0x7DF2, 0xBE98,
- 0x7DF3, 0xBE99, 0x7DF4, 0xBE9A, 0x7DF5, 0xBE9B, 0x7DF6, 0xBE9C,
- 0x7DF7, 0xBE9D, 0x7DF8, 0xBE9E, 0x7DF9, 0xBE9F, 0x7DFA, 0xBEA0,
- 0x7DFB, 0xBF40, 0x7DFC, 0xBF41, 0x7DFD, 0xBF42, 0x7DFE, 0xBF43,
- 0x7DFF, 0xBF44, 0x7E00, 0xBF45, 0x7E01, 0xBF46, 0x7E02, 0xBF47,
- 0x7E03, 0xBF48, 0x7E04, 0xBF49, 0x7E05, 0xBF4A, 0x7E06, 0xBF4B,
- 0x7E07, 0xBF4C, 0x7E08, 0xBF4D, 0x7E09, 0xBF4E, 0x7E0A, 0xBF4F,
- 0x7E0B, 0xBF50, 0x7E0C, 0xBF51, 0x7E0D, 0xBF52, 0x7E0E, 0xBF53,
- 0x7E0F, 0xBF54, 0x7E10, 0xBF55, 0x7E11, 0xBF56, 0x7E12, 0xBF57,
- 0x7E13, 0xBF58, 0x7E14, 0xBF59, 0x7E15, 0xBF5A, 0x7E16, 0xBF5B,
- 0x7E17, 0xBF5C, 0x7E18, 0xBF5D, 0x7E19, 0xBF5E, 0x7E1A, 0xBF5F,
- 0x7E1B, 0xBF60, 0x7E1C, 0xBF61, 0x7E1D, 0xBF62, 0x7E1E, 0xBF63,
- 0x7E1F, 0xBF64, 0x7E20, 0xBF65, 0x7E21, 0xBF66, 0x7E22, 0xBF67,
- 0x7E23, 0xBF68, 0x7E24, 0xBF69, 0x7E25, 0xBF6A, 0x7E26, 0xBF6B,
- 0x7E27, 0xBF6C, 0x7E28, 0xBF6D, 0x7E29, 0xBF6E, 0x7E2A, 0xBF6F,
- 0x7E2B, 0xBF70, 0x7E2C, 0xBF71, 0x7E2D, 0xBF72, 0x7E2E, 0xBF73,
- 0x7E2F, 0xBF74, 0x7E30, 0xBF75, 0x7E31, 0xBF76, 0x7E32, 0xBF77,
- 0x7E33, 0xBF78, 0x7E34, 0xBF79, 0x7E35, 0xBF7A, 0x7E36, 0xBF7B,
- 0x7E37, 0xBF7C, 0x7E38, 0xBF7D, 0x7E39, 0xBF7E, 0x7E3A, 0xBF80,
- 0x7E3B, 0xF7E3, 0x7E3C, 0xBF81, 0x7E3D, 0xBF82, 0x7E3E, 0xBF83,
- 0x7E3F, 0xBF84, 0x7E40, 0xBF85, 0x7E41, 0xB7B1, 0x7E42, 0xBF86,
- 0x7E43, 0xBF87, 0x7E44, 0xBF88, 0x7E45, 0xBF89, 0x7E46, 0xBF8A,
- 0x7E47, 0xF4ED, 0x7E48, 0xBF8B, 0x7E49, 0xBF8C, 0x7E4A, 0xBF8D,
- 0x7E4B, 0xBF8E, 0x7E4C, 0xBF8F, 0x7E4D, 0xBF90, 0x7E4E, 0xBF91,
- 0x7E4F, 0xBF92, 0x7E50, 0xBF93, 0x7E51, 0xBF94, 0x7E52, 0xBF95,
- 0x7E53, 0xBF96, 0x7E54, 0xBF97, 0x7E55, 0xBF98, 0x7E56, 0xBF99,
- 0x7E57, 0xBF9A, 0x7E58, 0xBF9B, 0x7E59, 0xBF9C, 0x7E5A, 0xBF9D,
- 0x7E5B, 0xBF9E, 0x7E5C, 0xBF9F, 0x7E5D, 0xBFA0, 0x7E5E, 0xC040,
- 0x7E5F, 0xC041, 0x7E60, 0xC042, 0x7E61, 0xC043, 0x7E62, 0xC044,
- 0x7E63, 0xC045, 0x7E64, 0xC046, 0x7E65, 0xC047, 0x7E66, 0xC048,
- 0x7E67, 0xC049, 0x7E68, 0xC04A, 0x7E69, 0xC04B, 0x7E6A, 0xC04C,
- 0x7E6B, 0xC04D, 0x7E6C, 0xC04E, 0x7E6D, 0xC04F, 0x7E6E, 0xC050,
- 0x7E6F, 0xC051, 0x7E70, 0xC052, 0x7E71, 0xC053, 0x7E72, 0xC054,
- 0x7E73, 0xC055, 0x7E74, 0xC056, 0x7E75, 0xC057, 0x7E76, 0xC058,
- 0x7E77, 0xC059, 0x7E78, 0xC05A, 0x7E79, 0xC05B, 0x7E7A, 0xC05C,
- 0x7E7B, 0xC05D, 0x7E7C, 0xC05E, 0x7E7D, 0xC05F, 0x7E7E, 0xC060,
- 0x7E7F, 0xC061, 0x7E80, 0xC062, 0x7E81, 0xC063, 0x7E82, 0xD7EB,
- 0x7E83, 0xC064, 0x7E84, 0xC065, 0x7E85, 0xC066, 0x7E86, 0xC067,
- 0x7E87, 0xC068, 0x7E88, 0xC069, 0x7E89, 0xC06A, 0x7E8A, 0xC06B,
- 0x7E8B, 0xC06C, 0x7E8C, 0xC06D, 0x7E8D, 0xC06E, 0x7E8E, 0xC06F,
- 0x7E8F, 0xC070, 0x7E90, 0xC071, 0x7E91, 0xC072, 0x7E92, 0xC073,
- 0x7E93, 0xC074, 0x7E94, 0xC075, 0x7E95, 0xC076, 0x7E96, 0xC077,
- 0x7E97, 0xC078, 0x7E98, 0xC079, 0x7E99, 0xC07A, 0x7E9A, 0xC07B,
- 0x7E9B, 0xF4EE, 0x7E9C, 0xC07C, 0x7E9D, 0xC07D, 0x7E9E, 0xC07E,
- 0x7E9F, 0xE6F9, 0x7EA0, 0xBEC0, 0x7EA1, 0xE6FA, 0x7EA2, 0xBAEC,
- 0x7EA3, 0xE6FB, 0x7EA4, 0xCFCB, 0x7EA5, 0xE6FC, 0x7EA6, 0xD4BC,
- 0x7EA7, 0xBCB6, 0x7EA8, 0xE6FD, 0x7EA9, 0xE6FE, 0x7EAA, 0xBCCD,
- 0x7EAB, 0xC8D2, 0x7EAC, 0xCEB3, 0x7EAD, 0xE7A1, 0x7EAE, 0xC080,
- 0x7EAF, 0xB4BF, 0x7EB0, 0xE7A2, 0x7EB1, 0xC9B4, 0x7EB2, 0xB8D9,
- 0x7EB3, 0xC4C9, 0x7EB4, 0xC081, 0x7EB5, 0xD7DD, 0x7EB6, 0xC2DA,
- 0x7EB7, 0xB7D7, 0x7EB8, 0xD6BD, 0x7EB9, 0xCEC6, 0x7EBA, 0xB7C4,
- 0x7EBB, 0xC082, 0x7EBC, 0xC083, 0x7EBD, 0xC5A6, 0x7EBE, 0xE7A3,
- 0x7EBF, 0xCFDF, 0x7EC0, 0xE7A4, 0x7EC1, 0xE7A5, 0x7EC2, 0xE7A6,
- 0x7EC3, 0xC1B7, 0x7EC4, 0xD7E9, 0x7EC5, 0xC9F0, 0x7EC6, 0xCFB8,
- 0x7EC7, 0xD6AF, 0x7EC8, 0xD6D5, 0x7EC9, 0xE7A7, 0x7ECA, 0xB0ED,
- 0x7ECB, 0xE7A8, 0x7ECC, 0xE7A9, 0x7ECD, 0xC9DC, 0x7ECE, 0xD2EF,
- 0x7ECF, 0xBEAD, 0x7ED0, 0xE7AA, 0x7ED1, 0xB0F3, 0x7ED2, 0xC8DE,
- 0x7ED3, 0xBDE1, 0x7ED4, 0xE7AB, 0x7ED5, 0xC8C6, 0x7ED6, 0xC084,
- 0x7ED7, 0xE7AC, 0x7ED8, 0xBBE6, 0x7ED9, 0xB8F8, 0x7EDA, 0xD1A4,
- 0x7EDB, 0xE7AD, 0x7EDC, 0xC2E7, 0x7EDD, 0xBEF8, 0x7EDE, 0xBDCA,
- 0x7EDF, 0xCDB3, 0x7EE0, 0xE7AE, 0x7EE1, 0xE7AF, 0x7EE2, 0xBEEE,
- 0x7EE3, 0xD0E5, 0x7EE4, 0xC085, 0x7EE5, 0xCBE7, 0x7EE6, 0xCCD0,
- 0x7EE7, 0xBCCC, 0x7EE8, 0xE7B0, 0x7EE9, 0xBCA8, 0x7EEA, 0xD0F7,
- 0x7EEB, 0xE7B1, 0x7EEC, 0xC086, 0x7EED, 0xD0F8, 0x7EEE, 0xE7B2,
- 0x7EEF, 0xE7B3, 0x7EF0, 0xB4C2, 0x7EF1, 0xE7B4, 0x7EF2, 0xE7B5,
- 0x7EF3, 0xC9FE, 0x7EF4, 0xCEAC, 0x7EF5, 0xC3E0, 0x7EF6, 0xE7B7,
- 0x7EF7, 0xB1C1, 0x7EF8, 0xB3F1, 0x7EF9, 0xC087, 0x7EFA, 0xE7B8,
- 0x7EFB, 0xE7B9, 0x7EFC, 0xD7DB, 0x7EFD, 0xD5C0, 0x7EFE, 0xE7BA,
- 0x7EFF, 0xC2CC, 0x7F00, 0xD7BA, 0x7F01, 0xE7BB, 0x7F02, 0xE7BC,
- 0x7F03, 0xE7BD, 0x7F04, 0xBCEA, 0x7F05, 0xC3E5, 0x7F06, 0xC0C2,
- 0x7F07, 0xE7BE, 0x7F08, 0xE7BF, 0x7F09, 0xBCA9, 0x7F0A, 0xC088,
- 0x7F0B, 0xE7C0, 0x7F0C, 0xE7C1, 0x7F0D, 0xE7B6, 0x7F0E, 0xB6D0,
- 0x7F0F, 0xE7C2, 0x7F10, 0xC089, 0x7F11, 0xE7C3, 0x7F12, 0xE7C4,
- 0x7F13, 0xBBBA, 0x7F14, 0xB5DE, 0x7F15, 0xC2C6, 0x7F16, 0xB1E0,
- 0x7F17, 0xE7C5, 0x7F18, 0xD4B5, 0x7F19, 0xE7C6, 0x7F1A, 0xB8BF,
- 0x7F1B, 0xE7C8, 0x7F1C, 0xE7C7, 0x7F1D, 0xB7EC, 0x7F1E, 0xC08A,
- 0x7F1F, 0xE7C9, 0x7F20, 0xB2F8, 0x7F21, 0xE7CA, 0x7F22, 0xE7CB,
- 0x7F23, 0xE7CC, 0x7F24, 0xE7CD, 0x7F25, 0xE7CE, 0x7F26, 0xE7CF,
- 0x7F27, 0xE7D0, 0x7F28, 0xD3A7, 0x7F29, 0xCBF5, 0x7F2A, 0xE7D1,
- 0x7F2B, 0xE7D2, 0x7F2C, 0xE7D3, 0x7F2D, 0xE7D4, 0x7F2E, 0xC9C9,
- 0x7F2F, 0xE7D5, 0x7F30, 0xE7D6, 0x7F31, 0xE7D7, 0x7F32, 0xE7D8,
- 0x7F33, 0xE7D9, 0x7F34, 0xBDC9, 0x7F35, 0xE7DA, 0x7F36, 0xF3BE,
- 0x7F37, 0xC08B, 0x7F38, 0xB8D7, 0x7F39, 0xC08C, 0x7F3A, 0xC8B1,
- 0x7F3B, 0xC08D, 0x7F3C, 0xC08E, 0x7F3D, 0xC08F, 0x7F3E, 0xC090,
- 0x7F3F, 0xC091, 0x7F40, 0xC092, 0x7F41, 0xC093, 0x7F42, 0xF3BF,
- 0x7F43, 0xC094, 0x7F44, 0xF3C0, 0x7F45, 0xF3C1, 0x7F46, 0xC095,
- 0x7F47, 0xC096, 0x7F48, 0xC097, 0x7F49, 0xC098, 0x7F4A, 0xC099,
- 0x7F4B, 0xC09A, 0x7F4C, 0xC09B, 0x7F4D, 0xC09C, 0x7F4E, 0xC09D,
- 0x7F4F, 0xC09E, 0x7F50, 0xB9DE, 0x7F51, 0xCDF8, 0x7F52, 0xC09F,
- 0x7F53, 0xC0A0, 0x7F54, 0xD8E8, 0x7F55, 0xBAB1, 0x7F56, 0xC140,
- 0x7F57, 0xC2DE, 0x7F58, 0xEEB7, 0x7F59, 0xC141, 0x7F5A, 0xB7A3,
- 0x7F5B, 0xC142, 0x7F5C, 0xC143, 0x7F5D, 0xC144, 0x7F5E, 0xC145,
- 0x7F5F, 0xEEB9, 0x7F60, 0xC146, 0x7F61, 0xEEB8, 0x7F62, 0xB0D5,
- 0x7F63, 0xC147, 0x7F64, 0xC148, 0x7F65, 0xC149, 0x7F66, 0xC14A,
- 0x7F67, 0xC14B, 0x7F68, 0xEEBB, 0x7F69, 0xD5D6, 0x7F6A, 0xD7EF,
- 0x7F6B, 0xC14C, 0x7F6C, 0xC14D, 0x7F6D, 0xC14E, 0x7F6E, 0xD6C3,
- 0x7F6F, 0xC14F, 0x7F70, 0xC150, 0x7F71, 0xEEBD, 0x7F72, 0xCAF0,
- 0x7F73, 0xC151, 0x7F74, 0xEEBC, 0x7F75, 0xC152, 0x7F76, 0xC153,
- 0x7F77, 0xC154, 0x7F78, 0xC155, 0x7F79, 0xEEBE, 0x7F7A, 0xC156,
- 0x7F7B, 0xC157, 0x7F7C, 0xC158, 0x7F7D, 0xC159, 0x7F7E, 0xEEC0,
- 0x7F7F, 0xC15A, 0x7F80, 0xC15B, 0x7F81, 0xEEBF, 0x7F82, 0xC15C,
- 0x7F83, 0xC15D, 0x7F84, 0xC15E, 0x7F85, 0xC15F, 0x7F86, 0xC160,
- 0x7F87, 0xC161, 0x7F88, 0xC162, 0x7F89, 0xC163, 0x7F8A, 0xD1F2,
- 0x7F8B, 0xC164, 0x7F8C, 0xC7BC, 0x7F8D, 0xC165, 0x7F8E, 0xC3C0,
- 0x7F8F, 0xC166, 0x7F90, 0xC167, 0x7F91, 0xC168, 0x7F92, 0xC169,
- 0x7F93, 0xC16A, 0x7F94, 0xB8E1, 0x7F95, 0xC16B, 0x7F96, 0xC16C,
- 0x7F97, 0xC16D, 0x7F98, 0xC16E, 0x7F99, 0xC16F, 0x7F9A, 0xC1E7,
- 0x7F9B, 0xC170, 0x7F9C, 0xC171, 0x7F9D, 0xF4C6, 0x7F9E, 0xD0DF,
- 0x7F9F, 0xF4C7, 0x7FA0, 0xC172, 0x7FA1, 0xCFDB, 0x7FA2, 0xC173,
- 0x7FA3, 0xC174, 0x7FA4, 0xC8BA, 0x7FA5, 0xC175, 0x7FA6, 0xC176,
- 0x7FA7, 0xF4C8, 0x7FA8, 0xC177, 0x7FA9, 0xC178, 0x7FAA, 0xC179,
- 0x7FAB, 0xC17A, 0x7FAC, 0xC17B, 0x7FAD, 0xC17C, 0x7FAE, 0xC17D,
- 0x7FAF, 0xF4C9, 0x7FB0, 0xF4CA, 0x7FB1, 0xC17E, 0x7FB2, 0xF4CB,
- 0x7FB3, 0xC180, 0x7FB4, 0xC181, 0x7FB5, 0xC182, 0x7FB6, 0xC183,
- 0x7FB7, 0xC184, 0x7FB8, 0xD9FA, 0x7FB9, 0xB8FE, 0x7FBA, 0xC185,
- 0x7FBB, 0xC186, 0x7FBC, 0xE5F1, 0x7FBD, 0xD3F0, 0x7FBE, 0xC187,
- 0x7FBF, 0xF4E0, 0x7FC0, 0xC188, 0x7FC1, 0xCECC, 0x7FC2, 0xC189,
- 0x7FC3, 0xC18A, 0x7FC4, 0xC18B, 0x7FC5, 0xB3E1, 0x7FC6, 0xC18C,
- 0x7FC7, 0xC18D, 0x7FC8, 0xC18E, 0x7FC9, 0xC18F, 0x7FCA, 0xF1B4,
- 0x7FCB, 0xC190, 0x7FCC, 0xD2EE, 0x7FCD, 0xC191, 0x7FCE, 0xF4E1,
- 0x7FCF, 0xC192, 0x7FD0, 0xC193, 0x7FD1, 0xC194, 0x7FD2, 0xC195,
- 0x7FD3, 0xC196, 0x7FD4, 0xCFE8, 0x7FD5, 0xF4E2, 0x7FD6, 0xC197,
- 0x7FD7, 0xC198, 0x7FD8, 0xC7CC, 0x7FD9, 0xC199, 0x7FDA, 0xC19A,
- 0x7FDB, 0xC19B, 0x7FDC, 0xC19C, 0x7FDD, 0xC19D, 0x7FDE, 0xC19E,
- 0x7FDF, 0xB5D4, 0x7FE0, 0xB4E4, 0x7FE1, 0xF4E4, 0x7FE2, 0xC19F,
- 0x7FE3, 0xC1A0, 0x7FE4, 0xC240, 0x7FE5, 0xF4E3, 0x7FE6, 0xF4E5,
- 0x7FE7, 0xC241, 0x7FE8, 0xC242, 0x7FE9, 0xF4E6, 0x7FEA, 0xC243,
- 0x7FEB, 0xC244, 0x7FEC, 0xC245, 0x7FED, 0xC246, 0x7FEE, 0xF4E7,
- 0x7FEF, 0xC247, 0x7FF0, 0xBAB2, 0x7FF1, 0xB0BF, 0x7FF2, 0xC248,
- 0x7FF3, 0xF4E8, 0x7FF4, 0xC249, 0x7FF5, 0xC24A, 0x7FF6, 0xC24B,
- 0x7FF7, 0xC24C, 0x7FF8, 0xC24D, 0x7FF9, 0xC24E, 0x7FFA, 0xC24F,
- 0x7FFB, 0xB7AD, 0x7FFC, 0xD2ED, 0x7FFD, 0xC250, 0x7FFE, 0xC251,
- 0x7FFF, 0xC252, 0x8000, 0xD2AB, 0x8001, 0xC0CF, 0x8002, 0xC253,
- 0x8003, 0xBFBC, 0x8004, 0xEBA3, 0x8005, 0xD5DF, 0x8006, 0xEAC8,
- 0x8007, 0xC254, 0x8008, 0xC255, 0x8009, 0xC256, 0x800A, 0xC257,
- 0x800B, 0xF1F3, 0x800C, 0xB6F8, 0x800D, 0xCBA3, 0x800E, 0xC258,
- 0x800F, 0xC259, 0x8010, 0xC4CD, 0x8011, 0xC25A, 0x8012, 0xF1E7,
- 0x8013, 0xC25B, 0x8014, 0xF1E8, 0x8015, 0xB8FB, 0x8016, 0xF1E9,
- 0x8017, 0xBAC4, 0x8018, 0xD4C5, 0x8019, 0xB0D2, 0x801A, 0xC25C,
- 0x801B, 0xC25D, 0x801C, 0xF1EA, 0x801D, 0xC25E, 0x801E, 0xC25F,
- 0x801F, 0xC260, 0x8020, 0xF1EB, 0x8021, 0xC261, 0x8022, 0xF1EC,
- 0x8023, 0xC262, 0x8024, 0xC263, 0x8025, 0xF1ED, 0x8026, 0xF1EE,
- 0x8027, 0xF1EF, 0x8028, 0xF1F1, 0x8029, 0xF1F0, 0x802A, 0xC5D5,
- 0x802B, 0xC264, 0x802C, 0xC265, 0x802D, 0xC266, 0x802E, 0xC267,
- 0x802F, 0xC268, 0x8030, 0xC269, 0x8031, 0xF1F2, 0x8032, 0xC26A,
- 0x8033, 0xB6FA, 0x8034, 0xC26B, 0x8035, 0xF1F4, 0x8036, 0xD2AE,
- 0x8037, 0xDEC7, 0x8038, 0xCBCA, 0x8039, 0xC26C, 0x803A, 0xC26D,
- 0x803B, 0xB3DC, 0x803C, 0xC26E, 0x803D, 0xB5A2, 0x803E, 0xC26F,
- 0x803F, 0xB9A2, 0x8040, 0xC270, 0x8041, 0xC271, 0x8042, 0xC4F4,
- 0x8043, 0xF1F5, 0x8044, 0xC272, 0x8045, 0xC273, 0x8046, 0xF1F6,
- 0x8047, 0xC274, 0x8048, 0xC275, 0x8049, 0xC276, 0x804A, 0xC1C4,
- 0x804B, 0xC1FB, 0x804C, 0xD6B0, 0x804D, 0xF1F7, 0x804E, 0xC277,
- 0x804F, 0xC278, 0x8050, 0xC279, 0x8051, 0xC27A, 0x8052, 0xF1F8,
- 0x8053, 0xC27B, 0x8054, 0xC1AA, 0x8055, 0xC27C, 0x8056, 0xC27D,
- 0x8057, 0xC27E, 0x8058, 0xC6B8, 0x8059, 0xC280, 0x805A, 0xBEDB,
- 0x805B, 0xC281, 0x805C, 0xC282, 0x805D, 0xC283, 0x805E, 0xC284,
- 0x805F, 0xC285, 0x8060, 0xC286, 0x8061, 0xC287, 0x8062, 0xC288,
- 0x8063, 0xC289, 0x8064, 0xC28A, 0x8065, 0xC28B, 0x8066, 0xC28C,
- 0x8067, 0xC28D, 0x8068, 0xC28E, 0x8069, 0xF1F9, 0x806A, 0xB4CF,
- 0x806B, 0xC28F, 0x806C, 0xC290, 0x806D, 0xC291, 0x806E, 0xC292,
- 0x806F, 0xC293, 0x8070, 0xC294, 0x8071, 0xF1FA, 0x8072, 0xC295,
- 0x8073, 0xC296, 0x8074, 0xC297, 0x8075, 0xC298, 0x8076, 0xC299,
- 0x8077, 0xC29A, 0x8078, 0xC29B, 0x8079, 0xC29C, 0x807A, 0xC29D,
- 0x807B, 0xC29E, 0x807C, 0xC29F, 0x807D, 0xC2A0, 0x807E, 0xC340,
- 0x807F, 0xEDB2, 0x8080, 0xEDB1, 0x8081, 0xC341, 0x8082, 0xC342,
- 0x8083, 0xCBE0, 0x8084, 0xD2DE, 0x8085, 0xC343, 0x8086, 0xCBC1,
- 0x8087, 0xD5D8, 0x8088, 0xC344, 0x8089, 0xC8E2, 0x808A, 0xC345,
- 0x808B, 0xC0DF, 0x808C, 0xBCA1, 0x808D, 0xC346, 0x808E, 0xC347,
- 0x808F, 0xC348, 0x8090, 0xC349, 0x8091, 0xC34A, 0x8092, 0xC34B,
- 0x8093, 0xEBC1, 0x8094, 0xC34C, 0x8095, 0xC34D, 0x8096, 0xD0A4,
- 0x8097, 0xC34E, 0x8098, 0xD6E2, 0x8099, 0xC34F, 0x809A, 0xB6C7,
- 0x809B, 0xB8D8, 0x809C, 0xEBC0, 0x809D, 0xB8CE, 0x809E, 0xC350,
- 0x809F, 0xEBBF, 0x80A0, 0xB3A6, 0x80A1, 0xB9C9, 0x80A2, 0xD6AB,
- 0x80A3, 0xC351, 0x80A4, 0xB7F4, 0x80A5, 0xB7CA, 0x80A6, 0xC352,
- 0x80A7, 0xC353, 0x80A8, 0xC354, 0x80A9, 0xBCE7, 0x80AA, 0xB7BE,
- 0x80AB, 0xEBC6, 0x80AC, 0xC355, 0x80AD, 0xEBC7, 0x80AE, 0xB0B9,
- 0x80AF, 0xBFCF, 0x80B0, 0xC356, 0x80B1, 0xEBC5, 0x80B2, 0xD3FD,
- 0x80B3, 0xC357, 0x80B4, 0xEBC8, 0x80B5, 0xC358, 0x80B6, 0xC359,
- 0x80B7, 0xEBC9, 0x80B8, 0xC35A, 0x80B9, 0xC35B, 0x80BA, 0xB7CE,
- 0x80BB, 0xC35C, 0x80BC, 0xEBC2, 0x80BD, 0xEBC4, 0x80BE, 0xC9F6,
- 0x80BF, 0xD6D7, 0x80C0, 0xD5CD, 0x80C1, 0xD0B2, 0x80C2, 0xEBCF,
- 0x80C3, 0xCEB8, 0x80C4, 0xEBD0, 0x80C5, 0xC35D, 0x80C6, 0xB5A8,
- 0x80C7, 0xC35E, 0x80C8, 0xC35F, 0x80C9, 0xC360, 0x80CA, 0xC361,
- 0x80CB, 0xC362, 0x80CC, 0xB1B3, 0x80CD, 0xEBD2, 0x80CE, 0xCCA5,
- 0x80CF, 0xC363, 0x80D0, 0xC364, 0x80D1, 0xC365, 0x80D2, 0xC366,
- 0x80D3, 0xC367, 0x80D4, 0xC368, 0x80D5, 0xC369, 0x80D6, 0xC5D6,
- 0x80D7, 0xEBD3, 0x80D8, 0xC36A, 0x80D9, 0xEBD1, 0x80DA, 0xC5DF,
- 0x80DB, 0xEBCE, 0x80DC, 0xCAA4, 0x80DD, 0xEBD5, 0x80DE, 0xB0FB,
- 0x80DF, 0xC36B, 0x80E0, 0xC36C, 0x80E1, 0xBAFA, 0x80E2, 0xC36D,
- 0x80E3, 0xC36E, 0x80E4, 0xD8B7, 0x80E5, 0xF1E3, 0x80E6, 0xC36F,
- 0x80E7, 0xEBCA, 0x80E8, 0xEBCB, 0x80E9, 0xEBCC, 0x80EA, 0xEBCD,
- 0x80EB, 0xEBD6, 0x80EC, 0xE6C0, 0x80ED, 0xEBD9, 0x80EE, 0xC370,
- 0x80EF, 0xBFE8, 0x80F0, 0xD2C8, 0x80F1, 0xEBD7, 0x80F2, 0xEBDC,
- 0x80F3, 0xB8EC, 0x80F4, 0xEBD8, 0x80F5, 0xC371, 0x80F6, 0xBDBA,
- 0x80F7, 0xC372, 0x80F8, 0xD0D8, 0x80F9, 0xC373, 0x80FA, 0xB0B7,
- 0x80FB, 0xC374, 0x80FC, 0xEBDD, 0x80FD, 0xC4DC, 0x80FE, 0xC375,
- 0x80FF, 0xC376, 0x8100, 0xC377, 0x8101, 0xC378, 0x8102, 0xD6AC,
- 0x8103, 0xC379, 0x8104, 0xC37A, 0x8105, 0xC37B, 0x8106, 0xB4E0,
- 0x8107, 0xC37C, 0x8108, 0xC37D, 0x8109, 0xC2F6, 0x810A, 0xBCB9,
- 0x810B, 0xC37E, 0x810C, 0xC380, 0x810D, 0xEBDA, 0x810E, 0xEBDB,
- 0x810F, 0xD4E0, 0x8110, 0xC6EA, 0x8111, 0xC4D4, 0x8112, 0xEBDF,
- 0x8113, 0xC5A7, 0x8114, 0xD9F5, 0x8115, 0xC381, 0x8116, 0xB2B1,
- 0x8117, 0xC382, 0x8118, 0xEBE4, 0x8119, 0xC383, 0x811A, 0xBDC5,
- 0x811B, 0xC384, 0x811C, 0xC385, 0x811D, 0xC386, 0x811E, 0xEBE2,
- 0x811F, 0xC387, 0x8120, 0xC388, 0x8121, 0xC389, 0x8122, 0xC38A,
- 0x8123, 0xC38B, 0x8124, 0xC38C, 0x8125, 0xC38D, 0x8126, 0xC38E,
- 0x8127, 0xC38F, 0x8128, 0xC390, 0x8129, 0xC391, 0x812A, 0xC392,
- 0x812B, 0xC393, 0x812C, 0xEBE3, 0x812D, 0xC394, 0x812E, 0xC395,
- 0x812F, 0xB8AC, 0x8130, 0xC396, 0x8131, 0xCDD1, 0x8132, 0xEBE5,
- 0x8133, 0xC397, 0x8134, 0xC398, 0x8135, 0xC399, 0x8136, 0xEBE1,
- 0x8137, 0xC39A, 0x8138, 0xC1B3, 0x8139, 0xC39B, 0x813A, 0xC39C,
- 0x813B, 0xC39D, 0x813C, 0xC39E, 0x813D, 0xC39F, 0x813E, 0xC6A2,
- 0x813F, 0xC3A0, 0x8140, 0xC440, 0x8141, 0xC441, 0x8142, 0xC442,
- 0x8143, 0xC443, 0x8144, 0xC444, 0x8145, 0xC445, 0x8146, 0xCCF3,
- 0x8147, 0xC446, 0x8148, 0xEBE6, 0x8149, 0xC447, 0x814A, 0xC0B0,
- 0x814B, 0xD2B8, 0x814C, 0xEBE7, 0x814D, 0xC448, 0x814E, 0xC449,
- 0x814F, 0xC44A, 0x8150, 0xB8AF, 0x8151, 0xB8AD, 0x8152, 0xC44B,
- 0x8153, 0xEBE8, 0x8154, 0xC7BB, 0x8155, 0xCDF3, 0x8156, 0xC44C,
- 0x8157, 0xC44D, 0x8158, 0xC44E, 0x8159, 0xEBEA, 0x815A, 0xEBEB,
- 0x815B, 0xC44F, 0x815C, 0xC450, 0x815D, 0xC451, 0x815E, 0xC452,
- 0x815F, 0xC453, 0x8160, 0xEBED, 0x8161, 0xC454, 0x8162, 0xC455,
- 0x8163, 0xC456, 0x8164, 0xC457, 0x8165, 0xD0C8, 0x8166, 0xC458,
- 0x8167, 0xEBF2, 0x8168, 0xC459, 0x8169, 0xEBEE, 0x816A, 0xC45A,
- 0x816B, 0xC45B, 0x816C, 0xC45C, 0x816D, 0xEBF1, 0x816E, 0xC8F9,
- 0x816F, 0xC45D, 0x8170, 0xD1FC, 0x8171, 0xEBEC, 0x8172, 0xC45E,
- 0x8173, 0xC45F, 0x8174, 0xEBE9, 0x8175, 0xC460, 0x8176, 0xC461,
- 0x8177, 0xC462, 0x8178, 0xC463, 0x8179, 0xB8B9, 0x817A, 0xCFD9,
- 0x817B, 0xC4E5, 0x817C, 0xEBEF, 0x817D, 0xEBF0, 0x817E, 0xCCDA,
- 0x817F, 0xCDC8, 0x8180, 0xB0F2, 0x8181, 0xC464, 0x8182, 0xEBF6,
- 0x8183, 0xC465, 0x8184, 0xC466, 0x8185, 0xC467, 0x8186, 0xC468,
- 0x8187, 0xC469, 0x8188, 0xEBF5, 0x8189, 0xC46A, 0x818A, 0xB2B2,
- 0x818B, 0xC46B, 0x818C, 0xC46C, 0x818D, 0xC46D, 0x818E, 0xC46E,
- 0x818F, 0xB8E0, 0x8190, 0xC46F, 0x8191, 0xEBF7, 0x8192, 0xC470,
- 0x8193, 0xC471, 0x8194, 0xC472, 0x8195, 0xC473, 0x8196, 0xC474,
- 0x8197, 0xC475, 0x8198, 0xB1EC, 0x8199, 0xC476, 0x819A, 0xC477,
- 0x819B, 0xCCC5, 0x819C, 0xC4A4, 0x819D, 0xCFA5, 0x819E, 0xC478,
- 0x819F, 0xC479, 0x81A0, 0xC47A, 0x81A1, 0xC47B, 0x81A2, 0xC47C,
- 0x81A3, 0xEBF9, 0x81A4, 0xC47D, 0x81A5, 0xC47E, 0x81A6, 0xECA2,
- 0x81A7, 0xC480, 0x81A8, 0xC5F2, 0x81A9, 0xC481, 0x81AA, 0xEBFA,
- 0x81AB, 0xC482, 0x81AC, 0xC483, 0x81AD, 0xC484, 0x81AE, 0xC485,
- 0x81AF, 0xC486, 0x81B0, 0xC487, 0x81B1, 0xC488, 0x81B2, 0xC489,
- 0x81B3, 0xC9C5, 0x81B4, 0xC48A, 0x81B5, 0xC48B, 0x81B6, 0xC48C,
- 0x81B7, 0xC48D, 0x81B8, 0xC48E, 0x81B9, 0xC48F, 0x81BA, 0xE2DF,
- 0x81BB, 0xEBFE, 0x81BC, 0xC490, 0x81BD, 0xC491, 0x81BE, 0xC492,
- 0x81BF, 0xC493, 0x81C0, 0xCDCE, 0x81C1, 0xECA1, 0x81C2, 0xB1DB,
- 0x81C3, 0xD3B7, 0x81C4, 0xC494, 0x81C5, 0xC495, 0x81C6, 0xD2DC,
- 0x81C7, 0xC496, 0x81C8, 0xC497, 0x81C9, 0xC498, 0x81CA, 0xEBFD,
- 0x81CB, 0xC499, 0x81CC, 0xEBFB, 0x81CD, 0xC49A, 0x81CE, 0xC49B,
- 0x81CF, 0xC49C, 0x81D0, 0xC49D, 0x81D1, 0xC49E, 0x81D2, 0xC49F,
- 0x81D3, 0xC4A0, 0x81D4, 0xC540, 0x81D5, 0xC541, 0x81D6, 0xC542,
- 0x81D7, 0xC543, 0x81D8, 0xC544, 0x81D9, 0xC545, 0x81DA, 0xC546,
- 0x81DB, 0xC547, 0x81DC, 0xC548, 0x81DD, 0xC549, 0x81DE, 0xC54A,
- 0x81DF, 0xC54B, 0x81E0, 0xC54C, 0x81E1, 0xC54D, 0x81E2, 0xC54E,
- 0x81E3, 0xB3BC, 0x81E4, 0xC54F, 0x81E5, 0xC550, 0x81E6, 0xC551,
- 0x81E7, 0xEAB0, 0x81E8, 0xC552, 0x81E9, 0xC553, 0x81EA, 0xD7D4,
- 0x81EB, 0xC554, 0x81EC, 0xF4AB, 0x81ED, 0xB3F4, 0x81EE, 0xC555,
- 0x81EF, 0xC556, 0x81F0, 0xC557, 0x81F1, 0xC558, 0x81F2, 0xC559,
- 0x81F3, 0xD6C1, 0x81F4, 0xD6C2, 0x81F5, 0xC55A, 0x81F6, 0xC55B,
- 0x81F7, 0xC55C, 0x81F8, 0xC55D, 0x81F9, 0xC55E, 0x81FA, 0xC55F,
- 0x81FB, 0xD5E9, 0x81FC, 0xBECA, 0x81FD, 0xC560, 0x81FE, 0xF4A7,
- 0x81FF, 0xC561, 0x8200, 0xD2A8, 0x8201, 0xF4A8, 0x8202, 0xF4A9,
- 0x8203, 0xC562, 0x8204, 0xF4AA, 0x8205, 0xBECB, 0x8206, 0xD3DF,
- 0x8207, 0xC563, 0x8208, 0xC564, 0x8209, 0xC565, 0x820A, 0xC566,
- 0x820B, 0xC567, 0x820C, 0xC9E0, 0x820D, 0xC9E1, 0x820E, 0xC568,
- 0x820F, 0xC569, 0x8210, 0xF3C2, 0x8211, 0xC56A, 0x8212, 0xCAE6,
- 0x8213, 0xC56B, 0x8214, 0xCCF2, 0x8215, 0xC56C, 0x8216, 0xC56D,
- 0x8217, 0xC56E, 0x8218, 0xC56F, 0x8219, 0xC570, 0x821A, 0xC571,
- 0x821B, 0xE2B6, 0x821C, 0xCBB4, 0x821D, 0xC572, 0x821E, 0xCEE8,
- 0x821F, 0xD6DB, 0x8220, 0xC573, 0x8221, 0xF4AD, 0x8222, 0xF4AE,
- 0x8223, 0xF4AF, 0x8224, 0xC574, 0x8225, 0xC575, 0x8226, 0xC576,
- 0x8227, 0xC577, 0x8228, 0xF4B2, 0x8229, 0xC578, 0x822A, 0xBABD,
- 0x822B, 0xF4B3, 0x822C, 0xB0E3, 0x822D, 0xF4B0, 0x822E, 0xC579,
- 0x822F, 0xF4B1, 0x8230, 0xBDA2, 0x8231, 0xB2D5, 0x8232, 0xC57A,
- 0x8233, 0xF4B6, 0x8234, 0xF4B7, 0x8235, 0xB6E6, 0x8236, 0xB2B0,
- 0x8237, 0xCFCF, 0x8238, 0xF4B4, 0x8239, 0xB4AC, 0x823A, 0xC57B,
- 0x823B, 0xF4B5, 0x823C, 0xC57C, 0x823D, 0xC57D, 0x823E, 0xF4B8,
- 0x823F, 0xC57E, 0x8240, 0xC580, 0x8241, 0xC581, 0x8242, 0xC582,
- 0x8243, 0xC583, 0x8244, 0xF4B9, 0x8245, 0xC584, 0x8246, 0xC585,
- 0x8247, 0xCDA7, 0x8248, 0xC586, 0x8249, 0xF4BA, 0x824A, 0xC587,
- 0x824B, 0xF4BB, 0x824C, 0xC588, 0x824D, 0xC589, 0x824E, 0xC58A,
- 0x824F, 0xF4BC, 0x8250, 0xC58B, 0x8251, 0xC58C, 0x8252, 0xC58D,
- 0x8253, 0xC58E, 0x8254, 0xC58F, 0x8255, 0xC590, 0x8256, 0xC591,
- 0x8257, 0xC592, 0x8258, 0xCBD2, 0x8259, 0xC593, 0x825A, 0xF4BD,
- 0x825B, 0xC594, 0x825C, 0xC595, 0x825D, 0xC596, 0x825E, 0xC597,
- 0x825F, 0xF4BE, 0x8260, 0xC598, 0x8261, 0xC599, 0x8262, 0xC59A,
- 0x8263, 0xC59B, 0x8264, 0xC59C, 0x8265, 0xC59D, 0x8266, 0xC59E,
- 0x8267, 0xC59F, 0x8268, 0xF4BF, 0x8269, 0xC5A0, 0x826A, 0xC640,
- 0x826B, 0xC641, 0x826C, 0xC642, 0x826D, 0xC643, 0x826E, 0xF4DE,
- 0x826F, 0xC1BC, 0x8270, 0xBCE8, 0x8271, 0xC644, 0x8272, 0xC9AB,
- 0x8273, 0xD1DE, 0x8274, 0xE5F5, 0x8275, 0xC645, 0x8276, 0xC646,
- 0x8277, 0xC647, 0x8278, 0xC648, 0x8279, 0xDCB3, 0x827A, 0xD2D5,
- 0x827B, 0xC649, 0x827C, 0xC64A, 0x827D, 0xDCB4, 0x827E, 0xB0AC,
- 0x827F, 0xDCB5, 0x8280, 0xC64B, 0x8281, 0xC64C, 0x8282, 0xBDDA,
- 0x8283, 0xC64D, 0x8284, 0xDCB9, 0x8285, 0xC64E, 0x8286, 0xC64F,
- 0x8287, 0xC650, 0x8288, 0xD8C2, 0x8289, 0xC651, 0x828A, 0xDCB7,
- 0x828B, 0xD3F3, 0x828C, 0xC652, 0x828D, 0xC9D6, 0x828E, 0xDCBA,
- 0x828F, 0xDCB6, 0x8290, 0xC653, 0x8291, 0xDCBB, 0x8292, 0xC3A2,
- 0x8293, 0xC654, 0x8294, 0xC655, 0x8295, 0xC656, 0x8296, 0xC657,
- 0x8297, 0xDCBC, 0x8298, 0xDCC5, 0x8299, 0xDCBD, 0x829A, 0xC658,
- 0x829B, 0xC659, 0x829C, 0xCEDF, 0x829D, 0xD6A5, 0x829E, 0xC65A,
- 0x829F, 0xDCCF, 0x82A0, 0xC65B, 0x82A1, 0xDCCD, 0x82A2, 0xC65C,
- 0x82A3, 0xC65D, 0x82A4, 0xDCD2, 0x82A5, 0xBDE6, 0x82A6, 0xC2AB,
- 0x82A7, 0xC65E, 0x82A8, 0xDCB8, 0x82A9, 0xDCCB, 0x82AA, 0xDCCE,
- 0x82AB, 0xDCBE, 0x82AC, 0xB7D2, 0x82AD, 0xB0C5, 0x82AE, 0xDCC7,
- 0x82AF, 0xD0BE, 0x82B0, 0xDCC1, 0x82B1, 0xBBA8, 0x82B2, 0xC65F,
- 0x82B3, 0xB7BC, 0x82B4, 0xDCCC, 0x82B5, 0xC660, 0x82B6, 0xC661,
- 0x82B7, 0xDCC6, 0x82B8, 0xDCBF, 0x82B9, 0xC7DB, 0x82BA, 0xC662,
- 0x82BB, 0xC663, 0x82BC, 0xC664, 0x82BD, 0xD1BF, 0x82BE, 0xDCC0,
- 0x82BF, 0xC665, 0x82C0, 0xC666, 0x82C1, 0xDCCA, 0x82C2, 0xC667,
- 0x82C3, 0xC668, 0x82C4, 0xDCD0, 0x82C5, 0xC669, 0x82C6, 0xC66A,
- 0x82C7, 0xCEAD, 0x82C8, 0xDCC2, 0x82C9, 0xC66B, 0x82CA, 0xDCC3,
- 0x82CB, 0xDCC8, 0x82CC, 0xDCC9, 0x82CD, 0xB2D4, 0x82CE, 0xDCD1,
- 0x82CF, 0xCBD5, 0x82D0, 0xC66C, 0x82D1, 0xD4B7, 0x82D2, 0xDCDB,
- 0x82D3, 0xDCDF, 0x82D4, 0xCCA6, 0x82D5, 0xDCE6, 0x82D6, 0xC66D,
- 0x82D7, 0xC3E7, 0x82D8, 0xDCDC, 0x82D9, 0xC66E, 0x82DA, 0xC66F,
- 0x82DB, 0xBFC1, 0x82DC, 0xDCD9, 0x82DD, 0xC670, 0x82DE, 0xB0FA,
- 0x82DF, 0xB9B6, 0x82E0, 0xDCE5, 0x82E1, 0xDCD3, 0x82E2, 0xC671,
- 0x82E3, 0xDCC4, 0x82E4, 0xDCD6, 0x82E5, 0xC8F4, 0x82E6, 0xBFE0,
- 0x82E7, 0xC672, 0x82E8, 0xC673, 0x82E9, 0xC674, 0x82EA, 0xC675,
- 0x82EB, 0xC9BB, 0x82EC, 0xC676, 0x82ED, 0xC677, 0x82EE, 0xC678,
- 0x82EF, 0xB1BD, 0x82F0, 0xC679, 0x82F1, 0xD3A2, 0x82F2, 0xC67A,
- 0x82F3, 0xC67B, 0x82F4, 0xDCDA, 0x82F5, 0xC67C, 0x82F6, 0xC67D,
- 0x82F7, 0xDCD5, 0x82F8, 0xC67E, 0x82F9, 0xC6BB, 0x82FA, 0xC680,
- 0x82FB, 0xDCDE, 0x82FC, 0xC681, 0x82FD, 0xC682, 0x82FE, 0xC683,
- 0x82FF, 0xC684, 0x8300, 0xC685, 0x8301, 0xD7C2, 0x8302, 0xC3AF,
- 0x8303, 0xB7B6, 0x8304, 0xC7D1, 0x8305, 0xC3A9, 0x8306, 0xDCE2,
- 0x8307, 0xDCD8, 0x8308, 0xDCEB, 0x8309, 0xDCD4, 0x830A, 0xC686,
- 0x830B, 0xC687, 0x830C, 0xDCDD, 0x830D, 0xC688, 0x830E, 0xBEA5,
- 0x830F, 0xDCD7, 0x8310, 0xC689, 0x8311, 0xDCE0, 0x8312, 0xC68A,
- 0x8313, 0xC68B, 0x8314, 0xDCE3, 0x8315, 0xDCE4, 0x8316, 0xC68C,
- 0x8317, 0xDCF8, 0x8318, 0xC68D, 0x8319, 0xC68E, 0x831A, 0xDCE1,
- 0x831B, 0xDDA2, 0x831C, 0xDCE7, 0x831D, 0xC68F, 0x831E, 0xC690,
- 0x831F, 0xC691, 0x8320, 0xC692, 0x8321, 0xC693, 0x8322, 0xC694,
- 0x8323, 0xC695, 0x8324, 0xC696, 0x8325, 0xC697, 0x8326, 0xC698,
- 0x8327, 0xBCEB, 0x8328, 0xB4C4, 0x8329, 0xC699, 0x832A, 0xC69A,
- 0x832B, 0xC3A3, 0x832C, 0xB2E7, 0x832D, 0xDCFA, 0x832E, 0xC69B,
- 0x832F, 0xDCF2, 0x8330, 0xC69C, 0x8331, 0xDCEF, 0x8332, 0xC69D,
- 0x8333, 0xDCFC, 0x8334, 0xDCEE, 0x8335, 0xD2F0, 0x8336, 0xB2E8,
- 0x8337, 0xC69E, 0x8338, 0xC8D7, 0x8339, 0xC8E3, 0x833A, 0xDCFB,
- 0x833B, 0xC69F, 0x833C, 0xDCED, 0x833D, 0xC6A0, 0x833E, 0xC740,
- 0x833F, 0xC741, 0x8340, 0xDCF7, 0x8341, 0xC742, 0x8342, 0xC743,
- 0x8343, 0xDCF5, 0x8344, 0xC744, 0x8345, 0xC745, 0x8346, 0xBEA3,
- 0x8347, 0xDCF4, 0x8348, 0xC746, 0x8349, 0xB2DD, 0x834A, 0xC747,
- 0x834B, 0xC748, 0x834C, 0xC749, 0x834D, 0xC74A, 0x834E, 0xC74B,
- 0x834F, 0xDCF3, 0x8350, 0xBCF6, 0x8351, 0xDCE8, 0x8352, 0xBBC4,
- 0x8353, 0xC74C, 0x8354, 0xC0F3, 0x8355, 0xC74D, 0x8356, 0xC74E,
- 0x8357, 0xC74F, 0x8358, 0xC750, 0x8359, 0xC751, 0x835A, 0xBCD4,
- 0x835B, 0xDCE9, 0x835C, 0xDCEA, 0x835D, 0xC752, 0x835E, 0xDCF1,
- 0x835F, 0xDCF6, 0x8360, 0xDCF9, 0x8361, 0xB5B4, 0x8362, 0xC753,
- 0x8363, 0xC8D9, 0x8364, 0xBBE7, 0x8365, 0xDCFE, 0x8366, 0xDCFD,
- 0x8367, 0xD3AB, 0x8368, 0xDDA1, 0x8369, 0xDDA3, 0x836A, 0xDDA5,
- 0x836B, 0xD2F1, 0x836C, 0xDDA4, 0x836D, 0xDDA6, 0x836E, 0xDDA7,
- 0x836F, 0xD2A9, 0x8370, 0xC754, 0x8371, 0xC755, 0x8372, 0xC756,
- 0x8373, 0xC757, 0x8374, 0xC758, 0x8375, 0xC759, 0x8376, 0xC75A,
- 0x8377, 0xBAC9, 0x8378, 0xDDA9, 0x8379, 0xC75B, 0x837A, 0xC75C,
- 0x837B, 0xDDB6, 0x837C, 0xDDB1, 0x837D, 0xDDB4, 0x837E, 0xC75D,
- 0x837F, 0xC75E, 0x8380, 0xC75F, 0x8381, 0xC760, 0x8382, 0xC761,
- 0x8383, 0xC762, 0x8384, 0xC763, 0x8385, 0xDDB0, 0x8386, 0xC6CE,
- 0x8387, 0xC764, 0x8388, 0xC765, 0x8389, 0xC0F2, 0x838A, 0xC766,
- 0x838B, 0xC767, 0x838C, 0xC768, 0x838D, 0xC769, 0x838E, 0xC9AF,
- 0x838F, 0xC76A, 0x8390, 0xC76B, 0x8391, 0xC76C, 0x8392, 0xDCEC,
- 0x8393, 0xDDAE, 0x8394, 0xC76D, 0x8395, 0xC76E, 0x8396, 0xC76F,
- 0x8397, 0xC770, 0x8398, 0xDDB7, 0x8399, 0xC771, 0x839A, 0xC772,
- 0x839B, 0xDCF0, 0x839C, 0xDDAF, 0x839D, 0xC773, 0x839E, 0xDDB8,
- 0x839F, 0xC774, 0x83A0, 0xDDAC, 0x83A1, 0xC775, 0x83A2, 0xC776,
- 0x83A3, 0xC777, 0x83A4, 0xC778, 0x83A5, 0xC779, 0x83A6, 0xC77A,
- 0x83A7, 0xC77B, 0x83A8, 0xDDB9, 0x83A9, 0xDDB3, 0x83AA, 0xDDAD,
- 0x83AB, 0xC4AA, 0x83AC, 0xC77C, 0x83AD, 0xC77D, 0x83AE, 0xC77E,
- 0x83AF, 0xC780, 0x83B0, 0xDDA8, 0x83B1, 0xC0B3, 0x83B2, 0xC1AB,
- 0x83B3, 0xDDAA, 0x83B4, 0xDDAB, 0x83B5, 0xC781, 0x83B6, 0xDDB2,
- 0x83B7, 0xBBF1, 0x83B8, 0xDDB5, 0x83B9, 0xD3A8, 0x83BA, 0xDDBA,
- 0x83BB, 0xC782, 0x83BC, 0xDDBB, 0x83BD, 0xC3A7, 0x83BE, 0xC783,
- 0x83BF, 0xC784, 0x83C0, 0xDDD2, 0x83C1, 0xDDBC, 0x83C2, 0xC785,
- 0x83C3, 0xC786, 0x83C4, 0xC787, 0x83C5, 0xDDD1, 0x83C6, 0xC788,
- 0x83C7, 0xB9BD, 0x83C8, 0xC789, 0x83C9, 0xC78A, 0x83CA, 0xBED5,
- 0x83CB, 0xC78B, 0x83CC, 0xBEFA, 0x83CD, 0xC78C, 0x83CE, 0xC78D,
- 0x83CF, 0xBACA, 0x83D0, 0xC78E, 0x83D1, 0xC78F, 0x83D2, 0xC790,
- 0x83D3, 0xC791, 0x83D4, 0xDDCA, 0x83D5, 0xC792, 0x83D6, 0xDDC5,
- 0x83D7, 0xC793, 0x83D8, 0xDDBF, 0x83D9, 0xC794, 0x83DA, 0xC795,
- 0x83DB, 0xC796, 0x83DC, 0xB2CB, 0x83DD, 0xDDC3, 0x83DE, 0xC797,
- 0x83DF, 0xDDCB, 0x83E0, 0xB2A4, 0x83E1, 0xDDD5, 0x83E2, 0xC798,
- 0x83E3, 0xC799, 0x83E4, 0xC79A, 0x83E5, 0xDDBE, 0x83E6, 0xC79B,
- 0x83E7, 0xC79C, 0x83E8, 0xC79D, 0x83E9, 0xC6D0, 0x83EA, 0xDDD0,
- 0x83EB, 0xC79E, 0x83EC, 0xC79F, 0x83ED, 0xC7A0, 0x83EE, 0xC840,
- 0x83EF, 0xC841, 0x83F0, 0xDDD4, 0x83F1, 0xC1E2, 0x83F2, 0xB7C6,
- 0x83F3, 0xC842, 0x83F4, 0xC843, 0x83F5, 0xC844, 0x83F6, 0xC845,
- 0x83F7, 0xC846, 0x83F8, 0xDDCE, 0x83F9, 0xDDCF, 0x83FA, 0xC847,
- 0x83FB, 0xC848, 0x83FC, 0xC849, 0x83FD, 0xDDC4, 0x83FE, 0xC84A,
- 0x83FF, 0xC84B, 0x8400, 0xC84C, 0x8401, 0xDDBD, 0x8402, 0xC84D,
- 0x8403, 0xDDCD, 0x8404, 0xCCD1, 0x8405, 0xC84E, 0x8406, 0xDDC9,
- 0x8407, 0xC84F, 0x8408, 0xC850, 0x8409, 0xC851, 0x840A, 0xC852,
- 0x840B, 0xDDC2, 0x840C, 0xC3C8, 0x840D, 0xC6BC, 0x840E, 0xCEAE,
- 0x840F, 0xDDCC, 0x8410, 0xC853, 0x8411, 0xDDC8, 0x8412, 0xC854,
- 0x8413, 0xC855, 0x8414, 0xC856, 0x8415, 0xC857, 0x8416, 0xC858,
- 0x8417, 0xC859, 0x8418, 0xDDC1, 0x8419, 0xC85A, 0x841A, 0xC85B,
- 0x841B, 0xC85C, 0x841C, 0xDDC6, 0x841D, 0xC2DC, 0x841E, 0xC85D,
- 0x841F, 0xC85E, 0x8420, 0xC85F, 0x8421, 0xC860, 0x8422, 0xC861,
- 0x8423, 0xC862, 0x8424, 0xD3A9, 0x8425, 0xD3AA, 0x8426, 0xDDD3,
- 0x8427, 0xCFF4, 0x8428, 0xC8F8, 0x8429, 0xC863, 0x842A, 0xC864,
- 0x842B, 0xC865, 0x842C, 0xC866, 0x842D, 0xC867, 0x842E, 0xC868,
- 0x842F, 0xC869, 0x8430, 0xC86A, 0x8431, 0xDDE6, 0x8432, 0xC86B,
- 0x8433, 0xC86C, 0x8434, 0xC86D, 0x8435, 0xC86E, 0x8436, 0xC86F,
- 0x8437, 0xC870, 0x8438, 0xDDC7, 0x8439, 0xC871, 0x843A, 0xC872,
- 0x843B, 0xC873, 0x843C, 0xDDE0, 0x843D, 0xC2E4, 0x843E, 0xC874,
- 0x843F, 0xC875, 0x8440, 0xC876, 0x8441, 0xC877, 0x8442, 0xC878,
- 0x8443, 0xC879, 0x8444, 0xC87A, 0x8445, 0xC87B, 0x8446, 0xDDE1,
- 0x8447, 0xC87C, 0x8448, 0xC87D, 0x8449, 0xC87E, 0x844A, 0xC880,
- 0x844B, 0xC881, 0x844C, 0xC882, 0x844D, 0xC883, 0x844E, 0xC884,
- 0x844F, 0xC885, 0x8450, 0xC886, 0x8451, 0xDDD7, 0x8452, 0xC887,
- 0x8453, 0xC888, 0x8454, 0xC889, 0x8455, 0xC88A, 0x8456, 0xC88B,
- 0x8457, 0xD6F8, 0x8458, 0xC88C, 0x8459, 0xDDD9, 0x845A, 0xDDD8,
- 0x845B, 0xB8F0, 0x845C, 0xDDD6, 0x845D, 0xC88D, 0x845E, 0xC88E,
- 0x845F, 0xC88F, 0x8460, 0xC890, 0x8461, 0xC6CF, 0x8462, 0xC891,
- 0x8463, 0xB6AD, 0x8464, 0xC892, 0x8465, 0xC893, 0x8466, 0xC894,
- 0x8467, 0xC895, 0x8468, 0xC896, 0x8469, 0xDDE2, 0x846A, 0xC897,
- 0x846B, 0xBAF9, 0x846C, 0xD4E1, 0x846D, 0xDDE7, 0x846E, 0xC898,
- 0x846F, 0xC899, 0x8470, 0xC89A, 0x8471, 0xB4D0, 0x8472, 0xC89B,
- 0x8473, 0xDDDA, 0x8474, 0xC89C, 0x8475, 0xBFFB, 0x8476, 0xDDE3,
- 0x8477, 0xC89D, 0x8478, 0xDDDF, 0x8479, 0xC89E, 0x847A, 0xDDDD,
- 0x847B, 0xC89F, 0x847C, 0xC8A0, 0x847D, 0xC940, 0x847E, 0xC941,
- 0x847F, 0xC942, 0x8480, 0xC943, 0x8481, 0xC944, 0x8482, 0xB5D9,
- 0x8483, 0xC945, 0x8484, 0xC946, 0x8485, 0xC947, 0x8486, 0xC948,
- 0x8487, 0xDDDB, 0x8488, 0xDDDC, 0x8489, 0xDDDE, 0x848A, 0xC949,
- 0x848B, 0xBDAF, 0x848C, 0xDDE4, 0x848D, 0xC94A, 0x848E, 0xDDE5,
- 0x848F, 0xC94B, 0x8490, 0xC94C, 0x8491, 0xC94D, 0x8492, 0xC94E,
- 0x8493, 0xC94F, 0x8494, 0xC950, 0x8495, 0xC951, 0x8496, 0xC952,
- 0x8497, 0xDDF5, 0x8498, 0xC953, 0x8499, 0xC3C9, 0x849A, 0xC954,
- 0x849B, 0xC955, 0x849C, 0xCBE2, 0x849D, 0xC956, 0x849E, 0xC957,
- 0x849F, 0xC958, 0x84A0, 0xC959, 0x84A1, 0xDDF2, 0x84A2, 0xC95A,
- 0x84A3, 0xC95B, 0x84A4, 0xC95C, 0x84A5, 0xC95D, 0x84A6, 0xC95E,
- 0x84A7, 0xC95F, 0x84A8, 0xC960, 0x84A9, 0xC961, 0x84AA, 0xC962,
- 0x84AB, 0xC963, 0x84AC, 0xC964, 0x84AD, 0xC965, 0x84AE, 0xC966,
- 0x84AF, 0xD8E1, 0x84B0, 0xC967, 0x84B1, 0xC968, 0x84B2, 0xC6D1,
- 0x84B3, 0xC969, 0x84B4, 0xDDF4, 0x84B5, 0xC96A, 0x84B6, 0xC96B,
- 0x84B7, 0xC96C, 0x84B8, 0xD5F4, 0x84B9, 0xDDF3, 0x84BA, 0xDDF0,
- 0x84BB, 0xC96D, 0x84BC, 0xC96E, 0x84BD, 0xDDEC, 0x84BE, 0xC96F,
- 0x84BF, 0xDDEF, 0x84C0, 0xC970, 0x84C1, 0xDDE8, 0x84C2, 0xC971,
- 0x84C3, 0xC972, 0x84C4, 0xD0EE, 0x84C5, 0xC973, 0x84C6, 0xC974,
- 0x84C7, 0xC975, 0x84C8, 0xC976, 0x84C9, 0xC8D8, 0x84CA, 0xDDEE,
- 0x84CB, 0xC977, 0x84CC, 0xC978, 0x84CD, 0xDDE9, 0x84CE, 0xC979,
- 0x84CF, 0xC97A, 0x84D0, 0xDDEA, 0x84D1, 0xCBF2, 0x84D2, 0xC97B,
- 0x84D3, 0xDDED, 0x84D4, 0xC97C, 0x84D5, 0xC97D, 0x84D6, 0xB1CD,
- 0x84D7, 0xC97E, 0x84D8, 0xC980, 0x84D9, 0xC981, 0x84DA, 0xC982,
- 0x84DB, 0xC983, 0x84DC, 0xC984, 0x84DD, 0xC0B6, 0x84DE, 0xC985,
- 0x84DF, 0xBCBB, 0x84E0, 0xDDF1, 0x84E1, 0xC986, 0x84E2, 0xC987,
- 0x84E3, 0xDDF7, 0x84E4, 0xC988, 0x84E5, 0xDDF6, 0x84E6, 0xDDEB,
- 0x84E7, 0xC989, 0x84E8, 0xC98A, 0x84E9, 0xC98B, 0x84EA, 0xC98C,
- 0x84EB, 0xC98D, 0x84EC, 0xC5EE, 0x84ED, 0xC98E, 0x84EE, 0xC98F,
- 0x84EF, 0xC990, 0x84F0, 0xDDFB, 0x84F1, 0xC991, 0x84F2, 0xC992,
- 0x84F3, 0xC993, 0x84F4, 0xC994, 0x84F5, 0xC995, 0x84F6, 0xC996,
- 0x84F7, 0xC997, 0x84F8, 0xC998, 0x84F9, 0xC999, 0x84FA, 0xC99A,
- 0x84FB, 0xC99B, 0x84FC, 0xDEA4, 0x84FD, 0xC99C, 0x84FE, 0xC99D,
- 0x84FF, 0xDEA3, 0x8500, 0xC99E, 0x8501, 0xC99F, 0x8502, 0xC9A0,
- 0x8503, 0xCA40, 0x8504, 0xCA41, 0x8505, 0xCA42, 0x8506, 0xCA43,
- 0x8507, 0xCA44, 0x8508, 0xCA45, 0x8509, 0xCA46, 0x850A, 0xCA47,
- 0x850B, 0xCA48, 0x850C, 0xDDF8, 0x850D, 0xCA49, 0x850E, 0xCA4A,
- 0x850F, 0xCA4B, 0x8510, 0xCA4C, 0x8511, 0xC3EF, 0x8512, 0xCA4D,
- 0x8513, 0xC2FB, 0x8514, 0xCA4E, 0x8515, 0xCA4F, 0x8516, 0xCA50,
- 0x8517, 0xD5E1, 0x8518, 0xCA51, 0x8519, 0xCA52, 0x851A, 0xCEB5,
- 0x851B, 0xCA53, 0x851C, 0xCA54, 0x851D, 0xCA55, 0x851E, 0xCA56,
- 0x851F, 0xDDFD, 0x8520, 0xCA57, 0x8521, 0xB2CC, 0x8522, 0xCA58,
- 0x8523, 0xCA59, 0x8524, 0xCA5A, 0x8525, 0xCA5B, 0x8526, 0xCA5C,
- 0x8527, 0xCA5D, 0x8528, 0xCA5E, 0x8529, 0xCA5F, 0x852A, 0xCA60,
- 0x852B, 0xC4E8, 0x852C, 0xCADF, 0x852D, 0xCA61, 0x852E, 0xCA62,
- 0x852F, 0xCA63, 0x8530, 0xCA64, 0x8531, 0xCA65, 0x8532, 0xCA66,
- 0x8533, 0xCA67, 0x8534, 0xCA68, 0x8535, 0xCA69, 0x8536, 0xCA6A,
- 0x8537, 0xC7BE, 0x8538, 0xDDFA, 0x8539, 0xDDFC, 0x853A, 0xDDFE,
- 0x853B, 0xDEA2, 0x853C, 0xB0AA, 0x853D, 0xB1CE, 0x853E, 0xCA6B,
- 0x853F, 0xCA6C, 0x8540, 0xCA6D, 0x8541, 0xCA6E, 0x8542, 0xCA6F,
- 0x8543, 0xDEAC, 0x8544, 0xCA70, 0x8545, 0xCA71, 0x8546, 0xCA72,
- 0x8547, 0xCA73, 0x8548, 0xDEA6, 0x8549, 0xBDB6, 0x854A, 0xC8EF,
- 0x854B, 0xCA74, 0x854C, 0xCA75, 0x854D, 0xCA76, 0x854E, 0xCA77,
- 0x854F, 0xCA78, 0x8550, 0xCA79, 0x8551, 0xCA7A, 0x8552, 0xCA7B,
- 0x8553, 0xCA7C, 0x8554, 0xCA7D, 0x8555, 0xCA7E, 0x8556, 0xDEA1,
- 0x8557, 0xCA80, 0x8558, 0xCA81, 0x8559, 0xDEA5, 0x855A, 0xCA82,
- 0x855B, 0xCA83, 0x855C, 0xCA84, 0x855D, 0xCA85, 0x855E, 0xDEA9,
- 0x855F, 0xCA86, 0x8560, 0xCA87, 0x8561, 0xCA88, 0x8562, 0xCA89,
- 0x8563, 0xCA8A, 0x8564, 0xDEA8, 0x8565, 0xCA8B, 0x8566, 0xCA8C,
- 0x8567, 0xCA8D, 0x8568, 0xDEA7, 0x8569, 0xCA8E, 0x856A, 0xCA8F,
- 0x856B, 0xCA90, 0x856C, 0xCA91, 0x856D, 0xCA92, 0x856E, 0xCA93,
- 0x856F, 0xCA94, 0x8570, 0xCA95, 0x8571, 0xCA96, 0x8572, 0xDEAD,
- 0x8573, 0xCA97, 0x8574, 0xD4CC, 0x8575, 0xCA98, 0x8576, 0xCA99,
- 0x8577, 0xCA9A, 0x8578, 0xCA9B, 0x8579, 0xDEB3, 0x857A, 0xDEAA,
- 0x857B, 0xDEAE, 0x857C, 0xCA9C, 0x857D, 0xCA9D, 0x857E, 0xC0D9,
- 0x857F, 0xCA9E, 0x8580, 0xCA9F, 0x8581, 0xCAA0, 0x8582, 0xCB40,
- 0x8583, 0xCB41, 0x8584, 0xB1A1, 0x8585, 0xDEB6, 0x8586, 0xCB42,
- 0x8587, 0xDEB1, 0x8588, 0xCB43, 0x8589, 0xCB44, 0x858A, 0xCB45,
- 0x858B, 0xCB46, 0x858C, 0xCB47, 0x858D, 0xCB48, 0x858E, 0xCB49,
- 0x858F, 0xDEB2, 0x8590, 0xCB4A, 0x8591, 0xCB4B, 0x8592, 0xCB4C,
- 0x8593, 0xCB4D, 0x8594, 0xCB4E, 0x8595, 0xCB4F, 0x8596, 0xCB50,
- 0x8597, 0xCB51, 0x8598, 0xCB52, 0x8599, 0xCB53, 0x859A, 0xCB54,
- 0x859B, 0xD1A6, 0x859C, 0xDEB5, 0x859D, 0xCB55, 0x859E, 0xCB56,
- 0x859F, 0xCB57, 0x85A0, 0xCB58, 0x85A1, 0xCB59, 0x85A2, 0xCB5A,
- 0x85A3, 0xCB5B, 0x85A4, 0xDEAF, 0x85A5, 0xCB5C, 0x85A6, 0xCB5D,
- 0x85A7, 0xCB5E, 0x85A8, 0xDEB0, 0x85A9, 0xCB5F, 0x85AA, 0xD0BD,
- 0x85AB, 0xCB60, 0x85AC, 0xCB61, 0x85AD, 0xCB62, 0x85AE, 0xDEB4,
- 0x85AF, 0xCAED, 0x85B0, 0xDEB9, 0x85B1, 0xCB63, 0x85B2, 0xCB64,
- 0x85B3, 0xCB65, 0x85B4, 0xCB66, 0x85B5, 0xCB67, 0x85B6, 0xCB68,
- 0x85B7, 0xDEB8, 0x85B8, 0xCB69, 0x85B9, 0xDEB7, 0x85BA, 0xCB6A,
- 0x85BB, 0xCB6B, 0x85BC, 0xCB6C, 0x85BD, 0xCB6D, 0x85BE, 0xCB6E,
- 0x85BF, 0xCB6F, 0x85C0, 0xCB70, 0x85C1, 0xDEBB, 0x85C2, 0xCB71,
- 0x85C3, 0xCB72, 0x85C4, 0xCB73, 0x85C5, 0xCB74, 0x85C6, 0xCB75,
- 0x85C7, 0xCB76, 0x85C8, 0xCB77, 0x85C9, 0xBDE5, 0x85CA, 0xCB78,
- 0x85CB, 0xCB79, 0x85CC, 0xCB7A, 0x85CD, 0xCB7B, 0x85CE, 0xCB7C,
- 0x85CF, 0xB2D8, 0x85D0, 0xC3EA, 0x85D1, 0xCB7D, 0x85D2, 0xCB7E,
- 0x85D3, 0xDEBA, 0x85D4, 0xCB80, 0x85D5, 0xC5BA, 0x85D6, 0xCB81,
- 0x85D7, 0xCB82, 0x85D8, 0xCB83, 0x85D9, 0xCB84, 0x85DA, 0xCB85,
- 0x85DB, 0xCB86, 0x85DC, 0xDEBC, 0x85DD, 0xCB87, 0x85DE, 0xCB88,
- 0x85DF, 0xCB89, 0x85E0, 0xCB8A, 0x85E1, 0xCB8B, 0x85E2, 0xCB8C,
- 0x85E3, 0xCB8D, 0x85E4, 0xCCD9, 0x85E5, 0xCB8E, 0x85E6, 0xCB8F,
- 0x85E7, 0xCB90, 0x85E8, 0xCB91, 0x85E9, 0xB7AA, 0x85EA, 0xCB92,
- 0x85EB, 0xCB93, 0x85EC, 0xCB94, 0x85ED, 0xCB95, 0x85EE, 0xCB96,
- 0x85EF, 0xCB97, 0x85F0, 0xCB98, 0x85F1, 0xCB99, 0x85F2, 0xCB9A,
- 0x85F3, 0xCB9B, 0x85F4, 0xCB9C, 0x85F5, 0xCB9D, 0x85F6, 0xCB9E,
- 0x85F7, 0xCB9F, 0x85F8, 0xCBA0, 0x85F9, 0xCC40, 0x85FA, 0xCC41,
- 0x85FB, 0xD4E5, 0x85FC, 0xCC42, 0x85FD, 0xCC43, 0x85FE, 0xCC44,
- 0x85FF, 0xDEBD, 0x8600, 0xCC45, 0x8601, 0xCC46, 0x8602, 0xCC47,
- 0x8603, 0xCC48, 0x8604, 0xCC49, 0x8605, 0xDEBF, 0x8606, 0xCC4A,
- 0x8607, 0xCC4B, 0x8608, 0xCC4C, 0x8609, 0xCC4D, 0x860A, 0xCC4E,
- 0x860B, 0xCC4F, 0x860C, 0xCC50, 0x860D, 0xCC51, 0x860E, 0xCC52,
- 0x860F, 0xCC53, 0x8610, 0xCC54, 0x8611, 0xC4A2, 0x8612, 0xCC55,
- 0x8613, 0xCC56, 0x8614, 0xCC57, 0x8615, 0xCC58, 0x8616, 0xDEC1,
- 0x8617, 0xCC59, 0x8618, 0xCC5A, 0x8619, 0xCC5B, 0x861A, 0xCC5C,
- 0x861B, 0xCC5D, 0x861C, 0xCC5E, 0x861D, 0xCC5F, 0x861E, 0xCC60,
- 0x861F, 0xCC61, 0x8620, 0xCC62, 0x8621, 0xCC63, 0x8622, 0xCC64,
- 0x8623, 0xCC65, 0x8624, 0xCC66, 0x8625, 0xCC67, 0x8626, 0xCC68,
- 0x8627, 0xDEBE, 0x8628, 0xCC69, 0x8629, 0xDEC0, 0x862A, 0xCC6A,
- 0x862B, 0xCC6B, 0x862C, 0xCC6C, 0x862D, 0xCC6D, 0x862E, 0xCC6E,
- 0x862F, 0xCC6F, 0x8630, 0xCC70, 0x8631, 0xCC71, 0x8632, 0xCC72,
- 0x8633, 0xCC73, 0x8634, 0xCC74, 0x8635, 0xCC75, 0x8636, 0xCC76,
- 0x8637, 0xCC77, 0x8638, 0xD5BA, 0x8639, 0xCC78, 0x863A, 0xCC79,
- 0x863B, 0xCC7A, 0x863C, 0xDEC2, 0x863D, 0xCC7B, 0x863E, 0xCC7C,
- 0x863F, 0xCC7D, 0x8640, 0xCC7E, 0x8641, 0xCC80, 0x8642, 0xCC81,
- 0x8643, 0xCC82, 0x8644, 0xCC83, 0x8645, 0xCC84, 0x8646, 0xCC85,
- 0x8647, 0xCC86, 0x8648, 0xCC87, 0x8649, 0xCC88, 0x864A, 0xCC89,
- 0x864B, 0xCC8A, 0x864C, 0xCC8B, 0x864D, 0xF2AE, 0x864E, 0xBBA2,
- 0x864F, 0xC2B2, 0x8650, 0xC5B0, 0x8651, 0xC2C7, 0x8652, 0xCC8C,
- 0x8653, 0xCC8D, 0x8654, 0xF2AF, 0x8655, 0xCC8E, 0x8656, 0xCC8F,
- 0x8657, 0xCC90, 0x8658, 0xCC91, 0x8659, 0xCC92, 0x865A, 0xD0E9,
- 0x865B, 0xCC93, 0x865C, 0xCC94, 0x865D, 0xCC95, 0x865E, 0xD3DD,
- 0x865F, 0xCC96, 0x8660, 0xCC97, 0x8661, 0xCC98, 0x8662, 0xEBBD,
- 0x8663, 0xCC99, 0x8664, 0xCC9A, 0x8665, 0xCC9B, 0x8666, 0xCC9C,
- 0x8667, 0xCC9D, 0x8668, 0xCC9E, 0x8669, 0xCC9F, 0x866A, 0xCCA0,
- 0x866B, 0xB3E6, 0x866C, 0xF2B0, 0x866D, 0xCD40, 0x866E, 0xF2B1,
- 0x866F, 0xCD41, 0x8670, 0xCD42, 0x8671, 0xCAAD, 0x8672, 0xCD43,
- 0x8673, 0xCD44, 0x8674, 0xCD45, 0x8675, 0xCD46, 0x8676, 0xCD47,
- 0x8677, 0xCD48, 0x8678, 0xCD49, 0x8679, 0xBAE7, 0x867A, 0xF2B3,
- 0x867B, 0xF2B5, 0x867C, 0xF2B4, 0x867D, 0xCBE4, 0x867E, 0xCFBA,
- 0x867F, 0xF2B2, 0x8680, 0xCAB4, 0x8681, 0xD2CF, 0x8682, 0xC2EC,
- 0x8683, 0xCD4A, 0x8684, 0xCD4B, 0x8685, 0xCD4C, 0x8686, 0xCD4D,
- 0x8687, 0xCD4E, 0x8688, 0xCD4F, 0x8689, 0xCD50, 0x868A, 0xCEC3,
- 0x868B, 0xF2B8, 0x868C, 0xB0F6, 0x868D, 0xF2B7, 0x868E, 0xCD51,
- 0x868F, 0xCD52, 0x8690, 0xCD53, 0x8691, 0xCD54, 0x8692, 0xCD55,
- 0x8693, 0xF2BE, 0x8694, 0xCD56, 0x8695, 0xB2CF, 0x8696, 0xCD57,
- 0x8697, 0xCD58, 0x8698, 0xCD59, 0x8699, 0xCD5A, 0x869A, 0xCD5B,
- 0x869B, 0xCD5C, 0x869C, 0xD1C1, 0x869D, 0xF2BA, 0x869E, 0xCD5D,
- 0x869F, 0xCD5E, 0x86A0, 0xCD5F, 0x86A1, 0xCD60, 0x86A2, 0xCD61,
- 0x86A3, 0xF2BC, 0x86A4, 0xD4E9, 0x86A5, 0xCD62, 0x86A6, 0xCD63,
- 0x86A7, 0xF2BB, 0x86A8, 0xF2B6, 0x86A9, 0xF2BF, 0x86AA, 0xF2BD,
- 0x86AB, 0xCD64, 0x86AC, 0xF2B9, 0x86AD, 0xCD65, 0x86AE, 0xCD66,
- 0x86AF, 0xF2C7, 0x86B0, 0xF2C4, 0x86B1, 0xF2C6, 0x86B2, 0xCD67,
- 0x86B3, 0xCD68, 0x86B4, 0xF2CA, 0x86B5, 0xF2C2, 0x86B6, 0xF2C0,
- 0x86B7, 0xCD69, 0x86B8, 0xCD6A, 0x86B9, 0xCD6B, 0x86BA, 0xF2C5,
- 0x86BB, 0xCD6C, 0x86BC, 0xCD6D, 0x86BD, 0xCD6E, 0x86BE, 0xCD6F,
- 0x86BF, 0xCD70, 0x86C0, 0xD6FB, 0x86C1, 0xCD71, 0x86C2, 0xCD72,
- 0x86C3, 0xCD73, 0x86C4, 0xF2C1, 0x86C5, 0xCD74, 0x86C6, 0xC7F9,
- 0x86C7, 0xC9DF, 0x86C8, 0xCD75, 0x86C9, 0xF2C8, 0x86CA, 0xB9C6,
- 0x86CB, 0xB5B0, 0x86CC, 0xCD76, 0x86CD, 0xCD77, 0x86CE, 0xF2C3,
- 0x86CF, 0xF2C9, 0x86D0, 0xF2D0, 0x86D1, 0xF2D6, 0x86D2, 0xCD78,
- 0x86D3, 0xCD79, 0x86D4, 0xBBD7, 0x86D5, 0xCD7A, 0x86D6, 0xCD7B,
- 0x86D7, 0xCD7C, 0x86D8, 0xF2D5, 0x86D9, 0xCDDC, 0x86DA, 0xCD7D,
- 0x86DB, 0xD6EB, 0x86DC, 0xCD7E, 0x86DD, 0xCD80, 0x86DE, 0xF2D2,
- 0x86DF, 0xF2D4, 0x86E0, 0xCD81, 0x86E1, 0xCD82, 0x86E2, 0xCD83,
- 0x86E3, 0xCD84, 0x86E4, 0xB8F2, 0x86E5, 0xCD85, 0x86E6, 0xCD86,
- 0x86E7, 0xCD87, 0x86E8, 0xCD88, 0x86E9, 0xF2CB, 0x86EA, 0xCD89,
- 0x86EB, 0xCD8A, 0x86EC, 0xCD8B, 0x86ED, 0xF2CE, 0x86EE, 0xC2F9,
- 0x86EF, 0xCD8C, 0x86F0, 0xD5DD, 0x86F1, 0xF2CC, 0x86F2, 0xF2CD,
- 0x86F3, 0xF2CF, 0x86F4, 0xF2D3, 0x86F5, 0xCD8D, 0x86F6, 0xCD8E,
- 0x86F7, 0xCD8F, 0x86F8, 0xF2D9, 0x86F9, 0xD3BC, 0x86FA, 0xCD90,
- 0x86FB, 0xCD91, 0x86FC, 0xCD92, 0x86FD, 0xCD93, 0x86FE, 0xB6EA,
- 0x86FF, 0xCD94, 0x8700, 0xCAF1, 0x8701, 0xCD95, 0x8702, 0xB7E4,
- 0x8703, 0xF2D7, 0x8704, 0xCD96, 0x8705, 0xCD97, 0x8706, 0xCD98,
- 0x8707, 0xF2D8, 0x8708, 0xF2DA, 0x8709, 0xF2DD, 0x870A, 0xF2DB,
- 0x870B, 0xCD99, 0x870C, 0xCD9A, 0x870D, 0xF2DC, 0x870E, 0xCD9B,
- 0x870F, 0xCD9C, 0x8710, 0xCD9D, 0x8711, 0xCD9E, 0x8712, 0xD1D1,
- 0x8713, 0xF2D1, 0x8714, 0xCD9F, 0x8715, 0xCDC9, 0x8716, 0xCDA0,
- 0x8717, 0xCECF, 0x8718, 0xD6A9, 0x8719, 0xCE40, 0x871A, 0xF2E3,
- 0x871B, 0xCE41, 0x871C, 0xC3DB, 0x871D, 0xCE42, 0x871E, 0xF2E0,
- 0x871F, 0xCE43, 0x8720, 0xCE44, 0x8721, 0xC0AF, 0x8722, 0xF2EC,
- 0x8723, 0xF2DE, 0x8724, 0xCE45, 0x8725, 0xF2E1, 0x8726, 0xCE46,
- 0x8727, 0xCE47, 0x8728, 0xCE48, 0x8729, 0xF2E8, 0x872A, 0xCE49,
- 0x872B, 0xCE4A, 0x872C, 0xCE4B, 0x872D, 0xCE4C, 0x872E, 0xF2E2,
- 0x872F, 0xCE4D, 0x8730, 0xCE4E, 0x8731, 0xF2E7, 0x8732, 0xCE4F,
- 0x8733, 0xCE50, 0x8734, 0xF2E6, 0x8735, 0xCE51, 0x8736, 0xCE52,
- 0x8737, 0xF2E9, 0x8738, 0xCE53, 0x8739, 0xCE54, 0x873A, 0xCE55,
- 0x873B, 0xF2DF, 0x873C, 0xCE56, 0x873D, 0xCE57, 0x873E, 0xF2E4,
- 0x873F, 0xF2EA, 0x8740, 0xCE58, 0x8741, 0xCE59, 0x8742, 0xCE5A,
- 0x8743, 0xCE5B, 0x8744, 0xCE5C, 0x8745, 0xCE5D, 0x8746, 0xCE5E,
- 0x8747, 0xD3AC, 0x8748, 0xF2E5, 0x8749, 0xB2F5, 0x874A, 0xCE5F,
- 0x874B, 0xCE60, 0x874C, 0xF2F2, 0x874D, 0xCE61, 0x874E, 0xD0AB,
- 0x874F, 0xCE62, 0x8750, 0xCE63, 0x8751, 0xCE64, 0x8752, 0xCE65,
- 0x8753, 0xF2F5, 0x8754, 0xCE66, 0x8755, 0xCE67, 0x8756, 0xCE68,
- 0x8757, 0xBBC8, 0x8758, 0xCE69, 0x8759, 0xF2F9, 0x875A, 0xCE6A,
- 0x875B, 0xCE6B, 0x875C, 0xCE6C, 0x875D, 0xCE6D, 0x875E, 0xCE6E,
- 0x875F, 0xCE6F, 0x8760, 0xF2F0, 0x8761, 0xCE70, 0x8762, 0xCE71,
- 0x8763, 0xF2F6, 0x8764, 0xF2F8, 0x8765, 0xF2FA, 0x8766, 0xCE72,
- 0x8767, 0xCE73, 0x8768, 0xCE74, 0x8769, 0xCE75, 0x876A, 0xCE76,
- 0x876B, 0xCE77, 0x876C, 0xCE78, 0x876D, 0xCE79, 0x876E, 0xF2F3,
- 0x876F, 0xCE7A, 0x8770, 0xF2F1, 0x8771, 0xCE7B, 0x8772, 0xCE7C,
- 0x8773, 0xCE7D, 0x8774, 0xBAFB, 0x8775, 0xCE7E, 0x8776, 0xB5FB,
- 0x8777, 0xCE80, 0x8778, 0xCE81, 0x8779, 0xCE82, 0x877A, 0xCE83,
- 0x877B, 0xF2EF, 0x877C, 0xF2F7, 0x877D, 0xF2ED, 0x877E, 0xF2EE,
- 0x877F, 0xCE84, 0x8780, 0xCE85, 0x8781, 0xCE86, 0x8782, 0xF2EB,
- 0x8783, 0xF3A6, 0x8784, 0xCE87, 0x8785, 0xF3A3, 0x8786, 0xCE88,
- 0x8787, 0xCE89, 0x8788, 0xF3A2, 0x8789, 0xCE8A, 0x878A, 0xCE8B,
- 0x878B, 0xF2F4, 0x878C, 0xCE8C, 0x878D, 0xC8DA, 0x878E, 0xCE8D,
- 0x878F, 0xCE8E, 0x8790, 0xCE8F, 0x8791, 0xCE90, 0x8792, 0xCE91,
- 0x8793, 0xF2FB, 0x8794, 0xCE92, 0x8795, 0xCE93, 0x8796, 0xCE94,
- 0x8797, 0xF3A5, 0x8798, 0xCE95, 0x8799, 0xCE96, 0x879A, 0xCE97,
- 0x879B, 0xCE98, 0x879C, 0xCE99, 0x879D, 0xCE9A, 0x879E, 0xCE9B,
- 0x879F, 0xC3F8, 0x87A0, 0xCE9C, 0x87A1, 0xCE9D, 0x87A2, 0xCE9E,
- 0x87A3, 0xCE9F, 0x87A4, 0xCEA0, 0x87A5, 0xCF40, 0x87A6, 0xCF41,
- 0x87A7, 0xCF42, 0x87A8, 0xF2FD, 0x87A9, 0xCF43, 0x87AA, 0xCF44,
- 0x87AB, 0xF3A7, 0x87AC, 0xF3A9, 0x87AD, 0xF3A4, 0x87AE, 0xCF45,
- 0x87AF, 0xF2FC, 0x87B0, 0xCF46, 0x87B1, 0xCF47, 0x87B2, 0xCF48,
- 0x87B3, 0xF3AB, 0x87B4, 0xCF49, 0x87B5, 0xF3AA, 0x87B6, 0xCF4A,
- 0x87B7, 0xCF4B, 0x87B8, 0xCF4C, 0x87B9, 0xCF4D, 0x87BA, 0xC2DD,
- 0x87BB, 0xCF4E, 0x87BC, 0xCF4F, 0x87BD, 0xF3AE, 0x87BE, 0xCF50,
- 0x87BF, 0xCF51, 0x87C0, 0xF3B0, 0x87C1, 0xCF52, 0x87C2, 0xCF53,
- 0x87C3, 0xCF54, 0x87C4, 0xCF55, 0x87C5, 0xCF56, 0x87C6, 0xF3A1,
- 0x87C7, 0xCF57, 0x87C8, 0xCF58, 0x87C9, 0xCF59, 0x87CA, 0xF3B1,
- 0x87CB, 0xF3AC, 0x87CC, 0xCF5A, 0x87CD, 0xCF5B, 0x87CE, 0xCF5C,
- 0x87CF, 0xCF5D, 0x87D0, 0xCF5E, 0x87D1, 0xF3AF, 0x87D2, 0xF2FE,
- 0x87D3, 0xF3AD, 0x87D4, 0xCF5F, 0x87D5, 0xCF60, 0x87D6, 0xCF61,
- 0x87D7, 0xCF62, 0x87D8, 0xCF63, 0x87D9, 0xCF64, 0x87DA, 0xCF65,
- 0x87DB, 0xF3B2, 0x87DC, 0xCF66, 0x87DD, 0xCF67, 0x87DE, 0xCF68,
- 0x87DF, 0xCF69, 0x87E0, 0xF3B4, 0x87E1, 0xCF6A, 0x87E2, 0xCF6B,
- 0x87E3, 0xCF6C, 0x87E4, 0xCF6D, 0x87E5, 0xF3A8, 0x87E6, 0xCF6E,
- 0x87E7, 0xCF6F, 0x87E8, 0xCF70, 0x87E9, 0xCF71, 0x87EA, 0xF3B3,
- 0x87EB, 0xCF72, 0x87EC, 0xCF73, 0x87ED, 0xCF74, 0x87EE, 0xF3B5,
- 0x87EF, 0xCF75, 0x87F0, 0xCF76, 0x87F1, 0xCF77, 0x87F2, 0xCF78,
- 0x87F3, 0xCF79, 0x87F4, 0xCF7A, 0x87F5, 0xCF7B, 0x87F6, 0xCF7C,
- 0x87F7, 0xCF7D, 0x87F8, 0xCF7E, 0x87F9, 0xD0B7, 0x87FA, 0xCF80,
- 0x87FB, 0xCF81, 0x87FC, 0xCF82, 0x87FD, 0xCF83, 0x87FE, 0xF3B8,
- 0x87FF, 0xCF84, 0x8800, 0xCF85, 0x8801, 0xCF86, 0x8802, 0xCF87,
- 0x8803, 0xD9F9, 0x8804, 0xCF88, 0x8805, 0xCF89, 0x8806, 0xCF8A,
- 0x8807, 0xCF8B, 0x8808, 0xCF8C, 0x8809, 0xCF8D, 0x880A, 0xF3B9,
- 0x880B, 0xCF8E, 0x880C, 0xCF8F, 0x880D, 0xCF90, 0x880E, 0xCF91,
- 0x880F, 0xCF92, 0x8810, 0xCF93, 0x8811, 0xCF94, 0x8812, 0xCF95,
- 0x8813, 0xF3B7, 0x8814, 0xCF96, 0x8815, 0xC8E4, 0x8816, 0xF3B6,
- 0x8817, 0xCF97, 0x8818, 0xCF98, 0x8819, 0xCF99, 0x881A, 0xCF9A,
- 0x881B, 0xF3BA, 0x881C, 0xCF9B, 0x881D, 0xCF9C, 0x881E, 0xCF9D,
- 0x881F, 0xCF9E, 0x8820, 0xCF9F, 0x8821, 0xF3BB, 0x8822, 0xB4C0,
- 0x8823, 0xCFA0, 0x8824, 0xD040, 0x8825, 0xD041, 0x8826, 0xD042,
- 0x8827, 0xD043, 0x8828, 0xD044, 0x8829, 0xD045, 0x882A, 0xD046,
- 0x882B, 0xD047, 0x882C, 0xD048, 0x882D, 0xD049, 0x882E, 0xD04A,
- 0x882F, 0xD04B, 0x8830, 0xD04C, 0x8831, 0xD04D, 0x8832, 0xEEC3,
- 0x8833, 0xD04E, 0x8834, 0xD04F, 0x8835, 0xD050, 0x8836, 0xD051,
- 0x8837, 0xD052, 0x8838, 0xD053, 0x8839, 0xF3BC, 0x883A, 0xD054,
- 0x883B, 0xD055, 0x883C, 0xF3BD, 0x883D, 0xD056, 0x883E, 0xD057,
- 0x883F, 0xD058, 0x8840, 0xD1AA, 0x8841, 0xD059, 0x8842, 0xD05A,
- 0x8843, 0xD05B, 0x8844, 0xF4AC, 0x8845, 0xD0C6, 0x8846, 0xD05C,
- 0x8847, 0xD05D, 0x8848, 0xD05E, 0x8849, 0xD05F, 0x884A, 0xD060,
- 0x884B, 0xD061, 0x884C, 0xD0D0, 0x884D, 0xD1DC, 0x884E, 0xD062,
- 0x884F, 0xD063, 0x8850, 0xD064, 0x8851, 0xD065, 0x8852, 0xD066,
- 0x8853, 0xD067, 0x8854, 0xCFCE, 0x8855, 0xD068, 0x8856, 0xD069,
- 0x8857, 0xBDD6, 0x8858, 0xD06A, 0x8859, 0xD1C3, 0x885A, 0xD06B,
- 0x885B, 0xD06C, 0x885C, 0xD06D, 0x885D, 0xD06E, 0x885E, 0xD06F,
- 0x885F, 0xD070, 0x8860, 0xD071, 0x8861, 0xBAE2, 0x8862, 0xE1E9,
- 0x8863, 0xD2C2, 0x8864, 0xF1C2, 0x8865, 0xB2B9, 0x8866, 0xD072,
- 0x8867, 0xD073, 0x8868, 0xB1ED, 0x8869, 0xF1C3, 0x886A, 0xD074,
- 0x886B, 0xC9C0, 0x886C, 0xB3C4, 0x886D, 0xD075, 0x886E, 0xD9F2,
- 0x886F, 0xD076, 0x8870, 0xCBA5, 0x8871, 0xD077, 0x8872, 0xF1C4,
- 0x8873, 0xD078, 0x8874, 0xD079, 0x8875, 0xD07A, 0x8876, 0xD07B,
- 0x8877, 0xD6D4, 0x8878, 0xD07C, 0x8879, 0xD07D, 0x887A, 0xD07E,
- 0x887B, 0xD080, 0x887C, 0xD081, 0x887D, 0xF1C5, 0x887E, 0xF4C0,
- 0x887F, 0xF1C6, 0x8880, 0xD082, 0x8881, 0xD4AC, 0x8882, 0xF1C7,
- 0x8883, 0xD083, 0x8884, 0xB0C0, 0x8885, 0xF4C1, 0x8886, 0xD084,
- 0x8887, 0xD085, 0x8888, 0xF4C2, 0x8889, 0xD086, 0x888A, 0xD087,
- 0x888B, 0xB4FC, 0x888C, 0xD088, 0x888D, 0xC5DB, 0x888E, 0xD089,
- 0x888F, 0xD08A, 0x8890, 0xD08B, 0x8891, 0xD08C, 0x8892, 0xCCBB,
- 0x8893, 0xD08D, 0x8894, 0xD08E, 0x8895, 0xD08F, 0x8896, 0xD0E4,
- 0x8897, 0xD090, 0x8898, 0xD091, 0x8899, 0xD092, 0x889A, 0xD093,
- 0x889B, 0xD094, 0x889C, 0xCDE0, 0x889D, 0xD095, 0x889E, 0xD096,
- 0x889F, 0xD097, 0x88A0, 0xD098, 0x88A1, 0xD099, 0x88A2, 0xF1C8,
- 0x88A3, 0xD09A, 0x88A4, 0xD9F3, 0x88A5, 0xD09B, 0x88A6, 0xD09C,
- 0x88A7, 0xD09D, 0x88A8, 0xD09E, 0x88A9, 0xD09F, 0x88AA, 0xD0A0,
- 0x88AB, 0xB1BB, 0x88AC, 0xD140, 0x88AD, 0xCFAE, 0x88AE, 0xD141,
- 0x88AF, 0xD142, 0x88B0, 0xD143, 0x88B1, 0xB8A4, 0x88B2, 0xD144,
- 0x88B3, 0xD145, 0x88B4, 0xD146, 0x88B5, 0xD147, 0x88B6, 0xD148,
- 0x88B7, 0xF1CA, 0x88B8, 0xD149, 0x88B9, 0xD14A, 0x88BA, 0xD14B,
- 0x88BB, 0xD14C, 0x88BC, 0xF1CB, 0x88BD, 0xD14D, 0x88BE, 0xD14E,
- 0x88BF, 0xD14F, 0x88C0, 0xD150, 0x88C1, 0xB2C3, 0x88C2, 0xC1D1,
- 0x88C3, 0xD151, 0x88C4, 0xD152, 0x88C5, 0xD7B0, 0x88C6, 0xF1C9,
- 0x88C7, 0xD153, 0x88C8, 0xD154, 0x88C9, 0xF1CC, 0x88CA, 0xD155,
- 0x88CB, 0xD156, 0x88CC, 0xD157, 0x88CD, 0xD158, 0x88CE, 0xF1CE,
- 0x88CF, 0xD159, 0x88D0, 0xD15A, 0x88D1, 0xD15B, 0x88D2, 0xD9F6,
- 0x88D3, 0xD15C, 0x88D4, 0xD2E1, 0x88D5, 0xD4A3, 0x88D6, 0xD15D,
- 0x88D7, 0xD15E, 0x88D8, 0xF4C3, 0x88D9, 0xC8B9, 0x88DA, 0xD15F,
- 0x88DB, 0xD160, 0x88DC, 0xD161, 0x88DD, 0xD162, 0x88DE, 0xD163,
- 0x88DF, 0xF4C4, 0x88E0, 0xD164, 0x88E1, 0xD165, 0x88E2, 0xF1CD,
- 0x88E3, 0xF1CF, 0x88E4, 0xBFE3, 0x88E5, 0xF1D0, 0x88E6, 0xD166,
- 0x88E7, 0xD167, 0x88E8, 0xF1D4, 0x88E9, 0xD168, 0x88EA, 0xD169,
- 0x88EB, 0xD16A, 0x88EC, 0xD16B, 0x88ED, 0xD16C, 0x88EE, 0xD16D,
- 0x88EF, 0xD16E, 0x88F0, 0xF1D6, 0x88F1, 0xF1D1, 0x88F2, 0xD16F,
- 0x88F3, 0xC9D1, 0x88F4, 0xC5E1, 0x88F5, 0xD170, 0x88F6, 0xD171,
- 0x88F7, 0xD172, 0x88F8, 0xC2E3, 0x88F9, 0xB9FC, 0x88FA, 0xD173,
- 0x88FB, 0xD174, 0x88FC, 0xF1D3, 0x88FD, 0xD175, 0x88FE, 0xF1D5,
- 0x88FF, 0xD176, 0x8900, 0xD177, 0x8901, 0xD178, 0x8902, 0xB9D3,
- 0x8903, 0xD179, 0x8904, 0xD17A, 0x8905, 0xD17B, 0x8906, 0xD17C,
- 0x8907, 0xD17D, 0x8908, 0xD17E, 0x8909, 0xD180, 0x890A, 0xF1DB,
- 0x890B, 0xD181, 0x890C, 0xD182, 0x890D, 0xD183, 0x890E, 0xD184,
- 0x890F, 0xD185, 0x8910, 0xBAD6, 0x8911, 0xD186, 0x8912, 0xB0FD,
- 0x8913, 0xF1D9, 0x8914, 0xD187, 0x8915, 0xD188, 0x8916, 0xD189,
- 0x8917, 0xD18A, 0x8918, 0xD18B, 0x8919, 0xF1D8, 0x891A, 0xF1D2,
- 0x891B, 0xF1DA, 0x891C, 0xD18C, 0x891D, 0xD18D, 0x891E, 0xD18E,
- 0x891F, 0xD18F, 0x8920, 0xD190, 0x8921, 0xF1D7, 0x8922, 0xD191,
- 0x8923, 0xD192, 0x8924, 0xD193, 0x8925, 0xC8EC, 0x8926, 0xD194,
- 0x8927, 0xD195, 0x8928, 0xD196, 0x8929, 0xD197, 0x892A, 0xCDCA,
- 0x892B, 0xF1DD, 0x892C, 0xD198, 0x892D, 0xD199, 0x892E, 0xD19A,
- 0x892F, 0xD19B, 0x8930, 0xE5BD, 0x8931, 0xD19C, 0x8932, 0xD19D,
- 0x8933, 0xD19E, 0x8934, 0xF1DC, 0x8935, 0xD19F, 0x8936, 0xF1DE,
- 0x8937, 0xD1A0, 0x8938, 0xD240, 0x8939, 0xD241, 0x893A, 0xD242,
- 0x893B, 0xD243, 0x893C, 0xD244, 0x893D, 0xD245, 0x893E, 0xD246,
- 0x893F, 0xD247, 0x8940, 0xD248, 0x8941, 0xF1DF, 0x8942, 0xD249,
- 0x8943, 0xD24A, 0x8944, 0xCFE5, 0x8945, 0xD24B, 0x8946, 0xD24C,
- 0x8947, 0xD24D, 0x8948, 0xD24E, 0x8949, 0xD24F, 0x894A, 0xD250,
- 0x894B, 0xD251, 0x894C, 0xD252, 0x894D, 0xD253, 0x894E, 0xD254,
- 0x894F, 0xD255, 0x8950, 0xD256, 0x8951, 0xD257, 0x8952, 0xD258,
- 0x8953, 0xD259, 0x8954, 0xD25A, 0x8955, 0xD25B, 0x8956, 0xD25C,
- 0x8957, 0xD25D, 0x8958, 0xD25E, 0x8959, 0xD25F, 0x895A, 0xD260,
- 0x895B, 0xD261, 0x895C, 0xD262, 0x895D, 0xD263, 0x895E, 0xF4C5,
- 0x895F, 0xBDF3, 0x8960, 0xD264, 0x8961, 0xD265, 0x8962, 0xD266,
- 0x8963, 0xD267, 0x8964, 0xD268, 0x8965, 0xD269, 0x8966, 0xF1E0,
- 0x8967, 0xD26A, 0x8968, 0xD26B, 0x8969, 0xD26C, 0x896A, 0xD26D,
- 0x896B, 0xD26E, 0x896C, 0xD26F, 0x896D, 0xD270, 0x896E, 0xD271,
- 0x896F, 0xD272, 0x8970, 0xD273, 0x8971, 0xD274, 0x8972, 0xD275,
- 0x8973, 0xD276, 0x8974, 0xD277, 0x8975, 0xD278, 0x8976, 0xD279,
- 0x8977, 0xD27A, 0x8978, 0xD27B, 0x8979, 0xD27C, 0x897A, 0xD27D,
- 0x897B, 0xF1E1, 0x897C, 0xD27E, 0x897D, 0xD280, 0x897E, 0xD281,
- 0x897F, 0xCEF7, 0x8980, 0xD282, 0x8981, 0xD2AA, 0x8982, 0xD283,
- 0x8983, 0xF1FB, 0x8984, 0xD284, 0x8985, 0xD285, 0x8986, 0xB8B2,
- 0x8987, 0xD286, 0x8988, 0xD287, 0x8989, 0xD288, 0x898A, 0xD289,
- 0x898B, 0xD28A, 0x898C, 0xD28B, 0x898D, 0xD28C, 0x898E, 0xD28D,
- 0x898F, 0xD28E, 0x8990, 0xD28F, 0x8991, 0xD290, 0x8992, 0xD291,
- 0x8993, 0xD292, 0x8994, 0xD293, 0x8995, 0xD294, 0x8996, 0xD295,
- 0x8997, 0xD296, 0x8998, 0xD297, 0x8999, 0xD298, 0x899A, 0xD299,
- 0x899B, 0xD29A, 0x899C, 0xD29B, 0x899D, 0xD29C, 0x899E, 0xD29D,
- 0x899F, 0xD29E, 0x89A0, 0xD29F, 0x89A1, 0xD2A0, 0x89A2, 0xD340,
- 0x89A3, 0xD341, 0x89A4, 0xD342, 0x89A5, 0xD343, 0x89A6, 0xD344,
- 0x89A7, 0xD345, 0x89A8, 0xD346, 0x89A9, 0xD347, 0x89AA, 0xD348,
- 0x89AB, 0xD349, 0x89AC, 0xD34A, 0x89AD, 0xD34B, 0x89AE, 0xD34C,
- 0x89AF, 0xD34D, 0x89B0, 0xD34E, 0x89B1, 0xD34F, 0x89B2, 0xD350,
- 0x89B3, 0xD351, 0x89B4, 0xD352, 0x89B5, 0xD353, 0x89B6, 0xD354,
- 0x89B7, 0xD355, 0x89B8, 0xD356, 0x89B9, 0xD357, 0x89BA, 0xD358,
- 0x89BB, 0xD359, 0x89BC, 0xD35A, 0x89BD, 0xD35B, 0x89BE, 0xD35C,
- 0x89BF, 0xD35D, 0x89C0, 0xD35E, 0x89C1, 0xBCFB, 0x89C2, 0xB9DB,
- 0x89C3, 0xD35F, 0x89C4, 0xB9E6, 0x89C5, 0xC3D9, 0x89C6, 0xCAD3,
- 0x89C7, 0xEAE8, 0x89C8, 0xC0C0, 0x89C9, 0xBEF5, 0x89CA, 0xEAE9,
- 0x89CB, 0xEAEA, 0x89CC, 0xEAEB, 0x89CD, 0xD360, 0x89CE, 0xEAEC,
- 0x89CF, 0xEAED, 0x89D0, 0xEAEE, 0x89D1, 0xEAEF, 0x89D2, 0xBDC7,
- 0x89D3, 0xD361, 0x89D4, 0xD362, 0x89D5, 0xD363, 0x89D6, 0xF5FB,
- 0x89D7, 0xD364, 0x89D8, 0xD365, 0x89D9, 0xD366, 0x89DA, 0xF5FD,
- 0x89DB, 0xD367, 0x89DC, 0xF5FE, 0x89DD, 0xD368, 0x89DE, 0xF5FC,
- 0x89DF, 0xD369, 0x89E0, 0xD36A, 0x89E1, 0xD36B, 0x89E2, 0xD36C,
- 0x89E3, 0xBDE2, 0x89E4, 0xD36D, 0x89E5, 0xF6A1, 0x89E6, 0xB4A5,
- 0x89E7, 0xD36E, 0x89E8, 0xD36F, 0x89E9, 0xD370, 0x89EA, 0xD371,
- 0x89EB, 0xF6A2, 0x89EC, 0xD372, 0x89ED, 0xD373, 0x89EE, 0xD374,
- 0x89EF, 0xF6A3, 0x89F0, 0xD375, 0x89F1, 0xD376, 0x89F2, 0xD377,
- 0x89F3, 0xECB2, 0x89F4, 0xD378, 0x89F5, 0xD379, 0x89F6, 0xD37A,
- 0x89F7, 0xD37B, 0x89F8, 0xD37C, 0x89F9, 0xD37D, 0x89FA, 0xD37E,
- 0x89FB, 0xD380, 0x89FC, 0xD381, 0x89FD, 0xD382, 0x89FE, 0xD383,
- 0x89FF, 0xD384, 0x8A00, 0xD1D4, 0x8A01, 0xD385, 0x8A02, 0xD386,
- 0x8A03, 0xD387, 0x8A04, 0xD388, 0x8A05, 0xD389, 0x8A06, 0xD38A,
- 0x8A07, 0xD9EA, 0x8A08, 0xD38B, 0x8A09, 0xD38C, 0x8A0A, 0xD38D,
- 0x8A0B, 0xD38E, 0x8A0C, 0xD38F, 0x8A0D, 0xD390, 0x8A0E, 0xD391,
- 0x8A0F, 0xD392, 0x8A10, 0xD393, 0x8A11, 0xD394, 0x8A12, 0xD395,
- 0x8A13, 0xD396, 0x8A14, 0xD397, 0x8A15, 0xD398, 0x8A16, 0xD399,
- 0x8A17, 0xD39A, 0x8A18, 0xD39B, 0x8A19, 0xD39C, 0x8A1A, 0xD39D,
- 0x8A1B, 0xD39E, 0x8A1C, 0xD39F, 0x8A1D, 0xD3A0, 0x8A1E, 0xD440,
- 0x8A1F, 0xD441, 0x8A20, 0xD442, 0x8A21, 0xD443, 0x8A22, 0xD444,
- 0x8A23, 0xD445, 0x8A24, 0xD446, 0x8A25, 0xD447, 0x8A26, 0xD448,
- 0x8A27, 0xD449, 0x8A28, 0xD44A, 0x8A29, 0xD44B, 0x8A2A, 0xD44C,
- 0x8A2B, 0xD44D, 0x8A2C, 0xD44E, 0x8A2D, 0xD44F, 0x8A2E, 0xD450,
- 0x8A2F, 0xD451, 0x8A30, 0xD452, 0x8A31, 0xD453, 0x8A32, 0xD454,
- 0x8A33, 0xD455, 0x8A34, 0xD456, 0x8A35, 0xD457, 0x8A36, 0xD458,
- 0x8A37, 0xD459, 0x8A38, 0xD45A, 0x8A39, 0xD45B, 0x8A3A, 0xD45C,
- 0x8A3B, 0xD45D, 0x8A3C, 0xD45E, 0x8A3D, 0xD45F, 0x8A3E, 0xF6A4,
- 0x8A3F, 0xD460, 0x8A40, 0xD461, 0x8A41, 0xD462, 0x8A42, 0xD463,
- 0x8A43, 0xD464, 0x8A44, 0xD465, 0x8A45, 0xD466, 0x8A46, 0xD467,
- 0x8A47, 0xD468, 0x8A48, 0xEEBA, 0x8A49, 0xD469, 0x8A4A, 0xD46A,
- 0x8A4B, 0xD46B, 0x8A4C, 0xD46C, 0x8A4D, 0xD46D, 0x8A4E, 0xD46E,
- 0x8A4F, 0xD46F, 0x8A50, 0xD470, 0x8A51, 0xD471, 0x8A52, 0xD472,
- 0x8A53, 0xD473, 0x8A54, 0xD474, 0x8A55, 0xD475, 0x8A56, 0xD476,
- 0x8A57, 0xD477, 0x8A58, 0xD478, 0x8A59, 0xD479, 0x8A5A, 0xD47A,
- 0x8A5B, 0xD47B, 0x8A5C, 0xD47C, 0x8A5D, 0xD47D, 0x8A5E, 0xD47E,
- 0x8A5F, 0xD480, 0x8A60, 0xD481, 0x8A61, 0xD482, 0x8A62, 0xD483,
- 0x8A63, 0xD484, 0x8A64, 0xD485, 0x8A65, 0xD486, 0x8A66, 0xD487,
- 0x8A67, 0xD488, 0x8A68, 0xD489, 0x8A69, 0xD48A, 0x8A6A, 0xD48B,
- 0x8A6B, 0xD48C, 0x8A6C, 0xD48D, 0x8A6D, 0xD48E, 0x8A6E, 0xD48F,
- 0x8A6F, 0xD490, 0x8A70, 0xD491, 0x8A71, 0xD492, 0x8A72, 0xD493,
- 0x8A73, 0xD494, 0x8A74, 0xD495, 0x8A75, 0xD496, 0x8A76, 0xD497,
- 0x8A77, 0xD498, 0x8A78, 0xD499, 0x8A79, 0xD5B2, 0x8A7A, 0xD49A,
- 0x8A7B, 0xD49B, 0x8A7C, 0xD49C, 0x8A7D, 0xD49D, 0x8A7E, 0xD49E,
- 0x8A7F, 0xD49F, 0x8A80, 0xD4A0, 0x8A81, 0xD540, 0x8A82, 0xD541,
- 0x8A83, 0xD542, 0x8A84, 0xD543, 0x8A85, 0xD544, 0x8A86, 0xD545,
- 0x8A87, 0xD546, 0x8A88, 0xD547, 0x8A89, 0xD3FE, 0x8A8A, 0xCCDC,
- 0x8A8B, 0xD548, 0x8A8C, 0xD549, 0x8A8D, 0xD54A, 0x8A8E, 0xD54B,
- 0x8A8F, 0xD54C, 0x8A90, 0xD54D, 0x8A91, 0xD54E, 0x8A92, 0xD54F,
- 0x8A93, 0xCAC4, 0x8A94, 0xD550, 0x8A95, 0xD551, 0x8A96, 0xD552,
- 0x8A97, 0xD553, 0x8A98, 0xD554, 0x8A99, 0xD555, 0x8A9A, 0xD556,
- 0x8A9B, 0xD557, 0x8A9C, 0xD558, 0x8A9D, 0xD559, 0x8A9E, 0xD55A,
- 0x8A9F, 0xD55B, 0x8AA0, 0xD55C, 0x8AA1, 0xD55D, 0x8AA2, 0xD55E,
- 0x8AA3, 0xD55F, 0x8AA4, 0xD560, 0x8AA5, 0xD561, 0x8AA6, 0xD562,
- 0x8AA7, 0xD563, 0x8AA8, 0xD564, 0x8AA9, 0xD565, 0x8AAA, 0xD566,
- 0x8AAB, 0xD567, 0x8AAC, 0xD568, 0x8AAD, 0xD569, 0x8AAE, 0xD56A,
- 0x8AAF, 0xD56B, 0x8AB0, 0xD56C, 0x8AB1, 0xD56D, 0x8AB2, 0xD56E,
- 0x8AB3, 0xD56F, 0x8AB4, 0xD570, 0x8AB5, 0xD571, 0x8AB6, 0xD572,
- 0x8AB7, 0xD573, 0x8AB8, 0xD574, 0x8AB9, 0xD575, 0x8ABA, 0xD576,
- 0x8ABB, 0xD577, 0x8ABC, 0xD578, 0x8ABD, 0xD579, 0x8ABE, 0xD57A,
- 0x8ABF, 0xD57B, 0x8AC0, 0xD57C, 0x8AC1, 0xD57D, 0x8AC2, 0xD57E,
- 0x8AC3, 0xD580, 0x8AC4, 0xD581, 0x8AC5, 0xD582, 0x8AC6, 0xD583,
- 0x8AC7, 0xD584, 0x8AC8, 0xD585, 0x8AC9, 0xD586, 0x8ACA, 0xD587,
- 0x8ACB, 0xD588, 0x8ACC, 0xD589, 0x8ACD, 0xD58A, 0x8ACE, 0xD58B,
- 0x8ACF, 0xD58C, 0x8AD0, 0xD58D, 0x8AD1, 0xD58E, 0x8AD2, 0xD58F,
- 0x8AD3, 0xD590, 0x8AD4, 0xD591, 0x8AD5, 0xD592, 0x8AD6, 0xD593,
- 0x8AD7, 0xD594, 0x8AD8, 0xD595, 0x8AD9, 0xD596, 0x8ADA, 0xD597,
- 0x8ADB, 0xD598, 0x8ADC, 0xD599, 0x8ADD, 0xD59A, 0x8ADE, 0xD59B,
- 0x8ADF, 0xD59C, 0x8AE0, 0xD59D, 0x8AE1, 0xD59E, 0x8AE2, 0xD59F,
- 0x8AE3, 0xD5A0, 0x8AE4, 0xD640, 0x8AE5, 0xD641, 0x8AE6, 0xD642,
- 0x8AE7, 0xD643, 0x8AE8, 0xD644, 0x8AE9, 0xD645, 0x8AEA, 0xD646,
- 0x8AEB, 0xD647, 0x8AEC, 0xD648, 0x8AED, 0xD649, 0x8AEE, 0xD64A,
- 0x8AEF, 0xD64B, 0x8AF0, 0xD64C, 0x8AF1, 0xD64D, 0x8AF2, 0xD64E,
- 0x8AF3, 0xD64F, 0x8AF4, 0xD650, 0x8AF5, 0xD651, 0x8AF6, 0xD652,
- 0x8AF7, 0xD653, 0x8AF8, 0xD654, 0x8AF9, 0xD655, 0x8AFA, 0xD656,
- 0x8AFB, 0xD657, 0x8AFC, 0xD658, 0x8AFD, 0xD659, 0x8AFE, 0xD65A,
- 0x8AFF, 0xD65B, 0x8B00, 0xD65C, 0x8B01, 0xD65D, 0x8B02, 0xD65E,
- 0x8B03, 0xD65F, 0x8B04, 0xD660, 0x8B05, 0xD661, 0x8B06, 0xD662,
- 0x8B07, 0xE5C0, 0x8B08, 0xD663, 0x8B09, 0xD664, 0x8B0A, 0xD665,
- 0x8B0B, 0xD666, 0x8B0C, 0xD667, 0x8B0D, 0xD668, 0x8B0E, 0xD669,
- 0x8B0F, 0xD66A, 0x8B10, 0xD66B, 0x8B11, 0xD66C, 0x8B12, 0xD66D,
- 0x8B13, 0xD66E, 0x8B14, 0xD66F, 0x8B15, 0xD670, 0x8B16, 0xD671,
- 0x8B17, 0xD672, 0x8B18, 0xD673, 0x8B19, 0xD674, 0x8B1A, 0xD675,
- 0x8B1B, 0xD676, 0x8B1C, 0xD677, 0x8B1D, 0xD678, 0x8B1E, 0xD679,
- 0x8B1F, 0xD67A, 0x8B20, 0xD67B, 0x8B21, 0xD67C, 0x8B22, 0xD67D,
- 0x8B23, 0xD67E, 0x8B24, 0xD680, 0x8B25, 0xD681, 0x8B26, 0xF6A5,
- 0x8B27, 0xD682, 0x8B28, 0xD683, 0x8B29, 0xD684, 0x8B2A, 0xD685,
- 0x8B2B, 0xD686, 0x8B2C, 0xD687, 0x8B2D, 0xD688, 0x8B2E, 0xD689,
- 0x8B2F, 0xD68A, 0x8B30, 0xD68B, 0x8B31, 0xD68C, 0x8B32, 0xD68D,
- 0x8B33, 0xD68E, 0x8B34, 0xD68F, 0x8B35, 0xD690, 0x8B36, 0xD691,
- 0x8B37, 0xD692, 0x8B38, 0xD693, 0x8B39, 0xD694, 0x8B3A, 0xD695,
- 0x8B3B, 0xD696, 0x8B3C, 0xD697, 0x8B3D, 0xD698, 0x8B3E, 0xD699,
- 0x8B3F, 0xD69A, 0x8B40, 0xD69B, 0x8B41, 0xD69C, 0x8B42, 0xD69D,
- 0x8B43, 0xD69E, 0x8B44, 0xD69F, 0x8B45, 0xD6A0, 0x8B46, 0xD740,
- 0x8B47, 0xD741, 0x8B48, 0xD742, 0x8B49, 0xD743, 0x8B4A, 0xD744,
- 0x8B4B, 0xD745, 0x8B4C, 0xD746, 0x8B4D, 0xD747, 0x8B4E, 0xD748,
- 0x8B4F, 0xD749, 0x8B50, 0xD74A, 0x8B51, 0xD74B, 0x8B52, 0xD74C,
- 0x8B53, 0xD74D, 0x8B54, 0xD74E, 0x8B55, 0xD74F, 0x8B56, 0xD750,
- 0x8B57, 0xD751, 0x8B58, 0xD752, 0x8B59, 0xD753, 0x8B5A, 0xD754,
- 0x8B5B, 0xD755, 0x8B5C, 0xD756, 0x8B5D, 0xD757, 0x8B5E, 0xD758,
- 0x8B5F, 0xD759, 0x8B60, 0xD75A, 0x8B61, 0xD75B, 0x8B62, 0xD75C,
- 0x8B63, 0xD75D, 0x8B64, 0xD75E, 0x8B65, 0xD75F, 0x8B66, 0xBEAF,
- 0x8B67, 0xD760, 0x8B68, 0xD761, 0x8B69, 0xD762, 0x8B6A, 0xD763,
- 0x8B6B, 0xD764, 0x8B6C, 0xC6A9, 0x8B6D, 0xD765, 0x8B6E, 0xD766,
- 0x8B6F, 0xD767, 0x8B70, 0xD768, 0x8B71, 0xD769, 0x8B72, 0xD76A,
- 0x8B73, 0xD76B, 0x8B74, 0xD76C, 0x8B75, 0xD76D, 0x8B76, 0xD76E,
- 0x8B77, 0xD76F, 0x8B78, 0xD770, 0x8B79, 0xD771, 0x8B7A, 0xD772,
- 0x8B7B, 0xD773, 0x8B7C, 0xD774, 0x8B7D, 0xD775, 0x8B7E, 0xD776,
- 0x8B7F, 0xD777, 0x8B80, 0xD778, 0x8B81, 0xD779, 0x8B82, 0xD77A,
- 0x8B83, 0xD77B, 0x8B84, 0xD77C, 0x8B85, 0xD77D, 0x8B86, 0xD77E,
- 0x8B87, 0xD780, 0x8B88, 0xD781, 0x8B89, 0xD782, 0x8B8A, 0xD783,
- 0x8B8B, 0xD784, 0x8B8C, 0xD785, 0x8B8D, 0xD786, 0x8B8E, 0xD787,
- 0x8B8F, 0xD788, 0x8B90, 0xD789, 0x8B91, 0xD78A, 0x8B92, 0xD78B,
- 0x8B93, 0xD78C, 0x8B94, 0xD78D, 0x8B95, 0xD78E, 0x8B96, 0xD78F,
- 0x8B97, 0xD790, 0x8B98, 0xD791, 0x8B99, 0xD792, 0x8B9A, 0xD793,
- 0x8B9B, 0xD794, 0x8B9C, 0xD795, 0x8B9D, 0xD796, 0x8B9E, 0xD797,
- 0x8B9F, 0xD798, 0x8BA0, 0xDAA5, 0x8BA1, 0xBCC6, 0x8BA2, 0xB6A9,
- 0x8BA3, 0xB8BC, 0x8BA4, 0xC8CF, 0x8BA5, 0xBCA5, 0x8BA6, 0xDAA6,
- 0x8BA7, 0xDAA7, 0x8BA8, 0xCCD6, 0x8BA9, 0xC8C3, 0x8BAA, 0xDAA8,
- 0x8BAB, 0xC6FD, 0x8BAC, 0xD799, 0x8BAD, 0xD1B5, 0x8BAE, 0xD2E9,
- 0x8BAF, 0xD1B6, 0x8BB0, 0xBCC7, 0x8BB1, 0xD79A, 0x8BB2, 0xBDB2,
- 0x8BB3, 0xBBE4, 0x8BB4, 0xDAA9, 0x8BB5, 0xDAAA, 0x8BB6, 0xD1C8,
- 0x8BB7, 0xDAAB, 0x8BB8, 0xD0ED, 0x8BB9, 0xB6EF, 0x8BBA, 0xC2DB,
- 0x8BBB, 0xD79B, 0x8BBC, 0xCBCF, 0x8BBD, 0xB7ED, 0x8BBE, 0xC9E8,
- 0x8BBF, 0xB7C3, 0x8BC0, 0xBEF7, 0x8BC1, 0xD6A4, 0x8BC2, 0xDAAC,
- 0x8BC3, 0xDAAD, 0x8BC4, 0xC6C0, 0x8BC5, 0xD7E7, 0x8BC6, 0xCAB6,
- 0x8BC7, 0xD79C, 0x8BC8, 0xD5A9, 0x8BC9, 0xCBDF, 0x8BCA, 0xD5EF,
- 0x8BCB, 0xDAAE, 0x8BCC, 0xD6DF, 0x8BCD, 0xB4CA, 0x8BCE, 0xDAB0,
- 0x8BCF, 0xDAAF, 0x8BD0, 0xD79D, 0x8BD1, 0xD2EB, 0x8BD2, 0xDAB1,
- 0x8BD3, 0xDAB2, 0x8BD4, 0xDAB3, 0x8BD5, 0xCAD4, 0x8BD6, 0xDAB4,
- 0x8BD7, 0xCAAB, 0x8BD8, 0xDAB5, 0x8BD9, 0xDAB6, 0x8BDA, 0xB3CF,
- 0x8BDB, 0xD6EF, 0x8BDC, 0xDAB7, 0x8BDD, 0xBBB0, 0x8BDE, 0xB5AE,
- 0x8BDF, 0xDAB8, 0x8BE0, 0xDAB9, 0x8BE1, 0xB9EE, 0x8BE2, 0xD1AF,
- 0x8BE3, 0xD2E8, 0x8BE4, 0xDABA, 0x8BE5, 0xB8C3, 0x8BE6, 0xCFEA,
- 0x8BE7, 0xB2EF, 0x8BE8, 0xDABB, 0x8BE9, 0xDABC, 0x8BEA, 0xD79E,
- 0x8BEB, 0xBDEB, 0x8BEC, 0xCEDC, 0x8BED, 0xD3EF, 0x8BEE, 0xDABD,
- 0x8BEF, 0xCEF3, 0x8BF0, 0xDABE, 0x8BF1, 0xD3D5, 0x8BF2, 0xBBE5,
- 0x8BF3, 0xDABF, 0x8BF4, 0xCBB5, 0x8BF5, 0xCBD0, 0x8BF6, 0xDAC0,
- 0x8BF7, 0xC7EB, 0x8BF8, 0xD6EE, 0x8BF9, 0xDAC1, 0x8BFA, 0xC5B5,
- 0x8BFB, 0xB6C1, 0x8BFC, 0xDAC2, 0x8BFD, 0xB7CC, 0x8BFE, 0xBFCE,
- 0x8BFF, 0xDAC3, 0x8C00, 0xDAC4, 0x8C01, 0xCBAD, 0x8C02, 0xDAC5,
- 0x8C03, 0xB5F7, 0x8C04, 0xDAC6, 0x8C05, 0xC1C2, 0x8C06, 0xD7BB,
- 0x8C07, 0xDAC7, 0x8C08, 0xCCB8, 0x8C09, 0xD79F, 0x8C0A, 0xD2EA,
- 0x8C0B, 0xC4B1, 0x8C0C, 0xDAC8, 0x8C0D, 0xB5FD, 0x8C0E, 0xBBD1,
- 0x8C0F, 0xDAC9, 0x8C10, 0xD0B3, 0x8C11, 0xDACA, 0x8C12, 0xDACB,
- 0x8C13, 0xCEBD, 0x8C14, 0xDACC, 0x8C15, 0xDACD, 0x8C16, 0xDACE,
- 0x8C17, 0xB2F7, 0x8C18, 0xDAD1, 0x8C19, 0xDACF, 0x8C1A, 0xD1E8,
- 0x8C1B, 0xDAD0, 0x8C1C, 0xC3D5, 0x8C1D, 0xDAD2, 0x8C1E, 0xD7A0,
- 0x8C1F, 0xDAD3, 0x8C20, 0xDAD4, 0x8C21, 0xDAD5, 0x8C22, 0xD0BB,
- 0x8C23, 0xD2A5, 0x8C24, 0xB0F9, 0x8C25, 0xDAD6, 0x8C26, 0xC7AB,
- 0x8C27, 0xDAD7, 0x8C28, 0xBDF7, 0x8C29, 0xC3A1, 0x8C2A, 0xDAD8,
- 0x8C2B, 0xDAD9, 0x8C2C, 0xC3FD, 0x8C2D, 0xCCB7, 0x8C2E, 0xDADA,
- 0x8C2F, 0xDADB, 0x8C30, 0xC0BE, 0x8C31, 0xC6D7, 0x8C32, 0xDADC,
- 0x8C33, 0xDADD, 0x8C34, 0xC7B4, 0x8C35, 0xDADE, 0x8C36, 0xDADF,
- 0x8C37, 0xB9C8, 0x8C38, 0xD840, 0x8C39, 0xD841, 0x8C3A, 0xD842,
- 0x8C3B, 0xD843, 0x8C3C, 0xD844, 0x8C3D, 0xD845, 0x8C3E, 0xD846,
- 0x8C3F, 0xD847, 0x8C40, 0xD848, 0x8C41, 0xBBED, 0x8C42, 0xD849,
- 0x8C43, 0xD84A, 0x8C44, 0xD84B, 0x8C45, 0xD84C, 0x8C46, 0xB6B9,
- 0x8C47, 0xF4F8, 0x8C48, 0xD84D, 0x8C49, 0xF4F9, 0x8C4A, 0xD84E,
- 0x8C4B, 0xD84F, 0x8C4C, 0xCDE3, 0x8C4D, 0xD850, 0x8C4E, 0xD851,
- 0x8C4F, 0xD852, 0x8C50, 0xD853, 0x8C51, 0xD854, 0x8C52, 0xD855,
- 0x8C53, 0xD856, 0x8C54, 0xD857, 0x8C55, 0xF5B9, 0x8C56, 0xD858,
- 0x8C57, 0xD859, 0x8C58, 0xD85A, 0x8C59, 0xD85B, 0x8C5A, 0xEBE0,
- 0x8C5B, 0xD85C, 0x8C5C, 0xD85D, 0x8C5D, 0xD85E, 0x8C5E, 0xD85F,
- 0x8C5F, 0xD860, 0x8C60, 0xD861, 0x8C61, 0xCFF3, 0x8C62, 0xBBBF,
- 0x8C63, 0xD862, 0x8C64, 0xD863, 0x8C65, 0xD864, 0x8C66, 0xD865,
- 0x8C67, 0xD866, 0x8C68, 0xD867, 0x8C69, 0xD868, 0x8C6A, 0xBAC0,
- 0x8C6B, 0xD4A5, 0x8C6C, 0xD869, 0x8C6D, 0xD86A, 0x8C6E, 0xD86B,
- 0x8C6F, 0xD86C, 0x8C70, 0xD86D, 0x8C71, 0xD86E, 0x8C72, 0xD86F,
- 0x8C73, 0xE1D9, 0x8C74, 0xD870, 0x8C75, 0xD871, 0x8C76, 0xD872,
- 0x8C77, 0xD873, 0x8C78, 0xF5F4, 0x8C79, 0xB1AA, 0x8C7A, 0xB2F2,
- 0x8C7B, 0xD874, 0x8C7C, 0xD875, 0x8C7D, 0xD876, 0x8C7E, 0xD877,
- 0x8C7F, 0xD878, 0x8C80, 0xD879, 0x8C81, 0xD87A, 0x8C82, 0xF5F5,
- 0x8C83, 0xD87B, 0x8C84, 0xD87C, 0x8C85, 0xF5F7, 0x8C86, 0xD87D,
- 0x8C87, 0xD87E, 0x8C88, 0xD880, 0x8C89, 0xBAD1, 0x8C8A, 0xF5F6,
- 0x8C8B, 0xD881, 0x8C8C, 0xC3B2, 0x8C8D, 0xD882, 0x8C8E, 0xD883,
- 0x8C8F, 0xD884, 0x8C90, 0xD885, 0x8C91, 0xD886, 0x8C92, 0xD887,
- 0x8C93, 0xD888, 0x8C94, 0xF5F9, 0x8C95, 0xD889, 0x8C96, 0xD88A,
- 0x8C97, 0xD88B, 0x8C98, 0xF5F8, 0x8C99, 0xD88C, 0x8C9A, 0xD88D,
- 0x8C9B, 0xD88E, 0x8C9C, 0xD88F, 0x8C9D, 0xD890, 0x8C9E, 0xD891,
- 0x8C9F, 0xD892, 0x8CA0, 0xD893, 0x8CA1, 0xD894, 0x8CA2, 0xD895,
- 0x8CA3, 0xD896, 0x8CA4, 0xD897, 0x8CA5, 0xD898, 0x8CA6, 0xD899,
- 0x8CA7, 0xD89A, 0x8CA8, 0xD89B, 0x8CA9, 0xD89C, 0x8CAA, 0xD89D,
- 0x8CAB, 0xD89E, 0x8CAC, 0xD89F, 0x8CAD, 0xD8A0, 0x8CAE, 0xD940,
- 0x8CAF, 0xD941, 0x8CB0, 0xD942, 0x8CB1, 0xD943, 0x8CB2, 0xD944,
- 0x8CB3, 0xD945, 0x8CB4, 0xD946, 0x8CB5, 0xD947, 0x8CB6, 0xD948,
- 0x8CB7, 0xD949, 0x8CB8, 0xD94A, 0x8CB9, 0xD94B, 0x8CBA, 0xD94C,
- 0x8CBB, 0xD94D, 0x8CBC, 0xD94E, 0x8CBD, 0xD94F, 0x8CBE, 0xD950,
- 0x8CBF, 0xD951, 0x8CC0, 0xD952, 0x8CC1, 0xD953, 0x8CC2, 0xD954,
- 0x8CC3, 0xD955, 0x8CC4, 0xD956, 0x8CC5, 0xD957, 0x8CC6, 0xD958,
- 0x8CC7, 0xD959, 0x8CC8, 0xD95A, 0x8CC9, 0xD95B, 0x8CCA, 0xD95C,
- 0x8CCB, 0xD95D, 0x8CCC, 0xD95E, 0x8CCD, 0xD95F, 0x8CCE, 0xD960,
- 0x8CCF, 0xD961, 0x8CD0, 0xD962, 0x8CD1, 0xD963, 0x8CD2, 0xD964,
- 0x8CD3, 0xD965, 0x8CD4, 0xD966, 0x8CD5, 0xD967, 0x8CD6, 0xD968,
- 0x8CD7, 0xD969, 0x8CD8, 0xD96A, 0x8CD9, 0xD96B, 0x8CDA, 0xD96C,
- 0x8CDB, 0xD96D, 0x8CDC, 0xD96E, 0x8CDD, 0xD96F, 0x8CDE, 0xD970,
- 0x8CDF, 0xD971, 0x8CE0, 0xD972, 0x8CE1, 0xD973, 0x8CE2, 0xD974,
- 0x8CE3, 0xD975, 0x8CE4, 0xD976, 0x8CE5, 0xD977, 0x8CE6, 0xD978,
- 0x8CE7, 0xD979, 0x8CE8, 0xD97A, 0x8CE9, 0xD97B, 0x8CEA, 0xD97C,
- 0x8CEB, 0xD97D, 0x8CEC, 0xD97E, 0x8CED, 0xD980, 0x8CEE, 0xD981,
- 0x8CEF, 0xD982, 0x8CF0, 0xD983, 0x8CF1, 0xD984, 0x8CF2, 0xD985,
- 0x8CF3, 0xD986, 0x8CF4, 0xD987, 0x8CF5, 0xD988, 0x8CF6, 0xD989,
- 0x8CF7, 0xD98A, 0x8CF8, 0xD98B, 0x8CF9, 0xD98C, 0x8CFA, 0xD98D,
- 0x8CFB, 0xD98E, 0x8CFC, 0xD98F, 0x8CFD, 0xD990, 0x8CFE, 0xD991,
- 0x8CFF, 0xD992, 0x8D00, 0xD993, 0x8D01, 0xD994, 0x8D02, 0xD995,
- 0x8D03, 0xD996, 0x8D04, 0xD997, 0x8D05, 0xD998, 0x8D06, 0xD999,
- 0x8D07, 0xD99A, 0x8D08, 0xD99B, 0x8D09, 0xD99C, 0x8D0A, 0xD99D,
- 0x8D0B, 0xD99E, 0x8D0C, 0xD99F, 0x8D0D, 0xD9A0, 0x8D0E, 0xDA40,
- 0x8D0F, 0xDA41, 0x8D10, 0xDA42, 0x8D11, 0xDA43, 0x8D12, 0xDA44,
- 0x8D13, 0xDA45, 0x8D14, 0xDA46, 0x8D15, 0xDA47, 0x8D16, 0xDA48,
- 0x8D17, 0xDA49, 0x8D18, 0xDA4A, 0x8D19, 0xDA4B, 0x8D1A, 0xDA4C,
- 0x8D1B, 0xDA4D, 0x8D1C, 0xDA4E, 0x8D1D, 0xB1B4, 0x8D1E, 0xD5EA,
- 0x8D1F, 0xB8BA, 0x8D20, 0xDA4F, 0x8D21, 0xB9B1, 0x8D22, 0xB2C6,
- 0x8D23, 0xD4F0, 0x8D24, 0xCFCD, 0x8D25, 0xB0DC, 0x8D26, 0xD5CB,
- 0x8D27, 0xBBF5, 0x8D28, 0xD6CA, 0x8D29, 0xB7B7, 0x8D2A, 0xCCB0,
- 0x8D2B, 0xC6B6, 0x8D2C, 0xB1E1, 0x8D2D, 0xB9BA, 0x8D2E, 0xD6FC,
- 0x8D2F, 0xB9E1, 0x8D30, 0xB7A1, 0x8D31, 0xBCFA, 0x8D32, 0xEADA,
- 0x8D33, 0xEADB, 0x8D34, 0xCCF9, 0x8D35, 0xB9F3, 0x8D36, 0xEADC,
- 0x8D37, 0xB4FB, 0x8D38, 0xC3B3, 0x8D39, 0xB7D1, 0x8D3A, 0xBAD8,
- 0x8D3B, 0xEADD, 0x8D3C, 0xD4F4, 0x8D3D, 0xEADE, 0x8D3E, 0xBCD6,
- 0x8D3F, 0xBBDF, 0x8D40, 0xEADF, 0x8D41, 0xC1DE, 0x8D42, 0xC2B8,
- 0x8D43, 0xD4DF, 0x8D44, 0xD7CA, 0x8D45, 0xEAE0, 0x8D46, 0xEAE1,
- 0x8D47, 0xEAE4, 0x8D48, 0xEAE2, 0x8D49, 0xEAE3, 0x8D4A, 0xC9DE,
- 0x8D4B, 0xB8B3, 0x8D4C, 0xB6C4, 0x8D4D, 0xEAE5, 0x8D4E, 0xCAEA,
- 0x8D4F, 0xC9CD, 0x8D50, 0xB4CD, 0x8D51, 0xDA50, 0x8D52, 0xDA51,
- 0x8D53, 0xE2D9, 0x8D54, 0xC5E2, 0x8D55, 0xEAE6, 0x8D56, 0xC0B5,
- 0x8D57, 0xDA52, 0x8D58, 0xD7B8, 0x8D59, 0xEAE7, 0x8D5A, 0xD7AC,
- 0x8D5B, 0xC8FC, 0x8D5C, 0xD8D3, 0x8D5D, 0xD8CD, 0x8D5E, 0xD4DE,
- 0x8D5F, 0xDA53, 0x8D60, 0xD4F9, 0x8D61, 0xC9C4, 0x8D62, 0xD3AE,
- 0x8D63, 0xB8D3, 0x8D64, 0xB3E0, 0x8D65, 0xDA54, 0x8D66, 0xC9E2,
- 0x8D67, 0xF4F6, 0x8D68, 0xDA55, 0x8D69, 0xDA56, 0x8D6A, 0xDA57,
- 0x8D6B, 0xBAD5, 0x8D6C, 0xDA58, 0x8D6D, 0xF4F7, 0x8D6E, 0xDA59,
- 0x8D6F, 0xDA5A, 0x8D70, 0xD7DF, 0x8D71, 0xDA5B, 0x8D72, 0xDA5C,
- 0x8D73, 0xF4F1, 0x8D74, 0xB8B0, 0x8D75, 0xD5D4, 0x8D76, 0xB8CF,
- 0x8D77, 0xC6F0, 0x8D78, 0xDA5D, 0x8D79, 0xDA5E, 0x8D7A, 0xDA5F,
- 0x8D7B, 0xDA60, 0x8D7C, 0xDA61, 0x8D7D, 0xDA62, 0x8D7E, 0xDA63,
- 0x8D7F, 0xDA64, 0x8D80, 0xDA65, 0x8D81, 0xB3C3, 0x8D82, 0xDA66,
- 0x8D83, 0xDA67, 0x8D84, 0xF4F2, 0x8D85, 0xB3AC, 0x8D86, 0xDA68,
- 0x8D87, 0xDA69, 0x8D88, 0xDA6A, 0x8D89, 0xDA6B, 0x8D8A, 0xD4BD,
- 0x8D8B, 0xC7F7, 0x8D8C, 0xDA6C, 0x8D8D, 0xDA6D, 0x8D8E, 0xDA6E,
- 0x8D8F, 0xDA6F, 0x8D90, 0xDA70, 0x8D91, 0xF4F4, 0x8D92, 0xDA71,
- 0x8D93, 0xDA72, 0x8D94, 0xF4F3, 0x8D95, 0xDA73, 0x8D96, 0xDA74,
- 0x8D97, 0xDA75, 0x8D98, 0xDA76, 0x8D99, 0xDA77, 0x8D9A, 0xDA78,
- 0x8D9B, 0xDA79, 0x8D9C, 0xDA7A, 0x8D9D, 0xDA7B, 0x8D9E, 0xDA7C,
- 0x8D9F, 0xCCCB, 0x8DA0, 0xDA7D, 0x8DA1, 0xDA7E, 0x8DA2, 0xDA80,
- 0x8DA3, 0xC8A4, 0x8DA4, 0xDA81, 0x8DA5, 0xDA82, 0x8DA6, 0xDA83,
- 0x8DA7, 0xDA84, 0x8DA8, 0xDA85, 0x8DA9, 0xDA86, 0x8DAA, 0xDA87,
- 0x8DAB, 0xDA88, 0x8DAC, 0xDA89, 0x8DAD, 0xDA8A, 0x8DAE, 0xDA8B,
- 0x8DAF, 0xDA8C, 0x8DB0, 0xDA8D, 0x8DB1, 0xF4F5, 0x8DB2, 0xDA8E,
- 0x8DB3, 0xD7E3, 0x8DB4, 0xC5BF, 0x8DB5, 0xF5C0, 0x8DB6, 0xDA8F,
- 0x8DB7, 0xDA90, 0x8DB8, 0xF5BB, 0x8DB9, 0xDA91, 0x8DBA, 0xF5C3,
- 0x8DBB, 0xDA92, 0x8DBC, 0xF5C2, 0x8DBD, 0xDA93, 0x8DBE, 0xD6BA,
- 0x8DBF, 0xF5C1, 0x8DC0, 0xDA94, 0x8DC1, 0xDA95, 0x8DC2, 0xDA96,
- 0x8DC3, 0xD4BE, 0x8DC4, 0xF5C4, 0x8DC5, 0xDA97, 0x8DC6, 0xF5CC,
- 0x8DC7, 0xDA98, 0x8DC8, 0xDA99, 0x8DC9, 0xDA9A, 0x8DCA, 0xDA9B,
- 0x8DCB, 0xB0CF, 0x8DCC, 0xB5F8, 0x8DCD, 0xDA9C, 0x8DCE, 0xF5C9,
- 0x8DCF, 0xF5CA, 0x8DD0, 0xDA9D, 0x8DD1, 0xC5DC, 0x8DD2, 0xDA9E,
- 0x8DD3, 0xDA9F, 0x8DD4, 0xDAA0, 0x8DD5, 0xDB40, 0x8DD6, 0xF5C5,
- 0x8DD7, 0xF5C6, 0x8DD8, 0xDB41, 0x8DD9, 0xDB42, 0x8DDA, 0xF5C7,
- 0x8DDB, 0xF5CB, 0x8DDC, 0xDB43, 0x8DDD, 0xBEE0, 0x8DDE, 0xF5C8,
- 0x8DDF, 0xB8FA, 0x8DE0, 0xDB44, 0x8DE1, 0xDB45, 0x8DE2, 0xDB46,
- 0x8DE3, 0xF5D0, 0x8DE4, 0xF5D3, 0x8DE5, 0xDB47, 0x8DE6, 0xDB48,
- 0x8DE7, 0xDB49, 0x8DE8, 0xBFE7, 0x8DE9, 0xDB4A, 0x8DEA, 0xB9F2,
- 0x8DEB, 0xF5BC, 0x8DEC, 0xF5CD, 0x8DED, 0xDB4B, 0x8DEE, 0xDB4C,
- 0x8DEF, 0xC2B7, 0x8DF0, 0xDB4D, 0x8DF1, 0xDB4E, 0x8DF2, 0xDB4F,
- 0x8DF3, 0xCCF8, 0x8DF4, 0xDB50, 0x8DF5, 0xBCF9, 0x8DF6, 0xDB51,
- 0x8DF7, 0xF5CE, 0x8DF8, 0xF5CF, 0x8DF9, 0xF5D1, 0x8DFA, 0xB6E5,
- 0x8DFB, 0xF5D2, 0x8DFC, 0xDB52, 0x8DFD, 0xF5D5, 0x8DFE, 0xDB53,
- 0x8DFF, 0xDB54, 0x8E00, 0xDB55, 0x8E01, 0xDB56, 0x8E02, 0xDB57,
- 0x8E03, 0xDB58, 0x8E04, 0xDB59, 0x8E05, 0xF5BD, 0x8E06, 0xDB5A,
- 0x8E07, 0xDB5B, 0x8E08, 0xDB5C, 0x8E09, 0xF5D4, 0x8E0A, 0xD3BB,
- 0x8E0B, 0xDB5D, 0x8E0C, 0xB3EC, 0x8E0D, 0xDB5E, 0x8E0E, 0xDB5F,
- 0x8E0F, 0xCCA4, 0x8E10, 0xDB60, 0x8E11, 0xDB61, 0x8E12, 0xDB62,
- 0x8E13, 0xDB63, 0x8E14, 0xF5D6, 0x8E15, 0xDB64, 0x8E16, 0xDB65,
- 0x8E17, 0xDB66, 0x8E18, 0xDB67, 0x8E19, 0xDB68, 0x8E1A, 0xDB69,
- 0x8E1B, 0xDB6A, 0x8E1C, 0xDB6B, 0x8E1D, 0xF5D7, 0x8E1E, 0xBEE1,
- 0x8E1F, 0xF5D8, 0x8E20, 0xDB6C, 0x8E21, 0xDB6D, 0x8E22, 0xCCDF,
- 0x8E23, 0xF5DB, 0x8E24, 0xDB6E, 0x8E25, 0xDB6F, 0x8E26, 0xDB70,
- 0x8E27, 0xDB71, 0x8E28, 0xDB72, 0x8E29, 0xB2C8, 0x8E2A, 0xD7D9,
- 0x8E2B, 0xDB73, 0x8E2C, 0xF5D9, 0x8E2D, 0xDB74, 0x8E2E, 0xF5DA,
- 0x8E2F, 0xF5DC, 0x8E30, 0xDB75, 0x8E31, 0xF5E2, 0x8E32, 0xDB76,
- 0x8E33, 0xDB77, 0x8E34, 0xDB78, 0x8E35, 0xF5E0, 0x8E36, 0xDB79,
- 0x8E37, 0xDB7A, 0x8E38, 0xDB7B, 0x8E39, 0xF5DF, 0x8E3A, 0xF5DD,
- 0x8E3B, 0xDB7C, 0x8E3C, 0xDB7D, 0x8E3D, 0xF5E1, 0x8E3E, 0xDB7E,
- 0x8E3F, 0xDB80, 0x8E40, 0xF5DE, 0x8E41, 0xF5E4, 0x8E42, 0xF5E5,
- 0x8E43, 0xDB81, 0x8E44, 0xCCE3, 0x8E45, 0xDB82, 0x8E46, 0xDB83,
- 0x8E47, 0xE5BF, 0x8E48, 0xB5B8, 0x8E49, 0xF5E3, 0x8E4A, 0xF5E8,
- 0x8E4B, 0xCCA3, 0x8E4C, 0xDB84, 0x8E4D, 0xDB85, 0x8E4E, 0xDB86,
- 0x8E4F, 0xDB87, 0x8E50, 0xDB88, 0x8E51, 0xF5E6, 0x8E52, 0xF5E7,
- 0x8E53, 0xDB89, 0x8E54, 0xDB8A, 0x8E55, 0xDB8B, 0x8E56, 0xDB8C,
- 0x8E57, 0xDB8D, 0x8E58, 0xDB8E, 0x8E59, 0xF5BE, 0x8E5A, 0xDB8F,
- 0x8E5B, 0xDB90, 0x8E5C, 0xDB91, 0x8E5D, 0xDB92, 0x8E5E, 0xDB93,
- 0x8E5F, 0xDB94, 0x8E60, 0xDB95, 0x8E61, 0xDB96, 0x8E62, 0xDB97,
- 0x8E63, 0xDB98, 0x8E64, 0xDB99, 0x8E65, 0xDB9A, 0x8E66, 0xB1C4,
- 0x8E67, 0xDB9B, 0x8E68, 0xDB9C, 0x8E69, 0xF5BF, 0x8E6A, 0xDB9D,
- 0x8E6B, 0xDB9E, 0x8E6C, 0xB5C5, 0x8E6D, 0xB2E4, 0x8E6E, 0xDB9F,
- 0x8E6F, 0xF5EC, 0x8E70, 0xF5E9, 0x8E71, 0xDBA0, 0x8E72, 0xB6D7,
- 0x8E73, 0xDC40, 0x8E74, 0xF5ED, 0x8E75, 0xDC41, 0x8E76, 0xF5EA,
- 0x8E77, 0xDC42, 0x8E78, 0xDC43, 0x8E79, 0xDC44, 0x8E7A, 0xDC45,
- 0x8E7B, 0xDC46, 0x8E7C, 0xF5EB, 0x8E7D, 0xDC47, 0x8E7E, 0xDC48,
- 0x8E7F, 0xB4DA, 0x8E80, 0xDC49, 0x8E81, 0xD4EA, 0x8E82, 0xDC4A,
- 0x8E83, 0xDC4B, 0x8E84, 0xDC4C, 0x8E85, 0xF5EE, 0x8E86, 0xDC4D,
- 0x8E87, 0xB3F9, 0x8E88, 0xDC4E, 0x8E89, 0xDC4F, 0x8E8A, 0xDC50,
- 0x8E8B, 0xDC51, 0x8E8C, 0xDC52, 0x8E8D, 0xDC53, 0x8E8E, 0xDC54,
- 0x8E8F, 0xF5EF, 0x8E90, 0xF5F1, 0x8E91, 0xDC55, 0x8E92, 0xDC56,
- 0x8E93, 0xDC57, 0x8E94, 0xF5F0, 0x8E95, 0xDC58, 0x8E96, 0xDC59,
- 0x8E97, 0xDC5A, 0x8E98, 0xDC5B, 0x8E99, 0xDC5C, 0x8E9A, 0xDC5D,
- 0x8E9B, 0xDC5E, 0x8E9C, 0xF5F2, 0x8E9D, 0xDC5F, 0x8E9E, 0xF5F3,
- 0x8E9F, 0xDC60, 0x8EA0, 0xDC61, 0x8EA1, 0xDC62, 0x8EA2, 0xDC63,
- 0x8EA3, 0xDC64, 0x8EA4, 0xDC65, 0x8EA5, 0xDC66, 0x8EA6, 0xDC67,
- 0x8EA7, 0xDC68, 0x8EA8, 0xDC69, 0x8EA9, 0xDC6A, 0x8EAA, 0xDC6B,
- 0x8EAB, 0xC9ED, 0x8EAC, 0xB9AA, 0x8EAD, 0xDC6C, 0x8EAE, 0xDC6D,
- 0x8EAF, 0xC7FB, 0x8EB0, 0xDC6E, 0x8EB1, 0xDC6F, 0x8EB2, 0xB6E3,
- 0x8EB3, 0xDC70, 0x8EB4, 0xDC71, 0x8EB5, 0xDC72, 0x8EB6, 0xDC73,
- 0x8EB7, 0xDC74, 0x8EB8, 0xDC75, 0x8EB9, 0xDC76, 0x8EBA, 0xCCC9,
- 0x8EBB, 0xDC77, 0x8EBC, 0xDC78, 0x8EBD, 0xDC79, 0x8EBE, 0xDC7A,
- 0x8EBF, 0xDC7B, 0x8EC0, 0xDC7C, 0x8EC1, 0xDC7D, 0x8EC2, 0xDC7E,
- 0x8EC3, 0xDC80, 0x8EC4, 0xDC81, 0x8EC5, 0xDC82, 0x8EC6, 0xDC83,
- 0x8EC7, 0xDC84, 0x8EC8, 0xDC85, 0x8EC9, 0xDC86, 0x8ECA, 0xDC87,
- 0x8ECB, 0xDC88, 0x8ECC, 0xDC89, 0x8ECD, 0xDC8A, 0x8ECE, 0xEAA6,
- 0x8ECF, 0xDC8B, 0x8ED0, 0xDC8C, 0x8ED1, 0xDC8D, 0x8ED2, 0xDC8E,
- 0x8ED3, 0xDC8F, 0x8ED4, 0xDC90, 0x8ED5, 0xDC91, 0x8ED6, 0xDC92,
- 0x8ED7, 0xDC93, 0x8ED8, 0xDC94, 0x8ED9, 0xDC95, 0x8EDA, 0xDC96,
- 0x8EDB, 0xDC97, 0x8EDC, 0xDC98, 0x8EDD, 0xDC99, 0x8EDE, 0xDC9A,
- 0x8EDF, 0xDC9B, 0x8EE0, 0xDC9C, 0x8EE1, 0xDC9D, 0x8EE2, 0xDC9E,
- 0x8EE3, 0xDC9F, 0x8EE4, 0xDCA0, 0x8EE5, 0xDD40, 0x8EE6, 0xDD41,
- 0x8EE7, 0xDD42, 0x8EE8, 0xDD43, 0x8EE9, 0xDD44, 0x8EEA, 0xDD45,
- 0x8EEB, 0xDD46, 0x8EEC, 0xDD47, 0x8EED, 0xDD48, 0x8EEE, 0xDD49,
- 0x8EEF, 0xDD4A, 0x8EF0, 0xDD4B, 0x8EF1, 0xDD4C, 0x8EF2, 0xDD4D,
- 0x8EF3, 0xDD4E, 0x8EF4, 0xDD4F, 0x8EF5, 0xDD50, 0x8EF6, 0xDD51,
- 0x8EF7, 0xDD52, 0x8EF8, 0xDD53, 0x8EF9, 0xDD54, 0x8EFA, 0xDD55,
- 0x8EFB, 0xDD56, 0x8EFC, 0xDD57, 0x8EFD, 0xDD58, 0x8EFE, 0xDD59,
- 0x8EFF, 0xDD5A, 0x8F00, 0xDD5B, 0x8F01, 0xDD5C, 0x8F02, 0xDD5D,
- 0x8F03, 0xDD5E, 0x8F04, 0xDD5F, 0x8F05, 0xDD60, 0x8F06, 0xDD61,
- 0x8F07, 0xDD62, 0x8F08, 0xDD63, 0x8F09, 0xDD64, 0x8F0A, 0xDD65,
- 0x8F0B, 0xDD66, 0x8F0C, 0xDD67, 0x8F0D, 0xDD68, 0x8F0E, 0xDD69,
- 0x8F0F, 0xDD6A, 0x8F10, 0xDD6B, 0x8F11, 0xDD6C, 0x8F12, 0xDD6D,
- 0x8F13, 0xDD6E, 0x8F14, 0xDD6F, 0x8F15, 0xDD70, 0x8F16, 0xDD71,
- 0x8F17, 0xDD72, 0x8F18, 0xDD73, 0x8F19, 0xDD74, 0x8F1A, 0xDD75,
- 0x8F1B, 0xDD76, 0x8F1C, 0xDD77, 0x8F1D, 0xDD78, 0x8F1E, 0xDD79,
- 0x8F1F, 0xDD7A, 0x8F20, 0xDD7B, 0x8F21, 0xDD7C, 0x8F22, 0xDD7D,
- 0x8F23, 0xDD7E, 0x8F24, 0xDD80, 0x8F25, 0xDD81, 0x8F26, 0xDD82,
- 0x8F27, 0xDD83, 0x8F28, 0xDD84, 0x8F29, 0xDD85, 0x8F2A, 0xDD86,
- 0x8F2B, 0xDD87, 0x8F2C, 0xDD88, 0x8F2D, 0xDD89, 0x8F2E, 0xDD8A,
- 0x8F2F, 0xDD8B, 0x8F30, 0xDD8C, 0x8F31, 0xDD8D, 0x8F32, 0xDD8E,
- 0x8F33, 0xDD8F, 0x8F34, 0xDD90, 0x8F35, 0xDD91, 0x8F36, 0xDD92,
- 0x8F37, 0xDD93, 0x8F38, 0xDD94, 0x8F39, 0xDD95, 0x8F3A, 0xDD96,
- 0x8F3B, 0xDD97, 0x8F3C, 0xDD98, 0x8F3D, 0xDD99, 0x8F3E, 0xDD9A,
- 0x8F3F, 0xDD9B, 0x8F40, 0xDD9C, 0x8F41, 0xDD9D, 0x8F42, 0xDD9E,
- 0x8F43, 0xDD9F, 0x8F44, 0xDDA0, 0x8F45, 0xDE40, 0x8F46, 0xDE41,
- 0x8F47, 0xDE42, 0x8F48, 0xDE43, 0x8F49, 0xDE44, 0x8F4A, 0xDE45,
- 0x8F4B, 0xDE46, 0x8F4C, 0xDE47, 0x8F4D, 0xDE48, 0x8F4E, 0xDE49,
- 0x8F4F, 0xDE4A, 0x8F50, 0xDE4B, 0x8F51, 0xDE4C, 0x8F52, 0xDE4D,
- 0x8F53, 0xDE4E, 0x8F54, 0xDE4F, 0x8F55, 0xDE50, 0x8F56, 0xDE51,
- 0x8F57, 0xDE52, 0x8F58, 0xDE53, 0x8F59, 0xDE54, 0x8F5A, 0xDE55,
- 0x8F5B, 0xDE56, 0x8F5C, 0xDE57, 0x8F5D, 0xDE58, 0x8F5E, 0xDE59,
- 0x8F5F, 0xDE5A, 0x8F60, 0xDE5B, 0x8F61, 0xDE5C, 0x8F62, 0xDE5D,
- 0x8F63, 0xDE5E, 0x8F64, 0xDE5F, 0x8F65, 0xDE60, 0x8F66, 0xB3B5,
- 0x8F67, 0xD4FE, 0x8F68, 0xB9EC, 0x8F69, 0xD0F9, 0x8F6A, 0xDE61,
- 0x8F6B, 0xE9ED, 0x8F6C, 0xD7AA, 0x8F6D, 0xE9EE, 0x8F6E, 0xC2D6,
- 0x8F6F, 0xC8ED, 0x8F70, 0xBAE4, 0x8F71, 0xE9EF, 0x8F72, 0xE9F0,
- 0x8F73, 0xE9F1, 0x8F74, 0xD6E1, 0x8F75, 0xE9F2, 0x8F76, 0xE9F3,
- 0x8F77, 0xE9F5, 0x8F78, 0xE9F4, 0x8F79, 0xE9F6, 0x8F7A, 0xE9F7,
- 0x8F7B, 0xC7E1, 0x8F7C, 0xE9F8, 0x8F7D, 0xD4D8, 0x8F7E, 0xE9F9,
- 0x8F7F, 0xBDCE, 0x8F80, 0xDE62, 0x8F81, 0xE9FA, 0x8F82, 0xE9FB,
- 0x8F83, 0xBDCF, 0x8F84, 0xE9FC, 0x8F85, 0xB8A8, 0x8F86, 0xC1BE,
- 0x8F87, 0xE9FD, 0x8F88, 0xB1B2, 0x8F89, 0xBBD4, 0x8F8A, 0xB9F5,
- 0x8F8B, 0xE9FE, 0x8F8C, 0xDE63, 0x8F8D, 0xEAA1, 0x8F8E, 0xEAA2,
- 0x8F8F, 0xEAA3, 0x8F90, 0xB7F8, 0x8F91, 0xBCAD, 0x8F92, 0xDE64,
- 0x8F93, 0xCAE4, 0x8F94, 0xE0CE, 0x8F95, 0xD4AF, 0x8F96, 0xCFBD,
- 0x8F97, 0xD5B7, 0x8F98, 0xEAA4, 0x8F99, 0xD5DE, 0x8F9A, 0xEAA5,
- 0x8F9B, 0xD0C1, 0x8F9C, 0xB9BC, 0x8F9D, 0xDE65, 0x8F9E, 0xB4C7,
- 0x8F9F, 0xB1D9, 0x8FA0, 0xDE66, 0x8FA1, 0xDE67, 0x8FA2, 0xDE68,
- 0x8FA3, 0xC0B1, 0x8FA4, 0xDE69, 0x8FA5, 0xDE6A, 0x8FA6, 0xDE6B,
- 0x8FA7, 0xDE6C, 0x8FA8, 0xB1E6, 0x8FA9, 0xB1E7, 0x8FAA, 0xDE6D,
- 0x8FAB, 0xB1E8, 0x8FAC, 0xDE6E, 0x8FAD, 0xDE6F, 0x8FAE, 0xDE70,
- 0x8FAF, 0xDE71, 0x8FB0, 0xB3BD, 0x8FB1, 0xC8E8, 0x8FB2, 0xDE72,
- 0x8FB3, 0xDE73, 0x8FB4, 0xDE74, 0x8FB5, 0xDE75, 0x8FB6, 0xE5C1,
- 0x8FB7, 0xDE76, 0x8FB8, 0xDE77, 0x8FB9, 0xB1DF, 0x8FBA, 0xDE78,
- 0x8FBB, 0xDE79, 0x8FBC, 0xDE7A, 0x8FBD, 0xC1C9, 0x8FBE, 0xB4EF,
- 0x8FBF, 0xDE7B, 0x8FC0, 0xDE7C, 0x8FC1, 0xC7A8, 0x8FC2, 0xD3D8,
- 0x8FC3, 0xDE7D, 0x8FC4, 0xC6F9, 0x8FC5, 0xD1B8, 0x8FC6, 0xDE7E,
- 0x8FC7, 0xB9FD, 0x8FC8, 0xC2F5, 0x8FC9, 0xDE80, 0x8FCA, 0xDE81,
- 0x8FCB, 0xDE82, 0x8FCC, 0xDE83, 0x8FCD, 0xDE84, 0x8FCE, 0xD3AD,
- 0x8FCF, 0xDE85, 0x8FD0, 0xD4CB, 0x8FD1, 0xBDFC, 0x8FD2, 0xDE86,
- 0x8FD3, 0xE5C2, 0x8FD4, 0xB7B5, 0x8FD5, 0xE5C3, 0x8FD6, 0xDE87,
- 0x8FD7, 0xDE88, 0x8FD8, 0xBBB9, 0x8FD9, 0xD5E2, 0x8FDA, 0xDE89,
- 0x8FDB, 0xBDF8, 0x8FDC, 0xD4B6, 0x8FDD, 0xCEA5, 0x8FDE, 0xC1AC,
- 0x8FDF, 0xB3D9, 0x8FE0, 0xDE8A, 0x8FE1, 0xDE8B, 0x8FE2, 0xCCF6,
- 0x8FE3, 0xDE8C, 0x8FE4, 0xE5C6, 0x8FE5, 0xE5C4, 0x8FE6, 0xE5C8,
- 0x8FE7, 0xDE8D, 0x8FE8, 0xE5CA, 0x8FE9, 0xE5C7, 0x8FEA, 0xB5CF,
- 0x8FEB, 0xC6C8, 0x8FEC, 0xDE8E, 0x8FED, 0xB5FC, 0x8FEE, 0xE5C5,
- 0x8FEF, 0xDE8F, 0x8FF0, 0xCAF6, 0x8FF1, 0xDE90, 0x8FF2, 0xDE91,
- 0x8FF3, 0xE5C9, 0x8FF4, 0xDE92, 0x8FF5, 0xDE93, 0x8FF6, 0xDE94,
- 0x8FF7, 0xC3D4, 0x8FF8, 0xB1C5, 0x8FF9, 0xBCA3, 0x8FFA, 0xDE95,
- 0x8FFB, 0xDE96, 0x8FFC, 0xDE97, 0x8FFD, 0xD7B7, 0x8FFE, 0xDE98,
- 0x8FFF, 0xDE99, 0x9000, 0xCDCB, 0x9001, 0xCBCD, 0x9002, 0xCACA,
- 0x9003, 0xCCD3, 0x9004, 0xE5CC, 0x9005, 0xE5CB, 0x9006, 0xC4E6,
- 0x9007, 0xDE9A, 0x9008, 0xDE9B, 0x9009, 0xD1A1, 0x900A, 0xD1B7,
- 0x900B, 0xE5CD, 0x900C, 0xDE9C, 0x900D, 0xE5D0, 0x900E, 0xDE9D,
- 0x900F, 0xCDB8, 0x9010, 0xD6F0, 0x9011, 0xE5CF, 0x9012, 0xB5DD,
- 0x9013, 0xDE9E, 0x9014, 0xCDBE, 0x9015, 0xDE9F, 0x9016, 0xE5D1,
- 0x9017, 0xB6BA, 0x9018, 0xDEA0, 0x9019, 0xDF40, 0x901A, 0xCDA8,
- 0x901B, 0xB9E4, 0x901C, 0xDF41, 0x901D, 0xCAC5, 0x901E, 0xB3D1,
- 0x901F, 0xCBD9, 0x9020, 0xD4EC, 0x9021, 0xE5D2, 0x9022, 0xB7EA,
- 0x9023, 0xDF42, 0x9024, 0xDF43, 0x9025, 0xDF44, 0x9026, 0xE5CE,
- 0x9027, 0xDF45, 0x9028, 0xDF46, 0x9029, 0xDF47, 0x902A, 0xDF48,
- 0x902B, 0xDF49, 0x902C, 0xDF4A, 0x902D, 0xE5D5, 0x902E, 0xB4FE,
- 0x902F, 0xE5D6, 0x9030, 0xDF4B, 0x9031, 0xDF4C, 0x9032, 0xDF4D,
- 0x9033, 0xDF4E, 0x9034, 0xDF4F, 0x9035, 0xE5D3, 0x9036, 0xE5D4,
- 0x9037, 0xDF50, 0x9038, 0xD2DD, 0x9039, 0xDF51, 0x903A, 0xDF52,
- 0x903B, 0xC2DF, 0x903C, 0xB1C6, 0x903D, 0xDF53, 0x903E, 0xD3E2,
- 0x903F, 0xDF54, 0x9040, 0xDF55, 0x9041, 0xB6DD, 0x9042, 0xCBEC,
- 0x9043, 0xDF56, 0x9044, 0xE5D7, 0x9045, 0xDF57, 0x9046, 0xDF58,
- 0x9047, 0xD3F6, 0x9048, 0xDF59, 0x9049, 0xDF5A, 0x904A, 0xDF5B,
- 0x904B, 0xDF5C, 0x904C, 0xDF5D, 0x904D, 0xB1E9, 0x904E, 0xDF5E,
- 0x904F, 0xB6F4, 0x9050, 0xE5DA, 0x9051, 0xE5D8, 0x9052, 0xE5D9,
- 0x9053, 0xB5C0, 0x9054, 0xDF5F, 0x9055, 0xDF60, 0x9056, 0xDF61,
- 0x9057, 0xD2C5, 0x9058, 0xE5DC, 0x9059, 0xDF62, 0x905A, 0xDF63,
- 0x905B, 0xE5DE, 0x905C, 0xDF64, 0x905D, 0xDF65, 0x905E, 0xDF66,
- 0x905F, 0xDF67, 0x9060, 0xDF68, 0x9061, 0xDF69, 0x9062, 0xE5DD,
- 0x9063, 0xC7B2, 0x9064, 0xDF6A, 0x9065, 0xD2A3, 0x9066, 0xDF6B,
- 0x9067, 0xDF6C, 0x9068, 0xE5DB, 0x9069, 0xDF6D, 0x906A, 0xDF6E,
- 0x906B, 0xDF6F, 0x906C, 0xDF70, 0x906D, 0xD4E2, 0x906E, 0xD5DA,
- 0x906F, 0xDF71, 0x9070, 0xDF72, 0x9071, 0xDF73, 0x9072, 0xDF74,
- 0x9073, 0xDF75, 0x9074, 0xE5E0, 0x9075, 0xD7F1, 0x9076, 0xDF76,
- 0x9077, 0xDF77, 0x9078, 0xDF78, 0x9079, 0xDF79, 0x907A, 0xDF7A,
- 0x907B, 0xDF7B, 0x907C, 0xDF7C, 0x907D, 0xE5E1, 0x907E, 0xDF7D,
- 0x907F, 0xB1DC, 0x9080, 0xD1FB, 0x9081, 0xDF7E, 0x9082, 0xE5E2,
- 0x9083, 0xE5E4, 0x9084, 0xDF80, 0x9085, 0xDF81, 0x9086, 0xDF82,
- 0x9087, 0xDF83, 0x9088, 0xE5E3, 0x9089, 0xDF84, 0x908A, 0xDF85,
- 0x908B, 0xE5E5, 0x908C, 0xDF86, 0x908D, 0xDF87, 0x908E, 0xDF88,
- 0x908F, 0xDF89, 0x9090, 0xDF8A, 0x9091, 0xD2D8, 0x9092, 0xDF8B,
- 0x9093, 0xB5CB, 0x9094, 0xDF8C, 0x9095, 0xE7DF, 0x9096, 0xDF8D,
- 0x9097, 0xDAF5, 0x9098, 0xDF8E, 0x9099, 0xDAF8, 0x909A, 0xDF8F,
- 0x909B, 0xDAF6, 0x909C, 0xDF90, 0x909D, 0xDAF7, 0x909E, 0xDF91,
- 0x909F, 0xDF92, 0x90A0, 0xDF93, 0x90A1, 0xDAFA, 0x90A2, 0xD0CF,
- 0x90A3, 0xC4C7, 0x90A4, 0xDF94, 0x90A5, 0xDF95, 0x90A6, 0xB0EE,
- 0x90A7, 0xDF96, 0x90A8, 0xDF97, 0x90A9, 0xDF98, 0x90AA, 0xD0B0,
- 0x90AB, 0xDF99, 0x90AC, 0xDAF9, 0x90AD, 0xDF9A, 0x90AE, 0xD3CA,
- 0x90AF, 0xBAAA, 0x90B0, 0xDBA2, 0x90B1, 0xC7F1, 0x90B2, 0xDF9B,
- 0x90B3, 0xDAFC, 0x90B4, 0xDAFB, 0x90B5, 0xC9DB, 0x90B6, 0xDAFD,
- 0x90B7, 0xDF9C, 0x90B8, 0xDBA1, 0x90B9, 0xD7DE, 0x90BA, 0xDAFE,
- 0x90BB, 0xC1DA, 0x90BC, 0xDF9D, 0x90BD, 0xDF9E, 0x90BE, 0xDBA5,
- 0x90BF, 0xDF9F, 0x90C0, 0xDFA0, 0x90C1, 0xD3F4, 0x90C2, 0xE040,
- 0x90C3, 0xE041, 0x90C4, 0xDBA7, 0x90C5, 0xDBA4, 0x90C6, 0xE042,
- 0x90C7, 0xDBA8, 0x90C8, 0xE043, 0x90C9, 0xE044, 0x90CA, 0xBDBC,
- 0x90CB, 0xE045, 0x90CC, 0xE046, 0x90CD, 0xE047, 0x90CE, 0xC0C9,
- 0x90CF, 0xDBA3, 0x90D0, 0xDBA6, 0x90D1, 0xD6A3, 0x90D2, 0xE048,
- 0x90D3, 0xDBA9, 0x90D4, 0xE049, 0x90D5, 0xE04A, 0x90D6, 0xE04B,
- 0x90D7, 0xDBAD, 0x90D8, 0xE04C, 0x90D9, 0xE04D, 0x90DA, 0xE04E,
- 0x90DB, 0xDBAE, 0x90DC, 0xDBAC, 0x90DD, 0xBAC2, 0x90DE, 0xE04F,
- 0x90DF, 0xE050, 0x90E0, 0xE051, 0x90E1, 0xBFA4, 0x90E2, 0xDBAB,
- 0x90E3, 0xE052, 0x90E4, 0xE053, 0x90E5, 0xE054, 0x90E6, 0xDBAA,
- 0x90E7, 0xD4C7, 0x90E8, 0xB2BF, 0x90E9, 0xE055, 0x90EA, 0xE056,
- 0x90EB, 0xDBAF, 0x90EC, 0xE057, 0x90ED, 0xB9F9, 0x90EE, 0xE058,
- 0x90EF, 0xDBB0, 0x90F0, 0xE059, 0x90F1, 0xE05A, 0x90F2, 0xE05B,
- 0x90F3, 0xE05C, 0x90F4, 0xB3BB, 0x90F5, 0xE05D, 0x90F6, 0xE05E,
- 0x90F7, 0xE05F, 0x90F8, 0xB5A6, 0x90F9, 0xE060, 0x90FA, 0xE061,
- 0x90FB, 0xE062, 0x90FC, 0xE063, 0x90FD, 0xB6BC, 0x90FE, 0xDBB1,
- 0x90FF, 0xE064, 0x9100, 0xE065, 0x9101, 0xE066, 0x9102, 0xB6F5,
- 0x9103, 0xE067, 0x9104, 0xDBB2, 0x9105, 0xE068, 0x9106, 0xE069,
- 0x9107, 0xE06A, 0x9108, 0xE06B, 0x9109, 0xE06C, 0x910A, 0xE06D,
- 0x910B, 0xE06E, 0x910C, 0xE06F, 0x910D, 0xE070, 0x910E, 0xE071,
- 0x910F, 0xE072, 0x9110, 0xE073, 0x9111, 0xE074, 0x9112, 0xE075,
- 0x9113, 0xE076, 0x9114, 0xE077, 0x9115, 0xE078, 0x9116, 0xE079,
- 0x9117, 0xE07A, 0x9118, 0xE07B, 0x9119, 0xB1C9, 0x911A, 0xE07C,
- 0x911B, 0xE07D, 0x911C, 0xE07E, 0x911D, 0xE080, 0x911E, 0xDBB4,
- 0x911F, 0xE081, 0x9120, 0xE082, 0x9121, 0xE083, 0x9122, 0xDBB3,
- 0x9123, 0xDBB5, 0x9124, 0xE084, 0x9125, 0xE085, 0x9126, 0xE086,
- 0x9127, 0xE087, 0x9128, 0xE088, 0x9129, 0xE089, 0x912A, 0xE08A,
- 0x912B, 0xE08B, 0x912C, 0xE08C, 0x912D, 0xE08D, 0x912E, 0xE08E,
- 0x912F, 0xDBB7, 0x9130, 0xE08F, 0x9131, 0xDBB6, 0x9132, 0xE090,
- 0x9133, 0xE091, 0x9134, 0xE092, 0x9135, 0xE093, 0x9136, 0xE094,
- 0x9137, 0xE095, 0x9138, 0xE096, 0x9139, 0xDBB8, 0x913A, 0xE097,
- 0x913B, 0xE098, 0x913C, 0xE099, 0x913D, 0xE09A, 0x913E, 0xE09B,
- 0x913F, 0xE09C, 0x9140, 0xE09D, 0x9141, 0xE09E, 0x9142, 0xE09F,
- 0x9143, 0xDBB9, 0x9144, 0xE0A0, 0x9145, 0xE140, 0x9146, 0xDBBA,
- 0x9147, 0xE141, 0x9148, 0xE142, 0x9149, 0xD3CF, 0x914A, 0xF4FA,
- 0x914B, 0xC7F5, 0x914C, 0xD7C3, 0x914D, 0xC5E4, 0x914E, 0xF4FC,
- 0x914F, 0xF4FD, 0x9150, 0xF4FB, 0x9151, 0xE143, 0x9152, 0xBEC6,
- 0x9153, 0xE144, 0x9154, 0xE145, 0x9155, 0xE146, 0x9156, 0xE147,
- 0x9157, 0xD0EF, 0x9158, 0xE148, 0x9159, 0xE149, 0x915A, 0xB7D3,
- 0x915B, 0xE14A, 0x915C, 0xE14B, 0x915D, 0xD4CD, 0x915E, 0xCCAA,
- 0x915F, 0xE14C, 0x9160, 0xE14D, 0x9161, 0xF5A2, 0x9162, 0xF5A1,
- 0x9163, 0xBAA8, 0x9164, 0xF4FE, 0x9165, 0xCBD6, 0x9166, 0xE14E,
- 0x9167, 0xE14F, 0x9168, 0xE150, 0x9169, 0xF5A4, 0x916A, 0xC0D2,
- 0x916B, 0xE151, 0x916C, 0xB3EA, 0x916D, 0xE152, 0x916E, 0xCDAA,
- 0x916F, 0xF5A5, 0x9170, 0xF5A3, 0x9171, 0xBDB4, 0x9172, 0xF5A8,
- 0x9173, 0xE153, 0x9174, 0xF5A9, 0x9175, 0xBDCD, 0x9176, 0xC3B8,
- 0x9177, 0xBFE1, 0x9178, 0xCBE1, 0x9179, 0xF5AA, 0x917A, 0xE154,
- 0x917B, 0xE155, 0x917C, 0xE156, 0x917D, 0xF5A6, 0x917E, 0xF5A7,
- 0x917F, 0xC4F0, 0x9180, 0xE157, 0x9181, 0xE158, 0x9182, 0xE159,
- 0x9183, 0xE15A, 0x9184, 0xE15B, 0x9185, 0xF5AC, 0x9186, 0xE15C,
- 0x9187, 0xB4BC, 0x9188, 0xE15D, 0x9189, 0xD7ED, 0x918A, 0xE15E,
- 0x918B, 0xB4D7, 0x918C, 0xF5AB, 0x918D, 0xF5AE, 0x918E, 0xE15F,
- 0x918F, 0xE160, 0x9190, 0xF5AD, 0x9191, 0xF5AF, 0x9192, 0xD0D1,
- 0x9193, 0xE161, 0x9194, 0xE162, 0x9195, 0xE163, 0x9196, 0xE164,
- 0x9197, 0xE165, 0x9198, 0xE166, 0x9199, 0xE167, 0x919A, 0xC3D1,
- 0x919B, 0xC8A9, 0x919C, 0xE168, 0x919D, 0xE169, 0x919E, 0xE16A,
- 0x919F, 0xE16B, 0x91A0, 0xE16C, 0x91A1, 0xE16D, 0x91A2, 0xF5B0,
- 0x91A3, 0xF5B1, 0x91A4, 0xE16E, 0x91A5, 0xE16F, 0x91A6, 0xE170,
- 0x91A7, 0xE171, 0x91A8, 0xE172, 0x91A9, 0xE173, 0x91AA, 0xF5B2,
- 0x91AB, 0xE174, 0x91AC, 0xE175, 0x91AD, 0xF5B3, 0x91AE, 0xF5B4,
- 0x91AF, 0xF5B5, 0x91B0, 0xE176, 0x91B1, 0xE177, 0x91B2, 0xE178,
- 0x91B3, 0xE179, 0x91B4, 0xF5B7, 0x91B5, 0xF5B6, 0x91B6, 0xE17A,
- 0x91B7, 0xE17B, 0x91B8, 0xE17C, 0x91B9, 0xE17D, 0x91BA, 0xF5B8,
- 0x91BB, 0xE17E, 0x91BC, 0xE180, 0x91BD, 0xE181, 0x91BE, 0xE182,
- 0x91BF, 0xE183, 0x91C0, 0xE184, 0x91C1, 0xE185, 0x91C2, 0xE186,
- 0x91C3, 0xE187, 0x91C4, 0xE188, 0x91C5, 0xE189, 0x91C6, 0xE18A,
- 0x91C7, 0xB2C9, 0x91C8, 0xE18B, 0x91C9, 0xD3D4, 0x91CA, 0xCACD,
- 0x91CB, 0xE18C, 0x91CC, 0xC0EF, 0x91CD, 0xD6D8, 0x91CE, 0xD2B0,
- 0x91CF, 0xC1BF, 0x91D0, 0xE18D, 0x91D1, 0xBDF0, 0x91D2, 0xE18E,
- 0x91D3, 0xE18F, 0x91D4, 0xE190, 0x91D5, 0xE191, 0x91D6, 0xE192,
- 0x91D7, 0xE193, 0x91D8, 0xE194, 0x91D9, 0xE195, 0x91DA, 0xE196,
- 0x91DB, 0xE197, 0x91DC, 0xB8AA, 0x91DD, 0xE198, 0x91DE, 0xE199,
- 0x91DF, 0xE19A, 0x91E0, 0xE19B, 0x91E1, 0xE19C, 0x91E2, 0xE19D,
- 0x91E3, 0xE19E, 0x91E4, 0xE19F, 0x91E5, 0xE1A0, 0x91E6, 0xE240,
- 0x91E7, 0xE241, 0x91E8, 0xE242, 0x91E9, 0xE243, 0x91EA, 0xE244,
- 0x91EB, 0xE245, 0x91EC, 0xE246, 0x91ED, 0xE247, 0x91EE, 0xE248,
- 0x91EF, 0xE249, 0x91F0, 0xE24A, 0x91F1, 0xE24B, 0x91F2, 0xE24C,
- 0x91F3, 0xE24D, 0x91F4, 0xE24E, 0x91F5, 0xE24F, 0x91F6, 0xE250,
- 0x91F7, 0xE251, 0x91F8, 0xE252, 0x91F9, 0xE253, 0x91FA, 0xE254,
- 0x91FB, 0xE255, 0x91FC, 0xE256, 0x91FD, 0xE257, 0x91FE, 0xE258,
- 0x91FF, 0xE259, 0x9200, 0xE25A, 0x9201, 0xE25B, 0x9202, 0xE25C,
- 0x9203, 0xE25D, 0x9204, 0xE25E, 0x9205, 0xE25F, 0x9206, 0xE260,
- 0x9207, 0xE261, 0x9208, 0xE262, 0x9209, 0xE263, 0x920A, 0xE264,
- 0x920B, 0xE265, 0x920C, 0xE266, 0x920D, 0xE267, 0x920E, 0xE268,
- 0x920F, 0xE269, 0x9210, 0xE26A, 0x9211, 0xE26B, 0x9212, 0xE26C,
- 0x9213, 0xE26D, 0x9214, 0xE26E, 0x9215, 0xE26F, 0x9216, 0xE270,
- 0x9217, 0xE271, 0x9218, 0xE272, 0x9219, 0xE273, 0x921A, 0xE274,
- 0x921B, 0xE275, 0x921C, 0xE276, 0x921D, 0xE277, 0x921E, 0xE278,
- 0x921F, 0xE279, 0x9220, 0xE27A, 0x9221, 0xE27B, 0x9222, 0xE27C,
- 0x9223, 0xE27D, 0x9224, 0xE27E, 0x9225, 0xE280, 0x9226, 0xE281,
- 0x9227, 0xE282, 0x9228, 0xE283, 0x9229, 0xE284, 0x922A, 0xE285,
- 0x922B, 0xE286, 0x922C, 0xE287, 0x922D, 0xE288, 0x922E, 0xE289,
- 0x922F, 0xE28A, 0x9230, 0xE28B, 0x9231, 0xE28C, 0x9232, 0xE28D,
- 0x9233, 0xE28E, 0x9234, 0xE28F, 0x9235, 0xE290, 0x9236, 0xE291,
- 0x9237, 0xE292, 0x9238, 0xE293, 0x9239, 0xE294, 0x923A, 0xE295,
- 0x923B, 0xE296, 0x923C, 0xE297, 0x923D, 0xE298, 0x923E, 0xE299,
- 0x923F, 0xE29A, 0x9240, 0xE29B, 0x9241, 0xE29C, 0x9242, 0xE29D,
- 0x9243, 0xE29E, 0x9244, 0xE29F, 0x9245, 0xE2A0, 0x9246, 0xE340,
- 0x9247, 0xE341, 0x9248, 0xE342, 0x9249, 0xE343, 0x924A, 0xE344,
- 0x924B, 0xE345, 0x924C, 0xE346, 0x924D, 0xE347, 0x924E, 0xE348,
- 0x924F, 0xE349, 0x9250, 0xE34A, 0x9251, 0xE34B, 0x9252, 0xE34C,
- 0x9253, 0xE34D, 0x9254, 0xE34E, 0x9255, 0xE34F, 0x9256, 0xE350,
- 0x9257, 0xE351, 0x9258, 0xE352, 0x9259, 0xE353, 0x925A, 0xE354,
- 0x925B, 0xE355, 0x925C, 0xE356, 0x925D, 0xE357, 0x925E, 0xE358,
- 0x925F, 0xE359, 0x9260, 0xE35A, 0x9261, 0xE35B, 0x9262, 0xE35C,
- 0x9263, 0xE35D, 0x9264, 0xE35E, 0x9265, 0xE35F, 0x9266, 0xE360,
- 0x9267, 0xE361, 0x9268, 0xE362, 0x9269, 0xE363, 0x926A, 0xE364,
- 0x926B, 0xE365, 0x926C, 0xE366, 0x926D, 0xE367, 0x926E, 0xE368,
- 0x926F, 0xE369, 0x9270, 0xE36A, 0x9271, 0xE36B, 0x9272, 0xE36C,
- 0x9273, 0xE36D, 0x9274, 0xBCF8, 0x9275, 0xE36E, 0x9276, 0xE36F,
- 0x9277, 0xE370, 0x9278, 0xE371, 0x9279, 0xE372, 0x927A, 0xE373,
- 0x927B, 0xE374, 0x927C, 0xE375, 0x927D, 0xE376, 0x927E, 0xE377,
- 0x927F, 0xE378, 0x9280, 0xE379, 0x9281, 0xE37A, 0x9282, 0xE37B,
- 0x9283, 0xE37C, 0x9284, 0xE37D, 0x9285, 0xE37E, 0x9286, 0xE380,
- 0x9287, 0xE381, 0x9288, 0xE382, 0x9289, 0xE383, 0x928A, 0xE384,
- 0x928B, 0xE385, 0x928C, 0xE386, 0x928D, 0xE387, 0x928E, 0xF6C6,
- 0x928F, 0xE388, 0x9290, 0xE389, 0x9291, 0xE38A, 0x9292, 0xE38B,
- 0x9293, 0xE38C, 0x9294, 0xE38D, 0x9295, 0xE38E, 0x9296, 0xE38F,
- 0x9297, 0xE390, 0x9298, 0xE391, 0x9299, 0xE392, 0x929A, 0xE393,
- 0x929B, 0xE394, 0x929C, 0xE395, 0x929D, 0xE396, 0x929E, 0xE397,
- 0x929F, 0xE398, 0x92A0, 0xE399, 0x92A1, 0xE39A, 0x92A2, 0xE39B,
- 0x92A3, 0xE39C, 0x92A4, 0xE39D, 0x92A5, 0xE39E, 0x92A6, 0xE39F,
- 0x92A7, 0xE3A0, 0x92A8, 0xE440, 0x92A9, 0xE441, 0x92AA, 0xE442,
- 0x92AB, 0xE443, 0x92AC, 0xE444, 0x92AD, 0xE445, 0x92AE, 0xF6C7,
- 0x92AF, 0xE446, 0x92B0, 0xE447, 0x92B1, 0xE448, 0x92B2, 0xE449,
- 0x92B3, 0xE44A, 0x92B4, 0xE44B, 0x92B5, 0xE44C, 0x92B6, 0xE44D,
- 0x92B7, 0xE44E, 0x92B8, 0xE44F, 0x92B9, 0xE450, 0x92BA, 0xE451,
- 0x92BB, 0xE452, 0x92BC, 0xE453, 0x92BD, 0xE454, 0x92BE, 0xE455,
- 0x92BF, 0xE456, 0x92C0, 0xE457, 0x92C1, 0xE458, 0x92C2, 0xE459,
- 0x92C3, 0xE45A, 0x92C4, 0xE45B, 0x92C5, 0xE45C, 0x92C6, 0xE45D,
- 0x92C7, 0xE45E, 0x92C8, 0xF6C8, 0x92C9, 0xE45F, 0x92CA, 0xE460,
- 0x92CB, 0xE461, 0x92CC, 0xE462, 0x92CD, 0xE463, 0x92CE, 0xE464,
- 0x92CF, 0xE465, 0x92D0, 0xE466, 0x92D1, 0xE467, 0x92D2, 0xE468,
- 0x92D3, 0xE469, 0x92D4, 0xE46A, 0x92D5, 0xE46B, 0x92D6, 0xE46C,
- 0x92D7, 0xE46D, 0x92D8, 0xE46E, 0x92D9, 0xE46F, 0x92DA, 0xE470,
- 0x92DB, 0xE471, 0x92DC, 0xE472, 0x92DD, 0xE473, 0x92DE, 0xE474,
- 0x92DF, 0xE475, 0x92E0, 0xE476, 0x92E1, 0xE477, 0x92E2, 0xE478,
- 0x92E3, 0xE479, 0x92E4, 0xE47A, 0x92E5, 0xE47B, 0x92E6, 0xE47C,
- 0x92E7, 0xE47D, 0x92E8, 0xE47E, 0x92E9, 0xE480, 0x92EA, 0xE481,
- 0x92EB, 0xE482, 0x92EC, 0xE483, 0x92ED, 0xE484, 0x92EE, 0xE485,
- 0x92EF, 0xE486, 0x92F0, 0xE487, 0x92F1, 0xE488, 0x92F2, 0xE489,
- 0x92F3, 0xE48A, 0x92F4, 0xE48B, 0x92F5, 0xE48C, 0x92F6, 0xE48D,
- 0x92F7, 0xE48E, 0x92F8, 0xE48F, 0x92F9, 0xE490, 0x92FA, 0xE491,
- 0x92FB, 0xE492, 0x92FC, 0xE493, 0x92FD, 0xE494, 0x92FE, 0xE495,
- 0x92FF, 0xE496, 0x9300, 0xE497, 0x9301, 0xE498, 0x9302, 0xE499,
- 0x9303, 0xE49A, 0x9304, 0xE49B, 0x9305, 0xE49C, 0x9306, 0xE49D,
- 0x9307, 0xE49E, 0x9308, 0xE49F, 0x9309, 0xE4A0, 0x930A, 0xE540,
- 0x930B, 0xE541, 0x930C, 0xE542, 0x930D, 0xE543, 0x930E, 0xE544,
- 0x930F, 0xE545, 0x9310, 0xE546, 0x9311, 0xE547, 0x9312, 0xE548,
- 0x9313, 0xE549, 0x9314, 0xE54A, 0x9315, 0xE54B, 0x9316, 0xE54C,
- 0x9317, 0xE54D, 0x9318, 0xE54E, 0x9319, 0xE54F, 0x931A, 0xE550,
- 0x931B, 0xE551, 0x931C, 0xE552, 0x931D, 0xE553, 0x931E, 0xE554,
- 0x931F, 0xE555, 0x9320, 0xE556, 0x9321, 0xE557, 0x9322, 0xE558,
- 0x9323, 0xE559, 0x9324, 0xE55A, 0x9325, 0xE55B, 0x9326, 0xE55C,
- 0x9327, 0xE55D, 0x9328, 0xE55E, 0x9329, 0xE55F, 0x932A, 0xE560,
- 0x932B, 0xE561, 0x932C, 0xE562, 0x932D, 0xE563, 0x932E, 0xE564,
- 0x932F, 0xE565, 0x9330, 0xE566, 0x9331, 0xE567, 0x9332, 0xE568,
- 0x9333, 0xE569, 0x9334, 0xE56A, 0x9335, 0xE56B, 0x9336, 0xE56C,
- 0x9337, 0xE56D, 0x9338, 0xE56E, 0x9339, 0xE56F, 0x933A, 0xE570,
- 0x933B, 0xE571, 0x933C, 0xE572, 0x933D, 0xE573, 0x933E, 0xF6C9,
- 0x933F, 0xE574, 0x9340, 0xE575, 0x9341, 0xE576, 0x9342, 0xE577,
- 0x9343, 0xE578, 0x9344, 0xE579, 0x9345, 0xE57A, 0x9346, 0xE57B,
- 0x9347, 0xE57C, 0x9348, 0xE57D, 0x9349, 0xE57E, 0x934A, 0xE580,
- 0x934B, 0xE581, 0x934C, 0xE582, 0x934D, 0xE583, 0x934E, 0xE584,
- 0x934F, 0xE585, 0x9350, 0xE586, 0x9351, 0xE587, 0x9352, 0xE588,
- 0x9353, 0xE589, 0x9354, 0xE58A, 0x9355, 0xE58B, 0x9356, 0xE58C,
- 0x9357, 0xE58D, 0x9358, 0xE58E, 0x9359, 0xE58F, 0x935A, 0xE590,
- 0x935B, 0xE591, 0x935C, 0xE592, 0x935D, 0xE593, 0x935E, 0xE594,
- 0x935F, 0xE595, 0x9360, 0xE596, 0x9361, 0xE597, 0x9362, 0xE598,
- 0x9363, 0xE599, 0x9364, 0xE59A, 0x9365, 0xE59B, 0x9366, 0xE59C,
- 0x9367, 0xE59D, 0x9368, 0xE59E, 0x9369, 0xE59F, 0x936A, 0xF6CA,
- 0x936B, 0xE5A0, 0x936C, 0xE640, 0x936D, 0xE641, 0x936E, 0xE642,
- 0x936F, 0xE643, 0x9370, 0xE644, 0x9371, 0xE645, 0x9372, 0xE646,
- 0x9373, 0xE647, 0x9374, 0xE648, 0x9375, 0xE649, 0x9376, 0xE64A,
- 0x9377, 0xE64B, 0x9378, 0xE64C, 0x9379, 0xE64D, 0x937A, 0xE64E,
- 0x937B, 0xE64F, 0x937C, 0xE650, 0x937D, 0xE651, 0x937E, 0xE652,
- 0x937F, 0xE653, 0x9380, 0xE654, 0x9381, 0xE655, 0x9382, 0xE656,
- 0x9383, 0xE657, 0x9384, 0xE658, 0x9385, 0xE659, 0x9386, 0xE65A,
- 0x9387, 0xE65B, 0x9388, 0xE65C, 0x9389, 0xE65D, 0x938A, 0xE65E,
- 0x938B, 0xE65F, 0x938C, 0xE660, 0x938D, 0xE661, 0x938E, 0xE662,
- 0x938F, 0xF6CC, 0x9390, 0xE663, 0x9391, 0xE664, 0x9392, 0xE665,
- 0x9393, 0xE666, 0x9394, 0xE667, 0x9395, 0xE668, 0x9396, 0xE669,
- 0x9397, 0xE66A, 0x9398, 0xE66B, 0x9399, 0xE66C, 0x939A, 0xE66D,
- 0x939B, 0xE66E, 0x939C, 0xE66F, 0x939D, 0xE670, 0x939E, 0xE671,
- 0x939F, 0xE672, 0x93A0, 0xE673, 0x93A1, 0xE674, 0x93A2, 0xE675,
- 0x93A3, 0xE676, 0x93A4, 0xE677, 0x93A5, 0xE678, 0x93A6, 0xE679,
- 0x93A7, 0xE67A, 0x93A8, 0xE67B, 0x93A9, 0xE67C, 0x93AA, 0xE67D,
- 0x93AB, 0xE67E, 0x93AC, 0xE680, 0x93AD, 0xE681, 0x93AE, 0xE682,
- 0x93AF, 0xE683, 0x93B0, 0xE684, 0x93B1, 0xE685, 0x93B2, 0xE686,
- 0x93B3, 0xE687, 0x93B4, 0xE688, 0x93B5, 0xE689, 0x93B6, 0xE68A,
- 0x93B7, 0xE68B, 0x93B8, 0xE68C, 0x93B9, 0xE68D, 0x93BA, 0xE68E,
- 0x93BB, 0xE68F, 0x93BC, 0xE690, 0x93BD, 0xE691, 0x93BE, 0xE692,
- 0x93BF, 0xE693, 0x93C0, 0xE694, 0x93C1, 0xE695, 0x93C2, 0xE696,
- 0x93C3, 0xE697, 0x93C4, 0xE698, 0x93C5, 0xE699, 0x93C6, 0xE69A,
- 0x93C7, 0xE69B, 0x93C8, 0xE69C, 0x93C9, 0xE69D, 0x93CA, 0xF6CB,
- 0x93CB, 0xE69E, 0x93CC, 0xE69F, 0x93CD, 0xE6A0, 0x93CE, 0xE740,
- 0x93CF, 0xE741, 0x93D0, 0xE742, 0x93D1, 0xE743, 0x93D2, 0xE744,
- 0x93D3, 0xE745, 0x93D4, 0xE746, 0x93D5, 0xE747, 0x93D6, 0xF7E9,
- 0x93D7, 0xE748, 0x93D8, 0xE749, 0x93D9, 0xE74A, 0x93DA, 0xE74B,
- 0x93DB, 0xE74C, 0x93DC, 0xE74D, 0x93DD, 0xE74E, 0x93DE, 0xE74F,
- 0x93DF, 0xE750, 0x93E0, 0xE751, 0x93E1, 0xE752, 0x93E2, 0xE753,
- 0x93E3, 0xE754, 0x93E4, 0xE755, 0x93E5, 0xE756, 0x93E6, 0xE757,
- 0x93E7, 0xE758, 0x93E8, 0xE759, 0x93E9, 0xE75A, 0x93EA, 0xE75B,
- 0x93EB, 0xE75C, 0x93EC, 0xE75D, 0x93ED, 0xE75E, 0x93EE, 0xE75F,
- 0x93EF, 0xE760, 0x93F0, 0xE761, 0x93F1, 0xE762, 0x93F2, 0xE763,
- 0x93F3, 0xE764, 0x93F4, 0xE765, 0x93F5, 0xE766, 0x93F6, 0xE767,
- 0x93F7, 0xE768, 0x93F8, 0xE769, 0x93F9, 0xE76A, 0x93FA, 0xE76B,
- 0x93FB, 0xE76C, 0x93FC, 0xE76D, 0x93FD, 0xE76E, 0x93FE, 0xE76F,
- 0x93FF, 0xE770, 0x9400, 0xE771, 0x9401, 0xE772, 0x9402, 0xE773,
- 0x9403, 0xE774, 0x9404, 0xE775, 0x9405, 0xE776, 0x9406, 0xE777,
- 0x9407, 0xE778, 0x9408, 0xE779, 0x9409, 0xE77A, 0x940A, 0xE77B,
- 0x940B, 0xE77C, 0x940C, 0xE77D, 0x940D, 0xE77E, 0x940E, 0xE780,
- 0x940F, 0xE781, 0x9410, 0xE782, 0x9411, 0xE783, 0x9412, 0xE784,
- 0x9413, 0xE785, 0x9414, 0xE786, 0x9415, 0xE787, 0x9416, 0xE788,
- 0x9417, 0xE789, 0x9418, 0xE78A, 0x9419, 0xE78B, 0x941A, 0xE78C,
- 0x941B, 0xE78D, 0x941C, 0xE78E, 0x941D, 0xE78F, 0x941E, 0xE790,
- 0x941F, 0xE791, 0x9420, 0xE792, 0x9421, 0xE793, 0x9422, 0xE794,
- 0x9423, 0xE795, 0x9424, 0xE796, 0x9425, 0xE797, 0x9426, 0xE798,
- 0x9427, 0xE799, 0x9428, 0xE79A, 0x9429, 0xE79B, 0x942A, 0xE79C,
- 0x942B, 0xE79D, 0x942C, 0xE79E, 0x942D, 0xE79F, 0x942E, 0xE7A0,
- 0x942F, 0xE840, 0x9430, 0xE841, 0x9431, 0xE842, 0x9432, 0xE843,
- 0x9433, 0xE844, 0x9434, 0xE845, 0x9435, 0xE846, 0x9436, 0xE847,
- 0x9437, 0xE848, 0x9438, 0xE849, 0x9439, 0xE84A, 0x943A, 0xE84B,
- 0x943B, 0xE84C, 0x943C, 0xE84D, 0x943D, 0xE84E, 0x943E, 0xF6CD,
- 0x943F, 0xE84F, 0x9440, 0xE850, 0x9441, 0xE851, 0x9442, 0xE852,
- 0x9443, 0xE853, 0x9444, 0xE854, 0x9445, 0xE855, 0x9446, 0xE856,
- 0x9447, 0xE857, 0x9448, 0xE858, 0x9449, 0xE859, 0x944A, 0xE85A,
- 0x944B, 0xE85B, 0x944C, 0xE85C, 0x944D, 0xE85D, 0x944E, 0xE85E,
- 0x944F, 0xE85F, 0x9450, 0xE860, 0x9451, 0xE861, 0x9452, 0xE862,
- 0x9453, 0xE863, 0x9454, 0xE864, 0x9455, 0xE865, 0x9456, 0xE866,
- 0x9457, 0xE867, 0x9458, 0xE868, 0x9459, 0xE869, 0x945A, 0xE86A,
- 0x945B, 0xE86B, 0x945C, 0xE86C, 0x945D, 0xE86D, 0x945E, 0xE86E,
- 0x945F, 0xE86F, 0x9460, 0xE870, 0x9461, 0xE871, 0x9462, 0xE872,
- 0x9463, 0xE873, 0x9464, 0xE874, 0x9465, 0xE875, 0x9466, 0xE876,
- 0x9467, 0xE877, 0x9468, 0xE878, 0x9469, 0xE879, 0x946A, 0xE87A,
- 0x946B, 0xF6CE, 0x946C, 0xE87B, 0x946D, 0xE87C, 0x946E, 0xE87D,
- 0x946F, 0xE87E, 0x9470, 0xE880, 0x9471, 0xE881, 0x9472, 0xE882,
- 0x9473, 0xE883, 0x9474, 0xE884, 0x9475, 0xE885, 0x9476, 0xE886,
- 0x9477, 0xE887, 0x9478, 0xE888, 0x9479, 0xE889, 0x947A, 0xE88A,
- 0x947B, 0xE88B, 0x947C, 0xE88C, 0x947D, 0xE88D, 0x947E, 0xE88E,
- 0x947F, 0xE88F, 0x9480, 0xE890, 0x9481, 0xE891, 0x9482, 0xE892,
- 0x9483, 0xE893, 0x9484, 0xE894, 0x9485, 0xEEC4, 0x9486, 0xEEC5,
- 0x9487, 0xEEC6, 0x9488, 0xD5EB, 0x9489, 0xB6A4, 0x948A, 0xEEC8,
- 0x948B, 0xEEC7, 0x948C, 0xEEC9, 0x948D, 0xEECA, 0x948E, 0xC7A5,
- 0x948F, 0xEECB, 0x9490, 0xEECC, 0x9491, 0xE895, 0x9492, 0xB7B0,
- 0x9493, 0xB5F6, 0x9494, 0xEECD, 0x9495, 0xEECF, 0x9496, 0xE896,
- 0x9497, 0xEECE, 0x9498, 0xE897, 0x9499, 0xB8C6, 0x949A, 0xEED0,
- 0x949B, 0xEED1, 0x949C, 0xEED2, 0x949D, 0xB6DB, 0x949E, 0xB3AE,
- 0x949F, 0xD6D3, 0x94A0, 0xC4C6, 0x94A1, 0xB1B5, 0x94A2, 0xB8D6,
- 0x94A3, 0xEED3, 0x94A4, 0xEED4, 0x94A5, 0xD4BF, 0x94A6, 0xC7D5,
- 0x94A7, 0xBEFB, 0x94A8, 0xCED9, 0x94A9, 0xB9B3, 0x94AA, 0xEED6,
- 0x94AB, 0xEED5, 0x94AC, 0xEED8, 0x94AD, 0xEED7, 0x94AE, 0xC5A5,
- 0x94AF, 0xEED9, 0x94B0, 0xEEDA, 0x94B1, 0xC7AE, 0x94B2, 0xEEDB,
- 0x94B3, 0xC7AF, 0x94B4, 0xEEDC, 0x94B5, 0xB2A7, 0x94B6, 0xEEDD,
- 0x94B7, 0xEEDE, 0x94B8, 0xEEDF, 0x94B9, 0xEEE0, 0x94BA, 0xEEE1,
- 0x94BB, 0xD7EA, 0x94BC, 0xEEE2, 0x94BD, 0xEEE3, 0x94BE, 0xBCD8,
- 0x94BF, 0xEEE4, 0x94C0, 0xD3CB, 0x94C1, 0xCCFA, 0x94C2, 0xB2AC,
- 0x94C3, 0xC1E5, 0x94C4, 0xEEE5, 0x94C5, 0xC7A6, 0x94C6, 0xC3AD,
- 0x94C7, 0xE898, 0x94C8, 0xEEE6, 0x94C9, 0xEEE7, 0x94CA, 0xEEE8,
- 0x94CB, 0xEEE9, 0x94CC, 0xEEEA, 0x94CD, 0xEEEB, 0x94CE, 0xEEEC,
- 0x94CF, 0xE899, 0x94D0, 0xEEED, 0x94D1, 0xEEEE, 0x94D2, 0xEEEF,
- 0x94D3, 0xE89A, 0x94D4, 0xE89B, 0x94D5, 0xEEF0, 0x94D6, 0xEEF1,
- 0x94D7, 0xEEF2, 0x94D8, 0xEEF4, 0x94D9, 0xEEF3, 0x94DA, 0xE89C,
- 0x94DB, 0xEEF5, 0x94DC, 0xCDAD, 0x94DD, 0xC2C1, 0x94DE, 0xEEF6,
- 0x94DF, 0xEEF7, 0x94E0, 0xEEF8, 0x94E1, 0xD5A1, 0x94E2, 0xEEF9,
- 0x94E3, 0xCFB3, 0x94E4, 0xEEFA, 0x94E5, 0xEEFB, 0x94E6, 0xE89D,
- 0x94E7, 0xEEFC, 0x94E8, 0xEEFD, 0x94E9, 0xEFA1, 0x94EA, 0xEEFE,
- 0x94EB, 0xEFA2, 0x94EC, 0xB8F5, 0x94ED, 0xC3FA, 0x94EE, 0xEFA3,
- 0x94EF, 0xEFA4, 0x94F0, 0xBDC2, 0x94F1, 0xD2BF, 0x94F2, 0xB2F9,
- 0x94F3, 0xEFA5, 0x94F4, 0xEFA6, 0x94F5, 0xEFA7, 0x94F6, 0xD2F8,
- 0x94F7, 0xEFA8, 0x94F8, 0xD6FD, 0x94F9, 0xEFA9, 0x94FA, 0xC6CC,
- 0x94FB, 0xE89E, 0x94FC, 0xEFAA, 0x94FD, 0xEFAB, 0x94FE, 0xC1B4,
- 0x94FF, 0xEFAC, 0x9500, 0xCFFA, 0x9501, 0xCBF8, 0x9502, 0xEFAE,
- 0x9503, 0xEFAD, 0x9504, 0xB3FA, 0x9505, 0xB9F8, 0x9506, 0xEFAF,
- 0x9507, 0xEFB0, 0x9508, 0xD0E2, 0x9509, 0xEFB1, 0x950A, 0xEFB2,
- 0x950B, 0xB7E6, 0x950C, 0xD0BF, 0x950D, 0xEFB3, 0x950E, 0xEFB4,
- 0x950F, 0xEFB5, 0x9510, 0xC8F1, 0x9511, 0xCCE0, 0x9512, 0xEFB6,
- 0x9513, 0xEFB7, 0x9514, 0xEFB8, 0x9515, 0xEFB9, 0x9516, 0xEFBA,
- 0x9517, 0xD5E0, 0x9518, 0xEFBB, 0x9519, 0xB4ED, 0x951A, 0xC3AA,
- 0x951B, 0xEFBC, 0x951C, 0xE89F, 0x951D, 0xEFBD, 0x951E, 0xEFBE,
- 0x951F, 0xEFBF, 0x9520, 0xE8A0, 0x9521, 0xCEFD, 0x9522, 0xEFC0,
- 0x9523, 0xC2E0, 0x9524, 0xB4B8, 0x9525, 0xD7B6, 0x9526, 0xBDF5,
- 0x9527, 0xE940, 0x9528, 0xCFC7, 0x9529, 0xEFC3, 0x952A, 0xEFC1,
- 0x952B, 0xEFC2, 0x952C, 0xEFC4, 0x952D, 0xB6A7, 0x952E, 0xBCFC,
- 0x952F, 0xBEE2, 0x9530, 0xC3CC, 0x9531, 0xEFC5, 0x9532, 0xEFC6,
- 0x9533, 0xE941, 0x9534, 0xEFC7, 0x9535, 0xEFCF, 0x9536, 0xEFC8,
- 0x9537, 0xEFC9, 0x9538, 0xEFCA, 0x9539, 0xC7C2, 0x953A, 0xEFF1,
- 0x953B, 0xB6CD, 0x953C, 0xEFCB, 0x953D, 0xE942, 0x953E, 0xEFCC,
- 0x953F, 0xEFCD, 0x9540, 0xB6C6, 0x9541, 0xC3BE, 0x9542, 0xEFCE,
- 0x9543, 0xE943, 0x9544, 0xEFD0, 0x9545, 0xEFD1, 0x9546, 0xEFD2,
- 0x9547, 0xD5F2, 0x9548, 0xE944, 0x9549, 0xEFD3, 0x954A, 0xC4F7,
- 0x954B, 0xE945, 0x954C, 0xEFD4, 0x954D, 0xC4F8, 0x954E, 0xEFD5,
- 0x954F, 0xEFD6, 0x9550, 0xB8E4, 0x9551, 0xB0F7, 0x9552, 0xEFD7,
- 0x9553, 0xEFD8, 0x9554, 0xEFD9, 0x9555, 0xE946, 0x9556, 0xEFDA,
- 0x9557, 0xEFDB, 0x9558, 0xEFDC, 0x9559, 0xEFDD, 0x955A, 0xE947,
- 0x955B, 0xEFDE, 0x955C, 0xBEB5, 0x955D, 0xEFE1, 0x955E, 0xEFDF,
- 0x955F, 0xEFE0, 0x9560, 0xE948, 0x9561, 0xEFE2, 0x9562, 0xEFE3,
- 0x9563, 0xC1CD, 0x9564, 0xEFE4, 0x9565, 0xEFE5, 0x9566, 0xEFE6,
- 0x9567, 0xEFE7, 0x9568, 0xEFE8, 0x9569, 0xEFE9, 0x956A, 0xEFEA,
- 0x956B, 0xEFEB, 0x956C, 0xEFEC, 0x956D, 0xC0D8, 0x956E, 0xE949,
- 0x956F, 0xEFED, 0x9570, 0xC1AD, 0x9571, 0xEFEE, 0x9572, 0xEFEF,
- 0x9573, 0xEFF0, 0x9574, 0xE94A, 0x9575, 0xE94B, 0x9576, 0xCFE2,
- 0x9577, 0xE94C, 0x9578, 0xE94D, 0x9579, 0xE94E, 0x957A, 0xE94F,
- 0x957B, 0xE950, 0x957C, 0xE951, 0x957D, 0xE952, 0x957E, 0xE953,
- 0x957F, 0xB3A4, 0x9580, 0xE954, 0x9581, 0xE955, 0x9582, 0xE956,
- 0x9583, 0xE957, 0x9584, 0xE958, 0x9585, 0xE959, 0x9586, 0xE95A,
- 0x9587, 0xE95B, 0x9588, 0xE95C, 0x9589, 0xE95D, 0x958A, 0xE95E,
- 0x958B, 0xE95F, 0x958C, 0xE960, 0x958D, 0xE961, 0x958E, 0xE962,
- 0x958F, 0xE963, 0x9590, 0xE964, 0x9591, 0xE965, 0x9592, 0xE966,
- 0x9593, 0xE967, 0x9594, 0xE968, 0x9595, 0xE969, 0x9596, 0xE96A,
- 0x9597, 0xE96B, 0x9598, 0xE96C, 0x9599, 0xE96D, 0x959A, 0xE96E,
- 0x959B, 0xE96F, 0x959C, 0xE970, 0x959D, 0xE971, 0x959E, 0xE972,
- 0x959F, 0xE973, 0x95A0, 0xE974, 0x95A1, 0xE975, 0x95A2, 0xE976,
- 0x95A3, 0xE977, 0x95A4, 0xE978, 0x95A5, 0xE979, 0x95A6, 0xE97A,
- 0x95A7, 0xE97B, 0x95A8, 0xE97C, 0x95A9, 0xE97D, 0x95AA, 0xE97E,
- 0x95AB, 0xE980, 0x95AC, 0xE981, 0x95AD, 0xE982, 0x95AE, 0xE983,
- 0x95AF, 0xE984, 0x95B0, 0xE985, 0x95B1, 0xE986, 0x95B2, 0xE987,
- 0x95B3, 0xE988, 0x95B4, 0xE989, 0x95B5, 0xE98A, 0x95B6, 0xE98B,
- 0x95B7, 0xE98C, 0x95B8, 0xE98D, 0x95B9, 0xE98E, 0x95BA, 0xE98F,
- 0x95BB, 0xE990, 0x95BC, 0xE991, 0x95BD, 0xE992, 0x95BE, 0xE993,
- 0x95BF, 0xE994, 0x95C0, 0xE995, 0x95C1, 0xE996, 0x95C2, 0xE997,
- 0x95C3, 0xE998, 0x95C4, 0xE999, 0x95C5, 0xE99A, 0x95C6, 0xE99B,
- 0x95C7, 0xE99C, 0x95C8, 0xE99D, 0x95C9, 0xE99E, 0x95CA, 0xE99F,
- 0x95CB, 0xE9A0, 0x95CC, 0xEA40, 0x95CD, 0xEA41, 0x95CE, 0xEA42,
- 0x95CF, 0xEA43, 0x95D0, 0xEA44, 0x95D1, 0xEA45, 0x95D2, 0xEA46,
- 0x95D3, 0xEA47, 0x95D4, 0xEA48, 0x95D5, 0xEA49, 0x95D6, 0xEA4A,
- 0x95D7, 0xEA4B, 0x95D8, 0xEA4C, 0x95D9, 0xEA4D, 0x95DA, 0xEA4E,
- 0x95DB, 0xEA4F, 0x95DC, 0xEA50, 0x95DD, 0xEA51, 0x95DE, 0xEA52,
- 0x95DF, 0xEA53, 0x95E0, 0xEA54, 0x95E1, 0xEA55, 0x95E2, 0xEA56,
- 0x95E3, 0xEA57, 0x95E4, 0xEA58, 0x95E5, 0xEA59, 0x95E6, 0xEA5A,
- 0x95E7, 0xEA5B, 0x95E8, 0xC3C5, 0x95E9, 0xE3C5, 0x95EA, 0xC9C1,
- 0x95EB, 0xE3C6, 0x95EC, 0xEA5C, 0x95ED, 0xB1D5, 0x95EE, 0xCECA,
- 0x95EF, 0xB4B3, 0x95F0, 0xC8F2, 0x95F1, 0xE3C7, 0x95F2, 0xCFD0,
- 0x95F3, 0xE3C8, 0x95F4, 0xBCE4, 0x95F5, 0xE3C9, 0x95F6, 0xE3CA,
- 0x95F7, 0xC3C6, 0x95F8, 0xD5A2, 0x95F9, 0xC4D6, 0x95FA, 0xB9EB,
- 0x95FB, 0xCEC5, 0x95FC, 0xE3CB, 0x95FD, 0xC3F6, 0x95FE, 0xE3CC,
- 0x95FF, 0xEA5D, 0x9600, 0xB7A7, 0x9601, 0xB8F3, 0x9602, 0xBAD2,
- 0x9603, 0xE3CD, 0x9604, 0xE3CE, 0x9605, 0xD4C4, 0x9606, 0xE3CF,
- 0x9607, 0xEA5E, 0x9608, 0xE3D0, 0x9609, 0xD1CB, 0x960A, 0xE3D1,
- 0x960B, 0xE3D2, 0x960C, 0xE3D3, 0x960D, 0xE3D4, 0x960E, 0xD1D6,
- 0x960F, 0xE3D5, 0x9610, 0xB2FB, 0x9611, 0xC0BB, 0x9612, 0xE3D6,
- 0x9613, 0xEA5F, 0x9614, 0xC0AB, 0x9615, 0xE3D7, 0x9616, 0xE3D8,
- 0x9617, 0xE3D9, 0x9618, 0xEA60, 0x9619, 0xE3DA, 0x961A, 0xE3DB,
- 0x961B, 0xEA61, 0x961C, 0xB8B7, 0x961D, 0xDAE2, 0x961E, 0xEA62,
- 0x961F, 0xB6D3, 0x9620, 0xEA63, 0x9621, 0xDAE4, 0x9622, 0xDAE3,
- 0x9623, 0xEA64, 0x9624, 0xEA65, 0x9625, 0xEA66, 0x9626, 0xEA67,
- 0x9627, 0xEA68, 0x9628, 0xEA69, 0x9629, 0xEA6A, 0x962A, 0xDAE6,
- 0x962B, 0xEA6B, 0x962C, 0xEA6C, 0x962D, 0xEA6D, 0x962E, 0xC8EE,
- 0x962F, 0xEA6E, 0x9630, 0xEA6F, 0x9631, 0xDAE5, 0x9632, 0xB7C0,
- 0x9633, 0xD1F4, 0x9634, 0xD2F5, 0x9635, 0xD5F3, 0x9636, 0xBDD7,
- 0x9637, 0xEA70, 0x9638, 0xEA71, 0x9639, 0xEA72, 0x963A, 0xEA73,
- 0x963B, 0xD7E8, 0x963C, 0xDAE8, 0x963D, 0xDAE7, 0x963E, 0xEA74,
- 0x963F, 0xB0A2, 0x9640, 0xCDD3, 0x9641, 0xEA75, 0x9642, 0xDAE9,
- 0x9643, 0xEA76, 0x9644, 0xB8BD, 0x9645, 0xBCCA, 0x9646, 0xC2BD,
- 0x9647, 0xC2A4, 0x9648, 0xB3C2, 0x9649, 0xDAEA, 0x964A, 0xEA77,
- 0x964B, 0xC2AA, 0x964C, 0xC4B0, 0x964D, 0xBDB5, 0x964E, 0xEA78,
- 0x964F, 0xEA79, 0x9650, 0xCFDE, 0x9651, 0xEA7A, 0x9652, 0xEA7B,
- 0x9653, 0xEA7C, 0x9654, 0xDAEB, 0x9655, 0xC9C2, 0x9656, 0xEA7D,
- 0x9657, 0xEA7E, 0x9658, 0xEA80, 0x9659, 0xEA81, 0x965A, 0xEA82,
- 0x965B, 0xB1DD, 0x965C, 0xEA83, 0x965D, 0xEA84, 0x965E, 0xEA85,
- 0x965F, 0xDAEC, 0x9660, 0xEA86, 0x9661, 0xB6B8, 0x9662, 0xD4BA,
- 0x9663, 0xEA87, 0x9664, 0xB3FD, 0x9665, 0xEA88, 0x9666, 0xEA89,
- 0x9667, 0xDAED, 0x9668, 0xD4C9, 0x9669, 0xCFD5, 0x966A, 0xC5E3,
- 0x966B, 0xEA8A, 0x966C, 0xDAEE, 0x966D, 0xEA8B, 0x966E, 0xEA8C,
- 0x966F, 0xEA8D, 0x9670, 0xEA8E, 0x9671, 0xEA8F, 0x9672, 0xDAEF,
- 0x9673, 0xEA90, 0x9674, 0xDAF0, 0x9675, 0xC1EA, 0x9676, 0xCCD5,
- 0x9677, 0xCFDD, 0x9678, 0xEA91, 0x9679, 0xEA92, 0x967A, 0xEA93,
- 0x967B, 0xEA94, 0x967C, 0xEA95, 0x967D, 0xEA96, 0x967E, 0xEA97,
- 0x967F, 0xEA98, 0x9680, 0xEA99, 0x9681, 0xEA9A, 0x9682, 0xEA9B,
- 0x9683, 0xEA9C, 0x9684, 0xEA9D, 0x9685, 0xD3E7, 0x9686, 0xC2A1,
- 0x9687, 0xEA9E, 0x9688, 0xDAF1, 0x9689, 0xEA9F, 0x968A, 0xEAA0,
- 0x968B, 0xCBE5, 0x968C, 0xEB40, 0x968D, 0xDAF2, 0x968E, 0xEB41,
- 0x968F, 0xCBE6, 0x9690, 0xD2FE, 0x9691, 0xEB42, 0x9692, 0xEB43,
- 0x9693, 0xEB44, 0x9694, 0xB8F4, 0x9695, 0xEB45, 0x9696, 0xEB46,
- 0x9697, 0xDAF3, 0x9698, 0xB0AF, 0x9699, 0xCFB6, 0x969A, 0xEB47,
- 0x969B, 0xEB48, 0x969C, 0xD5CF, 0x969D, 0xEB49, 0x969E, 0xEB4A,
- 0x969F, 0xEB4B, 0x96A0, 0xEB4C, 0x96A1, 0xEB4D, 0x96A2, 0xEB4E,
- 0x96A3, 0xEB4F, 0x96A4, 0xEB50, 0x96A5, 0xEB51, 0x96A6, 0xEB52,
- 0x96A7, 0xCBED, 0x96A8, 0xEB53, 0x96A9, 0xEB54, 0x96AA, 0xEB55,
- 0x96AB, 0xEB56, 0x96AC, 0xEB57, 0x96AD, 0xEB58, 0x96AE, 0xEB59,
- 0x96AF, 0xEB5A, 0x96B0, 0xDAF4, 0x96B1, 0xEB5B, 0x96B2, 0xEB5C,
- 0x96B3, 0xE3C4, 0x96B4, 0xEB5D, 0x96B5, 0xEB5E, 0x96B6, 0xC1A5,
- 0x96B7, 0xEB5F, 0x96B8, 0xEB60, 0x96B9, 0xF6BF, 0x96BA, 0xEB61,
- 0x96BB, 0xEB62, 0x96BC, 0xF6C0, 0x96BD, 0xF6C1, 0x96BE, 0xC4D1,
- 0x96BF, 0xEB63, 0x96C0, 0xC8B8, 0x96C1, 0xD1E3, 0x96C2, 0xEB64,
- 0x96C3, 0xEB65, 0x96C4, 0xD0DB, 0x96C5, 0xD1C5, 0x96C6, 0xBCAF,
- 0x96C7, 0xB9CD, 0x96C8, 0xEB66, 0x96C9, 0xEFF4, 0x96CA, 0xEB67,
- 0x96CB, 0xEB68, 0x96CC, 0xB4C6, 0x96CD, 0xD3BA, 0x96CE, 0xF6C2,
- 0x96CF, 0xB3FB, 0x96D0, 0xEB69, 0x96D1, 0xEB6A, 0x96D2, 0xF6C3,
- 0x96D3, 0xEB6B, 0x96D4, 0xEB6C, 0x96D5, 0xB5F1, 0x96D6, 0xEB6D,
- 0x96D7, 0xEB6E, 0x96D8, 0xEB6F, 0x96D9, 0xEB70, 0x96DA, 0xEB71,
- 0x96DB, 0xEB72, 0x96DC, 0xEB73, 0x96DD, 0xEB74, 0x96DE, 0xEB75,
- 0x96DF, 0xEB76, 0x96E0, 0xF6C5, 0x96E1, 0xEB77, 0x96E2, 0xEB78,
- 0x96E3, 0xEB79, 0x96E4, 0xEB7A, 0x96E5, 0xEB7B, 0x96E6, 0xEB7C,
- 0x96E7, 0xEB7D, 0x96E8, 0xD3EA, 0x96E9, 0xF6A7, 0x96EA, 0xD1A9,
- 0x96EB, 0xEB7E, 0x96EC, 0xEB80, 0x96ED, 0xEB81, 0x96EE, 0xEB82,
- 0x96EF, 0xF6A9, 0x96F0, 0xEB83, 0x96F1, 0xEB84, 0x96F2, 0xEB85,
- 0x96F3, 0xF6A8, 0x96F4, 0xEB86, 0x96F5, 0xEB87, 0x96F6, 0xC1E3,
- 0x96F7, 0xC0D7, 0x96F8, 0xEB88, 0x96F9, 0xB1A2, 0x96FA, 0xEB89,
- 0x96FB, 0xEB8A, 0x96FC, 0xEB8B, 0x96FD, 0xEB8C, 0x96FE, 0xCEED,
- 0x96FF, 0xEB8D, 0x9700, 0xD0E8, 0x9701, 0xF6AB, 0x9702, 0xEB8E,
- 0x9703, 0xEB8F, 0x9704, 0xCFF6, 0x9705, 0xEB90, 0x9706, 0xF6AA,
- 0x9707, 0xD5F0, 0x9708, 0xF6AC, 0x9709, 0xC3B9, 0x970A, 0xEB91,
- 0x970B, 0xEB92, 0x970C, 0xEB93, 0x970D, 0xBBF4, 0x970E, 0xF6AE,
- 0x970F, 0xF6AD, 0x9710, 0xEB94, 0x9711, 0xEB95, 0x9712, 0xEB96,
- 0x9713, 0xC4DE, 0x9714, 0xEB97, 0x9715, 0xEB98, 0x9716, 0xC1D8,
- 0x9717, 0xEB99, 0x9718, 0xEB9A, 0x9719, 0xEB9B, 0x971A, 0xEB9C,
- 0x971B, 0xEB9D, 0x971C, 0xCBAA, 0x971D, 0xEB9E, 0x971E, 0xCFBC,
- 0x971F, 0xEB9F, 0x9720, 0xEBA0, 0x9721, 0xEC40, 0x9722, 0xEC41,
- 0x9723, 0xEC42, 0x9724, 0xEC43, 0x9725, 0xEC44, 0x9726, 0xEC45,
- 0x9727, 0xEC46, 0x9728, 0xEC47, 0x9729, 0xEC48, 0x972A, 0xF6AF,
- 0x972B, 0xEC49, 0x972C, 0xEC4A, 0x972D, 0xF6B0, 0x972E, 0xEC4B,
- 0x972F, 0xEC4C, 0x9730, 0xF6B1, 0x9731, 0xEC4D, 0x9732, 0xC2B6,
- 0x9733, 0xEC4E, 0x9734, 0xEC4F, 0x9735, 0xEC50, 0x9736, 0xEC51,
- 0x9737, 0xEC52, 0x9738, 0xB0D4, 0x9739, 0xC5F9, 0x973A, 0xEC53,
- 0x973B, 0xEC54, 0x973C, 0xEC55, 0x973D, 0xEC56, 0x973E, 0xF6B2,
- 0x973F, 0xEC57, 0x9740, 0xEC58, 0x9741, 0xEC59, 0x9742, 0xEC5A,
- 0x9743, 0xEC5B, 0x9744, 0xEC5C, 0x9745, 0xEC5D, 0x9746, 0xEC5E,
- 0x9747, 0xEC5F, 0x9748, 0xEC60, 0x9749, 0xEC61, 0x974A, 0xEC62,
- 0x974B, 0xEC63, 0x974C, 0xEC64, 0x974D, 0xEC65, 0x974E, 0xEC66,
- 0x974F, 0xEC67, 0x9750, 0xEC68, 0x9751, 0xEC69, 0x9752, 0xC7E0,
- 0x9753, 0xF6A6, 0x9754, 0xEC6A, 0x9755, 0xEC6B, 0x9756, 0xBEB8,
- 0x9757, 0xEC6C, 0x9758, 0xEC6D, 0x9759, 0xBEB2, 0x975A, 0xEC6E,
- 0x975B, 0xB5E5, 0x975C, 0xEC6F, 0x975D, 0xEC70, 0x975E, 0xB7C7,
- 0x975F, 0xEC71, 0x9760, 0xBFBF, 0x9761, 0xC3D2, 0x9762, 0xC3E6,
- 0x9763, 0xEC72, 0x9764, 0xEC73, 0x9765, 0xD8CC, 0x9766, 0xEC74,
- 0x9767, 0xEC75, 0x9768, 0xEC76, 0x9769, 0xB8EF, 0x976A, 0xEC77,
- 0x976B, 0xEC78, 0x976C, 0xEC79, 0x976D, 0xEC7A, 0x976E, 0xEC7B,
- 0x976F, 0xEC7C, 0x9770, 0xEC7D, 0x9771, 0xEC7E, 0x9772, 0xEC80,
- 0x9773, 0xBDF9, 0x9774, 0xD1A5, 0x9775, 0xEC81, 0x9776, 0xB0D0,
- 0x9777, 0xEC82, 0x9778, 0xEC83, 0x9779, 0xEC84, 0x977A, 0xEC85,
- 0x977B, 0xEC86, 0x977C, 0xF7B0, 0x977D, 0xEC87, 0x977E, 0xEC88,
- 0x977F, 0xEC89, 0x9780, 0xEC8A, 0x9781, 0xEC8B, 0x9782, 0xEC8C,
- 0x9783, 0xEC8D, 0x9784, 0xEC8E, 0x9785, 0xF7B1, 0x9786, 0xEC8F,
- 0x9787, 0xEC90, 0x9788, 0xEC91, 0x9789, 0xEC92, 0x978A, 0xEC93,
- 0x978B, 0xD0AC, 0x978C, 0xEC94, 0x978D, 0xB0B0, 0x978E, 0xEC95,
- 0x978F, 0xEC96, 0x9790, 0xEC97, 0x9791, 0xF7B2, 0x9792, 0xF7B3,
- 0x9793, 0xEC98, 0x9794, 0xF7B4, 0x9795, 0xEC99, 0x9796, 0xEC9A,
- 0x9797, 0xEC9B, 0x9798, 0xC7CA, 0x9799, 0xEC9C, 0x979A, 0xEC9D,
- 0x979B, 0xEC9E, 0x979C, 0xEC9F, 0x979D, 0xECA0, 0x979E, 0xED40,
- 0x979F, 0xED41, 0x97A0, 0xBECF, 0x97A1, 0xED42, 0x97A2, 0xED43,
- 0x97A3, 0xF7B7, 0x97A4, 0xED44, 0x97A5, 0xED45, 0x97A6, 0xED46,
- 0x97A7, 0xED47, 0x97A8, 0xED48, 0x97A9, 0xED49, 0x97AA, 0xED4A,
- 0x97AB, 0xF7B6, 0x97AC, 0xED4B, 0x97AD, 0xB1DE, 0x97AE, 0xED4C,
- 0x97AF, 0xF7B5, 0x97B0, 0xED4D, 0x97B1, 0xED4E, 0x97B2, 0xF7B8,
- 0x97B3, 0xED4F, 0x97B4, 0xF7B9, 0x97B5, 0xED50, 0x97B6, 0xED51,
- 0x97B7, 0xED52, 0x97B8, 0xED53, 0x97B9, 0xED54, 0x97BA, 0xED55,
- 0x97BB, 0xED56, 0x97BC, 0xED57, 0x97BD, 0xED58, 0x97BE, 0xED59,
- 0x97BF, 0xED5A, 0x97C0, 0xED5B, 0x97C1, 0xED5C, 0x97C2, 0xED5D,
- 0x97C3, 0xED5E, 0x97C4, 0xED5F, 0x97C5, 0xED60, 0x97C6, 0xED61,
- 0x97C7, 0xED62, 0x97C8, 0xED63, 0x97C9, 0xED64, 0x97CA, 0xED65,
- 0x97CB, 0xED66, 0x97CC, 0xED67, 0x97CD, 0xED68, 0x97CE, 0xED69,
- 0x97CF, 0xED6A, 0x97D0, 0xED6B, 0x97D1, 0xED6C, 0x97D2, 0xED6D,
- 0x97D3, 0xED6E, 0x97D4, 0xED6F, 0x97D5, 0xED70, 0x97D6, 0xED71,
- 0x97D7, 0xED72, 0x97D8, 0xED73, 0x97D9, 0xED74, 0x97DA, 0xED75,
- 0x97DB, 0xED76, 0x97DC, 0xED77, 0x97DD, 0xED78, 0x97DE, 0xED79,
- 0x97DF, 0xED7A, 0x97E0, 0xED7B, 0x97E1, 0xED7C, 0x97E2, 0xED7D,
- 0x97E3, 0xED7E, 0x97E4, 0xED80, 0x97E5, 0xED81, 0x97E6, 0xCEA4,
- 0x97E7, 0xC8CD, 0x97E8, 0xED82, 0x97E9, 0xBAAB, 0x97EA, 0xE8B8,
- 0x97EB, 0xE8B9, 0x97EC, 0xE8BA, 0x97ED, 0xBEC2, 0x97EE, 0xED83,
- 0x97EF, 0xED84, 0x97F0, 0xED85, 0x97F1, 0xED86, 0x97F2, 0xED87,
- 0x97F3, 0xD2F4, 0x97F4, 0xED88, 0x97F5, 0xD4CF, 0x97F6, 0xC9D8,
- 0x97F7, 0xED89, 0x97F8, 0xED8A, 0x97F9, 0xED8B, 0x97FA, 0xED8C,
- 0x97FB, 0xED8D, 0x97FC, 0xED8E, 0x97FD, 0xED8F, 0x97FE, 0xED90,
- 0x97FF, 0xED91, 0x9800, 0xED92, 0x9801, 0xED93, 0x9802, 0xED94,
- 0x9803, 0xED95, 0x9804, 0xED96, 0x9805, 0xED97, 0x9806, 0xED98,
- 0x9807, 0xED99, 0x9808, 0xED9A, 0x9809, 0xED9B, 0x980A, 0xED9C,
- 0x980B, 0xED9D, 0x980C, 0xED9E, 0x980D, 0xED9F, 0x980E, 0xEDA0,
- 0x980F, 0xEE40, 0x9810, 0xEE41, 0x9811, 0xEE42, 0x9812, 0xEE43,
- 0x9813, 0xEE44, 0x9814, 0xEE45, 0x9815, 0xEE46, 0x9816, 0xEE47,
- 0x9817, 0xEE48, 0x9818, 0xEE49, 0x9819, 0xEE4A, 0x981A, 0xEE4B,
- 0x981B, 0xEE4C, 0x981C, 0xEE4D, 0x981D, 0xEE4E, 0x981E, 0xEE4F,
- 0x981F, 0xEE50, 0x9820, 0xEE51, 0x9821, 0xEE52, 0x9822, 0xEE53,
- 0x9823, 0xEE54, 0x9824, 0xEE55, 0x9825, 0xEE56, 0x9826, 0xEE57,
- 0x9827, 0xEE58, 0x9828, 0xEE59, 0x9829, 0xEE5A, 0x982A, 0xEE5B,
- 0x982B, 0xEE5C, 0x982C, 0xEE5D, 0x982D, 0xEE5E, 0x982E, 0xEE5F,
- 0x982F, 0xEE60, 0x9830, 0xEE61, 0x9831, 0xEE62, 0x9832, 0xEE63,
- 0x9833, 0xEE64, 0x9834, 0xEE65, 0x9835, 0xEE66, 0x9836, 0xEE67,
- 0x9837, 0xEE68, 0x9838, 0xEE69, 0x9839, 0xEE6A, 0x983A, 0xEE6B,
- 0x983B, 0xEE6C, 0x983C, 0xEE6D, 0x983D, 0xEE6E, 0x983E, 0xEE6F,
- 0x983F, 0xEE70, 0x9840, 0xEE71, 0x9841, 0xEE72, 0x9842, 0xEE73,
- 0x9843, 0xEE74, 0x9844, 0xEE75, 0x9845, 0xEE76, 0x9846, 0xEE77,
- 0x9847, 0xEE78, 0x9848, 0xEE79, 0x9849, 0xEE7A, 0x984A, 0xEE7B,
- 0x984B, 0xEE7C, 0x984C, 0xEE7D, 0x984D, 0xEE7E, 0x984E, 0xEE80,
- 0x984F, 0xEE81, 0x9850, 0xEE82, 0x9851, 0xEE83, 0x9852, 0xEE84,
- 0x9853, 0xEE85, 0x9854, 0xEE86, 0x9855, 0xEE87, 0x9856, 0xEE88,
- 0x9857, 0xEE89, 0x9858, 0xEE8A, 0x9859, 0xEE8B, 0x985A, 0xEE8C,
- 0x985B, 0xEE8D, 0x985C, 0xEE8E, 0x985D, 0xEE8F, 0x985E, 0xEE90,
- 0x985F, 0xEE91, 0x9860, 0xEE92, 0x9861, 0xEE93, 0x9862, 0xEE94,
- 0x9863, 0xEE95, 0x9864, 0xEE96, 0x9865, 0xEE97, 0x9866, 0xEE98,
- 0x9867, 0xEE99, 0x9868, 0xEE9A, 0x9869, 0xEE9B, 0x986A, 0xEE9C,
- 0x986B, 0xEE9D, 0x986C, 0xEE9E, 0x986D, 0xEE9F, 0x986E, 0xEEA0,
- 0x986F, 0xEF40, 0x9870, 0xEF41, 0x9871, 0xEF42, 0x9872, 0xEF43,
- 0x9873, 0xEF44, 0x9874, 0xEF45, 0x9875, 0xD2B3, 0x9876, 0xB6A5,
- 0x9877, 0xC7EA, 0x9878, 0xF1FC, 0x9879, 0xCFEE, 0x987A, 0xCBB3,
- 0x987B, 0xD0EB, 0x987C, 0xE7EF, 0x987D, 0xCDE7, 0x987E, 0xB9CB,
- 0x987F, 0xB6D9, 0x9880, 0xF1FD, 0x9881, 0xB0E4, 0x9882, 0xCBCC,
- 0x9883, 0xF1FE, 0x9884, 0xD4A4, 0x9885, 0xC2AD, 0x9886, 0xC1EC,
- 0x9887, 0xC6C4, 0x9888, 0xBEB1, 0x9889, 0xF2A1, 0x988A, 0xBCD5,
- 0x988B, 0xEF46, 0x988C, 0xF2A2, 0x988D, 0xF2A3, 0x988E, 0xEF47,
- 0x988F, 0xF2A4, 0x9890, 0xD2C3, 0x9891, 0xC6B5, 0x9892, 0xEF48,
- 0x9893, 0xCDC7, 0x9894, 0xF2A5, 0x9895, 0xEF49, 0x9896, 0xD3B1,
- 0x9897, 0xBFC5, 0x9898, 0xCCE2, 0x9899, 0xEF4A, 0x989A, 0xF2A6,
- 0x989B, 0xF2A7, 0x989C, 0xD1D5, 0x989D, 0xB6EE, 0x989E, 0xF2A8,
- 0x989F, 0xF2A9, 0x98A0, 0xB5DF, 0x98A1, 0xF2AA, 0x98A2, 0xF2AB,
- 0x98A3, 0xEF4B, 0x98A4, 0xB2FC, 0x98A5, 0xF2AC, 0x98A6, 0xF2AD,
- 0x98A7, 0xC8A7, 0x98A8, 0xEF4C, 0x98A9, 0xEF4D, 0x98AA, 0xEF4E,
- 0x98AB, 0xEF4F, 0x98AC, 0xEF50, 0x98AD, 0xEF51, 0x98AE, 0xEF52,
- 0x98AF, 0xEF53, 0x98B0, 0xEF54, 0x98B1, 0xEF55, 0x98B2, 0xEF56,
- 0x98B3, 0xEF57, 0x98B4, 0xEF58, 0x98B5, 0xEF59, 0x98B6, 0xEF5A,
- 0x98B7, 0xEF5B, 0x98B8, 0xEF5C, 0x98B9, 0xEF5D, 0x98BA, 0xEF5E,
- 0x98BB, 0xEF5F, 0x98BC, 0xEF60, 0x98BD, 0xEF61, 0x98BE, 0xEF62,
- 0x98BF, 0xEF63, 0x98C0, 0xEF64, 0x98C1, 0xEF65, 0x98C2, 0xEF66,
- 0x98C3, 0xEF67, 0x98C4, 0xEF68, 0x98C5, 0xEF69, 0x98C6, 0xEF6A,
- 0x98C7, 0xEF6B, 0x98C8, 0xEF6C, 0x98C9, 0xEF6D, 0x98CA, 0xEF6E,
- 0x98CB, 0xEF6F, 0x98CC, 0xEF70, 0x98CD, 0xEF71, 0x98CE, 0xB7E7,
- 0x98CF, 0xEF72, 0x98D0, 0xEF73, 0x98D1, 0xECA9, 0x98D2, 0xECAA,
- 0x98D3, 0xECAB, 0x98D4, 0xEF74, 0x98D5, 0xECAC, 0x98D6, 0xEF75,
- 0x98D7, 0xEF76, 0x98D8, 0xC6AE, 0x98D9, 0xECAD, 0x98DA, 0xECAE,
- 0x98DB, 0xEF77, 0x98DC, 0xEF78, 0x98DD, 0xEF79, 0x98DE, 0xB7C9,
- 0x98DF, 0xCAB3, 0x98E0, 0xEF7A, 0x98E1, 0xEF7B, 0x98E2, 0xEF7C,
- 0x98E3, 0xEF7D, 0x98E4, 0xEF7E, 0x98E5, 0xEF80, 0x98E6, 0xEF81,
- 0x98E7, 0xE2B8, 0x98E8, 0xF7CF, 0x98E9, 0xEF82, 0x98EA, 0xEF83,
- 0x98EB, 0xEF84, 0x98EC, 0xEF85, 0x98ED, 0xEF86, 0x98EE, 0xEF87,
- 0x98EF, 0xEF88, 0x98F0, 0xEF89, 0x98F1, 0xEF8A, 0x98F2, 0xEF8B,
- 0x98F3, 0xEF8C, 0x98F4, 0xEF8D, 0x98F5, 0xEF8E, 0x98F6, 0xEF8F,
- 0x98F7, 0xEF90, 0x98F8, 0xEF91, 0x98F9, 0xEF92, 0x98FA, 0xEF93,
- 0x98FB, 0xEF94, 0x98FC, 0xEF95, 0x98FD, 0xEF96, 0x98FE, 0xEF97,
- 0x98FF, 0xEF98, 0x9900, 0xEF99, 0x9901, 0xEF9A, 0x9902, 0xEF9B,
- 0x9903, 0xEF9C, 0x9904, 0xEF9D, 0x9905, 0xEF9E, 0x9906, 0xEF9F,
- 0x9907, 0xEFA0, 0x9908, 0xF040, 0x9909, 0xF041, 0x990A, 0xF042,
- 0x990B, 0xF043, 0x990C, 0xF044, 0x990D, 0xF7D0, 0x990E, 0xF045,
- 0x990F, 0xF046, 0x9910, 0xB2CD, 0x9911, 0xF047, 0x9912, 0xF048,
- 0x9913, 0xF049, 0x9914, 0xF04A, 0x9915, 0xF04B, 0x9916, 0xF04C,
- 0x9917, 0xF04D, 0x9918, 0xF04E, 0x9919, 0xF04F, 0x991A, 0xF050,
- 0x991B, 0xF051, 0x991C, 0xF052, 0x991D, 0xF053, 0x991E, 0xF054,
- 0x991F, 0xF055, 0x9920, 0xF056, 0x9921, 0xF057, 0x9922, 0xF058,
- 0x9923, 0xF059, 0x9924, 0xF05A, 0x9925, 0xF05B, 0x9926, 0xF05C,
- 0x9927, 0xF05D, 0x9928, 0xF05E, 0x9929, 0xF05F, 0x992A, 0xF060,
- 0x992B, 0xF061, 0x992C, 0xF062, 0x992D, 0xF063, 0x992E, 0xF7D1,
- 0x992F, 0xF064, 0x9930, 0xF065, 0x9931, 0xF066, 0x9932, 0xF067,
- 0x9933, 0xF068, 0x9934, 0xF069, 0x9935, 0xF06A, 0x9936, 0xF06B,
- 0x9937, 0xF06C, 0x9938, 0xF06D, 0x9939, 0xF06E, 0x993A, 0xF06F,
- 0x993B, 0xF070, 0x993C, 0xF071, 0x993D, 0xF072, 0x993E, 0xF073,
- 0x993F, 0xF074, 0x9940, 0xF075, 0x9941, 0xF076, 0x9942, 0xF077,
- 0x9943, 0xF078, 0x9944, 0xF079, 0x9945, 0xF07A, 0x9946, 0xF07B,
- 0x9947, 0xF07C, 0x9948, 0xF07D, 0x9949, 0xF07E, 0x994A, 0xF080,
- 0x994B, 0xF081, 0x994C, 0xF082, 0x994D, 0xF083, 0x994E, 0xF084,
- 0x994F, 0xF085, 0x9950, 0xF086, 0x9951, 0xF087, 0x9952, 0xF088,
- 0x9953, 0xF089, 0x9954, 0xF7D3, 0x9955, 0xF7D2, 0x9956, 0xF08A,
- 0x9957, 0xF08B, 0x9958, 0xF08C, 0x9959, 0xF08D, 0x995A, 0xF08E,
- 0x995B, 0xF08F, 0x995C, 0xF090, 0x995D, 0xF091, 0x995E, 0xF092,
- 0x995F, 0xF093, 0x9960, 0xF094, 0x9961, 0xF095, 0x9962, 0xF096,
- 0x9963, 0xE2BB, 0x9964, 0xF097, 0x9965, 0xBCA2, 0x9966, 0xF098,
- 0x9967, 0xE2BC, 0x9968, 0xE2BD, 0x9969, 0xE2BE, 0x996A, 0xE2BF,
- 0x996B, 0xE2C0, 0x996C, 0xE2C1, 0x996D, 0xB7B9, 0x996E, 0xD2FB,
- 0x996F, 0xBDA4, 0x9970, 0xCACE, 0x9971, 0xB1A5, 0x9972, 0xCBC7,
- 0x9973, 0xF099, 0x9974, 0xE2C2, 0x9975, 0xB6FC, 0x9976, 0xC8C4,
- 0x9977, 0xE2C3, 0x9978, 0xF09A, 0x9979, 0xF09B, 0x997A, 0xBDC8,
- 0x997B, 0xF09C, 0x997C, 0xB1FD, 0x997D, 0xE2C4, 0x997E, 0xF09D,
- 0x997F, 0xB6F6, 0x9980, 0xE2C5, 0x9981, 0xC4D9, 0x9982, 0xF09E,
- 0x9983, 0xF09F, 0x9984, 0xE2C6, 0x9985, 0xCFDA, 0x9986, 0xB9DD,
- 0x9987, 0xE2C7, 0x9988, 0xC0A1, 0x9989, 0xF0A0, 0x998A, 0xE2C8,
- 0x998B, 0xB2F6, 0x998C, 0xF140, 0x998D, 0xE2C9, 0x998E, 0xF141,
- 0x998F, 0xC1F3, 0x9990, 0xE2CA, 0x9991, 0xE2CB, 0x9992, 0xC2F8,
- 0x9993, 0xE2CC, 0x9994, 0xE2CD, 0x9995, 0xE2CE, 0x9996, 0xCAD7,
- 0x9997, 0xD8B8, 0x9998, 0xD9E5, 0x9999, 0xCFE3, 0x999A, 0xF142,
- 0x999B, 0xF143, 0x999C, 0xF144, 0x999D, 0xF145, 0x999E, 0xF146,
- 0x999F, 0xF147, 0x99A0, 0xF148, 0x99A1, 0xF149, 0x99A2, 0xF14A,
- 0x99A3, 0xF14B, 0x99A4, 0xF14C, 0x99A5, 0xF0A5, 0x99A6, 0xF14D,
- 0x99A7, 0xF14E, 0x99A8, 0xDCB0, 0x99A9, 0xF14F, 0x99AA, 0xF150,
- 0x99AB, 0xF151, 0x99AC, 0xF152, 0x99AD, 0xF153, 0x99AE, 0xF154,
- 0x99AF, 0xF155, 0x99B0, 0xF156, 0x99B1, 0xF157, 0x99B2, 0xF158,
- 0x99B3, 0xF159, 0x99B4, 0xF15A, 0x99B5, 0xF15B, 0x99B6, 0xF15C,
- 0x99B7, 0xF15D, 0x99B8, 0xF15E, 0x99B9, 0xF15F, 0x99BA, 0xF160,
- 0x99BB, 0xF161, 0x99BC, 0xF162, 0x99BD, 0xF163, 0x99BE, 0xF164,
- 0x99BF, 0xF165, 0x99C0, 0xF166, 0x99C1, 0xF167, 0x99C2, 0xF168,
- 0x99C3, 0xF169, 0x99C4, 0xF16A, 0x99C5, 0xF16B, 0x99C6, 0xF16C,
- 0x99C7, 0xF16D, 0x99C8, 0xF16E, 0x99C9, 0xF16F, 0x99CA, 0xF170,
- 0x99CB, 0xF171, 0x99CC, 0xF172, 0x99CD, 0xF173, 0x99CE, 0xF174,
- 0x99CF, 0xF175, 0x99D0, 0xF176, 0x99D1, 0xF177, 0x99D2, 0xF178,
- 0x99D3, 0xF179, 0x99D4, 0xF17A, 0x99D5, 0xF17B, 0x99D6, 0xF17C,
- 0x99D7, 0xF17D, 0x99D8, 0xF17E, 0x99D9, 0xF180, 0x99DA, 0xF181,
- 0x99DB, 0xF182, 0x99DC, 0xF183, 0x99DD, 0xF184, 0x99DE, 0xF185,
- 0x99DF, 0xF186, 0x99E0, 0xF187, 0x99E1, 0xF188, 0x99E2, 0xF189,
- 0x99E3, 0xF18A, 0x99E4, 0xF18B, 0x99E5, 0xF18C, 0x99E6, 0xF18D,
- 0x99E7, 0xF18E, 0x99E8, 0xF18F, 0x99E9, 0xF190, 0x99EA, 0xF191,
- 0x99EB, 0xF192, 0x99EC, 0xF193, 0x99ED, 0xF194, 0x99EE, 0xF195,
- 0x99EF, 0xF196, 0x99F0, 0xF197, 0x99F1, 0xF198, 0x99F2, 0xF199,
- 0x99F3, 0xF19A, 0x99F4, 0xF19B, 0x99F5, 0xF19C, 0x99F6, 0xF19D,
- 0x99F7, 0xF19E, 0x99F8, 0xF19F, 0x99F9, 0xF1A0, 0x99FA, 0xF240,
- 0x99FB, 0xF241, 0x99FC, 0xF242, 0x99FD, 0xF243, 0x99FE, 0xF244,
- 0x99FF, 0xF245, 0x9A00, 0xF246, 0x9A01, 0xF247, 0x9A02, 0xF248,
- 0x9A03, 0xF249, 0x9A04, 0xF24A, 0x9A05, 0xF24B, 0x9A06, 0xF24C,
- 0x9A07, 0xF24D, 0x9A08, 0xF24E, 0x9A09, 0xF24F, 0x9A0A, 0xF250,
- 0x9A0B, 0xF251, 0x9A0C, 0xF252, 0x9A0D, 0xF253, 0x9A0E, 0xF254,
- 0x9A0F, 0xF255, 0x9A10, 0xF256, 0x9A11, 0xF257, 0x9A12, 0xF258,
- 0x9A13, 0xF259, 0x9A14, 0xF25A, 0x9A15, 0xF25B, 0x9A16, 0xF25C,
- 0x9A17, 0xF25D, 0x9A18, 0xF25E, 0x9A19, 0xF25F, 0x9A1A, 0xF260,
- 0x9A1B, 0xF261, 0x9A1C, 0xF262, 0x9A1D, 0xF263, 0x9A1E, 0xF264,
- 0x9A1F, 0xF265, 0x9A20, 0xF266, 0x9A21, 0xF267, 0x9A22, 0xF268,
- 0x9A23, 0xF269, 0x9A24, 0xF26A, 0x9A25, 0xF26B, 0x9A26, 0xF26C,
- 0x9A27, 0xF26D, 0x9A28, 0xF26E, 0x9A29, 0xF26F, 0x9A2A, 0xF270,
- 0x9A2B, 0xF271, 0x9A2C, 0xF272, 0x9A2D, 0xF273, 0x9A2E, 0xF274,
- 0x9A2F, 0xF275, 0x9A30, 0xF276, 0x9A31, 0xF277, 0x9A32, 0xF278,
- 0x9A33, 0xF279, 0x9A34, 0xF27A, 0x9A35, 0xF27B, 0x9A36, 0xF27C,
- 0x9A37, 0xF27D, 0x9A38, 0xF27E, 0x9A39, 0xF280, 0x9A3A, 0xF281,
- 0x9A3B, 0xF282, 0x9A3C, 0xF283, 0x9A3D, 0xF284, 0x9A3E, 0xF285,
- 0x9A3F, 0xF286, 0x9A40, 0xF287, 0x9A41, 0xF288, 0x9A42, 0xF289,
- 0x9A43, 0xF28A, 0x9A44, 0xF28B, 0x9A45, 0xF28C, 0x9A46, 0xF28D,
- 0x9A47, 0xF28E, 0x9A48, 0xF28F, 0x9A49, 0xF290, 0x9A4A, 0xF291,
- 0x9A4B, 0xF292, 0x9A4C, 0xF293, 0x9A4D, 0xF294, 0x9A4E, 0xF295,
- 0x9A4F, 0xF296, 0x9A50, 0xF297, 0x9A51, 0xF298, 0x9A52, 0xF299,
- 0x9A53, 0xF29A, 0x9A54, 0xF29B, 0x9A55, 0xF29C, 0x9A56, 0xF29D,
- 0x9A57, 0xF29E, 0x9A58, 0xF29F, 0x9A59, 0xF2A0, 0x9A5A, 0xF340,
- 0x9A5B, 0xF341, 0x9A5C, 0xF342, 0x9A5D, 0xF343, 0x9A5E, 0xF344,
- 0x9A5F, 0xF345, 0x9A60, 0xF346, 0x9A61, 0xF347, 0x9A62, 0xF348,
- 0x9A63, 0xF349, 0x9A64, 0xF34A, 0x9A65, 0xF34B, 0x9A66, 0xF34C,
- 0x9A67, 0xF34D, 0x9A68, 0xF34E, 0x9A69, 0xF34F, 0x9A6A, 0xF350,
- 0x9A6B, 0xF351, 0x9A6C, 0xC2ED, 0x9A6D, 0xD4A6, 0x9A6E, 0xCDD4,
- 0x9A6F, 0xD1B1, 0x9A70, 0xB3DB, 0x9A71, 0xC7FD, 0x9A72, 0xF352,
- 0x9A73, 0xB2B5, 0x9A74, 0xC2BF, 0x9A75, 0xE6E0, 0x9A76, 0xCABB,
- 0x9A77, 0xE6E1, 0x9A78, 0xE6E2, 0x9A79, 0xBED4, 0x9A7A, 0xE6E3,
- 0x9A7B, 0xD7A4, 0x9A7C, 0xCDD5, 0x9A7D, 0xE6E5, 0x9A7E, 0xBCDD,
- 0x9A7F, 0xE6E4, 0x9A80, 0xE6E6, 0x9A81, 0xE6E7, 0x9A82, 0xC2EE,
- 0x9A83, 0xF353, 0x9A84, 0xBDBE, 0x9A85, 0xE6E8, 0x9A86, 0xC2E6,
- 0x9A87, 0xBAA7, 0x9A88, 0xE6E9, 0x9A89, 0xF354, 0x9A8A, 0xE6EA,
- 0x9A8B, 0xB3D2, 0x9A8C, 0xD1E9, 0x9A8D, 0xF355, 0x9A8E, 0xF356,
- 0x9A8F, 0xBFA5, 0x9A90, 0xE6EB, 0x9A91, 0xC6EF, 0x9A92, 0xE6EC,
- 0x9A93, 0xE6ED, 0x9A94, 0xF357, 0x9A95, 0xF358, 0x9A96, 0xE6EE,
- 0x9A97, 0xC6AD, 0x9A98, 0xE6EF, 0x9A99, 0xF359, 0x9A9A, 0xC9A7,
- 0x9A9B, 0xE6F0, 0x9A9C, 0xE6F1, 0x9A9D, 0xE6F2, 0x9A9E, 0xE5B9,
- 0x9A9F, 0xE6F3, 0x9AA0, 0xE6F4, 0x9AA1, 0xC2E2, 0x9AA2, 0xE6F5,
- 0x9AA3, 0xE6F6, 0x9AA4, 0xD6E8, 0x9AA5, 0xE6F7, 0x9AA6, 0xF35A,
- 0x9AA7, 0xE6F8, 0x9AA8, 0xB9C7, 0x9AA9, 0xF35B, 0x9AAA, 0xF35C,
- 0x9AAB, 0xF35D, 0x9AAC, 0xF35E, 0x9AAD, 0xF35F, 0x9AAE, 0xF360,
- 0x9AAF, 0xF361, 0x9AB0, 0xF7BB, 0x9AB1, 0xF7BA, 0x9AB2, 0xF362,
- 0x9AB3, 0xF363, 0x9AB4, 0xF364, 0x9AB5, 0xF365, 0x9AB6, 0xF7BE,
- 0x9AB7, 0xF7BC, 0x9AB8, 0xBAA1, 0x9AB9, 0xF366, 0x9ABA, 0xF7BF,
- 0x9ABB, 0xF367, 0x9ABC, 0xF7C0, 0x9ABD, 0xF368, 0x9ABE, 0xF369,
- 0x9ABF, 0xF36A, 0x9AC0, 0xF7C2, 0x9AC1, 0xF7C1, 0x9AC2, 0xF7C4,
- 0x9AC3, 0xF36B, 0x9AC4, 0xF36C, 0x9AC5, 0xF7C3, 0x9AC6, 0xF36D,
- 0x9AC7, 0xF36E, 0x9AC8, 0xF36F, 0x9AC9, 0xF370, 0x9ACA, 0xF371,
- 0x9ACB, 0xF7C5, 0x9ACC, 0xF7C6, 0x9ACD, 0xF372, 0x9ACE, 0xF373,
- 0x9ACF, 0xF374, 0x9AD0, 0xF375, 0x9AD1, 0xF7C7, 0x9AD2, 0xF376,
- 0x9AD3, 0xCBE8, 0x9AD4, 0xF377, 0x9AD5, 0xF378, 0x9AD6, 0xF379,
- 0x9AD7, 0xF37A, 0x9AD8, 0xB8DF, 0x9AD9, 0xF37B, 0x9ADA, 0xF37C,
- 0x9ADB, 0xF37D, 0x9ADC, 0xF37E, 0x9ADD, 0xF380, 0x9ADE, 0xF381,
- 0x9ADF, 0xF7D4, 0x9AE0, 0xF382, 0x9AE1, 0xF7D5, 0x9AE2, 0xF383,
- 0x9AE3, 0xF384, 0x9AE4, 0xF385, 0x9AE5, 0xF386, 0x9AE6, 0xF7D6,
- 0x9AE7, 0xF387, 0x9AE8, 0xF388, 0x9AE9, 0xF389, 0x9AEA, 0xF38A,
- 0x9AEB, 0xF7D8, 0x9AEC, 0xF38B, 0x9AED, 0xF7DA, 0x9AEE, 0xF38C,
- 0x9AEF, 0xF7D7, 0x9AF0, 0xF38D, 0x9AF1, 0xF38E, 0x9AF2, 0xF38F,
- 0x9AF3, 0xF390, 0x9AF4, 0xF391, 0x9AF5, 0xF392, 0x9AF6, 0xF393,
- 0x9AF7, 0xF394, 0x9AF8, 0xF395, 0x9AF9, 0xF7DB, 0x9AFA, 0xF396,
- 0x9AFB, 0xF7D9, 0x9AFC, 0xF397, 0x9AFD, 0xF398, 0x9AFE, 0xF399,
- 0x9AFF, 0xF39A, 0x9B00, 0xF39B, 0x9B01, 0xF39C, 0x9B02, 0xF39D,
- 0x9B03, 0xD7D7, 0x9B04, 0xF39E, 0x9B05, 0xF39F, 0x9B06, 0xF3A0,
- 0x9B07, 0xF440, 0x9B08, 0xF7DC, 0x9B09, 0xF441, 0x9B0A, 0xF442,
- 0x9B0B, 0xF443, 0x9B0C, 0xF444, 0x9B0D, 0xF445, 0x9B0E, 0xF446,
- 0x9B0F, 0xF7DD, 0x9B10, 0xF447, 0x9B11, 0xF448, 0x9B12, 0xF449,
- 0x9B13, 0xF7DE, 0x9B14, 0xF44A, 0x9B15, 0xF44B, 0x9B16, 0xF44C,
- 0x9B17, 0xF44D, 0x9B18, 0xF44E, 0x9B19, 0xF44F, 0x9B1A, 0xF450,
- 0x9B1B, 0xF451, 0x9B1C, 0xF452, 0x9B1D, 0xF453, 0x9B1E, 0xF454,
- 0x9B1F, 0xF7DF, 0x9B20, 0xF455, 0x9B21, 0xF456, 0x9B22, 0xF457,
- 0x9B23, 0xF7E0, 0x9B24, 0xF458, 0x9B25, 0xF459, 0x9B26, 0xF45A,
- 0x9B27, 0xF45B, 0x9B28, 0xF45C, 0x9B29, 0xF45D, 0x9B2A, 0xF45E,
- 0x9B2B, 0xF45F, 0x9B2C, 0xF460, 0x9B2D, 0xF461, 0x9B2E, 0xF462,
- 0x9B2F, 0xDBCB, 0x9B30, 0xF463, 0x9B31, 0xF464, 0x9B32, 0xD8AA,
- 0x9B33, 0xF465, 0x9B34, 0xF466, 0x9B35, 0xF467, 0x9B36, 0xF468,
- 0x9B37, 0xF469, 0x9B38, 0xF46A, 0x9B39, 0xF46B, 0x9B3A, 0xF46C,
- 0x9B3B, 0xE5F7, 0x9B3C, 0xB9ED, 0x9B3D, 0xF46D, 0x9B3E, 0xF46E,
- 0x9B3F, 0xF46F, 0x9B40, 0xF470, 0x9B41, 0xBFFD, 0x9B42, 0xBBEA,
- 0x9B43, 0xF7C9, 0x9B44, 0xC6C7, 0x9B45, 0xF7C8, 0x9B46, 0xF471,
- 0x9B47, 0xF7CA, 0x9B48, 0xF7CC, 0x9B49, 0xF7CB, 0x9B4A, 0xF472,
- 0x9B4B, 0xF473, 0x9B4C, 0xF474, 0x9B4D, 0xF7CD, 0x9B4E, 0xF475,
- 0x9B4F, 0xCEBA, 0x9B50, 0xF476, 0x9B51, 0xF7CE, 0x9B52, 0xF477,
- 0x9B53, 0xF478, 0x9B54, 0xC4A7, 0x9B55, 0xF479, 0x9B56, 0xF47A,
- 0x9B57, 0xF47B, 0x9B58, 0xF47C, 0x9B59, 0xF47D, 0x9B5A, 0xF47E,
- 0x9B5B, 0xF480, 0x9B5C, 0xF481, 0x9B5D, 0xF482, 0x9B5E, 0xF483,
- 0x9B5F, 0xF484, 0x9B60, 0xF485, 0x9B61, 0xF486, 0x9B62, 0xF487,
- 0x9B63, 0xF488, 0x9B64, 0xF489, 0x9B65, 0xF48A, 0x9B66, 0xF48B,
- 0x9B67, 0xF48C, 0x9B68, 0xF48D, 0x9B69, 0xF48E, 0x9B6A, 0xF48F,
- 0x9B6B, 0xF490, 0x9B6C, 0xF491, 0x9B6D, 0xF492, 0x9B6E, 0xF493,
- 0x9B6F, 0xF494, 0x9B70, 0xF495, 0x9B71, 0xF496, 0x9B72, 0xF497,
- 0x9B73, 0xF498, 0x9B74, 0xF499, 0x9B75, 0xF49A, 0x9B76, 0xF49B,
- 0x9B77, 0xF49C, 0x9B78, 0xF49D, 0x9B79, 0xF49E, 0x9B7A, 0xF49F,
- 0x9B7B, 0xF4A0, 0x9B7C, 0xF540, 0x9B7D, 0xF541, 0x9B7E, 0xF542,
- 0x9B7F, 0xF543, 0x9B80, 0xF544, 0x9B81, 0xF545, 0x9B82, 0xF546,
- 0x9B83, 0xF547, 0x9B84, 0xF548, 0x9B85, 0xF549, 0x9B86, 0xF54A,
- 0x9B87, 0xF54B, 0x9B88, 0xF54C, 0x9B89, 0xF54D, 0x9B8A, 0xF54E,
- 0x9B8B, 0xF54F, 0x9B8C, 0xF550, 0x9B8D, 0xF551, 0x9B8E, 0xF552,
- 0x9B8F, 0xF553, 0x9B90, 0xF554, 0x9B91, 0xF555, 0x9B92, 0xF556,
- 0x9B93, 0xF557, 0x9B94, 0xF558, 0x9B95, 0xF559, 0x9B96, 0xF55A,
- 0x9B97, 0xF55B, 0x9B98, 0xF55C, 0x9B99, 0xF55D, 0x9B9A, 0xF55E,
- 0x9B9B, 0xF55F, 0x9B9C, 0xF560, 0x9B9D, 0xF561, 0x9B9E, 0xF562,
- 0x9B9F, 0xF563, 0x9BA0, 0xF564, 0x9BA1, 0xF565, 0x9BA2, 0xF566,
- 0x9BA3, 0xF567, 0x9BA4, 0xF568, 0x9BA5, 0xF569, 0x9BA6, 0xF56A,
- 0x9BA7, 0xF56B, 0x9BA8, 0xF56C, 0x9BA9, 0xF56D, 0x9BAA, 0xF56E,
- 0x9BAB, 0xF56F, 0x9BAC, 0xF570, 0x9BAD, 0xF571, 0x9BAE, 0xF572,
- 0x9BAF, 0xF573, 0x9BB0, 0xF574, 0x9BB1, 0xF575, 0x9BB2, 0xF576,
- 0x9BB3, 0xF577, 0x9BB4, 0xF578, 0x9BB5, 0xF579, 0x9BB6, 0xF57A,
- 0x9BB7, 0xF57B, 0x9BB8, 0xF57C, 0x9BB9, 0xF57D, 0x9BBA, 0xF57E,
- 0x9BBB, 0xF580, 0x9BBC, 0xF581, 0x9BBD, 0xF582, 0x9BBE, 0xF583,
- 0x9BBF, 0xF584, 0x9BC0, 0xF585, 0x9BC1, 0xF586, 0x9BC2, 0xF587,
- 0x9BC3, 0xF588, 0x9BC4, 0xF589, 0x9BC5, 0xF58A, 0x9BC6, 0xF58B,
- 0x9BC7, 0xF58C, 0x9BC8, 0xF58D, 0x9BC9, 0xF58E, 0x9BCA, 0xF58F,
- 0x9BCB, 0xF590, 0x9BCC, 0xF591, 0x9BCD, 0xF592, 0x9BCE, 0xF593,
- 0x9BCF, 0xF594, 0x9BD0, 0xF595, 0x9BD1, 0xF596, 0x9BD2, 0xF597,
- 0x9BD3, 0xF598, 0x9BD4, 0xF599, 0x9BD5, 0xF59A, 0x9BD6, 0xF59B,
- 0x9BD7, 0xF59C, 0x9BD8, 0xF59D, 0x9BD9, 0xF59E, 0x9BDA, 0xF59F,
- 0x9BDB, 0xF5A0, 0x9BDC, 0xF640, 0x9BDD, 0xF641, 0x9BDE, 0xF642,
- 0x9BDF, 0xF643, 0x9BE0, 0xF644, 0x9BE1, 0xF645, 0x9BE2, 0xF646,
- 0x9BE3, 0xF647, 0x9BE4, 0xF648, 0x9BE5, 0xF649, 0x9BE6, 0xF64A,
- 0x9BE7, 0xF64B, 0x9BE8, 0xF64C, 0x9BE9, 0xF64D, 0x9BEA, 0xF64E,
- 0x9BEB, 0xF64F, 0x9BEC, 0xF650, 0x9BED, 0xF651, 0x9BEE, 0xF652,
- 0x9BEF, 0xF653, 0x9BF0, 0xF654, 0x9BF1, 0xF655, 0x9BF2, 0xF656,
- 0x9BF3, 0xF657, 0x9BF4, 0xF658, 0x9BF5, 0xF659, 0x9BF6, 0xF65A,
- 0x9BF7, 0xF65B, 0x9BF8, 0xF65C, 0x9BF9, 0xF65D, 0x9BFA, 0xF65E,
- 0x9BFB, 0xF65F, 0x9BFC, 0xF660, 0x9BFD, 0xF661, 0x9BFE, 0xF662,
- 0x9BFF, 0xF663, 0x9C00, 0xF664, 0x9C01, 0xF665, 0x9C02, 0xF666,
- 0x9C03, 0xF667, 0x9C04, 0xF668, 0x9C05, 0xF669, 0x9C06, 0xF66A,
- 0x9C07, 0xF66B, 0x9C08, 0xF66C, 0x9C09, 0xF66D, 0x9C0A, 0xF66E,
- 0x9C0B, 0xF66F, 0x9C0C, 0xF670, 0x9C0D, 0xF671, 0x9C0E, 0xF672,
- 0x9C0F, 0xF673, 0x9C10, 0xF674, 0x9C11, 0xF675, 0x9C12, 0xF676,
- 0x9C13, 0xF677, 0x9C14, 0xF678, 0x9C15, 0xF679, 0x9C16, 0xF67A,
- 0x9C17, 0xF67B, 0x9C18, 0xF67C, 0x9C19, 0xF67D, 0x9C1A, 0xF67E,
- 0x9C1B, 0xF680, 0x9C1C, 0xF681, 0x9C1D, 0xF682, 0x9C1E, 0xF683,
- 0x9C1F, 0xF684, 0x9C20, 0xF685, 0x9C21, 0xF686, 0x9C22, 0xF687,
- 0x9C23, 0xF688, 0x9C24, 0xF689, 0x9C25, 0xF68A, 0x9C26, 0xF68B,
- 0x9C27, 0xF68C, 0x9C28, 0xF68D, 0x9C29, 0xF68E, 0x9C2A, 0xF68F,
- 0x9C2B, 0xF690, 0x9C2C, 0xF691, 0x9C2D, 0xF692, 0x9C2E, 0xF693,
- 0x9C2F, 0xF694, 0x9C30, 0xF695, 0x9C31, 0xF696, 0x9C32, 0xF697,
- 0x9C33, 0xF698, 0x9C34, 0xF699, 0x9C35, 0xF69A, 0x9C36, 0xF69B,
- 0x9C37, 0xF69C, 0x9C38, 0xF69D, 0x9C39, 0xF69E, 0x9C3A, 0xF69F,
- 0x9C3B, 0xF6A0, 0x9C3C, 0xF740, 0x9C3D, 0xF741, 0x9C3E, 0xF742,
- 0x9C3F, 0xF743, 0x9C40, 0xF744, 0x9C41, 0xF745, 0x9C42, 0xF746,
- 0x9C43, 0xF747, 0x9C44, 0xF748, 0x9C45, 0xF749, 0x9C46, 0xF74A,
- 0x9C47, 0xF74B, 0x9C48, 0xF74C, 0x9C49, 0xF74D, 0x9C4A, 0xF74E,
- 0x9C4B, 0xF74F, 0x9C4C, 0xF750, 0x9C4D, 0xF751, 0x9C4E, 0xF752,
- 0x9C4F, 0xF753, 0x9C50, 0xF754, 0x9C51, 0xF755, 0x9C52, 0xF756,
- 0x9C53, 0xF757, 0x9C54, 0xF758, 0x9C55, 0xF759, 0x9C56, 0xF75A,
- 0x9C57, 0xF75B, 0x9C58, 0xF75C, 0x9C59, 0xF75D, 0x9C5A, 0xF75E,
- 0x9C5B, 0xF75F, 0x9C5C, 0xF760, 0x9C5D, 0xF761, 0x9C5E, 0xF762,
- 0x9C5F, 0xF763, 0x9C60, 0xF764, 0x9C61, 0xF765, 0x9C62, 0xF766,
- 0x9C63, 0xF767, 0x9C64, 0xF768, 0x9C65, 0xF769, 0x9C66, 0xF76A,
- 0x9C67, 0xF76B, 0x9C68, 0xF76C, 0x9C69, 0xF76D, 0x9C6A, 0xF76E,
- 0x9C6B, 0xF76F, 0x9C6C, 0xF770, 0x9C6D, 0xF771, 0x9C6E, 0xF772,
- 0x9C6F, 0xF773, 0x9C70, 0xF774, 0x9C71, 0xF775, 0x9C72, 0xF776,
- 0x9C73, 0xF777, 0x9C74, 0xF778, 0x9C75, 0xF779, 0x9C76, 0xF77A,
- 0x9C77, 0xF77B, 0x9C78, 0xF77C, 0x9C79, 0xF77D, 0x9C7A, 0xF77E,
- 0x9C7B, 0xF780, 0x9C7C, 0xD3E3, 0x9C7D, 0xF781, 0x9C7E, 0xF782,
- 0x9C7F, 0xF6CF, 0x9C80, 0xF783, 0x9C81, 0xC2B3, 0x9C82, 0xF6D0,
- 0x9C83, 0xF784, 0x9C84, 0xF785, 0x9C85, 0xF6D1, 0x9C86, 0xF6D2,
- 0x9C87, 0xF6D3, 0x9C88, 0xF6D4, 0x9C89, 0xF786, 0x9C8A, 0xF787,
- 0x9C8B, 0xF6D6, 0x9C8C, 0xF788, 0x9C8D, 0xB1AB, 0x9C8E, 0xF6D7,
- 0x9C8F, 0xF789, 0x9C90, 0xF6D8, 0x9C91, 0xF6D9, 0x9C92, 0xF6DA,
- 0x9C93, 0xF78A, 0x9C94, 0xF6DB, 0x9C95, 0xF6DC, 0x9C96, 0xF78B,
- 0x9C97, 0xF78C, 0x9C98, 0xF78D, 0x9C99, 0xF78E, 0x9C9A, 0xF6DD,
- 0x9C9B, 0xF6DE, 0x9C9C, 0xCFCA, 0x9C9D, 0xF78F, 0x9C9E, 0xF6DF,
- 0x9C9F, 0xF6E0, 0x9CA0, 0xF6E1, 0x9CA1, 0xF6E2, 0x9CA2, 0xF6E3,
- 0x9CA3, 0xF6E4, 0x9CA4, 0xC0F0, 0x9CA5, 0xF6E5, 0x9CA6, 0xF6E6,
- 0x9CA7, 0xF6E7, 0x9CA8, 0xF6E8, 0x9CA9, 0xF6E9, 0x9CAA, 0xF790,
- 0x9CAB, 0xF6EA, 0x9CAC, 0xF791, 0x9CAD, 0xF6EB, 0x9CAE, 0xF6EC,
- 0x9CAF, 0xF792, 0x9CB0, 0xF6ED, 0x9CB1, 0xF6EE, 0x9CB2, 0xF6EF,
- 0x9CB3, 0xF6F0, 0x9CB4, 0xF6F1, 0x9CB5, 0xF6F2, 0x9CB6, 0xF6F3,
- 0x9CB7, 0xF6F4, 0x9CB8, 0xBEA8, 0x9CB9, 0xF793, 0x9CBA, 0xF6F5,
- 0x9CBB, 0xF6F6, 0x9CBC, 0xF6F7, 0x9CBD, 0xF6F8, 0x9CBE, 0xF794,
- 0x9CBF, 0xF795, 0x9CC0, 0xF796, 0x9CC1, 0xF797, 0x9CC2, 0xF798,
- 0x9CC3, 0xC8FA, 0x9CC4, 0xF6F9, 0x9CC5, 0xF6FA, 0x9CC6, 0xF6FB,
- 0x9CC7, 0xF6FC, 0x9CC8, 0xF799, 0x9CC9, 0xF79A, 0x9CCA, 0xF6FD,
- 0x9CCB, 0xF6FE, 0x9CCC, 0xF7A1, 0x9CCD, 0xF7A2, 0x9CCE, 0xF7A3,
- 0x9CCF, 0xF7A4, 0x9CD0, 0xF7A5, 0x9CD1, 0xF79B, 0x9CD2, 0xF79C,
- 0x9CD3, 0xF7A6, 0x9CD4, 0xF7A7, 0x9CD5, 0xF7A8, 0x9CD6, 0xB1EE,
- 0x9CD7, 0xF7A9, 0x9CD8, 0xF7AA, 0x9CD9, 0xF7AB, 0x9CDA, 0xF79D,
- 0x9CDB, 0xF79E, 0x9CDC, 0xF7AC, 0x9CDD, 0xF7AD, 0x9CDE, 0xC1DB,
- 0x9CDF, 0xF7AE, 0x9CE0, 0xF79F, 0x9CE1, 0xF7A0, 0x9CE2, 0xF7AF,
- 0x9CE3, 0xF840, 0x9CE4, 0xF841, 0x9CE5, 0xF842, 0x9CE6, 0xF843,
- 0x9CE7, 0xF844, 0x9CE8, 0xF845, 0x9CE9, 0xF846, 0x9CEA, 0xF847,
- 0x9CEB, 0xF848, 0x9CEC, 0xF849, 0x9CED, 0xF84A, 0x9CEE, 0xF84B,
- 0x9CEF, 0xF84C, 0x9CF0, 0xF84D, 0x9CF1, 0xF84E, 0x9CF2, 0xF84F,
- 0x9CF3, 0xF850, 0x9CF4, 0xF851, 0x9CF5, 0xF852, 0x9CF6, 0xF853,
- 0x9CF7, 0xF854, 0x9CF8, 0xF855, 0x9CF9, 0xF856, 0x9CFA, 0xF857,
- 0x9CFB, 0xF858, 0x9CFC, 0xF859, 0x9CFD, 0xF85A, 0x9CFE, 0xF85B,
- 0x9CFF, 0xF85C, 0x9D00, 0xF85D, 0x9D01, 0xF85E, 0x9D02, 0xF85F,
- 0x9D03, 0xF860, 0x9D04, 0xF861, 0x9D05, 0xF862, 0x9D06, 0xF863,
- 0x9D07, 0xF864, 0x9D08, 0xF865, 0x9D09, 0xF866, 0x9D0A, 0xF867,
- 0x9D0B, 0xF868, 0x9D0C, 0xF869, 0x9D0D, 0xF86A, 0x9D0E, 0xF86B,
- 0x9D0F, 0xF86C, 0x9D10, 0xF86D, 0x9D11, 0xF86E, 0x9D12, 0xF86F,
- 0x9D13, 0xF870, 0x9D14, 0xF871, 0x9D15, 0xF872, 0x9D16, 0xF873,
- 0x9D17, 0xF874, 0x9D18, 0xF875, 0x9D19, 0xF876, 0x9D1A, 0xF877,
- 0x9D1B, 0xF878, 0x9D1C, 0xF879, 0x9D1D, 0xF87A, 0x9D1E, 0xF87B,
- 0x9D1F, 0xF87C, 0x9D20, 0xF87D, 0x9D21, 0xF87E, 0x9D22, 0xF880,
- 0x9D23, 0xF881, 0x9D24, 0xF882, 0x9D25, 0xF883, 0x9D26, 0xF884,
- 0x9D27, 0xF885, 0x9D28, 0xF886, 0x9D29, 0xF887, 0x9D2A, 0xF888,
- 0x9D2B, 0xF889, 0x9D2C, 0xF88A, 0x9D2D, 0xF88B, 0x9D2E, 0xF88C,
- 0x9D2F, 0xF88D, 0x9D30, 0xF88E, 0x9D31, 0xF88F, 0x9D32, 0xF890,
- 0x9D33, 0xF891, 0x9D34, 0xF892, 0x9D35, 0xF893, 0x9D36, 0xF894,
- 0x9D37, 0xF895, 0x9D38, 0xF896, 0x9D39, 0xF897, 0x9D3A, 0xF898,
- 0x9D3B, 0xF899, 0x9D3C, 0xF89A, 0x9D3D, 0xF89B, 0x9D3E, 0xF89C,
- 0x9D3F, 0xF89D, 0x9D40, 0xF89E, 0x9D41, 0xF89F, 0x9D42, 0xF8A0,
- 0x9D43, 0xF940, 0x9D44, 0xF941, 0x9D45, 0xF942, 0x9D46, 0xF943,
- 0x9D47, 0xF944, 0x9D48, 0xF945, 0x9D49, 0xF946, 0x9D4A, 0xF947,
- 0x9D4B, 0xF948, 0x9D4C, 0xF949, 0x9D4D, 0xF94A, 0x9D4E, 0xF94B,
- 0x9D4F, 0xF94C, 0x9D50, 0xF94D, 0x9D51, 0xF94E, 0x9D52, 0xF94F,
- 0x9D53, 0xF950, 0x9D54, 0xF951, 0x9D55, 0xF952, 0x9D56, 0xF953,
- 0x9D57, 0xF954, 0x9D58, 0xF955, 0x9D59, 0xF956, 0x9D5A, 0xF957,
- 0x9D5B, 0xF958, 0x9D5C, 0xF959, 0x9D5D, 0xF95A, 0x9D5E, 0xF95B,
- 0x9D5F, 0xF95C, 0x9D60, 0xF95D, 0x9D61, 0xF95E, 0x9D62, 0xF95F,
- 0x9D63, 0xF960, 0x9D64, 0xF961, 0x9D65, 0xF962, 0x9D66, 0xF963,
- 0x9D67, 0xF964, 0x9D68, 0xF965, 0x9D69, 0xF966, 0x9D6A, 0xF967,
- 0x9D6B, 0xF968, 0x9D6C, 0xF969, 0x9D6D, 0xF96A, 0x9D6E, 0xF96B,
- 0x9D6F, 0xF96C, 0x9D70, 0xF96D, 0x9D71, 0xF96E, 0x9D72, 0xF96F,
- 0x9D73, 0xF970, 0x9D74, 0xF971, 0x9D75, 0xF972, 0x9D76, 0xF973,
- 0x9D77, 0xF974, 0x9D78, 0xF975, 0x9D79, 0xF976, 0x9D7A, 0xF977,
- 0x9D7B, 0xF978, 0x9D7C, 0xF979, 0x9D7D, 0xF97A, 0x9D7E, 0xF97B,
- 0x9D7F, 0xF97C, 0x9D80, 0xF97D, 0x9D81, 0xF97E, 0x9D82, 0xF980,
- 0x9D83, 0xF981, 0x9D84, 0xF982, 0x9D85, 0xF983, 0x9D86, 0xF984,
- 0x9D87, 0xF985, 0x9D88, 0xF986, 0x9D89, 0xF987, 0x9D8A, 0xF988,
- 0x9D8B, 0xF989, 0x9D8C, 0xF98A, 0x9D8D, 0xF98B, 0x9D8E, 0xF98C,
- 0x9D8F, 0xF98D, 0x9D90, 0xF98E, 0x9D91, 0xF98F, 0x9D92, 0xF990,
- 0x9D93, 0xF991, 0x9D94, 0xF992, 0x9D95, 0xF993, 0x9D96, 0xF994,
- 0x9D97, 0xF995, 0x9D98, 0xF996, 0x9D99, 0xF997, 0x9D9A, 0xF998,
- 0x9D9B, 0xF999, 0x9D9C, 0xF99A, 0x9D9D, 0xF99B, 0x9D9E, 0xF99C,
- 0x9D9F, 0xF99D, 0x9DA0, 0xF99E, 0x9DA1, 0xF99F, 0x9DA2, 0xF9A0,
- 0x9DA3, 0xFA40, 0x9DA4, 0xFA41, 0x9DA5, 0xFA42, 0x9DA6, 0xFA43,
- 0x9DA7, 0xFA44, 0x9DA8, 0xFA45, 0x9DA9, 0xFA46, 0x9DAA, 0xFA47,
- 0x9DAB, 0xFA48, 0x9DAC, 0xFA49, 0x9DAD, 0xFA4A, 0x9DAE, 0xFA4B,
- 0x9DAF, 0xFA4C, 0x9DB0, 0xFA4D, 0x9DB1, 0xFA4E, 0x9DB2, 0xFA4F,
- 0x9DB3, 0xFA50, 0x9DB4, 0xFA51, 0x9DB5, 0xFA52, 0x9DB6, 0xFA53,
- 0x9DB7, 0xFA54, 0x9DB8, 0xFA55, 0x9DB9, 0xFA56, 0x9DBA, 0xFA57,
- 0x9DBB, 0xFA58, 0x9DBC, 0xFA59, 0x9DBD, 0xFA5A, 0x9DBE, 0xFA5B,
- 0x9DBF, 0xFA5C, 0x9DC0, 0xFA5D, 0x9DC1, 0xFA5E, 0x9DC2, 0xFA5F,
- 0x9DC3, 0xFA60, 0x9DC4, 0xFA61, 0x9DC5, 0xFA62, 0x9DC6, 0xFA63,
- 0x9DC7, 0xFA64, 0x9DC8, 0xFA65, 0x9DC9, 0xFA66, 0x9DCA, 0xFA67,
- 0x9DCB, 0xFA68, 0x9DCC, 0xFA69, 0x9DCD, 0xFA6A, 0x9DCE, 0xFA6B,
- 0x9DCF, 0xFA6C, 0x9DD0, 0xFA6D, 0x9DD1, 0xFA6E, 0x9DD2, 0xFA6F,
- 0x9DD3, 0xFA70, 0x9DD4, 0xFA71, 0x9DD5, 0xFA72, 0x9DD6, 0xFA73,
- 0x9DD7, 0xFA74, 0x9DD8, 0xFA75, 0x9DD9, 0xFA76, 0x9DDA, 0xFA77,
- 0x9DDB, 0xFA78, 0x9DDC, 0xFA79, 0x9DDD, 0xFA7A, 0x9DDE, 0xFA7B,
- 0x9DDF, 0xFA7C, 0x9DE0, 0xFA7D, 0x9DE1, 0xFA7E, 0x9DE2, 0xFA80,
- 0x9DE3, 0xFA81, 0x9DE4, 0xFA82, 0x9DE5, 0xFA83, 0x9DE6, 0xFA84,
- 0x9DE7, 0xFA85, 0x9DE8, 0xFA86, 0x9DE9, 0xFA87, 0x9DEA, 0xFA88,
- 0x9DEB, 0xFA89, 0x9DEC, 0xFA8A, 0x9DED, 0xFA8B, 0x9DEE, 0xFA8C,
- 0x9DEF, 0xFA8D, 0x9DF0, 0xFA8E, 0x9DF1, 0xFA8F, 0x9DF2, 0xFA90,
- 0x9DF3, 0xFA91, 0x9DF4, 0xFA92, 0x9DF5, 0xFA93, 0x9DF6, 0xFA94,
- 0x9DF7, 0xFA95, 0x9DF8, 0xFA96, 0x9DF9, 0xFA97, 0x9DFA, 0xFA98,
- 0x9DFB, 0xFA99, 0x9DFC, 0xFA9A, 0x9DFD, 0xFA9B, 0x9DFE, 0xFA9C,
- 0x9DFF, 0xFA9D, 0x9E00, 0xFA9E, 0x9E01, 0xFA9F, 0x9E02, 0xFAA0,
- 0x9E03, 0xFB40, 0x9E04, 0xFB41, 0x9E05, 0xFB42, 0x9E06, 0xFB43,
- 0x9E07, 0xFB44, 0x9E08, 0xFB45, 0x9E09, 0xFB46, 0x9E0A, 0xFB47,
- 0x9E0B, 0xFB48, 0x9E0C, 0xFB49, 0x9E0D, 0xFB4A, 0x9E0E, 0xFB4B,
- 0x9E0F, 0xFB4C, 0x9E10, 0xFB4D, 0x9E11, 0xFB4E, 0x9E12, 0xFB4F,
- 0x9E13, 0xFB50, 0x9E14, 0xFB51, 0x9E15, 0xFB52, 0x9E16, 0xFB53,
- 0x9E17, 0xFB54, 0x9E18, 0xFB55, 0x9E19, 0xFB56, 0x9E1A, 0xFB57,
- 0x9E1B, 0xFB58, 0x9E1C, 0xFB59, 0x9E1D, 0xFB5A, 0x9E1E, 0xFB5B,
- 0x9E1F, 0xC4F1, 0x9E20, 0xF0AF, 0x9E21, 0xBCA6, 0x9E22, 0xF0B0,
- 0x9E23, 0xC3F9, 0x9E24, 0xFB5C, 0x9E25, 0xC5B8, 0x9E26, 0xD1BB,
- 0x9E27, 0xFB5D, 0x9E28, 0xF0B1, 0x9E29, 0xF0B2, 0x9E2A, 0xF0B3,
- 0x9E2B, 0xF0B4, 0x9E2C, 0xF0B5, 0x9E2D, 0xD1BC, 0x9E2E, 0xFB5E,
- 0x9E2F, 0xD1EC, 0x9E30, 0xFB5F, 0x9E31, 0xF0B7, 0x9E32, 0xF0B6,
- 0x9E33, 0xD4A7, 0x9E34, 0xFB60, 0x9E35, 0xCDD2, 0x9E36, 0xF0B8,
- 0x9E37, 0xF0BA, 0x9E38, 0xF0B9, 0x9E39, 0xF0BB, 0x9E3A, 0xF0BC,
- 0x9E3B, 0xFB61, 0x9E3C, 0xFB62, 0x9E3D, 0xB8EB, 0x9E3E, 0xF0BD,
- 0x9E3F, 0xBAE8, 0x9E40, 0xFB63, 0x9E41, 0xF0BE, 0x9E42, 0xF0BF,
- 0x9E43, 0xBEE9, 0x9E44, 0xF0C0, 0x9E45, 0xB6EC, 0x9E46, 0xF0C1,
- 0x9E47, 0xF0C2, 0x9E48, 0xF0C3, 0x9E49, 0xF0C4, 0x9E4A, 0xC8B5,
- 0x9E4B, 0xF0C5, 0x9E4C, 0xF0C6, 0x9E4D, 0xFB64, 0x9E4E, 0xF0C7,
- 0x9E4F, 0xC5F4, 0x9E50, 0xFB65, 0x9E51, 0xF0C8, 0x9E52, 0xFB66,
- 0x9E53, 0xFB67, 0x9E54, 0xFB68, 0x9E55, 0xF0C9, 0x9E56, 0xFB69,
- 0x9E57, 0xF0CA, 0x9E58, 0xF7BD, 0x9E59, 0xFB6A, 0x9E5A, 0xF0CB,
- 0x9E5B, 0xF0CC, 0x9E5C, 0xF0CD, 0x9E5D, 0xFB6B, 0x9E5E, 0xF0CE,
- 0x9E5F, 0xFB6C, 0x9E60, 0xFB6D, 0x9E61, 0xFB6E, 0x9E62, 0xFB6F,
- 0x9E63, 0xF0CF, 0x9E64, 0xBAD7, 0x9E65, 0xFB70, 0x9E66, 0xF0D0,
- 0x9E67, 0xF0D1, 0x9E68, 0xF0D2, 0x9E69, 0xF0D3, 0x9E6A, 0xF0D4,
- 0x9E6B, 0xF0D5, 0x9E6C, 0xF0D6, 0x9E6D, 0xF0D8, 0x9E6E, 0xFB71,
- 0x9E6F, 0xFB72, 0x9E70, 0xD3A5, 0x9E71, 0xF0D7, 0x9E72, 0xFB73,
- 0x9E73, 0xF0D9, 0x9E74, 0xFB74, 0x9E75, 0xFB75, 0x9E76, 0xFB76,
- 0x9E77, 0xFB77, 0x9E78, 0xFB78, 0x9E79, 0xFB79, 0x9E7A, 0xFB7A,
- 0x9E7B, 0xFB7B, 0x9E7C, 0xFB7C, 0x9E7D, 0xFB7D, 0x9E7E, 0xF5BA,
- 0x9E7F, 0xC2B9, 0x9E80, 0xFB7E, 0x9E81, 0xFB80, 0x9E82, 0xF7E4,
- 0x9E83, 0xFB81, 0x9E84, 0xFB82, 0x9E85, 0xFB83, 0x9E86, 0xFB84,
- 0x9E87, 0xF7E5, 0x9E88, 0xF7E6, 0x9E89, 0xFB85, 0x9E8A, 0xFB86,
- 0x9E8B, 0xF7E7, 0x9E8C, 0xFB87, 0x9E8D, 0xFB88, 0x9E8E, 0xFB89,
- 0x9E8F, 0xFB8A, 0x9E90, 0xFB8B, 0x9E91, 0xFB8C, 0x9E92, 0xF7E8,
- 0x9E93, 0xC2B4, 0x9E94, 0xFB8D, 0x9E95, 0xFB8E, 0x9E96, 0xFB8F,
- 0x9E97, 0xFB90, 0x9E98, 0xFB91, 0x9E99, 0xFB92, 0x9E9A, 0xFB93,
- 0x9E9B, 0xFB94, 0x9E9C, 0xFB95, 0x9E9D, 0xF7EA, 0x9E9E, 0xFB96,
- 0x9E9F, 0xF7EB, 0x9EA0, 0xFB97, 0x9EA1, 0xFB98, 0x9EA2, 0xFB99,
- 0x9EA3, 0xFB9A, 0x9EA4, 0xFB9B, 0x9EA5, 0xFB9C, 0x9EA6, 0xC2F3,
- 0x9EA7, 0xFB9D, 0x9EA8, 0xFB9E, 0x9EA9, 0xFB9F, 0x9EAA, 0xFBA0,
- 0x9EAB, 0xFC40, 0x9EAC, 0xFC41, 0x9EAD, 0xFC42, 0x9EAE, 0xFC43,
- 0x9EAF, 0xFC44, 0x9EB0, 0xFC45, 0x9EB1, 0xFC46, 0x9EB2, 0xFC47,
- 0x9EB3, 0xFC48, 0x9EB4, 0xF4F0, 0x9EB5, 0xFC49, 0x9EB6, 0xFC4A,
- 0x9EB7, 0xFC4B, 0x9EB8, 0xF4EF, 0x9EB9, 0xFC4C, 0x9EBA, 0xFC4D,
- 0x9EBB, 0xC2E9, 0x9EBC, 0xFC4E, 0x9EBD, 0xF7E1, 0x9EBE, 0xF7E2,
- 0x9EBF, 0xFC4F, 0x9EC0, 0xFC50, 0x9EC1, 0xFC51, 0x9EC2, 0xFC52,
- 0x9EC3, 0xFC53, 0x9EC4, 0xBBC6, 0x9EC5, 0xFC54, 0x9EC6, 0xFC55,
- 0x9EC7, 0xFC56, 0x9EC8, 0xFC57, 0x9EC9, 0xD9E4, 0x9ECA, 0xFC58,
- 0x9ECB, 0xFC59, 0x9ECC, 0xFC5A, 0x9ECD, 0xCAF2, 0x9ECE, 0xC0E8,
- 0x9ECF, 0xF0A4, 0x9ED0, 0xFC5B, 0x9ED1, 0xBADA, 0x9ED2, 0xFC5C,
- 0x9ED3, 0xFC5D, 0x9ED4, 0xC7AD, 0x9ED5, 0xFC5E, 0x9ED6, 0xFC5F,
- 0x9ED7, 0xFC60, 0x9ED8, 0xC4AC, 0x9ED9, 0xFC61, 0x9EDA, 0xFC62,
- 0x9EDB, 0xF7EC, 0x9EDC, 0xF7ED, 0x9EDD, 0xF7EE, 0x9EDE, 0xFC63,
- 0x9EDF, 0xF7F0, 0x9EE0, 0xF7EF, 0x9EE1, 0xFC64, 0x9EE2, 0xF7F1,
- 0x9EE3, 0xFC65, 0x9EE4, 0xFC66, 0x9EE5, 0xF7F4, 0x9EE6, 0xFC67,
- 0x9EE7, 0xF7F3, 0x9EE8, 0xFC68, 0x9EE9, 0xF7F2, 0x9EEA, 0xF7F5,
- 0x9EEB, 0xFC69, 0x9EEC, 0xFC6A, 0x9EED, 0xFC6B, 0x9EEE, 0xFC6C,
- 0x9EEF, 0xF7F6, 0x9EF0, 0xFC6D, 0x9EF1, 0xFC6E, 0x9EF2, 0xFC6F,
- 0x9EF3, 0xFC70, 0x9EF4, 0xFC71, 0x9EF5, 0xFC72, 0x9EF6, 0xFC73,
- 0x9EF7, 0xFC74, 0x9EF8, 0xFC75, 0x9EF9, 0xEDE9, 0x9EFA, 0xFC76,
- 0x9EFB, 0xEDEA, 0x9EFC, 0xEDEB, 0x9EFD, 0xFC77, 0x9EFE, 0xF6BC,
- 0x9EFF, 0xFC78, 0x9F00, 0xFC79, 0x9F01, 0xFC7A, 0x9F02, 0xFC7B,
- 0x9F03, 0xFC7C, 0x9F04, 0xFC7D, 0x9F05, 0xFC7E, 0x9F06, 0xFC80,
- 0x9F07, 0xFC81, 0x9F08, 0xFC82, 0x9F09, 0xFC83, 0x9F0A, 0xFC84,
- 0x9F0B, 0xF6BD, 0x9F0C, 0xFC85, 0x9F0D, 0xF6BE, 0x9F0E, 0xB6A6,
- 0x9F0F, 0xFC86, 0x9F10, 0xD8BE, 0x9F11, 0xFC87, 0x9F12, 0xFC88,
- 0x9F13, 0xB9C4, 0x9F14, 0xFC89, 0x9F15, 0xFC8A, 0x9F16, 0xFC8B,
- 0x9F17, 0xD8BB, 0x9F18, 0xFC8C, 0x9F19, 0xDCB1, 0x9F1A, 0xFC8D,
- 0x9F1B, 0xFC8E, 0x9F1C, 0xFC8F, 0x9F1D, 0xFC90, 0x9F1E, 0xFC91,
- 0x9F1F, 0xFC92, 0x9F20, 0xCAF3, 0x9F21, 0xFC93, 0x9F22, 0xF7F7,
- 0x9F23, 0xFC94, 0x9F24, 0xFC95, 0x9F25, 0xFC96, 0x9F26, 0xFC97,
- 0x9F27, 0xFC98, 0x9F28, 0xFC99, 0x9F29, 0xFC9A, 0x9F2A, 0xFC9B,
- 0x9F2B, 0xFC9C, 0x9F2C, 0xF7F8, 0x9F2D, 0xFC9D, 0x9F2E, 0xFC9E,
- 0x9F2F, 0xF7F9, 0x9F30, 0xFC9F, 0x9F31, 0xFCA0, 0x9F32, 0xFD40,
- 0x9F33, 0xFD41, 0x9F34, 0xFD42, 0x9F35, 0xFD43, 0x9F36, 0xFD44,
- 0x9F37, 0xF7FB, 0x9F38, 0xFD45, 0x9F39, 0xF7FA, 0x9F3A, 0xFD46,
- 0x9F3B, 0xB1C7, 0x9F3C, 0xFD47, 0x9F3D, 0xF7FC, 0x9F3E, 0xF7FD,
- 0x9F3F, 0xFD48, 0x9F40, 0xFD49, 0x9F41, 0xFD4A, 0x9F42, 0xFD4B,
- 0x9F43, 0xFD4C, 0x9F44, 0xF7FE, 0x9F45, 0xFD4D, 0x9F46, 0xFD4E,
- 0x9F47, 0xFD4F, 0x9F48, 0xFD50, 0x9F49, 0xFD51, 0x9F4A, 0xFD52,
- 0x9F4B, 0xFD53, 0x9F4C, 0xFD54, 0x9F4D, 0xFD55, 0x9F4E, 0xFD56,
- 0x9F4F, 0xFD57, 0x9F50, 0xC6EB, 0x9F51, 0xECB4, 0x9F52, 0xFD58,
- 0x9F53, 0xFD59, 0x9F54, 0xFD5A, 0x9F55, 0xFD5B, 0x9F56, 0xFD5C,
- 0x9F57, 0xFD5D, 0x9F58, 0xFD5E, 0x9F59, 0xFD5F, 0x9F5A, 0xFD60,
- 0x9F5B, 0xFD61, 0x9F5C, 0xFD62, 0x9F5D, 0xFD63, 0x9F5E, 0xFD64,
- 0x9F5F, 0xFD65, 0x9F60, 0xFD66, 0x9F61, 0xFD67, 0x9F62, 0xFD68,
- 0x9F63, 0xFD69, 0x9F64, 0xFD6A, 0x9F65, 0xFD6B, 0x9F66, 0xFD6C,
- 0x9F67, 0xFD6D, 0x9F68, 0xFD6E, 0x9F69, 0xFD6F, 0x9F6A, 0xFD70,
- 0x9F6B, 0xFD71, 0x9F6C, 0xFD72, 0x9F6D, 0xFD73, 0x9F6E, 0xFD74,
- 0x9F6F, 0xFD75, 0x9F70, 0xFD76, 0x9F71, 0xFD77, 0x9F72, 0xFD78,
- 0x9F73, 0xFD79, 0x9F74, 0xFD7A, 0x9F75, 0xFD7B, 0x9F76, 0xFD7C,
- 0x9F77, 0xFD7D, 0x9F78, 0xFD7E, 0x9F79, 0xFD80, 0x9F7A, 0xFD81,
- 0x9F7B, 0xFD82, 0x9F7C, 0xFD83, 0x9F7D, 0xFD84, 0x9F7E, 0xFD85,
- 0x9F7F, 0xB3DD, 0x9F80, 0xF6B3, 0x9F81, 0xFD86, 0x9F82, 0xFD87,
- 0x9F83, 0xF6B4, 0x9F84, 0xC1E4, 0x9F85, 0xF6B5, 0x9F86, 0xF6B6,
- 0x9F87, 0xF6B7, 0x9F88, 0xF6B8, 0x9F89, 0xF6B9, 0x9F8A, 0xF6BA,
- 0x9F8B, 0xC8A3, 0x9F8C, 0xF6BB, 0x9F8D, 0xFD88, 0x9F8E, 0xFD89,
- 0x9F8F, 0xFD8A, 0x9F90, 0xFD8B, 0x9F91, 0xFD8C, 0x9F92, 0xFD8D,
- 0x9F93, 0xFD8E, 0x9F94, 0xFD8F, 0x9F95, 0xFD90, 0x9F96, 0xFD91,
- 0x9F97, 0xFD92, 0x9F98, 0xFD93, 0x9F99, 0xC1FA, 0x9F9A, 0xB9A8,
- 0x9F9B, 0xEDE8, 0x9F9C, 0xFD94, 0x9F9D, 0xFD95, 0x9F9E, 0xFD96,
- 0x9F9F, 0xB9EA, 0x9FA0, 0xD9DF, 0x9FA1, 0xFD97, 0x9FA2, 0xFD98,
- 0x9FA3, 0xFD99, 0x9FA4, 0xFD9A, 0x9FA5, 0xFD9B, 0xF92C, 0xFD9C,
- 0xF979, 0xFD9D, 0xF995, 0xFD9E, 0xF9E7, 0xFD9F, 0xF9F1, 0xFDA0,
- 0xFA0C, 0xFE40, 0xFA0D, 0xFE41, 0xFA0E, 0xFE42, 0xFA0F, 0xFE43,
- 0xFA11, 0xFE44, 0xFA13, 0xFE45, 0xFA14, 0xFE46, 0xFA18, 0xFE47,
- 0xFA1F, 0xFE48, 0xFA20, 0xFE49, 0xFA21, 0xFE4A, 0xFA23, 0xFE4B,
- 0xFA24, 0xFE4C, 0xFA27, 0xFE4D, 0xFA28, 0xFE4E, 0xFA29, 0xFE4F,
- 0xFE30, 0xA955, 0xFE31, 0xA6F2, 0xFE33, 0xA6F4, 0xFE34, 0xA6F5,
- 0xFE35, 0xA6E0, 0xFE36, 0xA6E1, 0xFE37, 0xA6F0, 0xFE38, 0xA6F1,
- 0xFE39, 0xA6E2, 0xFE3A, 0xA6E3, 0xFE3B, 0xA6EE, 0xFE3C, 0xA6EF,
- 0xFE3D, 0xA6E6, 0xFE3E, 0xA6E7, 0xFE3F, 0xA6E4, 0xFE40, 0xA6E5,
- 0xFE41, 0xA6E8, 0xFE42, 0xA6E9, 0xFE43, 0xA6EA, 0xFE44, 0xA6EB,
- 0xFE49, 0xA968, 0xFE4A, 0xA969, 0xFE4B, 0xA96A, 0xFE4C, 0xA96B,
- 0xFE4D, 0xA96C, 0xFE4E, 0xA96D, 0xFE4F, 0xA96E, 0xFE50, 0xA96F,
- 0xFE51, 0xA970, 0xFE52, 0xA971, 0xFE54, 0xA972, 0xFE55, 0xA973,
- 0xFE56, 0xA974, 0xFE57, 0xA975, 0xFE59, 0xA976, 0xFE5A, 0xA977,
- 0xFE5B, 0xA978, 0xFE5C, 0xA979, 0xFE5D, 0xA97A, 0xFE5E, 0xA97B,
- 0xFE5F, 0xA97C, 0xFE60, 0xA97D, 0xFE61, 0xA97E, 0xFE62, 0xA980,
- 0xFE63, 0xA981, 0xFE64, 0xA982, 0xFE65, 0xA983, 0xFE66, 0xA984,
- 0xFE68, 0xA985, 0xFE69, 0xA986, 0xFE6A, 0xA987, 0xFE6B, 0xA988,
- 0xFF01, 0xA3A1, 0xFF02, 0xA3A2, 0xFF03, 0xA3A3, 0xFF04, 0xA1E7,
- 0xFF05, 0xA3A5, 0xFF06, 0xA3A6, 0xFF07, 0xA3A7, 0xFF08, 0xA3A8,
- 0xFF09, 0xA3A9, 0xFF0A, 0xA3AA, 0xFF0B, 0xA3AB, 0xFF0C, 0xA3AC,
- 0xFF0D, 0xA3AD, 0xFF0E, 0xA3AE, 0xFF0F, 0xA3AF, 0xFF10, 0xA3B0,
- 0xFF11, 0xA3B1, 0xFF12, 0xA3B2, 0xFF13, 0xA3B3, 0xFF14, 0xA3B4,
- 0xFF15, 0xA3B5, 0xFF16, 0xA3B6, 0xFF17, 0xA3B7, 0xFF18, 0xA3B8,
- 0xFF19, 0xA3B9, 0xFF1A, 0xA3BA, 0xFF1B, 0xA3BB, 0xFF1C, 0xA3BC,
- 0xFF1D, 0xA3BD, 0xFF1E, 0xA3BE, 0xFF1F, 0xA3BF, 0xFF20, 0xA3C0,
- 0xFF21, 0xA3C1, 0xFF22, 0xA3C2, 0xFF23, 0xA3C3, 0xFF24, 0xA3C4,
- 0xFF25, 0xA3C5, 0xFF26, 0xA3C6, 0xFF27, 0xA3C7, 0xFF28, 0xA3C8,
- 0xFF29, 0xA3C9, 0xFF2A, 0xA3CA, 0xFF2B, 0xA3CB, 0xFF2C, 0xA3CC,
- 0xFF2D, 0xA3CD, 0xFF2E, 0xA3CE, 0xFF2F, 0xA3CF, 0xFF30, 0xA3D0,
- 0xFF31, 0xA3D1, 0xFF32, 0xA3D2, 0xFF33, 0xA3D3, 0xFF34, 0xA3D4,
- 0xFF35, 0xA3D5, 0xFF36, 0xA3D6, 0xFF37, 0xA3D7, 0xFF38, 0xA3D8,
- 0xFF39, 0xA3D9, 0xFF3A, 0xA3DA, 0xFF3B, 0xA3DB, 0xFF3C, 0xA3DC,
- 0xFF3D, 0xA3DD, 0xFF3E, 0xA3DE, 0xFF3F, 0xA3DF, 0xFF40, 0xA3E0,
- 0xFF41, 0xA3E1, 0xFF42, 0xA3E2, 0xFF43, 0xA3E3, 0xFF44, 0xA3E4,
- 0xFF45, 0xA3E5, 0xFF46, 0xA3E6, 0xFF47, 0xA3E7, 0xFF48, 0xA3E8,
- 0xFF49, 0xA3E9, 0xFF4A, 0xA3EA, 0xFF4B, 0xA3EB, 0xFF4C, 0xA3EC,
- 0xFF4D, 0xA3ED, 0xFF4E, 0xA3EE, 0xFF4F, 0xA3EF, 0xFF50, 0xA3F0,
- 0xFF51, 0xA3F1, 0xFF52, 0xA3F2, 0xFF53, 0xA3F3, 0xFF54, 0xA3F4,
- 0xFF55, 0xA3F5, 0xFF56, 0xA3F6, 0xFF57, 0xA3F7, 0xFF58, 0xA3F8,
- 0xFF59, 0xA3F9, 0xFF5A, 0xA3FA, 0xFF5B, 0xA3FB, 0xFF5C, 0xA3FC,
- 0xFF5D, 0xA3FD, 0xFF5E, 0xA1AB, 0xFFE0, 0xA1E9, 0xFFE1, 0xA1EA,
- 0xFFE2, 0xA956, 0xFFE3, 0xA3FE, 0xFFE4, 0xA957, 0xFFE5, 0xA3A4,
- 0, 0
-};
-
-static
-const WCHAR oem2uni[] = {
- /* OEM - Unicode, OEM - Unicode, OEM - Unicode, OEM - Unicode */
- 0x0080, 0x20AC, 0x8140, 0x4E02, 0x8141, 0x4E04, 0x8142, 0x4E05,
- 0x8143, 0x4E06, 0x8144, 0x4E0F, 0x8145, 0x4E12, 0x8146, 0x4E17,
- 0x8147, 0x4E1F, 0x8148, 0x4E20, 0x8149, 0x4E21, 0x814A, 0x4E23,
- 0x814B, 0x4E26, 0x814C, 0x4E29, 0x814D, 0x4E2E, 0x814E, 0x4E2F,
- 0x814F, 0x4E31, 0x8150, 0x4E33, 0x8151, 0x4E35, 0x8152, 0x4E37,
- 0x8153, 0x4E3C, 0x8154, 0x4E40, 0x8155, 0x4E41, 0x8156, 0x4E42,
- 0x8157, 0x4E44, 0x8158, 0x4E46, 0x8159, 0x4E4A, 0x815A, 0x4E51,
- 0x815B, 0x4E55, 0x815C, 0x4E57, 0x815D, 0x4E5A, 0x815E, 0x4E5B,
- 0x815F, 0x4E62, 0x8160, 0x4E63, 0x8161, 0x4E64, 0x8162, 0x4E65,
- 0x8163, 0x4E67, 0x8164, 0x4E68, 0x8165, 0x4E6A, 0x8166, 0x4E6B,
- 0x8167, 0x4E6C, 0x8168, 0x4E6D, 0x8169, 0x4E6E, 0x816A, 0x4E6F,
- 0x816B, 0x4E72, 0x816C, 0x4E74, 0x816D, 0x4E75, 0x816E, 0x4E76,
- 0x816F, 0x4E77, 0x8170, 0x4E78, 0x8171, 0x4E79, 0x8172, 0x4E7A,
- 0x8173, 0x4E7B, 0x8174, 0x4E7C, 0x8175, 0x4E7D, 0x8176, 0x4E7F,
- 0x8177, 0x4E80, 0x8178, 0x4E81, 0x8179, 0x4E82, 0x817A, 0x4E83,
- 0x817B, 0x4E84, 0x817C, 0x4E85, 0x817D, 0x4E87, 0x817E, 0x4E8A,
- 0x8180, 0x4E90, 0x8181, 0x4E96, 0x8182, 0x4E97, 0x8183, 0x4E99,
- 0x8184, 0x4E9C, 0x8185, 0x4E9D, 0x8186, 0x4E9E, 0x8187, 0x4EA3,
- 0x8188, 0x4EAA, 0x8189, 0x4EAF, 0x818A, 0x4EB0, 0x818B, 0x4EB1,
- 0x818C, 0x4EB4, 0x818D, 0x4EB6, 0x818E, 0x4EB7, 0x818F, 0x4EB8,
- 0x8190, 0x4EB9, 0x8191, 0x4EBC, 0x8192, 0x4EBD, 0x8193, 0x4EBE,
- 0x8194, 0x4EC8, 0x8195, 0x4ECC, 0x8196, 0x4ECF, 0x8197, 0x4ED0,
- 0x8198, 0x4ED2, 0x8199, 0x4EDA, 0x819A, 0x4EDB, 0x819B, 0x4EDC,
- 0x819C, 0x4EE0, 0x819D, 0x4EE2, 0x819E, 0x4EE6, 0x819F, 0x4EE7,
- 0x81A0, 0x4EE9, 0x81A1, 0x4EED, 0x81A2, 0x4EEE, 0x81A3, 0x4EEF,
- 0x81A4, 0x4EF1, 0x81A5, 0x4EF4, 0x81A6, 0x4EF8, 0x81A7, 0x4EF9,
- 0x81A8, 0x4EFA, 0x81A9, 0x4EFC, 0x81AA, 0x4EFE, 0x81AB, 0x4F00,
- 0x81AC, 0x4F02, 0x81AD, 0x4F03, 0x81AE, 0x4F04, 0x81AF, 0x4F05,
- 0x81B0, 0x4F06, 0x81B1, 0x4F07, 0x81B2, 0x4F08, 0x81B3, 0x4F0B,
- 0x81B4, 0x4F0C, 0x81B5, 0x4F12, 0x81B6, 0x4F13, 0x81B7, 0x4F14,
- 0x81B8, 0x4F15, 0x81B9, 0x4F16, 0x81BA, 0x4F1C, 0x81BB, 0x4F1D,
- 0x81BC, 0x4F21, 0x81BD, 0x4F23, 0x81BE, 0x4F28, 0x81BF, 0x4F29,
- 0x81C0, 0x4F2C, 0x81C1, 0x4F2D, 0x81C2, 0x4F2E, 0x81C3, 0x4F31,
- 0x81C4, 0x4F33, 0x81C5, 0x4F35, 0x81C6, 0x4F37, 0x81C7, 0x4F39,
- 0x81C8, 0x4F3B, 0x81C9, 0x4F3E, 0x81CA, 0x4F3F, 0x81CB, 0x4F40,
- 0x81CC, 0x4F41, 0x81CD, 0x4F42, 0x81CE, 0x4F44, 0x81CF, 0x4F45,
- 0x81D0, 0x4F47, 0x81D1, 0x4F48, 0x81D2, 0x4F49, 0x81D3, 0x4F4A,
- 0x81D4, 0x4F4B, 0x81D5, 0x4F4C, 0x81D6, 0x4F52, 0x81D7, 0x4F54,
- 0x81D8, 0x4F56, 0x81D9, 0x4F61, 0x81DA, 0x4F62, 0x81DB, 0x4F66,
- 0x81DC, 0x4F68, 0x81DD, 0x4F6A, 0x81DE, 0x4F6B, 0x81DF, 0x4F6D,
- 0x81E0, 0x4F6E, 0x81E1, 0x4F71, 0x81E2, 0x4F72, 0x81E3, 0x4F75,
- 0x81E4, 0x4F77, 0x81E5, 0x4F78, 0x81E6, 0x4F79, 0x81E7, 0x4F7A,
- 0x81E8, 0x4F7D, 0x81E9, 0x4F80, 0x81EA, 0x4F81, 0x81EB, 0x4F82,
- 0x81EC, 0x4F85, 0x81ED, 0x4F86, 0x81EE, 0x4F87, 0x81EF, 0x4F8A,
- 0x81F0, 0x4F8C, 0x81F1, 0x4F8E, 0x81F2, 0x4F90, 0x81F3, 0x4F92,
- 0x81F4, 0x4F93, 0x81F5, 0x4F95, 0x81F6, 0x4F96, 0x81F7, 0x4F98,
- 0x81F8, 0x4F99, 0x81F9, 0x4F9A, 0x81FA, 0x4F9C, 0x81FB, 0x4F9E,
- 0x81FC, 0x4F9F, 0x81FD, 0x4FA1, 0x81FE, 0x4FA2, 0x8240, 0x4FA4,
- 0x8241, 0x4FAB, 0x8242, 0x4FAD, 0x8243, 0x4FB0, 0x8244, 0x4FB1,
- 0x8245, 0x4FB2, 0x8246, 0x4FB3, 0x8247, 0x4FB4, 0x8248, 0x4FB6,
- 0x8249, 0x4FB7, 0x824A, 0x4FB8, 0x824B, 0x4FB9, 0x824C, 0x4FBA,
- 0x824D, 0x4FBB, 0x824E, 0x4FBC, 0x824F, 0x4FBD, 0x8250, 0x4FBE,
- 0x8251, 0x4FC0, 0x8252, 0x4FC1, 0x8253, 0x4FC2, 0x8254, 0x4FC6,
- 0x8255, 0x4FC7, 0x8256, 0x4FC8, 0x8257, 0x4FC9, 0x8258, 0x4FCB,
- 0x8259, 0x4FCC, 0x825A, 0x4FCD, 0x825B, 0x4FD2, 0x825C, 0x4FD3,
- 0x825D, 0x4FD4, 0x825E, 0x4FD5, 0x825F, 0x4FD6, 0x8260, 0x4FD9,
- 0x8261, 0x4FDB, 0x8262, 0x4FE0, 0x8263, 0x4FE2, 0x8264, 0x4FE4,
- 0x8265, 0x4FE5, 0x8266, 0x4FE7, 0x8267, 0x4FEB, 0x8268, 0x4FEC,
- 0x8269, 0x4FF0, 0x826A, 0x4FF2, 0x826B, 0x4FF4, 0x826C, 0x4FF5,
- 0x826D, 0x4FF6, 0x826E, 0x4FF7, 0x826F, 0x4FF9, 0x8270, 0x4FFB,
- 0x8271, 0x4FFC, 0x8272, 0x4FFD, 0x8273, 0x4FFF, 0x8274, 0x5000,
- 0x8275, 0x5001, 0x8276, 0x5002, 0x8277, 0x5003, 0x8278, 0x5004,
- 0x8279, 0x5005, 0x827A, 0x5006, 0x827B, 0x5007, 0x827C, 0x5008,
- 0x827D, 0x5009, 0x827E, 0x500A, 0x8280, 0x500B, 0x8281, 0x500E,
- 0x8282, 0x5010, 0x8283, 0x5011, 0x8284, 0x5013, 0x8285, 0x5015,
- 0x8286, 0x5016, 0x8287, 0x5017, 0x8288, 0x501B, 0x8289, 0x501D,
- 0x828A, 0x501E, 0x828B, 0x5020, 0x828C, 0x5022, 0x828D, 0x5023,
- 0x828E, 0x5024, 0x828F, 0x5027, 0x8290, 0x502B, 0x8291, 0x502F,
- 0x8292, 0x5030, 0x8293, 0x5031, 0x8294, 0x5032, 0x8295, 0x5033,
- 0x8296, 0x5034, 0x8297, 0x5035, 0x8298, 0x5036, 0x8299, 0x5037,
- 0x829A, 0x5038, 0x829B, 0x5039, 0x829C, 0x503B, 0x829D, 0x503D,
- 0x829E, 0x503F, 0x829F, 0x5040, 0x82A0, 0x5041, 0x82A1, 0x5042,
- 0x82A2, 0x5044, 0x82A3, 0x5045, 0x82A4, 0x5046, 0x82A5, 0x5049,
- 0x82A6, 0x504A, 0x82A7, 0x504B, 0x82A8, 0x504D, 0x82A9, 0x5050,
- 0x82AA, 0x5051, 0x82AB, 0x5052, 0x82AC, 0x5053, 0x82AD, 0x5054,
- 0x82AE, 0x5056, 0x82AF, 0x5057, 0x82B0, 0x5058, 0x82B1, 0x5059,
- 0x82B2, 0x505B, 0x82B3, 0x505D, 0x82B4, 0x505E, 0x82B5, 0x505F,
- 0x82B6, 0x5060, 0x82B7, 0x5061, 0x82B8, 0x5062, 0x82B9, 0x5063,
- 0x82BA, 0x5064, 0x82BB, 0x5066, 0x82BC, 0x5067, 0x82BD, 0x5068,
- 0x82BE, 0x5069, 0x82BF, 0x506A, 0x82C0, 0x506B, 0x82C1, 0x506D,
- 0x82C2, 0x506E, 0x82C3, 0x506F, 0x82C4, 0x5070, 0x82C5, 0x5071,
- 0x82C6, 0x5072, 0x82C7, 0x5073, 0x82C8, 0x5074, 0x82C9, 0x5075,
- 0x82CA, 0x5078, 0x82CB, 0x5079, 0x82CC, 0x507A, 0x82CD, 0x507C,
- 0x82CE, 0x507D, 0x82CF, 0x5081, 0x82D0, 0x5082, 0x82D1, 0x5083,
- 0x82D2, 0x5084, 0x82D3, 0x5086, 0x82D4, 0x5087, 0x82D5, 0x5089,
- 0x82D6, 0x508A, 0x82D7, 0x508B, 0x82D8, 0x508C, 0x82D9, 0x508E,
- 0x82DA, 0x508F, 0x82DB, 0x5090, 0x82DC, 0x5091, 0x82DD, 0x5092,
- 0x82DE, 0x5093, 0x82DF, 0x5094, 0x82E0, 0x5095, 0x82E1, 0x5096,
- 0x82E2, 0x5097, 0x82E3, 0x5098, 0x82E4, 0x5099, 0x82E5, 0x509A,
- 0x82E6, 0x509B, 0x82E7, 0x509C, 0x82E8, 0x509D, 0x82E9, 0x509E,
- 0x82EA, 0x509F, 0x82EB, 0x50A0, 0x82EC, 0x50A1, 0x82ED, 0x50A2,
- 0x82EE, 0x50A4, 0x82EF, 0x50A6, 0x82F0, 0x50AA, 0x82F1, 0x50AB,
- 0x82F2, 0x50AD, 0x82F3, 0x50AE, 0x82F4, 0x50AF, 0x82F5, 0x50B0,
- 0x82F6, 0x50B1, 0x82F7, 0x50B3, 0x82F8, 0x50B4, 0x82F9, 0x50B5,
- 0x82FA, 0x50B6, 0x82FB, 0x50B7, 0x82FC, 0x50B8, 0x82FD, 0x50B9,
- 0x82FE, 0x50BC, 0x8340, 0x50BD, 0x8341, 0x50BE, 0x8342, 0x50BF,
- 0x8343, 0x50C0, 0x8344, 0x50C1, 0x8345, 0x50C2, 0x8346, 0x50C3,
- 0x8347, 0x50C4, 0x8348, 0x50C5, 0x8349, 0x50C6, 0x834A, 0x50C7,
- 0x834B, 0x50C8, 0x834C, 0x50C9, 0x834D, 0x50CA, 0x834E, 0x50CB,
- 0x834F, 0x50CC, 0x8350, 0x50CD, 0x8351, 0x50CE, 0x8352, 0x50D0,
- 0x8353, 0x50D1, 0x8354, 0x50D2, 0x8355, 0x50D3, 0x8356, 0x50D4,
- 0x8357, 0x50D5, 0x8358, 0x50D7, 0x8359, 0x50D8, 0x835A, 0x50D9,
- 0x835B, 0x50DB, 0x835C, 0x50DC, 0x835D, 0x50DD, 0x835E, 0x50DE,
- 0x835F, 0x50DF, 0x8360, 0x50E0, 0x8361, 0x50E1, 0x8362, 0x50E2,
- 0x8363, 0x50E3, 0x8364, 0x50E4, 0x8365, 0x50E5, 0x8366, 0x50E8,
- 0x8367, 0x50E9, 0x8368, 0x50EA, 0x8369, 0x50EB, 0x836A, 0x50EF,
- 0x836B, 0x50F0, 0x836C, 0x50F1, 0x836D, 0x50F2, 0x836E, 0x50F4,
- 0x836F, 0x50F6, 0x8370, 0x50F7, 0x8371, 0x50F8, 0x8372, 0x50F9,
- 0x8373, 0x50FA, 0x8374, 0x50FC, 0x8375, 0x50FD, 0x8376, 0x50FE,
- 0x8377, 0x50FF, 0x8378, 0x5100, 0x8379, 0x5101, 0x837A, 0x5102,
- 0x837B, 0x5103, 0x837C, 0x5104, 0x837D, 0x5105, 0x837E, 0x5108,
- 0x8380, 0x5109, 0x8381, 0x510A, 0x8382, 0x510C, 0x8383, 0x510D,
- 0x8384, 0x510E, 0x8385, 0x510F, 0x8386, 0x5110, 0x8387, 0x5111,
- 0x8388, 0x5113, 0x8389, 0x5114, 0x838A, 0x5115, 0x838B, 0x5116,
- 0x838C, 0x5117, 0x838D, 0x5118, 0x838E, 0x5119, 0x838F, 0x511A,
- 0x8390, 0x511B, 0x8391, 0x511C, 0x8392, 0x511D, 0x8393, 0x511E,
- 0x8394, 0x511F, 0x8395, 0x5120, 0x8396, 0x5122, 0x8397, 0x5123,
- 0x8398, 0x5124, 0x8399, 0x5125, 0x839A, 0x5126, 0x839B, 0x5127,
- 0x839C, 0x5128, 0x839D, 0x5129, 0x839E, 0x512A, 0x839F, 0x512B,
- 0x83A0, 0x512C, 0x83A1, 0x512D, 0x83A2, 0x512E, 0x83A3, 0x512F,
- 0x83A4, 0x5130, 0x83A5, 0x5131, 0x83A6, 0x5132, 0x83A7, 0x5133,
- 0x83A8, 0x5134, 0x83A9, 0x5135, 0x83AA, 0x5136, 0x83AB, 0x5137,
- 0x83AC, 0x5138, 0x83AD, 0x5139, 0x83AE, 0x513A, 0x83AF, 0x513B,
- 0x83B0, 0x513C, 0x83B1, 0x513D, 0x83B2, 0x513E, 0x83B3, 0x5142,
- 0x83B4, 0x5147, 0x83B5, 0x514A, 0x83B6, 0x514C, 0x83B7, 0x514E,
- 0x83B8, 0x514F, 0x83B9, 0x5150, 0x83BA, 0x5152, 0x83BB, 0x5153,
- 0x83BC, 0x5157, 0x83BD, 0x5158, 0x83BE, 0x5159, 0x83BF, 0x515B,
- 0x83C0, 0x515D, 0x83C1, 0x515E, 0x83C2, 0x515F, 0x83C3, 0x5160,
- 0x83C4, 0x5161, 0x83C5, 0x5163, 0x83C6, 0x5164, 0x83C7, 0x5166,
- 0x83C8, 0x5167, 0x83C9, 0x5169, 0x83CA, 0x516A, 0x83CB, 0x516F,
- 0x83CC, 0x5172, 0x83CD, 0x517A, 0x83CE, 0x517E, 0x83CF, 0x517F,
- 0x83D0, 0x5183, 0x83D1, 0x5184, 0x83D2, 0x5186, 0x83D3, 0x5187,
- 0x83D4, 0x518A, 0x83D5, 0x518B, 0x83D6, 0x518E, 0x83D7, 0x518F,
- 0x83D8, 0x5190, 0x83D9, 0x5191, 0x83DA, 0x5193, 0x83DB, 0x5194,
- 0x83DC, 0x5198, 0x83DD, 0x519A, 0x83DE, 0x519D, 0x83DF, 0x519E,
- 0x83E0, 0x519F, 0x83E1, 0x51A1, 0x83E2, 0x51A3, 0x83E3, 0x51A6,
- 0x83E4, 0x51A7, 0x83E5, 0x51A8, 0x83E6, 0x51A9, 0x83E7, 0x51AA,
- 0x83E8, 0x51AD, 0x83E9, 0x51AE, 0x83EA, 0x51B4, 0x83EB, 0x51B8,
- 0x83EC, 0x51B9, 0x83ED, 0x51BA, 0x83EE, 0x51BE, 0x83EF, 0x51BF,
- 0x83F0, 0x51C1, 0x83F1, 0x51C2, 0x83F2, 0x51C3, 0x83F3, 0x51C5,
- 0x83F4, 0x51C8, 0x83F5, 0x51CA, 0x83F6, 0x51CD, 0x83F7, 0x51CE,
- 0x83F8, 0x51D0, 0x83F9, 0x51D2, 0x83FA, 0x51D3, 0x83FB, 0x51D4,
- 0x83FC, 0x51D5, 0x83FD, 0x51D6, 0x83FE, 0x51D7, 0x8440, 0x51D8,
- 0x8441, 0x51D9, 0x8442, 0x51DA, 0x8443, 0x51DC, 0x8444, 0x51DE,
- 0x8445, 0x51DF, 0x8446, 0x51E2, 0x8447, 0x51E3, 0x8448, 0x51E5,
- 0x8449, 0x51E6, 0x844A, 0x51E7, 0x844B, 0x51E8, 0x844C, 0x51E9,
- 0x844D, 0x51EA, 0x844E, 0x51EC, 0x844F, 0x51EE, 0x8450, 0x51F1,
- 0x8451, 0x51F2, 0x8452, 0x51F4, 0x8453, 0x51F7, 0x8454, 0x51FE,
- 0x8455, 0x5204, 0x8456, 0x5205, 0x8457, 0x5209, 0x8458, 0x520B,
- 0x8459, 0x520C, 0x845A, 0x520F, 0x845B, 0x5210, 0x845C, 0x5213,
- 0x845D, 0x5214, 0x845E, 0x5215, 0x845F, 0x521C, 0x8460, 0x521E,
- 0x8461, 0x521F, 0x8462, 0x5221, 0x8463, 0x5222, 0x8464, 0x5223,
- 0x8465, 0x5225, 0x8466, 0x5226, 0x8467, 0x5227, 0x8468, 0x522A,
- 0x8469, 0x522C, 0x846A, 0x522F, 0x846B, 0x5231, 0x846C, 0x5232,
- 0x846D, 0x5234, 0x846E, 0x5235, 0x846F, 0x523C, 0x8470, 0x523E,
- 0x8471, 0x5244, 0x8472, 0x5245, 0x8473, 0x5246, 0x8474, 0x5247,
- 0x8475, 0x5248, 0x8476, 0x5249, 0x8477, 0x524B, 0x8478, 0x524E,
- 0x8479, 0x524F, 0x847A, 0x5252, 0x847B, 0x5253, 0x847C, 0x5255,
- 0x847D, 0x5257, 0x847E, 0x5258, 0x8480, 0x5259, 0x8481, 0x525A,
- 0x8482, 0x525B, 0x8483, 0x525D, 0x8484, 0x525F, 0x8485, 0x5260,
- 0x8486, 0x5262, 0x8487, 0x5263, 0x8488, 0x5264, 0x8489, 0x5266,
- 0x848A, 0x5268, 0x848B, 0x526B, 0x848C, 0x526C, 0x848D, 0x526D,
- 0x848E, 0x526E, 0x848F, 0x5270, 0x8490, 0x5271, 0x8491, 0x5273,
- 0x8492, 0x5274, 0x8493, 0x5275, 0x8494, 0x5276, 0x8495, 0x5277,
- 0x8496, 0x5278, 0x8497, 0x5279, 0x8498, 0x527A, 0x8499, 0x527B,
- 0x849A, 0x527C, 0x849B, 0x527E, 0x849C, 0x5280, 0x849D, 0x5283,
- 0x849E, 0x5284, 0x849F, 0x5285, 0x84A0, 0x5286, 0x84A1, 0x5287,
- 0x84A2, 0x5289, 0x84A3, 0x528A, 0x84A4, 0x528B, 0x84A5, 0x528C,
- 0x84A6, 0x528D, 0x84A7, 0x528E, 0x84A8, 0x528F, 0x84A9, 0x5291,
- 0x84AA, 0x5292, 0x84AB, 0x5294, 0x84AC, 0x5295, 0x84AD, 0x5296,
- 0x84AE, 0x5297, 0x84AF, 0x5298, 0x84B0, 0x5299, 0x84B1, 0x529A,
- 0x84B2, 0x529C, 0x84B3, 0x52A4, 0x84B4, 0x52A5, 0x84B5, 0x52A6,
- 0x84B6, 0x52A7, 0x84B7, 0x52AE, 0x84B8, 0x52AF, 0x84B9, 0x52B0,
- 0x84BA, 0x52B4, 0x84BB, 0x52B5, 0x84BC, 0x52B6, 0x84BD, 0x52B7,
- 0x84BE, 0x52B8, 0x84BF, 0x52B9, 0x84C0, 0x52BA, 0x84C1, 0x52BB,
- 0x84C2, 0x52BC, 0x84C3, 0x52BD, 0x84C4, 0x52C0, 0x84C5, 0x52C1,
- 0x84C6, 0x52C2, 0x84C7, 0x52C4, 0x84C8, 0x52C5, 0x84C9, 0x52C6,
- 0x84CA, 0x52C8, 0x84CB, 0x52CA, 0x84CC, 0x52CC, 0x84CD, 0x52CD,
- 0x84CE, 0x52CE, 0x84CF, 0x52CF, 0x84D0, 0x52D1, 0x84D1, 0x52D3,
- 0x84D2, 0x52D4, 0x84D3, 0x52D5, 0x84D4, 0x52D7, 0x84D5, 0x52D9,
- 0x84D6, 0x52DA, 0x84D7, 0x52DB, 0x84D8, 0x52DC, 0x84D9, 0x52DD,
- 0x84DA, 0x52DE, 0x84DB, 0x52E0, 0x84DC, 0x52E1, 0x84DD, 0x52E2,
- 0x84DE, 0x52E3, 0x84DF, 0x52E5, 0x84E0, 0x52E6, 0x84E1, 0x52E7,
- 0x84E2, 0x52E8, 0x84E3, 0x52E9, 0x84E4, 0x52EA, 0x84E5, 0x52EB,
- 0x84E6, 0x52EC, 0x84E7, 0x52ED, 0x84E8, 0x52EE, 0x84E9, 0x52EF,
- 0x84EA, 0x52F1, 0x84EB, 0x52F2, 0x84EC, 0x52F3, 0x84ED, 0x52F4,
- 0x84EE, 0x52F5, 0x84EF, 0x52F6, 0x84F0, 0x52F7, 0x84F1, 0x52F8,
- 0x84F2, 0x52FB, 0x84F3, 0x52FC, 0x84F4, 0x52FD, 0x84F5, 0x5301,
- 0x84F6, 0x5302, 0x84F7, 0x5303, 0x84F8, 0x5304, 0x84F9, 0x5307,
- 0x84FA, 0x5309, 0x84FB, 0x530A, 0x84FC, 0x530B, 0x84FD, 0x530C,
- 0x84FE, 0x530E, 0x8540, 0x5311, 0x8541, 0x5312, 0x8542, 0x5313,
- 0x8543, 0x5314, 0x8544, 0x5318, 0x8545, 0x531B, 0x8546, 0x531C,
- 0x8547, 0x531E, 0x8548, 0x531F, 0x8549, 0x5322, 0x854A, 0x5324,
- 0x854B, 0x5325, 0x854C, 0x5327, 0x854D, 0x5328, 0x854E, 0x5329,
- 0x854F, 0x532B, 0x8550, 0x532C, 0x8551, 0x532D, 0x8552, 0x532F,
- 0x8553, 0x5330, 0x8554, 0x5331, 0x8555, 0x5332, 0x8556, 0x5333,
- 0x8557, 0x5334, 0x8558, 0x5335, 0x8559, 0x5336, 0x855A, 0x5337,
- 0x855B, 0x5338, 0x855C, 0x533C, 0x855D, 0x533D, 0x855E, 0x5340,
- 0x855F, 0x5342, 0x8560, 0x5344, 0x8561, 0x5346, 0x8562, 0x534B,
- 0x8563, 0x534C, 0x8564, 0x534D, 0x8565, 0x5350, 0x8566, 0x5354,
- 0x8567, 0x5358, 0x8568, 0x5359, 0x8569, 0x535B, 0x856A, 0x535D,
- 0x856B, 0x5365, 0x856C, 0x5368, 0x856D, 0x536A, 0x856E, 0x536C,
- 0x856F, 0x536D, 0x8570, 0x5372, 0x8571, 0x5376, 0x8572, 0x5379,
- 0x8573, 0x537B, 0x8574, 0x537C, 0x8575, 0x537D, 0x8576, 0x537E,
- 0x8577, 0x5380, 0x8578, 0x5381, 0x8579, 0x5383, 0x857A, 0x5387,
- 0x857B, 0x5388, 0x857C, 0x538A, 0x857D, 0x538E, 0x857E, 0x538F,
- 0x8580, 0x5390, 0x8581, 0x5391, 0x8582, 0x5392, 0x8583, 0x5393,
- 0x8584, 0x5394, 0x8585, 0x5396, 0x8586, 0x5397, 0x8587, 0x5399,
- 0x8588, 0x539B, 0x8589, 0x539C, 0x858A, 0x539E, 0x858B, 0x53A0,
- 0x858C, 0x53A1, 0x858D, 0x53A4, 0x858E, 0x53A7, 0x858F, 0x53AA,
- 0x8590, 0x53AB, 0x8591, 0x53AC, 0x8592, 0x53AD, 0x8593, 0x53AF,
- 0x8594, 0x53B0, 0x8595, 0x53B1, 0x8596, 0x53B2, 0x8597, 0x53B3,
- 0x8598, 0x53B4, 0x8599, 0x53B5, 0x859A, 0x53B7, 0x859B, 0x53B8,
- 0x859C, 0x53B9, 0x859D, 0x53BA, 0x859E, 0x53BC, 0x859F, 0x53BD,
- 0x85A0, 0x53BE, 0x85A1, 0x53C0, 0x85A2, 0x53C3, 0x85A3, 0x53C4,
- 0x85A4, 0x53C5, 0x85A5, 0x53C6, 0x85A6, 0x53C7, 0x85A7, 0x53CE,
- 0x85A8, 0x53CF, 0x85A9, 0x53D0, 0x85AA, 0x53D2, 0x85AB, 0x53D3,
- 0x85AC, 0x53D5, 0x85AD, 0x53DA, 0x85AE, 0x53DC, 0x85AF, 0x53DD,
- 0x85B0, 0x53DE, 0x85B1, 0x53E1, 0x85B2, 0x53E2, 0x85B3, 0x53E7,
- 0x85B4, 0x53F4, 0x85B5, 0x53FA, 0x85B6, 0x53FE, 0x85B7, 0x53FF,
- 0x85B8, 0x5400, 0x85B9, 0x5402, 0x85BA, 0x5405, 0x85BB, 0x5407,
- 0x85BC, 0x540B, 0x85BD, 0x5414, 0x85BE, 0x5418, 0x85BF, 0x5419,
- 0x85C0, 0x541A, 0x85C1, 0x541C, 0x85C2, 0x5422, 0x85C3, 0x5424,
- 0x85C4, 0x5425, 0x85C5, 0x542A, 0x85C6, 0x5430, 0x85C7, 0x5433,
- 0x85C8, 0x5436, 0x85C9, 0x5437, 0x85CA, 0x543A, 0x85CB, 0x543D,
- 0x85CC, 0x543F, 0x85CD, 0x5441, 0x85CE, 0x5442, 0x85CF, 0x5444,
- 0x85D0, 0x5445, 0x85D1, 0x5447, 0x85D2, 0x5449, 0x85D3, 0x544C,
- 0x85D4, 0x544D, 0x85D5, 0x544E, 0x85D6, 0x544F, 0x85D7, 0x5451,
- 0x85D8, 0x545A, 0x85D9, 0x545D, 0x85DA, 0x545E, 0x85DB, 0x545F,
- 0x85DC, 0x5460, 0x85DD, 0x5461, 0x85DE, 0x5463, 0x85DF, 0x5465,
- 0x85E0, 0x5467, 0x85E1, 0x5469, 0x85E2, 0x546A, 0x85E3, 0x546B,
- 0x85E4, 0x546C, 0x85E5, 0x546D, 0x85E6, 0x546E, 0x85E7, 0x546F,
- 0x85E8, 0x5470, 0x85E9, 0x5474, 0x85EA, 0x5479, 0x85EB, 0x547A,
- 0x85EC, 0x547E, 0x85ED, 0x547F, 0x85EE, 0x5481, 0x85EF, 0x5483,
- 0x85F0, 0x5485, 0x85F1, 0x5487, 0x85F2, 0x5488, 0x85F3, 0x5489,
- 0x85F4, 0x548A, 0x85F5, 0x548D, 0x85F6, 0x5491, 0x85F7, 0x5493,
- 0x85F8, 0x5497, 0x85F9, 0x5498, 0x85FA, 0x549C, 0x85FB, 0x549E,
- 0x85FC, 0x549F, 0x85FD, 0x54A0, 0x85FE, 0x54A1, 0x8640, 0x54A2,
- 0x8641, 0x54A5, 0x8642, 0x54AE, 0x8643, 0x54B0, 0x8644, 0x54B2,
- 0x8645, 0x54B5, 0x8646, 0x54B6, 0x8647, 0x54B7, 0x8648, 0x54B9,
- 0x8649, 0x54BA, 0x864A, 0x54BC, 0x864B, 0x54BE, 0x864C, 0x54C3,
- 0x864D, 0x54C5, 0x864E, 0x54CA, 0x864F, 0x54CB, 0x8650, 0x54D6,
- 0x8651, 0x54D8, 0x8652, 0x54DB, 0x8653, 0x54E0, 0x8654, 0x54E1,
- 0x8655, 0x54E2, 0x8656, 0x54E3, 0x8657, 0x54E4, 0x8658, 0x54EB,
- 0x8659, 0x54EC, 0x865A, 0x54EF, 0x865B, 0x54F0, 0x865C, 0x54F1,
- 0x865D, 0x54F4, 0x865E, 0x54F5, 0x865F, 0x54F6, 0x8660, 0x54F7,
- 0x8661, 0x54F8, 0x8662, 0x54F9, 0x8663, 0x54FB, 0x8664, 0x54FE,
- 0x8665, 0x5500, 0x8666, 0x5502, 0x8667, 0x5503, 0x8668, 0x5504,
- 0x8669, 0x5505, 0x866A, 0x5508, 0x866B, 0x550A, 0x866C, 0x550B,
- 0x866D, 0x550C, 0x866E, 0x550D, 0x866F, 0x550E, 0x8670, 0x5512,
- 0x8671, 0x5513, 0x8672, 0x5515, 0x8673, 0x5516, 0x8674, 0x5517,
- 0x8675, 0x5518, 0x8676, 0x5519, 0x8677, 0x551A, 0x8678, 0x551C,
- 0x8679, 0x551D, 0x867A, 0x551E, 0x867B, 0x551F, 0x867C, 0x5521,
- 0x867D, 0x5525, 0x867E, 0x5526, 0x8680, 0x5528, 0x8681, 0x5529,
- 0x8682, 0x552B, 0x8683, 0x552D, 0x8684, 0x5532, 0x8685, 0x5534,
- 0x8686, 0x5535, 0x8687, 0x5536, 0x8688, 0x5538, 0x8689, 0x5539,
- 0x868A, 0x553A, 0x868B, 0x553B, 0x868C, 0x553D, 0x868D, 0x5540,
- 0x868E, 0x5542, 0x868F, 0x5545, 0x8690, 0x5547, 0x8691, 0x5548,
- 0x8692, 0x554B, 0x8693, 0x554C, 0x8694, 0x554D, 0x8695, 0x554E,
- 0x8696, 0x554F, 0x8697, 0x5551, 0x8698, 0x5552, 0x8699, 0x5553,
- 0x869A, 0x5554, 0x869B, 0x5557, 0x869C, 0x5558, 0x869D, 0x5559,
- 0x869E, 0x555A, 0x869F, 0x555B, 0x86A0, 0x555D, 0x86A1, 0x555E,
- 0x86A2, 0x555F, 0x86A3, 0x5560, 0x86A4, 0x5562, 0x86A5, 0x5563,
- 0x86A6, 0x5568, 0x86A7, 0x5569, 0x86A8, 0x556B, 0x86A9, 0x556F,
- 0x86AA, 0x5570, 0x86AB, 0x5571, 0x86AC, 0x5572, 0x86AD, 0x5573,
- 0x86AE, 0x5574, 0x86AF, 0x5579, 0x86B0, 0x557A, 0x86B1, 0x557D,
- 0x86B2, 0x557F, 0x86B3, 0x5585, 0x86B4, 0x5586, 0x86B5, 0x558C,
- 0x86B6, 0x558D, 0x86B7, 0x558E, 0x86B8, 0x5590, 0x86B9, 0x5592,
- 0x86BA, 0x5593, 0x86BB, 0x5595, 0x86BC, 0x5596, 0x86BD, 0x5597,
- 0x86BE, 0x559A, 0x86BF, 0x559B, 0x86C0, 0x559E, 0x86C1, 0x55A0,
- 0x86C2, 0x55A1, 0x86C3, 0x55A2, 0x86C4, 0x55A3, 0x86C5, 0x55A4,
- 0x86C6, 0x55A5, 0x86C7, 0x55A6, 0x86C8, 0x55A8, 0x86C9, 0x55A9,
- 0x86CA, 0x55AA, 0x86CB, 0x55AB, 0x86CC, 0x55AC, 0x86CD, 0x55AD,
- 0x86CE, 0x55AE, 0x86CF, 0x55AF, 0x86D0, 0x55B0, 0x86D1, 0x55B2,
- 0x86D2, 0x55B4, 0x86D3, 0x55B6, 0x86D4, 0x55B8, 0x86D5, 0x55BA,
- 0x86D6, 0x55BC, 0x86D7, 0x55BF, 0x86D8, 0x55C0, 0x86D9, 0x55C1,
- 0x86DA, 0x55C2, 0x86DB, 0x55C3, 0x86DC, 0x55C6, 0x86DD, 0x55C7,
- 0x86DE, 0x55C8, 0x86DF, 0x55CA, 0x86E0, 0x55CB, 0x86E1, 0x55CE,
- 0x86E2, 0x55CF, 0x86E3, 0x55D0, 0x86E4, 0x55D5, 0x86E5, 0x55D7,
- 0x86E6, 0x55D8, 0x86E7, 0x55D9, 0x86E8, 0x55DA, 0x86E9, 0x55DB,
- 0x86EA, 0x55DE, 0x86EB, 0x55E0, 0x86EC, 0x55E2, 0x86ED, 0x55E7,
- 0x86EE, 0x55E9, 0x86EF, 0x55ED, 0x86F0, 0x55EE, 0x86F1, 0x55F0,
- 0x86F2, 0x55F1, 0x86F3, 0x55F4, 0x86F4, 0x55F6, 0x86F5, 0x55F8,
- 0x86F6, 0x55F9, 0x86F7, 0x55FA, 0x86F8, 0x55FB, 0x86F9, 0x55FC,
- 0x86FA, 0x55FF, 0x86FB, 0x5602, 0x86FC, 0x5603, 0x86FD, 0x5604,
- 0x86FE, 0x5605, 0x8740, 0x5606, 0x8741, 0x5607, 0x8742, 0x560A,
- 0x8743, 0x560B, 0x8744, 0x560D, 0x8745, 0x5610, 0x8746, 0x5611,
- 0x8747, 0x5612, 0x8748, 0x5613, 0x8749, 0x5614, 0x874A, 0x5615,
- 0x874B, 0x5616, 0x874C, 0x5617, 0x874D, 0x5619, 0x874E, 0x561A,
- 0x874F, 0x561C, 0x8750, 0x561D, 0x8751, 0x5620, 0x8752, 0x5621,
- 0x8753, 0x5622, 0x8754, 0x5625, 0x8755, 0x5626, 0x8756, 0x5628,
- 0x8757, 0x5629, 0x8758, 0x562A, 0x8759, 0x562B, 0x875A, 0x562E,
- 0x875B, 0x562F, 0x875C, 0x5630, 0x875D, 0x5633, 0x875E, 0x5635,
- 0x875F, 0x5637, 0x8760, 0x5638, 0x8761, 0x563A, 0x8762, 0x563C,
- 0x8763, 0x563D, 0x8764, 0x563E, 0x8765, 0x5640, 0x8766, 0x5641,
- 0x8767, 0x5642, 0x8768, 0x5643, 0x8769, 0x5644, 0x876A, 0x5645,
- 0x876B, 0x5646, 0x876C, 0x5647, 0x876D, 0x5648, 0x876E, 0x5649,
- 0x876F, 0x564A, 0x8770, 0x564B, 0x8771, 0x564F, 0x8772, 0x5650,
- 0x8773, 0x5651, 0x8774, 0x5652, 0x8775, 0x5653, 0x8776, 0x5655,
- 0x8777, 0x5656, 0x8778, 0x565A, 0x8779, 0x565B, 0x877A, 0x565D,
- 0x877B, 0x565E, 0x877C, 0x565F, 0x877D, 0x5660, 0x877E, 0x5661,
- 0x8780, 0x5663, 0x8781, 0x5665, 0x8782, 0x5666, 0x8783, 0x5667,
- 0x8784, 0x566D, 0x8785, 0x566E, 0x8786, 0x566F, 0x8787, 0x5670,
- 0x8788, 0x5672, 0x8789, 0x5673, 0x878A, 0x5674, 0x878B, 0x5675,
- 0x878C, 0x5677, 0x878D, 0x5678, 0x878E, 0x5679, 0x878F, 0x567A,
- 0x8790, 0x567D, 0x8791, 0x567E, 0x8792, 0x567F, 0x8793, 0x5680,
- 0x8794, 0x5681, 0x8795, 0x5682, 0x8796, 0x5683, 0x8797, 0x5684,
- 0x8798, 0x5687, 0x8799, 0x5688, 0x879A, 0x5689, 0x879B, 0x568A,
- 0x879C, 0x568B, 0x879D, 0x568C, 0x879E, 0x568D, 0x879F, 0x5690,
- 0x87A0, 0x5691, 0x87A1, 0x5692, 0x87A2, 0x5694, 0x87A3, 0x5695,
- 0x87A4, 0x5696, 0x87A5, 0x5697, 0x87A6, 0x5698, 0x87A7, 0x5699,
- 0x87A8, 0x569A, 0x87A9, 0x569B, 0x87AA, 0x569C, 0x87AB, 0x569D,
- 0x87AC, 0x569E, 0x87AD, 0x569F, 0x87AE, 0x56A0, 0x87AF, 0x56A1,
- 0x87B0, 0x56A2, 0x87B1, 0x56A4, 0x87B2, 0x56A5, 0x87B3, 0x56A6,
- 0x87B4, 0x56A7, 0x87B5, 0x56A8, 0x87B6, 0x56A9, 0x87B7, 0x56AA,
- 0x87B8, 0x56AB, 0x87B9, 0x56AC, 0x87BA, 0x56AD, 0x87BB, 0x56AE,
- 0x87BC, 0x56B0, 0x87BD, 0x56B1, 0x87BE, 0x56B2, 0x87BF, 0x56B3,
- 0x87C0, 0x56B4, 0x87C1, 0x56B5, 0x87C2, 0x56B6, 0x87C3, 0x56B8,
- 0x87C4, 0x56B9, 0x87C5, 0x56BA, 0x87C6, 0x56BB, 0x87C7, 0x56BD,
- 0x87C8, 0x56BE, 0x87C9, 0x56BF, 0x87CA, 0x56C0, 0x87CB, 0x56C1,
- 0x87CC, 0x56C2, 0x87CD, 0x56C3, 0x87CE, 0x56C4, 0x87CF, 0x56C5,
- 0x87D0, 0x56C6, 0x87D1, 0x56C7, 0x87D2, 0x56C8, 0x87D3, 0x56C9,
- 0x87D4, 0x56CB, 0x87D5, 0x56CC, 0x87D6, 0x56CD, 0x87D7, 0x56CE,
- 0x87D8, 0x56CF, 0x87D9, 0x56D0, 0x87DA, 0x56D1, 0x87DB, 0x56D2,
- 0x87DC, 0x56D3, 0x87DD, 0x56D5, 0x87DE, 0x56D6, 0x87DF, 0x56D8,
- 0x87E0, 0x56D9, 0x87E1, 0x56DC, 0x87E2, 0x56E3, 0x87E3, 0x56E5,
- 0x87E4, 0x56E6, 0x87E5, 0x56E7, 0x87E6, 0x56E8, 0x87E7, 0x56E9,
- 0x87E8, 0x56EA, 0x87E9, 0x56EC, 0x87EA, 0x56EE, 0x87EB, 0x56EF,
- 0x87EC, 0x56F2, 0x87ED, 0x56F3, 0x87EE, 0x56F6, 0x87EF, 0x56F7,
- 0x87F0, 0x56F8, 0x87F1, 0x56FB, 0x87F2, 0x56FC, 0x87F3, 0x5700,
- 0x87F4, 0x5701, 0x87F5, 0x5702, 0x87F6, 0x5705, 0x87F7, 0x5707,
- 0x87F8, 0x570B, 0x87F9, 0x570C, 0x87FA, 0x570D, 0x87FB, 0x570E,
- 0x87FC, 0x570F, 0x87FD, 0x5710, 0x87FE, 0x5711, 0x8840, 0x5712,
- 0x8841, 0x5713, 0x8842, 0x5714, 0x8843, 0x5715, 0x8844, 0x5716,
- 0x8845, 0x5717, 0x8846, 0x5718, 0x8847, 0x5719, 0x8848, 0x571A,
- 0x8849, 0x571B, 0x884A, 0x571D, 0x884B, 0x571E, 0x884C, 0x5720,
- 0x884D, 0x5721, 0x884E, 0x5722, 0x884F, 0x5724, 0x8850, 0x5725,
- 0x8851, 0x5726, 0x8852, 0x5727, 0x8853, 0x572B, 0x8854, 0x5731,
- 0x8855, 0x5732, 0x8856, 0x5734, 0x8857, 0x5735, 0x8858, 0x5736,
- 0x8859, 0x5737, 0x885A, 0x5738, 0x885B, 0x573C, 0x885C, 0x573D,
- 0x885D, 0x573F, 0x885E, 0x5741, 0x885F, 0x5743, 0x8860, 0x5744,
- 0x8861, 0x5745, 0x8862, 0x5746, 0x8863, 0x5748, 0x8864, 0x5749,
- 0x8865, 0x574B, 0x8866, 0x5752, 0x8867, 0x5753, 0x8868, 0x5754,
- 0x8869, 0x5755, 0x886A, 0x5756, 0x886B, 0x5758, 0x886C, 0x5759,
- 0x886D, 0x5762, 0x886E, 0x5763, 0x886F, 0x5765, 0x8870, 0x5767,
- 0x8871, 0x576C, 0x8872, 0x576E, 0x8873, 0x5770, 0x8874, 0x5771,
- 0x8875, 0x5772, 0x8876, 0x5774, 0x8877, 0x5775, 0x8878, 0x5778,
- 0x8879, 0x5779, 0x887A, 0x577A, 0x887B, 0x577D, 0x887C, 0x577E,
- 0x887D, 0x577F, 0x887E, 0x5780, 0x8880, 0x5781, 0x8881, 0x5787,
- 0x8882, 0x5788, 0x8883, 0x5789, 0x8884, 0x578A, 0x8885, 0x578D,
- 0x8886, 0x578E, 0x8887, 0x578F, 0x8888, 0x5790, 0x8889, 0x5791,
- 0x888A, 0x5794, 0x888B, 0x5795, 0x888C, 0x5796, 0x888D, 0x5797,
- 0x888E, 0x5798, 0x888F, 0x5799, 0x8890, 0x579A, 0x8891, 0x579C,
- 0x8892, 0x579D, 0x8893, 0x579E, 0x8894, 0x579F, 0x8895, 0x57A5,
- 0x8896, 0x57A8, 0x8897, 0x57AA, 0x8898, 0x57AC, 0x8899, 0x57AF,
- 0x889A, 0x57B0, 0x889B, 0x57B1, 0x889C, 0x57B3, 0x889D, 0x57B5,
- 0x889E, 0x57B6, 0x889F, 0x57B7, 0x88A0, 0x57B9, 0x88A1, 0x57BA,
- 0x88A2, 0x57BB, 0x88A3, 0x57BC, 0x88A4, 0x57BD, 0x88A5, 0x57BE,
- 0x88A6, 0x57BF, 0x88A7, 0x57C0, 0x88A8, 0x57C1, 0x88A9, 0x57C4,
- 0x88AA, 0x57C5, 0x88AB, 0x57C6, 0x88AC, 0x57C7, 0x88AD, 0x57C8,
- 0x88AE, 0x57C9, 0x88AF, 0x57CA, 0x88B0, 0x57CC, 0x88B1, 0x57CD,
- 0x88B2, 0x57D0, 0x88B3, 0x57D1, 0x88B4, 0x57D3, 0x88B5, 0x57D6,
- 0x88B6, 0x57D7, 0x88B7, 0x57DB, 0x88B8, 0x57DC, 0x88B9, 0x57DE,
- 0x88BA, 0x57E1, 0x88BB, 0x57E2, 0x88BC, 0x57E3, 0x88BD, 0x57E5,
- 0x88BE, 0x57E6, 0x88BF, 0x57E7, 0x88C0, 0x57E8, 0x88C1, 0x57E9,
- 0x88C2, 0x57EA, 0x88C3, 0x57EB, 0x88C4, 0x57EC, 0x88C5, 0x57EE,
- 0x88C6, 0x57F0, 0x88C7, 0x57F1, 0x88C8, 0x57F2, 0x88C9, 0x57F3,
- 0x88CA, 0x57F5, 0x88CB, 0x57F6, 0x88CC, 0x57F7, 0x88CD, 0x57FB,
- 0x88CE, 0x57FC, 0x88CF, 0x57FE, 0x88D0, 0x57FF, 0x88D1, 0x5801,
- 0x88D2, 0x5803, 0x88D3, 0x5804, 0x88D4, 0x5805, 0x88D5, 0x5808,
- 0x88D6, 0x5809, 0x88D7, 0x580A, 0x88D8, 0x580C, 0x88D9, 0x580E,
- 0x88DA, 0x580F, 0x88DB, 0x5810, 0x88DC, 0x5812, 0x88DD, 0x5813,
- 0x88DE, 0x5814, 0x88DF, 0x5816, 0x88E0, 0x5817, 0x88E1, 0x5818,
- 0x88E2, 0x581A, 0x88E3, 0x581B, 0x88E4, 0x581C, 0x88E5, 0x581D,
- 0x88E6, 0x581F, 0x88E7, 0x5822, 0x88E8, 0x5823, 0x88E9, 0x5825,
- 0x88EA, 0x5826, 0x88EB, 0x5827, 0x88EC, 0x5828, 0x88ED, 0x5829,
- 0x88EE, 0x582B, 0x88EF, 0x582C, 0x88F0, 0x582D, 0x88F1, 0x582E,
- 0x88F2, 0x582F, 0x88F3, 0x5831, 0x88F4, 0x5832, 0x88F5, 0x5833,
- 0x88F6, 0x5834, 0x88F7, 0x5836, 0x88F8, 0x5837, 0x88F9, 0x5838,
- 0x88FA, 0x5839, 0x88FB, 0x583A, 0x88FC, 0x583B, 0x88FD, 0x583C,
- 0x88FE, 0x583D, 0x8940, 0x583E, 0x8941, 0x583F, 0x8942, 0x5840,
- 0x8943, 0x5841, 0x8944, 0x5842, 0x8945, 0x5843, 0x8946, 0x5845,
- 0x8947, 0x5846, 0x8948, 0x5847, 0x8949, 0x5848, 0x894A, 0x5849,
- 0x894B, 0x584A, 0x894C, 0x584B, 0x894D, 0x584E, 0x894E, 0x584F,
- 0x894F, 0x5850, 0x8950, 0x5852, 0x8951, 0x5853, 0x8952, 0x5855,
- 0x8953, 0x5856, 0x8954, 0x5857, 0x8955, 0x5859, 0x8956, 0x585A,
- 0x8957, 0x585B, 0x8958, 0x585C, 0x8959, 0x585D, 0x895A, 0x585F,
- 0x895B, 0x5860, 0x895C, 0x5861, 0x895D, 0x5862, 0x895E, 0x5863,
- 0x895F, 0x5864, 0x8960, 0x5866, 0x8961, 0x5867, 0x8962, 0x5868,
- 0x8963, 0x5869, 0x8964, 0x586A, 0x8965, 0x586D, 0x8966, 0x586E,
- 0x8967, 0x586F, 0x8968, 0x5870, 0x8969, 0x5871, 0x896A, 0x5872,
- 0x896B, 0x5873, 0x896C, 0x5874, 0x896D, 0x5875, 0x896E, 0x5876,
- 0x896F, 0x5877, 0x8970, 0x5878, 0x8971, 0x5879, 0x8972, 0x587A,
- 0x8973, 0x587B, 0x8974, 0x587C, 0x8975, 0x587D, 0x8976, 0x587F,
- 0x8977, 0x5882, 0x8978, 0x5884, 0x8979, 0x5886, 0x897A, 0x5887,
- 0x897B, 0x5888, 0x897C, 0x588A, 0x897D, 0x588B, 0x897E, 0x588C,
- 0x8980, 0x588D, 0x8981, 0x588E, 0x8982, 0x588F, 0x8983, 0x5890,
- 0x8984, 0x5891, 0x8985, 0x5894, 0x8986, 0x5895, 0x8987, 0x5896,
- 0x8988, 0x5897, 0x8989, 0x5898, 0x898A, 0x589B, 0x898B, 0x589C,
- 0x898C, 0x589D, 0x898D, 0x58A0, 0x898E, 0x58A1, 0x898F, 0x58A2,
- 0x8990, 0x58A3, 0x8991, 0x58A4, 0x8992, 0x58A5, 0x8993, 0x58A6,
- 0x8994, 0x58A7, 0x8995, 0x58AA, 0x8996, 0x58AB, 0x8997, 0x58AC,
- 0x8998, 0x58AD, 0x8999, 0x58AE, 0x899A, 0x58AF, 0x899B, 0x58B0,
- 0x899C, 0x58B1, 0x899D, 0x58B2, 0x899E, 0x58B3, 0x899F, 0x58B4,
- 0x89A0, 0x58B5, 0x89A1, 0x58B6, 0x89A2, 0x58B7, 0x89A3, 0x58B8,
- 0x89A4, 0x58B9, 0x89A5, 0x58BA, 0x89A6, 0x58BB, 0x89A7, 0x58BD,
- 0x89A8, 0x58BE, 0x89A9, 0x58BF, 0x89AA, 0x58C0, 0x89AB, 0x58C2,
- 0x89AC, 0x58C3, 0x89AD, 0x58C4, 0x89AE, 0x58C6, 0x89AF, 0x58C7,
- 0x89B0, 0x58C8, 0x89B1, 0x58C9, 0x89B2, 0x58CA, 0x89B3, 0x58CB,
- 0x89B4, 0x58CC, 0x89B5, 0x58CD, 0x89B6, 0x58CE, 0x89B7, 0x58CF,
- 0x89B8, 0x58D0, 0x89B9, 0x58D2, 0x89BA, 0x58D3, 0x89BB, 0x58D4,
- 0x89BC, 0x58D6, 0x89BD, 0x58D7, 0x89BE, 0x58D8, 0x89BF, 0x58D9,
- 0x89C0, 0x58DA, 0x89C1, 0x58DB, 0x89C2, 0x58DC, 0x89C3, 0x58DD,
- 0x89C4, 0x58DE, 0x89C5, 0x58DF, 0x89C6, 0x58E0, 0x89C7, 0x58E1,
- 0x89C8, 0x58E2, 0x89C9, 0x58E3, 0x89CA, 0x58E5, 0x89CB, 0x58E6,
- 0x89CC, 0x58E7, 0x89CD, 0x58E8, 0x89CE, 0x58E9, 0x89CF, 0x58EA,
- 0x89D0, 0x58ED, 0x89D1, 0x58EF, 0x89D2, 0x58F1, 0x89D3, 0x58F2,
- 0x89D4, 0x58F4, 0x89D5, 0x58F5, 0x89D6, 0x58F7, 0x89D7, 0x58F8,
- 0x89D8, 0x58FA, 0x89D9, 0x58FB, 0x89DA, 0x58FC, 0x89DB, 0x58FD,
- 0x89DC, 0x58FE, 0x89DD, 0x58FF, 0x89DE, 0x5900, 0x89DF, 0x5901,
- 0x89E0, 0x5903, 0x89E1, 0x5905, 0x89E2, 0x5906, 0x89E3, 0x5908,
- 0x89E4, 0x5909, 0x89E5, 0x590A, 0x89E6, 0x590B, 0x89E7, 0x590C,
- 0x89E8, 0x590E, 0x89E9, 0x5910, 0x89EA, 0x5911, 0x89EB, 0x5912,
- 0x89EC, 0x5913, 0x89ED, 0x5917, 0x89EE, 0x5918, 0x89EF, 0x591B,
- 0x89F0, 0x591D, 0x89F1, 0x591E, 0x89F2, 0x5920, 0x89F3, 0x5921,
- 0x89F4, 0x5922, 0x89F5, 0x5923, 0x89F6, 0x5926, 0x89F7, 0x5928,
- 0x89F8, 0x592C, 0x89F9, 0x5930, 0x89FA, 0x5932, 0x89FB, 0x5933,
- 0x89FC, 0x5935, 0x89FD, 0x5936, 0x89FE, 0x593B, 0x8A40, 0x593D,
- 0x8A41, 0x593E, 0x8A42, 0x593F, 0x8A43, 0x5940, 0x8A44, 0x5943,
- 0x8A45, 0x5945, 0x8A46, 0x5946, 0x8A47, 0x594A, 0x8A48, 0x594C,
- 0x8A49, 0x594D, 0x8A4A, 0x5950, 0x8A4B, 0x5952, 0x8A4C, 0x5953,
- 0x8A4D, 0x5959, 0x8A4E, 0x595B, 0x8A4F, 0x595C, 0x8A50, 0x595D,
- 0x8A51, 0x595E, 0x8A52, 0x595F, 0x8A53, 0x5961, 0x8A54, 0x5963,
- 0x8A55, 0x5964, 0x8A56, 0x5966, 0x8A57, 0x5967, 0x8A58, 0x5968,
- 0x8A59, 0x5969, 0x8A5A, 0x596A, 0x8A5B, 0x596B, 0x8A5C, 0x596C,
- 0x8A5D, 0x596D, 0x8A5E, 0x596E, 0x8A5F, 0x596F, 0x8A60, 0x5970,
- 0x8A61, 0x5971, 0x8A62, 0x5972, 0x8A63, 0x5975, 0x8A64, 0x5977,
- 0x8A65, 0x597A, 0x8A66, 0x597B, 0x8A67, 0x597C, 0x8A68, 0x597E,
- 0x8A69, 0x597F, 0x8A6A, 0x5980, 0x8A6B, 0x5985, 0x8A6C, 0x5989,
- 0x8A6D, 0x598B, 0x8A6E, 0x598C, 0x8A6F, 0x598E, 0x8A70, 0x598F,
- 0x8A71, 0x5990, 0x8A72, 0x5991, 0x8A73, 0x5994, 0x8A74, 0x5995,
- 0x8A75, 0x5998, 0x8A76, 0x599A, 0x8A77, 0x599B, 0x8A78, 0x599C,
- 0x8A79, 0x599D, 0x8A7A, 0x599F, 0x8A7B, 0x59A0, 0x8A7C, 0x59A1,
- 0x8A7D, 0x59A2, 0x8A7E, 0x59A6, 0x8A80, 0x59A7, 0x8A81, 0x59AC,
- 0x8A82, 0x59AD, 0x8A83, 0x59B0, 0x8A84, 0x59B1, 0x8A85, 0x59B3,
- 0x8A86, 0x59B4, 0x8A87, 0x59B5, 0x8A88, 0x59B6, 0x8A89, 0x59B7,
- 0x8A8A, 0x59B8, 0x8A8B, 0x59BA, 0x8A8C, 0x59BC, 0x8A8D, 0x59BD,
- 0x8A8E, 0x59BF, 0x8A8F, 0x59C0, 0x8A90, 0x59C1, 0x8A91, 0x59C2,
- 0x8A92, 0x59C3, 0x8A93, 0x59C4, 0x8A94, 0x59C5, 0x8A95, 0x59C7,
- 0x8A96, 0x59C8, 0x8A97, 0x59C9, 0x8A98, 0x59CC, 0x8A99, 0x59CD,
- 0x8A9A, 0x59CE, 0x8A9B, 0x59CF, 0x8A9C, 0x59D5, 0x8A9D, 0x59D6,
- 0x8A9E, 0x59D9, 0x8A9F, 0x59DB, 0x8AA0, 0x59DE, 0x8AA1, 0x59DF,
- 0x8AA2, 0x59E0, 0x8AA3, 0x59E1, 0x8AA4, 0x59E2, 0x8AA5, 0x59E4,
- 0x8AA6, 0x59E6, 0x8AA7, 0x59E7, 0x8AA8, 0x59E9, 0x8AA9, 0x59EA,
- 0x8AAA, 0x59EB, 0x8AAB, 0x59ED, 0x8AAC, 0x59EE, 0x8AAD, 0x59EF,
- 0x8AAE, 0x59F0, 0x8AAF, 0x59F1, 0x8AB0, 0x59F2, 0x8AB1, 0x59F3,
- 0x8AB2, 0x59F4, 0x8AB3, 0x59F5, 0x8AB4, 0x59F6, 0x8AB5, 0x59F7,
- 0x8AB6, 0x59F8, 0x8AB7, 0x59FA, 0x8AB8, 0x59FC, 0x8AB9, 0x59FD,
- 0x8ABA, 0x59FE, 0x8ABB, 0x5A00, 0x8ABC, 0x5A02, 0x8ABD, 0x5A0A,
- 0x8ABE, 0x5A0B, 0x8ABF, 0x5A0D, 0x8AC0, 0x5A0E, 0x8AC1, 0x5A0F,
- 0x8AC2, 0x5A10, 0x8AC3, 0x5A12, 0x8AC4, 0x5A14, 0x8AC5, 0x5A15,
- 0x8AC6, 0x5A16, 0x8AC7, 0x5A17, 0x8AC8, 0x5A19, 0x8AC9, 0x5A1A,
- 0x8ACA, 0x5A1B, 0x8ACB, 0x5A1D, 0x8ACC, 0x5A1E, 0x8ACD, 0x5A21,
- 0x8ACE, 0x5A22, 0x8ACF, 0x5A24, 0x8AD0, 0x5A26, 0x8AD1, 0x5A27,
- 0x8AD2, 0x5A28, 0x8AD3, 0x5A2A, 0x8AD4, 0x5A2B, 0x8AD5, 0x5A2C,
- 0x8AD6, 0x5A2D, 0x8AD7, 0x5A2E, 0x8AD8, 0x5A2F, 0x8AD9, 0x5A30,
- 0x8ADA, 0x5A33, 0x8ADB, 0x5A35, 0x8ADC, 0x5A37, 0x8ADD, 0x5A38,
- 0x8ADE, 0x5A39, 0x8ADF, 0x5A3A, 0x8AE0, 0x5A3B, 0x8AE1, 0x5A3D,
- 0x8AE2, 0x5A3E, 0x8AE3, 0x5A3F, 0x8AE4, 0x5A41, 0x8AE5, 0x5A42,
- 0x8AE6, 0x5A43, 0x8AE7, 0x5A44, 0x8AE8, 0x5A45, 0x8AE9, 0x5A47,
- 0x8AEA, 0x5A48, 0x8AEB, 0x5A4B, 0x8AEC, 0x5A4C, 0x8AED, 0x5A4D,
- 0x8AEE, 0x5A4E, 0x8AEF, 0x5A4F, 0x8AF0, 0x5A50, 0x8AF1, 0x5A51,
- 0x8AF2, 0x5A52, 0x8AF3, 0x5A53, 0x8AF4, 0x5A54, 0x8AF5, 0x5A56,
- 0x8AF6, 0x5A57, 0x8AF7, 0x5A58, 0x8AF8, 0x5A59, 0x8AF9, 0x5A5B,
- 0x8AFA, 0x5A5C, 0x8AFB, 0x5A5D, 0x8AFC, 0x5A5E, 0x8AFD, 0x5A5F,
- 0x8AFE, 0x5A60, 0x8B40, 0x5A61, 0x8B41, 0x5A63, 0x8B42, 0x5A64,
- 0x8B43, 0x5A65, 0x8B44, 0x5A66, 0x8B45, 0x5A68, 0x8B46, 0x5A69,
- 0x8B47, 0x5A6B, 0x8B48, 0x5A6C, 0x8B49, 0x5A6D, 0x8B4A, 0x5A6E,
- 0x8B4B, 0x5A6F, 0x8B4C, 0x5A70, 0x8B4D, 0x5A71, 0x8B4E, 0x5A72,
- 0x8B4F, 0x5A73, 0x8B50, 0x5A78, 0x8B51, 0x5A79, 0x8B52, 0x5A7B,
- 0x8B53, 0x5A7C, 0x8B54, 0x5A7D, 0x8B55, 0x5A7E, 0x8B56, 0x5A80,
- 0x8B57, 0x5A81, 0x8B58, 0x5A82, 0x8B59, 0x5A83, 0x8B5A, 0x5A84,
- 0x8B5B, 0x5A85, 0x8B5C, 0x5A86, 0x8B5D, 0x5A87, 0x8B5E, 0x5A88,
- 0x8B5F, 0x5A89, 0x8B60, 0x5A8A, 0x8B61, 0x5A8B, 0x8B62, 0x5A8C,
- 0x8B63, 0x5A8D, 0x8B64, 0x5A8E, 0x8B65, 0x5A8F, 0x8B66, 0x5A90,
- 0x8B67, 0x5A91, 0x8B68, 0x5A93, 0x8B69, 0x5A94, 0x8B6A, 0x5A95,
- 0x8B6B, 0x5A96, 0x8B6C, 0x5A97, 0x8B6D, 0x5A98, 0x8B6E, 0x5A99,
- 0x8B6F, 0x5A9C, 0x8B70, 0x5A9D, 0x8B71, 0x5A9E, 0x8B72, 0x5A9F,
- 0x8B73, 0x5AA0, 0x8B74, 0x5AA1, 0x8B75, 0x5AA2, 0x8B76, 0x5AA3,
- 0x8B77, 0x5AA4, 0x8B78, 0x5AA5, 0x8B79, 0x5AA6, 0x8B7A, 0x5AA7,
- 0x8B7B, 0x5AA8, 0x8B7C, 0x5AA9, 0x8B7D, 0x5AAB, 0x8B7E, 0x5AAC,
- 0x8B80, 0x5AAD, 0x8B81, 0x5AAE, 0x8B82, 0x5AAF, 0x8B83, 0x5AB0,
- 0x8B84, 0x5AB1, 0x8B85, 0x5AB4, 0x8B86, 0x5AB6, 0x8B87, 0x5AB7,
- 0x8B88, 0x5AB9, 0x8B89, 0x5ABA, 0x8B8A, 0x5ABB, 0x8B8B, 0x5ABC,
- 0x8B8C, 0x5ABD, 0x8B8D, 0x5ABF, 0x8B8E, 0x5AC0, 0x8B8F, 0x5AC3,
- 0x8B90, 0x5AC4, 0x8B91, 0x5AC5, 0x8B92, 0x5AC6, 0x8B93, 0x5AC7,
- 0x8B94, 0x5AC8, 0x8B95, 0x5ACA, 0x8B96, 0x5ACB, 0x8B97, 0x5ACD,
- 0x8B98, 0x5ACE, 0x8B99, 0x5ACF, 0x8B9A, 0x5AD0, 0x8B9B, 0x5AD1,
- 0x8B9C, 0x5AD3, 0x8B9D, 0x5AD5, 0x8B9E, 0x5AD7, 0x8B9F, 0x5AD9,
- 0x8BA0, 0x5ADA, 0x8BA1, 0x5ADB, 0x8BA2, 0x5ADD, 0x8BA3, 0x5ADE,
- 0x8BA4, 0x5ADF, 0x8BA5, 0x5AE2, 0x8BA6, 0x5AE4, 0x8BA7, 0x5AE5,
- 0x8BA8, 0x5AE7, 0x8BA9, 0x5AE8, 0x8BAA, 0x5AEA, 0x8BAB, 0x5AEC,
- 0x8BAC, 0x5AED, 0x8BAD, 0x5AEE, 0x8BAE, 0x5AEF, 0x8BAF, 0x5AF0,
- 0x8BB0, 0x5AF2, 0x8BB1, 0x5AF3, 0x8BB2, 0x5AF4, 0x8BB3, 0x5AF5,
- 0x8BB4, 0x5AF6, 0x8BB5, 0x5AF7, 0x8BB6, 0x5AF8, 0x8BB7, 0x5AF9,
- 0x8BB8, 0x5AFA, 0x8BB9, 0x5AFB, 0x8BBA, 0x5AFC, 0x8BBB, 0x5AFD,
- 0x8BBC, 0x5AFE, 0x8BBD, 0x5AFF, 0x8BBE, 0x5B00, 0x8BBF, 0x5B01,
- 0x8BC0, 0x5B02, 0x8BC1, 0x5B03, 0x8BC2, 0x5B04, 0x8BC3, 0x5B05,
- 0x8BC4, 0x5B06, 0x8BC5, 0x5B07, 0x8BC6, 0x5B08, 0x8BC7, 0x5B0A,
- 0x8BC8, 0x5B0B, 0x8BC9, 0x5B0C, 0x8BCA, 0x5B0D, 0x8BCB, 0x5B0E,
- 0x8BCC, 0x5B0F, 0x8BCD, 0x5B10, 0x8BCE, 0x5B11, 0x8BCF, 0x5B12,
- 0x8BD0, 0x5B13, 0x8BD1, 0x5B14, 0x8BD2, 0x5B15, 0x8BD3, 0x5B18,
- 0x8BD4, 0x5B19, 0x8BD5, 0x5B1A, 0x8BD6, 0x5B1B, 0x8BD7, 0x5B1C,
- 0x8BD8, 0x5B1D, 0x8BD9, 0x5B1E, 0x8BDA, 0x5B1F, 0x8BDB, 0x5B20,
- 0x8BDC, 0x5B21, 0x8BDD, 0x5B22, 0x8BDE, 0x5B23, 0x8BDF, 0x5B24,
- 0x8BE0, 0x5B25, 0x8BE1, 0x5B26, 0x8BE2, 0x5B27, 0x8BE3, 0x5B28,
- 0x8BE4, 0x5B29, 0x8BE5, 0x5B2A, 0x8BE6, 0x5B2B, 0x8BE7, 0x5B2C,
- 0x8BE8, 0x5B2D, 0x8BE9, 0x5B2E, 0x8BEA, 0x5B2F, 0x8BEB, 0x5B30,
- 0x8BEC, 0x5B31, 0x8BED, 0x5B33, 0x8BEE, 0x5B35, 0x8BEF, 0x5B36,
- 0x8BF0, 0x5B38, 0x8BF1, 0x5B39, 0x8BF2, 0x5B3A, 0x8BF3, 0x5B3B,
- 0x8BF4, 0x5B3C, 0x8BF5, 0x5B3D, 0x8BF6, 0x5B3E, 0x8BF7, 0x5B3F,
- 0x8BF8, 0x5B41, 0x8BF9, 0x5B42, 0x8BFA, 0x5B43, 0x8BFB, 0x5B44,
- 0x8BFC, 0x5B45, 0x8BFD, 0x5B46, 0x8BFE, 0x5B47, 0x8C40, 0x5B48,
- 0x8C41, 0x5B49, 0x8C42, 0x5B4A, 0x8C43, 0x5B4B, 0x8C44, 0x5B4C,
- 0x8C45, 0x5B4D, 0x8C46, 0x5B4E, 0x8C47, 0x5B4F, 0x8C48, 0x5B52,
- 0x8C49, 0x5B56, 0x8C4A, 0x5B5E, 0x8C4B, 0x5B60, 0x8C4C, 0x5B61,
- 0x8C4D, 0x5B67, 0x8C4E, 0x5B68, 0x8C4F, 0x5B6B, 0x8C50, 0x5B6D,
- 0x8C51, 0x5B6E, 0x8C52, 0x5B6F, 0x8C53, 0x5B72, 0x8C54, 0x5B74,
- 0x8C55, 0x5B76, 0x8C56, 0x5B77, 0x8C57, 0x5B78, 0x8C58, 0x5B79,
- 0x8C59, 0x5B7B, 0x8C5A, 0x5B7C, 0x8C5B, 0x5B7E, 0x8C5C, 0x5B7F,
- 0x8C5D, 0x5B82, 0x8C5E, 0x5B86, 0x8C5F, 0x5B8A, 0x8C60, 0x5B8D,
- 0x8C61, 0x5B8E, 0x8C62, 0x5B90, 0x8C63, 0x5B91, 0x8C64, 0x5B92,
- 0x8C65, 0x5B94, 0x8C66, 0x5B96, 0x8C67, 0x5B9F, 0x8C68, 0x5BA7,
- 0x8C69, 0x5BA8, 0x8C6A, 0x5BA9, 0x8C6B, 0x5BAC, 0x8C6C, 0x5BAD,
- 0x8C6D, 0x5BAE, 0x8C6E, 0x5BAF, 0x8C6F, 0x5BB1, 0x8C70, 0x5BB2,
- 0x8C71, 0x5BB7, 0x8C72, 0x5BBA, 0x8C73, 0x5BBB, 0x8C74, 0x5BBC,
- 0x8C75, 0x5BC0, 0x8C76, 0x5BC1, 0x8C77, 0x5BC3, 0x8C78, 0x5BC8,
- 0x8C79, 0x5BC9, 0x8C7A, 0x5BCA, 0x8C7B, 0x5BCB, 0x8C7C, 0x5BCD,
- 0x8C7D, 0x5BCE, 0x8C7E, 0x5BCF, 0x8C80, 0x5BD1, 0x8C81, 0x5BD4,
- 0x8C82, 0x5BD5, 0x8C83, 0x5BD6, 0x8C84, 0x5BD7, 0x8C85, 0x5BD8,
- 0x8C86, 0x5BD9, 0x8C87, 0x5BDA, 0x8C88, 0x5BDB, 0x8C89, 0x5BDC,
- 0x8C8A, 0x5BE0, 0x8C8B, 0x5BE2, 0x8C8C, 0x5BE3, 0x8C8D, 0x5BE6,
- 0x8C8E, 0x5BE7, 0x8C8F, 0x5BE9, 0x8C90, 0x5BEA, 0x8C91, 0x5BEB,
- 0x8C92, 0x5BEC, 0x8C93, 0x5BED, 0x8C94, 0x5BEF, 0x8C95, 0x5BF1,
- 0x8C96, 0x5BF2, 0x8C97, 0x5BF3, 0x8C98, 0x5BF4, 0x8C99, 0x5BF5,
- 0x8C9A, 0x5BF6, 0x8C9B, 0x5BF7, 0x8C9C, 0x5BFD, 0x8C9D, 0x5BFE,
- 0x8C9E, 0x5C00, 0x8C9F, 0x5C02, 0x8CA0, 0x5C03, 0x8CA1, 0x5C05,
- 0x8CA2, 0x5C07, 0x8CA3, 0x5C08, 0x8CA4, 0x5C0B, 0x8CA5, 0x5C0C,
- 0x8CA6, 0x5C0D, 0x8CA7, 0x5C0E, 0x8CA8, 0x5C10, 0x8CA9, 0x5C12,
- 0x8CAA, 0x5C13, 0x8CAB, 0x5C17, 0x8CAC, 0x5C19, 0x8CAD, 0x5C1B,
- 0x8CAE, 0x5C1E, 0x8CAF, 0x5C1F, 0x8CB0, 0x5C20, 0x8CB1, 0x5C21,
- 0x8CB2, 0x5C23, 0x8CB3, 0x5C26, 0x8CB4, 0x5C28, 0x8CB5, 0x5C29,
- 0x8CB6, 0x5C2A, 0x8CB7, 0x5C2B, 0x8CB8, 0x5C2D, 0x8CB9, 0x5C2E,
- 0x8CBA, 0x5C2F, 0x8CBB, 0x5C30, 0x8CBC, 0x5C32, 0x8CBD, 0x5C33,
- 0x8CBE, 0x5C35, 0x8CBF, 0x5C36, 0x8CC0, 0x5C37, 0x8CC1, 0x5C43,
- 0x8CC2, 0x5C44, 0x8CC3, 0x5C46, 0x8CC4, 0x5C47, 0x8CC5, 0x5C4C,
- 0x8CC6, 0x5C4D, 0x8CC7, 0x5C52, 0x8CC8, 0x5C53, 0x8CC9, 0x5C54,
- 0x8CCA, 0x5C56, 0x8CCB, 0x5C57, 0x8CCC, 0x5C58, 0x8CCD, 0x5C5A,
- 0x8CCE, 0x5C5B, 0x8CCF, 0x5C5C, 0x8CD0, 0x5C5D, 0x8CD1, 0x5C5F,
- 0x8CD2, 0x5C62, 0x8CD3, 0x5C64, 0x8CD4, 0x5C67, 0x8CD5, 0x5C68,
- 0x8CD6, 0x5C69, 0x8CD7, 0x5C6A, 0x8CD8, 0x5C6B, 0x8CD9, 0x5C6C,
- 0x8CDA, 0x5C6D, 0x8CDB, 0x5C70, 0x8CDC, 0x5C72, 0x8CDD, 0x5C73,
- 0x8CDE, 0x5C74, 0x8CDF, 0x5C75, 0x8CE0, 0x5C76, 0x8CE1, 0x5C77,
- 0x8CE2, 0x5C78, 0x8CE3, 0x5C7B, 0x8CE4, 0x5C7C, 0x8CE5, 0x5C7D,
- 0x8CE6, 0x5C7E, 0x8CE7, 0x5C80, 0x8CE8, 0x5C83, 0x8CE9, 0x5C84,
- 0x8CEA, 0x5C85, 0x8CEB, 0x5C86, 0x8CEC, 0x5C87, 0x8CED, 0x5C89,
- 0x8CEE, 0x5C8A, 0x8CEF, 0x5C8B, 0x8CF0, 0x5C8E, 0x8CF1, 0x5C8F,
- 0x8CF2, 0x5C92, 0x8CF3, 0x5C93, 0x8CF4, 0x5C95, 0x8CF5, 0x5C9D,
- 0x8CF6, 0x5C9E, 0x8CF7, 0x5C9F, 0x8CF8, 0x5CA0, 0x8CF9, 0x5CA1,
- 0x8CFA, 0x5CA4, 0x8CFB, 0x5CA5, 0x8CFC, 0x5CA6, 0x8CFD, 0x5CA7,
- 0x8CFE, 0x5CA8, 0x8D40, 0x5CAA, 0x8D41, 0x5CAE, 0x8D42, 0x5CAF,
- 0x8D43, 0x5CB0, 0x8D44, 0x5CB2, 0x8D45, 0x5CB4, 0x8D46, 0x5CB6,
- 0x8D47, 0x5CB9, 0x8D48, 0x5CBA, 0x8D49, 0x5CBB, 0x8D4A, 0x5CBC,
- 0x8D4B, 0x5CBE, 0x8D4C, 0x5CC0, 0x8D4D, 0x5CC2, 0x8D4E, 0x5CC3,
- 0x8D4F, 0x5CC5, 0x8D50, 0x5CC6, 0x8D51, 0x5CC7, 0x8D52, 0x5CC8,
- 0x8D53, 0x5CC9, 0x8D54, 0x5CCA, 0x8D55, 0x5CCC, 0x8D56, 0x5CCD,
- 0x8D57, 0x5CCE, 0x8D58, 0x5CCF, 0x8D59, 0x5CD0, 0x8D5A, 0x5CD1,
- 0x8D5B, 0x5CD3, 0x8D5C, 0x5CD4, 0x8D5D, 0x5CD5, 0x8D5E, 0x5CD6,
- 0x8D5F, 0x5CD7, 0x8D60, 0x5CD8, 0x8D61, 0x5CDA, 0x8D62, 0x5CDB,
- 0x8D63, 0x5CDC, 0x8D64, 0x5CDD, 0x8D65, 0x5CDE, 0x8D66, 0x5CDF,
- 0x8D67, 0x5CE0, 0x8D68, 0x5CE2, 0x8D69, 0x5CE3, 0x8D6A, 0x5CE7,
- 0x8D6B, 0x5CE9, 0x8D6C, 0x5CEB, 0x8D6D, 0x5CEC, 0x8D6E, 0x5CEE,
- 0x8D6F, 0x5CEF, 0x8D70, 0x5CF1, 0x8D71, 0x5CF2, 0x8D72, 0x5CF3,
- 0x8D73, 0x5CF4, 0x8D74, 0x5CF5, 0x8D75, 0x5CF6, 0x8D76, 0x5CF7,
- 0x8D77, 0x5CF8, 0x8D78, 0x5CF9, 0x8D79, 0x5CFA, 0x8D7A, 0x5CFC,
- 0x8D7B, 0x5CFD, 0x8D7C, 0x5CFE, 0x8D7D, 0x5CFF, 0x8D7E, 0x5D00,
- 0x8D80, 0x5D01, 0x8D81, 0x5D04, 0x8D82, 0x5D05, 0x8D83, 0x5D08,
- 0x8D84, 0x5D09, 0x8D85, 0x5D0A, 0x8D86, 0x5D0B, 0x8D87, 0x5D0C,
- 0x8D88, 0x5D0D, 0x8D89, 0x5D0F, 0x8D8A, 0x5D10, 0x8D8B, 0x5D11,
- 0x8D8C, 0x5D12, 0x8D8D, 0x5D13, 0x8D8E, 0x5D15, 0x8D8F, 0x5D17,
- 0x8D90, 0x5D18, 0x8D91, 0x5D19, 0x8D92, 0x5D1A, 0x8D93, 0x5D1C,
- 0x8D94, 0x5D1D, 0x8D95, 0x5D1F, 0x8D96, 0x5D20, 0x8D97, 0x5D21,
- 0x8D98, 0x5D22, 0x8D99, 0x5D23, 0x8D9A, 0x5D25, 0x8D9B, 0x5D28,
- 0x8D9C, 0x5D2A, 0x8D9D, 0x5D2B, 0x8D9E, 0x5D2C, 0x8D9F, 0x5D2F,
- 0x8DA0, 0x5D30, 0x8DA1, 0x5D31, 0x8DA2, 0x5D32, 0x8DA3, 0x5D33,
- 0x8DA4, 0x5D35, 0x8DA5, 0x5D36, 0x8DA6, 0x5D37, 0x8DA7, 0x5D38,
- 0x8DA8, 0x5D39, 0x8DA9, 0x5D3A, 0x8DAA, 0x5D3B, 0x8DAB, 0x5D3C,
- 0x8DAC, 0x5D3F, 0x8DAD, 0x5D40, 0x8DAE, 0x5D41, 0x8DAF, 0x5D42,
- 0x8DB0, 0x5D43, 0x8DB1, 0x5D44, 0x8DB2, 0x5D45, 0x8DB3, 0x5D46,
- 0x8DB4, 0x5D48, 0x8DB5, 0x5D49, 0x8DB6, 0x5D4D, 0x8DB7, 0x5D4E,
- 0x8DB8, 0x5D4F, 0x8DB9, 0x5D50, 0x8DBA, 0x5D51, 0x8DBB, 0x5D52,
- 0x8DBC, 0x5D53, 0x8DBD, 0x5D54, 0x8DBE, 0x5D55, 0x8DBF, 0x5D56,
- 0x8DC0, 0x5D57, 0x8DC1, 0x5D59, 0x8DC2, 0x5D5A, 0x8DC3, 0x5D5C,
- 0x8DC4, 0x5D5E, 0x8DC5, 0x5D5F, 0x8DC6, 0x5D60, 0x8DC7, 0x5D61,
- 0x8DC8, 0x5D62, 0x8DC9, 0x5D63, 0x8DCA, 0x5D64, 0x8DCB, 0x5D65,
- 0x8DCC, 0x5D66, 0x8DCD, 0x5D67, 0x8DCE, 0x5D68, 0x8DCF, 0x5D6A,
- 0x8DD0, 0x5D6D, 0x8DD1, 0x5D6E, 0x8DD2, 0x5D70, 0x8DD3, 0x5D71,
- 0x8DD4, 0x5D72, 0x8DD5, 0x5D73, 0x8DD6, 0x5D75, 0x8DD7, 0x5D76,
- 0x8DD8, 0x5D77, 0x8DD9, 0x5D78, 0x8DDA, 0x5D79, 0x8DDB, 0x5D7A,
- 0x8DDC, 0x5D7B, 0x8DDD, 0x5D7C, 0x8DDE, 0x5D7D, 0x8DDF, 0x5D7E,
- 0x8DE0, 0x5D7F, 0x8DE1, 0x5D80, 0x8DE2, 0x5D81, 0x8DE3, 0x5D83,
- 0x8DE4, 0x5D84, 0x8DE5, 0x5D85, 0x8DE6, 0x5D86, 0x8DE7, 0x5D87,
- 0x8DE8, 0x5D88, 0x8DE9, 0x5D89, 0x8DEA, 0x5D8A, 0x8DEB, 0x5D8B,
- 0x8DEC, 0x5D8C, 0x8DED, 0x5D8D, 0x8DEE, 0x5D8E, 0x8DEF, 0x5D8F,
- 0x8DF0, 0x5D90, 0x8DF1, 0x5D91, 0x8DF2, 0x5D92, 0x8DF3, 0x5D93,
- 0x8DF4, 0x5D94, 0x8DF5, 0x5D95, 0x8DF6, 0x5D96, 0x8DF7, 0x5D97,
- 0x8DF8, 0x5D98, 0x8DF9, 0x5D9A, 0x8DFA, 0x5D9B, 0x8DFB, 0x5D9C,
- 0x8DFC, 0x5D9E, 0x8DFD, 0x5D9F, 0x8DFE, 0x5DA0, 0x8E40, 0x5DA1,
- 0x8E41, 0x5DA2, 0x8E42, 0x5DA3, 0x8E43, 0x5DA4, 0x8E44, 0x5DA5,
- 0x8E45, 0x5DA6, 0x8E46, 0x5DA7, 0x8E47, 0x5DA8, 0x8E48, 0x5DA9,
- 0x8E49, 0x5DAA, 0x8E4A, 0x5DAB, 0x8E4B, 0x5DAC, 0x8E4C, 0x5DAD,
- 0x8E4D, 0x5DAE, 0x8E4E, 0x5DAF, 0x8E4F, 0x5DB0, 0x8E50, 0x5DB1,
- 0x8E51, 0x5DB2, 0x8E52, 0x5DB3, 0x8E53, 0x5DB4, 0x8E54, 0x5DB5,
- 0x8E55, 0x5DB6, 0x8E56, 0x5DB8, 0x8E57, 0x5DB9, 0x8E58, 0x5DBA,
- 0x8E59, 0x5DBB, 0x8E5A, 0x5DBC, 0x8E5B, 0x5DBD, 0x8E5C, 0x5DBE,
- 0x8E5D, 0x5DBF, 0x8E5E, 0x5DC0, 0x8E5F, 0x5DC1, 0x8E60, 0x5DC2,
- 0x8E61, 0x5DC3, 0x8E62, 0x5DC4, 0x8E63, 0x5DC6, 0x8E64, 0x5DC7,
- 0x8E65, 0x5DC8, 0x8E66, 0x5DC9, 0x8E67, 0x5DCA, 0x8E68, 0x5DCB,
- 0x8E69, 0x5DCC, 0x8E6A, 0x5DCE, 0x8E6B, 0x5DCF, 0x8E6C, 0x5DD0,
- 0x8E6D, 0x5DD1, 0x8E6E, 0x5DD2, 0x8E6F, 0x5DD3, 0x8E70, 0x5DD4,
- 0x8E71, 0x5DD5, 0x8E72, 0x5DD6, 0x8E73, 0x5DD7, 0x8E74, 0x5DD8,
- 0x8E75, 0x5DD9, 0x8E76, 0x5DDA, 0x8E77, 0x5DDC, 0x8E78, 0x5DDF,
- 0x8E79, 0x5DE0, 0x8E7A, 0x5DE3, 0x8E7B, 0x5DE4, 0x8E7C, 0x5DEA,
- 0x8E7D, 0x5DEC, 0x8E7E, 0x5DED, 0x8E80, 0x5DF0, 0x8E81, 0x5DF5,
- 0x8E82, 0x5DF6, 0x8E83, 0x5DF8, 0x8E84, 0x5DF9, 0x8E85, 0x5DFA,
- 0x8E86, 0x5DFB, 0x8E87, 0x5DFC, 0x8E88, 0x5DFF, 0x8E89, 0x5E00,
- 0x8E8A, 0x5E04, 0x8E8B, 0x5E07, 0x8E8C, 0x5E09, 0x8E8D, 0x5E0A,
- 0x8E8E, 0x5E0B, 0x8E8F, 0x5E0D, 0x8E90, 0x5E0E, 0x8E91, 0x5E12,
- 0x8E92, 0x5E13, 0x8E93, 0x5E17, 0x8E94, 0x5E1E, 0x8E95, 0x5E1F,
- 0x8E96, 0x5E20, 0x8E97, 0x5E21, 0x8E98, 0x5E22, 0x8E99, 0x5E23,
- 0x8E9A, 0x5E24, 0x8E9B, 0x5E25, 0x8E9C, 0x5E28, 0x8E9D, 0x5E29,
- 0x8E9E, 0x5E2A, 0x8E9F, 0x5E2B, 0x8EA0, 0x5E2C, 0x8EA1, 0x5E2F,
- 0x8EA2, 0x5E30, 0x8EA3, 0x5E32, 0x8EA4, 0x5E33, 0x8EA5, 0x5E34,
- 0x8EA6, 0x5E35, 0x8EA7, 0x5E36, 0x8EA8, 0x5E39, 0x8EA9, 0x5E3A,
- 0x8EAA, 0x5E3E, 0x8EAB, 0x5E3F, 0x8EAC, 0x5E40, 0x8EAD, 0x5E41,
- 0x8EAE, 0x5E43, 0x8EAF, 0x5E46, 0x8EB0, 0x5E47, 0x8EB1, 0x5E48,
- 0x8EB2, 0x5E49, 0x8EB3, 0x5E4A, 0x8EB4, 0x5E4B, 0x8EB5, 0x5E4D,
- 0x8EB6, 0x5E4E, 0x8EB7, 0x5E4F, 0x8EB8, 0x5E50, 0x8EB9, 0x5E51,
- 0x8EBA, 0x5E52, 0x8EBB, 0x5E53, 0x8EBC, 0x5E56, 0x8EBD, 0x5E57,
- 0x8EBE, 0x5E58, 0x8EBF, 0x5E59, 0x8EC0, 0x5E5A, 0x8EC1, 0x5E5C,
- 0x8EC2, 0x5E5D, 0x8EC3, 0x5E5F, 0x8EC4, 0x5E60, 0x8EC5, 0x5E63,
- 0x8EC6, 0x5E64, 0x8EC7, 0x5E65, 0x8EC8, 0x5E66, 0x8EC9, 0x5E67,
- 0x8ECA, 0x5E68, 0x8ECB, 0x5E69, 0x8ECC, 0x5E6A, 0x8ECD, 0x5E6B,
- 0x8ECE, 0x5E6C, 0x8ECF, 0x5E6D, 0x8ED0, 0x5E6E, 0x8ED1, 0x5E6F,
- 0x8ED2, 0x5E70, 0x8ED3, 0x5E71, 0x8ED4, 0x5E75, 0x8ED5, 0x5E77,
- 0x8ED6, 0x5E79, 0x8ED7, 0x5E7E, 0x8ED8, 0x5E81, 0x8ED9, 0x5E82,
- 0x8EDA, 0x5E83, 0x8EDB, 0x5E85, 0x8EDC, 0x5E88, 0x8EDD, 0x5E89,
- 0x8EDE, 0x5E8C, 0x8EDF, 0x5E8D, 0x8EE0, 0x5E8E, 0x8EE1, 0x5E92,
- 0x8EE2, 0x5E98, 0x8EE3, 0x5E9B, 0x8EE4, 0x5E9D, 0x8EE5, 0x5EA1,
- 0x8EE6, 0x5EA2, 0x8EE7, 0x5EA3, 0x8EE8, 0x5EA4, 0x8EE9, 0x5EA8,
- 0x8EEA, 0x5EA9, 0x8EEB, 0x5EAA, 0x8EEC, 0x5EAB, 0x8EED, 0x5EAC,
- 0x8EEE, 0x5EAE, 0x8EEF, 0x5EAF, 0x8EF0, 0x5EB0, 0x8EF1, 0x5EB1,
- 0x8EF2, 0x5EB2, 0x8EF3, 0x5EB4, 0x8EF4, 0x5EBA, 0x8EF5, 0x5EBB,
- 0x8EF6, 0x5EBC, 0x8EF7, 0x5EBD, 0x8EF8, 0x5EBF, 0x8EF9, 0x5EC0,
- 0x8EFA, 0x5EC1, 0x8EFB, 0x5EC2, 0x8EFC, 0x5EC3, 0x8EFD, 0x5EC4,
- 0x8EFE, 0x5EC5, 0x8F40, 0x5EC6, 0x8F41, 0x5EC7, 0x8F42, 0x5EC8,
- 0x8F43, 0x5ECB, 0x8F44, 0x5ECC, 0x8F45, 0x5ECD, 0x8F46, 0x5ECE,
- 0x8F47, 0x5ECF, 0x8F48, 0x5ED0, 0x8F49, 0x5ED4, 0x8F4A, 0x5ED5,
- 0x8F4B, 0x5ED7, 0x8F4C, 0x5ED8, 0x8F4D, 0x5ED9, 0x8F4E, 0x5EDA,
- 0x8F4F, 0x5EDC, 0x8F50, 0x5EDD, 0x8F51, 0x5EDE, 0x8F52, 0x5EDF,
- 0x8F53, 0x5EE0, 0x8F54, 0x5EE1, 0x8F55, 0x5EE2, 0x8F56, 0x5EE3,
- 0x8F57, 0x5EE4, 0x8F58, 0x5EE5, 0x8F59, 0x5EE6, 0x8F5A, 0x5EE7,
- 0x8F5B, 0x5EE9, 0x8F5C, 0x5EEB, 0x8F5D, 0x5EEC, 0x8F5E, 0x5EED,
- 0x8F5F, 0x5EEE, 0x8F60, 0x5EEF, 0x8F61, 0x5EF0, 0x8F62, 0x5EF1,
- 0x8F63, 0x5EF2, 0x8F64, 0x5EF3, 0x8F65, 0x5EF5, 0x8F66, 0x5EF8,
- 0x8F67, 0x5EF9, 0x8F68, 0x5EFB, 0x8F69, 0x5EFC, 0x8F6A, 0x5EFD,
- 0x8F6B, 0x5F05, 0x8F6C, 0x5F06, 0x8F6D, 0x5F07, 0x8F6E, 0x5F09,
- 0x8F6F, 0x5F0C, 0x8F70, 0x5F0D, 0x8F71, 0x5F0E, 0x8F72, 0x5F10,
- 0x8F73, 0x5F12, 0x8F74, 0x5F14, 0x8F75, 0x5F16, 0x8F76, 0x5F19,
- 0x8F77, 0x5F1A, 0x8F78, 0x5F1C, 0x8F79, 0x5F1D, 0x8F7A, 0x5F1E,
- 0x8F7B, 0x5F21, 0x8F7C, 0x5F22, 0x8F7D, 0x5F23, 0x8F7E, 0x5F24,
- 0x8F80, 0x5F28, 0x8F81, 0x5F2B, 0x8F82, 0x5F2C, 0x8F83, 0x5F2E,
- 0x8F84, 0x5F30, 0x8F85, 0x5F32, 0x8F86, 0x5F33, 0x8F87, 0x5F34,
- 0x8F88, 0x5F35, 0x8F89, 0x5F36, 0x8F8A, 0x5F37, 0x8F8B, 0x5F38,
- 0x8F8C, 0x5F3B, 0x8F8D, 0x5F3D, 0x8F8E, 0x5F3E, 0x8F8F, 0x5F3F,
- 0x8F90, 0x5F41, 0x8F91, 0x5F42, 0x8F92, 0x5F43, 0x8F93, 0x5F44,
- 0x8F94, 0x5F45, 0x8F95, 0x5F46, 0x8F96, 0x5F47, 0x8F97, 0x5F48,
- 0x8F98, 0x5F49, 0x8F99, 0x5F4A, 0x8F9A, 0x5F4B, 0x8F9B, 0x5F4C,
- 0x8F9C, 0x5F4D, 0x8F9D, 0x5F4E, 0x8F9E, 0x5F4F, 0x8F9F, 0x5F51,
- 0x8FA0, 0x5F54, 0x8FA1, 0x5F59, 0x8FA2, 0x5F5A, 0x8FA3, 0x5F5B,
- 0x8FA4, 0x5F5C, 0x8FA5, 0x5F5E, 0x8FA6, 0x5F5F, 0x8FA7, 0x5F60,
- 0x8FA8, 0x5F63, 0x8FA9, 0x5F65, 0x8FAA, 0x5F67, 0x8FAB, 0x5F68,
- 0x8FAC, 0x5F6B, 0x8FAD, 0x5F6E, 0x8FAE, 0x5F6F, 0x8FAF, 0x5F72,
- 0x8FB0, 0x5F74, 0x8FB1, 0x5F75, 0x8FB2, 0x5F76, 0x8FB3, 0x5F78,
- 0x8FB4, 0x5F7A, 0x8FB5, 0x5F7D, 0x8FB6, 0x5F7E, 0x8FB7, 0x5F7F,
- 0x8FB8, 0x5F83, 0x8FB9, 0x5F86, 0x8FBA, 0x5F8D, 0x8FBB, 0x5F8E,
- 0x8FBC, 0x5F8F, 0x8FBD, 0x5F91, 0x8FBE, 0x5F93, 0x8FBF, 0x5F94,
- 0x8FC0, 0x5F96, 0x8FC1, 0x5F9A, 0x8FC2, 0x5F9B, 0x8FC3, 0x5F9D,
- 0x8FC4, 0x5F9E, 0x8FC5, 0x5F9F, 0x8FC6, 0x5FA0, 0x8FC7, 0x5FA2,
- 0x8FC8, 0x5FA3, 0x8FC9, 0x5FA4, 0x8FCA, 0x5FA5, 0x8FCB, 0x5FA6,
- 0x8FCC, 0x5FA7, 0x8FCD, 0x5FA9, 0x8FCE, 0x5FAB, 0x8FCF, 0x5FAC,
- 0x8FD0, 0x5FAF, 0x8FD1, 0x5FB0, 0x8FD2, 0x5FB1, 0x8FD3, 0x5FB2,
- 0x8FD4, 0x5FB3, 0x8FD5, 0x5FB4, 0x8FD6, 0x5FB6, 0x8FD7, 0x5FB8,
- 0x8FD8, 0x5FB9, 0x8FD9, 0x5FBA, 0x8FDA, 0x5FBB, 0x8FDB, 0x5FBE,
- 0x8FDC, 0x5FBF, 0x8FDD, 0x5FC0, 0x8FDE, 0x5FC1, 0x8FDF, 0x5FC2,
- 0x8FE0, 0x5FC7, 0x8FE1, 0x5FC8, 0x8FE2, 0x5FCA, 0x8FE3, 0x5FCB,
- 0x8FE4, 0x5FCE, 0x8FE5, 0x5FD3, 0x8FE6, 0x5FD4, 0x8FE7, 0x5FD5,
- 0x8FE8, 0x5FDA, 0x8FE9, 0x5FDB, 0x8FEA, 0x5FDC, 0x8FEB, 0x5FDE,
- 0x8FEC, 0x5FDF, 0x8FED, 0x5FE2, 0x8FEE, 0x5FE3, 0x8FEF, 0x5FE5,
- 0x8FF0, 0x5FE6, 0x8FF1, 0x5FE8, 0x8FF2, 0x5FE9, 0x8FF3, 0x5FEC,
- 0x8FF4, 0x5FEF, 0x8FF5, 0x5FF0, 0x8FF6, 0x5FF2, 0x8FF7, 0x5FF3,
- 0x8FF8, 0x5FF4, 0x8FF9, 0x5FF6, 0x8FFA, 0x5FF7, 0x8FFB, 0x5FF9,
- 0x8FFC, 0x5FFA, 0x8FFD, 0x5FFC, 0x8FFE, 0x6007, 0x9040, 0x6008,
- 0x9041, 0x6009, 0x9042, 0x600B, 0x9043, 0x600C, 0x9044, 0x6010,
- 0x9045, 0x6011, 0x9046, 0x6013, 0x9047, 0x6017, 0x9048, 0x6018,
- 0x9049, 0x601A, 0x904A, 0x601E, 0x904B, 0x601F, 0x904C, 0x6022,
- 0x904D, 0x6023, 0x904E, 0x6024, 0x904F, 0x602C, 0x9050, 0x602D,
- 0x9051, 0x602E, 0x9052, 0x6030, 0x9053, 0x6031, 0x9054, 0x6032,
- 0x9055, 0x6033, 0x9056, 0x6034, 0x9057, 0x6036, 0x9058, 0x6037,
- 0x9059, 0x6038, 0x905A, 0x6039, 0x905B, 0x603A, 0x905C, 0x603D,
- 0x905D, 0x603E, 0x905E, 0x6040, 0x905F, 0x6044, 0x9060, 0x6045,
- 0x9061, 0x6046, 0x9062, 0x6047, 0x9063, 0x6048, 0x9064, 0x6049,
- 0x9065, 0x604A, 0x9066, 0x604C, 0x9067, 0x604E, 0x9068, 0x604F,
- 0x9069, 0x6051, 0x906A, 0x6053, 0x906B, 0x6054, 0x906C, 0x6056,
- 0x906D, 0x6057, 0x906E, 0x6058, 0x906F, 0x605B, 0x9070, 0x605C,
- 0x9071, 0x605E, 0x9072, 0x605F, 0x9073, 0x6060, 0x9074, 0x6061,
- 0x9075, 0x6065, 0x9076, 0x6066, 0x9077, 0x606E, 0x9078, 0x6071,
- 0x9079, 0x6072, 0x907A, 0x6074, 0x907B, 0x6075, 0x907C, 0x6077,
- 0x907D, 0x607E, 0x907E, 0x6080, 0x9080, 0x6081, 0x9081, 0x6082,
- 0x9082, 0x6085, 0x9083, 0x6086, 0x9084, 0x6087, 0x9085, 0x6088,
- 0x9086, 0x608A, 0x9087, 0x608B, 0x9088, 0x608E, 0x9089, 0x608F,
- 0x908A, 0x6090, 0x908B, 0x6091, 0x908C, 0x6093, 0x908D, 0x6095,
- 0x908E, 0x6097, 0x908F, 0x6098, 0x9090, 0x6099, 0x9091, 0x609C,
- 0x9092, 0x609E, 0x9093, 0x60A1, 0x9094, 0x60A2, 0x9095, 0x60A4,
- 0x9096, 0x60A5, 0x9097, 0x60A7, 0x9098, 0x60A9, 0x9099, 0x60AA,
- 0x909A, 0x60AE, 0x909B, 0x60B0, 0x909C, 0x60B3, 0x909D, 0x60B5,
- 0x909E, 0x60B6, 0x909F, 0x60B7, 0x90A0, 0x60B9, 0x90A1, 0x60BA,
- 0x90A2, 0x60BD, 0x90A3, 0x60BE, 0x90A4, 0x60BF, 0x90A5, 0x60C0,
- 0x90A6, 0x60C1, 0x90A7, 0x60C2, 0x90A8, 0x60C3, 0x90A9, 0x60C4,
- 0x90AA, 0x60C7, 0x90AB, 0x60C8, 0x90AC, 0x60C9, 0x90AD, 0x60CC,
- 0x90AE, 0x60CD, 0x90AF, 0x60CE, 0x90B0, 0x60CF, 0x90B1, 0x60D0,
- 0x90B2, 0x60D2, 0x90B3, 0x60D3, 0x90B4, 0x60D4, 0x90B5, 0x60D6,
- 0x90B6, 0x60D7, 0x90B7, 0x60D9, 0x90B8, 0x60DB, 0x90B9, 0x60DE,
- 0x90BA, 0x60E1, 0x90BB, 0x60E2, 0x90BC, 0x60E3, 0x90BD, 0x60E4,
- 0x90BE, 0x60E5, 0x90BF, 0x60EA, 0x90C0, 0x60F1, 0x90C1, 0x60F2,
- 0x90C2, 0x60F5, 0x90C3, 0x60F7, 0x90C4, 0x60F8, 0x90C5, 0x60FB,
- 0x90C6, 0x60FC, 0x90C7, 0x60FD, 0x90C8, 0x60FE, 0x90C9, 0x60FF,
- 0x90CA, 0x6102, 0x90CB, 0x6103, 0x90CC, 0x6104, 0x90CD, 0x6105,
- 0x90CE, 0x6107, 0x90CF, 0x610A, 0x90D0, 0x610B, 0x90D1, 0x610C,
- 0x90D2, 0x6110, 0x90D3, 0x6111, 0x90D4, 0x6112, 0x90D5, 0x6113,
- 0x90D6, 0x6114, 0x90D7, 0x6116, 0x90D8, 0x6117, 0x90D9, 0x6118,
- 0x90DA, 0x6119, 0x90DB, 0x611B, 0x90DC, 0x611C, 0x90DD, 0x611D,
- 0x90DE, 0x611E, 0x90DF, 0x6121, 0x90E0, 0x6122, 0x90E1, 0x6125,
- 0x90E2, 0x6128, 0x90E3, 0x6129, 0x90E4, 0x612A, 0x90E5, 0x612C,
- 0x90E6, 0x612D, 0x90E7, 0x612E, 0x90E8, 0x612F, 0x90E9, 0x6130,
- 0x90EA, 0x6131, 0x90EB, 0x6132, 0x90EC, 0x6133, 0x90ED, 0x6134,
- 0x90EE, 0x6135, 0x90EF, 0x6136, 0x90F0, 0x6137, 0x90F1, 0x6138,
- 0x90F2, 0x6139, 0x90F3, 0x613A, 0x90F4, 0x613B, 0x90F5, 0x613C,
- 0x90F6, 0x613D, 0x90F7, 0x613E, 0x90F8, 0x6140, 0x90F9, 0x6141,
- 0x90FA, 0x6142, 0x90FB, 0x6143, 0x90FC, 0x6144, 0x90FD, 0x6145,
- 0x90FE, 0x6146, 0x9140, 0x6147, 0x9141, 0x6149, 0x9142, 0x614B,
- 0x9143, 0x614D, 0x9144, 0x614F, 0x9145, 0x6150, 0x9146, 0x6152,
- 0x9147, 0x6153, 0x9148, 0x6154, 0x9149, 0x6156, 0x914A, 0x6157,
- 0x914B, 0x6158, 0x914C, 0x6159, 0x914D, 0x615A, 0x914E, 0x615B,
- 0x914F, 0x615C, 0x9150, 0x615E, 0x9151, 0x615F, 0x9152, 0x6160,
- 0x9153, 0x6161, 0x9154, 0x6163, 0x9155, 0x6164, 0x9156, 0x6165,
- 0x9157, 0x6166, 0x9158, 0x6169, 0x9159, 0x616A, 0x915A, 0x616B,
- 0x915B, 0x616C, 0x915C, 0x616D, 0x915D, 0x616E, 0x915E, 0x616F,
- 0x915F, 0x6171, 0x9160, 0x6172, 0x9161, 0x6173, 0x9162, 0x6174,
- 0x9163, 0x6176, 0x9164, 0x6178, 0x9165, 0x6179, 0x9166, 0x617A,
- 0x9167, 0x617B, 0x9168, 0x617C, 0x9169, 0x617D, 0x916A, 0x617E,
- 0x916B, 0x617F, 0x916C, 0x6180, 0x916D, 0x6181, 0x916E, 0x6182,
- 0x916F, 0x6183, 0x9170, 0x6184, 0x9171, 0x6185, 0x9172, 0x6186,
- 0x9173, 0x6187, 0x9174, 0x6188, 0x9175, 0x6189, 0x9176, 0x618A,
- 0x9177, 0x618C, 0x9178, 0x618D, 0x9179, 0x618F, 0x917A, 0x6190,
- 0x917B, 0x6191, 0x917C, 0x6192, 0x917D, 0x6193, 0x917E, 0x6195,
- 0x9180, 0x6196, 0x9181, 0x6197, 0x9182, 0x6198, 0x9183, 0x6199,
- 0x9184, 0x619A, 0x9185, 0x619B, 0x9186, 0x619C, 0x9187, 0x619E,
- 0x9188, 0x619F, 0x9189, 0x61A0, 0x918A, 0x61A1, 0x918B, 0x61A2,
- 0x918C, 0x61A3, 0x918D, 0x61A4, 0x918E, 0x61A5, 0x918F, 0x61A6,
- 0x9190, 0x61AA, 0x9191, 0x61AB, 0x9192, 0x61AD, 0x9193, 0x61AE,
- 0x9194, 0x61AF, 0x9195, 0x61B0, 0x9196, 0x61B1, 0x9197, 0x61B2,
- 0x9198, 0x61B3, 0x9199, 0x61B4, 0x919A, 0x61B5, 0x919B, 0x61B6,
- 0x919C, 0x61B8, 0x919D, 0x61B9, 0x919E, 0x61BA, 0x919F, 0x61BB,
- 0x91A0, 0x61BC, 0x91A1, 0x61BD, 0x91A2, 0x61BF, 0x91A3, 0x61C0,
- 0x91A4, 0x61C1, 0x91A5, 0x61C3, 0x91A6, 0x61C4, 0x91A7, 0x61C5,
- 0x91A8, 0x61C6, 0x91A9, 0x61C7, 0x91AA, 0x61C9, 0x91AB, 0x61CC,
- 0x91AC, 0x61CD, 0x91AD, 0x61CE, 0x91AE, 0x61CF, 0x91AF, 0x61D0,
- 0x91B0, 0x61D3, 0x91B1, 0x61D5, 0x91B2, 0x61D6, 0x91B3, 0x61D7,
- 0x91B4, 0x61D8, 0x91B5, 0x61D9, 0x91B6, 0x61DA, 0x91B7, 0x61DB,
- 0x91B8, 0x61DC, 0x91B9, 0x61DD, 0x91BA, 0x61DE, 0x91BB, 0x61DF,
- 0x91BC, 0x61E0, 0x91BD, 0x61E1, 0x91BE, 0x61E2, 0x91BF, 0x61E3,
- 0x91C0, 0x61E4, 0x91C1, 0x61E5, 0x91C2, 0x61E7, 0x91C3, 0x61E8,
- 0x91C4, 0x61E9, 0x91C5, 0x61EA, 0x91C6, 0x61EB, 0x91C7, 0x61EC,
- 0x91C8, 0x61ED, 0x91C9, 0x61EE, 0x91CA, 0x61EF, 0x91CB, 0x61F0,
- 0x91CC, 0x61F1, 0x91CD, 0x61F2, 0x91CE, 0x61F3, 0x91CF, 0x61F4,
- 0x91D0, 0x61F6, 0x91D1, 0x61F7, 0x91D2, 0x61F8, 0x91D3, 0x61F9,
- 0x91D4, 0x61FA, 0x91D5, 0x61FB, 0x91D6, 0x61FC, 0x91D7, 0x61FD,
- 0x91D8, 0x61FE, 0x91D9, 0x6200, 0x91DA, 0x6201, 0x91DB, 0x6202,
- 0x91DC, 0x6203, 0x91DD, 0x6204, 0x91DE, 0x6205, 0x91DF, 0x6207,
- 0x91E0, 0x6209, 0x91E1, 0x6213, 0x91E2, 0x6214, 0x91E3, 0x6219,
- 0x91E4, 0x621C, 0x91E5, 0x621D, 0x91E6, 0x621E, 0x91E7, 0x6220,
- 0x91E8, 0x6223, 0x91E9, 0x6226, 0x91EA, 0x6227, 0x91EB, 0x6228,
- 0x91EC, 0x6229, 0x91ED, 0x622B, 0x91EE, 0x622D, 0x91EF, 0x622F,
- 0x91F0, 0x6230, 0x91F1, 0x6231, 0x91F2, 0x6232, 0x91F3, 0x6235,
- 0x91F4, 0x6236, 0x91F5, 0x6238, 0x91F6, 0x6239, 0x91F7, 0x623A,
- 0x91F8, 0x623B, 0x91F9, 0x623C, 0x91FA, 0x6242, 0x91FB, 0x6244,
- 0x91FC, 0x6245, 0x91FD, 0x6246, 0x91FE, 0x624A, 0x9240, 0x624F,
- 0x9241, 0x6250, 0x9242, 0x6255, 0x9243, 0x6256, 0x9244, 0x6257,
- 0x9245, 0x6259, 0x9246, 0x625A, 0x9247, 0x625C, 0x9248, 0x625D,
- 0x9249, 0x625E, 0x924A, 0x625F, 0x924B, 0x6260, 0x924C, 0x6261,
- 0x924D, 0x6262, 0x924E, 0x6264, 0x924F, 0x6265, 0x9250, 0x6268,
- 0x9251, 0x6271, 0x9252, 0x6272, 0x9253, 0x6274, 0x9254, 0x6275,
- 0x9255, 0x6277, 0x9256, 0x6278, 0x9257, 0x627A, 0x9258, 0x627B,
- 0x9259, 0x627D, 0x925A, 0x6281, 0x925B, 0x6282, 0x925C, 0x6283,
- 0x925D, 0x6285, 0x925E, 0x6286, 0x925F, 0x6287, 0x9260, 0x6288,
- 0x9261, 0x628B, 0x9262, 0x628C, 0x9263, 0x628D, 0x9264, 0x628E,
- 0x9265, 0x628F, 0x9266, 0x6290, 0x9267, 0x6294, 0x9268, 0x6299,
- 0x9269, 0x629C, 0x926A, 0x629D, 0x926B, 0x629E, 0x926C, 0x62A3,
- 0x926D, 0x62A6, 0x926E, 0x62A7, 0x926F, 0x62A9, 0x9270, 0x62AA,
- 0x9271, 0x62AD, 0x9272, 0x62AE, 0x9273, 0x62AF, 0x9274, 0x62B0,
- 0x9275, 0x62B2, 0x9276, 0x62B3, 0x9277, 0x62B4, 0x9278, 0x62B6,
- 0x9279, 0x62B7, 0x927A, 0x62B8, 0x927B, 0x62BA, 0x927C, 0x62BE,
- 0x927D, 0x62C0, 0x927E, 0x62C1, 0x9280, 0x62C3, 0x9281, 0x62CB,
- 0x9282, 0x62CF, 0x9283, 0x62D1, 0x9284, 0x62D5, 0x9285, 0x62DD,
- 0x9286, 0x62DE, 0x9287, 0x62E0, 0x9288, 0x62E1, 0x9289, 0x62E4,
- 0x928A, 0x62EA, 0x928B, 0x62EB, 0x928C, 0x62F0, 0x928D, 0x62F2,
- 0x928E, 0x62F5, 0x928F, 0x62F8, 0x9290, 0x62F9, 0x9291, 0x62FA,
- 0x9292, 0x62FB, 0x9293, 0x6300, 0x9294, 0x6303, 0x9295, 0x6304,
- 0x9296, 0x6305, 0x9297, 0x6306, 0x9298, 0x630A, 0x9299, 0x630B,
- 0x929A, 0x630C, 0x929B, 0x630D, 0x929C, 0x630F, 0x929D, 0x6310,
- 0x929E, 0x6312, 0x929F, 0x6313, 0x92A0, 0x6314, 0x92A1, 0x6315,
- 0x92A2, 0x6317, 0x92A3, 0x6318, 0x92A4, 0x6319, 0x92A5, 0x631C,
- 0x92A6, 0x6326, 0x92A7, 0x6327, 0x92A8, 0x6329, 0x92A9, 0x632C,
- 0x92AA, 0x632D, 0x92AB, 0x632E, 0x92AC, 0x6330, 0x92AD, 0x6331,
- 0x92AE, 0x6333, 0x92AF, 0x6334, 0x92B0, 0x6335, 0x92B1, 0x6336,
- 0x92B2, 0x6337, 0x92B3, 0x6338, 0x92B4, 0x633B, 0x92B5, 0x633C,
- 0x92B6, 0x633E, 0x92B7, 0x633F, 0x92B8, 0x6340, 0x92B9, 0x6341,
- 0x92BA, 0x6344, 0x92BB, 0x6347, 0x92BC, 0x6348, 0x92BD, 0x634A,
- 0x92BE, 0x6351, 0x92BF, 0x6352, 0x92C0, 0x6353, 0x92C1, 0x6354,
- 0x92C2, 0x6356, 0x92C3, 0x6357, 0x92C4, 0x6358, 0x92C5, 0x6359,
- 0x92C6, 0x635A, 0x92C7, 0x635B, 0x92C8, 0x635C, 0x92C9, 0x635D,
- 0x92CA, 0x6360, 0x92CB, 0x6364, 0x92CC, 0x6365, 0x92CD, 0x6366,
- 0x92CE, 0x6368, 0x92CF, 0x636A, 0x92D0, 0x636B, 0x92D1, 0x636C,
- 0x92D2, 0x636F, 0x92D3, 0x6370, 0x92D4, 0x6372, 0x92D5, 0x6373,
- 0x92D6, 0x6374, 0x92D7, 0x6375, 0x92D8, 0x6378, 0x92D9, 0x6379,
- 0x92DA, 0x637C, 0x92DB, 0x637D, 0x92DC, 0x637E, 0x92DD, 0x637F,
- 0x92DE, 0x6381, 0x92DF, 0x6383, 0x92E0, 0x6384, 0x92E1, 0x6385,
- 0x92E2, 0x6386, 0x92E3, 0x638B, 0x92E4, 0x638D, 0x92E5, 0x6391,
- 0x92E6, 0x6393, 0x92E7, 0x6394, 0x92E8, 0x6395, 0x92E9, 0x6397,
- 0x92EA, 0x6399, 0x92EB, 0x639A, 0x92EC, 0x639B, 0x92ED, 0x639C,
- 0x92EE, 0x639D, 0x92EF, 0x639E, 0x92F0, 0x639F, 0x92F1, 0x63A1,
- 0x92F2, 0x63A4, 0x92F3, 0x63A6, 0x92F4, 0x63AB, 0x92F5, 0x63AF,
- 0x92F6, 0x63B1, 0x92F7, 0x63B2, 0x92F8, 0x63B5, 0x92F9, 0x63B6,
- 0x92FA, 0x63B9, 0x92FB, 0x63BB, 0x92FC, 0x63BD, 0x92FD, 0x63BF,
- 0x92FE, 0x63C0, 0x9340, 0x63C1, 0x9341, 0x63C2, 0x9342, 0x63C3,
- 0x9343, 0x63C5, 0x9344, 0x63C7, 0x9345, 0x63C8, 0x9346, 0x63CA,
- 0x9347, 0x63CB, 0x9348, 0x63CC, 0x9349, 0x63D1, 0x934A, 0x63D3,
- 0x934B, 0x63D4, 0x934C, 0x63D5, 0x934D, 0x63D7, 0x934E, 0x63D8,
- 0x934F, 0x63D9, 0x9350, 0x63DA, 0x9351, 0x63DB, 0x9352, 0x63DC,
- 0x9353, 0x63DD, 0x9354, 0x63DF, 0x9355, 0x63E2, 0x9356, 0x63E4,
- 0x9357, 0x63E5, 0x9358, 0x63E6, 0x9359, 0x63E7, 0x935A, 0x63E8,
- 0x935B, 0x63EB, 0x935C, 0x63EC, 0x935D, 0x63EE, 0x935E, 0x63EF,
- 0x935F, 0x63F0, 0x9360, 0x63F1, 0x9361, 0x63F3, 0x9362, 0x63F5,
- 0x9363, 0x63F7, 0x9364, 0x63F9, 0x9365, 0x63FA, 0x9366, 0x63FB,
- 0x9367, 0x63FC, 0x9368, 0x63FE, 0x9369, 0x6403, 0x936A, 0x6404,
- 0x936B, 0x6406, 0x936C, 0x6407, 0x936D, 0x6408, 0x936E, 0x6409,
- 0x936F, 0x640A, 0x9370, 0x640D, 0x9371, 0x640E, 0x9372, 0x6411,
- 0x9373, 0x6412, 0x9374, 0x6415, 0x9375, 0x6416, 0x9376, 0x6417,
- 0x9377, 0x6418, 0x9378, 0x6419, 0x9379, 0x641A, 0x937A, 0x641D,
- 0x937B, 0x641F, 0x937C, 0x6422, 0x937D, 0x6423, 0x937E, 0x6424,
- 0x9380, 0x6425, 0x9381, 0x6427, 0x9382, 0x6428, 0x9383, 0x6429,
- 0x9384, 0x642B, 0x9385, 0x642E, 0x9386, 0x642F, 0x9387, 0x6430,
- 0x9388, 0x6431, 0x9389, 0x6432, 0x938A, 0x6433, 0x938B, 0x6435,
- 0x938C, 0x6436, 0x938D, 0x6437, 0x938E, 0x6438, 0x938F, 0x6439,
- 0x9390, 0x643B, 0x9391, 0x643C, 0x9392, 0x643E, 0x9393, 0x6440,
- 0x9394, 0x6442, 0x9395, 0x6443, 0x9396, 0x6449, 0x9397, 0x644B,
- 0x9398, 0x644C, 0x9399, 0x644D, 0x939A, 0x644E, 0x939B, 0x644F,
- 0x939C, 0x6450, 0x939D, 0x6451, 0x939E, 0x6453, 0x939F, 0x6455,
- 0x93A0, 0x6456, 0x93A1, 0x6457, 0x93A2, 0x6459, 0x93A3, 0x645A,
- 0x93A4, 0x645B, 0x93A5, 0x645C, 0x93A6, 0x645D, 0x93A7, 0x645F,
- 0x93A8, 0x6460, 0x93A9, 0x6461, 0x93AA, 0x6462, 0x93AB, 0x6463,
- 0x93AC, 0x6464, 0x93AD, 0x6465, 0x93AE, 0x6466, 0x93AF, 0x6468,
- 0x93B0, 0x646A, 0x93B1, 0x646B, 0x93B2, 0x646C, 0x93B3, 0x646E,
- 0x93B4, 0x646F, 0x93B5, 0x6470, 0x93B6, 0x6471, 0x93B7, 0x6472,
- 0x93B8, 0x6473, 0x93B9, 0x6474, 0x93BA, 0x6475, 0x93BB, 0x6476,
- 0x93BC, 0x6477, 0x93BD, 0x647B, 0x93BE, 0x647C, 0x93BF, 0x647D,
- 0x93C0, 0x647E, 0x93C1, 0x647F, 0x93C2, 0x6480, 0x93C3, 0x6481,
- 0x93C4, 0x6483, 0x93C5, 0x6486, 0x93C6, 0x6488, 0x93C7, 0x6489,
- 0x93C8, 0x648A, 0x93C9, 0x648B, 0x93CA, 0x648C, 0x93CB, 0x648D,
- 0x93CC, 0x648E, 0x93CD, 0x648F, 0x93CE, 0x6490, 0x93CF, 0x6493,
- 0x93D0, 0x6494, 0x93D1, 0x6497, 0x93D2, 0x6498, 0x93D3, 0x649A,
- 0x93D4, 0x649B, 0x93D5, 0x649C, 0x93D6, 0x649D, 0x93D7, 0x649F,
- 0x93D8, 0x64A0, 0x93D9, 0x64A1, 0x93DA, 0x64A2, 0x93DB, 0x64A3,
- 0x93DC, 0x64A5, 0x93DD, 0x64A6, 0x93DE, 0x64A7, 0x93DF, 0x64A8,
- 0x93E0, 0x64AA, 0x93E1, 0x64AB, 0x93E2, 0x64AF, 0x93E3, 0x64B1,
- 0x93E4, 0x64B2, 0x93E5, 0x64B3, 0x93E6, 0x64B4, 0x93E7, 0x64B6,
- 0x93E8, 0x64B9, 0x93E9, 0x64BB, 0x93EA, 0x64BD, 0x93EB, 0x64BE,
- 0x93EC, 0x64BF, 0x93ED, 0x64C1, 0x93EE, 0x64C3, 0x93EF, 0x64C4,
- 0x93F0, 0x64C6, 0x93F1, 0x64C7, 0x93F2, 0x64C8, 0x93F3, 0x64C9,
- 0x93F4, 0x64CA, 0x93F5, 0x64CB, 0x93F6, 0x64CC, 0x93F7, 0x64CF,
- 0x93F8, 0x64D1, 0x93F9, 0x64D3, 0x93FA, 0x64D4, 0x93FB, 0x64D5,
- 0x93FC, 0x64D6, 0x93FD, 0x64D9, 0x93FE, 0x64DA, 0x9440, 0x64DB,
- 0x9441, 0x64DC, 0x9442, 0x64DD, 0x9443, 0x64DF, 0x9444, 0x64E0,
- 0x9445, 0x64E1, 0x9446, 0x64E3, 0x9447, 0x64E5, 0x9448, 0x64E7,
- 0x9449, 0x64E8, 0x944A, 0x64E9, 0x944B, 0x64EA, 0x944C, 0x64EB,
- 0x944D, 0x64EC, 0x944E, 0x64ED, 0x944F, 0x64EE, 0x9450, 0x64EF,
- 0x9451, 0x64F0, 0x9452, 0x64F1, 0x9453, 0x64F2, 0x9454, 0x64F3,
- 0x9455, 0x64F4, 0x9456, 0x64F5, 0x9457, 0x64F6, 0x9458, 0x64F7,
- 0x9459, 0x64F8, 0x945A, 0x64F9, 0x945B, 0x64FA, 0x945C, 0x64FB,
- 0x945D, 0x64FC, 0x945E, 0x64FD, 0x945F, 0x64FE, 0x9460, 0x64FF,
- 0x9461, 0x6501, 0x9462, 0x6502, 0x9463, 0x6503, 0x9464, 0x6504,
- 0x9465, 0x6505, 0x9466, 0x6506, 0x9467, 0x6507, 0x9468, 0x6508,
- 0x9469, 0x650A, 0x946A, 0x650B, 0x946B, 0x650C, 0x946C, 0x650D,
- 0x946D, 0x650E, 0x946E, 0x650F, 0x946F, 0x6510, 0x9470, 0x6511,
- 0x9471, 0x6513, 0x9472, 0x6514, 0x9473, 0x6515, 0x9474, 0x6516,
- 0x9475, 0x6517, 0x9476, 0x6519, 0x9477, 0x651A, 0x9478, 0x651B,
- 0x9479, 0x651C, 0x947A, 0x651D, 0x947B, 0x651E, 0x947C, 0x651F,
- 0x947D, 0x6520, 0x947E, 0x6521, 0x9480, 0x6522, 0x9481, 0x6523,
- 0x9482, 0x6524, 0x9483, 0x6526, 0x9484, 0x6527, 0x9485, 0x6528,
- 0x9486, 0x6529, 0x9487, 0x652A, 0x9488, 0x652C, 0x9489, 0x652D,
- 0x948A, 0x6530, 0x948B, 0x6531, 0x948C, 0x6532, 0x948D, 0x6533,
- 0x948E, 0x6537, 0x948F, 0x653A, 0x9490, 0x653C, 0x9491, 0x653D,
- 0x9492, 0x6540, 0x9493, 0x6541, 0x9494, 0x6542, 0x9495, 0x6543,
- 0x9496, 0x6544, 0x9497, 0x6546, 0x9498, 0x6547, 0x9499, 0x654A,
- 0x949A, 0x654B, 0x949B, 0x654D, 0x949C, 0x654E, 0x949D, 0x6550,
- 0x949E, 0x6552, 0x949F, 0x6553, 0x94A0, 0x6554, 0x94A1, 0x6557,
- 0x94A2, 0x6558, 0x94A3, 0x655A, 0x94A4, 0x655C, 0x94A5, 0x655F,
- 0x94A6, 0x6560, 0x94A7, 0x6561, 0x94A8, 0x6564, 0x94A9, 0x6565,
- 0x94AA, 0x6567, 0x94AB, 0x6568, 0x94AC, 0x6569, 0x94AD, 0x656A,
- 0x94AE, 0x656D, 0x94AF, 0x656E, 0x94B0, 0x656F, 0x94B1, 0x6571,
- 0x94B2, 0x6573, 0x94B3, 0x6575, 0x94B4, 0x6576, 0x94B5, 0x6578,
- 0x94B6, 0x6579, 0x94B7, 0x657A, 0x94B8, 0x657B, 0x94B9, 0x657C,
- 0x94BA, 0x657D, 0x94BB, 0x657E, 0x94BC, 0x657F, 0x94BD, 0x6580,
- 0x94BE, 0x6581, 0x94BF, 0x6582, 0x94C0, 0x6583, 0x94C1, 0x6584,
- 0x94C2, 0x6585, 0x94C3, 0x6586, 0x94C4, 0x6588, 0x94C5, 0x6589,
- 0x94C6, 0x658A, 0x94C7, 0x658D, 0x94C8, 0x658E, 0x94C9, 0x658F,
- 0x94CA, 0x6592, 0x94CB, 0x6594, 0x94CC, 0x6595, 0x94CD, 0x6596,
- 0x94CE, 0x6598, 0x94CF, 0x659A, 0x94D0, 0x659D, 0x94D1, 0x659E,
- 0x94D2, 0x65A0, 0x94D3, 0x65A2, 0x94D4, 0x65A3, 0x94D5, 0x65A6,
- 0x94D6, 0x65A8, 0x94D7, 0x65AA, 0x94D8, 0x65AC, 0x94D9, 0x65AE,
- 0x94DA, 0x65B1, 0x94DB, 0x65B2, 0x94DC, 0x65B3, 0x94DD, 0x65B4,
- 0x94DE, 0x65B5, 0x94DF, 0x65B6, 0x94E0, 0x65B7, 0x94E1, 0x65B8,
- 0x94E2, 0x65BA, 0x94E3, 0x65BB, 0x94E4, 0x65BE, 0x94E5, 0x65BF,
- 0x94E6, 0x65C0, 0x94E7, 0x65C2, 0x94E8, 0x65C7, 0x94E9, 0x65C8,
- 0x94EA, 0x65C9, 0x94EB, 0x65CA, 0x94EC, 0x65CD, 0x94ED, 0x65D0,
- 0x94EE, 0x65D1, 0x94EF, 0x65D3, 0x94F0, 0x65D4, 0x94F1, 0x65D5,
- 0x94F2, 0x65D8, 0x94F3, 0x65D9, 0x94F4, 0x65DA, 0x94F5, 0x65DB,
- 0x94F6, 0x65DC, 0x94F7, 0x65DD, 0x94F8, 0x65DE, 0x94F9, 0x65DF,
- 0x94FA, 0x65E1, 0x94FB, 0x65E3, 0x94FC, 0x65E4, 0x94FD, 0x65EA,
- 0x94FE, 0x65EB, 0x9540, 0x65F2, 0x9541, 0x65F3, 0x9542, 0x65F4,
- 0x9543, 0x65F5, 0x9544, 0x65F8, 0x9545, 0x65F9, 0x9546, 0x65FB,
- 0x9547, 0x65FC, 0x9548, 0x65FD, 0x9549, 0x65FE, 0x954A, 0x65FF,
- 0x954B, 0x6601, 0x954C, 0x6604, 0x954D, 0x6605, 0x954E, 0x6607,
- 0x954F, 0x6608, 0x9550, 0x6609, 0x9551, 0x660B, 0x9552, 0x660D,
- 0x9553, 0x6610, 0x9554, 0x6611, 0x9555, 0x6612, 0x9556, 0x6616,
- 0x9557, 0x6617, 0x9558, 0x6618, 0x9559, 0x661A, 0x955A, 0x661B,
- 0x955B, 0x661C, 0x955C, 0x661E, 0x955D, 0x6621, 0x955E, 0x6622,
- 0x955F, 0x6623, 0x9560, 0x6624, 0x9561, 0x6626, 0x9562, 0x6629,
- 0x9563, 0x662A, 0x9564, 0x662B, 0x9565, 0x662C, 0x9566, 0x662E,
- 0x9567, 0x6630, 0x9568, 0x6632, 0x9569, 0x6633, 0x956A, 0x6637,
- 0x956B, 0x6638, 0x956C, 0x6639, 0x956D, 0x663A, 0x956E, 0x663B,
- 0x956F, 0x663D, 0x9570, 0x663F, 0x9571, 0x6640, 0x9572, 0x6642,
- 0x9573, 0x6644, 0x9574, 0x6645, 0x9575, 0x6646, 0x9576, 0x6647,
- 0x9577, 0x6648, 0x9578, 0x6649, 0x9579, 0x664A, 0x957A, 0x664D,
- 0x957B, 0x664E, 0x957C, 0x6650, 0x957D, 0x6651, 0x957E, 0x6658,
- 0x9580, 0x6659, 0x9581, 0x665B, 0x9582, 0x665C, 0x9583, 0x665D,
- 0x9584, 0x665E, 0x9585, 0x6660, 0x9586, 0x6662, 0x9587, 0x6663,
- 0x9588, 0x6665, 0x9589, 0x6667, 0x958A, 0x6669, 0x958B, 0x666A,
- 0x958C, 0x666B, 0x958D, 0x666C, 0x958E, 0x666D, 0x958F, 0x6671,
- 0x9590, 0x6672, 0x9591, 0x6673, 0x9592, 0x6675, 0x9593, 0x6678,
- 0x9594, 0x6679, 0x9595, 0x667B, 0x9596, 0x667C, 0x9597, 0x667D,
- 0x9598, 0x667F, 0x9599, 0x6680, 0x959A, 0x6681, 0x959B, 0x6683,
- 0x959C, 0x6685, 0x959D, 0x6686, 0x959E, 0x6688, 0x959F, 0x6689,
- 0x95A0, 0x668A, 0x95A1, 0x668B, 0x95A2, 0x668D, 0x95A3, 0x668E,
- 0x95A4, 0x668F, 0x95A5, 0x6690, 0x95A6, 0x6692, 0x95A7, 0x6693,
- 0x95A8, 0x6694, 0x95A9, 0x6695, 0x95AA, 0x6698, 0x95AB, 0x6699,
- 0x95AC, 0x669A, 0x95AD, 0x669B, 0x95AE, 0x669C, 0x95AF, 0x669E,
- 0x95B0, 0x669F, 0x95B1, 0x66A0, 0x95B2, 0x66A1, 0x95B3, 0x66A2,
- 0x95B4, 0x66A3, 0x95B5, 0x66A4, 0x95B6, 0x66A5, 0x95B7, 0x66A6,
- 0x95B8, 0x66A9, 0x95B9, 0x66AA, 0x95BA, 0x66AB, 0x95BB, 0x66AC,
- 0x95BC, 0x66AD, 0x95BD, 0x66AF, 0x95BE, 0x66B0, 0x95BF, 0x66B1,
- 0x95C0, 0x66B2, 0x95C1, 0x66B3, 0x95C2, 0x66B5, 0x95C3, 0x66B6,
- 0x95C4, 0x66B7, 0x95C5, 0x66B8, 0x95C6, 0x66BA, 0x95C7, 0x66BB,
- 0x95C8, 0x66BC, 0x95C9, 0x66BD, 0x95CA, 0x66BF, 0x95CB, 0x66C0,
- 0x95CC, 0x66C1, 0x95CD, 0x66C2, 0x95CE, 0x66C3, 0x95CF, 0x66C4,
- 0x95D0, 0x66C5, 0x95D1, 0x66C6, 0x95D2, 0x66C7, 0x95D3, 0x66C8,
- 0x95D4, 0x66C9, 0x95D5, 0x66CA, 0x95D6, 0x66CB, 0x95D7, 0x66CC,
- 0x95D8, 0x66CD, 0x95D9, 0x66CE, 0x95DA, 0x66CF, 0x95DB, 0x66D0,
- 0x95DC, 0x66D1, 0x95DD, 0x66D2, 0x95DE, 0x66D3, 0x95DF, 0x66D4,
- 0x95E0, 0x66D5, 0x95E1, 0x66D6, 0x95E2, 0x66D7, 0x95E3, 0x66D8,
- 0x95E4, 0x66DA, 0x95E5, 0x66DE, 0x95E6, 0x66DF, 0x95E7, 0x66E0,
- 0x95E8, 0x66E1, 0x95E9, 0x66E2, 0x95EA, 0x66E3, 0x95EB, 0x66E4,
- 0x95EC, 0x66E5, 0x95ED, 0x66E7, 0x95EE, 0x66E8, 0x95EF, 0x66EA,
- 0x95F0, 0x66EB, 0x95F1, 0x66EC, 0x95F2, 0x66ED, 0x95F3, 0x66EE,
- 0x95F4, 0x66EF, 0x95F5, 0x66F1, 0x95F6, 0x66F5, 0x95F7, 0x66F6,
- 0x95F8, 0x66F8, 0x95F9, 0x66FA, 0x95FA, 0x66FB, 0x95FB, 0x66FD,
- 0x95FC, 0x6701, 0x95FD, 0x6702, 0x95FE, 0x6703, 0x9640, 0x6704,
- 0x9641, 0x6705, 0x9642, 0x6706, 0x9643, 0x6707, 0x9644, 0x670C,
- 0x9645, 0x670E, 0x9646, 0x670F, 0x9647, 0x6711, 0x9648, 0x6712,
- 0x9649, 0x6713, 0x964A, 0x6716, 0x964B, 0x6718, 0x964C, 0x6719,
- 0x964D, 0x671A, 0x964E, 0x671C, 0x964F, 0x671E, 0x9650, 0x6720,
- 0x9651, 0x6721, 0x9652, 0x6722, 0x9653, 0x6723, 0x9654, 0x6724,
- 0x9655, 0x6725, 0x9656, 0x6727, 0x9657, 0x6729, 0x9658, 0x672E,
- 0x9659, 0x6730, 0x965A, 0x6732, 0x965B, 0x6733, 0x965C, 0x6736,
- 0x965D, 0x6737, 0x965E, 0x6738, 0x965F, 0x6739, 0x9660, 0x673B,
- 0x9661, 0x673C, 0x9662, 0x673E, 0x9663, 0x673F, 0x9664, 0x6741,
- 0x9665, 0x6744, 0x9666, 0x6745, 0x9667, 0x6747, 0x9668, 0x674A,
- 0x9669, 0x674B, 0x966A, 0x674D, 0x966B, 0x6752, 0x966C, 0x6754,
- 0x966D, 0x6755, 0x966E, 0x6757, 0x966F, 0x6758, 0x9670, 0x6759,
- 0x9671, 0x675A, 0x9672, 0x675B, 0x9673, 0x675D, 0x9674, 0x6762,
- 0x9675, 0x6763, 0x9676, 0x6764, 0x9677, 0x6766, 0x9678, 0x6767,
- 0x9679, 0x676B, 0x967A, 0x676C, 0x967B, 0x676E, 0x967C, 0x6771,
- 0x967D, 0x6774, 0x967E, 0x6776, 0x9680, 0x6778, 0x9681, 0x6779,
- 0x9682, 0x677A, 0x9683, 0x677B, 0x9684, 0x677D, 0x9685, 0x6780,
- 0x9686, 0x6782, 0x9687, 0x6783, 0x9688, 0x6785, 0x9689, 0x6786,
- 0x968A, 0x6788, 0x968B, 0x678A, 0x968C, 0x678C, 0x968D, 0x678D,
- 0x968E, 0x678E, 0x968F, 0x678F, 0x9690, 0x6791, 0x9691, 0x6792,
- 0x9692, 0x6793, 0x9693, 0x6794, 0x9694, 0x6796, 0x9695, 0x6799,
- 0x9696, 0x679B, 0x9697, 0x679F, 0x9698, 0x67A0, 0x9699, 0x67A1,
- 0x969A, 0x67A4, 0x969B, 0x67A6, 0x969C, 0x67A9, 0x969D, 0x67AC,
- 0x969E, 0x67AE, 0x969F, 0x67B1, 0x96A0, 0x67B2, 0x96A1, 0x67B4,
- 0x96A2, 0x67B9, 0x96A3, 0x67BA, 0x96A4, 0x67BB, 0x96A5, 0x67BC,
- 0x96A6, 0x67BD, 0x96A7, 0x67BE, 0x96A8, 0x67BF, 0x96A9, 0x67C0,
- 0x96AA, 0x67C2, 0x96AB, 0x67C5, 0x96AC, 0x67C6, 0x96AD, 0x67C7,
- 0x96AE, 0x67C8, 0x96AF, 0x67C9, 0x96B0, 0x67CA, 0x96B1, 0x67CB,
- 0x96B2, 0x67CC, 0x96B3, 0x67CD, 0x96B4, 0x67CE, 0x96B5, 0x67D5,
- 0x96B6, 0x67D6, 0x96B7, 0x67D7, 0x96B8, 0x67DB, 0x96B9, 0x67DF,
- 0x96BA, 0x67E1, 0x96BB, 0x67E3, 0x96BC, 0x67E4, 0x96BD, 0x67E6,
- 0x96BE, 0x67E7, 0x96BF, 0x67E8, 0x96C0, 0x67EA, 0x96C1, 0x67EB,
- 0x96C2, 0x67ED, 0x96C3, 0x67EE, 0x96C4, 0x67F2, 0x96C5, 0x67F5,
- 0x96C6, 0x67F6, 0x96C7, 0x67F7, 0x96C8, 0x67F8, 0x96C9, 0x67F9,
- 0x96CA, 0x67FA, 0x96CB, 0x67FB, 0x96CC, 0x67FC, 0x96CD, 0x67FE,
- 0x96CE, 0x6801, 0x96CF, 0x6802, 0x96D0, 0x6803, 0x96D1, 0x6804,
- 0x96D2, 0x6806, 0x96D3, 0x680D, 0x96D4, 0x6810, 0x96D5, 0x6812,
- 0x96D6, 0x6814, 0x96D7, 0x6815, 0x96D8, 0x6818, 0x96D9, 0x6819,
- 0x96DA, 0x681A, 0x96DB, 0x681B, 0x96DC, 0x681C, 0x96DD, 0x681E,
- 0x96DE, 0x681F, 0x96DF, 0x6820, 0x96E0, 0x6822, 0x96E1, 0x6823,
- 0x96E2, 0x6824, 0x96E3, 0x6825, 0x96E4, 0x6826, 0x96E5, 0x6827,
- 0x96E6, 0x6828, 0x96E7, 0x682B, 0x96E8, 0x682C, 0x96E9, 0x682D,
- 0x96EA, 0x682E, 0x96EB, 0x682F, 0x96EC, 0x6830, 0x96ED, 0x6831,
- 0x96EE, 0x6834, 0x96EF, 0x6835, 0x96F0, 0x6836, 0x96F1, 0x683A,
- 0x96F2, 0x683B, 0x96F3, 0x683F, 0x96F4, 0x6847, 0x96F5, 0x684B,
- 0x96F6, 0x684D, 0x96F7, 0x684F, 0x96F8, 0x6852, 0x96F9, 0x6856,
- 0x96FA, 0x6857, 0x96FB, 0x6858, 0x96FC, 0x6859, 0x96FD, 0x685A,
- 0x96FE, 0x685B, 0x9740, 0x685C, 0x9741, 0x685D, 0x9742, 0x685E,
- 0x9743, 0x685F, 0x9744, 0x686A, 0x9745, 0x686C, 0x9746, 0x686D,
- 0x9747, 0x686E, 0x9748, 0x686F, 0x9749, 0x6870, 0x974A, 0x6871,
- 0x974B, 0x6872, 0x974C, 0x6873, 0x974D, 0x6875, 0x974E, 0x6878,
- 0x974F, 0x6879, 0x9750, 0x687A, 0x9751, 0x687B, 0x9752, 0x687C,
- 0x9753, 0x687D, 0x9754, 0x687E, 0x9755, 0x687F, 0x9756, 0x6880,
- 0x9757, 0x6882, 0x9758, 0x6884, 0x9759, 0x6887, 0x975A, 0x6888,
- 0x975B, 0x6889, 0x975C, 0x688A, 0x975D, 0x688B, 0x975E, 0x688C,
- 0x975F, 0x688D, 0x9760, 0x688E, 0x9761, 0x6890, 0x9762, 0x6891,
- 0x9763, 0x6892, 0x9764, 0x6894, 0x9765, 0x6895, 0x9766, 0x6896,
- 0x9767, 0x6898, 0x9768, 0x6899, 0x9769, 0x689A, 0x976A, 0x689B,
- 0x976B, 0x689C, 0x976C, 0x689D, 0x976D, 0x689E, 0x976E, 0x689F,
- 0x976F, 0x68A0, 0x9770, 0x68A1, 0x9771, 0x68A3, 0x9772, 0x68A4,
- 0x9773, 0x68A5, 0x9774, 0x68A9, 0x9775, 0x68AA, 0x9776, 0x68AB,
- 0x9777, 0x68AC, 0x9778, 0x68AE, 0x9779, 0x68B1, 0x977A, 0x68B2,
- 0x977B, 0x68B4, 0x977C, 0x68B6, 0x977D, 0x68B7, 0x977E, 0x68B8,
- 0x9780, 0x68B9, 0x9781, 0x68BA, 0x9782, 0x68BB, 0x9783, 0x68BC,
- 0x9784, 0x68BD, 0x9785, 0x68BE, 0x9786, 0x68BF, 0x9787, 0x68C1,
- 0x9788, 0x68C3, 0x9789, 0x68C4, 0x978A, 0x68C5, 0x978B, 0x68C6,
- 0x978C, 0x68C7, 0x978D, 0x68C8, 0x978E, 0x68CA, 0x978F, 0x68CC,
- 0x9790, 0x68CE, 0x9791, 0x68CF, 0x9792, 0x68D0, 0x9793, 0x68D1,
- 0x9794, 0x68D3, 0x9795, 0x68D4, 0x9796, 0x68D6, 0x9797, 0x68D7,
- 0x9798, 0x68D9, 0x9799, 0x68DB, 0x979A, 0x68DC, 0x979B, 0x68DD,
- 0x979C, 0x68DE, 0x979D, 0x68DF, 0x979E, 0x68E1, 0x979F, 0x68E2,
- 0x97A0, 0x68E4, 0x97A1, 0x68E5, 0x97A2, 0x68E6, 0x97A3, 0x68E7,
- 0x97A4, 0x68E8, 0x97A5, 0x68E9, 0x97A6, 0x68EA, 0x97A7, 0x68EB,
- 0x97A8, 0x68EC, 0x97A9, 0x68ED, 0x97AA, 0x68EF, 0x97AB, 0x68F2,
- 0x97AC, 0x68F3, 0x97AD, 0x68F4, 0x97AE, 0x68F6, 0x97AF, 0x68F7,
- 0x97B0, 0x68F8, 0x97B1, 0x68FB, 0x97B2, 0x68FD, 0x97B3, 0x68FE,
- 0x97B4, 0x68FF, 0x97B5, 0x6900, 0x97B6, 0x6902, 0x97B7, 0x6903,
- 0x97B8, 0x6904, 0x97B9, 0x6906, 0x97BA, 0x6907, 0x97BB, 0x6908,
- 0x97BC, 0x6909, 0x97BD, 0x690A, 0x97BE, 0x690C, 0x97BF, 0x690F,
- 0x97C0, 0x6911, 0x97C1, 0x6913, 0x97C2, 0x6914, 0x97C3, 0x6915,
- 0x97C4, 0x6916, 0x97C5, 0x6917, 0x97C6, 0x6918, 0x97C7, 0x6919,
- 0x97C8, 0x691A, 0x97C9, 0x691B, 0x97CA, 0x691C, 0x97CB, 0x691D,
- 0x97CC, 0x691E, 0x97CD, 0x6921, 0x97CE, 0x6922, 0x97CF, 0x6923,
- 0x97D0, 0x6925, 0x97D1, 0x6926, 0x97D2, 0x6927, 0x97D3, 0x6928,
- 0x97D4, 0x6929, 0x97D5, 0x692A, 0x97D6, 0x692B, 0x97D7, 0x692C,
- 0x97D8, 0x692E, 0x97D9, 0x692F, 0x97DA, 0x6931, 0x97DB, 0x6932,
- 0x97DC, 0x6933, 0x97DD, 0x6935, 0x97DE, 0x6936, 0x97DF, 0x6937,
- 0x97E0, 0x6938, 0x97E1, 0x693A, 0x97E2, 0x693B, 0x97E3, 0x693C,
- 0x97E4, 0x693E, 0x97E5, 0x6940, 0x97E6, 0x6941, 0x97E7, 0x6943,
- 0x97E8, 0x6944, 0x97E9, 0x6945, 0x97EA, 0x6946, 0x97EB, 0x6947,
- 0x97EC, 0x6948, 0x97ED, 0x6949, 0x97EE, 0x694A, 0x97EF, 0x694B,
- 0x97F0, 0x694C, 0x97F1, 0x694D, 0x97F2, 0x694E, 0x97F3, 0x694F,
- 0x97F4, 0x6950, 0x97F5, 0x6951, 0x97F6, 0x6952, 0x97F7, 0x6953,
- 0x97F8, 0x6955, 0x97F9, 0x6956, 0x97FA, 0x6958, 0x97FB, 0x6959,
- 0x97FC, 0x695B, 0x97FD, 0x695C, 0x97FE, 0x695F, 0x9840, 0x6961,
- 0x9841, 0x6962, 0x9842, 0x6964, 0x9843, 0x6965, 0x9844, 0x6967,
- 0x9845, 0x6968, 0x9846, 0x6969, 0x9847, 0x696A, 0x9848, 0x696C,
- 0x9849, 0x696D, 0x984A, 0x696F, 0x984B, 0x6970, 0x984C, 0x6972,
- 0x984D, 0x6973, 0x984E, 0x6974, 0x984F, 0x6975, 0x9850, 0x6976,
- 0x9851, 0x697A, 0x9852, 0x697B, 0x9853, 0x697D, 0x9854, 0x697E,
- 0x9855, 0x697F, 0x9856, 0x6981, 0x9857, 0x6983, 0x9858, 0x6985,
- 0x9859, 0x698A, 0x985A, 0x698B, 0x985B, 0x698C, 0x985C, 0x698E,
- 0x985D, 0x698F, 0x985E, 0x6990, 0x985F, 0x6991, 0x9860, 0x6992,
- 0x9861, 0x6993, 0x9862, 0x6996, 0x9863, 0x6997, 0x9864, 0x6999,
- 0x9865, 0x699A, 0x9866, 0x699D, 0x9867, 0x699E, 0x9868, 0x699F,
- 0x9869, 0x69A0, 0x986A, 0x69A1, 0x986B, 0x69A2, 0x986C, 0x69A3,
- 0x986D, 0x69A4, 0x986E, 0x69A5, 0x986F, 0x69A6, 0x9870, 0x69A9,
- 0x9871, 0x69AA, 0x9872, 0x69AC, 0x9873, 0x69AE, 0x9874, 0x69AF,
- 0x9875, 0x69B0, 0x9876, 0x69B2, 0x9877, 0x69B3, 0x9878, 0x69B5,
- 0x9879, 0x69B6, 0x987A, 0x69B8, 0x987B, 0x69B9, 0x987C, 0x69BA,
- 0x987D, 0x69BC, 0x987E, 0x69BD, 0x9880, 0x69BE, 0x9881, 0x69BF,
- 0x9882, 0x69C0, 0x9883, 0x69C2, 0x9884, 0x69C3, 0x9885, 0x69C4,
- 0x9886, 0x69C5, 0x9887, 0x69C6, 0x9888, 0x69C7, 0x9889, 0x69C8,
- 0x988A, 0x69C9, 0x988B, 0x69CB, 0x988C, 0x69CD, 0x988D, 0x69CF,
- 0x988E, 0x69D1, 0x988F, 0x69D2, 0x9890, 0x69D3, 0x9891, 0x69D5,
- 0x9892, 0x69D6, 0x9893, 0x69D7, 0x9894, 0x69D8, 0x9895, 0x69D9,
- 0x9896, 0x69DA, 0x9897, 0x69DC, 0x9898, 0x69DD, 0x9899, 0x69DE,
- 0x989A, 0x69E1, 0x989B, 0x69E2, 0x989C, 0x69E3, 0x989D, 0x69E4,
- 0x989E, 0x69E5, 0x989F, 0x69E6, 0x98A0, 0x69E7, 0x98A1, 0x69E8,
- 0x98A2, 0x69E9, 0x98A3, 0x69EA, 0x98A4, 0x69EB, 0x98A5, 0x69EC,
- 0x98A6, 0x69EE, 0x98A7, 0x69EF, 0x98A8, 0x69F0, 0x98A9, 0x69F1,
- 0x98AA, 0x69F3, 0x98AB, 0x69F4, 0x98AC, 0x69F5, 0x98AD, 0x69F6,
- 0x98AE, 0x69F7, 0x98AF, 0x69F8, 0x98B0, 0x69F9, 0x98B1, 0x69FA,
- 0x98B2, 0x69FB, 0x98B3, 0x69FC, 0x98B4, 0x69FE, 0x98B5, 0x6A00,
- 0x98B6, 0x6A01, 0x98B7, 0x6A02, 0x98B8, 0x6A03, 0x98B9, 0x6A04,
- 0x98BA, 0x6A05, 0x98BB, 0x6A06, 0x98BC, 0x6A07, 0x98BD, 0x6A08,
- 0x98BE, 0x6A09, 0x98BF, 0x6A0B, 0x98C0, 0x6A0C, 0x98C1, 0x6A0D,
- 0x98C2, 0x6A0E, 0x98C3, 0x6A0F, 0x98C4, 0x6A10, 0x98C5, 0x6A11,
- 0x98C6, 0x6A12, 0x98C7, 0x6A13, 0x98C8, 0x6A14, 0x98C9, 0x6A15,
- 0x98CA, 0x6A16, 0x98CB, 0x6A19, 0x98CC, 0x6A1A, 0x98CD, 0x6A1B,
- 0x98CE, 0x6A1C, 0x98CF, 0x6A1D, 0x98D0, 0x6A1E, 0x98D1, 0x6A20,
- 0x98D2, 0x6A22, 0x98D3, 0x6A23, 0x98D4, 0x6A24, 0x98D5, 0x6A25,
- 0x98D6, 0x6A26, 0x98D7, 0x6A27, 0x98D8, 0x6A29, 0x98D9, 0x6A2B,
- 0x98DA, 0x6A2C, 0x98DB, 0x6A2D, 0x98DC, 0x6A2E, 0x98DD, 0x6A30,
- 0x98DE, 0x6A32, 0x98DF, 0x6A33, 0x98E0, 0x6A34, 0x98E1, 0x6A36,
- 0x98E2, 0x6A37, 0x98E3, 0x6A38, 0x98E4, 0x6A39, 0x98E5, 0x6A3A,
- 0x98E6, 0x6A3B, 0x98E7, 0x6A3C, 0x98E8, 0x6A3F, 0x98E9, 0x6A40,
- 0x98EA, 0x6A41, 0x98EB, 0x6A42, 0x98EC, 0x6A43, 0x98ED, 0x6A45,
- 0x98EE, 0x6A46, 0x98EF, 0x6A48, 0x98F0, 0x6A49, 0x98F1, 0x6A4A,
- 0x98F2, 0x6A4B, 0x98F3, 0x6A4C, 0x98F4, 0x6A4D, 0x98F5, 0x6A4E,
- 0x98F6, 0x6A4F, 0x98F7, 0x6A51, 0x98F8, 0x6A52, 0x98F9, 0x6A53,
- 0x98FA, 0x6A54, 0x98FB, 0x6A55, 0x98FC, 0x6A56, 0x98FD, 0x6A57,
- 0x98FE, 0x6A5A, 0x9940, 0x6A5C, 0x9941, 0x6A5D, 0x9942, 0x6A5E,
- 0x9943, 0x6A5F, 0x9944, 0x6A60, 0x9945, 0x6A62, 0x9946, 0x6A63,
- 0x9947, 0x6A64, 0x9948, 0x6A66, 0x9949, 0x6A67, 0x994A, 0x6A68,
- 0x994B, 0x6A69, 0x994C, 0x6A6A, 0x994D, 0x6A6B, 0x994E, 0x6A6C,
- 0x994F, 0x6A6D, 0x9950, 0x6A6E, 0x9951, 0x6A6F, 0x9952, 0x6A70,
- 0x9953, 0x6A72, 0x9954, 0x6A73, 0x9955, 0x6A74, 0x9956, 0x6A75,
- 0x9957, 0x6A76, 0x9958, 0x6A77, 0x9959, 0x6A78, 0x995A, 0x6A7A,
- 0x995B, 0x6A7B, 0x995C, 0x6A7D, 0x995D, 0x6A7E, 0x995E, 0x6A7F,
- 0x995F, 0x6A81, 0x9960, 0x6A82, 0x9961, 0x6A83, 0x9962, 0x6A85,
- 0x9963, 0x6A86, 0x9964, 0x6A87, 0x9965, 0x6A88, 0x9966, 0x6A89,
- 0x9967, 0x6A8A, 0x9968, 0x6A8B, 0x9969, 0x6A8C, 0x996A, 0x6A8D,
- 0x996B, 0x6A8F, 0x996C, 0x6A92, 0x996D, 0x6A93, 0x996E, 0x6A94,
- 0x996F, 0x6A95, 0x9970, 0x6A96, 0x9971, 0x6A98, 0x9972, 0x6A99,
- 0x9973, 0x6A9A, 0x9974, 0x6A9B, 0x9975, 0x6A9C, 0x9976, 0x6A9D,
- 0x9977, 0x6A9E, 0x9978, 0x6A9F, 0x9979, 0x6AA1, 0x997A, 0x6AA2,
- 0x997B, 0x6AA3, 0x997C, 0x6AA4, 0x997D, 0x6AA5, 0x997E, 0x6AA6,
- 0x9980, 0x6AA7, 0x9981, 0x6AA8, 0x9982, 0x6AAA, 0x9983, 0x6AAD,
- 0x9984, 0x6AAE, 0x9985, 0x6AAF, 0x9986, 0x6AB0, 0x9987, 0x6AB1,
- 0x9988, 0x6AB2, 0x9989, 0x6AB3, 0x998A, 0x6AB4, 0x998B, 0x6AB5,
- 0x998C, 0x6AB6, 0x998D, 0x6AB7, 0x998E, 0x6AB8, 0x998F, 0x6AB9,
- 0x9990, 0x6ABA, 0x9991, 0x6ABB, 0x9992, 0x6ABC, 0x9993, 0x6ABD,
- 0x9994, 0x6ABE, 0x9995, 0x6ABF, 0x9996, 0x6AC0, 0x9997, 0x6AC1,
- 0x9998, 0x6AC2, 0x9999, 0x6AC3, 0x999A, 0x6AC4, 0x999B, 0x6AC5,
- 0x999C, 0x6AC6, 0x999D, 0x6AC7, 0x999E, 0x6AC8, 0x999F, 0x6AC9,
- 0x99A0, 0x6ACA, 0x99A1, 0x6ACB, 0x99A2, 0x6ACC, 0x99A3, 0x6ACD,
- 0x99A4, 0x6ACE, 0x99A5, 0x6ACF, 0x99A6, 0x6AD0, 0x99A7, 0x6AD1,
- 0x99A8, 0x6AD2, 0x99A9, 0x6AD3, 0x99AA, 0x6AD4, 0x99AB, 0x6AD5,
- 0x99AC, 0x6AD6, 0x99AD, 0x6AD7, 0x99AE, 0x6AD8, 0x99AF, 0x6AD9,
- 0x99B0, 0x6ADA, 0x99B1, 0x6ADB, 0x99B2, 0x6ADC, 0x99B3, 0x6ADD,
- 0x99B4, 0x6ADE, 0x99B5, 0x6ADF, 0x99B6, 0x6AE0, 0x99B7, 0x6AE1,
- 0x99B8, 0x6AE2, 0x99B9, 0x6AE3, 0x99BA, 0x6AE4, 0x99BB, 0x6AE5,
- 0x99BC, 0x6AE6, 0x99BD, 0x6AE7, 0x99BE, 0x6AE8, 0x99BF, 0x6AE9,
- 0x99C0, 0x6AEA, 0x99C1, 0x6AEB, 0x99C2, 0x6AEC, 0x99C3, 0x6AED,
- 0x99C4, 0x6AEE, 0x99C5, 0x6AEF, 0x99C6, 0x6AF0, 0x99C7, 0x6AF1,
- 0x99C8, 0x6AF2, 0x99C9, 0x6AF3, 0x99CA, 0x6AF4, 0x99CB, 0x6AF5,
- 0x99CC, 0x6AF6, 0x99CD, 0x6AF7, 0x99CE, 0x6AF8, 0x99CF, 0x6AF9,
- 0x99D0, 0x6AFA, 0x99D1, 0x6AFB, 0x99D2, 0x6AFC, 0x99D3, 0x6AFD,
- 0x99D4, 0x6AFE, 0x99D5, 0x6AFF, 0x99D6, 0x6B00, 0x99D7, 0x6B01,
- 0x99D8, 0x6B02, 0x99D9, 0x6B03, 0x99DA, 0x6B04, 0x99DB, 0x6B05,
- 0x99DC, 0x6B06, 0x99DD, 0x6B07, 0x99DE, 0x6B08, 0x99DF, 0x6B09,
- 0x99E0, 0x6B0A, 0x99E1, 0x6B0B, 0x99E2, 0x6B0C, 0x99E3, 0x6B0D,
- 0x99E4, 0x6B0E, 0x99E5, 0x6B0F, 0x99E6, 0x6B10, 0x99E7, 0x6B11,
- 0x99E8, 0x6B12, 0x99E9, 0x6B13, 0x99EA, 0x6B14, 0x99EB, 0x6B15,
- 0x99EC, 0x6B16, 0x99ED, 0x6B17, 0x99EE, 0x6B18, 0x99EF, 0x6B19,
- 0x99F0, 0x6B1A, 0x99F1, 0x6B1B, 0x99F2, 0x6B1C, 0x99F3, 0x6B1D,
- 0x99F4, 0x6B1E, 0x99F5, 0x6B1F, 0x99F6, 0x6B25, 0x99F7, 0x6B26,
- 0x99F8, 0x6B28, 0x99F9, 0x6B29, 0x99FA, 0x6B2A, 0x99FB, 0x6B2B,
- 0x99FC, 0x6B2C, 0x99FD, 0x6B2D, 0x99FE, 0x6B2E, 0x9A40, 0x6B2F,
- 0x9A41, 0x6B30, 0x9A42, 0x6B31, 0x9A43, 0x6B33, 0x9A44, 0x6B34,
- 0x9A45, 0x6B35, 0x9A46, 0x6B36, 0x9A47, 0x6B38, 0x9A48, 0x6B3B,
- 0x9A49, 0x6B3C, 0x9A4A, 0x6B3D, 0x9A4B, 0x6B3F, 0x9A4C, 0x6B40,
- 0x9A4D, 0x6B41, 0x9A4E, 0x6B42, 0x9A4F, 0x6B44, 0x9A50, 0x6B45,
- 0x9A51, 0x6B48, 0x9A52, 0x6B4A, 0x9A53, 0x6B4B, 0x9A54, 0x6B4D,
- 0x9A55, 0x6B4E, 0x9A56, 0x6B4F, 0x9A57, 0x6B50, 0x9A58, 0x6B51,
- 0x9A59, 0x6B52, 0x9A5A, 0x6B53, 0x9A5B, 0x6B54, 0x9A5C, 0x6B55,
- 0x9A5D, 0x6B56, 0x9A5E, 0x6B57, 0x9A5F, 0x6B58, 0x9A60, 0x6B5A,
- 0x9A61, 0x6B5B, 0x9A62, 0x6B5C, 0x9A63, 0x6B5D, 0x9A64, 0x6B5E,
- 0x9A65, 0x6B5F, 0x9A66, 0x6B60, 0x9A67, 0x6B61, 0x9A68, 0x6B68,
- 0x9A69, 0x6B69, 0x9A6A, 0x6B6B, 0x9A6B, 0x6B6C, 0x9A6C, 0x6B6D,
- 0x9A6D, 0x6B6E, 0x9A6E, 0x6B6F, 0x9A6F, 0x6B70, 0x9A70, 0x6B71,
- 0x9A71, 0x6B72, 0x9A72, 0x6B73, 0x9A73, 0x6B74, 0x9A74, 0x6B75,
- 0x9A75, 0x6B76, 0x9A76, 0x6B77, 0x9A77, 0x6B78, 0x9A78, 0x6B7A,
- 0x9A79, 0x6B7D, 0x9A7A, 0x6B7E, 0x9A7B, 0x6B7F, 0x9A7C, 0x6B80,
- 0x9A7D, 0x6B85, 0x9A7E, 0x6B88, 0x9A80, 0x6B8C, 0x9A81, 0x6B8E,
- 0x9A82, 0x6B8F, 0x9A83, 0x6B90, 0x9A84, 0x6B91, 0x9A85, 0x6B94,
- 0x9A86, 0x6B95, 0x9A87, 0x6B97, 0x9A88, 0x6B98, 0x9A89, 0x6B99,
- 0x9A8A, 0x6B9C, 0x9A8B, 0x6B9D, 0x9A8C, 0x6B9E, 0x9A8D, 0x6B9F,
- 0x9A8E, 0x6BA0, 0x9A8F, 0x6BA2, 0x9A90, 0x6BA3, 0x9A91, 0x6BA4,
- 0x9A92, 0x6BA5, 0x9A93, 0x6BA6, 0x9A94, 0x6BA7, 0x9A95, 0x6BA8,
- 0x9A96, 0x6BA9, 0x9A97, 0x6BAB, 0x9A98, 0x6BAC, 0x9A99, 0x6BAD,
- 0x9A9A, 0x6BAE, 0x9A9B, 0x6BAF, 0x9A9C, 0x6BB0, 0x9A9D, 0x6BB1,
- 0x9A9E, 0x6BB2, 0x9A9F, 0x6BB6, 0x9AA0, 0x6BB8, 0x9AA1, 0x6BB9,
- 0x9AA2, 0x6BBA, 0x9AA3, 0x6BBB, 0x9AA4, 0x6BBC, 0x9AA5, 0x6BBD,
- 0x9AA6, 0x6BBE, 0x9AA7, 0x6BC0, 0x9AA8, 0x6BC3, 0x9AA9, 0x6BC4,
- 0x9AAA, 0x6BC6, 0x9AAB, 0x6BC7, 0x9AAC, 0x6BC8, 0x9AAD, 0x6BC9,
- 0x9AAE, 0x6BCA, 0x9AAF, 0x6BCC, 0x9AB0, 0x6BCE, 0x9AB1, 0x6BD0,
- 0x9AB2, 0x6BD1, 0x9AB3, 0x6BD8, 0x9AB4, 0x6BDA, 0x9AB5, 0x6BDC,
- 0x9AB6, 0x6BDD, 0x9AB7, 0x6BDE, 0x9AB8, 0x6BDF, 0x9AB9, 0x6BE0,
- 0x9ABA, 0x6BE2, 0x9ABB, 0x6BE3, 0x9ABC, 0x6BE4, 0x9ABD, 0x6BE5,
- 0x9ABE, 0x6BE6, 0x9ABF, 0x6BE7, 0x9AC0, 0x6BE8, 0x9AC1, 0x6BE9,
- 0x9AC2, 0x6BEC, 0x9AC3, 0x6BED, 0x9AC4, 0x6BEE, 0x9AC5, 0x6BF0,
- 0x9AC6, 0x6BF1, 0x9AC7, 0x6BF2, 0x9AC8, 0x6BF4, 0x9AC9, 0x6BF6,
- 0x9ACA, 0x6BF7, 0x9ACB, 0x6BF8, 0x9ACC, 0x6BFA, 0x9ACD, 0x6BFB,
- 0x9ACE, 0x6BFC, 0x9ACF, 0x6BFE, 0x9AD0, 0x6BFF, 0x9AD1, 0x6C00,
- 0x9AD2, 0x6C01, 0x9AD3, 0x6C02, 0x9AD4, 0x6C03, 0x9AD5, 0x6C04,
- 0x9AD6, 0x6C08, 0x9AD7, 0x6C09, 0x9AD8, 0x6C0A, 0x9AD9, 0x6C0B,
- 0x9ADA, 0x6C0C, 0x9ADB, 0x6C0E, 0x9ADC, 0x6C12, 0x9ADD, 0x6C17,
- 0x9ADE, 0x6C1C, 0x9ADF, 0x6C1D, 0x9AE0, 0x6C1E, 0x9AE1, 0x6C20,
- 0x9AE2, 0x6C23, 0x9AE3, 0x6C25, 0x9AE4, 0x6C2B, 0x9AE5, 0x6C2C,
- 0x9AE6, 0x6C2D, 0x9AE7, 0x6C31, 0x9AE8, 0x6C33, 0x9AE9, 0x6C36,
- 0x9AEA, 0x6C37, 0x9AEB, 0x6C39, 0x9AEC, 0x6C3A, 0x9AED, 0x6C3B,
- 0x9AEE, 0x6C3C, 0x9AEF, 0x6C3E, 0x9AF0, 0x6C3F, 0x9AF1, 0x6C43,
- 0x9AF2, 0x6C44, 0x9AF3, 0x6C45, 0x9AF4, 0x6C48, 0x9AF5, 0x6C4B,
- 0x9AF6, 0x6C4C, 0x9AF7, 0x6C4D, 0x9AF8, 0x6C4E, 0x9AF9, 0x6C4F,
- 0x9AFA, 0x6C51, 0x9AFB, 0x6C52, 0x9AFC, 0x6C53, 0x9AFD, 0x6C56,
- 0x9AFE, 0x6C58, 0x9B40, 0x6C59, 0x9B41, 0x6C5A, 0x9B42, 0x6C62,
- 0x9B43, 0x6C63, 0x9B44, 0x6C65, 0x9B45, 0x6C66, 0x9B46, 0x6C67,
- 0x9B47, 0x6C6B, 0x9B48, 0x6C6C, 0x9B49, 0x6C6D, 0x9B4A, 0x6C6E,
- 0x9B4B, 0x6C6F, 0x9B4C, 0x6C71, 0x9B4D, 0x6C73, 0x9B4E, 0x6C75,
- 0x9B4F, 0x6C77, 0x9B50, 0x6C78, 0x9B51, 0x6C7A, 0x9B52, 0x6C7B,
- 0x9B53, 0x6C7C, 0x9B54, 0x6C7F, 0x9B55, 0x6C80, 0x9B56, 0x6C84,
- 0x9B57, 0x6C87, 0x9B58, 0x6C8A, 0x9B59, 0x6C8B, 0x9B5A, 0x6C8D,
- 0x9B5B, 0x6C8E, 0x9B5C, 0x6C91, 0x9B5D, 0x6C92, 0x9B5E, 0x6C95,
- 0x9B5F, 0x6C96, 0x9B60, 0x6C97, 0x9B61, 0x6C98, 0x9B62, 0x6C9A,
- 0x9B63, 0x6C9C, 0x9B64, 0x6C9D, 0x9B65, 0x6C9E, 0x9B66, 0x6CA0,
- 0x9B67, 0x6CA2, 0x9B68, 0x6CA8, 0x9B69, 0x6CAC, 0x9B6A, 0x6CAF,
- 0x9B6B, 0x6CB0, 0x9B6C, 0x6CB4, 0x9B6D, 0x6CB5, 0x9B6E, 0x6CB6,
- 0x9B6F, 0x6CB7, 0x9B70, 0x6CBA, 0x9B71, 0x6CC0, 0x9B72, 0x6CC1,
- 0x9B73, 0x6CC2, 0x9B74, 0x6CC3, 0x9B75, 0x6CC6, 0x9B76, 0x6CC7,
- 0x9B77, 0x6CC8, 0x9B78, 0x6CCB, 0x9B79, 0x6CCD, 0x9B7A, 0x6CCE,
- 0x9B7B, 0x6CCF, 0x9B7C, 0x6CD1, 0x9B7D, 0x6CD2, 0x9B7E, 0x6CD8,
- 0x9B80, 0x6CD9, 0x9B81, 0x6CDA, 0x9B82, 0x6CDC, 0x9B83, 0x6CDD,
- 0x9B84, 0x6CDF, 0x9B85, 0x6CE4, 0x9B86, 0x6CE6, 0x9B87, 0x6CE7,
- 0x9B88, 0x6CE9, 0x9B89, 0x6CEC, 0x9B8A, 0x6CED, 0x9B8B, 0x6CF2,
- 0x9B8C, 0x6CF4, 0x9B8D, 0x6CF9, 0x9B8E, 0x6CFF, 0x9B8F, 0x6D00,
- 0x9B90, 0x6D02, 0x9B91, 0x6D03, 0x9B92, 0x6D05, 0x9B93, 0x6D06,
- 0x9B94, 0x6D08, 0x9B95, 0x6D09, 0x9B96, 0x6D0A, 0x9B97, 0x6D0D,
- 0x9B98, 0x6D0F, 0x9B99, 0x6D10, 0x9B9A, 0x6D11, 0x9B9B, 0x6D13,
- 0x9B9C, 0x6D14, 0x9B9D, 0x6D15, 0x9B9E, 0x6D16, 0x9B9F, 0x6D18,
- 0x9BA0, 0x6D1C, 0x9BA1, 0x6D1D, 0x9BA2, 0x6D1F, 0x9BA3, 0x6D20,
- 0x9BA4, 0x6D21, 0x9BA5, 0x6D22, 0x9BA6, 0x6D23, 0x9BA7, 0x6D24,
- 0x9BA8, 0x6D26, 0x9BA9, 0x6D28, 0x9BAA, 0x6D29, 0x9BAB, 0x6D2C,
- 0x9BAC, 0x6D2D, 0x9BAD, 0x6D2F, 0x9BAE, 0x6D30, 0x9BAF, 0x6D34,
- 0x9BB0, 0x6D36, 0x9BB1, 0x6D37, 0x9BB2, 0x6D38, 0x9BB3, 0x6D3A,
- 0x9BB4, 0x6D3F, 0x9BB5, 0x6D40, 0x9BB6, 0x6D42, 0x9BB7, 0x6D44,
- 0x9BB8, 0x6D49, 0x9BB9, 0x6D4C, 0x9BBA, 0x6D50, 0x9BBB, 0x6D55,
- 0x9BBC, 0x6D56, 0x9BBD, 0x6D57, 0x9BBE, 0x6D58, 0x9BBF, 0x6D5B,
- 0x9BC0, 0x6D5D, 0x9BC1, 0x6D5F, 0x9BC2, 0x6D61, 0x9BC3, 0x6D62,
- 0x9BC4, 0x6D64, 0x9BC5, 0x6D65, 0x9BC6, 0x6D67, 0x9BC7, 0x6D68,
- 0x9BC8, 0x6D6B, 0x9BC9, 0x6D6C, 0x9BCA, 0x6D6D, 0x9BCB, 0x6D70,
- 0x9BCC, 0x6D71, 0x9BCD, 0x6D72, 0x9BCE, 0x6D73, 0x9BCF, 0x6D75,
- 0x9BD0, 0x6D76, 0x9BD1, 0x6D79, 0x9BD2, 0x6D7A, 0x9BD3, 0x6D7B,
- 0x9BD4, 0x6D7D, 0x9BD5, 0x6D7E, 0x9BD6, 0x6D7F, 0x9BD7, 0x6D80,
- 0x9BD8, 0x6D81, 0x9BD9, 0x6D83, 0x9BDA, 0x6D84, 0x9BDB, 0x6D86,
- 0x9BDC, 0x6D87, 0x9BDD, 0x6D8A, 0x9BDE, 0x6D8B, 0x9BDF, 0x6D8D,
- 0x9BE0, 0x6D8F, 0x9BE1, 0x6D90, 0x9BE2, 0x6D92, 0x9BE3, 0x6D96,
- 0x9BE4, 0x6D97, 0x9BE5, 0x6D98, 0x9BE6, 0x6D99, 0x9BE7, 0x6D9A,
- 0x9BE8, 0x6D9C, 0x9BE9, 0x6DA2, 0x9BEA, 0x6DA5, 0x9BEB, 0x6DAC,
- 0x9BEC, 0x6DAD, 0x9BED, 0x6DB0, 0x9BEE, 0x6DB1, 0x9BEF, 0x6DB3,
- 0x9BF0, 0x6DB4, 0x9BF1, 0x6DB6, 0x9BF2, 0x6DB7, 0x9BF3, 0x6DB9,
- 0x9BF4, 0x6DBA, 0x9BF5, 0x6DBB, 0x9BF6, 0x6DBC, 0x9BF7, 0x6DBD,
- 0x9BF8, 0x6DBE, 0x9BF9, 0x6DC1, 0x9BFA, 0x6DC2, 0x9BFB, 0x6DC3,
- 0x9BFC, 0x6DC8, 0x9BFD, 0x6DC9, 0x9BFE, 0x6DCA, 0x9C40, 0x6DCD,
- 0x9C41, 0x6DCE, 0x9C42, 0x6DCF, 0x9C43, 0x6DD0, 0x9C44, 0x6DD2,
- 0x9C45, 0x6DD3, 0x9C46, 0x6DD4, 0x9C47, 0x6DD5, 0x9C48, 0x6DD7,
- 0x9C49, 0x6DDA, 0x9C4A, 0x6DDB, 0x9C4B, 0x6DDC, 0x9C4C, 0x6DDF,
- 0x9C4D, 0x6DE2, 0x9C4E, 0x6DE3, 0x9C4F, 0x6DE5, 0x9C50, 0x6DE7,
- 0x9C51, 0x6DE8, 0x9C52, 0x6DE9, 0x9C53, 0x6DEA, 0x9C54, 0x6DED,
- 0x9C55, 0x6DEF, 0x9C56, 0x6DF0, 0x9C57, 0x6DF2, 0x9C58, 0x6DF4,
- 0x9C59, 0x6DF5, 0x9C5A, 0x6DF6, 0x9C5B, 0x6DF8, 0x9C5C, 0x6DFA,
- 0x9C5D, 0x6DFD, 0x9C5E, 0x6DFE, 0x9C5F, 0x6DFF, 0x9C60, 0x6E00,
- 0x9C61, 0x6E01, 0x9C62, 0x6E02, 0x9C63, 0x6E03, 0x9C64, 0x6E04,
- 0x9C65, 0x6E06, 0x9C66, 0x6E07, 0x9C67, 0x6E08, 0x9C68, 0x6E09,
- 0x9C69, 0x6E0B, 0x9C6A, 0x6E0F, 0x9C6B, 0x6E12, 0x9C6C, 0x6E13,
- 0x9C6D, 0x6E15, 0x9C6E, 0x6E18, 0x9C6F, 0x6E19, 0x9C70, 0x6E1B,
- 0x9C71, 0x6E1C, 0x9C72, 0x6E1E, 0x9C73, 0x6E1F, 0x9C74, 0x6E22,
- 0x9C75, 0x6E26, 0x9C76, 0x6E27, 0x9C77, 0x6E28, 0x9C78, 0x6E2A,
- 0x9C79, 0x6E2C, 0x9C7A, 0x6E2E, 0x9C7B, 0x6E30, 0x9C7C, 0x6E31,
- 0x9C7D, 0x6E33, 0x9C7E, 0x6E35, 0x9C80, 0x6E36, 0x9C81, 0x6E37,
- 0x9C82, 0x6E39, 0x9C83, 0x6E3B, 0x9C84, 0x6E3C, 0x9C85, 0x6E3D,
- 0x9C86, 0x6E3E, 0x9C87, 0x6E3F, 0x9C88, 0x6E40, 0x9C89, 0x6E41,
- 0x9C8A, 0x6E42, 0x9C8B, 0x6E45, 0x9C8C, 0x6E46, 0x9C8D, 0x6E47,
- 0x9C8E, 0x6E48, 0x9C8F, 0x6E49, 0x9C90, 0x6E4A, 0x9C91, 0x6E4B,
- 0x9C92, 0x6E4C, 0x9C93, 0x6E4F, 0x9C94, 0x6E50, 0x9C95, 0x6E51,
- 0x9C96, 0x6E52, 0x9C97, 0x6E55, 0x9C98, 0x6E57, 0x9C99, 0x6E59,
- 0x9C9A, 0x6E5A, 0x9C9B, 0x6E5C, 0x9C9C, 0x6E5D, 0x9C9D, 0x6E5E,
- 0x9C9E, 0x6E60, 0x9C9F, 0x6E61, 0x9CA0, 0x6E62, 0x9CA1, 0x6E63,
- 0x9CA2, 0x6E64, 0x9CA3, 0x6E65, 0x9CA4, 0x6E66, 0x9CA5, 0x6E67,
- 0x9CA6, 0x6E68, 0x9CA7, 0x6E69, 0x9CA8, 0x6E6A, 0x9CA9, 0x6E6C,
- 0x9CAA, 0x6E6D, 0x9CAB, 0x6E6F, 0x9CAC, 0x6E70, 0x9CAD, 0x6E71,
- 0x9CAE, 0x6E72, 0x9CAF, 0x6E73, 0x9CB0, 0x6E74, 0x9CB1, 0x6E75,
- 0x9CB2, 0x6E76, 0x9CB3, 0x6E77, 0x9CB4, 0x6E78, 0x9CB5, 0x6E79,
- 0x9CB6, 0x6E7A, 0x9CB7, 0x6E7B, 0x9CB8, 0x6E7C, 0x9CB9, 0x6E7D,
- 0x9CBA, 0x6E80, 0x9CBB, 0x6E81, 0x9CBC, 0x6E82, 0x9CBD, 0x6E84,
- 0x9CBE, 0x6E87, 0x9CBF, 0x6E88, 0x9CC0, 0x6E8A, 0x9CC1, 0x6E8B,
- 0x9CC2, 0x6E8C, 0x9CC3, 0x6E8D, 0x9CC4, 0x6E8E, 0x9CC5, 0x6E91,
- 0x9CC6, 0x6E92, 0x9CC7, 0x6E93, 0x9CC8, 0x6E94, 0x9CC9, 0x6E95,
- 0x9CCA, 0x6E96, 0x9CCB, 0x6E97, 0x9CCC, 0x6E99, 0x9CCD, 0x6E9A,
- 0x9CCE, 0x6E9B, 0x9CCF, 0x6E9D, 0x9CD0, 0x6E9E, 0x9CD1, 0x6EA0,
- 0x9CD2, 0x6EA1, 0x9CD3, 0x6EA3, 0x9CD4, 0x6EA4, 0x9CD5, 0x6EA6,
- 0x9CD6, 0x6EA8, 0x9CD7, 0x6EA9, 0x9CD8, 0x6EAB, 0x9CD9, 0x6EAC,
- 0x9CDA, 0x6EAD, 0x9CDB, 0x6EAE, 0x9CDC, 0x6EB0, 0x9CDD, 0x6EB3,
- 0x9CDE, 0x6EB5, 0x9CDF, 0x6EB8, 0x9CE0, 0x6EB9, 0x9CE1, 0x6EBC,
- 0x9CE2, 0x6EBE, 0x9CE3, 0x6EBF, 0x9CE4, 0x6EC0, 0x9CE5, 0x6EC3,
- 0x9CE6, 0x6EC4, 0x9CE7, 0x6EC5, 0x9CE8, 0x6EC6, 0x9CE9, 0x6EC8,
- 0x9CEA, 0x6EC9, 0x9CEB, 0x6ECA, 0x9CEC, 0x6ECC, 0x9CED, 0x6ECD,
- 0x9CEE, 0x6ECE, 0x9CEF, 0x6ED0, 0x9CF0, 0x6ED2, 0x9CF1, 0x6ED6,
- 0x9CF2, 0x6ED8, 0x9CF3, 0x6ED9, 0x9CF4, 0x6EDB, 0x9CF5, 0x6EDC,
- 0x9CF6, 0x6EDD, 0x9CF7, 0x6EE3, 0x9CF8, 0x6EE7, 0x9CF9, 0x6EEA,
- 0x9CFA, 0x6EEB, 0x9CFB, 0x6EEC, 0x9CFC, 0x6EED, 0x9CFD, 0x6EEE,
- 0x9CFE, 0x6EEF, 0x9D40, 0x6EF0, 0x9D41, 0x6EF1, 0x9D42, 0x6EF2,
- 0x9D43, 0x6EF3, 0x9D44, 0x6EF5, 0x9D45, 0x6EF6, 0x9D46, 0x6EF7,
- 0x9D47, 0x6EF8, 0x9D48, 0x6EFA, 0x9D49, 0x6EFB, 0x9D4A, 0x6EFC,
- 0x9D4B, 0x6EFD, 0x9D4C, 0x6EFE, 0x9D4D, 0x6EFF, 0x9D4E, 0x6F00,
- 0x9D4F, 0x6F01, 0x9D50, 0x6F03, 0x9D51, 0x6F04, 0x9D52, 0x6F05,
- 0x9D53, 0x6F07, 0x9D54, 0x6F08, 0x9D55, 0x6F0A, 0x9D56, 0x6F0B,
- 0x9D57, 0x6F0C, 0x9D58, 0x6F0D, 0x9D59, 0x6F0E, 0x9D5A, 0x6F10,
- 0x9D5B, 0x6F11, 0x9D5C, 0x6F12, 0x9D5D, 0x6F16, 0x9D5E, 0x6F17,
- 0x9D5F, 0x6F18, 0x9D60, 0x6F19, 0x9D61, 0x6F1A, 0x9D62, 0x6F1B,
- 0x9D63, 0x6F1C, 0x9D64, 0x6F1D, 0x9D65, 0x6F1E, 0x9D66, 0x6F1F,
- 0x9D67, 0x6F21, 0x9D68, 0x6F22, 0x9D69, 0x6F23, 0x9D6A, 0x6F25,
- 0x9D6B, 0x6F26, 0x9D6C, 0x6F27, 0x9D6D, 0x6F28, 0x9D6E, 0x6F2C,
- 0x9D6F, 0x6F2E, 0x9D70, 0x6F30, 0x9D71, 0x6F32, 0x9D72, 0x6F34,
- 0x9D73, 0x6F35, 0x9D74, 0x6F37, 0x9D75, 0x6F38, 0x9D76, 0x6F39,
- 0x9D77, 0x6F3A, 0x9D78, 0x6F3B, 0x9D79, 0x6F3C, 0x9D7A, 0x6F3D,
- 0x9D7B, 0x6F3F, 0x9D7C, 0x6F40, 0x9D7D, 0x6F41, 0x9D7E, 0x6F42,
- 0x9D80, 0x6F43, 0x9D81, 0x6F44, 0x9D82, 0x6F45, 0x9D83, 0x6F48,
- 0x9D84, 0x6F49, 0x9D85, 0x6F4A, 0x9D86, 0x6F4C, 0x9D87, 0x6F4E,
- 0x9D88, 0x6F4F, 0x9D89, 0x6F50, 0x9D8A, 0x6F51, 0x9D8B, 0x6F52,
- 0x9D8C, 0x6F53, 0x9D8D, 0x6F54, 0x9D8E, 0x6F55, 0x9D8F, 0x6F56,
- 0x9D90, 0x6F57, 0x9D91, 0x6F59, 0x9D92, 0x6F5A, 0x9D93, 0x6F5B,
- 0x9D94, 0x6F5D, 0x9D95, 0x6F5F, 0x9D96, 0x6F60, 0x9D97, 0x6F61,
- 0x9D98, 0x6F63, 0x9D99, 0x6F64, 0x9D9A, 0x6F65, 0x9D9B, 0x6F67,
- 0x9D9C, 0x6F68, 0x9D9D, 0x6F69, 0x9D9E, 0x6F6A, 0x9D9F, 0x6F6B,
- 0x9DA0, 0x6F6C, 0x9DA1, 0x6F6F, 0x9DA2, 0x6F70, 0x9DA3, 0x6F71,
- 0x9DA4, 0x6F73, 0x9DA5, 0x6F75, 0x9DA6, 0x6F76, 0x9DA7, 0x6F77,
- 0x9DA8, 0x6F79, 0x9DA9, 0x6F7B, 0x9DAA, 0x6F7D, 0x9DAB, 0x6F7E,
- 0x9DAC, 0x6F7F, 0x9DAD, 0x6F80, 0x9DAE, 0x6F81, 0x9DAF, 0x6F82,
- 0x9DB0, 0x6F83, 0x9DB1, 0x6F85, 0x9DB2, 0x6F86, 0x9DB3, 0x6F87,
- 0x9DB4, 0x6F8A, 0x9DB5, 0x6F8B, 0x9DB6, 0x6F8F, 0x9DB7, 0x6F90,
- 0x9DB8, 0x6F91, 0x9DB9, 0x6F92, 0x9DBA, 0x6F93, 0x9DBB, 0x6F94,
- 0x9DBC, 0x6F95, 0x9DBD, 0x6F96, 0x9DBE, 0x6F97, 0x9DBF, 0x6F98,
- 0x9DC0, 0x6F99, 0x9DC1, 0x6F9A, 0x9DC2, 0x6F9B, 0x9DC3, 0x6F9D,
- 0x9DC4, 0x6F9E, 0x9DC5, 0x6F9F, 0x9DC6, 0x6FA0, 0x9DC7, 0x6FA2,
- 0x9DC8, 0x6FA3, 0x9DC9, 0x6FA4, 0x9DCA, 0x6FA5, 0x9DCB, 0x6FA6,
- 0x9DCC, 0x6FA8, 0x9DCD, 0x6FA9, 0x9DCE, 0x6FAA, 0x9DCF, 0x6FAB,
- 0x9DD0, 0x6FAC, 0x9DD1, 0x6FAD, 0x9DD2, 0x6FAE, 0x9DD3, 0x6FAF,
- 0x9DD4, 0x6FB0, 0x9DD5, 0x6FB1, 0x9DD6, 0x6FB2, 0x9DD7, 0x6FB4,
- 0x9DD8, 0x6FB5, 0x9DD9, 0x6FB7, 0x9DDA, 0x6FB8, 0x9DDB, 0x6FBA,
- 0x9DDC, 0x6FBB, 0x9DDD, 0x6FBC, 0x9DDE, 0x6FBD, 0x9DDF, 0x6FBE,
- 0x9DE0, 0x6FBF, 0x9DE1, 0x6FC1, 0x9DE2, 0x6FC3, 0x9DE3, 0x6FC4,
- 0x9DE4, 0x6FC5, 0x9DE5, 0x6FC6, 0x9DE6, 0x6FC7, 0x9DE7, 0x6FC8,
- 0x9DE8, 0x6FCA, 0x9DE9, 0x6FCB, 0x9DEA, 0x6FCC, 0x9DEB, 0x6FCD,
- 0x9DEC, 0x6FCE, 0x9DED, 0x6FCF, 0x9DEE, 0x6FD0, 0x9DEF, 0x6FD3,
- 0x9DF0, 0x6FD4, 0x9DF1, 0x6FD5, 0x9DF2, 0x6FD6, 0x9DF3, 0x6FD7,
- 0x9DF4, 0x6FD8, 0x9DF5, 0x6FD9, 0x9DF6, 0x6FDA, 0x9DF7, 0x6FDB,
- 0x9DF8, 0x6FDC, 0x9DF9, 0x6FDD, 0x9DFA, 0x6FDF, 0x9DFB, 0x6FE2,
- 0x9DFC, 0x6FE3, 0x9DFD, 0x6FE4, 0x9DFE, 0x6FE5, 0x9E40, 0x6FE6,
- 0x9E41, 0x6FE7, 0x9E42, 0x6FE8, 0x9E43, 0x6FE9, 0x9E44, 0x6FEA,
- 0x9E45, 0x6FEB, 0x9E46, 0x6FEC, 0x9E47, 0x6FED, 0x9E48, 0x6FF0,
- 0x9E49, 0x6FF1, 0x9E4A, 0x6FF2, 0x9E4B, 0x6FF3, 0x9E4C, 0x6FF4,
- 0x9E4D, 0x6FF5, 0x9E4E, 0x6FF6, 0x9E4F, 0x6FF7, 0x9E50, 0x6FF8,
- 0x9E51, 0x6FF9, 0x9E52, 0x6FFA, 0x9E53, 0x6FFB, 0x9E54, 0x6FFC,
- 0x9E55, 0x6FFD, 0x9E56, 0x6FFE, 0x9E57, 0x6FFF, 0x9E58, 0x7000,
- 0x9E59, 0x7001, 0x9E5A, 0x7002, 0x9E5B, 0x7003, 0x9E5C, 0x7004,
- 0x9E5D, 0x7005, 0x9E5E, 0x7006, 0x9E5F, 0x7007, 0x9E60, 0x7008,
- 0x9E61, 0x7009, 0x9E62, 0x700A, 0x9E63, 0x700B, 0x9E64, 0x700C,
- 0x9E65, 0x700D, 0x9E66, 0x700E, 0x9E67, 0x700F, 0x9E68, 0x7010,
- 0x9E69, 0x7012, 0x9E6A, 0x7013, 0x9E6B, 0x7014, 0x9E6C, 0x7015,
- 0x9E6D, 0x7016, 0x9E6E, 0x7017, 0x9E6F, 0x7018, 0x9E70, 0x7019,
- 0x9E71, 0x701C, 0x9E72, 0x701D, 0x9E73, 0x701E, 0x9E74, 0x701F,
- 0x9E75, 0x7020, 0x9E76, 0x7021, 0x9E77, 0x7022, 0x9E78, 0x7024,
- 0x9E79, 0x7025, 0x9E7A, 0x7026, 0x9E7B, 0x7027, 0x9E7C, 0x7028,
- 0x9E7D, 0x7029, 0x9E7E, 0x702A, 0x9E80, 0x702B, 0x9E81, 0x702C,
- 0x9E82, 0x702D, 0x9E83, 0x702E, 0x9E84, 0x702F, 0x9E85, 0x7030,
- 0x9E86, 0x7031, 0x9E87, 0x7032, 0x9E88, 0x7033, 0x9E89, 0x7034,
- 0x9E8A, 0x7036, 0x9E8B, 0x7037, 0x9E8C, 0x7038, 0x9E8D, 0x703A,
- 0x9E8E, 0x703B, 0x9E8F, 0x703C, 0x9E90, 0x703D, 0x9E91, 0x703E,
- 0x9E92, 0x703F, 0x9E93, 0x7040, 0x9E94, 0x7041, 0x9E95, 0x7042,
- 0x9E96, 0x7043, 0x9E97, 0x7044, 0x9E98, 0x7045, 0x9E99, 0x7046,
- 0x9E9A, 0x7047, 0x9E9B, 0x7048, 0x9E9C, 0x7049, 0x9E9D, 0x704A,
- 0x9E9E, 0x704B, 0x9E9F, 0x704D, 0x9EA0, 0x704E, 0x9EA1, 0x7050,
- 0x9EA2, 0x7051, 0x9EA3, 0x7052, 0x9EA4, 0x7053, 0x9EA5, 0x7054,
- 0x9EA6, 0x7055, 0x9EA7, 0x7056, 0x9EA8, 0x7057, 0x9EA9, 0x7058,
- 0x9EAA, 0x7059, 0x9EAB, 0x705A, 0x9EAC, 0x705B, 0x9EAD, 0x705C,
- 0x9EAE, 0x705D, 0x9EAF, 0x705F, 0x9EB0, 0x7060, 0x9EB1, 0x7061,
- 0x9EB2, 0x7062, 0x9EB3, 0x7063, 0x9EB4, 0x7064, 0x9EB5, 0x7065,
- 0x9EB6, 0x7066, 0x9EB7, 0x7067, 0x9EB8, 0x7068, 0x9EB9, 0x7069,
- 0x9EBA, 0x706A, 0x9EBB, 0x706E, 0x9EBC, 0x7071, 0x9EBD, 0x7072,
- 0x9EBE, 0x7073, 0x9EBF, 0x7074, 0x9EC0, 0x7077, 0x9EC1, 0x7079,
- 0x9EC2, 0x707A, 0x9EC3, 0x707B, 0x9EC4, 0x707D, 0x9EC5, 0x7081,
- 0x9EC6, 0x7082, 0x9EC7, 0x7083, 0x9EC8, 0x7084, 0x9EC9, 0x7086,
- 0x9ECA, 0x7087, 0x9ECB, 0x7088, 0x9ECC, 0x708B, 0x9ECD, 0x708C,
- 0x9ECE, 0x708D, 0x9ECF, 0x708F, 0x9ED0, 0x7090, 0x9ED1, 0x7091,
- 0x9ED2, 0x7093, 0x9ED3, 0x7097, 0x9ED4, 0x7098, 0x9ED5, 0x709A,
- 0x9ED6, 0x709B, 0x9ED7, 0x709E, 0x9ED8, 0x709F, 0x9ED9, 0x70A0,
- 0x9EDA, 0x70A1, 0x9EDB, 0x70A2, 0x9EDC, 0x70A3, 0x9EDD, 0x70A4,
- 0x9EDE, 0x70A5, 0x9EDF, 0x70A6, 0x9EE0, 0x70A7, 0x9EE1, 0x70A8,
- 0x9EE2, 0x70A9, 0x9EE3, 0x70AA, 0x9EE4, 0x70B0, 0x9EE5, 0x70B2,
- 0x9EE6, 0x70B4, 0x9EE7, 0x70B5, 0x9EE8, 0x70B6, 0x9EE9, 0x70BA,
- 0x9EEA, 0x70BE, 0x9EEB, 0x70BF, 0x9EEC, 0x70C4, 0x9EED, 0x70C5,
- 0x9EEE, 0x70C6, 0x9EEF, 0x70C7, 0x9EF0, 0x70C9, 0x9EF1, 0x70CB,
- 0x9EF2, 0x70CC, 0x9EF3, 0x70CD, 0x9EF4, 0x70CE, 0x9EF5, 0x70CF,
- 0x9EF6, 0x70D0, 0x9EF7, 0x70D1, 0x9EF8, 0x70D2, 0x9EF9, 0x70D3,
- 0x9EFA, 0x70D4, 0x9EFB, 0x70D5, 0x9EFC, 0x70D6, 0x9EFD, 0x70D7,
- 0x9EFE, 0x70DA, 0x9F40, 0x70DC, 0x9F41, 0x70DD, 0x9F42, 0x70DE,
- 0x9F43, 0x70E0, 0x9F44, 0x70E1, 0x9F45, 0x70E2, 0x9F46, 0x70E3,
- 0x9F47, 0x70E5, 0x9F48, 0x70EA, 0x9F49, 0x70EE, 0x9F4A, 0x70F0,
- 0x9F4B, 0x70F1, 0x9F4C, 0x70F2, 0x9F4D, 0x70F3, 0x9F4E, 0x70F4,
- 0x9F4F, 0x70F5, 0x9F50, 0x70F6, 0x9F51, 0x70F8, 0x9F52, 0x70FA,
- 0x9F53, 0x70FB, 0x9F54, 0x70FC, 0x9F55, 0x70FE, 0x9F56, 0x70FF,
- 0x9F57, 0x7100, 0x9F58, 0x7101, 0x9F59, 0x7102, 0x9F5A, 0x7103,
- 0x9F5B, 0x7104, 0x9F5C, 0x7105, 0x9F5D, 0x7106, 0x9F5E, 0x7107,
- 0x9F5F, 0x7108, 0x9F60, 0x710B, 0x9F61, 0x710C, 0x9F62, 0x710D,
- 0x9F63, 0x710E, 0x9F64, 0x710F, 0x9F65, 0x7111, 0x9F66, 0x7112,
- 0x9F67, 0x7114, 0x9F68, 0x7117, 0x9F69, 0x711B, 0x9F6A, 0x711C,
- 0x9F6B, 0x711D, 0x9F6C, 0x711E, 0x9F6D, 0x711F, 0x9F6E, 0x7120,
- 0x9F6F, 0x7121, 0x9F70, 0x7122, 0x9F71, 0x7123, 0x9F72, 0x7124,
- 0x9F73, 0x7125, 0x9F74, 0x7127, 0x9F75, 0x7128, 0x9F76, 0x7129,
- 0x9F77, 0x712A, 0x9F78, 0x712B, 0x9F79, 0x712C, 0x9F7A, 0x712D,
- 0x9F7B, 0x712E, 0x9F7C, 0x7132, 0x9F7D, 0x7133, 0x9F7E, 0x7134,
- 0x9F80, 0x7135, 0x9F81, 0x7137, 0x9F82, 0x7138, 0x9F83, 0x7139,
- 0x9F84, 0x713A, 0x9F85, 0x713B, 0x9F86, 0x713C, 0x9F87, 0x713D,
- 0x9F88, 0x713E, 0x9F89, 0x713F, 0x9F8A, 0x7140, 0x9F8B, 0x7141,
- 0x9F8C, 0x7142, 0x9F8D, 0x7143, 0x9F8E, 0x7144, 0x9F8F, 0x7146,
- 0x9F90, 0x7147, 0x9F91, 0x7148, 0x9F92, 0x7149, 0x9F93, 0x714B,
- 0x9F94, 0x714D, 0x9F95, 0x714F, 0x9F96, 0x7150, 0x9F97, 0x7151,
- 0x9F98, 0x7152, 0x9F99, 0x7153, 0x9F9A, 0x7154, 0x9F9B, 0x7155,
- 0x9F9C, 0x7156, 0x9F9D, 0x7157, 0x9F9E, 0x7158, 0x9F9F, 0x7159,
- 0x9FA0, 0x715A, 0x9FA1, 0x715B, 0x9FA2, 0x715D, 0x9FA3, 0x715F,
- 0x9FA4, 0x7160, 0x9FA5, 0x7161, 0x9FA6, 0x7162, 0x9FA7, 0x7163,
- 0x9FA8, 0x7165, 0x9FA9, 0x7169, 0x9FAA, 0x716A, 0x9FAB, 0x716B,
- 0x9FAC, 0x716C, 0x9FAD, 0x716D, 0x9FAE, 0x716F, 0x9FAF, 0x7170,
- 0x9FB0, 0x7171, 0x9FB1, 0x7174, 0x9FB2, 0x7175, 0x9FB3, 0x7176,
- 0x9FB4, 0x7177, 0x9FB5, 0x7179, 0x9FB6, 0x717B, 0x9FB7, 0x717C,
- 0x9FB8, 0x717E, 0x9FB9, 0x717F, 0x9FBA, 0x7180, 0x9FBB, 0x7181,
- 0x9FBC, 0x7182, 0x9FBD, 0x7183, 0x9FBE, 0x7185, 0x9FBF, 0x7186,
- 0x9FC0, 0x7187, 0x9FC1, 0x7188, 0x9FC2, 0x7189, 0x9FC3, 0x718B,
- 0x9FC4, 0x718C, 0x9FC5, 0x718D, 0x9FC6, 0x718E, 0x9FC7, 0x7190,
- 0x9FC8, 0x7191, 0x9FC9, 0x7192, 0x9FCA, 0x7193, 0x9FCB, 0x7195,
- 0x9FCC, 0x7196, 0x9FCD, 0x7197, 0x9FCE, 0x719A, 0x9FCF, 0x719B,
- 0x9FD0, 0x719C, 0x9FD1, 0x719D, 0x9FD2, 0x719E, 0x9FD3, 0x71A1,
- 0x9FD4, 0x71A2, 0x9FD5, 0x71A3, 0x9FD6, 0x71A4, 0x9FD7, 0x71A5,
- 0x9FD8, 0x71A6, 0x9FD9, 0x71A7, 0x9FDA, 0x71A9, 0x9FDB, 0x71AA,
- 0x9FDC, 0x71AB, 0x9FDD, 0x71AD, 0x9FDE, 0x71AE, 0x9FDF, 0x71AF,
- 0x9FE0, 0x71B0, 0x9FE1, 0x71B1, 0x9FE2, 0x71B2, 0x9FE3, 0x71B4,
- 0x9FE4, 0x71B6, 0x9FE5, 0x71B7, 0x9FE6, 0x71B8, 0x9FE7, 0x71BA,
- 0x9FE8, 0x71BB, 0x9FE9, 0x71BC, 0x9FEA, 0x71BD, 0x9FEB, 0x71BE,
- 0x9FEC, 0x71BF, 0x9FED, 0x71C0, 0x9FEE, 0x71C1, 0x9FEF, 0x71C2,
- 0x9FF0, 0x71C4, 0x9FF1, 0x71C5, 0x9FF2, 0x71C6, 0x9FF3, 0x71C7,
- 0x9FF4, 0x71C8, 0x9FF5, 0x71C9, 0x9FF6, 0x71CA, 0x9FF7, 0x71CB,
- 0x9FF8, 0x71CC, 0x9FF9, 0x71CD, 0x9FFA, 0x71CF, 0x9FFB, 0x71D0,
- 0x9FFC, 0x71D1, 0x9FFD, 0x71D2, 0x9FFE, 0x71D3, 0xA040, 0x71D6,
- 0xA041, 0x71D7, 0xA042, 0x71D8, 0xA043, 0x71D9, 0xA044, 0x71DA,
- 0xA045, 0x71DB, 0xA046, 0x71DC, 0xA047, 0x71DD, 0xA048, 0x71DE,
- 0xA049, 0x71DF, 0xA04A, 0x71E1, 0xA04B, 0x71E2, 0xA04C, 0x71E3,
- 0xA04D, 0x71E4, 0xA04E, 0x71E6, 0xA04F, 0x71E8, 0xA050, 0x71E9,
- 0xA051, 0x71EA, 0xA052, 0x71EB, 0xA053, 0x71EC, 0xA054, 0x71ED,
- 0xA055, 0x71EF, 0xA056, 0x71F0, 0xA057, 0x71F1, 0xA058, 0x71F2,
- 0xA059, 0x71F3, 0xA05A, 0x71F4, 0xA05B, 0x71F5, 0xA05C, 0x71F6,
- 0xA05D, 0x71F7, 0xA05E, 0x71F8, 0xA05F, 0x71FA, 0xA060, 0x71FB,
- 0xA061, 0x71FC, 0xA062, 0x71FD, 0xA063, 0x71FE, 0xA064, 0x71FF,
- 0xA065, 0x7200, 0xA066, 0x7201, 0xA067, 0x7202, 0xA068, 0x7203,
- 0xA069, 0x7204, 0xA06A, 0x7205, 0xA06B, 0x7207, 0xA06C, 0x7208,
- 0xA06D, 0x7209, 0xA06E, 0x720A, 0xA06F, 0x720B, 0xA070, 0x720C,
- 0xA071, 0x720D, 0xA072, 0x720E, 0xA073, 0x720F, 0xA074, 0x7210,
- 0xA075, 0x7211, 0xA076, 0x7212, 0xA077, 0x7213, 0xA078, 0x7214,
- 0xA079, 0x7215, 0xA07A, 0x7216, 0xA07B, 0x7217, 0xA07C, 0x7218,
- 0xA07D, 0x7219, 0xA07E, 0x721A, 0xA080, 0x721B, 0xA081, 0x721C,
- 0xA082, 0x721E, 0xA083, 0x721F, 0xA084, 0x7220, 0xA085, 0x7221,
- 0xA086, 0x7222, 0xA087, 0x7223, 0xA088, 0x7224, 0xA089, 0x7225,
- 0xA08A, 0x7226, 0xA08B, 0x7227, 0xA08C, 0x7229, 0xA08D, 0x722B,
- 0xA08E, 0x722D, 0xA08F, 0x722E, 0xA090, 0x722F, 0xA091, 0x7232,
- 0xA092, 0x7233, 0xA093, 0x7234, 0xA094, 0x723A, 0xA095, 0x723C,
- 0xA096, 0x723E, 0xA097, 0x7240, 0xA098, 0x7241, 0xA099, 0x7242,
- 0xA09A, 0x7243, 0xA09B, 0x7244, 0xA09C, 0x7245, 0xA09D, 0x7246,
- 0xA09E, 0x7249, 0xA09F, 0x724A, 0xA0A0, 0x724B, 0xA0A1, 0x724E,
- 0xA0A2, 0x724F, 0xA0A3, 0x7250, 0xA0A4, 0x7251, 0xA0A5, 0x7253,
- 0xA0A6, 0x7254, 0xA0A7, 0x7255, 0xA0A8, 0x7257, 0xA0A9, 0x7258,
- 0xA0AA, 0x725A, 0xA0AB, 0x725C, 0xA0AC, 0x725E, 0xA0AD, 0x7260,
- 0xA0AE, 0x7263, 0xA0AF, 0x7264, 0xA0B0, 0x7265, 0xA0B1, 0x7268,
- 0xA0B2, 0x726A, 0xA0B3, 0x726B, 0xA0B4, 0x726C, 0xA0B5, 0x726D,
- 0xA0B6, 0x7270, 0xA0B7, 0x7271, 0xA0B8, 0x7273, 0xA0B9, 0x7274,
- 0xA0BA, 0x7276, 0xA0BB, 0x7277, 0xA0BC, 0x7278, 0xA0BD, 0x727B,
- 0xA0BE, 0x727C, 0xA0BF, 0x727D, 0xA0C0, 0x7282, 0xA0C1, 0x7283,
- 0xA0C2, 0x7285, 0xA0C3, 0x7286, 0xA0C4, 0x7287, 0xA0C5, 0x7288,
- 0xA0C6, 0x7289, 0xA0C7, 0x728C, 0xA0C8, 0x728E, 0xA0C9, 0x7290,
- 0xA0CA, 0x7291, 0xA0CB, 0x7293, 0xA0CC, 0x7294, 0xA0CD, 0x7295,
- 0xA0CE, 0x7296, 0xA0CF, 0x7297, 0xA0D0, 0x7298, 0xA0D1, 0x7299,
- 0xA0D2, 0x729A, 0xA0D3, 0x729B, 0xA0D4, 0x729C, 0xA0D5, 0x729D,
- 0xA0D6, 0x729E, 0xA0D7, 0x72A0, 0xA0D8, 0x72A1, 0xA0D9, 0x72A2,
- 0xA0DA, 0x72A3, 0xA0DB, 0x72A4, 0xA0DC, 0x72A5, 0xA0DD, 0x72A6,
- 0xA0DE, 0x72A7, 0xA0DF, 0x72A8, 0xA0E0, 0x72A9, 0xA0E1, 0x72AA,
- 0xA0E2, 0x72AB, 0xA0E3, 0x72AE, 0xA0E4, 0x72B1, 0xA0E5, 0x72B2,
- 0xA0E6, 0x72B3, 0xA0E7, 0x72B5, 0xA0E8, 0x72BA, 0xA0E9, 0x72BB,
- 0xA0EA, 0x72BC, 0xA0EB, 0x72BD, 0xA0EC, 0x72BE, 0xA0ED, 0x72BF,
- 0xA0EE, 0x72C0, 0xA0EF, 0x72C5, 0xA0F0, 0x72C6, 0xA0F1, 0x72C7,
- 0xA0F2, 0x72C9, 0xA0F3, 0x72CA, 0xA0F4, 0x72CB, 0xA0F5, 0x72CC,
- 0xA0F6, 0x72CF, 0xA0F7, 0x72D1, 0xA0F8, 0x72D3, 0xA0F9, 0x72D4,
- 0xA0FA, 0x72D5, 0xA0FB, 0x72D6, 0xA0FC, 0x72D8, 0xA0FD, 0x72DA,
- 0xA0FE, 0x72DB, 0xA1A1, 0x3000, 0xA1A2, 0x3001, 0xA1A3, 0x3002,
- 0xA1A4, 0x00B7, 0xA1A5, 0x02C9, 0xA1A6, 0x02C7, 0xA1A7, 0x00A8,
- 0xA1A8, 0x3003, 0xA1A9, 0x3005, 0xA1AA, 0x2014, 0xA1AB, 0xFF5E,
- 0xA1AC, 0x2016, 0xA1AD, 0x2026, 0xA1AE, 0x2018, 0xA1AF, 0x2019,
- 0xA1B0, 0x201C, 0xA1B1, 0x201D, 0xA1B2, 0x3014, 0xA1B3, 0x3015,
- 0xA1B4, 0x3008, 0xA1B5, 0x3009, 0xA1B6, 0x300A, 0xA1B7, 0x300B,
- 0xA1B8, 0x300C, 0xA1B9, 0x300D, 0xA1BA, 0x300E, 0xA1BB, 0x300F,
- 0xA1BC, 0x3016, 0xA1BD, 0x3017, 0xA1BE, 0x3010, 0xA1BF, 0x3011,
- 0xA1C0, 0x00B1, 0xA1C1, 0x00D7, 0xA1C2, 0x00F7, 0xA1C3, 0x2236,
- 0xA1C4, 0x2227, 0xA1C5, 0x2228, 0xA1C6, 0x2211, 0xA1C7, 0x220F,
- 0xA1C8, 0x222A, 0xA1C9, 0x2229, 0xA1CA, 0x2208, 0xA1CB, 0x2237,
- 0xA1CC, 0x221A, 0xA1CD, 0x22A5, 0xA1CE, 0x2225, 0xA1CF, 0x2220,
- 0xA1D0, 0x2312, 0xA1D1, 0x2299, 0xA1D2, 0x222B, 0xA1D3, 0x222E,
- 0xA1D4, 0x2261, 0xA1D5, 0x224C, 0xA1D6, 0x2248, 0xA1D7, 0x223D,
- 0xA1D8, 0x221D, 0xA1D9, 0x2260, 0xA1DA, 0x226E, 0xA1DB, 0x226F,
- 0xA1DC, 0x2264, 0xA1DD, 0x2265, 0xA1DE, 0x221E, 0xA1DF, 0x2235,
- 0xA1E0, 0x2234, 0xA1E1, 0x2642, 0xA1E2, 0x2640, 0xA1E3, 0x00B0,
- 0xA1E4, 0x2032, 0xA1E5, 0x2033, 0xA1E6, 0x2103, 0xA1E7, 0xFF04,
- 0xA1E8, 0x00A4, 0xA1E9, 0xFFE0, 0xA1EA, 0xFFE1, 0xA1EB, 0x2030,
- 0xA1EC, 0x00A7, 0xA1ED, 0x2116, 0xA1EE, 0x2606, 0xA1EF, 0x2605,
- 0xA1F0, 0x25CB, 0xA1F1, 0x25CF, 0xA1F2, 0x25CE, 0xA1F3, 0x25C7,
- 0xA1F4, 0x25C6, 0xA1F5, 0x25A1, 0xA1F6, 0x25A0, 0xA1F7, 0x25B3,
- 0xA1F8, 0x25B2, 0xA1F9, 0x203B, 0xA1FA, 0x2192, 0xA1FB, 0x2190,
- 0xA1FC, 0x2191, 0xA1FD, 0x2193, 0xA1FE, 0x3013, 0xA2A1, 0x2170,
- 0xA2A2, 0x2171, 0xA2A3, 0x2172, 0xA2A4, 0x2173, 0xA2A5, 0x2174,
- 0xA2A6, 0x2175, 0xA2A7, 0x2176, 0xA2A8, 0x2177, 0xA2A9, 0x2178,
- 0xA2AA, 0x2179, 0xA2B1, 0x2488, 0xA2B2, 0x2489, 0xA2B3, 0x248A,
- 0xA2B4, 0x248B, 0xA2B5, 0x248C, 0xA2B6, 0x248D, 0xA2B7, 0x248E,
- 0xA2B8, 0x248F, 0xA2B9, 0x2490, 0xA2BA, 0x2491, 0xA2BB, 0x2492,
- 0xA2BC, 0x2493, 0xA2BD, 0x2494, 0xA2BE, 0x2495, 0xA2BF, 0x2496,
- 0xA2C0, 0x2497, 0xA2C1, 0x2498, 0xA2C2, 0x2499, 0xA2C3, 0x249A,
- 0xA2C4, 0x249B, 0xA2C5, 0x2474, 0xA2C6, 0x2475, 0xA2C7, 0x2476,
- 0xA2C8, 0x2477, 0xA2C9, 0x2478, 0xA2CA, 0x2479, 0xA2CB, 0x247A,
- 0xA2CC, 0x247B, 0xA2CD, 0x247C, 0xA2CE, 0x247D, 0xA2CF, 0x247E,
- 0xA2D0, 0x247F, 0xA2D1, 0x2480, 0xA2D2, 0x2481, 0xA2D3, 0x2482,
- 0xA2D4, 0x2483, 0xA2D5, 0x2484, 0xA2D6, 0x2485, 0xA2D7, 0x2486,
- 0xA2D8, 0x2487, 0xA2D9, 0x2460, 0xA2DA, 0x2461, 0xA2DB, 0x2462,
- 0xA2DC, 0x2463, 0xA2DD, 0x2464, 0xA2DE, 0x2465, 0xA2DF, 0x2466,
- 0xA2E0, 0x2467, 0xA2E1, 0x2468, 0xA2E2, 0x2469, 0xA2E5, 0x3220,
- 0xA2E6, 0x3221, 0xA2E7, 0x3222, 0xA2E8, 0x3223, 0xA2E9, 0x3224,
- 0xA2EA, 0x3225, 0xA2EB, 0x3226, 0xA2EC, 0x3227, 0xA2ED, 0x3228,
- 0xA2EE, 0x3229, 0xA2F1, 0x2160, 0xA2F2, 0x2161, 0xA2F3, 0x2162,
- 0xA2F4, 0x2163, 0xA2F5, 0x2164, 0xA2F6, 0x2165, 0xA2F7, 0x2166,
- 0xA2F8, 0x2167, 0xA2F9, 0x2168, 0xA2FA, 0x2169, 0xA2FB, 0x216A,
- 0xA2FC, 0x216B, 0xA3A1, 0xFF01, 0xA3A2, 0xFF02, 0xA3A3, 0xFF03,
- 0xA3A4, 0xFFE5, 0xA3A5, 0xFF05, 0xA3A6, 0xFF06, 0xA3A7, 0xFF07,
- 0xA3A8, 0xFF08, 0xA3A9, 0xFF09, 0xA3AA, 0xFF0A, 0xA3AB, 0xFF0B,
- 0xA3AC, 0xFF0C, 0xA3AD, 0xFF0D, 0xA3AE, 0xFF0E, 0xA3AF, 0xFF0F,
- 0xA3B0, 0xFF10, 0xA3B1, 0xFF11, 0xA3B2, 0xFF12, 0xA3B3, 0xFF13,
- 0xA3B4, 0xFF14, 0xA3B5, 0xFF15, 0xA3B6, 0xFF16, 0xA3B7, 0xFF17,
- 0xA3B8, 0xFF18, 0xA3B9, 0xFF19, 0xA3BA, 0xFF1A, 0xA3BB, 0xFF1B,
- 0xA3BC, 0xFF1C, 0xA3BD, 0xFF1D, 0xA3BE, 0xFF1E, 0xA3BF, 0xFF1F,
- 0xA3C0, 0xFF20, 0xA3C1, 0xFF21, 0xA3C2, 0xFF22, 0xA3C3, 0xFF23,
- 0xA3C4, 0xFF24, 0xA3C5, 0xFF25, 0xA3C6, 0xFF26, 0xA3C7, 0xFF27,
- 0xA3C8, 0xFF28, 0xA3C9, 0xFF29, 0xA3CA, 0xFF2A, 0xA3CB, 0xFF2B,
- 0xA3CC, 0xFF2C, 0xA3CD, 0xFF2D, 0xA3CE, 0xFF2E, 0xA3CF, 0xFF2F,
- 0xA3D0, 0xFF30, 0xA3D1, 0xFF31, 0xA3D2, 0xFF32, 0xA3D3, 0xFF33,
- 0xA3D4, 0xFF34, 0xA3D5, 0xFF35, 0xA3D6, 0xFF36, 0xA3D7, 0xFF37,
- 0xA3D8, 0xFF38, 0xA3D9, 0xFF39, 0xA3DA, 0xFF3A, 0xA3DB, 0xFF3B,
- 0xA3DC, 0xFF3C, 0xA3DD, 0xFF3D, 0xA3DE, 0xFF3E, 0xA3DF, 0xFF3F,
- 0xA3E0, 0xFF40, 0xA3E1, 0xFF41, 0xA3E2, 0xFF42, 0xA3E3, 0xFF43,
- 0xA3E4, 0xFF44, 0xA3E5, 0xFF45, 0xA3E6, 0xFF46, 0xA3E7, 0xFF47,
- 0xA3E8, 0xFF48, 0xA3E9, 0xFF49, 0xA3EA, 0xFF4A, 0xA3EB, 0xFF4B,
- 0xA3EC, 0xFF4C, 0xA3ED, 0xFF4D, 0xA3EE, 0xFF4E, 0xA3EF, 0xFF4F,
- 0xA3F0, 0xFF50, 0xA3F1, 0xFF51, 0xA3F2, 0xFF52, 0xA3F3, 0xFF53,
- 0xA3F4, 0xFF54, 0xA3F5, 0xFF55, 0xA3F6, 0xFF56, 0xA3F7, 0xFF57,
- 0xA3F8, 0xFF58, 0xA3F9, 0xFF59, 0xA3FA, 0xFF5A, 0xA3FB, 0xFF5B,
- 0xA3FC, 0xFF5C, 0xA3FD, 0xFF5D, 0xA3FE, 0xFFE3, 0xA4A1, 0x3041,
- 0xA4A2, 0x3042, 0xA4A3, 0x3043, 0xA4A4, 0x3044, 0xA4A5, 0x3045,
- 0xA4A6, 0x3046, 0xA4A7, 0x3047, 0xA4A8, 0x3048, 0xA4A9, 0x3049,
- 0xA4AA, 0x304A, 0xA4AB, 0x304B, 0xA4AC, 0x304C, 0xA4AD, 0x304D,
- 0xA4AE, 0x304E, 0xA4AF, 0x304F, 0xA4B0, 0x3050, 0xA4B1, 0x3051,
- 0xA4B2, 0x3052, 0xA4B3, 0x3053, 0xA4B4, 0x3054, 0xA4B5, 0x3055,
- 0xA4B6, 0x3056, 0xA4B7, 0x3057, 0xA4B8, 0x3058, 0xA4B9, 0x3059,
- 0xA4BA, 0x305A, 0xA4BB, 0x305B, 0xA4BC, 0x305C, 0xA4BD, 0x305D,
- 0xA4BE, 0x305E, 0xA4BF, 0x305F, 0xA4C0, 0x3060, 0xA4C1, 0x3061,
- 0xA4C2, 0x3062, 0xA4C3, 0x3063, 0xA4C4, 0x3064, 0xA4C5, 0x3065,
- 0xA4C6, 0x3066, 0xA4C7, 0x3067, 0xA4C8, 0x3068, 0xA4C9, 0x3069,
- 0xA4CA, 0x306A, 0xA4CB, 0x306B, 0xA4CC, 0x306C, 0xA4CD, 0x306D,
- 0xA4CE, 0x306E, 0xA4CF, 0x306F, 0xA4D0, 0x3070, 0xA4D1, 0x3071,
- 0xA4D2, 0x3072, 0xA4D3, 0x3073, 0xA4D4, 0x3074, 0xA4D5, 0x3075,
- 0xA4D6, 0x3076, 0xA4D7, 0x3077, 0xA4D8, 0x3078, 0xA4D9, 0x3079,
- 0xA4DA, 0x307A, 0xA4DB, 0x307B, 0xA4DC, 0x307C, 0xA4DD, 0x307D,
- 0xA4DE, 0x307E, 0xA4DF, 0x307F, 0xA4E0, 0x3080, 0xA4E1, 0x3081,
- 0xA4E2, 0x3082, 0xA4E3, 0x3083, 0xA4E4, 0x3084, 0xA4E5, 0x3085,
- 0xA4E6, 0x3086, 0xA4E7, 0x3087, 0xA4E8, 0x3088, 0xA4E9, 0x3089,
- 0xA4EA, 0x308A, 0xA4EB, 0x308B, 0xA4EC, 0x308C, 0xA4ED, 0x308D,
- 0xA4EE, 0x308E, 0xA4EF, 0x308F, 0xA4F0, 0x3090, 0xA4F1, 0x3091,
- 0xA4F2, 0x3092, 0xA4F3, 0x3093, 0xA5A1, 0x30A1, 0xA5A2, 0x30A2,
- 0xA5A3, 0x30A3, 0xA5A4, 0x30A4, 0xA5A5, 0x30A5, 0xA5A6, 0x30A6,
- 0xA5A7, 0x30A7, 0xA5A8, 0x30A8, 0xA5A9, 0x30A9, 0xA5AA, 0x30AA,
- 0xA5AB, 0x30AB, 0xA5AC, 0x30AC, 0xA5AD, 0x30AD, 0xA5AE, 0x30AE,
- 0xA5AF, 0x30AF, 0xA5B0, 0x30B0, 0xA5B1, 0x30B1, 0xA5B2, 0x30B2,
- 0xA5B3, 0x30B3, 0xA5B4, 0x30B4, 0xA5B5, 0x30B5, 0xA5B6, 0x30B6,
- 0xA5B7, 0x30B7, 0xA5B8, 0x30B8, 0xA5B9, 0x30B9, 0xA5BA, 0x30BA,
- 0xA5BB, 0x30BB, 0xA5BC, 0x30BC, 0xA5BD, 0x30BD, 0xA5BE, 0x30BE,
- 0xA5BF, 0x30BF, 0xA5C0, 0x30C0, 0xA5C1, 0x30C1, 0xA5C2, 0x30C2,
- 0xA5C3, 0x30C3, 0xA5C4, 0x30C4, 0xA5C5, 0x30C5, 0xA5C6, 0x30C6,
- 0xA5C7, 0x30C7, 0xA5C8, 0x30C8, 0xA5C9, 0x30C9, 0xA5CA, 0x30CA,
- 0xA5CB, 0x30CB, 0xA5CC, 0x30CC, 0xA5CD, 0x30CD, 0xA5CE, 0x30CE,
- 0xA5CF, 0x30CF, 0xA5D0, 0x30D0, 0xA5D1, 0x30D1, 0xA5D2, 0x30D2,
- 0xA5D3, 0x30D3, 0xA5D4, 0x30D4, 0xA5D5, 0x30D5, 0xA5D6, 0x30D6,
- 0xA5D7, 0x30D7, 0xA5D8, 0x30D8, 0xA5D9, 0x30D9, 0xA5DA, 0x30DA,
- 0xA5DB, 0x30DB, 0xA5DC, 0x30DC, 0xA5DD, 0x30DD, 0xA5DE, 0x30DE,
- 0xA5DF, 0x30DF, 0xA5E0, 0x30E0, 0xA5E1, 0x30E1, 0xA5E2, 0x30E2,
- 0xA5E3, 0x30E3, 0xA5E4, 0x30E4, 0xA5E5, 0x30E5, 0xA5E6, 0x30E6,
- 0xA5E7, 0x30E7, 0xA5E8, 0x30E8, 0xA5E9, 0x30E9, 0xA5EA, 0x30EA,
- 0xA5EB, 0x30EB, 0xA5EC, 0x30EC, 0xA5ED, 0x30ED, 0xA5EE, 0x30EE,
- 0xA5EF, 0x30EF, 0xA5F0, 0x30F0, 0xA5F1, 0x30F1, 0xA5F2, 0x30F2,
- 0xA5F3, 0x30F3, 0xA5F4, 0x30F4, 0xA5F5, 0x30F5, 0xA5F6, 0x30F6,
- 0xA6A1, 0x0391, 0xA6A2, 0x0392, 0xA6A3, 0x0393, 0xA6A4, 0x0394,
- 0xA6A5, 0x0395, 0xA6A6, 0x0396, 0xA6A7, 0x0397, 0xA6A8, 0x0398,
- 0xA6A9, 0x0399, 0xA6AA, 0x039A, 0xA6AB, 0x039B, 0xA6AC, 0x039C,
- 0xA6AD, 0x039D, 0xA6AE, 0x039E, 0xA6AF, 0x039F, 0xA6B0, 0x03A0,
- 0xA6B1, 0x03A1, 0xA6B2, 0x03A3, 0xA6B3, 0x03A4, 0xA6B4, 0x03A5,
- 0xA6B5, 0x03A6, 0xA6B6, 0x03A7, 0xA6B7, 0x03A8, 0xA6B8, 0x03A9,
- 0xA6C1, 0x03B1, 0xA6C2, 0x03B2, 0xA6C3, 0x03B3, 0xA6C4, 0x03B4,
- 0xA6C5, 0x03B5, 0xA6C6, 0x03B6, 0xA6C7, 0x03B7, 0xA6C8, 0x03B8,
- 0xA6C9, 0x03B9, 0xA6CA, 0x03BA, 0xA6CB, 0x03BB, 0xA6CC, 0x03BC,
- 0xA6CD, 0x03BD, 0xA6CE, 0x03BE, 0xA6CF, 0x03BF, 0xA6D0, 0x03C0,
- 0xA6D1, 0x03C1, 0xA6D2, 0x03C3, 0xA6D3, 0x03C4, 0xA6D4, 0x03C5,
- 0xA6D5, 0x03C6, 0xA6D6, 0x03C7, 0xA6D7, 0x03C8, 0xA6D8, 0x03C9,
- 0xA6E0, 0xFE35, 0xA6E1, 0xFE36, 0xA6E2, 0xFE39, 0xA6E3, 0xFE3A,
- 0xA6E4, 0xFE3F, 0xA6E5, 0xFE40, 0xA6E6, 0xFE3D, 0xA6E7, 0xFE3E,
- 0xA6E8, 0xFE41, 0xA6E9, 0xFE42, 0xA6EA, 0xFE43, 0xA6EB, 0xFE44,
- 0xA6EE, 0xFE3B, 0xA6EF, 0xFE3C, 0xA6F0, 0xFE37, 0xA6F1, 0xFE38,
- 0xA6F2, 0xFE31, 0xA6F4, 0xFE33, 0xA6F5, 0xFE34, 0xA7A1, 0x0410,
- 0xA7A2, 0x0411, 0xA7A3, 0x0412, 0xA7A4, 0x0413, 0xA7A5, 0x0414,
- 0xA7A6, 0x0415, 0xA7A7, 0x0401, 0xA7A8, 0x0416, 0xA7A9, 0x0417,
- 0xA7AA, 0x0418, 0xA7AB, 0x0419, 0xA7AC, 0x041A, 0xA7AD, 0x041B,
- 0xA7AE, 0x041C, 0xA7AF, 0x041D, 0xA7B0, 0x041E, 0xA7B1, 0x041F,
- 0xA7B2, 0x0420, 0xA7B3, 0x0421, 0xA7B4, 0x0422, 0xA7B5, 0x0423,
- 0xA7B6, 0x0424, 0xA7B7, 0x0425, 0xA7B8, 0x0426, 0xA7B9, 0x0427,
- 0xA7BA, 0x0428, 0xA7BB, 0x0429, 0xA7BC, 0x042A, 0xA7BD, 0x042B,
- 0xA7BE, 0x042C, 0xA7BF, 0x042D, 0xA7C0, 0x042E, 0xA7C1, 0x042F,
- 0xA7D1, 0x0430, 0xA7D2, 0x0431, 0xA7D3, 0x0432, 0xA7D4, 0x0433,
- 0xA7D5, 0x0434, 0xA7D6, 0x0435, 0xA7D7, 0x0451, 0xA7D8, 0x0436,
- 0xA7D9, 0x0437, 0xA7DA, 0x0438, 0xA7DB, 0x0439, 0xA7DC, 0x043A,
- 0xA7DD, 0x043B, 0xA7DE, 0x043C, 0xA7DF, 0x043D, 0xA7E0, 0x043E,
- 0xA7E1, 0x043F, 0xA7E2, 0x0440, 0xA7E3, 0x0441, 0xA7E4, 0x0442,
- 0xA7E5, 0x0443, 0xA7E6, 0x0444, 0xA7E7, 0x0445, 0xA7E8, 0x0446,
- 0xA7E9, 0x0447, 0xA7EA, 0x0448, 0xA7EB, 0x0449, 0xA7EC, 0x044A,
- 0xA7ED, 0x044B, 0xA7EE, 0x044C, 0xA7EF, 0x044D, 0xA7F0, 0x044E,
- 0xA7F1, 0x044F, 0xA840, 0x02CA, 0xA841, 0x02CB, 0xA842, 0x02D9,
- 0xA843, 0x2013, 0xA844, 0x2015, 0xA845, 0x2025, 0xA846, 0x2035,
- 0xA847, 0x2105, 0xA848, 0x2109, 0xA849, 0x2196, 0xA84A, 0x2197,
- 0xA84B, 0x2198, 0xA84C, 0x2199, 0xA84D, 0x2215, 0xA84E, 0x221F,
- 0xA84F, 0x2223, 0xA850, 0x2252, 0xA851, 0x2266, 0xA852, 0x2267,
- 0xA853, 0x22BF, 0xA854, 0x2550, 0xA855, 0x2551, 0xA856, 0x2552,
- 0xA857, 0x2553, 0xA858, 0x2554, 0xA859, 0x2555, 0xA85A, 0x2556,
- 0xA85B, 0x2557, 0xA85C, 0x2558, 0xA85D, 0x2559, 0xA85E, 0x255A,
- 0xA85F, 0x255B, 0xA860, 0x255C, 0xA861, 0x255D, 0xA862, 0x255E,
- 0xA863, 0x255F, 0xA864, 0x2560, 0xA865, 0x2561, 0xA866, 0x2562,
- 0xA867, 0x2563, 0xA868, 0x2564, 0xA869, 0x2565, 0xA86A, 0x2566,
- 0xA86B, 0x2567, 0xA86C, 0x2568, 0xA86D, 0x2569, 0xA86E, 0x256A,
- 0xA86F, 0x256B, 0xA870, 0x256C, 0xA871, 0x256D, 0xA872, 0x256E,
- 0xA873, 0x256F, 0xA874, 0x2570, 0xA875, 0x2571, 0xA876, 0x2572,
- 0xA877, 0x2573, 0xA878, 0x2581, 0xA879, 0x2582, 0xA87A, 0x2583,
- 0xA87B, 0x2584, 0xA87C, 0x2585, 0xA87D, 0x2586, 0xA87E, 0x2587,
- 0xA880, 0x2588, 0xA881, 0x2589, 0xA882, 0x258A, 0xA883, 0x258B,
- 0xA884, 0x258C, 0xA885, 0x258D, 0xA886, 0x258E, 0xA887, 0x258F,
- 0xA888, 0x2593, 0xA889, 0x2594, 0xA88A, 0x2595, 0xA88B, 0x25BC,
- 0xA88C, 0x25BD, 0xA88D, 0x25E2, 0xA88E, 0x25E3, 0xA88F, 0x25E4,
- 0xA890, 0x25E5, 0xA891, 0x2609, 0xA892, 0x2295, 0xA893, 0x3012,
- 0xA894, 0x301D, 0xA895, 0x301E, 0xA8A1, 0x0101, 0xA8A2, 0x00E1,
- 0xA8A3, 0x01CE, 0xA8A4, 0x00E0, 0xA8A5, 0x0113, 0xA8A6, 0x00E9,
- 0xA8A7, 0x011B, 0xA8A8, 0x00E8, 0xA8A9, 0x012B, 0xA8AA, 0x00ED,
- 0xA8AB, 0x01D0, 0xA8AC, 0x00EC, 0xA8AD, 0x014D, 0xA8AE, 0x00F3,
- 0xA8AF, 0x01D2, 0xA8B0, 0x00F2, 0xA8B1, 0x016B, 0xA8B2, 0x00FA,
- 0xA8B3, 0x01D4, 0xA8B4, 0x00F9, 0xA8B5, 0x01D6, 0xA8B6, 0x01D8,
- 0xA8B7, 0x01DA, 0xA8B8, 0x01DC, 0xA8B9, 0x00FC, 0xA8BA, 0x00EA,
- 0xA8BB, 0x0251, 0xA8BD, 0x0144, 0xA8BE, 0x0148, 0xA8C0, 0x0261,
- 0xA8C5, 0x3105, 0xA8C6, 0x3106, 0xA8C7, 0x3107, 0xA8C8, 0x3108,
- 0xA8C9, 0x3109, 0xA8CA, 0x310A, 0xA8CB, 0x310B, 0xA8CC, 0x310C,
- 0xA8CD, 0x310D, 0xA8CE, 0x310E, 0xA8CF, 0x310F, 0xA8D0, 0x3110,
- 0xA8D1, 0x3111, 0xA8D2, 0x3112, 0xA8D3, 0x3113, 0xA8D4, 0x3114,
- 0xA8D5, 0x3115, 0xA8D6, 0x3116, 0xA8D7, 0x3117, 0xA8D8, 0x3118,
- 0xA8D9, 0x3119, 0xA8DA, 0x311A, 0xA8DB, 0x311B, 0xA8DC, 0x311C,
- 0xA8DD, 0x311D, 0xA8DE, 0x311E, 0xA8DF, 0x311F, 0xA8E0, 0x3120,
- 0xA8E1, 0x3121, 0xA8E2, 0x3122, 0xA8E3, 0x3123, 0xA8E4, 0x3124,
- 0xA8E5, 0x3125, 0xA8E6, 0x3126, 0xA8E7, 0x3127, 0xA8E8, 0x3128,
- 0xA8E9, 0x3129, 0xA940, 0x3021, 0xA941, 0x3022, 0xA942, 0x3023,
- 0xA943, 0x3024, 0xA944, 0x3025, 0xA945, 0x3026, 0xA946, 0x3027,
- 0xA947, 0x3028, 0xA948, 0x3029, 0xA949, 0x32A3, 0xA94A, 0x338E,
- 0xA94B, 0x338F, 0xA94C, 0x339C, 0xA94D, 0x339D, 0xA94E, 0x339E,
- 0xA94F, 0x33A1, 0xA950, 0x33C4, 0xA951, 0x33CE, 0xA952, 0x33D1,
- 0xA953, 0x33D2, 0xA954, 0x33D5, 0xA955, 0xFE30, 0xA956, 0xFFE2,
- 0xA957, 0xFFE4, 0xA959, 0x2121, 0xA95A, 0x3231, 0xA95C, 0x2010,
- 0xA960, 0x30FC, 0xA961, 0x309B, 0xA962, 0x309C, 0xA963, 0x30FD,
- 0xA964, 0x30FE, 0xA965, 0x3006, 0xA966, 0x309D, 0xA967, 0x309E,
- 0xA968, 0xFE49, 0xA969, 0xFE4A, 0xA96A, 0xFE4B, 0xA96B, 0xFE4C,
- 0xA96C, 0xFE4D, 0xA96D, 0xFE4E, 0xA96E, 0xFE4F, 0xA96F, 0xFE50,
- 0xA970, 0xFE51, 0xA971, 0xFE52, 0xA972, 0xFE54, 0xA973, 0xFE55,
- 0xA974, 0xFE56, 0xA975, 0xFE57, 0xA976, 0xFE59, 0xA977, 0xFE5A,
- 0xA978, 0xFE5B, 0xA979, 0xFE5C, 0xA97A, 0xFE5D, 0xA97B, 0xFE5E,
- 0xA97C, 0xFE5F, 0xA97D, 0xFE60, 0xA97E, 0xFE61, 0xA980, 0xFE62,
- 0xA981, 0xFE63, 0xA982, 0xFE64, 0xA983, 0xFE65, 0xA984, 0xFE66,
- 0xA985, 0xFE68, 0xA986, 0xFE69, 0xA987, 0xFE6A, 0xA988, 0xFE6B,
- 0xA996, 0x3007, 0xA9A4, 0x2500, 0xA9A5, 0x2501, 0xA9A6, 0x2502,
- 0xA9A7, 0x2503, 0xA9A8, 0x2504, 0xA9A9, 0x2505, 0xA9AA, 0x2506,
- 0xA9AB, 0x2507, 0xA9AC, 0x2508, 0xA9AD, 0x2509, 0xA9AE, 0x250A,
- 0xA9AF, 0x250B, 0xA9B0, 0x250C, 0xA9B1, 0x250D, 0xA9B2, 0x250E,
- 0xA9B3, 0x250F, 0xA9B4, 0x2510, 0xA9B5, 0x2511, 0xA9B6, 0x2512,
- 0xA9B7, 0x2513, 0xA9B8, 0x2514, 0xA9B9, 0x2515, 0xA9BA, 0x2516,
- 0xA9BB, 0x2517, 0xA9BC, 0x2518, 0xA9BD, 0x2519, 0xA9BE, 0x251A,
- 0xA9BF, 0x251B, 0xA9C0, 0x251C, 0xA9C1, 0x251D, 0xA9C2, 0x251E,
- 0xA9C3, 0x251F, 0xA9C4, 0x2520, 0xA9C5, 0x2521, 0xA9C6, 0x2522,
- 0xA9C7, 0x2523, 0xA9C8, 0x2524, 0xA9C9, 0x2525, 0xA9CA, 0x2526,
- 0xA9CB, 0x2527, 0xA9CC, 0x2528, 0xA9CD, 0x2529, 0xA9CE, 0x252A,
- 0xA9CF, 0x252B, 0xA9D0, 0x252C, 0xA9D1, 0x252D, 0xA9D2, 0x252E,
- 0xA9D3, 0x252F, 0xA9D4, 0x2530, 0xA9D5, 0x2531, 0xA9D6, 0x2532,
- 0xA9D7, 0x2533, 0xA9D8, 0x2534, 0xA9D9, 0x2535, 0xA9DA, 0x2536,
- 0xA9DB, 0x2537, 0xA9DC, 0x2538, 0xA9DD, 0x2539, 0xA9DE, 0x253A,
- 0xA9DF, 0x253B, 0xA9E0, 0x253C, 0xA9E1, 0x253D, 0xA9E2, 0x253E,
- 0xA9E3, 0x253F, 0xA9E4, 0x2540, 0xA9E5, 0x2541, 0xA9E6, 0x2542,
- 0xA9E7, 0x2543, 0xA9E8, 0x2544, 0xA9E9, 0x2545, 0xA9EA, 0x2546,
- 0xA9EB, 0x2547, 0xA9EC, 0x2548, 0xA9ED, 0x2549, 0xA9EE, 0x254A,
- 0xA9EF, 0x254B, 0xAA40, 0x72DC, 0xAA41, 0x72DD, 0xAA42, 0x72DF,
- 0xAA43, 0x72E2, 0xAA44, 0x72E3, 0xAA45, 0x72E4, 0xAA46, 0x72E5,
- 0xAA47, 0x72E6, 0xAA48, 0x72E7, 0xAA49, 0x72EA, 0xAA4A, 0x72EB,
- 0xAA4B, 0x72F5, 0xAA4C, 0x72F6, 0xAA4D, 0x72F9, 0xAA4E, 0x72FD,
- 0xAA4F, 0x72FE, 0xAA50, 0x72FF, 0xAA51, 0x7300, 0xAA52, 0x7302,
- 0xAA53, 0x7304, 0xAA54, 0x7305, 0xAA55, 0x7306, 0xAA56, 0x7307,
- 0xAA57, 0x7308, 0xAA58, 0x7309, 0xAA59, 0x730B, 0xAA5A, 0x730C,
- 0xAA5B, 0x730D, 0xAA5C, 0x730F, 0xAA5D, 0x7310, 0xAA5E, 0x7311,
- 0xAA5F, 0x7312, 0xAA60, 0x7314, 0xAA61, 0x7318, 0xAA62, 0x7319,
- 0xAA63, 0x731A, 0xAA64, 0x731F, 0xAA65, 0x7320, 0xAA66, 0x7323,
- 0xAA67, 0x7324, 0xAA68, 0x7326, 0xAA69, 0x7327, 0xAA6A, 0x7328,
- 0xAA6B, 0x732D, 0xAA6C, 0x732F, 0xAA6D, 0x7330, 0xAA6E, 0x7332,
- 0xAA6F, 0x7333, 0xAA70, 0x7335, 0xAA71, 0x7336, 0xAA72, 0x733A,
- 0xAA73, 0x733B, 0xAA74, 0x733C, 0xAA75, 0x733D, 0xAA76, 0x7340,
- 0xAA77, 0x7341, 0xAA78, 0x7342, 0xAA79, 0x7343, 0xAA7A, 0x7344,
- 0xAA7B, 0x7345, 0xAA7C, 0x7346, 0xAA7D, 0x7347, 0xAA7E, 0x7348,
- 0xAA80, 0x7349, 0xAA81, 0x734A, 0xAA82, 0x734B, 0xAA83, 0x734C,
- 0xAA84, 0x734E, 0xAA85, 0x734F, 0xAA86, 0x7351, 0xAA87, 0x7353,
- 0xAA88, 0x7354, 0xAA89, 0x7355, 0xAA8A, 0x7356, 0xAA8B, 0x7358,
- 0xAA8C, 0x7359, 0xAA8D, 0x735A, 0xAA8E, 0x735B, 0xAA8F, 0x735C,
- 0xAA90, 0x735D, 0xAA91, 0x735E, 0xAA92, 0x735F, 0xAA93, 0x7361,
- 0xAA94, 0x7362, 0xAA95, 0x7363, 0xAA96, 0x7364, 0xAA97, 0x7365,
- 0xAA98, 0x7366, 0xAA99, 0x7367, 0xAA9A, 0x7368, 0xAA9B, 0x7369,
- 0xAA9C, 0x736A, 0xAA9D, 0x736B, 0xAA9E, 0x736E, 0xAA9F, 0x7370,
- 0xAAA0, 0x7371, 0xAB40, 0x7372, 0xAB41, 0x7373, 0xAB42, 0x7374,
- 0xAB43, 0x7375, 0xAB44, 0x7376, 0xAB45, 0x7377, 0xAB46, 0x7378,
- 0xAB47, 0x7379, 0xAB48, 0x737A, 0xAB49, 0x737B, 0xAB4A, 0x737C,
- 0xAB4B, 0x737D, 0xAB4C, 0x737F, 0xAB4D, 0x7380, 0xAB4E, 0x7381,
- 0xAB4F, 0x7382, 0xAB50, 0x7383, 0xAB51, 0x7385, 0xAB52, 0x7386,
- 0xAB53, 0x7388, 0xAB54, 0x738A, 0xAB55, 0x738C, 0xAB56, 0x738D,
- 0xAB57, 0x738F, 0xAB58, 0x7390, 0xAB59, 0x7392, 0xAB5A, 0x7393,
- 0xAB5B, 0x7394, 0xAB5C, 0x7395, 0xAB5D, 0x7397, 0xAB5E, 0x7398,
- 0xAB5F, 0x7399, 0xAB60, 0x739A, 0xAB61, 0x739C, 0xAB62, 0x739D,
- 0xAB63, 0x739E, 0xAB64, 0x73A0, 0xAB65, 0x73A1, 0xAB66, 0x73A3,
- 0xAB67, 0x73A4, 0xAB68, 0x73A5, 0xAB69, 0x73A6, 0xAB6A, 0x73A7,
- 0xAB6B, 0x73A8, 0xAB6C, 0x73AA, 0xAB6D, 0x73AC, 0xAB6E, 0x73AD,
- 0xAB6F, 0x73B1, 0xAB70, 0x73B4, 0xAB71, 0x73B5, 0xAB72, 0x73B6,
- 0xAB73, 0x73B8, 0xAB74, 0x73B9, 0xAB75, 0x73BC, 0xAB76, 0x73BD,
- 0xAB77, 0x73BE, 0xAB78, 0x73BF, 0xAB79, 0x73C1, 0xAB7A, 0x73C3,
- 0xAB7B, 0x73C4, 0xAB7C, 0x73C5, 0xAB7D, 0x73C6, 0xAB7E, 0x73C7,
- 0xAB80, 0x73CB, 0xAB81, 0x73CC, 0xAB82, 0x73CE, 0xAB83, 0x73D2,
- 0xAB84, 0x73D3, 0xAB85, 0x73D4, 0xAB86, 0x73D5, 0xAB87, 0x73D6,
- 0xAB88, 0x73D7, 0xAB89, 0x73D8, 0xAB8A, 0x73DA, 0xAB8B, 0x73DB,
- 0xAB8C, 0x73DC, 0xAB8D, 0x73DD, 0xAB8E, 0x73DF, 0xAB8F, 0x73E1,
- 0xAB90, 0x73E2, 0xAB91, 0x73E3, 0xAB92, 0x73E4, 0xAB93, 0x73E6,
- 0xAB94, 0x73E8, 0xAB95, 0x73EA, 0xAB96, 0x73EB, 0xAB97, 0x73EC,
- 0xAB98, 0x73EE, 0xAB99, 0x73EF, 0xAB9A, 0x73F0, 0xAB9B, 0x73F1,
- 0xAB9C, 0x73F3, 0xAB9D, 0x73F4, 0xAB9E, 0x73F5, 0xAB9F, 0x73F6,
- 0xABA0, 0x73F7, 0xAC40, 0x73F8, 0xAC41, 0x73F9, 0xAC42, 0x73FA,
- 0xAC43, 0x73FB, 0xAC44, 0x73FC, 0xAC45, 0x73FD, 0xAC46, 0x73FE,
- 0xAC47, 0x73FF, 0xAC48, 0x7400, 0xAC49, 0x7401, 0xAC4A, 0x7402,
- 0xAC4B, 0x7404, 0xAC4C, 0x7407, 0xAC4D, 0x7408, 0xAC4E, 0x740B,
- 0xAC4F, 0x740C, 0xAC50, 0x740D, 0xAC51, 0x740E, 0xAC52, 0x7411,
- 0xAC53, 0x7412, 0xAC54, 0x7413, 0xAC55, 0x7414, 0xAC56, 0x7415,
- 0xAC57, 0x7416, 0xAC58, 0x7417, 0xAC59, 0x7418, 0xAC5A, 0x7419,
- 0xAC5B, 0x741C, 0xAC5C, 0x741D, 0xAC5D, 0x741E, 0xAC5E, 0x741F,
- 0xAC5F, 0x7420, 0xAC60, 0x7421, 0xAC61, 0x7423, 0xAC62, 0x7424,
- 0xAC63, 0x7427, 0xAC64, 0x7429, 0xAC65, 0x742B, 0xAC66, 0x742D,
- 0xAC67, 0x742F, 0xAC68, 0x7431, 0xAC69, 0x7432, 0xAC6A, 0x7437,
- 0xAC6B, 0x7438, 0xAC6C, 0x7439, 0xAC6D, 0x743A, 0xAC6E, 0x743B,
- 0xAC6F, 0x743D, 0xAC70, 0x743E, 0xAC71, 0x743F, 0xAC72, 0x7440,
- 0xAC73, 0x7442, 0xAC74, 0x7443, 0xAC75, 0x7444, 0xAC76, 0x7445,
- 0xAC77, 0x7446, 0xAC78, 0x7447, 0xAC79, 0x7448, 0xAC7A, 0x7449,
- 0xAC7B, 0x744A, 0xAC7C, 0x744B, 0xAC7D, 0x744C, 0xAC7E, 0x744D,
- 0xAC80, 0x744E, 0xAC81, 0x744F, 0xAC82, 0x7450, 0xAC83, 0x7451,
- 0xAC84, 0x7452, 0xAC85, 0x7453, 0xAC86, 0x7454, 0xAC87, 0x7456,
- 0xAC88, 0x7458, 0xAC89, 0x745D, 0xAC8A, 0x7460, 0xAC8B, 0x7461,
- 0xAC8C, 0x7462, 0xAC8D, 0x7463, 0xAC8E, 0x7464, 0xAC8F, 0x7465,
- 0xAC90, 0x7466, 0xAC91, 0x7467, 0xAC92, 0x7468, 0xAC93, 0x7469,
- 0xAC94, 0x746A, 0xAC95, 0x746B, 0xAC96, 0x746C, 0xAC97, 0x746E,
- 0xAC98, 0x746F, 0xAC99, 0x7471, 0xAC9A, 0x7472, 0xAC9B, 0x7473,
- 0xAC9C, 0x7474, 0xAC9D, 0x7475, 0xAC9E, 0x7478, 0xAC9F, 0x7479,
- 0xACA0, 0x747A, 0xAD40, 0x747B, 0xAD41, 0x747C, 0xAD42, 0x747D,
- 0xAD43, 0x747F, 0xAD44, 0x7482, 0xAD45, 0x7484, 0xAD46, 0x7485,
- 0xAD47, 0x7486, 0xAD48, 0x7488, 0xAD49, 0x7489, 0xAD4A, 0x748A,
- 0xAD4B, 0x748C, 0xAD4C, 0x748D, 0xAD4D, 0x748F, 0xAD4E, 0x7491,
- 0xAD4F, 0x7492, 0xAD50, 0x7493, 0xAD51, 0x7494, 0xAD52, 0x7495,
- 0xAD53, 0x7496, 0xAD54, 0x7497, 0xAD55, 0x7498, 0xAD56, 0x7499,
- 0xAD57, 0x749A, 0xAD58, 0x749B, 0xAD59, 0x749D, 0xAD5A, 0x749F,
- 0xAD5B, 0x74A0, 0xAD5C, 0x74A1, 0xAD5D, 0x74A2, 0xAD5E, 0x74A3,
- 0xAD5F, 0x74A4, 0xAD60, 0x74A5, 0xAD61, 0x74A6, 0xAD62, 0x74AA,
- 0xAD63, 0x74AB, 0xAD64, 0x74AC, 0xAD65, 0x74AD, 0xAD66, 0x74AE,
- 0xAD67, 0x74AF, 0xAD68, 0x74B0, 0xAD69, 0x74B1, 0xAD6A, 0x74B2,
- 0xAD6B, 0x74B3, 0xAD6C, 0x74B4, 0xAD6D, 0x74B5, 0xAD6E, 0x74B6,
- 0xAD6F, 0x74B7, 0xAD70, 0x74B8, 0xAD71, 0x74B9, 0xAD72, 0x74BB,
- 0xAD73, 0x74BC, 0xAD74, 0x74BD, 0xAD75, 0x74BE, 0xAD76, 0x74BF,
- 0xAD77, 0x74C0, 0xAD78, 0x74C1, 0xAD79, 0x74C2, 0xAD7A, 0x74C3,
- 0xAD7B, 0x74C4, 0xAD7C, 0x74C5, 0xAD7D, 0x74C6, 0xAD7E, 0x74C7,
- 0xAD80, 0x74C8, 0xAD81, 0x74C9, 0xAD82, 0x74CA, 0xAD83, 0x74CB,
- 0xAD84, 0x74CC, 0xAD85, 0x74CD, 0xAD86, 0x74CE, 0xAD87, 0x74CF,
- 0xAD88, 0x74D0, 0xAD89, 0x74D1, 0xAD8A, 0x74D3, 0xAD8B, 0x74D4,
- 0xAD8C, 0x74D5, 0xAD8D, 0x74D6, 0xAD8E, 0x74D7, 0xAD8F, 0x74D8,
- 0xAD90, 0x74D9, 0xAD91, 0x74DA, 0xAD92, 0x74DB, 0xAD93, 0x74DD,
- 0xAD94, 0x74DF, 0xAD95, 0x74E1, 0xAD96, 0x74E5, 0xAD97, 0x74E7,
- 0xAD98, 0x74E8, 0xAD99, 0x74E9, 0xAD9A, 0x74EA, 0xAD9B, 0x74EB,
- 0xAD9C, 0x74EC, 0xAD9D, 0x74ED, 0xAD9E, 0x74F0, 0xAD9F, 0x74F1,
- 0xADA0, 0x74F2, 0xAE40, 0x74F3, 0xAE41, 0x74F5, 0xAE42, 0x74F8,
- 0xAE43, 0x74F9, 0xAE44, 0x74FA, 0xAE45, 0x74FB, 0xAE46, 0x74FC,
- 0xAE47, 0x74FD, 0xAE48, 0x74FE, 0xAE49, 0x7500, 0xAE4A, 0x7501,
- 0xAE4B, 0x7502, 0xAE4C, 0x7503, 0xAE4D, 0x7505, 0xAE4E, 0x7506,
- 0xAE4F, 0x7507, 0xAE50, 0x7508, 0xAE51, 0x7509, 0xAE52, 0x750A,
- 0xAE53, 0x750B, 0xAE54, 0x750C, 0xAE55, 0x750E, 0xAE56, 0x7510,
- 0xAE57, 0x7512, 0xAE58, 0x7514, 0xAE59, 0x7515, 0xAE5A, 0x7516,
- 0xAE5B, 0x7517, 0xAE5C, 0x751B, 0xAE5D, 0x751D, 0xAE5E, 0x751E,
- 0xAE5F, 0x7520, 0xAE60, 0x7521, 0xAE61, 0x7522, 0xAE62, 0x7523,
- 0xAE63, 0x7524, 0xAE64, 0x7526, 0xAE65, 0x7527, 0xAE66, 0x752A,
- 0xAE67, 0x752E, 0xAE68, 0x7534, 0xAE69, 0x7536, 0xAE6A, 0x7539,
- 0xAE6B, 0x753C, 0xAE6C, 0x753D, 0xAE6D, 0x753F, 0xAE6E, 0x7541,
- 0xAE6F, 0x7542, 0xAE70, 0x7543, 0xAE71, 0x7544, 0xAE72, 0x7546,
- 0xAE73, 0x7547, 0xAE74, 0x7549, 0xAE75, 0x754A, 0xAE76, 0x754D,
- 0xAE77, 0x7550, 0xAE78, 0x7551, 0xAE79, 0x7552, 0xAE7A, 0x7553,
- 0xAE7B, 0x7555, 0xAE7C, 0x7556, 0xAE7D, 0x7557, 0xAE7E, 0x7558,
- 0xAE80, 0x755D, 0xAE81, 0x755E, 0xAE82, 0x755F, 0xAE83, 0x7560,
- 0xAE84, 0x7561, 0xAE85, 0x7562, 0xAE86, 0x7563, 0xAE87, 0x7564,
- 0xAE88, 0x7567, 0xAE89, 0x7568, 0xAE8A, 0x7569, 0xAE8B, 0x756B,
- 0xAE8C, 0x756C, 0xAE8D, 0x756D, 0xAE8E, 0x756E, 0xAE8F, 0x756F,
- 0xAE90, 0x7570, 0xAE91, 0x7571, 0xAE92, 0x7573, 0xAE93, 0x7575,
- 0xAE94, 0x7576, 0xAE95, 0x7577, 0xAE96, 0x757A, 0xAE97, 0x757B,
- 0xAE98, 0x757C, 0xAE99, 0x757D, 0xAE9A, 0x757E, 0xAE9B, 0x7580,
- 0xAE9C, 0x7581, 0xAE9D, 0x7582, 0xAE9E, 0x7584, 0xAE9F, 0x7585,
- 0xAEA0, 0x7587, 0xAF40, 0x7588, 0xAF41, 0x7589, 0xAF42, 0x758A,
- 0xAF43, 0x758C, 0xAF44, 0x758D, 0xAF45, 0x758E, 0xAF46, 0x7590,
- 0xAF47, 0x7593, 0xAF48, 0x7595, 0xAF49, 0x7598, 0xAF4A, 0x759B,
- 0xAF4B, 0x759C, 0xAF4C, 0x759E, 0xAF4D, 0x75A2, 0xAF4E, 0x75A6,
- 0xAF4F, 0x75A7, 0xAF50, 0x75A8, 0xAF51, 0x75A9, 0xAF52, 0x75AA,
- 0xAF53, 0x75AD, 0xAF54, 0x75B6, 0xAF55, 0x75B7, 0xAF56, 0x75BA,
- 0xAF57, 0x75BB, 0xAF58, 0x75BF, 0xAF59, 0x75C0, 0xAF5A, 0x75C1,
- 0xAF5B, 0x75C6, 0xAF5C, 0x75CB, 0xAF5D, 0x75CC, 0xAF5E, 0x75CE,
- 0xAF5F, 0x75CF, 0xAF60, 0x75D0, 0xAF61, 0x75D1, 0xAF62, 0x75D3,
- 0xAF63, 0x75D7, 0xAF64, 0x75D9, 0xAF65, 0x75DA, 0xAF66, 0x75DC,
- 0xAF67, 0x75DD, 0xAF68, 0x75DF, 0xAF69, 0x75E0, 0xAF6A, 0x75E1,
- 0xAF6B, 0x75E5, 0xAF6C, 0x75E9, 0xAF6D, 0x75EC, 0xAF6E, 0x75ED,
- 0xAF6F, 0x75EE, 0xAF70, 0x75EF, 0xAF71, 0x75F2, 0xAF72, 0x75F3,
- 0xAF73, 0x75F5, 0xAF74, 0x75F6, 0xAF75, 0x75F7, 0xAF76, 0x75F8,
- 0xAF77, 0x75FA, 0xAF78, 0x75FB, 0xAF79, 0x75FD, 0xAF7A, 0x75FE,
- 0xAF7B, 0x7602, 0xAF7C, 0x7604, 0xAF7D, 0x7606, 0xAF7E, 0x7607,
- 0xAF80, 0x7608, 0xAF81, 0x7609, 0xAF82, 0x760B, 0xAF83, 0x760D,
- 0xAF84, 0x760E, 0xAF85, 0x760F, 0xAF86, 0x7611, 0xAF87, 0x7612,
- 0xAF88, 0x7613, 0xAF89, 0x7614, 0xAF8A, 0x7616, 0xAF8B, 0x761A,
- 0xAF8C, 0x761C, 0xAF8D, 0x761D, 0xAF8E, 0x761E, 0xAF8F, 0x7621,
- 0xAF90, 0x7623, 0xAF91, 0x7627, 0xAF92, 0x7628, 0xAF93, 0x762C,
- 0xAF94, 0x762E, 0xAF95, 0x762F, 0xAF96, 0x7631, 0xAF97, 0x7632,
- 0xAF98, 0x7636, 0xAF99, 0x7637, 0xAF9A, 0x7639, 0xAF9B, 0x763A,
- 0xAF9C, 0x763B, 0xAF9D, 0x763D, 0xAF9E, 0x7641, 0xAF9F, 0x7642,
- 0xAFA0, 0x7644, 0xB040, 0x7645, 0xB041, 0x7646, 0xB042, 0x7647,
- 0xB043, 0x7648, 0xB044, 0x7649, 0xB045, 0x764A, 0xB046, 0x764B,
- 0xB047, 0x764E, 0xB048, 0x764F, 0xB049, 0x7650, 0xB04A, 0x7651,
- 0xB04B, 0x7652, 0xB04C, 0x7653, 0xB04D, 0x7655, 0xB04E, 0x7657,
- 0xB04F, 0x7658, 0xB050, 0x7659, 0xB051, 0x765A, 0xB052, 0x765B,
- 0xB053, 0x765D, 0xB054, 0x765F, 0xB055, 0x7660, 0xB056, 0x7661,
- 0xB057, 0x7662, 0xB058, 0x7664, 0xB059, 0x7665, 0xB05A, 0x7666,
- 0xB05B, 0x7667, 0xB05C, 0x7668, 0xB05D, 0x7669, 0xB05E, 0x766A,
- 0xB05F, 0x766C, 0xB060, 0x766D, 0xB061, 0x766E, 0xB062, 0x7670,
- 0xB063, 0x7671, 0xB064, 0x7672, 0xB065, 0x7673, 0xB066, 0x7674,
- 0xB067, 0x7675, 0xB068, 0x7676, 0xB069, 0x7677, 0xB06A, 0x7679,
- 0xB06B, 0x767A, 0xB06C, 0x767C, 0xB06D, 0x767F, 0xB06E, 0x7680,
- 0xB06F, 0x7681, 0xB070, 0x7683, 0xB071, 0x7685, 0xB072, 0x7689,
- 0xB073, 0x768A, 0xB074, 0x768C, 0xB075, 0x768D, 0xB076, 0x768F,
- 0xB077, 0x7690, 0xB078, 0x7692, 0xB079, 0x7694, 0xB07A, 0x7695,
- 0xB07B, 0x7697, 0xB07C, 0x7698, 0xB07D, 0x769A, 0xB07E, 0x769B,
- 0xB080, 0x769C, 0xB081, 0x769D, 0xB082, 0x769E, 0xB083, 0x769F,
- 0xB084, 0x76A0, 0xB085, 0x76A1, 0xB086, 0x76A2, 0xB087, 0x76A3,
- 0xB088, 0x76A5, 0xB089, 0x76A6, 0xB08A, 0x76A7, 0xB08B, 0x76A8,
- 0xB08C, 0x76A9, 0xB08D, 0x76AA, 0xB08E, 0x76AB, 0xB08F, 0x76AC,
- 0xB090, 0x76AD, 0xB091, 0x76AF, 0xB092, 0x76B0, 0xB093, 0x76B3,
- 0xB094, 0x76B5, 0xB095, 0x76B6, 0xB096, 0x76B7, 0xB097, 0x76B8,
- 0xB098, 0x76B9, 0xB099, 0x76BA, 0xB09A, 0x76BB, 0xB09B, 0x76BC,
- 0xB09C, 0x76BD, 0xB09D, 0x76BE, 0xB09E, 0x76C0, 0xB09F, 0x76C1,
- 0xB0A0, 0x76C3, 0xB0A1, 0x554A, 0xB0A2, 0x963F, 0xB0A3, 0x57C3,
- 0xB0A4, 0x6328, 0xB0A5, 0x54CE, 0xB0A6, 0x5509, 0xB0A7, 0x54C0,
- 0xB0A8, 0x7691, 0xB0A9, 0x764C, 0xB0AA, 0x853C, 0xB0AB, 0x77EE,
- 0xB0AC, 0x827E, 0xB0AD, 0x788D, 0xB0AE, 0x7231, 0xB0AF, 0x9698,
- 0xB0B0, 0x978D, 0xB0B1, 0x6C28, 0xB0B2, 0x5B89, 0xB0B3, 0x4FFA,
- 0xB0B4, 0x6309, 0xB0B5, 0x6697, 0xB0B6, 0x5CB8, 0xB0B7, 0x80FA,
- 0xB0B8, 0x6848, 0xB0B9, 0x80AE, 0xB0BA, 0x6602, 0xB0BB, 0x76CE,
- 0xB0BC, 0x51F9, 0xB0BD, 0x6556, 0xB0BE, 0x71AC, 0xB0BF, 0x7FF1,
- 0xB0C0, 0x8884, 0xB0C1, 0x50B2, 0xB0C2, 0x5965, 0xB0C3, 0x61CA,
- 0xB0C4, 0x6FB3, 0xB0C5, 0x82AD, 0xB0C6, 0x634C, 0xB0C7, 0x6252,
- 0xB0C8, 0x53ED, 0xB0C9, 0x5427, 0xB0CA, 0x7B06, 0xB0CB, 0x516B,
- 0xB0CC, 0x75A4, 0xB0CD, 0x5DF4, 0xB0CE, 0x62D4, 0xB0CF, 0x8DCB,
- 0xB0D0, 0x9776, 0xB0D1, 0x628A, 0xB0D2, 0x8019, 0xB0D3, 0x575D,
- 0xB0D4, 0x9738, 0xB0D5, 0x7F62, 0xB0D6, 0x7238, 0xB0D7, 0x767D,
- 0xB0D8, 0x67CF, 0xB0D9, 0x767E, 0xB0DA, 0x6446, 0xB0DB, 0x4F70,
- 0xB0DC, 0x8D25, 0xB0DD, 0x62DC, 0xB0DE, 0x7A17, 0xB0DF, 0x6591,
- 0xB0E0, 0x73ED, 0xB0E1, 0x642C, 0xB0E2, 0x6273, 0xB0E3, 0x822C,
- 0xB0E4, 0x9881, 0xB0E5, 0x677F, 0xB0E6, 0x7248, 0xB0E7, 0x626E,
- 0xB0E8, 0x62CC, 0xB0E9, 0x4F34, 0xB0EA, 0x74E3, 0xB0EB, 0x534A,
- 0xB0EC, 0x529E, 0xB0ED, 0x7ECA, 0xB0EE, 0x90A6, 0xB0EF, 0x5E2E,
- 0xB0F0, 0x6886, 0xB0F1, 0x699C, 0xB0F2, 0x8180, 0xB0F3, 0x7ED1,
- 0xB0F4, 0x68D2, 0xB0F5, 0x78C5, 0xB0F6, 0x868C, 0xB0F7, 0x9551,
- 0xB0F8, 0x508D, 0xB0F9, 0x8C24, 0xB0FA, 0x82DE, 0xB0FB, 0x80DE,
- 0xB0FC, 0x5305, 0xB0FD, 0x8912, 0xB0FE, 0x5265, 0xB140, 0x76C4,
- 0xB141, 0x76C7, 0xB142, 0x76C9, 0xB143, 0x76CB, 0xB144, 0x76CC,
- 0xB145, 0x76D3, 0xB146, 0x76D5, 0xB147, 0x76D9, 0xB148, 0x76DA,
- 0xB149, 0x76DC, 0xB14A, 0x76DD, 0xB14B, 0x76DE, 0xB14C, 0x76E0,
- 0xB14D, 0x76E1, 0xB14E, 0x76E2, 0xB14F, 0x76E3, 0xB150, 0x76E4,
- 0xB151, 0x76E6, 0xB152, 0x76E7, 0xB153, 0x76E8, 0xB154, 0x76E9,
- 0xB155, 0x76EA, 0xB156, 0x76EB, 0xB157, 0x76EC, 0xB158, 0x76ED,
- 0xB159, 0x76F0, 0xB15A, 0x76F3, 0xB15B, 0x76F5, 0xB15C, 0x76F6,
- 0xB15D, 0x76F7, 0xB15E, 0x76FA, 0xB15F, 0x76FB, 0xB160, 0x76FD,
- 0xB161, 0x76FF, 0xB162, 0x7700, 0xB163, 0x7702, 0xB164, 0x7703,
- 0xB165, 0x7705, 0xB166, 0x7706, 0xB167, 0x770A, 0xB168, 0x770C,
- 0xB169, 0x770E, 0xB16A, 0x770F, 0xB16B, 0x7710, 0xB16C, 0x7711,
- 0xB16D, 0x7712, 0xB16E, 0x7713, 0xB16F, 0x7714, 0xB170, 0x7715,
- 0xB171, 0x7716, 0xB172, 0x7717, 0xB173, 0x7718, 0xB174, 0x771B,
- 0xB175, 0x771C, 0xB176, 0x771D, 0xB177, 0x771E, 0xB178, 0x7721,
- 0xB179, 0x7723, 0xB17A, 0x7724, 0xB17B, 0x7725, 0xB17C, 0x7727,
- 0xB17D, 0x772A, 0xB17E, 0x772B, 0xB180, 0x772C, 0xB181, 0x772E,
- 0xB182, 0x7730, 0xB183, 0x7731, 0xB184, 0x7732, 0xB185, 0x7733,
- 0xB186, 0x7734, 0xB187, 0x7739, 0xB188, 0x773B, 0xB189, 0x773D,
- 0xB18A, 0x773E, 0xB18B, 0x773F, 0xB18C, 0x7742, 0xB18D, 0x7744,
- 0xB18E, 0x7745, 0xB18F, 0x7746, 0xB190, 0x7748, 0xB191, 0x7749,
- 0xB192, 0x774A, 0xB193, 0x774B, 0xB194, 0x774C, 0xB195, 0x774D,
- 0xB196, 0x774E, 0xB197, 0x774F, 0xB198, 0x7752, 0xB199, 0x7753,
- 0xB19A, 0x7754, 0xB19B, 0x7755, 0xB19C, 0x7756, 0xB19D, 0x7757,
- 0xB19E, 0x7758, 0xB19F, 0x7759, 0xB1A0, 0x775C, 0xB1A1, 0x8584,
- 0xB1A2, 0x96F9, 0xB1A3, 0x4FDD, 0xB1A4, 0x5821, 0xB1A5, 0x9971,
- 0xB1A6, 0x5B9D, 0xB1A7, 0x62B1, 0xB1A8, 0x62A5, 0xB1A9, 0x66B4,
- 0xB1AA, 0x8C79, 0xB1AB, 0x9C8D, 0xB1AC, 0x7206, 0xB1AD, 0x676F,
- 0xB1AE, 0x7891, 0xB1AF, 0x60B2, 0xB1B0, 0x5351, 0xB1B1, 0x5317,
- 0xB1B2, 0x8F88, 0xB1B3, 0x80CC, 0xB1B4, 0x8D1D, 0xB1B5, 0x94A1,
- 0xB1B6, 0x500D, 0xB1B7, 0x72C8, 0xB1B8, 0x5907, 0xB1B9, 0x60EB,
- 0xB1BA, 0x7119, 0xB1BB, 0x88AB, 0xB1BC, 0x5954, 0xB1BD, 0x82EF,
- 0xB1BE, 0x672C, 0xB1BF, 0x7B28, 0xB1C0, 0x5D29, 0xB1C1, 0x7EF7,
- 0xB1C2, 0x752D, 0xB1C3, 0x6CF5, 0xB1C4, 0x8E66, 0xB1C5, 0x8FF8,
- 0xB1C6, 0x903C, 0xB1C7, 0x9F3B, 0xB1C8, 0x6BD4, 0xB1C9, 0x9119,
- 0xB1CA, 0x7B14, 0xB1CB, 0x5F7C, 0xB1CC, 0x78A7, 0xB1CD, 0x84D6,
- 0xB1CE, 0x853D, 0xB1CF, 0x6BD5, 0xB1D0, 0x6BD9, 0xB1D1, 0x6BD6,
- 0xB1D2, 0x5E01, 0xB1D3, 0x5E87, 0xB1D4, 0x75F9, 0xB1D5, 0x95ED,
- 0xB1D6, 0x655D, 0xB1D7, 0x5F0A, 0xB1D8, 0x5FC5, 0xB1D9, 0x8F9F,
- 0xB1DA, 0x58C1, 0xB1DB, 0x81C2, 0xB1DC, 0x907F, 0xB1DD, 0x965B,
- 0xB1DE, 0x97AD, 0xB1DF, 0x8FB9, 0xB1E0, 0x7F16, 0xB1E1, 0x8D2C,
- 0xB1E2, 0x6241, 0xB1E3, 0x4FBF, 0xB1E4, 0x53D8, 0xB1E5, 0x535E,
- 0xB1E6, 0x8FA8, 0xB1E7, 0x8FA9, 0xB1E8, 0x8FAB, 0xB1E9, 0x904D,
- 0xB1EA, 0x6807, 0xB1EB, 0x5F6A, 0xB1EC, 0x8198, 0xB1ED, 0x8868,
- 0xB1EE, 0x9CD6, 0xB1EF, 0x618B, 0xB1F0, 0x522B, 0xB1F1, 0x762A,
- 0xB1F2, 0x5F6C, 0xB1F3, 0x658C, 0xB1F4, 0x6FD2, 0xB1F5, 0x6EE8,
- 0xB1F6, 0x5BBE, 0xB1F7, 0x6448, 0xB1F8, 0x5175, 0xB1F9, 0x51B0,
- 0xB1FA, 0x67C4, 0xB1FB, 0x4E19, 0xB1FC, 0x79C9, 0xB1FD, 0x997C,
- 0xB1FE, 0x70B3, 0xB240, 0x775D, 0xB241, 0x775E, 0xB242, 0x775F,
- 0xB243, 0x7760, 0xB244, 0x7764, 0xB245, 0x7767, 0xB246, 0x7769,
- 0xB247, 0x776A, 0xB248, 0x776D, 0xB249, 0x776E, 0xB24A, 0x776F,
- 0xB24B, 0x7770, 0xB24C, 0x7771, 0xB24D, 0x7772, 0xB24E, 0x7773,
- 0xB24F, 0x7774, 0xB250, 0x7775, 0xB251, 0x7776, 0xB252, 0x7777,
- 0xB253, 0x7778, 0xB254, 0x777A, 0xB255, 0x777B, 0xB256, 0x777C,
- 0xB257, 0x7781, 0xB258, 0x7782, 0xB259, 0x7783, 0xB25A, 0x7786,
- 0xB25B, 0x7787, 0xB25C, 0x7788, 0xB25D, 0x7789, 0xB25E, 0x778A,
- 0xB25F, 0x778B, 0xB260, 0x778F, 0xB261, 0x7790, 0xB262, 0x7793,
- 0xB263, 0x7794, 0xB264, 0x7795, 0xB265, 0x7796, 0xB266, 0x7797,
- 0xB267, 0x7798, 0xB268, 0x7799, 0xB269, 0x779A, 0xB26A, 0x779B,
- 0xB26B, 0x779C, 0xB26C, 0x779D, 0xB26D, 0x779E, 0xB26E, 0x77A1,
- 0xB26F, 0x77A3, 0xB270, 0x77A4, 0xB271, 0x77A6, 0xB272, 0x77A8,
- 0xB273, 0x77AB, 0xB274, 0x77AD, 0xB275, 0x77AE, 0xB276, 0x77AF,
- 0xB277, 0x77B1, 0xB278, 0x77B2, 0xB279, 0x77B4, 0xB27A, 0x77B6,
- 0xB27B, 0x77B7, 0xB27C, 0x77B8, 0xB27D, 0x77B9, 0xB27E, 0x77BA,
- 0xB280, 0x77BC, 0xB281, 0x77BE, 0xB282, 0x77C0, 0xB283, 0x77C1,
- 0xB284, 0x77C2, 0xB285, 0x77C3, 0xB286, 0x77C4, 0xB287, 0x77C5,
- 0xB288, 0x77C6, 0xB289, 0x77C7, 0xB28A, 0x77C8, 0xB28B, 0x77C9,
- 0xB28C, 0x77CA, 0xB28D, 0x77CB, 0xB28E, 0x77CC, 0xB28F, 0x77CE,
- 0xB290, 0x77CF, 0xB291, 0x77D0, 0xB292, 0x77D1, 0xB293, 0x77D2,
- 0xB294, 0x77D3, 0xB295, 0x77D4, 0xB296, 0x77D5, 0xB297, 0x77D6,
- 0xB298, 0x77D8, 0xB299, 0x77D9, 0xB29A, 0x77DA, 0xB29B, 0x77DD,
- 0xB29C, 0x77DE, 0xB29D, 0x77DF, 0xB29E, 0x77E0, 0xB29F, 0x77E1,
- 0xB2A0, 0x77E4, 0xB2A1, 0x75C5, 0xB2A2, 0x5E76, 0xB2A3, 0x73BB,
- 0xB2A4, 0x83E0, 0xB2A5, 0x64AD, 0xB2A6, 0x62E8, 0xB2A7, 0x94B5,
- 0xB2A8, 0x6CE2, 0xB2A9, 0x535A, 0xB2AA, 0x52C3, 0xB2AB, 0x640F,
- 0xB2AC, 0x94C2, 0xB2AD, 0x7B94, 0xB2AE, 0x4F2F, 0xB2AF, 0x5E1B,
- 0xB2B0, 0x8236, 0xB2B1, 0x8116, 0xB2B2, 0x818A, 0xB2B3, 0x6E24,
- 0xB2B4, 0x6CCA, 0xB2B5, 0x9A73, 0xB2B6, 0x6355, 0xB2B7, 0x535C,
- 0xB2B8, 0x54FA, 0xB2B9, 0x8865, 0xB2BA, 0x57E0, 0xB2BB, 0x4E0D,
- 0xB2BC, 0x5E03, 0xB2BD, 0x6B65, 0xB2BE, 0x7C3F, 0xB2BF, 0x90E8,
- 0xB2C0, 0x6016, 0xB2C1, 0x64E6, 0xB2C2, 0x731C, 0xB2C3, 0x88C1,
- 0xB2C4, 0x6750, 0xB2C5, 0x624D, 0xB2C6, 0x8D22, 0xB2C7, 0x776C,
- 0xB2C8, 0x8E29, 0xB2C9, 0x91C7, 0xB2CA, 0x5F69, 0xB2CB, 0x83DC,
- 0xB2CC, 0x8521, 0xB2CD, 0x9910, 0xB2CE, 0x53C2, 0xB2CF, 0x8695,
- 0xB2D0, 0x6B8B, 0xB2D1, 0x60ED, 0xB2D2, 0x60E8, 0xB2D3, 0x707F,
- 0xB2D4, 0x82CD, 0xB2D5, 0x8231, 0xB2D6, 0x4ED3, 0xB2D7, 0x6CA7,
- 0xB2D8, 0x85CF, 0xB2D9, 0x64CD, 0xB2DA, 0x7CD9, 0xB2DB, 0x69FD,
- 0xB2DC, 0x66F9, 0xB2DD, 0x8349, 0xB2DE, 0x5395, 0xB2DF, 0x7B56,
- 0xB2E0, 0x4FA7, 0xB2E1, 0x518C, 0xB2E2, 0x6D4B, 0xB2E3, 0x5C42,
- 0xB2E4, 0x8E6D, 0xB2E5, 0x63D2, 0xB2E6, 0x53C9, 0xB2E7, 0x832C,
- 0xB2E8, 0x8336, 0xB2E9, 0x67E5, 0xB2EA, 0x78B4, 0xB2EB, 0x643D,
- 0xB2EC, 0x5BDF, 0xB2ED, 0x5C94, 0xB2EE, 0x5DEE, 0xB2EF, 0x8BE7,
- 0xB2F0, 0x62C6, 0xB2F1, 0x67F4, 0xB2F2, 0x8C7A, 0xB2F3, 0x6400,
- 0xB2F4, 0x63BA, 0xB2F5, 0x8749, 0xB2F6, 0x998B, 0xB2F7, 0x8C17,
- 0xB2F8, 0x7F20, 0xB2F9, 0x94F2, 0xB2FA, 0x4EA7, 0xB2FB, 0x9610,
- 0xB2FC, 0x98A4, 0xB2FD, 0x660C, 0xB2FE, 0x7316, 0xB340, 0x77E6,
- 0xB341, 0x77E8, 0xB342, 0x77EA, 0xB343, 0x77EF, 0xB344, 0x77F0,
- 0xB345, 0x77F1, 0xB346, 0x77F2, 0xB347, 0x77F4, 0xB348, 0x77F5,
- 0xB349, 0x77F7, 0xB34A, 0x77F9, 0xB34B, 0x77FA, 0xB34C, 0x77FB,
- 0xB34D, 0x77FC, 0xB34E, 0x7803, 0xB34F, 0x7804, 0xB350, 0x7805,
- 0xB351, 0x7806, 0xB352, 0x7807, 0xB353, 0x7808, 0xB354, 0x780A,
- 0xB355, 0x780B, 0xB356, 0x780E, 0xB357, 0x780F, 0xB358, 0x7810,
- 0xB359, 0x7813, 0xB35A, 0x7815, 0xB35B, 0x7819, 0xB35C, 0x781B,
- 0xB35D, 0x781E, 0xB35E, 0x7820, 0xB35F, 0x7821, 0xB360, 0x7822,
- 0xB361, 0x7824, 0xB362, 0x7828, 0xB363, 0x782A, 0xB364, 0x782B,
- 0xB365, 0x782E, 0xB366, 0x782F, 0xB367, 0x7831, 0xB368, 0x7832,
- 0xB369, 0x7833, 0xB36A, 0x7835, 0xB36B, 0x7836, 0xB36C, 0x783D,
- 0xB36D, 0x783F, 0xB36E, 0x7841, 0xB36F, 0x7842, 0xB370, 0x7843,
- 0xB371, 0x7844, 0xB372, 0x7846, 0xB373, 0x7848, 0xB374, 0x7849,
- 0xB375, 0x784A, 0xB376, 0x784B, 0xB377, 0x784D, 0xB378, 0x784F,
- 0xB379, 0x7851, 0xB37A, 0x7853, 0xB37B, 0x7854, 0xB37C, 0x7858,
- 0xB37D, 0x7859, 0xB37E, 0x785A, 0xB380, 0x785B, 0xB381, 0x785C,
- 0xB382, 0x785E, 0xB383, 0x785F, 0xB384, 0x7860, 0xB385, 0x7861,
- 0xB386, 0x7862, 0xB387, 0x7863, 0xB388, 0x7864, 0xB389, 0x7865,
- 0xB38A, 0x7866, 0xB38B, 0x7867, 0xB38C, 0x7868, 0xB38D, 0x7869,
- 0xB38E, 0x786F, 0xB38F, 0x7870, 0xB390, 0x7871, 0xB391, 0x7872,
- 0xB392, 0x7873, 0xB393, 0x7874, 0xB394, 0x7875, 0xB395, 0x7876,
- 0xB396, 0x7878, 0xB397, 0x7879, 0xB398, 0x787A, 0xB399, 0x787B,
- 0xB39A, 0x787D, 0xB39B, 0x787E, 0xB39C, 0x787F, 0xB39D, 0x7880,
- 0xB39E, 0x7881, 0xB39F, 0x7882, 0xB3A0, 0x7883, 0xB3A1, 0x573A,
- 0xB3A2, 0x5C1D, 0xB3A3, 0x5E38, 0xB3A4, 0x957F, 0xB3A5, 0x507F,
- 0xB3A6, 0x80A0, 0xB3A7, 0x5382, 0xB3A8, 0x655E, 0xB3A9, 0x7545,
- 0xB3AA, 0x5531, 0xB3AB, 0x5021, 0xB3AC, 0x8D85, 0xB3AD, 0x6284,
- 0xB3AE, 0x949E, 0xB3AF, 0x671D, 0xB3B0, 0x5632, 0xB3B1, 0x6F6E,
- 0xB3B2, 0x5DE2, 0xB3B3, 0x5435, 0xB3B4, 0x7092, 0xB3B5, 0x8F66,
- 0xB3B6, 0x626F, 0xB3B7, 0x64A4, 0xB3B8, 0x63A3, 0xB3B9, 0x5F7B,
- 0xB3BA, 0x6F88, 0xB3BB, 0x90F4, 0xB3BC, 0x81E3, 0xB3BD, 0x8FB0,
- 0xB3BE, 0x5C18, 0xB3BF, 0x6668, 0xB3C0, 0x5FF1, 0xB3C1, 0x6C89,
- 0xB3C2, 0x9648, 0xB3C3, 0x8D81, 0xB3C4, 0x886C, 0xB3C5, 0x6491,
- 0xB3C6, 0x79F0, 0xB3C7, 0x57CE, 0xB3C8, 0x6A59, 0xB3C9, 0x6210,
- 0xB3CA, 0x5448, 0xB3CB, 0x4E58, 0xB3CC, 0x7A0B, 0xB3CD, 0x60E9,
- 0xB3CE, 0x6F84, 0xB3CF, 0x8BDA, 0xB3D0, 0x627F, 0xB3D1, 0x901E,
- 0xB3D2, 0x9A8B, 0xB3D3, 0x79E4, 0xB3D4, 0x5403, 0xB3D5, 0x75F4,
- 0xB3D6, 0x6301, 0xB3D7, 0x5319, 0xB3D8, 0x6C60, 0xB3D9, 0x8FDF,
- 0xB3DA, 0x5F1B, 0xB3DB, 0x9A70, 0xB3DC, 0x803B, 0xB3DD, 0x9F7F,
- 0xB3DE, 0x4F88, 0xB3DF, 0x5C3A, 0xB3E0, 0x8D64, 0xB3E1, 0x7FC5,
- 0xB3E2, 0x65A5, 0xB3E3, 0x70BD, 0xB3E4, 0x5145, 0xB3E5, 0x51B2,
- 0xB3E6, 0x866B, 0xB3E7, 0x5D07, 0xB3E8, 0x5BA0, 0xB3E9, 0x62BD,
- 0xB3EA, 0x916C, 0xB3EB, 0x7574, 0xB3EC, 0x8E0C, 0xB3ED, 0x7A20,
- 0xB3EE, 0x6101, 0xB3EF, 0x7B79, 0xB3F0, 0x4EC7, 0xB3F1, 0x7EF8,
- 0xB3F2, 0x7785, 0xB3F3, 0x4E11, 0xB3F4, 0x81ED, 0xB3F5, 0x521D,
- 0xB3F6, 0x51FA, 0xB3F7, 0x6A71, 0xB3F8, 0x53A8, 0xB3F9, 0x8E87,
- 0xB3FA, 0x9504, 0xB3FB, 0x96CF, 0xB3FC, 0x6EC1, 0xB3FD, 0x9664,
- 0xB3FE, 0x695A, 0xB440, 0x7884, 0xB441, 0x7885, 0xB442, 0x7886,
- 0xB443, 0x7888, 0xB444, 0x788A, 0xB445, 0x788B, 0xB446, 0x788F,
- 0xB447, 0x7890, 0xB448, 0x7892, 0xB449, 0x7894, 0xB44A, 0x7895,
- 0xB44B, 0x7896, 0xB44C, 0x7899, 0xB44D, 0x789D, 0xB44E, 0x789E,
- 0xB44F, 0x78A0, 0xB450, 0x78A2, 0xB451, 0x78A4, 0xB452, 0x78A6,
- 0xB453, 0x78A8, 0xB454, 0x78A9, 0xB455, 0x78AA, 0xB456, 0x78AB,
- 0xB457, 0x78AC, 0xB458, 0x78AD, 0xB459, 0x78AE, 0xB45A, 0x78AF,
- 0xB45B, 0x78B5, 0xB45C, 0x78B6, 0xB45D, 0x78B7, 0xB45E, 0x78B8,
- 0xB45F, 0x78BA, 0xB460, 0x78BB, 0xB461, 0x78BC, 0xB462, 0x78BD,
- 0xB463, 0x78BF, 0xB464, 0x78C0, 0xB465, 0x78C2, 0xB466, 0x78C3,
- 0xB467, 0x78C4, 0xB468, 0x78C6, 0xB469, 0x78C7, 0xB46A, 0x78C8,
- 0xB46B, 0x78CC, 0xB46C, 0x78CD, 0xB46D, 0x78CE, 0xB46E, 0x78CF,
- 0xB46F, 0x78D1, 0xB470, 0x78D2, 0xB471, 0x78D3, 0xB472, 0x78D6,
- 0xB473, 0x78D7, 0xB474, 0x78D8, 0xB475, 0x78DA, 0xB476, 0x78DB,
- 0xB477, 0x78DC, 0xB478, 0x78DD, 0xB479, 0x78DE, 0xB47A, 0x78DF,
- 0xB47B, 0x78E0, 0xB47C, 0x78E1, 0xB47D, 0x78E2, 0xB47E, 0x78E3,
- 0xB480, 0x78E4, 0xB481, 0x78E5, 0xB482, 0x78E6, 0xB483, 0x78E7,
- 0xB484, 0x78E9, 0xB485, 0x78EA, 0xB486, 0x78EB, 0xB487, 0x78ED,
- 0xB488, 0x78EE, 0xB489, 0x78EF, 0xB48A, 0x78F0, 0xB48B, 0x78F1,
- 0xB48C, 0x78F3, 0xB48D, 0x78F5, 0xB48E, 0x78F6, 0xB48F, 0x78F8,
- 0xB490, 0x78F9, 0xB491, 0x78FB, 0xB492, 0x78FC, 0xB493, 0x78FD,
- 0xB494, 0x78FE, 0xB495, 0x78FF, 0xB496, 0x7900, 0xB497, 0x7902,
- 0xB498, 0x7903, 0xB499, 0x7904, 0xB49A, 0x7906, 0xB49B, 0x7907,
- 0xB49C, 0x7908, 0xB49D, 0x7909, 0xB49E, 0x790A, 0xB49F, 0x790B,
- 0xB4A0, 0x790C, 0xB4A1, 0x7840, 0xB4A2, 0x50A8, 0xB4A3, 0x77D7,
- 0xB4A4, 0x6410, 0xB4A5, 0x89E6, 0xB4A6, 0x5904, 0xB4A7, 0x63E3,
- 0xB4A8, 0x5DDD, 0xB4A9, 0x7A7F, 0xB4AA, 0x693D, 0xB4AB, 0x4F20,
- 0xB4AC, 0x8239, 0xB4AD, 0x5598, 0xB4AE, 0x4E32, 0xB4AF, 0x75AE,
- 0xB4B0, 0x7A97, 0xB4B1, 0x5E62, 0xB4B2, 0x5E8A, 0xB4B3, 0x95EF,
- 0xB4B4, 0x521B, 0xB4B5, 0x5439, 0xB4B6, 0x708A, 0xB4B7, 0x6376,
- 0xB4B8, 0x9524, 0xB4B9, 0x5782, 0xB4BA, 0x6625, 0xB4BB, 0x693F,
- 0xB4BC, 0x9187, 0xB4BD, 0x5507, 0xB4BE, 0x6DF3, 0xB4BF, 0x7EAF,
- 0xB4C0, 0x8822, 0xB4C1, 0x6233, 0xB4C2, 0x7EF0, 0xB4C3, 0x75B5,
- 0xB4C4, 0x8328, 0xB4C5, 0x78C1, 0xB4C6, 0x96CC, 0xB4C7, 0x8F9E,
- 0xB4C8, 0x6148, 0xB4C9, 0x74F7, 0xB4CA, 0x8BCD, 0xB4CB, 0x6B64,
- 0xB4CC, 0x523A, 0xB4CD, 0x8D50, 0xB4CE, 0x6B21, 0xB4CF, 0x806A,
- 0xB4D0, 0x8471, 0xB4D1, 0x56F1, 0xB4D2, 0x5306, 0xB4D3, 0x4ECE,
- 0xB4D4, 0x4E1B, 0xB4D5, 0x51D1, 0xB4D6, 0x7C97, 0xB4D7, 0x918B,
- 0xB4D8, 0x7C07, 0xB4D9, 0x4FC3, 0xB4DA, 0x8E7F, 0xB4DB, 0x7BE1,
- 0xB4DC, 0x7A9C, 0xB4DD, 0x6467, 0xB4DE, 0x5D14, 0xB4DF, 0x50AC,
- 0xB4E0, 0x8106, 0xB4E1, 0x7601, 0xB4E2, 0x7CB9, 0xB4E3, 0x6DEC,
- 0xB4E4, 0x7FE0, 0xB4E5, 0x6751, 0xB4E6, 0x5B58, 0xB4E7, 0x5BF8,
- 0xB4E8, 0x78CB, 0xB4E9, 0x64AE, 0xB4EA, 0x6413, 0xB4EB, 0x63AA,
- 0xB4EC, 0x632B, 0xB4ED, 0x9519, 0xB4EE, 0x642D, 0xB4EF, 0x8FBE,
- 0xB4F0, 0x7B54, 0xB4F1, 0x7629, 0xB4F2, 0x6253, 0xB4F3, 0x5927,
- 0xB4F4, 0x5446, 0xB4F5, 0x6B79, 0xB4F6, 0x50A3, 0xB4F7, 0x6234,
- 0xB4F8, 0x5E26, 0xB4F9, 0x6B86, 0xB4FA, 0x4EE3, 0xB4FB, 0x8D37,
- 0xB4FC, 0x888B, 0xB4FD, 0x5F85, 0xB4FE, 0x902E, 0xB540, 0x790D,
- 0xB541, 0x790E, 0xB542, 0x790F, 0xB543, 0x7910, 0xB544, 0x7911,
- 0xB545, 0x7912, 0xB546, 0x7914, 0xB547, 0x7915, 0xB548, 0x7916,
- 0xB549, 0x7917, 0xB54A, 0x7918, 0xB54B, 0x7919, 0xB54C, 0x791A,
- 0xB54D, 0x791B, 0xB54E, 0x791C, 0xB54F, 0x791D, 0xB550, 0x791F,
- 0xB551, 0x7920, 0xB552, 0x7921, 0xB553, 0x7922, 0xB554, 0x7923,
- 0xB555, 0x7925, 0xB556, 0x7926, 0xB557, 0x7927, 0xB558, 0x7928,
- 0xB559, 0x7929, 0xB55A, 0x792A, 0xB55B, 0x792B, 0xB55C, 0x792C,
- 0xB55D, 0x792D, 0xB55E, 0x792E, 0xB55F, 0x792F, 0xB560, 0x7930,
- 0xB561, 0x7931, 0xB562, 0x7932, 0xB563, 0x7933, 0xB564, 0x7935,
- 0xB565, 0x7936, 0xB566, 0x7937, 0xB567, 0x7938, 0xB568, 0x7939,
- 0xB569, 0x793D, 0xB56A, 0x793F, 0xB56B, 0x7942, 0xB56C, 0x7943,
- 0xB56D, 0x7944, 0xB56E, 0x7945, 0xB56F, 0x7947, 0xB570, 0x794A,
- 0xB571, 0x794B, 0xB572, 0x794C, 0xB573, 0x794D, 0xB574, 0x794E,
- 0xB575, 0x794F, 0xB576, 0x7950, 0xB577, 0x7951, 0xB578, 0x7952,
- 0xB579, 0x7954, 0xB57A, 0x7955, 0xB57B, 0x7958, 0xB57C, 0x7959,
- 0xB57D, 0x7961, 0xB57E, 0x7963, 0xB580, 0x7964, 0xB581, 0x7966,
- 0xB582, 0x7969, 0xB583, 0x796A, 0xB584, 0x796B, 0xB585, 0x796C,
- 0xB586, 0x796E, 0xB587, 0x7970, 0xB588, 0x7971, 0xB589, 0x7972,
- 0xB58A, 0x7973, 0xB58B, 0x7974, 0xB58C, 0x7975, 0xB58D, 0x7976,
- 0xB58E, 0x7979, 0xB58F, 0x797B, 0xB590, 0x797C, 0xB591, 0x797D,
- 0xB592, 0x797E, 0xB593, 0x797F, 0xB594, 0x7982, 0xB595, 0x7983,
- 0xB596, 0x7986, 0xB597, 0x7987, 0xB598, 0x7988, 0xB599, 0x7989,
- 0xB59A, 0x798B, 0xB59B, 0x798C, 0xB59C, 0x798D, 0xB59D, 0x798E,
- 0xB59E, 0x7990, 0xB59F, 0x7991, 0xB5A0, 0x7992, 0xB5A1, 0x6020,
- 0xB5A2, 0x803D, 0xB5A3, 0x62C5, 0xB5A4, 0x4E39, 0xB5A5, 0x5355,
- 0xB5A6, 0x90F8, 0xB5A7, 0x63B8, 0xB5A8, 0x80C6, 0xB5A9, 0x65E6,
- 0xB5AA, 0x6C2E, 0xB5AB, 0x4F46, 0xB5AC, 0x60EE, 0xB5AD, 0x6DE1,
- 0xB5AE, 0x8BDE, 0xB5AF, 0x5F39, 0xB5B0, 0x86CB, 0xB5B1, 0x5F53,
- 0xB5B2, 0x6321, 0xB5B3, 0x515A, 0xB5B4, 0x8361, 0xB5B5, 0x6863,
- 0xB5B6, 0x5200, 0xB5B7, 0x6363, 0xB5B8, 0x8E48, 0xB5B9, 0x5012,
- 0xB5BA, 0x5C9B, 0xB5BB, 0x7977, 0xB5BC, 0x5BFC, 0xB5BD, 0x5230,
- 0xB5BE, 0x7A3B, 0xB5BF, 0x60BC, 0xB5C0, 0x9053, 0xB5C1, 0x76D7,
- 0xB5C2, 0x5FB7, 0xB5C3, 0x5F97, 0xB5C4, 0x7684, 0xB5C5, 0x8E6C,
- 0xB5C6, 0x706F, 0xB5C7, 0x767B, 0xB5C8, 0x7B49, 0xB5C9, 0x77AA,
- 0xB5CA, 0x51F3, 0xB5CB, 0x9093, 0xB5CC, 0x5824, 0xB5CD, 0x4F4E,
- 0xB5CE, 0x6EF4, 0xB5CF, 0x8FEA, 0xB5D0, 0x654C, 0xB5D1, 0x7B1B,
- 0xB5D2, 0x72C4, 0xB5D3, 0x6DA4, 0xB5D4, 0x7FDF, 0xB5D5, 0x5AE1,
- 0xB5D6, 0x62B5, 0xB5D7, 0x5E95, 0xB5D8, 0x5730, 0xB5D9, 0x8482,
- 0xB5DA, 0x7B2C, 0xB5DB, 0x5E1D, 0xB5DC, 0x5F1F, 0xB5DD, 0x9012,
- 0xB5DE, 0x7F14, 0xB5DF, 0x98A0, 0xB5E0, 0x6382, 0xB5E1, 0x6EC7,
- 0xB5E2, 0x7898, 0xB5E3, 0x70B9, 0xB5E4, 0x5178, 0xB5E5, 0x975B,
- 0xB5E6, 0x57AB, 0xB5E7, 0x7535, 0xB5E8, 0x4F43, 0xB5E9, 0x7538,
- 0xB5EA, 0x5E97, 0xB5EB, 0x60E6, 0xB5EC, 0x5960, 0xB5ED, 0x6DC0,
- 0xB5EE, 0x6BBF, 0xB5EF, 0x7889, 0xB5F0, 0x53FC, 0xB5F1, 0x96D5,
- 0xB5F2, 0x51CB, 0xB5F3, 0x5201, 0xB5F4, 0x6389, 0xB5F5, 0x540A,
- 0xB5F6, 0x9493, 0xB5F7, 0x8C03, 0xB5F8, 0x8DCC, 0xB5F9, 0x7239,
- 0xB5FA, 0x789F, 0xB5FB, 0x8776, 0xB5FC, 0x8FED, 0xB5FD, 0x8C0D,
- 0xB5FE, 0x53E0, 0xB640, 0x7993, 0xB641, 0x7994, 0xB642, 0x7995,
- 0xB643, 0x7996, 0xB644, 0x7997, 0xB645, 0x7998, 0xB646, 0x7999,
- 0xB647, 0x799B, 0xB648, 0x799C, 0xB649, 0x799D, 0xB64A, 0x799E,
- 0xB64B, 0x799F, 0xB64C, 0x79A0, 0xB64D, 0x79A1, 0xB64E, 0x79A2,
- 0xB64F, 0x79A3, 0xB650, 0x79A4, 0xB651, 0x79A5, 0xB652, 0x79A6,
- 0xB653, 0x79A8, 0xB654, 0x79A9, 0xB655, 0x79AA, 0xB656, 0x79AB,
- 0xB657, 0x79AC, 0xB658, 0x79AD, 0xB659, 0x79AE, 0xB65A, 0x79AF,
- 0xB65B, 0x79B0, 0xB65C, 0x79B1, 0xB65D, 0x79B2, 0xB65E, 0x79B4,
- 0xB65F, 0x79B5, 0xB660, 0x79B6, 0xB661, 0x79B7, 0xB662, 0x79B8,
- 0xB663, 0x79BC, 0xB664, 0x79BF, 0xB665, 0x79C2, 0xB666, 0x79C4,
- 0xB667, 0x79C5, 0xB668, 0x79C7, 0xB669, 0x79C8, 0xB66A, 0x79CA,
- 0xB66B, 0x79CC, 0xB66C, 0x79CE, 0xB66D, 0x79CF, 0xB66E, 0x79D0,
- 0xB66F, 0x79D3, 0xB670, 0x79D4, 0xB671, 0x79D6, 0xB672, 0x79D7,
- 0xB673, 0x79D9, 0xB674, 0x79DA, 0xB675, 0x79DB, 0xB676, 0x79DC,
- 0xB677, 0x79DD, 0xB678, 0x79DE, 0xB679, 0x79E0, 0xB67A, 0x79E1,
- 0xB67B, 0x79E2, 0xB67C, 0x79E5, 0xB67D, 0x79E8, 0xB67E, 0x79EA,
- 0xB680, 0x79EC, 0xB681, 0x79EE, 0xB682, 0x79F1, 0xB683, 0x79F2,
- 0xB684, 0x79F3, 0xB685, 0x79F4, 0xB686, 0x79F5, 0xB687, 0x79F6,
- 0xB688, 0x79F7, 0xB689, 0x79F9, 0xB68A, 0x79FA, 0xB68B, 0x79FC,
- 0xB68C, 0x79FE, 0xB68D, 0x79FF, 0xB68E, 0x7A01, 0xB68F, 0x7A04,
- 0xB690, 0x7A05, 0xB691, 0x7A07, 0xB692, 0x7A08, 0xB693, 0x7A09,
- 0xB694, 0x7A0A, 0xB695, 0x7A0C, 0xB696, 0x7A0F, 0xB697, 0x7A10,
- 0xB698, 0x7A11, 0xB699, 0x7A12, 0xB69A, 0x7A13, 0xB69B, 0x7A15,
- 0xB69C, 0x7A16, 0xB69D, 0x7A18, 0xB69E, 0x7A19, 0xB69F, 0x7A1B,
- 0xB6A0, 0x7A1C, 0xB6A1, 0x4E01, 0xB6A2, 0x76EF, 0xB6A3, 0x53EE,
- 0xB6A4, 0x9489, 0xB6A5, 0x9876, 0xB6A6, 0x9F0E, 0xB6A7, 0x952D,
- 0xB6A8, 0x5B9A, 0xB6A9, 0x8BA2, 0xB6AA, 0x4E22, 0xB6AB, 0x4E1C,
- 0xB6AC, 0x51AC, 0xB6AD, 0x8463, 0xB6AE, 0x61C2, 0xB6AF, 0x52A8,
- 0xB6B0, 0x680B, 0xB6B1, 0x4F97, 0xB6B2, 0x606B, 0xB6B3, 0x51BB,
- 0xB6B4, 0x6D1E, 0xB6B5, 0x515C, 0xB6B6, 0x6296, 0xB6B7, 0x6597,
- 0xB6B8, 0x9661, 0xB6B9, 0x8C46, 0xB6BA, 0x9017, 0xB6BB, 0x75D8,
- 0xB6BC, 0x90FD, 0xB6BD, 0x7763, 0xB6BE, 0x6BD2, 0xB6BF, 0x728A,
- 0xB6C0, 0x72EC, 0xB6C1, 0x8BFB, 0xB6C2, 0x5835, 0xB6C3, 0x7779,
- 0xB6C4, 0x8D4C, 0xB6C5, 0x675C, 0xB6C6, 0x9540, 0xB6C7, 0x809A,
- 0xB6C8, 0x5EA6, 0xB6C9, 0x6E21, 0xB6CA, 0x5992, 0xB6CB, 0x7AEF,
- 0xB6CC, 0x77ED, 0xB6CD, 0x953B, 0xB6CE, 0x6BB5, 0xB6CF, 0x65AD,
- 0xB6D0, 0x7F0E, 0xB6D1, 0x5806, 0xB6D2, 0x5151, 0xB6D3, 0x961F,
- 0xB6D4, 0x5BF9, 0xB6D5, 0x58A9, 0xB6D6, 0x5428, 0xB6D7, 0x8E72,
- 0xB6D8, 0x6566, 0xB6D9, 0x987F, 0xB6DA, 0x56E4, 0xB6DB, 0x949D,
- 0xB6DC, 0x76FE, 0xB6DD, 0x9041, 0xB6DE, 0x6387, 0xB6DF, 0x54C6,
- 0xB6E0, 0x591A, 0xB6E1, 0x593A, 0xB6E2, 0x579B, 0xB6E3, 0x8EB2,
- 0xB6E4, 0x6735, 0xB6E5, 0x8DFA, 0xB6E6, 0x8235, 0xB6E7, 0x5241,
- 0xB6E8, 0x60F0, 0xB6E9, 0x5815, 0xB6EA, 0x86FE, 0xB6EB, 0x5CE8,
- 0xB6EC, 0x9E45, 0xB6ED, 0x4FC4, 0xB6EE, 0x989D, 0xB6EF, 0x8BB9,
- 0xB6F0, 0x5A25, 0xB6F1, 0x6076, 0xB6F2, 0x5384, 0xB6F3, 0x627C,
- 0xB6F4, 0x904F, 0xB6F5, 0x9102, 0xB6F6, 0x997F, 0xB6F7, 0x6069,
- 0xB6F8, 0x800C, 0xB6F9, 0x513F, 0xB6FA, 0x8033, 0xB6FB, 0x5C14,
- 0xB6FC, 0x9975, 0xB6FD, 0x6D31, 0xB6FE, 0x4E8C, 0xB740, 0x7A1D,
- 0xB741, 0x7A1F, 0xB742, 0x7A21, 0xB743, 0x7A22, 0xB744, 0x7A24,
- 0xB745, 0x7A25, 0xB746, 0x7A26, 0xB747, 0x7A27, 0xB748, 0x7A28,
- 0xB749, 0x7A29, 0xB74A, 0x7A2A, 0xB74B, 0x7A2B, 0xB74C, 0x7A2C,
- 0xB74D, 0x7A2D, 0xB74E, 0x7A2E, 0xB74F, 0x7A2F, 0xB750, 0x7A30,
- 0xB751, 0x7A31, 0xB752, 0x7A32, 0xB753, 0x7A34, 0xB754, 0x7A35,
- 0xB755, 0x7A36, 0xB756, 0x7A38, 0xB757, 0x7A3A, 0xB758, 0x7A3E,
- 0xB759, 0x7A40, 0xB75A, 0x7A41, 0xB75B, 0x7A42, 0xB75C, 0x7A43,
- 0xB75D, 0x7A44, 0xB75E, 0x7A45, 0xB75F, 0x7A47, 0xB760, 0x7A48,
- 0xB761, 0x7A49, 0xB762, 0x7A4A, 0xB763, 0x7A4B, 0xB764, 0x7A4C,
- 0xB765, 0x7A4D, 0xB766, 0x7A4E, 0xB767, 0x7A4F, 0xB768, 0x7A50,
- 0xB769, 0x7A52, 0xB76A, 0x7A53, 0xB76B, 0x7A54, 0xB76C, 0x7A55,
- 0xB76D, 0x7A56, 0xB76E, 0x7A58, 0xB76F, 0x7A59, 0xB770, 0x7A5A,
- 0xB771, 0x7A5B, 0xB772, 0x7A5C, 0xB773, 0x7A5D, 0xB774, 0x7A5E,
- 0xB775, 0x7A5F, 0xB776, 0x7A60, 0xB777, 0x7A61, 0xB778, 0x7A62,
- 0xB779, 0x7A63, 0xB77A, 0x7A64, 0xB77B, 0x7A65, 0xB77C, 0x7A66,
- 0xB77D, 0x7A67, 0xB77E, 0x7A68, 0xB780, 0x7A69, 0xB781, 0x7A6A,
- 0xB782, 0x7A6B, 0xB783, 0x7A6C, 0xB784, 0x7A6D, 0xB785, 0x7A6E,
- 0xB786, 0x7A6F, 0xB787, 0x7A71, 0xB788, 0x7A72, 0xB789, 0x7A73,
- 0xB78A, 0x7A75, 0xB78B, 0x7A7B, 0xB78C, 0x7A7C, 0xB78D, 0x7A7D,
- 0xB78E, 0x7A7E, 0xB78F, 0x7A82, 0xB790, 0x7A85, 0xB791, 0x7A87,
- 0xB792, 0x7A89, 0xB793, 0x7A8A, 0xB794, 0x7A8B, 0xB795, 0x7A8C,
- 0xB796, 0x7A8E, 0xB797, 0x7A8F, 0xB798, 0x7A90, 0xB799, 0x7A93,
- 0xB79A, 0x7A94, 0xB79B, 0x7A99, 0xB79C, 0x7A9A, 0xB79D, 0x7A9B,
- 0xB79E, 0x7A9E, 0xB79F, 0x7AA1, 0xB7A0, 0x7AA2, 0xB7A1, 0x8D30,
- 0xB7A2, 0x53D1, 0xB7A3, 0x7F5A, 0xB7A4, 0x7B4F, 0xB7A5, 0x4F10,
- 0xB7A6, 0x4E4F, 0xB7A7, 0x9600, 0xB7A8, 0x6CD5, 0xB7A9, 0x73D0,
- 0xB7AA, 0x85E9, 0xB7AB, 0x5E06, 0xB7AC, 0x756A, 0xB7AD, 0x7FFB,
- 0xB7AE, 0x6A0A, 0xB7AF, 0x77FE, 0xB7B0, 0x9492, 0xB7B1, 0x7E41,
- 0xB7B2, 0x51E1, 0xB7B3, 0x70E6, 0xB7B4, 0x53CD, 0xB7B5, 0x8FD4,
- 0xB7B6, 0x8303, 0xB7B7, 0x8D29, 0xB7B8, 0x72AF, 0xB7B9, 0x996D,
- 0xB7BA, 0x6CDB, 0xB7BB, 0x574A, 0xB7BC, 0x82B3, 0xB7BD, 0x65B9,
- 0xB7BE, 0x80AA, 0xB7BF, 0x623F, 0xB7C0, 0x9632, 0xB7C1, 0x59A8,
- 0xB7C2, 0x4EFF, 0xB7C3, 0x8BBF, 0xB7C4, 0x7EBA, 0xB7C5, 0x653E,
- 0xB7C6, 0x83F2, 0xB7C7, 0x975E, 0xB7C8, 0x5561, 0xB7C9, 0x98DE,
- 0xB7CA, 0x80A5, 0xB7CB, 0x532A, 0xB7CC, 0x8BFD, 0xB7CD, 0x5420,
- 0xB7CE, 0x80BA, 0xB7CF, 0x5E9F, 0xB7D0, 0x6CB8, 0xB7D1, 0x8D39,
- 0xB7D2, 0x82AC, 0xB7D3, 0x915A, 0xB7D4, 0x5429, 0xB7D5, 0x6C1B,
- 0xB7D6, 0x5206, 0xB7D7, 0x7EB7, 0xB7D8, 0x575F, 0xB7D9, 0x711A,
- 0xB7DA, 0x6C7E, 0xB7DB, 0x7C89, 0xB7DC, 0x594B, 0xB7DD, 0x4EFD,
- 0xB7DE, 0x5FFF, 0xB7DF, 0x6124, 0xB7E0, 0x7CAA, 0xB7E1, 0x4E30,
- 0xB7E2, 0x5C01, 0xB7E3, 0x67AB, 0xB7E4, 0x8702, 0xB7E5, 0x5CF0,
- 0xB7E6, 0x950B, 0xB7E7, 0x98CE, 0xB7E8, 0x75AF, 0xB7E9, 0x70FD,
- 0xB7EA, 0x9022, 0xB7EB, 0x51AF, 0xB7EC, 0x7F1D, 0xB7ED, 0x8BBD,
- 0xB7EE, 0x5949, 0xB7EF, 0x51E4, 0xB7F0, 0x4F5B, 0xB7F1, 0x5426,
- 0xB7F2, 0x592B, 0xB7F3, 0x6577, 0xB7F4, 0x80A4, 0xB7F5, 0x5B75,
- 0xB7F6, 0x6276, 0xB7F7, 0x62C2, 0xB7F8, 0x8F90, 0xB7F9, 0x5E45,
- 0xB7FA, 0x6C1F, 0xB7FB, 0x7B26, 0xB7FC, 0x4F0F, 0xB7FD, 0x4FD8,
- 0xB7FE, 0x670D, 0xB840, 0x7AA3, 0xB841, 0x7AA4, 0xB842, 0x7AA7,
- 0xB843, 0x7AA9, 0xB844, 0x7AAA, 0xB845, 0x7AAB, 0xB846, 0x7AAE,
- 0xB847, 0x7AAF, 0xB848, 0x7AB0, 0xB849, 0x7AB1, 0xB84A, 0x7AB2,
- 0xB84B, 0x7AB4, 0xB84C, 0x7AB5, 0xB84D, 0x7AB6, 0xB84E, 0x7AB7,
- 0xB84F, 0x7AB8, 0xB850, 0x7AB9, 0xB851, 0x7ABA, 0xB852, 0x7ABB,
- 0xB853, 0x7ABC, 0xB854, 0x7ABD, 0xB855, 0x7ABE, 0xB856, 0x7AC0,
- 0xB857, 0x7AC1, 0xB858, 0x7AC2, 0xB859, 0x7AC3, 0xB85A, 0x7AC4,
- 0xB85B, 0x7AC5, 0xB85C, 0x7AC6, 0xB85D, 0x7AC7, 0xB85E, 0x7AC8,
- 0xB85F, 0x7AC9, 0xB860, 0x7ACA, 0xB861, 0x7ACC, 0xB862, 0x7ACD,
- 0xB863, 0x7ACE, 0xB864, 0x7ACF, 0xB865, 0x7AD0, 0xB866, 0x7AD1,
- 0xB867, 0x7AD2, 0xB868, 0x7AD3, 0xB869, 0x7AD4, 0xB86A, 0x7AD5,
- 0xB86B, 0x7AD7, 0xB86C, 0x7AD8, 0xB86D, 0x7ADA, 0xB86E, 0x7ADB,
- 0xB86F, 0x7ADC, 0xB870, 0x7ADD, 0xB871, 0x7AE1, 0xB872, 0x7AE2,
- 0xB873, 0x7AE4, 0xB874, 0x7AE7, 0xB875, 0x7AE8, 0xB876, 0x7AE9,
- 0xB877, 0x7AEA, 0xB878, 0x7AEB, 0xB879, 0x7AEC, 0xB87A, 0x7AEE,
- 0xB87B, 0x7AF0, 0xB87C, 0x7AF1, 0xB87D, 0x7AF2, 0xB87E, 0x7AF3,
- 0xB880, 0x7AF4, 0xB881, 0x7AF5, 0xB882, 0x7AF6, 0xB883, 0x7AF7,
- 0xB884, 0x7AF8, 0xB885, 0x7AFB, 0xB886, 0x7AFC, 0xB887, 0x7AFE,
- 0xB888, 0x7B00, 0xB889, 0x7B01, 0xB88A, 0x7B02, 0xB88B, 0x7B05,
- 0xB88C, 0x7B07, 0xB88D, 0x7B09, 0xB88E, 0x7B0C, 0xB88F, 0x7B0D,
- 0xB890, 0x7B0E, 0xB891, 0x7B10, 0xB892, 0x7B12, 0xB893, 0x7B13,
- 0xB894, 0x7B16, 0xB895, 0x7B17, 0xB896, 0x7B18, 0xB897, 0x7B1A,
- 0xB898, 0x7B1C, 0xB899, 0x7B1D, 0xB89A, 0x7B1F, 0xB89B, 0x7B21,
- 0xB89C, 0x7B22, 0xB89D, 0x7B23, 0xB89E, 0x7B27, 0xB89F, 0x7B29,
- 0xB8A0, 0x7B2D, 0xB8A1, 0x6D6E, 0xB8A2, 0x6DAA, 0xB8A3, 0x798F,
- 0xB8A4, 0x88B1, 0xB8A5, 0x5F17, 0xB8A6, 0x752B, 0xB8A7, 0x629A,
- 0xB8A8, 0x8F85, 0xB8A9, 0x4FEF, 0xB8AA, 0x91DC, 0xB8AB, 0x65A7,
- 0xB8AC, 0x812F, 0xB8AD, 0x8151, 0xB8AE, 0x5E9C, 0xB8AF, 0x8150,
- 0xB8B0, 0x8D74, 0xB8B1, 0x526F, 0xB8B2, 0x8986, 0xB8B3, 0x8D4B,
- 0xB8B4, 0x590D, 0xB8B5, 0x5085, 0xB8B6, 0x4ED8, 0xB8B7, 0x961C,
- 0xB8B8, 0x7236, 0xB8B9, 0x8179, 0xB8BA, 0x8D1F, 0xB8BB, 0x5BCC,
- 0xB8BC, 0x8BA3, 0xB8BD, 0x9644, 0xB8BE, 0x5987, 0xB8BF, 0x7F1A,
- 0xB8C0, 0x5490, 0xB8C1, 0x5676, 0xB8C2, 0x560E, 0xB8C3, 0x8BE5,
- 0xB8C4, 0x6539, 0xB8C5, 0x6982, 0xB8C6, 0x9499, 0xB8C7, 0x76D6,
- 0xB8C8, 0x6E89, 0xB8C9, 0x5E72, 0xB8CA, 0x7518, 0xB8CB, 0x6746,
- 0xB8CC, 0x67D1, 0xB8CD, 0x7AFF, 0xB8CE, 0x809D, 0xB8CF, 0x8D76,
- 0xB8D0, 0x611F, 0xB8D1, 0x79C6, 0xB8D2, 0x6562, 0xB8D3, 0x8D63,
- 0xB8D4, 0x5188, 0xB8D5, 0x521A, 0xB8D6, 0x94A2, 0xB8D7, 0x7F38,
- 0xB8D8, 0x809B, 0xB8D9, 0x7EB2, 0xB8DA, 0x5C97, 0xB8DB, 0x6E2F,
- 0xB8DC, 0x6760, 0xB8DD, 0x7BD9, 0xB8DE, 0x768B, 0xB8DF, 0x9AD8,
- 0xB8E0, 0x818F, 0xB8E1, 0x7F94, 0xB8E2, 0x7CD5, 0xB8E3, 0x641E,
- 0xB8E4, 0x9550, 0xB8E5, 0x7A3F, 0xB8E6, 0x544A, 0xB8E7, 0x54E5,
- 0xB8E8, 0x6B4C, 0xB8E9, 0x6401, 0xB8EA, 0x6208, 0xB8EB, 0x9E3D,
- 0xB8EC, 0x80F3, 0xB8ED, 0x7599, 0xB8EE, 0x5272, 0xB8EF, 0x9769,
- 0xB8F0, 0x845B, 0xB8F1, 0x683C, 0xB8F2, 0x86E4, 0xB8F3, 0x9601,
- 0xB8F4, 0x9694, 0xB8F5, 0x94EC, 0xB8F6, 0x4E2A, 0xB8F7, 0x5404,
- 0xB8F8, 0x7ED9, 0xB8F9, 0x6839, 0xB8FA, 0x8DDF, 0xB8FB, 0x8015,
- 0xB8FC, 0x66F4, 0xB8FD, 0x5E9A, 0xB8FE, 0x7FB9, 0xB940, 0x7B2F,
- 0xB941, 0x7B30, 0xB942, 0x7B32, 0xB943, 0x7B34, 0xB944, 0x7B35,
- 0xB945, 0x7B36, 0xB946, 0x7B37, 0xB947, 0x7B39, 0xB948, 0x7B3B,
- 0xB949, 0x7B3D, 0xB94A, 0x7B3F, 0xB94B, 0x7B40, 0xB94C, 0x7B41,
- 0xB94D, 0x7B42, 0xB94E, 0x7B43, 0xB94F, 0x7B44, 0xB950, 0x7B46,
- 0xB951, 0x7B48, 0xB952, 0x7B4A, 0xB953, 0x7B4D, 0xB954, 0x7B4E,
- 0xB955, 0x7B53, 0xB956, 0x7B55, 0xB957, 0x7B57, 0xB958, 0x7B59,
- 0xB959, 0x7B5C, 0xB95A, 0x7B5E, 0xB95B, 0x7B5F, 0xB95C, 0x7B61,
- 0xB95D, 0x7B63, 0xB95E, 0x7B64, 0xB95F, 0x7B65, 0xB960, 0x7B66,
- 0xB961, 0x7B67, 0xB962, 0x7B68, 0xB963, 0x7B69, 0xB964, 0x7B6A,
- 0xB965, 0x7B6B, 0xB966, 0x7B6C, 0xB967, 0x7B6D, 0xB968, 0x7B6F,
- 0xB969, 0x7B70, 0xB96A, 0x7B73, 0xB96B, 0x7B74, 0xB96C, 0x7B76,
- 0xB96D, 0x7B78, 0xB96E, 0x7B7A, 0xB96F, 0x7B7C, 0xB970, 0x7B7D,
- 0xB971, 0x7B7F, 0xB972, 0x7B81, 0xB973, 0x7B82, 0xB974, 0x7B83,
- 0xB975, 0x7B84, 0xB976, 0x7B86, 0xB977, 0x7B87, 0xB978, 0x7B88,
- 0xB979, 0x7B89, 0xB97A, 0x7B8A, 0xB97B, 0x7B8B, 0xB97C, 0x7B8C,
- 0xB97D, 0x7B8E, 0xB97E, 0x7B8F, 0xB980, 0x7B91, 0xB981, 0x7B92,
- 0xB982, 0x7B93, 0xB983, 0x7B96, 0xB984, 0x7B98, 0xB985, 0x7B99,
- 0xB986, 0x7B9A, 0xB987, 0x7B9B, 0xB988, 0x7B9E, 0xB989, 0x7B9F,
- 0xB98A, 0x7BA0, 0xB98B, 0x7BA3, 0xB98C, 0x7BA4, 0xB98D, 0x7BA5,
- 0xB98E, 0x7BAE, 0xB98F, 0x7BAF, 0xB990, 0x7BB0, 0xB991, 0x7BB2,
- 0xB992, 0x7BB3, 0xB993, 0x7BB5, 0xB994, 0x7BB6, 0xB995, 0x7BB7,
- 0xB996, 0x7BB9, 0xB997, 0x7BBA, 0xB998, 0x7BBB, 0xB999, 0x7BBC,
- 0xB99A, 0x7BBD, 0xB99B, 0x7BBE, 0xB99C, 0x7BBF, 0xB99D, 0x7BC0,
- 0xB99E, 0x7BC2, 0xB99F, 0x7BC3, 0xB9A0, 0x7BC4, 0xB9A1, 0x57C2,
- 0xB9A2, 0x803F, 0xB9A3, 0x6897, 0xB9A4, 0x5DE5, 0xB9A5, 0x653B,
- 0xB9A6, 0x529F, 0xB9A7, 0x606D, 0xB9A8, 0x9F9A, 0xB9A9, 0x4F9B,
- 0xB9AA, 0x8EAC, 0xB9AB, 0x516C, 0xB9AC, 0x5BAB, 0xB9AD, 0x5F13,
- 0xB9AE, 0x5DE9, 0xB9AF, 0x6C5E, 0xB9B0, 0x62F1, 0xB9B1, 0x8D21,
- 0xB9B2, 0x5171, 0xB9B3, 0x94A9, 0xB9B4, 0x52FE, 0xB9B5, 0x6C9F,
- 0xB9B6, 0x82DF, 0xB9B7, 0x72D7, 0xB9B8, 0x57A2, 0xB9B9, 0x6784,
- 0xB9BA, 0x8D2D, 0xB9BB, 0x591F, 0xB9BC, 0x8F9C, 0xB9BD, 0x83C7,
- 0xB9BE, 0x5495, 0xB9BF, 0x7B8D, 0xB9C0, 0x4F30, 0xB9C1, 0x6CBD,
- 0xB9C2, 0x5B64, 0xB9C3, 0x59D1, 0xB9C4, 0x9F13, 0xB9C5, 0x53E4,
- 0xB9C6, 0x86CA, 0xB9C7, 0x9AA8, 0xB9C8, 0x8C37, 0xB9C9, 0x80A1,
- 0xB9CA, 0x6545, 0xB9CB, 0x987E, 0xB9CC, 0x56FA, 0xB9CD, 0x96C7,
- 0xB9CE, 0x522E, 0xB9CF, 0x74DC, 0xB9D0, 0x5250, 0xB9D1, 0x5BE1,
- 0xB9D2, 0x6302, 0xB9D3, 0x8902, 0xB9D4, 0x4E56, 0xB9D5, 0x62D0,
- 0xB9D6, 0x602A, 0xB9D7, 0x68FA, 0xB9D8, 0x5173, 0xB9D9, 0x5B98,
- 0xB9DA, 0x51A0, 0xB9DB, 0x89C2, 0xB9DC, 0x7BA1, 0xB9DD, 0x9986,
- 0xB9DE, 0x7F50, 0xB9DF, 0x60EF, 0xB9E0, 0x704C, 0xB9E1, 0x8D2F,
- 0xB9E2, 0x5149, 0xB9E3, 0x5E7F, 0xB9E4, 0x901B, 0xB9E5, 0x7470,
- 0xB9E6, 0x89C4, 0xB9E7, 0x572D, 0xB9E8, 0x7845, 0xB9E9, 0x5F52,
- 0xB9EA, 0x9F9F, 0xB9EB, 0x95FA, 0xB9EC, 0x8F68, 0xB9ED, 0x9B3C,
- 0xB9EE, 0x8BE1, 0xB9EF, 0x7678, 0xB9F0, 0x6842, 0xB9F1, 0x67DC,
- 0xB9F2, 0x8DEA, 0xB9F3, 0x8D35, 0xB9F4, 0x523D, 0xB9F5, 0x8F8A,
- 0xB9F6, 0x6EDA, 0xB9F7, 0x68CD, 0xB9F8, 0x9505, 0xB9F9, 0x90ED,
- 0xB9FA, 0x56FD, 0xB9FB, 0x679C, 0xB9FC, 0x88F9, 0xB9FD, 0x8FC7,
- 0xB9FE, 0x54C8, 0xBA40, 0x7BC5, 0xBA41, 0x7BC8, 0xBA42, 0x7BC9,
- 0xBA43, 0x7BCA, 0xBA44, 0x7BCB, 0xBA45, 0x7BCD, 0xBA46, 0x7BCE,
- 0xBA47, 0x7BCF, 0xBA48, 0x7BD0, 0xBA49, 0x7BD2, 0xBA4A, 0x7BD4,
- 0xBA4B, 0x7BD5, 0xBA4C, 0x7BD6, 0xBA4D, 0x7BD7, 0xBA4E, 0x7BD8,
- 0xBA4F, 0x7BDB, 0xBA50, 0x7BDC, 0xBA51, 0x7BDE, 0xBA52, 0x7BDF,
- 0xBA53, 0x7BE0, 0xBA54, 0x7BE2, 0xBA55, 0x7BE3, 0xBA56, 0x7BE4,
- 0xBA57, 0x7BE7, 0xBA58, 0x7BE8, 0xBA59, 0x7BE9, 0xBA5A, 0x7BEB,
- 0xBA5B, 0x7BEC, 0xBA5C, 0x7BED, 0xBA5D, 0x7BEF, 0xBA5E, 0x7BF0,
- 0xBA5F, 0x7BF2, 0xBA60, 0x7BF3, 0xBA61, 0x7BF4, 0xBA62, 0x7BF5,
- 0xBA63, 0x7BF6, 0xBA64, 0x7BF8, 0xBA65, 0x7BF9, 0xBA66, 0x7BFA,
- 0xBA67, 0x7BFB, 0xBA68, 0x7BFD, 0xBA69, 0x7BFF, 0xBA6A, 0x7C00,
- 0xBA6B, 0x7C01, 0xBA6C, 0x7C02, 0xBA6D, 0x7C03, 0xBA6E, 0x7C04,
- 0xBA6F, 0x7C05, 0xBA70, 0x7C06, 0xBA71, 0x7C08, 0xBA72, 0x7C09,
- 0xBA73, 0x7C0A, 0xBA74, 0x7C0D, 0xBA75, 0x7C0E, 0xBA76, 0x7C10,
- 0xBA77, 0x7C11, 0xBA78, 0x7C12, 0xBA79, 0x7C13, 0xBA7A, 0x7C14,
- 0xBA7B, 0x7C15, 0xBA7C, 0x7C17, 0xBA7D, 0x7C18, 0xBA7E, 0x7C19,
- 0xBA80, 0x7C1A, 0xBA81, 0x7C1B, 0xBA82, 0x7C1C, 0xBA83, 0x7C1D,
- 0xBA84, 0x7C1E, 0xBA85, 0x7C20, 0xBA86, 0x7C21, 0xBA87, 0x7C22,
- 0xBA88, 0x7C23, 0xBA89, 0x7C24, 0xBA8A, 0x7C25, 0xBA8B, 0x7C28,
- 0xBA8C, 0x7C29, 0xBA8D, 0x7C2B, 0xBA8E, 0x7C2C, 0xBA8F, 0x7C2D,
- 0xBA90, 0x7C2E, 0xBA91, 0x7C2F, 0xBA92, 0x7C30, 0xBA93, 0x7C31,
- 0xBA94, 0x7C32, 0xBA95, 0x7C33, 0xBA96, 0x7C34, 0xBA97, 0x7C35,
- 0xBA98, 0x7C36, 0xBA99, 0x7C37, 0xBA9A, 0x7C39, 0xBA9B, 0x7C3A,
- 0xBA9C, 0x7C3B, 0xBA9D, 0x7C3C, 0xBA9E, 0x7C3D, 0xBA9F, 0x7C3E,
- 0xBAA0, 0x7C42, 0xBAA1, 0x9AB8, 0xBAA2, 0x5B69, 0xBAA3, 0x6D77,
- 0xBAA4, 0x6C26, 0xBAA5, 0x4EA5, 0xBAA6, 0x5BB3, 0xBAA7, 0x9A87,
- 0xBAA8, 0x9163, 0xBAA9, 0x61A8, 0xBAAA, 0x90AF, 0xBAAB, 0x97E9,
- 0xBAAC, 0x542B, 0xBAAD, 0x6DB5, 0xBAAE, 0x5BD2, 0xBAAF, 0x51FD,
- 0xBAB0, 0x558A, 0xBAB1, 0x7F55, 0xBAB2, 0x7FF0, 0xBAB3, 0x64BC,
- 0xBAB4, 0x634D, 0xBAB5, 0x65F1, 0xBAB6, 0x61BE, 0xBAB7, 0x608D,
- 0xBAB8, 0x710A, 0xBAB9, 0x6C57, 0xBABA, 0x6C49, 0xBABB, 0x592F,
- 0xBABC, 0x676D, 0xBABD, 0x822A, 0xBABE, 0x58D5, 0xBABF, 0x568E,
- 0xBAC0, 0x8C6A, 0xBAC1, 0x6BEB, 0xBAC2, 0x90DD, 0xBAC3, 0x597D,
- 0xBAC4, 0x8017, 0xBAC5, 0x53F7, 0xBAC6, 0x6D69, 0xBAC7, 0x5475,
- 0xBAC8, 0x559D, 0xBAC9, 0x8377, 0xBACA, 0x83CF, 0xBACB, 0x6838,
- 0xBACC, 0x79BE, 0xBACD, 0x548C, 0xBACE, 0x4F55, 0xBACF, 0x5408,
- 0xBAD0, 0x76D2, 0xBAD1, 0x8C89, 0xBAD2, 0x9602, 0xBAD3, 0x6CB3,
- 0xBAD4, 0x6DB8, 0xBAD5, 0x8D6B, 0xBAD6, 0x8910, 0xBAD7, 0x9E64,
- 0xBAD8, 0x8D3A, 0xBAD9, 0x563F, 0xBADA, 0x9ED1, 0xBADB, 0x75D5,
- 0xBADC, 0x5F88, 0xBADD, 0x72E0, 0xBADE, 0x6068, 0xBADF, 0x54FC,
- 0xBAE0, 0x4EA8, 0xBAE1, 0x6A2A, 0xBAE2, 0x8861, 0xBAE3, 0x6052,
- 0xBAE4, 0x8F70, 0xBAE5, 0x54C4, 0xBAE6, 0x70D8, 0xBAE7, 0x8679,
- 0xBAE8, 0x9E3F, 0xBAE9, 0x6D2A, 0xBAEA, 0x5B8F, 0xBAEB, 0x5F18,
- 0xBAEC, 0x7EA2, 0xBAED, 0x5589, 0xBAEE, 0x4FAF, 0xBAEF, 0x7334,
- 0xBAF0, 0x543C, 0xBAF1, 0x539A, 0xBAF2, 0x5019, 0xBAF3, 0x540E,
- 0xBAF4, 0x547C, 0xBAF5, 0x4E4E, 0xBAF6, 0x5FFD, 0xBAF7, 0x745A,
- 0xBAF8, 0x58F6, 0xBAF9, 0x846B, 0xBAFA, 0x80E1, 0xBAFB, 0x8774,
- 0xBAFC, 0x72D0, 0xBAFD, 0x7CCA, 0xBAFE, 0x6E56, 0xBB40, 0x7C43,
- 0xBB41, 0x7C44, 0xBB42, 0x7C45, 0xBB43, 0x7C46, 0xBB44, 0x7C47,
- 0xBB45, 0x7C48, 0xBB46, 0x7C49, 0xBB47, 0x7C4A, 0xBB48, 0x7C4B,
- 0xBB49, 0x7C4C, 0xBB4A, 0x7C4E, 0xBB4B, 0x7C4F, 0xBB4C, 0x7C50,
- 0xBB4D, 0x7C51, 0xBB4E, 0x7C52, 0xBB4F, 0x7C53, 0xBB50, 0x7C54,
- 0xBB51, 0x7C55, 0xBB52, 0x7C56, 0xBB53, 0x7C57, 0xBB54, 0x7C58,
- 0xBB55, 0x7C59, 0xBB56, 0x7C5A, 0xBB57, 0x7C5B, 0xBB58, 0x7C5C,
- 0xBB59, 0x7C5D, 0xBB5A, 0x7C5E, 0xBB5B, 0x7C5F, 0xBB5C, 0x7C60,
- 0xBB5D, 0x7C61, 0xBB5E, 0x7C62, 0xBB5F, 0x7C63, 0xBB60, 0x7C64,
- 0xBB61, 0x7C65, 0xBB62, 0x7C66, 0xBB63, 0x7C67, 0xBB64, 0x7C68,
- 0xBB65, 0x7C69, 0xBB66, 0x7C6A, 0xBB67, 0x7C6B, 0xBB68, 0x7C6C,
- 0xBB69, 0x7C6D, 0xBB6A, 0x7C6E, 0xBB6B, 0x7C6F, 0xBB6C, 0x7C70,
- 0xBB6D, 0x7C71, 0xBB6E, 0x7C72, 0xBB6F, 0x7C75, 0xBB70, 0x7C76,
- 0xBB71, 0x7C77, 0xBB72, 0x7C78, 0xBB73, 0x7C79, 0xBB74, 0x7C7A,
- 0xBB75, 0x7C7E, 0xBB76, 0x7C7F, 0xBB77, 0x7C80, 0xBB78, 0x7C81,
- 0xBB79, 0x7C82, 0xBB7A, 0x7C83, 0xBB7B, 0x7C84, 0xBB7C, 0x7C85,
- 0xBB7D, 0x7C86, 0xBB7E, 0x7C87, 0xBB80, 0x7C88, 0xBB81, 0x7C8A,
- 0xBB82, 0x7C8B, 0xBB83, 0x7C8C, 0xBB84, 0x7C8D, 0xBB85, 0x7C8E,
- 0xBB86, 0x7C8F, 0xBB87, 0x7C90, 0xBB88, 0x7C93, 0xBB89, 0x7C94,
- 0xBB8A, 0x7C96, 0xBB8B, 0x7C99, 0xBB8C, 0x7C9A, 0xBB8D, 0x7C9B,
- 0xBB8E, 0x7CA0, 0xBB8F, 0x7CA1, 0xBB90, 0x7CA3, 0xBB91, 0x7CA6,
- 0xBB92, 0x7CA7, 0xBB93, 0x7CA8, 0xBB94, 0x7CA9, 0xBB95, 0x7CAB,
- 0xBB96, 0x7CAC, 0xBB97, 0x7CAD, 0xBB98, 0x7CAF, 0xBB99, 0x7CB0,
- 0xBB9A, 0x7CB4, 0xBB9B, 0x7CB5, 0xBB9C, 0x7CB6, 0xBB9D, 0x7CB7,
- 0xBB9E, 0x7CB8, 0xBB9F, 0x7CBA, 0xBBA0, 0x7CBB, 0xBBA1, 0x5F27,
- 0xBBA2, 0x864E, 0xBBA3, 0x552C, 0xBBA4, 0x62A4, 0xBBA5, 0x4E92,
- 0xBBA6, 0x6CAA, 0xBBA7, 0x6237, 0xBBA8, 0x82B1, 0xBBA9, 0x54D7,
- 0xBBAA, 0x534E, 0xBBAB, 0x733E, 0xBBAC, 0x6ED1, 0xBBAD, 0x753B,
- 0xBBAE, 0x5212, 0xBBAF, 0x5316, 0xBBB0, 0x8BDD, 0xBBB1, 0x69D0,
- 0xBBB2, 0x5F8A, 0xBBB3, 0x6000, 0xBBB4, 0x6DEE, 0xBBB5, 0x574F,
- 0xBBB6, 0x6B22, 0xBBB7, 0x73AF, 0xBBB8, 0x6853, 0xBBB9, 0x8FD8,
- 0xBBBA, 0x7F13, 0xBBBB, 0x6362, 0xBBBC, 0x60A3, 0xBBBD, 0x5524,
- 0xBBBE, 0x75EA, 0xBBBF, 0x8C62, 0xBBC0, 0x7115, 0xBBC1, 0x6DA3,
- 0xBBC2, 0x5BA6, 0xBBC3, 0x5E7B, 0xBBC4, 0x8352, 0xBBC5, 0x614C,
- 0xBBC6, 0x9EC4, 0xBBC7, 0x78FA, 0xBBC8, 0x8757, 0xBBC9, 0x7C27,
- 0xBBCA, 0x7687, 0xBBCB, 0x51F0, 0xBBCC, 0x60F6, 0xBBCD, 0x714C,
- 0xBBCE, 0x6643, 0xBBCF, 0x5E4C, 0xBBD0, 0x604D, 0xBBD1, 0x8C0E,
- 0xBBD2, 0x7070, 0xBBD3, 0x6325, 0xBBD4, 0x8F89, 0xBBD5, 0x5FBD,
- 0xBBD6, 0x6062, 0xBBD7, 0x86D4, 0xBBD8, 0x56DE, 0xBBD9, 0x6BC1,
- 0xBBDA, 0x6094, 0xBBDB, 0x6167, 0xBBDC, 0x5349, 0xBBDD, 0x60E0,
- 0xBBDE, 0x6666, 0xBBDF, 0x8D3F, 0xBBE0, 0x79FD, 0xBBE1, 0x4F1A,
- 0xBBE2, 0x70E9, 0xBBE3, 0x6C47, 0xBBE4, 0x8BB3, 0xBBE5, 0x8BF2,
- 0xBBE6, 0x7ED8, 0xBBE7, 0x8364, 0xBBE8, 0x660F, 0xBBE9, 0x5A5A,
- 0xBBEA, 0x9B42, 0xBBEB, 0x6D51, 0xBBEC, 0x6DF7, 0xBBED, 0x8C41,
- 0xBBEE, 0x6D3B, 0xBBEF, 0x4F19, 0xBBF0, 0x706B, 0xBBF1, 0x83B7,
- 0xBBF2, 0x6216, 0xBBF3, 0x60D1, 0xBBF4, 0x970D, 0xBBF5, 0x8D27,
- 0xBBF6, 0x7978, 0xBBF7, 0x51FB, 0xBBF8, 0x573E, 0xBBF9, 0x57FA,
- 0xBBFA, 0x673A, 0xBBFB, 0x7578, 0xBBFC, 0x7A3D, 0xBBFD, 0x79EF,
- 0xBBFE, 0x7B95, 0xBC40, 0x7CBF, 0xBC41, 0x7CC0, 0xBC42, 0x7CC2,
- 0xBC43, 0x7CC3, 0xBC44, 0x7CC4, 0xBC45, 0x7CC6, 0xBC46, 0x7CC9,
- 0xBC47, 0x7CCB, 0xBC48, 0x7CCE, 0xBC49, 0x7CCF, 0xBC4A, 0x7CD0,
- 0xBC4B, 0x7CD1, 0xBC4C, 0x7CD2, 0xBC4D, 0x7CD3, 0xBC4E, 0x7CD4,
- 0xBC4F, 0x7CD8, 0xBC50, 0x7CDA, 0xBC51, 0x7CDB, 0xBC52, 0x7CDD,
- 0xBC53, 0x7CDE, 0xBC54, 0x7CE1, 0xBC55, 0x7CE2, 0xBC56, 0x7CE3,
- 0xBC57, 0x7CE4, 0xBC58, 0x7CE5, 0xBC59, 0x7CE6, 0xBC5A, 0x7CE7,
- 0xBC5B, 0x7CE9, 0xBC5C, 0x7CEA, 0xBC5D, 0x7CEB, 0xBC5E, 0x7CEC,
- 0xBC5F, 0x7CED, 0xBC60, 0x7CEE, 0xBC61, 0x7CF0, 0xBC62, 0x7CF1,
- 0xBC63, 0x7CF2, 0xBC64, 0x7CF3, 0xBC65, 0x7CF4, 0xBC66, 0x7CF5,
- 0xBC67, 0x7CF6, 0xBC68, 0x7CF7, 0xBC69, 0x7CF9, 0xBC6A, 0x7CFA,
- 0xBC6B, 0x7CFC, 0xBC6C, 0x7CFD, 0xBC6D, 0x7CFE, 0xBC6E, 0x7CFF,
- 0xBC6F, 0x7D00, 0xBC70, 0x7D01, 0xBC71, 0x7D02, 0xBC72, 0x7D03,
- 0xBC73, 0x7D04, 0xBC74, 0x7D05, 0xBC75, 0x7D06, 0xBC76, 0x7D07,
- 0xBC77, 0x7D08, 0xBC78, 0x7D09, 0xBC79, 0x7D0B, 0xBC7A, 0x7D0C,
- 0xBC7B, 0x7D0D, 0xBC7C, 0x7D0E, 0xBC7D, 0x7D0F, 0xBC7E, 0x7D10,
- 0xBC80, 0x7D11, 0xBC81, 0x7D12, 0xBC82, 0x7D13, 0xBC83, 0x7D14,
- 0xBC84, 0x7D15, 0xBC85, 0x7D16, 0xBC86, 0x7D17, 0xBC87, 0x7D18,
- 0xBC88, 0x7D19, 0xBC89, 0x7D1A, 0xBC8A, 0x7D1B, 0xBC8B, 0x7D1C,
- 0xBC8C, 0x7D1D, 0xBC8D, 0x7D1E, 0xBC8E, 0x7D1F, 0xBC8F, 0x7D21,
- 0xBC90, 0x7D23, 0xBC91, 0x7D24, 0xBC92, 0x7D25, 0xBC93, 0x7D26,
- 0xBC94, 0x7D28, 0xBC95, 0x7D29, 0xBC96, 0x7D2A, 0xBC97, 0x7D2C,
- 0xBC98, 0x7D2D, 0xBC99, 0x7D2E, 0xBC9A, 0x7D30, 0xBC9B, 0x7D31,
- 0xBC9C, 0x7D32, 0xBC9D, 0x7D33, 0xBC9E, 0x7D34, 0xBC9F, 0x7D35,
- 0xBCA0, 0x7D36, 0xBCA1, 0x808C, 0xBCA2, 0x9965, 0xBCA3, 0x8FF9,
- 0xBCA4, 0x6FC0, 0xBCA5, 0x8BA5, 0xBCA6, 0x9E21, 0xBCA7, 0x59EC,
- 0xBCA8, 0x7EE9, 0xBCA9, 0x7F09, 0xBCAA, 0x5409, 0xBCAB, 0x6781,
- 0xBCAC, 0x68D8, 0xBCAD, 0x8F91, 0xBCAE, 0x7C4D, 0xBCAF, 0x96C6,
- 0xBCB0, 0x53CA, 0xBCB1, 0x6025, 0xBCB2, 0x75BE, 0xBCB3, 0x6C72,
- 0xBCB4, 0x5373, 0xBCB5, 0x5AC9, 0xBCB6, 0x7EA7, 0xBCB7, 0x6324,
- 0xBCB8, 0x51E0, 0xBCB9, 0x810A, 0xBCBA, 0x5DF1, 0xBCBB, 0x84DF,
- 0xBCBC, 0x6280, 0xBCBD, 0x5180, 0xBCBE, 0x5B63, 0xBCBF, 0x4F0E,
- 0xBCC0, 0x796D, 0xBCC1, 0x5242, 0xBCC2, 0x60B8, 0xBCC3, 0x6D4E,
- 0xBCC4, 0x5BC4, 0xBCC5, 0x5BC2, 0xBCC6, 0x8BA1, 0xBCC7, 0x8BB0,
- 0xBCC8, 0x65E2, 0xBCC9, 0x5FCC, 0xBCCA, 0x9645, 0xBCCB, 0x5993,
- 0xBCCC, 0x7EE7, 0xBCCD, 0x7EAA, 0xBCCE, 0x5609, 0xBCCF, 0x67B7,
- 0xBCD0, 0x5939, 0xBCD1, 0x4F73, 0xBCD2, 0x5BB6, 0xBCD3, 0x52A0,
- 0xBCD4, 0x835A, 0xBCD5, 0x988A, 0xBCD6, 0x8D3E, 0xBCD7, 0x7532,
- 0xBCD8, 0x94BE, 0xBCD9, 0x5047, 0xBCDA, 0x7A3C, 0xBCDB, 0x4EF7,
- 0xBCDC, 0x67B6, 0xBCDD, 0x9A7E, 0xBCDE, 0x5AC1, 0xBCDF, 0x6B7C,
- 0xBCE0, 0x76D1, 0xBCE1, 0x575A, 0xBCE2, 0x5C16, 0xBCE3, 0x7B3A,
- 0xBCE4, 0x95F4, 0xBCE5, 0x714E, 0xBCE6, 0x517C, 0xBCE7, 0x80A9,
- 0xBCE8, 0x8270, 0xBCE9, 0x5978, 0xBCEA, 0x7F04, 0xBCEB, 0x8327,
- 0xBCEC, 0x68C0, 0xBCED, 0x67EC, 0xBCEE, 0x78B1, 0xBCEF, 0x7877,
- 0xBCF0, 0x62E3, 0xBCF1, 0x6361, 0xBCF2, 0x7B80, 0xBCF3, 0x4FED,
- 0xBCF4, 0x526A, 0xBCF5, 0x51CF, 0xBCF6, 0x8350, 0xBCF7, 0x69DB,
- 0xBCF8, 0x9274, 0xBCF9, 0x8DF5, 0xBCFA, 0x8D31, 0xBCFB, 0x89C1,
- 0xBCFC, 0x952E, 0xBCFD, 0x7BAD, 0xBCFE, 0x4EF6, 0xBD40, 0x7D37,
- 0xBD41, 0x7D38, 0xBD42, 0x7D39, 0xBD43, 0x7D3A, 0xBD44, 0x7D3B,
- 0xBD45, 0x7D3C, 0xBD46, 0x7D3D, 0xBD47, 0x7D3E, 0xBD48, 0x7D3F,
- 0xBD49, 0x7D40, 0xBD4A, 0x7D41, 0xBD4B, 0x7D42, 0xBD4C, 0x7D43,
- 0xBD4D, 0x7D44, 0xBD4E, 0x7D45, 0xBD4F, 0x7D46, 0xBD50, 0x7D47,
- 0xBD51, 0x7D48, 0xBD52, 0x7D49, 0xBD53, 0x7D4A, 0xBD54, 0x7D4B,
- 0xBD55, 0x7D4C, 0xBD56, 0x7D4D, 0xBD57, 0x7D4E, 0xBD58, 0x7D4F,
- 0xBD59, 0x7D50, 0xBD5A, 0x7D51, 0xBD5B, 0x7D52, 0xBD5C, 0x7D53,
- 0xBD5D, 0x7D54, 0xBD5E, 0x7D55, 0xBD5F, 0x7D56, 0xBD60, 0x7D57,
- 0xBD61, 0x7D58, 0xBD62, 0x7D59, 0xBD63, 0x7D5A, 0xBD64, 0x7D5B,
- 0xBD65, 0x7D5C, 0xBD66, 0x7D5D, 0xBD67, 0x7D5E, 0xBD68, 0x7D5F,
- 0xBD69, 0x7D60, 0xBD6A, 0x7D61, 0xBD6B, 0x7D62, 0xBD6C, 0x7D63,
- 0xBD6D, 0x7D64, 0xBD6E, 0x7D65, 0xBD6F, 0x7D66, 0xBD70, 0x7D67,
- 0xBD71, 0x7D68, 0xBD72, 0x7D69, 0xBD73, 0x7D6A, 0xBD74, 0x7D6B,
- 0xBD75, 0x7D6C, 0xBD76, 0x7D6D, 0xBD77, 0x7D6F, 0xBD78, 0x7D70,
- 0xBD79, 0x7D71, 0xBD7A, 0x7D72, 0xBD7B, 0x7D73, 0xBD7C, 0x7D74,
- 0xBD7D, 0x7D75, 0xBD7E, 0x7D76, 0xBD80, 0x7D78, 0xBD81, 0x7D79,
- 0xBD82, 0x7D7A, 0xBD83, 0x7D7B, 0xBD84, 0x7D7C, 0xBD85, 0x7D7D,
- 0xBD86, 0x7D7E, 0xBD87, 0x7D7F, 0xBD88, 0x7D80, 0xBD89, 0x7D81,
- 0xBD8A, 0x7D82, 0xBD8B, 0x7D83, 0xBD8C, 0x7D84, 0xBD8D, 0x7D85,
- 0xBD8E, 0x7D86, 0xBD8F, 0x7D87, 0xBD90, 0x7D88, 0xBD91, 0x7D89,
- 0xBD92, 0x7D8A, 0xBD93, 0x7D8B, 0xBD94, 0x7D8C, 0xBD95, 0x7D8D,
- 0xBD96, 0x7D8E, 0xBD97, 0x7D8F, 0xBD98, 0x7D90, 0xBD99, 0x7D91,
- 0xBD9A, 0x7D92, 0xBD9B, 0x7D93, 0xBD9C, 0x7D94, 0xBD9D, 0x7D95,
- 0xBD9E, 0x7D96, 0xBD9F, 0x7D97, 0xBDA0, 0x7D98, 0xBDA1, 0x5065,
- 0xBDA2, 0x8230, 0xBDA3, 0x5251, 0xBDA4, 0x996F, 0xBDA5, 0x6E10,
- 0xBDA6, 0x6E85, 0xBDA7, 0x6DA7, 0xBDA8, 0x5EFA, 0xBDA9, 0x50F5,
- 0xBDAA, 0x59DC, 0xBDAB, 0x5C06, 0xBDAC, 0x6D46, 0xBDAD, 0x6C5F,
- 0xBDAE, 0x7586, 0xBDAF, 0x848B, 0xBDB0, 0x6868, 0xBDB1, 0x5956,
- 0xBDB2, 0x8BB2, 0xBDB3, 0x5320, 0xBDB4, 0x9171, 0xBDB5, 0x964D,
- 0xBDB6, 0x8549, 0xBDB7, 0x6912, 0xBDB8, 0x7901, 0xBDB9, 0x7126,
- 0xBDBA, 0x80F6, 0xBDBB, 0x4EA4, 0xBDBC, 0x90CA, 0xBDBD, 0x6D47,
- 0xBDBE, 0x9A84, 0xBDBF, 0x5A07, 0xBDC0, 0x56BC, 0xBDC1, 0x6405,
- 0xBDC2, 0x94F0, 0xBDC3, 0x77EB, 0xBDC4, 0x4FA5, 0xBDC5, 0x811A,
- 0xBDC6, 0x72E1, 0xBDC7, 0x89D2, 0xBDC8, 0x997A, 0xBDC9, 0x7F34,
- 0xBDCA, 0x7EDE, 0xBDCB, 0x527F, 0xBDCC, 0x6559, 0xBDCD, 0x9175,
- 0xBDCE, 0x8F7F, 0xBDCF, 0x8F83, 0xBDD0, 0x53EB, 0xBDD1, 0x7A96,
- 0xBDD2, 0x63ED, 0xBDD3, 0x63A5, 0xBDD4, 0x7686, 0xBDD5, 0x79F8,
- 0xBDD6, 0x8857, 0xBDD7, 0x9636, 0xBDD8, 0x622A, 0xBDD9, 0x52AB,
- 0xBDDA, 0x8282, 0xBDDB, 0x6854, 0xBDDC, 0x6770, 0xBDDD, 0x6377,
- 0xBDDE, 0x776B, 0xBDDF, 0x7AED, 0xBDE0, 0x6D01, 0xBDE1, 0x7ED3,
- 0xBDE2, 0x89E3, 0xBDE3, 0x59D0, 0xBDE4, 0x6212, 0xBDE5, 0x85C9,
- 0xBDE6, 0x82A5, 0xBDE7, 0x754C, 0xBDE8, 0x501F, 0xBDE9, 0x4ECB,
- 0xBDEA, 0x75A5, 0xBDEB, 0x8BEB, 0xBDEC, 0x5C4A, 0xBDED, 0x5DFE,
- 0xBDEE, 0x7B4B, 0xBDEF, 0x65A4, 0xBDF0, 0x91D1, 0xBDF1, 0x4ECA,
- 0xBDF2, 0x6D25, 0xBDF3, 0x895F, 0xBDF4, 0x7D27, 0xBDF5, 0x9526,
- 0xBDF6, 0x4EC5, 0xBDF7, 0x8C28, 0xBDF8, 0x8FDB, 0xBDF9, 0x9773,
- 0xBDFA, 0x664B, 0xBDFB, 0x7981, 0xBDFC, 0x8FD1, 0xBDFD, 0x70EC,
- 0xBDFE, 0x6D78, 0xBE40, 0x7D99, 0xBE41, 0x7D9A, 0xBE42, 0x7D9B,
- 0xBE43, 0x7D9C, 0xBE44, 0x7D9D, 0xBE45, 0x7D9E, 0xBE46, 0x7D9F,
- 0xBE47, 0x7DA0, 0xBE48, 0x7DA1, 0xBE49, 0x7DA2, 0xBE4A, 0x7DA3,
- 0xBE4B, 0x7DA4, 0xBE4C, 0x7DA5, 0xBE4D, 0x7DA7, 0xBE4E, 0x7DA8,
- 0xBE4F, 0x7DA9, 0xBE50, 0x7DAA, 0xBE51, 0x7DAB, 0xBE52, 0x7DAC,
- 0xBE53, 0x7DAD, 0xBE54, 0x7DAF, 0xBE55, 0x7DB0, 0xBE56, 0x7DB1,
- 0xBE57, 0x7DB2, 0xBE58, 0x7DB3, 0xBE59, 0x7DB4, 0xBE5A, 0x7DB5,
- 0xBE5B, 0x7DB6, 0xBE5C, 0x7DB7, 0xBE5D, 0x7DB8, 0xBE5E, 0x7DB9,
- 0xBE5F, 0x7DBA, 0xBE60, 0x7DBB, 0xBE61, 0x7DBC, 0xBE62, 0x7DBD,
- 0xBE63, 0x7DBE, 0xBE64, 0x7DBF, 0xBE65, 0x7DC0, 0xBE66, 0x7DC1,
- 0xBE67, 0x7DC2, 0xBE68, 0x7DC3, 0xBE69, 0x7DC4, 0xBE6A, 0x7DC5,
- 0xBE6B, 0x7DC6, 0xBE6C, 0x7DC7, 0xBE6D, 0x7DC8, 0xBE6E, 0x7DC9,
- 0xBE6F, 0x7DCA, 0xBE70, 0x7DCB, 0xBE71, 0x7DCC, 0xBE72, 0x7DCD,
- 0xBE73, 0x7DCE, 0xBE74, 0x7DCF, 0xBE75, 0x7DD0, 0xBE76, 0x7DD1,
- 0xBE77, 0x7DD2, 0xBE78, 0x7DD3, 0xBE79, 0x7DD4, 0xBE7A, 0x7DD5,
- 0xBE7B, 0x7DD6, 0xBE7C, 0x7DD7, 0xBE7D, 0x7DD8, 0xBE7E, 0x7DD9,
- 0xBE80, 0x7DDA, 0xBE81, 0x7DDB, 0xBE82, 0x7DDC, 0xBE83, 0x7DDD,
- 0xBE84, 0x7DDE, 0xBE85, 0x7DDF, 0xBE86, 0x7DE0, 0xBE87, 0x7DE1,
- 0xBE88, 0x7DE2, 0xBE89, 0x7DE3, 0xBE8A, 0x7DE4, 0xBE8B, 0x7DE5,
- 0xBE8C, 0x7DE6, 0xBE8D, 0x7DE7, 0xBE8E, 0x7DE8, 0xBE8F, 0x7DE9,
- 0xBE90, 0x7DEA, 0xBE91, 0x7DEB, 0xBE92, 0x7DEC, 0xBE93, 0x7DED,
- 0xBE94, 0x7DEE, 0xBE95, 0x7DEF, 0xBE96, 0x7DF0, 0xBE97, 0x7DF1,
- 0xBE98, 0x7DF2, 0xBE99, 0x7DF3, 0xBE9A, 0x7DF4, 0xBE9B, 0x7DF5,
- 0xBE9C, 0x7DF6, 0xBE9D, 0x7DF7, 0xBE9E, 0x7DF8, 0xBE9F, 0x7DF9,
- 0xBEA0, 0x7DFA, 0xBEA1, 0x5C3D, 0xBEA2, 0x52B2, 0xBEA3, 0x8346,
- 0xBEA4, 0x5162, 0xBEA5, 0x830E, 0xBEA6, 0x775B, 0xBEA7, 0x6676,
- 0xBEA8, 0x9CB8, 0xBEA9, 0x4EAC, 0xBEAA, 0x60CA, 0xBEAB, 0x7CBE,
- 0xBEAC, 0x7CB3, 0xBEAD, 0x7ECF, 0xBEAE, 0x4E95, 0xBEAF, 0x8B66,
- 0xBEB0, 0x666F, 0xBEB1, 0x9888, 0xBEB2, 0x9759, 0xBEB3, 0x5883,
- 0xBEB4, 0x656C, 0xBEB5, 0x955C, 0xBEB6, 0x5F84, 0xBEB7, 0x75C9,
- 0xBEB8, 0x9756, 0xBEB9, 0x7ADF, 0xBEBA, 0x7ADE, 0xBEBB, 0x51C0,
- 0xBEBC, 0x70AF, 0xBEBD, 0x7A98, 0xBEBE, 0x63EA, 0xBEBF, 0x7A76,
- 0xBEC0, 0x7EA0, 0xBEC1, 0x7396, 0xBEC2, 0x97ED, 0xBEC3, 0x4E45,
- 0xBEC4, 0x7078, 0xBEC5, 0x4E5D, 0xBEC6, 0x9152, 0xBEC7, 0x53A9,
- 0xBEC8, 0x6551, 0xBEC9, 0x65E7, 0xBECA, 0x81FC, 0xBECB, 0x8205,
- 0xBECC, 0x548E, 0xBECD, 0x5C31, 0xBECE, 0x759A, 0xBECF, 0x97A0,
- 0xBED0, 0x62D8, 0xBED1, 0x72D9, 0xBED2, 0x75BD, 0xBED3, 0x5C45,
- 0xBED4, 0x9A79, 0xBED5, 0x83CA, 0xBED6, 0x5C40, 0xBED7, 0x5480,
- 0xBED8, 0x77E9, 0xBED9, 0x4E3E, 0xBEDA, 0x6CAE, 0xBEDB, 0x805A,
- 0xBEDC, 0x62D2, 0xBEDD, 0x636E, 0xBEDE, 0x5DE8, 0xBEDF, 0x5177,
- 0xBEE0, 0x8DDD, 0xBEE1, 0x8E1E, 0xBEE2, 0x952F, 0xBEE3, 0x4FF1,
- 0xBEE4, 0x53E5, 0xBEE5, 0x60E7, 0xBEE6, 0x70AC, 0xBEE7, 0x5267,
- 0xBEE8, 0x6350, 0xBEE9, 0x9E43, 0xBEEA, 0x5A1F, 0xBEEB, 0x5026,
- 0xBEEC, 0x7737, 0xBEED, 0x5377, 0xBEEE, 0x7EE2, 0xBEEF, 0x6485,
- 0xBEF0, 0x652B, 0xBEF1, 0x6289, 0xBEF2, 0x6398, 0xBEF3, 0x5014,
- 0xBEF4, 0x7235, 0xBEF5, 0x89C9, 0xBEF6, 0x51B3, 0xBEF7, 0x8BC0,
- 0xBEF8, 0x7EDD, 0xBEF9, 0x5747, 0xBEFA, 0x83CC, 0xBEFB, 0x94A7,
- 0xBEFC, 0x519B, 0xBEFD, 0x541B, 0xBEFE, 0x5CFB, 0xBF40, 0x7DFB,
- 0xBF41, 0x7DFC, 0xBF42, 0x7DFD, 0xBF43, 0x7DFE, 0xBF44, 0x7DFF,
- 0xBF45, 0x7E00, 0xBF46, 0x7E01, 0xBF47, 0x7E02, 0xBF48, 0x7E03,
- 0xBF49, 0x7E04, 0xBF4A, 0x7E05, 0xBF4B, 0x7E06, 0xBF4C, 0x7E07,
- 0xBF4D, 0x7E08, 0xBF4E, 0x7E09, 0xBF4F, 0x7E0A, 0xBF50, 0x7E0B,
- 0xBF51, 0x7E0C, 0xBF52, 0x7E0D, 0xBF53, 0x7E0E, 0xBF54, 0x7E0F,
- 0xBF55, 0x7E10, 0xBF56, 0x7E11, 0xBF57, 0x7E12, 0xBF58, 0x7E13,
- 0xBF59, 0x7E14, 0xBF5A, 0x7E15, 0xBF5B, 0x7E16, 0xBF5C, 0x7E17,
- 0xBF5D, 0x7E18, 0xBF5E, 0x7E19, 0xBF5F, 0x7E1A, 0xBF60, 0x7E1B,
- 0xBF61, 0x7E1C, 0xBF62, 0x7E1D, 0xBF63, 0x7E1E, 0xBF64, 0x7E1F,
- 0xBF65, 0x7E20, 0xBF66, 0x7E21, 0xBF67, 0x7E22, 0xBF68, 0x7E23,
- 0xBF69, 0x7E24, 0xBF6A, 0x7E25, 0xBF6B, 0x7E26, 0xBF6C, 0x7E27,
- 0xBF6D, 0x7E28, 0xBF6E, 0x7E29, 0xBF6F, 0x7E2A, 0xBF70, 0x7E2B,
- 0xBF71, 0x7E2C, 0xBF72, 0x7E2D, 0xBF73, 0x7E2E, 0xBF74, 0x7E2F,
- 0xBF75, 0x7E30, 0xBF76, 0x7E31, 0xBF77, 0x7E32, 0xBF78, 0x7E33,
- 0xBF79, 0x7E34, 0xBF7A, 0x7E35, 0xBF7B, 0x7E36, 0xBF7C, 0x7E37,
- 0xBF7D, 0x7E38, 0xBF7E, 0x7E39, 0xBF80, 0x7E3A, 0xBF81, 0x7E3C,
- 0xBF82, 0x7E3D, 0xBF83, 0x7E3E, 0xBF84, 0x7E3F, 0xBF85, 0x7E40,
- 0xBF86, 0x7E42, 0xBF87, 0x7E43, 0xBF88, 0x7E44, 0xBF89, 0x7E45,
- 0xBF8A, 0x7E46, 0xBF8B, 0x7E48, 0xBF8C, 0x7E49, 0xBF8D, 0x7E4A,
- 0xBF8E, 0x7E4B, 0xBF8F, 0x7E4C, 0xBF90, 0x7E4D, 0xBF91, 0x7E4E,
- 0xBF92, 0x7E4F, 0xBF93, 0x7E50, 0xBF94, 0x7E51, 0xBF95, 0x7E52,
- 0xBF96, 0x7E53, 0xBF97, 0x7E54, 0xBF98, 0x7E55, 0xBF99, 0x7E56,
- 0xBF9A, 0x7E57, 0xBF9B, 0x7E58, 0xBF9C, 0x7E59, 0xBF9D, 0x7E5A,
- 0xBF9E, 0x7E5B, 0xBF9F, 0x7E5C, 0xBFA0, 0x7E5D, 0xBFA1, 0x4FCA,
- 0xBFA2, 0x7AE3, 0xBFA3, 0x6D5A, 0xBFA4, 0x90E1, 0xBFA5, 0x9A8F,
- 0xBFA6, 0x5580, 0xBFA7, 0x5496, 0xBFA8, 0x5361, 0xBFA9, 0x54AF,
- 0xBFAA, 0x5F00, 0xBFAB, 0x63E9, 0xBFAC, 0x6977, 0xBFAD, 0x51EF,
- 0xBFAE, 0x6168, 0xBFAF, 0x520A, 0xBFB0, 0x582A, 0xBFB1, 0x52D8,
- 0xBFB2, 0x574E, 0xBFB3, 0x780D, 0xBFB4, 0x770B, 0xBFB5, 0x5EB7,
- 0xBFB6, 0x6177, 0xBFB7, 0x7CE0, 0xBFB8, 0x625B, 0xBFB9, 0x6297,
- 0xBFBA, 0x4EA2, 0xBFBB, 0x7095, 0xBFBC, 0x8003, 0xBFBD, 0x62F7,
- 0xBFBE, 0x70E4, 0xBFBF, 0x9760, 0xBFC0, 0x5777, 0xBFC1, 0x82DB,
- 0xBFC2, 0x67EF, 0xBFC3, 0x68F5, 0xBFC4, 0x78D5, 0xBFC5, 0x9897,
- 0xBFC6, 0x79D1, 0xBFC7, 0x58F3, 0xBFC8, 0x54B3, 0xBFC9, 0x53EF,
- 0xBFCA, 0x6E34, 0xBFCB, 0x514B, 0xBFCC, 0x523B, 0xBFCD, 0x5BA2,
- 0xBFCE, 0x8BFE, 0xBFCF, 0x80AF, 0xBFD0, 0x5543, 0xBFD1, 0x57A6,
- 0xBFD2, 0x6073, 0xBFD3, 0x5751, 0xBFD4, 0x542D, 0xBFD5, 0x7A7A,
- 0xBFD6, 0x6050, 0xBFD7, 0x5B54, 0xBFD8, 0x63A7, 0xBFD9, 0x62A0,
- 0xBFDA, 0x53E3, 0xBFDB, 0x6263, 0xBFDC, 0x5BC7, 0xBFDD, 0x67AF,
- 0xBFDE, 0x54ED, 0xBFDF, 0x7A9F, 0xBFE0, 0x82E6, 0xBFE1, 0x9177,
- 0xBFE2, 0x5E93, 0xBFE3, 0x88E4, 0xBFE4, 0x5938, 0xBFE5, 0x57AE,
- 0xBFE6, 0x630E, 0xBFE7, 0x8DE8, 0xBFE8, 0x80EF, 0xBFE9, 0x5757,
- 0xBFEA, 0x7B77, 0xBFEB, 0x4FA9, 0xBFEC, 0x5FEB, 0xBFED, 0x5BBD,
- 0xBFEE, 0x6B3E, 0xBFEF, 0x5321, 0xBFF0, 0x7B50, 0xBFF1, 0x72C2,
- 0xBFF2, 0x6846, 0xBFF3, 0x77FF, 0xBFF4, 0x7736, 0xBFF5, 0x65F7,
- 0xBFF6, 0x51B5, 0xBFF7, 0x4E8F, 0xBFF8, 0x76D4, 0xBFF9, 0x5CBF,
- 0xBFFA, 0x7AA5, 0xBFFB, 0x8475, 0xBFFC, 0x594E, 0xBFFD, 0x9B41,
- 0xBFFE, 0x5080, 0xC040, 0x7E5E, 0xC041, 0x7E5F, 0xC042, 0x7E60,
- 0xC043, 0x7E61, 0xC044, 0x7E62, 0xC045, 0x7E63, 0xC046, 0x7E64,
- 0xC047, 0x7E65, 0xC048, 0x7E66, 0xC049, 0x7E67, 0xC04A, 0x7E68,
- 0xC04B, 0x7E69, 0xC04C, 0x7E6A, 0xC04D, 0x7E6B, 0xC04E, 0x7E6C,
- 0xC04F, 0x7E6D, 0xC050, 0x7E6E, 0xC051, 0x7E6F, 0xC052, 0x7E70,
- 0xC053, 0x7E71, 0xC054, 0x7E72, 0xC055, 0x7E73, 0xC056, 0x7E74,
- 0xC057, 0x7E75, 0xC058, 0x7E76, 0xC059, 0x7E77, 0xC05A, 0x7E78,
- 0xC05B, 0x7E79, 0xC05C, 0x7E7A, 0xC05D, 0x7E7B, 0xC05E, 0x7E7C,
- 0xC05F, 0x7E7D, 0xC060, 0x7E7E, 0xC061, 0x7E7F, 0xC062, 0x7E80,
- 0xC063, 0x7E81, 0xC064, 0x7E83, 0xC065, 0x7E84, 0xC066, 0x7E85,
- 0xC067, 0x7E86, 0xC068, 0x7E87, 0xC069, 0x7E88, 0xC06A, 0x7E89,
- 0xC06B, 0x7E8A, 0xC06C, 0x7E8B, 0xC06D, 0x7E8C, 0xC06E, 0x7E8D,
- 0xC06F, 0x7E8E, 0xC070, 0x7E8F, 0xC071, 0x7E90, 0xC072, 0x7E91,
- 0xC073, 0x7E92, 0xC074, 0x7E93, 0xC075, 0x7E94, 0xC076, 0x7E95,
- 0xC077, 0x7E96, 0xC078, 0x7E97, 0xC079, 0x7E98, 0xC07A, 0x7E99,
- 0xC07B, 0x7E9A, 0xC07C, 0x7E9C, 0xC07D, 0x7E9D, 0xC07E, 0x7E9E,
- 0xC080, 0x7EAE, 0xC081, 0x7EB4, 0xC082, 0x7EBB, 0xC083, 0x7EBC,
- 0xC084, 0x7ED6, 0xC085, 0x7EE4, 0xC086, 0x7EEC, 0xC087, 0x7EF9,
- 0xC088, 0x7F0A, 0xC089, 0x7F10, 0xC08A, 0x7F1E, 0xC08B, 0x7F37,
- 0xC08C, 0x7F39, 0xC08D, 0x7F3B, 0xC08E, 0x7F3C, 0xC08F, 0x7F3D,
- 0xC090, 0x7F3E, 0xC091, 0x7F3F, 0xC092, 0x7F40, 0xC093, 0x7F41,
- 0xC094, 0x7F43, 0xC095, 0x7F46, 0xC096, 0x7F47, 0xC097, 0x7F48,
- 0xC098, 0x7F49, 0xC099, 0x7F4A, 0xC09A, 0x7F4B, 0xC09B, 0x7F4C,
- 0xC09C, 0x7F4D, 0xC09D, 0x7F4E, 0xC09E, 0x7F4F, 0xC09F, 0x7F52,
- 0xC0A0, 0x7F53, 0xC0A1, 0x9988, 0xC0A2, 0x6127, 0xC0A3, 0x6E83,
- 0xC0A4, 0x5764, 0xC0A5, 0x6606, 0xC0A6, 0x6346, 0xC0A7, 0x56F0,
- 0xC0A8, 0x62EC, 0xC0A9, 0x6269, 0xC0AA, 0x5ED3, 0xC0AB, 0x9614,
- 0xC0AC, 0x5783, 0xC0AD, 0x62C9, 0xC0AE, 0x5587, 0xC0AF, 0x8721,
- 0xC0B0, 0x814A, 0xC0B1, 0x8FA3, 0xC0B2, 0x5566, 0xC0B3, 0x83B1,
- 0xC0B4, 0x6765, 0xC0B5, 0x8D56, 0xC0B6, 0x84DD, 0xC0B7, 0x5A6A,
- 0xC0B8, 0x680F, 0xC0B9, 0x62E6, 0xC0BA, 0x7BEE, 0xC0BB, 0x9611,
- 0xC0BC, 0x5170, 0xC0BD, 0x6F9C, 0xC0BE, 0x8C30, 0xC0BF, 0x63FD,
- 0xC0C0, 0x89C8, 0xC0C1, 0x61D2, 0xC0C2, 0x7F06, 0xC0C3, 0x70C2,
- 0xC0C4, 0x6EE5, 0xC0C5, 0x7405, 0xC0C6, 0x6994, 0xC0C7, 0x72FC,
- 0xC0C8, 0x5ECA, 0xC0C9, 0x90CE, 0xC0CA, 0x6717, 0xC0CB, 0x6D6A,
- 0xC0CC, 0x635E, 0xC0CD, 0x52B3, 0xC0CE, 0x7262, 0xC0CF, 0x8001,
- 0xC0D0, 0x4F6C, 0xC0D1, 0x59E5, 0xC0D2, 0x916A, 0xC0D3, 0x70D9,
- 0xC0D4, 0x6D9D, 0xC0D5, 0x52D2, 0xC0D6, 0x4E50, 0xC0D7, 0x96F7,
- 0xC0D8, 0x956D, 0xC0D9, 0x857E, 0xC0DA, 0x78CA, 0xC0DB, 0x7D2F,
- 0xC0DC, 0x5121, 0xC0DD, 0x5792, 0xC0DE, 0x64C2, 0xC0DF, 0x808B,
- 0xC0E0, 0x7C7B, 0xC0E1, 0x6CEA, 0xC0E2, 0x68F1, 0xC0E3, 0x695E,
- 0xC0E4, 0x51B7, 0xC0E5, 0x5398, 0xC0E6, 0x68A8, 0xC0E7, 0x7281,
- 0xC0E8, 0x9ECE, 0xC0E9, 0x7BF1, 0xC0EA, 0x72F8, 0xC0EB, 0x79BB,
- 0xC0EC, 0x6F13, 0xC0ED, 0x7406, 0xC0EE, 0x674E, 0xC0EF, 0x91CC,
- 0xC0F0, 0x9CA4, 0xC0F1, 0x793C, 0xC0F2, 0x8389, 0xC0F3, 0x8354,
- 0xC0F4, 0x540F, 0xC0F5, 0x6817, 0xC0F6, 0x4E3D, 0xC0F7, 0x5389,
- 0xC0F8, 0x52B1, 0xC0F9, 0x783E, 0xC0FA, 0x5386, 0xC0FB, 0x5229,
- 0xC0FC, 0x5088, 0xC0FD, 0x4F8B, 0xC0FE, 0x4FD0, 0xC140, 0x7F56,
- 0xC141, 0x7F59, 0xC142, 0x7F5B, 0xC143, 0x7F5C, 0xC144, 0x7F5D,
- 0xC145, 0x7F5E, 0xC146, 0x7F60, 0xC147, 0x7F63, 0xC148, 0x7F64,
- 0xC149, 0x7F65, 0xC14A, 0x7F66, 0xC14B, 0x7F67, 0xC14C, 0x7F6B,
- 0xC14D, 0x7F6C, 0xC14E, 0x7F6D, 0xC14F, 0x7F6F, 0xC150, 0x7F70,
- 0xC151, 0x7F73, 0xC152, 0x7F75, 0xC153, 0x7F76, 0xC154, 0x7F77,
- 0xC155, 0x7F78, 0xC156, 0x7F7A, 0xC157, 0x7F7B, 0xC158, 0x7F7C,
- 0xC159, 0x7F7D, 0xC15A, 0x7F7F, 0xC15B, 0x7F80, 0xC15C, 0x7F82,
- 0xC15D, 0x7F83, 0xC15E, 0x7F84, 0xC15F, 0x7F85, 0xC160, 0x7F86,
- 0xC161, 0x7F87, 0xC162, 0x7F88, 0xC163, 0x7F89, 0xC164, 0x7F8B,
- 0xC165, 0x7F8D, 0xC166, 0x7F8F, 0xC167, 0x7F90, 0xC168, 0x7F91,
- 0xC169, 0x7F92, 0xC16A, 0x7F93, 0xC16B, 0x7F95, 0xC16C, 0x7F96,
- 0xC16D, 0x7F97, 0xC16E, 0x7F98, 0xC16F, 0x7F99, 0xC170, 0x7F9B,
- 0xC171, 0x7F9C, 0xC172, 0x7FA0, 0xC173, 0x7FA2, 0xC174, 0x7FA3,
- 0xC175, 0x7FA5, 0xC176, 0x7FA6, 0xC177, 0x7FA8, 0xC178, 0x7FA9,
- 0xC179, 0x7FAA, 0xC17A, 0x7FAB, 0xC17B, 0x7FAC, 0xC17C, 0x7FAD,
- 0xC17D, 0x7FAE, 0xC17E, 0x7FB1, 0xC180, 0x7FB3, 0xC181, 0x7FB4,
- 0xC182, 0x7FB5, 0xC183, 0x7FB6, 0xC184, 0x7FB7, 0xC185, 0x7FBA,
- 0xC186, 0x7FBB, 0xC187, 0x7FBE, 0xC188, 0x7FC0, 0xC189, 0x7FC2,
- 0xC18A, 0x7FC3, 0xC18B, 0x7FC4, 0xC18C, 0x7FC6, 0xC18D, 0x7FC7,
- 0xC18E, 0x7FC8, 0xC18F, 0x7FC9, 0xC190, 0x7FCB, 0xC191, 0x7FCD,
- 0xC192, 0x7FCF, 0xC193, 0x7FD0, 0xC194, 0x7FD1, 0xC195, 0x7FD2,
- 0xC196, 0x7FD3, 0xC197, 0x7FD6, 0xC198, 0x7FD7, 0xC199, 0x7FD9,
- 0xC19A, 0x7FDA, 0xC19B, 0x7FDB, 0xC19C, 0x7FDC, 0xC19D, 0x7FDD,
- 0xC19E, 0x7FDE, 0xC19F, 0x7FE2, 0xC1A0, 0x7FE3, 0xC1A1, 0x75E2,
- 0xC1A2, 0x7ACB, 0xC1A3, 0x7C92, 0xC1A4, 0x6CA5, 0xC1A5, 0x96B6,
- 0xC1A6, 0x529B, 0xC1A7, 0x7483, 0xC1A8, 0x54E9, 0xC1A9, 0x4FE9,
- 0xC1AA, 0x8054, 0xC1AB, 0x83B2, 0xC1AC, 0x8FDE, 0xC1AD, 0x9570,
- 0xC1AE, 0x5EC9, 0xC1AF, 0x601C, 0xC1B0, 0x6D9F, 0xC1B1, 0x5E18,
- 0xC1B2, 0x655B, 0xC1B3, 0x8138, 0xC1B4, 0x94FE, 0xC1B5, 0x604B,
- 0xC1B6, 0x70BC, 0xC1B7, 0x7EC3, 0xC1B8, 0x7CAE, 0xC1B9, 0x51C9,
- 0xC1BA, 0x6881, 0xC1BB, 0x7CB1, 0xC1BC, 0x826F, 0xC1BD, 0x4E24,
- 0xC1BE, 0x8F86, 0xC1BF, 0x91CF, 0xC1C0, 0x667E, 0xC1C1, 0x4EAE,
- 0xC1C2, 0x8C05, 0xC1C3, 0x64A9, 0xC1C4, 0x804A, 0xC1C5, 0x50DA,
- 0xC1C6, 0x7597, 0xC1C7, 0x71CE, 0xC1C8, 0x5BE5, 0xC1C9, 0x8FBD,
- 0xC1CA, 0x6F66, 0xC1CB, 0x4E86, 0xC1CC, 0x6482, 0xC1CD, 0x9563,
- 0xC1CE, 0x5ED6, 0xC1CF, 0x6599, 0xC1D0, 0x5217, 0xC1D1, 0x88C2,
- 0xC1D2, 0x70C8, 0xC1D3, 0x52A3, 0xC1D4, 0x730E, 0xC1D5, 0x7433,
- 0xC1D6, 0x6797, 0xC1D7, 0x78F7, 0xC1D8, 0x9716, 0xC1D9, 0x4E34,
- 0xC1DA, 0x90BB, 0xC1DB, 0x9CDE, 0xC1DC, 0x6DCB, 0xC1DD, 0x51DB,
- 0xC1DE, 0x8D41, 0xC1DF, 0x541D, 0xC1E0, 0x62CE, 0xC1E1, 0x73B2,
- 0xC1E2, 0x83F1, 0xC1E3, 0x96F6, 0xC1E4, 0x9F84, 0xC1E5, 0x94C3,
- 0xC1E6, 0x4F36, 0xC1E7, 0x7F9A, 0xC1E8, 0x51CC, 0xC1E9, 0x7075,
- 0xC1EA, 0x9675, 0xC1EB, 0x5CAD, 0xC1EC, 0x9886, 0xC1ED, 0x53E6,
- 0xC1EE, 0x4EE4, 0xC1EF, 0x6E9C, 0xC1F0, 0x7409, 0xC1F1, 0x69B4,
- 0xC1F2, 0x786B, 0xC1F3, 0x998F, 0xC1F4, 0x7559, 0xC1F5, 0x5218,
- 0xC1F6, 0x7624, 0xC1F7, 0x6D41, 0xC1F8, 0x67F3, 0xC1F9, 0x516D,
- 0xC1FA, 0x9F99, 0xC1FB, 0x804B, 0xC1FC, 0x5499, 0xC1FD, 0x7B3C,
- 0xC1FE, 0x7ABF, 0xC240, 0x7FE4, 0xC241, 0x7FE7, 0xC242, 0x7FE8,
- 0xC243, 0x7FEA, 0xC244, 0x7FEB, 0xC245, 0x7FEC, 0xC246, 0x7FED,
- 0xC247, 0x7FEF, 0xC248, 0x7FF2, 0xC249, 0x7FF4, 0xC24A, 0x7FF5,
- 0xC24B, 0x7FF6, 0xC24C, 0x7FF7, 0xC24D, 0x7FF8, 0xC24E, 0x7FF9,
- 0xC24F, 0x7FFA, 0xC250, 0x7FFD, 0xC251, 0x7FFE, 0xC252, 0x7FFF,
- 0xC253, 0x8002, 0xC254, 0x8007, 0xC255, 0x8008, 0xC256, 0x8009,
- 0xC257, 0x800A, 0xC258, 0x800E, 0xC259, 0x800F, 0xC25A, 0x8011,
- 0xC25B, 0x8013, 0xC25C, 0x801A, 0xC25D, 0x801B, 0xC25E, 0x801D,
- 0xC25F, 0x801E, 0xC260, 0x801F, 0xC261, 0x8021, 0xC262, 0x8023,
- 0xC263, 0x8024, 0xC264, 0x802B, 0xC265, 0x802C, 0xC266, 0x802D,
- 0xC267, 0x802E, 0xC268, 0x802F, 0xC269, 0x8030, 0xC26A, 0x8032,
- 0xC26B, 0x8034, 0xC26C, 0x8039, 0xC26D, 0x803A, 0xC26E, 0x803C,
- 0xC26F, 0x803E, 0xC270, 0x8040, 0xC271, 0x8041, 0xC272, 0x8044,
- 0xC273, 0x8045, 0xC274, 0x8047, 0xC275, 0x8048, 0xC276, 0x8049,
- 0xC277, 0x804E, 0xC278, 0x804F, 0xC279, 0x8050, 0xC27A, 0x8051,
- 0xC27B, 0x8053, 0xC27C, 0x8055, 0xC27D, 0x8056, 0xC27E, 0x8057,
- 0xC280, 0x8059, 0xC281, 0x805B, 0xC282, 0x805C, 0xC283, 0x805D,
- 0xC284, 0x805E, 0xC285, 0x805F, 0xC286, 0x8060, 0xC287, 0x8061,
- 0xC288, 0x8062, 0xC289, 0x8063, 0xC28A, 0x8064, 0xC28B, 0x8065,
- 0xC28C, 0x8066, 0xC28D, 0x8067, 0xC28E, 0x8068, 0xC28F, 0x806B,
- 0xC290, 0x806C, 0xC291, 0x806D, 0xC292, 0x806E, 0xC293, 0x806F,
- 0xC294, 0x8070, 0xC295, 0x8072, 0xC296, 0x8073, 0xC297, 0x8074,
- 0xC298, 0x8075, 0xC299, 0x8076, 0xC29A, 0x8077, 0xC29B, 0x8078,
- 0xC29C, 0x8079, 0xC29D, 0x807A, 0xC29E, 0x807B, 0xC29F, 0x807C,
- 0xC2A0, 0x807D, 0xC2A1, 0x9686, 0xC2A2, 0x5784, 0xC2A3, 0x62E2,
- 0xC2A4, 0x9647, 0xC2A5, 0x697C, 0xC2A6, 0x5A04, 0xC2A7, 0x6402,
- 0xC2A8, 0x7BD3, 0xC2A9, 0x6F0F, 0xC2AA, 0x964B, 0xC2AB, 0x82A6,
- 0xC2AC, 0x5362, 0xC2AD, 0x9885, 0xC2AE, 0x5E90, 0xC2AF, 0x7089,
- 0xC2B0, 0x63B3, 0xC2B1, 0x5364, 0xC2B2, 0x864F, 0xC2B3, 0x9C81,
- 0xC2B4, 0x9E93, 0xC2B5, 0x788C, 0xC2B6, 0x9732, 0xC2B7, 0x8DEF,
- 0xC2B8, 0x8D42, 0xC2B9, 0x9E7F, 0xC2BA, 0x6F5E, 0xC2BB, 0x7984,
- 0xC2BC, 0x5F55, 0xC2BD, 0x9646, 0xC2BE, 0x622E, 0xC2BF, 0x9A74,
- 0xC2C0, 0x5415, 0xC2C1, 0x94DD, 0xC2C2, 0x4FA3, 0xC2C3, 0x65C5,
- 0xC2C4, 0x5C65, 0xC2C5, 0x5C61, 0xC2C6, 0x7F15, 0xC2C7, 0x8651,
- 0xC2C8, 0x6C2F, 0xC2C9, 0x5F8B, 0xC2CA, 0x7387, 0xC2CB, 0x6EE4,
- 0xC2CC, 0x7EFF, 0xC2CD, 0x5CE6, 0xC2CE, 0x631B, 0xC2CF, 0x5B6A,
- 0xC2D0, 0x6EE6, 0xC2D1, 0x5375, 0xC2D2, 0x4E71, 0xC2D3, 0x63A0,
- 0xC2D4, 0x7565, 0xC2D5, 0x62A1, 0xC2D6, 0x8F6E, 0xC2D7, 0x4F26,
- 0xC2D8, 0x4ED1, 0xC2D9, 0x6CA6, 0xC2DA, 0x7EB6, 0xC2DB, 0x8BBA,
- 0xC2DC, 0x841D, 0xC2DD, 0x87BA, 0xC2DE, 0x7F57, 0xC2DF, 0x903B,
- 0xC2E0, 0x9523, 0xC2E1, 0x7BA9, 0xC2E2, 0x9AA1, 0xC2E3, 0x88F8,
- 0xC2E4, 0x843D, 0xC2E5, 0x6D1B, 0xC2E6, 0x9A86, 0xC2E7, 0x7EDC,
- 0xC2E8, 0x5988, 0xC2E9, 0x9EBB, 0xC2EA, 0x739B, 0xC2EB, 0x7801,
- 0xC2EC, 0x8682, 0xC2ED, 0x9A6C, 0xC2EE, 0x9A82, 0xC2EF, 0x561B,
- 0xC2F0, 0x5417, 0xC2F1, 0x57CB, 0xC2F2, 0x4E70, 0xC2F3, 0x9EA6,
- 0xC2F4, 0x5356, 0xC2F5, 0x8FC8, 0xC2F6, 0x8109, 0xC2F7, 0x7792,
- 0xC2F8, 0x9992, 0xC2F9, 0x86EE, 0xC2FA, 0x6EE1, 0xC2FB, 0x8513,
- 0xC2FC, 0x66FC, 0xC2FD, 0x6162, 0xC2FE, 0x6F2B, 0xC340, 0x807E,
- 0xC341, 0x8081, 0xC342, 0x8082, 0xC343, 0x8085, 0xC344, 0x8088,
- 0xC345, 0x808A, 0xC346, 0x808D, 0xC347, 0x808E, 0xC348, 0x808F,
- 0xC349, 0x8090, 0xC34A, 0x8091, 0xC34B, 0x8092, 0xC34C, 0x8094,
- 0xC34D, 0x8095, 0xC34E, 0x8097, 0xC34F, 0x8099, 0xC350, 0x809E,
- 0xC351, 0x80A3, 0xC352, 0x80A6, 0xC353, 0x80A7, 0xC354, 0x80A8,
- 0xC355, 0x80AC, 0xC356, 0x80B0, 0xC357, 0x80B3, 0xC358, 0x80B5,
- 0xC359, 0x80B6, 0xC35A, 0x80B8, 0xC35B, 0x80B9, 0xC35C, 0x80BB,
- 0xC35D, 0x80C5, 0xC35E, 0x80C7, 0xC35F, 0x80C8, 0xC360, 0x80C9,
- 0xC361, 0x80CA, 0xC362, 0x80CB, 0xC363, 0x80CF, 0xC364, 0x80D0,
- 0xC365, 0x80D1, 0xC366, 0x80D2, 0xC367, 0x80D3, 0xC368, 0x80D4,
- 0xC369, 0x80D5, 0xC36A, 0x80D8, 0xC36B, 0x80DF, 0xC36C, 0x80E0,
- 0xC36D, 0x80E2, 0xC36E, 0x80E3, 0xC36F, 0x80E6, 0xC370, 0x80EE,
- 0xC371, 0x80F5, 0xC372, 0x80F7, 0xC373, 0x80F9, 0xC374, 0x80FB,
- 0xC375, 0x80FE, 0xC376, 0x80FF, 0xC377, 0x8100, 0xC378, 0x8101,
- 0xC379, 0x8103, 0xC37A, 0x8104, 0xC37B, 0x8105, 0xC37C, 0x8107,
- 0xC37D, 0x8108, 0xC37E, 0x810B, 0xC380, 0x810C, 0xC381, 0x8115,
- 0xC382, 0x8117, 0xC383, 0x8119, 0xC384, 0x811B, 0xC385, 0x811C,
- 0xC386, 0x811D, 0xC387, 0x811F, 0xC388, 0x8120, 0xC389, 0x8121,
- 0xC38A, 0x8122, 0xC38B, 0x8123, 0xC38C, 0x8124, 0xC38D, 0x8125,
- 0xC38E, 0x8126, 0xC38F, 0x8127, 0xC390, 0x8128, 0xC391, 0x8129,
- 0xC392, 0x812A, 0xC393, 0x812B, 0xC394, 0x812D, 0xC395, 0x812E,
- 0xC396, 0x8130, 0xC397, 0x8133, 0xC398, 0x8134, 0xC399, 0x8135,
- 0xC39A, 0x8137, 0xC39B, 0x8139, 0xC39C, 0x813A, 0xC39D, 0x813B,
- 0xC39E, 0x813C, 0xC39F, 0x813D, 0xC3A0, 0x813F, 0xC3A1, 0x8C29,
- 0xC3A2, 0x8292, 0xC3A3, 0x832B, 0xC3A4, 0x76F2, 0xC3A5, 0x6C13,
- 0xC3A6, 0x5FD9, 0xC3A7, 0x83BD, 0xC3A8, 0x732B, 0xC3A9, 0x8305,
- 0xC3AA, 0x951A, 0xC3AB, 0x6BDB, 0xC3AC, 0x77DB, 0xC3AD, 0x94C6,
- 0xC3AE, 0x536F, 0xC3AF, 0x8302, 0xC3B0, 0x5192, 0xC3B1, 0x5E3D,
- 0xC3B2, 0x8C8C, 0xC3B3, 0x8D38, 0xC3B4, 0x4E48, 0xC3B5, 0x73AB,
- 0xC3B6, 0x679A, 0xC3B7, 0x6885, 0xC3B8, 0x9176, 0xC3B9, 0x9709,
- 0xC3BA, 0x7164, 0xC3BB, 0x6CA1, 0xC3BC, 0x7709, 0xC3BD, 0x5A92,
- 0xC3BE, 0x9541, 0xC3BF, 0x6BCF, 0xC3C0, 0x7F8E, 0xC3C1, 0x6627,
- 0xC3C2, 0x5BD0, 0xC3C3, 0x59B9, 0xC3C4, 0x5A9A, 0xC3C5, 0x95E8,
- 0xC3C6, 0x95F7, 0xC3C7, 0x4EEC, 0xC3C8, 0x840C, 0xC3C9, 0x8499,
- 0xC3CA, 0x6AAC, 0xC3CB, 0x76DF, 0xC3CC, 0x9530, 0xC3CD, 0x731B,
- 0xC3CE, 0x68A6, 0xC3CF, 0x5B5F, 0xC3D0, 0x772F, 0xC3D1, 0x919A,
- 0xC3D2, 0x9761, 0xC3D3, 0x7CDC, 0xC3D4, 0x8FF7, 0xC3D5, 0x8C1C,
- 0xC3D6, 0x5F25, 0xC3D7, 0x7C73, 0xC3D8, 0x79D8, 0xC3D9, 0x89C5,
- 0xC3DA, 0x6CCC, 0xC3DB, 0x871C, 0xC3DC, 0x5BC6, 0xC3DD, 0x5E42,
- 0xC3DE, 0x68C9, 0xC3DF, 0x7720, 0xC3E0, 0x7EF5, 0xC3E1, 0x5195,
- 0xC3E2, 0x514D, 0xC3E3, 0x52C9, 0xC3E4, 0x5A29, 0xC3E5, 0x7F05,
- 0xC3E6, 0x9762, 0xC3E7, 0x82D7, 0xC3E8, 0x63CF, 0xC3E9, 0x7784,
- 0xC3EA, 0x85D0, 0xC3EB, 0x79D2, 0xC3EC, 0x6E3A, 0xC3ED, 0x5E99,
- 0xC3EE, 0x5999, 0xC3EF, 0x8511, 0xC3F0, 0x706D, 0xC3F1, 0x6C11,
- 0xC3F2, 0x62BF, 0xC3F3, 0x76BF, 0xC3F4, 0x654F, 0xC3F5, 0x60AF,
- 0xC3F6, 0x95FD, 0xC3F7, 0x660E, 0xC3F8, 0x879F, 0xC3F9, 0x9E23,
- 0xC3FA, 0x94ED, 0xC3FB, 0x540D, 0xC3FC, 0x547D, 0xC3FD, 0x8C2C,
- 0xC3FE, 0x6478, 0xC440, 0x8140, 0xC441, 0x8141, 0xC442, 0x8142,
- 0xC443, 0x8143, 0xC444, 0x8144, 0xC445, 0x8145, 0xC446, 0x8147,
- 0xC447, 0x8149, 0xC448, 0x814D, 0xC449, 0x814E, 0xC44A, 0x814F,
- 0xC44B, 0x8152, 0xC44C, 0x8156, 0xC44D, 0x8157, 0xC44E, 0x8158,
- 0xC44F, 0x815B, 0xC450, 0x815C, 0xC451, 0x815D, 0xC452, 0x815E,
- 0xC453, 0x815F, 0xC454, 0x8161, 0xC455, 0x8162, 0xC456, 0x8163,
- 0xC457, 0x8164, 0xC458, 0x8166, 0xC459, 0x8168, 0xC45A, 0x816A,
- 0xC45B, 0x816B, 0xC45C, 0x816C, 0xC45D, 0x816F, 0xC45E, 0x8172,
- 0xC45F, 0x8173, 0xC460, 0x8175, 0xC461, 0x8176, 0xC462, 0x8177,
- 0xC463, 0x8178, 0xC464, 0x8181, 0xC465, 0x8183, 0xC466, 0x8184,
- 0xC467, 0x8185, 0xC468, 0x8186, 0xC469, 0x8187, 0xC46A, 0x8189,
- 0xC46B, 0x818B, 0xC46C, 0x818C, 0xC46D, 0x818D, 0xC46E, 0x818E,
- 0xC46F, 0x8190, 0xC470, 0x8192, 0xC471, 0x8193, 0xC472, 0x8194,
- 0xC473, 0x8195, 0xC474, 0x8196, 0xC475, 0x8197, 0xC476, 0x8199,
- 0xC477, 0x819A, 0xC478, 0x819E, 0xC479, 0x819F, 0xC47A, 0x81A0,
- 0xC47B, 0x81A1, 0xC47C, 0x81A2, 0xC47D, 0x81A4, 0xC47E, 0x81A5,
- 0xC480, 0x81A7, 0xC481, 0x81A9, 0xC482, 0x81AB, 0xC483, 0x81AC,
- 0xC484, 0x81AD, 0xC485, 0x81AE, 0xC486, 0x81AF, 0xC487, 0x81B0,
- 0xC488, 0x81B1, 0xC489, 0x81B2, 0xC48A, 0x81B4, 0xC48B, 0x81B5,
- 0xC48C, 0x81B6, 0xC48D, 0x81B7, 0xC48E, 0x81B8, 0xC48F, 0x81B9,
- 0xC490, 0x81BC, 0xC491, 0x81BD, 0xC492, 0x81BE, 0xC493, 0x81BF,
- 0xC494, 0x81C4, 0xC495, 0x81C5, 0xC496, 0x81C7, 0xC497, 0x81C8,
- 0xC498, 0x81C9, 0xC499, 0x81CB, 0xC49A, 0x81CD, 0xC49B, 0x81CE,
- 0xC49C, 0x81CF, 0xC49D, 0x81D0, 0xC49E, 0x81D1, 0xC49F, 0x81D2,
- 0xC4A0, 0x81D3, 0xC4A1, 0x6479, 0xC4A2, 0x8611, 0xC4A3, 0x6A21,
- 0xC4A4, 0x819C, 0xC4A5, 0x78E8, 0xC4A6, 0x6469, 0xC4A7, 0x9B54,
- 0xC4A8, 0x62B9, 0xC4A9, 0x672B, 0xC4AA, 0x83AB, 0xC4AB, 0x58A8,
- 0xC4AC, 0x9ED8, 0xC4AD, 0x6CAB, 0xC4AE, 0x6F20, 0xC4AF, 0x5BDE,
- 0xC4B0, 0x964C, 0xC4B1, 0x8C0B, 0xC4B2, 0x725F, 0xC4B3, 0x67D0,
- 0xC4B4, 0x62C7, 0xC4B5, 0x7261, 0xC4B6, 0x4EA9, 0xC4B7, 0x59C6,
- 0xC4B8, 0x6BCD, 0xC4B9, 0x5893, 0xC4BA, 0x66AE, 0xC4BB, 0x5E55,
- 0xC4BC, 0x52DF, 0xC4BD, 0x6155, 0xC4BE, 0x6728, 0xC4BF, 0x76EE,
- 0xC4C0, 0x7766, 0xC4C1, 0x7267, 0xC4C2, 0x7A46, 0xC4C3, 0x62FF,
- 0xC4C4, 0x54EA, 0xC4C5, 0x5450, 0xC4C6, 0x94A0, 0xC4C7, 0x90A3,
- 0xC4C8, 0x5A1C, 0xC4C9, 0x7EB3, 0xC4CA, 0x6C16, 0xC4CB, 0x4E43,
- 0xC4CC, 0x5976, 0xC4CD, 0x8010, 0xC4CE, 0x5948, 0xC4CF, 0x5357,
- 0xC4D0, 0x7537, 0xC4D1, 0x96BE, 0xC4D2, 0x56CA, 0xC4D3, 0x6320,
- 0xC4D4, 0x8111, 0xC4D5, 0x607C, 0xC4D6, 0x95F9, 0xC4D7, 0x6DD6,
- 0xC4D8, 0x5462, 0xC4D9, 0x9981, 0xC4DA, 0x5185, 0xC4DB, 0x5AE9,
- 0xC4DC, 0x80FD, 0xC4DD, 0x59AE, 0xC4DE, 0x9713, 0xC4DF, 0x502A,
- 0xC4E0, 0x6CE5, 0xC4E1, 0x5C3C, 0xC4E2, 0x62DF, 0xC4E3, 0x4F60,
- 0xC4E4, 0x533F, 0xC4E5, 0x817B, 0xC4E6, 0x9006, 0xC4E7, 0x6EBA,
- 0xC4E8, 0x852B, 0xC4E9, 0x62C8, 0xC4EA, 0x5E74, 0xC4EB, 0x78BE,
- 0xC4EC, 0x64B5, 0xC4ED, 0x637B, 0xC4EE, 0x5FF5, 0xC4EF, 0x5A18,
- 0xC4F0, 0x917F, 0xC4F1, 0x9E1F, 0xC4F2, 0x5C3F, 0xC4F3, 0x634F,
- 0xC4F4, 0x8042, 0xC4F5, 0x5B7D, 0xC4F6, 0x556E, 0xC4F7, 0x954A,
- 0xC4F8, 0x954D, 0xC4F9, 0x6D85, 0xC4FA, 0x60A8, 0xC4FB, 0x67E0,
- 0xC4FC, 0x72DE, 0xC4FD, 0x51DD, 0xC4FE, 0x5B81, 0xC540, 0x81D4,
- 0xC541, 0x81D5, 0xC542, 0x81D6, 0xC543, 0x81D7, 0xC544, 0x81D8,
- 0xC545, 0x81D9, 0xC546, 0x81DA, 0xC547, 0x81DB, 0xC548, 0x81DC,
- 0xC549, 0x81DD, 0xC54A, 0x81DE, 0xC54B, 0x81DF, 0xC54C, 0x81E0,
- 0xC54D, 0x81E1, 0xC54E, 0x81E2, 0xC54F, 0x81E4, 0xC550, 0x81E5,
- 0xC551, 0x81E6, 0xC552, 0x81E8, 0xC553, 0x81E9, 0xC554, 0x81EB,
- 0xC555, 0x81EE, 0xC556, 0x81EF, 0xC557, 0x81F0, 0xC558, 0x81F1,
- 0xC559, 0x81F2, 0xC55A, 0x81F5, 0xC55B, 0x81F6, 0xC55C, 0x81F7,
- 0xC55D, 0x81F8, 0xC55E, 0x81F9, 0xC55F, 0x81FA, 0xC560, 0x81FD,
- 0xC561, 0x81FF, 0xC562, 0x8203, 0xC563, 0x8207, 0xC564, 0x8208,
- 0xC565, 0x8209, 0xC566, 0x820A, 0xC567, 0x820B, 0xC568, 0x820E,
- 0xC569, 0x820F, 0xC56A, 0x8211, 0xC56B, 0x8213, 0xC56C, 0x8215,
- 0xC56D, 0x8216, 0xC56E, 0x8217, 0xC56F, 0x8218, 0xC570, 0x8219,
- 0xC571, 0x821A, 0xC572, 0x821D, 0xC573, 0x8220, 0xC574, 0x8224,
- 0xC575, 0x8225, 0xC576, 0x8226, 0xC577, 0x8227, 0xC578, 0x8229,
- 0xC579, 0x822E, 0xC57A, 0x8232, 0xC57B, 0x823A, 0xC57C, 0x823C,
- 0xC57D, 0x823D, 0xC57E, 0x823F, 0xC580, 0x8240, 0xC581, 0x8241,
- 0xC582, 0x8242, 0xC583, 0x8243, 0xC584, 0x8245, 0xC585, 0x8246,
- 0xC586, 0x8248, 0xC587, 0x824A, 0xC588, 0x824C, 0xC589, 0x824D,
- 0xC58A, 0x824E, 0xC58B, 0x8250, 0xC58C, 0x8251, 0xC58D, 0x8252,
- 0xC58E, 0x8253, 0xC58F, 0x8254, 0xC590, 0x8255, 0xC591, 0x8256,
- 0xC592, 0x8257, 0xC593, 0x8259, 0xC594, 0x825B, 0xC595, 0x825C,
- 0xC596, 0x825D, 0xC597, 0x825E, 0xC598, 0x8260, 0xC599, 0x8261,
- 0xC59A, 0x8262, 0xC59B, 0x8263, 0xC59C, 0x8264, 0xC59D, 0x8265,
- 0xC59E, 0x8266, 0xC59F, 0x8267, 0xC5A0, 0x8269, 0xC5A1, 0x62E7,
- 0xC5A2, 0x6CDE, 0xC5A3, 0x725B, 0xC5A4, 0x626D, 0xC5A5, 0x94AE,
- 0xC5A6, 0x7EBD, 0xC5A7, 0x8113, 0xC5A8, 0x6D53, 0xC5A9, 0x519C,
- 0xC5AA, 0x5F04, 0xC5AB, 0x5974, 0xC5AC, 0x52AA, 0xC5AD, 0x6012,
- 0xC5AE, 0x5973, 0xC5AF, 0x6696, 0xC5B0, 0x8650, 0xC5B1, 0x759F,
- 0xC5B2, 0x632A, 0xC5B3, 0x61E6, 0xC5B4, 0x7CEF, 0xC5B5, 0x8BFA,
- 0xC5B6, 0x54E6, 0xC5B7, 0x6B27, 0xC5B8, 0x9E25, 0xC5B9, 0x6BB4,
- 0xC5BA, 0x85D5, 0xC5BB, 0x5455, 0xC5BC, 0x5076, 0xC5BD, 0x6CA4,
- 0xC5BE, 0x556A, 0xC5BF, 0x8DB4, 0xC5C0, 0x722C, 0xC5C1, 0x5E15,
- 0xC5C2, 0x6015, 0xC5C3, 0x7436, 0xC5C4, 0x62CD, 0xC5C5, 0x6392,
- 0xC5C6, 0x724C, 0xC5C7, 0x5F98, 0xC5C8, 0x6E43, 0xC5C9, 0x6D3E,
- 0xC5CA, 0x6500, 0xC5CB, 0x6F58, 0xC5CC, 0x76D8, 0xC5CD, 0x78D0,
- 0xC5CE, 0x76FC, 0xC5CF, 0x7554, 0xC5D0, 0x5224, 0xC5D1, 0x53DB,
- 0xC5D2, 0x4E53, 0xC5D3, 0x5E9E, 0xC5D4, 0x65C1, 0xC5D5, 0x802A,
- 0xC5D6, 0x80D6, 0xC5D7, 0x629B, 0xC5D8, 0x5486, 0xC5D9, 0x5228,
- 0xC5DA, 0x70AE, 0xC5DB, 0x888D, 0xC5DC, 0x8DD1, 0xC5DD, 0x6CE1,
- 0xC5DE, 0x5478, 0xC5DF, 0x80DA, 0xC5E0, 0x57F9, 0xC5E1, 0x88F4,
- 0xC5E2, 0x8D54, 0xC5E3, 0x966A, 0xC5E4, 0x914D, 0xC5E5, 0x4F69,
- 0xC5E6, 0x6C9B, 0xC5E7, 0x55B7, 0xC5E8, 0x76C6, 0xC5E9, 0x7830,
- 0xC5EA, 0x62A8, 0xC5EB, 0x70F9, 0xC5EC, 0x6F8E, 0xC5ED, 0x5F6D,
- 0xC5EE, 0x84EC, 0xC5EF, 0x68DA, 0xC5F0, 0x787C, 0xC5F1, 0x7BF7,
- 0xC5F2, 0x81A8, 0xC5F3, 0x670B, 0xC5F4, 0x9E4F, 0xC5F5, 0x6367,
- 0xC5F6, 0x78B0, 0xC5F7, 0x576F, 0xC5F8, 0x7812, 0xC5F9, 0x9739,
- 0xC5FA, 0x6279, 0xC5FB, 0x62AB, 0xC5FC, 0x5288, 0xC5FD, 0x7435,
- 0xC5FE, 0x6BD7, 0xC640, 0x826A, 0xC641, 0x826B, 0xC642, 0x826C,
- 0xC643, 0x826D, 0xC644, 0x8271, 0xC645, 0x8275, 0xC646, 0x8276,
- 0xC647, 0x8277, 0xC648, 0x8278, 0xC649, 0x827B, 0xC64A, 0x827C,
- 0xC64B, 0x8280, 0xC64C, 0x8281, 0xC64D, 0x8283, 0xC64E, 0x8285,
- 0xC64F, 0x8286, 0xC650, 0x8287, 0xC651, 0x8289, 0xC652, 0x828C,
- 0xC653, 0x8290, 0xC654, 0x8293, 0xC655, 0x8294, 0xC656, 0x8295,
- 0xC657, 0x8296, 0xC658, 0x829A, 0xC659, 0x829B, 0xC65A, 0x829E,
- 0xC65B, 0x82A0, 0xC65C, 0x82A2, 0xC65D, 0x82A3, 0xC65E, 0x82A7,
- 0xC65F, 0x82B2, 0xC660, 0x82B5, 0xC661, 0x82B6, 0xC662, 0x82BA,
- 0xC663, 0x82BB, 0xC664, 0x82BC, 0xC665, 0x82BF, 0xC666, 0x82C0,
- 0xC667, 0x82C2, 0xC668, 0x82C3, 0xC669, 0x82C5, 0xC66A, 0x82C6,
- 0xC66B, 0x82C9, 0xC66C, 0x82D0, 0xC66D, 0x82D6, 0xC66E, 0x82D9,
- 0xC66F, 0x82DA, 0xC670, 0x82DD, 0xC671, 0x82E2, 0xC672, 0x82E7,
- 0xC673, 0x82E8, 0xC674, 0x82E9, 0xC675, 0x82EA, 0xC676, 0x82EC,
- 0xC677, 0x82ED, 0xC678, 0x82EE, 0xC679, 0x82F0, 0xC67A, 0x82F2,
- 0xC67B, 0x82F3, 0xC67C, 0x82F5, 0xC67D, 0x82F6, 0xC67E, 0x82F8,
- 0xC680, 0x82FA, 0xC681, 0x82FC, 0xC682, 0x82FD, 0xC683, 0x82FE,
- 0xC684, 0x82FF, 0xC685, 0x8300, 0xC686, 0x830A, 0xC687, 0x830B,
- 0xC688, 0x830D, 0xC689, 0x8310, 0xC68A, 0x8312, 0xC68B, 0x8313,
- 0xC68C, 0x8316, 0xC68D, 0x8318, 0xC68E, 0x8319, 0xC68F, 0x831D,
- 0xC690, 0x831E, 0xC691, 0x831F, 0xC692, 0x8320, 0xC693, 0x8321,
- 0xC694, 0x8322, 0xC695, 0x8323, 0xC696, 0x8324, 0xC697, 0x8325,
- 0xC698, 0x8326, 0xC699, 0x8329, 0xC69A, 0x832A, 0xC69B, 0x832E,
- 0xC69C, 0x8330, 0xC69D, 0x8332, 0xC69E, 0x8337, 0xC69F, 0x833B,
- 0xC6A0, 0x833D, 0xC6A1, 0x5564, 0xC6A2, 0x813E, 0xC6A3, 0x75B2,
- 0xC6A4, 0x76AE, 0xC6A5, 0x5339, 0xC6A6, 0x75DE, 0xC6A7, 0x50FB,
- 0xC6A8, 0x5C41, 0xC6A9, 0x8B6C, 0xC6AA, 0x7BC7, 0xC6AB, 0x504F,
- 0xC6AC, 0x7247, 0xC6AD, 0x9A97, 0xC6AE, 0x98D8, 0xC6AF, 0x6F02,
- 0xC6B0, 0x74E2, 0xC6B1, 0x7968, 0xC6B2, 0x6487, 0xC6B3, 0x77A5,
- 0xC6B4, 0x62FC, 0xC6B5, 0x9891, 0xC6B6, 0x8D2B, 0xC6B7, 0x54C1,
- 0xC6B8, 0x8058, 0xC6B9, 0x4E52, 0xC6BA, 0x576A, 0xC6BB, 0x82F9,
- 0xC6BC, 0x840D, 0xC6BD, 0x5E73, 0xC6BE, 0x51ED, 0xC6BF, 0x74F6,
- 0xC6C0, 0x8BC4, 0xC6C1, 0x5C4F, 0xC6C2, 0x5761, 0xC6C3, 0x6CFC,
- 0xC6C4, 0x9887, 0xC6C5, 0x5A46, 0xC6C6, 0x7834, 0xC6C7, 0x9B44,
- 0xC6C8, 0x8FEB, 0xC6C9, 0x7C95, 0xC6CA, 0x5256, 0xC6CB, 0x6251,
- 0xC6CC, 0x94FA, 0xC6CD, 0x4EC6, 0xC6CE, 0x8386, 0xC6CF, 0x8461,
- 0xC6D0, 0x83E9, 0xC6D1, 0x84B2, 0xC6D2, 0x57D4, 0xC6D3, 0x6734,
- 0xC6D4, 0x5703, 0xC6D5, 0x666E, 0xC6D6, 0x6D66, 0xC6D7, 0x8C31,
- 0xC6D8, 0x66DD, 0xC6D9, 0x7011, 0xC6DA, 0x671F, 0xC6DB, 0x6B3A,
- 0xC6DC, 0x6816, 0xC6DD, 0x621A, 0xC6DE, 0x59BB, 0xC6DF, 0x4E03,
- 0xC6E0, 0x51C4, 0xC6E1, 0x6F06, 0xC6E2, 0x67D2, 0xC6E3, 0x6C8F,
- 0xC6E4, 0x5176, 0xC6E5, 0x68CB, 0xC6E6, 0x5947, 0xC6E7, 0x6B67,
- 0xC6E8, 0x7566, 0xC6E9, 0x5D0E, 0xC6EA, 0x8110, 0xC6EB, 0x9F50,
- 0xC6EC, 0x65D7, 0xC6ED, 0x7948, 0xC6EE, 0x7941, 0xC6EF, 0x9A91,
- 0xC6F0, 0x8D77, 0xC6F1, 0x5C82, 0xC6F2, 0x4E5E, 0xC6F3, 0x4F01,
- 0xC6F4, 0x542F, 0xC6F5, 0x5951, 0xC6F6, 0x780C, 0xC6F7, 0x5668,
- 0xC6F8, 0x6C14, 0xC6F9, 0x8FC4, 0xC6FA, 0x5F03, 0xC6FB, 0x6C7D,
- 0xC6FC, 0x6CE3, 0xC6FD, 0x8BAB, 0xC6FE, 0x6390, 0xC740, 0x833E,
- 0xC741, 0x833F, 0xC742, 0x8341, 0xC743, 0x8342, 0xC744, 0x8344,
- 0xC745, 0x8345, 0xC746, 0x8348, 0xC747, 0x834A, 0xC748, 0x834B,
- 0xC749, 0x834C, 0xC74A, 0x834D, 0xC74B, 0x834E, 0xC74C, 0x8353,
- 0xC74D, 0x8355, 0xC74E, 0x8356, 0xC74F, 0x8357, 0xC750, 0x8358,
- 0xC751, 0x8359, 0xC752, 0x835D, 0xC753, 0x8362, 0xC754, 0x8370,
- 0xC755, 0x8371, 0xC756, 0x8372, 0xC757, 0x8373, 0xC758, 0x8374,
- 0xC759, 0x8375, 0xC75A, 0x8376, 0xC75B, 0x8379, 0xC75C, 0x837A,
- 0xC75D, 0x837E, 0xC75E, 0x837F, 0xC75F, 0x8380, 0xC760, 0x8381,
- 0xC761, 0x8382, 0xC762, 0x8383, 0xC763, 0x8384, 0xC764, 0x8387,
- 0xC765, 0x8388, 0xC766, 0x838A, 0xC767, 0x838B, 0xC768, 0x838C,
- 0xC769, 0x838D, 0xC76A, 0x838F, 0xC76B, 0x8390, 0xC76C, 0x8391,
- 0xC76D, 0x8394, 0xC76E, 0x8395, 0xC76F, 0x8396, 0xC770, 0x8397,
- 0xC771, 0x8399, 0xC772, 0x839A, 0xC773, 0x839D, 0xC774, 0x839F,
- 0xC775, 0x83A1, 0xC776, 0x83A2, 0xC777, 0x83A3, 0xC778, 0x83A4,
- 0xC779, 0x83A5, 0xC77A, 0x83A6, 0xC77B, 0x83A7, 0xC77C, 0x83AC,
- 0xC77D, 0x83AD, 0xC77E, 0x83AE, 0xC780, 0x83AF, 0xC781, 0x83B5,
- 0xC782, 0x83BB, 0xC783, 0x83BE, 0xC784, 0x83BF, 0xC785, 0x83C2,
- 0xC786, 0x83C3, 0xC787, 0x83C4, 0xC788, 0x83C6, 0xC789, 0x83C8,
- 0xC78A, 0x83C9, 0xC78B, 0x83CB, 0xC78C, 0x83CD, 0xC78D, 0x83CE,
- 0xC78E, 0x83D0, 0xC78F, 0x83D1, 0xC790, 0x83D2, 0xC791, 0x83D3,
- 0xC792, 0x83D5, 0xC793, 0x83D7, 0xC794, 0x83D9, 0xC795, 0x83DA,
- 0xC796, 0x83DB, 0xC797, 0x83DE, 0xC798, 0x83E2, 0xC799, 0x83E3,
- 0xC79A, 0x83E4, 0xC79B, 0x83E6, 0xC79C, 0x83E7, 0xC79D, 0x83E8,
- 0xC79E, 0x83EB, 0xC79F, 0x83EC, 0xC7A0, 0x83ED, 0xC7A1, 0x6070,
- 0xC7A2, 0x6D3D, 0xC7A3, 0x7275, 0xC7A4, 0x6266, 0xC7A5, 0x948E,
- 0xC7A6, 0x94C5, 0xC7A7, 0x5343, 0xC7A8, 0x8FC1, 0xC7A9, 0x7B7E,
- 0xC7AA, 0x4EDF, 0xC7AB, 0x8C26, 0xC7AC, 0x4E7E, 0xC7AD, 0x9ED4,
- 0xC7AE, 0x94B1, 0xC7AF, 0x94B3, 0xC7B0, 0x524D, 0xC7B1, 0x6F5C,
- 0xC7B2, 0x9063, 0xC7B3, 0x6D45, 0xC7B4, 0x8C34, 0xC7B5, 0x5811,
- 0xC7B6, 0x5D4C, 0xC7B7, 0x6B20, 0xC7B8, 0x6B49, 0xC7B9, 0x67AA,
- 0xC7BA, 0x545B, 0xC7BB, 0x8154, 0xC7BC, 0x7F8C, 0xC7BD, 0x5899,
- 0xC7BE, 0x8537, 0xC7BF, 0x5F3A, 0xC7C0, 0x62A2, 0xC7C1, 0x6A47,
- 0xC7C2, 0x9539, 0xC7C3, 0x6572, 0xC7C4, 0x6084, 0xC7C5, 0x6865,
- 0xC7C6, 0x77A7, 0xC7C7, 0x4E54, 0xC7C8, 0x4FA8, 0xC7C9, 0x5DE7,
- 0xC7CA, 0x9798, 0xC7CB, 0x64AC, 0xC7CC, 0x7FD8, 0xC7CD, 0x5CED,
- 0xC7CE, 0x4FCF, 0xC7CF, 0x7A8D, 0xC7D0, 0x5207, 0xC7D1, 0x8304,
- 0xC7D2, 0x4E14, 0xC7D3, 0x602F, 0xC7D4, 0x7A83, 0xC7D5, 0x94A6,
- 0xC7D6, 0x4FB5, 0xC7D7, 0x4EB2, 0xC7D8, 0x79E6, 0xC7D9, 0x7434,
- 0xC7DA, 0x52E4, 0xC7DB, 0x82B9, 0xC7DC, 0x64D2, 0xC7DD, 0x79BD,
- 0xC7DE, 0x5BDD, 0xC7DF, 0x6C81, 0xC7E0, 0x9752, 0xC7E1, 0x8F7B,
- 0xC7E2, 0x6C22, 0xC7E3, 0x503E, 0xC7E4, 0x537F, 0xC7E5, 0x6E05,
- 0xC7E6, 0x64CE, 0xC7E7, 0x6674, 0xC7E8, 0x6C30, 0xC7E9, 0x60C5,
- 0xC7EA, 0x9877, 0xC7EB, 0x8BF7, 0xC7EC, 0x5E86, 0xC7ED, 0x743C,
- 0xC7EE, 0x7A77, 0xC7EF, 0x79CB, 0xC7F0, 0x4E18, 0xC7F1, 0x90B1,
- 0xC7F2, 0x7403, 0xC7F3, 0x6C42, 0xC7F4, 0x56DA, 0xC7F5, 0x914B,
- 0xC7F6, 0x6CC5, 0xC7F7, 0x8D8B, 0xC7F8, 0x533A, 0xC7F9, 0x86C6,
- 0xC7FA, 0x66F2, 0xC7FB, 0x8EAF, 0xC7FC, 0x5C48, 0xC7FD, 0x9A71,
- 0xC7FE, 0x6E20, 0xC840, 0x83EE, 0xC841, 0x83EF, 0xC842, 0x83F3,
- 0xC843, 0x83F4, 0xC844, 0x83F5, 0xC845, 0x83F6, 0xC846, 0x83F7,
- 0xC847, 0x83FA, 0xC848, 0x83FB, 0xC849, 0x83FC, 0xC84A, 0x83FE,
- 0xC84B, 0x83FF, 0xC84C, 0x8400, 0xC84D, 0x8402, 0xC84E, 0x8405,
- 0xC84F, 0x8407, 0xC850, 0x8408, 0xC851, 0x8409, 0xC852, 0x840A,
- 0xC853, 0x8410, 0xC854, 0x8412, 0xC855, 0x8413, 0xC856, 0x8414,
- 0xC857, 0x8415, 0xC858, 0x8416, 0xC859, 0x8417, 0xC85A, 0x8419,
- 0xC85B, 0x841A, 0xC85C, 0x841B, 0xC85D, 0x841E, 0xC85E, 0x841F,
- 0xC85F, 0x8420, 0xC860, 0x8421, 0xC861, 0x8422, 0xC862, 0x8423,
- 0xC863, 0x8429, 0xC864, 0x842A, 0xC865, 0x842B, 0xC866, 0x842C,
- 0xC867, 0x842D, 0xC868, 0x842E, 0xC869, 0x842F, 0xC86A, 0x8430,
- 0xC86B, 0x8432, 0xC86C, 0x8433, 0xC86D, 0x8434, 0xC86E, 0x8435,
- 0xC86F, 0x8436, 0xC870, 0x8437, 0xC871, 0x8439, 0xC872, 0x843A,
- 0xC873, 0x843B, 0xC874, 0x843E, 0xC875, 0x843F, 0xC876, 0x8440,
- 0xC877, 0x8441, 0xC878, 0x8442, 0xC879, 0x8443, 0xC87A, 0x8444,
- 0xC87B, 0x8445, 0xC87C, 0x8447, 0xC87D, 0x8448, 0xC87E, 0x8449,
- 0xC880, 0x844A, 0xC881, 0x844B, 0xC882, 0x844C, 0xC883, 0x844D,
- 0xC884, 0x844E, 0xC885, 0x844F, 0xC886, 0x8450, 0xC887, 0x8452,
- 0xC888, 0x8453, 0xC889, 0x8454, 0xC88A, 0x8455, 0xC88B, 0x8456,
- 0xC88C, 0x8458, 0xC88D, 0x845D, 0xC88E, 0x845E, 0xC88F, 0x845F,
- 0xC890, 0x8460, 0xC891, 0x8462, 0xC892, 0x8464, 0xC893, 0x8465,
- 0xC894, 0x8466, 0xC895, 0x8467, 0xC896, 0x8468, 0xC897, 0x846A,
- 0xC898, 0x846E, 0xC899, 0x846F, 0xC89A, 0x8470, 0xC89B, 0x8472,
- 0xC89C, 0x8474, 0xC89D, 0x8477, 0xC89E, 0x8479, 0xC89F, 0x847B,
- 0xC8A0, 0x847C, 0xC8A1, 0x53D6, 0xC8A2, 0x5A36, 0xC8A3, 0x9F8B,
- 0xC8A4, 0x8DA3, 0xC8A5, 0x53BB, 0xC8A6, 0x5708, 0xC8A7, 0x98A7,
- 0xC8A8, 0x6743, 0xC8A9, 0x919B, 0xC8AA, 0x6CC9, 0xC8AB, 0x5168,
- 0xC8AC, 0x75CA, 0xC8AD, 0x62F3, 0xC8AE, 0x72AC, 0xC8AF, 0x5238,
- 0xC8B0, 0x529D, 0xC8B1, 0x7F3A, 0xC8B2, 0x7094, 0xC8B3, 0x7638,
- 0xC8B4, 0x5374, 0xC8B5, 0x9E4A, 0xC8B6, 0x69B7, 0xC8B7, 0x786E,
- 0xC8B8, 0x96C0, 0xC8B9, 0x88D9, 0xC8BA, 0x7FA4, 0xC8BB, 0x7136,
- 0xC8BC, 0x71C3, 0xC8BD, 0x5189, 0xC8BE, 0x67D3, 0xC8BF, 0x74E4,
- 0xC8C0, 0x58E4, 0xC8C1, 0x6518, 0xC8C2, 0x56B7, 0xC8C3, 0x8BA9,
- 0xC8C4, 0x9976, 0xC8C5, 0x6270, 0xC8C6, 0x7ED5, 0xC8C7, 0x60F9,
- 0xC8C8, 0x70ED, 0xC8C9, 0x58EC, 0xC8CA, 0x4EC1, 0xC8CB, 0x4EBA,
- 0xC8CC, 0x5FCD, 0xC8CD, 0x97E7, 0xC8CE, 0x4EFB, 0xC8CF, 0x8BA4,
- 0xC8D0, 0x5203, 0xC8D1, 0x598A, 0xC8D2, 0x7EAB, 0xC8D3, 0x6254,
- 0xC8D4, 0x4ECD, 0xC8D5, 0x65E5, 0xC8D6, 0x620E, 0xC8D7, 0x8338,
- 0xC8D8, 0x84C9, 0xC8D9, 0x8363, 0xC8DA, 0x878D, 0xC8DB, 0x7194,
- 0xC8DC, 0x6EB6, 0xC8DD, 0x5BB9, 0xC8DE, 0x7ED2, 0xC8DF, 0x5197,
- 0xC8E0, 0x63C9, 0xC8E1, 0x67D4, 0xC8E2, 0x8089, 0xC8E3, 0x8339,
- 0xC8E4, 0x8815, 0xC8E5, 0x5112, 0xC8E6, 0x5B7A, 0xC8E7, 0x5982,
- 0xC8E8, 0x8FB1, 0xC8E9, 0x4E73, 0xC8EA, 0x6C5D, 0xC8EB, 0x5165,
- 0xC8EC, 0x8925, 0xC8ED, 0x8F6F, 0xC8EE, 0x962E, 0xC8EF, 0x854A,
- 0xC8F0, 0x745E, 0xC8F1, 0x9510, 0xC8F2, 0x95F0, 0xC8F3, 0x6DA6,
- 0xC8F4, 0x82E5, 0xC8F5, 0x5F31, 0xC8F6, 0x6492, 0xC8F7, 0x6D12,
- 0xC8F8, 0x8428, 0xC8F9, 0x816E, 0xC8FA, 0x9CC3, 0xC8FB, 0x585E,
- 0xC8FC, 0x8D5B, 0xC8FD, 0x4E09, 0xC8FE, 0x53C1, 0xC940, 0x847D,
- 0xC941, 0x847E, 0xC942, 0x847F, 0xC943, 0x8480, 0xC944, 0x8481,
- 0xC945, 0x8483, 0xC946, 0x8484, 0xC947, 0x8485, 0xC948, 0x8486,
- 0xC949, 0x848A, 0xC94A, 0x848D, 0xC94B, 0x848F, 0xC94C, 0x8490,
- 0xC94D, 0x8491, 0xC94E, 0x8492, 0xC94F, 0x8493, 0xC950, 0x8494,
- 0xC951, 0x8495, 0xC952, 0x8496, 0xC953, 0x8498, 0xC954, 0x849A,
- 0xC955, 0x849B, 0xC956, 0x849D, 0xC957, 0x849E, 0xC958, 0x849F,
- 0xC959, 0x84A0, 0xC95A, 0x84A2, 0xC95B, 0x84A3, 0xC95C, 0x84A4,
- 0xC95D, 0x84A5, 0xC95E, 0x84A6, 0xC95F, 0x84A7, 0xC960, 0x84A8,
- 0xC961, 0x84A9, 0xC962, 0x84AA, 0xC963, 0x84AB, 0xC964, 0x84AC,
- 0xC965, 0x84AD, 0xC966, 0x84AE, 0xC967, 0x84B0, 0xC968, 0x84B1,
- 0xC969, 0x84B3, 0xC96A, 0x84B5, 0xC96B, 0x84B6, 0xC96C, 0x84B7,
- 0xC96D, 0x84BB, 0xC96E, 0x84BC, 0xC96F, 0x84BE, 0xC970, 0x84C0,
- 0xC971, 0x84C2, 0xC972, 0x84C3, 0xC973, 0x84C5, 0xC974, 0x84C6,
- 0xC975, 0x84C7, 0xC976, 0x84C8, 0xC977, 0x84CB, 0xC978, 0x84CC,
- 0xC979, 0x84CE, 0xC97A, 0x84CF, 0xC97B, 0x84D2, 0xC97C, 0x84D4,
- 0xC97D, 0x84D5, 0xC97E, 0x84D7, 0xC980, 0x84D8, 0xC981, 0x84D9,
- 0xC982, 0x84DA, 0xC983, 0x84DB, 0xC984, 0x84DC, 0xC985, 0x84DE,
- 0xC986, 0x84E1, 0xC987, 0x84E2, 0xC988, 0x84E4, 0xC989, 0x84E7,
- 0xC98A, 0x84E8, 0xC98B, 0x84E9, 0xC98C, 0x84EA, 0xC98D, 0x84EB,
- 0xC98E, 0x84ED, 0xC98F, 0x84EE, 0xC990, 0x84EF, 0xC991, 0x84F1,
- 0xC992, 0x84F2, 0xC993, 0x84F3, 0xC994, 0x84F4, 0xC995, 0x84F5,
- 0xC996, 0x84F6, 0xC997, 0x84F7, 0xC998, 0x84F8, 0xC999, 0x84F9,
- 0xC99A, 0x84FA, 0xC99B, 0x84FB, 0xC99C, 0x84FD, 0xC99D, 0x84FE,
- 0xC99E, 0x8500, 0xC99F, 0x8501, 0xC9A0, 0x8502, 0xC9A1, 0x4F1E,
- 0xC9A2, 0x6563, 0xC9A3, 0x6851, 0xC9A4, 0x55D3, 0xC9A5, 0x4E27,
- 0xC9A6, 0x6414, 0xC9A7, 0x9A9A, 0xC9A8, 0x626B, 0xC9A9, 0x5AC2,
- 0xC9AA, 0x745F, 0xC9AB, 0x8272, 0xC9AC, 0x6DA9, 0xC9AD, 0x68EE,
- 0xC9AE, 0x50E7, 0xC9AF, 0x838E, 0xC9B0, 0x7802, 0xC9B1, 0x6740,
- 0xC9B2, 0x5239, 0xC9B3, 0x6C99, 0xC9B4, 0x7EB1, 0xC9B5, 0x50BB,
- 0xC9B6, 0x5565, 0xC9B7, 0x715E, 0xC9B8, 0x7B5B, 0xC9B9, 0x6652,
- 0xC9BA, 0x73CA, 0xC9BB, 0x82EB, 0xC9BC, 0x6749, 0xC9BD, 0x5C71,
- 0xC9BE, 0x5220, 0xC9BF, 0x717D, 0xC9C0, 0x886B, 0xC9C1, 0x95EA,
- 0xC9C2, 0x9655, 0xC9C3, 0x64C5, 0xC9C4, 0x8D61, 0xC9C5, 0x81B3,
- 0xC9C6, 0x5584, 0xC9C7, 0x6C55, 0xC9C8, 0x6247, 0xC9C9, 0x7F2E,
- 0xC9CA, 0x5892, 0xC9CB, 0x4F24, 0xC9CC, 0x5546, 0xC9CD, 0x8D4F,
- 0xC9CE, 0x664C, 0xC9CF, 0x4E0A, 0xC9D0, 0x5C1A, 0xC9D1, 0x88F3,
- 0xC9D2, 0x68A2, 0xC9D3, 0x634E, 0xC9D4, 0x7A0D, 0xC9D5, 0x70E7,
- 0xC9D6, 0x828D, 0xC9D7, 0x52FA, 0xC9D8, 0x97F6, 0xC9D9, 0x5C11,
- 0xC9DA, 0x54E8, 0xC9DB, 0x90B5, 0xC9DC, 0x7ECD, 0xC9DD, 0x5962,
- 0xC9DE, 0x8D4A, 0xC9DF, 0x86C7, 0xC9E0, 0x820C, 0xC9E1, 0x820D,
- 0xC9E2, 0x8D66, 0xC9E3, 0x6444, 0xC9E4, 0x5C04, 0xC9E5, 0x6151,
- 0xC9E6, 0x6D89, 0xC9E7, 0x793E, 0xC9E8, 0x8BBE, 0xC9E9, 0x7837,
- 0xC9EA, 0x7533, 0xC9EB, 0x547B, 0xC9EC, 0x4F38, 0xC9ED, 0x8EAB,
- 0xC9EE, 0x6DF1, 0xC9EF, 0x5A20, 0xC9F0, 0x7EC5, 0xC9F1, 0x795E,
- 0xC9F2, 0x6C88, 0xC9F3, 0x5BA1, 0xC9F4, 0x5A76, 0xC9F5, 0x751A,
- 0xC9F6, 0x80BE, 0xC9F7, 0x614E, 0xC9F8, 0x6E17, 0xC9F9, 0x58F0,
- 0xC9FA, 0x751F, 0xC9FB, 0x7525, 0xC9FC, 0x7272, 0xC9FD, 0x5347,
- 0xC9FE, 0x7EF3, 0xCA40, 0x8503, 0xCA41, 0x8504, 0xCA42, 0x8505,
- 0xCA43, 0x8506, 0xCA44, 0x8507, 0xCA45, 0x8508, 0xCA46, 0x8509,
- 0xCA47, 0x850A, 0xCA48, 0x850B, 0xCA49, 0x850D, 0xCA4A, 0x850E,
- 0xCA4B, 0x850F, 0xCA4C, 0x8510, 0xCA4D, 0x8512, 0xCA4E, 0x8514,
- 0xCA4F, 0x8515, 0xCA50, 0x8516, 0xCA51, 0x8518, 0xCA52, 0x8519,
- 0xCA53, 0x851B, 0xCA54, 0x851C, 0xCA55, 0x851D, 0xCA56, 0x851E,
- 0xCA57, 0x8520, 0xCA58, 0x8522, 0xCA59, 0x8523, 0xCA5A, 0x8524,
- 0xCA5B, 0x8525, 0xCA5C, 0x8526, 0xCA5D, 0x8527, 0xCA5E, 0x8528,
- 0xCA5F, 0x8529, 0xCA60, 0x852A, 0xCA61, 0x852D, 0xCA62, 0x852E,
- 0xCA63, 0x852F, 0xCA64, 0x8530, 0xCA65, 0x8531, 0xCA66, 0x8532,
- 0xCA67, 0x8533, 0xCA68, 0x8534, 0xCA69, 0x8535, 0xCA6A, 0x8536,
- 0xCA6B, 0x853E, 0xCA6C, 0x853F, 0xCA6D, 0x8540, 0xCA6E, 0x8541,
- 0xCA6F, 0x8542, 0xCA70, 0x8544, 0xCA71, 0x8545, 0xCA72, 0x8546,
- 0xCA73, 0x8547, 0xCA74, 0x854B, 0xCA75, 0x854C, 0xCA76, 0x854D,
- 0xCA77, 0x854E, 0xCA78, 0x854F, 0xCA79, 0x8550, 0xCA7A, 0x8551,
- 0xCA7B, 0x8552, 0xCA7C, 0x8553, 0xCA7D, 0x8554, 0xCA7E, 0x8555,
- 0xCA80, 0x8557, 0xCA81, 0x8558, 0xCA82, 0x855A, 0xCA83, 0x855B,
- 0xCA84, 0x855C, 0xCA85, 0x855D, 0xCA86, 0x855F, 0xCA87, 0x8560,
- 0xCA88, 0x8561, 0xCA89, 0x8562, 0xCA8A, 0x8563, 0xCA8B, 0x8565,
- 0xCA8C, 0x8566, 0xCA8D, 0x8567, 0xCA8E, 0x8569, 0xCA8F, 0x856A,
- 0xCA90, 0x856B, 0xCA91, 0x856C, 0xCA92, 0x856D, 0xCA93, 0x856E,
- 0xCA94, 0x856F, 0xCA95, 0x8570, 0xCA96, 0x8571, 0xCA97, 0x8573,
- 0xCA98, 0x8575, 0xCA99, 0x8576, 0xCA9A, 0x8577, 0xCA9B, 0x8578,
- 0xCA9C, 0x857C, 0xCA9D, 0x857D, 0xCA9E, 0x857F, 0xCA9F, 0x8580,
- 0xCAA0, 0x8581, 0xCAA1, 0x7701, 0xCAA2, 0x76DB, 0xCAA3, 0x5269,
- 0xCAA4, 0x80DC, 0xCAA5, 0x5723, 0xCAA6, 0x5E08, 0xCAA7, 0x5931,
- 0xCAA8, 0x72EE, 0xCAA9, 0x65BD, 0xCAAA, 0x6E7F, 0xCAAB, 0x8BD7,
- 0xCAAC, 0x5C38, 0xCAAD, 0x8671, 0xCAAE, 0x5341, 0xCAAF, 0x77F3,
- 0xCAB0, 0x62FE, 0xCAB1, 0x65F6, 0xCAB2, 0x4EC0, 0xCAB3, 0x98DF,
- 0xCAB4, 0x8680, 0xCAB5, 0x5B9E, 0xCAB6, 0x8BC6, 0xCAB7, 0x53F2,
- 0xCAB8, 0x77E2, 0xCAB9, 0x4F7F, 0xCABA, 0x5C4E, 0xCABB, 0x9A76,
- 0xCABC, 0x59CB, 0xCABD, 0x5F0F, 0xCABE, 0x793A, 0xCABF, 0x58EB,
- 0xCAC0, 0x4E16, 0xCAC1, 0x67FF, 0xCAC2, 0x4E8B, 0xCAC3, 0x62ED,
- 0xCAC4, 0x8A93, 0xCAC5, 0x901D, 0xCAC6, 0x52BF, 0xCAC7, 0x662F,
- 0xCAC8, 0x55DC, 0xCAC9, 0x566C, 0xCACA, 0x9002, 0xCACB, 0x4ED5,
- 0xCACC, 0x4F8D, 0xCACD, 0x91CA, 0xCACE, 0x9970, 0xCACF, 0x6C0F,
- 0xCAD0, 0x5E02, 0xCAD1, 0x6043, 0xCAD2, 0x5BA4, 0xCAD3, 0x89C6,
- 0xCAD4, 0x8BD5, 0xCAD5, 0x6536, 0xCAD6, 0x624B, 0xCAD7, 0x9996,
- 0xCAD8, 0x5B88, 0xCAD9, 0x5BFF, 0xCADA, 0x6388, 0xCADB, 0x552E,
- 0xCADC, 0x53D7, 0xCADD, 0x7626, 0xCADE, 0x517D, 0xCADF, 0x852C,
- 0xCAE0, 0x67A2, 0xCAE1, 0x68B3, 0xCAE2, 0x6B8A, 0xCAE3, 0x6292,
- 0xCAE4, 0x8F93, 0xCAE5, 0x53D4, 0xCAE6, 0x8212, 0xCAE7, 0x6DD1,
- 0xCAE8, 0x758F, 0xCAE9, 0x4E66, 0xCAEA, 0x8D4E, 0xCAEB, 0x5B70,
- 0xCAEC, 0x719F, 0xCAED, 0x85AF, 0xCAEE, 0x6691, 0xCAEF, 0x66D9,
- 0xCAF0, 0x7F72, 0xCAF1, 0x8700, 0xCAF2, 0x9ECD, 0xCAF3, 0x9F20,
- 0xCAF4, 0x5C5E, 0xCAF5, 0x672F, 0xCAF6, 0x8FF0, 0xCAF7, 0x6811,
- 0xCAF8, 0x675F, 0xCAF9, 0x620D, 0xCAFA, 0x7AD6, 0xCAFB, 0x5885,
- 0xCAFC, 0x5EB6, 0xCAFD, 0x6570, 0xCAFE, 0x6F31, 0xCB40, 0x8582,
- 0xCB41, 0x8583, 0xCB42, 0x8586, 0xCB43, 0x8588, 0xCB44, 0x8589,
- 0xCB45, 0x858A, 0xCB46, 0x858B, 0xCB47, 0x858C, 0xCB48, 0x858D,
- 0xCB49, 0x858E, 0xCB4A, 0x8590, 0xCB4B, 0x8591, 0xCB4C, 0x8592,
- 0xCB4D, 0x8593, 0xCB4E, 0x8594, 0xCB4F, 0x8595, 0xCB50, 0x8596,
- 0xCB51, 0x8597, 0xCB52, 0x8598, 0xCB53, 0x8599, 0xCB54, 0x859A,
- 0xCB55, 0x859D, 0xCB56, 0x859E, 0xCB57, 0x859F, 0xCB58, 0x85A0,
- 0xCB59, 0x85A1, 0xCB5A, 0x85A2, 0xCB5B, 0x85A3, 0xCB5C, 0x85A5,
- 0xCB5D, 0x85A6, 0xCB5E, 0x85A7, 0xCB5F, 0x85A9, 0xCB60, 0x85AB,
- 0xCB61, 0x85AC, 0xCB62, 0x85AD, 0xCB63, 0x85B1, 0xCB64, 0x85B2,
- 0xCB65, 0x85B3, 0xCB66, 0x85B4, 0xCB67, 0x85B5, 0xCB68, 0x85B6,
- 0xCB69, 0x85B8, 0xCB6A, 0x85BA, 0xCB6B, 0x85BB, 0xCB6C, 0x85BC,
- 0xCB6D, 0x85BD, 0xCB6E, 0x85BE, 0xCB6F, 0x85BF, 0xCB70, 0x85C0,
- 0xCB71, 0x85C2, 0xCB72, 0x85C3, 0xCB73, 0x85C4, 0xCB74, 0x85C5,
- 0xCB75, 0x85C6, 0xCB76, 0x85C7, 0xCB77, 0x85C8, 0xCB78, 0x85CA,
- 0xCB79, 0x85CB, 0xCB7A, 0x85CC, 0xCB7B, 0x85CD, 0xCB7C, 0x85CE,
- 0xCB7D, 0x85D1, 0xCB7E, 0x85D2, 0xCB80, 0x85D4, 0xCB81, 0x85D6,
- 0xCB82, 0x85D7, 0xCB83, 0x85D8, 0xCB84, 0x85D9, 0xCB85, 0x85DA,
- 0xCB86, 0x85DB, 0xCB87, 0x85DD, 0xCB88, 0x85DE, 0xCB89, 0x85DF,
- 0xCB8A, 0x85E0, 0xCB8B, 0x85E1, 0xCB8C, 0x85E2, 0xCB8D, 0x85E3,
- 0xCB8E, 0x85E5, 0xCB8F, 0x85E6, 0xCB90, 0x85E7, 0xCB91, 0x85E8,
- 0xCB92, 0x85EA, 0xCB93, 0x85EB, 0xCB94, 0x85EC, 0xCB95, 0x85ED,
- 0xCB96, 0x85EE, 0xCB97, 0x85EF, 0xCB98, 0x85F0, 0xCB99, 0x85F1,
- 0xCB9A, 0x85F2, 0xCB9B, 0x85F3, 0xCB9C, 0x85F4, 0xCB9D, 0x85F5,
- 0xCB9E, 0x85F6, 0xCB9F, 0x85F7, 0xCBA0, 0x85F8, 0xCBA1, 0x6055,
- 0xCBA2, 0x5237, 0xCBA3, 0x800D, 0xCBA4, 0x6454, 0xCBA5, 0x8870,
- 0xCBA6, 0x7529, 0xCBA7, 0x5E05, 0xCBA8, 0x6813, 0xCBA9, 0x62F4,
- 0xCBAA, 0x971C, 0xCBAB, 0x53CC, 0xCBAC, 0x723D, 0xCBAD, 0x8C01,
- 0xCBAE, 0x6C34, 0xCBAF, 0x7761, 0xCBB0, 0x7A0E, 0xCBB1, 0x542E,
- 0xCBB2, 0x77AC, 0xCBB3, 0x987A, 0xCBB4, 0x821C, 0xCBB5, 0x8BF4,
- 0xCBB6, 0x7855, 0xCBB7, 0x6714, 0xCBB8, 0x70C1, 0xCBB9, 0x65AF,
- 0xCBBA, 0x6495, 0xCBBB, 0x5636, 0xCBBC, 0x601D, 0xCBBD, 0x79C1,
- 0xCBBE, 0x53F8, 0xCBBF, 0x4E1D, 0xCBC0, 0x6B7B, 0xCBC1, 0x8086,
- 0xCBC2, 0x5BFA, 0xCBC3, 0x55E3, 0xCBC4, 0x56DB, 0xCBC5, 0x4F3A,
- 0xCBC6, 0x4F3C, 0xCBC7, 0x9972, 0xCBC8, 0x5DF3, 0xCBC9, 0x677E,
- 0xCBCA, 0x8038, 0xCBCB, 0x6002, 0xCBCC, 0x9882, 0xCBCD, 0x9001,
- 0xCBCE, 0x5B8B, 0xCBCF, 0x8BBC, 0xCBD0, 0x8BF5, 0xCBD1, 0x641C,
- 0xCBD2, 0x8258, 0xCBD3, 0x64DE, 0xCBD4, 0x55FD, 0xCBD5, 0x82CF,
- 0xCBD6, 0x9165, 0xCBD7, 0x4FD7, 0xCBD8, 0x7D20, 0xCBD9, 0x901F,
- 0xCBDA, 0x7C9F, 0xCBDB, 0x50F3, 0xCBDC, 0x5851, 0xCBDD, 0x6EAF,
- 0xCBDE, 0x5BBF, 0xCBDF, 0x8BC9, 0xCBE0, 0x8083, 0xCBE1, 0x9178,
- 0xCBE2, 0x849C, 0xCBE3, 0x7B97, 0xCBE4, 0x867D, 0xCBE5, 0x968B,
- 0xCBE6, 0x968F, 0xCBE7, 0x7EE5, 0xCBE8, 0x9AD3, 0xCBE9, 0x788E,
- 0xCBEA, 0x5C81, 0xCBEB, 0x7A57, 0xCBEC, 0x9042, 0xCBED, 0x96A7,
- 0xCBEE, 0x795F, 0xCBEF, 0x5B59, 0xCBF0, 0x635F, 0xCBF1, 0x7B0B,
- 0xCBF2, 0x84D1, 0xCBF3, 0x68AD, 0xCBF4, 0x5506, 0xCBF5, 0x7F29,
- 0xCBF6, 0x7410, 0xCBF7, 0x7D22, 0xCBF8, 0x9501, 0xCBF9, 0x6240,
- 0xCBFA, 0x584C, 0xCBFB, 0x4ED6, 0xCBFC, 0x5B83, 0xCBFD, 0x5979,
- 0xCBFE, 0x5854, 0xCC40, 0x85F9, 0xCC41, 0x85FA, 0xCC42, 0x85FC,
- 0xCC43, 0x85FD, 0xCC44, 0x85FE, 0xCC45, 0x8600, 0xCC46, 0x8601,
- 0xCC47, 0x8602, 0xCC48, 0x8603, 0xCC49, 0x8604, 0xCC4A, 0x8606,
- 0xCC4B, 0x8607, 0xCC4C, 0x8608, 0xCC4D, 0x8609, 0xCC4E, 0x860A,
- 0xCC4F, 0x860B, 0xCC50, 0x860C, 0xCC51, 0x860D, 0xCC52, 0x860E,
- 0xCC53, 0x860F, 0xCC54, 0x8610, 0xCC55, 0x8612, 0xCC56, 0x8613,
- 0xCC57, 0x8614, 0xCC58, 0x8615, 0xCC59, 0x8617, 0xCC5A, 0x8618,
- 0xCC5B, 0x8619, 0xCC5C, 0x861A, 0xCC5D, 0x861B, 0xCC5E, 0x861C,
- 0xCC5F, 0x861D, 0xCC60, 0x861E, 0xCC61, 0x861F, 0xCC62, 0x8620,
- 0xCC63, 0x8621, 0xCC64, 0x8622, 0xCC65, 0x8623, 0xCC66, 0x8624,
- 0xCC67, 0x8625, 0xCC68, 0x8626, 0xCC69, 0x8628, 0xCC6A, 0x862A,
- 0xCC6B, 0x862B, 0xCC6C, 0x862C, 0xCC6D, 0x862D, 0xCC6E, 0x862E,
- 0xCC6F, 0x862F, 0xCC70, 0x8630, 0xCC71, 0x8631, 0xCC72, 0x8632,
- 0xCC73, 0x8633, 0xCC74, 0x8634, 0xCC75, 0x8635, 0xCC76, 0x8636,
- 0xCC77, 0x8637, 0xCC78, 0x8639, 0xCC79, 0x863A, 0xCC7A, 0x863B,
- 0xCC7B, 0x863D, 0xCC7C, 0x863E, 0xCC7D, 0x863F, 0xCC7E, 0x8640,
- 0xCC80, 0x8641, 0xCC81, 0x8642, 0xCC82, 0x8643, 0xCC83, 0x8644,
- 0xCC84, 0x8645, 0xCC85, 0x8646, 0xCC86, 0x8647, 0xCC87, 0x8648,
- 0xCC88, 0x8649, 0xCC89, 0x864A, 0xCC8A, 0x864B, 0xCC8B, 0x864C,
- 0xCC8C, 0x8652, 0xCC8D, 0x8653, 0xCC8E, 0x8655, 0xCC8F, 0x8656,
- 0xCC90, 0x8657, 0xCC91, 0x8658, 0xCC92, 0x8659, 0xCC93, 0x865B,
- 0xCC94, 0x865C, 0xCC95, 0x865D, 0xCC96, 0x865F, 0xCC97, 0x8660,
- 0xCC98, 0x8661, 0xCC99, 0x8663, 0xCC9A, 0x8664, 0xCC9B, 0x8665,
- 0xCC9C, 0x8666, 0xCC9D, 0x8667, 0xCC9E, 0x8668, 0xCC9F, 0x8669,
- 0xCCA0, 0x866A, 0xCCA1, 0x736D, 0xCCA2, 0x631E, 0xCCA3, 0x8E4B,
- 0xCCA4, 0x8E0F, 0xCCA5, 0x80CE, 0xCCA6, 0x82D4, 0xCCA7, 0x62AC,
- 0xCCA8, 0x53F0, 0xCCA9, 0x6CF0, 0xCCAA, 0x915E, 0xCCAB, 0x592A,
- 0xCCAC, 0x6001, 0xCCAD, 0x6C70, 0xCCAE, 0x574D, 0xCCAF, 0x644A,
- 0xCCB0, 0x8D2A, 0xCCB1, 0x762B, 0xCCB2, 0x6EE9, 0xCCB3, 0x575B,
- 0xCCB4, 0x6A80, 0xCCB5, 0x75F0, 0xCCB6, 0x6F6D, 0xCCB7, 0x8C2D,
- 0xCCB8, 0x8C08, 0xCCB9, 0x5766, 0xCCBA, 0x6BEF, 0xCCBB, 0x8892,
- 0xCCBC, 0x78B3, 0xCCBD, 0x63A2, 0xCCBE, 0x53F9, 0xCCBF, 0x70AD,
- 0xCCC0, 0x6C64, 0xCCC1, 0x5858, 0xCCC2, 0x642A, 0xCCC3, 0x5802,
- 0xCCC4, 0x68E0, 0xCCC5, 0x819B, 0xCCC6, 0x5510, 0xCCC7, 0x7CD6,
- 0xCCC8, 0x5018, 0xCCC9, 0x8EBA, 0xCCCA, 0x6DCC, 0xCCCB, 0x8D9F,
- 0xCCCC, 0x70EB, 0xCCCD, 0x638F, 0xCCCE, 0x6D9B, 0xCCCF, 0x6ED4,
- 0xCCD0, 0x7EE6, 0xCCD1, 0x8404, 0xCCD2, 0x6843, 0xCCD3, 0x9003,
- 0xCCD4, 0x6DD8, 0xCCD5, 0x9676, 0xCCD6, 0x8BA8, 0xCCD7, 0x5957,
- 0xCCD8, 0x7279, 0xCCD9, 0x85E4, 0xCCDA, 0x817E, 0xCCDB, 0x75BC,
- 0xCCDC, 0x8A8A, 0xCCDD, 0x68AF, 0xCCDE, 0x5254, 0xCCDF, 0x8E22,
- 0xCCE0, 0x9511, 0xCCE1, 0x63D0, 0xCCE2, 0x9898, 0xCCE3, 0x8E44,
- 0xCCE4, 0x557C, 0xCCE5, 0x4F53, 0xCCE6, 0x66FF, 0xCCE7, 0x568F,
- 0xCCE8, 0x60D5, 0xCCE9, 0x6D95, 0xCCEA, 0x5243, 0xCCEB, 0x5C49,
- 0xCCEC, 0x5929, 0xCCED, 0x6DFB, 0xCCEE, 0x586B, 0xCCEF, 0x7530,
- 0xCCF0, 0x751C, 0xCCF1, 0x606C, 0xCCF2, 0x8214, 0xCCF3, 0x8146,
- 0xCCF4, 0x6311, 0xCCF5, 0x6761, 0xCCF6, 0x8FE2, 0xCCF7, 0x773A,
- 0xCCF8, 0x8DF3, 0xCCF9, 0x8D34, 0xCCFA, 0x94C1, 0xCCFB, 0x5E16,
- 0xCCFC, 0x5385, 0xCCFD, 0x542C, 0xCCFE, 0x70C3, 0xCD40, 0x866D,
- 0xCD41, 0x866F, 0xCD42, 0x8670, 0xCD43, 0x8672, 0xCD44, 0x8673,
- 0xCD45, 0x8674, 0xCD46, 0x8675, 0xCD47, 0x8676, 0xCD48, 0x8677,
- 0xCD49, 0x8678, 0xCD4A, 0x8683, 0xCD4B, 0x8684, 0xCD4C, 0x8685,
- 0xCD4D, 0x8686, 0xCD4E, 0x8687, 0xCD4F, 0x8688, 0xCD50, 0x8689,
- 0xCD51, 0x868E, 0xCD52, 0x868F, 0xCD53, 0x8690, 0xCD54, 0x8691,
- 0xCD55, 0x8692, 0xCD56, 0x8694, 0xCD57, 0x8696, 0xCD58, 0x8697,
- 0xCD59, 0x8698, 0xCD5A, 0x8699, 0xCD5B, 0x869A, 0xCD5C, 0x869B,
- 0xCD5D, 0x869E, 0xCD5E, 0x869F, 0xCD5F, 0x86A0, 0xCD60, 0x86A1,
- 0xCD61, 0x86A2, 0xCD62, 0x86A5, 0xCD63, 0x86A6, 0xCD64, 0x86AB,
- 0xCD65, 0x86AD, 0xCD66, 0x86AE, 0xCD67, 0x86B2, 0xCD68, 0x86B3,
- 0xCD69, 0x86B7, 0xCD6A, 0x86B8, 0xCD6B, 0x86B9, 0xCD6C, 0x86BB,
- 0xCD6D, 0x86BC, 0xCD6E, 0x86BD, 0xCD6F, 0x86BE, 0xCD70, 0x86BF,
- 0xCD71, 0x86C1, 0xCD72, 0x86C2, 0xCD73, 0x86C3, 0xCD74, 0x86C5,
- 0xCD75, 0x86C8, 0xCD76, 0x86CC, 0xCD77, 0x86CD, 0xCD78, 0x86D2,
- 0xCD79, 0x86D3, 0xCD7A, 0x86D5, 0xCD7B, 0x86D6, 0xCD7C, 0x86D7,
- 0xCD7D, 0x86DA, 0xCD7E, 0x86DC, 0xCD80, 0x86DD, 0xCD81, 0x86E0,
- 0xCD82, 0x86E1, 0xCD83, 0x86E2, 0xCD84, 0x86E3, 0xCD85, 0x86E5,
- 0xCD86, 0x86E6, 0xCD87, 0x86E7, 0xCD88, 0x86E8, 0xCD89, 0x86EA,
- 0xCD8A, 0x86EB, 0xCD8B, 0x86EC, 0xCD8C, 0x86EF, 0xCD8D, 0x86F5,
- 0xCD8E, 0x86F6, 0xCD8F, 0x86F7, 0xCD90, 0x86FA, 0xCD91, 0x86FB,
- 0xCD92, 0x86FC, 0xCD93, 0x86FD, 0xCD94, 0x86FF, 0xCD95, 0x8701,
- 0xCD96, 0x8704, 0xCD97, 0x8705, 0xCD98, 0x8706, 0xCD99, 0x870B,
- 0xCD9A, 0x870C, 0xCD9B, 0x870E, 0xCD9C, 0x870F, 0xCD9D, 0x8710,
- 0xCD9E, 0x8711, 0xCD9F, 0x8714, 0xCDA0, 0x8716, 0xCDA1, 0x6C40,
- 0xCDA2, 0x5EF7, 0xCDA3, 0x505C, 0xCDA4, 0x4EAD, 0xCDA5, 0x5EAD,
- 0xCDA6, 0x633A, 0xCDA7, 0x8247, 0xCDA8, 0x901A, 0xCDA9, 0x6850,
- 0xCDAA, 0x916E, 0xCDAB, 0x77B3, 0xCDAC, 0x540C, 0xCDAD, 0x94DC,
- 0xCDAE, 0x5F64, 0xCDAF, 0x7AE5, 0xCDB0, 0x6876, 0xCDB1, 0x6345,
- 0xCDB2, 0x7B52, 0xCDB3, 0x7EDF, 0xCDB4, 0x75DB, 0xCDB5, 0x5077,
- 0xCDB6, 0x6295, 0xCDB7, 0x5934, 0xCDB8, 0x900F, 0xCDB9, 0x51F8,
- 0xCDBA, 0x79C3, 0xCDBB, 0x7A81, 0xCDBC, 0x56FE, 0xCDBD, 0x5F92,
- 0xCDBE, 0x9014, 0xCDBF, 0x6D82, 0xCDC0, 0x5C60, 0xCDC1, 0x571F,
- 0xCDC2, 0x5410, 0xCDC3, 0x5154, 0xCDC4, 0x6E4D, 0xCDC5, 0x56E2,
- 0xCDC6, 0x63A8, 0xCDC7, 0x9893, 0xCDC8, 0x817F, 0xCDC9, 0x8715,
- 0xCDCA, 0x892A, 0xCDCB, 0x9000, 0xCDCC, 0x541E, 0xCDCD, 0x5C6F,
- 0xCDCE, 0x81C0, 0xCDCF, 0x62D6, 0xCDD0, 0x6258, 0xCDD1, 0x8131,
- 0xCDD2, 0x9E35, 0xCDD3, 0x9640, 0xCDD4, 0x9A6E, 0xCDD5, 0x9A7C,
- 0xCDD6, 0x692D, 0xCDD7, 0x59A5, 0xCDD8, 0x62D3, 0xCDD9, 0x553E,
- 0xCDDA, 0x6316, 0xCDDB, 0x54C7, 0xCDDC, 0x86D9, 0xCDDD, 0x6D3C,
- 0xCDDE, 0x5A03, 0xCDDF, 0x74E6, 0xCDE0, 0x889C, 0xCDE1, 0x6B6A,
- 0xCDE2, 0x5916, 0xCDE3, 0x8C4C, 0xCDE4, 0x5F2F, 0xCDE5, 0x6E7E,
- 0xCDE6, 0x73A9, 0xCDE7, 0x987D, 0xCDE8, 0x4E38, 0xCDE9, 0x70F7,
- 0xCDEA, 0x5B8C, 0xCDEB, 0x7897, 0xCDEC, 0x633D, 0xCDED, 0x665A,
- 0xCDEE, 0x7696, 0xCDEF, 0x60CB, 0xCDF0, 0x5B9B, 0xCDF1, 0x5A49,
- 0xCDF2, 0x4E07, 0xCDF3, 0x8155, 0xCDF4, 0x6C6A, 0xCDF5, 0x738B,
- 0xCDF6, 0x4EA1, 0xCDF7, 0x6789, 0xCDF8, 0x7F51, 0xCDF9, 0x5F80,
- 0xCDFA, 0x65FA, 0xCDFB, 0x671B, 0xCDFC, 0x5FD8, 0xCDFD, 0x5984,
- 0xCDFE, 0x5A01, 0xCE40, 0x8719, 0xCE41, 0x871B, 0xCE42, 0x871D,
- 0xCE43, 0x871F, 0xCE44, 0x8720, 0xCE45, 0x8724, 0xCE46, 0x8726,
- 0xCE47, 0x8727, 0xCE48, 0x8728, 0xCE49, 0x872A, 0xCE4A, 0x872B,
- 0xCE4B, 0x872C, 0xCE4C, 0x872D, 0xCE4D, 0x872F, 0xCE4E, 0x8730,
- 0xCE4F, 0x8732, 0xCE50, 0x8733, 0xCE51, 0x8735, 0xCE52, 0x8736,
- 0xCE53, 0x8738, 0xCE54, 0x8739, 0xCE55, 0x873A, 0xCE56, 0x873C,
- 0xCE57, 0x873D, 0xCE58, 0x8740, 0xCE59, 0x8741, 0xCE5A, 0x8742,
- 0xCE5B, 0x8743, 0xCE5C, 0x8744, 0xCE5D, 0x8745, 0xCE5E, 0x8746,
- 0xCE5F, 0x874A, 0xCE60, 0x874B, 0xCE61, 0x874D, 0xCE62, 0x874F,
- 0xCE63, 0x8750, 0xCE64, 0x8751, 0xCE65, 0x8752, 0xCE66, 0x8754,
- 0xCE67, 0x8755, 0xCE68, 0x8756, 0xCE69, 0x8758, 0xCE6A, 0x875A,
- 0xCE6B, 0x875B, 0xCE6C, 0x875C, 0xCE6D, 0x875D, 0xCE6E, 0x875E,
- 0xCE6F, 0x875F, 0xCE70, 0x8761, 0xCE71, 0x8762, 0xCE72, 0x8766,
- 0xCE73, 0x8767, 0xCE74, 0x8768, 0xCE75, 0x8769, 0xCE76, 0x876A,
- 0xCE77, 0x876B, 0xCE78, 0x876C, 0xCE79, 0x876D, 0xCE7A, 0x876F,
- 0xCE7B, 0x8771, 0xCE7C, 0x8772, 0xCE7D, 0x8773, 0xCE7E, 0x8775,
- 0xCE80, 0x8777, 0xCE81, 0x8778, 0xCE82, 0x8779, 0xCE83, 0x877A,
- 0xCE84, 0x877F, 0xCE85, 0x8780, 0xCE86, 0x8781, 0xCE87, 0x8784,
- 0xCE88, 0x8786, 0xCE89, 0x8787, 0xCE8A, 0x8789, 0xCE8B, 0x878A,
- 0xCE8C, 0x878C, 0xCE8D, 0x878E, 0xCE8E, 0x878F, 0xCE8F, 0x8790,
- 0xCE90, 0x8791, 0xCE91, 0x8792, 0xCE92, 0x8794, 0xCE93, 0x8795,
- 0xCE94, 0x8796, 0xCE95, 0x8798, 0xCE96, 0x8799, 0xCE97, 0x879A,
- 0xCE98, 0x879B, 0xCE99, 0x879C, 0xCE9A, 0x879D, 0xCE9B, 0x879E,
- 0xCE9C, 0x87A0, 0xCE9D, 0x87A1, 0xCE9E, 0x87A2, 0xCE9F, 0x87A3,
- 0xCEA0, 0x87A4, 0xCEA1, 0x5DCD, 0xCEA2, 0x5FAE, 0xCEA3, 0x5371,
- 0xCEA4, 0x97E6, 0xCEA5, 0x8FDD, 0xCEA6, 0x6845, 0xCEA7, 0x56F4,
- 0xCEA8, 0x552F, 0xCEA9, 0x60DF, 0xCEAA, 0x4E3A, 0xCEAB, 0x6F4D,
- 0xCEAC, 0x7EF4, 0xCEAD, 0x82C7, 0xCEAE, 0x840E, 0xCEAF, 0x59D4,
- 0xCEB0, 0x4F1F, 0xCEB1, 0x4F2A, 0xCEB2, 0x5C3E, 0xCEB3, 0x7EAC,
- 0xCEB4, 0x672A, 0xCEB5, 0x851A, 0xCEB6, 0x5473, 0xCEB7, 0x754F,
- 0xCEB8, 0x80C3, 0xCEB9, 0x5582, 0xCEBA, 0x9B4F, 0xCEBB, 0x4F4D,
- 0xCEBC, 0x6E2D, 0xCEBD, 0x8C13, 0xCEBE, 0x5C09, 0xCEBF, 0x6170,
- 0xCEC0, 0x536B, 0xCEC1, 0x761F, 0xCEC2, 0x6E29, 0xCEC3, 0x868A,
- 0xCEC4, 0x6587, 0xCEC5, 0x95FB, 0xCEC6, 0x7EB9, 0xCEC7, 0x543B,
- 0xCEC8, 0x7A33, 0xCEC9, 0x7D0A, 0xCECA, 0x95EE, 0xCECB, 0x55E1,
- 0xCECC, 0x7FC1, 0xCECD, 0x74EE, 0xCECE, 0x631D, 0xCECF, 0x8717,
- 0xCED0, 0x6DA1, 0xCED1, 0x7A9D, 0xCED2, 0x6211, 0xCED3, 0x65A1,
- 0xCED4, 0x5367, 0xCED5, 0x63E1, 0xCED6, 0x6C83, 0xCED7, 0x5DEB,
- 0xCED8, 0x545C, 0xCED9, 0x94A8, 0xCEDA, 0x4E4C, 0xCEDB, 0x6C61,
- 0xCEDC, 0x8BEC, 0xCEDD, 0x5C4B, 0xCEDE, 0x65E0, 0xCEDF, 0x829C,
- 0xCEE0, 0x68A7, 0xCEE1, 0x543E, 0xCEE2, 0x5434, 0xCEE3, 0x6BCB,
- 0xCEE4, 0x6B66, 0xCEE5, 0x4E94, 0xCEE6, 0x6342, 0xCEE7, 0x5348,
- 0xCEE8, 0x821E, 0xCEE9, 0x4F0D, 0xCEEA, 0x4FAE, 0xCEEB, 0x575E,
- 0xCEEC, 0x620A, 0xCEED, 0x96FE, 0xCEEE, 0x6664, 0xCEEF, 0x7269,
- 0xCEF0, 0x52FF, 0xCEF1, 0x52A1, 0xCEF2, 0x609F, 0xCEF3, 0x8BEF,
- 0xCEF4, 0x6614, 0xCEF5, 0x7199, 0xCEF6, 0x6790, 0xCEF7, 0x897F,
- 0xCEF8, 0x7852, 0xCEF9, 0x77FD, 0xCEFA, 0x6670, 0xCEFB, 0x563B,
- 0xCEFC, 0x5438, 0xCEFD, 0x9521, 0xCEFE, 0x727A, 0xCF40, 0x87A5,
- 0xCF41, 0x87A6, 0xCF42, 0x87A7, 0xCF43, 0x87A9, 0xCF44, 0x87AA,
- 0xCF45, 0x87AE, 0xCF46, 0x87B0, 0xCF47, 0x87B1, 0xCF48, 0x87B2,
- 0xCF49, 0x87B4, 0xCF4A, 0x87B6, 0xCF4B, 0x87B7, 0xCF4C, 0x87B8,
- 0xCF4D, 0x87B9, 0xCF4E, 0x87BB, 0xCF4F, 0x87BC, 0xCF50, 0x87BE,
- 0xCF51, 0x87BF, 0xCF52, 0x87C1, 0xCF53, 0x87C2, 0xCF54, 0x87C3,
- 0xCF55, 0x87C4, 0xCF56, 0x87C5, 0xCF57, 0x87C7, 0xCF58, 0x87C8,
- 0xCF59, 0x87C9, 0xCF5A, 0x87CC, 0xCF5B, 0x87CD, 0xCF5C, 0x87CE,
- 0xCF5D, 0x87CF, 0xCF5E, 0x87D0, 0xCF5F, 0x87D4, 0xCF60, 0x87D5,
- 0xCF61, 0x87D6, 0xCF62, 0x87D7, 0xCF63, 0x87D8, 0xCF64, 0x87D9,
- 0xCF65, 0x87DA, 0xCF66, 0x87DC, 0xCF67, 0x87DD, 0xCF68, 0x87DE,
- 0xCF69, 0x87DF, 0xCF6A, 0x87E1, 0xCF6B, 0x87E2, 0xCF6C, 0x87E3,
- 0xCF6D, 0x87E4, 0xCF6E, 0x87E6, 0xCF6F, 0x87E7, 0xCF70, 0x87E8,
- 0xCF71, 0x87E9, 0xCF72, 0x87EB, 0xCF73, 0x87EC, 0xCF74, 0x87ED,
- 0xCF75, 0x87EF, 0xCF76, 0x87F0, 0xCF77, 0x87F1, 0xCF78, 0x87F2,
- 0xCF79, 0x87F3, 0xCF7A, 0x87F4, 0xCF7B, 0x87F5, 0xCF7C, 0x87F6,
- 0xCF7D, 0x87F7, 0xCF7E, 0x87F8, 0xCF80, 0x87FA, 0xCF81, 0x87FB,
- 0xCF82, 0x87FC, 0xCF83, 0x87FD, 0xCF84, 0x87FF, 0xCF85, 0x8800,
- 0xCF86, 0x8801, 0xCF87, 0x8802, 0xCF88, 0x8804, 0xCF89, 0x8805,
- 0xCF8A, 0x8806, 0xCF8B, 0x8807, 0xCF8C, 0x8808, 0xCF8D, 0x8809,
- 0xCF8E, 0x880B, 0xCF8F, 0x880C, 0xCF90, 0x880D, 0xCF91, 0x880E,
- 0xCF92, 0x880F, 0xCF93, 0x8810, 0xCF94, 0x8811, 0xCF95, 0x8812,
- 0xCF96, 0x8814, 0xCF97, 0x8817, 0xCF98, 0x8818, 0xCF99, 0x8819,
- 0xCF9A, 0x881A, 0xCF9B, 0x881C, 0xCF9C, 0x881D, 0xCF9D, 0x881E,
- 0xCF9E, 0x881F, 0xCF9F, 0x8820, 0xCFA0, 0x8823, 0xCFA1, 0x7A00,
- 0xCFA2, 0x606F, 0xCFA3, 0x5E0C, 0xCFA4, 0x6089, 0xCFA5, 0x819D,
- 0xCFA6, 0x5915, 0xCFA7, 0x60DC, 0xCFA8, 0x7184, 0xCFA9, 0x70EF,
- 0xCFAA, 0x6EAA, 0xCFAB, 0x6C50, 0xCFAC, 0x7280, 0xCFAD, 0x6A84,
- 0xCFAE, 0x88AD, 0xCFAF, 0x5E2D, 0xCFB0, 0x4E60, 0xCFB1, 0x5AB3,
- 0xCFB2, 0x559C, 0xCFB3, 0x94E3, 0xCFB4, 0x6D17, 0xCFB5, 0x7CFB,
- 0xCFB6, 0x9699, 0xCFB7, 0x620F, 0xCFB8, 0x7EC6, 0xCFB9, 0x778E,
- 0xCFBA, 0x867E, 0xCFBB, 0x5323, 0xCFBC, 0x971E, 0xCFBD, 0x8F96,
- 0xCFBE, 0x6687, 0xCFBF, 0x5CE1, 0xCFC0, 0x4FA0, 0xCFC1, 0x72ED,
- 0xCFC2, 0x4E0B, 0xCFC3, 0x53A6, 0xCFC4, 0x590F, 0xCFC5, 0x5413,
- 0xCFC6, 0x6380, 0xCFC7, 0x9528, 0xCFC8, 0x5148, 0xCFC9, 0x4ED9,
- 0xCFCA, 0x9C9C, 0xCFCB, 0x7EA4, 0xCFCC, 0x54B8, 0xCFCD, 0x8D24,
- 0xCFCE, 0x8854, 0xCFCF, 0x8237, 0xCFD0, 0x95F2, 0xCFD1, 0x6D8E,
- 0xCFD2, 0x5F26, 0xCFD3, 0x5ACC, 0xCFD4, 0x663E, 0xCFD5, 0x9669,
- 0xCFD6, 0x73B0, 0xCFD7, 0x732E, 0xCFD8, 0x53BF, 0xCFD9, 0x817A,
- 0xCFDA, 0x9985, 0xCFDB, 0x7FA1, 0xCFDC, 0x5BAA, 0xCFDD, 0x9677,
- 0xCFDE, 0x9650, 0xCFDF, 0x7EBF, 0xCFE0, 0x76F8, 0xCFE1, 0x53A2,
- 0xCFE2, 0x9576, 0xCFE3, 0x9999, 0xCFE4, 0x7BB1, 0xCFE5, 0x8944,
- 0xCFE6, 0x6E58, 0xCFE7, 0x4E61, 0xCFE8, 0x7FD4, 0xCFE9, 0x7965,
- 0xCFEA, 0x8BE6, 0xCFEB, 0x60F3, 0xCFEC, 0x54CD, 0xCFED, 0x4EAB,
- 0xCFEE, 0x9879, 0xCFEF, 0x5DF7, 0xCFF0, 0x6A61, 0xCFF1, 0x50CF,
- 0xCFF2, 0x5411, 0xCFF3, 0x8C61, 0xCFF4, 0x8427, 0xCFF5, 0x785D,
- 0xCFF6, 0x9704, 0xCFF7, 0x524A, 0xCFF8, 0x54EE, 0xCFF9, 0x56A3,
- 0xCFFA, 0x9500, 0xCFFB, 0x6D88, 0xCFFC, 0x5BB5, 0xCFFD, 0x6DC6,
- 0xCFFE, 0x6653, 0xD040, 0x8824, 0xD041, 0x8825, 0xD042, 0x8826,
- 0xD043, 0x8827, 0xD044, 0x8828, 0xD045, 0x8829, 0xD046, 0x882A,
- 0xD047, 0x882B, 0xD048, 0x882C, 0xD049, 0x882D, 0xD04A, 0x882E,
- 0xD04B, 0x882F, 0xD04C, 0x8830, 0xD04D, 0x8831, 0xD04E, 0x8833,
- 0xD04F, 0x8834, 0xD050, 0x8835, 0xD051, 0x8836, 0xD052, 0x8837,
- 0xD053, 0x8838, 0xD054, 0x883A, 0xD055, 0x883B, 0xD056, 0x883D,
- 0xD057, 0x883E, 0xD058, 0x883F, 0xD059, 0x8841, 0xD05A, 0x8842,
- 0xD05B, 0x8843, 0xD05C, 0x8846, 0xD05D, 0x8847, 0xD05E, 0x8848,
- 0xD05F, 0x8849, 0xD060, 0x884A, 0xD061, 0x884B, 0xD062, 0x884E,
- 0xD063, 0x884F, 0xD064, 0x8850, 0xD065, 0x8851, 0xD066, 0x8852,
- 0xD067, 0x8853, 0xD068, 0x8855, 0xD069, 0x8856, 0xD06A, 0x8858,
- 0xD06B, 0x885A, 0xD06C, 0x885B, 0xD06D, 0x885C, 0xD06E, 0x885D,
- 0xD06F, 0x885E, 0xD070, 0x885F, 0xD071, 0x8860, 0xD072, 0x8866,
- 0xD073, 0x8867, 0xD074, 0x886A, 0xD075, 0x886D, 0xD076, 0x886F,
- 0xD077, 0x8871, 0xD078, 0x8873, 0xD079, 0x8874, 0xD07A, 0x8875,
- 0xD07B, 0x8876, 0xD07C, 0x8878, 0xD07D, 0x8879, 0xD07E, 0x887A,
- 0xD080, 0x887B, 0xD081, 0x887C, 0xD082, 0x8880, 0xD083, 0x8883,
- 0xD084, 0x8886, 0xD085, 0x8887, 0xD086, 0x8889, 0xD087, 0x888A,
- 0xD088, 0x888C, 0xD089, 0x888E, 0xD08A, 0x888F, 0xD08B, 0x8890,
- 0xD08C, 0x8891, 0xD08D, 0x8893, 0xD08E, 0x8894, 0xD08F, 0x8895,
- 0xD090, 0x8897, 0xD091, 0x8898, 0xD092, 0x8899, 0xD093, 0x889A,
- 0xD094, 0x889B, 0xD095, 0x889D, 0xD096, 0x889E, 0xD097, 0x889F,
- 0xD098, 0x88A0, 0xD099, 0x88A1, 0xD09A, 0x88A3, 0xD09B, 0x88A5,
- 0xD09C, 0x88A6, 0xD09D, 0x88A7, 0xD09E, 0x88A8, 0xD09F, 0x88A9,
- 0xD0A0, 0x88AA, 0xD0A1, 0x5C0F, 0xD0A2, 0x5B5D, 0xD0A3, 0x6821,
- 0xD0A4, 0x8096, 0xD0A5, 0x5578, 0xD0A6, 0x7B11, 0xD0A7, 0x6548,
- 0xD0A8, 0x6954, 0xD0A9, 0x4E9B, 0xD0AA, 0x6B47, 0xD0AB, 0x874E,
- 0xD0AC, 0x978B, 0xD0AD, 0x534F, 0xD0AE, 0x631F, 0xD0AF, 0x643A,
- 0xD0B0, 0x90AA, 0xD0B1, 0x659C, 0xD0B2, 0x80C1, 0xD0B3, 0x8C10,
- 0xD0B4, 0x5199, 0xD0B5, 0x68B0, 0xD0B6, 0x5378, 0xD0B7, 0x87F9,
- 0xD0B8, 0x61C8, 0xD0B9, 0x6CC4, 0xD0BA, 0x6CFB, 0xD0BB, 0x8C22,
- 0xD0BC, 0x5C51, 0xD0BD, 0x85AA, 0xD0BE, 0x82AF, 0xD0BF, 0x950C,
- 0xD0C0, 0x6B23, 0xD0C1, 0x8F9B, 0xD0C2, 0x65B0, 0xD0C3, 0x5FFB,
- 0xD0C4, 0x5FC3, 0xD0C5, 0x4FE1, 0xD0C6, 0x8845, 0xD0C7, 0x661F,
- 0xD0C8, 0x8165, 0xD0C9, 0x7329, 0xD0CA, 0x60FA, 0xD0CB, 0x5174,
- 0xD0CC, 0x5211, 0xD0CD, 0x578B, 0xD0CE, 0x5F62, 0xD0CF, 0x90A2,
- 0xD0D0, 0x884C, 0xD0D1, 0x9192, 0xD0D2, 0x5E78, 0xD0D3, 0x674F,
- 0xD0D4, 0x6027, 0xD0D5, 0x59D3, 0xD0D6, 0x5144, 0xD0D7, 0x51F6,
- 0xD0D8, 0x80F8, 0xD0D9, 0x5308, 0xD0DA, 0x6C79, 0xD0DB, 0x96C4,
- 0xD0DC, 0x718A, 0xD0DD, 0x4F11, 0xD0DE, 0x4FEE, 0xD0DF, 0x7F9E,
- 0xD0E0, 0x673D, 0xD0E1, 0x55C5, 0xD0E2, 0x9508, 0xD0E3, 0x79C0,
- 0xD0E4, 0x8896, 0xD0E5, 0x7EE3, 0xD0E6, 0x589F, 0xD0E7, 0x620C,
- 0xD0E8, 0x9700, 0xD0E9, 0x865A, 0xD0EA, 0x5618, 0xD0EB, 0x987B,
- 0xD0EC, 0x5F90, 0xD0ED, 0x8BB8, 0xD0EE, 0x84C4, 0xD0EF, 0x9157,
- 0xD0F0, 0x53D9, 0xD0F1, 0x65ED, 0xD0F2, 0x5E8F, 0xD0F3, 0x755C,
- 0xD0F4, 0x6064, 0xD0F5, 0x7D6E, 0xD0F6, 0x5A7F, 0xD0F7, 0x7EEA,
- 0xD0F8, 0x7EED, 0xD0F9, 0x8F69, 0xD0FA, 0x55A7, 0xD0FB, 0x5BA3,
- 0xD0FC, 0x60AC, 0xD0FD, 0x65CB, 0xD0FE, 0x7384, 0xD140, 0x88AC,
- 0xD141, 0x88AE, 0xD142, 0x88AF, 0xD143, 0x88B0, 0xD144, 0x88B2,
- 0xD145, 0x88B3, 0xD146, 0x88B4, 0xD147, 0x88B5, 0xD148, 0x88B6,
- 0xD149, 0x88B8, 0xD14A, 0x88B9, 0xD14B, 0x88BA, 0xD14C, 0x88BB,
- 0xD14D, 0x88BD, 0xD14E, 0x88BE, 0xD14F, 0x88BF, 0xD150, 0x88C0,
- 0xD151, 0x88C3, 0xD152, 0x88C4, 0xD153, 0x88C7, 0xD154, 0x88C8,
- 0xD155, 0x88CA, 0xD156, 0x88CB, 0xD157, 0x88CC, 0xD158, 0x88CD,
- 0xD159, 0x88CF, 0xD15A, 0x88D0, 0xD15B, 0x88D1, 0xD15C, 0x88D3,
- 0xD15D, 0x88D6, 0xD15E, 0x88D7, 0xD15F, 0x88DA, 0xD160, 0x88DB,
- 0xD161, 0x88DC, 0xD162, 0x88DD, 0xD163, 0x88DE, 0xD164, 0x88E0,
- 0xD165, 0x88E1, 0xD166, 0x88E6, 0xD167, 0x88E7, 0xD168, 0x88E9,
- 0xD169, 0x88EA, 0xD16A, 0x88EB, 0xD16B, 0x88EC, 0xD16C, 0x88ED,
- 0xD16D, 0x88EE, 0xD16E, 0x88EF, 0xD16F, 0x88F2, 0xD170, 0x88F5,
- 0xD171, 0x88F6, 0xD172, 0x88F7, 0xD173, 0x88FA, 0xD174, 0x88FB,
- 0xD175, 0x88FD, 0xD176, 0x88FF, 0xD177, 0x8900, 0xD178, 0x8901,
- 0xD179, 0x8903, 0xD17A, 0x8904, 0xD17B, 0x8905, 0xD17C, 0x8906,
- 0xD17D, 0x8907, 0xD17E, 0x8908, 0xD180, 0x8909, 0xD181, 0x890B,
- 0xD182, 0x890C, 0xD183, 0x890D, 0xD184, 0x890E, 0xD185, 0x890F,
- 0xD186, 0x8911, 0xD187, 0x8914, 0xD188, 0x8915, 0xD189, 0x8916,
- 0xD18A, 0x8917, 0xD18B, 0x8918, 0xD18C, 0x891C, 0xD18D, 0x891D,
- 0xD18E, 0x891E, 0xD18F, 0x891F, 0xD190, 0x8920, 0xD191, 0x8922,
- 0xD192, 0x8923, 0xD193, 0x8924, 0xD194, 0x8926, 0xD195, 0x8927,
- 0xD196, 0x8928, 0xD197, 0x8929, 0xD198, 0x892C, 0xD199, 0x892D,
- 0xD19A, 0x892E, 0xD19B, 0x892F, 0xD19C, 0x8931, 0xD19D, 0x8932,
- 0xD19E, 0x8933, 0xD19F, 0x8935, 0xD1A0, 0x8937, 0xD1A1, 0x9009,
- 0xD1A2, 0x7663, 0xD1A3, 0x7729, 0xD1A4, 0x7EDA, 0xD1A5, 0x9774,
- 0xD1A6, 0x859B, 0xD1A7, 0x5B66, 0xD1A8, 0x7A74, 0xD1A9, 0x96EA,
- 0xD1AA, 0x8840, 0xD1AB, 0x52CB, 0xD1AC, 0x718F, 0xD1AD, 0x5FAA,
- 0xD1AE, 0x65EC, 0xD1AF, 0x8BE2, 0xD1B0, 0x5BFB, 0xD1B1, 0x9A6F,
- 0xD1B2, 0x5DE1, 0xD1B3, 0x6B89, 0xD1B4, 0x6C5B, 0xD1B5, 0x8BAD,
- 0xD1B6, 0x8BAF, 0xD1B7, 0x900A, 0xD1B8, 0x8FC5, 0xD1B9, 0x538B,
- 0xD1BA, 0x62BC, 0xD1BB, 0x9E26, 0xD1BC, 0x9E2D, 0xD1BD, 0x5440,
- 0xD1BE, 0x4E2B, 0xD1BF, 0x82BD, 0xD1C0, 0x7259, 0xD1C1, 0x869C,
- 0xD1C2, 0x5D16, 0xD1C3, 0x8859, 0xD1C4, 0x6DAF, 0xD1C5, 0x96C5,
- 0xD1C6, 0x54D1, 0xD1C7, 0x4E9A, 0xD1C8, 0x8BB6, 0xD1C9, 0x7109,
- 0xD1CA, 0x54BD, 0xD1CB, 0x9609, 0xD1CC, 0x70DF, 0xD1CD, 0x6DF9,
- 0xD1CE, 0x76D0, 0xD1CF, 0x4E25, 0xD1D0, 0x7814, 0xD1D1, 0x8712,
- 0xD1D2, 0x5CA9, 0xD1D3, 0x5EF6, 0xD1D4, 0x8A00, 0xD1D5, 0x989C,
- 0xD1D6, 0x960E, 0xD1D7, 0x708E, 0xD1D8, 0x6CBF, 0xD1D9, 0x5944,
- 0xD1DA, 0x63A9, 0xD1DB, 0x773C, 0xD1DC, 0x884D, 0xD1DD, 0x6F14,
- 0xD1DE, 0x8273, 0xD1DF, 0x5830, 0xD1E0, 0x71D5, 0xD1E1, 0x538C,
- 0xD1E2, 0x781A, 0xD1E3, 0x96C1, 0xD1E4, 0x5501, 0xD1E5, 0x5F66,
- 0xD1E6, 0x7130, 0xD1E7, 0x5BB4, 0xD1E8, 0x8C1A, 0xD1E9, 0x9A8C,
- 0xD1EA, 0x6B83, 0xD1EB, 0x592E, 0xD1EC, 0x9E2F, 0xD1ED, 0x79E7,
- 0xD1EE, 0x6768, 0xD1EF, 0x626C, 0xD1F0, 0x4F6F, 0xD1F1, 0x75A1,
- 0xD1F2, 0x7F8A, 0xD1F3, 0x6D0B, 0xD1F4, 0x9633, 0xD1F5, 0x6C27,
- 0xD1F6, 0x4EF0, 0xD1F7, 0x75D2, 0xD1F8, 0x517B, 0xD1F9, 0x6837,
- 0xD1FA, 0x6F3E, 0xD1FB, 0x9080, 0xD1FC, 0x8170, 0xD1FD, 0x5996,
- 0xD1FE, 0x7476, 0xD240, 0x8938, 0xD241, 0x8939, 0xD242, 0x893A,
- 0xD243, 0x893B, 0xD244, 0x893C, 0xD245, 0x893D, 0xD246, 0x893E,
- 0xD247, 0x893F, 0xD248, 0x8940, 0xD249, 0x8942, 0xD24A, 0x8943,
- 0xD24B, 0x8945, 0xD24C, 0x8946, 0xD24D, 0x8947, 0xD24E, 0x8948,
- 0xD24F, 0x8949, 0xD250, 0x894A, 0xD251, 0x894B, 0xD252, 0x894C,
- 0xD253, 0x894D, 0xD254, 0x894E, 0xD255, 0x894F, 0xD256, 0x8950,
- 0xD257, 0x8951, 0xD258, 0x8952, 0xD259, 0x8953, 0xD25A, 0x8954,
- 0xD25B, 0x8955, 0xD25C, 0x8956, 0xD25D, 0x8957, 0xD25E, 0x8958,
- 0xD25F, 0x8959, 0xD260, 0x895A, 0xD261, 0x895B, 0xD262, 0x895C,
- 0xD263, 0x895D, 0xD264, 0x8960, 0xD265, 0x8961, 0xD266, 0x8962,
- 0xD267, 0x8963, 0xD268, 0x8964, 0xD269, 0x8965, 0xD26A, 0x8967,
- 0xD26B, 0x8968, 0xD26C, 0x8969, 0xD26D, 0x896A, 0xD26E, 0x896B,
- 0xD26F, 0x896C, 0xD270, 0x896D, 0xD271, 0x896E, 0xD272, 0x896F,
- 0xD273, 0x8970, 0xD274, 0x8971, 0xD275, 0x8972, 0xD276, 0x8973,
- 0xD277, 0x8974, 0xD278, 0x8975, 0xD279, 0x8976, 0xD27A, 0x8977,
- 0xD27B, 0x8978, 0xD27C, 0x8979, 0xD27D, 0x897A, 0xD27E, 0x897C,
- 0xD280, 0x897D, 0xD281, 0x897E, 0xD282, 0x8980, 0xD283, 0x8982,
- 0xD284, 0x8984, 0xD285, 0x8985, 0xD286, 0x8987, 0xD287, 0x8988,
- 0xD288, 0x8989, 0xD289, 0x898A, 0xD28A, 0x898B, 0xD28B, 0x898C,
- 0xD28C, 0x898D, 0xD28D, 0x898E, 0xD28E, 0x898F, 0xD28F, 0x8990,
- 0xD290, 0x8991, 0xD291, 0x8992, 0xD292, 0x8993, 0xD293, 0x8994,
- 0xD294, 0x8995, 0xD295, 0x8996, 0xD296, 0x8997, 0xD297, 0x8998,
- 0xD298, 0x8999, 0xD299, 0x899A, 0xD29A, 0x899B, 0xD29B, 0x899C,
- 0xD29C, 0x899D, 0xD29D, 0x899E, 0xD29E, 0x899F, 0xD29F, 0x89A0,
- 0xD2A0, 0x89A1, 0xD2A1, 0x6447, 0xD2A2, 0x5C27, 0xD2A3, 0x9065,
- 0xD2A4, 0x7A91, 0xD2A5, 0x8C23, 0xD2A6, 0x59DA, 0xD2A7, 0x54AC,
- 0xD2A8, 0x8200, 0xD2A9, 0x836F, 0xD2AA, 0x8981, 0xD2AB, 0x8000,
- 0xD2AC, 0x6930, 0xD2AD, 0x564E, 0xD2AE, 0x8036, 0xD2AF, 0x7237,
- 0xD2B0, 0x91CE, 0xD2B1, 0x51B6, 0xD2B2, 0x4E5F, 0xD2B3, 0x9875,
- 0xD2B4, 0x6396, 0xD2B5, 0x4E1A, 0xD2B6, 0x53F6, 0xD2B7, 0x66F3,
- 0xD2B8, 0x814B, 0xD2B9, 0x591C, 0xD2BA, 0x6DB2, 0xD2BB, 0x4E00,
- 0xD2BC, 0x58F9, 0xD2BD, 0x533B, 0xD2BE, 0x63D6, 0xD2BF, 0x94F1,
- 0xD2C0, 0x4F9D, 0xD2C1, 0x4F0A, 0xD2C2, 0x8863, 0xD2C3, 0x9890,
- 0xD2C4, 0x5937, 0xD2C5, 0x9057, 0xD2C6, 0x79FB, 0xD2C7, 0x4EEA,
- 0xD2C8, 0x80F0, 0xD2C9, 0x7591, 0xD2CA, 0x6C82, 0xD2CB, 0x5B9C,
- 0xD2CC, 0x59E8, 0xD2CD, 0x5F5D, 0xD2CE, 0x6905, 0xD2CF, 0x8681,
- 0xD2D0, 0x501A, 0xD2D1, 0x5DF2, 0xD2D2, 0x4E59, 0xD2D3, 0x77E3,
- 0xD2D4, 0x4EE5, 0xD2D5, 0x827A, 0xD2D6, 0x6291, 0xD2D7, 0x6613,
- 0xD2D8, 0x9091, 0xD2D9, 0x5C79, 0xD2DA, 0x4EBF, 0xD2DB, 0x5F79,
- 0xD2DC, 0x81C6, 0xD2DD, 0x9038, 0xD2DE, 0x8084, 0xD2DF, 0x75AB,
- 0xD2E0, 0x4EA6, 0xD2E1, 0x88D4, 0xD2E2, 0x610F, 0xD2E3, 0x6BC5,
- 0xD2E4, 0x5FC6, 0xD2E5, 0x4E49, 0xD2E6, 0x76CA, 0xD2E7, 0x6EA2,
- 0xD2E8, 0x8BE3, 0xD2E9, 0x8BAE, 0xD2EA, 0x8C0A, 0xD2EB, 0x8BD1,
- 0xD2EC, 0x5F02, 0xD2ED, 0x7FFC, 0xD2EE, 0x7FCC, 0xD2EF, 0x7ECE,
- 0xD2F0, 0x8335, 0xD2F1, 0x836B, 0xD2F2, 0x56E0, 0xD2F3, 0x6BB7,
- 0xD2F4, 0x97F3, 0xD2F5, 0x9634, 0xD2F6, 0x59FB, 0xD2F7, 0x541F,
- 0xD2F8, 0x94F6, 0xD2F9, 0x6DEB, 0xD2FA, 0x5BC5, 0xD2FB, 0x996E,
- 0xD2FC, 0x5C39, 0xD2FD, 0x5F15, 0xD2FE, 0x9690, 0xD340, 0x89A2,
- 0xD341, 0x89A3, 0xD342, 0x89A4, 0xD343, 0x89A5, 0xD344, 0x89A6,
- 0xD345, 0x89A7, 0xD346, 0x89A8, 0xD347, 0x89A9, 0xD348, 0x89AA,
- 0xD349, 0x89AB, 0xD34A, 0x89AC, 0xD34B, 0x89AD, 0xD34C, 0x89AE,
- 0xD34D, 0x89AF, 0xD34E, 0x89B0, 0xD34F, 0x89B1, 0xD350, 0x89B2,
- 0xD351, 0x89B3, 0xD352, 0x89B4, 0xD353, 0x89B5, 0xD354, 0x89B6,
- 0xD355, 0x89B7, 0xD356, 0x89B8, 0xD357, 0x89B9, 0xD358, 0x89BA,
- 0xD359, 0x89BB, 0xD35A, 0x89BC, 0xD35B, 0x89BD, 0xD35C, 0x89BE,
- 0xD35D, 0x89BF, 0xD35E, 0x89C0, 0xD35F, 0x89C3, 0xD360, 0x89CD,
- 0xD361, 0x89D3, 0xD362, 0x89D4, 0xD363, 0x89D5, 0xD364, 0x89D7,
- 0xD365, 0x89D8, 0xD366, 0x89D9, 0xD367, 0x89DB, 0xD368, 0x89DD,
- 0xD369, 0x89DF, 0xD36A, 0x89E0, 0xD36B, 0x89E1, 0xD36C, 0x89E2,
- 0xD36D, 0x89E4, 0xD36E, 0x89E7, 0xD36F, 0x89E8, 0xD370, 0x89E9,
- 0xD371, 0x89EA, 0xD372, 0x89EC, 0xD373, 0x89ED, 0xD374, 0x89EE,
- 0xD375, 0x89F0, 0xD376, 0x89F1, 0xD377, 0x89F2, 0xD378, 0x89F4,
- 0xD379, 0x89F5, 0xD37A, 0x89F6, 0xD37B, 0x89F7, 0xD37C, 0x89F8,
- 0xD37D, 0x89F9, 0xD37E, 0x89FA, 0xD380, 0x89FB, 0xD381, 0x89FC,
- 0xD382, 0x89FD, 0xD383, 0x89FE, 0xD384, 0x89FF, 0xD385, 0x8A01,
- 0xD386, 0x8A02, 0xD387, 0x8A03, 0xD388, 0x8A04, 0xD389, 0x8A05,
- 0xD38A, 0x8A06, 0xD38B, 0x8A08, 0xD38C, 0x8A09, 0xD38D, 0x8A0A,
- 0xD38E, 0x8A0B, 0xD38F, 0x8A0C, 0xD390, 0x8A0D, 0xD391, 0x8A0E,
- 0xD392, 0x8A0F, 0xD393, 0x8A10, 0xD394, 0x8A11, 0xD395, 0x8A12,
- 0xD396, 0x8A13, 0xD397, 0x8A14, 0xD398, 0x8A15, 0xD399, 0x8A16,
- 0xD39A, 0x8A17, 0xD39B, 0x8A18, 0xD39C, 0x8A19, 0xD39D, 0x8A1A,
- 0xD39E, 0x8A1B, 0xD39F, 0x8A1C, 0xD3A0, 0x8A1D, 0xD3A1, 0x5370,
- 0xD3A2, 0x82F1, 0xD3A3, 0x6A31, 0xD3A4, 0x5A74, 0xD3A5, 0x9E70,
- 0xD3A6, 0x5E94, 0xD3A7, 0x7F28, 0xD3A8, 0x83B9, 0xD3A9, 0x8424,
- 0xD3AA, 0x8425, 0xD3AB, 0x8367, 0xD3AC, 0x8747, 0xD3AD, 0x8FCE,
- 0xD3AE, 0x8D62, 0xD3AF, 0x76C8, 0xD3B0, 0x5F71, 0xD3B1, 0x9896,
- 0xD3B2, 0x786C, 0xD3B3, 0x6620, 0xD3B4, 0x54DF, 0xD3B5, 0x62E5,
- 0xD3B6, 0x4F63, 0xD3B7, 0x81C3, 0xD3B8, 0x75C8, 0xD3B9, 0x5EB8,
- 0xD3BA, 0x96CD, 0xD3BB, 0x8E0A, 0xD3BC, 0x86F9, 0xD3BD, 0x548F,
- 0xD3BE, 0x6CF3, 0xD3BF, 0x6D8C, 0xD3C0, 0x6C38, 0xD3C1, 0x607F,
- 0xD3C2, 0x52C7, 0xD3C3, 0x7528, 0xD3C4, 0x5E7D, 0xD3C5, 0x4F18,
- 0xD3C6, 0x60A0, 0xD3C7, 0x5FE7, 0xD3C8, 0x5C24, 0xD3C9, 0x7531,
- 0xD3CA, 0x90AE, 0xD3CB, 0x94C0, 0xD3CC, 0x72B9, 0xD3CD, 0x6CB9,
- 0xD3CE, 0x6E38, 0xD3CF, 0x9149, 0xD3D0, 0x6709, 0xD3D1, 0x53CB,
- 0xD3D2, 0x53F3, 0xD3D3, 0x4F51, 0xD3D4, 0x91C9, 0xD3D5, 0x8BF1,
- 0xD3D6, 0x53C8, 0xD3D7, 0x5E7C, 0xD3D8, 0x8FC2, 0xD3D9, 0x6DE4,
- 0xD3DA, 0x4E8E, 0xD3DB, 0x76C2, 0xD3DC, 0x6986, 0xD3DD, 0x865E,
- 0xD3DE, 0x611A, 0xD3DF, 0x8206, 0xD3E0, 0x4F59, 0xD3E1, 0x4FDE,
- 0xD3E2, 0x903E, 0xD3E3, 0x9C7C, 0xD3E4, 0x6109, 0xD3E5, 0x6E1D,
- 0xD3E6, 0x6E14, 0xD3E7, 0x9685, 0xD3E8, 0x4E88, 0xD3E9, 0x5A31,
- 0xD3EA, 0x96E8, 0xD3EB, 0x4E0E, 0xD3EC, 0x5C7F, 0xD3ED, 0x79B9,
- 0xD3EE, 0x5B87, 0xD3EF, 0x8BED, 0xD3F0, 0x7FBD, 0xD3F1, 0x7389,
- 0xD3F2, 0x57DF, 0xD3F3, 0x828B, 0xD3F4, 0x90C1, 0xD3F5, 0x5401,
- 0xD3F6, 0x9047, 0xD3F7, 0x55BB, 0xD3F8, 0x5CEA, 0xD3F9, 0x5FA1,
- 0xD3FA, 0x6108, 0xD3FB, 0x6B32, 0xD3FC, 0x72F1, 0xD3FD, 0x80B2,
- 0xD3FE, 0x8A89, 0xD440, 0x8A1E, 0xD441, 0x8A1F, 0xD442, 0x8A20,
- 0xD443, 0x8A21, 0xD444, 0x8A22, 0xD445, 0x8A23, 0xD446, 0x8A24,
- 0xD447, 0x8A25, 0xD448, 0x8A26, 0xD449, 0x8A27, 0xD44A, 0x8A28,
- 0xD44B, 0x8A29, 0xD44C, 0x8A2A, 0xD44D, 0x8A2B, 0xD44E, 0x8A2C,
- 0xD44F, 0x8A2D, 0xD450, 0x8A2E, 0xD451, 0x8A2F, 0xD452, 0x8A30,
- 0xD453, 0x8A31, 0xD454, 0x8A32, 0xD455, 0x8A33, 0xD456, 0x8A34,
- 0xD457, 0x8A35, 0xD458, 0x8A36, 0xD459, 0x8A37, 0xD45A, 0x8A38,
- 0xD45B, 0x8A39, 0xD45C, 0x8A3A, 0xD45D, 0x8A3B, 0xD45E, 0x8A3C,
- 0xD45F, 0x8A3D, 0xD460, 0x8A3F, 0xD461, 0x8A40, 0xD462, 0x8A41,
- 0xD463, 0x8A42, 0xD464, 0x8A43, 0xD465, 0x8A44, 0xD466, 0x8A45,
- 0xD467, 0x8A46, 0xD468, 0x8A47, 0xD469, 0x8A49, 0xD46A, 0x8A4A,
- 0xD46B, 0x8A4B, 0xD46C, 0x8A4C, 0xD46D, 0x8A4D, 0xD46E, 0x8A4E,
- 0xD46F, 0x8A4F, 0xD470, 0x8A50, 0xD471, 0x8A51, 0xD472, 0x8A52,
- 0xD473, 0x8A53, 0xD474, 0x8A54, 0xD475, 0x8A55, 0xD476, 0x8A56,
- 0xD477, 0x8A57, 0xD478, 0x8A58, 0xD479, 0x8A59, 0xD47A, 0x8A5A,
- 0xD47B, 0x8A5B, 0xD47C, 0x8A5C, 0xD47D, 0x8A5D, 0xD47E, 0x8A5E,
- 0xD480, 0x8A5F, 0xD481, 0x8A60, 0xD482, 0x8A61, 0xD483, 0x8A62,
- 0xD484, 0x8A63, 0xD485, 0x8A64, 0xD486, 0x8A65, 0xD487, 0x8A66,
- 0xD488, 0x8A67, 0xD489, 0x8A68, 0xD48A, 0x8A69, 0xD48B, 0x8A6A,
- 0xD48C, 0x8A6B, 0xD48D, 0x8A6C, 0xD48E, 0x8A6D, 0xD48F, 0x8A6E,
- 0xD490, 0x8A6F, 0xD491, 0x8A70, 0xD492, 0x8A71, 0xD493, 0x8A72,
- 0xD494, 0x8A73, 0xD495, 0x8A74, 0xD496, 0x8A75, 0xD497, 0x8A76,
- 0xD498, 0x8A77, 0xD499, 0x8A78, 0xD49A, 0x8A7A, 0xD49B, 0x8A7B,
- 0xD49C, 0x8A7C, 0xD49D, 0x8A7D, 0xD49E, 0x8A7E, 0xD49F, 0x8A7F,
- 0xD4A0, 0x8A80, 0xD4A1, 0x6D74, 0xD4A2, 0x5BD3, 0xD4A3, 0x88D5,
- 0xD4A4, 0x9884, 0xD4A5, 0x8C6B, 0xD4A6, 0x9A6D, 0xD4A7, 0x9E33,
- 0xD4A8, 0x6E0A, 0xD4A9, 0x51A4, 0xD4AA, 0x5143, 0xD4AB, 0x57A3,
- 0xD4AC, 0x8881, 0xD4AD, 0x539F, 0xD4AE, 0x63F4, 0xD4AF, 0x8F95,
- 0xD4B0, 0x56ED, 0xD4B1, 0x5458, 0xD4B2, 0x5706, 0xD4B3, 0x733F,
- 0xD4B4, 0x6E90, 0xD4B5, 0x7F18, 0xD4B6, 0x8FDC, 0xD4B7, 0x82D1,
- 0xD4B8, 0x613F, 0xD4B9, 0x6028, 0xD4BA, 0x9662, 0xD4BB, 0x66F0,
- 0xD4BC, 0x7EA6, 0xD4BD, 0x8D8A, 0xD4BE, 0x8DC3, 0xD4BF, 0x94A5,
- 0xD4C0, 0x5CB3, 0xD4C1, 0x7CA4, 0xD4C2, 0x6708, 0xD4C3, 0x60A6,
- 0xD4C4, 0x9605, 0xD4C5, 0x8018, 0xD4C6, 0x4E91, 0xD4C7, 0x90E7,
- 0xD4C8, 0x5300, 0xD4C9, 0x9668, 0xD4CA, 0x5141, 0xD4CB, 0x8FD0,
- 0xD4CC, 0x8574, 0xD4CD, 0x915D, 0xD4CE, 0x6655, 0xD4CF, 0x97F5,
- 0xD4D0, 0x5B55, 0xD4D1, 0x531D, 0xD4D2, 0x7838, 0xD4D3, 0x6742,
- 0xD4D4, 0x683D, 0xD4D5, 0x54C9, 0xD4D6, 0x707E, 0xD4D7, 0x5BB0,
- 0xD4D8, 0x8F7D, 0xD4D9, 0x518D, 0xD4DA, 0x5728, 0xD4DB, 0x54B1,
- 0xD4DC, 0x6512, 0xD4DD, 0x6682, 0xD4DE, 0x8D5E, 0xD4DF, 0x8D43,
- 0xD4E0, 0x810F, 0xD4E1, 0x846C, 0xD4E2, 0x906D, 0xD4E3, 0x7CDF,
- 0xD4E4, 0x51FF, 0xD4E5, 0x85FB, 0xD4E6, 0x67A3, 0xD4E7, 0x65E9,
- 0xD4E8, 0x6FA1, 0xD4E9, 0x86A4, 0xD4EA, 0x8E81, 0xD4EB, 0x566A,
- 0xD4EC, 0x9020, 0xD4ED, 0x7682, 0xD4EE, 0x7076, 0xD4EF, 0x71E5,
- 0xD4F0, 0x8D23, 0xD4F1, 0x62E9, 0xD4F2, 0x5219, 0xD4F3, 0x6CFD,
- 0xD4F4, 0x8D3C, 0xD4F5, 0x600E, 0xD4F6, 0x589E, 0xD4F7, 0x618E,
- 0xD4F8, 0x66FE, 0xD4F9, 0x8D60, 0xD4FA, 0x624E, 0xD4FB, 0x55B3,
- 0xD4FC, 0x6E23, 0xD4FD, 0x672D, 0xD4FE, 0x8F67, 0xD540, 0x8A81,
- 0xD541, 0x8A82, 0xD542, 0x8A83, 0xD543, 0x8A84, 0xD544, 0x8A85,
- 0xD545, 0x8A86, 0xD546, 0x8A87, 0xD547, 0x8A88, 0xD548, 0x8A8B,
- 0xD549, 0x8A8C, 0xD54A, 0x8A8D, 0xD54B, 0x8A8E, 0xD54C, 0x8A8F,
- 0xD54D, 0x8A90, 0xD54E, 0x8A91, 0xD54F, 0x8A92, 0xD550, 0x8A94,
- 0xD551, 0x8A95, 0xD552, 0x8A96, 0xD553, 0x8A97, 0xD554, 0x8A98,
- 0xD555, 0x8A99, 0xD556, 0x8A9A, 0xD557, 0x8A9B, 0xD558, 0x8A9C,
- 0xD559, 0x8A9D, 0xD55A, 0x8A9E, 0xD55B, 0x8A9F, 0xD55C, 0x8AA0,
- 0xD55D, 0x8AA1, 0xD55E, 0x8AA2, 0xD55F, 0x8AA3, 0xD560, 0x8AA4,
- 0xD561, 0x8AA5, 0xD562, 0x8AA6, 0xD563, 0x8AA7, 0xD564, 0x8AA8,
- 0xD565, 0x8AA9, 0xD566, 0x8AAA, 0xD567, 0x8AAB, 0xD568, 0x8AAC,
- 0xD569, 0x8AAD, 0xD56A, 0x8AAE, 0xD56B, 0x8AAF, 0xD56C, 0x8AB0,
- 0xD56D, 0x8AB1, 0xD56E, 0x8AB2, 0xD56F, 0x8AB3, 0xD570, 0x8AB4,
- 0xD571, 0x8AB5, 0xD572, 0x8AB6, 0xD573, 0x8AB7, 0xD574, 0x8AB8,
- 0xD575, 0x8AB9, 0xD576, 0x8ABA, 0xD577, 0x8ABB, 0xD578, 0x8ABC,
- 0xD579, 0x8ABD, 0xD57A, 0x8ABE, 0xD57B, 0x8ABF, 0xD57C, 0x8AC0,
- 0xD57D, 0x8AC1, 0xD57E, 0x8AC2, 0xD580, 0x8AC3, 0xD581, 0x8AC4,
- 0xD582, 0x8AC5, 0xD583, 0x8AC6, 0xD584, 0x8AC7, 0xD585, 0x8AC8,
- 0xD586, 0x8AC9, 0xD587, 0x8ACA, 0xD588, 0x8ACB, 0xD589, 0x8ACC,
- 0xD58A, 0x8ACD, 0xD58B, 0x8ACE, 0xD58C, 0x8ACF, 0xD58D, 0x8AD0,
- 0xD58E, 0x8AD1, 0xD58F, 0x8AD2, 0xD590, 0x8AD3, 0xD591, 0x8AD4,
- 0xD592, 0x8AD5, 0xD593, 0x8AD6, 0xD594, 0x8AD7, 0xD595, 0x8AD8,
- 0xD596, 0x8AD9, 0xD597, 0x8ADA, 0xD598, 0x8ADB, 0xD599, 0x8ADC,
- 0xD59A, 0x8ADD, 0xD59B, 0x8ADE, 0xD59C, 0x8ADF, 0xD59D, 0x8AE0,
- 0xD59E, 0x8AE1, 0xD59F, 0x8AE2, 0xD5A0, 0x8AE3, 0xD5A1, 0x94E1,
- 0xD5A2, 0x95F8, 0xD5A3, 0x7728, 0xD5A4, 0x6805, 0xD5A5, 0x69A8,
- 0xD5A6, 0x548B, 0xD5A7, 0x4E4D, 0xD5A8, 0x70B8, 0xD5A9, 0x8BC8,
- 0xD5AA, 0x6458, 0xD5AB, 0x658B, 0xD5AC, 0x5B85, 0xD5AD, 0x7A84,
- 0xD5AE, 0x503A, 0xD5AF, 0x5BE8, 0xD5B0, 0x77BB, 0xD5B1, 0x6BE1,
- 0xD5B2, 0x8A79, 0xD5B3, 0x7C98, 0xD5B4, 0x6CBE, 0xD5B5, 0x76CF,
- 0xD5B6, 0x65A9, 0xD5B7, 0x8F97, 0xD5B8, 0x5D2D, 0xD5B9, 0x5C55,
- 0xD5BA, 0x8638, 0xD5BB, 0x6808, 0xD5BC, 0x5360, 0xD5BD, 0x6218,
- 0xD5BE, 0x7AD9, 0xD5BF, 0x6E5B, 0xD5C0, 0x7EFD, 0xD5C1, 0x6A1F,
- 0xD5C2, 0x7AE0, 0xD5C3, 0x5F70, 0xD5C4, 0x6F33, 0xD5C5, 0x5F20,
- 0xD5C6, 0x638C, 0xD5C7, 0x6DA8, 0xD5C8, 0x6756, 0xD5C9, 0x4E08,
- 0xD5CA, 0x5E10, 0xD5CB, 0x8D26, 0xD5CC, 0x4ED7, 0xD5CD, 0x80C0,
- 0xD5CE, 0x7634, 0xD5CF, 0x969C, 0xD5D0, 0x62DB, 0xD5D1, 0x662D,
- 0xD5D2, 0x627E, 0xD5D3, 0x6CBC, 0xD5D4, 0x8D75, 0xD5D5, 0x7167,
- 0xD5D6, 0x7F69, 0xD5D7, 0x5146, 0xD5D8, 0x8087, 0xD5D9, 0x53EC,
- 0xD5DA, 0x906E, 0xD5DB, 0x6298, 0xD5DC, 0x54F2, 0xD5DD, 0x86F0,
- 0xD5DE, 0x8F99, 0xD5DF, 0x8005, 0xD5E0, 0x9517, 0xD5E1, 0x8517,
- 0xD5E2, 0x8FD9, 0xD5E3, 0x6D59, 0xD5E4, 0x73CD, 0xD5E5, 0x659F,
- 0xD5E6, 0x771F, 0xD5E7, 0x7504, 0xD5E8, 0x7827, 0xD5E9, 0x81FB,
- 0xD5EA, 0x8D1E, 0xD5EB, 0x9488, 0xD5EC, 0x4FA6, 0xD5ED, 0x6795,
- 0xD5EE, 0x75B9, 0xD5EF, 0x8BCA, 0xD5F0, 0x9707, 0xD5F1, 0x632F,
- 0xD5F2, 0x9547, 0xD5F3, 0x9635, 0xD5F4, 0x84B8, 0xD5F5, 0x6323,
- 0xD5F6, 0x7741, 0xD5F7, 0x5F81, 0xD5F8, 0x72F0, 0xD5F9, 0x4E89,
- 0xD5FA, 0x6014, 0xD5FB, 0x6574, 0xD5FC, 0x62EF, 0xD5FD, 0x6B63,
- 0xD5FE, 0x653F, 0xD640, 0x8AE4, 0xD641, 0x8AE5, 0xD642, 0x8AE6,
- 0xD643, 0x8AE7, 0xD644, 0x8AE8, 0xD645, 0x8AE9, 0xD646, 0x8AEA,
- 0xD647, 0x8AEB, 0xD648, 0x8AEC, 0xD649, 0x8AED, 0xD64A, 0x8AEE,
- 0xD64B, 0x8AEF, 0xD64C, 0x8AF0, 0xD64D, 0x8AF1, 0xD64E, 0x8AF2,
- 0xD64F, 0x8AF3, 0xD650, 0x8AF4, 0xD651, 0x8AF5, 0xD652, 0x8AF6,
- 0xD653, 0x8AF7, 0xD654, 0x8AF8, 0xD655, 0x8AF9, 0xD656, 0x8AFA,
- 0xD657, 0x8AFB, 0xD658, 0x8AFC, 0xD659, 0x8AFD, 0xD65A, 0x8AFE,
- 0xD65B, 0x8AFF, 0xD65C, 0x8B00, 0xD65D, 0x8B01, 0xD65E, 0x8B02,
- 0xD65F, 0x8B03, 0xD660, 0x8B04, 0xD661, 0x8B05, 0xD662, 0x8B06,
- 0xD663, 0x8B08, 0xD664, 0x8B09, 0xD665, 0x8B0A, 0xD666, 0x8B0B,
- 0xD667, 0x8B0C, 0xD668, 0x8B0D, 0xD669, 0x8B0E, 0xD66A, 0x8B0F,
- 0xD66B, 0x8B10, 0xD66C, 0x8B11, 0xD66D, 0x8B12, 0xD66E, 0x8B13,
- 0xD66F, 0x8B14, 0xD670, 0x8B15, 0xD671, 0x8B16, 0xD672, 0x8B17,
- 0xD673, 0x8B18, 0xD674, 0x8B19, 0xD675, 0x8B1A, 0xD676, 0x8B1B,
- 0xD677, 0x8B1C, 0xD678, 0x8B1D, 0xD679, 0x8B1E, 0xD67A, 0x8B1F,
- 0xD67B, 0x8B20, 0xD67C, 0x8B21, 0xD67D, 0x8B22, 0xD67E, 0x8B23,
- 0xD680, 0x8B24, 0xD681, 0x8B25, 0xD682, 0x8B27, 0xD683, 0x8B28,
- 0xD684, 0x8B29, 0xD685, 0x8B2A, 0xD686, 0x8B2B, 0xD687, 0x8B2C,
- 0xD688, 0x8B2D, 0xD689, 0x8B2E, 0xD68A, 0x8B2F, 0xD68B, 0x8B30,
- 0xD68C, 0x8B31, 0xD68D, 0x8B32, 0xD68E, 0x8B33, 0xD68F, 0x8B34,
- 0xD690, 0x8B35, 0xD691, 0x8B36, 0xD692, 0x8B37, 0xD693, 0x8B38,
- 0xD694, 0x8B39, 0xD695, 0x8B3A, 0xD696, 0x8B3B, 0xD697, 0x8B3C,
- 0xD698, 0x8B3D, 0xD699, 0x8B3E, 0xD69A, 0x8B3F, 0xD69B, 0x8B40,
- 0xD69C, 0x8B41, 0xD69D, 0x8B42, 0xD69E, 0x8B43, 0xD69F, 0x8B44,
- 0xD6A0, 0x8B45, 0xD6A1, 0x5E27, 0xD6A2, 0x75C7, 0xD6A3, 0x90D1,
- 0xD6A4, 0x8BC1, 0xD6A5, 0x829D, 0xD6A6, 0x679D, 0xD6A7, 0x652F,
- 0xD6A8, 0x5431, 0xD6A9, 0x8718, 0xD6AA, 0x77E5, 0xD6AB, 0x80A2,
- 0xD6AC, 0x8102, 0xD6AD, 0x6C41, 0xD6AE, 0x4E4B, 0xD6AF, 0x7EC7,
- 0xD6B0, 0x804C, 0xD6B1, 0x76F4, 0xD6B2, 0x690D, 0xD6B3, 0x6B96,
- 0xD6B4, 0x6267, 0xD6B5, 0x503C, 0xD6B6, 0x4F84, 0xD6B7, 0x5740,
- 0xD6B8, 0x6307, 0xD6B9, 0x6B62, 0xD6BA, 0x8DBE, 0xD6BB, 0x53EA,
- 0xD6BC, 0x65E8, 0xD6BD, 0x7EB8, 0xD6BE, 0x5FD7, 0xD6BF, 0x631A,
- 0xD6C0, 0x63B7, 0xD6C1, 0x81F3, 0xD6C2, 0x81F4, 0xD6C3, 0x7F6E,
- 0xD6C4, 0x5E1C, 0xD6C5, 0x5CD9, 0xD6C6, 0x5236, 0xD6C7, 0x667A,
- 0xD6C8, 0x79E9, 0xD6C9, 0x7A1A, 0xD6CA, 0x8D28, 0xD6CB, 0x7099,
- 0xD6CC, 0x75D4, 0xD6CD, 0x6EDE, 0xD6CE, 0x6CBB, 0xD6CF, 0x7A92,
- 0xD6D0, 0x4E2D, 0xD6D1, 0x76C5, 0xD6D2, 0x5FE0, 0xD6D3, 0x949F,
- 0xD6D4, 0x8877, 0xD6D5, 0x7EC8, 0xD6D6, 0x79CD, 0xD6D7, 0x80BF,
- 0xD6D8, 0x91CD, 0xD6D9, 0x4EF2, 0xD6DA, 0x4F17, 0xD6DB, 0x821F,
- 0xD6DC, 0x5468, 0xD6DD, 0x5DDE, 0xD6DE, 0x6D32, 0xD6DF, 0x8BCC,
- 0xD6E0, 0x7CA5, 0xD6E1, 0x8F74, 0xD6E2, 0x8098, 0xD6E3, 0x5E1A,
- 0xD6E4, 0x5492, 0xD6E5, 0x76B1, 0xD6E6, 0x5B99, 0xD6E7, 0x663C,
- 0xD6E8, 0x9AA4, 0xD6E9, 0x73E0, 0xD6EA, 0x682A, 0xD6EB, 0x86DB,
- 0xD6EC, 0x6731, 0xD6ED, 0x732A, 0xD6EE, 0x8BF8, 0xD6EF, 0x8BDB,
- 0xD6F0, 0x9010, 0xD6F1, 0x7AF9, 0xD6F2, 0x70DB, 0xD6F3, 0x716E,
- 0xD6F4, 0x62C4, 0xD6F5, 0x77A9, 0xD6F6, 0x5631, 0xD6F7, 0x4E3B,
- 0xD6F8, 0x8457, 0xD6F9, 0x67F1, 0xD6FA, 0x52A9, 0xD6FB, 0x86C0,
- 0xD6FC, 0x8D2E, 0xD6FD, 0x94F8, 0xD6FE, 0x7B51, 0xD740, 0x8B46,
- 0xD741, 0x8B47, 0xD742, 0x8B48, 0xD743, 0x8B49, 0xD744, 0x8B4A,
- 0xD745, 0x8B4B, 0xD746, 0x8B4C, 0xD747, 0x8B4D, 0xD748, 0x8B4E,
- 0xD749, 0x8B4F, 0xD74A, 0x8B50, 0xD74B, 0x8B51, 0xD74C, 0x8B52,
- 0xD74D, 0x8B53, 0xD74E, 0x8B54, 0xD74F, 0x8B55, 0xD750, 0x8B56,
- 0xD751, 0x8B57, 0xD752, 0x8B58, 0xD753, 0x8B59, 0xD754, 0x8B5A,
- 0xD755, 0x8B5B, 0xD756, 0x8B5C, 0xD757, 0x8B5D, 0xD758, 0x8B5E,
- 0xD759, 0x8B5F, 0xD75A, 0x8B60, 0xD75B, 0x8B61, 0xD75C, 0x8B62,
- 0xD75D, 0x8B63, 0xD75E, 0x8B64, 0xD75F, 0x8B65, 0xD760, 0x8B67,
- 0xD761, 0x8B68, 0xD762, 0x8B69, 0xD763, 0x8B6A, 0xD764, 0x8B6B,
- 0xD765, 0x8B6D, 0xD766, 0x8B6E, 0xD767, 0x8B6F, 0xD768, 0x8B70,
- 0xD769, 0x8B71, 0xD76A, 0x8B72, 0xD76B, 0x8B73, 0xD76C, 0x8B74,
- 0xD76D, 0x8B75, 0xD76E, 0x8B76, 0xD76F, 0x8B77, 0xD770, 0x8B78,
- 0xD771, 0x8B79, 0xD772, 0x8B7A, 0xD773, 0x8B7B, 0xD774, 0x8B7C,
- 0xD775, 0x8B7D, 0xD776, 0x8B7E, 0xD777, 0x8B7F, 0xD778, 0x8B80,
- 0xD779, 0x8B81, 0xD77A, 0x8B82, 0xD77B, 0x8B83, 0xD77C, 0x8B84,
- 0xD77D, 0x8B85, 0xD77E, 0x8B86, 0xD780, 0x8B87, 0xD781, 0x8B88,
- 0xD782, 0x8B89, 0xD783, 0x8B8A, 0xD784, 0x8B8B, 0xD785, 0x8B8C,
- 0xD786, 0x8B8D, 0xD787, 0x8B8E, 0xD788, 0x8B8F, 0xD789, 0x8B90,
- 0xD78A, 0x8B91, 0xD78B, 0x8B92, 0xD78C, 0x8B93, 0xD78D, 0x8B94,
- 0xD78E, 0x8B95, 0xD78F, 0x8B96, 0xD790, 0x8B97, 0xD791, 0x8B98,
- 0xD792, 0x8B99, 0xD793, 0x8B9A, 0xD794, 0x8B9B, 0xD795, 0x8B9C,
- 0xD796, 0x8B9D, 0xD797, 0x8B9E, 0xD798, 0x8B9F, 0xD799, 0x8BAC,
- 0xD79A, 0x8BB1, 0xD79B, 0x8BBB, 0xD79C, 0x8BC7, 0xD79D, 0x8BD0,
- 0xD79E, 0x8BEA, 0xD79F, 0x8C09, 0xD7A0, 0x8C1E, 0xD7A1, 0x4F4F,
- 0xD7A2, 0x6CE8, 0xD7A3, 0x795D, 0xD7A4, 0x9A7B, 0xD7A5, 0x6293,
- 0xD7A6, 0x722A, 0xD7A7, 0x62FD, 0xD7A8, 0x4E13, 0xD7A9, 0x7816,
- 0xD7AA, 0x8F6C, 0xD7AB, 0x64B0, 0xD7AC, 0x8D5A, 0xD7AD, 0x7BC6,
- 0xD7AE, 0x6869, 0xD7AF, 0x5E84, 0xD7B0, 0x88C5, 0xD7B1, 0x5986,
- 0xD7B2, 0x649E, 0xD7B3, 0x58EE, 0xD7B4, 0x72B6, 0xD7B5, 0x690E,
- 0xD7B6, 0x9525, 0xD7B7, 0x8FFD, 0xD7B8, 0x8D58, 0xD7B9, 0x5760,
- 0xD7BA, 0x7F00, 0xD7BB, 0x8C06, 0xD7BC, 0x51C6, 0xD7BD, 0x6349,
- 0xD7BE, 0x62D9, 0xD7BF, 0x5353, 0xD7C0, 0x684C, 0xD7C1, 0x7422,
- 0xD7C2, 0x8301, 0xD7C3, 0x914C, 0xD7C4, 0x5544, 0xD7C5, 0x7740,
- 0xD7C6, 0x707C, 0xD7C7, 0x6D4A, 0xD7C8, 0x5179, 0xD7C9, 0x54A8,
- 0xD7CA, 0x8D44, 0xD7CB, 0x59FF, 0xD7CC, 0x6ECB, 0xD7CD, 0x6DC4,
- 0xD7CE, 0x5B5C, 0xD7CF, 0x7D2B, 0xD7D0, 0x4ED4, 0xD7D1, 0x7C7D,
- 0xD7D2, 0x6ED3, 0xD7D3, 0x5B50, 0xD7D4, 0x81EA, 0xD7D5, 0x6E0D,
- 0xD7D6, 0x5B57, 0xD7D7, 0x9B03, 0xD7D8, 0x68D5, 0xD7D9, 0x8E2A,
- 0xD7DA, 0x5B97, 0xD7DB, 0x7EFC, 0xD7DC, 0x603B, 0xD7DD, 0x7EB5,
- 0xD7DE, 0x90B9, 0xD7DF, 0x8D70, 0xD7E0, 0x594F, 0xD7E1, 0x63CD,
- 0xD7E2, 0x79DF, 0xD7E3, 0x8DB3, 0xD7E4, 0x5352, 0xD7E5, 0x65CF,
- 0xD7E6, 0x7956, 0xD7E7, 0x8BC5, 0xD7E8, 0x963B, 0xD7E9, 0x7EC4,
- 0xD7EA, 0x94BB, 0xD7EB, 0x7E82, 0xD7EC, 0x5634, 0xD7ED, 0x9189,
- 0xD7EE, 0x6700, 0xD7EF, 0x7F6A, 0xD7F0, 0x5C0A, 0xD7F1, 0x9075,
- 0xD7F2, 0x6628, 0xD7F3, 0x5DE6, 0xD7F4, 0x4F50, 0xD7F5, 0x67DE,
- 0xD7F6, 0x505A, 0xD7F7, 0x4F5C, 0xD7F8, 0x5750, 0xD7F9, 0x5EA7,
- 0xD840, 0x8C38, 0xD841, 0x8C39, 0xD842, 0x8C3A, 0xD843, 0x8C3B,
- 0xD844, 0x8C3C, 0xD845, 0x8C3D, 0xD846, 0x8C3E, 0xD847, 0x8C3F,
- 0xD848, 0x8C40, 0xD849, 0x8C42, 0xD84A, 0x8C43, 0xD84B, 0x8C44,
- 0xD84C, 0x8C45, 0xD84D, 0x8C48, 0xD84E, 0x8C4A, 0xD84F, 0x8C4B,
- 0xD850, 0x8C4D, 0xD851, 0x8C4E, 0xD852, 0x8C4F, 0xD853, 0x8C50,
- 0xD854, 0x8C51, 0xD855, 0x8C52, 0xD856, 0x8C53, 0xD857, 0x8C54,
- 0xD858, 0x8C56, 0xD859, 0x8C57, 0xD85A, 0x8C58, 0xD85B, 0x8C59,
- 0xD85C, 0x8C5B, 0xD85D, 0x8C5C, 0xD85E, 0x8C5D, 0xD85F, 0x8C5E,
- 0xD860, 0x8C5F, 0xD861, 0x8C60, 0xD862, 0x8C63, 0xD863, 0x8C64,
- 0xD864, 0x8C65, 0xD865, 0x8C66, 0xD866, 0x8C67, 0xD867, 0x8C68,
- 0xD868, 0x8C69, 0xD869, 0x8C6C, 0xD86A, 0x8C6D, 0xD86B, 0x8C6E,
- 0xD86C, 0x8C6F, 0xD86D, 0x8C70, 0xD86E, 0x8C71, 0xD86F, 0x8C72,
- 0xD870, 0x8C74, 0xD871, 0x8C75, 0xD872, 0x8C76, 0xD873, 0x8C77,
- 0xD874, 0x8C7B, 0xD875, 0x8C7C, 0xD876, 0x8C7D, 0xD877, 0x8C7E,
- 0xD878, 0x8C7F, 0xD879, 0x8C80, 0xD87A, 0x8C81, 0xD87B, 0x8C83,
- 0xD87C, 0x8C84, 0xD87D, 0x8C86, 0xD87E, 0x8C87, 0xD880, 0x8C88,
- 0xD881, 0x8C8B, 0xD882, 0x8C8D, 0xD883, 0x8C8E, 0xD884, 0x8C8F,
- 0xD885, 0x8C90, 0xD886, 0x8C91, 0xD887, 0x8C92, 0xD888, 0x8C93,
- 0xD889, 0x8C95, 0xD88A, 0x8C96, 0xD88B, 0x8C97, 0xD88C, 0x8C99,
- 0xD88D, 0x8C9A, 0xD88E, 0x8C9B, 0xD88F, 0x8C9C, 0xD890, 0x8C9D,
- 0xD891, 0x8C9E, 0xD892, 0x8C9F, 0xD893, 0x8CA0, 0xD894, 0x8CA1,
- 0xD895, 0x8CA2, 0xD896, 0x8CA3, 0xD897, 0x8CA4, 0xD898, 0x8CA5,
- 0xD899, 0x8CA6, 0xD89A, 0x8CA7, 0xD89B, 0x8CA8, 0xD89C, 0x8CA9,
- 0xD89D, 0x8CAA, 0xD89E, 0x8CAB, 0xD89F, 0x8CAC, 0xD8A0, 0x8CAD,
- 0xD8A1, 0x4E8D, 0xD8A2, 0x4E0C, 0xD8A3, 0x5140, 0xD8A4, 0x4E10,
- 0xD8A5, 0x5EFF, 0xD8A6, 0x5345, 0xD8A7, 0x4E15, 0xD8A8, 0x4E98,
- 0xD8A9, 0x4E1E, 0xD8AA, 0x9B32, 0xD8AB, 0x5B6C, 0xD8AC, 0x5669,
- 0xD8AD, 0x4E28, 0xD8AE, 0x79BA, 0xD8AF, 0x4E3F, 0xD8B0, 0x5315,
- 0xD8B1, 0x4E47, 0xD8B2, 0x592D, 0xD8B3, 0x723B, 0xD8B4, 0x536E,
- 0xD8B5, 0x6C10, 0xD8B6, 0x56DF, 0xD8B7, 0x80E4, 0xD8B8, 0x9997,
- 0xD8B9, 0x6BD3, 0xD8BA, 0x777E, 0xD8BB, 0x9F17, 0xD8BC, 0x4E36,
- 0xD8BD, 0x4E9F, 0xD8BE, 0x9F10, 0xD8BF, 0x4E5C, 0xD8C0, 0x4E69,
- 0xD8C1, 0x4E93, 0xD8C2, 0x8288, 0xD8C3, 0x5B5B, 0xD8C4, 0x556C,
- 0xD8C5, 0x560F, 0xD8C6, 0x4EC4, 0xD8C7, 0x538D, 0xD8C8, 0x539D,
- 0xD8C9, 0x53A3, 0xD8CA, 0x53A5, 0xD8CB, 0x53AE, 0xD8CC, 0x9765,
- 0xD8CD, 0x8D5D, 0xD8CE, 0x531A, 0xD8CF, 0x53F5, 0xD8D0, 0x5326,
- 0xD8D1, 0x532E, 0xD8D2, 0x533E, 0xD8D3, 0x8D5C, 0xD8D4, 0x5366,
- 0xD8D5, 0x5363, 0xD8D6, 0x5202, 0xD8D7, 0x5208, 0xD8D8, 0x520E,
- 0xD8D9, 0x522D, 0xD8DA, 0x5233, 0xD8DB, 0x523F, 0xD8DC, 0x5240,
- 0xD8DD, 0x524C, 0xD8DE, 0x525E, 0xD8DF, 0x5261, 0xD8E0, 0x525C,
- 0xD8E1, 0x84AF, 0xD8E2, 0x527D, 0xD8E3, 0x5282, 0xD8E4, 0x5281,
- 0xD8E5, 0x5290, 0xD8E6, 0x5293, 0xD8E7, 0x5182, 0xD8E8, 0x7F54,
- 0xD8E9, 0x4EBB, 0xD8EA, 0x4EC3, 0xD8EB, 0x4EC9, 0xD8EC, 0x4EC2,
- 0xD8ED, 0x4EE8, 0xD8EE, 0x4EE1, 0xD8EF, 0x4EEB, 0xD8F0, 0x4EDE,
- 0xD8F1, 0x4F1B, 0xD8F2, 0x4EF3, 0xD8F3, 0x4F22, 0xD8F4, 0x4F64,
- 0xD8F5, 0x4EF5, 0xD8F6, 0x4F25, 0xD8F7, 0x4F27, 0xD8F8, 0x4F09,
- 0xD8F9, 0x4F2B, 0xD8FA, 0x4F5E, 0xD8FB, 0x4F67, 0xD8FC, 0x6538,
- 0xD8FD, 0x4F5A, 0xD8FE, 0x4F5D, 0xD940, 0x8CAE, 0xD941, 0x8CAF,
- 0xD942, 0x8CB0, 0xD943, 0x8CB1, 0xD944, 0x8CB2, 0xD945, 0x8CB3,
- 0xD946, 0x8CB4, 0xD947, 0x8CB5, 0xD948, 0x8CB6, 0xD949, 0x8CB7,
- 0xD94A, 0x8CB8, 0xD94B, 0x8CB9, 0xD94C, 0x8CBA, 0xD94D, 0x8CBB,
- 0xD94E, 0x8CBC, 0xD94F, 0x8CBD, 0xD950, 0x8CBE, 0xD951, 0x8CBF,
- 0xD952, 0x8CC0, 0xD953, 0x8CC1, 0xD954, 0x8CC2, 0xD955, 0x8CC3,
- 0xD956, 0x8CC4, 0xD957, 0x8CC5, 0xD958, 0x8CC6, 0xD959, 0x8CC7,
- 0xD95A, 0x8CC8, 0xD95B, 0x8CC9, 0xD95C, 0x8CCA, 0xD95D, 0x8CCB,
- 0xD95E, 0x8CCC, 0xD95F, 0x8CCD, 0xD960, 0x8CCE, 0xD961, 0x8CCF,
- 0xD962, 0x8CD0, 0xD963, 0x8CD1, 0xD964, 0x8CD2, 0xD965, 0x8CD3,
- 0xD966, 0x8CD4, 0xD967, 0x8CD5, 0xD968, 0x8CD6, 0xD969, 0x8CD7,
- 0xD96A, 0x8CD8, 0xD96B, 0x8CD9, 0xD96C, 0x8CDA, 0xD96D, 0x8CDB,
- 0xD96E, 0x8CDC, 0xD96F, 0x8CDD, 0xD970, 0x8CDE, 0xD971, 0x8CDF,
- 0xD972, 0x8CE0, 0xD973, 0x8CE1, 0xD974, 0x8CE2, 0xD975, 0x8CE3,
- 0xD976, 0x8CE4, 0xD977, 0x8CE5, 0xD978, 0x8CE6, 0xD979, 0x8CE7,
- 0xD97A, 0x8CE8, 0xD97B, 0x8CE9, 0xD97C, 0x8CEA, 0xD97D, 0x8CEB,
- 0xD97E, 0x8CEC, 0xD980, 0x8CED, 0xD981, 0x8CEE, 0xD982, 0x8CEF,
- 0xD983, 0x8CF0, 0xD984, 0x8CF1, 0xD985, 0x8CF2, 0xD986, 0x8CF3,
- 0xD987, 0x8CF4, 0xD988, 0x8CF5, 0xD989, 0x8CF6, 0xD98A, 0x8CF7,
- 0xD98B, 0x8CF8, 0xD98C, 0x8CF9, 0xD98D, 0x8CFA, 0xD98E, 0x8CFB,
- 0xD98F, 0x8CFC, 0xD990, 0x8CFD, 0xD991, 0x8CFE, 0xD992, 0x8CFF,
- 0xD993, 0x8D00, 0xD994, 0x8D01, 0xD995, 0x8D02, 0xD996, 0x8D03,
- 0xD997, 0x8D04, 0xD998, 0x8D05, 0xD999, 0x8D06, 0xD99A, 0x8D07,
- 0xD99B, 0x8D08, 0xD99C, 0x8D09, 0xD99D, 0x8D0A, 0xD99E, 0x8D0B,
- 0xD99F, 0x8D0C, 0xD9A0, 0x8D0D, 0xD9A1, 0x4F5F, 0xD9A2, 0x4F57,
- 0xD9A3, 0x4F32, 0xD9A4, 0x4F3D, 0xD9A5, 0x4F76, 0xD9A6, 0x4F74,
- 0xD9A7, 0x4F91, 0xD9A8, 0x4F89, 0xD9A9, 0x4F83, 0xD9AA, 0x4F8F,
- 0xD9AB, 0x4F7E, 0xD9AC, 0x4F7B, 0xD9AD, 0x4FAA, 0xD9AE, 0x4F7C,
- 0xD9AF, 0x4FAC, 0xD9B0, 0x4F94, 0xD9B1, 0x4FE6, 0xD9B2, 0x4FE8,
- 0xD9B3, 0x4FEA, 0xD9B4, 0x4FC5, 0xD9B5, 0x4FDA, 0xD9B6, 0x4FE3,
- 0xD9B7, 0x4FDC, 0xD9B8, 0x4FD1, 0xD9B9, 0x4FDF, 0xD9BA, 0x4FF8,
- 0xD9BB, 0x5029, 0xD9BC, 0x504C, 0xD9BD, 0x4FF3, 0xD9BE, 0x502C,
- 0xD9BF, 0x500F, 0xD9C0, 0x502E, 0xD9C1, 0x502D, 0xD9C2, 0x4FFE,
- 0xD9C3, 0x501C, 0xD9C4, 0x500C, 0xD9C5, 0x5025, 0xD9C6, 0x5028,
- 0xD9C7, 0x507E, 0xD9C8, 0x5043, 0xD9C9, 0x5055, 0xD9CA, 0x5048,
- 0xD9CB, 0x504E, 0xD9CC, 0x506C, 0xD9CD, 0x507B, 0xD9CE, 0x50A5,
- 0xD9CF, 0x50A7, 0xD9D0, 0x50A9, 0xD9D1, 0x50BA, 0xD9D2, 0x50D6,
- 0xD9D3, 0x5106, 0xD9D4, 0x50ED, 0xD9D5, 0x50EC, 0xD9D6, 0x50E6,
- 0xD9D7, 0x50EE, 0xD9D8, 0x5107, 0xD9D9, 0x510B, 0xD9DA, 0x4EDD,
- 0xD9DB, 0x6C3D, 0xD9DC, 0x4F58, 0xD9DD, 0x4F65, 0xD9DE, 0x4FCE,
- 0xD9DF, 0x9FA0, 0xD9E0, 0x6C46, 0xD9E1, 0x7C74, 0xD9E2, 0x516E,
- 0xD9E3, 0x5DFD, 0xD9E4, 0x9EC9, 0xD9E5, 0x9998, 0xD9E6, 0x5181,
- 0xD9E7, 0x5914, 0xD9E8, 0x52F9, 0xD9E9, 0x530D, 0xD9EA, 0x8A07,
- 0xD9EB, 0x5310, 0xD9EC, 0x51EB, 0xD9ED, 0x5919, 0xD9EE, 0x5155,
- 0xD9EF, 0x4EA0, 0xD9F0, 0x5156, 0xD9F1, 0x4EB3, 0xD9F2, 0x886E,
- 0xD9F3, 0x88A4, 0xD9F4, 0x4EB5, 0xD9F5, 0x8114, 0xD9F6, 0x88D2,
- 0xD9F7, 0x7980, 0xD9F8, 0x5B34, 0xD9F9, 0x8803, 0xD9FA, 0x7FB8,
- 0xD9FB, 0x51AB, 0xD9FC, 0x51B1, 0xD9FD, 0x51BD, 0xD9FE, 0x51BC,
- 0xDA40, 0x8D0E, 0xDA41, 0x8D0F, 0xDA42, 0x8D10, 0xDA43, 0x8D11,
- 0xDA44, 0x8D12, 0xDA45, 0x8D13, 0xDA46, 0x8D14, 0xDA47, 0x8D15,
- 0xDA48, 0x8D16, 0xDA49, 0x8D17, 0xDA4A, 0x8D18, 0xDA4B, 0x8D19,
- 0xDA4C, 0x8D1A, 0xDA4D, 0x8D1B, 0xDA4E, 0x8D1C, 0xDA4F, 0x8D20,
- 0xDA50, 0x8D51, 0xDA51, 0x8D52, 0xDA52, 0x8D57, 0xDA53, 0x8D5F,
- 0xDA54, 0x8D65, 0xDA55, 0x8D68, 0xDA56, 0x8D69, 0xDA57, 0x8D6A,
- 0xDA58, 0x8D6C, 0xDA59, 0x8D6E, 0xDA5A, 0x8D6F, 0xDA5B, 0x8D71,
- 0xDA5C, 0x8D72, 0xDA5D, 0x8D78, 0xDA5E, 0x8D79, 0xDA5F, 0x8D7A,
- 0xDA60, 0x8D7B, 0xDA61, 0x8D7C, 0xDA62, 0x8D7D, 0xDA63, 0x8D7E,
- 0xDA64, 0x8D7F, 0xDA65, 0x8D80, 0xDA66, 0x8D82, 0xDA67, 0x8D83,
- 0xDA68, 0x8D86, 0xDA69, 0x8D87, 0xDA6A, 0x8D88, 0xDA6B, 0x8D89,
- 0xDA6C, 0x8D8C, 0xDA6D, 0x8D8D, 0xDA6E, 0x8D8E, 0xDA6F, 0x8D8F,
- 0xDA70, 0x8D90, 0xDA71, 0x8D92, 0xDA72, 0x8D93, 0xDA73, 0x8D95,
- 0xDA74, 0x8D96, 0xDA75, 0x8D97, 0xDA76, 0x8D98, 0xDA77, 0x8D99,
- 0xDA78, 0x8D9A, 0xDA79, 0x8D9B, 0xDA7A, 0x8D9C, 0xDA7B, 0x8D9D,
- 0xDA7C, 0x8D9E, 0xDA7D, 0x8DA0, 0xDA7E, 0x8DA1, 0xDA80, 0x8DA2,
- 0xDA81, 0x8DA4, 0xDA82, 0x8DA5, 0xDA83, 0x8DA6, 0xDA84, 0x8DA7,
- 0xDA85, 0x8DA8, 0xDA86, 0x8DA9, 0xDA87, 0x8DAA, 0xDA88, 0x8DAB,
- 0xDA89, 0x8DAC, 0xDA8A, 0x8DAD, 0xDA8B, 0x8DAE, 0xDA8C, 0x8DAF,
- 0xDA8D, 0x8DB0, 0xDA8E, 0x8DB2, 0xDA8F, 0x8DB6, 0xDA90, 0x8DB7,
- 0xDA91, 0x8DB9, 0xDA92, 0x8DBB, 0xDA93, 0x8DBD, 0xDA94, 0x8DC0,
- 0xDA95, 0x8DC1, 0xDA96, 0x8DC2, 0xDA97, 0x8DC5, 0xDA98, 0x8DC7,
- 0xDA99, 0x8DC8, 0xDA9A, 0x8DC9, 0xDA9B, 0x8DCA, 0xDA9C, 0x8DCD,
- 0xDA9D, 0x8DD0, 0xDA9E, 0x8DD2, 0xDA9F, 0x8DD3, 0xDAA0, 0x8DD4,
- 0xDAA1, 0x51C7, 0xDAA2, 0x5196, 0xDAA3, 0x51A2, 0xDAA4, 0x51A5,
- 0xDAA5, 0x8BA0, 0xDAA6, 0x8BA6, 0xDAA7, 0x8BA7, 0xDAA8, 0x8BAA,
- 0xDAA9, 0x8BB4, 0xDAAA, 0x8BB5, 0xDAAB, 0x8BB7, 0xDAAC, 0x8BC2,
- 0xDAAD, 0x8BC3, 0xDAAE, 0x8BCB, 0xDAAF, 0x8BCF, 0xDAB0, 0x8BCE,
- 0xDAB1, 0x8BD2, 0xDAB2, 0x8BD3, 0xDAB3, 0x8BD4, 0xDAB4, 0x8BD6,
- 0xDAB5, 0x8BD8, 0xDAB6, 0x8BD9, 0xDAB7, 0x8BDC, 0xDAB8, 0x8BDF,
- 0xDAB9, 0x8BE0, 0xDABA, 0x8BE4, 0xDABB, 0x8BE8, 0xDABC, 0x8BE9,
- 0xDABD, 0x8BEE, 0xDABE, 0x8BF0, 0xDABF, 0x8BF3, 0xDAC0, 0x8BF6,
- 0xDAC1, 0x8BF9, 0xDAC2, 0x8BFC, 0xDAC3, 0x8BFF, 0xDAC4, 0x8C00,
- 0xDAC5, 0x8C02, 0xDAC6, 0x8C04, 0xDAC7, 0x8C07, 0xDAC8, 0x8C0C,
- 0xDAC9, 0x8C0F, 0xDACA, 0x8C11, 0xDACB, 0x8C12, 0xDACC, 0x8C14,
- 0xDACD, 0x8C15, 0xDACE, 0x8C16, 0xDACF, 0x8C19, 0xDAD0, 0x8C1B,
- 0xDAD1, 0x8C18, 0xDAD2, 0x8C1D, 0xDAD3, 0x8C1F, 0xDAD4, 0x8C20,
- 0xDAD5, 0x8C21, 0xDAD6, 0x8C25, 0xDAD7, 0x8C27, 0xDAD8, 0x8C2A,
- 0xDAD9, 0x8C2B, 0xDADA, 0x8C2E, 0xDADB, 0x8C2F, 0xDADC, 0x8C32,
- 0xDADD, 0x8C33, 0xDADE, 0x8C35, 0xDADF, 0x8C36, 0xDAE0, 0x5369,
- 0xDAE1, 0x537A, 0xDAE2, 0x961D, 0xDAE3, 0x9622, 0xDAE4, 0x9621,
- 0xDAE5, 0x9631, 0xDAE6, 0x962A, 0xDAE7, 0x963D, 0xDAE8, 0x963C,
- 0xDAE9, 0x9642, 0xDAEA, 0x9649, 0xDAEB, 0x9654, 0xDAEC, 0x965F,
- 0xDAED, 0x9667, 0xDAEE, 0x966C, 0xDAEF, 0x9672, 0xDAF0, 0x9674,
- 0xDAF1, 0x9688, 0xDAF2, 0x968D, 0xDAF3, 0x9697, 0xDAF4, 0x96B0,
- 0xDAF5, 0x9097, 0xDAF6, 0x909B, 0xDAF7, 0x909D, 0xDAF8, 0x9099,
- 0xDAF9, 0x90AC, 0xDAFA, 0x90A1, 0xDAFB, 0x90B4, 0xDAFC, 0x90B3,
- 0xDAFD, 0x90B6, 0xDAFE, 0x90BA, 0xDB40, 0x8DD5, 0xDB41, 0x8DD8,
- 0xDB42, 0x8DD9, 0xDB43, 0x8DDC, 0xDB44, 0x8DE0, 0xDB45, 0x8DE1,
- 0xDB46, 0x8DE2, 0xDB47, 0x8DE5, 0xDB48, 0x8DE6, 0xDB49, 0x8DE7,
- 0xDB4A, 0x8DE9, 0xDB4B, 0x8DED, 0xDB4C, 0x8DEE, 0xDB4D, 0x8DF0,
- 0xDB4E, 0x8DF1, 0xDB4F, 0x8DF2, 0xDB50, 0x8DF4, 0xDB51, 0x8DF6,
- 0xDB52, 0x8DFC, 0xDB53, 0x8DFE, 0xDB54, 0x8DFF, 0xDB55, 0x8E00,
- 0xDB56, 0x8E01, 0xDB57, 0x8E02, 0xDB58, 0x8E03, 0xDB59, 0x8E04,
- 0xDB5A, 0x8E06, 0xDB5B, 0x8E07, 0xDB5C, 0x8E08, 0xDB5D, 0x8E0B,
- 0xDB5E, 0x8E0D, 0xDB5F, 0x8E0E, 0xDB60, 0x8E10, 0xDB61, 0x8E11,
- 0xDB62, 0x8E12, 0xDB63, 0x8E13, 0xDB64, 0x8E15, 0xDB65, 0x8E16,
- 0xDB66, 0x8E17, 0xDB67, 0x8E18, 0xDB68, 0x8E19, 0xDB69, 0x8E1A,
- 0xDB6A, 0x8E1B, 0xDB6B, 0x8E1C, 0xDB6C, 0x8E20, 0xDB6D, 0x8E21,
- 0xDB6E, 0x8E24, 0xDB6F, 0x8E25, 0xDB70, 0x8E26, 0xDB71, 0x8E27,
- 0xDB72, 0x8E28, 0xDB73, 0x8E2B, 0xDB74, 0x8E2D, 0xDB75, 0x8E30,
- 0xDB76, 0x8E32, 0xDB77, 0x8E33, 0xDB78, 0x8E34, 0xDB79, 0x8E36,
- 0xDB7A, 0x8E37, 0xDB7B, 0x8E38, 0xDB7C, 0x8E3B, 0xDB7D, 0x8E3C,
- 0xDB7E, 0x8E3E, 0xDB80, 0x8E3F, 0xDB81, 0x8E43, 0xDB82, 0x8E45,
- 0xDB83, 0x8E46, 0xDB84, 0x8E4C, 0xDB85, 0x8E4D, 0xDB86, 0x8E4E,
- 0xDB87, 0x8E4F, 0xDB88, 0x8E50, 0xDB89, 0x8E53, 0xDB8A, 0x8E54,
- 0xDB8B, 0x8E55, 0xDB8C, 0x8E56, 0xDB8D, 0x8E57, 0xDB8E, 0x8E58,
- 0xDB8F, 0x8E5A, 0xDB90, 0x8E5B, 0xDB91, 0x8E5C, 0xDB92, 0x8E5D,
- 0xDB93, 0x8E5E, 0xDB94, 0x8E5F, 0xDB95, 0x8E60, 0xDB96, 0x8E61,
- 0xDB97, 0x8E62, 0xDB98, 0x8E63, 0xDB99, 0x8E64, 0xDB9A, 0x8E65,
- 0xDB9B, 0x8E67, 0xDB9C, 0x8E68, 0xDB9D, 0x8E6A, 0xDB9E, 0x8E6B,
- 0xDB9F, 0x8E6E, 0xDBA0, 0x8E71, 0xDBA1, 0x90B8, 0xDBA2, 0x90B0,
- 0xDBA3, 0x90CF, 0xDBA4, 0x90C5, 0xDBA5, 0x90BE, 0xDBA6, 0x90D0,
- 0xDBA7, 0x90C4, 0xDBA8, 0x90C7, 0xDBA9, 0x90D3, 0xDBAA, 0x90E6,
- 0xDBAB, 0x90E2, 0xDBAC, 0x90DC, 0xDBAD, 0x90D7, 0xDBAE, 0x90DB,
- 0xDBAF, 0x90EB, 0xDBB0, 0x90EF, 0xDBB1, 0x90FE, 0xDBB2, 0x9104,
- 0xDBB3, 0x9122, 0xDBB4, 0x911E, 0xDBB5, 0x9123, 0xDBB6, 0x9131,
- 0xDBB7, 0x912F, 0xDBB8, 0x9139, 0xDBB9, 0x9143, 0xDBBA, 0x9146,
- 0xDBBB, 0x520D, 0xDBBC, 0x5942, 0xDBBD, 0x52A2, 0xDBBE, 0x52AC,
- 0xDBBF, 0x52AD, 0xDBC0, 0x52BE, 0xDBC1, 0x54FF, 0xDBC2, 0x52D0,
- 0xDBC3, 0x52D6, 0xDBC4, 0x52F0, 0xDBC5, 0x53DF, 0xDBC6, 0x71EE,
- 0xDBC7, 0x77CD, 0xDBC8, 0x5EF4, 0xDBC9, 0x51F5, 0xDBCA, 0x51FC,
- 0xDBCB, 0x9B2F, 0xDBCC, 0x53B6, 0xDBCD, 0x5F01, 0xDBCE, 0x755A,
- 0xDBCF, 0x5DEF, 0xDBD0, 0x574C, 0xDBD1, 0x57A9, 0xDBD2, 0x57A1,
- 0xDBD3, 0x587E, 0xDBD4, 0x58BC, 0xDBD5, 0x58C5, 0xDBD6, 0x58D1,
- 0xDBD7, 0x5729, 0xDBD8, 0x572C, 0xDBD9, 0x572A, 0xDBDA, 0x5733,
- 0xDBDB, 0x5739, 0xDBDC, 0x572E, 0xDBDD, 0x572F, 0xDBDE, 0x575C,
- 0xDBDF, 0x573B, 0xDBE0, 0x5742, 0xDBE1, 0x5769, 0xDBE2, 0x5785,
- 0xDBE3, 0x576B, 0xDBE4, 0x5786, 0xDBE5, 0x577C, 0xDBE6, 0x577B,
- 0xDBE7, 0x5768, 0xDBE8, 0x576D, 0xDBE9, 0x5776, 0xDBEA, 0x5773,
- 0xDBEB, 0x57AD, 0xDBEC, 0x57A4, 0xDBED, 0x578C, 0xDBEE, 0x57B2,
- 0xDBEF, 0x57CF, 0xDBF0, 0x57A7, 0xDBF1, 0x57B4, 0xDBF2, 0x5793,
- 0xDBF3, 0x57A0, 0xDBF4, 0x57D5, 0xDBF5, 0x57D8, 0xDBF6, 0x57DA,
- 0xDBF7, 0x57D9, 0xDBF8, 0x57D2, 0xDBF9, 0x57B8, 0xDBFA, 0x57F4,
- 0xDBFB, 0x57EF, 0xDBFC, 0x57F8, 0xDBFD, 0x57E4, 0xDBFE, 0x57DD,
- 0xDC40, 0x8E73, 0xDC41, 0x8E75, 0xDC42, 0x8E77, 0xDC43, 0x8E78,
- 0xDC44, 0x8E79, 0xDC45, 0x8E7A, 0xDC46, 0x8E7B, 0xDC47, 0x8E7D,
- 0xDC48, 0x8E7E, 0xDC49, 0x8E80, 0xDC4A, 0x8E82, 0xDC4B, 0x8E83,
- 0xDC4C, 0x8E84, 0xDC4D, 0x8E86, 0xDC4E, 0x8E88, 0xDC4F, 0x8E89,
- 0xDC50, 0x8E8A, 0xDC51, 0x8E8B, 0xDC52, 0x8E8C, 0xDC53, 0x8E8D,
- 0xDC54, 0x8E8E, 0xDC55, 0x8E91, 0xDC56, 0x8E92, 0xDC57, 0x8E93,
- 0xDC58, 0x8E95, 0xDC59, 0x8E96, 0xDC5A, 0x8E97, 0xDC5B, 0x8E98,
- 0xDC5C, 0x8E99, 0xDC5D, 0x8E9A, 0xDC5E, 0x8E9B, 0xDC5F, 0x8E9D,
- 0xDC60, 0x8E9F, 0xDC61, 0x8EA0, 0xDC62, 0x8EA1, 0xDC63, 0x8EA2,
- 0xDC64, 0x8EA3, 0xDC65, 0x8EA4, 0xDC66, 0x8EA5, 0xDC67, 0x8EA6,
- 0xDC68, 0x8EA7, 0xDC69, 0x8EA8, 0xDC6A, 0x8EA9, 0xDC6B, 0x8EAA,
- 0xDC6C, 0x8EAD, 0xDC6D, 0x8EAE, 0xDC6E, 0x8EB0, 0xDC6F, 0x8EB1,
- 0xDC70, 0x8EB3, 0xDC71, 0x8EB4, 0xDC72, 0x8EB5, 0xDC73, 0x8EB6,
- 0xDC74, 0x8EB7, 0xDC75, 0x8EB8, 0xDC76, 0x8EB9, 0xDC77, 0x8EBB,
- 0xDC78, 0x8EBC, 0xDC79, 0x8EBD, 0xDC7A, 0x8EBE, 0xDC7B, 0x8EBF,
- 0xDC7C, 0x8EC0, 0xDC7D, 0x8EC1, 0xDC7E, 0x8EC2, 0xDC80, 0x8EC3,
- 0xDC81, 0x8EC4, 0xDC82, 0x8EC5, 0xDC83, 0x8EC6, 0xDC84, 0x8EC7,
- 0xDC85, 0x8EC8, 0xDC86, 0x8EC9, 0xDC87, 0x8ECA, 0xDC88, 0x8ECB,
- 0xDC89, 0x8ECC, 0xDC8A, 0x8ECD, 0xDC8B, 0x8ECF, 0xDC8C, 0x8ED0,
- 0xDC8D, 0x8ED1, 0xDC8E, 0x8ED2, 0xDC8F, 0x8ED3, 0xDC90, 0x8ED4,
- 0xDC91, 0x8ED5, 0xDC92, 0x8ED6, 0xDC93, 0x8ED7, 0xDC94, 0x8ED8,
- 0xDC95, 0x8ED9, 0xDC96, 0x8EDA, 0xDC97, 0x8EDB, 0xDC98, 0x8EDC,
- 0xDC99, 0x8EDD, 0xDC9A, 0x8EDE, 0xDC9B, 0x8EDF, 0xDC9C, 0x8EE0,
- 0xDC9D, 0x8EE1, 0xDC9E, 0x8EE2, 0xDC9F, 0x8EE3, 0xDCA0, 0x8EE4,
- 0xDCA1, 0x580B, 0xDCA2, 0x580D, 0xDCA3, 0x57FD, 0xDCA4, 0x57ED,
- 0xDCA5, 0x5800, 0xDCA6, 0x581E, 0xDCA7, 0x5819, 0xDCA8, 0x5844,
- 0xDCA9, 0x5820, 0xDCAA, 0x5865, 0xDCAB, 0x586C, 0xDCAC, 0x5881,
- 0xDCAD, 0x5889, 0xDCAE, 0x589A, 0xDCAF, 0x5880, 0xDCB0, 0x99A8,
- 0xDCB1, 0x9F19, 0xDCB2, 0x61FF, 0xDCB3, 0x8279, 0xDCB4, 0x827D,
- 0xDCB5, 0x827F, 0xDCB6, 0x828F, 0xDCB7, 0x828A, 0xDCB8, 0x82A8,
- 0xDCB9, 0x8284, 0xDCBA, 0x828E, 0xDCBB, 0x8291, 0xDCBC, 0x8297,
- 0xDCBD, 0x8299, 0xDCBE, 0x82AB, 0xDCBF, 0x82B8, 0xDCC0, 0x82BE,
- 0xDCC1, 0x82B0, 0xDCC2, 0x82C8, 0xDCC3, 0x82CA, 0xDCC4, 0x82E3,
- 0xDCC5, 0x8298, 0xDCC6, 0x82B7, 0xDCC7, 0x82AE, 0xDCC8, 0x82CB,
- 0xDCC9, 0x82CC, 0xDCCA, 0x82C1, 0xDCCB, 0x82A9, 0xDCCC, 0x82B4,
- 0xDCCD, 0x82A1, 0xDCCE, 0x82AA, 0xDCCF, 0x829F, 0xDCD0, 0x82C4,
- 0xDCD1, 0x82CE, 0xDCD2, 0x82A4, 0xDCD3, 0x82E1, 0xDCD4, 0x8309,
- 0xDCD5, 0x82F7, 0xDCD6, 0x82E4, 0xDCD7, 0x830F, 0xDCD8, 0x8307,
- 0xDCD9, 0x82DC, 0xDCDA, 0x82F4, 0xDCDB, 0x82D2, 0xDCDC, 0x82D8,
- 0xDCDD, 0x830C, 0xDCDE, 0x82FB, 0xDCDF, 0x82D3, 0xDCE0, 0x8311,
- 0xDCE1, 0x831A, 0xDCE2, 0x8306, 0xDCE3, 0x8314, 0xDCE4, 0x8315,
- 0xDCE5, 0x82E0, 0xDCE6, 0x82D5, 0xDCE7, 0x831C, 0xDCE8, 0x8351,
- 0xDCE9, 0x835B, 0xDCEA, 0x835C, 0xDCEB, 0x8308, 0xDCEC, 0x8392,
- 0xDCED, 0x833C, 0xDCEE, 0x8334, 0xDCEF, 0x8331, 0xDCF0, 0x839B,
- 0xDCF1, 0x835E, 0xDCF2, 0x832F, 0xDCF3, 0x834F, 0xDCF4, 0x8347,
- 0xDCF5, 0x8343, 0xDCF6, 0x835F, 0xDCF7, 0x8340, 0xDCF8, 0x8317,
- 0xDCF9, 0x8360, 0xDCFA, 0x832D, 0xDCFB, 0x833A, 0xDCFC, 0x8333,
- 0xDCFD, 0x8366, 0xDCFE, 0x8365, 0xDD40, 0x8EE5, 0xDD41, 0x8EE6,
- 0xDD42, 0x8EE7, 0xDD43, 0x8EE8, 0xDD44, 0x8EE9, 0xDD45, 0x8EEA,
- 0xDD46, 0x8EEB, 0xDD47, 0x8EEC, 0xDD48, 0x8EED, 0xDD49, 0x8EEE,
- 0xDD4A, 0x8EEF, 0xDD4B, 0x8EF0, 0xDD4C, 0x8EF1, 0xDD4D, 0x8EF2,
- 0xDD4E, 0x8EF3, 0xDD4F, 0x8EF4, 0xDD50, 0x8EF5, 0xDD51, 0x8EF6,
- 0xDD52, 0x8EF7, 0xDD53, 0x8EF8, 0xDD54, 0x8EF9, 0xDD55, 0x8EFA,
- 0xDD56, 0x8EFB, 0xDD57, 0x8EFC, 0xDD58, 0x8EFD, 0xDD59, 0x8EFE,
- 0xDD5A, 0x8EFF, 0xDD5B, 0x8F00, 0xDD5C, 0x8F01, 0xDD5D, 0x8F02,
- 0xDD5E, 0x8F03, 0xDD5F, 0x8F04, 0xDD60, 0x8F05, 0xDD61, 0x8F06,
- 0xDD62, 0x8F07, 0xDD63, 0x8F08, 0xDD64, 0x8F09, 0xDD65, 0x8F0A,
- 0xDD66, 0x8F0B, 0xDD67, 0x8F0C, 0xDD68, 0x8F0D, 0xDD69, 0x8F0E,
- 0xDD6A, 0x8F0F, 0xDD6B, 0x8F10, 0xDD6C, 0x8F11, 0xDD6D, 0x8F12,
- 0xDD6E, 0x8F13, 0xDD6F, 0x8F14, 0xDD70, 0x8F15, 0xDD71, 0x8F16,
- 0xDD72, 0x8F17, 0xDD73, 0x8F18, 0xDD74, 0x8F19, 0xDD75, 0x8F1A,
- 0xDD76, 0x8F1B, 0xDD77, 0x8F1C, 0xDD78, 0x8F1D, 0xDD79, 0x8F1E,
- 0xDD7A, 0x8F1F, 0xDD7B, 0x8F20, 0xDD7C, 0x8F21, 0xDD7D, 0x8F22,
- 0xDD7E, 0x8F23, 0xDD80, 0x8F24, 0xDD81, 0x8F25, 0xDD82, 0x8F26,
- 0xDD83, 0x8F27, 0xDD84, 0x8F28, 0xDD85, 0x8F29, 0xDD86, 0x8F2A,
- 0xDD87, 0x8F2B, 0xDD88, 0x8F2C, 0xDD89, 0x8F2D, 0xDD8A, 0x8F2E,
- 0xDD8B, 0x8F2F, 0xDD8C, 0x8F30, 0xDD8D, 0x8F31, 0xDD8E, 0x8F32,
- 0xDD8F, 0x8F33, 0xDD90, 0x8F34, 0xDD91, 0x8F35, 0xDD92, 0x8F36,
- 0xDD93, 0x8F37, 0xDD94, 0x8F38, 0xDD95, 0x8F39, 0xDD96, 0x8F3A,
- 0xDD97, 0x8F3B, 0xDD98, 0x8F3C, 0xDD99, 0x8F3D, 0xDD9A, 0x8F3E,
- 0xDD9B, 0x8F3F, 0xDD9C, 0x8F40, 0xDD9D, 0x8F41, 0xDD9E, 0x8F42,
- 0xDD9F, 0x8F43, 0xDDA0, 0x8F44, 0xDDA1, 0x8368, 0xDDA2, 0x831B,
- 0xDDA3, 0x8369, 0xDDA4, 0x836C, 0xDDA5, 0x836A, 0xDDA6, 0x836D,
- 0xDDA7, 0x836E, 0xDDA8, 0x83B0, 0xDDA9, 0x8378, 0xDDAA, 0x83B3,
- 0xDDAB, 0x83B4, 0xDDAC, 0x83A0, 0xDDAD, 0x83AA, 0xDDAE, 0x8393,
- 0xDDAF, 0x839C, 0xDDB0, 0x8385, 0xDDB1, 0x837C, 0xDDB2, 0x83B6,
- 0xDDB3, 0x83A9, 0xDDB4, 0x837D, 0xDDB5, 0x83B8, 0xDDB6, 0x837B,
- 0xDDB7, 0x8398, 0xDDB8, 0x839E, 0xDDB9, 0x83A8, 0xDDBA, 0x83BA,
- 0xDDBB, 0x83BC, 0xDDBC, 0x83C1, 0xDDBD, 0x8401, 0xDDBE, 0x83E5,
- 0xDDBF, 0x83D8, 0xDDC0, 0x5807, 0xDDC1, 0x8418, 0xDDC2, 0x840B,
- 0xDDC3, 0x83DD, 0xDDC4, 0x83FD, 0xDDC5, 0x83D6, 0xDDC6, 0x841C,
- 0xDDC7, 0x8438, 0xDDC8, 0x8411, 0xDDC9, 0x8406, 0xDDCA, 0x83D4,
- 0xDDCB, 0x83DF, 0xDDCC, 0x840F, 0xDDCD, 0x8403, 0xDDCE, 0x83F8,
- 0xDDCF, 0x83F9, 0xDDD0, 0x83EA, 0xDDD1, 0x83C5, 0xDDD2, 0x83C0,
- 0xDDD3, 0x8426, 0xDDD4, 0x83F0, 0xDDD5, 0x83E1, 0xDDD6, 0x845C,
- 0xDDD7, 0x8451, 0xDDD8, 0x845A, 0xDDD9, 0x8459, 0xDDDA, 0x8473,
- 0xDDDB, 0x8487, 0xDDDC, 0x8488, 0xDDDD, 0x847A, 0xDDDE, 0x8489,
- 0xDDDF, 0x8478, 0xDDE0, 0x843C, 0xDDE1, 0x8446, 0xDDE2, 0x8469,
- 0xDDE3, 0x8476, 0xDDE4, 0x848C, 0xDDE5, 0x848E, 0xDDE6, 0x8431,
- 0xDDE7, 0x846D, 0xDDE8, 0x84C1, 0xDDE9, 0x84CD, 0xDDEA, 0x84D0,
- 0xDDEB, 0x84E6, 0xDDEC, 0x84BD, 0xDDED, 0x84D3, 0xDDEE, 0x84CA,
- 0xDDEF, 0x84BF, 0xDDF0, 0x84BA, 0xDDF1, 0x84E0, 0xDDF2, 0x84A1,
- 0xDDF3, 0x84B9, 0xDDF4, 0x84B4, 0xDDF5, 0x8497, 0xDDF6, 0x84E5,
- 0xDDF7, 0x84E3, 0xDDF8, 0x850C, 0xDDF9, 0x750D, 0xDDFA, 0x8538,
- 0xDDFB, 0x84F0, 0xDDFC, 0x8539, 0xDDFD, 0x851F, 0xDDFE, 0x853A,
- 0xDE40, 0x8F45, 0xDE41, 0x8F46, 0xDE42, 0x8F47, 0xDE43, 0x8F48,
- 0xDE44, 0x8F49, 0xDE45, 0x8F4A, 0xDE46, 0x8F4B, 0xDE47, 0x8F4C,
- 0xDE48, 0x8F4D, 0xDE49, 0x8F4E, 0xDE4A, 0x8F4F, 0xDE4B, 0x8F50,
- 0xDE4C, 0x8F51, 0xDE4D, 0x8F52, 0xDE4E, 0x8F53, 0xDE4F, 0x8F54,
- 0xDE50, 0x8F55, 0xDE51, 0x8F56, 0xDE52, 0x8F57, 0xDE53, 0x8F58,
- 0xDE54, 0x8F59, 0xDE55, 0x8F5A, 0xDE56, 0x8F5B, 0xDE57, 0x8F5C,
- 0xDE58, 0x8F5D, 0xDE59, 0x8F5E, 0xDE5A, 0x8F5F, 0xDE5B, 0x8F60,
- 0xDE5C, 0x8F61, 0xDE5D, 0x8F62, 0xDE5E, 0x8F63, 0xDE5F, 0x8F64,
- 0xDE60, 0x8F65, 0xDE61, 0x8F6A, 0xDE62, 0x8F80, 0xDE63, 0x8F8C,
- 0xDE64, 0x8F92, 0xDE65, 0x8F9D, 0xDE66, 0x8FA0, 0xDE67, 0x8FA1,
- 0xDE68, 0x8FA2, 0xDE69, 0x8FA4, 0xDE6A, 0x8FA5, 0xDE6B, 0x8FA6,
- 0xDE6C, 0x8FA7, 0xDE6D, 0x8FAA, 0xDE6E, 0x8FAC, 0xDE6F, 0x8FAD,
- 0xDE70, 0x8FAE, 0xDE71, 0x8FAF, 0xDE72, 0x8FB2, 0xDE73, 0x8FB3,
- 0xDE74, 0x8FB4, 0xDE75, 0x8FB5, 0xDE76, 0x8FB7, 0xDE77, 0x8FB8,
- 0xDE78, 0x8FBA, 0xDE79, 0x8FBB, 0xDE7A, 0x8FBC, 0xDE7B, 0x8FBF,
- 0xDE7C, 0x8FC0, 0xDE7D, 0x8FC3, 0xDE7E, 0x8FC6, 0xDE80, 0x8FC9,
- 0xDE81, 0x8FCA, 0xDE82, 0x8FCB, 0xDE83, 0x8FCC, 0xDE84, 0x8FCD,
- 0xDE85, 0x8FCF, 0xDE86, 0x8FD2, 0xDE87, 0x8FD6, 0xDE88, 0x8FD7,
- 0xDE89, 0x8FDA, 0xDE8A, 0x8FE0, 0xDE8B, 0x8FE1, 0xDE8C, 0x8FE3,
- 0xDE8D, 0x8FE7, 0xDE8E, 0x8FEC, 0xDE8F, 0x8FEF, 0xDE90, 0x8FF1,
- 0xDE91, 0x8FF2, 0xDE92, 0x8FF4, 0xDE93, 0x8FF5, 0xDE94, 0x8FF6,
- 0xDE95, 0x8FFA, 0xDE96, 0x8FFB, 0xDE97, 0x8FFC, 0xDE98, 0x8FFE,
- 0xDE99, 0x8FFF, 0xDE9A, 0x9007, 0xDE9B, 0x9008, 0xDE9C, 0x900C,
- 0xDE9D, 0x900E, 0xDE9E, 0x9013, 0xDE9F, 0x9015, 0xDEA0, 0x9018,
- 0xDEA1, 0x8556, 0xDEA2, 0x853B, 0xDEA3, 0x84FF, 0xDEA4, 0x84FC,
- 0xDEA5, 0x8559, 0xDEA6, 0x8548, 0xDEA7, 0x8568, 0xDEA8, 0x8564,
- 0xDEA9, 0x855E, 0xDEAA, 0x857A, 0xDEAB, 0x77A2, 0xDEAC, 0x8543,
- 0xDEAD, 0x8572, 0xDEAE, 0x857B, 0xDEAF, 0x85A4, 0xDEB0, 0x85A8,
- 0xDEB1, 0x8587, 0xDEB2, 0x858F, 0xDEB3, 0x8579, 0xDEB4, 0x85AE,
- 0xDEB5, 0x859C, 0xDEB6, 0x8585, 0xDEB7, 0x85B9, 0xDEB8, 0x85B7,
- 0xDEB9, 0x85B0, 0xDEBA, 0x85D3, 0xDEBB, 0x85C1, 0xDEBC, 0x85DC,
- 0xDEBD, 0x85FF, 0xDEBE, 0x8627, 0xDEBF, 0x8605, 0xDEC0, 0x8629,
- 0xDEC1, 0x8616, 0xDEC2, 0x863C, 0xDEC3, 0x5EFE, 0xDEC4, 0x5F08,
- 0xDEC5, 0x593C, 0xDEC6, 0x5941, 0xDEC7, 0x8037, 0xDEC8, 0x5955,
- 0xDEC9, 0x595A, 0xDECA, 0x5958, 0xDECB, 0x530F, 0xDECC, 0x5C22,
- 0xDECD, 0x5C25, 0xDECE, 0x5C2C, 0xDECF, 0x5C34, 0xDED0, 0x624C,
- 0xDED1, 0x626A, 0xDED2, 0x629F, 0xDED3, 0x62BB, 0xDED4, 0x62CA,
- 0xDED5, 0x62DA, 0xDED6, 0x62D7, 0xDED7, 0x62EE, 0xDED8, 0x6322,
- 0xDED9, 0x62F6, 0xDEDA, 0x6339, 0xDEDB, 0x634B, 0xDEDC, 0x6343,
- 0xDEDD, 0x63AD, 0xDEDE, 0x63F6, 0xDEDF, 0x6371, 0xDEE0, 0x637A,
- 0xDEE1, 0x638E, 0xDEE2, 0x63B4, 0xDEE3, 0x636D, 0xDEE4, 0x63AC,
- 0xDEE5, 0x638A, 0xDEE6, 0x6369, 0xDEE7, 0x63AE, 0xDEE8, 0x63BC,
- 0xDEE9, 0x63F2, 0xDEEA, 0x63F8, 0xDEEB, 0x63E0, 0xDEEC, 0x63FF,
- 0xDEED, 0x63C4, 0xDEEE, 0x63DE, 0xDEEF, 0x63CE, 0xDEF0, 0x6452,
- 0xDEF1, 0x63C6, 0xDEF2, 0x63BE, 0xDEF3, 0x6445, 0xDEF4, 0x6441,
- 0xDEF5, 0x640B, 0xDEF6, 0x641B, 0xDEF7, 0x6420, 0xDEF8, 0x640C,
- 0xDEF9, 0x6426, 0xDEFA, 0x6421, 0xDEFB, 0x645E, 0xDEFC, 0x6484,
- 0xDEFD, 0x646D, 0xDEFE, 0x6496, 0xDF40, 0x9019, 0xDF41, 0x901C,
- 0xDF42, 0x9023, 0xDF43, 0x9024, 0xDF44, 0x9025, 0xDF45, 0x9027,
- 0xDF46, 0x9028, 0xDF47, 0x9029, 0xDF48, 0x902A, 0xDF49, 0x902B,
- 0xDF4A, 0x902C, 0xDF4B, 0x9030, 0xDF4C, 0x9031, 0xDF4D, 0x9032,
- 0xDF4E, 0x9033, 0xDF4F, 0x9034, 0xDF50, 0x9037, 0xDF51, 0x9039,
- 0xDF52, 0x903A, 0xDF53, 0x903D, 0xDF54, 0x903F, 0xDF55, 0x9040,
- 0xDF56, 0x9043, 0xDF57, 0x9045, 0xDF58, 0x9046, 0xDF59, 0x9048,
- 0xDF5A, 0x9049, 0xDF5B, 0x904A, 0xDF5C, 0x904B, 0xDF5D, 0x904C,
- 0xDF5E, 0x904E, 0xDF5F, 0x9054, 0xDF60, 0x9055, 0xDF61, 0x9056,
- 0xDF62, 0x9059, 0xDF63, 0x905A, 0xDF64, 0x905C, 0xDF65, 0x905D,
- 0xDF66, 0x905E, 0xDF67, 0x905F, 0xDF68, 0x9060, 0xDF69, 0x9061,
- 0xDF6A, 0x9064, 0xDF6B, 0x9066, 0xDF6C, 0x9067, 0xDF6D, 0x9069,
- 0xDF6E, 0x906A, 0xDF6F, 0x906B, 0xDF70, 0x906C, 0xDF71, 0x906F,
- 0xDF72, 0x9070, 0xDF73, 0x9071, 0xDF74, 0x9072, 0xDF75, 0x9073,
- 0xDF76, 0x9076, 0xDF77, 0x9077, 0xDF78, 0x9078, 0xDF79, 0x9079,
- 0xDF7A, 0x907A, 0xDF7B, 0x907B, 0xDF7C, 0x907C, 0xDF7D, 0x907E,
- 0xDF7E, 0x9081, 0xDF80, 0x9084, 0xDF81, 0x9085, 0xDF82, 0x9086,
- 0xDF83, 0x9087, 0xDF84, 0x9089, 0xDF85, 0x908A, 0xDF86, 0x908C,
- 0xDF87, 0x908D, 0xDF88, 0x908E, 0xDF89, 0x908F, 0xDF8A, 0x9090,
- 0xDF8B, 0x9092, 0xDF8C, 0x9094, 0xDF8D, 0x9096, 0xDF8E, 0x9098,
- 0xDF8F, 0x909A, 0xDF90, 0x909C, 0xDF91, 0x909E, 0xDF92, 0x909F,
- 0xDF93, 0x90A0, 0xDF94, 0x90A4, 0xDF95, 0x90A5, 0xDF96, 0x90A7,
- 0xDF97, 0x90A8, 0xDF98, 0x90A9, 0xDF99, 0x90AB, 0xDF9A, 0x90AD,
- 0xDF9B, 0x90B2, 0xDF9C, 0x90B7, 0xDF9D, 0x90BC, 0xDF9E, 0x90BD,
- 0xDF9F, 0x90BF, 0xDFA0, 0x90C0, 0xDFA1, 0x647A, 0xDFA2, 0x64B7,
- 0xDFA3, 0x64B8, 0xDFA4, 0x6499, 0xDFA5, 0x64BA, 0xDFA6, 0x64C0,
- 0xDFA7, 0x64D0, 0xDFA8, 0x64D7, 0xDFA9, 0x64E4, 0xDFAA, 0x64E2,
- 0xDFAB, 0x6509, 0xDFAC, 0x6525, 0xDFAD, 0x652E, 0xDFAE, 0x5F0B,
- 0xDFAF, 0x5FD2, 0xDFB0, 0x7519, 0xDFB1, 0x5F11, 0xDFB2, 0x535F,
- 0xDFB3, 0x53F1, 0xDFB4, 0x53FD, 0xDFB5, 0x53E9, 0xDFB6, 0x53E8,
- 0xDFB7, 0x53FB, 0xDFB8, 0x5412, 0xDFB9, 0x5416, 0xDFBA, 0x5406,
- 0xDFBB, 0x544B, 0xDFBC, 0x5452, 0xDFBD, 0x5453, 0xDFBE, 0x5454,
- 0xDFBF, 0x5456, 0xDFC0, 0x5443, 0xDFC1, 0x5421, 0xDFC2, 0x5457,
- 0xDFC3, 0x5459, 0xDFC4, 0x5423, 0xDFC5, 0x5432, 0xDFC6, 0x5482,
- 0xDFC7, 0x5494, 0xDFC8, 0x5477, 0xDFC9, 0x5471, 0xDFCA, 0x5464,
- 0xDFCB, 0x549A, 0xDFCC, 0x549B, 0xDFCD, 0x5484, 0xDFCE, 0x5476,
- 0xDFCF, 0x5466, 0xDFD0, 0x549D, 0xDFD1, 0x54D0, 0xDFD2, 0x54AD,
- 0xDFD3, 0x54C2, 0xDFD4, 0x54B4, 0xDFD5, 0x54D2, 0xDFD6, 0x54A7,
- 0xDFD7, 0x54A6, 0xDFD8, 0x54D3, 0xDFD9, 0x54D4, 0xDFDA, 0x5472,
- 0xDFDB, 0x54A3, 0xDFDC, 0x54D5, 0xDFDD, 0x54BB, 0xDFDE, 0x54BF,
- 0xDFDF, 0x54CC, 0xDFE0, 0x54D9, 0xDFE1, 0x54DA, 0xDFE2, 0x54DC,
- 0xDFE3, 0x54A9, 0xDFE4, 0x54AA, 0xDFE5, 0x54A4, 0xDFE6, 0x54DD,
- 0xDFE7, 0x54CF, 0xDFE8, 0x54DE, 0xDFE9, 0x551B, 0xDFEA, 0x54E7,
- 0xDFEB, 0x5520, 0xDFEC, 0x54FD, 0xDFED, 0x5514, 0xDFEE, 0x54F3,
- 0xDFEF, 0x5522, 0xDFF0, 0x5523, 0xDFF1, 0x550F, 0xDFF2, 0x5511,
- 0xDFF3, 0x5527, 0xDFF4, 0x552A, 0xDFF5, 0x5567, 0xDFF6, 0x558F,
- 0xDFF7, 0x55B5, 0xDFF8, 0x5549, 0xDFF9, 0x556D, 0xDFFA, 0x5541,
- 0xDFFB, 0x5555, 0xDFFC, 0x553F, 0xDFFD, 0x5550, 0xDFFE, 0x553C,
- 0xE040, 0x90C2, 0xE041, 0x90C3, 0xE042, 0x90C6, 0xE043, 0x90C8,
- 0xE044, 0x90C9, 0xE045, 0x90CB, 0xE046, 0x90CC, 0xE047, 0x90CD,
- 0xE048, 0x90D2, 0xE049, 0x90D4, 0xE04A, 0x90D5, 0xE04B, 0x90D6,
- 0xE04C, 0x90D8, 0xE04D, 0x90D9, 0xE04E, 0x90DA, 0xE04F, 0x90DE,
- 0xE050, 0x90DF, 0xE051, 0x90E0, 0xE052, 0x90E3, 0xE053, 0x90E4,
- 0xE054, 0x90E5, 0xE055, 0x90E9, 0xE056, 0x90EA, 0xE057, 0x90EC,
- 0xE058, 0x90EE, 0xE059, 0x90F0, 0xE05A, 0x90F1, 0xE05B, 0x90F2,
- 0xE05C, 0x90F3, 0xE05D, 0x90F5, 0xE05E, 0x90F6, 0xE05F, 0x90F7,
- 0xE060, 0x90F9, 0xE061, 0x90FA, 0xE062, 0x90FB, 0xE063, 0x90FC,
- 0xE064, 0x90FF, 0xE065, 0x9100, 0xE066, 0x9101, 0xE067, 0x9103,
- 0xE068, 0x9105, 0xE069, 0x9106, 0xE06A, 0x9107, 0xE06B, 0x9108,
- 0xE06C, 0x9109, 0xE06D, 0x910A, 0xE06E, 0x910B, 0xE06F, 0x910C,
- 0xE070, 0x910D, 0xE071, 0x910E, 0xE072, 0x910F, 0xE073, 0x9110,
- 0xE074, 0x9111, 0xE075, 0x9112, 0xE076, 0x9113, 0xE077, 0x9114,
- 0xE078, 0x9115, 0xE079, 0x9116, 0xE07A, 0x9117, 0xE07B, 0x9118,
- 0xE07C, 0x911A, 0xE07D, 0x911B, 0xE07E, 0x911C, 0xE080, 0x911D,
- 0xE081, 0x911F, 0xE082, 0x9120, 0xE083, 0x9121, 0xE084, 0x9124,
- 0xE085, 0x9125, 0xE086, 0x9126, 0xE087, 0x9127, 0xE088, 0x9128,
- 0xE089, 0x9129, 0xE08A, 0x912A, 0xE08B, 0x912B, 0xE08C, 0x912C,
- 0xE08D, 0x912D, 0xE08E, 0x912E, 0xE08F, 0x9130, 0xE090, 0x9132,
- 0xE091, 0x9133, 0xE092, 0x9134, 0xE093, 0x9135, 0xE094, 0x9136,
- 0xE095, 0x9137, 0xE096, 0x9138, 0xE097, 0x913A, 0xE098, 0x913B,
- 0xE099, 0x913C, 0xE09A, 0x913D, 0xE09B, 0x913E, 0xE09C, 0x913F,
- 0xE09D, 0x9140, 0xE09E, 0x9141, 0xE09F, 0x9142, 0xE0A0, 0x9144,
- 0xE0A1, 0x5537, 0xE0A2, 0x5556, 0xE0A3, 0x5575, 0xE0A4, 0x5576,
- 0xE0A5, 0x5577, 0xE0A6, 0x5533, 0xE0A7, 0x5530, 0xE0A8, 0x555C,
- 0xE0A9, 0x558B, 0xE0AA, 0x55D2, 0xE0AB, 0x5583, 0xE0AC, 0x55B1,
- 0xE0AD, 0x55B9, 0xE0AE, 0x5588, 0xE0AF, 0x5581, 0xE0B0, 0x559F,
- 0xE0B1, 0x557E, 0xE0B2, 0x55D6, 0xE0B3, 0x5591, 0xE0B4, 0x557B,
- 0xE0B5, 0x55DF, 0xE0B6, 0x55BD, 0xE0B7, 0x55BE, 0xE0B8, 0x5594,
- 0xE0B9, 0x5599, 0xE0BA, 0x55EA, 0xE0BB, 0x55F7, 0xE0BC, 0x55C9,
- 0xE0BD, 0x561F, 0xE0BE, 0x55D1, 0xE0BF, 0x55EB, 0xE0C0, 0x55EC,
- 0xE0C1, 0x55D4, 0xE0C2, 0x55E6, 0xE0C3, 0x55DD, 0xE0C4, 0x55C4,
- 0xE0C5, 0x55EF, 0xE0C6, 0x55E5, 0xE0C7, 0x55F2, 0xE0C8, 0x55F3,
- 0xE0C9, 0x55CC, 0xE0CA, 0x55CD, 0xE0CB, 0x55E8, 0xE0CC, 0x55F5,
- 0xE0CD, 0x55E4, 0xE0CE, 0x8F94, 0xE0CF, 0x561E, 0xE0D0, 0x5608,
- 0xE0D1, 0x560C, 0xE0D2, 0x5601, 0xE0D3, 0x5624, 0xE0D4, 0x5623,
- 0xE0D5, 0x55FE, 0xE0D6, 0x5600, 0xE0D7, 0x5627, 0xE0D8, 0x562D,
- 0xE0D9, 0x5658, 0xE0DA, 0x5639, 0xE0DB, 0x5657, 0xE0DC, 0x562C,
- 0xE0DD, 0x564D, 0xE0DE, 0x5662, 0xE0DF, 0x5659, 0xE0E0, 0x565C,
- 0xE0E1, 0x564C, 0xE0E2, 0x5654, 0xE0E3, 0x5686, 0xE0E4, 0x5664,
- 0xE0E5, 0x5671, 0xE0E6, 0x566B, 0xE0E7, 0x567B, 0xE0E8, 0x567C,
- 0xE0E9, 0x5685, 0xE0EA, 0x5693, 0xE0EB, 0x56AF, 0xE0EC, 0x56D4,
- 0xE0ED, 0x56D7, 0xE0EE, 0x56DD, 0xE0EF, 0x56E1, 0xE0F0, 0x56F5,
- 0xE0F1, 0x56EB, 0xE0F2, 0x56F9, 0xE0F3, 0x56FF, 0xE0F4, 0x5704,
- 0xE0F5, 0x570A, 0xE0F6, 0x5709, 0xE0F7, 0x571C, 0xE0F8, 0x5E0F,
- 0xE0F9, 0x5E19, 0xE0FA, 0x5E14, 0xE0FB, 0x5E11, 0xE0FC, 0x5E31,
- 0xE0FD, 0x5E3B, 0xE0FE, 0x5E3C, 0xE140, 0x9145, 0xE141, 0x9147,
- 0xE142, 0x9148, 0xE143, 0x9151, 0xE144, 0x9153, 0xE145, 0x9154,
- 0xE146, 0x9155, 0xE147, 0x9156, 0xE148, 0x9158, 0xE149, 0x9159,
- 0xE14A, 0x915B, 0xE14B, 0x915C, 0xE14C, 0x915F, 0xE14D, 0x9160,
- 0xE14E, 0x9166, 0xE14F, 0x9167, 0xE150, 0x9168, 0xE151, 0x916B,
- 0xE152, 0x916D, 0xE153, 0x9173, 0xE154, 0x917A, 0xE155, 0x917B,
- 0xE156, 0x917C, 0xE157, 0x9180, 0xE158, 0x9181, 0xE159, 0x9182,
- 0xE15A, 0x9183, 0xE15B, 0x9184, 0xE15C, 0x9186, 0xE15D, 0x9188,
- 0xE15E, 0x918A, 0xE15F, 0x918E, 0xE160, 0x918F, 0xE161, 0x9193,
- 0xE162, 0x9194, 0xE163, 0x9195, 0xE164, 0x9196, 0xE165, 0x9197,
- 0xE166, 0x9198, 0xE167, 0x9199, 0xE168, 0x919C, 0xE169, 0x919D,
- 0xE16A, 0x919E, 0xE16B, 0x919F, 0xE16C, 0x91A0, 0xE16D, 0x91A1,
- 0xE16E, 0x91A4, 0xE16F, 0x91A5, 0xE170, 0x91A6, 0xE171, 0x91A7,
- 0xE172, 0x91A8, 0xE173, 0x91A9, 0xE174, 0x91AB, 0xE175, 0x91AC,
- 0xE176, 0x91B0, 0xE177, 0x91B1, 0xE178, 0x91B2, 0xE179, 0x91B3,
- 0xE17A, 0x91B6, 0xE17B, 0x91B7, 0xE17C, 0x91B8, 0xE17D, 0x91B9,
- 0xE17E, 0x91BB, 0xE180, 0x91BC, 0xE181, 0x91BD, 0xE182, 0x91BE,
- 0xE183, 0x91BF, 0xE184, 0x91C0, 0xE185, 0x91C1, 0xE186, 0x91C2,
- 0xE187, 0x91C3, 0xE188, 0x91C4, 0xE189, 0x91C5, 0xE18A, 0x91C6,
- 0xE18B, 0x91C8, 0xE18C, 0x91CB, 0xE18D, 0x91D0, 0xE18E, 0x91D2,
- 0xE18F, 0x91D3, 0xE190, 0x91D4, 0xE191, 0x91D5, 0xE192, 0x91D6,
- 0xE193, 0x91D7, 0xE194, 0x91D8, 0xE195, 0x91D9, 0xE196, 0x91DA,
- 0xE197, 0x91DB, 0xE198, 0x91DD, 0xE199, 0x91DE, 0xE19A, 0x91DF,
- 0xE19B, 0x91E0, 0xE19C, 0x91E1, 0xE19D, 0x91E2, 0xE19E, 0x91E3,
- 0xE19F, 0x91E4, 0xE1A0, 0x91E5, 0xE1A1, 0x5E37, 0xE1A2, 0x5E44,
- 0xE1A3, 0x5E54, 0xE1A4, 0x5E5B, 0xE1A5, 0x5E5E, 0xE1A6, 0x5E61,
- 0xE1A7, 0x5C8C, 0xE1A8, 0x5C7A, 0xE1A9, 0x5C8D, 0xE1AA, 0x5C90,
- 0xE1AB, 0x5C96, 0xE1AC, 0x5C88, 0xE1AD, 0x5C98, 0xE1AE, 0x5C99,
- 0xE1AF, 0x5C91, 0xE1B0, 0x5C9A, 0xE1B1, 0x5C9C, 0xE1B2, 0x5CB5,
- 0xE1B3, 0x5CA2, 0xE1B4, 0x5CBD, 0xE1B5, 0x5CAC, 0xE1B6, 0x5CAB,
- 0xE1B7, 0x5CB1, 0xE1B8, 0x5CA3, 0xE1B9, 0x5CC1, 0xE1BA, 0x5CB7,
- 0xE1BB, 0x5CC4, 0xE1BC, 0x5CD2, 0xE1BD, 0x5CE4, 0xE1BE, 0x5CCB,
- 0xE1BF, 0x5CE5, 0xE1C0, 0x5D02, 0xE1C1, 0x5D03, 0xE1C2, 0x5D27,
- 0xE1C3, 0x5D26, 0xE1C4, 0x5D2E, 0xE1C5, 0x5D24, 0xE1C6, 0x5D1E,
- 0xE1C7, 0x5D06, 0xE1C8, 0x5D1B, 0xE1C9, 0x5D58, 0xE1CA, 0x5D3E,
- 0xE1CB, 0x5D34, 0xE1CC, 0x5D3D, 0xE1CD, 0x5D6C, 0xE1CE, 0x5D5B,
- 0xE1CF, 0x5D6F, 0xE1D0, 0x5D5D, 0xE1D1, 0x5D6B, 0xE1D2, 0x5D4B,
- 0xE1D3, 0x5D4A, 0xE1D4, 0x5D69, 0xE1D5, 0x5D74, 0xE1D6, 0x5D82,
- 0xE1D7, 0x5D99, 0xE1D8, 0x5D9D, 0xE1D9, 0x8C73, 0xE1DA, 0x5DB7,
- 0xE1DB, 0x5DC5, 0xE1DC, 0x5F73, 0xE1DD, 0x5F77, 0xE1DE, 0x5F82,
- 0xE1DF, 0x5F87, 0xE1E0, 0x5F89, 0xE1E1, 0x5F8C, 0xE1E2, 0x5F95,
- 0xE1E3, 0x5F99, 0xE1E4, 0x5F9C, 0xE1E5, 0x5FA8, 0xE1E6, 0x5FAD,
- 0xE1E7, 0x5FB5, 0xE1E8, 0x5FBC, 0xE1E9, 0x8862, 0xE1EA, 0x5F61,
- 0xE1EB, 0x72AD, 0xE1EC, 0x72B0, 0xE1ED, 0x72B4, 0xE1EE, 0x72B7,
- 0xE1EF, 0x72B8, 0xE1F0, 0x72C3, 0xE1F1, 0x72C1, 0xE1F2, 0x72CE,
- 0xE1F3, 0x72CD, 0xE1F4, 0x72D2, 0xE1F5, 0x72E8, 0xE1F6, 0x72EF,
- 0xE1F7, 0x72E9, 0xE1F8, 0x72F2, 0xE1F9, 0x72F4, 0xE1FA, 0x72F7,
- 0xE1FB, 0x7301, 0xE1FC, 0x72F3, 0xE1FD, 0x7303, 0xE1FE, 0x72FA,
- 0xE240, 0x91E6, 0xE241, 0x91E7, 0xE242, 0x91E8, 0xE243, 0x91E9,
- 0xE244, 0x91EA, 0xE245, 0x91EB, 0xE246, 0x91EC, 0xE247, 0x91ED,
- 0xE248, 0x91EE, 0xE249, 0x91EF, 0xE24A, 0x91F0, 0xE24B, 0x91F1,
- 0xE24C, 0x91F2, 0xE24D, 0x91F3, 0xE24E, 0x91F4, 0xE24F, 0x91F5,
- 0xE250, 0x91F6, 0xE251, 0x91F7, 0xE252, 0x91F8, 0xE253, 0x91F9,
- 0xE254, 0x91FA, 0xE255, 0x91FB, 0xE256, 0x91FC, 0xE257, 0x91FD,
- 0xE258, 0x91FE, 0xE259, 0x91FF, 0xE25A, 0x9200, 0xE25B, 0x9201,
- 0xE25C, 0x9202, 0xE25D, 0x9203, 0xE25E, 0x9204, 0xE25F, 0x9205,
- 0xE260, 0x9206, 0xE261, 0x9207, 0xE262, 0x9208, 0xE263, 0x9209,
- 0xE264, 0x920A, 0xE265, 0x920B, 0xE266, 0x920C, 0xE267, 0x920D,
- 0xE268, 0x920E, 0xE269, 0x920F, 0xE26A, 0x9210, 0xE26B, 0x9211,
- 0xE26C, 0x9212, 0xE26D, 0x9213, 0xE26E, 0x9214, 0xE26F, 0x9215,
- 0xE270, 0x9216, 0xE271, 0x9217, 0xE272, 0x9218, 0xE273, 0x9219,
- 0xE274, 0x921A, 0xE275, 0x921B, 0xE276, 0x921C, 0xE277, 0x921D,
- 0xE278, 0x921E, 0xE279, 0x921F, 0xE27A, 0x9220, 0xE27B, 0x9221,
- 0xE27C, 0x9222, 0xE27D, 0x9223, 0xE27E, 0x9224, 0xE280, 0x9225,
- 0xE281, 0x9226, 0xE282, 0x9227, 0xE283, 0x9228, 0xE284, 0x9229,
- 0xE285, 0x922A, 0xE286, 0x922B, 0xE287, 0x922C, 0xE288, 0x922D,
- 0xE289, 0x922E, 0xE28A, 0x922F, 0xE28B, 0x9230, 0xE28C, 0x9231,
- 0xE28D, 0x9232, 0xE28E, 0x9233, 0xE28F, 0x9234, 0xE290, 0x9235,
- 0xE291, 0x9236, 0xE292, 0x9237, 0xE293, 0x9238, 0xE294, 0x9239,
- 0xE295, 0x923A, 0xE296, 0x923B, 0xE297, 0x923C, 0xE298, 0x923D,
- 0xE299, 0x923E, 0xE29A, 0x923F, 0xE29B, 0x9240, 0xE29C, 0x9241,
- 0xE29D, 0x9242, 0xE29E, 0x9243, 0xE29F, 0x9244, 0xE2A0, 0x9245,
- 0xE2A1, 0x72FB, 0xE2A2, 0x7317, 0xE2A3, 0x7313, 0xE2A4, 0x7321,
- 0xE2A5, 0x730A, 0xE2A6, 0x731E, 0xE2A7, 0x731D, 0xE2A8, 0x7315,
- 0xE2A9, 0x7322, 0xE2AA, 0x7339, 0xE2AB, 0x7325, 0xE2AC, 0x732C,
- 0xE2AD, 0x7338, 0xE2AE, 0x7331, 0xE2AF, 0x7350, 0xE2B0, 0x734D,
- 0xE2B1, 0x7357, 0xE2B2, 0x7360, 0xE2B3, 0x736C, 0xE2B4, 0x736F,
- 0xE2B5, 0x737E, 0xE2B6, 0x821B, 0xE2B7, 0x5925, 0xE2B8, 0x98E7,
- 0xE2B9, 0x5924, 0xE2BA, 0x5902, 0xE2BB, 0x9963, 0xE2BC, 0x9967,
- 0xE2BD, 0x9968, 0xE2BE, 0x9969, 0xE2BF, 0x996A, 0xE2C0, 0x996B,
- 0xE2C1, 0x996C, 0xE2C2, 0x9974, 0xE2C3, 0x9977, 0xE2C4, 0x997D,
- 0xE2C5, 0x9980, 0xE2C6, 0x9984, 0xE2C7, 0x9987, 0xE2C8, 0x998A,
- 0xE2C9, 0x998D, 0xE2CA, 0x9990, 0xE2CB, 0x9991, 0xE2CC, 0x9993,
- 0xE2CD, 0x9994, 0xE2CE, 0x9995, 0xE2CF, 0x5E80, 0xE2D0, 0x5E91,
- 0xE2D1, 0x5E8B, 0xE2D2, 0x5E96, 0xE2D3, 0x5EA5, 0xE2D4, 0x5EA0,
- 0xE2D5, 0x5EB9, 0xE2D6, 0x5EB5, 0xE2D7, 0x5EBE, 0xE2D8, 0x5EB3,
- 0xE2D9, 0x8D53, 0xE2DA, 0x5ED2, 0xE2DB, 0x5ED1, 0xE2DC, 0x5EDB,
- 0xE2DD, 0x5EE8, 0xE2DE, 0x5EEA, 0xE2DF, 0x81BA, 0xE2E0, 0x5FC4,
- 0xE2E1, 0x5FC9, 0xE2E2, 0x5FD6, 0xE2E3, 0x5FCF, 0xE2E4, 0x6003,
- 0xE2E5, 0x5FEE, 0xE2E6, 0x6004, 0xE2E7, 0x5FE1, 0xE2E8, 0x5FE4,
- 0xE2E9, 0x5FFE, 0xE2EA, 0x6005, 0xE2EB, 0x6006, 0xE2EC, 0x5FEA,
- 0xE2ED, 0x5FED, 0xE2EE, 0x5FF8, 0xE2EF, 0x6019, 0xE2F0, 0x6035,
- 0xE2F1, 0x6026, 0xE2F2, 0x601B, 0xE2F3, 0x600F, 0xE2F4, 0x600D,
- 0xE2F5, 0x6029, 0xE2F6, 0x602B, 0xE2F7, 0x600A, 0xE2F8, 0x603F,
- 0xE2F9, 0x6021, 0xE2FA, 0x6078, 0xE2FB, 0x6079, 0xE2FC, 0x607B,
- 0xE2FD, 0x607A, 0xE2FE, 0x6042, 0xE340, 0x9246, 0xE341, 0x9247,
- 0xE342, 0x9248, 0xE343, 0x9249, 0xE344, 0x924A, 0xE345, 0x924B,
- 0xE346, 0x924C, 0xE347, 0x924D, 0xE348, 0x924E, 0xE349, 0x924F,
- 0xE34A, 0x9250, 0xE34B, 0x9251, 0xE34C, 0x9252, 0xE34D, 0x9253,
- 0xE34E, 0x9254, 0xE34F, 0x9255, 0xE350, 0x9256, 0xE351, 0x9257,
- 0xE352, 0x9258, 0xE353, 0x9259, 0xE354, 0x925A, 0xE355, 0x925B,
- 0xE356, 0x925C, 0xE357, 0x925D, 0xE358, 0x925E, 0xE359, 0x925F,
- 0xE35A, 0x9260, 0xE35B, 0x9261, 0xE35C, 0x9262, 0xE35D, 0x9263,
- 0xE35E, 0x9264, 0xE35F, 0x9265, 0xE360, 0x9266, 0xE361, 0x9267,
- 0xE362, 0x9268, 0xE363, 0x9269, 0xE364, 0x926A, 0xE365, 0x926B,
- 0xE366, 0x926C, 0xE367, 0x926D, 0xE368, 0x926E, 0xE369, 0x926F,
- 0xE36A, 0x9270, 0xE36B, 0x9271, 0xE36C, 0x9272, 0xE36D, 0x9273,
- 0xE36E, 0x9275, 0xE36F, 0x9276, 0xE370, 0x9277, 0xE371, 0x9278,
- 0xE372, 0x9279, 0xE373, 0x927A, 0xE374, 0x927B, 0xE375, 0x927C,
- 0xE376, 0x927D, 0xE377, 0x927E, 0xE378, 0x927F, 0xE379, 0x9280,
- 0xE37A, 0x9281, 0xE37B, 0x9282, 0xE37C, 0x9283, 0xE37D, 0x9284,
- 0xE37E, 0x9285, 0xE380, 0x9286, 0xE381, 0x9287, 0xE382, 0x9288,
- 0xE383, 0x9289, 0xE384, 0x928A, 0xE385, 0x928B, 0xE386, 0x928C,
- 0xE387, 0x928D, 0xE388, 0x928F, 0xE389, 0x9290, 0xE38A, 0x9291,
- 0xE38B, 0x9292, 0xE38C, 0x9293, 0xE38D, 0x9294, 0xE38E, 0x9295,
- 0xE38F, 0x9296, 0xE390, 0x9297, 0xE391, 0x9298, 0xE392, 0x9299,
- 0xE393, 0x929A, 0xE394, 0x929B, 0xE395, 0x929C, 0xE396, 0x929D,
- 0xE397, 0x929E, 0xE398, 0x929F, 0xE399, 0x92A0, 0xE39A, 0x92A1,
- 0xE39B, 0x92A2, 0xE39C, 0x92A3, 0xE39D, 0x92A4, 0xE39E, 0x92A5,
- 0xE39F, 0x92A6, 0xE3A0, 0x92A7, 0xE3A1, 0x606A, 0xE3A2, 0x607D,
- 0xE3A3, 0x6096, 0xE3A4, 0x609A, 0xE3A5, 0x60AD, 0xE3A6, 0x609D,
- 0xE3A7, 0x6083, 0xE3A8, 0x6092, 0xE3A9, 0x608C, 0xE3AA, 0x609B,
- 0xE3AB, 0x60EC, 0xE3AC, 0x60BB, 0xE3AD, 0x60B1, 0xE3AE, 0x60DD,
- 0xE3AF, 0x60D8, 0xE3B0, 0x60C6, 0xE3B1, 0x60DA, 0xE3B2, 0x60B4,
- 0xE3B3, 0x6120, 0xE3B4, 0x6126, 0xE3B5, 0x6115, 0xE3B6, 0x6123,
- 0xE3B7, 0x60F4, 0xE3B8, 0x6100, 0xE3B9, 0x610E, 0xE3BA, 0x612B,
- 0xE3BB, 0x614A, 0xE3BC, 0x6175, 0xE3BD, 0x61AC, 0xE3BE, 0x6194,
- 0xE3BF, 0x61A7, 0xE3C0, 0x61B7, 0xE3C1, 0x61D4, 0xE3C2, 0x61F5,
- 0xE3C3, 0x5FDD, 0xE3C4, 0x96B3, 0xE3C5, 0x95E9, 0xE3C6, 0x95EB,
- 0xE3C7, 0x95F1, 0xE3C8, 0x95F3, 0xE3C9, 0x95F5, 0xE3CA, 0x95F6,
- 0xE3CB, 0x95FC, 0xE3CC, 0x95FE, 0xE3CD, 0x9603, 0xE3CE, 0x9604,
- 0xE3CF, 0x9606, 0xE3D0, 0x9608, 0xE3D1, 0x960A, 0xE3D2, 0x960B,
- 0xE3D3, 0x960C, 0xE3D4, 0x960D, 0xE3D5, 0x960F, 0xE3D6, 0x9612,
- 0xE3D7, 0x9615, 0xE3D8, 0x9616, 0xE3D9, 0x9617, 0xE3DA, 0x9619,
- 0xE3DB, 0x961A, 0xE3DC, 0x4E2C, 0xE3DD, 0x723F, 0xE3DE, 0x6215,
- 0xE3DF, 0x6C35, 0xE3E0, 0x6C54, 0xE3E1, 0x6C5C, 0xE3E2, 0x6C4A,
- 0xE3E3, 0x6CA3, 0xE3E4, 0x6C85, 0xE3E5, 0x6C90, 0xE3E6, 0x6C94,
- 0xE3E7, 0x6C8C, 0xE3E8, 0x6C68, 0xE3E9, 0x6C69, 0xE3EA, 0x6C74,
- 0xE3EB, 0x6C76, 0xE3EC, 0x6C86, 0xE3ED, 0x6CA9, 0xE3EE, 0x6CD0,
- 0xE3EF, 0x6CD4, 0xE3F0, 0x6CAD, 0xE3F1, 0x6CF7, 0xE3F2, 0x6CF8,
- 0xE3F3, 0x6CF1, 0xE3F4, 0x6CD7, 0xE3F5, 0x6CB2, 0xE3F6, 0x6CE0,
- 0xE3F7, 0x6CD6, 0xE3F8, 0x6CFA, 0xE3F9, 0x6CEB, 0xE3FA, 0x6CEE,
- 0xE3FB, 0x6CB1, 0xE3FC, 0x6CD3, 0xE3FD, 0x6CEF, 0xE3FE, 0x6CFE,
- 0xE440, 0x92A8, 0xE441, 0x92A9, 0xE442, 0x92AA, 0xE443, 0x92AB,
- 0xE444, 0x92AC, 0xE445, 0x92AD, 0xE446, 0x92AF, 0xE447, 0x92B0,
- 0xE448, 0x92B1, 0xE449, 0x92B2, 0xE44A, 0x92B3, 0xE44B, 0x92B4,
- 0xE44C, 0x92B5, 0xE44D, 0x92B6, 0xE44E, 0x92B7, 0xE44F, 0x92B8,
- 0xE450, 0x92B9, 0xE451, 0x92BA, 0xE452, 0x92BB, 0xE453, 0x92BC,
- 0xE454, 0x92BD, 0xE455, 0x92BE, 0xE456, 0x92BF, 0xE457, 0x92C0,
- 0xE458, 0x92C1, 0xE459, 0x92C2, 0xE45A, 0x92C3, 0xE45B, 0x92C4,
- 0xE45C, 0x92C5, 0xE45D, 0x92C6, 0xE45E, 0x92C7, 0xE45F, 0x92C9,
- 0xE460, 0x92CA, 0xE461, 0x92CB, 0xE462, 0x92CC, 0xE463, 0x92CD,
- 0xE464, 0x92CE, 0xE465, 0x92CF, 0xE466, 0x92D0, 0xE467, 0x92D1,
- 0xE468, 0x92D2, 0xE469, 0x92D3, 0xE46A, 0x92D4, 0xE46B, 0x92D5,
- 0xE46C, 0x92D6, 0xE46D, 0x92D7, 0xE46E, 0x92D8, 0xE46F, 0x92D9,
- 0xE470, 0x92DA, 0xE471, 0x92DB, 0xE472, 0x92DC, 0xE473, 0x92DD,
- 0xE474, 0x92DE, 0xE475, 0x92DF, 0xE476, 0x92E0, 0xE477, 0x92E1,
- 0xE478, 0x92E2, 0xE479, 0x92E3, 0xE47A, 0x92E4, 0xE47B, 0x92E5,
- 0xE47C, 0x92E6, 0xE47D, 0x92E7, 0xE47E, 0x92E8, 0xE480, 0x92E9,
- 0xE481, 0x92EA, 0xE482, 0x92EB, 0xE483, 0x92EC, 0xE484, 0x92ED,
- 0xE485, 0x92EE, 0xE486, 0x92EF, 0xE487, 0x92F0, 0xE488, 0x92F1,
- 0xE489, 0x92F2, 0xE48A, 0x92F3, 0xE48B, 0x92F4, 0xE48C, 0x92F5,
- 0xE48D, 0x92F6, 0xE48E, 0x92F7, 0xE48F, 0x92F8, 0xE490, 0x92F9,
- 0xE491, 0x92FA, 0xE492, 0x92FB, 0xE493, 0x92FC, 0xE494, 0x92FD,
- 0xE495, 0x92FE, 0xE496, 0x92FF, 0xE497, 0x9300, 0xE498, 0x9301,
- 0xE499, 0x9302, 0xE49A, 0x9303, 0xE49B, 0x9304, 0xE49C, 0x9305,
- 0xE49D, 0x9306, 0xE49E, 0x9307, 0xE49F, 0x9308, 0xE4A0, 0x9309,
- 0xE4A1, 0x6D39, 0xE4A2, 0x6D27, 0xE4A3, 0x6D0C, 0xE4A4, 0x6D43,
- 0xE4A5, 0x6D48, 0xE4A6, 0x6D07, 0xE4A7, 0x6D04, 0xE4A8, 0x6D19,
- 0xE4A9, 0x6D0E, 0xE4AA, 0x6D2B, 0xE4AB, 0x6D4D, 0xE4AC, 0x6D2E,
- 0xE4AD, 0x6D35, 0xE4AE, 0x6D1A, 0xE4AF, 0x6D4F, 0xE4B0, 0x6D52,
- 0xE4B1, 0x6D54, 0xE4B2, 0x6D33, 0xE4B3, 0x6D91, 0xE4B4, 0x6D6F,
- 0xE4B5, 0x6D9E, 0xE4B6, 0x6DA0, 0xE4B7, 0x6D5E, 0xE4B8, 0x6D93,
- 0xE4B9, 0x6D94, 0xE4BA, 0x6D5C, 0xE4BB, 0x6D60, 0xE4BC, 0x6D7C,
- 0xE4BD, 0x6D63, 0xE4BE, 0x6E1A, 0xE4BF, 0x6DC7, 0xE4C0, 0x6DC5,
- 0xE4C1, 0x6DDE, 0xE4C2, 0x6E0E, 0xE4C3, 0x6DBF, 0xE4C4, 0x6DE0,
- 0xE4C5, 0x6E11, 0xE4C6, 0x6DE6, 0xE4C7, 0x6DDD, 0xE4C8, 0x6DD9,
- 0xE4C9, 0x6E16, 0xE4CA, 0x6DAB, 0xE4CB, 0x6E0C, 0xE4CC, 0x6DAE,
- 0xE4CD, 0x6E2B, 0xE4CE, 0x6E6E, 0xE4CF, 0x6E4E, 0xE4D0, 0x6E6B,
- 0xE4D1, 0x6EB2, 0xE4D2, 0x6E5F, 0xE4D3, 0x6E86, 0xE4D4, 0x6E53,
- 0xE4D5, 0x6E54, 0xE4D6, 0x6E32, 0xE4D7, 0x6E25, 0xE4D8, 0x6E44,
- 0xE4D9, 0x6EDF, 0xE4DA, 0x6EB1, 0xE4DB, 0x6E98, 0xE4DC, 0x6EE0,
- 0xE4DD, 0x6F2D, 0xE4DE, 0x6EE2, 0xE4DF, 0x6EA5, 0xE4E0, 0x6EA7,
- 0xE4E1, 0x6EBD, 0xE4E2, 0x6EBB, 0xE4E3, 0x6EB7, 0xE4E4, 0x6ED7,
- 0xE4E5, 0x6EB4, 0xE4E6, 0x6ECF, 0xE4E7, 0x6E8F, 0xE4E8, 0x6EC2,
- 0xE4E9, 0x6E9F, 0xE4EA, 0x6F62, 0xE4EB, 0x6F46, 0xE4EC, 0x6F47,
- 0xE4ED, 0x6F24, 0xE4EE, 0x6F15, 0xE4EF, 0x6EF9, 0xE4F0, 0x6F2F,
- 0xE4F1, 0x6F36, 0xE4F2, 0x6F4B, 0xE4F3, 0x6F74, 0xE4F4, 0x6F2A,
- 0xE4F5, 0x6F09, 0xE4F6, 0x6F29, 0xE4F7, 0x6F89, 0xE4F8, 0x6F8D,
- 0xE4F9, 0x6F8C, 0xE4FA, 0x6F78, 0xE4FB, 0x6F72, 0xE4FC, 0x6F7C,
- 0xE4FD, 0x6F7A, 0xE4FE, 0x6FD1, 0xE540, 0x930A, 0xE541, 0x930B,
- 0xE542, 0x930C, 0xE543, 0x930D, 0xE544, 0x930E, 0xE545, 0x930F,
- 0xE546, 0x9310, 0xE547, 0x9311, 0xE548, 0x9312, 0xE549, 0x9313,
- 0xE54A, 0x9314, 0xE54B, 0x9315, 0xE54C, 0x9316, 0xE54D, 0x9317,
- 0xE54E, 0x9318, 0xE54F, 0x9319, 0xE550, 0x931A, 0xE551, 0x931B,
- 0xE552, 0x931C, 0xE553, 0x931D, 0xE554, 0x931E, 0xE555, 0x931F,
- 0xE556, 0x9320, 0xE557, 0x9321, 0xE558, 0x9322, 0xE559, 0x9323,
- 0xE55A, 0x9324, 0xE55B, 0x9325, 0xE55C, 0x9326, 0xE55D, 0x9327,
- 0xE55E, 0x9328, 0xE55F, 0x9329, 0xE560, 0x932A, 0xE561, 0x932B,
- 0xE562, 0x932C, 0xE563, 0x932D, 0xE564, 0x932E, 0xE565, 0x932F,
- 0xE566, 0x9330, 0xE567, 0x9331, 0xE568, 0x9332, 0xE569, 0x9333,
- 0xE56A, 0x9334, 0xE56B, 0x9335, 0xE56C, 0x9336, 0xE56D, 0x9337,
- 0xE56E, 0x9338, 0xE56F, 0x9339, 0xE570, 0x933A, 0xE571, 0x933B,
- 0xE572, 0x933C, 0xE573, 0x933D, 0xE574, 0x933F, 0xE575, 0x9340,
- 0xE576, 0x9341, 0xE577, 0x9342, 0xE578, 0x9343, 0xE579, 0x9344,
- 0xE57A, 0x9345, 0xE57B, 0x9346, 0xE57C, 0x9347, 0xE57D, 0x9348,
- 0xE57E, 0x9349, 0xE580, 0x934A, 0xE581, 0x934B, 0xE582, 0x934C,
- 0xE583, 0x934D, 0xE584, 0x934E, 0xE585, 0x934F, 0xE586, 0x9350,
- 0xE587, 0x9351, 0xE588, 0x9352, 0xE589, 0x9353, 0xE58A, 0x9354,
- 0xE58B, 0x9355, 0xE58C, 0x9356, 0xE58D, 0x9357, 0xE58E, 0x9358,
- 0xE58F, 0x9359, 0xE590, 0x935A, 0xE591, 0x935B, 0xE592, 0x935C,
- 0xE593, 0x935D, 0xE594, 0x935E, 0xE595, 0x935F, 0xE596, 0x9360,
- 0xE597, 0x9361, 0xE598, 0x9362, 0xE599, 0x9363, 0xE59A, 0x9364,
- 0xE59B, 0x9365, 0xE59C, 0x9366, 0xE59D, 0x9367, 0xE59E, 0x9368,
- 0xE59F, 0x9369, 0xE5A0, 0x936B, 0xE5A1, 0x6FC9, 0xE5A2, 0x6FA7,
- 0xE5A3, 0x6FB9, 0xE5A4, 0x6FB6, 0xE5A5, 0x6FC2, 0xE5A6, 0x6FE1,
- 0xE5A7, 0x6FEE, 0xE5A8, 0x6FDE, 0xE5A9, 0x6FE0, 0xE5AA, 0x6FEF,
- 0xE5AB, 0x701A, 0xE5AC, 0x7023, 0xE5AD, 0x701B, 0xE5AE, 0x7039,
- 0xE5AF, 0x7035, 0xE5B0, 0x704F, 0xE5B1, 0x705E, 0xE5B2, 0x5B80,
- 0xE5B3, 0x5B84, 0xE5B4, 0x5B95, 0xE5B5, 0x5B93, 0xE5B6, 0x5BA5,
- 0xE5B7, 0x5BB8, 0xE5B8, 0x752F, 0xE5B9, 0x9A9E, 0xE5BA, 0x6434,
- 0xE5BB, 0x5BE4, 0xE5BC, 0x5BEE, 0xE5BD, 0x8930, 0xE5BE, 0x5BF0,
- 0xE5BF, 0x8E47, 0xE5C0, 0x8B07, 0xE5C1, 0x8FB6, 0xE5C2, 0x8FD3,
- 0xE5C3, 0x8FD5, 0xE5C4, 0x8FE5, 0xE5C5, 0x8FEE, 0xE5C6, 0x8FE4,
- 0xE5C7, 0x8FE9, 0xE5C8, 0x8FE6, 0xE5C9, 0x8FF3, 0xE5CA, 0x8FE8,
- 0xE5CB, 0x9005, 0xE5CC, 0x9004, 0xE5CD, 0x900B, 0xE5CE, 0x9026,
- 0xE5CF, 0x9011, 0xE5D0, 0x900D, 0xE5D1, 0x9016, 0xE5D2, 0x9021,
- 0xE5D3, 0x9035, 0xE5D4, 0x9036, 0xE5D5, 0x902D, 0xE5D6, 0x902F,
- 0xE5D7, 0x9044, 0xE5D8, 0x9051, 0xE5D9, 0x9052, 0xE5DA, 0x9050,
- 0xE5DB, 0x9068, 0xE5DC, 0x9058, 0xE5DD, 0x9062, 0xE5DE, 0x905B,
- 0xE5DF, 0x66B9, 0xE5E0, 0x9074, 0xE5E1, 0x907D, 0xE5E2, 0x9082,
- 0xE5E3, 0x9088, 0xE5E4, 0x9083, 0xE5E5, 0x908B, 0xE5E6, 0x5F50,
- 0xE5E7, 0x5F57, 0xE5E8, 0x5F56, 0xE5E9, 0x5F58, 0xE5EA, 0x5C3B,
- 0xE5EB, 0x54AB, 0xE5EC, 0x5C50, 0xE5ED, 0x5C59, 0xE5EE, 0x5B71,
- 0xE5EF, 0x5C63, 0xE5F0, 0x5C66, 0xE5F1, 0x7FBC, 0xE5F2, 0x5F2A,
- 0xE5F3, 0x5F29, 0xE5F4, 0x5F2D, 0xE5F5, 0x8274, 0xE5F6, 0x5F3C,
- 0xE5F7, 0x9B3B, 0xE5F8, 0x5C6E, 0xE5F9, 0x5981, 0xE5FA, 0x5983,
- 0xE5FB, 0x598D, 0xE5FC, 0x59A9, 0xE5FD, 0x59AA, 0xE5FE, 0x59A3,
- 0xE640, 0x936C, 0xE641, 0x936D, 0xE642, 0x936E, 0xE643, 0x936F,
- 0xE644, 0x9370, 0xE645, 0x9371, 0xE646, 0x9372, 0xE647, 0x9373,
- 0xE648, 0x9374, 0xE649, 0x9375, 0xE64A, 0x9376, 0xE64B, 0x9377,
- 0xE64C, 0x9378, 0xE64D, 0x9379, 0xE64E, 0x937A, 0xE64F, 0x937B,
- 0xE650, 0x937C, 0xE651, 0x937D, 0xE652, 0x937E, 0xE653, 0x937F,
- 0xE654, 0x9380, 0xE655, 0x9381, 0xE656, 0x9382, 0xE657, 0x9383,
- 0xE658, 0x9384, 0xE659, 0x9385, 0xE65A, 0x9386, 0xE65B, 0x9387,
- 0xE65C, 0x9388, 0xE65D, 0x9389, 0xE65E, 0x938A, 0xE65F, 0x938B,
- 0xE660, 0x938C, 0xE661, 0x938D, 0xE662, 0x938E, 0xE663, 0x9390,
- 0xE664, 0x9391, 0xE665, 0x9392, 0xE666, 0x9393, 0xE667, 0x9394,
- 0xE668, 0x9395, 0xE669, 0x9396, 0xE66A, 0x9397, 0xE66B, 0x9398,
- 0xE66C, 0x9399, 0xE66D, 0x939A, 0xE66E, 0x939B, 0xE66F, 0x939C,
- 0xE670, 0x939D, 0xE671, 0x939E, 0xE672, 0x939F, 0xE673, 0x93A0,
- 0xE674, 0x93A1, 0xE675, 0x93A2, 0xE676, 0x93A3, 0xE677, 0x93A4,
- 0xE678, 0x93A5, 0xE679, 0x93A6, 0xE67A, 0x93A7, 0xE67B, 0x93A8,
- 0xE67C, 0x93A9, 0xE67D, 0x93AA, 0xE67E, 0x93AB, 0xE680, 0x93AC,
- 0xE681, 0x93AD, 0xE682, 0x93AE, 0xE683, 0x93AF, 0xE684, 0x93B0,
- 0xE685, 0x93B1, 0xE686, 0x93B2, 0xE687, 0x93B3, 0xE688, 0x93B4,
- 0xE689, 0x93B5, 0xE68A, 0x93B6, 0xE68B, 0x93B7, 0xE68C, 0x93B8,
- 0xE68D, 0x93B9, 0xE68E, 0x93BA, 0xE68F, 0x93BB, 0xE690, 0x93BC,
- 0xE691, 0x93BD, 0xE692, 0x93BE, 0xE693, 0x93BF, 0xE694, 0x93C0,
- 0xE695, 0x93C1, 0xE696, 0x93C2, 0xE697, 0x93C3, 0xE698, 0x93C4,
- 0xE699, 0x93C5, 0xE69A, 0x93C6, 0xE69B, 0x93C7, 0xE69C, 0x93C8,
- 0xE69D, 0x93C9, 0xE69E, 0x93CB, 0xE69F, 0x93CC, 0xE6A0, 0x93CD,
- 0xE6A1, 0x5997, 0xE6A2, 0x59CA, 0xE6A3, 0x59AB, 0xE6A4, 0x599E,
- 0xE6A5, 0x59A4, 0xE6A6, 0x59D2, 0xE6A7, 0x59B2, 0xE6A8, 0x59AF,
- 0xE6A9, 0x59D7, 0xE6AA, 0x59BE, 0xE6AB, 0x5A05, 0xE6AC, 0x5A06,
- 0xE6AD, 0x59DD, 0xE6AE, 0x5A08, 0xE6AF, 0x59E3, 0xE6B0, 0x59D8,
- 0xE6B1, 0x59F9, 0xE6B2, 0x5A0C, 0xE6B3, 0x5A09, 0xE6B4, 0x5A32,
- 0xE6B5, 0x5A34, 0xE6B6, 0x5A11, 0xE6B7, 0x5A23, 0xE6B8, 0x5A13,
- 0xE6B9, 0x5A40, 0xE6BA, 0x5A67, 0xE6BB, 0x5A4A, 0xE6BC, 0x5A55,
- 0xE6BD, 0x5A3C, 0xE6BE, 0x5A62, 0xE6BF, 0x5A75, 0xE6C0, 0x80EC,
- 0xE6C1, 0x5AAA, 0xE6C2, 0x5A9B, 0xE6C3, 0x5A77, 0xE6C4, 0x5A7A,
- 0xE6C5, 0x5ABE, 0xE6C6, 0x5AEB, 0xE6C7, 0x5AB2, 0xE6C8, 0x5AD2,
- 0xE6C9, 0x5AD4, 0xE6CA, 0x5AB8, 0xE6CB, 0x5AE0, 0xE6CC, 0x5AE3,
- 0xE6CD, 0x5AF1, 0xE6CE, 0x5AD6, 0xE6CF, 0x5AE6, 0xE6D0, 0x5AD8,
- 0xE6D1, 0x5ADC, 0xE6D2, 0x5B09, 0xE6D3, 0x5B17, 0xE6D4, 0x5B16,
- 0xE6D5, 0x5B32, 0xE6D6, 0x5B37, 0xE6D7, 0x5B40, 0xE6D8, 0x5C15,
- 0xE6D9, 0x5C1C, 0xE6DA, 0x5B5A, 0xE6DB, 0x5B65, 0xE6DC, 0x5B73,
- 0xE6DD, 0x5B51, 0xE6DE, 0x5B53, 0xE6DF, 0x5B62, 0xE6E0, 0x9A75,
- 0xE6E1, 0x9A77, 0xE6E2, 0x9A78, 0xE6E3, 0x9A7A, 0xE6E4, 0x9A7F,
- 0xE6E5, 0x9A7D, 0xE6E6, 0x9A80, 0xE6E7, 0x9A81, 0xE6E8, 0x9A85,
- 0xE6E9, 0x9A88, 0xE6EA, 0x9A8A, 0xE6EB, 0x9A90, 0xE6EC, 0x9A92,
- 0xE6ED, 0x9A93, 0xE6EE, 0x9A96, 0xE6EF, 0x9A98, 0xE6F0, 0x9A9B,
- 0xE6F1, 0x9A9C, 0xE6F2, 0x9A9D, 0xE6F3, 0x9A9F, 0xE6F4, 0x9AA0,
- 0xE6F5, 0x9AA2, 0xE6F6, 0x9AA3, 0xE6F7, 0x9AA5, 0xE6F8, 0x9AA7,
- 0xE6F9, 0x7E9F, 0xE6FA, 0x7EA1, 0xE6FB, 0x7EA3, 0xE6FC, 0x7EA5,
- 0xE6FD, 0x7EA8, 0xE6FE, 0x7EA9, 0xE740, 0x93CE, 0xE741, 0x93CF,
- 0xE742, 0x93D0, 0xE743, 0x93D1, 0xE744, 0x93D2, 0xE745, 0x93D3,
- 0xE746, 0x93D4, 0xE747, 0x93D5, 0xE748, 0x93D7, 0xE749, 0x93D8,
- 0xE74A, 0x93D9, 0xE74B, 0x93DA, 0xE74C, 0x93DB, 0xE74D, 0x93DC,
- 0xE74E, 0x93DD, 0xE74F, 0x93DE, 0xE750, 0x93DF, 0xE751, 0x93E0,
- 0xE752, 0x93E1, 0xE753, 0x93E2, 0xE754, 0x93E3, 0xE755, 0x93E4,
- 0xE756, 0x93E5, 0xE757, 0x93E6, 0xE758, 0x93E7, 0xE759, 0x93E8,
- 0xE75A, 0x93E9, 0xE75B, 0x93EA, 0xE75C, 0x93EB, 0xE75D, 0x93EC,
- 0xE75E, 0x93ED, 0xE75F, 0x93EE, 0xE760, 0x93EF, 0xE761, 0x93F0,
- 0xE762, 0x93F1, 0xE763, 0x93F2, 0xE764, 0x93F3, 0xE765, 0x93F4,
- 0xE766, 0x93F5, 0xE767, 0x93F6, 0xE768, 0x93F7, 0xE769, 0x93F8,
- 0xE76A, 0x93F9, 0xE76B, 0x93FA, 0xE76C, 0x93FB, 0xE76D, 0x93FC,
- 0xE76E, 0x93FD, 0xE76F, 0x93FE, 0xE770, 0x93FF, 0xE771, 0x9400,
- 0xE772, 0x9401, 0xE773, 0x9402, 0xE774, 0x9403, 0xE775, 0x9404,
- 0xE776, 0x9405, 0xE777, 0x9406, 0xE778, 0x9407, 0xE779, 0x9408,
- 0xE77A, 0x9409, 0xE77B, 0x940A, 0xE77C, 0x940B, 0xE77D, 0x940C,
- 0xE77E, 0x940D, 0xE780, 0x940E, 0xE781, 0x940F, 0xE782, 0x9410,
- 0xE783, 0x9411, 0xE784, 0x9412, 0xE785, 0x9413, 0xE786, 0x9414,
- 0xE787, 0x9415, 0xE788, 0x9416, 0xE789, 0x9417, 0xE78A, 0x9418,
- 0xE78B, 0x9419, 0xE78C, 0x941A, 0xE78D, 0x941B, 0xE78E, 0x941C,
- 0xE78F, 0x941D, 0xE790, 0x941E, 0xE791, 0x941F, 0xE792, 0x9420,
- 0xE793, 0x9421, 0xE794, 0x9422, 0xE795, 0x9423, 0xE796, 0x9424,
- 0xE797, 0x9425, 0xE798, 0x9426, 0xE799, 0x9427, 0xE79A, 0x9428,
- 0xE79B, 0x9429, 0xE79C, 0x942A, 0xE79D, 0x942B, 0xE79E, 0x942C,
- 0xE79F, 0x942D, 0xE7A0, 0x942E, 0xE7A1, 0x7EAD, 0xE7A2, 0x7EB0,
- 0xE7A3, 0x7EBE, 0xE7A4, 0x7EC0, 0xE7A5, 0x7EC1, 0xE7A6, 0x7EC2,
- 0xE7A7, 0x7EC9, 0xE7A8, 0x7ECB, 0xE7A9, 0x7ECC, 0xE7AA, 0x7ED0,
- 0xE7AB, 0x7ED4, 0xE7AC, 0x7ED7, 0xE7AD, 0x7EDB, 0xE7AE, 0x7EE0,
- 0xE7AF, 0x7EE1, 0xE7B0, 0x7EE8, 0xE7B1, 0x7EEB, 0xE7B2, 0x7EEE,
- 0xE7B3, 0x7EEF, 0xE7B4, 0x7EF1, 0xE7B5, 0x7EF2, 0xE7B6, 0x7F0D,
- 0xE7B7, 0x7EF6, 0xE7B8, 0x7EFA, 0xE7B9, 0x7EFB, 0xE7BA, 0x7EFE,
- 0xE7BB, 0x7F01, 0xE7BC, 0x7F02, 0xE7BD, 0x7F03, 0xE7BE, 0x7F07,
- 0xE7BF, 0x7F08, 0xE7C0, 0x7F0B, 0xE7C1, 0x7F0C, 0xE7C2, 0x7F0F,
- 0xE7C3, 0x7F11, 0xE7C4, 0x7F12, 0xE7C5, 0x7F17, 0xE7C6, 0x7F19,
- 0xE7C7, 0x7F1C, 0xE7C8, 0x7F1B, 0xE7C9, 0x7F1F, 0xE7CA, 0x7F21,
- 0xE7CB, 0x7F22, 0xE7CC, 0x7F23, 0xE7CD, 0x7F24, 0xE7CE, 0x7F25,
- 0xE7CF, 0x7F26, 0xE7D0, 0x7F27, 0xE7D1, 0x7F2A, 0xE7D2, 0x7F2B,
- 0xE7D3, 0x7F2C, 0xE7D4, 0x7F2D, 0xE7D5, 0x7F2F, 0xE7D6, 0x7F30,
- 0xE7D7, 0x7F31, 0xE7D8, 0x7F32, 0xE7D9, 0x7F33, 0xE7DA, 0x7F35,
- 0xE7DB, 0x5E7A, 0xE7DC, 0x757F, 0xE7DD, 0x5DDB, 0xE7DE, 0x753E,
- 0xE7DF, 0x9095, 0xE7E0, 0x738E, 0xE7E1, 0x7391, 0xE7E2, 0x73AE,
- 0xE7E3, 0x73A2, 0xE7E4, 0x739F, 0xE7E5, 0x73CF, 0xE7E6, 0x73C2,
- 0xE7E7, 0x73D1, 0xE7E8, 0x73B7, 0xE7E9, 0x73B3, 0xE7EA, 0x73C0,
- 0xE7EB, 0x73C9, 0xE7EC, 0x73C8, 0xE7ED, 0x73E5, 0xE7EE, 0x73D9,
- 0xE7EF, 0x987C, 0xE7F0, 0x740A, 0xE7F1, 0x73E9, 0xE7F2, 0x73E7,
- 0xE7F3, 0x73DE, 0xE7F4, 0x73BA, 0xE7F5, 0x73F2, 0xE7F6, 0x740F,
- 0xE7F7, 0x742A, 0xE7F8, 0x745B, 0xE7F9, 0x7426, 0xE7FA, 0x7425,
- 0xE7FB, 0x7428, 0xE7FC, 0x7430, 0xE7FD, 0x742E, 0xE7FE, 0x742C,
- 0xE840, 0x942F, 0xE841, 0x9430, 0xE842, 0x9431, 0xE843, 0x9432,
- 0xE844, 0x9433, 0xE845, 0x9434, 0xE846, 0x9435, 0xE847, 0x9436,
- 0xE848, 0x9437, 0xE849, 0x9438, 0xE84A, 0x9439, 0xE84B, 0x943A,
- 0xE84C, 0x943B, 0xE84D, 0x943C, 0xE84E, 0x943D, 0xE84F, 0x943F,
- 0xE850, 0x9440, 0xE851, 0x9441, 0xE852, 0x9442, 0xE853, 0x9443,
- 0xE854, 0x9444, 0xE855, 0x9445, 0xE856, 0x9446, 0xE857, 0x9447,
- 0xE858, 0x9448, 0xE859, 0x9449, 0xE85A, 0x944A, 0xE85B, 0x944B,
- 0xE85C, 0x944C, 0xE85D, 0x944D, 0xE85E, 0x944E, 0xE85F, 0x944F,
- 0xE860, 0x9450, 0xE861, 0x9451, 0xE862, 0x9452, 0xE863, 0x9453,
- 0xE864, 0x9454, 0xE865, 0x9455, 0xE866, 0x9456, 0xE867, 0x9457,
- 0xE868, 0x9458, 0xE869, 0x9459, 0xE86A, 0x945A, 0xE86B, 0x945B,
- 0xE86C, 0x945C, 0xE86D, 0x945D, 0xE86E, 0x945E, 0xE86F, 0x945F,
- 0xE870, 0x9460, 0xE871, 0x9461, 0xE872, 0x9462, 0xE873, 0x9463,
- 0xE874, 0x9464, 0xE875, 0x9465, 0xE876, 0x9466, 0xE877, 0x9467,
- 0xE878, 0x9468, 0xE879, 0x9469, 0xE87A, 0x946A, 0xE87B, 0x946C,
- 0xE87C, 0x946D, 0xE87D, 0x946E, 0xE87E, 0x946F, 0xE880, 0x9470,
- 0xE881, 0x9471, 0xE882, 0x9472, 0xE883, 0x9473, 0xE884, 0x9474,
- 0xE885, 0x9475, 0xE886, 0x9476, 0xE887, 0x9477, 0xE888, 0x9478,
- 0xE889, 0x9479, 0xE88A, 0x947A, 0xE88B, 0x947B, 0xE88C, 0x947C,
- 0xE88D, 0x947D, 0xE88E, 0x947E, 0xE88F, 0x947F, 0xE890, 0x9480,
- 0xE891, 0x9481, 0xE892, 0x9482, 0xE893, 0x9483, 0xE894, 0x9484,
- 0xE895, 0x9491, 0xE896, 0x9496, 0xE897, 0x9498, 0xE898, 0x94C7,
- 0xE899, 0x94CF, 0xE89A, 0x94D3, 0xE89B, 0x94D4, 0xE89C, 0x94DA,
- 0xE89D, 0x94E6, 0xE89E, 0x94FB, 0xE89F, 0x951C, 0xE8A0, 0x9520,
- 0xE8A1, 0x741B, 0xE8A2, 0x741A, 0xE8A3, 0x7441, 0xE8A4, 0x745C,
- 0xE8A5, 0x7457, 0xE8A6, 0x7455, 0xE8A7, 0x7459, 0xE8A8, 0x7477,
- 0xE8A9, 0x746D, 0xE8AA, 0x747E, 0xE8AB, 0x749C, 0xE8AC, 0x748E,
- 0xE8AD, 0x7480, 0xE8AE, 0x7481, 0xE8AF, 0x7487, 0xE8B0, 0x748B,
- 0xE8B1, 0x749E, 0xE8B2, 0x74A8, 0xE8B3, 0x74A9, 0xE8B4, 0x7490,
- 0xE8B5, 0x74A7, 0xE8B6, 0x74D2, 0xE8B7, 0x74BA, 0xE8B8, 0x97EA,
- 0xE8B9, 0x97EB, 0xE8BA, 0x97EC, 0xE8BB, 0x674C, 0xE8BC, 0x6753,
- 0xE8BD, 0x675E, 0xE8BE, 0x6748, 0xE8BF, 0x6769, 0xE8C0, 0x67A5,
- 0xE8C1, 0x6787, 0xE8C2, 0x676A, 0xE8C3, 0x6773, 0xE8C4, 0x6798,
- 0xE8C5, 0x67A7, 0xE8C6, 0x6775, 0xE8C7, 0x67A8, 0xE8C8, 0x679E,
- 0xE8C9, 0x67AD, 0xE8CA, 0x678B, 0xE8CB, 0x6777, 0xE8CC, 0x677C,
- 0xE8CD, 0x67F0, 0xE8CE, 0x6809, 0xE8CF, 0x67D8, 0xE8D0, 0x680A,
- 0xE8D1, 0x67E9, 0xE8D2, 0x67B0, 0xE8D3, 0x680C, 0xE8D4, 0x67D9,
- 0xE8D5, 0x67B5, 0xE8D6, 0x67DA, 0xE8D7, 0x67B3, 0xE8D8, 0x67DD,
- 0xE8D9, 0x6800, 0xE8DA, 0x67C3, 0xE8DB, 0x67B8, 0xE8DC, 0x67E2,
- 0xE8DD, 0x680E, 0xE8DE, 0x67C1, 0xE8DF, 0x67FD, 0xE8E0, 0x6832,
- 0xE8E1, 0x6833, 0xE8E2, 0x6860, 0xE8E3, 0x6861, 0xE8E4, 0x684E,
- 0xE8E5, 0x6862, 0xE8E6, 0x6844, 0xE8E7, 0x6864, 0xE8E8, 0x6883,
- 0xE8E9, 0x681D, 0xE8EA, 0x6855, 0xE8EB, 0x6866, 0xE8EC, 0x6841,
- 0xE8ED, 0x6867, 0xE8EE, 0x6840, 0xE8EF, 0x683E, 0xE8F0, 0x684A,
- 0xE8F1, 0x6849, 0xE8F2, 0x6829, 0xE8F3, 0x68B5, 0xE8F4, 0x688F,
- 0xE8F5, 0x6874, 0xE8F6, 0x6877, 0xE8F7, 0x6893, 0xE8F8, 0x686B,
- 0xE8F9, 0x68C2, 0xE8FA, 0x696E, 0xE8FB, 0x68FC, 0xE8FC, 0x691F,
- 0xE8FD, 0x6920, 0xE8FE, 0x68F9, 0xE940, 0x9527, 0xE941, 0x9533,
- 0xE942, 0x953D, 0xE943, 0x9543, 0xE944, 0x9548, 0xE945, 0x954B,
- 0xE946, 0x9555, 0xE947, 0x955A, 0xE948, 0x9560, 0xE949, 0x956E,
- 0xE94A, 0x9574, 0xE94B, 0x9575, 0xE94C, 0x9577, 0xE94D, 0x9578,
- 0xE94E, 0x9579, 0xE94F, 0x957A, 0xE950, 0x957B, 0xE951, 0x957C,
- 0xE952, 0x957D, 0xE953, 0x957E, 0xE954, 0x9580, 0xE955, 0x9581,
- 0xE956, 0x9582, 0xE957, 0x9583, 0xE958, 0x9584, 0xE959, 0x9585,
- 0xE95A, 0x9586, 0xE95B, 0x9587, 0xE95C, 0x9588, 0xE95D, 0x9589,
- 0xE95E, 0x958A, 0xE95F, 0x958B, 0xE960, 0x958C, 0xE961, 0x958D,
- 0xE962, 0x958E, 0xE963, 0x958F, 0xE964, 0x9590, 0xE965, 0x9591,
- 0xE966, 0x9592, 0xE967, 0x9593, 0xE968, 0x9594, 0xE969, 0x9595,
- 0xE96A, 0x9596, 0xE96B, 0x9597, 0xE96C, 0x9598, 0xE96D, 0x9599,
- 0xE96E, 0x959A, 0xE96F, 0x959B, 0xE970, 0x959C, 0xE971, 0x959D,
- 0xE972, 0x959E, 0xE973, 0x959F, 0xE974, 0x95A0, 0xE975, 0x95A1,
- 0xE976, 0x95A2, 0xE977, 0x95A3, 0xE978, 0x95A4, 0xE979, 0x95A5,
- 0xE97A, 0x95A6, 0xE97B, 0x95A7, 0xE97C, 0x95A8, 0xE97D, 0x95A9,
- 0xE97E, 0x95AA, 0xE980, 0x95AB, 0xE981, 0x95AC, 0xE982, 0x95AD,
- 0xE983, 0x95AE, 0xE984, 0x95AF, 0xE985, 0x95B0, 0xE986, 0x95B1,
- 0xE987, 0x95B2, 0xE988, 0x95B3, 0xE989, 0x95B4, 0xE98A, 0x95B5,
- 0xE98B, 0x95B6, 0xE98C, 0x95B7, 0xE98D, 0x95B8, 0xE98E, 0x95B9,
- 0xE98F, 0x95BA, 0xE990, 0x95BB, 0xE991, 0x95BC, 0xE992, 0x95BD,
- 0xE993, 0x95BE, 0xE994, 0x95BF, 0xE995, 0x95C0, 0xE996, 0x95C1,
- 0xE997, 0x95C2, 0xE998, 0x95C3, 0xE999, 0x95C4, 0xE99A, 0x95C5,
- 0xE99B, 0x95C6, 0xE99C, 0x95C7, 0xE99D, 0x95C8, 0xE99E, 0x95C9,
- 0xE99F, 0x95CA, 0xE9A0, 0x95CB, 0xE9A1, 0x6924, 0xE9A2, 0x68F0,
- 0xE9A3, 0x690B, 0xE9A4, 0x6901, 0xE9A5, 0x6957, 0xE9A6, 0x68E3,
- 0xE9A7, 0x6910, 0xE9A8, 0x6971, 0xE9A9, 0x6939, 0xE9AA, 0x6960,
- 0xE9AB, 0x6942, 0xE9AC, 0x695D, 0xE9AD, 0x6984, 0xE9AE, 0x696B,
- 0xE9AF, 0x6980, 0xE9B0, 0x6998, 0xE9B1, 0x6978, 0xE9B2, 0x6934,
- 0xE9B3, 0x69CC, 0xE9B4, 0x6987, 0xE9B5, 0x6988, 0xE9B6, 0x69CE,
- 0xE9B7, 0x6989, 0xE9B8, 0x6966, 0xE9B9, 0x6963, 0xE9BA, 0x6979,
- 0xE9BB, 0x699B, 0xE9BC, 0x69A7, 0xE9BD, 0x69BB, 0xE9BE, 0x69AB,
- 0xE9BF, 0x69AD, 0xE9C0, 0x69D4, 0xE9C1, 0x69B1, 0xE9C2, 0x69C1,
- 0xE9C3, 0x69CA, 0xE9C4, 0x69DF, 0xE9C5, 0x6995, 0xE9C6, 0x69E0,
- 0xE9C7, 0x698D, 0xE9C8, 0x69FF, 0xE9C9, 0x6A2F, 0xE9CA, 0x69ED,
- 0xE9CB, 0x6A17, 0xE9CC, 0x6A18, 0xE9CD, 0x6A65, 0xE9CE, 0x69F2,
- 0xE9CF, 0x6A44, 0xE9D0, 0x6A3E, 0xE9D1, 0x6AA0, 0xE9D2, 0x6A50,
- 0xE9D3, 0x6A5B, 0xE9D4, 0x6A35, 0xE9D5, 0x6A8E, 0xE9D6, 0x6A79,
- 0xE9D7, 0x6A3D, 0xE9D8, 0x6A28, 0xE9D9, 0x6A58, 0xE9DA, 0x6A7C,
- 0xE9DB, 0x6A91, 0xE9DC, 0x6A90, 0xE9DD, 0x6AA9, 0xE9DE, 0x6A97,
- 0xE9DF, 0x6AAB, 0xE9E0, 0x7337, 0xE9E1, 0x7352, 0xE9E2, 0x6B81,
- 0xE9E3, 0x6B82, 0xE9E4, 0x6B87, 0xE9E5, 0x6B84, 0xE9E6, 0x6B92,
- 0xE9E7, 0x6B93, 0xE9E8, 0x6B8D, 0xE9E9, 0x6B9A, 0xE9EA, 0x6B9B,
- 0xE9EB, 0x6BA1, 0xE9EC, 0x6BAA, 0xE9ED, 0x8F6B, 0xE9EE, 0x8F6D,
- 0xE9EF, 0x8F71, 0xE9F0, 0x8F72, 0xE9F1, 0x8F73, 0xE9F2, 0x8F75,
- 0xE9F3, 0x8F76, 0xE9F4, 0x8F78, 0xE9F5, 0x8F77, 0xE9F6, 0x8F79,
- 0xE9F7, 0x8F7A, 0xE9F8, 0x8F7C, 0xE9F9, 0x8F7E, 0xE9FA, 0x8F81,
- 0xE9FB, 0x8F82, 0xE9FC, 0x8F84, 0xE9FD, 0x8F87, 0xE9FE, 0x8F8B,
- 0xEA40, 0x95CC, 0xEA41, 0x95CD, 0xEA42, 0x95CE, 0xEA43, 0x95CF,
- 0xEA44, 0x95D0, 0xEA45, 0x95D1, 0xEA46, 0x95D2, 0xEA47, 0x95D3,
- 0xEA48, 0x95D4, 0xEA49, 0x95D5, 0xEA4A, 0x95D6, 0xEA4B, 0x95D7,
- 0xEA4C, 0x95D8, 0xEA4D, 0x95D9, 0xEA4E, 0x95DA, 0xEA4F, 0x95DB,
- 0xEA50, 0x95DC, 0xEA51, 0x95DD, 0xEA52, 0x95DE, 0xEA53, 0x95DF,
- 0xEA54, 0x95E0, 0xEA55, 0x95E1, 0xEA56, 0x95E2, 0xEA57, 0x95E3,
- 0xEA58, 0x95E4, 0xEA59, 0x95E5, 0xEA5A, 0x95E6, 0xEA5B, 0x95E7,
- 0xEA5C, 0x95EC, 0xEA5D, 0x95FF, 0xEA5E, 0x9607, 0xEA5F, 0x9613,
- 0xEA60, 0x9618, 0xEA61, 0x961B, 0xEA62, 0x961E, 0xEA63, 0x9620,
- 0xEA64, 0x9623, 0xEA65, 0x9624, 0xEA66, 0x9625, 0xEA67, 0x9626,
- 0xEA68, 0x9627, 0xEA69, 0x9628, 0xEA6A, 0x9629, 0xEA6B, 0x962B,
- 0xEA6C, 0x962C, 0xEA6D, 0x962D, 0xEA6E, 0x962F, 0xEA6F, 0x9630,
- 0xEA70, 0x9637, 0xEA71, 0x9638, 0xEA72, 0x9639, 0xEA73, 0x963A,
- 0xEA74, 0x963E, 0xEA75, 0x9641, 0xEA76, 0x9643, 0xEA77, 0x964A,
- 0xEA78, 0x964E, 0xEA79, 0x964F, 0xEA7A, 0x9651, 0xEA7B, 0x9652,
- 0xEA7C, 0x9653, 0xEA7D, 0x9656, 0xEA7E, 0x9657, 0xEA80, 0x9658,
- 0xEA81, 0x9659, 0xEA82, 0x965A, 0xEA83, 0x965C, 0xEA84, 0x965D,
- 0xEA85, 0x965E, 0xEA86, 0x9660, 0xEA87, 0x9663, 0xEA88, 0x9665,
- 0xEA89, 0x9666, 0xEA8A, 0x966B, 0xEA8B, 0x966D, 0xEA8C, 0x966E,
- 0xEA8D, 0x966F, 0xEA8E, 0x9670, 0xEA8F, 0x9671, 0xEA90, 0x9673,
- 0xEA91, 0x9678, 0xEA92, 0x9679, 0xEA93, 0x967A, 0xEA94, 0x967B,
- 0xEA95, 0x967C, 0xEA96, 0x967D, 0xEA97, 0x967E, 0xEA98, 0x967F,
- 0xEA99, 0x9680, 0xEA9A, 0x9681, 0xEA9B, 0x9682, 0xEA9C, 0x9683,
- 0xEA9D, 0x9684, 0xEA9E, 0x9687, 0xEA9F, 0x9689, 0xEAA0, 0x968A,
- 0xEAA1, 0x8F8D, 0xEAA2, 0x8F8E, 0xEAA3, 0x8F8F, 0xEAA4, 0x8F98,
- 0xEAA5, 0x8F9A, 0xEAA6, 0x8ECE, 0xEAA7, 0x620B, 0xEAA8, 0x6217,
- 0xEAA9, 0x621B, 0xEAAA, 0x621F, 0xEAAB, 0x6222, 0xEAAC, 0x6221,
- 0xEAAD, 0x6225, 0xEAAE, 0x6224, 0xEAAF, 0x622C, 0xEAB0, 0x81E7,
- 0xEAB1, 0x74EF, 0xEAB2, 0x74F4, 0xEAB3, 0x74FF, 0xEAB4, 0x750F,
- 0xEAB5, 0x7511, 0xEAB6, 0x7513, 0xEAB7, 0x6534, 0xEAB8, 0x65EE,
- 0xEAB9, 0x65EF, 0xEABA, 0x65F0, 0xEABB, 0x660A, 0xEABC, 0x6619,
- 0xEABD, 0x6772, 0xEABE, 0x6603, 0xEABF, 0x6615, 0xEAC0, 0x6600,
- 0xEAC1, 0x7085, 0xEAC2, 0x66F7, 0xEAC3, 0x661D, 0xEAC4, 0x6634,
- 0xEAC5, 0x6631, 0xEAC6, 0x6636, 0xEAC7, 0x6635, 0xEAC8, 0x8006,
- 0xEAC9, 0x665F, 0xEACA, 0x6654, 0xEACB, 0x6641, 0xEACC, 0x664F,
- 0xEACD, 0x6656, 0xEACE, 0x6661, 0xEACF, 0x6657, 0xEAD0, 0x6677,
- 0xEAD1, 0x6684, 0xEAD2, 0x668C, 0xEAD3, 0x66A7, 0xEAD4, 0x669D,
- 0xEAD5, 0x66BE, 0xEAD6, 0x66DB, 0xEAD7, 0x66DC, 0xEAD8, 0x66E6,
- 0xEAD9, 0x66E9, 0xEADA, 0x8D32, 0xEADB, 0x8D33, 0xEADC, 0x8D36,
- 0xEADD, 0x8D3B, 0xEADE, 0x8D3D, 0xEADF, 0x8D40, 0xEAE0, 0x8D45,
- 0xEAE1, 0x8D46, 0xEAE2, 0x8D48, 0xEAE3, 0x8D49, 0xEAE4, 0x8D47,
- 0xEAE5, 0x8D4D, 0xEAE6, 0x8D55, 0xEAE7, 0x8D59, 0xEAE8, 0x89C7,
- 0xEAE9, 0x89CA, 0xEAEA, 0x89CB, 0xEAEB, 0x89CC, 0xEAEC, 0x89CE,
- 0xEAED, 0x89CF, 0xEAEE, 0x89D0, 0xEAEF, 0x89D1, 0xEAF0, 0x726E,
- 0xEAF1, 0x729F, 0xEAF2, 0x725D, 0xEAF3, 0x7266, 0xEAF4, 0x726F,
- 0xEAF5, 0x727E, 0xEAF6, 0x727F, 0xEAF7, 0x7284, 0xEAF8, 0x728B,
- 0xEAF9, 0x728D, 0xEAFA, 0x728F, 0xEAFB, 0x7292, 0xEAFC, 0x6308,
- 0xEAFD, 0x6332, 0xEAFE, 0x63B0, 0xEB40, 0x968C, 0xEB41, 0x968E,
- 0xEB42, 0x9691, 0xEB43, 0x9692, 0xEB44, 0x9693, 0xEB45, 0x9695,
- 0xEB46, 0x9696, 0xEB47, 0x969A, 0xEB48, 0x969B, 0xEB49, 0x969D,
- 0xEB4A, 0x969E, 0xEB4B, 0x969F, 0xEB4C, 0x96A0, 0xEB4D, 0x96A1,
- 0xEB4E, 0x96A2, 0xEB4F, 0x96A3, 0xEB50, 0x96A4, 0xEB51, 0x96A5,
- 0xEB52, 0x96A6, 0xEB53, 0x96A8, 0xEB54, 0x96A9, 0xEB55, 0x96AA,
- 0xEB56, 0x96AB, 0xEB57, 0x96AC, 0xEB58, 0x96AD, 0xEB59, 0x96AE,
- 0xEB5A, 0x96AF, 0xEB5B, 0x96B1, 0xEB5C, 0x96B2, 0xEB5D, 0x96B4,
- 0xEB5E, 0x96B5, 0xEB5F, 0x96B7, 0xEB60, 0x96B8, 0xEB61, 0x96BA,
- 0xEB62, 0x96BB, 0xEB63, 0x96BF, 0xEB64, 0x96C2, 0xEB65, 0x96C3,
- 0xEB66, 0x96C8, 0xEB67, 0x96CA, 0xEB68, 0x96CB, 0xEB69, 0x96D0,
- 0xEB6A, 0x96D1, 0xEB6B, 0x96D3, 0xEB6C, 0x96D4, 0xEB6D, 0x96D6,
- 0xEB6E, 0x96D7, 0xEB6F, 0x96D8, 0xEB70, 0x96D9, 0xEB71, 0x96DA,
- 0xEB72, 0x96DB, 0xEB73, 0x96DC, 0xEB74, 0x96DD, 0xEB75, 0x96DE,
- 0xEB76, 0x96DF, 0xEB77, 0x96E1, 0xEB78, 0x96E2, 0xEB79, 0x96E3,
- 0xEB7A, 0x96E4, 0xEB7B, 0x96E5, 0xEB7C, 0x96E6, 0xEB7D, 0x96E7,
- 0xEB7E, 0x96EB, 0xEB80, 0x96EC, 0xEB81, 0x96ED, 0xEB82, 0x96EE,
- 0xEB83, 0x96F0, 0xEB84, 0x96F1, 0xEB85, 0x96F2, 0xEB86, 0x96F4,
- 0xEB87, 0x96F5, 0xEB88, 0x96F8, 0xEB89, 0x96FA, 0xEB8A, 0x96FB,
- 0xEB8B, 0x96FC, 0xEB8C, 0x96FD, 0xEB8D, 0x96FF, 0xEB8E, 0x9702,
- 0xEB8F, 0x9703, 0xEB90, 0x9705, 0xEB91, 0x970A, 0xEB92, 0x970B,
- 0xEB93, 0x970C, 0xEB94, 0x9710, 0xEB95, 0x9711, 0xEB96, 0x9712,
- 0xEB97, 0x9714, 0xEB98, 0x9715, 0xEB99, 0x9717, 0xEB9A, 0x9718,
- 0xEB9B, 0x9719, 0xEB9C, 0x971A, 0xEB9D, 0x971B, 0xEB9E, 0x971D,
- 0xEB9F, 0x971F, 0xEBA0, 0x9720, 0xEBA1, 0x643F, 0xEBA2, 0x64D8,
- 0xEBA3, 0x8004, 0xEBA4, 0x6BEA, 0xEBA5, 0x6BF3, 0xEBA6, 0x6BFD,
- 0xEBA7, 0x6BF5, 0xEBA8, 0x6BF9, 0xEBA9, 0x6C05, 0xEBAA, 0x6C07,
- 0xEBAB, 0x6C06, 0xEBAC, 0x6C0D, 0xEBAD, 0x6C15, 0xEBAE, 0x6C18,
- 0xEBAF, 0x6C19, 0xEBB0, 0x6C1A, 0xEBB1, 0x6C21, 0xEBB2, 0x6C29,
- 0xEBB3, 0x6C24, 0xEBB4, 0x6C2A, 0xEBB5, 0x6C32, 0xEBB6, 0x6535,
- 0xEBB7, 0x6555, 0xEBB8, 0x656B, 0xEBB9, 0x724D, 0xEBBA, 0x7252,
- 0xEBBB, 0x7256, 0xEBBC, 0x7230, 0xEBBD, 0x8662, 0xEBBE, 0x5216,
- 0xEBBF, 0x809F, 0xEBC0, 0x809C, 0xEBC1, 0x8093, 0xEBC2, 0x80BC,
- 0xEBC3, 0x670A, 0xEBC4, 0x80BD, 0xEBC5, 0x80B1, 0xEBC6, 0x80AB,
- 0xEBC7, 0x80AD, 0xEBC8, 0x80B4, 0xEBC9, 0x80B7, 0xEBCA, 0x80E7,
- 0xEBCB, 0x80E8, 0xEBCC, 0x80E9, 0xEBCD, 0x80EA, 0xEBCE, 0x80DB,
- 0xEBCF, 0x80C2, 0xEBD0, 0x80C4, 0xEBD1, 0x80D9, 0xEBD2, 0x80CD,
- 0xEBD3, 0x80D7, 0xEBD4, 0x6710, 0xEBD5, 0x80DD, 0xEBD6, 0x80EB,
- 0xEBD7, 0x80F1, 0xEBD8, 0x80F4, 0xEBD9, 0x80ED, 0xEBDA, 0x810D,
- 0xEBDB, 0x810E, 0xEBDC, 0x80F2, 0xEBDD, 0x80FC, 0xEBDE, 0x6715,
- 0xEBDF, 0x8112, 0xEBE0, 0x8C5A, 0xEBE1, 0x8136, 0xEBE2, 0x811E,
- 0xEBE3, 0x812C, 0xEBE4, 0x8118, 0xEBE5, 0x8132, 0xEBE6, 0x8148,
- 0xEBE7, 0x814C, 0xEBE8, 0x8153, 0xEBE9, 0x8174, 0xEBEA, 0x8159,
- 0xEBEB, 0x815A, 0xEBEC, 0x8171, 0xEBED, 0x8160, 0xEBEE, 0x8169,
- 0xEBEF, 0x817C, 0xEBF0, 0x817D, 0xEBF1, 0x816D, 0xEBF2, 0x8167,
- 0xEBF3, 0x584D, 0xEBF4, 0x5AB5, 0xEBF5, 0x8188, 0xEBF6, 0x8182,
- 0xEBF7, 0x8191, 0xEBF8, 0x6ED5, 0xEBF9, 0x81A3, 0xEBFA, 0x81AA,
- 0xEBFB, 0x81CC, 0xEBFC, 0x6726, 0xEBFD, 0x81CA, 0xEBFE, 0x81BB,
- 0xEC40, 0x9721, 0xEC41, 0x9722, 0xEC42, 0x9723, 0xEC43, 0x9724,
- 0xEC44, 0x9725, 0xEC45, 0x9726, 0xEC46, 0x9727, 0xEC47, 0x9728,
- 0xEC48, 0x9729, 0xEC49, 0x972B, 0xEC4A, 0x972C, 0xEC4B, 0x972E,
- 0xEC4C, 0x972F, 0xEC4D, 0x9731, 0xEC4E, 0x9733, 0xEC4F, 0x9734,
- 0xEC50, 0x9735, 0xEC51, 0x9736, 0xEC52, 0x9737, 0xEC53, 0x973A,
- 0xEC54, 0x973B, 0xEC55, 0x973C, 0xEC56, 0x973D, 0xEC57, 0x973F,
- 0xEC58, 0x9740, 0xEC59, 0x9741, 0xEC5A, 0x9742, 0xEC5B, 0x9743,
- 0xEC5C, 0x9744, 0xEC5D, 0x9745, 0xEC5E, 0x9746, 0xEC5F, 0x9747,
- 0xEC60, 0x9748, 0xEC61, 0x9749, 0xEC62, 0x974A, 0xEC63, 0x974B,
- 0xEC64, 0x974C, 0xEC65, 0x974D, 0xEC66, 0x974E, 0xEC67, 0x974F,
- 0xEC68, 0x9750, 0xEC69, 0x9751, 0xEC6A, 0x9754, 0xEC6B, 0x9755,
- 0xEC6C, 0x9757, 0xEC6D, 0x9758, 0xEC6E, 0x975A, 0xEC6F, 0x975C,
- 0xEC70, 0x975D, 0xEC71, 0x975F, 0xEC72, 0x9763, 0xEC73, 0x9764,
- 0xEC74, 0x9766, 0xEC75, 0x9767, 0xEC76, 0x9768, 0xEC77, 0x976A,
- 0xEC78, 0x976B, 0xEC79, 0x976C, 0xEC7A, 0x976D, 0xEC7B, 0x976E,
- 0xEC7C, 0x976F, 0xEC7D, 0x9770, 0xEC7E, 0x9771, 0xEC80, 0x9772,
- 0xEC81, 0x9775, 0xEC82, 0x9777, 0xEC83, 0x9778, 0xEC84, 0x9779,
- 0xEC85, 0x977A, 0xEC86, 0x977B, 0xEC87, 0x977D, 0xEC88, 0x977E,
- 0xEC89, 0x977F, 0xEC8A, 0x9780, 0xEC8B, 0x9781, 0xEC8C, 0x9782,
- 0xEC8D, 0x9783, 0xEC8E, 0x9784, 0xEC8F, 0x9786, 0xEC90, 0x9787,
- 0xEC91, 0x9788, 0xEC92, 0x9789, 0xEC93, 0x978A, 0xEC94, 0x978C,
- 0xEC95, 0x978E, 0xEC96, 0x978F, 0xEC97, 0x9790, 0xEC98, 0x9793,
- 0xEC99, 0x9795, 0xEC9A, 0x9796, 0xEC9B, 0x9797, 0xEC9C, 0x9799,
- 0xEC9D, 0x979A, 0xEC9E, 0x979B, 0xEC9F, 0x979C, 0xECA0, 0x979D,
- 0xECA1, 0x81C1, 0xECA2, 0x81A6, 0xECA3, 0x6B24, 0xECA4, 0x6B37,
- 0xECA5, 0x6B39, 0xECA6, 0x6B43, 0xECA7, 0x6B46, 0xECA8, 0x6B59,
- 0xECA9, 0x98D1, 0xECAA, 0x98D2, 0xECAB, 0x98D3, 0xECAC, 0x98D5,
- 0xECAD, 0x98D9, 0xECAE, 0x98DA, 0xECAF, 0x6BB3, 0xECB0, 0x5F40,
- 0xECB1, 0x6BC2, 0xECB2, 0x89F3, 0xECB3, 0x6590, 0xECB4, 0x9F51,
- 0xECB5, 0x6593, 0xECB6, 0x65BC, 0xECB7, 0x65C6, 0xECB8, 0x65C4,
- 0xECB9, 0x65C3, 0xECBA, 0x65CC, 0xECBB, 0x65CE, 0xECBC, 0x65D2,
- 0xECBD, 0x65D6, 0xECBE, 0x7080, 0xECBF, 0x709C, 0xECC0, 0x7096,
- 0xECC1, 0x709D, 0xECC2, 0x70BB, 0xECC3, 0x70C0, 0xECC4, 0x70B7,
- 0xECC5, 0x70AB, 0xECC6, 0x70B1, 0xECC7, 0x70E8, 0xECC8, 0x70CA,
- 0xECC9, 0x7110, 0xECCA, 0x7113, 0xECCB, 0x7116, 0xECCC, 0x712F,
- 0xECCD, 0x7131, 0xECCE, 0x7173, 0xECCF, 0x715C, 0xECD0, 0x7168,
- 0xECD1, 0x7145, 0xECD2, 0x7172, 0xECD3, 0x714A, 0xECD4, 0x7178,
- 0xECD5, 0x717A, 0xECD6, 0x7198, 0xECD7, 0x71B3, 0xECD8, 0x71B5,
- 0xECD9, 0x71A8, 0xECDA, 0x71A0, 0xECDB, 0x71E0, 0xECDC, 0x71D4,
- 0xECDD, 0x71E7, 0xECDE, 0x71F9, 0xECDF, 0x721D, 0xECE0, 0x7228,
- 0xECE1, 0x706C, 0xECE2, 0x7118, 0xECE3, 0x7166, 0xECE4, 0x71B9,
- 0xECE5, 0x623E, 0xECE6, 0x623D, 0xECE7, 0x6243, 0xECE8, 0x6248,
- 0xECE9, 0x6249, 0xECEA, 0x793B, 0xECEB, 0x7940, 0xECEC, 0x7946,
- 0xECED, 0x7949, 0xECEE, 0x795B, 0xECEF, 0x795C, 0xECF0, 0x7953,
- 0xECF1, 0x795A, 0xECF2, 0x7962, 0xECF3, 0x7957, 0xECF4, 0x7960,
- 0xECF5, 0x796F, 0xECF6, 0x7967, 0xECF7, 0x797A, 0xECF8, 0x7985,
- 0xECF9, 0x798A, 0xECFA, 0x799A, 0xECFB, 0x79A7, 0xECFC, 0x79B3,
- 0xECFD, 0x5FD1, 0xECFE, 0x5FD0, 0xED40, 0x979E, 0xED41, 0x979F,
- 0xED42, 0x97A1, 0xED43, 0x97A2, 0xED44, 0x97A4, 0xED45, 0x97A5,
- 0xED46, 0x97A6, 0xED47, 0x97A7, 0xED48, 0x97A8, 0xED49, 0x97A9,
- 0xED4A, 0x97AA, 0xED4B, 0x97AC, 0xED4C, 0x97AE, 0xED4D, 0x97B0,
- 0xED4E, 0x97B1, 0xED4F, 0x97B3, 0xED50, 0x97B5, 0xED51, 0x97B6,
- 0xED52, 0x97B7, 0xED53, 0x97B8, 0xED54, 0x97B9, 0xED55, 0x97BA,
- 0xED56, 0x97BB, 0xED57, 0x97BC, 0xED58, 0x97BD, 0xED59, 0x97BE,
- 0xED5A, 0x97BF, 0xED5B, 0x97C0, 0xED5C, 0x97C1, 0xED5D, 0x97C2,
- 0xED5E, 0x97C3, 0xED5F, 0x97C4, 0xED60, 0x97C5, 0xED61, 0x97C6,
- 0xED62, 0x97C7, 0xED63, 0x97C8, 0xED64, 0x97C9, 0xED65, 0x97CA,
- 0xED66, 0x97CB, 0xED67, 0x97CC, 0xED68, 0x97CD, 0xED69, 0x97CE,
- 0xED6A, 0x97CF, 0xED6B, 0x97D0, 0xED6C, 0x97D1, 0xED6D, 0x97D2,
- 0xED6E, 0x97D3, 0xED6F, 0x97D4, 0xED70, 0x97D5, 0xED71, 0x97D6,
- 0xED72, 0x97D7, 0xED73, 0x97D8, 0xED74, 0x97D9, 0xED75, 0x97DA,
- 0xED76, 0x97DB, 0xED77, 0x97DC, 0xED78, 0x97DD, 0xED79, 0x97DE,
- 0xED7A, 0x97DF, 0xED7B, 0x97E0, 0xED7C, 0x97E1, 0xED7D, 0x97E2,
- 0xED7E, 0x97E3, 0xED80, 0x97E4, 0xED81, 0x97E5, 0xED82, 0x97E8,
- 0xED83, 0x97EE, 0xED84, 0x97EF, 0xED85, 0x97F0, 0xED86, 0x97F1,
- 0xED87, 0x97F2, 0xED88, 0x97F4, 0xED89, 0x97F7, 0xED8A, 0x97F8,
- 0xED8B, 0x97F9, 0xED8C, 0x97FA, 0xED8D, 0x97FB, 0xED8E, 0x97FC,
- 0xED8F, 0x97FD, 0xED90, 0x97FE, 0xED91, 0x97FF, 0xED92, 0x9800,
- 0xED93, 0x9801, 0xED94, 0x9802, 0xED95, 0x9803, 0xED96, 0x9804,
- 0xED97, 0x9805, 0xED98, 0x9806, 0xED99, 0x9807, 0xED9A, 0x9808,
- 0xED9B, 0x9809, 0xED9C, 0x980A, 0xED9D, 0x980B, 0xED9E, 0x980C,
- 0xED9F, 0x980D, 0xEDA0, 0x980E, 0xEDA1, 0x603C, 0xEDA2, 0x605D,
- 0xEDA3, 0x605A, 0xEDA4, 0x6067, 0xEDA5, 0x6041, 0xEDA6, 0x6059,
- 0xEDA7, 0x6063, 0xEDA8, 0x60AB, 0xEDA9, 0x6106, 0xEDAA, 0x610D,
- 0xEDAB, 0x615D, 0xEDAC, 0x61A9, 0xEDAD, 0x619D, 0xEDAE, 0x61CB,
- 0xEDAF, 0x61D1, 0xEDB0, 0x6206, 0xEDB1, 0x8080, 0xEDB2, 0x807F,
- 0xEDB3, 0x6C93, 0xEDB4, 0x6CF6, 0xEDB5, 0x6DFC, 0xEDB6, 0x77F6,
- 0xEDB7, 0x77F8, 0xEDB8, 0x7800, 0xEDB9, 0x7809, 0xEDBA, 0x7817,
- 0xEDBB, 0x7818, 0xEDBC, 0x7811, 0xEDBD, 0x65AB, 0xEDBE, 0x782D,
- 0xEDBF, 0x781C, 0xEDC0, 0x781D, 0xEDC1, 0x7839, 0xEDC2, 0x783A,
- 0xEDC3, 0x783B, 0xEDC4, 0x781F, 0xEDC5, 0x783C, 0xEDC6, 0x7825,
- 0xEDC7, 0x782C, 0xEDC8, 0x7823, 0xEDC9, 0x7829, 0xEDCA, 0x784E,
- 0xEDCB, 0x786D, 0xEDCC, 0x7856, 0xEDCD, 0x7857, 0xEDCE, 0x7826,
- 0xEDCF, 0x7850, 0xEDD0, 0x7847, 0xEDD1, 0x784C, 0xEDD2, 0x786A,
- 0xEDD3, 0x789B, 0xEDD4, 0x7893, 0xEDD5, 0x789A, 0xEDD6, 0x7887,
- 0xEDD7, 0x789C, 0xEDD8, 0x78A1, 0xEDD9, 0x78A3, 0xEDDA, 0x78B2,
- 0xEDDB, 0x78B9, 0xEDDC, 0x78A5, 0xEDDD, 0x78D4, 0xEDDE, 0x78D9,
- 0xEDDF, 0x78C9, 0xEDE0, 0x78EC, 0xEDE1, 0x78F2, 0xEDE2, 0x7905,
- 0xEDE3, 0x78F4, 0xEDE4, 0x7913, 0xEDE5, 0x7924, 0xEDE6, 0x791E,
- 0xEDE7, 0x7934, 0xEDE8, 0x9F9B, 0xEDE9, 0x9EF9, 0xEDEA, 0x9EFB,
- 0xEDEB, 0x9EFC, 0xEDEC, 0x76F1, 0xEDED, 0x7704, 0xEDEE, 0x770D,
- 0xEDEF, 0x76F9, 0xEDF0, 0x7707, 0xEDF1, 0x7708, 0xEDF2, 0x771A,
- 0xEDF3, 0x7722, 0xEDF4, 0x7719, 0xEDF5, 0x772D, 0xEDF6, 0x7726,
- 0xEDF7, 0x7735, 0xEDF8, 0x7738, 0xEDF9, 0x7750, 0xEDFA, 0x7751,
- 0xEDFB, 0x7747, 0xEDFC, 0x7743, 0xEDFD, 0x775A, 0xEDFE, 0x7768,
- 0xEE40, 0x980F, 0xEE41, 0x9810, 0xEE42, 0x9811, 0xEE43, 0x9812,
- 0xEE44, 0x9813, 0xEE45, 0x9814, 0xEE46, 0x9815, 0xEE47, 0x9816,
- 0xEE48, 0x9817, 0xEE49, 0x9818, 0xEE4A, 0x9819, 0xEE4B, 0x981A,
- 0xEE4C, 0x981B, 0xEE4D, 0x981C, 0xEE4E, 0x981D, 0xEE4F, 0x981E,
- 0xEE50, 0x981F, 0xEE51, 0x9820, 0xEE52, 0x9821, 0xEE53, 0x9822,
- 0xEE54, 0x9823, 0xEE55, 0x9824, 0xEE56, 0x9825, 0xEE57, 0x9826,
- 0xEE58, 0x9827, 0xEE59, 0x9828, 0xEE5A, 0x9829, 0xEE5B, 0x982A,
- 0xEE5C, 0x982B, 0xEE5D, 0x982C, 0xEE5E, 0x982D, 0xEE5F, 0x982E,
- 0xEE60, 0x982F, 0xEE61, 0x9830, 0xEE62, 0x9831, 0xEE63, 0x9832,
- 0xEE64, 0x9833, 0xEE65, 0x9834, 0xEE66, 0x9835, 0xEE67, 0x9836,
- 0xEE68, 0x9837, 0xEE69, 0x9838, 0xEE6A, 0x9839, 0xEE6B, 0x983A,
- 0xEE6C, 0x983B, 0xEE6D, 0x983C, 0xEE6E, 0x983D, 0xEE6F, 0x983E,
- 0xEE70, 0x983F, 0xEE71, 0x9840, 0xEE72, 0x9841, 0xEE73, 0x9842,
- 0xEE74, 0x9843, 0xEE75, 0x9844, 0xEE76, 0x9845, 0xEE77, 0x9846,
- 0xEE78, 0x9847, 0xEE79, 0x9848, 0xEE7A, 0x9849, 0xEE7B, 0x984A,
- 0xEE7C, 0x984B, 0xEE7D, 0x984C, 0xEE7E, 0x984D, 0xEE80, 0x984E,
- 0xEE81, 0x984F, 0xEE82, 0x9850, 0xEE83, 0x9851, 0xEE84, 0x9852,
- 0xEE85, 0x9853, 0xEE86, 0x9854, 0xEE87, 0x9855, 0xEE88, 0x9856,
- 0xEE89, 0x9857, 0xEE8A, 0x9858, 0xEE8B, 0x9859, 0xEE8C, 0x985A,
- 0xEE8D, 0x985B, 0xEE8E, 0x985C, 0xEE8F, 0x985D, 0xEE90, 0x985E,
- 0xEE91, 0x985F, 0xEE92, 0x9860, 0xEE93, 0x9861, 0xEE94, 0x9862,
- 0xEE95, 0x9863, 0xEE96, 0x9864, 0xEE97, 0x9865, 0xEE98, 0x9866,
- 0xEE99, 0x9867, 0xEE9A, 0x9868, 0xEE9B, 0x9869, 0xEE9C, 0x986A,
- 0xEE9D, 0x986B, 0xEE9E, 0x986C, 0xEE9F, 0x986D, 0xEEA0, 0x986E,
- 0xEEA1, 0x7762, 0xEEA2, 0x7765, 0xEEA3, 0x777F, 0xEEA4, 0x778D,
- 0xEEA5, 0x777D, 0xEEA6, 0x7780, 0xEEA7, 0x778C, 0xEEA8, 0x7791,
- 0xEEA9, 0x779F, 0xEEAA, 0x77A0, 0xEEAB, 0x77B0, 0xEEAC, 0x77B5,
- 0xEEAD, 0x77BD, 0xEEAE, 0x753A, 0xEEAF, 0x7540, 0xEEB0, 0x754E,
- 0xEEB1, 0x754B, 0xEEB2, 0x7548, 0xEEB3, 0x755B, 0xEEB4, 0x7572,
- 0xEEB5, 0x7579, 0xEEB6, 0x7583, 0xEEB7, 0x7F58, 0xEEB8, 0x7F61,
- 0xEEB9, 0x7F5F, 0xEEBA, 0x8A48, 0xEEBB, 0x7F68, 0xEEBC, 0x7F74,
- 0xEEBD, 0x7F71, 0xEEBE, 0x7F79, 0xEEBF, 0x7F81, 0xEEC0, 0x7F7E,
- 0xEEC1, 0x76CD, 0xEEC2, 0x76E5, 0xEEC3, 0x8832, 0xEEC4, 0x9485,
- 0xEEC5, 0x9486, 0xEEC6, 0x9487, 0xEEC7, 0x948B, 0xEEC8, 0x948A,
- 0xEEC9, 0x948C, 0xEECA, 0x948D, 0xEECB, 0x948F, 0xEECC, 0x9490,
- 0xEECD, 0x9494, 0xEECE, 0x9497, 0xEECF, 0x9495, 0xEED0, 0x949A,
- 0xEED1, 0x949B, 0xEED2, 0x949C, 0xEED3, 0x94A3, 0xEED4, 0x94A4,
- 0xEED5, 0x94AB, 0xEED6, 0x94AA, 0xEED7, 0x94AD, 0xEED8, 0x94AC,
- 0xEED9, 0x94AF, 0xEEDA, 0x94B0, 0xEEDB, 0x94B2, 0xEEDC, 0x94B4,
- 0xEEDD, 0x94B6, 0xEEDE, 0x94B7, 0xEEDF, 0x94B8, 0xEEE0, 0x94B9,
- 0xEEE1, 0x94BA, 0xEEE2, 0x94BC, 0xEEE3, 0x94BD, 0xEEE4, 0x94BF,
- 0xEEE5, 0x94C4, 0xEEE6, 0x94C8, 0xEEE7, 0x94C9, 0xEEE8, 0x94CA,
- 0xEEE9, 0x94CB, 0xEEEA, 0x94CC, 0xEEEB, 0x94CD, 0xEEEC, 0x94CE,
- 0xEEED, 0x94D0, 0xEEEE, 0x94D1, 0xEEEF, 0x94D2, 0xEEF0, 0x94D5,
- 0xEEF1, 0x94D6, 0xEEF2, 0x94D7, 0xEEF3, 0x94D9, 0xEEF4, 0x94D8,
- 0xEEF5, 0x94DB, 0xEEF6, 0x94DE, 0xEEF7, 0x94DF, 0xEEF8, 0x94E0,
- 0xEEF9, 0x94E2, 0xEEFA, 0x94E4, 0xEEFB, 0x94E5, 0xEEFC, 0x94E7,
- 0xEEFD, 0x94E8, 0xEEFE, 0x94EA, 0xEF40, 0x986F, 0xEF41, 0x9870,
- 0xEF42, 0x9871, 0xEF43, 0x9872, 0xEF44, 0x9873, 0xEF45, 0x9874,
- 0xEF46, 0x988B, 0xEF47, 0x988E, 0xEF48, 0x9892, 0xEF49, 0x9895,
- 0xEF4A, 0x9899, 0xEF4B, 0x98A3, 0xEF4C, 0x98A8, 0xEF4D, 0x98A9,
- 0xEF4E, 0x98AA, 0xEF4F, 0x98AB, 0xEF50, 0x98AC, 0xEF51, 0x98AD,
- 0xEF52, 0x98AE, 0xEF53, 0x98AF, 0xEF54, 0x98B0, 0xEF55, 0x98B1,
- 0xEF56, 0x98B2, 0xEF57, 0x98B3, 0xEF58, 0x98B4, 0xEF59, 0x98B5,
- 0xEF5A, 0x98B6, 0xEF5B, 0x98B7, 0xEF5C, 0x98B8, 0xEF5D, 0x98B9,
- 0xEF5E, 0x98BA, 0xEF5F, 0x98BB, 0xEF60, 0x98BC, 0xEF61, 0x98BD,
- 0xEF62, 0x98BE, 0xEF63, 0x98BF, 0xEF64, 0x98C0, 0xEF65, 0x98C1,
- 0xEF66, 0x98C2, 0xEF67, 0x98C3, 0xEF68, 0x98C4, 0xEF69, 0x98C5,
- 0xEF6A, 0x98C6, 0xEF6B, 0x98C7, 0xEF6C, 0x98C8, 0xEF6D, 0x98C9,
- 0xEF6E, 0x98CA, 0xEF6F, 0x98CB, 0xEF70, 0x98CC, 0xEF71, 0x98CD,
- 0xEF72, 0x98CF, 0xEF73, 0x98D0, 0xEF74, 0x98D4, 0xEF75, 0x98D6,
- 0xEF76, 0x98D7, 0xEF77, 0x98DB, 0xEF78, 0x98DC, 0xEF79, 0x98DD,
- 0xEF7A, 0x98E0, 0xEF7B, 0x98E1, 0xEF7C, 0x98E2, 0xEF7D, 0x98E3,
- 0xEF7E, 0x98E4, 0xEF80, 0x98E5, 0xEF81, 0x98E6, 0xEF82, 0x98E9,
- 0xEF83, 0x98EA, 0xEF84, 0x98EB, 0xEF85, 0x98EC, 0xEF86, 0x98ED,
- 0xEF87, 0x98EE, 0xEF88, 0x98EF, 0xEF89, 0x98F0, 0xEF8A, 0x98F1,
- 0xEF8B, 0x98F2, 0xEF8C, 0x98F3, 0xEF8D, 0x98F4, 0xEF8E, 0x98F5,
- 0xEF8F, 0x98F6, 0xEF90, 0x98F7, 0xEF91, 0x98F8, 0xEF92, 0x98F9,
- 0xEF93, 0x98FA, 0xEF94, 0x98FB, 0xEF95, 0x98FC, 0xEF96, 0x98FD,
- 0xEF97, 0x98FE, 0xEF98, 0x98FF, 0xEF99, 0x9900, 0xEF9A, 0x9901,
- 0xEF9B, 0x9902, 0xEF9C, 0x9903, 0xEF9D, 0x9904, 0xEF9E, 0x9905,
- 0xEF9F, 0x9906, 0xEFA0, 0x9907, 0xEFA1, 0x94E9, 0xEFA2, 0x94EB,
- 0xEFA3, 0x94EE, 0xEFA4, 0x94EF, 0xEFA5, 0x94F3, 0xEFA6, 0x94F4,
- 0xEFA7, 0x94F5, 0xEFA8, 0x94F7, 0xEFA9, 0x94F9, 0xEFAA, 0x94FC,
- 0xEFAB, 0x94FD, 0xEFAC, 0x94FF, 0xEFAD, 0x9503, 0xEFAE, 0x9502,
- 0xEFAF, 0x9506, 0xEFB0, 0x9507, 0xEFB1, 0x9509, 0xEFB2, 0x950A,
- 0xEFB3, 0x950D, 0xEFB4, 0x950E, 0xEFB5, 0x950F, 0xEFB6, 0x9512,
- 0xEFB7, 0x9513, 0xEFB8, 0x9514, 0xEFB9, 0x9515, 0xEFBA, 0x9516,
- 0xEFBB, 0x9518, 0xEFBC, 0x951B, 0xEFBD, 0x951D, 0xEFBE, 0x951E,
- 0xEFBF, 0x951F, 0xEFC0, 0x9522, 0xEFC1, 0x952A, 0xEFC2, 0x952B,
- 0xEFC3, 0x9529, 0xEFC4, 0x952C, 0xEFC5, 0x9531, 0xEFC6, 0x9532,
- 0xEFC7, 0x9534, 0xEFC8, 0x9536, 0xEFC9, 0x9537, 0xEFCA, 0x9538,
- 0xEFCB, 0x953C, 0xEFCC, 0x953E, 0xEFCD, 0x953F, 0xEFCE, 0x9542,
- 0xEFCF, 0x9535, 0xEFD0, 0x9544, 0xEFD1, 0x9545, 0xEFD2, 0x9546,
- 0xEFD3, 0x9549, 0xEFD4, 0x954C, 0xEFD5, 0x954E, 0xEFD6, 0x954F,
- 0xEFD7, 0x9552, 0xEFD8, 0x9553, 0xEFD9, 0x9554, 0xEFDA, 0x9556,
- 0xEFDB, 0x9557, 0xEFDC, 0x9558, 0xEFDD, 0x9559, 0xEFDE, 0x955B,
- 0xEFDF, 0x955E, 0xEFE0, 0x955F, 0xEFE1, 0x955D, 0xEFE2, 0x9561,
- 0xEFE3, 0x9562, 0xEFE4, 0x9564, 0xEFE5, 0x9565, 0xEFE6, 0x9566,
- 0xEFE7, 0x9567, 0xEFE8, 0x9568, 0xEFE9, 0x9569, 0xEFEA, 0x956A,
- 0xEFEB, 0x956B, 0xEFEC, 0x956C, 0xEFED, 0x956F, 0xEFEE, 0x9571,
- 0xEFEF, 0x9572, 0xEFF0, 0x9573, 0xEFF1, 0x953A, 0xEFF2, 0x77E7,
- 0xEFF3, 0x77EC, 0xEFF4, 0x96C9, 0xEFF5, 0x79D5, 0xEFF6, 0x79ED,
- 0xEFF7, 0x79E3, 0xEFF8, 0x79EB, 0xEFF9, 0x7A06, 0xEFFA, 0x5D47,
- 0xEFFB, 0x7A03, 0xEFFC, 0x7A02, 0xEFFD, 0x7A1E, 0xEFFE, 0x7A14,
- 0xF040, 0x9908, 0xF041, 0x9909, 0xF042, 0x990A, 0xF043, 0x990B,
- 0xF044, 0x990C, 0xF045, 0x990E, 0xF046, 0x990F, 0xF047, 0x9911,
- 0xF048, 0x9912, 0xF049, 0x9913, 0xF04A, 0x9914, 0xF04B, 0x9915,
- 0xF04C, 0x9916, 0xF04D, 0x9917, 0xF04E, 0x9918, 0xF04F, 0x9919,
- 0xF050, 0x991A, 0xF051, 0x991B, 0xF052, 0x991C, 0xF053, 0x991D,
- 0xF054, 0x991E, 0xF055, 0x991F, 0xF056, 0x9920, 0xF057, 0x9921,
- 0xF058, 0x9922, 0xF059, 0x9923, 0xF05A, 0x9924, 0xF05B, 0x9925,
- 0xF05C, 0x9926, 0xF05D, 0x9927, 0xF05E, 0x9928, 0xF05F, 0x9929,
- 0xF060, 0x992A, 0xF061, 0x992B, 0xF062, 0x992C, 0xF063, 0x992D,
- 0xF064, 0x992F, 0xF065, 0x9930, 0xF066, 0x9931, 0xF067, 0x9932,
- 0xF068, 0x9933, 0xF069, 0x9934, 0xF06A, 0x9935, 0xF06B, 0x9936,
- 0xF06C, 0x9937, 0xF06D, 0x9938, 0xF06E, 0x9939, 0xF06F, 0x993A,
- 0xF070, 0x993B, 0xF071, 0x993C, 0xF072, 0x993D, 0xF073, 0x993E,
- 0xF074, 0x993F, 0xF075, 0x9940, 0xF076, 0x9941, 0xF077, 0x9942,
- 0xF078, 0x9943, 0xF079, 0x9944, 0xF07A, 0x9945, 0xF07B, 0x9946,
- 0xF07C, 0x9947, 0xF07D, 0x9948, 0xF07E, 0x9949, 0xF080, 0x994A,
- 0xF081, 0x994B, 0xF082, 0x994C, 0xF083, 0x994D, 0xF084, 0x994E,
- 0xF085, 0x994F, 0xF086, 0x9950, 0xF087, 0x9951, 0xF088, 0x9952,
- 0xF089, 0x9953, 0xF08A, 0x9956, 0xF08B, 0x9957, 0xF08C, 0x9958,
- 0xF08D, 0x9959, 0xF08E, 0x995A, 0xF08F, 0x995B, 0xF090, 0x995C,
- 0xF091, 0x995D, 0xF092, 0x995E, 0xF093, 0x995F, 0xF094, 0x9960,
- 0xF095, 0x9961, 0xF096, 0x9962, 0xF097, 0x9964, 0xF098, 0x9966,
- 0xF099, 0x9973, 0xF09A, 0x9978, 0xF09B, 0x9979, 0xF09C, 0x997B,
- 0xF09D, 0x997E, 0xF09E, 0x9982, 0xF09F, 0x9983, 0xF0A0, 0x9989,
- 0xF0A1, 0x7A39, 0xF0A2, 0x7A37, 0xF0A3, 0x7A51, 0xF0A4, 0x9ECF,
- 0xF0A5, 0x99A5, 0xF0A6, 0x7A70, 0xF0A7, 0x7688, 0xF0A8, 0x768E,
- 0xF0A9, 0x7693, 0xF0AA, 0x7699, 0xF0AB, 0x76A4, 0xF0AC, 0x74DE,
- 0xF0AD, 0x74E0, 0xF0AE, 0x752C, 0xF0AF, 0x9E20, 0xF0B0, 0x9E22,
- 0xF0B1, 0x9E28, 0xF0B2, 0x9E29, 0xF0B3, 0x9E2A, 0xF0B4, 0x9E2B,
- 0xF0B5, 0x9E2C, 0xF0B6, 0x9E32, 0xF0B7, 0x9E31, 0xF0B8, 0x9E36,
- 0xF0B9, 0x9E38, 0xF0BA, 0x9E37, 0xF0BB, 0x9E39, 0xF0BC, 0x9E3A,
- 0xF0BD, 0x9E3E, 0xF0BE, 0x9E41, 0xF0BF, 0x9E42, 0xF0C0, 0x9E44,
- 0xF0C1, 0x9E46, 0xF0C2, 0x9E47, 0xF0C3, 0x9E48, 0xF0C4, 0x9E49,
- 0xF0C5, 0x9E4B, 0xF0C6, 0x9E4C, 0xF0C7, 0x9E4E, 0xF0C8, 0x9E51,
- 0xF0C9, 0x9E55, 0xF0CA, 0x9E57, 0xF0CB, 0x9E5A, 0xF0CC, 0x9E5B,
- 0xF0CD, 0x9E5C, 0xF0CE, 0x9E5E, 0xF0CF, 0x9E63, 0xF0D0, 0x9E66,
- 0xF0D1, 0x9E67, 0xF0D2, 0x9E68, 0xF0D3, 0x9E69, 0xF0D4, 0x9E6A,
- 0xF0D5, 0x9E6B, 0xF0D6, 0x9E6C, 0xF0D7, 0x9E71, 0xF0D8, 0x9E6D,
- 0xF0D9, 0x9E73, 0xF0DA, 0x7592, 0xF0DB, 0x7594, 0xF0DC, 0x7596,
- 0xF0DD, 0x75A0, 0xF0DE, 0x759D, 0xF0DF, 0x75AC, 0xF0E0, 0x75A3,
- 0xF0E1, 0x75B3, 0xF0E2, 0x75B4, 0xF0E3, 0x75B8, 0xF0E4, 0x75C4,
- 0xF0E5, 0x75B1, 0xF0E6, 0x75B0, 0xF0E7, 0x75C3, 0xF0E8, 0x75C2,
- 0xF0E9, 0x75D6, 0xF0EA, 0x75CD, 0xF0EB, 0x75E3, 0xF0EC, 0x75E8,
- 0xF0ED, 0x75E6, 0xF0EE, 0x75E4, 0xF0EF, 0x75EB, 0xF0F0, 0x75E7,
- 0xF0F1, 0x7603, 0xF0F2, 0x75F1, 0xF0F3, 0x75FC, 0xF0F4, 0x75FF,
- 0xF0F5, 0x7610, 0xF0F6, 0x7600, 0xF0F7, 0x7605, 0xF0F8, 0x760C,
- 0xF0F9, 0x7617, 0xF0FA, 0x760A, 0xF0FB, 0x7625, 0xF0FC, 0x7618,
- 0xF0FD, 0x7615, 0xF0FE, 0x7619, 0xF140, 0x998C, 0xF141, 0x998E,
- 0xF142, 0x999A, 0xF143, 0x999B, 0xF144, 0x999C, 0xF145, 0x999D,
- 0xF146, 0x999E, 0xF147, 0x999F, 0xF148, 0x99A0, 0xF149, 0x99A1,
- 0xF14A, 0x99A2, 0xF14B, 0x99A3, 0xF14C, 0x99A4, 0xF14D, 0x99A6,
- 0xF14E, 0x99A7, 0xF14F, 0x99A9, 0xF150, 0x99AA, 0xF151, 0x99AB,
- 0xF152, 0x99AC, 0xF153, 0x99AD, 0xF154, 0x99AE, 0xF155, 0x99AF,
- 0xF156, 0x99B0, 0xF157, 0x99B1, 0xF158, 0x99B2, 0xF159, 0x99B3,
- 0xF15A, 0x99B4, 0xF15B, 0x99B5, 0xF15C, 0x99B6, 0xF15D, 0x99B7,
- 0xF15E, 0x99B8, 0xF15F, 0x99B9, 0xF160, 0x99BA, 0xF161, 0x99BB,
- 0xF162, 0x99BC, 0xF163, 0x99BD, 0xF164, 0x99BE, 0xF165, 0x99BF,
- 0xF166, 0x99C0, 0xF167, 0x99C1, 0xF168, 0x99C2, 0xF169, 0x99C3,
- 0xF16A, 0x99C4, 0xF16B, 0x99C5, 0xF16C, 0x99C6, 0xF16D, 0x99C7,
- 0xF16E, 0x99C8, 0xF16F, 0x99C9, 0xF170, 0x99CA, 0xF171, 0x99CB,
- 0xF172, 0x99CC, 0xF173, 0x99CD, 0xF174, 0x99CE, 0xF175, 0x99CF,
- 0xF176, 0x99D0, 0xF177, 0x99D1, 0xF178, 0x99D2, 0xF179, 0x99D3,
- 0xF17A, 0x99D4, 0xF17B, 0x99D5, 0xF17C, 0x99D6, 0xF17D, 0x99D7,
- 0xF17E, 0x99D8, 0xF180, 0x99D9, 0xF181, 0x99DA, 0xF182, 0x99DB,
- 0xF183, 0x99DC, 0xF184, 0x99DD, 0xF185, 0x99DE, 0xF186, 0x99DF,
- 0xF187, 0x99E0, 0xF188, 0x99E1, 0xF189, 0x99E2, 0xF18A, 0x99E3,
- 0xF18B, 0x99E4, 0xF18C, 0x99E5, 0xF18D, 0x99E6, 0xF18E, 0x99E7,
- 0xF18F, 0x99E8, 0xF190, 0x99E9, 0xF191, 0x99EA, 0xF192, 0x99EB,
- 0xF193, 0x99EC, 0xF194, 0x99ED, 0xF195, 0x99EE, 0xF196, 0x99EF,
- 0xF197, 0x99F0, 0xF198, 0x99F1, 0xF199, 0x99F2, 0xF19A, 0x99F3,
- 0xF19B, 0x99F4, 0xF19C, 0x99F5, 0xF19D, 0x99F6, 0xF19E, 0x99F7,
- 0xF19F, 0x99F8, 0xF1A0, 0x99F9, 0xF1A1, 0x761B, 0xF1A2, 0x763C,
- 0xF1A3, 0x7622, 0xF1A4, 0x7620, 0xF1A5, 0x7640, 0xF1A6, 0x762D,
- 0xF1A7, 0x7630, 0xF1A8, 0x763F, 0xF1A9, 0x7635, 0xF1AA, 0x7643,
- 0xF1AB, 0x763E, 0xF1AC, 0x7633, 0xF1AD, 0x764D, 0xF1AE, 0x765E,
- 0xF1AF, 0x7654, 0xF1B0, 0x765C, 0xF1B1, 0x7656, 0xF1B2, 0x766B,
- 0xF1B3, 0x766F, 0xF1B4, 0x7FCA, 0xF1B5, 0x7AE6, 0xF1B6, 0x7A78,
- 0xF1B7, 0x7A79, 0xF1B8, 0x7A80, 0xF1B9, 0x7A86, 0xF1BA, 0x7A88,
- 0xF1BB, 0x7A95, 0xF1BC, 0x7AA6, 0xF1BD, 0x7AA0, 0xF1BE, 0x7AAC,
- 0xF1BF, 0x7AA8, 0xF1C0, 0x7AAD, 0xF1C1, 0x7AB3, 0xF1C2, 0x8864,
- 0xF1C3, 0x8869, 0xF1C4, 0x8872, 0xF1C5, 0x887D, 0xF1C6, 0x887F,
- 0xF1C7, 0x8882, 0xF1C8, 0x88A2, 0xF1C9, 0x88C6, 0xF1CA, 0x88B7,
- 0xF1CB, 0x88BC, 0xF1CC, 0x88C9, 0xF1CD, 0x88E2, 0xF1CE, 0x88CE,
- 0xF1CF, 0x88E3, 0xF1D0, 0x88E5, 0xF1D1, 0x88F1, 0xF1D2, 0x891A,
- 0xF1D3, 0x88FC, 0xF1D4, 0x88E8, 0xF1D5, 0x88FE, 0xF1D6, 0x88F0,
- 0xF1D7, 0x8921, 0xF1D8, 0x8919, 0xF1D9, 0x8913, 0xF1DA, 0x891B,
- 0xF1DB, 0x890A, 0xF1DC, 0x8934, 0xF1DD, 0x892B, 0xF1DE, 0x8936,
- 0xF1DF, 0x8941, 0xF1E0, 0x8966, 0xF1E1, 0x897B, 0xF1E2, 0x758B,
- 0xF1E3, 0x80E5, 0xF1E4, 0x76B2, 0xF1E5, 0x76B4, 0xF1E6, 0x77DC,
- 0xF1E7, 0x8012, 0xF1E8, 0x8014, 0xF1E9, 0x8016, 0xF1EA, 0x801C,
- 0xF1EB, 0x8020, 0xF1EC, 0x8022, 0xF1ED, 0x8025, 0xF1EE, 0x8026,
- 0xF1EF, 0x8027, 0xF1F0, 0x8029, 0xF1F1, 0x8028, 0xF1F2, 0x8031,
- 0xF1F3, 0x800B, 0xF1F4, 0x8035, 0xF1F5, 0x8043, 0xF1F6, 0x8046,
- 0xF1F7, 0x804D, 0xF1F8, 0x8052, 0xF1F9, 0x8069, 0xF1FA, 0x8071,
- 0xF1FB, 0x8983, 0xF1FC, 0x9878, 0xF1FD, 0x9880, 0xF1FE, 0x9883,
- 0xF240, 0x99FA, 0xF241, 0x99FB, 0xF242, 0x99FC, 0xF243, 0x99FD,
- 0xF244, 0x99FE, 0xF245, 0x99FF, 0xF246, 0x9A00, 0xF247, 0x9A01,
- 0xF248, 0x9A02, 0xF249, 0x9A03, 0xF24A, 0x9A04, 0xF24B, 0x9A05,
- 0xF24C, 0x9A06, 0xF24D, 0x9A07, 0xF24E, 0x9A08, 0xF24F, 0x9A09,
- 0xF250, 0x9A0A, 0xF251, 0x9A0B, 0xF252, 0x9A0C, 0xF253, 0x9A0D,
- 0xF254, 0x9A0E, 0xF255, 0x9A0F, 0xF256, 0x9A10, 0xF257, 0x9A11,
- 0xF258, 0x9A12, 0xF259, 0x9A13, 0xF25A, 0x9A14, 0xF25B, 0x9A15,
- 0xF25C, 0x9A16, 0xF25D, 0x9A17, 0xF25E, 0x9A18, 0xF25F, 0x9A19,
- 0xF260, 0x9A1A, 0xF261, 0x9A1B, 0xF262, 0x9A1C, 0xF263, 0x9A1D,
- 0xF264, 0x9A1E, 0xF265, 0x9A1F, 0xF266, 0x9A20, 0xF267, 0x9A21,
- 0xF268, 0x9A22, 0xF269, 0x9A23, 0xF26A, 0x9A24, 0xF26B, 0x9A25,
- 0xF26C, 0x9A26, 0xF26D, 0x9A27, 0xF26E, 0x9A28, 0xF26F, 0x9A29,
- 0xF270, 0x9A2A, 0xF271, 0x9A2B, 0xF272, 0x9A2C, 0xF273, 0x9A2D,
- 0xF274, 0x9A2E, 0xF275, 0x9A2F, 0xF276, 0x9A30, 0xF277, 0x9A31,
- 0xF278, 0x9A32, 0xF279, 0x9A33, 0xF27A, 0x9A34, 0xF27B, 0x9A35,
- 0xF27C, 0x9A36, 0xF27D, 0x9A37, 0xF27E, 0x9A38, 0xF280, 0x9A39,
- 0xF281, 0x9A3A, 0xF282, 0x9A3B, 0xF283, 0x9A3C, 0xF284, 0x9A3D,
- 0xF285, 0x9A3E, 0xF286, 0x9A3F, 0xF287, 0x9A40, 0xF288, 0x9A41,
- 0xF289, 0x9A42, 0xF28A, 0x9A43, 0xF28B, 0x9A44, 0xF28C, 0x9A45,
- 0xF28D, 0x9A46, 0xF28E, 0x9A47, 0xF28F, 0x9A48, 0xF290, 0x9A49,
- 0xF291, 0x9A4A, 0xF292, 0x9A4B, 0xF293, 0x9A4C, 0xF294, 0x9A4D,
- 0xF295, 0x9A4E, 0xF296, 0x9A4F, 0xF297, 0x9A50, 0xF298, 0x9A51,
- 0xF299, 0x9A52, 0xF29A, 0x9A53, 0xF29B, 0x9A54, 0xF29C, 0x9A55,
- 0xF29D, 0x9A56, 0xF29E, 0x9A57, 0xF29F, 0x9A58, 0xF2A0, 0x9A59,
- 0xF2A1, 0x9889, 0xF2A2, 0x988C, 0xF2A3, 0x988D, 0xF2A4, 0x988F,
- 0xF2A5, 0x9894, 0xF2A6, 0x989A, 0xF2A7, 0x989B, 0xF2A8, 0x989E,
- 0xF2A9, 0x989F, 0xF2AA, 0x98A1, 0xF2AB, 0x98A2, 0xF2AC, 0x98A5,
- 0xF2AD, 0x98A6, 0xF2AE, 0x864D, 0xF2AF, 0x8654, 0xF2B0, 0x866C,
- 0xF2B1, 0x866E, 0xF2B2, 0x867F, 0xF2B3, 0x867A, 0xF2B4, 0x867C,
- 0xF2B5, 0x867B, 0xF2B6, 0x86A8, 0xF2B7, 0x868D, 0xF2B8, 0x868B,
- 0xF2B9, 0x86AC, 0xF2BA, 0x869D, 0xF2BB, 0x86A7, 0xF2BC, 0x86A3,
- 0xF2BD, 0x86AA, 0xF2BE, 0x8693, 0xF2BF, 0x86A9, 0xF2C0, 0x86B6,
- 0xF2C1, 0x86C4, 0xF2C2, 0x86B5, 0xF2C3, 0x86CE, 0xF2C4, 0x86B0,
- 0xF2C5, 0x86BA, 0xF2C6, 0x86B1, 0xF2C7, 0x86AF, 0xF2C8, 0x86C9,
- 0xF2C9, 0x86CF, 0xF2CA, 0x86B4, 0xF2CB, 0x86E9, 0xF2CC, 0x86F1,
- 0xF2CD, 0x86F2, 0xF2CE, 0x86ED, 0xF2CF, 0x86F3, 0xF2D0, 0x86D0,
- 0xF2D1, 0x8713, 0xF2D2, 0x86DE, 0xF2D3, 0x86F4, 0xF2D4, 0x86DF,
- 0xF2D5, 0x86D8, 0xF2D6, 0x86D1, 0xF2D7, 0x8703, 0xF2D8, 0x8707,
- 0xF2D9, 0x86F8, 0xF2DA, 0x8708, 0xF2DB, 0x870A, 0xF2DC, 0x870D,
- 0xF2DD, 0x8709, 0xF2DE, 0x8723, 0xF2DF, 0x873B, 0xF2E0, 0x871E,
- 0xF2E1, 0x8725, 0xF2E2, 0x872E, 0xF2E3, 0x871A, 0xF2E4, 0x873E,
- 0xF2E5, 0x8748, 0xF2E6, 0x8734, 0xF2E7, 0x8731, 0xF2E8, 0x8729,
- 0xF2E9, 0x8737, 0xF2EA, 0x873F, 0xF2EB, 0x8782, 0xF2EC, 0x8722,
- 0xF2ED, 0x877D, 0xF2EE, 0x877E, 0xF2EF, 0x877B, 0xF2F0, 0x8760,
- 0xF2F1, 0x8770, 0xF2F2, 0x874C, 0xF2F3, 0x876E, 0xF2F4, 0x878B,
- 0xF2F5, 0x8753, 0xF2F6, 0x8763, 0xF2F7, 0x877C, 0xF2F8, 0x8764,
- 0xF2F9, 0x8759, 0xF2FA, 0x8765, 0xF2FB, 0x8793, 0xF2FC, 0x87AF,
- 0xF2FD, 0x87A8, 0xF2FE, 0x87D2, 0xF340, 0x9A5A, 0xF341, 0x9A5B,
- 0xF342, 0x9A5C, 0xF343, 0x9A5D, 0xF344, 0x9A5E, 0xF345, 0x9A5F,
- 0xF346, 0x9A60, 0xF347, 0x9A61, 0xF348, 0x9A62, 0xF349, 0x9A63,
- 0xF34A, 0x9A64, 0xF34B, 0x9A65, 0xF34C, 0x9A66, 0xF34D, 0x9A67,
- 0xF34E, 0x9A68, 0xF34F, 0x9A69, 0xF350, 0x9A6A, 0xF351, 0x9A6B,
- 0xF352, 0x9A72, 0xF353, 0x9A83, 0xF354, 0x9A89, 0xF355, 0x9A8D,
- 0xF356, 0x9A8E, 0xF357, 0x9A94, 0xF358, 0x9A95, 0xF359, 0x9A99,
- 0xF35A, 0x9AA6, 0xF35B, 0x9AA9, 0xF35C, 0x9AAA, 0xF35D, 0x9AAB,
- 0xF35E, 0x9AAC, 0xF35F, 0x9AAD, 0xF360, 0x9AAE, 0xF361, 0x9AAF,
- 0xF362, 0x9AB2, 0xF363, 0x9AB3, 0xF364, 0x9AB4, 0xF365, 0x9AB5,
- 0xF366, 0x9AB9, 0xF367, 0x9ABB, 0xF368, 0x9ABD, 0xF369, 0x9ABE,
- 0xF36A, 0x9ABF, 0xF36B, 0x9AC3, 0xF36C, 0x9AC4, 0xF36D, 0x9AC6,
- 0xF36E, 0x9AC7, 0xF36F, 0x9AC8, 0xF370, 0x9AC9, 0xF371, 0x9ACA,
- 0xF372, 0x9ACD, 0xF373, 0x9ACE, 0xF374, 0x9ACF, 0xF375, 0x9AD0,
- 0xF376, 0x9AD2, 0xF377, 0x9AD4, 0xF378, 0x9AD5, 0xF379, 0x9AD6,
- 0xF37A, 0x9AD7, 0xF37B, 0x9AD9, 0xF37C, 0x9ADA, 0xF37D, 0x9ADB,
- 0xF37E, 0x9ADC, 0xF380, 0x9ADD, 0xF381, 0x9ADE, 0xF382, 0x9AE0,
- 0xF383, 0x9AE2, 0xF384, 0x9AE3, 0xF385, 0x9AE4, 0xF386, 0x9AE5,
- 0xF387, 0x9AE7, 0xF388, 0x9AE8, 0xF389, 0x9AE9, 0xF38A, 0x9AEA,
- 0xF38B, 0x9AEC, 0xF38C, 0x9AEE, 0xF38D, 0x9AF0, 0xF38E, 0x9AF1,
- 0xF38F, 0x9AF2, 0xF390, 0x9AF3, 0xF391, 0x9AF4, 0xF392, 0x9AF5,
- 0xF393, 0x9AF6, 0xF394, 0x9AF7, 0xF395, 0x9AF8, 0xF396, 0x9AFA,
- 0xF397, 0x9AFC, 0xF398, 0x9AFD, 0xF399, 0x9AFE, 0xF39A, 0x9AFF,
- 0xF39B, 0x9B00, 0xF39C, 0x9B01, 0xF39D, 0x9B02, 0xF39E, 0x9B04,
- 0xF39F, 0x9B05, 0xF3A0, 0x9B06, 0xF3A1, 0x87C6, 0xF3A2, 0x8788,
- 0xF3A3, 0x8785, 0xF3A4, 0x87AD, 0xF3A5, 0x8797, 0xF3A6, 0x8783,
- 0xF3A7, 0x87AB, 0xF3A8, 0x87E5, 0xF3A9, 0x87AC, 0xF3AA, 0x87B5,
- 0xF3AB, 0x87B3, 0xF3AC, 0x87CB, 0xF3AD, 0x87D3, 0xF3AE, 0x87BD,
- 0xF3AF, 0x87D1, 0xF3B0, 0x87C0, 0xF3B1, 0x87CA, 0xF3B2, 0x87DB,
- 0xF3B3, 0x87EA, 0xF3B4, 0x87E0, 0xF3B5, 0x87EE, 0xF3B6, 0x8816,
- 0xF3B7, 0x8813, 0xF3B8, 0x87FE, 0xF3B9, 0x880A, 0xF3BA, 0x881B,
- 0xF3BB, 0x8821, 0xF3BC, 0x8839, 0xF3BD, 0x883C, 0xF3BE, 0x7F36,
- 0xF3BF, 0x7F42, 0xF3C0, 0x7F44, 0xF3C1, 0x7F45, 0xF3C2, 0x8210,
- 0xF3C3, 0x7AFA, 0xF3C4, 0x7AFD, 0xF3C5, 0x7B08, 0xF3C6, 0x7B03,
- 0xF3C7, 0x7B04, 0xF3C8, 0x7B15, 0xF3C9, 0x7B0A, 0xF3CA, 0x7B2B,
- 0xF3CB, 0x7B0F, 0xF3CC, 0x7B47, 0xF3CD, 0x7B38, 0xF3CE, 0x7B2A,
- 0xF3CF, 0x7B19, 0xF3D0, 0x7B2E, 0xF3D1, 0x7B31, 0xF3D2, 0x7B20,
- 0xF3D3, 0x7B25, 0xF3D4, 0x7B24, 0xF3D5, 0x7B33, 0xF3D6, 0x7B3E,
- 0xF3D7, 0x7B1E, 0xF3D8, 0x7B58, 0xF3D9, 0x7B5A, 0xF3DA, 0x7B45,
- 0xF3DB, 0x7B75, 0xF3DC, 0x7B4C, 0xF3DD, 0x7B5D, 0xF3DE, 0x7B60,
- 0xF3DF, 0x7B6E, 0xF3E0, 0x7B7B, 0xF3E1, 0x7B62, 0xF3E2, 0x7B72,
- 0xF3E3, 0x7B71, 0xF3E4, 0x7B90, 0xF3E5, 0x7BA6, 0xF3E6, 0x7BA7,
- 0xF3E7, 0x7BB8, 0xF3E8, 0x7BAC, 0xF3E9, 0x7B9D, 0xF3EA, 0x7BA8,
- 0xF3EB, 0x7B85, 0xF3EC, 0x7BAA, 0xF3ED, 0x7B9C, 0xF3EE, 0x7BA2,
- 0xF3EF, 0x7BAB, 0xF3F0, 0x7BB4, 0xF3F1, 0x7BD1, 0xF3F2, 0x7BC1,
- 0xF3F3, 0x7BCC, 0xF3F4, 0x7BDD, 0xF3F5, 0x7BDA, 0xF3F6, 0x7BE5,
- 0xF3F7, 0x7BE6, 0xF3F8, 0x7BEA, 0xF3F9, 0x7C0C, 0xF3FA, 0x7BFE,
- 0xF3FB, 0x7BFC, 0xF3FC, 0x7C0F, 0xF3FD, 0x7C16, 0xF3FE, 0x7C0B,
- 0xF440, 0x9B07, 0xF441, 0x9B09, 0xF442, 0x9B0A, 0xF443, 0x9B0B,
- 0xF444, 0x9B0C, 0xF445, 0x9B0D, 0xF446, 0x9B0E, 0xF447, 0x9B10,
- 0xF448, 0x9B11, 0xF449, 0x9B12, 0xF44A, 0x9B14, 0xF44B, 0x9B15,
- 0xF44C, 0x9B16, 0xF44D, 0x9B17, 0xF44E, 0x9B18, 0xF44F, 0x9B19,
- 0xF450, 0x9B1A, 0xF451, 0x9B1B, 0xF452, 0x9B1C, 0xF453, 0x9B1D,
- 0xF454, 0x9B1E, 0xF455, 0x9B20, 0xF456, 0x9B21, 0xF457, 0x9B22,
- 0xF458, 0x9B24, 0xF459, 0x9B25, 0xF45A, 0x9B26, 0xF45B, 0x9B27,
- 0xF45C, 0x9B28, 0xF45D, 0x9B29, 0xF45E, 0x9B2A, 0xF45F, 0x9B2B,
- 0xF460, 0x9B2C, 0xF461, 0x9B2D, 0xF462, 0x9B2E, 0xF463, 0x9B30,
- 0xF464, 0x9B31, 0xF465, 0x9B33, 0xF466, 0x9B34, 0xF467, 0x9B35,
- 0xF468, 0x9B36, 0xF469, 0x9B37, 0xF46A, 0x9B38, 0xF46B, 0x9B39,
- 0xF46C, 0x9B3A, 0xF46D, 0x9B3D, 0xF46E, 0x9B3E, 0xF46F, 0x9B3F,
- 0xF470, 0x9B40, 0xF471, 0x9B46, 0xF472, 0x9B4A, 0xF473, 0x9B4B,
- 0xF474, 0x9B4C, 0xF475, 0x9B4E, 0xF476, 0x9B50, 0xF477, 0x9B52,
- 0xF478, 0x9B53, 0xF479, 0x9B55, 0xF47A, 0x9B56, 0xF47B, 0x9B57,
- 0xF47C, 0x9B58, 0xF47D, 0x9B59, 0xF47E, 0x9B5A, 0xF480, 0x9B5B,
- 0xF481, 0x9B5C, 0xF482, 0x9B5D, 0xF483, 0x9B5E, 0xF484, 0x9B5F,
- 0xF485, 0x9B60, 0xF486, 0x9B61, 0xF487, 0x9B62, 0xF488, 0x9B63,
- 0xF489, 0x9B64, 0xF48A, 0x9B65, 0xF48B, 0x9B66, 0xF48C, 0x9B67,
- 0xF48D, 0x9B68, 0xF48E, 0x9B69, 0xF48F, 0x9B6A, 0xF490, 0x9B6B,
- 0xF491, 0x9B6C, 0xF492, 0x9B6D, 0xF493, 0x9B6E, 0xF494, 0x9B6F,
- 0xF495, 0x9B70, 0xF496, 0x9B71, 0xF497, 0x9B72, 0xF498, 0x9B73,
- 0xF499, 0x9B74, 0xF49A, 0x9B75, 0xF49B, 0x9B76, 0xF49C, 0x9B77,
- 0xF49D, 0x9B78, 0xF49E, 0x9B79, 0xF49F, 0x9B7A, 0xF4A0, 0x9B7B,
- 0xF4A1, 0x7C1F, 0xF4A2, 0x7C2A, 0xF4A3, 0x7C26, 0xF4A4, 0x7C38,
- 0xF4A5, 0x7C41, 0xF4A6, 0x7C40, 0xF4A7, 0x81FE, 0xF4A8, 0x8201,
- 0xF4A9, 0x8202, 0xF4AA, 0x8204, 0xF4AB, 0x81EC, 0xF4AC, 0x8844,
- 0xF4AD, 0x8221, 0xF4AE, 0x8222, 0xF4AF, 0x8223, 0xF4B0, 0x822D,
- 0xF4B1, 0x822F, 0xF4B2, 0x8228, 0xF4B3, 0x822B, 0xF4B4, 0x8238,
- 0xF4B5, 0x823B, 0xF4B6, 0x8233, 0xF4B7, 0x8234, 0xF4B8, 0x823E,
- 0xF4B9, 0x8244, 0xF4BA, 0x8249, 0xF4BB, 0x824B, 0xF4BC, 0x824F,
- 0xF4BD, 0x825A, 0xF4BE, 0x825F, 0xF4BF, 0x8268, 0xF4C0, 0x887E,
- 0xF4C1, 0x8885, 0xF4C2, 0x8888, 0xF4C3, 0x88D8, 0xF4C4, 0x88DF,
- 0xF4C5, 0x895E, 0xF4C6, 0x7F9D, 0xF4C7, 0x7F9F, 0xF4C8, 0x7FA7,
- 0xF4C9, 0x7FAF, 0xF4CA, 0x7FB0, 0xF4CB, 0x7FB2, 0xF4CC, 0x7C7C,
- 0xF4CD, 0x6549, 0xF4CE, 0x7C91, 0xF4CF, 0x7C9D, 0xF4D0, 0x7C9C,
- 0xF4D1, 0x7C9E, 0xF4D2, 0x7CA2, 0xF4D3, 0x7CB2, 0xF4D4, 0x7CBC,
- 0xF4D5, 0x7CBD, 0xF4D6, 0x7CC1, 0xF4D7, 0x7CC7, 0xF4D8, 0x7CCC,
- 0xF4D9, 0x7CCD, 0xF4DA, 0x7CC8, 0xF4DB, 0x7CC5, 0xF4DC, 0x7CD7,
- 0xF4DD, 0x7CE8, 0xF4DE, 0x826E, 0xF4DF, 0x66A8, 0xF4E0, 0x7FBF,
- 0xF4E1, 0x7FCE, 0xF4E2, 0x7FD5, 0xF4E3, 0x7FE5, 0xF4E4, 0x7FE1,
- 0xF4E5, 0x7FE6, 0xF4E6, 0x7FE9, 0xF4E7, 0x7FEE, 0xF4E8, 0x7FF3,
- 0xF4E9, 0x7CF8, 0xF4EA, 0x7D77, 0xF4EB, 0x7DA6, 0xF4EC, 0x7DAE,
- 0xF4ED, 0x7E47, 0xF4EE, 0x7E9B, 0xF4EF, 0x9EB8, 0xF4F0, 0x9EB4,
- 0xF4F1, 0x8D73, 0xF4F2, 0x8D84, 0xF4F3, 0x8D94, 0xF4F4, 0x8D91,
- 0xF4F5, 0x8DB1, 0xF4F6, 0x8D67, 0xF4F7, 0x8D6D, 0xF4F8, 0x8C47,
- 0xF4F9, 0x8C49, 0xF4FA, 0x914A, 0xF4FB, 0x9150, 0xF4FC, 0x914E,
- 0xF4FD, 0x914F, 0xF4FE, 0x9164, 0xF540, 0x9B7C, 0xF541, 0x9B7D,
- 0xF542, 0x9B7E, 0xF543, 0x9B7F, 0xF544, 0x9B80, 0xF545, 0x9B81,
- 0xF546, 0x9B82, 0xF547, 0x9B83, 0xF548, 0x9B84, 0xF549, 0x9B85,
- 0xF54A, 0x9B86, 0xF54B, 0x9B87, 0xF54C, 0x9B88, 0xF54D, 0x9B89,
- 0xF54E, 0x9B8A, 0xF54F, 0x9B8B, 0xF550, 0x9B8C, 0xF551, 0x9B8D,
- 0xF552, 0x9B8E, 0xF553, 0x9B8F, 0xF554, 0x9B90, 0xF555, 0x9B91,
- 0xF556, 0x9B92, 0xF557, 0x9B93, 0xF558, 0x9B94, 0xF559, 0x9B95,
- 0xF55A, 0x9B96, 0xF55B, 0x9B97, 0xF55C, 0x9B98, 0xF55D, 0x9B99,
- 0xF55E, 0x9B9A, 0xF55F, 0x9B9B, 0xF560, 0x9B9C, 0xF561, 0x9B9D,
- 0xF562, 0x9B9E, 0xF563, 0x9B9F, 0xF564, 0x9BA0, 0xF565, 0x9BA1,
- 0xF566, 0x9BA2, 0xF567, 0x9BA3, 0xF568, 0x9BA4, 0xF569, 0x9BA5,
- 0xF56A, 0x9BA6, 0xF56B, 0x9BA7, 0xF56C, 0x9BA8, 0xF56D, 0x9BA9,
- 0xF56E, 0x9BAA, 0xF56F, 0x9BAB, 0xF570, 0x9BAC, 0xF571, 0x9BAD,
- 0xF572, 0x9BAE, 0xF573, 0x9BAF, 0xF574, 0x9BB0, 0xF575, 0x9BB1,
- 0xF576, 0x9BB2, 0xF577, 0x9BB3, 0xF578, 0x9BB4, 0xF579, 0x9BB5,
- 0xF57A, 0x9BB6, 0xF57B, 0x9BB7, 0xF57C, 0x9BB8, 0xF57D, 0x9BB9,
- 0xF57E, 0x9BBA, 0xF580, 0x9BBB, 0xF581, 0x9BBC, 0xF582, 0x9BBD,
- 0xF583, 0x9BBE, 0xF584, 0x9BBF, 0xF585, 0x9BC0, 0xF586, 0x9BC1,
- 0xF587, 0x9BC2, 0xF588, 0x9BC3, 0xF589, 0x9BC4, 0xF58A, 0x9BC5,
- 0xF58B, 0x9BC6, 0xF58C, 0x9BC7, 0xF58D, 0x9BC8, 0xF58E, 0x9BC9,
- 0xF58F, 0x9BCA, 0xF590, 0x9BCB, 0xF591, 0x9BCC, 0xF592, 0x9BCD,
- 0xF593, 0x9BCE, 0xF594, 0x9BCF, 0xF595, 0x9BD0, 0xF596, 0x9BD1,
- 0xF597, 0x9BD2, 0xF598, 0x9BD3, 0xF599, 0x9BD4, 0xF59A, 0x9BD5,
- 0xF59B, 0x9BD6, 0xF59C, 0x9BD7, 0xF59D, 0x9BD8, 0xF59E, 0x9BD9,
- 0xF59F, 0x9BDA, 0xF5A0, 0x9BDB, 0xF5A1, 0x9162, 0xF5A2, 0x9161,
- 0xF5A3, 0x9170, 0xF5A4, 0x9169, 0xF5A5, 0x916F, 0xF5A6, 0x917D,
- 0xF5A7, 0x917E, 0xF5A8, 0x9172, 0xF5A9, 0x9174, 0xF5AA, 0x9179,
- 0xF5AB, 0x918C, 0xF5AC, 0x9185, 0xF5AD, 0x9190, 0xF5AE, 0x918D,
- 0xF5AF, 0x9191, 0xF5B0, 0x91A2, 0xF5B1, 0x91A3, 0xF5B2, 0x91AA,
- 0xF5B3, 0x91AD, 0xF5B4, 0x91AE, 0xF5B5, 0x91AF, 0xF5B6, 0x91B5,
- 0xF5B7, 0x91B4, 0xF5B8, 0x91BA, 0xF5B9, 0x8C55, 0xF5BA, 0x9E7E,
- 0xF5BB, 0x8DB8, 0xF5BC, 0x8DEB, 0xF5BD, 0x8E05, 0xF5BE, 0x8E59,
- 0xF5BF, 0x8E69, 0xF5C0, 0x8DB5, 0xF5C1, 0x8DBF, 0xF5C2, 0x8DBC,
- 0xF5C3, 0x8DBA, 0xF5C4, 0x8DC4, 0xF5C5, 0x8DD6, 0xF5C6, 0x8DD7,
- 0xF5C7, 0x8DDA, 0xF5C8, 0x8DDE, 0xF5C9, 0x8DCE, 0xF5CA, 0x8DCF,
- 0xF5CB, 0x8DDB, 0xF5CC, 0x8DC6, 0xF5CD, 0x8DEC, 0xF5CE, 0x8DF7,
- 0xF5CF, 0x8DF8, 0xF5D0, 0x8DE3, 0xF5D1, 0x8DF9, 0xF5D2, 0x8DFB,
- 0xF5D3, 0x8DE4, 0xF5D4, 0x8E09, 0xF5D5, 0x8DFD, 0xF5D6, 0x8E14,
- 0xF5D7, 0x8E1D, 0xF5D8, 0x8E1F, 0xF5D9, 0x8E2C, 0xF5DA, 0x8E2E,
- 0xF5DB, 0x8E23, 0xF5DC, 0x8E2F, 0xF5DD, 0x8E3A, 0xF5DE, 0x8E40,
- 0xF5DF, 0x8E39, 0xF5E0, 0x8E35, 0xF5E1, 0x8E3D, 0xF5E2, 0x8E31,
- 0xF5E3, 0x8E49, 0xF5E4, 0x8E41, 0xF5E5, 0x8E42, 0xF5E6, 0x8E51,
- 0xF5E7, 0x8E52, 0xF5E8, 0x8E4A, 0xF5E9, 0x8E70, 0xF5EA, 0x8E76,
- 0xF5EB, 0x8E7C, 0xF5EC, 0x8E6F, 0xF5ED, 0x8E74, 0xF5EE, 0x8E85,
- 0xF5EF, 0x8E8F, 0xF5F0, 0x8E94, 0xF5F1, 0x8E90, 0xF5F2, 0x8E9C,
- 0xF5F3, 0x8E9E, 0xF5F4, 0x8C78, 0xF5F5, 0x8C82, 0xF5F6, 0x8C8A,
- 0xF5F7, 0x8C85, 0xF5F8, 0x8C98, 0xF5F9, 0x8C94, 0xF5FA, 0x659B,
- 0xF5FB, 0x89D6, 0xF5FC, 0x89DE, 0xF5FD, 0x89DA, 0xF5FE, 0x89DC,
- 0xF640, 0x9BDC, 0xF641, 0x9BDD, 0xF642, 0x9BDE, 0xF643, 0x9BDF,
- 0xF644, 0x9BE0, 0xF645, 0x9BE1, 0xF646, 0x9BE2, 0xF647, 0x9BE3,
- 0xF648, 0x9BE4, 0xF649, 0x9BE5, 0xF64A, 0x9BE6, 0xF64B, 0x9BE7,
- 0xF64C, 0x9BE8, 0xF64D, 0x9BE9, 0xF64E, 0x9BEA, 0xF64F, 0x9BEB,
- 0xF650, 0x9BEC, 0xF651, 0x9BED, 0xF652, 0x9BEE, 0xF653, 0x9BEF,
- 0xF654, 0x9BF0, 0xF655, 0x9BF1, 0xF656, 0x9BF2, 0xF657, 0x9BF3,
- 0xF658, 0x9BF4, 0xF659, 0x9BF5, 0xF65A, 0x9BF6, 0xF65B, 0x9BF7,
- 0xF65C, 0x9BF8, 0xF65D, 0x9BF9, 0xF65E, 0x9BFA, 0xF65F, 0x9BFB,
- 0xF660, 0x9BFC, 0xF661, 0x9BFD, 0xF662, 0x9BFE, 0xF663, 0x9BFF,
- 0xF664, 0x9C00, 0xF665, 0x9C01, 0xF666, 0x9C02, 0xF667, 0x9C03,
- 0xF668, 0x9C04, 0xF669, 0x9C05, 0xF66A, 0x9C06, 0xF66B, 0x9C07,
- 0xF66C, 0x9C08, 0xF66D, 0x9C09, 0xF66E, 0x9C0A, 0xF66F, 0x9C0B,
- 0xF670, 0x9C0C, 0xF671, 0x9C0D, 0xF672, 0x9C0E, 0xF673, 0x9C0F,
- 0xF674, 0x9C10, 0xF675, 0x9C11, 0xF676, 0x9C12, 0xF677, 0x9C13,
- 0xF678, 0x9C14, 0xF679, 0x9C15, 0xF67A, 0x9C16, 0xF67B, 0x9C17,
- 0xF67C, 0x9C18, 0xF67D, 0x9C19, 0xF67E, 0x9C1A, 0xF680, 0x9C1B,
- 0xF681, 0x9C1C, 0xF682, 0x9C1D, 0xF683, 0x9C1E, 0xF684, 0x9C1F,
- 0xF685, 0x9C20, 0xF686, 0x9C21, 0xF687, 0x9C22, 0xF688, 0x9C23,
- 0xF689, 0x9C24, 0xF68A, 0x9C25, 0xF68B, 0x9C26, 0xF68C, 0x9C27,
- 0xF68D, 0x9C28, 0xF68E, 0x9C29, 0xF68F, 0x9C2A, 0xF690, 0x9C2B,
- 0xF691, 0x9C2C, 0xF692, 0x9C2D, 0xF693, 0x9C2E, 0xF694, 0x9C2F,
- 0xF695, 0x9C30, 0xF696, 0x9C31, 0xF697, 0x9C32, 0xF698, 0x9C33,
- 0xF699, 0x9C34, 0xF69A, 0x9C35, 0xF69B, 0x9C36, 0xF69C, 0x9C37,
- 0xF69D, 0x9C38, 0xF69E, 0x9C39, 0xF69F, 0x9C3A, 0xF6A0, 0x9C3B,
- 0xF6A1, 0x89E5, 0xF6A2, 0x89EB, 0xF6A3, 0x89EF, 0xF6A4, 0x8A3E,
- 0xF6A5, 0x8B26, 0xF6A6, 0x9753, 0xF6A7, 0x96E9, 0xF6A8, 0x96F3,
- 0xF6A9, 0x96EF, 0xF6AA, 0x9706, 0xF6AB, 0x9701, 0xF6AC, 0x9708,
- 0xF6AD, 0x970F, 0xF6AE, 0x970E, 0xF6AF, 0x972A, 0xF6B0, 0x972D,
- 0xF6B1, 0x9730, 0xF6B2, 0x973E, 0xF6B3, 0x9F80, 0xF6B4, 0x9F83,
- 0xF6B5, 0x9F85, 0xF6B6, 0x9F86, 0xF6B7, 0x9F87, 0xF6B8, 0x9F88,
- 0xF6B9, 0x9F89, 0xF6BA, 0x9F8A, 0xF6BB, 0x9F8C, 0xF6BC, 0x9EFE,
- 0xF6BD, 0x9F0B, 0xF6BE, 0x9F0D, 0xF6BF, 0x96B9, 0xF6C0, 0x96BC,
- 0xF6C1, 0x96BD, 0xF6C2, 0x96CE, 0xF6C3, 0x96D2, 0xF6C4, 0x77BF,
- 0xF6C5, 0x96E0, 0xF6C6, 0x928E, 0xF6C7, 0x92AE, 0xF6C8, 0x92C8,
- 0xF6C9, 0x933E, 0xF6CA, 0x936A, 0xF6CB, 0x93CA, 0xF6CC, 0x938F,
- 0xF6CD, 0x943E, 0xF6CE, 0x946B, 0xF6CF, 0x9C7F, 0xF6D0, 0x9C82,
- 0xF6D1, 0x9C85, 0xF6D2, 0x9C86, 0xF6D3, 0x9C87, 0xF6D4, 0x9C88,
- 0xF6D5, 0x7A23, 0xF6D6, 0x9C8B, 0xF6D7, 0x9C8E, 0xF6D8, 0x9C90,
- 0xF6D9, 0x9C91, 0xF6DA, 0x9C92, 0xF6DB, 0x9C94, 0xF6DC, 0x9C95,
- 0xF6DD, 0x9C9A, 0xF6DE, 0x9C9B, 0xF6DF, 0x9C9E, 0xF6E0, 0x9C9F,
- 0xF6E1, 0x9CA0, 0xF6E2, 0x9CA1, 0xF6E3, 0x9CA2, 0xF6E4, 0x9CA3,
- 0xF6E5, 0x9CA5, 0xF6E6, 0x9CA6, 0xF6E7, 0x9CA7, 0xF6E8, 0x9CA8,
- 0xF6E9, 0x9CA9, 0xF6EA, 0x9CAB, 0xF6EB, 0x9CAD, 0xF6EC, 0x9CAE,
- 0xF6ED, 0x9CB0, 0xF6EE, 0x9CB1, 0xF6EF, 0x9CB2, 0xF6F0, 0x9CB3,
- 0xF6F1, 0x9CB4, 0xF6F2, 0x9CB5, 0xF6F3, 0x9CB6, 0xF6F4, 0x9CB7,
- 0xF6F5, 0x9CBA, 0xF6F6, 0x9CBB, 0xF6F7, 0x9CBC, 0xF6F8, 0x9CBD,
- 0xF6F9, 0x9CC4, 0xF6FA, 0x9CC5, 0xF6FB, 0x9CC6, 0xF6FC, 0x9CC7,
- 0xF6FD, 0x9CCA, 0xF6FE, 0x9CCB, 0xF740, 0x9C3C, 0xF741, 0x9C3D,
- 0xF742, 0x9C3E, 0xF743, 0x9C3F, 0xF744, 0x9C40, 0xF745, 0x9C41,
- 0xF746, 0x9C42, 0xF747, 0x9C43, 0xF748, 0x9C44, 0xF749, 0x9C45,
- 0xF74A, 0x9C46, 0xF74B, 0x9C47, 0xF74C, 0x9C48, 0xF74D, 0x9C49,
- 0xF74E, 0x9C4A, 0xF74F, 0x9C4B, 0xF750, 0x9C4C, 0xF751, 0x9C4D,
- 0xF752, 0x9C4E, 0xF753, 0x9C4F, 0xF754, 0x9C50, 0xF755, 0x9C51,
- 0xF756, 0x9C52, 0xF757, 0x9C53, 0xF758, 0x9C54, 0xF759, 0x9C55,
- 0xF75A, 0x9C56, 0xF75B, 0x9C57, 0xF75C, 0x9C58, 0xF75D, 0x9C59,
- 0xF75E, 0x9C5A, 0xF75F, 0x9C5B, 0xF760, 0x9C5C, 0xF761, 0x9C5D,
- 0xF762, 0x9C5E, 0xF763, 0x9C5F, 0xF764, 0x9C60, 0xF765, 0x9C61,
- 0xF766, 0x9C62, 0xF767, 0x9C63, 0xF768, 0x9C64, 0xF769, 0x9C65,
- 0xF76A, 0x9C66, 0xF76B, 0x9C67, 0xF76C, 0x9C68, 0xF76D, 0x9C69,
- 0xF76E, 0x9C6A, 0xF76F, 0x9C6B, 0xF770, 0x9C6C, 0xF771, 0x9C6D,
- 0xF772, 0x9C6E, 0xF773, 0x9C6F, 0xF774, 0x9C70, 0xF775, 0x9C71,
- 0xF776, 0x9C72, 0xF777, 0x9C73, 0xF778, 0x9C74, 0xF779, 0x9C75,
- 0xF77A, 0x9C76, 0xF77B, 0x9C77, 0xF77C, 0x9C78, 0xF77D, 0x9C79,
- 0xF77E, 0x9C7A, 0xF780, 0x9C7B, 0xF781, 0x9C7D, 0xF782, 0x9C7E,
- 0xF783, 0x9C80, 0xF784, 0x9C83, 0xF785, 0x9C84, 0xF786, 0x9C89,
- 0xF787, 0x9C8A, 0xF788, 0x9C8C, 0xF789, 0x9C8F, 0xF78A, 0x9C93,
- 0xF78B, 0x9C96, 0xF78C, 0x9C97, 0xF78D, 0x9C98, 0xF78E, 0x9C99,
- 0xF78F, 0x9C9D, 0xF790, 0x9CAA, 0xF791, 0x9CAC, 0xF792, 0x9CAF,
- 0xF793, 0x9CB9, 0xF794, 0x9CBE, 0xF795, 0x9CBF, 0xF796, 0x9CC0,
- 0xF797, 0x9CC1, 0xF798, 0x9CC2, 0xF799, 0x9CC8, 0xF79A, 0x9CC9,
- 0xF79B, 0x9CD1, 0xF79C, 0x9CD2, 0xF79D, 0x9CDA, 0xF79E, 0x9CDB,
- 0xF79F, 0x9CE0, 0xF7A0, 0x9CE1, 0xF7A1, 0x9CCC, 0xF7A2, 0x9CCD,
- 0xF7A3, 0x9CCE, 0xF7A4, 0x9CCF, 0xF7A5, 0x9CD0, 0xF7A6, 0x9CD3,
- 0xF7A7, 0x9CD4, 0xF7A8, 0x9CD5, 0xF7A9, 0x9CD7, 0xF7AA, 0x9CD8,
- 0xF7AB, 0x9CD9, 0xF7AC, 0x9CDC, 0xF7AD, 0x9CDD, 0xF7AE, 0x9CDF,
- 0xF7AF, 0x9CE2, 0xF7B0, 0x977C, 0xF7B1, 0x9785, 0xF7B2, 0x9791,
- 0xF7B3, 0x9792, 0xF7B4, 0x9794, 0xF7B5, 0x97AF, 0xF7B6, 0x97AB,
- 0xF7B7, 0x97A3, 0xF7B8, 0x97B2, 0xF7B9, 0x97B4, 0xF7BA, 0x9AB1,
- 0xF7BB, 0x9AB0, 0xF7BC, 0x9AB7, 0xF7BD, 0x9E58, 0xF7BE, 0x9AB6,
- 0xF7BF, 0x9ABA, 0xF7C0, 0x9ABC, 0xF7C1, 0x9AC1, 0xF7C2, 0x9AC0,
- 0xF7C3, 0x9AC5, 0xF7C4, 0x9AC2, 0xF7C5, 0x9ACB, 0xF7C6, 0x9ACC,
- 0xF7C7, 0x9AD1, 0xF7C8, 0x9B45, 0xF7C9, 0x9B43, 0xF7CA, 0x9B47,
- 0xF7CB, 0x9B49, 0xF7CC, 0x9B48, 0xF7CD, 0x9B4D, 0xF7CE, 0x9B51,
- 0xF7CF, 0x98E8, 0xF7D0, 0x990D, 0xF7D1, 0x992E, 0xF7D2, 0x9955,
- 0xF7D3, 0x9954, 0xF7D4, 0x9ADF, 0xF7D5, 0x9AE1, 0xF7D6, 0x9AE6,
- 0xF7D7, 0x9AEF, 0xF7D8, 0x9AEB, 0xF7D9, 0x9AFB, 0xF7DA, 0x9AED,
- 0xF7DB, 0x9AF9, 0xF7DC, 0x9B08, 0xF7DD, 0x9B0F, 0xF7DE, 0x9B13,
- 0xF7DF, 0x9B1F, 0xF7E0, 0x9B23, 0xF7E1, 0x9EBD, 0xF7E2, 0x9EBE,
- 0xF7E3, 0x7E3B, 0xF7E4, 0x9E82, 0xF7E5, 0x9E87, 0xF7E6, 0x9E88,
- 0xF7E7, 0x9E8B, 0xF7E8, 0x9E92, 0xF7E9, 0x93D6, 0xF7EA, 0x9E9D,
- 0xF7EB, 0x9E9F, 0xF7EC, 0x9EDB, 0xF7ED, 0x9EDC, 0xF7EE, 0x9EDD,
- 0xF7EF, 0x9EE0, 0xF7F0, 0x9EDF, 0xF7F1, 0x9EE2, 0xF7F2, 0x9EE9,
- 0xF7F3, 0x9EE7, 0xF7F4, 0x9EE5, 0xF7F5, 0x9EEA, 0xF7F6, 0x9EEF,
- 0xF7F7, 0x9F22, 0xF7F8, 0x9F2C, 0xF7F9, 0x9F2F, 0xF7FA, 0x9F39,
- 0xF7FB, 0x9F37, 0xF7FC, 0x9F3D, 0xF7FD, 0x9F3E, 0xF7FE, 0x9F44,
- 0xF840, 0x9CE3, 0xF841, 0x9CE4, 0xF842, 0x9CE5, 0xF843, 0x9CE6,
- 0xF844, 0x9CE7, 0xF845, 0x9CE8, 0xF846, 0x9CE9, 0xF847, 0x9CEA,
- 0xF848, 0x9CEB, 0xF849, 0x9CEC, 0xF84A, 0x9CED, 0xF84B, 0x9CEE,
- 0xF84C, 0x9CEF, 0xF84D, 0x9CF0, 0xF84E, 0x9CF1, 0xF84F, 0x9CF2,
- 0xF850, 0x9CF3, 0xF851, 0x9CF4, 0xF852, 0x9CF5, 0xF853, 0x9CF6,
- 0xF854, 0x9CF7, 0xF855, 0x9CF8, 0xF856, 0x9CF9, 0xF857, 0x9CFA,
- 0xF858, 0x9CFB, 0xF859, 0x9CFC, 0xF85A, 0x9CFD, 0xF85B, 0x9CFE,
- 0xF85C, 0x9CFF, 0xF85D, 0x9D00, 0xF85E, 0x9D01, 0xF85F, 0x9D02,
- 0xF860, 0x9D03, 0xF861, 0x9D04, 0xF862, 0x9D05, 0xF863, 0x9D06,
- 0xF864, 0x9D07, 0xF865, 0x9D08, 0xF866, 0x9D09, 0xF867, 0x9D0A,
- 0xF868, 0x9D0B, 0xF869, 0x9D0C, 0xF86A, 0x9D0D, 0xF86B, 0x9D0E,
- 0xF86C, 0x9D0F, 0xF86D, 0x9D10, 0xF86E, 0x9D11, 0xF86F, 0x9D12,
- 0xF870, 0x9D13, 0xF871, 0x9D14, 0xF872, 0x9D15, 0xF873, 0x9D16,
- 0xF874, 0x9D17, 0xF875, 0x9D18, 0xF876, 0x9D19, 0xF877, 0x9D1A,
- 0xF878, 0x9D1B, 0xF879, 0x9D1C, 0xF87A, 0x9D1D, 0xF87B, 0x9D1E,
- 0xF87C, 0x9D1F, 0xF87D, 0x9D20, 0xF87E, 0x9D21, 0xF880, 0x9D22,
- 0xF881, 0x9D23, 0xF882, 0x9D24, 0xF883, 0x9D25, 0xF884, 0x9D26,
- 0xF885, 0x9D27, 0xF886, 0x9D28, 0xF887, 0x9D29, 0xF888, 0x9D2A,
- 0xF889, 0x9D2B, 0xF88A, 0x9D2C, 0xF88B, 0x9D2D, 0xF88C, 0x9D2E,
- 0xF88D, 0x9D2F, 0xF88E, 0x9D30, 0xF88F, 0x9D31, 0xF890, 0x9D32,
- 0xF891, 0x9D33, 0xF892, 0x9D34, 0xF893, 0x9D35, 0xF894, 0x9D36,
- 0xF895, 0x9D37, 0xF896, 0x9D38, 0xF897, 0x9D39, 0xF898, 0x9D3A,
- 0xF899, 0x9D3B, 0xF89A, 0x9D3C, 0xF89B, 0x9D3D, 0xF89C, 0x9D3E,
- 0xF89D, 0x9D3F, 0xF89E, 0x9D40, 0xF89F, 0x9D41, 0xF8A0, 0x9D42,
- 0xF940, 0x9D43, 0xF941, 0x9D44, 0xF942, 0x9D45, 0xF943, 0x9D46,
- 0xF944, 0x9D47, 0xF945, 0x9D48, 0xF946, 0x9D49, 0xF947, 0x9D4A,
- 0xF948, 0x9D4B, 0xF949, 0x9D4C, 0xF94A, 0x9D4D, 0xF94B, 0x9D4E,
- 0xF94C, 0x9D4F, 0xF94D, 0x9D50, 0xF94E, 0x9D51, 0xF94F, 0x9D52,
- 0xF950, 0x9D53, 0xF951, 0x9D54, 0xF952, 0x9D55, 0xF953, 0x9D56,
- 0xF954, 0x9D57, 0xF955, 0x9D58, 0xF956, 0x9D59, 0xF957, 0x9D5A,
- 0xF958, 0x9D5B, 0xF959, 0x9D5C, 0xF95A, 0x9D5D, 0xF95B, 0x9D5E,
- 0xF95C, 0x9D5F, 0xF95D, 0x9D60, 0xF95E, 0x9D61, 0xF95F, 0x9D62,
- 0xF960, 0x9D63, 0xF961, 0x9D64, 0xF962, 0x9D65, 0xF963, 0x9D66,
- 0xF964, 0x9D67, 0xF965, 0x9D68, 0xF966, 0x9D69, 0xF967, 0x9D6A,
- 0xF968, 0x9D6B, 0xF969, 0x9D6C, 0xF96A, 0x9D6D, 0xF96B, 0x9D6E,
- 0xF96C, 0x9D6F, 0xF96D, 0x9D70, 0xF96E, 0x9D71, 0xF96F, 0x9D72,
- 0xF970, 0x9D73, 0xF971, 0x9D74, 0xF972, 0x9D75, 0xF973, 0x9D76,
- 0xF974, 0x9D77, 0xF975, 0x9D78, 0xF976, 0x9D79, 0xF977, 0x9D7A,
- 0xF978, 0x9D7B, 0xF979, 0x9D7C, 0xF97A, 0x9D7D, 0xF97B, 0x9D7E,
- 0xF97C, 0x9D7F, 0xF97D, 0x9D80, 0xF97E, 0x9D81, 0xF980, 0x9D82,
- 0xF981, 0x9D83, 0xF982, 0x9D84, 0xF983, 0x9D85, 0xF984, 0x9D86,
- 0xF985, 0x9D87, 0xF986, 0x9D88, 0xF987, 0x9D89, 0xF988, 0x9D8A,
- 0xF989, 0x9D8B, 0xF98A, 0x9D8C, 0xF98B, 0x9D8D, 0xF98C, 0x9D8E,
- 0xF98D, 0x9D8F, 0xF98E, 0x9D90, 0xF98F, 0x9D91, 0xF990, 0x9D92,
- 0xF991, 0x9D93, 0xF992, 0x9D94, 0xF993, 0x9D95, 0xF994, 0x9D96,
- 0xF995, 0x9D97, 0xF996, 0x9D98, 0xF997, 0x9D99, 0xF998, 0x9D9A,
- 0xF999, 0x9D9B, 0xF99A, 0x9D9C, 0xF99B, 0x9D9D, 0xF99C, 0x9D9E,
- 0xF99D, 0x9D9F, 0xF99E, 0x9DA0, 0xF99F, 0x9DA1, 0xF9A0, 0x9DA2,
- 0xFA40, 0x9DA3, 0xFA41, 0x9DA4, 0xFA42, 0x9DA5, 0xFA43, 0x9DA6,
- 0xFA44, 0x9DA7, 0xFA45, 0x9DA8, 0xFA46, 0x9DA9, 0xFA47, 0x9DAA,
- 0xFA48, 0x9DAB, 0xFA49, 0x9DAC, 0xFA4A, 0x9DAD, 0xFA4B, 0x9DAE,
- 0xFA4C, 0x9DAF, 0xFA4D, 0x9DB0, 0xFA4E, 0x9DB1, 0xFA4F, 0x9DB2,
- 0xFA50, 0x9DB3, 0xFA51, 0x9DB4, 0xFA52, 0x9DB5, 0xFA53, 0x9DB6,
- 0xFA54, 0x9DB7, 0xFA55, 0x9DB8, 0xFA56, 0x9DB9, 0xFA57, 0x9DBA,
- 0xFA58, 0x9DBB, 0xFA59, 0x9DBC, 0xFA5A, 0x9DBD, 0xFA5B, 0x9DBE,
- 0xFA5C, 0x9DBF, 0xFA5D, 0x9DC0, 0xFA5E, 0x9DC1, 0xFA5F, 0x9DC2,
- 0xFA60, 0x9DC3, 0xFA61, 0x9DC4, 0xFA62, 0x9DC5, 0xFA63, 0x9DC6,
- 0xFA64, 0x9DC7, 0xFA65, 0x9DC8, 0xFA66, 0x9DC9, 0xFA67, 0x9DCA,
- 0xFA68, 0x9DCB, 0xFA69, 0x9DCC, 0xFA6A, 0x9DCD, 0xFA6B, 0x9DCE,
- 0xFA6C, 0x9DCF, 0xFA6D, 0x9DD0, 0xFA6E, 0x9DD1, 0xFA6F, 0x9DD2,
- 0xFA70, 0x9DD3, 0xFA71, 0x9DD4, 0xFA72, 0x9DD5, 0xFA73, 0x9DD6,
- 0xFA74, 0x9DD7, 0xFA75, 0x9DD8, 0xFA76, 0x9DD9, 0xFA77, 0x9DDA,
- 0xFA78, 0x9DDB, 0xFA79, 0x9DDC, 0xFA7A, 0x9DDD, 0xFA7B, 0x9DDE,
- 0xFA7C, 0x9DDF, 0xFA7D, 0x9DE0, 0xFA7E, 0x9DE1, 0xFA80, 0x9DE2,
- 0xFA81, 0x9DE3, 0xFA82, 0x9DE4, 0xFA83, 0x9DE5, 0xFA84, 0x9DE6,
- 0xFA85, 0x9DE7, 0xFA86, 0x9DE8, 0xFA87, 0x9DE9, 0xFA88, 0x9DEA,
- 0xFA89, 0x9DEB, 0xFA8A, 0x9DEC, 0xFA8B, 0x9DED, 0xFA8C, 0x9DEE,
- 0xFA8D, 0x9DEF, 0xFA8E, 0x9DF0, 0xFA8F, 0x9DF1, 0xFA90, 0x9DF2,
- 0xFA91, 0x9DF3, 0xFA92, 0x9DF4, 0xFA93, 0x9DF5, 0xFA94, 0x9DF6,
- 0xFA95, 0x9DF7, 0xFA96, 0x9DF8, 0xFA97, 0x9DF9, 0xFA98, 0x9DFA,
- 0xFA99, 0x9DFB, 0xFA9A, 0x9DFC, 0xFA9B, 0x9DFD, 0xFA9C, 0x9DFE,
- 0xFA9D, 0x9DFF, 0xFA9E, 0x9E00, 0xFA9F, 0x9E01, 0xFAA0, 0x9E02,
- 0xFB40, 0x9E03, 0xFB41, 0x9E04, 0xFB42, 0x9E05, 0xFB43, 0x9E06,
- 0xFB44, 0x9E07, 0xFB45, 0x9E08, 0xFB46, 0x9E09, 0xFB47, 0x9E0A,
- 0xFB48, 0x9E0B, 0xFB49, 0x9E0C, 0xFB4A, 0x9E0D, 0xFB4B, 0x9E0E,
- 0xFB4C, 0x9E0F, 0xFB4D, 0x9E10, 0xFB4E, 0x9E11, 0xFB4F, 0x9E12,
- 0xFB50, 0x9E13, 0xFB51, 0x9E14, 0xFB52, 0x9E15, 0xFB53, 0x9E16,
- 0xFB54, 0x9E17, 0xFB55, 0x9E18, 0xFB56, 0x9E19, 0xFB57, 0x9E1A,
- 0xFB58, 0x9E1B, 0xFB59, 0x9E1C, 0xFB5A, 0x9E1D, 0xFB5B, 0x9E1E,
- 0xFB5C, 0x9E24, 0xFB5D, 0x9E27, 0xFB5E, 0x9E2E, 0xFB5F, 0x9E30,
- 0xFB60, 0x9E34, 0xFB61, 0x9E3B, 0xFB62, 0x9E3C, 0xFB63, 0x9E40,
- 0xFB64, 0x9E4D, 0xFB65, 0x9E50, 0xFB66, 0x9E52, 0xFB67, 0x9E53,
- 0xFB68, 0x9E54, 0xFB69, 0x9E56, 0xFB6A, 0x9E59, 0xFB6B, 0x9E5D,
- 0xFB6C, 0x9E5F, 0xFB6D, 0x9E60, 0xFB6E, 0x9E61, 0xFB6F, 0x9E62,
- 0xFB70, 0x9E65, 0xFB71, 0x9E6E, 0xFB72, 0x9E6F, 0xFB73, 0x9E72,
- 0xFB74, 0x9E74, 0xFB75, 0x9E75, 0xFB76, 0x9E76, 0xFB77, 0x9E77,
- 0xFB78, 0x9E78, 0xFB79, 0x9E79, 0xFB7A, 0x9E7A, 0xFB7B, 0x9E7B,
- 0xFB7C, 0x9E7C, 0xFB7D, 0x9E7D, 0xFB7E, 0x9E80, 0xFB80, 0x9E81,
- 0xFB81, 0x9E83, 0xFB82, 0x9E84, 0xFB83, 0x9E85, 0xFB84, 0x9E86,
- 0xFB85, 0x9E89, 0xFB86, 0x9E8A, 0xFB87, 0x9E8C, 0xFB88, 0x9E8D,
- 0xFB89, 0x9E8E, 0xFB8A, 0x9E8F, 0xFB8B, 0x9E90, 0xFB8C, 0x9E91,
- 0xFB8D, 0x9E94, 0xFB8E, 0x9E95, 0xFB8F, 0x9E96, 0xFB90, 0x9E97,
- 0xFB91, 0x9E98, 0xFB92, 0x9E99, 0xFB93, 0x9E9A, 0xFB94, 0x9E9B,
- 0xFB95, 0x9E9C, 0xFB96, 0x9E9E, 0xFB97, 0x9EA0, 0xFB98, 0x9EA1,
- 0xFB99, 0x9EA2, 0xFB9A, 0x9EA3, 0xFB9B, 0x9EA4, 0xFB9C, 0x9EA5,
- 0xFB9D, 0x9EA7, 0xFB9E, 0x9EA8, 0xFB9F, 0x9EA9, 0xFBA0, 0x9EAA,
- 0xFC40, 0x9EAB, 0xFC41, 0x9EAC, 0xFC42, 0x9EAD, 0xFC43, 0x9EAE,
- 0xFC44, 0x9EAF, 0xFC45, 0x9EB0, 0xFC46, 0x9EB1, 0xFC47, 0x9EB2,
- 0xFC48, 0x9EB3, 0xFC49, 0x9EB5, 0xFC4A, 0x9EB6, 0xFC4B, 0x9EB7,
- 0xFC4C, 0x9EB9, 0xFC4D, 0x9EBA, 0xFC4E, 0x9EBC, 0xFC4F, 0x9EBF,
- 0xFC50, 0x9EC0, 0xFC51, 0x9EC1, 0xFC52, 0x9EC2, 0xFC53, 0x9EC3,
- 0xFC54, 0x9EC5, 0xFC55, 0x9EC6, 0xFC56, 0x9EC7, 0xFC57, 0x9EC8,
- 0xFC58, 0x9ECA, 0xFC59, 0x9ECB, 0xFC5A, 0x9ECC, 0xFC5B, 0x9ED0,
- 0xFC5C, 0x9ED2, 0xFC5D, 0x9ED3, 0xFC5E, 0x9ED5, 0xFC5F, 0x9ED6,
- 0xFC60, 0x9ED7, 0xFC61, 0x9ED9, 0xFC62, 0x9EDA, 0xFC63, 0x9EDE,
- 0xFC64, 0x9EE1, 0xFC65, 0x9EE3, 0xFC66, 0x9EE4, 0xFC67, 0x9EE6,
- 0xFC68, 0x9EE8, 0xFC69, 0x9EEB, 0xFC6A, 0x9EEC, 0xFC6B, 0x9EED,
- 0xFC6C, 0x9EEE, 0xFC6D, 0x9EF0, 0xFC6E, 0x9EF1, 0xFC6F, 0x9EF2,
- 0xFC70, 0x9EF3, 0xFC71, 0x9EF4, 0xFC72, 0x9EF5, 0xFC73, 0x9EF6,
- 0xFC74, 0x9EF7, 0xFC75, 0x9EF8, 0xFC76, 0x9EFA, 0xFC77, 0x9EFD,
- 0xFC78, 0x9EFF, 0xFC79, 0x9F00, 0xFC7A, 0x9F01, 0xFC7B, 0x9F02,
- 0xFC7C, 0x9F03, 0xFC7D, 0x9F04, 0xFC7E, 0x9F05, 0xFC80, 0x9F06,
- 0xFC81, 0x9F07, 0xFC82, 0x9F08, 0xFC83, 0x9F09, 0xFC84, 0x9F0A,
- 0xFC85, 0x9F0C, 0xFC86, 0x9F0F, 0xFC87, 0x9F11, 0xFC88, 0x9F12,
- 0xFC89, 0x9F14, 0xFC8A, 0x9F15, 0xFC8B, 0x9F16, 0xFC8C, 0x9F18,
- 0xFC8D, 0x9F1A, 0xFC8E, 0x9F1B, 0xFC8F, 0x9F1C, 0xFC90, 0x9F1D,
- 0xFC91, 0x9F1E, 0xFC92, 0x9F1F, 0xFC93, 0x9F21, 0xFC94, 0x9F23,
- 0xFC95, 0x9F24, 0xFC96, 0x9F25, 0xFC97, 0x9F26, 0xFC98, 0x9F27,
- 0xFC99, 0x9F28, 0xFC9A, 0x9F29, 0xFC9B, 0x9F2A, 0xFC9C, 0x9F2B,
- 0xFC9D, 0x9F2D, 0xFC9E, 0x9F2E, 0xFC9F, 0x9F30, 0xFCA0, 0x9F31,
- 0xFD40, 0x9F32, 0xFD41, 0x9F33, 0xFD42, 0x9F34, 0xFD43, 0x9F35,
- 0xFD44, 0x9F36, 0xFD45, 0x9F38, 0xFD46, 0x9F3A, 0xFD47, 0x9F3C,
- 0xFD48, 0x9F3F, 0xFD49, 0x9F40, 0xFD4A, 0x9F41, 0xFD4B, 0x9F42,
- 0xFD4C, 0x9F43, 0xFD4D, 0x9F45, 0xFD4E, 0x9F46, 0xFD4F, 0x9F47,
- 0xFD50, 0x9F48, 0xFD51, 0x9F49, 0xFD52, 0x9F4A, 0xFD53, 0x9F4B,
- 0xFD54, 0x9F4C, 0xFD55, 0x9F4D, 0xFD56, 0x9F4E, 0xFD57, 0x9F4F,
- 0xFD58, 0x9F52, 0xFD59, 0x9F53, 0xFD5A, 0x9F54, 0xFD5B, 0x9F55,
- 0xFD5C, 0x9F56, 0xFD5D, 0x9F57, 0xFD5E, 0x9F58, 0xFD5F, 0x9F59,
- 0xFD60, 0x9F5A, 0xFD61, 0x9F5B, 0xFD62, 0x9F5C, 0xFD63, 0x9F5D,
- 0xFD64, 0x9F5E, 0xFD65, 0x9F5F, 0xFD66, 0x9F60, 0xFD67, 0x9F61,
- 0xFD68, 0x9F62, 0xFD69, 0x9F63, 0xFD6A, 0x9F64, 0xFD6B, 0x9F65,
- 0xFD6C, 0x9F66, 0xFD6D, 0x9F67, 0xFD6E, 0x9F68, 0xFD6F, 0x9F69,
- 0xFD70, 0x9F6A, 0xFD71, 0x9F6B, 0xFD72, 0x9F6C, 0xFD73, 0x9F6D,
- 0xFD74, 0x9F6E, 0xFD75, 0x9F6F, 0xFD76, 0x9F70, 0xFD77, 0x9F71,
- 0xFD78, 0x9F72, 0xFD79, 0x9F73, 0xFD7A, 0x9F74, 0xFD7B, 0x9F75,
- 0xFD7C, 0x9F76, 0xFD7D, 0x9F77, 0xFD7E, 0x9F78, 0xFD80, 0x9F79,
- 0xFD81, 0x9F7A, 0xFD82, 0x9F7B, 0xFD83, 0x9F7C, 0xFD84, 0x9F7D,
- 0xFD85, 0x9F7E, 0xFD86, 0x9F81, 0xFD87, 0x9F82, 0xFD88, 0x9F8D,
- 0xFD89, 0x9F8E, 0xFD8A, 0x9F8F, 0xFD8B, 0x9F90, 0xFD8C, 0x9F91,
- 0xFD8D, 0x9F92, 0xFD8E, 0x9F93, 0xFD8F, 0x9F94, 0xFD90, 0x9F95,
- 0xFD91, 0x9F96, 0xFD92, 0x9F97, 0xFD93, 0x9F98, 0xFD94, 0x9F9C,
- 0xFD95, 0x9F9D, 0xFD96, 0x9F9E, 0xFD97, 0x9FA1, 0xFD98, 0x9FA2,
- 0xFD99, 0x9FA3, 0xFD9A, 0x9FA4, 0xFD9B, 0x9FA5, 0xFD9C, 0xF92C,
- 0xFD9D, 0xF979, 0xFD9E, 0xF995, 0xFD9F, 0xF9E7, 0xFDA0, 0xF9F1,
- 0xFE40, 0xFA0C, 0xFE41, 0xFA0D, 0xFE42, 0xFA0E, 0xFE43, 0xFA0F,
- 0xFE44, 0xFA11, 0xFE45, 0xFA13, 0xFE46, 0xFA14, 0xFE47, 0xFA18,
- 0xFE48, 0xFA1F, 0xFE49, 0xFA20, 0xFE4A, 0xFA21, 0xFE4B, 0xFA23,
- 0xFE4C, 0xFA24, 0xFE4D, 0xFA27, 0xFE4E, 0xFA28, 0xFE4F, 0xFA29,
- 0, 0
-};
-
-
-
-WCHAR ff_convert ( /* Converted code, 0 means conversion error */
- WCHAR src, /* Character code to be converted */
- UINT dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
- )
-{
- const WCHAR *p;
- WCHAR c;
- int i, n, li, hi;
-
-
- if (src < 0x80) { /* ASCII */
- c = src;
- } else {
- if (dir) { /* OEMCP to unicode */
- p = oem2uni;
- hi = sizeof(oem2uni) / 4 - 1;
- } else { /* Unicode to OEMCP */
- p = uni2oem;
- hi = sizeof(uni2oem) / 4 - 1;
- }
- li = 0;
- for (n = 16; n; n--) {
- i = li + (hi - li) / 2;
- if (src == p[i * 2]) break;
- if (src > p[i * 2])
- li = i;
- else
- hi = i;
- }
- c = n ? p[i * 2 + 1] : 0;
- }
-
- return c;
-}
-
-
-
-WCHAR ff_wtoupper ( /* Upper converted character */
- WCHAR chr /* Input character */
- )
-{
- static const WCHAR tbl_lower[] = { 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101, 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F, 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D, 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B, 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A, 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148, 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157, 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165, 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173, 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1, 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8, 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF, 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7, 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A, 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448, 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F, 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457, 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0 };
- static const WCHAR tbl_upper[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
- int i;
-
-
- for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
-
- return tbl_lower[i] ? tbl_upper[i] : chr;
-}
diff --git a/BaS_gcc/fs/cc949.c b/BaS_gcc/fs/cc949.c
deleted file mode 100644
index d64ef0e..0000000
--- a/BaS_gcc/fs/cc949.c
+++ /dev/null
@@ -1,8603 +0,0 @@
-/*------------------------------------------------------------------------*/
-/* Unicode - OEM code bidirectional converter (C)ChaN, 2009 */
-/* */
-/* CP949 (Korean EUC-KR) */
-/*------------------------------------------------------------------------*/
-
-#include
-
-
-#if !_USE_LFN || _CODE_PAGE != 949
-#error This file is not needed in current configuration. Remove from the project.
-#endif
-
-
-static
-const WCHAR uni2oem[] = {
- /* Unicode - OEM, Unicode - OEM, Unicode - OEM, Unicode - OEM */
- 0x00A1, 0xA2AE, 0x00A4, 0xA2B4, 0x00A7, 0xA1D7, 0x00A8, 0xA1A7,
- 0x00AA, 0xA8A3, 0x00AD, 0xA1A9, 0x00AE, 0xA2E7, 0x00B0, 0xA1C6,
- 0x00B1, 0xA1BE, 0x00B2, 0xA9F7, 0x00B3, 0xA9F8, 0x00B4, 0xA2A5,
- 0x00B6, 0xA2D2, 0x00B7, 0xA1A4, 0x00B8, 0xA2AC, 0x00B9, 0xA9F6,
- 0x00BA, 0xA8AC, 0x00BC, 0xA8F9, 0x00BD, 0xA8F6, 0x00BE, 0xA8FA,
- 0x00BF, 0xA2AF, 0x00C6, 0xA8A1, 0x00D0, 0xA8A2, 0x00D7, 0xA1BF,
- 0x00D8, 0xA8AA, 0x00DE, 0xA8AD, 0x00DF, 0xA9AC, 0x00E6, 0xA9A1,
- 0x00F0, 0xA9A3, 0x00F7, 0xA1C0, 0x00F8, 0xA9AA, 0x00FE, 0xA9AD,
- 0x0111, 0xA9A2, 0x0126, 0xA8A4, 0x0127, 0xA9A4, 0x0131, 0xA9A5,
- 0x0132, 0xA8A6, 0x0133, 0xA9A6, 0x0138, 0xA9A7, 0x013F, 0xA8A8,
- 0x0140, 0xA9A8, 0x0141, 0xA8A9, 0x0142, 0xA9A9, 0x0149, 0xA9B0,
- 0x014A, 0xA8AF, 0x014B, 0xA9AF, 0x0152, 0xA8AB, 0x0153, 0xA9AB,
- 0x0166, 0xA8AE, 0x0167, 0xA9AE, 0x02C7, 0xA2A7, 0x02D0, 0xA2B0,
- 0x02D8, 0xA2A8, 0x02D9, 0xA2AB, 0x02DA, 0xA2AA, 0x02DB, 0xA2AD,
- 0x02DD, 0xA2A9, 0x0391, 0xA5C1, 0x0392, 0xA5C2, 0x0393, 0xA5C3,
- 0x0394, 0xA5C4, 0x0395, 0xA5C5, 0x0396, 0xA5C6, 0x0397, 0xA5C7,
- 0x0398, 0xA5C8, 0x0399, 0xA5C9, 0x039A, 0xA5CA, 0x039B, 0xA5CB,
- 0x039C, 0xA5CC, 0x039D, 0xA5CD, 0x039E, 0xA5CE, 0x039F, 0xA5CF,
- 0x03A0, 0xA5D0, 0x03A1, 0xA5D1, 0x03A3, 0xA5D2, 0x03A4, 0xA5D3,
- 0x03A5, 0xA5D4, 0x03A6, 0xA5D5, 0x03A7, 0xA5D6, 0x03A8, 0xA5D7,
- 0x03A9, 0xA5D8, 0x03B1, 0xA5E1, 0x03B2, 0xA5E2, 0x03B3, 0xA5E3,
- 0x03B4, 0xA5E4, 0x03B5, 0xA5E5, 0x03B6, 0xA5E6, 0x03B7, 0xA5E7,
- 0x03B8, 0xA5E8, 0x03B9, 0xA5E9, 0x03BA, 0xA5EA, 0x03BB, 0xA5EB,
- 0x03BC, 0xA5EC, 0x03BD, 0xA5ED, 0x03BE, 0xA5EE, 0x03BF, 0xA5EF,
- 0x03C0, 0xA5F0, 0x03C1, 0xA5F1, 0x03C3, 0xA5F2, 0x03C4, 0xA5F3,
- 0x03C5, 0xA5F4, 0x03C6, 0xA5F5, 0x03C7, 0xA5F6, 0x03C8, 0xA5F7,
- 0x03C9, 0xA5F8, 0x0401, 0xACA7, 0x0410, 0xACA1, 0x0411, 0xACA2,
- 0x0412, 0xACA3, 0x0413, 0xACA4, 0x0414, 0xACA5, 0x0415, 0xACA6,
- 0x0416, 0xACA8, 0x0417, 0xACA9, 0x0418, 0xACAA, 0x0419, 0xACAB,
- 0x041A, 0xACAC, 0x041B, 0xACAD, 0x041C, 0xACAE, 0x041D, 0xACAF,
- 0x041E, 0xACB0, 0x041F, 0xACB1, 0x0420, 0xACB2, 0x0421, 0xACB3,
- 0x0422, 0xACB4, 0x0423, 0xACB5, 0x0424, 0xACB6, 0x0425, 0xACB7,
- 0x0426, 0xACB8, 0x0427, 0xACB9, 0x0428, 0xACBA, 0x0429, 0xACBB,
- 0x042A, 0xACBC, 0x042B, 0xACBD, 0x042C, 0xACBE, 0x042D, 0xACBF,
- 0x042E, 0xACC0, 0x042F, 0xACC1, 0x0430, 0xACD1, 0x0431, 0xACD2,
- 0x0432, 0xACD3, 0x0433, 0xACD4, 0x0434, 0xACD5, 0x0435, 0xACD6,
- 0x0436, 0xACD8, 0x0437, 0xACD9, 0x0438, 0xACDA, 0x0439, 0xACDB,
- 0x043A, 0xACDC, 0x043B, 0xACDD, 0x043C, 0xACDE, 0x043D, 0xACDF,
- 0x043E, 0xACE0, 0x043F, 0xACE1, 0x0440, 0xACE2, 0x0441, 0xACE3,
- 0x0442, 0xACE4, 0x0443, 0xACE5, 0x0444, 0xACE6, 0x0445, 0xACE7,
- 0x0446, 0xACE8, 0x0447, 0xACE9, 0x0448, 0xACEA, 0x0449, 0xACEB,
- 0x044A, 0xACEC, 0x044B, 0xACED, 0x044C, 0xACEE, 0x044D, 0xACEF,
- 0x044E, 0xACF0, 0x044F, 0xACF1, 0x0451, 0xACD7, 0x2015, 0xA1AA,
- 0x2018, 0xA1AE, 0x2019, 0xA1AF, 0x201C, 0xA1B0, 0x201D, 0xA1B1,
- 0x2020, 0xA2D3, 0x2021, 0xA2D4, 0x2025, 0xA1A5, 0x2026, 0xA1A6,
- 0x2030, 0xA2B6, 0x2032, 0xA1C7, 0x2033, 0xA1C8, 0x203B, 0xA1D8,
- 0x2074, 0xA9F9, 0x207F, 0xA9FA, 0x2081, 0xA9FB, 0x2082, 0xA9FC,
- 0x2083, 0xA9FD, 0x2084, 0xA9FE, 0x20AC, 0xA2E6, 0x2103, 0xA1C9,
- 0x2109, 0xA2B5, 0x2113, 0xA7A4, 0x2116, 0xA2E0, 0x2121, 0xA2E5,
- 0x2122, 0xA2E2, 0x2126, 0xA7D9, 0x212B, 0xA1CA, 0x2153, 0xA8F7,
- 0x2154, 0xA8F8, 0x215B, 0xA8FB, 0x215C, 0xA8FC, 0x215D, 0xA8FD,
- 0x215E, 0xA8FE, 0x2160, 0xA5B0, 0x2161, 0xA5B1, 0x2162, 0xA5B2,
- 0x2163, 0xA5B3, 0x2164, 0xA5B4, 0x2165, 0xA5B5, 0x2166, 0xA5B6,
- 0x2167, 0xA5B7, 0x2168, 0xA5B8, 0x2169, 0xA5B9, 0x2170, 0xA5A1,
- 0x2171, 0xA5A2, 0x2172, 0xA5A3, 0x2173, 0xA5A4, 0x2174, 0xA5A5,
- 0x2175, 0xA5A6, 0x2176, 0xA5A7, 0x2177, 0xA5A8, 0x2178, 0xA5A9,
- 0x2179, 0xA5AA, 0x2190, 0xA1E7, 0x2191, 0xA1E8, 0x2192, 0xA1E6,
- 0x2193, 0xA1E9, 0x2194, 0xA1EA, 0x2195, 0xA2D5, 0x2196, 0xA2D8,
- 0x2197, 0xA2D6, 0x2198, 0xA2D9, 0x2199, 0xA2D7, 0x21D2, 0xA2A1,
- 0x21D4, 0xA2A2, 0x2200, 0xA2A3, 0x2202, 0xA1D3, 0x2203, 0xA2A4,
- 0x2207, 0xA1D4, 0x2208, 0xA1F4, 0x220B, 0xA1F5, 0x220F, 0xA2B3,
- 0x2211, 0xA2B2, 0x221A, 0xA1EE, 0x221D, 0xA1F0, 0x221E, 0xA1C4,
- 0x2220, 0xA1D0, 0x2225, 0xA1AB, 0x2227, 0xA1FC, 0x2228, 0xA1FD,
- 0x2229, 0xA1FB, 0x222A, 0xA1FA, 0x222B, 0xA1F2, 0x222C, 0xA1F3,
- 0x222E, 0xA2B1, 0x2234, 0xA1C5, 0x2235, 0xA1F1, 0x223C, 0xA1AD,
- 0x223D, 0xA1EF, 0x2252, 0xA1D6, 0x2260, 0xA1C1, 0x2261, 0xA1D5,
- 0x2264, 0xA1C2, 0x2265, 0xA1C3, 0x226A, 0xA1EC, 0x226B, 0xA1ED,
- 0x2282, 0xA1F8, 0x2283, 0xA1F9, 0x2286, 0xA1F6, 0x2287, 0xA1F7,
- 0x2299, 0xA2C1, 0x22A5, 0xA1D1, 0x2312, 0xA1D2, 0x2460, 0xA8E7,
- 0x2461, 0xA8E8, 0x2462, 0xA8E9, 0x2463, 0xA8EA, 0x2464, 0xA8EB,
- 0x2465, 0xA8EC, 0x2466, 0xA8ED, 0x2467, 0xA8EE, 0x2468, 0xA8EF,
- 0x2469, 0xA8F0, 0x246A, 0xA8F1, 0x246B, 0xA8F2, 0x246C, 0xA8F3,
- 0x246D, 0xA8F4, 0x246E, 0xA8F5, 0x2474, 0xA9E7, 0x2475, 0xA9E8,
- 0x2476, 0xA9E9, 0x2477, 0xA9EA, 0x2478, 0xA9EB, 0x2479, 0xA9EC,
- 0x247A, 0xA9ED, 0x247B, 0xA9EE, 0x247C, 0xA9EF, 0x247D, 0xA9F0,
- 0x247E, 0xA9F1, 0x247F, 0xA9F2, 0x2480, 0xA9F3, 0x2481, 0xA9F4,
- 0x2482, 0xA9F5, 0x249C, 0xA9CD, 0x249D, 0xA9CE, 0x249E, 0xA9CF,
- 0x249F, 0xA9D0, 0x24A0, 0xA9D1, 0x24A1, 0xA9D2, 0x24A2, 0xA9D3,
- 0x24A3, 0xA9D4, 0x24A4, 0xA9D5, 0x24A5, 0xA9D6, 0x24A6, 0xA9D7,
- 0x24A7, 0xA9D8, 0x24A8, 0xA9D9, 0x24A9, 0xA9DA, 0x24AA, 0xA9DB,
- 0x24AB, 0xA9DC, 0x24AC, 0xA9DD, 0x24AD, 0xA9DE, 0x24AE, 0xA9DF,
- 0x24AF, 0xA9E0, 0x24B0, 0xA9E1, 0x24B1, 0xA9E2, 0x24B2, 0xA9E3,
- 0x24B3, 0xA9E4, 0x24B4, 0xA9E5, 0x24B5, 0xA9E6, 0x24D0, 0xA8CD,
- 0x24D1, 0xA8CE, 0x24D2, 0xA8CF, 0x24D3, 0xA8D0, 0x24D4, 0xA8D1,
- 0x24D5, 0xA8D2, 0x24D6, 0xA8D3, 0x24D7, 0xA8D4, 0x24D8, 0xA8D5,
- 0x24D9, 0xA8D6, 0x24DA, 0xA8D7, 0x24DB, 0xA8D8, 0x24DC, 0xA8D9,
- 0x24DD, 0xA8DA, 0x24DE, 0xA8DB, 0x24DF, 0xA8DC, 0x24E0, 0xA8DD,
- 0x24E1, 0xA8DE, 0x24E2, 0xA8DF, 0x24E3, 0xA8E0, 0x24E4, 0xA8E1,
- 0x24E5, 0xA8E2, 0x24E6, 0xA8E3, 0x24E7, 0xA8E4, 0x24E8, 0xA8E5,
- 0x24E9, 0xA8E6, 0x2500, 0xA6A1, 0x2501, 0xA6AC, 0x2502, 0xA6A2,
- 0x2503, 0xA6AD, 0x250C, 0xA6A3, 0x250D, 0xA6C8, 0x250E, 0xA6C7,
- 0x250F, 0xA6AE, 0x2510, 0xA6A4, 0x2511, 0xA6C2, 0x2512, 0xA6C1,
- 0x2513, 0xA6AF, 0x2514, 0xA6A6, 0x2515, 0xA6C6, 0x2516, 0xA6C5,
- 0x2517, 0xA6B1, 0x2518, 0xA6A5, 0x2519, 0xA6C4, 0x251A, 0xA6C3,
- 0x251B, 0xA6B0, 0x251C, 0xA6A7, 0x251D, 0xA6BC, 0x251E, 0xA6C9,
- 0x251F, 0xA6CA, 0x2520, 0xA6B7, 0x2521, 0xA6CB, 0x2522, 0xA6CC,
- 0x2523, 0xA6B2, 0x2524, 0xA6A9, 0x2525, 0xA6BE, 0x2526, 0xA6CD,
- 0x2527, 0xA6CE, 0x2528, 0xA6B9, 0x2529, 0xA6CF, 0x252A, 0xA6D0,
- 0x252B, 0xA6B4, 0x252C, 0xA6A8, 0x252D, 0xA6D1, 0x252E, 0xA6D2,
- 0x252F, 0xA6B8, 0x2530, 0xA6BD, 0x2531, 0xA6D3, 0x2532, 0xA6D4,
- 0x2533, 0xA6B3, 0x2534, 0xA6AA, 0x2535, 0xA6D5, 0x2536, 0xA6D6,
- 0x2537, 0xA6BA, 0x2538, 0xA6BF, 0x2539, 0xA6D7, 0x253A, 0xA6D8,
- 0x253B, 0xA6B5, 0x253C, 0xA6AB, 0x253D, 0xA6D9, 0x253E, 0xA6DA,
- 0x253F, 0xA6BB, 0x2540, 0xA6DB, 0x2541, 0xA6DC, 0x2542, 0xA6C0,
- 0x2543, 0xA6DD, 0x2544, 0xA6DE, 0x2545, 0xA6DF, 0x2546, 0xA6E0,
- 0x2547, 0xA6E1, 0x2548, 0xA6E2, 0x2549, 0xA6E3, 0x254A, 0xA6E4,
- 0x254B, 0xA6B6, 0x2592, 0xA2C6, 0x25A0, 0xA1E1, 0x25A1, 0xA1E0,
- 0x25A3, 0xA2C3, 0x25A4, 0xA2C7, 0x25A5, 0xA2C8, 0x25A6, 0xA2CB,
- 0x25A7, 0xA2CA, 0x25A8, 0xA2C9, 0x25A9, 0xA2CC, 0x25B2, 0xA1E3,
- 0x25B3, 0xA1E2, 0x25B6, 0xA2BA, 0x25B7, 0xA2B9, 0x25BC, 0xA1E5,
- 0x25BD, 0xA1E4, 0x25C0, 0xA2B8, 0x25C1, 0xA2B7, 0x25C6, 0xA1DF,
- 0x25C7, 0xA1DE, 0x25C8, 0xA2C2, 0x25CB, 0xA1DB, 0x25CE, 0xA1DD,
- 0x25CF, 0xA1DC, 0x25D0, 0xA2C4, 0x25D1, 0xA2C5, 0x2605, 0xA1DA,
- 0x2606, 0xA1D9, 0x260E, 0xA2CF, 0x260F, 0xA2CE, 0x261C, 0xA2D0,
- 0x261E, 0xA2D1, 0x2640, 0xA1CF, 0x2642, 0xA1CE, 0x2660, 0xA2BC,
- 0x2661, 0xA2BD, 0x2663, 0xA2C0, 0x2664, 0xA2BB, 0x2665, 0xA2BE,
- 0x2667, 0xA2BF, 0x2668, 0xA2CD, 0x2669, 0xA2DB, 0x266A, 0xA2DC,
- 0x266C, 0xA2DD, 0x266D, 0xA2DA, 0x3000, 0xA1A1, 0x3001, 0xA1A2,
- 0x3002, 0xA1A3, 0x3003, 0xA1A8, 0x3008, 0xA1B4, 0x3009, 0xA1B5,
- 0x300A, 0xA1B6, 0x300B, 0xA1B7, 0x300C, 0xA1B8, 0x300D, 0xA1B9,
- 0x300E, 0xA1BA, 0x300F, 0xA1BB, 0x3010, 0xA1BC, 0x3011, 0xA1BD,
- 0x3013, 0xA1EB, 0x3014, 0xA1B2, 0x3015, 0xA1B3, 0x3041, 0xAAA1,
- 0x3042, 0xAAA2, 0x3043, 0xAAA3, 0x3044, 0xAAA4, 0x3045, 0xAAA5,
- 0x3046, 0xAAA6, 0x3047, 0xAAA7, 0x3048, 0xAAA8, 0x3049, 0xAAA9,
- 0x304A, 0xAAAA, 0x304B, 0xAAAB, 0x304C, 0xAAAC, 0x304D, 0xAAAD,
- 0x304E, 0xAAAE, 0x304F, 0xAAAF, 0x3050, 0xAAB0, 0x3051, 0xAAB1,
- 0x3052, 0xAAB2, 0x3053, 0xAAB3, 0x3054, 0xAAB4, 0x3055, 0xAAB5,
- 0x3056, 0xAAB6, 0x3057, 0xAAB7, 0x3058, 0xAAB8, 0x3059, 0xAAB9,
- 0x305A, 0xAABA, 0x305B, 0xAABB, 0x305C, 0xAABC, 0x305D, 0xAABD,
- 0x305E, 0xAABE, 0x305F, 0xAABF, 0x3060, 0xAAC0, 0x3061, 0xAAC1,
- 0x3062, 0xAAC2, 0x3063, 0xAAC3, 0x3064, 0xAAC4, 0x3065, 0xAAC5,
- 0x3066, 0xAAC6, 0x3067, 0xAAC7, 0x3068, 0xAAC8, 0x3069, 0xAAC9,
- 0x306A, 0xAACA, 0x306B, 0xAACB, 0x306C, 0xAACC, 0x306D, 0xAACD,
- 0x306E, 0xAACE, 0x306F, 0xAACF, 0x3070, 0xAAD0, 0x3071, 0xAAD1,
- 0x3072, 0xAAD2, 0x3073, 0xAAD3, 0x3074, 0xAAD4, 0x3075, 0xAAD5,
- 0x3076, 0xAAD6, 0x3077, 0xAAD7, 0x3078, 0xAAD8, 0x3079, 0xAAD9,
- 0x307A, 0xAADA, 0x307B, 0xAADB, 0x307C, 0xAADC, 0x307D, 0xAADD,
- 0x307E, 0xAADE, 0x307F, 0xAADF, 0x3080, 0xAAE0, 0x3081, 0xAAE1,
- 0x3082, 0xAAE2, 0x3083, 0xAAE3, 0x3084, 0xAAE4, 0x3085, 0xAAE5,
- 0x3086, 0xAAE6, 0x3087, 0xAAE7, 0x3088, 0xAAE8, 0x3089, 0xAAE9,
- 0x308A, 0xAAEA, 0x308B, 0xAAEB, 0x308C, 0xAAEC, 0x308D, 0xAAED,
- 0x308E, 0xAAEE, 0x308F, 0xAAEF, 0x3090, 0xAAF0, 0x3091, 0xAAF1,
- 0x3092, 0xAAF2, 0x3093, 0xAAF3, 0x30A1, 0xABA1, 0x30A2, 0xABA2,
- 0x30A3, 0xABA3, 0x30A4, 0xABA4, 0x30A5, 0xABA5, 0x30A6, 0xABA6,
- 0x30A7, 0xABA7, 0x30A8, 0xABA8, 0x30A9, 0xABA9, 0x30AA, 0xABAA,
- 0x30AB, 0xABAB, 0x30AC, 0xABAC, 0x30AD, 0xABAD, 0x30AE, 0xABAE,
- 0x30AF, 0xABAF, 0x30B0, 0xABB0, 0x30B1, 0xABB1, 0x30B2, 0xABB2,
- 0x30B3, 0xABB3, 0x30B4, 0xABB4, 0x30B5, 0xABB5, 0x30B6, 0xABB6,
- 0x30B7, 0xABB7, 0x30B8, 0xABB8, 0x30B9, 0xABB9, 0x30BA, 0xABBA,
- 0x30BB, 0xABBB, 0x30BC, 0xABBC, 0x30BD, 0xABBD, 0x30BE, 0xABBE,
- 0x30BF, 0xABBF, 0x30C0, 0xABC0, 0x30C1, 0xABC1, 0x30C2, 0xABC2,
- 0x30C3, 0xABC3, 0x30C4, 0xABC4, 0x30C5, 0xABC5, 0x30C6, 0xABC6,
- 0x30C7, 0xABC7, 0x30C8, 0xABC8, 0x30C9, 0xABC9, 0x30CA, 0xABCA,
- 0x30CB, 0xABCB, 0x30CC, 0xABCC, 0x30CD, 0xABCD, 0x30CE, 0xABCE,
- 0x30CF, 0xABCF, 0x30D0, 0xABD0, 0x30D1, 0xABD1, 0x30D2, 0xABD2,
- 0x30D3, 0xABD3, 0x30D4, 0xABD4, 0x30D5, 0xABD5, 0x30D6, 0xABD6,
- 0x30D7, 0xABD7, 0x30D8, 0xABD8, 0x30D9, 0xABD9, 0x30DA, 0xABDA,
- 0x30DB, 0xABDB, 0x30DC, 0xABDC, 0x30DD, 0xABDD, 0x30DE, 0xABDE,
- 0x30DF, 0xABDF, 0x30E0, 0xABE0, 0x30E1, 0xABE1, 0x30E2, 0xABE2,
- 0x30E3, 0xABE3, 0x30E4, 0xABE4, 0x30E5, 0xABE5, 0x30E6, 0xABE6,
- 0x30E7, 0xABE7, 0x30E8, 0xABE8, 0x30E9, 0xABE9, 0x30EA, 0xABEA,
- 0x30EB, 0xABEB, 0x30EC, 0xABEC, 0x30ED, 0xABED, 0x30EE, 0xABEE,
- 0x30EF, 0xABEF, 0x30F0, 0xABF0, 0x30F1, 0xABF1, 0x30F2, 0xABF2,
- 0x30F3, 0xABF3, 0x30F4, 0xABF4, 0x30F5, 0xABF5, 0x30F6, 0xABF6,
- 0x3131, 0xA4A1, 0x3132, 0xA4A2, 0x3133, 0xA4A3, 0x3134, 0xA4A4,
- 0x3135, 0xA4A5, 0x3136, 0xA4A6, 0x3137, 0xA4A7, 0x3138, 0xA4A8,
- 0x3139, 0xA4A9, 0x313A, 0xA4AA, 0x313B, 0xA4AB, 0x313C, 0xA4AC,
- 0x313D, 0xA4AD, 0x313E, 0xA4AE, 0x313F, 0xA4AF, 0x3140, 0xA4B0,
- 0x3141, 0xA4B1, 0x3142, 0xA4B2, 0x3143, 0xA4B3, 0x3144, 0xA4B4,
- 0x3145, 0xA4B5, 0x3146, 0xA4B6, 0x3147, 0xA4B7, 0x3148, 0xA4B8,
- 0x3149, 0xA4B9, 0x314A, 0xA4BA, 0x314B, 0xA4BB, 0x314C, 0xA4BC,
- 0x314D, 0xA4BD, 0x314E, 0xA4BE, 0x314F, 0xA4BF, 0x3150, 0xA4C0,
- 0x3151, 0xA4C1, 0x3152, 0xA4C2, 0x3153, 0xA4C3, 0x3154, 0xA4C4,
- 0x3155, 0xA4C5, 0x3156, 0xA4C6, 0x3157, 0xA4C7, 0x3158, 0xA4C8,
- 0x3159, 0xA4C9, 0x315A, 0xA4CA, 0x315B, 0xA4CB, 0x315C, 0xA4CC,
- 0x315D, 0xA4CD, 0x315E, 0xA4CE, 0x315F, 0xA4CF, 0x3160, 0xA4D0,
- 0x3161, 0xA4D1, 0x3162, 0xA4D2, 0x3163, 0xA4D3, 0x3164, 0xA4D4,
- 0x3165, 0xA4D5, 0x3166, 0xA4D6, 0x3167, 0xA4D7, 0x3168, 0xA4D8,
- 0x3169, 0xA4D9, 0x316A, 0xA4DA, 0x316B, 0xA4DB, 0x316C, 0xA4DC,
- 0x316D, 0xA4DD, 0x316E, 0xA4DE, 0x316F, 0xA4DF, 0x3170, 0xA4E0,
- 0x3171, 0xA4E1, 0x3172, 0xA4E2, 0x3173, 0xA4E3, 0x3174, 0xA4E4,
- 0x3175, 0xA4E5, 0x3176, 0xA4E6, 0x3177, 0xA4E7, 0x3178, 0xA4E8,
- 0x3179, 0xA4E9, 0x317A, 0xA4EA, 0x317B, 0xA4EB, 0x317C, 0xA4EC,
- 0x317D, 0xA4ED, 0x317E, 0xA4EE, 0x317F, 0xA4EF, 0x3180, 0xA4F0,
- 0x3181, 0xA4F1, 0x3182, 0xA4F2, 0x3183, 0xA4F3, 0x3184, 0xA4F4,
- 0x3185, 0xA4F5, 0x3186, 0xA4F6, 0x3187, 0xA4F7, 0x3188, 0xA4F8,
- 0x3189, 0xA4F9, 0x318A, 0xA4FA, 0x318B, 0xA4FB, 0x318C, 0xA4FC,
- 0x318D, 0xA4FD, 0x318E, 0xA4FE, 0x3200, 0xA9B1, 0x3201, 0xA9B2,
- 0x3202, 0xA9B3, 0x3203, 0xA9B4, 0x3204, 0xA9B5, 0x3205, 0xA9B6,
- 0x3206, 0xA9B7, 0x3207, 0xA9B8, 0x3208, 0xA9B9, 0x3209, 0xA9BA,
- 0x320A, 0xA9BB, 0x320B, 0xA9BC, 0x320C, 0xA9BD, 0x320D, 0xA9BE,
- 0x320E, 0xA9BF, 0x320F, 0xA9C0, 0x3210, 0xA9C1, 0x3211, 0xA9C2,
- 0x3212, 0xA9C3, 0x3213, 0xA9C4, 0x3214, 0xA9C5, 0x3215, 0xA9C6,
- 0x3216, 0xA9C7, 0x3217, 0xA9C8, 0x3218, 0xA9C9, 0x3219, 0xA9CA,
- 0x321A, 0xA9CB, 0x321B, 0xA9CC, 0x321C, 0xA2DF, 0x3260, 0xA8B1,
- 0x3261, 0xA8B2, 0x3262, 0xA8B3, 0x3263, 0xA8B4, 0x3264, 0xA8B5,
- 0x3265, 0xA8B6, 0x3266, 0xA8B7, 0x3267, 0xA8B8, 0x3268, 0xA8B9,
- 0x3269, 0xA8BA, 0x326A, 0xA8BB, 0x326B, 0xA8BC, 0x326C, 0xA8BD,
- 0x326D, 0xA8BE, 0x326E, 0xA8BF, 0x326F, 0xA8C0, 0x3270, 0xA8C1,
- 0x3271, 0xA8C2, 0x3272, 0xA8C3, 0x3273, 0xA8C4, 0x3274, 0xA8C5,
- 0x3275, 0xA8C6, 0x3276, 0xA8C7, 0x3277, 0xA8C8, 0x3278, 0xA8C9,
- 0x3279, 0xA8CA, 0x327A, 0xA8CB, 0x327B, 0xA8CC, 0x327F, 0xA2DE,
- 0x3380, 0xA7C9, 0x3381, 0xA7CA, 0x3382, 0xA7CB, 0x3383, 0xA7CC,
- 0x3384, 0xA7CD, 0x3388, 0xA7BA, 0x3389, 0xA7BB, 0x338A, 0xA7DC,
- 0x338B, 0xA7DD, 0x338C, 0xA7DE, 0x338D, 0xA7B6, 0x338E, 0xA7B7,
- 0x338F, 0xA7B8, 0x3390, 0xA7D4, 0x3391, 0xA7D5, 0x3392, 0xA7D6,
- 0x3393, 0xA7D7, 0x3394, 0xA7D8, 0x3395, 0xA7A1, 0x3396, 0xA7A2,
- 0x3397, 0xA7A3, 0x3398, 0xA7A5, 0x3399, 0xA7AB, 0x339A, 0xA7AC,
- 0x339B, 0xA7AD, 0x339C, 0xA7AE, 0x339D, 0xA7AF, 0x339E, 0xA7B0,
- 0x339F, 0xA7B1, 0x33A0, 0xA7B2, 0x33A1, 0xA7B3, 0x33A2, 0xA7B4,
- 0x33A3, 0xA7A7, 0x33A4, 0xA7A8, 0x33A5, 0xA7A9, 0x33A6, 0xA7AA,
- 0x33A7, 0xA7BD, 0x33A8, 0xA7BE, 0x33A9, 0xA7E5, 0x33AA, 0xA7E6,
- 0x33AB, 0xA7E7, 0x33AC, 0xA7E8, 0x33AD, 0xA7E1, 0x33AE, 0xA7E2,
- 0x33AF, 0xA7E3, 0x33B0, 0xA7BF, 0x33B1, 0xA7C0, 0x33B2, 0xA7C1,
- 0x33B3, 0xA7C2, 0x33B4, 0xA7C3, 0x33B5, 0xA7C4, 0x33B6, 0xA7C5,
- 0x33B7, 0xA7C6, 0x33B8, 0xA7C7, 0x33B9, 0xA7C8, 0x33BA, 0xA7CE,
- 0x33BB, 0xA7CF, 0x33BC, 0xA7D0, 0x33BD, 0xA7D1, 0x33BE, 0xA7D2,
- 0x33BF, 0xA7D3, 0x33C0, 0xA7DA, 0x33C1, 0xA7DB, 0x33C2, 0xA2E3,
- 0x33C3, 0xA7EC, 0x33C4, 0xA7A6, 0x33C5, 0xA7E0, 0x33C6, 0xA7EF,
- 0x33C7, 0xA2E1, 0x33C8, 0xA7BC, 0x33C9, 0xA7ED, 0x33CA, 0xA7B5,
- 0x33CF, 0xA7B9, 0x33D0, 0xA7EA, 0x33D3, 0xA7EB, 0x33D6, 0xA7DF,
- 0x33D8, 0xA2E4, 0x33DB, 0xA7E4, 0x33DC, 0xA7EE, 0x33DD, 0xA7E9,
- 0x4E00, 0xECE9, 0x4E01, 0xEFCB, 0x4E03, 0xF6D2, 0x4E07, 0xD8B2,
- 0x4E08, 0xEDDB, 0x4E09, 0xDFB2, 0x4E0A, 0xDFBE, 0x4E0B, 0xF9BB,
- 0x4E0D, 0xDCF4, 0x4E11, 0xF5E4, 0x4E14, 0xF3A6, 0x4E15, 0xDDE0,
- 0x4E16, 0xE1A6, 0x4E18, 0xCEF8, 0x4E19, 0xDCB0, 0x4E1E, 0xE3AA,
- 0x4E2D, 0xF1E9, 0x4E32, 0xCDFA, 0x4E38, 0xFCAF, 0x4E39, 0xD3A1,
- 0x4E3B, 0xF1AB, 0x4E42, 0xE7D1, 0x4E43, 0xD2AC, 0x4E45, 0xCEF9,
- 0x4E4B, 0xF1FD, 0x4E4D, 0xDEBF, 0x4E4E, 0xFBBA, 0x4E4F, 0xF9B9,
- 0x4E56, 0xCED2, 0x4E58, 0xE3AB, 0x4E59, 0xEBE0, 0x4E5D, 0xCEFA,
- 0x4E5E, 0xCBF7, 0x4E5F, 0xE5A5, 0x4E6B, 0xCAE1, 0x4E6D, 0xD4CC,
- 0x4E73, 0xEAE1, 0x4E76, 0xDCE3, 0x4E77, 0xDFAD, 0x4E7E, 0xCBEB,
- 0x4E82, 0xD5AF, 0x4E86, 0xD6F5, 0x4E88, 0xE5F8, 0x4E8B, 0xDEC0,
- 0x4E8C, 0xECA3, 0x4E8E, 0xE9CD, 0x4E90, 0xEAA7, 0x4E91, 0xE9F6,
- 0x4E92, 0xFBBB, 0x4E94, 0xE7E9, 0x4E95, 0xEFCC, 0x4E98, 0xD0E6,
- 0x4E9B, 0xDEC1, 0x4E9E, 0xE4AC, 0x4EA1, 0xD8CC, 0x4EA2, 0xF9F1,
- 0x4EA4, 0xCEDF, 0x4EA5, 0xFAA4, 0x4EA6, 0xE6B2, 0x4EA8, 0xFAFB,
- 0x4EAB, 0xFABD, 0x4EAC, 0xCCC8, 0x4EAD, 0xEFCD, 0x4EAE, 0xD5D5,
- 0x4EB6, 0xD3A2, 0x4EBA, 0xECD1, 0x4EC0, 0xE4A7, 0x4EC1, 0xECD2,
- 0x4EC4, 0xF6B1, 0x4EC7, 0xCEFB, 0x4ECA, 0xD0D1, 0x4ECB, 0xCBBF,
- 0x4ECD, 0xEDA4, 0x4ED4, 0xEDA8, 0x4ED5, 0xDEC2, 0x4ED6, 0xF6E2,
- 0x4ED7, 0xEDDC, 0x4ED8, 0xDCF5, 0x4ED9, 0xE0B9, 0x4EDD, 0xD4CE,
- 0x4EDF, 0xF4B5, 0x4EE3, 0xD3DB, 0x4EE4, 0xD6B5, 0x4EE5, 0xECA4,
- 0x4EF0, 0xE4E6, 0x4EF2, 0xF1EA, 0x4EF6, 0xCBEC, 0x4EF7, 0xCBC0,
- 0x4EFB, 0xECF2, 0x4F01, 0xD0EA, 0x4F09, 0xF9F2, 0x4F0A, 0xECA5,
- 0x4F0B, 0xD0DF, 0x4F0D, 0xE7EA, 0x4F0E, 0xD0EB, 0x4F0F, 0xDCD1,
- 0x4F10, 0xDBE9, 0x4F11, 0xFDCC, 0x4F2F, 0xDBD7, 0x4F34, 0xDAE1,
- 0x4F36, 0xD6B6, 0x4F38, 0xE3DF, 0x4F3A, 0xDEC3, 0x4F3C, 0xDEC4,
- 0x4F3D, 0xCAA1, 0x4F43, 0xEEEC, 0x4F46, 0xD3A3, 0x4F47, 0xEEB7,
- 0x4F48, 0xF8CF, 0x4F4D, 0xEAC8, 0x4F4E, 0xEEB8, 0x4F4F, 0xF1AC,
- 0x4F50, 0xF1A5, 0x4F51, 0xE9CE, 0x4F55, 0xF9BC, 0x4F59, 0xE5F9,
- 0x4F5A, 0xECEA, 0x4F5B, 0xDDD6, 0x4F5C, 0xEDC2, 0x4F69, 0xF8A5,
- 0x4F6F, 0xE5BA, 0x4F70, 0xDBD8, 0x4F73, 0xCAA2, 0x4F76, 0xD1CD,
- 0x4F7A, 0xEEED, 0x4F7E, 0xECEB, 0x4F7F, 0xDEC5, 0x4F81, 0xE3E0,
- 0x4F83, 0xCAC9, 0x4F84, 0xF2E9, 0x4F86, 0xD5CE, 0x4F88, 0xF6B6,
- 0x4F8A, 0xCEC2, 0x4F8B, 0xD6C7, 0x4F8D, 0xE3B4, 0x4F8F, 0xF1AD,
- 0x4F91, 0xEAE2, 0x4F96, 0xD7C2, 0x4F98, 0xF3A7, 0x4F9B, 0xCDEA,
- 0x4F9D, 0xEBEE, 0x4FAE, 0xD9B2, 0x4FAF, 0xFDA5, 0x4FB5, 0xF6D5,
- 0x4FB6, 0xD5E2, 0x4FBF, 0xF8B5, 0x4FC2, 0xCCF5, 0x4FC3, 0xF5B5,
- 0x4FC4, 0xE4AD, 0x4FC9, 0xE7EB, 0x4FCA, 0xF1D5, 0x4FCE, 0xF0BB,
- 0x4FD1, 0xE9B5, 0x4FD3, 0xCCC9, 0x4FD4, 0xFAD5, 0x4FD7, 0xE1D4,
- 0x4FDA, 0xD7D6, 0x4FDD, 0xDCC1, 0x4FDF, 0xDEC6, 0x4FE0, 0xFAEF,
- 0x4FE1, 0xE3E1, 0x4FEE, 0xE1F3, 0x4FEF, 0xDCF6, 0x4FF1, 0xCEFC,
- 0x4FF3, 0xDBC4, 0x4FF5, 0xF8F1, 0x4FF8, 0xDCE4, 0x4FFA, 0xE5EF,
- 0x5002, 0xDCB1, 0x5006, 0xD5D6, 0x5009, 0xF3DA, 0x500B, 0xCBC1,
- 0x500D, 0xDBC3, 0x5011, 0xD9FA, 0x5012, 0xD3EE, 0x5016, 0xFAB8,
- 0x5019, 0xFDA6, 0x501A, 0xEBEF, 0x501C, 0xF4A6, 0x501E, 0xCCCA,
- 0x501F, 0xF3A8, 0x5021, 0xF3DB, 0x5023, 0xDBA7, 0x5024, 0xF6B7,
- 0x5026, 0xCFE6, 0x5027, 0xF0F2, 0x5028, 0xCBDA, 0x502A, 0xE7D2,
- 0x502B, 0xD7C3, 0x502C, 0xF6F0, 0x502D, 0xE8DE, 0x503B, 0xE5A6,
- 0x5043, 0xE5E7, 0x5047, 0xCAA3, 0x5048, 0xCCA7, 0x5049, 0xEAC9,
- 0x504F, 0xF8B6, 0x5055, 0xFAA5, 0x505A, 0xF1AE, 0x505C, 0xEFCE,
- 0x5065, 0xCBED, 0x5074, 0xF6B0, 0x5075, 0xEFCF, 0x5076, 0xE9CF,
- 0x5078, 0xF7DE, 0x5080, 0xCED3, 0x5085, 0xDCF7, 0x508D, 0xDBA8,
- 0x5091, 0xCBF8, 0x5098, 0xDFA1, 0x5099, 0xDDE1, 0x50AC, 0xF5CA,
- 0x50AD, 0xE9B6, 0x50B2, 0xE7EC, 0x50B3, 0xEEEE, 0x50B5, 0xF3F0,
- 0x50B7, 0xDFBF, 0x50BE, 0xCCCB, 0x50C5, 0xD0C1, 0x50C9, 0xF4D2,
- 0x50CA, 0xE0BA, 0x50CF, 0xDFC0, 0x50D1, 0xCEE0, 0x50D5, 0xDCD2,
- 0x50D6, 0xFDEA, 0x50DA, 0xD6F6, 0x50DE, 0xEACA, 0x50E5, 0xE8E9,
- 0x50E7, 0xE3AC, 0x50ED, 0xF3D0, 0x50F9, 0xCAA4, 0x50FB, 0xDBF8,
- 0x50FF, 0xDEC7, 0x5100, 0xEBF0, 0x5101, 0xF1D6, 0x5104, 0xE5E2,
- 0x5106, 0xCCCC, 0x5109, 0xCBFB, 0x5112, 0xEAE3, 0x511F, 0xDFC1,
- 0x5121, 0xD6ED, 0x512A, 0xE9D0, 0x5132, 0xEEB9, 0x5137, 0xD5E3,
- 0x513A, 0xD1D3, 0x513C, 0xE5F0, 0x5140, 0xE8B4, 0x5141, 0xEBC3,
- 0x5143, 0xEAAA, 0x5144, 0xFAFC, 0x5145, 0xF5F6, 0x5146, 0xF0BC,
- 0x5147, 0xFDD4, 0x5148, 0xE0BB, 0x5149, 0xCEC3, 0x514B, 0xD0BA,
- 0x514C, 0xF7BA, 0x514D, 0xD8F3, 0x514E, 0xF7CD, 0x5152, 0xE4AE,
- 0x515C, 0xD4DF, 0x5162, 0xD0E7, 0x5165, 0xECFD, 0x5167, 0xD2AE,
- 0x5168, 0xEEEF, 0x5169, 0xD5D7, 0x516A, 0xEAE4, 0x516B, 0xF8A2,
- 0x516C, 0xCDEB, 0x516D, 0xD7BF, 0x516E, 0xFBB1, 0x5171, 0xCDEC,
- 0x5175, 0xDCB2, 0x5176, 0xD0EC, 0x5177, 0xCEFD, 0x5178, 0xEEF0,
- 0x517C, 0xCCC2, 0x5180, 0xD0ED, 0x5186, 0xE5F7, 0x518A, 0xF3FC,
- 0x518D, 0xEEA2, 0x5192, 0xD9B3, 0x5195, 0xD8F4, 0x5197, 0xE9B7,
- 0x51A0, 0xCEAE, 0x51A5, 0xD9A2, 0x51AA, 0xD8F1, 0x51AC, 0xD4CF,
- 0x51B6, 0xE5A7, 0x51B7, 0xD5D2, 0x51BD, 0xD6A9, 0x51C4, 0xF4A2,
- 0x51C6, 0xF1D7, 0x51C9, 0xD5D8, 0x51CB, 0xF0BD, 0x51CC, 0xD7D0,
- 0x51CD, 0xD4D0, 0x51DC, 0xD7CF, 0x51DD, 0xEBEA, 0x51DE, 0xFDEB,
- 0x51E1, 0xDBED, 0x51F0, 0xFCC5, 0x51F1, 0xCBC2, 0x51F6, 0xFDD5,
- 0x51F8, 0xF4C8, 0x51F9, 0xE8EA, 0x51FA, 0xF5F3, 0x51FD, 0xF9DE,
- 0x5200, 0xD3EF, 0x5203, 0xECD3, 0x5206, 0xDDC2, 0x5207, 0xEFB7,
- 0x5208, 0xE7D4, 0x520A, 0xCACA, 0x520E, 0xD9FB, 0x5211, 0xFAFD,
- 0x5217, 0xD6AA, 0x521D, 0xF4F8, 0x5224, 0xF7F7, 0x5225, 0xDCAC,
- 0x5229, 0xD7D7, 0x522A, 0xDFA2, 0x522E, 0xCEBE, 0x5230, 0xD3F0,
- 0x5236, 0xF0A4, 0x5237, 0xE1EC, 0x5238, 0xCFE7, 0x5239, 0xF3CB,
- 0x523A, 0xEDA9, 0x523B, 0xCABE, 0x5243, 0xF4EF, 0x5247, 0xF6CE,
- 0x524A, 0xDEFB, 0x524B, 0xD0BB, 0x524C, 0xD5B7, 0x524D, 0xEEF1,
- 0x5254, 0xF4A8, 0x5256, 0xDCF8, 0x525B, 0xCBA7, 0x525D, 0xDACE,
- 0x5261, 0xE0E6, 0x5269, 0xEDA5, 0x526A, 0xEEF2, 0x526F, 0xDCF9,
- 0x5272, 0xF9DC, 0x5275, 0xF3DC, 0x527D, 0xF8F2, 0x527F, 0xF4F9,
- 0x5283, 0xFCF1, 0x5287, 0xD0BC, 0x5288, 0xDBF9, 0x5289, 0xD7B1,
- 0x528D, 0xCBFC, 0x5291, 0xF0A5, 0x5292, 0xCBFD, 0x529B, 0xD5F4,
- 0x529F, 0xCDED, 0x52A0, 0xCAA5, 0x52A3, 0xD6AB, 0x52A4, 0xD0C2,
- 0x52A9, 0xF0BE, 0x52AA, 0xD2BD, 0x52AB, 0xCCA4, 0x52BE, 0xFAB6,
- 0x52C1, 0xCCCD, 0x52C3, 0xDAFA, 0x52C5, 0xF6CF, 0x52C7, 0xE9B8,
- 0x52C9, 0xD8F5, 0x52CD, 0xCCCE, 0x52D2, 0xD7CD, 0x52D5, 0xD4D1,
- 0x52D6, 0xE9ED, 0x52D8, 0xCAEB, 0x52D9, 0xD9E2, 0x52DB, 0xFDB2,
- 0x52DD, 0xE3AD, 0x52DE, 0xD6CC, 0x52DF, 0xD9B4, 0x52E2, 0xE1A7,
- 0x52E3, 0xEED3, 0x52E4, 0xD0C3, 0x52F3, 0xFDB3, 0x52F5, 0xD5E4,
- 0x52F8, 0xCFE8, 0x52FA, 0xEDC3, 0x52FB, 0xD0B2, 0x52FE, 0xCEFE,
- 0x52FF, 0xDAA8, 0x5305, 0xF8D0, 0x5308, 0xFDD6, 0x530D, 0xF8D1,
- 0x530F, 0xF8D2, 0x5310, 0xDCD3, 0x5315, 0xDDE2, 0x5316, 0xFBF9,
- 0x5317, 0xDDC1, 0x5319, 0xE3B5, 0x5320, 0xEDDD, 0x5321, 0xCEC4,
- 0x5323, 0xCBA1, 0x532A, 0xDDE3, 0x532F, 0xFCDD, 0x5339, 0xF9AF,
- 0x533F, 0xD2FB, 0x5340, 0xCFA1, 0x5341, 0xE4A8, 0x5343, 0xF4B6,
- 0x5344, 0xECFE, 0x5347, 0xE3AE, 0x5348, 0xE7ED, 0x5349, 0xFDC1,
- 0x534A, 0xDAE2, 0x534D, 0xD8B3, 0x5351, 0xDDE4, 0x5352, 0xF0EF,
- 0x5353, 0xF6F1, 0x5354, 0xFAF0, 0x5357, 0xD1F5, 0x535A, 0xDACF,
- 0x535C, 0xDCD4, 0x535E, 0xDCA6, 0x5360, 0xEFBF, 0x5366, 0xCECF,
- 0x5368, 0xE0D9, 0x536F, 0xD9D6, 0x5370, 0xECD4, 0x5371, 0xEACB,
- 0x5374, 0xCABF, 0x5375, 0xD5B0, 0x5377, 0xCFE9, 0x537D, 0xF1ED,
- 0x537F, 0xCCCF, 0x5384, 0xE4F8, 0x5393, 0xE4ED, 0x5398, 0xD7D8,
- 0x539A, 0xFDA7, 0x539F, 0xEAAB, 0x53A0, 0xF6B2, 0x53A5, 0xCFF0,
- 0x53A6, 0xF9BD, 0x53AD, 0xE6F4, 0x53BB, 0xCBDB, 0x53C3, 0xF3D1,
- 0x53C8, 0xE9D1, 0x53C9, 0xF3A9, 0x53CA, 0xD0E0, 0x53CB, 0xE9D2,
- 0x53CD, 0xDAE3, 0x53D4, 0xE2D2, 0x53D6, 0xF6A2, 0x53D7, 0xE1F4,
- 0x53DB, 0xDAE4, 0x53E1, 0xE7D5, 0x53E2, 0xF5BF, 0x53E3, 0xCFA2,
- 0x53E4, 0xCDAF, 0x53E5, 0xCFA3, 0x53E9, 0xCDB0, 0x53EA, 0xF1FE,
- 0x53EB, 0xD0A3, 0x53EC, 0xE1AF, 0x53ED, 0xF8A3, 0x53EF, 0xCAA6,
- 0x53F0, 0xF7BB, 0x53F1, 0xF2EA, 0x53F2, 0xDEC8, 0x53F3, 0xE9D3,
- 0x53F8, 0xDEC9, 0x5403, 0xFDDE, 0x5404, 0xCAC0, 0x5408, 0xF9EA,
- 0x5409, 0xD1CE, 0x540A, 0xEED4, 0x540C, 0xD4D2, 0x540D, 0xD9A3,
- 0x540E, 0xFDA8, 0x540F, 0xD7D9, 0x5410, 0xF7CE, 0x5411, 0xFABE,
- 0x541B, 0xCFD6, 0x541D, 0xD7F0, 0x541F, 0xEBE1, 0x5420, 0xF8C5,
- 0x5426, 0xDCFA, 0x5429, 0xDDC3, 0x542B, 0xF9DF, 0x5433, 0xE7EF,
- 0x5438, 0xFDE5, 0x5439, 0xF6A3, 0x543B, 0xD9FC, 0x543C, 0xFDA9,
- 0x543E, 0xE7EE, 0x5442, 0xD5E5, 0x5448, 0xEFD0, 0x544A, 0xCDB1,
- 0x5451, 0xF7A2, 0x5468, 0xF1B2, 0x546A, 0xF1B1, 0x5471, 0xCDB2,
- 0x5473, 0xDAAB, 0x5475, 0xCAA7, 0x547B, 0xE3E2, 0x547C, 0xFBBC,
- 0x547D, 0xD9A4, 0x5480, 0xEEBA, 0x5486, 0xF8D3, 0x548C, 0xFBFA,
- 0x548E, 0xCFA4, 0x5490, 0xDCFB, 0x54A4, 0xF6E3, 0x54A8, 0xEDAA,
- 0x54AB, 0xF2A1, 0x54AC, 0xCEE1, 0x54B3, 0xFAA6, 0x54B8, 0xF9E0,
- 0x54BD, 0xECD6, 0x54C0, 0xE4EE, 0x54C1, 0xF9A1, 0x54C4, 0xFBEF,
- 0x54C8, 0xF9EB, 0x54C9, 0xEEA3, 0x54E1, 0xEAAC, 0x54E5, 0xCAA8,
- 0x54E8, 0xF4FA, 0x54ED, 0xCDD6, 0x54EE, 0xFCF6, 0x54F2, 0xF4C9,
- 0x54FA, 0xF8D4, 0x5504, 0xF8A6, 0x5506, 0xDECA, 0x5507, 0xF2C6,
- 0x550E, 0xD7DA, 0x5510, 0xD3D0, 0x551C, 0xD8C5, 0x552F, 0xEAE6,
- 0x5531, 0xF3DD, 0x5535, 0xE4DA, 0x553E, 0xF6E4, 0x5544, 0xF6F2,
- 0x5546, 0xDFC2, 0x554F, 0xD9FD, 0x5553, 0xCCF6, 0x5556, 0xD3BA,
- 0x555E, 0xE4AF, 0x5563, 0xF9E1, 0x557C, 0xF0A6, 0x5580, 0xCBD3,
- 0x5584, 0xE0BC, 0x5586, 0xF4CA, 0x5587, 0xD4FA, 0x5589, 0xFDAA,
- 0x558A, 0xF9E2, 0x5598, 0xF4B7, 0x5599, 0xFDC2, 0x559A, 0xFCB0,
- 0x559C, 0xFDEC, 0x559D, 0xCAE2, 0x55A7, 0xFDBD, 0x55A9, 0xEAE7,
- 0x55AA, 0xDFC3, 0x55AB, 0xD1D2, 0x55AC, 0xCEE2, 0x55AE, 0xD3A4,
- 0x55C5, 0xFDAB, 0x55C7, 0xDFE0, 0x55D4, 0xF2C7, 0x55DA, 0xE7F0,
- 0x55DC, 0xD0EE, 0x55DF, 0xF3AA, 0x55E3, 0xDECB, 0x55E4, 0xF6B8,
- 0x55FD, 0xE1F5, 0x55FE, 0xF1B3, 0x5606, 0xF7A3, 0x5609, 0xCAA9,
- 0x5614, 0xCFA5, 0x5617, 0xDFC4, 0x562F, 0xE1B0, 0x5632, 0xF0BF,
- 0x5634, 0xF6A4, 0x5636, 0xE3B6, 0x5653, 0xFAC6, 0x5668, 0xD0EF,
- 0x566B, 0xFDED, 0x5674, 0xDDC4, 0x5686, 0xFCF7, 0x56A5, 0xE6BF,
- 0x56AC, 0xDEAD, 0x56AE, 0xFABF, 0x56B4, 0xE5F1, 0x56BC, 0xEDC4,
- 0x56CA, 0xD2A5, 0x56CD, 0xFDEE, 0x56D1, 0xF5B6, 0x56DA, 0xE1F6,
- 0x56DB, 0xDECC, 0x56DE, 0xFCDE, 0x56E0, 0xECD7, 0x56F0, 0xCDDD,
- 0x56F9, 0xD6B7, 0x56FA, 0xCDB3, 0x5703, 0xF8D5, 0x5704, 0xE5D8,
- 0x5708, 0xCFEA, 0x570B, 0xCFD0, 0x570D, 0xEACC, 0x5712, 0xEAAE,
- 0x5713, 0xEAAD, 0x5716, 0xD3F1, 0x5718, 0xD3A5, 0x571F, 0xF7CF,
- 0x5728, 0xEEA4, 0x572D, 0xD0A4, 0x5730, 0xF2A2, 0x573B, 0xD0F0,
- 0x5740, 0xF2A3, 0x5742, 0xF7F8, 0x5747, 0xD0B3, 0x574A, 0xDBA9,
- 0x574D, 0xD3BB, 0x574E, 0xCAEC, 0x5750, 0xF1A6, 0x5751, 0xCBD5,
- 0x5761, 0xF7E7, 0x5764, 0xCDDE, 0x5766, 0xF7A4, 0x576A, 0xF8C0,
- 0x576E, 0xD3DD, 0x5770, 0xCCD0, 0x5775, 0xCFA6, 0x577C, 0xF6F3,
- 0x5782, 0xE1F7, 0x5788, 0xD3DC, 0x578B, 0xFAFE, 0x5793, 0xFAA7,
- 0x57A0, 0xEBD9, 0x57A2, 0xCFA7, 0x57A3, 0xEAAF, 0x57C3, 0xE4EF,
- 0x57C7, 0xE9B9, 0x57C8, 0xF1D8, 0x57CB, 0xD8D8, 0x57CE, 0xE0F2,
- 0x57DF, 0xE6B4, 0x57E0, 0xDCFC, 0x57F0, 0xF3F1, 0x57F4, 0xE3D0,
- 0x57F7, 0xF2FB, 0x57F9, 0xDBC6, 0x57FA, 0xD0F1, 0x57FC, 0xD0F2,
- 0x5800, 0xCFDC, 0x5802, 0xD3D1, 0x5805, 0xCCB1, 0x5806, 0xF7D8,
- 0x5808, 0xCBA8, 0x5809, 0xEBBC, 0x580A, 0xE4BE, 0x581E, 0xF4DC,
- 0x5821, 0xDCC2, 0x5824, 0xF0A7, 0x5827, 0xE6C0, 0x582A, 0xCAED,
- 0x582F, 0xE8EB, 0x5830, 0xE5E8, 0x5831, 0xDCC3, 0x5834, 0xEDDE,
- 0x5835, 0xD3F2, 0x583A, 0xCCF7, 0x584A, 0xCED4, 0x584B, 0xE7AB,
- 0x584F, 0xCBC3, 0x5851, 0xE1B1, 0x5854, 0xF7B2, 0x5857, 0xD3F3,
- 0x5858, 0xD3D2, 0x585A, 0xF5C0, 0x585E, 0xDFDD, 0x5861, 0xEEF3,
- 0x5862, 0xE7F1, 0x5864, 0xFDB4, 0x5875, 0xF2C8, 0x5879, 0xF3D2,
- 0x587C, 0xEEF4, 0x587E, 0xE2D3, 0x5883, 0xCCD1, 0x5885, 0xDFEA,
- 0x5889, 0xE9BA, 0x5893, 0xD9D7, 0x589C, 0xF5CD, 0x589E, 0xF1F2,
- 0x589F, 0xFAC7, 0x58A8, 0xD9F8, 0x58A9, 0xD4C2, 0x58AE, 0xF6E5,
- 0x58B3, 0xDDC5, 0x58BA, 0xE7F2, 0x58BB, 0xEDDF, 0x58BE, 0xCACB,
- 0x58C1, 0xDBFA, 0x58C5, 0xE8B5, 0x58C7, 0xD3A6, 0x58CE, 0xFDB5,
- 0x58D1, 0xF9C9, 0x58D3, 0xE4E2, 0x58D5, 0xFBBD, 0x58D8, 0xD7A4,
- 0x58D9, 0xCEC5, 0x58DE, 0xCED5, 0x58DF, 0xD6E6, 0x58E4, 0xE5BD,
- 0x58EB, 0xDECD, 0x58EC, 0xECF3, 0x58EF, 0xEDE0, 0x58F9, 0xECEC,
- 0x58FA, 0xFBBE, 0x58FB, 0xDFEB, 0x58FD, 0xE1F8, 0x590F, 0xF9BE,
- 0x5914, 0xD0F3, 0x5915, 0xE0AA, 0x5916, 0xE8E2, 0x5919, 0xE2D4,
- 0x591A, 0xD2FD, 0x591C, 0xE5A8, 0x5922, 0xD9D3, 0x5927, 0xD3DE,
- 0x5929, 0xF4B8, 0x592A, 0xF7BC, 0x592B, 0xDCFD, 0x592D, 0xE8EC,
- 0x592E, 0xE4E7, 0x5931, 0xE3F7, 0x5937, 0xECA8, 0x593E, 0xFAF1,
- 0x5944, 0xE5F2, 0x5947, 0xD0F4, 0x5948, 0xD2AF, 0x5949, 0xDCE5,
- 0x594E, 0xD0A5, 0x594F, 0xF1B4, 0x5950, 0xFCB1, 0x5951, 0xCCF8,
- 0x5954, 0xDDC6, 0x5955, 0xFAD1, 0x5957, 0xF7DF, 0x595A, 0xFAA8,
- 0x5960, 0xEEF5, 0x5962, 0xDECE, 0x5967, 0xE7F3, 0x596A, 0xF7AC,
- 0x596B, 0xEBC4, 0x596C, 0xEDE1, 0x596D, 0xE0AB, 0x596E, 0xDDC7,
- 0x5973, 0xD2B3, 0x5974, 0xD2BF, 0x5978, 0xCACC, 0x597D, 0xFBBF,
- 0x5982, 0xE5FD, 0x5983, 0xDDE5, 0x5984, 0xD8CD, 0x598A, 0xECF4,
- 0x5993, 0xD0F5, 0x5996, 0xE8ED, 0x5997, 0xD0D2, 0x5999, 0xD9D8,
- 0x59A5, 0xF6E6, 0x59A8, 0xDBAA, 0x59AC, 0xF7E0, 0x59B9, 0xD8D9,
- 0x59BB, 0xF4A3, 0x59BE, 0xF4DD, 0x59C3, 0xEFD1, 0x59C6, 0xD9B5,
- 0x59C9, 0xEDAB, 0x59CB, 0xE3B7, 0x59D0, 0xEEBB, 0x59D1, 0xCDB4,
- 0x59D3, 0xE0F3, 0x59D4, 0xEACD, 0x59D9, 0xECF5, 0x59DA, 0xE8EE,
- 0x59DC, 0xCBA9, 0x59DD, 0xF1AF, 0x59E6, 0xCACD, 0x59E8, 0xECA9,
- 0x59EA, 0xF2EB, 0x59EC, 0xFDEF, 0x59EE, 0xF9F3, 0x59F8, 0xE6C1,
- 0x59FB, 0xECD8, 0x59FF, 0xEDAC, 0x5A01, 0xEACE, 0x5A03, 0xE8DF,
- 0x5A11, 0xDECF, 0x5A18, 0xD2A6, 0x5A1B, 0xE7F4, 0x5A1C, 0xD1D6,
- 0x5A1F, 0xE6C2, 0x5A20, 0xE3E3, 0x5A25, 0xE4B0, 0x5A29, 0xD8B4,
- 0x5A36, 0xF6A5, 0x5A3C, 0xF3DE, 0x5A41, 0xD7A5, 0x5A46, 0xF7E8,
- 0x5A49, 0xE8C6, 0x5A5A, 0xFBE6, 0x5A62, 0xDDE6, 0x5A66, 0xDCFE,
- 0x5A92, 0xD8DA, 0x5A9A, 0xDAAC, 0x5A9B, 0xEAB0, 0x5AA4, 0xE3B8,
- 0x5AC1, 0xCAAA, 0x5AC2, 0xE1F9, 0x5AC4, 0xEAB1, 0x5AC9, 0xF2EC,
- 0x5ACC, 0xFAEE, 0x5AE1, 0xEED5, 0x5AE6, 0xF9F4, 0x5AE9, 0xD2EC,
- 0x5B05, 0xFBFB, 0x5B09, 0xFDF0, 0x5B0B, 0xE0BD, 0x5B0C, 0xCEE3,
- 0x5B16, 0xF8C6, 0x5B2A, 0xDEAE, 0x5B40, 0xDFC5, 0x5B43, 0xE5BE,
- 0x5B50, 0xEDAD, 0x5B51, 0xFAEA, 0x5B54, 0xCDEE, 0x5B55, 0xEDA6,
- 0x5B57, 0xEDAE, 0x5B58, 0xF0ED, 0x5B5A, 0xDDA1, 0x5B5C, 0xEDAF,
- 0x5B5D, 0xFCF8, 0x5B5F, 0xD8EB, 0x5B63, 0xCCF9, 0x5B64, 0xCDB5,
- 0x5B69, 0xFAA9, 0x5B6B, 0xE1DD, 0x5B70, 0xE2D5, 0x5B71, 0xEDCF,
- 0x5B75, 0xDDA2, 0x5B78, 0xF9CA, 0x5B7A, 0xEAE8, 0x5B7C, 0xE5ED,
- 0x5B85, 0xD3EB, 0x5B87, 0xE9D4, 0x5B88, 0xE1FA, 0x5B89, 0xE4CC,
- 0x5B8B, 0xE1E4, 0x5B8C, 0xE8C7, 0x5B8F, 0xCEDB, 0x5B93, 0xDCD5,
- 0x5B95, 0xF7B5, 0x5B96, 0xFCF3, 0x5B97, 0xF0F3, 0x5B98, 0xCEAF,
- 0x5B99, 0xF1B5, 0x5B9A, 0xEFD2, 0x5B9B, 0xE8C8, 0x5B9C, 0xEBF1,
- 0x5BA2, 0xCBD4, 0x5BA3, 0xE0BE, 0x5BA4, 0xE3F8, 0x5BA5, 0xEAE9,
- 0x5BA6, 0xFCB2, 0x5BAC, 0xE0F4, 0x5BAE, 0xCFE0, 0x5BB0, 0xEEA5,
- 0x5BB3, 0xFAAA, 0x5BB4, 0xE6C3, 0x5BB5, 0xE1B2, 0x5BB6, 0xCAAB,
- 0x5BB8, 0xE3E4, 0x5BB9, 0xE9BB, 0x5BBF, 0xE2D6, 0x5BC0, 0xF3F2,
- 0x5BC2, 0xEED6, 0x5BC3, 0xEAB2, 0x5BC4, 0xD0F6, 0x5BC5, 0xECD9,
- 0x5BC6, 0xDACB, 0x5BC7, 0xCFA8, 0x5BCC, 0xDDA3, 0x5BD0, 0xD8DB,
- 0x5BD2, 0xF9CE, 0x5BD3, 0xE9D5, 0x5BD4, 0xE3D1, 0x5BD7, 0xD2BC,
- 0x5BDE, 0xD8AC, 0x5BDF, 0xF3CC, 0x5BE1, 0xCDFB, 0x5BE2, 0xF6D6,
- 0x5BE4, 0xE7F5, 0x5BE5, 0xE8EF, 0x5BE6, 0xE3F9, 0x5BE7, 0xD2BB,
- 0x5BE8, 0xF3F3, 0x5BE9, 0xE3FB, 0x5BEB, 0xDED0, 0x5BEC, 0xCEB0,
- 0x5BEE, 0xD6F7, 0x5BEF, 0xF1D9, 0x5BF5, 0xF5C1, 0x5BF6, 0xDCC4,
- 0x5BF8, 0xF5BB, 0x5BFA, 0xDED1, 0x5C01, 0xDCE6, 0x5C04, 0xDED2,
- 0x5C07, 0xEDE2, 0x5C08, 0xEEF6, 0x5C09, 0xEACF, 0x5C0A, 0xF0EE,
- 0x5C0B, 0xE3FC, 0x5C0D, 0xD3DF, 0x5C0E, 0xD3F4, 0x5C0F, 0xE1B3,
- 0x5C11, 0xE1B4, 0x5C16, 0xF4D3, 0x5C19, 0xDFC6, 0x5C24, 0xE9D6,
- 0x5C28, 0xDBAB, 0x5C31, 0xF6A6, 0x5C38, 0xE3B9, 0x5C39, 0xEBC5,
- 0x5C3A, 0xF4A9, 0x5C3B, 0xCDB6, 0x5C3C, 0xD2F9, 0x5C3E, 0xDAAD,
- 0x5C3F, 0xD2E3, 0x5C40, 0xCFD1, 0x5C45, 0xCBDC, 0x5C46, 0xCCFA,
- 0x5C48, 0xCFDD, 0x5C4B, 0xE8A9, 0x5C4D, 0xE3BB, 0x5C4E, 0xE3BA,
- 0x5C51, 0xE0DA, 0x5C55, 0xEEF7, 0x5C5B, 0xDCB3, 0x5C60, 0xD3F5,
- 0x5C62, 0xD7A6, 0x5C64, 0xF6B5, 0x5C65, 0xD7DB, 0x5C6C, 0xE1D5,
- 0x5C6F, 0xD4EA, 0x5C71, 0xDFA3, 0x5C79, 0xFDDF, 0x5C90, 0xD0F7,
- 0x5C91, 0xEDD4, 0x5CA1, 0xCBAA, 0x5CA9, 0xE4DB, 0x5CAB, 0xE1FB,
- 0x5CAC, 0xCBA2, 0x5CB1, 0xD3E0, 0x5CB3, 0xE4BF, 0x5CB5, 0xFBC0,
- 0x5CB7, 0xDABE, 0x5CB8, 0xE4CD, 0x5CBA, 0xD6B9, 0x5CBE, 0xEFC0,
- 0x5CC0, 0xE1FC, 0x5CD9, 0xF6B9, 0x5CE0, 0xDFC7, 0x5CE8, 0xE4B1,
- 0x5CEF, 0xDCE7, 0x5CF0, 0xDCE8, 0x5CF4, 0xFAD6, 0x5CF6, 0xD3F6,
- 0x5CFB, 0xF1DA, 0x5CFD, 0xFAF2, 0x5D07, 0xE2FD, 0x5D0D, 0xD5CF,
- 0x5D0E, 0xD0F8, 0x5D11, 0xCDDF, 0x5D14, 0xF5CB, 0x5D16, 0xE4F0,
- 0x5D17, 0xCBAB, 0x5D19, 0xD7C4, 0x5D27, 0xE2FE, 0x5D29, 0xDDDA,
- 0x5D4B, 0xDAAE, 0x5D4C, 0xCAEE, 0x5D50, 0xD5B9, 0x5D69, 0xE3A1,
- 0x5D6C, 0xE8E3, 0x5D6F, 0xF3AB, 0x5D87, 0xCFA9, 0x5D8B, 0xD3F7,
- 0x5D9D, 0xD4F1, 0x5DA0, 0xCEE4, 0x5DA2, 0xE8F2, 0x5DAA, 0xE5F5,
- 0x5DB8, 0xE7AE, 0x5DBA, 0xD6BA, 0x5DBC, 0xDFEC, 0x5DBD, 0xE4C0,
- 0x5DCD, 0xE8E4, 0x5DD2, 0xD8B5, 0x5DD6, 0xE4DC, 0x5DDD, 0xF4B9,
- 0x5DDE, 0xF1B6, 0x5DE1, 0xE2DE, 0x5DE2, 0xE1B5, 0x5DE5, 0xCDEF,
- 0x5DE6, 0xF1A7, 0x5DE7, 0xCEE5, 0x5DE8, 0xCBDD, 0x5DEB, 0xD9E3,
- 0x5DEE, 0xF3AC, 0x5DF1, 0xD0F9, 0x5DF2, 0xECAB, 0x5DF3, 0xDED3,
- 0x5DF4, 0xF7E9, 0x5DF7, 0xF9F5, 0x5DFD, 0xE1DE, 0x5DFE, 0xCBEE,
- 0x5E02, 0xE3BC, 0x5E03, 0xF8D6, 0x5E06, 0xDBEE, 0x5E0C, 0xFDF1,
- 0x5E11, 0xF7B6, 0x5E16, 0xF4DE, 0x5E19, 0xF2ED, 0x5E1B, 0xDBD9,
- 0x5E1D, 0xF0A8, 0x5E25, 0xE1FD, 0x5E2B, 0xDED4, 0x5E2D, 0xE0AC,
- 0x5E33, 0xEDE3, 0x5E36, 0xD3E1, 0x5E38, 0xDFC8, 0x5E3D, 0xD9B6,
- 0x5E3F, 0xFDAC, 0x5E40, 0xEFD3, 0x5E44, 0xE4C1, 0x5E45, 0xF8EB,
- 0x5E47, 0xDBAC, 0x5E4C, 0xFCC6, 0x5E55, 0xD8AD, 0x5E5F, 0xF6BA,
- 0x5E61, 0xDBDF, 0x5E62, 0xD3D3, 0x5E63, 0xF8C7, 0x5E72, 0xCACE,
- 0x5E73, 0xF8C1, 0x5E74, 0xD2B4, 0x5E77, 0xDCB4, 0x5E78, 0xFAB9,
- 0x5E79, 0xCACF, 0x5E7B, 0xFCB3, 0x5E7C, 0xEAEA, 0x5E7D, 0xEAEB,
- 0x5E7E, 0xD0FA, 0x5E84, 0xEDE4, 0x5E87, 0xDDE7, 0x5E8A, 0xDFC9,
- 0x5E8F, 0xDFED, 0x5E95, 0xEEBC, 0x5E97, 0xEFC1, 0x5E9A, 0xCCD2,
- 0x5E9C, 0xDDA4, 0x5EA0, 0xDFCA, 0x5EA6, 0xD3F8, 0x5EA7, 0xF1A8,
- 0x5EAB, 0xCDB7, 0x5EAD, 0xEFD4, 0x5EB5, 0xE4DD, 0x5EB6, 0xDFEE,
- 0x5EB7, 0xCBAC, 0x5EB8, 0xE9BC, 0x5EBE, 0xEAEC, 0x5EC2, 0xDFCB,
- 0x5EC8, 0xF9BF, 0x5EC9, 0xD6AF, 0x5ECA, 0xD5C6, 0x5ED0, 0xCFAA,
- 0x5ED3, 0xCEA9, 0x5ED6, 0xD6F8, 0x5EDA, 0xF1B7, 0x5EDB, 0xEEF8,
- 0x5EDF, 0xD9D9, 0x5EE0, 0xF3DF, 0x5EE2, 0xF8C8, 0x5EE3, 0xCEC6,
- 0x5EEC, 0xD5E6, 0x5EF3, 0xF4E6, 0x5EF6, 0xE6C5, 0x5EF7, 0xEFD5,
- 0x5EFA, 0xCBEF, 0x5EFB, 0xFCDF, 0x5F01, 0xDCA7, 0x5F04, 0xD6E7,
- 0x5F0A, 0xF8C9, 0x5F0F, 0xE3D2, 0x5F11, 0xE3BD, 0x5F13, 0xCFE1,
- 0x5F14, 0xF0C0, 0x5F15, 0xECDA, 0x5F17, 0xDDD7, 0x5F18, 0xFBF0,
- 0x5F1B, 0xECAC, 0x5F1F, 0xF0A9, 0x5F26, 0xFAD7, 0x5F27, 0xFBC1,
- 0x5F29, 0xD2C0, 0x5F31, 0xE5B0, 0x5F35, 0xEDE5, 0x5F3A, 0xCBAD,
- 0x5F3C, 0xF9B0, 0x5F48, 0xF7A5, 0x5F4A, 0xCBAE, 0x5F4C, 0xDAAF,
- 0x5F4E, 0xD8B6, 0x5F56, 0xD3A7, 0x5F57, 0xFBB2, 0x5F59, 0xFDC4,
- 0x5F5B, 0xECAD, 0x5F62, 0xFBA1, 0x5F66, 0xE5E9, 0x5F67, 0xE9EE,
- 0x5F69, 0xF3F4, 0x5F6A, 0xF8F3, 0x5F6B, 0xF0C1, 0x5F6C, 0xDEAF,
- 0x5F6D, 0xF8B0, 0x5F70, 0xF3E0, 0x5F71, 0xE7AF, 0x5F77, 0xDBAD,
- 0x5F79, 0xE6B5, 0x5F7C, 0xF9A8, 0x5F7F, 0xDDD8, 0x5F80, 0xE8D9,
- 0x5F81, 0xEFD6, 0x5F85, 0xD3E2, 0x5F87, 0xE2DF, 0x5F8A, 0xFCE0,
- 0x5F8B, 0xD7C8, 0x5F8C, 0xFDAD, 0x5F90, 0xDFEF, 0x5F91, 0xCCD3,
- 0x5F92, 0xD3F9, 0x5F97, 0xD4F0, 0x5F98, 0xDBC7, 0x5F99, 0xDED5,
- 0x5F9E, 0xF0F4, 0x5FA0, 0xD5D0, 0x5FA1, 0xE5D9, 0x5FA8, 0xFCC7,
- 0x5FA9, 0xDCD6, 0x5FAA, 0xE2E0, 0x5FAE, 0xDAB0, 0x5FB5, 0xF3A3,
- 0x5FB7, 0xD3EC, 0x5FB9, 0xF4CB, 0x5FBD, 0xFDC5, 0x5FC3, 0xE3FD,
- 0x5FC5, 0xF9B1, 0x5FCC, 0xD0FB, 0x5FCD, 0xECDB, 0x5FD6, 0xF5BC,
- 0x5FD7, 0xF2A4, 0x5FD8, 0xD8CE, 0x5FD9, 0xD8CF, 0x5FE0, 0xF5F7,
- 0x5FEB, 0xF6E1, 0x5FF5, 0xD2B7, 0x5FFD, 0xFBEC, 0x5FFF, 0xDDC8,
- 0x600F, 0xE4E8, 0x6012, 0xD2C1, 0x6016, 0xF8D7, 0x601C, 0xD6BB,
- 0x601D, 0xDED6, 0x6020, 0xF7BD, 0x6021, 0xECAE, 0x6025, 0xD0E1,
- 0x6027, 0xE0F5, 0x6028, 0xEAB3, 0x602A, 0xCED6, 0x602F, 0xCCA5,
- 0x6041, 0xECF6, 0x6042, 0xE2E1, 0x6043, 0xE3BE, 0x604D, 0xFCC8,
- 0x6050, 0xCDF0, 0x6052, 0xF9F6, 0x6055, 0xDFF0, 0x6059, 0xE5BF,
- 0x605D, 0xCEBF, 0x6062, 0xFCE1, 0x6063, 0xEDB0, 0x6064, 0xFDD1,
- 0x6065, 0xF6BB, 0x6068, 0xF9CF, 0x6069, 0xEBDA, 0x606A, 0xCAC1,
- 0x606C, 0xD2B8, 0x606D, 0xCDF1, 0x606F, 0xE3D3, 0x6070, 0xFDE6,
- 0x6085, 0xE6ED, 0x6089, 0xE3FA, 0x608C, 0xF0AA, 0x608D, 0xF9D0,
- 0x6094, 0xFCE2, 0x6096, 0xF8A7, 0x609A, 0xE1E5, 0x609B, 0xEEF9,
- 0x609F, 0xE7F6, 0x60A0, 0xEAED, 0x60A3, 0xFCB4, 0x60A4, 0xF5C2,
- 0x60A7, 0xD7DC, 0x60B0, 0xF0F5, 0x60B2, 0xDDE8, 0x60B3, 0xD3ED,
- 0x60B4, 0xF5FC, 0x60B6, 0xDABF, 0x60B8, 0xCCFB, 0x60BC, 0xD3FA,
- 0x60BD, 0xF4A4, 0x60C5, 0xEFD7, 0x60C7, 0xD4C3, 0x60D1, 0xFBE3,
- 0x60DA, 0xFBED, 0x60DC, 0xE0AD, 0x60DF, 0xEAEE, 0x60E0, 0xFBB3,
- 0x60E1, 0xE4C2, 0x60F0, 0xF6E7, 0x60F1, 0xD2DD, 0x60F3, 0xDFCC,
- 0x60F6, 0xFCC9, 0x60F9, 0xE5A9, 0x60FA, 0xE0F6, 0x60FB, 0xF6B3,
- 0x6101, 0xE1FE, 0x6106, 0xCBF0, 0x6108, 0xEAEF, 0x6109, 0xEAF0,
- 0x610D, 0xDAC0, 0x610E, 0xF8B4, 0x610F, 0xEBF2, 0x6115, 0xE4C3,
- 0x611A, 0xE9D7, 0x611B, 0xE4F1, 0x611F, 0xCAEF, 0x6127, 0xCED7,
- 0x6130, 0xFCCA, 0x6134, 0xF3E1, 0x6137, 0xCBC4, 0x613C, 0xE3E5,
- 0x613E, 0xCBC5, 0x613F, 0xEAB4, 0x6142, 0xE9BD, 0x6144, 0xD7C9,
- 0x6147, 0xEBDB, 0x6148, 0xEDB1, 0x614A, 0xCCC3, 0x614B, 0xF7BE,
- 0x614C, 0xFCCB, 0x6153, 0xF8F4, 0x6155, 0xD9B7, 0x6158, 0xF3D3,
- 0x6159, 0xF3D4, 0x615D, 0xF7E4, 0x615F, 0xF7D1, 0x6162, 0xD8B7,
- 0x6163, 0xCEB1, 0x6164, 0xCAC2, 0x6167, 0xFBB4, 0x6168, 0xCBC6,
- 0x616B, 0xF0F6, 0x616E, 0xD5E7, 0x6170, 0xEAD0, 0x6176, 0xCCD4,
- 0x6177, 0xCBAF, 0x617D, 0xF4AA, 0x617E, 0xE9AF, 0x6181, 0xF5C3,
- 0x6182, 0xE9D8, 0x618A, 0xDDE9, 0x618E, 0xF1F3, 0x6190, 0xD5FB,
- 0x6191, 0xDEBB, 0x6194, 0xF4FB, 0x6198, 0xFDF3, 0x6199, 0xFDF2,
- 0x619A, 0xF7A6, 0x61A4, 0xDDC9, 0x61A7, 0xD4D3, 0x61A9, 0xCCA8,
- 0x61AB, 0xDAC1, 0x61AC, 0xCCD5, 0x61AE, 0xD9E4, 0x61B2, 0xFACA,
- 0x61B6, 0xE5E3, 0x61BA, 0xD3BC, 0x61BE, 0xCAF0, 0x61C3, 0xD0C4,
- 0x61C7, 0xCAD0, 0x61C8, 0xFAAB, 0x61C9, 0xEBEB, 0x61CA, 0xE7F8,
- 0x61CB, 0xD9E5, 0x61E6, 0xD1D7, 0x61F2, 0xF3A4, 0x61F6, 0xD4FB,
- 0x61F7, 0xFCE3, 0x61F8, 0xFAD8, 0x61FA, 0xF3D5, 0x61FC, 0xCFAB,
- 0x61FF, 0xEBF3, 0x6200, 0xD5FC, 0x6207, 0xD3D4, 0x6208, 0xCDFC,
- 0x620A, 0xD9E6, 0x620C, 0xE2F9, 0x620D, 0xE2A1, 0x620E, 0xEBD4,
- 0x6210, 0xE0F7, 0x6211, 0xE4B2, 0x6212, 0xCCFC, 0x6216, 0xFBE4,
- 0x621A, 0xF4AB, 0x621F, 0xD0BD, 0x6221, 0xCAF1, 0x622A, 0xEFB8,
- 0x622E, 0xD7C0, 0x6230, 0xEEFA, 0x6231, 0xFDF4, 0x6234, 0xD3E3,
- 0x6236, 0xFBC2, 0x623E, 0xD5E8, 0x623F, 0xDBAE, 0x6240, 0xE1B6,
- 0x6241, 0xF8B7, 0x6247, 0xE0BF, 0x6248, 0xFBC3, 0x6249, 0xDDEA,
- 0x624B, 0xE2A2, 0x624D, 0xEEA6, 0x6253, 0xF6E8, 0x6258, 0xF6F5,
- 0x626E, 0xDDCA, 0x6271, 0xD0E2, 0x6276, 0xDDA6, 0x6279, 0xDDEB,
- 0x627C, 0xE4F9, 0x627F, 0xE3AF, 0x6280, 0xD0FC, 0x6284, 0xF4FC,
- 0x6289, 0xCCBC, 0x628A, 0xF7EA, 0x6291, 0xE5E4, 0x6292, 0xDFF1,
- 0x6295, 0xF7E1, 0x6297, 0xF9F7, 0x6298, 0xEFB9, 0x629B, 0xF8D8,
- 0x62AB, 0xF9A9, 0x62B1, 0xF8D9, 0x62B5, 0xEEBD, 0x62B9, 0xD8C6,
- 0x62BC, 0xE4E3, 0x62BD, 0xF5CE, 0x62C2, 0xDDD9, 0x62C7, 0xD9E7,
- 0x62C8, 0xD2B9, 0x62C9, 0xD5C3, 0x62CC, 0xDAE5, 0x62CD, 0xDAD0,
- 0x62CF, 0xD1D9, 0x62D0, 0xCED8, 0x62D2, 0xCBDE, 0x62D3, 0xF4AC,
- 0x62D4, 0xDAFB, 0x62D6, 0xF6E9, 0x62D7, 0xE8F3, 0x62D8, 0xCFAC,
- 0x62D9, 0xF0F0, 0x62DB, 0xF4FD, 0x62DC, 0xDBC8, 0x62EC, 0xCEC0,
- 0x62ED, 0xE3D4, 0x62EE, 0xD1CF, 0x62EF, 0xF1F5, 0x62F1, 0xCDF2,
- 0x62F3, 0xCFEB, 0x62F7, 0xCDB8, 0x62FE, 0xE3A6, 0x62FF, 0xD1DA,
- 0x6301, 0xF2A5, 0x6307, 0xF2A6, 0x6309, 0xE4CE, 0x6311, 0xD3FB,
- 0x632B, 0xF1A9, 0x632F, 0xF2C9, 0x633A, 0xEFD8, 0x633B, 0xE6C9,
- 0x633D, 0xD8B8, 0x633E, 0xFAF3, 0x6349, 0xF3B5, 0x634C, 0xF8A4,
- 0x634F, 0xD1F3, 0x6350, 0xE6C8, 0x6355, 0xF8DA, 0x6367, 0xDCE9,
- 0x6368, 0xDED7, 0x636E, 0xCBDF, 0x6372, 0xCFEC, 0x6377, 0xF4DF,
- 0x637A, 0xD1F4, 0x637B, 0xD2BA, 0x637F, 0xDFF2, 0x6383, 0xE1B7,
- 0x6388, 0xE2A3, 0x6389, 0xD3FC, 0x638C, 0xEDE6, 0x6392, 0xDBC9,
- 0x6396, 0xE4FA, 0x6398, 0xCFDE, 0x639B, 0xCED0, 0x63A0, 0xD5D3,
- 0x63A1, 0xF3F5, 0x63A2, 0xF7AE, 0x63A5, 0xEFC8, 0x63A7, 0xCDF3,
- 0x63A8, 0xF5CF, 0x63A9, 0xE5F3, 0x63AA, 0xF0C2, 0x63C0, 0xCAD1,
- 0x63C4, 0xEAF1, 0x63C6, 0xD0A6, 0x63CF, 0xD9DA, 0x63D0, 0xF0AB,
- 0x63D6, 0xEBE7, 0x63DA, 0xE5C0, 0x63DB, 0xFCB5, 0x63E1, 0xE4C4,
- 0x63ED, 0xCCA9, 0x63EE, 0xFDC6, 0x63F4, 0xEAB5, 0x63F6, 0xE5AA,
- 0x63F7, 0xDFBA, 0x640D, 0xE1DF, 0x640F, 0xDAD1, 0x6414, 0xE1B8,
- 0x6416, 0xE8F4, 0x6417, 0xD3FD, 0x641C, 0xE2A4, 0x6422, 0xF2CA,
- 0x642C, 0xDAE6, 0x642D, 0xF7B3, 0x643A, 0xFDCD, 0x643E, 0xF3B6,
- 0x6458, 0xEED7, 0x6460, 0xF5C4, 0x6469, 0xD8A4, 0x646F, 0xF2A7,
- 0x6478, 0xD9B8, 0x6479, 0xD9B9, 0x647A, 0xEFC9, 0x6488, 0xD6CE,
- 0x6491, 0xF7CB, 0x6492, 0xDFAE, 0x6493, 0xE8F5, 0x649A, 0xD2B5,
- 0x649E, 0xD3D5, 0x64A4, 0xF4CC, 0x64A5, 0xDAFC, 0x64AB, 0xD9E8,
- 0x64AD, 0xF7EB, 0x64AE, 0xF5C9, 0x64B0, 0xF3BC, 0x64B2, 0xDAD2,
- 0x64BB, 0xD3B5, 0x64C1, 0xE8B6, 0x64C4, 0xD6CF, 0x64C5, 0xF4BA,
- 0x64C7, 0xF7C9, 0x64CA, 0xCCAA, 0x64CD, 0xF0C3, 0x64CE, 0xCCD6,
- 0x64D2, 0xD0D3, 0x64D4, 0xD3BD, 0x64D8, 0xDBFB, 0x64DA, 0xCBE0,
- 0x64E1, 0xD3E4, 0x64E2, 0xF6F7, 0x64E5, 0xD5BA, 0x64E6, 0xF3CD,
- 0x64E7, 0xCBE1, 0x64EC, 0xEBF4, 0x64F2, 0xF4AD, 0x64F4, 0xFCAA,
- 0x64FA, 0xF7EC, 0x64FE, 0xE8F6, 0x6500, 0xDAE7, 0x6504, 0xF7CC,
- 0x6518, 0xE5C1, 0x651D, 0xE0EE, 0x6523, 0xD5FD, 0x652A, 0xCEE6,
- 0x652B, 0xFCAB, 0x652C, 0xD5BB, 0x652F, 0xF2A8, 0x6536, 0xE2A5,
- 0x6537, 0xCDB9, 0x6538, 0xEAF2, 0x6539, 0xCBC7, 0x653B, 0xCDF4,
- 0x653E, 0xDBAF, 0x653F, 0xEFD9, 0x6545, 0xCDBA, 0x6548, 0xFCF9,
- 0x654D, 0xDFF3, 0x654E, 0xCEE7, 0x654F, 0xDAC2, 0x6551, 0xCFAD,
- 0x6556, 0xE7F9, 0x6557, 0xF8A8, 0x655E, 0xF3E2, 0x6562, 0xCAF2,
- 0x6563, 0xDFA4, 0x6566, 0xD4C4, 0x656C, 0xCCD7, 0x656D, 0xE5C2,
- 0x6572, 0xCDBB, 0x6574, 0xEFDA, 0x6575, 0xEED8, 0x6577, 0xDDA7,
- 0x6578, 0xE2A6, 0x657E, 0xE0C0, 0x6582, 0xD6B0, 0x6583, 0xF8CA,
- 0x6585, 0xFCFA, 0x6587, 0xD9FE, 0x658C, 0xDEB0, 0x6590, 0xDDEC,
- 0x6591, 0xDAE8, 0x6597, 0xD4E0, 0x6599, 0xD6F9, 0x659B, 0xCDD7,
- 0x659C, 0xDED8, 0x659F, 0xF2F8, 0x65A1, 0xE4D6, 0x65A4, 0xD0C5,
- 0x65A5, 0xF4AE, 0x65A7, 0xDDA8, 0x65AB, 0xEDC5, 0x65AC, 0xF3D6,
- 0x65AF, 0xDED9, 0x65B0, 0xE3E6, 0x65B7, 0xD3A8, 0x65B9, 0xDBB0,
- 0x65BC, 0xE5DA, 0x65BD, 0xE3BF, 0x65C1, 0xDBB1, 0x65C5, 0xD5E9,
- 0x65CB, 0xE0C1, 0x65CC, 0xEFDB, 0x65CF, 0xF0E9, 0x65D2, 0xD7B2,
- 0x65D7, 0xD0FD, 0x65E0, 0xD9E9, 0x65E3, 0xD0FE, 0x65E5, 0xECED,
- 0x65E6, 0xD3A9, 0x65E8, 0xF2A9, 0x65E9, 0xF0C4, 0x65EC, 0xE2E2,
- 0x65ED, 0xE9EF, 0x65F1, 0xF9D1, 0x65F4, 0xE9D9, 0x65FA, 0xE8DA,
- 0x65FB, 0xDAC3, 0x65FC, 0xDAC4, 0x65FD, 0xD4C5, 0x65FF, 0xE7FA,
- 0x6606, 0xCDE0, 0x6607, 0xE3B0, 0x6609, 0xDBB2, 0x660A, 0xFBC4,
- 0x660C, 0xF3E3, 0x660E, 0xD9A5, 0x660F, 0xFBE7, 0x6610, 0xDDCB,
- 0x6611, 0xD0D4, 0x6613, 0xE6B6, 0x6614, 0xE0AE, 0x6615, 0xFDDA,
- 0x661E, 0xDCB5, 0x661F, 0xE0F8, 0x6620, 0xE7B1, 0x6625, 0xF5F0,
- 0x6627, 0xD8DC, 0x6628, 0xEDC6, 0x662D, 0xE1B9, 0x662F, 0xE3C0,
- 0x6630, 0xF9C0, 0x6631, 0xE9F0, 0x6634, 0xD9DB, 0x6636, 0xF3E4,
- 0x663A, 0xDCB6, 0x663B, 0xE4E9, 0x6641, 0xF0C5, 0x6642, 0xE3C1,
- 0x6643, 0xFCCC, 0x6644, 0xFCCD, 0x6649, 0xF2CB, 0x664B, 0xF2CC,
- 0x664F, 0xE4CF, 0x6659, 0xF1DB, 0x665B, 0xFAD9, 0x665D, 0xF1B8,
- 0x665E, 0xFDF5, 0x665F, 0xE0F9, 0x6664, 0xE7FB, 0x6665, 0xFCB7,
- 0x6666, 0xFCE4, 0x6667, 0xFBC5, 0x6668, 0xE3E7, 0x6669, 0xD8B9,
- 0x666B, 0xF6F8, 0x666E, 0xDCC5, 0x666F, 0xCCD8, 0x6673, 0xE0AF,
- 0x6674, 0xF4E7, 0x6676, 0xEFDC, 0x6677, 0xCFFC, 0x6678, 0xEFDD,
- 0x667A, 0xF2AA, 0x6684, 0xFDBE, 0x6687, 0xCAAC, 0x6688, 0xFDBB,
- 0x6689, 0xFDC7, 0x668E, 0xE7B2, 0x6690, 0xEAD1, 0x6691, 0xDFF4,
- 0x6696, 0xD1EC, 0x6697, 0xE4DE, 0x6698, 0xE5C3, 0x669D, 0xD9A6,
- 0x66A0, 0xCDBC, 0x66A2, 0xF3E5, 0x66AB, 0xEDD5, 0x66AE, 0xD9BA,
- 0x66B2, 0xEDE7, 0x66B3, 0xFBB5, 0x66B4, 0xF8EC, 0x66B9, 0xE0E7,
- 0x66BB, 0xCCD9, 0x66BE, 0xD4C6, 0x66C4, 0xE7A5, 0x66C6, 0xD5F5,
- 0x66C7, 0xD3BE, 0x66C9, 0xFCFB, 0x66D6, 0xE4F2, 0x66D9, 0xDFF5,
- 0x66DC, 0xE8F8, 0x66DD, 0xF8ED, 0x66E0, 0xCEC7, 0x66E6, 0xFDF6,
- 0x66F0, 0xE8D8, 0x66F2, 0xCDD8, 0x66F3, 0xE7D6, 0x66F4, 0xCCDA,
- 0x66F7, 0xCAE3, 0x66F8, 0xDFF6, 0x66F9, 0xF0C7, 0x66FA, 0xF0C6,
- 0x66FC, 0xD8BA, 0x66FE, 0xF1F4, 0x66FF, 0xF4F0, 0x6700, 0xF5CC,
- 0x6703, 0xFCE5, 0x6708, 0xEAC5, 0x6709, 0xEAF3, 0x670B, 0xDDDB,
- 0x670D, 0xDCD7, 0x6714, 0xDEFD, 0x6715, 0xF2F9, 0x6717, 0xD5C7,
- 0x671B, 0xD8D0, 0x671D, 0xF0C8, 0x671E, 0xD1A1, 0x671F, 0xD1A2,
- 0x6726, 0xD9D4, 0x6727, 0xD6E8, 0x6728, 0xD9CA, 0x672A, 0xDAB1,
- 0x672B, 0xD8C7, 0x672C, 0xDCE2, 0x672D, 0xF3CE, 0x672E, 0xF5F4,
- 0x6731, 0xF1B9, 0x6734, 0xDAD3, 0x6736, 0xF6EA, 0x673A, 0xCFF5,
- 0x673D, 0xFDAE, 0x6746, 0xCAD2, 0x6749, 0xDFB4, 0x674E, 0xD7DD,
- 0x674F, 0xFABA, 0x6750, 0xEEA7, 0x6751, 0xF5BD, 0x6753, 0xF8F5,
- 0x6756, 0xEDE8, 0x675C, 0xD4E1, 0x675E, 0xD1A3, 0x675F, 0xE1D6,
- 0x676D, 0xF9F8, 0x676F, 0xDBCA, 0x6770, 0xCBF9, 0x6771, 0xD4D4,
- 0x6773, 0xD9DC, 0x6775, 0xEEBE, 0x6777, 0xF7ED, 0x677B, 0xD2EE,
- 0x677E, 0xE1E6, 0x677F, 0xF7F9, 0x6787, 0xDDED, 0x6789, 0xE8DB,
- 0x678B, 0xDBB3, 0x678F, 0xD1F7, 0x6790, 0xE0B0, 0x6793, 0xD4E2,
- 0x6795, 0xF6D7, 0x6797, 0xD7F9, 0x679A, 0xD8DD, 0x679C, 0xCDFD,
- 0x679D, 0xF2AB, 0x67AF, 0xCDBD, 0x67B0, 0xF8C2, 0x67B3, 0xF2AC,
- 0x67B6, 0xCAAD, 0x67B7, 0xCAAE, 0x67B8, 0xCFAE, 0x67BE, 0xE3C2,
- 0x67C4, 0xDCB7, 0x67CF, 0xDBDA, 0x67D0, 0xD9BB, 0x67D1, 0xCAF3,
- 0x67D2, 0xF6D3, 0x67D3, 0xE6F8, 0x67D4, 0xEAF5, 0x67DA, 0xEAF6,
- 0x67DD, 0xF6F9, 0x67E9, 0xCFAF, 0x67EC, 0xCAD3, 0x67EF, 0xCAAF,
- 0x67F0, 0xD2B0, 0x67F1, 0xF1BA, 0x67F3, 0xD7B3, 0x67F4, 0xE3C3,
- 0x67F5, 0xF3FD, 0x67F6, 0xDEDA, 0x67FB, 0xDEDB, 0x67FE, 0xEFDE,
- 0x6812, 0xE2E3, 0x6813, 0xEEFB, 0x6816, 0xDFF7, 0x6817, 0xD7CA,
- 0x6821, 0xCEE8, 0x6822, 0xDBDB, 0x682A, 0xF1BB, 0x682F, 0xE9F1,
- 0x6838, 0xFAB7, 0x6839, 0xD0C6, 0x683C, 0xCCAB, 0x683D, 0xEEA8,
- 0x6840, 0xCBFA, 0x6841, 0xF9F9, 0x6842, 0xCCFD, 0x6843, 0xD3FE,
- 0x6848, 0xE4D0, 0x684E, 0xF2EE, 0x6850, 0xD4D5, 0x6851, 0xDFCD,
- 0x6853, 0xFCB8, 0x6854, 0xD1D0, 0x686D, 0xF2CD, 0x6876, 0xF7D2,
- 0x687F, 0xCAD4, 0x6881, 0xD5D9, 0x6885, 0xD8DE, 0x688F, 0xCDD9,
- 0x6893, 0xEEA9, 0x6894, 0xF6BC, 0x6897, 0xCCDB, 0x689D, 0xF0C9,
- 0x689F, 0xFCFC, 0x68A1, 0xE8C9, 0x68A2, 0xF4FE, 0x68A7, 0xE7FC,
- 0x68A8, 0xD7DE, 0x68AD, 0xDEDC, 0x68AF, 0xF0AC, 0x68B0, 0xCCFE,
- 0x68B1, 0xCDE1, 0x68B3, 0xE1BA, 0x68B5, 0xDBEF, 0x68B6, 0xDAB2,
- 0x68C4, 0xD1A5, 0x68C5, 0xDCB8, 0x68C9, 0xD8F6, 0x68CB, 0xD1A4,
- 0x68CD, 0xCDE2, 0x68D2, 0xDCEA, 0x68D5, 0xF0F7, 0x68D7, 0xF0CA,
- 0x68D8, 0xD0BE, 0x68DA, 0xDDDC, 0x68DF, 0xD4D6, 0x68E0, 0xD3D6,
- 0x68E7, 0xEDD0, 0x68E8, 0xCDA1, 0x68EE, 0xDFB5, 0x68F2, 0xDFF8,
- 0x68F9, 0xD4A1, 0x68FA, 0xCEB2, 0x6900, 0xE8CA, 0x6905, 0xEBF5,
- 0x690D, 0xE3D5, 0x690E, 0xF5D0, 0x6912, 0xF5A1, 0x6927, 0xD9A7,
- 0x6930, 0xE5AB, 0x693D, 0xE6CB, 0x693F, 0xF5F1, 0x694A, 0xE5C5,
- 0x6953, 0xF9A3, 0x6954, 0xE0DB, 0x6955, 0xF6EB, 0x6957, 0xCBF1,
- 0x6959, 0xD9EA, 0x695A, 0xF5A2, 0x695E, 0xD7D1, 0x6960, 0xD1F8,
- 0x6961, 0xEAF8, 0x6962, 0xEAF9, 0x6963, 0xDAB3, 0x6968, 0xEFDF,
- 0x696B, 0xF1EF, 0x696D, 0xE5F6, 0x696E, 0xEEBF, 0x696F, 0xE2E4,
- 0x6975, 0xD0BF, 0x6977, 0xFAAC, 0x6978, 0xF5D1, 0x6979, 0xE7B3,
- 0x6995, 0xE9BE, 0x699B, 0xF2CE, 0x699C, 0xDBB4, 0x69A5, 0xFCCE,
- 0x69A7, 0xDDEE, 0x69AE, 0xE7B4, 0x69B4, 0xD7B4, 0x69BB, 0xF7B4,
- 0x69C1, 0xCDBE, 0x69C3, 0xDAE9, 0x69CB, 0xCFB0, 0x69CC, 0xF7D9,
- 0x69CD, 0xF3E6, 0x69D0, 0xCED9, 0x69E8, 0xCEAA, 0x69EA, 0xCBC8,
- 0x69FB, 0xD0A7, 0x69FD, 0xF0CB, 0x69FF, 0xD0C7, 0x6A02, 0xE4C5,
- 0x6A0A, 0xDBE0, 0x6A11, 0xD5DA, 0x6A13, 0xD7A7, 0x6A17, 0xEEC0,
- 0x6A19, 0xF8F6, 0x6A1E, 0xF5D2, 0x6A1F, 0xEDE9, 0x6A21, 0xD9BC,
- 0x6A23, 0xE5C6, 0x6A35, 0xF5A3, 0x6A38, 0xDAD4, 0x6A39, 0xE2A7,
- 0x6A3A, 0xFBFC, 0x6A3D, 0xF1DC, 0x6A44, 0xCAF4, 0x6A48, 0xE8FA,
- 0x6A4B, 0xCEE9, 0x6A52, 0xE9F8, 0x6A53, 0xE2E5, 0x6A58, 0xD0B9,
- 0x6A59, 0xD4F2, 0x6A5F, 0xD1A6, 0x6A61, 0xDFCE, 0x6A6B, 0xFCF4,
- 0x6A80, 0xD3AA, 0x6A84, 0xCCAC, 0x6A89, 0xEFE0, 0x6A8D, 0xE5E5,
- 0x6A8E, 0xD0D5, 0x6A97, 0xDBFC, 0x6A9C, 0xFCE6, 0x6AA2, 0xCBFE,
- 0x6AA3, 0xEDEA, 0x6AB3, 0xDEB1, 0x6ABB, 0xF9E3, 0x6AC2, 0xD4A2,
- 0x6AC3, 0xCFF6, 0x6AD3, 0xD6D0, 0x6ADA, 0xD5EA, 0x6ADB, 0xF1EE,
- 0x6AF6, 0xFACB, 0x6AFB, 0xE5A1, 0x6B04, 0xD5B1, 0x6B0A, 0xCFED,
- 0x6B0C, 0xEDEB, 0x6B12, 0xD5B2, 0x6B16, 0xD5BC, 0x6B20, 0xFDE2,
- 0x6B21, 0xF3AD, 0x6B23, 0xFDDB, 0x6B32, 0xE9B0, 0x6B3A, 0xD1A7,
- 0x6B3D, 0xFDE3, 0x6B3E, 0xCEB3, 0x6B46, 0xFDE4, 0x6B47, 0xFACE,
- 0x6B4C, 0xCAB0, 0x6B4E, 0xF7A7, 0x6B50, 0xCFB1, 0x6B5F, 0xE6A2,
- 0x6B61, 0xFCB6, 0x6B62, 0xF2AD, 0x6B63, 0xEFE1, 0x6B64, 0xF3AE,
- 0x6B65, 0xDCC6, 0x6B66, 0xD9EB, 0x6B6A, 0xE8E0, 0x6B72, 0xE1A8,
- 0x6B77, 0xD5F6, 0x6B78, 0xCFFD, 0x6B7B, 0xDEDD, 0x6B7F, 0xD9D1,
- 0x6B83, 0xE4EA, 0x6B84, 0xF2CF, 0x6B86, 0xF7BF, 0x6B89, 0xE2E6,
- 0x6B8A, 0xE2A8, 0x6B96, 0xE3D6, 0x6B98, 0xEDD1, 0x6B9E, 0xE9F9,
- 0x6BAE, 0xD6B1, 0x6BAF, 0xDEB2, 0x6BB2, 0xE0E8, 0x6BB5, 0xD3AB,
- 0x6BB7, 0xEBDC, 0x6BBA, 0xDFAF, 0x6BBC, 0xCAC3, 0x6BBF, 0xEEFC,
- 0x6BC1, 0xFDC3, 0x6BC5, 0xEBF6, 0x6BC6, 0xCFB2, 0x6BCB, 0xD9EC,
- 0x6BCD, 0xD9BD, 0x6BCF, 0xD8DF, 0x6BD2, 0xD4B8, 0x6BD3, 0xEBBE,
- 0x6BD4, 0xDDEF, 0x6BD6, 0xDDF0, 0x6BD7, 0xDDF1, 0x6BD8, 0xDDF2,
- 0x6BDB, 0xD9BE, 0x6BEB, 0xFBC6, 0x6BEC, 0xCFB3, 0x6C08, 0xEEFD,
- 0x6C0F, 0xE4AB, 0x6C11, 0xDAC5, 0x6C13, 0xD8EC, 0x6C23, 0xD1A8,
- 0x6C34, 0xE2A9, 0x6C37, 0xDEBC, 0x6C38, 0xE7B5, 0x6C3E, 0xDBF0,
- 0x6C40, 0xEFE2, 0x6C41, 0xF1F0, 0x6C42, 0xCFB4, 0x6C4E, 0xDBF1,
- 0x6C50, 0xE0B1, 0x6C55, 0xDFA5, 0x6C57, 0xF9D2, 0x6C5A, 0xE7FD,
- 0x6C5D, 0xE6A3, 0x6C5E, 0xFBF1, 0x6C5F, 0xCBB0, 0x6C60, 0xF2AE,
- 0x6C68, 0xCDE7, 0x6C6A, 0xE8DC, 0x6C6D, 0xE7D7, 0x6C70, 0xF7C0,
- 0x6C72, 0xD0E3, 0x6C76, 0xDAA1, 0x6C7A, 0xCCBD, 0x6C7D, 0xD1A9,
- 0x6C7E, 0xDDCC, 0x6C81, 0xE3FE, 0x6C82, 0xD1AA, 0x6C83, 0xE8AA,
- 0x6C85, 0xEAB6, 0x6C86, 0xF9FA, 0x6C87, 0xE6CC, 0x6C88, 0xF6D8,
- 0x6C8C, 0xD4C7, 0x6C90, 0xD9CB, 0x6C92, 0xD9D2, 0x6C93, 0xD3CB,
- 0x6C94, 0xD8F7, 0x6C95, 0xDAA9, 0x6C96, 0xF5F8, 0x6C99, 0xDEDE,
- 0x6C9A, 0xF2AF, 0x6C9B, 0xF8A9, 0x6CAB, 0xD8C8, 0x6CAE, 0xEEC1,
- 0x6CB3, 0xF9C1, 0x6CB8, 0xDDF3, 0x6CB9, 0xEAFA, 0x6CBB, 0xF6BD,
- 0x6CBC, 0xE1BB, 0x6CBD, 0xCDBF, 0x6CBE, 0xF4D4, 0x6CBF, 0xE6CD,
- 0x6CC1, 0xFCCF, 0x6CC2, 0xFBA2, 0x6CC4, 0xE0DC, 0x6CC9, 0xF4BB,
- 0x6CCA, 0xDAD5, 0x6CCC, 0xF9B2, 0x6CD3, 0xFBF2, 0x6CD5, 0xDBF6,
- 0x6CD7, 0xDEDF, 0x6CDB, 0xDBF2, 0x6CE1, 0xF8DC, 0x6CE2, 0xF7EE,
- 0x6CE3, 0xEBE8, 0x6CE5, 0xD2FA, 0x6CE8, 0xF1BC, 0x6CEB, 0xFADA,
- 0x6CEE, 0xDAEA, 0x6CEF, 0xDAC6, 0x6CF0, 0xF7C1, 0x6CF3, 0xE7B6,
- 0x6D0B, 0xE5C7, 0x6D0C, 0xD6AC, 0x6D11, 0xDCC7, 0x6D17, 0xE1A9,
- 0x6D19, 0xE2AA, 0x6D1B, 0xD5A6, 0x6D1E, 0xD4D7, 0x6D25, 0xF2D0,
- 0x6D27, 0xEAFB, 0x6D29, 0xE0DD, 0x6D2A, 0xFBF3, 0x6D32, 0xF1BD,
- 0x6D35, 0xE2E7, 0x6D36, 0xFDD7, 0x6D38, 0xCEC8, 0x6D39, 0xEAB7,
- 0x6D3B, 0xFCC0, 0x6D3D, 0xFDE7, 0x6D3E, 0xF7EF, 0x6D41, 0xD7B5,
- 0x6D59, 0xEFBA, 0x6D5A, 0xF1DD, 0x6D5C, 0xDEB3, 0x6D63, 0xE8CB,
- 0x6D66, 0xF8DD, 0x6D69, 0xFBC7, 0x6D6A, 0xD5C8, 0x6D6C, 0xD7DF,
- 0x6D6E, 0xDDA9, 0x6D74, 0xE9B1, 0x6D77, 0xFAAD, 0x6D78, 0xF6D9,
- 0x6D79, 0xFAF4, 0x6D7F, 0xF8AA, 0x6D85, 0xE6EE, 0x6D87, 0xCCDC,
- 0x6D88, 0xE1BC, 0x6D89, 0xE0EF, 0x6D8C, 0xE9BF, 0x6D8D, 0xFCFD,
- 0x6D8E, 0xE6CE, 0x6D91, 0xE1D7, 0x6D93, 0xE6CF, 0x6D95, 0xF4F1,
- 0x6DAF, 0xE4F3, 0x6DB2, 0xE4FB, 0x6DB5, 0xF9E4, 0x6DC0, 0xEFE3,
- 0x6DC3, 0xCFEE, 0x6DC4, 0xF6BE, 0x6DC5, 0xE0B2, 0x6DC6, 0xFCFE,
- 0x6DC7, 0xD1AB, 0x6DCB, 0xD7FA, 0x6DCF, 0xFBC8, 0x6DD1, 0xE2D7,
- 0x6DD8, 0xD4A3, 0x6DD9, 0xF0F8, 0x6DDA, 0xD7A8, 0x6DDE, 0xE1E7,
- 0x6DE1, 0xD3BF, 0x6DE8, 0xEFE4, 0x6DEA, 0xD7C5, 0x6DEB, 0xEBE2,
- 0x6DEE, 0xFCE7, 0x6DF1, 0xE4A2, 0x6DF3, 0xE2E8, 0x6DF5, 0xE6D0,
- 0x6DF7, 0xFBE8, 0x6DF8, 0xF4E8, 0x6DF9, 0xE5F4, 0x6DFA, 0xF4BC,
- 0x6DFB, 0xF4D5, 0x6E17, 0xDFB6, 0x6E19, 0xFCB9, 0x6E1A, 0xEEC2,
- 0x6E1B, 0xCAF5, 0x6E1F, 0xEFE5, 0x6E20, 0xCBE2, 0x6E21, 0xD4A4,
- 0x6E23, 0xDEE0, 0x6E24, 0xDAFD, 0x6E25, 0xE4C6, 0x6E26, 0xE8BE,
- 0x6E2B, 0xE0DE, 0x6E2C, 0xF6B4, 0x6E2D, 0xEAD2, 0x6E2F, 0xF9FB,
- 0x6E32, 0xE0C2, 0x6E34, 0xCAE4, 0x6E36, 0xE7B7, 0x6E38, 0xEAFD,
- 0x6E3A, 0xD9DD, 0x6E3C, 0xDAB4, 0x6E3D, 0xEEAA, 0x6E3E, 0xFBE9,
- 0x6E43, 0xDBCB, 0x6E44, 0xDAB5, 0x6E4A, 0xF1BE, 0x6E4D, 0xD3AC,
- 0x6E56, 0xFBC9, 0x6E58, 0xDFCF, 0x6E5B, 0xD3C0, 0x6E5C, 0xE3D7,
- 0x6E5E, 0xEFE6, 0x6E5F, 0xFCD0, 0x6E67, 0xE9C0, 0x6E6B, 0xF5D3,
- 0x6E6E, 0xECDC, 0x6E6F, 0xF7B7, 0x6E72, 0xEAB8, 0x6E73, 0xD1F9,
- 0x6E7A, 0xDCC8, 0x6E90, 0xEAB9, 0x6E96, 0xF1DE, 0x6E9C, 0xD7B6,
- 0x6E9D, 0xCFB5, 0x6E9F, 0xD9A8, 0x6EA2, 0xECEE, 0x6EA5, 0xDDAA,
- 0x6EAA, 0xCDA2, 0x6EAB, 0xE8AE, 0x6EAF, 0xE1BD, 0x6EB1, 0xF2D1,
- 0x6EB6, 0xE9C1, 0x6EBA, 0xD2FC, 0x6EC2, 0xDBB5, 0x6EC4, 0xF3E7,
- 0x6EC5, 0xD8FE, 0x6EC9, 0xFCD1, 0x6ECB, 0xEDB2, 0x6ECC, 0xF4AF,
- 0x6ECE, 0xFBA3, 0x6ED1, 0xFCC1, 0x6ED3, 0xEEAB, 0x6ED4, 0xD4A5,
- 0x6EEF, 0xF4F2, 0x6EF4, 0xEED9, 0x6EF8, 0xFBCA, 0x6EFE, 0xCDE3,
- 0x6EFF, 0xD8BB, 0x6F01, 0xE5DB, 0x6F02, 0xF8F7, 0x6F06, 0xF6D4,
- 0x6F0F, 0xD7A9, 0x6F11, 0xCBC9, 0x6F14, 0xE6D1, 0x6F15, 0xF0CC,
- 0x6F20, 0xD8AE, 0x6F22, 0xF9D3, 0x6F23, 0xD5FE, 0x6F2B, 0xD8BC,
- 0x6F2C, 0xF2B0, 0x6F31, 0xE2AB, 0x6F32, 0xF3E8, 0x6F38, 0xEFC2,
- 0x6F3F, 0xEDEC, 0x6F41, 0xE7B8, 0x6F51, 0xDAFE, 0x6F54, 0xCCBE,
- 0x6F57, 0xF2FC, 0x6F58, 0xDAEB, 0x6F5A, 0xE2D8, 0x6F5B, 0xEDD6,
- 0x6F5E, 0xD6D1, 0x6F5F, 0xE0B3, 0x6F62, 0xFCD2, 0x6F64, 0xEBC8,
- 0x6F6D, 0xD3C1, 0x6F6E, 0xF0CD, 0x6F70, 0xCFF7, 0x6F7A, 0xEDD2,
- 0x6F7C, 0xD4D8, 0x6F7D, 0xDCC9, 0x6F7E, 0xD7F1, 0x6F81, 0xDFBB,
- 0x6F84, 0xF3A5, 0x6F88, 0xF4CD, 0x6F8D, 0xF1BF, 0x6F8E, 0xF8B1,
- 0x6F90, 0xE9FA, 0x6F94, 0xFBCB, 0x6F97, 0xCAD5, 0x6FA3, 0xF9D4,
- 0x6FA4, 0xF7CA, 0x6FA7, 0xD6C8, 0x6FAE, 0xFCE8, 0x6FAF, 0xF3BD,
- 0x6FB1, 0xEEFE, 0x6FB3, 0xE7FE, 0x6FB9, 0xD3C2, 0x6FBE, 0xD3B6,
- 0x6FC0, 0xCCAD, 0x6FC1, 0xF6FA, 0x6FC2, 0xD6B2, 0x6FC3, 0xD2D8,
- 0x6FCA, 0xE7D8, 0x6FD5, 0xE3A5, 0x6FDA, 0xE7B9, 0x6FDF, 0xF0AD,
- 0x6FE0, 0xFBCC, 0x6FE1, 0xEBA1, 0x6FE4, 0xD4A6, 0x6FE9, 0xFBCD,
- 0x6FEB, 0xD5BD, 0x6FEC, 0xF1DF, 0x6FEF, 0xF6FB, 0x6FF1, 0xDEB4,
- 0x6FFE, 0xD5EB, 0x7001, 0xE5C8, 0x7005, 0xFBA4, 0x7006, 0xD4B9,
- 0x7009, 0xDEE1, 0x700B, 0xE4A3, 0x700F, 0xD7B7, 0x7011, 0xF8EE,
- 0x7015, 0xDEB5, 0x7018, 0xD6D2, 0x701A, 0xF9D5, 0x701B, 0xE7BA,
- 0x701C, 0xEBD5, 0x701D, 0xD5F7, 0x701E, 0xEFE7, 0x701F, 0xE1BE,
- 0x7023, 0xFAAE, 0x7027, 0xD6E9, 0x7028, 0xD6EE, 0x702F, 0xE7BB,
- 0x7037, 0xECCB, 0x703E, 0xD5B3, 0x704C, 0xCEB4, 0x7050, 0xFBA5,
- 0x7051, 0xE1EE, 0x7058, 0xF7A8, 0x705D, 0xFBCE, 0x7063, 0xD8BD,
- 0x706B, 0xFBFD, 0x7070, 0xFCE9, 0x7078, 0xCFB6, 0x707C, 0xEDC7,
- 0x707D, 0xEEAC, 0x7085, 0xCCDD, 0x708A, 0xF6A7, 0x708E, 0xE6FA,
- 0x7092, 0xF5A4, 0x7098, 0xFDDC, 0x7099, 0xEDB3, 0x709A, 0xCEC9,
- 0x70A1, 0xEFE8, 0x70A4, 0xE1BF, 0x70AB, 0xFADB, 0x70AC, 0xCBE3,
- 0x70AD, 0xF7A9, 0x70AF, 0xFBA6, 0x70B3, 0xDCB9, 0x70B7, 0xF1C0,
- 0x70B8, 0xEDC8, 0x70B9, 0xEFC3, 0x70C8, 0xD6AD, 0x70CB, 0xFDCE,
- 0x70CF, 0xE8A1, 0x70D8, 0xFBF4, 0x70D9, 0xD5A7, 0x70DD, 0xF1F6,
- 0x70DF, 0xE6D3, 0x70F1, 0xCCDE, 0x70F9, 0xF8B2, 0x70FD, 0xDCEB,
- 0x7104, 0xFDB6, 0x7109, 0xE5EA, 0x710C, 0xF1E0, 0x7119, 0xDBCC,
- 0x711A, 0xDDCD, 0x711E, 0xD4C8, 0x7121, 0xD9ED, 0x7126, 0xF5A5,
- 0x7130, 0xE6FB, 0x7136, 0xE6D4, 0x7147, 0xFDC8, 0x7149, 0xD6A1,
- 0x714A, 0xFDBF, 0x714C, 0xFCD3, 0x714E, 0xEFA1, 0x7150, 0xE7BC,
- 0x7156, 0xD1EE, 0x7159, 0xE6D5, 0x715C, 0xE9F2, 0x715E, 0xDFB0,
- 0x7164, 0xD8E0, 0x7165, 0xFCBA, 0x7166, 0xFDAF, 0x7167, 0xF0CE,
- 0x7169, 0xDBE1, 0x716C, 0xE5C9, 0x716E, 0xEDB4, 0x717D, 0xE0C3,
- 0x7184, 0xE3D8, 0x7189, 0xE9FB, 0x718A, 0xEAA8, 0x718F, 0xFDB7,
- 0x7192, 0xFBA7, 0x7194, 0xE9C2, 0x7199, 0xFDF7, 0x719F, 0xE2D9,
- 0x71A2, 0xDCEC, 0x71AC, 0xE8A2, 0x71B1, 0xE6F0, 0x71B9, 0xFDF8,
- 0x71BA, 0xFDF9, 0x71BE, 0xF6BF, 0x71C1, 0xE7A7, 0x71C3, 0xE6D7,
- 0x71C8, 0xD4F3, 0x71C9, 0xD4C9, 0x71CE, 0xD6FA, 0x71D0, 0xD7F2,
- 0x71D2, 0xE1C0, 0x71D4, 0xDBE2, 0x71D5, 0xE6D8, 0x71DF, 0xE7BD,
- 0x71E5, 0xF0CF, 0x71E6, 0xF3BE, 0x71E7, 0xE2AC, 0x71ED, 0xF5B7,
- 0x71EE, 0xE0F0, 0x71FB, 0xFDB8, 0x71FC, 0xE3E8, 0x71FE, 0xD4A7,
- 0x71FF, 0xE8FC, 0x7200, 0xFAD2, 0x7206, 0xF8EF, 0x7210, 0xD6D3,
- 0x721B, 0xD5B4, 0x722A, 0xF0D0, 0x722C, 0xF7F0, 0x722D, 0xEEB3,
- 0x7230, 0xEABA, 0x7232, 0xEAD3, 0x7235, 0xEDC9, 0x7236, 0xDDAB,
- 0x723A, 0xE5AC, 0x723B, 0xFDA1, 0x723D, 0xDFD0, 0x723E, 0xECB3,
- 0x7240, 0xDFD1, 0x7246, 0xEDED, 0x7247, 0xF8B8, 0x7248, 0xF7FA,
- 0x724C, 0xF8AB, 0x7252, 0xF4E0, 0x7258, 0xD4BA, 0x7259, 0xE4B3,
- 0x725B, 0xE9DA, 0x725D, 0xDEB6, 0x725F, 0xD9BF, 0x7261, 0xD9C0,
- 0x7262, 0xD6EF, 0x7267, 0xD9CC, 0x7269, 0xDAAA, 0x7272, 0xDFE5,
- 0x7279, 0xF7E5, 0x727D, 0xCCB2, 0x7280, 0xDFF9, 0x7281, 0xD7E0,
- 0x72A2, 0xD4BB, 0x72A7, 0xFDFA, 0x72AC, 0xCCB3, 0x72AF, 0xDBF3,
- 0x72C0, 0xDFD2, 0x72C2, 0xCECA, 0x72C4, 0xEEDA, 0x72CE, 0xE4E4,
- 0x72D0, 0xFBCF, 0x72D7, 0xCFB7, 0x72D9, 0xEEC3, 0x72E1, 0xCEEA,
- 0x72E9, 0xE2AD, 0x72F8, 0xD7E1, 0x72F9, 0xFAF5, 0x72FC, 0xD5C9,
- 0x72FD, 0xF8AC, 0x730A, 0xE7D9, 0x7316, 0xF3E9, 0x731B, 0xD8ED,
- 0x731C, 0xE3C4, 0x731D, 0xF0F1, 0x7325, 0xE8E5, 0x7329, 0xE0FA,
- 0x732A, 0xEEC4, 0x732B, 0xD9DE, 0x7336, 0xEBA2, 0x7337, 0xEBA3,
- 0x733E, 0xFCC2, 0x733F, 0xEABB, 0x7344, 0xE8AB, 0x7345, 0xDEE2,
- 0x7350, 0xEDEF, 0x7352, 0xE8A3, 0x7357, 0xCFF1, 0x7368, 0xD4BC,
- 0x736A, 0xFCEA, 0x7370, 0xE7BE, 0x7372, 0xFCF2, 0x7375, 0xD6B4,
- 0x7378, 0xE2AE, 0x737A, 0xD3B7, 0x737B, 0xFACC, 0x7384, 0xFADC,
- 0x7386, 0xEDB5, 0x7387, 0xE1E3, 0x7389, 0xE8AC, 0x738B, 0xE8DD,
- 0x738E, 0xEFE9, 0x7394, 0xF4BD, 0x7396, 0xCFB8, 0x7397, 0xE9DB,
- 0x7398, 0xD1AC, 0x739F, 0xDAC7, 0x73A7, 0xEBC9, 0x73A9, 0xE8CC,
- 0x73AD, 0xDEB7, 0x73B2, 0xD6BC, 0x73B3, 0xD3E5, 0x73B9, 0xFADD,
- 0x73C0, 0xDAD6, 0x73C2, 0xCAB1, 0x73C9, 0xDAC8, 0x73CA, 0xDFA6,
- 0x73CC, 0xF9B3, 0x73CD, 0xF2D2, 0x73CF, 0xCAC4, 0x73D6, 0xCECB,
- 0x73D9, 0xCDF5, 0x73DD, 0xFDB0, 0x73DE, 0xD5A8, 0x73E0, 0xF1C1,
- 0x73E3, 0xE2E9, 0x73E4, 0xDCCA, 0x73E5, 0xECB4, 0x73E6, 0xFAC0,
- 0x73E9, 0xFBA8, 0x73EA, 0xD0A8, 0x73ED, 0xDAEC, 0x73F7, 0xD9EE,
- 0x73F9, 0xE0FB, 0x73FD, 0xEFEA, 0x73FE, 0xFADE, 0x7401, 0xE0C4,
- 0x7403, 0xCFB9, 0x7405, 0xD5CA, 0x7406, 0xD7E2, 0x7407, 0xE2AF,
- 0x7409, 0xD7B8, 0x7413, 0xE8CD, 0x741B, 0xF6DA, 0x7420, 0xEFA2,
- 0x7421, 0xE2DA, 0x7422, 0xF6FC, 0x7425, 0xFBD0, 0x7426, 0xD1AD,
- 0x7428, 0xCDE4, 0x742A, 0xD1AE, 0x742B, 0xDCED, 0x742C, 0xE8CE,
- 0x742E, 0xF0F9, 0x742F, 0xCEB5, 0x7430, 0xE6FC, 0x7433, 0xD7FB,
- 0x7434, 0xD0D6, 0x7435, 0xDDF5, 0x7436, 0xF7F1, 0x7438, 0xF6FD,
- 0x743A, 0xDBF7, 0x743F, 0xFBEA, 0x7440, 0xE9DC, 0x7441, 0xD9C1,
- 0x7443, 0xF5F2, 0x7444, 0xE0C5, 0x744B, 0xEAD4, 0x7455, 0xF9C2,
- 0x7457, 0xEABC, 0x7459, 0xD2C5, 0x745A, 0xFBD1, 0x745B, 0xE7C0,
- 0x745C, 0xEBA5, 0x745E, 0xDFFA, 0x745F, 0xE3A2, 0x7460, 0xD7B9,
- 0x7462, 0xE9C3, 0x7464, 0xE8FD, 0x7465, 0xE8AF, 0x7468, 0xF2D3,
- 0x7469, 0xFBA9, 0x746A, 0xD8A5, 0x746F, 0xD5CB, 0x747E, 0xD0C8,
- 0x7482, 0xD1AF, 0x7483, 0xD7E3, 0x7487, 0xE0C6, 0x7489, 0xD6A2,
- 0x748B, 0xEDF0, 0x7498, 0xD7F3, 0x749C, 0xFCD4, 0x749E, 0xDAD7,
- 0x749F, 0xCCDF, 0x74A1, 0xF2D4, 0x74A3, 0xD1B0, 0x74A5, 0xCCE0,
- 0x74A7, 0xDBFD, 0x74A8, 0xF3BF, 0x74AA, 0xF0D1, 0x74B0, 0xFCBB,
- 0x74B2, 0xE2B0, 0x74B5, 0xE6A5, 0x74B9, 0xE2DB, 0x74BD, 0xDFDE,
- 0x74BF, 0xE0C7, 0x74C6, 0xF2EF, 0x74CA, 0xCCE1, 0x74CF, 0xD6EA,
- 0x74D4, 0xE7C2, 0x74D8, 0xCEB6, 0x74DA, 0xF3C0, 0x74DC, 0xCDFE,
- 0x74E0, 0xFBD2, 0x74E2, 0xF8F8, 0x74E3, 0xF7FB, 0x74E6, 0xE8BF,
- 0x74EE, 0xE8B7, 0x74F7, 0xEDB6, 0x7501, 0xDCBA, 0x7504, 0xCCB4,
- 0x7511, 0xF1F7, 0x7515, 0xE8B8, 0x7518, 0xCAF6, 0x751A, 0xE4A4,
- 0x751B, 0xF4D6, 0x751F, 0xDFE6, 0x7523, 0xDFA7, 0x7525, 0xDFE7,
- 0x7526, 0xE1C1, 0x7528, 0xE9C4, 0x752B, 0xDCCB, 0x752C, 0xE9C5,
- 0x7530, 0xEFA3, 0x7531, 0xEBA6, 0x7532, 0xCBA3, 0x7533, 0xE3E9,
- 0x7537, 0xD1FB, 0x7538, 0xEFA4, 0x753A, 0xEFEB, 0x7547, 0xD0B4,
- 0x754C, 0xCDA3, 0x754F, 0xE8E6, 0x7551, 0xEFA5, 0x7553, 0xD3CC,
- 0x7554, 0xDAED, 0x7559, 0xD7BA, 0x755B, 0xF2D5, 0x755C, 0xF5E5,
- 0x755D, 0xD9EF, 0x7562, 0xF9B4, 0x7565, 0xD5D4, 0x7566, 0xFDCF,
- 0x756A, 0xDBE3, 0x756F, 0xF1E1, 0x7570, 0xECB6, 0x7575, 0xFBFE,
- 0x7576, 0xD3D7, 0x7578, 0xD1B1, 0x757A, 0xCBB1, 0x757F, 0xD1B2,
- 0x7586, 0xCBB2, 0x7587, 0xF1C2, 0x758A, 0xF4E1, 0x758B, 0xF9B5,
- 0x758E, 0xE1C3, 0x758F, 0xE1C2, 0x7591, 0xEBF7, 0x759D, 0xDFA8,
- 0x75A5, 0xCBCA, 0x75AB, 0xE6B9, 0x75B1, 0xF8DE, 0x75B2, 0xF9AA,
- 0x75B3, 0xCAF7, 0x75B5, 0xEDB7, 0x75B8, 0xD3B8, 0x75B9, 0xF2D6,
- 0x75BC, 0xD4D9, 0x75BD, 0xEEC5, 0x75BE, 0xF2F0, 0x75C2, 0xCAB2,
- 0x75C5, 0xDCBB, 0x75C7, 0xF1F8, 0x75CD, 0xECB7, 0x75D2, 0xE5CA,
- 0x75D4, 0xF6C0, 0x75D5, 0xFDDD, 0x75D8, 0xD4E3, 0x75D9, 0xCCE2,
- 0x75DB, 0xF7D4, 0x75E2, 0xD7E5, 0x75F0, 0xD3C3, 0x75F2, 0xD8A6,
- 0x75F4, 0xF6C1, 0x75FA, 0xDDF6, 0x75FC, 0xCDC0, 0x7600, 0xE5DC,
- 0x760D, 0xE5CB, 0x7619, 0xE1C4, 0x761F, 0xE8B0, 0x7620, 0xF4B0,
- 0x7621, 0xF3EA, 0x7622, 0xDAEE, 0x7624, 0xD7BB, 0x7626, 0xE2B1,
- 0x763B, 0xD7AA, 0x7642, 0xD6FB, 0x764C, 0xE4DF, 0x764E, 0xCAD6,
- 0x7652, 0xEBA8, 0x7656, 0xDBFE, 0x7661, 0xF6C2, 0x7664, 0xEFBB,
- 0x7669, 0xD4FD, 0x766C, 0xE0C8, 0x7670, 0xE8B9, 0x7672, 0xEFA6,
- 0x7678, 0xCDA4, 0x767B, 0xD4F4, 0x767C, 0xDBA1, 0x767D, 0xDBDC,
- 0x767E, 0xDBDD, 0x7684, 0xEEDC, 0x7686, 0xCBCB, 0x7687, 0xFCD5,
- 0x768E, 0xCEEB, 0x7690, 0xCDC1, 0x7693, 0xFBD3, 0x76AE, 0xF9AB,
- 0x76BA, 0xF5D4, 0x76BF, 0xD9A9, 0x76C2, 0xE9DD, 0x76C3, 0xDBCD,
- 0x76C6, 0xDDCE, 0x76C8, 0xE7C3, 0x76CA, 0xECCC, 0x76D2, 0xF9EC,
- 0x76D6, 0xCBCC, 0x76DB, 0xE0FC, 0x76DC, 0xD4A8, 0x76DE, 0xEDD3,
- 0x76DF, 0xD8EF, 0x76E1, 0xF2D7, 0x76E3, 0xCAF8, 0x76E4, 0xDAEF,
- 0x76E7, 0xD6D4, 0x76EE, 0xD9CD, 0x76F2, 0xD8EE, 0x76F4, 0xF2C1,
- 0x76F8, 0xDFD3, 0x76FC, 0xDAF0, 0x76FE, 0xE2EA, 0x7701, 0xE0FD,
- 0x7704, 0xD8F8, 0x7708, 0xF7AF, 0x7709, 0xDAB6, 0x770B, 0xCAD7,
- 0x771E, 0xF2D8, 0x7720, 0xD8F9, 0x7729, 0xFADF, 0x7737, 0xCFEF,
- 0x7738, 0xD9C2, 0x773A, 0xF0D2, 0x773C, 0xE4D1, 0x7740, 0xF3B7,
- 0x774D, 0xFAE0, 0x775B, 0xEFEC, 0x7761, 0xE2B2, 0x7763, 0xD4BD,
- 0x7766, 0xD9CE, 0x776B, 0xF4E2, 0x7779, 0xD4A9, 0x777E, 0xCDC2,
- 0x777F, 0xE7DA, 0x778B, 0xF2D9, 0x7791, 0xD9AA, 0x779E, 0xD8BE,
- 0x77A5, 0xDCAD, 0x77AC, 0xE2EB, 0x77AD, 0xD6FC, 0x77B0, 0xCAF9,
- 0x77B3, 0xD4DA, 0x77BB, 0xF4D7, 0x77BC, 0xCCA1, 0x77BF, 0xCFBA,
- 0x77D7, 0xF5B8, 0x77DB, 0xD9C3, 0x77DC, 0xD0E8, 0x77E2, 0xE3C5,
- 0x77E3, 0xEBF8, 0x77E5, 0xF2B1, 0x77E9, 0xCFBB, 0x77ED, 0xD3AD,
- 0x77EE, 0xE8E1, 0x77EF, 0xCEEC, 0x77F3, 0xE0B4, 0x7802, 0xDEE3,
- 0x7812, 0xDDF7, 0x7825, 0xF2B2, 0x7826, 0xF3F6, 0x7827, 0xF6DB,
- 0x782C, 0xD7FE, 0x7832, 0xF8DF, 0x7834, 0xF7F2, 0x7845, 0xD0A9,
- 0x784F, 0xE6DA, 0x785D, 0xF5A6, 0x786B, 0xD7BC, 0x786C, 0xCCE3,
- 0x786F, 0xE6DB, 0x787C, 0xDDDD, 0x7881, 0xD1B3, 0x7887, 0xEFED,
- 0x788C, 0xD6DE, 0x788D, 0xE4F4, 0x788E, 0xE1EF, 0x7891, 0xDDF8,
- 0x7897, 0xE8CF, 0x78A3, 0xCAE5, 0x78A7, 0xDCA1, 0x78A9, 0xE0B5,
- 0x78BA, 0xFCAC, 0x78BB, 0xFCAD, 0x78BC, 0xD8A7, 0x78C1, 0xEDB8,
- 0x78C5, 0xDBB6, 0x78CA, 0xD6F0, 0x78CB, 0xF3AF, 0x78CE, 0xCDA5,
- 0x78D0, 0xDAF1, 0x78E8, 0xD8A8, 0x78EC, 0xCCE4, 0x78EF, 0xD1B4,
- 0x78F5, 0xCAD8, 0x78FB, 0xDAF2, 0x7901, 0xF5A7, 0x790E, 0xF5A8,
- 0x7916, 0xE6A6, 0x792A, 0xD5EC, 0x792B, 0xD5F8, 0x792C, 0xDAF3,
- 0x793A, 0xE3C6, 0x793E, 0xDEE4, 0x7940, 0xDEE5, 0x7941, 0xD1B5,
- 0x7947, 0xD1B6, 0x7948, 0xD1B7, 0x7949, 0xF2B3, 0x7950, 0xE9DE,
- 0x7956, 0xF0D3, 0x7957, 0xF2B4, 0x795A, 0xF0D4, 0x795B, 0xCBE4,
- 0x795C, 0xFBD4, 0x795D, 0xF5E6, 0x795E, 0xE3EA, 0x7960, 0xDEE6,
- 0x7965, 0xDFD4, 0x7968, 0xF8F9, 0x796D, 0xF0AE, 0x797A, 0xD1B8,
- 0x797F, 0xD6DF, 0x7981, 0xD0D7, 0x798D, 0xFCA1, 0x798E, 0xEFEE,
- 0x798F, 0xDCD8, 0x7991, 0xE9DF, 0x79A6, 0xE5DD, 0x79A7, 0xFDFB,
- 0x79AA, 0xE0C9, 0x79AE, 0xD6C9, 0x79B1, 0xD4AA, 0x79B3, 0xE5CC,
- 0x79B9, 0xE9E0, 0x79BD, 0xD0D8, 0x79BE, 0xFCA2, 0x79BF, 0xD4BE,
- 0x79C0, 0xE2B3, 0x79C1, 0xDEE7, 0x79C9, 0xDCBC, 0x79CA, 0xD2B6,
- 0x79CB, 0xF5D5, 0x79D1, 0xCEA1, 0x79D2, 0xF5A9, 0x79D5, 0xDDF9,
- 0x79D8, 0xDDFA, 0x79DF, 0xF0D5, 0x79E4, 0xF6DF, 0x79E6, 0xF2DA,
- 0x79E7, 0xE4EB, 0x79E9, 0xF2F1, 0x79FB, 0xECB9, 0x7A00, 0xFDFC,
- 0x7A05, 0xE1AA, 0x7A08, 0xCAD9, 0x7A0B, 0xEFEF, 0x7A0D, 0xF5AA,
- 0x7A14, 0xECF9, 0x7A17, 0xF8AD, 0x7A19, 0xF2C2, 0x7A1A, 0xF6C3,
- 0x7A1C, 0xD7D2, 0x7A1F, 0xF9A2, 0x7A20, 0xF0D6, 0x7A2E, 0xF0FA,
- 0x7A31, 0xF6E0, 0x7A36, 0xE9F3, 0x7A37, 0xF2C3, 0x7A3B, 0xD4AB,
- 0x7A3C, 0xCAB3, 0x7A3D, 0xCDA6, 0x7A3F, 0xCDC3, 0x7A40, 0xCDDA,
- 0x7A46, 0xD9CF, 0x7A49, 0xF6C4, 0x7A4D, 0xEEDD, 0x7A4E, 0xE7C4,
- 0x7A57, 0xE2B4, 0x7A61, 0xDFE2, 0x7A62, 0xE7DB, 0x7A69, 0xE8B1,
- 0x7A6B, 0xFCAE, 0x7A70, 0xE5CD, 0x7A74, 0xFAEB, 0x7A76, 0xCFBC,
- 0x7A79, 0xCFE2, 0x7A7A, 0xCDF6, 0x7A7D, 0xEFF0, 0x7A7F, 0xF4BE,
- 0x7A81, 0xD4CD, 0x7A84, 0xF3B8, 0x7A88, 0xE9A1, 0x7A92, 0xF2F2,
- 0x7A93, 0xF3EB, 0x7A95, 0xF0D7, 0x7A98, 0xCFD7, 0x7A9F, 0xCFDF,
- 0x7AA9, 0xE8C0, 0x7AAA, 0xE8C1, 0x7AAE, 0xCFE3, 0x7AAF, 0xE9A2,
- 0x7ABA, 0xD0AA, 0x7AC4, 0xF3C1, 0x7AC5, 0xD0AB, 0x7AC7, 0xD4E4,
- 0x7ACA, 0xEFBC, 0x7ACB, 0xD8A1, 0x7AD7, 0xD9DF, 0x7AD9, 0xF3D7,
- 0x7ADD, 0xDCBD, 0x7ADF, 0xCCE5, 0x7AE0, 0xEDF1, 0x7AE3, 0xF1E2,
- 0x7AE5, 0xD4DB, 0x7AEA, 0xE2B5, 0x7AED, 0xCAE6, 0x7AEF, 0xD3AE,
- 0x7AF6, 0xCCE6, 0x7AF9, 0xF1D3, 0x7AFA, 0xF5E7, 0x7AFF, 0xCADA,
- 0x7B0F, 0xFBEE, 0x7B11, 0xE1C5, 0x7B19, 0xDFE9, 0x7B1B, 0xEEDE,
- 0x7B1E, 0xF7C2, 0x7B20, 0xD8A2, 0x7B26, 0xDDAC, 0x7B2C, 0xF0AF,
- 0x7B2D, 0xD6BD, 0x7B39, 0xE1AB, 0x7B46, 0xF9B6, 0x7B49, 0xD4F5,
- 0x7B4B, 0xD0C9, 0x7B4C, 0xEFA7, 0x7B4D, 0xE2EC, 0x7B4F, 0xDBEA,
- 0x7B50, 0xCECC, 0x7B51, 0xF5E8, 0x7B52, 0xF7D5, 0x7B54, 0xD3CD,
- 0x7B56, 0xF3FE, 0x7B60, 0xD0B5, 0x7B6C, 0xE0FE, 0x7B6E, 0xDFFB,
- 0x7B75, 0xE6DD, 0x7B7D, 0xE8A4, 0x7B87, 0xCBCD, 0x7B8B, 0xEFA8,
- 0x7B8F, 0xEEB4, 0x7B94, 0xDAD8, 0x7B95, 0xD1B9, 0x7B97, 0xDFA9,
- 0x7B9A, 0xF3B0, 0x7B9D, 0xCCC4, 0x7BA1, 0xCEB7, 0x7BAD, 0xEFA9,
- 0x7BB1, 0xDFD5, 0x7BB4, 0xEDD7, 0x7BB8, 0xEEC6, 0x7BC0, 0xEFBD,
- 0x7BC1, 0xFCD6, 0x7BC4, 0xDBF4, 0x7BC6, 0xEFAA, 0x7BC7, 0xF8B9,
- 0x7BC9, 0xF5E9, 0x7BD2, 0xE3D9, 0x7BE0, 0xE1C6, 0x7BE4, 0xD4BF,
- 0x7BE9, 0xDEE8, 0x7C07, 0xF0EA, 0x7C12, 0xF3C2, 0x7C1E, 0xD3AF,
- 0x7C21, 0xCADB, 0x7C27, 0xFCD7, 0x7C2A, 0xEDD8, 0x7C2B, 0xE1C7,
- 0x7C3D, 0xF4D8, 0x7C3E, 0xD6B3, 0x7C3F, 0xDDAD, 0x7C43, 0xD5BE,
- 0x7C4C, 0xF1C3, 0x7C4D, 0xEEDF, 0x7C60, 0xD6EB, 0x7C64, 0xF4D9,
- 0x7C6C, 0xD7E6, 0x7C73, 0xDAB7, 0x7C83, 0xDDFB, 0x7C89, 0xDDCF,
- 0x7C92, 0xD8A3, 0x7C95, 0xDAD9, 0x7C97, 0xF0D8, 0x7C98, 0xEFC4,
- 0x7C9F, 0xE1D8, 0x7CA5, 0xF1D4, 0x7CA7, 0xEDF2, 0x7CAE, 0xD5DB,
- 0x7CB1, 0xD5DC, 0x7CB2, 0xF3C4, 0x7CB3, 0xCBD7, 0x7CB9, 0xE2B6,
- 0x7CBE, 0xEFF1, 0x7CCA, 0xFBD5, 0x7CD6, 0xD3D8, 0x7CDE, 0xDDD0,
- 0x7CDF, 0xF0D9, 0x7CE0, 0xCBB3, 0x7CE7, 0xD5DD, 0x7CFB, 0xCDA7,
- 0x7CFE, 0xD0AC, 0x7D00, 0xD1BA, 0x7D02, 0xF1C4, 0x7D04, 0xE5B3,
- 0x7D05, 0xFBF5, 0x7D06, 0xE9E1, 0x7D07, 0xFDE0, 0x7D08, 0xFCBC,
- 0x7D0A, 0xDAA2, 0x7D0B, 0xDAA3, 0x7D0D, 0xD2A1, 0x7D10, 0xD2EF,
- 0x7D14, 0xE2ED, 0x7D17, 0xDEE9, 0x7D18, 0xCEDC, 0x7D19, 0xF2B5,
- 0x7D1A, 0xD0E4, 0x7D1B, 0xDDD1, 0x7D20, 0xE1C8, 0x7D21, 0xDBB7,
- 0x7D22, 0xDFE3, 0x7D2B, 0xEDB9, 0x7D2C, 0xF1C5, 0x7D2E, 0xF3CF,
- 0x7D2F, 0xD7AB, 0x7D30, 0xE1AC, 0x7D33, 0xE3EB, 0x7D35, 0xEEC7,
- 0x7D39, 0xE1C9, 0x7D3A, 0xCAFA, 0x7D42, 0xF0FB, 0x7D43, 0xFAE1,
- 0x7D44, 0xF0DA, 0x7D45, 0xCCE7, 0x7D46, 0xDAF4, 0x7D50, 0xCCBF,
- 0x7D5E, 0xCEED, 0x7D61, 0xD5A9, 0x7D62, 0xFAE2, 0x7D66, 0xD0E5,
- 0x7D68, 0xEBD6, 0x7D6A, 0xECDF, 0x7D6E, 0xDFFC, 0x7D71, 0xF7D6,
- 0x7D72, 0xDEEA, 0x7D73, 0xCBB4, 0x7D76, 0xEFBE, 0x7D79, 0xCCB5,
- 0x7D7F, 0xCFBD, 0x7D8E, 0xEFF2, 0x7D8F, 0xE2B7, 0x7D93, 0xCCE8,
- 0x7D9C, 0xF0FC, 0x7DA0, 0xD6E0, 0x7DA2, 0xF1C6, 0x7DAC, 0xE2B8,
- 0x7DAD, 0xEBAB, 0x7DB1, 0xCBB5, 0x7DB2, 0xD8D1, 0x7DB4, 0xF4CE,
- 0x7DB5, 0xF3F7, 0x7DB8, 0xD7C6, 0x7DBA, 0xD1BB, 0x7DBB, 0xF7AA,
- 0x7DBD, 0xEDCA, 0x7DBE, 0xD7D3, 0x7DBF, 0xD8FA, 0x7DC7, 0xF6C5,
- 0x7DCA, 0xD1CC, 0x7DCB, 0xDDFC, 0x7DD6, 0xDFFD, 0x7DD8, 0xF9E5,
- 0x7DDA, 0xE0CA, 0x7DDD, 0xF2FD, 0x7DDE, 0xD3B0, 0x7DE0, 0xF4F3,
- 0x7DE1, 0xDAC9, 0x7DE3, 0xE6DE, 0x7DE8, 0xF8BA, 0x7DE9, 0xE8D0,
- 0x7DEC, 0xD8FB, 0x7DEF, 0xEAD5, 0x7DF4, 0xD6A3, 0x7DFB, 0xF6C6,
- 0x7E09, 0xF2DB, 0x7E0A, 0xE4FC, 0x7E15, 0xE8B2, 0x7E1B, 0xDADA,
- 0x7E1D, 0xF2DC, 0x7E1E, 0xFBD6, 0x7E1F, 0xE9B2, 0x7E21, 0xEEAD,
- 0x7E23, 0xFAE3, 0x7E2B, 0xDCEE, 0x7E2E, 0xF5EA, 0x7E2F, 0xE6E0,
- 0x7E31, 0xF0FD, 0x7E37, 0xD7AC, 0x7E3D, 0xF5C5, 0x7E3E, 0xEEE0,
- 0x7E41, 0xDBE5, 0x7E43, 0xDDDE, 0x7E46, 0xD9F0, 0x7E47, 0xE9A3,
- 0x7E52, 0xF1F9, 0x7E54, 0xF2C4, 0x7E55, 0xE0CB, 0x7E5E, 0xE9A4,
- 0x7E61, 0xE2B9, 0x7E69, 0xE3B1, 0x7E6A, 0xFCEB, 0x7E6B, 0xCDA8,
- 0x7E6D, 0xCCB6, 0x7E70, 0xF0DB, 0x7E79, 0xE6BA, 0x7E7C, 0xCDA9,
- 0x7E82, 0xF3C3, 0x7E8C, 0xE1D9, 0x7E8F, 0xEFAB, 0x7E93, 0xE7C5,
- 0x7E96, 0xE0E9, 0x7E98, 0xF3C5, 0x7E9B, 0xD4C0, 0x7E9C, 0xD5BF,
- 0x7F36, 0xDDAE, 0x7F38, 0xF9FC, 0x7F3A, 0xCCC0, 0x7F4C, 0xE5A2,
- 0x7F50, 0xCEB8, 0x7F54, 0xD8D2, 0x7F55, 0xF9D6, 0x7F6A, 0xF1AA,
- 0x7F6B, 0xCED1, 0x7F6E, 0xF6C7, 0x7F70, 0xDBEB, 0x7F72, 0xDFFE,
- 0x7F75, 0xD8E1, 0x7F77, 0xF7F3, 0x7F79, 0xD7E7, 0x7F85, 0xD4FE,
- 0x7F88, 0xD1BC, 0x7F8A, 0xE5CF, 0x7F8C, 0xCBB6, 0x7F8E, 0xDAB8,
- 0x7F94, 0xCDC4, 0x7F9A, 0xD6BE, 0x7F9E, 0xE2BA, 0x7FA4, 0xCFD8,
- 0x7FA8, 0xE0CC, 0x7FA9, 0xEBF9, 0x7FB2, 0xFDFD, 0x7FB8, 0xD7E8,
- 0x7FB9, 0xCBD8, 0x7FBD, 0xE9E2, 0x7FC1, 0xE8BA, 0x7FC5, 0xE3C7,
- 0x7FCA, 0xECCD, 0x7FCC, 0xECCE, 0x7FCE, 0xD6BF, 0x7FD2, 0xE3A7,
- 0x7FD4, 0xDFD6, 0x7FD5, 0xFDE8, 0x7FDF, 0xEEE1, 0x7FE0, 0xF6A8,
- 0x7FE1, 0xDDFD, 0x7FE9, 0xF8BB, 0x7FEB, 0xE8D1, 0x7FF0, 0xF9D7,
- 0x7FF9, 0xCEEE, 0x7FFC, 0xECCF, 0x8000, 0xE9A5, 0x8001, 0xD6D5,
- 0x8003, 0xCDC5, 0x8005, 0xEDBA, 0x8006, 0xD1BD, 0x8009, 0xCFBE,
- 0x800C, 0xECBB, 0x8010, 0xD2B1, 0x8015, 0xCCE9, 0x8017, 0xD9C4,
- 0x8018, 0xE9FC, 0x802D, 0xD1BE, 0x8033, 0xECBC, 0x8036, 0xE5AD,
- 0x803D, 0xF7B0, 0x803F, 0xCCEA, 0x8043, 0xD3C4, 0x8046, 0xD6C0,
- 0x804A, 0xD6FD, 0x8056, 0xE1A1, 0x8058, 0xDEBD, 0x805A, 0xF6A9,
- 0x805E, 0xDAA4, 0x806F, 0xD6A4, 0x8070, 0xF5C6, 0x8072, 0xE1A2,
- 0x8073, 0xE9C6, 0x8077, 0xF2C5, 0x807D, 0xF4E9, 0x807E, 0xD6EC,
- 0x807F, 0xEBD3, 0x8084, 0xECBD, 0x8085, 0xE2DC, 0x8086, 0xDEEB,
- 0x8087, 0xF0DC, 0x8089, 0xEBBF, 0x808B, 0xD7CE, 0x808C, 0xD1BF,
- 0x8096, 0xF5AB, 0x809B, 0xF9FD, 0x809D, 0xCADC, 0x80A1, 0xCDC6,
- 0x80A2, 0xF2B6, 0x80A5, 0xDDFE, 0x80A9, 0xCCB7, 0x80AA, 0xDBB8,
- 0x80AF, 0xD0E9, 0x80B1, 0xCEDD, 0x80B2, 0xEBC0, 0x80B4, 0xFDA2,
- 0x80BA, 0xF8CB, 0x80C3, 0xEAD6, 0x80C4, 0xF1B0, 0x80CC, 0xDBCE,
- 0x80CE, 0xF7C3, 0x80DA, 0xDBCF, 0x80DB, 0xCBA4, 0x80DE, 0xF8E0,
- 0x80E1, 0xFBD7, 0x80E4, 0xEBCA, 0x80E5, 0xE0A1, 0x80F1, 0xCECD,
- 0x80F4, 0xD4DC, 0x80F8, 0xFDD8, 0x80FD, 0xD2F6, 0x8102, 0xF2B7,
- 0x8105, 0xFAF6, 0x8106, 0xF6AA, 0x8107, 0xFAF7, 0x8108, 0xD8E6,
- 0x810A, 0xF4B1, 0x8118, 0xE8D2, 0x811A, 0xCAC5, 0x811B, 0xCCEB,
- 0x8123, 0xE2EE, 0x8129, 0xE2BB, 0x812B, 0xF7AD, 0x812F, 0xF8E1,
- 0x8139, 0xF3EC, 0x813E, 0xDEA1, 0x814B, 0xE4FD, 0x814E, 0xE3EC,
- 0x8150, 0xDDAF, 0x8151, 0xDDB0, 0x8154, 0xCBB7, 0x8155, 0xE8D3,
- 0x8165, 0xE1A3, 0x8166, 0xD2E0, 0x816B, 0xF0FE, 0x8170, 0xE9A6,
- 0x8171, 0xCBF2, 0x8178, 0xEDF3, 0x8179, 0xDCD9, 0x817A, 0xE0CD,
- 0x817F, 0xF7DA, 0x8180, 0xDBB9, 0x8188, 0xCCAE, 0x818A, 0xDADB,
- 0x818F, 0xCDC7, 0x819A, 0xDDB1, 0x819C, 0xD8AF, 0x819D, 0xE3A3,
- 0x81A0, 0xCEEF, 0x81A3, 0xF2F3, 0x81A8, 0xF8B3, 0x81B3, 0xE0CE,
- 0x81B5, 0xF5FD, 0x81BA, 0xEBEC, 0x81BD, 0xD3C5, 0x81BE, 0xFCEC,
- 0x81BF, 0xD2DB, 0x81C0, 0xD4EB, 0x81C2, 0xDEA2, 0x81C6, 0xE5E6,
- 0x81CD, 0xF0B0, 0x81D8, 0xD5C4, 0x81DF, 0xEDF4, 0x81E3, 0xE3ED,
- 0x81E5, 0xE8C2, 0x81E7, 0xEDF5, 0x81E8, 0xD7FC, 0x81EA, 0xEDBB,
- 0x81ED, 0xF6AB, 0x81F3, 0xF2B8, 0x81F4, 0xF6C8, 0x81FA, 0xD3E6,
- 0x81FB, 0xF2DD, 0x81FC, 0xCFBF, 0x81FE, 0xEBAC, 0x8205, 0xCFC0,
- 0x8207, 0xE6A8, 0x8208, 0xFDE9, 0x820A, 0xCFC1, 0x820C, 0xE0DF,
- 0x820D, 0xDEEC, 0x8212, 0xE0A2, 0x821B, 0xF4BF, 0x821C, 0xE2EF,
- 0x821E, 0xD9F1, 0x821F, 0xF1C7, 0x8221, 0xCBB8, 0x822A, 0xF9FE,
- 0x822B, 0xDBBA, 0x822C, 0xDAF5, 0x8235, 0xF6EC, 0x8236, 0xDADC,
- 0x8237, 0xFAE4, 0x8239, 0xE0CF, 0x8240, 0xDDB2, 0x8245, 0xE6A9,
- 0x8247, 0xEFF3, 0x8259, 0xF3ED, 0x8264, 0xEBFA, 0x8266, 0xF9E6,
- 0x826E, 0xCADD, 0x826F, 0xD5DE, 0x8271, 0xCADE, 0x8272, 0xDFE4,
- 0x8276, 0xE6FD, 0x8278, 0xF5AC, 0x827E, 0xE4F5, 0x828B, 0xE9E3,
- 0x828D, 0xEDCB, 0x828E, 0xCFE4, 0x8292, 0xD8D3, 0x8299, 0xDDB3,
- 0x829A, 0xD4EC, 0x829D, 0xF2B9, 0x829F, 0xDFB7, 0x82A5, 0xCBCE,
- 0x82A6, 0xFBD8, 0x82A9, 0xD0D9, 0x82AC, 0xDDD2, 0x82AD, 0xF7F4,
- 0x82AE, 0xE7DC, 0x82AF, 0xE4A5, 0x82B1, 0xFCA3, 0x82B3, 0xDBBB,
- 0x82B7, 0xF2BA, 0x82B8, 0xE9FD, 0x82B9, 0xD0CA, 0x82BB, 0xF5D6,
- 0x82BC, 0xD9C5, 0x82BD, 0xE4B4, 0x82BF, 0xEDA7, 0x82D1, 0xEABD,
- 0x82D2, 0xE6FE, 0x82D4, 0xF7C4, 0x82D5, 0xF5AD, 0x82D7, 0xD9E0,
- 0x82DB, 0xCAB4, 0x82DE, 0xF8E2, 0x82DF, 0xCFC2, 0x82E1, 0xECBE,
- 0x82E5, 0xE5B4, 0x82E6, 0xCDC8, 0x82E7, 0xEEC8, 0x82F1, 0xE7C8,
- 0x82FD, 0xCDC9, 0x82FE, 0xF9B7, 0x8301, 0xF1E8, 0x8302, 0xD9F2,
- 0x8303, 0xDBF5, 0x8304, 0xCAB5, 0x8305, 0xD9C6, 0x8309, 0xD8C9,
- 0x8317, 0xD9AB, 0x8328, 0xEDBC, 0x832B, 0xD8D4, 0x832F, 0xDCDA,
- 0x8331, 0xE2BC, 0x8334, 0xFCED, 0x8335, 0xECE0, 0x8336, 0xD2FE,
- 0x8338, 0xE9C7, 0x8339, 0xE6AA, 0x8340, 0xE2F0, 0x8347, 0xFABB,
- 0x8349, 0xF5AE, 0x834A, 0xFBAA, 0x834F, 0xECFB, 0x8351, 0xECBF,
- 0x8352, 0xFCD8, 0x8373, 0xD4E5, 0x8377, 0xF9C3, 0x837B, 0xEEE2,
- 0x8389, 0xD7E9, 0x838A, 0xEDF6, 0x838E, 0xDEED, 0x8396, 0xCCEC,
- 0x8398, 0xE3EE, 0x839E, 0xE8D4, 0x83A2, 0xFAF8, 0x83A9, 0xDDB4,
- 0x83AA, 0xE4B5, 0x83AB, 0xD8B0, 0x83BD, 0xD8D5, 0x83C1, 0xF4EA,
- 0x83C5, 0xCEB9, 0x83C9, 0xD6E1, 0x83CA, 0xCFD2, 0x83CC, 0xD0B6,
- 0x83D3, 0xCEA2, 0x83D6, 0xF3EE, 0x83DC, 0xF3F8, 0x83E9, 0xDCCC,
- 0x83EB, 0xD0CB, 0x83EF, 0xFCA4, 0x83F0, 0xCDCA, 0x83F1, 0xD7D4,
- 0x83F2, 0xDEA3, 0x83F4, 0xE4E0, 0x83F9, 0xEEC9, 0x83FD, 0xE2DD,
- 0x8403, 0xF5FE, 0x8404, 0xD4AC, 0x840A, 0xD5D1, 0x840C, 0xD8F0,
- 0x840D, 0xF8C3, 0x840E, 0xEAD7, 0x8429, 0xF5D7, 0x842C, 0xD8BF,
- 0x8431, 0xFDC0, 0x8438, 0xEBAD, 0x843D, 0xD5AA, 0x8449, 0xE7A8,
- 0x8457, 0xEECA, 0x845B, 0xCAE7, 0x8461, 0xF8E3, 0x8463, 0xD4DD,
- 0x8466, 0xEAD8, 0x846B, 0xFBD9, 0x846C, 0xEDF7, 0x846F, 0xE5B5,
- 0x8475, 0xD0AD, 0x847A, 0xF1F1, 0x8490, 0xE2BD, 0x8494, 0xE3C8,
- 0x8499, 0xD9D5, 0x849C, 0xDFAA, 0x84A1, 0xDBBC, 0x84B2, 0xF8E4,
- 0x84B8, 0xF1FA, 0x84BB, 0xE5B6, 0x84BC, 0xF3EF, 0x84BF, 0xFBDA,
- 0x84C0, 0xE1E0, 0x84C2, 0xD9AC, 0x84C4, 0xF5EB, 0x84C6, 0xE0B6,
- 0x84C9, 0xE9C8, 0x84CB, 0xCBCF, 0x84CD, 0xE3C9, 0x84D1, 0xDEEE,
- 0x84DA, 0xE2BE, 0x84EC, 0xDCEF, 0x84EE, 0xD6A5, 0x84F4, 0xE2F1,
- 0x84FC, 0xD6FE, 0x8511, 0xD9A1, 0x8513, 0xD8C0, 0x8514, 0xDCDB,
- 0x8517, 0xEDBD, 0x8518, 0xDFB8, 0x851A, 0xEAA5, 0x851E, 0xD7AD,
- 0x8521, 0xF3F9, 0x8523, 0xEDF8, 0x8525, 0xF5C7, 0x852C, 0xE1CA,
- 0x852D, 0xEBE3, 0x852F, 0xF2DE, 0x853D, 0xF8CC, 0x853F, 0xEAD9,
- 0x8541, 0xD3C6, 0x8543, 0xDBE6, 0x8549, 0xF5AF, 0x854E, 0xCEF0,
- 0x8553, 0xE9FE, 0x8559, 0xFBB6, 0x8563, 0xE2F2, 0x8568, 0xCFF2,
- 0x8569, 0xF7B9, 0x856A, 0xD9F3, 0x856D, 0xE1CB, 0x8584, 0xDADD,
- 0x8587, 0xDAB9, 0x858F, 0xEBFB, 0x8591, 0xCBB9, 0x8594, 0xEDF9,
- 0x859B, 0xE0E0, 0x85A6, 0xF4C0, 0x85A8, 0xFDBC, 0x85A9, 0xDFB1,
- 0x85AA, 0xE3EF, 0x85AF, 0xE0A3, 0x85B0, 0xFDB9, 0x85BA, 0xF0B1,
- 0x85C1, 0xCDCB, 0x85C9, 0xEDBE, 0x85CD, 0xD5C0, 0x85CE, 0xE3F0,
- 0x85CF, 0xEDFA, 0x85D5, 0xE9E4, 0x85DC, 0xD5ED, 0x85DD, 0xE7DD,
- 0x85E4, 0xD4F6, 0x85E5, 0xE5B7, 0x85E9, 0xDBE7, 0x85EA, 0xE2BF,
- 0x85F7, 0xEECB, 0x85FA, 0xD7F4, 0x85FB, 0xF0DD, 0x85FF, 0xCEAB,
- 0x8602, 0xE7DE, 0x8606, 0xD6D6, 0x8607, 0xE1CC, 0x860A, 0xE8B3,
- 0x8616, 0xE5EE, 0x8617, 0xDCA2, 0x861A, 0xE0D0, 0x862D, 0xD5B5,
- 0x863F, 0xD5A1, 0x864E, 0xFBDB, 0x8650, 0xF9CB, 0x8654, 0xCBF3,
- 0x8655, 0xF4A5, 0x865B, 0xFAC8, 0x865C, 0xD6D7, 0x865E, 0xE9E5,
- 0x865F, 0xFBDC, 0x8667, 0xFDD0, 0x8679, 0xFBF6, 0x868A, 0xDAA5,
- 0x868C, 0xDBBD, 0x8693, 0xECE2, 0x86A3, 0xCDF7, 0x86A4, 0xF0DE,
- 0x86A9, 0xF6C9, 0x86C7, 0xDEEF, 0x86CB, 0xD3B1, 0x86D4, 0xFCEE,
- 0x86D9, 0xE8C3, 0x86DB, 0xF1C8, 0x86DF, 0xCEF1, 0x86E4, 0xF9ED,
- 0x86ED, 0xF2F4, 0x86FE, 0xE4B6, 0x8700, 0xF5B9, 0x8702, 0xDCF0,
- 0x8703, 0xE3F1, 0x8708, 0xE8A5, 0x8718, 0xF2BB, 0x871A, 0xDEA4,
- 0x871C, 0xDACC, 0x874E, 0xCAE9, 0x8755, 0xE3DA, 0x8757, 0xFCD9,
- 0x875F, 0xEADA, 0x8766, 0xF9C4, 0x8768, 0xE3A4, 0x8774, 0xFBDD,
- 0x8776, 0xEFCA, 0x8778, 0xE8C4, 0x8782, 0xD5CC, 0x878D, 0xEBD7,
- 0x879F, 0xD9AD, 0x87A2, 0xFBAB, 0x87B3, 0xD3D9, 0x87BA, 0xD5A2,
- 0x87C4, 0xF6DE, 0x87E0, 0xDAF6, 0x87EC, 0xE0D1, 0x87EF, 0xE9A8,
- 0x87F2, 0xF5F9, 0x87F9, 0xFAAF, 0x87FB, 0xEBFC, 0x87FE, 0xE0EA,
- 0x8805, 0xE3B2, 0x881F, 0xD5C5, 0x8822, 0xF1E3, 0x8823, 0xD5EE,
- 0x8831, 0xCDCC, 0x8836, 0xEDD9, 0x883B, 0xD8C1, 0x8840, 0xFAEC,
- 0x8846, 0xF1EB, 0x884C, 0xFABC, 0x884D, 0xE6E2, 0x8852, 0xFAE5,
- 0x8853, 0xE2FA, 0x8857, 0xCAB6, 0x8859, 0xE4B7, 0x885B, 0xEADB,
- 0x885D, 0xF5FA, 0x8861, 0xFBAC, 0x8862, 0xCFC3, 0x8863, 0xEBFD,
- 0x8868, 0xF8FA, 0x886B, 0xDFB9, 0x8870, 0xE1F1, 0x8872, 0xD2A4,
- 0x8877, 0xF5FB, 0x887E, 0xD0DA, 0x887F, 0xD0DB, 0x8881, 0xEABE,
- 0x8882, 0xD9B1, 0x8888, 0xCAB7, 0x888B, 0xD3E7, 0x888D, 0xF8E5,
- 0x8892, 0xD3B2, 0x8896, 0xE2C0, 0x8897, 0xF2DF, 0x889E, 0xCDE5,
- 0x88AB, 0xF9AC, 0x88B4, 0xCDCD, 0x88C1, 0xEEAE, 0x88C2, 0xD6AE,
- 0x88CF, 0xD7EA, 0x88D4, 0xE7E0, 0x88D5, 0xEBAE, 0x88D9, 0xCFD9,
- 0x88DC, 0xDCCD, 0x88DD, 0xEDFB, 0x88DF, 0xDEF0, 0x88E1, 0xD7EB,
- 0x88E8, 0xDEA5, 0x88F3, 0xDFD7, 0x88F4, 0xDBD0, 0x88F5, 0xDBD1,
- 0x88F8, 0xD5A3, 0x88FD, 0xF0B2, 0x8907, 0xDCDC, 0x8910, 0xCAE8,
- 0x8912, 0xF8E6, 0x8913, 0xDCCE, 0x8918, 0xEADC, 0x8919, 0xDBD2,
- 0x8925, 0xE9B3, 0x892A, 0xF7DB, 0x8936, 0xE3A8, 0x8938, 0xD7AE,
- 0x893B, 0xE0E1, 0x8941, 0xCBBA, 0x8944, 0xE5D1, 0x895F, 0xD0DC,
- 0x8964, 0xD5C1, 0x896A, 0xD8CA, 0x8972, 0xE3A9, 0x897F, 0xE0A4,
- 0x8981, 0xE9A9, 0x8983, 0xD3C7, 0x8986, 0xDCDD, 0x8987, 0xF8AE,
- 0x898B, 0xCCB8, 0x898F, 0xD0AE, 0x8993, 0xD8F2, 0x8996, 0xE3CA,
- 0x89A1, 0xCCAF, 0x89A9, 0xD4AD, 0x89AA, 0xF6D1, 0x89B2, 0xD0CC,
- 0x89BA, 0xCAC6, 0x89BD, 0xD5C2, 0x89C0, 0xCEBA, 0x89D2, 0xCAC7,
- 0x89E3, 0xFAB0, 0x89F4, 0xDFD8, 0x89F8, 0xF5BA, 0x8A00, 0xE5EB,
- 0x8A02, 0xEFF4, 0x8A03, 0xDDB5, 0x8A08, 0xCDAA, 0x8A0A, 0xE3F2,
- 0x8A0C, 0xFBF7, 0x8A0E, 0xF7D0, 0x8A13, 0xFDBA, 0x8A16, 0xFDE1,
- 0x8A17, 0xF6FE, 0x8A18, 0xD1C0, 0x8A1B, 0xE8C5, 0x8A1D, 0xE4B8,
- 0x8A1F, 0xE1E8, 0x8A23, 0xCCC1, 0x8A25, 0xD2ED, 0x8A2A, 0xDBBE,
- 0x8A2D, 0xE0E2, 0x8A31, 0xFAC9, 0x8A34, 0xE1CD, 0x8A36, 0xCAB8,
- 0x8A3A, 0xF2E0, 0x8A3B, 0xF1C9, 0x8A50, 0xDEF1, 0x8A54, 0xF0DF,
- 0x8A55, 0xF8C4, 0x8A5B, 0xEECC, 0x8A5E, 0xDEF2, 0x8A60, 0xE7C9,
- 0x8A62, 0xE2F3, 0x8A63, 0xE7E1, 0x8A66, 0xE3CB, 0x8A69, 0xE3CC,
- 0x8A6D, 0xCFF8, 0x8A6E, 0xEFAC, 0x8A70, 0xFDFE, 0x8A71, 0xFCA5,
- 0x8A72, 0xFAB1, 0x8A73, 0xDFD9, 0x8A75, 0xE0D2, 0x8A79, 0xF4DA,
- 0x8A85, 0xF1CA, 0x8A87, 0xCEA3, 0x8A8C, 0xF2BC, 0x8A8D, 0xECE3,
- 0x8A93, 0xE0A5, 0x8A95, 0xF7AB, 0x8A98, 0xEBAF, 0x8A9E, 0xE5DE,
- 0x8AA0, 0xE1A4, 0x8AA1, 0xCDAB, 0x8AA3, 0xD9F4, 0x8AA4, 0xE8A6,
- 0x8AA5, 0xCDCE, 0x8AA6, 0xE1E9, 0x8AA8, 0xFCEF, 0x8AAA, 0xE0E3,
- 0x8AB0, 0xE2C1, 0x8AB2, 0xCEA4, 0x8AB9, 0xDEA6, 0x8ABC, 0xEBFE,
- 0x8ABE, 0xEBDD, 0x8ABF, 0xF0E0, 0x8AC2, 0xF4DB, 0x8AC4, 0xE2F4,
- 0x8AC7, 0xD3C8, 0x8ACB, 0xF4EB, 0x8ACD, 0xEEB5, 0x8ACF, 0xF5D8,
- 0x8AD2, 0xD5DF, 0x8AD6, 0xD6E5, 0x8ADB, 0xEBB0, 0x8ADC, 0xF4E3,
- 0x8AE1, 0xE3CD, 0x8AE6, 0xF4F4, 0x8AE7, 0xFAB2, 0x8AEA, 0xEFF5,
- 0x8AEB, 0xCADF, 0x8AED, 0xEBB1, 0x8AEE, 0xEDBF, 0x8AF1, 0xFDC9,
- 0x8AF6, 0xE4A6, 0x8AF7, 0xF9A4, 0x8AF8, 0xF0B3, 0x8AFA, 0xE5EC,
- 0x8AFE, 0xD1E7, 0x8B00, 0xD9C7, 0x8B01, 0xE4D7, 0x8B02, 0xEADD,
- 0x8B04, 0xD4F7, 0x8B0E, 0xDABA, 0x8B10, 0xDACD, 0x8B14, 0xF9CC,
- 0x8B16, 0xE1DA, 0x8B17, 0xDBBF, 0x8B19, 0xCCC5, 0x8B1A, 0xECD0,
- 0x8B1B, 0xCBBB, 0x8B1D, 0xDEF3, 0x8B20, 0xE9AA, 0x8B28, 0xD9C8,
- 0x8B2B, 0xEEE3, 0x8B2C, 0xD7BD, 0x8B33, 0xCFC4, 0x8B39, 0xD0CD,
- 0x8B41, 0xFCA6, 0x8B49, 0xF1FB, 0x8B4E, 0xFDD2, 0x8B4F, 0xD1C1,
- 0x8B58, 0xE3DB, 0x8B5A, 0xD3C9, 0x8B5C, 0xDCCF, 0x8B66, 0xCCED,
- 0x8B6C, 0xDEA7, 0x8B6F, 0xE6BB, 0x8B70, 0xECA1, 0x8B74, 0xCCB9,
- 0x8B77, 0xFBDE, 0x8B7D, 0xE7E2, 0x8B80, 0xD4C1, 0x8B8A, 0xDCA8,
- 0x8B90, 0xE2C2, 0x8B92, 0xF3D8, 0x8B93, 0xE5D3, 0x8B96, 0xF3D9,
- 0x8B9A, 0xF3C6, 0x8C37, 0xCDDB, 0x8C3F, 0xCDAC, 0x8C41, 0xFCC3,
- 0x8C46, 0xD4E7, 0x8C48, 0xD1C2, 0x8C4A, 0xF9A5, 0x8C4C, 0xE8D5,
- 0x8C55, 0xE3CE, 0x8C5A, 0xD4CA, 0x8C61, 0xDFDA, 0x8C6A, 0xFBDF,
- 0x8C6B, 0xE7E3, 0x8C79, 0xF8FB, 0x8C7A, 0xE3CF, 0x8C82, 0xF5B0,
- 0x8C8A, 0xD8E7, 0x8C8C, 0xD9C9, 0x8C9D, 0xF8AF, 0x8C9E, 0xEFF6,
- 0x8CA0, 0xDDB6, 0x8CA1, 0xEEAF, 0x8CA2, 0xCDF8, 0x8CA7, 0xDEB8,
- 0x8CA8, 0xFCA7, 0x8CA9, 0xF7FC, 0x8CAA, 0xF7B1, 0x8CAB, 0xCEBB,
- 0x8CAC, 0xF4A1, 0x8CAF, 0xEECD, 0x8CB0, 0xE1AE, 0x8CB3, 0xECC3,
- 0x8CB4, 0xCFFE, 0x8CB6, 0xF8BF, 0x8CB7, 0xD8E2, 0x8CB8, 0xD3E8,
- 0x8CBB, 0xDEA8, 0x8CBC, 0xF4E4, 0x8CBD, 0xECC2, 0x8CBF, 0xD9F5,
- 0x8CC0, 0xF9C5, 0x8CC1, 0xDDD3, 0x8CC2, 0xD6F1, 0x8CC3, 0xECFC,
- 0x8CC4, 0xFCF0, 0x8CC7, 0xEDC0, 0x8CC8, 0xCAB9, 0x8CCA, 0xEEE4,
- 0x8CD1, 0xF2E1, 0x8CD3, 0xDEB9, 0x8CDA, 0xD6F2, 0x8CDC, 0xDEF4,
- 0x8CDE, 0xDFDB, 0x8CE0, 0xDBD3, 0x8CE2, 0xFAE7, 0x8CE3, 0xD8E3,
- 0x8CE4, 0xF4C1, 0x8CE6, 0xDDB7, 0x8CEA, 0xF2F5, 0x8CED, 0xD4AE,
- 0x8CF4, 0xD6F3, 0x8CFB, 0xDDB8, 0x8CFC, 0xCFC5, 0x8CFD, 0xDFDF,
- 0x8D04, 0xF2BE, 0x8D05, 0xF6A1, 0x8D07, 0xEBCB, 0x8D08, 0xF1FC,
- 0x8D0A, 0xF3C7, 0x8D0D, 0xE0EB, 0x8D13, 0xEDFC, 0x8D16, 0xE1DB,
- 0x8D64, 0xEEE5, 0x8D66, 0xDEF5, 0x8D6B, 0xFAD3, 0x8D70, 0xF1CB,
- 0x8D73, 0xD0AF, 0x8D74, 0xDDB9, 0x8D77, 0xD1C3, 0x8D85, 0xF5B1,
- 0x8D8A, 0xEAC6, 0x8D99, 0xF0E1, 0x8DA3, 0xF6AC, 0x8DA8, 0xF5D9,
- 0x8DB3, 0xF0EB, 0x8DBA, 0xDDBA, 0x8DBE, 0xF2BF, 0x8DC6, 0xF7C5,
- 0x8DCB, 0xDBA2, 0x8DCC, 0xF2F6, 0x8DCF, 0xCABA, 0x8DDB, 0xF7F5,
- 0x8DDD, 0xCBE5, 0x8DE1, 0xEEE6, 0x8DE3, 0xE0D3, 0x8DE8, 0xCEA5,
- 0x8DEF, 0xD6D8, 0x8DF3, 0xD4AF, 0x8E0A, 0xE9C9, 0x8E0F, 0xD3CE,
- 0x8E10, 0xF4C2, 0x8E1E, 0xCBE6, 0x8E2A, 0xF1A1, 0x8E30, 0xEBB2,
- 0x8E35, 0xF1A2, 0x8E42, 0xEBB3, 0x8E44, 0xF0B4, 0x8E47, 0xCBF4,
- 0x8E48, 0xD4B0, 0x8E49, 0xF3B2, 0x8E4A, 0xFBB7, 0x8E59, 0xF5EC,
- 0x8E5F, 0xEEE7, 0x8E60, 0xF4B2, 0x8E74, 0xF5ED, 0x8E76, 0xCFF3,
- 0x8E81, 0xF0E2, 0x8E87, 0xEECE, 0x8E8A, 0xF1CC, 0x8E8D, 0xE5B8,
- 0x8EAA, 0xD7F5, 0x8EAB, 0xE3F3, 0x8EAC, 0xCFE5, 0x8EC0, 0xCFC6,
- 0x8ECA, 0xF3B3, 0x8ECB, 0xE4D8, 0x8ECC, 0xCFF9, 0x8ECD, 0xCFDA,
- 0x8ED2, 0xFACD, 0x8EDF, 0xE6E3, 0x8EEB, 0xF2E2, 0x8EF8, 0xF5EE,
- 0x8EFB, 0xCABB, 0x8EFE, 0xE3DC, 0x8F03, 0xCEF2, 0x8F05, 0xD6D9,
- 0x8F09, 0xEEB0, 0x8F12, 0xF4E5, 0x8F13, 0xD8C2, 0x8F14, 0xDCD0,
- 0x8F15, 0xCCEE, 0x8F1B, 0xD5E0, 0x8F1C, 0xF6CA, 0x8F1D, 0xFDCA,
- 0x8F1E, 0xD8D6, 0x8F1F, 0xF4CF, 0x8F26, 0xD6A6, 0x8F27, 0xDCBE,
- 0x8F29, 0xDBD4, 0x8F2A, 0xD7C7, 0x8F2F, 0xF2FE, 0x8F33, 0xF1CD,
- 0x8F38, 0xE2C3, 0x8F39, 0xDCDE, 0x8F3B, 0xDCDF, 0x8F3E, 0xEFAD,
- 0x8F3F, 0xE6AB, 0x8F44, 0xF9DD, 0x8F45, 0xEABF, 0x8F49, 0xEFAE,
- 0x8F4D, 0xF4D0, 0x8F4E, 0xCEF3, 0x8F5D, 0xE6AC, 0x8F5F, 0xCEDE,
- 0x8F62, 0xD5F9, 0x8F9B, 0xE3F4, 0x8F9C, 0xCDD0, 0x8FA3, 0xD5B8,
- 0x8FA6, 0xF7FD, 0x8FA8, 0xDCA9, 0x8FAD, 0xDEF6, 0x8FAF, 0xDCAA,
- 0x8FB0, 0xF2E3, 0x8FB1, 0xE9B4, 0x8FB2, 0xD2DC, 0x8FC2, 0xE9E6,
- 0x8FC5, 0xE3F6, 0x8FCE, 0xE7CA, 0x8FD1, 0xD0CE, 0x8FD4, 0xDAF7,
- 0x8FE6, 0xCABC, 0x8FEA, 0xEEE8, 0x8FEB, 0xDADE, 0x8FED, 0xF2F7,
- 0x8FF0, 0xE2FB, 0x8FF2, 0xCCA6, 0x8FF7, 0xDABB, 0x8FF9, 0xEEE9,
- 0x8FFD, 0xF5DA, 0x9000, 0xF7DC, 0x9001, 0xE1EA, 0x9002, 0xCEC1,
- 0x9003, 0xD4B1, 0x9005, 0xFDB1, 0x9006, 0xE6BD, 0x9008, 0xFBAD,
- 0x900B, 0xF8E7, 0x900D, 0xE1CE, 0x900F, 0xF7E2, 0x9010, 0xF5EF,
- 0x9011, 0xCFC7, 0x9014, 0xD4B2, 0x9015, 0xCCEF, 0x9017, 0xD4E8,
- 0x9019, 0xEECF, 0x901A, 0xF7D7, 0x901D, 0xE0A6, 0x901E, 0xD6C1,
- 0x901F, 0xE1DC, 0x9020, 0xF0E3, 0x9021, 0xF1E4, 0x9022, 0xDCF1,
- 0x9023, 0xD6A7, 0x902E, 0xF4F5, 0x9031, 0xF1CE, 0x9032, 0xF2E4,
- 0x9035, 0xD0B0, 0x9038, 0xECEF, 0x903C, 0xF9BA, 0x903E, 0xEBB5,
- 0x9041, 0xD4ED, 0x9042, 0xE2C4, 0x9047, 0xE9E7, 0x904A, 0xEBB4,
- 0x904B, 0xEAA1, 0x904D, 0xF8BC, 0x904E, 0xCEA6, 0x9050, 0xF9C6,
- 0x9051, 0xFCDA, 0x9053, 0xD4B3, 0x9054, 0xD3B9, 0x9055, 0xEADE,
- 0x9059, 0xE9AB, 0x905C, 0xE1E1, 0x905D, 0xD3CF, 0x905E, 0xF4F6,
- 0x9060, 0xEAC0, 0x9061, 0xE1CF, 0x9063, 0xCCBA, 0x9069, 0xEEEA,
- 0x906D, 0xF0E4, 0x906E, 0xF3B4, 0x906F, 0xD4EE, 0x9072, 0xF2C0,
- 0x9075, 0xF1E5, 0x9077, 0xF4C3, 0x9078, 0xE0D4, 0x907A, 0xEBB6,
- 0x907C, 0xD7A1, 0x907D, 0xCBE8, 0x907F, 0xF9AD, 0x9080, 0xE9AD,
- 0x9081, 0xD8E4, 0x9082, 0xFAB3, 0x9083, 0xE2C5, 0x9084, 0xFCBD,
- 0x9087, 0xECC4, 0x9088, 0xD8B1, 0x908A, 0xDCAB, 0x908F, 0xD5A4,
- 0x9091, 0xEBE9, 0x9095, 0xE8BB, 0x9099, 0xD8D7, 0x90A2, 0xFBAE,
- 0x90A3, 0xD1E1, 0x90A6, 0xDBC0, 0x90A8, 0xF5BE, 0x90AA, 0xDEF7,
- 0x90AF, 0xCAFB, 0x90B0, 0xF7C6, 0x90B1, 0xCFC8, 0x90B5, 0xE1D0,
- 0x90B8, 0xEED0, 0x90C1, 0xE9F4, 0x90CA, 0xCEF4, 0x90DE, 0xD5CD,
- 0x90E1, 0xCFDB, 0x90E8, 0xDDBB, 0x90ED, 0xCEAC, 0x90F5, 0xE9E8,
- 0x90FD, 0xD4B4, 0x9102, 0xE4C7, 0x9112, 0xF5DB, 0x9115, 0xFAC1,
- 0x9119, 0xDEA9, 0x9127, 0xD4F8, 0x912D, 0xEFF7, 0x9132, 0xD3B3,
- 0x9149, 0xEBB7, 0x914A, 0xEFF8, 0x914B, 0xF5DC, 0x914C, 0xEDCC,
- 0x914D, 0xDBD5, 0x914E, 0xF1CF, 0x9152, 0xF1D0, 0x9162, 0xF5B2,
- 0x9169, 0xD9AE, 0x916A, 0xD5AC, 0x916C, 0xE2C6, 0x9175, 0xFDA3,
- 0x9177, 0xFBE5, 0x9178, 0xDFAB, 0x9187, 0xE2F5, 0x9189, 0xF6AD,
- 0x918B, 0xF5B3, 0x918D, 0xF0B5, 0x9192, 0xE1A5, 0x919C, 0xF5DD,
- 0x91AB, 0xECA2, 0x91AC, 0xEDFD, 0x91AE, 0xF5B4, 0x91AF, 0xFBB8,
- 0x91B1, 0xDBA3, 0x91B4, 0xD6CA, 0x91B5, 0xCBD9, 0x91C0, 0xE5D4,
- 0x91C7, 0xF3FA, 0x91C9, 0xEBB8, 0x91CB, 0xE0B7, 0x91CC, 0xD7EC,
- 0x91CD, 0xF1EC, 0x91CE, 0xE5AF, 0x91CF, 0xD5E1, 0x91D0, 0xD7ED,
- 0x91D1, 0xD1D1, 0x91D7, 0xE1F2, 0x91D8, 0xEFF9, 0x91DC, 0xDDBC,
- 0x91DD, 0xF6DC, 0x91E3, 0xF0E5, 0x91E7, 0xF4C4, 0x91EA, 0xE9E9,
- 0x91F5, 0xF3FB, 0x920D, 0xD4EF, 0x9210, 0xCCA2, 0x9211, 0xF7FE,
- 0x9212, 0xDFBC, 0x9217, 0xEBCD, 0x921E, 0xD0B7, 0x9234, 0xD6C2,
- 0x923A, 0xE8AD, 0x923F, 0xEFAF, 0x9240, 0xCBA5, 0x9245, 0xCBE9,
- 0x9249, 0xFAE8, 0x9257, 0xCCC6, 0x925B, 0xE6E7, 0x925E, 0xEAC7,
- 0x9262, 0xDBA4, 0x9264, 0xCFC9, 0x9265, 0xE2FC, 0x9266, 0xEFFA,
- 0x9280, 0xEBDE, 0x9283, 0xF5C8, 0x9285, 0xD4DE, 0x9291, 0xE0D5,
- 0x9293, 0xEFB0, 0x9296, 0xE2C7, 0x9298, 0xD9AF, 0x929C, 0xF9E7,
- 0x92B3, 0xE7E5, 0x92B6, 0xCFCA, 0x92B7, 0xE1D1, 0x92B9, 0xE2C8,
- 0x92CC, 0xEFFB, 0x92CF, 0xFAF9, 0x92D2, 0xDCF2, 0x92E4, 0xE0A7,
- 0x92EA, 0xF8E8, 0x92F8, 0xCBEA, 0x92FC, 0xCBBC, 0x9304, 0xD6E2,
- 0x9310, 0xF5DE, 0x9318, 0xF5DF, 0x931A, 0xEEB6, 0x931E, 0xE2F6,
- 0x931F, 0xD3CA, 0x9320, 0xEFFC, 0x9321, 0xD1C4, 0x9322, 0xEFB1,
- 0x9324, 0xD1C5, 0x9326, 0xD0DE, 0x9328, 0xD9E1, 0x932B, 0xE0B8,
- 0x932E, 0xCDD1, 0x932F, 0xF3B9, 0x9348, 0xE7CC, 0x934A, 0xD6A8,
- 0x934B, 0xCEA7, 0x934D, 0xD4B5, 0x9354, 0xE4C8, 0x935B, 0xD3B4,
- 0x936E, 0xEBB9, 0x9375, 0xCBF5, 0x937C, 0xF6DD, 0x937E, 0xF1A3,
- 0x938C, 0xCCC7, 0x9394, 0xE9CA, 0x9396, 0xE1F0, 0x939A, 0xF5E0,
- 0x93A3, 0xFBAF, 0x93A7, 0xCBD1, 0x93AC, 0xFBE0, 0x93AD, 0xF2E5,
- 0x93B0, 0xECF0, 0x93C3, 0xF0EC, 0x93D1, 0xEEEB, 0x93DE, 0xE9CB,
- 0x93E1, 0xCCF0, 0x93E4, 0xD7AF, 0x93F6, 0xF3A1, 0x9404, 0xFCF5,
- 0x9418, 0xF1A4, 0x9425, 0xE0D6, 0x942B, 0xEFB2, 0x9435, 0xF4D1,
- 0x9438, 0xF7A1, 0x9444, 0xF1D1, 0x9451, 0xCAFC, 0x9452, 0xCAFD,
- 0x945B, 0xCECE, 0x947D, 0xF3C8, 0x947F, 0xF3BA, 0x9577, 0xEDFE,
- 0x9580, 0xDAA6, 0x9583, 0xE0EC, 0x9589, 0xF8CD, 0x958B, 0xCBD2,
- 0x958F, 0xEBCE, 0x9591, 0xF9D8, 0x9592, 0xF9D9, 0x9593, 0xCAE0,
- 0x9594, 0xDACA, 0x9598, 0xCBA6, 0x95A3, 0xCAC8, 0x95A4, 0xF9EE,
- 0x95A5, 0xDBEC, 0x95A8, 0xD0B1, 0x95AD, 0xD5EF, 0x95B1, 0xE6F3,
- 0x95BB, 0xE7A2, 0x95BC, 0xE4D9, 0x95C7, 0xE4E1, 0x95CA, 0xFCC4,
- 0x95D4, 0xF9EF, 0x95D5, 0xCFF4, 0x95D6, 0xF7E6, 0x95DC, 0xCEBC,
- 0x95E1, 0xF4C5, 0x95E2, 0xDCA3, 0x961C, 0xDDBD, 0x9621, 0xF4C6,
- 0x962A, 0xF8A1, 0x962E, 0xE8D6, 0x9632, 0xDBC1, 0x963B, 0xF0E6,
- 0x963F, 0xE4B9, 0x9640, 0xF6ED, 0x9642, 0xF9AE, 0x9644, 0xDDBE,
- 0x964B, 0xD7B0, 0x964C, 0xD8E8, 0x964D, 0xCBBD, 0x9650, 0xF9DA,
- 0x965B, 0xF8CE, 0x965C, 0xF9F0, 0x965D, 0xE0ED, 0x965E, 0xE3B3,
- 0x965F, 0xF4B3, 0x9662, 0xEAC2, 0x9663, 0xF2E6, 0x9664, 0xF0B6,
- 0x966A, 0xDBD6, 0x9670, 0xEBE4, 0x9673, 0xF2E7, 0x9675, 0xD7D5,
- 0x9676, 0xD4B6, 0x9677, 0xF9E8, 0x9678, 0xD7C1, 0x967D, 0xE5D5,
- 0x9685, 0xE9EA, 0x9686, 0xD7CC, 0x968A, 0xD3E9, 0x968B, 0xE2C9,
- 0x968D, 0xFCDB, 0x968E, 0xCDAD, 0x9694, 0xCCB0, 0x9695, 0xEAA2,
- 0x9698, 0xE4F6, 0x9699, 0xD0C0, 0x969B, 0xF0B7, 0x969C, 0xEEA1,
- 0x96A3, 0xD7F6, 0x96A7, 0xE2CA, 0x96A8, 0xE2CB, 0x96AA, 0xFACF,
- 0x96B1, 0xEBDF, 0x96B7, 0xD6CB, 0x96BB, 0xF4B4, 0x96C0, 0xEDCD,
- 0x96C1, 0xE4D2, 0x96C4, 0xEAA9, 0x96C5, 0xE4BA, 0x96C6, 0xF3A2,
- 0x96C7, 0xCDD2, 0x96C9, 0xF6CB, 0x96CB, 0xF1E6, 0x96CC, 0xEDC1,
- 0x96CD, 0xE8BC, 0x96CE, 0xEED1, 0x96D5, 0xF0E7, 0x96D6, 0xE2CC,
- 0x96D9, 0xE4AA, 0x96DB, 0xF5E1, 0x96DC, 0xEDDA, 0x96E2, 0xD7EE,
- 0x96E3, 0xD1F1, 0x96E8, 0xE9EB, 0x96E9, 0xE9EC, 0x96EA, 0xE0E4,
- 0x96EF, 0xDAA7, 0x96F0, 0xDDD4, 0x96F2, 0xEAA3, 0x96F6, 0xD6C3,
- 0x96F7, 0xD6F4, 0x96F9, 0xDADF, 0x96FB, 0xEFB3, 0x9700, 0xE2CD,
- 0x9706, 0xEFFD, 0x9707, 0xF2E8, 0x9711, 0xEFC5, 0x9713, 0xE7E7,
- 0x9716, 0xD7FD, 0x9719, 0xE7CE, 0x971C, 0xDFDC, 0x971E, 0xF9C7,
- 0x9727, 0xD9F6, 0x9730, 0xDFAC, 0x9732, 0xD6DA, 0x9739, 0xDCA4,
- 0x973D, 0xF0B8, 0x9742, 0xD5FA, 0x9744, 0xE4F7, 0x9748, 0xD6C4,
- 0x9751, 0xF4EC, 0x9756, 0xEFFE, 0x975C, 0xF0A1, 0x975E, 0xDEAA,
- 0x9761, 0xDABC, 0x9762, 0xD8FC, 0x9769, 0xFAD4, 0x976D, 0xECE5,
- 0x9774, 0xFCA8, 0x9777, 0xECE6, 0x977A, 0xD8CB, 0x978B, 0xFBB9,
- 0x978D, 0xE4D3, 0x978F, 0xCDF9, 0x97A0, 0xCFD3, 0x97A8, 0xCAEA,
- 0x97AB, 0xCFD4, 0x97AD, 0xF8BD, 0x97C6, 0xF4C7, 0x97CB, 0xEADF,
- 0x97D3, 0xF9DB, 0x97DC, 0xD4B7, 0x97F3, 0xEBE5, 0x97F6, 0xE1D2,
- 0x97FB, 0xEAA4, 0x97FF, 0xFAC2, 0x9800, 0xFBE1, 0x9801, 0xFAED,
- 0x9802, 0xF0A2, 0x9803, 0xCCF1, 0x9805, 0xFAA3, 0x9806, 0xE2F7,
- 0x9808, 0xE2CE, 0x980A, 0xE9F5, 0x980C, 0xE1EB, 0x9810, 0xE7E8,
- 0x9811, 0xE8D7, 0x9812, 0xDAF8, 0x9813, 0xD4CB, 0x9817, 0xF7F6,
- 0x9818, 0xD6C5, 0x982D, 0xD4E9, 0x9830, 0xFAFA, 0x9838, 0xCCF2,
- 0x9839, 0xF7DD, 0x983B, 0xDEBA, 0x9846, 0xCEA8, 0x984C, 0xF0B9,
- 0x984D, 0xE4FE, 0x984E, 0xE4C9, 0x9854, 0xE4D4, 0x9858, 0xEAC3,
- 0x985A, 0xEFB4, 0x985E, 0xD7BE, 0x9865, 0xFBE2, 0x9867, 0xCDD3,
- 0x986B, 0xEFB5, 0x986F, 0xFAE9, 0x98A8, 0xF9A6, 0x98AF, 0xDFBD,
- 0x98B1, 0xF7C7, 0x98C4, 0xF8FD, 0x98C7, 0xF8FC, 0x98DB, 0xDEAB,
- 0x98DC, 0xDBE8, 0x98DF, 0xE3DD, 0x98E1, 0xE1E2, 0x98E2, 0xD1C6,
- 0x98ED, 0xF6D0, 0x98EE, 0xEBE6, 0x98EF, 0xDAF9, 0x98F4, 0xECC7,
- 0x98FC, 0xDEF8, 0x98FD, 0xF8E9, 0x98FE, 0xE3DE, 0x9903, 0xCEF5,
- 0x9909, 0xFAC3, 0x990A, 0xE5D7, 0x990C, 0xECC8, 0x9910, 0xF3C9,
- 0x9913, 0xE4BB, 0x9918, 0xE6AE, 0x991E, 0xEFB6, 0x9920, 0xDCBF,
- 0x9928, 0xCEBD, 0x9945, 0xD8C3, 0x9949, 0xD0CF, 0x994B, 0xCFFA,
- 0x994C, 0xF3CA, 0x994D, 0xE0D7, 0x9951, 0xD1C7, 0x9952, 0xE9AE,
- 0x9954, 0xE8BD, 0x9957, 0xFAC4, 0x9996, 0xE2CF, 0x9999, 0xFAC5,
- 0x999D, 0xF9B8, 0x99A5, 0xDCE0, 0x99A8, 0xFBB0, 0x99AC, 0xD8A9,
- 0x99AD, 0xE5DF, 0x99AE, 0xF9A7, 0x99B1, 0xF6EE, 0x99B3, 0xF6CC,
- 0x99B4, 0xE2F8, 0x99B9, 0xECF1, 0x99C1, 0xDAE0, 0x99D0, 0xF1D2,
- 0x99D1, 0xD2CC, 0x99D2, 0xCFCB, 0x99D5, 0xCABD, 0x99D9, 0xDDBF,
- 0x99DD, 0xF6EF, 0x99DF, 0xDEF9, 0x99ED, 0xFAB4, 0x99F1, 0xD5AD,
- 0x99FF, 0xF1E7, 0x9A01, 0xDEBE, 0x9A08, 0xDCC0, 0x9A0E, 0xD1C8,
- 0x9A0F, 0xD1C9, 0x9A19, 0xF8BE, 0x9A2B, 0xCBF6, 0x9A30, 0xD4F9,
- 0x9A36, 0xF5E2, 0x9A37, 0xE1D3, 0x9A40, 0xD8E9, 0x9A43, 0xF8FE,
- 0x9A45, 0xCFCC, 0x9A4D, 0xFDA4, 0x9A55, 0xCEF6, 0x9A57, 0xFAD0,
- 0x9A5A, 0xCCF3, 0x9A5B, 0xE6BE, 0x9A5F, 0xF6AE, 0x9A62, 0xD5F0,
- 0x9A65, 0xD1CA, 0x9A69, 0xFCBE, 0x9A6A, 0xD5F1, 0x9AA8, 0xCDE9,
- 0x9AB8, 0xFAB5, 0x9AD3, 0xE2D0, 0x9AD4, 0xF4F7, 0x9AD8, 0xCDD4,
- 0x9AE5, 0xE7A3, 0x9AEE, 0xDBA5, 0x9B1A, 0xE2D1, 0x9B27, 0xD7A2,
- 0x9B2A, 0xF7E3, 0x9B31, 0xEAA6, 0x9B3C, 0xD0A1, 0x9B41, 0xCEDA,
- 0x9B42, 0xFBEB, 0x9B43, 0xDBA6, 0x9B44, 0xDBDE, 0x9B45, 0xD8E5,
- 0x9B4F, 0xEAE0, 0x9B54, 0xD8AA, 0x9B5A, 0xE5E0, 0x9B6F, 0xD6DB,
- 0x9B8E, 0xEFC6, 0x9B91, 0xF8EA, 0x9B9F, 0xE4D5, 0x9BAB, 0xCEF7,
- 0x9BAE, 0xE0D8, 0x9BC9, 0xD7EF, 0x9BD6, 0xF4ED, 0x9BE4, 0xCDE6,
- 0x9BE8, 0xCCF4, 0x9C0D, 0xF5E3, 0x9C10, 0xE4CA, 0x9C12, 0xDCE1,
- 0x9C15, 0xF9C8, 0x9C25, 0xFCBF, 0x9C32, 0xE8A7, 0x9C3B, 0xD8C4,
- 0x9C47, 0xCBBE, 0x9C49, 0xDCAE, 0x9C57, 0xD7F7, 0x9CE5, 0xF0E8,
- 0x9CE7, 0xDDC0, 0x9CE9, 0xCFCD, 0x9CF3, 0xDCF3, 0x9CF4, 0xD9B0,
- 0x9CF6, 0xE6E9, 0x9D09, 0xE4BC, 0x9D1B, 0xEAC4, 0x9D26, 0xE4EC,
- 0x9D28, 0xE4E5, 0x9D3B, 0xFBF8, 0x9D51, 0xCCBB, 0x9D5D, 0xE4BD,
- 0x9D60, 0xCDDC, 0x9D61, 0xD9F7, 0x9D6C, 0xDDDF, 0x9D72, 0xEDCE,
- 0x9DA9, 0xD9D0, 0x9DAF, 0xE5A3, 0x9DB4, 0xF9CD, 0x9DC4, 0xCDAE,
- 0x9DD7, 0xCFCE, 0x9DF2, 0xF6AF, 0x9DF8, 0xFDD3, 0x9DF9, 0xEBED,
- 0x9DFA, 0xD6DC, 0x9E1A, 0xE5A4, 0x9E1E, 0xD5B6, 0x9E75, 0xD6DD,
- 0x9E79, 0xF9E9, 0x9E7D, 0xE7A4, 0x9E7F, 0xD6E3, 0x9E92, 0xD1CB,
- 0x9E93, 0xD6E4, 0x9E97, 0xD5F2, 0x9E9D, 0xDEFA, 0x9E9F, 0xD7F8,
- 0x9EA5, 0xD8EA, 0x9EB4, 0xCFD5, 0x9EB5, 0xD8FD, 0x9EBB, 0xD8AB,
- 0x9EBE, 0xFDCB, 0x9EC3, 0xFCDC, 0x9ECD, 0xE0A8, 0x9ECE, 0xD5F3,
- 0x9ED1, 0xFDD9, 0x9ED4, 0xCCA3, 0x9ED8, 0xD9F9, 0x9EDB, 0xD3EA,
- 0x9EDC, 0xF5F5, 0x9EDE, 0xEFC7, 0x9EE8, 0xD3DA, 0x9EF4, 0xDABD,
- 0x9F07, 0xE8A8, 0x9F08, 0xDCAF, 0x9F0E, 0xF0A3, 0x9F13, 0xCDD5,
- 0x9F20, 0xE0A9, 0x9F3B, 0xDEAC, 0x9F4A, 0xF0BA, 0x9F4B, 0xEEB1,
- 0x9F4E, 0xEEB2, 0x9F52, 0xF6CD, 0x9F5F, 0xEED2, 0x9F61, 0xD6C6,
- 0x9F67, 0xE0E5, 0x9F6A, 0xF3BB, 0x9F6C, 0xE5E1, 0x9F77, 0xE4CB,
- 0x9F8D, 0xD7A3, 0x9F90, 0xDBC2, 0x9F95, 0xCAFE, 0x9F9C, 0xCFCF,
- 0xAC00, 0xB0A1, 0xAC01, 0xB0A2, 0xAC02, 0x8141, 0xAC03, 0x8142,
- 0xAC04, 0xB0A3, 0xAC05, 0x8143, 0xAC06, 0x8144, 0xAC07, 0xB0A4,
- 0xAC08, 0xB0A5, 0xAC09, 0xB0A6, 0xAC0A, 0xB0A7, 0xAC0B, 0x8145,
- 0xAC0C, 0x8146, 0xAC0D, 0x8147, 0xAC0E, 0x8148, 0xAC0F, 0x8149,
- 0xAC10, 0xB0A8, 0xAC11, 0xB0A9, 0xAC12, 0xB0AA, 0xAC13, 0xB0AB,
- 0xAC14, 0xB0AC, 0xAC15, 0xB0AD, 0xAC16, 0xB0AE, 0xAC17, 0xB0AF,
- 0xAC18, 0x814A, 0xAC19, 0xB0B0, 0xAC1A, 0xB0B1, 0xAC1B, 0xB0B2,
- 0xAC1C, 0xB0B3, 0xAC1D, 0xB0B4, 0xAC1E, 0x814B, 0xAC1F, 0x814C,
- 0xAC20, 0xB0B5, 0xAC21, 0x814D, 0xAC22, 0x814E, 0xAC23, 0x814F,
- 0xAC24, 0xB0B6, 0xAC25, 0x8150, 0xAC26, 0x8151, 0xAC27, 0x8152,
- 0xAC28, 0x8153, 0xAC29, 0x8154, 0xAC2A, 0x8155, 0xAC2B, 0x8156,
- 0xAC2C, 0xB0B7, 0xAC2D, 0xB0B8, 0xAC2E, 0x8157, 0xAC2F, 0xB0B9,
- 0xAC30, 0xB0BA, 0xAC31, 0xB0BB, 0xAC32, 0x8158, 0xAC33, 0x8159,
- 0xAC34, 0x815A, 0xAC35, 0x8161, 0xAC36, 0x8162, 0xAC37, 0x8163,
- 0xAC38, 0xB0BC, 0xAC39, 0xB0BD, 0xAC3A, 0x8164, 0xAC3B, 0x8165,
- 0xAC3C, 0xB0BE, 0xAC3D, 0x8166, 0xAC3E, 0x8167, 0xAC3F, 0x8168,
- 0xAC40, 0xB0BF, 0xAC41, 0x8169, 0xAC42, 0x816A, 0xAC43, 0x816B,
- 0xAC44, 0x816C, 0xAC45, 0x816D, 0xAC46, 0x816E, 0xAC47, 0x816F,
- 0xAC48, 0x8170, 0xAC49, 0x8171, 0xAC4A, 0x8172, 0xAC4B, 0xB0C0,
- 0xAC4C, 0x8173, 0xAC4D, 0xB0C1, 0xAC4E, 0x8174, 0xAC4F, 0x8175,
- 0xAC50, 0x8176, 0xAC51, 0x8177, 0xAC52, 0x8178, 0xAC53, 0x8179,
- 0xAC54, 0xB0C2, 0xAC55, 0x817A, 0xAC56, 0x8181, 0xAC57, 0x8182,
- 0xAC58, 0xB0C3, 0xAC59, 0x8183, 0xAC5A, 0x8184, 0xAC5B, 0x8185,
- 0xAC5C, 0xB0C4, 0xAC5D, 0x8186, 0xAC5E, 0x8187, 0xAC5F, 0x8188,
- 0xAC60, 0x8189, 0xAC61, 0x818A, 0xAC62, 0x818B, 0xAC63, 0x818C,
- 0xAC64, 0x818D, 0xAC65, 0x818E, 0xAC66, 0x818F, 0xAC67, 0x8190,
- 0xAC68, 0x8191, 0xAC69, 0x8192, 0xAC6A, 0x8193, 0xAC6B, 0x8194,
- 0xAC6C, 0x8195, 0xAC6D, 0x8196, 0xAC6E, 0x8197, 0xAC6F, 0x8198,
- 0xAC70, 0xB0C5, 0xAC71, 0xB0C6, 0xAC72, 0x8199, 0xAC73, 0x819A,
- 0xAC74, 0xB0C7, 0xAC75, 0x819B, 0xAC76, 0x819C, 0xAC77, 0xB0C8,
- 0xAC78, 0xB0C9, 0xAC79, 0x819D, 0xAC7A, 0xB0CA, 0xAC7B, 0x819E,
- 0xAC7C, 0x819F, 0xAC7D, 0x81A0, 0xAC7E, 0x81A1, 0xAC7F, 0x81A2,
- 0xAC80, 0xB0CB, 0xAC81, 0xB0CC, 0xAC82, 0x81A3, 0xAC83, 0xB0CD,
- 0xAC84, 0xB0CE, 0xAC85, 0xB0CF, 0xAC86, 0xB0D0, 0xAC87, 0x81A4,
- 0xAC88, 0x81A5, 0xAC89, 0xB0D1, 0xAC8A, 0xB0D2, 0xAC8B, 0xB0D3,
- 0xAC8C, 0xB0D4, 0xAC8D, 0x81A6, 0xAC8E, 0x81A7, 0xAC8F, 0x81A8,
- 0xAC90, 0xB0D5, 0xAC91, 0x81A9, 0xAC92, 0x81AA, 0xAC93, 0x81AB,
- 0xAC94, 0xB0D6, 0xAC95, 0x81AC, 0xAC96, 0x81AD, 0xAC97, 0x81AE,
- 0xAC98, 0x81AF, 0xAC99, 0x81B0, 0xAC9A, 0x81B1, 0xAC9B, 0x81B2,
- 0xAC9C, 0xB0D7, 0xAC9D, 0xB0D8, 0xAC9E, 0x81B3, 0xAC9F, 0xB0D9,
- 0xACA0, 0xB0DA, 0xACA1, 0xB0DB, 0xACA2, 0x81B4, 0xACA3, 0x81B5,
- 0xACA4, 0x81B6, 0xACA5, 0x81B7, 0xACA6, 0x81B8, 0xACA7, 0x81B9,
- 0xACA8, 0xB0DC, 0xACA9, 0xB0DD, 0xACAA, 0xB0DE, 0xACAB, 0x81BA,
- 0xACAC, 0xB0DF, 0xACAD, 0x81BB, 0xACAE, 0x81BC, 0xACAF, 0xB0E0,
- 0xACB0, 0xB0E1, 0xACB1, 0x81BD, 0xACB2, 0x81BE, 0xACB3, 0x81BF,
- 0xACB4, 0x81C0, 0xACB5, 0x81C1, 0xACB6, 0x81C2, 0xACB7, 0x81C3,
- 0xACB8, 0xB0E2, 0xACB9, 0xB0E3, 0xACBA, 0x81C4, 0xACBB, 0xB0E4,
- 0xACBC, 0xB0E5, 0xACBD, 0xB0E6, 0xACBE, 0x81C5, 0xACBF, 0x81C6,
- 0xACC0, 0x81C7, 0xACC1, 0xB0E7, 0xACC2, 0x81C8, 0xACC3, 0x81C9,
- 0xACC4, 0xB0E8, 0xACC5, 0x81CA, 0xACC6, 0x81CB, 0xACC7, 0x81CC,
- 0xACC8, 0xB0E9, 0xACC9, 0x81CD, 0xACCA, 0x81CE, 0xACCB, 0x81CF,
- 0xACCC, 0xB0EA, 0xACCD, 0x81D0, 0xACCE, 0x81D1, 0xACCF, 0x81D2,
- 0xACD0, 0x81D3, 0xACD1, 0x81D4, 0xACD2, 0x81D5, 0xACD3, 0x81D6,
- 0xACD4, 0x81D7, 0xACD5, 0xB0EB, 0xACD6, 0x81D8, 0xACD7, 0xB0EC,
- 0xACD8, 0x81D9, 0xACD9, 0x81DA, 0xACDA, 0x81DB, 0xACDB, 0x81DC,
- 0xACDC, 0x81DD, 0xACDD, 0x81DE, 0xACDE, 0x81DF, 0xACDF, 0x81E0,
- 0xACE0, 0xB0ED, 0xACE1, 0xB0EE, 0xACE2, 0x81E1, 0xACE3, 0x81E2,
- 0xACE4, 0xB0EF, 0xACE5, 0x81E3, 0xACE6, 0x81E4, 0xACE7, 0xB0F0,
- 0xACE8, 0xB0F1, 0xACE9, 0x81E5, 0xACEA, 0xB0F2, 0xACEB, 0x81E6,
- 0xACEC, 0xB0F3, 0xACED, 0x81E7, 0xACEE, 0x81E8, 0xACEF, 0xB0F4,
- 0xACF0, 0xB0F5, 0xACF1, 0xB0F6, 0xACF2, 0x81E9, 0xACF3, 0xB0F7,
- 0xACF4, 0x81EA, 0xACF5, 0xB0F8, 0xACF6, 0xB0F9, 0xACF7, 0x81EB,
- 0xACF8, 0x81EC, 0xACF9, 0x81ED, 0xACFA, 0x81EE, 0xACFB, 0x81EF,
- 0xACFC, 0xB0FA, 0xACFD, 0xB0FB, 0xACFE, 0x81F0, 0xACFF, 0x81F1,
- 0xAD00, 0xB0FC, 0xAD01, 0x81F2, 0xAD02, 0x81F3, 0xAD03, 0x81F4,
- 0xAD04, 0xB0FD, 0xAD05, 0x81F5, 0xAD06, 0xB0FE, 0xAD07, 0x81F6,
- 0xAD08, 0x81F7, 0xAD09, 0x81F8, 0xAD0A, 0x81F9, 0xAD0B, 0x81FA,
- 0xAD0C, 0xB1A1, 0xAD0D, 0xB1A2, 0xAD0E, 0x81FB, 0xAD0F, 0xB1A3,
- 0xAD10, 0x81FC, 0xAD11, 0xB1A4, 0xAD12, 0x81FD, 0xAD13, 0x81FE,
- 0xAD14, 0x8241, 0xAD15, 0x8242, 0xAD16, 0x8243, 0xAD17, 0x8244,
- 0xAD18, 0xB1A5, 0xAD19, 0x8245, 0xAD1A, 0x8246, 0xAD1B, 0x8247,
- 0xAD1C, 0xB1A6, 0xAD1D, 0x8248, 0xAD1E, 0x8249, 0xAD1F, 0x824A,
- 0xAD20, 0xB1A7, 0xAD21, 0x824B, 0xAD22, 0x824C, 0xAD23, 0x824D,
- 0xAD24, 0x824E, 0xAD25, 0x824F, 0xAD26, 0x8250, 0xAD27, 0x8251,
- 0xAD28, 0x8252, 0xAD29, 0xB1A8, 0xAD2A, 0x8253, 0xAD2B, 0x8254,
- 0xAD2C, 0xB1A9, 0xAD2D, 0xB1AA, 0xAD2E, 0x8255, 0xAD2F, 0x8256,
- 0xAD30, 0x8257, 0xAD31, 0x8258, 0xAD32, 0x8259, 0xAD33, 0x825A,
- 0xAD34, 0xB1AB, 0xAD35, 0xB1AC, 0xAD36, 0x8261, 0xAD37, 0x8262,
- 0xAD38, 0xB1AD, 0xAD39, 0x8263, 0xAD3A, 0x8264, 0xAD3B, 0x8265,
- 0xAD3C, 0xB1AE, 0xAD3D, 0x8266, 0xAD3E, 0x8267, 0xAD3F, 0x8268,
- 0xAD40, 0x8269, 0xAD41, 0x826A, 0xAD42, 0x826B, 0xAD43, 0x826C,
- 0xAD44, 0xB1AF, 0xAD45, 0xB1B0, 0xAD46, 0x826D, 0xAD47, 0xB1B1,
- 0xAD48, 0x826E, 0xAD49, 0xB1B2, 0xAD4A, 0x826F, 0xAD4B, 0x8270,
- 0xAD4C, 0x8271, 0xAD4D, 0x8272, 0xAD4E, 0x8273, 0xAD4F, 0x8274,
- 0xAD50, 0xB1B3, 0xAD51, 0x8275, 0xAD52, 0x8276, 0xAD53, 0x8277,
- 0xAD54, 0xB1B4, 0xAD55, 0x8278, 0xAD56, 0x8279, 0xAD57, 0x827A,
- 0xAD58, 0xB1B5, 0xAD59, 0x8281, 0xAD5A, 0x8282, 0xAD5B, 0x8283,
- 0xAD5C, 0x8284, 0xAD5D, 0x8285, 0xAD5E, 0x8286, 0xAD5F, 0x8287,
- 0xAD60, 0x8288, 0xAD61, 0xB1B6, 0xAD62, 0x8289, 0xAD63, 0xB1B7,
- 0xAD64, 0x828A, 0xAD65, 0x828B, 0xAD66, 0x828C, 0xAD67, 0x828D,
- 0xAD68, 0x828E, 0xAD69, 0x828F, 0xAD6A, 0x8290, 0xAD6B, 0x8291,
- 0xAD6C, 0xB1B8, 0xAD6D, 0xB1B9, 0xAD6E, 0x8292, 0xAD6F, 0x8293,
- 0xAD70, 0xB1BA, 0xAD71, 0x8294, 0xAD72, 0x8295, 0xAD73, 0xB1BB,
- 0xAD74, 0xB1BC, 0xAD75, 0xB1BD, 0xAD76, 0xB1BE, 0xAD77, 0x8296,
- 0xAD78, 0x8297, 0xAD79, 0x8298, 0xAD7A, 0x8299, 0xAD7B, 0xB1BF,
- 0xAD7C, 0xB1C0, 0xAD7D, 0xB1C1, 0xAD7E, 0x829A, 0xAD7F, 0xB1C2,
- 0xAD80, 0x829B, 0xAD81, 0xB1C3, 0xAD82, 0xB1C4, 0xAD83, 0x829C,
- 0xAD84, 0x829D, 0xAD85, 0x829E, 0xAD86, 0x829F, 0xAD87, 0x82A0,
- 0xAD88, 0xB1C5, 0xAD89, 0xB1C6, 0xAD8A, 0x82A1, 0xAD8B, 0x82A2,
- 0xAD8C, 0xB1C7, 0xAD8D, 0x82A3, 0xAD8E, 0x82A4, 0xAD8F, 0x82A5,
- 0xAD90, 0xB1C8, 0xAD91, 0x82A6, 0xAD92, 0x82A7, 0xAD93, 0x82A8,
- 0xAD94, 0x82A9, 0xAD95, 0x82AA, 0xAD96, 0x82AB, 0xAD97, 0x82AC,
- 0xAD98, 0x82AD, 0xAD99, 0x82AE, 0xAD9A, 0x82AF, 0xAD9B, 0x82B0,
- 0xAD9C, 0xB1C9, 0xAD9D, 0xB1CA, 0xAD9E, 0x82B1, 0xAD9F, 0x82B2,
- 0xADA0, 0x82B3, 0xADA1, 0x82B4, 0xADA2, 0x82B5, 0xADA3, 0x82B6,
- 0xADA4, 0xB1CB, 0xADA5, 0x82B7, 0xADA6, 0x82B8, 0xADA7, 0x82B9,
- 0xADA8, 0x82BA, 0xADA9, 0x82BB, 0xADAA, 0x82BC, 0xADAB, 0x82BD,
- 0xADAC, 0x82BE, 0xADAD, 0x82BF, 0xADAE, 0x82C0, 0xADAF, 0x82C1,
- 0xADB0, 0x82C2, 0xADB1, 0x82C3, 0xADB2, 0x82C4, 0xADB3, 0x82C5,
- 0xADB4, 0x82C6, 0xADB5, 0x82C7, 0xADB6, 0x82C8, 0xADB7, 0xB1CC,
- 0xADB8, 0x82C9, 0xADB9, 0x82CA, 0xADBA, 0x82CB, 0xADBB, 0x82CC,
- 0xADBC, 0x82CD, 0xADBD, 0x82CE, 0xADBE, 0x82CF, 0xADBF, 0x82D0,
- 0xADC0, 0xB1CD, 0xADC1, 0xB1CE, 0xADC2, 0x82D1, 0xADC3, 0x82D2,
- 0xADC4, 0xB1CF, 0xADC5, 0x82D3, 0xADC6, 0x82D4, 0xADC7, 0x82D5,
- 0xADC8, 0xB1D0, 0xADC9, 0x82D6, 0xADCA, 0x82D7, 0xADCB, 0x82D8,
- 0xADCC, 0x82D9, 0xADCD, 0x82DA, 0xADCE, 0x82DB, 0xADCF, 0x82DC,
- 0xADD0, 0xB1D1, 0xADD1, 0xB1D2, 0xADD2, 0x82DD, 0xADD3, 0xB1D3,
- 0xADD4, 0x82DE, 0xADD5, 0x82DF, 0xADD6, 0x82E0, 0xADD7, 0x82E1,
- 0xADD8, 0x82E2, 0xADD9, 0x82E3, 0xADDA, 0x82E4, 0xADDB, 0x82E5,
- 0xADDC, 0xB1D4, 0xADDD, 0x82E6, 0xADDE, 0x82E7, 0xADDF, 0x82E8,
- 0xADE0, 0xB1D5, 0xADE1, 0x82E9, 0xADE2, 0x82EA, 0xADE3, 0x82EB,
- 0xADE4, 0xB1D6, 0xADE5, 0x82EC, 0xADE6, 0x82ED, 0xADE7, 0x82EE,
- 0xADE8, 0x82EF, 0xADE9, 0x82F0, 0xADEA, 0x82F1, 0xADEB, 0x82F2,
- 0xADEC, 0x82F3, 0xADED, 0x82F4, 0xADEE, 0x82F5, 0xADEF, 0x82F6,
- 0xADF0, 0x82F7, 0xADF1, 0x82F8, 0xADF2, 0x82F9, 0xADF3, 0x82FA,
- 0xADF4, 0x82FB, 0xADF5, 0x82FC, 0xADF6, 0x82FD, 0xADF7, 0x82FE,
- 0xADF8, 0xB1D7, 0xADF9, 0xB1D8, 0xADFA, 0x8341, 0xADFB, 0x8342,
- 0xADFC, 0xB1D9, 0xADFD, 0x8343, 0xADFE, 0x8344, 0xADFF, 0xB1DA,
- 0xAE00, 0xB1DB, 0xAE01, 0xB1DC, 0xAE02, 0x8345, 0xAE03, 0x8346,
- 0xAE04, 0x8347, 0xAE05, 0x8348, 0xAE06, 0x8349, 0xAE07, 0x834A,
- 0xAE08, 0xB1DD, 0xAE09, 0xB1DE, 0xAE0A, 0x834B, 0xAE0B, 0xB1DF,
- 0xAE0C, 0x834C, 0xAE0D, 0xB1E0, 0xAE0E, 0x834D, 0xAE0F, 0x834E,
- 0xAE10, 0x834F, 0xAE11, 0x8350, 0xAE12, 0x8351, 0xAE13, 0x8352,
- 0xAE14, 0xB1E1, 0xAE15, 0x8353, 0xAE16, 0x8354, 0xAE17, 0x8355,
- 0xAE18, 0x8356, 0xAE19, 0x8357, 0xAE1A, 0x8358, 0xAE1B, 0x8359,
- 0xAE1C, 0x835A, 0xAE1D, 0x8361, 0xAE1E, 0x8362, 0xAE1F, 0x8363,
- 0xAE20, 0x8364, 0xAE21, 0x8365, 0xAE22, 0x8366, 0xAE23, 0x8367,
- 0xAE24, 0x8368, 0xAE25, 0x8369, 0xAE26, 0x836A, 0xAE27, 0x836B,
- 0xAE28, 0x836C, 0xAE29, 0x836D, 0xAE2A, 0x836E, 0xAE2B, 0x836F,
- 0xAE2C, 0x8370, 0xAE2D, 0x8371, 0xAE2E, 0x8372, 0xAE2F, 0x8373,
- 0xAE30, 0xB1E2, 0xAE31, 0xB1E3, 0xAE32, 0x8374, 0xAE33, 0x8375,
- 0xAE34, 0xB1E4, 0xAE35, 0x8376, 0xAE36, 0x8377, 0xAE37, 0xB1E5,
- 0xAE38, 0xB1E6, 0xAE39, 0x8378, 0xAE3A, 0xB1E7, 0xAE3B, 0x8379,
- 0xAE3C, 0x837A, 0xAE3D, 0x8381, 0xAE3E, 0x8382, 0xAE3F, 0x8383,
- 0xAE40, 0xB1E8, 0xAE41, 0xB1E9, 0xAE42, 0x8384, 0xAE43, 0xB1EA,
- 0xAE44, 0x8385, 0xAE45, 0xB1EB, 0xAE46, 0xB1EC, 0xAE47, 0x8386,
- 0xAE48, 0x8387, 0xAE49, 0x8388, 0xAE4A, 0xB1ED, 0xAE4B, 0x8389,
- 0xAE4C, 0xB1EE, 0xAE4D, 0xB1EF, 0xAE4E, 0xB1F0, 0xAE4F, 0x838A,
- 0xAE50, 0xB1F1, 0xAE51, 0x838B, 0xAE52, 0x838C, 0xAE53, 0x838D,
- 0xAE54, 0xB1F2, 0xAE55, 0x838E, 0xAE56, 0xB1F3, 0xAE57, 0x838F,
- 0xAE58, 0x8390, 0xAE59, 0x8391, 0xAE5A, 0x8392, 0xAE5B, 0x8393,
- 0xAE5C, 0xB1F4, 0xAE5D, 0xB1F5, 0xAE5E, 0x8394, 0xAE5F, 0xB1F6,
- 0xAE60, 0xB1F7, 0xAE61, 0xB1F8, 0xAE62, 0x8395, 0xAE63, 0x8396,
- 0xAE64, 0x8397, 0xAE65, 0xB1F9, 0xAE66, 0x8398, 0xAE67, 0x8399,
- 0xAE68, 0xB1FA, 0xAE69, 0xB1FB, 0xAE6A, 0x839A, 0xAE6B, 0x839B,
- 0xAE6C, 0xB1FC, 0xAE6D, 0x839C, 0xAE6E, 0x839D, 0xAE6F, 0x839E,
- 0xAE70, 0xB1FD, 0xAE71, 0x839F, 0xAE72, 0x83A0, 0xAE73, 0x83A1,
- 0xAE74, 0x83A2, 0xAE75, 0x83A3, 0xAE76, 0x83A4, 0xAE77, 0x83A5,
- 0xAE78, 0xB1FE, 0xAE79, 0xB2A1, 0xAE7A, 0x83A6, 0xAE7B, 0xB2A2,
- 0xAE7C, 0xB2A3, 0xAE7D, 0xB2A4, 0xAE7E, 0x83A7, 0xAE7F, 0x83A8,
- 0xAE80, 0x83A9, 0xAE81, 0x83AA, 0xAE82, 0x83AB, 0xAE83, 0x83AC,
- 0xAE84, 0xB2A5, 0xAE85, 0xB2A6, 0xAE86, 0x83AD, 0xAE87, 0x83AE,
- 0xAE88, 0x83AF, 0xAE89, 0x83B0, 0xAE8A, 0x83B1, 0xAE8B, 0x83B2,
- 0xAE8C, 0xB2A7, 0xAE8D, 0x83B3, 0xAE8E, 0x83B4, 0xAE8F, 0x83B5,
- 0xAE90, 0x83B6, 0xAE91, 0x83B7, 0xAE92, 0x83B8, 0xAE93, 0x83B9,
- 0xAE94, 0x83BA, 0xAE95, 0x83BB, 0xAE96, 0x83BC, 0xAE97, 0x83BD,
- 0xAE98, 0x83BE, 0xAE99, 0x83BF, 0xAE9A, 0x83C0, 0xAE9B, 0x83C1,
- 0xAE9C, 0x83C2, 0xAE9D, 0x83C3, 0xAE9E, 0x83C4, 0xAE9F, 0x83C5,
- 0xAEA0, 0x83C6, 0xAEA1, 0x83C7, 0xAEA2, 0x83C8, 0xAEA3, 0x83C9,
- 0xAEA4, 0x83CA, 0xAEA5, 0x83CB, 0xAEA6, 0x83CC, 0xAEA7, 0x83CD,
- 0xAEA8, 0x83CE, 0xAEA9, 0x83CF, 0xAEAA, 0x83D0, 0xAEAB, 0x83D1,
- 0xAEAC, 0x83D2, 0xAEAD, 0x83D3, 0xAEAE, 0x83D4, 0xAEAF, 0x83D5,
- 0xAEB0, 0x83D6, 0xAEB1, 0x83D7, 0xAEB2, 0x83D8, 0xAEB3, 0x83D9,
- 0xAEB4, 0x83DA, 0xAEB5, 0x83DB, 0xAEB6, 0x83DC, 0xAEB7, 0x83DD,
- 0xAEB8, 0x83DE, 0xAEB9, 0x83DF, 0xAEBA, 0x83E0, 0xAEBB, 0x83E1,
- 0xAEBC, 0xB2A8, 0xAEBD, 0xB2A9, 0xAEBE, 0xB2AA, 0xAEBF, 0x83E2,
- 0xAEC0, 0xB2AB, 0xAEC1, 0x83E3, 0xAEC2, 0x83E4, 0xAEC3, 0x83E5,
- 0xAEC4, 0xB2AC, 0xAEC5, 0x83E6, 0xAEC6, 0x83E7, 0xAEC7, 0x83E8,
- 0xAEC8, 0x83E9, 0xAEC9, 0x83EA, 0xAECA, 0x83EB, 0xAECB, 0x83EC,
- 0xAECC, 0xB2AD, 0xAECD, 0xB2AE, 0xAECE, 0x83ED, 0xAECF, 0xB2AF,
- 0xAED0, 0xB2B0, 0xAED1, 0xB2B1, 0xAED2, 0x83EE, 0xAED3, 0x83EF,
- 0xAED4, 0x83F0, 0xAED5, 0x83F1, 0xAED6, 0x83F2, 0xAED7, 0x83F3,
- 0xAED8, 0xB2B2, 0xAED9, 0xB2B3, 0xAEDA, 0x83F4, 0xAEDB, 0x83F5,
- 0xAEDC, 0xB2B4, 0xAEDD, 0x83F6, 0xAEDE, 0x83F7, 0xAEDF, 0x83F8,
- 0xAEE0, 0x83F9, 0xAEE1, 0x83FA, 0xAEE2, 0x83FB, 0xAEE3, 0x83FC,
- 0xAEE4, 0x83FD, 0xAEE5, 0x83FE, 0xAEE6, 0x8441, 0xAEE7, 0x8442,
- 0xAEE8, 0xB2B5, 0xAEE9, 0x8443, 0xAEEA, 0x8444, 0xAEEB, 0xB2B6,
- 0xAEEC, 0x8445, 0xAEED, 0xB2B7, 0xAEEE, 0x8446, 0xAEEF, 0x8447,
- 0xAEF0, 0x8448, 0xAEF1, 0x8449, 0xAEF2, 0x844A, 0xAEF3, 0x844B,
- 0xAEF4, 0xB2B8, 0xAEF5, 0x844C, 0xAEF6, 0x844D, 0xAEF7, 0x844E,
- 0xAEF8, 0xB2B9, 0xAEF9, 0x844F, 0xAEFA, 0x8450, 0xAEFB, 0x8451,
- 0xAEFC, 0xB2BA, 0xAEFD, 0x8452, 0xAEFE, 0x8453, 0xAEFF, 0x8454,
- 0xAF00, 0x8455, 0xAF01, 0x8456, 0xAF02, 0x8457, 0xAF03, 0x8458,
- 0xAF04, 0x8459, 0xAF05, 0x845A, 0xAF06, 0x8461, 0xAF07, 0xB2BB,
- 0xAF08, 0xB2BC, 0xAF09, 0x8462, 0xAF0A, 0x8463, 0xAF0B, 0x8464,
- 0xAF0C, 0x8465, 0xAF0D, 0xB2BD, 0xAF0E, 0x8466, 0xAF0F, 0x8467,
- 0xAF10, 0xB2BE, 0xAF11, 0x8468, 0xAF12, 0x8469, 0xAF13, 0x846A,
- 0xAF14, 0x846B, 0xAF15, 0x846C, 0xAF16, 0x846D, 0xAF17, 0x846E,
- 0xAF18, 0x846F, 0xAF19, 0x8470, 0xAF1A, 0x8471, 0xAF1B, 0x8472,
- 0xAF1C, 0x8473, 0xAF1D, 0x8474, 0xAF1E, 0x8475, 0xAF1F, 0x8476,
- 0xAF20, 0x8477, 0xAF21, 0x8478, 0xAF22, 0x8479, 0xAF23, 0x847A,
- 0xAF24, 0x8481, 0xAF25, 0x8482, 0xAF26, 0x8483, 0xAF27, 0x8484,
- 0xAF28, 0x8485, 0xAF29, 0x8486, 0xAF2A, 0x8487, 0xAF2B, 0x8488,
- 0xAF2C, 0xB2BF, 0xAF2D, 0xB2C0, 0xAF2E, 0x8489, 0xAF2F, 0x848A,
- 0xAF30, 0xB2C1, 0xAF31, 0x848B, 0xAF32, 0xB2C2, 0xAF33, 0x848C,
- 0xAF34, 0xB2C3, 0xAF35, 0x848D, 0xAF36, 0x848E, 0xAF37, 0x848F,
- 0xAF38, 0x8490, 0xAF39, 0x8491, 0xAF3A, 0x8492, 0xAF3B, 0x8493,
- 0xAF3C, 0xB2C4, 0xAF3D, 0xB2C5, 0xAF3E, 0x8494, 0xAF3F, 0xB2C6,
- 0xAF40, 0x8495, 0xAF41, 0xB2C7, 0xAF42, 0xB2C8, 0xAF43, 0xB2C9,
- 0xAF44, 0x8496, 0xAF45, 0x8497, 0xAF46, 0x8498, 0xAF47, 0x8499,
- 0xAF48, 0xB2CA, 0xAF49, 0xB2CB, 0xAF4A, 0x849A, 0xAF4B, 0x849B,
- 0xAF4C, 0x849C, 0xAF4D, 0x849D, 0xAF4E, 0x849E, 0xAF4F, 0x849F,
- 0xAF50, 0xB2CC, 0xAF51, 0x84A0, 0xAF52, 0x84A1, 0xAF53, 0x84A2,
- 0xAF54, 0x84A3, 0xAF55, 0x84A4, 0xAF56, 0x84A5, 0xAF57, 0x84A6,
- 0xAF58, 0x84A7, 0xAF59, 0x84A8, 0xAF5A, 0x84A9, 0xAF5B, 0x84AA,
- 0xAF5C, 0xB2CD, 0xAF5D, 0xB2CE, 0xAF5E, 0x84AB, 0xAF5F, 0x84AC,
- 0xAF60, 0x84AD, 0xAF61, 0x84AE, 0xAF62, 0x84AF, 0xAF63, 0x84B0,
- 0xAF64, 0xB2CF, 0xAF65, 0xB2D0, 0xAF66, 0x84B1, 0xAF67, 0x84B2,
- 0xAF68, 0x84B3, 0xAF69, 0x84B4, 0xAF6A, 0x84B5, 0xAF6B, 0x84B6,
- 0xAF6C, 0x84B7, 0xAF6D, 0x84B8, 0xAF6E, 0x84B9, 0xAF6F, 0x84BA,
- 0xAF70, 0x84BB, 0xAF71, 0x84BC, 0xAF72, 0x84BD, 0xAF73, 0x84BE,
- 0xAF74, 0x84BF, 0xAF75, 0x84C0, 0xAF76, 0x84C1, 0xAF77, 0x84C2,
- 0xAF78, 0x84C3, 0xAF79, 0xB2D1, 0xAF7A, 0x84C4, 0xAF7B, 0x84C5,
- 0xAF7C, 0x84C6, 0xAF7D, 0x84C7, 0xAF7E, 0x84C8, 0xAF7F, 0x84C9,
- 0xAF80, 0xB2D2, 0xAF81, 0x84CA, 0xAF82, 0x84CB, 0xAF83, 0x84CC,
- 0xAF84, 0xB2D3, 0xAF85, 0x84CD, 0xAF86, 0x84CE, 0xAF87, 0x84CF,
- 0xAF88, 0xB2D4, 0xAF89, 0x84D0, 0xAF8A, 0x84D1, 0xAF8B, 0x84D2,
- 0xAF8C, 0x84D3, 0xAF8D, 0x84D4, 0xAF8E, 0x84D5, 0xAF8F, 0x84D6,
- 0xAF90, 0xB2D5, 0xAF91, 0xB2D6, 0xAF92, 0x84D7, 0xAF93, 0x84D8,
- 0xAF94, 0x84D9, 0xAF95, 0xB2D7, 0xAF96, 0x84DA, 0xAF97, 0x84DB,
- 0xAF98, 0x84DC, 0xAF99, 0x84DD, 0xAF9A, 0x84DE, 0xAF9B, 0x84DF,
- 0xAF9C, 0xB2D8, 0xAF9D, 0x84E0, 0xAF9E, 0x84E1, 0xAF9F, 0x84E2,
- 0xAFA0, 0x84E3, 0xAFA1, 0x84E4, 0xAFA2, 0x84E5, 0xAFA3, 0x84E6,
- 0xAFA4, 0x84E7, 0xAFA5, 0x84E8, 0xAFA6, 0x84E9, 0xAFA7, 0x84EA,
- 0xAFA8, 0x84EB, 0xAFA9, 0x84EC, 0xAFAA, 0x84ED, 0xAFAB, 0x84EE,
- 0xAFAC, 0x84EF, 0xAFAD, 0x84F0, 0xAFAE, 0x84F1, 0xAFAF, 0x84F2,
- 0xAFB0, 0x84F3, 0xAFB1, 0x84F4, 0xAFB2, 0x84F5, 0xAFB3, 0x84F6,
- 0xAFB4, 0x84F7, 0xAFB5, 0x84F8, 0xAFB6, 0x84F9, 0xAFB7, 0x84FA,
- 0xAFB8, 0xB2D9, 0xAFB9, 0xB2DA, 0xAFBA, 0x84FB, 0xAFBB, 0x84FC,
- 0xAFBC, 0xB2DB, 0xAFBD, 0x84FD, 0xAFBE, 0x84FE, 0xAFBF, 0x8541,
- 0xAFC0, 0xB2DC, 0xAFC1, 0x8542, 0xAFC2, 0x8543, 0xAFC3, 0x8544,
- 0xAFC4, 0x8545, 0xAFC5, 0x8546, 0xAFC6, 0x8547, 0xAFC7, 0xB2DD,
- 0xAFC8, 0xB2DE, 0xAFC9, 0xB2DF, 0xAFCA, 0x8548, 0xAFCB, 0xB2E0,
- 0xAFCC, 0x8549, 0xAFCD, 0xB2E1, 0xAFCE, 0xB2E2, 0xAFCF, 0x854A,
- 0xAFD0, 0x854B, 0xAFD1, 0x854C, 0xAFD2, 0x854D, 0xAFD3, 0x854E,
- 0xAFD4, 0xB2E3, 0xAFD5, 0x854F, 0xAFD6, 0x8550, 0xAFD7, 0x8551,
- 0xAFD8, 0x8552, 0xAFD9, 0x8553, 0xAFDA, 0x8554, 0xAFDB, 0x8555,
- 0xAFDC, 0xB2E4, 0xAFDD, 0x8556, 0xAFDE, 0x8557, 0xAFDF, 0x8558,
- 0xAFE0, 0x8559, 0xAFE1, 0x855A, 0xAFE2, 0x8561, 0xAFE3, 0x8562,
- 0xAFE4, 0x8563, 0xAFE5, 0x8564, 0xAFE6, 0x8565, 0xAFE7, 0x8566,
- 0xAFE8, 0xB2E5, 0xAFE9, 0xB2E6, 0xAFEA, 0x8567, 0xAFEB, 0x8568,
- 0xAFEC, 0x8569, 0xAFED, 0x856A, 0xAFEE, 0x856B, 0xAFEF, 0x856C,
- 0xAFF0, 0xB2E7, 0xAFF1, 0xB2E8, 0xAFF2, 0x856D, 0xAFF3, 0x856E,
- 0xAFF4, 0xB2E9, 0xAFF5, 0x856F, 0xAFF6, 0x8570, 0xAFF7, 0x8571,
- 0xAFF8, 0xB2EA, 0xAFF9, 0x8572, 0xAFFA, 0x8573, 0xAFFB, 0x8574,
- 0xAFFC, 0x8575, 0xAFFD, 0x8576, 0xAFFE, 0x8577, 0xAFFF, 0x8578,
- 0xB000, 0xB2EB, 0xB001, 0xB2EC, 0xB002, 0x8579, 0xB003, 0x857A,
- 0xB004, 0xB2ED, 0xB005, 0x8581, 0xB006, 0x8582, 0xB007, 0x8583,
- 0xB008, 0x8584, 0xB009, 0x8585, 0xB00A, 0x8586, 0xB00B, 0x8587,
- 0xB00C, 0xB2EE, 0xB00D, 0x8588, 0xB00E, 0x8589, 0xB00F, 0x858A,
- 0xB010, 0xB2EF, 0xB011, 0x858B, 0xB012, 0x858C, 0xB013, 0x858D,
- 0xB014, 0xB2F0, 0xB015, 0x858E, 0xB016, 0x858F, 0xB017, 0x8590,
- 0xB018, 0x8591, 0xB019, 0x8592, 0xB01A, 0x8593, 0xB01B, 0x8594,
- 0xB01C, 0xB2F1, 0xB01D, 0xB2F2, 0xB01E, 0x8595, 0xB01F, 0x8596,
- 0xB020, 0x8597, 0xB021, 0x8598, 0xB022, 0x8599, 0xB023, 0x859A,
- 0xB024, 0x859B, 0xB025, 0x859C, 0xB026, 0x859D, 0xB027, 0x859E,
- 0xB028, 0xB2F3, 0xB029, 0x859F, 0xB02A, 0x85A0, 0xB02B, 0x85A1,
- 0xB02C, 0x85A2, 0xB02D, 0x85A3, 0xB02E, 0x85A4, 0xB02F, 0x85A5,
- 0xB030, 0x85A6, 0xB031, 0x85A7, 0xB032, 0x85A8, 0xB033, 0x85A9,
- 0xB034, 0x85AA, 0xB035, 0x85AB, 0xB036, 0x85AC, 0xB037, 0x85AD,
- 0xB038, 0x85AE, 0xB039, 0x85AF, 0xB03A, 0x85B0, 0xB03B, 0x85B1,
- 0xB03C, 0x85B2, 0xB03D, 0x85B3, 0xB03E, 0x85B4, 0xB03F, 0x85B5,
- 0xB040, 0x85B6, 0xB041, 0x85B7, 0xB042, 0x85B8, 0xB043, 0x85B9,
- 0xB044, 0xB2F4, 0xB045, 0xB2F5, 0xB046, 0x85BA, 0xB047, 0x85BB,
- 0xB048, 0xB2F6, 0xB049, 0x85BC, 0xB04A, 0xB2F7, 0xB04B, 0x85BD,
- 0xB04C, 0xB2F8, 0xB04D, 0x85BE, 0xB04E, 0xB2F9, 0xB04F, 0x85BF,
- 0xB050, 0x85C0, 0xB051, 0x85C1, 0xB052, 0x85C2, 0xB053, 0xB2FA,
- 0xB054, 0xB2FB, 0xB055, 0xB2FC, 0xB056, 0x85C3, 0xB057, 0xB2FD,
- 0xB058, 0x85C4, 0xB059, 0xB2FE, 0xB05A, 0x85C5, 0xB05B, 0x85C6,
- 0xB05C, 0x85C7, 0xB05D, 0xB3A1, 0xB05E, 0x85C8, 0xB05F, 0x85C9,
- 0xB060, 0x85CA, 0xB061, 0x85CB, 0xB062, 0x85CC, 0xB063, 0x85CD,
- 0xB064, 0x85CE, 0xB065, 0x85CF, 0xB066, 0x85D0, 0xB067, 0x85D1,
- 0xB068, 0x85D2, 0xB069, 0x85D3, 0xB06A, 0x85D4, 0xB06B, 0x85D5,
- 0xB06C, 0x85D6, 0xB06D, 0x85D7, 0xB06E, 0x85D8, 0xB06F, 0x85D9,
- 0xB070, 0x85DA, 0xB071, 0x85DB, 0xB072, 0x85DC, 0xB073, 0x85DD,
- 0xB074, 0x85DE, 0xB075, 0x85DF, 0xB076, 0x85E0, 0xB077, 0x85E1,
- 0xB078, 0x85E2, 0xB079, 0x85E3, 0xB07A, 0x85E4, 0xB07B, 0x85E5,
- 0xB07C, 0xB3A2, 0xB07D, 0xB3A3, 0xB07E, 0x85E6, 0xB07F, 0x85E7,
- 0xB080, 0xB3A4, 0xB081, 0x85E8, 0xB082, 0x85E9, 0xB083, 0x85EA,
- 0xB084, 0xB3A5, 0xB085, 0x85EB, 0xB086, 0x85EC, 0xB087, 0x85ED,
- 0xB088, 0x85EE, 0xB089, 0x85EF, 0xB08A, 0x85F0, 0xB08B, 0x85F1,
- 0xB08C, 0xB3A6, 0xB08D, 0xB3A7, 0xB08E, 0x85F2, 0xB08F, 0xB3A8,
- 0xB090, 0x85F3, 0xB091, 0xB3A9, 0xB092, 0x85F4, 0xB093, 0x85F5,
- 0xB094, 0x85F6, 0xB095, 0x85F7, 0xB096, 0x85F8, 0xB097, 0x85F9,
- 0xB098, 0xB3AA, 0xB099, 0xB3AB, 0xB09A, 0xB3AC, 0xB09B, 0x85FA,
- 0xB09C, 0xB3AD, 0xB09D, 0x85FB, 0xB09E, 0x85FC, 0xB09F, 0xB3AE,
- 0xB0A0, 0xB3AF, 0xB0A1, 0xB3B0, 0xB0A2, 0xB3B1, 0xB0A3, 0x85FD,
- 0xB0A4, 0x85FE, 0xB0A5, 0x8641, 0xB0A6, 0x8642, 0xB0A7, 0x8643,
- 0xB0A8, 0xB3B2, 0xB0A9, 0xB3B3, 0xB0AA, 0x8644, 0xB0AB, 0xB3B4,
- 0xB0AC, 0xB3B5, 0xB0AD, 0xB3B6, 0xB0AE, 0xB3B7, 0xB0AF, 0xB3B8,
- 0xB0B0, 0x8645, 0xB0B1, 0xB3B9, 0xB0B2, 0x8646, 0xB0B3, 0xB3BA,
- 0xB0B4, 0xB3BB, 0xB0B5, 0xB3BC, 0xB0B6, 0x8647, 0xB0B7, 0x8648,
- 0xB0B8, 0xB3BD, 0xB0B9, 0x8649, 0xB0BA, 0x864A, 0xB0BB, 0x864B,
- 0xB0BC, 0xB3BE, 0xB0BD, 0x864C, 0xB0BE, 0x864D, 0xB0BF, 0x864E,
- 0xB0C0, 0x864F, 0xB0C1, 0x8650, 0xB0C2, 0x8651, 0xB0C3, 0x8652,
- 0xB0C4, 0xB3BF, 0xB0C5, 0xB3C0, 0xB0C6, 0x8653, 0xB0C7, 0xB3C1,
- 0xB0C8, 0xB3C2, 0xB0C9, 0xB3C3, 0xB0CA, 0x8654, 0xB0CB, 0x8655,
- 0xB0CC, 0x8656, 0xB0CD, 0x8657, 0xB0CE, 0x8658, 0xB0CF, 0x8659,
- 0xB0D0, 0xB3C4, 0xB0D1, 0xB3C5, 0xB0D2, 0x865A, 0xB0D3, 0x8661,
- 0xB0D4, 0xB3C6, 0xB0D5, 0x8662, 0xB0D6, 0x8663, 0xB0D7, 0x8664,
- 0xB0D8, 0xB3C7, 0xB0D9, 0x8665, 0xB0DA, 0x8666, 0xB0DB, 0x8667,
- 0xB0DC, 0x8668, 0xB0DD, 0x8669, 0xB0DE, 0x866A, 0xB0DF, 0x866B,
- 0xB0E0, 0xB3C8, 0xB0E1, 0x866C, 0xB0E2, 0x866D, 0xB0E3, 0x866E,
- 0xB0E4, 0x866F, 0xB0E5, 0xB3C9, 0xB0E6, 0x8670, 0xB0E7, 0x8671,
- 0xB0E8, 0x8672, 0xB0E9, 0x8673, 0xB0EA, 0x8674, 0xB0EB, 0x8675,
- 0xB0EC, 0x8676, 0xB0ED, 0x8677, 0xB0EE, 0x8678, 0xB0EF, 0x8679,
- 0xB0F0, 0x867A, 0xB0F1, 0x8681, 0xB0F2, 0x8682, 0xB0F3, 0x8683,
- 0xB0F4, 0x8684, 0xB0F5, 0x8685, 0xB0F6, 0x8686, 0xB0F7, 0x8687,
- 0xB0F8, 0x8688, 0xB0F9, 0x8689, 0xB0FA, 0x868A, 0xB0FB, 0x868B,
- 0xB0FC, 0x868C, 0xB0FD, 0x868D, 0xB0FE, 0x868E, 0xB0FF, 0x868F,
- 0xB100, 0x8690, 0xB101, 0x8691, 0xB102, 0x8692, 0xB103, 0x8693,
- 0xB104, 0x8694, 0xB105, 0x8695, 0xB106, 0x8696, 0xB107, 0x8697,
- 0xB108, 0xB3CA, 0xB109, 0xB3CB, 0xB10A, 0x8698, 0xB10B, 0xB3CC,
- 0xB10C, 0xB3CD, 0xB10D, 0x8699, 0xB10E, 0x869A, 0xB10F, 0x869B,
- 0xB110, 0xB3CE, 0xB111, 0x869C, 0xB112, 0xB3CF, 0xB113, 0xB3D0,
- 0xB114, 0x869D, 0xB115, 0x869E, 0xB116, 0x869F, 0xB117, 0x86A0,
- 0xB118, 0xB3D1, 0xB119, 0xB3D2, 0xB11A, 0x86A1, 0xB11B, 0xB3D3,
- 0xB11C, 0xB3D4, 0xB11D, 0xB3D5, 0xB11E, 0x86A2, 0xB11F, 0x86A3,
- 0xB120, 0x86A4, 0xB121, 0x86A5, 0xB122, 0x86A6, 0xB123, 0xB3D6,
- 0xB124, 0xB3D7, 0xB125, 0xB3D8, 0xB126, 0x86A7, 0xB127, 0x86A8,
- 0xB128, 0xB3D9, 0xB129, 0x86A9, 0xB12A, 0x86AA, 0xB12B, 0x86AB,
- 0xB12C, 0xB3DA, 0xB12D, 0x86AC, 0xB12E, 0x86AD, 0xB12F, 0x86AE,
- 0xB130, 0x86AF, 0xB131, 0x86B0, 0xB132, 0x86B1, 0xB133, 0x86B2,
- 0xB134, 0xB3DB, 0xB135, 0xB3DC, 0xB136, 0x86B3, 0xB137, 0xB3DD,
- 0xB138, 0xB3DE, 0xB139, 0xB3DF, 0xB13A, 0x86B4, 0xB13B, 0x86B5,
- 0xB13C, 0x86B6, 0xB13D, 0x86B7, 0xB13E, 0x86B8, 0xB13F, 0x86B9,
- 0xB140, 0xB3E0, 0xB141, 0xB3E1, 0xB142, 0x86BA, 0xB143, 0x86BB,
- 0xB144, 0xB3E2, 0xB145, 0x86BC, 0xB146, 0x86BD, 0xB147, 0x86BE,
- 0xB148, 0xB3E3, 0xB149, 0x86BF, 0xB14A, 0x86C0, 0xB14B, 0x86C1,
- 0xB14C, 0x86C2, 0xB14D, 0x86C3, 0xB14E, 0x86C4, 0xB14F, 0x86C5,
- 0xB150, 0xB3E4, 0xB151, 0xB3E5, 0xB152, 0x86C6, 0xB153, 0x86C7,
- 0xB154, 0xB3E6, 0xB155, 0xB3E7, 0xB156, 0x86C8, 0xB157, 0x86C9,
- 0xB158, 0xB3E8, 0xB159, 0x86CA, 0xB15A, 0x86CB, 0xB15B, 0x86CC,
- 0xB15C, 0xB3E9, 0xB15D, 0x86CD, 0xB15E, 0x86CE, 0xB15F, 0x86CF,
- 0xB160, 0xB3EA, 0xB161, 0x86D0, 0xB162, 0x86D1, 0xB163, 0x86D2,
- 0xB164, 0x86D3, 0xB165, 0x86D4, 0xB166, 0x86D5, 0xB167, 0x86D6,
- 0xB168, 0x86D7, 0xB169, 0x86D8, 0xB16A, 0x86D9, 0xB16B, 0x86DA,
- 0xB16C, 0x86DB, 0xB16D, 0x86DC, 0xB16E, 0x86DD, 0xB16F, 0x86DE,
- 0xB170, 0x86DF, 0xB171, 0x86E0, 0xB172, 0x86E1, 0xB173, 0x86E2,
- 0xB174, 0x86E3, 0xB175, 0x86E4, 0xB176, 0x86E5, 0xB177, 0x86E6,
- 0xB178, 0xB3EB, 0xB179, 0xB3EC, 0xB17A, 0x86E7, 0xB17B, 0x86E8,
- 0xB17C, 0xB3ED, 0xB17D, 0x86E9, 0xB17E, 0x86EA, 0xB17F, 0x86EB,
- 0xB180, 0xB3EE, 0xB181, 0x86EC, 0xB182, 0xB3EF, 0xB183, 0x86ED,
- 0xB184, 0x86EE, 0xB185, 0x86EF, 0xB186, 0x86F0, 0xB187, 0x86F1,
- 0xB188, 0xB3F0, 0xB189, 0xB3F1, 0xB18A, 0x86F2, 0xB18B, 0xB3F2,
- 0xB18C, 0x86F3, 0xB18D, 0xB3F3, 0xB18E, 0x86F4, 0xB18F, 0x86F5,
- 0xB190, 0x86F6, 0xB191, 0x86F7, 0xB192, 0xB3F4, 0xB193, 0xB3F5,
- 0xB194, 0xB3F6, 0xB195, 0x86F8, 0xB196, 0x86F9, 0xB197, 0x86FA,
- 0xB198, 0xB3F7, 0xB199, 0x86FB, 0xB19A, 0x86FC, 0xB19B, 0x86FD,
- 0xB19C, 0xB3F8, 0xB19D, 0x86FE, 0xB19E, 0x8741, 0xB19F, 0x8742,
- 0xB1A0, 0x8743, 0xB1A1, 0x8744, 0xB1A2, 0x8745, 0xB1A3, 0x8746,
- 0xB1A4, 0x8747, 0xB1A5, 0x8748, 0xB1A6, 0x8749, 0xB1A7, 0x874A,
- 0xB1A8, 0xB3F9, 0xB1A9, 0x874B, 0xB1AA, 0x874C, 0xB1AB, 0x874D,
- 0xB1AC, 0x874E, 0xB1AD, 0x874F, 0xB1AE, 0x8750, 0xB1AF, 0x8751,
- 0xB1B0, 0x8752, 0xB1B1, 0x8753, 0xB1B2, 0x8754, 0xB1B3, 0x8755,
- 0xB1B4, 0x8756, 0xB1B5, 0x8757, 0xB1B6, 0x8758, 0xB1B7, 0x8759,
- 0xB1B8, 0x875A, 0xB1B9, 0x8761, 0xB1BA, 0x8762, 0xB1BB, 0x8763,
- 0xB1BC, 0x8764, 0xB1BD, 0x8765, 0xB1BE, 0x8766, 0xB1BF, 0x8767,
- 0xB1C0, 0x8768, 0xB1C1, 0x8769, 0xB1C2, 0x876A, 0xB1C3, 0x876B,
- 0xB1C4, 0x876C, 0xB1C5, 0x876D, 0xB1C6, 0x876E, 0xB1C7, 0x876F,
- 0xB1C8, 0x8770, 0xB1C9, 0x8771, 0xB1CA, 0x8772, 0xB1CB, 0x8773,
- 0xB1CC, 0xB3FA, 0xB1CD, 0x8774, 0xB1CE, 0x8775, 0xB1CF, 0x8776,
- 0xB1D0, 0xB3FB, 0xB1D1, 0x8777, 0xB1D2, 0x8778, 0xB1D3, 0x8779,
- 0xB1D4, 0xB3FC, 0xB1D5, 0x877A, 0xB1D6, 0x8781, 0xB1D7, 0x8782,
- 0xB1D8, 0x8783, 0xB1D9, 0x8784, 0xB1DA, 0x8785, 0xB1DB, 0x8786,
- 0xB1DC, 0xB3FD, 0xB1DD, 0xB3FE, 0xB1DE, 0x8787, 0xB1DF, 0xB4A1,
- 0xB1E0, 0x8788, 0xB1E1, 0x8789, 0xB1E2, 0x878A, 0xB1E3, 0x878B,
- 0xB1E4, 0x878C, 0xB1E5, 0x878D, 0xB1E6, 0x878E, 0xB1E7, 0x878F,
- 0xB1E8, 0xB4A2, 0xB1E9, 0xB4A3, 0xB1EA, 0x8790, 0xB1EB, 0x8791,
- 0xB1EC, 0xB4A4, 0xB1ED, 0x8792, 0xB1EE, 0x8793, 0xB1EF, 0x8794,
- 0xB1F0, 0xB4A5, 0xB1F1, 0x8795, 0xB1F2, 0x8796, 0xB1F3, 0x8797,
- 0xB1F4, 0x8798, 0xB1F5, 0x8799, 0xB1F6, 0x879A, 0xB1F7, 0x879B,
- 0xB1F8, 0x879C, 0xB1F9, 0xB4A6, 0xB1FA, 0x879D, 0xB1FB, 0xB4A7,
- 0xB1FC, 0x879E, 0xB1FD, 0xB4A8, 0xB1FE, 0x879F, 0xB1FF, 0x87A0,
- 0xB200, 0x87A1, 0xB201, 0x87A2, 0xB202, 0x87A3, 0xB203, 0x87A4,
- 0xB204, 0xB4A9, 0xB205, 0xB4AA, 0xB206, 0x87A5, 0xB207, 0x87A6,
- 0xB208, 0xB4AB, 0xB209, 0x87A7, 0xB20A, 0x87A8, 0xB20B, 0xB4AC,
- 0xB20C, 0xB4AD, 0xB20D, 0x87A9, 0xB20E, 0x87AA, 0xB20F, 0x87AB,
- 0xB210, 0x87AC, 0xB211, 0x87AD, 0xB212, 0x87AE, 0xB213, 0x87AF,
- 0xB214, 0xB4AE, 0xB215, 0xB4AF, 0xB216, 0x87B0, 0xB217, 0xB4B0,
- 0xB218, 0x87B1, 0xB219, 0xB4B1, 0xB21A, 0x87B2, 0xB21B, 0x87B3,
- 0xB21C, 0x87B4, 0xB21D, 0x87B5, 0xB21E, 0x87B6, 0xB21F, 0x87B7,
- 0xB220, 0xB4B2, 0xB221, 0x87B8, 0xB222, 0x87B9, 0xB223, 0x87BA,
- 0xB224, 0x87BB, 0xB225, 0x87BC, 0xB226, 0x87BD, 0xB227, 0x87BE,
- 0xB228, 0x87BF, 0xB229, 0x87C0, 0xB22A, 0x87C1, 0xB22B, 0x87C2,
- 0xB22C, 0x87C3, 0xB22D, 0x87C4, 0xB22E, 0x87C5, 0xB22F, 0x87C6,
- 0xB230, 0x87C7, 0xB231, 0x87C8, 0xB232, 0x87C9, 0xB233, 0x87CA,
- 0xB234, 0xB4B3, 0xB235, 0x87CB, 0xB236, 0x87CC, 0xB237, 0x87CD,
- 0xB238, 0x87CE, 0xB239, 0x87CF, 0xB23A, 0x87D0, 0xB23B, 0x87D1,
- 0xB23C, 0xB4B4, 0xB23D, 0x87D2, 0xB23E, 0x87D3, 0xB23F, 0x87D4,
- 0xB240, 0x87D5, 0xB241, 0x87D6, 0xB242, 0x87D7, 0xB243, 0x87D8,
- 0xB244, 0x87D9, 0xB245, 0x87DA, 0xB246, 0x87DB, 0xB247, 0x87DC,
- 0xB248, 0x87DD, 0xB249, 0x87DE, 0xB24A, 0x87DF, 0xB24B, 0x87E0,
- 0xB24C, 0x87E1, 0xB24D, 0x87E2, 0xB24E, 0x87E3, 0xB24F, 0x87E4,
- 0xB250, 0x87E5, 0xB251, 0x87E6, 0xB252, 0x87E7, 0xB253, 0x87E8,
- 0xB254, 0x87E9, 0xB255, 0x87EA, 0xB256, 0x87EB, 0xB257, 0x87EC,
- 0xB258, 0xB4B5, 0xB259, 0x87ED, 0xB25A, 0x87EE, 0xB25B, 0x87EF,
- 0xB25C, 0xB4B6, 0xB25D, 0x87F0, 0xB25E, 0x87F1, 0xB25F, 0x87F2,
- 0xB260, 0xB4B7, 0xB261, 0x87F3, 0xB262, 0x87F4, 0xB263, 0x87F5,
- 0xB264, 0x87F6, 0xB265, 0x87F7, 0xB266, 0x87F8, 0xB267, 0x87F9,
- 0xB268, 0xB4B8, 0xB269, 0xB4B9, 0xB26A, 0x87FA, 0xB26B, 0x87FB,
- 0xB26C, 0x87FC, 0xB26D, 0x87FD, 0xB26E, 0x87FE, 0xB26F, 0x8841,
- 0xB270, 0x8842, 0xB271, 0x8843, 0xB272, 0x8844, 0xB273, 0x8845,
- 0xB274, 0xB4BA, 0xB275, 0xB4BB, 0xB276, 0x8846, 0xB277, 0x8847,
- 0xB278, 0x8848, 0xB279, 0x8849, 0xB27A, 0x884A, 0xB27B, 0x884B,
- 0xB27C, 0xB4BC, 0xB27D, 0x884C, 0xB27E, 0x884D, 0xB27F, 0x884E,
- 0xB280, 0x884F, 0xB281, 0x8850, 0xB282, 0x8851, 0xB283, 0x8852,
- 0xB284, 0xB4BD, 0xB285, 0xB4BE, 0xB286, 0x8853, 0xB287, 0x8854,
- 0xB288, 0x8855, 0xB289, 0xB4BF, 0xB28A, 0x8856, 0xB28B, 0x8857,
- 0xB28C, 0x8858, 0xB28D, 0x8859, 0xB28E, 0x885A, 0xB28F, 0x8861,
- 0xB290, 0xB4C0, 0xB291, 0xB4C1, 0xB292, 0x8862, 0xB293, 0x8863,
- 0xB294, 0xB4C2, 0xB295, 0x8864, 0xB296, 0x8865, 0xB297, 0x8866,
- 0xB298, 0xB4C3, 0xB299, 0xB4C4, 0xB29A, 0xB4C5, 0xB29B, 0x8867,
- 0xB29C, 0x8868, 0xB29D, 0x8869, 0xB29E, 0x886A, 0xB29F, 0x886B,
- 0xB2A0, 0xB4C6, 0xB2A1, 0xB4C7, 0xB2A2, 0x886C, 0xB2A3, 0xB4C8,
- 0xB2A4, 0x886D, 0xB2A5, 0xB4C9, 0xB2A6, 0xB4CA, 0xB2A7, 0x886E,
- 0xB2A8, 0x886F, 0xB2A9, 0x8870, 0xB2AA, 0xB4CB, 0xB2AB, 0x8871,
- 0xB2AC, 0xB4CC, 0xB2AD, 0x8872, 0xB2AE, 0x8873, 0xB2AF, 0x8874,
- 0xB2B0, 0xB4CD, 0xB2B1, 0x8875, 0xB2B2, 0x8876, 0xB2B3, 0x8877,
- 0xB2B4, 0xB4CE, 0xB2B5, 0x8878, 0xB2B6, 0x8879, 0xB2B7, 0x887A,
- 0xB2B8, 0x8881, 0xB2B9, 0x8882, 0xB2BA, 0x8883, 0xB2BB, 0x8884,
- 0xB2BC, 0x8885, 0xB2BD, 0x8886, 0xB2BE, 0x8887, 0xB2BF, 0x8888,
- 0xB2C0, 0x8889, 0xB2C1, 0x888A, 0xB2C2, 0x888B, 0xB2C3, 0x888C,
- 0xB2C4, 0x888D, 0xB2C5, 0x888E, 0xB2C6, 0x888F, 0xB2C7, 0x8890,
- 0xB2C8, 0xB4CF, 0xB2C9, 0xB4D0, 0xB2CA, 0x8891, 0xB2CB, 0x8892,
- 0xB2CC, 0xB4D1, 0xB2CD, 0x8893, 0xB2CE, 0x8894, 0xB2CF, 0x8895,
- 0xB2D0, 0xB4D2, 0xB2D1, 0x8896, 0xB2D2, 0xB4D3, 0xB2D3, 0x8897,
- 0xB2D4, 0x8898, 0xB2D5, 0x8899, 0xB2D6, 0x889A, 0xB2D7, 0x889B,
- 0xB2D8, 0xB4D4, 0xB2D9, 0xB4D5, 0xB2DA, 0x889C, 0xB2DB, 0xB4D6,
- 0xB2DC, 0x889D, 0xB2DD, 0xB4D7, 0xB2DE, 0x889E, 0xB2DF, 0x889F,
- 0xB2E0, 0x88A0, 0xB2E1, 0x88A1, 0xB2E2, 0xB4D8, 0xB2E3, 0x88A2,
- 0xB2E4, 0xB4D9, 0xB2E5, 0xB4DA, 0xB2E6, 0xB4DB, 0xB2E7, 0x88A3,
- 0xB2E8, 0xB4DC, 0xB2E9, 0x88A4, 0xB2EA, 0x88A5, 0xB2EB, 0xB4DD,
- 0xB2EC, 0xB4DE, 0xB2ED, 0xB4DF, 0xB2EE, 0xB4E0, 0xB2EF, 0xB4E1,
- 0xB2F0, 0x88A6, 0xB2F1, 0x88A7, 0xB2F2, 0x88A8, 0xB2F3, 0xB4E2,
- 0xB2F4, 0xB4E3, 0xB2F5, 0xB4E4, 0xB2F6, 0x88A9, 0xB2F7, 0xB4E5,
- 0xB2F8, 0xB4E6, 0xB2F9, 0xB4E7, 0xB2FA, 0xB4E8, 0xB2FB, 0xB4E9,
- 0xB2FC, 0x88AA, 0xB2FD, 0x88AB, 0xB2FE, 0x88AC, 0xB2FF, 0xB4EA,
- 0xB300, 0xB4EB, 0xB301, 0xB4EC, 0xB302, 0x88AD, 0xB303, 0x88AE,
- 0xB304, 0xB4ED, 0xB305, 0x88AF, 0xB306, 0x88B0, 0xB307, 0x88B1,
- 0xB308, 0xB4EE, 0xB309, 0x88B2, 0xB30A, 0x88B3, 0xB30B, 0x88B4,
- 0xB30C, 0x88B5, 0xB30D, 0x88B6, 0xB30E, 0x88B7, 0xB30F, 0x88B8,
- 0xB310, 0xB4EF, 0xB311, 0xB4F0, 0xB312, 0x88B9, 0xB313, 0xB4F1,
- 0xB314, 0xB4F2, 0xB315, 0xB4F3, 0xB316, 0x88BA, 0xB317, 0x88BB,
- 0xB318, 0x88BC, 0xB319, 0x88BD, 0xB31A, 0x88BE, 0xB31B, 0x88BF,
- 0xB31C, 0xB4F4, 0xB31D, 0x88C0, 0xB31E, 0x88C1, 0xB31F, 0x88C2,
- 0xB320, 0x88C3, 0xB321, 0x88C4, 0xB322, 0x88C5, 0xB323, 0x88C6,
- 0xB324, 0x88C7, 0xB325, 0x88C8, 0xB326, 0x88C9, 0xB327, 0x88CA,
- 0xB328, 0x88CB, 0xB329, 0x88CC, 0xB32A, 0x88CD, 0xB32B, 0x88CE,
- 0xB32C, 0x88CF, 0xB32D, 0x88D0, 0xB32E, 0x88D1, 0xB32F, 0x88D2,
- 0xB330, 0x88D3, 0xB331, 0x88D4, 0xB332, 0x88D5, 0xB333, 0x88D6,
- 0xB334, 0x88D7, 0xB335, 0x88D8, 0xB336, 0x88D9, 0xB337, 0x88DA,
- 0xB338, 0x88DB, 0xB339, 0x88DC, 0xB33A, 0x88DD, 0xB33B, 0x88DE,
- 0xB33C, 0x88DF, 0xB33D, 0x88E0, 0xB33E, 0x88E1, 0xB33F, 0x88E2,
- 0xB340, 0x88E3, 0xB341, 0x88E4, 0xB342, 0x88E5, 0xB343, 0x88E6,
- 0xB344, 0x88E7, 0xB345, 0x88E8, 0xB346, 0x88E9, 0xB347, 0x88EA,
- 0xB348, 0x88EB, 0xB349, 0x88EC, 0xB34A, 0x88ED, 0xB34B, 0x88EE,
- 0xB34C, 0x88EF, 0xB34D, 0x88F0, 0xB34E, 0x88F1, 0xB34F, 0x88F2,
- 0xB350, 0x88F3, 0xB351, 0x88F4, 0xB352, 0x88F5, 0xB353, 0x88F6,
- 0xB354, 0xB4F5, 0xB355, 0xB4F6, 0xB356, 0xB4F7, 0xB357, 0x88F7,
- 0xB358, 0xB4F8, 0xB359, 0x88F8, 0xB35A, 0x88F9, 0xB35B, 0xB4F9,
- 0xB35C, 0xB4FA, 0xB35D, 0x88FA, 0xB35E, 0xB4FB, 0xB35F, 0xB4FC,
- 0xB360, 0x88FB, 0xB361, 0x88FC, 0xB362, 0x88FD, 0xB363, 0x88FE,
- 0xB364, 0xB4FD, 0xB365, 0xB4FE, 0xB366, 0x8941, 0xB367, 0xB5A1,
- 0xB368, 0x8942, 0xB369, 0xB5A2, 0xB36A, 0x8943, 0xB36B, 0xB5A3,
- 0xB36C, 0x8944, 0xB36D, 0x8945, 0xB36E, 0xB5A4, 0xB36F, 0x8946,
- 0xB370, 0xB5A5, 0xB371, 0xB5A6, 0xB372, 0x8947, 0xB373, 0x8948,
- 0xB374, 0xB5A7, 0xB375, 0x8949, 0xB376, 0x894A, 0xB377, 0x894B,
- 0xB378, 0xB5A8, 0xB379, 0x894C, 0xB37A, 0x894D, 0xB37B, 0x894E,
- 0xB37C, 0x894F, 0xB37D, 0x8950, 0xB37E, 0x8951, 0xB37F, 0x8952,
- 0xB380, 0xB5A9, 0xB381, 0xB5AA, 0xB382, 0x8953, 0xB383, 0xB5AB,
- 0xB384, 0xB5AC, 0xB385, 0xB5AD, 0xB386, 0x8954, 0xB387, 0x8955,
- 0xB388, 0x8956, 0xB389, 0x8957, 0xB38A, 0x8958, 0xB38B, 0x8959,
- 0xB38C, 0xB5AE, 0xB38D, 0x895A, 0xB38E, 0x8961, 0xB38F, 0x8962,
- 0xB390, 0xB5AF, 0xB391, 0x8963, 0xB392, 0x8964, 0xB393, 0x8965,
- 0xB394, 0xB5B0, 0xB395, 0x8966, 0xB396, 0x8967, 0xB397, 0x8968,
- 0xB398, 0x8969, 0xB399, 0x896A, 0xB39A, 0x896B, 0xB39B, 0x896C,
- 0xB39C, 0x896D, 0xB39D, 0x896E, 0xB39E, 0x896F, 0xB39F, 0x8970,
- 0xB3A0, 0xB5B1, 0xB3A1, 0xB5B2, 0xB3A2, 0x8971, 0xB3A3, 0x8972,
- 0xB3A4, 0x8973, 0xB3A5, 0x8974, 0xB3A6, 0x8975, 0xB3A7, 0x8976,
- 0xB3A8, 0xB5B3, 0xB3A9, 0x8977, 0xB3AA, 0x8978, 0xB3AB, 0x8979,
- 0xB3AC, 0xB5B4, 0xB3AD, 0x897A, 0xB3AE, 0x8981, 0xB3AF, 0x8982,
- 0xB3B0, 0x8983, 0xB3B1, 0x8984, 0xB3B2, 0x8985, 0xB3B3, 0x8986,
- 0xB3B4, 0x8987, 0xB3B5, 0x8988, 0xB3B6, 0x8989, 0xB3B7, 0x898A,
- 0xB3B8, 0x898B, 0xB3B9, 0x898C, 0xB3BA, 0x898D, 0xB3BB, 0x898E,
- 0xB3BC, 0x898F, 0xB3BD, 0x8990, 0xB3BE, 0x8991, 0xB3BF, 0x8992,
- 0xB3C0, 0x8993, 0xB3C1, 0x8994, 0xB3C2, 0x8995, 0xB3C3, 0x8996,
- 0xB3C4, 0xB5B5, 0xB3C5, 0xB5B6, 0xB3C6, 0x8997, 0xB3C7, 0x8998,
- 0xB3C8, 0xB5B7, 0xB3C9, 0x8999, 0xB3CA, 0x899A, 0xB3CB, 0xB5B8,
- 0xB3CC, 0xB5B9, 0xB3CD, 0x899B, 0xB3CE, 0xB5BA, 0xB3CF, 0x899C,
- 0xB3D0, 0xB5BB, 0xB3D1, 0x899D, 0xB3D2, 0x899E, 0xB3D3, 0x899F,
- 0xB3D4, 0xB5BC, 0xB3D5, 0xB5BD, 0xB3D6, 0x89A0, 0xB3D7, 0xB5BE,
- 0xB3D8, 0x89A1, 0xB3D9, 0xB5BF, 0xB3DA, 0x89A2, 0xB3DB, 0xB5C0,
- 0xB3DC, 0x89A3, 0xB3DD, 0xB5C1, 0xB3DE, 0x89A4, 0xB3DF, 0x89A5,
- 0xB3E0, 0xB5C2, 0xB3E1, 0x89A6, 0xB3E2, 0x89A7, 0xB3E3, 0x89A8,
- 0xB3E4, 0xB5C3, 0xB3E5, 0x89A9, 0xB3E6, 0x89AA, 0xB3E7, 0x89AB,
- 0xB3E8, 0xB5C4, 0xB3E9, 0x89AC, 0xB3EA, 0x89AD, 0xB3EB, 0x89AE,
- 0xB3EC, 0x89AF, 0xB3ED, 0x89B0, 0xB3EE, 0x89B1, 0xB3EF, 0x89B2,
- 0xB3F0, 0x89B3, 0xB3F1, 0x89B4, 0xB3F2, 0x89B5, 0xB3F3, 0x89B6,
- 0xB3F4, 0x89B7, 0xB3F5, 0x89B8, 0xB3F6, 0x89B9, 0xB3F7, 0x89BA,
- 0xB3F8, 0x89BB, 0xB3F9, 0x89BC, 0xB3FA, 0x89BD, 0xB3FB, 0x89BE,
- 0xB3FC, 0xB5C5, 0xB3FD, 0x89BF, 0xB3FE, 0x89C0, 0xB3FF, 0x89C1,
- 0xB400, 0x89C2, 0xB401, 0x89C3, 0xB402, 0x89C4, 0xB403, 0x89C5,
- 0xB404, 0x89C6, 0xB405, 0x89C7, 0xB406, 0x89C8, 0xB407, 0x89C9,
- 0xB408, 0x89CA, 0xB409, 0x89CB, 0xB40A, 0x89CC, 0xB40B, 0x89CD,
- 0xB40C, 0x89CE, 0xB40D, 0x89CF, 0xB40E, 0x89D0, 0xB40F, 0x89D1,
- 0xB410, 0xB5C6, 0xB411, 0x89D2, 0xB412, 0x89D3, 0xB413, 0x89D4,
- 0xB414, 0x89D5, 0xB415, 0x89D6, 0xB416, 0x89D7, 0xB417, 0x89D8,
- 0xB418, 0xB5C7, 0xB419, 0x89D9, 0xB41A, 0x89DA, 0xB41B, 0x89DB,
- 0xB41C, 0xB5C8, 0xB41D, 0x89DC, 0xB41E, 0x89DD, 0xB41F, 0x89DE,
- 0xB420, 0xB5C9, 0xB421, 0x89DF, 0xB422, 0x89E0, 0xB423, 0x89E1,
- 0xB424, 0x89E2, 0xB425, 0x89E3, 0xB426, 0x89E4, 0xB427, 0x89E5,
- 0xB428, 0xB5CA, 0xB429, 0xB5CB, 0xB42A, 0x89E6, 0xB42B, 0xB5CC,
- 0xB42C, 0x89E7, 0xB42D, 0x89E8, 0xB42E, 0x89E9, 0xB42F, 0x89EA,
- 0xB430, 0x89EB, 0xB431, 0x89EC, 0xB432, 0x89ED, 0xB433, 0x89EE,
- 0xB434, 0xB5CD, 0xB435, 0x89EF, 0xB436, 0x89F0, 0xB437, 0x89F1,
- 0xB438, 0x89F2, 0xB439, 0x89F3, 0xB43A, 0x89F4, 0xB43B, 0x89F5,
- 0xB43C, 0x89F6, 0xB43D, 0x89F7, 0xB43E, 0x89F8, 0xB43F, 0x89F9,
- 0xB440, 0x89FA, 0xB441, 0x89FB, 0xB442, 0x89FC, 0xB443, 0x89FD,
- 0xB444, 0x89FE, 0xB445, 0x8A41, 0xB446, 0x8A42, 0xB447, 0x8A43,
- 0xB448, 0x8A44, 0xB449, 0x8A45, 0xB44A, 0x8A46, 0xB44B, 0x8A47,
- 0xB44C, 0x8A48, 0xB44D, 0x8A49, 0xB44E, 0x8A4A, 0xB44F, 0x8A4B,
- 0xB450, 0xB5CE, 0xB451, 0xB5CF, 0xB452, 0x8A4C, 0xB453, 0x8A4D,
- 0xB454, 0xB5D0, 0xB455, 0x8A4E, 0xB456, 0x8A4F, 0xB457, 0x8A50,
- 0xB458, 0xB5D1, 0xB459, 0x8A51, 0xB45A, 0x8A52, 0xB45B, 0x8A53,
- 0xB45C, 0x8A54, 0xB45D, 0x8A55, 0xB45E, 0x8A56, 0xB45F, 0x8A57,
- 0xB460, 0xB5D2, 0xB461, 0xB5D3, 0xB462, 0x8A58, 0xB463, 0xB5D4,
- 0xB464, 0x8A59, 0xB465, 0xB5D5, 0xB466, 0x8A5A, 0xB467, 0x8A61,
- 0xB468, 0x8A62, 0xB469, 0x8A63, 0xB46A, 0x8A64, 0xB46B, 0x8A65,
- 0xB46C, 0xB5D6, 0xB46D, 0x8A66, 0xB46E, 0x8A67, 0xB46F, 0x8A68,
- 0xB470, 0x8A69, 0xB471, 0x8A6A, 0xB472, 0x8A6B, 0xB473, 0x8A6C,
- 0xB474, 0x8A6D, 0xB475, 0x8A6E, 0xB476, 0x8A6F, 0xB477, 0x8A70,
- 0xB478, 0x8A71, 0xB479, 0x8A72, 0xB47A, 0x8A73, 0xB47B, 0x8A74,
- 0xB47C, 0x8A75, 0xB47D, 0x8A76, 0xB47E, 0x8A77, 0xB47F, 0x8A78,
- 0xB480, 0xB5D7, 0xB481, 0x8A79, 0xB482, 0x8A7A, 0xB483, 0x8A81,
- 0xB484, 0x8A82, 0xB485, 0x8A83, 0xB486, 0x8A84, 0xB487, 0x8A85,
- 0xB488, 0xB5D8, 0xB489, 0x8A86, 0xB48A, 0x8A87, 0xB48B, 0x8A88,
- 0xB48C, 0x8A89, 0xB48D, 0x8A8A, 0xB48E, 0x8A8B, 0xB48F, 0x8A8C,
- 0xB490, 0x8A8D, 0xB491, 0x8A8E, 0xB492, 0x8A8F, 0xB493, 0x8A90,
- 0xB494, 0x8A91, 0xB495, 0x8A92, 0xB496, 0x8A93, 0xB497, 0x8A94,
- 0xB498, 0x8A95, 0xB499, 0x8A96, 0xB49A, 0x8A97, 0xB49B, 0x8A98,
- 0xB49C, 0x8A99, 0xB49D, 0xB5D9, 0xB49E, 0x8A9A, 0xB49F, 0x8A9B,
- 0xB4A0, 0x8A9C, 0xB4A1, 0x8A9D, 0xB4A2, 0x8A9E, 0xB4A3, 0x8A9F,
- 0xB4A4, 0xB5DA, 0xB4A5, 0x8AA0, 0xB4A6, 0x8AA1, 0xB4A7, 0x8AA2,
- 0xB4A8, 0xB5DB, 0xB4A9, 0x8AA3, 0xB4AA, 0x8AA4, 0xB4AB, 0x8AA5,
- 0xB4AC, 0xB5DC, 0xB4AD, 0x8AA6, 0xB4AE, 0x8AA7, 0xB4AF, 0x8AA8,
- 0xB4B0, 0x8AA9, 0xB4B1, 0x8AAA, 0xB4B2, 0x8AAB, 0xB4B3, 0x8AAC,
- 0xB4B4, 0x8AAD, 0xB4B5, 0xB5DD, 0xB4B6, 0x8AAE, 0xB4B7, 0xB5DE,
- 0xB4B8, 0x8AAF, 0xB4B9, 0xB5DF, 0xB4BA, 0x8AB0, 0xB4BB, 0x8AB1,
- 0xB4BC, 0x8AB2, 0xB4BD, 0x8AB3, 0xB4BE, 0x8AB4, 0xB4BF, 0x8AB5,
- 0xB4C0, 0xB5E0, 0xB4C1, 0x8AB6, 0xB4C2, 0x8AB7, 0xB4C3, 0x8AB8,
- 0xB4C4, 0xB5E1, 0xB4C5, 0x8AB9, 0xB4C6, 0x8ABA, 0xB4C7, 0x8ABB,
- 0xB4C8, 0xB5E2, 0xB4C9, 0x8ABC, 0xB4CA, 0x8ABD, 0xB4CB, 0x8ABE,
- 0xB4CC, 0x8ABF, 0xB4CD, 0x8AC0, 0xB4CE, 0x8AC1, 0xB4CF, 0x8AC2,
- 0xB4D0, 0xB5E3, 0xB4D1, 0x8AC3, 0xB4D2, 0x8AC4, 0xB4D3, 0x8AC5,
- 0xB4D4, 0x8AC6, 0xB4D5, 0xB5E4, 0xB4D6, 0x8AC7, 0xB4D7, 0x8AC8,
- 0xB4D8, 0x8AC9, 0xB4D9, 0x8ACA, 0xB4DA, 0x8ACB, 0xB4DB, 0x8ACC,
- 0xB4DC, 0xB5E5, 0xB4DD, 0xB5E6, 0xB4DE, 0x8ACD, 0xB4DF, 0x8ACE,
- 0xB4E0, 0xB5E7, 0xB4E1, 0x8ACF, 0xB4E2, 0x8AD0, 0xB4E3, 0xB5E8,
- 0xB4E4, 0xB5E9, 0xB4E5, 0x8AD1, 0xB4E6, 0xB5EA, 0xB4E7, 0x8AD2,
- 0xB4E8, 0x8AD3, 0xB4E9, 0x8AD4, 0xB4EA, 0x8AD5, 0xB4EB, 0x8AD6,
- 0xB4EC, 0xB5EB, 0xB4ED, 0xB5EC, 0xB4EE, 0x8AD7, 0xB4EF, 0xB5ED,
- 0xB4F0, 0x8AD8, 0xB4F1, 0xB5EE, 0xB4F2, 0x8AD9, 0xB4F3, 0x8ADA,
- 0xB4F4, 0x8ADB, 0xB4F5, 0x8ADC, 0xB4F6, 0x8ADD, 0xB4F7, 0x8ADE,
- 0xB4F8, 0xB5EF, 0xB4F9, 0x8ADF, 0xB4FA, 0x8AE0, 0xB4FB, 0x8AE1,
- 0xB4FC, 0x8AE2, 0xB4FD, 0x8AE3, 0xB4FE, 0x8AE4, 0xB4FF, 0x8AE5,
- 0xB500, 0x8AE6, 0xB501, 0x8AE7, 0xB502, 0x8AE8, 0xB503, 0x8AE9,
- 0xB504, 0x8AEA, 0xB505, 0x8AEB, 0xB506, 0x8AEC, 0xB507, 0x8AED,
- 0xB508, 0x8AEE, 0xB509, 0x8AEF, 0xB50A, 0x8AF0, 0xB50B, 0x8AF1,
- 0xB50C, 0x8AF2, 0xB50D, 0x8AF3, 0xB50E, 0x8AF4, 0xB50F, 0x8AF5,
- 0xB510, 0x8AF6, 0xB511, 0x8AF7, 0xB512, 0x8AF8, 0xB513, 0x8AF9,
- 0xB514, 0xB5F0, 0xB515, 0xB5F1, 0xB516, 0x8AFA, 0xB517, 0x8AFB,
- 0xB518, 0xB5F2, 0xB519, 0x8AFC, 0xB51A, 0x8AFD, 0xB51B, 0xB5F3,
- 0xB51C, 0xB5F4, 0xB51D, 0x8AFE, 0xB51E, 0x8B41, 0xB51F, 0x8B42,
- 0xB520, 0x8B43, 0xB521, 0x8B44, 0xB522, 0x8B45, 0xB523, 0x8B46,
- 0xB524, 0xB5F5, 0xB525, 0xB5F6, 0xB526, 0x8B47, 0xB527, 0xB5F7,
- 0xB528, 0xB5F8, 0xB529, 0xB5F9, 0xB52A, 0xB5FA, 0xB52B, 0x8B48,
- 0xB52C, 0x8B49, 0xB52D, 0x8B4A, 0xB52E, 0x8B4B, 0xB52F, 0x8B4C,
- 0xB530, 0xB5FB, 0xB531, 0xB5FC, 0xB532, 0x8B4D, 0xB533, 0x8B4E,
- 0xB534, 0xB5FD, 0xB535, 0x8B4F, 0xB536, 0x8B50, 0xB537, 0x8B51,
- 0xB538, 0xB5FE, 0xB539, 0x8B52, 0xB53A, 0x8B53, 0xB53B, 0x8B54,
- 0xB53C, 0x8B55, 0xB53D, 0x8B56, 0xB53E, 0x8B57, 0xB53F, 0x8B58,
- 0xB540, 0xB6A1, 0xB541, 0xB6A2, 0xB542, 0x8B59, 0xB543, 0xB6A3,
- 0xB544, 0xB6A4, 0xB545, 0xB6A5, 0xB546, 0x8B5A, 0xB547, 0x8B61,
- 0xB548, 0x8B62, 0xB549, 0x8B63, 0xB54A, 0x8B64, 0xB54B, 0xB6A6,
- 0xB54C, 0xB6A7, 0xB54D, 0xB6A8, 0xB54E, 0x8B65, 0xB54F, 0x8B66,
- 0xB550, 0xB6A9, 0xB551, 0x8B67, 0xB552, 0x8B68, 0xB553, 0x8B69,
- 0xB554, 0xB6AA, 0xB555, 0x8B6A, 0xB556, 0x8B6B, 0xB557, 0x8B6C,
- 0xB558, 0x8B6D, 0xB559, 0x8B6E, 0xB55A, 0x8B6F, 0xB55B, 0x8B70,
- 0xB55C, 0xB6AB, 0xB55D, 0xB6AC, 0xB55E, 0x8B71, 0xB55F, 0xB6AD,
- 0xB560, 0xB6AE, 0xB561, 0xB6AF, 0xB562, 0x8B72, 0xB563, 0x8B73,
- 0xB564, 0x8B74, 0xB565, 0x8B75, 0xB566, 0x8B76, 0xB567, 0x8B77,
- 0xB568, 0x8B78, 0xB569, 0x8B79, 0xB56A, 0x8B7A, 0xB56B, 0x8B81,
- 0xB56C, 0x8B82, 0xB56D, 0x8B83, 0xB56E, 0x8B84, 0xB56F, 0x8B85,
- 0xB570, 0x8B86, 0xB571, 0x8B87, 0xB572, 0x8B88, 0xB573, 0x8B89,
- 0xB574, 0x8B8A, 0xB575, 0x8B8B, 0xB576, 0x8B8C, 0xB577, 0x8B8D,
- 0xB578, 0x8B8E, 0xB579, 0x8B8F, 0xB57A, 0x8B90, 0xB57B, 0x8B91,
- 0xB57C, 0x8B92, 0xB57D, 0x8B93, 0xB57E, 0x8B94, 0xB57F, 0x8B95,
- 0xB580, 0x8B96, 0xB581, 0x8B97, 0xB582, 0x8B98, 0xB583, 0x8B99,
- 0xB584, 0x8B9A, 0xB585, 0x8B9B, 0xB586, 0x8B9C, 0xB587, 0x8B9D,
- 0xB588, 0x8B9E, 0xB589, 0x8B9F, 0xB58A, 0x8BA0, 0xB58B, 0x8BA1,
- 0xB58C, 0x8BA2, 0xB58D, 0x8BA3, 0xB58E, 0x8BA4, 0xB58F, 0x8BA5,
- 0xB590, 0x8BA6, 0xB591, 0x8BA7, 0xB592, 0x8BA8, 0xB593, 0x8BA9,
- 0xB594, 0x8BAA, 0xB595, 0x8BAB, 0xB596, 0x8BAC, 0xB597, 0x8BAD,
- 0xB598, 0x8BAE, 0xB599, 0x8BAF, 0xB59A, 0x8BB0, 0xB59B, 0x8BB1,
- 0xB59C, 0x8BB2, 0xB59D, 0x8BB3, 0xB59E, 0x8BB4, 0xB59F, 0x8BB5,
- 0xB5A0, 0xB6B0, 0xB5A1, 0xB6B1, 0xB5A2, 0x8BB6, 0xB5A3, 0x8BB7,
- 0xB5A4, 0xB6B2, 0xB5A5, 0x8BB8, 0xB5A6, 0x8BB9, 0xB5A7, 0x8BBA,
- 0xB5A8, 0xB6B3, 0xB5A9, 0x8BBB, 0xB5AA, 0xB6B4, 0xB5AB, 0xB6B5,
- 0xB5AC, 0x8BBC, 0xB5AD, 0x8BBD, 0xB5AE, 0x8BBE, 0xB5AF, 0x8BBF,
- 0xB5B0, 0xB6B6, 0xB5B1, 0xB6B7, 0xB5B2, 0x8BC0, 0xB5B3, 0xB6B8,
- 0xB5B4, 0xB6B9, 0xB5B5, 0xB6BA, 0xB5B6, 0x8BC1, 0xB5B7, 0x8BC2,
- 0xB5B8, 0x8BC3, 0xB5B9, 0x8BC4, 0xB5BA, 0x8BC5, 0xB5BB, 0xB6BB,
- 0xB5BC, 0xB6BC, 0xB5BD, 0xB6BD, 0xB5BE, 0x8BC6, 0xB5BF, 0x8BC7,
- 0xB5C0, 0xB6BE, 0xB5C1, 0x8BC8, 0xB5C2, 0x8BC9, 0xB5C3, 0x8BCA,
- 0xB5C4, 0xB6BF, 0xB5C5, 0x8BCB, 0xB5C6, 0x8BCC, 0xB5C7, 0x8BCD,
- 0xB5C8, 0x8BCE, 0xB5C9, 0x8BCF, 0xB5CA, 0x8BD0, 0xB5CB, 0x8BD1,
- 0xB5CC, 0xB6C0, 0xB5CD, 0xB6C1, 0xB5CE, 0x8BD2, 0xB5CF, 0xB6C2,
- 0xB5D0, 0xB6C3, 0xB5D1, 0xB6C4, 0xB5D2, 0x8BD3, 0xB5D3, 0x8BD4,
- 0xB5D4, 0x8BD5, 0xB5D5, 0x8BD6, 0xB5D6, 0x8BD7, 0xB5D7, 0x8BD8,
- 0xB5D8, 0xB6C5, 0xB5D9, 0x8BD9, 0xB5DA, 0x8BDA, 0xB5DB, 0x8BDB,
- 0xB5DC, 0x8BDC, 0xB5DD, 0x8BDD, 0xB5DE, 0x8BDE, 0xB5DF, 0x8BDF,
- 0xB5E0, 0x8BE0, 0xB5E1, 0x8BE1, 0xB5E2, 0x8BE2, 0xB5E3, 0x8BE3,
- 0xB5E4, 0x8BE4, 0xB5E5, 0x8BE5, 0xB5E6, 0x8BE6, 0xB5E7, 0x8BE7,
- 0xB5E8, 0x8BE8, 0xB5E9, 0x8BE9, 0xB5EA, 0x8BEA, 0xB5EB, 0x8BEB,
- 0xB5EC, 0xB6C6, 0xB5ED, 0x8BEC, 0xB5EE, 0x8BED, 0xB5EF, 0x8BEE,
- 0xB5F0, 0x8BEF, 0xB5F1, 0x8BF0, 0xB5F2, 0x8BF1, 0xB5F3, 0x8BF2,
- 0xB5F4, 0x8BF3, 0xB5F5, 0x8BF4, 0xB5F6, 0x8BF5, 0xB5F7, 0x8BF6,
- 0xB5F8, 0x8BF7, 0xB5F9, 0x8BF8, 0xB5FA, 0x8BF9, 0xB5FB, 0x8BFA,
- 0xB5FC, 0x8BFB, 0xB5FD, 0x8BFC, 0xB5FE, 0x8BFD, 0xB5FF, 0x8BFE,
- 0xB600, 0x8C41, 0xB601, 0x8C42, 0xB602, 0x8C43, 0xB603, 0x8C44,
- 0xB604, 0x8C45, 0xB605, 0x8C46, 0xB606, 0x8C47, 0xB607, 0x8C48,
- 0xB608, 0x8C49, 0xB609, 0x8C4A, 0xB60A, 0x8C4B, 0xB60B, 0x8C4C,
- 0xB60C, 0x8C4D, 0xB60D, 0x8C4E, 0xB60E, 0x8C4F, 0xB60F, 0x8C50,
- 0xB610, 0xB6C7, 0xB611, 0xB6C8, 0xB612, 0x8C51, 0xB613, 0x8C52,
- 0xB614, 0xB6C9, 0xB615, 0x8C53, 0xB616, 0x8C54, 0xB617, 0x8C55,
- 0xB618, 0xB6CA, 0xB619, 0x8C56, 0xB61A, 0x8C57, 0xB61B, 0x8C58,
- 0xB61C, 0x8C59, 0xB61D, 0x8C5A, 0xB61E, 0x8C61, 0xB61F, 0x8C62,
- 0xB620, 0x8C63, 0xB621, 0x8C64, 0xB622, 0x8C65, 0xB623, 0x8C66,
- 0xB624, 0x8C67, 0xB625, 0xB6CB, 0xB626, 0x8C68, 0xB627, 0x8C69,
- 0xB628, 0x8C6A, 0xB629, 0x8C6B, 0xB62A, 0x8C6C, 0xB62B, 0x8C6D,
- 0xB62C, 0xB6CC, 0xB62D, 0x8C6E, 0xB62E, 0x8C6F, 0xB62F, 0x8C70,
- 0xB630, 0x8C71, 0xB631, 0x8C72, 0xB632, 0x8C73, 0xB633, 0x8C74,
- 0xB634, 0xB6CD, 0xB635, 0x8C75, 0xB636, 0x8C76, 0xB637, 0x8C77,
- 0xB638, 0x8C78, 0xB639, 0x8C79, 0xB63A, 0x8C7A, 0xB63B, 0x8C81,
- 0xB63C, 0x8C82, 0xB63D, 0x8C83, 0xB63E, 0x8C84, 0xB63F, 0x8C85,
- 0xB640, 0x8C86, 0xB641, 0x8C87, 0xB642, 0x8C88, 0xB643, 0x8C89,
- 0xB644, 0x8C8A, 0xB645, 0x8C8B, 0xB646, 0x8C8C, 0xB647, 0x8C8D,
- 0xB648, 0xB6CE, 0xB649, 0x8C8E, 0xB64A, 0x8C8F, 0xB64B, 0x8C90,
- 0xB64C, 0x8C91, 0xB64D, 0x8C92, 0xB64E, 0x8C93, 0xB64F, 0x8C94,
- 0xB650, 0x8C95, 0xB651, 0x8C96, 0xB652, 0x8C97, 0xB653, 0x8C98,
- 0xB654, 0x8C99, 0xB655, 0x8C9A, 0xB656, 0x8C9B, 0xB657, 0x8C9C,
- 0xB658, 0x8C9D, 0xB659, 0x8C9E, 0xB65A, 0x8C9F, 0xB65B, 0x8CA0,
- 0xB65C, 0x8CA1, 0xB65D, 0x8CA2, 0xB65E, 0x8CA3, 0xB65F, 0x8CA4,
- 0xB660, 0x8CA5, 0xB661, 0x8CA6, 0xB662, 0x8CA7, 0xB663, 0x8CA8,
- 0xB664, 0xB6CF, 0xB665, 0x8CA9, 0xB666, 0x8CAA, 0xB667, 0x8CAB,
- 0xB668, 0xB6D0, 0xB669, 0x8CAC, 0xB66A, 0x8CAD, 0xB66B, 0x8CAE,
- 0xB66C, 0x8CAF, 0xB66D, 0x8CB0, 0xB66E, 0x8CB1, 0xB66F, 0x8CB2,
- 0xB670, 0x8CB3, 0xB671, 0x8CB4, 0xB672, 0x8CB5, 0xB673, 0x8CB6,
- 0xB674, 0x8CB7, 0xB675, 0x8CB8, 0xB676, 0x8CB9, 0xB677, 0x8CBA,
- 0xB678, 0x8CBB, 0xB679, 0x8CBC, 0xB67A, 0x8CBD, 0xB67B, 0x8CBE,
- 0xB67C, 0x8CBF, 0xB67D, 0x8CC0, 0xB67E, 0x8CC1, 0xB67F, 0x8CC2,
- 0xB680, 0x8CC3, 0xB681, 0x8CC4, 0xB682, 0x8CC5, 0xB683, 0x8CC6,
- 0xB684, 0x8CC7, 0xB685, 0x8CC8, 0xB686, 0x8CC9, 0xB687, 0x8CCA,
- 0xB688, 0x8CCB, 0xB689, 0x8CCC, 0xB68A, 0x8CCD, 0xB68B, 0x8CCE,
- 0xB68C, 0x8CCF, 0xB68D, 0x8CD0, 0xB68E, 0x8CD1, 0xB68F, 0x8CD2,
- 0xB690, 0x8CD3, 0xB691, 0x8CD4, 0xB692, 0x8CD5, 0xB693, 0x8CD6,
- 0xB694, 0x8CD7, 0xB695, 0x8CD8, 0xB696, 0x8CD9, 0xB697, 0x8CDA,
- 0xB698, 0x8CDB, 0xB699, 0x8CDC, 0xB69A, 0x8CDD, 0xB69B, 0x8CDE,
- 0xB69C, 0xB6D1, 0xB69D, 0xB6D2, 0xB69E, 0x8CDF, 0xB69F, 0x8CE0,
- 0xB6A0, 0xB6D3, 0xB6A1, 0x8CE1, 0xB6A2, 0x8CE2, 0xB6A3, 0x8CE3,
- 0xB6A4, 0xB6D4, 0xB6A5, 0x8CE4, 0xB6A6, 0x8CE5, 0xB6A7, 0x8CE6,
- 0xB6A8, 0x8CE7, 0xB6A9, 0x8CE8, 0xB6AA, 0x8CE9, 0xB6AB, 0xB6D5,
- 0xB6AC, 0xB6D6, 0xB6AD, 0x8CEA, 0xB6AE, 0x8CEB, 0xB6AF, 0x8CEC,
- 0xB6B0, 0x8CED, 0xB6B1, 0xB6D7, 0xB6B2, 0x8CEE, 0xB6B3, 0x8CEF,
- 0xB6B4, 0x8CF0, 0xB6B5, 0x8CF1, 0xB6B6, 0x8CF2, 0xB6B7, 0x8CF3,
- 0xB6B8, 0x8CF4, 0xB6B9, 0x8CF5, 0xB6BA, 0x8CF6, 0xB6BB, 0x8CF7,
- 0xB6BC, 0x8CF8, 0xB6BD, 0x8CF9, 0xB6BE, 0x8CFA, 0xB6BF, 0x8CFB,
- 0xB6C0, 0x8CFC, 0xB6C1, 0x8CFD, 0xB6C2, 0x8CFE, 0xB6C3, 0x8D41,
- 0xB6C4, 0x8D42, 0xB6C5, 0x8D43, 0xB6C6, 0x8D44, 0xB6C7, 0x8D45,
- 0xB6C8, 0x8D46, 0xB6C9, 0x8D47, 0xB6CA, 0x8D48, 0xB6CB, 0x8D49,
- 0xB6CC, 0x8D4A, 0xB6CD, 0x8D4B, 0xB6CE, 0x8D4C, 0xB6CF, 0x8D4D,
- 0xB6D0, 0x8D4E, 0xB6D1, 0x8D4F, 0xB6D2, 0x8D50, 0xB6D3, 0x8D51,
- 0xB6D4, 0xB6D8, 0xB6D5, 0x8D52, 0xB6D6, 0x8D53, 0xB6D7, 0x8D54,
- 0xB6D8, 0x8D55, 0xB6D9, 0x8D56, 0xB6DA, 0x8D57, 0xB6DB, 0x8D58,
- 0xB6DC, 0x8D59, 0xB6DD, 0x8D5A, 0xB6DE, 0x8D61, 0xB6DF, 0x8D62,
- 0xB6E0, 0x8D63, 0xB6E1, 0x8D64, 0xB6E2, 0x8D65, 0xB6E3, 0x8D66,
- 0xB6E4, 0x8D67, 0xB6E5, 0x8D68, 0xB6E6, 0x8D69, 0xB6E7, 0x8D6A,
- 0xB6E8, 0x8D6B, 0xB6E9, 0x8D6C, 0xB6EA, 0x8D6D, 0xB6EB, 0x8D6E,
- 0xB6EC, 0x8D6F, 0xB6ED, 0x8D70, 0xB6EE, 0x8D71, 0xB6EF, 0x8D72,
- 0xB6F0, 0xB6D9, 0xB6F1, 0x8D73, 0xB6F2, 0x8D74, 0xB6F3, 0x8D75,
- 0xB6F4, 0xB6DA, 0xB6F5, 0x8D76, 0xB6F6, 0x8D77, 0xB6F7, 0x8D78,
- 0xB6F8, 0xB6DB, 0xB6F9, 0x8D79, 0xB6FA, 0x8D7A, 0xB6FB, 0x8D81,
- 0xB6FC, 0x8D82, 0xB6FD, 0x8D83, 0xB6FE, 0x8D84, 0xB6FF, 0x8D85,
- 0xB700, 0xB6DC, 0xB701, 0xB6DD, 0xB702, 0x8D86, 0xB703, 0x8D87,
- 0xB704, 0x8D88, 0xB705, 0xB6DE, 0xB706, 0x8D89, 0xB707, 0x8D8A,
- 0xB708, 0x8D8B, 0xB709, 0x8D8C, 0xB70A, 0x8D8D, 0xB70B, 0x8D8E,
- 0xB70C, 0x8D8F, 0xB70D, 0x8D90, 0xB70E, 0x8D91, 0xB70F, 0x8D92,
- 0xB710, 0x8D93, 0xB711, 0x8D94, 0xB712, 0x8D95, 0xB713, 0x8D96,
- 0xB714, 0x8D97, 0xB715, 0x8D98, 0xB716, 0x8D99, 0xB717, 0x8D9A,
- 0xB718, 0x8D9B, 0xB719, 0x8D9C, 0xB71A, 0x8D9D, 0xB71B, 0x8D9E,
- 0xB71C, 0x8D9F, 0xB71D, 0x8DA0, 0xB71E, 0x8DA1, 0xB71F, 0x8DA2,
- 0xB720, 0x8DA3, 0xB721, 0x8DA4, 0xB722, 0x8DA5, 0xB723, 0x8DA6,
- 0xB724, 0x8DA7, 0xB725, 0x8DA8, 0xB726, 0x8DA9, 0xB727, 0x8DAA,
- 0xB728, 0xB6DF, 0xB729, 0xB6E0, 0xB72A, 0x8DAB, 0xB72B, 0x8DAC,
- 0xB72C, 0xB6E1, 0xB72D, 0x8DAD, 0xB72E, 0x8DAE, 0xB72F, 0xB6E2,
- 0xB730, 0xB6E3, 0xB731, 0x8DAF, 0xB732, 0x8DB0, 0xB733, 0x8DB1,
- 0xB734, 0x8DB2, 0xB735, 0x8DB3, 0xB736, 0x8DB4, 0xB737, 0x8DB5,
- 0xB738, 0xB6E4, 0xB739, 0xB6E5, 0xB73A, 0x8DB6, 0xB73B, 0xB6E6,
- 0xB73C, 0x8DB7, 0xB73D, 0x8DB8, 0xB73E, 0x8DB9, 0xB73F, 0x8DBA,
- 0xB740, 0x8DBB, 0xB741, 0x8DBC, 0xB742, 0x8DBD, 0xB743, 0x8DBE,
- 0xB744, 0xB6E7, 0xB745, 0x8DBF, 0xB746, 0x8DC0, 0xB747, 0x8DC1,
- 0xB748, 0xB6E8, 0xB749, 0x8DC2, 0xB74A, 0x8DC3, 0xB74B, 0x8DC4,
- 0xB74C, 0xB6E9, 0xB74D, 0x8DC5, 0xB74E, 0x8DC6, 0xB74F, 0x8DC7,
- 0xB750, 0x8DC8, 0xB751, 0x8DC9, 0xB752, 0x8DCA, 0xB753, 0x8DCB,
- 0xB754, 0xB6EA, 0xB755, 0xB6EB, 0xB756, 0x8DCC, 0xB757, 0x8DCD,
- 0xB758, 0x8DCE, 0xB759, 0x8DCF, 0xB75A, 0x8DD0, 0xB75B, 0x8DD1,
- 0xB75C, 0x8DD2, 0xB75D, 0x8DD3, 0xB75E, 0x8DD4, 0xB75F, 0x8DD5,
- 0xB760, 0xB6EC, 0xB761, 0x8DD6, 0xB762, 0x8DD7, 0xB763, 0x8DD8,
- 0xB764, 0xB6ED, 0xB765, 0x8DD9, 0xB766, 0x8DDA, 0xB767, 0x8DDB,
- 0xB768, 0xB6EE, 0xB769, 0x8DDC, 0xB76A, 0x8DDD, 0xB76B, 0x8DDE,
- 0xB76C, 0x8DDF, 0xB76D, 0x8DE0, 0xB76E, 0x8DE1, 0xB76F, 0x8DE2,
- 0xB770, 0xB6EF, 0xB771, 0xB6F0, 0xB772, 0x8DE3, 0xB773, 0xB6F1,
- 0xB774, 0x8DE4, 0xB775, 0xB6F2, 0xB776, 0x8DE5, 0xB777, 0x8DE6,
- 0xB778, 0x8DE7, 0xB779, 0x8DE8, 0xB77A, 0x8DE9, 0xB77B, 0x8DEA,
- 0xB77C, 0xB6F3, 0xB77D, 0xB6F4, 0xB77E, 0x8DEB, 0xB77F, 0x8DEC,
- 0xB780, 0xB6F5, 0xB781, 0x8DED, 0xB782, 0x8DEE, 0xB783, 0x8DEF,
- 0xB784, 0xB6F6, 0xB785, 0x8DF0, 0xB786, 0x8DF1, 0xB787, 0x8DF2,
- 0xB788, 0x8DF3, 0xB789, 0x8DF4, 0xB78A, 0x8DF5, 0xB78B, 0x8DF6,
- 0xB78C, 0xB6F7, 0xB78D, 0xB6F8, 0xB78E, 0x8DF7, 0xB78F, 0xB6F9,
- 0xB790, 0xB6FA, 0xB791, 0xB6FB, 0xB792, 0xB6FC, 0xB793, 0x8DF8,
- 0xB794, 0x8DF9, 0xB795, 0x8DFA, 0xB796, 0xB6FD, 0xB797, 0xB6FE,
- 0xB798, 0xB7A1, 0xB799, 0xB7A2, 0xB79A, 0x8DFB, 0xB79B, 0x8DFC,
- 0xB79C, 0xB7A3, 0xB79D, 0x8DFD, 0xB79E, 0x8DFE, 0xB79F, 0x8E41,
- 0xB7A0, 0xB7A4, 0xB7A1, 0x8E42, 0xB7A2, 0x8E43, 0xB7A3, 0x8E44,
- 0xB7A4, 0x8E45, 0xB7A5, 0x8E46, 0xB7A6, 0x8E47, 0xB7A7, 0x8E48,
- 0xB7A8, 0xB7A5, 0xB7A9, 0xB7A6, 0xB7AA, 0x8E49, 0xB7AB, 0xB7A7,
- 0xB7AC, 0xB7A8, 0xB7AD, 0xB7A9, 0xB7AE, 0x8E4A, 0xB7AF, 0x8E4B,
- 0xB7B0, 0x8E4C, 0xB7B1, 0x8E4D, 0xB7B2, 0x8E4E, 0xB7B3, 0x8E4F,
- 0xB7B4, 0xB7AA, 0xB7B5, 0xB7AB, 0xB7B6, 0x8E50, 0xB7B7, 0x8E51,
- 0xB7B8, 0xB7AC, 0xB7B9, 0x8E52, 0xB7BA, 0x8E53, 0xB7BB, 0x8E54,
- 0xB7BC, 0x8E55, 0xB7BD, 0x8E56, 0xB7BE, 0x8E57, 0xB7BF, 0x8E58,
- 0xB7C0, 0x8E59, 0xB7C1, 0x8E5A, 0xB7C2, 0x8E61, 0xB7C3, 0x8E62,
- 0xB7C4, 0x8E63, 0xB7C5, 0x8E64, 0xB7C6, 0x8E65, 0xB7C7, 0xB7AD,
- 0xB7C8, 0x8E66, 0xB7C9, 0xB7AE, 0xB7CA, 0x8E67, 0xB7CB, 0x8E68,
- 0xB7CC, 0x8E69, 0xB7CD, 0x8E6A, 0xB7CE, 0x8E6B, 0xB7CF, 0x8E6C,
- 0xB7D0, 0x8E6D, 0xB7D1, 0x8E6E, 0xB7D2, 0x8E6F, 0xB7D3, 0x8E70,
- 0xB7D4, 0x8E71, 0xB7D5, 0x8E72, 0xB7D6, 0x8E73, 0xB7D7, 0x8E74,
- 0xB7D8, 0x8E75, 0xB7D9, 0x8E76, 0xB7DA, 0x8E77, 0xB7DB, 0x8E78,
- 0xB7DC, 0x8E79, 0xB7DD, 0x8E7A, 0xB7DE, 0x8E81, 0xB7DF, 0x8E82,
- 0xB7E0, 0x8E83, 0xB7E1, 0x8E84, 0xB7E2, 0x8E85, 0xB7E3, 0x8E86,
- 0xB7E4, 0x8E87, 0xB7E5, 0x8E88, 0xB7E6, 0x8E89, 0xB7E7, 0x8E8A,
- 0xB7E8, 0x8E8B, 0xB7E9, 0x8E8C, 0xB7EA, 0x8E8D, 0xB7EB, 0x8E8E,
- 0xB7EC, 0xB7AF, 0xB7ED, 0xB7B0, 0xB7EE, 0x8E8F, 0xB7EF, 0x8E90,
- 0xB7F0, 0xB7B1, 0xB7F1, 0x8E91, 0xB7F2, 0x8E92, 0xB7F3, 0x8E93,
- 0xB7F4, 0xB7B2, 0xB7F5, 0x8E94, 0xB7F6, 0x8E95, 0xB7F7, 0x8E96,
- 0xB7F8, 0x8E97, 0xB7F9, 0x8E98, 0xB7FA, 0x8E99, 0xB7FB, 0x8E9A,
- 0xB7FC, 0xB7B3, 0xB7FD, 0xB7B4, 0xB7FE, 0x8E9B, 0xB7FF, 0xB7B5,
- 0xB800, 0xB7B6, 0xB801, 0xB7B7, 0xB802, 0x8E9C, 0xB803, 0x8E9D,
- 0xB804, 0x8E9E, 0xB805, 0x8E9F, 0xB806, 0x8EA0, 0xB807, 0xB7B8,
- 0xB808, 0xB7B9, 0xB809, 0xB7BA, 0xB80A, 0x8EA1, 0xB80B, 0x8EA2,
- 0xB80C, 0xB7BB, 0xB80D, 0x8EA3, 0xB80E, 0x8EA4, 0xB80F, 0x8EA5,
- 0xB810, 0xB7BC, 0xB811, 0x8EA6, 0xB812, 0x8EA7, 0xB813, 0x8EA8,
- 0xB814, 0x8EA9, 0xB815, 0x8EAA, 0xB816, 0x8EAB, 0xB817, 0x8EAC,
- 0xB818, 0xB7BD, 0xB819, 0xB7BE, 0xB81A, 0x8EAD, 0xB81B, 0xB7BF,
- 0xB81C, 0x8EAE, 0xB81D, 0xB7C0, 0xB81E, 0x8EAF, 0xB81F, 0x8EB0,
- 0xB820, 0x8EB1, 0xB821, 0x8EB2, 0xB822, 0x8EB3, 0xB823, 0x8EB4,
- 0xB824, 0xB7C1, 0xB825, 0xB7C2, 0xB826, 0x8EB5, 0xB827, 0x8EB6,
- 0xB828, 0xB7C3, 0xB829, 0x8EB7, 0xB82A, 0x8EB8, 0xB82B, 0x8EB9,
- 0xB82C, 0xB7C4, 0xB82D, 0x8EBA, 0xB82E, 0x8EBB, 0xB82F, 0x8EBC,
- 0xB830, 0x8EBD, 0xB831, 0x8EBE, 0xB832, 0x8EBF, 0xB833, 0x8EC0,
- 0xB834, 0xB7C5, 0xB835, 0xB7C6, 0xB836, 0x8EC1, 0xB837, 0xB7C7,
- 0xB838, 0xB7C8, 0xB839, 0xB7C9, 0xB83A, 0x8EC2, 0xB83B, 0x8EC3,
- 0xB83C, 0x8EC4, 0xB83D, 0x8EC5, 0xB83E, 0x8EC6, 0xB83F, 0x8EC7,
- 0xB840, 0xB7CA, 0xB841, 0x8EC8, 0xB842, 0x8EC9, 0xB843, 0x8ECA,
- 0xB844, 0xB7CB, 0xB845, 0x8ECB, 0xB846, 0x8ECC, 0xB847, 0x8ECD,
- 0xB848, 0x8ECE, 0xB849, 0x8ECF, 0xB84A, 0x8ED0, 0xB84B, 0x8ED1,
- 0xB84C, 0x8ED2, 0xB84D, 0x8ED3, 0xB84E, 0x8ED4, 0xB84F, 0x8ED5,
- 0xB850, 0x8ED6, 0xB851, 0xB7CC, 0xB852, 0x8ED7, 0xB853, 0xB7CD,
- 0xB854, 0x8ED8, 0xB855, 0x8ED9, 0xB856, 0x8EDA, 0xB857, 0x8EDB,
- 0xB858, 0x8EDC, 0xB859, 0x8EDD, 0xB85A, 0x8EDE, 0xB85B, 0x8EDF,
- 0xB85C, 0xB7CE, 0xB85D, 0xB7CF, 0xB85E, 0x8EE0, 0xB85F, 0x8EE1,
- 0xB860, 0xB7D0, 0xB861, 0x8EE2, 0xB862, 0x8EE3, 0xB863, 0x8EE4,
- 0xB864, 0xB7D1, 0xB865, 0x8EE5, 0xB866, 0x8EE6, 0xB867, 0x8EE7,
- 0xB868, 0x8EE8, 0xB869, 0x8EE9, 0xB86A, 0x8EEA, 0xB86B, 0x8EEB,
- 0xB86C, 0xB7D2, 0xB86D, 0xB7D3, 0xB86E, 0x8EEC, 0xB86F, 0xB7D4,
- 0xB870, 0x8EED, 0xB871, 0xB7D5, 0xB872, 0x8EEE, 0xB873, 0x8EEF,
- 0xB874, 0x8EF0, 0xB875, 0x8EF1, 0xB876, 0x8EF2, 0xB877, 0x8EF3,
- 0xB878, 0xB7D6, 0xB879, 0x8EF4, 0xB87A, 0x8EF5, 0xB87B, 0x8EF6,
- 0xB87C, 0xB7D7, 0xB87D, 0x8EF7, 0xB87E, 0x8EF8, 0xB87F, 0x8EF9,
- 0xB880, 0x8EFA, 0xB881, 0x8EFB, 0xB882, 0x8EFC, 0xB883, 0x8EFD,
- 0xB884, 0x8EFE, 0xB885, 0x8F41, 0xB886, 0x8F42, 0xB887, 0x8F43,
- 0xB888, 0x8F44, 0xB889, 0x8F45, 0xB88A, 0x8F46, 0xB88B, 0x8F47,
- 0xB88C, 0x8F48, 0xB88D, 0xB7D8, 0xB88E, 0x8F49, 0xB88F, 0x8F4A,
- 0xB890, 0x8F4B, 0xB891, 0x8F4C, 0xB892, 0x8F4D, 0xB893, 0x8F4E,
- 0xB894, 0x8F4F, 0xB895, 0x8F50, 0xB896, 0x8F51, 0xB897, 0x8F52,
- 0xB898, 0x8F53, 0xB899, 0x8F54, 0xB89A, 0x8F55, 0xB89B, 0x8F56,
- 0xB89C, 0x8F57, 0xB89D, 0x8F58, 0xB89E, 0x8F59, 0xB89F, 0x8F5A,
- 0xB8A0, 0x8F61, 0xB8A1, 0x8F62, 0xB8A2, 0x8F63, 0xB8A3, 0x8F64,
- 0xB8A4, 0x8F65, 0xB8A5, 0x8F66, 0xB8A6, 0x8F67, 0xB8A7, 0x8F68,
- 0xB8A8, 0xB7D9, 0xB8A9, 0x8F69, 0xB8AA, 0x8F6A, 0xB8AB, 0x8F6B,
- 0xB8AC, 0x8F6C, 0xB8AD, 0x8F6D, 0xB8AE, 0x8F6E, 0xB8AF, 0x8F6F,
- 0xB8B0, 0xB7DA, 0xB8B1, 0x8F70, 0xB8B2, 0x8F71, 0xB8B3, 0x8F72,
- 0xB8B4, 0xB7DB, 0xB8B5, 0x8F73, 0xB8B6, 0x8F74, 0xB8B7, 0x8F75,
- 0xB8B8, 0xB7DC, 0xB8B9, 0x8F76, 0xB8BA, 0x8F77, 0xB8BB, 0x8F78,
- 0xB8BC, 0x8F79, 0xB8BD, 0x8F7A, 0xB8BE, 0x8F81, 0xB8BF, 0x8F82,
- 0xB8C0, 0xB7DD, 0xB8C1, 0xB7DE, 0xB8C2, 0x8F83, 0xB8C3, 0xB7DF,
- 0xB8C4, 0x8F84, 0xB8C5, 0xB7E0, 0xB8C6, 0x8F85, 0xB8C7, 0x8F86,
- 0xB8C8, 0x8F87, 0xB8C9, 0x8F88, 0xB8CA, 0x8F89, 0xB8CB, 0x8F8A,
- 0xB8CC, 0xB7E1, 0xB8CD, 0x8F8B, 0xB8CE, 0x8F8C, 0xB8CF, 0x8F8D,
- 0xB8D0, 0xB7E2, 0xB8D1, 0x8F8E, 0xB8D2, 0x8F8F, 0xB8D3, 0x8F90,
- 0xB8D4, 0xB7E3, 0xB8D5, 0x8F91, 0xB8D6, 0x8F92, 0xB8D7, 0x8F93,
- 0xB8D8, 0x8F94, 0xB8D9, 0x8F95, 0xB8DA, 0x8F96, 0xB8DB, 0x8F97,
- 0xB8DC, 0x8F98, 0xB8DD, 0xB7E4, 0xB8DE, 0x8F99, 0xB8DF, 0xB7E5,
- 0xB8E0, 0x8F9A, 0xB8E1, 0xB7E6, 0xB8E2, 0x8F9B, 0xB8E3, 0x8F9C,
- 0xB8E4, 0x8F9D, 0xB8E5, 0x8F9E, 0xB8E6, 0x8F9F, 0xB8E7, 0x8FA0,
- 0xB8E8, 0xB7E7, 0xB8E9, 0xB7E8, 0xB8EA, 0x8FA1, 0xB8EB, 0x8FA2,
- 0xB8EC, 0xB7E9, 0xB8ED, 0x8FA3, 0xB8EE, 0x8FA4, 0xB8EF, 0x8FA5,
- 0xB8F0, 0xB7EA, 0xB8F1, 0x8FA6, 0xB8F2, 0x8FA7, 0xB8F3, 0x8FA8,
- 0xB8F4, 0x8FA9, 0xB8F5, 0x8FAA, 0xB8F6, 0x8FAB, 0xB8F7, 0x8FAC,
- 0xB8F8, 0xB7EB, 0xB8F9, 0xB7EC, 0xB8FA, 0x8FAD, 0xB8FB, 0xB7ED,
- 0xB8FC, 0x8FAE, 0xB8FD, 0xB7EE, 0xB8FE, 0x8FAF, 0xB8FF, 0x8FB0,
- 0xB900, 0x8FB1, 0xB901, 0x8FB2, 0xB902, 0x8FB3, 0xB903, 0x8FB4,
- 0xB904, 0xB7EF, 0xB905, 0x8FB5, 0xB906, 0x8FB6, 0xB907, 0x8FB7,
- 0xB908, 0x8FB8, 0xB909, 0x8FB9, 0xB90A, 0x8FBA, 0xB90B, 0x8FBB,
- 0xB90C, 0x8FBC, 0xB90D, 0x8FBD, 0xB90E, 0x8FBE, 0xB90F, 0x8FBF,
- 0xB910, 0x8FC0, 0xB911, 0x8FC1, 0xB912, 0x8FC2, 0xB913, 0x8FC3,
- 0xB914, 0x8FC4, 0xB915, 0x8FC5, 0xB916, 0x8FC6, 0xB917, 0x8FC7,
- 0xB918, 0xB7F0, 0xB919, 0x8FC8, 0xB91A, 0x8FC9, 0xB91B, 0x8FCA,
- 0xB91C, 0x8FCB, 0xB91D, 0x8FCC, 0xB91E, 0x8FCD, 0xB91F, 0x8FCE,
- 0xB920, 0xB7F1, 0xB921, 0x8FCF, 0xB922, 0x8FD0, 0xB923, 0x8FD1,
- 0xB924, 0x8FD2, 0xB925, 0x8FD3, 0xB926, 0x8FD4, 0xB927, 0x8FD5,
- 0xB928, 0x8FD6, 0xB929, 0x8FD7, 0xB92A, 0x8FD8, 0xB92B, 0x8FD9,
- 0xB92C, 0x8FDA, 0xB92D, 0x8FDB, 0xB92E, 0x8FDC, 0xB92F, 0x8FDD,
- 0xB930, 0x8FDE, 0xB931, 0x8FDF, 0xB932, 0x8FE0, 0xB933, 0x8FE1,
- 0xB934, 0x8FE2, 0xB935, 0x8FE3, 0xB936, 0x8FE4, 0xB937, 0x8FE5,
- 0xB938, 0x8FE6, 0xB939, 0x8FE7, 0xB93A, 0x8FE8, 0xB93B, 0x8FE9,
- 0xB93C, 0xB7F2, 0xB93D, 0xB7F3, 0xB93E, 0x8FEA, 0xB93F, 0x8FEB,
- 0xB940, 0xB7F4, 0xB941, 0x8FEC, 0xB942, 0x8FED, 0xB943, 0x8FEE,
- 0xB944, 0xB7F5, 0xB945, 0x8FEF, 0xB946, 0x8FF0, 0xB947, 0x8FF1,
- 0xB948, 0x8FF2, 0xB949, 0x8FF3, 0xB94A, 0x8FF4, 0xB94B, 0x8FF5,
- 0xB94C, 0xB7F6, 0xB94D, 0x8FF6, 0xB94E, 0x8FF7, 0xB94F, 0xB7F7,
- 0xB950, 0x8FF8, 0xB951, 0xB7F8, 0xB952, 0x8FF9, 0xB953, 0x8FFA,
- 0xB954, 0x8FFB, 0xB955, 0x8FFC, 0xB956, 0x8FFD, 0xB957, 0x8FFE,
- 0xB958, 0xB7F9, 0xB959, 0xB7FA, 0xB95A, 0x9041, 0xB95B, 0x9042,
- 0xB95C, 0xB7FB, 0xB95D, 0x9043, 0xB95E, 0x9044, 0xB95F, 0x9045,
- 0xB960, 0xB7FC, 0xB961, 0x9046, 0xB962, 0x9047, 0xB963, 0x9048,
- 0xB964, 0x9049, 0xB965, 0x904A, 0xB966, 0x904B, 0xB967, 0x904C,
- 0xB968, 0xB7FD, 0xB969, 0xB7FE, 0xB96A, 0x904D, 0xB96B, 0xB8A1,
- 0xB96C, 0x904E, 0xB96D, 0xB8A2, 0xB96E, 0x904F, 0xB96F, 0x9050,
- 0xB970, 0x9051, 0xB971, 0x9052, 0xB972, 0x9053, 0xB973, 0x9054,
- 0xB974, 0xB8A3, 0xB975, 0xB8A4, 0xB976, 0x9055, 0xB977, 0x9056,
- 0xB978, 0xB8A5, 0xB979, 0x9057, 0xB97A, 0x9058, 0xB97B, 0x9059,
- 0xB97C, 0xB8A6, 0xB97D, 0x905A, 0xB97E, 0x9061, 0xB97F, 0x9062,
- 0xB980, 0x9063, 0xB981, 0x9064, 0xB982, 0x9065, 0xB983, 0x9066,
- 0xB984, 0xB8A7, 0xB985, 0xB8A8, 0xB986, 0x9067, 0xB987, 0xB8A9,
- 0xB988, 0x9068, 0xB989, 0xB8AA, 0xB98A, 0xB8AB, 0xB98B, 0x9069,
- 0xB98C, 0x906A, 0xB98D, 0xB8AC, 0xB98E, 0xB8AD, 0xB98F, 0x906B,
- 0xB990, 0x906C, 0xB991, 0x906D, 0xB992, 0x906E, 0xB993, 0x906F,
- 0xB994, 0x9070, 0xB995, 0x9071, 0xB996, 0x9072, 0xB997, 0x9073,
- 0xB998, 0x9074, 0xB999, 0x9075, 0xB99A, 0x9076, 0xB99B, 0x9077,
- 0xB99C, 0x9078, 0xB99D, 0x9079, 0xB99E, 0x907A, 0xB99F, 0x9081,
- 0xB9A0, 0x9082, 0xB9A1, 0x9083, 0xB9A2, 0x9084, 0xB9A3, 0x9085,
- 0xB9A4, 0x9086, 0xB9A5, 0x9087, 0xB9A6, 0x9088, 0xB9A7, 0x9089,
- 0xB9A8, 0x908A, 0xB9A9, 0x908B, 0xB9AA, 0x908C, 0xB9AB, 0x908D,
- 0xB9AC, 0xB8AE, 0xB9AD, 0xB8AF, 0xB9AE, 0x908E, 0xB9AF, 0x908F,
- 0xB9B0, 0xB8B0, 0xB9B1, 0x9090, 0xB9B2, 0x9091, 0xB9B3, 0x9092,
- 0xB9B4, 0xB8B1, 0xB9B5, 0x9093, 0xB9B6, 0x9094, 0xB9B7, 0x9095,
- 0xB9B8, 0x9096, 0xB9B9, 0x9097, 0xB9BA, 0x9098, 0xB9BB, 0x9099,
- 0xB9BC, 0xB8B2, 0xB9BD, 0xB8B3, 0xB9BE, 0x909A, 0xB9BF, 0xB8B4,
- 0xB9C0, 0x909B, 0xB9C1, 0xB8B5, 0xB9C2, 0x909C, 0xB9C3, 0x909D,
- 0xB9C4, 0x909E, 0xB9C5, 0x909F, 0xB9C6, 0x90A0, 0xB9C7, 0x90A1,
- 0xB9C8, 0xB8B6, 0xB9C9, 0xB8B7, 0xB9CA, 0x90A2, 0xB9CB, 0x90A3,
- 0xB9CC, 0xB8B8, 0xB9CD, 0x90A4, 0xB9CE, 0xB8B9, 0xB9CF, 0xB8BA,
- 0xB9D0, 0xB8BB, 0xB9D1, 0xB8BC, 0xB9D2, 0xB8BD, 0xB9D3, 0x90A5,
- 0xB9D4, 0x90A6, 0xB9D5, 0x90A7, 0xB9D6, 0x90A8, 0xB9D7, 0x90A9,
- 0xB9D8, 0xB8BE, 0xB9D9, 0xB8BF, 0xB9DA, 0x90AA, 0xB9DB, 0xB8C0,
- 0xB9DC, 0x90AB, 0xB9DD, 0xB8C1, 0xB9DE, 0xB8C2, 0xB9DF, 0x90AC,
- 0xB9E0, 0x90AD, 0xB9E1, 0xB8C3, 0xB9E2, 0x90AE, 0xB9E3, 0xB8C4,
- 0xB9E4, 0xB8C5, 0xB9E5, 0xB8C6, 0xB9E6, 0x90AF, 0xB9E7, 0x90B0,
- 0xB9E8, 0xB8C7, 0xB9E9, 0x90B1, 0xB9EA, 0x90B2, 0xB9EB, 0x90B3,
- 0xB9EC, 0xB8C8, 0xB9ED, 0x90B4, 0xB9EE, 0x90B5, 0xB9EF, 0x90B6,
- 0xB9F0, 0x90B7, 0xB9F1, 0x90B8, 0xB9F2, 0x90B9, 0xB9F3, 0x90BA,
- 0xB9F4, 0xB8C9, 0xB9F5, 0xB8CA, 0xB9F6, 0x90BB, 0xB9F7, 0xB8CB,
- 0xB9F8, 0xB8CC, 0xB9F9, 0xB8CD, 0xB9FA, 0xB8CE, 0xB9FB, 0x90BC,
- 0xB9FC, 0x90BD, 0xB9FD, 0x90BE, 0xB9FE, 0x90BF, 0xB9FF, 0x90C0,
- 0xBA00, 0xB8CF, 0xBA01, 0xB8D0, 0xBA02, 0x90C1, 0xBA03, 0x90C2,
- 0xBA04, 0x90C3, 0xBA05, 0x90C4, 0xBA06, 0x90C5, 0xBA07, 0x90C6,
- 0xBA08, 0xB8D1, 0xBA09, 0x90C7, 0xBA0A, 0x90C8, 0xBA0B, 0x90C9,
- 0xBA0C, 0x90CA, 0xBA0D, 0x90CB, 0xBA0E, 0x90CC, 0xBA0F, 0x90CD,
- 0xBA10, 0x90CE, 0xBA11, 0x90CF, 0xBA12, 0x90D0, 0xBA13, 0x90D1,
- 0xBA14, 0x90D2, 0xBA15, 0xB8D2, 0xBA16, 0x90D3, 0xBA17, 0x90D4,
- 0xBA18, 0x90D5, 0xBA19, 0x90D6, 0xBA1A, 0x90D7, 0xBA1B, 0x90D8,
- 0xBA1C, 0x90D9, 0xBA1D, 0x90DA, 0xBA1E, 0x90DB, 0xBA1F, 0x90DC,
- 0xBA20, 0x90DD, 0xBA21, 0x90DE, 0xBA22, 0x90DF, 0xBA23, 0x90E0,
- 0xBA24, 0x90E1, 0xBA25, 0x90E2, 0xBA26, 0x90E3, 0xBA27, 0x90E4,
- 0xBA28, 0x90E5, 0xBA29, 0x90E6, 0xBA2A, 0x90E7, 0xBA2B, 0x90E8,
- 0xBA2C, 0x90E9, 0xBA2D, 0x90EA, 0xBA2E, 0x90EB, 0xBA2F, 0x90EC,
- 0xBA30, 0x90ED, 0xBA31, 0x90EE, 0xBA32, 0x90EF, 0xBA33, 0x90F0,
- 0xBA34, 0x90F1, 0xBA35, 0x90F2, 0xBA36, 0x90F3, 0xBA37, 0x90F4,
- 0xBA38, 0xB8D3, 0xBA39, 0xB8D4, 0xBA3A, 0x90F5, 0xBA3B, 0x90F6,
- 0xBA3C, 0xB8D5, 0xBA3D, 0x90F7, 0xBA3E, 0x90F8, 0xBA3F, 0x90F9,
- 0xBA40, 0xB8D6, 0xBA41, 0x90FA, 0xBA42, 0xB8D7, 0xBA43, 0x90FB,
- 0xBA44, 0x90FC, 0xBA45, 0x90FD, 0xBA46, 0x90FE, 0xBA47, 0x9141,
- 0xBA48, 0xB8D8, 0xBA49, 0xB8D9, 0xBA4A, 0x9142, 0xBA4B, 0xB8DA,
- 0xBA4C, 0x9143, 0xBA4D, 0xB8DB, 0xBA4E, 0xB8DC, 0xBA4F, 0x9144,
- 0xBA50, 0x9145, 0xBA51, 0x9146, 0xBA52, 0x9147, 0xBA53, 0xB8DD,
- 0xBA54, 0xB8DE, 0xBA55, 0xB8DF, 0xBA56, 0x9148, 0xBA57, 0x9149,
- 0xBA58, 0xB8E0, 0xBA59, 0x914A, 0xBA5A, 0x914B, 0xBA5B, 0x914C,
- 0xBA5C, 0xB8E1, 0xBA5D, 0x914D, 0xBA5E, 0x914E, 0xBA5F, 0x914F,
- 0xBA60, 0x9150, 0xBA61, 0x9151, 0xBA62, 0x9152, 0xBA63, 0x9153,
- 0xBA64, 0xB8E2, 0xBA65, 0xB8E3, 0xBA66, 0x9154, 0xBA67, 0xB8E4,
- 0xBA68, 0xB8E5, 0xBA69, 0xB8E6, 0xBA6A, 0x9155, 0xBA6B, 0x9156,
- 0xBA6C, 0x9157, 0xBA6D, 0x9158, 0xBA6E, 0x9159, 0xBA6F, 0x915A,
- 0xBA70, 0xB8E7, 0xBA71, 0xB8E8, 0xBA72, 0x9161, 0xBA73, 0x9162,
- 0xBA74, 0xB8E9, 0xBA75, 0x9163, 0xBA76, 0x9164, 0xBA77, 0x9165,
- 0xBA78, 0xB8EA, 0xBA79, 0x9166, 0xBA7A, 0x9167, 0xBA7B, 0x9168,
- 0xBA7C, 0x9169, 0xBA7D, 0x916A, 0xBA7E, 0x916B, 0xBA7F, 0x916C,
- 0xBA80, 0x916D, 0xBA81, 0x916E, 0xBA82, 0x916F, 0xBA83, 0xB8EB,
- 0xBA84, 0xB8EC, 0xBA85, 0xB8ED, 0xBA86, 0x9170, 0xBA87, 0xB8EE,
- 0xBA88, 0x9171, 0xBA89, 0x9172, 0xBA8A, 0x9173, 0xBA8B, 0x9174,
- 0xBA8C, 0xB8EF, 0xBA8D, 0x9175, 0xBA8E, 0x9176, 0xBA8F, 0x9177,
- 0xBA90, 0x9178, 0xBA91, 0x9179, 0xBA92, 0x917A, 0xBA93, 0x9181,
- 0xBA94, 0x9182, 0xBA95, 0x9183, 0xBA96, 0x9184, 0xBA97, 0x9185,
- 0xBA98, 0x9186, 0xBA99, 0x9187, 0xBA9A, 0x9188, 0xBA9B, 0x9189,
- 0xBA9C, 0x918A, 0xBA9D, 0x918B, 0xBA9E, 0x918C, 0xBA9F, 0x918D,
- 0xBAA0, 0x918E, 0xBAA1, 0x918F, 0xBAA2, 0x9190, 0xBAA3, 0x9191,
- 0xBAA4, 0x9192, 0xBAA5, 0x9193, 0xBAA6, 0x9194, 0xBAA7, 0x9195,
- 0xBAA8, 0xB8F0, 0xBAA9, 0xB8F1, 0xBAAA, 0x9196, 0xBAAB, 0xB8F2,
- 0xBAAC, 0xB8F3, 0xBAAD, 0x9197, 0xBAAE, 0x9198, 0xBAAF, 0x9199,
- 0xBAB0, 0xB8F4, 0xBAB1, 0x919A, 0xBAB2, 0xB8F5, 0xBAB3, 0x919B,
- 0xBAB4, 0x919C, 0xBAB5, 0x919D, 0xBAB6, 0x919E, 0xBAB7, 0x919F,
- 0xBAB8, 0xB8F6, 0xBAB9, 0xB8F7, 0xBABA, 0x91A0, 0xBABB, 0xB8F8,
- 0xBABC, 0x91A1, 0xBABD, 0xB8F9, 0xBABE, 0x91A2, 0xBABF, 0x91A3,
- 0xBAC0, 0x91A4, 0xBAC1, 0x91A5, 0xBAC2, 0x91A6, 0xBAC3, 0x91A7,
- 0xBAC4, 0xB8FA, 0xBAC5, 0x91A8, 0xBAC6, 0x91A9, 0xBAC7, 0x91AA,
- 0xBAC8, 0xB8FB, 0xBAC9, 0x91AB, 0xBACA, 0x91AC, 0xBACB, 0x91AD,
- 0xBACC, 0x91AE, 0xBACD, 0x91AF, 0xBACE, 0x91B0, 0xBACF, 0x91B1,
- 0xBAD0, 0x91B2, 0xBAD1, 0x91B3, 0xBAD2, 0x91B4, 0xBAD3, 0x91B5,
- 0xBAD4, 0x91B6, 0xBAD5, 0x91B7, 0xBAD6, 0x91B8, 0xBAD7, 0x91B9,
- 0xBAD8, 0xB8FC, 0xBAD9, 0xB8FD, 0xBADA, 0x91BA, 0xBADB, 0x91BB,
- 0xBADC, 0x91BC, 0xBADD, 0x91BD, 0xBADE, 0x91BE, 0xBADF, 0x91BF,
- 0xBAE0, 0x91C0, 0xBAE1, 0x91C1, 0xBAE2, 0x91C2, 0xBAE3, 0x91C3,
- 0xBAE4, 0x91C4, 0xBAE5, 0x91C5, 0xBAE6, 0x91C6, 0xBAE7, 0x91C7,
- 0xBAE8, 0x91C8, 0xBAE9, 0x91C9, 0xBAEA, 0x91CA, 0xBAEB, 0x91CB,
- 0xBAEC, 0x91CC, 0xBAED, 0x91CD, 0xBAEE, 0x91CE, 0xBAEF, 0x91CF,
- 0xBAF0, 0x91D0, 0xBAF1, 0x91D1, 0xBAF2, 0x91D2, 0xBAF3, 0x91D3,
- 0xBAF4, 0x91D4, 0xBAF5, 0x91D5, 0xBAF6, 0x91D6, 0xBAF7, 0x91D7,
- 0xBAF8, 0x91D8, 0xBAF9, 0x91D9, 0xBAFA, 0x91DA, 0xBAFB, 0x91DB,
- 0xBAFC, 0xB8FE, 0xBAFD, 0x91DC, 0xBAFE, 0x91DD, 0xBAFF, 0x91DE,
- 0xBB00, 0xB9A1, 0xBB01, 0x91DF, 0xBB02, 0x91E0, 0xBB03, 0x91E1,
- 0xBB04, 0xB9A2, 0xBB05, 0x91E2, 0xBB06, 0x91E3, 0xBB07, 0x91E4,
- 0xBB08, 0x91E5, 0xBB09, 0x91E6, 0xBB0A, 0x91E7, 0xBB0B, 0x91E8,
- 0xBB0C, 0x91E9, 0xBB0D, 0xB9A3, 0xBB0E, 0x91EA, 0xBB0F, 0xB9A4,
- 0xBB10, 0x91EB, 0xBB11, 0xB9A5, 0xBB12, 0x91EC, 0xBB13, 0x91ED,
- 0xBB14, 0x91EE, 0xBB15, 0x91EF, 0xBB16, 0x91F0, 0xBB17, 0x91F1,
- 0xBB18, 0xB9A6, 0xBB19, 0x91F2, 0xBB1A, 0x91F3, 0xBB1B, 0x91F4,
- 0xBB1C, 0xB9A7, 0xBB1D, 0x91F5, 0xBB1E, 0x91F6, 0xBB1F, 0x91F7,
- 0xBB20, 0xB9A8, 0xBB21, 0x91F8, 0xBB22, 0x91F9, 0xBB23, 0x91FA,
- 0xBB24, 0x91FB, 0xBB25, 0x91FC, 0xBB26, 0x91FD, 0xBB27, 0x91FE,
- 0xBB28, 0x9241, 0xBB29, 0xB9A9, 0xBB2A, 0x9242, 0xBB2B, 0xB9AA,
- 0xBB2C, 0x9243, 0xBB2D, 0x9244, 0xBB2E, 0x9245, 0xBB2F, 0x9246,
- 0xBB30, 0x9247, 0xBB31, 0x9248, 0xBB32, 0x9249, 0xBB33, 0x924A,
- 0xBB34, 0xB9AB, 0xBB35, 0xB9AC, 0xBB36, 0xB9AD, 0xBB37, 0x924B,
- 0xBB38, 0xB9AE, 0xBB39, 0x924C, 0xBB3A, 0x924D, 0xBB3B, 0xB9AF,
- 0xBB3C, 0xB9B0, 0xBB3D, 0xB9B1, 0xBB3E, 0xB9B2, 0xBB3F, 0x924E,
- 0xBB40, 0x924F, 0xBB41, 0x9250, 0xBB42, 0x9251, 0xBB43, 0x9252,
- 0xBB44, 0xB9B3, 0xBB45, 0xB9B4, 0xBB46, 0x9253, 0xBB47, 0xB9B5,
- 0xBB48, 0x9254, 0xBB49, 0xB9B6, 0xBB4A, 0x9255, 0xBB4B, 0x9256,
- 0xBB4C, 0x9257, 0xBB4D, 0xB9B7, 0xBB4E, 0x9258, 0xBB4F, 0xB9B8,
- 0xBB50, 0xB9B9, 0xBB51, 0x9259, 0xBB52, 0x925A, 0xBB53, 0x9261,
- 0xBB54, 0xB9BA, 0xBB55, 0x9262, 0xBB56, 0x9263, 0xBB57, 0x9264,
- 0xBB58, 0xB9BB, 0xBB59, 0x9265, 0xBB5A, 0x9266, 0xBB5B, 0x9267,
- 0xBB5C, 0x9268, 0xBB5D, 0x9269, 0xBB5E, 0x926A, 0xBB5F, 0x926B,
- 0xBB60, 0x926C, 0xBB61, 0xB9BC, 0xBB62, 0x926D, 0xBB63, 0xB9BD,
- 0xBB64, 0x926E, 0xBB65, 0x926F, 0xBB66, 0x9270, 0xBB67, 0x9271,
- 0xBB68, 0x9272, 0xBB69, 0x9273, 0xBB6A, 0x9274, 0xBB6B, 0x9275,
- 0xBB6C, 0xB9BE, 0xBB6D, 0x9276, 0xBB6E, 0x9277, 0xBB6F, 0x9278,
- 0xBB70, 0x9279, 0xBB71, 0x927A, 0xBB72, 0x9281, 0xBB73, 0x9282,
- 0xBB74, 0x9283, 0xBB75, 0x9284, 0xBB76, 0x9285, 0xBB77, 0x9286,
- 0xBB78, 0x9287, 0xBB79, 0x9288, 0xBB7A, 0x9289, 0xBB7B, 0x928A,
- 0xBB7C, 0x928B, 0xBB7D, 0x928C, 0xBB7E, 0x928D, 0xBB7F, 0x928E,
- 0xBB80, 0x928F, 0xBB81, 0x9290, 0xBB82, 0x9291, 0xBB83, 0x9292,
- 0xBB84, 0x9293, 0xBB85, 0x9294, 0xBB86, 0x9295, 0xBB87, 0x9296,
- 0xBB88, 0xB9BF, 0xBB89, 0x9297, 0xBB8A, 0x9298, 0xBB8B, 0x9299,
- 0xBB8C, 0xB9C0, 0xBB8D, 0x929A, 0xBB8E, 0x929B, 0xBB8F, 0x929C,
- 0xBB90, 0xB9C1, 0xBB91, 0x929D, 0xBB92, 0x929E, 0xBB93, 0x929F,
- 0xBB94, 0x92A0, 0xBB95, 0x92A1, 0xBB96, 0x92A2, 0xBB97, 0x92A3,
- 0xBB98, 0x92A4, 0xBB99, 0x92A5, 0xBB9A, 0x92A6, 0xBB9B, 0x92A7,
- 0xBB9C, 0x92A8, 0xBB9D, 0x92A9, 0xBB9E, 0x92AA, 0xBB9F, 0x92AB,
- 0xBBA0, 0x92AC, 0xBBA1, 0x92AD, 0xBBA2, 0x92AE, 0xBBA3, 0x92AF,
- 0xBBA4, 0xB9C2, 0xBBA5, 0x92B0, 0xBBA6, 0x92B1, 0xBBA7, 0x92B2,
- 0xBBA8, 0xB9C3, 0xBBA9, 0x92B3, 0xBBAA, 0x92B4, 0xBBAB, 0x92B5,
- 0xBBAC, 0xB9C4, 0xBBAD, 0x92B6, 0xBBAE, 0x92B7, 0xBBAF, 0x92B8,
- 0xBBB0, 0x92B9, 0xBBB1, 0x92BA, 0xBBB2, 0x92BB, 0xBBB3, 0x92BC,
- 0xBBB4, 0xB9C5, 0xBBB5, 0x92BD, 0xBBB6, 0x92BE, 0xBBB7, 0xB9C6,
- 0xBBB8, 0x92BF, 0xBBB9, 0x92C0, 0xBBBA, 0x92C1, 0xBBBB, 0x92C2,
- 0xBBBC, 0x92C3, 0xBBBD, 0x92C4, 0xBBBE, 0x92C5, 0xBBBF, 0x92C6,
- 0xBBC0, 0xB9C7, 0xBBC1, 0x92C7, 0xBBC2, 0x92C8, 0xBBC3, 0x92C9,
- 0xBBC4, 0xB9C8, 0xBBC5, 0x92CA, 0xBBC6, 0x92CB, 0xBBC7, 0x92CC,
- 0xBBC8, 0xB9C9, 0xBBC9, 0x92CD, 0xBBCA, 0x92CE, 0xBBCB, 0x92CF,
- 0xBBCC, 0x92D0, 0xBBCD, 0x92D1, 0xBBCE, 0x92D2, 0xBBCF, 0x92D3,
- 0xBBD0, 0xB9CA, 0xBBD1, 0x92D4, 0xBBD2, 0x92D5, 0xBBD3, 0xB9CB,
- 0xBBD4, 0x92D6, 0xBBD5, 0x92D7, 0xBBD6, 0x92D8, 0xBBD7, 0x92D9,
- 0xBBD8, 0x92DA, 0xBBD9, 0x92DB, 0xBBDA, 0x92DC, 0xBBDB, 0x92DD,
- 0xBBDC, 0x92DE, 0xBBDD, 0x92DF, 0xBBDE, 0x92E0, 0xBBDF, 0x92E1,
- 0xBBE0, 0x92E2, 0xBBE1, 0x92E3, 0xBBE2, 0x92E4, 0xBBE3, 0x92E5,
- 0xBBE4, 0x92E6, 0xBBE5, 0x92E7, 0xBBE6, 0x92E8, 0xBBE7, 0x92E9,
- 0xBBE8, 0x92EA, 0xBBE9, 0x92EB, 0xBBEA, 0x92EC, 0xBBEB, 0x92ED,
- 0xBBEC, 0x92EE, 0xBBED, 0x92EF, 0xBBEE, 0x92F0, 0xBBEF, 0x92F1,
- 0xBBF0, 0x92F2, 0xBBF1, 0x92F3, 0xBBF2, 0x92F4, 0xBBF3, 0x92F5,
- 0xBBF4, 0x92F6, 0xBBF5, 0x92F7, 0xBBF6, 0x92F8, 0xBBF7, 0x92F9,
- 0xBBF8, 0xB9CC, 0xBBF9, 0xB9CD, 0xBBFA, 0x92FA, 0xBBFB, 0x92FB,
- 0xBBFC, 0xB9CE, 0xBBFD, 0x92FC, 0xBBFE, 0x92FD, 0xBBFF, 0xB9CF,
- 0xBC00, 0xB9D0, 0xBC01, 0x92FE, 0xBC02, 0xB9D1, 0xBC03, 0x9341,
- 0xBC04, 0x9342, 0xBC05, 0x9343, 0xBC06, 0x9344, 0xBC07, 0x9345,
- 0xBC08, 0xB9D2, 0xBC09, 0xB9D3, 0xBC0A, 0x9346, 0xBC0B, 0xB9D4,
- 0xBC0C, 0xB9D5, 0xBC0D, 0xB9D6, 0xBC0E, 0x9347, 0xBC0F, 0xB9D7,
- 0xBC10, 0x9348, 0xBC11, 0xB9D8, 0xBC12, 0x9349, 0xBC13, 0x934A,
- 0xBC14, 0xB9D9, 0xBC15, 0xB9DA, 0xBC16, 0xB9DB, 0xBC17, 0xB9DC,
- 0xBC18, 0xB9DD, 0xBC19, 0x934B, 0xBC1A, 0x934C, 0xBC1B, 0xB9DE,
- 0xBC1C, 0xB9DF, 0xBC1D, 0xB9E0, 0xBC1E, 0xB9E1, 0xBC1F, 0xB9E2,
- 0xBC20, 0x934D, 0xBC21, 0x934E, 0xBC22, 0x934F, 0xBC23, 0x9350,
- 0xBC24, 0xB9E3, 0xBC25, 0xB9E4, 0xBC26, 0x9351, 0xBC27, 0xB9E5,
- 0xBC28, 0x9352, 0xBC29, 0xB9E6, 0xBC2A, 0x9353, 0xBC2B, 0x9354,
- 0xBC2C, 0x9355, 0xBC2D, 0xB9E7, 0xBC2E, 0x9356, 0xBC2F, 0x9357,
- 0xBC30, 0xB9E8, 0xBC31, 0xB9E9, 0xBC32, 0x9358, 0xBC33, 0x9359,
- 0xBC34, 0xB9EA, 0xBC35, 0x935A, 0xBC36, 0x9361, 0xBC37, 0x9362,
- 0xBC38, 0xB9EB, 0xBC39, 0x9363, 0xBC3A, 0x9364, 0xBC3B, 0x9365,
- 0xBC3C, 0x9366, 0xBC3D, 0x9367, 0xBC3E, 0x9368, 0xBC3F, 0x9369,
- 0xBC40, 0xB9EC, 0xBC41, 0xB9ED, 0xBC42, 0x936A, 0xBC43, 0xB9EE,
- 0xBC44, 0xB9EF, 0xBC45, 0xB9F0, 0xBC46, 0x936B, 0xBC47, 0x936C,
- 0xBC48, 0x936D, 0xBC49, 0xB9F1, 0xBC4A, 0x936E, 0xBC4B, 0x936F,
- 0xBC4C, 0xB9F2, 0xBC4D, 0xB9F3, 0xBC4E, 0x9370, 0xBC4F, 0x9371,
- 0xBC50, 0xB9F4, 0xBC51, 0x9372, 0xBC52, 0x9373, 0xBC53, 0x9374,
- 0xBC54, 0x9375, 0xBC55, 0x9376, 0xBC56, 0x9377, 0xBC57, 0x9378,
- 0xBC58, 0x9379, 0xBC59, 0x937A, 0xBC5A, 0x9381, 0xBC5B, 0x9382,
- 0xBC5C, 0x9383, 0xBC5D, 0xB9F5, 0xBC5E, 0x9384, 0xBC5F, 0x9385,
- 0xBC60, 0x9386, 0xBC61, 0x9387, 0xBC62, 0x9388, 0xBC63, 0x9389,
- 0xBC64, 0x938A, 0xBC65, 0x938B, 0xBC66, 0x938C, 0xBC67, 0x938D,
- 0xBC68, 0x938E, 0xBC69, 0x938F, 0xBC6A, 0x9390, 0xBC6B, 0x9391,
- 0xBC6C, 0x9392, 0xBC6D, 0x9393, 0xBC6E, 0x9394, 0xBC6F, 0x9395,
- 0xBC70, 0x9396, 0xBC71, 0x9397, 0xBC72, 0x9398, 0xBC73, 0x9399,
- 0xBC74, 0x939A, 0xBC75, 0x939B, 0xBC76, 0x939C, 0xBC77, 0x939D,
- 0xBC78, 0x939E, 0xBC79, 0x939F, 0xBC7A, 0x93A0, 0xBC7B, 0x93A1,
- 0xBC7C, 0x93A2, 0xBC7D, 0x93A3, 0xBC7E, 0x93A4, 0xBC7F, 0x93A5,
- 0xBC80, 0x93A6, 0xBC81, 0x93A7, 0xBC82, 0x93A8, 0xBC83, 0x93A9,
- 0xBC84, 0xB9F6, 0xBC85, 0xB9F7, 0xBC86, 0x93AA, 0xBC87, 0x93AB,
- 0xBC88, 0xB9F8, 0xBC89, 0x93AC, 0xBC8A, 0x93AD, 0xBC8B, 0xB9F9,
- 0xBC8C, 0xB9FA, 0xBC8D, 0x93AE, 0xBC8E, 0xB9FB, 0xBC8F, 0x93AF,
- 0xBC90, 0x93B0, 0xBC91, 0x93B1, 0xBC92, 0x93B2, 0xBC93, 0x93B3,
- 0xBC94, 0xB9FC, 0xBC95, 0xB9FD, 0xBC96, 0x93B4, 0xBC97, 0xB9FE,
- 0xBC98, 0x93B5, 0xBC99, 0xBAA1, 0xBC9A, 0xBAA2, 0xBC9B, 0x93B6,
- 0xBC9C, 0x93B7, 0xBC9D, 0x93B8, 0xBC9E, 0x93B9, 0xBC9F, 0x93BA,
- 0xBCA0, 0xBAA3, 0xBCA1, 0xBAA4, 0xBCA2, 0x93BB, 0xBCA3, 0x93BC,
- 0xBCA4, 0xBAA5, 0xBCA5, 0x93BD, 0xBCA6, 0x93BE, 0xBCA7, 0xBAA6,
- 0xBCA8, 0xBAA7, 0xBCA9, 0x93BF, 0xBCAA, 0x93C0, 0xBCAB, 0x93C1,
- 0xBCAC, 0x93C2, 0xBCAD, 0x93C3, 0xBCAE, 0x93C4, 0xBCAF, 0x93C5,
- 0xBCB0, 0xBAA8, 0xBCB1, 0xBAA9, 0xBCB2, 0x93C6, 0xBCB3, 0xBAAA,
- 0xBCB4, 0xBAAB, 0xBCB5, 0xBAAC, 0xBCB6, 0x93C7, 0xBCB7, 0x93C8,
- 0xBCB8, 0x93C9, 0xBCB9, 0x93CA, 0xBCBA, 0x93CB, 0xBCBB, 0x93CC,
- 0xBCBC, 0xBAAD, 0xBCBD, 0xBAAE, 0xBCBE, 0x93CD, 0xBCBF, 0x93CE,
- 0xBCC0, 0xBAAF, 0xBCC1, 0x93CF, 0xBCC2, 0x93D0, 0xBCC3, 0x93D1,
- 0xBCC4, 0xBAB0, 0xBCC5, 0x93D2, 0xBCC6, 0x93D3, 0xBCC7, 0x93D4,
- 0xBCC8, 0x93D5, 0xBCC9, 0x93D6, 0xBCCA, 0x93D7, 0xBCCB, 0x93D8,
- 0xBCCC, 0x93D9, 0xBCCD, 0xBAB1, 0xBCCE, 0x93DA, 0xBCCF, 0xBAB2,
- 0xBCD0, 0xBAB3, 0xBCD1, 0xBAB4, 0xBCD2, 0x93DB, 0xBCD3, 0x93DC,
- 0xBCD4, 0x93DD, 0xBCD5, 0xBAB5, 0xBCD6, 0x93DE, 0xBCD7, 0x93DF,
- 0xBCD8, 0xBAB6, 0xBCD9, 0x93E0, 0xBCDA, 0x93E1, 0xBCDB, 0x93E2,
- 0xBCDC, 0xBAB7, 0xBCDD, 0x93E3, 0xBCDE, 0x93E4, 0xBCDF, 0x93E5,
- 0xBCE0, 0x93E6, 0xBCE1, 0x93E7, 0xBCE2, 0x93E8, 0xBCE3, 0x93E9,
- 0xBCE4, 0x93EA, 0xBCE5, 0x93EB, 0xBCE6, 0x93EC, 0xBCE7, 0x93ED,
- 0xBCE8, 0x93EE, 0xBCE9, 0x93EF, 0xBCEA, 0x93F0, 0xBCEB, 0x93F1,
- 0xBCEC, 0x93F2, 0xBCED, 0x93F3, 0xBCEE, 0x93F4, 0xBCEF, 0x93F5,
- 0xBCF0, 0x93F6, 0xBCF1, 0x93F7, 0xBCF2, 0x93F8, 0xBCF3, 0x93F9,
- 0xBCF4, 0xBAB8, 0xBCF5, 0xBAB9, 0xBCF6, 0xBABA, 0xBCF7, 0x93FA,
- 0xBCF8, 0xBABB, 0xBCF9, 0x93FB, 0xBCFA, 0x93FC, 0xBCFB, 0x93FD,
- 0xBCFC, 0xBABC, 0xBCFD, 0x93FE, 0xBCFE, 0x9441, 0xBCFF, 0x9442,
- 0xBD00, 0x9443, 0xBD01, 0x9444, 0xBD02, 0x9445, 0xBD03, 0x9446,
- 0xBD04, 0xBABD, 0xBD05, 0xBABE, 0xBD06, 0x9447, 0xBD07, 0xBABF,
- 0xBD08, 0x9448, 0xBD09, 0xBAC0, 0xBD0A, 0x9449, 0xBD0B, 0x944A,
- 0xBD0C, 0x944B, 0xBD0D, 0x944C, 0xBD0E, 0x944D, 0xBD0F, 0x944E,
- 0xBD10, 0xBAC1, 0xBD11, 0x944F, 0xBD12, 0x9450, 0xBD13, 0x9451,
- 0xBD14, 0xBAC2, 0xBD15, 0x9452, 0xBD16, 0x9453, 0xBD17, 0x9454,
- 0xBD18, 0x9455, 0xBD19, 0x9456, 0xBD1A, 0x9457, 0xBD1B, 0x9458,
- 0xBD1C, 0x9459, 0xBD1D, 0x945A, 0xBD1E, 0x9461, 0xBD1F, 0x9462,
- 0xBD20, 0x9463, 0xBD21, 0x9464, 0xBD22, 0x9465, 0xBD23, 0x9466,
- 0xBD24, 0xBAC3, 0xBD25, 0x9467, 0xBD26, 0x9468, 0xBD27, 0x9469,
- 0xBD28, 0x946A, 0xBD29, 0x946B, 0xBD2A, 0x946C, 0xBD2B, 0x946D,
- 0xBD2C, 0xBAC4, 0xBD2D, 0x946E, 0xBD2E, 0x946F, 0xBD2F, 0x9470,
- 0xBD30, 0x9471, 0xBD31, 0x9472, 0xBD32, 0x9473, 0xBD33, 0x9474,
- 0xBD34, 0x9475, 0xBD35, 0x9476, 0xBD36, 0x9477, 0xBD37, 0x9478,
- 0xBD38, 0x9479, 0xBD39, 0x947A, 0xBD3A, 0x9481, 0xBD3B, 0x9482,
- 0xBD3C, 0x9483, 0xBD3D, 0x9484, 0xBD3E, 0x9485, 0xBD3F, 0x9486,
- 0xBD40, 0xBAC5, 0xBD41, 0x9487, 0xBD42, 0x9488, 0xBD43, 0x9489,
- 0xBD44, 0x948A, 0xBD45, 0x948B, 0xBD46, 0x948C, 0xBD47, 0x948D,
- 0xBD48, 0xBAC6, 0xBD49, 0xBAC7, 0xBD4A, 0x948E, 0xBD4B, 0x948F,
- 0xBD4C, 0xBAC8, 0xBD4D, 0x9490, 0xBD4E, 0x9491, 0xBD4F, 0x9492,
- 0xBD50, 0xBAC9, 0xBD51, 0x9493, 0xBD52, 0x9494, 0xBD53, 0x9495,
- 0xBD54, 0x9496, 0xBD55, 0x9497, 0xBD56, 0x9498, 0xBD57, 0x9499,
- 0xBD58, 0xBACA, 0xBD59, 0xBACB, 0xBD5A, 0x949A, 0xBD5B, 0x949B,
- 0xBD5C, 0x949C, 0xBD5D, 0x949D, 0xBD5E, 0x949E, 0xBD5F, 0x949F,
- 0xBD60, 0x94A0, 0xBD61, 0x94A1, 0xBD62, 0x94A2, 0xBD63, 0x94A3,
- 0xBD64, 0xBACC, 0xBD65, 0x94A4, 0xBD66, 0x94A5, 0xBD67, 0x94A6,
- 0xBD68, 0xBACD, 0xBD69, 0x94A7, 0xBD6A, 0x94A8, 0xBD6B, 0x94A9,
- 0xBD6C, 0x94AA, 0xBD6D, 0x94AB, 0xBD6E, 0x94AC, 0xBD6F, 0x94AD,
- 0xBD70, 0x94AE, 0xBD71, 0x94AF, 0xBD72, 0x94B0, 0xBD73, 0x94B1,
- 0xBD74, 0x94B2, 0xBD75, 0x94B3, 0xBD76, 0x94B4, 0xBD77, 0x94B5,
- 0xBD78, 0x94B6, 0xBD79, 0x94B7, 0xBD7A, 0x94B8, 0xBD7B, 0x94B9,
- 0xBD7C, 0x94BA, 0xBD7D, 0x94BB, 0xBD7E, 0x94BC, 0xBD7F, 0x94BD,
- 0xBD80, 0xBACE, 0xBD81, 0xBACF, 0xBD82, 0x94BE, 0xBD83, 0x94BF,
- 0xBD84, 0xBAD0, 0xBD85, 0x94C0, 0xBD86, 0x94C1, 0xBD87, 0xBAD1,
- 0xBD88, 0xBAD2, 0xBD89, 0xBAD3, 0xBD8A, 0xBAD4, 0xBD8B, 0x94C2,
- 0xBD8C, 0x94C3, 0xBD8D, 0x94C4, 0xBD8E, 0x94C5, 0xBD8F, 0x94C6,
- 0xBD90, 0xBAD5, 0xBD91, 0xBAD6, 0xBD92, 0x94C7, 0xBD93, 0xBAD7,
- 0xBD94, 0x94C8, 0xBD95, 0xBAD8, 0xBD96, 0x94C9, 0xBD97, 0x94CA,
- 0xBD98, 0x94CB, 0xBD99, 0xBAD9, 0xBD9A, 0xBADA, 0xBD9B, 0x94CC,
- 0xBD9C, 0xBADB, 0xBD9D, 0x94CD, 0xBD9E, 0x94CE, 0xBD9F, 0x94CF,
- 0xBDA0, 0x94D0, 0xBDA1, 0x94D1, 0xBDA2, 0x94D2, 0xBDA3, 0x94D3,
- 0xBDA4, 0xBADC, 0xBDA5, 0x94D4, 0xBDA6, 0x94D5, 0xBDA7, 0x94D6,
- 0xBDA8, 0x94D7, 0xBDA9, 0x94D8, 0xBDAA, 0x94D9, 0xBDAB, 0x94DA,
- 0xBDAC, 0x94DB, 0xBDAD, 0x94DC, 0xBDAE, 0x94DD, 0xBDAF, 0x94DE,
- 0xBDB0, 0xBADD, 0xBDB1, 0x94DF, 0xBDB2, 0x94E0, 0xBDB3, 0x94E1,
- 0xBDB4, 0x94E2, 0xBDB5, 0x94E3, 0xBDB6, 0x94E4, 0xBDB7, 0x94E5,
- 0xBDB8, 0xBADE, 0xBDB9, 0x94E6, 0xBDBA, 0x94E7, 0xBDBB, 0x94E8,
- 0xBDBC, 0x94E9, 0xBDBD, 0x94EA, 0xBDBE, 0x94EB, 0xBDBF, 0x94EC,
- 0xBDC0, 0x94ED, 0xBDC1, 0x94EE, 0xBDC2, 0x94EF, 0xBDC3, 0x94F0,
- 0xBDC4, 0x94F1, 0xBDC5, 0x94F2, 0xBDC6, 0x94F3, 0xBDC7, 0x94F4,
- 0xBDC8, 0x94F5, 0xBDC9, 0x94F6, 0xBDCA, 0x94F7, 0xBDCB, 0x94F8,
- 0xBDCC, 0x94F9, 0xBDCD, 0x94FA, 0xBDCE, 0x94FB, 0xBDCF, 0x94FC,
- 0xBDD0, 0x94FD, 0xBDD1, 0x94FE, 0xBDD2, 0x9541, 0xBDD3, 0x9542,
- 0xBDD4, 0xBADF, 0xBDD5, 0xBAE0, 0xBDD6, 0x9543, 0xBDD7, 0x9544,
- 0xBDD8, 0xBAE1, 0xBDD9, 0x9545, 0xBDDA, 0x9546, 0xBDDB, 0x9547,
- 0xBDDC, 0xBAE2, 0xBDDD, 0x9548, 0xBDDE, 0x9549, 0xBDDF, 0x954A,
- 0xBDE0, 0x954B, 0xBDE1, 0x954C, 0xBDE2, 0x954D, 0xBDE3, 0x954E,
- 0xBDE4, 0x954F, 0xBDE5, 0x9550, 0xBDE6, 0x9551, 0xBDE7, 0x9552,
- 0xBDE8, 0x9553, 0xBDE9, 0xBAE3, 0xBDEA, 0x9554, 0xBDEB, 0x9555,
- 0xBDEC, 0x9556, 0xBDED, 0x9557, 0xBDEE, 0x9558, 0xBDEF, 0x9559,
- 0xBDF0, 0xBAE4, 0xBDF1, 0x955A, 0xBDF2, 0x9561, 0xBDF3, 0x9562,
- 0xBDF4, 0xBAE5, 0xBDF5, 0x9563, 0xBDF6, 0x9564, 0xBDF7, 0x9565,
- 0xBDF8, 0xBAE6, 0xBDF9, 0x9566, 0xBDFA, 0x9567, 0xBDFB, 0x9568,
- 0xBDFC, 0x9569, 0xBDFD, 0x956A, 0xBDFE, 0x956B, 0xBDFF, 0x956C,
- 0xBE00, 0xBAE7, 0xBE01, 0x956D, 0xBE02, 0x956E, 0xBE03, 0xBAE8,
- 0xBE04, 0x956F, 0xBE05, 0xBAE9, 0xBE06, 0x9570, 0xBE07, 0x9571,
- 0xBE08, 0x9572, 0xBE09, 0x9573, 0xBE0A, 0x9574, 0xBE0B, 0x9575,
- 0xBE0C, 0xBAEA, 0xBE0D, 0xBAEB, 0xBE0E, 0x9576, 0xBE0F, 0x9577,
- 0xBE10, 0xBAEC, 0xBE11, 0x9578, 0xBE12, 0x9579, 0xBE13, 0x957A,
- 0xBE14, 0xBAED, 0xBE15, 0x9581, 0xBE16, 0x9582, 0xBE17, 0x9583,
- 0xBE18, 0x9584, 0xBE19, 0x9585, 0xBE1A, 0x9586, 0xBE1B, 0x9587,
- 0xBE1C, 0xBAEE, 0xBE1D, 0xBAEF, 0xBE1E, 0x9588, 0xBE1F, 0xBAF0,
- 0xBE20, 0x9589, 0xBE21, 0x958A, 0xBE22, 0x958B, 0xBE23, 0x958C,
- 0xBE24, 0x958D, 0xBE25, 0x958E, 0xBE26, 0x958F, 0xBE27, 0x9590,
- 0xBE28, 0x9591, 0xBE29, 0x9592, 0xBE2A, 0x9593, 0xBE2B, 0x9594,
- 0xBE2C, 0x9595, 0xBE2D, 0x9596, 0xBE2E, 0x9597, 0xBE2F, 0x9598,
- 0xBE30, 0x9599, 0xBE31, 0x959A, 0xBE32, 0x959B, 0xBE33, 0x959C,
- 0xBE34, 0x959D, 0xBE35, 0x959E, 0xBE36, 0x959F, 0xBE37, 0x95A0,
- 0xBE38, 0x95A1, 0xBE39, 0x95A2, 0xBE3A, 0x95A3, 0xBE3B, 0x95A4,
- 0xBE3C, 0x95A5, 0xBE3D, 0x95A6, 0xBE3E, 0x95A7, 0xBE3F, 0x95A8,
- 0xBE40, 0x95A9, 0xBE41, 0x95AA, 0xBE42, 0x95AB, 0xBE43, 0x95AC,
- 0xBE44, 0xBAF1, 0xBE45, 0xBAF2, 0xBE46, 0x95AD, 0xBE47, 0x95AE,
- 0xBE48, 0xBAF3, 0xBE49, 0x95AF, 0xBE4A, 0x95B0, 0xBE4B, 0x95B1,
- 0xBE4C, 0xBAF4, 0xBE4D, 0x95B2, 0xBE4E, 0xBAF5, 0xBE4F, 0x95B3,
- 0xBE50, 0x95B4, 0xBE51, 0x95B5, 0xBE52, 0x95B6, 0xBE53, 0x95B7,
- 0xBE54, 0xBAF6, 0xBE55, 0xBAF7, 0xBE56, 0x95B8, 0xBE57, 0xBAF8,
- 0xBE58, 0x95B9, 0xBE59, 0xBAF9, 0xBE5A, 0xBAFA, 0xBE5B, 0xBAFB,
- 0xBE5C, 0x95BA, 0xBE5D, 0x95BB, 0xBE5E, 0x95BC, 0xBE5F, 0x95BD,
- 0xBE60, 0xBAFC, 0xBE61, 0xBAFD, 0xBE62, 0x95BE, 0xBE63, 0x95BF,
- 0xBE64, 0xBAFE, 0xBE65, 0x95C0, 0xBE66, 0x95C1, 0xBE67, 0x95C2,
- 0xBE68, 0xBBA1, 0xBE69, 0x95C3, 0xBE6A, 0xBBA2, 0xBE6B, 0x95C4,
- 0xBE6C, 0x95C5, 0xBE6D, 0x95C6, 0xBE6E, 0x95C7, 0xBE6F, 0x95C8,
- 0xBE70, 0xBBA3, 0xBE71, 0xBBA4, 0xBE72, 0x95C9, 0xBE73, 0xBBA5,
- 0xBE74, 0xBBA6, 0xBE75, 0xBBA7, 0xBE76, 0x95CA, 0xBE77, 0x95CB,
- 0xBE78, 0x95CC, 0xBE79, 0x95CD, 0xBE7A, 0x95CE, 0xBE7B, 0xBBA8,
- 0xBE7C, 0xBBA9, 0xBE7D, 0xBBAA, 0xBE7E, 0x95CF, 0xBE7F, 0x95D0,
- 0xBE80, 0xBBAB, 0xBE81, 0x95D1, 0xBE82, 0x95D2, 0xBE83, 0x95D3,
- 0xBE84, 0xBBAC, 0xBE85, 0x95D4, 0xBE86, 0x95D5, 0xBE87, 0x95D6,
- 0xBE88, 0x95D7, 0xBE89, 0x95D8, 0xBE8A, 0x95D9, 0xBE8B, 0x95DA,
- 0xBE8C, 0xBBAD, 0xBE8D, 0xBBAE, 0xBE8E, 0x95DB, 0xBE8F, 0xBBAF,
- 0xBE90, 0xBBB0, 0xBE91, 0xBBB1, 0xBE92, 0x95DC, 0xBE93, 0x95DD,
- 0xBE94, 0x95DE, 0xBE95, 0x95DF, 0xBE96, 0x95E0, 0xBE97, 0x95E1,
- 0xBE98, 0xBBB2, 0xBE99, 0xBBB3, 0xBE9A, 0x95E2, 0xBE9B, 0x95E3,
- 0xBE9C, 0x95E4, 0xBE9D, 0x95E5, 0xBE9E, 0x95E6, 0xBE9F, 0x95E7,
- 0xBEA0, 0x95E8, 0xBEA1, 0x95E9, 0xBEA2, 0x95EA, 0xBEA3, 0x95EB,
- 0xBEA4, 0x95EC, 0xBEA5, 0x95ED, 0xBEA6, 0x95EE, 0xBEA7, 0x95EF,
- 0xBEA8, 0xBBB4, 0xBEA9, 0x95F0, 0xBEAA, 0x95F1, 0xBEAB, 0x95F2,
- 0xBEAC, 0x95F3, 0xBEAD, 0x95F4, 0xBEAE, 0x95F5, 0xBEAF, 0x95F6,
- 0xBEB0, 0x95F7, 0xBEB1, 0x95F8, 0xBEB2, 0x95F9, 0xBEB3, 0x95FA,
- 0xBEB4, 0x95FB, 0xBEB5, 0x95FC, 0xBEB6, 0x95FD, 0xBEB7, 0x95FE,
- 0xBEB8, 0x9641, 0xBEB9, 0x9642, 0xBEBA, 0x9643, 0xBEBB, 0x9644,
- 0xBEBC, 0x9645, 0xBEBD, 0x9646, 0xBEBE, 0x9647, 0xBEBF, 0x9648,
- 0xBEC0, 0x9649, 0xBEC1, 0x964A, 0xBEC2, 0x964B, 0xBEC3, 0x964C,
- 0xBEC4, 0x964D, 0xBEC5, 0x964E, 0xBEC6, 0x964F, 0xBEC7, 0x9650,
- 0xBEC8, 0x9651, 0xBEC9, 0x9652, 0xBECA, 0x9653, 0xBECB, 0x9654,
- 0xBECC, 0x9655, 0xBECD, 0x9656, 0xBECE, 0x9657, 0xBECF, 0x9658,
- 0xBED0, 0xBBB5, 0xBED1, 0xBBB6, 0xBED2, 0x9659, 0xBED3, 0x965A,
- 0xBED4, 0xBBB7, 0xBED5, 0x9661, 0xBED6, 0x9662, 0xBED7, 0xBBB8,
- 0xBED8, 0xBBB9, 0xBED9, 0x9663, 0xBEDA, 0x9664, 0xBEDB, 0x9665,
- 0xBEDC, 0x9666, 0xBEDD, 0x9667, 0xBEDE, 0x9668, 0xBEDF, 0x9669,
- 0xBEE0, 0xBBBA, 0xBEE1, 0x966A, 0xBEE2, 0x966B, 0xBEE3, 0xBBBB,
- 0xBEE4, 0xBBBC, 0xBEE5, 0xBBBD, 0xBEE6, 0x966C, 0xBEE7, 0x966D,
- 0xBEE8, 0x966E, 0xBEE9, 0x966F, 0xBEEA, 0x9670, 0xBEEB, 0x9671,
- 0xBEEC, 0xBBBE, 0xBEED, 0x9672, 0xBEEE, 0x9673, 0xBEEF, 0x9674,
- 0xBEF0, 0x9675, 0xBEF1, 0x9676, 0xBEF2, 0x9677, 0xBEF3, 0x9678,
- 0xBEF4, 0x9679, 0xBEF5, 0x967A, 0xBEF6, 0x9681, 0xBEF7, 0x9682,
- 0xBEF8, 0x9683, 0xBEF9, 0x9684, 0xBEFA, 0x9685, 0xBEFB, 0x9686,
- 0xBEFC, 0x9687, 0xBEFD, 0x9688, 0xBEFE, 0x9689, 0xBEFF, 0x968A,
- 0xBF00, 0x968B, 0xBF01, 0xBBBF, 0xBF02, 0x968C, 0xBF03, 0x968D,
- 0xBF04, 0x968E, 0xBF05, 0x968F, 0xBF06, 0x9690, 0xBF07, 0x9691,
- 0xBF08, 0xBBC0, 0xBF09, 0xBBC1, 0xBF0A, 0x9692, 0xBF0B, 0x9693,
- 0xBF0C, 0x9694, 0xBF0D, 0x9695, 0xBF0E, 0x9696, 0xBF0F, 0x9697,
- 0xBF10, 0x9698, 0xBF11, 0x9699, 0xBF12, 0x969A, 0xBF13, 0x969B,
- 0xBF14, 0x969C, 0xBF15, 0x969D, 0xBF16, 0x969E, 0xBF17, 0x969F,
- 0xBF18, 0xBBC2, 0xBF19, 0xBBC3, 0xBF1A, 0x96A0, 0xBF1B, 0xBBC4,
- 0xBF1C, 0xBBC5, 0xBF1D, 0xBBC6, 0xBF1E, 0x96A1, 0xBF1F, 0x96A2,
- 0xBF20, 0x96A3, 0xBF21, 0x96A4, 0xBF22, 0x96A5, 0xBF23, 0x96A6,
- 0xBF24, 0x96A7, 0xBF25, 0x96A8, 0xBF26, 0x96A9, 0xBF27, 0x96AA,
- 0xBF28, 0x96AB, 0xBF29, 0x96AC, 0xBF2A, 0x96AD, 0xBF2B, 0x96AE,
- 0xBF2C, 0x96AF, 0xBF2D, 0x96B0, 0xBF2E, 0x96B1, 0xBF2F, 0x96B2,
- 0xBF30, 0x96B3, 0xBF31, 0x96B4, 0xBF32, 0x96B5, 0xBF33, 0x96B6,
- 0xBF34, 0x96B7, 0xBF35, 0x96B8, 0xBF36, 0x96B9, 0xBF37, 0x96BA,
- 0xBF38, 0x96BB, 0xBF39, 0x96BC, 0xBF3A, 0x96BD, 0xBF3B, 0x96BE,
- 0xBF3C, 0x96BF, 0xBF3D, 0x96C0, 0xBF3E, 0x96C1, 0xBF3F, 0x96C2,
- 0xBF40, 0xBBC7, 0xBF41, 0xBBC8, 0xBF42, 0x96C3, 0xBF43, 0x96C4,
- 0xBF44, 0xBBC9, 0xBF45, 0x96C5, 0xBF46, 0x96C6, 0xBF47, 0x96C7,
- 0xBF48, 0xBBCA, 0xBF49, 0x96C8, 0xBF4A, 0x96C9, 0xBF4B, 0x96CA,
- 0xBF4C, 0x96CB, 0xBF4D, 0x96CC, 0xBF4E, 0x96CD, 0xBF4F, 0x96CE,
- 0xBF50, 0xBBCB, 0xBF51, 0xBBCC, 0xBF52, 0x96CF, 0xBF53, 0x96D0,
- 0xBF54, 0x96D1, 0xBF55, 0xBBCD, 0xBF56, 0x96D2, 0xBF57, 0x96D3,
- 0xBF58, 0x96D4, 0xBF59, 0x96D5, 0xBF5A, 0x96D6, 0xBF5B, 0x96D7,
- 0xBF5C, 0x96D8, 0xBF5D, 0x96D9, 0xBF5E, 0x96DA, 0xBF5F, 0x96DB,
- 0xBF60, 0x96DC, 0xBF61, 0x96DD, 0xBF62, 0x96DE, 0xBF63, 0x96DF,
- 0xBF64, 0x96E0, 0xBF65, 0x96E1, 0xBF66, 0x96E2, 0xBF67, 0x96E3,
- 0xBF68, 0x96E4, 0xBF69, 0x96E5, 0xBF6A, 0x96E6, 0xBF6B, 0x96E7,
- 0xBF6C, 0x96E8, 0xBF6D, 0x96E9, 0xBF6E, 0x96EA, 0xBF6F, 0x96EB,
- 0xBF70, 0x96EC, 0xBF71, 0x96ED, 0xBF72, 0x96EE, 0xBF73, 0x96EF,
- 0xBF74, 0x96F0, 0xBF75, 0x96F1, 0xBF76, 0x96F2, 0xBF77, 0x96F3,
- 0xBF78, 0x96F4, 0xBF79, 0x96F5, 0xBF7A, 0x96F6, 0xBF7B, 0x96F7,
- 0xBF7C, 0x96F8, 0xBF7D, 0x96F9, 0xBF7E, 0x96FA, 0xBF7F, 0x96FB,
- 0xBF80, 0x96FC, 0xBF81, 0x96FD, 0xBF82, 0x96FE, 0xBF83, 0x9741,
- 0xBF84, 0x9742, 0xBF85, 0x9743, 0xBF86, 0x9744, 0xBF87, 0x9745,
- 0xBF88, 0x9746, 0xBF89, 0x9747, 0xBF8A, 0x9748, 0xBF8B, 0x9749,
- 0xBF8C, 0x974A, 0xBF8D, 0x974B, 0xBF8E, 0x974C, 0xBF8F, 0x974D,
- 0xBF90, 0x974E, 0xBF91, 0x974F, 0xBF92, 0x9750, 0xBF93, 0x9751,
- 0xBF94, 0xBBCE, 0xBF95, 0x9752, 0xBF96, 0x9753, 0xBF97, 0x9754,
- 0xBF98, 0x9755, 0xBF99, 0x9756, 0xBF9A, 0x9757, 0xBF9B, 0x9758,
- 0xBF9C, 0x9759, 0xBF9D, 0x975A, 0xBF9E, 0x9761, 0xBF9F, 0x9762,
- 0xBFA0, 0x9763, 0xBFA1, 0x9764, 0xBFA2, 0x9765, 0xBFA3, 0x9766,
- 0xBFA4, 0x9767, 0xBFA5, 0x9768, 0xBFA6, 0x9769, 0xBFA7, 0x976A,
- 0xBFA8, 0x976B, 0xBFA9, 0x976C, 0xBFAA, 0x976D, 0xBFAB, 0x976E,
- 0xBFAC, 0x976F, 0xBFAD, 0x9770, 0xBFAE, 0x9771, 0xBFAF, 0x9772,
- 0xBFB0, 0xBBCF, 0xBFB1, 0x9773, 0xBFB2, 0x9774, 0xBFB3, 0x9775,
- 0xBFB4, 0x9776, 0xBFB5, 0x9777, 0xBFB6, 0x9778, 0xBFB7, 0x9779,
- 0xBFB8, 0x977A, 0xBFB9, 0x9781, 0xBFBA, 0x9782, 0xBFBB, 0x9783,
- 0xBFBC, 0x9784, 0xBFBD, 0x9785, 0xBFBE, 0x9786, 0xBFBF, 0x9787,
- 0xBFC0, 0x9788, 0xBFC1, 0x9789, 0xBFC2, 0x978A, 0xBFC3, 0x978B,
- 0xBFC4, 0x978C, 0xBFC5, 0xBBD0, 0xBFC6, 0x978D, 0xBFC7, 0x978E,
- 0xBFC8, 0x978F, 0xBFC9, 0x9790, 0xBFCA, 0x9791, 0xBFCB, 0x9792,
- 0xBFCC, 0xBBD1, 0xBFCD, 0xBBD2, 0xBFCE, 0x9793, 0xBFCF, 0x9794,
- 0xBFD0, 0xBBD3, 0xBFD1, 0x9795, 0xBFD2, 0x9796, 0xBFD3, 0x9797,
- 0xBFD4, 0xBBD4, 0xBFD5, 0x9798, 0xBFD6, 0x9799, 0xBFD7, 0x979A,
- 0xBFD8, 0x979B, 0xBFD9, 0x979C, 0xBFDA, 0x979D, 0xBFDB, 0x979E,
- 0xBFDC, 0xBBD5, 0xBFDD, 0x979F, 0xBFDE, 0x97A0, 0xBFDF, 0xBBD6,
- 0xBFE0, 0x97A1, 0xBFE1, 0xBBD7, 0xBFE2, 0x97A2, 0xBFE3, 0x97A3,
- 0xBFE4, 0x97A4, 0xBFE5, 0x97A5, 0xBFE6, 0x97A6, 0xBFE7, 0x97A7,
- 0xBFE8, 0x97A8, 0xBFE9, 0x97A9, 0xBFEA, 0x97AA, 0xBFEB, 0x97AB,
- 0xBFEC, 0x97AC, 0xBFED, 0x97AD, 0xBFEE, 0x97AE, 0xBFEF, 0x97AF,
- 0xBFF0, 0x97B0, 0xBFF1, 0x97B1, 0xBFF2, 0x97B2, 0xBFF3, 0x97B3,
- 0xBFF4, 0x97B4, 0xBFF5, 0x97B5, 0xBFF6, 0x97B6, 0xBFF7, 0x97B7,
- 0xBFF8, 0x97B8, 0xBFF9, 0x97B9, 0xBFFA, 0x97BA, 0xBFFB, 0x97BB,
- 0xBFFC, 0x97BC, 0xBFFD, 0x97BD, 0xBFFE, 0x97BE, 0xBFFF, 0x97BF,
- 0xC000, 0x97C0, 0xC001, 0x97C1, 0xC002, 0x97C2, 0xC003, 0x97C3,
- 0xC004, 0x97C4, 0xC005, 0x97C5, 0xC006, 0x97C6, 0xC007, 0x97C7,
- 0xC008, 0x97C8, 0xC009, 0x97C9, 0xC00A, 0x97CA, 0xC00B, 0x97CB,
- 0xC00C, 0x97CC, 0xC00D, 0x97CD, 0xC00E, 0x97CE, 0xC00F, 0x97CF,
- 0xC010, 0x97D0, 0xC011, 0x97D1, 0xC012, 0x97D2, 0xC013, 0x97D3,
- 0xC014, 0x97D4, 0xC015, 0x97D5, 0xC016, 0x97D6, 0xC017, 0x97D7,
- 0xC018, 0x97D8, 0xC019, 0x97D9, 0xC01A, 0x97DA, 0xC01B, 0x97DB,
- 0xC01C, 0x97DC, 0xC01D, 0x97DD, 0xC01E, 0x97DE, 0xC01F, 0x97DF,
- 0xC020, 0x97E0, 0xC021, 0x97E1, 0xC022, 0x97E2, 0xC023, 0x97E3,
- 0xC024, 0x97E4, 0xC025, 0x97E5, 0xC026, 0x97E6, 0xC027, 0x97E7,
- 0xC028, 0x97E8, 0xC029, 0x97E9, 0xC02A, 0x97EA, 0xC02B, 0x97EB,
- 0xC02C, 0x97EC, 0xC02D, 0x97ED, 0xC02E, 0x97EE, 0xC02F, 0x97EF,
- 0xC030, 0x97F0, 0xC031, 0x97F1, 0xC032, 0x97F2, 0xC033, 0x97F3,
- 0xC034, 0x97F4, 0xC035, 0x97F5, 0xC036, 0x97F6, 0xC037, 0x97F7,
- 0xC038, 0x97F8, 0xC039, 0x97F9, 0xC03A, 0x97FA, 0xC03B, 0x97FB,
- 0xC03C, 0xBBD8, 0xC03D, 0x97FC, 0xC03E, 0x97FD, 0xC03F, 0x97FE,
- 0xC040, 0x9841, 0xC041, 0x9842, 0xC042, 0x9843, 0xC043, 0x9844,
- 0xC044, 0x9845, 0xC045, 0x9846, 0xC046, 0x9847, 0xC047, 0x9848,
- 0xC048, 0x9849, 0xC049, 0x984A, 0xC04A, 0x984B, 0xC04B, 0x984C,
- 0xC04C, 0x984D, 0xC04D, 0x984E, 0xC04E, 0x984F, 0xC04F, 0x9850,
- 0xC050, 0x9851, 0xC051, 0xBBD9, 0xC052, 0x9852, 0xC053, 0x9853,
- 0xC054, 0x9854, 0xC055, 0x9855, 0xC056, 0x9856, 0xC057, 0x9857,
- 0xC058, 0xBBDA, 0xC059, 0x9858, 0xC05A, 0x9859, 0xC05B, 0x985A,
- 0xC05C, 0xBBDB, 0xC05D, 0x9861, 0xC05E, 0x9862, 0xC05F, 0x9863,
- 0xC060, 0xBBDC, 0xC061, 0x9864, 0xC062, 0x9865, 0xC063, 0x9866,
- 0xC064, 0x9867, 0xC065, 0x9868, 0xC066, 0x9869, 0xC067, 0x986A,
- 0xC068, 0xBBDD, 0xC069, 0xBBDE, 0xC06A, 0x986B, 0xC06B, 0x986C,
- 0xC06C, 0x986D, 0xC06D, 0x986E, 0xC06E, 0x986F, 0xC06F, 0x9870,
- 0xC070, 0x9871, 0xC071, 0x9872, 0xC072, 0x9873, 0xC073, 0x9874,
- 0xC074, 0x9875, 0xC075, 0x9876, 0xC076, 0x9877, 0xC077, 0x9878,
- 0xC078, 0x9879, 0xC079, 0x987A, 0xC07A, 0x9881, 0xC07B, 0x9882,
- 0xC07C, 0x9883, 0xC07D, 0x9884, 0xC07E, 0x9885, 0xC07F, 0x9886,
- 0xC080, 0x9887, 0xC081, 0x9888, 0xC082, 0x9889, 0xC083, 0x988A,
- 0xC084, 0x988B, 0xC085, 0x988C, 0xC086, 0x988D, 0xC087, 0x988E,
- 0xC088, 0x988F, 0xC089, 0x9890, 0xC08A, 0x9891, 0xC08B, 0x9892,
- 0xC08C, 0x9893, 0xC08D, 0x9894, 0xC08E, 0x9895, 0xC08F, 0x9896,
- 0xC090, 0xBBDF, 0xC091, 0xBBE0, 0xC092, 0x9897, 0xC093, 0x9898,
- 0xC094, 0xBBE1, 0xC095, 0x9899, 0xC096, 0x989A, 0xC097, 0x989B,
- 0xC098, 0xBBE2, 0xC099, 0x989C, 0xC09A, 0x989D, 0xC09B, 0x989E,
- 0xC09C, 0x989F, 0xC09D, 0x98A0, 0xC09E, 0x98A1, 0xC09F, 0x98A2,
- 0xC0A0, 0xBBE3, 0xC0A1, 0xBBE4, 0xC0A2, 0x98A3, 0xC0A3, 0xBBE5,
- 0xC0A4, 0x98A4, 0xC0A5, 0xBBE6, 0xC0A6, 0x98A5, 0xC0A7, 0x98A6,
- 0xC0A8, 0x98A7, 0xC0A9, 0x98A8, 0xC0AA, 0x98A9, 0xC0AB, 0x98AA,
- 0xC0AC, 0xBBE7, 0xC0AD, 0xBBE8, 0xC0AE, 0x98AB, 0xC0AF, 0xBBE9,
- 0xC0B0, 0xBBEA, 0xC0B1, 0x98AC, 0xC0B2, 0x98AD, 0xC0B3, 0xBBEB,
- 0xC0B4, 0xBBEC, 0xC0B5, 0xBBED, 0xC0B6, 0xBBEE, 0xC0B7, 0x98AE,
- 0xC0B8, 0x98AF, 0xC0B9, 0x98B0, 0xC0BA, 0x98B1, 0xC0BB, 0x98B2,
- 0xC0BC, 0xBBEF, 0xC0BD, 0xBBF0, 0xC0BE, 0x98B3, 0xC0BF, 0xBBF1,
- 0xC0C0, 0xBBF2, 0xC0C1, 0xBBF3, 0xC0C2, 0x98B4, 0xC0C3, 0x98B5,
- 0xC0C4, 0x98B6, 0xC0C5, 0xBBF4, 0xC0C6, 0x98B7, 0xC0C7, 0x98B8,
- 0xC0C8, 0xBBF5, 0xC0C9, 0xBBF6, 0xC0CA, 0x98B9, 0xC0CB, 0x98BA,
- 0xC0CC, 0xBBF7, 0xC0CD, 0x98BB, 0xC0CE, 0x98BC, 0xC0CF, 0x98BD,
- 0xC0D0, 0xBBF8, 0xC0D1, 0x98BE, 0xC0D2, 0x98BF, 0xC0D3, 0x98C0,
- 0xC0D4, 0x98C1, 0xC0D5, 0x98C2, 0xC0D6, 0x98C3, 0xC0D7, 0x98C4,
- 0xC0D8, 0xBBF9, 0xC0D9, 0xBBFA, 0xC0DA, 0x98C5, 0xC0DB, 0xBBFB,
- 0xC0DC, 0xBBFC, 0xC0DD, 0xBBFD, 0xC0DE, 0x98C6, 0xC0DF, 0x98C7,
- 0xC0E0, 0x98C8, 0xC0E1, 0x98C9, 0xC0E2, 0x98CA, 0xC0E3, 0x98CB,
- 0xC0E4, 0xBBFE, 0xC0E5, 0xBCA1, 0xC0E6, 0x98CC, 0xC0E7, 0x98CD,
- 0xC0E8, 0xBCA2, 0xC0E9, 0x98CE, 0xC0EA, 0x98CF, 0xC0EB, 0x98D0,
- 0xC0EC, 0xBCA3, 0xC0ED, 0x98D1, 0xC0EE, 0x98D2, 0xC0EF, 0x98D3,
- 0xC0F0, 0x98D4, 0xC0F1, 0x98D5, 0xC0F2, 0x98D6, 0xC0F3, 0x98D7,
- 0xC0F4, 0xBCA4, 0xC0F5, 0xBCA5, 0xC0F6, 0x98D8, 0xC0F7, 0xBCA6,
- 0xC0F8, 0x98D9, 0xC0F9, 0xBCA7, 0xC0FA, 0x98DA, 0xC0FB, 0x98DB,
- 0xC0FC, 0x98DC, 0xC0FD, 0x98DD, 0xC0FE, 0x98DE, 0xC0FF, 0x98DF,
- 0xC100, 0xBCA8, 0xC101, 0x98E0, 0xC102, 0x98E1, 0xC103, 0x98E2,
- 0xC104, 0xBCA9, 0xC105, 0x98E3, 0xC106, 0x98E4, 0xC107, 0x98E5,
- 0xC108, 0xBCAA, 0xC109, 0x98E6, 0xC10A, 0x98E7, 0xC10B, 0x98E8,
- 0xC10C, 0x98E9, 0xC10D, 0x98EA, 0xC10E, 0x98EB, 0xC10F, 0x98EC,
- 0xC110, 0xBCAB, 0xC111, 0x98ED, 0xC112, 0x98EE, 0xC113, 0x98EF,
- 0xC114, 0x98F0, 0xC115, 0xBCAC, 0xC116, 0x98F1, 0xC117, 0x98F2,
- 0xC118, 0x98F3, 0xC119, 0x98F4, 0xC11A, 0x98F5, 0xC11B, 0x98F6,
- 0xC11C, 0xBCAD, 0xC11D, 0xBCAE, 0xC11E, 0xBCAF, 0xC11F, 0xBCB0,
- 0xC120, 0xBCB1, 0xC121, 0x98F7, 0xC122, 0x98F8, 0xC123, 0xBCB2,
- 0xC124, 0xBCB3, 0xC125, 0x98F9, 0xC126, 0xBCB4, 0xC127, 0xBCB5,
- 0xC128, 0x98FA, 0xC129, 0x98FB, 0xC12A, 0x98FC, 0xC12B, 0x98FD,
- 0xC12C, 0xBCB6, 0xC12D, 0xBCB7, 0xC12E, 0x98FE, 0xC12F, 0xBCB8,
- 0xC130, 0xBCB9, 0xC131, 0xBCBA, 0xC132, 0x9941, 0xC133, 0x9942,
- 0xC134, 0x9943, 0xC135, 0x9944, 0xC136, 0xBCBB, 0xC137, 0x9945,
- 0xC138, 0xBCBC, 0xC139, 0xBCBD, 0xC13A, 0x9946, 0xC13B, 0x9947,
- 0xC13C, 0xBCBE, 0xC13D, 0x9948, 0xC13E, 0x9949, 0xC13F, 0x994A,
- 0xC140, 0xBCBF, 0xC141, 0x994B, 0xC142, 0x994C, 0xC143, 0x994D,
- 0xC144, 0x994E, 0xC145, 0x994F, 0xC146, 0x9950, 0xC147, 0x9951,
- 0xC148, 0xBCC0, 0xC149, 0xBCC1, 0xC14A, 0x9952, 0xC14B, 0xBCC2,
- 0xC14C, 0xBCC3, 0xC14D, 0xBCC4, 0xC14E, 0x9953, 0xC14F, 0x9954,
- 0xC150, 0x9955, 0xC151, 0x9956, 0xC152, 0x9957, 0xC153, 0x9958,
- 0xC154, 0xBCC5, 0xC155, 0xBCC6, 0xC156, 0x9959, 0xC157, 0x995A,
- 0xC158, 0xBCC7, 0xC159, 0x9961, 0xC15A, 0x9962, 0xC15B, 0x9963,
- 0xC15C, 0xBCC8, 0xC15D, 0x9964, 0xC15E, 0x9965, 0xC15F, 0x9966,
- 0xC160, 0x9967, 0xC161, 0x9968, 0xC162, 0x9969, 0xC163, 0x996A,
- 0xC164, 0xBCC9, 0xC165, 0xBCCA, 0xC166, 0x996B, 0xC167, 0xBCCB,
- 0xC168, 0xBCCC, 0xC169, 0xBCCD, 0xC16A, 0x996C, 0xC16B, 0x996D,
- 0xC16C, 0x996E, 0xC16D, 0x996F, 0xC16E, 0x9970, 0xC16F, 0x9971,
- 0xC170, 0xBCCE, 0xC171, 0x9972, 0xC172, 0x9973, 0xC173, 0x9974,
- 0xC174, 0xBCCF, 0xC175, 0x9975, 0xC176, 0x9976, 0xC177, 0x9977,
- 0xC178, 0xBCD0, 0xC179, 0x9978, 0xC17A, 0x9979, 0xC17B, 0x997A,
- 0xC17C, 0x9981, 0xC17D, 0x9982, 0xC17E, 0x9983, 0xC17F, 0x9984,
- 0xC180, 0x9985, 0xC181, 0x9986, 0xC182, 0x9987, 0xC183, 0x9988,
- 0xC184, 0x9989, 0xC185, 0xBCD1, 0xC186, 0x998A, 0xC187, 0x998B,
- 0xC188, 0x998C, 0xC189, 0x998D, 0xC18A, 0x998E, 0xC18B, 0x998F,
- 0xC18C, 0xBCD2, 0xC18D, 0xBCD3, 0xC18E, 0xBCD4, 0xC18F, 0x9990,
- 0xC190, 0xBCD5, 0xC191, 0x9991, 0xC192, 0x9992, 0xC193, 0x9993,
- 0xC194, 0xBCD6, 0xC195, 0x9994, 0xC196, 0xBCD7, 0xC197, 0x9995,
- 0xC198, 0x9996, 0xC199, 0x9997, 0xC19A, 0x9998, 0xC19B, 0x9999,
- 0xC19C, 0xBCD8, 0xC19D, 0xBCD9, 0xC19E, 0x999A, 0xC19F, 0xBCDA,
- 0xC1A0, 0x999B, 0xC1A1, 0xBCDB, 0xC1A2, 0x999C, 0xC1A3, 0x999D,
- 0xC1A4, 0x999E, 0xC1A5, 0xBCDC, 0xC1A6, 0x999F, 0xC1A7, 0x99A0,
- 0xC1A8, 0xBCDD, 0xC1A9, 0xBCDE, 0xC1AA, 0x99A1, 0xC1AB, 0x99A2,
- 0xC1AC, 0xBCDF, 0xC1AD, 0x99A3, 0xC1AE, 0x99A4, 0xC1AF, 0x99A5,
- 0xC1B0, 0xBCE0, 0xC1B1, 0x99A6, 0xC1B2, 0x99A7, 0xC1B3, 0x99A8,
- 0xC1B4, 0x99A9, 0xC1B5, 0x99AA, 0xC1B6, 0x99AB, 0xC1B7, 0x99AC,
- 0xC1B8, 0x99AD, 0xC1B9, 0x99AE, 0xC1BA, 0x99AF, 0xC1BB, 0x99B0,
- 0xC1BC, 0x99B1, 0xC1BD, 0xBCE1, 0xC1BE, 0x99B2, 0xC1BF, 0x99B3,
- 0xC1C0, 0x99B4, 0xC1C1, 0x99B5, 0xC1C2, 0x99B6, 0xC1C3, 0x99B7,
- 0xC1C4, 0xBCE2, 0xC1C5, 0x99B8, 0xC1C6, 0x99B9, 0xC1C7, 0x99BA,
- 0xC1C8, 0xBCE3, 0xC1C9, 0x99BB, 0xC1CA, 0x99BC, 0xC1CB, 0x99BD,
- 0xC1CC, 0xBCE4, 0xC1CD, 0x99BE, 0xC1CE, 0x99BF, 0xC1CF, 0x99C0,
- 0xC1D0, 0x99C1, 0xC1D1, 0x99C2, 0xC1D2, 0x99C3, 0xC1D3, 0x99C4,
- 0xC1D4, 0xBCE5, 0xC1D5, 0x99C5, 0xC1D6, 0x99C6, 0xC1D7, 0xBCE6,
- 0xC1D8, 0xBCE7, 0xC1D9, 0x99C7, 0xC1DA, 0x99C8, 0xC1DB, 0x99C9,
- 0xC1DC, 0x99CA, 0xC1DD, 0x99CB, 0xC1DE, 0x99CC, 0xC1DF, 0x99CD,
- 0xC1E0, 0xBCE8, 0xC1E1, 0x99CE, 0xC1E2, 0x99CF, 0xC1E3, 0x99D0,
- 0xC1E4, 0xBCE9, 0xC1E5, 0x99D1, 0xC1E6, 0x99D2, 0xC1E7, 0x99D3,
- 0xC1E8, 0xBCEA, 0xC1E9, 0x99D4, 0xC1EA, 0x99D5, 0xC1EB, 0x99D6,
- 0xC1EC, 0x99D7, 0xC1ED, 0x99D8, 0xC1EE, 0x99D9, 0xC1EF, 0x99DA,
- 0xC1F0, 0xBCEB, 0xC1F1, 0xBCEC, 0xC1F2, 0x99DB, 0xC1F3, 0xBCED,
- 0xC1F4, 0x99DC, 0xC1F5, 0x99DD, 0xC1F6, 0x99DE, 0xC1F7, 0x99DF,
- 0xC1F8, 0x99E0, 0xC1F9, 0x99E1, 0xC1FA, 0x99E2, 0xC1FB, 0x99E3,
- 0xC1FC, 0xBCEE, 0xC1FD, 0xBCEF, 0xC1FE, 0x99E4, 0xC1FF, 0x99E5,
- 0xC200, 0xBCF0, 0xC201, 0x99E6, 0xC202, 0x99E7, 0xC203, 0x99E8,
- 0xC204, 0xBCF1, 0xC205, 0x99E9, 0xC206, 0x99EA, 0xC207, 0x99EB,
- 0xC208, 0x99EC, 0xC209, 0x99ED, 0xC20A, 0x99EE, 0xC20B, 0x99EF,
- 0xC20C, 0xBCF2, 0xC20D, 0xBCF3, 0xC20E, 0x99F0, 0xC20F, 0xBCF4,
- 0xC210, 0x99F1, 0xC211, 0xBCF5, 0xC212, 0x99F2, 0xC213, 0x99F3,
- 0xC214, 0x99F4, 0xC215, 0x99F5, 0xC216, 0x99F6, 0xC217, 0x99F7,
- 0xC218, 0xBCF6, 0xC219, 0xBCF7, 0xC21A, 0x99F8, 0xC21B, 0x99F9,
- 0xC21C, 0xBCF8, 0xC21D, 0x99FA, 0xC21E, 0x99FB, 0xC21F, 0xBCF9,
- 0xC220, 0xBCFA, 0xC221, 0x99FC, 0xC222, 0x99FD, 0xC223, 0x99FE,
- 0xC224, 0x9A41, 0xC225, 0x9A42, 0xC226, 0x9A43, 0xC227, 0x9A44,
- 0xC228, 0xBCFB, 0xC229, 0xBCFC, 0xC22A, 0x9A45, 0xC22B, 0xBCFD,
- 0xC22C, 0x9A46, 0xC22D, 0xBCFE, 0xC22E, 0x9A47, 0xC22F, 0xBDA1,
- 0xC230, 0x9A48, 0xC231, 0xBDA2, 0xC232, 0xBDA3, 0xC233, 0x9A49,
- 0xC234, 0xBDA4, 0xC235, 0x9A4A, 0xC236, 0x9A4B, 0xC237, 0x9A4C,
- 0xC238, 0x9A4D, 0xC239, 0x9A4E, 0xC23A, 0x9A4F, 0xC23B, 0x9A50,
- 0xC23C, 0x9A51, 0xC23D, 0x9A52, 0xC23E, 0x9A53, 0xC23F, 0x9A54,
- 0xC240, 0x9A55, 0xC241, 0x9A56, 0xC242, 0x9A57, 0xC243, 0x9A58,
- 0xC244, 0x9A59, 0xC245, 0x9A5A, 0xC246, 0x9A61, 0xC247, 0x9A62,
- 0xC248, 0xBDA5, 0xC249, 0x9A63, 0xC24A, 0x9A64, 0xC24B, 0x9A65,
- 0xC24C, 0x9A66, 0xC24D, 0x9A67, 0xC24E, 0x9A68, 0xC24F, 0x9A69,
- 0xC250, 0xBDA6, 0xC251, 0xBDA7, 0xC252, 0x9A6A, 0xC253, 0x9A6B,
- 0xC254, 0xBDA8, 0xC255, 0x9A6C, 0xC256, 0x9A6D, 0xC257, 0x9A6E,
- 0xC258, 0xBDA9, 0xC259, 0x9A6F, 0xC25A, 0x9A70, 0xC25B, 0x9A71,
- 0xC25C, 0x9A72, 0xC25D, 0x9A73, 0xC25E, 0x9A74, 0xC25F, 0x9A75,
- 0xC260, 0xBDAA, 0xC261, 0x9A76, 0xC262, 0x9A77, 0xC263, 0x9A78,
- 0xC264, 0x9A79, 0xC265, 0xBDAB, 0xC266, 0x9A7A, 0xC267, 0x9A81,
- 0xC268, 0x9A82, 0xC269, 0x9A83, 0xC26A, 0x9A84, 0xC26B, 0x9A85,
- 0xC26C, 0xBDAC, 0xC26D, 0xBDAD, 0xC26E, 0x9A86, 0xC26F, 0x9A87,
- 0xC270, 0xBDAE, 0xC271, 0x9A88, 0xC272, 0x9A89, 0xC273, 0x9A8A,
- 0xC274, 0xBDAF, 0xC275, 0x9A8B, 0xC276, 0x9A8C, 0xC277, 0x9A8D,
- 0xC278, 0x9A8E, 0xC279, 0x9A8F, 0xC27A, 0x9A90, 0xC27B, 0x9A91,
- 0xC27C, 0xBDB0, 0xC27D, 0xBDB1, 0xC27E, 0x9A92, 0xC27F, 0xBDB2,
- 0xC280, 0x9A93, 0xC281, 0xBDB3, 0xC282, 0x9A94, 0xC283, 0x9A95,
- 0xC284, 0x9A96, 0xC285, 0x9A97, 0xC286, 0x9A98, 0xC287, 0x9A99,
- 0xC288, 0xBDB4, 0xC289, 0xBDB5, 0xC28A, 0x9A9A, 0xC28B, 0x9A9B,
- 0xC28C, 0x9A9C, 0xC28D, 0x9A9D, 0xC28E, 0x9A9E, 0xC28F, 0x9A9F,
- 0xC290, 0xBDB6, 0xC291, 0x9AA0, 0xC292, 0x9AA1, 0xC293, 0x9AA2,
- 0xC294, 0x9AA3, 0xC295, 0x9AA4, 0xC296, 0x9AA5, 0xC297, 0x9AA6,
- 0xC298, 0xBDB7, 0xC299, 0x9AA7, 0xC29A, 0x9AA8, 0xC29B, 0xBDB8,
- 0xC29C, 0x9AA9, 0xC29D, 0xBDB9, 0xC29E, 0x9AAA, 0xC29F, 0x9AAB,
- 0xC2A0, 0x9AAC, 0xC2A1, 0x9AAD, 0xC2A2, 0x9AAE, 0xC2A3, 0x9AAF,
- 0xC2A4, 0xBDBA, 0xC2A5, 0xBDBB, 0xC2A6, 0x9AB0, 0xC2A7, 0x9AB1,
- 0xC2A8, 0xBDBC, 0xC2A9, 0x9AB2, 0xC2AA, 0x9AB3, 0xC2AB, 0x9AB4,
- 0xC2AC, 0xBDBD, 0xC2AD, 0xBDBE, 0xC2AE, 0x9AB5, 0xC2AF, 0x9AB6,
- 0xC2B0, 0x9AB7, 0xC2B1, 0x9AB8, 0xC2B2, 0x9AB9, 0xC2B3, 0x9ABA,
- 0xC2B4, 0xBDBF, 0xC2B5, 0xBDC0, 0xC2B6, 0x9ABB, 0xC2B7, 0xBDC1,
- 0xC2B8, 0x9ABC, 0xC2B9, 0xBDC2, 0xC2BA, 0x9ABD, 0xC2BB, 0x9ABE,
- 0xC2BC, 0x9ABF, 0xC2BD, 0x9AC0, 0xC2BE, 0x9AC1, 0xC2BF, 0x9AC2,
- 0xC2C0, 0x9AC3, 0xC2C1, 0x9AC4, 0xC2C2, 0x9AC5, 0xC2C3, 0x9AC6,
- 0xC2C4, 0x9AC7, 0xC2C5, 0x9AC8, 0xC2C6, 0x9AC9, 0xC2C7, 0x9ACA,
- 0xC2C8, 0x9ACB, 0xC2C9, 0x9ACC, 0xC2CA, 0x9ACD, 0xC2CB, 0x9ACE,
- 0xC2CC, 0x9ACF, 0xC2CD, 0x9AD0, 0xC2CE, 0x9AD1, 0xC2CF, 0x9AD2,
- 0xC2D0, 0x9AD3, 0xC2D1, 0x9AD4, 0xC2D2, 0x9AD5, 0xC2D3, 0x9AD6,
- 0xC2D4, 0x9AD7, 0xC2D5, 0x9AD8, 0xC2D6, 0x9AD9, 0xC2D7, 0x9ADA,
- 0xC2D8, 0x9ADB, 0xC2D9, 0x9ADC, 0xC2DA, 0x9ADD, 0xC2DB, 0x9ADE,
- 0xC2DC, 0xBDC3, 0xC2DD, 0xBDC4, 0xC2DE, 0x9ADF, 0xC2DF, 0x9AE0,
- 0xC2E0, 0xBDC5, 0xC2E1, 0x9AE1, 0xC2E2, 0x9AE2, 0xC2E3, 0xBDC6,
- 0xC2E4, 0xBDC7, 0xC2E5, 0x9AE3, 0xC2E6, 0x9AE4, 0xC2E7, 0x9AE5,
- 0xC2E8, 0x9AE6, 0xC2E9, 0x9AE7, 0xC2EA, 0x9AE8, 0xC2EB, 0xBDC8,
- 0xC2EC, 0xBDC9, 0xC2ED, 0xBDCA, 0xC2EE, 0x9AE9, 0xC2EF, 0xBDCB,
- 0xC2F0, 0x9AEA, 0xC2F1, 0xBDCC, 0xC2F2, 0x9AEB, 0xC2F3, 0x9AEC,
- 0xC2F4, 0x9AED, 0xC2F5, 0x9AEE, 0xC2F6, 0xBDCD, 0xC2F7, 0x9AEF,
- 0xC2F8, 0xBDCE, 0xC2F9, 0xBDCF, 0xC2FA, 0x9AF0, 0xC2FB, 0xBDD0,
- 0xC2FC, 0xBDD1, 0xC2FD, 0x9AF1, 0xC2FE, 0x9AF2, 0xC2FF, 0x9AF3,
- 0xC300, 0xBDD2, 0xC301, 0x9AF4, 0xC302, 0x9AF5, 0xC303, 0x9AF6,
- 0xC304, 0x9AF7, 0xC305, 0x9AF8, 0xC306, 0x9AF9, 0xC307, 0x9AFA,
- 0xC308, 0xBDD3, 0xC309, 0xBDD4, 0xC30A, 0x9AFB, 0xC30B, 0x9AFC,
- 0xC30C, 0xBDD5, 0xC30D, 0xBDD6, 0xC30E, 0x9AFD, 0xC30F, 0x9AFE,
- 0xC310, 0x9B41, 0xC311, 0x9B42, 0xC312, 0x9B43, 0xC313, 0xBDD7,
- 0xC314, 0xBDD8, 0xC315, 0xBDD9, 0xC316, 0x9B44, 0xC317, 0x9B45,
- 0xC318, 0xBDDA, 0xC319, 0x9B46, 0xC31A, 0x9B47, 0xC31B, 0x9B48,
- 0xC31C, 0xBDDB, 0xC31D, 0x9B49, 0xC31E, 0x9B4A, 0xC31F, 0x9B4B,
- 0xC320, 0x9B4C, 0xC321, 0x9B4D, 0xC322, 0x9B4E, 0xC323, 0x9B4F,
- 0xC324, 0xBDDC, 0xC325, 0xBDDD, 0xC326, 0x9B50, 0xC327, 0x9B51,
- 0xC328, 0xBDDE, 0xC329, 0xBDDF, 0xC32A, 0x9B52, 0xC32B, 0x9B53,
- 0xC32C, 0x9B54, 0xC32D, 0x9B55, 0xC32E, 0x9B56, 0xC32F, 0x9B57,
- 0xC330, 0x9B58, 0xC331, 0x9B59, 0xC332, 0x9B5A, 0xC333, 0x9B61,
- 0xC334, 0x9B62, 0xC335, 0x9B63, 0xC336, 0x9B64, 0xC337, 0x9B65,
- 0xC338, 0x9B66, 0xC339, 0x9B67, 0xC33A, 0x9B68, 0xC33B, 0x9B69,
- 0xC33C, 0x9B6A, 0xC33D, 0x9B6B, 0xC33E, 0x9B6C, 0xC33F, 0x9B6D,
- 0xC340, 0x9B6E, 0xC341, 0x9B6F, 0xC342, 0x9B70, 0xC343, 0x9B71,
- 0xC344, 0x9B72, 0xC345, 0xBDE0, 0xC346, 0x9B73, 0xC347, 0x9B74,
- 0xC348, 0x9B75, 0xC349, 0x9B76, 0xC34A, 0x9B77, 0xC34B, 0x9B78,
- 0xC34C, 0x9B79, 0xC34D, 0x9B7A, 0xC34E, 0x9B81, 0xC34F, 0x9B82,
- 0xC350, 0x9B83, 0xC351, 0x9B84, 0xC352, 0x9B85, 0xC353, 0x9B86,
- 0xC354, 0x9B87, 0xC355, 0x9B88, 0xC356, 0x9B89, 0xC357, 0x9B8A,
- 0xC358, 0x9B8B, 0xC359, 0x9B8C, 0xC35A, 0x9B8D, 0xC35B, 0x9B8E,
- 0xC35C, 0x9B8F, 0xC35D, 0x9B90, 0xC35E, 0x9B91, 0xC35F, 0x9B92,
- 0xC360, 0x9B93, 0xC361, 0x9B94, 0xC362, 0x9B95, 0xC363, 0x9B96,
- 0xC364, 0x9B97, 0xC365, 0x9B98, 0xC366, 0x9B99, 0xC367, 0x9B9A,
- 0xC368, 0xBDE1, 0xC369, 0xBDE2, 0xC36A, 0x9B9B, 0xC36B, 0x9B9C,
- 0xC36C, 0xBDE3, 0xC36D, 0x9B9D, 0xC36E, 0x9B9E, 0xC36F, 0x9B9F,
- 0xC370, 0xBDE4, 0xC371, 0x9BA0, 0xC372, 0xBDE5, 0xC373, 0x9BA1,
- 0xC374, 0x9BA2, 0xC375, 0x9BA3, 0xC376, 0x9BA4, 0xC377, 0x9BA5,
- 0xC378, 0xBDE6, 0xC379, 0xBDE7, 0xC37A, 0x9BA6, 0xC37B, 0x9BA7,
- 0xC37C, 0xBDE8, 0xC37D, 0xBDE9, 0xC37E, 0x9BA8, 0xC37F, 0x9BA9,
- 0xC380, 0x9BAA, 0xC381, 0x9BAB, 0xC382, 0x9BAC, 0xC383, 0x9BAD,
- 0xC384, 0xBDEA, 0xC385, 0x9BAE, 0xC386, 0x9BAF, 0xC387, 0x9BB0,
- 0xC388, 0xBDEB, 0xC389, 0x9BB1, 0xC38A, 0x9BB2, 0xC38B, 0x9BB3,
- 0xC38C, 0xBDEC, 0xC38D, 0x9BB4, 0xC38E, 0x9BB5, 0xC38F, 0x9BB6,
- 0xC390, 0x9BB7, 0xC391, 0x9BB8, 0xC392, 0x9BB9, 0xC393, 0x9BBA,
- 0xC394, 0x9BBB, 0xC395, 0x9BBC, 0xC396, 0x9BBD, 0xC397, 0x9BBE,
- 0xC398, 0x9BBF, 0xC399, 0x9BC0, 0xC39A, 0x9BC1, 0xC39B, 0x9BC2,
- 0xC39C, 0x9BC3, 0xC39D, 0x9BC4, 0xC39E, 0x9BC5, 0xC39F, 0x9BC6,
- 0xC3A0, 0x9BC7, 0xC3A1, 0x9BC8, 0xC3A2, 0x9BC9, 0xC3A3, 0x9BCA,
- 0xC3A4, 0x9BCB, 0xC3A5, 0x9BCC, 0xC3A6, 0x9BCD, 0xC3A7, 0x9BCE,
- 0xC3A8, 0x9BCF, 0xC3A9, 0x9BD0, 0xC3AA, 0x9BD1, 0xC3AB, 0x9BD2,
- 0xC3AC, 0x9BD3, 0xC3AD, 0x9BD4, 0xC3AE, 0x9BD5, 0xC3AF, 0x9BD6,
- 0xC3B0, 0x9BD7, 0xC3B1, 0x9BD8, 0xC3B2, 0x9BD9, 0xC3B3, 0x9BDA,
- 0xC3B4, 0x9BDB, 0xC3B5, 0x9BDC, 0xC3B6, 0x9BDD, 0xC3B7, 0x9BDE,
- 0xC3B8, 0x9BDF, 0xC3B9, 0x9BE0, 0xC3BA, 0x9BE1, 0xC3BB, 0x9BE2,
- 0xC3BC, 0x9BE3, 0xC3BD, 0x9BE4, 0xC3BE, 0x9BE5, 0xC3BF, 0x9BE6,
- 0xC3C0, 0xBDED, 0xC3C1, 0x9BE7, 0xC3C2, 0x9BE8, 0xC3C3, 0x9BE9,
- 0xC3C4, 0x9BEA, 0xC3C5, 0x9BEB, 0xC3C6, 0x9BEC, 0xC3C7, 0x9BED,
- 0xC3C8, 0x9BEE, 0xC3C9, 0x9BEF, 0xC3CA, 0x9BF0, 0xC3CB, 0x9BF1,
- 0xC3CC, 0x9BF2, 0xC3CD, 0x9BF3, 0xC3CE, 0x9BF4, 0xC3CF, 0x9BF5,
- 0xC3D0, 0x9BF6, 0xC3D1, 0x9BF7, 0xC3D2, 0x9BF8, 0xC3D3, 0x9BF9,
- 0xC3D4, 0x9BFA, 0xC3D5, 0x9BFB, 0xC3D6, 0x9BFC, 0xC3D7, 0x9BFD,
- 0xC3D8, 0xBDEE, 0xC3D9, 0xBDEF, 0xC3DA, 0x9BFE, 0xC3DB, 0x9C41,
- 0xC3DC, 0xBDF0, 0xC3DD, 0x9C42, 0xC3DE, 0x9C43, 0xC3DF, 0xBDF1,
- 0xC3E0, 0xBDF2, 0xC3E1, 0x9C44, 0xC3E2, 0xBDF3, 0xC3E3, 0x9C45,
- 0xC3E4, 0x9C46, 0xC3E5, 0x9C47, 0xC3E6, 0x9C48, 0xC3E7, 0x9C49,
- 0xC3E8, 0xBDF4, 0xC3E9, 0xBDF5, 0xC3EA, 0x9C4A, 0xC3EB, 0x9C4B,
- 0xC3EC, 0x9C4C, 0xC3ED, 0xBDF6, 0xC3EE, 0x9C4D, 0xC3EF, 0x9C4E,
- 0xC3F0, 0x9C4F, 0xC3F1, 0x9C50, 0xC3F2, 0x9C51, 0xC3F3, 0x9C52,
- 0xC3F4, 0xBDF7, 0xC3F5, 0xBDF8, 0xC3F6, 0x9C53, 0xC3F7, 0x9C54,
- 0xC3F8, 0xBDF9, 0xC3F9, 0x9C55, 0xC3FA, 0x9C56, 0xC3FB, 0x9C57,
- 0xC3FC, 0x9C58, 0xC3FD, 0x9C59, 0xC3FE, 0x9C5A, 0xC3FF, 0x9C61,
- 0xC400, 0x9C62, 0xC401, 0x9C63, 0xC402, 0x9C64, 0xC403, 0x9C65,
- 0xC404, 0x9C66, 0xC405, 0x9C67, 0xC406, 0x9C68, 0xC407, 0x9C69,
- 0xC408, 0xBDFA, 0xC409, 0x9C6A, 0xC40A, 0x9C6B, 0xC40B, 0x9C6C,
- 0xC40C, 0x9C6D, 0xC40D, 0x9C6E, 0xC40E, 0x9C6F, 0xC40F, 0x9C70,
- 0xC410, 0xBDFB, 0xC411, 0x9C71, 0xC412, 0x9C72, 0xC413, 0x9C73,
- 0xC414, 0x9C74, 0xC415, 0x9C75, 0xC416, 0x9C76, 0xC417, 0x9C77,
- 0xC418, 0x9C78, 0xC419, 0x9C79, 0xC41A, 0x9C7A, 0xC41B, 0x9C81,
- 0xC41C, 0x9C82, 0xC41D, 0x9C83, 0xC41E, 0x9C84, 0xC41F, 0x9C85,
- 0xC420, 0x9C86, 0xC421, 0x9C87, 0xC422, 0x9C88, 0xC423, 0x9C89,
- 0xC424, 0xBDFC, 0xC425, 0x9C8A, 0xC426, 0x9C8B, 0xC427, 0x9C8C,
- 0xC428, 0x9C8D, 0xC429, 0x9C8E, 0xC42A, 0x9C8F, 0xC42B, 0x9C90,
- 0xC42C, 0xBDFD, 0xC42D, 0x9C91, 0xC42E, 0x9C92, 0xC42F, 0x9C93,
- 0xC430, 0xBDFE, 0xC431, 0x9C94, 0xC432, 0x9C95, 0xC433, 0x9C96,
- 0xC434, 0xBEA1, 0xC435, 0x9C97, 0xC436, 0x9C98, 0xC437, 0x9C99,
- 0xC438, 0x9C9A, 0xC439, 0x9C9B, 0xC43A, 0x9C9C, 0xC43B, 0x9C9D,
- 0xC43C, 0xBEA2, 0xC43D, 0xBEA3, 0xC43E, 0x9C9E, 0xC43F, 0x9C9F,
- 0xC440, 0x9CA0, 0xC441, 0x9CA1, 0xC442, 0x9CA2, 0xC443, 0x9CA3,
- 0xC444, 0x9CA4, 0xC445, 0x9CA5, 0xC446, 0x9CA6, 0xC447, 0x9CA7,
- 0xC448, 0xBEA4, 0xC449, 0x9CA8, 0xC44A, 0x9CA9, 0xC44B, 0x9CAA,
- 0xC44C, 0x9CAB, 0xC44D, 0x9CAC, 0xC44E, 0x9CAD, 0xC44F, 0x9CAE,
- 0xC450, 0x9CAF, 0xC451, 0x9CB0, 0xC452, 0x9CB1, 0xC453, 0x9CB2,
- 0xC454, 0x9CB3, 0xC455, 0x9CB4, 0xC456, 0x9CB5, 0xC457, 0x9CB6,
- 0xC458, 0x9CB7, 0xC459, 0x9CB8, 0xC45A, 0x9CB9, 0xC45B, 0x9CBA,
- 0xC45C, 0x9CBB, 0xC45D, 0x9CBC, 0xC45E, 0x9CBD, 0xC45F, 0x9CBE,
- 0xC460, 0x9CBF, 0xC461, 0x9CC0, 0xC462, 0x9CC1, 0xC463, 0x9CC2,
- 0xC464, 0xBEA5, 0xC465, 0xBEA6, 0xC466, 0x9CC3, 0xC467, 0x9CC4,
- 0xC468, 0xBEA7, 0xC469, 0x9CC5, 0xC46A, 0x9CC6, 0xC46B, 0x9CC7,
- 0xC46C, 0xBEA8, 0xC46D, 0x9CC8, 0xC46E, 0x9CC9, 0xC46F, 0x9CCA,
- 0xC470, 0x9CCB, 0xC471, 0x9CCC, 0xC472, 0x9CCD, 0xC473, 0x9CCE,
- 0xC474, 0xBEA9, 0xC475, 0xBEAA, 0xC476, 0x9CCF, 0xC477, 0x9CD0,
- 0xC478, 0x9CD1, 0xC479, 0xBEAB, 0xC47A, 0x9CD2, 0xC47B, 0x9CD3,
- 0xC47C, 0x9CD4, 0xC47D, 0x9CD5, 0xC47E, 0x9CD6, 0xC47F, 0x9CD7,
- 0xC480, 0xBEAC, 0xC481, 0x9CD8, 0xC482, 0x9CD9, 0xC483, 0x9CDA,
- 0xC484, 0x9CDB, 0xC485, 0x9CDC, 0xC486, 0x9CDD, 0xC487, 0x9CDE,
- 0xC488, 0x9CDF, 0xC489, 0x9CE0, 0xC48A, 0x9CE1, 0xC48B, 0x9CE2,
- 0xC48C, 0x9CE3, 0xC48D, 0x9CE4, 0xC48E, 0x9CE5, 0xC48F, 0x9CE6,
- 0xC490, 0x9CE7, 0xC491, 0x9CE8, 0xC492, 0x9CE9, 0xC493, 0x9CEA,
- 0xC494, 0xBEAD, 0xC495, 0x9CEB, 0xC496, 0x9CEC, 0xC497, 0x9CED,
- 0xC498, 0x9CEE, 0xC499, 0x9CEF, 0xC49A, 0x9CF0, 0xC49B, 0x9CF1,
- 0xC49C, 0xBEAE, 0xC49D, 0x9CF2, 0xC49E, 0x9CF3, 0xC49F, 0x9CF4,
- 0xC4A0, 0x9CF5, 0xC4A1, 0x9CF6, 0xC4A2, 0x9CF7, 0xC4A3, 0x9CF8,
- 0xC4A4, 0x9CF9, 0xC4A5, 0x9CFA, 0xC4A6, 0x9CFB, 0xC4A7, 0x9CFC,
- 0xC4A8, 0x9CFD, 0xC4A9, 0x9CFE, 0xC4AA, 0x9D41, 0xC4AB, 0x9D42,
- 0xC4AC, 0x9D43, 0xC4AD, 0x9D44, 0xC4AE, 0x9D45, 0xC4AF, 0x9D46,
- 0xC4B0, 0x9D47, 0xC4B1, 0x9D48, 0xC4B2, 0x9D49, 0xC4B3, 0x9D4A,
- 0xC4B4, 0x9D4B, 0xC4B5, 0x9D4C, 0xC4B6, 0x9D4D, 0xC4B7, 0x9D4E,
- 0xC4B8, 0xBEAF, 0xC4B9, 0x9D4F, 0xC4BA, 0x9D50, 0xC4BB, 0x9D51,
- 0xC4BC, 0xBEB0, 0xC4BD, 0x9D52, 0xC4BE, 0x9D53, 0xC4BF, 0x9D54,
- 0xC4C0, 0x9D55, 0xC4C1, 0x9D56, 0xC4C2, 0x9D57, 0xC4C3, 0x9D58,
- 0xC4C4, 0x9D59, 0xC4C5, 0x9D5A, 0xC4C6, 0x9D61, 0xC4C7, 0x9D62,
- 0xC4C8, 0x9D63, 0xC4C9, 0x9D64, 0xC4CA, 0x9D65, 0xC4CB, 0x9D66,
- 0xC4CC, 0x9D67, 0xC4CD, 0x9D68, 0xC4CE, 0x9D69, 0xC4CF, 0x9D6A,
- 0xC4D0, 0x9D6B, 0xC4D1, 0x9D6C, 0xC4D2, 0x9D6D, 0xC4D3, 0x9D6E,
- 0xC4D4, 0x9D6F, 0xC4D5, 0x9D70, 0xC4D6, 0x9D71, 0xC4D7, 0x9D72,
- 0xC4D8, 0x9D73, 0xC4D9, 0x9D74, 0xC4DA, 0x9D75, 0xC4DB, 0x9D76,
- 0xC4DC, 0x9D77, 0xC4DD, 0x9D78, 0xC4DE, 0x9D79, 0xC4DF, 0x9D7A,
- 0xC4E0, 0x9D81, 0xC4E1, 0x9D82, 0xC4E2, 0x9D83, 0xC4E3, 0x9D84,
- 0xC4E4, 0x9D85, 0xC4E5, 0x9D86, 0xC4E6, 0x9D87, 0xC4E7, 0x9D88,
- 0xC4E8, 0x9D89, 0xC4E9, 0xBEB1, 0xC4EA, 0x9D8A, 0xC4EB, 0x9D8B,
- 0xC4EC, 0x9D8C, 0xC4ED, 0x9D8D, 0xC4EE, 0x9D8E, 0xC4EF, 0x9D8F,
- 0xC4F0, 0xBEB2, 0xC4F1, 0xBEB3, 0xC4F2, 0x9D90, 0xC4F3, 0x9D91,
- 0xC4F4, 0xBEB4, 0xC4F5, 0x9D92, 0xC4F6, 0x9D93, 0xC4F7, 0x9D94,
- 0xC4F8, 0xBEB5, 0xC4F9, 0x9D95, 0xC4FA, 0xBEB6, 0xC4FB, 0x9D96,
- 0xC4FC, 0x9D97, 0xC4FD, 0x9D98, 0xC4FE, 0x9D99, 0xC4FF, 0xBEB7,
- 0xC500, 0xBEB8, 0xC501, 0xBEB9, 0xC502, 0x9D9A, 0xC503, 0x9D9B,
- 0xC504, 0x9D9C, 0xC505, 0x9D9D, 0xC506, 0x9D9E, 0xC507, 0x9D9F,
- 0xC508, 0x9DA0, 0xC509, 0x9DA1, 0xC50A, 0x9DA2, 0xC50B, 0x9DA3,
- 0xC50C, 0xBEBA, 0xC50D, 0x9DA4, 0xC50E, 0x9DA5, 0xC50F, 0x9DA6,
- 0xC510, 0xBEBB, 0xC511, 0x9DA7, 0xC512, 0x9DA8, 0xC513, 0x9DA9,
- 0xC514, 0xBEBC, 0xC515, 0x9DAA, 0xC516, 0x9DAB, 0xC517, 0x9DAC,
- 0xC518, 0x9DAD, 0xC519, 0x9DAE, 0xC51A, 0x9DAF, 0xC51B, 0x9DB0,
- 0xC51C, 0xBEBD, 0xC51D, 0x9DB1, 0xC51E, 0x9DB2, 0xC51F, 0x9DB3,
- 0xC520, 0x9DB4, 0xC521, 0x9DB5, 0xC522, 0x9DB6, 0xC523, 0x9DB7,
- 0xC524, 0x9DB8, 0xC525, 0x9DB9, 0xC526, 0x9DBA, 0xC527, 0x9DBB,
- 0xC528, 0xBEBE, 0xC529, 0xBEBF, 0xC52A, 0x9DBC, 0xC52B, 0x9DBD,
- 0xC52C, 0xBEC0, 0xC52D, 0x9DBE, 0xC52E, 0x9DBF, 0xC52F, 0x9DC0,
- 0xC530, 0xBEC1, 0xC531, 0x9DC1, 0xC532, 0x9DC2, 0xC533, 0x9DC3,
- 0xC534, 0x9DC4, 0xC535, 0x9DC5, 0xC536, 0x9DC6, 0xC537, 0x9DC7,
- 0xC538, 0xBEC2, 0xC539, 0xBEC3, 0xC53A, 0x9DC8, 0xC53B, 0xBEC4,
- 0xC53C, 0x9DC9, 0xC53D, 0xBEC5, 0xC53E, 0x9DCA, 0xC53F, 0x9DCB,
- 0xC540, 0x9DCC, 0xC541, 0x9DCD, 0xC542, 0x9DCE, 0xC543, 0x9DCF,
- 0xC544, 0xBEC6, 0xC545, 0xBEC7, 0xC546, 0x9DD0, 0xC547, 0x9DD1,
- 0xC548, 0xBEC8, 0xC549, 0xBEC9, 0xC54A, 0xBECA, 0xC54B, 0x9DD2,
- 0xC54C, 0xBECB, 0xC54D, 0xBECC, 0xC54E, 0xBECD, 0xC54F, 0x9DD3,
- 0xC550, 0x9DD4, 0xC551, 0x9DD5, 0xC552, 0x9DD6, 0xC553, 0xBECE,
- 0xC554, 0xBECF, 0xC555, 0xBED0, 0xC556, 0x9DD7, 0xC557, 0xBED1,
- 0xC558, 0xBED2, 0xC559, 0xBED3, 0xC55A, 0x9DD8, 0xC55B, 0x9DD9,
- 0xC55C, 0x9DDA, 0xC55D, 0xBED4, 0xC55E, 0xBED5, 0xC55F, 0x9DDB,
- 0xC560, 0xBED6, 0xC561, 0xBED7, 0xC562, 0x9DDC, 0xC563, 0x9DDD,
- 0xC564, 0xBED8, 0xC565, 0x9DDE, 0xC566, 0x9DDF, 0xC567, 0x9DE0,
- 0xC568, 0xBED9, 0xC569, 0x9DE1, 0xC56A, 0x9DE2, 0xC56B, 0x9DE3,
- 0xC56C, 0x9DE4, 0xC56D, 0x9DE5, 0xC56E, 0x9DE6, 0xC56F, 0x9DE7,
- 0xC570, 0xBEDA, 0xC571, 0xBEDB, 0xC572, 0x9DE8, 0xC573, 0xBEDC,
- 0xC574, 0xBEDD, 0xC575, 0xBEDE, 0xC576, 0x9DE9, 0xC577, 0x9DEA,
- 0xC578, 0x9DEB, 0xC579, 0x9DEC, 0xC57A, 0x9DED, 0xC57B, 0x9DEE,
- 0xC57C, 0xBEDF, 0xC57D, 0xBEE0, 0xC57E, 0x9DEF, 0xC57F, 0x9DF0,
- 0xC580, 0xBEE1, 0xC581, 0x9DF1, 0xC582, 0x9DF2, 0xC583, 0x9DF3,
- 0xC584, 0xBEE2, 0xC585, 0x9DF4, 0xC586, 0x9DF5, 0xC587, 0xBEE3,
- 0xC588, 0x9DF6, 0xC589, 0x9DF7, 0xC58A, 0x9DF8, 0xC58B, 0x9DF9,
- 0xC58C, 0xBEE4, 0xC58D, 0xBEE5, 0xC58E, 0x9DFA, 0xC58F, 0xBEE6,
- 0xC590, 0x9DFB, 0xC591, 0xBEE7, 0xC592, 0x9DFC, 0xC593, 0x9DFD,
- 0xC594, 0x9DFE, 0xC595, 0xBEE8, 0xC596, 0x9E41, 0xC597, 0xBEE9,
- 0xC598, 0xBEEA, 0xC599, 0x9E42, 0xC59A, 0x9E43, 0xC59B, 0x9E44,
- 0xC59C, 0xBEEB, 0xC59D, 0x9E45, 0xC59E, 0x9E46, 0xC59F, 0x9E47,
- 0xC5A0, 0xBEEC, 0xC5A1, 0x9E48, 0xC5A2, 0x9E49, 0xC5A3, 0x9E4A,
- 0xC5A4, 0x9E4B, 0xC5A5, 0x9E4C, 0xC5A6, 0x9E4D, 0xC5A7, 0x9E4E,
- 0xC5A8, 0x9E4F, 0xC5A9, 0xBEED, 0xC5AA, 0x9E50, 0xC5AB, 0x9E51,
- 0xC5AC, 0x9E52, 0xC5AD, 0x9E53, 0xC5AE, 0x9E54, 0xC5AF, 0x9E55,
- 0xC5B0, 0x9E56, 0xC5B1, 0x9E57, 0xC5B2, 0x9E58, 0xC5B3, 0x9E59,
- 0xC5B4, 0xBEEE, 0xC5B5, 0xBEEF, 0xC5B6, 0x9E5A, 0xC5B7, 0x9E61,
- 0xC5B8, 0xBEF0, 0xC5B9, 0xBEF1, 0xC5BA, 0x9E62, 0xC5BB, 0xBEF2,
- 0xC5BC, 0xBEF3, 0xC5BD, 0xBEF4, 0xC5BE, 0xBEF5, 0xC5BF, 0x9E63,
- 0xC5C0, 0x9E64, 0xC5C1, 0x9E65, 0xC5C2, 0x9E66, 0xC5C3, 0x9E67,
- 0xC5C4, 0xBEF6, 0xC5C5, 0xBEF7, 0xC5C6, 0xBEF8, 0xC5C7, 0xBEF9,
- 0xC5C8, 0xBEFA, 0xC5C9, 0xBEFB, 0xC5CA, 0xBEFC, 0xC5CB, 0x9E68,
- 0xC5CC, 0xBEFD, 0xC5CD, 0x9E69, 0xC5CE, 0xBEFE, 0xC5CF, 0x9E6A,
- 0xC5D0, 0xBFA1, 0xC5D1, 0xBFA2, 0xC5D2, 0x9E6B, 0xC5D3, 0x9E6C,
- 0xC5D4, 0xBFA3, 0xC5D5, 0x9E6D, 0xC5D6, 0x9E6E, 0xC5D7, 0x9E6F,
- 0xC5D8, 0xBFA4, 0xC5D9, 0x9E70, 0xC5DA, 0x9E71, 0xC5DB, 0x9E72,
- 0xC5DC, 0x9E73, 0xC5DD, 0x9E74, 0xC5DE, 0x9E75, 0xC5DF, 0x9E76,
- 0xC5E0, 0xBFA5, 0xC5E1, 0xBFA6, 0xC5E2, 0x9E77, 0xC5E3, 0xBFA7,
- 0xC5E4, 0x9E78, 0xC5E5, 0xBFA8, 0xC5E6, 0x9E79, 0xC5E7, 0x9E7A,
- 0xC5E8, 0x9E81, 0xC5E9, 0x9E82, 0xC5EA, 0x9E83, 0xC5EB, 0x9E84,
- 0xC5EC, 0xBFA9, 0xC5ED, 0xBFAA, 0xC5EE, 0xBFAB, 0xC5EF, 0x9E85,
- 0xC5F0, 0xBFAC, 0xC5F1, 0x9E86, 0xC5F2, 0x9E87, 0xC5F3, 0x9E88,
- 0xC5F4, 0xBFAD, 0xC5F5, 0x9E89, 0xC5F6, 0xBFAE, 0xC5F7, 0xBFAF,
- 0xC5F8, 0x9E8A, 0xC5F9, 0x9E8B, 0xC5FA, 0x9E8C, 0xC5FB, 0x9E8D,
- 0xC5FC, 0xBFB0, 0xC5FD, 0xBFB1, 0xC5FE, 0xBFB2, 0xC5FF, 0xBFB3,
- 0xC600, 0xBFB4, 0xC601, 0xBFB5, 0xC602, 0x9E8E, 0xC603, 0x9E8F,
- 0xC604, 0x9E90, 0xC605, 0xBFB6, 0xC606, 0xBFB7, 0xC607, 0xBFB8,
- 0xC608, 0xBFB9, 0xC609, 0x9E91, 0xC60A, 0x9E92, 0xC60B, 0x9E93,
- 0xC60C, 0xBFBA, 0xC60D, 0x9E94, 0xC60E, 0x9E95, 0xC60F, 0x9E96,
- 0xC610, 0xBFBB, 0xC611, 0x9E97, 0xC612, 0x9E98, 0xC613, 0x9E99,
- 0xC614, 0x9E9A, 0xC615, 0x9E9B, 0xC616, 0x9E9C, 0xC617, 0x9E9D,
- 0xC618, 0xBFBC, 0xC619, 0xBFBD, 0xC61A, 0x9E9E, 0xC61B, 0xBFBE,
- 0xC61C, 0xBFBF, 0xC61D, 0x9E9F, 0xC61E, 0x9EA0, 0xC61F, 0x9EA1,
- 0xC620, 0x9EA2, 0xC621, 0x9EA3, 0xC622, 0x9EA4, 0xC623, 0x9EA5,
- 0xC624, 0xBFC0, 0xC625, 0xBFC1, 0xC626, 0x9EA6, 0xC627, 0x9EA7,
- 0xC628, 0xBFC2, 0xC629, 0x9EA8, 0xC62A, 0x9EA9, 0xC62B, 0x9EAA,
- 0xC62C, 0xBFC3, 0xC62D, 0xBFC4, 0xC62E, 0xBFC5, 0xC62F, 0x9EAB,
- 0xC630, 0xBFC6, 0xC631, 0x9EAC, 0xC632, 0x9EAD, 0xC633, 0xBFC7,
- 0xC634, 0xBFC8, 0xC635, 0xBFC9, 0xC636, 0x9EAE, 0xC637, 0xBFCA,
- 0xC638, 0x9EAF, 0xC639, 0xBFCB, 0xC63A, 0x9EB0, 0xC63B, 0xBFCC,
- 0xC63C, 0x9EB1, 0xC63D, 0x9EB2, 0xC63E, 0x9EB3, 0xC63F, 0x9EB4,
- 0xC640, 0xBFCD, 0xC641, 0xBFCE, 0xC642, 0x9EB5, 0xC643, 0x9EB6,
- 0xC644, 0xBFCF, 0xC645, 0x9EB7, 0xC646, 0x9EB8, 0xC647, 0x9EB9,
- 0xC648, 0xBFD0, 0xC649, 0x9EBA, 0xC64A, 0x9EBB, 0xC64B, 0x9EBC,
- 0xC64C, 0x9EBD, 0xC64D, 0x9EBE, 0xC64E, 0x9EBF, 0xC64F, 0x9EC0,
- 0xC650, 0xBFD1, 0xC651, 0xBFD2, 0xC652, 0x9EC1, 0xC653, 0xBFD3,
- 0xC654, 0xBFD4, 0xC655, 0xBFD5, 0xC656, 0x9EC2, 0xC657, 0x9EC3,
- 0xC658, 0x9EC4, 0xC659, 0x9EC5, 0xC65A, 0x9EC6, 0xC65B, 0x9EC7,
- 0xC65C, 0xBFD6, 0xC65D, 0xBFD7, 0xC65E, 0x9EC8, 0xC65F, 0x9EC9,
- 0xC660, 0xBFD8, 0xC661, 0x9ECA, 0xC662, 0x9ECB, 0xC663, 0x9ECC,
- 0xC664, 0x9ECD, 0xC665, 0x9ECE, 0xC666, 0x9ECF, 0xC667, 0x9ED0,
- 0xC668, 0x9ED1, 0xC669, 0x9ED2, 0xC66A, 0x9ED3, 0xC66B, 0x9ED4,
- 0xC66C, 0xBFD9, 0xC66D, 0x9ED5, 0xC66E, 0x9ED6, 0xC66F, 0xBFDA,
- 0xC670, 0x9ED7, 0xC671, 0xBFDB, 0xC672, 0x9ED8, 0xC673, 0x9ED9,
- 0xC674, 0x9EDA, 0xC675, 0x9EDB, 0xC676, 0x9EDC, 0xC677, 0x9EDD,
- 0xC678, 0xBFDC, 0xC679, 0xBFDD, 0xC67A, 0x9EDE, 0xC67B, 0x9EDF,
- 0xC67C, 0xBFDE, 0xC67D, 0x9EE0, 0xC67E, 0x9EE1, 0xC67F, 0x9EE2,
- 0xC680, 0xBFDF, 0xC681, 0x9EE3, 0xC682, 0x9EE4, 0xC683, 0x9EE5,
- 0xC684, 0x9EE6, 0xC685, 0x9EE7, 0xC686, 0x9EE8, 0xC687, 0x9EE9,
- 0xC688, 0xBFE0, 0xC689, 0xBFE1, 0xC68A, 0x9EEA, 0xC68B, 0xBFE2,
- 0xC68C, 0x9EEB, 0xC68D, 0xBFE3, 0xC68E, 0x9EEC, 0xC68F, 0x9EED,
- 0xC690, 0x9EEE, 0xC691, 0x9EEF, 0xC692, 0x9EF0, 0xC693, 0x9EF1,
- 0xC694, 0xBFE4, 0xC695, 0xBFE5, 0xC696, 0x9EF2, 0xC697, 0x9EF3,
- 0xC698, 0xBFE6, 0xC699, 0x9EF4, 0xC69A, 0x9EF5, 0xC69B, 0x9EF6,
- 0xC69C, 0xBFE7, 0xC69D, 0x9EF7, 0xC69E, 0x9EF8, 0xC69F, 0x9EF9,
- 0xC6A0, 0x9EFA, 0xC6A1, 0x9EFB, 0xC6A2, 0x9EFC, 0xC6A3, 0x9EFD,
- 0xC6A4, 0xBFE8, 0xC6A5, 0xBFE9, 0xC6A6, 0x9EFE, 0xC6A7, 0xBFEA,
- 0xC6A8, 0x9F41, 0xC6A9, 0xBFEB, 0xC6AA, 0x9F42, 0xC6AB, 0x9F43,
- 0xC6AC, 0x9F44, 0xC6AD, 0x9F45, 0xC6AE, 0x9F46, 0xC6AF, 0x9F47,
- 0xC6B0, 0xBFEC, 0xC6B1, 0xBFED, 0xC6B2, 0x9F48, 0xC6B3, 0x9F49,
- 0xC6B4, 0xBFEE, 0xC6B5, 0x9F4A, 0xC6B6, 0x9F4B, 0xC6B7, 0x9F4C,
- 0xC6B8, 0xBFEF, 0xC6B9, 0xBFF0, 0xC6BA, 0xBFF1, 0xC6BB, 0x9F4D,
- 0xC6BC, 0x9F4E, 0xC6BD, 0x9F4F, 0xC6BE, 0x9F50, 0xC6BF, 0x9F51,
- 0xC6C0, 0xBFF2, 0xC6C1, 0xBFF3, 0xC6C2, 0x9F52, 0xC6C3, 0xBFF4,
- 0xC6C4, 0x9F53, 0xC6C5, 0xBFF5, 0xC6C6, 0x9F54, 0xC6C7, 0x9F55,
- 0xC6C8, 0x9F56, 0xC6C9, 0x9F57, 0xC6CA, 0x9F58, 0xC6CB, 0x9F59,
- 0xC6CC, 0xBFF6, 0xC6CD, 0xBFF7, 0xC6CE, 0x9F5A, 0xC6CF, 0x9F61,
- 0xC6D0, 0xBFF8, 0xC6D1, 0x9F62, 0xC6D2, 0x9F63, 0xC6D3, 0x9F64,
- 0xC6D4, 0xBFF9, 0xC6D5, 0x9F65, 0xC6D6, 0x9F66, 0xC6D7, 0x9F67,
- 0xC6D8, 0x9F68, 0xC6D9, 0x9F69, 0xC6DA, 0x9F6A, 0xC6DB, 0x9F6B,
- 0xC6DC, 0xBFFA, 0xC6DD, 0xBFFB, 0xC6DE, 0x9F6C, 0xC6DF, 0x9F6D,
- 0xC6E0, 0xBFFC, 0xC6E1, 0xBFFD, 0xC6E2, 0x9F6E, 0xC6E3, 0x9F6F,
- 0xC6E4, 0x9F70, 0xC6E5, 0x9F71, 0xC6E6, 0x9F72, 0xC6E7, 0x9F73,
- 0xC6E8, 0xBFFE, 0xC6E9, 0xC0A1, 0xC6EA, 0x9F74, 0xC6EB, 0x9F75,
- 0xC6EC, 0xC0A2, 0xC6ED, 0x9F76, 0xC6EE, 0x9F77, 0xC6EF, 0x9F78,
- 0xC6F0, 0xC0A3, 0xC6F1, 0x9F79, 0xC6F2, 0x9F7A, 0xC6F3, 0x9F81,
- 0xC6F4, 0x9F82, 0xC6F5, 0x9F83, 0xC6F6, 0x9F84, 0xC6F7, 0x9F85,
- 0xC6F8, 0xC0A4, 0xC6F9, 0xC0A5, 0xC6FA, 0x9F86, 0xC6FB, 0x9F87,
- 0xC6FC, 0x9F88, 0xC6FD, 0xC0A6, 0xC6FE, 0x9F89, 0xC6FF, 0x9F8A,
- 0xC700, 0x9F8B, 0xC701, 0x9F8C, 0xC702, 0x9F8D, 0xC703, 0x9F8E,
- 0xC704, 0xC0A7, 0xC705, 0xC0A8, 0xC706, 0x9F8F, 0xC707, 0x9F90,
- 0xC708, 0xC0A9, 0xC709, 0x9F91, 0xC70A, 0x9F92, 0xC70B, 0x9F93,
- 0xC70C, 0xC0AA, 0xC70D, 0x9F94, 0xC70E, 0x9F95, 0xC70F, 0x9F96,
- 0xC710, 0x9F97, 0xC711, 0x9F98, 0xC712, 0x9F99, 0xC713, 0x9F9A,
- 0xC714, 0xC0AB, 0xC715, 0xC0AC, 0xC716, 0x9F9B, 0xC717, 0xC0AD,
- 0xC718, 0x9F9C, 0xC719, 0xC0AE, 0xC71A, 0x9F9D, 0xC71B, 0x9F9E,
- 0xC71C, 0x9F9F, 0xC71D, 0x9FA0, 0xC71E, 0x9FA1, 0xC71F, 0x9FA2,
- 0xC720, 0xC0AF, 0xC721, 0xC0B0, 0xC722, 0x9FA3, 0xC723, 0x9FA4,
- 0xC724, 0xC0B1, 0xC725, 0x9FA5, 0xC726, 0x9FA6, 0xC727, 0x9FA7,
- 0xC728, 0xC0B2, 0xC729, 0x9FA8, 0xC72A, 0x9FA9, 0xC72B, 0x9FAA,
- 0xC72C, 0x9FAB, 0xC72D, 0x9FAC, 0xC72E, 0x9FAD, 0xC72F, 0x9FAE,
- 0xC730, 0xC0B3, 0xC731, 0xC0B4, 0xC732, 0x9FAF, 0xC733, 0xC0B5,
- 0xC734, 0x9FB0, 0xC735, 0xC0B6, 0xC736, 0x9FB1, 0xC737, 0xC0B7,
- 0xC738, 0x9FB2, 0xC739, 0x9FB3, 0xC73A, 0x9FB4, 0xC73B, 0x9FB5,
- 0xC73C, 0xC0B8, 0xC73D, 0xC0B9, 0xC73E, 0x9FB6, 0xC73F, 0x9FB7,
- 0xC740, 0xC0BA, 0xC741, 0x9FB8, 0xC742, 0x9FB9, 0xC743, 0x9FBA,
- 0xC744, 0xC0BB, 0xC745, 0x9FBB, 0xC746, 0x9FBC, 0xC747, 0x9FBD,
- 0xC748, 0x9FBE, 0xC749, 0x9FBF, 0xC74A, 0xC0BC, 0xC74B, 0x9FC0,
- 0xC74C, 0xC0BD, 0xC74D, 0xC0BE, 0xC74E, 0x9FC1, 0xC74F, 0xC0BF,
- 0xC750, 0x9FC2, 0xC751, 0xC0C0, 0xC752, 0xC0C1, 0xC753, 0xC0C2,
- 0xC754, 0xC0C3, 0xC755, 0xC0C4, 0xC756, 0xC0C5, 0xC757, 0xC0C6,
- 0xC758, 0xC0C7, 0xC759, 0x9FC3, 0xC75A, 0x9FC4, 0xC75B, 0x9FC5,
- 0xC75C, 0xC0C8, 0xC75D, 0x9FC6, 0xC75E, 0x9FC7, 0xC75F, 0x9FC8,
- 0xC760, 0xC0C9, 0xC761, 0x9FC9, 0xC762, 0x9FCA, 0xC763, 0x9FCB,
- 0xC764, 0x9FCC, 0xC765, 0x9FCD, 0xC766, 0x9FCE, 0xC767, 0x9FCF,
- 0xC768, 0xC0CA, 0xC769, 0x9FD0, 0xC76A, 0x9FD1, 0xC76B, 0xC0CB,
- 0xC76C, 0x9FD2, 0xC76D, 0x9FD3, 0xC76E, 0x9FD4, 0xC76F, 0x9FD5,
- 0xC770, 0x9FD6, 0xC771, 0x9FD7, 0xC772, 0x9FD8, 0xC773, 0x9FD9,
- 0xC774, 0xC0CC, 0xC775, 0xC0CD, 0xC776, 0x9FDA, 0xC777, 0x9FDB,
- 0xC778, 0xC0CE, 0xC779, 0x9FDC, 0xC77A, 0x9FDD, 0xC77B, 0x9FDE,
- 0xC77C, 0xC0CF, 0xC77D, 0xC0D0, 0xC77E, 0xC0D1, 0xC77F, 0x9FDF,
- 0xC780, 0x9FE0, 0xC781, 0x9FE1, 0xC782, 0x9FE2, 0xC783, 0xC0D2,
- 0xC784, 0xC0D3, 0xC785, 0xC0D4, 0xC786, 0x9FE3, 0xC787, 0xC0D5,
- 0xC788, 0xC0D6, 0xC789, 0xC0D7, 0xC78A, 0xC0D8, 0xC78B, 0x9FE4,
- 0xC78C, 0x9FE5, 0xC78D, 0x9FE6, 0xC78E, 0xC0D9, 0xC78F, 0x9FE7,
- 0xC790, 0xC0DA, 0xC791, 0xC0DB, 0xC792, 0x9FE8, 0xC793, 0x9FE9,
- 0xC794, 0xC0DC, 0xC795, 0x9FEA, 0xC796, 0xC0DD, 0xC797, 0xC0DE,
- 0xC798, 0xC0DF, 0xC799, 0x9FEB, 0xC79A, 0xC0E0, 0xC79B, 0x9FEC,
- 0xC79C, 0x9FED, 0xC79D, 0x9FEE, 0xC79E, 0x9FEF, 0xC79F, 0x9FF0,
- 0xC7A0, 0xC0E1, 0xC7A1, 0xC0E2, 0xC7A2, 0x9FF1, 0xC7A3, 0xC0E3,
- 0xC7A4, 0xC0E4, 0xC7A5, 0xC0E5, 0xC7A6, 0xC0E6, 0xC7A7, 0x9FF2,
- 0xC7A8, 0x9FF3, 0xC7A9, 0x9FF4, 0xC7AA, 0x9FF5, 0xC7AB, 0x9FF6,
- 0xC7AC, 0xC0E7, 0xC7AD, 0xC0E8, 0xC7AE, 0x9FF7, 0xC7AF, 0x9FF8,
- 0xC7B0, 0xC0E9, 0xC7B1, 0x9FF9, 0xC7B2, 0x9FFA, 0xC7B3, 0x9FFB,
- 0xC7B4, 0xC0EA, 0xC7B5, 0x9FFC, 0xC7B6, 0x9FFD, 0xC7B7, 0x9FFE,
- 0xC7B8, 0xA041, 0xC7B9, 0xA042, 0xC7BA, 0xA043, 0xC7BB, 0xA044,
- 0xC7BC, 0xC0EB, 0xC7BD, 0xC0EC, 0xC7BE, 0xA045, 0xC7BF, 0xC0ED,
- 0xC7C0, 0xC0EE, 0xC7C1, 0xC0EF, 0xC7C2, 0xA046, 0xC7C3, 0xA047,
- 0xC7C4, 0xA048, 0xC7C5, 0xA049, 0xC7C6, 0xA04A, 0xC7C7, 0xA04B,
- 0xC7C8, 0xC0F0, 0xC7C9, 0xC0F1, 0xC7CA, 0xA04C, 0xC7CB, 0xA04D,
- 0xC7CC, 0xC0F2, 0xC7CD, 0xA04E, 0xC7CE, 0xC0F3, 0xC7CF, 0xA04F,
- 0xC7D0, 0xC0F4, 0xC7D1, 0xA050, 0xC7D2, 0xA051, 0xC7D3, 0xA052,
- 0xC7D4, 0xA053, 0xC7D5, 0xA054, 0xC7D6, 0xA055, 0xC7D7, 0xA056,
- 0xC7D8, 0xC0F5, 0xC7D9, 0xA057, 0xC7DA, 0xA058, 0xC7DB, 0xA059,
- 0xC7DC, 0xA05A, 0xC7DD, 0xC0F6, 0xC7DE, 0xA061, 0xC7DF, 0xA062,
- 0xC7E0, 0xA063, 0xC7E1, 0xA064, 0xC7E2, 0xA065, 0xC7E3, 0xA066,
- 0xC7E4, 0xC0F7, 0xC7E5, 0xA067, 0xC7E6, 0xA068, 0xC7E7, 0xA069,
- 0xC7E8, 0xC0F8, 0xC7E9, 0xA06A, 0xC7EA, 0xA06B, 0xC7EB, 0xA06C,
- 0xC7EC, 0xC0F9, 0xC7ED, 0xA06D, 0xC7EE, 0xA06E, 0xC7EF, 0xA06F,
- 0xC7F0, 0xA070, 0xC7F1, 0xA071, 0xC7F2, 0xA072, 0xC7F3, 0xA073,
- 0xC7F4, 0xA074, 0xC7F5, 0xA075, 0xC7F6, 0xA076, 0xC7F7, 0xA077,
- 0xC7F8, 0xA078, 0xC7F9, 0xA079, 0xC7FA, 0xA07A, 0xC7FB, 0xA081,
- 0xC7FC, 0xA082, 0xC7FD, 0xA083, 0xC7FE, 0xA084, 0xC7FF, 0xA085,
- 0xC800, 0xC0FA, 0xC801, 0xC0FB, 0xC802, 0xA086, 0xC803, 0xA087,
- 0xC804, 0xC0FC, 0xC805, 0xA088, 0xC806, 0xA089, 0xC807, 0xA08A,
- 0xC808, 0xC0FD, 0xC809, 0xA08B, 0xC80A, 0xC0FE, 0xC80B, 0xA08C,
- 0xC80C, 0xA08D, 0xC80D, 0xA08E, 0xC80E, 0xA08F, 0xC80F, 0xA090,
- 0xC810, 0xC1A1, 0xC811, 0xC1A2, 0xC812, 0xA091, 0xC813, 0xC1A3,
- 0xC814, 0xA092, 0xC815, 0xC1A4, 0xC816, 0xC1A5, 0xC817, 0xA093,
- 0xC818, 0xA094, 0xC819, 0xA095, 0xC81A, 0xA096, 0xC81B, 0xA097,
- 0xC81C, 0xC1A6, 0xC81D, 0xC1A7, 0xC81E, 0xA098, 0xC81F, 0xA099,
- 0xC820, 0xC1A8, 0xC821, 0xA09A, 0xC822, 0xA09B, 0xC823, 0xA09C,
- 0xC824, 0xC1A9, 0xC825, 0xA09D, 0xC826, 0xA09E, 0xC827, 0xA09F,
- 0xC828, 0xA0A0, 0xC829, 0xA0A1, 0xC82A, 0xA0A2, 0xC82B, 0xA0A3,
- 0xC82C, 0xC1AA, 0xC82D, 0xC1AB, 0xC82E, 0xA0A4, 0xC82F, 0xC1AC,
- 0xC830, 0xA0A5, 0xC831, 0xC1AD, 0xC832, 0xA0A6, 0xC833, 0xA0A7,
- 0xC834, 0xA0A8, 0xC835, 0xA0A9, 0xC836, 0xA0AA, 0xC837, 0xA0AB,
- 0xC838, 0xC1AE, 0xC839, 0xA0AC, 0xC83A, 0xA0AD, 0xC83B, 0xA0AE,
- 0xC83C, 0xC1AF, 0xC83D, 0xA0AF, 0xC83E, 0xA0B0, 0xC83F, 0xA0B1,
- 0xC840, 0xC1B0, 0xC841, 0xA0B2, 0xC842, 0xA0B3, 0xC843, 0xA0B4,
- 0xC844, 0xA0B5, 0xC845, 0xA0B6, 0xC846, 0xA0B7, 0xC847, 0xA0B8,
- 0xC848, 0xC1B1, 0xC849, 0xC1B2, 0xC84A, 0xA0B9, 0xC84B, 0xA0BA,
- 0xC84C, 0xC1B3, 0xC84D, 0xC1B4, 0xC84E, 0xA0BB, 0xC84F, 0xA0BC,
- 0xC850, 0xA0BD, 0xC851, 0xA0BE, 0xC852, 0xA0BF, 0xC853, 0xA0C0,
- 0xC854, 0xC1B5, 0xC855, 0xA0C1, 0xC856, 0xA0C2, 0xC857, 0xA0C3,
- 0xC858, 0xA0C4, 0xC859, 0xA0C5, 0xC85A, 0xA0C6, 0xC85B, 0xA0C7,
- 0xC85C, 0xA0C8, 0xC85D, 0xA0C9, 0xC85E, 0xA0CA, 0xC85F, 0xA0CB,
- 0xC860, 0xA0CC, 0xC861, 0xA0CD, 0xC862, 0xA0CE, 0xC863, 0xA0CF,
- 0xC864, 0xA0D0, 0xC865, 0xA0D1, 0xC866, 0xA0D2, 0xC867, 0xA0D3,
- 0xC868, 0xA0D4, 0xC869, 0xA0D5, 0xC86A, 0xA0D6, 0xC86B, 0xA0D7,
- 0xC86C, 0xA0D8, 0xC86D, 0xA0D9, 0xC86E, 0xA0DA, 0xC86F, 0xA0DB,
- 0xC870, 0xC1B6, 0xC871, 0xC1B7, 0xC872, 0xA0DC, 0xC873, 0xA0DD,
- 0xC874, 0xC1B8, 0xC875, 0xA0DE, 0xC876, 0xA0DF, 0xC877, 0xA0E0,
- 0xC878, 0xC1B9, 0xC879, 0xA0E1, 0xC87A, 0xC1BA, 0xC87B, 0xA0E2,
- 0xC87C, 0xA0E3, 0xC87D, 0xA0E4, 0xC87E, 0xA0E5, 0xC87F, 0xA0E6,
- 0xC880, 0xC1BB, 0xC881, 0xC1BC, 0xC882, 0xA0E7, 0xC883, 0xC1BD,
- 0xC884, 0xA0E8, 0xC885, 0xC1BE, 0xC886, 0xC1BF, 0xC887, 0xC1C0,
- 0xC888, 0xA0E9, 0xC889, 0xA0EA, 0xC88A, 0xA0EB, 0xC88B, 0xC1C1,
- 0xC88C, 0xC1C2, 0xC88D, 0xC1C3, 0xC88E, 0xA0EC, 0xC88F, 0xA0ED,
- 0xC890, 0xA0EE, 0xC891, 0xA0EF, 0xC892, 0xA0F0, 0xC893, 0xA0F1,
- 0xC894, 0xC1C4, 0xC895, 0xA0F2, 0xC896, 0xA0F3, 0xC897, 0xA0F4,
- 0xC898, 0xA0F5, 0xC899, 0xA0F6, 0xC89A, 0xA0F7, 0xC89B, 0xA0F8,
- 0xC89C, 0xA0F9, 0xC89D, 0xC1C5, 0xC89E, 0xA0FA, 0xC89F, 0xC1C6,
- 0xC8A0, 0xA0FB, 0xC8A1, 0xC1C7, 0xC8A2, 0xA0FC, 0xC8A3, 0xA0FD,
- 0xC8A4, 0xA0FE, 0xC8A5, 0xA141, 0xC8A6, 0xA142, 0xC8A7, 0xA143,
- 0xC8A8, 0xC1C8, 0xC8A9, 0xA144, 0xC8AA, 0xA145, 0xC8AB, 0xA146,
- 0xC8AC, 0xA147, 0xC8AD, 0xA148, 0xC8AE, 0xA149, 0xC8AF, 0xA14A,
- 0xC8B0, 0xA14B, 0xC8B1, 0xA14C, 0xC8B2, 0xA14D, 0xC8B3, 0xA14E,
- 0xC8B4, 0xA14F, 0xC8B5, 0xA150, 0xC8B6, 0xA151, 0xC8B7, 0xA152,
- 0xC8B8, 0xA153, 0xC8B9, 0xA154, 0xC8BA, 0xA155, 0xC8BB, 0xA156,
- 0xC8BC, 0xC1C9, 0xC8BD, 0xC1CA, 0xC8BE, 0xA157, 0xC8BF, 0xA158,
- 0xC8C0, 0xA159, 0xC8C1, 0xA15A, 0xC8C2, 0xA161, 0xC8C3, 0xA162,
- 0xC8C4, 0xC1CB, 0xC8C5, 0xA163, 0xC8C6, 0xA164, 0xC8C7, 0xA165,
- 0xC8C8, 0xC1CC, 0xC8C9, 0xA166, 0xC8CA, 0xA167, 0xC8CB, 0xA168,
- 0xC8CC, 0xC1CD, 0xC8CD, 0xA169, 0xC8CE, 0xA16A, 0xC8CF, 0xA16B,
- 0xC8D0, 0xA16C, 0xC8D1, 0xA16D, 0xC8D2, 0xA16E, 0xC8D3, 0xA16F,
- 0xC8D4, 0xC1CE, 0xC8D5, 0xC1CF, 0xC8D6, 0xA170, 0xC8D7, 0xC1D0,
- 0xC8D8, 0xA171, 0xC8D9, 0xC1D1, 0xC8DA, 0xA172, 0xC8DB, 0xA173,
- 0xC8DC, 0xA174, 0xC8DD, 0xA175, 0xC8DE, 0xA176, 0xC8DF, 0xA177,
- 0xC8E0, 0xC1D2, 0xC8E1, 0xC1D3, 0xC8E2, 0xA178, 0xC8E3, 0xA179,
- 0xC8E4, 0xC1D4, 0xC8E5, 0xA17A, 0xC8E6, 0xA181, 0xC8E7, 0xA182,
- 0xC8E8, 0xA183, 0xC8E9, 0xA184, 0xC8EA, 0xA185, 0xC8EB, 0xA186,
- 0xC8EC, 0xA187, 0xC8ED, 0xA188, 0xC8EE, 0xA189, 0xC8EF, 0xA18A,
- 0xC8F0, 0xA18B, 0xC8F1, 0xA18C, 0xC8F2, 0xA18D, 0xC8F3, 0xA18E,
- 0xC8F4, 0xA18F, 0xC8F5, 0xC1D5, 0xC8F6, 0xA190, 0xC8F7, 0xA191,
- 0xC8F8, 0xA192, 0xC8F9, 0xA193, 0xC8FA, 0xA194, 0xC8FB, 0xA195,
- 0xC8FC, 0xC1D6, 0xC8FD, 0xC1D7, 0xC8FE, 0xA196, 0xC8FF, 0xA197,
- 0xC900, 0xC1D8, 0xC901, 0xA198, 0xC902, 0xA199, 0xC903, 0xA19A,
- 0xC904, 0xC1D9, 0xC905, 0xC1DA, 0xC906, 0xC1DB, 0xC907, 0xA19B,
- 0xC908, 0xA19C, 0xC909, 0xA19D, 0xC90A, 0xA19E, 0xC90B, 0xA19F,
- 0xC90C, 0xC1DC, 0xC90D, 0xC1DD, 0xC90E, 0xA1A0, 0xC90F, 0xC1DE,
- 0xC910, 0xA241, 0xC911, 0xC1DF, 0xC912, 0xA242, 0xC913, 0xA243,
- 0xC914, 0xA244, 0xC915, 0xA245, 0xC916, 0xA246, 0xC917, 0xA247,
- 0xC918, 0xC1E0, 0xC919, 0xA248, 0xC91A, 0xA249, 0xC91B, 0xA24A,
- 0xC91C, 0xA24B, 0xC91D, 0xA24C, 0xC91E, 0xA24D, 0xC91F, 0xA24E,
- 0xC920, 0xA24F, 0xC921, 0xA250, 0xC922, 0xA251, 0xC923, 0xA252,
- 0xC924, 0xA253, 0xC925, 0xA254, 0xC926, 0xA255, 0xC927, 0xA256,
- 0xC928, 0xA257, 0xC929, 0xA258, 0xC92A, 0xA259, 0xC92B, 0xA25A,
- 0xC92C, 0xC1E1, 0xC92D, 0xA261, 0xC92E, 0xA262, 0xC92F, 0xA263,
- 0xC930, 0xA264, 0xC931, 0xA265, 0xC932, 0xA266, 0xC933, 0xA267,
- 0xC934, 0xC1E2, 0xC935, 0xA268, 0xC936, 0xA269, 0xC937, 0xA26A,
- 0xC938, 0xA26B, 0xC939, 0xA26C, 0xC93A, 0xA26D, 0xC93B, 0xA26E,
- 0xC93C, 0xA26F, 0xC93D, 0xA270, 0xC93E, 0xA271, 0xC93F, 0xA272,
- 0xC940, 0xA273, 0xC941, 0xA274, 0xC942, 0xA275, 0xC943, 0xA276,
- 0xC944, 0xA277, 0xC945, 0xA278, 0xC946, 0xA279, 0xC947, 0xA27A,
- 0xC948, 0xA281, 0xC949, 0xA282, 0xC94A, 0xA283, 0xC94B, 0xA284,
- 0xC94C, 0xA285, 0xC94D, 0xA286, 0xC94E, 0xA287, 0xC94F, 0xA288,
- 0xC950, 0xC1E3, 0xC951, 0xC1E4, 0xC952, 0xA289, 0xC953, 0xA28A,
- 0xC954, 0xC1E5, 0xC955, 0xA28B, 0xC956, 0xA28C, 0xC957, 0xA28D,
- 0xC958, 0xC1E6, 0xC959, 0xA28E, 0xC95A, 0xA28F, 0xC95B, 0xA290,
- 0xC95C, 0xA291, 0xC95D, 0xA292, 0xC95E, 0xA293, 0xC95F, 0xA294,
- 0xC960, 0xC1E7, 0xC961, 0xC1E8, 0xC962, 0xA295, 0xC963, 0xC1E9,
- 0xC964, 0xA296, 0xC965, 0xA297, 0xC966, 0xA298, 0xC967, 0xA299,
- 0xC968, 0xA29A, 0xC969, 0xA29B, 0xC96A, 0xA29C, 0xC96B, 0xA29D,
- 0xC96C, 0xC1EA, 0xC96D, 0xA29E, 0xC96E, 0xA29F, 0xC96F, 0xA2A0,
- 0xC970, 0xC1EB, 0xC971, 0xA341, 0xC972, 0xA342, 0xC973, 0xA343,
- 0xC974, 0xC1EC, 0xC975, 0xA344, 0xC976, 0xA345, 0xC977, 0xA346,
- 0xC978, 0xA347, 0xC979, 0xA348, 0xC97A, 0xA349, 0xC97B, 0xA34A,
- 0xC97C, 0xC1ED, 0xC97D, 0xA34B, 0xC97E, 0xA34C, 0xC97F, 0xA34D,
- 0xC980, 0xA34E, 0xC981, 0xA34F, 0xC982, 0xA350, 0xC983, 0xA351,
- 0xC984, 0xA352, 0xC985, 0xA353, 0xC986, 0xA354, 0xC987, 0xA355,
- 0xC988, 0xC1EE, 0xC989, 0xC1EF, 0xC98A, 0xA356, 0xC98B, 0xA357,
- 0xC98C, 0xC1F0, 0xC98D, 0xA358, 0xC98E, 0xA359, 0xC98F, 0xA35A,
- 0xC990, 0xC1F1, 0xC991, 0xA361, 0xC992, 0xA362, 0xC993, 0xA363,
- 0xC994, 0xA364, 0xC995, 0xA365, 0xC996, 0xA366, 0xC997, 0xA367,
- 0xC998, 0xC1F2, 0xC999, 0xC1F3, 0xC99A, 0xA368, 0xC99B, 0xC1F4,
- 0xC99C, 0xA369, 0xC99D, 0xC1F5, 0xC99E, 0xA36A, 0xC99F, 0xA36B,
- 0xC9A0, 0xA36C, 0xC9A1, 0xA36D, 0xC9A2, 0xA36E, 0xC9A3, 0xA36F,
- 0xC9A4, 0xA370, 0xC9A5, 0xA371, 0xC9A6, 0xA372, 0xC9A7, 0xA373,
- 0xC9A8, 0xA374, 0xC9A9, 0xA375, 0xC9AA, 0xA376, 0xC9AB, 0xA377,
- 0xC9AC, 0xA378, 0xC9AD, 0xA379, 0xC9AE, 0xA37A, 0xC9AF, 0xA381,
- 0xC9B0, 0xA382, 0xC9B1, 0xA383, 0xC9B2, 0xA384, 0xC9B3, 0xA385,
- 0xC9B4, 0xA386, 0xC9B5, 0xA387, 0xC9B6, 0xA388, 0xC9B7, 0xA389,
- 0xC9B8, 0xA38A, 0xC9B9, 0xA38B, 0xC9BA, 0xA38C, 0xC9BB, 0xA38D,
- 0xC9BC, 0xA38E, 0xC9BD, 0xA38F, 0xC9BE, 0xA390, 0xC9BF, 0xA391,
- 0xC9C0, 0xC1F6, 0xC9C1, 0xC1F7, 0xC9C2, 0xA392, 0xC9C3, 0xA393,
- 0xC9C4, 0xC1F8, 0xC9C5, 0xA394, 0xC9C6, 0xA395, 0xC9C7, 0xC1F9,
- 0xC9C8, 0xC1FA, 0xC9C9, 0xA396, 0xC9CA, 0xC1FB, 0xC9CB, 0xA397,
- 0xC9CC, 0xA398, 0xC9CD, 0xA399, 0xC9CE, 0xA39A, 0xC9CF, 0xA39B,
- 0xC9D0, 0xC1FC, 0xC9D1, 0xC1FD, 0xC9D2, 0xA39C, 0xC9D3, 0xC1FE,
- 0xC9D4, 0xA39D, 0xC9D5, 0xC2A1, 0xC9D6, 0xC2A2, 0xC9D7, 0xA39E,
- 0xC9D8, 0xA39F, 0xC9D9, 0xC2A3, 0xC9DA, 0xC2A4, 0xC9DB, 0xA3A0,
- 0xC9DC, 0xC2A5, 0xC9DD, 0xC2A6, 0xC9DE, 0xA441, 0xC9DF, 0xA442,
- 0xC9E0, 0xC2A7, 0xC9E1, 0xA443, 0xC9E2, 0xC2A8, 0xC9E3, 0xA444,
- 0xC9E4, 0xC2A9, 0xC9E5, 0xA445, 0xC9E6, 0xA446, 0xC9E7, 0xC2AA,
- 0xC9E8, 0xA447, 0xC9E9, 0xA448, 0xC9EA, 0xA449, 0xC9EB, 0xA44A,
- 0xC9EC, 0xC2AB, 0xC9ED, 0xC2AC, 0xC9EE, 0xA44B, 0xC9EF, 0xC2AD,
- 0xC9F0, 0xC2AE, 0xC9F1, 0xC2AF, 0xC9F2, 0xA44C, 0xC9F3, 0xA44D,
- 0xC9F4, 0xA44E, 0xC9F5, 0xA44F, 0xC9F6, 0xA450, 0xC9F7, 0xA451,
- 0xC9F8, 0xC2B0, 0xC9F9, 0xC2B1, 0xC9FA, 0xA452, 0xC9FB, 0xA453,
- 0xC9FC, 0xC2B2, 0xC9FD, 0xA454, 0xC9FE, 0xA455, 0xC9FF, 0xA456,
- 0xCA00, 0xC2B3, 0xCA01, 0xA457, 0xCA02, 0xA458, 0xCA03, 0xA459,
- 0xCA04, 0xA45A, 0xCA05, 0xA461, 0xCA06, 0xA462, 0xCA07, 0xA463,
- 0xCA08, 0xC2B4, 0xCA09, 0xC2B5, 0xCA0A, 0xA464, 0xCA0B, 0xC2B6,
- 0xCA0C, 0xC2B7, 0xCA0D, 0xC2B8, 0xCA0E, 0xA465, 0xCA0F, 0xA466,
- 0xCA10, 0xA467, 0xCA11, 0xA468, 0xCA12, 0xA469, 0xCA13, 0xA46A,
- 0xCA14, 0xC2B9, 0xCA15, 0xA46B, 0xCA16, 0xA46C, 0xCA17, 0xA46D,
- 0xCA18, 0xC2BA, 0xCA19, 0xA46E, 0xCA1A, 0xA46F, 0xCA1B, 0xA470,
- 0xCA1C, 0xA471, 0xCA1D, 0xA472, 0xCA1E, 0xA473, 0xCA1F, 0xA474,
- 0xCA20, 0xA475, 0xCA21, 0xA476, 0xCA22, 0xA477, 0xCA23, 0xA478,
- 0xCA24, 0xA479, 0xCA25, 0xA47A, 0xCA26, 0xA481, 0xCA27, 0xA482,
- 0xCA28, 0xA483, 0xCA29, 0xC2BB, 0xCA2A, 0xA484, 0xCA2B, 0xA485,
- 0xCA2C, 0xA486, 0xCA2D, 0xA487, 0xCA2E, 0xA488, 0xCA2F, 0xA489,
- 0xCA30, 0xA48A, 0xCA31, 0xA48B, 0xCA32, 0xA48C, 0xCA33, 0xA48D,
- 0xCA34, 0xA48E, 0xCA35, 0xA48F, 0xCA36, 0xA490, 0xCA37, 0xA491,
- 0xCA38, 0xA492, 0xCA39, 0xA493, 0xCA3A, 0xA494, 0xCA3B, 0xA495,
- 0xCA3C, 0xA496, 0xCA3D, 0xA497, 0xCA3E, 0xA498, 0xCA3F, 0xA499,
- 0xCA40, 0xA49A, 0xCA41, 0xA49B, 0xCA42, 0xA49C, 0xCA43, 0xA49D,
- 0xCA44, 0xA49E, 0xCA45, 0xA49F, 0xCA46, 0xA4A0, 0xCA47, 0xA541,
- 0xCA48, 0xA542, 0xCA49, 0xA543, 0xCA4A, 0xA544, 0xCA4B, 0xA545,
- 0xCA4C, 0xC2BC, 0xCA4D, 0xC2BD, 0xCA4E, 0xA546, 0xCA4F, 0xA547,
- 0xCA50, 0xC2BE, 0xCA51, 0xA548, 0xCA52, 0xA549, 0xCA53, 0xA54A,
- 0xCA54, 0xC2BF, 0xCA55, 0xA54B, 0xCA56, 0xA54C, 0xCA57, 0xA54D,
- 0xCA58, 0xA54E, 0xCA59, 0xA54F, 0xCA5A, 0xA550, 0xCA5B, 0xA551,
- 0xCA5C, 0xC2C0, 0xCA5D, 0xC2C1, 0xCA5E, 0xA552, 0xCA5F, 0xC2C2,
- 0xCA60, 0xC2C3, 0xCA61, 0xC2C4, 0xCA62, 0xA553, 0xCA63, 0xA554,
- 0xCA64, 0xA555, 0xCA65, 0xA556, 0xCA66, 0xA557, 0xCA67, 0xA558,
- 0xCA68, 0xC2C5, 0xCA69, 0xA559, 0xCA6A, 0xA55A, 0xCA6B, 0xA561,
- 0xCA6C, 0xA562, 0xCA6D, 0xA563, 0xCA6E, 0xA564, 0xCA6F, 0xA565,
- 0xCA70, 0xA566, 0xCA71, 0xA567, 0xCA72, 0xA568, 0xCA73, 0xA569,
- 0xCA74, 0xA56A, 0xCA75, 0xA56B, 0xCA76, 0xA56C, 0xCA77, 0xA56D,
- 0xCA78, 0xA56E, 0xCA79, 0xA56F, 0xCA7A, 0xA570, 0xCA7B, 0xA571,
- 0xCA7C, 0xA572, 0xCA7D, 0xC2C6, 0xCA7E, 0xA573, 0xCA7F, 0xA574,
- 0xCA80, 0xA575, 0xCA81, 0xA576, 0xCA82, 0xA577, 0xCA83, 0xA578,
- 0xCA84, 0xC2C7, 0xCA85, 0xA579, 0xCA86, 0xA57A, 0xCA87, 0xA581,
- 0xCA88, 0xA582, 0xCA89, 0xA583, 0xCA8A, 0xA584, 0xCA8B, 0xA585,
- 0xCA8C, 0xA586, 0xCA8D, 0xA587, 0xCA8E, 0xA588, 0xCA8F, 0xA589,
- 0xCA90, 0xA58A, 0xCA91, 0xA58B, 0xCA92, 0xA58C, 0xCA93, 0xA58D,
- 0xCA94, 0xA58E, 0xCA95, 0xA58F, 0xCA96, 0xA590, 0xCA97, 0xA591,
- 0xCA98, 0xC2C8, 0xCA99, 0xA592, 0xCA9A, 0xA593, 0xCA9B, 0xA594,
- 0xCA9C, 0xA595, 0xCA9D, 0xA596, 0xCA9E, 0xA597, 0xCA9F, 0xA598,
- 0xCAA0, 0xA599, 0xCAA1, 0xA59A, 0xCAA2, 0xA59B, 0xCAA3, 0xA59C,
- 0xCAA4, 0xA59D, 0xCAA5, 0xA59E, 0xCAA6, 0xA59F, 0xCAA7, 0xA5A0,
- 0xCAA8, 0xA641, 0xCAA9, 0xA642, 0xCAAA, 0xA643, 0xCAAB, 0xA644,
- 0xCAAC, 0xA645, 0xCAAD, 0xA646, 0xCAAE, 0xA647, 0xCAAF, 0xA648,
- 0xCAB0, 0xA649, 0xCAB1, 0xA64A, 0xCAB2, 0xA64B, 0xCAB3, 0xA64C,
- 0xCAB4, 0xA64D, 0xCAB5, 0xA64E, 0xCAB6, 0xA64F, 0xCAB7, 0xA650,
- 0xCAB8, 0xA651, 0xCAB9, 0xA652, 0xCABA, 0xA653, 0xCABB, 0xA654,
- 0xCABC, 0xC2C9, 0xCABD, 0xC2CA, 0xCABE, 0xA655, 0xCABF, 0xA656,
- 0xCAC0, 0xC2CB, 0xCAC1, 0xA657, 0xCAC2, 0xA658, 0xCAC3, 0xA659,
- 0xCAC4, 0xC2CC, 0xCAC5, 0xA65A, 0xCAC6, 0xA661, 0xCAC7, 0xA662,
- 0xCAC8, 0xA663, 0xCAC9, 0xA664, 0xCACA, 0xA665, 0xCACB, 0xA666,
- 0xCACC, 0xC2CD, 0xCACD, 0xC2CE, 0xCACE, 0xA667, 0xCACF, 0xC2CF,
- 0xCAD0, 0xA668, 0xCAD1, 0xC2D0, 0xCAD2, 0xA669, 0xCAD3, 0xC2D1,
- 0xCAD4, 0xA66A, 0xCAD5, 0xA66B, 0xCAD6, 0xA66C, 0xCAD7, 0xA66D,
- 0xCAD8, 0xC2D2, 0xCAD9, 0xC2D3, 0xCADA, 0xA66E, 0xCADB, 0xA66F,
- 0xCADC, 0xA670, 0xCADD, 0xA671, 0xCADE, 0xA672, 0xCADF, 0xA673,
- 0xCAE0, 0xC2D4, 0xCAE1, 0xA674, 0xCAE2, 0xA675, 0xCAE3, 0xA676,
- 0xCAE4, 0xA677, 0xCAE5, 0xA678, 0xCAE6, 0xA679, 0xCAE7, 0xA67A,
- 0xCAE8, 0xA681, 0xCAE9, 0xA682, 0xCAEA, 0xA683, 0xCAEB, 0xA684,
- 0xCAEC, 0xC2D5, 0xCAED, 0xA685, 0xCAEE, 0xA686, 0xCAEF, 0xA687,
- 0xCAF0, 0xA688, 0xCAF1, 0xA689, 0xCAF2, 0xA68A, 0xCAF3, 0xA68B,
- 0xCAF4, 0xC2D6, 0xCAF5, 0xA68C, 0xCAF6, 0xA68D, 0xCAF7, 0xA68E,
- 0xCAF8, 0xA68F, 0xCAF9, 0xA690, 0xCAFA, 0xA691, 0xCAFB, 0xA692,
- 0xCAFC, 0xA693, 0xCAFD, 0xA694, 0xCAFE, 0xA695, 0xCAFF, 0xA696,
- 0xCB00, 0xA697, 0xCB01, 0xA698, 0xCB02, 0xA699, 0xCB03, 0xA69A,
- 0xCB04, 0xA69B, 0xCB05, 0xA69C, 0xCB06, 0xA69D, 0xCB07, 0xA69E,
- 0xCB08, 0xC2D7, 0xCB09, 0xA69F, 0xCB0A, 0xA6A0, 0xCB0B, 0xA741,
- 0xCB0C, 0xA742, 0xCB0D, 0xA743, 0xCB0E, 0xA744, 0xCB0F, 0xA745,
- 0xCB10, 0xC2D8, 0xCB11, 0xA746, 0xCB12, 0xA747, 0xCB13, 0xA748,
- 0xCB14, 0xC2D9, 0xCB15, 0xA749, 0xCB16, 0xA74A, 0xCB17, 0xA74B,
- 0xCB18, 0xC2DA, 0xCB19, 0xA74C, 0xCB1A, 0xA74D, 0xCB1B, 0xA74E,
- 0xCB1C, 0xA74F, 0xCB1D, 0xA750, 0xCB1E, 0xA751, 0xCB1F, 0xA752,
- 0xCB20, 0xC2DB, 0xCB21, 0xC2DC, 0xCB22, 0xA753, 0xCB23, 0xA754,
- 0xCB24, 0xA755, 0xCB25, 0xA756, 0xCB26, 0xA757, 0xCB27, 0xA758,
- 0xCB28, 0xA759, 0xCB29, 0xA75A, 0xCB2A, 0xA761, 0xCB2B, 0xA762,
- 0xCB2C, 0xA763, 0xCB2D, 0xA764, 0xCB2E, 0xA765, 0xCB2F, 0xA766,
- 0xCB30, 0xA767, 0xCB31, 0xA768, 0xCB32, 0xA769, 0xCB33, 0xA76A,
- 0xCB34, 0xA76B, 0xCB35, 0xA76C, 0xCB36, 0xA76D, 0xCB37, 0xA76E,
- 0xCB38, 0xA76F, 0xCB39, 0xA770, 0xCB3A, 0xA771, 0xCB3B, 0xA772,
- 0xCB3C, 0xA773, 0xCB3D, 0xA774, 0xCB3E, 0xA775, 0xCB3F, 0xA776,
- 0xCB40, 0xA777, 0xCB41, 0xC2DD, 0xCB42, 0xA778, 0xCB43, 0xA779,
- 0xCB44, 0xA77A, 0xCB45, 0xA781, 0xCB46, 0xA782, 0xCB47, 0xA783,
- 0xCB48, 0xC2DE, 0xCB49, 0xC2DF, 0xCB4A, 0xA784, 0xCB4B, 0xA785,
- 0xCB4C, 0xC2E0, 0xCB4D, 0xA786, 0xCB4E, 0xA787, 0xCB4F, 0xA788,
- 0xCB50, 0xC2E1, 0xCB51, 0xA789, 0xCB52, 0xA78A, 0xCB53, 0xA78B,
- 0xCB54, 0xA78C, 0xCB55, 0xA78D, 0xCB56, 0xA78E, 0xCB57, 0xA78F,
- 0xCB58, 0xC2E2, 0xCB59, 0xC2E3, 0xCB5A, 0xA790, 0xCB5B, 0xA791,
- 0xCB5C, 0xA792, 0xCB5D, 0xC2E4, 0xCB5E, 0xA793, 0xCB5F, 0xA794,
- 0xCB60, 0xA795, 0xCB61, 0xA796, 0xCB62, 0xA797, 0xCB63, 0xA798,
- 0xCB64, 0xC2E5, 0xCB65, 0xA799, 0xCB66, 0xA79A, 0xCB67, 0xA79B,
- 0xCB68, 0xA79C, 0xCB69, 0xA79D, 0xCB6A, 0xA79E, 0xCB6B, 0xA79F,
- 0xCB6C, 0xA7A0, 0xCB6D, 0xA841, 0xCB6E, 0xA842, 0xCB6F, 0xA843,
- 0xCB70, 0xA844, 0xCB71, 0xA845, 0xCB72, 0xA846, 0xCB73, 0xA847,
- 0xCB74, 0xA848, 0xCB75, 0xA849, 0xCB76, 0xA84A, 0xCB77, 0xA84B,
- 0xCB78, 0xC2E6, 0xCB79, 0xC2E7, 0xCB7A, 0xA84C, 0xCB7B, 0xA84D,
- 0xCB7C, 0xA84E, 0xCB7D, 0xA84F, 0xCB7E, 0xA850, 0xCB7F, 0xA851,
- 0xCB80, 0xA852, 0xCB81, 0xA853, 0xCB82, 0xA854, 0xCB83, 0xA855,
- 0xCB84, 0xA856, 0xCB85, 0xA857, 0xCB86, 0xA858, 0xCB87, 0xA859,
- 0xCB88, 0xA85A, 0xCB89, 0xA861, 0xCB8A, 0xA862, 0xCB8B, 0xA863,
- 0xCB8C, 0xA864, 0xCB8D, 0xA865, 0xCB8E, 0xA866, 0xCB8F, 0xA867,
- 0xCB90, 0xA868, 0xCB91, 0xA869, 0xCB92, 0xA86A, 0xCB93, 0xA86B,
- 0xCB94, 0xA86C, 0xCB95, 0xA86D, 0xCB96, 0xA86E, 0xCB97, 0xA86F,
- 0xCB98, 0xA870, 0xCB99, 0xA871, 0xCB9A, 0xA872, 0xCB9B, 0xA873,
- 0xCB9C, 0xC2E8, 0xCB9D, 0xA874, 0xCB9E, 0xA875, 0xCB9F, 0xA876,
- 0xCBA0, 0xA877, 0xCBA1, 0xA878, 0xCBA2, 0xA879, 0xCBA3, 0xA87A,
- 0xCBA4, 0xA881, 0xCBA5, 0xA882, 0xCBA6, 0xA883, 0xCBA7, 0xA884,
- 0xCBA8, 0xA885, 0xCBA9, 0xA886, 0xCBAA, 0xA887, 0xCBAB, 0xA888,
- 0xCBAC, 0xA889, 0xCBAD, 0xA88A, 0xCBAE, 0xA88B, 0xCBAF, 0xA88C,
- 0xCBB0, 0xA88D, 0xCBB1, 0xA88E, 0xCBB2, 0xA88F, 0xCBB3, 0xA890,
- 0xCBB4, 0xA891, 0xCBB5, 0xA892, 0xCBB6, 0xA893, 0xCBB7, 0xA894,
- 0xCBB8, 0xC2E9, 0xCBB9, 0xA895, 0xCBBA, 0xA896, 0xCBBB, 0xA897,
- 0xCBBC, 0xA898, 0xCBBD, 0xA899, 0xCBBE, 0xA89A, 0xCBBF, 0xA89B,
- 0xCBC0, 0xA89C, 0xCBC1, 0xA89D, 0xCBC2, 0xA89E, 0xCBC3, 0xA89F,
- 0xCBC4, 0xA8A0, 0xCBC5, 0xA941, 0xCBC6, 0xA942, 0xCBC7, 0xA943,
- 0xCBC8, 0xA944, 0xCBC9, 0xA945, 0xCBCA, 0xA946, 0xCBCB, 0xA947,
- 0xCBCC, 0xA948, 0xCBCD, 0xA949, 0xCBCE, 0xA94A, 0xCBCF, 0xA94B,
- 0xCBD0, 0xA94C, 0xCBD1, 0xA94D, 0xCBD2, 0xA94E, 0xCBD3, 0xA94F,
- 0xCBD4, 0xC2EA, 0xCBD5, 0xA950, 0xCBD6, 0xA951, 0xCBD7, 0xA952,
- 0xCBD8, 0xA953, 0xCBD9, 0xA954, 0xCBDA, 0xA955, 0xCBDB, 0xA956,
- 0xCBDC, 0xA957, 0xCBDD, 0xA958, 0xCBDE, 0xA959, 0xCBDF, 0xA95A,
- 0xCBE0, 0xA961, 0xCBE1, 0xA962, 0xCBE2, 0xA963, 0xCBE3, 0xA964,
- 0xCBE4, 0xC2EB, 0xCBE5, 0xA965, 0xCBE6, 0xA966, 0xCBE7, 0xC2EC,
- 0xCBE8, 0xA967, 0xCBE9, 0xC2ED, 0xCBEA, 0xA968, 0xCBEB, 0xA969,
- 0xCBEC, 0xA96A, 0xCBED, 0xA96B, 0xCBEE, 0xA96C, 0xCBEF, 0xA96D,
- 0xCBF0, 0xA96E, 0xCBF1, 0xA96F, 0xCBF2, 0xA970, 0xCBF3, 0xA971,
- 0xCBF4, 0xA972, 0xCBF5, 0xA973, 0xCBF6, 0xA974, 0xCBF7, 0xA975,
- 0xCBF8, 0xA976, 0xCBF9, 0xA977, 0xCBFA, 0xA978, 0xCBFB, 0xA979,
- 0xCBFC, 0xA97A, 0xCBFD, 0xA981, 0xCBFE, 0xA982, 0xCBFF, 0xA983,
- 0xCC00, 0xA984, 0xCC01, 0xA985, 0xCC02, 0xA986, 0xCC03, 0xA987,
- 0xCC04, 0xA988, 0xCC05, 0xA989, 0xCC06, 0xA98A, 0xCC07, 0xA98B,
- 0xCC08, 0xA98C, 0xCC09, 0xA98D, 0xCC0A, 0xA98E, 0xCC0B, 0xA98F,
- 0xCC0C, 0xC2EE, 0xCC0D, 0xC2EF, 0xCC0E, 0xA990, 0xCC0F, 0xA991,
- 0xCC10, 0xC2F0, 0xCC11, 0xA992, 0xCC12, 0xA993, 0xCC13, 0xA994,
- 0xCC14, 0xC2F1, 0xCC15, 0xA995, 0xCC16, 0xA996, 0xCC17, 0xA997,
- 0xCC18, 0xA998, 0xCC19, 0xA999, 0xCC1A, 0xA99A, 0xCC1B, 0xA99B,
- 0xCC1C, 0xC2F2, 0xCC1D, 0xC2F3, 0xCC1E, 0xA99C, 0xCC1F, 0xA99D,
- 0xCC20, 0xA99E, 0xCC21, 0xC2F4, 0xCC22, 0xC2F5, 0xCC23, 0xA99F,
- 0xCC24, 0xA9A0, 0xCC25, 0xAA41, 0xCC26, 0xAA42, 0xCC27, 0xC2F6,
- 0xCC28, 0xC2F7, 0xCC29, 0xC2F8, 0xCC2A, 0xAA43, 0xCC2B, 0xAA44,
- 0xCC2C, 0xC2F9, 0xCC2D, 0xAA45, 0xCC2E, 0xC2FA, 0xCC2F, 0xAA46,
- 0xCC30, 0xC2FB, 0xCC31, 0xAA47, 0xCC32, 0xAA48, 0xCC33, 0xAA49,
- 0xCC34, 0xAA4A, 0xCC35, 0xAA4B, 0xCC36, 0xAA4C, 0xCC37, 0xAA4D,
- 0xCC38, 0xC2FC, 0xCC39, 0xC2FD, 0xCC3A, 0xAA4E, 0xCC3B, 0xC2FE,
- 0xCC3C, 0xC3A1, 0xCC3D, 0xC3A2, 0xCC3E, 0xC3A3, 0xCC3F, 0xAA4F,
- 0xCC40, 0xAA50, 0xCC41, 0xAA51, 0xCC42, 0xAA52, 0xCC43, 0xAA53,
- 0xCC44, 0xC3A4, 0xCC45, 0xC3A5, 0xCC46, 0xAA54, 0xCC47, 0xAA55,
- 0xCC48, 0xC3A6, 0xCC49, 0xAA56, 0xCC4A, 0xAA57, 0xCC4B, 0xAA58,
- 0xCC4C, 0xC3A7, 0xCC4D, 0xAA59, 0xCC4E, 0xAA5A, 0xCC4F, 0xAA61,
- 0xCC50, 0xAA62, 0xCC51, 0xAA63, 0xCC52, 0xAA64, 0xCC53, 0xAA65,
- 0xCC54, 0xC3A8, 0xCC55, 0xC3A9, 0xCC56, 0xAA66, 0xCC57, 0xC3AA,
- 0xCC58, 0xC3AB, 0xCC59, 0xC3AC, 0xCC5A, 0xAA67, 0xCC5B, 0xAA68,
- 0xCC5C, 0xAA69, 0xCC5D, 0xAA6A, 0xCC5E, 0xAA6B, 0xCC5F, 0xAA6C,
- 0xCC60, 0xC3AD, 0xCC61, 0xAA6D, 0xCC62, 0xAA6E, 0xCC63, 0xAA6F,
- 0xCC64, 0xC3AE, 0xCC65, 0xAA70, 0xCC66, 0xC3AF, 0xCC67, 0xAA71,
- 0xCC68, 0xC3B0, 0xCC69, 0xAA72, 0xCC6A, 0xAA73, 0xCC6B, 0xAA74,
- 0xCC6C, 0xAA75, 0xCC6D, 0xAA76, 0xCC6E, 0xAA77, 0xCC6F, 0xAA78,
- 0xCC70, 0xC3B1, 0xCC71, 0xAA79, 0xCC72, 0xAA7A, 0xCC73, 0xAA81,
- 0xCC74, 0xAA82, 0xCC75, 0xC3B2, 0xCC76, 0xAA83, 0xCC77, 0xAA84,
- 0xCC78, 0xAA85, 0xCC79, 0xAA86, 0xCC7A, 0xAA87, 0xCC7B, 0xAA88,
- 0xCC7C, 0xAA89, 0xCC7D, 0xAA8A, 0xCC7E, 0xAA8B, 0xCC7F, 0xAA8C,
- 0xCC80, 0xAA8D, 0xCC81, 0xAA8E, 0xCC82, 0xAA8F, 0xCC83, 0xAA90,
- 0xCC84, 0xAA91, 0xCC85, 0xAA92, 0xCC86, 0xAA93, 0xCC87, 0xAA94,
- 0xCC88, 0xAA95, 0xCC89, 0xAA96, 0xCC8A, 0xAA97, 0xCC8B, 0xAA98,
- 0xCC8C, 0xAA99, 0xCC8D, 0xAA9A, 0xCC8E, 0xAA9B, 0xCC8F, 0xAA9C,
- 0xCC90, 0xAA9D, 0xCC91, 0xAA9E, 0xCC92, 0xAA9F, 0xCC93, 0xAAA0,
- 0xCC94, 0xAB41, 0xCC95, 0xAB42, 0xCC96, 0xAB43, 0xCC97, 0xAB44,
- 0xCC98, 0xC3B3, 0xCC99, 0xC3B4, 0xCC9A, 0xAB45, 0xCC9B, 0xAB46,
- 0xCC9C, 0xC3B5, 0xCC9D, 0xAB47, 0xCC9E, 0xAB48, 0xCC9F, 0xAB49,
- 0xCCA0, 0xC3B6, 0xCCA1, 0xAB4A, 0xCCA2, 0xAB4B, 0xCCA3, 0xAB4C,
- 0xCCA4, 0xAB4D, 0xCCA5, 0xAB4E, 0xCCA6, 0xAB4F, 0xCCA7, 0xAB50,
- 0xCCA8, 0xC3B7, 0xCCA9, 0xC3B8, 0xCCAA, 0xAB51, 0xCCAB, 0xC3B9,
- 0xCCAC, 0xC3BA, 0xCCAD, 0xC3BB, 0xCCAE, 0xAB52, 0xCCAF, 0xAB53,
- 0xCCB0, 0xAB54, 0xCCB1, 0xAB55, 0xCCB2, 0xAB56, 0xCCB3, 0xAB57,
- 0xCCB4, 0xC3BC, 0xCCB5, 0xC3BD, 0xCCB6, 0xAB58, 0xCCB7, 0xAB59,
- 0xCCB8, 0xC3BE, 0xCCB9, 0xAB5A, 0xCCBA, 0xAB61, 0xCCBB, 0xAB62,
- 0xCCBC, 0xC3BF, 0xCCBD, 0xAB63, 0xCCBE, 0xAB64, 0xCCBF, 0xAB65,
- 0xCCC0, 0xAB66, 0xCCC1, 0xAB67, 0xCCC2, 0xAB68, 0xCCC3, 0xAB69,
- 0xCCC4, 0xC3C0, 0xCCC5, 0xC3C1, 0xCCC6, 0xAB6A, 0xCCC7, 0xC3C2,
- 0xCCC8, 0xAB6B, 0xCCC9, 0xC3C3, 0xCCCA, 0xAB6C, 0xCCCB, 0xAB6D,
- 0xCCCC, 0xAB6E, 0xCCCD, 0xAB6F, 0xCCCE, 0xAB70, 0xCCCF, 0xAB71,
- 0xCCD0, 0xC3C4, 0xCCD1, 0xAB72, 0xCCD2, 0xAB73, 0xCCD3, 0xAB74,
- 0xCCD4, 0xC3C5, 0xCCD5, 0xAB75, 0xCCD6, 0xAB76, 0xCCD7, 0xAB77,
- 0xCCD8, 0xAB78, 0xCCD9, 0xAB79, 0xCCDA, 0xAB7A, 0xCCDB, 0xAB81,
- 0xCCDC, 0xAB82, 0xCCDD, 0xAB83, 0xCCDE, 0xAB84, 0xCCDF, 0xAB85,
- 0xCCE0, 0xAB86, 0xCCE1, 0xAB87, 0xCCE2, 0xAB88, 0xCCE3, 0xAB89,
- 0xCCE4, 0xC3C6, 0xCCE5, 0xAB8A, 0xCCE6, 0xAB8B, 0xCCE7, 0xAB8C,
- 0xCCE8, 0xAB8D, 0xCCE9, 0xAB8E, 0xCCEA, 0xAB8F, 0xCCEB, 0xAB90,
- 0xCCEC, 0xC3C7, 0xCCED, 0xAB91, 0xCCEE, 0xAB92, 0xCCEF, 0xAB93,
- 0xCCF0, 0xC3C8, 0xCCF1, 0xAB94, 0xCCF2, 0xAB95, 0xCCF3, 0xAB96,
- 0xCCF4, 0xAB97, 0xCCF5, 0xAB98, 0xCCF6, 0xAB99, 0xCCF7, 0xAB9A,
- 0xCCF8, 0xAB9B, 0xCCF9, 0xAB9C, 0xCCFA, 0xAB9D, 0xCCFB, 0xAB9E,
- 0xCCFC, 0xAB9F, 0xCCFD, 0xABA0, 0xCCFE, 0xAC41, 0xCCFF, 0xAC42,
- 0xCD00, 0xAC43, 0xCD01, 0xC3C9, 0xCD02, 0xAC44, 0xCD03, 0xAC45,
- 0xCD04, 0xAC46, 0xCD05, 0xAC47, 0xCD06, 0xAC48, 0xCD07, 0xAC49,
- 0xCD08, 0xC3CA, 0xCD09, 0xC3CB, 0xCD0A, 0xAC4A, 0xCD0B, 0xAC4B,
- 0xCD0C, 0xC3CC, 0xCD0D, 0xAC4C, 0xCD0E, 0xAC4D, 0xCD0F, 0xAC4E,
- 0xCD10, 0xC3CD, 0xCD11, 0xAC4F, 0xCD12, 0xAC50, 0xCD13, 0xAC51,
- 0xCD14, 0xAC52, 0xCD15, 0xAC53, 0xCD16, 0xAC54, 0xCD17, 0xAC55,
- 0xCD18, 0xC3CE, 0xCD19, 0xC3CF, 0xCD1A, 0xAC56, 0xCD1B, 0xC3D0,
- 0xCD1C, 0xAC57, 0xCD1D, 0xC3D1, 0xCD1E, 0xAC58, 0xCD1F, 0xAC59,
- 0xCD20, 0xAC5A, 0xCD21, 0xAC61, 0xCD22, 0xAC62, 0xCD23, 0xAC63,
- 0xCD24, 0xC3D2, 0xCD25, 0xAC64, 0xCD26, 0xAC65, 0xCD27, 0xAC66,
- 0xCD28, 0xC3D3, 0xCD29, 0xAC67, 0xCD2A, 0xAC68, 0xCD2B, 0xAC69,
- 0xCD2C, 0xC3D4, 0xCD2D, 0xAC6A, 0xCD2E, 0xAC6B, 0xCD2F, 0xAC6C,
- 0xCD30, 0xAC6D, 0xCD31, 0xAC6E, 0xCD32, 0xAC6F, 0xCD33, 0xAC70,
- 0xCD34, 0xAC71, 0xCD35, 0xAC72, 0xCD36, 0xAC73, 0xCD37, 0xAC74,
- 0xCD38, 0xAC75, 0xCD39, 0xC3D5, 0xCD3A, 0xAC76, 0xCD3B, 0xAC77,
- 0xCD3C, 0xAC78, 0xCD3D, 0xAC79, 0xCD3E, 0xAC7A, 0xCD3F, 0xAC81,
- 0xCD40, 0xAC82, 0xCD41, 0xAC83, 0xCD42, 0xAC84, 0xCD43, 0xAC85,
- 0xCD44, 0xAC86, 0xCD45, 0xAC87, 0xCD46, 0xAC88, 0xCD47, 0xAC89,
- 0xCD48, 0xAC8A, 0xCD49, 0xAC8B, 0xCD4A, 0xAC8C, 0xCD4B, 0xAC8D,
- 0xCD4C, 0xAC8E, 0xCD4D, 0xAC8F, 0xCD4E, 0xAC90, 0xCD4F, 0xAC91,
- 0xCD50, 0xAC92, 0xCD51, 0xAC93, 0xCD52, 0xAC94, 0xCD53, 0xAC95,
- 0xCD54, 0xAC96, 0xCD55, 0xAC97, 0xCD56, 0xAC98, 0xCD57, 0xAC99,
- 0xCD58, 0xAC9A, 0xCD59, 0xAC9B, 0xCD5A, 0xAC9C, 0xCD5B, 0xAC9D,
- 0xCD5C, 0xC3D6, 0xCD5D, 0xAC9E, 0xCD5E, 0xAC9F, 0xCD5F, 0xACA0,
- 0xCD60, 0xC3D7, 0xCD61, 0xAD41, 0xCD62, 0xAD42, 0xCD63, 0xAD43,
- 0xCD64, 0xC3D8, 0xCD65, 0xAD44, 0xCD66, 0xAD45, 0xCD67, 0xAD46,
- 0xCD68, 0xAD47, 0xCD69, 0xAD48, 0xCD6A, 0xAD49, 0xCD6B, 0xAD4A,
- 0xCD6C, 0xC3D9, 0xCD6D, 0xC3DA, 0xCD6E, 0xAD4B, 0xCD6F, 0xC3DB,
- 0xCD70, 0xAD4C, 0xCD71, 0xC3DC, 0xCD72, 0xAD4D, 0xCD73, 0xAD4E,
- 0xCD74, 0xAD4F, 0xCD75, 0xAD50, 0xCD76, 0xAD51, 0xCD77, 0xAD52,
- 0xCD78, 0xC3DD, 0xCD79, 0xAD53, 0xCD7A, 0xAD54, 0xCD7B, 0xAD55,
- 0xCD7C, 0xAD56, 0xCD7D, 0xAD57, 0xCD7E, 0xAD58, 0xCD7F, 0xAD59,
- 0xCD80, 0xAD5A, 0xCD81, 0xAD61, 0xCD82, 0xAD62, 0xCD83, 0xAD63,
- 0xCD84, 0xAD64, 0xCD85, 0xAD65, 0xCD86, 0xAD66, 0xCD87, 0xAD67,
- 0xCD88, 0xC3DE, 0xCD89, 0xAD68, 0xCD8A, 0xAD69, 0xCD8B, 0xAD6A,
- 0xCD8C, 0xAD6B, 0xCD8D, 0xAD6C, 0xCD8E, 0xAD6D, 0xCD8F, 0xAD6E,
- 0xCD90, 0xAD6F, 0xCD91, 0xAD70, 0xCD92, 0xAD71, 0xCD93, 0xAD72,
- 0xCD94, 0xC3DF, 0xCD95, 0xC3E0, 0xCD96, 0xAD73, 0xCD97, 0xAD74,
- 0xCD98, 0xC3E1, 0xCD99, 0xAD75, 0xCD9A, 0xAD76, 0xCD9B, 0xAD77,
- 0xCD9C, 0xC3E2, 0xCD9D, 0xAD78, 0xCD9E, 0xAD79, 0xCD9F, 0xAD7A,
- 0xCDA0, 0xAD81, 0xCDA1, 0xAD82, 0xCDA2, 0xAD83, 0xCDA3, 0xAD84,
- 0xCDA4, 0xC3E3, 0xCDA5, 0xC3E4, 0xCDA6, 0xAD85, 0xCDA7, 0xC3E5,
- 0xCDA8, 0xAD86, 0xCDA9, 0xC3E6, 0xCDAA, 0xAD87, 0xCDAB, 0xAD88,
- 0xCDAC, 0xAD89, 0xCDAD, 0xAD8A, 0xCDAE, 0xAD8B, 0xCDAF, 0xAD8C,
- 0xCDB0, 0xC3E7, 0xCDB1, 0xAD8D, 0xCDB2, 0xAD8E, 0xCDB3, 0xAD8F,
- 0xCDB4, 0xAD90, 0xCDB5, 0xAD91, 0xCDB6, 0xAD92, 0xCDB7, 0xAD93,
- 0xCDB8, 0xAD94, 0xCDB9, 0xAD95, 0xCDBA, 0xAD96, 0xCDBB, 0xAD97,
- 0xCDBC, 0xAD98, 0xCDBD, 0xAD99, 0xCDBE, 0xAD9A, 0xCDBF, 0xAD9B,
- 0xCDC0, 0xAD9C, 0xCDC1, 0xAD9D, 0xCDC2, 0xAD9E, 0xCDC3, 0xAD9F,
- 0xCDC4, 0xC3E8, 0xCDC5, 0xADA0, 0xCDC6, 0xAE41, 0xCDC7, 0xAE42,
- 0xCDC8, 0xAE43, 0xCDC9, 0xAE44, 0xCDCA, 0xAE45, 0xCDCB, 0xAE46,
- 0xCDCC, 0xC3E9, 0xCDCD, 0xAE47, 0xCDCE, 0xAE48, 0xCDCF, 0xAE49,
- 0xCDD0, 0xC3EA, 0xCDD1, 0xAE4A, 0xCDD2, 0xAE4B, 0xCDD3, 0xAE4C,
- 0xCDD4, 0xAE4D, 0xCDD5, 0xAE4E, 0xCDD6, 0xAE4F, 0xCDD7, 0xAE50,
- 0xCDD8, 0xAE51, 0xCDD9, 0xAE52, 0xCDDA, 0xAE53, 0xCDDB, 0xAE54,
- 0xCDDC, 0xAE55, 0xCDDD, 0xAE56, 0xCDDE, 0xAE57, 0xCDDF, 0xAE58,
- 0xCDE0, 0xAE59, 0xCDE1, 0xAE5A, 0xCDE2, 0xAE61, 0xCDE3, 0xAE62,
- 0xCDE4, 0xAE63, 0xCDE5, 0xAE64, 0xCDE6, 0xAE65, 0xCDE7, 0xAE66,
- 0xCDE8, 0xC3EB, 0xCDE9, 0xAE67, 0xCDEA, 0xAE68, 0xCDEB, 0xAE69,
- 0xCDEC, 0xC3EC, 0xCDED, 0xAE6A, 0xCDEE, 0xAE6B, 0xCDEF, 0xAE6C,
- 0xCDF0, 0xC3ED, 0xCDF1, 0xAE6D, 0xCDF2, 0xAE6E, 0xCDF3, 0xAE6F,
- 0xCDF4, 0xAE70, 0xCDF5, 0xAE71, 0xCDF6, 0xAE72, 0xCDF7, 0xAE73,
- 0xCDF8, 0xC3EE, 0xCDF9, 0xC3EF, 0xCDFA, 0xAE74, 0xCDFB, 0xC3F0,
- 0xCDFC, 0xAE75, 0xCDFD, 0xC3F1, 0xCDFE, 0xAE76, 0xCDFF, 0xAE77,
- 0xCE00, 0xAE78, 0xCE01, 0xAE79, 0xCE02, 0xAE7A, 0xCE03, 0xAE81,
- 0xCE04, 0xC3F2, 0xCE05, 0xAE82, 0xCE06, 0xAE83, 0xCE07, 0xAE84,
- 0xCE08, 0xC3F3, 0xCE09, 0xAE85, 0xCE0A, 0xAE86, 0xCE0B, 0xAE87,
- 0xCE0C, 0xC3F4, 0xCE0D, 0xAE88, 0xCE0E, 0xAE89, 0xCE0F, 0xAE8A,
- 0xCE10, 0xAE8B, 0xCE11, 0xAE8C, 0xCE12, 0xAE8D, 0xCE13, 0xAE8E,
- 0xCE14, 0xC3F5, 0xCE15, 0xAE8F, 0xCE16, 0xAE90, 0xCE17, 0xAE91,
- 0xCE18, 0xAE92, 0xCE19, 0xC3F6, 0xCE1A, 0xAE93, 0xCE1B, 0xAE94,
- 0xCE1C, 0xAE95, 0xCE1D, 0xAE96, 0xCE1E, 0xAE97, 0xCE1F, 0xAE98,
- 0xCE20, 0xC3F7, 0xCE21, 0xC3F8, 0xCE22, 0xAE99, 0xCE23, 0xAE9A,
- 0xCE24, 0xC3F9, 0xCE25, 0xAE9B, 0xCE26, 0xAE9C, 0xCE27, 0xAE9D,
- 0xCE28, 0xC3FA, 0xCE29, 0xAE9E, 0xCE2A, 0xAE9F, 0xCE2B, 0xAEA0,
- 0xCE2C, 0xAF41, 0xCE2D, 0xAF42, 0xCE2E, 0xAF43, 0xCE2F, 0xAF44,
- 0xCE30, 0xC3FB, 0xCE31, 0xC3FC, 0xCE32, 0xAF45, 0xCE33, 0xC3FD,
- 0xCE34, 0xAF46, 0xCE35, 0xC3FE, 0xCE36, 0xAF47, 0xCE37, 0xAF48,
- 0xCE38, 0xAF49, 0xCE39, 0xAF4A, 0xCE3A, 0xAF4B, 0xCE3B, 0xAF4C,
- 0xCE3C, 0xAF4D, 0xCE3D, 0xAF4E, 0xCE3E, 0xAF4F, 0xCE3F, 0xAF50,
- 0xCE40, 0xAF51, 0xCE41, 0xAF52, 0xCE42, 0xAF53, 0xCE43, 0xAF54,
- 0xCE44, 0xAF55, 0xCE45, 0xAF56, 0xCE46, 0xAF57, 0xCE47, 0xAF58,
- 0xCE48, 0xAF59, 0xCE49, 0xAF5A, 0xCE4A, 0xAF61, 0xCE4B, 0xAF62,
- 0xCE4C, 0xAF63, 0xCE4D, 0xAF64, 0xCE4E, 0xAF65, 0xCE4F, 0xAF66,
- 0xCE50, 0xAF67, 0xCE51, 0xAF68, 0xCE52, 0xAF69, 0xCE53, 0xAF6A,
- 0xCE54, 0xAF6B, 0xCE55, 0xAF6C, 0xCE56, 0xAF6D, 0xCE57, 0xAF6E,
- 0xCE58, 0xC4A1, 0xCE59, 0xC4A2, 0xCE5A, 0xAF6F, 0xCE5B, 0xAF70,
- 0xCE5C, 0xC4A3, 0xCE5D, 0xAF71, 0xCE5E, 0xAF72, 0xCE5F, 0xC4A4,
- 0xCE60, 0xC4A5, 0xCE61, 0xC4A6, 0xCE62, 0xAF73, 0xCE63, 0xAF74,
- 0xCE64, 0xAF75, 0xCE65, 0xAF76, 0xCE66, 0xAF77, 0xCE67, 0xAF78,
- 0xCE68, 0xC4A7, 0xCE69, 0xC4A8, 0xCE6A, 0xAF79, 0xCE6B, 0xC4A9,
- 0xCE6C, 0xAF7A, 0xCE6D, 0xC4AA, 0xCE6E, 0xAF81, 0xCE6F, 0xAF82,
- 0xCE70, 0xAF83, 0xCE71, 0xAF84, 0xCE72, 0xAF85, 0xCE73, 0xAF86,
- 0xCE74, 0xC4AB, 0xCE75, 0xC4AC, 0xCE76, 0xAF87, 0xCE77, 0xAF88,
- 0xCE78, 0xC4AD, 0xCE79, 0xAF89, 0xCE7A, 0xAF8A, 0xCE7B, 0xAF8B,
- 0xCE7C, 0xC4AE, 0xCE7D, 0xAF8C, 0xCE7E, 0xAF8D, 0xCE7F, 0xAF8E,
- 0xCE80, 0xAF8F, 0xCE81, 0xAF90, 0xCE82, 0xAF91, 0xCE83, 0xAF92,
- 0xCE84, 0xC4AF, 0xCE85, 0xC4B0, 0xCE86, 0xAF93, 0xCE87, 0xC4B1,
- 0xCE88, 0xAF94, 0xCE89, 0xC4B2, 0xCE8A, 0xAF95, 0xCE8B, 0xAF96,
- 0xCE8C, 0xAF97, 0xCE8D, 0xAF98, 0xCE8E, 0xAF99, 0xCE8F, 0xAF9A,
- 0xCE90, 0xC4B3, 0xCE91, 0xC4B4, 0xCE92, 0xAF9B, 0xCE93, 0xAF9C,
- 0xCE94, 0xC4B5, 0xCE95, 0xAF9D, 0xCE96, 0xAF9E, 0xCE97, 0xAF9F,
- 0xCE98, 0xC4B6, 0xCE99, 0xAFA0, 0xCE9A, 0xB041, 0xCE9B, 0xB042,
- 0xCE9C, 0xB043, 0xCE9D, 0xB044, 0xCE9E, 0xB045, 0xCE9F, 0xB046,
- 0xCEA0, 0xC4B7, 0xCEA1, 0xC4B8, 0xCEA2, 0xB047, 0xCEA3, 0xC4B9,
- 0xCEA4, 0xC4BA, 0xCEA5, 0xC4BB, 0xCEA6, 0xB048, 0xCEA7, 0xB049,
- 0xCEA8, 0xB04A, 0xCEA9, 0xB04B, 0xCEAA, 0xB04C, 0xCEAB, 0xB04D,
- 0xCEAC, 0xC4BC, 0xCEAD, 0xC4BD, 0xCEAE, 0xB04E, 0xCEAF, 0xB04F,
- 0xCEB0, 0xB050, 0xCEB1, 0xB051, 0xCEB2, 0xB052, 0xCEB3, 0xB053,
- 0xCEB4, 0xB054, 0xCEB5, 0xB055, 0xCEB6, 0xB056, 0xCEB7, 0xB057,
- 0xCEB8, 0xB058, 0xCEB9, 0xB059, 0xCEBA, 0xB05A, 0xCEBB, 0xB061,
- 0xCEBC, 0xB062, 0xCEBD, 0xB063, 0xCEBE, 0xB064, 0xCEBF, 0xB065,
- 0xCEC0, 0xB066, 0xCEC1, 0xC4BE, 0xCEC2, 0xB067, 0xCEC3, 0xB068,
- 0xCEC4, 0xB069, 0xCEC5, 0xB06A, 0xCEC6, 0xB06B, 0xCEC7, 0xB06C,
- 0xCEC8, 0xB06D, 0xCEC9, 0xB06E, 0xCECA, 0xB06F, 0xCECB, 0xB070,
- 0xCECC, 0xB071, 0xCECD, 0xB072, 0xCECE, 0xB073, 0xCECF, 0xB074,
- 0xCED0, 0xB075, 0xCED1, 0xB076, 0xCED2, 0xB077, 0xCED3, 0xB078,
- 0xCED4, 0xB079, 0xCED5, 0xB07A, 0xCED6, 0xB081, 0xCED7, 0xB082,
- 0xCED8, 0xB083, 0xCED9, 0xB084, 0xCEDA, 0xB085, 0xCEDB, 0xB086,
- 0xCEDC, 0xB087, 0xCEDD, 0xB088, 0xCEDE, 0xB089, 0xCEDF, 0xB08A,
- 0xCEE0, 0xB08B, 0xCEE1, 0xB08C, 0xCEE2, 0xB08D, 0xCEE3, 0xB08E,
- 0xCEE4, 0xC4BF, 0xCEE5, 0xC4C0, 0xCEE6, 0xB08F, 0xCEE7, 0xB090,
- 0xCEE8, 0xC4C1, 0xCEE9, 0xB091, 0xCEEA, 0xB092, 0xCEEB, 0xC4C2,
- 0xCEEC, 0xC4C3, 0xCEED, 0xB093, 0xCEEE, 0xB094, 0xCEEF, 0xB095,
- 0xCEF0, 0xB096, 0xCEF1, 0xB097, 0xCEF2, 0xB098, 0xCEF3, 0xB099,
- 0xCEF4, 0xC4C4, 0xCEF5, 0xC4C5, 0xCEF6, 0xB09A, 0xCEF7, 0xC4C6,
- 0xCEF8, 0xC4C7, 0xCEF9, 0xC4C8, 0xCEFA, 0xB09B, 0xCEFB, 0xB09C,
- 0xCEFC, 0xB09D, 0xCEFD, 0xB09E, 0xCEFE, 0xB09F, 0xCEFF, 0xB0A0,
- 0xCF00, 0xC4C9, 0xCF01, 0xC4CA, 0xCF02, 0xB141, 0xCF03, 0xB142,
- 0xCF04, 0xC4CB, 0xCF05, 0xB143, 0xCF06, 0xB144, 0xCF07, 0xB145,
- 0xCF08, 0xC4CC, 0xCF09, 0xB146, 0xCF0A, 0xB147, 0xCF0B, 0xB148,
- 0xCF0C, 0xB149, 0xCF0D, 0xB14A, 0xCF0E, 0xB14B, 0xCF0F, 0xB14C,
- 0xCF10, 0xC4CD, 0xCF11, 0xC4CE, 0xCF12, 0xB14D, 0xCF13, 0xC4CF,
- 0xCF14, 0xB14E, 0xCF15, 0xC4D0, 0xCF16, 0xB14F, 0xCF17, 0xB150,
- 0xCF18, 0xB151, 0xCF19, 0xB152, 0xCF1A, 0xB153, 0xCF1B, 0xB154,
- 0xCF1C, 0xC4D1, 0xCF1D, 0xB155, 0xCF1E, 0xB156, 0xCF1F, 0xB157,
- 0xCF20, 0xC4D2, 0xCF21, 0xB158, 0xCF22, 0xB159, 0xCF23, 0xB15A,
- 0xCF24, 0xC4D3, 0xCF25, 0xB161, 0xCF26, 0xB162, 0xCF27, 0xB163,
- 0xCF28, 0xB164, 0xCF29, 0xB165, 0xCF2A, 0xB166, 0xCF2B, 0xB167,
- 0xCF2C, 0xC4D4, 0xCF2D, 0xC4D5, 0xCF2E, 0xB168, 0xCF2F, 0xC4D6,
- 0xCF30, 0xC4D7, 0xCF31, 0xC4D8, 0xCF32, 0xB169, 0xCF33, 0xB16A,
- 0xCF34, 0xB16B, 0xCF35, 0xB16C, 0xCF36, 0xB16D, 0xCF37, 0xB16E,
- 0xCF38, 0xC4D9, 0xCF39, 0xB16F, 0xCF3A, 0xB170, 0xCF3B, 0xB171,
- 0xCF3C, 0xB172, 0xCF3D, 0xB173, 0xCF3E, 0xB174, 0xCF3F, 0xB175,
- 0xCF40, 0xB176, 0xCF41, 0xB177, 0xCF42, 0xB178, 0xCF43, 0xB179,
- 0xCF44, 0xB17A, 0xCF45, 0xB181, 0xCF46, 0xB182, 0xCF47, 0xB183,
- 0xCF48, 0xB184, 0xCF49, 0xB185, 0xCF4A, 0xB186, 0xCF4B, 0xB187,
- 0xCF4C, 0xB188, 0xCF4D, 0xB189, 0xCF4E, 0xB18A, 0xCF4F, 0xB18B,
- 0xCF50, 0xB18C, 0xCF51, 0xB18D, 0xCF52, 0xB18E, 0xCF53, 0xB18F,
- 0xCF54, 0xC4DA, 0xCF55, 0xC4DB, 0xCF56, 0xB190, 0xCF57, 0xB191,
- 0xCF58, 0xC4DC, 0xCF59, 0xB192, 0xCF5A, 0xB193, 0xCF5B, 0xB194,
- 0xCF5C, 0xC4DD, 0xCF5D, 0xB195, 0xCF5E, 0xB196, 0xCF5F, 0xB197,
- 0xCF60, 0xB198, 0xCF61, 0xB199, 0xCF62, 0xB19A, 0xCF63, 0xB19B,
- 0xCF64, 0xC4DE, 0xCF65, 0xC4DF, 0xCF66, 0xB19C, 0xCF67, 0xC4E0,
- 0xCF68, 0xB19D, 0xCF69, 0xC4E1, 0xCF6A, 0xB19E, 0xCF6B, 0xB19F,
- 0xCF6C, 0xB1A0, 0xCF6D, 0xB241, 0xCF6E, 0xB242, 0xCF6F, 0xB243,
- 0xCF70, 0xC4E2, 0xCF71, 0xC4E3, 0xCF72, 0xB244, 0xCF73, 0xB245,
- 0xCF74, 0xC4E4, 0xCF75, 0xB246, 0xCF76, 0xB247, 0xCF77, 0xB248,
- 0xCF78, 0xC4E5, 0xCF79, 0xB249, 0xCF7A, 0xB24A, 0xCF7B, 0xB24B,
- 0xCF7C, 0xB24C, 0xCF7D, 0xB24D, 0xCF7E, 0xB24E, 0xCF7F, 0xB24F,
- 0xCF80, 0xC4E6, 0xCF81, 0xB250, 0xCF82, 0xB251, 0xCF83, 0xB252,
- 0xCF84, 0xB253, 0xCF85, 0xC4E7, 0xCF86, 0xB254, 0xCF87, 0xB255,
- 0xCF88, 0xB256, 0xCF89, 0xB257, 0xCF8A, 0xB258, 0xCF8B, 0xB259,
- 0xCF8C, 0xC4E8, 0xCF8D, 0xB25A, 0xCF8E, 0xB261, 0xCF8F, 0xB262,
- 0xCF90, 0xB263, 0xCF91, 0xB264, 0xCF92, 0xB265, 0xCF93, 0xB266,
- 0xCF94, 0xB267, 0xCF95, 0xB268, 0xCF96, 0xB269, 0xCF97, 0xB26A,
- 0xCF98, 0xB26B, 0xCF99, 0xB26C, 0xCF9A, 0xB26D, 0xCF9B, 0xB26E,
- 0xCF9C, 0xB26F, 0xCF9D, 0xB270, 0xCF9E, 0xB271, 0xCF9F, 0xB272,
- 0xCFA0, 0xB273, 0xCFA1, 0xC4E9, 0xCFA2, 0xB274, 0xCFA3, 0xB275,
- 0xCFA4, 0xB276, 0xCFA5, 0xB277, 0xCFA6, 0xB278, 0xCFA7, 0xB279,
- 0xCFA8, 0xC4EA, 0xCFA9, 0xB27A, 0xCFAA, 0xB281, 0xCFAB, 0xB282,
- 0xCFAC, 0xB283, 0xCFAD, 0xB284, 0xCFAE, 0xB285, 0xCFAF, 0xB286,
- 0xCFB0, 0xC4EB, 0xCFB1, 0xB287, 0xCFB2, 0xB288, 0xCFB3, 0xB289,
- 0xCFB4, 0xB28A, 0xCFB5, 0xB28B, 0xCFB6, 0xB28C, 0xCFB7, 0xB28D,
- 0xCFB8, 0xB28E, 0xCFB9, 0xB28F, 0xCFBA, 0xB290, 0xCFBB, 0xB291,
- 0xCFBC, 0xB292, 0xCFBD, 0xB293, 0xCFBE, 0xB294, 0xCFBF, 0xB295,
- 0xCFC0, 0xB296, 0xCFC1, 0xB297, 0xCFC2, 0xB298, 0xCFC3, 0xB299,
- 0xCFC4, 0xC4EC, 0xCFC5, 0xB29A, 0xCFC6, 0xB29B, 0xCFC7, 0xB29C,
- 0xCFC8, 0xB29D, 0xCFC9, 0xB29E, 0xCFCA, 0xB29F, 0xCFCB, 0xB2A0,
- 0xCFCC, 0xB341, 0xCFCD, 0xB342, 0xCFCE, 0xB343, 0xCFCF, 0xB344,
- 0xCFD0, 0xB345, 0xCFD1, 0xB346, 0xCFD2, 0xB347, 0xCFD3, 0xB348,
- 0xCFD4, 0xB349, 0xCFD5, 0xB34A, 0xCFD6, 0xB34B, 0xCFD7, 0xB34C,
- 0xCFD8, 0xB34D, 0xCFD9, 0xB34E, 0xCFDA, 0xB34F, 0xCFDB, 0xB350,
- 0xCFDC, 0xB351, 0xCFDD, 0xB352, 0xCFDE, 0xB353, 0xCFDF, 0xB354,
- 0xCFE0, 0xC4ED, 0xCFE1, 0xC4EE, 0xCFE2, 0xB355, 0xCFE3, 0xB356,
- 0xCFE4, 0xC4EF, 0xCFE5, 0xB357, 0xCFE6, 0xB358, 0xCFE7, 0xB359,
- 0xCFE8, 0xC4F0, 0xCFE9, 0xB35A, 0xCFEA, 0xB361, 0xCFEB, 0xB362,
- 0xCFEC, 0xB363, 0xCFED, 0xB364, 0xCFEE, 0xB365, 0xCFEF, 0xB366,
- 0xCFF0, 0xC4F1, 0xCFF1, 0xC4F2, 0xCFF2, 0xB367, 0xCFF3, 0xC4F3,
- 0xCFF4, 0xB368, 0xCFF5, 0xC4F4, 0xCFF6, 0xB369, 0xCFF7, 0xB36A,
- 0xCFF8, 0xB36B, 0xCFF9, 0xB36C, 0xCFFA, 0xB36D, 0xCFFB, 0xB36E,
- 0xCFFC, 0xC4F5, 0xCFFD, 0xB36F, 0xCFFE, 0xB370, 0xCFFF, 0xB371,
- 0xD000, 0xC4F6, 0xD001, 0xB372, 0xD002, 0xB373, 0xD003, 0xB374,
- 0xD004, 0xC4F7, 0xD005, 0xB375, 0xD006, 0xB376, 0xD007, 0xB377,
- 0xD008, 0xB378, 0xD009, 0xB379, 0xD00A, 0xB37A, 0xD00B, 0xB381,
- 0xD00C, 0xB382, 0xD00D, 0xB383, 0xD00E, 0xB384, 0xD00F, 0xB385,
- 0xD010, 0xB386, 0xD011, 0xC4F8, 0xD012, 0xB387, 0xD013, 0xB388,
- 0xD014, 0xB389, 0xD015, 0xB38A, 0xD016, 0xB38B, 0xD017, 0xB38C,
- 0xD018, 0xC4F9, 0xD019, 0xB38D, 0xD01A, 0xB38E, 0xD01B, 0xB38F,
- 0xD01C, 0xB390, 0xD01D, 0xB391, 0xD01E, 0xB392, 0xD01F, 0xB393,
- 0xD020, 0xB394, 0xD021, 0xB395, 0xD022, 0xB396, 0xD023, 0xB397,
- 0xD024, 0xB398, 0xD025, 0xB399, 0xD026, 0xB39A, 0xD027, 0xB39B,
- 0xD028, 0xB39C, 0xD029, 0xB39D, 0xD02A, 0xB39E, 0xD02B, 0xB39F,
- 0xD02C, 0xB3A0, 0xD02D, 0xC4FA, 0xD02E, 0xB441, 0xD02F, 0xB442,
- 0xD030, 0xB443, 0xD031, 0xB444, 0xD032, 0xB445, 0xD033, 0xB446,
- 0xD034, 0xC4FB, 0xD035, 0xC4FC, 0xD036, 0xB447, 0xD037, 0xB448,
- 0xD038, 0xC4FD, 0xD039, 0xB449, 0xD03A, 0xB44A, 0xD03B, 0xB44B,
- 0xD03C, 0xC4FE, 0xD03D, 0xB44C, 0xD03E, 0xB44D, 0xD03F, 0xB44E,
- 0xD040, 0xB44F, 0xD041, 0xB450, 0xD042, 0xB451, 0xD043, 0xB452,
- 0xD044, 0xC5A1, 0xD045, 0xC5A2, 0xD046, 0xB453, 0xD047, 0xC5A3,
- 0xD048, 0xB454, 0xD049, 0xC5A4, 0xD04A, 0xB455, 0xD04B, 0xB456,
- 0xD04C, 0xB457, 0xD04D, 0xB458, 0xD04E, 0xB459, 0xD04F, 0xB45A,
- 0xD050, 0xC5A5, 0xD051, 0xB461, 0xD052, 0xB462, 0xD053, 0xB463,
- 0xD054, 0xC5A6, 0xD055, 0xB464, 0xD056, 0xB465, 0xD057, 0xB466,
- 0xD058, 0xC5A7, 0xD059, 0xB467, 0xD05A, 0xB468, 0xD05B, 0xB469,
- 0xD05C, 0xB46A, 0xD05D, 0xB46B, 0xD05E, 0xB46C, 0xD05F, 0xB46D,
- 0xD060, 0xC5A8, 0xD061, 0xB46E, 0xD062, 0xB46F, 0xD063, 0xB470,
- 0xD064, 0xB471, 0xD065, 0xB472, 0xD066, 0xB473, 0xD067, 0xB474,
- 0xD068, 0xB475, 0xD069, 0xB476, 0xD06A, 0xB477, 0xD06B, 0xB478,
- 0xD06C, 0xC5A9, 0xD06D, 0xC5AA, 0xD06E, 0xB479, 0xD06F, 0xB47A,
- 0xD070, 0xC5AB, 0xD071, 0xB481, 0xD072, 0xB482, 0xD073, 0xB483,
- 0xD074, 0xC5AC, 0xD075, 0xB484, 0xD076, 0xB485, 0xD077, 0xB486,
- 0xD078, 0xB487, 0xD079, 0xB488, 0xD07A, 0xB489, 0xD07B, 0xB48A,
- 0xD07C, 0xC5AD, 0xD07D, 0xC5AE, 0xD07E, 0xB48B, 0xD07F, 0xB48C,
- 0xD080, 0xB48D, 0xD081, 0xC5AF, 0xD082, 0xB48E, 0xD083, 0xB48F,
- 0xD084, 0xB490, 0xD085, 0xB491, 0xD086, 0xB492, 0xD087, 0xB493,
- 0xD088, 0xB494, 0xD089, 0xB495, 0xD08A, 0xB496, 0xD08B, 0xB497,
- 0xD08C, 0xB498, 0xD08D, 0xB499, 0xD08E, 0xB49A, 0xD08F, 0xB49B,
- 0xD090, 0xB49C, 0xD091, 0xB49D, 0xD092, 0xB49E, 0xD093, 0xB49F,
- 0xD094, 0xB4A0, 0xD095, 0xB541, 0xD096, 0xB542, 0xD097, 0xB543,
- 0xD098, 0xB544, 0xD099, 0xB545, 0xD09A, 0xB546, 0xD09B, 0xB547,
- 0xD09C, 0xB548, 0xD09D, 0xB549, 0xD09E, 0xB54A, 0xD09F, 0xB54B,
- 0xD0A0, 0xB54C, 0xD0A1, 0xB54D, 0xD0A2, 0xB54E, 0xD0A3, 0xB54F,
- 0xD0A4, 0xC5B0, 0xD0A5, 0xC5B1, 0xD0A6, 0xB550, 0xD0A7, 0xB551,
- 0xD0A8, 0xC5B2, 0xD0A9, 0xB552, 0xD0AA, 0xB553, 0xD0AB, 0xB554,
- 0xD0AC, 0xC5B3, 0xD0AD, 0xB555, 0xD0AE, 0xB556, 0xD0AF, 0xB557,
- 0xD0B0, 0xB558, 0xD0B1, 0xB559, 0xD0B2, 0xB55A, 0xD0B3, 0xB561,
- 0xD0B4, 0xC5B4, 0xD0B5, 0xC5B5, 0xD0B6, 0xB562, 0xD0B7, 0xC5B6,
- 0xD0B8, 0xB563, 0xD0B9, 0xC5B7, 0xD0BA, 0xB564, 0xD0BB, 0xB565,
- 0xD0BC, 0xB566, 0xD0BD, 0xB567, 0xD0BE, 0xB568, 0xD0BF, 0xB569,
- 0xD0C0, 0xC5B8, 0xD0C1, 0xC5B9, 0xD0C2, 0xB56A, 0xD0C3, 0xB56B,
- 0xD0C4, 0xC5BA, 0xD0C5, 0xB56C, 0xD0C6, 0xB56D, 0xD0C7, 0xB56E,
- 0xD0C8, 0xC5BB, 0xD0C9, 0xC5BC, 0xD0CA, 0xB56F, 0xD0CB, 0xB570,
- 0xD0CC, 0xB571, 0xD0CD, 0xB572, 0xD0CE, 0xB573, 0xD0CF, 0xB574,
- 0xD0D0, 0xC5BD, 0xD0D1, 0xC5BE, 0xD0D2, 0xB575, 0xD0D3, 0xC5BF,
- 0xD0D4, 0xC5C0, 0xD0D5, 0xC5C1, 0xD0D6, 0xB576, 0xD0D7, 0xB577,
- 0xD0D8, 0xB578, 0xD0D9, 0xB579, 0xD0DA, 0xB57A, 0xD0DB, 0xB581,
- 0xD0DC, 0xC5C2, 0xD0DD, 0xC5C3, 0xD0DE, 0xB582, 0xD0DF, 0xB583,
- 0xD0E0, 0xC5C4, 0xD0E1, 0xB584, 0xD0E2, 0xB585, 0xD0E3, 0xB586,
- 0xD0E4, 0xC5C5, 0xD0E5, 0xB587, 0xD0E6, 0xB588, 0xD0E7, 0xB589,
- 0xD0E8, 0xB58A, 0xD0E9, 0xB58B, 0xD0EA, 0xB58C, 0xD0EB, 0xB58D,
- 0xD0EC, 0xC5C6, 0xD0ED, 0xC5C7, 0xD0EE, 0xB58E, 0xD0EF, 0xC5C8,
- 0xD0F0, 0xC5C9, 0xD0F1, 0xC5CA, 0xD0F2, 0xB58F, 0xD0F3, 0xB590,
- 0xD0F4, 0xB591, 0xD0F5, 0xB592, 0xD0F6, 0xB593, 0xD0F7, 0xB594,
- 0xD0F8, 0xC5CB, 0xD0F9, 0xB595, 0xD0FA, 0xB596, 0xD0FB, 0xB597,
- 0xD0FC, 0xB598, 0xD0FD, 0xB599, 0xD0FE, 0xB59A, 0xD0FF, 0xB59B,
- 0xD100, 0xB59C, 0xD101, 0xB59D, 0xD102, 0xB59E, 0xD103, 0xB59F,
- 0xD104, 0xB5A0, 0xD105, 0xB641, 0xD106, 0xB642, 0xD107, 0xB643,
- 0xD108, 0xB644, 0xD109, 0xB645, 0xD10A, 0xB646, 0xD10B, 0xB647,
- 0xD10C, 0xB648, 0xD10D, 0xC5CC, 0xD10E, 0xB649, 0xD10F, 0xB64A,
- 0xD110, 0xB64B, 0xD111, 0xB64C, 0xD112, 0xB64D, 0xD113, 0xB64E,
- 0xD114, 0xB64F, 0xD115, 0xB650, 0xD116, 0xB651, 0xD117, 0xB652,
- 0xD118, 0xB653, 0xD119, 0xB654, 0xD11A, 0xB655, 0xD11B, 0xB656,
- 0xD11C, 0xB657, 0xD11D, 0xB658, 0xD11E, 0xB659, 0xD11F, 0xB65A,
- 0xD120, 0xB661, 0xD121, 0xB662, 0xD122, 0xB663, 0xD123, 0xB664,
- 0xD124, 0xB665, 0xD125, 0xB666, 0xD126, 0xB667, 0xD127, 0xB668,
- 0xD128, 0xB669, 0xD129, 0xB66A, 0xD12A, 0xB66B, 0xD12B, 0xB66C,
- 0xD12C, 0xB66D, 0xD12D, 0xB66E, 0xD12E, 0xB66F, 0xD12F, 0xB670,
- 0xD130, 0xC5CD, 0xD131, 0xC5CE, 0xD132, 0xB671, 0xD133, 0xB672,
- 0xD134, 0xC5CF, 0xD135, 0xB673, 0xD136, 0xB674, 0xD137, 0xB675,
- 0xD138, 0xC5D0, 0xD139, 0xB676, 0xD13A, 0xC5D1, 0xD13B, 0xB677,
- 0xD13C, 0xB678, 0xD13D, 0xB679, 0xD13E, 0xB67A, 0xD13F, 0xB681,
- 0xD140, 0xC5D2, 0xD141, 0xC5D3, 0xD142, 0xB682, 0xD143, 0xC5D4,
- 0xD144, 0xC5D5, 0xD145, 0xC5D6, 0xD146, 0xB683, 0xD147, 0xB684,
- 0xD148, 0xB685, 0xD149, 0xB686, 0xD14A, 0xB687, 0xD14B, 0xB688,
- 0xD14C, 0xC5D7, 0xD14D, 0xC5D8, 0xD14E, 0xB689, 0xD14F, 0xB68A,
- 0xD150, 0xC5D9, 0xD151, 0xB68B, 0xD152, 0xB68C, 0xD153, 0xB68D,
- 0xD154, 0xC5DA, 0xD155, 0xB68E, 0xD156, 0xB68F, 0xD157, 0xB690,
- 0xD158, 0xB691, 0xD159, 0xB692, 0xD15A, 0xB693, 0xD15B, 0xB694,
- 0xD15C, 0xC5DB, 0xD15D, 0xC5DC, 0xD15E, 0xB695, 0xD15F, 0xC5DD,
- 0xD160, 0xB696, 0xD161, 0xC5DE, 0xD162, 0xB697, 0xD163, 0xB698,
- 0xD164, 0xB699, 0xD165, 0xB69A, 0xD166, 0xB69B, 0xD167, 0xB69C,
- 0xD168, 0xC5DF, 0xD169, 0xB69D, 0xD16A, 0xB69E, 0xD16B, 0xB69F,
- 0xD16C, 0xC5E0, 0xD16D, 0xB6A0, 0xD16E, 0xB741, 0xD16F, 0xB742,
- 0xD170, 0xB743, 0xD171, 0xB744, 0xD172, 0xB745, 0xD173, 0xB746,
- 0xD174, 0xB747, 0xD175, 0xB748, 0xD176, 0xB749, 0xD177, 0xB74A,
- 0xD178, 0xB74B, 0xD179, 0xB74C, 0xD17A, 0xB74D, 0xD17B, 0xB74E,
- 0xD17C, 0xC5E1, 0xD17D, 0xB74F, 0xD17E, 0xB750, 0xD17F, 0xB751,
- 0xD180, 0xB752, 0xD181, 0xB753, 0xD182, 0xB754, 0xD183, 0xB755,
- 0xD184, 0xC5E2, 0xD185, 0xB756, 0xD186, 0xB757, 0xD187, 0xB758,
- 0xD188, 0xC5E3, 0xD189, 0xB759, 0xD18A, 0xB75A, 0xD18B, 0xB761,
- 0xD18C, 0xB762, 0xD18D, 0xB763, 0xD18E, 0xB764, 0xD18F, 0xB765,
- 0xD190, 0xB766, 0xD191, 0xB767, 0xD192, 0xB768, 0xD193, 0xB769,
- 0xD194, 0xB76A, 0xD195, 0xB76B, 0xD196, 0xB76C, 0xD197, 0xB76D,
- 0xD198, 0xB76E, 0xD199, 0xB76F, 0xD19A, 0xB770, 0xD19B, 0xB771,
- 0xD19C, 0xB772, 0xD19D, 0xB773, 0xD19E, 0xB774, 0xD19F, 0xB775,
- 0xD1A0, 0xC5E4, 0xD1A1, 0xC5E5, 0xD1A2, 0xB776, 0xD1A3, 0xB777,
- 0xD1A4, 0xC5E6, 0xD1A5, 0xB778, 0xD1A6, 0xB779, 0xD1A7, 0xB77A,
- 0xD1A8, 0xC5E7, 0xD1A9, 0xB781, 0xD1AA, 0xB782, 0xD1AB, 0xB783,
- 0xD1AC, 0xB784, 0xD1AD, 0xB785, 0xD1AE, 0xB786, 0xD1AF, 0xB787,
- 0xD1B0, 0xC5E8, 0xD1B1, 0xC5E9, 0xD1B2, 0xB788, 0xD1B3, 0xC5EA,
- 0xD1B4, 0xB789, 0xD1B5, 0xC5EB, 0xD1B6, 0xB78A, 0xD1B7, 0xB78B,
- 0xD1B8, 0xB78C, 0xD1B9, 0xB78D, 0xD1BA, 0xC5EC, 0xD1BB, 0xB78E,
- 0xD1BC, 0xC5ED, 0xD1BD, 0xB78F, 0xD1BE, 0xB790, 0xD1BF, 0xB791,
- 0xD1C0, 0xC5EE, 0xD1C1, 0xB792, 0xD1C2, 0xB793, 0xD1C3, 0xB794,
- 0xD1C4, 0xB795, 0xD1C5, 0xB796, 0xD1C6, 0xB797, 0xD1C7, 0xB798,
- 0xD1C8, 0xB799, 0xD1C9, 0xB79A, 0xD1CA, 0xB79B, 0xD1CB, 0xB79C,
- 0xD1CC, 0xB79D, 0xD1CD, 0xB79E, 0xD1CE, 0xB79F, 0xD1CF, 0xB7A0,
- 0xD1D0, 0xB841, 0xD1D1, 0xB842, 0xD1D2, 0xB843, 0xD1D3, 0xB844,
- 0xD1D4, 0xB845, 0xD1D5, 0xB846, 0xD1D6, 0xB847, 0xD1D7, 0xB848,
- 0xD1D8, 0xC5EF, 0xD1D9, 0xB849, 0xD1DA, 0xB84A, 0xD1DB, 0xB84B,
- 0xD1DC, 0xB84C, 0xD1DD, 0xB84D, 0xD1DE, 0xB84E, 0xD1DF, 0xB84F,
- 0xD1E0, 0xB850, 0xD1E1, 0xB851, 0xD1E2, 0xB852, 0xD1E3, 0xB853,
- 0xD1E4, 0xB854, 0xD1E5, 0xB855, 0xD1E6, 0xB856, 0xD1E7, 0xB857,
- 0xD1E8, 0xB858, 0xD1E9, 0xB859, 0xD1EA, 0xB85A, 0xD1EB, 0xB861,
- 0xD1EC, 0xB862, 0xD1ED, 0xB863, 0xD1EE, 0xB864, 0xD1EF, 0xB865,
- 0xD1F0, 0xB866, 0xD1F1, 0xB867, 0xD1F2, 0xB868, 0xD1F3, 0xB869,
- 0xD1F4, 0xC5F0, 0xD1F5, 0xB86A, 0xD1F6, 0xB86B, 0xD1F7, 0xB86C,
- 0xD1F8, 0xC5F1, 0xD1F9, 0xB86D, 0xD1FA, 0xB86E, 0xD1FB, 0xB86F,
- 0xD1FC, 0xB870, 0xD1FD, 0xB871, 0xD1FE, 0xB872, 0xD1FF, 0xB873,
- 0xD200, 0xB874, 0xD201, 0xB875, 0xD202, 0xB876, 0xD203, 0xB877,
- 0xD204, 0xB878, 0xD205, 0xB879, 0xD206, 0xB87A, 0xD207, 0xC5F2,
- 0xD208, 0xB881, 0xD209, 0xC5F3, 0xD20A, 0xB882, 0xD20B, 0xB883,
- 0xD20C, 0xB884, 0xD20D, 0xB885, 0xD20E, 0xB886, 0xD20F, 0xB887,
- 0xD210, 0xC5F4, 0xD211, 0xB888, 0xD212, 0xB889, 0xD213, 0xB88A,
- 0xD214, 0xB88B, 0xD215, 0xB88C, 0xD216, 0xB88D, 0xD217, 0xB88E,
- 0xD218, 0xB88F, 0xD219, 0xB890, 0xD21A, 0xB891, 0xD21B, 0xB892,
- 0xD21C, 0xB893, 0xD21D, 0xB894, 0xD21E, 0xB895, 0xD21F, 0xB896,
- 0xD220, 0xB897, 0xD221, 0xB898, 0xD222, 0xB899, 0xD223, 0xB89A,
- 0xD224, 0xB89B, 0xD225, 0xB89C, 0xD226, 0xB89D, 0xD227, 0xB89E,
- 0xD228, 0xB89F, 0xD229, 0xB8A0, 0xD22A, 0xB941, 0xD22B, 0xB942,
- 0xD22C, 0xC5F5, 0xD22D, 0xC5F6, 0xD22E, 0xB943, 0xD22F, 0xB944,
- 0xD230, 0xC5F7, 0xD231, 0xB945, 0xD232, 0xB946, 0xD233, 0xB947,
- 0xD234, 0xC5F8, 0xD235, 0xB948, 0xD236, 0xB949, 0xD237, 0xB94A,
- 0xD238, 0xB94B, 0xD239, 0xB94C, 0xD23A, 0xB94D, 0xD23B, 0xB94E,
- 0xD23C, 0xC5F9, 0xD23D, 0xC5FA, 0xD23E, 0xB94F, 0xD23F, 0xC5FB,
- 0xD240, 0xB950, 0xD241, 0xC5FC, 0xD242, 0xB951, 0xD243, 0xB952,
- 0xD244, 0xB953, 0xD245, 0xB954, 0xD246, 0xB955, 0xD247, 0xB956,
- 0xD248, 0xC5FD, 0xD249, 0xB957, 0xD24A, 0xB958, 0xD24B, 0xB959,
- 0xD24C, 0xB95A, 0xD24D, 0xB961, 0xD24E, 0xB962, 0xD24F, 0xB963,
- 0xD250, 0xB964, 0xD251, 0xB965, 0xD252, 0xB966, 0xD253, 0xB967,
- 0xD254, 0xB968, 0xD255, 0xB969, 0xD256, 0xB96A, 0xD257, 0xB96B,
- 0xD258, 0xB96C, 0xD259, 0xB96D, 0xD25A, 0xB96E, 0xD25B, 0xB96F,
- 0xD25C, 0xC5FE, 0xD25D, 0xB970, 0xD25E, 0xB971, 0xD25F, 0xB972,
- 0xD260, 0xB973, 0xD261, 0xB974, 0xD262, 0xB975, 0xD263, 0xB976,
- 0xD264, 0xC6A1, 0xD265, 0xB977, 0xD266, 0xB978, 0xD267, 0xB979,
- 0xD268, 0xB97A, 0xD269, 0xB981, 0xD26A, 0xB982, 0xD26B, 0xB983,
- 0xD26C, 0xB984, 0xD26D, 0xB985, 0xD26E, 0xB986, 0xD26F, 0xB987,
- 0xD270, 0xB988, 0xD271, 0xB989, 0xD272, 0xB98A, 0xD273, 0xB98B,
- 0xD274, 0xB98C, 0xD275, 0xB98D, 0xD276, 0xB98E, 0xD277, 0xB98F,
- 0xD278, 0xB990, 0xD279, 0xB991, 0xD27A, 0xB992, 0xD27B, 0xB993,
- 0xD27C, 0xB994, 0xD27D, 0xB995, 0xD27E, 0xB996, 0xD27F, 0xB997,
- 0xD280, 0xC6A2, 0xD281, 0xC6A3, 0xD282, 0xB998, 0xD283, 0xB999,
- 0xD284, 0xC6A4, 0xD285, 0xB99A, 0xD286, 0xB99B, 0xD287, 0xB99C,
- 0xD288, 0xC6A5, 0xD289, 0xB99D, 0xD28A, 0xB99E, 0xD28B, 0xB99F,
- 0xD28C, 0xB9A0, 0xD28D, 0xBA41, 0xD28E, 0xBA42, 0xD28F, 0xBA43,
- 0xD290, 0xC6A6, 0xD291, 0xC6A7, 0xD292, 0xBA44, 0xD293, 0xBA45,
- 0xD294, 0xBA46, 0xD295, 0xC6A8, 0xD296, 0xBA47, 0xD297, 0xBA48,
- 0xD298, 0xBA49, 0xD299, 0xBA4A, 0xD29A, 0xBA4B, 0xD29B, 0xBA4C,
- 0xD29C, 0xC6A9, 0xD29D, 0xBA4D, 0xD29E, 0xBA4E, 0xD29F, 0xBA4F,
- 0xD2A0, 0xC6AA, 0xD2A1, 0xBA50, 0xD2A2, 0xBA51, 0xD2A3, 0xBA52,
- 0xD2A4, 0xC6AB, 0xD2A5, 0xBA53, 0xD2A6, 0xBA54, 0xD2A7, 0xBA55,
- 0xD2A8, 0xBA56, 0xD2A9, 0xBA57, 0xD2AA, 0xBA58, 0xD2AB, 0xBA59,
- 0xD2AC, 0xC6AC, 0xD2AD, 0xBA5A, 0xD2AE, 0xBA61, 0xD2AF, 0xBA62,
- 0xD2B0, 0xBA63, 0xD2B1, 0xC6AD, 0xD2B2, 0xBA64, 0xD2B3, 0xBA65,
- 0xD2B4, 0xBA66, 0xD2B5, 0xBA67, 0xD2B6, 0xBA68, 0xD2B7, 0xBA69,
- 0xD2B8, 0xC6AE, 0xD2B9, 0xC6AF, 0xD2BA, 0xBA6A, 0xD2BB, 0xBA6B,
- 0xD2BC, 0xC6B0, 0xD2BD, 0xBA6C, 0xD2BE, 0xBA6D, 0xD2BF, 0xC6B1,
- 0xD2C0, 0xC6B2, 0xD2C1, 0xBA6E, 0xD2C2, 0xC6B3, 0xD2C3, 0xBA6F,
- 0xD2C4, 0xBA70, 0xD2C5, 0xBA71, 0xD2C6, 0xBA72, 0xD2C7, 0xBA73,
- 0xD2C8, 0xC6B4, 0xD2C9, 0xC6B5, 0xD2CA, 0xBA74, 0xD2CB, 0xC6B6,
- 0xD2CC, 0xBA75, 0xD2CD, 0xBA76, 0xD2CE, 0xBA77, 0xD2CF, 0xBA78,
- 0xD2D0, 0xBA79, 0xD2D1, 0xBA7A, 0xD2D2, 0xBA81, 0xD2D3, 0xBA82,
- 0xD2D4, 0xC6B7, 0xD2D5, 0xBA83, 0xD2D6, 0xBA84, 0xD2D7, 0xBA85,
- 0xD2D8, 0xC6B8, 0xD2D9, 0xBA86, 0xD2DA, 0xBA87, 0xD2DB, 0xBA88,
- 0xD2DC, 0xC6B9, 0xD2DD, 0xBA89, 0xD2DE, 0xBA8A, 0xD2DF, 0xBA8B,
- 0xD2E0, 0xBA8C, 0xD2E1, 0xBA8D, 0xD2E2, 0xBA8E, 0xD2E3, 0xBA8F,
- 0xD2E4, 0xC6BA, 0xD2E5, 0xC6BB, 0xD2E6, 0xBA90, 0xD2E7, 0xBA91,
- 0xD2E8, 0xBA92, 0xD2E9, 0xBA93, 0xD2EA, 0xBA94, 0xD2EB, 0xBA95,
- 0xD2EC, 0xBA96, 0xD2ED, 0xBA97, 0xD2EE, 0xBA98, 0xD2EF, 0xBA99,
- 0xD2F0, 0xC6BC, 0xD2F1, 0xC6BD, 0xD2F2, 0xBA9A, 0xD2F3, 0xBA9B,
- 0xD2F4, 0xC6BE, 0xD2F5, 0xBA9C, 0xD2F6, 0xBA9D, 0xD2F7, 0xBA9E,
- 0xD2F8, 0xC6BF, 0xD2F9, 0xBA9F, 0xD2FA, 0xBAA0, 0xD2FB, 0xBB41,
- 0xD2FC, 0xBB42, 0xD2FD, 0xBB43, 0xD2FE, 0xBB44, 0xD2FF, 0xBB45,
- 0xD300, 0xC6C0, 0xD301, 0xC6C1, 0xD302, 0xBB46, 0xD303, 0xC6C2,
- 0xD304, 0xBB47, 0xD305, 0xC6C3, 0xD306, 0xBB48, 0xD307, 0xBB49,
- 0xD308, 0xBB4A, 0xD309, 0xBB4B, 0xD30A, 0xBB4C, 0xD30B, 0xBB4D,
- 0xD30C, 0xC6C4, 0xD30D, 0xC6C5, 0xD30E, 0xC6C6, 0xD30F, 0xBB4E,
- 0xD310, 0xC6C7, 0xD311, 0xBB4F, 0xD312, 0xBB50, 0xD313, 0xBB51,
- 0xD314, 0xC6C8, 0xD315, 0xBB52, 0xD316, 0xC6C9, 0xD317, 0xBB53,
- 0xD318, 0xBB54, 0xD319, 0xBB55, 0xD31A, 0xBB56, 0xD31B, 0xBB57,
- 0xD31C, 0xC6CA, 0xD31D, 0xC6CB, 0xD31E, 0xBB58, 0xD31F, 0xC6CC,
- 0xD320, 0xC6CD, 0xD321, 0xC6CE, 0xD322, 0xBB59, 0xD323, 0xBB5A,
- 0xD324, 0xBB61, 0xD325, 0xC6CF, 0xD326, 0xBB62, 0xD327, 0xBB63,
- 0xD328, 0xC6D0, 0xD329, 0xC6D1, 0xD32A, 0xBB64, 0xD32B, 0xBB65,
- 0xD32C, 0xC6D2, 0xD32D, 0xBB66, 0xD32E, 0xBB67, 0xD32F, 0xBB68,
- 0xD330, 0xC6D3, 0xD331, 0xBB69, 0xD332, 0xBB6A, 0xD333, 0xBB6B,
- 0xD334, 0xBB6C, 0xD335, 0xBB6D, 0xD336, 0xBB6E, 0xD337, 0xBB6F,
- 0xD338, 0xC6D4, 0xD339, 0xC6D5, 0xD33A, 0xBB70, 0xD33B, 0xC6D6,
- 0xD33C, 0xC6D7, 0xD33D, 0xC6D8, 0xD33E, 0xBB71, 0xD33F, 0xBB72,
- 0xD340, 0xBB73, 0xD341, 0xBB74, 0xD342, 0xBB75, 0xD343, 0xBB76,
- 0xD344, 0xC6D9, 0xD345, 0xC6DA, 0xD346, 0xBB77, 0xD347, 0xBB78,
- 0xD348, 0xBB79, 0xD349, 0xBB7A, 0xD34A, 0xBB81, 0xD34B, 0xBB82,
- 0xD34C, 0xBB83, 0xD34D, 0xBB84, 0xD34E, 0xBB85, 0xD34F, 0xBB86,
- 0xD350, 0xBB87, 0xD351, 0xBB88, 0xD352, 0xBB89, 0xD353, 0xBB8A,
- 0xD354, 0xBB8B, 0xD355, 0xBB8C, 0xD356, 0xBB8D, 0xD357, 0xBB8E,
- 0xD358, 0xBB8F, 0xD359, 0xBB90, 0xD35A, 0xBB91, 0xD35B, 0xBB92,
- 0xD35C, 0xBB93, 0xD35D, 0xBB94, 0xD35E, 0xBB95, 0xD35F, 0xBB96,
- 0xD360, 0xBB97, 0xD361, 0xBB98, 0xD362, 0xBB99, 0xD363, 0xBB9A,
- 0xD364, 0xBB9B, 0xD365, 0xBB9C, 0xD366, 0xBB9D, 0xD367, 0xBB9E,
- 0xD368, 0xBB9F, 0xD369, 0xBBA0, 0xD36A, 0xBC41, 0xD36B, 0xBC42,
- 0xD36C, 0xBC43, 0xD36D, 0xBC44, 0xD36E, 0xBC45, 0xD36F, 0xBC46,
- 0xD370, 0xBC47, 0xD371, 0xBC48, 0xD372, 0xBC49, 0xD373, 0xBC4A,
- 0xD374, 0xBC4B, 0xD375, 0xBC4C, 0xD376, 0xBC4D, 0xD377, 0xBC4E,
- 0xD378, 0xBC4F, 0xD379, 0xBC50, 0xD37A, 0xBC51, 0xD37B, 0xBC52,
- 0xD37C, 0xC6DB, 0xD37D, 0xC6DC, 0xD37E, 0xBC53, 0xD37F, 0xBC54,
- 0xD380, 0xC6DD, 0xD381, 0xBC55, 0xD382, 0xBC56, 0xD383, 0xBC57,
- 0xD384, 0xC6DE, 0xD385, 0xBC58, 0xD386, 0xBC59, 0xD387, 0xBC5A,
- 0xD388, 0xBC61, 0xD389, 0xBC62, 0xD38A, 0xBC63, 0xD38B, 0xBC64,
- 0xD38C, 0xC6DF, 0xD38D, 0xC6E0, 0xD38E, 0xBC65, 0xD38F, 0xC6E1,
- 0xD390, 0xC6E2, 0xD391, 0xC6E3, 0xD392, 0xBC66, 0xD393, 0xBC67,
- 0xD394, 0xBC68, 0xD395, 0xBC69, 0xD396, 0xBC6A, 0xD397, 0xBC6B,
- 0xD398, 0xC6E4, 0xD399, 0xC6E5, 0xD39A, 0xBC6C, 0xD39B, 0xBC6D,
- 0xD39C, 0xC6E6, 0xD39D, 0xBC6E, 0xD39E, 0xBC6F, 0xD39F, 0xBC70,
- 0xD3A0, 0xC6E7, 0xD3A1, 0xBC71, 0xD3A2, 0xBC72, 0xD3A3, 0xBC73,
- 0xD3A4, 0xBC74, 0xD3A5, 0xBC75, 0xD3A6, 0xBC76, 0xD3A7, 0xBC77,
- 0xD3A8, 0xC6E8, 0xD3A9, 0xC6E9, 0xD3AA, 0xBC78, 0xD3AB, 0xC6EA,
- 0xD3AC, 0xBC79, 0xD3AD, 0xC6EB, 0xD3AE, 0xBC7A, 0xD3AF, 0xBC81,
- 0xD3B0, 0xBC82, 0xD3B1, 0xBC83, 0xD3B2, 0xBC84, 0xD3B3, 0xBC85,
- 0xD3B4, 0xC6EC, 0xD3B5, 0xBC86, 0xD3B6, 0xBC87, 0xD3B7, 0xBC88,
- 0xD3B8, 0xC6ED, 0xD3B9, 0xBC89, 0xD3BA, 0xBC8A, 0xD3BB, 0xBC8B,
- 0xD3BC, 0xC6EE, 0xD3BD, 0xBC8C, 0xD3BE, 0xBC8D, 0xD3BF, 0xBC8E,
- 0xD3C0, 0xBC8F, 0xD3C1, 0xBC90, 0xD3C2, 0xBC91, 0xD3C3, 0xBC92,
- 0xD3C4, 0xC6EF, 0xD3C5, 0xC6F0, 0xD3C6, 0xBC93, 0xD3C7, 0xBC94,
- 0xD3C8, 0xC6F1, 0xD3C9, 0xC6F2, 0xD3CA, 0xBC95, 0xD3CB, 0xBC96,
- 0xD3CC, 0xBC97, 0xD3CD, 0xBC98, 0xD3CE, 0xBC99, 0xD3CF, 0xBC9A,
- 0xD3D0, 0xC6F3, 0xD3D1, 0xBC9B, 0xD3D2, 0xBC9C, 0xD3D3, 0xBC9D,
- 0xD3D4, 0xBC9E, 0xD3D5, 0xBC9F, 0xD3D6, 0xBCA0, 0xD3D7, 0xBD41,
- 0xD3D8, 0xC6F4, 0xD3D9, 0xBD42, 0xD3DA, 0xBD43, 0xD3DB, 0xBD44,
- 0xD3DC, 0xBD45, 0xD3DD, 0xBD46, 0xD3DE, 0xBD47, 0xD3DF, 0xBD48,
- 0xD3E0, 0xBD49, 0xD3E1, 0xC6F5, 0xD3E2, 0xBD4A, 0xD3E3, 0xC6F6,
- 0xD3E4, 0xBD4B, 0xD3E5, 0xBD4C, 0xD3E6, 0xBD4D, 0xD3E7, 0xBD4E,
- 0xD3E8, 0xBD4F, 0xD3E9, 0xBD50, 0xD3EA, 0xBD51, 0xD3EB, 0xBD52,
- 0xD3EC, 0xC6F7, 0xD3ED, 0xC6F8, 0xD3EE, 0xBD53, 0xD3EF, 0xBD54,
- 0xD3F0, 0xC6F9, 0xD3F1, 0xBD55, 0xD3F2, 0xBD56, 0xD3F3, 0xBD57,
- 0xD3F4, 0xC6FA, 0xD3F5, 0xBD58, 0xD3F6, 0xBD59, 0xD3F7, 0xBD5A,
- 0xD3F8, 0xBD61, 0xD3F9, 0xBD62, 0xD3FA, 0xBD63, 0xD3FB, 0xBD64,
- 0xD3FC, 0xC6FB, 0xD3FD, 0xC6FC, 0xD3FE, 0xBD65, 0xD3FF, 0xC6FD,
- 0xD400, 0xBD66, 0xD401, 0xC6FE, 0xD402, 0xBD67, 0xD403, 0xBD68,
- 0xD404, 0xBD69, 0xD405, 0xBD6A, 0xD406, 0xBD6B, 0xD407, 0xBD6C,
- 0xD408, 0xC7A1, 0xD409, 0xBD6D, 0xD40A, 0xBD6E, 0xD40B, 0xBD6F,
- 0xD40C, 0xBD70, 0xD40D, 0xBD71, 0xD40E, 0xBD72, 0xD40F, 0xBD73,
- 0xD410, 0xBD74, 0xD411, 0xBD75, 0xD412, 0xBD76, 0xD413, 0xBD77,
- 0xD414, 0xBD78, 0xD415, 0xBD79, 0xD416, 0xBD7A, 0xD417, 0xBD81,
- 0xD418, 0xBD82, 0xD419, 0xBD83, 0xD41A, 0xBD84, 0xD41B, 0xBD85,
- 0xD41C, 0xBD86, 0xD41D, 0xC7A2, 0xD41E, 0xBD87, 0xD41F, 0xBD88,
- 0xD420, 0xBD89, 0xD421, 0xBD8A, 0xD422, 0xBD8B, 0xD423, 0xBD8C,
- 0xD424, 0xBD8D, 0xD425, 0xBD8E, 0xD426, 0xBD8F, 0xD427, 0xBD90,
- 0xD428, 0xBD91, 0xD429, 0xBD92, 0xD42A, 0xBD93, 0xD42B, 0xBD94,
- 0xD42C, 0xBD95, 0xD42D, 0xBD96, 0xD42E, 0xBD97, 0xD42F, 0xBD98,
- 0xD430, 0xBD99, 0xD431, 0xBD9A, 0xD432, 0xBD9B, 0xD433, 0xBD9C,
- 0xD434, 0xBD9D, 0xD435, 0xBD9E, 0xD436, 0xBD9F, 0xD437, 0xBDA0,
- 0xD438, 0xBE41, 0xD439, 0xBE42, 0xD43A, 0xBE43, 0xD43B, 0xBE44,
- 0xD43C, 0xBE45, 0xD43D, 0xBE46, 0xD43E, 0xBE47, 0xD43F, 0xBE48,
- 0xD440, 0xC7A3, 0xD441, 0xBE49, 0xD442, 0xBE4A, 0xD443, 0xBE4B,
- 0xD444, 0xC7A4, 0xD445, 0xBE4C, 0xD446, 0xBE4D, 0xD447, 0xBE4E,
- 0xD448, 0xBE4F, 0xD449, 0xBE50, 0xD44A, 0xBE51, 0xD44B, 0xBE52,
- 0xD44C, 0xBE53, 0xD44D, 0xBE54, 0xD44E, 0xBE55, 0xD44F, 0xBE56,
- 0xD450, 0xBE57, 0xD451, 0xBE58, 0xD452, 0xBE59, 0xD453, 0xBE5A,
- 0xD454, 0xBE61, 0xD455, 0xBE62, 0xD456, 0xBE63, 0xD457, 0xBE64,
- 0xD458, 0xBE65, 0xD459, 0xBE66, 0xD45A, 0xBE67, 0xD45B, 0xBE68,
- 0xD45C, 0xC7A5, 0xD45D, 0xBE69, 0xD45E, 0xBE6A, 0xD45F, 0xBE6B,
- 0xD460, 0xC7A6, 0xD461, 0xBE6C, 0xD462, 0xBE6D, 0xD463, 0xBE6E,
- 0xD464, 0xC7A7, 0xD465, 0xBE6F, 0xD466, 0xBE70, 0xD467, 0xBE71,
- 0xD468, 0xBE72, 0xD469, 0xBE73, 0xD46A, 0xBE74, 0xD46B, 0xBE75,
- 0xD46C, 0xBE76, 0xD46D, 0xC7A8, 0xD46E, 0xBE77, 0xD46F, 0xC7A9,
- 0xD470, 0xBE78, 0xD471, 0xBE79, 0xD472, 0xBE7A, 0xD473, 0xBE81,
- 0xD474, 0xBE82, 0xD475, 0xBE83, 0xD476, 0xBE84, 0xD477, 0xBE85,
- 0xD478, 0xC7AA, 0xD479, 0xC7AB, 0xD47A, 0xBE86, 0xD47B, 0xBE87,
- 0xD47C, 0xC7AC, 0xD47D, 0xBE88, 0xD47E, 0xBE89, 0xD47F, 0xC7AD,
- 0xD480, 0xC7AE, 0xD481, 0xBE8A, 0xD482, 0xC7AF, 0xD483, 0xBE8B,
- 0xD484, 0xBE8C, 0xD485, 0xBE8D, 0xD486, 0xBE8E, 0xD487, 0xBE8F,
- 0xD488, 0xC7B0, 0xD489, 0xC7B1, 0xD48A, 0xBE90, 0xD48B, 0xC7B2,
- 0xD48C, 0xBE91, 0xD48D, 0xC7B3, 0xD48E, 0xBE92, 0xD48F, 0xBE93,
- 0xD490, 0xBE94, 0xD491, 0xBE95, 0xD492, 0xBE96, 0xD493, 0xBE97,
- 0xD494, 0xC7B4, 0xD495, 0xBE98, 0xD496, 0xBE99, 0xD497, 0xBE9A,
- 0xD498, 0xBE9B, 0xD499, 0xBE9C, 0xD49A, 0xBE9D, 0xD49B, 0xBE9E,
- 0xD49C, 0xBE9F, 0xD49D, 0xBEA0, 0xD49E, 0xBF41, 0xD49F, 0xBF42,
- 0xD4A0, 0xBF43, 0xD4A1, 0xBF44, 0xD4A2, 0xBF45, 0xD4A3, 0xBF46,
- 0xD4A4, 0xBF47, 0xD4A5, 0xBF48, 0xD4A6, 0xBF49, 0xD4A7, 0xBF4A,
- 0xD4A8, 0xBF4B, 0xD4A9, 0xC7B5, 0xD4AA, 0xBF4C, 0xD4AB, 0xBF4D,
- 0xD4AC, 0xBF4E, 0xD4AD, 0xBF4F, 0xD4AE, 0xBF50, 0xD4AF, 0xBF51,
- 0xD4B0, 0xBF52, 0xD4B1, 0xBF53, 0xD4B2, 0xBF54, 0xD4B3, 0xBF55,
- 0xD4B4, 0xBF56, 0xD4B5, 0xBF57, 0xD4B6, 0xBF58, 0xD4B7, 0xBF59,
- 0xD4B8, 0xBF5A, 0xD4B9, 0xBF61, 0xD4BA, 0xBF62, 0xD4BB, 0xBF63,
- 0xD4BC, 0xBF64, 0xD4BD, 0xBF65, 0xD4BE, 0xBF66, 0xD4BF, 0xBF67,
- 0xD4C0, 0xBF68, 0xD4C1, 0xBF69, 0xD4C2, 0xBF6A, 0xD4C3, 0xBF6B,
- 0xD4C4, 0xBF6C, 0xD4C5, 0xBF6D, 0xD4C6, 0xBF6E, 0xD4C7, 0xBF6F,
- 0xD4C8, 0xBF70, 0xD4C9, 0xBF71, 0xD4CA, 0xBF72, 0xD4CB, 0xBF73,
- 0xD4CC, 0xC7B6, 0xD4CD, 0xBF74, 0xD4CE, 0xBF75, 0xD4CF, 0xBF76,
- 0xD4D0, 0xC7B7, 0xD4D1, 0xBF77, 0xD4D2, 0xBF78, 0xD4D3, 0xBF79,
- 0xD4D4, 0xC7B8, 0xD4D5, 0xBF7A, 0xD4D6, 0xBF81, 0xD4D7, 0xBF82,
- 0xD4D8, 0xBF83, 0xD4D9, 0xBF84, 0xD4DA, 0xBF85, 0xD4DB, 0xBF86,
- 0xD4DC, 0xC7B9, 0xD4DD, 0xBF87, 0xD4DE, 0xBF88, 0xD4DF, 0xC7BA,
- 0xD4E0, 0xBF89, 0xD4E1, 0xBF8A, 0xD4E2, 0xBF8B, 0xD4E3, 0xBF8C,
- 0xD4E4, 0xBF8D, 0xD4E5, 0xBF8E, 0xD4E6, 0xBF8F, 0xD4E7, 0xBF90,
- 0xD4E8, 0xC7BB, 0xD4E9, 0xBF91, 0xD4EA, 0xBF92, 0xD4EB, 0xBF93,
- 0xD4EC, 0xC7BC, 0xD4ED, 0xBF94, 0xD4EE, 0xBF95, 0xD4EF, 0xBF96,
- 0xD4F0, 0xC7BD, 0xD4F1, 0xBF97, 0xD4F2, 0xBF98, 0xD4F3, 0xBF99,
- 0xD4F4, 0xBF9A, 0xD4F5, 0xBF9B, 0xD4F6, 0xBF9C, 0xD4F7, 0xBF9D,
- 0xD4F8, 0xC7BE, 0xD4F9, 0xBF9E, 0xD4FA, 0xBF9F, 0xD4FB, 0xC7BF,
- 0xD4FC, 0xBFA0, 0xD4FD, 0xC7C0, 0xD4FE, 0xC041, 0xD4FF, 0xC042,
- 0xD500, 0xC043, 0xD501, 0xC044, 0xD502, 0xC045, 0xD503, 0xC046,
- 0xD504, 0xC7C1, 0xD505, 0xC047, 0xD506, 0xC048, 0xD507, 0xC049,
- 0xD508, 0xC7C2, 0xD509, 0xC04A, 0xD50A, 0xC04B, 0xD50B, 0xC04C,
- 0xD50C, 0xC7C3, 0xD50D, 0xC04D, 0xD50E, 0xC04E, 0xD50F, 0xC04F,
- 0xD510, 0xC050, 0xD511, 0xC051, 0xD512, 0xC052, 0xD513, 0xC053,
- 0xD514, 0xC7C4, 0xD515, 0xC7C5, 0xD516, 0xC054, 0xD517, 0xC7C6,
- 0xD518, 0xC055, 0xD519, 0xC056, 0xD51A, 0xC057, 0xD51B, 0xC058,
- 0xD51C, 0xC059, 0xD51D, 0xC05A, 0xD51E, 0xC061, 0xD51F, 0xC062,
- 0xD520, 0xC063, 0xD521, 0xC064, 0xD522, 0xC065, 0xD523, 0xC066,
- 0xD524, 0xC067, 0xD525, 0xC068, 0xD526, 0xC069, 0xD527, 0xC06A,
- 0xD528, 0xC06B, 0xD529, 0xC06C, 0xD52A, 0xC06D, 0xD52B, 0xC06E,
- 0xD52C, 0xC06F, 0xD52D, 0xC070, 0xD52E, 0xC071, 0xD52F, 0xC072,
- 0xD530, 0xC073, 0xD531, 0xC074, 0xD532, 0xC075, 0xD533, 0xC076,
- 0xD534, 0xC077, 0xD535, 0xC078, 0xD536, 0xC079, 0xD537, 0xC07A,
- 0xD538, 0xC081, 0xD539, 0xC082, 0xD53A, 0xC083, 0xD53B, 0xC084,
- 0xD53C, 0xC7C7, 0xD53D, 0xC7C8, 0xD53E, 0xC085, 0xD53F, 0xC086,
- 0xD540, 0xC7C9, 0xD541, 0xC087, 0xD542, 0xC088, 0xD543, 0xC089,
- 0xD544, 0xC7CA, 0xD545, 0xC08A, 0xD546, 0xC08B, 0xD547, 0xC08C,
- 0xD548, 0xC08D, 0xD549, 0xC08E, 0xD54A, 0xC08F, 0xD54B, 0xC090,
- 0xD54C, 0xC7CB, 0xD54D, 0xC7CC, 0xD54E, 0xC091, 0xD54F, 0xC7CD,
- 0xD550, 0xC092, 0xD551, 0xC7CE, 0xD552, 0xC093, 0xD553, 0xC094,
- 0xD554, 0xC095, 0xD555, 0xC096, 0xD556, 0xC097, 0xD557, 0xC098,
- 0xD558, 0xC7CF, 0xD559, 0xC7D0, 0xD55A, 0xC099, 0xD55B, 0xC09A,
- 0xD55C, 0xC7D1, 0xD55D, 0xC09B, 0xD55E, 0xC09C, 0xD55F, 0xC09D,
- 0xD560, 0xC7D2, 0xD561, 0xC09E, 0xD562, 0xC09F, 0xD563, 0xC0A0,
- 0xD564, 0xC141, 0xD565, 0xC7D3, 0xD566, 0xC142, 0xD567, 0xC143,
- 0xD568, 0xC7D4, 0xD569, 0xC7D5, 0xD56A, 0xC144, 0xD56B, 0xC7D6,
- 0xD56C, 0xC145, 0xD56D, 0xC7D7, 0xD56E, 0xC146, 0xD56F, 0xC147,
- 0xD570, 0xC148, 0xD571, 0xC149, 0xD572, 0xC14A, 0xD573, 0xC14B,
- 0xD574, 0xC7D8, 0xD575, 0xC7D9, 0xD576, 0xC14C, 0xD577, 0xC14D,
- 0xD578, 0xC7DA, 0xD579, 0xC14E, 0xD57A, 0xC14F, 0xD57B, 0xC150,
- 0xD57C, 0xC7DB, 0xD57D, 0xC151, 0xD57E, 0xC152, 0xD57F, 0xC153,
- 0xD580, 0xC154, 0xD581, 0xC155, 0xD582, 0xC156, 0xD583, 0xC157,
- 0xD584, 0xC7DC, 0xD585, 0xC7DD, 0xD586, 0xC158, 0xD587, 0xC7DE,
- 0xD588, 0xC7DF, 0xD589, 0xC7E0, 0xD58A, 0xC159, 0xD58B, 0xC15A,
- 0xD58C, 0xC161, 0xD58D, 0xC162, 0xD58E, 0xC163, 0xD58F, 0xC164,
- 0xD590, 0xC7E1, 0xD591, 0xC165, 0xD592, 0xC166, 0xD593, 0xC167,
- 0xD594, 0xC168, 0xD595, 0xC169, 0xD596, 0xC16A, 0xD597, 0xC16B,
- 0xD598, 0xC16C, 0xD599, 0xC16D, 0xD59A, 0xC16E, 0xD59B, 0xC16F,
- 0xD59C, 0xC170, 0xD59D, 0xC171, 0xD59E, 0xC172, 0xD59F, 0xC173,
- 0xD5A0, 0xC174, 0xD5A1, 0xC175, 0xD5A2, 0xC176, 0xD5A3, 0xC177,
- 0xD5A4, 0xC178, 0xD5A5, 0xC7E2, 0xD5A6, 0xC179, 0xD5A7, 0xC17A,
- 0xD5A8, 0xC181, 0xD5A9, 0xC182, 0xD5AA, 0xC183, 0xD5AB, 0xC184,
- 0xD5AC, 0xC185, 0xD5AD, 0xC186, 0xD5AE, 0xC187, 0xD5AF, 0xC188,
- 0xD5B0, 0xC189, 0xD5B1, 0xC18A, 0xD5B2, 0xC18B, 0xD5B3, 0xC18C,
- 0xD5B4, 0xC18D, 0xD5B5, 0xC18E, 0xD5B6, 0xC18F, 0xD5B7, 0xC190,
- 0xD5B8, 0xC191, 0xD5B9, 0xC192, 0xD5BA, 0xC193, 0xD5BB, 0xC194,
- 0xD5BC, 0xC195, 0xD5BD, 0xC196, 0xD5BE, 0xC197, 0xD5BF, 0xC198,
- 0xD5C0, 0xC199, 0xD5C1, 0xC19A, 0xD5C2, 0xC19B, 0xD5C3, 0xC19C,
- 0xD5C4, 0xC19D, 0xD5C5, 0xC19E, 0xD5C6, 0xC19F, 0xD5C7, 0xC1A0,
- 0xD5C8, 0xC7E3, 0xD5C9, 0xC7E4, 0xD5CA, 0xC241, 0xD5CB, 0xC242,
- 0xD5CC, 0xC7E5, 0xD5CD, 0xC243, 0xD5CE, 0xC244, 0xD5CF, 0xC245,
- 0xD5D0, 0xC7E6, 0xD5D1, 0xC246, 0xD5D2, 0xC7E7, 0xD5D3, 0xC247,
- 0xD5D4, 0xC248, 0xD5D5, 0xC249, 0xD5D6, 0xC24A, 0xD5D7, 0xC24B,
- 0xD5D8, 0xC7E8, 0xD5D9, 0xC7E9, 0xD5DA, 0xC24C, 0xD5DB, 0xC7EA,
- 0xD5DC, 0xC24D, 0xD5DD, 0xC7EB, 0xD5DE, 0xC24E, 0xD5DF, 0xC24F,
- 0xD5E0, 0xC250, 0xD5E1, 0xC251, 0xD5E2, 0xC252, 0xD5E3, 0xC253,
- 0xD5E4, 0xC7EC, 0xD5E5, 0xC7ED, 0xD5E6, 0xC254, 0xD5E7, 0xC255,
- 0xD5E8, 0xC7EE, 0xD5E9, 0xC256, 0xD5EA, 0xC257, 0xD5EB, 0xC258,
- 0xD5EC, 0xC7EF, 0xD5ED, 0xC259, 0xD5EE, 0xC25A, 0xD5EF, 0xC261,
- 0xD5F0, 0xC262, 0xD5F1, 0xC263, 0xD5F2, 0xC264, 0xD5F3, 0xC265,
- 0xD5F4, 0xC7F0, 0xD5F5, 0xC7F1, 0xD5F6, 0xC266, 0xD5F7, 0xC7F2,
- 0xD5F8, 0xC267, 0xD5F9, 0xC7F3, 0xD5FA, 0xC268, 0xD5FB, 0xC269,
- 0xD5FC, 0xC26A, 0xD5FD, 0xC26B, 0xD5FE, 0xC26C, 0xD5FF, 0xC26D,
- 0xD600, 0xC7F4, 0xD601, 0xC7F5, 0xD602, 0xC26E, 0xD603, 0xC26F,
- 0xD604, 0xC7F6, 0xD605, 0xC270, 0xD606, 0xC271, 0xD607, 0xC272,
- 0xD608, 0xC7F7, 0xD609, 0xC273, 0xD60A, 0xC274, 0xD60B, 0xC275,
- 0xD60C, 0xC276, 0xD60D, 0xC277, 0xD60E, 0xC278, 0xD60F, 0xC279,
- 0xD610, 0xC7F8, 0xD611, 0xC7F9, 0xD612, 0xC27A, 0xD613, 0xC7FA,
- 0xD614, 0xC7FB, 0xD615, 0xC7FC, 0xD616, 0xC281, 0xD617, 0xC282,
- 0xD618, 0xC283, 0xD619, 0xC284, 0xD61A, 0xC285, 0xD61B, 0xC286,
- 0xD61C, 0xC7FD, 0xD61D, 0xC287, 0xD61E, 0xC288, 0xD61F, 0xC289,
- 0xD620, 0xC7FE, 0xD621, 0xC28A, 0xD622, 0xC28B, 0xD623, 0xC28C,
- 0xD624, 0xC8A1, 0xD625, 0xC28D, 0xD626, 0xC28E, 0xD627, 0xC28F,
- 0xD628, 0xC290, 0xD629, 0xC291, 0xD62A, 0xC292, 0xD62B, 0xC293,
- 0xD62C, 0xC294, 0xD62D, 0xC8A2, 0xD62E, 0xC295, 0xD62F, 0xC296,
- 0xD630, 0xC297, 0xD631, 0xC298, 0xD632, 0xC299, 0xD633, 0xC29A,
- 0xD634, 0xC29B, 0xD635, 0xC29C, 0xD636, 0xC29D, 0xD637, 0xC29E,
- 0xD638, 0xC8A3, 0xD639, 0xC8A4, 0xD63A, 0xC29F, 0xD63B, 0xC2A0,
- 0xD63C, 0xC8A5, 0xD63D, 0xC341, 0xD63E, 0xC342, 0xD63F, 0xC343,
- 0xD640, 0xC8A6, 0xD641, 0xC344, 0xD642, 0xC345, 0xD643, 0xC346,
- 0xD644, 0xC347, 0xD645, 0xC8A7, 0xD646, 0xC348, 0xD647, 0xC349,
- 0xD648, 0xC8A8, 0xD649, 0xC8A9, 0xD64A, 0xC34A, 0xD64B, 0xC8AA,
- 0xD64C, 0xC34B, 0xD64D, 0xC8AB, 0xD64E, 0xC34C, 0xD64F, 0xC34D,
- 0xD650, 0xC34E, 0xD651, 0xC8AC, 0xD652, 0xC34F, 0xD653, 0xC350,
- 0xD654, 0xC8AD, 0xD655, 0xC8AE, 0xD656, 0xC351, 0xD657, 0xC352,
- 0xD658, 0xC8AF, 0xD659, 0xC353, 0xD65A, 0xC354, 0xD65B, 0xC355,
- 0xD65C, 0xC8B0, 0xD65D, 0xC356, 0xD65E, 0xC357, 0xD65F, 0xC358,
- 0xD660, 0xC359, 0xD661, 0xC35A, 0xD662, 0xC361, 0xD663, 0xC362,
- 0xD664, 0xC363, 0xD665, 0xC364, 0xD666, 0xC365, 0xD667, 0xC8B1,
- 0xD668, 0xC366, 0xD669, 0xC8B2, 0xD66A, 0xC367, 0xD66B, 0xC368,
- 0xD66C, 0xC369, 0xD66D, 0xC36A, 0xD66E, 0xC36B, 0xD66F, 0xC36C,
- 0xD670, 0xC8B3, 0xD671, 0xC8B4, 0xD672, 0xC36D, 0xD673, 0xC36E,
- 0xD674, 0xC8B5, 0xD675, 0xC36F, 0xD676, 0xC370, 0xD677, 0xC371,
- 0xD678, 0xC372, 0xD679, 0xC373, 0xD67A, 0xC374, 0xD67B, 0xC375,
- 0xD67C, 0xC376, 0xD67D, 0xC377, 0xD67E, 0xC378, 0xD67F, 0xC379,
- 0xD680, 0xC37A, 0xD681, 0xC381, 0xD682, 0xC382, 0xD683, 0xC8B6,
- 0xD684, 0xC383, 0xD685, 0xC8B7, 0xD686, 0xC384, 0xD687, 0xC385,
- 0xD688, 0xC386, 0xD689, 0xC387, 0xD68A, 0xC388, 0xD68B, 0xC389,
- 0xD68C, 0xC8B8, 0xD68D, 0xC8B9, 0xD68E, 0xC38A, 0xD68F, 0xC38B,
- 0xD690, 0xC8BA, 0xD691, 0xC38C, 0xD692, 0xC38D, 0xD693, 0xC38E,
- 0xD694, 0xC8BB, 0xD695, 0xC38F, 0xD696, 0xC390, 0xD697, 0xC391,
- 0xD698, 0xC392, 0xD699, 0xC393, 0xD69A, 0xC394, 0xD69B, 0xC395,
- 0xD69C, 0xC396, 0xD69D, 0xC8BC, 0xD69E, 0xC397, 0xD69F, 0xC8BD,
- 0xD6A0, 0xC398, 0xD6A1, 0xC8BE, 0xD6A2, 0xC399, 0xD6A3, 0xC39A,
- 0xD6A4, 0xC39B, 0xD6A5, 0xC39C, 0xD6A6, 0xC39D, 0xD6A7, 0xC39E,
- 0xD6A8, 0xC8BF, 0xD6A9, 0xC39F, 0xD6AA, 0xC3A0, 0xD6AB, 0xC441,
- 0xD6AC, 0xC8C0, 0xD6AD, 0xC442, 0xD6AE, 0xC443, 0xD6AF, 0xC444,
- 0xD6B0, 0xC8C1, 0xD6B1, 0xC445, 0xD6B2, 0xC446, 0xD6B3, 0xC447,
- 0xD6B4, 0xC448, 0xD6B5, 0xC449, 0xD6B6, 0xC44A, 0xD6B7, 0xC44B,
- 0xD6B8, 0xC44C, 0xD6B9, 0xC8C2, 0xD6BA, 0xC44D, 0xD6BB, 0xC8C3,
- 0xD6BC, 0xC44E, 0xD6BD, 0xC44F, 0xD6BE, 0xC450, 0xD6BF, 0xC451,
- 0xD6C0, 0xC452, 0xD6C1, 0xC453, 0xD6C2, 0xC454, 0xD6C3, 0xC455,
- 0xD6C4, 0xC8C4, 0xD6C5, 0xC8C5, 0xD6C6, 0xC456, 0xD6C7, 0xC457,
- 0xD6C8, 0xC8C6, 0xD6C9, 0xC458, 0xD6CA, 0xC459, 0xD6CB, 0xC45A,
- 0xD6CC, 0xC8C7, 0xD6CD, 0xC461, 0xD6CE, 0xC462, 0xD6CF, 0xC463,
- 0xD6D0, 0xC464, 0xD6D1, 0xC8C8, 0xD6D2, 0xC465, 0xD6D3, 0xC466,
- 0xD6D4, 0xC8C9, 0xD6D5, 0xC467, 0xD6D6, 0xC468, 0xD6D7, 0xC8CA,
- 0xD6D8, 0xC469, 0xD6D9, 0xC8CB, 0xD6DA, 0xC46A, 0xD6DB, 0xC46B,
- 0xD6DC, 0xC46C, 0xD6DD, 0xC46D, 0xD6DE, 0xC46E, 0xD6DF, 0xC46F,
- 0xD6E0, 0xC8CC, 0xD6E1, 0xC470, 0xD6E2, 0xC471, 0xD6E3, 0xC472,
- 0xD6E4, 0xC8CD, 0xD6E5, 0xC473, 0xD6E6, 0xC474, 0xD6E7, 0xC475,
- 0xD6E8, 0xC8CE, 0xD6E9, 0xC476, 0xD6EA, 0xC477, 0xD6EB, 0xC478,
- 0xD6EC, 0xC479, 0xD6ED, 0xC47A, 0xD6EE, 0xC481, 0xD6EF, 0xC482,
- 0xD6F0, 0xC8CF, 0xD6F1, 0xC483, 0xD6F2, 0xC484, 0xD6F3, 0xC485,
- 0xD6F4, 0xC486, 0xD6F5, 0xC8D0, 0xD6F6, 0xC487, 0xD6F7, 0xC488,
- 0xD6F8, 0xC489, 0xD6F9, 0xC48A, 0xD6FA, 0xC48B, 0xD6FB, 0xC48C,
- 0xD6FC, 0xC8D1, 0xD6FD, 0xC8D2, 0xD6FE, 0xC48D, 0xD6FF, 0xC48E,
- 0xD700, 0xC8D3, 0xD701, 0xC48F, 0xD702, 0xC490, 0xD703, 0xC491,
- 0xD704, 0xC8D4, 0xD705, 0xC492, 0xD706, 0xC493, 0xD707, 0xC494,
- 0xD708, 0xC495, 0xD709, 0xC496, 0xD70A, 0xC497, 0xD70B, 0xC498,
- 0xD70C, 0xC499, 0xD70D, 0xC49A, 0xD70E, 0xC49B, 0xD70F, 0xC49C,
- 0xD710, 0xC49D, 0xD711, 0xC8D5, 0xD712, 0xC49E, 0xD713, 0xC49F,
- 0xD714, 0xC4A0, 0xD715, 0xC541, 0xD716, 0xC542, 0xD717, 0xC543,
- 0xD718, 0xC8D6, 0xD719, 0xC8D7, 0xD71A, 0xC544, 0xD71B, 0xC545,
- 0xD71C, 0xC8D8, 0xD71D, 0xC546, 0xD71E, 0xC547, 0xD71F, 0xC548,
- 0xD720, 0xC8D9, 0xD721, 0xC549, 0xD722, 0xC54A, 0xD723, 0xC54B,
- 0xD724, 0xC54C, 0xD725, 0xC54D, 0xD726, 0xC54E, 0xD727, 0xC54F,
- 0xD728, 0xC8DA, 0xD729, 0xC8DB, 0xD72A, 0xC550, 0xD72B, 0xC8DC,
- 0xD72C, 0xC551, 0xD72D, 0xC8DD, 0xD72E, 0xC552, 0xD72F, 0xC553,
- 0xD730, 0xC554, 0xD731, 0xC555, 0xD732, 0xC556, 0xD733, 0xC557,
- 0xD734, 0xC8DE, 0xD735, 0xC8DF, 0xD736, 0xC558, 0xD737, 0xC559,
- 0xD738, 0xC8E0, 0xD739, 0xC55A, 0xD73A, 0xC561, 0xD73B, 0xC562,
- 0xD73C, 0xC8E1, 0xD73D, 0xC563, 0xD73E, 0xC564, 0xD73F, 0xC565,
- 0xD740, 0xC566, 0xD741, 0xC567, 0xD742, 0xC568, 0xD743, 0xC569,
- 0xD744, 0xC8E2, 0xD745, 0xC56A, 0xD746, 0xC56B, 0xD747, 0xC8E3,
- 0xD748, 0xC56C, 0xD749, 0xC8E4, 0xD74A, 0xC56D, 0xD74B, 0xC56E,
- 0xD74C, 0xC56F, 0xD74D, 0xC570, 0xD74E, 0xC571, 0xD74F, 0xC572,
- 0xD750, 0xC8E5, 0xD751, 0xC8E6, 0xD752, 0xC573, 0xD753, 0xC574,
- 0xD754, 0xC8E7, 0xD755, 0xC575, 0xD756, 0xC8E8, 0xD757, 0xC8E9,
- 0xD758, 0xC8EA, 0xD759, 0xC8EB, 0xD75A, 0xC576, 0xD75B, 0xC577,
- 0xD75C, 0xC578, 0xD75D, 0xC579, 0xD75E, 0xC57A, 0xD75F, 0xC581,
- 0xD760, 0xC8EC, 0xD761, 0xC8ED, 0xD762, 0xC582, 0xD763, 0xC8EE,
- 0xD764, 0xC583, 0xD765, 0xC8EF, 0xD766, 0xC584, 0xD767, 0xC585,
- 0xD768, 0xC586, 0xD769, 0xC8F0, 0xD76A, 0xC587, 0xD76B, 0xC588,
- 0xD76C, 0xC8F1, 0xD76D, 0xC589, 0xD76E, 0xC58A, 0xD76F, 0xC58B,
- 0xD770, 0xC8F2, 0xD771, 0xC58C, 0xD772, 0xC58D, 0xD773, 0xC58E,
- 0xD774, 0xC8F3, 0xD775, 0xC58F, 0xD776, 0xC590, 0xD777, 0xC591,
- 0xD778, 0xC592, 0xD779, 0xC593, 0xD77A, 0xC594, 0xD77B, 0xC595,
- 0xD77C, 0xC8F4, 0xD77D, 0xC8F5, 0xD77E, 0xC596, 0xD77F, 0xC597,
- 0xD780, 0xC598, 0xD781, 0xC8F6, 0xD782, 0xC599, 0xD783, 0xC59A,
- 0xD784, 0xC59B, 0xD785, 0xC59C, 0xD786, 0xC59D, 0xD787, 0xC59E,
- 0xD788, 0xC8F7, 0xD789, 0xC8F8, 0xD78A, 0xC59F, 0xD78B, 0xC5A0,
- 0xD78C, 0xC8F9, 0xD78D, 0xC641, 0xD78E, 0xC642, 0xD78F, 0xC643,
- 0xD790, 0xC8FA, 0xD791, 0xC644, 0xD792, 0xC645, 0xD793, 0xC646,
- 0xD794, 0xC647, 0xD795, 0xC648, 0xD796, 0xC649, 0xD797, 0xC64A,
- 0xD798, 0xC8FB, 0xD799, 0xC8FC, 0xD79A, 0xC64B, 0xD79B, 0xC8FD,
- 0xD79C, 0xC64C, 0xD79D, 0xC8FE, 0xD79E, 0xC64D, 0xD79F, 0xC64E,
- 0xD7A0, 0xC64F, 0xD7A1, 0xC650, 0xD7A2, 0xC651, 0xD7A3, 0xC652,
- 0xF900, 0xCBD0, 0xF901, 0xCBD6, 0xF902, 0xCBE7, 0xF903, 0xCDCF,
- 0xF904, 0xCDE8, 0xF905, 0xCEAD, 0xF906, 0xCFFB, 0xF907, 0xD0A2,
- 0xF908, 0xD0B8, 0xF909, 0xD0D0, 0xF90A, 0xD0DD, 0xF90B, 0xD1D4,
- 0xF90C, 0xD1D5, 0xF90D, 0xD1D8, 0xF90E, 0xD1DB, 0xF90F, 0xD1DC,
- 0xF910, 0xD1DD, 0xF911, 0xD1DE, 0xF912, 0xD1DF, 0xF913, 0xD1E0,
- 0xF914, 0xD1E2, 0xF915, 0xD1E3, 0xF916, 0xD1E4, 0xF917, 0xD1E5,
- 0xF918, 0xD1E6, 0xF919, 0xD1E8, 0xF91A, 0xD1E9, 0xF91B, 0xD1EA,
- 0xF91C, 0xD1EB, 0xF91D, 0xD1ED, 0xF91E, 0xD1EF, 0xF91F, 0xD1F0,
- 0xF920, 0xD1F2, 0xF921, 0xD1F6, 0xF922, 0xD1FA, 0xF923, 0xD1FC,
- 0xF924, 0xD1FD, 0xF925, 0xD1FE, 0xF926, 0xD2A2, 0xF927, 0xD2A3,
- 0xF928, 0xD2A7, 0xF929, 0xD2A8, 0xF92A, 0xD2A9, 0xF92B, 0xD2AA,
- 0xF92C, 0xD2AB, 0xF92D, 0xD2AD, 0xF92E, 0xD2B2, 0xF92F, 0xD2BE,
- 0xF930, 0xD2C2, 0xF931, 0xD2C3, 0xF932, 0xD2C4, 0xF933, 0xD2C6,
- 0xF934, 0xD2C7, 0xF935, 0xD2C8, 0xF936, 0xD2C9, 0xF937, 0xD2CA,
- 0xF938, 0xD2CB, 0xF939, 0xD2CD, 0xF93A, 0xD2CE, 0xF93B, 0xD2CF,
- 0xF93C, 0xD2D0, 0xF93D, 0xD2D1, 0xF93E, 0xD2D2, 0xF93F, 0xD2D3,
- 0xF940, 0xD2D4, 0xF941, 0xD2D5, 0xF942, 0xD2D6, 0xF943, 0xD2D7,
- 0xF944, 0xD2D9, 0xF945, 0xD2DA, 0xF946, 0xD2DE, 0xF947, 0xD2DF,
- 0xF948, 0xD2E1, 0xF949, 0xD2E2, 0xF94A, 0xD2E4, 0xF94B, 0xD2E5,
- 0xF94C, 0xD2E6, 0xF94D, 0xD2E7, 0xF94E, 0xD2E8, 0xF94F, 0xD2E9,
- 0xF950, 0xD2EA, 0xF951, 0xD2EB, 0xF952, 0xD2F0, 0xF953, 0xD2F1,
- 0xF954, 0xD2F2, 0xF955, 0xD2F3, 0xF956, 0xD2F4, 0xF957, 0xD2F5,
- 0xF958, 0xD2F7, 0xF959, 0xD2F8, 0xF95A, 0xD4E6, 0xF95B, 0xD4FC,
- 0xF95C, 0xD5A5, 0xF95D, 0xD5AB, 0xF95E, 0xD5AE, 0xF95F, 0xD6B8,
- 0xF960, 0xD6CD, 0xF961, 0xD7CB, 0xF962, 0xD7E4, 0xF963, 0xDBC5,
- 0xF964, 0xDBE4, 0xF965, 0xDCA5, 0xF966, 0xDDA5, 0xF967, 0xDDD5,
- 0xF968, 0xDDF4, 0xF969, 0xDEFC, 0xF96A, 0xDEFE, 0xF96B, 0xDFB3,
- 0xF96C, 0xDFE1, 0xF96D, 0xDFE8, 0xF96E, 0xE0F1, 0xF96F, 0xE1AD,
- 0xF970, 0xE1ED, 0xF971, 0xE3F5, 0xF972, 0xE4A1, 0xF973, 0xE4A9,
- 0xF974, 0xE5AE, 0xF975, 0xE5B1, 0xF976, 0xE5B2, 0xF977, 0xE5B9,
- 0xF978, 0xE5BB, 0xF979, 0xE5BC, 0xF97A, 0xE5C4, 0xF97B, 0xE5CE,
- 0xF97C, 0xE5D0, 0xF97D, 0xE5D2, 0xF97E, 0xE5D6, 0xF97F, 0xE5FA,
- 0xF980, 0xE5FB, 0xF981, 0xE5FC, 0xF982, 0xE5FE, 0xF983, 0xE6A1,
- 0xF984, 0xE6A4, 0xF985, 0xE6A7, 0xF986, 0xE6AD, 0xF987, 0xE6AF,
- 0xF988, 0xE6B0, 0xF989, 0xE6B1, 0xF98A, 0xE6B3, 0xF98B, 0xE6B7,
- 0xF98C, 0xE6B8, 0xF98D, 0xE6BC, 0xF98E, 0xE6C4, 0xF98F, 0xE6C6,
- 0xF990, 0xE6C7, 0xF991, 0xE6CA, 0xF992, 0xE6D2, 0xF993, 0xE6D6,
- 0xF994, 0xE6D9, 0xF995, 0xE6DC, 0xF996, 0xE6DF, 0xF997, 0xE6E1,
- 0xF998, 0xE6E4, 0xF999, 0xE6E5, 0xF99A, 0xE6E6, 0xF99B, 0xE6E8,
- 0xF99C, 0xE6EA, 0xF99D, 0xE6EB, 0xF99E, 0xE6EC, 0xF99F, 0xE6EF,
- 0xF9A0, 0xE6F1, 0xF9A1, 0xE6F2, 0xF9A2, 0xE6F5, 0xF9A3, 0xE6F6,
- 0xF9A4, 0xE6F7, 0xF9A5, 0xE6F9, 0xF9A6, 0xE7A1, 0xF9A7, 0xE7A6,
- 0xF9A8, 0xE7A9, 0xF9A9, 0xE7AA, 0xF9AA, 0xE7AC, 0xF9AB, 0xE7AD,
- 0xF9AC, 0xE7B0, 0xF9AD, 0xE7BF, 0xF9AE, 0xE7C1, 0xF9AF, 0xE7C6,
- 0xF9B0, 0xE7C7, 0xF9B1, 0xE7CB, 0xF9B2, 0xE7CD, 0xF9B3, 0xE7CF,
- 0xF9B4, 0xE7D0, 0xF9B5, 0xE7D3, 0xF9B6, 0xE7DF, 0xF9B7, 0xE7E4,
- 0xF9B8, 0xE7E6, 0xF9B9, 0xE7F7, 0xF9BA, 0xE8E7, 0xF9BB, 0xE8E8,
- 0xF9BC, 0xE8F0, 0xF9BD, 0xE8F1, 0xF9BE, 0xE8F7, 0xF9BF, 0xE8F9,
- 0xF9C0, 0xE8FB, 0xF9C1, 0xE8FE, 0xF9C2, 0xE9A7, 0xF9C3, 0xE9AC,
- 0xF9C4, 0xE9CC, 0xF9C5, 0xE9F7, 0xF9C6, 0xEAC1, 0xF9C7, 0xEAE5,
- 0xF9C8, 0xEAF4, 0xF9C9, 0xEAF7, 0xF9CA, 0xEAFC, 0xF9CB, 0xEAFE,
- 0xF9CC, 0xEBA4, 0xF9CD, 0xEBA7, 0xF9CE, 0xEBA9, 0xF9CF, 0xEBAA,
- 0xF9D0, 0xEBBA, 0xF9D1, 0xEBBB, 0xF9D2, 0xEBBD, 0xF9D3, 0xEBC1,
- 0xF9D4, 0xEBC2, 0xF9D5, 0xEBC6, 0xF9D6, 0xEBC7, 0xF9D7, 0xEBCC,
- 0xF9D8, 0xEBCF, 0xF9D9, 0xEBD0, 0xF9DA, 0xEBD1, 0xF9DB, 0xEBD2,
- 0xF9DC, 0xEBD8, 0xF9DD, 0xECA6, 0xF9DE, 0xECA7, 0xF9DF, 0xECAA,
- 0xF9E0, 0xECAF, 0xF9E1, 0xECB0, 0xF9E2, 0xECB1, 0xF9E3, 0xECB2,
- 0xF9E4, 0xECB5, 0xF9E5, 0xECB8, 0xF9E6, 0xECBA, 0xF9E7, 0xECC0,
- 0xF9E8, 0xECC1, 0xF9E9, 0xECC5, 0xF9EA, 0xECC6, 0xF9EB, 0xECC9,
- 0xF9EC, 0xECCA, 0xF9ED, 0xECD5, 0xF9EE, 0xECDD, 0xF9EF, 0xECDE,
- 0xF9F0, 0xECE1, 0xF9F1, 0xECE4, 0xF9F2, 0xECE7, 0xF9F3, 0xECE8,
- 0xF9F4, 0xECF7, 0xF9F5, 0xECF8, 0xF9F6, 0xECFA, 0xF9F7, 0xEDA1,
- 0xF9F8, 0xEDA2, 0xF9F9, 0xEDA3, 0xF9FA, 0xEDEE, 0xF9FB, 0xEEDB,
- 0xF9FC, 0xF2BD, 0xF9FD, 0xF2FA, 0xF9FE, 0xF3B1, 0xF9FF, 0xF4A7,
- 0xFA00, 0xF4EE, 0xFA01, 0xF6F4, 0xFA02, 0xF6F6, 0xFA03, 0xF7B8,
- 0xFA04, 0xF7C8, 0xFA05, 0xF7D3, 0xFA06, 0xF8DB, 0xFA07, 0xF8F0,
- 0xFA08, 0xFAA1, 0xFA09, 0xFAA2, 0xFA0A, 0xFAE6, 0xFA0B, 0xFCA9,
- 0xFF01, 0xA3A1, 0xFF02, 0xA3A2, 0xFF03, 0xA3A3, 0xFF04, 0xA3A4,
- 0xFF05, 0xA3A5, 0xFF06, 0xA3A6, 0xFF07, 0xA3A7, 0xFF08, 0xA3A8,
- 0xFF09, 0xA3A9, 0xFF0A, 0xA3AA, 0xFF0B, 0xA3AB, 0xFF0C, 0xA3AC,
- 0xFF0D, 0xA3AD, 0xFF0E, 0xA3AE, 0xFF0F, 0xA3AF, 0xFF10, 0xA3B0,
- 0xFF11, 0xA3B1, 0xFF12, 0xA3B2, 0xFF13, 0xA3B3, 0xFF14, 0xA3B4,
- 0xFF15, 0xA3B5, 0xFF16, 0xA3B6, 0xFF17, 0xA3B7, 0xFF18, 0xA3B8,
- 0xFF19, 0xA3B9, 0xFF1A, 0xA3BA, 0xFF1B, 0xA3BB, 0xFF1C, 0xA3BC,
- 0xFF1D, 0xA3BD, 0xFF1E, 0xA3BE, 0xFF1F, 0xA3BF, 0xFF20, 0xA3C0,
- 0xFF21, 0xA3C1, 0xFF22, 0xA3C2, 0xFF23, 0xA3C3, 0xFF24, 0xA3C4,
- 0xFF25, 0xA3C5, 0xFF26, 0xA3C6, 0xFF27, 0xA3C7, 0xFF28, 0xA3C8,
- 0xFF29, 0xA3C9, 0xFF2A, 0xA3CA, 0xFF2B, 0xA3CB, 0xFF2C, 0xA3CC,
- 0xFF2D, 0xA3CD, 0xFF2E, 0xA3CE, 0xFF2F, 0xA3CF, 0xFF30, 0xA3D0,
- 0xFF31, 0xA3D1, 0xFF32, 0xA3D2, 0xFF33, 0xA3D3, 0xFF34, 0xA3D4,
- 0xFF35, 0xA3D5, 0xFF36, 0xA3D6, 0xFF37, 0xA3D7, 0xFF38, 0xA3D8,
- 0xFF39, 0xA3D9, 0xFF3A, 0xA3DA, 0xFF3B, 0xA3DB, 0xFF3C, 0xA1AC,
- 0xFF3D, 0xA3DD, 0xFF3E, 0xA3DE, 0xFF3F, 0xA3DF, 0xFF40, 0xA3E0,
- 0xFF41, 0xA3E1, 0xFF42, 0xA3E2, 0xFF43, 0xA3E3, 0xFF44, 0xA3E4,
- 0xFF45, 0xA3E5, 0xFF46, 0xA3E6, 0xFF47, 0xA3E7, 0xFF48, 0xA3E8,
- 0xFF49, 0xA3E9, 0xFF4A, 0xA3EA, 0xFF4B, 0xA3EB, 0xFF4C, 0xA3EC,
- 0xFF4D, 0xA3ED, 0xFF4E, 0xA3EE, 0xFF4F, 0xA3EF, 0xFF50, 0xA3F0,
- 0xFF51, 0xA3F1, 0xFF52, 0xA3F2, 0xFF53, 0xA3F3, 0xFF54, 0xA3F4,
- 0xFF55, 0xA3F5, 0xFF56, 0xA3F6, 0xFF57, 0xA3F7, 0xFF58, 0xA3F8,
- 0xFF59, 0xA3F9, 0xFF5A, 0xA3FA, 0xFF5B, 0xA3FB, 0xFF5C, 0xA3FC,
- 0xFF5D, 0xA3FD, 0xFF5E, 0xA2A6, 0xFFE0, 0xA1CB, 0xFFE1, 0xA1CC,
- 0xFFE2, 0xA1FE, 0xFFE3, 0xA3FE, 0xFFE5, 0xA1CD, 0xFFE6, 0xA3DC,
- 0, 0
-};
-
-static
-const WCHAR oem2uni[] = {
- /* OEM - Unicode, OEM - Unicode, OEM - Unicode, OEM - Unicode */
- 0x8141, 0xAC02, 0x8142, 0xAC03, 0x8143, 0xAC05, 0x8144, 0xAC06,
- 0x8145, 0xAC0B, 0x8146, 0xAC0C, 0x8147, 0xAC0D, 0x8148, 0xAC0E,
- 0x8149, 0xAC0F, 0x814A, 0xAC18, 0x814B, 0xAC1E, 0x814C, 0xAC1F,
- 0x814D, 0xAC21, 0x814E, 0xAC22, 0x814F, 0xAC23, 0x8150, 0xAC25,
- 0x8151, 0xAC26, 0x8152, 0xAC27, 0x8153, 0xAC28, 0x8154, 0xAC29,
- 0x8155, 0xAC2A, 0x8156, 0xAC2B, 0x8157, 0xAC2E, 0x8158, 0xAC32,
- 0x8159, 0xAC33, 0x815A, 0xAC34, 0x8161, 0xAC35, 0x8162, 0xAC36,
- 0x8163, 0xAC37, 0x8164, 0xAC3A, 0x8165, 0xAC3B, 0x8166, 0xAC3D,
- 0x8167, 0xAC3E, 0x8168, 0xAC3F, 0x8169, 0xAC41, 0x816A, 0xAC42,
- 0x816B, 0xAC43, 0x816C, 0xAC44, 0x816D, 0xAC45, 0x816E, 0xAC46,
- 0x816F, 0xAC47, 0x8170, 0xAC48, 0x8171, 0xAC49, 0x8172, 0xAC4A,
- 0x8173, 0xAC4C, 0x8174, 0xAC4E, 0x8175, 0xAC4F, 0x8176, 0xAC50,
- 0x8177, 0xAC51, 0x8178, 0xAC52, 0x8179, 0xAC53, 0x817A, 0xAC55,
- 0x8181, 0xAC56, 0x8182, 0xAC57, 0x8183, 0xAC59, 0x8184, 0xAC5A,
- 0x8185, 0xAC5B, 0x8186, 0xAC5D, 0x8187, 0xAC5E, 0x8188, 0xAC5F,
- 0x8189, 0xAC60, 0x818A, 0xAC61, 0x818B, 0xAC62, 0x818C, 0xAC63,
- 0x818D, 0xAC64, 0x818E, 0xAC65, 0x818F, 0xAC66, 0x8190, 0xAC67,
- 0x8191, 0xAC68, 0x8192, 0xAC69, 0x8193, 0xAC6A, 0x8194, 0xAC6B,
- 0x8195, 0xAC6C, 0x8196, 0xAC6D, 0x8197, 0xAC6E, 0x8198, 0xAC6F,
- 0x8199, 0xAC72, 0x819A, 0xAC73, 0x819B, 0xAC75, 0x819C, 0xAC76,
- 0x819D, 0xAC79, 0x819E, 0xAC7B, 0x819F, 0xAC7C, 0x81A0, 0xAC7D,
- 0x81A1, 0xAC7E, 0x81A2, 0xAC7F, 0x81A3, 0xAC82, 0x81A4, 0xAC87,
- 0x81A5, 0xAC88, 0x81A6, 0xAC8D, 0x81A7, 0xAC8E, 0x81A8, 0xAC8F,
- 0x81A9, 0xAC91, 0x81AA, 0xAC92, 0x81AB, 0xAC93, 0x81AC, 0xAC95,
- 0x81AD, 0xAC96, 0x81AE, 0xAC97, 0x81AF, 0xAC98, 0x81B0, 0xAC99,
- 0x81B1, 0xAC9A, 0x81B2, 0xAC9B, 0x81B3, 0xAC9E, 0x81B4, 0xACA2,
- 0x81B5, 0xACA3, 0x81B6, 0xACA4, 0x81B7, 0xACA5, 0x81B8, 0xACA6,
- 0x81B9, 0xACA7, 0x81BA, 0xACAB, 0x81BB, 0xACAD, 0x81BC, 0xACAE,
- 0x81BD, 0xACB1, 0x81BE, 0xACB2, 0x81BF, 0xACB3, 0x81C0, 0xACB4,
- 0x81C1, 0xACB5, 0x81C2, 0xACB6, 0x81C3, 0xACB7, 0x81C4, 0xACBA,
- 0x81C5, 0xACBE, 0x81C6, 0xACBF, 0x81C7, 0xACC0, 0x81C8, 0xACC2,
- 0x81C9, 0xACC3, 0x81CA, 0xACC5, 0x81CB, 0xACC6, 0x81CC, 0xACC7,
- 0x81CD, 0xACC9, 0x81CE, 0xACCA, 0x81CF, 0xACCB, 0x81D0, 0xACCD,
- 0x81D1, 0xACCE, 0x81D2, 0xACCF, 0x81D3, 0xACD0, 0x81D4, 0xACD1,
- 0x81D5, 0xACD2, 0x81D6, 0xACD3, 0x81D7, 0xACD4, 0x81D8, 0xACD6,
- 0x81D9, 0xACD8, 0x81DA, 0xACD9, 0x81DB, 0xACDA, 0x81DC, 0xACDB,
- 0x81DD, 0xACDC, 0x81DE, 0xACDD, 0x81DF, 0xACDE, 0x81E0, 0xACDF,
- 0x81E1, 0xACE2, 0x81E2, 0xACE3, 0x81E3, 0xACE5, 0x81E4, 0xACE6,
- 0x81E5, 0xACE9, 0x81E6, 0xACEB, 0x81E7, 0xACED, 0x81E8, 0xACEE,
- 0x81E9, 0xACF2, 0x81EA, 0xACF4, 0x81EB, 0xACF7, 0x81EC, 0xACF8,
- 0x81ED, 0xACF9, 0x81EE, 0xACFA, 0x81EF, 0xACFB, 0x81F0, 0xACFE,
- 0x81F1, 0xACFF, 0x81F2, 0xAD01, 0x81F3, 0xAD02, 0x81F4, 0xAD03,
- 0x81F5, 0xAD05, 0x81F6, 0xAD07, 0x81F7, 0xAD08, 0x81F8, 0xAD09,
- 0x81F9, 0xAD0A, 0x81FA, 0xAD0B, 0x81FB, 0xAD0E, 0x81FC, 0xAD10,
- 0x81FD, 0xAD12, 0x81FE, 0xAD13, 0x8241, 0xAD14, 0x8242, 0xAD15,
- 0x8243, 0xAD16, 0x8244, 0xAD17, 0x8245, 0xAD19, 0x8246, 0xAD1A,
- 0x8247, 0xAD1B, 0x8248, 0xAD1D, 0x8249, 0xAD1E, 0x824A, 0xAD1F,
- 0x824B, 0xAD21, 0x824C, 0xAD22, 0x824D, 0xAD23, 0x824E, 0xAD24,
- 0x824F, 0xAD25, 0x8250, 0xAD26, 0x8251, 0xAD27, 0x8252, 0xAD28,
- 0x8253, 0xAD2A, 0x8254, 0xAD2B, 0x8255, 0xAD2E, 0x8256, 0xAD2F,
- 0x8257, 0xAD30, 0x8258, 0xAD31, 0x8259, 0xAD32, 0x825A, 0xAD33,
- 0x8261, 0xAD36, 0x8262, 0xAD37, 0x8263, 0xAD39, 0x8264, 0xAD3A,
- 0x8265, 0xAD3B, 0x8266, 0xAD3D, 0x8267, 0xAD3E, 0x8268, 0xAD3F,
- 0x8269, 0xAD40, 0x826A, 0xAD41, 0x826B, 0xAD42, 0x826C, 0xAD43,
- 0x826D, 0xAD46, 0x826E, 0xAD48, 0x826F, 0xAD4A, 0x8270, 0xAD4B,
- 0x8271, 0xAD4C, 0x8272, 0xAD4D, 0x8273, 0xAD4E, 0x8274, 0xAD4F,
- 0x8275, 0xAD51, 0x8276, 0xAD52, 0x8277, 0xAD53, 0x8278, 0xAD55,
- 0x8279, 0xAD56, 0x827A, 0xAD57, 0x8281, 0xAD59, 0x8282, 0xAD5A,
- 0x8283, 0xAD5B, 0x8284, 0xAD5C, 0x8285, 0xAD5D, 0x8286, 0xAD5E,
- 0x8287, 0xAD5F, 0x8288, 0xAD60, 0x8289, 0xAD62, 0x828A, 0xAD64,
- 0x828B, 0xAD65, 0x828C, 0xAD66, 0x828D, 0xAD67, 0x828E, 0xAD68,
- 0x828F, 0xAD69, 0x8290, 0xAD6A, 0x8291, 0xAD6B, 0x8292, 0xAD6E,
- 0x8293, 0xAD6F, 0x8294, 0xAD71, 0x8295, 0xAD72, 0x8296, 0xAD77,
- 0x8297, 0xAD78, 0x8298, 0xAD79, 0x8299, 0xAD7A, 0x829A, 0xAD7E,
- 0x829B, 0xAD80, 0x829C, 0xAD83, 0x829D, 0xAD84, 0x829E, 0xAD85,
- 0x829F, 0xAD86, 0x82A0, 0xAD87, 0x82A1, 0xAD8A, 0x82A2, 0xAD8B,
- 0x82A3, 0xAD8D, 0x82A4, 0xAD8E, 0x82A5, 0xAD8F, 0x82A6, 0xAD91,
- 0x82A7, 0xAD92, 0x82A8, 0xAD93, 0x82A9, 0xAD94, 0x82AA, 0xAD95,
- 0x82AB, 0xAD96, 0x82AC, 0xAD97, 0x82AD, 0xAD98, 0x82AE, 0xAD99,
- 0x82AF, 0xAD9A, 0x82B0, 0xAD9B, 0x82B1, 0xAD9E, 0x82B2, 0xAD9F,
- 0x82B3, 0xADA0, 0x82B4, 0xADA1, 0x82B5, 0xADA2, 0x82B6, 0xADA3,
- 0x82B7, 0xADA5, 0x82B8, 0xADA6, 0x82B9, 0xADA7, 0x82BA, 0xADA8,
- 0x82BB, 0xADA9, 0x82BC, 0xADAA, 0x82BD, 0xADAB, 0x82BE, 0xADAC,
- 0x82BF, 0xADAD, 0x82C0, 0xADAE, 0x82C1, 0xADAF, 0x82C2, 0xADB0,
- 0x82C3, 0xADB1, 0x82C4, 0xADB2, 0x82C5, 0xADB3, 0x82C6, 0xADB4,
- 0x82C7, 0xADB5, 0x82C8, 0xADB6, 0x82C9, 0xADB8, 0x82CA, 0xADB9,
- 0x82CB, 0xADBA, 0x82CC, 0xADBB, 0x82CD, 0xADBC, 0x82CE, 0xADBD,
- 0x82CF, 0xADBE, 0x82D0, 0xADBF, 0x82D1, 0xADC2, 0x82D2, 0xADC3,
- 0x82D3, 0xADC5, 0x82D4, 0xADC6, 0x82D5, 0xADC7, 0x82D6, 0xADC9,
- 0x82D7, 0xADCA, 0x82D8, 0xADCB, 0x82D9, 0xADCC, 0x82DA, 0xADCD,
- 0x82DB, 0xADCE, 0x82DC, 0xADCF, 0x82DD, 0xADD2, 0x82DE, 0xADD4,
- 0x82DF, 0xADD5, 0x82E0, 0xADD6, 0x82E1, 0xADD7, 0x82E2, 0xADD8,
- 0x82E3, 0xADD9, 0x82E4, 0xADDA, 0x82E5, 0xADDB, 0x82E6, 0xADDD,
- 0x82E7, 0xADDE, 0x82E8, 0xADDF, 0x82E9, 0xADE1, 0x82EA, 0xADE2,
- 0x82EB, 0xADE3, 0x82EC, 0xADE5, 0x82ED, 0xADE6, 0x82EE, 0xADE7,
- 0x82EF, 0xADE8, 0x82F0, 0xADE9, 0x82F1, 0xADEA, 0x82F2, 0xADEB,
- 0x82F3, 0xADEC, 0x82F4, 0xADED, 0x82F5, 0xADEE, 0x82F6, 0xADEF,
- 0x82F7, 0xADF0, 0x82F8, 0xADF1, 0x82F9, 0xADF2, 0x82FA, 0xADF3,
- 0x82FB, 0xADF4, 0x82FC, 0xADF5, 0x82FD, 0xADF6, 0x82FE, 0xADF7,
- 0x8341, 0xADFA, 0x8342, 0xADFB, 0x8343, 0xADFD, 0x8344, 0xADFE,
- 0x8345, 0xAE02, 0x8346, 0xAE03, 0x8347, 0xAE04, 0x8348, 0xAE05,
- 0x8349, 0xAE06, 0x834A, 0xAE07, 0x834B, 0xAE0A, 0x834C, 0xAE0C,
- 0x834D, 0xAE0E, 0x834E, 0xAE0F, 0x834F, 0xAE10, 0x8350, 0xAE11,
- 0x8351, 0xAE12, 0x8352, 0xAE13, 0x8353, 0xAE15, 0x8354, 0xAE16,
- 0x8355, 0xAE17, 0x8356, 0xAE18, 0x8357, 0xAE19, 0x8358, 0xAE1A,
- 0x8359, 0xAE1B, 0x835A, 0xAE1C, 0x8361, 0xAE1D, 0x8362, 0xAE1E,
- 0x8363, 0xAE1F, 0x8364, 0xAE20, 0x8365, 0xAE21, 0x8366, 0xAE22,
- 0x8367, 0xAE23, 0x8368, 0xAE24, 0x8369, 0xAE25, 0x836A, 0xAE26,
- 0x836B, 0xAE27, 0x836C, 0xAE28, 0x836D, 0xAE29, 0x836E, 0xAE2A,
- 0x836F, 0xAE2B, 0x8370, 0xAE2C, 0x8371, 0xAE2D, 0x8372, 0xAE2E,
- 0x8373, 0xAE2F, 0x8374, 0xAE32, 0x8375, 0xAE33, 0x8376, 0xAE35,
- 0x8377, 0xAE36, 0x8378, 0xAE39, 0x8379, 0xAE3B, 0x837A, 0xAE3C,
- 0x8381, 0xAE3D, 0x8382, 0xAE3E, 0x8383, 0xAE3F, 0x8384, 0xAE42,
- 0x8385, 0xAE44, 0x8386, 0xAE47, 0x8387, 0xAE48, 0x8388, 0xAE49,
- 0x8389, 0xAE4B, 0x838A, 0xAE4F, 0x838B, 0xAE51, 0x838C, 0xAE52,
- 0x838D, 0xAE53, 0x838E, 0xAE55, 0x838F, 0xAE57, 0x8390, 0xAE58,
- 0x8391, 0xAE59, 0x8392, 0xAE5A, 0x8393, 0xAE5B, 0x8394, 0xAE5E,
- 0x8395, 0xAE62, 0x8396, 0xAE63, 0x8397, 0xAE64, 0x8398, 0xAE66,
- 0x8399, 0xAE67, 0x839A, 0xAE6A, 0x839B, 0xAE6B, 0x839C, 0xAE6D,
- 0x839D, 0xAE6E, 0x839E, 0xAE6F, 0x839F, 0xAE71, 0x83A0, 0xAE72,
- 0x83A1, 0xAE73, 0x83A2, 0xAE74, 0x83A3, 0xAE75, 0x83A4, 0xAE76,
- 0x83A5, 0xAE77, 0x83A6, 0xAE7A, 0x83A7, 0xAE7E, 0x83A8, 0xAE7F,
- 0x83A9, 0xAE80, 0x83AA, 0xAE81, 0x83AB, 0xAE82, 0x83AC, 0xAE83,
- 0x83AD, 0xAE86, 0x83AE, 0xAE87, 0x83AF, 0xAE88, 0x83B0, 0xAE89,
- 0x83B1, 0xAE8A, 0x83B2, 0xAE8B, 0x83B3, 0xAE8D, 0x83B4, 0xAE8E,
- 0x83B5, 0xAE8F, 0x83B6, 0xAE90, 0x83B7, 0xAE91, 0x83B8, 0xAE92,
- 0x83B9, 0xAE93, 0x83BA, 0xAE94, 0x83BB, 0xAE95, 0x83BC, 0xAE96,
- 0x83BD, 0xAE97, 0x83BE, 0xAE98, 0x83BF, 0xAE99, 0x83C0, 0xAE9A,
- 0x83C1, 0xAE9B, 0x83C2, 0xAE9C, 0x83C3, 0xAE9D, 0x83C4, 0xAE9E,
- 0x83C5, 0xAE9F, 0x83C6, 0xAEA0, 0x83C7, 0xAEA1, 0x83C8, 0xAEA2,
- 0x83C9, 0xAEA3, 0x83CA, 0xAEA4, 0x83CB, 0xAEA5, 0x83CC, 0xAEA6,
- 0x83CD, 0xAEA7, 0x83CE, 0xAEA8, 0x83CF, 0xAEA9, 0x83D0, 0xAEAA,
- 0x83D1, 0xAEAB, 0x83D2, 0xAEAC, 0x83D3, 0xAEAD, 0x83D4, 0xAEAE,
- 0x83D5, 0xAEAF, 0x83D6, 0xAEB0, 0x83D7, 0xAEB1, 0x83D8, 0xAEB2,
- 0x83D9, 0xAEB3, 0x83DA, 0xAEB4, 0x83DB, 0xAEB5, 0x83DC, 0xAEB6,
- 0x83DD, 0xAEB7, 0x83DE, 0xAEB8, 0x83DF, 0xAEB9, 0x83E0, 0xAEBA,
- 0x83E1, 0xAEBB, 0x83E2, 0xAEBF, 0x83E3, 0xAEC1, 0x83E4, 0xAEC2,
- 0x83E5, 0xAEC3, 0x83E6, 0xAEC5, 0x83E7, 0xAEC6, 0x83E8, 0xAEC7,
- 0x83E9, 0xAEC8, 0x83EA, 0xAEC9, 0x83EB, 0xAECA, 0x83EC, 0xAECB,
- 0x83ED, 0xAECE, 0x83EE, 0xAED2, 0x83EF, 0xAED3, 0x83F0, 0xAED4,
- 0x83F1, 0xAED5, 0x83F2, 0xAED6, 0x83F3, 0xAED7, 0x83F4, 0xAEDA,
- 0x83F5, 0xAEDB, 0x83F6, 0xAEDD, 0x83F7, 0xAEDE, 0x83F8, 0xAEDF,
- 0x83F9, 0xAEE0, 0x83FA, 0xAEE1, 0x83FB, 0xAEE2, 0x83FC, 0xAEE3,
- 0x83FD, 0xAEE4, 0x83FE, 0xAEE5, 0x8441, 0xAEE6, 0x8442, 0xAEE7,
- 0x8443, 0xAEE9, 0x8444, 0xAEEA, 0x8445, 0xAEEC, 0x8446, 0xAEEE,
- 0x8447, 0xAEEF, 0x8448, 0xAEF0, 0x8449, 0xAEF1, 0x844A, 0xAEF2,
- 0x844B, 0xAEF3, 0x844C, 0xAEF5, 0x844D, 0xAEF6, 0x844E, 0xAEF7,
- 0x844F, 0xAEF9, 0x8450, 0xAEFA, 0x8451, 0xAEFB, 0x8452, 0xAEFD,
- 0x8453, 0xAEFE, 0x8454, 0xAEFF, 0x8455, 0xAF00, 0x8456, 0xAF01,
- 0x8457, 0xAF02, 0x8458, 0xAF03, 0x8459, 0xAF04, 0x845A, 0xAF05,
- 0x8461, 0xAF06, 0x8462, 0xAF09, 0x8463, 0xAF0A, 0x8464, 0xAF0B,
- 0x8465, 0xAF0C, 0x8466, 0xAF0E, 0x8467, 0xAF0F, 0x8468, 0xAF11,
- 0x8469, 0xAF12, 0x846A, 0xAF13, 0x846B, 0xAF14, 0x846C, 0xAF15,
- 0x846D, 0xAF16, 0x846E, 0xAF17, 0x846F, 0xAF18, 0x8470, 0xAF19,
- 0x8471, 0xAF1A, 0x8472, 0xAF1B, 0x8473, 0xAF1C, 0x8474, 0xAF1D,
- 0x8475, 0xAF1E, 0x8476, 0xAF1F, 0x8477, 0xAF20, 0x8478, 0xAF21,
- 0x8479, 0xAF22, 0x847A, 0xAF23, 0x8481, 0xAF24, 0x8482, 0xAF25,
- 0x8483, 0xAF26, 0x8484, 0xAF27, 0x8485, 0xAF28, 0x8486, 0xAF29,
- 0x8487, 0xAF2A, 0x8488, 0xAF2B, 0x8489, 0xAF2E, 0x848A, 0xAF2F,
- 0x848B, 0xAF31, 0x848C, 0xAF33, 0x848D, 0xAF35, 0x848E, 0xAF36,
- 0x848F, 0xAF37, 0x8490, 0xAF38, 0x8491, 0xAF39, 0x8492, 0xAF3A,
- 0x8493, 0xAF3B, 0x8494, 0xAF3E, 0x8495, 0xAF40, 0x8496, 0xAF44,
- 0x8497, 0xAF45, 0x8498, 0xAF46, 0x8499, 0xAF47, 0x849A, 0xAF4A,
- 0x849B, 0xAF4B, 0x849C, 0xAF4C, 0x849D, 0xAF4D, 0x849E, 0xAF4E,
- 0x849F, 0xAF4F, 0x84A0, 0xAF51, 0x84A1, 0xAF52, 0x84A2, 0xAF53,
- 0x84A3, 0xAF54, 0x84A4, 0xAF55, 0x84A5, 0xAF56, 0x84A6, 0xAF57,
- 0x84A7, 0xAF58, 0x84A8, 0xAF59, 0x84A9, 0xAF5A, 0x84AA, 0xAF5B,
- 0x84AB, 0xAF5E, 0x84AC, 0xAF5F, 0x84AD, 0xAF60, 0x84AE, 0xAF61,
- 0x84AF, 0xAF62, 0x84B0, 0xAF63, 0x84B1, 0xAF66, 0x84B2, 0xAF67,
- 0x84B3, 0xAF68, 0x84B4, 0xAF69, 0x84B5, 0xAF6A, 0x84B6, 0xAF6B,
- 0x84B7, 0xAF6C, 0x84B8, 0xAF6D, 0x84B9, 0xAF6E, 0x84BA, 0xAF6F,
- 0x84BB, 0xAF70, 0x84BC, 0xAF71, 0x84BD, 0xAF72, 0x84BE, 0xAF73,
- 0x84BF, 0xAF74, 0x84C0, 0xAF75, 0x84C1, 0xAF76, 0x84C2, 0xAF77,
- 0x84C3, 0xAF78, 0x84C4, 0xAF7A, 0x84C5, 0xAF7B, 0x84C6, 0xAF7C,
- 0x84C7, 0xAF7D, 0x84C8, 0xAF7E, 0x84C9, 0xAF7F, 0x84CA, 0xAF81,
- 0x84CB, 0xAF82, 0x84CC, 0xAF83, 0x84CD, 0xAF85, 0x84CE, 0xAF86,
- 0x84CF, 0xAF87, 0x84D0, 0xAF89, 0x84D1, 0xAF8A, 0x84D2, 0xAF8B,
- 0x84D3, 0xAF8C, 0x84D4, 0xAF8D, 0x84D5, 0xAF8E, 0x84D6, 0xAF8F,
- 0x84D7, 0xAF92, 0x84D8, 0xAF93, 0x84D9, 0xAF94, 0x84DA, 0xAF96,
- 0x84DB, 0xAF97, 0x84DC, 0xAF98, 0x84DD, 0xAF99, 0x84DE, 0xAF9A,
- 0x84DF, 0xAF9B, 0x84E0, 0xAF9D, 0x84E1, 0xAF9E, 0x84E2, 0xAF9F,
- 0x84E3, 0xAFA0, 0x84E4, 0xAFA1, 0x84E5, 0xAFA2, 0x84E6, 0xAFA3,
- 0x84E7, 0xAFA4, 0x84E8, 0xAFA5, 0x84E9, 0xAFA6, 0x84EA, 0xAFA7,
- 0x84EB, 0xAFA8, 0x84EC, 0xAFA9, 0x84ED, 0xAFAA, 0x84EE, 0xAFAB,
- 0x84EF, 0xAFAC, 0x84F0, 0xAFAD, 0x84F1, 0xAFAE, 0x84F2, 0xAFAF,
- 0x84F3, 0xAFB0, 0x84F4, 0xAFB1, 0x84F5, 0xAFB2, 0x84F6, 0xAFB3,
- 0x84F7, 0xAFB4, 0x84F8, 0xAFB5, 0x84F9, 0xAFB6, 0x84FA, 0xAFB7,
- 0x84FB, 0xAFBA, 0x84FC, 0xAFBB, 0x84FD, 0xAFBD, 0x84FE, 0xAFBE,
- 0x8541, 0xAFBF, 0x8542, 0xAFC1, 0x8543, 0xAFC2, 0x8544, 0xAFC3,
- 0x8545, 0xAFC4, 0x8546, 0xAFC5, 0x8547, 0xAFC6, 0x8548, 0xAFCA,
- 0x8549, 0xAFCC, 0x854A, 0xAFCF, 0x854B, 0xAFD0, 0x854C, 0xAFD1,
- 0x854D, 0xAFD2, 0x854E, 0xAFD3, 0x854F, 0xAFD5, 0x8550, 0xAFD6,
- 0x8551, 0xAFD7, 0x8552, 0xAFD8, 0x8553, 0xAFD9, 0x8554, 0xAFDA,
- 0x8555, 0xAFDB, 0x8556, 0xAFDD, 0x8557, 0xAFDE, 0x8558, 0xAFDF,
- 0x8559, 0xAFE0, 0x855A, 0xAFE1, 0x8561, 0xAFE2, 0x8562, 0xAFE3,
- 0x8563, 0xAFE4, 0x8564, 0xAFE5, 0x8565, 0xAFE6, 0x8566, 0xAFE7,
- 0x8567, 0xAFEA, 0x8568, 0xAFEB, 0x8569, 0xAFEC, 0x856A, 0xAFED,
- 0x856B, 0xAFEE, 0x856C, 0xAFEF, 0x856D, 0xAFF2, 0x856E, 0xAFF3,
- 0x856F, 0xAFF5, 0x8570, 0xAFF6, 0x8571, 0xAFF7, 0x8572, 0xAFF9,
- 0x8573, 0xAFFA, 0x8574, 0xAFFB, 0x8575, 0xAFFC, 0x8576, 0xAFFD,
- 0x8577, 0xAFFE, 0x8578, 0xAFFF, 0x8579, 0xB002, 0x857A, 0xB003,
- 0x8581, 0xB005, 0x8582, 0xB006, 0x8583, 0xB007, 0x8584, 0xB008,
- 0x8585, 0xB009, 0x8586, 0xB00A, 0x8587, 0xB00B, 0x8588, 0xB00D,
- 0x8589, 0xB00E, 0x858A, 0xB00F, 0x858B, 0xB011, 0x858C, 0xB012,
- 0x858D, 0xB013, 0x858E, 0xB015, 0x858F, 0xB016, 0x8590, 0xB017,
- 0x8591, 0xB018, 0x8592, 0xB019, 0x8593, 0xB01A, 0x8594, 0xB01B,
- 0x8595, 0xB01E, 0x8596, 0xB01F, 0x8597, 0xB020, 0x8598, 0xB021,
- 0x8599, 0xB022, 0x859A, 0xB023, 0x859B, 0xB024, 0x859C, 0xB025,
- 0x859D, 0xB026, 0x859E, 0xB027, 0x859F, 0xB029, 0x85A0, 0xB02A,
- 0x85A1, 0xB02B, 0x85A2, 0xB02C, 0x85A3, 0xB02D, 0x85A4, 0xB02E,
- 0x85A5, 0xB02F, 0x85A6, 0xB030, 0x85A7, 0xB031, 0x85A8, 0xB032,
- 0x85A9, 0xB033, 0x85AA, 0xB034, 0x85AB, 0xB035, 0x85AC, 0xB036,
- 0x85AD, 0xB037, 0x85AE, 0xB038, 0x85AF, 0xB039, 0x85B0, 0xB03A,
- 0x85B1, 0xB03B, 0x85B2, 0xB03C, 0x85B3, 0xB03D, 0x85B4, 0xB03E,
- 0x85B5, 0xB03F, 0x85B6, 0xB040, 0x85B7, 0xB041, 0x85B8, 0xB042,
- 0x85B9, 0xB043, 0x85BA, 0xB046, 0x85BB, 0xB047, 0x85BC, 0xB049,
- 0x85BD, 0xB04B, 0x85BE, 0xB04D, 0x85BF, 0xB04F, 0x85C0, 0xB050,
- 0x85C1, 0xB051, 0x85C2, 0xB052, 0x85C3, 0xB056, 0x85C4, 0xB058,
- 0x85C5, 0xB05A, 0x85C6, 0xB05B, 0x85C7, 0xB05C, 0x85C8, 0xB05E,
- 0x85C9, 0xB05F, 0x85CA, 0xB060, 0x85CB, 0xB061, 0x85CC, 0xB062,
- 0x85CD, 0xB063, 0x85CE, 0xB064, 0x85CF, 0xB065, 0x85D0, 0xB066,
- 0x85D1, 0xB067, 0x85D2, 0xB068, 0x85D3, 0xB069, 0x85D4, 0xB06A,
- 0x85D5, 0xB06B, 0x85D6, 0xB06C, 0x85D7, 0xB06D, 0x85D8, 0xB06E,
- 0x85D9, 0xB06F, 0x85DA, 0xB070, 0x85DB, 0xB071, 0x85DC, 0xB072,
- 0x85DD, 0xB073, 0x85DE, 0xB074, 0x85DF, 0xB075, 0x85E0, 0xB076,
- 0x85E1, 0xB077, 0x85E2, 0xB078, 0x85E3, 0xB079, 0x85E4, 0xB07A,
- 0x85E5, 0xB07B, 0x85E6, 0xB07E, 0x85E7, 0xB07F, 0x85E8, 0xB081,
- 0x85E9, 0xB082, 0x85EA, 0xB083, 0x85EB, 0xB085, 0x85EC, 0xB086,
- 0x85ED, 0xB087, 0x85EE, 0xB088, 0x85EF, 0xB089, 0x85F0, 0xB08A,
- 0x85F1, 0xB08B, 0x85F2, 0xB08E, 0x85F3, 0xB090, 0x85F4, 0xB092,
- 0x85F5, 0xB093, 0x85F6, 0xB094, 0x85F7, 0xB095, 0x85F8, 0xB096,
- 0x85F9, 0xB097, 0x85FA, 0xB09B, 0x85FB, 0xB09D, 0x85FC, 0xB09E,
- 0x85FD, 0xB0A3, 0x85FE, 0xB0A4, 0x8641, 0xB0A5, 0x8642, 0xB0A6,
- 0x8643, 0xB0A7, 0x8644, 0xB0AA, 0x8645, 0xB0B0, 0x8646, 0xB0B2,
- 0x8647, 0xB0B6, 0x8648, 0xB0B7, 0x8649, 0xB0B9, 0x864A, 0xB0BA,
- 0x864B, 0xB0BB, 0x864C, 0xB0BD, 0x864D, 0xB0BE, 0x864E, 0xB0BF,
- 0x864F, 0xB0C0, 0x8650, 0xB0C1, 0x8651, 0xB0C2, 0x8652, 0xB0C3,
- 0x8653, 0xB0C6, 0x8654, 0xB0CA, 0x8655, 0xB0CB, 0x8656, 0xB0CC,
- 0x8657, 0xB0CD, 0x8658, 0xB0CE, 0x8659, 0xB0CF, 0x865A, 0xB0D2,
- 0x8661, 0xB0D3, 0x8662, 0xB0D5, 0x8663, 0xB0D6, 0x8664, 0xB0D7,
- 0x8665, 0xB0D9, 0x8666, 0xB0DA, 0x8667, 0xB0DB, 0x8668, 0xB0DC,
- 0x8669, 0xB0DD, 0x866A, 0xB0DE, 0x866B, 0xB0DF, 0x866C, 0xB0E1,
- 0x866D, 0xB0E2, 0x866E, 0xB0E3, 0x866F, 0xB0E4, 0x8670, 0xB0E6,
- 0x8671, 0xB0E7, 0x8672, 0xB0E8, 0x8673, 0xB0E9, 0x8674, 0xB0EA,
- 0x8675, 0xB0EB, 0x8676, 0xB0EC, 0x8677, 0xB0ED, 0x8678, 0xB0EE,
- 0x8679, 0xB0EF, 0x867A, 0xB0F0, 0x8681, 0xB0F1, 0x8682, 0xB0F2,
- 0x8683, 0xB0F3, 0x8684, 0xB0F4, 0x8685, 0xB0F5, 0x8686, 0xB0F6,
- 0x8687, 0xB0F7, 0x8688, 0xB0F8, 0x8689, 0xB0F9, 0x868A, 0xB0FA,
- 0x868B, 0xB0FB, 0x868C, 0xB0FC, 0x868D, 0xB0FD, 0x868E, 0xB0FE,
- 0x868F, 0xB0FF, 0x8690, 0xB100, 0x8691, 0xB101, 0x8692, 0xB102,
- 0x8693, 0xB103, 0x8694, 0xB104, 0x8695, 0xB105, 0x8696, 0xB106,
- 0x8697, 0xB107, 0x8698, 0xB10A, 0x8699, 0xB10D, 0x869A, 0xB10E,
- 0x869B, 0xB10F, 0x869C, 0xB111, 0x869D, 0xB114, 0x869E, 0xB115,
- 0x869F, 0xB116, 0x86A0, 0xB117, 0x86A1, 0xB11A, 0x86A2, 0xB11E,
- 0x86A3, 0xB11F, 0x86A4, 0xB120, 0x86A5, 0xB121, 0x86A6, 0xB122,
- 0x86A7, 0xB126, 0x86A8, 0xB127, 0x86A9, 0xB129, 0x86AA, 0xB12A,
- 0x86AB, 0xB12B, 0x86AC, 0xB12D, 0x86AD, 0xB12E, 0x86AE, 0xB12F,
- 0x86AF, 0xB130, 0x86B0, 0xB131, 0x86B1, 0xB132, 0x86B2, 0xB133,
- 0x86B3, 0xB136, 0x86B4, 0xB13A, 0x86B5, 0xB13B, 0x86B6, 0xB13C,
- 0x86B7, 0xB13D, 0x86B8, 0xB13E, 0x86B9, 0xB13F, 0x86BA, 0xB142,
- 0x86BB, 0xB143, 0x86BC, 0xB145, 0x86BD, 0xB146, 0x86BE, 0xB147,
- 0x86BF, 0xB149, 0x86C0, 0xB14A, 0x86C1, 0xB14B, 0x86C2, 0xB14C,
- 0x86C3, 0xB14D, 0x86C4, 0xB14E, 0x86C5, 0xB14F, 0x86C6, 0xB152,
- 0x86C7, 0xB153, 0x86C8, 0xB156, 0x86C9, 0xB157, 0x86CA, 0xB159,
- 0x86CB, 0xB15A, 0x86CC, 0xB15B, 0x86CD, 0xB15D, 0x86CE, 0xB15E,
- 0x86CF, 0xB15F, 0x86D0, 0xB161, 0x86D1, 0xB162, 0x86D2, 0xB163,
- 0x86D3, 0xB164, 0x86D4, 0xB165, 0x86D5, 0xB166, 0x86D6, 0xB167,
- 0x86D7, 0xB168, 0x86D8, 0xB169, 0x86D9, 0xB16A, 0x86DA, 0xB16B,
- 0x86DB, 0xB16C, 0x86DC, 0xB16D, 0x86DD, 0xB16E, 0x86DE, 0xB16F,
- 0x86DF, 0xB170, 0x86E0, 0xB171, 0x86E1, 0xB172, 0x86E2, 0xB173,
- 0x86E3, 0xB174, 0x86E4, 0xB175, 0x86E5, 0xB176, 0x86E6, 0xB177,
- 0x86E7, 0xB17A, 0x86E8, 0xB17B, 0x86E9, 0xB17D, 0x86EA, 0xB17E,
- 0x86EB, 0xB17F, 0x86EC, 0xB181, 0x86ED, 0xB183, 0x86EE, 0xB184,
- 0x86EF, 0xB185, 0x86F0, 0xB186, 0x86F1, 0xB187, 0x86F2, 0xB18A,
- 0x86F3, 0xB18C, 0x86F4, 0xB18E, 0x86F5, 0xB18F, 0x86F6, 0xB190,
- 0x86F7, 0xB191, 0x86F8, 0xB195, 0x86F9, 0xB196, 0x86FA, 0xB197,
- 0x86FB, 0xB199, 0x86FC, 0xB19A, 0x86FD, 0xB19B, 0x86FE, 0xB19D,
- 0x8741, 0xB19E, 0x8742, 0xB19F, 0x8743, 0xB1A0, 0x8744, 0xB1A1,
- 0x8745, 0xB1A2, 0x8746, 0xB1A3, 0x8747, 0xB1A4, 0x8748, 0xB1A5,
- 0x8749, 0xB1A6, 0x874A, 0xB1A7, 0x874B, 0xB1A9, 0x874C, 0xB1AA,
- 0x874D, 0xB1AB, 0x874E, 0xB1AC, 0x874F, 0xB1AD, 0x8750, 0xB1AE,
- 0x8751, 0xB1AF, 0x8752, 0xB1B0, 0x8753, 0xB1B1, 0x8754, 0xB1B2,
- 0x8755, 0xB1B3, 0x8756, 0xB1B4, 0x8757, 0xB1B5, 0x8758, 0xB1B6,
- 0x8759, 0xB1B7, 0x875A, 0xB1B8, 0x8761, 0xB1B9, 0x8762, 0xB1BA,
- 0x8763, 0xB1BB, 0x8764, 0xB1BC, 0x8765, 0xB1BD, 0x8766, 0xB1BE,
- 0x8767, 0xB1BF, 0x8768, 0xB1C0, 0x8769, 0xB1C1, 0x876A, 0xB1C2,
- 0x876B, 0xB1C3, 0x876C, 0xB1C4, 0x876D, 0xB1C5, 0x876E, 0xB1C6,
- 0x876F, 0xB1C7, 0x8770, 0xB1C8, 0x8771, 0xB1C9, 0x8772, 0xB1CA,
- 0x8773, 0xB1CB, 0x8774, 0xB1CD, 0x8775, 0xB1CE, 0x8776, 0xB1CF,
- 0x8777, 0xB1D1, 0x8778, 0xB1D2, 0x8779, 0xB1D3, 0x877A, 0xB1D5,
- 0x8781, 0xB1D6, 0x8782, 0xB1D7, 0x8783, 0xB1D8, 0x8784, 0xB1D9,
- 0x8785, 0xB1DA, 0x8786, 0xB1DB, 0x8787, 0xB1DE, 0x8788, 0xB1E0,
- 0x8789, 0xB1E1, 0x878A, 0xB1E2, 0x878B, 0xB1E3, 0x878C, 0xB1E4,
- 0x878D, 0xB1E5, 0x878E, 0xB1E6, 0x878F, 0xB1E7, 0x8790, 0xB1EA,
- 0x8791, 0xB1EB, 0x8792, 0xB1ED, 0x8793, 0xB1EE, 0x8794, 0xB1EF,
- 0x8795, 0xB1F1, 0x8796, 0xB1F2, 0x8797, 0xB1F3, 0x8798, 0xB1F4,
- 0x8799, 0xB1F5, 0x879A, 0xB1F6, 0x879B, 0xB1F7, 0x879C, 0xB1F8,
- 0x879D, 0xB1FA, 0x879E, 0xB1FC, 0x879F, 0xB1FE, 0x87A0, 0xB1FF,
- 0x87A1, 0xB200, 0x87A2, 0xB201, 0x87A3, 0xB202, 0x87A4, 0xB203,
- 0x87A5, 0xB206, 0x87A6, 0xB207, 0x87A7, 0xB209, 0x87A8, 0xB20A,
- 0x87A9, 0xB20D, 0x87AA, 0xB20E, 0x87AB, 0xB20F, 0x87AC, 0xB210,
- 0x87AD, 0xB211, 0x87AE, 0xB212, 0x87AF, 0xB213, 0x87B0, 0xB216,
- 0x87B1, 0xB218, 0x87B2, 0xB21A, 0x87B3, 0xB21B, 0x87B4, 0xB21C,
- 0x87B5, 0xB21D, 0x87B6, 0xB21E, 0x87B7, 0xB21F, 0x87B8, 0xB221,
- 0x87B9, 0xB222, 0x87BA, 0xB223, 0x87BB, 0xB224, 0x87BC, 0xB225,
- 0x87BD, 0xB226, 0x87BE, 0xB227, 0x87BF, 0xB228, 0x87C0, 0xB229,
- 0x87C1, 0xB22A, 0x87C2, 0xB22B, 0x87C3, 0xB22C, 0x87C4, 0xB22D,
- 0x87C5, 0xB22E, 0x87C6, 0xB22F, 0x87C7, 0xB230, 0x87C8, 0xB231,
- 0x87C9, 0xB232, 0x87CA, 0xB233, 0x87CB, 0xB235, 0x87CC, 0xB236,
- 0x87CD, 0xB237, 0x87CE, 0xB238, 0x87CF, 0xB239, 0x87D0, 0xB23A,
- 0x87D1, 0xB23B, 0x87D2, 0xB23D, 0x87D3, 0xB23E, 0x87D4, 0xB23F,
- 0x87D5, 0xB240, 0x87D6, 0xB241, 0x87D7, 0xB242, 0x87D8, 0xB243,
- 0x87D9, 0xB244, 0x87DA, 0xB245, 0x87DB, 0xB246, 0x87DC, 0xB247,
- 0x87DD, 0xB248, 0x87DE, 0xB249, 0x87DF, 0xB24A, 0x87E0, 0xB24B,
- 0x87E1, 0xB24C, 0x87E2, 0xB24D, 0x87E3, 0xB24E, 0x87E4, 0xB24F,
- 0x87E5, 0xB250, 0x87E6, 0xB251, 0x87E7, 0xB252, 0x87E8, 0xB253,
- 0x87E9, 0xB254, 0x87EA, 0xB255, 0x87EB, 0xB256, 0x87EC, 0xB257,
- 0x87ED, 0xB259, 0x87EE, 0xB25A, 0x87EF, 0xB25B, 0x87F0, 0xB25D,
- 0x87F1, 0xB25E, 0x87F2, 0xB25F, 0x87F3, 0xB261, 0x87F4, 0xB262,
- 0x87F5, 0xB263, 0x87F6, 0xB264, 0x87F7, 0xB265, 0x87F8, 0xB266,
- 0x87F9, 0xB267, 0x87FA, 0xB26A, 0x87FB, 0xB26B, 0x87FC, 0xB26C,
- 0x87FD, 0xB26D, 0x87FE, 0xB26E, 0x8841, 0xB26F, 0x8842, 0xB270,
- 0x8843, 0xB271, 0x8844, 0xB272, 0x8845, 0xB273, 0x8846, 0xB276,
- 0x8847, 0xB277, 0x8848, 0xB278, 0x8849, 0xB279, 0x884A, 0xB27A,
- 0x884B, 0xB27B, 0x884C, 0xB27D, 0x884D, 0xB27E, 0x884E, 0xB27F,
- 0x884F, 0xB280, 0x8850, 0xB281, 0x8851, 0xB282, 0x8852, 0xB283,
- 0x8853, 0xB286, 0x8854, 0xB287, 0x8855, 0xB288, 0x8856, 0xB28A,
- 0x8857, 0xB28B, 0x8858, 0xB28C, 0x8859, 0xB28D, 0x885A, 0xB28E,
- 0x8861, 0xB28F, 0x8862, 0xB292, 0x8863, 0xB293, 0x8864, 0xB295,
- 0x8865, 0xB296, 0x8866, 0xB297, 0x8867, 0xB29B, 0x8868, 0xB29C,
- 0x8869, 0xB29D, 0x886A, 0xB29E, 0x886B, 0xB29F, 0x886C, 0xB2A2,
- 0x886D, 0xB2A4, 0x886E, 0xB2A7, 0x886F, 0xB2A8, 0x8870, 0xB2A9,
- 0x8871, 0xB2AB, 0x8872, 0xB2AD, 0x8873, 0xB2AE, 0x8874, 0xB2AF,
- 0x8875, 0xB2B1, 0x8876, 0xB2B2, 0x8877, 0xB2B3, 0x8878, 0xB2B5,
- 0x8879, 0xB2B6, 0x887A, 0xB2B7, 0x8881, 0xB2B8, 0x8882, 0xB2B9,
- 0x8883, 0xB2BA, 0x8884, 0xB2BB, 0x8885, 0xB2BC, 0x8886, 0xB2BD,
- 0x8887, 0xB2BE, 0x8888, 0xB2BF, 0x8889, 0xB2C0, 0x888A, 0xB2C1,
- 0x888B, 0xB2C2, 0x888C, 0xB2C3, 0x888D, 0xB2C4, 0x888E, 0xB2C5,
- 0x888F, 0xB2C6, 0x8890, 0xB2C7, 0x8891, 0xB2CA, 0x8892, 0xB2CB,
- 0x8893, 0xB2CD, 0x8894, 0xB2CE, 0x8895, 0xB2CF, 0x8896, 0xB2D1,
- 0x8897, 0xB2D3, 0x8898, 0xB2D4, 0x8899, 0xB2D5, 0x889A, 0xB2D6,
- 0x889B, 0xB2D7, 0x889C, 0xB2DA, 0x889D, 0xB2DC, 0x889E, 0xB2DE,
- 0x889F, 0xB2DF, 0x88A0, 0xB2E0, 0x88A1, 0xB2E1, 0x88A2, 0xB2E3,
- 0x88A3, 0xB2E7, 0x88A4, 0xB2E9, 0x88A5, 0xB2EA, 0x88A6, 0xB2F0,
- 0x88A7, 0xB2F1, 0x88A8, 0xB2F2, 0x88A9, 0xB2F6, 0x88AA, 0xB2FC,
- 0x88AB, 0xB2FD, 0x88AC, 0xB2FE, 0x88AD, 0xB302, 0x88AE, 0xB303,
- 0x88AF, 0xB305, 0x88B0, 0xB306, 0x88B1, 0xB307, 0x88B2, 0xB309,
- 0x88B3, 0xB30A, 0x88B4, 0xB30B, 0x88B5, 0xB30C, 0x88B6, 0xB30D,
- 0x88B7, 0xB30E, 0x88B8, 0xB30F, 0x88B9, 0xB312, 0x88BA, 0xB316,
- 0x88BB, 0xB317, 0x88BC, 0xB318, 0x88BD, 0xB319, 0x88BE, 0xB31A,
- 0x88BF, 0xB31B, 0x88C0, 0xB31D, 0x88C1, 0xB31E, 0x88C2, 0xB31F,
- 0x88C3, 0xB320, 0x88C4, 0xB321, 0x88C5, 0xB322, 0x88C6, 0xB323,
- 0x88C7, 0xB324, 0x88C8, 0xB325, 0x88C9, 0xB326, 0x88CA, 0xB327,
- 0x88CB, 0xB328, 0x88CC, 0xB329, 0x88CD, 0xB32A, 0x88CE, 0xB32B,
- 0x88CF, 0xB32C, 0x88D0, 0xB32D, 0x88D1, 0xB32E, 0x88D2, 0xB32F,
- 0x88D3, 0xB330, 0x88D4, 0xB331, 0x88D5, 0xB332, 0x88D6, 0xB333,
- 0x88D7, 0xB334, 0x88D8, 0xB335, 0x88D9, 0xB336, 0x88DA, 0xB337,
- 0x88DB, 0xB338, 0x88DC, 0xB339, 0x88DD, 0xB33A, 0x88DE, 0xB33B,
- 0x88DF, 0xB33C, 0x88E0, 0xB33D, 0x88E1, 0xB33E, 0x88E2, 0xB33F,
- 0x88E3, 0xB340, 0x88E4, 0xB341, 0x88E5, 0xB342, 0x88E6, 0xB343,
- 0x88E7, 0xB344, 0x88E8, 0xB345, 0x88E9, 0xB346, 0x88EA, 0xB347,
- 0x88EB, 0xB348, 0x88EC, 0xB349, 0x88ED, 0xB34A, 0x88EE, 0xB34B,
- 0x88EF, 0xB34C, 0x88F0, 0xB34D, 0x88F1, 0xB34E, 0x88F2, 0xB34F,
- 0x88F3, 0xB350, 0x88F4, 0xB351, 0x88F5, 0xB352, 0x88F6, 0xB353,
- 0x88F7, 0xB357, 0x88F8, 0xB359, 0x88F9, 0xB35A, 0x88FA, 0xB35D,
- 0x88FB, 0xB360, 0x88FC, 0xB361, 0x88FD, 0xB362, 0x88FE, 0xB363,
- 0x8941, 0xB366, 0x8942, 0xB368, 0x8943, 0xB36A, 0x8944, 0xB36C,
- 0x8945, 0xB36D, 0x8946, 0xB36F, 0x8947, 0xB372, 0x8948, 0xB373,
- 0x8949, 0xB375, 0x894A, 0xB376, 0x894B, 0xB377, 0x894C, 0xB379,
- 0x894D, 0xB37A, 0x894E, 0xB37B, 0x894F, 0xB37C, 0x8950, 0xB37D,
- 0x8951, 0xB37E, 0x8952, 0xB37F, 0x8953, 0xB382, 0x8954, 0xB386,
- 0x8955, 0xB387, 0x8956, 0xB388, 0x8957, 0xB389, 0x8958, 0xB38A,
- 0x8959, 0xB38B, 0x895A, 0xB38D, 0x8961, 0xB38E, 0x8962, 0xB38F,
- 0x8963, 0xB391, 0x8964, 0xB392, 0x8965, 0xB393, 0x8966, 0xB395,
- 0x8967, 0xB396, 0x8968, 0xB397, 0x8969, 0xB398, 0x896A, 0xB399,
- 0x896B, 0xB39A, 0x896C, 0xB39B, 0x896D, 0xB39C, 0x896E, 0xB39D,
- 0x896F, 0xB39E, 0x8970, 0xB39F, 0x8971, 0xB3A2, 0x8972, 0xB3A3,
- 0x8973, 0xB3A4, 0x8974, 0xB3A5, 0x8975, 0xB3A6, 0x8976, 0xB3A7,
- 0x8977, 0xB3A9, 0x8978, 0xB3AA, 0x8979, 0xB3AB, 0x897A, 0xB3AD,
- 0x8981, 0xB3AE, 0x8982, 0xB3AF, 0x8983, 0xB3B0, 0x8984, 0xB3B1,
- 0x8985, 0xB3B2, 0x8986, 0xB3B3, 0x8987, 0xB3B4, 0x8988, 0xB3B5,
- 0x8989, 0xB3B6, 0x898A, 0xB3B7, 0x898B, 0xB3B8, 0x898C, 0xB3B9,
- 0x898D, 0xB3BA, 0x898E, 0xB3BB, 0x898F, 0xB3BC, 0x8990, 0xB3BD,
- 0x8991, 0xB3BE, 0x8992, 0xB3BF, 0x8993, 0xB3C0, 0x8994, 0xB3C1,
- 0x8995, 0xB3C2, 0x8996, 0xB3C3, 0x8997, 0xB3C6, 0x8998, 0xB3C7,
- 0x8999, 0xB3C9, 0x899A, 0xB3CA, 0x899B, 0xB3CD, 0x899C, 0xB3CF,
- 0x899D, 0xB3D1, 0x899E, 0xB3D2, 0x899F, 0xB3D3, 0x89A0, 0xB3D6,
- 0x89A1, 0xB3D8, 0x89A2, 0xB3DA, 0x89A3, 0xB3DC, 0x89A4, 0xB3DE,
- 0x89A5, 0xB3DF, 0x89A6, 0xB3E1, 0x89A7, 0xB3E2, 0x89A8, 0xB3E3,
- 0x89A9, 0xB3E5, 0x89AA, 0xB3E6, 0x89AB, 0xB3E7, 0x89AC, 0xB3E9,
- 0x89AD, 0xB3EA, 0x89AE, 0xB3EB, 0x89AF, 0xB3EC, 0x89B0, 0xB3ED,
- 0x89B1, 0xB3EE, 0x89B2, 0xB3EF, 0x89B3, 0xB3F0, 0x89B4, 0xB3F1,
- 0x89B5, 0xB3F2, 0x89B6, 0xB3F3, 0x89B7, 0xB3F4, 0x89B8, 0xB3F5,
- 0x89B9, 0xB3F6, 0x89BA, 0xB3F7, 0x89BB, 0xB3F8, 0x89BC, 0xB3F9,
- 0x89BD, 0xB3FA, 0x89BE, 0xB3FB, 0x89BF, 0xB3FD, 0x89C0, 0xB3FE,
- 0x89C1, 0xB3FF, 0x89C2, 0xB400, 0x89C3, 0xB401, 0x89C4, 0xB402,
- 0x89C5, 0xB403, 0x89C6, 0xB404, 0x89C7, 0xB405, 0x89C8, 0xB406,
- 0x89C9, 0xB407, 0x89CA, 0xB408, 0x89CB, 0xB409, 0x89CC, 0xB40A,
- 0x89CD, 0xB40B, 0x89CE, 0xB40C, 0x89CF, 0xB40D, 0x89D0, 0xB40E,
- 0x89D1, 0xB40F, 0x89D2, 0xB411, 0x89D3, 0xB412, 0x89D4, 0xB413,
- 0x89D5, 0xB414, 0x89D6, 0xB415, 0x89D7, 0xB416, 0x89D8, 0xB417,
- 0x89D9, 0xB419, 0x89DA, 0xB41A, 0x89DB, 0xB41B, 0x89DC, 0xB41D,
- 0x89DD, 0xB41E, 0x89DE, 0xB41F, 0x89DF, 0xB421, 0x89E0, 0xB422,
- 0x89E1, 0xB423, 0x89E2, 0xB424, 0x89E3, 0xB425, 0x89E4, 0xB426,
- 0x89E5, 0xB427, 0x89E6, 0xB42A, 0x89E7, 0xB42C, 0x89E8, 0xB42D,
- 0x89E9, 0xB42E, 0x89EA, 0xB42F, 0x89EB, 0xB430, 0x89EC, 0xB431,
- 0x89ED, 0xB432, 0x89EE, 0xB433, 0x89EF, 0xB435, 0x89F0, 0xB436,
- 0x89F1, 0xB437, 0x89F2, 0xB438, 0x89F3, 0xB439, 0x89F4, 0xB43A,
- 0x89F5, 0xB43B, 0x89F6, 0xB43C, 0x89F7, 0xB43D, 0x89F8, 0xB43E,
- 0x89F9, 0xB43F, 0x89FA, 0xB440, 0x89FB, 0xB441, 0x89FC, 0xB442,
- 0x89FD, 0xB443, 0x89FE, 0xB444, 0x8A41, 0xB445, 0x8A42, 0xB446,
- 0x8A43, 0xB447, 0x8A44, 0xB448, 0x8A45, 0xB449, 0x8A46, 0xB44A,
- 0x8A47, 0xB44B, 0x8A48, 0xB44C, 0x8A49, 0xB44D, 0x8A4A, 0xB44E,
- 0x8A4B, 0xB44F, 0x8A4C, 0xB452, 0x8A4D, 0xB453, 0x8A4E, 0xB455,
- 0x8A4F, 0xB456, 0x8A50, 0xB457, 0x8A51, 0xB459, 0x8A52, 0xB45A,
- 0x8A53, 0xB45B, 0x8A54, 0xB45C, 0x8A55, 0xB45D, 0x8A56, 0xB45E,
- 0x8A57, 0xB45F, 0x8A58, 0xB462, 0x8A59, 0xB464, 0x8A5A, 0xB466,
- 0x8A61, 0xB467, 0x8A62, 0xB468, 0x8A63, 0xB469, 0x8A64, 0xB46A,
- 0x8A65, 0xB46B, 0x8A66, 0xB46D, 0x8A67, 0xB46E, 0x8A68, 0xB46F,
- 0x8A69, 0xB470, 0x8A6A, 0xB471, 0x8A6B, 0xB472, 0x8A6C, 0xB473,
- 0x8A6D, 0xB474, 0x8A6E, 0xB475, 0x8A6F, 0xB476, 0x8A70, 0xB477,
- 0x8A71, 0xB478, 0x8A72, 0xB479, 0x8A73, 0xB47A, 0x8A74, 0xB47B,
- 0x8A75, 0xB47C, 0x8A76, 0xB47D, 0x8A77, 0xB47E, 0x8A78, 0xB47F,
- 0x8A79, 0xB481, 0x8A7A, 0xB482, 0x8A81, 0xB483, 0x8A82, 0xB484,
- 0x8A83, 0xB485, 0x8A84, 0xB486, 0x8A85, 0xB487, 0x8A86, 0xB489,
- 0x8A87, 0xB48A, 0x8A88, 0xB48B, 0x8A89, 0xB48C, 0x8A8A, 0xB48D,
- 0x8A8B, 0xB48E, 0x8A8C, 0xB48F, 0x8A8D, 0xB490, 0x8A8E, 0xB491,
- 0x8A8F, 0xB492, 0x8A90, 0xB493, 0x8A91, 0xB494, 0x8A92, 0xB495,
- 0x8A93, 0xB496, 0x8A94, 0xB497, 0x8A95, 0xB498, 0x8A96, 0xB499,
- 0x8A97, 0xB49A, 0x8A98, 0xB49B, 0x8A99, 0xB49C, 0x8A9A, 0xB49E,
- 0x8A9B, 0xB49F, 0x8A9C, 0xB4A0, 0x8A9D, 0xB4A1, 0x8A9E, 0xB4A2,
- 0x8A9F, 0xB4A3, 0x8AA0, 0xB4A5, 0x8AA1, 0xB4A6, 0x8AA2, 0xB4A7,
- 0x8AA3, 0xB4A9, 0x8AA4, 0xB4AA, 0x8AA5, 0xB4AB, 0x8AA6, 0xB4AD,
- 0x8AA7, 0xB4AE, 0x8AA8, 0xB4AF, 0x8AA9, 0xB4B0, 0x8AAA, 0xB4B1,
- 0x8AAB, 0xB4B2, 0x8AAC, 0xB4B3, 0x8AAD, 0xB4B4, 0x8AAE, 0xB4B6,
- 0x8AAF, 0xB4B8, 0x8AB0, 0xB4BA, 0x8AB1, 0xB4BB, 0x8AB2, 0xB4BC,
- 0x8AB3, 0xB4BD, 0x8AB4, 0xB4BE, 0x8AB5, 0xB4BF, 0x8AB6, 0xB4C1,
- 0x8AB7, 0xB4C2, 0x8AB8, 0xB4C3, 0x8AB9, 0xB4C5, 0x8ABA, 0xB4C6,
- 0x8ABB, 0xB4C7, 0x8ABC, 0xB4C9, 0x8ABD, 0xB4CA, 0x8ABE, 0xB4CB,
- 0x8ABF, 0xB4CC, 0x8AC0, 0xB4CD, 0x8AC1, 0xB4CE, 0x8AC2, 0xB4CF,
- 0x8AC3, 0xB4D1, 0x8AC4, 0xB4D2, 0x8AC5, 0xB4D3, 0x8AC6, 0xB4D4,
- 0x8AC7, 0xB4D6, 0x8AC8, 0xB4D7, 0x8AC9, 0xB4D8, 0x8ACA, 0xB4D9,
- 0x8ACB, 0xB4DA, 0x8ACC, 0xB4DB, 0x8ACD, 0xB4DE, 0x8ACE, 0xB4DF,
- 0x8ACF, 0xB4E1, 0x8AD0, 0xB4E2, 0x8AD1, 0xB4E5, 0x8AD2, 0xB4E7,
- 0x8AD3, 0xB4E8, 0x8AD4, 0xB4E9, 0x8AD5, 0xB4EA, 0x8AD6, 0xB4EB,
- 0x8AD7, 0xB4EE, 0x8AD8, 0xB4F0, 0x8AD9, 0xB4F2, 0x8ADA, 0xB4F3,
- 0x8ADB, 0xB4F4, 0x8ADC, 0xB4F5, 0x8ADD, 0xB4F6, 0x8ADE, 0xB4F7,
- 0x8ADF, 0xB4F9, 0x8AE0, 0xB4FA, 0x8AE1, 0xB4FB, 0x8AE2, 0xB4FC,
- 0x8AE3, 0xB4FD, 0x8AE4, 0xB4FE, 0x8AE5, 0xB4FF, 0x8AE6, 0xB500,
- 0x8AE7, 0xB501, 0x8AE8, 0xB502, 0x8AE9, 0xB503, 0x8AEA, 0xB504,
- 0x8AEB, 0xB505, 0x8AEC, 0xB506, 0x8AED, 0xB507, 0x8AEE, 0xB508,
- 0x8AEF, 0xB509, 0x8AF0, 0xB50A, 0x8AF1, 0xB50B, 0x8AF2, 0xB50C,
- 0x8AF3, 0xB50D, 0x8AF4, 0xB50E, 0x8AF5, 0xB50F, 0x8AF6, 0xB510,
- 0x8AF7, 0xB511, 0x8AF8, 0xB512, 0x8AF9, 0xB513, 0x8AFA, 0xB516,
- 0x8AFB, 0xB517, 0x8AFC, 0xB519, 0x8AFD, 0xB51A, 0x8AFE, 0xB51D,
- 0x8B41, 0xB51E, 0x8B42, 0xB51F, 0x8B43, 0xB520, 0x8B44, 0xB521,
- 0x8B45, 0xB522, 0x8B46, 0xB523, 0x8B47, 0xB526, 0x8B48, 0xB52B,
- 0x8B49, 0xB52C, 0x8B4A, 0xB52D, 0x8B4B, 0xB52E, 0x8B4C, 0xB52F,
- 0x8B4D, 0xB532, 0x8B4E, 0xB533, 0x8B4F, 0xB535, 0x8B50, 0xB536,
- 0x8B51, 0xB537, 0x8B52, 0xB539, 0x8B53, 0xB53A, 0x8B54, 0xB53B,
- 0x8B55, 0xB53C, 0x8B56, 0xB53D, 0x8B57, 0xB53E, 0x8B58, 0xB53F,
- 0x8B59, 0xB542, 0x8B5A, 0xB546, 0x8B61, 0xB547, 0x8B62, 0xB548,
- 0x8B63, 0xB549, 0x8B64, 0xB54A, 0x8B65, 0xB54E, 0x8B66, 0xB54F,
- 0x8B67, 0xB551, 0x8B68, 0xB552, 0x8B69, 0xB553, 0x8B6A, 0xB555,
- 0x8B6B, 0xB556, 0x8B6C, 0xB557, 0x8B6D, 0xB558, 0x8B6E, 0xB559,
- 0x8B6F, 0xB55A, 0x8B70, 0xB55B, 0x8B71, 0xB55E, 0x8B72, 0xB562,
- 0x8B73, 0xB563, 0x8B74, 0xB564, 0x8B75, 0xB565, 0x8B76, 0xB566,
- 0x8B77, 0xB567, 0x8B78, 0xB568, 0x8B79, 0xB569, 0x8B7A, 0xB56A,
- 0x8B81, 0xB56B, 0x8B82, 0xB56C, 0x8B83, 0xB56D, 0x8B84, 0xB56E,
- 0x8B85, 0xB56F, 0x8B86, 0xB570, 0x8B87, 0xB571, 0x8B88, 0xB572,
- 0x8B89, 0xB573, 0x8B8A, 0xB574, 0x8B8B, 0xB575, 0x8B8C, 0xB576,
- 0x8B8D, 0xB577, 0x8B8E, 0xB578, 0x8B8F, 0xB579, 0x8B90, 0xB57A,
- 0x8B91, 0xB57B, 0x8B92, 0xB57C, 0x8B93, 0xB57D, 0x8B94, 0xB57E,
- 0x8B95, 0xB57F, 0x8B96, 0xB580, 0x8B97, 0xB581, 0x8B98, 0xB582,
- 0x8B99, 0xB583, 0x8B9A, 0xB584, 0x8B9B, 0xB585, 0x8B9C, 0xB586,
- 0x8B9D, 0xB587, 0x8B9E, 0xB588, 0x8B9F, 0xB589, 0x8BA0, 0xB58A,
- 0x8BA1, 0xB58B, 0x8BA2, 0xB58C, 0x8BA3, 0xB58D, 0x8BA4, 0xB58E,
- 0x8BA5, 0xB58F, 0x8BA6, 0xB590, 0x8BA7, 0xB591, 0x8BA8, 0xB592,
- 0x8BA9, 0xB593, 0x8BAA, 0xB594, 0x8BAB, 0xB595, 0x8BAC, 0xB596,
- 0x8BAD, 0xB597, 0x8BAE, 0xB598, 0x8BAF, 0xB599, 0x8BB0, 0xB59A,
- 0x8BB1, 0xB59B, 0x8BB2, 0xB59C, 0x8BB3, 0xB59D, 0x8BB4, 0xB59E,
- 0x8BB5, 0xB59F, 0x8BB6, 0xB5A2, 0x8BB7, 0xB5A3, 0x8BB8, 0xB5A5,
- 0x8BB9, 0xB5A6, 0x8BBA, 0xB5A7, 0x8BBB, 0xB5A9, 0x8BBC, 0xB5AC,
- 0x8BBD, 0xB5AD, 0x8BBE, 0xB5AE, 0x8BBF, 0xB5AF, 0x8BC0, 0xB5B2,
- 0x8BC1, 0xB5B6, 0x8BC2, 0xB5B7, 0x8BC3, 0xB5B8, 0x8BC4, 0xB5B9,
- 0x8BC5, 0xB5BA, 0x8BC6, 0xB5BE, 0x8BC7, 0xB5BF, 0x8BC8, 0xB5C1,
- 0x8BC9, 0xB5C2, 0x8BCA, 0xB5C3, 0x8BCB, 0xB5C5, 0x8BCC, 0xB5C6,
- 0x8BCD, 0xB5C7, 0x8BCE, 0xB5C8, 0x8BCF, 0xB5C9, 0x8BD0, 0xB5CA,
- 0x8BD1, 0xB5CB, 0x8BD2, 0xB5CE, 0x8BD3, 0xB5D2, 0x8BD4, 0xB5D3,
- 0x8BD5, 0xB5D4, 0x8BD6, 0xB5D5, 0x8BD7, 0xB5D6, 0x8BD8, 0xB5D7,
- 0x8BD9, 0xB5D9, 0x8BDA, 0xB5DA, 0x8BDB, 0xB5DB, 0x8BDC, 0xB5DC,
- 0x8BDD, 0xB5DD, 0x8BDE, 0xB5DE, 0x8BDF, 0xB5DF, 0x8BE0, 0xB5E0,
- 0x8BE1, 0xB5E1, 0x8BE2, 0xB5E2, 0x8BE3, 0xB5E3, 0x8BE4, 0xB5E4,
- 0x8BE5, 0xB5E5, 0x8BE6, 0xB5E6, 0x8BE7, 0xB5E7, 0x8BE8, 0xB5E8,
- 0x8BE9, 0xB5E9, 0x8BEA, 0xB5EA, 0x8BEB, 0xB5EB, 0x8BEC, 0xB5ED,
- 0x8BED, 0xB5EE, 0x8BEE, 0xB5EF, 0x8BEF, 0xB5F0, 0x8BF0, 0xB5F1,
- 0x8BF1, 0xB5F2, 0x8BF2, 0xB5F3, 0x8BF3, 0xB5F4, 0x8BF4, 0xB5F5,
- 0x8BF5, 0xB5F6, 0x8BF6, 0xB5F7, 0x8BF7, 0xB5F8, 0x8BF8, 0xB5F9,
- 0x8BF9, 0xB5FA, 0x8BFA, 0xB5FB, 0x8BFB, 0xB5FC, 0x8BFC, 0xB5FD,
- 0x8BFD, 0xB5FE, 0x8BFE, 0xB5FF, 0x8C41, 0xB600, 0x8C42, 0xB601,
- 0x8C43, 0xB602, 0x8C44, 0xB603, 0x8C45, 0xB604, 0x8C46, 0xB605,
- 0x8C47, 0xB606, 0x8C48, 0xB607, 0x8C49, 0xB608, 0x8C4A, 0xB609,
- 0x8C4B, 0xB60A, 0x8C4C, 0xB60B, 0x8C4D, 0xB60C, 0x8C4E, 0xB60D,
- 0x8C4F, 0xB60E, 0x8C50, 0xB60F, 0x8C51, 0xB612, 0x8C52, 0xB613,
- 0x8C53, 0xB615, 0x8C54, 0xB616, 0x8C55, 0xB617, 0x8C56, 0xB619,
- 0x8C57, 0xB61A, 0x8C58, 0xB61B, 0x8C59, 0xB61C, 0x8C5A, 0xB61D,
- 0x8C61, 0xB61E, 0x8C62, 0xB61F, 0x8C63, 0xB620, 0x8C64, 0xB621,
- 0x8C65, 0xB622, 0x8C66, 0xB623, 0x8C67, 0xB624, 0x8C68, 0xB626,
- 0x8C69, 0xB627, 0x8C6A, 0xB628, 0x8C6B, 0xB629, 0x8C6C, 0xB62A,
- 0x8C6D, 0xB62B, 0x8C6E, 0xB62D, 0x8C6F, 0xB62E, 0x8C70, 0xB62F,
- 0x8C71, 0xB630, 0x8C72, 0xB631, 0x8C73, 0xB632, 0x8C74, 0xB633,
- 0x8C75, 0xB635, 0x8C76, 0xB636, 0x8C77, 0xB637, 0x8C78, 0xB638,
- 0x8C79, 0xB639, 0x8C7A, 0xB63A, 0x8C81, 0xB63B, 0x8C82, 0xB63C,
- 0x8C83, 0xB63D, 0x8C84, 0xB63E, 0x8C85, 0xB63F, 0x8C86, 0xB640,
- 0x8C87, 0xB641, 0x8C88, 0xB642, 0x8C89, 0xB643, 0x8C8A, 0xB644,
- 0x8C8B, 0xB645, 0x8C8C, 0xB646, 0x8C8D, 0xB647, 0x8C8E, 0xB649,
- 0x8C8F, 0xB64A, 0x8C90, 0xB64B, 0x8C91, 0xB64C, 0x8C92, 0xB64D,
- 0x8C93, 0xB64E, 0x8C94, 0xB64F, 0x8C95, 0xB650, 0x8C96, 0xB651,
- 0x8C97, 0xB652, 0x8C98, 0xB653, 0x8C99, 0xB654, 0x8C9A, 0xB655,
- 0x8C9B, 0xB656, 0x8C9C, 0xB657, 0x8C9D, 0xB658, 0x8C9E, 0xB659,
- 0x8C9F, 0xB65A, 0x8CA0, 0xB65B, 0x8CA1, 0xB65C, 0x8CA2, 0xB65D,
- 0x8CA3, 0xB65E, 0x8CA4, 0xB65F, 0x8CA5, 0xB660, 0x8CA6, 0xB661,
- 0x8CA7, 0xB662, 0x8CA8, 0xB663, 0x8CA9, 0xB665, 0x8CAA, 0xB666,
- 0x8CAB, 0xB667, 0x8CAC, 0xB669, 0x8CAD, 0xB66A, 0x8CAE, 0xB66B,
- 0x8CAF, 0xB66C, 0x8CB0, 0xB66D, 0x8CB1, 0xB66E, 0x8CB2, 0xB66F,
- 0x8CB3, 0xB670, 0x8CB4, 0xB671, 0x8CB5, 0xB672, 0x8CB6, 0xB673,
- 0x8CB7, 0xB674, 0x8CB8, 0xB675, 0x8CB9, 0xB676, 0x8CBA, 0xB677,
- 0x8CBB, 0xB678, 0x8CBC, 0xB679, 0x8CBD, 0xB67A, 0x8CBE, 0xB67B,
- 0x8CBF, 0xB67C, 0x8CC0, 0xB67D, 0x8CC1, 0xB67E, 0x8CC2, 0xB67F,
- 0x8CC3, 0xB680, 0x8CC4, 0xB681, 0x8CC5, 0xB682, 0x8CC6, 0xB683,
- 0x8CC7, 0xB684, 0x8CC8, 0xB685, 0x8CC9, 0xB686, 0x8CCA, 0xB687,
- 0x8CCB, 0xB688, 0x8CCC, 0xB689, 0x8CCD, 0xB68A, 0x8CCE, 0xB68B,
- 0x8CCF, 0xB68C, 0x8CD0, 0xB68D, 0x8CD1, 0xB68E, 0x8CD2, 0xB68F,
- 0x8CD3, 0xB690, 0x8CD4, 0xB691, 0x8CD5, 0xB692, 0x8CD6, 0xB693,
- 0x8CD7, 0xB694, 0x8CD8, 0xB695, 0x8CD9, 0xB696, 0x8CDA, 0xB697,
- 0x8CDB, 0xB698, 0x8CDC, 0xB699, 0x8CDD, 0xB69A, 0x8CDE, 0xB69B,
- 0x8CDF, 0xB69E, 0x8CE0, 0xB69F, 0x8CE1, 0xB6A1, 0x8CE2, 0xB6A2,
- 0x8CE3, 0xB6A3, 0x8CE4, 0xB6A5, 0x8CE5, 0xB6A6, 0x8CE6, 0xB6A7,
- 0x8CE7, 0xB6A8, 0x8CE8, 0xB6A9, 0x8CE9, 0xB6AA, 0x8CEA, 0xB6AD,
- 0x8CEB, 0xB6AE, 0x8CEC, 0xB6AF, 0x8CED, 0xB6B0, 0x8CEE, 0xB6B2,
- 0x8CEF, 0xB6B3, 0x8CF0, 0xB6B4, 0x8CF1, 0xB6B5, 0x8CF2, 0xB6B6,
- 0x8CF3, 0xB6B7, 0x8CF4, 0xB6B8, 0x8CF5, 0xB6B9, 0x8CF6, 0xB6BA,
- 0x8CF7, 0xB6BB, 0x8CF8, 0xB6BC, 0x8CF9, 0xB6BD, 0x8CFA, 0xB6BE,
- 0x8CFB, 0xB6BF, 0x8CFC, 0xB6C0, 0x8CFD, 0xB6C1, 0x8CFE, 0xB6C2,
- 0x8D41, 0xB6C3, 0x8D42, 0xB6C4, 0x8D43, 0xB6C5, 0x8D44, 0xB6C6,
- 0x8D45, 0xB6C7, 0x8D46, 0xB6C8, 0x8D47, 0xB6C9, 0x8D48, 0xB6CA,
- 0x8D49, 0xB6CB, 0x8D4A, 0xB6CC, 0x8D4B, 0xB6CD, 0x8D4C, 0xB6CE,
- 0x8D4D, 0xB6CF, 0x8D4E, 0xB6D0, 0x8D4F, 0xB6D1, 0x8D50, 0xB6D2,
- 0x8D51, 0xB6D3, 0x8D52, 0xB6D5, 0x8D53, 0xB6D6, 0x8D54, 0xB6D7,
- 0x8D55, 0xB6D8, 0x8D56, 0xB6D9, 0x8D57, 0xB6DA, 0x8D58, 0xB6DB,
- 0x8D59, 0xB6DC, 0x8D5A, 0xB6DD, 0x8D61, 0xB6DE, 0x8D62, 0xB6DF,
- 0x8D63, 0xB6E0, 0x8D64, 0xB6E1, 0x8D65, 0xB6E2, 0x8D66, 0xB6E3,
- 0x8D67, 0xB6E4, 0x8D68, 0xB6E5, 0x8D69, 0xB6E6, 0x8D6A, 0xB6E7,
- 0x8D6B, 0xB6E8, 0x8D6C, 0xB6E9, 0x8D6D, 0xB6EA, 0x8D6E, 0xB6EB,
- 0x8D6F, 0xB6EC, 0x8D70, 0xB6ED, 0x8D71, 0xB6EE, 0x8D72, 0xB6EF,
- 0x8D73, 0xB6F1, 0x8D74, 0xB6F2, 0x8D75, 0xB6F3, 0x8D76, 0xB6F5,
- 0x8D77, 0xB6F6, 0x8D78, 0xB6F7, 0x8D79, 0xB6F9, 0x8D7A, 0xB6FA,
- 0x8D81, 0xB6FB, 0x8D82, 0xB6FC, 0x8D83, 0xB6FD, 0x8D84, 0xB6FE,
- 0x8D85, 0xB6FF, 0x8D86, 0xB702, 0x8D87, 0xB703, 0x8D88, 0xB704,
- 0x8D89, 0xB706, 0x8D8A, 0xB707, 0x8D8B, 0xB708, 0x8D8C, 0xB709,
- 0x8D8D, 0xB70A, 0x8D8E, 0xB70B, 0x8D8F, 0xB70C, 0x8D90, 0xB70D,
- 0x8D91, 0xB70E, 0x8D92, 0xB70F, 0x8D93, 0xB710, 0x8D94, 0xB711,
- 0x8D95, 0xB712, 0x8D96, 0xB713, 0x8D97, 0xB714, 0x8D98, 0xB715,
- 0x8D99, 0xB716, 0x8D9A, 0xB717, 0x8D9B, 0xB718, 0x8D9C, 0xB719,
- 0x8D9D, 0xB71A, 0x8D9E, 0xB71B, 0x8D9F, 0xB71C, 0x8DA0, 0xB71D,
- 0x8DA1, 0xB71E, 0x8DA2, 0xB71F, 0x8DA3, 0xB720, 0x8DA4, 0xB721,
- 0x8DA5, 0xB722, 0x8DA6, 0xB723, 0x8DA7, 0xB724, 0x8DA8, 0xB725,
- 0x8DA9, 0xB726, 0x8DAA, 0xB727, 0x8DAB, 0xB72A, 0x8DAC, 0xB72B,
- 0x8DAD, 0xB72D, 0x8DAE, 0xB72E, 0x8DAF, 0xB731, 0x8DB0, 0xB732,
- 0x8DB1, 0xB733, 0x8DB2, 0xB734, 0x8DB3, 0xB735, 0x8DB4, 0xB736,
- 0x8DB5, 0xB737, 0x8DB6, 0xB73A, 0x8DB7, 0xB73C, 0x8DB8, 0xB73D,
- 0x8DB9, 0xB73E, 0x8DBA, 0xB73F, 0x8DBB, 0xB740, 0x8DBC, 0xB741,
- 0x8DBD, 0xB742, 0x8DBE, 0xB743, 0x8DBF, 0xB745, 0x8DC0, 0xB746,
- 0x8DC1, 0xB747, 0x8DC2, 0xB749, 0x8DC3, 0xB74A, 0x8DC4, 0xB74B,
- 0x8DC5, 0xB74D, 0x8DC6, 0xB74E, 0x8DC7, 0xB74F, 0x8DC8, 0xB750,
- 0x8DC9, 0xB751, 0x8DCA, 0xB752, 0x8DCB, 0xB753, 0x8DCC, 0xB756,
- 0x8DCD, 0xB757, 0x8DCE, 0xB758, 0x8DCF, 0xB759, 0x8DD0, 0xB75A,
- 0x8DD1, 0xB75B, 0x8DD2, 0xB75C, 0x8DD3, 0xB75D, 0x8DD4, 0xB75E,
- 0x8DD5, 0xB75F, 0x8DD6, 0xB761, 0x8DD7, 0xB762, 0x8DD8, 0xB763,
- 0x8DD9, 0xB765, 0x8DDA, 0xB766, 0x8DDB, 0xB767, 0x8DDC, 0xB769,
- 0x8DDD, 0xB76A, 0x8DDE, 0xB76B, 0x8DDF, 0xB76C, 0x8DE0, 0xB76D,
- 0x8DE1, 0xB76E, 0x8DE2, 0xB76F, 0x8DE3, 0xB772, 0x8DE4, 0xB774,
- 0x8DE5, 0xB776, 0x8DE6, 0xB777, 0x8DE7, 0xB778, 0x8DE8, 0xB779,
- 0x8DE9, 0xB77A, 0x8DEA, 0xB77B, 0x8DEB, 0xB77E, 0x8DEC, 0xB77F,
- 0x8DED, 0xB781, 0x8DEE, 0xB782, 0x8DEF, 0xB783, 0x8DF0, 0xB785,
- 0x8DF1, 0xB786, 0x8DF2, 0xB787, 0x8DF3, 0xB788, 0x8DF4, 0xB789,
- 0x8DF5, 0xB78A, 0x8DF6, 0xB78B, 0x8DF7, 0xB78E, 0x8DF8, 0xB793,
- 0x8DF9, 0xB794, 0x8DFA, 0xB795, 0x8DFB, 0xB79A, 0x8DFC, 0xB79B,
- 0x8DFD, 0xB79D, 0x8DFE, 0xB79E, 0x8E41, 0xB79F, 0x8E42, 0xB7A1,
- 0x8E43, 0xB7A2, 0x8E44, 0xB7A3, 0x8E45, 0xB7A4, 0x8E46, 0xB7A5,
- 0x8E47, 0xB7A6, 0x8E48, 0xB7A7, 0x8E49, 0xB7AA, 0x8E4A, 0xB7AE,
- 0x8E4B, 0xB7AF, 0x8E4C, 0xB7B0, 0x8E4D, 0xB7B1, 0x8E4E, 0xB7B2,
- 0x8E4F, 0xB7B3, 0x8E50, 0xB7B6, 0x8E51, 0xB7B7, 0x8E52, 0xB7B9,
- 0x8E53, 0xB7BA, 0x8E54, 0xB7BB, 0x8E55, 0xB7BC, 0x8E56, 0xB7BD,
- 0x8E57, 0xB7BE, 0x8E58, 0xB7BF, 0x8E59, 0xB7C0, 0x8E5A, 0xB7C1,
- 0x8E61, 0xB7C2, 0x8E62, 0xB7C3, 0x8E63, 0xB7C4, 0x8E64, 0xB7C5,
- 0x8E65, 0xB7C6, 0x8E66, 0xB7C8, 0x8E67, 0xB7CA, 0x8E68, 0xB7CB,
- 0x8E69, 0xB7CC, 0x8E6A, 0xB7CD, 0x8E6B, 0xB7CE, 0x8E6C, 0xB7CF,
- 0x8E6D, 0xB7D0, 0x8E6E, 0xB7D1, 0x8E6F, 0xB7D2, 0x8E70, 0xB7D3,
- 0x8E71, 0xB7D4, 0x8E72, 0xB7D5, 0x8E73, 0xB7D6, 0x8E74, 0xB7D7,
- 0x8E75, 0xB7D8, 0x8E76, 0xB7D9, 0x8E77, 0xB7DA, 0x8E78, 0xB7DB,
- 0x8E79, 0xB7DC, 0x8E7A, 0xB7DD, 0x8E81, 0xB7DE, 0x8E82, 0xB7DF,
- 0x8E83, 0xB7E0, 0x8E84, 0xB7E1, 0x8E85, 0xB7E2, 0x8E86, 0xB7E3,
- 0x8E87, 0xB7E4, 0x8E88, 0xB7E5, 0x8E89, 0xB7E6, 0x8E8A, 0xB7E7,
- 0x8E8B, 0xB7E8, 0x8E8C, 0xB7E9, 0x8E8D, 0xB7EA, 0x8E8E, 0xB7EB,
- 0x8E8F, 0xB7EE, 0x8E90, 0xB7EF, 0x8E91, 0xB7F1, 0x8E92, 0xB7F2,
- 0x8E93, 0xB7F3, 0x8E94, 0xB7F5, 0x8E95, 0xB7F6, 0x8E96, 0xB7F7,
- 0x8E97, 0xB7F8, 0x8E98, 0xB7F9, 0x8E99, 0xB7FA, 0x8E9A, 0xB7FB,
- 0x8E9B, 0xB7FE, 0x8E9C, 0xB802, 0x8E9D, 0xB803, 0x8E9E, 0xB804,
- 0x8E9F, 0xB805, 0x8EA0, 0xB806, 0x8EA1, 0xB80A, 0x8EA2, 0xB80B,
- 0x8EA3, 0xB80D, 0x8EA4, 0xB80E, 0x8EA5, 0xB80F, 0x8EA6, 0xB811,
- 0x8EA7, 0xB812, 0x8EA8, 0xB813, 0x8EA9, 0xB814, 0x8EAA, 0xB815,
- 0x8EAB, 0xB816, 0x8EAC, 0xB817, 0x8EAD, 0xB81A, 0x8EAE, 0xB81C,
- 0x8EAF, 0xB81E, 0x8EB0, 0xB81F, 0x8EB1, 0xB820, 0x8EB2, 0xB821,
- 0x8EB3, 0xB822, 0x8EB4, 0xB823, 0x8EB5, 0xB826, 0x8EB6, 0xB827,
- 0x8EB7, 0xB829, 0x8EB8, 0xB82A, 0x8EB9, 0xB82B, 0x8EBA, 0xB82D,
- 0x8EBB, 0xB82E, 0x8EBC, 0xB82F, 0x8EBD, 0xB830, 0x8EBE, 0xB831,
- 0x8EBF, 0xB832, 0x8EC0, 0xB833, 0x8EC1, 0xB836, 0x8EC2, 0xB83A,
- 0x8EC3, 0xB83B, 0x8EC4, 0xB83C, 0x8EC5, 0xB83D, 0x8EC6, 0xB83E,
- 0x8EC7, 0xB83F, 0x8EC8, 0xB841, 0x8EC9, 0xB842, 0x8ECA, 0xB843,
- 0x8ECB, 0xB845, 0x8ECC, 0xB846, 0x8ECD, 0xB847, 0x8ECE, 0xB848,
- 0x8ECF, 0xB849, 0x8ED0, 0xB84A, 0x8ED1, 0xB84B, 0x8ED2, 0xB84C,
- 0x8ED3, 0xB84D, 0x8ED4, 0xB84E, 0x8ED5, 0xB84F, 0x8ED6, 0xB850,
- 0x8ED7, 0xB852, 0x8ED8, 0xB854, 0x8ED9, 0xB855, 0x8EDA, 0xB856,
- 0x8EDB, 0xB857, 0x8EDC, 0xB858, 0x8EDD, 0xB859, 0x8EDE, 0xB85A,
- 0x8EDF, 0xB85B, 0x8EE0, 0xB85E, 0x8EE1, 0xB85F, 0x8EE2, 0xB861,
- 0x8EE3, 0xB862, 0x8EE4, 0xB863, 0x8EE5, 0xB865, 0x8EE6, 0xB866,
- 0x8EE7, 0xB867, 0x8EE8, 0xB868, 0x8EE9, 0xB869, 0x8EEA, 0xB86A,
- 0x8EEB, 0xB86B, 0x8EEC, 0xB86E, 0x8EED, 0xB870, 0x8EEE, 0xB872,
- 0x8EEF, 0xB873, 0x8EF0, 0xB874, 0x8EF1, 0xB875, 0x8EF2, 0xB876,
- 0x8EF3, 0xB877, 0x8EF4, 0xB879, 0x8EF5, 0xB87A, 0x8EF6, 0xB87B,
- 0x8EF7, 0xB87D, 0x8EF8, 0xB87E, 0x8EF9, 0xB87F, 0x8EFA, 0xB880,
- 0x8EFB, 0xB881, 0x8EFC, 0xB882, 0x8EFD, 0xB883, 0x8EFE, 0xB884,
- 0x8F41, 0xB885, 0x8F42, 0xB886, 0x8F43, 0xB887, 0x8F44, 0xB888,
- 0x8F45, 0xB889, 0x8F46, 0xB88A, 0x8F47, 0xB88B, 0x8F48, 0xB88C,
- 0x8F49, 0xB88E, 0x8F4A, 0xB88F, 0x8F4B, 0xB890, 0x8F4C, 0xB891,
- 0x8F4D, 0xB892, 0x8F4E, 0xB893, 0x8F4F, 0xB894, 0x8F50, 0xB895,
- 0x8F51, 0xB896, 0x8F52, 0xB897, 0x8F53, 0xB898, 0x8F54, 0xB899,
- 0x8F55, 0xB89A, 0x8F56, 0xB89B, 0x8F57, 0xB89C, 0x8F58, 0xB89D,
- 0x8F59, 0xB89E, 0x8F5A, 0xB89F, 0x8F61, 0xB8A0, 0x8F62, 0xB8A1,
- 0x8F63, 0xB8A2, 0x8F64, 0xB8A3, 0x8F65, 0xB8A4, 0x8F66, 0xB8A5,
- 0x8F67, 0xB8A6, 0x8F68, 0xB8A7, 0x8F69, 0xB8A9, 0x8F6A, 0xB8AA,
- 0x8F6B, 0xB8AB, 0x8F6C, 0xB8AC, 0x8F6D, 0xB8AD, 0x8F6E, 0xB8AE,
- 0x8F6F, 0xB8AF, 0x8F70, 0xB8B1, 0x8F71, 0xB8B2, 0x8F72, 0xB8B3,
- 0x8F73, 0xB8B5, 0x8F74, 0xB8B6, 0x8F75, 0xB8B7, 0x8F76, 0xB8B9,
- 0x8F77, 0xB8BA, 0x8F78, 0xB8BB, 0x8F79, 0xB8BC, 0x8F7A, 0xB8BD,
- 0x8F81, 0xB8BE, 0x8F82, 0xB8BF, 0x8F83, 0xB8C2, 0x8F84, 0xB8C4,
- 0x8F85, 0xB8C6, 0x8F86, 0xB8C7, 0x8F87, 0xB8C8, 0x8F88, 0xB8C9,
- 0x8F89, 0xB8CA, 0x8F8A, 0xB8CB, 0x8F8B, 0xB8CD, 0x8F8C, 0xB8CE,
- 0x8F8D, 0xB8CF, 0x8F8E, 0xB8D1, 0x8F8F, 0xB8D2, 0x8F90, 0xB8D3,
- 0x8F91, 0xB8D5, 0x8F92, 0xB8D6, 0x8F93, 0xB8D7, 0x8F94, 0xB8D8,
- 0x8F95, 0xB8D9, 0x8F96, 0xB8DA, 0x8F97, 0xB8DB, 0x8F98, 0xB8DC,
- 0x8F99, 0xB8DE, 0x8F9A, 0xB8E0, 0x8F9B, 0xB8E2, 0x8F9C, 0xB8E3,
- 0x8F9D, 0xB8E4, 0x8F9E, 0xB8E5, 0x8F9F, 0xB8E6, 0x8FA0, 0xB8E7,
- 0x8FA1, 0xB8EA, 0x8FA2, 0xB8EB, 0x8FA3, 0xB8ED, 0x8FA4, 0xB8EE,
- 0x8FA5, 0xB8EF, 0x8FA6, 0xB8F1, 0x8FA7, 0xB8F2, 0x8FA8, 0xB8F3,
- 0x8FA9, 0xB8F4, 0x8FAA, 0xB8F5, 0x8FAB, 0xB8F6, 0x8FAC, 0xB8F7,
- 0x8FAD, 0xB8FA, 0x8FAE, 0xB8FC, 0x8FAF, 0xB8FE, 0x8FB0, 0xB8FF,
- 0x8FB1, 0xB900, 0x8FB2, 0xB901, 0x8FB3, 0xB902, 0x8FB4, 0xB903,
- 0x8FB5, 0xB905, 0x8FB6, 0xB906, 0x8FB7, 0xB907, 0x8FB8, 0xB908,
- 0x8FB9, 0xB909, 0x8FBA, 0xB90A, 0x8FBB, 0xB90B, 0x8FBC, 0xB90C,
- 0x8FBD, 0xB90D, 0x8FBE, 0xB90E, 0x8FBF, 0xB90F, 0x8FC0, 0xB910,
- 0x8FC1, 0xB911, 0x8FC2, 0xB912, 0x8FC3, 0xB913, 0x8FC4, 0xB914,
- 0x8FC5, 0xB915, 0x8FC6, 0xB916, 0x8FC7, 0xB917, 0x8FC8, 0xB919,
- 0x8FC9, 0xB91A, 0x8FCA, 0xB91B, 0x8FCB, 0xB91C, 0x8FCC, 0xB91D,
- 0x8FCD, 0xB91E, 0x8FCE, 0xB91F, 0x8FCF, 0xB921, 0x8FD0, 0xB922,
- 0x8FD1, 0xB923, 0x8FD2, 0xB924, 0x8FD3, 0xB925, 0x8FD4, 0xB926,
- 0x8FD5, 0xB927, 0x8FD6, 0xB928, 0x8FD7, 0xB929, 0x8FD8, 0xB92A,
- 0x8FD9, 0xB92B, 0x8FDA, 0xB92C, 0x8FDB, 0xB92D, 0x8FDC, 0xB92E,
- 0x8FDD, 0xB92F, 0x8FDE, 0xB930, 0x8FDF, 0xB931, 0x8FE0, 0xB932,
- 0x8FE1, 0xB933, 0x8FE2, 0xB934, 0x8FE3, 0xB935, 0x8FE4, 0xB936,
- 0x8FE5, 0xB937, 0x8FE6, 0xB938, 0x8FE7, 0xB939, 0x8FE8, 0xB93A,
- 0x8FE9, 0xB93B, 0x8FEA, 0xB93E, 0x8FEB, 0xB93F, 0x8FEC, 0xB941,
- 0x8FED, 0xB942, 0x8FEE, 0xB943, 0x8FEF, 0xB945, 0x8FF0, 0xB946,
- 0x8FF1, 0xB947, 0x8FF2, 0xB948, 0x8FF3, 0xB949, 0x8FF4, 0xB94A,
- 0x8FF5, 0xB94B, 0x8FF6, 0xB94D, 0x8FF7, 0xB94E, 0x8FF8, 0xB950,
- 0x8FF9, 0xB952, 0x8FFA, 0xB953, 0x8FFB, 0xB954, 0x8FFC, 0xB955,
- 0x8FFD, 0xB956, 0x8FFE, 0xB957, 0x9041, 0xB95A, 0x9042, 0xB95B,
- 0x9043, 0xB95D, 0x9044, 0xB95E, 0x9045, 0xB95F, 0x9046, 0xB961,
- 0x9047, 0xB962, 0x9048, 0xB963, 0x9049, 0xB964, 0x904A, 0xB965,
- 0x904B, 0xB966, 0x904C, 0xB967, 0x904D, 0xB96A, 0x904E, 0xB96C,
- 0x904F, 0xB96E, 0x9050, 0xB96F, 0x9051, 0xB970, 0x9052, 0xB971,
- 0x9053, 0xB972, 0x9054, 0xB973, 0x9055, 0xB976, 0x9056, 0xB977,
- 0x9057, 0xB979, 0x9058, 0xB97A, 0x9059, 0xB97B, 0x905A, 0xB97D,
- 0x9061, 0xB97E, 0x9062, 0xB97F, 0x9063, 0xB980, 0x9064, 0xB981,
- 0x9065, 0xB982, 0x9066, 0xB983, 0x9067, 0xB986, 0x9068, 0xB988,
- 0x9069, 0xB98B, 0x906A, 0xB98C, 0x906B, 0xB98F, 0x906C, 0xB990,
- 0x906D, 0xB991, 0x906E, 0xB992, 0x906F, 0xB993, 0x9070, 0xB994,
- 0x9071, 0xB995, 0x9072, 0xB996, 0x9073, 0xB997, 0x9074, 0xB998,
- 0x9075, 0xB999, 0x9076, 0xB99A, 0x9077, 0xB99B, 0x9078, 0xB99C,
- 0x9079, 0xB99D, 0x907A, 0xB99E, 0x9081, 0xB99F, 0x9082, 0xB9A0,
- 0x9083, 0xB9A1, 0x9084, 0xB9A2, 0x9085, 0xB9A3, 0x9086, 0xB9A4,
- 0x9087, 0xB9A5, 0x9088, 0xB9A6, 0x9089, 0xB9A7, 0x908A, 0xB9A8,
- 0x908B, 0xB9A9, 0x908C, 0xB9AA, 0x908D, 0xB9AB, 0x908E, 0xB9AE,
- 0x908F, 0xB9AF, 0x9090, 0xB9B1, 0x9091, 0xB9B2, 0x9092, 0xB9B3,
- 0x9093, 0xB9B5, 0x9094, 0xB9B6, 0x9095, 0xB9B7, 0x9096, 0xB9B8,
- 0x9097, 0xB9B9, 0x9098, 0xB9BA, 0x9099, 0xB9BB, 0x909A, 0xB9BE,
- 0x909B, 0xB9C0, 0x909C, 0xB9C2, 0x909D, 0xB9C3, 0x909E, 0xB9C4,
- 0x909F, 0xB9C5, 0x90A0, 0xB9C6, 0x90A1, 0xB9C7, 0x90A2, 0xB9CA,
- 0x90A3, 0xB9CB, 0x90A4, 0xB9CD, 0x90A5, 0xB9D3, 0x90A6, 0xB9D4,
- 0x90A7, 0xB9D5, 0x90A8, 0xB9D6, 0x90A9, 0xB9D7, 0x90AA, 0xB9DA,
- 0x90AB, 0xB9DC, 0x90AC, 0xB9DF, 0x90AD, 0xB9E0, 0x90AE, 0xB9E2,
- 0x90AF, 0xB9E6, 0x90B0, 0xB9E7, 0x90B1, 0xB9E9, 0x90B2, 0xB9EA,
- 0x90B3, 0xB9EB, 0x90B4, 0xB9ED, 0x90B5, 0xB9EE, 0x90B6, 0xB9EF,
- 0x90B7, 0xB9F0, 0x90B8, 0xB9F1, 0x90B9, 0xB9F2, 0x90BA, 0xB9F3,
- 0x90BB, 0xB9F6, 0x90BC, 0xB9FB, 0x90BD, 0xB9FC, 0x90BE, 0xB9FD,
- 0x90BF, 0xB9FE, 0x90C0, 0xB9FF, 0x90C1, 0xBA02, 0x90C2, 0xBA03,
- 0x90C3, 0xBA04, 0x90C4, 0xBA05, 0x90C5, 0xBA06, 0x90C6, 0xBA07,
- 0x90C7, 0xBA09, 0x90C8, 0xBA0A, 0x90C9, 0xBA0B, 0x90CA, 0xBA0C,
- 0x90CB, 0xBA0D, 0x90CC, 0xBA0E, 0x90CD, 0xBA0F, 0x90CE, 0xBA10,
- 0x90CF, 0xBA11, 0x90D0, 0xBA12, 0x90D1, 0xBA13, 0x90D2, 0xBA14,
- 0x90D3, 0xBA16, 0x90D4, 0xBA17, 0x90D5, 0xBA18, 0x90D6, 0xBA19,
- 0x90D7, 0xBA1A, 0x90D8, 0xBA1B, 0x90D9, 0xBA1C, 0x90DA, 0xBA1D,
- 0x90DB, 0xBA1E, 0x90DC, 0xBA1F, 0x90DD, 0xBA20, 0x90DE, 0xBA21,
- 0x90DF, 0xBA22, 0x90E0, 0xBA23, 0x90E1, 0xBA24, 0x90E2, 0xBA25,
- 0x90E3, 0xBA26, 0x90E4, 0xBA27, 0x90E5, 0xBA28, 0x90E6, 0xBA29,
- 0x90E7, 0xBA2A, 0x90E8, 0xBA2B, 0x90E9, 0xBA2C, 0x90EA, 0xBA2D,
- 0x90EB, 0xBA2E, 0x90EC, 0xBA2F, 0x90ED, 0xBA30, 0x90EE, 0xBA31,
- 0x90EF, 0xBA32, 0x90F0, 0xBA33, 0x90F1, 0xBA34, 0x90F2, 0xBA35,
- 0x90F3, 0xBA36, 0x90F4, 0xBA37, 0x90F5, 0xBA3A, 0x90F6, 0xBA3B,
- 0x90F7, 0xBA3D, 0x90F8, 0xBA3E, 0x90F9, 0xBA3F, 0x90FA, 0xBA41,
- 0x90FB, 0xBA43, 0x90FC, 0xBA44, 0x90FD, 0xBA45, 0x90FE, 0xBA46,
- 0x9141, 0xBA47, 0x9142, 0xBA4A, 0x9143, 0xBA4C, 0x9144, 0xBA4F,
- 0x9145, 0xBA50, 0x9146, 0xBA51, 0x9147, 0xBA52, 0x9148, 0xBA56,
- 0x9149, 0xBA57, 0x914A, 0xBA59, 0x914B, 0xBA5A, 0x914C, 0xBA5B,
- 0x914D, 0xBA5D, 0x914E, 0xBA5E, 0x914F, 0xBA5F, 0x9150, 0xBA60,
- 0x9151, 0xBA61, 0x9152, 0xBA62, 0x9153, 0xBA63, 0x9154, 0xBA66,
- 0x9155, 0xBA6A, 0x9156, 0xBA6B, 0x9157, 0xBA6C, 0x9158, 0xBA6D,
- 0x9159, 0xBA6E, 0x915A, 0xBA6F, 0x9161, 0xBA72, 0x9162, 0xBA73,
- 0x9163, 0xBA75, 0x9164, 0xBA76, 0x9165, 0xBA77, 0x9166, 0xBA79,
- 0x9167, 0xBA7A, 0x9168, 0xBA7B, 0x9169, 0xBA7C, 0x916A, 0xBA7D,
- 0x916B, 0xBA7E, 0x916C, 0xBA7F, 0x916D, 0xBA80, 0x916E, 0xBA81,
- 0x916F, 0xBA82, 0x9170, 0xBA86, 0x9171, 0xBA88, 0x9172, 0xBA89,
- 0x9173, 0xBA8A, 0x9174, 0xBA8B, 0x9175, 0xBA8D, 0x9176, 0xBA8E,
- 0x9177, 0xBA8F, 0x9178, 0xBA90, 0x9179, 0xBA91, 0x917A, 0xBA92,
- 0x9181, 0xBA93, 0x9182, 0xBA94, 0x9183, 0xBA95, 0x9184, 0xBA96,
- 0x9185, 0xBA97, 0x9186, 0xBA98, 0x9187, 0xBA99, 0x9188, 0xBA9A,
- 0x9189, 0xBA9B, 0x918A, 0xBA9C, 0x918B, 0xBA9D, 0x918C, 0xBA9E,
- 0x918D, 0xBA9F, 0x918E, 0xBAA0, 0x918F, 0xBAA1, 0x9190, 0xBAA2,
- 0x9191, 0xBAA3, 0x9192, 0xBAA4, 0x9193, 0xBAA5, 0x9194, 0xBAA6,
- 0x9195, 0xBAA7, 0x9196, 0xBAAA, 0x9197, 0xBAAD, 0x9198, 0xBAAE,
- 0x9199, 0xBAAF, 0x919A, 0xBAB1, 0x919B, 0xBAB3, 0x919C, 0xBAB4,
- 0x919D, 0xBAB5, 0x919E, 0xBAB6, 0x919F, 0xBAB7, 0x91A0, 0xBABA,
- 0x91A1, 0xBABC, 0x91A2, 0xBABE, 0x91A3, 0xBABF, 0x91A4, 0xBAC0,
- 0x91A5, 0xBAC1, 0x91A6, 0xBAC2, 0x91A7, 0xBAC3, 0x91A8, 0xBAC5,
- 0x91A9, 0xBAC6, 0x91AA, 0xBAC7, 0x91AB, 0xBAC9, 0x91AC, 0xBACA,
- 0x91AD, 0xBACB, 0x91AE, 0xBACC, 0x91AF, 0xBACD, 0x91B0, 0xBACE,
- 0x91B1, 0xBACF, 0x91B2, 0xBAD0, 0x91B3, 0xBAD1, 0x91B4, 0xBAD2,
- 0x91B5, 0xBAD3, 0x91B6, 0xBAD4, 0x91B7, 0xBAD5, 0x91B8, 0xBAD6,
- 0x91B9, 0xBAD7, 0x91BA, 0xBADA, 0x91BB, 0xBADB, 0x91BC, 0xBADC,
- 0x91BD, 0xBADD, 0x91BE, 0xBADE, 0x91BF, 0xBADF, 0x91C0, 0xBAE0,
- 0x91C1, 0xBAE1, 0x91C2, 0xBAE2, 0x91C3, 0xBAE3, 0x91C4, 0xBAE4,
- 0x91C5, 0xBAE5, 0x91C6, 0xBAE6, 0x91C7, 0xBAE7, 0x91C8, 0xBAE8,
- 0x91C9, 0xBAE9, 0x91CA, 0xBAEA, 0x91CB, 0xBAEB, 0x91CC, 0xBAEC,
- 0x91CD, 0xBAED, 0x91CE, 0xBAEE, 0x91CF, 0xBAEF, 0x91D0, 0xBAF0,
- 0x91D1, 0xBAF1, 0x91D2, 0xBAF2, 0x91D3, 0xBAF3, 0x91D4, 0xBAF4,
- 0x91D5, 0xBAF5, 0x91D6, 0xBAF6, 0x91D7, 0xBAF7, 0x91D8, 0xBAF8,
- 0x91D9, 0xBAF9, 0x91DA, 0xBAFA, 0x91DB, 0xBAFB, 0x91DC, 0xBAFD,
- 0x91DD, 0xBAFE, 0x91DE, 0xBAFF, 0x91DF, 0xBB01, 0x91E0, 0xBB02,
- 0x91E1, 0xBB03, 0x91E2, 0xBB05, 0x91E3, 0xBB06, 0x91E4, 0xBB07,
- 0x91E5, 0xBB08, 0x91E6, 0xBB09, 0x91E7, 0xBB0A, 0x91E8, 0xBB0B,
- 0x91E9, 0xBB0C, 0x91EA, 0xBB0E, 0x91EB, 0xBB10, 0x91EC, 0xBB12,
- 0x91ED, 0xBB13, 0x91EE, 0xBB14, 0x91EF, 0xBB15, 0x91F0, 0xBB16,
- 0x91F1, 0xBB17, 0x91F2, 0xBB19, 0x91F3, 0xBB1A, 0x91F4, 0xBB1B,
- 0x91F5, 0xBB1D, 0x91F6, 0xBB1E, 0x91F7, 0xBB1F, 0x91F8, 0xBB21,
- 0x91F9, 0xBB22, 0x91FA, 0xBB23, 0x91FB, 0xBB24, 0x91FC, 0xBB25,
- 0x91FD, 0xBB26, 0x91FE, 0xBB27, 0x9241, 0xBB28, 0x9242, 0xBB2A,
- 0x9243, 0xBB2C, 0x9244, 0xBB2D, 0x9245, 0xBB2E, 0x9246, 0xBB2F,
- 0x9247, 0xBB30, 0x9248, 0xBB31, 0x9249, 0xBB32, 0x924A, 0xBB33,
- 0x924B, 0xBB37, 0x924C, 0xBB39, 0x924D, 0xBB3A, 0x924E, 0xBB3F,
- 0x924F, 0xBB40, 0x9250, 0xBB41, 0x9251, 0xBB42, 0x9252, 0xBB43,
- 0x9253, 0xBB46, 0x9254, 0xBB48, 0x9255, 0xBB4A, 0x9256, 0xBB4B,
- 0x9257, 0xBB4C, 0x9258, 0xBB4E, 0x9259, 0xBB51, 0x925A, 0xBB52,
- 0x9261, 0xBB53, 0x9262, 0xBB55, 0x9263, 0xBB56, 0x9264, 0xBB57,
- 0x9265, 0xBB59, 0x9266, 0xBB5A, 0x9267, 0xBB5B, 0x9268, 0xBB5C,
- 0x9269, 0xBB5D, 0x926A, 0xBB5E, 0x926B, 0xBB5F, 0x926C, 0xBB60,
- 0x926D, 0xBB62, 0x926E, 0xBB64, 0x926F, 0xBB65, 0x9270, 0xBB66,
- 0x9271, 0xBB67, 0x9272, 0xBB68, 0x9273, 0xBB69, 0x9274, 0xBB6A,
- 0x9275, 0xBB6B, 0x9276, 0xBB6D, 0x9277, 0xBB6E, 0x9278, 0xBB6F,
- 0x9279, 0xBB70, 0x927A, 0xBB71, 0x9281, 0xBB72, 0x9282, 0xBB73,
- 0x9283, 0xBB74, 0x9284, 0xBB75, 0x9285, 0xBB76, 0x9286, 0xBB77,
- 0x9287, 0xBB78, 0x9288, 0xBB79, 0x9289, 0xBB7A, 0x928A, 0xBB7B,
- 0x928B, 0xBB7C, 0x928C, 0xBB7D, 0x928D, 0xBB7E, 0x928E, 0xBB7F,
- 0x928F, 0xBB80, 0x9290, 0xBB81, 0x9291, 0xBB82, 0x9292, 0xBB83,
- 0x9293, 0xBB84, 0x9294, 0xBB85, 0x9295, 0xBB86, 0x9296, 0xBB87,
- 0x9297, 0xBB89, 0x9298, 0xBB8A, 0x9299, 0xBB8B, 0x929A, 0xBB8D,
- 0x929B, 0xBB8E, 0x929C, 0xBB8F, 0x929D, 0xBB91, 0x929E, 0xBB92,
- 0x929F, 0xBB93, 0x92A0, 0xBB94, 0x92A1, 0xBB95, 0x92A2, 0xBB96,
- 0x92A3, 0xBB97, 0x92A4, 0xBB98, 0x92A5, 0xBB99, 0x92A6, 0xBB9A,
- 0x92A7, 0xBB9B, 0x92A8, 0xBB9C, 0x92A9, 0xBB9D, 0x92AA, 0xBB9E,
- 0x92AB, 0xBB9F, 0x92AC, 0xBBA0, 0x92AD, 0xBBA1, 0x92AE, 0xBBA2,
- 0x92AF, 0xBBA3, 0x92B0, 0xBBA5, 0x92B1, 0xBBA6, 0x92B2, 0xBBA7,
- 0x92B3, 0xBBA9, 0x92B4, 0xBBAA, 0x92B5, 0xBBAB, 0x92B6, 0xBBAD,
- 0x92B7, 0xBBAE, 0x92B8, 0xBBAF, 0x92B9, 0xBBB0, 0x92BA, 0xBBB1,
- 0x92BB, 0xBBB2, 0x92BC, 0xBBB3, 0x92BD, 0xBBB5, 0x92BE, 0xBBB6,
- 0x92BF, 0xBBB8, 0x92C0, 0xBBB9, 0x92C1, 0xBBBA, 0x92C2, 0xBBBB,
- 0x92C3, 0xBBBC, 0x92C4, 0xBBBD, 0x92C5, 0xBBBE, 0x92C6, 0xBBBF,
- 0x92C7, 0xBBC1, 0x92C8, 0xBBC2, 0x92C9, 0xBBC3, 0x92CA, 0xBBC5,
- 0x92CB, 0xBBC6, 0x92CC, 0xBBC7, 0x92CD, 0xBBC9, 0x92CE, 0xBBCA,
- 0x92CF, 0xBBCB, 0x92D0, 0xBBCC, 0x92D1, 0xBBCD, 0x92D2, 0xBBCE,
- 0x92D3, 0xBBCF, 0x92D4, 0xBBD1, 0x92D5, 0xBBD2, 0x92D6, 0xBBD4,
- 0x92D7, 0xBBD5, 0x92D8, 0xBBD6, 0x92D9, 0xBBD7, 0x92DA, 0xBBD8,
- 0x92DB, 0xBBD9, 0x92DC, 0xBBDA, 0x92DD, 0xBBDB, 0x92DE, 0xBBDC,
- 0x92DF, 0xBBDD, 0x92E0, 0xBBDE, 0x92E1, 0xBBDF, 0x92E2, 0xBBE0,
- 0x92E3, 0xBBE1, 0x92E4, 0xBBE2, 0x92E5, 0xBBE3, 0x92E6, 0xBBE4,
- 0x92E7, 0xBBE5, 0x92E8, 0xBBE6, 0x92E9, 0xBBE7, 0x92EA, 0xBBE8,
- 0x92EB, 0xBBE9, 0x92EC, 0xBBEA, 0x92ED, 0xBBEB, 0x92EE, 0xBBEC,
- 0x92EF, 0xBBED, 0x92F0, 0xBBEE, 0x92F1, 0xBBEF, 0x92F2, 0xBBF0,
- 0x92F3, 0xBBF1, 0x92F4, 0xBBF2, 0x92F5, 0xBBF3, 0x92F6, 0xBBF4,
- 0x92F7, 0xBBF5, 0x92F8, 0xBBF6, 0x92F9, 0xBBF7, 0x92FA, 0xBBFA,
- 0x92FB, 0xBBFB, 0x92FC, 0xBBFD, 0x92FD, 0xBBFE, 0x92FE, 0xBC01,
- 0x9341, 0xBC03, 0x9342, 0xBC04, 0x9343, 0xBC05, 0x9344, 0xBC06,
- 0x9345, 0xBC07, 0x9346, 0xBC0A, 0x9347, 0xBC0E, 0x9348, 0xBC10,
- 0x9349, 0xBC12, 0x934A, 0xBC13, 0x934B, 0xBC19, 0x934C, 0xBC1A,
- 0x934D, 0xBC20, 0x934E, 0xBC21, 0x934F, 0xBC22, 0x9350, 0xBC23,
- 0x9351, 0xBC26, 0x9352, 0xBC28, 0x9353, 0xBC2A, 0x9354, 0xBC2B,
- 0x9355, 0xBC2C, 0x9356, 0xBC2E, 0x9357, 0xBC2F, 0x9358, 0xBC32,
- 0x9359, 0xBC33, 0x935A, 0xBC35, 0x9361, 0xBC36, 0x9362, 0xBC37,
- 0x9363, 0xBC39, 0x9364, 0xBC3A, 0x9365, 0xBC3B, 0x9366, 0xBC3C,
- 0x9367, 0xBC3D, 0x9368, 0xBC3E, 0x9369, 0xBC3F, 0x936A, 0xBC42,
- 0x936B, 0xBC46, 0x936C, 0xBC47, 0x936D, 0xBC48, 0x936E, 0xBC4A,
- 0x936F, 0xBC4B, 0x9370, 0xBC4E, 0x9371, 0xBC4F, 0x9372, 0xBC51,
- 0x9373, 0xBC52, 0x9374, 0xBC53, 0x9375, 0xBC54, 0x9376, 0xBC55,
- 0x9377, 0xBC56, 0x9378, 0xBC57, 0x9379, 0xBC58, 0x937A, 0xBC59,
- 0x9381, 0xBC5A, 0x9382, 0xBC5B, 0x9383, 0xBC5C, 0x9384, 0xBC5E,
- 0x9385, 0xBC5F, 0x9386, 0xBC60, 0x9387, 0xBC61, 0x9388, 0xBC62,
- 0x9389, 0xBC63, 0x938A, 0xBC64, 0x938B, 0xBC65, 0x938C, 0xBC66,
- 0x938D, 0xBC67, 0x938E, 0xBC68, 0x938F, 0xBC69, 0x9390, 0xBC6A,
- 0x9391, 0xBC6B, 0x9392, 0xBC6C, 0x9393, 0xBC6D, 0x9394, 0xBC6E,
- 0x9395, 0xBC6F, 0x9396, 0xBC70, 0x9397, 0xBC71, 0x9398, 0xBC72,
- 0x9399, 0xBC73, 0x939A, 0xBC74, 0x939B, 0xBC75, 0x939C, 0xBC76,
- 0x939D, 0xBC77, 0x939E, 0xBC78, 0x939F, 0xBC79, 0x93A0, 0xBC7A,
- 0x93A1, 0xBC7B, 0x93A2, 0xBC7C, 0x93A3, 0xBC7D, 0x93A4, 0xBC7E,
- 0x93A5, 0xBC7F, 0x93A6, 0xBC80, 0x93A7, 0xBC81, 0x93A8, 0xBC82,
- 0x93A9, 0xBC83, 0x93AA, 0xBC86, 0x93AB, 0xBC87, 0x93AC, 0xBC89,
- 0x93AD, 0xBC8A, 0x93AE, 0xBC8D, 0x93AF, 0xBC8F, 0x93B0, 0xBC90,
- 0x93B1, 0xBC91, 0x93B2, 0xBC92, 0x93B3, 0xBC93, 0x93B4, 0xBC96,
- 0x93B5, 0xBC98, 0x93B6, 0xBC9B, 0x93B7, 0xBC9C, 0x93B8, 0xBC9D,
- 0x93B9, 0xBC9E, 0x93BA, 0xBC9F, 0x93BB, 0xBCA2, 0x93BC, 0xBCA3,
- 0x93BD, 0xBCA5, 0x93BE, 0xBCA6, 0x93BF, 0xBCA9, 0x93C0, 0xBCAA,
- 0x93C1, 0xBCAB, 0x93C2, 0xBCAC, 0x93C3, 0xBCAD, 0x93C4, 0xBCAE,
- 0x93C5, 0xBCAF, 0x93C6, 0xBCB2, 0x93C7, 0xBCB6, 0x93C8, 0xBCB7,
- 0x93C9, 0xBCB8, 0x93CA, 0xBCB9, 0x93CB, 0xBCBA, 0x93CC, 0xBCBB,
- 0x93CD, 0xBCBE, 0x93CE, 0xBCBF, 0x93CF, 0xBCC1, 0x93D0, 0xBCC2,
- 0x93D1, 0xBCC3, 0x93D2, 0xBCC5, 0x93D3, 0xBCC6, 0x93D4, 0xBCC7,
- 0x93D5, 0xBCC8, 0x93D6, 0xBCC9, 0x93D7, 0xBCCA, 0x93D8, 0xBCCB,
- 0x93D9, 0xBCCC, 0x93DA, 0xBCCE, 0x93DB, 0xBCD2, 0x93DC, 0xBCD3,
- 0x93DD, 0xBCD4, 0x93DE, 0xBCD6, 0x93DF, 0xBCD7, 0x93E0, 0xBCD9,
- 0x93E1, 0xBCDA, 0x93E2, 0xBCDB, 0x93E3, 0xBCDD, 0x93E4, 0xBCDE,
- 0x93E5, 0xBCDF, 0x93E6, 0xBCE0, 0x93E7, 0xBCE1, 0x93E8, 0xBCE2,
- 0x93E9, 0xBCE3, 0x93EA, 0xBCE4, 0x93EB, 0xBCE5, 0x93EC, 0xBCE6,
- 0x93ED, 0xBCE7, 0x93EE, 0xBCE8, 0x93EF, 0xBCE9, 0x93F0, 0xBCEA,
- 0x93F1, 0xBCEB, 0x93F2, 0xBCEC, 0x93F3, 0xBCED, 0x93F4, 0xBCEE,
- 0x93F5, 0xBCEF, 0x93F6, 0xBCF0, 0x93F7, 0xBCF1, 0x93F8, 0xBCF2,
- 0x93F9, 0xBCF3, 0x93FA, 0xBCF7, 0x93FB, 0xBCF9, 0x93FC, 0xBCFA,
- 0x93FD, 0xBCFB, 0x93FE, 0xBCFD, 0x9441, 0xBCFE, 0x9442, 0xBCFF,
- 0x9443, 0xBD00, 0x9444, 0xBD01, 0x9445, 0xBD02, 0x9446, 0xBD03,
- 0x9447, 0xBD06, 0x9448, 0xBD08, 0x9449, 0xBD0A, 0x944A, 0xBD0B,
- 0x944B, 0xBD0C, 0x944C, 0xBD0D, 0x944D, 0xBD0E, 0x944E, 0xBD0F,
- 0x944F, 0xBD11, 0x9450, 0xBD12, 0x9451, 0xBD13, 0x9452, 0xBD15,
- 0x9453, 0xBD16, 0x9454, 0xBD17, 0x9455, 0xBD18, 0x9456, 0xBD19,
- 0x9457, 0xBD1A, 0x9458, 0xBD1B, 0x9459, 0xBD1C, 0x945A, 0xBD1D,
- 0x9461, 0xBD1E, 0x9462, 0xBD1F, 0x9463, 0xBD20, 0x9464, 0xBD21,
- 0x9465, 0xBD22, 0x9466, 0xBD23, 0x9467, 0xBD25, 0x9468, 0xBD26,
- 0x9469, 0xBD27, 0x946A, 0xBD28, 0x946B, 0xBD29, 0x946C, 0xBD2A,
- 0x946D, 0xBD2B, 0x946E, 0xBD2D, 0x946F, 0xBD2E, 0x9470, 0xBD2F,
- 0x9471, 0xBD30, 0x9472, 0xBD31, 0x9473, 0xBD32, 0x9474, 0xBD33,
- 0x9475, 0xBD34, 0x9476, 0xBD35, 0x9477, 0xBD36, 0x9478, 0xBD37,
- 0x9479, 0xBD38, 0x947A, 0xBD39, 0x9481, 0xBD3A, 0x9482, 0xBD3B,
- 0x9483, 0xBD3C, 0x9484, 0xBD3D, 0x9485, 0xBD3E, 0x9486, 0xBD3F,
- 0x9487, 0xBD41, 0x9488, 0xBD42, 0x9489, 0xBD43, 0x948A, 0xBD44,
- 0x948B, 0xBD45, 0x948C, 0xBD46, 0x948D, 0xBD47, 0x948E, 0xBD4A,
- 0x948F, 0xBD4B, 0x9490, 0xBD4D, 0x9491, 0xBD4E, 0x9492, 0xBD4F,
- 0x9493, 0xBD51, 0x9494, 0xBD52, 0x9495, 0xBD53, 0x9496, 0xBD54,
- 0x9497, 0xBD55, 0x9498, 0xBD56, 0x9499, 0xBD57, 0x949A, 0xBD5A,
- 0x949B, 0xBD5B, 0x949C, 0xBD5C, 0x949D, 0xBD5D, 0x949E, 0xBD5E,
- 0x949F, 0xBD5F, 0x94A0, 0xBD60, 0x94A1, 0xBD61, 0x94A2, 0xBD62,
- 0x94A3, 0xBD63, 0x94A4, 0xBD65, 0x94A5, 0xBD66, 0x94A6, 0xBD67,
- 0x94A7, 0xBD69, 0x94A8, 0xBD6A, 0x94A9, 0xBD6B, 0x94AA, 0xBD6C,
- 0x94AB, 0xBD6D, 0x94AC, 0xBD6E, 0x94AD, 0xBD6F, 0x94AE, 0xBD70,
- 0x94AF, 0xBD71, 0x94B0, 0xBD72, 0x94B1, 0xBD73, 0x94B2, 0xBD74,
- 0x94B3, 0xBD75, 0x94B4, 0xBD76, 0x94B5, 0xBD77, 0x94B6, 0xBD78,
- 0x94B7, 0xBD79, 0x94B8, 0xBD7A, 0x94B9, 0xBD7B, 0x94BA, 0xBD7C,
- 0x94BB, 0xBD7D, 0x94BC, 0xBD7E, 0x94BD, 0xBD7F, 0x94BE, 0xBD82,
- 0x94BF, 0xBD83, 0x94C0, 0xBD85, 0x94C1, 0xBD86, 0x94C2, 0xBD8B,
- 0x94C3, 0xBD8C, 0x94C4, 0xBD8D, 0x94C5, 0xBD8E, 0x94C6, 0xBD8F,
- 0x94C7, 0xBD92, 0x94C8, 0xBD94, 0x94C9, 0xBD96, 0x94CA, 0xBD97,
- 0x94CB, 0xBD98, 0x94CC, 0xBD9B, 0x94CD, 0xBD9D, 0x94CE, 0xBD9E,
- 0x94CF, 0xBD9F, 0x94D0, 0xBDA0, 0x94D1, 0xBDA1, 0x94D2, 0xBDA2,
- 0x94D3, 0xBDA3, 0x94D4, 0xBDA5, 0x94D5, 0xBDA6, 0x94D6, 0xBDA7,
- 0x94D7, 0xBDA8, 0x94D8, 0xBDA9, 0x94D9, 0xBDAA, 0x94DA, 0xBDAB,
- 0x94DB, 0xBDAC, 0x94DC, 0xBDAD, 0x94DD, 0xBDAE, 0x94DE, 0xBDAF,
- 0x94DF, 0xBDB1, 0x94E0, 0xBDB2, 0x94E1, 0xBDB3, 0x94E2, 0xBDB4,
- 0x94E3, 0xBDB5, 0x94E4, 0xBDB6, 0x94E5, 0xBDB7, 0x94E6, 0xBDB9,
- 0x94E7, 0xBDBA, 0x94E8, 0xBDBB, 0x94E9, 0xBDBC, 0x94EA, 0xBDBD,
- 0x94EB, 0xBDBE, 0x94EC, 0xBDBF, 0x94ED, 0xBDC0, 0x94EE, 0xBDC1,
- 0x94EF, 0xBDC2, 0x94F0, 0xBDC3, 0x94F1, 0xBDC4, 0x94F2, 0xBDC5,
- 0x94F3, 0xBDC6, 0x94F4, 0xBDC7, 0x94F5, 0xBDC8, 0x94F6, 0xBDC9,
- 0x94F7, 0xBDCA, 0x94F8, 0xBDCB, 0x94F9, 0xBDCC, 0x94FA, 0xBDCD,
- 0x94FB, 0xBDCE, 0x94FC, 0xBDCF, 0x94FD, 0xBDD0, 0x94FE, 0xBDD1,
- 0x9541, 0xBDD2, 0x9542, 0xBDD3, 0x9543, 0xBDD6, 0x9544, 0xBDD7,
- 0x9545, 0xBDD9, 0x9546, 0xBDDA, 0x9547, 0xBDDB, 0x9548, 0xBDDD,
- 0x9549, 0xBDDE, 0x954A, 0xBDDF, 0x954B, 0xBDE0, 0x954C, 0xBDE1,
- 0x954D, 0xBDE2, 0x954E, 0xBDE3, 0x954F, 0xBDE4, 0x9550, 0xBDE5,
- 0x9551, 0xBDE6, 0x9552, 0xBDE7, 0x9553, 0xBDE8, 0x9554, 0xBDEA,
- 0x9555, 0xBDEB, 0x9556, 0xBDEC, 0x9557, 0xBDED, 0x9558, 0xBDEE,
- 0x9559, 0xBDEF, 0x955A, 0xBDF1, 0x9561, 0xBDF2, 0x9562, 0xBDF3,
- 0x9563, 0xBDF5, 0x9564, 0xBDF6, 0x9565, 0xBDF7, 0x9566, 0xBDF9,
- 0x9567, 0xBDFA, 0x9568, 0xBDFB, 0x9569, 0xBDFC, 0x956A, 0xBDFD,
- 0x956B, 0xBDFE, 0x956C, 0xBDFF, 0x956D, 0xBE01, 0x956E, 0xBE02,
- 0x956F, 0xBE04, 0x9570, 0xBE06, 0x9571, 0xBE07, 0x9572, 0xBE08,
- 0x9573, 0xBE09, 0x9574, 0xBE0A, 0x9575, 0xBE0B, 0x9576, 0xBE0E,
- 0x9577, 0xBE0F, 0x9578, 0xBE11, 0x9579, 0xBE12, 0x957A, 0xBE13,
- 0x9581, 0xBE15, 0x9582, 0xBE16, 0x9583, 0xBE17, 0x9584, 0xBE18,
- 0x9585, 0xBE19, 0x9586, 0xBE1A, 0x9587, 0xBE1B, 0x9588, 0xBE1E,
- 0x9589, 0xBE20, 0x958A, 0xBE21, 0x958B, 0xBE22, 0x958C, 0xBE23,
- 0x958D, 0xBE24, 0x958E, 0xBE25, 0x958F, 0xBE26, 0x9590, 0xBE27,
- 0x9591, 0xBE28, 0x9592, 0xBE29, 0x9593, 0xBE2A, 0x9594, 0xBE2B,
- 0x9595, 0xBE2C, 0x9596, 0xBE2D, 0x9597, 0xBE2E, 0x9598, 0xBE2F,
- 0x9599, 0xBE30, 0x959A, 0xBE31, 0x959B, 0xBE32, 0x959C, 0xBE33,
- 0x959D, 0xBE34, 0x959E, 0xBE35, 0x959F, 0xBE36, 0x95A0, 0xBE37,
- 0x95A1, 0xBE38, 0x95A2, 0xBE39, 0x95A3, 0xBE3A, 0x95A4, 0xBE3B,
- 0x95A5, 0xBE3C, 0x95A6, 0xBE3D, 0x95A7, 0xBE3E, 0x95A8, 0xBE3F,
- 0x95A9, 0xBE40, 0x95AA, 0xBE41, 0x95AB, 0xBE42, 0x95AC, 0xBE43,
- 0x95AD, 0xBE46, 0x95AE, 0xBE47, 0x95AF, 0xBE49, 0x95B0, 0xBE4A,
- 0x95B1, 0xBE4B, 0x95B2, 0xBE4D, 0x95B3, 0xBE4F, 0x95B4, 0xBE50,
- 0x95B5, 0xBE51, 0x95B6, 0xBE52, 0x95B7, 0xBE53, 0x95B8, 0xBE56,
- 0x95B9, 0xBE58, 0x95BA, 0xBE5C, 0x95BB, 0xBE5D, 0x95BC, 0xBE5E,
- 0x95BD, 0xBE5F, 0x95BE, 0xBE62, 0x95BF, 0xBE63, 0x95C0, 0xBE65,
- 0x95C1, 0xBE66, 0x95C2, 0xBE67, 0x95C3, 0xBE69, 0x95C4, 0xBE6B,
- 0x95C5, 0xBE6C, 0x95C6, 0xBE6D, 0x95C7, 0xBE6E, 0x95C8, 0xBE6F,
- 0x95C9, 0xBE72, 0x95CA, 0xBE76, 0x95CB, 0xBE77, 0x95CC, 0xBE78,
- 0x95CD, 0xBE79, 0x95CE, 0xBE7A, 0x95CF, 0xBE7E, 0x95D0, 0xBE7F,
- 0x95D1, 0xBE81, 0x95D2, 0xBE82, 0x95D3, 0xBE83, 0x95D4, 0xBE85,
- 0x95D5, 0xBE86, 0x95D6, 0xBE87, 0x95D7, 0xBE88, 0x95D8, 0xBE89,
- 0x95D9, 0xBE8A, 0x95DA, 0xBE8B, 0x95DB, 0xBE8E, 0x95DC, 0xBE92,
- 0x95DD, 0xBE93, 0x95DE, 0xBE94, 0x95DF, 0xBE95, 0x95E0, 0xBE96,
- 0x95E1, 0xBE97, 0x95E2, 0xBE9A, 0x95E3, 0xBE9B, 0x95E4, 0xBE9C,
- 0x95E5, 0xBE9D, 0x95E6, 0xBE9E, 0x95E7, 0xBE9F, 0x95E8, 0xBEA0,
- 0x95E9, 0xBEA1, 0x95EA, 0xBEA2, 0x95EB, 0xBEA3, 0x95EC, 0xBEA4,
- 0x95ED, 0xBEA5, 0x95EE, 0xBEA6, 0x95EF, 0xBEA7, 0x95F0, 0xBEA9,
- 0x95F1, 0xBEAA, 0x95F2, 0xBEAB, 0x95F3, 0xBEAC, 0x95F4, 0xBEAD,
- 0x95F5, 0xBEAE, 0x95F6, 0xBEAF, 0x95F7, 0xBEB0, 0x95F8, 0xBEB1,
- 0x95F9, 0xBEB2, 0x95FA, 0xBEB3, 0x95FB, 0xBEB4, 0x95FC, 0xBEB5,
- 0x95FD, 0xBEB6, 0x95FE, 0xBEB7, 0x9641, 0xBEB8, 0x9642, 0xBEB9,
- 0x9643, 0xBEBA, 0x9644, 0xBEBB, 0x9645, 0xBEBC, 0x9646, 0xBEBD,
- 0x9647, 0xBEBE, 0x9648, 0xBEBF, 0x9649, 0xBEC0, 0x964A, 0xBEC1,
- 0x964B, 0xBEC2, 0x964C, 0xBEC3, 0x964D, 0xBEC4, 0x964E, 0xBEC5,
- 0x964F, 0xBEC6, 0x9650, 0xBEC7, 0x9651, 0xBEC8, 0x9652, 0xBEC9,
- 0x9653, 0xBECA, 0x9654, 0xBECB, 0x9655, 0xBECC, 0x9656, 0xBECD,
- 0x9657, 0xBECE, 0x9658, 0xBECF, 0x9659, 0xBED2, 0x965A, 0xBED3,
- 0x9661, 0xBED5, 0x9662, 0xBED6, 0x9663, 0xBED9, 0x9664, 0xBEDA,
- 0x9665, 0xBEDB, 0x9666, 0xBEDC, 0x9667, 0xBEDD, 0x9668, 0xBEDE,
- 0x9669, 0xBEDF, 0x966A, 0xBEE1, 0x966B, 0xBEE2, 0x966C, 0xBEE6,
- 0x966D, 0xBEE7, 0x966E, 0xBEE8, 0x966F, 0xBEE9, 0x9670, 0xBEEA,
- 0x9671, 0xBEEB, 0x9672, 0xBEED, 0x9673, 0xBEEE, 0x9674, 0xBEEF,
- 0x9675, 0xBEF0, 0x9676, 0xBEF1, 0x9677, 0xBEF2, 0x9678, 0xBEF3,
- 0x9679, 0xBEF4, 0x967A, 0xBEF5, 0x9681, 0xBEF6, 0x9682, 0xBEF7,
- 0x9683, 0xBEF8, 0x9684, 0xBEF9, 0x9685, 0xBEFA, 0x9686, 0xBEFB,
- 0x9687, 0xBEFC, 0x9688, 0xBEFD, 0x9689, 0xBEFE, 0x968A, 0xBEFF,
- 0x968B, 0xBF00, 0x968C, 0xBF02, 0x968D, 0xBF03, 0x968E, 0xBF04,
- 0x968F, 0xBF05, 0x9690, 0xBF06, 0x9691, 0xBF07, 0x9692, 0xBF0A,
- 0x9693, 0xBF0B, 0x9694, 0xBF0C, 0x9695, 0xBF0D, 0x9696, 0xBF0E,
- 0x9697, 0xBF0F, 0x9698, 0xBF10, 0x9699, 0xBF11, 0x969A, 0xBF12,
- 0x969B, 0xBF13, 0x969C, 0xBF14, 0x969D, 0xBF15, 0x969E, 0xBF16,
- 0x969F, 0xBF17, 0x96A0, 0xBF1A, 0x96A1, 0xBF1E, 0x96A2, 0xBF1F,
- 0x96A3, 0xBF20, 0x96A4, 0xBF21, 0x96A5, 0xBF22, 0x96A6, 0xBF23,
- 0x96A7, 0xBF24, 0x96A8, 0xBF25, 0x96A9, 0xBF26, 0x96AA, 0xBF27,
- 0x96AB, 0xBF28, 0x96AC, 0xBF29, 0x96AD, 0xBF2A, 0x96AE, 0xBF2B,
- 0x96AF, 0xBF2C, 0x96B0, 0xBF2D, 0x96B1, 0xBF2E, 0x96B2, 0xBF2F,
- 0x96B3, 0xBF30, 0x96B4, 0xBF31, 0x96B5, 0xBF32, 0x96B6, 0xBF33,
- 0x96B7, 0xBF34, 0x96B8, 0xBF35, 0x96B9, 0xBF36, 0x96BA, 0xBF37,
- 0x96BB, 0xBF38, 0x96BC, 0xBF39, 0x96BD, 0xBF3A, 0x96BE, 0xBF3B,
- 0x96BF, 0xBF3C, 0x96C0, 0xBF3D, 0x96C1, 0xBF3E, 0x96C2, 0xBF3F,
- 0x96C3, 0xBF42, 0x96C4, 0xBF43, 0x96C5, 0xBF45, 0x96C6, 0xBF46,
- 0x96C7, 0xBF47, 0x96C8, 0xBF49, 0x96C9, 0xBF4A, 0x96CA, 0xBF4B,
- 0x96CB, 0xBF4C, 0x96CC, 0xBF4D, 0x96CD, 0xBF4E, 0x96CE, 0xBF4F,
- 0x96CF, 0xBF52, 0x96D0, 0xBF53, 0x96D1, 0xBF54, 0x96D2, 0xBF56,
- 0x96D3, 0xBF57, 0x96D4, 0xBF58, 0x96D5, 0xBF59, 0x96D6, 0xBF5A,
- 0x96D7, 0xBF5B, 0x96D8, 0xBF5C, 0x96D9, 0xBF5D, 0x96DA, 0xBF5E,
- 0x96DB, 0xBF5F, 0x96DC, 0xBF60, 0x96DD, 0xBF61, 0x96DE, 0xBF62,
- 0x96DF, 0xBF63, 0x96E0, 0xBF64, 0x96E1, 0xBF65, 0x96E2, 0xBF66,
- 0x96E3, 0xBF67, 0x96E4, 0xBF68, 0x96E5, 0xBF69, 0x96E6, 0xBF6A,
- 0x96E7, 0xBF6B, 0x96E8, 0xBF6C, 0x96E9, 0xBF6D, 0x96EA, 0xBF6E,
- 0x96EB, 0xBF6F, 0x96EC, 0xBF70, 0x96ED, 0xBF71, 0x96EE, 0xBF72,
- 0x96EF, 0xBF73, 0x96F0, 0xBF74, 0x96F1, 0xBF75, 0x96F2, 0xBF76,
- 0x96F3, 0xBF77, 0x96F4, 0xBF78, 0x96F5, 0xBF79, 0x96F6, 0xBF7A,
- 0x96F7, 0xBF7B, 0x96F8, 0xBF7C, 0x96F9, 0xBF7D, 0x96FA, 0xBF7E,
- 0x96FB, 0xBF7F, 0x96FC, 0xBF80, 0x96FD, 0xBF81, 0x96FE, 0xBF82,
- 0x9741, 0xBF83, 0x9742, 0xBF84, 0x9743, 0xBF85, 0x9744, 0xBF86,
- 0x9745, 0xBF87, 0x9746, 0xBF88, 0x9747, 0xBF89, 0x9748, 0xBF8A,
- 0x9749, 0xBF8B, 0x974A, 0xBF8C, 0x974B, 0xBF8D, 0x974C, 0xBF8E,
- 0x974D, 0xBF8F, 0x974E, 0xBF90, 0x974F, 0xBF91, 0x9750, 0xBF92,
- 0x9751, 0xBF93, 0x9752, 0xBF95, 0x9753, 0xBF96, 0x9754, 0xBF97,
- 0x9755, 0xBF98, 0x9756, 0xBF99, 0x9757, 0xBF9A, 0x9758, 0xBF9B,
- 0x9759, 0xBF9C, 0x975A, 0xBF9D, 0x9761, 0xBF9E, 0x9762, 0xBF9F,
- 0x9763, 0xBFA0, 0x9764, 0xBFA1, 0x9765, 0xBFA2, 0x9766, 0xBFA3,
- 0x9767, 0xBFA4, 0x9768, 0xBFA5, 0x9769, 0xBFA6, 0x976A, 0xBFA7,
- 0x976B, 0xBFA8, 0x976C, 0xBFA9, 0x976D, 0xBFAA, 0x976E, 0xBFAB,
- 0x976F, 0xBFAC, 0x9770, 0xBFAD, 0x9771, 0xBFAE, 0x9772, 0xBFAF,
- 0x9773, 0xBFB1, 0x9774, 0xBFB2, 0x9775, 0xBFB3, 0x9776, 0xBFB4,
- 0x9777, 0xBFB5, 0x9778, 0xBFB6, 0x9779, 0xBFB7, 0x977A, 0xBFB8,
- 0x9781, 0xBFB9, 0x9782, 0xBFBA, 0x9783, 0xBFBB, 0x9784, 0xBFBC,
- 0x9785, 0xBFBD, 0x9786, 0xBFBE, 0x9787, 0xBFBF, 0x9788, 0xBFC0,
- 0x9789, 0xBFC1, 0x978A, 0xBFC2, 0x978B, 0xBFC3, 0x978C, 0xBFC4,
- 0x978D, 0xBFC6, 0x978E, 0xBFC7, 0x978F, 0xBFC8, 0x9790, 0xBFC9,
- 0x9791, 0xBFCA, 0x9792, 0xBFCB, 0x9793, 0xBFCE, 0x9794, 0xBFCF,
- 0x9795, 0xBFD1, 0x9796, 0xBFD2, 0x9797, 0xBFD3, 0x9798, 0xBFD5,
- 0x9799, 0xBFD6, 0x979A, 0xBFD7, 0x979B, 0xBFD8, 0x979C, 0xBFD9,
- 0x979D, 0xBFDA, 0x979E, 0xBFDB, 0x979F, 0xBFDD, 0x97A0, 0xBFDE,
- 0x97A1, 0xBFE0, 0x97A2, 0xBFE2, 0x97A3, 0xBFE3, 0x97A4, 0xBFE4,
- 0x97A5, 0xBFE5, 0x97A6, 0xBFE6, 0x97A7, 0xBFE7, 0x97A8, 0xBFE8,
- 0x97A9, 0xBFE9, 0x97AA, 0xBFEA, 0x97AB, 0xBFEB, 0x97AC, 0xBFEC,
- 0x97AD, 0xBFED, 0x97AE, 0xBFEE, 0x97AF, 0xBFEF, 0x97B0, 0xBFF0,
- 0x97B1, 0xBFF1, 0x97B2, 0xBFF2, 0x97B3, 0xBFF3, 0x97B4, 0xBFF4,
- 0x97B5, 0xBFF5, 0x97B6, 0xBFF6, 0x97B7, 0xBFF7, 0x97B8, 0xBFF8,
- 0x97B9, 0xBFF9, 0x97BA, 0xBFFA, 0x97BB, 0xBFFB, 0x97BC, 0xBFFC,
- 0x97BD, 0xBFFD, 0x97BE, 0xBFFE, 0x97BF, 0xBFFF, 0x97C0, 0xC000,
- 0x97C1, 0xC001, 0x97C2, 0xC002, 0x97C3, 0xC003, 0x97C4, 0xC004,
- 0x97C5, 0xC005, 0x97C6, 0xC006, 0x97C7, 0xC007, 0x97C8, 0xC008,
- 0x97C9, 0xC009, 0x97CA, 0xC00A, 0x97CB, 0xC00B, 0x97CC, 0xC00C,
- 0x97CD, 0xC00D, 0x97CE, 0xC00E, 0x97CF, 0xC00F, 0x97D0, 0xC010,
- 0x97D1, 0xC011, 0x97D2, 0xC012, 0x97D3, 0xC013, 0x97D4, 0xC014,
- 0x97D5, 0xC015, 0x97D6, 0xC016, 0x97D7, 0xC017, 0x97D8, 0xC018,
- 0x97D9, 0xC019, 0x97DA, 0xC01A, 0x97DB, 0xC01B, 0x97DC, 0xC01C,
- 0x97DD, 0xC01D, 0x97DE, 0xC01E, 0x97DF, 0xC01F, 0x97E0, 0xC020,
- 0x97E1, 0xC021, 0x97E2, 0xC022, 0x97E3, 0xC023, 0x97E4, 0xC024,
- 0x97E5, 0xC025, 0x97E6, 0xC026, 0x97E7, 0xC027, 0x97E8, 0xC028,
- 0x97E9, 0xC029, 0x97EA, 0xC02A, 0x97EB, 0xC02B, 0x97EC, 0xC02C,
- 0x97ED, 0xC02D, 0x97EE, 0xC02E, 0x97EF, 0xC02F, 0x97F0, 0xC030,
- 0x97F1, 0xC031, 0x97F2, 0xC032, 0x97F3, 0xC033, 0x97F4, 0xC034,
- 0x97F5, 0xC035, 0x97F6, 0xC036, 0x97F7, 0xC037, 0x97F8, 0xC038,
- 0x97F9, 0xC039, 0x97FA, 0xC03A, 0x97FB, 0xC03B, 0x97FC, 0xC03D,
- 0x97FD, 0xC03E, 0x97FE, 0xC03F, 0x9841, 0xC040, 0x9842, 0xC041,
- 0x9843, 0xC042, 0x9844, 0xC043, 0x9845, 0xC044, 0x9846, 0xC045,
- 0x9847, 0xC046, 0x9848, 0xC047, 0x9849, 0xC048, 0x984A, 0xC049,
- 0x984B, 0xC04A, 0x984C, 0xC04B, 0x984D, 0xC04C, 0x984E, 0xC04D,
- 0x984F, 0xC04E, 0x9850, 0xC04F, 0x9851, 0xC050, 0x9852, 0xC052,
- 0x9853, 0xC053, 0x9854, 0xC054, 0x9855, 0xC055, 0x9856, 0xC056,
- 0x9857, 0xC057, 0x9858, 0xC059, 0x9859, 0xC05A, 0x985A, 0xC05B,
- 0x9861, 0xC05D, 0x9862, 0xC05E, 0x9863, 0xC05F, 0x9864, 0xC061,
- 0x9865, 0xC062, 0x9866, 0xC063, 0x9867, 0xC064, 0x9868, 0xC065,
- 0x9869, 0xC066, 0x986A, 0xC067, 0x986B, 0xC06A, 0x986C, 0xC06B,
- 0x986D, 0xC06C, 0x986E, 0xC06D, 0x986F, 0xC06E, 0x9870, 0xC06F,
- 0x9871, 0xC070, 0x9872, 0xC071, 0x9873, 0xC072, 0x9874, 0xC073,
- 0x9875, 0xC074, 0x9876, 0xC075, 0x9877, 0xC076, 0x9878, 0xC077,
- 0x9879, 0xC078, 0x987A, 0xC079, 0x9881, 0xC07A, 0x9882, 0xC07B,
- 0x9883, 0xC07C, 0x9884, 0xC07D, 0x9885, 0xC07E, 0x9886, 0xC07F,
- 0x9887, 0xC080, 0x9888, 0xC081, 0x9889, 0xC082, 0x988A, 0xC083,
- 0x988B, 0xC084, 0x988C, 0xC085, 0x988D, 0xC086, 0x988E, 0xC087,
- 0x988F, 0xC088, 0x9890, 0xC089, 0x9891, 0xC08A, 0x9892, 0xC08B,
- 0x9893, 0xC08C, 0x9894, 0xC08D, 0x9895, 0xC08E, 0x9896, 0xC08F,
- 0x9897, 0xC092, 0x9898, 0xC093, 0x9899, 0xC095, 0x989A, 0xC096,
- 0x989B, 0xC097, 0x989C, 0xC099, 0x989D, 0xC09A, 0x989E, 0xC09B,
- 0x989F, 0xC09C, 0x98A0, 0xC09D, 0x98A1, 0xC09E, 0x98A2, 0xC09F,
- 0x98A3, 0xC0A2, 0x98A4, 0xC0A4, 0x98A5, 0xC0A6, 0x98A6, 0xC0A7,
- 0x98A7, 0xC0A8, 0x98A8, 0xC0A9, 0x98A9, 0xC0AA, 0x98AA, 0xC0AB,
- 0x98AB, 0xC0AE, 0x98AC, 0xC0B1, 0x98AD, 0xC0B2, 0x98AE, 0xC0B7,
- 0x98AF, 0xC0B8, 0x98B0, 0xC0B9, 0x98B1, 0xC0BA, 0x98B2, 0xC0BB,
- 0x98B3, 0xC0BE, 0x98B4, 0xC0C2, 0x98B5, 0xC0C3, 0x98B6, 0xC0C4,
- 0x98B7, 0xC0C6, 0x98B8, 0xC0C7, 0x98B9, 0xC0CA, 0x98BA, 0xC0CB,
- 0x98BB, 0xC0CD, 0x98BC, 0xC0CE, 0x98BD, 0xC0CF, 0x98BE, 0xC0D1,
- 0x98BF, 0xC0D2, 0x98C0, 0xC0D3, 0x98C1, 0xC0D4, 0x98C2, 0xC0D5,
- 0x98C3, 0xC0D6, 0x98C4, 0xC0D7, 0x98C5, 0xC0DA, 0x98C6, 0xC0DE,
- 0x98C7, 0xC0DF, 0x98C8, 0xC0E0, 0x98C9, 0xC0E1, 0x98CA, 0xC0E2,
- 0x98CB, 0xC0E3, 0x98CC, 0xC0E6, 0x98CD, 0xC0E7, 0x98CE, 0xC0E9,
- 0x98CF, 0xC0EA, 0x98D0, 0xC0EB, 0x98D1, 0xC0ED, 0x98D2, 0xC0EE,
- 0x98D3, 0xC0EF, 0x98D4, 0xC0F0, 0x98D5, 0xC0F1, 0x98D6, 0xC0F2,
- 0x98D7, 0xC0F3, 0x98D8, 0xC0F6, 0x98D9, 0xC0F8, 0x98DA, 0xC0FA,
- 0x98DB, 0xC0FB, 0x98DC, 0xC0FC, 0x98DD, 0xC0FD, 0x98DE, 0xC0FE,
- 0x98DF, 0xC0FF, 0x98E0, 0xC101, 0x98E1, 0xC102, 0x98E2, 0xC103,
- 0x98E3, 0xC105, 0x98E4, 0xC106, 0x98E5, 0xC107, 0x98E6, 0xC109,
- 0x98E7, 0xC10A, 0x98E8, 0xC10B, 0x98E9, 0xC10C, 0x98EA, 0xC10D,
- 0x98EB, 0xC10E, 0x98EC, 0xC10F, 0x98ED, 0xC111, 0x98EE, 0xC112,
- 0x98EF, 0xC113, 0x98F0, 0xC114, 0x98F1, 0xC116, 0x98F2, 0xC117,
- 0x98F3, 0xC118, 0x98F4, 0xC119, 0x98F5, 0xC11A, 0x98F6, 0xC11B,
- 0x98F7, 0xC121, 0x98F8, 0xC122, 0x98F9, 0xC125, 0x98FA, 0xC128,
- 0x98FB, 0xC129, 0x98FC, 0xC12A, 0x98FD, 0xC12B, 0x98FE, 0xC12E,
- 0x9941, 0xC132, 0x9942, 0xC133, 0x9943, 0xC134, 0x9944, 0xC135,
- 0x9945, 0xC137, 0x9946, 0xC13A, 0x9947, 0xC13B, 0x9948, 0xC13D,
- 0x9949, 0xC13E, 0x994A, 0xC13F, 0x994B, 0xC141, 0x994C, 0xC142,
- 0x994D, 0xC143, 0x994E, 0xC144, 0x994F, 0xC145, 0x9950, 0xC146,
- 0x9951, 0xC147, 0x9952, 0xC14A, 0x9953, 0xC14E, 0x9954, 0xC14F,
- 0x9955, 0xC150, 0x9956, 0xC151, 0x9957, 0xC152, 0x9958, 0xC153,
- 0x9959, 0xC156, 0x995A, 0xC157, 0x9961, 0xC159, 0x9962, 0xC15A,
- 0x9963, 0xC15B, 0x9964, 0xC15D, 0x9965, 0xC15E, 0x9966, 0xC15F,
- 0x9967, 0xC160, 0x9968, 0xC161, 0x9969, 0xC162, 0x996A, 0xC163,
- 0x996B, 0xC166, 0x996C, 0xC16A, 0x996D, 0xC16B, 0x996E, 0xC16C,
- 0x996F, 0xC16D, 0x9970, 0xC16E, 0x9971, 0xC16F, 0x9972, 0xC171,
- 0x9973, 0xC172, 0x9974, 0xC173, 0x9975, 0xC175, 0x9976, 0xC176,
- 0x9977, 0xC177, 0x9978, 0xC179, 0x9979, 0xC17A, 0x997A, 0xC17B,
- 0x9981, 0xC17C, 0x9982, 0xC17D, 0x9983, 0xC17E, 0x9984, 0xC17F,
- 0x9985, 0xC180, 0x9986, 0xC181, 0x9987, 0xC182, 0x9988, 0xC183,
- 0x9989, 0xC184, 0x998A, 0xC186, 0x998B, 0xC187, 0x998C, 0xC188,
- 0x998D, 0xC189, 0x998E, 0xC18A, 0x998F, 0xC18B, 0x9990, 0xC18F,
- 0x9991, 0xC191, 0x9992, 0xC192, 0x9993, 0xC193, 0x9994, 0xC195,
- 0x9995, 0xC197, 0x9996, 0xC198, 0x9997, 0xC199, 0x9998, 0xC19A,
- 0x9999, 0xC19B, 0x999A, 0xC19E, 0x999B, 0xC1A0, 0x999C, 0xC1A2,
- 0x999D, 0xC1A3, 0x999E, 0xC1A4, 0x999F, 0xC1A6, 0x99A0, 0xC1A7,
- 0x99A1, 0xC1AA, 0x99A2, 0xC1AB, 0x99A3, 0xC1AD, 0x99A4, 0xC1AE,
- 0x99A5, 0xC1AF, 0x99A6, 0xC1B1, 0x99A7, 0xC1B2, 0x99A8, 0xC1B3,
- 0x99A9, 0xC1B4, 0x99AA, 0xC1B5, 0x99AB, 0xC1B6, 0x99AC, 0xC1B7,
- 0x99AD, 0xC1B8, 0x99AE, 0xC1B9, 0x99AF, 0xC1BA, 0x99B0, 0xC1BB,
- 0x99B1, 0xC1BC, 0x99B2, 0xC1BE, 0x99B3, 0xC1BF, 0x99B4, 0xC1C0,
- 0x99B5, 0xC1C1, 0x99B6, 0xC1C2, 0x99B7, 0xC1C3, 0x99B8, 0xC1C5,
- 0x99B9, 0xC1C6, 0x99BA, 0xC1C7, 0x99BB, 0xC1C9, 0x99BC, 0xC1CA,
- 0x99BD, 0xC1CB, 0x99BE, 0xC1CD, 0x99BF, 0xC1CE, 0x99C0, 0xC1CF,
- 0x99C1, 0xC1D0, 0x99C2, 0xC1D1, 0x99C3, 0xC1D2, 0x99C4, 0xC1D3,
- 0x99C5, 0xC1D5, 0x99C6, 0xC1D6, 0x99C7, 0xC1D9, 0x99C8, 0xC1DA,
- 0x99C9, 0xC1DB, 0x99CA, 0xC1DC, 0x99CB, 0xC1DD, 0x99CC, 0xC1DE,
- 0x99CD, 0xC1DF, 0x99CE, 0xC1E1, 0x99CF, 0xC1E2, 0x99D0, 0xC1E3,
- 0x99D1, 0xC1E5, 0x99D2, 0xC1E6, 0x99D3, 0xC1E7, 0x99D4, 0xC1E9,
- 0x99D5, 0xC1EA, 0x99D6, 0xC1EB, 0x99D7, 0xC1EC, 0x99D8, 0xC1ED,
- 0x99D9, 0xC1EE, 0x99DA, 0xC1EF, 0x99DB, 0xC1F2, 0x99DC, 0xC1F4,
- 0x99DD, 0xC1F5, 0x99DE, 0xC1F6, 0x99DF, 0xC1F7, 0x99E0, 0xC1F8,
- 0x99E1, 0xC1F9, 0x99E2, 0xC1FA, 0x99E3, 0xC1FB, 0x99E4, 0xC1FE,
- 0x99E5, 0xC1FF, 0x99E6, 0xC201, 0x99E7, 0xC202, 0x99E8, 0xC203,
- 0x99E9, 0xC205, 0x99EA, 0xC206, 0x99EB, 0xC207, 0x99EC, 0xC208,
- 0x99ED, 0xC209, 0x99EE, 0xC20A, 0x99EF, 0xC20B, 0x99F0, 0xC20E,
- 0x99F1, 0xC210, 0x99F2, 0xC212, 0x99F3, 0xC213, 0x99F4, 0xC214,
- 0x99F5, 0xC215, 0x99F6, 0xC216, 0x99F7, 0xC217, 0x99F8, 0xC21A,
- 0x99F9, 0xC21B, 0x99FA, 0xC21D, 0x99FB, 0xC21E, 0x99FC, 0xC221,
- 0x99FD, 0xC222, 0x99FE, 0xC223, 0x9A41, 0xC224, 0x9A42, 0xC225,
- 0x9A43, 0xC226, 0x9A44, 0xC227, 0x9A45, 0xC22A, 0x9A46, 0xC22C,
- 0x9A47, 0xC22E, 0x9A48, 0xC230, 0x9A49, 0xC233, 0x9A4A, 0xC235,
- 0x9A4B, 0xC236, 0x9A4C, 0xC237, 0x9A4D, 0xC238, 0x9A4E, 0xC239,
- 0x9A4F, 0xC23A, 0x9A50, 0xC23B, 0x9A51, 0xC23C, 0x9A52, 0xC23D,
- 0x9A53, 0xC23E, 0x9A54, 0xC23F, 0x9A55, 0xC240, 0x9A56, 0xC241,
- 0x9A57, 0xC242, 0x9A58, 0xC243, 0x9A59, 0xC244, 0x9A5A, 0xC245,
- 0x9A61, 0xC246, 0x9A62, 0xC247, 0x9A63, 0xC249, 0x9A64, 0xC24A,
- 0x9A65, 0xC24B, 0x9A66, 0xC24C, 0x9A67, 0xC24D, 0x9A68, 0xC24E,
- 0x9A69, 0xC24F, 0x9A6A, 0xC252, 0x9A6B, 0xC253, 0x9A6C, 0xC255,
- 0x9A6D, 0xC256, 0x9A6E, 0xC257, 0x9A6F, 0xC259, 0x9A70, 0xC25A,
- 0x9A71, 0xC25B, 0x9A72, 0xC25C, 0x9A73, 0xC25D, 0x9A74, 0xC25E,
- 0x9A75, 0xC25F, 0x9A76, 0xC261, 0x9A77, 0xC262, 0x9A78, 0xC263,
- 0x9A79, 0xC264, 0x9A7A, 0xC266, 0x9A81, 0xC267, 0x9A82, 0xC268,
- 0x9A83, 0xC269, 0x9A84, 0xC26A, 0x9A85, 0xC26B, 0x9A86, 0xC26E,
- 0x9A87, 0xC26F, 0x9A88, 0xC271, 0x9A89, 0xC272, 0x9A8A, 0xC273,
- 0x9A8B, 0xC275, 0x9A8C, 0xC276, 0x9A8D, 0xC277, 0x9A8E, 0xC278,
- 0x9A8F, 0xC279, 0x9A90, 0xC27A, 0x9A91, 0xC27B, 0x9A92, 0xC27E,
- 0x9A93, 0xC280, 0x9A94, 0xC282, 0x9A95, 0xC283, 0x9A96, 0xC284,
- 0x9A97, 0xC285, 0x9A98, 0xC286, 0x9A99, 0xC287, 0x9A9A, 0xC28A,
- 0x9A9B, 0xC28B, 0x9A9C, 0xC28C, 0x9A9D, 0xC28D, 0x9A9E, 0xC28E,
- 0x9A9F, 0xC28F, 0x9AA0, 0xC291, 0x9AA1, 0xC292, 0x9AA2, 0xC293,
- 0x9AA3, 0xC294, 0x9AA4, 0xC295, 0x9AA5, 0xC296, 0x9AA6, 0xC297,
- 0x9AA7, 0xC299, 0x9AA8, 0xC29A, 0x9AA9, 0xC29C, 0x9AAA, 0xC29E,
- 0x9AAB, 0xC29F, 0x9AAC, 0xC2A0, 0x9AAD, 0xC2A1, 0x9AAE, 0xC2A2,
- 0x9AAF, 0xC2A3, 0x9AB0, 0xC2A6, 0x9AB1, 0xC2A7, 0x9AB2, 0xC2A9,
- 0x9AB3, 0xC2AA, 0x9AB4, 0xC2AB, 0x9AB5, 0xC2AE, 0x9AB6, 0xC2AF,
- 0x9AB7, 0xC2B0, 0x9AB8, 0xC2B1, 0x9AB9, 0xC2B2, 0x9ABA, 0xC2B3,
- 0x9ABB, 0xC2B6, 0x9ABC, 0xC2B8, 0x9ABD, 0xC2BA, 0x9ABE, 0xC2BB,
- 0x9ABF, 0xC2BC, 0x9AC0, 0xC2BD, 0x9AC1, 0xC2BE, 0x9AC2, 0xC2BF,
- 0x9AC3, 0xC2C0, 0x9AC4, 0xC2C1, 0x9AC5, 0xC2C2, 0x9AC6, 0xC2C3,
- 0x9AC7, 0xC2C4, 0x9AC8, 0xC2C5, 0x9AC9, 0xC2C6, 0x9ACA, 0xC2C7,
- 0x9ACB, 0xC2C8, 0x9ACC, 0xC2C9, 0x9ACD, 0xC2CA, 0x9ACE, 0xC2CB,
- 0x9ACF, 0xC2CC, 0x9AD0, 0xC2CD, 0x9AD1, 0xC2CE, 0x9AD2, 0xC2CF,
- 0x9AD3, 0xC2D0, 0x9AD4, 0xC2D1, 0x9AD5, 0xC2D2, 0x9AD6, 0xC2D3,
- 0x9AD7, 0xC2D4, 0x9AD8, 0xC2D5, 0x9AD9, 0xC2D6, 0x9ADA, 0xC2D7,
- 0x9ADB, 0xC2D8, 0x9ADC, 0xC2D9, 0x9ADD, 0xC2DA, 0x9ADE, 0xC2DB,
- 0x9ADF, 0xC2DE, 0x9AE0, 0xC2DF, 0x9AE1, 0xC2E1, 0x9AE2, 0xC2E2,
- 0x9AE3, 0xC2E5, 0x9AE4, 0xC2E6, 0x9AE5, 0xC2E7, 0x9AE6, 0xC2E8,
- 0x9AE7, 0xC2E9, 0x9AE8, 0xC2EA, 0x9AE9, 0xC2EE, 0x9AEA, 0xC2F0,
- 0x9AEB, 0xC2F2, 0x9AEC, 0xC2F3, 0x9AED, 0xC2F4, 0x9AEE, 0xC2F5,
- 0x9AEF, 0xC2F7, 0x9AF0, 0xC2FA, 0x9AF1, 0xC2FD, 0x9AF2, 0xC2FE,
- 0x9AF3, 0xC2FF, 0x9AF4, 0xC301, 0x9AF5, 0xC302, 0x9AF6, 0xC303,
- 0x9AF7, 0xC304, 0x9AF8, 0xC305, 0x9AF9, 0xC306, 0x9AFA, 0xC307,
- 0x9AFB, 0xC30A, 0x9AFC, 0xC30B, 0x9AFD, 0xC30E, 0x9AFE, 0xC30F,
- 0x9B41, 0xC310, 0x9B42, 0xC311, 0x9B43, 0xC312, 0x9B44, 0xC316,
- 0x9B45, 0xC317, 0x9B46, 0xC319, 0x9B47, 0xC31A, 0x9B48, 0xC31B,
- 0x9B49, 0xC31D, 0x9B4A, 0xC31E, 0x9B4B, 0xC31F, 0x9B4C, 0xC320,
- 0x9B4D, 0xC321, 0x9B4E, 0xC322, 0x9B4F, 0xC323, 0x9B50, 0xC326,
- 0x9B51, 0xC327, 0x9B52, 0xC32A, 0x9B53, 0xC32B, 0x9B54, 0xC32C,
- 0x9B55, 0xC32D, 0x9B56, 0xC32E, 0x9B57, 0xC32F, 0x9B58, 0xC330,
- 0x9B59, 0xC331, 0x9B5A, 0xC332, 0x9B61, 0xC333, 0x9B62, 0xC334,
- 0x9B63, 0xC335, 0x9B64, 0xC336, 0x9B65, 0xC337, 0x9B66, 0xC338,
- 0x9B67, 0xC339, 0x9B68, 0xC33A, 0x9B69, 0xC33B, 0x9B6A, 0xC33C,
- 0x9B6B, 0xC33D, 0x9B6C, 0xC33E, 0x9B6D, 0xC33F, 0x9B6E, 0xC340,
- 0x9B6F, 0xC341, 0x9B70, 0xC342, 0x9B71, 0xC343, 0x9B72, 0xC344,
- 0x9B73, 0xC346, 0x9B74, 0xC347, 0x9B75, 0xC348, 0x9B76, 0xC349,
- 0x9B77, 0xC34A, 0x9B78, 0xC34B, 0x9B79, 0xC34C, 0x9B7A, 0xC34D,
- 0x9B81, 0xC34E, 0x9B82, 0xC34F, 0x9B83, 0xC350, 0x9B84, 0xC351,
- 0x9B85, 0xC352, 0x9B86, 0xC353, 0x9B87, 0xC354, 0x9B88, 0xC355,
- 0x9B89, 0xC356, 0x9B8A, 0xC357, 0x9B8B, 0xC358, 0x9B8C, 0xC359,
- 0x9B8D, 0xC35A, 0x9B8E, 0xC35B, 0x9B8F, 0xC35C, 0x9B90, 0xC35D,
- 0x9B91, 0xC35E, 0x9B92, 0xC35F, 0x9B93, 0xC360, 0x9B94, 0xC361,
- 0x9B95, 0xC362, 0x9B96, 0xC363, 0x9B97, 0xC364, 0x9B98, 0xC365,
- 0x9B99, 0xC366, 0x9B9A, 0xC367, 0x9B9B, 0xC36A, 0x9B9C, 0xC36B,
- 0x9B9D, 0xC36D, 0x9B9E, 0xC36E, 0x9B9F, 0xC36F, 0x9BA0, 0xC371,
- 0x9BA1, 0xC373, 0x9BA2, 0xC374, 0x9BA3, 0xC375, 0x9BA4, 0xC376,
- 0x9BA5, 0xC377, 0x9BA6, 0xC37A, 0x9BA7, 0xC37B, 0x9BA8, 0xC37E,
- 0x9BA9, 0xC37F, 0x9BAA, 0xC380, 0x9BAB, 0xC381, 0x9BAC, 0xC382,
- 0x9BAD, 0xC383, 0x9BAE, 0xC385, 0x9BAF, 0xC386, 0x9BB0, 0xC387,
- 0x9BB1, 0xC389, 0x9BB2, 0xC38A, 0x9BB3, 0xC38B, 0x9BB4, 0xC38D,
- 0x9BB5, 0xC38E, 0x9BB6, 0xC38F, 0x9BB7, 0xC390, 0x9BB8, 0xC391,
- 0x9BB9, 0xC392, 0x9BBA, 0xC393, 0x9BBB, 0xC394, 0x9BBC, 0xC395,
- 0x9BBD, 0xC396, 0x9BBE, 0xC397, 0x9BBF, 0xC398, 0x9BC0, 0xC399,
- 0x9BC1, 0xC39A, 0x9BC2, 0xC39B, 0x9BC3, 0xC39C, 0x9BC4, 0xC39D,
- 0x9BC5, 0xC39E, 0x9BC6, 0xC39F, 0x9BC7, 0xC3A0, 0x9BC8, 0xC3A1,
- 0x9BC9, 0xC3A2, 0x9BCA, 0xC3A3, 0x9BCB, 0xC3A4, 0x9BCC, 0xC3A5,
- 0x9BCD, 0xC3A6, 0x9BCE, 0xC3A7, 0x9BCF, 0xC3A8, 0x9BD0, 0xC3A9,
- 0x9BD1, 0xC3AA, 0x9BD2, 0xC3AB, 0x9BD3, 0xC3AC, 0x9BD4, 0xC3AD,
- 0x9BD5, 0xC3AE, 0x9BD6, 0xC3AF, 0x9BD7, 0xC3B0, 0x9BD8, 0xC3B1,
- 0x9BD9, 0xC3B2, 0x9BDA, 0xC3B3, 0x9BDB, 0xC3B4, 0x9BDC, 0xC3B5,
- 0x9BDD, 0xC3B6, 0x9BDE, 0xC3B7, 0x9BDF, 0xC3B8, 0x9BE0, 0xC3B9,
- 0x9BE1, 0xC3BA, 0x9BE2, 0xC3BB, 0x9BE3, 0xC3BC, 0x9BE4, 0xC3BD,
- 0x9BE5, 0xC3BE, 0x9BE6, 0xC3BF, 0x9BE7, 0xC3C1, 0x9BE8, 0xC3C2,
- 0x9BE9, 0xC3C3, 0x9BEA, 0xC3C4, 0x9BEB, 0xC3C5, 0x9BEC, 0xC3C6,
- 0x9BED, 0xC3C7, 0x9BEE, 0xC3C8, 0x9BEF, 0xC3C9, 0x9BF0, 0xC3CA,
- 0x9BF1, 0xC3CB, 0x9BF2, 0xC3CC, 0x9BF3, 0xC3CD, 0x9BF4, 0xC3CE,
- 0x9BF5, 0xC3CF, 0x9BF6, 0xC3D0, 0x9BF7, 0xC3D1, 0x9BF8, 0xC3D2,
- 0x9BF9, 0xC3D3, 0x9BFA, 0xC3D4, 0x9BFB, 0xC3D5, 0x9BFC, 0xC3D6,
- 0x9BFD, 0xC3D7, 0x9BFE, 0xC3DA, 0x9C41, 0xC3DB, 0x9C42, 0xC3DD,
- 0x9C43, 0xC3DE, 0x9C44, 0xC3E1, 0x9C45, 0xC3E3, 0x9C46, 0xC3E4,
- 0x9C47, 0xC3E5, 0x9C48, 0xC3E6, 0x9C49, 0xC3E7, 0x9C4A, 0xC3EA,
- 0x9C4B, 0xC3EB, 0x9C4C, 0xC3EC, 0x9C4D, 0xC3EE, 0x9C4E, 0xC3EF,
- 0x9C4F, 0xC3F0, 0x9C50, 0xC3F1, 0x9C51, 0xC3F2, 0x9C52, 0xC3F3,
- 0x9C53, 0xC3F6, 0x9C54, 0xC3F7, 0x9C55, 0xC3F9, 0x9C56, 0xC3FA,
- 0x9C57, 0xC3FB, 0x9C58, 0xC3FC, 0x9C59, 0xC3FD, 0x9C5A, 0xC3FE,
- 0x9C61, 0xC3FF, 0x9C62, 0xC400, 0x9C63, 0xC401, 0x9C64, 0xC402,
- 0x9C65, 0xC403, 0x9C66, 0xC404, 0x9C67, 0xC405, 0x9C68, 0xC406,
- 0x9C69, 0xC407, 0x9C6A, 0xC409, 0x9C6B, 0xC40A, 0x9C6C, 0xC40B,
- 0x9C6D, 0xC40C, 0x9C6E, 0xC40D, 0x9C6F, 0xC40E, 0x9C70, 0xC40F,
- 0x9C71, 0xC411, 0x9C72, 0xC412, 0x9C73, 0xC413, 0x9C74, 0xC414,
- 0x9C75, 0xC415, 0x9C76, 0xC416, 0x9C77, 0xC417, 0x9C78, 0xC418,
- 0x9C79, 0xC419, 0x9C7A, 0xC41A, 0x9C81, 0xC41B, 0x9C82, 0xC41C,
- 0x9C83, 0xC41D, 0x9C84, 0xC41E, 0x9C85, 0xC41F, 0x9C86, 0xC420,
- 0x9C87, 0xC421, 0x9C88, 0xC422, 0x9C89, 0xC423, 0x9C8A, 0xC425,
- 0x9C8B, 0xC426, 0x9C8C, 0xC427, 0x9C8D, 0xC428, 0x9C8E, 0xC429,
- 0x9C8F, 0xC42A, 0x9C90, 0xC42B, 0x9C91, 0xC42D, 0x9C92, 0xC42E,
- 0x9C93, 0xC42F, 0x9C94, 0xC431, 0x9C95, 0xC432, 0x9C96, 0xC433,
- 0x9C97, 0xC435, 0x9C98, 0xC436, 0x9C99, 0xC437, 0x9C9A, 0xC438,
- 0x9C9B, 0xC439, 0x9C9C, 0xC43A, 0x9C9D, 0xC43B, 0x9C9E, 0xC43E,
- 0x9C9F, 0xC43F, 0x9CA0, 0xC440, 0x9CA1, 0xC441, 0x9CA2, 0xC442,
- 0x9CA3, 0xC443, 0x9CA4, 0xC444, 0x9CA5, 0xC445, 0x9CA6, 0xC446,
- 0x9CA7, 0xC447, 0x9CA8, 0xC449, 0x9CA9, 0xC44A, 0x9CAA, 0xC44B,
- 0x9CAB, 0xC44C, 0x9CAC, 0xC44D, 0x9CAD, 0xC44E, 0x9CAE, 0xC44F,
- 0x9CAF, 0xC450, 0x9CB0, 0xC451, 0x9CB1, 0xC452, 0x9CB2, 0xC453,
- 0x9CB3, 0xC454, 0x9CB4, 0xC455, 0x9CB5, 0xC456, 0x9CB6, 0xC457,
- 0x9CB7, 0xC458, 0x9CB8, 0xC459, 0x9CB9, 0xC45A, 0x9CBA, 0xC45B,
- 0x9CBB, 0xC45C, 0x9CBC, 0xC45D, 0x9CBD, 0xC45E, 0x9CBE, 0xC45F,
- 0x9CBF, 0xC460, 0x9CC0, 0xC461, 0x9CC1, 0xC462, 0x9CC2, 0xC463,
- 0x9CC3, 0xC466, 0x9CC4, 0xC467, 0x9CC5, 0xC469, 0x9CC6, 0xC46A,
- 0x9CC7, 0xC46B, 0x9CC8, 0xC46D, 0x9CC9, 0xC46E, 0x9CCA, 0xC46F,
- 0x9CCB, 0xC470, 0x9CCC, 0xC471, 0x9CCD, 0xC472, 0x9CCE, 0xC473,
- 0x9CCF, 0xC476, 0x9CD0, 0xC477, 0x9CD1, 0xC478, 0x9CD2, 0xC47A,
- 0x9CD3, 0xC47B, 0x9CD4, 0xC47C, 0x9CD5, 0xC47D, 0x9CD6, 0xC47E,
- 0x9CD7, 0xC47F, 0x9CD8, 0xC481, 0x9CD9, 0xC482, 0x9CDA, 0xC483,
- 0x9CDB, 0xC484, 0x9CDC, 0xC485, 0x9CDD, 0xC486, 0x9CDE, 0xC487,
- 0x9CDF, 0xC488, 0x9CE0, 0xC489, 0x9CE1, 0xC48A, 0x9CE2, 0xC48B,
- 0x9CE3, 0xC48C, 0x9CE4, 0xC48D, 0x9CE5, 0xC48E, 0x9CE6, 0xC48F,
- 0x9CE7, 0xC490, 0x9CE8, 0xC491, 0x9CE9, 0xC492, 0x9CEA, 0xC493,
- 0x9CEB, 0xC495, 0x9CEC, 0xC496, 0x9CED, 0xC497, 0x9CEE, 0xC498,
- 0x9CEF, 0xC499, 0x9CF0, 0xC49A, 0x9CF1, 0xC49B, 0x9CF2, 0xC49D,
- 0x9CF3, 0xC49E, 0x9CF4, 0xC49F, 0x9CF5, 0xC4A0, 0x9CF6, 0xC4A1,
- 0x9CF7, 0xC4A2, 0x9CF8, 0xC4A3, 0x9CF9, 0xC4A4, 0x9CFA, 0xC4A5,
- 0x9CFB, 0xC4A6, 0x9CFC, 0xC4A7, 0x9CFD, 0xC4A8, 0x9CFE, 0xC4A9,
- 0x9D41, 0xC4AA, 0x9D42, 0xC4AB, 0x9D43, 0xC4AC, 0x9D44, 0xC4AD,
- 0x9D45, 0xC4AE, 0x9D46, 0xC4AF, 0x9D47, 0xC4B0, 0x9D48, 0xC4B1,
- 0x9D49, 0xC4B2, 0x9D4A, 0xC4B3, 0x9D4B, 0xC4B4, 0x9D4C, 0xC4B5,
- 0x9D4D, 0xC4B6, 0x9D4E, 0xC4B7, 0x9D4F, 0xC4B9, 0x9D50, 0xC4BA,
- 0x9D51, 0xC4BB, 0x9D52, 0xC4BD, 0x9D53, 0xC4BE, 0x9D54, 0xC4BF,
- 0x9D55, 0xC4C0, 0x9D56, 0xC4C1, 0x9D57, 0xC4C2, 0x9D58, 0xC4C3,
- 0x9D59, 0xC4C4, 0x9D5A, 0xC4C5, 0x9D61, 0xC4C6, 0x9D62, 0xC4C7,
- 0x9D63, 0xC4C8, 0x9D64, 0xC4C9, 0x9D65, 0xC4CA, 0x9D66, 0xC4CB,
- 0x9D67, 0xC4CC, 0x9D68, 0xC4CD, 0x9D69, 0xC4CE, 0x9D6A, 0xC4CF,
- 0x9D6B, 0xC4D0, 0x9D6C, 0xC4D1, 0x9D6D, 0xC4D2, 0x9D6E, 0xC4D3,
- 0x9D6F, 0xC4D4, 0x9D70, 0xC4D5, 0x9D71, 0xC4D6, 0x9D72, 0xC4D7,
- 0x9D73, 0xC4D8, 0x9D74, 0xC4D9, 0x9D75, 0xC4DA, 0x9D76, 0xC4DB,
- 0x9D77, 0xC4DC, 0x9D78, 0xC4DD, 0x9D79, 0xC4DE, 0x9D7A, 0xC4DF,
- 0x9D81, 0xC4E0, 0x9D82, 0xC4E1, 0x9D83, 0xC4E2, 0x9D84, 0xC4E3,
- 0x9D85, 0xC4E4, 0x9D86, 0xC4E5, 0x9D87, 0xC4E6, 0x9D88, 0xC4E7,
- 0x9D89, 0xC4E8, 0x9D8A, 0xC4EA, 0x9D8B, 0xC4EB, 0x9D8C, 0xC4EC,
- 0x9D8D, 0xC4ED, 0x9D8E, 0xC4EE, 0x9D8F, 0xC4EF, 0x9D90, 0xC4F2,
- 0x9D91, 0xC4F3, 0x9D92, 0xC4F5, 0x9D93, 0xC4F6, 0x9D94, 0xC4F7,
- 0x9D95, 0xC4F9, 0x9D96, 0xC4FB, 0x9D97, 0xC4FC, 0x9D98, 0xC4FD,
- 0x9D99, 0xC4FE, 0x9D9A, 0xC502, 0x9D9B, 0xC503, 0x9D9C, 0xC504,
- 0x9D9D, 0xC505, 0x9D9E, 0xC506, 0x9D9F, 0xC507, 0x9DA0, 0xC508,
- 0x9DA1, 0xC509, 0x9DA2, 0xC50A, 0x9DA3, 0xC50B, 0x9DA4, 0xC50D,
- 0x9DA5, 0xC50E, 0x9DA6, 0xC50F, 0x9DA7, 0xC511, 0x9DA8, 0xC512,
- 0x9DA9, 0xC513, 0x9DAA, 0xC515, 0x9DAB, 0xC516, 0x9DAC, 0xC517,
- 0x9DAD, 0xC518, 0x9DAE, 0xC519, 0x9DAF, 0xC51A, 0x9DB0, 0xC51B,
- 0x9DB1, 0xC51D, 0x9DB2, 0xC51E, 0x9DB3, 0xC51F, 0x9DB4, 0xC520,
- 0x9DB5, 0xC521, 0x9DB6, 0xC522, 0x9DB7, 0xC523, 0x9DB8, 0xC524,
- 0x9DB9, 0xC525, 0x9DBA, 0xC526, 0x9DBB, 0xC527, 0x9DBC, 0xC52A,
- 0x9DBD, 0xC52B, 0x9DBE, 0xC52D, 0x9DBF, 0xC52E, 0x9DC0, 0xC52F,
- 0x9DC1, 0xC531, 0x9DC2, 0xC532, 0x9DC3, 0xC533, 0x9DC4, 0xC534,
- 0x9DC5, 0xC535, 0x9DC6, 0xC536, 0x9DC7, 0xC537, 0x9DC8, 0xC53A,
- 0x9DC9, 0xC53C, 0x9DCA, 0xC53E, 0x9DCB, 0xC53F, 0x9DCC, 0xC540,
- 0x9DCD, 0xC541, 0x9DCE, 0xC542, 0x9DCF, 0xC543, 0x9DD0, 0xC546,
- 0x9DD1, 0xC547, 0x9DD2, 0xC54B, 0x9DD3, 0xC54F, 0x9DD4, 0xC550,
- 0x9DD5, 0xC551, 0x9DD6, 0xC552, 0x9DD7, 0xC556, 0x9DD8, 0xC55A,
- 0x9DD9, 0xC55B, 0x9DDA, 0xC55C, 0x9DDB, 0xC55F, 0x9DDC, 0xC562,
- 0x9DDD, 0xC563, 0x9DDE, 0xC565, 0x9DDF, 0xC566, 0x9DE0, 0xC567,
- 0x9DE1, 0xC569, 0x9DE2, 0xC56A, 0x9DE3, 0xC56B, 0x9DE4, 0xC56C,
- 0x9DE5, 0xC56D, 0x9DE6, 0xC56E, 0x9DE7, 0xC56F, 0x9DE8, 0xC572,
- 0x9DE9, 0xC576, 0x9DEA, 0xC577, 0x9DEB, 0xC578, 0x9DEC, 0xC579,
- 0x9DED, 0xC57A, 0x9DEE, 0xC57B, 0x9DEF, 0xC57E, 0x9DF0, 0xC57F,
- 0x9DF1, 0xC581, 0x9DF2, 0xC582, 0x9DF3, 0xC583, 0x9DF4, 0xC585,
- 0x9DF5, 0xC586, 0x9DF6, 0xC588, 0x9DF7, 0xC589, 0x9DF8, 0xC58A,
- 0x9DF9, 0xC58B, 0x9DFA, 0xC58E, 0x9DFB, 0xC590, 0x9DFC, 0xC592,
- 0x9DFD, 0xC593, 0x9DFE, 0xC594, 0x9E41, 0xC596, 0x9E42, 0xC599,
- 0x9E43, 0xC59A, 0x9E44, 0xC59B, 0x9E45, 0xC59D, 0x9E46, 0xC59E,
- 0x9E47, 0xC59F, 0x9E48, 0xC5A1, 0x9E49, 0xC5A2, 0x9E4A, 0xC5A3,
- 0x9E4B, 0xC5A4, 0x9E4C, 0xC5A5, 0x9E4D, 0xC5A6, 0x9E4E, 0xC5A7,
- 0x9E4F, 0xC5A8, 0x9E50, 0xC5AA, 0x9E51, 0xC5AB, 0x9E52, 0xC5AC,
- 0x9E53, 0xC5AD, 0x9E54, 0xC5AE, 0x9E55, 0xC5AF, 0x9E56, 0xC5B0,
- 0x9E57, 0xC5B1, 0x9E58, 0xC5B2, 0x9E59, 0xC5B3, 0x9E5A, 0xC5B6,
- 0x9E61, 0xC5B7, 0x9E62, 0xC5BA, 0x9E63, 0xC5BF, 0x9E64, 0xC5C0,
- 0x9E65, 0xC5C1, 0x9E66, 0xC5C2, 0x9E67, 0xC5C3, 0x9E68, 0xC5CB,
- 0x9E69, 0xC5CD, 0x9E6A, 0xC5CF, 0x9E6B, 0xC5D2, 0x9E6C, 0xC5D3,
- 0x9E6D, 0xC5D5, 0x9E6E, 0xC5D6, 0x9E6F, 0xC5D7, 0x9E70, 0xC5D9,
- 0x9E71, 0xC5DA, 0x9E72, 0xC5DB, 0x9E73, 0xC5DC, 0x9E74, 0xC5DD,
- 0x9E75, 0xC5DE, 0x9E76, 0xC5DF, 0x9E77, 0xC5E2, 0x9E78, 0xC5E4,
- 0x9E79, 0xC5E6, 0x9E7A, 0xC5E7, 0x9E81, 0xC5E8, 0x9E82, 0xC5E9,
- 0x9E83, 0xC5EA, 0x9E84, 0xC5EB, 0x9E85, 0xC5EF, 0x9E86, 0xC5F1,
- 0x9E87, 0xC5F2, 0x9E88, 0xC5F3, 0x9E89, 0xC5F5, 0x9E8A, 0xC5F8,
- 0x9E8B, 0xC5F9, 0x9E8C, 0xC5FA, 0x9E8D, 0xC5FB, 0x9E8E, 0xC602,
- 0x9E8F, 0xC603, 0x9E90, 0xC604, 0x9E91, 0xC609, 0x9E92, 0xC60A,
- 0x9E93, 0xC60B, 0x9E94, 0xC60D, 0x9E95, 0xC60E, 0x9E96, 0xC60F,
- 0x9E97, 0xC611, 0x9E98, 0xC612, 0x9E99, 0xC613, 0x9E9A, 0xC614,
- 0x9E9B, 0xC615, 0x9E9C, 0xC616, 0x9E9D, 0xC617, 0x9E9E, 0xC61A,
- 0x9E9F, 0xC61D, 0x9EA0, 0xC61E, 0x9EA1, 0xC61F, 0x9EA2, 0xC620,
- 0x9EA3, 0xC621, 0x9EA4, 0xC622, 0x9EA5, 0xC623, 0x9EA6, 0xC626,
- 0x9EA7, 0xC627, 0x9EA8, 0xC629, 0x9EA9, 0xC62A, 0x9EAA, 0xC62B,
- 0x9EAB, 0xC62F, 0x9EAC, 0xC631, 0x9EAD, 0xC632, 0x9EAE, 0xC636,
- 0x9EAF, 0xC638, 0x9EB0, 0xC63A, 0x9EB1, 0xC63C, 0x9EB2, 0xC63D,
- 0x9EB3, 0xC63E, 0x9EB4, 0xC63F, 0x9EB5, 0xC642, 0x9EB6, 0xC643,
- 0x9EB7, 0xC645, 0x9EB8, 0xC646, 0x9EB9, 0xC647, 0x9EBA, 0xC649,
- 0x9EBB, 0xC64A, 0x9EBC, 0xC64B, 0x9EBD, 0xC64C, 0x9EBE, 0xC64D,
- 0x9EBF, 0xC64E, 0x9EC0, 0xC64F, 0x9EC1, 0xC652, 0x9EC2, 0xC656,
- 0x9EC3, 0xC657, 0x9EC4, 0xC658, 0x9EC5, 0xC659, 0x9EC6, 0xC65A,
- 0x9EC7, 0xC65B, 0x9EC8, 0xC65E, 0x9EC9, 0xC65F, 0x9ECA, 0xC661,
- 0x9ECB, 0xC662, 0x9ECC, 0xC663, 0x9ECD, 0xC664, 0x9ECE, 0xC665,
- 0x9ECF, 0xC666, 0x9ED0, 0xC667, 0x9ED1, 0xC668, 0x9ED2, 0xC669,
- 0x9ED3, 0xC66A, 0x9ED4, 0xC66B, 0x9ED5, 0xC66D, 0x9ED6, 0xC66E,
- 0x9ED7, 0xC670, 0x9ED8, 0xC672, 0x9ED9, 0xC673, 0x9EDA, 0xC674,
- 0x9EDB, 0xC675, 0x9EDC, 0xC676, 0x9EDD, 0xC677, 0x9EDE, 0xC67A,
- 0x9EDF, 0xC67B, 0x9EE0, 0xC67D, 0x9EE1, 0xC67E, 0x9EE2, 0xC67F,
- 0x9EE3, 0xC681, 0x9EE4, 0xC682, 0x9EE5, 0xC683, 0x9EE6, 0xC684,
- 0x9EE7, 0xC685, 0x9EE8, 0xC686, 0x9EE9, 0xC687, 0x9EEA, 0xC68A,
- 0x9EEB, 0xC68C, 0x9EEC, 0xC68E, 0x9EED, 0xC68F, 0x9EEE, 0xC690,
- 0x9EEF, 0xC691, 0x9EF0, 0xC692, 0x9EF1, 0xC693, 0x9EF2, 0xC696,
- 0x9EF3, 0xC697, 0x9EF4, 0xC699, 0x9EF5, 0xC69A, 0x9EF6, 0xC69B,
- 0x9EF7, 0xC69D, 0x9EF8, 0xC69E, 0x9EF9, 0xC69F, 0x9EFA, 0xC6A0,
- 0x9EFB, 0xC6A1, 0x9EFC, 0xC6A2, 0x9EFD, 0xC6A3, 0x9EFE, 0xC6A6,
- 0x9F41, 0xC6A8, 0x9F42, 0xC6AA, 0x9F43, 0xC6AB, 0x9F44, 0xC6AC,
- 0x9F45, 0xC6AD, 0x9F46, 0xC6AE, 0x9F47, 0xC6AF, 0x9F48, 0xC6B2,
- 0x9F49, 0xC6B3, 0x9F4A, 0xC6B5, 0x9F4B, 0xC6B6, 0x9F4C, 0xC6B7,
- 0x9F4D, 0xC6BB, 0x9F4E, 0xC6BC, 0x9F4F, 0xC6BD, 0x9F50, 0xC6BE,
- 0x9F51, 0xC6BF, 0x9F52, 0xC6C2, 0x9F53, 0xC6C4, 0x9F54, 0xC6C6,
- 0x9F55, 0xC6C7, 0x9F56, 0xC6C8, 0x9F57, 0xC6C9, 0x9F58, 0xC6CA,
- 0x9F59, 0xC6CB, 0x9F5A, 0xC6CE, 0x9F61, 0xC6CF, 0x9F62, 0xC6D1,
- 0x9F63, 0xC6D2, 0x9F64, 0xC6D3, 0x9F65, 0xC6D5, 0x9F66, 0xC6D6,
- 0x9F67, 0xC6D7, 0x9F68, 0xC6D8, 0x9F69, 0xC6D9, 0x9F6A, 0xC6DA,
- 0x9F6B, 0xC6DB, 0x9F6C, 0xC6DE, 0x9F6D, 0xC6DF, 0x9F6E, 0xC6E2,
- 0x9F6F, 0xC6E3, 0x9F70, 0xC6E4, 0x9F71, 0xC6E5, 0x9F72, 0xC6E6,
- 0x9F73, 0xC6E7, 0x9F74, 0xC6EA, 0x9F75, 0xC6EB, 0x9F76, 0xC6ED,
- 0x9F77, 0xC6EE, 0x9F78, 0xC6EF, 0x9F79, 0xC6F1, 0x9F7A, 0xC6F2,
- 0x9F81, 0xC6F3, 0x9F82, 0xC6F4, 0x9F83, 0xC6F5, 0x9F84, 0xC6F6,
- 0x9F85, 0xC6F7, 0x9F86, 0xC6FA, 0x9F87, 0xC6FB, 0x9F88, 0xC6FC,
- 0x9F89, 0xC6FE, 0x9F8A, 0xC6FF, 0x9F8B, 0xC700, 0x9F8C, 0xC701,
- 0x9F8D, 0xC702, 0x9F8E, 0xC703, 0x9F8F, 0xC706, 0x9F90, 0xC707,
- 0x9F91, 0xC709, 0x9F92, 0xC70A, 0x9F93, 0xC70B, 0x9F94, 0xC70D,
- 0x9F95, 0xC70E, 0x9F96, 0xC70F, 0x9F97, 0xC710, 0x9F98, 0xC711,
- 0x9F99, 0xC712, 0x9F9A, 0xC713, 0x9F9B, 0xC716, 0x9F9C, 0xC718,
- 0x9F9D, 0xC71A, 0x9F9E, 0xC71B, 0x9F9F, 0xC71C, 0x9FA0, 0xC71D,
- 0x9FA1, 0xC71E, 0x9FA2, 0xC71F, 0x9FA3, 0xC722, 0x9FA4, 0xC723,
- 0x9FA5, 0xC725, 0x9FA6, 0xC726, 0x9FA7, 0xC727, 0x9FA8, 0xC729,
- 0x9FA9, 0xC72A, 0x9FAA, 0xC72B, 0x9FAB, 0xC72C, 0x9FAC, 0xC72D,
- 0x9FAD, 0xC72E, 0x9FAE, 0xC72F, 0x9FAF, 0xC732, 0x9FB0, 0xC734,
- 0x9FB1, 0xC736, 0x9FB2, 0xC738, 0x9FB3, 0xC739, 0x9FB4, 0xC73A,
- 0x9FB5, 0xC73B, 0x9FB6, 0xC73E, 0x9FB7, 0xC73F, 0x9FB8, 0xC741,
- 0x9FB9, 0xC742, 0x9FBA, 0xC743, 0x9FBB, 0xC745, 0x9FBC, 0xC746,
- 0x9FBD, 0xC747, 0x9FBE, 0xC748, 0x9FBF, 0xC749, 0x9FC0, 0xC74B,
- 0x9FC1, 0xC74E, 0x9FC2, 0xC750, 0x9FC3, 0xC759, 0x9FC4, 0xC75A,
- 0x9FC5, 0xC75B, 0x9FC6, 0xC75D, 0x9FC7, 0xC75E, 0x9FC8, 0xC75F,
- 0x9FC9, 0xC761, 0x9FCA, 0xC762, 0x9FCB, 0xC763, 0x9FCC, 0xC764,
- 0x9FCD, 0xC765, 0x9FCE, 0xC766, 0x9FCF, 0xC767, 0x9FD0, 0xC769,
- 0x9FD1, 0xC76A, 0x9FD2, 0xC76C, 0x9FD3, 0xC76D, 0x9FD4, 0xC76E,
- 0x9FD5, 0xC76F, 0x9FD6, 0xC770, 0x9FD7, 0xC771, 0x9FD8, 0xC772,
- 0x9FD9, 0xC773, 0x9FDA, 0xC776, 0x9FDB, 0xC777, 0x9FDC, 0xC779,
- 0x9FDD, 0xC77A, 0x9FDE, 0xC77B, 0x9FDF, 0xC77F, 0x9FE0, 0xC780,
- 0x9FE1, 0xC781, 0x9FE2, 0xC782, 0x9FE3, 0xC786, 0x9FE4, 0xC78B,
- 0x9FE5, 0xC78C, 0x9FE6, 0xC78D, 0x9FE7, 0xC78F, 0x9FE8, 0xC792,
- 0x9FE9, 0xC793, 0x9FEA, 0xC795, 0x9FEB, 0xC799, 0x9FEC, 0xC79B,
- 0x9FED, 0xC79C, 0x9FEE, 0xC79D, 0x9FEF, 0xC79E, 0x9FF0, 0xC79F,
- 0x9FF1, 0xC7A2, 0x9FF2, 0xC7A7, 0x9FF3, 0xC7A8, 0x9FF4, 0xC7A9,
- 0x9FF5, 0xC7AA, 0x9FF6, 0xC7AB, 0x9FF7, 0xC7AE, 0x9FF8, 0xC7AF,
- 0x9FF9, 0xC7B1, 0x9FFA, 0xC7B2, 0x9FFB, 0xC7B3, 0x9FFC, 0xC7B5,
- 0x9FFD, 0xC7B6, 0x9FFE, 0xC7B7, 0xA041, 0xC7B8, 0xA042, 0xC7B9,
- 0xA043, 0xC7BA, 0xA044, 0xC7BB, 0xA045, 0xC7BE, 0xA046, 0xC7C2,
- 0xA047, 0xC7C3, 0xA048, 0xC7C4, 0xA049, 0xC7C5, 0xA04A, 0xC7C6,
- 0xA04B, 0xC7C7, 0xA04C, 0xC7CA, 0xA04D, 0xC7CB, 0xA04E, 0xC7CD,
- 0xA04F, 0xC7CF, 0xA050, 0xC7D1, 0xA051, 0xC7D2, 0xA052, 0xC7D3,
- 0xA053, 0xC7D4, 0xA054, 0xC7D5, 0xA055, 0xC7D6, 0xA056, 0xC7D7,
- 0xA057, 0xC7D9, 0xA058, 0xC7DA, 0xA059, 0xC7DB, 0xA05A, 0xC7DC,
- 0xA061, 0xC7DE, 0xA062, 0xC7DF, 0xA063, 0xC7E0, 0xA064, 0xC7E1,
- 0xA065, 0xC7E2, 0xA066, 0xC7E3, 0xA067, 0xC7E5, 0xA068, 0xC7E6,
- 0xA069, 0xC7E7, 0xA06A, 0xC7E9, 0xA06B, 0xC7EA, 0xA06C, 0xC7EB,
- 0xA06D, 0xC7ED, 0xA06E, 0xC7EE, 0xA06F, 0xC7EF, 0xA070, 0xC7F0,
- 0xA071, 0xC7F1, 0xA072, 0xC7F2, 0xA073, 0xC7F3, 0xA074, 0xC7F4,
- 0xA075, 0xC7F5, 0xA076, 0xC7F6, 0xA077, 0xC7F7, 0xA078, 0xC7F8,
- 0xA079, 0xC7F9, 0xA07A, 0xC7FA, 0xA081, 0xC7FB, 0xA082, 0xC7FC,
- 0xA083, 0xC7FD, 0xA084, 0xC7FE, 0xA085, 0xC7FF, 0xA086, 0xC802,
- 0xA087, 0xC803, 0xA088, 0xC805, 0xA089, 0xC806, 0xA08A, 0xC807,
- 0xA08B, 0xC809, 0xA08C, 0xC80B, 0xA08D, 0xC80C, 0xA08E, 0xC80D,
- 0xA08F, 0xC80E, 0xA090, 0xC80F, 0xA091, 0xC812, 0xA092, 0xC814,
- 0xA093, 0xC817, 0xA094, 0xC818, 0xA095, 0xC819, 0xA096, 0xC81A,
- 0xA097, 0xC81B, 0xA098, 0xC81E, 0xA099, 0xC81F, 0xA09A, 0xC821,
- 0xA09B, 0xC822, 0xA09C, 0xC823, 0xA09D, 0xC825, 0xA09E, 0xC826,
- 0xA09F, 0xC827, 0xA0A0, 0xC828, 0xA0A1, 0xC829, 0xA0A2, 0xC82A,
- 0xA0A3, 0xC82B, 0xA0A4, 0xC82E, 0xA0A5, 0xC830, 0xA0A6, 0xC832,
- 0xA0A7, 0xC833, 0xA0A8, 0xC834, 0xA0A9, 0xC835, 0xA0AA, 0xC836,
- 0xA0AB, 0xC837, 0xA0AC, 0xC839, 0xA0AD, 0xC83A, 0xA0AE, 0xC83B,
- 0xA0AF, 0xC83D, 0xA0B0, 0xC83E, 0xA0B1, 0xC83F, 0xA0B2, 0xC841,
- 0xA0B3, 0xC842, 0xA0B4, 0xC843, 0xA0B5, 0xC844, 0xA0B6, 0xC845,
- 0xA0B7, 0xC846, 0xA0B8, 0xC847, 0xA0B9, 0xC84A, 0xA0BA, 0xC84B,
- 0xA0BB, 0xC84E, 0xA0BC, 0xC84F, 0xA0BD, 0xC850, 0xA0BE, 0xC851,
- 0xA0BF, 0xC852, 0xA0C0, 0xC853, 0xA0C1, 0xC855, 0xA0C2, 0xC856,
- 0xA0C3, 0xC857, 0xA0C4, 0xC858, 0xA0C5, 0xC859, 0xA0C6, 0xC85A,
- 0xA0C7, 0xC85B, 0xA0C8, 0xC85C, 0xA0C9, 0xC85D, 0xA0CA, 0xC85E,
- 0xA0CB, 0xC85F, 0xA0CC, 0xC860, 0xA0CD, 0xC861, 0xA0CE, 0xC862,
- 0xA0CF, 0xC863, 0xA0D0, 0xC864, 0xA0D1, 0xC865, 0xA0D2, 0xC866,
- 0xA0D3, 0xC867, 0xA0D4, 0xC868, 0xA0D5, 0xC869, 0xA0D6, 0xC86A,
- 0xA0D7, 0xC86B, 0xA0D8, 0xC86C, 0xA0D9, 0xC86D, 0xA0DA, 0xC86E,
- 0xA0DB, 0xC86F, 0xA0DC, 0xC872, 0xA0DD, 0xC873, 0xA0DE, 0xC875,
- 0xA0DF, 0xC876, 0xA0E0, 0xC877, 0xA0E1, 0xC879, 0xA0E2, 0xC87B,
- 0xA0E3, 0xC87C, 0xA0E4, 0xC87D, 0xA0E5, 0xC87E, 0xA0E6, 0xC87F,
- 0xA0E7, 0xC882, 0xA0E8, 0xC884, 0xA0E9, 0xC888, 0xA0EA, 0xC889,
- 0xA0EB, 0xC88A, 0xA0EC, 0xC88E, 0xA0ED, 0xC88F, 0xA0EE, 0xC890,
- 0xA0EF, 0xC891, 0xA0F0, 0xC892, 0xA0F1, 0xC893, 0xA0F2, 0xC895,
- 0xA0F3, 0xC896, 0xA0F4, 0xC897, 0xA0F5, 0xC898, 0xA0F6, 0xC899,
- 0xA0F7, 0xC89A, 0xA0F8, 0xC89B, 0xA0F9, 0xC89C, 0xA0FA, 0xC89E,
- 0xA0FB, 0xC8A0, 0xA0FC, 0xC8A2, 0xA0FD, 0xC8A3, 0xA0FE, 0xC8A4,
- 0xA141, 0xC8A5, 0xA142, 0xC8A6, 0xA143, 0xC8A7, 0xA144, 0xC8A9,
- 0xA145, 0xC8AA, 0xA146, 0xC8AB, 0xA147, 0xC8AC, 0xA148, 0xC8AD,
- 0xA149, 0xC8AE, 0xA14A, 0xC8AF, 0xA14B, 0xC8B0, 0xA14C, 0xC8B1,
- 0xA14D, 0xC8B2, 0xA14E, 0xC8B3, 0xA14F, 0xC8B4, 0xA150, 0xC8B5,
- 0xA151, 0xC8B6, 0xA152, 0xC8B7, 0xA153, 0xC8B8, 0xA154, 0xC8B9,
- 0xA155, 0xC8BA, 0xA156, 0xC8BB, 0xA157, 0xC8BE, 0xA158, 0xC8BF,
- 0xA159, 0xC8C0, 0xA15A, 0xC8C1, 0xA161, 0xC8C2, 0xA162, 0xC8C3,
- 0xA163, 0xC8C5, 0xA164, 0xC8C6, 0xA165, 0xC8C7, 0xA166, 0xC8C9,
- 0xA167, 0xC8CA, 0xA168, 0xC8CB, 0xA169, 0xC8CD, 0xA16A, 0xC8CE,
- 0xA16B, 0xC8CF, 0xA16C, 0xC8D0, 0xA16D, 0xC8D1, 0xA16E, 0xC8D2,
- 0xA16F, 0xC8D3, 0xA170, 0xC8D6, 0xA171, 0xC8D8, 0xA172, 0xC8DA,
- 0xA173, 0xC8DB, 0xA174, 0xC8DC, 0xA175, 0xC8DD, 0xA176, 0xC8DE,
- 0xA177, 0xC8DF, 0xA178, 0xC8E2, 0xA179, 0xC8E3, 0xA17A, 0xC8E5,
- 0xA181, 0xC8E6, 0xA182, 0xC8E7, 0xA183, 0xC8E8, 0xA184, 0xC8E9,
- 0xA185, 0xC8EA, 0xA186, 0xC8EB, 0xA187, 0xC8EC, 0xA188, 0xC8ED,
- 0xA189, 0xC8EE, 0xA18A, 0xC8EF, 0xA18B, 0xC8F0, 0xA18C, 0xC8F1,
- 0xA18D, 0xC8F2, 0xA18E, 0xC8F3, 0xA18F, 0xC8F4, 0xA190, 0xC8F6,
- 0xA191, 0xC8F7, 0xA192, 0xC8F8, 0xA193, 0xC8F9, 0xA194, 0xC8FA,
- 0xA195, 0xC8FB, 0xA196, 0xC8FE, 0xA197, 0xC8FF, 0xA198, 0xC901,
- 0xA199, 0xC902, 0xA19A, 0xC903, 0xA19B, 0xC907, 0xA19C, 0xC908,
- 0xA19D, 0xC909, 0xA19E, 0xC90A, 0xA19F, 0xC90B, 0xA1A0, 0xC90E,
- 0xA1A1, 0x3000, 0xA1A2, 0x3001, 0xA1A3, 0x3002, 0xA1A4, 0x00B7,
- 0xA1A5, 0x2025, 0xA1A6, 0x2026, 0xA1A7, 0x00A8, 0xA1A8, 0x3003,
- 0xA1A9, 0x00AD, 0xA1AA, 0x2015, 0xA1AB, 0x2225, 0xA1AC, 0xFF3C,
- 0xA1AD, 0x223C, 0xA1AE, 0x2018, 0xA1AF, 0x2019, 0xA1B0, 0x201C,
- 0xA1B1, 0x201D, 0xA1B2, 0x3014, 0xA1B3, 0x3015, 0xA1B4, 0x3008,
- 0xA1B5, 0x3009, 0xA1B6, 0x300A, 0xA1B7, 0x300B, 0xA1B8, 0x300C,
- 0xA1B9, 0x300D, 0xA1BA, 0x300E, 0xA1BB, 0x300F, 0xA1BC, 0x3010,
- 0xA1BD, 0x3011, 0xA1BE, 0x00B1, 0xA1BF, 0x00D7, 0xA1C0, 0x00F7,
- 0xA1C1, 0x2260, 0xA1C2, 0x2264, 0xA1C3, 0x2265, 0xA1C4, 0x221E,
- 0xA1C5, 0x2234, 0xA1C6, 0x00B0, 0xA1C7, 0x2032, 0xA1C8, 0x2033,
- 0xA1C9, 0x2103, 0xA1CA, 0x212B, 0xA1CB, 0xFFE0, 0xA1CC, 0xFFE1,
- 0xA1CD, 0xFFE5, 0xA1CE, 0x2642, 0xA1CF, 0x2640, 0xA1D0, 0x2220,
- 0xA1D1, 0x22A5, 0xA1D2, 0x2312, 0xA1D3, 0x2202, 0xA1D4, 0x2207,
- 0xA1D5, 0x2261, 0xA1D6, 0x2252, 0xA1D7, 0x00A7, 0xA1D8, 0x203B,
- 0xA1D9, 0x2606, 0xA1DA, 0x2605, 0xA1DB, 0x25CB, 0xA1DC, 0x25CF,
- 0xA1DD, 0x25CE, 0xA1DE, 0x25C7, 0xA1DF, 0x25C6, 0xA1E0, 0x25A1,
- 0xA1E1, 0x25A0, 0xA1E2, 0x25B3, 0xA1E3, 0x25B2, 0xA1E4, 0x25BD,
- 0xA1E5, 0x25BC, 0xA1E6, 0x2192, 0xA1E7, 0x2190, 0xA1E8, 0x2191,
- 0xA1E9, 0x2193, 0xA1EA, 0x2194, 0xA1EB, 0x3013, 0xA1EC, 0x226A,
- 0xA1ED, 0x226B, 0xA1EE, 0x221A, 0xA1EF, 0x223D, 0xA1F0, 0x221D,
- 0xA1F1, 0x2235, 0xA1F2, 0x222B, 0xA1F3, 0x222C, 0xA1F4, 0x2208,
- 0xA1F5, 0x220B, 0xA1F6, 0x2286, 0xA1F7, 0x2287, 0xA1F8, 0x2282,
- 0xA1F9, 0x2283, 0xA1FA, 0x222A, 0xA1FB, 0x2229, 0xA1FC, 0x2227,
- 0xA1FD, 0x2228, 0xA1FE, 0xFFE2, 0xA241, 0xC910, 0xA242, 0xC912,
- 0xA243, 0xC913, 0xA244, 0xC914, 0xA245, 0xC915, 0xA246, 0xC916,
- 0xA247, 0xC917, 0xA248, 0xC919, 0xA249, 0xC91A, 0xA24A, 0xC91B,
- 0xA24B, 0xC91C, 0xA24C, 0xC91D, 0xA24D, 0xC91E, 0xA24E, 0xC91F,
- 0xA24F, 0xC920, 0xA250, 0xC921, 0xA251, 0xC922, 0xA252, 0xC923,
- 0xA253, 0xC924, 0xA254, 0xC925, 0xA255, 0xC926, 0xA256, 0xC927,
- 0xA257, 0xC928, 0xA258, 0xC929, 0xA259, 0xC92A, 0xA25A, 0xC92B,
- 0xA261, 0xC92D, 0xA262, 0xC92E, 0xA263, 0xC92F, 0xA264, 0xC930,
- 0xA265, 0xC931, 0xA266, 0xC932, 0xA267, 0xC933, 0xA268, 0xC935,
- 0xA269, 0xC936, 0xA26A, 0xC937, 0xA26B, 0xC938, 0xA26C, 0xC939,
- 0xA26D, 0xC93A, 0xA26E, 0xC93B, 0xA26F, 0xC93C, 0xA270, 0xC93D,
- 0xA271, 0xC93E, 0xA272, 0xC93F, 0xA273, 0xC940, 0xA274, 0xC941,
- 0xA275, 0xC942, 0xA276, 0xC943, 0xA277, 0xC944, 0xA278, 0xC945,
- 0xA279, 0xC946, 0xA27A, 0xC947, 0xA281, 0xC948, 0xA282, 0xC949,
- 0xA283, 0xC94A, 0xA284, 0xC94B, 0xA285, 0xC94C, 0xA286, 0xC94D,
- 0xA287, 0xC94E, 0xA288, 0xC94F, 0xA289, 0xC952, 0xA28A, 0xC953,
- 0xA28B, 0xC955, 0xA28C, 0xC956, 0xA28D, 0xC957, 0xA28E, 0xC959,
- 0xA28F, 0xC95A, 0xA290, 0xC95B, 0xA291, 0xC95C, 0xA292, 0xC95D,
- 0xA293, 0xC95E, 0xA294, 0xC95F, 0xA295, 0xC962, 0xA296, 0xC964,
- 0xA297, 0xC965, 0xA298, 0xC966, 0xA299, 0xC967, 0xA29A, 0xC968,
- 0xA29B, 0xC969, 0xA29C, 0xC96A, 0xA29D, 0xC96B, 0xA29E, 0xC96D,
- 0xA29F, 0xC96E, 0xA2A0, 0xC96F, 0xA2A1, 0x21D2, 0xA2A2, 0x21D4,
- 0xA2A3, 0x2200, 0xA2A4, 0x2203, 0xA2A5, 0x00B4, 0xA2A6, 0xFF5E,
- 0xA2A7, 0x02C7, 0xA2A8, 0x02D8, 0xA2A9, 0x02DD, 0xA2AA, 0x02DA,
- 0xA2AB, 0x02D9, 0xA2AC, 0x00B8, 0xA2AD, 0x02DB, 0xA2AE, 0x00A1,
- 0xA2AF, 0x00BF, 0xA2B0, 0x02D0, 0xA2B1, 0x222E, 0xA2B2, 0x2211,
- 0xA2B3, 0x220F, 0xA2B4, 0x00A4, 0xA2B5, 0x2109, 0xA2B6, 0x2030,
- 0xA2B7, 0x25C1, 0xA2B8, 0x25C0, 0xA2B9, 0x25B7, 0xA2BA, 0x25B6,
- 0xA2BB, 0x2664, 0xA2BC, 0x2660, 0xA2BD, 0x2661, 0xA2BE, 0x2665,
- 0xA2BF, 0x2667, 0xA2C0, 0x2663, 0xA2C1, 0x2299, 0xA2C2, 0x25C8,
- 0xA2C3, 0x25A3, 0xA2C4, 0x25D0, 0xA2C5, 0x25D1, 0xA2C6, 0x2592,
- 0xA2C7, 0x25A4, 0xA2C8, 0x25A5, 0xA2C9, 0x25A8, 0xA2CA, 0x25A7,
- 0xA2CB, 0x25A6, 0xA2CC, 0x25A9, 0xA2CD, 0x2668, 0xA2CE, 0x260F,
- 0xA2CF, 0x260E, 0xA2D0, 0x261C, 0xA2D1, 0x261E, 0xA2D2, 0x00B6,
- 0xA2D3, 0x2020, 0xA2D4, 0x2021, 0xA2D5, 0x2195, 0xA2D6, 0x2197,
- 0xA2D7, 0x2199, 0xA2D8, 0x2196, 0xA2D9, 0x2198, 0xA2DA, 0x266D,
- 0xA2DB, 0x2669, 0xA2DC, 0x266A, 0xA2DD, 0x266C, 0xA2DE, 0x327F,
- 0xA2DF, 0x321C, 0xA2E0, 0x2116, 0xA2E1, 0x33C7, 0xA2E2, 0x2122,
- 0xA2E3, 0x33C2, 0xA2E4, 0x33D8, 0xA2E5, 0x2121, 0xA2E6, 0x20AC,
- 0xA2E7, 0x00AE, 0xA341, 0xC971, 0xA342, 0xC972, 0xA343, 0xC973,
- 0xA344, 0xC975, 0xA345, 0xC976, 0xA346, 0xC977, 0xA347, 0xC978,
- 0xA348, 0xC979, 0xA349, 0xC97A, 0xA34A, 0xC97B, 0xA34B, 0xC97D,
- 0xA34C, 0xC97E, 0xA34D, 0xC97F, 0xA34E, 0xC980, 0xA34F, 0xC981,
- 0xA350, 0xC982, 0xA351, 0xC983, 0xA352, 0xC984, 0xA353, 0xC985,
- 0xA354, 0xC986, 0xA355, 0xC987, 0xA356, 0xC98A, 0xA357, 0xC98B,
- 0xA358, 0xC98D, 0xA359, 0xC98E, 0xA35A, 0xC98F, 0xA361, 0xC991,
- 0xA362, 0xC992, 0xA363, 0xC993, 0xA364, 0xC994, 0xA365, 0xC995,
- 0xA366, 0xC996, 0xA367, 0xC997, 0xA368, 0xC99A, 0xA369, 0xC99C,
- 0xA36A, 0xC99E, 0xA36B, 0xC99F, 0xA36C, 0xC9A0, 0xA36D, 0xC9A1,
- 0xA36E, 0xC9A2, 0xA36F, 0xC9A3, 0xA370, 0xC9A4, 0xA371, 0xC9A5,
- 0xA372, 0xC9A6, 0xA373, 0xC9A7, 0xA374, 0xC9A8, 0xA375, 0xC9A9,
- 0xA376, 0xC9AA, 0xA377, 0xC9AB, 0xA378, 0xC9AC, 0xA379, 0xC9AD,
- 0xA37A, 0xC9AE, 0xA381, 0xC9AF, 0xA382, 0xC9B0, 0xA383, 0xC9B1,
- 0xA384, 0xC9B2, 0xA385, 0xC9B3, 0xA386, 0xC9B4, 0xA387, 0xC9B5,
- 0xA388, 0xC9B6, 0xA389, 0xC9B7, 0xA38A, 0xC9B8, 0xA38B, 0xC9B9,
- 0xA38C, 0xC9BA, 0xA38D, 0xC9BB, 0xA38E, 0xC9BC, 0xA38F, 0xC9BD,
- 0xA390, 0xC9BE, 0xA391, 0xC9BF, 0xA392, 0xC9C2, 0xA393, 0xC9C3,
- 0xA394, 0xC9C5, 0xA395, 0xC9C6, 0xA396, 0xC9C9, 0xA397, 0xC9CB,
- 0xA398, 0xC9CC, 0xA399, 0xC9CD, 0xA39A, 0xC9CE, 0xA39B, 0xC9CF,
- 0xA39C, 0xC9D2, 0xA39D, 0xC9D4, 0xA39E, 0xC9D7, 0xA39F, 0xC9D8,
- 0xA3A0, 0xC9DB, 0xA3A1, 0xFF01, 0xA3A2, 0xFF02, 0xA3A3, 0xFF03,
- 0xA3A4, 0xFF04, 0xA3A5, 0xFF05, 0xA3A6, 0xFF06, 0xA3A7, 0xFF07,
- 0xA3A8, 0xFF08, 0xA3A9, 0xFF09, 0xA3AA, 0xFF0A, 0xA3AB, 0xFF0B,
- 0xA3AC, 0xFF0C, 0xA3AD, 0xFF0D, 0xA3AE, 0xFF0E, 0xA3AF, 0xFF0F,
- 0xA3B0, 0xFF10, 0xA3B1, 0xFF11, 0xA3B2, 0xFF12, 0xA3B3, 0xFF13,
- 0xA3B4, 0xFF14, 0xA3B5, 0xFF15, 0xA3B6, 0xFF16, 0xA3B7, 0xFF17,
- 0xA3B8, 0xFF18, 0xA3B9, 0xFF19, 0xA3BA, 0xFF1A, 0xA3BB, 0xFF1B,
- 0xA3BC, 0xFF1C, 0xA3BD, 0xFF1D, 0xA3BE, 0xFF1E, 0xA3BF, 0xFF1F,
- 0xA3C0, 0xFF20, 0xA3C1, 0xFF21, 0xA3C2, 0xFF22, 0xA3C3, 0xFF23,
- 0xA3C4, 0xFF24, 0xA3C5, 0xFF25, 0xA3C6, 0xFF26, 0xA3C7, 0xFF27,
- 0xA3C8, 0xFF28, 0xA3C9, 0xFF29, 0xA3CA, 0xFF2A, 0xA3CB, 0xFF2B,
- 0xA3CC, 0xFF2C, 0xA3CD, 0xFF2D, 0xA3CE, 0xFF2E, 0xA3CF, 0xFF2F,
- 0xA3D0, 0xFF30, 0xA3D1, 0xFF31, 0xA3D2, 0xFF32, 0xA3D3, 0xFF33,
- 0xA3D4, 0xFF34, 0xA3D5, 0xFF35, 0xA3D6, 0xFF36, 0xA3D7, 0xFF37,
- 0xA3D8, 0xFF38, 0xA3D9, 0xFF39, 0xA3DA, 0xFF3A, 0xA3DB, 0xFF3B,
- 0xA3DC, 0xFFE6, 0xA3DD, 0xFF3D, 0xA3DE, 0xFF3E, 0xA3DF, 0xFF3F,
- 0xA3E0, 0xFF40, 0xA3E1, 0xFF41, 0xA3E2, 0xFF42, 0xA3E3, 0xFF43,
- 0xA3E4, 0xFF44, 0xA3E5, 0xFF45, 0xA3E6, 0xFF46, 0xA3E7, 0xFF47,
- 0xA3E8, 0xFF48, 0xA3E9, 0xFF49, 0xA3EA, 0xFF4A, 0xA3EB, 0xFF4B,
- 0xA3EC, 0xFF4C, 0xA3ED, 0xFF4D, 0xA3EE, 0xFF4E, 0xA3EF, 0xFF4F,
- 0xA3F0, 0xFF50, 0xA3F1, 0xFF51, 0xA3F2, 0xFF52, 0xA3F3, 0xFF53,
- 0xA3F4, 0xFF54, 0xA3F5, 0xFF55, 0xA3F6, 0xFF56, 0xA3F7, 0xFF57,
- 0xA3F8, 0xFF58, 0xA3F9, 0xFF59, 0xA3FA, 0xFF5A, 0xA3FB, 0xFF5B,
- 0xA3FC, 0xFF5C, 0xA3FD, 0xFF5D, 0xA3FE, 0xFFE3, 0xA441, 0xC9DE,
- 0xA442, 0xC9DF, 0xA443, 0xC9E1, 0xA444, 0xC9E3, 0xA445, 0xC9E5,
- 0xA446, 0xC9E6, 0xA447, 0xC9E8, 0xA448, 0xC9E9, 0xA449, 0xC9EA,
- 0xA44A, 0xC9EB, 0xA44B, 0xC9EE, 0xA44C, 0xC9F2, 0xA44D, 0xC9F3,
- 0xA44E, 0xC9F4, 0xA44F, 0xC9F5, 0xA450, 0xC9F6, 0xA451, 0xC9F7,
- 0xA452, 0xC9FA, 0xA453, 0xC9FB, 0xA454, 0xC9FD, 0xA455, 0xC9FE,
- 0xA456, 0xC9FF, 0xA457, 0xCA01, 0xA458, 0xCA02, 0xA459, 0xCA03,
- 0xA45A, 0xCA04, 0xA461, 0xCA05, 0xA462, 0xCA06, 0xA463, 0xCA07,
- 0xA464, 0xCA0A, 0xA465, 0xCA0E, 0xA466, 0xCA0F, 0xA467, 0xCA10,
- 0xA468, 0xCA11, 0xA469, 0xCA12, 0xA46A, 0xCA13, 0xA46B, 0xCA15,
- 0xA46C, 0xCA16, 0xA46D, 0xCA17, 0xA46E, 0xCA19, 0xA46F, 0xCA1A,
- 0xA470, 0xCA1B, 0xA471, 0xCA1C, 0xA472, 0xCA1D, 0xA473, 0xCA1E,
- 0xA474, 0xCA1F, 0xA475, 0xCA20, 0xA476, 0xCA21, 0xA477, 0xCA22,
- 0xA478, 0xCA23, 0xA479, 0xCA24, 0xA47A, 0xCA25, 0xA481, 0xCA26,
- 0xA482, 0xCA27, 0xA483, 0xCA28, 0xA484, 0xCA2A, 0xA485, 0xCA2B,
- 0xA486, 0xCA2C, 0xA487, 0xCA2D, 0xA488, 0xCA2E, 0xA489, 0xCA2F,
- 0xA48A, 0xCA30, 0xA48B, 0xCA31, 0xA48C, 0xCA32, 0xA48D, 0xCA33,
- 0xA48E, 0xCA34, 0xA48F, 0xCA35, 0xA490, 0xCA36, 0xA491, 0xCA37,
- 0xA492, 0xCA38, 0xA493, 0xCA39, 0xA494, 0xCA3A, 0xA495, 0xCA3B,
- 0xA496, 0xCA3C, 0xA497, 0xCA3D, 0xA498, 0xCA3E, 0xA499, 0xCA3F,
- 0xA49A, 0xCA40, 0xA49B, 0xCA41, 0xA49C, 0xCA42, 0xA49D, 0xCA43,
- 0xA49E, 0xCA44, 0xA49F, 0xCA45, 0xA4A0, 0xCA46, 0xA4A1, 0x3131,
- 0xA4A2, 0x3132, 0xA4A3, 0x3133, 0xA4A4, 0x3134, 0xA4A5, 0x3135,
- 0xA4A6, 0x3136, 0xA4A7, 0x3137, 0xA4A8, 0x3138, 0xA4A9, 0x3139,
- 0xA4AA, 0x313A, 0xA4AB, 0x313B, 0xA4AC, 0x313C, 0xA4AD, 0x313D,
- 0xA4AE, 0x313E, 0xA4AF, 0x313F, 0xA4B0, 0x3140, 0xA4B1, 0x3141,
- 0xA4B2, 0x3142, 0xA4B3, 0x3143, 0xA4B4, 0x3144, 0xA4B5, 0x3145,
- 0xA4B6, 0x3146, 0xA4B7, 0x3147, 0xA4B8, 0x3148, 0xA4B9, 0x3149,
- 0xA4BA, 0x314A, 0xA4BB, 0x314B, 0xA4BC, 0x314C, 0xA4BD, 0x314D,
- 0xA4BE, 0x314E, 0xA4BF, 0x314F, 0xA4C0, 0x3150, 0xA4C1, 0x3151,
- 0xA4C2, 0x3152, 0xA4C3, 0x3153, 0xA4C4, 0x3154, 0xA4C5, 0x3155,
- 0xA4C6, 0x3156, 0xA4C7, 0x3157, 0xA4C8, 0x3158, 0xA4C9, 0x3159,
- 0xA4CA, 0x315A, 0xA4CB, 0x315B, 0xA4CC, 0x315C, 0xA4CD, 0x315D,
- 0xA4CE, 0x315E, 0xA4CF, 0x315F, 0xA4D0, 0x3160, 0xA4D1, 0x3161,
- 0xA4D2, 0x3162, 0xA4D3, 0x3163, 0xA4D4, 0x3164, 0xA4D5, 0x3165,
- 0xA4D6, 0x3166, 0xA4D7, 0x3167, 0xA4D8, 0x3168, 0xA4D9, 0x3169,
- 0xA4DA, 0x316A, 0xA4DB, 0x316B, 0xA4DC, 0x316C, 0xA4DD, 0x316D,
- 0xA4DE, 0x316E, 0xA4DF, 0x316F, 0xA4E0, 0x3170, 0xA4E1, 0x3171,
- 0xA4E2, 0x3172, 0xA4E3, 0x3173, 0xA4E4, 0x3174, 0xA4E5, 0x3175,
- 0xA4E6, 0x3176, 0xA4E7, 0x3177, 0xA4E8, 0x3178, 0xA4E9, 0x3179,
- 0xA4EA, 0x317A, 0xA4EB, 0x317B, 0xA4EC, 0x317C, 0xA4ED, 0x317D,
- 0xA4EE, 0x317E, 0xA4EF, 0x317F, 0xA4F0, 0x3180, 0xA4F1, 0x3181,
- 0xA4F2, 0x3182, 0xA4F3, 0x3183, 0xA4F4, 0x3184, 0xA4F5, 0x3185,
- 0xA4F6, 0x3186, 0xA4F7, 0x3187, 0xA4F8, 0x3188, 0xA4F9, 0x3189,
- 0xA4FA, 0x318A, 0xA4FB, 0x318B, 0xA4FC, 0x318C, 0xA4FD, 0x318D,
- 0xA4FE, 0x318E, 0xA541, 0xCA47, 0xA542, 0xCA48, 0xA543, 0xCA49,
- 0xA544, 0xCA4A, 0xA545, 0xCA4B, 0xA546, 0xCA4E, 0xA547, 0xCA4F,
- 0xA548, 0xCA51, 0xA549, 0xCA52, 0xA54A, 0xCA53, 0xA54B, 0xCA55,
- 0xA54C, 0xCA56, 0xA54D, 0xCA57, 0xA54E, 0xCA58, 0xA54F, 0xCA59,
- 0xA550, 0xCA5A, 0xA551, 0xCA5B, 0xA552, 0xCA5E, 0xA553, 0xCA62,
- 0xA554, 0xCA63, 0xA555, 0xCA64, 0xA556, 0xCA65, 0xA557, 0xCA66,
- 0xA558, 0xCA67, 0xA559, 0xCA69, 0xA55A, 0xCA6A, 0xA561, 0xCA6B,
- 0xA562, 0xCA6C, 0xA563, 0xCA6D, 0xA564, 0xCA6E, 0xA565, 0xCA6F,
- 0xA566, 0xCA70, 0xA567, 0xCA71, 0xA568, 0xCA72, 0xA569, 0xCA73,
- 0xA56A, 0xCA74, 0xA56B, 0xCA75, 0xA56C, 0xCA76, 0xA56D, 0xCA77,
- 0xA56E, 0xCA78, 0xA56F, 0xCA79, 0xA570, 0xCA7A, 0xA571, 0xCA7B,
- 0xA572, 0xCA7C, 0xA573, 0xCA7E, 0xA574, 0xCA7F, 0xA575, 0xCA80,
- 0xA576, 0xCA81, 0xA577, 0xCA82, 0xA578, 0xCA83, 0xA579, 0xCA85,
- 0xA57A, 0xCA86, 0xA581, 0xCA87, 0xA582, 0xCA88, 0xA583, 0xCA89,
- 0xA584, 0xCA8A, 0xA585, 0xCA8B, 0xA586, 0xCA8C, 0xA587, 0xCA8D,
- 0xA588, 0xCA8E, 0xA589, 0xCA8F, 0xA58A, 0xCA90, 0xA58B, 0xCA91,
- 0xA58C, 0xCA92, 0xA58D, 0xCA93, 0xA58E, 0xCA94, 0xA58F, 0xCA95,
- 0xA590, 0xCA96, 0xA591, 0xCA97, 0xA592, 0xCA99, 0xA593, 0xCA9A,
- 0xA594, 0xCA9B, 0xA595, 0xCA9C, 0xA596, 0xCA9D, 0xA597, 0xCA9E,
- 0xA598, 0xCA9F, 0xA599, 0xCAA0, 0xA59A, 0xCAA1, 0xA59B, 0xCAA2,
- 0xA59C, 0xCAA3, 0xA59D, 0xCAA4, 0xA59E, 0xCAA5, 0xA59F, 0xCAA6,
- 0xA5A0, 0xCAA7, 0xA5A1, 0x2170, 0xA5A2, 0x2171, 0xA5A3, 0x2172,
- 0xA5A4, 0x2173, 0xA5A5, 0x2174, 0xA5A6, 0x2175, 0xA5A7, 0x2176,
- 0xA5A8, 0x2177, 0xA5A9, 0x2178, 0xA5AA, 0x2179, 0xA5B0, 0x2160,
- 0xA5B1, 0x2161, 0xA5B2, 0x2162, 0xA5B3, 0x2163, 0xA5B4, 0x2164,
- 0xA5B5, 0x2165, 0xA5B6, 0x2166, 0xA5B7, 0x2167, 0xA5B8, 0x2168,
- 0xA5B9, 0x2169, 0xA5C1, 0x0391, 0xA5C2, 0x0392, 0xA5C3, 0x0393,
- 0xA5C4, 0x0394, 0xA5C5, 0x0395, 0xA5C6, 0x0396, 0xA5C7, 0x0397,
- 0xA5C8, 0x0398, 0xA5C9, 0x0399, 0xA5CA, 0x039A, 0xA5CB, 0x039B,
- 0xA5CC, 0x039C, 0xA5CD, 0x039D, 0xA5CE, 0x039E, 0xA5CF, 0x039F,
- 0xA5D0, 0x03A0, 0xA5D1, 0x03A1, 0xA5D2, 0x03A3, 0xA5D3, 0x03A4,
- 0xA5D4, 0x03A5, 0xA5D5, 0x03A6, 0xA5D6, 0x03A7, 0xA5D7, 0x03A8,
- 0xA5D8, 0x03A9, 0xA5E1, 0x03B1, 0xA5E2, 0x03B2, 0xA5E3, 0x03B3,
- 0xA5E4, 0x03B4, 0xA5E5, 0x03B5, 0xA5E6, 0x03B6, 0xA5E7, 0x03B7,
- 0xA5E8, 0x03B8, 0xA5E9, 0x03B9, 0xA5EA, 0x03BA, 0xA5EB, 0x03BB,
- 0xA5EC, 0x03BC, 0xA5ED, 0x03BD, 0xA5EE, 0x03BE, 0xA5EF, 0x03BF,
- 0xA5F0, 0x03C0, 0xA5F1, 0x03C1, 0xA5F2, 0x03C3, 0xA5F3, 0x03C4,
- 0xA5F4, 0x03C5, 0xA5F5, 0x03C6, 0xA5F6, 0x03C7, 0xA5F7, 0x03C8,
- 0xA5F8, 0x03C9, 0xA641, 0xCAA8, 0xA642, 0xCAA9, 0xA643, 0xCAAA,
- 0xA644, 0xCAAB, 0xA645, 0xCAAC, 0xA646, 0xCAAD, 0xA647, 0xCAAE,
- 0xA648, 0xCAAF, 0xA649, 0xCAB0, 0xA64A, 0xCAB1, 0xA64B, 0xCAB2,
- 0xA64C, 0xCAB3, 0xA64D, 0xCAB4, 0xA64E, 0xCAB5, 0xA64F, 0xCAB6,
- 0xA650, 0xCAB7, 0xA651, 0xCAB8, 0xA652, 0xCAB9, 0xA653, 0xCABA,
- 0xA654, 0xCABB, 0xA655, 0xCABE, 0xA656, 0xCABF, 0xA657, 0xCAC1,
- 0xA658, 0xCAC2, 0xA659, 0xCAC3, 0xA65A, 0xCAC5, 0xA661, 0xCAC6,
- 0xA662, 0xCAC7, 0xA663, 0xCAC8, 0xA664, 0xCAC9, 0xA665, 0xCACA,
- 0xA666, 0xCACB, 0xA667, 0xCACE, 0xA668, 0xCAD0, 0xA669, 0xCAD2,
- 0xA66A, 0xCAD4, 0xA66B, 0xCAD5, 0xA66C, 0xCAD6, 0xA66D, 0xCAD7,
- 0xA66E, 0xCADA, 0xA66F, 0xCADB, 0xA670, 0xCADC, 0xA671, 0xCADD,
- 0xA672, 0xCADE, 0xA673, 0xCADF, 0xA674, 0xCAE1, 0xA675, 0xCAE2,
- 0xA676, 0xCAE3, 0xA677, 0xCAE4, 0xA678, 0xCAE5, 0xA679, 0xCAE6,
- 0xA67A, 0xCAE7, 0xA681, 0xCAE8, 0xA682, 0xCAE9, 0xA683, 0xCAEA,
- 0xA684, 0xCAEB, 0xA685, 0xCAED, 0xA686, 0xCAEE, 0xA687, 0xCAEF,
- 0xA688, 0xCAF0, 0xA689, 0xCAF1, 0xA68A, 0xCAF2, 0xA68B, 0xCAF3,
- 0xA68C, 0xCAF5, 0xA68D, 0xCAF6, 0xA68E, 0xCAF7, 0xA68F, 0xCAF8,
- 0xA690, 0xCAF9, 0xA691, 0xCAFA, 0xA692, 0xCAFB, 0xA693, 0xCAFC,
- 0xA694, 0xCAFD, 0xA695, 0xCAFE, 0xA696, 0xCAFF, 0xA697, 0xCB00,
- 0xA698, 0xCB01, 0xA699, 0xCB02, 0xA69A, 0xCB03, 0xA69B, 0xCB04,
- 0xA69C, 0xCB05, 0xA69D, 0xCB06, 0xA69E, 0xCB07, 0xA69F, 0xCB09,
- 0xA6A0, 0xCB0A, 0xA6A1, 0x2500, 0xA6A2, 0x2502, 0xA6A3, 0x250C,
- 0xA6A4, 0x2510, 0xA6A5, 0x2518, 0xA6A6, 0x2514, 0xA6A7, 0x251C,
- 0xA6A8, 0x252C, 0xA6A9, 0x2524, 0xA6AA, 0x2534, 0xA6AB, 0x253C,
- 0xA6AC, 0x2501, 0xA6AD, 0x2503, 0xA6AE, 0x250F, 0xA6AF, 0x2513,
- 0xA6B0, 0x251B, 0xA6B1, 0x2517, 0xA6B2, 0x2523, 0xA6B3, 0x2533,
- 0xA6B4, 0x252B, 0xA6B5, 0x253B, 0xA6B6, 0x254B, 0xA6B7, 0x2520,
- 0xA6B8, 0x252F, 0xA6B9, 0x2528, 0xA6BA, 0x2537, 0xA6BB, 0x253F,
- 0xA6BC, 0x251D, 0xA6BD, 0x2530, 0xA6BE, 0x2525, 0xA6BF, 0x2538,
- 0xA6C0, 0x2542, 0xA6C1, 0x2512, 0xA6C2, 0x2511, 0xA6C3, 0x251A,
- 0xA6C4, 0x2519, 0xA6C5, 0x2516, 0xA6C6, 0x2515, 0xA6C7, 0x250E,
- 0xA6C8, 0x250D, 0xA6C9, 0x251E, 0xA6CA, 0x251F, 0xA6CB, 0x2521,
- 0xA6CC, 0x2522, 0xA6CD, 0x2526, 0xA6CE, 0x2527, 0xA6CF, 0x2529,
- 0xA6D0, 0x252A, 0xA6D1, 0x252D, 0xA6D2, 0x252E, 0xA6D3, 0x2531,
- 0xA6D4, 0x2532, 0xA6D5, 0x2535, 0xA6D6, 0x2536, 0xA6D7, 0x2539,
- 0xA6D8, 0x253A, 0xA6D9, 0x253D, 0xA6DA, 0x253E, 0xA6DB, 0x2540,
- 0xA6DC, 0x2541, 0xA6DD, 0x2543, 0xA6DE, 0x2544, 0xA6DF, 0x2545,
- 0xA6E0, 0x2546, 0xA6E1, 0x2547, 0xA6E2, 0x2548, 0xA6E3, 0x2549,
- 0xA6E4, 0x254A, 0xA741, 0xCB0B, 0xA742, 0xCB0C, 0xA743, 0xCB0D,
- 0xA744, 0xCB0E, 0xA745, 0xCB0F, 0xA746, 0xCB11, 0xA747, 0xCB12,
- 0xA748, 0xCB13, 0xA749, 0xCB15, 0xA74A, 0xCB16, 0xA74B, 0xCB17,
- 0xA74C, 0xCB19, 0xA74D, 0xCB1A, 0xA74E, 0xCB1B, 0xA74F, 0xCB1C,
- 0xA750, 0xCB1D, 0xA751, 0xCB1E, 0xA752, 0xCB1F, 0xA753, 0xCB22,
- 0xA754, 0xCB23, 0xA755, 0xCB24, 0xA756, 0xCB25, 0xA757, 0xCB26,
- 0xA758, 0xCB27, 0xA759, 0xCB28, 0xA75A, 0xCB29, 0xA761, 0xCB2A,
- 0xA762, 0xCB2B, 0xA763, 0xCB2C, 0xA764, 0xCB2D, 0xA765, 0xCB2E,
- 0xA766, 0xCB2F, 0xA767, 0xCB30, 0xA768, 0xCB31, 0xA769, 0xCB32,
- 0xA76A, 0xCB33, 0xA76B, 0xCB34, 0xA76C, 0xCB35, 0xA76D, 0xCB36,
- 0xA76E, 0xCB37, 0xA76F, 0xCB38, 0xA770, 0xCB39, 0xA771, 0xCB3A,
- 0xA772, 0xCB3B, 0xA773, 0xCB3C, 0xA774, 0xCB3D, 0xA775, 0xCB3E,
- 0xA776, 0xCB3F, 0xA777, 0xCB40, 0xA778, 0xCB42, 0xA779, 0xCB43,
- 0xA77A, 0xCB44, 0xA781, 0xCB45, 0xA782, 0xCB46, 0xA783, 0xCB47,
- 0xA784, 0xCB4A, 0xA785, 0xCB4B, 0xA786, 0xCB4D, 0xA787, 0xCB4E,
- 0xA788, 0xCB4F, 0xA789, 0xCB51, 0xA78A, 0xCB52, 0xA78B, 0xCB53,
- 0xA78C, 0xCB54, 0xA78D, 0xCB55, 0xA78E, 0xCB56, 0xA78F, 0xCB57,
- 0xA790, 0xCB5A, 0xA791, 0xCB5B, 0xA792, 0xCB5C, 0xA793, 0xCB5E,
- 0xA794, 0xCB5F, 0xA795, 0xCB60, 0xA796, 0xCB61, 0xA797, 0xCB62,
- 0xA798, 0xCB63, 0xA799, 0xCB65, 0xA79A, 0xCB66, 0xA79B, 0xCB67,
- 0xA79C, 0xCB68, 0xA79D, 0xCB69, 0xA79E, 0xCB6A, 0xA79F, 0xCB6B,
- 0xA7A0, 0xCB6C, 0xA7A1, 0x3395, 0xA7A2, 0x3396, 0xA7A3, 0x3397,
- 0xA7A4, 0x2113, 0xA7A5, 0x3398, 0xA7A6, 0x33C4, 0xA7A7, 0x33A3,
- 0xA7A8, 0x33A4, 0xA7A9, 0x33A5, 0xA7AA, 0x33A6, 0xA7AB, 0x3399,
- 0xA7AC, 0x339A, 0xA7AD, 0x339B, 0xA7AE, 0x339C, 0xA7AF, 0x339D,
- 0xA7B0, 0x339E, 0xA7B1, 0x339F, 0xA7B2, 0x33A0, 0xA7B3, 0x33A1,
- 0xA7B4, 0x33A2, 0xA7B5, 0x33CA, 0xA7B6, 0x338D, 0xA7B7, 0x338E,
- 0xA7B8, 0x338F, 0xA7B9, 0x33CF, 0xA7BA, 0x3388, 0xA7BB, 0x3389,
- 0xA7BC, 0x33C8, 0xA7BD, 0x33A7, 0xA7BE, 0x33A8, 0xA7BF, 0x33B0,
- 0xA7C0, 0x33B1, 0xA7C1, 0x33B2, 0xA7C2, 0x33B3, 0xA7C3, 0x33B4,
- 0xA7C4, 0x33B5, 0xA7C5, 0x33B6, 0xA7C6, 0x33B7, 0xA7C7, 0x33B8,
- 0xA7C8, 0x33B9, 0xA7C9, 0x3380, 0xA7CA, 0x3381, 0xA7CB, 0x3382,
- 0xA7CC, 0x3383, 0xA7CD, 0x3384, 0xA7CE, 0x33BA, 0xA7CF, 0x33BB,
- 0xA7D0, 0x33BC, 0xA7D1, 0x33BD, 0xA7D2, 0x33BE, 0xA7D3, 0x33BF,
- 0xA7D4, 0x3390, 0xA7D5, 0x3391, 0xA7D6, 0x3392, 0xA7D7, 0x3393,
- 0xA7D8, 0x3394, 0xA7D9, 0x2126, 0xA7DA, 0x33C0, 0xA7DB, 0x33C1,
- 0xA7DC, 0x338A, 0xA7DD, 0x338B, 0xA7DE, 0x338C, 0xA7DF, 0x33D6,
- 0xA7E0, 0x33C5, 0xA7E1, 0x33AD, 0xA7E2, 0x33AE, 0xA7E3, 0x33AF,
- 0xA7E4, 0x33DB, 0xA7E5, 0x33A9, 0xA7E6, 0x33AA, 0xA7E7, 0x33AB,
- 0xA7E8, 0x33AC, 0xA7E9, 0x33DD, 0xA7EA, 0x33D0, 0xA7EB, 0x33D3,
- 0xA7EC, 0x33C3, 0xA7ED, 0x33C9, 0xA7EE, 0x33DC, 0xA7EF, 0x33C6,
- 0xA841, 0xCB6D, 0xA842, 0xCB6E, 0xA843, 0xCB6F, 0xA844, 0xCB70,
- 0xA845, 0xCB71, 0xA846, 0xCB72, 0xA847, 0xCB73, 0xA848, 0xCB74,
- 0xA849, 0xCB75, 0xA84A, 0xCB76, 0xA84B, 0xCB77, 0xA84C, 0xCB7A,
- 0xA84D, 0xCB7B, 0xA84E, 0xCB7C, 0xA84F, 0xCB7D, 0xA850, 0xCB7E,
- 0xA851, 0xCB7F, 0xA852, 0xCB80, 0xA853, 0xCB81, 0xA854, 0xCB82,
- 0xA855, 0xCB83, 0xA856, 0xCB84, 0xA857, 0xCB85, 0xA858, 0xCB86,
- 0xA859, 0xCB87, 0xA85A, 0xCB88, 0xA861, 0xCB89, 0xA862, 0xCB8A,
- 0xA863, 0xCB8B, 0xA864, 0xCB8C, 0xA865, 0xCB8D, 0xA866, 0xCB8E,
- 0xA867, 0xCB8F, 0xA868, 0xCB90, 0xA869, 0xCB91, 0xA86A, 0xCB92,
- 0xA86B, 0xCB93, 0xA86C, 0xCB94, 0xA86D, 0xCB95, 0xA86E, 0xCB96,
- 0xA86F, 0xCB97, 0xA870, 0xCB98, 0xA871, 0xCB99, 0xA872, 0xCB9A,
- 0xA873, 0xCB9B, 0xA874, 0xCB9D, 0xA875, 0xCB9E, 0xA876, 0xCB9F,
- 0xA877, 0xCBA0, 0xA878, 0xCBA1, 0xA879, 0xCBA2, 0xA87A, 0xCBA3,
- 0xA881, 0xCBA4, 0xA882, 0xCBA5, 0xA883, 0xCBA6, 0xA884, 0xCBA7,
- 0xA885, 0xCBA8, 0xA886, 0xCBA9, 0xA887, 0xCBAA, 0xA888, 0xCBAB,
- 0xA889, 0xCBAC, 0xA88A, 0xCBAD, 0xA88B, 0xCBAE, 0xA88C, 0xCBAF,
- 0xA88D, 0xCBB0, 0xA88E, 0xCBB1, 0xA88F, 0xCBB2, 0xA890, 0xCBB3,
- 0xA891, 0xCBB4, 0xA892, 0xCBB5, 0xA893, 0xCBB6, 0xA894, 0xCBB7,
- 0xA895, 0xCBB9, 0xA896, 0xCBBA, 0xA897, 0xCBBB, 0xA898, 0xCBBC,
- 0xA899, 0xCBBD, 0xA89A, 0xCBBE, 0xA89B, 0xCBBF, 0xA89C, 0xCBC0,
- 0xA89D, 0xCBC1, 0xA89E, 0xCBC2, 0xA89F, 0xCBC3, 0xA8A0, 0xCBC4,
- 0xA8A1, 0x00C6, 0xA8A2, 0x00D0, 0xA8A3, 0x00AA, 0xA8A4, 0x0126,
- 0xA8A6, 0x0132, 0xA8A8, 0x013F, 0xA8A9, 0x0141, 0xA8AA, 0x00D8,
- 0xA8AB, 0x0152, 0xA8AC, 0x00BA, 0xA8AD, 0x00DE, 0xA8AE, 0x0166,
- 0xA8AF, 0x014A, 0xA8B1, 0x3260, 0xA8B2, 0x3261, 0xA8B3, 0x3262,
- 0xA8B4, 0x3263, 0xA8B5, 0x3264, 0xA8B6, 0x3265, 0xA8B7, 0x3266,
- 0xA8B8, 0x3267, 0xA8B9, 0x3268, 0xA8BA, 0x3269, 0xA8BB, 0x326A,
- 0xA8BC, 0x326B, 0xA8BD, 0x326C, 0xA8BE, 0x326D, 0xA8BF, 0x326E,
- 0xA8C0, 0x326F, 0xA8C1, 0x3270, 0xA8C2, 0x3271, 0xA8C3, 0x3272,
- 0xA8C4, 0x3273, 0xA8C5, 0x3274, 0xA8C6, 0x3275, 0xA8C7, 0x3276,
- 0xA8C8, 0x3277, 0xA8C9, 0x3278, 0xA8CA, 0x3279, 0xA8CB, 0x327A,
- 0xA8CC, 0x327B, 0xA8CD, 0x24D0, 0xA8CE, 0x24D1, 0xA8CF, 0x24D2,
- 0xA8D0, 0x24D3, 0xA8D1, 0x24D4, 0xA8D2, 0x24D5, 0xA8D3, 0x24D6,
- 0xA8D4, 0x24D7, 0xA8D5, 0x24D8, 0xA8D6, 0x24D9, 0xA8D7, 0x24DA,
- 0xA8D8, 0x24DB, 0xA8D9, 0x24DC, 0xA8DA, 0x24DD, 0xA8DB, 0x24DE,
- 0xA8DC, 0x24DF, 0xA8DD, 0x24E0, 0xA8DE, 0x24E1, 0xA8DF, 0x24E2,
- 0xA8E0, 0x24E3, 0xA8E1, 0x24E4, 0xA8E2, 0x24E5, 0xA8E3, 0x24E6,
- 0xA8E4, 0x24E7, 0xA8E5, 0x24E8, 0xA8E6, 0x24E9, 0xA8E7, 0x2460,
- 0xA8E8, 0x2461, 0xA8E9, 0x2462, 0xA8EA, 0x2463, 0xA8EB, 0x2464,
- 0xA8EC, 0x2465, 0xA8ED, 0x2466, 0xA8EE, 0x2467, 0xA8EF, 0x2468,
- 0xA8F0, 0x2469, 0xA8F1, 0x246A, 0xA8F2, 0x246B, 0xA8F3, 0x246C,
- 0xA8F4, 0x246D, 0xA8F5, 0x246E, 0xA8F6, 0x00BD, 0xA8F7, 0x2153,
- 0xA8F8, 0x2154, 0xA8F9, 0x00BC, 0xA8FA, 0x00BE, 0xA8FB, 0x215B,
- 0xA8FC, 0x215C, 0xA8FD, 0x215D, 0xA8FE, 0x215E, 0xA941, 0xCBC5,
- 0xA942, 0xCBC6, 0xA943, 0xCBC7, 0xA944, 0xCBC8, 0xA945, 0xCBC9,
- 0xA946, 0xCBCA, 0xA947, 0xCBCB, 0xA948, 0xCBCC, 0xA949, 0xCBCD,
- 0xA94A, 0xCBCE, 0xA94B, 0xCBCF, 0xA94C, 0xCBD0, 0xA94D, 0xCBD1,
- 0xA94E, 0xCBD2, 0xA94F, 0xCBD3, 0xA950, 0xCBD5, 0xA951, 0xCBD6,
- 0xA952, 0xCBD7, 0xA953, 0xCBD8, 0xA954, 0xCBD9, 0xA955, 0xCBDA,
- 0xA956, 0xCBDB, 0xA957, 0xCBDC, 0xA958, 0xCBDD, 0xA959, 0xCBDE,
- 0xA95A, 0xCBDF, 0xA961, 0xCBE0, 0xA962, 0xCBE1, 0xA963, 0xCBE2,
- 0xA964, 0xCBE3, 0xA965, 0xCBE5, 0xA966, 0xCBE6, 0xA967, 0xCBE8,
- 0xA968, 0xCBEA, 0xA969, 0xCBEB, 0xA96A, 0xCBEC, 0xA96B, 0xCBED,
- 0xA96C, 0xCBEE, 0xA96D, 0xCBEF, 0xA96E, 0xCBF0, 0xA96F, 0xCBF1,
- 0xA970, 0xCBF2, 0xA971, 0xCBF3, 0xA972, 0xCBF4, 0xA973, 0xCBF5,
- 0xA974, 0xCBF6, 0xA975, 0xCBF7, 0xA976, 0xCBF8, 0xA977, 0xCBF9,
- 0xA978, 0xCBFA, 0xA979, 0xCBFB, 0xA97A, 0xCBFC, 0xA981, 0xCBFD,
- 0xA982, 0xCBFE, 0xA983, 0xCBFF, 0xA984, 0xCC00, 0xA985, 0xCC01,
- 0xA986, 0xCC02, 0xA987, 0xCC03, 0xA988, 0xCC04, 0xA989, 0xCC05,
- 0xA98A, 0xCC06, 0xA98B, 0xCC07, 0xA98C, 0xCC08, 0xA98D, 0xCC09,
- 0xA98E, 0xCC0A, 0xA98F, 0xCC0B, 0xA990, 0xCC0E, 0xA991, 0xCC0F,
- 0xA992, 0xCC11, 0xA993, 0xCC12, 0xA994, 0xCC13, 0xA995, 0xCC15,
- 0xA996, 0xCC16, 0xA997, 0xCC17, 0xA998, 0xCC18, 0xA999, 0xCC19,
- 0xA99A, 0xCC1A, 0xA99B, 0xCC1B, 0xA99C, 0xCC1E, 0xA99D, 0xCC1F,
- 0xA99E, 0xCC20, 0xA99F, 0xCC23, 0xA9A0, 0xCC24, 0xA9A1, 0x00E6,
- 0xA9A2, 0x0111, 0xA9A3, 0x00F0, 0xA9A4, 0x0127, 0xA9A5, 0x0131,
- 0xA9A6, 0x0133, 0xA9A7, 0x0138, 0xA9A8, 0x0140, 0xA9A9, 0x0142,
- 0xA9AA, 0x00F8, 0xA9AB, 0x0153, 0xA9AC, 0x00DF, 0xA9AD, 0x00FE,
- 0xA9AE, 0x0167, 0xA9AF, 0x014B, 0xA9B0, 0x0149, 0xA9B1, 0x3200,
- 0xA9B2, 0x3201, 0xA9B3, 0x3202, 0xA9B4, 0x3203, 0xA9B5, 0x3204,
- 0xA9B6, 0x3205, 0xA9B7, 0x3206, 0xA9B8, 0x3207, 0xA9B9, 0x3208,
- 0xA9BA, 0x3209, 0xA9BB, 0x320A, 0xA9BC, 0x320B, 0xA9BD, 0x320C,
- 0xA9BE, 0x320D, 0xA9BF, 0x320E, 0xA9C0, 0x320F, 0xA9C1, 0x3210,
- 0xA9C2, 0x3211, 0xA9C3, 0x3212, 0xA9C4, 0x3213, 0xA9C5, 0x3214,
- 0xA9C6, 0x3215, 0xA9C7, 0x3216, 0xA9C8, 0x3217, 0xA9C9, 0x3218,
- 0xA9CA, 0x3219, 0xA9CB, 0x321A, 0xA9CC, 0x321B, 0xA9CD, 0x249C,
- 0xA9CE, 0x249D, 0xA9CF, 0x249E, 0xA9D0, 0x249F, 0xA9D1, 0x24A0,
- 0xA9D2, 0x24A1, 0xA9D3, 0x24A2, 0xA9D4, 0x24A3, 0xA9D5, 0x24A4,
- 0xA9D6, 0x24A5, 0xA9D7, 0x24A6, 0xA9D8, 0x24A7, 0xA9D9, 0x24A8,
- 0xA9DA, 0x24A9, 0xA9DB, 0x24AA, 0xA9DC, 0x24AB, 0xA9DD, 0x24AC,
- 0xA9DE, 0x24AD, 0xA9DF, 0x24AE, 0xA9E0, 0x24AF, 0xA9E1, 0x24B0,
- 0xA9E2, 0x24B1, 0xA9E3, 0x24B2, 0xA9E4, 0x24B3, 0xA9E5, 0x24B4,
- 0xA9E6, 0x24B5, 0xA9E7, 0x2474, 0xA9E8, 0x2475, 0xA9E9, 0x2476,
- 0xA9EA, 0x2477, 0xA9EB, 0x2478, 0xA9EC, 0x2479, 0xA9ED, 0x247A,
- 0xA9EE, 0x247B, 0xA9EF, 0x247C, 0xA9F0, 0x247D, 0xA9F1, 0x247E,
- 0xA9F2, 0x247F, 0xA9F3, 0x2480, 0xA9F4, 0x2481, 0xA9F5, 0x2482,
- 0xA9F6, 0x00B9, 0xA9F7, 0x00B2, 0xA9F8, 0x00B3, 0xA9F9, 0x2074,
- 0xA9FA, 0x207F, 0xA9FB, 0x2081, 0xA9FC, 0x2082, 0xA9FD, 0x2083,
- 0xA9FE, 0x2084, 0xAA41, 0xCC25, 0xAA42, 0xCC26, 0xAA43, 0xCC2A,
- 0xAA44, 0xCC2B, 0xAA45, 0xCC2D, 0xAA46, 0xCC2F, 0xAA47, 0xCC31,
- 0xAA48, 0xCC32, 0xAA49, 0xCC33, 0xAA4A, 0xCC34, 0xAA4B, 0xCC35,
- 0xAA4C, 0xCC36, 0xAA4D, 0xCC37, 0xAA4E, 0xCC3A, 0xAA4F, 0xCC3F,
- 0xAA50, 0xCC40, 0xAA51, 0xCC41, 0xAA52, 0xCC42, 0xAA53, 0xCC43,
- 0xAA54, 0xCC46, 0xAA55, 0xCC47, 0xAA56, 0xCC49, 0xAA57, 0xCC4A,
- 0xAA58, 0xCC4B, 0xAA59, 0xCC4D, 0xAA5A, 0xCC4E, 0xAA61, 0xCC4F,
- 0xAA62, 0xCC50, 0xAA63, 0xCC51, 0xAA64, 0xCC52, 0xAA65, 0xCC53,
- 0xAA66, 0xCC56, 0xAA67, 0xCC5A, 0xAA68, 0xCC5B, 0xAA69, 0xCC5C,
- 0xAA6A, 0xCC5D, 0xAA6B, 0xCC5E, 0xAA6C, 0xCC5F, 0xAA6D, 0xCC61,
- 0xAA6E, 0xCC62, 0xAA6F, 0xCC63, 0xAA70, 0xCC65, 0xAA71, 0xCC67,
- 0xAA72, 0xCC69, 0xAA73, 0xCC6A, 0xAA74, 0xCC6B, 0xAA75, 0xCC6C,
- 0xAA76, 0xCC6D, 0xAA77, 0xCC6E, 0xAA78, 0xCC6F, 0xAA79, 0xCC71,
- 0xAA7A, 0xCC72, 0xAA81, 0xCC73, 0xAA82, 0xCC74, 0xAA83, 0xCC76,
- 0xAA84, 0xCC77, 0xAA85, 0xCC78, 0xAA86, 0xCC79, 0xAA87, 0xCC7A,
- 0xAA88, 0xCC7B, 0xAA89, 0xCC7C, 0xAA8A, 0xCC7D, 0xAA8B, 0xCC7E,
- 0xAA8C, 0xCC7F, 0xAA8D, 0xCC80, 0xAA8E, 0xCC81, 0xAA8F, 0xCC82,
- 0xAA90, 0xCC83, 0xAA91, 0xCC84, 0xAA92, 0xCC85, 0xAA93, 0xCC86,
- 0xAA94, 0xCC87, 0xAA95, 0xCC88, 0xAA96, 0xCC89, 0xAA97, 0xCC8A,
- 0xAA98, 0xCC8B, 0xAA99, 0xCC8C, 0xAA9A, 0xCC8D, 0xAA9B, 0xCC8E,
- 0xAA9C, 0xCC8F, 0xAA9D, 0xCC90, 0xAA9E, 0xCC91, 0xAA9F, 0xCC92,
- 0xAAA0, 0xCC93, 0xAAA1, 0x3041, 0xAAA2, 0x3042, 0xAAA3, 0x3043,
- 0xAAA4, 0x3044, 0xAAA5, 0x3045, 0xAAA6, 0x3046, 0xAAA7, 0x3047,
- 0xAAA8, 0x3048, 0xAAA9, 0x3049, 0xAAAA, 0x304A, 0xAAAB, 0x304B,
- 0xAAAC, 0x304C, 0xAAAD, 0x304D, 0xAAAE, 0x304E, 0xAAAF, 0x304F,
- 0xAAB0, 0x3050, 0xAAB1, 0x3051, 0xAAB2, 0x3052, 0xAAB3, 0x3053,
- 0xAAB4, 0x3054, 0xAAB5, 0x3055, 0xAAB6, 0x3056, 0xAAB7, 0x3057,
- 0xAAB8, 0x3058, 0xAAB9, 0x3059, 0xAABA, 0x305A, 0xAABB, 0x305B,
- 0xAABC, 0x305C, 0xAABD, 0x305D, 0xAABE, 0x305E, 0xAABF, 0x305F,
- 0xAAC0, 0x3060, 0xAAC1, 0x3061, 0xAAC2, 0x3062, 0xAAC3, 0x3063,
- 0xAAC4, 0x3064, 0xAAC5, 0x3065, 0xAAC6, 0x3066, 0xAAC7, 0x3067,
- 0xAAC8, 0x3068, 0xAAC9, 0x3069, 0xAACA, 0x306A, 0xAACB, 0x306B,
- 0xAACC, 0x306C, 0xAACD, 0x306D, 0xAACE, 0x306E, 0xAACF, 0x306F,
- 0xAAD0, 0x3070, 0xAAD1, 0x3071, 0xAAD2, 0x3072, 0xAAD3, 0x3073,
- 0xAAD4, 0x3074, 0xAAD5, 0x3075, 0xAAD6, 0x3076, 0xAAD7, 0x3077,
- 0xAAD8, 0x3078, 0xAAD9, 0x3079, 0xAADA, 0x307A, 0xAADB, 0x307B,
- 0xAADC, 0x307C, 0xAADD, 0x307D, 0xAADE, 0x307E, 0xAADF, 0x307F,
- 0xAAE0, 0x3080, 0xAAE1, 0x3081, 0xAAE2, 0x3082, 0xAAE3, 0x3083,
- 0xAAE4, 0x3084, 0xAAE5, 0x3085, 0xAAE6, 0x3086, 0xAAE7, 0x3087,
- 0xAAE8, 0x3088, 0xAAE9, 0x3089, 0xAAEA, 0x308A, 0xAAEB, 0x308B,
- 0xAAEC, 0x308C, 0xAAED, 0x308D, 0xAAEE, 0x308E, 0xAAEF, 0x308F,
- 0xAAF0, 0x3090, 0xAAF1, 0x3091, 0xAAF2, 0x3092, 0xAAF3, 0x3093,
- 0xAB41, 0xCC94, 0xAB42, 0xCC95, 0xAB43, 0xCC96, 0xAB44, 0xCC97,
- 0xAB45, 0xCC9A, 0xAB46, 0xCC9B, 0xAB47, 0xCC9D, 0xAB48, 0xCC9E,
- 0xAB49, 0xCC9F, 0xAB4A, 0xCCA1, 0xAB4B, 0xCCA2, 0xAB4C, 0xCCA3,
- 0xAB4D, 0xCCA4, 0xAB4E, 0xCCA5, 0xAB4F, 0xCCA6, 0xAB50, 0xCCA7,
- 0xAB51, 0xCCAA, 0xAB52, 0xCCAE, 0xAB53, 0xCCAF, 0xAB54, 0xCCB0,
- 0xAB55, 0xCCB1, 0xAB56, 0xCCB2, 0xAB57, 0xCCB3, 0xAB58, 0xCCB6,
- 0xAB59, 0xCCB7, 0xAB5A, 0xCCB9, 0xAB61, 0xCCBA, 0xAB62, 0xCCBB,
- 0xAB63, 0xCCBD, 0xAB64, 0xCCBE, 0xAB65, 0xCCBF, 0xAB66, 0xCCC0,
- 0xAB67, 0xCCC1, 0xAB68, 0xCCC2, 0xAB69, 0xCCC3, 0xAB6A, 0xCCC6,
- 0xAB6B, 0xCCC8, 0xAB6C, 0xCCCA, 0xAB6D, 0xCCCB, 0xAB6E, 0xCCCC,
- 0xAB6F, 0xCCCD, 0xAB70, 0xCCCE, 0xAB71, 0xCCCF, 0xAB72, 0xCCD1,
- 0xAB73, 0xCCD2, 0xAB74, 0xCCD3, 0xAB75, 0xCCD5, 0xAB76, 0xCCD6,
- 0xAB77, 0xCCD7, 0xAB78, 0xCCD8, 0xAB79, 0xCCD9, 0xAB7A, 0xCCDA,
- 0xAB81, 0xCCDB, 0xAB82, 0xCCDC, 0xAB83, 0xCCDD, 0xAB84, 0xCCDE,
- 0xAB85, 0xCCDF, 0xAB86, 0xCCE0, 0xAB87, 0xCCE1, 0xAB88, 0xCCE2,
- 0xAB89, 0xCCE3, 0xAB8A, 0xCCE5, 0xAB8B, 0xCCE6, 0xAB8C, 0xCCE7,
- 0xAB8D, 0xCCE8, 0xAB8E, 0xCCE9, 0xAB8F, 0xCCEA, 0xAB90, 0xCCEB,
- 0xAB91, 0xCCED, 0xAB92, 0xCCEE, 0xAB93, 0xCCEF, 0xAB94, 0xCCF1,
- 0xAB95, 0xCCF2, 0xAB96, 0xCCF3, 0xAB97, 0xCCF4, 0xAB98, 0xCCF5,
- 0xAB99, 0xCCF6, 0xAB9A, 0xCCF7, 0xAB9B, 0xCCF8, 0xAB9C, 0xCCF9,
- 0xAB9D, 0xCCFA, 0xAB9E, 0xCCFB, 0xAB9F, 0xCCFC, 0xABA0, 0xCCFD,
- 0xABA1, 0x30A1, 0xABA2, 0x30A2, 0xABA3, 0x30A3, 0xABA4, 0x30A4,
- 0xABA5, 0x30A5, 0xABA6, 0x30A6, 0xABA7, 0x30A7, 0xABA8, 0x30A8,
- 0xABA9, 0x30A9, 0xABAA, 0x30AA, 0xABAB, 0x30AB, 0xABAC, 0x30AC,
- 0xABAD, 0x30AD, 0xABAE, 0x30AE, 0xABAF, 0x30AF, 0xABB0, 0x30B0,
- 0xABB1, 0x30B1, 0xABB2, 0x30B2, 0xABB3, 0x30B3, 0xABB4, 0x30B4,
- 0xABB5, 0x30B5, 0xABB6, 0x30B6, 0xABB7, 0x30B7, 0xABB8, 0x30B8,
- 0xABB9, 0x30B9, 0xABBA, 0x30BA, 0xABBB, 0x30BB, 0xABBC, 0x30BC,
- 0xABBD, 0x30BD, 0xABBE, 0x30BE, 0xABBF, 0x30BF, 0xABC0, 0x30C0,
- 0xABC1, 0x30C1, 0xABC2, 0x30C2, 0xABC3, 0x30C3, 0xABC4, 0x30C4,
- 0xABC5, 0x30C5, 0xABC6, 0x30C6, 0xABC7, 0x30C7, 0xABC8, 0x30C8,
- 0xABC9, 0x30C9, 0xABCA, 0x30CA, 0xABCB, 0x30CB, 0xABCC, 0x30CC,
- 0xABCD, 0x30CD, 0xABCE, 0x30CE, 0xABCF, 0x30CF, 0xABD0, 0x30D0,
- 0xABD1, 0x30D1, 0xABD2, 0x30D2, 0xABD3, 0x30D3, 0xABD4, 0x30D4,
- 0xABD5, 0x30D5, 0xABD6, 0x30D6, 0xABD7, 0x30D7, 0xABD8, 0x30D8,
- 0xABD9, 0x30D9, 0xABDA, 0x30DA, 0xABDB, 0x30DB, 0xABDC, 0x30DC,
- 0xABDD, 0x30DD, 0xABDE, 0x30DE, 0xABDF, 0x30DF, 0xABE0, 0x30E0,
- 0xABE1, 0x30E1, 0xABE2, 0x30E2, 0xABE3, 0x30E3, 0xABE4, 0x30E4,
- 0xABE5, 0x30E5, 0xABE6, 0x30E6, 0xABE7, 0x30E7, 0xABE8, 0x30E8,
- 0xABE9, 0x30E9, 0xABEA, 0x30EA, 0xABEB, 0x30EB, 0xABEC, 0x30EC,
- 0xABED, 0x30ED, 0xABEE, 0x30EE, 0xABEF, 0x30EF, 0xABF0, 0x30F0,
- 0xABF1, 0x30F1, 0xABF2, 0x30F2, 0xABF3, 0x30F3, 0xABF4, 0x30F4,
- 0xABF5, 0x30F5, 0xABF6, 0x30F6, 0xAC41, 0xCCFE, 0xAC42, 0xCCFF,
- 0xAC43, 0xCD00, 0xAC44, 0xCD02, 0xAC45, 0xCD03, 0xAC46, 0xCD04,
- 0xAC47, 0xCD05, 0xAC48, 0xCD06, 0xAC49, 0xCD07, 0xAC4A, 0xCD0A,
- 0xAC4B, 0xCD0B, 0xAC4C, 0xCD0D, 0xAC4D, 0xCD0E, 0xAC4E, 0xCD0F,
- 0xAC4F, 0xCD11, 0xAC50, 0xCD12, 0xAC51, 0xCD13, 0xAC52, 0xCD14,
- 0xAC53, 0xCD15, 0xAC54, 0xCD16, 0xAC55, 0xCD17, 0xAC56, 0xCD1A,
- 0xAC57, 0xCD1C, 0xAC58, 0xCD1E, 0xAC59, 0xCD1F, 0xAC5A, 0xCD20,
- 0xAC61, 0xCD21, 0xAC62, 0xCD22, 0xAC63, 0xCD23, 0xAC64, 0xCD25,
- 0xAC65, 0xCD26, 0xAC66, 0xCD27, 0xAC67, 0xCD29, 0xAC68, 0xCD2A,
- 0xAC69, 0xCD2B, 0xAC6A, 0xCD2D, 0xAC6B, 0xCD2E, 0xAC6C, 0xCD2F,
- 0xAC6D, 0xCD30, 0xAC6E, 0xCD31, 0xAC6F, 0xCD32, 0xAC70, 0xCD33,
- 0xAC71, 0xCD34, 0xAC72, 0xCD35, 0xAC73, 0xCD36, 0xAC74, 0xCD37,
- 0xAC75, 0xCD38, 0xAC76, 0xCD3A, 0xAC77, 0xCD3B, 0xAC78, 0xCD3C,
- 0xAC79, 0xCD3D, 0xAC7A, 0xCD3E, 0xAC81, 0xCD3F, 0xAC82, 0xCD40,
- 0xAC83, 0xCD41, 0xAC84, 0xCD42, 0xAC85, 0xCD43, 0xAC86, 0xCD44,
- 0xAC87, 0xCD45, 0xAC88, 0xCD46, 0xAC89, 0xCD47, 0xAC8A, 0xCD48,
- 0xAC8B, 0xCD49, 0xAC8C, 0xCD4A, 0xAC8D, 0xCD4B, 0xAC8E, 0xCD4C,
- 0xAC8F, 0xCD4D, 0xAC90, 0xCD4E, 0xAC91, 0xCD4F, 0xAC92, 0xCD50,
- 0xAC93, 0xCD51, 0xAC94, 0xCD52, 0xAC95, 0xCD53, 0xAC96, 0xCD54,
- 0xAC97, 0xCD55, 0xAC98, 0xCD56, 0xAC99, 0xCD57, 0xAC9A, 0xCD58,
- 0xAC9B, 0xCD59, 0xAC9C, 0xCD5A, 0xAC9D, 0xCD5B, 0xAC9E, 0xCD5D,
- 0xAC9F, 0xCD5E, 0xACA0, 0xCD5F, 0xACA1, 0x0410, 0xACA2, 0x0411,
- 0xACA3, 0x0412, 0xACA4, 0x0413, 0xACA5, 0x0414, 0xACA6, 0x0415,
- 0xACA7, 0x0401, 0xACA8, 0x0416, 0xACA9, 0x0417, 0xACAA, 0x0418,
- 0xACAB, 0x0419, 0xACAC, 0x041A, 0xACAD, 0x041B, 0xACAE, 0x041C,
- 0xACAF, 0x041D, 0xACB0, 0x041E, 0xACB1, 0x041F, 0xACB2, 0x0420,
- 0xACB3, 0x0421, 0xACB4, 0x0422, 0xACB5, 0x0423, 0xACB6, 0x0424,
- 0xACB7, 0x0425, 0xACB8, 0x0426, 0xACB9, 0x0427, 0xACBA, 0x0428,
- 0xACBB, 0x0429, 0xACBC, 0x042A, 0xACBD, 0x042B, 0xACBE, 0x042C,
- 0xACBF, 0x042D, 0xACC0, 0x042E, 0xACC1, 0x042F, 0xACD1, 0x0430,
- 0xACD2, 0x0431, 0xACD3, 0x0432, 0xACD4, 0x0433, 0xACD5, 0x0434,
- 0xACD6, 0x0435, 0xACD7, 0x0451, 0xACD8, 0x0436, 0xACD9, 0x0437,
- 0xACDA, 0x0438, 0xACDB, 0x0439, 0xACDC, 0x043A, 0xACDD, 0x043B,
- 0xACDE, 0x043C, 0xACDF, 0x043D, 0xACE0, 0x043E, 0xACE1, 0x043F,
- 0xACE2, 0x0440, 0xACE3, 0x0441, 0xACE4, 0x0442, 0xACE5, 0x0443,
- 0xACE6, 0x0444, 0xACE7, 0x0445, 0xACE8, 0x0446, 0xACE9, 0x0447,
- 0xACEA, 0x0448, 0xACEB, 0x0449, 0xACEC, 0x044A, 0xACED, 0x044B,
- 0xACEE, 0x044C, 0xACEF, 0x044D, 0xACF0, 0x044E, 0xACF1, 0x044F,
- 0xAD41, 0xCD61, 0xAD42, 0xCD62, 0xAD43, 0xCD63, 0xAD44, 0xCD65,
- 0xAD45, 0xCD66, 0xAD46, 0xCD67, 0xAD47, 0xCD68, 0xAD48, 0xCD69,
- 0xAD49, 0xCD6A, 0xAD4A, 0xCD6B, 0xAD4B, 0xCD6E, 0xAD4C, 0xCD70,
- 0xAD4D, 0xCD72, 0xAD4E, 0xCD73, 0xAD4F, 0xCD74, 0xAD50, 0xCD75,
- 0xAD51, 0xCD76, 0xAD52, 0xCD77, 0xAD53, 0xCD79, 0xAD54, 0xCD7A,
- 0xAD55, 0xCD7B, 0xAD56, 0xCD7C, 0xAD57, 0xCD7D, 0xAD58, 0xCD7E,
- 0xAD59, 0xCD7F, 0xAD5A, 0xCD80, 0xAD61, 0xCD81, 0xAD62, 0xCD82,
- 0xAD63, 0xCD83, 0xAD64, 0xCD84, 0xAD65, 0xCD85, 0xAD66, 0xCD86,
- 0xAD67, 0xCD87, 0xAD68, 0xCD89, 0xAD69, 0xCD8A, 0xAD6A, 0xCD8B,
- 0xAD6B, 0xCD8C, 0xAD6C, 0xCD8D, 0xAD6D, 0xCD8E, 0xAD6E, 0xCD8F,
- 0xAD6F, 0xCD90, 0xAD70, 0xCD91, 0xAD71, 0xCD92, 0xAD72, 0xCD93,
- 0xAD73, 0xCD96, 0xAD74, 0xCD97, 0xAD75, 0xCD99, 0xAD76, 0xCD9A,
- 0xAD77, 0xCD9B, 0xAD78, 0xCD9D, 0xAD79, 0xCD9E, 0xAD7A, 0xCD9F,
- 0xAD81, 0xCDA0, 0xAD82, 0xCDA1, 0xAD83, 0xCDA2, 0xAD84, 0xCDA3,
- 0xAD85, 0xCDA6, 0xAD86, 0xCDA8, 0xAD87, 0xCDAA, 0xAD88, 0xCDAB,
- 0xAD89, 0xCDAC, 0xAD8A, 0xCDAD, 0xAD8B, 0xCDAE, 0xAD8C, 0xCDAF,
- 0xAD8D, 0xCDB1, 0xAD8E, 0xCDB2, 0xAD8F, 0xCDB3, 0xAD90, 0xCDB4,
- 0xAD91, 0xCDB5, 0xAD92, 0xCDB6, 0xAD93, 0xCDB7, 0xAD94, 0xCDB8,
- 0xAD95, 0xCDB9, 0xAD96, 0xCDBA, 0xAD97, 0xCDBB, 0xAD98, 0xCDBC,
- 0xAD99, 0xCDBD, 0xAD9A, 0xCDBE, 0xAD9B, 0xCDBF, 0xAD9C, 0xCDC0,
- 0xAD9D, 0xCDC1, 0xAD9E, 0xCDC2, 0xAD9F, 0xCDC3, 0xADA0, 0xCDC5,
- 0xAE41, 0xCDC6, 0xAE42, 0xCDC7, 0xAE43, 0xCDC8, 0xAE44, 0xCDC9,
- 0xAE45, 0xCDCA, 0xAE46, 0xCDCB, 0xAE47, 0xCDCD, 0xAE48, 0xCDCE,
- 0xAE49, 0xCDCF, 0xAE4A, 0xCDD1, 0xAE4B, 0xCDD2, 0xAE4C, 0xCDD3,
- 0xAE4D, 0xCDD4, 0xAE4E, 0xCDD5, 0xAE4F, 0xCDD6, 0xAE50, 0xCDD7,
- 0xAE51, 0xCDD8, 0xAE52, 0xCDD9, 0xAE53, 0xCDDA, 0xAE54, 0xCDDB,
- 0xAE55, 0xCDDC, 0xAE56, 0xCDDD, 0xAE57, 0xCDDE, 0xAE58, 0xCDDF,
- 0xAE59, 0xCDE0, 0xAE5A, 0xCDE1, 0xAE61, 0xCDE2, 0xAE62, 0xCDE3,
- 0xAE63, 0xCDE4, 0xAE64, 0xCDE5, 0xAE65, 0xCDE6, 0xAE66, 0xCDE7,
- 0xAE67, 0xCDE9, 0xAE68, 0xCDEA, 0xAE69, 0xCDEB, 0xAE6A, 0xCDED,
- 0xAE6B, 0xCDEE, 0xAE6C, 0xCDEF, 0xAE6D, 0xCDF1, 0xAE6E, 0xCDF2,
- 0xAE6F, 0xCDF3, 0xAE70, 0xCDF4, 0xAE71, 0xCDF5, 0xAE72, 0xCDF6,
- 0xAE73, 0xCDF7, 0xAE74, 0xCDFA, 0xAE75, 0xCDFC, 0xAE76, 0xCDFE,
- 0xAE77, 0xCDFF, 0xAE78, 0xCE00, 0xAE79, 0xCE01, 0xAE7A, 0xCE02,
- 0xAE81, 0xCE03, 0xAE82, 0xCE05, 0xAE83, 0xCE06, 0xAE84, 0xCE07,
- 0xAE85, 0xCE09, 0xAE86, 0xCE0A, 0xAE87, 0xCE0B, 0xAE88, 0xCE0D,
- 0xAE89, 0xCE0E, 0xAE8A, 0xCE0F, 0xAE8B, 0xCE10, 0xAE8C, 0xCE11,
- 0xAE8D, 0xCE12, 0xAE8E, 0xCE13, 0xAE8F, 0xCE15, 0xAE90, 0xCE16,
- 0xAE91, 0xCE17, 0xAE92, 0xCE18, 0xAE93, 0xCE1A, 0xAE94, 0xCE1B,
- 0xAE95, 0xCE1C, 0xAE96, 0xCE1D, 0xAE97, 0xCE1E, 0xAE98, 0xCE1F,
- 0xAE99, 0xCE22, 0xAE9A, 0xCE23, 0xAE9B, 0xCE25, 0xAE9C, 0xCE26,
- 0xAE9D, 0xCE27, 0xAE9E, 0xCE29, 0xAE9F, 0xCE2A, 0xAEA0, 0xCE2B,
- 0xAF41, 0xCE2C, 0xAF42, 0xCE2D, 0xAF43, 0xCE2E, 0xAF44, 0xCE2F,
- 0xAF45, 0xCE32, 0xAF46, 0xCE34, 0xAF47, 0xCE36, 0xAF48, 0xCE37,
- 0xAF49, 0xCE38, 0xAF4A, 0xCE39, 0xAF4B, 0xCE3A, 0xAF4C, 0xCE3B,
- 0xAF4D, 0xCE3C, 0xAF4E, 0xCE3D, 0xAF4F, 0xCE3E, 0xAF50, 0xCE3F,
- 0xAF51, 0xCE40, 0xAF52, 0xCE41, 0xAF53, 0xCE42, 0xAF54, 0xCE43,
- 0xAF55, 0xCE44, 0xAF56, 0xCE45, 0xAF57, 0xCE46, 0xAF58, 0xCE47,
- 0xAF59, 0xCE48, 0xAF5A, 0xCE49, 0xAF61, 0xCE4A, 0xAF62, 0xCE4B,
- 0xAF63, 0xCE4C, 0xAF64, 0xCE4D, 0xAF65, 0xCE4E, 0xAF66, 0xCE4F,
- 0xAF67, 0xCE50, 0xAF68, 0xCE51, 0xAF69, 0xCE52, 0xAF6A, 0xCE53,
- 0xAF6B, 0xCE54, 0xAF6C, 0xCE55, 0xAF6D, 0xCE56, 0xAF6E, 0xCE57,
- 0xAF6F, 0xCE5A, 0xAF70, 0xCE5B, 0xAF71, 0xCE5D, 0xAF72, 0xCE5E,
- 0xAF73, 0xCE62, 0xAF74, 0xCE63, 0xAF75, 0xCE64, 0xAF76, 0xCE65,
- 0xAF77, 0xCE66, 0xAF78, 0xCE67, 0xAF79, 0xCE6A, 0xAF7A, 0xCE6C,
- 0xAF81, 0xCE6E, 0xAF82, 0xCE6F, 0xAF83, 0xCE70, 0xAF84, 0xCE71,
- 0xAF85, 0xCE72, 0xAF86, 0xCE73, 0xAF87, 0xCE76, 0xAF88, 0xCE77,
- 0xAF89, 0xCE79, 0xAF8A, 0xCE7A, 0xAF8B, 0xCE7B, 0xAF8C, 0xCE7D,
- 0xAF8D, 0xCE7E, 0xAF8E, 0xCE7F, 0xAF8F, 0xCE80, 0xAF90, 0xCE81,
- 0xAF91, 0xCE82, 0xAF92, 0xCE83, 0xAF93, 0xCE86, 0xAF94, 0xCE88,
- 0xAF95, 0xCE8A, 0xAF96, 0xCE8B, 0xAF97, 0xCE8C, 0xAF98, 0xCE8D,
- 0xAF99, 0xCE8E, 0xAF9A, 0xCE8F, 0xAF9B, 0xCE92, 0xAF9C, 0xCE93,
- 0xAF9D, 0xCE95, 0xAF9E, 0xCE96, 0xAF9F, 0xCE97, 0xAFA0, 0xCE99,
- 0xB041, 0xCE9A, 0xB042, 0xCE9B, 0xB043, 0xCE9C, 0xB044, 0xCE9D,
- 0xB045, 0xCE9E, 0xB046, 0xCE9F, 0xB047, 0xCEA2, 0xB048, 0xCEA6,
- 0xB049, 0xCEA7, 0xB04A, 0xCEA8, 0xB04B, 0xCEA9, 0xB04C, 0xCEAA,
- 0xB04D, 0xCEAB, 0xB04E, 0xCEAE, 0xB04F, 0xCEAF, 0xB050, 0xCEB0,
- 0xB051, 0xCEB1, 0xB052, 0xCEB2, 0xB053, 0xCEB3, 0xB054, 0xCEB4,
- 0xB055, 0xCEB5, 0xB056, 0xCEB6, 0xB057, 0xCEB7, 0xB058, 0xCEB8,
- 0xB059, 0xCEB9, 0xB05A, 0xCEBA, 0xB061, 0xCEBB, 0xB062, 0xCEBC,
- 0xB063, 0xCEBD, 0xB064, 0xCEBE, 0xB065, 0xCEBF, 0xB066, 0xCEC0,
- 0xB067, 0xCEC2, 0xB068, 0xCEC3, 0xB069, 0xCEC4, 0xB06A, 0xCEC5,
- 0xB06B, 0xCEC6, 0xB06C, 0xCEC7, 0xB06D, 0xCEC8, 0xB06E, 0xCEC9,
- 0xB06F, 0xCECA, 0xB070, 0xCECB, 0xB071, 0xCECC, 0xB072, 0xCECD,
- 0xB073, 0xCECE, 0xB074, 0xCECF, 0xB075, 0xCED0, 0xB076, 0xCED1,
- 0xB077, 0xCED2, 0xB078, 0xCED3, 0xB079, 0xCED4, 0xB07A, 0xCED5,
- 0xB081, 0xCED6, 0xB082, 0xCED7, 0xB083, 0xCED8, 0xB084, 0xCED9,
- 0xB085, 0xCEDA, 0xB086, 0xCEDB, 0xB087, 0xCEDC, 0xB088, 0xCEDD,
- 0xB089, 0xCEDE, 0xB08A, 0xCEDF, 0xB08B, 0xCEE0, 0xB08C, 0xCEE1,
- 0xB08D, 0xCEE2, 0xB08E, 0xCEE3, 0xB08F, 0xCEE6, 0xB090, 0xCEE7,
- 0xB091, 0xCEE9, 0xB092, 0xCEEA, 0xB093, 0xCEED, 0xB094, 0xCEEE,
- 0xB095, 0xCEEF, 0xB096, 0xCEF0, 0xB097, 0xCEF1, 0xB098, 0xCEF2,
- 0xB099, 0xCEF3, 0xB09A, 0xCEF6, 0xB09B, 0xCEFA, 0xB09C, 0xCEFB,
- 0xB09D, 0xCEFC, 0xB09E, 0xCEFD, 0xB09F, 0xCEFE, 0xB0A0, 0xCEFF,
- 0xB0A1, 0xAC00, 0xB0A2, 0xAC01, 0xB0A3, 0xAC04, 0xB0A4, 0xAC07,
- 0xB0A5, 0xAC08, 0xB0A6, 0xAC09, 0xB0A7, 0xAC0A, 0xB0A8, 0xAC10,
- 0xB0A9, 0xAC11, 0xB0AA, 0xAC12, 0xB0AB, 0xAC13, 0xB0AC, 0xAC14,
- 0xB0AD, 0xAC15, 0xB0AE, 0xAC16, 0xB0AF, 0xAC17, 0xB0B0, 0xAC19,
- 0xB0B1, 0xAC1A, 0xB0B2, 0xAC1B, 0xB0B3, 0xAC1C, 0xB0B4, 0xAC1D,
- 0xB0B5, 0xAC20, 0xB0B6, 0xAC24, 0xB0B7, 0xAC2C, 0xB0B8, 0xAC2D,
- 0xB0B9, 0xAC2F, 0xB0BA, 0xAC30, 0xB0BB, 0xAC31, 0xB0BC, 0xAC38,
- 0xB0BD, 0xAC39, 0xB0BE, 0xAC3C, 0xB0BF, 0xAC40, 0xB0C0, 0xAC4B,
- 0xB0C1, 0xAC4D, 0xB0C2, 0xAC54, 0xB0C3, 0xAC58, 0xB0C4, 0xAC5C,
- 0xB0C5, 0xAC70, 0xB0C6, 0xAC71, 0xB0C7, 0xAC74, 0xB0C8, 0xAC77,
- 0xB0C9, 0xAC78, 0xB0CA, 0xAC7A, 0xB0CB, 0xAC80, 0xB0CC, 0xAC81,
- 0xB0CD, 0xAC83, 0xB0CE, 0xAC84, 0xB0CF, 0xAC85, 0xB0D0, 0xAC86,
- 0xB0D1, 0xAC89, 0xB0D2, 0xAC8A, 0xB0D3, 0xAC8B, 0xB0D4, 0xAC8C,
- 0xB0D5, 0xAC90, 0xB0D6, 0xAC94, 0xB0D7, 0xAC9C, 0xB0D8, 0xAC9D,
- 0xB0D9, 0xAC9F, 0xB0DA, 0xACA0, 0xB0DB, 0xACA1, 0xB0DC, 0xACA8,
- 0xB0DD, 0xACA9, 0xB0DE, 0xACAA, 0xB0DF, 0xACAC, 0xB0E0, 0xACAF,
- 0xB0E1, 0xACB0, 0xB0E2, 0xACB8, 0xB0E3, 0xACB9, 0xB0E4, 0xACBB,
- 0xB0E5, 0xACBC, 0xB0E6, 0xACBD, 0xB0E7, 0xACC1, 0xB0E8, 0xACC4,
- 0xB0E9, 0xACC8, 0xB0EA, 0xACCC, 0xB0EB, 0xACD5, 0xB0EC, 0xACD7,
- 0xB0ED, 0xACE0, 0xB0EE, 0xACE1, 0xB0EF, 0xACE4, 0xB0F0, 0xACE7,
- 0xB0F1, 0xACE8, 0xB0F2, 0xACEA, 0xB0F3, 0xACEC, 0xB0F4, 0xACEF,
- 0xB0F5, 0xACF0, 0xB0F6, 0xACF1, 0xB0F7, 0xACF3, 0xB0F8, 0xACF5,
- 0xB0F9, 0xACF6, 0xB0FA, 0xACFC, 0xB0FB, 0xACFD, 0xB0FC, 0xAD00,
- 0xB0FD, 0xAD04, 0xB0FE, 0xAD06, 0xB141, 0xCF02, 0xB142, 0xCF03,
- 0xB143, 0xCF05, 0xB144, 0xCF06, 0xB145, 0xCF07, 0xB146, 0xCF09,
- 0xB147, 0xCF0A, 0xB148, 0xCF0B, 0xB149, 0xCF0C, 0xB14A, 0xCF0D,
- 0xB14B, 0xCF0E, 0xB14C, 0xCF0F, 0xB14D, 0xCF12, 0xB14E, 0xCF14,
- 0xB14F, 0xCF16, 0xB150, 0xCF17, 0xB151, 0xCF18, 0xB152, 0xCF19,
- 0xB153, 0xCF1A, 0xB154, 0xCF1B, 0xB155, 0xCF1D, 0xB156, 0xCF1E,
- 0xB157, 0xCF1F, 0xB158, 0xCF21, 0xB159, 0xCF22, 0xB15A, 0xCF23,
- 0xB161, 0xCF25, 0xB162, 0xCF26, 0xB163, 0xCF27, 0xB164, 0xCF28,
- 0xB165, 0xCF29, 0xB166, 0xCF2A, 0xB167, 0xCF2B, 0xB168, 0xCF2E,
- 0xB169, 0xCF32, 0xB16A, 0xCF33, 0xB16B, 0xCF34, 0xB16C, 0xCF35,
- 0xB16D, 0xCF36, 0xB16E, 0xCF37, 0xB16F, 0xCF39, 0xB170, 0xCF3A,
- 0xB171, 0xCF3B, 0xB172, 0xCF3C, 0xB173, 0xCF3D, 0xB174, 0xCF3E,
- 0xB175, 0xCF3F, 0xB176, 0xCF40, 0xB177, 0xCF41, 0xB178, 0xCF42,
- 0xB179, 0xCF43, 0xB17A, 0xCF44, 0xB181, 0xCF45, 0xB182, 0xCF46,
- 0xB183, 0xCF47, 0xB184, 0xCF48, 0xB185, 0xCF49, 0xB186, 0xCF4A,
- 0xB187, 0xCF4B, 0xB188, 0xCF4C, 0xB189, 0xCF4D, 0xB18A, 0xCF4E,
- 0xB18B, 0xCF4F, 0xB18C, 0xCF50, 0xB18D, 0xCF51, 0xB18E, 0xCF52,
- 0xB18F, 0xCF53, 0xB190, 0xCF56, 0xB191, 0xCF57, 0xB192, 0xCF59,
- 0xB193, 0xCF5A, 0xB194, 0xCF5B, 0xB195, 0xCF5D, 0xB196, 0xCF5E,
- 0xB197, 0xCF5F, 0xB198, 0xCF60, 0xB199, 0xCF61, 0xB19A, 0xCF62,
- 0xB19B, 0xCF63, 0xB19C, 0xCF66, 0xB19D, 0xCF68, 0xB19E, 0xCF6A,
- 0xB19F, 0xCF6B, 0xB1A0, 0xCF6C, 0xB1A1, 0xAD0C, 0xB1A2, 0xAD0D,
- 0xB1A3, 0xAD0F, 0xB1A4, 0xAD11, 0xB1A5, 0xAD18, 0xB1A6, 0xAD1C,
- 0xB1A7, 0xAD20, 0xB1A8, 0xAD29, 0xB1A9, 0xAD2C, 0xB1AA, 0xAD2D,
- 0xB1AB, 0xAD34, 0xB1AC, 0xAD35, 0xB1AD, 0xAD38, 0xB1AE, 0xAD3C,
- 0xB1AF, 0xAD44, 0xB1B0, 0xAD45, 0xB1B1, 0xAD47, 0xB1B2, 0xAD49,
- 0xB1B3, 0xAD50, 0xB1B4, 0xAD54, 0xB1B5, 0xAD58, 0xB1B6, 0xAD61,
- 0xB1B7, 0xAD63, 0xB1B8, 0xAD6C, 0xB1B9, 0xAD6D, 0xB1BA, 0xAD70,
- 0xB1BB, 0xAD73, 0xB1BC, 0xAD74, 0xB1BD, 0xAD75, 0xB1BE, 0xAD76,
- 0xB1BF, 0xAD7B, 0xB1C0, 0xAD7C, 0xB1C1, 0xAD7D, 0xB1C2, 0xAD7F,
- 0xB1C3, 0xAD81, 0xB1C4, 0xAD82, 0xB1C5, 0xAD88, 0xB1C6, 0xAD89,
- 0xB1C7, 0xAD8C, 0xB1C8, 0xAD90, 0xB1C9, 0xAD9C, 0xB1CA, 0xAD9D,
- 0xB1CB, 0xADA4, 0xB1CC, 0xADB7, 0xB1CD, 0xADC0, 0xB1CE, 0xADC1,
- 0xB1CF, 0xADC4, 0xB1D0, 0xADC8, 0xB1D1, 0xADD0, 0xB1D2, 0xADD1,
- 0xB1D3, 0xADD3, 0xB1D4, 0xADDC, 0xB1D5, 0xADE0, 0xB1D6, 0xADE4,
- 0xB1D7, 0xADF8, 0xB1D8, 0xADF9, 0xB1D9, 0xADFC, 0xB1DA, 0xADFF,
- 0xB1DB, 0xAE00, 0xB1DC, 0xAE01, 0xB1DD, 0xAE08, 0xB1DE, 0xAE09,
- 0xB1DF, 0xAE0B, 0xB1E0, 0xAE0D, 0xB1E1, 0xAE14, 0xB1E2, 0xAE30,
- 0xB1E3, 0xAE31, 0xB1E4, 0xAE34, 0xB1E5, 0xAE37, 0xB1E6, 0xAE38,
- 0xB1E7, 0xAE3A, 0xB1E8, 0xAE40, 0xB1E9, 0xAE41, 0xB1EA, 0xAE43,
- 0xB1EB, 0xAE45, 0xB1EC, 0xAE46, 0xB1ED, 0xAE4A, 0xB1EE, 0xAE4C,
- 0xB1EF, 0xAE4D, 0xB1F0, 0xAE4E, 0xB1F1, 0xAE50, 0xB1F2, 0xAE54,
- 0xB1F3, 0xAE56, 0xB1F4, 0xAE5C, 0xB1F5, 0xAE5D, 0xB1F6, 0xAE5F,
- 0xB1F7, 0xAE60, 0xB1F8, 0xAE61, 0xB1F9, 0xAE65, 0xB1FA, 0xAE68,
- 0xB1FB, 0xAE69, 0xB1FC, 0xAE6C, 0xB1FD, 0xAE70, 0xB1FE, 0xAE78,
- 0xB241, 0xCF6D, 0xB242, 0xCF6E, 0xB243, 0xCF6F, 0xB244, 0xCF72,
- 0xB245, 0xCF73, 0xB246, 0xCF75, 0xB247, 0xCF76, 0xB248, 0xCF77,
- 0xB249, 0xCF79, 0xB24A, 0xCF7A, 0xB24B, 0xCF7B, 0xB24C, 0xCF7C,
- 0xB24D, 0xCF7D, 0xB24E, 0xCF7E, 0xB24F, 0xCF7F, 0xB250, 0xCF81,
- 0xB251, 0xCF82, 0xB252, 0xCF83, 0xB253, 0xCF84, 0xB254, 0xCF86,
- 0xB255, 0xCF87, 0xB256, 0xCF88, 0xB257, 0xCF89, 0xB258, 0xCF8A,
- 0xB259, 0xCF8B, 0xB25A, 0xCF8D, 0xB261, 0xCF8E, 0xB262, 0xCF8F,
- 0xB263, 0xCF90, 0xB264, 0xCF91, 0xB265, 0xCF92, 0xB266, 0xCF93,
- 0xB267, 0xCF94, 0xB268, 0xCF95, 0xB269, 0xCF96, 0xB26A, 0xCF97,
- 0xB26B, 0xCF98, 0xB26C, 0xCF99, 0xB26D, 0xCF9A, 0xB26E, 0xCF9B,
- 0xB26F, 0xCF9C, 0xB270, 0xCF9D, 0xB271, 0xCF9E, 0xB272, 0xCF9F,
- 0xB273, 0xCFA0, 0xB274, 0xCFA2, 0xB275, 0xCFA3, 0xB276, 0xCFA4,
- 0xB277, 0xCFA5, 0xB278, 0xCFA6, 0xB279, 0xCFA7, 0xB27A, 0xCFA9,
- 0xB281, 0xCFAA, 0xB282, 0xCFAB, 0xB283, 0xCFAC, 0xB284, 0xCFAD,
- 0xB285, 0xCFAE, 0xB286, 0xCFAF, 0xB287, 0xCFB1, 0xB288, 0xCFB2,
- 0xB289, 0xCFB3, 0xB28A, 0xCFB4, 0xB28B, 0xCFB5, 0xB28C, 0xCFB6,
- 0xB28D, 0xCFB7, 0xB28E, 0xCFB8, 0xB28F, 0xCFB9, 0xB290, 0xCFBA,
- 0xB291, 0xCFBB, 0xB292, 0xCFBC, 0xB293, 0xCFBD, 0xB294, 0xCFBE,
- 0xB295, 0xCFBF, 0xB296, 0xCFC0, 0xB297, 0xCFC1, 0xB298, 0xCFC2,
- 0xB299, 0xCFC3, 0xB29A, 0xCFC5, 0xB29B, 0xCFC6, 0xB29C, 0xCFC7,
- 0xB29D, 0xCFC8, 0xB29E, 0xCFC9, 0xB29F, 0xCFCA, 0xB2A0, 0xCFCB,
- 0xB2A1, 0xAE79, 0xB2A2, 0xAE7B, 0xB2A3, 0xAE7C, 0xB2A4, 0xAE7D,
- 0xB2A5, 0xAE84, 0xB2A6, 0xAE85, 0xB2A7, 0xAE8C, 0xB2A8, 0xAEBC,
- 0xB2A9, 0xAEBD, 0xB2AA, 0xAEBE, 0xB2AB, 0xAEC0, 0xB2AC, 0xAEC4,
- 0xB2AD, 0xAECC, 0xB2AE, 0xAECD, 0xB2AF, 0xAECF, 0xB2B0, 0xAED0,
- 0xB2B1, 0xAED1, 0xB2B2, 0xAED8, 0xB2B3, 0xAED9, 0xB2B4, 0xAEDC,
- 0xB2B5, 0xAEE8, 0xB2B6, 0xAEEB, 0xB2B7, 0xAEED, 0xB2B8, 0xAEF4,
- 0xB2B9, 0xAEF8, 0xB2BA, 0xAEFC, 0xB2BB, 0xAF07, 0xB2BC, 0xAF08,
- 0xB2BD, 0xAF0D, 0xB2BE, 0xAF10, 0xB2BF, 0xAF2C, 0xB2C0, 0xAF2D,
- 0xB2C1, 0xAF30, 0xB2C2, 0xAF32, 0xB2C3, 0xAF34, 0xB2C4, 0xAF3C,
- 0xB2C5, 0xAF3D, 0xB2C6, 0xAF3F, 0xB2C7, 0xAF41, 0xB2C8, 0xAF42,
- 0xB2C9, 0xAF43, 0xB2CA, 0xAF48, 0xB2CB, 0xAF49, 0xB2CC, 0xAF50,
- 0xB2CD, 0xAF5C, 0xB2CE, 0xAF5D, 0xB2CF, 0xAF64, 0xB2D0, 0xAF65,
- 0xB2D1, 0xAF79, 0xB2D2, 0xAF80, 0xB2D3, 0xAF84, 0xB2D4, 0xAF88,
- 0xB2D5, 0xAF90, 0xB2D6, 0xAF91, 0xB2D7, 0xAF95, 0xB2D8, 0xAF9C,
- 0xB2D9, 0xAFB8, 0xB2DA, 0xAFB9, 0xB2DB, 0xAFBC, 0xB2DC, 0xAFC0,
- 0xB2DD, 0xAFC7, 0xB2DE, 0xAFC8, 0xB2DF, 0xAFC9, 0xB2E0, 0xAFCB,
- 0xB2E1, 0xAFCD, 0xB2E2, 0xAFCE, 0xB2E3, 0xAFD4, 0xB2E4, 0xAFDC,
- 0xB2E5, 0xAFE8, 0xB2E6, 0xAFE9, 0xB2E7, 0xAFF0, 0xB2E8, 0xAFF1,
- 0xB2E9, 0xAFF4, 0xB2EA, 0xAFF8, 0xB2EB, 0xB000, 0xB2EC, 0xB001,
- 0xB2ED, 0xB004, 0xB2EE, 0xB00C, 0xB2EF, 0xB010, 0xB2F0, 0xB014,
- 0xB2F1, 0xB01C, 0xB2F2, 0xB01D, 0xB2F3, 0xB028, 0xB2F4, 0xB044,
- 0xB2F5, 0xB045, 0xB2F6, 0xB048, 0xB2F7, 0xB04A, 0xB2F8, 0xB04C,
- 0xB2F9, 0xB04E, 0xB2FA, 0xB053, 0xB2FB, 0xB054, 0xB2FC, 0xB055,
- 0xB2FD, 0xB057, 0xB2FE, 0xB059, 0xB341, 0xCFCC, 0xB342, 0xCFCD,
- 0xB343, 0xCFCE, 0xB344, 0xCFCF, 0xB345, 0xCFD0, 0xB346, 0xCFD1,
- 0xB347, 0xCFD2, 0xB348, 0xCFD3, 0xB349, 0xCFD4, 0xB34A, 0xCFD5,
- 0xB34B, 0xCFD6, 0xB34C, 0xCFD7, 0xB34D, 0xCFD8, 0xB34E, 0xCFD9,
- 0xB34F, 0xCFDA, 0xB350, 0xCFDB, 0xB351, 0xCFDC, 0xB352, 0xCFDD,
- 0xB353, 0xCFDE, 0xB354, 0xCFDF, 0xB355, 0xCFE2, 0xB356, 0xCFE3,
- 0xB357, 0xCFE5, 0xB358, 0xCFE6, 0xB359, 0xCFE7, 0xB35A, 0xCFE9,
- 0xB361, 0xCFEA, 0xB362, 0xCFEB, 0xB363, 0xCFEC, 0xB364, 0xCFED,
- 0xB365, 0xCFEE, 0xB366, 0xCFEF, 0xB367, 0xCFF2, 0xB368, 0xCFF4,
- 0xB369, 0xCFF6, 0xB36A, 0xCFF7, 0xB36B, 0xCFF8, 0xB36C, 0xCFF9,
- 0xB36D, 0xCFFA, 0xB36E, 0xCFFB, 0xB36F, 0xCFFD, 0xB370, 0xCFFE,
- 0xB371, 0xCFFF, 0xB372, 0xD001, 0xB373, 0xD002, 0xB374, 0xD003,
- 0xB375, 0xD005, 0xB376, 0xD006, 0xB377, 0xD007, 0xB378, 0xD008,
- 0xB379, 0xD009, 0xB37A, 0xD00A, 0xB381, 0xD00B, 0xB382, 0xD00C,
- 0xB383, 0xD00D, 0xB384, 0xD00E, 0xB385, 0xD00F, 0xB386, 0xD010,
- 0xB387, 0xD012, 0xB388, 0xD013, 0xB389, 0xD014, 0xB38A, 0xD015,
- 0xB38B, 0xD016, 0xB38C, 0xD017, 0xB38D, 0xD019, 0xB38E, 0xD01A,
- 0xB38F, 0xD01B, 0xB390, 0xD01C, 0xB391, 0xD01D, 0xB392, 0xD01E,
- 0xB393, 0xD01F, 0xB394, 0xD020, 0xB395, 0xD021, 0xB396, 0xD022,
- 0xB397, 0xD023, 0xB398, 0xD024, 0xB399, 0xD025, 0xB39A, 0xD026,
- 0xB39B, 0xD027, 0xB39C, 0xD028, 0xB39D, 0xD029, 0xB39E, 0xD02A,
- 0xB39F, 0xD02B, 0xB3A0, 0xD02C, 0xB3A1, 0xB05D, 0xB3A2, 0xB07C,
- 0xB3A3, 0xB07D, 0xB3A4, 0xB080, 0xB3A5, 0xB084, 0xB3A6, 0xB08C,
- 0xB3A7, 0xB08D, 0xB3A8, 0xB08F, 0xB3A9, 0xB091, 0xB3AA, 0xB098,
- 0xB3AB, 0xB099, 0xB3AC, 0xB09A, 0xB3AD, 0xB09C, 0xB3AE, 0xB09F,
- 0xB3AF, 0xB0A0, 0xB3B0, 0xB0A1, 0xB3B1, 0xB0A2, 0xB3B2, 0xB0A8,
- 0xB3B3, 0xB0A9, 0xB3B4, 0xB0AB, 0xB3B5, 0xB0AC, 0xB3B6, 0xB0AD,
- 0xB3B7, 0xB0AE, 0xB3B8, 0xB0AF, 0xB3B9, 0xB0B1, 0xB3BA, 0xB0B3,
- 0xB3BB, 0xB0B4, 0xB3BC, 0xB0B5, 0xB3BD, 0xB0B8, 0xB3BE, 0xB0BC,
- 0xB3BF, 0xB0C4, 0xB3C0, 0xB0C5, 0xB3C1, 0xB0C7, 0xB3C2, 0xB0C8,
- 0xB3C3, 0xB0C9, 0xB3C4, 0xB0D0, 0xB3C5, 0xB0D1, 0xB3C6, 0xB0D4,
- 0xB3C7, 0xB0D8, 0xB3C8, 0xB0E0, 0xB3C9, 0xB0E5, 0xB3CA, 0xB108,
- 0xB3CB, 0xB109, 0xB3CC, 0xB10B, 0xB3CD, 0xB10C, 0xB3CE, 0xB110,
- 0xB3CF, 0xB112, 0xB3D0, 0xB113, 0xB3D1, 0xB118, 0xB3D2, 0xB119,
- 0xB3D3, 0xB11B, 0xB3D4, 0xB11C, 0xB3D5, 0xB11D, 0xB3D6, 0xB123,
- 0xB3D7, 0xB124, 0xB3D8, 0xB125, 0xB3D9, 0xB128, 0xB3DA, 0xB12C,
- 0xB3DB, 0xB134, 0xB3DC, 0xB135, 0xB3DD, 0xB137, 0xB3DE, 0xB138,
- 0xB3DF, 0xB139, 0xB3E0, 0xB140, 0xB3E1, 0xB141, 0xB3E2, 0xB144,
- 0xB3E3, 0xB148, 0xB3E4, 0xB150, 0xB3E5, 0xB151, 0xB3E6, 0xB154,
- 0xB3E7, 0xB155, 0xB3E8, 0xB158, 0xB3E9, 0xB15C, 0xB3EA, 0xB160,
- 0xB3EB, 0xB178, 0xB3EC, 0xB179, 0xB3ED, 0xB17C, 0xB3EE, 0xB180,
- 0xB3EF, 0xB182, 0xB3F0, 0xB188, 0xB3F1, 0xB189, 0xB3F2, 0xB18B,
- 0xB3F3, 0xB18D, 0xB3F4, 0xB192, 0xB3F5, 0xB193, 0xB3F6, 0xB194,
- 0xB3F7, 0xB198, 0xB3F8, 0xB19C, 0xB3F9, 0xB1A8, 0xB3FA, 0xB1CC,
- 0xB3FB, 0xB1D0, 0xB3FC, 0xB1D4, 0xB3FD, 0xB1DC, 0xB3FE, 0xB1DD,
- 0xB441, 0xD02E, 0xB442, 0xD02F, 0xB443, 0xD030, 0xB444, 0xD031,
- 0xB445, 0xD032, 0xB446, 0xD033, 0xB447, 0xD036, 0xB448, 0xD037,
- 0xB449, 0xD039, 0xB44A, 0xD03A, 0xB44B, 0xD03B, 0xB44C, 0xD03D,
- 0xB44D, 0xD03E, 0xB44E, 0xD03F, 0xB44F, 0xD040, 0xB450, 0xD041,
- 0xB451, 0xD042, 0xB452, 0xD043, 0xB453, 0xD046, 0xB454, 0xD048,
- 0xB455, 0xD04A, 0xB456, 0xD04B, 0xB457, 0xD04C, 0xB458, 0xD04D,
- 0xB459, 0xD04E, 0xB45A, 0xD04F, 0xB461, 0xD051, 0xB462, 0xD052,
- 0xB463, 0xD053, 0xB464, 0xD055, 0xB465, 0xD056, 0xB466, 0xD057,
- 0xB467, 0xD059, 0xB468, 0xD05A, 0xB469, 0xD05B, 0xB46A, 0xD05C,
- 0xB46B, 0xD05D, 0xB46C, 0xD05E, 0xB46D, 0xD05F, 0xB46E, 0xD061,
- 0xB46F, 0xD062, 0xB470, 0xD063, 0xB471, 0xD064, 0xB472, 0xD065,
- 0xB473, 0xD066, 0xB474, 0xD067, 0xB475, 0xD068, 0xB476, 0xD069,
- 0xB477, 0xD06A, 0xB478, 0xD06B, 0xB479, 0xD06E, 0xB47A, 0xD06F,
- 0xB481, 0xD071, 0xB482, 0xD072, 0xB483, 0xD073, 0xB484, 0xD075,
- 0xB485, 0xD076, 0xB486, 0xD077, 0xB487, 0xD078, 0xB488, 0xD079,
- 0xB489, 0xD07A, 0xB48A, 0xD07B, 0xB48B, 0xD07E, 0xB48C, 0xD07F,
- 0xB48D, 0xD080, 0xB48E, 0xD082, 0xB48F, 0xD083, 0xB490, 0xD084,
- 0xB491, 0xD085, 0xB492, 0xD086, 0xB493, 0xD087, 0xB494, 0xD088,
- 0xB495, 0xD089, 0xB496, 0xD08A, 0xB497, 0xD08B, 0xB498, 0xD08C,
- 0xB499, 0xD08D, 0xB49A, 0xD08E, 0xB49B, 0xD08F, 0xB49C, 0xD090,
- 0xB49D, 0xD091, 0xB49E, 0xD092, 0xB49F, 0xD093, 0xB4A0, 0xD094,
- 0xB4A1, 0xB1DF, 0xB4A2, 0xB1E8, 0xB4A3, 0xB1E9, 0xB4A4, 0xB1EC,
- 0xB4A5, 0xB1F0, 0xB4A6, 0xB1F9, 0xB4A7, 0xB1FB, 0xB4A8, 0xB1FD,
- 0xB4A9, 0xB204, 0xB4AA, 0xB205, 0xB4AB, 0xB208, 0xB4AC, 0xB20B,
- 0xB4AD, 0xB20C, 0xB4AE, 0xB214, 0xB4AF, 0xB215, 0xB4B0, 0xB217,
- 0xB4B1, 0xB219, 0xB4B2, 0xB220, 0xB4B3, 0xB234, 0xB4B4, 0xB23C,
- 0xB4B5, 0xB258, 0xB4B6, 0xB25C, 0xB4B7, 0xB260, 0xB4B8, 0xB268,
- 0xB4B9, 0xB269, 0xB4BA, 0xB274, 0xB4BB, 0xB275, 0xB4BC, 0xB27C,
- 0xB4BD, 0xB284, 0xB4BE, 0xB285, 0xB4BF, 0xB289, 0xB4C0, 0xB290,
- 0xB4C1, 0xB291, 0xB4C2, 0xB294, 0xB4C3, 0xB298, 0xB4C4, 0xB299,
- 0xB4C5, 0xB29A, 0xB4C6, 0xB2A0, 0xB4C7, 0xB2A1, 0xB4C8, 0xB2A3,
- 0xB4C9, 0xB2A5, 0xB4CA, 0xB2A6, 0xB4CB, 0xB2AA, 0xB4CC, 0xB2AC,
- 0xB4CD, 0xB2B0, 0xB4CE, 0xB2B4, 0xB4CF, 0xB2C8, 0xB4D0, 0xB2C9,
- 0xB4D1, 0xB2CC, 0xB4D2, 0xB2D0, 0xB4D3, 0xB2D2, 0xB4D4, 0xB2D8,
- 0xB4D5, 0xB2D9, 0xB4D6, 0xB2DB, 0xB4D7, 0xB2DD, 0xB4D8, 0xB2E2,
- 0xB4D9, 0xB2E4, 0xB4DA, 0xB2E5, 0xB4DB, 0xB2E6, 0xB4DC, 0xB2E8,
- 0xB4DD, 0xB2EB, 0xB4DE, 0xB2EC, 0xB4DF, 0xB2ED, 0xB4E0, 0xB2EE,
- 0xB4E1, 0xB2EF, 0xB4E2, 0xB2F3, 0xB4E3, 0xB2F4, 0xB4E4, 0xB2F5,
- 0xB4E5, 0xB2F7, 0xB4E6, 0xB2F8, 0xB4E7, 0xB2F9, 0xB4E8, 0xB2FA,
- 0xB4E9, 0xB2FB, 0xB4EA, 0xB2FF, 0xB4EB, 0xB300, 0xB4EC, 0xB301,
- 0xB4ED, 0xB304, 0xB4EE, 0xB308, 0xB4EF, 0xB310, 0xB4F0, 0xB311,
- 0xB4F1, 0xB313, 0xB4F2, 0xB314, 0xB4F3, 0xB315, 0xB4F4, 0xB31C,
- 0xB4F5, 0xB354, 0xB4F6, 0xB355, 0xB4F7, 0xB356, 0xB4F8, 0xB358,
- 0xB4F9, 0xB35B, 0xB4FA, 0xB35C, 0xB4FB, 0xB35E, 0xB4FC, 0xB35F,
- 0xB4FD, 0xB364, 0xB4FE, 0xB365, 0xB541, 0xD095, 0xB542, 0xD096,
- 0xB543, 0xD097, 0xB544, 0xD098, 0xB545, 0xD099, 0xB546, 0xD09A,
- 0xB547, 0xD09B, 0xB548, 0xD09C, 0xB549, 0xD09D, 0xB54A, 0xD09E,
- 0xB54B, 0xD09F, 0xB54C, 0xD0A0, 0xB54D, 0xD0A1, 0xB54E, 0xD0A2,
- 0xB54F, 0xD0A3, 0xB550, 0xD0A6, 0xB551, 0xD0A7, 0xB552, 0xD0A9,
- 0xB553, 0xD0AA, 0xB554, 0xD0AB, 0xB555, 0xD0AD, 0xB556, 0xD0AE,
- 0xB557, 0xD0AF, 0xB558, 0xD0B0, 0xB559, 0xD0B1, 0xB55A, 0xD0B2,
- 0xB561, 0xD0B3, 0xB562, 0xD0B6, 0xB563, 0xD0B8, 0xB564, 0xD0BA,
- 0xB565, 0xD0BB, 0xB566, 0xD0BC, 0xB567, 0xD0BD, 0xB568, 0xD0BE,
- 0xB569, 0xD0BF, 0xB56A, 0xD0C2, 0xB56B, 0xD0C3, 0xB56C, 0xD0C5,
- 0xB56D, 0xD0C6, 0xB56E, 0xD0C7, 0xB56F, 0xD0CA, 0xB570, 0xD0CB,
- 0xB571, 0xD0CC, 0xB572, 0xD0CD, 0xB573, 0xD0CE, 0xB574, 0xD0CF,
- 0xB575, 0xD0D2, 0xB576, 0xD0D6, 0xB577, 0xD0D7, 0xB578, 0xD0D8,
- 0xB579, 0xD0D9, 0xB57A, 0xD0DA, 0xB581, 0xD0DB, 0xB582, 0xD0DE,
- 0xB583, 0xD0DF, 0xB584, 0xD0E1, 0xB585, 0xD0E2, 0xB586, 0xD0E3,
- 0xB587, 0xD0E5, 0xB588, 0xD0E6, 0xB589, 0xD0E7, 0xB58A, 0xD0E8,
- 0xB58B, 0xD0E9, 0xB58C, 0xD0EA, 0xB58D, 0xD0EB, 0xB58E, 0xD0EE,
- 0xB58F, 0xD0F2, 0xB590, 0xD0F3, 0xB591, 0xD0F4, 0xB592, 0xD0F5,
- 0xB593, 0xD0F6, 0xB594, 0xD0F7, 0xB595, 0xD0F9, 0xB596, 0xD0FA,
- 0xB597, 0xD0FB, 0xB598, 0xD0FC, 0xB599, 0xD0FD, 0xB59A, 0xD0FE,
- 0xB59B, 0xD0FF, 0xB59C, 0xD100, 0xB59D, 0xD101, 0xB59E, 0xD102,
- 0xB59F, 0xD103, 0xB5A0, 0xD104, 0xB5A1, 0xB367, 0xB5A2, 0xB369,
- 0xB5A3, 0xB36B, 0xB5A4, 0xB36E, 0xB5A5, 0xB370, 0xB5A6, 0xB371,
- 0xB5A7, 0xB374, 0xB5A8, 0xB378, 0xB5A9, 0xB380, 0xB5AA, 0xB381,
- 0xB5AB, 0xB383, 0xB5AC, 0xB384, 0xB5AD, 0xB385, 0xB5AE, 0xB38C,
- 0xB5AF, 0xB390, 0xB5B0, 0xB394, 0xB5B1, 0xB3A0, 0xB5B2, 0xB3A1,
- 0xB5B3, 0xB3A8, 0xB5B4, 0xB3AC, 0xB5B5, 0xB3C4, 0xB5B6, 0xB3C5,
- 0xB5B7, 0xB3C8, 0xB5B8, 0xB3CB, 0xB5B9, 0xB3CC, 0xB5BA, 0xB3CE,
- 0xB5BB, 0xB3D0, 0xB5BC, 0xB3D4, 0xB5BD, 0xB3D5, 0xB5BE, 0xB3D7,
- 0xB5BF, 0xB3D9, 0xB5C0, 0xB3DB, 0xB5C1, 0xB3DD, 0xB5C2, 0xB3E0,
- 0xB5C3, 0xB3E4, 0xB5C4, 0xB3E8, 0xB5C5, 0xB3FC, 0xB5C6, 0xB410,
- 0xB5C7, 0xB418, 0xB5C8, 0xB41C, 0xB5C9, 0xB420, 0xB5CA, 0xB428,
- 0xB5CB, 0xB429, 0xB5CC, 0xB42B, 0xB5CD, 0xB434, 0xB5CE, 0xB450,
- 0xB5CF, 0xB451, 0xB5D0, 0xB454, 0xB5D1, 0xB458, 0xB5D2, 0xB460,
- 0xB5D3, 0xB461, 0xB5D4, 0xB463, 0xB5D5, 0xB465, 0xB5D6, 0xB46C,
- 0xB5D7, 0xB480, 0xB5D8, 0xB488, 0xB5D9, 0xB49D, 0xB5DA, 0xB4A4,
- 0xB5DB, 0xB4A8, 0xB5DC, 0xB4AC, 0xB5DD, 0xB4B5, 0xB5DE, 0xB4B7,
- 0xB5DF, 0xB4B9, 0xB5E0, 0xB4C0, 0xB5E1, 0xB4C4, 0xB5E2, 0xB4C8,
- 0xB5E3, 0xB4D0, 0xB5E4, 0xB4D5, 0xB5E5, 0xB4DC, 0xB5E6, 0xB4DD,
- 0xB5E7, 0xB4E0, 0xB5E8, 0xB4E3, 0xB5E9, 0xB4E4, 0xB5EA, 0xB4E6,
- 0xB5EB, 0xB4EC, 0xB5EC, 0xB4ED, 0xB5ED, 0xB4EF, 0xB5EE, 0xB4F1,
- 0xB5EF, 0xB4F8, 0xB5F0, 0xB514, 0xB5F1, 0xB515, 0xB5F2, 0xB518,
- 0xB5F3, 0xB51B, 0xB5F4, 0xB51C, 0xB5F5, 0xB524, 0xB5F6, 0xB525,
- 0xB5F7, 0xB527, 0xB5F8, 0xB528, 0xB5F9, 0xB529, 0xB5FA, 0xB52A,
- 0xB5FB, 0xB530, 0xB5FC, 0xB531, 0xB5FD, 0xB534, 0xB5FE, 0xB538,
- 0xB641, 0xD105, 0xB642, 0xD106, 0xB643, 0xD107, 0xB644, 0xD108,
- 0xB645, 0xD109, 0xB646, 0xD10A, 0xB647, 0xD10B, 0xB648, 0xD10C,
- 0xB649, 0xD10E, 0xB64A, 0xD10F, 0xB64B, 0xD110, 0xB64C, 0xD111,
- 0xB64D, 0xD112, 0xB64E, 0xD113, 0xB64F, 0xD114, 0xB650, 0xD115,
- 0xB651, 0xD116, 0xB652, 0xD117, 0xB653, 0xD118, 0xB654, 0xD119,
- 0xB655, 0xD11A, 0xB656, 0xD11B, 0xB657, 0xD11C, 0xB658, 0xD11D,
- 0xB659, 0xD11E, 0xB65A, 0xD11F, 0xB661, 0xD120, 0xB662, 0xD121,
- 0xB663, 0xD122, 0xB664, 0xD123, 0xB665, 0xD124, 0xB666, 0xD125,
- 0xB667, 0xD126, 0xB668, 0xD127, 0xB669, 0xD128, 0xB66A, 0xD129,
- 0xB66B, 0xD12A, 0xB66C, 0xD12B, 0xB66D, 0xD12C, 0xB66E, 0xD12D,
- 0xB66F, 0xD12E, 0xB670, 0xD12F, 0xB671, 0xD132, 0xB672, 0xD133,
- 0xB673, 0xD135, 0xB674, 0xD136, 0xB675, 0xD137, 0xB676, 0xD139,
- 0xB677, 0xD13B, 0xB678, 0xD13C, 0xB679, 0xD13D, 0xB67A, 0xD13E,
- 0xB681, 0xD13F, 0xB682, 0xD142, 0xB683, 0xD146, 0xB684, 0xD147,
- 0xB685, 0xD148, 0xB686, 0xD149, 0xB687, 0xD14A, 0xB688, 0xD14B,
- 0xB689, 0xD14E, 0xB68A, 0xD14F, 0xB68B, 0xD151, 0xB68C, 0xD152,
- 0xB68D, 0xD153, 0xB68E, 0xD155, 0xB68F, 0xD156, 0xB690, 0xD157,
- 0xB691, 0xD158, 0xB692, 0xD159, 0xB693, 0xD15A, 0xB694, 0xD15B,
- 0xB695, 0xD15E, 0xB696, 0xD160, 0xB697, 0xD162, 0xB698, 0xD163,
- 0xB699, 0xD164, 0xB69A, 0xD165, 0xB69B, 0xD166, 0xB69C, 0xD167,
- 0xB69D, 0xD169, 0xB69E, 0xD16A, 0xB69F, 0xD16B, 0xB6A0, 0xD16D,
- 0xB6A1, 0xB540, 0xB6A2, 0xB541, 0xB6A3, 0xB543, 0xB6A4, 0xB544,
- 0xB6A5, 0xB545, 0xB6A6, 0xB54B, 0xB6A7, 0xB54C, 0xB6A8, 0xB54D,
- 0xB6A9, 0xB550, 0xB6AA, 0xB554, 0xB6AB, 0xB55C, 0xB6AC, 0xB55D,
- 0xB6AD, 0xB55F, 0xB6AE, 0xB560, 0xB6AF, 0xB561, 0xB6B0, 0xB5A0,
- 0xB6B1, 0xB5A1, 0xB6B2, 0xB5A4, 0xB6B3, 0xB5A8, 0xB6B4, 0xB5AA,
- 0xB6B5, 0xB5AB, 0xB6B6, 0xB5B0, 0xB6B7, 0xB5B1, 0xB6B8, 0xB5B3,
- 0xB6B9, 0xB5B4, 0xB6BA, 0xB5B5, 0xB6BB, 0xB5BB, 0xB6BC, 0xB5BC,
- 0xB6BD, 0xB5BD, 0xB6BE, 0xB5C0, 0xB6BF, 0xB5C4, 0xB6C0, 0xB5CC,
- 0xB6C1, 0xB5CD, 0xB6C2, 0xB5CF, 0xB6C3, 0xB5D0, 0xB6C4, 0xB5D1,
- 0xB6C5, 0xB5D8, 0xB6C6, 0xB5EC, 0xB6C7, 0xB610, 0xB6C8, 0xB611,
- 0xB6C9, 0xB614, 0xB6CA, 0xB618, 0xB6CB, 0xB625, 0xB6CC, 0xB62C,
- 0xB6CD, 0xB634, 0xB6CE, 0xB648, 0xB6CF, 0xB664, 0xB6D0, 0xB668,
- 0xB6D1, 0xB69C, 0xB6D2, 0xB69D, 0xB6D3, 0xB6A0, 0xB6D4, 0xB6A4,
- 0xB6D5, 0xB6AB, 0xB6D6, 0xB6AC, 0xB6D7, 0xB6B1, 0xB6D8, 0xB6D4,
- 0xB6D9, 0xB6F0, 0xB6DA, 0xB6F4, 0xB6DB, 0xB6F8, 0xB6DC, 0xB700,
- 0xB6DD, 0xB701, 0xB6DE, 0xB705, 0xB6DF, 0xB728, 0xB6E0, 0xB729,
- 0xB6E1, 0xB72C, 0xB6E2, 0xB72F, 0xB6E3, 0xB730, 0xB6E4, 0xB738,
- 0xB6E5, 0xB739, 0xB6E6, 0xB73B, 0xB6E7, 0xB744, 0xB6E8, 0xB748,
- 0xB6E9, 0xB74C, 0xB6EA, 0xB754, 0xB6EB, 0xB755, 0xB6EC, 0xB760,
- 0xB6ED, 0xB764, 0xB6EE, 0xB768, 0xB6EF, 0xB770, 0xB6F0, 0xB771,
- 0xB6F1, 0xB773, 0xB6F2, 0xB775, 0xB6F3, 0xB77C, 0xB6F4, 0xB77D,
- 0xB6F5, 0xB780, 0xB6F6, 0xB784, 0xB6F7, 0xB78C, 0xB6F8, 0xB78D,
- 0xB6F9, 0xB78F, 0xB6FA, 0xB790, 0xB6FB, 0xB791, 0xB6FC, 0xB792,
- 0xB6FD, 0xB796, 0xB6FE, 0xB797, 0xB741, 0xD16E, 0xB742, 0xD16F,
- 0xB743, 0xD170, 0xB744, 0xD171, 0xB745, 0xD172, 0xB746, 0xD173,
- 0xB747, 0xD174, 0xB748, 0xD175, 0xB749, 0xD176, 0xB74A, 0xD177,
- 0xB74B, 0xD178, 0xB74C, 0xD179, 0xB74D, 0xD17A, 0xB74E, 0xD17B,
- 0xB74F, 0xD17D, 0xB750, 0xD17E, 0xB751, 0xD17F, 0xB752, 0xD180,
- 0xB753, 0xD181, 0xB754, 0xD182, 0xB755, 0xD183, 0xB756, 0xD185,
- 0xB757, 0xD186, 0xB758, 0xD187, 0xB759, 0xD189, 0xB75A, 0xD18A,
- 0xB761, 0xD18B, 0xB762, 0xD18C, 0xB763, 0xD18D, 0xB764, 0xD18E,
- 0xB765, 0xD18F, 0xB766, 0xD190, 0xB767, 0xD191, 0xB768, 0xD192,
- 0xB769, 0xD193, 0xB76A, 0xD194, 0xB76B, 0xD195, 0xB76C, 0xD196,
- 0xB76D, 0xD197, 0xB76E, 0xD198, 0xB76F, 0xD199, 0xB770, 0xD19A,
- 0xB771, 0xD19B, 0xB772, 0xD19C, 0xB773, 0xD19D, 0xB774, 0xD19E,
- 0xB775, 0xD19F, 0xB776, 0xD1A2, 0xB777, 0xD1A3, 0xB778, 0xD1A5,
- 0xB779, 0xD1A6, 0xB77A, 0xD1A7, 0xB781, 0xD1A9, 0xB782, 0xD1AA,
- 0xB783, 0xD1AB, 0xB784, 0xD1AC, 0xB785, 0xD1AD, 0xB786, 0xD1AE,
- 0xB787, 0xD1AF, 0xB788, 0xD1B2, 0xB789, 0xD1B4, 0xB78A, 0xD1B6,
- 0xB78B, 0xD1B7, 0xB78C, 0xD1B8, 0xB78D, 0xD1B9, 0xB78E, 0xD1BB,
- 0xB78F, 0xD1BD, 0xB790, 0xD1BE, 0xB791, 0xD1BF, 0xB792, 0xD1C1,
- 0xB793, 0xD1C2, 0xB794, 0xD1C3, 0xB795, 0xD1C4, 0xB796, 0xD1C5,
- 0xB797, 0xD1C6, 0xB798, 0xD1C7, 0xB799, 0xD1C8, 0xB79A, 0xD1C9,
- 0xB79B, 0xD1CA, 0xB79C, 0xD1CB, 0xB79D, 0xD1CC, 0xB79E, 0xD1CD,
- 0xB79F, 0xD1CE, 0xB7A0, 0xD1CF, 0xB7A1, 0xB798, 0xB7A2, 0xB799,
- 0xB7A3, 0xB79C, 0xB7A4, 0xB7A0, 0xB7A5, 0xB7A8, 0xB7A6, 0xB7A9,
- 0xB7A7, 0xB7AB, 0xB7A8, 0xB7AC, 0xB7A9, 0xB7AD, 0xB7AA, 0xB7B4,
- 0xB7AB, 0xB7B5, 0xB7AC, 0xB7B8, 0xB7AD, 0xB7C7, 0xB7AE, 0xB7C9,
- 0xB7AF, 0xB7EC, 0xB7B0, 0xB7ED, 0xB7B1, 0xB7F0, 0xB7B2, 0xB7F4,
- 0xB7B3, 0xB7FC, 0xB7B4, 0xB7FD, 0xB7B5, 0xB7FF, 0xB7B6, 0xB800,
- 0xB7B7, 0xB801, 0xB7B8, 0xB807, 0xB7B9, 0xB808, 0xB7BA, 0xB809,
- 0xB7BB, 0xB80C, 0xB7BC, 0xB810, 0xB7BD, 0xB818, 0xB7BE, 0xB819,
- 0xB7BF, 0xB81B, 0xB7C0, 0xB81D, 0xB7C1, 0xB824, 0xB7C2, 0xB825,
- 0xB7C3, 0xB828, 0xB7C4, 0xB82C, 0xB7C5, 0xB834, 0xB7C6, 0xB835,
- 0xB7C7, 0xB837, 0xB7C8, 0xB838, 0xB7C9, 0xB839, 0xB7CA, 0xB840,
- 0xB7CB, 0xB844, 0xB7CC, 0xB851, 0xB7CD, 0xB853, 0xB7CE, 0xB85C,
- 0xB7CF, 0xB85D, 0xB7D0, 0xB860, 0xB7D1, 0xB864, 0xB7D2, 0xB86C,
- 0xB7D3, 0xB86D, 0xB7D4, 0xB86F, 0xB7D5, 0xB871, 0xB7D6, 0xB878,
- 0xB7D7, 0xB87C, 0xB7D8, 0xB88D, 0xB7D9, 0xB8A8, 0xB7DA, 0xB8B0,
- 0xB7DB, 0xB8B4, 0xB7DC, 0xB8B8, 0xB7DD, 0xB8C0, 0xB7DE, 0xB8C1,
- 0xB7DF, 0xB8C3, 0xB7E0, 0xB8C5, 0xB7E1, 0xB8CC, 0xB7E2, 0xB8D0,
- 0xB7E3, 0xB8D4, 0xB7E4, 0xB8DD, 0xB7E5, 0xB8DF, 0xB7E6, 0xB8E1,
- 0xB7E7, 0xB8E8, 0xB7E8, 0xB8E9, 0xB7E9, 0xB8EC, 0xB7EA, 0xB8F0,
- 0xB7EB, 0xB8F8, 0xB7EC, 0xB8F9, 0xB7ED, 0xB8FB, 0xB7EE, 0xB8FD,
- 0xB7EF, 0xB904, 0xB7F0, 0xB918, 0xB7F1, 0xB920, 0xB7F2, 0xB93C,
- 0xB7F3, 0xB93D, 0xB7F4, 0xB940, 0xB7F5, 0xB944, 0xB7F6, 0xB94C,
- 0xB7F7, 0xB94F, 0xB7F8, 0xB951, 0xB7F9, 0xB958, 0xB7FA, 0xB959,
- 0xB7FB, 0xB95C, 0xB7FC, 0xB960, 0xB7FD, 0xB968, 0xB7FE, 0xB969,
- 0xB841, 0xD1D0, 0xB842, 0xD1D1, 0xB843, 0xD1D2, 0xB844, 0xD1D3,
- 0xB845, 0xD1D4, 0xB846, 0xD1D5, 0xB847, 0xD1D6, 0xB848, 0xD1D7,
- 0xB849, 0xD1D9, 0xB84A, 0xD1DA, 0xB84B, 0xD1DB, 0xB84C, 0xD1DC,
- 0xB84D, 0xD1DD, 0xB84E, 0xD1DE, 0xB84F, 0xD1DF, 0xB850, 0xD1E0,
- 0xB851, 0xD1E1, 0xB852, 0xD1E2, 0xB853, 0xD1E3, 0xB854, 0xD1E4,
- 0xB855, 0xD1E5, 0xB856, 0xD1E6, 0xB857, 0xD1E7, 0xB858, 0xD1E8,
- 0xB859, 0xD1E9, 0xB85A, 0xD1EA, 0xB861, 0xD1EB, 0xB862, 0xD1EC,
- 0xB863, 0xD1ED, 0xB864, 0xD1EE, 0xB865, 0xD1EF, 0xB866, 0xD1F0,
- 0xB867, 0xD1F1, 0xB868, 0xD1F2, 0xB869, 0xD1F3, 0xB86A, 0xD1F5,
- 0xB86B, 0xD1F6, 0xB86C, 0xD1F7, 0xB86D, 0xD1F9, 0xB86E, 0xD1FA,
- 0xB86F, 0xD1FB, 0xB870, 0xD1FC, 0xB871, 0xD1FD, 0xB872, 0xD1FE,
- 0xB873, 0xD1FF, 0xB874, 0xD200, 0xB875, 0xD201, 0xB876, 0xD202,
- 0xB877, 0xD203, 0xB878, 0xD204, 0xB879, 0xD205, 0xB87A, 0xD206,
- 0xB881, 0xD208, 0xB882, 0xD20A, 0xB883, 0xD20B, 0xB884, 0xD20C,
- 0xB885, 0xD20D, 0xB886, 0xD20E, 0xB887, 0xD20F, 0xB888, 0xD211,
- 0xB889, 0xD212, 0xB88A, 0xD213, 0xB88B, 0xD214, 0xB88C, 0xD215,
- 0xB88D, 0xD216, 0xB88E, 0xD217, 0xB88F, 0xD218, 0xB890, 0xD219,
- 0xB891, 0xD21A, 0xB892, 0xD21B, 0xB893, 0xD21C, 0xB894, 0xD21D,
- 0xB895, 0xD21E, 0xB896, 0xD21F, 0xB897, 0xD220, 0xB898, 0xD221,
- 0xB899, 0xD222, 0xB89A, 0xD223, 0xB89B, 0xD224, 0xB89C, 0xD225,
- 0xB89D, 0xD226, 0xB89E, 0xD227, 0xB89F, 0xD228, 0xB8A0, 0xD229,
- 0xB8A1, 0xB96B, 0xB8A2, 0xB96D, 0xB8A3, 0xB974, 0xB8A4, 0xB975,
- 0xB8A5, 0xB978, 0xB8A6, 0xB97C, 0xB8A7, 0xB984, 0xB8A8, 0xB985,
- 0xB8A9, 0xB987, 0xB8AA, 0xB989, 0xB8AB, 0xB98A, 0xB8AC, 0xB98D,
- 0xB8AD, 0xB98E, 0xB8AE, 0xB9AC, 0xB8AF, 0xB9AD, 0xB8B0, 0xB9B0,
- 0xB8B1, 0xB9B4, 0xB8B2, 0xB9BC, 0xB8B3, 0xB9BD, 0xB8B4, 0xB9BF,
- 0xB8B5, 0xB9C1, 0xB8B6, 0xB9C8, 0xB8B7, 0xB9C9, 0xB8B8, 0xB9CC,
- 0xB8B9, 0xB9CE, 0xB8BA, 0xB9CF, 0xB8BB, 0xB9D0, 0xB8BC, 0xB9D1,
- 0xB8BD, 0xB9D2, 0xB8BE, 0xB9D8, 0xB8BF, 0xB9D9, 0xB8C0, 0xB9DB,
- 0xB8C1, 0xB9DD, 0xB8C2, 0xB9DE, 0xB8C3, 0xB9E1, 0xB8C4, 0xB9E3,
- 0xB8C5, 0xB9E4, 0xB8C6, 0xB9E5, 0xB8C7, 0xB9E8, 0xB8C8, 0xB9EC,
- 0xB8C9, 0xB9F4, 0xB8CA, 0xB9F5, 0xB8CB, 0xB9F7, 0xB8CC, 0xB9F8,
- 0xB8CD, 0xB9F9, 0xB8CE, 0xB9FA, 0xB8CF, 0xBA00, 0xB8D0, 0xBA01,
- 0xB8D1, 0xBA08, 0xB8D2, 0xBA15, 0xB8D3, 0xBA38, 0xB8D4, 0xBA39,
- 0xB8D5, 0xBA3C, 0xB8D6, 0xBA40, 0xB8D7, 0xBA42, 0xB8D8, 0xBA48,
- 0xB8D9, 0xBA49, 0xB8DA, 0xBA4B, 0xB8DB, 0xBA4D, 0xB8DC, 0xBA4E,
- 0xB8DD, 0xBA53, 0xB8DE, 0xBA54, 0xB8DF, 0xBA55, 0xB8E0, 0xBA58,
- 0xB8E1, 0xBA5C, 0xB8E2, 0xBA64, 0xB8E3, 0xBA65, 0xB8E4, 0xBA67,
- 0xB8E5, 0xBA68, 0xB8E6, 0xBA69, 0xB8E7, 0xBA70, 0xB8E8, 0xBA71,
- 0xB8E9, 0xBA74, 0xB8EA, 0xBA78, 0xB8EB, 0xBA83, 0xB8EC, 0xBA84,
- 0xB8ED, 0xBA85, 0xB8EE, 0xBA87, 0xB8EF, 0xBA8C, 0xB8F0, 0xBAA8,
- 0xB8F1, 0xBAA9, 0xB8F2, 0xBAAB, 0xB8F3, 0xBAAC, 0xB8F4, 0xBAB0,
- 0xB8F5, 0xBAB2, 0xB8F6, 0xBAB8, 0xB8F7, 0xBAB9, 0xB8F8, 0xBABB,
- 0xB8F9, 0xBABD, 0xB8FA, 0xBAC4, 0xB8FB, 0xBAC8, 0xB8FC, 0xBAD8,
- 0xB8FD, 0xBAD9, 0xB8FE, 0xBAFC, 0xB941, 0xD22A, 0xB942, 0xD22B,
- 0xB943, 0xD22E, 0xB944, 0xD22F, 0xB945, 0xD231, 0xB946, 0xD232,
- 0xB947, 0xD233, 0xB948, 0xD235, 0xB949, 0xD236, 0xB94A, 0xD237,
- 0xB94B, 0xD238, 0xB94C, 0xD239, 0xB94D, 0xD23A, 0xB94E, 0xD23B,
- 0xB94F, 0xD23E, 0xB950, 0xD240, 0xB951, 0xD242, 0xB952, 0xD243,
- 0xB953, 0xD244, 0xB954, 0xD245, 0xB955, 0xD246, 0xB956, 0xD247,
- 0xB957, 0xD249, 0xB958, 0xD24A, 0xB959, 0xD24B, 0xB95A, 0xD24C,
- 0xB961, 0xD24D, 0xB962, 0xD24E, 0xB963, 0xD24F, 0xB964, 0xD250,
- 0xB965, 0xD251, 0xB966, 0xD252, 0xB967, 0xD253, 0xB968, 0xD254,
- 0xB969, 0xD255, 0xB96A, 0xD256, 0xB96B, 0xD257, 0xB96C, 0xD258,
- 0xB96D, 0xD259, 0xB96E, 0xD25A, 0xB96F, 0xD25B, 0xB970, 0xD25D,
- 0xB971, 0xD25E, 0xB972, 0xD25F, 0xB973, 0xD260, 0xB974, 0xD261,
- 0xB975, 0xD262, 0xB976, 0xD263, 0xB977, 0xD265, 0xB978, 0xD266,
- 0xB979, 0xD267, 0xB97A, 0xD268, 0xB981, 0xD269, 0xB982, 0xD26A,
- 0xB983, 0xD26B, 0xB984, 0xD26C, 0xB985, 0xD26D, 0xB986, 0xD26E,
- 0xB987, 0xD26F, 0xB988, 0xD270, 0xB989, 0xD271, 0xB98A, 0xD272,
- 0xB98B, 0xD273, 0xB98C, 0xD274, 0xB98D, 0xD275, 0xB98E, 0xD276,
- 0xB98F, 0xD277, 0xB990, 0xD278, 0xB991, 0xD279, 0xB992, 0xD27A,
- 0xB993, 0xD27B, 0xB994, 0xD27C, 0xB995, 0xD27D, 0xB996, 0xD27E,
- 0xB997, 0xD27F, 0xB998, 0xD282, 0xB999, 0xD283, 0xB99A, 0xD285,
- 0xB99B, 0xD286, 0xB99C, 0xD287, 0xB99D, 0xD289, 0xB99E, 0xD28A,
- 0xB99F, 0xD28B, 0xB9A0, 0xD28C, 0xB9A1, 0xBB00, 0xB9A2, 0xBB04,
- 0xB9A3, 0xBB0D, 0xB9A4, 0xBB0F, 0xB9A5, 0xBB11, 0xB9A6, 0xBB18,
- 0xB9A7, 0xBB1C, 0xB9A8, 0xBB20, 0xB9A9, 0xBB29, 0xB9AA, 0xBB2B,
- 0xB9AB, 0xBB34, 0xB9AC, 0xBB35, 0xB9AD, 0xBB36, 0xB9AE, 0xBB38,
- 0xB9AF, 0xBB3B, 0xB9B0, 0xBB3C, 0xB9B1, 0xBB3D, 0xB9B2, 0xBB3E,
- 0xB9B3, 0xBB44, 0xB9B4, 0xBB45, 0xB9B5, 0xBB47, 0xB9B6, 0xBB49,
- 0xB9B7, 0xBB4D, 0xB9B8, 0xBB4F, 0xB9B9, 0xBB50, 0xB9BA, 0xBB54,
- 0xB9BB, 0xBB58, 0xB9BC, 0xBB61, 0xB9BD, 0xBB63, 0xB9BE, 0xBB6C,
- 0xB9BF, 0xBB88, 0xB9C0, 0xBB8C, 0xB9C1, 0xBB90, 0xB9C2, 0xBBA4,
- 0xB9C3, 0xBBA8, 0xB9C4, 0xBBAC, 0xB9C5, 0xBBB4, 0xB9C6, 0xBBB7,
- 0xB9C7, 0xBBC0, 0xB9C8, 0xBBC4, 0xB9C9, 0xBBC8, 0xB9CA, 0xBBD0,
- 0xB9CB, 0xBBD3, 0xB9CC, 0xBBF8, 0xB9CD, 0xBBF9, 0xB9CE, 0xBBFC,
- 0xB9CF, 0xBBFF, 0xB9D0, 0xBC00, 0xB9D1, 0xBC02, 0xB9D2, 0xBC08,
- 0xB9D3, 0xBC09, 0xB9D4, 0xBC0B, 0xB9D5, 0xBC0C, 0xB9D6, 0xBC0D,
- 0xB9D7, 0xBC0F, 0xB9D8, 0xBC11, 0xB9D9, 0xBC14, 0xB9DA, 0xBC15,
- 0xB9DB, 0xBC16, 0xB9DC, 0xBC17, 0xB9DD, 0xBC18, 0xB9DE, 0xBC1B,
- 0xB9DF, 0xBC1C, 0xB9E0, 0xBC1D, 0xB9E1, 0xBC1E, 0xB9E2, 0xBC1F,
- 0xB9E3, 0xBC24, 0xB9E4, 0xBC25, 0xB9E5, 0xBC27, 0xB9E6, 0xBC29,
- 0xB9E7, 0xBC2D, 0xB9E8, 0xBC30, 0xB9E9, 0xBC31, 0xB9EA, 0xBC34,
- 0xB9EB, 0xBC38, 0xB9EC, 0xBC40, 0xB9ED, 0xBC41, 0xB9EE, 0xBC43,
- 0xB9EF, 0xBC44, 0xB9F0, 0xBC45, 0xB9F1, 0xBC49, 0xB9F2, 0xBC4C,
- 0xB9F3, 0xBC4D, 0xB9F4, 0xBC50, 0xB9F5, 0xBC5D, 0xB9F6, 0xBC84,
- 0xB9F7, 0xBC85, 0xB9F8, 0xBC88, 0xB9F9, 0xBC8B, 0xB9FA, 0xBC8C,
- 0xB9FB, 0xBC8E, 0xB9FC, 0xBC94, 0xB9FD, 0xBC95, 0xB9FE, 0xBC97,
- 0xBA41, 0xD28D, 0xBA42, 0xD28E, 0xBA43, 0xD28F, 0xBA44, 0xD292,
- 0xBA45, 0xD293, 0xBA46, 0xD294, 0xBA47, 0xD296, 0xBA48, 0xD297,
- 0xBA49, 0xD298, 0xBA4A, 0xD299, 0xBA4B, 0xD29A, 0xBA4C, 0xD29B,
- 0xBA4D, 0xD29D, 0xBA4E, 0xD29E, 0xBA4F, 0xD29F, 0xBA50, 0xD2A1,
- 0xBA51, 0xD2A2, 0xBA52, 0xD2A3, 0xBA53, 0xD2A5, 0xBA54, 0xD2A6,
- 0xBA55, 0xD2A7, 0xBA56, 0xD2A8, 0xBA57, 0xD2A9, 0xBA58, 0xD2AA,
- 0xBA59, 0xD2AB, 0xBA5A, 0xD2AD, 0xBA61, 0xD2AE, 0xBA62, 0xD2AF,
- 0xBA63, 0xD2B0, 0xBA64, 0xD2B2, 0xBA65, 0xD2B3, 0xBA66, 0xD2B4,
- 0xBA67, 0xD2B5, 0xBA68, 0xD2B6, 0xBA69, 0xD2B7, 0xBA6A, 0xD2BA,
- 0xBA6B, 0xD2BB, 0xBA6C, 0xD2BD, 0xBA6D, 0xD2BE, 0xBA6E, 0xD2C1,
- 0xBA6F, 0xD2C3, 0xBA70, 0xD2C4, 0xBA71, 0xD2C5, 0xBA72, 0xD2C6,
- 0xBA73, 0xD2C7, 0xBA74, 0xD2CA, 0xBA75, 0xD2CC, 0xBA76, 0xD2CD,
- 0xBA77, 0xD2CE, 0xBA78, 0xD2CF, 0xBA79, 0xD2D0, 0xBA7A, 0xD2D1,
- 0xBA81, 0xD2D2, 0xBA82, 0xD2D3, 0xBA83, 0xD2D5, 0xBA84, 0xD2D6,
- 0xBA85, 0xD2D7, 0xBA86, 0xD2D9, 0xBA87, 0xD2DA, 0xBA88, 0xD2DB,
- 0xBA89, 0xD2DD, 0xBA8A, 0xD2DE, 0xBA8B, 0xD2DF, 0xBA8C, 0xD2E0,
- 0xBA8D, 0xD2E1, 0xBA8E, 0xD2E2, 0xBA8F, 0xD2E3, 0xBA90, 0xD2E6,
- 0xBA91, 0xD2E7, 0xBA92, 0xD2E8, 0xBA93, 0xD2E9, 0xBA94, 0xD2EA,
- 0xBA95, 0xD2EB, 0xBA96, 0xD2EC, 0xBA97, 0xD2ED, 0xBA98, 0xD2EE,
- 0xBA99, 0xD2EF, 0xBA9A, 0xD2F2, 0xBA9B, 0xD2F3, 0xBA9C, 0xD2F5,
- 0xBA9D, 0xD2F6, 0xBA9E, 0xD2F7, 0xBA9F, 0xD2F9, 0xBAA0, 0xD2FA,
- 0xBAA1, 0xBC99, 0xBAA2, 0xBC9A, 0xBAA3, 0xBCA0, 0xBAA4, 0xBCA1,
- 0xBAA5, 0xBCA4, 0xBAA6, 0xBCA7, 0xBAA7, 0xBCA8, 0xBAA8, 0xBCB0,
- 0xBAA9, 0xBCB1, 0xBAAA, 0xBCB3, 0xBAAB, 0xBCB4, 0xBAAC, 0xBCB5,
- 0xBAAD, 0xBCBC, 0xBAAE, 0xBCBD, 0xBAAF, 0xBCC0, 0xBAB0, 0xBCC4,
- 0xBAB1, 0xBCCD, 0xBAB2, 0xBCCF, 0xBAB3, 0xBCD0, 0xBAB4, 0xBCD1,
- 0xBAB5, 0xBCD5, 0xBAB6, 0xBCD8, 0xBAB7, 0xBCDC, 0xBAB8, 0xBCF4,
- 0xBAB9, 0xBCF5, 0xBABA, 0xBCF6, 0xBABB, 0xBCF8, 0xBABC, 0xBCFC,
- 0xBABD, 0xBD04, 0xBABE, 0xBD05, 0xBABF, 0xBD07, 0xBAC0, 0xBD09,
- 0xBAC1, 0xBD10, 0xBAC2, 0xBD14, 0xBAC3, 0xBD24, 0xBAC4, 0xBD2C,
- 0xBAC5, 0xBD40, 0xBAC6, 0xBD48, 0xBAC7, 0xBD49, 0xBAC8, 0xBD4C,
- 0xBAC9, 0xBD50, 0xBACA, 0xBD58, 0xBACB, 0xBD59, 0xBACC, 0xBD64,
- 0xBACD, 0xBD68, 0xBACE, 0xBD80, 0xBACF, 0xBD81, 0xBAD0, 0xBD84,
- 0xBAD1, 0xBD87, 0xBAD2, 0xBD88, 0xBAD3, 0xBD89, 0xBAD4, 0xBD8A,
- 0xBAD5, 0xBD90, 0xBAD6, 0xBD91, 0xBAD7, 0xBD93, 0xBAD8, 0xBD95,
- 0xBAD9, 0xBD99, 0xBADA, 0xBD9A, 0xBADB, 0xBD9C, 0xBADC, 0xBDA4,
- 0xBADD, 0xBDB0, 0xBADE, 0xBDB8, 0xBADF, 0xBDD4, 0xBAE0, 0xBDD5,
- 0xBAE1, 0xBDD8, 0xBAE2, 0xBDDC, 0xBAE3, 0xBDE9, 0xBAE4, 0xBDF0,
- 0xBAE5, 0xBDF4, 0xBAE6, 0xBDF8, 0xBAE7, 0xBE00, 0xBAE8, 0xBE03,
- 0xBAE9, 0xBE05, 0xBAEA, 0xBE0C, 0xBAEB, 0xBE0D, 0xBAEC, 0xBE10,
- 0xBAED, 0xBE14, 0xBAEE, 0xBE1C, 0xBAEF, 0xBE1D, 0xBAF0, 0xBE1F,
- 0xBAF1, 0xBE44, 0xBAF2, 0xBE45, 0xBAF3, 0xBE48, 0xBAF4, 0xBE4C,
- 0xBAF5, 0xBE4E, 0xBAF6, 0xBE54, 0xBAF7, 0xBE55, 0xBAF8, 0xBE57,
- 0xBAF9, 0xBE59, 0xBAFA, 0xBE5A, 0xBAFB, 0xBE5B, 0xBAFC, 0xBE60,
- 0xBAFD, 0xBE61, 0xBAFE, 0xBE64, 0xBB41, 0xD2FB, 0xBB42, 0xD2FC,
- 0xBB43, 0xD2FD, 0xBB44, 0xD2FE, 0xBB45, 0xD2FF, 0xBB46, 0xD302,
- 0xBB47, 0xD304, 0xBB48, 0xD306, 0xBB49, 0xD307, 0xBB4A, 0xD308,
- 0xBB4B, 0xD309, 0xBB4C, 0xD30A, 0xBB4D, 0xD30B, 0xBB4E, 0xD30F,
- 0xBB4F, 0xD311, 0xBB50, 0xD312, 0xBB51, 0xD313, 0xBB52, 0xD315,
- 0xBB53, 0xD317, 0xBB54, 0xD318, 0xBB55, 0xD319, 0xBB56, 0xD31A,
- 0xBB57, 0xD31B, 0xBB58, 0xD31E, 0xBB59, 0xD322, 0xBB5A, 0xD323,
- 0xBB61, 0xD324, 0xBB62, 0xD326, 0xBB63, 0xD327, 0xBB64, 0xD32A,
- 0xBB65, 0xD32B, 0xBB66, 0xD32D, 0xBB67, 0xD32E, 0xBB68, 0xD32F,
- 0xBB69, 0xD331, 0xBB6A, 0xD332, 0xBB6B, 0xD333, 0xBB6C, 0xD334,
- 0xBB6D, 0xD335, 0xBB6E, 0xD336, 0xBB6F, 0xD337, 0xBB70, 0xD33A,
- 0xBB71, 0xD33E, 0xBB72, 0xD33F, 0xBB73, 0xD340, 0xBB74, 0xD341,
- 0xBB75, 0xD342, 0xBB76, 0xD343, 0xBB77, 0xD346, 0xBB78, 0xD347,
- 0xBB79, 0xD348, 0xBB7A, 0xD349, 0xBB81, 0xD34A, 0xBB82, 0xD34B,
- 0xBB83, 0xD34C, 0xBB84, 0xD34D, 0xBB85, 0xD34E, 0xBB86, 0xD34F,
- 0xBB87, 0xD350, 0xBB88, 0xD351, 0xBB89, 0xD352, 0xBB8A, 0xD353,
- 0xBB8B, 0xD354, 0xBB8C, 0xD355, 0xBB8D, 0xD356, 0xBB8E, 0xD357,
- 0xBB8F, 0xD358, 0xBB90, 0xD359, 0xBB91, 0xD35A, 0xBB92, 0xD35B,
- 0xBB93, 0xD35C, 0xBB94, 0xD35D, 0xBB95, 0xD35E, 0xBB96, 0xD35F,
- 0xBB97, 0xD360, 0xBB98, 0xD361, 0xBB99, 0xD362, 0xBB9A, 0xD363,
- 0xBB9B, 0xD364, 0xBB9C, 0xD365, 0xBB9D, 0xD366, 0xBB9E, 0xD367,
- 0xBB9F, 0xD368, 0xBBA0, 0xD369, 0xBBA1, 0xBE68, 0xBBA2, 0xBE6A,
- 0xBBA3, 0xBE70, 0xBBA4, 0xBE71, 0xBBA5, 0xBE73, 0xBBA6, 0xBE74,
- 0xBBA7, 0xBE75, 0xBBA8, 0xBE7B, 0xBBA9, 0xBE7C, 0xBBAA, 0xBE7D,
- 0xBBAB, 0xBE80, 0xBBAC, 0xBE84, 0xBBAD, 0xBE8C, 0xBBAE, 0xBE8D,
- 0xBBAF, 0xBE8F, 0xBBB0, 0xBE90, 0xBBB1, 0xBE91, 0xBBB2, 0xBE98,
- 0xBBB3, 0xBE99, 0xBBB4, 0xBEA8, 0xBBB5, 0xBED0, 0xBBB6, 0xBED1,
- 0xBBB7, 0xBED4, 0xBBB8, 0xBED7, 0xBBB9, 0xBED8, 0xBBBA, 0xBEE0,
- 0xBBBB, 0xBEE3, 0xBBBC, 0xBEE4, 0xBBBD, 0xBEE5, 0xBBBE, 0xBEEC,
- 0xBBBF, 0xBF01, 0xBBC0, 0xBF08, 0xBBC1, 0xBF09, 0xBBC2, 0xBF18,
- 0xBBC3, 0xBF19, 0xBBC4, 0xBF1B, 0xBBC5, 0xBF1C, 0xBBC6, 0xBF1D,
- 0xBBC7, 0xBF40, 0xBBC8, 0xBF41, 0xBBC9, 0xBF44, 0xBBCA, 0xBF48,
- 0xBBCB, 0xBF50, 0xBBCC, 0xBF51, 0xBBCD, 0xBF55, 0xBBCE, 0xBF94,
- 0xBBCF, 0xBFB0, 0xBBD0, 0xBFC5, 0xBBD1, 0xBFCC, 0xBBD2, 0xBFCD,
- 0xBBD3, 0xBFD0, 0xBBD4, 0xBFD4, 0xBBD5, 0xBFDC, 0xBBD6, 0xBFDF,
- 0xBBD7, 0xBFE1, 0xBBD8, 0xC03C, 0xBBD9, 0xC051, 0xBBDA, 0xC058,
- 0xBBDB, 0xC05C, 0xBBDC, 0xC060, 0xBBDD, 0xC068, 0xBBDE, 0xC069,
- 0xBBDF, 0xC090, 0xBBE0, 0xC091, 0xBBE1, 0xC094, 0xBBE2, 0xC098,
- 0xBBE3, 0xC0A0, 0xBBE4, 0xC0A1, 0xBBE5, 0xC0A3, 0xBBE6, 0xC0A5,
- 0xBBE7, 0xC0AC, 0xBBE8, 0xC0AD, 0xBBE9, 0xC0AF, 0xBBEA, 0xC0B0,
- 0xBBEB, 0xC0B3, 0xBBEC, 0xC0B4, 0xBBED, 0xC0B5, 0xBBEE, 0xC0B6,
- 0xBBEF, 0xC0BC, 0xBBF0, 0xC0BD, 0xBBF1, 0xC0BF, 0xBBF2, 0xC0C0,
- 0xBBF3, 0xC0C1, 0xBBF4, 0xC0C5, 0xBBF5, 0xC0C8, 0xBBF6, 0xC0C9,
- 0xBBF7, 0xC0CC, 0xBBF8, 0xC0D0, 0xBBF9, 0xC0D8, 0xBBFA, 0xC0D9,
- 0xBBFB, 0xC0DB, 0xBBFC, 0xC0DC, 0xBBFD, 0xC0DD, 0xBBFE, 0xC0E4,
- 0xBC41, 0xD36A, 0xBC42, 0xD36B, 0xBC43, 0xD36C, 0xBC44, 0xD36D,
- 0xBC45, 0xD36E, 0xBC46, 0xD36F, 0xBC47, 0xD370, 0xBC48, 0xD371,
- 0xBC49, 0xD372, 0xBC4A, 0xD373, 0xBC4B, 0xD374, 0xBC4C, 0xD375,
- 0xBC4D, 0xD376, 0xBC4E, 0xD377, 0xBC4F, 0xD378, 0xBC50, 0xD379,
- 0xBC51, 0xD37A, 0xBC52, 0xD37B, 0xBC53, 0xD37E, 0xBC54, 0xD37F,
- 0xBC55, 0xD381, 0xBC56, 0xD382, 0xBC57, 0xD383, 0xBC58, 0xD385,
- 0xBC59, 0xD386, 0xBC5A, 0xD387, 0xBC61, 0xD388, 0xBC62, 0xD389,
- 0xBC63, 0xD38A, 0xBC64, 0xD38B, 0xBC65, 0xD38E, 0xBC66, 0xD392,
- 0xBC67, 0xD393, 0xBC68, 0xD394, 0xBC69, 0xD395, 0xBC6A, 0xD396,
- 0xBC6B, 0xD397, 0xBC6C, 0xD39A, 0xBC6D, 0xD39B, 0xBC6E, 0xD39D,
- 0xBC6F, 0xD39E, 0xBC70, 0xD39F, 0xBC71, 0xD3A1, 0xBC72, 0xD3A2,
- 0xBC73, 0xD3A3, 0xBC74, 0xD3A4, 0xBC75, 0xD3A5, 0xBC76, 0xD3A6,
- 0xBC77, 0xD3A7, 0xBC78, 0xD3AA, 0xBC79, 0xD3AC, 0xBC7A, 0xD3AE,
- 0xBC81, 0xD3AF, 0xBC82, 0xD3B0, 0xBC83, 0xD3B1, 0xBC84, 0xD3B2,
- 0xBC85, 0xD3B3, 0xBC86, 0xD3B5, 0xBC87, 0xD3B6, 0xBC88, 0xD3B7,
- 0xBC89, 0xD3B9, 0xBC8A, 0xD3BA, 0xBC8B, 0xD3BB, 0xBC8C, 0xD3BD,
- 0xBC8D, 0xD3BE, 0xBC8E, 0xD3BF, 0xBC8F, 0xD3C0, 0xBC90, 0xD3C1,
- 0xBC91, 0xD3C2, 0xBC92, 0xD3C3, 0xBC93, 0xD3C6, 0xBC94, 0xD3C7,
- 0xBC95, 0xD3CA, 0xBC96, 0xD3CB, 0xBC97, 0xD3CC, 0xBC98, 0xD3CD,
- 0xBC99, 0xD3CE, 0xBC9A, 0xD3CF, 0xBC9B, 0xD3D1, 0xBC9C, 0xD3D2,
- 0xBC9D, 0xD3D3, 0xBC9E, 0xD3D4, 0xBC9F, 0xD3D5, 0xBCA0, 0xD3D6,
- 0xBCA1, 0xC0E5, 0xBCA2, 0xC0E8, 0xBCA3, 0xC0EC, 0xBCA4, 0xC0F4,
- 0xBCA5, 0xC0F5, 0xBCA6, 0xC0F7, 0xBCA7, 0xC0F9, 0xBCA8, 0xC100,
- 0xBCA9, 0xC104, 0xBCAA, 0xC108, 0xBCAB, 0xC110, 0xBCAC, 0xC115,
- 0xBCAD, 0xC11C, 0xBCAE, 0xC11D, 0xBCAF, 0xC11E, 0xBCB0, 0xC11F,
- 0xBCB1, 0xC120, 0xBCB2, 0xC123, 0xBCB3, 0xC124, 0xBCB4, 0xC126,
- 0xBCB5, 0xC127, 0xBCB6, 0xC12C, 0xBCB7, 0xC12D, 0xBCB8, 0xC12F,
- 0xBCB9, 0xC130, 0xBCBA, 0xC131, 0xBCBB, 0xC136, 0xBCBC, 0xC138,
- 0xBCBD, 0xC139, 0xBCBE, 0xC13C, 0xBCBF, 0xC140, 0xBCC0, 0xC148,
- 0xBCC1, 0xC149, 0xBCC2, 0xC14B, 0xBCC3, 0xC14C, 0xBCC4, 0xC14D,
- 0xBCC5, 0xC154, 0xBCC6, 0xC155, 0xBCC7, 0xC158, 0xBCC8, 0xC15C,
- 0xBCC9, 0xC164, 0xBCCA, 0xC165, 0xBCCB, 0xC167, 0xBCCC, 0xC168,
- 0xBCCD, 0xC169, 0xBCCE, 0xC170, 0xBCCF, 0xC174, 0xBCD0, 0xC178,
- 0xBCD1, 0xC185, 0xBCD2, 0xC18C, 0xBCD3, 0xC18D, 0xBCD4, 0xC18E,
- 0xBCD5, 0xC190, 0xBCD6, 0xC194, 0xBCD7, 0xC196, 0xBCD8, 0xC19C,
- 0xBCD9, 0xC19D, 0xBCDA, 0xC19F, 0xBCDB, 0xC1A1, 0xBCDC, 0xC1A5,
- 0xBCDD, 0xC1A8, 0xBCDE, 0xC1A9, 0xBCDF, 0xC1AC, 0xBCE0, 0xC1B0,
- 0xBCE1, 0xC1BD, 0xBCE2, 0xC1C4, 0xBCE3, 0xC1C8, 0xBCE4, 0xC1CC,
- 0xBCE5, 0xC1D4, 0xBCE6, 0xC1D7, 0xBCE7, 0xC1D8, 0xBCE8, 0xC1E0,
- 0xBCE9, 0xC1E4, 0xBCEA, 0xC1E8, 0xBCEB, 0xC1F0, 0xBCEC, 0xC1F1,
- 0xBCED, 0xC1F3, 0xBCEE, 0xC1FC, 0xBCEF, 0xC1FD, 0xBCF0, 0xC200,
- 0xBCF1, 0xC204, 0xBCF2, 0xC20C, 0xBCF3, 0xC20D, 0xBCF4, 0xC20F,
- 0xBCF5, 0xC211, 0xBCF6, 0xC218, 0xBCF7, 0xC219, 0xBCF8, 0xC21C,
- 0xBCF9, 0xC21F, 0xBCFA, 0xC220, 0xBCFB, 0xC228, 0xBCFC, 0xC229,
- 0xBCFD, 0xC22B, 0xBCFE, 0xC22D, 0xBD41, 0xD3D7, 0xBD42, 0xD3D9,
- 0xBD43, 0xD3DA, 0xBD44, 0xD3DB, 0xBD45, 0xD3DC, 0xBD46, 0xD3DD,
- 0xBD47, 0xD3DE, 0xBD48, 0xD3DF, 0xBD49, 0xD3E0, 0xBD4A, 0xD3E2,
- 0xBD4B, 0xD3E4, 0xBD4C, 0xD3E5, 0xBD4D, 0xD3E6, 0xBD4E, 0xD3E7,
- 0xBD4F, 0xD3E8, 0xBD50, 0xD3E9, 0xBD51, 0xD3EA, 0xBD52, 0xD3EB,
- 0xBD53, 0xD3EE, 0xBD54, 0xD3EF, 0xBD55, 0xD3F1, 0xBD56, 0xD3F2,
- 0xBD57, 0xD3F3, 0xBD58, 0xD3F5, 0xBD59, 0xD3F6, 0xBD5A, 0xD3F7,
- 0xBD61, 0xD3F8, 0xBD62, 0xD3F9, 0xBD63, 0xD3FA, 0xBD64, 0xD3FB,
- 0xBD65, 0xD3FE, 0xBD66, 0xD400, 0xBD67, 0xD402, 0xBD68, 0xD403,
- 0xBD69, 0xD404, 0xBD6A, 0xD405, 0xBD6B, 0xD406, 0xBD6C, 0xD407,
- 0xBD6D, 0xD409, 0xBD6E, 0xD40A, 0xBD6F, 0xD40B, 0xBD70, 0xD40C,
- 0xBD71, 0xD40D, 0xBD72, 0xD40E, 0xBD73, 0xD40F, 0xBD74, 0xD410,
- 0xBD75, 0xD411, 0xBD76, 0xD412, 0xBD77, 0xD413, 0xBD78, 0xD414,
- 0xBD79, 0xD415, 0xBD7A, 0xD416, 0xBD81, 0xD417, 0xBD82, 0xD418,
- 0xBD83, 0xD419, 0xBD84, 0xD41A, 0xBD85, 0xD41B, 0xBD86, 0xD41C,
- 0xBD87, 0xD41E, 0xBD88, 0xD41F, 0xBD89, 0xD420, 0xBD8A, 0xD421,
- 0xBD8B, 0xD422, 0xBD8C, 0xD423, 0xBD8D, 0xD424, 0xBD8E, 0xD425,
- 0xBD8F, 0xD426, 0xBD90, 0xD427, 0xBD91, 0xD428, 0xBD92, 0xD429,
- 0xBD93, 0xD42A, 0xBD94, 0xD42B, 0xBD95, 0xD42C, 0xBD96, 0xD42D,
- 0xBD97, 0xD42E, 0xBD98, 0xD42F, 0xBD99, 0xD430, 0xBD9A, 0xD431,
- 0xBD9B, 0xD432, 0xBD9C, 0xD433, 0xBD9D, 0xD434, 0xBD9E, 0xD435,
- 0xBD9F, 0xD436, 0xBDA0, 0xD437, 0xBDA1, 0xC22F, 0xBDA2, 0xC231,
- 0xBDA3, 0xC232, 0xBDA4, 0xC234, 0xBDA5, 0xC248, 0xBDA6, 0xC250,
- 0xBDA7, 0xC251, 0xBDA8, 0xC254, 0xBDA9, 0xC258, 0xBDAA, 0xC260,
- 0xBDAB, 0xC265, 0xBDAC, 0xC26C, 0xBDAD, 0xC26D, 0xBDAE, 0xC270,
- 0xBDAF, 0xC274, 0xBDB0, 0xC27C, 0xBDB1, 0xC27D, 0xBDB2, 0xC27F,
- 0xBDB3, 0xC281, 0xBDB4, 0xC288, 0xBDB5, 0xC289, 0xBDB6, 0xC290,
- 0xBDB7, 0xC298, 0xBDB8, 0xC29B, 0xBDB9, 0xC29D, 0xBDBA, 0xC2A4,
- 0xBDBB, 0xC2A5, 0xBDBC, 0xC2A8, 0xBDBD, 0xC2AC, 0xBDBE, 0xC2AD,
- 0xBDBF, 0xC2B4, 0xBDC0, 0xC2B5, 0xBDC1, 0xC2B7, 0xBDC2, 0xC2B9,
- 0xBDC3, 0xC2DC, 0xBDC4, 0xC2DD, 0xBDC5, 0xC2E0, 0xBDC6, 0xC2E3,
- 0xBDC7, 0xC2E4, 0xBDC8, 0xC2EB, 0xBDC9, 0xC2EC, 0xBDCA, 0xC2ED,
- 0xBDCB, 0xC2EF, 0xBDCC, 0xC2F1, 0xBDCD, 0xC2F6, 0xBDCE, 0xC2F8,
- 0xBDCF, 0xC2F9, 0xBDD0, 0xC2FB, 0xBDD1, 0xC2FC, 0xBDD2, 0xC300,
- 0xBDD3, 0xC308, 0xBDD4, 0xC309, 0xBDD5, 0xC30C, 0xBDD6, 0xC30D,
- 0xBDD7, 0xC313, 0xBDD8, 0xC314, 0xBDD9, 0xC315, 0xBDDA, 0xC318,
- 0xBDDB, 0xC31C, 0xBDDC, 0xC324, 0xBDDD, 0xC325, 0xBDDE, 0xC328,
- 0xBDDF, 0xC329, 0xBDE0, 0xC345, 0xBDE1, 0xC368, 0xBDE2, 0xC369,
- 0xBDE3, 0xC36C, 0xBDE4, 0xC370, 0xBDE5, 0xC372, 0xBDE6, 0xC378,
- 0xBDE7, 0xC379, 0xBDE8, 0xC37C, 0xBDE9, 0xC37D, 0xBDEA, 0xC384,
- 0xBDEB, 0xC388, 0xBDEC, 0xC38C, 0xBDED, 0xC3C0, 0xBDEE, 0xC3D8,
- 0xBDEF, 0xC3D9, 0xBDF0, 0xC3DC, 0xBDF1, 0xC3DF, 0xBDF2, 0xC3E0,
- 0xBDF3, 0xC3E2, 0xBDF4, 0xC3E8, 0xBDF5, 0xC3E9, 0xBDF6, 0xC3ED,
- 0xBDF7, 0xC3F4, 0xBDF8, 0xC3F5, 0xBDF9, 0xC3F8, 0xBDFA, 0xC408,
- 0xBDFB, 0xC410, 0xBDFC, 0xC424, 0xBDFD, 0xC42C, 0xBDFE, 0xC430,
- 0xBE41, 0xD438, 0xBE42, 0xD439, 0xBE43, 0xD43A, 0xBE44, 0xD43B,
- 0xBE45, 0xD43C, 0xBE46, 0xD43D, 0xBE47, 0xD43E, 0xBE48, 0xD43F,
- 0xBE49, 0xD441, 0xBE4A, 0xD442, 0xBE4B, 0xD443, 0xBE4C, 0xD445,
- 0xBE4D, 0xD446, 0xBE4E, 0xD447, 0xBE4F, 0xD448, 0xBE50, 0xD449,
- 0xBE51, 0xD44A, 0xBE52, 0xD44B, 0xBE53, 0xD44C, 0xBE54, 0xD44D,
- 0xBE55, 0xD44E, 0xBE56, 0xD44F, 0xBE57, 0xD450, 0xBE58, 0xD451,
- 0xBE59, 0xD452, 0xBE5A, 0xD453, 0xBE61, 0xD454, 0xBE62, 0xD455,
- 0xBE63, 0xD456, 0xBE64, 0xD457, 0xBE65, 0xD458, 0xBE66, 0xD459,
- 0xBE67, 0xD45A, 0xBE68, 0xD45B, 0xBE69, 0xD45D, 0xBE6A, 0xD45E,
- 0xBE6B, 0xD45F, 0xBE6C, 0xD461, 0xBE6D, 0xD462, 0xBE6E, 0xD463,
- 0xBE6F, 0xD465, 0xBE70, 0xD466, 0xBE71, 0xD467, 0xBE72, 0xD468,
- 0xBE73, 0xD469, 0xBE74, 0xD46A, 0xBE75, 0xD46B, 0xBE76, 0xD46C,
- 0xBE77, 0xD46E, 0xBE78, 0xD470, 0xBE79, 0xD471, 0xBE7A, 0xD472,
- 0xBE81, 0xD473, 0xBE82, 0xD474, 0xBE83, 0xD475, 0xBE84, 0xD476,
- 0xBE85, 0xD477, 0xBE86, 0xD47A, 0xBE87, 0xD47B, 0xBE88, 0xD47D,
- 0xBE89, 0xD47E, 0xBE8A, 0xD481, 0xBE8B, 0xD483, 0xBE8C, 0xD484,
- 0xBE8D, 0xD485, 0xBE8E, 0xD486, 0xBE8F, 0xD487, 0xBE90, 0xD48A,
- 0xBE91, 0xD48C, 0xBE92, 0xD48E, 0xBE93, 0xD48F, 0xBE94, 0xD490,
- 0xBE95, 0xD491, 0xBE96, 0xD492, 0xBE97, 0xD493, 0xBE98, 0xD495,
- 0xBE99, 0xD496, 0xBE9A, 0xD497, 0xBE9B, 0xD498, 0xBE9C, 0xD499,
- 0xBE9D, 0xD49A, 0xBE9E, 0xD49B, 0xBE9F, 0xD49C, 0xBEA0, 0xD49D,
- 0xBEA1, 0xC434, 0xBEA2, 0xC43C, 0xBEA3, 0xC43D, 0xBEA4, 0xC448,
- 0xBEA5, 0xC464, 0xBEA6, 0xC465, 0xBEA7, 0xC468, 0xBEA8, 0xC46C,
- 0xBEA9, 0xC474, 0xBEAA, 0xC475, 0xBEAB, 0xC479, 0xBEAC, 0xC480,
- 0xBEAD, 0xC494, 0xBEAE, 0xC49C, 0xBEAF, 0xC4B8, 0xBEB0, 0xC4BC,
- 0xBEB1, 0xC4E9, 0xBEB2, 0xC4F0, 0xBEB3, 0xC4F1, 0xBEB4, 0xC4F4,
- 0xBEB5, 0xC4F8, 0xBEB6, 0xC4FA, 0xBEB7, 0xC4FF, 0xBEB8, 0xC500,
- 0xBEB9, 0xC501, 0xBEBA, 0xC50C, 0xBEBB, 0xC510, 0xBEBC, 0xC514,
- 0xBEBD, 0xC51C, 0xBEBE, 0xC528, 0xBEBF, 0xC529, 0xBEC0, 0xC52C,
- 0xBEC1, 0xC530, 0xBEC2, 0xC538, 0xBEC3, 0xC539, 0xBEC4, 0xC53B,
- 0xBEC5, 0xC53D, 0xBEC6, 0xC544, 0xBEC7, 0xC545, 0xBEC8, 0xC548,
- 0xBEC9, 0xC549, 0xBECA, 0xC54A, 0xBECB, 0xC54C, 0xBECC, 0xC54D,
- 0xBECD, 0xC54E, 0xBECE, 0xC553, 0xBECF, 0xC554, 0xBED0, 0xC555,
- 0xBED1, 0xC557, 0xBED2, 0xC558, 0xBED3, 0xC559, 0xBED4, 0xC55D,
- 0xBED5, 0xC55E, 0xBED6, 0xC560, 0xBED7, 0xC561, 0xBED8, 0xC564,
- 0xBED9, 0xC568, 0xBEDA, 0xC570, 0xBEDB, 0xC571, 0xBEDC, 0xC573,
- 0xBEDD, 0xC574, 0xBEDE, 0xC575, 0xBEDF, 0xC57C, 0xBEE0, 0xC57D,
- 0xBEE1, 0xC580, 0xBEE2, 0xC584, 0xBEE3, 0xC587, 0xBEE4, 0xC58C,
- 0xBEE5, 0xC58D, 0xBEE6, 0xC58F, 0xBEE7, 0xC591, 0xBEE8, 0xC595,
- 0xBEE9, 0xC597, 0xBEEA, 0xC598, 0xBEEB, 0xC59C, 0xBEEC, 0xC5A0,
- 0xBEED, 0xC5A9, 0xBEEE, 0xC5B4, 0xBEEF, 0xC5B5, 0xBEF0, 0xC5B8,
- 0xBEF1, 0xC5B9, 0xBEF2, 0xC5BB, 0xBEF3, 0xC5BC, 0xBEF4, 0xC5BD,
- 0xBEF5, 0xC5BE, 0xBEF6, 0xC5C4, 0xBEF7, 0xC5C5, 0xBEF8, 0xC5C6,
- 0xBEF9, 0xC5C7, 0xBEFA, 0xC5C8, 0xBEFB, 0xC5C9, 0xBEFC, 0xC5CA,
- 0xBEFD, 0xC5CC, 0xBEFE, 0xC5CE, 0xBF41, 0xD49E, 0xBF42, 0xD49F,
- 0xBF43, 0xD4A0, 0xBF44, 0xD4A1, 0xBF45, 0xD4A2, 0xBF46, 0xD4A3,
- 0xBF47, 0xD4A4, 0xBF48, 0xD4A5, 0xBF49, 0xD4A6, 0xBF4A, 0xD4A7,
- 0xBF4B, 0xD4A8, 0xBF4C, 0xD4AA, 0xBF4D, 0xD4AB, 0xBF4E, 0xD4AC,
- 0xBF4F, 0xD4AD, 0xBF50, 0xD4AE, 0xBF51, 0xD4AF, 0xBF52, 0xD4B0,
- 0xBF53, 0xD4B1, 0xBF54, 0xD4B2, 0xBF55, 0xD4B3, 0xBF56, 0xD4B4,
- 0xBF57, 0xD4B5, 0xBF58, 0xD4B6, 0xBF59, 0xD4B7, 0xBF5A, 0xD4B8,
- 0xBF61, 0xD4B9, 0xBF62, 0xD4BA, 0xBF63, 0xD4BB, 0xBF64, 0xD4BC,
- 0xBF65, 0xD4BD, 0xBF66, 0xD4BE, 0xBF67, 0xD4BF, 0xBF68, 0xD4C0,
- 0xBF69, 0xD4C1, 0xBF6A, 0xD4C2, 0xBF6B, 0xD4C3, 0xBF6C, 0xD4C4,
- 0xBF6D, 0xD4C5, 0xBF6E, 0xD4C6, 0xBF6F, 0xD4C7, 0xBF70, 0xD4C8,
- 0xBF71, 0xD4C9, 0xBF72, 0xD4CA, 0xBF73, 0xD4CB, 0xBF74, 0xD4CD,
- 0xBF75, 0xD4CE, 0xBF76, 0xD4CF, 0xBF77, 0xD4D1, 0xBF78, 0xD4D2,
- 0xBF79, 0xD4D3, 0xBF7A, 0xD4D5, 0xBF81, 0xD4D6, 0xBF82, 0xD4D7,
- 0xBF83, 0xD4D8, 0xBF84, 0xD4D9, 0xBF85, 0xD4DA, 0xBF86, 0xD4DB,
- 0xBF87, 0xD4DD, 0xBF88, 0xD4DE, 0xBF89, 0xD4E0, 0xBF8A, 0xD4E1,
- 0xBF8B, 0xD4E2, 0xBF8C, 0xD4E3, 0xBF8D, 0xD4E4, 0xBF8E, 0xD4E5,
- 0xBF8F, 0xD4E6, 0xBF90, 0xD4E7, 0xBF91, 0xD4E9, 0xBF92, 0xD4EA,
- 0xBF93, 0xD4EB, 0xBF94, 0xD4ED, 0xBF95, 0xD4EE, 0xBF96, 0xD4EF,
- 0xBF97, 0xD4F1, 0xBF98, 0xD4F2, 0xBF99, 0xD4F3, 0xBF9A, 0xD4F4,
- 0xBF9B, 0xD4F5, 0xBF9C, 0xD4F6, 0xBF9D, 0xD4F7, 0xBF9E, 0xD4F9,
- 0xBF9F, 0xD4FA, 0xBFA0, 0xD4FC, 0xBFA1, 0xC5D0, 0xBFA2, 0xC5D1,
- 0xBFA3, 0xC5D4, 0xBFA4, 0xC5D8, 0xBFA5, 0xC5E0, 0xBFA6, 0xC5E1,
- 0xBFA7, 0xC5E3, 0xBFA8, 0xC5E5, 0xBFA9, 0xC5EC, 0xBFAA, 0xC5ED,
- 0xBFAB, 0xC5EE, 0xBFAC, 0xC5F0, 0xBFAD, 0xC5F4, 0xBFAE, 0xC5F6,
- 0xBFAF, 0xC5F7, 0xBFB0, 0xC5FC, 0xBFB1, 0xC5FD, 0xBFB2, 0xC5FE,
- 0xBFB3, 0xC5FF, 0xBFB4, 0xC600, 0xBFB5, 0xC601, 0xBFB6, 0xC605,
- 0xBFB7, 0xC606, 0xBFB8, 0xC607, 0xBFB9, 0xC608, 0xBFBA, 0xC60C,
- 0xBFBB, 0xC610, 0xBFBC, 0xC618, 0xBFBD, 0xC619, 0xBFBE, 0xC61B,
- 0xBFBF, 0xC61C, 0xBFC0, 0xC624, 0xBFC1, 0xC625, 0xBFC2, 0xC628,
- 0xBFC3, 0xC62C, 0xBFC4, 0xC62D, 0xBFC5, 0xC62E, 0xBFC6, 0xC630,
- 0xBFC7, 0xC633, 0xBFC8, 0xC634, 0xBFC9, 0xC635, 0xBFCA, 0xC637,
- 0xBFCB, 0xC639, 0xBFCC, 0xC63B, 0xBFCD, 0xC640, 0xBFCE, 0xC641,
- 0xBFCF, 0xC644, 0xBFD0, 0xC648, 0xBFD1, 0xC650, 0xBFD2, 0xC651,
- 0xBFD3, 0xC653, 0xBFD4, 0xC654, 0xBFD5, 0xC655, 0xBFD6, 0xC65C,
- 0xBFD7, 0xC65D, 0xBFD8, 0xC660, 0xBFD9, 0xC66C, 0xBFDA, 0xC66F,
- 0xBFDB, 0xC671, 0xBFDC, 0xC678, 0xBFDD, 0xC679, 0xBFDE, 0xC67C,
- 0xBFDF, 0xC680, 0xBFE0, 0xC688, 0xBFE1, 0xC689, 0xBFE2, 0xC68B,
- 0xBFE3, 0xC68D, 0xBFE4, 0xC694, 0xBFE5, 0xC695, 0xBFE6, 0xC698,
- 0xBFE7, 0xC69C, 0xBFE8, 0xC6A4, 0xBFE9, 0xC6A5, 0xBFEA, 0xC6A7,
- 0xBFEB, 0xC6A9, 0xBFEC, 0xC6B0, 0xBFED, 0xC6B1, 0xBFEE, 0xC6B4,
- 0xBFEF, 0xC6B8, 0xBFF0, 0xC6B9, 0xBFF1, 0xC6BA, 0xBFF2, 0xC6C0,
- 0xBFF3, 0xC6C1, 0xBFF4, 0xC6C3, 0xBFF5, 0xC6C5, 0xBFF6, 0xC6CC,
- 0xBFF7, 0xC6CD, 0xBFF8, 0xC6D0, 0xBFF9, 0xC6D4, 0xBFFA, 0xC6DC,
- 0xBFFB, 0xC6DD, 0xBFFC, 0xC6E0, 0xBFFD, 0xC6E1, 0xBFFE, 0xC6E8,
- 0xC041, 0xD4FE, 0xC042, 0xD4FF, 0xC043, 0xD500, 0xC044, 0xD501,
- 0xC045, 0xD502, 0xC046, 0xD503, 0xC047, 0xD505, 0xC048, 0xD506,
- 0xC049, 0xD507, 0xC04A, 0xD509, 0xC04B, 0xD50A, 0xC04C, 0xD50B,
- 0xC04D, 0xD50D, 0xC04E, 0xD50E, 0xC04F, 0xD50F, 0xC050, 0xD510,
- 0xC051, 0xD511, 0xC052, 0xD512, 0xC053, 0xD513, 0xC054, 0xD516,
- 0xC055, 0xD518, 0xC056, 0xD519, 0xC057, 0xD51A, 0xC058, 0xD51B,
- 0xC059, 0xD51C, 0xC05A, 0xD51D, 0xC061, 0xD51E, 0xC062, 0xD51F,
- 0xC063, 0xD520, 0xC064, 0xD521, 0xC065, 0xD522, 0xC066, 0xD523,
- 0xC067, 0xD524, 0xC068, 0xD525, 0xC069, 0xD526, 0xC06A, 0xD527,
- 0xC06B, 0xD528, 0xC06C, 0xD529, 0xC06D, 0xD52A, 0xC06E, 0xD52B,
- 0xC06F, 0xD52C, 0xC070, 0xD52D, 0xC071, 0xD52E, 0xC072, 0xD52F,
- 0xC073, 0xD530, 0xC074, 0xD531, 0xC075, 0xD532, 0xC076, 0xD533,
- 0xC077, 0xD534, 0xC078, 0xD535, 0xC079, 0xD536, 0xC07A, 0xD537,
- 0xC081, 0xD538, 0xC082, 0xD539, 0xC083, 0xD53A, 0xC084, 0xD53B,
- 0xC085, 0xD53E, 0xC086, 0xD53F, 0xC087, 0xD541, 0xC088, 0xD542,
- 0xC089, 0xD543, 0xC08A, 0xD545, 0xC08B, 0xD546, 0xC08C, 0xD547,
- 0xC08D, 0xD548, 0xC08E, 0xD549, 0xC08F, 0xD54A, 0xC090, 0xD54B,
- 0xC091, 0xD54E, 0xC092, 0xD550, 0xC093, 0xD552, 0xC094, 0xD553,
- 0xC095, 0xD554, 0xC096, 0xD555, 0xC097, 0xD556, 0xC098, 0xD557,
- 0xC099, 0xD55A, 0xC09A, 0xD55B, 0xC09B, 0xD55D, 0xC09C, 0xD55E,
- 0xC09D, 0xD55F, 0xC09E, 0xD561, 0xC09F, 0xD562, 0xC0A0, 0xD563,
- 0xC0A1, 0xC6E9, 0xC0A2, 0xC6EC, 0xC0A3, 0xC6F0, 0xC0A4, 0xC6F8,
- 0xC0A5, 0xC6F9, 0xC0A6, 0xC6FD, 0xC0A7, 0xC704, 0xC0A8, 0xC705,
- 0xC0A9, 0xC708, 0xC0AA, 0xC70C, 0xC0AB, 0xC714, 0xC0AC, 0xC715,
- 0xC0AD, 0xC717, 0xC0AE, 0xC719, 0xC0AF, 0xC720, 0xC0B0, 0xC721,
- 0xC0B1, 0xC724, 0xC0B2, 0xC728, 0xC0B3, 0xC730, 0xC0B4, 0xC731,
- 0xC0B5, 0xC733, 0xC0B6, 0xC735, 0xC0B7, 0xC737, 0xC0B8, 0xC73C,
- 0xC0B9, 0xC73D, 0xC0BA, 0xC740, 0xC0BB, 0xC744, 0xC0BC, 0xC74A,
- 0xC0BD, 0xC74C, 0xC0BE, 0xC74D, 0xC0BF, 0xC74F, 0xC0C0, 0xC751,
- 0xC0C1, 0xC752, 0xC0C2, 0xC753, 0xC0C3, 0xC754, 0xC0C4, 0xC755,
- 0xC0C5, 0xC756, 0xC0C6, 0xC757, 0xC0C7, 0xC758, 0xC0C8, 0xC75C,
- 0xC0C9, 0xC760, 0xC0CA, 0xC768, 0xC0CB, 0xC76B, 0xC0CC, 0xC774,
- 0xC0CD, 0xC775, 0xC0CE, 0xC778, 0xC0CF, 0xC77C, 0xC0D0, 0xC77D,
- 0xC0D1, 0xC77E, 0xC0D2, 0xC783, 0xC0D3, 0xC784, 0xC0D4, 0xC785,
- 0xC0D5, 0xC787, 0xC0D6, 0xC788, 0xC0D7, 0xC789, 0xC0D8, 0xC78A,
- 0xC0D9, 0xC78E, 0xC0DA, 0xC790, 0xC0DB, 0xC791, 0xC0DC, 0xC794,
- 0xC0DD, 0xC796, 0xC0DE, 0xC797, 0xC0DF, 0xC798, 0xC0E0, 0xC79A,
- 0xC0E1, 0xC7A0, 0xC0E2, 0xC7A1, 0xC0E3, 0xC7A3, 0xC0E4, 0xC7A4,
- 0xC0E5, 0xC7A5, 0xC0E6, 0xC7A6, 0xC0E7, 0xC7AC, 0xC0E8, 0xC7AD,
- 0xC0E9, 0xC7B0, 0xC0EA, 0xC7B4, 0xC0EB, 0xC7BC, 0xC0EC, 0xC7BD,
- 0xC0ED, 0xC7BF, 0xC0EE, 0xC7C0, 0xC0EF, 0xC7C1, 0xC0F0, 0xC7C8,
- 0xC0F1, 0xC7C9, 0xC0F2, 0xC7CC, 0xC0F3, 0xC7CE, 0xC0F4, 0xC7D0,
- 0xC0F5, 0xC7D8, 0xC0F6, 0xC7DD, 0xC0F7, 0xC7E4, 0xC0F8, 0xC7E8,
- 0xC0F9, 0xC7EC, 0xC0FA, 0xC800, 0xC0FB, 0xC801, 0xC0FC, 0xC804,
- 0xC0FD, 0xC808, 0xC0FE, 0xC80A, 0xC141, 0xD564, 0xC142, 0xD566,
- 0xC143, 0xD567, 0xC144, 0xD56A, 0xC145, 0xD56C, 0xC146, 0xD56E,
- 0xC147, 0xD56F, 0xC148, 0xD570, 0xC149, 0xD571, 0xC14A, 0xD572,
- 0xC14B, 0xD573, 0xC14C, 0xD576, 0xC14D, 0xD577, 0xC14E, 0xD579,
- 0xC14F, 0xD57A, 0xC150, 0xD57B, 0xC151, 0xD57D, 0xC152, 0xD57E,
- 0xC153, 0xD57F, 0xC154, 0xD580, 0xC155, 0xD581, 0xC156, 0xD582,
- 0xC157, 0xD583, 0xC158, 0xD586, 0xC159, 0xD58A, 0xC15A, 0xD58B,
- 0xC161, 0xD58C, 0xC162, 0xD58D, 0xC163, 0xD58E, 0xC164, 0xD58F,
- 0xC165, 0xD591, 0xC166, 0xD592, 0xC167, 0xD593, 0xC168, 0xD594,
- 0xC169, 0xD595, 0xC16A, 0xD596, 0xC16B, 0xD597, 0xC16C, 0xD598,
- 0xC16D, 0xD599, 0xC16E, 0xD59A, 0xC16F, 0xD59B, 0xC170, 0xD59C,
- 0xC171, 0xD59D, 0xC172, 0xD59E, 0xC173, 0xD59F, 0xC174, 0xD5A0,
- 0xC175, 0xD5A1, 0xC176, 0xD5A2, 0xC177, 0xD5A3, 0xC178, 0xD5A4,
- 0xC179, 0xD5A6, 0xC17A, 0xD5A7, 0xC181, 0xD5A8, 0xC182, 0xD5A9,
- 0xC183, 0xD5AA, 0xC184, 0xD5AB, 0xC185, 0xD5AC, 0xC186, 0xD5AD,
- 0xC187, 0xD5AE, 0xC188, 0xD5AF, 0xC189, 0xD5B0, 0xC18A, 0xD5B1,
- 0xC18B, 0xD5B2, 0xC18C, 0xD5B3, 0xC18D, 0xD5B4, 0xC18E, 0xD5B5,
- 0xC18F, 0xD5B6, 0xC190, 0xD5B7, 0xC191, 0xD5B8, 0xC192, 0xD5B9,
- 0xC193, 0xD5BA, 0xC194, 0xD5BB, 0xC195, 0xD5BC, 0xC196, 0xD5BD,
- 0xC197, 0xD5BE, 0xC198, 0xD5BF, 0xC199, 0xD5C0, 0xC19A, 0xD5C1,
- 0xC19B, 0xD5C2, 0xC19C, 0xD5C3, 0xC19D, 0xD5C4, 0xC19E, 0xD5C5,
- 0xC19F, 0xD5C6, 0xC1A0, 0xD5C7, 0xC1A1, 0xC810, 0xC1A2, 0xC811,
- 0xC1A3, 0xC813, 0xC1A4, 0xC815, 0xC1A5, 0xC816, 0xC1A6, 0xC81C,
- 0xC1A7, 0xC81D, 0xC1A8, 0xC820, 0xC1A9, 0xC824, 0xC1AA, 0xC82C,
- 0xC1AB, 0xC82D, 0xC1AC, 0xC82F, 0xC1AD, 0xC831, 0xC1AE, 0xC838,
- 0xC1AF, 0xC83C, 0xC1B0, 0xC840, 0xC1B1, 0xC848, 0xC1B2, 0xC849,
- 0xC1B3, 0xC84C, 0xC1B4, 0xC84D, 0xC1B5, 0xC854, 0xC1B6, 0xC870,
- 0xC1B7, 0xC871, 0xC1B8, 0xC874, 0xC1B9, 0xC878, 0xC1BA, 0xC87A,
- 0xC1BB, 0xC880, 0xC1BC, 0xC881, 0xC1BD, 0xC883, 0xC1BE, 0xC885,
- 0xC1BF, 0xC886, 0xC1C0, 0xC887, 0xC1C1, 0xC88B, 0xC1C2, 0xC88C,
- 0xC1C3, 0xC88D, 0xC1C4, 0xC894, 0xC1C5, 0xC89D, 0xC1C6, 0xC89F,
- 0xC1C7, 0xC8A1, 0xC1C8, 0xC8A8, 0xC1C9, 0xC8BC, 0xC1CA, 0xC8BD,
- 0xC1CB, 0xC8C4, 0xC1CC, 0xC8C8, 0xC1CD, 0xC8CC, 0xC1CE, 0xC8D4,
- 0xC1CF, 0xC8D5, 0xC1D0, 0xC8D7, 0xC1D1, 0xC8D9, 0xC1D2, 0xC8E0,
- 0xC1D3, 0xC8E1, 0xC1D4, 0xC8E4, 0xC1D5, 0xC8F5, 0xC1D6, 0xC8FC,
- 0xC1D7, 0xC8FD, 0xC1D8, 0xC900, 0xC1D9, 0xC904, 0xC1DA, 0xC905,
- 0xC1DB, 0xC906, 0xC1DC, 0xC90C, 0xC1DD, 0xC90D, 0xC1DE, 0xC90F,
- 0xC1DF, 0xC911, 0xC1E0, 0xC918, 0xC1E1, 0xC92C, 0xC1E2, 0xC934,
- 0xC1E3, 0xC950, 0xC1E4, 0xC951, 0xC1E5, 0xC954, 0xC1E6, 0xC958,
- 0xC1E7, 0xC960, 0xC1E8, 0xC961, 0xC1E9, 0xC963, 0xC1EA, 0xC96C,
- 0xC1EB, 0xC970, 0xC1EC, 0xC974, 0xC1ED, 0xC97C, 0xC1EE, 0xC988,
- 0xC1EF, 0xC989, 0xC1F0, 0xC98C, 0xC1F1, 0xC990, 0xC1F2, 0xC998,
- 0xC1F3, 0xC999, 0xC1F4, 0xC99B, 0xC1F5, 0xC99D, 0xC1F6, 0xC9C0,
- 0xC1F7, 0xC9C1, 0xC1F8, 0xC9C4, 0xC1F9, 0xC9C7, 0xC1FA, 0xC9C8,
- 0xC1FB, 0xC9CA, 0xC1FC, 0xC9D0, 0xC1FD, 0xC9D1, 0xC1FE, 0xC9D3,
- 0xC241, 0xD5CA, 0xC242, 0xD5CB, 0xC243, 0xD5CD, 0xC244, 0xD5CE,
- 0xC245, 0xD5CF, 0xC246, 0xD5D1, 0xC247, 0xD5D3, 0xC248, 0xD5D4,
- 0xC249, 0xD5D5, 0xC24A, 0xD5D6, 0xC24B, 0xD5D7, 0xC24C, 0xD5DA,
- 0xC24D, 0xD5DC, 0xC24E, 0xD5DE, 0xC24F, 0xD5DF, 0xC250, 0xD5E0,
- 0xC251, 0xD5E1, 0xC252, 0xD5E2, 0xC253, 0xD5E3, 0xC254, 0xD5E6,
- 0xC255, 0xD5E7, 0xC256, 0xD5E9, 0xC257, 0xD5EA, 0xC258, 0xD5EB,
- 0xC259, 0xD5ED, 0xC25A, 0xD5EE, 0xC261, 0xD5EF, 0xC262, 0xD5F0,
- 0xC263, 0xD5F1, 0xC264, 0xD5F2, 0xC265, 0xD5F3, 0xC266, 0xD5F6,
- 0xC267, 0xD5F8, 0xC268, 0xD5FA, 0xC269, 0xD5FB, 0xC26A, 0xD5FC,
- 0xC26B, 0xD5FD, 0xC26C, 0xD5FE, 0xC26D, 0xD5FF, 0xC26E, 0xD602,
- 0xC26F, 0xD603, 0xC270, 0xD605, 0xC271, 0xD606, 0xC272, 0xD607,
- 0xC273, 0xD609, 0xC274, 0xD60A, 0xC275, 0xD60B, 0xC276, 0xD60C,
- 0xC277, 0xD60D, 0xC278, 0xD60E, 0xC279, 0xD60F, 0xC27A, 0xD612,
- 0xC281, 0xD616, 0xC282, 0xD617, 0xC283, 0xD618, 0xC284, 0xD619,
- 0xC285, 0xD61A, 0xC286, 0xD61B, 0xC287, 0xD61D, 0xC288, 0xD61E,
- 0xC289, 0xD61F, 0xC28A, 0xD621, 0xC28B, 0xD622, 0xC28C, 0xD623,
- 0xC28D, 0xD625, 0xC28E, 0xD626, 0xC28F, 0xD627, 0xC290, 0xD628,
- 0xC291, 0xD629, 0xC292, 0xD62A, 0xC293, 0xD62B, 0xC294, 0xD62C,
- 0xC295, 0xD62E, 0xC296, 0xD62F, 0xC297, 0xD630, 0xC298, 0xD631,
- 0xC299, 0xD632, 0xC29A, 0xD633, 0xC29B, 0xD634, 0xC29C, 0xD635,
- 0xC29D, 0xD636, 0xC29E, 0xD637, 0xC29F, 0xD63A, 0xC2A0, 0xD63B,
- 0xC2A1, 0xC9D5, 0xC2A2, 0xC9D6, 0xC2A3, 0xC9D9, 0xC2A4, 0xC9DA,
- 0xC2A5, 0xC9DC, 0xC2A6, 0xC9DD, 0xC2A7, 0xC9E0, 0xC2A8, 0xC9E2,
- 0xC2A9, 0xC9E4, 0xC2AA, 0xC9E7, 0xC2AB, 0xC9EC, 0xC2AC, 0xC9ED,
- 0xC2AD, 0xC9EF, 0xC2AE, 0xC9F0, 0xC2AF, 0xC9F1, 0xC2B0, 0xC9F8,
- 0xC2B1, 0xC9F9, 0xC2B2, 0xC9FC, 0xC2B3, 0xCA00, 0xC2B4, 0xCA08,
- 0xC2B5, 0xCA09, 0xC2B6, 0xCA0B, 0xC2B7, 0xCA0C, 0xC2B8, 0xCA0D,
- 0xC2B9, 0xCA14, 0xC2BA, 0xCA18, 0xC2BB, 0xCA29, 0xC2BC, 0xCA4C,
- 0xC2BD, 0xCA4D, 0xC2BE, 0xCA50, 0xC2BF, 0xCA54, 0xC2C0, 0xCA5C,
- 0xC2C1, 0xCA5D, 0xC2C2, 0xCA5F, 0xC2C3, 0xCA60, 0xC2C4, 0xCA61,
- 0xC2C5, 0xCA68, 0xC2C6, 0xCA7D, 0xC2C7, 0xCA84, 0xC2C8, 0xCA98,
- 0xC2C9, 0xCABC, 0xC2CA, 0xCABD, 0xC2CB, 0xCAC0, 0xC2CC, 0xCAC4,
- 0xC2CD, 0xCACC, 0xC2CE, 0xCACD, 0xC2CF, 0xCACF, 0xC2D0, 0xCAD1,
- 0xC2D1, 0xCAD3, 0xC2D2, 0xCAD8, 0xC2D3, 0xCAD9, 0xC2D4, 0xCAE0,
- 0xC2D5, 0xCAEC, 0xC2D6, 0xCAF4, 0xC2D7, 0xCB08, 0xC2D8, 0xCB10,
- 0xC2D9, 0xCB14, 0xC2DA, 0xCB18, 0xC2DB, 0xCB20, 0xC2DC, 0xCB21,
- 0xC2DD, 0xCB41, 0xC2DE, 0xCB48, 0xC2DF, 0xCB49, 0xC2E0, 0xCB4C,
- 0xC2E1, 0xCB50, 0xC2E2, 0xCB58, 0xC2E3, 0xCB59, 0xC2E4, 0xCB5D,
- 0xC2E5, 0xCB64, 0xC2E6, 0xCB78, 0xC2E7, 0xCB79, 0xC2E8, 0xCB9C,
- 0xC2E9, 0xCBB8, 0xC2EA, 0xCBD4, 0xC2EB, 0xCBE4, 0xC2EC, 0xCBE7,
- 0xC2ED, 0xCBE9, 0xC2EE, 0xCC0C, 0xC2EF, 0xCC0D, 0xC2F0, 0xCC10,
- 0xC2F1, 0xCC14, 0xC2F2, 0xCC1C, 0xC2F3, 0xCC1D, 0xC2F4, 0xCC21,
- 0xC2F5, 0xCC22, 0xC2F6, 0xCC27, 0xC2F7, 0xCC28, 0xC2F8, 0xCC29,
- 0xC2F9, 0xCC2C, 0xC2FA, 0xCC2E, 0xC2FB, 0xCC30, 0xC2FC, 0xCC38,
- 0xC2FD, 0xCC39, 0xC2FE, 0xCC3B, 0xC341, 0xD63D, 0xC342, 0xD63E,
- 0xC343, 0xD63F, 0xC344, 0xD641, 0xC345, 0xD642, 0xC346, 0xD643,
- 0xC347, 0xD644, 0xC348, 0xD646, 0xC349, 0xD647, 0xC34A, 0xD64A,
- 0xC34B, 0xD64C, 0xC34C, 0xD64E, 0xC34D, 0xD64F, 0xC34E, 0xD650,
- 0xC34F, 0xD652, 0xC350, 0xD653, 0xC351, 0xD656, 0xC352, 0xD657,
- 0xC353, 0xD659, 0xC354, 0xD65A, 0xC355, 0xD65B, 0xC356, 0xD65D,
- 0xC357, 0xD65E, 0xC358, 0xD65F, 0xC359, 0xD660, 0xC35A, 0xD661,
- 0xC361, 0xD662, 0xC362, 0xD663, 0xC363, 0xD664, 0xC364, 0xD665,
- 0xC365, 0xD666, 0xC366, 0xD668, 0xC367, 0xD66A, 0xC368, 0xD66B,
- 0xC369, 0xD66C, 0xC36A, 0xD66D, 0xC36B, 0xD66E, 0xC36C, 0xD66F,
- 0xC36D, 0xD672, 0xC36E, 0xD673, 0xC36F, 0xD675, 0xC370, 0xD676,
- 0xC371, 0xD677, 0xC372, 0xD678, 0xC373, 0xD679, 0xC374, 0xD67A,
- 0xC375, 0xD67B, 0xC376, 0xD67C, 0xC377, 0xD67D, 0xC378, 0xD67E,
- 0xC379, 0xD67F, 0xC37A, 0xD680, 0xC381, 0xD681, 0xC382, 0xD682,
- 0xC383, 0xD684, 0xC384, 0xD686, 0xC385, 0xD687, 0xC386, 0xD688,
- 0xC387, 0xD689, 0xC388, 0xD68A, 0xC389, 0xD68B, 0xC38A, 0xD68E,
- 0xC38B, 0xD68F, 0xC38C, 0xD691, 0xC38D, 0xD692, 0xC38E, 0xD693,
- 0xC38F, 0xD695, 0xC390, 0xD696, 0xC391, 0xD697, 0xC392, 0xD698,
- 0xC393, 0xD699, 0xC394, 0xD69A, 0xC395, 0xD69B, 0xC396, 0xD69C,
- 0xC397, 0xD69E, 0xC398, 0xD6A0, 0xC399, 0xD6A2, 0xC39A, 0xD6A3,
- 0xC39B, 0xD6A4, 0xC39C, 0xD6A5, 0xC39D, 0xD6A6, 0xC39E, 0xD6A7,
- 0xC39F, 0xD6A9, 0xC3A0, 0xD6AA, 0xC3A1, 0xCC3C, 0xC3A2, 0xCC3D,
- 0xC3A3, 0xCC3E, 0xC3A4, 0xCC44, 0xC3A5, 0xCC45, 0xC3A6, 0xCC48,
- 0xC3A7, 0xCC4C, 0xC3A8, 0xCC54, 0xC3A9, 0xCC55, 0xC3AA, 0xCC57,
- 0xC3AB, 0xCC58, 0xC3AC, 0xCC59, 0xC3AD, 0xCC60, 0xC3AE, 0xCC64,
- 0xC3AF, 0xCC66, 0xC3B0, 0xCC68, 0xC3B1, 0xCC70, 0xC3B2, 0xCC75,
- 0xC3B3, 0xCC98, 0xC3B4, 0xCC99, 0xC3B5, 0xCC9C, 0xC3B6, 0xCCA0,
- 0xC3B7, 0xCCA8, 0xC3B8, 0xCCA9, 0xC3B9, 0xCCAB, 0xC3BA, 0xCCAC,
- 0xC3BB, 0xCCAD, 0xC3BC, 0xCCB4, 0xC3BD, 0xCCB5, 0xC3BE, 0xCCB8,
- 0xC3BF, 0xCCBC, 0xC3C0, 0xCCC4, 0xC3C1, 0xCCC5, 0xC3C2, 0xCCC7,
- 0xC3C3, 0xCCC9, 0xC3C4, 0xCCD0, 0xC3C5, 0xCCD4, 0xC3C6, 0xCCE4,
- 0xC3C7, 0xCCEC, 0xC3C8, 0xCCF0, 0xC3C9, 0xCD01, 0xC3CA, 0xCD08,
- 0xC3CB, 0xCD09, 0xC3CC, 0xCD0C, 0xC3CD, 0xCD10, 0xC3CE, 0xCD18,
- 0xC3CF, 0xCD19, 0xC3D0, 0xCD1B, 0xC3D1, 0xCD1D, 0xC3D2, 0xCD24,
- 0xC3D3, 0xCD28, 0xC3D4, 0xCD2C, 0xC3D5, 0xCD39, 0xC3D6, 0xCD5C,
- 0xC3D7, 0xCD60, 0xC3D8, 0xCD64, 0xC3D9, 0xCD6C, 0xC3DA, 0xCD6D,
- 0xC3DB, 0xCD6F, 0xC3DC, 0xCD71, 0xC3DD, 0xCD78, 0xC3DE, 0xCD88,
- 0xC3DF, 0xCD94, 0xC3E0, 0xCD95, 0xC3E1, 0xCD98, 0xC3E2, 0xCD9C,
- 0xC3E3, 0xCDA4, 0xC3E4, 0xCDA5, 0xC3E5, 0xCDA7, 0xC3E6, 0xCDA9,
- 0xC3E7, 0xCDB0, 0xC3E8, 0xCDC4, 0xC3E9, 0xCDCC, 0xC3EA, 0xCDD0,
- 0xC3EB, 0xCDE8, 0xC3EC, 0xCDEC, 0xC3ED, 0xCDF0, 0xC3EE, 0xCDF8,
- 0xC3EF, 0xCDF9, 0xC3F0, 0xCDFB, 0xC3F1, 0xCDFD, 0xC3F2, 0xCE04,
- 0xC3F3, 0xCE08, 0xC3F4, 0xCE0C, 0xC3F5, 0xCE14, 0xC3F6, 0xCE19,
- 0xC3F7, 0xCE20, 0xC3F8, 0xCE21, 0xC3F9, 0xCE24, 0xC3FA, 0xCE28,
- 0xC3FB, 0xCE30, 0xC3FC, 0xCE31, 0xC3FD, 0xCE33, 0xC3FE, 0xCE35,
- 0xC441, 0xD6AB, 0xC442, 0xD6AD, 0xC443, 0xD6AE, 0xC444, 0xD6AF,
- 0xC445, 0xD6B1, 0xC446, 0xD6B2, 0xC447, 0xD6B3, 0xC448, 0xD6B4,
- 0xC449, 0xD6B5, 0xC44A, 0xD6B6, 0xC44B, 0xD6B7, 0xC44C, 0xD6B8,
- 0xC44D, 0xD6BA, 0xC44E, 0xD6BC, 0xC44F, 0xD6BD, 0xC450, 0xD6BE,
- 0xC451, 0xD6BF, 0xC452, 0xD6C0, 0xC453, 0xD6C1, 0xC454, 0xD6C2,
- 0xC455, 0xD6C3, 0xC456, 0xD6C6, 0xC457, 0xD6C7, 0xC458, 0xD6C9,
- 0xC459, 0xD6CA, 0xC45A, 0xD6CB, 0xC461, 0xD6CD, 0xC462, 0xD6CE,
- 0xC463, 0xD6CF, 0xC464, 0xD6D0, 0xC465, 0xD6D2, 0xC466, 0xD6D3,
- 0xC467, 0xD6D5, 0xC468, 0xD6D6, 0xC469, 0xD6D8, 0xC46A, 0xD6DA,
- 0xC46B, 0xD6DB, 0xC46C, 0xD6DC, 0xC46D, 0xD6DD, 0xC46E, 0xD6DE,
- 0xC46F, 0xD6DF, 0xC470, 0xD6E1, 0xC471, 0xD6E2, 0xC472, 0xD6E3,
- 0xC473, 0xD6E5, 0xC474, 0xD6E6, 0xC475, 0xD6E7, 0xC476, 0xD6E9,
- 0xC477, 0xD6EA, 0xC478, 0xD6EB, 0xC479, 0xD6EC, 0xC47A, 0xD6ED,
- 0xC481, 0xD6EE, 0xC482, 0xD6EF, 0xC483, 0xD6F1, 0xC484, 0xD6F2,
- 0xC485, 0xD6F3, 0xC486, 0xD6F4, 0xC487, 0xD6F6, 0xC488, 0xD6F7,
- 0xC489, 0xD6F8, 0xC48A, 0xD6F9, 0xC48B, 0xD6FA, 0xC48C, 0xD6FB,
- 0xC48D, 0xD6FE, 0xC48E, 0xD6FF, 0xC48F, 0xD701, 0xC490, 0xD702,
- 0xC491, 0xD703, 0xC492, 0xD705, 0xC493, 0xD706, 0xC494, 0xD707,
- 0xC495, 0xD708, 0xC496, 0xD709, 0xC497, 0xD70A, 0xC498, 0xD70B,
- 0xC499, 0xD70C, 0xC49A, 0xD70D, 0xC49B, 0xD70E, 0xC49C, 0xD70F,
- 0xC49D, 0xD710, 0xC49E, 0xD712, 0xC49F, 0xD713, 0xC4A0, 0xD714,
- 0xC4A1, 0xCE58, 0xC4A2, 0xCE59, 0xC4A3, 0xCE5C, 0xC4A4, 0xCE5F,
- 0xC4A5, 0xCE60, 0xC4A6, 0xCE61, 0xC4A7, 0xCE68, 0xC4A8, 0xCE69,
- 0xC4A9, 0xCE6B, 0xC4AA, 0xCE6D, 0xC4AB, 0xCE74, 0xC4AC, 0xCE75,
- 0xC4AD, 0xCE78, 0xC4AE, 0xCE7C, 0xC4AF, 0xCE84, 0xC4B0, 0xCE85,
- 0xC4B1, 0xCE87, 0xC4B2, 0xCE89, 0xC4B3, 0xCE90, 0xC4B4, 0xCE91,
- 0xC4B5, 0xCE94, 0xC4B6, 0xCE98, 0xC4B7, 0xCEA0, 0xC4B8, 0xCEA1,
- 0xC4B9, 0xCEA3, 0xC4BA, 0xCEA4, 0xC4BB, 0xCEA5, 0xC4BC, 0xCEAC,
- 0xC4BD, 0xCEAD, 0xC4BE, 0xCEC1, 0xC4BF, 0xCEE4, 0xC4C0, 0xCEE5,
- 0xC4C1, 0xCEE8, 0xC4C2, 0xCEEB, 0xC4C3, 0xCEEC, 0xC4C4, 0xCEF4,
- 0xC4C5, 0xCEF5, 0xC4C6, 0xCEF7, 0xC4C7, 0xCEF8, 0xC4C8, 0xCEF9,
- 0xC4C9, 0xCF00, 0xC4CA, 0xCF01, 0xC4CB, 0xCF04, 0xC4CC, 0xCF08,
- 0xC4CD, 0xCF10, 0xC4CE, 0xCF11, 0xC4CF, 0xCF13, 0xC4D0, 0xCF15,
- 0xC4D1, 0xCF1C, 0xC4D2, 0xCF20, 0xC4D3, 0xCF24, 0xC4D4, 0xCF2C,
- 0xC4D5, 0xCF2D, 0xC4D6, 0xCF2F, 0xC4D7, 0xCF30, 0xC4D8, 0xCF31,
- 0xC4D9, 0xCF38, 0xC4DA, 0xCF54, 0xC4DB, 0xCF55, 0xC4DC, 0xCF58,
- 0xC4DD, 0xCF5C, 0xC4DE, 0xCF64, 0xC4DF, 0xCF65, 0xC4E0, 0xCF67,
- 0xC4E1, 0xCF69, 0xC4E2, 0xCF70, 0xC4E3, 0xCF71, 0xC4E4, 0xCF74,
- 0xC4E5, 0xCF78, 0xC4E6, 0xCF80, 0xC4E7, 0xCF85, 0xC4E8, 0xCF8C,
- 0xC4E9, 0xCFA1, 0xC4EA, 0xCFA8, 0xC4EB, 0xCFB0, 0xC4EC, 0xCFC4,
- 0xC4ED, 0xCFE0, 0xC4EE, 0xCFE1, 0xC4EF, 0xCFE4, 0xC4F0, 0xCFE8,
- 0xC4F1, 0xCFF0, 0xC4F2, 0xCFF1, 0xC4F3, 0xCFF3, 0xC4F4, 0xCFF5,
- 0xC4F5, 0xCFFC, 0xC4F6, 0xD000, 0xC4F7, 0xD004, 0xC4F8, 0xD011,
- 0xC4F9, 0xD018, 0xC4FA, 0xD02D, 0xC4FB, 0xD034, 0xC4FC, 0xD035,
- 0xC4FD, 0xD038, 0xC4FE, 0xD03C, 0xC541, 0xD715, 0xC542, 0xD716,
- 0xC543, 0xD717, 0xC544, 0xD71A, 0xC545, 0xD71B, 0xC546, 0xD71D,
- 0xC547, 0xD71E, 0xC548, 0xD71F, 0xC549, 0xD721, 0xC54A, 0xD722,
- 0xC54B, 0xD723, 0xC54C, 0xD724, 0xC54D, 0xD725, 0xC54E, 0xD726,
- 0xC54F, 0xD727, 0xC550, 0xD72A, 0xC551, 0xD72C, 0xC552, 0xD72E,
- 0xC553, 0xD72F, 0xC554, 0xD730, 0xC555, 0xD731, 0xC556, 0xD732,
- 0xC557, 0xD733, 0xC558, 0xD736, 0xC559, 0xD737, 0xC55A, 0xD739,
- 0xC561, 0xD73A, 0xC562, 0xD73B, 0xC563, 0xD73D, 0xC564, 0xD73E,
- 0xC565, 0xD73F, 0xC566, 0xD740, 0xC567, 0xD741, 0xC568, 0xD742,
- 0xC569, 0xD743, 0xC56A, 0xD745, 0xC56B, 0xD746, 0xC56C, 0xD748,
- 0xC56D, 0xD74A, 0xC56E, 0xD74B, 0xC56F, 0xD74C, 0xC570, 0xD74D,
- 0xC571, 0xD74E, 0xC572, 0xD74F, 0xC573, 0xD752, 0xC574, 0xD753,
- 0xC575, 0xD755, 0xC576, 0xD75A, 0xC577, 0xD75B, 0xC578, 0xD75C,
- 0xC579, 0xD75D, 0xC57A, 0xD75E, 0xC581, 0xD75F, 0xC582, 0xD762,
- 0xC583, 0xD764, 0xC584, 0xD766, 0xC585, 0xD767, 0xC586, 0xD768,
- 0xC587, 0xD76A, 0xC588, 0xD76B, 0xC589, 0xD76D, 0xC58A, 0xD76E,
- 0xC58B, 0xD76F, 0xC58C, 0xD771, 0xC58D, 0xD772, 0xC58E, 0xD773,
- 0xC58F, 0xD775, 0xC590, 0xD776, 0xC591, 0xD777, 0xC592, 0xD778,
- 0xC593, 0xD779, 0xC594, 0xD77A, 0xC595, 0xD77B, 0xC596, 0xD77E,
- 0xC597, 0xD77F, 0xC598, 0xD780, 0xC599, 0xD782, 0xC59A, 0xD783,
- 0xC59B, 0xD784, 0xC59C, 0xD785, 0xC59D, 0xD786, 0xC59E, 0xD787,
- 0xC59F, 0xD78A, 0xC5A0, 0xD78B, 0xC5A1, 0xD044, 0xC5A2, 0xD045,
- 0xC5A3, 0xD047, 0xC5A4, 0xD049, 0xC5A5, 0xD050, 0xC5A6, 0xD054,
- 0xC5A7, 0xD058, 0xC5A8, 0xD060, 0xC5A9, 0xD06C, 0xC5AA, 0xD06D,
- 0xC5AB, 0xD070, 0xC5AC, 0xD074, 0xC5AD, 0xD07C, 0xC5AE, 0xD07D,
- 0xC5AF, 0xD081, 0xC5B0, 0xD0A4, 0xC5B1, 0xD0A5, 0xC5B2, 0xD0A8,
- 0xC5B3, 0xD0AC, 0xC5B4, 0xD0B4, 0xC5B5, 0xD0B5, 0xC5B6, 0xD0B7,
- 0xC5B7, 0xD0B9, 0xC5B8, 0xD0C0, 0xC5B9, 0xD0C1, 0xC5BA, 0xD0C4,
- 0xC5BB, 0xD0C8, 0xC5BC, 0xD0C9, 0xC5BD, 0xD0D0, 0xC5BE, 0xD0D1,
- 0xC5BF, 0xD0D3, 0xC5C0, 0xD0D4, 0xC5C1, 0xD0D5, 0xC5C2, 0xD0DC,
- 0xC5C3, 0xD0DD, 0xC5C4, 0xD0E0, 0xC5C5, 0xD0E4, 0xC5C6, 0xD0EC,
- 0xC5C7, 0xD0ED, 0xC5C8, 0xD0EF, 0xC5C9, 0xD0F0, 0xC5CA, 0xD0F1,
- 0xC5CB, 0xD0F8, 0xC5CC, 0xD10D, 0xC5CD, 0xD130, 0xC5CE, 0xD131,
- 0xC5CF, 0xD134, 0xC5D0, 0xD138, 0xC5D1, 0xD13A, 0xC5D2, 0xD140,
- 0xC5D3, 0xD141, 0xC5D4, 0xD143, 0xC5D5, 0xD144, 0xC5D6, 0xD145,
- 0xC5D7, 0xD14C, 0xC5D8, 0xD14D, 0xC5D9, 0xD150, 0xC5DA, 0xD154,
- 0xC5DB, 0xD15C, 0xC5DC, 0xD15D, 0xC5DD, 0xD15F, 0xC5DE, 0xD161,
- 0xC5DF, 0xD168, 0xC5E0, 0xD16C, 0xC5E1, 0xD17C, 0xC5E2, 0xD184,
- 0xC5E3, 0xD188, 0xC5E4, 0xD1A0, 0xC5E5, 0xD1A1, 0xC5E6, 0xD1A4,
- 0xC5E7, 0xD1A8, 0xC5E8, 0xD1B0, 0xC5E9, 0xD1B1, 0xC5EA, 0xD1B3,
- 0xC5EB, 0xD1B5, 0xC5EC, 0xD1BA, 0xC5ED, 0xD1BC, 0xC5EE, 0xD1C0,
- 0xC5EF, 0xD1D8, 0xC5F0, 0xD1F4, 0xC5F1, 0xD1F8, 0xC5F2, 0xD207,
- 0xC5F3, 0xD209, 0xC5F4, 0xD210, 0xC5F5, 0xD22C, 0xC5F6, 0xD22D,
- 0xC5F7, 0xD230, 0xC5F8, 0xD234, 0xC5F9, 0xD23C, 0xC5FA, 0xD23D,
- 0xC5FB, 0xD23F, 0xC5FC, 0xD241, 0xC5FD, 0xD248, 0xC5FE, 0xD25C,
- 0xC641, 0xD78D, 0xC642, 0xD78E, 0xC643, 0xD78F, 0xC644, 0xD791,
- 0xC645, 0xD792, 0xC646, 0xD793, 0xC647, 0xD794, 0xC648, 0xD795,
- 0xC649, 0xD796, 0xC64A, 0xD797, 0xC64B, 0xD79A, 0xC64C, 0xD79C,
- 0xC64D, 0xD79E, 0xC64E, 0xD79F, 0xC64F, 0xD7A0, 0xC650, 0xD7A1,
- 0xC651, 0xD7A2, 0xC652, 0xD7A3, 0xC6A1, 0xD264, 0xC6A2, 0xD280,
- 0xC6A3, 0xD281, 0xC6A4, 0xD284, 0xC6A5, 0xD288, 0xC6A6, 0xD290,
- 0xC6A7, 0xD291, 0xC6A8, 0xD295, 0xC6A9, 0xD29C, 0xC6AA, 0xD2A0,
- 0xC6AB, 0xD2A4, 0xC6AC, 0xD2AC, 0xC6AD, 0xD2B1, 0xC6AE, 0xD2B8,
- 0xC6AF, 0xD2B9, 0xC6B0, 0xD2BC, 0xC6B1, 0xD2BF, 0xC6B2, 0xD2C0,
- 0xC6B3, 0xD2C2, 0xC6B4, 0xD2C8, 0xC6B5, 0xD2C9, 0xC6B6, 0xD2CB,
- 0xC6B7, 0xD2D4, 0xC6B8, 0xD2D8, 0xC6B9, 0xD2DC, 0xC6BA, 0xD2E4,
- 0xC6BB, 0xD2E5, 0xC6BC, 0xD2F0, 0xC6BD, 0xD2F1, 0xC6BE, 0xD2F4,
- 0xC6BF, 0xD2F8, 0xC6C0, 0xD300, 0xC6C1, 0xD301, 0xC6C2, 0xD303,
- 0xC6C3, 0xD305, 0xC6C4, 0xD30C, 0xC6C5, 0xD30D, 0xC6C6, 0xD30E,
- 0xC6C7, 0xD310, 0xC6C8, 0xD314, 0xC6C9, 0xD316, 0xC6CA, 0xD31C,
- 0xC6CB, 0xD31D, 0xC6CC, 0xD31F, 0xC6CD, 0xD320, 0xC6CE, 0xD321,
- 0xC6CF, 0xD325, 0xC6D0, 0xD328, 0xC6D1, 0xD329, 0xC6D2, 0xD32C,
- 0xC6D3, 0xD330, 0xC6D4, 0xD338, 0xC6D5, 0xD339, 0xC6D6, 0xD33B,
- 0xC6D7, 0xD33C, 0xC6D8, 0xD33D, 0xC6D9, 0xD344, 0xC6DA, 0xD345,
- 0xC6DB, 0xD37C, 0xC6DC, 0xD37D, 0xC6DD, 0xD380, 0xC6DE, 0xD384,
- 0xC6DF, 0xD38C, 0xC6E0, 0xD38D, 0xC6E1, 0xD38F, 0xC6E2, 0xD390,
- 0xC6E3, 0xD391, 0xC6E4, 0xD398, 0xC6E5, 0xD399, 0xC6E6, 0xD39C,
- 0xC6E7, 0xD3A0, 0xC6E8, 0xD3A8, 0xC6E9, 0xD3A9, 0xC6EA, 0xD3AB,
- 0xC6EB, 0xD3AD, 0xC6EC, 0xD3B4, 0xC6ED, 0xD3B8, 0xC6EE, 0xD3BC,
- 0xC6EF, 0xD3C4, 0xC6F0, 0xD3C5, 0xC6F1, 0xD3C8, 0xC6F2, 0xD3C9,
- 0xC6F3, 0xD3D0, 0xC6F4, 0xD3D8, 0xC6F5, 0xD3E1, 0xC6F6, 0xD3E3,
- 0xC6F7, 0xD3EC, 0xC6F8, 0xD3ED, 0xC6F9, 0xD3F0, 0xC6FA, 0xD3F4,
- 0xC6FB, 0xD3FC, 0xC6FC, 0xD3FD, 0xC6FD, 0xD3FF, 0xC6FE, 0xD401,
- 0xC7A1, 0xD408, 0xC7A2, 0xD41D, 0xC7A3, 0xD440, 0xC7A4, 0xD444,
- 0xC7A5, 0xD45C, 0xC7A6, 0xD460, 0xC7A7, 0xD464, 0xC7A8, 0xD46D,
- 0xC7A9, 0xD46F, 0xC7AA, 0xD478, 0xC7AB, 0xD479, 0xC7AC, 0xD47C,
- 0xC7AD, 0xD47F, 0xC7AE, 0xD480, 0xC7AF, 0xD482, 0xC7B0, 0xD488,
- 0xC7B1, 0xD489, 0xC7B2, 0xD48B, 0xC7B3, 0xD48D, 0xC7B4, 0xD494,
- 0xC7B5, 0xD4A9, 0xC7B6, 0xD4CC, 0xC7B7, 0xD4D0, 0xC7B8, 0xD4D4,
- 0xC7B9, 0xD4DC, 0xC7BA, 0xD4DF, 0xC7BB, 0xD4E8, 0xC7BC, 0xD4EC,
- 0xC7BD, 0xD4F0, 0xC7BE, 0xD4F8, 0xC7BF, 0xD4FB, 0xC7C0, 0xD4FD,
- 0xC7C1, 0xD504, 0xC7C2, 0xD508, 0xC7C3, 0xD50C, 0xC7C4, 0xD514,
- 0xC7C5, 0xD515, 0xC7C6, 0xD517, 0xC7C7, 0xD53C, 0xC7C8, 0xD53D,
- 0xC7C9, 0xD540, 0xC7CA, 0xD544, 0xC7CB, 0xD54C, 0xC7CC, 0xD54D,
- 0xC7CD, 0xD54F, 0xC7CE, 0xD551, 0xC7CF, 0xD558, 0xC7D0, 0xD559,
- 0xC7D1, 0xD55C, 0xC7D2, 0xD560, 0xC7D3, 0xD565, 0xC7D4, 0xD568,
- 0xC7D5, 0xD569, 0xC7D6, 0xD56B, 0xC7D7, 0xD56D, 0xC7D8, 0xD574,
- 0xC7D9, 0xD575, 0xC7DA, 0xD578, 0xC7DB, 0xD57C, 0xC7DC, 0xD584,
- 0xC7DD, 0xD585, 0xC7DE, 0xD587, 0xC7DF, 0xD588, 0xC7E0, 0xD589,
- 0xC7E1, 0xD590, 0xC7E2, 0xD5A5, 0xC7E3, 0xD5C8, 0xC7E4, 0xD5C9,
- 0xC7E5, 0xD5CC, 0xC7E6, 0xD5D0, 0xC7E7, 0xD5D2, 0xC7E8, 0xD5D8,
- 0xC7E9, 0xD5D9, 0xC7EA, 0xD5DB, 0xC7EB, 0xD5DD, 0xC7EC, 0xD5E4,
- 0xC7ED, 0xD5E5, 0xC7EE, 0xD5E8, 0xC7EF, 0xD5EC, 0xC7F0, 0xD5F4,
- 0xC7F1, 0xD5F5, 0xC7F2, 0xD5F7, 0xC7F3, 0xD5F9, 0xC7F4, 0xD600,
- 0xC7F5, 0xD601, 0xC7F6, 0xD604, 0xC7F7, 0xD608, 0xC7F8, 0xD610,
- 0xC7F9, 0xD611, 0xC7FA, 0xD613, 0xC7FB, 0xD614, 0xC7FC, 0xD615,
- 0xC7FD, 0xD61C, 0xC7FE, 0xD620, 0xC8A1, 0xD624, 0xC8A2, 0xD62D,
- 0xC8A3, 0xD638, 0xC8A4, 0xD639, 0xC8A5, 0xD63C, 0xC8A6, 0xD640,
- 0xC8A7, 0xD645, 0xC8A8, 0xD648, 0xC8A9, 0xD649, 0xC8AA, 0xD64B,
- 0xC8AB, 0xD64D, 0xC8AC, 0xD651, 0xC8AD, 0xD654, 0xC8AE, 0xD655,
- 0xC8AF, 0xD658, 0xC8B0, 0xD65C, 0xC8B1, 0xD667, 0xC8B2, 0xD669,
- 0xC8B3, 0xD670, 0xC8B4, 0xD671, 0xC8B5, 0xD674, 0xC8B6, 0xD683,
- 0xC8B7, 0xD685, 0xC8B8, 0xD68C, 0xC8B9, 0xD68D, 0xC8BA, 0xD690,
- 0xC8BB, 0xD694, 0xC8BC, 0xD69D, 0xC8BD, 0xD69F, 0xC8BE, 0xD6A1,
- 0xC8BF, 0xD6A8, 0xC8C0, 0xD6AC, 0xC8C1, 0xD6B0, 0xC8C2, 0xD6B9,
- 0xC8C3, 0xD6BB, 0xC8C4, 0xD6C4, 0xC8C5, 0xD6C5, 0xC8C6, 0xD6C8,
- 0xC8C7, 0xD6CC, 0xC8C8, 0xD6D1, 0xC8C9, 0xD6D4, 0xC8CA, 0xD6D7,
- 0xC8CB, 0xD6D9, 0xC8CC, 0xD6E0, 0xC8CD, 0xD6E4, 0xC8CE, 0xD6E8,
- 0xC8CF, 0xD6F0, 0xC8D0, 0xD6F5, 0xC8D1, 0xD6FC, 0xC8D2, 0xD6FD,
- 0xC8D3, 0xD700, 0xC8D4, 0xD704, 0xC8D5, 0xD711, 0xC8D6, 0xD718,
- 0xC8D7, 0xD719, 0xC8D8, 0xD71C, 0xC8D9, 0xD720, 0xC8DA, 0xD728,
- 0xC8DB, 0xD729, 0xC8DC, 0xD72B, 0xC8DD, 0xD72D, 0xC8DE, 0xD734,
- 0xC8DF, 0xD735, 0xC8E0, 0xD738, 0xC8E1, 0xD73C, 0xC8E2, 0xD744,
- 0xC8E3, 0xD747, 0xC8E4, 0xD749, 0xC8E5, 0xD750, 0xC8E6, 0xD751,
- 0xC8E7, 0xD754, 0xC8E8, 0xD756, 0xC8E9, 0xD757, 0xC8EA, 0xD758,
- 0xC8EB, 0xD759, 0xC8EC, 0xD760, 0xC8ED, 0xD761, 0xC8EE, 0xD763,
- 0xC8EF, 0xD765, 0xC8F0, 0xD769, 0xC8F1, 0xD76C, 0xC8F2, 0xD770,
- 0xC8F3, 0xD774, 0xC8F4, 0xD77C, 0xC8F5, 0xD77D, 0xC8F6, 0xD781,
- 0xC8F7, 0xD788, 0xC8F8, 0xD789, 0xC8F9, 0xD78C, 0xC8FA, 0xD790,
- 0xC8FB, 0xD798, 0xC8FC, 0xD799, 0xC8FD, 0xD79B, 0xC8FE, 0xD79D,
- 0xCAA1, 0x4F3D, 0xCAA2, 0x4F73, 0xCAA3, 0x5047, 0xCAA4, 0x50F9,
- 0xCAA5, 0x52A0, 0xCAA6, 0x53EF, 0xCAA7, 0x5475, 0xCAA8, 0x54E5,
- 0xCAA9, 0x5609, 0xCAAA, 0x5AC1, 0xCAAB, 0x5BB6, 0xCAAC, 0x6687,
- 0xCAAD, 0x67B6, 0xCAAE, 0x67B7, 0xCAAF, 0x67EF, 0xCAB0, 0x6B4C,
- 0xCAB1, 0x73C2, 0xCAB2, 0x75C2, 0xCAB3, 0x7A3C, 0xCAB4, 0x82DB,
- 0xCAB5, 0x8304, 0xCAB6, 0x8857, 0xCAB7, 0x8888, 0xCAB8, 0x8A36,
- 0xCAB9, 0x8CC8, 0xCABA, 0x8DCF, 0xCABB, 0x8EFB, 0xCABC, 0x8FE6,
- 0xCABD, 0x99D5, 0xCABE, 0x523B, 0xCABF, 0x5374, 0xCAC0, 0x5404,
- 0xCAC1, 0x606A, 0xCAC2, 0x6164, 0xCAC3, 0x6BBC, 0xCAC4, 0x73CF,
- 0xCAC5, 0x811A, 0xCAC6, 0x89BA, 0xCAC7, 0x89D2, 0xCAC8, 0x95A3,
- 0xCAC9, 0x4F83, 0xCACA, 0x520A, 0xCACB, 0x58BE, 0xCACC, 0x5978,
- 0xCACD, 0x59E6, 0xCACE, 0x5E72, 0xCACF, 0x5E79, 0xCAD0, 0x61C7,
- 0xCAD1, 0x63C0, 0xCAD2, 0x6746, 0xCAD3, 0x67EC, 0xCAD4, 0x687F,
- 0xCAD5, 0x6F97, 0xCAD6, 0x764E, 0xCAD7, 0x770B, 0xCAD8, 0x78F5,
- 0xCAD9, 0x7A08, 0xCADA, 0x7AFF, 0xCADB, 0x7C21, 0xCADC, 0x809D,
- 0xCADD, 0x826E, 0xCADE, 0x8271, 0xCADF, 0x8AEB, 0xCAE0, 0x9593,
- 0xCAE1, 0x4E6B, 0xCAE2, 0x559D, 0xCAE3, 0x66F7, 0xCAE4, 0x6E34,
- 0xCAE5, 0x78A3, 0xCAE6, 0x7AED, 0xCAE7, 0x845B, 0xCAE8, 0x8910,
- 0xCAE9, 0x874E, 0xCAEA, 0x97A8, 0xCAEB, 0x52D8, 0xCAEC, 0x574E,
- 0xCAED, 0x582A, 0xCAEE, 0x5D4C, 0xCAEF, 0x611F, 0xCAF0, 0x61BE,
- 0xCAF1, 0x6221, 0xCAF2, 0x6562, 0xCAF3, 0x67D1, 0xCAF4, 0x6A44,
- 0xCAF5, 0x6E1B, 0xCAF6, 0x7518, 0xCAF7, 0x75B3, 0xCAF8, 0x76E3,
- 0xCAF9, 0x77B0, 0xCAFA, 0x7D3A, 0xCAFB, 0x90AF, 0xCAFC, 0x9451,
- 0xCAFD, 0x9452, 0xCAFE, 0x9F95, 0xCBA1, 0x5323, 0xCBA2, 0x5CAC,
- 0xCBA3, 0x7532, 0xCBA4, 0x80DB, 0xCBA5, 0x9240, 0xCBA6, 0x9598,
- 0xCBA7, 0x525B, 0xCBA8, 0x5808, 0xCBA9, 0x59DC, 0xCBAA, 0x5CA1,
- 0xCBAB, 0x5D17, 0xCBAC, 0x5EB7, 0xCBAD, 0x5F3A, 0xCBAE, 0x5F4A,
- 0xCBAF, 0x6177, 0xCBB0, 0x6C5F, 0xCBB1, 0x757A, 0xCBB2, 0x7586,
- 0xCBB3, 0x7CE0, 0xCBB4, 0x7D73, 0xCBB5, 0x7DB1, 0xCBB6, 0x7F8C,
- 0xCBB7, 0x8154, 0xCBB8, 0x8221, 0xCBB9, 0x8591, 0xCBBA, 0x8941,
- 0xCBBB, 0x8B1B, 0xCBBC, 0x92FC, 0xCBBD, 0x964D, 0xCBBE, 0x9C47,
- 0xCBBF, 0x4ECB, 0xCBC0, 0x4EF7, 0xCBC1, 0x500B, 0xCBC2, 0x51F1,
- 0xCBC3, 0x584F, 0xCBC4, 0x6137, 0xCBC5, 0x613E, 0xCBC6, 0x6168,
- 0xCBC7, 0x6539, 0xCBC8, 0x69EA, 0xCBC9, 0x6F11, 0xCBCA, 0x75A5,
- 0xCBCB, 0x7686, 0xCBCC, 0x76D6, 0xCBCD, 0x7B87, 0xCBCE, 0x82A5,
- 0xCBCF, 0x84CB, 0xCBD0, 0xF900, 0xCBD1, 0x93A7, 0xCBD2, 0x958B,
- 0xCBD3, 0x5580, 0xCBD4, 0x5BA2, 0xCBD5, 0x5751, 0xCBD6, 0xF901,
- 0xCBD7, 0x7CB3, 0xCBD8, 0x7FB9, 0xCBD9, 0x91B5, 0xCBDA, 0x5028,
- 0xCBDB, 0x53BB, 0xCBDC, 0x5C45, 0xCBDD, 0x5DE8, 0xCBDE, 0x62D2,
- 0xCBDF, 0x636E, 0xCBE0, 0x64DA, 0xCBE1, 0x64E7, 0xCBE2, 0x6E20,
- 0xCBE3, 0x70AC, 0xCBE4, 0x795B, 0xCBE5, 0x8DDD, 0xCBE6, 0x8E1E,
- 0xCBE7, 0xF902, 0xCBE8, 0x907D, 0xCBE9, 0x9245, 0xCBEA, 0x92F8,
- 0xCBEB, 0x4E7E, 0xCBEC, 0x4EF6, 0xCBED, 0x5065, 0xCBEE, 0x5DFE,
- 0xCBEF, 0x5EFA, 0xCBF0, 0x6106, 0xCBF1, 0x6957, 0xCBF2, 0x8171,
- 0xCBF3, 0x8654, 0xCBF4, 0x8E47, 0xCBF5, 0x9375, 0xCBF6, 0x9A2B,
- 0xCBF7, 0x4E5E, 0xCBF8, 0x5091, 0xCBF9, 0x6770, 0xCBFA, 0x6840,
- 0xCBFB, 0x5109, 0xCBFC, 0x528D, 0xCBFD, 0x5292, 0xCBFE, 0x6AA2,
- 0xCCA1, 0x77BC, 0xCCA2, 0x9210, 0xCCA3, 0x9ED4, 0xCCA4, 0x52AB,
- 0xCCA5, 0x602F, 0xCCA6, 0x8FF2, 0xCCA7, 0x5048, 0xCCA8, 0x61A9,
- 0xCCA9, 0x63ED, 0xCCAA, 0x64CA, 0xCCAB, 0x683C, 0xCCAC, 0x6A84,
- 0xCCAD, 0x6FC0, 0xCCAE, 0x8188, 0xCCAF, 0x89A1, 0xCCB0, 0x9694,
- 0xCCB1, 0x5805, 0xCCB2, 0x727D, 0xCCB3, 0x72AC, 0xCCB4, 0x7504,
- 0xCCB5, 0x7D79, 0xCCB6, 0x7E6D, 0xCCB7, 0x80A9, 0xCCB8, 0x898B,
- 0xCCB9, 0x8B74, 0xCCBA, 0x9063, 0xCCBB, 0x9D51, 0xCCBC, 0x6289,
- 0xCCBD, 0x6C7A, 0xCCBE, 0x6F54, 0xCCBF, 0x7D50, 0xCCC0, 0x7F3A,
- 0xCCC1, 0x8A23, 0xCCC2, 0x517C, 0xCCC3, 0x614A, 0xCCC4, 0x7B9D,
- 0xCCC5, 0x8B19, 0xCCC6, 0x9257, 0xCCC7, 0x938C, 0xCCC8, 0x4EAC,
- 0xCCC9, 0x4FD3, 0xCCCA, 0x501E, 0xCCCB, 0x50BE, 0xCCCC, 0x5106,
- 0xCCCD, 0x52C1, 0xCCCE, 0x52CD, 0xCCCF, 0x537F, 0xCCD0, 0x5770,
- 0xCCD1, 0x5883, 0xCCD2, 0x5E9A, 0xCCD3, 0x5F91, 0xCCD4, 0x6176,
- 0xCCD5, 0x61AC, 0xCCD6, 0x64CE, 0xCCD7, 0x656C, 0xCCD8, 0x666F,
- 0xCCD9, 0x66BB, 0xCCDA, 0x66F4, 0xCCDB, 0x6897, 0xCCDC, 0x6D87,
- 0xCCDD, 0x7085, 0xCCDE, 0x70F1, 0xCCDF, 0x749F, 0xCCE0, 0x74A5,
- 0xCCE1, 0x74CA, 0xCCE2, 0x75D9, 0xCCE3, 0x786C, 0xCCE4, 0x78EC,
- 0xCCE5, 0x7ADF, 0xCCE6, 0x7AF6, 0xCCE7, 0x7D45, 0xCCE8, 0x7D93,
- 0xCCE9, 0x8015, 0xCCEA, 0x803F, 0xCCEB, 0x811B, 0xCCEC, 0x8396,
- 0xCCED, 0x8B66, 0xCCEE, 0x8F15, 0xCCEF, 0x9015, 0xCCF0, 0x93E1,
- 0xCCF1, 0x9803, 0xCCF2, 0x9838, 0xCCF3, 0x9A5A, 0xCCF4, 0x9BE8,
- 0xCCF5, 0x4FC2, 0xCCF6, 0x5553, 0xCCF7, 0x583A, 0xCCF8, 0x5951,
- 0xCCF9, 0x5B63, 0xCCFA, 0x5C46, 0xCCFB, 0x60B8, 0xCCFC, 0x6212,
- 0xCCFD, 0x6842, 0xCCFE, 0x68B0, 0xCDA1, 0x68E8, 0xCDA2, 0x6EAA,
- 0xCDA3, 0x754C, 0xCDA4, 0x7678, 0xCDA5, 0x78CE, 0xCDA6, 0x7A3D,
- 0xCDA7, 0x7CFB, 0xCDA8, 0x7E6B, 0xCDA9, 0x7E7C, 0xCDAA, 0x8A08,
- 0xCDAB, 0x8AA1, 0xCDAC, 0x8C3F, 0xCDAD, 0x968E, 0xCDAE, 0x9DC4,
- 0xCDAF, 0x53E4, 0xCDB0, 0x53E9, 0xCDB1, 0x544A, 0xCDB2, 0x5471,
- 0xCDB3, 0x56FA, 0xCDB4, 0x59D1, 0xCDB5, 0x5B64, 0xCDB6, 0x5C3B,
- 0xCDB7, 0x5EAB, 0xCDB8, 0x62F7, 0xCDB9, 0x6537, 0xCDBA, 0x6545,
- 0xCDBB, 0x6572, 0xCDBC, 0x66A0, 0xCDBD, 0x67AF, 0xCDBE, 0x69C1,
- 0xCDBF, 0x6CBD, 0xCDC0, 0x75FC, 0xCDC1, 0x7690, 0xCDC2, 0x777E,
- 0xCDC3, 0x7A3F, 0xCDC4, 0x7F94, 0xCDC5, 0x8003, 0xCDC6, 0x80A1,
- 0xCDC7, 0x818F, 0xCDC8, 0x82E6, 0xCDC9, 0x82FD, 0xCDCA, 0x83F0,
- 0xCDCB, 0x85C1, 0xCDCC, 0x8831, 0xCDCD, 0x88B4, 0xCDCE, 0x8AA5,
- 0xCDCF, 0xF903, 0xCDD0, 0x8F9C, 0xCDD1, 0x932E, 0xCDD2, 0x96C7,
- 0xCDD3, 0x9867, 0xCDD4, 0x9AD8, 0xCDD5, 0x9F13, 0xCDD6, 0x54ED,
- 0xCDD7, 0x659B, 0xCDD8, 0x66F2, 0xCDD9, 0x688F, 0xCDDA, 0x7A40,
- 0xCDDB, 0x8C37, 0xCDDC, 0x9D60, 0xCDDD, 0x56F0, 0xCDDE, 0x5764,
- 0xCDDF, 0x5D11, 0xCDE0, 0x6606, 0xCDE1, 0x68B1, 0xCDE2, 0x68CD,
- 0xCDE3, 0x6EFE, 0xCDE4, 0x7428, 0xCDE5, 0x889E, 0xCDE6, 0x9BE4,
- 0xCDE7, 0x6C68, 0xCDE8, 0xF904, 0xCDE9, 0x9AA8, 0xCDEA, 0x4F9B,
- 0xCDEB, 0x516C, 0xCDEC, 0x5171, 0xCDED, 0x529F, 0xCDEE, 0x5B54,
- 0xCDEF, 0x5DE5, 0xCDF0, 0x6050, 0xCDF1, 0x606D, 0xCDF2, 0x62F1,
- 0xCDF3, 0x63A7, 0xCDF4, 0x653B, 0xCDF5, 0x73D9, 0xCDF6, 0x7A7A,
- 0xCDF7, 0x86A3, 0xCDF8, 0x8CA2, 0xCDF9, 0x978F, 0xCDFA, 0x4E32,
- 0xCDFB, 0x5BE1, 0xCDFC, 0x6208, 0xCDFD, 0x679C, 0xCDFE, 0x74DC,
- 0xCEA1, 0x79D1, 0xCEA2, 0x83D3, 0xCEA3, 0x8A87, 0xCEA4, 0x8AB2,
- 0xCEA5, 0x8DE8, 0xCEA6, 0x904E, 0xCEA7, 0x934B, 0xCEA8, 0x9846,
- 0xCEA9, 0x5ED3, 0xCEAA, 0x69E8, 0xCEAB, 0x85FF, 0xCEAC, 0x90ED,
- 0xCEAD, 0xF905, 0xCEAE, 0x51A0, 0xCEAF, 0x5B98, 0xCEB0, 0x5BEC,
- 0xCEB1, 0x6163, 0xCEB2, 0x68FA, 0xCEB3, 0x6B3E, 0xCEB4, 0x704C,
- 0xCEB5, 0x742F, 0xCEB6, 0x74D8, 0xCEB7, 0x7BA1, 0xCEB8, 0x7F50,
- 0xCEB9, 0x83C5, 0xCEBA, 0x89C0, 0xCEBB, 0x8CAB, 0xCEBC, 0x95DC,
- 0xCEBD, 0x9928, 0xCEBE, 0x522E, 0xCEBF, 0x605D, 0xCEC0, 0x62EC,
- 0xCEC1, 0x9002, 0xCEC2, 0x4F8A, 0xCEC3, 0x5149, 0xCEC4, 0x5321,
- 0xCEC5, 0x58D9, 0xCEC6, 0x5EE3, 0xCEC7, 0x66E0, 0xCEC8, 0x6D38,
- 0xCEC9, 0x709A, 0xCECA, 0x72C2, 0xCECB, 0x73D6, 0xCECC, 0x7B50,
- 0xCECD, 0x80F1, 0xCECE, 0x945B, 0xCECF, 0x5366, 0xCED0, 0x639B,
- 0xCED1, 0x7F6B, 0xCED2, 0x4E56, 0xCED3, 0x5080, 0xCED4, 0x584A,
- 0xCED5, 0x58DE, 0xCED6, 0x602A, 0xCED7, 0x6127, 0xCED8, 0x62D0,
- 0xCED9, 0x69D0, 0xCEDA, 0x9B41, 0xCEDB, 0x5B8F, 0xCEDC, 0x7D18,
- 0xCEDD, 0x80B1, 0xCEDE, 0x8F5F, 0xCEDF, 0x4EA4, 0xCEE0, 0x50D1,
- 0xCEE1, 0x54AC, 0xCEE2, 0x55AC, 0xCEE3, 0x5B0C, 0xCEE4, 0x5DA0,
- 0xCEE5, 0x5DE7, 0xCEE6, 0x652A, 0xCEE7, 0x654E, 0xCEE8, 0x6821,
- 0xCEE9, 0x6A4B, 0xCEEA, 0x72E1, 0xCEEB, 0x768E, 0xCEEC, 0x77EF,
- 0xCEED, 0x7D5E, 0xCEEE, 0x7FF9, 0xCEEF, 0x81A0, 0xCEF0, 0x854E,
- 0xCEF1, 0x86DF, 0xCEF2, 0x8F03, 0xCEF3, 0x8F4E, 0xCEF4, 0x90CA,
- 0xCEF5, 0x9903, 0xCEF6, 0x9A55, 0xCEF7, 0x9BAB, 0xCEF8, 0x4E18,
- 0xCEF9, 0x4E45, 0xCEFA, 0x4E5D, 0xCEFB, 0x4EC7, 0xCEFC, 0x4FF1,
- 0xCEFD, 0x5177, 0xCEFE, 0x52FE, 0xCFA1, 0x5340, 0xCFA2, 0x53E3,
- 0xCFA3, 0x53E5, 0xCFA4, 0x548E, 0xCFA5, 0x5614, 0xCFA6, 0x5775,
- 0xCFA7, 0x57A2, 0xCFA8, 0x5BC7, 0xCFA9, 0x5D87, 0xCFAA, 0x5ED0,
- 0xCFAB, 0x61FC, 0xCFAC, 0x62D8, 0xCFAD, 0x6551, 0xCFAE, 0x67B8,
- 0xCFAF, 0x67E9, 0xCFB0, 0x69CB, 0xCFB1, 0x6B50, 0xCFB2, 0x6BC6,
- 0xCFB3, 0x6BEC, 0xCFB4, 0x6C42, 0xCFB5, 0x6E9D, 0xCFB6, 0x7078,
- 0xCFB7, 0x72D7, 0xCFB8, 0x7396, 0xCFB9, 0x7403, 0xCFBA, 0x77BF,
- 0xCFBB, 0x77E9, 0xCFBC, 0x7A76, 0xCFBD, 0x7D7F, 0xCFBE, 0x8009,
- 0xCFBF, 0x81FC, 0xCFC0, 0x8205, 0xCFC1, 0x820A, 0xCFC2, 0x82DF,
- 0xCFC3, 0x8862, 0xCFC4, 0x8B33, 0xCFC5, 0x8CFC, 0xCFC6, 0x8EC0,
- 0xCFC7, 0x9011, 0xCFC8, 0x90B1, 0xCFC9, 0x9264, 0xCFCA, 0x92B6,
- 0xCFCB, 0x99D2, 0xCFCC, 0x9A45, 0xCFCD, 0x9CE9, 0xCFCE, 0x9DD7,
- 0xCFCF, 0x9F9C, 0xCFD0, 0x570B, 0xCFD1, 0x5C40, 0xCFD2, 0x83CA,
- 0xCFD3, 0x97A0, 0xCFD4, 0x97AB, 0xCFD5, 0x9EB4, 0xCFD6, 0x541B,
- 0xCFD7, 0x7A98, 0xCFD8, 0x7FA4, 0xCFD9, 0x88D9, 0xCFDA, 0x8ECD,
- 0xCFDB, 0x90E1, 0xCFDC, 0x5800, 0xCFDD, 0x5C48, 0xCFDE, 0x6398,
- 0xCFDF, 0x7A9F, 0xCFE0, 0x5BAE, 0xCFE1, 0x5F13, 0xCFE2, 0x7A79,
- 0xCFE3, 0x7AAE, 0xCFE4, 0x828E, 0xCFE5, 0x8EAC, 0xCFE6, 0x5026,
- 0xCFE7, 0x5238, 0xCFE8, 0x52F8, 0xCFE9, 0x5377, 0xCFEA, 0x5708,
- 0xCFEB, 0x62F3, 0xCFEC, 0x6372, 0xCFED, 0x6B0A, 0xCFEE, 0x6DC3,
- 0xCFEF, 0x7737, 0xCFF0, 0x53A5, 0xCFF1, 0x7357, 0xCFF2, 0x8568,
- 0xCFF3, 0x8E76, 0xCFF4, 0x95D5, 0xCFF5, 0x673A, 0xCFF6, 0x6AC3,
- 0xCFF7, 0x6F70, 0xCFF8, 0x8A6D, 0xCFF9, 0x8ECC, 0xCFFA, 0x994B,
- 0xCFFB, 0xF906, 0xCFFC, 0x6677, 0xCFFD, 0x6B78, 0xCFFE, 0x8CB4,
- 0xD0A1, 0x9B3C, 0xD0A2, 0xF907, 0xD0A3, 0x53EB, 0xD0A4, 0x572D,
- 0xD0A5, 0x594E, 0xD0A6, 0x63C6, 0xD0A7, 0x69FB, 0xD0A8, 0x73EA,
- 0xD0A9, 0x7845, 0xD0AA, 0x7ABA, 0xD0AB, 0x7AC5, 0xD0AC, 0x7CFE,
- 0xD0AD, 0x8475, 0xD0AE, 0x898F, 0xD0AF, 0x8D73, 0xD0B0, 0x9035,
- 0xD0B1, 0x95A8, 0xD0B2, 0x52FB, 0xD0B3, 0x5747, 0xD0B4, 0x7547,
- 0xD0B5, 0x7B60, 0xD0B6, 0x83CC, 0xD0B7, 0x921E, 0xD0B8, 0xF908,
- 0xD0B9, 0x6A58, 0xD0BA, 0x514B, 0xD0BB, 0x524B, 0xD0BC, 0x5287,
- 0xD0BD, 0x621F, 0xD0BE, 0x68D8, 0xD0BF, 0x6975, 0xD0C0, 0x9699,
- 0xD0C1, 0x50C5, 0xD0C2, 0x52A4, 0xD0C3, 0x52E4, 0xD0C4, 0x61C3,
- 0xD0C5, 0x65A4, 0xD0C6, 0x6839, 0xD0C7, 0x69FF, 0xD0C8, 0x747E,
- 0xD0C9, 0x7B4B, 0xD0CA, 0x82B9, 0xD0CB, 0x83EB, 0xD0CC, 0x89B2,
- 0xD0CD, 0x8B39, 0xD0CE, 0x8FD1, 0xD0CF, 0x9949, 0xD0D0, 0xF909,
- 0xD0D1, 0x4ECA, 0xD0D2, 0x5997, 0xD0D3, 0x64D2, 0xD0D4, 0x6611,
- 0xD0D5, 0x6A8E, 0xD0D6, 0x7434, 0xD0D7, 0x7981, 0xD0D8, 0x79BD,
- 0xD0D9, 0x82A9, 0xD0DA, 0x887E, 0xD0DB, 0x887F, 0xD0DC, 0x895F,
- 0xD0DD, 0xF90A, 0xD0DE, 0x9326, 0xD0DF, 0x4F0B, 0xD0E0, 0x53CA,
- 0xD0E1, 0x6025, 0xD0E2, 0x6271, 0xD0E3, 0x6C72, 0xD0E4, 0x7D1A,
- 0xD0E5, 0x7D66, 0xD0E6, 0x4E98, 0xD0E7, 0x5162, 0xD0E8, 0x77DC,
- 0xD0E9, 0x80AF, 0xD0EA, 0x4F01, 0xD0EB, 0x4F0E, 0xD0EC, 0x5176,
- 0xD0ED, 0x5180, 0xD0EE, 0x55DC, 0xD0EF, 0x5668, 0xD0F0, 0x573B,
- 0xD0F1, 0x57FA, 0xD0F2, 0x57FC, 0xD0F3, 0x5914, 0xD0F4, 0x5947,
- 0xD0F5, 0x5993, 0xD0F6, 0x5BC4, 0xD0F7, 0x5C90, 0xD0F8, 0x5D0E,
- 0xD0F9, 0x5DF1, 0xD0FA, 0x5E7E, 0xD0FB, 0x5FCC, 0xD0FC, 0x6280,
- 0xD0FD, 0x65D7, 0xD0FE, 0x65E3, 0xD1A1, 0x671E, 0xD1A2, 0x671F,
- 0xD1A3, 0x675E, 0xD1A4, 0x68CB, 0xD1A5, 0x68C4, 0xD1A6, 0x6A5F,
- 0xD1A7, 0x6B3A, 0xD1A8, 0x6C23, 0xD1A9, 0x6C7D, 0xD1AA, 0x6C82,
- 0xD1AB, 0x6DC7, 0xD1AC, 0x7398, 0xD1AD, 0x7426, 0xD1AE, 0x742A,
- 0xD1AF, 0x7482, 0xD1B0, 0x74A3, 0xD1B1, 0x7578, 0xD1B2, 0x757F,
- 0xD1B3, 0x7881, 0xD1B4, 0x78EF, 0xD1B5, 0x7941, 0xD1B6, 0x7947,
- 0xD1B7, 0x7948, 0xD1B8, 0x797A, 0xD1B9, 0x7B95, 0xD1BA, 0x7D00,
- 0xD1BB, 0x7DBA, 0xD1BC, 0x7F88, 0xD1BD, 0x8006, 0xD1BE, 0x802D,
- 0xD1BF, 0x808C, 0xD1C0, 0x8A18, 0xD1C1, 0x8B4F, 0xD1C2, 0x8C48,
- 0xD1C3, 0x8D77, 0xD1C4, 0x9321, 0xD1C5, 0x9324, 0xD1C6, 0x98E2,
- 0xD1C7, 0x9951, 0xD1C8, 0x9A0E, 0xD1C9, 0x9A0F, 0xD1CA, 0x9A65,
- 0xD1CB, 0x9E92, 0xD1CC, 0x7DCA, 0xD1CD, 0x4F76, 0xD1CE, 0x5409,
- 0xD1CF, 0x62EE, 0xD1D0, 0x6854, 0xD1D1, 0x91D1, 0xD1D2, 0x55AB,
- 0xD1D3, 0x513A, 0xD1D4, 0xF90B, 0xD1D5, 0xF90C, 0xD1D6, 0x5A1C,
- 0xD1D7, 0x61E6, 0xD1D8, 0xF90D, 0xD1D9, 0x62CF, 0xD1DA, 0x62FF,
- 0xD1DB, 0xF90E, 0xD1DC, 0xF90F, 0xD1DD, 0xF910, 0xD1DE, 0xF911,
- 0xD1DF, 0xF912, 0xD1E0, 0xF913, 0xD1E1, 0x90A3, 0xD1E2, 0xF914,
- 0xD1E3, 0xF915, 0xD1E4, 0xF916, 0xD1E5, 0xF917, 0xD1E6, 0xF918,
- 0xD1E7, 0x8AFE, 0xD1E8, 0xF919, 0xD1E9, 0xF91A, 0xD1EA, 0xF91B,
- 0xD1EB, 0xF91C, 0xD1EC, 0x6696, 0xD1ED, 0xF91D, 0xD1EE, 0x7156,
- 0xD1EF, 0xF91E, 0xD1F0, 0xF91F, 0xD1F1, 0x96E3, 0xD1F2, 0xF920,
- 0xD1F3, 0x634F, 0xD1F4, 0x637A, 0xD1F5, 0x5357, 0xD1F6, 0xF921,
- 0xD1F7, 0x678F, 0xD1F8, 0x6960, 0xD1F9, 0x6E73, 0xD1FA, 0xF922,
- 0xD1FB, 0x7537, 0xD1FC, 0xF923, 0xD1FD, 0xF924, 0xD1FE, 0xF925,
- 0xD2A1, 0x7D0D, 0xD2A2, 0xF926, 0xD2A3, 0xF927, 0xD2A4, 0x8872,
- 0xD2A5, 0x56CA, 0xD2A6, 0x5A18, 0xD2A7, 0xF928, 0xD2A8, 0xF929,
- 0xD2A9, 0xF92A, 0xD2AA, 0xF92B, 0xD2AB, 0xF92C, 0xD2AC, 0x4E43,
- 0xD2AD, 0xF92D, 0xD2AE, 0x5167, 0xD2AF, 0x5948, 0xD2B0, 0x67F0,
- 0xD2B1, 0x8010, 0xD2B2, 0xF92E, 0xD2B3, 0x5973, 0xD2B4, 0x5E74,
- 0xD2B5, 0x649A, 0xD2B6, 0x79CA, 0xD2B7, 0x5FF5, 0xD2B8, 0x606C,
- 0xD2B9, 0x62C8, 0xD2BA, 0x637B, 0xD2BB, 0x5BE7, 0xD2BC, 0x5BD7,
- 0xD2BD, 0x52AA, 0xD2BE, 0xF92F, 0xD2BF, 0x5974, 0xD2C0, 0x5F29,
- 0xD2C1, 0x6012, 0xD2C2, 0xF930, 0xD2C3, 0xF931, 0xD2C4, 0xF932,
- 0xD2C5, 0x7459, 0xD2C6, 0xF933, 0xD2C7, 0xF934, 0xD2C8, 0xF935,
- 0xD2C9, 0xF936, 0xD2CA, 0xF937, 0xD2CB, 0xF938, 0xD2CC, 0x99D1,
- 0xD2CD, 0xF939, 0xD2CE, 0xF93A, 0xD2CF, 0xF93B, 0xD2D0, 0xF93C,
- 0xD2D1, 0xF93D, 0xD2D2, 0xF93E, 0xD2D3, 0xF93F, 0xD2D4, 0xF940,
- 0xD2D5, 0xF941, 0xD2D6, 0xF942, 0xD2D7, 0xF943, 0xD2D8, 0x6FC3,
- 0xD2D9, 0xF944, 0xD2DA, 0xF945, 0xD2DB, 0x81BF, 0xD2DC, 0x8FB2,
- 0xD2DD, 0x60F1, 0xD2DE, 0xF946, 0xD2DF, 0xF947, 0xD2E0, 0x8166,
- 0xD2E1, 0xF948, 0xD2E2, 0xF949, 0xD2E3, 0x5C3F, 0xD2E4, 0xF94A,
- 0xD2E5, 0xF94B, 0xD2E6, 0xF94C, 0xD2E7, 0xF94D, 0xD2E8, 0xF94E,
- 0xD2E9, 0xF94F, 0xD2EA, 0xF950, 0xD2EB, 0xF951, 0xD2EC, 0x5AE9,
- 0xD2ED, 0x8A25, 0xD2EE, 0x677B, 0xD2EF, 0x7D10, 0xD2F0, 0xF952,
- 0xD2F1, 0xF953, 0xD2F2, 0xF954, 0xD2F3, 0xF955, 0xD2F4, 0xF956,
- 0xD2F5, 0xF957, 0xD2F6, 0x80FD, 0xD2F7, 0xF958, 0xD2F8, 0xF959,
- 0xD2F9, 0x5C3C, 0xD2FA, 0x6CE5, 0xD2FB, 0x533F, 0xD2FC, 0x6EBA,
- 0xD2FD, 0x591A, 0xD2FE, 0x8336, 0xD3A1, 0x4E39, 0xD3A2, 0x4EB6,
- 0xD3A3, 0x4F46, 0xD3A4, 0x55AE, 0xD3A5, 0x5718, 0xD3A6, 0x58C7,
- 0xD3A7, 0x5F56, 0xD3A8, 0x65B7, 0xD3A9, 0x65E6, 0xD3AA, 0x6A80,
- 0xD3AB, 0x6BB5, 0xD3AC, 0x6E4D, 0xD3AD, 0x77ED, 0xD3AE, 0x7AEF,
- 0xD3AF, 0x7C1E, 0xD3B0, 0x7DDE, 0xD3B1, 0x86CB, 0xD3B2, 0x8892,
- 0xD3B3, 0x9132, 0xD3B4, 0x935B, 0xD3B5, 0x64BB, 0xD3B6, 0x6FBE,
- 0xD3B7, 0x737A, 0xD3B8, 0x75B8, 0xD3B9, 0x9054, 0xD3BA, 0x5556,
- 0xD3BB, 0x574D, 0xD3BC, 0x61BA, 0xD3BD, 0x64D4, 0xD3BE, 0x66C7,
- 0xD3BF, 0x6DE1, 0xD3C0, 0x6E5B, 0xD3C1, 0x6F6D, 0xD3C2, 0x6FB9,
- 0xD3C3, 0x75F0, 0xD3C4, 0x8043, 0xD3C5, 0x81BD, 0xD3C6, 0x8541,
- 0xD3C7, 0x8983, 0xD3C8, 0x8AC7, 0xD3C9, 0x8B5A, 0xD3CA, 0x931F,
- 0xD3CB, 0x6C93, 0xD3CC, 0x7553, 0xD3CD, 0x7B54, 0xD3CE, 0x8E0F,
- 0xD3CF, 0x905D, 0xD3D0, 0x5510, 0xD3D1, 0x5802, 0xD3D2, 0x5858,
- 0xD3D3, 0x5E62, 0xD3D4, 0x6207, 0xD3D5, 0x649E, 0xD3D6, 0x68E0,
- 0xD3D7, 0x7576, 0xD3D8, 0x7CD6, 0xD3D9, 0x87B3, 0xD3DA, 0x9EE8,
- 0xD3DB, 0x4EE3, 0xD3DC, 0x5788, 0xD3DD, 0x576E, 0xD3DE, 0x5927,
- 0xD3DF, 0x5C0D, 0xD3E0, 0x5CB1, 0xD3E1, 0x5E36, 0xD3E2, 0x5F85,
- 0xD3E3, 0x6234, 0xD3E4, 0x64E1, 0xD3E5, 0x73B3, 0xD3E6, 0x81FA,
- 0xD3E7, 0x888B, 0xD3E8, 0x8CB8, 0xD3E9, 0x968A, 0xD3EA, 0x9EDB,
- 0xD3EB, 0x5B85, 0xD3EC, 0x5FB7, 0xD3ED, 0x60B3, 0xD3EE, 0x5012,
- 0xD3EF, 0x5200, 0xD3F0, 0x5230, 0xD3F1, 0x5716, 0xD3F2, 0x5835,
- 0xD3F3, 0x5857, 0xD3F4, 0x5C0E, 0xD3F5, 0x5C60, 0xD3F6, 0x5CF6,
- 0xD3F7, 0x5D8B, 0xD3F8, 0x5EA6, 0xD3F9, 0x5F92, 0xD3FA, 0x60BC,
- 0xD3FB, 0x6311, 0xD3FC, 0x6389, 0xD3FD, 0x6417, 0xD3FE, 0x6843,
- 0xD4A1, 0x68F9, 0xD4A2, 0x6AC2, 0xD4A3, 0x6DD8, 0xD4A4, 0x6E21,
- 0xD4A5, 0x6ED4, 0xD4A6, 0x6FE4, 0xD4A7, 0x71FE, 0xD4A8, 0x76DC,
- 0xD4A9, 0x7779, 0xD4AA, 0x79B1, 0xD4AB, 0x7A3B, 0xD4AC, 0x8404,
- 0xD4AD, 0x89A9, 0xD4AE, 0x8CED, 0xD4AF, 0x8DF3, 0xD4B0, 0x8E48,
- 0xD4B1, 0x9003, 0xD4B2, 0x9014, 0xD4B3, 0x9053, 0xD4B4, 0x90FD,
- 0xD4B5, 0x934D, 0xD4B6, 0x9676, 0xD4B7, 0x97DC, 0xD4B8, 0x6BD2,
- 0xD4B9, 0x7006, 0xD4BA, 0x7258, 0xD4BB, 0x72A2, 0xD4BC, 0x7368,
- 0xD4BD, 0x7763, 0xD4BE, 0x79BF, 0xD4BF, 0x7BE4, 0xD4C0, 0x7E9B,
- 0xD4C1, 0x8B80, 0xD4C2, 0x58A9, 0xD4C3, 0x60C7, 0xD4C4, 0x6566,
- 0xD4C5, 0x65FD, 0xD4C6, 0x66BE, 0xD4C7, 0x6C8C, 0xD4C8, 0x711E,
- 0xD4C9, 0x71C9, 0xD4CA, 0x8C5A, 0xD4CB, 0x9813, 0xD4CC, 0x4E6D,
- 0xD4CD, 0x7A81, 0xD4CE, 0x4EDD, 0xD4CF, 0x51AC, 0xD4D0, 0x51CD,
- 0xD4D1, 0x52D5, 0xD4D2, 0x540C, 0xD4D3, 0x61A7, 0xD4D4, 0x6771,
- 0xD4D5, 0x6850, 0xD4D6, 0x68DF, 0xD4D7, 0x6D1E, 0xD4D8, 0x6F7C,
- 0xD4D9, 0x75BC, 0xD4DA, 0x77B3, 0xD4DB, 0x7AE5, 0xD4DC, 0x80F4,
- 0xD4DD, 0x8463, 0xD4DE, 0x9285, 0xD4DF, 0x515C, 0xD4E0, 0x6597,
- 0xD4E1, 0x675C, 0xD4E2, 0x6793, 0xD4E3, 0x75D8, 0xD4E4, 0x7AC7,
- 0xD4E5, 0x8373, 0xD4E6, 0xF95A, 0xD4E7, 0x8C46, 0xD4E8, 0x9017,
- 0xD4E9, 0x982D, 0xD4EA, 0x5C6F, 0xD4EB, 0x81C0, 0xD4EC, 0x829A,
- 0xD4ED, 0x9041, 0xD4EE, 0x906F, 0xD4EF, 0x920D, 0xD4F0, 0x5F97,
- 0xD4F1, 0x5D9D, 0xD4F2, 0x6A59, 0xD4F3, 0x71C8, 0xD4F4, 0x767B,
- 0xD4F5, 0x7B49, 0xD4F6, 0x85E4, 0xD4F7, 0x8B04, 0xD4F8, 0x9127,
- 0xD4F9, 0x9A30, 0xD4FA, 0x5587, 0xD4FB, 0x61F6, 0xD4FC, 0xF95B,
- 0xD4FD, 0x7669, 0xD4FE, 0x7F85, 0xD5A1, 0x863F, 0xD5A2, 0x87BA,
- 0xD5A3, 0x88F8, 0xD5A4, 0x908F, 0xD5A5, 0xF95C, 0xD5A6, 0x6D1B,
- 0xD5A7, 0x70D9, 0xD5A8, 0x73DE, 0xD5A9, 0x7D61, 0xD5AA, 0x843D,
- 0xD5AB, 0xF95D, 0xD5AC, 0x916A, 0xD5AD, 0x99F1, 0xD5AE, 0xF95E,
- 0xD5AF, 0x4E82, 0xD5B0, 0x5375, 0xD5B1, 0x6B04, 0xD5B2, 0x6B12,
- 0xD5B3, 0x703E, 0xD5B4, 0x721B, 0xD5B5, 0x862D, 0xD5B6, 0x9E1E,
- 0xD5B7, 0x524C, 0xD5B8, 0x8FA3, 0xD5B9, 0x5D50, 0xD5BA, 0x64E5,
- 0xD5BB, 0x652C, 0xD5BC, 0x6B16, 0xD5BD, 0x6FEB, 0xD5BE, 0x7C43,
- 0xD5BF, 0x7E9C, 0xD5C0, 0x85CD, 0xD5C1, 0x8964, 0xD5C2, 0x89BD,
- 0xD5C3, 0x62C9, 0xD5C4, 0x81D8, 0xD5C5, 0x881F, 0xD5C6, 0x5ECA,
- 0xD5C7, 0x6717, 0xD5C8, 0x6D6A, 0xD5C9, 0x72FC, 0xD5CA, 0x7405,
- 0xD5CB, 0x746F, 0xD5CC, 0x8782, 0xD5CD, 0x90DE, 0xD5CE, 0x4F86,
- 0xD5CF, 0x5D0D, 0xD5D0, 0x5FA0, 0xD5D1, 0x840A, 0xD5D2, 0x51B7,
- 0xD5D3, 0x63A0, 0xD5D4, 0x7565, 0xD5D5, 0x4EAE, 0xD5D6, 0x5006,
- 0xD5D7, 0x5169, 0xD5D8, 0x51C9, 0xD5D9, 0x6881, 0xD5DA, 0x6A11,
- 0xD5DB, 0x7CAE, 0xD5DC, 0x7CB1, 0xD5DD, 0x7CE7, 0xD5DE, 0x826F,
- 0xD5DF, 0x8AD2, 0xD5E0, 0x8F1B, 0xD5E1, 0x91CF, 0xD5E2, 0x4FB6,
- 0xD5E3, 0x5137, 0xD5E4, 0x52F5, 0xD5E5, 0x5442, 0xD5E6, 0x5EEC,
- 0xD5E7, 0x616E, 0xD5E8, 0x623E, 0xD5E9, 0x65C5, 0xD5EA, 0x6ADA,
- 0xD5EB, 0x6FFE, 0xD5EC, 0x792A, 0xD5ED, 0x85DC, 0xD5EE, 0x8823,
- 0xD5EF, 0x95AD, 0xD5F0, 0x9A62, 0xD5F1, 0x9A6A, 0xD5F2, 0x9E97,
- 0xD5F3, 0x9ECE, 0xD5F4, 0x529B, 0xD5F5, 0x66C6, 0xD5F6, 0x6B77,
- 0xD5F7, 0x701D, 0xD5F8, 0x792B, 0xD5F9, 0x8F62, 0xD5FA, 0x9742,
- 0xD5FB, 0x6190, 0xD5FC, 0x6200, 0xD5FD, 0x6523, 0xD5FE, 0x6F23,
- 0xD6A1, 0x7149, 0xD6A2, 0x7489, 0xD6A3, 0x7DF4, 0xD6A4, 0x806F,
- 0xD6A5, 0x84EE, 0xD6A6, 0x8F26, 0xD6A7, 0x9023, 0xD6A8, 0x934A,
- 0xD6A9, 0x51BD, 0xD6AA, 0x5217, 0xD6AB, 0x52A3, 0xD6AC, 0x6D0C,
- 0xD6AD, 0x70C8, 0xD6AE, 0x88C2, 0xD6AF, 0x5EC9, 0xD6B0, 0x6582,
- 0xD6B1, 0x6BAE, 0xD6B2, 0x6FC2, 0xD6B3, 0x7C3E, 0xD6B4, 0x7375,
- 0xD6B5, 0x4EE4, 0xD6B6, 0x4F36, 0xD6B7, 0x56F9, 0xD6B8, 0xF95F,
- 0xD6B9, 0x5CBA, 0xD6BA, 0x5DBA, 0xD6BB, 0x601C, 0xD6BC, 0x73B2,
- 0xD6BD, 0x7B2D, 0xD6BE, 0x7F9A, 0xD6BF, 0x7FCE, 0xD6C0, 0x8046,
- 0xD6C1, 0x901E, 0xD6C2, 0x9234, 0xD6C3, 0x96F6, 0xD6C4, 0x9748,
- 0xD6C5, 0x9818, 0xD6C6, 0x9F61, 0xD6C7, 0x4F8B, 0xD6C8, 0x6FA7,
- 0xD6C9, 0x79AE, 0xD6CA, 0x91B4, 0xD6CB, 0x96B7, 0xD6CC, 0x52DE,
- 0xD6CD, 0xF960, 0xD6CE, 0x6488, 0xD6CF, 0x64C4, 0xD6D0, 0x6AD3,
- 0xD6D1, 0x6F5E, 0xD6D2, 0x7018, 0xD6D3, 0x7210, 0xD6D4, 0x76E7,
- 0xD6D5, 0x8001, 0xD6D6, 0x8606, 0xD6D7, 0x865C, 0xD6D8, 0x8DEF,
- 0xD6D9, 0x8F05, 0xD6DA, 0x9732, 0xD6DB, 0x9B6F, 0xD6DC, 0x9DFA,
- 0xD6DD, 0x9E75, 0xD6DE, 0x788C, 0xD6DF, 0x797F, 0xD6E0, 0x7DA0,
- 0xD6E1, 0x83C9, 0xD6E2, 0x9304, 0xD6E3, 0x9E7F, 0xD6E4, 0x9E93,
- 0xD6E5, 0x8AD6, 0xD6E6, 0x58DF, 0xD6E7, 0x5F04, 0xD6E8, 0x6727,
- 0xD6E9, 0x7027, 0xD6EA, 0x74CF, 0xD6EB, 0x7C60, 0xD6EC, 0x807E,
- 0xD6ED, 0x5121, 0xD6EE, 0x7028, 0xD6EF, 0x7262, 0xD6F0, 0x78CA,
- 0xD6F1, 0x8CC2, 0xD6F2, 0x8CDA, 0xD6F3, 0x8CF4, 0xD6F4, 0x96F7,
- 0xD6F5, 0x4E86, 0xD6F6, 0x50DA, 0xD6F7, 0x5BEE, 0xD6F8, 0x5ED6,
- 0xD6F9, 0x6599, 0xD6FA, 0x71CE, 0xD6FB, 0x7642, 0xD6FC, 0x77AD,
- 0xD6FD, 0x804A, 0xD6FE, 0x84FC, 0xD7A1, 0x907C, 0xD7A2, 0x9B27,
- 0xD7A3, 0x9F8D, 0xD7A4, 0x58D8, 0xD7A5, 0x5A41, 0xD7A6, 0x5C62,
- 0xD7A7, 0x6A13, 0xD7A8, 0x6DDA, 0xD7A9, 0x6F0F, 0xD7AA, 0x763B,
- 0xD7AB, 0x7D2F, 0xD7AC, 0x7E37, 0xD7AD, 0x851E, 0xD7AE, 0x8938,
- 0xD7AF, 0x93E4, 0xD7B0, 0x964B, 0xD7B1, 0x5289, 0xD7B2, 0x65D2,
- 0xD7B3, 0x67F3, 0xD7B4, 0x69B4, 0xD7B5, 0x6D41, 0xD7B6, 0x6E9C,
- 0xD7B7, 0x700F, 0xD7B8, 0x7409, 0xD7B9, 0x7460, 0xD7BA, 0x7559,
- 0xD7BB, 0x7624, 0xD7BC, 0x786B, 0xD7BD, 0x8B2C, 0xD7BE, 0x985E,
- 0xD7BF, 0x516D, 0xD7C0, 0x622E, 0xD7C1, 0x9678, 0xD7C2, 0x4F96,
- 0xD7C3, 0x502B, 0xD7C4, 0x5D19, 0xD7C5, 0x6DEA, 0xD7C6, 0x7DB8,
- 0xD7C7, 0x8F2A, 0xD7C8, 0x5F8B, 0xD7C9, 0x6144, 0xD7CA, 0x6817,
- 0xD7CB, 0xF961, 0xD7CC, 0x9686, 0xD7CD, 0x52D2, 0xD7CE, 0x808B,
- 0xD7CF, 0x51DC, 0xD7D0, 0x51CC, 0xD7D1, 0x695E, 0xD7D2, 0x7A1C,
- 0xD7D3, 0x7DBE, 0xD7D4, 0x83F1, 0xD7D5, 0x9675, 0xD7D6, 0x4FDA,
- 0xD7D7, 0x5229, 0xD7D8, 0x5398, 0xD7D9, 0x540F, 0xD7DA, 0x550E,
- 0xD7DB, 0x5C65, 0xD7DC, 0x60A7, 0xD7DD, 0x674E, 0xD7DE, 0x68A8,
- 0xD7DF, 0x6D6C, 0xD7E0, 0x7281, 0xD7E1, 0x72F8, 0xD7E2, 0x7406,
- 0xD7E3, 0x7483, 0xD7E4, 0xF962, 0xD7E5, 0x75E2, 0xD7E6, 0x7C6C,
- 0xD7E7, 0x7F79, 0xD7E8, 0x7FB8, 0xD7E9, 0x8389, 0xD7EA, 0x88CF,
- 0xD7EB, 0x88E1, 0xD7EC, 0x91CC, 0xD7ED, 0x91D0, 0xD7EE, 0x96E2,
- 0xD7EF, 0x9BC9, 0xD7F0, 0x541D, 0xD7F1, 0x6F7E, 0xD7F2, 0x71D0,
- 0xD7F3, 0x7498, 0xD7F4, 0x85FA, 0xD7F5, 0x8EAA, 0xD7F6, 0x96A3,
- 0xD7F7, 0x9C57, 0xD7F8, 0x9E9F, 0xD7F9, 0x6797, 0xD7FA, 0x6DCB,
- 0xD7FB, 0x7433, 0xD7FC, 0x81E8, 0xD7FD, 0x9716, 0xD7FE, 0x782C,
- 0xD8A1, 0x7ACB, 0xD8A2, 0x7B20, 0xD8A3, 0x7C92, 0xD8A4, 0x6469,
- 0xD8A5, 0x746A, 0xD8A6, 0x75F2, 0xD8A7, 0x78BC, 0xD8A8, 0x78E8,
- 0xD8A9, 0x99AC, 0xD8AA, 0x9B54, 0xD8AB, 0x9EBB, 0xD8AC, 0x5BDE,
- 0xD8AD, 0x5E55, 0xD8AE, 0x6F20, 0xD8AF, 0x819C, 0xD8B0, 0x83AB,
- 0xD8B1, 0x9088, 0xD8B2, 0x4E07, 0xD8B3, 0x534D, 0xD8B4, 0x5A29,
- 0xD8B5, 0x5DD2, 0xD8B6, 0x5F4E, 0xD8B7, 0x6162, 0xD8B8, 0x633D,
- 0xD8B9, 0x6669, 0xD8BA, 0x66FC, 0xD8BB, 0x6EFF, 0xD8BC, 0x6F2B,
- 0xD8BD, 0x7063, 0xD8BE, 0x779E, 0xD8BF, 0x842C, 0xD8C0, 0x8513,
- 0xD8C1, 0x883B, 0xD8C2, 0x8F13, 0xD8C3, 0x9945, 0xD8C4, 0x9C3B,
- 0xD8C5, 0x551C, 0xD8C6, 0x62B9, 0xD8C7, 0x672B, 0xD8C8, 0x6CAB,
- 0xD8C9, 0x8309, 0xD8CA, 0x896A, 0xD8CB, 0x977A, 0xD8CC, 0x4EA1,
- 0xD8CD, 0x5984, 0xD8CE, 0x5FD8, 0xD8CF, 0x5FD9, 0xD8D0, 0x671B,
- 0xD8D1, 0x7DB2, 0xD8D2, 0x7F54, 0xD8D3, 0x8292, 0xD8D4, 0x832B,
- 0xD8D5, 0x83BD, 0xD8D6, 0x8F1E, 0xD8D7, 0x9099, 0xD8D8, 0x57CB,
- 0xD8D9, 0x59B9, 0xD8DA, 0x5A92, 0xD8DB, 0x5BD0, 0xD8DC, 0x6627,
- 0xD8DD, 0x679A, 0xD8DE, 0x6885, 0xD8DF, 0x6BCF, 0xD8E0, 0x7164,
- 0xD8E1, 0x7F75, 0xD8E2, 0x8CB7, 0xD8E3, 0x8CE3, 0xD8E4, 0x9081,
- 0xD8E5, 0x9B45, 0xD8E6, 0x8108, 0xD8E7, 0x8C8A, 0xD8E8, 0x964C,
- 0xD8E9, 0x9A40, 0xD8EA, 0x9EA5, 0xD8EB, 0x5B5F, 0xD8EC, 0x6C13,
- 0xD8ED, 0x731B, 0xD8EE, 0x76F2, 0xD8EF, 0x76DF, 0xD8F0, 0x840C,
- 0xD8F1, 0x51AA, 0xD8F2, 0x8993, 0xD8F3, 0x514D, 0xD8F4, 0x5195,
- 0xD8F5, 0x52C9, 0xD8F6, 0x68C9, 0xD8F7, 0x6C94, 0xD8F8, 0x7704,
- 0xD8F9, 0x7720, 0xD8FA, 0x7DBF, 0xD8FB, 0x7DEC, 0xD8FC, 0x9762,
- 0xD8FD, 0x9EB5, 0xD8FE, 0x6EC5, 0xD9A1, 0x8511, 0xD9A2, 0x51A5,
- 0xD9A3, 0x540D, 0xD9A4, 0x547D, 0xD9A5, 0x660E, 0xD9A6, 0x669D,
- 0xD9A7, 0x6927, 0xD9A8, 0x6E9F, 0xD9A9, 0x76BF, 0xD9AA, 0x7791,
- 0xD9AB, 0x8317, 0xD9AC, 0x84C2, 0xD9AD, 0x879F, 0xD9AE, 0x9169,
- 0xD9AF, 0x9298, 0xD9B0, 0x9CF4, 0xD9B1, 0x8882, 0xD9B2, 0x4FAE,
- 0xD9B3, 0x5192, 0xD9B4, 0x52DF, 0xD9B5, 0x59C6, 0xD9B6, 0x5E3D,
- 0xD9B7, 0x6155, 0xD9B8, 0x6478, 0xD9B9, 0x6479, 0xD9BA, 0x66AE,
- 0xD9BB, 0x67D0, 0xD9BC, 0x6A21, 0xD9BD, 0x6BCD, 0xD9BE, 0x6BDB,
- 0xD9BF, 0x725F, 0xD9C0, 0x7261, 0xD9C1, 0x7441, 0xD9C2, 0x7738,
- 0xD9C3, 0x77DB, 0xD9C4, 0x8017, 0xD9C5, 0x82BC, 0xD9C6, 0x8305,
- 0xD9C7, 0x8B00, 0xD9C8, 0x8B28, 0xD9C9, 0x8C8C, 0xD9CA, 0x6728,
- 0xD9CB, 0x6C90, 0xD9CC, 0x7267, 0xD9CD, 0x76EE, 0xD9CE, 0x7766,
- 0xD9CF, 0x7A46, 0xD9D0, 0x9DA9, 0xD9D1, 0x6B7F, 0xD9D2, 0x6C92,
- 0xD9D3, 0x5922, 0xD9D4, 0x6726, 0xD9D5, 0x8499, 0xD9D6, 0x536F,
- 0xD9D7, 0x5893, 0xD9D8, 0x5999, 0xD9D9, 0x5EDF, 0xD9DA, 0x63CF,
- 0xD9DB, 0x6634, 0xD9DC, 0x6773, 0xD9DD, 0x6E3A, 0xD9DE, 0x732B,
- 0xD9DF, 0x7AD7, 0xD9E0, 0x82D7, 0xD9E1, 0x9328, 0xD9E2, 0x52D9,
- 0xD9E3, 0x5DEB, 0xD9E4, 0x61AE, 0xD9E5, 0x61CB, 0xD9E6, 0x620A,
- 0xD9E7, 0x62C7, 0xD9E8, 0x64AB, 0xD9E9, 0x65E0, 0xD9EA, 0x6959,
- 0xD9EB, 0x6B66, 0xD9EC, 0x6BCB, 0xD9ED, 0x7121, 0xD9EE, 0x73F7,
- 0xD9EF, 0x755D, 0xD9F0, 0x7E46, 0xD9F1, 0x821E, 0xD9F2, 0x8302,
- 0xD9F3, 0x856A, 0xD9F4, 0x8AA3, 0xD9F5, 0x8CBF, 0xD9F6, 0x9727,
- 0xD9F7, 0x9D61, 0xD9F8, 0x58A8, 0xD9F9, 0x9ED8, 0xD9FA, 0x5011,
- 0xD9FB, 0x520E, 0xD9FC, 0x543B, 0xD9FD, 0x554F, 0xD9FE, 0x6587,
- 0xDAA1, 0x6C76, 0xDAA2, 0x7D0A, 0xDAA3, 0x7D0B, 0xDAA4, 0x805E,
- 0xDAA5, 0x868A, 0xDAA6, 0x9580, 0xDAA7, 0x96EF, 0xDAA8, 0x52FF,
- 0xDAA9, 0x6C95, 0xDAAA, 0x7269, 0xDAAB, 0x5473, 0xDAAC, 0x5A9A,
- 0xDAAD, 0x5C3E, 0xDAAE, 0x5D4B, 0xDAAF, 0x5F4C, 0xDAB0, 0x5FAE,
- 0xDAB1, 0x672A, 0xDAB2, 0x68B6, 0xDAB3, 0x6963, 0xDAB4, 0x6E3C,
- 0xDAB5, 0x6E44, 0xDAB6, 0x7709, 0xDAB7, 0x7C73, 0xDAB8, 0x7F8E,
- 0xDAB9, 0x8587, 0xDABA, 0x8B0E, 0xDABB, 0x8FF7, 0xDABC, 0x9761,
- 0xDABD, 0x9EF4, 0xDABE, 0x5CB7, 0xDABF, 0x60B6, 0xDAC0, 0x610D,
- 0xDAC1, 0x61AB, 0xDAC2, 0x654F, 0xDAC3, 0x65FB, 0xDAC4, 0x65FC,
- 0xDAC5, 0x6C11, 0xDAC6, 0x6CEF, 0xDAC7, 0x739F, 0xDAC8, 0x73C9,
- 0xDAC9, 0x7DE1, 0xDACA, 0x9594, 0xDACB, 0x5BC6, 0xDACC, 0x871C,
- 0xDACD, 0x8B10, 0xDACE, 0x525D, 0xDACF, 0x535A, 0xDAD0, 0x62CD,
- 0xDAD1, 0x640F, 0xDAD2, 0x64B2, 0xDAD3, 0x6734, 0xDAD4, 0x6A38,
- 0xDAD5, 0x6CCA, 0xDAD6, 0x73C0, 0xDAD7, 0x749E, 0xDAD8, 0x7B94,
- 0xDAD9, 0x7C95, 0xDADA, 0x7E1B, 0xDADB, 0x818A, 0xDADC, 0x8236,
- 0xDADD, 0x8584, 0xDADE, 0x8FEB, 0xDADF, 0x96F9, 0xDAE0, 0x99C1,
- 0xDAE1, 0x4F34, 0xDAE2, 0x534A, 0xDAE3, 0x53CD, 0xDAE4, 0x53DB,
- 0xDAE5, 0x62CC, 0xDAE6, 0x642C, 0xDAE7, 0x6500, 0xDAE8, 0x6591,
- 0xDAE9, 0x69C3, 0xDAEA, 0x6CEE, 0xDAEB, 0x6F58, 0xDAEC, 0x73ED,
- 0xDAED, 0x7554, 0xDAEE, 0x7622, 0xDAEF, 0x76E4, 0xDAF0, 0x76FC,
- 0xDAF1, 0x78D0, 0xDAF2, 0x78FB, 0xDAF3, 0x792C, 0xDAF4, 0x7D46,
- 0xDAF5, 0x822C, 0xDAF6, 0x87E0, 0xDAF7, 0x8FD4, 0xDAF8, 0x9812,
- 0xDAF9, 0x98EF, 0xDAFA, 0x52C3, 0xDAFB, 0x62D4, 0xDAFC, 0x64A5,
- 0xDAFD, 0x6E24, 0xDAFE, 0x6F51, 0xDBA1, 0x767C, 0xDBA2, 0x8DCB,
- 0xDBA3, 0x91B1, 0xDBA4, 0x9262, 0xDBA5, 0x9AEE, 0xDBA6, 0x9B43,
- 0xDBA7, 0x5023, 0xDBA8, 0x508D, 0xDBA9, 0x574A, 0xDBAA, 0x59A8,
- 0xDBAB, 0x5C28, 0xDBAC, 0x5E47, 0xDBAD, 0x5F77, 0xDBAE, 0x623F,
- 0xDBAF, 0x653E, 0xDBB0, 0x65B9, 0xDBB1, 0x65C1, 0xDBB2, 0x6609,
- 0xDBB3, 0x678B, 0xDBB4, 0x699C, 0xDBB5, 0x6EC2, 0xDBB6, 0x78C5,
- 0xDBB7, 0x7D21, 0xDBB8, 0x80AA, 0xDBB9, 0x8180, 0xDBBA, 0x822B,
- 0xDBBB, 0x82B3, 0xDBBC, 0x84A1, 0xDBBD, 0x868C, 0xDBBE, 0x8A2A,
- 0xDBBF, 0x8B17, 0xDBC0, 0x90A6, 0xDBC1, 0x9632, 0xDBC2, 0x9F90,
- 0xDBC3, 0x500D, 0xDBC4, 0x4FF3, 0xDBC5, 0xF963, 0xDBC6, 0x57F9,
- 0xDBC7, 0x5F98, 0xDBC8, 0x62DC, 0xDBC9, 0x6392, 0xDBCA, 0x676F,
- 0xDBCB, 0x6E43, 0xDBCC, 0x7119, 0xDBCD, 0x76C3, 0xDBCE, 0x80CC,
- 0xDBCF, 0x80DA, 0xDBD0, 0x88F4, 0xDBD1, 0x88F5, 0xDBD2, 0x8919,
- 0xDBD3, 0x8CE0, 0xDBD4, 0x8F29, 0xDBD5, 0x914D, 0xDBD6, 0x966A,
- 0xDBD7, 0x4F2F, 0xDBD8, 0x4F70, 0xDBD9, 0x5E1B, 0xDBDA, 0x67CF,
- 0xDBDB, 0x6822, 0xDBDC, 0x767D, 0xDBDD, 0x767E, 0xDBDE, 0x9B44,
- 0xDBDF, 0x5E61, 0xDBE0, 0x6A0A, 0xDBE1, 0x7169, 0xDBE2, 0x71D4,
- 0xDBE3, 0x756A, 0xDBE4, 0xF964, 0xDBE5, 0x7E41, 0xDBE6, 0x8543,
- 0xDBE7, 0x85E9, 0xDBE8, 0x98DC, 0xDBE9, 0x4F10, 0xDBEA, 0x7B4F,
- 0xDBEB, 0x7F70, 0xDBEC, 0x95A5, 0xDBED, 0x51E1, 0xDBEE, 0x5E06,
- 0xDBEF, 0x68B5, 0xDBF0, 0x6C3E, 0xDBF1, 0x6C4E, 0xDBF2, 0x6CDB,
- 0xDBF3, 0x72AF, 0xDBF4, 0x7BC4, 0xDBF5, 0x8303, 0xDBF6, 0x6CD5,
- 0xDBF7, 0x743A, 0xDBF8, 0x50FB, 0xDBF9, 0x5288, 0xDBFA, 0x58C1,
- 0xDBFB, 0x64D8, 0xDBFC, 0x6A97, 0xDBFD, 0x74A7, 0xDBFE, 0x7656,
- 0xDCA1, 0x78A7, 0xDCA2, 0x8617, 0xDCA3, 0x95E2, 0xDCA4, 0x9739,
- 0xDCA5, 0xF965, 0xDCA6, 0x535E, 0xDCA7, 0x5F01, 0xDCA8, 0x8B8A,
- 0xDCA9, 0x8FA8, 0xDCAA, 0x8FAF, 0xDCAB, 0x908A, 0xDCAC, 0x5225,
- 0xDCAD, 0x77A5, 0xDCAE, 0x9C49, 0xDCAF, 0x9F08, 0xDCB0, 0x4E19,
- 0xDCB1, 0x5002, 0xDCB2, 0x5175, 0xDCB3, 0x5C5B, 0xDCB4, 0x5E77,
- 0xDCB5, 0x661E, 0xDCB6, 0x663A, 0xDCB7, 0x67C4, 0xDCB8, 0x68C5,
- 0xDCB9, 0x70B3, 0xDCBA, 0x7501, 0xDCBB, 0x75C5, 0xDCBC, 0x79C9,
- 0xDCBD, 0x7ADD, 0xDCBE, 0x8F27, 0xDCBF, 0x9920, 0xDCC0, 0x9A08,
- 0xDCC1, 0x4FDD, 0xDCC2, 0x5821, 0xDCC3, 0x5831, 0xDCC4, 0x5BF6,
- 0xDCC5, 0x666E, 0xDCC6, 0x6B65, 0xDCC7, 0x6D11, 0xDCC8, 0x6E7A,
- 0xDCC9, 0x6F7D, 0xDCCA, 0x73E4, 0xDCCB, 0x752B, 0xDCCC, 0x83E9,
- 0xDCCD, 0x88DC, 0xDCCE, 0x8913, 0xDCCF, 0x8B5C, 0xDCD0, 0x8F14,
- 0xDCD1, 0x4F0F, 0xDCD2, 0x50D5, 0xDCD3, 0x5310, 0xDCD4, 0x535C,
- 0xDCD5, 0x5B93, 0xDCD6, 0x5FA9, 0xDCD7, 0x670D, 0xDCD8, 0x798F,
- 0xDCD9, 0x8179, 0xDCDA, 0x832F, 0xDCDB, 0x8514, 0xDCDC, 0x8907,
- 0xDCDD, 0x8986, 0xDCDE, 0x8F39, 0xDCDF, 0x8F3B, 0xDCE0, 0x99A5,
- 0xDCE1, 0x9C12, 0xDCE2, 0x672C, 0xDCE3, 0x4E76, 0xDCE4, 0x4FF8,
- 0xDCE5, 0x5949, 0xDCE6, 0x5C01, 0xDCE7, 0x5CEF, 0xDCE8, 0x5CF0,
- 0xDCE9, 0x6367, 0xDCEA, 0x68D2, 0xDCEB, 0x70FD, 0xDCEC, 0x71A2,
- 0xDCED, 0x742B, 0xDCEE, 0x7E2B, 0xDCEF, 0x84EC, 0xDCF0, 0x8702,
- 0xDCF1, 0x9022, 0xDCF2, 0x92D2, 0xDCF3, 0x9CF3, 0xDCF4, 0x4E0D,
- 0xDCF5, 0x4ED8, 0xDCF6, 0x4FEF, 0xDCF7, 0x5085, 0xDCF8, 0x5256,
- 0xDCF9, 0x526F, 0xDCFA, 0x5426, 0xDCFB, 0x5490, 0xDCFC, 0x57E0,
- 0xDCFD, 0x592B, 0xDCFE, 0x5A66, 0xDDA1, 0x5B5A, 0xDDA2, 0x5B75,
- 0xDDA3, 0x5BCC, 0xDDA4, 0x5E9C, 0xDDA5, 0xF966, 0xDDA6, 0x6276,
- 0xDDA7, 0x6577, 0xDDA8, 0x65A7, 0xDDA9, 0x6D6E, 0xDDAA, 0x6EA5,
- 0xDDAB, 0x7236, 0xDDAC, 0x7B26, 0xDDAD, 0x7C3F, 0xDDAE, 0x7F36,
- 0xDDAF, 0x8150, 0xDDB0, 0x8151, 0xDDB1, 0x819A, 0xDDB2, 0x8240,
- 0xDDB3, 0x8299, 0xDDB4, 0x83A9, 0xDDB5, 0x8A03, 0xDDB6, 0x8CA0,
- 0xDDB7, 0x8CE6, 0xDDB8, 0x8CFB, 0xDDB9, 0x8D74, 0xDDBA, 0x8DBA,
- 0xDDBB, 0x90E8, 0xDDBC, 0x91DC, 0xDDBD, 0x961C, 0xDDBE, 0x9644,
- 0xDDBF, 0x99D9, 0xDDC0, 0x9CE7, 0xDDC1, 0x5317, 0xDDC2, 0x5206,
- 0xDDC3, 0x5429, 0xDDC4, 0x5674, 0xDDC5, 0x58B3, 0xDDC6, 0x5954,
- 0xDDC7, 0x596E, 0xDDC8, 0x5FFF, 0xDDC9, 0x61A4, 0xDDCA, 0x626E,
- 0xDDCB, 0x6610, 0xDDCC, 0x6C7E, 0xDDCD, 0x711A, 0xDDCE, 0x76C6,
- 0xDDCF, 0x7C89, 0xDDD0, 0x7CDE, 0xDDD1, 0x7D1B, 0xDDD2, 0x82AC,
- 0xDDD3, 0x8CC1, 0xDDD4, 0x96F0, 0xDDD5, 0xF967, 0xDDD6, 0x4F5B,
- 0xDDD7, 0x5F17, 0xDDD8, 0x5F7F, 0xDDD9, 0x62C2, 0xDDDA, 0x5D29,
- 0xDDDB, 0x670B, 0xDDDC, 0x68DA, 0xDDDD, 0x787C, 0xDDDE, 0x7E43,
- 0xDDDF, 0x9D6C, 0xDDE0, 0x4E15, 0xDDE1, 0x5099, 0xDDE2, 0x5315,
- 0xDDE3, 0x532A, 0xDDE4, 0x5351, 0xDDE5, 0x5983, 0xDDE6, 0x5A62,
- 0xDDE7, 0x5E87, 0xDDE8, 0x60B2, 0xDDE9, 0x618A, 0xDDEA, 0x6249,
- 0xDDEB, 0x6279, 0xDDEC, 0x6590, 0xDDED, 0x6787, 0xDDEE, 0x69A7,
- 0xDDEF, 0x6BD4, 0xDDF0, 0x6BD6, 0xDDF1, 0x6BD7, 0xDDF2, 0x6BD8,
- 0xDDF3, 0x6CB8, 0xDDF4, 0xF968, 0xDDF5, 0x7435, 0xDDF6, 0x75FA,
- 0xDDF7, 0x7812, 0xDDF8, 0x7891, 0xDDF9, 0x79D5, 0xDDFA, 0x79D8,
- 0xDDFB, 0x7C83, 0xDDFC, 0x7DCB, 0xDDFD, 0x7FE1, 0xDDFE, 0x80A5,
- 0xDEA1, 0x813E, 0xDEA2, 0x81C2, 0xDEA3, 0x83F2, 0xDEA4, 0x871A,
- 0xDEA5, 0x88E8, 0xDEA6, 0x8AB9, 0xDEA7, 0x8B6C, 0xDEA8, 0x8CBB,
- 0xDEA9, 0x9119, 0xDEAA, 0x975E, 0xDEAB, 0x98DB, 0xDEAC, 0x9F3B,
- 0xDEAD, 0x56AC, 0xDEAE, 0x5B2A, 0xDEAF, 0x5F6C, 0xDEB0, 0x658C,
- 0xDEB1, 0x6AB3, 0xDEB2, 0x6BAF, 0xDEB3, 0x6D5C, 0xDEB4, 0x6FF1,
- 0xDEB5, 0x7015, 0xDEB6, 0x725D, 0xDEB7, 0x73AD, 0xDEB8, 0x8CA7,
- 0xDEB9, 0x8CD3, 0xDEBA, 0x983B, 0xDEBB, 0x6191, 0xDEBC, 0x6C37,
- 0xDEBD, 0x8058, 0xDEBE, 0x9A01, 0xDEBF, 0x4E4D, 0xDEC0, 0x4E8B,
- 0xDEC1, 0x4E9B, 0xDEC2, 0x4ED5, 0xDEC3, 0x4F3A, 0xDEC4, 0x4F3C,
- 0xDEC5, 0x4F7F, 0xDEC6, 0x4FDF, 0xDEC7, 0x50FF, 0xDEC8, 0x53F2,
- 0xDEC9, 0x53F8, 0xDECA, 0x5506, 0xDECB, 0x55E3, 0xDECC, 0x56DB,
- 0xDECD, 0x58EB, 0xDECE, 0x5962, 0xDECF, 0x5A11, 0xDED0, 0x5BEB,
- 0xDED1, 0x5BFA, 0xDED2, 0x5C04, 0xDED3, 0x5DF3, 0xDED4, 0x5E2B,
- 0xDED5, 0x5F99, 0xDED6, 0x601D, 0xDED7, 0x6368, 0xDED8, 0x659C,
- 0xDED9, 0x65AF, 0xDEDA, 0x67F6, 0xDEDB, 0x67FB, 0xDEDC, 0x68AD,
- 0xDEDD, 0x6B7B, 0xDEDE, 0x6C99, 0xDEDF, 0x6CD7, 0xDEE0, 0x6E23,
- 0xDEE1, 0x7009, 0xDEE2, 0x7345, 0xDEE3, 0x7802, 0xDEE4, 0x793E,
- 0xDEE5, 0x7940, 0xDEE6, 0x7960, 0xDEE7, 0x79C1, 0xDEE8, 0x7BE9,
- 0xDEE9, 0x7D17, 0xDEEA, 0x7D72, 0xDEEB, 0x8086, 0xDEEC, 0x820D,
- 0xDEED, 0x838E, 0xDEEE, 0x84D1, 0xDEEF, 0x86C7, 0xDEF0, 0x88DF,
- 0xDEF1, 0x8A50, 0xDEF2, 0x8A5E, 0xDEF3, 0x8B1D, 0xDEF4, 0x8CDC,
- 0xDEF5, 0x8D66, 0xDEF6, 0x8FAD, 0xDEF7, 0x90AA, 0xDEF8, 0x98FC,
- 0xDEF9, 0x99DF, 0xDEFA, 0x9E9D, 0xDEFB, 0x524A, 0xDEFC, 0xF969,
- 0xDEFD, 0x6714, 0xDEFE, 0xF96A, 0xDFA1, 0x5098, 0xDFA2, 0x522A,
- 0xDFA3, 0x5C71, 0xDFA4, 0x6563, 0xDFA5, 0x6C55, 0xDFA6, 0x73CA,
- 0xDFA7, 0x7523, 0xDFA8, 0x759D, 0xDFA9, 0x7B97, 0xDFAA, 0x849C,
- 0xDFAB, 0x9178, 0xDFAC, 0x9730, 0xDFAD, 0x4E77, 0xDFAE, 0x6492,
- 0xDFAF, 0x6BBA, 0xDFB0, 0x715E, 0xDFB1, 0x85A9, 0xDFB2, 0x4E09,
- 0xDFB3, 0xF96B, 0xDFB4, 0x6749, 0xDFB5, 0x68EE, 0xDFB6, 0x6E17,
- 0xDFB7, 0x829F, 0xDFB8, 0x8518, 0xDFB9, 0x886B, 0xDFBA, 0x63F7,
- 0xDFBB, 0x6F81, 0xDFBC, 0x9212, 0xDFBD, 0x98AF, 0xDFBE, 0x4E0A,
- 0xDFBF, 0x50B7, 0xDFC0, 0x50CF, 0xDFC1, 0x511F, 0xDFC2, 0x5546,
- 0xDFC3, 0x55AA, 0xDFC4, 0x5617, 0xDFC5, 0x5B40, 0xDFC6, 0x5C19,
- 0xDFC7, 0x5CE0, 0xDFC8, 0x5E38, 0xDFC9, 0x5E8A, 0xDFCA, 0x5EA0,
- 0xDFCB, 0x5EC2, 0xDFCC, 0x60F3, 0xDFCD, 0x6851, 0xDFCE, 0x6A61,
- 0xDFCF, 0x6E58, 0xDFD0, 0x723D, 0xDFD1, 0x7240, 0xDFD2, 0x72C0,
- 0xDFD3, 0x76F8, 0xDFD4, 0x7965, 0xDFD5, 0x7BB1, 0xDFD6, 0x7FD4,
- 0xDFD7, 0x88F3, 0xDFD8, 0x89F4, 0xDFD9, 0x8A73, 0xDFDA, 0x8C61,
- 0xDFDB, 0x8CDE, 0xDFDC, 0x971C, 0xDFDD, 0x585E, 0xDFDE, 0x74BD,
- 0xDFDF, 0x8CFD, 0xDFE0, 0x55C7, 0xDFE1, 0xF96C, 0xDFE2, 0x7A61,
- 0xDFE3, 0x7D22, 0xDFE4, 0x8272, 0xDFE5, 0x7272, 0xDFE6, 0x751F,
- 0xDFE7, 0x7525, 0xDFE8, 0xF96D, 0xDFE9, 0x7B19, 0xDFEA, 0x5885,
- 0xDFEB, 0x58FB, 0xDFEC, 0x5DBC, 0xDFED, 0x5E8F, 0xDFEE, 0x5EB6,
- 0xDFEF, 0x5F90, 0xDFF0, 0x6055, 0xDFF1, 0x6292, 0xDFF2, 0x637F,
- 0xDFF3, 0x654D, 0xDFF4, 0x6691, 0xDFF5, 0x66D9, 0xDFF6, 0x66F8,
- 0xDFF7, 0x6816, 0xDFF8, 0x68F2, 0xDFF9, 0x7280, 0xDFFA, 0x745E,
- 0xDFFB, 0x7B6E, 0xDFFC, 0x7D6E, 0xDFFD, 0x7DD6, 0xDFFE, 0x7F72,
- 0xE0A1, 0x80E5, 0xE0A2, 0x8212, 0xE0A3, 0x85AF, 0xE0A4, 0x897F,
- 0xE0A5, 0x8A93, 0xE0A6, 0x901D, 0xE0A7, 0x92E4, 0xE0A8, 0x9ECD,
- 0xE0A9, 0x9F20, 0xE0AA, 0x5915, 0xE0AB, 0x596D, 0xE0AC, 0x5E2D,
- 0xE0AD, 0x60DC, 0xE0AE, 0x6614, 0xE0AF, 0x6673, 0xE0B0, 0x6790,
- 0xE0B1, 0x6C50, 0xE0B2, 0x6DC5, 0xE0B3, 0x6F5F, 0xE0B4, 0x77F3,
- 0xE0B5, 0x78A9, 0xE0B6, 0x84C6, 0xE0B7, 0x91CB, 0xE0B8, 0x932B,
- 0xE0B9, 0x4ED9, 0xE0BA, 0x50CA, 0xE0BB, 0x5148, 0xE0BC, 0x5584,
- 0xE0BD, 0x5B0B, 0xE0BE, 0x5BA3, 0xE0BF, 0x6247, 0xE0C0, 0x657E,
- 0xE0C1, 0x65CB, 0xE0C2, 0x6E32, 0xE0C3, 0x717D, 0xE0C4, 0x7401,
- 0xE0C5, 0x7444, 0xE0C6, 0x7487, 0xE0C7, 0x74BF, 0xE0C8, 0x766C,
- 0xE0C9, 0x79AA, 0xE0CA, 0x7DDA, 0xE0CB, 0x7E55, 0xE0CC, 0x7FA8,
- 0xE0CD, 0x817A, 0xE0CE, 0x81B3, 0xE0CF, 0x8239, 0xE0D0, 0x861A,
- 0xE0D1, 0x87EC, 0xE0D2, 0x8A75, 0xE0D3, 0x8DE3, 0xE0D4, 0x9078,
- 0xE0D5, 0x9291, 0xE0D6, 0x9425, 0xE0D7, 0x994D, 0xE0D8, 0x9BAE,
- 0xE0D9, 0x5368, 0xE0DA, 0x5C51, 0xE0DB, 0x6954, 0xE0DC, 0x6CC4,
- 0xE0DD, 0x6D29, 0xE0DE, 0x6E2B, 0xE0DF, 0x820C, 0xE0E0, 0x859B,
- 0xE0E1, 0x893B, 0xE0E2, 0x8A2D, 0xE0E3, 0x8AAA, 0xE0E4, 0x96EA,
- 0xE0E5, 0x9F67, 0xE0E6, 0x5261, 0xE0E7, 0x66B9, 0xE0E8, 0x6BB2,
- 0xE0E9, 0x7E96, 0xE0EA, 0x87FE, 0xE0EB, 0x8D0D, 0xE0EC, 0x9583,
- 0xE0ED, 0x965D, 0xE0EE, 0x651D, 0xE0EF, 0x6D89, 0xE0F0, 0x71EE,
- 0xE0F1, 0xF96E, 0xE0F2, 0x57CE, 0xE0F3, 0x59D3, 0xE0F4, 0x5BAC,
- 0xE0F5, 0x6027, 0xE0F6, 0x60FA, 0xE0F7, 0x6210, 0xE0F8, 0x661F,
- 0xE0F9, 0x665F, 0xE0FA, 0x7329, 0xE0FB, 0x73F9, 0xE0FC, 0x76DB,
- 0xE0FD, 0x7701, 0xE0FE, 0x7B6C, 0xE1A1, 0x8056, 0xE1A2, 0x8072,
- 0xE1A3, 0x8165, 0xE1A4, 0x8AA0, 0xE1A5, 0x9192, 0xE1A6, 0x4E16,
- 0xE1A7, 0x52E2, 0xE1A8, 0x6B72, 0xE1A9, 0x6D17, 0xE1AA, 0x7A05,
- 0xE1AB, 0x7B39, 0xE1AC, 0x7D30, 0xE1AD, 0xF96F, 0xE1AE, 0x8CB0,
- 0xE1AF, 0x53EC, 0xE1B0, 0x562F, 0xE1B1, 0x5851, 0xE1B2, 0x5BB5,
- 0xE1B3, 0x5C0F, 0xE1B4, 0x5C11, 0xE1B5, 0x5DE2, 0xE1B6, 0x6240,
- 0xE1B7, 0x6383, 0xE1B8, 0x6414, 0xE1B9, 0x662D, 0xE1BA, 0x68B3,
- 0xE1BB, 0x6CBC, 0xE1BC, 0x6D88, 0xE1BD, 0x6EAF, 0xE1BE, 0x701F,
- 0xE1BF, 0x70A4, 0xE1C0, 0x71D2, 0xE1C1, 0x7526, 0xE1C2, 0x758F,
- 0xE1C3, 0x758E, 0xE1C4, 0x7619, 0xE1C5, 0x7B11, 0xE1C6, 0x7BE0,
- 0xE1C7, 0x7C2B, 0xE1C8, 0x7D20, 0xE1C9, 0x7D39, 0xE1CA, 0x852C,
- 0xE1CB, 0x856D, 0xE1CC, 0x8607, 0xE1CD, 0x8A34, 0xE1CE, 0x900D,
- 0xE1CF, 0x9061, 0xE1D0, 0x90B5, 0xE1D1, 0x92B7, 0xE1D2, 0x97F6,
- 0xE1D3, 0x9A37, 0xE1D4, 0x4FD7, 0xE1D5, 0x5C6C, 0xE1D6, 0x675F,
- 0xE1D7, 0x6D91, 0xE1D8, 0x7C9F, 0xE1D9, 0x7E8C, 0xE1DA, 0x8B16,
- 0xE1DB, 0x8D16, 0xE1DC, 0x901F, 0xE1DD, 0x5B6B, 0xE1DE, 0x5DFD,
- 0xE1DF, 0x640D, 0xE1E0, 0x84C0, 0xE1E1, 0x905C, 0xE1E2, 0x98E1,
- 0xE1E3, 0x7387, 0xE1E4, 0x5B8B, 0xE1E5, 0x609A, 0xE1E6, 0x677E,
- 0xE1E7, 0x6DDE, 0xE1E8, 0x8A1F, 0xE1E9, 0x8AA6, 0xE1EA, 0x9001,
- 0xE1EB, 0x980C, 0xE1EC, 0x5237, 0xE1ED, 0xF970, 0xE1EE, 0x7051,
- 0xE1EF, 0x788E, 0xE1F0, 0x9396, 0xE1F1, 0x8870, 0xE1F2, 0x91D7,
- 0xE1F3, 0x4FEE, 0xE1F4, 0x53D7, 0xE1F5, 0x55FD, 0xE1F6, 0x56DA,
- 0xE1F7, 0x5782, 0xE1F8, 0x58FD, 0xE1F9, 0x5AC2, 0xE1FA, 0x5B88,
- 0xE1FB, 0x5CAB, 0xE1FC, 0x5CC0, 0xE1FD, 0x5E25, 0xE1FE, 0x6101,
- 0xE2A1, 0x620D, 0xE2A2, 0x624B, 0xE2A3, 0x6388, 0xE2A4, 0x641C,
- 0xE2A5, 0x6536, 0xE2A6, 0x6578, 0xE2A7, 0x6A39, 0xE2A8, 0x6B8A,
- 0xE2A9, 0x6C34, 0xE2AA, 0x6D19, 0xE2AB, 0x6F31, 0xE2AC, 0x71E7,
- 0xE2AD, 0x72E9, 0xE2AE, 0x7378, 0xE2AF, 0x7407, 0xE2B0, 0x74B2,
- 0xE2B1, 0x7626, 0xE2B2, 0x7761, 0xE2B3, 0x79C0, 0xE2B4, 0x7A57,
- 0xE2B5, 0x7AEA, 0xE2B6, 0x7CB9, 0xE2B7, 0x7D8F, 0xE2B8, 0x7DAC,
- 0xE2B9, 0x7E61, 0xE2BA, 0x7F9E, 0xE2BB, 0x8129, 0xE2BC, 0x8331,
- 0xE2BD, 0x8490, 0xE2BE, 0x84DA, 0xE2BF, 0x85EA, 0xE2C0, 0x8896,
- 0xE2C1, 0x8AB0, 0xE2C2, 0x8B90, 0xE2C3, 0x8F38, 0xE2C4, 0x9042,
- 0xE2C5, 0x9083, 0xE2C6, 0x916C, 0xE2C7, 0x9296, 0xE2C8, 0x92B9,
- 0xE2C9, 0x968B, 0xE2CA, 0x96A7, 0xE2CB, 0x96A8, 0xE2CC, 0x96D6,
- 0xE2CD, 0x9700, 0xE2CE, 0x9808, 0xE2CF, 0x9996, 0xE2D0, 0x9AD3,
- 0xE2D1, 0x9B1A, 0xE2D2, 0x53D4, 0xE2D3, 0x587E, 0xE2D4, 0x5919,
- 0xE2D5, 0x5B70, 0xE2D6, 0x5BBF, 0xE2D7, 0x6DD1, 0xE2D8, 0x6F5A,
- 0xE2D9, 0x719F, 0xE2DA, 0x7421, 0xE2DB, 0x74B9, 0xE2DC, 0x8085,
- 0xE2DD, 0x83FD, 0xE2DE, 0x5DE1, 0xE2DF, 0x5F87, 0xE2E0, 0x5FAA,
- 0xE2E1, 0x6042, 0xE2E2, 0x65EC, 0xE2E3, 0x6812, 0xE2E4, 0x696F,
- 0xE2E5, 0x6A53, 0xE2E6, 0x6B89, 0xE2E7, 0x6D35, 0xE2E8, 0x6DF3,
- 0xE2E9, 0x73E3, 0xE2EA, 0x76FE, 0xE2EB, 0x77AC, 0xE2EC, 0x7B4D,
- 0xE2ED, 0x7D14, 0xE2EE, 0x8123, 0xE2EF, 0x821C, 0xE2F0, 0x8340,
- 0xE2F1, 0x84F4, 0xE2F2, 0x8563, 0xE2F3, 0x8A62, 0xE2F4, 0x8AC4,
- 0xE2F5, 0x9187, 0xE2F6, 0x931E, 0xE2F7, 0x9806, 0xE2F8, 0x99B4,
- 0xE2F9, 0x620C, 0xE2FA, 0x8853, 0xE2FB, 0x8FF0, 0xE2FC, 0x9265,
- 0xE2FD, 0x5D07, 0xE2FE, 0x5D27, 0xE3A1, 0x5D69, 0xE3A2, 0x745F,
- 0xE3A3, 0x819D, 0xE3A4, 0x8768, 0xE3A5, 0x6FD5, 0xE3A6, 0x62FE,
- 0xE3A7, 0x7FD2, 0xE3A8, 0x8936, 0xE3A9, 0x8972, 0xE3AA, 0x4E1E,
- 0xE3AB, 0x4E58, 0xE3AC, 0x50E7, 0xE3AD, 0x52DD, 0xE3AE, 0x5347,
- 0xE3AF, 0x627F, 0xE3B0, 0x6607, 0xE3B1, 0x7E69, 0xE3B2, 0x8805,
- 0xE3B3, 0x965E, 0xE3B4, 0x4F8D, 0xE3B5, 0x5319, 0xE3B6, 0x5636,
- 0xE3B7, 0x59CB, 0xE3B8, 0x5AA4, 0xE3B9, 0x5C38, 0xE3BA, 0x5C4E,
- 0xE3BB, 0x5C4D, 0xE3BC, 0x5E02, 0xE3BD, 0x5F11, 0xE3BE, 0x6043,
- 0xE3BF, 0x65BD, 0xE3C0, 0x662F, 0xE3C1, 0x6642, 0xE3C2, 0x67BE,
- 0xE3C3, 0x67F4, 0xE3C4, 0x731C, 0xE3C5, 0x77E2, 0xE3C6, 0x793A,
- 0xE3C7, 0x7FC5, 0xE3C8, 0x8494, 0xE3C9, 0x84CD, 0xE3CA, 0x8996,
- 0xE3CB, 0x8A66, 0xE3CC, 0x8A69, 0xE3CD, 0x8AE1, 0xE3CE, 0x8C55,
- 0xE3CF, 0x8C7A, 0xE3D0, 0x57F4, 0xE3D1, 0x5BD4, 0xE3D2, 0x5F0F,
- 0xE3D3, 0x606F, 0xE3D4, 0x62ED, 0xE3D5, 0x690D, 0xE3D6, 0x6B96,
- 0xE3D7, 0x6E5C, 0xE3D8, 0x7184, 0xE3D9, 0x7BD2, 0xE3DA, 0x8755,
- 0xE3DB, 0x8B58, 0xE3DC, 0x8EFE, 0xE3DD, 0x98DF, 0xE3DE, 0x98FE,
- 0xE3DF, 0x4F38, 0xE3E0, 0x4F81, 0xE3E1, 0x4FE1, 0xE3E2, 0x547B,
- 0xE3E3, 0x5A20, 0xE3E4, 0x5BB8, 0xE3E5, 0x613C, 0xE3E6, 0x65B0,
- 0xE3E7, 0x6668, 0xE3E8, 0x71FC, 0xE3E9, 0x7533, 0xE3EA, 0x795E,
- 0xE3EB, 0x7D33, 0xE3EC, 0x814E, 0xE3ED, 0x81E3, 0xE3EE, 0x8398,
- 0xE3EF, 0x85AA, 0xE3F0, 0x85CE, 0xE3F1, 0x8703, 0xE3F2, 0x8A0A,
- 0xE3F3, 0x8EAB, 0xE3F4, 0x8F9B, 0xE3F5, 0xF971, 0xE3F6, 0x8FC5,
- 0xE3F7, 0x5931, 0xE3F8, 0x5BA4, 0xE3F9, 0x5BE6, 0xE3FA, 0x6089,
- 0xE3FB, 0x5BE9, 0xE3FC, 0x5C0B, 0xE3FD, 0x5FC3, 0xE3FE, 0x6C81,
- 0xE4A1, 0xF972, 0xE4A2, 0x6DF1, 0xE4A3, 0x700B, 0xE4A4, 0x751A,
- 0xE4A5, 0x82AF, 0xE4A6, 0x8AF6, 0xE4A7, 0x4EC0, 0xE4A8, 0x5341,
- 0xE4A9, 0xF973, 0xE4AA, 0x96D9, 0xE4AB, 0x6C0F, 0xE4AC, 0x4E9E,
- 0xE4AD, 0x4FC4, 0xE4AE, 0x5152, 0xE4AF, 0x555E, 0xE4B0, 0x5A25,
- 0xE4B1, 0x5CE8, 0xE4B2, 0x6211, 0xE4B3, 0x7259, 0xE4B4, 0x82BD,
- 0xE4B5, 0x83AA, 0xE4B6, 0x86FE, 0xE4B7, 0x8859, 0xE4B8, 0x8A1D,
- 0xE4B9, 0x963F, 0xE4BA, 0x96C5, 0xE4BB, 0x9913, 0xE4BC, 0x9D09,
- 0xE4BD, 0x9D5D, 0xE4BE, 0x580A, 0xE4BF, 0x5CB3, 0xE4C0, 0x5DBD,
- 0xE4C1, 0x5E44, 0xE4C2, 0x60E1, 0xE4C3, 0x6115, 0xE4C4, 0x63E1,
- 0xE4C5, 0x6A02, 0xE4C6, 0x6E25, 0xE4C7, 0x9102, 0xE4C8, 0x9354,
- 0xE4C9, 0x984E, 0xE4CA, 0x9C10, 0xE4CB, 0x9F77, 0xE4CC, 0x5B89,
- 0xE4CD, 0x5CB8, 0xE4CE, 0x6309, 0xE4CF, 0x664F, 0xE4D0, 0x6848,
- 0xE4D1, 0x773C, 0xE4D2, 0x96C1, 0xE4D3, 0x978D, 0xE4D4, 0x9854,
- 0xE4D5, 0x9B9F, 0xE4D6, 0x65A1, 0xE4D7, 0x8B01, 0xE4D8, 0x8ECB,
- 0xE4D9, 0x95BC, 0xE4DA, 0x5535, 0xE4DB, 0x5CA9, 0xE4DC, 0x5DD6,
- 0xE4DD, 0x5EB5, 0xE4DE, 0x6697, 0xE4DF, 0x764C, 0xE4E0, 0x83F4,
- 0xE4E1, 0x95C7, 0xE4E2, 0x58D3, 0xE4E3, 0x62BC, 0xE4E4, 0x72CE,
- 0xE4E5, 0x9D28, 0xE4E6, 0x4EF0, 0xE4E7, 0x592E, 0xE4E8, 0x600F,
- 0xE4E9, 0x663B, 0xE4EA, 0x6B83, 0xE4EB, 0x79E7, 0xE4EC, 0x9D26,
- 0xE4ED, 0x5393, 0xE4EE, 0x54C0, 0xE4EF, 0x57C3, 0xE4F0, 0x5D16,
- 0xE4F1, 0x611B, 0xE4F2, 0x66D6, 0xE4F3, 0x6DAF, 0xE4F4, 0x788D,
- 0xE4F5, 0x827E, 0xE4F6, 0x9698, 0xE4F7, 0x9744, 0xE4F8, 0x5384,
- 0xE4F9, 0x627C, 0xE4FA, 0x6396, 0xE4FB, 0x6DB2, 0xE4FC, 0x7E0A,
- 0xE4FD, 0x814B, 0xE4FE, 0x984D, 0xE5A1, 0x6AFB, 0xE5A2, 0x7F4C,
- 0xE5A3, 0x9DAF, 0xE5A4, 0x9E1A, 0xE5A5, 0x4E5F, 0xE5A6, 0x503B,
- 0xE5A7, 0x51B6, 0xE5A8, 0x591C, 0xE5A9, 0x60F9, 0xE5AA, 0x63F6,
- 0xE5AB, 0x6930, 0xE5AC, 0x723A, 0xE5AD, 0x8036, 0xE5AE, 0xF974,
- 0xE5AF, 0x91CE, 0xE5B0, 0x5F31, 0xE5B1, 0xF975, 0xE5B2, 0xF976,
- 0xE5B3, 0x7D04, 0xE5B4, 0x82E5, 0xE5B5, 0x846F, 0xE5B6, 0x84BB,
- 0xE5B7, 0x85E5, 0xE5B8, 0x8E8D, 0xE5B9, 0xF977, 0xE5BA, 0x4F6F,
- 0xE5BB, 0xF978, 0xE5BC, 0xF979, 0xE5BD, 0x58E4, 0xE5BE, 0x5B43,
- 0xE5BF, 0x6059, 0xE5C0, 0x63DA, 0xE5C1, 0x6518, 0xE5C2, 0x656D,
- 0xE5C3, 0x6698, 0xE5C4, 0xF97A, 0xE5C5, 0x694A, 0xE5C6, 0x6A23,
- 0xE5C7, 0x6D0B, 0xE5C8, 0x7001, 0xE5C9, 0x716C, 0xE5CA, 0x75D2,
- 0xE5CB, 0x760D, 0xE5CC, 0x79B3, 0xE5CD, 0x7A70, 0xE5CE, 0xF97B,
- 0xE5CF, 0x7F8A, 0xE5D0, 0xF97C, 0xE5D1, 0x8944, 0xE5D2, 0xF97D,
- 0xE5D3, 0x8B93, 0xE5D4, 0x91C0, 0xE5D5, 0x967D, 0xE5D6, 0xF97E,
- 0xE5D7, 0x990A, 0xE5D8, 0x5704, 0xE5D9, 0x5FA1, 0xE5DA, 0x65BC,
- 0xE5DB, 0x6F01, 0xE5DC, 0x7600, 0xE5DD, 0x79A6, 0xE5DE, 0x8A9E,
- 0xE5DF, 0x99AD, 0xE5E0, 0x9B5A, 0xE5E1, 0x9F6C, 0xE5E2, 0x5104,
- 0xE5E3, 0x61B6, 0xE5E4, 0x6291, 0xE5E5, 0x6A8D, 0xE5E6, 0x81C6,
- 0xE5E7, 0x5043, 0xE5E8, 0x5830, 0xE5E9, 0x5F66, 0xE5EA, 0x7109,
- 0xE5EB, 0x8A00, 0xE5EC, 0x8AFA, 0xE5ED, 0x5B7C, 0xE5EE, 0x8616,
- 0xE5EF, 0x4FFA, 0xE5F0, 0x513C, 0xE5F1, 0x56B4, 0xE5F2, 0x5944,
- 0xE5F3, 0x63A9, 0xE5F4, 0x6DF9, 0xE5F5, 0x5DAA, 0xE5F6, 0x696D,
- 0xE5F7, 0x5186, 0xE5F8, 0x4E88, 0xE5F9, 0x4F59, 0xE5FA, 0xF97F,
- 0xE5FB, 0xF980, 0xE5FC, 0xF981, 0xE5FD, 0x5982, 0xE5FE, 0xF982,
- 0xE6A1, 0xF983, 0xE6A2, 0x6B5F, 0xE6A3, 0x6C5D, 0xE6A4, 0xF984,
- 0xE6A5, 0x74B5, 0xE6A6, 0x7916, 0xE6A7, 0xF985, 0xE6A8, 0x8207,
- 0xE6A9, 0x8245, 0xE6AA, 0x8339, 0xE6AB, 0x8F3F, 0xE6AC, 0x8F5D,
- 0xE6AD, 0xF986, 0xE6AE, 0x9918, 0xE6AF, 0xF987, 0xE6B0, 0xF988,
- 0xE6B1, 0xF989, 0xE6B2, 0x4EA6, 0xE6B3, 0xF98A, 0xE6B4, 0x57DF,
- 0xE6B5, 0x5F79, 0xE6B6, 0x6613, 0xE6B7, 0xF98B, 0xE6B8, 0xF98C,
- 0xE6B9, 0x75AB, 0xE6BA, 0x7E79, 0xE6BB, 0x8B6F, 0xE6BC, 0xF98D,
- 0xE6BD, 0x9006, 0xE6BE, 0x9A5B, 0xE6BF, 0x56A5, 0xE6C0, 0x5827,
- 0xE6C1, 0x59F8, 0xE6C2, 0x5A1F, 0xE6C3, 0x5BB4, 0xE6C4, 0xF98E,
- 0xE6C5, 0x5EF6, 0xE6C6, 0xF98F, 0xE6C7, 0xF990, 0xE6C8, 0x6350,
- 0xE6C9, 0x633B, 0xE6CA, 0xF991, 0xE6CB, 0x693D, 0xE6CC, 0x6C87,
- 0xE6CD, 0x6CBF, 0xE6CE, 0x6D8E, 0xE6CF, 0x6D93, 0xE6D0, 0x6DF5,
- 0xE6D1, 0x6F14, 0xE6D2, 0xF992, 0xE6D3, 0x70DF, 0xE6D4, 0x7136,
- 0xE6D5, 0x7159, 0xE6D6, 0xF993, 0xE6D7, 0x71C3, 0xE6D8, 0x71D5,
- 0xE6D9, 0xF994, 0xE6DA, 0x784F, 0xE6DB, 0x786F, 0xE6DC, 0xF995,
- 0xE6DD, 0x7B75, 0xE6DE, 0x7DE3, 0xE6DF, 0xF996, 0xE6E0, 0x7E2F,
- 0xE6E1, 0xF997, 0xE6E2, 0x884D, 0xE6E3, 0x8EDF, 0xE6E4, 0xF998,
- 0xE6E5, 0xF999, 0xE6E6, 0xF99A, 0xE6E7, 0x925B, 0xE6E8, 0xF99B,
- 0xE6E9, 0x9CF6, 0xE6EA, 0xF99C, 0xE6EB, 0xF99D, 0xE6EC, 0xF99E,
- 0xE6ED, 0x6085, 0xE6EE, 0x6D85, 0xE6EF, 0xF99F, 0xE6F0, 0x71B1,
- 0xE6F1, 0xF9A0, 0xE6F2, 0xF9A1, 0xE6F3, 0x95B1, 0xE6F4, 0x53AD,
- 0xE6F5, 0xF9A2, 0xE6F6, 0xF9A3, 0xE6F7, 0xF9A4, 0xE6F8, 0x67D3,
- 0xE6F9, 0xF9A5, 0xE6FA, 0x708E, 0xE6FB, 0x7130, 0xE6FC, 0x7430,
- 0xE6FD, 0x8276, 0xE6FE, 0x82D2, 0xE7A1, 0xF9A6, 0xE7A2, 0x95BB,
- 0xE7A3, 0x9AE5, 0xE7A4, 0x9E7D, 0xE7A5, 0x66C4, 0xE7A6, 0xF9A7,
- 0xE7A7, 0x71C1, 0xE7A8, 0x8449, 0xE7A9, 0xF9A8, 0xE7AA, 0xF9A9,
- 0xE7AB, 0x584B, 0xE7AC, 0xF9AA, 0xE7AD, 0xF9AB, 0xE7AE, 0x5DB8,
- 0xE7AF, 0x5F71, 0xE7B0, 0xF9AC, 0xE7B1, 0x6620, 0xE7B2, 0x668E,
- 0xE7B3, 0x6979, 0xE7B4, 0x69AE, 0xE7B5, 0x6C38, 0xE7B6, 0x6CF3,
- 0xE7B7, 0x6E36, 0xE7B8, 0x6F41, 0xE7B9, 0x6FDA, 0xE7BA, 0x701B,
- 0xE7BB, 0x702F, 0xE7BC, 0x7150, 0xE7BD, 0x71DF, 0xE7BE, 0x7370,
- 0xE7BF, 0xF9AD, 0xE7C0, 0x745B, 0xE7C1, 0xF9AE, 0xE7C2, 0x74D4,
- 0xE7C3, 0x76C8, 0xE7C4, 0x7A4E, 0xE7C5, 0x7E93, 0xE7C6, 0xF9AF,
- 0xE7C7, 0xF9B0, 0xE7C8, 0x82F1, 0xE7C9, 0x8A60, 0xE7CA, 0x8FCE,
- 0xE7CB, 0xF9B1, 0xE7CC, 0x9348, 0xE7CD, 0xF9B2, 0xE7CE, 0x9719,
- 0xE7CF, 0xF9B3, 0xE7D0, 0xF9B4, 0xE7D1, 0x4E42, 0xE7D2, 0x502A,
- 0xE7D3, 0xF9B5, 0xE7D4, 0x5208, 0xE7D5, 0x53E1, 0xE7D6, 0x66F3,
- 0xE7D7, 0x6C6D, 0xE7D8, 0x6FCA, 0xE7D9, 0x730A, 0xE7DA, 0x777F,
- 0xE7DB, 0x7A62, 0xE7DC, 0x82AE, 0xE7DD, 0x85DD, 0xE7DE, 0x8602,
- 0xE7DF, 0xF9B6, 0xE7E0, 0x88D4, 0xE7E1, 0x8A63, 0xE7E2, 0x8B7D,
- 0xE7E3, 0x8C6B, 0xE7E4, 0xF9B7, 0xE7E5, 0x92B3, 0xE7E6, 0xF9B8,
- 0xE7E7, 0x9713, 0xE7E8, 0x9810, 0xE7E9, 0x4E94, 0xE7EA, 0x4F0D,
- 0xE7EB, 0x4FC9, 0xE7EC, 0x50B2, 0xE7ED, 0x5348, 0xE7EE, 0x543E,
- 0xE7EF, 0x5433, 0xE7F0, 0x55DA, 0xE7F1, 0x5862, 0xE7F2, 0x58BA,
- 0xE7F3, 0x5967, 0xE7F4, 0x5A1B, 0xE7F5, 0x5BE4, 0xE7F6, 0x609F,
- 0xE7F7, 0xF9B9, 0xE7F8, 0x61CA, 0xE7F9, 0x6556, 0xE7FA, 0x65FF,
- 0xE7FB, 0x6664, 0xE7FC, 0x68A7, 0xE7FD, 0x6C5A, 0xE7FE, 0x6FB3,
- 0xE8A1, 0x70CF, 0xE8A2, 0x71AC, 0xE8A3, 0x7352, 0xE8A4, 0x7B7D,
- 0xE8A5, 0x8708, 0xE8A6, 0x8AA4, 0xE8A7, 0x9C32, 0xE8A8, 0x9F07,
- 0xE8A9, 0x5C4B, 0xE8AA, 0x6C83, 0xE8AB, 0x7344, 0xE8AC, 0x7389,
- 0xE8AD, 0x923A, 0xE8AE, 0x6EAB, 0xE8AF, 0x7465, 0xE8B0, 0x761F,
- 0xE8B1, 0x7A69, 0xE8B2, 0x7E15, 0xE8B3, 0x860A, 0xE8B4, 0x5140,
- 0xE8B5, 0x58C5, 0xE8B6, 0x64C1, 0xE8B7, 0x74EE, 0xE8B8, 0x7515,
- 0xE8B9, 0x7670, 0xE8BA, 0x7FC1, 0xE8BB, 0x9095, 0xE8BC, 0x96CD,
- 0xE8BD, 0x9954, 0xE8BE, 0x6E26, 0xE8BF, 0x74E6, 0xE8C0, 0x7AA9,
- 0xE8C1, 0x7AAA, 0xE8C2, 0x81E5, 0xE8C3, 0x86D9, 0xE8C4, 0x8778,
- 0xE8C5, 0x8A1B, 0xE8C6, 0x5A49, 0xE8C7, 0x5B8C, 0xE8C8, 0x5B9B,
- 0xE8C9, 0x68A1, 0xE8CA, 0x6900, 0xE8CB, 0x6D63, 0xE8CC, 0x73A9,
- 0xE8CD, 0x7413, 0xE8CE, 0x742C, 0xE8CF, 0x7897, 0xE8D0, 0x7DE9,
- 0xE8D1, 0x7FEB, 0xE8D2, 0x8118, 0xE8D3, 0x8155, 0xE8D4, 0x839E,
- 0xE8D5, 0x8C4C, 0xE8D6, 0x962E, 0xE8D7, 0x9811, 0xE8D8, 0x66F0,
- 0xE8D9, 0x5F80, 0xE8DA, 0x65FA, 0xE8DB, 0x6789, 0xE8DC, 0x6C6A,
- 0xE8DD, 0x738B, 0xE8DE, 0x502D, 0xE8DF, 0x5A03, 0xE8E0, 0x6B6A,
- 0xE8E1, 0x77EE, 0xE8E2, 0x5916, 0xE8E3, 0x5D6C, 0xE8E4, 0x5DCD,
- 0xE8E5, 0x7325, 0xE8E6, 0x754F, 0xE8E7, 0xF9BA, 0xE8E8, 0xF9BB,
- 0xE8E9, 0x50E5, 0xE8EA, 0x51F9, 0xE8EB, 0x582F, 0xE8EC, 0x592D,
- 0xE8ED, 0x5996, 0xE8EE, 0x59DA, 0xE8EF, 0x5BE5, 0xE8F0, 0xF9BC,
- 0xE8F1, 0xF9BD, 0xE8F2, 0x5DA2, 0xE8F3, 0x62D7, 0xE8F4, 0x6416,
- 0xE8F5, 0x6493, 0xE8F6, 0x64FE, 0xE8F7, 0xF9BE, 0xE8F8, 0x66DC,
- 0xE8F9, 0xF9BF, 0xE8FA, 0x6A48, 0xE8FB, 0xF9C0, 0xE8FC, 0x71FF,
- 0xE8FD, 0x7464, 0xE8FE, 0xF9C1, 0xE9A1, 0x7A88, 0xE9A2, 0x7AAF,
- 0xE9A3, 0x7E47, 0xE9A4, 0x7E5E, 0xE9A5, 0x8000, 0xE9A6, 0x8170,
- 0xE9A7, 0xF9C2, 0xE9A8, 0x87EF, 0xE9A9, 0x8981, 0xE9AA, 0x8B20,
- 0xE9AB, 0x9059, 0xE9AC, 0xF9C3, 0xE9AD, 0x9080, 0xE9AE, 0x9952,
- 0xE9AF, 0x617E, 0xE9B0, 0x6B32, 0xE9B1, 0x6D74, 0xE9B2, 0x7E1F,
- 0xE9B3, 0x8925, 0xE9B4, 0x8FB1, 0xE9B5, 0x4FD1, 0xE9B6, 0x50AD,
- 0xE9B7, 0x5197, 0xE9B8, 0x52C7, 0xE9B9, 0x57C7, 0xE9BA, 0x5889,
- 0xE9BB, 0x5BB9, 0xE9BC, 0x5EB8, 0xE9BD, 0x6142, 0xE9BE, 0x6995,
- 0xE9BF, 0x6D8C, 0xE9C0, 0x6E67, 0xE9C1, 0x6EB6, 0xE9C2, 0x7194,
- 0xE9C3, 0x7462, 0xE9C4, 0x7528, 0xE9C5, 0x752C, 0xE9C6, 0x8073,
- 0xE9C7, 0x8338, 0xE9C8, 0x84C9, 0xE9C9, 0x8E0A, 0xE9CA, 0x9394,
- 0xE9CB, 0x93DE, 0xE9CC, 0xF9C4, 0xE9CD, 0x4E8E, 0xE9CE, 0x4F51,
- 0xE9CF, 0x5076, 0xE9D0, 0x512A, 0xE9D1, 0x53C8, 0xE9D2, 0x53CB,
- 0xE9D3, 0x53F3, 0xE9D4, 0x5B87, 0xE9D5, 0x5BD3, 0xE9D6, 0x5C24,
- 0xE9D7, 0x611A, 0xE9D8, 0x6182, 0xE9D9, 0x65F4, 0xE9DA, 0x725B,
- 0xE9DB, 0x7397, 0xE9DC, 0x7440, 0xE9DD, 0x76C2, 0xE9DE, 0x7950,
- 0xE9DF, 0x7991, 0xE9E0, 0x79B9, 0xE9E1, 0x7D06, 0xE9E2, 0x7FBD,
- 0xE9E3, 0x828B, 0xE9E4, 0x85D5, 0xE9E5, 0x865E, 0xE9E6, 0x8FC2,
- 0xE9E7, 0x9047, 0xE9E8, 0x90F5, 0xE9E9, 0x91EA, 0xE9EA, 0x9685,
- 0xE9EB, 0x96E8, 0xE9EC, 0x96E9, 0xE9ED, 0x52D6, 0xE9EE, 0x5F67,
- 0xE9EF, 0x65ED, 0xE9F0, 0x6631, 0xE9F1, 0x682F, 0xE9F2, 0x715C,
- 0xE9F3, 0x7A36, 0xE9F4, 0x90C1, 0xE9F5, 0x980A, 0xE9F6, 0x4E91,
- 0xE9F7, 0xF9C5, 0xE9F8, 0x6A52, 0xE9F9, 0x6B9E, 0xE9FA, 0x6F90,
- 0xE9FB, 0x7189, 0xE9FC, 0x8018, 0xE9FD, 0x82B8, 0xE9FE, 0x8553,
- 0xEAA1, 0x904B, 0xEAA2, 0x9695, 0xEAA3, 0x96F2, 0xEAA4, 0x97FB,
- 0xEAA5, 0x851A, 0xEAA6, 0x9B31, 0xEAA7, 0x4E90, 0xEAA8, 0x718A,
- 0xEAA9, 0x96C4, 0xEAAA, 0x5143, 0xEAAB, 0x539F, 0xEAAC, 0x54E1,
- 0xEAAD, 0x5713, 0xEAAE, 0x5712, 0xEAAF, 0x57A3, 0xEAB0, 0x5A9B,
- 0xEAB1, 0x5AC4, 0xEAB2, 0x5BC3, 0xEAB3, 0x6028, 0xEAB4, 0x613F,
- 0xEAB5, 0x63F4, 0xEAB6, 0x6C85, 0xEAB7, 0x6D39, 0xEAB8, 0x6E72,
- 0xEAB9, 0x6E90, 0xEABA, 0x7230, 0xEABB, 0x733F, 0xEABC, 0x7457,
- 0xEABD, 0x82D1, 0xEABE, 0x8881, 0xEABF, 0x8F45, 0xEAC0, 0x9060,
- 0xEAC1, 0xF9C6, 0xEAC2, 0x9662, 0xEAC3, 0x9858, 0xEAC4, 0x9D1B,
- 0xEAC5, 0x6708, 0xEAC6, 0x8D8A, 0xEAC7, 0x925E, 0xEAC8, 0x4F4D,
- 0xEAC9, 0x5049, 0xEACA, 0x50DE, 0xEACB, 0x5371, 0xEACC, 0x570D,
- 0xEACD, 0x59D4, 0xEACE, 0x5A01, 0xEACF, 0x5C09, 0xEAD0, 0x6170,
- 0xEAD1, 0x6690, 0xEAD2, 0x6E2D, 0xEAD3, 0x7232, 0xEAD4, 0x744B,
- 0xEAD5, 0x7DEF, 0xEAD6, 0x80C3, 0xEAD7, 0x840E, 0xEAD8, 0x8466,
- 0xEAD9, 0x853F, 0xEADA, 0x875F, 0xEADB, 0x885B, 0xEADC, 0x8918,
- 0xEADD, 0x8B02, 0xEADE, 0x9055, 0xEADF, 0x97CB, 0xEAE0, 0x9B4F,
- 0xEAE1, 0x4E73, 0xEAE2, 0x4F91, 0xEAE3, 0x5112, 0xEAE4, 0x516A,
- 0xEAE5, 0xF9C7, 0xEAE6, 0x552F, 0xEAE7, 0x55A9, 0xEAE8, 0x5B7A,
- 0xEAE9, 0x5BA5, 0xEAEA, 0x5E7C, 0xEAEB, 0x5E7D, 0xEAEC, 0x5EBE,
- 0xEAED, 0x60A0, 0xEAEE, 0x60DF, 0xEAEF, 0x6108, 0xEAF0, 0x6109,
- 0xEAF1, 0x63C4, 0xEAF2, 0x6538, 0xEAF3, 0x6709, 0xEAF4, 0xF9C8,
- 0xEAF5, 0x67D4, 0xEAF6, 0x67DA, 0xEAF7, 0xF9C9, 0xEAF8, 0x6961,
- 0xEAF9, 0x6962, 0xEAFA, 0x6CB9, 0xEAFB, 0x6D27, 0xEAFC, 0xF9CA,
- 0xEAFD, 0x6E38, 0xEAFE, 0xF9CB, 0xEBA1, 0x6FE1, 0xEBA2, 0x7336,
- 0xEBA3, 0x7337, 0xEBA4, 0xF9CC, 0xEBA5, 0x745C, 0xEBA6, 0x7531,
- 0xEBA7, 0xF9CD, 0xEBA8, 0x7652, 0xEBA9, 0xF9CE, 0xEBAA, 0xF9CF,
- 0xEBAB, 0x7DAD, 0xEBAC, 0x81FE, 0xEBAD, 0x8438, 0xEBAE, 0x88D5,
- 0xEBAF, 0x8A98, 0xEBB0, 0x8ADB, 0xEBB1, 0x8AED, 0xEBB2, 0x8E30,
- 0xEBB3, 0x8E42, 0xEBB4, 0x904A, 0xEBB5, 0x903E, 0xEBB6, 0x907A,
- 0xEBB7, 0x9149, 0xEBB8, 0x91C9, 0xEBB9, 0x936E, 0xEBBA, 0xF9D0,
- 0xEBBB, 0xF9D1, 0xEBBC, 0x5809, 0xEBBD, 0xF9D2, 0xEBBE, 0x6BD3,
- 0xEBBF, 0x8089, 0xEBC0, 0x80B2, 0xEBC1, 0xF9D3, 0xEBC2, 0xF9D4,
- 0xEBC3, 0x5141, 0xEBC4, 0x596B, 0xEBC5, 0x5C39, 0xEBC6, 0xF9D5,
- 0xEBC7, 0xF9D6, 0xEBC8, 0x6F64, 0xEBC9, 0x73A7, 0xEBCA, 0x80E4,
- 0xEBCB, 0x8D07, 0xEBCC, 0xF9D7, 0xEBCD, 0x9217, 0xEBCE, 0x958F,
- 0xEBCF, 0xF9D8, 0xEBD0, 0xF9D9, 0xEBD1, 0xF9DA, 0xEBD2, 0xF9DB,
- 0xEBD3, 0x807F, 0xEBD4, 0x620E, 0xEBD5, 0x701C, 0xEBD6, 0x7D68,
- 0xEBD7, 0x878D, 0xEBD8, 0xF9DC, 0xEBD9, 0x57A0, 0xEBDA, 0x6069,
- 0xEBDB, 0x6147, 0xEBDC, 0x6BB7, 0xEBDD, 0x8ABE, 0xEBDE, 0x9280,
- 0xEBDF, 0x96B1, 0xEBE0, 0x4E59, 0xEBE1, 0x541F, 0xEBE2, 0x6DEB,
- 0xEBE3, 0x852D, 0xEBE4, 0x9670, 0xEBE5, 0x97F3, 0xEBE6, 0x98EE,
- 0xEBE7, 0x63D6, 0xEBE8, 0x6CE3, 0xEBE9, 0x9091, 0xEBEA, 0x51DD,
- 0xEBEB, 0x61C9, 0xEBEC, 0x81BA, 0xEBED, 0x9DF9, 0xEBEE, 0x4F9D,
- 0xEBEF, 0x501A, 0xEBF0, 0x5100, 0xEBF1, 0x5B9C, 0xEBF2, 0x610F,
- 0xEBF3, 0x61FF, 0xEBF4, 0x64EC, 0xEBF5, 0x6905, 0xEBF6, 0x6BC5,
- 0xEBF7, 0x7591, 0xEBF8, 0x77E3, 0xEBF9, 0x7FA9, 0xEBFA, 0x8264,
- 0xEBFB, 0x858F, 0xEBFC, 0x87FB, 0xEBFD, 0x8863, 0xEBFE, 0x8ABC,
- 0xECA1, 0x8B70, 0xECA2, 0x91AB, 0xECA3, 0x4E8C, 0xECA4, 0x4EE5,
- 0xECA5, 0x4F0A, 0xECA6, 0xF9DD, 0xECA7, 0xF9DE, 0xECA8, 0x5937,
- 0xECA9, 0x59E8, 0xECAA, 0xF9DF, 0xECAB, 0x5DF2, 0xECAC, 0x5F1B,
- 0xECAD, 0x5F5B, 0xECAE, 0x6021, 0xECAF, 0xF9E0, 0xECB0, 0xF9E1,
- 0xECB1, 0xF9E2, 0xECB2, 0xF9E3, 0xECB3, 0x723E, 0xECB4, 0x73E5,
- 0xECB5, 0xF9E4, 0xECB6, 0x7570, 0xECB7, 0x75CD, 0xECB8, 0xF9E5,
- 0xECB9, 0x79FB, 0xECBA, 0xF9E6, 0xECBB, 0x800C, 0xECBC, 0x8033,
- 0xECBD, 0x8084, 0xECBE, 0x82E1, 0xECBF, 0x8351, 0xECC0, 0xF9E7,
- 0xECC1, 0xF9E8, 0xECC2, 0x8CBD, 0xECC3, 0x8CB3, 0xECC4, 0x9087,
- 0xECC5, 0xF9E9, 0xECC6, 0xF9EA, 0xECC7, 0x98F4, 0xECC8, 0x990C,
- 0xECC9, 0xF9EB, 0xECCA, 0xF9EC, 0xECCB, 0x7037, 0xECCC, 0x76CA,
- 0xECCD, 0x7FCA, 0xECCE, 0x7FCC, 0xECCF, 0x7FFC, 0xECD0, 0x8B1A,
- 0xECD1, 0x4EBA, 0xECD2, 0x4EC1, 0xECD3, 0x5203, 0xECD4, 0x5370,
- 0xECD5, 0xF9ED, 0xECD6, 0x54BD, 0xECD7, 0x56E0, 0xECD8, 0x59FB,
- 0xECD9, 0x5BC5, 0xECDA, 0x5F15, 0xECDB, 0x5FCD, 0xECDC, 0x6E6E,
- 0xECDD, 0xF9EE, 0xECDE, 0xF9EF, 0xECDF, 0x7D6A, 0xECE0, 0x8335,
- 0xECE1, 0xF9F0, 0xECE2, 0x8693, 0xECE3, 0x8A8D, 0xECE4, 0xF9F1,
- 0xECE5, 0x976D, 0xECE6, 0x9777, 0xECE7, 0xF9F2, 0xECE8, 0xF9F3,
- 0xECE9, 0x4E00, 0xECEA, 0x4F5A, 0xECEB, 0x4F7E, 0xECEC, 0x58F9,
- 0xECED, 0x65E5, 0xECEE, 0x6EA2, 0xECEF, 0x9038, 0xECF0, 0x93B0,
- 0xECF1, 0x99B9, 0xECF2, 0x4EFB, 0xECF3, 0x58EC, 0xECF4, 0x598A,
- 0xECF5, 0x59D9, 0xECF6, 0x6041, 0xECF7, 0xF9F4, 0xECF8, 0xF9F5,
- 0xECF9, 0x7A14, 0xECFA, 0xF9F6, 0xECFB, 0x834F, 0xECFC, 0x8CC3,
- 0xECFD, 0x5165, 0xECFE, 0x5344, 0xEDA1, 0xF9F7, 0xEDA2, 0xF9F8,
- 0xEDA3, 0xF9F9, 0xEDA4, 0x4ECD, 0xEDA5, 0x5269, 0xEDA6, 0x5B55,
- 0xEDA7, 0x82BF, 0xEDA8, 0x4ED4, 0xEDA9, 0x523A, 0xEDAA, 0x54A8,
- 0xEDAB, 0x59C9, 0xEDAC, 0x59FF, 0xEDAD, 0x5B50, 0xEDAE, 0x5B57,
- 0xEDAF, 0x5B5C, 0xEDB0, 0x6063, 0xEDB1, 0x6148, 0xEDB2, 0x6ECB,
- 0xEDB3, 0x7099, 0xEDB4, 0x716E, 0xEDB5, 0x7386, 0xEDB6, 0x74F7,
- 0xEDB7, 0x75B5, 0xEDB8, 0x78C1, 0xEDB9, 0x7D2B, 0xEDBA, 0x8005,
- 0xEDBB, 0x81EA, 0xEDBC, 0x8328, 0xEDBD, 0x8517, 0xEDBE, 0x85C9,
- 0xEDBF, 0x8AEE, 0xEDC0, 0x8CC7, 0xEDC1, 0x96CC, 0xEDC2, 0x4F5C,
- 0xEDC3, 0x52FA, 0xEDC4, 0x56BC, 0xEDC5, 0x65AB, 0xEDC6, 0x6628,
- 0xEDC7, 0x707C, 0xEDC8, 0x70B8, 0xEDC9, 0x7235, 0xEDCA, 0x7DBD,
- 0xEDCB, 0x828D, 0xEDCC, 0x914C, 0xEDCD, 0x96C0, 0xEDCE, 0x9D72,
- 0xEDCF, 0x5B71, 0xEDD0, 0x68E7, 0xEDD1, 0x6B98, 0xEDD2, 0x6F7A,
- 0xEDD3, 0x76DE, 0xEDD4, 0x5C91, 0xEDD5, 0x66AB, 0xEDD6, 0x6F5B,
- 0xEDD7, 0x7BB4, 0xEDD8, 0x7C2A, 0xEDD9, 0x8836, 0xEDDA, 0x96DC,
- 0xEDDB, 0x4E08, 0xEDDC, 0x4ED7, 0xEDDD, 0x5320, 0xEDDE, 0x5834,
- 0xEDDF, 0x58BB, 0xEDE0, 0x58EF, 0xEDE1, 0x596C, 0xEDE2, 0x5C07,
- 0xEDE3, 0x5E33, 0xEDE4, 0x5E84, 0xEDE5, 0x5F35, 0xEDE6, 0x638C,
- 0xEDE7, 0x66B2, 0xEDE8, 0x6756, 0xEDE9, 0x6A1F, 0xEDEA, 0x6AA3,
- 0xEDEB, 0x6B0C, 0xEDEC, 0x6F3F, 0xEDED, 0x7246, 0xEDEE, 0xF9FA,
- 0xEDEF, 0x7350, 0xEDF0, 0x748B, 0xEDF1, 0x7AE0, 0xEDF2, 0x7CA7,
- 0xEDF3, 0x8178, 0xEDF4, 0x81DF, 0xEDF5, 0x81E7, 0xEDF6, 0x838A,
- 0xEDF7, 0x846C, 0xEDF8, 0x8523, 0xEDF9, 0x8594, 0xEDFA, 0x85CF,
- 0xEDFB, 0x88DD, 0xEDFC, 0x8D13, 0xEDFD, 0x91AC, 0xEDFE, 0x9577,
- 0xEEA1, 0x969C, 0xEEA2, 0x518D, 0xEEA3, 0x54C9, 0xEEA4, 0x5728,
- 0xEEA5, 0x5BB0, 0xEEA6, 0x624D, 0xEEA7, 0x6750, 0xEEA8, 0x683D,
- 0xEEA9, 0x6893, 0xEEAA, 0x6E3D, 0xEEAB, 0x6ED3, 0xEEAC, 0x707D,
- 0xEEAD, 0x7E21, 0xEEAE, 0x88C1, 0xEEAF, 0x8CA1, 0xEEB0, 0x8F09,
- 0xEEB1, 0x9F4B, 0xEEB2, 0x9F4E, 0xEEB3, 0x722D, 0xEEB4, 0x7B8F,
- 0xEEB5, 0x8ACD, 0xEEB6, 0x931A, 0xEEB7, 0x4F47, 0xEEB8, 0x4F4E,
- 0xEEB9, 0x5132, 0xEEBA, 0x5480, 0xEEBB, 0x59D0, 0xEEBC, 0x5E95,
- 0xEEBD, 0x62B5, 0xEEBE, 0x6775, 0xEEBF, 0x696E, 0xEEC0, 0x6A17,
- 0xEEC1, 0x6CAE, 0xEEC2, 0x6E1A, 0xEEC3, 0x72D9, 0xEEC4, 0x732A,
- 0xEEC5, 0x75BD, 0xEEC6, 0x7BB8, 0xEEC7, 0x7D35, 0xEEC8, 0x82E7,
- 0xEEC9, 0x83F9, 0xEECA, 0x8457, 0xEECB, 0x85F7, 0xEECC, 0x8A5B,
- 0xEECD, 0x8CAF, 0xEECE, 0x8E87, 0xEECF, 0x9019, 0xEED0, 0x90B8,
- 0xEED1, 0x96CE, 0xEED2, 0x9F5F, 0xEED3, 0x52E3, 0xEED4, 0x540A,
- 0xEED5, 0x5AE1, 0xEED6, 0x5BC2, 0xEED7, 0x6458, 0xEED8, 0x6575,
- 0xEED9, 0x6EF4, 0xEEDA, 0x72C4, 0xEEDB, 0xF9FB, 0xEEDC, 0x7684,
- 0xEEDD, 0x7A4D, 0xEEDE, 0x7B1B, 0xEEDF, 0x7C4D, 0xEEE0, 0x7E3E,
- 0xEEE1, 0x7FDF, 0xEEE2, 0x837B, 0xEEE3, 0x8B2B, 0xEEE4, 0x8CCA,
- 0xEEE5, 0x8D64, 0xEEE6, 0x8DE1, 0xEEE7, 0x8E5F, 0xEEE8, 0x8FEA,
- 0xEEE9, 0x8FF9, 0xEEEA, 0x9069, 0xEEEB, 0x93D1, 0xEEEC, 0x4F43,
- 0xEEED, 0x4F7A, 0xEEEE, 0x50B3, 0xEEEF, 0x5168, 0xEEF0, 0x5178,
- 0xEEF1, 0x524D, 0xEEF2, 0x526A, 0xEEF3, 0x5861, 0xEEF4, 0x587C,
- 0xEEF5, 0x5960, 0xEEF6, 0x5C08, 0xEEF7, 0x5C55, 0xEEF8, 0x5EDB,
- 0xEEF9, 0x609B, 0xEEFA, 0x6230, 0xEEFB, 0x6813, 0xEEFC, 0x6BBF,
- 0xEEFD, 0x6C08, 0xEEFE, 0x6FB1, 0xEFA1, 0x714E, 0xEFA2, 0x7420,
- 0xEFA3, 0x7530, 0xEFA4, 0x7538, 0xEFA5, 0x7551, 0xEFA6, 0x7672,
- 0xEFA7, 0x7B4C, 0xEFA8, 0x7B8B, 0xEFA9, 0x7BAD, 0xEFAA, 0x7BC6,
- 0xEFAB, 0x7E8F, 0xEFAC, 0x8A6E, 0xEFAD, 0x8F3E, 0xEFAE, 0x8F49,
- 0xEFAF, 0x923F, 0xEFB0, 0x9293, 0xEFB1, 0x9322, 0xEFB2, 0x942B,
- 0xEFB3, 0x96FB, 0xEFB4, 0x985A, 0xEFB5, 0x986B, 0xEFB6, 0x991E,
- 0xEFB7, 0x5207, 0xEFB8, 0x622A, 0xEFB9, 0x6298, 0xEFBA, 0x6D59,
- 0xEFBB, 0x7664, 0xEFBC, 0x7ACA, 0xEFBD, 0x7BC0, 0xEFBE, 0x7D76,
- 0xEFBF, 0x5360, 0xEFC0, 0x5CBE, 0xEFC1, 0x5E97, 0xEFC2, 0x6F38,
- 0xEFC3, 0x70B9, 0xEFC4, 0x7C98, 0xEFC5, 0x9711, 0xEFC6, 0x9B8E,
- 0xEFC7, 0x9EDE, 0xEFC8, 0x63A5, 0xEFC9, 0x647A, 0xEFCA, 0x8776,
- 0xEFCB, 0x4E01, 0xEFCC, 0x4E95, 0xEFCD, 0x4EAD, 0xEFCE, 0x505C,
- 0xEFCF, 0x5075, 0xEFD0, 0x5448, 0xEFD1, 0x59C3, 0xEFD2, 0x5B9A,
- 0xEFD3, 0x5E40, 0xEFD4, 0x5EAD, 0xEFD5, 0x5EF7, 0xEFD6, 0x5F81,
- 0xEFD7, 0x60C5, 0xEFD8, 0x633A, 0xEFD9, 0x653F, 0xEFDA, 0x6574,
- 0xEFDB, 0x65CC, 0xEFDC, 0x6676, 0xEFDD, 0x6678, 0xEFDE, 0x67FE,
- 0xEFDF, 0x6968, 0xEFE0, 0x6A89, 0xEFE1, 0x6B63, 0xEFE2, 0x6C40,
- 0xEFE3, 0x6DC0, 0xEFE4, 0x6DE8, 0xEFE5, 0x6E1F, 0xEFE6, 0x6E5E,
- 0xEFE7, 0x701E, 0xEFE8, 0x70A1, 0xEFE9, 0x738E, 0xEFEA, 0x73FD,
- 0xEFEB, 0x753A, 0xEFEC, 0x775B, 0xEFED, 0x7887, 0xEFEE, 0x798E,
- 0xEFEF, 0x7A0B, 0xEFF0, 0x7A7D, 0xEFF1, 0x7CBE, 0xEFF2, 0x7D8E,
- 0xEFF3, 0x8247, 0xEFF4, 0x8A02, 0xEFF5, 0x8AEA, 0xEFF6, 0x8C9E,
- 0xEFF7, 0x912D, 0xEFF8, 0x914A, 0xEFF9, 0x91D8, 0xEFFA, 0x9266,
- 0xEFFB, 0x92CC, 0xEFFC, 0x9320, 0xEFFD, 0x9706, 0xEFFE, 0x9756,
- 0xF0A1, 0x975C, 0xF0A2, 0x9802, 0xF0A3, 0x9F0E, 0xF0A4, 0x5236,
- 0xF0A5, 0x5291, 0xF0A6, 0x557C, 0xF0A7, 0x5824, 0xF0A8, 0x5E1D,
- 0xF0A9, 0x5F1F, 0xF0AA, 0x608C, 0xF0AB, 0x63D0, 0xF0AC, 0x68AF,
- 0xF0AD, 0x6FDF, 0xF0AE, 0x796D, 0xF0AF, 0x7B2C, 0xF0B0, 0x81CD,
- 0xF0B1, 0x85BA, 0xF0B2, 0x88FD, 0xF0B3, 0x8AF8, 0xF0B4, 0x8E44,
- 0xF0B5, 0x918D, 0xF0B6, 0x9664, 0xF0B7, 0x969B, 0xF0B8, 0x973D,
- 0xF0B9, 0x984C, 0xF0BA, 0x9F4A, 0xF0BB, 0x4FCE, 0xF0BC, 0x5146,
- 0xF0BD, 0x51CB, 0xF0BE, 0x52A9, 0xF0BF, 0x5632, 0xF0C0, 0x5F14,
- 0xF0C1, 0x5F6B, 0xF0C2, 0x63AA, 0xF0C3, 0x64CD, 0xF0C4, 0x65E9,
- 0xF0C5, 0x6641, 0xF0C6, 0x66FA, 0xF0C7, 0x66F9, 0xF0C8, 0x671D,
- 0xF0C9, 0x689D, 0xF0CA, 0x68D7, 0xF0CB, 0x69FD, 0xF0CC, 0x6F15,
- 0xF0CD, 0x6F6E, 0xF0CE, 0x7167, 0xF0CF, 0x71E5, 0xF0D0, 0x722A,
- 0xF0D1, 0x74AA, 0xF0D2, 0x773A, 0xF0D3, 0x7956, 0xF0D4, 0x795A,
- 0xF0D5, 0x79DF, 0xF0D6, 0x7A20, 0xF0D7, 0x7A95, 0xF0D8, 0x7C97,
- 0xF0D9, 0x7CDF, 0xF0DA, 0x7D44, 0xF0DB, 0x7E70, 0xF0DC, 0x8087,
- 0xF0DD, 0x85FB, 0xF0DE, 0x86A4, 0xF0DF, 0x8A54, 0xF0E0, 0x8ABF,
- 0xF0E1, 0x8D99, 0xF0E2, 0x8E81, 0xF0E3, 0x9020, 0xF0E4, 0x906D,
- 0xF0E5, 0x91E3, 0xF0E6, 0x963B, 0xF0E7, 0x96D5, 0xF0E8, 0x9CE5,
- 0xF0E9, 0x65CF, 0xF0EA, 0x7C07, 0xF0EB, 0x8DB3, 0xF0EC, 0x93C3,
- 0xF0ED, 0x5B58, 0xF0EE, 0x5C0A, 0xF0EF, 0x5352, 0xF0F0, 0x62D9,
- 0xF0F1, 0x731D, 0xF0F2, 0x5027, 0xF0F3, 0x5B97, 0xF0F4, 0x5F9E,
- 0xF0F5, 0x60B0, 0xF0F6, 0x616B, 0xF0F7, 0x68D5, 0xF0F8, 0x6DD9,
- 0xF0F9, 0x742E, 0xF0FA, 0x7A2E, 0xF0FB, 0x7D42, 0xF0FC, 0x7D9C,
- 0xF0FD, 0x7E31, 0xF0FE, 0x816B, 0xF1A1, 0x8E2A, 0xF1A2, 0x8E35,
- 0xF1A3, 0x937E, 0xF1A4, 0x9418, 0xF1A5, 0x4F50, 0xF1A6, 0x5750,
- 0xF1A7, 0x5DE6, 0xF1A8, 0x5EA7, 0xF1A9, 0x632B, 0xF1AA, 0x7F6A,
- 0xF1AB, 0x4E3B, 0xF1AC, 0x4F4F, 0xF1AD, 0x4F8F, 0xF1AE, 0x505A,
- 0xF1AF, 0x59DD, 0xF1B0, 0x80C4, 0xF1B1, 0x546A, 0xF1B2, 0x5468,
- 0xF1B3, 0x55FE, 0xF1B4, 0x594F, 0xF1B5, 0x5B99, 0xF1B6, 0x5DDE,
- 0xF1B7, 0x5EDA, 0xF1B8, 0x665D, 0xF1B9, 0x6731, 0xF1BA, 0x67F1,
- 0xF1BB, 0x682A, 0xF1BC, 0x6CE8, 0xF1BD, 0x6D32, 0xF1BE, 0x6E4A,
- 0xF1BF, 0x6F8D, 0xF1C0, 0x70B7, 0xF1C1, 0x73E0, 0xF1C2, 0x7587,
- 0xF1C3, 0x7C4C, 0xF1C4, 0x7D02, 0xF1C5, 0x7D2C, 0xF1C6, 0x7DA2,
- 0xF1C7, 0x821F, 0xF1C8, 0x86DB, 0xF1C9, 0x8A3B, 0xF1CA, 0x8A85,
- 0xF1CB, 0x8D70, 0xF1CC, 0x8E8A, 0xF1CD, 0x8F33, 0xF1CE, 0x9031,
- 0xF1CF, 0x914E, 0xF1D0, 0x9152, 0xF1D1, 0x9444, 0xF1D2, 0x99D0,
- 0xF1D3, 0x7AF9, 0xF1D4, 0x7CA5, 0xF1D5, 0x4FCA, 0xF1D6, 0x5101,
- 0xF1D7, 0x51C6, 0xF1D8, 0x57C8, 0xF1D9, 0x5BEF, 0xF1DA, 0x5CFB,
- 0xF1DB, 0x6659, 0xF1DC, 0x6A3D, 0xF1DD, 0x6D5A, 0xF1DE, 0x6E96,
- 0xF1DF, 0x6FEC, 0xF1E0, 0x710C, 0xF1E1, 0x756F, 0xF1E2, 0x7AE3,
- 0xF1E3, 0x8822, 0xF1E4, 0x9021, 0xF1E5, 0x9075, 0xF1E6, 0x96CB,
- 0xF1E7, 0x99FF, 0xF1E8, 0x8301, 0xF1E9, 0x4E2D, 0xF1EA, 0x4EF2,
- 0xF1EB, 0x8846, 0xF1EC, 0x91CD, 0xF1ED, 0x537D, 0xF1EE, 0x6ADB,
- 0xF1EF, 0x696B, 0xF1F0, 0x6C41, 0xF1F1, 0x847A, 0xF1F2, 0x589E,
- 0xF1F3, 0x618E, 0xF1F4, 0x66FE, 0xF1F5, 0x62EF, 0xF1F6, 0x70DD,
- 0xF1F7, 0x7511, 0xF1F8, 0x75C7, 0xF1F9, 0x7E52, 0xF1FA, 0x84B8,
- 0xF1FB, 0x8B49, 0xF1FC, 0x8D08, 0xF1FD, 0x4E4B, 0xF1FE, 0x53EA,
- 0xF2A1, 0x54AB, 0xF2A2, 0x5730, 0xF2A3, 0x5740, 0xF2A4, 0x5FD7,
- 0xF2A5, 0x6301, 0xF2A6, 0x6307, 0xF2A7, 0x646F, 0xF2A8, 0x652F,
- 0xF2A9, 0x65E8, 0xF2AA, 0x667A, 0xF2AB, 0x679D, 0xF2AC, 0x67B3,
- 0xF2AD, 0x6B62, 0xF2AE, 0x6C60, 0xF2AF, 0x6C9A, 0xF2B0, 0x6F2C,
- 0xF2B1, 0x77E5, 0xF2B2, 0x7825, 0xF2B3, 0x7949, 0xF2B4, 0x7957,
- 0xF2B5, 0x7D19, 0xF2B6, 0x80A2, 0xF2B7, 0x8102, 0xF2B8, 0x81F3,
- 0xF2B9, 0x829D, 0xF2BA, 0x82B7, 0xF2BB, 0x8718, 0xF2BC, 0x8A8C,
- 0xF2BD, 0xF9FC, 0xF2BE, 0x8D04, 0xF2BF, 0x8DBE, 0xF2C0, 0x9072,
- 0xF2C1, 0x76F4, 0xF2C2, 0x7A19, 0xF2C3, 0x7A37, 0xF2C4, 0x7E54,
- 0xF2C5, 0x8077, 0xF2C6, 0x5507, 0xF2C7, 0x55D4, 0xF2C8, 0x5875,
- 0xF2C9, 0x632F, 0xF2CA, 0x6422, 0xF2CB, 0x6649, 0xF2CC, 0x664B,
- 0xF2CD, 0x686D, 0xF2CE, 0x699B, 0xF2CF, 0x6B84, 0xF2D0, 0x6D25,
- 0xF2D1, 0x6EB1, 0xF2D2, 0x73CD, 0xF2D3, 0x7468, 0xF2D4, 0x74A1,
- 0xF2D5, 0x755B, 0xF2D6, 0x75B9, 0xF2D7, 0x76E1, 0xF2D8, 0x771E,
- 0xF2D9, 0x778B, 0xF2DA, 0x79E6, 0xF2DB, 0x7E09, 0xF2DC, 0x7E1D,
- 0xF2DD, 0x81FB, 0xF2DE, 0x852F, 0xF2DF, 0x8897, 0xF2E0, 0x8A3A,
- 0xF2E1, 0x8CD1, 0xF2E2, 0x8EEB, 0xF2E3, 0x8FB0, 0xF2E4, 0x9032,
- 0xF2E5, 0x93AD, 0xF2E6, 0x9663, 0xF2E7, 0x9673, 0xF2E8, 0x9707,
- 0xF2E9, 0x4F84, 0xF2EA, 0x53F1, 0xF2EB, 0x59EA, 0xF2EC, 0x5AC9,
- 0xF2ED, 0x5E19, 0xF2EE, 0x684E, 0xF2EF, 0x74C6, 0xF2F0, 0x75BE,
- 0xF2F1, 0x79E9, 0xF2F2, 0x7A92, 0xF2F3, 0x81A3, 0xF2F4, 0x86ED,
- 0xF2F5, 0x8CEA, 0xF2F6, 0x8DCC, 0xF2F7, 0x8FED, 0xF2F8, 0x659F,
- 0xF2F9, 0x6715, 0xF2FA, 0xF9FD, 0xF2FB, 0x57F7, 0xF2FC, 0x6F57,
- 0xF2FD, 0x7DDD, 0xF2FE, 0x8F2F, 0xF3A1, 0x93F6, 0xF3A2, 0x96C6,
- 0xF3A3, 0x5FB5, 0xF3A4, 0x61F2, 0xF3A5, 0x6F84, 0xF3A6, 0x4E14,
- 0xF3A7, 0x4F98, 0xF3A8, 0x501F, 0xF3A9, 0x53C9, 0xF3AA, 0x55DF,
- 0xF3AB, 0x5D6F, 0xF3AC, 0x5DEE, 0xF3AD, 0x6B21, 0xF3AE, 0x6B64,
- 0xF3AF, 0x78CB, 0xF3B0, 0x7B9A, 0xF3B1, 0xF9FE, 0xF3B2, 0x8E49,
- 0xF3B3, 0x8ECA, 0xF3B4, 0x906E, 0xF3B5, 0x6349, 0xF3B6, 0x643E,
- 0xF3B7, 0x7740, 0xF3B8, 0x7A84, 0xF3B9, 0x932F, 0xF3BA, 0x947F,
- 0xF3BB, 0x9F6A, 0xF3BC, 0x64B0, 0xF3BD, 0x6FAF, 0xF3BE, 0x71E6,
- 0xF3BF, 0x74A8, 0xF3C0, 0x74DA, 0xF3C1, 0x7AC4, 0xF3C2, 0x7C12,
- 0xF3C3, 0x7E82, 0xF3C4, 0x7CB2, 0xF3C5, 0x7E98, 0xF3C6, 0x8B9A,
- 0xF3C7, 0x8D0A, 0xF3C8, 0x947D, 0xF3C9, 0x9910, 0xF3CA, 0x994C,
- 0xF3CB, 0x5239, 0xF3CC, 0x5BDF, 0xF3CD, 0x64E6, 0xF3CE, 0x672D,
- 0xF3CF, 0x7D2E, 0xF3D0, 0x50ED, 0xF3D1, 0x53C3, 0xF3D2, 0x5879,
- 0xF3D3, 0x6158, 0xF3D4, 0x6159, 0xF3D5, 0x61FA, 0xF3D6, 0x65AC,
- 0xF3D7, 0x7AD9, 0xF3D8, 0x8B92, 0xF3D9, 0x8B96, 0xF3DA, 0x5009,
- 0xF3DB, 0x5021, 0xF3DC, 0x5275, 0xF3DD, 0x5531, 0xF3DE, 0x5A3C,
- 0xF3DF, 0x5EE0, 0xF3E0, 0x5F70, 0xF3E1, 0x6134, 0xF3E2, 0x655E,
- 0xF3E3, 0x660C, 0xF3E4, 0x6636, 0xF3E5, 0x66A2, 0xF3E6, 0x69CD,
- 0xF3E7, 0x6EC4, 0xF3E8, 0x6F32, 0xF3E9, 0x7316, 0xF3EA, 0x7621,
- 0xF3EB, 0x7A93, 0xF3EC, 0x8139, 0xF3ED, 0x8259, 0xF3EE, 0x83D6,
- 0xF3EF, 0x84BC, 0xF3F0, 0x50B5, 0xF3F1, 0x57F0, 0xF3F2, 0x5BC0,
- 0xF3F3, 0x5BE8, 0xF3F4, 0x5F69, 0xF3F5, 0x63A1, 0xF3F6, 0x7826,
- 0xF3F7, 0x7DB5, 0xF3F8, 0x83DC, 0xF3F9, 0x8521, 0xF3FA, 0x91C7,
- 0xF3FB, 0x91F5, 0xF3FC, 0x518A, 0xF3FD, 0x67F5, 0xF3FE, 0x7B56,
- 0xF4A1, 0x8CAC, 0xF4A2, 0x51C4, 0xF4A3, 0x59BB, 0xF4A4, 0x60BD,
- 0xF4A5, 0x8655, 0xF4A6, 0x501C, 0xF4A7, 0xF9FF, 0xF4A8, 0x5254,
- 0xF4A9, 0x5C3A, 0xF4AA, 0x617D, 0xF4AB, 0x621A, 0xF4AC, 0x62D3,
- 0xF4AD, 0x64F2, 0xF4AE, 0x65A5, 0xF4AF, 0x6ECC, 0xF4B0, 0x7620,
- 0xF4B1, 0x810A, 0xF4B2, 0x8E60, 0xF4B3, 0x965F, 0xF4B4, 0x96BB,
- 0xF4B5, 0x4EDF, 0xF4B6, 0x5343, 0xF4B7, 0x5598, 0xF4B8, 0x5929,
- 0xF4B9, 0x5DDD, 0xF4BA, 0x64C5, 0xF4BB, 0x6CC9, 0xF4BC, 0x6DFA,
- 0xF4BD, 0x7394, 0xF4BE, 0x7A7F, 0xF4BF, 0x821B, 0xF4C0, 0x85A6,
- 0xF4C1, 0x8CE4, 0xF4C2, 0x8E10, 0xF4C3, 0x9077, 0xF4C4, 0x91E7,
- 0xF4C5, 0x95E1, 0xF4C6, 0x9621, 0xF4C7, 0x97C6, 0xF4C8, 0x51F8,
- 0xF4C9, 0x54F2, 0xF4CA, 0x5586, 0xF4CB, 0x5FB9, 0xF4CC, 0x64A4,
- 0xF4CD, 0x6F88, 0xF4CE, 0x7DB4, 0xF4CF, 0x8F1F, 0xF4D0, 0x8F4D,
- 0xF4D1, 0x9435, 0xF4D2, 0x50C9, 0xF4D3, 0x5C16, 0xF4D4, 0x6CBE,
- 0xF4D5, 0x6DFB, 0xF4D6, 0x751B, 0xF4D7, 0x77BB, 0xF4D8, 0x7C3D,
- 0xF4D9, 0x7C64, 0xF4DA, 0x8A79, 0xF4DB, 0x8AC2, 0xF4DC, 0x581E,
- 0xF4DD, 0x59BE, 0xF4DE, 0x5E16, 0xF4DF, 0x6377, 0xF4E0, 0x7252,
- 0xF4E1, 0x758A, 0xF4E2, 0x776B, 0xF4E3, 0x8ADC, 0xF4E4, 0x8CBC,
- 0xF4E5, 0x8F12, 0xF4E6, 0x5EF3, 0xF4E7, 0x6674, 0xF4E8, 0x6DF8,
- 0xF4E9, 0x807D, 0xF4EA, 0x83C1, 0xF4EB, 0x8ACB, 0xF4EC, 0x9751,
- 0xF4ED, 0x9BD6, 0xF4EE, 0xFA00, 0xF4EF, 0x5243, 0xF4F0, 0x66FF,
- 0xF4F1, 0x6D95, 0xF4F2, 0x6EEF, 0xF4F3, 0x7DE0, 0xF4F4, 0x8AE6,
- 0xF4F5, 0x902E, 0xF4F6, 0x905E, 0xF4F7, 0x9AD4, 0xF4F8, 0x521D,
- 0xF4F9, 0x527F, 0xF4FA, 0x54E8, 0xF4FB, 0x6194, 0xF4FC, 0x6284,
- 0xF4FD, 0x62DB, 0xF4FE, 0x68A2, 0xF5A1, 0x6912, 0xF5A2, 0x695A,
- 0xF5A3, 0x6A35, 0xF5A4, 0x7092, 0xF5A5, 0x7126, 0xF5A6, 0x785D,
- 0xF5A7, 0x7901, 0xF5A8, 0x790E, 0xF5A9, 0x79D2, 0xF5AA, 0x7A0D,
- 0xF5AB, 0x8096, 0xF5AC, 0x8278, 0xF5AD, 0x82D5, 0xF5AE, 0x8349,
- 0xF5AF, 0x8549, 0xF5B0, 0x8C82, 0xF5B1, 0x8D85, 0xF5B2, 0x9162,
- 0xF5B3, 0x918B, 0xF5B4, 0x91AE, 0xF5B5, 0x4FC3, 0xF5B6, 0x56D1,
- 0xF5B7, 0x71ED, 0xF5B8, 0x77D7, 0xF5B9, 0x8700, 0xF5BA, 0x89F8,
- 0xF5BB, 0x5BF8, 0xF5BC, 0x5FD6, 0xF5BD, 0x6751, 0xF5BE, 0x90A8,
- 0xF5BF, 0x53E2, 0xF5C0, 0x585A, 0xF5C1, 0x5BF5, 0xF5C2, 0x60A4,
- 0xF5C3, 0x6181, 0xF5C4, 0x6460, 0xF5C5, 0x7E3D, 0xF5C6, 0x8070,
- 0xF5C7, 0x8525, 0xF5C8, 0x9283, 0xF5C9, 0x64AE, 0xF5CA, 0x50AC,
- 0xF5CB, 0x5D14, 0xF5CC, 0x6700, 0xF5CD, 0x589C, 0xF5CE, 0x62BD,
- 0xF5CF, 0x63A8, 0xF5D0, 0x690E, 0xF5D1, 0x6978, 0xF5D2, 0x6A1E,
- 0xF5D3, 0x6E6B, 0xF5D4, 0x76BA, 0xF5D5, 0x79CB, 0xF5D6, 0x82BB,
- 0xF5D7, 0x8429, 0xF5D8, 0x8ACF, 0xF5D9, 0x8DA8, 0xF5DA, 0x8FFD,
- 0xF5DB, 0x9112, 0xF5DC, 0x914B, 0xF5DD, 0x919C, 0xF5DE, 0x9310,
- 0xF5DF, 0x9318, 0xF5E0, 0x939A, 0xF5E1, 0x96DB, 0xF5E2, 0x9A36,
- 0xF5E3, 0x9C0D, 0xF5E4, 0x4E11, 0xF5E5, 0x755C, 0xF5E6, 0x795D,
- 0xF5E7, 0x7AFA, 0xF5E8, 0x7B51, 0xF5E9, 0x7BC9, 0xF5EA, 0x7E2E,
- 0xF5EB, 0x84C4, 0xF5EC, 0x8E59, 0xF5ED, 0x8E74, 0xF5EE, 0x8EF8,
- 0xF5EF, 0x9010, 0xF5F0, 0x6625, 0xF5F1, 0x693F, 0xF5F2, 0x7443,
- 0xF5F3, 0x51FA, 0xF5F4, 0x672E, 0xF5F5, 0x9EDC, 0xF5F6, 0x5145,
- 0xF5F7, 0x5FE0, 0xF5F8, 0x6C96, 0xF5F9, 0x87F2, 0xF5FA, 0x885D,
- 0xF5FB, 0x8877, 0xF5FC, 0x60B4, 0xF5FD, 0x81B5, 0xF5FE, 0x8403,
- 0xF6A1, 0x8D05, 0xF6A2, 0x53D6, 0xF6A3, 0x5439, 0xF6A4, 0x5634,
- 0xF6A5, 0x5A36, 0xF6A6, 0x5C31, 0xF6A7, 0x708A, 0xF6A8, 0x7FE0,
- 0xF6A9, 0x805A, 0xF6AA, 0x8106, 0xF6AB, 0x81ED, 0xF6AC, 0x8DA3,
- 0xF6AD, 0x9189, 0xF6AE, 0x9A5F, 0xF6AF, 0x9DF2, 0xF6B0, 0x5074,
- 0xF6B1, 0x4EC4, 0xF6B2, 0x53A0, 0xF6B3, 0x60FB, 0xF6B4, 0x6E2C,
- 0xF6B5, 0x5C64, 0xF6B6, 0x4F88, 0xF6B7, 0x5024, 0xF6B8, 0x55E4,
- 0xF6B9, 0x5CD9, 0xF6BA, 0x5E5F, 0xF6BB, 0x6065, 0xF6BC, 0x6894,
- 0xF6BD, 0x6CBB, 0xF6BE, 0x6DC4, 0xF6BF, 0x71BE, 0xF6C0, 0x75D4,
- 0xF6C1, 0x75F4, 0xF6C2, 0x7661, 0xF6C3, 0x7A1A, 0xF6C4, 0x7A49,
- 0xF6C5, 0x7DC7, 0xF6C6, 0x7DFB, 0xF6C7, 0x7F6E, 0xF6C8, 0x81F4,
- 0xF6C9, 0x86A9, 0xF6CA, 0x8F1C, 0xF6CB, 0x96C9, 0xF6CC, 0x99B3,
- 0xF6CD, 0x9F52, 0xF6CE, 0x5247, 0xF6CF, 0x52C5, 0xF6D0, 0x98ED,
- 0xF6D1, 0x89AA, 0xF6D2, 0x4E03, 0xF6D3, 0x67D2, 0xF6D4, 0x6F06,
- 0xF6D5, 0x4FB5, 0xF6D6, 0x5BE2, 0xF6D7, 0x6795, 0xF6D8, 0x6C88,
- 0xF6D9, 0x6D78, 0xF6DA, 0x741B, 0xF6DB, 0x7827, 0xF6DC, 0x91DD,
- 0xF6DD, 0x937C, 0xF6DE, 0x87C4, 0xF6DF, 0x79E4, 0xF6E0, 0x7A31,
- 0xF6E1, 0x5FEB, 0xF6E2, 0x4ED6, 0xF6E3, 0x54A4, 0xF6E4, 0x553E,
- 0xF6E5, 0x58AE, 0xF6E6, 0x59A5, 0xF6E7, 0x60F0, 0xF6E8, 0x6253,
- 0xF6E9, 0x62D6, 0xF6EA, 0x6736, 0xF6EB, 0x6955, 0xF6EC, 0x8235,
- 0xF6ED, 0x9640, 0xF6EE, 0x99B1, 0xF6EF, 0x99DD, 0xF6F0, 0x502C,
- 0xF6F1, 0x5353, 0xF6F2, 0x5544, 0xF6F3, 0x577C, 0xF6F4, 0xFA01,
- 0xF6F5, 0x6258, 0xF6F6, 0xFA02, 0xF6F7, 0x64E2, 0xF6F8, 0x666B,
- 0xF6F9, 0x67DD, 0xF6FA, 0x6FC1, 0xF6FB, 0x6FEF, 0xF6FC, 0x7422,
- 0xF6FD, 0x7438, 0xF6FE, 0x8A17, 0xF7A1, 0x9438, 0xF7A2, 0x5451,
- 0xF7A3, 0x5606, 0xF7A4, 0x5766, 0xF7A5, 0x5F48, 0xF7A6, 0x619A,
- 0xF7A7, 0x6B4E, 0xF7A8, 0x7058, 0xF7A9, 0x70AD, 0xF7AA, 0x7DBB,
- 0xF7AB, 0x8A95, 0xF7AC, 0x596A, 0xF7AD, 0x812B, 0xF7AE, 0x63A2,
- 0xF7AF, 0x7708, 0xF7B0, 0x803D, 0xF7B1, 0x8CAA, 0xF7B2, 0x5854,
- 0xF7B3, 0x642D, 0xF7B4, 0x69BB, 0xF7B5, 0x5B95, 0xF7B6, 0x5E11,
- 0xF7B7, 0x6E6F, 0xF7B8, 0xFA03, 0xF7B9, 0x8569, 0xF7BA, 0x514C,
- 0xF7BB, 0x53F0, 0xF7BC, 0x592A, 0xF7BD, 0x6020, 0xF7BE, 0x614B,
- 0xF7BF, 0x6B86, 0xF7C0, 0x6C70, 0xF7C1, 0x6CF0, 0xF7C2, 0x7B1E,
- 0xF7C3, 0x80CE, 0xF7C4, 0x82D4, 0xF7C5, 0x8DC6, 0xF7C6, 0x90B0,
- 0xF7C7, 0x98B1, 0xF7C8, 0xFA04, 0xF7C9, 0x64C7, 0xF7CA, 0x6FA4,
- 0xF7CB, 0x6491, 0xF7CC, 0x6504, 0xF7CD, 0x514E, 0xF7CE, 0x5410,
- 0xF7CF, 0x571F, 0xF7D0, 0x8A0E, 0xF7D1, 0x615F, 0xF7D2, 0x6876,
- 0xF7D3, 0xFA05, 0xF7D4, 0x75DB, 0xF7D5, 0x7B52, 0xF7D6, 0x7D71,
- 0xF7D7, 0x901A, 0xF7D8, 0x5806, 0xF7D9, 0x69CC, 0xF7DA, 0x817F,
- 0xF7DB, 0x892A, 0xF7DC, 0x9000, 0xF7DD, 0x9839, 0xF7DE, 0x5078,
- 0xF7DF, 0x5957, 0xF7E0, 0x59AC, 0xF7E1, 0x6295, 0xF7E2, 0x900F,
- 0xF7E3, 0x9B2A, 0xF7E4, 0x615D, 0xF7E5, 0x7279, 0xF7E6, 0x95D6,
- 0xF7E7, 0x5761, 0xF7E8, 0x5A46, 0xF7E9, 0x5DF4, 0xF7EA, 0x628A,
- 0xF7EB, 0x64AD, 0xF7EC, 0x64FA, 0xF7ED, 0x6777, 0xF7EE, 0x6CE2,
- 0xF7EF, 0x6D3E, 0xF7F0, 0x722C, 0xF7F1, 0x7436, 0xF7F2, 0x7834,
- 0xF7F3, 0x7F77, 0xF7F4, 0x82AD, 0xF7F5, 0x8DDB, 0xF7F6, 0x9817,
- 0xF7F7, 0x5224, 0xF7F8, 0x5742, 0xF7F9, 0x677F, 0xF7FA, 0x7248,
- 0xF7FB, 0x74E3, 0xF7FC, 0x8CA9, 0xF7FD, 0x8FA6, 0xF7FE, 0x9211,
- 0xF8A1, 0x962A, 0xF8A2, 0x516B, 0xF8A3, 0x53ED, 0xF8A4, 0x634C,
- 0xF8A5, 0x4F69, 0xF8A6, 0x5504, 0xF8A7, 0x6096, 0xF8A8, 0x6557,
- 0xF8A9, 0x6C9B, 0xF8AA, 0x6D7F, 0xF8AB, 0x724C, 0xF8AC, 0x72FD,
- 0xF8AD, 0x7A17, 0xF8AE, 0x8987, 0xF8AF, 0x8C9D, 0xF8B0, 0x5F6D,
- 0xF8B1, 0x6F8E, 0xF8B2, 0x70F9, 0xF8B3, 0x81A8, 0xF8B4, 0x610E,
- 0xF8B5, 0x4FBF, 0xF8B6, 0x504F, 0xF8B7, 0x6241, 0xF8B8, 0x7247,
- 0xF8B9, 0x7BC7, 0xF8BA, 0x7DE8, 0xF8BB, 0x7FE9, 0xF8BC, 0x904D,
- 0xF8BD, 0x97AD, 0xF8BE, 0x9A19, 0xF8BF, 0x8CB6, 0xF8C0, 0x576A,
- 0xF8C1, 0x5E73, 0xF8C2, 0x67B0, 0xF8C3, 0x840D, 0xF8C4, 0x8A55,
- 0xF8C5, 0x5420, 0xF8C6, 0x5B16, 0xF8C7, 0x5E63, 0xF8C8, 0x5EE2,
- 0xF8C9, 0x5F0A, 0xF8CA, 0x6583, 0xF8CB, 0x80BA, 0xF8CC, 0x853D,
- 0xF8CD, 0x9589, 0xF8CE, 0x965B, 0xF8CF, 0x4F48, 0xF8D0, 0x5305,
- 0xF8D1, 0x530D, 0xF8D2, 0x530F, 0xF8D3, 0x5486, 0xF8D4, 0x54FA,
- 0xF8D5, 0x5703, 0xF8D6, 0x5E03, 0xF8D7, 0x6016, 0xF8D8, 0x629B,
- 0xF8D9, 0x62B1, 0xF8DA, 0x6355, 0xF8DB, 0xFA06, 0xF8DC, 0x6CE1,
- 0xF8DD, 0x6D66, 0xF8DE, 0x75B1, 0xF8DF, 0x7832, 0xF8E0, 0x80DE,
- 0xF8E1, 0x812F, 0xF8E2, 0x82DE, 0xF8E3, 0x8461, 0xF8E4, 0x84B2,
- 0xF8E5, 0x888D, 0xF8E6, 0x8912, 0xF8E7, 0x900B, 0xF8E8, 0x92EA,
- 0xF8E9, 0x98FD, 0xF8EA, 0x9B91, 0xF8EB, 0x5E45, 0xF8EC, 0x66B4,
- 0xF8ED, 0x66DD, 0xF8EE, 0x7011, 0xF8EF, 0x7206, 0xF8F0, 0xFA07,
- 0xF8F1, 0x4FF5, 0xF8F2, 0x527D, 0xF8F3, 0x5F6A, 0xF8F4, 0x6153,
- 0xF8F5, 0x6753, 0xF8F6, 0x6A19, 0xF8F7, 0x6F02, 0xF8F8, 0x74E2,
- 0xF8F9, 0x7968, 0xF8FA, 0x8868, 0xF8FB, 0x8C79, 0xF8FC, 0x98C7,
- 0xF8FD, 0x98C4, 0xF8FE, 0x9A43, 0xF9A1, 0x54C1, 0xF9A2, 0x7A1F,
- 0xF9A3, 0x6953, 0xF9A4, 0x8AF7, 0xF9A5, 0x8C4A, 0xF9A6, 0x98A8,
- 0xF9A7, 0x99AE, 0xF9A8, 0x5F7C, 0xF9A9, 0x62AB, 0xF9AA, 0x75B2,
- 0xF9AB, 0x76AE, 0xF9AC, 0x88AB, 0xF9AD, 0x907F, 0xF9AE, 0x9642,
- 0xF9AF, 0x5339, 0xF9B0, 0x5F3C, 0xF9B1, 0x5FC5, 0xF9B2, 0x6CCC,
- 0xF9B3, 0x73CC, 0xF9B4, 0x7562, 0xF9B5, 0x758B, 0xF9B6, 0x7B46,
- 0xF9B7, 0x82FE, 0xF9B8, 0x999D, 0xF9B9, 0x4E4F, 0xF9BA, 0x903C,
- 0xF9BB, 0x4E0B, 0xF9BC, 0x4F55, 0xF9BD, 0x53A6, 0xF9BE, 0x590F,
- 0xF9BF, 0x5EC8, 0xF9C0, 0x6630, 0xF9C1, 0x6CB3, 0xF9C2, 0x7455,
- 0xF9C3, 0x8377, 0xF9C4, 0x8766, 0xF9C5, 0x8CC0, 0xF9C6, 0x9050,
- 0xF9C7, 0x971E, 0xF9C8, 0x9C15, 0xF9C9, 0x58D1, 0xF9CA, 0x5B78,
- 0xF9CB, 0x8650, 0xF9CC, 0x8B14, 0xF9CD, 0x9DB4, 0xF9CE, 0x5BD2,
- 0xF9CF, 0x6068, 0xF9D0, 0x608D, 0xF9D1, 0x65F1, 0xF9D2, 0x6C57,
- 0xF9D3, 0x6F22, 0xF9D4, 0x6FA3, 0xF9D5, 0x701A, 0xF9D6, 0x7F55,
- 0xF9D7, 0x7FF0, 0xF9D8, 0x9591, 0xF9D9, 0x9592, 0xF9DA, 0x9650,
- 0xF9DB, 0x97D3, 0xF9DC, 0x5272, 0xF9DD, 0x8F44, 0xF9DE, 0x51FD,
- 0xF9DF, 0x542B, 0xF9E0, 0x54B8, 0xF9E1, 0x5563, 0xF9E2, 0x558A,
- 0xF9E3, 0x6ABB, 0xF9E4, 0x6DB5, 0xF9E5, 0x7DD8, 0xF9E6, 0x8266,
- 0xF9E7, 0x929C, 0xF9E8, 0x9677, 0xF9E9, 0x9E79, 0xF9EA, 0x5408,
- 0xF9EB, 0x54C8, 0xF9EC, 0x76D2, 0xF9ED, 0x86E4, 0xF9EE, 0x95A4,
- 0xF9EF, 0x95D4, 0xF9F0, 0x965C, 0xF9F1, 0x4EA2, 0xF9F2, 0x4F09,
- 0xF9F3, 0x59EE, 0xF9F4, 0x5AE6, 0xF9F5, 0x5DF7, 0xF9F6, 0x6052,
- 0xF9F7, 0x6297, 0xF9F8, 0x676D, 0xF9F9, 0x6841, 0xF9FA, 0x6C86,
- 0xF9FB, 0x6E2F, 0xF9FC, 0x7F38, 0xF9FD, 0x809B, 0xF9FE, 0x822A,
- 0xFAA1, 0xFA08, 0xFAA2, 0xFA09, 0xFAA3, 0x9805, 0xFAA4, 0x4EA5,
- 0xFAA5, 0x5055, 0xFAA6, 0x54B3, 0xFAA7, 0x5793, 0xFAA8, 0x595A,
- 0xFAA9, 0x5B69, 0xFAAA, 0x5BB3, 0xFAAB, 0x61C8, 0xFAAC, 0x6977,
- 0xFAAD, 0x6D77, 0xFAAE, 0x7023, 0xFAAF, 0x87F9, 0xFAB0, 0x89E3,
- 0xFAB1, 0x8A72, 0xFAB2, 0x8AE7, 0xFAB3, 0x9082, 0xFAB4, 0x99ED,
- 0xFAB5, 0x9AB8, 0xFAB6, 0x52BE, 0xFAB7, 0x6838, 0xFAB8, 0x5016,
- 0xFAB9, 0x5E78, 0xFABA, 0x674F, 0xFABB, 0x8347, 0xFABC, 0x884C,
- 0xFABD, 0x4EAB, 0xFABE, 0x5411, 0xFABF, 0x56AE, 0xFAC0, 0x73E6,
- 0xFAC1, 0x9115, 0xFAC2, 0x97FF, 0xFAC3, 0x9909, 0xFAC4, 0x9957,
- 0xFAC5, 0x9999, 0xFAC6, 0x5653, 0xFAC7, 0x589F, 0xFAC8, 0x865B,
- 0xFAC9, 0x8A31, 0xFACA, 0x61B2, 0xFACB, 0x6AF6, 0xFACC, 0x737B,
- 0xFACD, 0x8ED2, 0xFACE, 0x6B47, 0xFACF, 0x96AA, 0xFAD0, 0x9A57,
- 0xFAD1, 0x5955, 0xFAD2, 0x7200, 0xFAD3, 0x8D6B, 0xFAD4, 0x9769,
- 0xFAD5, 0x4FD4, 0xFAD6, 0x5CF4, 0xFAD7, 0x5F26, 0xFAD8, 0x61F8,
- 0xFAD9, 0x665B, 0xFADA, 0x6CEB, 0xFADB, 0x70AB, 0xFADC, 0x7384,
- 0xFADD, 0x73B9, 0xFADE, 0x73FE, 0xFADF, 0x7729, 0xFAE0, 0x774D,
- 0xFAE1, 0x7D43, 0xFAE2, 0x7D62, 0xFAE3, 0x7E23, 0xFAE4, 0x8237,
- 0xFAE5, 0x8852, 0xFAE6, 0xFA0A, 0xFAE7, 0x8CE2, 0xFAE8, 0x9249,
- 0xFAE9, 0x986F, 0xFAEA, 0x5B51, 0xFAEB, 0x7A74, 0xFAEC, 0x8840,
- 0xFAED, 0x9801, 0xFAEE, 0x5ACC, 0xFAEF, 0x4FE0, 0xFAF0, 0x5354,
- 0xFAF1, 0x593E, 0xFAF2, 0x5CFD, 0xFAF3, 0x633E, 0xFAF4, 0x6D79,
- 0xFAF5, 0x72F9, 0xFAF6, 0x8105, 0xFAF7, 0x8107, 0xFAF8, 0x83A2,
- 0xFAF9, 0x92CF, 0xFAFA, 0x9830, 0xFAFB, 0x4EA8, 0xFAFC, 0x5144,
- 0xFAFD, 0x5211, 0xFAFE, 0x578B, 0xFBA1, 0x5F62, 0xFBA2, 0x6CC2,
- 0xFBA3, 0x6ECE, 0xFBA4, 0x7005, 0xFBA5, 0x7050, 0xFBA6, 0x70AF,
- 0xFBA7, 0x7192, 0xFBA8, 0x73E9, 0xFBA9, 0x7469, 0xFBAA, 0x834A,
- 0xFBAB, 0x87A2, 0xFBAC, 0x8861, 0xFBAD, 0x9008, 0xFBAE, 0x90A2,
- 0xFBAF, 0x93A3, 0xFBB0, 0x99A8, 0xFBB1, 0x516E, 0xFBB2, 0x5F57,
- 0xFBB3, 0x60E0, 0xFBB4, 0x6167, 0xFBB5, 0x66B3, 0xFBB6, 0x8559,
- 0xFBB7, 0x8E4A, 0xFBB8, 0x91AF, 0xFBB9, 0x978B, 0xFBBA, 0x4E4E,
- 0xFBBB, 0x4E92, 0xFBBC, 0x547C, 0xFBBD, 0x58D5, 0xFBBE, 0x58FA,
- 0xFBBF, 0x597D, 0xFBC0, 0x5CB5, 0xFBC1, 0x5F27, 0xFBC2, 0x6236,
- 0xFBC3, 0x6248, 0xFBC4, 0x660A, 0xFBC5, 0x6667, 0xFBC6, 0x6BEB,
- 0xFBC7, 0x6D69, 0xFBC8, 0x6DCF, 0xFBC9, 0x6E56, 0xFBCA, 0x6EF8,
- 0xFBCB, 0x6F94, 0xFBCC, 0x6FE0, 0xFBCD, 0x6FE9, 0xFBCE, 0x705D,
- 0xFBCF, 0x72D0, 0xFBD0, 0x7425, 0xFBD1, 0x745A, 0xFBD2, 0x74E0,
- 0xFBD3, 0x7693, 0xFBD4, 0x795C, 0xFBD5, 0x7CCA, 0xFBD6, 0x7E1E,
- 0xFBD7, 0x80E1, 0xFBD8, 0x82A6, 0xFBD9, 0x846B, 0xFBDA, 0x84BF,
- 0xFBDB, 0x864E, 0xFBDC, 0x865F, 0xFBDD, 0x8774, 0xFBDE, 0x8B77,
- 0xFBDF, 0x8C6A, 0xFBE0, 0x93AC, 0xFBE1, 0x9800, 0xFBE2, 0x9865,
- 0xFBE3, 0x60D1, 0xFBE4, 0x6216, 0xFBE5, 0x9177, 0xFBE6, 0x5A5A,
- 0xFBE7, 0x660F, 0xFBE8, 0x6DF7, 0xFBE9, 0x6E3E, 0xFBEA, 0x743F,
- 0xFBEB, 0x9B42, 0xFBEC, 0x5FFD, 0xFBED, 0x60DA, 0xFBEE, 0x7B0F,
- 0xFBEF, 0x54C4, 0xFBF0, 0x5F18, 0xFBF1, 0x6C5E, 0xFBF2, 0x6CD3,
- 0xFBF3, 0x6D2A, 0xFBF4, 0x70D8, 0xFBF5, 0x7D05, 0xFBF6, 0x8679,
- 0xFBF7, 0x8A0C, 0xFBF8, 0x9D3B, 0xFBF9, 0x5316, 0xFBFA, 0x548C,
- 0xFBFB, 0x5B05, 0xFBFC, 0x6A3A, 0xFBFD, 0x706B, 0xFBFE, 0x7575,
- 0xFCA1, 0x798D, 0xFCA2, 0x79BE, 0xFCA3, 0x82B1, 0xFCA4, 0x83EF,
- 0xFCA5, 0x8A71, 0xFCA6, 0x8B41, 0xFCA7, 0x8CA8, 0xFCA8, 0x9774,
- 0xFCA9, 0xFA0B, 0xFCAA, 0x64F4, 0xFCAB, 0x652B, 0xFCAC, 0x78BA,
- 0xFCAD, 0x78BB, 0xFCAE, 0x7A6B, 0xFCAF, 0x4E38, 0xFCB0, 0x559A,
- 0xFCB1, 0x5950, 0xFCB2, 0x5BA6, 0xFCB3, 0x5E7B, 0xFCB4, 0x60A3,
- 0xFCB5, 0x63DB, 0xFCB6, 0x6B61, 0xFCB7, 0x6665, 0xFCB8, 0x6853,
- 0xFCB9, 0x6E19, 0xFCBA, 0x7165, 0xFCBB, 0x74B0, 0xFCBC, 0x7D08,
- 0xFCBD, 0x9084, 0xFCBE, 0x9A69, 0xFCBF, 0x9C25, 0xFCC0, 0x6D3B,
- 0xFCC1, 0x6ED1, 0xFCC2, 0x733E, 0xFCC3, 0x8C41, 0xFCC4, 0x95CA,
- 0xFCC5, 0x51F0, 0xFCC6, 0x5E4C, 0xFCC7, 0x5FA8, 0xFCC8, 0x604D,
- 0xFCC9, 0x60F6, 0xFCCA, 0x6130, 0xFCCB, 0x614C, 0xFCCC, 0x6643,
- 0xFCCD, 0x6644, 0xFCCE, 0x69A5, 0xFCCF, 0x6CC1, 0xFCD0, 0x6E5F,
- 0xFCD1, 0x6EC9, 0xFCD2, 0x6F62, 0xFCD3, 0x714C, 0xFCD4, 0x749C,
- 0xFCD5, 0x7687, 0xFCD6, 0x7BC1, 0xFCD7, 0x7C27, 0xFCD8, 0x8352,
- 0xFCD9, 0x8757, 0xFCDA, 0x9051, 0xFCDB, 0x968D, 0xFCDC, 0x9EC3,
- 0xFCDD, 0x532F, 0xFCDE, 0x56DE, 0xFCDF, 0x5EFB, 0xFCE0, 0x5F8A,
- 0xFCE1, 0x6062, 0xFCE2, 0x6094, 0xFCE3, 0x61F7, 0xFCE4, 0x6666,
- 0xFCE5, 0x6703, 0xFCE6, 0x6A9C, 0xFCE7, 0x6DEE, 0xFCE8, 0x6FAE,
- 0xFCE9, 0x7070, 0xFCEA, 0x736A, 0xFCEB, 0x7E6A, 0xFCEC, 0x81BE,
- 0xFCED, 0x8334, 0xFCEE, 0x86D4, 0xFCEF, 0x8AA8, 0xFCF0, 0x8CC4,
- 0xFCF1, 0x5283, 0xFCF2, 0x7372, 0xFCF3, 0x5B96, 0xFCF4, 0x6A6B,
- 0xFCF5, 0x9404, 0xFCF6, 0x54EE, 0xFCF7, 0x5686, 0xFCF8, 0x5B5D,
- 0xFCF9, 0x6548, 0xFCFA, 0x6585, 0xFCFB, 0x66C9, 0xFCFC, 0x689F,
- 0xFCFD, 0x6D8D, 0xFCFE, 0x6DC6, 0xFDA1, 0x723B, 0xFDA2, 0x80B4,
- 0xFDA3, 0x9175, 0xFDA4, 0x9A4D, 0xFDA5, 0x4FAF, 0xFDA6, 0x5019,
- 0xFDA7, 0x539A, 0xFDA8, 0x540E, 0xFDA9, 0x543C, 0xFDAA, 0x5589,
- 0xFDAB, 0x55C5, 0xFDAC, 0x5E3F, 0xFDAD, 0x5F8C, 0xFDAE, 0x673D,
- 0xFDAF, 0x7166, 0xFDB0, 0x73DD, 0xFDB1, 0x9005, 0xFDB2, 0x52DB,
- 0xFDB3, 0x52F3, 0xFDB4, 0x5864, 0xFDB5, 0x58CE, 0xFDB6, 0x7104,
- 0xFDB7, 0x718F, 0xFDB8, 0x71FB, 0xFDB9, 0x85B0, 0xFDBA, 0x8A13,
- 0xFDBB, 0x6688, 0xFDBC, 0x85A8, 0xFDBD, 0x55A7, 0xFDBE, 0x6684,
- 0xFDBF, 0x714A, 0xFDC0, 0x8431, 0xFDC1, 0x5349, 0xFDC2, 0x5599,
- 0xFDC3, 0x6BC1, 0xFDC4, 0x5F59, 0xFDC5, 0x5FBD, 0xFDC6, 0x63EE,
- 0xFDC7, 0x6689, 0xFDC8, 0x7147, 0xFDC9, 0x8AF1, 0xFDCA, 0x8F1D,
- 0xFDCB, 0x9EBE, 0xFDCC, 0x4F11, 0xFDCD, 0x643A, 0xFDCE, 0x70CB,
- 0xFDCF, 0x7566, 0xFDD0, 0x8667, 0xFDD1, 0x6064, 0xFDD2, 0x8B4E,
- 0xFDD3, 0x9DF8, 0xFDD4, 0x5147, 0xFDD5, 0x51F6, 0xFDD6, 0x5308,
- 0xFDD7, 0x6D36, 0xFDD8, 0x80F8, 0xFDD9, 0x9ED1, 0xFDDA, 0x6615,
- 0xFDDB, 0x6B23, 0xFDDC, 0x7098, 0xFDDD, 0x75D5, 0xFDDE, 0x5403,
- 0xFDDF, 0x5C79, 0xFDE0, 0x7D07, 0xFDE1, 0x8A16, 0xFDE2, 0x6B20,
- 0xFDE3, 0x6B3D, 0xFDE4, 0x6B46, 0xFDE5, 0x5438, 0xFDE6, 0x6070,
- 0xFDE7, 0x6D3D, 0xFDE8, 0x7FD5, 0xFDE9, 0x8208, 0xFDEA, 0x50D6,
- 0xFDEB, 0x51DE, 0xFDEC, 0x559C, 0xFDED, 0x566B, 0xFDEE, 0x56CD,
- 0xFDEF, 0x59EC, 0xFDF0, 0x5B09, 0xFDF1, 0x5E0C, 0xFDF2, 0x6199,
- 0xFDF3, 0x6198, 0xFDF4, 0x6231, 0xFDF5, 0x665E, 0xFDF6, 0x66E6,
- 0xFDF7, 0x7199, 0xFDF8, 0x71B9, 0xFDF9, 0x71BA, 0xFDFA, 0x72A7,
- 0xFDFB, 0x79A7, 0xFDFC, 0x7A00, 0xFDFD, 0x7FB2, 0xFDFE, 0x8A70,
- 0, 0
-};
-
-
-
-WCHAR ff_convert ( /* Converted code, 0 means conversion error */
- WCHAR src, /* Character code to be converted */
- UINT dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
- )
-{
- const WCHAR *p;
- WCHAR c;
- int i, n, li, hi;
-
-
- if (src < 0x80) { /* ASCII */
- c = src;
- } else {
- if (dir) { /* OEMCP to unicode */
- p = oem2uni;
- hi = sizeof(oem2uni) / 4 - 1;
- } else { /* Unicode to OEMCP */
- p = uni2oem;
- hi = sizeof(uni2oem) / 4 - 1;
- }
- li = 0;
- for (n = 16; n; n--) {
- i = li + (hi - li) / 2;
- if (src == p[i * 2]) break;
- if (src > p[i * 2])
- li = i;
- else
- hi = i;
- }
- c = n ? p[i * 2 + 1] : 0;
- }
-
- return c;
-}
-
-
-
-
-WCHAR ff_wtoupper ( /* Upper converted character */
- WCHAR chr /* Input character */
- )
-{
- static const WCHAR tbl_lower[] = { 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101, 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F, 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D, 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B, 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A, 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148, 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157, 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165, 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173, 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1, 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8, 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF, 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7, 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A, 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448, 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F, 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457, 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0 };
- static const WCHAR tbl_upper[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
- int i;
-
-
- for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
-
- return tbl_lower[i] ? tbl_upper[i] : chr;
-}
diff --git a/BaS_gcc/fs/cc950.c b/BaS_gcc/fs/cc950.c
deleted file mode 100644
index b690740..0000000
--- a/BaS_gcc/fs/cc950.c
+++ /dev/null
@@ -1,6829 +0,0 @@
-/*------------------------------------------------------------------------*/
-/* Unicode - OEM code bidirectional converter (C)ChaN, 2009 */
-/* */
-/* CP950 (Traditional Chinese Big5) */
-/*------------------------------------------------------------------------*/
-
-#include
-
-
-#if !_USE_LFN || _CODE_PAGE != 950
-#error This file is not needed in current configuration. Remove from the project.
-#endif
-
-
-static
-const WCHAR uni2oem[] = {
- /* Unicode - OEM, Unicode - OEM, Unicode - OEM, Unicode - OEM */
- 0x00A7, 0xA1B1, 0x00AF, 0xA1C2, 0x00B0, 0xA258, 0x00B1, 0xA1D3,
- 0x00B7, 0xA150, 0x00D7, 0xA1D1, 0x00F7, 0xA1D2, 0x02C7, 0xA3BE,
- 0x02C9, 0xA3BC, 0x02CA, 0xA3BD, 0x02CB, 0xA3BF, 0x02CD, 0xA1C5,
- 0x02D9, 0xA3BB, 0x0391, 0xA344, 0x0392, 0xA345, 0x0393, 0xA346,
- 0x0394, 0xA347, 0x0395, 0xA348, 0x0396, 0xA349, 0x0397, 0xA34A,
- 0x0398, 0xA34B, 0x0399, 0xA34C, 0x039A, 0xA34D, 0x039B, 0xA34E,
- 0x039C, 0xA34F, 0x039D, 0xA350, 0x039E, 0xA351, 0x039F, 0xA352,
- 0x03A0, 0xA353, 0x03A1, 0xA354, 0x03A3, 0xA355, 0x03A4, 0xA356,
- 0x03A5, 0xA357, 0x03A6, 0xA358, 0x03A7, 0xA359, 0x03A8, 0xA35A,
- 0x03A9, 0xA35B, 0x03B1, 0xA35C, 0x03B2, 0xA35D, 0x03B3, 0xA35E,
- 0x03B4, 0xA35F, 0x03B5, 0xA360, 0x03B6, 0xA361, 0x03B7, 0xA362,
- 0x03B8, 0xA363, 0x03B9, 0xA364, 0x03BA, 0xA365, 0x03BB, 0xA366,
- 0x03BC, 0xA367, 0x03BD, 0xA368, 0x03BE, 0xA369, 0x03BF, 0xA36A,
- 0x03C0, 0xA36B, 0x03C1, 0xA36C, 0x03C3, 0xA36D, 0x03C4, 0xA36E,
- 0x03C5, 0xA36F, 0x03C6, 0xA370, 0x03C7, 0xA371, 0x03C8, 0xA372,
- 0x03C9, 0xA373, 0x2013, 0xA156, 0x2014, 0xA158, 0x2018, 0xA1A5,
- 0x2019, 0xA1A6, 0x201C, 0xA1A7, 0x201D, 0xA1A8, 0x2025, 0xA14C,
- 0x2026, 0xA14B, 0x2027, 0xA145, 0x2032, 0xA1AC, 0x2035, 0xA1AB,
- 0x203B, 0xA1B0, 0x20AC, 0xA3E1, 0x2103, 0xA24A, 0x2105, 0xA1C1,
- 0x2109, 0xA24B, 0x2160, 0xA2B9, 0x2161, 0xA2BA, 0x2162, 0xA2BB,
- 0x2163, 0xA2BC, 0x2164, 0xA2BD, 0x2165, 0xA2BE, 0x2166, 0xA2BF,
- 0x2167, 0xA2C0, 0x2168, 0xA2C1, 0x2169, 0xA2C2, 0x2190, 0xA1F6,
- 0x2191, 0xA1F4, 0x2192, 0xA1F7, 0x2193, 0xA1F5, 0x2196, 0xA1F8,
- 0x2197, 0xA1F9, 0x2198, 0xA1FB, 0x2199, 0xA1FA, 0x2215, 0xA241,
- 0x221A, 0xA1D4, 0x221E, 0xA1DB, 0x221F, 0xA1E8, 0x2220, 0xA1E7,
- 0x2223, 0xA1FD, 0x2225, 0xA1FC, 0x2229, 0xA1E4, 0x222A, 0xA1E5,
- 0x222B, 0xA1EC, 0x222E, 0xA1ED, 0x2234, 0xA1EF, 0x2235, 0xA1EE,
- 0x2252, 0xA1DC, 0x2260, 0xA1DA, 0x2261, 0xA1DD, 0x2266, 0xA1D8,
- 0x2267, 0xA1D9, 0x2295, 0xA1F2, 0x2299, 0xA1F3, 0x22A5, 0xA1E6,
- 0x22BF, 0xA1E9, 0x2500, 0xA277, 0x2502, 0xA278, 0x250C, 0xA27A,
- 0x2510, 0xA27B, 0x2514, 0xA27C, 0x2518, 0xA27D, 0x251C, 0xA275,
- 0x2524, 0xA274, 0x252C, 0xA273, 0x2534, 0xA272, 0x253C, 0xA271,
- 0x2550, 0xA2A4, 0x2550, 0xF9F9, 0x2551, 0xF9F8, 0x2552, 0xF9E6,
- 0x2553, 0xF9EF, 0x2554, 0xF9DD, 0x2555, 0xF9E8, 0x2556, 0xF9F1,
- 0x2557, 0xF9DF, 0x2558, 0xF9EC, 0x2559, 0xF9F5, 0x255A, 0xF9E3,
- 0x255B, 0xF9EE, 0x255C, 0xF9F7, 0x255D, 0xF9E5, 0x255E, 0xA2A5,
- 0x255E, 0xF9E9, 0x255F, 0xF9F2, 0x2560, 0xF9E0, 0x2561, 0xA2A7,
- 0x2561, 0xF9EB, 0x2562, 0xF9F4, 0x2563, 0xF9E2, 0x2564, 0xF9E7,
- 0x2565, 0xF9F0, 0x2566, 0xF9DE, 0x2567, 0xF9ED, 0x2568, 0xF9F6,
- 0x2569, 0xF9E4, 0x256A, 0xA2A6, 0x256A, 0xF9EA, 0x256B, 0xF9F3,
- 0x256C, 0xF9E1, 0x256D, 0xA27E, 0x256D, 0xF9FA, 0x256E, 0xA2A1,
- 0x256E, 0xF9FB, 0x256F, 0xA2A3, 0x256F, 0xF9FD, 0x2570, 0xA2A2,
- 0x2570, 0xF9FC, 0x2571, 0xA2AC, 0x2572, 0xA2AD, 0x2573, 0xA2AE,
- 0x2574, 0xA15A, 0x2581, 0xA262, 0x2582, 0xA263, 0x2583, 0xA264,
- 0x2584, 0xA265, 0x2585, 0xA266, 0x2586, 0xA267, 0x2587, 0xA268,
- 0x2588, 0xA269, 0x2589, 0xA270, 0x258A, 0xA26F, 0x258B, 0xA26E,
- 0x258C, 0xA26D, 0x258D, 0xA26C, 0x258E, 0xA26B, 0x258F, 0xA26A,
- 0x2593, 0xF9FE, 0x2594, 0xA276, 0x2595, 0xA279, 0x25A0, 0xA1BD,
- 0x25A1, 0xA1BC, 0x25B2, 0xA1B6, 0x25B3, 0xA1B5, 0x25BC, 0xA1BF,
- 0x25BD, 0xA1BE, 0x25C6, 0xA1BB, 0x25C7, 0xA1BA, 0x25CB, 0xA1B3,
- 0x25CE, 0xA1B7, 0x25CF, 0xA1B4, 0x25E2, 0xA2A8, 0x25E3, 0xA2A9,
- 0x25E4, 0xA2AB, 0x25E5, 0xA2AA, 0x2605, 0xA1B9, 0x2606, 0xA1B8,
- 0x2640, 0xA1F0, 0x2642, 0xA1F1, 0x3000, 0xA140, 0x3001, 0xA142,
- 0x3002, 0xA143, 0x3003, 0xA1B2, 0x3008, 0xA171, 0x3009, 0xA172,
- 0x300A, 0xA16D, 0x300B, 0xA16E, 0x300C, 0xA175, 0x300D, 0xA176,
- 0x300E, 0xA179, 0x300F, 0xA17A, 0x3010, 0xA169, 0x3011, 0xA16A,
- 0x3012, 0xA245, 0x3014, 0xA165, 0x3015, 0xA166, 0x301D, 0xA1A9,
- 0x301E, 0xA1AA, 0x3021, 0xA2C3, 0x3022, 0xA2C4, 0x3023, 0xA2C5,
- 0x3024, 0xA2C6, 0x3025, 0xA2C7, 0x3026, 0xA2C8, 0x3027, 0xA2C9,
- 0x3028, 0xA2CA, 0x3029, 0xA2CB, 0x3105, 0xA374, 0x3106, 0xA375,
- 0x3107, 0xA376, 0x3108, 0xA377, 0x3109, 0xA378, 0x310A, 0xA379,
- 0x310B, 0xA37A, 0x310C, 0xA37B, 0x310D, 0xA37C, 0x310E, 0xA37D,
- 0x310F, 0xA37E, 0x3110, 0xA3A1, 0x3111, 0xA3A2, 0x3112, 0xA3A3,
- 0x3113, 0xA3A4, 0x3114, 0xA3A5, 0x3115, 0xA3A6, 0x3116, 0xA3A7,
- 0x3117, 0xA3A8, 0x3118, 0xA3A9, 0x3119, 0xA3AA, 0x311A, 0xA3AB,
- 0x311B, 0xA3AC, 0x311C, 0xA3AD, 0x311D, 0xA3AE, 0x311E, 0xA3AF,
- 0x311F, 0xA3B0, 0x3120, 0xA3B1, 0x3121, 0xA3B2, 0x3122, 0xA3B3,
- 0x3123, 0xA3B4, 0x3124, 0xA3B5, 0x3125, 0xA3B6, 0x3126, 0xA3B7,
- 0x3127, 0xA3B8, 0x3128, 0xA3B9, 0x3129, 0xA3BA, 0x32A3, 0xA1C0,
- 0x338E, 0xA255, 0x338F, 0xA256, 0x339C, 0xA250, 0x339D, 0xA251,
- 0x339E, 0xA252, 0x33A1, 0xA254, 0x33C4, 0xA257, 0x33CE, 0xA253,
- 0x33D1, 0xA1EB, 0x33D2, 0xA1EA, 0x33D5, 0xA24F, 0x4E00, 0xA440,
- 0x4E01, 0xA442, 0x4E03, 0xA443, 0x4E07, 0xC945, 0x4E08, 0xA456,
- 0x4E09, 0xA454, 0x4E0A, 0xA457, 0x4E0B, 0xA455, 0x4E0C, 0xC946,
- 0x4E0D, 0xA4A3, 0x4E0E, 0xC94F, 0x4E0F, 0xC94D, 0x4E10, 0xA4A2,
- 0x4E11, 0xA4A1, 0x4E14, 0xA542, 0x4E15, 0xA541, 0x4E16, 0xA540,
- 0x4E18, 0xA543, 0x4E19, 0xA4FE, 0x4E1E, 0xA5E0, 0x4E1F, 0xA5E1,
- 0x4E26, 0xA8C3, 0x4E2B, 0xA458, 0x4E2D, 0xA4A4, 0x4E2E, 0xC950,
- 0x4E30, 0xA4A5, 0x4E31, 0xC963, 0x4E32, 0xA6EA, 0x4E33, 0xCBB1,
- 0x4E38, 0xA459, 0x4E39, 0xA4A6, 0x4E3B, 0xA544, 0x4E3C, 0xC964,
- 0x4E42, 0xC940, 0x4E43, 0xA444, 0x4E45, 0xA45B, 0x4E47, 0xC947,
- 0x4E48, 0xA45C, 0x4E4B, 0xA4A7, 0x4E4D, 0xA545, 0x4E4E, 0xA547,
- 0x4E4F, 0xA546, 0x4E52, 0xA5E2, 0x4E53, 0xA5E3, 0x4E56, 0xA8C4,
- 0x4E58, 0xADBC, 0x4E59, 0xA441, 0x4E5C, 0xC941, 0x4E5D, 0xA445,
- 0x4E5E, 0xA45E, 0x4E5F, 0xA45D, 0x4E69, 0xA5E4, 0x4E73, 0xA8C5,
- 0x4E7E, 0xB0AE, 0x4E7F, 0xD44B, 0x4E82, 0xB6C3, 0x4E83, 0xDCB1,
- 0x4E84, 0xDCB2, 0x4E86, 0xA446, 0x4E88, 0xA4A9, 0x4E8B, 0xA8C6,
- 0x4E8C, 0xA447, 0x4E8D, 0xC948, 0x4E8E, 0xA45F, 0x4E91, 0xA4AA,
- 0x4E92, 0xA4AC, 0x4E93, 0xC951, 0x4E94, 0xA4AD, 0x4E95, 0xA4AB,
- 0x4E99, 0xA5E5, 0x4E9B, 0xA8C7, 0x4E9E, 0xA8C8, 0x4E9F, 0xAB45,
- 0x4EA1, 0xA460, 0x4EA2, 0xA4AE, 0x4EA4, 0xA5E6, 0x4EA5, 0xA5E8,
- 0x4EA6, 0xA5E7, 0x4EA8, 0xA6EB, 0x4EAB, 0xA8C9, 0x4EAC, 0xA8CA,
- 0x4EAD, 0xAB46, 0x4EAE, 0xAB47, 0x4EB3, 0xADBD, 0x4EB6, 0xDCB3,
- 0x4EB9, 0xF6D6, 0x4EBA, 0xA448, 0x4EC0, 0xA4B0, 0x4EC1, 0xA4AF,
- 0x4EC2, 0xC952, 0x4EC3, 0xA4B1, 0x4EC4, 0xA4B7, 0x4EC6, 0xA4B2,
- 0x4EC7, 0xA4B3, 0x4EC8, 0xC954, 0x4EC9, 0xC953, 0x4ECA, 0xA4B5,
- 0x4ECB, 0xA4B6, 0x4ECD, 0xA4B4, 0x4ED4, 0xA54A, 0x4ED5, 0xA54B,
- 0x4ED6, 0xA54C, 0x4ED7, 0xA54D, 0x4ED8, 0xA549, 0x4ED9, 0xA550,
- 0x4EDA, 0xC96A, 0x4EDC, 0xC966, 0x4EDD, 0xC969, 0x4EDE, 0xA551,
- 0x4EDF, 0xA561, 0x4EE1, 0xC968, 0x4EE3, 0xA54E, 0x4EE4, 0xA54F,
- 0x4EE5, 0xA548, 0x4EE8, 0xC965, 0x4EE9, 0xC967, 0x4EF0, 0xA5F5,
- 0x4EF1, 0xC9B0, 0x4EF2, 0xA5F2, 0x4EF3, 0xA5F6, 0x4EF4, 0xC9BA,
- 0x4EF5, 0xC9AE, 0x4EF6, 0xA5F3, 0x4EF7, 0xC9B2, 0x4EFB, 0xA5F4,
- 0x4EFD, 0xA5F7, 0x4EFF, 0xA5E9, 0x4F00, 0xC9B1, 0x4F01, 0xA5F8,
- 0x4F02, 0xC9B5, 0x4F04, 0xC9B9, 0x4F05, 0xC9B6, 0x4F08, 0xC9B3,
- 0x4F09, 0xA5EA, 0x4F0A, 0xA5EC, 0x4F0B, 0xA5F9, 0x4F0D, 0xA5EE,
- 0x4F0E, 0xC9AB, 0x4F0F, 0xA5F1, 0x4F10, 0xA5EF, 0x4F11, 0xA5F0,
- 0x4F12, 0xC9BB, 0x4F13, 0xC9B8, 0x4F14, 0xC9AF, 0x4F15, 0xA5ED,
- 0x4F18, 0xC9AC, 0x4F19, 0xA5EB, 0x4F1D, 0xC9B4, 0x4F22, 0xC9B7,
- 0x4F2C, 0xC9AD, 0x4F2D, 0xCA66, 0x4F2F, 0xA742, 0x4F30, 0xA6F4,
- 0x4F33, 0xCA67, 0x4F34, 0xA6F1, 0x4F36, 0xA744, 0x4F38, 0xA6F9,
- 0x4F3A, 0xA6F8, 0x4F3B, 0xCA5B, 0x4F3C, 0xA6FC, 0x4F3D, 0xA6F7,
- 0x4F3E, 0xCA60, 0x4F3F, 0xCA68, 0x4F41, 0xCA64, 0x4F43, 0xA6FA,
- 0x4F46, 0xA6FD, 0x4F47, 0xA6EE, 0x4F48, 0xA747, 0x4F49, 0xCA5D,
- 0x4F4C, 0xCBBD, 0x4F4D, 0xA6EC, 0x4F4E, 0xA743, 0x4F4F, 0xA6ED,
- 0x4F50, 0xA6F5, 0x4F51, 0xA6F6, 0x4F52, 0xCA62, 0x4F53, 0xCA5E,
- 0x4F54, 0xA6FB, 0x4F55, 0xA6F3, 0x4F56, 0xCA5A, 0x4F57, 0xA6EF,
- 0x4F58, 0xCA65, 0x4F59, 0xA745, 0x4F5A, 0xA748, 0x4F5B, 0xA6F2,
- 0x4F5C, 0xA740, 0x4F5D, 0xA746, 0x4F5E, 0xA6F0, 0x4F5F, 0xCA63,
- 0x4F60, 0xA741, 0x4F61, 0xCA69, 0x4F62, 0xCA5C, 0x4F63, 0xA6FE,
- 0x4F64, 0xCA5F, 0x4F67, 0xCA61, 0x4F69, 0xA8D8, 0x4F6A, 0xCBBF,
- 0x4F6B, 0xCBCB, 0x4F6C, 0xA8D0, 0x4F6E, 0xCBCC, 0x4F6F, 0xA8CB,
- 0x4F70, 0xA8D5, 0x4F73, 0xA8CE, 0x4F74, 0xCBB9, 0x4F75, 0xA8D6,
- 0x4F76, 0xCBB8, 0x4F77, 0xCBBC, 0x4F78, 0xCBC3, 0x4F79, 0xCBC1,
- 0x4F7A, 0xA8DE, 0x4F7B, 0xA8D9, 0x4F7C, 0xCBB3, 0x4F7D, 0xCBB5,
- 0x4F7E, 0xA8DB, 0x4F7F, 0xA8CF, 0x4F80, 0xCBB6, 0x4F81, 0xCBC2,
- 0x4F82, 0xCBC9, 0x4F83, 0xA8D4, 0x4F84, 0xCBBB, 0x4F85, 0xCBB4,
- 0x4F86, 0xA8D3, 0x4F87, 0xCBB7, 0x4F88, 0xA8D7, 0x4F89, 0xCBBA,
- 0x4F8B, 0xA8D2, 0x4F8D, 0xA8CD, 0x4F8F, 0xA8DC, 0x4F90, 0xCBC4,
- 0x4F91, 0xA8DD, 0x4F92, 0xCBC8, 0x4F94, 0xCBC6, 0x4F95, 0xCBCA,
- 0x4F96, 0xA8DA, 0x4F97, 0xCBBE, 0x4F98, 0xCBB2, 0x4F9A, 0xCBC0,
- 0x4F9B, 0xA8D1, 0x4F9C, 0xCBC5, 0x4F9D, 0xA8CC, 0x4F9E, 0xCBC7,
- 0x4FAE, 0xAB56, 0x4FAF, 0xAB4A, 0x4FB2, 0xCDE0, 0x4FB3, 0xCDE8,
- 0x4FB5, 0xAB49, 0x4FB6, 0xAB51, 0x4FB7, 0xAB5D, 0x4FB9, 0xCDEE,
- 0x4FBA, 0xCDEC, 0x4FBB, 0xCDE7, 0x4FBF, 0xAB4B, 0x4FC0, 0xCDED,
- 0x4FC1, 0xCDE3, 0x4FC2, 0xAB59, 0x4FC3, 0xAB50, 0x4FC4, 0xAB58,
- 0x4FC5, 0xCDDE, 0x4FC7, 0xCDEA, 0x4FC9, 0xCDE1, 0x4FCA, 0xAB54,
- 0x4FCB, 0xCDE2, 0x4FCD, 0xCDDD, 0x4FCE, 0xAB5B, 0x4FCF, 0xAB4E,
- 0x4FD0, 0xAB57, 0x4FD1, 0xAB4D, 0x4FD3, 0xCDDF, 0x4FD4, 0xCDE4,
- 0x4FD6, 0xCDEB, 0x4FD7, 0xAB55, 0x4FD8, 0xAB52, 0x4FD9, 0xCDE6,
- 0x4FDA, 0xAB5A, 0x4FDB, 0xCDE9, 0x4FDC, 0xCDE5, 0x4FDD, 0xAB4F,
- 0x4FDE, 0xAB5C, 0x4FDF, 0xAB53, 0x4FE0, 0xAB4C, 0x4FE1, 0xAB48,
- 0x4FEC, 0xCDEF, 0x4FEE, 0xADD7, 0x4FEF, 0xADC1, 0x4FF1, 0xADD1,
- 0x4FF3, 0xADD6, 0x4FF4, 0xD0D0, 0x4FF5, 0xD0CF, 0x4FF6, 0xD0D4,
- 0x4FF7, 0xD0D5, 0x4FF8, 0xADC4, 0x4FFA, 0xADCD, 0x4FFE, 0xADDA,
- 0x5000, 0xADCE, 0x5005, 0xD0C9, 0x5006, 0xADC7, 0x5007, 0xD0CA,
- 0x5009, 0xADDC, 0x500B, 0xADD3, 0x500C, 0xADBE, 0x500D, 0xADBF,
- 0x500E, 0xD0DD, 0x500F, 0xB0BF, 0x5011, 0xADCC, 0x5012, 0xADCB,
- 0x5013, 0xD0CB, 0x5014, 0xADCF, 0x5015, 0xD45B, 0x5016, 0xADC6,
- 0x5017, 0xD0D6, 0x5018, 0xADD5, 0x5019, 0xADD4, 0x501A, 0xADCA,
- 0x501B, 0xD0CE, 0x501C, 0xD0D7, 0x501E, 0xD0C8, 0x501F, 0xADC9,
- 0x5020, 0xD0D8, 0x5021, 0xADD2, 0x5022, 0xD0CC, 0x5023, 0xADC0,
- 0x5025, 0xADC3, 0x5026, 0xADC2, 0x5027, 0xD0D9, 0x5028, 0xADD0,
- 0x5029, 0xADC5, 0x502A, 0xADD9, 0x502B, 0xADDB, 0x502C, 0xD0D3,
- 0x502D, 0xADD8, 0x502F, 0xD0DB, 0x5030, 0xD0CD, 0x5031, 0xD0DC,
- 0x5033, 0xD0D1, 0x5035, 0xD0DA, 0x5037, 0xD0D2, 0x503C, 0xADC8,
- 0x5040, 0xD463, 0x5041, 0xD457, 0x5043, 0xB0B3, 0x5045, 0xD45C,
- 0x5046, 0xD462, 0x5047, 0xB0B2, 0x5048, 0xD455, 0x5049, 0xB0B6,
- 0x504A, 0xD459, 0x504B, 0xD452, 0x504C, 0xB0B4, 0x504D, 0xD456,
- 0x504E, 0xB0B9, 0x504F, 0xB0BE, 0x5051, 0xD467, 0x5053, 0xD451,
- 0x5055, 0xB0BA, 0x5057, 0xD466, 0x505A, 0xB0B5, 0x505B, 0xD458,
- 0x505C, 0xB0B1, 0x505D, 0xD453, 0x505E, 0xD44F, 0x505F, 0xD45D,
- 0x5060, 0xD450, 0x5061, 0xD44E, 0x5062, 0xD45A, 0x5063, 0xD460,
- 0x5064, 0xD461, 0x5065, 0xB0B7, 0x5068, 0xD85B, 0x5069, 0xD45E,
- 0x506A, 0xD44D, 0x506B, 0xD45F, 0x506D, 0xB0C1, 0x506E, 0xD464,
- 0x506F, 0xB0C0, 0x5070, 0xD44C, 0x5072, 0xD454, 0x5073, 0xD465,
- 0x5074, 0xB0BC, 0x5075, 0xB0BB, 0x5076, 0xB0B8, 0x5077, 0xB0BD,
- 0x507A, 0xB0AF, 0x507D, 0xB0B0, 0x5080, 0xB3C8, 0x5082, 0xD85E,
- 0x5083, 0xD857, 0x5085, 0xB3C5, 0x5087, 0xD85F, 0x508B, 0xD855,
- 0x508C, 0xD858, 0x508D, 0xB3C4, 0x508E, 0xD859, 0x5091, 0xB3C7,
- 0x5092, 0xD85D, 0x5094, 0xD853, 0x5095, 0xD852, 0x5096, 0xB3C9,
- 0x5098, 0xB3CA, 0x5099, 0xB3C6, 0x509A, 0xB3CB, 0x509B, 0xD851,
- 0x509C, 0xD85C, 0x509D, 0xD85A, 0x509E, 0xD854, 0x50A2, 0xB3C3,
- 0x50A3, 0xD856, 0x50AC, 0xB6CA, 0x50AD, 0xB6C4, 0x50AE, 0xDCB7,
- 0x50AF, 0xB6CD, 0x50B0, 0xDCBD, 0x50B1, 0xDCC0, 0x50B2, 0xB6C6,
- 0x50B3, 0xB6C7, 0x50B4, 0xDCBA, 0x50B5, 0xB6C5, 0x50B6, 0xDCC3,
- 0x50B7, 0xB6CB, 0x50B8, 0xDCC4, 0x50BA, 0xDCBF, 0x50BB, 0xB6CC,
- 0x50BD, 0xDCB4, 0x50BE, 0xB6C9, 0x50BF, 0xDCB5, 0x50C1, 0xDCBE,
- 0x50C2, 0xDCBC, 0x50C4, 0xDCB8, 0x50C5, 0xB6C8, 0x50C6, 0xDCB6,
- 0x50C7, 0xB6CE, 0x50C8, 0xDCBB, 0x50C9, 0xDCC2, 0x50CA, 0xDCB9,
- 0x50CB, 0xDCC1, 0x50CE, 0xB9B6, 0x50CF, 0xB9B3, 0x50D1, 0xB9B4,
- 0x50D3, 0xE0F9, 0x50D4, 0xE0F1, 0x50D5, 0xB9B2, 0x50D6, 0xB9AF,
- 0x50D7, 0xE0F2, 0x50DA, 0xB9B1, 0x50DB, 0xE0F5, 0x50DD, 0xE0F7,
- 0x50E0, 0xE0FE, 0x50E3, 0xE0FD, 0x50E4, 0xE0F8, 0x50E5, 0xB9AE,
- 0x50E6, 0xE0F0, 0x50E7, 0xB9AC, 0x50E8, 0xE0F3, 0x50E9, 0xB9B7,
- 0x50EA, 0xE0F6, 0x50EC, 0xE0FA, 0x50ED, 0xB9B0, 0x50EE, 0xB9AD,
- 0x50EF, 0xE0FC, 0x50F0, 0xE0FB, 0x50F1, 0xB9B5, 0x50F3, 0xE0F4,
- 0x50F5, 0xBBF8, 0x50F6, 0xE4EC, 0x50F8, 0xE4E9, 0x50F9, 0xBBF9,
- 0x50FB, 0xBBF7, 0x50FD, 0xE4F0, 0x50FE, 0xE4ED, 0x50FF, 0xE4E6,
- 0x5100, 0xBBF6, 0x5102, 0xBBFA, 0x5103, 0xE4E7, 0x5104, 0xBBF5,
- 0x5105, 0xBBFD, 0x5106, 0xE4EA, 0x5107, 0xE4EB, 0x5108, 0xBBFB,
- 0x5109, 0xBBFC, 0x510A, 0xE4F1, 0x510B, 0xE4EE, 0x510C, 0xE4EF,
- 0x5110, 0xBEAA, 0x5111, 0xE8F8, 0x5112, 0xBEA7, 0x5113, 0xE8F5,
- 0x5114, 0xBEA9, 0x5115, 0xBEAB, 0x5117, 0xE8F6, 0x5118, 0xBEA8,
- 0x511A, 0xE8F7, 0x511C, 0xE8F4, 0x511F, 0xC076, 0x5120, 0xECBD,
- 0x5121, 0xC077, 0x5122, 0xECBB, 0x5124, 0xECBC, 0x5125, 0xECBA,
- 0x5126, 0xECB9, 0x5129, 0xECBE, 0x512A, 0xC075, 0x512D, 0xEFB8,
- 0x512E, 0xEFB9, 0x5130, 0xE4E8, 0x5131, 0xEFB7, 0x5132, 0xC078,
- 0x5133, 0xC35F, 0x5134, 0xF1EB, 0x5135, 0xF1EC, 0x5137, 0xC4D7,
- 0x5138, 0xC4D8, 0x5139, 0xF5C1, 0x513A, 0xF5C0, 0x513B, 0xC56C,
- 0x513C, 0xC56B, 0x513D, 0xF7D0, 0x513F, 0xA449, 0x5140, 0xA461,
- 0x5141, 0xA4B9, 0x5143, 0xA4B8, 0x5144, 0xA553, 0x5145, 0xA552,
- 0x5146, 0xA5FC, 0x5147, 0xA5FB, 0x5148, 0xA5FD, 0x5149, 0xA5FA,
- 0x514B, 0xA74A, 0x514C, 0xA749, 0x514D, 0xA74B, 0x5152, 0xA8E0,
- 0x5154, 0xA8DF, 0x5155, 0xA8E1, 0x5157, 0xAB5E, 0x5159, 0xA259,
- 0x515A, 0xD0DE, 0x515B, 0xA25A, 0x515C, 0xB0C2, 0x515D, 0xA25C,
- 0x515E, 0xA25B, 0x515F, 0xD860, 0x5161, 0xA25D, 0x5162, 0xB9B8,
- 0x5163, 0xA25E, 0x5165, 0xA44A, 0x5167, 0xA4BA, 0x5168, 0xA5FE,
- 0x5169, 0xA8E2, 0x516B, 0xA44B, 0x516C, 0xA4BD, 0x516D, 0xA4BB,
- 0x516E, 0xA4BC, 0x5171, 0xA640, 0x5175, 0xA74C, 0x5176, 0xA8E4,
- 0x5177, 0xA8E3, 0x5178, 0xA8E5, 0x517C, 0xADDD, 0x5180, 0xBEAC,
- 0x5187, 0xC94E, 0x5189, 0xA554, 0x518A, 0xA555, 0x518D, 0xA641,
- 0x518F, 0xCA6A, 0x5191, 0xAB60, 0x5192, 0xAB5F, 0x5193, 0xD0E0,
- 0x5194, 0xD0DF, 0x5195, 0xB0C3, 0x5197, 0xA4BE, 0x5198, 0xC955,
- 0x519E, 0xCBCD, 0x51A0, 0xAB61, 0x51A2, 0xADE0, 0x51A4, 0xADDE,
- 0x51A5, 0xADDF, 0x51AA, 0xBEAD, 0x51AC, 0xA556, 0x51B0, 0xA642,
- 0x51B1, 0xC9BC, 0x51B6, 0xA74D, 0x51B7, 0xA74E, 0x51B9, 0xCA6B,
- 0x51BC, 0xCBCE, 0x51BD, 0xA8E6, 0x51BE, 0xCBCF, 0x51C4, 0xD0E2,
- 0x51C5, 0xD0E3, 0x51C6, 0xADE3, 0x51C8, 0xD0E4, 0x51CA, 0xD0E1,
- 0x51CB, 0xADE4, 0x51CC, 0xADE2, 0x51CD, 0xADE1, 0x51CE, 0xD0E5,
- 0x51D0, 0xD468, 0x51D4, 0xD861, 0x51D7, 0xDCC5, 0x51D8, 0xE140,
- 0x51DC, 0xBBFE, 0x51DD, 0xBEAE, 0x51DE, 0xE8F9, 0x51E0, 0xA44C,
- 0x51E1, 0xA45A, 0x51F0, 0xB0C4, 0x51F1, 0xB3CD, 0x51F3, 0xB9B9,
- 0x51F5, 0xC942, 0x51F6, 0xA4BF, 0x51F8, 0xA559, 0x51F9, 0xA557,
- 0x51FA, 0xA558, 0x51FD, 0xA8E7, 0x5200, 0xA44D, 0x5201, 0xA44E,
- 0x5203, 0xA462, 0x5206, 0xA4C0, 0x5207, 0xA4C1, 0x5208, 0xA4C2,
- 0x5209, 0xC9BE, 0x520A, 0xA55A, 0x520C, 0xC96B, 0x520E, 0xA646,
- 0x5210, 0xC9BF, 0x5211, 0xA644, 0x5212, 0xA645, 0x5213, 0xC9BD,
- 0x5216, 0xA647, 0x5217, 0xA643, 0x521C, 0xCA6C, 0x521D, 0xAAEC,
- 0x521E, 0xCA6D, 0x5221, 0xCA6E, 0x5224, 0xA750, 0x5225, 0xA74F,
- 0x5228, 0xA753, 0x5229, 0xA751, 0x522A, 0xA752, 0x522E, 0xA8ED,
- 0x5230, 0xA8EC, 0x5231, 0xCBD4, 0x5232, 0xCBD1, 0x5233, 0xCBD2,
- 0x5235, 0xCBD0, 0x5236, 0xA8EE, 0x5237, 0xA8EA, 0x5238, 0xA8E9,
- 0x523A, 0xA8EB, 0x523B, 0xA8E8, 0x5241, 0xA8EF, 0x5243, 0xAB63,
- 0x5244, 0xCDF0, 0x5246, 0xCBD3, 0x5247, 0xAB68, 0x5249, 0xCDF1,
- 0x524A, 0xAB64, 0x524B, 0xAB67, 0x524C, 0xAB66, 0x524D, 0xAB65,
- 0x524E, 0xAB62, 0x5252, 0xD0E8, 0x5254, 0xADE7, 0x5255, 0xD0EB,
- 0x5256, 0xADE5, 0x525A, 0xD0E7, 0x525B, 0xADE8, 0x525C, 0xADE6,
- 0x525D, 0xADE9, 0x525E, 0xD0E9, 0x525F, 0xD0EA, 0x5261, 0xD0E6,
- 0x5262, 0xD0EC, 0x5269, 0xB3D1, 0x526A, 0xB0C5, 0x526B, 0xD469,
- 0x526C, 0xD46B, 0x526D, 0xD46A, 0x526E, 0xD46C, 0x526F, 0xB0C6,
- 0x5272, 0xB3CE, 0x5274, 0xB3CF, 0x5275, 0xB3D0, 0x5277, 0xB6D0,
- 0x5278, 0xDCC7, 0x527A, 0xDCC6, 0x527B, 0xDCC8, 0x527C, 0xDCC9,
- 0x527D, 0xB6D1, 0x527F, 0xB6CF, 0x5280, 0xE141, 0x5281, 0xE142,
- 0x5282, 0xB9BB, 0x5283, 0xB9BA, 0x5284, 0xE35A, 0x5287, 0xBC40,
- 0x5288, 0xBC41, 0x5289, 0xBC42, 0x528A, 0xBC44, 0x528B, 0xE4F2,
- 0x528C, 0xE4F3, 0x528D, 0xBC43, 0x5291, 0xBEAF, 0x5293, 0xBEB0,
- 0x5296, 0xF1ED, 0x5297, 0xF5C3, 0x5298, 0xF5C2, 0x5299, 0xF7D1,
- 0x529B, 0xA44F, 0x529F, 0xA55C, 0x52A0, 0xA55B, 0x52A3, 0xA648,
- 0x52A6, 0xC9C0, 0x52A9, 0xA755, 0x52AA, 0xA756, 0x52AB, 0xA754,
- 0x52AC, 0xA757, 0x52AD, 0xCA6F, 0x52AE, 0xCA70, 0x52BB, 0xA8F1,
- 0x52BC, 0xCBD5, 0x52BE, 0xA8F0, 0x52C0, 0xCDF2, 0x52C1, 0xAB6C,
- 0x52C2, 0xCDF3, 0x52C3, 0xAB6B, 0x52C7, 0xAB69, 0x52C9, 0xAB6A,
- 0x52CD, 0xD0ED, 0x52D2, 0xB0C7, 0x52D3, 0xD46E, 0x52D5, 0xB0CA,
- 0x52D6, 0xD46D, 0x52D7, 0xB1E5, 0x52D8, 0xB0C9, 0x52D9, 0xB0C8,
- 0x52DB, 0xB3D4, 0x52DD, 0xB3D3, 0x52DE, 0xB3D2, 0x52DF, 0xB6D2,
- 0x52E2, 0xB6D5, 0x52E3, 0xB6D6, 0x52E4, 0xB6D4, 0x52E6, 0xB6D3,
- 0x52E9, 0xE143, 0x52EB, 0xE144, 0x52EF, 0xE4F5, 0x52F0, 0xBC45,
- 0x52F1, 0xE4F4, 0x52F3, 0xBEB1, 0x52F4, 0xECBF, 0x52F5, 0xC079,
- 0x52F7, 0xF1EE, 0x52F8, 0xC455, 0x52FA, 0xA463, 0x52FB, 0xA4C3,
- 0x52FC, 0xC956, 0x52FE, 0xA4C4, 0x52FF, 0xA4C5, 0x5305, 0xA55D,
- 0x5306, 0xA55E, 0x5308, 0xA649, 0x5309, 0xCA71, 0x530A, 0xCBD6,
- 0x530B, 0xCBD7, 0x530D, 0xAB6D, 0x530E, 0xD0EE, 0x530F, 0xB0CC,
- 0x5310, 0xB0CB, 0x5311, 0xD863, 0x5312, 0xD862, 0x5315, 0xA450,
- 0x5316, 0xA4C6, 0x5317, 0xA55F, 0x5319, 0xB0CD, 0x531A, 0xC943,
- 0x531C, 0xC96C, 0x531D, 0xA560, 0x531F, 0xC9C2, 0x5320, 0xA64B,
- 0x5321, 0xA64A, 0x5322, 0xC9C1, 0x5323, 0xA758, 0x532A, 0xADEA,
- 0x532D, 0xD46F, 0x532F, 0xB6D7, 0x5330, 0xE145, 0x5331, 0xB9BC,
- 0x5334, 0xE8FA, 0x5337, 0xF3FD, 0x5339, 0xA4C7, 0x533C, 0xCBD8,
- 0x533D, 0xCDF4, 0x533E, 0xB0D0, 0x533F, 0xB0CE, 0x5340, 0xB0CF,
- 0x5341, 0xA2CC, 0x5341, 0xA451, 0x5343, 0xA464, 0x5344, 0xA2CD,
- 0x5345, 0xA2CE, 0x5345, 0xA4CA, 0x5347, 0xA4C9, 0x5348, 0xA4C8,
- 0x5349, 0xA563, 0x534A, 0xA562, 0x534C, 0xC96D, 0x534D, 0xC9C3,
- 0x5351, 0xA8F5, 0x5352, 0xA8F2, 0x5353, 0xA8F4, 0x5354, 0xA8F3,
- 0x5357, 0xAB6E, 0x535A, 0xB3D5, 0x535C, 0xA452, 0x535E, 0xA4CB,
- 0x5360, 0xA565, 0x5361, 0xA564, 0x5363, 0xCA72, 0x5366, 0xA8F6,
- 0x536C, 0xC957, 0x536E, 0xA567, 0x536F, 0xA566, 0x5370, 0xA64C,
- 0x5371, 0xA64D, 0x5372, 0xCA73, 0x5373, 0xA759, 0x5375, 0xA75A,
- 0x5377, 0xA8F7, 0x5378, 0xA8F8, 0x5379, 0xA8F9, 0x537B, 0xAB6F,
- 0x537C, 0xCDF5, 0x537F, 0xADEB, 0x5382, 0xC944, 0x5384, 0xA4CC,
- 0x538A, 0xC9C4, 0x538E, 0xCA74, 0x538F, 0xCA75, 0x5392, 0xCBD9,
- 0x5394, 0xCBDA, 0x5396, 0xCDF7, 0x5397, 0xCDF6, 0x5398, 0xCDF9,
- 0x5399, 0xCDF8, 0x539A, 0xAB70, 0x539C, 0xD470, 0x539D, 0xADED,
- 0x539E, 0xD0EF, 0x539F, 0xADEC, 0x53A4, 0xD864, 0x53A5, 0xB3D6,
- 0x53A7, 0xD865, 0x53AC, 0xE146, 0x53AD, 0xB9BD, 0x53B2, 0xBC46,
- 0x53B4, 0xF1EF, 0x53B9, 0xC958, 0x53BB, 0xA568, 0x53C3, 0xB0D1,
- 0x53C8, 0xA453, 0x53C9, 0xA465, 0x53CA, 0xA4CE, 0x53CB, 0xA4CD,
- 0x53CD, 0xA4CF, 0x53D4, 0xA8FB, 0x53D6, 0xA8FA, 0x53D7, 0xA8FC,
- 0x53DB, 0xAB71, 0x53DF, 0xADEE, 0x53E1, 0xE8FB, 0x53E2, 0xC24F,
- 0x53E3, 0xA466, 0x53E4, 0xA56A, 0x53E5, 0xA579, 0x53E6, 0xA574,
- 0x53E8, 0xA56F, 0x53E9, 0xA56E, 0x53EA, 0xA575, 0x53EB, 0xA573,
- 0x53EC, 0xA56C, 0x53ED, 0xA57A, 0x53EE, 0xA56D, 0x53EF, 0xA569,
- 0x53F0, 0xA578, 0x53F1, 0xA577, 0x53F2, 0xA576, 0x53F3, 0xA56B,
- 0x53F5, 0xA572, 0x53F8, 0xA571, 0x53FB, 0xA57B, 0x53FC, 0xA570,
- 0x5401, 0xA653, 0x5403, 0xA659, 0x5404, 0xA655, 0x5406, 0xA65B,
- 0x5407, 0xC9C5, 0x5408, 0xA658, 0x5409, 0xA64E, 0x540A, 0xA651,
- 0x540B, 0xA654, 0x540C, 0xA650, 0x540D, 0xA657, 0x540E, 0xA65A,
- 0x540F, 0xA64F, 0x5410, 0xA652, 0x5411, 0xA656, 0x5412, 0xA65C,
- 0x5418, 0xCA7E, 0x5419, 0xCA7B, 0x541B, 0xA767, 0x541C, 0xCA7C,
- 0x541D, 0xA75B, 0x541E, 0xA75D, 0x541F, 0xA775, 0x5420, 0xA770,
- 0x5424, 0xCAA5, 0x5425, 0xCA7D, 0x5426, 0xA75F, 0x5427, 0xA761,
- 0x5428, 0xCAA4, 0x5429, 0xA768, 0x542A, 0xCA78, 0x542B, 0xA774,
- 0x542C, 0xA776, 0x542D, 0xA75C, 0x542E, 0xA76D, 0x5430, 0xCA76,
- 0x5431, 0xA773, 0x5433, 0xA764, 0x5435, 0xA76E, 0x5436, 0xA76F,
- 0x5437, 0xCA77, 0x5438, 0xA76C, 0x5439, 0xA76A, 0x543B, 0xA76B,
- 0x543C, 0xA771, 0x543D, 0xCAA1, 0x543E, 0xA75E, 0x5440, 0xA772,
- 0x5441, 0xCAA3, 0x5442, 0xA766, 0x5443, 0xA763, 0x5445, 0xCA7A,
- 0x5446, 0xA762, 0x5447, 0xCAA6, 0x5448, 0xA765, 0x544A, 0xA769,
- 0x544E, 0xA760, 0x544F, 0xCAA2, 0x5454, 0xCA79, 0x5460, 0xCBEB,
- 0x5461, 0xCBEA, 0x5462, 0xA94F, 0x5463, 0xCBED, 0x5464, 0xCBEF,
- 0x5465, 0xCBE4, 0x5466, 0xCBE7, 0x5467, 0xCBEE, 0x5468, 0xA950,
- 0x546B, 0xCBE1, 0x546C, 0xCBE5, 0x546F, 0xCBE9, 0x5470, 0xCE49,
- 0x5471, 0xA94B, 0x5472, 0xCE4D, 0x5473, 0xA8FD, 0x5474, 0xCBE6,
- 0x5475, 0xA8FE, 0x5476, 0xA94C, 0x5477, 0xA945, 0x5478, 0xA941,
- 0x547A, 0xCBE2, 0x547B, 0xA944, 0x547C, 0xA949, 0x547D, 0xA952,
- 0x547E, 0xCBE3, 0x547F, 0xCBDC, 0x5480, 0xA943, 0x5481, 0xCBDD,
- 0x5482, 0xCBDF, 0x5484, 0xA946, 0x5486, 0xA948, 0x5487, 0xCBDB,
- 0x5488, 0xCBE0, 0x548B, 0xA951, 0x548C, 0xA94D, 0x548D, 0xCBE8,
- 0x548E, 0xA953, 0x5490, 0xA94A, 0x5491, 0xCBDE, 0x5492, 0xA947,
- 0x5495, 0xA942, 0x5496, 0xA940, 0x5498, 0xCBEC, 0x549A, 0xA94E,
- 0x54A0, 0xCE48, 0x54A1, 0xCDFB, 0x54A2, 0xCE4B, 0x54A5, 0xCDFD,
- 0x54A6, 0xAB78, 0x54A7, 0xABA8, 0x54A8, 0xAB74, 0x54A9, 0xABA7,
- 0x54AA, 0xAB7D, 0x54AB, 0xABA4, 0x54AC, 0xAB72, 0x54AD, 0xCDFC,
- 0x54AE, 0xCE43, 0x54AF, 0xABA3, 0x54B0, 0xCE4F, 0x54B1, 0xABA5,
- 0x54B3, 0xAB79, 0x54B6, 0xCE45, 0x54B7, 0xCE42, 0x54B8, 0xAB77,
- 0x54BA, 0xCDFA, 0x54BB, 0xABA6, 0x54BC, 0xCE4A, 0x54BD, 0xAB7C,
- 0x54BE, 0xCE4C, 0x54BF, 0xABA9, 0x54C0, 0xAB73, 0x54C1, 0xAB7E,
- 0x54C2, 0xAB7B, 0x54C3, 0xCE40, 0x54C4, 0xABA1, 0x54C5, 0xCE46,
- 0x54C6, 0xCE47, 0x54C7, 0xAB7A, 0x54C8, 0xABA2, 0x54C9, 0xAB76,
- 0x54CE, 0xAB75, 0x54CF, 0xCDFE, 0x54D6, 0xCE44, 0x54DE, 0xCE4E,
- 0x54E0, 0xD144, 0x54E1, 0xADFB, 0x54E2, 0xD0F1, 0x54E4, 0xD0F6,
- 0x54E5, 0xADF4, 0x54E6, 0xAE40, 0x54E7, 0xD0F4, 0x54E8, 0xADEF,
- 0x54E9, 0xADF9, 0x54EA, 0xADFE, 0x54EB, 0xD0FB, 0x54ED, 0xADFA,
- 0x54EE, 0xADFD, 0x54F1, 0xD0FE, 0x54F2, 0xADF5, 0x54F3, 0xD0F5,
- 0x54F7, 0xD142, 0x54F8, 0xD143, 0x54FA, 0xADF7, 0x54FB, 0xD141,
- 0x54FC, 0xADF3, 0x54FD, 0xAE43, 0x54FF, 0xD0F8, 0x5501, 0xADF1,
- 0x5503, 0xD146, 0x5504, 0xD0F9, 0x5505, 0xD0FD, 0x5506, 0xADF6,
- 0x5507, 0xAE42, 0x5508, 0xD0FA, 0x5509, 0xADFC, 0x550A, 0xD140,
- 0x550B, 0xD147, 0x550C, 0xD4A1, 0x550E, 0xD145, 0x550F, 0xAE44,
- 0x5510, 0xADF0, 0x5511, 0xD0FC, 0x5512, 0xD0F3, 0x5514, 0xADF8,
- 0x5517, 0xD0F2, 0x551A, 0xD0F7, 0x5526, 0xD0F0, 0x5527, 0xAE41,
- 0x552A, 0xD477, 0x552C, 0xB0E4, 0x552D, 0xD4A7, 0x552E, 0xB0E2,
- 0x552F, 0xB0DF, 0x5530, 0xD47C, 0x5531, 0xB0DB, 0x5532, 0xD4A2,
- 0x5533, 0xB0E6, 0x5534, 0xD476, 0x5535, 0xD47B, 0x5536, 0xD47A,
- 0x5537, 0xADF2, 0x5538, 0xB0E1, 0x5539, 0xD4A5, 0x553B, 0xD4A8,
- 0x553C, 0xD473, 0x553E, 0xB3E8, 0x5540, 0xD4A9, 0x5541, 0xB0E7,
- 0x5543, 0xB0D9, 0x5544, 0xB0D6, 0x5545, 0xD47E, 0x5546, 0xB0D3,
- 0x5548, 0xD4A6, 0x554A, 0xB0DA, 0x554B, 0xD4AA, 0x554D, 0xD474,
- 0x554E, 0xD4A4, 0x554F, 0xB0DD, 0x5550, 0xD475, 0x5551, 0xD478,
- 0x5552, 0xD47D, 0x5555, 0xB0DE, 0x5556, 0xB0DC, 0x5557, 0xB0E8,
- 0x555C, 0xB0E3, 0x555E, 0xB0D7, 0x555F, 0xB1D2, 0x5561, 0xB0D8,
- 0x5562, 0xD479, 0x5563, 0xB0E5, 0x5564, 0xB0E0, 0x5565, 0xD4A3,
- 0x5566, 0xB0D5, 0x556A, 0xB0D4, 0x5575, 0xD471, 0x5576, 0xD472,
- 0x5577, 0xD86A, 0x557B, 0xB3D7, 0x557C, 0xB3DA, 0x557D, 0xD875,
- 0x557E, 0xB3EE, 0x557F, 0xD878, 0x5580, 0xB3D8, 0x5581, 0xD871,
- 0x5582, 0xB3DE, 0x5583, 0xB3E4, 0x5584, 0xB5BD, 0x5587, 0xB3E2,
- 0x5588, 0xD86E, 0x5589, 0xB3EF, 0x558A, 0xB3DB, 0x558B, 0xB3E3,
- 0x558C, 0xD876, 0x558D, 0xDCD7, 0x558E, 0xD87B, 0x558F, 0xD86F,
- 0x5591, 0xD866, 0x5592, 0xD873, 0x5593, 0xD86D, 0x5594, 0xB3E1,
- 0x5595, 0xD879, 0x5598, 0xB3DD, 0x5599, 0xB3F1, 0x559A, 0xB3EA,
- 0x559C, 0xB3DF, 0x559D, 0xB3DC, 0x559F, 0xB3E7, 0x55A1, 0xD87A,
- 0x55A2, 0xD86C, 0x55A3, 0xD872, 0x55A4, 0xD874, 0x55A5, 0xD868,
- 0x55A6, 0xD877, 0x55A7, 0xB3D9, 0x55A8, 0xD867, 0x55AA, 0xB3E0,
- 0x55AB, 0xB3F0, 0x55AC, 0xB3EC, 0x55AD, 0xD869, 0x55AE, 0xB3E6,
- 0x55B1, 0xB3ED, 0x55B2, 0xB3E9, 0x55B3, 0xB3E5, 0x55B5, 0xD870,
- 0x55BB, 0xB3EB, 0x55BF, 0xDCD5, 0x55C0, 0xDCD1, 0x55C2, 0xDCE0,
- 0x55C3, 0xDCCA, 0x55C4, 0xDCD3, 0x55C5, 0xB6E5, 0x55C6, 0xB6E6,
- 0x55C7, 0xB6DE, 0x55C8, 0xDCDC, 0x55C9, 0xB6E8, 0x55CA, 0xDCCF,
- 0x55CB, 0xDCCE, 0x55CC, 0xDCCC, 0x55CD, 0xDCDE, 0x55CE, 0xB6DC,
- 0x55CF, 0xDCD8, 0x55D0, 0xDCCD, 0x55D1, 0xB6DF, 0x55D2, 0xDCD6,
- 0x55D3, 0xB6DA, 0x55D4, 0xDCD2, 0x55D5, 0xDCD9, 0x55D6, 0xDCDB,
- 0x55D9, 0xDCDF, 0x55DA, 0xB6E3, 0x55DB, 0xDCCB, 0x55DC, 0xB6DD,
- 0x55DD, 0xDCD0, 0x55DF, 0xB6D8, 0x55E1, 0xB6E4, 0x55E2, 0xDCDA,
- 0x55E3, 0xB6E0, 0x55E4, 0xB6E1, 0x55E5, 0xB6E7, 0x55E6, 0xB6DB,
- 0x55E7, 0xA25F, 0x55E8, 0xB6D9, 0x55E9, 0xDCD4, 0x55EF, 0xB6E2,
- 0x55F2, 0xDCDD, 0x55F6, 0xB9CD, 0x55F7, 0xB9C8, 0x55F9, 0xE155,
- 0x55FA, 0xE151, 0x55FC, 0xE14B, 0x55FD, 0xB9C2, 0x55FE, 0xB9BE,
- 0x55FF, 0xE154, 0x5600, 0xB9BF, 0x5601, 0xE14E, 0x5602, 0xE150,
- 0x5604, 0xE153, 0x5606, 0xB9C4, 0x5608, 0xB9CB, 0x5609, 0xB9C5,
- 0x560C, 0xE149, 0x560D, 0xB9C6, 0x560E, 0xB9C7, 0x560F, 0xE14C,
- 0x5610, 0xB9CC, 0x5612, 0xE14A, 0x5613, 0xE14F, 0x5614, 0xB9C3,
- 0x5615, 0xE148, 0x5616, 0xB9C9, 0x5617, 0xB9C1, 0x561B, 0xB9C0,
- 0x561C, 0xE14D, 0x561D, 0xE152, 0x561F, 0xB9CA, 0x5627, 0xE147,
- 0x5629, 0xBC4D, 0x562A, 0xE547, 0x562C, 0xE544, 0x562E, 0xBC47,
- 0x562F, 0xBC53, 0x5630, 0xBC54, 0x5632, 0xBC4A, 0x5633, 0xE542,
- 0x5634, 0xBC4C, 0x5635, 0xE4F9, 0x5636, 0xBC52, 0x5638, 0xE546,
- 0x5639, 0xBC49, 0x563A, 0xE548, 0x563B, 0xBC48, 0x563D, 0xE543,
- 0x563E, 0xE545, 0x563F, 0xBC4B, 0x5640, 0xE541, 0x5641, 0xE4FA,
- 0x5642, 0xE4F7, 0x5645, 0xD86B, 0x5646, 0xE4FD, 0x5648, 0xE4F6,
- 0x5649, 0xE4FC, 0x564A, 0xE4FB, 0x564C, 0xE4F8, 0x564E, 0xBC4F,
- 0x5653, 0xBC4E, 0x5657, 0xBC50, 0x5658, 0xE4FE, 0x5659, 0xBEB2,
- 0x565A, 0xE540, 0x565E, 0xE945, 0x5660, 0xE8FD, 0x5662, 0xBEBE,
- 0x5663, 0xE942, 0x5664, 0xBEB6, 0x5665, 0xBEBA, 0x5666, 0xE941,
- 0x5668, 0xBEB9, 0x5669, 0xBEB5, 0x566A, 0xBEB8, 0x566B, 0xBEB3,
- 0x566C, 0xBEBD, 0x566D, 0xE943, 0x566E, 0xE8FE, 0x566F, 0xBEBC,
- 0x5670, 0xE8FC, 0x5671, 0xBEBB, 0x5672, 0xE944, 0x5673, 0xE940,
- 0x5674, 0xBC51, 0x5676, 0xBEBF, 0x5677, 0xE946, 0x5678, 0xBEB7,
- 0x5679, 0xBEB4, 0x567E, 0xECC6, 0x567F, 0xECC8, 0x5680, 0xC07B,
- 0x5681, 0xECC9, 0x5682, 0xECC7, 0x5683, 0xECC5, 0x5684, 0xECC4,
- 0x5685, 0xC07D, 0x5686, 0xECC3, 0x5687, 0xC07E, 0x568C, 0xECC1,
- 0x568D, 0xECC2, 0x568E, 0xC07A, 0x568F, 0xC0A1, 0x5690, 0xC07C,
- 0x5693, 0xECC0, 0x5695, 0xC250, 0x5697, 0xEFBC, 0x5698, 0xEFBA,
- 0x5699, 0xEFBF, 0x569A, 0xEFBD, 0x569C, 0xEFBB, 0x569D, 0xEFBE,
- 0x56A5, 0xC360, 0x56A6, 0xF1F2, 0x56A7, 0xF1F3, 0x56A8, 0xC456,
- 0x56AA, 0xF1F4, 0x56AB, 0xF1F0, 0x56AC, 0xF1F5, 0x56AD, 0xF1F1,
- 0x56AE, 0xC251, 0x56B2, 0xF3FE, 0x56B3, 0xF441, 0x56B4, 0xC459,
- 0x56B5, 0xF440, 0x56B6, 0xC458, 0x56B7, 0xC457, 0x56BC, 0xC45A,
- 0x56BD, 0xF5C5, 0x56BE, 0xF5C6, 0x56C0, 0xC4DA, 0x56C1, 0xC4D9,
- 0x56C2, 0xC4DB, 0x56C3, 0xF5C4, 0x56C5, 0xF6D8, 0x56C6, 0xF6D7,
- 0x56C8, 0xC56D, 0x56C9, 0xC56F, 0x56CA, 0xC56E, 0x56CB, 0xF6D9,
- 0x56CC, 0xC5C8, 0x56CD, 0xF8A6, 0x56D1, 0xC5F1, 0x56D3, 0xF8A5,
- 0x56D4, 0xF8EE, 0x56D7, 0xC949, 0x56DA, 0xA57D, 0x56DB, 0xA57C,
- 0x56DD, 0xA65F, 0x56DE, 0xA65E, 0x56DF, 0xC9C7, 0x56E0, 0xA65D,
- 0x56E1, 0xC9C6, 0x56E4, 0xA779, 0x56E5, 0xCAA9, 0x56E7, 0xCAA8,
- 0x56EA, 0xA777, 0x56EB, 0xA77A, 0x56EE, 0xCAA7, 0x56F0, 0xA778,
- 0x56F7, 0xCBF0, 0x56F9, 0xCBF1, 0x56FA, 0xA954, 0x56FF, 0xABAA,
- 0x5701, 0xD148, 0x5702, 0xD149, 0x5703, 0xAE45, 0x5704, 0xAE46,
- 0x5707, 0xD4AC, 0x5708, 0xB0E9, 0x5709, 0xB0EB, 0x570A, 0xD4AB,
- 0x570B, 0xB0EA, 0x570C, 0xD87C, 0x570D, 0xB3F2, 0x5712, 0xB6E9,
- 0x5713, 0xB6EA, 0x5714, 0xDCE1, 0x5716, 0xB9CF, 0x5718, 0xB9CE,
- 0x571A, 0xE549, 0x571B, 0xE948, 0x571C, 0xE947, 0x571E, 0xF96B,
- 0x571F, 0xA467, 0x5720, 0xC959, 0x5722, 0xC96E, 0x5723, 0xC96F,
- 0x5728, 0xA662, 0x5729, 0xA666, 0x572A, 0xC9C9, 0x572C, 0xA664,
- 0x572D, 0xA663, 0x572E, 0xC9C8, 0x572F, 0xA665, 0x5730, 0xA661,
- 0x5733, 0xA660, 0x5734, 0xC9CA, 0x573B, 0xA7A6, 0x573E, 0xA7A3,
- 0x5740, 0xA77D, 0x5741, 0xCAAA, 0x5745, 0xCAAB, 0x5747, 0xA7A1,
- 0x5749, 0xCAAD, 0x574A, 0xA77B, 0x574B, 0xCAAE, 0x574C, 0xCAAC,
- 0x574D, 0xA77E, 0x574E, 0xA7A2, 0x574F, 0xA7A5, 0x5750, 0xA7A4,
- 0x5751, 0xA77C, 0x5752, 0xCAAF, 0x5761, 0xA959, 0x5762, 0xCBFE,
- 0x5764, 0xA95B, 0x5766, 0xA95A, 0x5768, 0xCC40, 0x5769, 0xA958,
- 0x576A, 0xA957, 0x576B, 0xCBF5, 0x576D, 0xCBF4, 0x576F, 0xCBF2,
- 0x5770, 0xCBF7, 0x5771, 0xCBF6, 0x5772, 0xCBF3, 0x5773, 0xCBFC,
- 0x5774, 0xCBFD, 0x5775, 0xCBFA, 0x5776, 0xCBF8, 0x5777, 0xA956,
- 0x577B, 0xCBFB, 0x577C, 0xA95C, 0x577D, 0xCC41, 0x5780, 0xCBF9,
- 0x5782, 0xABAB, 0x5783, 0xA955, 0x578B, 0xABAC, 0x578C, 0xCE54,
- 0x578F, 0xCE5A, 0x5793, 0xABB2, 0x5794, 0xCE58, 0x5795, 0xCE5E,
- 0x5797, 0xCE55, 0x5798, 0xCE59, 0x5799, 0xCE5B, 0x579A, 0xCE5D,
- 0x579B, 0xCE57, 0x579D, 0xCE56, 0x579E, 0xCE51, 0x579F, 0xCE52,
- 0x57A0, 0xABAD, 0x57A2, 0xABAF, 0x57A3, 0xABAE, 0x57A4, 0xCE53,
- 0x57A5, 0xCE5C, 0x57AE, 0xABB1, 0x57B5, 0xCE50, 0x57B6, 0xD153,
- 0x57B8, 0xD152, 0x57B9, 0xD157, 0x57BA, 0xD14E, 0x57BC, 0xD151,
- 0x57BD, 0xD150, 0x57BF, 0xD154, 0x57C1, 0xD158, 0x57C2, 0xAE47,
- 0x57C3, 0xAE4A, 0x57C6, 0xD14F, 0x57C7, 0xD155, 0x57CB, 0xAE49,
- 0x57CC, 0xD14A, 0x57CE, 0xABB0, 0x57CF, 0xD4BA, 0x57D0, 0xD156,
- 0x57D2, 0xD14D, 0x57D4, 0xAE48, 0x57D5, 0xD14C, 0x57DC, 0xD4B1,
- 0x57DF, 0xB0EC, 0x57E0, 0xB0F0, 0x57E1, 0xD4C1, 0x57E2, 0xD4AF,
- 0x57E3, 0xD4BD, 0x57E4, 0xB0F1, 0x57E5, 0xD4BF, 0x57E7, 0xD4C5,
- 0x57E9, 0xD4C9, 0x57EC, 0xD4C0, 0x57ED, 0xD4B4, 0x57EE, 0xD4BC,
- 0x57F0, 0xD4CA, 0x57F1, 0xD4C8, 0x57F2, 0xD4BE, 0x57F3, 0xD4B9,
- 0x57F4, 0xD4B2, 0x57F5, 0xD8A6, 0x57F6, 0xD4B0, 0x57F7, 0xB0F5,
- 0x57F8, 0xD4B7, 0x57F9, 0xB0F6, 0x57FA, 0xB0F2, 0x57FB, 0xD4AD,
- 0x57FC, 0xD4C3, 0x57FD, 0xD4B5, 0x5800, 0xD4B3, 0x5801, 0xD4C6,
- 0x5802, 0xB0F3, 0x5804, 0xD4CC, 0x5805, 0xB0ED, 0x5806, 0xB0EF,
- 0x5807, 0xD4BB, 0x5808, 0xD4B6, 0x5809, 0xAE4B, 0x580A, 0xB0EE,
- 0x580B, 0xD4B8, 0x580C, 0xD4C7, 0x580D, 0xD4CB, 0x580E, 0xD4C2,
- 0x5810, 0xD4C4, 0x5814, 0xD4AE, 0x5819, 0xD8A1, 0x581B, 0xD8AA,
- 0x581C, 0xD8A9, 0x581D, 0xB3FA, 0x581E, 0xD8A2, 0x5820, 0xB3FB,
- 0x5821, 0xB3F9, 0x5823, 0xD8A4, 0x5824, 0xB3F6, 0x5825, 0xD8A8,
- 0x5827, 0xD8A3, 0x5828, 0xD8A5, 0x5829, 0xD87D, 0x582A, 0xB3F4,
- 0x582C, 0xD8B2, 0x582D, 0xD8B1, 0x582E, 0xD8AE, 0x582F, 0xB3F3,
- 0x5830, 0xB3F7, 0x5831, 0xB3F8, 0x5832, 0xD14B, 0x5833, 0xD8AB,
- 0x5834, 0xB3F5, 0x5835, 0xB0F4, 0x5836, 0xD8AD, 0x5837, 0xD87E,
- 0x5838, 0xD8B0, 0x5839, 0xD8AF, 0x583B, 0xD8B3, 0x583D, 0xDCEF,
- 0x583F, 0xD8AC, 0x5848, 0xD8A7, 0x5849, 0xDCE7, 0x584A, 0xB6F4,
- 0x584B, 0xB6F7, 0x584C, 0xB6F2, 0x584D, 0xDCE6, 0x584E, 0xDCEA,
- 0x584F, 0xDCE5, 0x5851, 0xB6EC, 0x5852, 0xB6F6, 0x5853, 0xDCE2,
- 0x5854, 0xB6F0, 0x5855, 0xDCE9, 0x5857, 0xB6EE, 0x5858, 0xB6ED,
- 0x5859, 0xDCEC, 0x585A, 0xB6EF, 0x585B, 0xDCEE, 0x585D, 0xDCEB,
- 0x585E, 0xB6EB, 0x5862, 0xB6F5, 0x5863, 0xDCF0, 0x5864, 0xDCE4,
- 0x5865, 0xDCED, 0x5868, 0xDCE3, 0x586B, 0xB6F1, 0x586D, 0xB6F3,
- 0x586F, 0xDCE8, 0x5871, 0xDCF1, 0x5874, 0xE15D, 0x5875, 0xB9D0,
- 0x5876, 0xE163, 0x5879, 0xB9D5, 0x587A, 0xE15F, 0x587B, 0xE166,
- 0x587C, 0xE157, 0x587D, 0xB9D7, 0x587E, 0xB9D1, 0x587F, 0xE15C,
- 0x5880, 0xBC55, 0x5881, 0xE15B, 0x5882, 0xE164, 0x5883, 0xB9D2,
- 0x5885, 0xB9D6, 0x5886, 0xE15A, 0x5887, 0xE160, 0x5888, 0xE165,
- 0x5889, 0xE156, 0x588A, 0xB9D4, 0x588B, 0xE15E, 0x588E, 0xE162,
- 0x588F, 0xE168, 0x5890, 0xE158, 0x5891, 0xE161, 0x5893, 0xB9D3,
- 0x5894, 0xE167, 0x5898, 0xE159, 0x589C, 0xBC59, 0x589D, 0xE54B,
- 0x589E, 0xBC57, 0x589F, 0xBC56, 0x58A0, 0xE54D, 0x58A1, 0xE552,
- 0x58A3, 0xE54E, 0x58A5, 0xE551, 0x58A6, 0xBC5C, 0x58A8, 0xBEA5,
- 0x58A9, 0xBC5B, 0x58AB, 0xE54A, 0x58AC, 0xE550, 0x58AE, 0xBC5A,
- 0x58AF, 0xE54F, 0x58B1, 0xE54C, 0x58B3, 0xBC58, 0x58BA, 0xE94D,
- 0x58BB, 0xF9D9, 0x58BC, 0xE94F, 0x58BD, 0xE94A, 0x58BE, 0xBEC1,
- 0x58BF, 0xE94C, 0x58C1, 0xBEC0, 0x58C2, 0xE94E, 0x58C5, 0xBEC3,
- 0x58C6, 0xE950, 0x58C7, 0xBEC2, 0x58C8, 0xE949, 0x58C9, 0xE94B,
- 0x58CE, 0xC0A5, 0x58CF, 0xECCC, 0x58D1, 0xC0A4, 0x58D2, 0xECCD,
- 0x58D3, 0xC0A3, 0x58D4, 0xECCB, 0x58D5, 0xC0A2, 0x58D6, 0xECCA,
- 0x58D8, 0xC253, 0x58D9, 0xC252, 0x58DA, 0xF1F6, 0x58DB, 0xF1F8,
- 0x58DD, 0xF1F7, 0x58DE, 0xC361, 0x58DF, 0xC362, 0x58E2, 0xC363,
- 0x58E3, 0xF442, 0x58E4, 0xC45B, 0x58E7, 0xF7D3, 0x58E8, 0xF7D2,
- 0x58E9, 0xC5F2, 0x58EB, 0xA468, 0x58EC, 0xA4D0, 0x58EF, 0xA7A7,
- 0x58F4, 0xCE5F, 0x58F9, 0xB3FC, 0x58FA, 0xB3FD, 0x58FC, 0xDCF2,
- 0x58FD, 0xB9D8, 0x58FE, 0xE169, 0x58FF, 0xE553, 0x5903, 0xC95A,
- 0x5906, 0xCAB0, 0x590C, 0xCC42, 0x590D, 0xCE60, 0x590E, 0xD159,
- 0x590F, 0xAE4C, 0x5912, 0xF1F9, 0x5914, 0xC4DC, 0x5915, 0xA469,
- 0x5916, 0xA57E, 0x5917, 0xC970, 0x5919, 0xA667, 0x591A, 0xA668,
- 0x591C, 0xA95D, 0x5920, 0xB0F7, 0x5922, 0xB9DA, 0x5924, 0xB9DB,
- 0x5925, 0xB9D9, 0x5927, 0xA46A, 0x5929, 0xA4D1, 0x592A, 0xA4D3,
- 0x592B, 0xA4D2, 0x592C, 0xC95B, 0x592D, 0xA4D4, 0x592E, 0xA5A1,
- 0x592F, 0xC971, 0x5931, 0xA5A2, 0x5937, 0xA669, 0x5938, 0xA66A,
- 0x593C, 0xC9CB, 0x593E, 0xA7A8, 0x5940, 0xCAB1, 0x5944, 0xA961,
- 0x5945, 0xCC43, 0x5947, 0xA95F, 0x5948, 0xA960, 0x5949, 0xA95E,
- 0x594A, 0xD15A, 0x594E, 0xABB6, 0x594F, 0xABB5, 0x5950, 0xABB7,
- 0x5951, 0xABB4, 0x5953, 0xCE61, 0x5954, 0xA962, 0x5955, 0xABB3,
- 0x5957, 0xAE4D, 0x5958, 0xAE4E, 0x595A, 0xAE4F, 0x595C, 0xD4CD,
- 0x5960, 0xB3FE, 0x5961, 0xD8B4, 0x5962, 0xB0F8, 0x5967, 0xB6F8,
- 0x5969, 0xB9DD, 0x596A, 0xB9DC, 0x596B, 0xE16A, 0x596D, 0xBC5D,
- 0x596E, 0xBEC4, 0x5970, 0xEFC0, 0x5971, 0xF6DA, 0x5972, 0xF7D4,
- 0x5973, 0xA46B, 0x5974, 0xA5A3, 0x5976, 0xA5A4, 0x5977, 0xC9D1,
- 0x5978, 0xA66C, 0x5979, 0xA66F, 0x597B, 0xC9CF, 0x597C, 0xC9CD,
- 0x597D, 0xA66E, 0x597E, 0xC9D0, 0x597F, 0xC9D2, 0x5980, 0xC9CC,
- 0x5981, 0xA671, 0x5982, 0xA670, 0x5983, 0xA66D, 0x5984, 0xA66B,
- 0x5985, 0xC9CE, 0x598A, 0xA7B3, 0x598D, 0xA7B0, 0x598E, 0xCAB6,
- 0x598F, 0xCAB9, 0x5990, 0xCAB8, 0x5992, 0xA7AA, 0x5993, 0xA7B2,
- 0x5996, 0xA7AF, 0x5997, 0xCAB5, 0x5998, 0xCAB3, 0x5999, 0xA7AE,
- 0x599D, 0xA7A9, 0x599E, 0xA7AC, 0x59A0, 0xCAB4, 0x59A1, 0xCABB,
- 0x59A2, 0xCAB7, 0x59A3, 0xA7AD, 0x59A4, 0xA7B1, 0x59A5, 0xA7B4,
- 0x59A6, 0xCAB2, 0x59A7, 0xCABA, 0x59A8, 0xA7AB, 0x59AE, 0xA967,
- 0x59AF, 0xA96F, 0x59B1, 0xCC4F, 0x59B2, 0xCC48, 0x59B3, 0xA970,
- 0x59B4, 0xCC53, 0x59B5, 0xCC44, 0x59B6, 0xCC4B, 0x59B9, 0xA966,
- 0x59BA, 0xCC45, 0x59BB, 0xA964, 0x59BC, 0xCC4C, 0x59BD, 0xCC50,
- 0x59BE, 0xA963, 0x59C0, 0xCC51, 0x59C1, 0xCC4A, 0x59C3, 0xCC4D,
- 0x59C5, 0xA972, 0x59C6, 0xA969, 0x59C7, 0xCC54, 0x59C8, 0xCC52,
- 0x59CA, 0xA96E, 0x59CB, 0xA96C, 0x59CC, 0xCC49, 0x59CD, 0xA96B,
- 0x59CE, 0xCC47, 0x59CF, 0xCC46, 0x59D0, 0xA96A, 0x59D1, 0xA968,
- 0x59D2, 0xA971, 0x59D3, 0xA96D, 0x59D4, 0xA965, 0x59D6, 0xCC4E,
- 0x59D8, 0xABB9, 0x59DA, 0xABC0, 0x59DB, 0xCE6F, 0x59DC, 0xABB8,
- 0x59DD, 0xCE67, 0x59DE, 0xCE63, 0x59E0, 0xCE73, 0x59E1, 0xCE62,
- 0x59E3, 0xABBB, 0x59E4, 0xCE6C, 0x59E5, 0xABBE, 0x59E6, 0xABC1,
- 0x59E8, 0xABBC, 0x59E9, 0xCE70, 0x59EA, 0xABBF, 0x59EC, 0xAE56,
- 0x59ED, 0xCE76, 0x59EE, 0xCE64, 0x59F1, 0xCE66, 0x59F2, 0xCE6D,
- 0x59F3, 0xCE71, 0x59F4, 0xCE75, 0x59F5, 0xCE72, 0x59F6, 0xCE6B,
- 0x59F7, 0xCE6E, 0x59FA, 0xCE68, 0x59FB, 0xABC3, 0x59FC, 0xCE6A,
- 0x59FD, 0xCE69, 0x59FE, 0xCE74, 0x59FF, 0xABBA, 0x5A00, 0xCE65,
- 0x5A01, 0xABC2, 0x5A03, 0xABBD, 0x5A09, 0xAE5C, 0x5A0A, 0xD162,
- 0x5A0C, 0xAE5B, 0x5A0F, 0xD160, 0x5A11, 0xAE50, 0x5A13, 0xAE55,
- 0x5A15, 0xD15F, 0x5A16, 0xD15C, 0x5A17, 0xD161, 0x5A18, 0xAE51,
- 0x5A19, 0xD15B, 0x5A1B, 0xAE54, 0x5A1C, 0xAE52, 0x5A1E, 0xD163,
- 0x5A1F, 0xAE53, 0x5A20, 0xAE57, 0x5A23, 0xAE58, 0x5A25, 0xAE5A,
- 0x5A29, 0xAE59, 0x5A2D, 0xD15D, 0x5A2E, 0xD15E, 0x5A33, 0xD164,
- 0x5A35, 0xD4D4, 0x5A36, 0xB0F9, 0x5A37, 0xD8C2, 0x5A38, 0xD4D3,
- 0x5A39, 0xD4E6, 0x5A3C, 0xB140, 0x5A3E, 0xD4E4, 0x5A40, 0xB0FE,
- 0x5A41, 0xB0FA, 0x5A42, 0xD4ED, 0x5A43, 0xD4DD, 0x5A44, 0xD4E0,
- 0x5A46, 0xB143, 0x5A47, 0xD4EA, 0x5A48, 0xD4E2, 0x5A49, 0xB0FB,
- 0x5A4A, 0xB144, 0x5A4C, 0xD4E7, 0x5A4D, 0xD4E5, 0x5A50, 0xD4D6,
- 0x5A51, 0xD4EB, 0x5A52, 0xD4DF, 0x5A53, 0xD4DA, 0x5A55, 0xD4D0,
- 0x5A56, 0xD4EC, 0x5A57, 0xD4DC, 0x5A58, 0xD4CF, 0x5A5A, 0xB142,
- 0x5A5B, 0xD4E1, 0x5A5C, 0xD4EE, 0x5A5D, 0xD4DE, 0x5A5E, 0xD4D2,
- 0x5A5F, 0xD4D7, 0x5A60, 0xD4CE, 0x5A62, 0xB141, 0x5A64, 0xD4DB,
- 0x5A65, 0xD4D8, 0x5A66, 0xB0FC, 0x5A67, 0xD4D1, 0x5A69, 0xD4E9,
- 0x5A6A, 0xB0FD, 0x5A6C, 0xD4D9, 0x5A6D, 0xD4D5, 0x5A70, 0xD4E8,
- 0x5A77, 0xB440, 0x5A78, 0xD8BB, 0x5A7A, 0xD8B8, 0x5A7B, 0xD8C9,
- 0x5A7C, 0xD8BD, 0x5A7D, 0xD8CA, 0x5A7F, 0xB442, 0x5A83, 0xD8C6,
- 0x5A84, 0xD8C3, 0x5A8A, 0xD8C4, 0x5A8B, 0xD8C7, 0x5A8C, 0xD8CB,
- 0x5A8E, 0xD4E3, 0x5A8F, 0xD8CD, 0x5A90, 0xDD47, 0x5A92, 0xB443,
- 0x5A93, 0xD8CE, 0x5A94, 0xD8B6, 0x5A95, 0xD8C0, 0x5A97, 0xD8C5,
- 0x5A9A, 0xB441, 0x5A9B, 0xB444, 0x5A9C, 0xD8CC, 0x5A9D, 0xD8CF,
- 0x5A9E, 0xD8BA, 0x5A9F, 0xD8B7, 0x5AA2, 0xD8B9, 0x5AA5, 0xD8BE,
- 0x5AA6, 0xD8BC, 0x5AA7, 0xB445, 0x5AA9, 0xD8C8, 0x5AAC, 0xD8BF,
- 0x5AAE, 0xD8C1, 0x5AAF, 0xD8B5, 0x5AB0, 0xDCFA, 0x5AB1, 0xDCF8,
- 0x5AB2, 0xB742, 0x5AB3, 0xB740, 0x5AB4, 0xDD43, 0x5AB5, 0xDCF9,
- 0x5AB6, 0xDD44, 0x5AB7, 0xDD40, 0x5AB8, 0xDCF7, 0x5AB9, 0xDD46,
- 0x5ABA, 0xDCF6, 0x5ABB, 0xDCFD, 0x5ABC, 0xB6FE, 0x5ABD, 0xB6FD,
- 0x5ABE, 0xB6FC, 0x5ABF, 0xDCFB, 0x5AC0, 0xDD41, 0x5AC1, 0xB6F9,
- 0x5AC2, 0xB741, 0x5AC4, 0xDCF4, 0x5AC6, 0xDCFE, 0x5AC7, 0xDCF3,
- 0x5AC8, 0xDCFC, 0x5AC9, 0xB6FA, 0x5ACA, 0xDD42, 0x5ACB, 0xDCF5,
- 0x5ACC, 0xB6FB, 0x5ACD, 0xDD45, 0x5AD5, 0xE16E, 0x5AD6, 0xB9E2,
- 0x5AD7, 0xB9E1, 0x5AD8, 0xB9E3, 0x5AD9, 0xE17A, 0x5ADA, 0xE170,
- 0x5ADB, 0xE176, 0x5ADC, 0xE16B, 0x5ADD, 0xE179, 0x5ADE, 0xE178,
- 0x5ADF, 0xE17C, 0x5AE0, 0xE175, 0x5AE1, 0xB9DE, 0x5AE2, 0xE174,
- 0x5AE3, 0xB9E4, 0x5AE5, 0xE16D, 0x5AE6, 0xB9DF, 0x5AE8, 0xE17B,
- 0x5AE9, 0xB9E0, 0x5AEA, 0xE16F, 0x5AEB, 0xE172, 0x5AEC, 0xE177,
- 0x5AED, 0xE171, 0x5AEE, 0xE16C, 0x5AF3, 0xE173, 0x5AF4, 0xE555,
- 0x5AF5, 0xBC61, 0x5AF6, 0xE558, 0x5AF7, 0xE557, 0x5AF8, 0xE55A,
- 0x5AF9, 0xE55C, 0x5AFA, 0xF9DC, 0x5AFB, 0xBC5F, 0x5AFD, 0xE556,
- 0x5AFF, 0xE554, 0x5B01, 0xE55D, 0x5B02, 0xE55B, 0x5B03, 0xE559,
- 0x5B05, 0xE55F, 0x5B07, 0xE55E, 0x5B08, 0xBC63, 0x5B09, 0xBC5E,
- 0x5B0B, 0xBC60, 0x5B0C, 0xBC62, 0x5B0F, 0xE560, 0x5B10, 0xE957,
- 0x5B13, 0xE956, 0x5B14, 0xE955, 0x5B16, 0xE958, 0x5B17, 0xE951,
- 0x5B19, 0xE952, 0x5B1A, 0xE95A, 0x5B1B, 0xE953, 0x5B1D, 0xBEC5,
- 0x5B1E, 0xE95C, 0x5B20, 0xE95B, 0x5B21, 0xE954, 0x5B23, 0xECD1,
- 0x5B24, 0xC0A8, 0x5B25, 0xECCF, 0x5B26, 0xECD4, 0x5B27, 0xECD3,
- 0x5B28, 0xE959, 0x5B2A, 0xC0A7, 0x5B2C, 0xECD2, 0x5B2D, 0xECCE,
- 0x5B2E, 0xECD6, 0x5B2F, 0xECD5, 0x5B30, 0xC0A6, 0x5B32, 0xECD0,
- 0x5B34, 0xBEC6, 0x5B38, 0xC254, 0x5B3C, 0xEFC1, 0x5B3D, 0xF1FA,
- 0x5B3E, 0xF1FB, 0x5B3F, 0xF1FC, 0x5B40, 0xC45C, 0x5B43, 0xC45D,
- 0x5B45, 0xF443, 0x5B47, 0xF5C8, 0x5B48, 0xF5C7, 0x5B4B, 0xF6DB,
- 0x5B4C, 0xF6DC, 0x5B4D, 0xF7D5, 0x5B4E, 0xF8A7, 0x5B50, 0xA46C,
- 0x5B51, 0xA46D, 0x5B53, 0xA46E, 0x5B54, 0xA4D5, 0x5B55, 0xA5A5,
- 0x5B56, 0xC9D3, 0x5B57, 0xA672, 0x5B58, 0xA673, 0x5B5A, 0xA7B7,
- 0x5B5B, 0xA7B8, 0x5B5C, 0xA7B6, 0x5B5D, 0xA7B5, 0x5B5F, 0xA973,
- 0x5B62, 0xCC55, 0x5B63, 0xA975, 0x5B64, 0xA974, 0x5B65, 0xCC56,
- 0x5B69, 0xABC4, 0x5B6B, 0xAE5D, 0x5B6C, 0xD165, 0x5B6E, 0xD4F0,
- 0x5B70, 0xB145, 0x5B71, 0xB447, 0x5B72, 0xD4EF, 0x5B73, 0xB446,
- 0x5B75, 0xB9E5, 0x5B77, 0xE17D, 0x5B78, 0xBEC7, 0x5B7A, 0xC0A9,
- 0x5B7B, 0xECD7, 0x5B7D, 0xC45E, 0x5B7F, 0xC570, 0x5B81, 0xC972,
- 0x5B83, 0xA5A6, 0x5B84, 0xC973, 0x5B85, 0xA676, 0x5B87, 0xA674,
- 0x5B88, 0xA675, 0x5B89, 0xA677, 0x5B8B, 0xA7BA, 0x5B8C, 0xA7B9,
- 0x5B8E, 0xCABC, 0x5B8F, 0xA7BB, 0x5B92, 0xCABD, 0x5B93, 0xCC57,
- 0x5B95, 0xCC58, 0x5B97, 0xA976, 0x5B98, 0xA978, 0x5B99, 0xA97A,
- 0x5B9A, 0xA977, 0x5B9B, 0xA97B, 0x5B9C, 0xA979, 0x5BA2, 0xABC8,
- 0x5BA3, 0xABC5, 0x5BA4, 0xABC7, 0x5BA5, 0xABC9, 0x5BA6, 0xABC6,
- 0x5BA7, 0xD166, 0x5BA8, 0xCE77, 0x5BAC, 0xD168, 0x5BAD, 0xD167,
- 0x5BAE, 0xAE63, 0x5BB0, 0xAE5F, 0x5BB3, 0xAE60, 0x5BB4, 0xAE62,
- 0x5BB5, 0xAE64, 0x5BB6, 0xAE61, 0x5BB8, 0xAE66, 0x5BB9, 0xAE65,
- 0x5BBF, 0xB14A, 0x5BC0, 0xD4F2, 0x5BC1, 0xD4F1, 0x5BC2, 0xB149,
- 0x5BC4, 0xB148, 0x5BC5, 0xB147, 0x5BC6, 0xB14B, 0x5BC7, 0xB146,
- 0x5BCA, 0xD8D5, 0x5BCB, 0xD8D2, 0x5BCC, 0xB449, 0x5BCD, 0xD8D1,
- 0x5BCE, 0xD8D6, 0x5BD0, 0xB44B, 0x5BD1, 0xD8D4, 0x5BD2, 0xB448,
- 0x5BD3, 0xB44A, 0x5BD4, 0xD8D3, 0x5BD6, 0xDD48, 0x5BD8, 0xDD49,
- 0x5BD9, 0xDD4A, 0x5BDE, 0xB9E6, 0x5BDF, 0xB9EE, 0x5BE0, 0xE17E,
- 0x5BE1, 0xB9E8, 0x5BE2, 0xB9EC, 0x5BE3, 0xE1A1, 0x5BE4, 0xB9ED,
- 0x5BE5, 0xB9E9, 0x5BE6, 0xB9EA, 0x5BE7, 0xB9E7, 0x5BE8, 0xB9EB,
- 0x5BE9, 0xBC66, 0x5BEA, 0xD8D0, 0x5BEB, 0xBC67, 0x5BEC, 0xBC65,
- 0x5BEE, 0xBC64, 0x5BEF, 0xE95D, 0x5BF0, 0xBEC8, 0x5BF1, 0xECD8,
- 0x5BF2, 0xECD9, 0x5BF5, 0xC364, 0x5BF6, 0xC45F, 0x5BF8, 0xA46F,
- 0x5BFA, 0xA678, 0x5C01, 0xABCA, 0x5C03, 0xD169, 0x5C04, 0xAE67,
- 0x5C07, 0xB14E, 0x5C08, 0xB14D, 0x5C09, 0xB14C, 0x5C0A, 0xB44C,
- 0x5C0B, 0xB44D, 0x5C0C, 0xD8D7, 0x5C0D, 0xB9EF, 0x5C0E, 0xBEC9,
- 0x5C0F, 0xA470, 0x5C10, 0xC95C, 0x5C11, 0xA4D6, 0x5C12, 0xC974,
- 0x5C15, 0xC9D4, 0x5C16, 0xA679, 0x5C1A, 0xA97C, 0x5C1F, 0xDD4B,
- 0x5C22, 0xA471, 0x5C24, 0xA4D7, 0x5C25, 0xC9D5, 0x5C28, 0xCABE,
- 0x5C2A, 0xCABF, 0x5C2C, 0xA7BC, 0x5C30, 0xD8D8, 0x5C31, 0xB44E,
- 0x5C33, 0xDD4C, 0x5C37, 0xC0AA, 0x5C38, 0xA472, 0x5C39, 0xA4A8,
- 0x5C3A, 0xA4D8, 0x5C3B, 0xC975, 0x5C3C, 0xA5A7, 0x5C3E, 0xA7C0,
- 0x5C3F, 0xA7BF, 0x5C40, 0xA7BD, 0x5C41, 0xA7BE, 0x5C44, 0xCC59,
- 0x5C45, 0xA97E, 0x5C46, 0xA9A1, 0x5C47, 0xCC5A, 0x5C48, 0xA97D,
- 0x5C4B, 0xABCE, 0x5C4C, 0xCE78, 0x5C4D, 0xABCD, 0x5C4E, 0xABCB,
- 0x5C4F, 0xABCC, 0x5C50, 0xAE6A, 0x5C51, 0xAE68, 0x5C54, 0xD16B,
- 0x5C55, 0xAE69, 0x5C56, 0xD16A, 0x5C58, 0xAE5E, 0x5C59, 0xD4F3,
- 0x5C5C, 0xB150, 0x5C5D, 0xB151, 0x5C60, 0xB14F, 0x5C62, 0xB9F0,
- 0x5C63, 0xE1A2, 0x5C64, 0xBC68, 0x5C65, 0xBC69, 0x5C67, 0xE561,
- 0x5C68, 0xC0AB, 0x5C69, 0xEFC2, 0x5C6A, 0xEFC3, 0x5C6C, 0xC4DD,
- 0x5C6D, 0xF8A8, 0x5C6E, 0xC94B, 0x5C6F, 0xA4D9, 0x5C71, 0xA473,
- 0x5C73, 0xC977, 0x5C74, 0xC976, 0x5C79, 0xA67A, 0x5C7A, 0xC9D7,
- 0x5C7B, 0xC9D8, 0x5C7C, 0xC9D6, 0x5C7E, 0xC9D9, 0x5C86, 0xCAC7,
- 0x5C88, 0xCAC2, 0x5C89, 0xCAC4, 0x5C8A, 0xCAC6, 0x5C8B, 0xCAC3,
- 0x5C8C, 0xA7C4, 0x5C8D, 0xCAC0, 0x5C8F, 0xCAC1, 0x5C90, 0xA7C1,
- 0x5C91, 0xA7C2, 0x5C92, 0xCAC5, 0x5C93, 0xCAC8, 0x5C94, 0xA7C3,
- 0x5C95, 0xCAC9, 0x5C9D, 0xCC68, 0x5C9F, 0xCC62, 0x5CA0, 0xCC5D,
- 0x5CA1, 0xA9A3, 0x5CA2, 0xCC65, 0x5CA3, 0xCC63, 0x5CA4, 0xCC5C,
- 0x5CA5, 0xCC69, 0x5CA6, 0xCC6C, 0x5CA7, 0xCC67, 0x5CA8, 0xCC60,
- 0x5CA9, 0xA9A5, 0x5CAA, 0xCC66, 0x5CAB, 0xA9A6, 0x5CAC, 0xCC61,
- 0x5CAD, 0xCC64, 0x5CAE, 0xCC5B, 0x5CAF, 0xCC5F, 0x5CB0, 0xCC6B,
- 0x5CB1, 0xA9A7, 0x5CB3, 0xA9A8, 0x5CB5, 0xCC5E, 0x5CB6, 0xCC6A,
- 0x5CB7, 0xA9A2, 0x5CB8, 0xA9A4, 0x5CC6, 0xCEAB, 0x5CC7, 0xCEA4,
- 0x5CC8, 0xCEAA, 0x5CC9, 0xCEA3, 0x5CCA, 0xCEA5, 0x5CCB, 0xCE7D,
- 0x5CCC, 0xCE7B, 0x5CCE, 0xCEAC, 0x5CCF, 0xCEA9, 0x5CD0, 0xCE79,
- 0x5CD2, 0xABD0, 0x5CD3, 0xCEA7, 0x5CD4, 0xCEA8, 0x5CD6, 0xCEA6,
- 0x5CD7, 0xCE7C, 0x5CD8, 0xCE7A, 0x5CD9, 0xABCF, 0x5CDA, 0xCEA2,
- 0x5CDB, 0xCE7E, 0x5CDE, 0xCEA1, 0x5CDF, 0xCEAD, 0x5CE8, 0xAE6F,
- 0x5CEA, 0xAE6E, 0x5CEC, 0xD16C, 0x5CED, 0xAE6B, 0x5CEE, 0xD16E,
- 0x5CF0, 0xAE70, 0x5CF1, 0xD16F, 0x5CF4, 0xAE73, 0x5CF6, 0xAE71,
- 0x5CF7, 0xD170, 0x5CF8, 0xCEAE, 0x5CF9, 0xD172, 0x5CFB, 0xAE6D,
- 0x5CFD, 0xAE6C, 0x5CFF, 0xD16D, 0x5D00, 0xD171, 0x5D01, 0xAE72,
- 0x5D06, 0xB153, 0x5D07, 0xB152, 0x5D0B, 0xD4F5, 0x5D0C, 0xD4F9,
- 0x5D0D, 0xD4FB, 0x5D0E, 0xB154, 0x5D0F, 0xD4FE, 0x5D11, 0xB158,
- 0x5D12, 0xD541, 0x5D14, 0xB15A, 0x5D16, 0xB156, 0x5D17, 0xB15E,
- 0x5D19, 0xB15B, 0x5D1A, 0xD4F7, 0x5D1B, 0xB155, 0x5D1D, 0xD4F6,
- 0x5D1E, 0xD4F4, 0x5D1F, 0xD543, 0x5D20, 0xD4F8, 0x5D22, 0xB157,
- 0x5D23, 0xD542, 0x5D24, 0xB15C, 0x5D25, 0xD4FD, 0x5D26, 0xD4FC,
- 0x5D27, 0xB15D, 0x5D28, 0xD4FA, 0x5D29, 0xB159, 0x5D2E, 0xD544,
- 0x5D30, 0xD540, 0x5D31, 0xD8E7, 0x5D32, 0xD8EE, 0x5D33, 0xD8E3,
- 0x5D34, 0xB451, 0x5D35, 0xD8DF, 0x5D36, 0xD8EF, 0x5D37, 0xD8D9,
- 0x5D38, 0xD8EC, 0x5D39, 0xD8EA, 0x5D3A, 0xD8E4, 0x5D3C, 0xD8ED,
- 0x5D3D, 0xD8E6, 0x5D3F, 0xD8DE, 0x5D40, 0xD8F0, 0x5D41, 0xD8DC,
- 0x5D42, 0xD8E9, 0x5D43, 0xD8DA, 0x5D45, 0xD8F1, 0x5D47, 0xB452,
- 0x5D49, 0xD8EB, 0x5D4A, 0xDD4F, 0x5D4B, 0xD8DD, 0x5D4C, 0xB44F,
- 0x5D4E, 0xD8E1, 0x5D50, 0xB450, 0x5D51, 0xD8E0, 0x5D52, 0xD8E5,
- 0x5D55, 0xD8E2, 0x5D59, 0xD8E8, 0x5D5E, 0xDD53, 0x5D62, 0xDD56,
- 0x5D63, 0xDD4E, 0x5D65, 0xDD50, 0x5D67, 0xDD55, 0x5D68, 0xDD54,
- 0x5D69, 0xB743, 0x5D6B, 0xD8DB, 0x5D6C, 0xDD52, 0x5D6F, 0xB744,
- 0x5D71, 0xDD4D, 0x5D72, 0xDD51, 0x5D77, 0xE1A9, 0x5D79, 0xE1B0,
- 0x5D7A, 0xE1A7, 0x5D7C, 0xE1AE, 0x5D7D, 0xE1A5, 0x5D7E, 0xE1AD,
- 0x5D7F, 0xE1B1, 0x5D80, 0xE1A4, 0x5D81, 0xE1A8, 0x5D82, 0xE1A3,
- 0x5D84, 0xB9F1, 0x5D86, 0xE1A6, 0x5D87, 0xB9F2, 0x5D88, 0xE1AC,
- 0x5D89, 0xE1AB, 0x5D8A, 0xE1AA, 0x5D8D, 0xE1AF, 0x5D92, 0xE565,
- 0x5D93, 0xE567, 0x5D94, 0xBC6B, 0x5D95, 0xE568, 0x5D97, 0xE563,
- 0x5D99, 0xE562, 0x5D9A, 0xE56C, 0x5D9C, 0xE56A, 0x5D9D, 0xBC6A,
- 0x5D9E, 0xE56D, 0x5D9F, 0xE564, 0x5DA0, 0xE569, 0x5DA1, 0xE56B,
- 0x5DA2, 0xE566, 0x5DA7, 0xE961, 0x5DA8, 0xE966, 0x5DA9, 0xE960,
- 0x5DAA, 0xE965, 0x5DAC, 0xE95E, 0x5DAD, 0xE968, 0x5DAE, 0xE964,
- 0x5DAF, 0xE969, 0x5DB0, 0xE963, 0x5DB1, 0xE95F, 0x5DB2, 0xE967,
- 0x5DB4, 0xE96A, 0x5DB5, 0xE962, 0x5DB7, 0xECDA, 0x5DB8, 0xC0AF,
- 0x5DBA, 0xC0AD, 0x5DBC, 0xC0AC, 0x5DBD, 0xC0AE, 0x5DC0, 0xEFC4,
- 0x5DC2, 0xF172, 0x5DC3, 0xF1FD, 0x5DC6, 0xF444, 0x5DC7, 0xF445,
- 0x5DC9, 0xC460, 0x5DCB, 0xF5C9, 0x5DCD, 0xC4DE, 0x5DCF, 0xF5CA,
- 0x5DD1, 0xF6DE, 0x5DD2, 0xC572, 0x5DD4, 0xC571, 0x5DD5, 0xF6DD,
- 0x5DD6, 0xC5C9, 0x5DD8, 0xF7D6, 0x5DDD, 0xA474, 0x5DDE, 0xA67B,
- 0x5DDF, 0xC9DA, 0x5DE0, 0xCACA, 0x5DE1, 0xA8B5, 0x5DE2, 0xB15F,
- 0x5DE5, 0xA475, 0x5DE6, 0xA5AA, 0x5DE7, 0xA5A9, 0x5DE8, 0xA5A8,
- 0x5DEB, 0xA7C5, 0x5DEE, 0xAE74, 0x5DF0, 0xDD57, 0x5DF1, 0xA476,
- 0x5DF2, 0xA477, 0x5DF3, 0xA478, 0x5DF4, 0xA4DA, 0x5DF7, 0xABD1,
- 0x5DF9, 0xCEAF, 0x5DFD, 0xB453, 0x5DFE, 0xA479, 0x5DFF, 0xC95D,
- 0x5E02, 0xA5AB, 0x5E03, 0xA5AC, 0x5E04, 0xC978, 0x5E06, 0xA67C,
- 0x5E0A, 0xCACB, 0x5E0C, 0xA7C6, 0x5E0E, 0xCACC, 0x5E11, 0xA9AE,
- 0x5E14, 0xCC6E, 0x5E15, 0xA9AC, 0x5E16, 0xA9AB, 0x5E17, 0xCC6D,
- 0x5E18, 0xA9A9, 0x5E19, 0xCC6F, 0x5E1A, 0xA9AA, 0x5E1B, 0xA9AD,
- 0x5E1D, 0xABD2, 0x5E1F, 0xABD4, 0x5E20, 0xCEB3, 0x5E21, 0xCEB0,
- 0x5E22, 0xCEB1, 0x5E23, 0xCEB2, 0x5E24, 0xCEB4, 0x5E25, 0xABD3,
- 0x5E28, 0xD174, 0x5E29, 0xD173, 0x5E2B, 0xAE76, 0x5E2D, 0xAE75,
- 0x5E33, 0xB162, 0x5E34, 0xD546, 0x5E36, 0xB161, 0x5E37, 0xB163,
- 0x5E38, 0xB160, 0x5E3D, 0xB455, 0x5E3E, 0xD545, 0x5E40, 0xB456,
- 0x5E41, 0xD8F3, 0x5E43, 0xB457, 0x5E44, 0xD8F2, 0x5E45, 0xB454,
- 0x5E4A, 0xDD5A, 0x5E4B, 0xDD5C, 0x5E4C, 0xB745, 0x5E4D, 0xDD5B,
- 0x5E4E, 0xDD59, 0x5E4F, 0xDD58, 0x5E53, 0xE1B4, 0x5E54, 0xB9F7,
- 0x5E55, 0xB9F5, 0x5E57, 0xB9F6, 0x5E58, 0xE1B2, 0x5E59, 0xE1B3,
- 0x5E5B, 0xB9F3, 0x5E5C, 0xE571, 0x5E5D, 0xE56F, 0x5E5F, 0xBC6D,
- 0x5E60, 0xE570, 0x5E61, 0xBC6E, 0x5E62, 0xBC6C, 0x5E63, 0xB9F4,
- 0x5E66, 0xE96D, 0x5E67, 0xE96B, 0x5E68, 0xE96C, 0x5E69, 0xE56E,
- 0x5E6A, 0xECDC, 0x5E6B, 0xC0B0, 0x5E6C, 0xECDB, 0x5E6D, 0xEFC5,
- 0x5E6E, 0xEFC6, 0x5E6F, 0xE96E, 0x5E70, 0xF1FE, 0x5E72, 0xA47A,
- 0x5E73, 0xA5AD, 0x5E74, 0xA67E, 0x5E75, 0xC9DB, 0x5E76, 0xA67D,
- 0x5E78, 0xA9AF, 0x5E79, 0xB746, 0x5E7B, 0xA4DB, 0x5E7C, 0xA5AE,
- 0x5E7D, 0xABD5, 0x5E7E, 0xB458, 0x5E80, 0xC979, 0x5E82, 0xC97A,
- 0x5E84, 0xC9DC, 0x5E87, 0xA7C8, 0x5E88, 0xCAD0, 0x5E89, 0xCACE,
- 0x5E8A, 0xA7C9, 0x5E8B, 0xCACD, 0x5E8C, 0xCACF, 0x5E8D, 0xCAD1,
- 0x5E8F, 0xA7C7, 0x5E95, 0xA9B3, 0x5E96, 0xA9B4, 0x5E97, 0xA9B1,
- 0x5E9A, 0xA9B0, 0x5E9B, 0xCEB8, 0x5E9C, 0xA9B2, 0x5EA0, 0xABD6,
- 0x5EA2, 0xCEB7, 0x5EA3, 0xCEB9, 0x5EA4, 0xCEB6, 0x5EA5, 0xCEBA,
- 0x5EA6, 0xABD7, 0x5EA7, 0xAE79, 0x5EA8, 0xD175, 0x5EAA, 0xD177,
- 0x5EAB, 0xAE77, 0x5EAC, 0xD178, 0x5EAD, 0xAE78, 0x5EAE, 0xD176,
- 0x5EB0, 0xCEB5, 0x5EB1, 0xD547, 0x5EB2, 0xD54A, 0x5EB3, 0xD54B,
- 0x5EB4, 0xD548, 0x5EB5, 0xB167, 0x5EB6, 0xB166, 0x5EB7, 0xB164,
- 0x5EB8, 0xB165, 0x5EB9, 0xD549, 0x5EBE, 0xB168, 0x5EC1, 0xB45A,
- 0x5EC2, 0xB45B, 0x5EC4, 0xB45C, 0x5EC5, 0xDD5D, 0x5EC6, 0xDD5F,
- 0x5EC7, 0xDD61, 0x5EC8, 0xB748, 0x5EC9, 0xB747, 0x5ECA, 0xB459,
- 0x5ECB, 0xDD60, 0x5ECC, 0xDD5E, 0x5ECE, 0xE1B8, 0x5ED1, 0xE1B6,
- 0x5ED2, 0xE1BC, 0x5ED3, 0xB9F8, 0x5ED4, 0xE1BD, 0x5ED5, 0xE1BA,
- 0x5ED6, 0xB9F9, 0x5ED7, 0xE1B7, 0x5ED8, 0xE1B5, 0x5ED9, 0xE1BB,
- 0x5EDA, 0xBC70, 0x5EDB, 0xE573, 0x5EDC, 0xE1B9, 0x5EDD, 0xBC72,
- 0x5EDE, 0xE574, 0x5EDF, 0xBC71, 0x5EE0, 0xBC74, 0x5EE1, 0xE575,
- 0x5EE2, 0xBC6F, 0x5EE3, 0xBC73, 0x5EE5, 0xE973, 0x5EE6, 0xE971,
- 0x5EE7, 0xE970, 0x5EE8, 0xE972, 0x5EE9, 0xE96F, 0x5EEC, 0xC366,
- 0x5EEE, 0xF446, 0x5EEF, 0xF447, 0x5EF1, 0xF5CB, 0x5EF2, 0xF6DF,
- 0x5EF3, 0xC655, 0x5EF6, 0xA9B5, 0x5EF7, 0xA7CA, 0x5EFA, 0xABD8,
- 0x5EFE, 0xA47B, 0x5EFF, 0xA4DC, 0x5F01, 0xA5AF, 0x5F02, 0xC9DD,
- 0x5F04, 0xA7CB, 0x5F05, 0xCAD2, 0x5F07, 0xCEBB, 0x5F08, 0xABD9,
- 0x5F0A, 0xB9FA, 0x5F0B, 0xA47C, 0x5F0F, 0xA6A1, 0x5F12, 0xB749,
- 0x5F13, 0xA47D, 0x5F14, 0xA4DD, 0x5F15, 0xA4DE, 0x5F17, 0xA5B1,
- 0x5F18, 0xA5B0, 0x5F1A, 0xC9DE, 0x5F1B, 0xA6A2, 0x5F1D, 0xCAD3,
- 0x5F1F, 0xA7CC, 0x5F22, 0xCC71, 0x5F23, 0xCC72, 0x5F24, 0xCC73,
- 0x5F26, 0xA9B6, 0x5F27, 0xA9B7, 0x5F28, 0xCC70, 0x5F29, 0xA9B8,
- 0x5F2D, 0xABDA, 0x5F2E, 0xCEBC, 0x5F30, 0xD17A, 0x5F31, 0xAE7A,
- 0x5F33, 0xD179, 0x5F35, 0xB169, 0x5F36, 0xD54C, 0x5F37, 0xB16A,
- 0x5F38, 0xD54D, 0x5F3C, 0xB45D, 0x5F40, 0xDD62, 0x5F43, 0xE1BF,
- 0x5F44, 0xE1BE, 0x5F46, 0xB9FB, 0x5F48, 0xBC75, 0x5F49, 0xE576,
- 0x5F4A, 0xBECA, 0x5F4B, 0xE974, 0x5F4C, 0xC0B1, 0x5F4E, 0xC573,
- 0x5F4F, 0xF7D8, 0x5F54, 0xCC74, 0x5F56, 0xCEBD, 0x5F57, 0xB16B,
- 0x5F58, 0xD8F4, 0x5F59, 0xB74A, 0x5F5D, 0xC255, 0x5F62, 0xA7CE,
- 0x5F64, 0xA7CD, 0x5F65, 0xABDB, 0x5F67, 0xD17B, 0x5F69, 0xB16D,
- 0x5F6A, 0xB343, 0x5F6B, 0xB16E, 0x5F6C, 0xB16C, 0x5F6D, 0xB45E,
- 0x5F6F, 0xE1C0, 0x5F70, 0xB9FC, 0x5F71, 0xBC76, 0x5F73, 0xC94C,
- 0x5F74, 0xC9DF, 0x5F76, 0xCAD5, 0x5F77, 0xA7CF, 0x5F78, 0xCAD4,
- 0x5F79, 0xA7D0, 0x5F7C, 0xA9BC, 0x5F7D, 0xCC77, 0x5F7E, 0xCC76,
- 0x5F7F, 0xA9BB, 0x5F80, 0xA9B9, 0x5F81, 0xA9BA, 0x5F82, 0xCC75,
- 0x5F85, 0xABDD, 0x5F86, 0xCEBE, 0x5F87, 0xABE0, 0x5F88, 0xABDC,
- 0x5F89, 0xABE2, 0x5F8A, 0xABDE, 0x5F8B, 0xABDF, 0x5F8C, 0xABE1,
- 0x5F90, 0xAE7D, 0x5F91, 0xAE7C, 0x5F92, 0xAE7B, 0x5F96, 0xD54F,
- 0x5F97, 0xB16F, 0x5F98, 0xB172, 0x5F99, 0xB170, 0x5F9B, 0xD54E,
- 0x5F9C, 0xB175, 0x5F9E, 0xB171, 0x5F9F, 0xD550, 0x5FA0, 0xB174,
- 0x5FA1, 0xB173, 0x5FA5, 0xD8F6, 0x5FA6, 0xD8F5, 0x5FA8, 0xB461,
- 0x5FA9, 0xB45F, 0x5FAA, 0xB460, 0x5FAB, 0xD8F7, 0x5FAC, 0xB74B,
- 0x5FAD, 0xDD64, 0x5FAE, 0xB74C, 0x5FAF, 0xDD63, 0x5FB2, 0xE577,
- 0x5FB5, 0xBC78, 0x5FB6, 0xE1C1, 0x5FB7, 0xBC77, 0x5FB9, 0xB9FD,
- 0x5FBB, 0xECDE, 0x5FBC, 0xE975, 0x5FBD, 0xC0B2, 0x5FBE, 0xECDD,
- 0x5FBF, 0xF240, 0x5FC0, 0xF448, 0x5FC1, 0xF449, 0x5FC3, 0xA4DF,
- 0x5FC5, 0xA5B2, 0x5FC9, 0xC97B, 0x5FCC, 0xA7D2, 0x5FCD, 0xA7D4,
- 0x5FCF, 0xC9E2, 0x5FD0, 0xCAD8, 0x5FD1, 0xCAD7, 0x5FD2, 0xCAD6,
- 0x5FD4, 0xC9E1, 0x5FD5, 0xC9E0, 0x5FD6, 0xA6A4, 0x5FD7, 0xA7D3,
- 0x5FD8, 0xA7D1, 0x5FD9, 0xA6A3, 0x5FDD, 0xA9BD, 0x5FDE, 0xCC78,
- 0x5FE0, 0xA9BE, 0x5FE1, 0xCADD, 0x5FE3, 0xCADF, 0x5FE4, 0xCADE,
- 0x5FE5, 0xCC79, 0x5FE8, 0xCADA, 0x5FEA, 0xA7D8, 0x5FEB, 0xA7D6,
- 0x5FED, 0xCAD9, 0x5FEE, 0xCADB, 0x5FEF, 0xCAE1, 0x5FF1, 0xA7D5,
- 0x5FF3, 0xCADC, 0x5FF4, 0xCAE5, 0x5FF5, 0xA9C0, 0x5FF7, 0xCAE2,
- 0x5FF8, 0xA7D7, 0x5FFA, 0xCAE0, 0x5FFB, 0xCAE3, 0x5FFD, 0xA9BF,
- 0x5FFF, 0xA9C1, 0x6000, 0xCAE4, 0x6009, 0xCCAF, 0x600A, 0xCCA2,
- 0x600B, 0xCC7E, 0x600C, 0xCCAE, 0x600D, 0xCCA9, 0x600E, 0xABE7,
- 0x600F, 0xA9C2, 0x6010, 0xCCAA, 0x6011, 0xCCAD, 0x6012, 0xABE3,
- 0x6013, 0xCCAC, 0x6014, 0xA9C3, 0x6015, 0xA9C8, 0x6016, 0xA9C6,
- 0x6017, 0xCCA3, 0x6019, 0xCC7C, 0x601A, 0xCCA5, 0x601B, 0xA9CD,
- 0x601C, 0xCCB0, 0x601D, 0xABE4, 0x601E, 0xCCA6, 0x6020, 0xABE5,
- 0x6021, 0xA9C9, 0x6022, 0xCCA8, 0x6024, 0xCECD, 0x6025, 0xABE6,
- 0x6026, 0xCC7B, 0x6027, 0xA9CA, 0x6028, 0xABE8, 0x6029, 0xA9CB,
- 0x602A, 0xA9C7, 0x602B, 0xA9CC, 0x602C, 0xCCA7, 0x602D, 0xCC7A,
- 0x602E, 0xCCAB, 0x602F, 0xA9C4, 0x6032, 0xCC7D, 0x6033, 0xCCA4,
- 0x6034, 0xCCA1, 0x6035, 0xA9C5, 0x6037, 0xCEBF, 0x6039, 0xCEC0,
- 0x6040, 0xCECA, 0x6041, 0xD1A1, 0x6042, 0xCECB, 0x6043, 0xABEE,
- 0x6044, 0xCECE, 0x6045, 0xCEC4, 0x6046, 0xABED, 0x6047, 0xCEC6,
- 0x6049, 0xCEC7, 0x604C, 0xCEC9, 0x604D, 0xABE9, 0x6050, 0xAEA3,
- 0x6052, 0xF9DA, 0x6053, 0xCEC5, 0x6054, 0xCEC1, 0x6055, 0xAEA4,
- 0x6058, 0xCECF, 0x6059, 0xAE7E, 0x605A, 0xD17D, 0x605B, 0xCEC8,
- 0x605D, 0xD17C, 0x605E, 0xCEC3, 0x605F, 0xCECC, 0x6062, 0xABEC,
- 0x6063, 0xAEA1, 0x6064, 0xABF2, 0x6065, 0xAEA2, 0x6066, 0xCED0,
- 0x6067, 0xD17E, 0x6068, 0xABEB, 0x6069, 0xAEA6, 0x606A, 0xABF1,
- 0x606B, 0xABF0, 0x606C, 0xABEF, 0x606D, 0xAEA5, 0x606E, 0xCED1,
- 0x606F, 0xAEA7, 0x6070, 0xABEA, 0x6072, 0xCEC2, 0x607F, 0xB176,
- 0x6080, 0xD1A4, 0x6081, 0xD1A6, 0x6083, 0xD1A8, 0x6084, 0xAEA8,
- 0x6085, 0xAEAE, 0x6086, 0xD553, 0x6087, 0xD1AC, 0x6088, 0xD1A3,
- 0x6089, 0xB178, 0x608A, 0xD551, 0x608C, 0xAEAD, 0x608D, 0xAEAB,
- 0x608E, 0xD1AE, 0x6090, 0xD552, 0x6092, 0xD1A5, 0x6094, 0xAEAC,
- 0x6095, 0xD1A9, 0x6096, 0xAEAF, 0x6097, 0xD1AB, 0x609A, 0xAEAA,
- 0x609B, 0xD1AA, 0x609C, 0xD1AD, 0x609D, 0xD1A7, 0x609F, 0xAEA9,
- 0x60A0, 0xB179, 0x60A2, 0xD1A2, 0x60A3, 0xB177, 0x60A8, 0xB17A,
- 0x60B0, 0xD555, 0x60B1, 0xD55E, 0x60B2, 0xB464, 0x60B4, 0xB17C,
- 0x60B5, 0xB1A3, 0x60B6, 0xB465, 0x60B7, 0xD560, 0x60B8, 0xB1AA,
- 0x60B9, 0xD8F9, 0x60BA, 0xD556, 0x60BB, 0xB1A2, 0x60BC, 0xB1A5,
- 0x60BD, 0xB17E, 0x60BE, 0xD554, 0x60BF, 0xD562, 0x60C0, 0xD565,
- 0x60C1, 0xD949, 0x60C3, 0xD563, 0x60C4, 0xD8FD, 0x60C5, 0xB1A1,
- 0x60C6, 0xB1A8, 0x60C7, 0xB1AC, 0x60C8, 0xD55D, 0x60C9, 0xD8F8,
- 0x60CA, 0xD561, 0x60CB, 0xB17B, 0x60CC, 0xD8FA, 0x60CD, 0xD564,
- 0x60CE, 0xD8FC, 0x60CF, 0xD559, 0x60D1, 0xB462, 0x60D3, 0xD557,
- 0x60D4, 0xD558, 0x60D5, 0xB1A7, 0x60D8, 0xB1A6, 0x60D9, 0xD55B,
- 0x60DA, 0xB1AB, 0x60DB, 0xD55F, 0x60DC, 0xB1A4, 0x60DD, 0xD55C,
- 0x60DF, 0xB1A9, 0x60E0, 0xB466, 0x60E1, 0xB463, 0x60E2, 0xD8FB,
- 0x60E4, 0xD55A, 0x60E6, 0xB17D, 0x60F0, 0xB46B, 0x60F1, 0xB46F,
- 0x60F2, 0xD940, 0x60F3, 0xB751, 0x60F4, 0xB46D, 0x60F5, 0xD944,
- 0x60F6, 0xB471, 0x60F7, 0xDD65, 0x60F8, 0xD946, 0x60F9, 0xB753,
- 0x60FA, 0xB469, 0x60FB, 0xB46C, 0x60FC, 0xD947, 0x60FE, 0xD948,
- 0x60FF, 0xD94E, 0x6100, 0xB473, 0x6101, 0xB754, 0x6103, 0xD94A,
- 0x6104, 0xD94F, 0x6105, 0xD943, 0x6106, 0xB75E, 0x6108, 0xB755,
- 0x6109, 0xB472, 0x610A, 0xD941, 0x610B, 0xD950, 0x610D, 0xB75D,
- 0x610E, 0xB470, 0x610F, 0xB74E, 0x6110, 0xD94D, 0x6112, 0xB474,
- 0x6113, 0xD945, 0x6114, 0xD8FE, 0x6115, 0xB46A, 0x6116, 0xD942,
- 0x6118, 0xD94B, 0x611A, 0xB74D, 0x611B, 0xB752, 0x611C, 0xB467,
- 0x611D, 0xD94C, 0x611F, 0xB750, 0x6123, 0xB468, 0x6127, 0xB75C,
- 0x6128, 0xE1C3, 0x6129, 0xDD70, 0x612B, 0xDD68, 0x612C, 0xE1C2,
- 0x612E, 0xDD6C, 0x612F, 0xDD6E, 0x6132, 0xDD6B, 0x6134, 0xB75B,
- 0x6136, 0xDD6A, 0x6137, 0xB75F, 0x613B, 0xE1D2, 0x613E, 0xB75A,
- 0x613F, 0xBA40, 0x6140, 0xDD71, 0x6141, 0xE1C4, 0x6144, 0xB758,
- 0x6145, 0xDD69, 0x6146, 0xDD6D, 0x6147, 0xB9FE, 0x6148, 0xB74F,
- 0x6149, 0xDD66, 0x614A, 0xDD67, 0x614B, 0xBA41, 0x614C, 0xB757,
- 0x614D, 0xB759, 0x614E, 0xB756, 0x614F, 0xDD6F, 0x6152, 0xE1C8,
- 0x6153, 0xE1C9, 0x6154, 0xE1CE, 0x6155, 0xBC7D, 0x6156, 0xE1D5,
- 0x6158, 0xBA47, 0x615A, 0xBA46, 0x615B, 0xE1D0, 0x615D, 0xBC7C,
- 0x615E, 0xE1C5, 0x615F, 0xBA45, 0x6161, 0xE1D4, 0x6162, 0xBA43,
- 0x6163, 0xBA44, 0x6165, 0xE1D1, 0x6166, 0xE5AA, 0x6167, 0xBC7A,
- 0x6168, 0xB46E, 0x616A, 0xE1D3, 0x616B, 0xBCA3, 0x616C, 0xE1CB,
- 0x616E, 0xBC7B, 0x6170, 0xBCA2, 0x6171, 0xE1C6, 0x6172, 0xE1CA,
- 0x6173, 0xE1C7, 0x6174, 0xE1CD, 0x6175, 0xBA48, 0x6176, 0xBC79,
- 0x6177, 0xBA42, 0x6179, 0xE57A, 0x617A, 0xE1CF, 0x617C, 0xBCA1,
- 0x617E, 0xBCA4, 0x6180, 0xE1CC, 0x6182, 0xBC7E, 0x6183, 0xE579,
- 0x6189, 0xE57E, 0x618A, 0xBECE, 0x618B, 0xE578, 0x618C, 0xE9A3,
- 0x618D, 0xE5A9, 0x618E, 0xBCA8, 0x6190, 0xBCA6, 0x6191, 0xBECC,
- 0x6192, 0xE5A6, 0x6193, 0xE5A2, 0x6194, 0xBCAC, 0x6196, 0xE978,
- 0x619A, 0xBCAA, 0x619B, 0xE5A1, 0x619D, 0xE976, 0x619F, 0xE5A5,
- 0x61A1, 0xE5A8, 0x61A2, 0xE57D, 0x61A4, 0xBCAB, 0x61A7, 0xBCA5,
- 0x61A8, 0xE977, 0x61A9, 0xBECD, 0x61AA, 0xE5A7, 0x61AB, 0xBCA7,
- 0x61AC, 0xBCA9, 0x61AD, 0xE5A4, 0x61AE, 0xBCAD, 0x61AF, 0xE5A3,
- 0x61B0, 0xE57C, 0x61B1, 0xE57B, 0x61B2, 0xBECB, 0x61B3, 0xE5AB,
- 0x61B4, 0xE97A, 0x61B5, 0xECE0, 0x61B6, 0xBED0, 0x61B8, 0xE9A2,
- 0x61BA, 0xE97E, 0x61BC, 0xECE1, 0x61BE, 0xBED1, 0x61BF, 0xE9A1,
- 0x61C1, 0xE97C, 0x61C2, 0xC0B4, 0x61C3, 0xECDF, 0x61C5, 0xE979,
- 0x61C6, 0xE97B, 0x61C7, 0xC0B5, 0x61C8, 0xBED3, 0x61C9, 0xC0B3,
- 0x61CA, 0xBED2, 0x61CB, 0xC0B7, 0x61CC, 0xE97D, 0x61CD, 0xBECF,
- 0x61D6, 0xEFCF, 0x61D8, 0xEFC7, 0x61DE, 0xECE7, 0x61DF, 0xEFC8,
- 0x61E0, 0xECE3, 0x61E3, 0xC256, 0x61E4, 0xECE5, 0x61E5, 0xECE4,
- 0x61E6, 0xC0B6, 0x61E7, 0xECE2, 0x61E8, 0xECE6, 0x61E9, 0xEFD0,
- 0x61EA, 0xEFCC, 0x61EB, 0xEFCE, 0x61ED, 0xEFC9, 0x61EE, 0xEFCA,
- 0x61F0, 0xEFCD, 0x61F1, 0xEFCB, 0x61F2, 0xC367, 0x61F5, 0xC36A,
- 0x61F6, 0xC369, 0x61F7, 0xC368, 0x61F8, 0xC461, 0x61F9, 0xF44A,
- 0x61FA, 0xC462, 0x61FB, 0xF241, 0x61FC, 0xC4DF, 0x61FD, 0xF5CC,
- 0x61FE, 0xC4E0, 0x61FF, 0xC574, 0x6200, 0xC5CA, 0x6201, 0xF7D9,
- 0x6203, 0xF7DA, 0x6204, 0xF7DB, 0x6207, 0xF9BA, 0x6208, 0xA4E0,
- 0x6209, 0xC97C, 0x620A, 0xA5B3, 0x620C, 0xA6A6, 0x620D, 0xA6A7,
- 0x620E, 0xA6A5, 0x6210, 0xA6A8, 0x6211, 0xA7DA, 0x6212, 0xA7D9,
- 0x6214, 0xCCB1, 0x6215, 0xA9CF, 0x6216, 0xA9CE, 0x6219, 0xD1AF,
- 0x621A, 0xB1AD, 0x621B, 0xB1AE, 0x621F, 0xB475, 0x6220, 0xDD72,
- 0x6221, 0xB760, 0x6222, 0xB761, 0x6223, 0xDD74, 0x6224, 0xDD76,
- 0x6225, 0xDD75, 0x6227, 0xE1D7, 0x6229, 0xE1D6, 0x622A, 0xBA49,
- 0x622B, 0xE1D8, 0x622D, 0xE5AC, 0x622E, 0xBCAE, 0x6230, 0xBED4,
- 0x6232, 0xC0B8, 0x6233, 0xC257, 0x6234, 0xC0B9, 0x6236, 0xA4E1,
- 0x623A, 0xCAE6, 0x623D, 0xCCB2, 0x623E, 0xA9D1, 0x623F, 0xA9D0,
- 0x6240, 0xA9D2, 0x6241, 0xABF3, 0x6242, 0xCED2, 0x6243, 0xCED3,
- 0x6246, 0xD1B0, 0x6247, 0xAEB0, 0x6248, 0xB1AF, 0x6249, 0xB476,
- 0x624A, 0xD951, 0x624B, 0xA4E2, 0x624D, 0xA47E, 0x624E, 0xA4E3,
- 0x6250, 0xC97D, 0x6251, 0xA5B7, 0x6252, 0xA5B6, 0x6253, 0xA5B4,
- 0x6254, 0xA5B5, 0x6258, 0xA6AB, 0x6259, 0xC9E9, 0x625A, 0xC9EB,
- 0x625B, 0xA6AA, 0x625C, 0xC9E3, 0x625E, 0xC9E4, 0x6260, 0xC9EA,
- 0x6261, 0xC9E6, 0x6262, 0xC9E8, 0x6263, 0xA6A9, 0x6264, 0xC9E5,
- 0x6265, 0xC9EC, 0x6266, 0xC9E7, 0x626D, 0xA7E1, 0x626E, 0xA7EA,
- 0x626F, 0xA7E8, 0x6270, 0xCAF0, 0x6271, 0xCAED, 0x6272, 0xCAF5,
- 0x6273, 0xA7E6, 0x6274, 0xCAF6, 0x6276, 0xA7DF, 0x6277, 0xCAF3,
- 0x6279, 0xA7E5, 0x627A, 0xCAEF, 0x627B, 0xCAEE, 0x627C, 0xA7E3,
- 0x627D, 0xCAF4, 0x627E, 0xA7E4, 0x627F, 0xA9D3, 0x6280, 0xA7DE,
- 0x6281, 0xCAF1, 0x6283, 0xCAE7, 0x6284, 0xA7DB, 0x6286, 0xA7EE,
- 0x6287, 0xCAEC, 0x6288, 0xCAF2, 0x6289, 0xA7E0, 0x628A, 0xA7E2,
- 0x628C, 0xCAE8, 0x628E, 0xCAE9, 0x628F, 0xCAEA, 0x6291, 0xA7ED,
- 0x6292, 0xA7E7, 0x6293, 0xA7EC, 0x6294, 0xCAEB, 0x6295, 0xA7EB,
- 0x6296, 0xA7DD, 0x6297, 0xA7DC, 0x6298, 0xA7E9, 0x62A8, 0xA9E1,
- 0x62A9, 0xCCBE, 0x62AA, 0xCCB7, 0x62AB, 0xA9DC, 0x62AC, 0xA9EF,
- 0x62AD, 0xCCB3, 0x62AE, 0xCCBA, 0x62AF, 0xCCBC, 0x62B0, 0xCCBF,
- 0x62B1, 0xA9EA, 0x62B3, 0xCCBB, 0x62B4, 0xCCB4, 0x62B5, 0xA9E8,
- 0x62B6, 0xCCB8, 0x62B8, 0xCCC0, 0x62B9, 0xA9D9, 0x62BB, 0xCCBD,
- 0x62BC, 0xA9E3, 0x62BD, 0xA9E2, 0x62BE, 0xCCB6, 0x62BF, 0xA9D7,
- 0x62C2, 0xA9D8, 0x62C4, 0xA9D6, 0x62C6, 0xA9EE, 0x62C7, 0xA9E6,
- 0x62C8, 0xA9E0, 0x62C9, 0xA9D4, 0x62CA, 0xCCB9, 0x62CB, 0xA9DF,
- 0x62CC, 0xA9D5, 0x62CD, 0xA9E7, 0x62CE, 0xA9F0, 0x62CF, 0xCED4,
- 0x62D0, 0xA9E4, 0x62D1, 0xCCB5, 0x62D2, 0xA9DA, 0x62D3, 0xA9DD,
- 0x62D4, 0xA9DE, 0x62D6, 0xA9EC, 0x62D7, 0xA9ED, 0x62D8, 0xA9EB,
- 0x62D9, 0xA9E5, 0x62DA, 0xA9E9, 0x62DB, 0xA9DB, 0x62DC, 0xABF4,
- 0x62EB, 0xCEDA, 0x62EC, 0xAC41, 0x62ED, 0xABF8, 0x62EE, 0xABFA,
- 0x62EF, 0xAC40, 0x62F0, 0xCEE6, 0x62F1, 0xABFD, 0x62F2, 0xD1B1,
- 0x62F3, 0xAEB1, 0x62F4, 0xAC43, 0x62F5, 0xCED7, 0x62F6, 0xCEDF,
- 0x62F7, 0xABFE, 0x62F8, 0xCEDE, 0x62F9, 0xCEDB, 0x62FA, 0xCEE3,
- 0x62FB, 0xCEE5, 0x62FC, 0xABF7, 0x62FD, 0xABFB, 0x62FE, 0xAC42,
- 0x62FF, 0xAEB3, 0x6300, 0xCEE0, 0x6301, 0xABF9, 0x6302, 0xAC45,
- 0x6303, 0xCED9, 0x6307, 0xABFC, 0x6308, 0xAEB2, 0x6309, 0xABF6,
- 0x630B, 0xCED6, 0x630C, 0xCEDD, 0x630D, 0xCED5, 0x630E, 0xCED8,
- 0x630F, 0xCEDC, 0x6310, 0xD1B2, 0x6311, 0xAC44, 0x6313, 0xCEE1,
- 0x6314, 0xCEE2, 0x6315, 0xCEE4, 0x6316, 0xABF5, 0x6328, 0xAEC1,
- 0x6329, 0xD1BE, 0x632A, 0xAEBF, 0x632B, 0xAEC0, 0x632C, 0xD1B4,
- 0x632D, 0xD1C4, 0x632F, 0xAEB6, 0x6332, 0xD566, 0x6333, 0xD1C6,
- 0x6334, 0xD1C0, 0x6336, 0xD1B7, 0x6338, 0xD1C9, 0x6339, 0xD1BA,
- 0x633A, 0xAEBC, 0x633B, 0xD57D, 0x633C, 0xD1BD, 0x633D, 0xAEBE,
- 0x633E, 0xAEB5, 0x6340, 0xD1CB, 0x6341, 0xD1BF, 0x6342, 0xAEB8,
- 0x6343, 0xD1B8, 0x6344, 0xD1B5, 0x6345, 0xD1B6, 0x6346, 0xAEB9,
- 0x6347, 0xD1C5, 0x6348, 0xD1CC, 0x6349, 0xAEBB, 0x634A, 0xD1BC,
- 0x634B, 0xD1BB, 0x634C, 0xAEC3, 0x634D, 0xAEC2, 0x634E, 0xAEB4,
- 0x634F, 0xAEBA, 0x6350, 0xAEBD, 0x6351, 0xD1C8, 0x6354, 0xD1C2,
- 0x6355, 0xAEB7, 0x6356, 0xD1B3, 0x6357, 0xD1CA, 0x6358, 0xD1C1,
- 0x6359, 0xD1C3, 0x635A, 0xD1C7, 0x6365, 0xD567, 0x6367, 0xB1B7,
- 0x6368, 0xB1CB, 0x6369, 0xB1CA, 0x636B, 0xB1BF, 0x636D, 0xD579,
- 0x636E, 0xD575, 0x636F, 0xD572, 0x6370, 0xD5A6, 0x6371, 0xB1BA,
- 0x6372, 0xB1B2, 0x6375, 0xD577, 0x6376, 0xB4A8, 0x6377, 0xB1B6,
- 0x6378, 0xD5A1, 0x637A, 0xB1CC, 0x637B, 0xB1C9, 0x637C, 0xD57B,
- 0x637D, 0xD56A, 0x6380, 0xB1C8, 0x6381, 0xD5A3, 0x6382, 0xD569,
- 0x6383, 0xB1BD, 0x6384, 0xB1C1, 0x6385, 0xD5A2, 0x6387, 0xD573,
- 0x6388, 0xB1C2, 0x6389, 0xB1BC, 0x638A, 0xD568, 0x638C, 0xB478,
- 0x638D, 0xD5A5, 0x638E, 0xD571, 0x638F, 0xB1C7, 0x6390, 0xD574,
- 0x6391, 0xD5A4, 0x6392, 0xB1C6, 0x6394, 0xD952, 0x6396, 0xB1B3,
- 0x6397, 0xD56F, 0x6398, 0xB1B8, 0x6399, 0xB1C3, 0x639B, 0xB1BE,
- 0x639C, 0xD578, 0x639D, 0xD56E, 0x639E, 0xD56C, 0x639F, 0xD57E,
- 0x63A0, 0xB1B0, 0x63A1, 0xB1C4, 0x63A2, 0xB1B4, 0x63A3, 0xB477,
- 0x63A4, 0xD57C, 0x63A5, 0xB1B5, 0x63A7, 0xB1B1, 0x63A8, 0xB1C0,
- 0x63A9, 0xB1BB, 0x63AA, 0xB1B9, 0x63AB, 0xD570, 0x63AC, 0xB1C5,
- 0x63AD, 0xD56D, 0x63AE, 0xD57A, 0x63AF, 0xD576, 0x63B0, 0xD954,
- 0x63B1, 0xD953, 0x63BD, 0xD56B, 0x63BE, 0xD964, 0x63C0, 0xB47A,
- 0x63C2, 0xD96A, 0x63C3, 0xD959, 0x63C4, 0xD967, 0x63C5, 0xDD77,
- 0x63C6, 0xB47D, 0x63C7, 0xD96B, 0x63C8, 0xD96E, 0x63C9, 0xB47C,
- 0x63CA, 0xD95C, 0x63CB, 0xD96D, 0x63CC, 0xD96C, 0x63CD, 0xB47E,
- 0x63CE, 0xD955, 0x63CF, 0xB479, 0x63D0, 0xB4A3, 0x63D2, 0xB4A1,
- 0x63D3, 0xD969, 0x63D5, 0xD95F, 0x63D6, 0xB4A5, 0x63D7, 0xD970,
- 0x63D8, 0xD968, 0x63D9, 0xD971, 0x63DA, 0xB4AD, 0x63DB, 0xB4AB,
- 0x63DC, 0xD966, 0x63DD, 0xD965, 0x63DF, 0xD963, 0x63E0, 0xD95D,
- 0x63E1, 0xB4A4, 0x63E3, 0xB4A2, 0x63E4, 0xD1B9, 0x63E5, 0xD956,
- 0x63E7, 0xDDB7, 0x63E8, 0xD957, 0x63E9, 0xB47B, 0x63EA, 0xB4AA,
- 0x63EB, 0xDD79, 0x63ED, 0xB4A6, 0x63EE, 0xB4A7, 0x63EF, 0xD958,
- 0x63F0, 0xD96F, 0x63F1, 0xDD78, 0x63F2, 0xD960, 0x63F3, 0xD95B,
- 0x63F4, 0xB4A9, 0x63F5, 0xD961, 0x63F6, 0xD95E, 0x63F9, 0xB4AE,
- 0x6406, 0xB770, 0x6409, 0xDD7C, 0x640A, 0xDDB1, 0x640B, 0xDDB6,
- 0x640C, 0xDDAA, 0x640D, 0xB76C, 0x640E, 0xDDBB, 0x640F, 0xB769,
- 0x6410, 0xDD7A, 0x6412, 0xDD7B, 0x6413, 0xB762, 0x6414, 0xB76B,
- 0x6415, 0xDDA4, 0x6416, 0xB76E, 0x6417, 0xB76F, 0x6418, 0xDDA5,
- 0x641A, 0xDDB2, 0x641B, 0xDDB8, 0x641C, 0xB76A, 0x641E, 0xB764,
- 0x641F, 0xDDA3, 0x6420, 0xDD7D, 0x6421, 0xDDBA, 0x6422, 0xDDA8,
- 0x6423, 0xDDA9, 0x6424, 0xDD7E, 0x6425, 0xDDB4, 0x6426, 0xDDAB,
- 0x6427, 0xDDB5, 0x6428, 0xDDAD, 0x642A, 0xB765, 0x642B, 0xE1D9,
- 0x642C, 0xB768, 0x642D, 0xB766, 0x642E, 0xDDB9, 0x642F, 0xDDB0,
- 0x6430, 0xDDAC, 0x6433, 0xDDA1, 0x6434, 0xBA53, 0x6435, 0xDDAF,
- 0x6436, 0xB76D, 0x6437, 0xDDA7, 0x6439, 0xDDA6, 0x643D, 0xB767,
- 0x643E, 0xB763, 0x643F, 0xE1EE, 0x6440, 0xDDB3, 0x6441, 0xDDAE,
- 0x6443, 0xDDA2, 0x644B, 0xE1E9, 0x644D, 0xE1DA, 0x644E, 0xE1E5,
- 0x6450, 0xE1EC, 0x6451, 0xBA51, 0x6452, 0xB4AC, 0x6453, 0xE1EA,
- 0x6454, 0xBA4C, 0x6458, 0xBA4B, 0x6459, 0xE1F1, 0x645B, 0xE1DB,
- 0x645C, 0xE1E8, 0x645D, 0xE1DC, 0x645E, 0xE1E7, 0x645F, 0xBA4F,
- 0x6460, 0xE1EB, 0x6461, 0xD962, 0x6465, 0xE1F2, 0x6466, 0xE1E3,
- 0x6467, 0xBA52, 0x6468, 0xE5BA, 0x6469, 0xBCAF, 0x646B, 0xE1F0,
- 0x646C, 0xE1EF, 0x646D, 0xBA54, 0x646E, 0xE5AD, 0x646F, 0xBCB0,
- 0x6470, 0xE5AE, 0x6472, 0xE1DF, 0x6473, 0xE1E0, 0x6474, 0xE1DD,
- 0x6475, 0xE1E2, 0x6476, 0xE1DE, 0x6477, 0xE1F3, 0x6478, 0xBA4E,
- 0x6479, 0xBCB1, 0x647A, 0xBA50, 0x647B, 0xBA55, 0x647D, 0xE1E1,
- 0x647F, 0xE1ED, 0x6482, 0xE1E6, 0x6485, 0xE5B1, 0x6487, 0xBA4A,
- 0x6488, 0xBCB4, 0x6489, 0xE9AA, 0x648A, 0xE5B6, 0x648B, 0xE5B5,
- 0x648C, 0xE5B7, 0x648F, 0xE5B4, 0x6490, 0xBCB5, 0x6492, 0xBCBB,
- 0x6493, 0xBCB8, 0x6495, 0xBCB9, 0x6496, 0xE5AF, 0x6497, 0xE5B2,
- 0x6498, 0xE5BC, 0x6499, 0xBCC1, 0x649A, 0xBCBF, 0x649C, 0xE5B3,
- 0x649D, 0xD95A, 0x649E, 0xBCB2, 0x649F, 0xE5B9, 0x64A0, 0xE5B0,
- 0x64A2, 0xBCC2, 0x64A3, 0xE5B8, 0x64A4, 0xBA4D, 0x64A5, 0xBCB7,
- 0x64A6, 0xE1E4, 0x64A9, 0xBCBA, 0x64AB, 0xBCBE, 0x64AC, 0xBCC0,
- 0x64AD, 0xBCBD, 0x64AE, 0xBCBC, 0x64B0, 0xBCB6, 0x64B1, 0xE5BB,
- 0x64B2, 0xBCB3, 0x64B3, 0xBCC3, 0x64BB, 0xBED8, 0x64BC, 0xBED9,
- 0x64BD, 0xE9A9, 0x64BE, 0xBEE2, 0x64BF, 0xBEDF, 0x64C1, 0xBED6,
- 0x64C2, 0xBEDD, 0x64C3, 0xE9AB, 0x64C4, 0xBEDB, 0x64C5, 0xBED5,
- 0x64C7, 0xBEDC, 0x64C9, 0xE9A8, 0x64CA, 0xC0BB, 0x64CB, 0xBED7,
- 0x64CD, 0xBEDE, 0x64CE, 0xC0BA, 0x64CF, 0xE9A7, 0x64D0, 0xE9A6,
- 0x64D2, 0xBEE0, 0x64D4, 0xBEE1, 0x64D6, 0xE9A5, 0x64D7, 0xE9A4,
- 0x64D8, 0xC0BC, 0x64D9, 0xE9AE, 0x64DA, 0xBEDA, 0x64DB, 0xE9AC,
- 0x64E0, 0xC0BD, 0x64E2, 0xC0C2, 0x64E3, 0xECEA, 0x64E4, 0xECEC,
- 0x64E6, 0xC0BF, 0x64E8, 0xECED, 0x64E9, 0xECE9, 0x64EB, 0xECEB,
- 0x64EC, 0xC0C0, 0x64ED, 0xC0C3, 0x64EF, 0xECE8, 0x64F0, 0xC0BE,
- 0x64F1, 0xC0C1, 0x64F2, 0xC259, 0x64F3, 0xE9AD, 0x64F4, 0xC258,
- 0x64F7, 0xC25E, 0x64F8, 0xEFD4, 0x64FA, 0xC25C, 0x64FB, 0xC25D,
- 0x64FC, 0xEFD7, 0x64FD, 0xEFD3, 0x64FE, 0xC25A, 0x64FF, 0xEFD1,
- 0x6500, 0xC36B, 0x6501, 0xEFD5, 0x6503, 0xEFD6, 0x6504, 0xEFD2,
- 0x6506, 0xC25B, 0x6507, 0xF242, 0x6509, 0xF245, 0x650C, 0xF246,
- 0x650D, 0xF244, 0x650E, 0xF247, 0x650F, 0xC36C, 0x6510, 0xF243,
- 0x6513, 0xF44E, 0x6514, 0xC464, 0x6515, 0xF44D, 0x6516, 0xF44C,
- 0x6517, 0xF44B, 0x6518, 0xC463, 0x6519, 0xC465, 0x651B, 0xF5CD,
- 0x651C, 0xC4E2, 0x651D, 0xC4E1, 0x6520, 0xF6E1, 0x6521, 0xF6E0,
- 0x6522, 0xF6E3, 0x6523, 0xC5CB, 0x6524, 0xC575, 0x6525, 0xF7DD,
- 0x6526, 0xF6E2, 0x6529, 0xF7DC, 0x652A, 0xC5CD, 0x652B, 0xC5CC,
- 0x652C, 0xC5F3, 0x652D, 0xF8A9, 0x652E, 0xF8EF, 0x652F, 0xA4E4,
- 0x6532, 0xD972, 0x6533, 0xE9AF, 0x6536, 0xA6AC, 0x6537, 0xCAF7,
- 0x6538, 0xA7F1, 0x6539, 0xA7EF, 0x653B, 0xA7F0, 0x653D, 0xCCC1,
- 0x653E, 0xA9F1, 0x653F, 0xAC46, 0x6541, 0xCEE7, 0x6543, 0xCEE8,
- 0x6545, 0xAC47, 0x6546, 0xD1CE, 0x6548, 0xAEC4, 0x6549, 0xAEC5,
- 0x654A, 0xD1CD, 0x654F, 0xB1D3, 0x6551, 0xB1CF, 0x6553, 0xD5A7,
- 0x6554, 0xB1D6, 0x6555, 0xB1D5, 0x6556, 0xB1CE, 0x6557, 0xB1D1,
- 0x6558, 0xB1D4, 0x6559, 0xB1D0, 0x655C, 0xD976, 0x655D, 0xB1CD,
- 0x655E, 0xB4AF, 0x6562, 0xB4B1, 0x6563, 0xB4B2, 0x6564, 0xD975,
- 0x6565, 0xD978, 0x6566, 0xB4B0, 0x6567, 0xD973, 0x6568, 0xD977,
- 0x656A, 0xD974, 0x656C, 0xB771, 0x656F, 0xDDBC, 0x6572, 0xBA56,
- 0x6573, 0xE1F4, 0x6574, 0xBEE3, 0x6575, 0xBCC4, 0x6576, 0xE5BD,
- 0x6577, 0xBCC5, 0x6578, 0xBCC6, 0x6579, 0xE5BF, 0x657A, 0xE5BE,
- 0x657B, 0xE5C0, 0x657C, 0xE9B1, 0x657F, 0xE9B0, 0x6580, 0xECEF,
- 0x6581, 0xECEE, 0x6582, 0xC0C4, 0x6583, 0xC0C5, 0x6584, 0xF248,
- 0x6587, 0xA4E5, 0x658C, 0xD979, 0x6590, 0xB4B4, 0x6591, 0xB4B3,
- 0x6592, 0xDDBD, 0x6594, 0xEFD8, 0x6595, 0xC4E3, 0x6596, 0xF7DE,
- 0x6597, 0xA4E6, 0x6599, 0xAEC6, 0x659B, 0xB1D8, 0x659C, 0xB1D7,
- 0x659D, 0xD97A, 0x659E, 0xD97B, 0x659F, 0xB772, 0x65A0, 0xE1F5,
- 0x65A1, 0xBA57, 0x65A2, 0xE9B2, 0x65A4, 0xA4E7, 0x65A5, 0xA5B8,
- 0x65A7, 0xA9F2, 0x65A8, 0xCCC2, 0x65AA, 0xCEE9, 0x65AB, 0xAC48,
- 0x65AC, 0xB1D9, 0x65AE, 0xD97C, 0x65AF, 0xB4B5, 0x65B0, 0xB773,
- 0x65B2, 0xE5C1, 0x65B3, 0xE5C2, 0x65B6, 0xECF0, 0x65B7, 0xC25F,
- 0x65B8, 0xF8F0, 0x65B9, 0xA4E8, 0x65BB, 0xCCC3, 0x65BC, 0xA9F3,
- 0x65BD, 0xAC49, 0x65BF, 0xCEEA, 0x65C1, 0xAEC7, 0x65C2, 0xD1D2,
- 0x65C3, 0xD1D0, 0x65C4, 0xD1D1, 0x65C5, 0xAEC8, 0x65C6, 0xD1CF,
- 0x65CB, 0xB1DB, 0x65CC, 0xB1DC, 0x65CD, 0xD5A8, 0x65CE, 0xB1DD,
- 0x65CF, 0xB1DA, 0x65D0, 0xD97D, 0x65D2, 0xD97E, 0x65D3, 0xDDBE,
- 0x65D6, 0xBA59, 0x65D7, 0xBA58, 0x65DA, 0xECF1, 0x65DB, 0xEFD9,
- 0x65DD, 0xF24A, 0x65DE, 0xF249, 0x65DF, 0xF44F, 0x65E1, 0xC95E,
- 0x65E2, 0xAC4A, 0x65E5, 0xA4E9, 0x65E6, 0xA5B9, 0x65E8, 0xA6AE,
- 0x65E9, 0xA6AD, 0x65EC, 0xA6AF, 0x65ED, 0xA6B0, 0x65EE, 0xC9EE,
- 0x65EF, 0xC9ED, 0x65F0, 0xCAF8, 0x65F1, 0xA7F2, 0x65F2, 0xCAFB,
- 0x65F3, 0xCAFA, 0x65F4, 0xCAF9, 0x65F5, 0xCAFC, 0x65FA, 0xA9F4,
- 0x65FB, 0xCCC9, 0x65FC, 0xCCC5, 0x65FD, 0xCCCE, 0x6600, 0xA9FB,
- 0x6602, 0xA9F9, 0x6603, 0xCCCA, 0x6604, 0xCCC6, 0x6605, 0xCCCD,
- 0x6606, 0xA9F8, 0x6607, 0xAA40, 0x6608, 0xCCC8, 0x6609, 0xCCC4,
- 0x660A, 0xA9FE, 0x660B, 0xCCCB, 0x660C, 0xA9F7, 0x660D, 0xCCCC,
- 0x660E, 0xA9FA, 0x660F, 0xA9FC, 0x6610, 0xCCD0, 0x6611, 0xCCCF,
- 0x6612, 0xCCC7, 0x6613, 0xA9F6, 0x6614, 0xA9F5, 0x6615, 0xA9FD,
- 0x661C, 0xCEEF, 0x661D, 0xCEF5, 0x661F, 0xAC50, 0x6620, 0xAC4D,
- 0x6621, 0xCEEC, 0x6622, 0xCEF1, 0x6624, 0xAC53, 0x6625, 0xAC4B,
- 0x6626, 0xCEF0, 0x6627, 0xAC4E, 0x6628, 0xAC51, 0x662B, 0xCEF3,
- 0x662D, 0xAC4C, 0x662E, 0xCEF8, 0x662F, 0xAC4F, 0x6631, 0xAC52,
- 0x6632, 0xCEED, 0x6633, 0xCEF2, 0x6634, 0xCEF6, 0x6635, 0xCEEE,
- 0x6636, 0xCEEB, 0x6639, 0xCEF7, 0x663A, 0xCEF4, 0x6641, 0xAED0,
- 0x6642, 0xAEC9, 0x6643, 0xAECC, 0x6645, 0xAECF, 0x6647, 0xD1D5,
- 0x6649, 0xAECA, 0x664A, 0xD1D3, 0x664C, 0xAECE, 0x664F, 0xAECB,
- 0x6651, 0xD1D6, 0x6652, 0xAECD, 0x6659, 0xD5AC, 0x665A, 0xB1DF,
- 0x665B, 0xD5AB, 0x665C, 0xD5AD, 0x665D, 0xB1DE, 0x665E, 0xB1E3,
- 0x665F, 0xD1D4, 0x6661, 0xD5AA, 0x6662, 0xD5AE, 0x6664, 0xB1E0,
- 0x6665, 0xD5A9, 0x6666, 0xB1E2, 0x6668, 0xB1E1, 0x666A, 0xD9A7,
- 0x666C, 0xD9A2, 0x666E, 0xB4B6, 0x666F, 0xB4BA, 0x6670, 0xB4B7,
- 0x6671, 0xD9A5, 0x6672, 0xD9A8, 0x6674, 0xB4B8, 0x6676, 0xB4B9,
- 0x6677, 0xB4BE, 0x6678, 0xDDC7, 0x6679, 0xD9A6, 0x667A, 0xB4BC,
- 0x667B, 0xD9A3, 0x667C, 0xD9A1, 0x667E, 0xB4BD, 0x6680, 0xD9A4,
- 0x6684, 0xB779, 0x6686, 0xDDBF, 0x6687, 0xB776, 0x6688, 0xB777,
- 0x6689, 0xB775, 0x668A, 0xDDC4, 0x668B, 0xDDC3, 0x668C, 0xDDC0,
- 0x668D, 0xB77B, 0x6690, 0xDDC2, 0x6691, 0xB4BB, 0x6694, 0xDDC6,
- 0x6695, 0xDDC1, 0x6696, 0xB778, 0x6697, 0xB774, 0x6698, 0xB77A,
- 0x6699, 0xDDC5, 0x669D, 0xBA5C, 0x669F, 0xE1F8, 0x66A0, 0xE1F7,
- 0x66A1, 0xE1F6, 0x66A2, 0xBA5A, 0x66A8, 0xBA5B, 0x66A9, 0xE5C5,
- 0x66AA, 0xE5C8, 0x66AB, 0xBCC8, 0x66AE, 0xBCC7, 0x66AF, 0xE5C9,
- 0x66B0, 0xE5C4, 0x66B1, 0xBCCA, 0x66B2, 0xE5C6, 0x66B4, 0xBCC9,
- 0x66B5, 0xE5C3, 0x66B7, 0xE5C7, 0x66B8, 0xBEE9, 0x66B9, 0xBEE6,
- 0x66BA, 0xE9BB, 0x66BB, 0xE9BA, 0x66BD, 0xE9B9, 0x66BE, 0xE9B4,
- 0x66C0, 0xE9B5, 0x66C4, 0xBEE7, 0x66C6, 0xBEE4, 0x66C7, 0xBEE8,
- 0x66C8, 0xE9B3, 0x66C9, 0xBEE5, 0x66CA, 0xE9B6, 0x66CB, 0xE9B7,
- 0x66CC, 0xE9BC, 0x66CF, 0xE9B8, 0x66D2, 0xECF2, 0x66D6, 0xC0C7,
- 0x66D8, 0xEFDC, 0x66D9, 0xC0C6, 0x66DA, 0xEFDA, 0x66DB, 0xEFDB,
- 0x66DC, 0xC260, 0x66DD, 0xC36E, 0x66DE, 0xF24B, 0x66E0, 0xC36D,
- 0x66E3, 0xF451, 0x66E4, 0xF452, 0x66E6, 0xC466, 0x66E8, 0xF450,
- 0x66E9, 0xC4E4, 0x66EB, 0xF7DF, 0x66EC, 0xC5CE, 0x66ED, 0xF8AA,
- 0x66EE, 0xF8AB, 0x66F0, 0xA4EA, 0x66F2, 0xA6B1, 0x66F3, 0xA6B2,
- 0x66F4, 0xA7F3, 0x66F6, 0xCCD1, 0x66F7, 0xAC54, 0x66F8, 0xAED1,
- 0x66F9, 0xB1E4, 0x66FC, 0xB0D2, 0x66FE, 0xB4BF, 0x66FF, 0xB4C0,
- 0x6700, 0xB3CC, 0x6701, 0xD9A9, 0x6703, 0xB77C, 0x6704, 0xE1FA,
- 0x6705, 0xE1F9, 0x6708, 0xA4EB, 0x6709, 0xA6B3, 0x670A, 0xCCD2,
- 0x670B, 0xAA42, 0x670D, 0xAA41, 0x670F, 0xCEF9, 0x6710, 0xCEFA,
- 0x6712, 0xD1D7, 0x6713, 0xD1D8, 0x6714, 0xAED2, 0x6715, 0xAED3,
- 0x6717, 0xAED4, 0x6718, 0xD5AF, 0x671B, 0xB1E6, 0x671D, 0xB4C2,
- 0x671F, 0xB4C1, 0x6720, 0xDDC8, 0x6721, 0xDF7A, 0x6722, 0xE1FB,
- 0x6723, 0xE9BD, 0x6726, 0xC261, 0x6727, 0xC467, 0x6728, 0xA4EC,
- 0x672A, 0xA5BC, 0x672B, 0xA5BD, 0x672C, 0xA5BB, 0x672D, 0xA5BE,
- 0x672E, 0xA5BA, 0x6731, 0xA6B6, 0x6733, 0xC9F6, 0x6734, 0xA6B5,
- 0x6735, 0xA6B7, 0x6738, 0xC9F1, 0x6739, 0xC9F0, 0x673A, 0xC9F3,
- 0x673B, 0xC9F2, 0x673C, 0xC9F5, 0x673D, 0xA6B4, 0x673E, 0xC9EF,
- 0x673F, 0xC9F4, 0x6745, 0xCAFD, 0x6746, 0xA7FD, 0x6747, 0xCAFE,
- 0x6748, 0xCB43, 0x6749, 0xA7FC, 0x674B, 0xCB47, 0x674C, 0xCB42,
- 0x674D, 0xCB45, 0x674E, 0xA7F5, 0x674F, 0xA7F6, 0x6750, 0xA7F7,
- 0x6751, 0xA7F8, 0x6753, 0xA840, 0x6755, 0xCB41, 0x6756, 0xA7FA,
- 0x6757, 0xA841, 0x6759, 0xCB40, 0x675A, 0xCB46, 0x675C, 0xA7F9,
- 0x675D, 0xCB44, 0x675E, 0xA7FB, 0x675F, 0xA7F4, 0x6760, 0xA7FE,
- 0x676A, 0xAA57, 0x676C, 0xCCD4, 0x676D, 0xAA43, 0x676F, 0xAA4D,
- 0x6770, 0xAA4E, 0x6771, 0xAA46, 0x6772, 0xAA58, 0x6773, 0xAA48,
- 0x6774, 0xCCDC, 0x6775, 0xAA53, 0x6776, 0xCCD7, 0x6777, 0xAA49,
- 0x6778, 0xCCE6, 0x6779, 0xCCE7, 0x677A, 0xCCDF, 0x677B, 0xCCD8,
- 0x677C, 0xAA56, 0x677D, 0xCCE4, 0x677E, 0xAA51, 0x677F, 0xAA4F,
- 0x6781, 0xCCE5, 0x6783, 0xCCE3, 0x6784, 0xCCDB, 0x6785, 0xCCD3,
- 0x6786, 0xCCDA, 0x6787, 0xAA4A, 0x6789, 0xAA50, 0x678B, 0xAA44,
- 0x678C, 0xCCDE, 0x678D, 0xCCDD, 0x678E, 0xCCD5, 0x6790, 0xAA52,
- 0x6791, 0xCCE1, 0x6792, 0xCCD6, 0x6793, 0xAA55, 0x6794, 0xCCE8,
- 0x6795, 0xAA45, 0x6797, 0xAA4C, 0x6798, 0xCCD9, 0x6799, 0xCCE2,
- 0x679A, 0xAA54, 0x679C, 0xAA47, 0x679D, 0xAA4B, 0x679F, 0xCCE0,
- 0x67AE, 0xCF5B, 0x67AF, 0xAC5C, 0x67B0, 0xAC69, 0x67B2, 0xCF56,
- 0x67B3, 0xCF4C, 0x67B4, 0xAC62, 0x67B5, 0xCF4A, 0x67B6, 0xAC5B,
- 0x67B7, 0xCF45, 0x67B8, 0xAC65, 0x67B9, 0xCF52, 0x67BA, 0xCEFE,
- 0x67BB, 0xCF41, 0x67C0, 0xCF44, 0x67C1, 0xCEFB, 0x67C2, 0xCF51,
- 0x67C3, 0xCF61, 0x67C4, 0xAC60, 0x67C5, 0xCF46, 0x67C6, 0xCF58,
- 0x67C8, 0xCEFD, 0x67C9, 0xCF5F, 0x67CA, 0xCF60, 0x67CB, 0xCF63,
- 0x67CC, 0xCF5A, 0x67CD, 0xCF4B, 0x67CE, 0xCF53, 0x67CF, 0xAC66,
- 0x67D0, 0xAC59, 0x67D1, 0xAC61, 0x67D2, 0xAC6D, 0x67D3, 0xAC56,
- 0x67D4, 0xAC58, 0x67D8, 0xCF43, 0x67D9, 0xAC6A, 0x67DA, 0xAC63,
- 0x67DB, 0xCF5D, 0x67DC, 0xCF40, 0x67DD, 0xAC6C, 0x67DE, 0xAC67,
- 0x67DF, 0xCF49, 0x67E2, 0xAC6B, 0x67E3, 0xCF50, 0x67E4, 0xCF48,
- 0x67E5, 0xAC64, 0x67E6, 0xCF5C, 0x67E7, 0xCF54, 0x67E9, 0xAC5E,
- 0x67EA, 0xCF62, 0x67EB, 0xCF47, 0x67EC, 0xAC5A, 0x67ED, 0xCF59,
- 0x67EE, 0xCF4F, 0x67EF, 0xAC5F, 0x67F0, 0xCF55, 0x67F1, 0xAC57,
- 0x67F2, 0xCEFC, 0x67F3, 0xAC68, 0x67F4, 0xAEE3, 0x67F5, 0xAC5D,
- 0x67F6, 0xCF4E, 0x67F7, 0xCF4D, 0x67F8, 0xCF42, 0x67FA, 0xCF5E,
- 0x67FC, 0xCF57, 0x67FF, 0xAC55, 0x6812, 0xD1EC, 0x6813, 0xAEEA,
- 0x6814, 0xD1ED, 0x6816, 0xD1E1, 0x6817, 0xAEDF, 0x6818, 0xAEEB,
- 0x681A, 0xD1DA, 0x681C, 0xD1E3, 0x681D, 0xD1EB, 0x681F, 0xD1D9,
- 0x6820, 0xD1F4, 0x6821, 0xAED5, 0x6825, 0xD1F3, 0x6826, 0xD1EE,
- 0x6828, 0xD1EF, 0x6829, 0xAEDD, 0x682A, 0xAEE8, 0x682B, 0xD1E5,
- 0x682D, 0xD1E6, 0x682E, 0xD1F0, 0x682F, 0xD1E7, 0x6831, 0xD1E2,
- 0x6832, 0xD1DC, 0x6833, 0xD1DD, 0x6834, 0xD1EA, 0x6835, 0xD1E4,
- 0x6838, 0xAED6, 0x6839, 0xAEDA, 0x683A, 0xD1F2, 0x683B, 0xD1DE,
- 0x683C, 0xAEE6, 0x683D, 0xAEE2, 0x6840, 0xAEE5, 0x6841, 0xAEEC,
- 0x6842, 0xAEDB, 0x6843, 0xAEE7, 0x6844, 0xD1E9, 0x6845, 0xAEE9,
- 0x6846, 0xAED8, 0x6848, 0xAED7, 0x6849, 0xD1DB, 0x684B, 0xD1DF,
- 0x684C, 0xAEE0, 0x684D, 0xD1F1, 0x684E, 0xD1E8, 0x684F, 0xD1E0,
- 0x6850, 0xAEE4, 0x6851, 0xAEE1, 0x6853, 0xAED9, 0x6854, 0xAEDC,
- 0x686B, 0xD5C4, 0x686D, 0xD5B4, 0x686E, 0xD5B5, 0x686F, 0xD5B9,
- 0x6871, 0xD5C8, 0x6872, 0xD5C5, 0x6874, 0xD5BE, 0x6875, 0xD5BD,
- 0x6876, 0xB1ED, 0x6877, 0xD5C1, 0x6878, 0xD5D0, 0x6879, 0xD5B0,
- 0x687B, 0xD5D1, 0x687C, 0xD5C3, 0x687D, 0xD5D5, 0x687E, 0xD5C9,
- 0x687F, 0xB1EC, 0x6880, 0xD5C7, 0x6881, 0xB1E7, 0x6882, 0xB1FC,
- 0x6883, 0xB1F2, 0x6885, 0xB1F6, 0x6886, 0xB1F5, 0x6887, 0xD5B1,
- 0x6889, 0xD5CE, 0x688A, 0xD5D4, 0x688B, 0xD5CC, 0x688C, 0xD5D3,
- 0x688F, 0xD5C0, 0x6890, 0xD5B2, 0x6891, 0xD5D2, 0x6892, 0xD5C2,
- 0x6893, 0xB1EA, 0x6894, 0xB1F7, 0x6896, 0xD5CB, 0x6897, 0xB1F0,
- 0x689B, 0xD5CA, 0x689C, 0xD5B3, 0x689D, 0xB1F8, 0x689F, 0xB1FA,
- 0x68A0, 0xD5CD, 0x68A1, 0xB1FB, 0x68A2, 0xB1E9, 0x68A3, 0xD5BA,
- 0x68A4, 0xD5CF, 0x68A7, 0xB1EF, 0x68A8, 0xB1F9, 0x68A9, 0xD5BC,
- 0x68AA, 0xD5C6, 0x68AB, 0xD5B7, 0x68AC, 0xD5BB, 0x68AD, 0xB1F4,
- 0x68AE, 0xD5B6, 0x68AF, 0xB1E8, 0x68B0, 0xB1F1, 0x68B1, 0xB1EE,
- 0x68B2, 0xD5BF, 0x68B3, 0xAEDE, 0x68B4, 0xD9C0, 0x68B5, 0xB1EB,
- 0x68C4, 0xB1F3, 0x68C6, 0xD9C3, 0x68C7, 0xD9D9, 0x68C8, 0xD9CE,
- 0x68C9, 0xB4D6, 0x68CB, 0xB4D1, 0x68CC, 0xD9BD, 0x68CD, 0xB4D2,
- 0x68CE, 0xD9CD, 0x68D0, 0xD9C6, 0x68D1, 0xD9D3, 0x68D2, 0xB4CE,
- 0x68D3, 0xD9AB, 0x68D4, 0xD9D5, 0x68D5, 0xB4C4, 0x68D6, 0xD9B3,
- 0x68D7, 0xB4C7, 0x68D8, 0xB4C6, 0x68DA, 0xB4D7, 0x68DC, 0xD9AD,
- 0x68DD, 0xD9CF, 0x68DE, 0xD9D0, 0x68DF, 0xB4C9, 0x68E0, 0xB4C5,
- 0x68E1, 0xD9BB, 0x68E3, 0xB4D0, 0x68E4, 0xD9B6, 0x68E6, 0xD9D1,
- 0x68E7, 0xB4CC, 0x68E8, 0xD9C9, 0x68E9, 0xD9D6, 0x68EA, 0xD9B0,
- 0x68EB, 0xD9B5, 0x68EC, 0xD9AF, 0x68EE, 0xB4CB, 0x68EF, 0xD9C2,
- 0x68F0, 0xDDDE, 0x68F1, 0xD9B1, 0x68F2, 0xB4CF, 0x68F3, 0xD9BA,
- 0x68F4, 0xD9D2, 0x68F5, 0xB4CA, 0x68F6, 0xD9B7, 0x68F7, 0xD9B4,
- 0x68F8, 0xD9C5, 0x68F9, 0xB4CD, 0x68FA, 0xB4C3, 0x68FB, 0xB4D9,
- 0x68FC, 0xD9C8, 0x68FD, 0xD9C7, 0x6904, 0xD9AC, 0x6905, 0xB4C8,
- 0x6906, 0xD9D4, 0x6907, 0xD9BC, 0x6908, 0xD9BE, 0x690A, 0xD9CB,
- 0x690B, 0xD9CA, 0x690C, 0xD9AA, 0x690D, 0xB4D3, 0x690E, 0xB4D5,
- 0x690F, 0xD9B2, 0x6910, 0xD9B9, 0x6911, 0xD9C1, 0x6912, 0xB4D4,
- 0x6913, 0xD9B8, 0x6914, 0xD9C4, 0x6915, 0xD9D7, 0x6917, 0xD9CC,
- 0x6925, 0xD9D8, 0x692A, 0xD9AE, 0x692F, 0xDDF2, 0x6930, 0xB7A6,
- 0x6932, 0xDDF0, 0x6933, 0xDDDB, 0x6934, 0xDDE0, 0x6935, 0xDDD9,
- 0x6937, 0xDDEC, 0x6938, 0xDDCB, 0x6939, 0xDDD2, 0x693B, 0xDDEA,
- 0x693C, 0xDDF4, 0x693D, 0xDDDC, 0x693F, 0xDDCF, 0x6940, 0xDDE2,
- 0x6941, 0xDDE7, 0x6942, 0xDDD3, 0x6944, 0xDDE4, 0x6945, 0xDDD0,
- 0x6948, 0xDDD7, 0x6949, 0xDDD8, 0x694A, 0xB7A8, 0x694B, 0xDDEB,
- 0x694C, 0xDDE9, 0x694E, 0xDDCC, 0x694F, 0xDDEE, 0x6951, 0xDDEF,
- 0x6952, 0xDDF1, 0x6953, 0xB7AC, 0x6954, 0xB7A4, 0x6956, 0xD5B8,
- 0x6957, 0xDDD4, 0x6958, 0xDDE6, 0x6959, 0xDDD5, 0x695A, 0xB7A1,
- 0x695B, 0xB7B1, 0x695C, 0xDDED, 0x695D, 0xB7AF, 0x695E, 0xB7AB,
- 0x695F, 0xDDCA, 0x6960, 0xB7A3, 0x6962, 0xDDCD, 0x6963, 0xB7B0,
- 0x6965, 0xDDDD, 0x6966, 0xDDC9, 0x6968, 0xB7A9, 0x6969, 0xDDE1,
- 0x696A, 0xDDD1, 0x696B, 0xB7AA, 0x696C, 0xDDDA, 0x696D, 0xB77E,
- 0x696E, 0xB4D8, 0x696F, 0xDDE3, 0x6970, 0xD9BF, 0x6971, 0xDDCE,
- 0x6974, 0xDDE8, 0x6975, 0xB7A5, 0x6976, 0xDDE5, 0x6977, 0xB7A2,
- 0x6978, 0xDDDF, 0x6979, 0xB7AD, 0x697A, 0xDDD6, 0x697B, 0xDDF3,
- 0x6982, 0xB7A7, 0x6983, 0xDEC6, 0x6986, 0xB7AE, 0x698D, 0xE24A,
- 0x698E, 0xE248, 0x6990, 0xE25E, 0x6991, 0xE246, 0x6993, 0xE258,
- 0x6994, 0xB77D, 0x6995, 0xBA5F, 0x6996, 0xE242, 0x6997, 0xE25D,
- 0x6999, 0xE247, 0x699A, 0xE255, 0x699B, 0xBA64, 0x699C, 0xBA5D,
- 0x699E, 0xE25B, 0x69A0, 0xE240, 0x69A1, 0xE25A, 0x69A3, 0xBA6F,
- 0x69A4, 0xE251, 0x69A5, 0xE261, 0x69A6, 0xBA6D, 0x69A7, 0xE249,
- 0x69A8, 0xBA5E, 0x69A9, 0xE24B, 0x69AA, 0xE259, 0x69AB, 0xBA67,
- 0x69AC, 0xE244, 0x69AD, 0xBA6B, 0x69AE, 0xBA61, 0x69AF, 0xE24D,
- 0x69B0, 0xE243, 0x69B1, 0xE1FC, 0x69B3, 0xE257, 0x69B4, 0xBA68,
- 0x69B5, 0xE260, 0x69B6, 0xE1FD, 0x69B7, 0xBA65, 0x69B9, 0xE253,
- 0x69BB, 0xBA66, 0x69BC, 0xE245, 0x69BD, 0xE250, 0x69BE, 0xE24C,
- 0x69BF, 0xE24E, 0x69C1, 0xBA60, 0x69C2, 0xE25F, 0x69C3, 0xBA6E,
- 0x69C4, 0xE24F, 0x69C6, 0xE262, 0x69C9, 0xE1FE, 0x69CA, 0xE254,
- 0x69CB, 0xBA63, 0x69CC, 0xBA6C, 0x69CD, 0xBA6A, 0x69CE, 0xE241,
- 0x69CF, 0xE256, 0x69D0, 0xBA69, 0x69D3, 0xBA62, 0x69D4, 0xE252,
- 0x69D9, 0xE25C, 0x69E2, 0xE5D5, 0x69E4, 0xE5D1, 0x69E5, 0xE5CD,
- 0x69E6, 0xE5E1, 0x69E7, 0xE5DE, 0x69E8, 0xBCCD, 0x69EB, 0xE5E5,
- 0x69EC, 0xE5D4, 0x69ED, 0xBCD8, 0x69EE, 0xE5DB, 0x69F1, 0xE5D0,
- 0x69F2, 0xE5DA, 0x69F3, 0xBCD5, 0x69F4, 0xE5EE, 0x69F6, 0xE5EB,
- 0x69F7, 0xE5DD, 0x69F8, 0xE5CE, 0x69FB, 0xE5E2, 0x69FC, 0xE5E4,
- 0x69FD, 0xBCD1, 0x69FE, 0xE5D8, 0x69FF, 0xE5D3, 0x6A00, 0xE5CA,
- 0x6A01, 0xBCCE, 0x6A02, 0xBCD6, 0x6A04, 0xE5E7, 0x6A05, 0xBCD7,
- 0x6A06, 0xE5CB, 0x6A07, 0xE5ED, 0x6A08, 0xE5E0, 0x6A09, 0xE5E6,
- 0x6A0A, 0xBCD4, 0x6A0D, 0xE5E3, 0x6A0F, 0xE5EA, 0x6A11, 0xBCD9,
- 0x6A13, 0xBCD3, 0x6A14, 0xE5DC, 0x6A15, 0xE5CF, 0x6A16, 0xE5EF,
- 0x6A17, 0xE5CC, 0x6A18, 0xE5E8, 0x6A19, 0xBCD0, 0x6A1B, 0xE5D6,
- 0x6A1D, 0xE5D7, 0x6A1E, 0xBCCF, 0x6A1F, 0xBCCC, 0x6A20, 0xE5D2,
- 0x6A21, 0xBCD2, 0x6A23, 0xBCCB, 0x6A25, 0xE5E9, 0x6A26, 0xE5EC,
- 0x6A27, 0xE5D9, 0x6A28, 0xE9CA, 0x6A32, 0xE9C2, 0x6A34, 0xE9BE,
- 0x6A35, 0xBEF6, 0x6A38, 0xBEEB, 0x6A39, 0xBEF0, 0x6A3A, 0xBEEC,
- 0x6A3B, 0xE9CC, 0x6A3C, 0xE9D7, 0x6A3D, 0xBEEA, 0x6A3E, 0xE9C4,
- 0x6A3F, 0xE9CD, 0x6A40, 0xE5DF, 0x6A41, 0xE9CE, 0x6A44, 0xBEF1,
- 0x6A46, 0xE9DD, 0x6A47, 0xBEF5, 0x6A48, 0xBEF8, 0x6A49, 0xE9C0,
- 0x6A4B, 0xBEF4, 0x6A4D, 0xE9DB, 0x6A4E, 0xE9DC, 0x6A4F, 0xE9D2,
- 0x6A50, 0xE9D1, 0x6A51, 0xE9C9, 0x6A54, 0xE9D3, 0x6A55, 0xE9DA,
- 0x6A56, 0xE9D9, 0x6A58, 0xBEEF, 0x6A59, 0xBEED, 0x6A5A, 0xE9CB,
- 0x6A5B, 0xE9C8, 0x6A5D, 0xE9C5, 0x6A5E, 0xE9D8, 0x6A5F, 0xBEF7,
- 0x6A60, 0xE9D6, 0x6A61, 0xBEF3, 0x6A62, 0xBEF2, 0x6A64, 0xE9D0,
- 0x6A66, 0xE9BF, 0x6A67, 0xE9C1, 0x6A68, 0xE9C3, 0x6A69, 0xE9D5,
- 0x6A6A, 0xE9CF, 0x6A6B, 0xBEEE, 0x6A6D, 0xE9C6, 0x6A6F, 0xE9D4,
- 0x6A76, 0xE9C7, 0x6A7E, 0xC0CF, 0x6A7F, 0xED45, 0x6A80, 0xC0C8,
- 0x6A81, 0xECF5, 0x6A83, 0xED41, 0x6A84, 0xC0CA, 0x6A85, 0xED48,
- 0x6A87, 0xECFC, 0x6A89, 0xECF7, 0x6A8C, 0xED49, 0x6A8D, 0xECF3,
- 0x6A8E, 0xECFE, 0x6A90, 0xC0D1, 0x6A91, 0xED44, 0x6A92, 0xED4A,
- 0x6A93, 0xECFD, 0x6A94, 0xC0C9, 0x6A95, 0xED40, 0x6A96, 0xECF4,
- 0x6A97, 0xC0D0, 0x6A9A, 0xED47, 0x6A9B, 0xECF9, 0x6A9C, 0xC0CC,
- 0x6A9E, 0xECFB, 0x6A9F, 0xECF8, 0x6AA0, 0xC0D2, 0x6AA1, 0xECFA,
- 0x6AA2, 0xC0CB, 0x6AA3, 0xC0CE, 0x6AA4, 0xED43, 0x6AA5, 0xECF6,
- 0x6AA6, 0xED46, 0x6AA8, 0xED42, 0x6AAC, 0xC263, 0x6AAD, 0xEFE7,
- 0x6AAE, 0xC268, 0x6AAF, 0xC269, 0x6AB3, 0xC262, 0x6AB4, 0xEFE6,
- 0x6AB6, 0xEFE3, 0x6AB7, 0xEFE4, 0x6AB8, 0xC266, 0x6AB9, 0xEFDE,
- 0x6ABA, 0xEFE2, 0x6ABB, 0xC265, 0x6ABD, 0xEFDF, 0x6AC2, 0xC267,
- 0x6AC3, 0xC264, 0x6AC5, 0xEFDD, 0x6AC6, 0xEFE1, 0x6AC7, 0xEFE5,
- 0x6ACB, 0xF251, 0x6ACC, 0xF24E, 0x6ACD, 0xF257, 0x6ACF, 0xF256,
- 0x6AD0, 0xF254, 0x6AD1, 0xF24F, 0x6AD3, 0xC372, 0x6AD9, 0xF250,
- 0x6ADA, 0xC371, 0x6ADB, 0xC0CD, 0x6ADC, 0xF253, 0x6ADD, 0xC370,
- 0x6ADE, 0xF258, 0x6ADF, 0xF252, 0x6AE0, 0xF24D, 0x6AE1, 0xEFE0,
- 0x6AE5, 0xC36F, 0x6AE7, 0xF24C, 0x6AE8, 0xF456, 0x6AEA, 0xF455,
- 0x6AEB, 0xF255, 0x6AEC, 0xC468, 0x6AEE, 0xF459, 0x6AEF, 0xF45A,
- 0x6AF0, 0xF454, 0x6AF1, 0xF458, 0x6AF3, 0xF453, 0x6AF8, 0xF5D1,
- 0x6AF9, 0xF457, 0x6AFA, 0xC4E7, 0x6AFB, 0xC4E5, 0x6AFC, 0xF5CF,
- 0x6B00, 0xF5D2, 0x6B02, 0xF5CE, 0x6B03, 0xF5D0, 0x6B04, 0xC4E6,
- 0x6B08, 0xF6E5, 0x6B09, 0xF6E6, 0x6B0A, 0xC576, 0x6B0B, 0xF6E4,
- 0x6B0F, 0xF7E2, 0x6B10, 0xC5CF, 0x6B11, 0xF7E0, 0x6B12, 0xF7E1,
- 0x6B13, 0xF8AC, 0x6B16, 0xC656, 0x6B17, 0xF8F3, 0x6B18, 0xF8F1,
- 0x6B19, 0xF8F2, 0x6B1A, 0xF8F4, 0x6B1E, 0xF9BB, 0x6B20, 0xA4ED,
- 0x6B21, 0xA6B8, 0x6B23, 0xAA59, 0x6B25, 0xCCE9, 0x6B28, 0xCF64,
- 0x6B2C, 0xD1F5, 0x6B2D, 0xD1F7, 0x6B2F, 0xD1F6, 0x6B31, 0xD1F8,
- 0x6B32, 0xB1FD, 0x6B33, 0xD5D7, 0x6B34, 0xD1F9, 0x6B36, 0xD5D6,
- 0x6B37, 0xD5D8, 0x6B38, 0xD5D9, 0x6B39, 0xD9DA, 0x6B3A, 0xB4DB,
- 0x6B3B, 0xD9DB, 0x6B3C, 0xD9DD, 0x6B3D, 0xB4DC, 0x6B3E, 0xB4DA,
- 0x6B3F, 0xD9DC, 0x6B41, 0xDDFA, 0x6B42, 0xDDF8, 0x6B43, 0xDDF7,
- 0x6B45, 0xDDF6, 0x6B46, 0xDDF5, 0x6B47, 0xB7B2, 0x6B48, 0xDDF9,
- 0x6B49, 0xBA70, 0x6B4A, 0xE263, 0x6B4B, 0xE265, 0x6B4C, 0xBA71,
- 0x6B4D, 0xE264, 0x6B4E, 0xBCDB, 0x6B50, 0xBCDA, 0x6B51, 0xE5F0,
- 0x6B54, 0xE9DF, 0x6B55, 0xE9DE, 0x6B56, 0xE9E0, 0x6B59, 0xBEF9,
- 0x6B5B, 0xED4B, 0x6B5C, 0xC0D3, 0x6B5E, 0xEFE8, 0x6B5F, 0xC26A,
- 0x6B60, 0xF259, 0x6B61, 0xC577, 0x6B62, 0xA4EE, 0x6B63, 0xA5BF,
- 0x6B64, 0xA6B9, 0x6B65, 0xA842, 0x6B66, 0xAA5A, 0x6B67, 0xAA5B,
- 0x6B6A, 0xAC6E, 0x6B6D, 0xD1FA, 0x6B72, 0xB7B3, 0x6B76, 0xE6D1,
- 0x6B77, 0xBEFA, 0x6B78, 0xC26B, 0x6B79, 0xA4EF, 0x6B7B, 0xA6BA,
- 0x6B7E, 0xCCEB, 0x6B7F, 0xAA5C, 0x6B80, 0xCCEA, 0x6B82, 0xCF65,
- 0x6B83, 0xAC6F, 0x6B84, 0xCF66, 0x6B86, 0xAC70, 0x6B88, 0xD1FC,
- 0x6B89, 0xAEEE, 0x6B8A, 0xAEED, 0x6B8C, 0xD5DE, 0x6B8D, 0xD5DC,
- 0x6B8E, 0xD5DD, 0x6B8F, 0xD5DB, 0x6B91, 0xD5DA, 0x6B94, 0xD9DE,
- 0x6B95, 0xD9E1, 0x6B96, 0xB4DE, 0x6B97, 0xD9DF, 0x6B98, 0xB4DD,
- 0x6B99, 0xD9E0, 0x6B9B, 0xDDFB, 0x6B9E, 0xE266, 0x6B9F, 0xE267,
- 0x6BA0, 0xE268, 0x6BA2, 0xE5F3, 0x6BA3, 0xE5F2, 0x6BA4, 0xBCDC,
- 0x6BA5, 0xE5F1, 0x6BA6, 0xE5F4, 0x6BA7, 0xE9E1, 0x6BAA, 0xE9E2,
- 0x6BAB, 0xE9E3, 0x6BAD, 0xED4C, 0x6BAE, 0xC0D4, 0x6BAF, 0xC26C,
- 0x6BB0, 0xF25A, 0x6BB2, 0xC4E8, 0x6BB3, 0xC95F, 0x6BB5, 0xAC71,
- 0x6BB6, 0xCF67, 0x6BB7, 0xAEEF, 0x6BBA, 0xB1FE, 0x6BBC, 0xB4DF,
- 0x6BBD, 0xD9E2, 0x6BBF, 0xB7B5, 0x6BC0, 0xB7B4, 0x6BC3, 0xE269,
- 0x6BC4, 0xE26A, 0x6BC5, 0xBCDD, 0x6BC6, 0xBCDE, 0x6BC7, 0xE9E5,
- 0x6BC8, 0xE9E4, 0x6BC9, 0xEFE9, 0x6BCA, 0xF7E3, 0x6BCB, 0xA4F0,
- 0x6BCC, 0xC960, 0x6BCD, 0xA5C0, 0x6BCF, 0xA843, 0x6BD0, 0xCB48,
- 0x6BD2, 0xAC72, 0x6BD3, 0xB7B6, 0x6BD4, 0xA4F1, 0x6BD6, 0xCF68,
- 0x6BD7, 0xAC73, 0x6BD8, 0xCF69, 0x6BDA, 0xC0D5, 0x6BDB, 0xA4F2,
- 0x6BDE, 0xCCEC, 0x6BE0, 0xCF6A, 0x6BE2, 0xD242, 0x6BE3, 0xD241,
- 0x6BE4, 0xD1FE, 0x6BE6, 0xD1FD, 0x6BE7, 0xD243, 0x6BE8, 0xD240,
- 0x6BEB, 0xB240, 0x6BEC, 0xB241, 0x6BEF, 0xB4E0, 0x6BF0, 0xD9E3,
- 0x6BF2, 0xD9E4, 0x6BF3, 0xD9E5, 0x6BF7, 0xDE41, 0x6BF8, 0xDE42,
- 0x6BF9, 0xDE40, 0x6BFB, 0xDDFD, 0x6BFC, 0xDDFE, 0x6BFD, 0xB7B7,
- 0x6BFE, 0xE26B, 0x6BFF, 0xE5F7, 0x6C00, 0xE5F6, 0x6C01, 0xE5F5,
- 0x6C02, 0xE5F8, 0x6C03, 0xE9E7, 0x6C04, 0xE9E6, 0x6C05, 0xBEFB,
- 0x6C06, 0xE9E8, 0x6C08, 0xC0D6, 0x6C09, 0xED4D, 0x6C0B, 0xEFEA,
- 0x6C0C, 0xF25B, 0x6C0D, 0xF6E7, 0x6C0F, 0xA4F3, 0x6C10, 0xA5C2,
- 0x6C11, 0xA5C1, 0x6C13, 0xAA5D, 0x6C14, 0xC961, 0x6C15, 0xC97E,
- 0x6C16, 0xA6BB, 0x6C18, 0xC9F7, 0x6C19, 0xCB49, 0x6C1A, 0xCB4A,
- 0x6C1B, 0xAA5E, 0x6C1D, 0xCCED, 0x6C1F, 0xAC74, 0x6C20, 0xCF6B,
- 0x6C21, 0xCF6C, 0x6C23, 0xAEF0, 0x6C24, 0xAEF4, 0x6C25, 0xD244,
- 0x6C26, 0xAEF3, 0x6C27, 0xAEF1, 0x6C28, 0xAEF2, 0x6C2A, 0xD5DF,
- 0x6C2B, 0xB242, 0x6C2C, 0xB4E3, 0x6C2E, 0xB4E1, 0x6C2F, 0xB4E2,
- 0x6C30, 0xD9E6, 0x6C33, 0xBA72, 0x6C34, 0xA4F4, 0x6C36, 0xC9A1,
- 0x6C38, 0xA5C3, 0x6C3B, 0xC9A4, 0x6C3E, 0xA5C6, 0x6C3F, 0xC9A3,
- 0x6C40, 0xA5C5, 0x6C41, 0xA5C4, 0x6C42, 0xA844, 0x6C43, 0xC9A2,
- 0x6C46, 0xC9F8, 0x6C4A, 0xC9FC, 0x6C4B, 0xC9FE, 0x6C4C, 0xCA40,
- 0x6C4D, 0xA6C5, 0x6C4E, 0xA6C6, 0x6C4F, 0xC9FB, 0x6C50, 0xA6C1,
- 0x6C52, 0xC9F9, 0x6C54, 0xC9FD, 0x6C55, 0xA6C2, 0x6C57, 0xA6BD,
- 0x6C59, 0xA6BE, 0x6C5B, 0xA6C4, 0x6C5C, 0xC9FA, 0x6C5D, 0xA6BC,
- 0x6C5E, 0xA845, 0x6C5F, 0xA6BF, 0x6C60, 0xA6C0, 0x6C61, 0xA6C3,
- 0x6C65, 0xCB5B, 0x6C66, 0xCB59, 0x6C67, 0xCB4C, 0x6C68, 0xA851,
- 0x6C69, 0xCB53, 0x6C6A, 0xA84C, 0x6C6B, 0xCB4D, 0x6C6D, 0xCB55,
- 0x6C6F, 0xCB52, 0x6C70, 0xA84F, 0x6C71, 0xCB51, 0x6C72, 0xA856,
- 0x6C73, 0xCB5A, 0x6C74, 0xA858, 0x6C76, 0xA85A, 0x6C78, 0xCB4B,
- 0x6C7A, 0xA84D, 0x6C7B, 0xCB5C, 0x6C7D, 0xA854, 0x6C7E, 0xA857,
- 0x6C80, 0xCD45, 0x6C81, 0xA847, 0x6C82, 0xA85E, 0x6C83, 0xA855,
- 0x6C84, 0xCB4E, 0x6C85, 0xA84A, 0x6C86, 0xA859, 0x6C87, 0xCB56,
- 0x6C88, 0xA848, 0x6C89, 0xA849, 0x6C8A, 0xCD43, 0x6C8B, 0xCB4F,
- 0x6C8C, 0xA850, 0x6C8D, 0xA85B, 0x6C8E, 0xCB5D, 0x6C8F, 0xCB50,
- 0x6C90, 0xA84E, 0x6C92, 0xA853, 0x6C93, 0xCCEE, 0x6C94, 0xA85C,
- 0x6C95, 0xCB57, 0x6C96, 0xA852, 0x6C98, 0xA85D, 0x6C99, 0xA846,
- 0x6C9A, 0xCB54, 0x6C9B, 0xA84B, 0x6C9C, 0xCB58, 0x6C9D, 0xCD44,
- 0x6CAB, 0xAA6A, 0x6CAC, 0xAA7A, 0x6CAD, 0xCCF5, 0x6CAE, 0xAA71,
- 0x6CB0, 0xCD4B, 0x6CB1, 0xAA62, 0x6CB3, 0xAA65, 0x6CB4, 0xCD42,
- 0x6CB6, 0xCCF3, 0x6CB7, 0xCCF7, 0x6CB8, 0xAA6D, 0x6CB9, 0xAA6F,
- 0x6CBA, 0xCCFA, 0x6CBB, 0xAA76, 0x6CBC, 0xAA68, 0x6CBD, 0xAA66,
- 0x6CBE, 0xAA67, 0x6CBF, 0xAA75, 0x6CC0, 0xCD47, 0x6CC1, 0xAA70,
- 0x6CC2, 0xCCF9, 0x6CC3, 0xCCFB, 0x6CC4, 0xAA6E, 0x6CC5, 0xAA73,
- 0x6CC6, 0xCCFC, 0x6CC7, 0xCD4A, 0x6CC9, 0xAC75, 0x6CCA, 0xAA79,
- 0x6CCC, 0xAA63, 0x6CCD, 0xCD49, 0x6CCF, 0xCD4D, 0x6CD0, 0xCCF8,
- 0x6CD1, 0xCD4F, 0x6CD2, 0xCD40, 0x6CD3, 0xAA6C, 0x6CD4, 0xCCF4,
- 0x6CD5, 0xAA6B, 0x6CD6, 0xAA7D, 0x6CD7, 0xAA72, 0x6CD9, 0xCCF2,
- 0x6CDA, 0xCF75, 0x6CDB, 0xAA78, 0x6CDC, 0xAA7C, 0x6CDD, 0xCD41,
- 0x6CDE, 0xCD46, 0x6CE0, 0xAA7E, 0x6CE1, 0xAA77, 0x6CE2, 0xAA69,
- 0x6CE3, 0xAA5F, 0x6CE5, 0xAA64, 0x6CE7, 0xCCF6, 0x6CE8, 0xAA60,
- 0x6CE9, 0xCD4E, 0x6CEB, 0xCCF0, 0x6CEC, 0xCCEF, 0x6CED, 0xCCFD,
- 0x6CEE, 0xCCF1, 0x6CEF, 0xAA7B, 0x6CF0, 0xAEF5, 0x6CF1, 0xAA74,
- 0x6CF2, 0xCCFE, 0x6CF3, 0xAA61, 0x6CF5, 0xACA6, 0x6CF9, 0xCD4C,
- 0x6D00, 0xCF7C, 0x6D01, 0xCFA1, 0x6D03, 0xCFA4, 0x6D04, 0xCF77,
- 0x6D07, 0xCFA7, 0x6D08, 0xCFAA, 0x6D09, 0xCFAC, 0x6D0A, 0xCF74,
- 0x6D0B, 0xAC76, 0x6D0C, 0xAC7B, 0x6D0D, 0xD249, 0x6D0E, 0xACAD,
- 0x6D0F, 0xCFA5, 0x6D10, 0xCFAD, 0x6D11, 0xCF7B, 0x6D12, 0xCF73,
- 0x6D16, 0xD264, 0x6D17, 0xAC7E, 0x6D18, 0xCFA2, 0x6D19, 0xCF78,
- 0x6D1A, 0xCF7A, 0x6D1B, 0xACA5, 0x6D1D, 0xCF7D, 0x6D1E, 0xAC7D,
- 0x6D1F, 0xCF70, 0x6D20, 0xCFA8, 0x6D22, 0xCFAB, 0x6D25, 0xAC7A,
- 0x6D27, 0xACA8, 0x6D28, 0xCF6D, 0x6D29, 0xACAA, 0x6D2A, 0xAC78,
- 0x6D2B, 0xACAE, 0x6D2C, 0xCFA9, 0x6D2D, 0xCF6F, 0x6D2E, 0xACAB,
- 0x6D2F, 0xD25E, 0x6D30, 0xCD48, 0x6D31, 0xAC7C, 0x6D32, 0xAC77,
- 0x6D33, 0xCF76, 0x6D34, 0xCF6E, 0x6D35, 0xACAC, 0x6D36, 0xACA4,
- 0x6D37, 0xCFA3, 0x6D38, 0xACA9, 0x6D39, 0xACA7, 0x6D3A, 0xCF79,
- 0x6D3B, 0xACA1, 0x6D3C, 0xCF71, 0x6D3D, 0xACA2, 0x6D3E, 0xACA3,
- 0x6D3F, 0xCF72, 0x6D40, 0xCFA6, 0x6D41, 0xAC79, 0x6D42, 0xCF7E,
- 0x6D58, 0xD24C, 0x6D59, 0xAEFD, 0x6D5A, 0xAF43, 0x6D5E, 0xD255,
- 0x6D5F, 0xD25B, 0x6D60, 0xD257, 0x6D61, 0xD24A, 0x6D62, 0xD24D,
- 0x6D63, 0xD246, 0x6D64, 0xD247, 0x6D65, 0xAF4A, 0x6D66, 0xAEFA,
- 0x6D67, 0xD256, 0x6D68, 0xD25F, 0x6D69, 0xAF45, 0x6D6A, 0xAEF6,
- 0x6D6C, 0xAF40, 0x6D6D, 0xD24E, 0x6D6E, 0xAF42, 0x6D6F, 0xD24F,
- 0x6D70, 0xD259, 0x6D74, 0xAF44, 0x6D75, 0xD268, 0x6D76, 0xD248,
- 0x6D77, 0xAEFC, 0x6D78, 0xAEFB, 0x6D79, 0xAF48, 0x6D7A, 0xD245,
- 0x6D7B, 0xD266, 0x6D7C, 0xD25A, 0x6D7D, 0xD267, 0x6D7E, 0xD261,
- 0x6D7F, 0xD253, 0x6D80, 0xD262, 0x6D82, 0xD25C, 0x6D83, 0xD265,
- 0x6D84, 0xD263, 0x6D85, 0xAF49, 0x6D86, 0xD254, 0x6D87, 0xAEF9,
- 0x6D88, 0xAEF8, 0x6D89, 0xAF41, 0x6D8A, 0xAF47, 0x6D8B, 0xD260,
- 0x6D8C, 0xAF46, 0x6D8D, 0xD251, 0x6D8E, 0xB243, 0x6D90, 0xD269,
- 0x6D91, 0xD250, 0x6D92, 0xD24B, 0x6D93, 0xAEFE, 0x6D94, 0xAF4B,
- 0x6D95, 0xAEF7, 0x6D97, 0xD258, 0x6D98, 0xD25D, 0x6DAA, 0xB265,
- 0x6DAB, 0xD5E1, 0x6DAC, 0xD5E5, 0x6DAE, 0xB252, 0x6DAF, 0xB250,
- 0x6DB2, 0xB247, 0x6DB3, 0xD5E3, 0x6DB4, 0xD5E2, 0x6DB5, 0xB25B,
- 0x6DB7, 0xD5E8, 0x6DB8, 0xB255, 0x6DBA, 0xD5FA, 0x6DBB, 0xD647,
- 0x6DBC, 0xB244, 0x6DBD, 0xD5F7, 0x6DBE, 0xD5F0, 0x6DBF, 0xB267,
- 0x6DC0, 0xD5E0, 0x6DC2, 0xD5FC, 0x6DC4, 0xB264, 0x6DC5, 0xB258,
- 0x6DC6, 0xB263, 0x6DC7, 0xB24E, 0x6DC8, 0xD5EC, 0x6DC9, 0xD5FE,
- 0x6DCA, 0xD5F6, 0x6DCB, 0xB24F, 0x6DCC, 0xB249, 0x6DCD, 0xD645,
- 0x6DCF, 0xD5FD, 0x6DD0, 0xD640, 0x6DD1, 0xB251, 0x6DD2, 0xB259,
- 0x6DD3, 0xD642, 0x6DD4, 0xD5EA, 0x6DD5, 0xD5FB, 0x6DD6, 0xD5EF,
- 0x6DD7, 0xD644, 0x6DD8, 0xB25E, 0x6DD9, 0xB246, 0x6DDA, 0xB25C,
- 0x6DDB, 0xD5F4, 0x6DDC, 0xD5F2, 0x6DDD, 0xD5F3, 0x6DDE, 0xB253,
- 0x6DDF, 0xD5EE, 0x6DE0, 0xD5ED, 0x6DE1, 0xB248, 0x6DE2, 0xD5E7,
- 0x6DE3, 0xD646, 0x6DE4, 0xB24A, 0x6DE5, 0xD5F1, 0x6DE6, 0xB268,
- 0x6DE8, 0xB262, 0x6DE9, 0xD5E6, 0x6DEA, 0xB25F, 0x6DEB, 0xB25D,
- 0x6DEC, 0xB266, 0x6DED, 0xD5F8, 0x6DEE, 0xB261, 0x6DEF, 0xD252,
- 0x6DF0, 0xD5F9, 0x6DF1, 0xB260, 0x6DF2, 0xD641, 0x6DF3, 0xB245,
- 0x6DF4, 0xD5F5, 0x6DF5, 0xB257, 0x6DF6, 0xD5E9, 0x6DF7, 0xB256,
- 0x6DF9, 0xB254, 0x6DFA, 0xB24C, 0x6DFB, 0xB24B, 0x6DFC, 0xD9E7,
- 0x6DFD, 0xD643, 0x6E00, 0xD5EB, 0x6E03, 0xD9FC, 0x6E05, 0xB24D,
- 0x6E19, 0xB541, 0x6E1A, 0xB25A, 0x6E1B, 0xB4EE, 0x6E1C, 0xD9F6,
- 0x6E1D, 0xB4FC, 0x6E1F, 0xD9EA, 0x6E20, 0xB4EB, 0x6E21, 0xB4E7,
- 0x6E22, 0xDA49, 0x6E23, 0xB4ED, 0x6E24, 0xB4F1, 0x6E25, 0xB4EC,
- 0x6E26, 0xB4F5, 0x6E27, 0xDA4D, 0x6E28, 0xDA44, 0x6E2B, 0xD9F1,
- 0x6E2C, 0xB4FA, 0x6E2D, 0xB4F4, 0x6E2E, 0xD9FD, 0x6E2F, 0xB4E4,
- 0x6E30, 0xDA4A, 0x6E31, 0xDA43, 0x6E32, 0xB4E8, 0x6E33, 0xD9F7,
- 0x6E34, 0xB4F7, 0x6E35, 0xDA55, 0x6E36, 0xDA56, 0x6E38, 0xB4E5,
- 0x6E39, 0xDA48, 0x6E3A, 0xB4F9, 0x6E3B, 0xD9FB, 0x6E3C, 0xD9ED,
- 0x6E3D, 0xD9EE, 0x6E3E, 0xB4FD, 0x6E3F, 0xD9F2, 0x6E40, 0xD9F9,
- 0x6E41, 0xD9F3, 0x6E43, 0xB4FB, 0x6E44, 0xB544, 0x6E45, 0xD9EF,
- 0x6E46, 0xD9E8, 0x6E47, 0xD9E9, 0x6E49, 0xD9EB, 0x6E4A, 0xB4EA,
- 0x6E4B, 0xD9F8, 0x6E4D, 0xB4F8, 0x6E4E, 0xB542, 0x6E51, 0xD9FA,
- 0x6E52, 0xDA53, 0x6E53, 0xDA4B, 0x6E54, 0xB4E6, 0x6E55, 0xDA51,
- 0x6E56, 0xB4F2, 0x6E58, 0xB4F0, 0x6E5A, 0xDA57, 0x6E5B, 0xB4EF,
- 0x6E5C, 0xDA41, 0x6E5D, 0xD9F4, 0x6E5E, 0xD9FE, 0x6E5F, 0xB547,
- 0x6E60, 0xDA45, 0x6E61, 0xDA42, 0x6E62, 0xD9F0, 0x6E63, 0xB543,
- 0x6E64, 0xDA4F, 0x6E65, 0xDA4C, 0x6E66, 0xDA54, 0x6E67, 0xB4E9,
- 0x6E68, 0xDA40, 0x6E69, 0xB546, 0x6E6B, 0xDA47, 0x6E6E, 0xB4F3,
- 0x6E6F, 0xB4F6, 0x6E71, 0xDA46, 0x6E72, 0xB545, 0x6E73, 0xD9F5,
- 0x6E74, 0xD5E4, 0x6E77, 0xDA50, 0x6E78, 0xDA4E, 0x6E79, 0xDA52,
- 0x6E88, 0xD9EC, 0x6E89, 0xB540, 0x6E8D, 0xDE61, 0x6E8E, 0xDE60,
- 0x6E8F, 0xDE46, 0x6E90, 0xB7BD, 0x6E92, 0xDE5F, 0x6E93, 0xDE49,
- 0x6E94, 0xDE4A, 0x6E96, 0xB7C7, 0x6E97, 0xDE68, 0x6E98, 0xB7C2,
- 0x6E99, 0xDE5E, 0x6E9B, 0xDE43, 0x6E9C, 0xB7C8, 0x6E9D, 0xB7BE,
- 0x6E9E, 0xDE52, 0x6E9F, 0xDE48, 0x6EA0, 0xDE4B, 0x6EA1, 0xDE63,
- 0x6EA2, 0xB7B8, 0x6EA3, 0xDE6A, 0x6EA4, 0xDE62, 0x6EA5, 0xB7C1,
- 0x6EA6, 0xDE57, 0x6EA7, 0xB7CC, 0x6EAA, 0xB7CB, 0x6EAB, 0xB7C5,
- 0x6EAE, 0xDE69, 0x6EAF, 0xB7B9, 0x6EB0, 0xDE55, 0x6EB1, 0xDE4C,
- 0x6EB2, 0xDE59, 0x6EB3, 0xDE65, 0x6EB4, 0xB7CD, 0x6EB6, 0xB7BB,
- 0x6EB7, 0xDE54, 0x6EB9, 0xDE4D, 0x6EBA, 0xB7C4, 0x6EBC, 0xB7C3,
- 0x6EBD, 0xDE50, 0x6EBE, 0xDE5A, 0x6EBF, 0xDE64, 0x6EC0, 0xDE47,
- 0x6EC1, 0xDE51, 0x6EC2, 0xB7BC, 0x6EC3, 0xDE5B, 0x6EC4, 0xB7C9,
- 0x6EC5, 0xB7C0, 0x6EC6, 0xDE4E, 0x6EC7, 0xB7BF, 0x6EC8, 0xDE45,
- 0x6EC9, 0xDE53, 0x6ECA, 0xDE67, 0x6ECB, 0xB4FE, 0x6ECC, 0xBAB0,
- 0x6ECD, 0xDE56, 0x6ECE, 0xE26C, 0x6ECF, 0xDE58, 0x6ED0, 0xDE66,
- 0x6ED1, 0xB7C6, 0x6ED2, 0xDE4F, 0x6ED3, 0xB7BA, 0x6ED4, 0xB7CA,
- 0x6ED5, 0xBCF0, 0x6ED6, 0xDE44, 0x6ED8, 0xDE5D, 0x6EDC, 0xDE5C,
- 0x6EEB, 0xE2AA, 0x6EEC, 0xBAAD, 0x6EED, 0xE27D, 0x6EEE, 0xE2A4,
- 0x6EEF, 0xBAA2, 0x6EF1, 0xE26E, 0x6EF2, 0xBAAF, 0x6EF4, 0xBA77,
- 0x6EF5, 0xE26D, 0x6EF6, 0xE2B0, 0x6EF7, 0xBAB1, 0x6EF8, 0xE271,
- 0x6EF9, 0xE2A3, 0x6EFB, 0xE273, 0x6EFC, 0xE2B3, 0x6EFD, 0xE2AF,
- 0x6EFE, 0xBA75, 0x6EFF, 0xBAA1, 0x6F00, 0xE653, 0x6F01, 0xBAAE,
- 0x6F02, 0xBA7D, 0x6F03, 0xE26F, 0x6F05, 0xE2AE, 0x6F06, 0xBAA3,
- 0x6F07, 0xE2AB, 0x6F08, 0xE2B8, 0x6F09, 0xE275, 0x6F0A, 0xE27E,
- 0x6F0D, 0xE2B6, 0x6F0E, 0xE2AC, 0x6F0F, 0xBA7C, 0x6F12, 0xE27C,
- 0x6F13, 0xBA76, 0x6F14, 0xBA74, 0x6F15, 0xBAA8, 0x6F18, 0xE27A,
- 0x6F19, 0xE277, 0x6F1A, 0xE278, 0x6F1C, 0xE2B2, 0x6F1E, 0xE2B7,
- 0x6F1F, 0xE2B5, 0x6F20, 0xBA7A, 0x6F21, 0xE2B9, 0x6F22, 0xBA7E,
- 0x6F23, 0xBAA7, 0x6F25, 0xE270, 0x6F26, 0xE5FA, 0x6F27, 0xE279,
- 0x6F29, 0xBA78, 0x6F2A, 0xBAAC, 0x6F2B, 0xBAA9, 0x6F2C, 0xBA7B,
- 0x6F2D, 0xE2A5, 0x6F2E, 0xE274, 0x6F2F, 0xBAAA, 0x6F30, 0xE2A7,
- 0x6F31, 0xBAA4, 0x6F32, 0xBAA6, 0x6F33, 0xBA73, 0x6F35, 0xE2A9,
- 0x6F36, 0xE2A1, 0x6F37, 0xE272, 0x6F38, 0xBAA5, 0x6F39, 0xE2B1,
- 0x6F3A, 0xE2B4, 0x6F3B, 0xE27B, 0x6F3C, 0xE2A8, 0x6F3E, 0xBA79,
- 0x6F3F, 0xBCDF, 0x6F40, 0xE2A6, 0x6F41, 0xE5F9, 0x6F43, 0xE2AD,
- 0x6F4E, 0xE276, 0x6F4F, 0xE644, 0x6F50, 0xE64E, 0x6F51, 0xBCE2,
- 0x6F52, 0xE64D, 0x6F53, 0xE659, 0x6F54, 0xBCE4, 0x6F55, 0xE64B,
- 0x6F57, 0xE64F, 0x6F58, 0xBCEF, 0x6F5A, 0xE646, 0x6F5B, 0xBCE7,
- 0x6F5D, 0xE652, 0x6F5E, 0xE9F0, 0x6F5F, 0xBCF3, 0x6F60, 0xBCF2,
- 0x6F61, 0xE654, 0x6F62, 0xE643, 0x6F63, 0xE65E, 0x6F64, 0xBCED,
- 0x6F66, 0xBCE3, 0x6F67, 0xE657, 0x6F69, 0xE65B, 0x6F6A, 0xE660,
- 0x6F6B, 0xE655, 0x6F6C, 0xE649, 0x6F6D, 0xBCE6, 0x6F6E, 0xBCE9,
- 0x6F6F, 0xBCF1, 0x6F70, 0xBCEC, 0x6F72, 0xE64C, 0x6F73, 0xE2A2,
- 0x6F76, 0xE648, 0x6F77, 0xE65F, 0x6F78, 0xBCE8, 0x6F7A, 0xBCEB,
- 0x6F7B, 0xE661, 0x6F7C, 0xBCE0, 0x6F7D, 0xE656, 0x6F7E, 0xE5FB,
- 0x6F7F, 0xE65C, 0x6F80, 0xC0DF, 0x6F82, 0xE64A, 0x6F84, 0xBCE1,
- 0x6F85, 0xE645, 0x6F86, 0xBCE5, 0x6F87, 0xE5FC, 0x6F88, 0xBAAB,
- 0x6F89, 0xE641, 0x6F8B, 0xE65A, 0x6F8C, 0xE642, 0x6F8D, 0xE640,
- 0x6F8E, 0xBCEA, 0x6F90, 0xE658, 0x6F92, 0xE5FE, 0x6F93, 0xE651,
- 0x6F94, 0xE650, 0x6F95, 0xE65D, 0x6F96, 0xE647, 0x6F97, 0xBCEE,
- 0x6F9E, 0xE9F3, 0x6FA0, 0xBF49, 0x6FA1, 0xBEFE, 0x6FA2, 0xEA40,
- 0x6FA3, 0xE9EB, 0x6FA4, 0xBF41, 0x6FA5, 0xE9F7, 0x6FA6, 0xBF48,
- 0x6FA7, 0xBF43, 0x6FA8, 0xE9F5, 0x6FA9, 0xED4F, 0x6FAA, 0xE9FB,
- 0x6FAB, 0xEA42, 0x6FAC, 0xE9FA, 0x6FAD, 0xE9E9, 0x6FAE, 0xE9F8,
- 0x6FAF, 0xEA44, 0x6FB0, 0xEA46, 0x6FB1, 0xBEFD, 0x6FB2, 0xEA45,
- 0x6FB3, 0xBF44, 0x6FB4, 0xBF4A, 0x6FB6, 0xBF47, 0x6FB8, 0xE9FE,
- 0x6FB9, 0xBF46, 0x6FBA, 0xE9F9, 0x6FBC, 0xE9ED, 0x6FBD, 0xE9F2,
- 0x6FBF, 0xE9FD, 0x6FC0, 0xBF45, 0x6FC1, 0xBF42, 0x6FC2, 0xBEFC,
- 0x6FC3, 0xBF40, 0x6FC4, 0xE9F1, 0x6FC6, 0xE5FD, 0x6FC7, 0xE9EC,
- 0x6FC8, 0xE9EF, 0x6FC9, 0xEA41, 0x6FCA, 0xE9F4, 0x6FCB, 0xE9EA,
- 0x6FCC, 0xED4E, 0x6FCD, 0xEA43, 0x6FCE, 0xE9EE, 0x6FCF, 0xE9FC,
- 0x6FD4, 0xED51, 0x6FD5, 0xC0E3, 0x6FD8, 0xC0D7, 0x6FDB, 0xC0DB,
- 0x6FDC, 0xED53, 0x6FDD, 0xED59, 0x6FDE, 0xED57, 0x6FDF, 0xC0D9,
- 0x6FE0, 0xC0DA, 0x6FE1, 0xC0E1, 0x6FE2, 0xED5A, 0x6FE3, 0xED52,
- 0x6FE4, 0xC0DC, 0x6FE6, 0xED56, 0x6FE7, 0xED55, 0x6FE8, 0xED5B,
- 0x6FE9, 0xC0E2, 0x6FEB, 0xC0DD, 0x6FEC, 0xC0E0, 0x6FED, 0xED54,
- 0x6FEE, 0xC0E4, 0x6FEF, 0xC0DE, 0x6FF0, 0xC0E5, 0x6FF1, 0xC0D8,
- 0x6FF2, 0xED58, 0x6FF4, 0xED50, 0x6FF7, 0xEFF7, 0x6FFA, 0xC271,
- 0x6FFB, 0xEFF4, 0x6FFC, 0xEFF6, 0x6FFE, 0xC26F, 0x6FFF, 0xEFF2,
- 0x7000, 0xEFF3, 0x7001, 0xEFEE, 0x7004, 0xE9F6, 0x7005, 0xEFEF,
- 0x7006, 0xC270, 0x7007, 0xEFEB, 0x7009, 0xC26D, 0x700A, 0xEFF8,
- 0x700B, 0xC26E, 0x700C, 0xEFEC, 0x700D, 0xEFED, 0x700E, 0xEFF1,
- 0x700F, 0xC273, 0x7011, 0xC272, 0x7014, 0xEFF0, 0x7015, 0xC378,
- 0x7016, 0xF25F, 0x7017, 0xF265, 0x7018, 0xC379, 0x7019, 0xF25C,
- 0x701A, 0xC376, 0x701B, 0xC373, 0x701C, 0xF267, 0x701D, 0xC377,
- 0x701F, 0xC374, 0x7020, 0xF25E, 0x7021, 0xF261, 0x7022, 0xF262,
- 0x7023, 0xF263, 0x7024, 0xF266, 0x7026, 0xEFF5, 0x7027, 0xF25D,
- 0x7028, 0xC375, 0x7029, 0xF264, 0x702A, 0xF268, 0x702B, 0xF260,
- 0x702F, 0xF45D, 0x7030, 0xC46A, 0x7031, 0xF460, 0x7032, 0xC46B,
- 0x7033, 0xF468, 0x7034, 0xF45F, 0x7035, 0xF45C, 0x7037, 0xF45E,
- 0x7038, 0xF462, 0x7039, 0xF465, 0x703A, 0xF464, 0x703B, 0xF467,
- 0x703C, 0xF45B, 0x703E, 0xC469, 0x703F, 0xF463, 0x7040, 0xF466,
- 0x7041, 0xF469, 0x7042, 0xF461, 0x7043, 0xF5D3, 0x7044, 0xF5D4,
- 0x7045, 0xF5D8, 0x7046, 0xF5D9, 0x7048, 0xF5D6, 0x7049, 0xF5D7,
- 0x704A, 0xF5D5, 0x704C, 0xC4E9, 0x7051, 0xC578, 0x7052, 0xF6EB,
- 0x7055, 0xF6E8, 0x7056, 0xF6E9, 0x7057, 0xF6EA, 0x7058, 0xC579,
- 0x705A, 0xF7E5, 0x705B, 0xF7E4, 0x705D, 0xF8AF, 0x705E, 0xC5F4,
- 0x705F, 0xF8AD, 0x7060, 0xF8B0, 0x7061, 0xF8AE, 0x7062, 0xF8F5,
- 0x7063, 0xC657, 0x7064, 0xC665, 0x7065, 0xF9A3, 0x7066, 0xF96C,
- 0x7068, 0xF9A2, 0x7069, 0xF9D0, 0x706A, 0xF9D1, 0x706B, 0xA4F5,
- 0x7070, 0xA6C7, 0x7071, 0xCA41, 0x7074, 0xCB5E, 0x7076, 0xA85F,
- 0x7078, 0xA862, 0x707A, 0xCB5F, 0x707C, 0xA860, 0x707D, 0xA861,
- 0x7082, 0xCD58, 0x7083, 0xCD5A, 0x7084, 0xCD55, 0x7085, 0xCD52,
- 0x7086, 0xCD54, 0x708A, 0xAAA4, 0x708E, 0xAAA2, 0x7091, 0xCD56,
- 0x7092, 0xAAA3, 0x7093, 0xCD53, 0x7094, 0xCD50, 0x7095, 0xAAA1,
- 0x7096, 0xCD57, 0x7098, 0xCD51, 0x7099, 0xAAA5, 0x709A, 0xCD59,
- 0x709F, 0xCFAF, 0x70A1, 0xCFB3, 0x70A4, 0xACB7, 0x70A9, 0xCFB6,
- 0x70AB, 0xACAF, 0x70AC, 0xACB2, 0x70AD, 0xACB4, 0x70AE, 0xACB6,
- 0x70AF, 0xACB3, 0x70B0, 0xCFB2, 0x70B1, 0xCFB1, 0x70B3, 0xACB1,
- 0x70B4, 0xCFB4, 0x70B5, 0xCFB5, 0x70B7, 0xCFAE, 0x70B8, 0xACB5,
- 0x70BA, 0xACB0, 0x70BE, 0xCFB0, 0x70C5, 0xD277, 0x70C6, 0xD278,
- 0x70C7, 0xD279, 0x70C8, 0xAF50, 0x70CA, 0xAF4C, 0x70CB, 0xD26E,
- 0x70CD, 0xD276, 0x70CE, 0xD27B, 0x70CF, 0xAF51, 0x70D1, 0xD26C,
- 0x70D2, 0xD272, 0x70D3, 0xD26B, 0x70D4, 0xD275, 0x70D7, 0xD271,
- 0x70D8, 0xAF4D, 0x70D9, 0xAF4F, 0x70DA, 0xD27A, 0x70DC, 0xD26A,
- 0x70DD, 0xD26D, 0x70DE, 0xD273, 0x70E0, 0xD274, 0x70E1, 0xD27C,
- 0x70E2, 0xD270, 0x70E4, 0xAF4E, 0x70EF, 0xB26D, 0x70F0, 0xD64E,
- 0x70F3, 0xD650, 0x70F4, 0xD64C, 0x70F6, 0xD658, 0x70F7, 0xD64A,
- 0x70F8, 0xD657, 0x70F9, 0xB269, 0x70FA, 0xD648, 0x70FB, 0xDA5B,
- 0x70FC, 0xD652, 0x70FD, 0xB26C, 0x70FF, 0xD653, 0x7100, 0xD656,
- 0x7102, 0xD65A, 0x7104, 0xD64F, 0x7106, 0xD654, 0x7109, 0xB26A,
- 0x710A, 0xB26B, 0x710B, 0xD659, 0x710C, 0xD64D, 0x710D, 0xD649,
- 0x710E, 0xD65B, 0x7110, 0xD651, 0x7113, 0xD655, 0x7117, 0xD64B,
- 0x7119, 0xB548, 0x711A, 0xB549, 0x711B, 0xDA65, 0x711C, 0xB54F,
- 0x711E, 0xDA59, 0x711F, 0xDA62, 0x7120, 0xDA58, 0x7121, 0xB54C,
- 0x7122, 0xDA60, 0x7123, 0xDA5E, 0x7125, 0xDA5F, 0x7126, 0xB54A,
- 0x7128, 0xDA63, 0x712E, 0xDA5C, 0x712F, 0xDA5A, 0x7130, 0xB54B,
- 0x7131, 0xDA5D, 0x7132, 0xDA61, 0x7136, 0xB54D, 0x713A, 0xDA64,
- 0x7141, 0xDE70, 0x7142, 0xDE77, 0x7143, 0xDE79, 0x7144, 0xDEA1,
- 0x7146, 0xB7DA, 0x7147, 0xDE6B, 0x7149, 0xB7D2, 0x714B, 0xDE7A,
- 0x714C, 0xB7D7, 0x714D, 0xDEA2, 0x714E, 0xB7CE, 0x7150, 0xDE7D,
- 0x7152, 0xDE6D, 0x7153, 0xDE7E, 0x7154, 0xDE6C, 0x7156, 0xB7DC,
- 0x7158, 0xDE78, 0x7159, 0xB7CF, 0x715A, 0xDEA3, 0x715C, 0xB7D4,
- 0x715D, 0xDE71, 0x715E, 0xB7D9, 0x715F, 0xDE7C, 0x7160, 0xDE6F,
- 0x7161, 0xDE76, 0x7162, 0xDE72, 0x7163, 0xDE6E, 0x7164, 0xB7D1,
- 0x7165, 0xB7D8, 0x7166, 0xB7D6, 0x7167, 0xB7D3, 0x7168, 0xB7DB,
- 0x7169, 0xB7D0, 0x716A, 0xDE75, 0x716C, 0xB7D5, 0x716E, 0xB54E,
- 0x7170, 0xDE7B, 0x7172, 0xDE73, 0x7178, 0xDE74, 0x717B, 0xE2C1,
- 0x717D, 0xBAB4, 0x7180, 0xE2BD, 0x7181, 0xE2C3, 0x7182, 0xE2BF,
- 0x7184, 0xBAB6, 0x7185, 0xE2BE, 0x7186, 0xE2C2, 0x7187, 0xE2BA,
- 0x7189, 0xE2BC, 0x718A, 0xBAB5, 0x718F, 0xE2C0, 0x7190, 0xE2BB,
- 0x7192, 0xBAB7, 0x7194, 0xBAB2, 0x7197, 0xE2C4, 0x7199, 0xBAB3,
- 0x719A, 0xE667, 0x719B, 0xE664, 0x719C, 0xE670, 0x719D, 0xE66A,
- 0x719E, 0xE66C, 0x719F, 0xBCF4, 0x71A0, 0xE666, 0x71A1, 0xE66E,
- 0x71A4, 0xE66D, 0x71A5, 0xE66B, 0x71A7, 0xE671, 0x71A8, 0xBCF7,
- 0x71A9, 0xE668, 0x71AA, 0xE66F, 0x71AC, 0xBCF5, 0x71AF, 0xE663,
- 0x71B0, 0xE665, 0x71B1, 0xBCF6, 0x71B2, 0xE662, 0x71B3, 0xE672,
- 0x71B5, 0xE669, 0x71B8, 0xEA4A, 0x71B9, 0xBF51, 0x71BC, 0xEA55,
- 0x71BD, 0xEA53, 0x71BE, 0xBF4B, 0x71BF, 0xEA49, 0x71C0, 0xEA4C,
- 0x71C1, 0xEA4D, 0x71C2, 0xEA48, 0x71C3, 0xBF55, 0x71C4, 0xBF56,
- 0x71C5, 0xEA47, 0x71C6, 0xEA56, 0x71C7, 0xEA51, 0x71C8, 0xBF4F,
- 0x71C9, 0xBF4C, 0x71CA, 0xEA50, 0x71CB, 0xEA4E, 0x71CE, 0xBF52,
- 0x71CF, 0xEA52, 0x71D0, 0xBF4D, 0x71D2, 0xBF4E, 0x71D4, 0xEA4F,
- 0x71D5, 0xBF50, 0x71D6, 0xEA4B, 0x71D8, 0xEA54, 0x71D9, 0xBF53,
- 0x71DA, 0xEA57, 0x71DB, 0xEA58, 0x71DC, 0xBF54, 0x71DF, 0xC0E7,
- 0x71E0, 0xC0EE, 0x71E1, 0xED5C, 0x71E2, 0xED62, 0x71E4, 0xED60,
- 0x71E5, 0xC0EA, 0x71E6, 0xC0E9, 0x71E7, 0xC0E6, 0x71E8, 0xED5E,
- 0x71EC, 0xC0EC, 0x71ED, 0xC0EB, 0x71EE, 0xC0E8, 0x71F0, 0xED61,
- 0x71F1, 0xED5D, 0x71F2, 0xED5F, 0x71F4, 0xC0ED, 0x71F8, 0xC277,
- 0x71F9, 0xEFFB, 0x71FB, 0xC274, 0x71FC, 0xC275, 0x71FD, 0xEFFD,
- 0x71FE, 0xC276, 0x71FF, 0xEFFA, 0x7201, 0xEFF9, 0x7202, 0xF26C,
- 0x7203, 0xEFFC, 0x7205, 0xF26D, 0x7206, 0xC37A, 0x7207, 0xF26B,
- 0x720A, 0xF26A, 0x720C, 0xF269, 0x720D, 0xC37B, 0x7210, 0xC46C,
- 0x7213, 0xF46A, 0x7214, 0xF46B, 0x7219, 0xF5DC, 0x721A, 0xF5DB,
- 0x721B, 0xC4EA, 0x721D, 0xF5DA, 0x721E, 0xF6EC, 0x721F, 0xF6ED,
- 0x7222, 0xF7E6, 0x7223, 0xF8B1, 0x7226, 0xF8F6, 0x7227, 0xF9BC,
- 0x7228, 0xC679, 0x7229, 0xF9C6, 0x722A, 0xA4F6, 0x722C, 0xAAA6,
- 0x722D, 0xAAA7, 0x7230, 0xACB8, 0x7235, 0xC0EF, 0x7236, 0xA4F7,
- 0x7238, 0xAAA8, 0x7239, 0xAF52, 0x723A, 0xB7DD, 0x723B, 0xA4F8,
- 0x723D, 0xB26E, 0x723E, 0xBAB8, 0x723F, 0xC962, 0x7241, 0xCFB7,
- 0x7242, 0xD27D, 0x7244, 0xE2C5, 0x7246, 0xC0F0, 0x7247, 0xA4F9,
- 0x7248, 0xAAA9, 0x7249, 0xCFB8, 0x724A, 0xCFB9, 0x724B, 0xDA66,
- 0x724C, 0xB550, 0x724F, 0xDEA4, 0x7252, 0xB7DE, 0x7253, 0xE2C6,
- 0x7256, 0xBCF8, 0x7258, 0xC37C, 0x7259, 0xA4FA, 0x725A, 0xDA67,
- 0x725B, 0xA4FB, 0x725D, 0xA6C9, 0x725E, 0xCA42, 0x725F, 0xA6C8,
- 0x7260, 0xA865, 0x7261, 0xA864, 0x7262, 0xA863, 0x7263, 0xCB60,
- 0x7267, 0xAAAA, 0x7269, 0xAAAB, 0x726A, 0xCD5B, 0x726C, 0xCFBA,
- 0x726E, 0xCFBD, 0x726F, 0xACBA, 0x7270, 0xCFBB, 0x7272, 0xACB9,
- 0x7273, 0xCFBC, 0x7274, 0xACBB, 0x7276, 0xD2A2, 0x7277, 0xD2A1,
- 0x7278, 0xD27E, 0x7279, 0xAF53, 0x727B, 0xD65D, 0x727C, 0xD65E,
- 0x727D, 0xB26F, 0x727E, 0xD65C, 0x727F, 0xD65F, 0x7280, 0xB552,
- 0x7281, 0xB270, 0x7284, 0xB551, 0x7285, 0xDA6B, 0x7286, 0xDA6A,
- 0x7288, 0xDA68, 0x7289, 0xDA69, 0x728B, 0xDA6C, 0x728C, 0xDEA6,
- 0x728D, 0xDEA5, 0x728E, 0xDEA9, 0x7290, 0xDEA8, 0x7291, 0xDEA7,
- 0x7292, 0xBAB9, 0x7293, 0xE2C9, 0x7295, 0xE2C8, 0x7296, 0xBABA,
- 0x7297, 0xE2C7, 0x7298, 0xE673, 0x729A, 0xE674, 0x729B, 0xBCF9,
- 0x729D, 0xEA59, 0x729E, 0xEA5A, 0x72A1, 0xF272, 0x72A2, 0xC37D,
- 0x72A3, 0xF271, 0x72A4, 0xF270, 0x72A5, 0xF26E, 0x72A6, 0xF26F,
- 0x72A7, 0xC4EB, 0x72A8, 0xF46C, 0x72A9, 0xF6EE, 0x72AA, 0xF8F7,
- 0x72AC, 0xA4FC, 0x72AE, 0xC9A5, 0x72AF, 0xA5C7, 0x72B0, 0xC9A6,
- 0x72B4, 0xCA43, 0x72B5, 0xCA44, 0x72BA, 0xCB66, 0x72BD, 0xCB62,
- 0x72BF, 0xCB61, 0x72C0, 0xAAAC, 0x72C1, 0xCB65, 0x72C2, 0xA867,
- 0x72C3, 0xCB63, 0x72C4, 0xA866, 0x72C5, 0xCB67, 0x72C6, 0xCB64,
- 0x72C9, 0xCD5F, 0x72CA, 0xCFBE, 0x72CB, 0xCD5D, 0x72CC, 0xCD64,
- 0x72CE, 0xAAAD, 0x72D0, 0xAAB0, 0x72D1, 0xCD65, 0x72D2, 0xCD61,
- 0x72D4, 0xCD62, 0x72D6, 0xCD5C, 0x72D7, 0xAAAF, 0x72D8, 0xCD5E,
- 0x72D9, 0xAAAE, 0x72DA, 0xCD63, 0x72DC, 0xCD60, 0x72DF, 0xCFC2,
- 0x72E0, 0xACBD, 0x72E1, 0xACBE, 0x72E3, 0xCFC5, 0x72E4, 0xCFBF,
- 0x72E6, 0xCFC4, 0x72E8, 0xCFC0, 0x72E9, 0xACBC, 0x72EA, 0xCFC3,
- 0x72EB, 0xCFC1, 0x72F3, 0xD2A8, 0x72F4, 0xD2A5, 0x72F6, 0xD2A7,
- 0x72F7, 0xAF58, 0x72F8, 0xAF57, 0x72F9, 0xAF55, 0x72FA, 0xD2A4,
- 0x72FB, 0xD2A9, 0x72FC, 0xAF54, 0x72FD, 0xAF56, 0x72FE, 0xD2A6,
- 0x72FF, 0xD667, 0x7300, 0xD2A3, 0x7301, 0xD2AA, 0x7307, 0xD662,
- 0x7308, 0xD666, 0x730A, 0xD665, 0x730B, 0xDA6E, 0x730C, 0xDA79,
- 0x730F, 0xD668, 0x7311, 0xD663, 0x7312, 0xDA6D, 0x7313, 0xB274,
- 0x7316, 0xB273, 0x7317, 0xD661, 0x7318, 0xD664, 0x7319, 0xB275,
- 0x731B, 0xB272, 0x731C, 0xB271, 0x731D, 0xD660, 0x731E, 0xD669,
- 0x7322, 0xDA70, 0x7323, 0xDA77, 0x7325, 0xB554, 0x7326, 0xDA76,
- 0x7327, 0xDA73, 0x7329, 0xB556, 0x732D, 0xDA75, 0x7330, 0xDA6F,
- 0x7331, 0xDA71, 0x7332, 0xDA74, 0x7333, 0xDA72, 0x7334, 0xB555,
- 0x7335, 0xDA78, 0x7336, 0xB553, 0x7337, 0xB7DF, 0x733A, 0xDEAD,
- 0x733B, 0xDEAC, 0x733C, 0xDEAA, 0x733E, 0xB7E2, 0x733F, 0xB7E1,
- 0x7340, 0xDEAE, 0x7342, 0xDEAB, 0x7343, 0xE2CA, 0x7344, 0xBABB,
- 0x7345, 0xB7E0, 0x7349, 0xDEB0, 0x734A, 0xDEAF, 0x734C, 0xE2CD,
- 0x734D, 0xE2CB, 0x734E, 0xBCFA, 0x7350, 0xBABC, 0x7351, 0xE2CC,
- 0x7352, 0xE676, 0x7357, 0xBCFB, 0x7358, 0xE675, 0x7359, 0xE67E,
- 0x735A, 0xE67D, 0x735B, 0xE67B, 0x735D, 0xE67A, 0x735E, 0xE677,
- 0x735F, 0xE678, 0x7360, 0xE679, 0x7361, 0xE67C, 0x7362, 0xE6A1,
- 0x7365, 0xEA5F, 0x7366, 0xEA5C, 0x7367, 0xEA5D, 0x7368, 0xBF57,
- 0x7369, 0xEA5B, 0x736A, 0xEA61, 0x736B, 0xEA60, 0x736C, 0xEA5E,
- 0x736E, 0xED64, 0x736F, 0xED65, 0x7370, 0xC0F1, 0x7372, 0xC0F2,
- 0x7373, 0xED63, 0x7375, 0xC279, 0x7376, 0xEFFE, 0x7377, 0xC278,
- 0x7378, 0xC37E, 0x737A, 0xC3A1, 0x737B, 0xC46D, 0x737C, 0xF46E,
- 0x737D, 0xF46D, 0x737E, 0xF5DD, 0x737F, 0xF6EF, 0x7380, 0xC57A,
- 0x7381, 0xF7E8, 0x7382, 0xF7E7, 0x7383, 0xF7E9, 0x7384, 0xA5C8,
- 0x7385, 0xCFC6, 0x7386, 0xAF59, 0x7387, 0xB276, 0x7388, 0xD66A,
- 0x7389, 0xA5C9, 0x738A, 0xC9A7, 0x738B, 0xA4FD, 0x738E, 0xCA45,
- 0x7392, 0xCB6C, 0x7393, 0xCB6A, 0x7394, 0xCB6B, 0x7395, 0xCB68,
- 0x7396, 0xA868, 0x7397, 0xCB69, 0x739D, 0xCD6D, 0x739F, 0xAAB3,
- 0x73A0, 0xCD6B, 0x73A1, 0xCD67, 0x73A2, 0xCD6A, 0x73A4, 0xCD66,
- 0x73A5, 0xAAB5, 0x73A6, 0xCD69, 0x73A8, 0xAAB2, 0x73A9, 0xAAB1,
- 0x73AB, 0xAAB4, 0x73AC, 0xCD6C, 0x73AD, 0xCD68, 0x73B2, 0xACC2,
- 0x73B3, 0xACC5, 0x73B4, 0xCFCE, 0x73B5, 0xCFCD, 0x73B6, 0xCFCC,
- 0x73B7, 0xACBF, 0x73B8, 0xCFD5, 0x73B9, 0xCFCB, 0x73BB, 0xACC1,
- 0x73BC, 0xD2AF, 0x73BE, 0xCFD2, 0x73BF, 0xCFD0, 0x73C0, 0xACC4,
- 0x73C2, 0xCFC8, 0x73C3, 0xCFD3, 0x73C5, 0xCFCA, 0x73C6, 0xCFD4,
- 0x73C7, 0xCFD1, 0x73C8, 0xCFC9, 0x73CA, 0xACC0, 0x73CB, 0xCFD6,
- 0x73CC, 0xCFC7, 0x73CD, 0xACC3, 0x73D2, 0xD2B4, 0x73D3, 0xD2AB,
- 0x73D4, 0xD2B6, 0x73D6, 0xD2AE, 0x73D7, 0xD2B9, 0x73D8, 0xD2BA,
- 0x73D9, 0xD2AC, 0x73DA, 0xD2B8, 0x73DB, 0xD2B5, 0x73DC, 0xD2B3,
- 0x73DD, 0xD2B7, 0x73DE, 0xAF5F, 0x73E0, 0xAF5D, 0x73E3, 0xD2B1,
- 0x73E5, 0xD2AD, 0x73E7, 0xD2B0, 0x73E8, 0xD2BB, 0x73E9, 0xD2B2,
- 0x73EA, 0xAF5E, 0x73EB, 0xCFCF, 0x73ED, 0xAF5A, 0x73EE, 0xAF5C,
- 0x73F4, 0xD678, 0x73F5, 0xD66D, 0x73F6, 0xD66B, 0x73F8, 0xD66C,
- 0x73FA, 0xD673, 0x73FC, 0xD674, 0x73FD, 0xD670, 0x73FE, 0xB27B,
- 0x73FF, 0xD675, 0x7400, 0xD672, 0x7401, 0xD66F, 0x7403, 0xB279,
- 0x7404, 0xD66E, 0x7405, 0xB277, 0x7406, 0xB27A, 0x7407, 0xD671,
- 0x7408, 0xD679, 0x7409, 0xAF5B, 0x740A, 0xB278, 0x740B, 0xD677,
- 0x740C, 0xD676, 0x740D, 0xB27C, 0x7416, 0xDA7E, 0x741A, 0xDAA1,
- 0x741B, 0xB560, 0x741D, 0xDAA7, 0x7420, 0xDAA9, 0x7421, 0xDAA2,
- 0x7422, 0xB55A, 0x7423, 0xDAA6, 0x7424, 0xDAA5, 0x7425, 0xB55B,
- 0x7426, 0xB561, 0x7428, 0xB562, 0x7429, 0xDAA8, 0x742A, 0xB558,
- 0x742B, 0xDA7D, 0x742C, 0xDA7B, 0x742D, 0xDAA3, 0x742E, 0xDA7A,
- 0x742F, 0xB55F, 0x7430, 0xDA7C, 0x7431, 0xDAA4, 0x7432, 0xDAAA,
- 0x7433, 0xB559, 0x7434, 0xB55E, 0x7435, 0xB55C, 0x7436, 0xB55D,
- 0x743A, 0xB557, 0x743F, 0xB7E9, 0x7440, 0xDEB7, 0x7441, 0xB7E8,
- 0x7442, 0xDEBB, 0x7444, 0xDEB1, 0x7446, 0xDEBC, 0x744A, 0xDEB2,
- 0x744B, 0xDEB3, 0x744D, 0xDEBD, 0x744E, 0xDEBA, 0x744F, 0xDEB8,
- 0x7450, 0xDEB9, 0x7451, 0xDEB5, 0x7452, 0xDEB4, 0x7454, 0xDEBE,
- 0x7455, 0xB7E5, 0x7457, 0xDEB6, 0x7459, 0xB7EA, 0x745A, 0xB7E4,
- 0x745B, 0xB7EB, 0x745C, 0xB7EC, 0x745E, 0xB7E7, 0x745F, 0xB7E6,
- 0x7462, 0xE2CE, 0x7463, 0xBABE, 0x7464, 0xBABD, 0x7467, 0xE2D3,
- 0x7469, 0xBCFC, 0x746A, 0xBABF, 0x746D, 0xBAC1, 0x746E, 0xE2D4,
- 0x746F, 0xB7E3, 0x7470, 0xBAC0, 0x7471, 0xE2D0, 0x7472, 0xE2D2,
- 0x7473, 0xE2CF, 0x7475, 0xE2D1, 0x7479, 0xE6AB, 0x747C, 0xE6AA,
- 0x747D, 0xE6A7, 0x747E, 0xBD40, 0x747F, 0xEA62, 0x7480, 0xBD41,
- 0x7481, 0xE6A6, 0x7483, 0xBCFE, 0x7485, 0xE6A8, 0x7486, 0xE6A5,
- 0x7487, 0xE6A2, 0x7488, 0xE6A9, 0x7489, 0xE6A3, 0x748A, 0xE6A4,
- 0x748B, 0xBCFD, 0x7490, 0xED69, 0x7492, 0xEA66, 0x7494, 0xEA65,
- 0x7495, 0xEA67, 0x7497, 0xED66, 0x7498, 0xBF5A, 0x749A, 0xEA63,
- 0x749C, 0xBF58, 0x749E, 0xBF5C, 0x749F, 0xBF5B, 0x74A0, 0xEA64,
- 0x74A1, 0xEA68, 0x74A3, 0xBF59, 0x74A5, 0xED6D, 0x74A6, 0xC0F5,
- 0x74A7, 0xC27A, 0x74A8, 0xC0F6, 0x74A9, 0xC0F3, 0x74AA, 0xED6A,
- 0x74AB, 0xED68, 0x74AD, 0xED6B, 0x74AF, 0xED6E, 0x74B0, 0xC0F4,
- 0x74B1, 0xED6C, 0x74B2, 0xED67, 0x74B5, 0xF042, 0x74B6, 0xF045,
- 0x74B7, 0xF275, 0x74B8, 0xF040, 0x74BA, 0xF46F, 0x74BB, 0xF046,
- 0x74BD, 0xC3A2, 0x74BE, 0xF044, 0x74BF, 0xC27B, 0x74C0, 0xF041,
- 0x74C1, 0xF043, 0x74C2, 0xF047, 0x74C3, 0xF276, 0x74C5, 0xF274,
- 0x74CA, 0xC3A3, 0x74CB, 0xF273, 0x74CF, 0xC46E, 0x74D4, 0xC4ED,
- 0x74D5, 0xF6F1, 0x74D6, 0xC4EC, 0x74D7, 0xF6F3, 0x74D8, 0xF6F0,
- 0x74D9, 0xF6F2, 0x74DA, 0xC5D0, 0x74DB, 0xF8B2, 0x74DC, 0xA5CA,
- 0x74DD, 0xCD6E, 0x74DE, 0xD2BC, 0x74DF, 0xD2BD, 0x74E0, 0xB27D,
- 0x74E1, 0xDEBF, 0x74E2, 0xBF5D, 0x74E3, 0xC3A4, 0x74E4, 0xC57B,
- 0x74E5, 0xF8B3, 0x74E6, 0xA5CB, 0x74E8, 0xCD6F, 0x74E9, 0xA260,
- 0x74EC, 0xCFD7, 0x74EE, 0xCFD8, 0x74F4, 0xD2BE, 0x74F5, 0xD2BF,
- 0x74F6, 0xB27E, 0x74F7, 0xB2A1, 0x74FB, 0xDAAB, 0x74FD, 0xDEC2,
- 0x74FE, 0xDEC1, 0x74FF, 0xDEC0, 0x7500, 0xE2D5, 0x7502, 0xE2D6,
- 0x7503, 0xE2D7, 0x7504, 0xBAC2, 0x7507, 0xE6AD, 0x7508, 0xE6AC,
- 0x750B, 0xEA69, 0x750C, 0xBF5E, 0x750D, 0xBF5F, 0x750F, 0xED72,
- 0x7510, 0xED6F, 0x7511, 0xED70, 0x7512, 0xED71, 0x7513, 0xF049,
- 0x7514, 0xF048, 0x7515, 0xC27C, 0x7516, 0xF277, 0x7517, 0xF5DE,
- 0x7518, 0xA5CC, 0x751A, 0xACC6, 0x751C, 0xB2A2, 0x751D, 0xDEC3,
- 0x751F, 0xA5CD, 0x7521, 0xD2C0, 0x7522, 0xB2A3, 0x7525, 0xB563,
- 0x7526, 0xB564, 0x7528, 0xA5CE, 0x7529, 0xA5CF, 0x752A, 0xCA46,
- 0x752B, 0xA86A, 0x752C, 0xA869, 0x752D, 0xACC7, 0x752E, 0xCFD9,
- 0x752F, 0xDAAC, 0x7530, 0xA5D0, 0x7531, 0xA5D1, 0x7532, 0xA5D2,
- 0x7533, 0xA5D3, 0x7537, 0xA86B, 0x7538, 0xA86C, 0x7539, 0xCB6E,
- 0x753A, 0xCB6D, 0x753D, 0xAAB6, 0x753E, 0xCD72, 0x753F, 0xCD70,
- 0x7540, 0xCD71, 0x7547, 0xCFDA, 0x7548, 0xCFDB, 0x754B, 0xACCB,
- 0x754C, 0xACC9, 0x754E, 0xACCA, 0x754F, 0xACC8, 0x7554, 0xAF60,
- 0x7559, 0xAF64, 0x755A, 0xAF63, 0x755B, 0xD2C1, 0x755C, 0xAF62,
- 0x755D, 0xAF61, 0x755F, 0xD2C2, 0x7562, 0xB2A6, 0x7563, 0xD67B,
- 0x7564, 0xD67A, 0x7565, 0xB2A4, 0x7566, 0xB2A5, 0x756A, 0xB566,
- 0x756B, 0xB565, 0x756C, 0xDAAE, 0x756F, 0xDAAD, 0x7570, 0xB2A7,
- 0x7576, 0xB7ED, 0x7577, 0xDEC5, 0x7578, 0xB7EE, 0x7579, 0xDEC4,
- 0x757D, 0xE2D8, 0x757E, 0xE6AE, 0x757F, 0xBD42, 0x7580, 0xEA6A,
- 0x7584, 0xED73, 0x7586, 0xC3A6, 0x7587, 0xC3A5, 0x758A, 0xC57C,
- 0x758B, 0xA5D4, 0x758C, 0xCD73, 0x758F, 0xB2A8, 0x7590, 0xE2D9,
- 0x7591, 0xBAC3, 0x7594, 0xCB6F, 0x7595, 0xCB70, 0x7598, 0xCD74,
- 0x7599, 0xAAB8, 0x759A, 0xAAB9, 0x759D, 0xAAB7, 0x75A2, 0xACCF,
- 0x75A3, 0xACD0, 0x75A4, 0xACCD, 0x75A5, 0xACCE, 0x75A7, 0xCFDC,
- 0x75AA, 0xCFDD, 0x75AB, 0xACCC, 0x75B0, 0xD2C3, 0x75B2, 0xAF68,
- 0x75B3, 0xAF69, 0x75B5, 0xB2AB, 0x75B6, 0xD2C9, 0x75B8, 0xAF6E,
- 0x75B9, 0xAF6C, 0x75BA, 0xD2CA, 0x75BB, 0xD2C5, 0x75BC, 0xAF6B,
- 0x75BD, 0xAF6A, 0x75BE, 0xAF65, 0x75BF, 0xD2C8, 0x75C0, 0xD2C7,
- 0x75C1, 0xD2C4, 0x75C2, 0xAF6D, 0x75C4, 0xD2C6, 0x75C5, 0xAF66,
- 0x75C7, 0xAF67, 0x75CA, 0xB2AC, 0x75CB, 0xD6A1, 0x75CC, 0xD6A2,
- 0x75CD, 0xB2AD, 0x75CE, 0xD67C, 0x75CF, 0xD67E, 0x75D0, 0xD6A4,
- 0x75D1, 0xD6A3, 0x75D2, 0xD67D, 0x75D4, 0xB2A9, 0x75D5, 0xB2AA,
- 0x75D7, 0xDAB6, 0x75D8, 0xB56B, 0x75D9, 0xB56A, 0x75DA, 0xDAB0,
- 0x75DB, 0xB568, 0x75DD, 0xDAB3, 0x75DE, 0xB56C, 0x75DF, 0xDAB4,
- 0x75E0, 0xB56D, 0x75E1, 0xDAB1, 0x75E2, 0xB567, 0x75E3, 0xB569,
- 0x75E4, 0xDAB5, 0x75E6, 0xDAB2, 0x75E7, 0xDAAF, 0x75ED, 0xDED2,
- 0x75EF, 0xDEC7, 0x75F0, 0xB7F0, 0x75F1, 0xB7F3, 0x75F2, 0xB7F2,
- 0x75F3, 0xB7F7, 0x75F4, 0xB7F6, 0x75F5, 0xDED3, 0x75F6, 0xDED1,
- 0x75F7, 0xDECA, 0x75F8, 0xDECE, 0x75F9, 0xDECD, 0x75FA, 0xB7F4,
- 0x75FB, 0xDED0, 0x75FC, 0xDECC, 0x75FD, 0xDED4, 0x75FE, 0xDECB,
- 0x75FF, 0xB7F5, 0x7600, 0xB7EF, 0x7601, 0xB7F1, 0x7603, 0xDEC9,
- 0x7608, 0xE2DB, 0x7609, 0xBAC7, 0x760A, 0xE2DF, 0x760B, 0xBAC6,
- 0x760C, 0xE2DC, 0x760D, 0xBAC5, 0x760F, 0xDEC8, 0x7610, 0xDECF,
- 0x7611, 0xE2DE, 0x7613, 0xBAC8, 0x7614, 0xE2E0, 0x7615, 0xE2DD,
- 0x7616, 0xE2DA, 0x7619, 0xE6B1, 0x761A, 0xE6B5, 0x761B, 0xE6B7,
- 0x761C, 0xE6B3, 0x761D, 0xE6B2, 0x761E, 0xE6B0, 0x761F, 0xBD45,
- 0x7620, 0xBD43, 0x7621, 0xBD48, 0x7622, 0xBD49, 0x7623, 0xE6B4,
- 0x7624, 0xBD46, 0x7625, 0xE6AF, 0x7626, 0xBD47, 0x7627, 0xBAC4,
- 0x7628, 0xE6B6, 0x7629, 0xBD44, 0x762D, 0xEA6C, 0x762F, 0xEA6B,
- 0x7630, 0xEA73, 0x7631, 0xEA6D, 0x7632, 0xEA72, 0x7633, 0xEA6F,
- 0x7634, 0xBF60, 0x7635, 0xEA71, 0x7638, 0xBF61, 0x763A, 0xBF62,
- 0x763C, 0xEA70, 0x763D, 0xEA6E, 0x7642, 0xC0F8, 0x7643, 0xED74,
- 0x7646, 0xC0F7, 0x7647, 0xED77, 0x7648, 0xED75, 0x7649, 0xED76,
- 0x764C, 0xC0F9, 0x7650, 0xF04D, 0x7652, 0xC2A1, 0x7653, 0xF04E,
- 0x7656, 0xC27D, 0x7657, 0xF04F, 0x7658, 0xC27E, 0x7659, 0xF04C,
- 0x765A, 0xF050, 0x765C, 0xF04A, 0x765F, 0xC3A7, 0x7660, 0xF278,
- 0x7661, 0xC3A8, 0x7662, 0xC46F, 0x7664, 0xF04B, 0x7665, 0xC470,
- 0x7669, 0xC4EE, 0x766A, 0xF5DF, 0x766C, 0xC57E, 0x766D, 0xF6F4,
- 0x766E, 0xC57D, 0x7670, 0xF7EA, 0x7671, 0xC5F5, 0x7672, 0xC5F6,
- 0x7675, 0xF9CC, 0x7678, 0xACD1, 0x7679, 0xCFDE, 0x767B, 0xB56E,
- 0x767C, 0xB56F, 0x767D, 0xA5D5, 0x767E, 0xA6CA, 0x767F, 0xCA47,
- 0x7681, 0xCB71, 0x7682, 0xA86D, 0x7684, 0xAABA, 0x7686, 0xACD2,
- 0x7687, 0xACD3, 0x7688, 0xACD4, 0x7689, 0xD6A6, 0x768A, 0xD2CB,
- 0x768B, 0xAF6F, 0x768E, 0xB2AE, 0x768F, 0xD6A5, 0x7692, 0xDAB8,
- 0x7693, 0xB571, 0x7695, 0xDAB7, 0x7696, 0xB570, 0x7699, 0xDED5,
- 0x769A, 0xBD4A, 0x769B, 0xE6BB, 0x769C, 0xE6B8, 0x769D, 0xE6B9,
- 0x769E, 0xE6BA, 0x76A4, 0xED78, 0x76A6, 0xF051, 0x76AA, 0xF471,
- 0x76AB, 0xF470, 0x76AD, 0xF6F5, 0x76AE, 0xA5D6, 0x76AF, 0xCD75,
- 0x76B0, 0xAF70, 0x76B4, 0xB572, 0x76B5, 0xDED6, 0x76B8, 0xE2E1,
- 0x76BA, 0xBD4B, 0x76BB, 0xEA74, 0x76BD, 0xF052, 0x76BE, 0xF472,
- 0x76BF, 0xA5D7, 0x76C2, 0xAABB, 0x76C3, 0xACD7, 0x76C4, 0xCFDF,
- 0x76C5, 0xACD8, 0x76C6, 0xACD6, 0x76C8, 0xACD5, 0x76C9, 0xD2CC,
- 0x76CA, 0xAF71, 0x76CD, 0xAF72, 0x76CE, 0xAF73, 0x76D2, 0xB2B0,
- 0x76D3, 0xD6A7, 0x76D4, 0xB2AF, 0x76DA, 0xDAB9, 0x76DB, 0xB2B1,
- 0x76DC, 0xB573, 0x76DD, 0xDED7, 0x76DE, 0xB7F8, 0x76DF, 0xB7F9,
- 0x76E1, 0xBAC9, 0x76E3, 0xBACA, 0x76E4, 0xBD4C, 0x76E5, 0xBF64,
- 0x76E6, 0xEA75, 0x76E7, 0xBF63, 0x76E9, 0xED79, 0x76EA, 0xC0FA,
- 0x76EC, 0xF053, 0x76ED, 0xF473, 0x76EE, 0xA5D8, 0x76EF, 0xA86E,
- 0x76F0, 0xCD78, 0x76F1, 0xCD77, 0x76F2, 0xAABC, 0x76F3, 0xCD76,
- 0x76F4, 0xAABD, 0x76F5, 0xCD79, 0x76F7, 0xCFE5, 0x76F8, 0xACDB,
- 0x76F9, 0xACDA, 0x76FA, 0xCFE7, 0x76FB, 0xCFE6, 0x76FC, 0xACDF,
- 0x76FE, 0xACDE, 0x7701, 0xACD9, 0x7703, 0xCFE1, 0x7704, 0xCFE2,
- 0x7705, 0xCFE3, 0x7707, 0xACE0, 0x7708, 0xCFE0, 0x7709, 0xACDC,
- 0x770A, 0xCFE4, 0x770B, 0xACDD, 0x7710, 0xD2CF, 0x7711, 0xD2D3,
- 0x7712, 0xD2D1, 0x7713, 0xD2D0, 0x7715, 0xD2D4, 0x7719, 0xD2D5,
- 0x771A, 0xD2D6, 0x771B, 0xD2CE, 0x771D, 0xD2CD, 0x771F, 0xAF75,
- 0x7720, 0xAF76, 0x7722, 0xD2D7, 0x7723, 0xD2D2, 0x7725, 0xD6B0,
- 0x7727, 0xD2D8, 0x7728, 0xAF77, 0x7729, 0xAF74, 0x772D, 0xD6AA,
- 0x772F, 0xD6A9, 0x7731, 0xD6AB, 0x7732, 0xD6AC, 0x7733, 0xD6AE,
- 0x7734, 0xD6AD, 0x7735, 0xD6B2, 0x7736, 0xB2B5, 0x7737, 0xB2B2,
- 0x7738, 0xB2B6, 0x7739, 0xD6A8, 0x773A, 0xB2B7, 0x773B, 0xD6B1,
- 0x773C, 0xB2B4, 0x773D, 0xD6AF, 0x773E, 0xB2B3, 0x7744, 0xDABC,
- 0x7745, 0xDABE, 0x7746, 0xDABA, 0x7747, 0xDABB, 0x774A, 0xDABF,
- 0x774B, 0xDAC1, 0x774C, 0xDAC2, 0x774D, 0xDABD, 0x774E, 0xDAC0,
- 0x774F, 0xB574, 0x7752, 0xDEDB, 0x7754, 0xDEE0, 0x7755, 0xDED8,
- 0x7756, 0xDEDC, 0x7759, 0xDEE1, 0x775A, 0xDEDD, 0x775B, 0xB7FA,
- 0x775C, 0xB843, 0x775E, 0xB7FD, 0x775F, 0xDED9, 0x7760, 0xDEDA,
- 0x7761, 0xBACE, 0x7762, 0xB846, 0x7763, 0xB7FE, 0x7765, 0xB844,
- 0x7766, 0xB7FC, 0x7767, 0xDEDF, 0x7768, 0xB845, 0x7769, 0xDEDE,
- 0x776A, 0xB841, 0x776B, 0xB7FB, 0x776C, 0xB842, 0x776D, 0xDEE2,
- 0x776E, 0xE2E6, 0x776F, 0xE2E8, 0x7779, 0xB840, 0x777C, 0xE2E3,
- 0x777D, 0xBACC, 0x777E, 0xE2E9, 0x777F, 0xBACD, 0x7780, 0xE2E7,
- 0x7781, 0xE2E2, 0x7782, 0xE2E5, 0x7783, 0xE2EA, 0x7784, 0xBACB,
- 0x7785, 0xE2E4, 0x7787, 0xBD4E, 0x7788, 0xE6BF, 0x7789, 0xE6BE,
- 0x778B, 0xBD51, 0x778C, 0xBD4F, 0x778D, 0xE6BC, 0x778E, 0xBD4D,
- 0x778F, 0xE6BD, 0x7791, 0xBD50, 0x7795, 0xEA7D, 0x7797, 0xEAA1,
- 0x7799, 0xEA7E, 0x779A, 0xEA76, 0x779B, 0xEA7A, 0x779C, 0xEA79,
- 0x779D, 0xEA77, 0x779E, 0xBF66, 0x779F, 0xBF67, 0x77A0, 0xBF65,
- 0x77A1, 0xEA78, 0x77A2, 0xEA7B, 0x77A3, 0xEA7C, 0x77A5, 0xBF68,
- 0x77A7, 0xC140, 0x77A8, 0xEDA3, 0x77AA, 0xC0FC, 0x77AB, 0xED7B,
- 0x77AC, 0xC0FE, 0x77AD, 0xC141, 0x77B0, 0xC0FD, 0x77B1, 0xEDA2,
- 0x77B2, 0xED7C, 0x77B3, 0xC0FB, 0x77B4, 0xEDA1, 0x77B5, 0xED7A,
- 0x77B6, 0xED7E, 0x77B7, 0xED7D, 0x77BA, 0xF055, 0x77BB, 0xC2A4,
- 0x77BC, 0xC2A5, 0x77BD, 0xC2A2, 0x77BF, 0xC2A3, 0x77C2, 0xF054,
- 0x77C4, 0xF27B, 0x77C7, 0xC3A9, 0x77C9, 0xF279, 0x77CA, 0xF27A,
- 0x77CC, 0xF474, 0x77CD, 0xF477, 0x77CE, 0xF475, 0x77CF, 0xF476,
- 0x77D0, 0xF5E0, 0x77D3, 0xC4EF, 0x77D4, 0xF7EB, 0x77D5, 0xF8B4,
- 0x77D7, 0xC5F7, 0x77D8, 0xF8F8, 0x77D9, 0xF8F9, 0x77DA, 0xC666,
- 0x77DB, 0xA5D9, 0x77DC, 0xACE1, 0x77DE, 0xDAC3, 0x77E0, 0xDEE3,
- 0x77E2, 0xA5DA, 0x77E3, 0xA86F, 0x77E5, 0xAABE, 0x77E7, 0xCFE8,
- 0x77E8, 0xCFE9, 0x77E9, 0xAF78, 0x77EC, 0xDAC4, 0x77ED, 0xB575,
- 0x77EE, 0xB847, 0x77EF, 0xC142, 0x77F0, 0xEDA4, 0x77F1, 0xF27C,
- 0x77F2, 0xF478, 0x77F3, 0xA5DB, 0x77F7, 0xCDA1, 0x77F8, 0xCD7A,
- 0x77F9, 0xCD7C, 0x77FA, 0xCD7E, 0x77FB, 0xCD7D, 0x77FC, 0xCD7B,
- 0x77FD, 0xAABF, 0x7802, 0xACE2, 0x7803, 0xCFF2, 0x7805, 0xCFED,
- 0x7806, 0xCFEA, 0x7809, 0xCFF1, 0x780C, 0xACE4, 0x780D, 0xACE5,
- 0x780E, 0xCFF0, 0x780F, 0xCFEF, 0x7810, 0xCFEE, 0x7811, 0xCFEB,
- 0x7812, 0xCFEC, 0x7813, 0xCFF3, 0x7814, 0xACE3, 0x781D, 0xAF7C,
- 0x781F, 0xAFA4, 0x7820, 0xAFA3, 0x7821, 0xD2E1, 0x7822, 0xD2DB,
- 0x7823, 0xD2D9, 0x7825, 0xAFA1, 0x7826, 0xD6B9, 0x7827, 0xAF7A,
- 0x7828, 0xD2DE, 0x7829, 0xD2E2, 0x782A, 0xD2E4, 0x782B, 0xD2E0,
- 0x782C, 0xD2DA, 0x782D, 0xAFA2, 0x782E, 0xD2DF, 0x782F, 0xD2DD,
- 0x7830, 0xAF79, 0x7831, 0xD2E5, 0x7832, 0xAFA5, 0x7833, 0xD2E3,
- 0x7834, 0xAF7D, 0x7835, 0xD2DC, 0x7837, 0xAF7E, 0x7838, 0xAF7B,
- 0x7843, 0xB2B9, 0x7845, 0xD6BA, 0x7848, 0xD6B3, 0x7849, 0xD6B5,
- 0x784A, 0xD6B7, 0x784C, 0xD6B8, 0x784D, 0xD6B6, 0x784E, 0xB2BA,
- 0x7850, 0xD6BB, 0x7852, 0xD6B4, 0x785C, 0xDAC8, 0x785D, 0xB576,
- 0x785E, 0xDAD0, 0x7860, 0xDAC5, 0x7862, 0xDAD1, 0x7864, 0xDAC6,
- 0x7865, 0xDAC7, 0x7868, 0xDACF, 0x7869, 0xDACE, 0x786A, 0xDACB,
- 0x786B, 0xB2B8, 0x786C, 0xB577, 0x786D, 0xDAC9, 0x786E, 0xDACC,
- 0x786F, 0xB578, 0x7870, 0xDACD, 0x7871, 0xDACA, 0x7879, 0xDEEE,
- 0x787B, 0xDEF2, 0x787C, 0xB84E, 0x787E, 0xE2F0, 0x787F, 0xB851,
- 0x7880, 0xDEF0, 0x7881, 0xF9D6, 0x7883, 0xDEED, 0x7884, 0xDEE8,
- 0x7885, 0xDEEA, 0x7886, 0xDEEB, 0x7887, 0xDEE4, 0x7889, 0xB84D,
- 0x788C, 0xB84C, 0x788E, 0xB848, 0x788F, 0xDEE7, 0x7891, 0xB84F,
- 0x7893, 0xB850, 0x7894, 0xDEE6, 0x7895, 0xDEE9, 0x7896, 0xDEF1,
- 0x7897, 0xB84A, 0x7898, 0xB84B, 0x7899, 0xDEEF, 0x789A, 0xDEE5,
- 0x789E, 0xE2F2, 0x789F, 0xBAD0, 0x78A0, 0xE2F4, 0x78A1, 0xDEEC,
- 0x78A2, 0xE2F6, 0x78A3, 0xBAD4, 0x78A4, 0xE2F7, 0x78A5, 0xE2F3,
- 0x78A7, 0xBAD1, 0x78A8, 0xE2EF, 0x78A9, 0xBAD3, 0x78AA, 0xE2EC,
- 0x78AB, 0xE2F1, 0x78AC, 0xE2F5, 0x78AD, 0xE2EE, 0x78B0, 0xB849,
- 0x78B2, 0xE2EB, 0x78B3, 0xBAD2, 0x78B4, 0xE2ED, 0x78BA, 0xBD54,
- 0x78BB, 0xE6C1, 0x78BC, 0xBD58, 0x78BE, 0xBD56, 0x78C1, 0xBACF,
- 0x78C3, 0xE6C8, 0x78C4, 0xE6C9, 0x78C5, 0xBD53, 0x78C8, 0xE6C7,
- 0x78C9, 0xE6CA, 0x78CA, 0xBD55, 0x78CB, 0xBD52, 0x78CC, 0xE6C3,
- 0x78CD, 0xE6C0, 0x78CE, 0xE6C5, 0x78CF, 0xE6C2, 0x78D0, 0xBD59,
- 0x78D1, 0xE6C4, 0x78D4, 0xE6C6, 0x78D5, 0xBD57, 0x78DA, 0xBF6A,
- 0x78DB, 0xEAA8, 0x78DD, 0xEAA2, 0x78DE, 0xEAA6, 0x78DF, 0xEAAC,
- 0x78E0, 0xEAAD, 0x78E1, 0xEAA9, 0x78E2, 0xEAAA, 0x78E3, 0xEAA7,
- 0x78E5, 0xEAA4, 0x78E7, 0xBF6C, 0x78E8, 0xBF69, 0x78E9, 0xEAA3,
- 0x78EA, 0xEAA5, 0x78EC, 0xBF6B, 0x78ED, 0xEAAB, 0x78EF, 0xC146,
- 0x78F2, 0xEDAA, 0x78F3, 0xEDA5, 0x78F4, 0xC145, 0x78F7, 0xC143,
- 0x78F9, 0xEDAC, 0x78FA, 0xC144, 0x78FB, 0xEDA8, 0x78FC, 0xEDA9,
- 0x78FD, 0xEDA6, 0x78FE, 0xEDAD, 0x78FF, 0xF056, 0x7901, 0xC147,
- 0x7902, 0xEDA7, 0x7904, 0xEDAE, 0x7905, 0xEDAB, 0x7909, 0xF05A,
- 0x790C, 0xF057, 0x790E, 0xC2A6, 0x7910, 0xF05B, 0x7911, 0xF05D,
- 0x7912, 0xF05C, 0x7913, 0xF058, 0x7914, 0xF059, 0x7917, 0xF2A3,
- 0x7919, 0xC3AA, 0x791B, 0xF27E, 0x791C, 0xF2A2, 0x791D, 0xF27D,
- 0x791E, 0xF2A4, 0x7921, 0xF2A1, 0x7923, 0xF47A, 0x7924, 0xF47D,
- 0x7925, 0xF479, 0x7926, 0xC471, 0x7927, 0xF47B, 0x7928, 0xF47C,
- 0x7929, 0xF47E, 0x792A, 0xC472, 0x792B, 0xC474, 0x792C, 0xC473,
- 0x792D, 0xF5E1, 0x792F, 0xF5E3, 0x7931, 0xF5E2, 0x7935, 0xF6F6,
- 0x7938, 0xF8B5, 0x7939, 0xF8FA, 0x793A, 0xA5DC, 0x793D, 0xCB72,
- 0x793E, 0xAAC0, 0x793F, 0xCDA3, 0x7940, 0xAAC1, 0x7941, 0xAAC2,
- 0x7942, 0xCDA2, 0x7944, 0xCFF8, 0x7945, 0xCFF7, 0x7946, 0xACE6,
- 0x7947, 0xACE9, 0x7948, 0xACE8, 0x7949, 0xACE7, 0x794A, 0xCFF4,
- 0x794B, 0xCFF6, 0x794C, 0xCFF5, 0x794F, 0xD2E8, 0x7950, 0xAFA7,
- 0x7951, 0xD2EC, 0x7952, 0xD2EB, 0x7953, 0xD2EA, 0x7954, 0xD2E6,
- 0x7955, 0xAFA6, 0x7956, 0xAFAA, 0x7957, 0xAFAD, 0x795A, 0xAFAE,
- 0x795B, 0xD2E7, 0x795C, 0xD2E9, 0x795D, 0xAFAC, 0x795E, 0xAFAB,
- 0x795F, 0xAFA9, 0x7960, 0xAFA8, 0x7961, 0xD6C2, 0x7963, 0xD6C0,
- 0x7964, 0xD6BC, 0x7965, 0xB2BB, 0x7967, 0xD6BD, 0x7968, 0xB2BC,
- 0x7969, 0xD6BE, 0x796A, 0xD6BF, 0x796B, 0xD6C1, 0x796D, 0xB2BD,
- 0x7970, 0xDAD5, 0x7972, 0xDAD4, 0x7973, 0xDAD3, 0x7974, 0xDAD2,
- 0x7979, 0xDEF6, 0x797A, 0xB852, 0x797C, 0xDEF3, 0x797D, 0xDEF5,
- 0x797F, 0xB853, 0x7981, 0xB854, 0x7982, 0xDEF4, 0x7988, 0xE341,
- 0x798A, 0xE2F9, 0x798B, 0xE2FA, 0x798D, 0xBAD7, 0x798E, 0xBAD5,
- 0x798F, 0xBAD6, 0x7990, 0xE343, 0x7992, 0xE342, 0x7993, 0xE2FE,
- 0x7994, 0xE2FD, 0x7995, 0xE2FC, 0x7996, 0xE2FB, 0x7997, 0xE340,
- 0x7998, 0xE2F8, 0x799A, 0xE6CB, 0x799B, 0xE6D0, 0x799C, 0xE6CE,
- 0x79A0, 0xE6CD, 0x79A1, 0xE6CC, 0x79A2, 0xE6CF, 0x79A4, 0xEAAE,
- 0x79A6, 0xBF6D, 0x79A7, 0xC148, 0x79A8, 0xEDB0, 0x79AA, 0xC149,
- 0x79AB, 0xEDAF, 0x79AC, 0xF05F, 0x79AD, 0xF05E, 0x79AE, 0xC2A7,
- 0x79B0, 0xF2A5, 0x79B1, 0xC3AB, 0x79B2, 0xF4A1, 0x79B3, 0xC5A1,
- 0x79B4, 0xF6F7, 0x79B6, 0xF8B7, 0x79B7, 0xF8B6, 0x79B8, 0xC9A8,
- 0x79B9, 0xACEA, 0x79BA, 0xACEB, 0x79BB, 0xD6C3, 0x79BD, 0xB856,
- 0x79BE, 0xA5DD, 0x79BF, 0xA872, 0x79C0, 0xA871, 0x79C1, 0xA870,
- 0x79C5, 0xCDA4, 0x79C8, 0xAAC4, 0x79C9, 0xAAC3, 0x79CB, 0xACEE,
- 0x79CD, 0xCFFA, 0x79CE, 0xCFFD, 0x79CF, 0xCFFB, 0x79D1, 0xACEC,
- 0x79D2, 0xACED, 0x79D5, 0xCFF9, 0x79D6, 0xCFFC, 0x79D8, 0xAFB5,
- 0x79DC, 0xD2F3, 0x79DD, 0xD2F5, 0x79DE, 0xD2F4, 0x79DF, 0xAFB2,
- 0x79E0, 0xD2EF, 0x79E3, 0xAFB0, 0x79E4, 0xAFAF, 0x79E6, 0xAFB3,
- 0x79E7, 0xAFB1, 0x79E9, 0xAFB4, 0x79EA, 0xD2F2, 0x79EB, 0xD2ED,
- 0x79EC, 0xD2EE, 0x79ED, 0xD2F1, 0x79EE, 0xD2F0, 0x79F6, 0xD6C6,
- 0x79F7, 0xD6C7, 0x79F8, 0xD6C5, 0x79FA, 0xD6C4, 0x79FB, 0xB2BE,
- 0x7A00, 0xB57D, 0x7A02, 0xDAD6, 0x7A03, 0xDAD8, 0x7A04, 0xDADA,
- 0x7A05, 0xB57C, 0x7A08, 0xB57A, 0x7A0A, 0xDAD7, 0x7A0B, 0xB57B,
- 0x7A0C, 0xDAD9, 0x7A0D, 0xB579, 0x7A10, 0xDF41, 0x7A11, 0xDEF7,
- 0x7A12, 0xDEFA, 0x7A13, 0xDEFE, 0x7A14, 0xB85A, 0x7A15, 0xDEFC,
- 0x7A17, 0xDEFB, 0x7A18, 0xDEF8, 0x7A19, 0xDEF9, 0x7A1A, 0xB858,
- 0x7A1B, 0xDF40, 0x7A1C, 0xB857, 0x7A1E, 0xB85C, 0x7A1F, 0xB85B,
- 0x7A20, 0xB859, 0x7A22, 0xDEFD, 0x7A26, 0xE349, 0x7A28, 0xE348,
- 0x7A2B, 0xE344, 0x7A2E, 0xBAD8, 0x7A2F, 0xE347, 0x7A30, 0xE346,
- 0x7A31, 0xBAD9, 0x7A37, 0xBD5E, 0x7A39, 0xE6D2, 0x7A3B, 0xBD5F,
- 0x7A3C, 0xBD5B, 0x7A3D, 0xBD5D, 0x7A3F, 0xBD5A, 0x7A40, 0xBD5C,
- 0x7A44, 0xEAAF, 0x7A46, 0xBF70, 0x7A47, 0xEAB1, 0x7A48, 0xEAB0,
- 0x7A4A, 0xE345, 0x7A4B, 0xBF72, 0x7A4C, 0xBF71, 0x7A4D, 0xBF6E,
- 0x7A4E, 0xBF6F, 0x7A54, 0xEDB5, 0x7A56, 0xEDB3, 0x7A57, 0xC14A,
- 0x7A58, 0xEDB4, 0x7A5A, 0xEDB6, 0x7A5B, 0xEDB2, 0x7A5C, 0xEDB1,
- 0x7A5F, 0xF060, 0x7A60, 0xC2AA, 0x7A61, 0xC2A8, 0x7A62, 0xC2A9,
- 0x7A67, 0xF2A6, 0x7A68, 0xF2A7, 0x7A69, 0xC3AD, 0x7A6B, 0xC3AC,
- 0x7A6C, 0xF4A3, 0x7A6D, 0xF4A4, 0x7A6E, 0xF4A2, 0x7A70, 0xF6F8,
- 0x7A71, 0xF6F9, 0x7A74, 0xA5DE, 0x7A75, 0xCA48, 0x7A76, 0xA873,
- 0x7A78, 0xCDA5, 0x7A79, 0xAAC6, 0x7A7A, 0xAAC5, 0x7A7B, 0xCDA6,
- 0x7A7E, 0xD040, 0x7A7F, 0xACEF, 0x7A80, 0xCFFE, 0x7A81, 0xACF0,
- 0x7A84, 0xAFB6, 0x7A85, 0xD2F8, 0x7A86, 0xD2F6, 0x7A87, 0xD2FC,
- 0x7A88, 0xAFB7, 0x7A89, 0xD2F7, 0x7A8A, 0xD2FB, 0x7A8B, 0xD2F9,
- 0x7A8C, 0xD2FA, 0x7A8F, 0xD6C8, 0x7A90, 0xD6CA, 0x7A92, 0xB2BF,
- 0x7A94, 0xD6C9, 0x7A95, 0xB2C0, 0x7A96, 0xB5A2, 0x7A97, 0xB5A1,
- 0x7A98, 0xB57E, 0x7A99, 0xDADB, 0x7A9E, 0xDF44, 0x7A9F, 0xB85D,
- 0x7AA0, 0xB85E, 0x7AA2, 0xDF43, 0x7AA3, 0xDF42, 0x7AA8, 0xE34A,
- 0x7AA9, 0xBADB, 0x7AAA, 0xBADA, 0x7AAB, 0xE34B, 0x7AAC, 0xE34C,
- 0x7AAE, 0xBD61, 0x7AAF, 0xBD60, 0x7AB1, 0xEAB5, 0x7AB2, 0xE6D3,
- 0x7AB3, 0xE6D5, 0x7AB4, 0xE6D4, 0x7AB5, 0xEAB4, 0x7AB6, 0xEAB2,
- 0x7AB7, 0xEAB6, 0x7AB8, 0xEAB3, 0x7ABA, 0xBF73, 0x7ABE, 0xEDB7,
- 0x7ABF, 0xC14B, 0x7AC0, 0xEDB8, 0x7AC1, 0xEDB9, 0x7AC4, 0xC2AB,
- 0x7AC5, 0xC2AC, 0x7AC7, 0xC475, 0x7ACA, 0xC5D1, 0x7ACB, 0xA5DF,
- 0x7AD1, 0xD041, 0x7AD8, 0xD2FD, 0x7AD9, 0xAFB8, 0x7ADF, 0xB3BA,
- 0x7AE0, 0xB3B9, 0x7AE3, 0xB5A4, 0x7AE4, 0xDADD, 0x7AE5, 0xB5A3,
- 0x7AE6, 0xDADC, 0x7AEB, 0xDF45, 0x7AED, 0xBADC, 0x7AEE, 0xE34D,
- 0x7AEF, 0xBADD, 0x7AF6, 0xC476, 0x7AF7, 0xF4A5, 0x7AF9, 0xA6CB,
- 0x7AFA, 0xAAC7, 0x7AFB, 0xCDA7, 0x7AFD, 0xACF2, 0x7AFF, 0xACF1,
- 0x7B00, 0xD042, 0x7B01, 0xD043, 0x7B04, 0xD340, 0x7B05, 0xD342,
- 0x7B06, 0xAFB9, 0x7B08, 0xD344, 0x7B09, 0xD347, 0x7B0A, 0xD345,
- 0x7B0E, 0xD346, 0x7B0F, 0xD343, 0x7B10, 0xD2FE, 0x7B11, 0xAFBA,
- 0x7B12, 0xD348, 0x7B13, 0xD341, 0x7B18, 0xD6D3, 0x7B19, 0xB2C6,
- 0x7B1A, 0xD6DC, 0x7B1B, 0xB2C3, 0x7B1D, 0xD6D5, 0x7B1E, 0xB2C7,
- 0x7B20, 0xB2C1, 0x7B22, 0xD6D0, 0x7B23, 0xD6DD, 0x7B24, 0xD6D1,
- 0x7B25, 0xD6CE, 0x7B26, 0xB2C5, 0x7B28, 0xB2C2, 0x7B2A, 0xD6D4,
- 0x7B2B, 0xD6D7, 0x7B2C, 0xB2C4, 0x7B2D, 0xD6D8, 0x7B2E, 0xB2C8,
- 0x7B2F, 0xD6D9, 0x7B30, 0xD6CF, 0x7B31, 0xD6D6, 0x7B32, 0xD6DA,
- 0x7B33, 0xD6D2, 0x7B34, 0xD6CD, 0x7B35, 0xD6CB, 0x7B38, 0xD6DB,
- 0x7B3B, 0xDADF, 0x7B40, 0xDAE4, 0x7B44, 0xDAE0, 0x7B45, 0xDAE6,
- 0x7B46, 0xB5A7, 0x7B47, 0xD6CC, 0x7B48, 0xDAE1, 0x7B49, 0xB5A5,
- 0x7B4A, 0xDADE, 0x7B4B, 0xB5AC, 0x7B4C, 0xDAE2, 0x7B4D, 0xB5AB,
- 0x7B4E, 0xDAE3, 0x7B4F, 0xB5AD, 0x7B50, 0xB5A8, 0x7B51, 0xB5AE,
- 0x7B52, 0xB5A9, 0x7B54, 0xB5AA, 0x7B56, 0xB5A6, 0x7B58, 0xDAE5,
- 0x7B60, 0xB861, 0x7B61, 0xDF50, 0x7B63, 0xDF53, 0x7B64, 0xDF47,
- 0x7B65, 0xDF4C, 0x7B66, 0xDF46, 0x7B67, 0xB863, 0x7B69, 0xDF4A,
- 0x7B6D, 0xDF48, 0x7B6E, 0xB862, 0x7B70, 0xDF4F, 0x7B71, 0xDF4E,
- 0x7B72, 0xDF4B, 0x7B73, 0xDF4D, 0x7B74, 0xDF49, 0x7B75, 0xBAE1,
- 0x7B76, 0xDF52, 0x7B77, 0xB85F, 0x7B78, 0xDF51, 0x7B82, 0xE35D,
- 0x7B84, 0xBAE8, 0x7B85, 0xE358, 0x7B87, 0xBAE7, 0x7B88, 0xE34E,
- 0x7B8A, 0xE350, 0x7B8B, 0xBAE0, 0x7B8C, 0xE355, 0x7B8D, 0xE354,
- 0x7B8E, 0xE357, 0x7B8F, 0xBAE5, 0x7B90, 0xE352, 0x7B91, 0xE351,
- 0x7B94, 0xBAE4, 0x7B95, 0xBADF, 0x7B96, 0xE353, 0x7B97, 0xBAE2,
- 0x7B98, 0xE359, 0x7B99, 0xE35B, 0x7B9B, 0xE356, 0x7B9C, 0xE34F,
- 0x7B9D, 0xBAE3, 0x7BA0, 0xBD69, 0x7BA1, 0xBADE, 0x7BA4, 0xE35C,
- 0x7BAC, 0xE6D9, 0x7BAD, 0xBD62, 0x7BAF, 0xE6DB, 0x7BB1, 0xBD63,
- 0x7BB4, 0xBD65, 0x7BB5, 0xE6DE, 0x7BB7, 0xE6D6, 0x7BB8, 0xBAE6,
- 0x7BB9, 0xE6DC, 0x7BBE, 0xE6D8, 0x7BC0, 0xB860, 0x7BC1, 0xBD68,
- 0x7BC4, 0xBD64, 0x7BC6, 0xBD66, 0x7BC7, 0xBD67, 0x7BC9, 0xBF76,
- 0x7BCA, 0xE6DD, 0x7BCB, 0xE6D7, 0x7BCC, 0xBD6A, 0x7BCE, 0xE6DA,
- 0x7BD4, 0xEAC0, 0x7BD5, 0xEABB, 0x7BD8, 0xEAC5, 0x7BD9, 0xBF74,
- 0x7BDA, 0xEABD, 0x7BDB, 0xBF78, 0x7BDC, 0xEAC3, 0x7BDD, 0xEABA,
- 0x7BDE, 0xEAB7, 0x7BDF, 0xEAC6, 0x7BE0, 0xC151, 0x7BE1, 0xBF79,
- 0x7BE2, 0xEAC2, 0x7BE3, 0xEAB8, 0x7BE4, 0xBF77, 0x7BE5, 0xEABC,
- 0x7BE6, 0xBF7B, 0x7BE7, 0xEAB9, 0x7BE8, 0xEABE, 0x7BE9, 0xBF7A,
- 0x7BEA, 0xEAC1, 0x7BEB, 0xEAC4, 0x7BF0, 0xEDCB, 0x7BF1, 0xEDCC,
- 0x7BF2, 0xEDBC, 0x7BF3, 0xEDC3, 0x7BF4, 0xEDC1, 0x7BF7, 0xC14F,
- 0x7BF8, 0xEDC8, 0x7BF9, 0xEABF, 0x7BFB, 0xEDBF, 0x7BFD, 0xEDC9,
- 0x7BFE, 0xC14E, 0x7BFF, 0xEDBE, 0x7C00, 0xEDBD, 0x7C01, 0xEDC7,
- 0x7C02, 0xEDC4, 0x7C03, 0xEDC6, 0x7C05, 0xEDBA, 0x7C06, 0xEDCA,
- 0x7C07, 0xC14C, 0x7C09, 0xEDC5, 0x7C0A, 0xEDCE, 0x7C0B, 0xEDC2,
- 0x7C0C, 0xC150, 0x7C0D, 0xC14D, 0x7C0E, 0xEDC0, 0x7C0F, 0xEDBB,
- 0x7C10, 0xEDCD, 0x7C11, 0xBF75, 0x7C19, 0xF063, 0x7C1C, 0xF061,
- 0x7C1D, 0xF067, 0x7C1E, 0xC2B0, 0x7C1F, 0xF065, 0x7C20, 0xF064,
- 0x7C21, 0xC2B2, 0x7C22, 0xF06A, 0x7C23, 0xC2B1, 0x7C25, 0xF06B,
- 0x7C26, 0xF068, 0x7C27, 0xC2AE, 0x7C28, 0xF069, 0x7C29, 0xF062,
- 0x7C2A, 0xC2AF, 0x7C2B, 0xC2AD, 0x7C2C, 0xF2AB, 0x7C2D, 0xF066,
- 0x7C30, 0xF06C, 0x7C33, 0xF2A8, 0x7C37, 0xC3B2, 0x7C38, 0xC3B0,
- 0x7C39, 0xF2AA, 0x7C3B, 0xF2AC, 0x7C3C, 0xF2A9, 0x7C3D, 0xC3B1,
- 0x7C3E, 0xC3AE, 0x7C3F, 0xC3AF, 0x7C40, 0xC3B3, 0x7C43, 0xC478,
- 0x7C45, 0xF4AA, 0x7C47, 0xF4A9, 0x7C48, 0xF4A7, 0x7C49, 0xF4A6,
- 0x7C4A, 0xF4A8, 0x7C4C, 0xC477, 0x7C4D, 0xC479, 0x7C50, 0xC4F0,
- 0x7C53, 0xF5E5, 0x7C54, 0xF5E4, 0x7C57, 0xF6FA, 0x7C59, 0xF6FC,
- 0x7C5A, 0xF6FE, 0x7C5B, 0xF6FD, 0x7C5C, 0xF6FB, 0x7C5F, 0xC5A3,
- 0x7C60, 0xC5A2, 0x7C63, 0xC5D3, 0x7C64, 0xC5D2, 0x7C65, 0xC5D4,
- 0x7C66, 0xF7ED, 0x7C67, 0xF7EC, 0x7C69, 0xF8FB, 0x7C6A, 0xF8B8,
- 0x7C6B, 0xF8FC, 0x7C6C, 0xC658, 0x7C6E, 0xC659, 0x7C6F, 0xF96D,
- 0x7C72, 0xC67E, 0x7C73, 0xA6CC, 0x7C75, 0xCDA8, 0x7C78, 0xD045,
- 0x7C79, 0xD046, 0x7C7A, 0xD044, 0x7C7D, 0xACF3, 0x7C7F, 0xD047,
- 0x7C80, 0xD048, 0x7C81, 0xD049, 0x7C84, 0xD349, 0x7C85, 0xD34F,
- 0x7C88, 0xD34D, 0x7C89, 0xAFBB, 0x7C8A, 0xD34B, 0x7C8C, 0xD34C,
- 0x7C8D, 0xD34E, 0x7C91, 0xD34A, 0x7C92, 0xB2C9, 0x7C94, 0xD6DE,
- 0x7C95, 0xB2CB, 0x7C96, 0xD6E0, 0x7C97, 0xB2CA, 0x7C98, 0xD6DF,
- 0x7C9E, 0xDAE8, 0x7C9F, 0xB5AF, 0x7CA1, 0xDAEA, 0x7CA2, 0xDAE7,
- 0x7CA3, 0xD6E1, 0x7CA5, 0xB5B0, 0x7CA7, 0xF9DB, 0x7CA8, 0xDAE9,
- 0x7CAF, 0xDF56, 0x7CB1, 0xB864, 0x7CB2, 0xDF54, 0x7CB3, 0xB865,
- 0x7CB4, 0xDF55, 0x7CB5, 0xB866, 0x7CB9, 0xBAE9, 0x7CBA, 0xE361,
- 0x7CBB, 0xE35E, 0x7CBC, 0xE360, 0x7CBD, 0xBAEA, 0x7CBE, 0xBAEB,
- 0x7CBF, 0xE35F, 0x7CC5, 0xE6DF, 0x7CC8, 0xE6E0, 0x7CCA, 0xBD6B,
- 0x7CCB, 0xE6E2, 0x7CCC, 0xE6E1, 0x7CCE, 0xA261, 0x7CD0, 0xEACA,
- 0x7CD1, 0xEACB, 0x7CD2, 0xEAC7, 0x7CD4, 0xEAC8, 0x7CD5, 0xBF7C,
- 0x7CD6, 0xBF7D, 0x7CD7, 0xEAC9, 0x7CD9, 0xC157, 0x7CDC, 0xC153,
- 0x7CDD, 0xC158, 0x7CDE, 0xC154, 0x7CDF, 0xC156, 0x7CE0, 0xC152,
- 0x7CE2, 0xC155, 0x7CE7, 0xC2B3, 0x7CE8, 0xEDCF, 0x7CEA, 0xF2AE,
- 0x7CEC, 0xF2AD, 0x7CEE, 0xF4AB, 0x7CEF, 0xC47A, 0x7CF0, 0xC47B,
- 0x7CF1, 0xF741, 0x7CF2, 0xF5E6, 0x7CF4, 0xF740, 0x7CF6, 0xF8FD,
- 0x7CF7, 0xF9A4, 0x7CF8, 0xA6CD, 0x7CFB, 0xA874, 0x7CFD, 0xCDA9,
- 0x7CFE, 0xAAC8, 0x7D00, 0xACF6, 0x7D01, 0xD04C, 0x7D02, 0xACF4,
- 0x7D03, 0xD04A, 0x7D04, 0xACF9, 0x7D05, 0xACF5, 0x7D06, 0xACFA,
- 0x7D07, 0xACF8, 0x7D08, 0xD04B, 0x7D09, 0xACF7, 0x7D0A, 0xAFBF,
- 0x7D0B, 0xAFBE, 0x7D0C, 0xD35A, 0x7D0D, 0xAFC7, 0x7D0E, 0xD353,
- 0x7D0F, 0xD359, 0x7D10, 0xAFC3, 0x7D11, 0xD352, 0x7D12, 0xD358,
- 0x7D13, 0xD356, 0x7D14, 0xAFC2, 0x7D15, 0xAFC4, 0x7D16, 0xD355,
- 0x7D17, 0xAFBD, 0x7D18, 0xD354, 0x7D19, 0xAFC8, 0x7D1A, 0xAFC5,
- 0x7D1B, 0xAFC9, 0x7D1C, 0xAFC6, 0x7D1D, 0xD351, 0x7D1E, 0xD350,
- 0x7D1F, 0xD357, 0x7D20, 0xAFC0, 0x7D21, 0xAFBC, 0x7D22, 0xAFC1,
- 0x7D28, 0xD6F0, 0x7D29, 0xD6E9, 0x7D2B, 0xB5B5, 0x7D2C, 0xD6E8,
- 0x7D2E, 0xB2CF, 0x7D2F, 0xB2D6, 0x7D30, 0xB2D3, 0x7D31, 0xB2D9,
- 0x7D32, 0xB2D8, 0x7D33, 0xB2D4, 0x7D35, 0xD6E2, 0x7D36, 0xD6E5,
- 0x7D38, 0xD6E4, 0x7D39, 0xB2D0, 0x7D3A, 0xD6E6, 0x7D3B, 0xD6EF,
- 0x7D3C, 0xB2D1, 0x7D3D, 0xD6E3, 0x7D3E, 0xD6EC, 0x7D3F, 0xD6ED,
- 0x7D40, 0xB2D2, 0x7D41, 0xD6EA, 0x7D42, 0xB2D7, 0x7D43, 0xB2CD,
- 0x7D44, 0xB2D5, 0x7D45, 0xD6E7, 0x7D46, 0xB2CC, 0x7D47, 0xD6EB,
- 0x7D4A, 0xD6EE, 0x7D4E, 0xDAFB, 0x7D4F, 0xDAF2, 0x7D50, 0xB5B2,
- 0x7D51, 0xDAF9, 0x7D52, 0xDAF6, 0x7D53, 0xDAEE, 0x7D54, 0xDAF7,
- 0x7D55, 0xB5B4, 0x7D56, 0xDAEF, 0x7D58, 0xDAEB, 0x7D5B, 0xB86C,
- 0x7D5C, 0xDAF4, 0x7D5E, 0xB5B1, 0x7D5F, 0xDAFA, 0x7D61, 0xB5B8,
- 0x7D62, 0xB5BA, 0x7D63, 0xDAED, 0x7D66, 0xB5B9, 0x7D67, 0xDAF0,
- 0x7D68, 0xB5B3, 0x7D69, 0xDAF8, 0x7D6A, 0xDAF1, 0x7D6B, 0xDAF5,
- 0x7D6D, 0xDAF3, 0x7D6E, 0xB5B6, 0x7D6F, 0xDAEC, 0x7D70, 0xB5BB,
- 0x7D71, 0xB2CE, 0x7D72, 0xB5B7, 0x7D73, 0xB5BC, 0x7D79, 0xB868,
- 0x7D7A, 0xDF5D, 0x7D7B, 0xDF5F, 0x7D7C, 0xDF61, 0x7D7D, 0xDF65,
- 0x7D7F, 0xDF5B, 0x7D80, 0xDF59, 0x7D81, 0xB86A, 0x7D83, 0xDF60,
- 0x7D84, 0xDF64, 0x7D85, 0xDF5C, 0x7D86, 0xDF58, 0x7D88, 0xDF57,
- 0x7D8C, 0xDF62, 0x7D8D, 0xDF5A, 0x7D8E, 0xDF5E, 0x7D8F, 0xB86B,
- 0x7D91, 0xB869, 0x7D92, 0xDF66, 0x7D93, 0xB867, 0x7D94, 0xDF63,
- 0x7D96, 0xE372, 0x7D9C, 0xBAEE, 0x7D9D, 0xE36A, 0x7D9E, 0xBD78,
- 0x7D9F, 0xE374, 0x7DA0, 0xBAF1, 0x7DA1, 0xE378, 0x7DA2, 0xBAF7,
- 0x7DA3, 0xE365, 0x7DA6, 0xE375, 0x7DA7, 0xE362, 0x7DA9, 0xE377,
- 0x7DAA, 0xE366, 0x7DAC, 0xBAFE, 0x7DAD, 0xBAFB, 0x7DAE, 0xE376,
- 0x7DAF, 0xE370, 0x7DB0, 0xBAED, 0x7DB1, 0xBAF5, 0x7DB2, 0xBAF4,
- 0x7DB4, 0xBAF3, 0x7DB5, 0xBAF9, 0x7DB7, 0xE363, 0x7DB8, 0xBAFA,
- 0x7DB9, 0xE371, 0x7DBA, 0xBAF6, 0x7DBB, 0xBAEC, 0x7DBC, 0xE373,
- 0x7DBD, 0xBAEF, 0x7DBE, 0xBAF0, 0x7DBF, 0xBAF8, 0x7DC0, 0xE368,
- 0x7DC1, 0xE367, 0x7DC2, 0xE364, 0x7DC4, 0xE36C, 0x7DC5, 0xE369,
- 0x7DC6, 0xE36D, 0x7DC7, 0xBAFD, 0x7DC9, 0xE379, 0x7DCA, 0xBAF2,
- 0x7DCB, 0xE36E, 0x7DCC, 0xE36F, 0x7DCE, 0xE36B, 0x7DD2, 0xBAFC,
- 0x7DD7, 0xE6E7, 0x7DD8, 0xBD70, 0x7DD9, 0xBD79, 0x7DDA, 0xBD75,
- 0x7DDB, 0xE6E4, 0x7DDD, 0xBD72, 0x7DDE, 0xBD76, 0x7DDF, 0xE6F0,
- 0x7DE0, 0xBD6C, 0x7DE1, 0xE6E8, 0x7DE3, 0xBD74, 0x7DE6, 0xE6EB,
- 0x7DE7, 0xE6E6, 0x7DE8, 0xBD73, 0x7DE9, 0xBD77, 0x7DEA, 0xE6E5,
- 0x7DEC, 0xBD71, 0x7DEE, 0xE6EF, 0x7DEF, 0xBD6E, 0x7DF0, 0xE6EE,
- 0x7DF1, 0xE6ED, 0x7DF2, 0xBD7A, 0x7DF3, 0xE572, 0x7DF4, 0xBD6D,
- 0x7DF6, 0xE6EC, 0x7DF7, 0xE6E3, 0x7DF9, 0xBD7B, 0x7DFA, 0xE6EA,
- 0x7DFB, 0xBD6F, 0x7E03, 0xE6E9, 0x7E08, 0xBFA2, 0x7E09, 0xBFA7,
- 0x7E0A, 0xBF7E, 0x7E0B, 0xEAD8, 0x7E0C, 0xEACF, 0x7E0D, 0xEADB,
- 0x7E0E, 0xEAD3, 0x7E0F, 0xEAD9, 0x7E10, 0xBFA8, 0x7E11, 0xBFA1,
- 0x7E12, 0xEACC, 0x7E13, 0xEAD2, 0x7E14, 0xEADC, 0x7E15, 0xEAD5,
- 0x7E16, 0xEADA, 0x7E17, 0xEACE, 0x7E1A, 0xEAD6, 0x7E1B, 0xBFA3,
- 0x7E1C, 0xEAD4, 0x7E1D, 0xBFA6, 0x7E1E, 0xBFA5, 0x7E1F, 0xEAD0,
- 0x7E20, 0xEAD1, 0x7E21, 0xEACD, 0x7E22, 0xEAD7, 0x7E23, 0xBFA4,
- 0x7E24, 0xEADE, 0x7E25, 0xEADD, 0x7E29, 0xEDDA, 0x7E2A, 0xEDD6,
- 0x7E2B, 0xC15F, 0x7E2D, 0xEDD0, 0x7E2E, 0xC159, 0x7E2F, 0xC169,
- 0x7E30, 0xEDDC, 0x7E31, 0xC161, 0x7E32, 0xC15D, 0x7E33, 0xEDD3,
- 0x7E34, 0xC164, 0x7E35, 0xC167, 0x7E36, 0xEDDE, 0x7E37, 0xC15C,
- 0x7E38, 0xEDD5, 0x7E39, 0xC165, 0x7E3A, 0xEDE0, 0x7E3B, 0xEDDD,
- 0x7E3C, 0xEDD1, 0x7E3D, 0xC160, 0x7E3E, 0xC15A, 0x7E3F, 0xC168,
- 0x7E40, 0xEDD8, 0x7E41, 0xC163, 0x7E42, 0xEDD2, 0x7E43, 0xC15E,
- 0x7E44, 0xEDDF, 0x7E45, 0xC162, 0x7E46, 0xC15B, 0x7E47, 0xEDD9,
- 0x7E48, 0xC166, 0x7E49, 0xEDD7, 0x7E4C, 0xEDDB, 0x7E50, 0xF06E,
- 0x7E51, 0xF074, 0x7E52, 0xC2B9, 0x7E53, 0xF077, 0x7E54, 0xC2B4,
- 0x7E55, 0xC2B5, 0x7E56, 0xF06F, 0x7E57, 0xF076, 0x7E58, 0xF071,
- 0x7E59, 0xC2BA, 0x7E5A, 0xC2B7, 0x7E5C, 0xF06D, 0x7E5E, 0xC2B6,
- 0x7E5F, 0xF073, 0x7E60, 0xF075, 0x7E61, 0xC2B8, 0x7E62, 0xF072,
- 0x7E63, 0xF070, 0x7E68, 0xF2B8, 0x7E69, 0xC3B7, 0x7E6A, 0xC3B8,
- 0x7E6B, 0xC3B4, 0x7E6D, 0xC3B5, 0x7E6F, 0xF2B4, 0x7E70, 0xF2B2,
- 0x7E72, 0xF2B6, 0x7E73, 0xC3BA, 0x7E74, 0xF2B7, 0x7E75, 0xF2B0,
- 0x7E76, 0xF2AF, 0x7E77, 0xF2B3, 0x7E78, 0xF2B1, 0x7E79, 0xC3B6,
- 0x7E7A, 0xF2B5, 0x7E7B, 0xF4AC, 0x7E7C, 0xC47E, 0x7E7D, 0xC47D,
- 0x7E7E, 0xF4AD, 0x7E80, 0xF4AF, 0x7E81, 0xF4AE, 0x7E82, 0xC4A1,
- 0x7E86, 0xF5EB, 0x7E87, 0xF5E8, 0x7E88, 0xF5E9, 0x7E8A, 0xF5E7,
- 0x7E8B, 0xF5EA, 0x7E8C, 0xC4F2, 0x7E8D, 0xF5EC, 0x7E8F, 0xC4F1,
- 0x7E91, 0xF742, 0x7E93, 0xC5D5, 0x7E94, 0xC5D7, 0x7E95, 0xF7EE,
- 0x7E96, 0xC5D6, 0x7E97, 0xF8B9, 0x7E98, 0xF940, 0x7E99, 0xF942,
- 0x7E9A, 0xF8FE, 0x7E9B, 0xF941, 0x7E9C, 0xC66C, 0x7F36, 0xA6CE,
- 0x7F38, 0xACFB, 0x7F39, 0xD26F, 0x7F3A, 0xAFCA, 0x7F3D, 0xB2DA,
- 0x7F3E, 0xDAFC, 0x7F3F, 0xDAFD, 0x7F43, 0xEADF, 0x7F44, 0xC16A,
- 0x7F45, 0xEDE1, 0x7F48, 0xC2BB, 0x7F4A, 0xF2BA, 0x7F4B, 0xF2B9,
- 0x7F4C, 0xC4A2, 0x7F4D, 0xF5ED, 0x7F4F, 0xF743, 0x7F50, 0xC5F8,
- 0x7F51, 0xCA49, 0x7F54, 0xAAC9, 0x7F55, 0xA875, 0x7F58, 0xD04D,
- 0x7F5B, 0xD360, 0x7F5C, 0xD35B, 0x7F5D, 0xD35F, 0x7F5E, 0xD35D,
- 0x7F5F, 0xAFCB, 0x7F60, 0xD35E, 0x7F61, 0xD35C, 0x7F63, 0xD6F1,
- 0x7F65, 0xDAFE, 0x7F66, 0xDB40, 0x7F67, 0xDF69, 0x7F68, 0xDF6A,
- 0x7F69, 0xB86E, 0x7F6A, 0xB86F, 0x7F6B, 0xDF68, 0x7F6C, 0xDF6B,
- 0x7F6D, 0xDF67, 0x7F6E, 0xB86D, 0x7F70, 0xBB40, 0x7F72, 0xB870,
- 0x7F73, 0xE37A, 0x7F75, 0xBD7C, 0x7F76, 0xE6F1, 0x7F77, 0xBD7D,
- 0x7F79, 0xBFA9, 0x7F7A, 0xEAE2, 0x7F7B, 0xEAE0, 0x7F7C, 0xEAE1,
- 0x7F7D, 0xEDE4, 0x7F7E, 0xEDE3, 0x7F7F, 0xEDE2, 0x7F83, 0xF2BB,
- 0x7F85, 0xC3B9, 0x7F86, 0xF2BC, 0x7F87, 0xF744, 0x7F88, 0xC5F9,
- 0x7F89, 0xF8BA, 0x7F8A, 0xA6CF, 0x7F8B, 0xAACB, 0x7F8C, 0xAACA,
- 0x7F8D, 0xD04F, 0x7F8E, 0xACFC, 0x7F91, 0xD04E, 0x7F92, 0xD362,
- 0x7F94, 0xAFCC, 0x7F95, 0xD6F2, 0x7F96, 0xD361, 0x7F9A, 0xB2DC,
- 0x7F9B, 0xD6F5, 0x7F9C, 0xD6F3, 0x7F9D, 0xD6F4, 0x7F9E, 0xB2DB,
- 0x7FA0, 0xDB42, 0x7FA1, 0xDB43, 0x7FA2, 0xDB41, 0x7FA4, 0xB873,
- 0x7FA5, 0xDF6D, 0x7FA6, 0xDF6C, 0x7FA7, 0xDF6E, 0x7FA8, 0xB872,
- 0x7FA9, 0xB871, 0x7FAC, 0xE6F2, 0x7FAD, 0xE6F4, 0x7FAF, 0xBD7E,
- 0x7FB0, 0xE6F3, 0x7FB1, 0xEAE3, 0x7FB2, 0xBFAA, 0x7FB3, 0xF079,
- 0x7FB5, 0xF078, 0x7FB6, 0xC3BB, 0x7FB7, 0xF2BD, 0x7FB8, 0xC3BD,
- 0x7FB9, 0xC3BC, 0x7FBA, 0xF4B0, 0x7FBB, 0xF5EE, 0x7FBC, 0xC4F3,
- 0x7FBD, 0xA6D0, 0x7FBE, 0xD050, 0x7FBF, 0xACFD, 0x7FC0, 0xD365,
- 0x7FC1, 0xAFCE, 0x7FC2, 0xD364, 0x7FC3, 0xD363, 0x7FC5, 0xAFCD,
- 0x7FC7, 0xD6FB, 0x7FC9, 0xD6FD, 0x7FCA, 0xD6F6, 0x7FCB, 0xD6F7,
- 0x7FCC, 0xB2DD, 0x7FCD, 0xD6F8, 0x7FCE, 0xB2DE, 0x7FCF, 0xD6FC,
- 0x7FD0, 0xD6F9, 0x7FD1, 0xD6FA, 0x7FD2, 0xB2DF, 0x7FD4, 0xB5BE,
- 0x7FD5, 0xB5BF, 0x7FD7, 0xDB44, 0x7FDB, 0xDF6F, 0x7FDC, 0xDF70,
- 0x7FDE, 0xE37E, 0x7FDF, 0xBB43, 0x7FE0, 0xBB41, 0x7FE1, 0xBB42,
- 0x7FE2, 0xE37B, 0x7FE3, 0xE37C, 0x7FE5, 0xE37D, 0x7FE6, 0xE6F9,
- 0x7FE8, 0xE6FA, 0x7FE9, 0xBDA1, 0x7FEA, 0xE6F7, 0x7FEB, 0xE6F6,
- 0x7FEC, 0xE6F8, 0x7FED, 0xE6F5, 0x7FEE, 0xBFAD, 0x7FEF, 0xEAE4,
- 0x7FF0, 0xBFAB, 0x7FF1, 0xBFAC, 0x7FF2, 0xEDE6, 0x7FF3, 0xC16B,
- 0x7FF4, 0xEDE5, 0x7FF5, 0xEFA8, 0x7FF7, 0xF07A, 0x7FF8, 0xF07B,
- 0x7FF9, 0xC2BC, 0x7FFB, 0xC2BD, 0x7FFC, 0xC16C, 0x7FFD, 0xF2BE,
- 0x7FFE, 0xF2BF, 0x7FFF, 0xF4B1, 0x8000, 0xC4A3, 0x8001, 0xA6D1,
- 0x8003, 0xA6D2, 0x8004, 0xACFE, 0x8005, 0xAACC, 0x8006, 0xAFCF,
- 0x8007, 0xD051, 0x800B, 0xB5C0, 0x800C, 0xA6D3, 0x800D, 0xAD41,
- 0x800E, 0xD052, 0x800F, 0xD053, 0x8010, 0xAD40, 0x8011, 0xAD42,
- 0x8012, 0xA6D4, 0x8014, 0xD054, 0x8015, 0xAFD1, 0x8016, 0xD366,
- 0x8017, 0xAFD3, 0x8018, 0xAFD0, 0x8019, 0xAFD2, 0x801B, 0xD741,
- 0x801C, 0xB2E0, 0x801E, 0xD740, 0x801F, 0xD6FE, 0x8021, 0xDF71,
- 0x8024, 0xE3A1, 0x8026, 0xBDA2, 0x8028, 0xBFAE, 0x8029, 0xEAE6,
- 0x802A, 0xEAE5, 0x802C, 0xEDE7, 0x8030, 0xF5EF, 0x8033, 0xA6D5,
- 0x8034, 0xCB73, 0x8035, 0xCDAA, 0x8036, 0xAD43, 0x8037, 0xD055,
- 0x8039, 0xD368, 0x803D, 0xAFD4, 0x803E, 0xD367, 0x803F, 0xAFD5,
- 0x8043, 0xD743, 0x8046, 0xB2E2, 0x8047, 0xD742, 0x8048, 0xD744,
- 0x804A, 0xB2E1, 0x804F, 0xDB46, 0x8050, 0xDB47, 0x8051, 0xDB45,
- 0x8052, 0xB5C1, 0x8056, 0xB874, 0x8058, 0xB875, 0x805A, 0xBB45,
- 0x805C, 0xE3A3, 0x805D, 0xE3A2, 0x805E, 0xBB44, 0x8064, 0xE6FB,
- 0x8067, 0xE6FC, 0x806C, 0xEAE7, 0x806F, 0xC170, 0x8070, 0xC16F,
- 0x8071, 0xC16D, 0x8072, 0xC16E, 0x8073, 0xC171, 0x8075, 0xF07C,
- 0x8076, 0xC2BF, 0x8077, 0xC2BE, 0x8078, 0xF2C0, 0x8079, 0xF4B2,
- 0x807D, 0xC5A5, 0x807E, 0xC5A4, 0x807F, 0xA6D6, 0x8082, 0xD1FB,
- 0x8084, 0xB877, 0x8085, 0xB5C2, 0x8086, 0xB876, 0x8087, 0xBB46,
- 0x8089, 0xA6D7, 0x808A, 0xC9A9, 0x808B, 0xA6D8, 0x808C, 0xA6D9,
- 0x808F, 0xCDAB, 0x8090, 0xCB76, 0x8092, 0xCB77, 0x8093, 0xA877,
- 0x8095, 0xCB74, 0x8096, 0xA876, 0x8098, 0xA879, 0x8099, 0xCB75,
- 0x809A, 0xA87B, 0x809B, 0xA87A, 0x809C, 0xCB78, 0x809D, 0xA878,
- 0x80A1, 0xAAD1, 0x80A2, 0xAACF, 0x80A3, 0xCDAD, 0x80A5, 0xAACE,
- 0x80A9, 0xAAD3, 0x80AA, 0xAAD5, 0x80AB, 0xAAD2, 0x80AD, 0xCDB0,
- 0x80AE, 0xCDAC, 0x80AF, 0xAAD6, 0x80B1, 0xAAD0, 0x80B2, 0xA87C,
- 0x80B4, 0xAAD4, 0x80B5, 0xCDAF, 0x80B8, 0xCDAE, 0x80BA, 0xAACD,
- 0x80C2, 0xD05B, 0x80C3, 0xAD47, 0x80C4, 0xAD48, 0x80C5, 0xD05D,
- 0x80C7, 0xD057, 0x80C8, 0xD05A, 0x80C9, 0xD063, 0x80CA, 0xD061,
- 0x80CC, 0xAD49, 0x80CD, 0xD067, 0x80CE, 0xAD4C, 0x80CF, 0xD064,
- 0x80D0, 0xD05C, 0x80D1, 0xD059, 0x80D4, 0xDB49, 0x80D5, 0xD062,
- 0x80D6, 0xAD44, 0x80D7, 0xD065, 0x80D8, 0xD056, 0x80D9, 0xD05F,
- 0x80DA, 0xAD46, 0x80DB, 0xAD4B, 0x80DC, 0xD060, 0x80DD, 0xAD4F,
- 0x80DE, 0xAD4D, 0x80E0, 0xD058, 0x80E1, 0xAD4A, 0x80E3, 0xD05E,
- 0x80E4, 0xAD4E, 0x80E5, 0xAD45, 0x80E6, 0xD066, 0x80ED, 0xAFDA,
- 0x80EF, 0xAFE3, 0x80F0, 0xAFD8, 0x80F1, 0xAFD6, 0x80F2, 0xD36A,
- 0x80F3, 0xAFDE, 0x80F4, 0xAFDB, 0x80F5, 0xD36C, 0x80F8, 0xAFDD,
- 0x80F9, 0xD36B, 0x80FA, 0xD369, 0x80FB, 0xD36E, 0x80FC, 0xAFE2,
- 0x80FD, 0xAFE0, 0x80FE, 0xDB48, 0x8100, 0xD36F, 0x8101, 0xD36D,
- 0x8102, 0xAFD7, 0x8105, 0xAFD9, 0x8106, 0xAFDC, 0x8108, 0xAFDF,
- 0x810A, 0xAFE1, 0x8115, 0xD74E, 0x8116, 0xB2E4, 0x8118, 0xD745,
- 0x8119, 0xD747, 0x811B, 0xD748, 0x811D, 0xD750, 0x811E, 0xD74C,
- 0x811F, 0xD74A, 0x8121, 0xD74D, 0x8122, 0xD751, 0x8123, 0xB2E5,
- 0x8124, 0xB2E9, 0x8125, 0xD746, 0x8127, 0xD74F, 0x8129, 0xB2E7,
- 0x812B, 0xB2E6, 0x812C, 0xD74B, 0x812D, 0xD749, 0x812F, 0xB2E3,
- 0x8130, 0xB2E8, 0x8139, 0xB5C8, 0x813A, 0xDB51, 0x813D, 0xDB4F,
- 0x813E, 0xB5CA, 0x8143, 0xDB4A, 0x8144, 0xDFA1, 0x8146, 0xB5C9,
- 0x8147, 0xDB4E, 0x814A, 0xDB4B, 0x814B, 0xB5C5, 0x814C, 0xB5CB,
- 0x814D, 0xDB50, 0x814E, 0xB5C7, 0x814F, 0xDB4D, 0x8150, 0xBB47,
- 0x8151, 0xB5C6, 0x8152, 0xDB4C, 0x8153, 0xB5CC, 0x8154, 0xB5C4,
- 0x8155, 0xB5C3, 0x815B, 0xDF77, 0x815C, 0xDF75, 0x815E, 0xDF7B,
- 0x8160, 0xDF73, 0x8161, 0xDFA2, 0x8162, 0xDF78, 0x8164, 0xDF72,
- 0x8165, 0xB87B, 0x8166, 0xB8A3, 0x8167, 0xDF7D, 0x8169, 0xDF76,
- 0x816B, 0xB87E, 0x816E, 0xB87C, 0x816F, 0xDF7E, 0x8170, 0xB879,
- 0x8171, 0xB878, 0x8172, 0xDF79, 0x8173, 0xB87D, 0x8174, 0xB5CD,
- 0x8176, 0xDF7C, 0x8177, 0xDF74, 0x8178, 0xB87A, 0x8179, 0xB8A1,
- 0x817A, 0xB8A2, 0x817F, 0xBB4C, 0x8180, 0xBB48, 0x8182, 0xBB4D,
- 0x8183, 0xE3A6, 0x8186, 0xE3A5, 0x8187, 0xE3A7, 0x8188, 0xBB4A,
- 0x8189, 0xE3A4, 0x818A, 0xBB4B, 0x818B, 0xE3AA, 0x818C, 0xE3A9,
- 0x818D, 0xE3A8, 0x818F, 0xBB49, 0x8195, 0xE741, 0x8197, 0xE744,
- 0x8198, 0xBDA8, 0x8199, 0xE743, 0x819A, 0xBDA7, 0x819B, 0xBDA3,
- 0x819C, 0xBDA4, 0x819D, 0xBDA5, 0x819E, 0xE740, 0x819F, 0xE6FE,
- 0x81A0, 0xBDA6, 0x81A2, 0xE742, 0x81A3, 0xE6FD, 0x81A6, 0xEAE9,
- 0x81A7, 0xEAF3, 0x81A8, 0xBFB1, 0x81A9, 0xBFB0, 0x81AB, 0xEAED,
- 0x81AC, 0xEAEF, 0x81AE, 0xEAEA, 0x81B0, 0xEAEE, 0x81B1, 0xEAE8,
- 0x81B2, 0xEAF1, 0x81B3, 0xBFAF, 0x81B4, 0xEAF0, 0x81B5, 0xEAEC,
- 0x81B7, 0xEAF2, 0x81B9, 0xEAEB, 0x81BA, 0xC174, 0x81BB, 0xEDE8,
- 0x81BC, 0xEDEE, 0x81BD, 0xC178, 0x81BE, 0xC17A, 0x81BF, 0xC177,
- 0x81C0, 0xC176, 0x81C2, 0xC175, 0x81C3, 0xC173, 0x81C4, 0xEDE9,
- 0x81C5, 0xEDEC, 0x81C6, 0xC172, 0x81C7, 0xEDED, 0x81C9, 0xC179,
- 0x81CA, 0xEDEB, 0x81CC, 0xEDEA, 0x81CD, 0xC2C0, 0x81CF, 0xC2C1,
- 0x81D0, 0xF0A1, 0x81D1, 0xF07D, 0x81D2, 0xF07E, 0x81D5, 0xF2C2,
- 0x81D7, 0xF2C1, 0x81D8, 0xC3BE, 0x81D9, 0xF4B4, 0x81DA, 0xC4A4,
- 0x81DB, 0xF4B3, 0x81DD, 0xF5F0, 0x81DE, 0xF745, 0x81DF, 0xC5A6,
- 0x81E0, 0xF943, 0x81E1, 0xF944, 0x81E2, 0xC5D8, 0x81E3, 0xA6DA,
- 0x81E5, 0xAAD7, 0x81E6, 0xDB52, 0x81E7, 0xBB4E, 0x81E8, 0xC17B,
- 0x81E9, 0xEDEF, 0x81EA, 0xA6DB, 0x81EC, 0xAFE5, 0x81ED, 0xAFE4,
- 0x81EE, 0xDB53, 0x81F2, 0xEAF4, 0x81F3, 0xA6DC, 0x81F4, 0xAD50,
- 0x81F7, 0xDB54, 0x81F8, 0xDB55, 0x81F9, 0xDB56, 0x81FA, 0xBB4F,
- 0x81FB, 0xBFB2, 0x81FC, 0xA6DD, 0x81FE, 0xAAD8, 0x81FF, 0xD068,
- 0x8200, 0xAFE6, 0x8201, 0xD370, 0x8202, 0xB2EA, 0x8204, 0xDB57,
- 0x8205, 0xB8A4, 0x8207, 0xBB50, 0x8208, 0xBFB3, 0x8209, 0xC17C,
- 0x820A, 0xC2C2, 0x820B, 0xF4B5, 0x820C, 0xA6DE, 0x820D, 0xAAD9,
- 0x8210, 0xAFE7, 0x8211, 0xD752, 0x8212, 0xB5CE, 0x8214, 0xBB51,
- 0x8215, 0xE3AB, 0x8216, 0xE745, 0x821B, 0xA6DF, 0x821C, 0xB5CF,
- 0x821D, 0xDFA3, 0x821E, 0xBB52, 0x821F, 0xA6E0, 0x8220, 0xCDB1,
- 0x8221, 0xD069, 0x8222, 0xAD51, 0x8225, 0xD372, 0x8228, 0xAFEA,
- 0x822A, 0xAFE8, 0x822B, 0xAFE9, 0x822C, 0xAFEB, 0x822F, 0xD371,
- 0x8232, 0xD757, 0x8233, 0xD754, 0x8234, 0xD756, 0x8235, 0xB2EB,
- 0x8236, 0xB2ED, 0x8237, 0xB2EC, 0x8238, 0xD753, 0x8239, 0xB2EE,
- 0x823A, 0xD755, 0x823C, 0xDB58, 0x823D, 0xDB59, 0x823F, 0xDB5A,
- 0x8240, 0xDFA6, 0x8242, 0xDFA7, 0x8244, 0xDFA5, 0x8245, 0xDFA8,
- 0x8247, 0xB8A5, 0x8249, 0xDFA4, 0x824B, 0xBB53, 0x824E, 0xE74A,
- 0x824F, 0xE746, 0x8250, 0xE749, 0x8251, 0xE74B, 0x8252, 0xE748,
- 0x8253, 0xE747, 0x8255, 0xEAF5, 0x8256, 0xEAF6, 0x8257, 0xEAF7,
- 0x8258, 0xBFB4, 0x8259, 0xBFB5, 0x825A, 0xEDF1, 0x825B, 0xEDF0,
- 0x825C, 0xEDF2, 0x825E, 0xF0A3, 0x825F, 0xF0A2, 0x8261, 0xF2C4,
- 0x8263, 0xF2C5, 0x8264, 0xF2C3, 0x8266, 0xC4A5, 0x8268, 0xF4B6,
- 0x8269, 0xF4B7, 0x826B, 0xF746, 0x826C, 0xF7EF, 0x826D, 0xF8BB,
- 0x826E, 0xA6E1, 0x826F, 0xA87D, 0x8271, 0xC17D, 0x8272, 0xA6E2,
- 0x8274, 0xD758, 0x8275, 0xDB5B, 0x8277, 0xC641, 0x8278, 0xCA4A,
- 0x827C, 0xCA4B, 0x827D, 0xCA4D, 0x827E, 0xA6E3, 0x827F, 0xCA4E,
- 0x8280, 0xCA4C, 0x8283, 0xCBA2, 0x8284, 0xCBA3, 0x8285, 0xCB7B,
- 0x828A, 0xCBA1, 0x828B, 0xA8A1, 0x828D, 0xA8A2, 0x828E, 0xCB7C,
- 0x828F, 0xCB7A, 0x8290, 0xCB79, 0x8291, 0xCB7D, 0x8292, 0xA87E,
- 0x8293, 0xCB7E, 0x8294, 0xD06A, 0x8298, 0xCDB6, 0x8299, 0xAADC,
- 0x829A, 0xCDB5, 0x829B, 0xCDB7, 0x829D, 0xAADB, 0x829E, 0xCDBC,
- 0x829F, 0xAADF, 0x82A0, 0xCDB2, 0x82A1, 0xCDC0, 0x82A2, 0xCDC6,
- 0x82A3, 0xAAE6, 0x82A4, 0xCDC3, 0x82A5, 0xAAE3, 0x82A7, 0xCDB9,
- 0x82A8, 0xCDBF, 0x82A9, 0xCDC1, 0x82AB, 0xCDB4, 0x82AC, 0xAAE2,
- 0x82AD, 0xAADD, 0x82AE, 0xCDBA, 0x82AF, 0xAAE4, 0x82B0, 0xAAE7,
- 0x82B1, 0xAAE1, 0x82B3, 0xAADA, 0x82B4, 0xCDBE, 0x82B5, 0xCDB8,
- 0x82B6, 0xCDC5, 0x82B7, 0xAAE9, 0x82B8, 0xAAE5, 0x82B9, 0xAAE0,
- 0x82BA, 0xCDBD, 0x82BB, 0xAFEC, 0x82BC, 0xCDBB, 0x82BD, 0xAADE,
- 0x82BE, 0xAAE8, 0x82C0, 0xCDB3, 0x82C2, 0xCDC2, 0x82C3, 0xCDC4,
- 0x82D1, 0xAD62, 0x82D2, 0xAD5C, 0x82D3, 0xAD64, 0x82D4, 0xAD61,
- 0x82D5, 0xD071, 0x82D6, 0xD074, 0x82D7, 0xAD5D, 0x82D9, 0xD06B,
- 0x82DB, 0xAD56, 0x82DC, 0xAD60, 0x82DE, 0xAD63, 0x82DF, 0xAD65,
- 0x82E0, 0xD0A2, 0x82E1, 0xD077, 0x82E3, 0xAD55, 0x82E4, 0xD0A1,
- 0x82E5, 0xAD59, 0x82E6, 0xAD57, 0x82E7, 0xAD52, 0x82E8, 0xD06F,
- 0x82EA, 0xD07E, 0x82EB, 0xD073, 0x82EC, 0xD076, 0x82ED, 0xD0A5,
- 0x82EF, 0xAD66, 0x82F0, 0xD07D, 0x82F1, 0xAD5E, 0x82F2, 0xD078,
- 0x82F3, 0xD0A4, 0x82F4, 0xD075, 0x82F5, 0xD079, 0x82F6, 0xD07C,
- 0x82F9, 0xD06D, 0x82FA, 0xD0A3, 0x82FB, 0xD07B, 0x82FE, 0xD06C,
- 0x8300, 0xD070, 0x8301, 0xAD5F, 0x8302, 0xAD5A, 0x8303, 0xAD53,
- 0x8304, 0xAD58, 0x8305, 0xAD54, 0x8306, 0xAD67, 0x8307, 0xD06E,
- 0x8308, 0xD3A5, 0x8309, 0xAD5B, 0x830C, 0xD07A, 0x830D, 0xCE41,
- 0x8316, 0xD3A8, 0x8317, 0xAFFA, 0x8319, 0xD376, 0x831B, 0xD3A3,
- 0x831C, 0xD37D, 0x831E, 0xD3B2, 0x8320, 0xD3AA, 0x8322, 0xD37E,
- 0x8324, 0xD3A9, 0x8325, 0xD378, 0x8326, 0xD37C, 0x8327, 0xD3B5,
- 0x8328, 0xAFFD, 0x8329, 0xD3AD, 0x832A, 0xD3A4, 0x832B, 0xAFED,
- 0x832C, 0xD3B3, 0x832D, 0xD374, 0x832F, 0xD3AC, 0x8331, 0xAFFC,
- 0x8332, 0xAFF7, 0x8333, 0xD373, 0x8334, 0xAFF5, 0x8335, 0xAFF4,
- 0x8336, 0xAFF9, 0x8337, 0xD3AB, 0x8338, 0xAFF1, 0x8339, 0xAFF8,
- 0x833A, 0xD072, 0x833B, 0xDB5C, 0x833C, 0xD3A6, 0x833F, 0xD37A,
- 0x8340, 0xAFFB, 0x8341, 0xD37B, 0x8342, 0xD3A1, 0x8343, 0xAFFE,
- 0x8344, 0xD375, 0x8345, 0xD3AF, 0x8347, 0xD3AE, 0x8348, 0xD3B6,
- 0x8349, 0xAFF3, 0x834A, 0xAFF0, 0x834B, 0xD3B4, 0x834C, 0xD3B0,
- 0x834D, 0xD3A7, 0x834E, 0xD3A2, 0x834F, 0xAFF6, 0x8350, 0xAFF2,
- 0x8351, 0xD377, 0x8352, 0xAFEE, 0x8353, 0xD3B1, 0x8354, 0xAFEF,
- 0x8356, 0xD379, 0x8373, 0xD75E, 0x8374, 0xD760, 0x8375, 0xD765,
- 0x8376, 0xD779, 0x8377, 0xB2FC, 0x8378, 0xB2F2, 0x837A, 0xD75D,
- 0x837B, 0xB2FD, 0x837C, 0xB2FE, 0x837D, 0xD768, 0x837E, 0xD76F,
- 0x837F, 0xD775, 0x8381, 0xD762, 0x8383, 0xD769, 0x8386, 0xB340,
- 0x8387, 0xD777, 0x8388, 0xD772, 0x8389, 0xB2FA, 0x838A, 0xB2F8,
- 0x838B, 0xD76E, 0x838C, 0xD76A, 0x838D, 0xD75C, 0x838E, 0xB2EF,
- 0x838F, 0xD761, 0x8390, 0xD759, 0x8392, 0xB2F7, 0x8393, 0xB2F9,
- 0x8394, 0xD766, 0x8395, 0xD763, 0x8396, 0xB2F4, 0x8397, 0xD773,
- 0x8398, 0xB2F1, 0x8399, 0xD764, 0x839A, 0xD77A, 0x839B, 0xD76C,
- 0x839D, 0xD76B, 0x839E, 0xB2F0, 0x83A0, 0xB2FB, 0x83A2, 0xB2F3,
- 0x83A3, 0xD75A, 0x83A4, 0xD75F, 0x83A5, 0xD770, 0x83A6, 0xD776,
- 0x83A7, 0xB341, 0x83A8, 0xD75B, 0x83A9, 0xD767, 0x83AA, 0xD76D,
- 0x83AB, 0xB2F6, 0x83AE, 0xD778, 0x83AF, 0xD771, 0x83B0, 0xD774,
- 0x83BD, 0xB2F5, 0x83BF, 0xDB6C, 0x83C0, 0xDB60, 0x83C1, 0xB5D7,
- 0x83C2, 0xDB7D, 0x83C3, 0xDBA7, 0x83C4, 0xDBAA, 0x83C5, 0xB5D5,
- 0x83C6, 0xDB68, 0x83C7, 0xDBA3, 0x83C8, 0xDB69, 0x83C9, 0xDB77,
- 0x83CA, 0xB5E2, 0x83CB, 0xDB73, 0x83CC, 0xB5DF, 0x83CE, 0xDB74,
- 0x83CF, 0xDB5D, 0x83D1, 0xDBA4, 0x83D4, 0xB5E8, 0x83D5, 0xDBA1,
- 0x83D6, 0xDB75, 0x83D7, 0xDBAC, 0x83D8, 0xDB70, 0x83D9, 0xDFC8,
- 0x83DB, 0xDBAF, 0x83DC, 0xB5E6, 0x83DD, 0xDB6E, 0x83DE, 0xDB7A,
- 0x83DF, 0xB5E9, 0x83E0, 0xB5D4, 0x83E1, 0xDB72, 0x83E2, 0xDBAD,
- 0x83E3, 0xDB6B, 0x83E4, 0xDB64, 0x83E5, 0xDB6F, 0x83E7, 0xDB63,
- 0x83E8, 0xDB61, 0x83E9, 0xB5D0, 0x83EA, 0xDBA5, 0x83EB, 0xDB6A,
- 0x83EC, 0xDBA8, 0x83EE, 0xDBA9, 0x83EF, 0xB5D8, 0x83F0, 0xB5DD,
- 0x83F1, 0xB5D9, 0x83F2, 0xB5E1, 0x83F3, 0xDB7E, 0x83F4, 0xB5DA,
- 0x83F5, 0xDB76, 0x83F6, 0xDB66, 0x83F8, 0xB5D2, 0x83F9, 0xDB5E,
- 0x83FA, 0xDBA2, 0x83FB, 0xDBAB, 0x83FC, 0xDB65, 0x83FD, 0xB5E0,
- 0x83FE, 0xDBB0, 0x83FF, 0xDB71, 0x8401, 0xDB6D, 0x8403, 0xB5D1,
- 0x8404, 0xB5E5, 0x8406, 0xDB7C, 0x8407, 0xB5E7, 0x8409, 0xDB78,
- 0x840A, 0xB5DC, 0x840B, 0xB5D6, 0x840C, 0xB5DE, 0x840D, 0xB5D3,
- 0x840E, 0xB5E4, 0x840F, 0xDB79, 0x8410, 0xDB67, 0x8411, 0xDB7B,
- 0x8412, 0xDB62, 0x8413, 0xDBA6, 0x841B, 0xDBAE, 0x8423, 0xDB5F,
- 0x8429, 0xDFC7, 0x842B, 0xDFDD, 0x842C, 0xB855, 0x842D, 0xDFCC,
- 0x842F, 0xDFCA, 0x8430, 0xDFB5, 0x8431, 0xB8A9, 0x8432, 0xDFC5,
- 0x8433, 0xDFD9, 0x8434, 0xDFC1, 0x8435, 0xB8B1, 0x8436, 0xDFD8,
- 0x8437, 0xDFBF, 0x8438, 0xB5E3, 0x8439, 0xDFCF, 0x843A, 0xDFC0,
- 0x843B, 0xDFD6, 0x843C, 0xB8B0, 0x843D, 0xB8A8, 0x843F, 0xDFAA,
- 0x8440, 0xDFB2, 0x8442, 0xDFCB, 0x8443, 0xDFC3, 0x8444, 0xDFDC,
- 0x8445, 0xDFC6, 0x8446, 0xB8B6, 0x8447, 0xDFD7, 0x8449, 0xB8AD,
- 0x844B, 0xDFC9, 0x844C, 0xDFD1, 0x844D, 0xDFB6, 0x844E, 0xDFD0,
- 0x8450, 0xDFE1, 0x8451, 0xDFB1, 0x8452, 0xDFD2, 0x8454, 0xDFDF,
- 0x8456, 0xDFAB, 0x8457, 0xB5DB, 0x8459, 0xDFB9, 0x845A, 0xDFB8,
- 0x845B, 0xB8AF, 0x845D, 0xDFBC, 0x845E, 0xDFBE, 0x845F, 0xDFCD,
- 0x8460, 0xDFDE, 0x8461, 0xB8B2, 0x8463, 0xB8B3, 0x8465, 0xDFB0,
- 0x8466, 0xB8AB, 0x8467, 0xDFB4, 0x8468, 0xDFDA, 0x8469, 0xB8B4,
- 0x846B, 0xB8AC, 0x846C, 0xB8AE, 0x846D, 0xB8B5, 0x846E, 0xDFE0,
- 0x846F, 0xDFD3, 0x8470, 0xDFCE, 0x8473, 0xDFBB, 0x8474, 0xDFBA,
- 0x8475, 0xB8AA, 0x8476, 0xDFAC, 0x8477, 0xB8A7, 0x8478, 0xDFC4,
- 0x8479, 0xDFAD, 0x847A, 0xDFC2, 0x847D, 0xDFB7, 0x847E, 0xDFDB,
- 0x8482, 0xB8A6, 0x8486, 0xDFB3, 0x848D, 0xDFAF, 0x848E, 0xDFD5,
- 0x848F, 0xDFAE, 0x8490, 0xBB60, 0x8491, 0xE3D3, 0x8494, 0xE3C2,
- 0x8497, 0xE3AC, 0x8498, 0xE3CA, 0x8499, 0xBB58, 0x849A, 0xE3BB,
- 0x849B, 0xE3C5, 0x849C, 0xBB5B, 0x849D, 0xE3BE, 0x849E, 0xBB59,
- 0x849F, 0xE3AF, 0x84A0, 0xE3CD, 0x84A1, 0xE3AE, 0x84A2, 0xE3C1,
- 0x84A4, 0xE3AD, 0x84A7, 0xE3BF, 0x84A8, 0xE3C8, 0x84A9, 0xE3C6,
- 0x84AA, 0xE3BA, 0x84AB, 0xE3B5, 0x84AC, 0xE3B3, 0x84AE, 0xE3B4,
- 0x84AF, 0xE3C7, 0x84B0, 0xE3D2, 0x84B1, 0xE3BC, 0x84B2, 0xBB5A,
- 0x84B4, 0xE3B7, 0x84B6, 0xE3CB, 0x84B8, 0xBB5D, 0x84B9, 0xE3B6,
- 0x84BA, 0xE3B0, 0x84BB, 0xE3C0, 0x84BC, 0xBB61, 0x84BF, 0xBB55,
- 0x84C0, 0xBB5E, 0x84C1, 0xE3B8, 0x84C2, 0xE3B2, 0x84C4, 0xBB57,
- 0x84C5, 0xDFD4, 0x84C6, 0xBB56, 0x84C7, 0xE3C3, 0x84C9, 0xBB54,
- 0x84CA, 0xBB63, 0x84CB, 0xBB5C, 0x84CC, 0xE3C4, 0x84CD, 0xE3B9,
- 0x84CE, 0xE3B1, 0x84CF, 0xE3CC, 0x84D0, 0xE3BD, 0x84D1, 0xBB62,
- 0x84D2, 0xE3D0, 0x84D3, 0xBB5F, 0x84D4, 0xE3CF, 0x84D6, 0xE3C9,
- 0x84D7, 0xE3CE, 0x84DB, 0xE3D1, 0x84E7, 0xE773, 0x84E8, 0xE774,
- 0x84E9, 0xE767, 0x84EA, 0xE766, 0x84EB, 0xE762, 0x84EC, 0xBDB4,
- 0x84EE, 0xBDAC, 0x84EF, 0xE776, 0x84F0, 0xE775, 0x84F1, 0xDFA9,
- 0x84F2, 0xE75F, 0x84F3, 0xE763, 0x84F4, 0xE75D, 0x84F6, 0xE770,
- 0x84F7, 0xE761, 0x84F9, 0xE777, 0x84FA, 0xE75A, 0x84FB, 0xE758,
- 0x84FC, 0xE764, 0x84FD, 0xE76E, 0x84FE, 0xE769, 0x84FF, 0xBDB6,
- 0x8500, 0xE74F, 0x8502, 0xE76D, 0x8506, 0xBDB7, 0x8507, 0xDFBD,
- 0x8508, 0xE75B, 0x8509, 0xE752, 0x850A, 0xE755, 0x850B, 0xE77B,
- 0x850C, 0xE75C, 0x850D, 0xE753, 0x850E, 0xE751, 0x850F, 0xE74E,
- 0x8511, 0xBDB0, 0x8512, 0xE765, 0x8513, 0xBDAF, 0x8514, 0xBDB3,
- 0x8515, 0xE760, 0x8516, 0xE768, 0x8517, 0xBDA9, 0x8518, 0xE778,
- 0x8519, 0xE77C, 0x851A, 0xBDAB, 0x851C, 0xE757, 0x851D, 0xE76B,
- 0x851E, 0xE76F, 0x851F, 0xE754, 0x8520, 0xE779, 0x8521, 0xBDB2,
- 0x8523, 0xBDB1, 0x8524, 0xE74C, 0x8525, 0xBDB5, 0x8526, 0xE772,
- 0x8527, 0xE756, 0x8528, 0xE76A, 0x8529, 0xE750, 0x852A, 0xE75E,
- 0x852B, 0xE759, 0x852C, 0xBDAD, 0x852D, 0xBDAE, 0x852E, 0xE76C,
- 0x852F, 0xE77D, 0x8530, 0xE77A, 0x8531, 0xE771, 0x853B, 0xE74D,
- 0x853D, 0xBDAA, 0x853E, 0xEB49, 0x8540, 0xEB40, 0x8541, 0xEB43,
- 0x8543, 0xBFBB, 0x8544, 0xEB45, 0x8545, 0xEAF9, 0x8546, 0xEB41,
- 0x8547, 0xEB47, 0x8548, 0xBFB8, 0x8549, 0xBFBC, 0x854A, 0xBFB6,
- 0x854D, 0xEAFB, 0x854E, 0xEB4C, 0x8551, 0xEB46, 0x8553, 0xEAFC,
- 0x8554, 0xEB55, 0x8555, 0xEB4F, 0x8556, 0xEAF8, 0x8557, 0xEE46,
- 0x8558, 0xEAFE, 0x8559, 0xBFB7, 0x855B, 0xEB4A, 0x855D, 0xEB54,
- 0x855E, 0xBFBF, 0x8560, 0xEB51, 0x8561, 0xEAFD, 0x8562, 0xEB44,
- 0x8563, 0xEB48, 0x8564, 0xEB42, 0x8565, 0xEB56, 0x8566, 0xEB53,
- 0x8567, 0xEB50, 0x8568, 0xBFB9, 0x8569, 0xBFBA, 0x856A, 0xBFBE,
- 0x856B, 0xEAFA, 0x856C, 0xEB57, 0x856D, 0xBFBD, 0x856E, 0xEB4D,
- 0x8571, 0xEB4B, 0x8575, 0xEB4E, 0x8576, 0xEE53, 0x8577, 0xEE40,
- 0x8578, 0xEE45, 0x8579, 0xEE52, 0x857A, 0xEE44, 0x857B, 0xEDFB,
- 0x857C, 0xEE41, 0x857E, 0xC1A2, 0x8580, 0xEDF4, 0x8581, 0xEE4D,
- 0x8582, 0xEE4F, 0x8583, 0xEDF3, 0x8584, 0xC1A1, 0x8585, 0xEE51,
- 0x8586, 0xEE49, 0x8587, 0xC1A8, 0x8588, 0xEE50, 0x8589, 0xEE42,
- 0x858A, 0xC1AA, 0x858B, 0xEDF9, 0x858C, 0xEB52, 0x858D, 0xEE4A,
- 0x858E, 0xEE47, 0x858F, 0xEDF5, 0x8590, 0xEE55, 0x8591, 0xC1A4,
- 0x8594, 0xC1A5, 0x8595, 0xEDF7, 0x8596, 0xEE48, 0x8598, 0xEE54,
- 0x8599, 0xEE4B, 0x859A, 0xEDFD, 0x859B, 0xC1A7, 0x859C, 0xC1A3,
- 0x859D, 0xEE4C, 0x859E, 0xEDFE, 0x859F, 0xEE56, 0x85A0, 0xEDF8,
- 0x85A1, 0xEE43, 0x85A2, 0xEE4E, 0x85A3, 0xEDFA, 0x85A4, 0xEDFC,
- 0x85A6, 0xC2CB, 0x85A7, 0xEDF6, 0x85A8, 0xC1A9, 0x85A9, 0xC2C4,
- 0x85AA, 0xC17E, 0x85AF, 0xC1A6, 0x85B0, 0xC2C8, 0x85B1, 0xF0B3,
- 0x85B3, 0xF0A9, 0x85B4, 0xF0A4, 0x85B5, 0xF0AA, 0x85B6, 0xF0B4,
- 0x85B7, 0xF0B8, 0x85B8, 0xF0B7, 0x85B9, 0xC2CA, 0x85BA, 0xC2C9,
- 0x85BD, 0xF0AB, 0x85BE, 0xF0B9, 0x85BF, 0xF0AE, 0x85C0, 0xF0A6,
- 0x85C2, 0xF0A8, 0x85C3, 0xF0A7, 0x85C4, 0xF0AD, 0x85C5, 0xF0B2,
- 0x85C6, 0xF0A5, 0x85C7, 0xF0AC, 0x85C8, 0xF0B1, 0x85C9, 0xC2C7,
- 0x85CB, 0xF0AF, 0x85CD, 0xC2C5, 0x85CE, 0xF0B0, 0x85CF, 0xC2C3,
- 0x85D0, 0xC2C6, 0x85D1, 0xF2D5, 0x85D2, 0xF0B5, 0x85D5, 0xC3C2,
- 0x85D7, 0xF2CD, 0x85D8, 0xF2D1, 0x85D9, 0xF2C9, 0x85DA, 0xF2CC,
- 0x85DC, 0xF2D4, 0x85DD, 0xC3C0, 0x85DE, 0xF2D9, 0x85DF, 0xF2D2,
- 0x85E1, 0xF2CA, 0x85E2, 0xF2DA, 0x85E3, 0xF2D3, 0x85E4, 0xC3C3,
- 0x85E5, 0xC3C4, 0x85E6, 0xF2D7, 0x85E8, 0xF2CB, 0x85E9, 0xC3BF,
- 0x85EA, 0xC3C1, 0x85EB, 0xF2C6, 0x85EC, 0xF2CE, 0x85ED, 0xF2C8,
- 0x85EF, 0xF2D8, 0x85F0, 0xF2D6, 0x85F1, 0xF2C7, 0x85F2, 0xF2CF,
- 0x85F6, 0xF4BE, 0x85F7, 0xC3C5, 0x85F8, 0xF2D0, 0x85F9, 0xC4A7,
- 0x85FA, 0xC4A9, 0x85FB, 0xC4A6, 0x85FD, 0xF4C3, 0x85FE, 0xF4BB,
- 0x85FF, 0xF4B9, 0x8600, 0xF4BD, 0x8601, 0xF4BA, 0x8604, 0xF4BF,
- 0x8605, 0xF4C1, 0x8606, 0xC4AA, 0x8607, 0xC4AC, 0x8609, 0xF4C0,
- 0x860A, 0xC4AD, 0x860B, 0xC4AB, 0x860C, 0xF4C2, 0x8611, 0xC4A8,
- 0x8617, 0xC4F4, 0x8618, 0xF5F1, 0x8619, 0xF5F7, 0x861A, 0xC4F6,
- 0x861B, 0xF4BC, 0x861C, 0xF5F6, 0x861E, 0xF5FD, 0x861F, 0xF5F4,
- 0x8620, 0xF5FB, 0x8621, 0xF5FA, 0x8622, 0xF4B8, 0x8623, 0xF5F5,
- 0x8624, 0xF0B6, 0x8625, 0xF5FE, 0x8626, 0xF5F3, 0x8627, 0xF5F8,
- 0x8629, 0xF5FC, 0x862A, 0xF5F2, 0x862C, 0xF74A, 0x862D, 0xC4F5,
- 0x862E, 0xF5F9, 0x8631, 0xF7F4, 0x8632, 0xF74B, 0x8633, 0xF749,
- 0x8634, 0xF747, 0x8635, 0xF748, 0x8636, 0xF74C, 0x8638, 0xC5D9,
- 0x8639, 0xF7F2, 0x863A, 0xF7F0, 0x863B, 0xF7F5, 0x863C, 0xF7F3,
- 0x863E, 0xF7F6, 0x863F, 0xC5DA, 0x8640, 0xF7F1, 0x8643, 0xF8BC,
- 0x8646, 0xF945, 0x8647, 0xF946, 0x8648, 0xF947, 0x864B, 0xF9C7,
- 0x864C, 0xF9BD, 0x864D, 0xCA4F, 0x864E, 0xAAEA, 0x8650, 0xAD68,
- 0x8652, 0xD3B8, 0x8653, 0xD3B7, 0x8654, 0xB040, 0x8655, 0xB342,
- 0x8656, 0xD77C, 0x8659, 0xD77B, 0x865B, 0xB5EA, 0x865C, 0xB8B8,
- 0x865E, 0xB8B7, 0x865F, 0xB8B9, 0x8661, 0xE3D4, 0x8662, 0xE77E,
- 0x8663, 0xEB58, 0x8664, 0xEB5A, 0x8665, 0xEB59, 0x8667, 0xC1AB,
- 0x8668, 0xEE57, 0x8669, 0xF0BA, 0x866A, 0xF9A5, 0x866B, 0xA6E4,
- 0x866D, 0xCDC9, 0x866E, 0xCDCA, 0x866F, 0xCDC8, 0x8670, 0xCDC7,
- 0x8671, 0xAAEB, 0x8673, 0xD0A9, 0x8674, 0xD0A7, 0x8677, 0xD0A6,
- 0x8679, 0xAD69, 0x867A, 0xAD6B, 0x867B, 0xAD6A, 0x867C, 0xD0A8,
- 0x8685, 0xD3C4, 0x8686, 0xD3C1, 0x8687, 0xD3BF, 0x868A, 0xB041,
- 0x868B, 0xD3C2, 0x868C, 0xB046, 0x868D, 0xD3BC, 0x868E, 0xD3CB,
- 0x8690, 0xD3CD, 0x8691, 0xD3BD, 0x8693, 0xB043, 0x8694, 0xD3CE,
- 0x8695, 0xD3C9, 0x8696, 0xD3BB, 0x8697, 0xD3C0, 0x8698, 0xD3CA,
- 0x8699, 0xD3C6, 0x869A, 0xD3C3, 0x869C, 0xB048, 0x869D, 0xD3CC,
- 0x869E, 0xD3BE, 0x86A1, 0xD3C7, 0x86A2, 0xD3B9, 0x86A3, 0xB047,
- 0x86A4, 0xB044, 0x86A5, 0xD3C5, 0x86A7, 0xD3C8, 0x86A8, 0xD3BA,
- 0x86A9, 0xB045, 0x86AA, 0xB042, 0x86AF, 0xB34C, 0x86B0, 0xD7A5,
- 0x86B1, 0xB34B, 0x86B3, 0xD7A8, 0x86B4, 0xD7AB, 0x86B5, 0xB348,
- 0x86B6, 0xB346, 0x86B7, 0xD77E, 0x86B8, 0xD7A9, 0x86B9, 0xD7A7,
- 0x86BA, 0xD7A4, 0x86BB, 0xD7AC, 0x86BC, 0xD7AD, 0x86BD, 0xD7AF,
- 0x86BE, 0xD7B0, 0x86BF, 0xD77D, 0x86C0, 0xB345, 0x86C1, 0xD7A2,
- 0x86C2, 0xD7A1, 0x86C3, 0xD7AE, 0x86C4, 0xB347, 0x86C5, 0xD7A3,
- 0x86C6, 0xB349, 0x86C7, 0xB344, 0x86C8, 0xD7A6, 0x86C9, 0xB34D,
- 0x86CB, 0xB34A, 0x86CC, 0xD7AA, 0x86D0, 0xB5F1, 0x86D1, 0xDBBF,
- 0x86D3, 0xDBB4, 0x86D4, 0xB5EE, 0x86D6, 0xDFE7, 0x86D7, 0xDBBD,
- 0x86D8, 0xDBB1, 0x86D9, 0xB5EC, 0x86DA, 0xDBB6, 0x86DB, 0xB5EF,
- 0x86DC, 0xDBBA, 0x86DD, 0xDBB8, 0x86DE, 0xB5F2, 0x86DF, 0xB5EB,
- 0x86E2, 0xDBB2, 0x86E3, 0xDBB5, 0x86E4, 0xB5F0, 0x86E6, 0xDBB3,
- 0x86E8, 0xDBBE, 0x86E9, 0xDBBC, 0x86EA, 0xDBB7, 0x86EB, 0xDBB9,
- 0x86EC, 0xDBBB, 0x86ED, 0xB5ED, 0x86F5, 0xDFE8, 0x86F6, 0xDFEE,
- 0x86F7, 0xDFE4, 0x86F8, 0xDFEA, 0x86F9, 0xB8BA, 0x86FA, 0xDFE6,
- 0x86FB, 0xB8C0, 0x86FE, 0xB8BF, 0x8700, 0xB8BE, 0x8701, 0xDFED,
- 0x8702, 0xB8C1, 0x8703, 0xB8C2, 0x8704, 0xDFE3, 0x8705, 0xDFF0,
- 0x8706, 0xB8C3, 0x8707, 0xB8BD, 0x8708, 0xB8BC, 0x8709, 0xDFEC,
- 0x870A, 0xB8C4, 0x870B, 0xDFE2, 0x870C, 0xDFE5, 0x870D, 0xDFEF,
- 0x870E, 0xDFEB, 0x8711, 0xE3F4, 0x8712, 0xE3E9, 0x8713, 0xB8BB,
- 0x8718, 0xBB6A, 0x8719, 0xE3DD, 0x871A, 0xE3F2, 0x871B, 0xE3DE,
- 0x871C, 0xBB65, 0x871E, 0xE3DB, 0x8720, 0xE3E4, 0x8721, 0xE3DC,
- 0x8722, 0xBB67, 0x8723, 0xE3D6, 0x8724, 0xE3F1, 0x8725, 0xBB68,
- 0x8726, 0xE3EE, 0x8727, 0xE3EF, 0x8728, 0xE3D7, 0x8729, 0xBB6D,
- 0x872A, 0xE3E6, 0x872C, 0xE3E0, 0x872D, 0xE3E7, 0x872E, 0xE3DA,
- 0x8730, 0xE3F3, 0x8731, 0xE3EB, 0x8732, 0xE3E5, 0x8733, 0xE3D5,
- 0x8734, 0xBB69, 0x8735, 0xE3EC, 0x8737, 0xBB6C, 0x8738, 0xE3F0,
- 0x873A, 0xE3EA, 0x873B, 0xBB66, 0x873C, 0xE3E8, 0x873E, 0xE3E2,
- 0x873F, 0xBB64, 0x8740, 0xE3D9, 0x8741, 0xE3E1, 0x8742, 0xE3ED,
- 0x8743, 0xE3DF, 0x8746, 0xE3E3, 0x874C, 0xBDC1, 0x874D, 0xDFE9,
- 0x874E, 0xE7B2, 0x874F, 0xE7BB, 0x8750, 0xE7B1, 0x8751, 0xE7AD,
- 0x8752, 0xE7AA, 0x8753, 0xBDC2, 0x8754, 0xE7A8, 0x8755, 0xBB6B,
- 0x8756, 0xE7A1, 0x8757, 0xBDC0, 0x8758, 0xE7A7, 0x8759, 0xBDBF,
- 0x875A, 0xE7AC, 0x875B, 0xE7A9, 0x875C, 0xE7B9, 0x875D, 0xE7B4,
- 0x875E, 0xE7AE, 0x875F, 0xE7B3, 0x8760, 0xBDBB, 0x8761, 0xE7AB,
- 0x8762, 0xE7BE, 0x8763, 0xE7A2, 0x8764, 0xE7A3, 0x8765, 0xE7BA,
- 0x8766, 0xBDBC, 0x8767, 0xE7BF, 0x8768, 0xBDBE, 0x8769, 0xE7C0,
- 0x876A, 0xE7B0, 0x876B, 0xE3D8, 0x876C, 0xE7B6, 0x876D, 0xE7AF,
- 0x876E, 0xE7B8, 0x876F, 0xE7B5, 0x8773, 0xE7A6, 0x8774, 0xBDB9,
- 0x8775, 0xE7BD, 0x8776, 0xBDBA, 0x8777, 0xE7A4, 0x8778, 0xBDBD,
- 0x8779, 0xEB64, 0x877A, 0xE7B7, 0x877B, 0xE7BC, 0x8781, 0xEB61,
- 0x8782, 0xBDB8, 0x8783, 0xBFC0, 0x8784, 0xEB6B, 0x8785, 0xEB67,
- 0x8787, 0xEB65, 0x8788, 0xEB60, 0x8789, 0xEB6F, 0x878D, 0xBFC4,
- 0x878F, 0xEB5C, 0x8790, 0xEB68, 0x8791, 0xEB69, 0x8792, 0xEB5F,
- 0x8793, 0xEB5E, 0x8794, 0xEB6C, 0x8796, 0xEB62, 0x8797, 0xEB5D,
- 0x8798, 0xEB63, 0x879A, 0xEB6E, 0x879B, 0xEB5B, 0x879C, 0xEB6D,
- 0x879D, 0xEB6A, 0x879E, 0xBFC2, 0x879F, 0xBFC1, 0x87A2, 0xBFC3,
- 0x87A3, 0xEB66, 0x87A4, 0xF0CB, 0x87AA, 0xEE59, 0x87AB, 0xC1B1,
- 0x87AC, 0xEE5D, 0x87AD, 0xEE5A, 0x87AE, 0xEE61, 0x87AF, 0xEE67,
- 0x87B0, 0xEE5C, 0x87B2, 0xEE70, 0x87B3, 0xC1AE, 0x87B4, 0xEE6A,
- 0x87B5, 0xEE5F, 0x87B6, 0xEE6B, 0x87B7, 0xEE66, 0x87B8, 0xEE6D,
- 0x87B9, 0xEE5E, 0x87BA, 0xC1B3, 0x87BB, 0xC1B2, 0x87BC, 0xEE60,
- 0x87BD, 0xEE6E, 0x87BE, 0xEE58, 0x87BF, 0xEE6C, 0x87C0, 0xC1AC,
- 0x87C2, 0xEE64, 0x87C3, 0xEE63, 0x87C4, 0xEE68, 0x87C5, 0xEE5B,
- 0x87C6, 0xC1B0, 0x87C8, 0xC1B4, 0x87C9, 0xEE62, 0x87CA, 0xEE69,
- 0x87CB, 0xC1B5, 0x87CC, 0xEE65, 0x87D1, 0xC1AD, 0x87D2, 0xC1AF,
- 0x87D3, 0xF0C7, 0x87D4, 0xF0C5, 0x87D7, 0xF0CC, 0x87D8, 0xF0C9,
- 0x87D9, 0xF0CD, 0x87DB, 0xF0BE, 0x87DC, 0xF0C6, 0x87DD, 0xF0D1,
- 0x87DE, 0xEE6F, 0x87DF, 0xF0C2, 0x87E0, 0xC2CF, 0x87E1, 0xE7A5,
- 0x87E2, 0xF0BD, 0x87E3, 0xF0CA, 0x87E4, 0xF0C4, 0x87E5, 0xF0C1,
- 0x87E6, 0xF0BC, 0x87E7, 0xF0BB, 0x87E8, 0xF0D0, 0x87EA, 0xF0C0,
- 0x87EB, 0xF0BF, 0x87EC, 0xC2CD, 0x87ED, 0xF0C8, 0x87EF, 0xC2CC,
- 0x87F2, 0xC2CE, 0x87F3, 0xF0C3, 0x87F4, 0xF0CF, 0x87F6, 0xF2DE,
- 0x87F7, 0xF2DF, 0x87F9, 0xC3C9, 0x87FA, 0xF2DC, 0x87FB, 0xC3C6,
- 0x87FC, 0xF2E4, 0x87FE, 0xC3CA, 0x87FF, 0xF2E6, 0x8800, 0xF2DB,
- 0x8801, 0xF0CE, 0x8802, 0xF2E8, 0x8803, 0xF2DD, 0x8805, 0xC3C7,
- 0x8806, 0xF2E3, 0x8808, 0xF2E5, 0x8809, 0xF2E0, 0x880A, 0xF2E7,
- 0x880B, 0xF2E2, 0x880C, 0xF2E1, 0x880D, 0xC3C8, 0x8810, 0xF4C5,
- 0x8811, 0xF4C6, 0x8813, 0xF4C8, 0x8814, 0xC4AE, 0x8815, 0xC4AF,
- 0x8816, 0xF4C9, 0x8817, 0xF4C7, 0x8819, 0xF4C4, 0x881B, 0xF642,
- 0x881C, 0xF645, 0x881D, 0xF641, 0x881F, 0xC4FA, 0x8820, 0xF643,
- 0x8821, 0xC4F9, 0x8822, 0xC4F8, 0x8823, 0xC4F7, 0x8824, 0xF644,
- 0x8825, 0xF751, 0x8826, 0xF74F, 0x8828, 0xF74E, 0x8829, 0xF640,
- 0x882A, 0xF750, 0x882B, 0xF646, 0x882C, 0xF74D, 0x882E, 0xF7F9,
- 0x882F, 0xF7D7, 0x8830, 0xF7F7, 0x8831, 0xC5DB, 0x8832, 0xF7F8,
- 0x8833, 0xF7FA, 0x8835, 0xF8BF, 0x8836, 0xC5FA, 0x8837, 0xF8BE,
- 0x8838, 0xF8BD, 0x8839, 0xC5FB, 0x883B, 0xC65A, 0x883C, 0xF96E,
- 0x883D, 0xF9A7, 0x883E, 0xF9A6, 0x883F, 0xF9A8, 0x8840, 0xA6E5,
- 0x8841, 0xD0AA, 0x8843, 0xD3CF, 0x8844, 0xD3D0, 0x8848, 0xDBC0,
- 0x884A, 0xF647, 0x884B, 0xF8C0, 0x884C, 0xA6E6, 0x884D, 0xAD6C,
- 0x884E, 0xD0AB, 0x8852, 0xD7B1, 0x8853, 0xB34E, 0x8855, 0xDBC2,
- 0x8856, 0xDBC1, 0x8857, 0xB5F3, 0x8859, 0xB8C5, 0x885A, 0xE7C1,
- 0x885B, 0xBDC3, 0x885D, 0xBDC4, 0x8861, 0xBFC5, 0x8862, 0xC5FC,
- 0x8863, 0xA6E7, 0x8867, 0xD0AC, 0x8868, 0xAAED, 0x8869, 0xD0AE,
- 0x886A, 0xD0AD, 0x886B, 0xAD6D, 0x886D, 0xD3D1, 0x886F, 0xD3D8,
- 0x8870, 0xB049, 0x8871, 0xD3D6, 0x8872, 0xD3D4, 0x8874, 0xD3DB,
- 0x8875, 0xD3D2, 0x8876, 0xD3D3, 0x8877, 0xB04A, 0x8879, 0xB04E,
- 0x887C, 0xD3DC, 0x887D, 0xB04D, 0x887E, 0xD3DA, 0x887F, 0xD3D7,
- 0x8880, 0xD3D5, 0x8881, 0xB04B, 0x8882, 0xB04C, 0x8883, 0xD3D9,
- 0x8888, 0xB350, 0x8889, 0xD7B2, 0x888B, 0xB355, 0x888C, 0xD7C2,
- 0x888D, 0xB354, 0x888E, 0xD7C4, 0x8891, 0xD7B8, 0x8892, 0xB352,
- 0x8893, 0xD7C3, 0x8895, 0xD7B3, 0x8896, 0xB353, 0x8897, 0xD7BF,
- 0x8898, 0xD7BB, 0x8899, 0xD7BD, 0x889A, 0xD7B7, 0x889B, 0xD7BE,
- 0x889E, 0xB34F, 0x889F, 0xD7BA, 0x88A1, 0xD7B9, 0x88A2, 0xD7B5,
- 0x88A4, 0xD7C0, 0x88A7, 0xD7BC, 0x88A8, 0xD7B4, 0x88AA, 0xD7B6,
- 0x88AB, 0xB351, 0x88AC, 0xD7C1, 0x88B1, 0xB5F6, 0x88B2, 0xDBCD,
- 0x88B6, 0xDBC9, 0x88B7, 0xDBCB, 0x88B8, 0xDBC6, 0x88B9, 0xDBC5,
- 0x88BA, 0xDBC3, 0x88BC, 0xDBCA, 0x88BD, 0xDBCC, 0x88BE, 0xDBC8,
- 0x88C0, 0xDBC7, 0x88C1, 0xB5F4, 0x88C2, 0xB5F5, 0x88C9, 0xDBCF,
- 0x88CA, 0xB8CD, 0x88CB, 0xDFF2, 0x88CC, 0xDFF8, 0x88CD, 0xDFF3,
- 0x88CE, 0xDFF4, 0x88CF, 0xF9D8, 0x88D0, 0xDFF9, 0x88D2, 0xB8CF,
- 0x88D4, 0xB8C7, 0x88D5, 0xB8CE, 0x88D6, 0xDFF1, 0x88D7, 0xDBC4,
- 0x88D8, 0xB8CA, 0x88D9, 0xB8C8, 0x88DA, 0xDFF7, 0x88DB, 0xDFF6,
- 0x88DC, 0xB8C9, 0x88DD, 0xB8CB, 0x88DE, 0xDFF5, 0x88DF, 0xB8C6,
- 0x88E1, 0xB8CC, 0x88E7, 0xE3F6, 0x88E8, 0xBB74, 0x88EB, 0xE442,
- 0x88EC, 0xE441, 0x88EE, 0xE3FB, 0x88EF, 0xBB76, 0x88F0, 0xE440,
- 0x88F1, 0xE3F7, 0x88F2, 0xE3F8, 0x88F3, 0xBB6E, 0x88F4, 0xBB70,
- 0x88F6, 0xE3FD, 0x88F7, 0xE3F5, 0x88F8, 0xBB72, 0x88F9, 0xBB71,
- 0x88FA, 0xE3F9, 0x88FB, 0xE3FE, 0x88FC, 0xE3FC, 0x88FD, 0xBB73,
- 0x88FE, 0xE3FA, 0x8901, 0xDBCE, 0x8902, 0xBB6F, 0x8905, 0xE7C2,
- 0x8906, 0xE7C9, 0x8907, 0xBDC6, 0x8909, 0xE7CD, 0x890A, 0xBDCA,
- 0x890B, 0xE7C5, 0x890C, 0xE7C3, 0x890E, 0xE7CC, 0x8910, 0xBDC5,
- 0x8911, 0xE7CB, 0x8912, 0xBDC7, 0x8913, 0xBDC8, 0x8914, 0xE7C4,
- 0x8915, 0xBDC9, 0x8916, 0xE7CA, 0x8917, 0xE7C6, 0x8918, 0xE7C7,
- 0x8919, 0xE7C8, 0x891A, 0xBB75, 0x891E, 0xEB70, 0x891F, 0xEB7C,
- 0x8921, 0xBFCA, 0x8922, 0xEB77, 0x8923, 0xEB79, 0x8925, 0xBFC8,
- 0x8926, 0xEB71, 0x8927, 0xEB75, 0x8929, 0xEB78, 0x892A, 0xBFC6,
- 0x892B, 0xBFC9, 0x892C, 0xEB7B, 0x892D, 0xEB73, 0x892E, 0xEB74,
- 0x892F, 0xEB7A, 0x8930, 0xEB72, 0x8931, 0xEB76, 0x8932, 0xBFC7,
- 0x8933, 0xEE72, 0x8935, 0xEE71, 0x8936, 0xC1B7, 0x8937, 0xEE77,
- 0x8938, 0xC1B9, 0x893B, 0xC1B6, 0x893C, 0xEE73, 0x893D, 0xC1BA,
- 0x893E, 0xEE74, 0x8941, 0xEE75, 0x8942, 0xEE78, 0x8944, 0xC1B8,
- 0x8946, 0xF0D6, 0x8949, 0xF0D9, 0x894B, 0xF0D3, 0x894C, 0xF0D5,
- 0x894F, 0xF0D4, 0x8950, 0xF0D7, 0x8951, 0xF0D8, 0x8952, 0xEE76,
- 0x8953, 0xF0D2, 0x8956, 0xC3CD, 0x8957, 0xF2EC, 0x8958, 0xF2EF,
- 0x8959, 0xF2F1, 0x895A, 0xF2EA, 0x895B, 0xF2EB, 0x895C, 0xF2EE,
- 0x895D, 0xF2F0, 0x895E, 0xC3CE, 0x895F, 0xC3CC, 0x8960, 0xC3CB,
- 0x8961, 0xF2ED, 0x8962, 0xF2E9, 0x8963, 0xF4CA, 0x8964, 0xC4B0,
- 0x8966, 0xF4CB, 0x8969, 0xF649, 0x896A, 0xC4FB, 0x896B, 0xF64B,
- 0x896C, 0xC4FC, 0x896D, 0xF648, 0x896E, 0xF64A, 0x896F, 0xC5A8,
- 0x8971, 0xF752, 0x8972, 0xC5A7, 0x8973, 0xF7FD, 0x8974, 0xF7FC,
- 0x8976, 0xF7FB, 0x8979, 0xF948, 0x897A, 0xF949, 0x897B, 0xF94B,
- 0x897C, 0xF94A, 0x897E, 0xCA50, 0x897F, 0xA6E8, 0x8981, 0xAD6E,
- 0x8982, 0xD7C5, 0x8983, 0xB5F7, 0x8985, 0xDFFA, 0x8986, 0xC2D0,
- 0x8988, 0xF2F2, 0x898B, 0xA8A3, 0x898F, 0xB357, 0x8993, 0xB356,
- 0x8995, 0xDBD0, 0x8996, 0xB5F8, 0x8997, 0xDBD2, 0x8998, 0xDBD1,
- 0x899B, 0xDFFB, 0x899C, 0xB8D0, 0x899D, 0xE443, 0x899E, 0xE446,
- 0x899F, 0xE445, 0x89A1, 0xE444, 0x89A2, 0xE7CE, 0x89A3, 0xE7D0,
- 0x89A4, 0xE7CF, 0x89A6, 0xBFCC, 0x89AA, 0xBFCB, 0x89AC, 0xC1BB,
- 0x89AD, 0xEE79, 0x89AE, 0xEE7B, 0x89AF, 0xEE7A, 0x89B2, 0xC2D1,
- 0x89B6, 0xF2F4, 0x89B7, 0xF2F3, 0x89B9, 0xF4CC, 0x89BA, 0xC4B1,
- 0x89BD, 0xC4FD, 0x89BE, 0xF754, 0x89BF, 0xF753, 0x89C0, 0xC65B,
- 0x89D2, 0xA8A4, 0x89D3, 0xD0AF, 0x89D4, 0xAD6F, 0x89D5, 0xD7C8,
- 0x89D6, 0xD7C6, 0x89D9, 0xD7C7, 0x89DA, 0xDBD4, 0x89DB, 0xDBD5,
- 0x89DC, 0xE043, 0x89DD, 0xDBD3, 0x89DF, 0xDFFC, 0x89E0, 0xE041,
- 0x89E1, 0xE040, 0x89E2, 0xE042, 0x89E3, 0xB8D1, 0x89E4, 0xDFFE,
- 0x89E5, 0xDFFD, 0x89E6, 0xE044, 0x89E8, 0xE449, 0x89E9, 0xE447,
- 0x89EB, 0xE448, 0x89EC, 0xE7D3, 0x89ED, 0xE7D1, 0x89F0, 0xE7D2,
- 0x89F1, 0xEB7D, 0x89F2, 0xEE7C, 0x89F3, 0xEE7D, 0x89F4, 0xC2D2,
- 0x89F6, 0xF2F5, 0x89F7, 0xF4CD, 0x89F8, 0xC4B2, 0x89FA, 0xF64C,
- 0x89FB, 0xF755, 0x89FC, 0xC5A9, 0x89FE, 0xF7FE, 0x89FF, 0xF94C,
- 0x8A00, 0xA8A5, 0x8A02, 0xAD71, 0x8A03, 0xAD72, 0x8A04, 0xD0B0,
- 0x8A07, 0xD0B1, 0x8A08, 0xAD70, 0x8A0A, 0xB054, 0x8A0C, 0xB052,
- 0x8A0E, 0xB051, 0x8A0F, 0xB058, 0x8A10, 0xB050, 0x8A11, 0xB059,
- 0x8A12, 0xD3DD, 0x8A13, 0xB056, 0x8A15, 0xB053, 0x8A16, 0xB057,
- 0x8A17, 0xB055, 0x8A18, 0xB04F, 0x8A1B, 0xB35F, 0x8A1D, 0xB359,
- 0x8A1E, 0xD7CC, 0x8A1F, 0xB35E, 0x8A22, 0xB360, 0x8A23, 0xB35A,
- 0x8A25, 0xB35B, 0x8A27, 0xD7CA, 0x8A2A, 0xB358, 0x8A2C, 0xD7CB,
- 0x8A2D, 0xB35D, 0x8A30, 0xD7C9, 0x8A31, 0xB35C, 0x8A34, 0xB644,
- 0x8A36, 0xB646, 0x8A39, 0xDBD8, 0x8A3A, 0xB645, 0x8A3B, 0xB5F9,
- 0x8A3C, 0xB5FD, 0x8A3E, 0xB8E4, 0x8A3F, 0xE049, 0x8A40, 0xDBDA,
- 0x8A41, 0xB5FE, 0x8A44, 0xDBDD, 0x8A45, 0xDBDE, 0x8A46, 0xB643,
- 0x8A48, 0xDBE0, 0x8A4A, 0xDBE2, 0x8A4C, 0xDBE3, 0x8A4D, 0xDBD7,
- 0x8A4E, 0xDBD6, 0x8A4F, 0xDBE4, 0x8A50, 0xB642, 0x8A51, 0xDBE1,
- 0x8A52, 0xDBDF, 0x8A54, 0xB640, 0x8A55, 0xB5FB, 0x8A56, 0xB647,
- 0x8A57, 0xDBDB, 0x8A58, 0xDBDC, 0x8A59, 0xDBD9, 0x8A5B, 0xB641,
- 0x8A5E, 0xB5FC, 0x8A60, 0xB5FA, 0x8A61, 0xE048, 0x8A62, 0xB8DF,
- 0x8A63, 0xB8DA, 0x8A66, 0xB8D5, 0x8A68, 0xB8E5, 0x8A69, 0xB8D6,
- 0x8A6B, 0xB8D2, 0x8A6C, 0xB8E1, 0x8A6D, 0xB8DE, 0x8A6E, 0xB8E0,
- 0x8A70, 0xB8D7, 0x8A71, 0xB8DC, 0x8A72, 0xB8D3, 0x8A73, 0xB8D4,
- 0x8A74, 0xE050, 0x8A75, 0xE04D, 0x8A76, 0xE045, 0x8A77, 0xE04A,
- 0x8A79, 0xB8E2, 0x8A7A, 0xE051, 0x8A7B, 0xB8E3, 0x8A7C, 0xB8D9,
- 0x8A7F, 0xE047, 0x8A81, 0xE04F, 0x8A82, 0xE04B, 0x8A83, 0xE04E,
- 0x8A84, 0xE04C, 0x8A85, 0xB8DD, 0x8A86, 0xE046, 0x8A87, 0xB8D8,
- 0x8A8B, 0xE44C, 0x8A8C, 0xBB78, 0x8A8D, 0xBB7B, 0x8A8F, 0xE44E,
- 0x8A91, 0xBBA5, 0x8A92, 0xE44D, 0x8A93, 0xBB7D, 0x8A95, 0xBDCF,
- 0x8A96, 0xE44F, 0x8A98, 0xBBA4, 0x8A99, 0xE44B, 0x8A9A, 0xBBA6,
- 0x8A9E, 0xBB79, 0x8AA0, 0xB8DB, 0x8AA1, 0xBB7C, 0x8AA3, 0xBB7A,
- 0x8AA4, 0xBB7E, 0x8AA5, 0xBBA2, 0x8AA6, 0xBB77, 0x8AA7, 0xBBA7,
- 0x8AA8, 0xBBA3, 0x8AAA, 0xBBA1, 0x8AAB, 0xE44A, 0x8AB0, 0xBDD6,
- 0x8AB2, 0xBDD2, 0x8AB6, 0xBDD9, 0x8AB8, 0xE7D6, 0x8AB9, 0xBDDA,
- 0x8ABA, 0xE7E2, 0x8ABB, 0xE7DB, 0x8ABC, 0xBDCB, 0x8ABD, 0xE7E3,
- 0x8ABE, 0xE7DD, 0x8ABF, 0xBDD5, 0x8AC0, 0xE7DE, 0x8AC2, 0xBDD4,
- 0x8AC3, 0xE7E1, 0x8AC4, 0xBDCE, 0x8AC5, 0xE7DF, 0x8AC6, 0xE7D5,
- 0x8AC7, 0xBDCD, 0x8AC8, 0xEBAA, 0x8AC9, 0xBDD3, 0x8ACB, 0xBDD0,
- 0x8ACD, 0xBDD8, 0x8ACF, 0xE7D4, 0x8AD1, 0xE7D8, 0x8AD2, 0xBDCC,
- 0x8AD3, 0xE7D7, 0x8AD4, 0xE7D9, 0x8AD5, 0xE7DA, 0x8AD6, 0xBDD7,
- 0x8AD7, 0xE7DC, 0x8AD8, 0xE7E0, 0x8AD9, 0xE7E4, 0x8ADB, 0xBDDB,
- 0x8ADC, 0xBFD2, 0x8ADD, 0xEBA5, 0x8ADE, 0xEBAB, 0x8ADF, 0xEBA8,
- 0x8AE0, 0xEB7E, 0x8AE1, 0xEBAC, 0x8AE2, 0xEBA1, 0x8AE4, 0xEBA7,
- 0x8AE6, 0xBFCD, 0x8AE7, 0xBFD3, 0x8AE8, 0xEBAD, 0x8AEB, 0xBFCF,
- 0x8AED, 0xBFD9, 0x8AEE, 0xBFD4, 0x8AEF, 0xEBAF, 0x8AF0, 0xEBA9,
- 0x8AF1, 0xBFD0, 0x8AF2, 0xEBA2, 0x8AF3, 0xBFDA, 0x8AF4, 0xEBA3,
- 0x8AF5, 0xEBA4, 0x8AF6, 0xBFDB, 0x8AF7, 0xBFD8, 0x8AF8, 0xBDD1,
- 0x8AFA, 0xBFCE, 0x8AFB, 0xEBB0, 0x8AFC, 0xBFDC, 0x8AFE, 0xBFD5,
- 0x8AFF, 0xEBAE, 0x8B00, 0xBFD1, 0x8B01, 0xBFD6, 0x8B02, 0xBFD7,
- 0x8B04, 0xC1C3, 0x8B05, 0xEEA4, 0x8B06, 0xEEAD, 0x8B07, 0xEEAA,
- 0x8B08, 0xEEAC, 0x8B0A, 0xC1C0, 0x8B0B, 0xEEA5, 0x8B0D, 0xEEAB,
- 0x8B0E, 0xC1BC, 0x8B0F, 0xEEA7, 0x8B10, 0xC1C4, 0x8B11, 0xEEA3,
- 0x8B12, 0xEEA8, 0x8B13, 0xEEAF, 0x8B14, 0xEBA6, 0x8B15, 0xEEA9,
- 0x8B16, 0xEEA2, 0x8B17, 0xC1BD, 0x8B18, 0xEEA1, 0x8B19, 0xC1BE,
- 0x8B1A, 0xEEB0, 0x8B1B, 0xC1BF, 0x8B1C, 0xEEAE, 0x8B1D, 0xC1C2,
- 0x8B1E, 0xEE7E, 0x8B20, 0xC1C1, 0x8B22, 0xEEA6, 0x8B23, 0xF0DC,
- 0x8B24, 0xF0EA, 0x8B25, 0xF0E5, 0x8B26, 0xF0E7, 0x8B27, 0xF0DB,
- 0x8B28, 0xC2D3, 0x8B2A, 0xF0DA, 0x8B2B, 0xC2D6, 0x8B2C, 0xC2D5,
- 0x8B2E, 0xF0E9, 0x8B2F, 0xF0E1, 0x8B30, 0xF0DE, 0x8B31, 0xF0E4,
- 0x8B33, 0xF0DD, 0x8B35, 0xF0DF, 0x8B36, 0xF0E8, 0x8B37, 0xF0E6,
- 0x8B39, 0xC2D4, 0x8B3A, 0xF0ED, 0x8B3B, 0xF0EB, 0x8B3C, 0xF0E2,
- 0x8B3D, 0xF0EC, 0x8B3E, 0xF0E3, 0x8B40, 0xF2F9, 0x8B41, 0xC3CF,
- 0x8B42, 0xF341, 0x8B45, 0xF64F, 0x8B46, 0xC3D6, 0x8B47, 0xF0E0,
- 0x8B48, 0xF2F7, 0x8B49, 0xC3D2, 0x8B4A, 0xF2F8, 0x8B4B, 0xF2FD,
- 0x8B4E, 0xC3D4, 0x8B4F, 0xC3D5, 0x8B50, 0xF2F6, 0x8B51, 0xF340,
- 0x8B52, 0xF342, 0x8B53, 0xF2FA, 0x8B54, 0xF2FC, 0x8B55, 0xF2FE,
- 0x8B56, 0xF2FB, 0x8B57, 0xF343, 0x8B58, 0xC3D1, 0x8B59, 0xC3D7,
- 0x8B5A, 0xC3D3, 0x8B5C, 0xC3D0, 0x8B5D, 0xF4D0, 0x8B5F, 0xC4B7,
- 0x8B60, 0xF4CE, 0x8B63, 0xF4D2, 0x8B65, 0xF4D3, 0x8B66, 0xC4B5,
- 0x8B67, 0xF4D4, 0x8B68, 0xF4D1, 0x8B6A, 0xF4CF, 0x8B6B, 0xC4B8,
- 0x8B6C, 0xC4B4, 0x8B6D, 0xF4D5, 0x8B6F, 0xC4B6, 0x8B70, 0xC4B3,
- 0x8B74, 0xC4FE, 0x8B77, 0xC540, 0x8B78, 0xF64E, 0x8B79, 0xF64D,
- 0x8B7A, 0xF650, 0x8B7B, 0xF651, 0x8B7D, 0xC541, 0x8B7E, 0xF756,
- 0x8B7F, 0xF75B, 0x8B80, 0xC5AA, 0x8B82, 0xF758, 0x8B84, 0xF757,
- 0x8B85, 0xF75A, 0x8B86, 0xF759, 0x8B88, 0xF843, 0x8B8A, 0xC5DC,
- 0x8B8B, 0xF842, 0x8B8C, 0xF840, 0x8B8E, 0xF841, 0x8B92, 0xC5FE,
- 0x8B93, 0xC5FD, 0x8B94, 0xF8C1, 0x8B95, 0xF8C2, 0x8B96, 0xC640,
- 0x8B98, 0xF94D, 0x8B99, 0xF94E, 0x8B9A, 0xC667, 0x8B9C, 0xC66D,
- 0x8B9E, 0xF9A9, 0x8B9F, 0xF9C8, 0x8C37, 0xA8A6, 0x8C39, 0xD7CD,
- 0x8C3B, 0xD7CE, 0x8C3C, 0xE052, 0x8C3D, 0xE450, 0x8C3E, 0xE7E5,
- 0x8C3F, 0xC1C6, 0x8C41, 0xC1C5, 0x8C42, 0xF0EE, 0x8C43, 0xF344,
- 0x8C45, 0xF844, 0x8C46, 0xA8A7, 0x8C47, 0xD3DE, 0x8C48, 0xB05A,
- 0x8C49, 0xB361, 0x8C4A, 0xE054, 0x8C4B, 0xE053, 0x8C4C, 0xBDDC,
- 0x8C4D, 0xE7E6, 0x8C4E, 0xBDDD, 0x8C4F, 0xEEB1, 0x8C50, 0xC2D7,
- 0x8C54, 0xC676, 0x8C55, 0xA8A8, 0x8C56, 0xCDCB, 0x8C57, 0xD3DF,
- 0x8C5A, 0xB362, 0x8C5C, 0xD7CF, 0x8C5D, 0xD7D0, 0x8C5F, 0xDBE5,
- 0x8C61, 0xB648, 0x8C62, 0xB8E6, 0x8C64, 0xE056, 0x8C65, 0xE055,
- 0x8C66, 0xE057, 0x8C68, 0xE451, 0x8C69, 0xE452, 0x8C6A, 0xBBA8,
- 0x8C6B, 0xBFDD, 0x8C6C, 0xBDDE, 0x8C6D, 0xBFDE, 0x8C6F, 0xEEB5,
- 0x8C70, 0xEEB2, 0x8C71, 0xEEB4, 0x8C72, 0xEEB3, 0x8C73, 0xC1C7,
- 0x8C75, 0xF0EF, 0x8C76, 0xF346, 0x8C77, 0xF345, 0x8C78, 0xCBA4,
- 0x8C79, 0xB05C, 0x8C7A, 0xB05B, 0x8C7B, 0xD3E0, 0x8C7D, 0xD7D1,
- 0x8C80, 0xDBE7, 0x8C81, 0xDBE6, 0x8C82, 0xB649, 0x8C84, 0xE059,
- 0x8C85, 0xE05A, 0x8C86, 0xE058, 0x8C89, 0xB8E8, 0x8C8A, 0xB8E7,
- 0x8C8C, 0xBBAA, 0x8C8D, 0xBBA9, 0x8C8F, 0xE7E7, 0x8C90, 0xEBB3,
- 0x8C91, 0xEBB1, 0x8C92, 0xEBB2, 0x8C93, 0xBFDF, 0x8C94, 0xEEB7,
- 0x8C95, 0xEEB6, 0x8C97, 0xF0F2, 0x8C98, 0xF0F1, 0x8C99, 0xF0F0,
- 0x8C9A, 0xF347, 0x8C9C, 0xF9AA, 0x8C9D, 0xA8A9, 0x8C9E, 0xAD73,
- 0x8CA0, 0xAD74, 0x8CA1, 0xB05D, 0x8CA2, 0xB05E, 0x8CA3, 0xD3E2,
- 0x8CA4, 0xD3E1, 0x8CA5, 0xD7D2, 0x8CA7, 0xB368, 0x8CA8, 0xB366,
- 0x8CA9, 0xB363, 0x8CAA, 0xB367, 0x8CAB, 0xB365, 0x8CAC, 0xB364,
- 0x8CAF, 0xB64A, 0x8CB0, 0xDBEA, 0x8CB2, 0xB8ED, 0x8CB3, 0xB64C,
- 0x8CB4, 0xB651, 0x8CB5, 0xDBEC, 0x8CB6, 0xB653, 0x8CB7, 0xB652,
- 0x8CB8, 0xB655, 0x8CB9, 0xDBEB, 0x8CBA, 0xDBE8, 0x8CBB, 0xB64F,
- 0x8CBC, 0xB64B, 0x8CBD, 0xB64D, 0x8CBE, 0xDBE9, 0x8CBF, 0xB654,
- 0x8CC0, 0xB650, 0x8CC1, 0xB64E, 0x8CC2, 0xB8EF, 0x8CC3, 0xB8EE,
- 0x8CC4, 0xB8EC, 0x8CC5, 0xB8F0, 0x8CC7, 0xB8EA, 0x8CC8, 0xB8EB,
- 0x8CCA, 0xB8E9, 0x8CCC, 0xE05B, 0x8CCF, 0xE454, 0x8CD1, 0xBBAC,
- 0x8CD2, 0xBBAD, 0x8CD3, 0xBBAB, 0x8CD5, 0xE453, 0x8CD7, 0xE455,
- 0x8CD9, 0xE7EA, 0x8CDA, 0xE7EC, 0x8CDC, 0xBDE7, 0x8CDD, 0xE7ED,
- 0x8CDE, 0xBDE0, 0x8CDF, 0xE7E9, 0x8CE0, 0xBDDF, 0x8CE1, 0xBDE9,
- 0x8CE2, 0xBDE5, 0x8CE3, 0xBDE6, 0x8CE4, 0xBDE2, 0x8CE5, 0xE7E8,
- 0x8CE6, 0xBDE1, 0x8CE7, 0xE7EE, 0x8CE8, 0xE7EB, 0x8CEA, 0xBDE8,
- 0x8CEC, 0xBDE3, 0x8CED, 0xBDE4, 0x8CEE, 0xEBB5, 0x8CF0, 0xEBB7,
- 0x8CF1, 0xEBB6, 0x8CF3, 0xEBB8, 0x8CF4, 0xBFE0, 0x8CF5, 0xEBB4,
- 0x8CF8, 0xC1CB, 0x8CF9, 0xEEB8, 0x8CFA, 0xC1C8, 0x8CFB, 0xC1CC,
- 0x8CFC, 0xC1CA, 0x8CFD, 0xC1C9, 0x8CFE, 0xF0F3, 0x8D00, 0xF0F6,
- 0x8D02, 0xF0F5, 0x8D04, 0xF0F4, 0x8D05, 0xC2D8, 0x8D06, 0xF348,
- 0x8D07, 0xF349, 0x8D08, 0xC3D8, 0x8D09, 0xF34A, 0x8D0A, 0xC3D9,
- 0x8D0D, 0xC4BA, 0x8D0F, 0xC4B9, 0x8D10, 0xF652, 0x8D13, 0xC542,
- 0x8D14, 0xF653, 0x8D15, 0xF75C, 0x8D16, 0xC5AB, 0x8D17, 0xC5AC,
- 0x8D19, 0xF845, 0x8D1B, 0xC642, 0x8D64, 0xA8AA, 0x8D66, 0xB36A,
- 0x8D67, 0xB369, 0x8D68, 0xE05C, 0x8D69, 0xE05D, 0x8D6B, 0xBBAE,
- 0x8D6C, 0xEBB9, 0x8D6D, 0xBDEA, 0x8D6E, 0xEBBA, 0x8D6F, 0xEEB9,
- 0x8D70, 0xA8AB, 0x8D72, 0xD0B2, 0x8D73, 0xAD76, 0x8D74, 0xAD75,
- 0x8D76, 0xD3E3, 0x8D77, 0xB05F, 0x8D78, 0xD3E4, 0x8D79, 0xD7D5,
- 0x8D7B, 0xD7D4, 0x8D7D, 0xD7D3, 0x8D80, 0xDBEE, 0x8D81, 0xB658,
- 0x8D84, 0xDBED, 0x8D85, 0xB657, 0x8D89, 0xDBEF, 0x8D8A, 0xB656,
- 0x8D8C, 0xE05F, 0x8D8D, 0xE062, 0x8D8E, 0xE060, 0x8D8F, 0xE061,
- 0x8D90, 0xE065, 0x8D91, 0xE05E, 0x8D92, 0xE066, 0x8D93, 0xE063,
- 0x8D94, 0xE064, 0x8D95, 0xBBB0, 0x8D96, 0xE456, 0x8D99, 0xBBAF,
- 0x8D9B, 0xE7F2, 0x8D9C, 0xE7F0, 0x8D9F, 0xBDEB, 0x8DA0, 0xE7EF,
- 0x8DA1, 0xE7F1, 0x8DA3, 0xBDEC, 0x8DA5, 0xEBBB, 0x8DA7, 0xEBBC,
- 0x8DA8, 0xC1CD, 0x8DAA, 0xF34C, 0x8DAB, 0xF34E, 0x8DAC, 0xF34B,
- 0x8DAD, 0xF34D, 0x8DAE, 0xF4D6, 0x8DAF, 0xF654, 0x8DB2, 0xF96F,
- 0x8DB3, 0xA8AC, 0x8DB4, 0xAD77, 0x8DB5, 0xD3E5, 0x8DB6, 0xD3E7,
- 0x8DB7, 0xD3E6, 0x8DB9, 0xD7D8, 0x8DBA, 0xB36C, 0x8DBC, 0xD7D6,
- 0x8DBE, 0xB36B, 0x8DBF, 0xD7D9, 0x8DC1, 0xD7DA, 0x8DC2, 0xD7D7,
- 0x8DC5, 0xDBFB, 0x8DC6, 0xB660, 0x8DC7, 0xDBF3, 0x8DC8, 0xDBF9,
- 0x8DCB, 0xB65B, 0x8DCC, 0xB65E, 0x8DCD, 0xDBF2, 0x8DCE, 0xB659,
- 0x8DCF, 0xDBF6, 0x8DD0, 0xE06C, 0x8DD1, 0xB65D, 0x8DD3, 0xDBF1,
- 0x8DD5, 0xDBF7, 0x8DD6, 0xDBF4, 0x8DD7, 0xDBFA, 0x8DD8, 0xDBF0,
- 0x8DD9, 0xDBF8, 0x8DDA, 0xB65C, 0x8DDB, 0xB65F, 0x8DDC, 0xDBF5,
- 0x8DDD, 0xB65A, 0x8DDF, 0xB8F2, 0x8DE0, 0xE068, 0x8DE1, 0xB8F1,
- 0x8DE2, 0xE06F, 0x8DE3, 0xE06E, 0x8DE4, 0xB8F8, 0x8DE6, 0xB8F9,
- 0x8DE7, 0xE070, 0x8DE8, 0xB8F3, 0x8DE9, 0xE06D, 0x8DEA, 0xB8F7,
- 0x8DEB, 0xE072, 0x8DEC, 0xE069, 0x8DEE, 0xE06B, 0x8DEF, 0xB8F4,
- 0x8DF0, 0xE067, 0x8DF1, 0xE06A, 0x8DF2, 0xE071, 0x8DF3, 0xB8F5,
- 0x8DF4, 0xE073, 0x8DFA, 0xB8F6, 0x8DFC, 0xBBB1, 0x8DFD, 0xE45B,
- 0x8DFE, 0xE461, 0x8DFF, 0xE459, 0x8E00, 0xE462, 0x8E02, 0xE458,
- 0x8E03, 0xE45D, 0x8E04, 0xE463, 0x8E05, 0xE460, 0x8E06, 0xE45F,
- 0x8E07, 0xE45E, 0x8E09, 0xE457, 0x8E0A, 0xE45C, 0x8E0D, 0xE45A,
- 0x8E0F, 0xBDF1, 0x8E10, 0xBDEE, 0x8E11, 0xE7FB, 0x8E12, 0xE841,
- 0x8E13, 0xE843, 0x8E14, 0xE840, 0x8E15, 0xE7F8, 0x8E16, 0xE7FA,
- 0x8E17, 0xE845, 0x8E18, 0xE842, 0x8E19, 0xE7FC, 0x8E1A, 0xE846,
- 0x8E1B, 0xE7F9, 0x8E1C, 0xE844, 0x8E1D, 0xBDEF, 0x8E1E, 0xBDF5,
- 0x8E1F, 0xBDF3, 0x8E20, 0xE7F3, 0x8E21, 0xBDF4, 0x8E22, 0xBDF0,
- 0x8E23, 0xE7F4, 0x8E24, 0xE7F6, 0x8E25, 0xE7F5, 0x8E26, 0xE7FD,
- 0x8E27, 0xE7FE, 0x8E29, 0xBDF2, 0x8E2B, 0xBDED, 0x8E2E, 0xE7F7,
- 0x8E30, 0xEBC6, 0x8E31, 0xBFE2, 0x8E33, 0xEBBD, 0x8E34, 0xBFE3,
- 0x8E35, 0xBFE6, 0x8E36, 0xEBC2, 0x8E38, 0xEBBF, 0x8E39, 0xBFE5,
- 0x8E3C, 0xEBC3, 0x8E3D, 0xEBC4, 0x8E3E, 0xEBBE, 0x8E3F, 0xEBC7,
- 0x8E40, 0xEBC0, 0x8E41, 0xEBC5, 0x8E42, 0xBFE4, 0x8E44, 0xBFE1,
- 0x8E45, 0xEBC1, 0x8E47, 0xEEBF, 0x8E48, 0xC1D0, 0x8E49, 0xC1CE,
- 0x8E4A, 0xC1D1, 0x8E4B, 0xC1CF, 0x8E4C, 0xEEBE, 0x8E4D, 0xEEBB,
- 0x8E4E, 0xEEBA, 0x8E50, 0xEEBD, 0x8E53, 0xEEBC, 0x8E54, 0xF145,
- 0x8E55, 0xC2DE, 0x8E56, 0xF0FB, 0x8E57, 0xF0FA, 0x8E59, 0xC2D9,
- 0x8E5A, 0xF141, 0x8E5B, 0xF140, 0x8E5C, 0xF0F7, 0x8E5D, 0xF143,
- 0x8E5E, 0xF0FC, 0x8E5F, 0xC2DD, 0x8E60, 0xF0F9, 0x8E61, 0xF142,
- 0x8E62, 0xF0F8, 0x8E63, 0xC2DA, 0x8E64, 0xC2DC, 0x8E65, 0xF0FD,
- 0x8E66, 0xC2DB, 0x8E67, 0xF0FE, 0x8E69, 0xF144, 0x8E6A, 0xF352,
- 0x8E6C, 0xC3DE, 0x8E6D, 0xF34F, 0x8E6F, 0xF353, 0x8E72, 0xC3DB,
- 0x8E73, 0xF351, 0x8E74, 0xC3E0, 0x8E76, 0xC3DD, 0x8E78, 0xF350,
- 0x8E7A, 0xC3DF, 0x8E7B, 0xF354, 0x8E7C, 0xC3DA, 0x8E81, 0xC4BC,
- 0x8E82, 0xC4BE, 0x8E84, 0xF4D9, 0x8E85, 0xC4BD, 0x8E86, 0xF4D7,
- 0x8E87, 0xC3DC, 0x8E88, 0xF4D8, 0x8E89, 0xC4BB, 0x8E8A, 0xC543,
- 0x8E8B, 0xC545, 0x8E8C, 0xF656, 0x8E8D, 0xC544, 0x8E8E, 0xF655,
- 0x8E90, 0xF761, 0x8E91, 0xC5AD, 0x8E92, 0xF760, 0x8E93, 0xC5AE,
- 0x8E94, 0xF75E, 0x8E95, 0xF75D, 0x8E96, 0xF762, 0x8E97, 0xF763,
- 0x8E98, 0xF846, 0x8E9A, 0xF75F, 0x8E9D, 0xF8C6, 0x8E9E, 0xF8C3,
- 0x8E9F, 0xF8C4, 0x8EA0, 0xF8C5, 0x8EA1, 0xC65C, 0x8EA3, 0xF951,
- 0x8EA4, 0xF950, 0x8EA5, 0xF94F, 0x8EA6, 0xF970, 0x8EA8, 0xF9BE,
- 0x8EA9, 0xF9AB, 0x8EAA, 0xC66E, 0x8EAB, 0xA8AD, 0x8EAC, 0xB060,
- 0x8EB2, 0xB8FA, 0x8EBA, 0xBDF6, 0x8EBD, 0xEBC8, 0x8EC0, 0xC2DF,
- 0x8EC2, 0xF355, 0x8EC9, 0xF9AC, 0x8ECA, 0xA8AE, 0x8ECB, 0xAAEE,
- 0x8ECC, 0xAD79, 0x8ECD, 0xAD78, 0x8ECF, 0xB063, 0x8ED1, 0xD3E8,
- 0x8ED2, 0xB061, 0x8ED3, 0xD3E9, 0x8ED4, 0xB062, 0x8ED7, 0xD7DF,
- 0x8ED8, 0xD7DB, 0x8EDB, 0xB36D, 0x8EDC, 0xD7DE, 0x8EDD, 0xD7DD,
- 0x8EDE, 0xD7DC, 0x8EDF, 0xB36E, 0x8EE0, 0xD7E0, 0x8EE1, 0xD7E1,
- 0x8EE5, 0xDC43, 0x8EE6, 0xDC41, 0x8EE7, 0xDC45, 0x8EE8, 0xDC46,
- 0x8EE9, 0xDC4C, 0x8EEB, 0xDC48, 0x8EEC, 0xDC4A, 0x8EEE, 0xDC42,
- 0x8EEF, 0xDBFC, 0x8EF1, 0xDC49, 0x8EF4, 0xDC4B, 0x8EF5, 0xDC44,
- 0x8EF6, 0xDC47, 0x8EF7, 0xDBFD, 0x8EF8, 0xB662, 0x8EF9, 0xDC40,
- 0x8EFA, 0xDBFE, 0x8EFB, 0xB661, 0x8EFC, 0xB663, 0x8EFE, 0xB8FD,
- 0x8EFF, 0xE075, 0x8F00, 0xE077, 0x8F01, 0xE076, 0x8F02, 0xE07B,
- 0x8F03, 0xB8FB, 0x8F05, 0xE078, 0x8F06, 0xE074, 0x8F07, 0xE079,
- 0x8F08, 0xE07A, 0x8F09, 0xB8FC, 0x8F0A, 0xB8FE, 0x8F0B, 0xE07C,
- 0x8F0D, 0xE467, 0x8F0E, 0xE466, 0x8F10, 0xE464, 0x8F11, 0xE465,
- 0x8F12, 0xBBB3, 0x8F13, 0xBBB5, 0x8F14, 0xBBB2, 0x8F15, 0xBBB4,
- 0x8F16, 0xE84D, 0x8F17, 0xE84E, 0x8F18, 0xE849, 0x8F1A, 0xE84A,
- 0x8F1B, 0xBDF8, 0x8F1C, 0xBDFD, 0x8F1D, 0xBDF7, 0x8F1E, 0xBDFE,
- 0x8F1F, 0xBDF9, 0x8F20, 0xE84B, 0x8F23, 0xE84C, 0x8F24, 0xE848,
- 0x8F25, 0xBE40, 0x8F26, 0xBDFB, 0x8F29, 0xBDFA, 0x8F2A, 0xBDFC,
- 0x8F2C, 0xE847, 0x8F2E, 0xEBCA, 0x8F2F, 0xBFE8, 0x8F32, 0xEBCC,
- 0x8F33, 0xBFEA, 0x8F34, 0xEBCF, 0x8F35, 0xEBCB, 0x8F36, 0xEBC9,
- 0x8F37, 0xEBCE, 0x8F38, 0xBFE9, 0x8F39, 0xEBCD, 0x8F3B, 0xBFE7,
- 0x8F3E, 0xC1D3, 0x8F3F, 0xC1D6, 0x8F40, 0xEEC1, 0x8F42, 0xC1D4,
- 0x8F43, 0xEEC0, 0x8F44, 0xC1D2, 0x8F45, 0xC1D5, 0x8F46, 0xF146,
- 0x8F47, 0xF147, 0x8F48, 0xF148, 0x8F49, 0xC2E0, 0x8F4B, 0xF149,
- 0x8F4D, 0xC2E1, 0x8F4E, 0xC3E2, 0x8F4F, 0xF358, 0x8F50, 0xF359,
- 0x8F51, 0xF357, 0x8F52, 0xF356, 0x8F53, 0xF35A, 0x8F54, 0xC3E1,
- 0x8F55, 0xF4DD, 0x8F56, 0xF4DB, 0x8F57, 0xF4DC, 0x8F58, 0xF4DE,
- 0x8F59, 0xF4DA, 0x8F5A, 0xF4DF, 0x8F5B, 0xF658, 0x8F5D, 0xF659,
- 0x8F5E, 0xF657, 0x8F5F, 0xC546, 0x8F60, 0xF764, 0x8F61, 0xC5AF,
- 0x8F62, 0xF765, 0x8F63, 0xF848, 0x8F64, 0xF847, 0x8F9B, 0xA8AF,
- 0x8F9C, 0xB664, 0x8F9F, 0xB940, 0x8FA3, 0xBBB6, 0x8FA6, 0xBFEC,
- 0x8FA8, 0xBFEB, 0x8FAD, 0xC3E3, 0x8FAE, 0xC47C, 0x8FAF, 0xC547,
- 0x8FB0, 0xA8B0, 0x8FB1, 0xB064, 0x8FB2, 0xB941, 0x8FB4, 0xF35B,
- 0x8FBF, 0xCBA6, 0x8FC2, 0xA8B1, 0x8FC4, 0xA8B4, 0x8FC5, 0xA8B3,
- 0x8FC6, 0xA8B2, 0x8FC9, 0xCBA5, 0x8FCB, 0xCDCD, 0x8FCD, 0xCDCF,
- 0x8FCE, 0xAAEF, 0x8FD1, 0xAAF1, 0x8FD2, 0xCDCC, 0x8FD3, 0xCDCE,
- 0x8FD4, 0xAAF0, 0x8FD5, 0xCDD1, 0x8FD6, 0xCDD0, 0x8FD7, 0xCDD2,
- 0x8FE0, 0xD0B6, 0x8FE1, 0xD0B4, 0x8FE2, 0xAD7C, 0x8FE3, 0xD0B3,
- 0x8FE4, 0xADA3, 0x8FE5, 0xAD7E, 0x8FE6, 0xAD7B, 0x8FE8, 0xADA4,
- 0x8FEA, 0xAD7D, 0x8FEB, 0xADA2, 0x8FED, 0xADA1, 0x8FEE, 0xD0B5,
- 0x8FF0, 0xAD7A, 0x8FF4, 0xB06A, 0x8FF5, 0xD3EB, 0x8FF6, 0xD3F1,
- 0x8FF7, 0xB067, 0x8FF8, 0xB06E, 0x8FFA, 0xB069, 0x8FFB, 0xD3EE,
- 0x8FFC, 0xD3F0, 0x8FFD, 0xB06C, 0x8FFE, 0xD3EA, 0x8FFF, 0xD3ED,
- 0x9000, 0xB068, 0x9001, 0xB065, 0x9002, 0xD3EC, 0x9003, 0xB06B,
- 0x9004, 0xD3EF, 0x9005, 0xB06D, 0x9006, 0xB066, 0x900B, 0xD7E3,
- 0x900C, 0xD7E6, 0x900D, 0xB370, 0x900F, 0xB37A, 0x9010, 0xB376,
- 0x9011, 0xD7E4, 0x9014, 0xB37E, 0x9015, 0xB377, 0x9016, 0xB37C,
- 0x9017, 0xB372, 0x9019, 0xB36F, 0x901A, 0xB371, 0x901B, 0xB37D,
- 0x901C, 0xD7E5, 0x901D, 0xB375, 0x901E, 0xB378, 0x901F, 0xB374,
- 0x9020, 0xB379, 0x9021, 0xD7E7, 0x9022, 0xB37B, 0x9023, 0xB373,
- 0x9024, 0xD7E2, 0x902D, 0xDC4D, 0x902E, 0xB665, 0x902F, 0xDC4F,
- 0x9031, 0xB667, 0x9032, 0xB669, 0x9034, 0xDC4E, 0x9035, 0xB666,
- 0x9036, 0xB66A, 0x9038, 0xB668, 0x903C, 0xB947, 0x903D, 0xE0A3,
- 0x903E, 0xB94F, 0x903F, 0xE07E, 0x9041, 0xB950, 0x9042, 0xB945,
- 0x9044, 0xE0A1, 0x9047, 0xB94A, 0x9049, 0xE0A2, 0x904A, 0xB943,
- 0x904B, 0xB942, 0x904D, 0xB94D, 0x904E, 0xB94C, 0x904F, 0xB94B,
- 0x9050, 0xB949, 0x9051, 0xB94E, 0x9052, 0xE07D, 0x9053, 0xB944,
- 0x9054, 0xB946, 0x9055, 0xB948, 0x9058, 0xBBB8, 0x9059, 0xBBBB,
- 0x905B, 0xBBBF, 0x905C, 0xBBB9, 0x905D, 0xBBBE, 0x905E, 0xBBBC,
- 0x9060, 0xBBB7, 0x9062, 0xBBBD, 0x9063, 0xBBBA, 0x9067, 0xE852,
- 0x9068, 0xBE43, 0x9069, 0xBE41, 0x906B, 0xE853, 0x906D, 0xBE44,
- 0x906E, 0xBE42, 0x906F, 0xE851, 0x9070, 0xE850, 0x9072, 0xBFF0,
- 0x9073, 0xE84F, 0x9074, 0xBFEE, 0x9075, 0xBFED, 0x9076, 0xEBD0,
- 0x9077, 0xBE45, 0x9078, 0xBFEF, 0x9079, 0xEBD1, 0x907A, 0xBFF2,
- 0x907B, 0xEBD2, 0x907C, 0xBFF1, 0x907D, 0xC1D8, 0x907E, 0xEEC3,
- 0x907F, 0xC1D7, 0x9080, 0xC1DC, 0x9081, 0xC1DA, 0x9082, 0xC1DB,
- 0x9083, 0xC2E3, 0x9084, 0xC1D9, 0x9085, 0xEEC2, 0x9086, 0xEBD3,
- 0x9087, 0xC2E2, 0x9088, 0xC2E4, 0x908A, 0xC3E4, 0x908B, 0xC3E5,
- 0x908D, 0xF4E0, 0x908F, 0xC5DE, 0x9090, 0xC5DD, 0x9091, 0xA8B6,
- 0x9094, 0xCA55, 0x9095, 0xB06F, 0x9097, 0xCA52, 0x9098, 0xCA53,
- 0x9099, 0xCA51, 0x909B, 0xCA54, 0x909E, 0xCBAA, 0x909F, 0xCBA7,
- 0x90A0, 0xCBAC, 0x90A1, 0xCBA8, 0x90A2, 0xA8B7, 0x90A3, 0xA8BA,
- 0x90A5, 0xCBA9, 0x90A6, 0xA8B9, 0x90A7, 0xCBAB, 0x90AA, 0xA8B8,
- 0x90AF, 0xCDD5, 0x90B0, 0xCDD7, 0x90B1, 0xAAF4, 0x90B2, 0xCDD3,
- 0x90B3, 0xCDD6, 0x90B4, 0xCDD4, 0x90B5, 0xAAF2, 0x90B6, 0xAAF5,
- 0x90B8, 0xAAF3, 0x90BD, 0xD0B8, 0x90BE, 0xD0BC, 0x90BF, 0xD0B9,
- 0x90C1, 0xADA7, 0x90C3, 0xADA8, 0x90C5, 0xD0BB, 0x90C7, 0xD0BD,
- 0x90C8, 0xD0BF, 0x90CA, 0xADA5, 0x90CB, 0xD0BE, 0x90CE, 0xADA6,
- 0x90D4, 0xD7EE, 0x90D5, 0xD0BA, 0x90D6, 0xD3F2, 0x90D7, 0xD3FB,
- 0x90D8, 0xD3F9, 0x90D9, 0xD3F4, 0x90DA, 0xD3F5, 0x90DB, 0xD3FA,
- 0x90DC, 0xD3FC, 0x90DD, 0xB071, 0x90DF, 0xD3F7, 0x90E0, 0xD3F3,
- 0x90E1, 0xB070, 0x90E2, 0xB072, 0x90E3, 0xD3F6, 0x90E4, 0xD3FD,
- 0x90E5, 0xD3F8, 0x90E8, 0xB3A1, 0x90E9, 0xD7F1, 0x90EA, 0xD7E9,
- 0x90EB, 0xD7EF, 0x90EC, 0xD7F0, 0x90ED, 0xB3A2, 0x90EF, 0xD7E8,
- 0x90F0, 0xD7EA, 0x90F1, 0xD0B7, 0x90F2, 0xD7EC, 0x90F3, 0xD7ED,
- 0x90F4, 0xD7EB, 0x90F5, 0xB66C, 0x90F9, 0xDC56, 0x90FA, 0xEBD4,
- 0x90FB, 0xDC57, 0x90FC, 0xDC54, 0x90FD, 0xB3A3, 0x90FE, 0xB66E,
- 0x90FF, 0xDC53, 0x9100, 0xDC59, 0x9101, 0xDC58, 0x9102, 0xB66B,
- 0x9103, 0xDC5C, 0x9104, 0xDC52, 0x9105, 0xDC5B, 0x9106, 0xDC50,
- 0x9107, 0xDC5A, 0x9108, 0xDC55, 0x9109, 0xB66D, 0x910B, 0xE0AA,
- 0x910D, 0xE0A5, 0x910E, 0xE0AB, 0x910F, 0xE0A6, 0x9110, 0xE0A4,
- 0x9111, 0xE0A7, 0x9112, 0xB951, 0x9114, 0xE0A9, 0x9116, 0xE0A8,
- 0x9117, 0xB952, 0x9118, 0xBBC1, 0x9119, 0xBBC0, 0x911A, 0xE46E,
- 0x911B, 0xE471, 0x911C, 0xE469, 0x911D, 0xE46D, 0x911E, 0xBBC2,
- 0x911F, 0xE46C, 0x9120, 0xE46A, 0x9121, 0xE470, 0x9122, 0xE46B,
- 0x9123, 0xE468, 0x9124, 0xE46F, 0x9126, 0xE859, 0x9127, 0xBE48,
- 0x9128, 0xF14A, 0x9129, 0xE856, 0x912A, 0xE857, 0x912B, 0xE855,
- 0x912C, 0xDC51, 0x912D, 0xBE47, 0x912E, 0xE85A, 0x912F, 0xE854,
- 0x9130, 0xBE46, 0x9131, 0xBE49, 0x9132, 0xE858, 0x9133, 0xEBD5,
- 0x9134, 0xBFF3, 0x9135, 0xEBD6, 0x9136, 0xEBD7, 0x9138, 0xEEC4,
- 0x9139, 0xC1DD, 0x913A, 0xF14B, 0x913B, 0xF14C, 0x913E, 0xF14D,
- 0x913F, 0xF35D, 0x9140, 0xF35C, 0x9141, 0xF4E2, 0x9143, 0xF4E1,
- 0x9144, 0xF65B, 0x9145, 0xF65C, 0x9146, 0xF65A, 0x9147, 0xF766,
- 0x9148, 0xC5B0, 0x9149, 0xA8BB, 0x914A, 0xADAA, 0x914B, 0xADA9,
- 0x914C, 0xB075, 0x914D, 0xB074, 0x914E, 0xD440, 0x914F, 0xD441,
- 0x9150, 0xD3FE, 0x9152, 0xB073, 0x9153, 0xD7F5, 0x9155, 0xD7F6,
- 0x9156, 0xD7F2, 0x9157, 0xB3A4, 0x9158, 0xD7F3, 0x915A, 0xD7F4,
- 0x915F, 0xDC5F, 0x9160, 0xDC61, 0x9161, 0xDC5D, 0x9162, 0xDC60,
- 0x9163, 0xB66F, 0x9164, 0xDC5E, 0x9165, 0xB670, 0x9168, 0xDD73,
- 0x9169, 0xB955, 0x916A, 0xB954, 0x916C, 0xB953, 0x916E, 0xE0AC,
- 0x916F, 0xE0AD, 0x9172, 0xE473, 0x9173, 0xE475, 0x9174, 0xBBC6,
- 0x9175, 0xBBC3, 0x9177, 0xBBC5, 0x9178, 0xBBC4, 0x9179, 0xE474,
- 0x917A, 0xE472, 0x9180, 0xE861, 0x9181, 0xE85E, 0x9182, 0xE85F,
- 0x9183, 0xBE4D, 0x9184, 0xE860, 0x9185, 0xE85B, 0x9186, 0xE85C,
- 0x9187, 0xBE4A, 0x9189, 0xBE4B, 0x918A, 0xE85D, 0x918B, 0xBE4C,
- 0x918D, 0xEBDB, 0x918F, 0xEBDC, 0x9190, 0xEBD9, 0x9191, 0xEBDA,
- 0x9192, 0xBFF4, 0x9193, 0xEBD8, 0x9199, 0xEEC8, 0x919A, 0xEEC5,
- 0x919B, 0xEEC7, 0x919C, 0xC1E0, 0x919D, 0xEECB, 0x919E, 0xC1DF,
- 0x919F, 0xEEC9, 0x91A0, 0xEECC, 0x91A1, 0xEECA, 0x91A2, 0xEEC6,
- 0x91A3, 0xC1DE, 0x91A5, 0xF14F, 0x91A7, 0xF150, 0x91A8, 0xF14E,
- 0x91AA, 0xF152, 0x91AB, 0xC2E5, 0x91AC, 0xC2E6, 0x91AD, 0xF35F,
- 0x91AE, 0xC3E7, 0x91AF, 0xF151, 0x91B0, 0xF35E, 0x91B1, 0xC3E6,
- 0x91B2, 0xF4E5, 0x91B3, 0xF4E6, 0x91B4, 0xC4BF, 0x91B5, 0xF4E4,
- 0x91B7, 0xF4E3, 0x91B9, 0xF65D, 0x91BA, 0xC548, 0x91BC, 0xF849,
- 0x91BD, 0xF8C8, 0x91BE, 0xF8C7, 0x91C0, 0xC643, 0x91C1, 0xC65D,
- 0x91C2, 0xF8C9, 0x91C3, 0xF971, 0x91C5, 0xC66F, 0x91C6, 0xA8BC,
- 0x91C7, 0xAAF6, 0x91C9, 0xB956, 0x91CB, 0xC4C0, 0x91CC, 0xA8BD,
- 0x91CD, 0xADAB, 0x91CE, 0xB3A5, 0x91CF, 0xB671, 0x91D0, 0xC2E7,
- 0x91D1, 0xAAF7, 0x91D3, 0xD0C1, 0x91D4, 0xD0C0, 0x91D5, 0xD442,
- 0x91D7, 0xB078, 0x91D8, 0xB076, 0x91D9, 0xB07A, 0x91DA, 0xD444,
- 0x91DC, 0xB079, 0x91DD, 0xB077, 0x91E2, 0xD443, 0x91E3, 0xB3A8,
- 0x91E4, 0xD7FC, 0x91E6, 0xB3A7, 0x91E7, 0xB3A9, 0x91E8, 0xD842,
- 0x91E9, 0xB3AB, 0x91EA, 0xD7FE, 0x91EB, 0xD840, 0x91EC, 0xD7F7,
- 0x91ED, 0xB3AA, 0x91EE, 0xD843, 0x91F1, 0xD7F9, 0x91F3, 0xD7FA,
- 0x91F4, 0xD7F8, 0x91F5, 0xB3A6, 0x91F7, 0xD841, 0x91F8, 0xD7FB,
- 0x91F9, 0xD7FD, 0x91FD, 0xDC6D, 0x91FF, 0xDC6C, 0x9200, 0xDC6A,
- 0x9201, 0xDC62, 0x9202, 0xDC71, 0x9203, 0xDC65, 0x9204, 0xDC6F,
- 0x9205, 0xDC76, 0x9206, 0xDC6E, 0x9207, 0xB679, 0x9209, 0xB675,
- 0x920A, 0xDC63, 0x920C, 0xDC69, 0x920D, 0xB677, 0x920F, 0xDC68,
- 0x9210, 0xB678, 0x9211, 0xB67A, 0x9212, 0xDC6B, 0x9214, 0xB672,
- 0x9215, 0xB673, 0x9216, 0xDC77, 0x9217, 0xDC75, 0x9219, 0xDC74,
- 0x921A, 0xDC66, 0x921C, 0xDC72, 0x921E, 0xB676, 0x9223, 0xB674,
- 0x9224, 0xDC73, 0x9225, 0xDC64, 0x9226, 0xDC67, 0x9227, 0xDC70,
- 0x922D, 0xE4BA, 0x922E, 0xE0B7, 0x9230, 0xE0B0, 0x9231, 0xE0C3,
- 0x9232, 0xE0CC, 0x9233, 0xE0B3, 0x9234, 0xB961, 0x9236, 0xE0C0,
- 0x9237, 0xB957, 0x9238, 0xB959, 0x9239, 0xB965, 0x923A, 0xE0B1,
- 0x923D, 0xB95A, 0x923E, 0xB95C, 0x923F, 0xB966, 0x9240, 0xB95B,
- 0x9245, 0xB964, 0x9246, 0xE0B9, 0x9248, 0xE0AE, 0x9249, 0xB962,
- 0x924A, 0xE0B8, 0x924B, 0xB95E, 0x924C, 0xE0CA, 0x924D, 0xB963,
- 0x924E, 0xE0C8, 0x924F, 0xE0BC, 0x9250, 0xE0C6, 0x9251, 0xB960,
- 0x9252, 0xE0AF, 0x9253, 0xE0C9, 0x9254, 0xE0C4, 0x9256, 0xE0CB,
- 0x9257, 0xB958, 0x925A, 0xB967, 0x925B, 0xB95D, 0x925E, 0xE0B5,
- 0x9260, 0xE0BD, 0x9261, 0xE0C1, 0x9263, 0xE0C5, 0x9264, 0xB95F,
- 0x9265, 0xE0B4, 0x9266, 0xE0B2, 0x9267, 0xE0BE, 0x926C, 0xE0BB,
- 0x926D, 0xE0BA, 0x926F, 0xE0BF, 0x9270, 0xE0C2, 0x9272, 0xE0C7,
- 0x9276, 0xE478, 0x9278, 0xBBC7, 0x9279, 0xE4A4, 0x927A, 0xE47A,
- 0x927B, 0xBBCC, 0x927C, 0xBBD0, 0x927D, 0xE4AD, 0x927E, 0xE4B5,
- 0x927F, 0xE4A6, 0x9280, 0xBBC8, 0x9282, 0xE4AA, 0x9283, 0xE0B6,
- 0x9285, 0xBBC9, 0x9286, 0xE4B1, 0x9287, 0xE4B6, 0x9288, 0xE4AE,
- 0x928A, 0xE4B0, 0x928B, 0xE4B9, 0x928C, 0xE4B2, 0x928D, 0xE47E,
- 0x928E, 0xE4A9, 0x9291, 0xBBD1, 0x9293, 0xBBCD, 0x9294, 0xE47C,
- 0x9295, 0xE4AB, 0x9296, 0xBBCB, 0x9297, 0xE4A5, 0x9298, 0xBBCA,
- 0x9299, 0xE4B3, 0x929A, 0xE4A2, 0x929B, 0xE479, 0x929C, 0xBBCE,
- 0x929D, 0xE4B8, 0x92A0, 0xE47B, 0x92A1, 0xE4AF, 0x92A2, 0xE4AC,
- 0x92A3, 0xE4A7, 0x92A4, 0xE477, 0x92A5, 0xE476, 0x92A6, 0xE4A1,
- 0x92A7, 0xE4B4, 0x92A8, 0xBBCF, 0x92A9, 0xE4B7, 0x92AA, 0xE47D,
- 0x92AB, 0xE4A3, 0x92AC, 0xBE52, 0x92B2, 0xBE5A, 0x92B3, 0xBE55,
- 0x92B4, 0xE8A4, 0x92B5, 0xE8A1, 0x92B6, 0xE867, 0x92B7, 0xBE50,
- 0x92B9, 0xF9D7, 0x92BB, 0xBE4F, 0x92BC, 0xBE56, 0x92C0, 0xE865,
- 0x92C1, 0xBE54, 0x92C2, 0xE871, 0x92C3, 0xE863, 0x92C4, 0xE864,
- 0x92C5, 0xBE4E, 0x92C6, 0xE8A3, 0x92C7, 0xBE58, 0x92C8, 0xE874,
- 0x92C9, 0xE879, 0x92CA, 0xE873, 0x92CB, 0xEBEE, 0x92CC, 0xE86F,
- 0x92CD, 0xE877, 0x92CE, 0xE875, 0x92CF, 0xE868, 0x92D0, 0xE862,
- 0x92D1, 0xE87D, 0x92D2, 0xBE57, 0x92D3, 0xE87E, 0x92D5, 0xE878,
- 0x92D7, 0xE86D, 0x92D8, 0xE86B, 0x92D9, 0xE866, 0x92DD, 0xE86E,
- 0x92DE, 0xE87B, 0x92DF, 0xE86A, 0x92E0, 0xE87A, 0x92E1, 0xE8A2,
- 0x92E4, 0xBE53, 0x92E6, 0xE876, 0x92E7, 0xE87C, 0x92E8, 0xE872,
- 0x92E9, 0xE86C, 0x92EA, 0xBE51, 0x92EE, 0xE4A8, 0x92EF, 0xE870,
- 0x92F0, 0xBE59, 0x92F1, 0xE869, 0x92F7, 0xEBF4, 0x92F8, 0xBFF7,
- 0x92F9, 0xEBF3, 0x92FA, 0xEBF0, 0x92FB, 0xEC44, 0x92FC, 0xBFFB,
- 0x92FE, 0xEC41, 0x92FF, 0xEBF8, 0x9300, 0xEC43, 0x9301, 0xEBE9,
- 0x9302, 0xEBF6, 0x9304, 0xBFFD, 0x9306, 0xEBE1, 0x9308, 0xEBDF,
- 0x9309, 0xEC42, 0x930B, 0xEC40, 0x930C, 0xEBFE, 0x930D, 0xEBED,
- 0x930E, 0xEBEC, 0x930F, 0xEBE2, 0x9310, 0xC040, 0x9312, 0xEBE8,
- 0x9313, 0xEBF2, 0x9314, 0xEBFD, 0x9315, 0xC043, 0x9316, 0xEC45,
- 0x9318, 0xC1E8, 0x9319, 0xC045, 0x931A, 0xBFFE, 0x931B, 0xEBE6,
- 0x931D, 0xEBEF, 0x931E, 0xEBDE, 0x931F, 0xEBE0, 0x9320, 0xBFF5,
- 0x9321, 0xC042, 0x9322, 0xBFFA, 0x9323, 0xEBE7, 0x9324, 0xEBF7,
- 0x9325, 0xEBF1, 0x9326, 0xC041, 0x9327, 0xEBDD, 0x9328, 0xC1E3,
- 0x9329, 0xEBF9, 0x932A, 0xEBFC, 0x932B, 0xBFFC, 0x932D, 0xEBEB,
- 0x932E, 0xC044, 0x932F, 0xBFF9, 0x9333, 0xBFF8, 0x9334, 0xEBF5,
- 0x9335, 0xEBFB, 0x9336, 0xBFF6, 0x9338, 0xEBE4, 0x9339, 0xEBFA,
- 0x933C, 0xEBE5, 0x9346, 0xEBEA, 0x9347, 0xEED2, 0x9349, 0xEED7,
- 0x934A, 0xC1E5, 0x934B, 0xC1E7, 0x934C, 0xEEDD, 0x934D, 0xC1E1,
- 0x934E, 0xEEEC, 0x934F, 0xEEE3, 0x9350, 0xEED8, 0x9351, 0xEED9,
- 0x9352, 0xEEE2, 0x9354, 0xC1EE, 0x9355, 0xEEE1, 0x9356, 0xEED1,
- 0x9357, 0xEEE0, 0x9358, 0xEED4, 0x9359, 0xEEED, 0x935A, 0xC1ED,
- 0x935B, 0xC1EB, 0x935C, 0xEED5, 0x935E, 0xEEE8, 0x9360, 0xEEDA,
- 0x9361, 0xEEE7, 0x9363, 0xEEE9, 0x9364, 0xEED0, 0x9365, 0xC1E6,
- 0x9367, 0xEEEA, 0x936A, 0xEEDE, 0x936C, 0xC1EA, 0x936D, 0xEEDB,
- 0x9370, 0xC1EC, 0x9371, 0xEEE4, 0x9375, 0xC1E4, 0x9376, 0xEED6,
- 0x9377, 0xEEE5, 0x9379, 0xEEDF, 0x937A, 0xEBE3, 0x937B, 0xEEE6,
- 0x937C, 0xEED3, 0x937E, 0xC1E9, 0x9380, 0xEEEB, 0x9382, 0xC1E2,
- 0x9383, 0xEECE, 0x9388, 0xF160, 0x9389, 0xF159, 0x938A, 0xC2E9,
- 0x938C, 0xF154, 0x938D, 0xF163, 0x938E, 0xF15B, 0x938F, 0xEEDC,
- 0x9391, 0xF165, 0x9392, 0xF155, 0x9394, 0xC2E8, 0x9395, 0xF15F,
- 0x9396, 0xC2EA, 0x9397, 0xC2F2, 0x9398, 0xC2F0, 0x9399, 0xF161,
- 0x939A, 0xC2F1, 0x939B, 0xF157, 0x939D, 0xF158, 0x939E, 0xF15D,
- 0x939F, 0xF162, 0x93A1, 0xEECD, 0x93A2, 0xC2EB, 0x93A3, 0xF16A,
- 0x93A4, 0xF167, 0x93A5, 0xF16B, 0x93A6, 0xF15E, 0x93A7, 0xF15A,
- 0x93A8, 0xF168, 0x93A9, 0xF36A, 0x93AA, 0xF15C, 0x93AC, 0xC2EE,
- 0x93AE, 0xC2ED, 0x93AF, 0xEECF, 0x93B0, 0xC2EF, 0x93B1, 0xF164,
- 0x93B2, 0xF166, 0x93B3, 0xC2EC, 0x93B4, 0xF169, 0x93B5, 0xF153,
- 0x93B7, 0xF156, 0x93C0, 0xF373, 0x93C2, 0xF363, 0x93C3, 0xC3EB,
- 0x93C4, 0xF371, 0x93C7, 0xF361, 0x93C8, 0xC3EC, 0x93CA, 0xF36C,
- 0x93CC, 0xF368, 0x93CD, 0xC3F1, 0x93CE, 0xF372, 0x93CF, 0xF362,
- 0x93D0, 0xF365, 0x93D1, 0xC3E9, 0x93D2, 0xF374, 0x93D4, 0xF36D,
- 0x93D5, 0xF370, 0x93D6, 0xC3EF, 0x93D7, 0xC3F4, 0x93D8, 0xC3F2,
- 0x93D9, 0xF369, 0x93DA, 0xF364, 0x93DC, 0xC3ED, 0x93DD, 0xC3EE,
- 0x93DE, 0xF360, 0x93DF, 0xC3EA, 0x93E1, 0xC3E8, 0x93E2, 0xC3F0,
- 0x93E3, 0xF36F, 0x93E4, 0xC3F3, 0x93E6, 0xF36B, 0x93E7, 0xF375,
- 0x93E8, 0xC3F5, 0x93EC, 0xF367, 0x93EE, 0xF36E, 0x93F5, 0xF4F3,
- 0x93F6, 0xF542, 0x93F7, 0xF4F5, 0x93F8, 0xF4FC, 0x93F9, 0xF366,
- 0x93FA, 0xF4FA, 0x93FB, 0xF4E9, 0x93FC, 0xF540, 0x93FD, 0xC4C3,
- 0x93FE, 0xF4ED, 0x93FF, 0xF4FE, 0x9400, 0xF4F4, 0x9403, 0xC4C2,
- 0x9406, 0xF544, 0x9407, 0xF4F6, 0x9409, 0xF4FB, 0x940A, 0xF4FD,
- 0x940B, 0xF4E7, 0x940C, 0xF541, 0x940D, 0xF4F2, 0x940E, 0xF4F7,
- 0x940F, 0xF4EB, 0x9410, 0xF4EF, 0x9411, 0xF543, 0x9412, 0xF4F9,
- 0x9413, 0xF4E8, 0x9414, 0xF4EC, 0x9415, 0xF4EE, 0x9416, 0xF4F8,
- 0x9418, 0xC4C1, 0x9419, 0xF4F1, 0x9420, 0xF4EA, 0x9428, 0xF4F0,
- 0x9429, 0xF661, 0x942A, 0xF666, 0x942B, 0xC54F, 0x942C, 0xF668,
- 0x942E, 0xC549, 0x9430, 0xF664, 0x9431, 0xF66A, 0x9432, 0xC54E,
- 0x9433, 0xC54A, 0x9435, 0xC54B, 0x9436, 0xF660, 0x9437, 0xF667,
- 0x9438, 0xC54D, 0x9439, 0xF665, 0x943A, 0xC54C, 0x943B, 0xF65F,
- 0x943C, 0xF663, 0x943D, 0xF662, 0x943F, 0xF65E, 0x9440, 0xF669,
- 0x9444, 0xC5B1, 0x9445, 0xF76D, 0x9446, 0xF770, 0x9447, 0xF76C,
- 0x9448, 0xF76E, 0x9449, 0xF76F, 0x944A, 0xF769, 0x944B, 0xF76A,
- 0x944C, 0xF767, 0x944F, 0xF76B, 0x9450, 0xF768, 0x9451, 0xC5B2,
- 0x9452, 0xC5B3, 0x9455, 0xF84B, 0x9457, 0xF84D, 0x945D, 0xF84C,
- 0x945E, 0xF84E, 0x9460, 0xC5E0, 0x9462, 0xF84A, 0x9463, 0xC5DF,
- 0x9464, 0xC5E1, 0x9468, 0xF8CB, 0x9469, 0xF8CC, 0x946A, 0xC644,
- 0x946B, 0xF8CA, 0x946D, 0xF953, 0x946E, 0xF952, 0x946F, 0xF954,
- 0x9470, 0xC65F, 0x9471, 0xF955, 0x9472, 0xC65E, 0x9473, 0xF956,
- 0x9474, 0xF972, 0x9475, 0xF975, 0x9476, 0xF974, 0x9477, 0xC668,
- 0x9478, 0xF973, 0x947C, 0xC672, 0x947D, 0xC670, 0x947E, 0xC671,
- 0x947F, 0xC677, 0x9480, 0xF9C0, 0x9481, 0xF9C1, 0x9482, 0xF9BF,
- 0x9483, 0xF9C9, 0x9577, 0xAAF8, 0x957A, 0xD844, 0x957B, 0xDC78,
- 0x957C, 0xE8A5, 0x957D, 0xF376, 0x9580, 0xAAF9, 0x9582, 0xADAC,
- 0x9583, 0xB07B, 0x9586, 0xD845, 0x9588, 0xD846, 0x9589, 0xB3AC,
- 0x958B, 0xB67D, 0x958C, 0xDC7A, 0x958D, 0xDC79, 0x958E, 0xB6A3,
- 0x958F, 0xB67C, 0x9590, 0xDC7B, 0x9591, 0xB67E, 0x9592, 0xB6A2,
- 0x9593, 0xB6A1, 0x9594, 0xB67B, 0x9598, 0xB968, 0x959B, 0xE0D0,
- 0x959C, 0xE0CE, 0x959E, 0xE0CF, 0x959F, 0xE0CD, 0x95A1, 0xBBD2,
- 0x95A3, 0xBBD5, 0x95A4, 0xBBD7, 0x95A5, 0xBBD6, 0x95A8, 0xBBD3,
- 0x95A9, 0xBBD4, 0x95AB, 0xE8A7, 0x95AC, 0xE8A6, 0x95AD, 0xBE5B,
- 0x95AE, 0xE8A8, 0x95B0, 0xE8A9, 0x95B1, 0xBE5C, 0x95B5, 0xEC4D,
- 0x95B6, 0xEC4B, 0x95B7, 0xEEF3, 0x95B9, 0xEC49, 0x95BA, 0xEC4A,
- 0x95BB, 0xC046, 0x95BC, 0xEC46, 0x95BD, 0xEC4E, 0x95BE, 0xEC48,
- 0x95BF, 0xEC4C, 0x95C0, 0xEEEF, 0x95C3, 0xEEF1, 0x95C5, 0xEEF2,
- 0x95C6, 0xC1F3, 0x95C7, 0xEEEE, 0x95C8, 0xC1F2, 0x95C9, 0xEEF0,
- 0x95CA, 0xC1EF, 0x95CB, 0xC1F0, 0x95CC, 0xC1F1, 0x95CD, 0xEC47,
- 0x95D0, 0xC2F5, 0x95D1, 0xF16E, 0x95D2, 0xF16C, 0x95D3, 0xF16D,
- 0x95D4, 0xC2F3, 0x95D5, 0xC2F6, 0x95D6, 0xC2F4, 0x95DA, 0xF377,
- 0x95DB, 0xF378, 0x95DC, 0xC3F6, 0x95DE, 0xF545, 0x95DF, 0xF547,
- 0x95E0, 0xF546, 0x95E1, 0xC4C4, 0x95E2, 0xC550, 0x95E3, 0xF66D,
- 0x95E4, 0xF66C, 0x95E5, 0xF66B, 0x961C, 0xAAFA, 0x961E, 0xC9AA,
- 0x9620, 0xCA58, 0x9621, 0xA6E9, 0x9622, 0xCA56, 0x9623, 0xCA59,
- 0x9624, 0xCA57, 0x9628, 0xCBAE, 0x962A, 0xA8C1, 0x962C, 0xA8C2,
- 0x962D, 0xCBB0, 0x962E, 0xA8BF, 0x962F, 0xCBAF, 0x9630, 0xCBAD,
- 0x9631, 0xA8C0, 0x9632, 0xA8BE, 0x9639, 0xCDD8, 0x963A, 0xCDDB,
- 0x963B, 0xAAFD, 0x963C, 0xCDDA, 0x963D, 0xCDD9, 0x963F, 0xAAFC,
- 0x9640, 0xAAFB, 0x9642, 0xAB40, 0x9643, 0xCDDC, 0x9644, 0xAAFE,
- 0x964A, 0xD0C6, 0x964B, 0xADAE, 0x964C, 0xADAF, 0x964D, 0xADB0,
- 0x964E, 0xD0C7, 0x964F, 0xD0C3, 0x9650, 0xADAD, 0x9651, 0xD0C4,
- 0x9653, 0xD0C5, 0x9654, 0xD0C2, 0x9658, 0xB0A4, 0x965B, 0xB0A1,
- 0x965C, 0xD445, 0x965D, 0xB0A2, 0x965E, 0xB0A5, 0x965F, 0xD446,
- 0x9661, 0xB07E, 0x9662, 0xB07C, 0x9663, 0xB07D, 0x9664, 0xB0A3,
- 0x966A, 0xB3AD, 0x966B, 0xD849, 0x966C, 0xB3B5, 0x966D, 0xD848,
- 0x966F, 0xD84B, 0x9670, 0xB3B1, 0x9671, 0xD84A, 0x9672, 0xB6AB,
- 0x9673, 0xB3AF, 0x9674, 0xB3B2, 0x9675, 0xB3AE, 0x9676, 0xB3B3,
- 0x9677, 0xB3B4, 0x9678, 0xB3B0, 0x967C, 0xD847, 0x967D, 0xB6A7,
- 0x967E, 0xDC7D, 0x9680, 0xDCA3, 0x9683, 0xDCA2, 0x9684, 0xB6AC,
- 0x9685, 0xB6A8, 0x9686, 0xB6A9, 0x9687, 0xDC7C, 0x9688, 0xDC7E,
- 0x9689, 0xDCA1, 0x968A, 0xB6A4, 0x968B, 0xB6A6, 0x968D, 0xB6AA,
- 0x968E, 0xB6A5, 0x9691, 0xE0D3, 0x9692, 0xE0D1, 0x9693, 0xE0D2,
- 0x9694, 0xB96A, 0x9695, 0xB96B, 0x9697, 0xE0D4, 0x9698, 0xB969,
- 0x9699, 0xBBD8, 0x969B, 0xBBDA, 0x969C, 0xBBD9, 0x969E, 0xE4BB,
- 0x96A1, 0xE4BC, 0x96A2, 0xE8AB, 0x96A4, 0xE8AA, 0x96A7, 0xC047,
- 0x96A8, 0xC048, 0x96A9, 0xEC4F, 0x96AA, 0xC049, 0x96AC, 0xEEF6,
- 0x96AE, 0xEEF4, 0x96B0, 0xEEF5, 0x96B1, 0xC1F4, 0x96B3, 0xF16F,
- 0x96B4, 0xC3F7, 0x96B8, 0xC1F5, 0x96B9, 0xAB41, 0x96BB, 0xB0A6,
- 0x96BC, 0xD447, 0x96BF, 0xD84C, 0x96C0, 0xB3B6, 0x96C1, 0xB6AD,
- 0x96C2, 0xDCA4, 0x96C3, 0xDCA6, 0x96C4, 0xB6AF, 0x96C5, 0xB6AE,
- 0x96C6, 0xB6B0, 0x96C7, 0xB6B1, 0x96C8, 0xDCA5, 0x96C9, 0xB96E,
- 0x96CA, 0xB96F, 0x96CB, 0xB96D, 0x96CC, 0xBBDB, 0x96CD, 0xB96C,
- 0x96CE, 0xE0D5, 0x96D2, 0xBBDC, 0x96D3, 0xE8AC, 0x96D4, 0xEC50,
- 0x96D5, 0xC04A, 0x96D6, 0xC1F6, 0x96D7, 0xF170, 0x96D8, 0xF174,
- 0x96D9, 0xC2F9, 0x96DA, 0xF171, 0x96DB, 0xC2FA, 0x96DC, 0xC2F8,
- 0x96DD, 0xF175, 0x96DE, 0xC2FB, 0x96DF, 0xF173, 0x96E1, 0xF379,
- 0x96E2, 0xC2F7, 0x96E3, 0xC3F8, 0x96E5, 0xF8CD, 0x96E8, 0xAB42,
- 0x96E9, 0xB3B8, 0x96EA, 0xB3B7, 0x96EF, 0xB6B2, 0x96F0, 0xDCA8,
- 0x96F1, 0xDCA7, 0x96F2, 0xB6B3, 0x96F5, 0xE0D9, 0x96F6, 0xB973,
- 0x96F7, 0xB970, 0x96F8, 0xE0D8, 0x96F9, 0xB972, 0x96FA, 0xE0D6,
- 0x96FB, 0xB971, 0x96FD, 0xE0D7, 0x96FF, 0xE4BD, 0x9700, 0xBBDD,
- 0x9702, 0xE8AF, 0x9704, 0xBE5D, 0x9705, 0xE8AD, 0x9706, 0xBE5E,
- 0x9707, 0xBE5F, 0x9708, 0xE8AE, 0x9709, 0xBE60, 0x970B, 0xEC51,
- 0x970D, 0xC04E, 0x970E, 0xC04B, 0x970F, 0xC050, 0x9710, 0xEC53,
- 0x9711, 0xC04C, 0x9712, 0xEC52, 0x9713, 0xC04F, 0x9716, 0xC04D,
- 0x9718, 0xEEF9, 0x9719, 0xEEFB, 0x971C, 0xC1F7, 0x971D, 0xEEFA,
- 0x971E, 0xC1F8, 0x971F, 0xEEF8, 0x9720, 0xEEF7, 0x9722, 0xF177,
- 0x9723, 0xF176, 0x9724, 0xC2FC, 0x9725, 0xF178, 0x9726, 0xF37E,
- 0x9727, 0xC3FA, 0x9728, 0xF37D, 0x9729, 0xF37A, 0x972A, 0xC3F9,
- 0x972B, 0xF37B, 0x972C, 0xF37C, 0x972E, 0xF548, 0x972F, 0xF549,
- 0x9730, 0xC4C5, 0x9732, 0xC553, 0x9735, 0xF66E, 0x9738, 0xC551,
- 0x9739, 0xC552, 0x973A, 0xF66F, 0x973D, 0xC5B4, 0x973E, 0xC5B5,
- 0x973F, 0xF771, 0x9742, 0xC645, 0x9743, 0xF8CF, 0x9744, 0xC647,
- 0x9746, 0xF8CE, 0x9747, 0xF8D0, 0x9748, 0xC646, 0x9749, 0xF957,
- 0x974B, 0xF9AD, 0x9752, 0xAB43, 0x9756, 0xB974, 0x9758, 0xE4BE,
- 0x975A, 0xE8B0, 0x975B, 0xC051, 0x975C, 0xC052, 0x975E, 0xAB44,
- 0x9760, 0xBE61, 0x9761, 0xC3FB, 0x9762, 0xADB1, 0x9766, 0xC053,
- 0x9768, 0xC5E2, 0x9769, 0xADB2, 0x976A, 0xD84D, 0x976C, 0xDCA9,
- 0x976E, 0xDCAB, 0x9770, 0xDCAA, 0x9772, 0xE0DD, 0x9773, 0xE0DA,
- 0x9774, 0xB975, 0x9776, 0xB976, 0x9777, 0xE0DB, 0x9778, 0xE0DC,
- 0x977A, 0xE4C0, 0x977B, 0xE4C5, 0x977C, 0xBBDE, 0x977D, 0xE4BF,
- 0x977E, 0xE4C1, 0x977F, 0xE4C8, 0x9780, 0xE4C3, 0x9781, 0xE4C7,
- 0x9782, 0xE4C4, 0x9783, 0xE4C2, 0x9784, 0xE4C6, 0x9785, 0xBBDF,
- 0x9788, 0xE8B3, 0x978A, 0xE8B1, 0x978B, 0xBE63, 0x978D, 0xBE62,
- 0x978E, 0xE8B2, 0x978F, 0xBE64, 0x9794, 0xEC56, 0x9797, 0xEC55,
- 0x9798, 0xC054, 0x9799, 0xEC54, 0x979A, 0xEEFC, 0x979C, 0xEEFE,
- 0x979D, 0xEF41, 0x979E, 0xEF40, 0x97A0, 0xC1F9, 0x97A1, 0xEEFD,
- 0x97A2, 0xF1A1, 0x97A3, 0xC2FD, 0x97A4, 0xF17D, 0x97A5, 0xF1A2,
- 0x97A6, 0xC2FE, 0x97A8, 0xF17B, 0x97AA, 0xF17E, 0x97AB, 0xF17C,
- 0x97AC, 0xF179, 0x97AD, 0xC340, 0x97AE, 0xF17A, 0x97B3, 0xF3A1,
- 0x97B6, 0xF3A3, 0x97B7, 0xF3A2, 0x97B9, 0xF54A, 0x97BB, 0xF54B,
- 0x97BF, 0xF670, 0x97C1, 0xC5B7, 0x97C3, 0xC5B6, 0x97C4, 0xF84F,
- 0x97C5, 0xF850, 0x97C6, 0xC648, 0x97C7, 0xF8D1, 0x97C9, 0xC669,
- 0x97CB, 0xADB3, 0x97CC, 0xB6B4, 0x97CD, 0xE4CA, 0x97CE, 0xE4C9,
- 0x97CF, 0xE8B5, 0x97D0, 0xE8B4, 0x97D3, 0xC1FA, 0x97D4, 0xEF43,
- 0x97D5, 0xEF42, 0x97D6, 0xF1A5, 0x97D7, 0xF1A3, 0x97D8, 0xF1A6,
- 0x97D9, 0xF1A4, 0x97DC, 0xC3FC, 0x97DD, 0xF3A4, 0x97DE, 0xF3A5,
- 0x97DF, 0xF3A6, 0x97E1, 0xF671, 0x97E3, 0xF772, 0x97E5, 0xF8D2,
- 0x97ED, 0xADB4, 0x97F0, 0xEC57, 0x97F1, 0xEF44, 0x97F3, 0xADB5,
- 0x97F6, 0xBBE0, 0x97F8, 0xEC58, 0x97F9, 0xC341, 0x97FA, 0xF1A7,
- 0x97FB, 0xC3FD, 0x97FD, 0xF54C, 0x97FE, 0xF54D, 0x97FF, 0xC554,
- 0x9800, 0xF851, 0x9801, 0xADB6, 0x9802, 0xB3BB, 0x9803, 0xB3BC,
- 0x9804, 0xD84E, 0x9805, 0xB6B5, 0x9806, 0xB6B6, 0x9807, 0xDCAC,
- 0x9808, 0xB6B7, 0x980A, 0xB97A, 0x980C, 0xB97C, 0x980D, 0xE0DF,
- 0x980E, 0xE0E0, 0x980F, 0xE0DE, 0x9810, 0xB977, 0x9811, 0xB978,
- 0x9812, 0xB97B, 0x9813, 0xB979, 0x9816, 0xE4CB, 0x9817, 0xBBE1,
- 0x9818, 0xBBE2, 0x981B, 0xE8BC, 0x981C, 0xBE67, 0x981D, 0xE8B7,
- 0x981E, 0xE8B6, 0x9820, 0xE8BB, 0x9821, 0xBE65, 0x9824, 0xC05B,
- 0x9826, 0xE8B8, 0x9827, 0xE8BD, 0x9828, 0xE8BA, 0x9829, 0xE8B9,
- 0x982B, 0xBE66, 0x982D, 0xC059, 0x982F, 0xEC5A, 0x9830, 0xC055,
- 0x9832, 0xEC5B, 0x9835, 0xEC59, 0x9837, 0xC058, 0x9838, 0xC056,
- 0x9839, 0xC05A, 0x983B, 0xC057, 0x9841, 0xEF45, 0x9843, 0xEF4A,
- 0x9844, 0xEF46, 0x9845, 0xEF49, 0x9846, 0xC1FB, 0x9848, 0xEDD4,
- 0x9849, 0xEF48, 0x984A, 0xEF47, 0x984C, 0xC344, 0x984D, 0xC342,
- 0x984E, 0xC345, 0x984F, 0xC343, 0x9850, 0xF1A8, 0x9851, 0xF1A9,
- 0x9852, 0xF1AA, 0x9853, 0xC346, 0x9857, 0xF3AA, 0x9858, 0xC440,
- 0x9859, 0xF3A8, 0x985B, 0xC441, 0x985C, 0xF3A7, 0x985D, 0xF3A9,
- 0x985E, 0xC3FE, 0x985F, 0xF551, 0x9860, 0xF54E, 0x9862, 0xF54F,
- 0x9863, 0xF550, 0x9864, 0xF672, 0x9865, 0xC556, 0x9867, 0xC555,
- 0x9869, 0xF774, 0x986A, 0xF773, 0x986B, 0xC5B8, 0x986F, 0xC5E3,
- 0x9870, 0xC649, 0x9871, 0xC660, 0x9872, 0xF958, 0x9873, 0xF9AE,
- 0x9874, 0xF9AF, 0x98A8, 0xADB7, 0x98A9, 0xDCAD, 0x98AC, 0xE0E1,
- 0x98AD, 0xE4CC, 0x98AE, 0xE4CD, 0x98AF, 0xBBE3, 0x98B1, 0xBBE4,
- 0x98B2, 0xE8BE, 0x98B3, 0xBE68, 0x98B6, 0xC1FC, 0x98B8, 0xF1AB,
- 0x98BA, 0xC347, 0x98BB, 0xF3AD, 0x98BC, 0xC442, 0x98BD, 0xF3AC,
- 0x98BE, 0xF3AE, 0x98BF, 0xF3AB, 0x98C0, 0xF675, 0x98C1, 0xF552,
- 0x98C2, 0xF553, 0x98C4, 0xC4C6, 0x98C6, 0xF674, 0x98C9, 0xF673,
- 0x98CB, 0xF775, 0x98CC, 0xF9B0, 0x98DB, 0xADB8, 0x98DF, 0xADB9,
- 0x98E2, 0xB0A7, 0x98E3, 0xD448, 0x98E5, 0xD84F, 0x98E7, 0xB6B8,
- 0x98E9, 0xB6BB, 0x98EA, 0xB6B9, 0x98EB, 0xDCAE, 0x98ED, 0xB6BD,
- 0x98EF, 0xB6BA, 0x98F2, 0xB6BC, 0x98F4, 0xB97E, 0x98F6, 0xE0E2,
- 0x98F9, 0xE0E3, 0x98FA, 0xE8C0, 0x98FC, 0xB97D, 0x98FD, 0xB9A1,
- 0x98FE, 0xB9A2, 0x9900, 0xE4CF, 0x9902, 0xE4CE, 0x9903, 0xBBE5,
- 0x9905, 0xBBE6, 0x9907, 0xE4D0, 0x9908, 0xE8BF, 0x9909, 0xBBE8,
- 0x990A, 0xBE69, 0x990C, 0xBBE7, 0x9910, 0xC05C, 0x9911, 0xE8C1,
- 0x9912, 0xBE6B, 0x9913, 0xBE6A, 0x9914, 0xE8C2, 0x9915, 0xE8C5,
- 0x9916, 0xE8C3, 0x9917, 0xE8C4, 0x9918, 0xBE6C, 0x991A, 0xC061,
- 0x991B, 0xC05F, 0x991E, 0xC05E, 0x991F, 0xEC5D, 0x9921, 0xC060,
- 0x9924, 0xEC5C, 0x9925, 0xEF4B, 0x9927, 0xEC5E, 0x9928, 0xC05D,
- 0x9929, 0xEC5F, 0x992A, 0xEF4E, 0x992B, 0xEF4C, 0x992C, 0xEF4D,
- 0x992D, 0xEF52, 0x992E, 0xC34B, 0x992F, 0xEF51, 0x9930, 0xEF54,
- 0x9931, 0xEF53, 0x9932, 0xEF50, 0x9933, 0xEF4F, 0x9935, 0xC1FD,
- 0x993A, 0xF1AE, 0x993C, 0xF1AD, 0x993D, 0xC34A, 0x993E, 0xC348,
- 0x993F, 0xC349, 0x9941, 0xF1AC, 0x9943, 0xF3B1, 0x9945, 0xC443,
- 0x9947, 0xF3B0, 0x9948, 0xF3AF, 0x9949, 0xC444, 0x994B, 0xF558,
- 0x994C, 0xF557, 0x994E, 0xF555, 0x9950, 0xF554, 0x9951, 0xC4C8,
- 0x9952, 0xC4C7, 0x9953, 0xF559, 0x9954, 0xF776, 0x9955, 0xC5B9,
- 0x9956, 0xF677, 0x9957, 0xC557, 0x9958, 0xF676, 0x9959, 0xF556,
- 0x995B, 0xF777, 0x995C, 0xC5E4, 0x995E, 0xC661, 0x995F, 0xF959,
- 0x9961, 0xF9B1, 0x9996, 0xADBA, 0x9997, 0xD850, 0x9998, 0xEF55,
- 0x9999, 0xADBB, 0x999C, 0xE4D2, 0x999D, 0xE4D1, 0x999E, 0xEC60,
- 0x99A1, 0xEF57, 0x99A3, 0xEF56, 0x99A5, 0xC34C, 0x99A6, 0xF3B2,
- 0x99A7, 0xF3B3, 0x99A8, 0xC4C9, 0x99AB, 0xF9B2, 0x99AC, 0xB0A8,
- 0x99AD, 0xB6BF, 0x99AE, 0xB6BE, 0x99AF, 0xE0E4, 0x99B0, 0xE0E6,
- 0x99B1, 0xB9A4, 0x99B2, 0xE0E5, 0x99B3, 0xB9A3, 0x99B4, 0xB9A5,
- 0x99B5, 0xE0E7, 0x99B9, 0xE4D4, 0x99BA, 0xE4D6, 0x99BB, 0xE4D5,
- 0x99BD, 0xE4D8, 0x99C1, 0xBBE9, 0x99C2, 0xE4D7, 0x99C3, 0xE4D3,
- 0x99C7, 0xE4D9, 0x99C9, 0xE8CC, 0x99CB, 0xE8CF, 0x99CC, 0xE8D1,
- 0x99CD, 0xE8C7, 0x99CE, 0xE8CB, 0x99CF, 0xE8C8, 0x99D0, 0xBE6E,
- 0x99D1, 0xBE71, 0x99D2, 0xBE73, 0x99D3, 0xE8C9, 0x99D4, 0xE8CA,
- 0x99D5, 0xBE72, 0x99D6, 0xE8CD, 0x99D7, 0xE8D0, 0x99D8, 0xE8CE,
- 0x99D9, 0xBE74, 0x99DB, 0xBE70, 0x99DC, 0xE8C6, 0x99DD, 0xBE6D,
- 0x99DF, 0xBE6F, 0x99E2, 0xC063, 0x99E3, 0xEC66, 0x99E4, 0xEC64,
- 0x99E5, 0xEC63, 0x99E7, 0xEC69, 0x99E9, 0xEC68, 0x99EA, 0xEC67,
- 0x99EC, 0xEC62, 0x99ED, 0xC062, 0x99EE, 0xEC61, 0x99F0, 0xEC65,
- 0x99F1, 0xC064, 0x99F4, 0xEF5A, 0x99F6, 0xEF5E, 0x99F7, 0xEF5B,
- 0x99F8, 0xEF5D, 0x99F9, 0xEF5C, 0x99FA, 0xEF59, 0x99FB, 0xEF5F,
- 0x99FC, 0xEF62, 0x99FD, 0xEF60, 0x99FE, 0xEF61, 0x99FF, 0xC240,
- 0x9A01, 0xC1FE, 0x9A02, 0xEF58, 0x9A03, 0xEF63, 0x9A04, 0xF1B3,
- 0x9A05, 0xF1B6, 0x9A06, 0xF1B8, 0x9A07, 0xF1B7, 0x9A09, 0xF1B1,
- 0x9A0A, 0xF1B5, 0x9A0B, 0xF1B0, 0x9A0D, 0xF1B2, 0x9A0E, 0xC34D,
- 0x9A0F, 0xF1AF, 0x9A11, 0xF1B4, 0x9A14, 0xF3C0, 0x9A15, 0xF3B5,
- 0x9A16, 0xC445, 0x9A19, 0xC446, 0x9A1A, 0xF3B4, 0x9A1B, 0xF3B9,
- 0x9A1C, 0xF3BF, 0x9A1D, 0xF3B7, 0x9A1E, 0xF3BE, 0x9A20, 0xF3BB,
- 0x9A22, 0xF3BA, 0x9A23, 0xF3BD, 0x9A24, 0xF3B8, 0x9A25, 0xF3B6,
- 0x9A27, 0xF3BC, 0x9A29, 0xF560, 0x9A2A, 0xF55E, 0x9A2B, 0xC4CA,
- 0x9A2C, 0xF55D, 0x9A2D, 0xF563, 0x9A2E, 0xF561, 0x9A30, 0xC4CB,
- 0x9A31, 0xF55C, 0x9A32, 0xF55A, 0x9A34, 0xF55B, 0x9A35, 0xC4CD,
- 0x9A36, 0xF55F, 0x9A37, 0xC4CC, 0x9A38, 0xF562, 0x9A39, 0xF678,
- 0x9A3A, 0xF67E, 0x9A3D, 0xF679, 0x9A3E, 0xC55B, 0x9A3F, 0xF6A1,
- 0x9A40, 0xC55A, 0x9A41, 0xF67D, 0x9A42, 0xF67C, 0x9A43, 0xC559,
- 0x9A44, 0xF67B, 0x9A45, 0xC558, 0x9A46, 0xF67A, 0x9A48, 0xF77D,
- 0x9A49, 0xF7A1, 0x9A4A, 0xF77E, 0x9A4C, 0xF77B, 0x9A4D, 0xC5BB,
- 0x9A4E, 0xF778, 0x9A4F, 0xF77C, 0x9A50, 0xF7A3, 0x9A52, 0xF7A2,
- 0x9A53, 0xF779, 0x9A54, 0xF77A, 0x9A55, 0xC5BA, 0x9A56, 0xF852,
- 0x9A57, 0xC5E7, 0x9A59, 0xF853, 0x9A5A, 0xC5E5, 0x9A5B, 0xC5E6,
- 0x9A5E, 0xF8D3, 0x9A5F, 0xC64A, 0x9A60, 0xF976, 0x9A62, 0xC66A,
- 0x9A64, 0xF9B3, 0x9A65, 0xC66B, 0x9A66, 0xF9B4, 0x9A67, 0xF9B5,
- 0x9A68, 0xF9C3, 0x9A69, 0xF9C2, 0x9A6A, 0xC67A, 0x9A6B, 0xF9CD,
- 0x9AA8, 0xB0A9, 0x9AAB, 0xE0E9, 0x9AAD, 0xE0E8, 0x9AAF, 0xBBEA,
- 0x9AB0, 0xBBEB, 0x9AB1, 0xE4DA, 0x9AB3, 0xE8D2, 0x9AB4, 0xEC6C,
- 0x9AB7, 0xBE75, 0x9AB8, 0xC065, 0x9AB9, 0xEC6A, 0x9ABB, 0xEC6D,
- 0x9ABC, 0xC066, 0x9ABE, 0xEF64, 0x9ABF, 0xEC6B, 0x9AC0, 0xF1B9,
- 0x9AC1, 0xC34E, 0x9AC2, 0xF3C1, 0x9AC6, 0xF566, 0x9AC7, 0xF564,
- 0x9ACA, 0xF565, 0x9ACD, 0xF6A2, 0x9ACF, 0xC55C, 0x9AD0, 0xF7A4,
- 0x9AD1, 0xC5EA, 0x9AD2, 0xC5BC, 0x9AD3, 0xC5E8, 0x9AD4, 0xC5E9,
- 0x9AD5, 0xF8D4, 0x9AD6, 0xC662, 0x9AD8, 0xB0AA, 0x9ADC, 0xF1BA,
- 0x9ADF, 0xD449, 0x9AE1, 0xB9A6, 0x9AE3, 0xE4DB, 0x9AE6, 0xBBEC,
- 0x9AE7, 0xE4DC, 0x9AEB, 0xE8D4, 0x9AEC, 0xE8D3, 0x9AED, 0xC068,
- 0x9AEE, 0xBE76, 0x9AEF, 0xBE77, 0x9AF1, 0xE8D7, 0x9AF2, 0xE8D6,
- 0x9AF3, 0xE8D5, 0x9AF6, 0xEC6E, 0x9AF7, 0xEC71, 0x9AF9, 0xEC70,
- 0x9AFA, 0xEC6F, 0x9AFB, 0xC067, 0x9AFC, 0xEF68, 0x9AFD, 0xEF66,
- 0x9AFE, 0xEF65, 0x9B01, 0xEF67, 0x9B03, 0xC34F, 0x9B04, 0xF1BC,
- 0x9B05, 0xF1BD, 0x9B06, 0xC350, 0x9B08, 0xF1BB, 0x9B0A, 0xF3C3,
- 0x9B0B, 0xF3C2, 0x9B0C, 0xF3C5, 0x9B0D, 0xC447, 0x9B0E, 0xF3C4,
- 0x9B10, 0xF567, 0x9B11, 0xF569, 0x9B12, 0xF568, 0x9B15, 0xF6A3,
- 0x9B16, 0xF6A6, 0x9B17, 0xF6A4, 0x9B18, 0xF6A5, 0x9B19, 0xF7A5,
- 0x9B1A, 0xC5BD, 0x9B1E, 0xF854, 0x9B1F, 0xF855, 0x9B20, 0xF856,
- 0x9B22, 0xC64B, 0x9B23, 0xC663, 0x9B24, 0xF9B6, 0x9B25, 0xB0AB,
- 0x9B27, 0xBE78, 0x9B28, 0xC069, 0x9B29, 0xF1BE, 0x9B2B, 0xF7A6,
- 0x9B2E, 0xF9C4, 0x9B2F, 0xD44A, 0x9B31, 0xC67B, 0x9B32, 0xB0AC,
- 0x9B33, 0xEC72, 0x9B35, 0xF1BF, 0x9B37, 0xF3C6, 0x9B3A, 0xF6A7,
- 0x9B3B, 0xF7A7, 0x9B3C, 0xB0AD, 0x9B3E, 0xE4DD, 0x9B3F, 0xE4DE,
- 0x9B41, 0xBBED, 0x9B42, 0xBBEE, 0x9B43, 0xE8D9, 0x9B44, 0xBE7A,
- 0x9B45, 0xBE79, 0x9B46, 0xE8D8, 0x9B48, 0xEF69, 0x9B4A, 0xF1C0,
- 0x9B4B, 0xF1C2, 0x9B4C, 0xF1C1, 0x9B4D, 0xC353, 0x9B4E, 0xC352,
- 0x9B4F, 0xC351, 0x9B51, 0xC55E, 0x9B52, 0xF6A8, 0x9B54, 0xC55D,
- 0x9B55, 0xF7A9, 0x9B56, 0xF7A8, 0x9B58, 0xC64C, 0x9B59, 0xF8D5,
- 0x9B5A, 0xB3BD, 0x9B5B, 0xE0EA, 0x9B5F, 0xE4E1, 0x9B60, 0xE4DF,
- 0x9B61, 0xE4E0, 0x9B64, 0xE8E2, 0x9B66, 0xE8DD, 0x9B67, 0xE8DA,
- 0x9B68, 0xE8E1, 0x9B6C, 0xE8E3, 0x9B6F, 0xBE7C, 0x9B70, 0xE8E0,
- 0x9B71, 0xE8DC, 0x9B74, 0xE8DB, 0x9B75, 0xE8DF, 0x9B76, 0xE8DE,
- 0x9B77, 0xBE7B, 0x9B7A, 0xEC7D, 0x9B7B, 0xEC78, 0x9B7C, 0xEC76,
- 0x9B7D, 0xECA1, 0x9B7E, 0xEC77, 0x9B80, 0xEC73, 0x9B82, 0xEC79,
- 0x9B85, 0xEC74, 0x9B86, 0xEF72, 0x9B87, 0xEC75, 0x9B88, 0xECA2,
- 0x9B90, 0xEC7C, 0x9B91, 0xC06A, 0x9B92, 0xEC7B, 0x9B93, 0xEC7A,
- 0x9B95, 0xEC7E, 0x9B9A, 0xEF6A, 0x9B9B, 0xEF6D, 0x9B9E, 0xEF6C,
- 0x9BA0, 0xEF74, 0x9BA1, 0xEF6F, 0x9BA2, 0xEF73, 0x9BA4, 0xEF71,
- 0x9BA5, 0xEF70, 0x9BA6, 0xEF6E, 0x9BA8, 0xEF6B, 0x9BAA, 0xC243,
- 0x9BAB, 0xC242, 0x9BAD, 0xC244, 0x9BAE, 0xC241, 0x9BAF, 0xEF75,
- 0x9BB5, 0xF1C8, 0x9BB6, 0xF1CB, 0x9BB8, 0xF1C9, 0x9BB9, 0xF1CD,
- 0x9BBD, 0xF1CE, 0x9BBF, 0xF1C6, 0x9BC0, 0xC358, 0x9BC1, 0xF1C7,
- 0x9BC3, 0xF1C5, 0x9BC4, 0xF1CC, 0x9BC6, 0xF1C4, 0x9BC7, 0xF1C3,
- 0x9BC8, 0xC357, 0x9BC9, 0xC355, 0x9BCA, 0xC354, 0x9BD3, 0xF1CA,
- 0x9BD4, 0xF3CF, 0x9BD5, 0xF3D5, 0x9BD6, 0xC44A, 0x9BD7, 0xF3D0,
- 0x9BD9, 0xF3D3, 0x9BDA, 0xF3D7, 0x9BDB, 0xC44B, 0x9BDC, 0xF3D2,
- 0x9BDE, 0xF3CA, 0x9BE0, 0xF3C9, 0x9BE1, 0xF3D6, 0x9BE2, 0xF3CD,
- 0x9BE4, 0xF3CB, 0x9BE5, 0xF3D4, 0x9BE6, 0xF3CC, 0x9BE7, 0xC449,
- 0x9BE8, 0xC448, 0x9BEA, 0xF3C7, 0x9BEB, 0xF3C8, 0x9BEC, 0xF3D1,
- 0x9BF0, 0xF3CE, 0x9BF7, 0xF56C, 0x9BF8, 0xF56F, 0x9BFD, 0xC356,
- 0x9C05, 0xF56D, 0x9C06, 0xF573, 0x9C07, 0xF571, 0x9C08, 0xF56B,
- 0x9C09, 0xF576, 0x9C0B, 0xF56A, 0x9C0D, 0xC4CF, 0x9C0E, 0xF572,
- 0x9C12, 0xF56E, 0x9C13, 0xC4CE, 0x9C14, 0xF575, 0x9C17, 0xF574,
- 0x9C1C, 0xF6AB, 0x9C1D, 0xF6AA, 0x9C21, 0xF6B1, 0x9C23, 0xF6AD,
- 0x9C24, 0xF6B0, 0x9C25, 0xC560, 0x9C28, 0xF6AE, 0x9C29, 0xF6AF,
- 0x9C2B, 0xF6A9, 0x9C2C, 0xF6AC, 0x9C2D, 0xC55F, 0x9C31, 0xC5BF,
- 0x9C32, 0xF7B4, 0x9C33, 0xF7AF, 0x9C34, 0xF7B3, 0x9C36, 0xF7B6,
- 0x9C37, 0xF7B2, 0x9C39, 0xF7AE, 0x9C3B, 0xC5C1, 0x9C3C, 0xF7B1,
- 0x9C3D, 0xF7B5, 0x9C3E, 0xC5C0, 0x9C3F, 0xF7AC, 0x9C40, 0xF570,
- 0x9C41, 0xF7B0, 0x9C44, 0xF7AD, 0x9C46, 0xF7AA, 0x9C48, 0xF7AB,
- 0x9C49, 0xC5BE, 0x9C4A, 0xF85A, 0x9C4B, 0xF85C, 0x9C4C, 0xF85F,
- 0x9C4D, 0xF85B, 0x9C4E, 0xF860, 0x9C50, 0xF859, 0x9C52, 0xF857,
- 0x9C54, 0xC5EB, 0x9C55, 0xF85D, 0x9C56, 0xC5ED, 0x9C57, 0xC5EC,
- 0x9C58, 0xF858, 0x9C59, 0xF85E, 0x9C5E, 0xF8DA, 0x9C5F, 0xC64D,
- 0x9C60, 0xF8DB, 0x9C62, 0xF8D9, 0x9C63, 0xF8D6, 0x9C66, 0xF8D8,
- 0x9C67, 0xF8D7, 0x9C68, 0xF95A, 0x9C6D, 0xF95C, 0x9C6E, 0xF95B,
- 0x9C71, 0xF979, 0x9C73, 0xF978, 0x9C74, 0xF977, 0x9C75, 0xF97A,
- 0x9C77, 0xC673, 0x9C78, 0xC674, 0x9C79, 0xF9CA, 0x9C7A, 0xF9CE,
- 0x9CE5, 0xB3BE, 0x9CE6, 0xDCAF, 0x9CE7, 0xE0ED, 0x9CE9, 0xB9A7,
- 0x9CEA, 0xE0EB, 0x9CED, 0xE0EC, 0x9CF1, 0xE4E2, 0x9CF2, 0xE4E3,
- 0x9CF3, 0xBBF1, 0x9CF4, 0xBBEF, 0x9CF5, 0xE4E4, 0x9CF6, 0xBBF0,
- 0x9CF7, 0xE8E8, 0x9CF9, 0xE8EB, 0x9CFA, 0xE8E5, 0x9CFB, 0xE8EC,
- 0x9CFC, 0xE8E4, 0x9CFD, 0xE8E6, 0x9CFF, 0xE8E7, 0x9D00, 0xE8EA,
- 0x9D03, 0xBEA1, 0x9D04, 0xE8EF, 0x9D05, 0xE8EE, 0x9D06, 0xBE7D,
- 0x9D07, 0xE8E9, 0x9D08, 0xE8ED, 0x9D09, 0xBE7E, 0x9D10, 0xECAC,
- 0x9D12, 0xC06F, 0x9D14, 0xECA7, 0x9D15, 0xC06B, 0x9D17, 0xECA4,
- 0x9D18, 0xECAA, 0x9D19, 0xECAD, 0x9D1B, 0xC070, 0x9D1D, 0xECA9,
- 0x9D1E, 0xECA6, 0x9D1F, 0xECAE, 0x9D20, 0xECA5, 0x9D22, 0xECAB,
- 0x9D23, 0xC06C, 0x9D25, 0xECA3, 0x9D26, 0xC06D, 0x9D28, 0xC06E,
- 0x9D29, 0xECA8, 0x9D2D, 0xEFA9, 0x9D2E, 0xEF7A, 0x9D2F, 0xEF7B,
- 0x9D30, 0xEF7E, 0x9D31, 0xEF7C, 0x9D33, 0xEF76, 0x9D36, 0xEF79,
- 0x9D37, 0xEFA5, 0x9D38, 0xEF7D, 0x9D3B, 0xC245, 0x9D3D, 0xEFA7,
- 0x9D3E, 0xEFA4, 0x9D3F, 0xC246, 0x9D40, 0xEFA6, 0x9D41, 0xEF77,
- 0x9D42, 0xEFA2, 0x9D43, 0xEFA3, 0x9D45, 0xEFA1, 0x9D4A, 0xF1D2,
- 0x9D4B, 0xF1D4, 0x9D4C, 0xF1D7, 0x9D4F, 0xF1D1, 0x9D51, 0xC359,
- 0x9D52, 0xF1D9, 0x9D53, 0xF1D0, 0x9D54, 0xF1DA, 0x9D56, 0xF1D6,
- 0x9D57, 0xF1D8, 0x9D58, 0xF1DC, 0x9D59, 0xF1D5, 0x9D5A, 0xF1DD,
- 0x9D5B, 0xF1D3, 0x9D5C, 0xF1CF, 0x9D5D, 0xC35A, 0x9D5F, 0xF1DB,
- 0x9D60, 0xC35B, 0x9D61, 0xC44D, 0x9D67, 0xEF78, 0x9D68, 0xF3F1,
- 0x9D69, 0xF3E8, 0x9D6A, 0xC44F, 0x9D6B, 0xF3E4, 0x9D6C, 0xC450,
- 0x9D6F, 0xF3ED, 0x9D70, 0xF3E7, 0x9D71, 0xF3DD, 0x9D72, 0xC44E,
- 0x9D73, 0xF3EA, 0x9D74, 0xF3E5, 0x9D75, 0xF3E6, 0x9D77, 0xF3D8,
- 0x9D78, 0xF3DF, 0x9D79, 0xF3EE, 0x9D7B, 0xF3EB, 0x9D7D, 0xF3E3,
- 0x9D7F, 0xF3EF, 0x9D80, 0xF3DE, 0x9D81, 0xF3D9, 0x9D82, 0xF3EC,
- 0x9D84, 0xF3DB, 0x9D85, 0xF3E9, 0x9D86, 0xF3E0, 0x9D87, 0xF3F0,
- 0x9D88, 0xF3DC, 0x9D89, 0xC44C, 0x9D8A, 0xF3DA, 0x9D8B, 0xF3E1,
- 0x9D8C, 0xF3E2, 0x9D90, 0xF57D, 0x9D92, 0xF57B, 0x9D94, 0xF5A2,
- 0x9D96, 0xF5AE, 0x9D97, 0xF5A5, 0x9D98, 0xF57C, 0x9D99, 0xF578,
- 0x9D9A, 0xF5A7, 0x9D9B, 0xF57E, 0x9D9C, 0xF5A3, 0x9D9D, 0xF57A,
- 0x9D9E, 0xF5AA, 0x9D9F, 0xF577, 0x9DA0, 0xF5A1, 0x9DA1, 0xF5A6,
- 0x9DA2, 0xF5A8, 0x9DA3, 0xF5AB, 0x9DA4, 0xF579, 0x9DA6, 0xF5AF,
- 0x9DA7, 0xF5B0, 0x9DA8, 0xF5A9, 0x9DA9, 0xF5AD, 0x9DAA, 0xF5A4,
- 0x9DAC, 0xF6C1, 0x9DAD, 0xF6C4, 0x9DAF, 0xC561, 0x9DB1, 0xF6C3,
- 0x9DB2, 0xF6C8, 0x9DB3, 0xF6C6, 0x9DB4, 0xC562, 0x9DB5, 0xF6BD,
- 0x9DB6, 0xF6B3, 0x9DB7, 0xF6B2, 0x9DB8, 0xC564, 0x9DB9, 0xF6BF,
- 0x9DBA, 0xF6C0, 0x9DBB, 0xF6BC, 0x9DBC, 0xF6B4, 0x9DBE, 0xF6B9,
- 0x9DBF, 0xF5AC, 0x9DC1, 0xF6B5, 0x9DC2, 0xC563, 0x9DC3, 0xF6BB,
- 0x9DC5, 0xF6BA, 0x9DC7, 0xF6B6, 0x9DC8, 0xF6C2, 0x9DCA, 0xF6B7,
- 0x9DCB, 0xF7BB, 0x9DCC, 0xF6C5, 0x9DCD, 0xF6C7, 0x9DCE, 0xF6BE,
- 0x9DCF, 0xF6B8, 0x9DD0, 0xF7BC, 0x9DD1, 0xF7BE, 0x9DD2, 0xF7B8,
- 0x9DD3, 0xC5C2, 0x9DD5, 0xF7C5, 0x9DD6, 0xF7C3, 0x9DD7, 0xC5C3,
- 0x9DD8, 0xF7C2, 0x9DD9, 0xF7C1, 0x9DDA, 0xF7BA, 0x9DDB, 0xF7B7,
- 0x9DDC, 0xF7BD, 0x9DDD, 0xF7C6, 0x9DDE, 0xF7B9, 0x9DDF, 0xF7BF,
- 0x9DE1, 0xF869, 0x9DE2, 0xF86E, 0x9DE3, 0xF864, 0x9DE4, 0xF867,
- 0x9DE5, 0xC5EE, 0x9DE6, 0xF86B, 0x9DE8, 0xF872, 0x9DE9, 0xF7C0,
- 0x9DEB, 0xF865, 0x9DEC, 0xF86F, 0x9DED, 0xF873, 0x9DEE, 0xF86A,
- 0x9DEF, 0xF863, 0x9DF0, 0xF86D, 0x9DF2, 0xF86C, 0x9DF3, 0xF871,
- 0x9DF4, 0xF870, 0x9DF5, 0xF7C4, 0x9DF6, 0xF868, 0x9DF7, 0xF862,
- 0x9DF8, 0xF866, 0x9DF9, 0xC64E, 0x9DFA, 0xC64F, 0x9DFB, 0xF861,
- 0x9DFD, 0xF8E6, 0x9DFE, 0xF8DD, 0x9DFF, 0xF8E5, 0x9E00, 0xF8E2,
- 0x9E01, 0xF8E3, 0x9E02, 0xF8DC, 0x9E03, 0xF8DF, 0x9E04, 0xF8E7,
- 0x9E05, 0xF8E1, 0x9E06, 0xF8E0, 0x9E07, 0xF8DE, 0x9E09, 0xF8E4,
- 0x9E0B, 0xF95D, 0x9E0D, 0xF95E, 0x9E0F, 0xF960, 0x9E10, 0xF95F,
- 0x9E11, 0xF962, 0x9E12, 0xF961, 0x9E13, 0xF97C, 0x9E14, 0xF97B,
- 0x9E15, 0xF9B7, 0x9E17, 0xF9B8, 0x9E19, 0xF9C5, 0x9E1A, 0xC678,
- 0x9E1B, 0xC67C, 0x9E1D, 0xF9CF, 0x9E1E, 0xC67D, 0x9E75, 0xB3BF,
- 0x9E79, 0xC4D0, 0x9E7A, 0xF6C9, 0x9E7C, 0xC650, 0x9E7D, 0xC651,
- 0x9E7F, 0xB3C0, 0x9E80, 0xE0EE, 0x9E82, 0xB9A8, 0x9E83, 0xE8F0,
- 0x9E86, 0xECB0, 0x9E87, 0xECB1, 0x9E88, 0xECAF, 0x9E89, 0xEFAB,
- 0x9E8A, 0xEFAA, 0x9E8B, 0xC247, 0x9E8C, 0xF1DF, 0x9E8D, 0xEFAC,
- 0x9E8E, 0xF1DE, 0x9E91, 0xF3F3, 0x9E92, 0xC451, 0x9E93, 0xC453,
- 0x9E94, 0xF3F2, 0x9E97, 0xC452, 0x9E99, 0xF5B1, 0x9E9A, 0xF5B3,
- 0x9E9B, 0xF5B2, 0x9E9C, 0xF6CA, 0x9E9D, 0xC565, 0x9E9F, 0xC5EF,
- 0x9EA0, 0xF8E8, 0x9EA1, 0xF963, 0x9EA4, 0xF9D2, 0x9EA5, 0xB3C1,
- 0x9EA7, 0xE4E5, 0x9EA9, 0xBEA2, 0x9EAD, 0xECB3, 0x9EAE, 0xECB2,
- 0x9EB0, 0xEFAD, 0x9EB4, 0xC454, 0x9EB5, 0xC4D1, 0x9EB6, 0xF7C7,
- 0x9EB7, 0xF9CB, 0x9EBB, 0xB3C2, 0x9EBC, 0xBBF2, 0x9EBE, 0xBEA3,
- 0x9EC0, 0xF3F4, 0x9EC2, 0xF874, 0x9EC3, 0xB6C0, 0x9EC8, 0xEFAE,
- 0x9ECC, 0xC664, 0x9ECD, 0xB6C1, 0x9ECE, 0xBEA4, 0x9ECF, 0xC248,
- 0x9ED0, 0xF875, 0x9ED1, 0xB6C2, 0x9ED3, 0xE8F1, 0x9ED4, 0xC072,
- 0x9ED5, 0xECB4, 0x9ED6, 0xECB5, 0x9ED8, 0xC071, 0x9EDA, 0xEFAF,
- 0x9EDB, 0xC24C, 0x9EDC, 0xC24A, 0x9EDD, 0xC24B, 0x9EDE, 0xC249,
- 0x9EDF, 0xF1E0, 0x9EE0, 0xC35C, 0x9EE4, 0xF5B5, 0x9EE5, 0xF5B4,
- 0x9EE6, 0xF5B7, 0x9EE7, 0xF5B6, 0x9EE8, 0xC4D2, 0x9EEB, 0xF6CB,
- 0x9EED, 0xF6CD, 0x9EEE, 0xF6CC, 0x9EEF, 0xC566, 0x9EF0, 0xF7C8,
- 0x9EF2, 0xF876, 0x9EF3, 0xF877, 0x9EF4, 0xC5F0, 0x9EF5, 0xF964,
- 0x9EF6, 0xF97D, 0x9EF7, 0xC675, 0x9EF9, 0xDCB0, 0x9EFA, 0xECB6,
- 0x9EFB, 0xEFB0, 0x9EFC, 0xF3F5, 0x9EFD, 0xE0EF, 0x9EFF, 0xEFB1,
- 0x9F00, 0xF1E2, 0x9F01, 0xF1E1, 0x9F06, 0xF878, 0x9F07, 0xC652,
- 0x9F09, 0xF965, 0x9F0A, 0xF97E, 0x9F0E, 0xB9A9, 0x9F0F, 0xE8F2,
- 0x9F10, 0xE8F3, 0x9F12, 0xECB7, 0x9F13, 0xB9AA, 0x9F15, 0xC35D,
- 0x9F16, 0xF1E3, 0x9F18, 0xF6CF, 0x9F19, 0xC567, 0x9F1A, 0xF6D0,
- 0x9F1B, 0xF6CE, 0x9F1C, 0xF879, 0x9F1E, 0xF8E9, 0x9F20, 0xB9AB,
- 0x9F22, 0xEFB4, 0x9F23, 0xEFB3, 0x9F24, 0xEFB2, 0x9F25, 0xF1E4,
- 0x9F28, 0xF1E8, 0x9F29, 0xF1E7, 0x9F2A, 0xF1E6, 0x9F2B, 0xF1E5,
- 0x9F2C, 0xC35E, 0x9F2D, 0xF3F6, 0x9F2E, 0xF5B9, 0x9F2F, 0xC4D3,
- 0x9F30, 0xF5B8, 0x9F31, 0xF6D1, 0x9F32, 0xF7CB, 0x9F33, 0xF7CA,
- 0x9F34, 0xC5C4, 0x9F35, 0xF7C9, 0x9F36, 0xF87C, 0x9F37, 0xF87B,
- 0x9F38, 0xF87A, 0x9F3B, 0xBBF3, 0x9F3D, 0xECB8, 0x9F3E, 0xC24D,
- 0x9F40, 0xF3F7, 0x9F41, 0xF3F8, 0x9F42, 0xF7CC, 0x9F43, 0xF87D,
- 0x9F46, 0xF8EA, 0x9F47, 0xF966, 0x9F48, 0xF9B9, 0x9F49, 0xF9D4,
- 0x9F4A, 0xBBF4, 0x9F4B, 0xC24E, 0x9F4C, 0xF1E9, 0x9F4D, 0xF3F9,
- 0x9F4E, 0xF6D2, 0x9F4F, 0xF87E, 0x9F52, 0xBEA6, 0x9F54, 0xEFB5,
- 0x9F55, 0xF1EA, 0x9F56, 0xF3FA, 0x9F57, 0xF3FB, 0x9F58, 0xF3FC,
- 0x9F59, 0xF5BE, 0x9F5B, 0xF5BA, 0x9F5C, 0xC568, 0x9F5D, 0xF5BD,
- 0x9F5E, 0xF5BC, 0x9F5F, 0xC4D4, 0x9F60, 0xF5BB, 0x9F61, 0xC4D6,
- 0x9F63, 0xC4D5, 0x9F64, 0xF6D4, 0x9F65, 0xF6D3, 0x9F66, 0xC569,
- 0x9F67, 0xC56A, 0x9F6A, 0xC5C6, 0x9F6B, 0xF7CD, 0x9F6C, 0xC5C5,
- 0x9F6E, 0xF8A3, 0x9F6F, 0xF8A4, 0x9F70, 0xF8A2, 0x9F71, 0xF8A1,
- 0x9F72, 0xC654, 0x9F74, 0xF8EB, 0x9F75, 0xF8EC, 0x9F76, 0xF8ED,
- 0x9F77, 0xC653, 0x9F78, 0xF967, 0x9F79, 0xF96A, 0x9F7A, 0xF969,
- 0x9F7B, 0xF968, 0x9F7E, 0xF9D3, 0x9F8D, 0xC073, 0x9F90, 0xC365,
- 0x9F91, 0xF5BF, 0x9F92, 0xF6D5, 0x9F94, 0xC5C7, 0x9F95, 0xF7CE,
- 0x9F98, 0xF9D5, 0x9F9C, 0xC074, 0x9FA0, 0xEFB6, 0x9FA2, 0xF7CF,
- 0x9FA4, 0xF9A1, 0xFA0C, 0xC94A, 0xFA0D, 0xDDFC, 0xFE30, 0xA14A,
- 0xFE31, 0xA157, 0xFE33, 0xA159, 0xFE34, 0xA15B, 0xFE35, 0xA15F,
- 0xFE36, 0xA160, 0xFE37, 0xA163, 0xFE38, 0xA164, 0xFE39, 0xA167,
- 0xFE3A, 0xA168, 0xFE3B, 0xA16B, 0xFE3C, 0xA16C, 0xFE3D, 0xA16F,
- 0xFE3E, 0xA170, 0xFE3F, 0xA173, 0xFE40, 0xA174, 0xFE41, 0xA177,
- 0xFE42, 0xA178, 0xFE43, 0xA17B, 0xFE44, 0xA17C, 0xFE49, 0xA1C6,
- 0xFE4A, 0xA1C7, 0xFE4B, 0xA1CA, 0xFE4C, 0xA1CB, 0xFE4D, 0xA1C8,
- 0xFE4E, 0xA1C9, 0xFE4F, 0xA15C, 0xFE50, 0xA14D, 0xFE51, 0xA14E,
- 0xFE52, 0xA14F, 0xFE54, 0xA151, 0xFE55, 0xA152, 0xFE56, 0xA153,
- 0xFE57, 0xA154, 0xFE59, 0xA17D, 0xFE5A, 0xA17E, 0xFE5B, 0xA1A1,
- 0xFE5C, 0xA1A2, 0xFE5D, 0xA1A3, 0xFE5E, 0xA1A4, 0xFE5F, 0xA1CC,
- 0xFE60, 0xA1CD, 0xFE61, 0xA1CE, 0xFE62, 0xA1DE, 0xFE63, 0xA1DF,
- 0xFE64, 0xA1E0, 0xFE65, 0xA1E1, 0xFE66, 0xA1E2, 0xFE68, 0xA242,
- 0xFE69, 0xA24C, 0xFE6A, 0xA24D, 0xFE6B, 0xA24E, 0xFF01, 0xA149,
- 0xFF03, 0xA1AD, 0xFF04, 0xA243, 0xFF05, 0xA248, 0xFF06, 0xA1AE,
- 0xFF08, 0xA15D, 0xFF09, 0xA15E, 0xFF0A, 0xA1AF, 0xFF0B, 0xA1CF,
- 0xFF0C, 0xA141, 0xFF0D, 0xA1D0, 0xFF0E, 0xA144, 0xFF0F, 0xA1FE,
- 0xFF10, 0xA2AF, 0xFF11, 0xA2B0, 0xFF12, 0xA2B1, 0xFF13, 0xA2B2,
- 0xFF14, 0xA2B3, 0xFF15, 0xA2B4, 0xFF16, 0xA2B5, 0xFF17, 0xA2B6,
- 0xFF18, 0xA2B7, 0xFF19, 0xA2B8, 0xFF1A, 0xA147, 0xFF1B, 0xA146,
- 0xFF1C, 0xA1D5, 0xFF1D, 0xA1D7, 0xFF1E, 0xA1D6, 0xFF1F, 0xA148,
- 0xFF20, 0xA249, 0xFF21, 0xA2CF, 0xFF22, 0xA2D0, 0xFF23, 0xA2D1,
- 0xFF24, 0xA2D2, 0xFF25, 0xA2D3, 0xFF26, 0xA2D4, 0xFF27, 0xA2D5,
- 0xFF28, 0xA2D6, 0xFF29, 0xA2D7, 0xFF2A, 0xA2D8, 0xFF2B, 0xA2D9,
- 0xFF2C, 0xA2DA, 0xFF2D, 0xA2DB, 0xFF2E, 0xA2DC, 0xFF2F, 0xA2DD,
- 0xFF30, 0xA2DE, 0xFF31, 0xA2DF, 0xFF32, 0xA2E0, 0xFF33, 0xA2E1,
- 0xFF34, 0xA2E2, 0xFF35, 0xA2E3, 0xFF36, 0xA2E4, 0xFF37, 0xA2E5,
- 0xFF38, 0xA2E6, 0xFF39, 0xA2E7, 0xFF3A, 0xA2E8, 0xFF3C, 0xA240,
- 0xFF3F, 0xA1C4, 0xFF41, 0xA2E9, 0xFF42, 0xA2EA, 0xFF43, 0xA2EB,
- 0xFF44, 0xA2EC, 0xFF45, 0xA2ED, 0xFF46, 0xA2EE, 0xFF47, 0xA2EF,
- 0xFF48, 0xA2F0, 0xFF49, 0xA2F1, 0xFF4A, 0xA2F2, 0xFF4B, 0xA2F3,
- 0xFF4C, 0xA2F4, 0xFF4D, 0xA2F5, 0xFF4E, 0xA2F6, 0xFF4F, 0xA2F7,
- 0xFF50, 0xA2F8, 0xFF51, 0xA2F9, 0xFF52, 0xA2FA, 0xFF53, 0xA2FB,
- 0xFF54, 0xA2FC, 0xFF55, 0xA2FD, 0xFF56, 0xA2FE, 0xFF57, 0xA340,
- 0xFF58, 0xA341, 0xFF59, 0xA342, 0xFF5A, 0xA343, 0xFF5B, 0xA161,
- 0xFF5C, 0xA155, 0xFF5D, 0xA162, 0xFF5E, 0xA1E3, 0xFFE0, 0xA246,
- 0xFFE1, 0xA247, 0xFFE3, 0xA1C3, 0xFFE5, 0xA244, 0, 0
-};
-
-static
-const WCHAR oem2uni[] = {
- /* OEM - Unicode, OEM - Unicode, OEM - Unicode, OEM - Unicode */
- 0xA140, 0x3000, 0xA141, 0xFF0C, 0xA142, 0x3001, 0xA143, 0x3002,
- 0xA144, 0xFF0E, 0xA145, 0x2027, 0xA146, 0xFF1B, 0xA147, 0xFF1A,
- 0xA148, 0xFF1F, 0xA149, 0xFF01, 0xA14A, 0xFE30, 0xA14B, 0x2026,
- 0xA14C, 0x2025, 0xA14D, 0xFE50, 0xA14E, 0xFE51, 0xA14F, 0xFE52,
- 0xA150, 0x00B7, 0xA151, 0xFE54, 0xA152, 0xFE55, 0xA153, 0xFE56,
- 0xA154, 0xFE57, 0xA155, 0xFF5C, 0xA156, 0x2013, 0xA157, 0xFE31,
- 0xA158, 0x2014, 0xA159, 0xFE33, 0xA15A, 0x2574, 0xA15B, 0xFE34,
- 0xA15C, 0xFE4F, 0xA15D, 0xFF08, 0xA15E, 0xFF09, 0xA15F, 0xFE35,
- 0xA160, 0xFE36, 0xA161, 0xFF5B, 0xA162, 0xFF5D, 0xA163, 0xFE37,
- 0xA164, 0xFE38, 0xA165, 0x3014, 0xA166, 0x3015, 0xA167, 0xFE39,
- 0xA168, 0xFE3A, 0xA169, 0x3010, 0xA16A, 0x3011, 0xA16B, 0xFE3B,
- 0xA16C, 0xFE3C, 0xA16D, 0x300A, 0xA16E, 0x300B, 0xA16F, 0xFE3D,
- 0xA170, 0xFE3E, 0xA171, 0x3008, 0xA172, 0x3009, 0xA173, 0xFE3F,
- 0xA174, 0xFE40, 0xA175, 0x300C, 0xA176, 0x300D, 0xA177, 0xFE41,
- 0xA178, 0xFE42, 0xA179, 0x300E, 0xA17A, 0x300F, 0xA17B, 0xFE43,
- 0xA17C, 0xFE44, 0xA17D, 0xFE59, 0xA17E, 0xFE5A, 0xA1A1, 0xFE5B,
- 0xA1A2, 0xFE5C, 0xA1A3, 0xFE5D, 0xA1A4, 0xFE5E, 0xA1A5, 0x2018,
- 0xA1A6, 0x2019, 0xA1A7, 0x201C, 0xA1A8, 0x201D, 0xA1A9, 0x301D,
- 0xA1AA, 0x301E, 0xA1AB, 0x2035, 0xA1AC, 0x2032, 0xA1AD, 0xFF03,
- 0xA1AE, 0xFF06, 0xA1AF, 0xFF0A, 0xA1B0, 0x203B, 0xA1B1, 0x00A7,
- 0xA1B2, 0x3003, 0xA1B3, 0x25CB, 0xA1B4, 0x25CF, 0xA1B5, 0x25B3,
- 0xA1B6, 0x25B2, 0xA1B7, 0x25CE, 0xA1B8, 0x2606, 0xA1B9, 0x2605,
- 0xA1BA, 0x25C7, 0xA1BB, 0x25C6, 0xA1BC, 0x25A1, 0xA1BD, 0x25A0,
- 0xA1BE, 0x25BD, 0xA1BF, 0x25BC, 0xA1C0, 0x32A3, 0xA1C1, 0x2105,
- 0xA1C2, 0x00AF, 0xA1C3, 0xFFE3, 0xA1C4, 0xFF3F, 0xA1C5, 0x02CD,
- 0xA1C6, 0xFE49, 0xA1C7, 0xFE4A, 0xA1C8, 0xFE4D, 0xA1C9, 0xFE4E,
- 0xA1CA, 0xFE4B, 0xA1CB, 0xFE4C, 0xA1CC, 0xFE5F, 0xA1CD, 0xFE60,
- 0xA1CE, 0xFE61, 0xA1CF, 0xFF0B, 0xA1D0, 0xFF0D, 0xA1D1, 0x00D7,
- 0xA1D2, 0x00F7, 0xA1D3, 0x00B1, 0xA1D4, 0x221A, 0xA1D5, 0xFF1C,
- 0xA1D6, 0xFF1E, 0xA1D7, 0xFF1D, 0xA1D8, 0x2266, 0xA1D9, 0x2267,
- 0xA1DA, 0x2260, 0xA1DB, 0x221E, 0xA1DC, 0x2252, 0xA1DD, 0x2261,
- 0xA1DE, 0xFE62, 0xA1DF, 0xFE63, 0xA1E0, 0xFE64, 0xA1E1, 0xFE65,
- 0xA1E2, 0xFE66, 0xA1E3, 0xFF5E, 0xA1E4, 0x2229, 0xA1E5, 0x222A,
- 0xA1E6, 0x22A5, 0xA1E7, 0x2220, 0xA1E8, 0x221F, 0xA1E9, 0x22BF,
- 0xA1EA, 0x33D2, 0xA1EB, 0x33D1, 0xA1EC, 0x222B, 0xA1ED, 0x222E,
- 0xA1EE, 0x2235, 0xA1EF, 0x2234, 0xA1F0, 0x2640, 0xA1F1, 0x2642,
- 0xA1F2, 0x2295, 0xA1F3, 0x2299, 0xA1F4, 0x2191, 0xA1F5, 0x2193,
- 0xA1F6, 0x2190, 0xA1F7, 0x2192, 0xA1F8, 0x2196, 0xA1F9, 0x2197,
- 0xA1FA, 0x2199, 0xA1FB, 0x2198, 0xA1FC, 0x2225, 0xA1FD, 0x2223,
- 0xA1FE, 0xFF0F, 0xA240, 0xFF3C, 0xA241, 0x2215, 0xA242, 0xFE68,
- 0xA243, 0xFF04, 0xA244, 0xFFE5, 0xA245, 0x3012, 0xA246, 0xFFE0,
- 0xA247, 0xFFE1, 0xA248, 0xFF05, 0xA249, 0xFF20, 0xA24A, 0x2103,
- 0xA24B, 0x2109, 0xA24C, 0xFE69, 0xA24D, 0xFE6A, 0xA24E, 0xFE6B,
- 0xA24F, 0x33D5, 0xA250, 0x339C, 0xA251, 0x339D, 0xA252, 0x339E,
- 0xA253, 0x33CE, 0xA254, 0x33A1, 0xA255, 0x338E, 0xA256, 0x338F,
- 0xA257, 0x33C4, 0xA258, 0x00B0, 0xA259, 0x5159, 0xA25A, 0x515B,
- 0xA25B, 0x515E, 0xA25C, 0x515D, 0xA25D, 0x5161, 0xA25E, 0x5163,
- 0xA25F, 0x55E7, 0xA260, 0x74E9, 0xA261, 0x7CCE, 0xA262, 0x2581,
- 0xA263, 0x2582, 0xA264, 0x2583, 0xA265, 0x2584, 0xA266, 0x2585,
- 0xA267, 0x2586, 0xA268, 0x2587, 0xA269, 0x2588, 0xA26A, 0x258F,
- 0xA26B, 0x258E, 0xA26C, 0x258D, 0xA26D, 0x258C, 0xA26E, 0x258B,
- 0xA26F, 0x258A, 0xA270, 0x2589, 0xA271, 0x253C, 0xA272, 0x2534,
- 0xA273, 0x252C, 0xA274, 0x2524, 0xA275, 0x251C, 0xA276, 0x2594,
- 0xA277, 0x2500, 0xA278, 0x2502, 0xA279, 0x2595, 0xA27A, 0x250C,
- 0xA27B, 0x2510, 0xA27C, 0x2514, 0xA27D, 0x2518, 0xA27E, 0x256D,
- 0xA2A1, 0x256E, 0xA2A2, 0x2570, 0xA2A3, 0x256F, 0xA2A4, 0x2550,
- 0xA2A5, 0x255E, 0xA2A6, 0x256A, 0xA2A7, 0x2561, 0xA2A8, 0x25E2,
- 0xA2A9, 0x25E3, 0xA2AA, 0x25E5, 0xA2AB, 0x25E4, 0xA2AC, 0x2571,
- 0xA2AD, 0x2572, 0xA2AE, 0x2573, 0xA2AF, 0xFF10, 0xA2B0, 0xFF11,
- 0xA2B1, 0xFF12, 0xA2B2, 0xFF13, 0xA2B3, 0xFF14, 0xA2B4, 0xFF15,
- 0xA2B5, 0xFF16, 0xA2B6, 0xFF17, 0xA2B7, 0xFF18, 0xA2B8, 0xFF19,
- 0xA2B9, 0x2160, 0xA2BA, 0x2161, 0xA2BB, 0x2162, 0xA2BC, 0x2163,
- 0xA2BD, 0x2164, 0xA2BE, 0x2165, 0xA2BF, 0x2166, 0xA2C0, 0x2167,
- 0xA2C1, 0x2168, 0xA2C2, 0x2169, 0xA2C3, 0x3021, 0xA2C4, 0x3022,
- 0xA2C5, 0x3023, 0xA2C6, 0x3024, 0xA2C7, 0x3025, 0xA2C8, 0x3026,
- 0xA2C9, 0x3027, 0xA2CA, 0x3028, 0xA2CB, 0x3029, 0xA2CC, 0x5341,
- 0xA2CD, 0x5344, 0xA2CE, 0x5345, 0xA2CF, 0xFF21, 0xA2D0, 0xFF22,
- 0xA2D1, 0xFF23, 0xA2D2, 0xFF24, 0xA2D3, 0xFF25, 0xA2D4, 0xFF26,
- 0xA2D5, 0xFF27, 0xA2D6, 0xFF28, 0xA2D7, 0xFF29, 0xA2D8, 0xFF2A,
- 0xA2D9, 0xFF2B, 0xA2DA, 0xFF2C, 0xA2DB, 0xFF2D, 0xA2DC, 0xFF2E,
- 0xA2DD, 0xFF2F, 0xA2DE, 0xFF30, 0xA2DF, 0xFF31, 0xA2E0, 0xFF32,
- 0xA2E1, 0xFF33, 0xA2E2, 0xFF34, 0xA2E3, 0xFF35, 0xA2E4, 0xFF36,
- 0xA2E5, 0xFF37, 0xA2E6, 0xFF38, 0xA2E7, 0xFF39, 0xA2E8, 0xFF3A,
- 0xA2E9, 0xFF41, 0xA2EA, 0xFF42, 0xA2EB, 0xFF43, 0xA2EC, 0xFF44,
- 0xA2ED, 0xFF45, 0xA2EE, 0xFF46, 0xA2EF, 0xFF47, 0xA2F0, 0xFF48,
- 0xA2F1, 0xFF49, 0xA2F2, 0xFF4A, 0xA2F3, 0xFF4B, 0xA2F4, 0xFF4C,
- 0xA2F5, 0xFF4D, 0xA2F6, 0xFF4E, 0xA2F7, 0xFF4F, 0xA2F8, 0xFF50,
- 0xA2F9, 0xFF51, 0xA2FA, 0xFF52, 0xA2FB, 0xFF53, 0xA2FC, 0xFF54,
- 0xA2FD, 0xFF55, 0xA2FE, 0xFF56, 0xA340, 0xFF57, 0xA341, 0xFF58,
- 0xA342, 0xFF59, 0xA343, 0xFF5A, 0xA344, 0x0391, 0xA345, 0x0392,
- 0xA346, 0x0393, 0xA347, 0x0394, 0xA348, 0x0395, 0xA349, 0x0396,
- 0xA34A, 0x0397, 0xA34B, 0x0398, 0xA34C, 0x0399, 0xA34D, 0x039A,
- 0xA34E, 0x039B, 0xA34F, 0x039C, 0xA350, 0x039D, 0xA351, 0x039E,
- 0xA352, 0x039F, 0xA353, 0x03A0, 0xA354, 0x03A1, 0xA355, 0x03A3,
- 0xA356, 0x03A4, 0xA357, 0x03A5, 0xA358, 0x03A6, 0xA359, 0x03A7,
- 0xA35A, 0x03A8, 0xA35B, 0x03A9, 0xA35C, 0x03B1, 0xA35D, 0x03B2,
- 0xA35E, 0x03B3, 0xA35F, 0x03B4, 0xA360, 0x03B5, 0xA361, 0x03B6,
- 0xA362, 0x03B7, 0xA363, 0x03B8, 0xA364, 0x03B9, 0xA365, 0x03BA,
- 0xA366, 0x03BB, 0xA367, 0x03BC, 0xA368, 0x03BD, 0xA369, 0x03BE,
- 0xA36A, 0x03BF, 0xA36B, 0x03C0, 0xA36C, 0x03C1, 0xA36D, 0x03C3,
- 0xA36E, 0x03C4, 0xA36F, 0x03C5, 0xA370, 0x03C6, 0xA371, 0x03C7,
- 0xA372, 0x03C8, 0xA373, 0x03C9, 0xA374, 0x3105, 0xA375, 0x3106,
- 0xA376, 0x3107, 0xA377, 0x3108, 0xA378, 0x3109, 0xA379, 0x310A,
- 0xA37A, 0x310B, 0xA37B, 0x310C, 0xA37C, 0x310D, 0xA37D, 0x310E,
- 0xA37E, 0x310F, 0xA3A1, 0x3110, 0xA3A2, 0x3111, 0xA3A3, 0x3112,
- 0xA3A4, 0x3113, 0xA3A5, 0x3114, 0xA3A6, 0x3115, 0xA3A7, 0x3116,
- 0xA3A8, 0x3117, 0xA3A9, 0x3118, 0xA3AA, 0x3119, 0xA3AB, 0x311A,
- 0xA3AC, 0x311B, 0xA3AD, 0x311C, 0xA3AE, 0x311D, 0xA3AF, 0x311E,
- 0xA3B0, 0x311F, 0xA3B1, 0x3120, 0xA3B2, 0x3121, 0xA3B3, 0x3122,
- 0xA3B4, 0x3123, 0xA3B5, 0x3124, 0xA3B6, 0x3125, 0xA3B7, 0x3126,
- 0xA3B8, 0x3127, 0xA3B9, 0x3128, 0xA3BA, 0x3129, 0xA3BB, 0x02D9,
- 0xA3BC, 0x02C9, 0xA3BD, 0x02CA, 0xA3BE, 0x02C7, 0xA3BF, 0x02CB,
- 0xA3E1, 0x20AC, 0xA440, 0x4E00, 0xA441, 0x4E59, 0xA442, 0x4E01,
- 0xA443, 0x4E03, 0xA444, 0x4E43, 0xA445, 0x4E5D, 0xA446, 0x4E86,
- 0xA447, 0x4E8C, 0xA448, 0x4EBA, 0xA449, 0x513F, 0xA44A, 0x5165,
- 0xA44B, 0x516B, 0xA44C, 0x51E0, 0xA44D, 0x5200, 0xA44E, 0x5201,
- 0xA44F, 0x529B, 0xA450, 0x5315, 0xA451, 0x5341, 0xA452, 0x535C,
- 0xA453, 0x53C8, 0xA454, 0x4E09, 0xA455, 0x4E0B, 0xA456, 0x4E08,
- 0xA457, 0x4E0A, 0xA458, 0x4E2B, 0xA459, 0x4E38, 0xA45A, 0x51E1,
- 0xA45B, 0x4E45, 0xA45C, 0x4E48, 0xA45D, 0x4E5F, 0xA45E, 0x4E5E,
- 0xA45F, 0x4E8E, 0xA460, 0x4EA1, 0xA461, 0x5140, 0xA462, 0x5203,
- 0xA463, 0x52FA, 0xA464, 0x5343, 0xA465, 0x53C9, 0xA466, 0x53E3,
- 0xA467, 0x571F, 0xA468, 0x58EB, 0xA469, 0x5915, 0xA46A, 0x5927,
- 0xA46B, 0x5973, 0xA46C, 0x5B50, 0xA46D, 0x5B51, 0xA46E, 0x5B53,
- 0xA46F, 0x5BF8, 0xA470, 0x5C0F, 0xA471, 0x5C22, 0xA472, 0x5C38,
- 0xA473, 0x5C71, 0xA474, 0x5DDD, 0xA475, 0x5DE5, 0xA476, 0x5DF1,
- 0xA477, 0x5DF2, 0xA478, 0x5DF3, 0xA479, 0x5DFE, 0xA47A, 0x5E72,
- 0xA47B, 0x5EFE, 0xA47C, 0x5F0B, 0xA47D, 0x5F13, 0xA47E, 0x624D,
- 0xA4A1, 0x4E11, 0xA4A2, 0x4E10, 0xA4A3, 0x4E0D, 0xA4A4, 0x4E2D,
- 0xA4A5, 0x4E30, 0xA4A6, 0x4E39, 0xA4A7, 0x4E4B, 0xA4A8, 0x5C39,
- 0xA4A9, 0x4E88, 0xA4AA, 0x4E91, 0xA4AB, 0x4E95, 0xA4AC, 0x4E92,
- 0xA4AD, 0x4E94, 0xA4AE, 0x4EA2, 0xA4AF, 0x4EC1, 0xA4B0, 0x4EC0,
- 0xA4B1, 0x4EC3, 0xA4B2, 0x4EC6, 0xA4B3, 0x4EC7, 0xA4B4, 0x4ECD,
- 0xA4B5, 0x4ECA, 0xA4B6, 0x4ECB, 0xA4B7, 0x4EC4, 0xA4B8, 0x5143,
- 0xA4B9, 0x5141, 0xA4BA, 0x5167, 0xA4BB, 0x516D, 0xA4BC, 0x516E,
- 0xA4BD, 0x516C, 0xA4BE, 0x5197, 0xA4BF, 0x51F6, 0xA4C0, 0x5206,
- 0xA4C1, 0x5207, 0xA4C2, 0x5208, 0xA4C3, 0x52FB, 0xA4C4, 0x52FE,
- 0xA4C5, 0x52FF, 0xA4C6, 0x5316, 0xA4C7, 0x5339, 0xA4C8, 0x5348,
- 0xA4C9, 0x5347, 0xA4CA, 0x5345, 0xA4CB, 0x535E, 0xA4CC, 0x5384,
- 0xA4CD, 0x53CB, 0xA4CE, 0x53CA, 0xA4CF, 0x53CD, 0xA4D0, 0x58EC,
- 0xA4D1, 0x5929, 0xA4D2, 0x592B, 0xA4D3, 0x592A, 0xA4D4, 0x592D,
- 0xA4D5, 0x5B54, 0xA4D6, 0x5C11, 0xA4D7, 0x5C24, 0xA4D8, 0x5C3A,
- 0xA4D9, 0x5C6F, 0xA4DA, 0x5DF4, 0xA4DB, 0x5E7B, 0xA4DC, 0x5EFF,
- 0xA4DD, 0x5F14, 0xA4DE, 0x5F15, 0xA4DF, 0x5FC3, 0xA4E0, 0x6208,
- 0xA4E1, 0x6236, 0xA4E2, 0x624B, 0xA4E3, 0x624E, 0xA4E4, 0x652F,
- 0xA4E5, 0x6587, 0xA4E6, 0x6597, 0xA4E7, 0x65A4, 0xA4E8, 0x65B9,
- 0xA4E9, 0x65E5, 0xA4EA, 0x66F0, 0xA4EB, 0x6708, 0xA4EC, 0x6728,
- 0xA4ED, 0x6B20, 0xA4EE, 0x6B62, 0xA4EF, 0x6B79, 0xA4F0, 0x6BCB,
- 0xA4F1, 0x6BD4, 0xA4F2, 0x6BDB, 0xA4F3, 0x6C0F, 0xA4F4, 0x6C34,
- 0xA4F5, 0x706B, 0xA4F6, 0x722A, 0xA4F7, 0x7236, 0xA4F8, 0x723B,
- 0xA4F9, 0x7247, 0xA4FA, 0x7259, 0xA4FB, 0x725B, 0xA4FC, 0x72AC,
- 0xA4FD, 0x738B, 0xA4FE, 0x4E19, 0xA540, 0x4E16, 0xA541, 0x4E15,
- 0xA542, 0x4E14, 0xA543, 0x4E18, 0xA544, 0x4E3B, 0xA545, 0x4E4D,
- 0xA546, 0x4E4F, 0xA547, 0x4E4E, 0xA548, 0x4EE5, 0xA549, 0x4ED8,
- 0xA54A, 0x4ED4, 0xA54B, 0x4ED5, 0xA54C, 0x4ED6, 0xA54D, 0x4ED7,
- 0xA54E, 0x4EE3, 0xA54F, 0x4EE4, 0xA550, 0x4ED9, 0xA551, 0x4EDE,
- 0xA552, 0x5145, 0xA553, 0x5144, 0xA554, 0x5189, 0xA555, 0x518A,
- 0xA556, 0x51AC, 0xA557, 0x51F9, 0xA558, 0x51FA, 0xA559, 0x51F8,
- 0xA55A, 0x520A, 0xA55B, 0x52A0, 0xA55C, 0x529F, 0xA55D, 0x5305,
- 0xA55E, 0x5306, 0xA55F, 0x5317, 0xA560, 0x531D, 0xA561, 0x4EDF,
- 0xA562, 0x534A, 0xA563, 0x5349, 0xA564, 0x5361, 0xA565, 0x5360,
- 0xA566, 0x536F, 0xA567, 0x536E, 0xA568, 0x53BB, 0xA569, 0x53EF,
- 0xA56A, 0x53E4, 0xA56B, 0x53F3, 0xA56C, 0x53EC, 0xA56D, 0x53EE,
- 0xA56E, 0x53E9, 0xA56F, 0x53E8, 0xA570, 0x53FC, 0xA571, 0x53F8,
- 0xA572, 0x53F5, 0xA573, 0x53EB, 0xA574, 0x53E6, 0xA575, 0x53EA,
- 0xA576, 0x53F2, 0xA577, 0x53F1, 0xA578, 0x53F0, 0xA579, 0x53E5,
- 0xA57A, 0x53ED, 0xA57B, 0x53FB, 0xA57C, 0x56DB, 0xA57D, 0x56DA,
- 0xA57E, 0x5916, 0xA5A1, 0x592E, 0xA5A2, 0x5931, 0xA5A3, 0x5974,
- 0xA5A4, 0x5976, 0xA5A5, 0x5B55, 0xA5A6, 0x5B83, 0xA5A7, 0x5C3C,
- 0xA5A8, 0x5DE8, 0xA5A9, 0x5DE7, 0xA5AA, 0x5DE6, 0xA5AB, 0x5E02,
- 0xA5AC, 0x5E03, 0xA5AD, 0x5E73, 0xA5AE, 0x5E7C, 0xA5AF, 0x5F01,
- 0xA5B0, 0x5F18, 0xA5B1, 0x5F17, 0xA5B2, 0x5FC5, 0xA5B3, 0x620A,
- 0xA5B4, 0x6253, 0xA5B5, 0x6254, 0xA5B6, 0x6252, 0xA5B7, 0x6251,
- 0xA5B8, 0x65A5, 0xA5B9, 0x65E6, 0xA5BA, 0x672E, 0xA5BB, 0x672C,
- 0xA5BC, 0x672A, 0xA5BD, 0x672B, 0xA5BE, 0x672D, 0xA5BF, 0x6B63,
- 0xA5C0, 0x6BCD, 0xA5C1, 0x6C11, 0xA5C2, 0x6C10, 0xA5C3, 0x6C38,
- 0xA5C4, 0x6C41, 0xA5C5, 0x6C40, 0xA5C6, 0x6C3E, 0xA5C7, 0x72AF,
- 0xA5C8, 0x7384, 0xA5C9, 0x7389, 0xA5CA, 0x74DC, 0xA5CB, 0x74E6,
- 0xA5CC, 0x7518, 0xA5CD, 0x751F, 0xA5CE, 0x7528, 0xA5CF, 0x7529,
- 0xA5D0, 0x7530, 0xA5D1, 0x7531, 0xA5D2, 0x7532, 0xA5D3, 0x7533,
- 0xA5D4, 0x758B, 0xA5D5, 0x767D, 0xA5D6, 0x76AE, 0xA5D7, 0x76BF,
- 0xA5D8, 0x76EE, 0xA5D9, 0x77DB, 0xA5DA, 0x77E2, 0xA5DB, 0x77F3,
- 0xA5DC, 0x793A, 0xA5DD, 0x79BE, 0xA5DE, 0x7A74, 0xA5DF, 0x7ACB,
- 0xA5E0, 0x4E1E, 0xA5E1, 0x4E1F, 0xA5E2, 0x4E52, 0xA5E3, 0x4E53,
- 0xA5E4, 0x4E69, 0xA5E5, 0x4E99, 0xA5E6, 0x4EA4, 0xA5E7, 0x4EA6,
- 0xA5E8, 0x4EA5, 0xA5E9, 0x4EFF, 0xA5EA, 0x4F09, 0xA5EB, 0x4F19,
- 0xA5EC, 0x4F0A, 0xA5ED, 0x4F15, 0xA5EE, 0x4F0D, 0xA5EF, 0x4F10,
- 0xA5F0, 0x4F11, 0xA5F1, 0x4F0F, 0xA5F2, 0x4EF2, 0xA5F3, 0x4EF6,
- 0xA5F4, 0x4EFB, 0xA5F5, 0x4EF0, 0xA5F6, 0x4EF3, 0xA5F7, 0x4EFD,
- 0xA5F8, 0x4F01, 0xA5F9, 0x4F0B, 0xA5FA, 0x5149, 0xA5FB, 0x5147,
- 0xA5FC, 0x5146, 0xA5FD, 0x5148, 0xA5FE, 0x5168, 0xA640, 0x5171,
- 0xA641, 0x518D, 0xA642, 0x51B0, 0xA643, 0x5217, 0xA644, 0x5211,
- 0xA645, 0x5212, 0xA646, 0x520E, 0xA647, 0x5216, 0xA648, 0x52A3,
- 0xA649, 0x5308, 0xA64A, 0x5321, 0xA64B, 0x5320, 0xA64C, 0x5370,
- 0xA64D, 0x5371, 0xA64E, 0x5409, 0xA64F, 0x540F, 0xA650, 0x540C,
- 0xA651, 0x540A, 0xA652, 0x5410, 0xA653, 0x5401, 0xA654, 0x540B,
- 0xA655, 0x5404, 0xA656, 0x5411, 0xA657, 0x540D, 0xA658, 0x5408,
- 0xA659, 0x5403, 0xA65A, 0x540E, 0xA65B, 0x5406, 0xA65C, 0x5412,
- 0xA65D, 0x56E0, 0xA65E, 0x56DE, 0xA65F, 0x56DD, 0xA660, 0x5733,
- 0xA661, 0x5730, 0xA662, 0x5728, 0xA663, 0x572D, 0xA664, 0x572C,
- 0xA665, 0x572F, 0xA666, 0x5729, 0xA667, 0x5919, 0xA668, 0x591A,
- 0xA669, 0x5937, 0xA66A, 0x5938, 0xA66B, 0x5984, 0xA66C, 0x5978,
- 0xA66D, 0x5983, 0xA66E, 0x597D, 0xA66F, 0x5979, 0xA670, 0x5982,
- 0xA671, 0x5981, 0xA672, 0x5B57, 0xA673, 0x5B58, 0xA674, 0x5B87,
- 0xA675, 0x5B88, 0xA676, 0x5B85, 0xA677, 0x5B89, 0xA678, 0x5BFA,
- 0xA679, 0x5C16, 0xA67A, 0x5C79, 0xA67B, 0x5DDE, 0xA67C, 0x5E06,
- 0xA67D, 0x5E76, 0xA67E, 0x5E74, 0xA6A1, 0x5F0F, 0xA6A2, 0x5F1B,
- 0xA6A3, 0x5FD9, 0xA6A4, 0x5FD6, 0xA6A5, 0x620E, 0xA6A6, 0x620C,
- 0xA6A7, 0x620D, 0xA6A8, 0x6210, 0xA6A9, 0x6263, 0xA6AA, 0x625B,
- 0xA6AB, 0x6258, 0xA6AC, 0x6536, 0xA6AD, 0x65E9, 0xA6AE, 0x65E8,
- 0xA6AF, 0x65EC, 0xA6B0, 0x65ED, 0xA6B1, 0x66F2, 0xA6B2, 0x66F3,
- 0xA6B3, 0x6709, 0xA6B4, 0x673D, 0xA6B5, 0x6734, 0xA6B6, 0x6731,
- 0xA6B7, 0x6735, 0xA6B8, 0x6B21, 0xA6B9, 0x6B64, 0xA6BA, 0x6B7B,
- 0xA6BB, 0x6C16, 0xA6BC, 0x6C5D, 0xA6BD, 0x6C57, 0xA6BE, 0x6C59,
- 0xA6BF, 0x6C5F, 0xA6C0, 0x6C60, 0xA6C1, 0x6C50, 0xA6C2, 0x6C55,
- 0xA6C3, 0x6C61, 0xA6C4, 0x6C5B, 0xA6C5, 0x6C4D, 0xA6C6, 0x6C4E,
- 0xA6C7, 0x7070, 0xA6C8, 0x725F, 0xA6C9, 0x725D, 0xA6CA, 0x767E,
- 0xA6CB, 0x7AF9, 0xA6CC, 0x7C73, 0xA6CD, 0x7CF8, 0xA6CE, 0x7F36,
- 0xA6CF, 0x7F8A, 0xA6D0, 0x7FBD, 0xA6D1, 0x8001, 0xA6D2, 0x8003,
- 0xA6D3, 0x800C, 0xA6D4, 0x8012, 0xA6D5, 0x8033, 0xA6D6, 0x807F,
- 0xA6D7, 0x8089, 0xA6D8, 0x808B, 0xA6D9, 0x808C, 0xA6DA, 0x81E3,
- 0xA6DB, 0x81EA, 0xA6DC, 0x81F3, 0xA6DD, 0x81FC, 0xA6DE, 0x820C,
- 0xA6DF, 0x821B, 0xA6E0, 0x821F, 0xA6E1, 0x826E, 0xA6E2, 0x8272,
- 0xA6E3, 0x827E, 0xA6E4, 0x866B, 0xA6E5, 0x8840, 0xA6E6, 0x884C,
- 0xA6E7, 0x8863, 0xA6E8, 0x897F, 0xA6E9, 0x9621, 0xA6EA, 0x4E32,
- 0xA6EB, 0x4EA8, 0xA6EC, 0x4F4D, 0xA6ED, 0x4F4F, 0xA6EE, 0x4F47,
- 0xA6EF, 0x4F57, 0xA6F0, 0x4F5E, 0xA6F1, 0x4F34, 0xA6F2, 0x4F5B,
- 0xA6F3, 0x4F55, 0xA6F4, 0x4F30, 0xA6F5, 0x4F50, 0xA6F6, 0x4F51,
- 0xA6F7, 0x4F3D, 0xA6F8, 0x4F3A, 0xA6F9, 0x4F38, 0xA6FA, 0x4F43,
- 0xA6FB, 0x4F54, 0xA6FC, 0x4F3C, 0xA6FD, 0x4F46, 0xA6FE, 0x4F63,
- 0xA740, 0x4F5C, 0xA741, 0x4F60, 0xA742, 0x4F2F, 0xA743, 0x4F4E,
- 0xA744, 0x4F36, 0xA745, 0x4F59, 0xA746, 0x4F5D, 0xA747, 0x4F48,
- 0xA748, 0x4F5A, 0xA749, 0x514C, 0xA74A, 0x514B, 0xA74B, 0x514D,
- 0xA74C, 0x5175, 0xA74D, 0x51B6, 0xA74E, 0x51B7, 0xA74F, 0x5225,
- 0xA750, 0x5224, 0xA751, 0x5229, 0xA752, 0x522A, 0xA753, 0x5228,
- 0xA754, 0x52AB, 0xA755, 0x52A9, 0xA756, 0x52AA, 0xA757, 0x52AC,
- 0xA758, 0x5323, 0xA759, 0x5373, 0xA75A, 0x5375, 0xA75B, 0x541D,
- 0xA75C, 0x542D, 0xA75D, 0x541E, 0xA75E, 0x543E, 0xA75F, 0x5426,
- 0xA760, 0x544E, 0xA761, 0x5427, 0xA762, 0x5446, 0xA763, 0x5443,
- 0xA764, 0x5433, 0xA765, 0x5448, 0xA766, 0x5442, 0xA767, 0x541B,
- 0xA768, 0x5429, 0xA769, 0x544A, 0xA76A, 0x5439, 0xA76B, 0x543B,
- 0xA76C, 0x5438, 0xA76D, 0x542E, 0xA76E, 0x5435, 0xA76F, 0x5436,
- 0xA770, 0x5420, 0xA771, 0x543C, 0xA772, 0x5440, 0xA773, 0x5431,
- 0xA774, 0x542B, 0xA775, 0x541F, 0xA776, 0x542C, 0xA777, 0x56EA,
- 0xA778, 0x56F0, 0xA779, 0x56E4, 0xA77A, 0x56EB, 0xA77B, 0x574A,
- 0xA77C, 0x5751, 0xA77D, 0x5740, 0xA77E, 0x574D, 0xA7A1, 0x5747,
- 0xA7A2, 0x574E, 0xA7A3, 0x573E, 0xA7A4, 0x5750, 0xA7A5, 0x574F,
- 0xA7A6, 0x573B, 0xA7A7, 0x58EF, 0xA7A8, 0x593E, 0xA7A9, 0x599D,
- 0xA7AA, 0x5992, 0xA7AB, 0x59A8, 0xA7AC, 0x599E, 0xA7AD, 0x59A3,
- 0xA7AE, 0x5999, 0xA7AF, 0x5996, 0xA7B0, 0x598D, 0xA7B1, 0x59A4,
- 0xA7B2, 0x5993, 0xA7B3, 0x598A, 0xA7B4, 0x59A5, 0xA7B5, 0x5B5D,
- 0xA7B6, 0x5B5C, 0xA7B7, 0x5B5A, 0xA7B8, 0x5B5B, 0xA7B9, 0x5B8C,
- 0xA7BA, 0x5B8B, 0xA7BB, 0x5B8F, 0xA7BC, 0x5C2C, 0xA7BD, 0x5C40,
- 0xA7BE, 0x5C41, 0xA7BF, 0x5C3F, 0xA7C0, 0x5C3E, 0xA7C1, 0x5C90,
- 0xA7C2, 0x5C91, 0xA7C3, 0x5C94, 0xA7C4, 0x5C8C, 0xA7C5, 0x5DEB,
- 0xA7C6, 0x5E0C, 0xA7C7, 0x5E8F, 0xA7C8, 0x5E87, 0xA7C9, 0x5E8A,
- 0xA7CA, 0x5EF7, 0xA7CB, 0x5F04, 0xA7CC, 0x5F1F, 0xA7CD, 0x5F64,
- 0xA7CE, 0x5F62, 0xA7CF, 0x5F77, 0xA7D0, 0x5F79, 0xA7D1, 0x5FD8,
- 0xA7D2, 0x5FCC, 0xA7D3, 0x5FD7, 0xA7D4, 0x5FCD, 0xA7D5, 0x5FF1,
- 0xA7D6, 0x5FEB, 0xA7D7, 0x5FF8, 0xA7D8, 0x5FEA, 0xA7D9, 0x6212,
- 0xA7DA, 0x6211, 0xA7DB, 0x6284, 0xA7DC, 0x6297, 0xA7DD, 0x6296,
- 0xA7DE, 0x6280, 0xA7DF, 0x6276, 0xA7E0, 0x6289, 0xA7E1, 0x626D,
- 0xA7E2, 0x628A, 0xA7E3, 0x627C, 0xA7E4, 0x627E, 0xA7E5, 0x6279,
- 0xA7E6, 0x6273, 0xA7E7, 0x6292, 0xA7E8, 0x626F, 0xA7E9, 0x6298,
- 0xA7EA, 0x626E, 0xA7EB, 0x6295, 0xA7EC, 0x6293, 0xA7ED, 0x6291,
- 0xA7EE, 0x6286, 0xA7EF, 0x6539, 0xA7F0, 0x653B, 0xA7F1, 0x6538,
- 0xA7F2, 0x65F1, 0xA7F3, 0x66F4, 0xA7F4, 0x675F, 0xA7F5, 0x674E,
- 0xA7F6, 0x674F, 0xA7F7, 0x6750, 0xA7F8, 0x6751, 0xA7F9, 0x675C,
- 0xA7FA, 0x6756, 0xA7FB, 0x675E, 0xA7FC, 0x6749, 0xA7FD, 0x6746,
- 0xA7FE, 0x6760, 0xA840, 0x6753, 0xA841, 0x6757, 0xA842, 0x6B65,
- 0xA843, 0x6BCF, 0xA844, 0x6C42, 0xA845, 0x6C5E, 0xA846, 0x6C99,
- 0xA847, 0x6C81, 0xA848, 0x6C88, 0xA849, 0x6C89, 0xA84A, 0x6C85,
- 0xA84B, 0x6C9B, 0xA84C, 0x6C6A, 0xA84D, 0x6C7A, 0xA84E, 0x6C90,
- 0xA84F, 0x6C70, 0xA850, 0x6C8C, 0xA851, 0x6C68, 0xA852, 0x6C96,
- 0xA853, 0x6C92, 0xA854, 0x6C7D, 0xA855, 0x6C83, 0xA856, 0x6C72,
- 0xA857, 0x6C7E, 0xA858, 0x6C74, 0xA859, 0x6C86, 0xA85A, 0x6C76,
- 0xA85B, 0x6C8D, 0xA85C, 0x6C94, 0xA85D, 0x6C98, 0xA85E, 0x6C82,
- 0xA85F, 0x7076, 0xA860, 0x707C, 0xA861, 0x707D, 0xA862, 0x7078,
- 0xA863, 0x7262, 0xA864, 0x7261, 0xA865, 0x7260, 0xA866, 0x72C4,
- 0xA867, 0x72C2, 0xA868, 0x7396, 0xA869, 0x752C, 0xA86A, 0x752B,
- 0xA86B, 0x7537, 0xA86C, 0x7538, 0xA86D, 0x7682, 0xA86E, 0x76EF,
- 0xA86F, 0x77E3, 0xA870, 0x79C1, 0xA871, 0x79C0, 0xA872, 0x79BF,
- 0xA873, 0x7A76, 0xA874, 0x7CFB, 0xA875, 0x7F55, 0xA876, 0x8096,
- 0xA877, 0x8093, 0xA878, 0x809D, 0xA879, 0x8098, 0xA87A, 0x809B,
- 0xA87B, 0x809A, 0xA87C, 0x80B2, 0xA87D, 0x826F, 0xA87E, 0x8292,
- 0xA8A1, 0x828B, 0xA8A2, 0x828D, 0xA8A3, 0x898B, 0xA8A4, 0x89D2,
- 0xA8A5, 0x8A00, 0xA8A6, 0x8C37, 0xA8A7, 0x8C46, 0xA8A8, 0x8C55,
- 0xA8A9, 0x8C9D, 0xA8AA, 0x8D64, 0xA8AB, 0x8D70, 0xA8AC, 0x8DB3,
- 0xA8AD, 0x8EAB, 0xA8AE, 0x8ECA, 0xA8AF, 0x8F9B, 0xA8B0, 0x8FB0,
- 0xA8B1, 0x8FC2, 0xA8B2, 0x8FC6, 0xA8B3, 0x8FC5, 0xA8B4, 0x8FC4,
- 0xA8B5, 0x5DE1, 0xA8B6, 0x9091, 0xA8B7, 0x90A2, 0xA8B8, 0x90AA,
- 0xA8B9, 0x90A6, 0xA8BA, 0x90A3, 0xA8BB, 0x9149, 0xA8BC, 0x91C6,
- 0xA8BD, 0x91CC, 0xA8BE, 0x9632, 0xA8BF, 0x962E, 0xA8C0, 0x9631,
- 0xA8C1, 0x962A, 0xA8C2, 0x962C, 0xA8C3, 0x4E26, 0xA8C4, 0x4E56,
- 0xA8C5, 0x4E73, 0xA8C6, 0x4E8B, 0xA8C7, 0x4E9B, 0xA8C8, 0x4E9E,
- 0xA8C9, 0x4EAB, 0xA8CA, 0x4EAC, 0xA8CB, 0x4F6F, 0xA8CC, 0x4F9D,
- 0xA8CD, 0x4F8D, 0xA8CE, 0x4F73, 0xA8CF, 0x4F7F, 0xA8D0, 0x4F6C,
- 0xA8D1, 0x4F9B, 0xA8D2, 0x4F8B, 0xA8D3, 0x4F86, 0xA8D4, 0x4F83,
- 0xA8D5, 0x4F70, 0xA8D6, 0x4F75, 0xA8D7, 0x4F88, 0xA8D8, 0x4F69,
- 0xA8D9, 0x4F7B, 0xA8DA, 0x4F96, 0xA8DB, 0x4F7E, 0xA8DC, 0x4F8F,
- 0xA8DD, 0x4F91, 0xA8DE, 0x4F7A, 0xA8DF, 0x5154, 0xA8E0, 0x5152,
- 0xA8E1, 0x5155, 0xA8E2, 0x5169, 0xA8E3, 0x5177, 0xA8E4, 0x5176,
- 0xA8E5, 0x5178, 0xA8E6, 0x51BD, 0xA8E7, 0x51FD, 0xA8E8, 0x523B,
- 0xA8E9, 0x5238, 0xA8EA, 0x5237, 0xA8EB, 0x523A, 0xA8EC, 0x5230,
- 0xA8ED, 0x522E, 0xA8EE, 0x5236, 0xA8EF, 0x5241, 0xA8F0, 0x52BE,
- 0xA8F1, 0x52BB, 0xA8F2, 0x5352, 0xA8F3, 0x5354, 0xA8F4, 0x5353,
- 0xA8F5, 0x5351, 0xA8F6, 0x5366, 0xA8F7, 0x5377, 0xA8F8, 0x5378,
- 0xA8F9, 0x5379, 0xA8FA, 0x53D6, 0xA8FB, 0x53D4, 0xA8FC, 0x53D7,
- 0xA8FD, 0x5473, 0xA8FE, 0x5475, 0xA940, 0x5496, 0xA941, 0x5478,
- 0xA942, 0x5495, 0xA943, 0x5480, 0xA944, 0x547B, 0xA945, 0x5477,
- 0xA946, 0x5484, 0xA947, 0x5492, 0xA948, 0x5486, 0xA949, 0x547C,
- 0xA94A, 0x5490, 0xA94B, 0x5471, 0xA94C, 0x5476, 0xA94D, 0x548C,
- 0xA94E, 0x549A, 0xA94F, 0x5462, 0xA950, 0x5468, 0xA951, 0x548B,
- 0xA952, 0x547D, 0xA953, 0x548E, 0xA954, 0x56FA, 0xA955, 0x5783,
- 0xA956, 0x5777, 0xA957, 0x576A, 0xA958, 0x5769, 0xA959, 0x5761,
- 0xA95A, 0x5766, 0xA95B, 0x5764, 0xA95C, 0x577C, 0xA95D, 0x591C,
- 0xA95E, 0x5949, 0xA95F, 0x5947, 0xA960, 0x5948, 0xA961, 0x5944,
- 0xA962, 0x5954, 0xA963, 0x59BE, 0xA964, 0x59BB, 0xA965, 0x59D4,
- 0xA966, 0x59B9, 0xA967, 0x59AE, 0xA968, 0x59D1, 0xA969, 0x59C6,
- 0xA96A, 0x59D0, 0xA96B, 0x59CD, 0xA96C, 0x59CB, 0xA96D, 0x59D3,
- 0xA96E, 0x59CA, 0xA96F, 0x59AF, 0xA970, 0x59B3, 0xA971, 0x59D2,
- 0xA972, 0x59C5, 0xA973, 0x5B5F, 0xA974, 0x5B64, 0xA975, 0x5B63,
- 0xA976, 0x5B97, 0xA977, 0x5B9A, 0xA978, 0x5B98, 0xA979, 0x5B9C,
- 0xA97A, 0x5B99, 0xA97B, 0x5B9B, 0xA97C, 0x5C1A, 0xA97D, 0x5C48,
- 0xA97E, 0x5C45, 0xA9A1, 0x5C46, 0xA9A2, 0x5CB7, 0xA9A3, 0x5CA1,
- 0xA9A4, 0x5CB8, 0xA9A5, 0x5CA9, 0xA9A6, 0x5CAB, 0xA9A7, 0x5CB1,
- 0xA9A8, 0x5CB3, 0xA9A9, 0x5E18, 0xA9AA, 0x5E1A, 0xA9AB, 0x5E16,
- 0xA9AC, 0x5E15, 0xA9AD, 0x5E1B, 0xA9AE, 0x5E11, 0xA9AF, 0x5E78,
- 0xA9B0, 0x5E9A, 0xA9B1, 0x5E97, 0xA9B2, 0x5E9C, 0xA9B3, 0x5E95,
- 0xA9B4, 0x5E96, 0xA9B5, 0x5EF6, 0xA9B6, 0x5F26, 0xA9B7, 0x5F27,
- 0xA9B8, 0x5F29, 0xA9B9, 0x5F80, 0xA9BA, 0x5F81, 0xA9BB, 0x5F7F,
- 0xA9BC, 0x5F7C, 0xA9BD, 0x5FDD, 0xA9BE, 0x5FE0, 0xA9BF, 0x5FFD,
- 0xA9C0, 0x5FF5, 0xA9C1, 0x5FFF, 0xA9C2, 0x600F, 0xA9C3, 0x6014,
- 0xA9C4, 0x602F, 0xA9C5, 0x6035, 0xA9C6, 0x6016, 0xA9C7, 0x602A,
- 0xA9C8, 0x6015, 0xA9C9, 0x6021, 0xA9CA, 0x6027, 0xA9CB, 0x6029,
- 0xA9CC, 0x602B, 0xA9CD, 0x601B, 0xA9CE, 0x6216, 0xA9CF, 0x6215,
- 0xA9D0, 0x623F, 0xA9D1, 0x623E, 0xA9D2, 0x6240, 0xA9D3, 0x627F,
- 0xA9D4, 0x62C9, 0xA9D5, 0x62CC, 0xA9D6, 0x62C4, 0xA9D7, 0x62BF,
- 0xA9D8, 0x62C2, 0xA9D9, 0x62B9, 0xA9DA, 0x62D2, 0xA9DB, 0x62DB,
- 0xA9DC, 0x62AB, 0xA9DD, 0x62D3, 0xA9DE, 0x62D4, 0xA9DF, 0x62CB,
- 0xA9E0, 0x62C8, 0xA9E1, 0x62A8, 0xA9E2, 0x62BD, 0xA9E3, 0x62BC,
- 0xA9E4, 0x62D0, 0xA9E5, 0x62D9, 0xA9E6, 0x62C7, 0xA9E7, 0x62CD,
- 0xA9E8, 0x62B5, 0xA9E9, 0x62DA, 0xA9EA, 0x62B1, 0xA9EB, 0x62D8,
- 0xA9EC, 0x62D6, 0xA9ED, 0x62D7, 0xA9EE, 0x62C6, 0xA9EF, 0x62AC,
- 0xA9F0, 0x62CE, 0xA9F1, 0x653E, 0xA9F2, 0x65A7, 0xA9F3, 0x65BC,
- 0xA9F4, 0x65FA, 0xA9F5, 0x6614, 0xA9F6, 0x6613, 0xA9F7, 0x660C,
- 0xA9F8, 0x6606, 0xA9F9, 0x6602, 0xA9FA, 0x660E, 0xA9FB, 0x6600,
- 0xA9FC, 0x660F, 0xA9FD, 0x6615, 0xA9FE, 0x660A, 0xAA40, 0x6607,
- 0xAA41, 0x670D, 0xAA42, 0x670B, 0xAA43, 0x676D, 0xAA44, 0x678B,
- 0xAA45, 0x6795, 0xAA46, 0x6771, 0xAA47, 0x679C, 0xAA48, 0x6773,
- 0xAA49, 0x6777, 0xAA4A, 0x6787, 0xAA4B, 0x679D, 0xAA4C, 0x6797,
- 0xAA4D, 0x676F, 0xAA4E, 0x6770, 0xAA4F, 0x677F, 0xAA50, 0x6789,
- 0xAA51, 0x677E, 0xAA52, 0x6790, 0xAA53, 0x6775, 0xAA54, 0x679A,
- 0xAA55, 0x6793, 0xAA56, 0x677C, 0xAA57, 0x676A, 0xAA58, 0x6772,
- 0xAA59, 0x6B23, 0xAA5A, 0x6B66, 0xAA5B, 0x6B67, 0xAA5C, 0x6B7F,
- 0xAA5D, 0x6C13, 0xAA5E, 0x6C1B, 0xAA5F, 0x6CE3, 0xAA60, 0x6CE8,
- 0xAA61, 0x6CF3, 0xAA62, 0x6CB1, 0xAA63, 0x6CCC, 0xAA64, 0x6CE5,
- 0xAA65, 0x6CB3, 0xAA66, 0x6CBD, 0xAA67, 0x6CBE, 0xAA68, 0x6CBC,
- 0xAA69, 0x6CE2, 0xAA6A, 0x6CAB, 0xAA6B, 0x6CD5, 0xAA6C, 0x6CD3,
- 0xAA6D, 0x6CB8, 0xAA6E, 0x6CC4, 0xAA6F, 0x6CB9, 0xAA70, 0x6CC1,
- 0xAA71, 0x6CAE, 0xAA72, 0x6CD7, 0xAA73, 0x6CC5, 0xAA74, 0x6CF1,
- 0xAA75, 0x6CBF, 0xAA76, 0x6CBB, 0xAA77, 0x6CE1, 0xAA78, 0x6CDB,
- 0xAA79, 0x6CCA, 0xAA7A, 0x6CAC, 0xAA7B, 0x6CEF, 0xAA7C, 0x6CDC,
- 0xAA7D, 0x6CD6, 0xAA7E, 0x6CE0, 0xAAA1, 0x7095, 0xAAA2, 0x708E,
- 0xAAA3, 0x7092, 0xAAA4, 0x708A, 0xAAA5, 0x7099, 0xAAA6, 0x722C,
- 0xAAA7, 0x722D, 0xAAA8, 0x7238, 0xAAA9, 0x7248, 0xAAAA, 0x7267,
- 0xAAAB, 0x7269, 0xAAAC, 0x72C0, 0xAAAD, 0x72CE, 0xAAAE, 0x72D9,
- 0xAAAF, 0x72D7, 0xAAB0, 0x72D0, 0xAAB1, 0x73A9, 0xAAB2, 0x73A8,
- 0xAAB3, 0x739F, 0xAAB4, 0x73AB, 0xAAB5, 0x73A5, 0xAAB6, 0x753D,
- 0xAAB7, 0x759D, 0xAAB8, 0x7599, 0xAAB9, 0x759A, 0xAABA, 0x7684,
- 0xAABB, 0x76C2, 0xAABC, 0x76F2, 0xAABD, 0x76F4, 0xAABE, 0x77E5,
- 0xAABF, 0x77FD, 0xAAC0, 0x793E, 0xAAC1, 0x7940, 0xAAC2, 0x7941,
- 0xAAC3, 0x79C9, 0xAAC4, 0x79C8, 0xAAC5, 0x7A7A, 0xAAC6, 0x7A79,
- 0xAAC7, 0x7AFA, 0xAAC8, 0x7CFE, 0xAAC9, 0x7F54, 0xAACA, 0x7F8C,
- 0xAACB, 0x7F8B, 0xAACC, 0x8005, 0xAACD, 0x80BA, 0xAACE, 0x80A5,
- 0xAACF, 0x80A2, 0xAAD0, 0x80B1, 0xAAD1, 0x80A1, 0xAAD2, 0x80AB,
- 0xAAD3, 0x80A9, 0xAAD4, 0x80B4, 0xAAD5, 0x80AA, 0xAAD6, 0x80AF,
- 0xAAD7, 0x81E5, 0xAAD8, 0x81FE, 0xAAD9, 0x820D, 0xAADA, 0x82B3,
- 0xAADB, 0x829D, 0xAADC, 0x8299, 0xAADD, 0x82AD, 0xAADE, 0x82BD,
- 0xAADF, 0x829F, 0xAAE0, 0x82B9, 0xAAE1, 0x82B1, 0xAAE2, 0x82AC,
- 0xAAE3, 0x82A5, 0xAAE4, 0x82AF, 0xAAE5, 0x82B8, 0xAAE6, 0x82A3,
- 0xAAE7, 0x82B0, 0xAAE8, 0x82BE, 0xAAE9, 0x82B7, 0xAAEA, 0x864E,
- 0xAAEB, 0x8671, 0xAAEC, 0x521D, 0xAAED, 0x8868, 0xAAEE, 0x8ECB,
- 0xAAEF, 0x8FCE, 0xAAF0, 0x8FD4, 0xAAF1, 0x8FD1, 0xAAF2, 0x90B5,
- 0xAAF3, 0x90B8, 0xAAF4, 0x90B1, 0xAAF5, 0x90B6, 0xAAF6, 0x91C7,
- 0xAAF7, 0x91D1, 0xAAF8, 0x9577, 0xAAF9, 0x9580, 0xAAFA, 0x961C,
- 0xAAFB, 0x9640, 0xAAFC, 0x963F, 0xAAFD, 0x963B, 0xAAFE, 0x9644,
- 0xAB40, 0x9642, 0xAB41, 0x96B9, 0xAB42, 0x96E8, 0xAB43, 0x9752,
- 0xAB44, 0x975E, 0xAB45, 0x4E9F, 0xAB46, 0x4EAD, 0xAB47, 0x4EAE,
- 0xAB48, 0x4FE1, 0xAB49, 0x4FB5, 0xAB4A, 0x4FAF, 0xAB4B, 0x4FBF,
- 0xAB4C, 0x4FE0, 0xAB4D, 0x4FD1, 0xAB4E, 0x4FCF, 0xAB4F, 0x4FDD,
- 0xAB50, 0x4FC3, 0xAB51, 0x4FB6, 0xAB52, 0x4FD8, 0xAB53, 0x4FDF,
- 0xAB54, 0x4FCA, 0xAB55, 0x4FD7, 0xAB56, 0x4FAE, 0xAB57, 0x4FD0,
- 0xAB58, 0x4FC4, 0xAB59, 0x4FC2, 0xAB5A, 0x4FDA, 0xAB5B, 0x4FCE,
- 0xAB5C, 0x4FDE, 0xAB5D, 0x4FB7, 0xAB5E, 0x5157, 0xAB5F, 0x5192,
- 0xAB60, 0x5191, 0xAB61, 0x51A0, 0xAB62, 0x524E, 0xAB63, 0x5243,
- 0xAB64, 0x524A, 0xAB65, 0x524D, 0xAB66, 0x524C, 0xAB67, 0x524B,
- 0xAB68, 0x5247, 0xAB69, 0x52C7, 0xAB6A, 0x52C9, 0xAB6B, 0x52C3,
- 0xAB6C, 0x52C1, 0xAB6D, 0x530D, 0xAB6E, 0x5357, 0xAB6F, 0x537B,
- 0xAB70, 0x539A, 0xAB71, 0x53DB, 0xAB72, 0x54AC, 0xAB73, 0x54C0,
- 0xAB74, 0x54A8, 0xAB75, 0x54CE, 0xAB76, 0x54C9, 0xAB77, 0x54B8,
- 0xAB78, 0x54A6, 0xAB79, 0x54B3, 0xAB7A, 0x54C7, 0xAB7B, 0x54C2,
- 0xAB7C, 0x54BD, 0xAB7D, 0x54AA, 0xAB7E, 0x54C1, 0xABA1, 0x54C4,
- 0xABA2, 0x54C8, 0xABA3, 0x54AF, 0xABA4, 0x54AB, 0xABA5, 0x54B1,
- 0xABA6, 0x54BB, 0xABA7, 0x54A9, 0xABA8, 0x54A7, 0xABA9, 0x54BF,
- 0xABAA, 0x56FF, 0xABAB, 0x5782, 0xABAC, 0x578B, 0xABAD, 0x57A0,
- 0xABAE, 0x57A3, 0xABAF, 0x57A2, 0xABB0, 0x57CE, 0xABB1, 0x57AE,
- 0xABB2, 0x5793, 0xABB3, 0x5955, 0xABB4, 0x5951, 0xABB5, 0x594F,
- 0xABB6, 0x594E, 0xABB7, 0x5950, 0xABB8, 0x59DC, 0xABB9, 0x59D8,
- 0xABBA, 0x59FF, 0xABBB, 0x59E3, 0xABBC, 0x59E8, 0xABBD, 0x5A03,
- 0xABBE, 0x59E5, 0xABBF, 0x59EA, 0xABC0, 0x59DA, 0xABC1, 0x59E6,
- 0xABC2, 0x5A01, 0xABC3, 0x59FB, 0xABC4, 0x5B69, 0xABC5, 0x5BA3,
- 0xABC6, 0x5BA6, 0xABC7, 0x5BA4, 0xABC8, 0x5BA2, 0xABC9, 0x5BA5,
- 0xABCA, 0x5C01, 0xABCB, 0x5C4E, 0xABCC, 0x5C4F, 0xABCD, 0x5C4D,
- 0xABCE, 0x5C4B, 0xABCF, 0x5CD9, 0xABD0, 0x5CD2, 0xABD1, 0x5DF7,
- 0xABD2, 0x5E1D, 0xABD3, 0x5E25, 0xABD4, 0x5E1F, 0xABD5, 0x5E7D,
- 0xABD6, 0x5EA0, 0xABD7, 0x5EA6, 0xABD8, 0x5EFA, 0xABD9, 0x5F08,
- 0xABDA, 0x5F2D, 0xABDB, 0x5F65, 0xABDC, 0x5F88, 0xABDD, 0x5F85,
- 0xABDE, 0x5F8A, 0xABDF, 0x5F8B, 0xABE0, 0x5F87, 0xABE1, 0x5F8C,
- 0xABE2, 0x5F89, 0xABE3, 0x6012, 0xABE4, 0x601D, 0xABE5, 0x6020,
- 0xABE6, 0x6025, 0xABE7, 0x600E, 0xABE8, 0x6028, 0xABE9, 0x604D,
- 0xABEA, 0x6070, 0xABEB, 0x6068, 0xABEC, 0x6062, 0xABED, 0x6046,
- 0xABEE, 0x6043, 0xABEF, 0x606C, 0xABF0, 0x606B, 0xABF1, 0x606A,
- 0xABF2, 0x6064, 0xABF3, 0x6241, 0xABF4, 0x62DC, 0xABF5, 0x6316,
- 0xABF6, 0x6309, 0xABF7, 0x62FC, 0xABF8, 0x62ED, 0xABF9, 0x6301,
- 0xABFA, 0x62EE, 0xABFB, 0x62FD, 0xABFC, 0x6307, 0xABFD, 0x62F1,
- 0xABFE, 0x62F7, 0xAC40, 0x62EF, 0xAC41, 0x62EC, 0xAC42, 0x62FE,
- 0xAC43, 0x62F4, 0xAC44, 0x6311, 0xAC45, 0x6302, 0xAC46, 0x653F,
- 0xAC47, 0x6545, 0xAC48, 0x65AB, 0xAC49, 0x65BD, 0xAC4A, 0x65E2,
- 0xAC4B, 0x6625, 0xAC4C, 0x662D, 0xAC4D, 0x6620, 0xAC4E, 0x6627,
- 0xAC4F, 0x662F, 0xAC50, 0x661F, 0xAC51, 0x6628, 0xAC52, 0x6631,
- 0xAC53, 0x6624, 0xAC54, 0x66F7, 0xAC55, 0x67FF, 0xAC56, 0x67D3,
- 0xAC57, 0x67F1, 0xAC58, 0x67D4, 0xAC59, 0x67D0, 0xAC5A, 0x67EC,
- 0xAC5B, 0x67B6, 0xAC5C, 0x67AF, 0xAC5D, 0x67F5, 0xAC5E, 0x67E9,
- 0xAC5F, 0x67EF, 0xAC60, 0x67C4, 0xAC61, 0x67D1, 0xAC62, 0x67B4,
- 0xAC63, 0x67DA, 0xAC64, 0x67E5, 0xAC65, 0x67B8, 0xAC66, 0x67CF,
- 0xAC67, 0x67DE, 0xAC68, 0x67F3, 0xAC69, 0x67B0, 0xAC6A, 0x67D9,
- 0xAC6B, 0x67E2, 0xAC6C, 0x67DD, 0xAC6D, 0x67D2, 0xAC6E, 0x6B6A,
- 0xAC6F, 0x6B83, 0xAC70, 0x6B86, 0xAC71, 0x6BB5, 0xAC72, 0x6BD2,
- 0xAC73, 0x6BD7, 0xAC74, 0x6C1F, 0xAC75, 0x6CC9, 0xAC76, 0x6D0B,
- 0xAC77, 0x6D32, 0xAC78, 0x6D2A, 0xAC79, 0x6D41, 0xAC7A, 0x6D25,
- 0xAC7B, 0x6D0C, 0xAC7C, 0x6D31, 0xAC7D, 0x6D1E, 0xAC7E, 0x6D17,
- 0xACA1, 0x6D3B, 0xACA2, 0x6D3D, 0xACA3, 0x6D3E, 0xACA4, 0x6D36,
- 0xACA5, 0x6D1B, 0xACA6, 0x6CF5, 0xACA7, 0x6D39, 0xACA8, 0x6D27,
- 0xACA9, 0x6D38, 0xACAA, 0x6D29, 0xACAB, 0x6D2E, 0xACAC, 0x6D35,
- 0xACAD, 0x6D0E, 0xACAE, 0x6D2B, 0xACAF, 0x70AB, 0xACB0, 0x70BA,
- 0xACB1, 0x70B3, 0xACB2, 0x70AC, 0xACB3, 0x70AF, 0xACB4, 0x70AD,
- 0xACB5, 0x70B8, 0xACB6, 0x70AE, 0xACB7, 0x70A4, 0xACB8, 0x7230,
- 0xACB9, 0x7272, 0xACBA, 0x726F, 0xACBB, 0x7274, 0xACBC, 0x72E9,
- 0xACBD, 0x72E0, 0xACBE, 0x72E1, 0xACBF, 0x73B7, 0xACC0, 0x73CA,
- 0xACC1, 0x73BB, 0xACC2, 0x73B2, 0xACC3, 0x73CD, 0xACC4, 0x73C0,
- 0xACC5, 0x73B3, 0xACC6, 0x751A, 0xACC7, 0x752D, 0xACC8, 0x754F,
- 0xACC9, 0x754C, 0xACCA, 0x754E, 0xACCB, 0x754B, 0xACCC, 0x75AB,
- 0xACCD, 0x75A4, 0xACCE, 0x75A5, 0xACCF, 0x75A2, 0xACD0, 0x75A3,
- 0xACD1, 0x7678, 0xACD2, 0x7686, 0xACD3, 0x7687, 0xACD4, 0x7688,
- 0xACD5, 0x76C8, 0xACD6, 0x76C6, 0xACD7, 0x76C3, 0xACD8, 0x76C5,
- 0xACD9, 0x7701, 0xACDA, 0x76F9, 0xACDB, 0x76F8, 0xACDC, 0x7709,
- 0xACDD, 0x770B, 0xACDE, 0x76FE, 0xACDF, 0x76FC, 0xACE0, 0x7707,
- 0xACE1, 0x77DC, 0xACE2, 0x7802, 0xACE3, 0x7814, 0xACE4, 0x780C,
- 0xACE5, 0x780D, 0xACE6, 0x7946, 0xACE7, 0x7949, 0xACE8, 0x7948,
- 0xACE9, 0x7947, 0xACEA, 0x79B9, 0xACEB, 0x79BA, 0xACEC, 0x79D1,
- 0xACED, 0x79D2, 0xACEE, 0x79CB, 0xACEF, 0x7A7F, 0xACF0, 0x7A81,
- 0xACF1, 0x7AFF, 0xACF2, 0x7AFD, 0xACF3, 0x7C7D, 0xACF4, 0x7D02,
- 0xACF5, 0x7D05, 0xACF6, 0x7D00, 0xACF7, 0x7D09, 0xACF8, 0x7D07,
- 0xACF9, 0x7D04, 0xACFA, 0x7D06, 0xACFB, 0x7F38, 0xACFC, 0x7F8E,
- 0xACFD, 0x7FBF, 0xACFE, 0x8004, 0xAD40, 0x8010, 0xAD41, 0x800D,
- 0xAD42, 0x8011, 0xAD43, 0x8036, 0xAD44, 0x80D6, 0xAD45, 0x80E5,
- 0xAD46, 0x80DA, 0xAD47, 0x80C3, 0xAD48, 0x80C4, 0xAD49, 0x80CC,
- 0xAD4A, 0x80E1, 0xAD4B, 0x80DB, 0xAD4C, 0x80CE, 0xAD4D, 0x80DE,
- 0xAD4E, 0x80E4, 0xAD4F, 0x80DD, 0xAD50, 0x81F4, 0xAD51, 0x8222,
- 0xAD52, 0x82E7, 0xAD53, 0x8303, 0xAD54, 0x8305, 0xAD55, 0x82E3,
- 0xAD56, 0x82DB, 0xAD57, 0x82E6, 0xAD58, 0x8304, 0xAD59, 0x82E5,
- 0xAD5A, 0x8302, 0xAD5B, 0x8309, 0xAD5C, 0x82D2, 0xAD5D, 0x82D7,
- 0xAD5E, 0x82F1, 0xAD5F, 0x8301, 0xAD60, 0x82DC, 0xAD61, 0x82D4,
- 0xAD62, 0x82D1, 0xAD63, 0x82DE, 0xAD64, 0x82D3, 0xAD65, 0x82DF,
- 0xAD66, 0x82EF, 0xAD67, 0x8306, 0xAD68, 0x8650, 0xAD69, 0x8679,
- 0xAD6A, 0x867B, 0xAD6B, 0x867A, 0xAD6C, 0x884D, 0xAD6D, 0x886B,
- 0xAD6E, 0x8981, 0xAD6F, 0x89D4, 0xAD70, 0x8A08, 0xAD71, 0x8A02,
- 0xAD72, 0x8A03, 0xAD73, 0x8C9E, 0xAD74, 0x8CA0, 0xAD75, 0x8D74,
- 0xAD76, 0x8D73, 0xAD77, 0x8DB4, 0xAD78, 0x8ECD, 0xAD79, 0x8ECC,
- 0xAD7A, 0x8FF0, 0xAD7B, 0x8FE6, 0xAD7C, 0x8FE2, 0xAD7D, 0x8FEA,
- 0xAD7E, 0x8FE5, 0xADA1, 0x8FED, 0xADA2, 0x8FEB, 0xADA3, 0x8FE4,
- 0xADA4, 0x8FE8, 0xADA5, 0x90CA, 0xADA6, 0x90CE, 0xADA7, 0x90C1,
- 0xADA8, 0x90C3, 0xADA9, 0x914B, 0xADAA, 0x914A, 0xADAB, 0x91CD,
- 0xADAC, 0x9582, 0xADAD, 0x9650, 0xADAE, 0x964B, 0xADAF, 0x964C,
- 0xADB0, 0x964D, 0xADB1, 0x9762, 0xADB2, 0x9769, 0xADB3, 0x97CB,
- 0xADB4, 0x97ED, 0xADB5, 0x97F3, 0xADB6, 0x9801, 0xADB7, 0x98A8,
- 0xADB8, 0x98DB, 0xADB9, 0x98DF, 0xADBA, 0x9996, 0xADBB, 0x9999,
- 0xADBC, 0x4E58, 0xADBD, 0x4EB3, 0xADBE, 0x500C, 0xADBF, 0x500D,
- 0xADC0, 0x5023, 0xADC1, 0x4FEF, 0xADC2, 0x5026, 0xADC3, 0x5025,
- 0xADC4, 0x4FF8, 0xADC5, 0x5029, 0xADC6, 0x5016, 0xADC7, 0x5006,
- 0xADC8, 0x503C, 0xADC9, 0x501F, 0xADCA, 0x501A, 0xADCB, 0x5012,
- 0xADCC, 0x5011, 0xADCD, 0x4FFA, 0xADCE, 0x5000, 0xADCF, 0x5014,
- 0xADD0, 0x5028, 0xADD1, 0x4FF1, 0xADD2, 0x5021, 0xADD3, 0x500B,
- 0xADD4, 0x5019, 0xADD5, 0x5018, 0xADD6, 0x4FF3, 0xADD7, 0x4FEE,
- 0xADD8, 0x502D, 0xADD9, 0x502A, 0xADDA, 0x4FFE, 0xADDB, 0x502B,
- 0xADDC, 0x5009, 0xADDD, 0x517C, 0xADDE, 0x51A4, 0xADDF, 0x51A5,
- 0xADE0, 0x51A2, 0xADE1, 0x51CD, 0xADE2, 0x51CC, 0xADE3, 0x51C6,
- 0xADE4, 0x51CB, 0xADE5, 0x5256, 0xADE6, 0x525C, 0xADE7, 0x5254,
- 0xADE8, 0x525B, 0xADE9, 0x525D, 0xADEA, 0x532A, 0xADEB, 0x537F,
- 0xADEC, 0x539F, 0xADED, 0x539D, 0xADEE, 0x53DF, 0xADEF, 0x54E8,
- 0xADF0, 0x5510, 0xADF1, 0x5501, 0xADF2, 0x5537, 0xADF3, 0x54FC,
- 0xADF4, 0x54E5, 0xADF5, 0x54F2, 0xADF6, 0x5506, 0xADF7, 0x54FA,
- 0xADF8, 0x5514, 0xADF9, 0x54E9, 0xADFA, 0x54ED, 0xADFB, 0x54E1,
- 0xADFC, 0x5509, 0xADFD, 0x54EE, 0xADFE, 0x54EA, 0xAE40, 0x54E6,
- 0xAE41, 0x5527, 0xAE42, 0x5507, 0xAE43, 0x54FD, 0xAE44, 0x550F,
- 0xAE45, 0x5703, 0xAE46, 0x5704, 0xAE47, 0x57C2, 0xAE48, 0x57D4,
- 0xAE49, 0x57CB, 0xAE4A, 0x57C3, 0xAE4B, 0x5809, 0xAE4C, 0x590F,
- 0xAE4D, 0x5957, 0xAE4E, 0x5958, 0xAE4F, 0x595A, 0xAE50, 0x5A11,
- 0xAE51, 0x5A18, 0xAE52, 0x5A1C, 0xAE53, 0x5A1F, 0xAE54, 0x5A1B,
- 0xAE55, 0x5A13, 0xAE56, 0x59EC, 0xAE57, 0x5A20, 0xAE58, 0x5A23,
- 0xAE59, 0x5A29, 0xAE5A, 0x5A25, 0xAE5B, 0x5A0C, 0xAE5C, 0x5A09,
- 0xAE5D, 0x5B6B, 0xAE5E, 0x5C58, 0xAE5F, 0x5BB0, 0xAE60, 0x5BB3,
- 0xAE61, 0x5BB6, 0xAE62, 0x5BB4, 0xAE63, 0x5BAE, 0xAE64, 0x5BB5,
- 0xAE65, 0x5BB9, 0xAE66, 0x5BB8, 0xAE67, 0x5C04, 0xAE68, 0x5C51,
- 0xAE69, 0x5C55, 0xAE6A, 0x5C50, 0xAE6B, 0x5CED, 0xAE6C, 0x5CFD,
- 0xAE6D, 0x5CFB, 0xAE6E, 0x5CEA, 0xAE6F, 0x5CE8, 0xAE70, 0x5CF0,
- 0xAE71, 0x5CF6, 0xAE72, 0x5D01, 0xAE73, 0x5CF4, 0xAE74, 0x5DEE,
- 0xAE75, 0x5E2D, 0xAE76, 0x5E2B, 0xAE77, 0x5EAB, 0xAE78, 0x5EAD,
- 0xAE79, 0x5EA7, 0xAE7A, 0x5F31, 0xAE7B, 0x5F92, 0xAE7C, 0x5F91,
- 0xAE7D, 0x5F90, 0xAE7E, 0x6059, 0xAEA1, 0x6063, 0xAEA2, 0x6065,
- 0xAEA3, 0x6050, 0xAEA4, 0x6055, 0xAEA5, 0x606D, 0xAEA6, 0x6069,
- 0xAEA7, 0x606F, 0xAEA8, 0x6084, 0xAEA9, 0x609F, 0xAEAA, 0x609A,
- 0xAEAB, 0x608D, 0xAEAC, 0x6094, 0xAEAD, 0x608C, 0xAEAE, 0x6085,
- 0xAEAF, 0x6096, 0xAEB0, 0x6247, 0xAEB1, 0x62F3, 0xAEB2, 0x6308,
- 0xAEB3, 0x62FF, 0xAEB4, 0x634E, 0xAEB5, 0x633E, 0xAEB6, 0x632F,
- 0xAEB7, 0x6355, 0xAEB8, 0x6342, 0xAEB9, 0x6346, 0xAEBA, 0x634F,
- 0xAEBB, 0x6349, 0xAEBC, 0x633A, 0xAEBD, 0x6350, 0xAEBE, 0x633D,
- 0xAEBF, 0x632A, 0xAEC0, 0x632B, 0xAEC1, 0x6328, 0xAEC2, 0x634D,
- 0xAEC3, 0x634C, 0xAEC4, 0x6548, 0xAEC5, 0x6549, 0xAEC6, 0x6599,
- 0xAEC7, 0x65C1, 0xAEC8, 0x65C5, 0xAEC9, 0x6642, 0xAECA, 0x6649,
- 0xAECB, 0x664F, 0xAECC, 0x6643, 0xAECD, 0x6652, 0xAECE, 0x664C,
- 0xAECF, 0x6645, 0xAED0, 0x6641, 0xAED1, 0x66F8, 0xAED2, 0x6714,
- 0xAED3, 0x6715, 0xAED4, 0x6717, 0xAED5, 0x6821, 0xAED6, 0x6838,
- 0xAED7, 0x6848, 0xAED8, 0x6846, 0xAED9, 0x6853, 0xAEDA, 0x6839,
- 0xAEDB, 0x6842, 0xAEDC, 0x6854, 0xAEDD, 0x6829, 0xAEDE, 0x68B3,
- 0xAEDF, 0x6817, 0xAEE0, 0x684C, 0xAEE1, 0x6851, 0xAEE2, 0x683D,
- 0xAEE3, 0x67F4, 0xAEE4, 0x6850, 0xAEE5, 0x6840, 0xAEE6, 0x683C,
- 0xAEE7, 0x6843, 0xAEE8, 0x682A, 0xAEE9, 0x6845, 0xAEEA, 0x6813,
- 0xAEEB, 0x6818, 0xAEEC, 0x6841, 0xAEED, 0x6B8A, 0xAEEE, 0x6B89,
- 0xAEEF, 0x6BB7, 0xAEF0, 0x6C23, 0xAEF1, 0x6C27, 0xAEF2, 0x6C28,
- 0xAEF3, 0x6C26, 0xAEF4, 0x6C24, 0xAEF5, 0x6CF0, 0xAEF6, 0x6D6A,
- 0xAEF7, 0x6D95, 0xAEF8, 0x6D88, 0xAEF9, 0x6D87, 0xAEFA, 0x6D66,
- 0xAEFB, 0x6D78, 0xAEFC, 0x6D77, 0xAEFD, 0x6D59, 0xAEFE, 0x6D93,
- 0xAF40, 0x6D6C, 0xAF41, 0x6D89, 0xAF42, 0x6D6E, 0xAF43, 0x6D5A,
- 0xAF44, 0x6D74, 0xAF45, 0x6D69, 0xAF46, 0x6D8C, 0xAF47, 0x6D8A,
- 0xAF48, 0x6D79, 0xAF49, 0x6D85, 0xAF4A, 0x6D65, 0xAF4B, 0x6D94,
- 0xAF4C, 0x70CA, 0xAF4D, 0x70D8, 0xAF4E, 0x70E4, 0xAF4F, 0x70D9,
- 0xAF50, 0x70C8, 0xAF51, 0x70CF, 0xAF52, 0x7239, 0xAF53, 0x7279,
- 0xAF54, 0x72FC, 0xAF55, 0x72F9, 0xAF56, 0x72FD, 0xAF57, 0x72F8,
- 0xAF58, 0x72F7, 0xAF59, 0x7386, 0xAF5A, 0x73ED, 0xAF5B, 0x7409,
- 0xAF5C, 0x73EE, 0xAF5D, 0x73E0, 0xAF5E, 0x73EA, 0xAF5F, 0x73DE,
- 0xAF60, 0x7554, 0xAF61, 0x755D, 0xAF62, 0x755C, 0xAF63, 0x755A,
- 0xAF64, 0x7559, 0xAF65, 0x75BE, 0xAF66, 0x75C5, 0xAF67, 0x75C7,
- 0xAF68, 0x75B2, 0xAF69, 0x75B3, 0xAF6A, 0x75BD, 0xAF6B, 0x75BC,
- 0xAF6C, 0x75B9, 0xAF6D, 0x75C2, 0xAF6E, 0x75B8, 0xAF6F, 0x768B,
- 0xAF70, 0x76B0, 0xAF71, 0x76CA, 0xAF72, 0x76CD, 0xAF73, 0x76CE,
- 0xAF74, 0x7729, 0xAF75, 0x771F, 0xAF76, 0x7720, 0xAF77, 0x7728,
- 0xAF78, 0x77E9, 0xAF79, 0x7830, 0xAF7A, 0x7827, 0xAF7B, 0x7838,
- 0xAF7C, 0x781D, 0xAF7D, 0x7834, 0xAF7E, 0x7837, 0xAFA1, 0x7825,
- 0xAFA2, 0x782D, 0xAFA3, 0x7820, 0xAFA4, 0x781F, 0xAFA5, 0x7832,
- 0xAFA6, 0x7955, 0xAFA7, 0x7950, 0xAFA8, 0x7960, 0xAFA9, 0x795F,
- 0xAFAA, 0x7956, 0xAFAB, 0x795E, 0xAFAC, 0x795D, 0xAFAD, 0x7957,
- 0xAFAE, 0x795A, 0xAFAF, 0x79E4, 0xAFB0, 0x79E3, 0xAFB1, 0x79E7,
- 0xAFB2, 0x79DF, 0xAFB3, 0x79E6, 0xAFB4, 0x79E9, 0xAFB5, 0x79D8,
- 0xAFB6, 0x7A84, 0xAFB7, 0x7A88, 0xAFB8, 0x7AD9, 0xAFB9, 0x7B06,
- 0xAFBA, 0x7B11, 0xAFBB, 0x7C89, 0xAFBC, 0x7D21, 0xAFBD, 0x7D17,
- 0xAFBE, 0x7D0B, 0xAFBF, 0x7D0A, 0xAFC0, 0x7D20, 0xAFC1, 0x7D22,
- 0xAFC2, 0x7D14, 0xAFC3, 0x7D10, 0xAFC4, 0x7D15, 0xAFC5, 0x7D1A,
- 0xAFC6, 0x7D1C, 0xAFC7, 0x7D0D, 0xAFC8, 0x7D19, 0xAFC9, 0x7D1B,
- 0xAFCA, 0x7F3A, 0xAFCB, 0x7F5F, 0xAFCC, 0x7F94, 0xAFCD, 0x7FC5,
- 0xAFCE, 0x7FC1, 0xAFCF, 0x8006, 0xAFD0, 0x8018, 0xAFD1, 0x8015,
- 0xAFD2, 0x8019, 0xAFD3, 0x8017, 0xAFD4, 0x803D, 0xAFD5, 0x803F,
- 0xAFD6, 0x80F1, 0xAFD7, 0x8102, 0xAFD8, 0x80F0, 0xAFD9, 0x8105,
- 0xAFDA, 0x80ED, 0xAFDB, 0x80F4, 0xAFDC, 0x8106, 0xAFDD, 0x80F8,
- 0xAFDE, 0x80F3, 0xAFDF, 0x8108, 0xAFE0, 0x80FD, 0xAFE1, 0x810A,
- 0xAFE2, 0x80FC, 0xAFE3, 0x80EF, 0xAFE4, 0x81ED, 0xAFE5, 0x81EC,
- 0xAFE6, 0x8200, 0xAFE7, 0x8210, 0xAFE8, 0x822A, 0xAFE9, 0x822B,
- 0xAFEA, 0x8228, 0xAFEB, 0x822C, 0xAFEC, 0x82BB, 0xAFED, 0x832B,
- 0xAFEE, 0x8352, 0xAFEF, 0x8354, 0xAFF0, 0x834A, 0xAFF1, 0x8338,
- 0xAFF2, 0x8350, 0xAFF3, 0x8349, 0xAFF4, 0x8335, 0xAFF5, 0x8334,
- 0xAFF6, 0x834F, 0xAFF7, 0x8332, 0xAFF8, 0x8339, 0xAFF9, 0x8336,
- 0xAFFA, 0x8317, 0xAFFB, 0x8340, 0xAFFC, 0x8331, 0xAFFD, 0x8328,
- 0xAFFE, 0x8343, 0xB040, 0x8654, 0xB041, 0x868A, 0xB042, 0x86AA,
- 0xB043, 0x8693, 0xB044, 0x86A4, 0xB045, 0x86A9, 0xB046, 0x868C,
- 0xB047, 0x86A3, 0xB048, 0x869C, 0xB049, 0x8870, 0xB04A, 0x8877,
- 0xB04B, 0x8881, 0xB04C, 0x8882, 0xB04D, 0x887D, 0xB04E, 0x8879,
- 0xB04F, 0x8A18, 0xB050, 0x8A10, 0xB051, 0x8A0E, 0xB052, 0x8A0C,
- 0xB053, 0x8A15, 0xB054, 0x8A0A, 0xB055, 0x8A17, 0xB056, 0x8A13,
- 0xB057, 0x8A16, 0xB058, 0x8A0F, 0xB059, 0x8A11, 0xB05A, 0x8C48,
- 0xB05B, 0x8C7A, 0xB05C, 0x8C79, 0xB05D, 0x8CA1, 0xB05E, 0x8CA2,
- 0xB05F, 0x8D77, 0xB060, 0x8EAC, 0xB061, 0x8ED2, 0xB062, 0x8ED4,
- 0xB063, 0x8ECF, 0xB064, 0x8FB1, 0xB065, 0x9001, 0xB066, 0x9006,
- 0xB067, 0x8FF7, 0xB068, 0x9000, 0xB069, 0x8FFA, 0xB06A, 0x8FF4,
- 0xB06B, 0x9003, 0xB06C, 0x8FFD, 0xB06D, 0x9005, 0xB06E, 0x8FF8,
- 0xB06F, 0x9095, 0xB070, 0x90E1, 0xB071, 0x90DD, 0xB072, 0x90E2,
- 0xB073, 0x9152, 0xB074, 0x914D, 0xB075, 0x914C, 0xB076, 0x91D8,
- 0xB077, 0x91DD, 0xB078, 0x91D7, 0xB079, 0x91DC, 0xB07A, 0x91D9,
- 0xB07B, 0x9583, 0xB07C, 0x9662, 0xB07D, 0x9663, 0xB07E, 0x9661,
- 0xB0A1, 0x965B, 0xB0A2, 0x965D, 0xB0A3, 0x9664, 0xB0A4, 0x9658,
- 0xB0A5, 0x965E, 0xB0A6, 0x96BB, 0xB0A7, 0x98E2, 0xB0A8, 0x99AC,
- 0xB0A9, 0x9AA8, 0xB0AA, 0x9AD8, 0xB0AB, 0x9B25, 0xB0AC, 0x9B32,
- 0xB0AD, 0x9B3C, 0xB0AE, 0x4E7E, 0xB0AF, 0x507A, 0xB0B0, 0x507D,
- 0xB0B1, 0x505C, 0xB0B2, 0x5047, 0xB0B3, 0x5043, 0xB0B4, 0x504C,
- 0xB0B5, 0x505A, 0xB0B6, 0x5049, 0xB0B7, 0x5065, 0xB0B8, 0x5076,
- 0xB0B9, 0x504E, 0xB0BA, 0x5055, 0xB0BB, 0x5075, 0xB0BC, 0x5074,
- 0xB0BD, 0x5077, 0xB0BE, 0x504F, 0xB0BF, 0x500F, 0xB0C0, 0x506F,
- 0xB0C1, 0x506D, 0xB0C2, 0x515C, 0xB0C3, 0x5195, 0xB0C4, 0x51F0,
- 0xB0C5, 0x526A, 0xB0C6, 0x526F, 0xB0C7, 0x52D2, 0xB0C8, 0x52D9,
- 0xB0C9, 0x52D8, 0xB0CA, 0x52D5, 0xB0CB, 0x5310, 0xB0CC, 0x530F,
- 0xB0CD, 0x5319, 0xB0CE, 0x533F, 0xB0CF, 0x5340, 0xB0D0, 0x533E,
- 0xB0D1, 0x53C3, 0xB0D2, 0x66FC, 0xB0D3, 0x5546, 0xB0D4, 0x556A,
- 0xB0D5, 0x5566, 0xB0D6, 0x5544, 0xB0D7, 0x555E, 0xB0D8, 0x5561,
- 0xB0D9, 0x5543, 0xB0DA, 0x554A, 0xB0DB, 0x5531, 0xB0DC, 0x5556,
- 0xB0DD, 0x554F, 0xB0DE, 0x5555, 0xB0DF, 0x552F, 0xB0E0, 0x5564,
- 0xB0E1, 0x5538, 0xB0E2, 0x552E, 0xB0E3, 0x555C, 0xB0E4, 0x552C,
- 0xB0E5, 0x5563, 0xB0E6, 0x5533, 0xB0E7, 0x5541, 0xB0E8, 0x5557,
- 0xB0E9, 0x5708, 0xB0EA, 0x570B, 0xB0EB, 0x5709, 0xB0EC, 0x57DF,
- 0xB0ED, 0x5805, 0xB0EE, 0x580A, 0xB0EF, 0x5806, 0xB0F0, 0x57E0,
- 0xB0F1, 0x57E4, 0xB0F2, 0x57FA, 0xB0F3, 0x5802, 0xB0F4, 0x5835,
- 0xB0F5, 0x57F7, 0xB0F6, 0x57F9, 0xB0F7, 0x5920, 0xB0F8, 0x5962,
- 0xB0F9, 0x5A36, 0xB0FA, 0x5A41, 0xB0FB, 0x5A49, 0xB0FC, 0x5A66,
- 0xB0FD, 0x5A6A, 0xB0FE, 0x5A40, 0xB140, 0x5A3C, 0xB141, 0x5A62,
- 0xB142, 0x5A5A, 0xB143, 0x5A46, 0xB144, 0x5A4A, 0xB145, 0x5B70,
- 0xB146, 0x5BC7, 0xB147, 0x5BC5, 0xB148, 0x5BC4, 0xB149, 0x5BC2,
- 0xB14A, 0x5BBF, 0xB14B, 0x5BC6, 0xB14C, 0x5C09, 0xB14D, 0x5C08,
- 0xB14E, 0x5C07, 0xB14F, 0x5C60, 0xB150, 0x5C5C, 0xB151, 0x5C5D,
- 0xB152, 0x5D07, 0xB153, 0x5D06, 0xB154, 0x5D0E, 0xB155, 0x5D1B,
- 0xB156, 0x5D16, 0xB157, 0x5D22, 0xB158, 0x5D11, 0xB159, 0x5D29,
- 0xB15A, 0x5D14, 0xB15B, 0x5D19, 0xB15C, 0x5D24, 0xB15D, 0x5D27,
- 0xB15E, 0x5D17, 0xB15F, 0x5DE2, 0xB160, 0x5E38, 0xB161, 0x5E36,
- 0xB162, 0x5E33, 0xB163, 0x5E37, 0xB164, 0x5EB7, 0xB165, 0x5EB8,
- 0xB166, 0x5EB6, 0xB167, 0x5EB5, 0xB168, 0x5EBE, 0xB169, 0x5F35,
- 0xB16A, 0x5F37, 0xB16B, 0x5F57, 0xB16C, 0x5F6C, 0xB16D, 0x5F69,
- 0xB16E, 0x5F6B, 0xB16F, 0x5F97, 0xB170, 0x5F99, 0xB171, 0x5F9E,
- 0xB172, 0x5F98, 0xB173, 0x5FA1, 0xB174, 0x5FA0, 0xB175, 0x5F9C,
- 0xB176, 0x607F, 0xB177, 0x60A3, 0xB178, 0x6089, 0xB179, 0x60A0,
- 0xB17A, 0x60A8, 0xB17B, 0x60CB, 0xB17C, 0x60B4, 0xB17D, 0x60E6,
- 0xB17E, 0x60BD, 0xB1A1, 0x60C5, 0xB1A2, 0x60BB, 0xB1A3, 0x60B5,
- 0xB1A4, 0x60DC, 0xB1A5, 0x60BC, 0xB1A6, 0x60D8, 0xB1A7, 0x60D5,
- 0xB1A8, 0x60C6, 0xB1A9, 0x60DF, 0xB1AA, 0x60B8, 0xB1AB, 0x60DA,
- 0xB1AC, 0x60C7, 0xB1AD, 0x621A, 0xB1AE, 0x621B, 0xB1AF, 0x6248,
- 0xB1B0, 0x63A0, 0xB1B1, 0x63A7, 0xB1B2, 0x6372, 0xB1B3, 0x6396,
- 0xB1B4, 0x63A2, 0xB1B5, 0x63A5, 0xB1B6, 0x6377, 0xB1B7, 0x6367,
- 0xB1B8, 0x6398, 0xB1B9, 0x63AA, 0xB1BA, 0x6371, 0xB1BB, 0x63A9,
- 0xB1BC, 0x6389, 0xB1BD, 0x6383, 0xB1BE, 0x639B, 0xB1BF, 0x636B,
- 0xB1C0, 0x63A8, 0xB1C1, 0x6384, 0xB1C2, 0x6388, 0xB1C3, 0x6399,
- 0xB1C4, 0x63A1, 0xB1C5, 0x63AC, 0xB1C6, 0x6392, 0xB1C7, 0x638F,
- 0xB1C8, 0x6380, 0xB1C9, 0x637B, 0xB1CA, 0x6369, 0xB1CB, 0x6368,
- 0xB1CC, 0x637A, 0xB1CD, 0x655D, 0xB1CE, 0x6556, 0xB1CF, 0x6551,
- 0xB1D0, 0x6559, 0xB1D1, 0x6557, 0xB1D2, 0x555F, 0xB1D3, 0x654F,
- 0xB1D4, 0x6558, 0xB1D5, 0x6555, 0xB1D6, 0x6554, 0xB1D7, 0x659C,
- 0xB1D8, 0x659B, 0xB1D9, 0x65AC, 0xB1DA, 0x65CF, 0xB1DB, 0x65CB,
- 0xB1DC, 0x65CC, 0xB1DD, 0x65CE, 0xB1DE, 0x665D, 0xB1DF, 0x665A,
- 0xB1E0, 0x6664, 0xB1E1, 0x6668, 0xB1E2, 0x6666, 0xB1E3, 0x665E,
- 0xB1E4, 0x66F9, 0xB1E5, 0x52D7, 0xB1E6, 0x671B, 0xB1E7, 0x6881,
- 0xB1E8, 0x68AF, 0xB1E9, 0x68A2, 0xB1EA, 0x6893, 0xB1EB, 0x68B5,
- 0xB1EC, 0x687F, 0xB1ED, 0x6876, 0xB1EE, 0x68B1, 0xB1EF, 0x68A7,
- 0xB1F0, 0x6897, 0xB1F1, 0x68B0, 0xB1F2, 0x6883, 0xB1F3, 0x68C4,
- 0xB1F4, 0x68AD, 0xB1F5, 0x6886, 0xB1F6, 0x6885, 0xB1F7, 0x6894,
- 0xB1F8, 0x689D, 0xB1F9, 0x68A8, 0xB1FA, 0x689F, 0xB1FB, 0x68A1,
- 0xB1FC, 0x6882, 0xB1FD, 0x6B32, 0xB1FE, 0x6BBA, 0xB240, 0x6BEB,
- 0xB241, 0x6BEC, 0xB242, 0x6C2B, 0xB243, 0x6D8E, 0xB244, 0x6DBC,
- 0xB245, 0x6DF3, 0xB246, 0x6DD9, 0xB247, 0x6DB2, 0xB248, 0x6DE1,
- 0xB249, 0x6DCC, 0xB24A, 0x6DE4, 0xB24B, 0x6DFB, 0xB24C, 0x6DFA,
- 0xB24D, 0x6E05, 0xB24E, 0x6DC7, 0xB24F, 0x6DCB, 0xB250, 0x6DAF,
- 0xB251, 0x6DD1, 0xB252, 0x6DAE, 0xB253, 0x6DDE, 0xB254, 0x6DF9,
- 0xB255, 0x6DB8, 0xB256, 0x6DF7, 0xB257, 0x6DF5, 0xB258, 0x6DC5,
- 0xB259, 0x6DD2, 0xB25A, 0x6E1A, 0xB25B, 0x6DB5, 0xB25C, 0x6DDA,
- 0xB25D, 0x6DEB, 0xB25E, 0x6DD8, 0xB25F, 0x6DEA, 0xB260, 0x6DF1,
- 0xB261, 0x6DEE, 0xB262, 0x6DE8, 0xB263, 0x6DC6, 0xB264, 0x6DC4,
- 0xB265, 0x6DAA, 0xB266, 0x6DEC, 0xB267, 0x6DBF, 0xB268, 0x6DE6,
- 0xB269, 0x70F9, 0xB26A, 0x7109, 0xB26B, 0x710A, 0xB26C, 0x70FD,
- 0xB26D, 0x70EF, 0xB26E, 0x723D, 0xB26F, 0x727D, 0xB270, 0x7281,
- 0xB271, 0x731C, 0xB272, 0x731B, 0xB273, 0x7316, 0xB274, 0x7313,
- 0xB275, 0x7319, 0xB276, 0x7387, 0xB277, 0x7405, 0xB278, 0x740A,
- 0xB279, 0x7403, 0xB27A, 0x7406, 0xB27B, 0x73FE, 0xB27C, 0x740D,
- 0xB27D, 0x74E0, 0xB27E, 0x74F6, 0xB2A1, 0x74F7, 0xB2A2, 0x751C,
- 0xB2A3, 0x7522, 0xB2A4, 0x7565, 0xB2A5, 0x7566, 0xB2A6, 0x7562,
- 0xB2A7, 0x7570, 0xB2A8, 0x758F, 0xB2A9, 0x75D4, 0xB2AA, 0x75D5,
- 0xB2AB, 0x75B5, 0xB2AC, 0x75CA, 0xB2AD, 0x75CD, 0xB2AE, 0x768E,
- 0xB2AF, 0x76D4, 0xB2B0, 0x76D2, 0xB2B1, 0x76DB, 0xB2B2, 0x7737,
- 0xB2B3, 0x773E, 0xB2B4, 0x773C, 0xB2B5, 0x7736, 0xB2B6, 0x7738,
- 0xB2B7, 0x773A, 0xB2B8, 0x786B, 0xB2B9, 0x7843, 0xB2BA, 0x784E,
- 0xB2BB, 0x7965, 0xB2BC, 0x7968, 0xB2BD, 0x796D, 0xB2BE, 0x79FB,
- 0xB2BF, 0x7A92, 0xB2C0, 0x7A95, 0xB2C1, 0x7B20, 0xB2C2, 0x7B28,
- 0xB2C3, 0x7B1B, 0xB2C4, 0x7B2C, 0xB2C5, 0x7B26, 0xB2C6, 0x7B19,
- 0xB2C7, 0x7B1E, 0xB2C8, 0x7B2E, 0xB2C9, 0x7C92, 0xB2CA, 0x7C97,
- 0xB2CB, 0x7C95, 0xB2CC, 0x7D46, 0xB2CD, 0x7D43, 0xB2CE, 0x7D71,
- 0xB2CF, 0x7D2E, 0xB2D0, 0x7D39, 0xB2D1, 0x7D3C, 0xB2D2, 0x7D40,
- 0xB2D3, 0x7D30, 0xB2D4, 0x7D33, 0xB2D5, 0x7D44, 0xB2D6, 0x7D2F,
- 0xB2D7, 0x7D42, 0xB2D8, 0x7D32, 0xB2D9, 0x7D31, 0xB2DA, 0x7F3D,
- 0xB2DB, 0x7F9E, 0xB2DC, 0x7F9A, 0xB2DD, 0x7FCC, 0xB2DE, 0x7FCE,
- 0xB2DF, 0x7FD2, 0xB2E0, 0x801C, 0xB2E1, 0x804A, 0xB2E2, 0x8046,
- 0xB2E3, 0x812F, 0xB2E4, 0x8116, 0xB2E5, 0x8123, 0xB2E6, 0x812B,
- 0xB2E7, 0x8129, 0xB2E8, 0x8130, 0xB2E9, 0x8124, 0xB2EA, 0x8202,
- 0xB2EB, 0x8235, 0xB2EC, 0x8237, 0xB2ED, 0x8236, 0xB2EE, 0x8239,
- 0xB2EF, 0x838E, 0xB2F0, 0x839E, 0xB2F1, 0x8398, 0xB2F2, 0x8378,
- 0xB2F3, 0x83A2, 0xB2F4, 0x8396, 0xB2F5, 0x83BD, 0xB2F6, 0x83AB,
- 0xB2F7, 0x8392, 0xB2F8, 0x838A, 0xB2F9, 0x8393, 0xB2FA, 0x8389,
- 0xB2FB, 0x83A0, 0xB2FC, 0x8377, 0xB2FD, 0x837B, 0xB2FE, 0x837C,
- 0xB340, 0x8386, 0xB341, 0x83A7, 0xB342, 0x8655, 0xB343, 0x5F6A,
- 0xB344, 0x86C7, 0xB345, 0x86C0, 0xB346, 0x86B6, 0xB347, 0x86C4,
- 0xB348, 0x86B5, 0xB349, 0x86C6, 0xB34A, 0x86CB, 0xB34B, 0x86B1,
- 0xB34C, 0x86AF, 0xB34D, 0x86C9, 0xB34E, 0x8853, 0xB34F, 0x889E,
- 0xB350, 0x8888, 0xB351, 0x88AB, 0xB352, 0x8892, 0xB353, 0x8896,
- 0xB354, 0x888D, 0xB355, 0x888B, 0xB356, 0x8993, 0xB357, 0x898F,
- 0xB358, 0x8A2A, 0xB359, 0x8A1D, 0xB35A, 0x8A23, 0xB35B, 0x8A25,
- 0xB35C, 0x8A31, 0xB35D, 0x8A2D, 0xB35E, 0x8A1F, 0xB35F, 0x8A1B,
- 0xB360, 0x8A22, 0xB361, 0x8C49, 0xB362, 0x8C5A, 0xB363, 0x8CA9,
- 0xB364, 0x8CAC, 0xB365, 0x8CAB, 0xB366, 0x8CA8, 0xB367, 0x8CAA,
- 0xB368, 0x8CA7, 0xB369, 0x8D67, 0xB36A, 0x8D66, 0xB36B, 0x8DBE,
- 0xB36C, 0x8DBA, 0xB36D, 0x8EDB, 0xB36E, 0x8EDF, 0xB36F, 0x9019,
- 0xB370, 0x900D, 0xB371, 0x901A, 0xB372, 0x9017, 0xB373, 0x9023,
- 0xB374, 0x901F, 0xB375, 0x901D, 0xB376, 0x9010, 0xB377, 0x9015,
- 0xB378, 0x901E, 0xB379, 0x9020, 0xB37A, 0x900F, 0xB37B, 0x9022,
- 0xB37C, 0x9016, 0xB37D, 0x901B, 0xB37E, 0x9014, 0xB3A1, 0x90E8,
- 0xB3A2, 0x90ED, 0xB3A3, 0x90FD, 0xB3A4, 0x9157, 0xB3A5, 0x91CE,
- 0xB3A6, 0x91F5, 0xB3A7, 0x91E6, 0xB3A8, 0x91E3, 0xB3A9, 0x91E7,
- 0xB3AA, 0x91ED, 0xB3AB, 0x91E9, 0xB3AC, 0x9589, 0xB3AD, 0x966A,
- 0xB3AE, 0x9675, 0xB3AF, 0x9673, 0xB3B0, 0x9678, 0xB3B1, 0x9670,
- 0xB3B2, 0x9674, 0xB3B3, 0x9676, 0xB3B4, 0x9677, 0xB3B5, 0x966C,
- 0xB3B6, 0x96C0, 0xB3B7, 0x96EA, 0xB3B8, 0x96E9, 0xB3B9, 0x7AE0,
- 0xB3BA, 0x7ADF, 0xB3BB, 0x9802, 0xB3BC, 0x9803, 0xB3BD, 0x9B5A,
- 0xB3BE, 0x9CE5, 0xB3BF, 0x9E75, 0xB3C0, 0x9E7F, 0xB3C1, 0x9EA5,
- 0xB3C2, 0x9EBB, 0xB3C3, 0x50A2, 0xB3C4, 0x508D, 0xB3C5, 0x5085,
- 0xB3C6, 0x5099, 0xB3C7, 0x5091, 0xB3C8, 0x5080, 0xB3C9, 0x5096,
- 0xB3CA, 0x5098, 0xB3CB, 0x509A, 0xB3CC, 0x6700, 0xB3CD, 0x51F1,
- 0xB3CE, 0x5272, 0xB3CF, 0x5274, 0xB3D0, 0x5275, 0xB3D1, 0x5269,
- 0xB3D2, 0x52DE, 0xB3D3, 0x52DD, 0xB3D4, 0x52DB, 0xB3D5, 0x535A,
- 0xB3D6, 0x53A5, 0xB3D7, 0x557B, 0xB3D8, 0x5580, 0xB3D9, 0x55A7,
- 0xB3DA, 0x557C, 0xB3DB, 0x558A, 0xB3DC, 0x559D, 0xB3DD, 0x5598,
- 0xB3DE, 0x5582, 0xB3DF, 0x559C, 0xB3E0, 0x55AA, 0xB3E1, 0x5594,
- 0xB3E2, 0x5587, 0xB3E3, 0x558B, 0xB3E4, 0x5583, 0xB3E5, 0x55B3,
- 0xB3E6, 0x55AE, 0xB3E7, 0x559F, 0xB3E8, 0x553E, 0xB3E9, 0x55B2,
- 0xB3EA, 0x559A, 0xB3EB, 0x55BB, 0xB3EC, 0x55AC, 0xB3ED, 0x55B1,
- 0xB3EE, 0x557E, 0xB3EF, 0x5589, 0xB3F0, 0x55AB, 0xB3F1, 0x5599,
- 0xB3F2, 0x570D, 0xB3F3, 0x582F, 0xB3F4, 0x582A, 0xB3F5, 0x5834,
- 0xB3F6, 0x5824, 0xB3F7, 0x5830, 0xB3F8, 0x5831, 0xB3F9, 0x5821,
- 0xB3FA, 0x581D, 0xB3FB, 0x5820, 0xB3FC, 0x58F9, 0xB3FD, 0x58FA,
- 0xB3FE, 0x5960, 0xB440, 0x5A77, 0xB441, 0x5A9A, 0xB442, 0x5A7F,
- 0xB443, 0x5A92, 0xB444, 0x5A9B, 0xB445, 0x5AA7, 0xB446, 0x5B73,
- 0xB447, 0x5B71, 0xB448, 0x5BD2, 0xB449, 0x5BCC, 0xB44A, 0x5BD3,
- 0xB44B, 0x5BD0, 0xB44C, 0x5C0A, 0xB44D, 0x5C0B, 0xB44E, 0x5C31,
- 0xB44F, 0x5D4C, 0xB450, 0x5D50, 0xB451, 0x5D34, 0xB452, 0x5D47,
- 0xB453, 0x5DFD, 0xB454, 0x5E45, 0xB455, 0x5E3D, 0xB456, 0x5E40,
- 0xB457, 0x5E43, 0xB458, 0x5E7E, 0xB459, 0x5ECA, 0xB45A, 0x5EC1,
- 0xB45B, 0x5EC2, 0xB45C, 0x5EC4, 0xB45D, 0x5F3C, 0xB45E, 0x5F6D,
- 0xB45F, 0x5FA9, 0xB460, 0x5FAA, 0xB461, 0x5FA8, 0xB462, 0x60D1,
- 0xB463, 0x60E1, 0xB464, 0x60B2, 0xB465, 0x60B6, 0xB466, 0x60E0,
- 0xB467, 0x611C, 0xB468, 0x6123, 0xB469, 0x60FA, 0xB46A, 0x6115,
- 0xB46B, 0x60F0, 0xB46C, 0x60FB, 0xB46D, 0x60F4, 0xB46E, 0x6168,
- 0xB46F, 0x60F1, 0xB470, 0x610E, 0xB471, 0x60F6, 0xB472, 0x6109,
- 0xB473, 0x6100, 0xB474, 0x6112, 0xB475, 0x621F, 0xB476, 0x6249,
- 0xB477, 0x63A3, 0xB478, 0x638C, 0xB479, 0x63CF, 0xB47A, 0x63C0,
- 0xB47B, 0x63E9, 0xB47C, 0x63C9, 0xB47D, 0x63C6, 0xB47E, 0x63CD,
- 0xB4A1, 0x63D2, 0xB4A2, 0x63E3, 0xB4A3, 0x63D0, 0xB4A4, 0x63E1,
- 0xB4A5, 0x63D6, 0xB4A6, 0x63ED, 0xB4A7, 0x63EE, 0xB4A8, 0x6376,
- 0xB4A9, 0x63F4, 0xB4AA, 0x63EA, 0xB4AB, 0x63DB, 0xB4AC, 0x6452,
- 0xB4AD, 0x63DA, 0xB4AE, 0x63F9, 0xB4AF, 0x655E, 0xB4B0, 0x6566,
- 0xB4B1, 0x6562, 0xB4B2, 0x6563, 0xB4B3, 0x6591, 0xB4B4, 0x6590,
- 0xB4B5, 0x65AF, 0xB4B6, 0x666E, 0xB4B7, 0x6670, 0xB4B8, 0x6674,
- 0xB4B9, 0x6676, 0xB4BA, 0x666F, 0xB4BB, 0x6691, 0xB4BC, 0x667A,
- 0xB4BD, 0x667E, 0xB4BE, 0x6677, 0xB4BF, 0x66FE, 0xB4C0, 0x66FF,
- 0xB4C1, 0x671F, 0xB4C2, 0x671D, 0xB4C3, 0x68FA, 0xB4C4, 0x68D5,
- 0xB4C5, 0x68E0, 0xB4C6, 0x68D8, 0xB4C7, 0x68D7, 0xB4C8, 0x6905,
- 0xB4C9, 0x68DF, 0xB4CA, 0x68F5, 0xB4CB, 0x68EE, 0xB4CC, 0x68E7,
- 0xB4CD, 0x68F9, 0xB4CE, 0x68D2, 0xB4CF, 0x68F2, 0xB4D0, 0x68E3,
- 0xB4D1, 0x68CB, 0xB4D2, 0x68CD, 0xB4D3, 0x690D, 0xB4D4, 0x6912,
- 0xB4D5, 0x690E, 0xB4D6, 0x68C9, 0xB4D7, 0x68DA, 0xB4D8, 0x696E,
- 0xB4D9, 0x68FB, 0xB4DA, 0x6B3E, 0xB4DB, 0x6B3A, 0xB4DC, 0x6B3D,
- 0xB4DD, 0x6B98, 0xB4DE, 0x6B96, 0xB4DF, 0x6BBC, 0xB4E0, 0x6BEF,
- 0xB4E1, 0x6C2E, 0xB4E2, 0x6C2F, 0xB4E3, 0x6C2C, 0xB4E4, 0x6E2F,
- 0xB4E5, 0x6E38, 0xB4E6, 0x6E54, 0xB4E7, 0x6E21, 0xB4E8, 0x6E32,
- 0xB4E9, 0x6E67, 0xB4EA, 0x6E4A, 0xB4EB, 0x6E20, 0xB4EC, 0x6E25,
- 0xB4ED, 0x6E23, 0xB4EE, 0x6E1B, 0xB4EF, 0x6E5B, 0xB4F0, 0x6E58,
- 0xB4F1, 0x6E24, 0xB4F2, 0x6E56, 0xB4F3, 0x6E6E, 0xB4F4, 0x6E2D,
- 0xB4F5, 0x6E26, 0xB4F6, 0x6E6F, 0xB4F7, 0x6E34, 0xB4F8, 0x6E4D,
- 0xB4F9, 0x6E3A, 0xB4FA, 0x6E2C, 0xB4FB, 0x6E43, 0xB4FC, 0x6E1D,
- 0xB4FD, 0x6E3E, 0xB4FE, 0x6ECB, 0xB540, 0x6E89, 0xB541, 0x6E19,
- 0xB542, 0x6E4E, 0xB543, 0x6E63, 0xB544, 0x6E44, 0xB545, 0x6E72,
- 0xB546, 0x6E69, 0xB547, 0x6E5F, 0xB548, 0x7119, 0xB549, 0x711A,
- 0xB54A, 0x7126, 0xB54B, 0x7130, 0xB54C, 0x7121, 0xB54D, 0x7136,
- 0xB54E, 0x716E, 0xB54F, 0x711C, 0xB550, 0x724C, 0xB551, 0x7284,
- 0xB552, 0x7280, 0xB553, 0x7336, 0xB554, 0x7325, 0xB555, 0x7334,
- 0xB556, 0x7329, 0xB557, 0x743A, 0xB558, 0x742A, 0xB559, 0x7433,
- 0xB55A, 0x7422, 0xB55B, 0x7425, 0xB55C, 0x7435, 0xB55D, 0x7436,
- 0xB55E, 0x7434, 0xB55F, 0x742F, 0xB560, 0x741B, 0xB561, 0x7426,
- 0xB562, 0x7428, 0xB563, 0x7525, 0xB564, 0x7526, 0xB565, 0x756B,
- 0xB566, 0x756A, 0xB567, 0x75E2, 0xB568, 0x75DB, 0xB569, 0x75E3,
- 0xB56A, 0x75D9, 0xB56B, 0x75D8, 0xB56C, 0x75DE, 0xB56D, 0x75E0,
- 0xB56E, 0x767B, 0xB56F, 0x767C, 0xB570, 0x7696, 0xB571, 0x7693,
- 0xB572, 0x76B4, 0xB573, 0x76DC, 0xB574, 0x774F, 0xB575, 0x77ED,
- 0xB576, 0x785D, 0xB577, 0x786C, 0xB578, 0x786F, 0xB579, 0x7A0D,
- 0xB57A, 0x7A08, 0xB57B, 0x7A0B, 0xB57C, 0x7A05, 0xB57D, 0x7A00,
- 0xB57E, 0x7A98, 0xB5A1, 0x7A97, 0xB5A2, 0x7A96, 0xB5A3, 0x7AE5,
- 0xB5A4, 0x7AE3, 0xB5A5, 0x7B49, 0xB5A6, 0x7B56, 0xB5A7, 0x7B46,
- 0xB5A8, 0x7B50, 0xB5A9, 0x7B52, 0xB5AA, 0x7B54, 0xB5AB, 0x7B4D,
- 0xB5AC, 0x7B4B, 0xB5AD, 0x7B4F, 0xB5AE, 0x7B51, 0xB5AF, 0x7C9F,
- 0xB5B0, 0x7CA5, 0xB5B1, 0x7D5E, 0xB5B2, 0x7D50, 0xB5B3, 0x7D68,
- 0xB5B4, 0x7D55, 0xB5B5, 0x7D2B, 0xB5B6, 0x7D6E, 0xB5B7, 0x7D72,
- 0xB5B8, 0x7D61, 0xB5B9, 0x7D66, 0xB5BA, 0x7D62, 0xB5BB, 0x7D70,
- 0xB5BC, 0x7D73, 0xB5BD, 0x5584, 0xB5BE, 0x7FD4, 0xB5BF, 0x7FD5,
- 0xB5C0, 0x800B, 0xB5C1, 0x8052, 0xB5C2, 0x8085, 0xB5C3, 0x8155,
- 0xB5C4, 0x8154, 0xB5C5, 0x814B, 0xB5C6, 0x8151, 0xB5C7, 0x814E,
- 0xB5C8, 0x8139, 0xB5C9, 0x8146, 0xB5CA, 0x813E, 0xB5CB, 0x814C,
- 0xB5CC, 0x8153, 0xB5CD, 0x8174, 0xB5CE, 0x8212, 0xB5CF, 0x821C,
- 0xB5D0, 0x83E9, 0xB5D1, 0x8403, 0xB5D2, 0x83F8, 0xB5D3, 0x840D,
- 0xB5D4, 0x83E0, 0xB5D5, 0x83C5, 0xB5D6, 0x840B, 0xB5D7, 0x83C1,
- 0xB5D8, 0x83EF, 0xB5D9, 0x83F1, 0xB5DA, 0x83F4, 0xB5DB, 0x8457,
- 0xB5DC, 0x840A, 0xB5DD, 0x83F0, 0xB5DE, 0x840C, 0xB5DF, 0x83CC,
- 0xB5E0, 0x83FD, 0xB5E1, 0x83F2, 0xB5E2, 0x83CA, 0xB5E3, 0x8438,
- 0xB5E4, 0x840E, 0xB5E5, 0x8404, 0xB5E6, 0x83DC, 0xB5E7, 0x8407,
- 0xB5E8, 0x83D4, 0xB5E9, 0x83DF, 0xB5EA, 0x865B, 0xB5EB, 0x86DF,
- 0xB5EC, 0x86D9, 0xB5ED, 0x86ED, 0xB5EE, 0x86D4, 0xB5EF, 0x86DB,
- 0xB5F0, 0x86E4, 0xB5F1, 0x86D0, 0xB5F2, 0x86DE, 0xB5F3, 0x8857,
- 0xB5F4, 0x88C1, 0xB5F5, 0x88C2, 0xB5F6, 0x88B1, 0xB5F7, 0x8983,
- 0xB5F8, 0x8996, 0xB5F9, 0x8A3B, 0xB5FA, 0x8A60, 0xB5FB, 0x8A55,
- 0xB5FC, 0x8A5E, 0xB5FD, 0x8A3C, 0xB5FE, 0x8A41, 0xB640, 0x8A54,
- 0xB641, 0x8A5B, 0xB642, 0x8A50, 0xB643, 0x8A46, 0xB644, 0x8A34,
- 0xB645, 0x8A3A, 0xB646, 0x8A36, 0xB647, 0x8A56, 0xB648, 0x8C61,
- 0xB649, 0x8C82, 0xB64A, 0x8CAF, 0xB64B, 0x8CBC, 0xB64C, 0x8CB3,
- 0xB64D, 0x8CBD, 0xB64E, 0x8CC1, 0xB64F, 0x8CBB, 0xB650, 0x8CC0,
- 0xB651, 0x8CB4, 0xB652, 0x8CB7, 0xB653, 0x8CB6, 0xB654, 0x8CBF,
- 0xB655, 0x8CB8, 0xB656, 0x8D8A, 0xB657, 0x8D85, 0xB658, 0x8D81,
- 0xB659, 0x8DCE, 0xB65A, 0x8DDD, 0xB65B, 0x8DCB, 0xB65C, 0x8DDA,
- 0xB65D, 0x8DD1, 0xB65E, 0x8DCC, 0xB65F, 0x8DDB, 0xB660, 0x8DC6,
- 0xB661, 0x8EFB, 0xB662, 0x8EF8, 0xB663, 0x8EFC, 0xB664, 0x8F9C,
- 0xB665, 0x902E, 0xB666, 0x9035, 0xB667, 0x9031, 0xB668, 0x9038,
- 0xB669, 0x9032, 0xB66A, 0x9036, 0xB66B, 0x9102, 0xB66C, 0x90F5,
- 0xB66D, 0x9109, 0xB66E, 0x90FE, 0xB66F, 0x9163, 0xB670, 0x9165,
- 0xB671, 0x91CF, 0xB672, 0x9214, 0xB673, 0x9215, 0xB674, 0x9223,
- 0xB675, 0x9209, 0xB676, 0x921E, 0xB677, 0x920D, 0xB678, 0x9210,
- 0xB679, 0x9207, 0xB67A, 0x9211, 0xB67B, 0x9594, 0xB67C, 0x958F,
- 0xB67D, 0x958B, 0xB67E, 0x9591, 0xB6A1, 0x9593, 0xB6A2, 0x9592,
- 0xB6A3, 0x958E, 0xB6A4, 0x968A, 0xB6A5, 0x968E, 0xB6A6, 0x968B,
- 0xB6A7, 0x967D, 0xB6A8, 0x9685, 0xB6A9, 0x9686, 0xB6AA, 0x968D,
- 0xB6AB, 0x9672, 0xB6AC, 0x9684, 0xB6AD, 0x96C1, 0xB6AE, 0x96C5,
- 0xB6AF, 0x96C4, 0xB6B0, 0x96C6, 0xB6B1, 0x96C7, 0xB6B2, 0x96EF,
- 0xB6B3, 0x96F2, 0xB6B4, 0x97CC, 0xB6B5, 0x9805, 0xB6B6, 0x9806,
- 0xB6B7, 0x9808, 0xB6B8, 0x98E7, 0xB6B9, 0x98EA, 0xB6BA, 0x98EF,
- 0xB6BB, 0x98E9, 0xB6BC, 0x98F2, 0xB6BD, 0x98ED, 0xB6BE, 0x99AE,
- 0xB6BF, 0x99AD, 0xB6C0, 0x9EC3, 0xB6C1, 0x9ECD, 0xB6C2, 0x9ED1,
- 0xB6C3, 0x4E82, 0xB6C4, 0x50AD, 0xB6C5, 0x50B5, 0xB6C6, 0x50B2,
- 0xB6C7, 0x50B3, 0xB6C8, 0x50C5, 0xB6C9, 0x50BE, 0xB6CA, 0x50AC,
- 0xB6CB, 0x50B7, 0xB6CC, 0x50BB, 0xB6CD, 0x50AF, 0xB6CE, 0x50C7,
- 0xB6CF, 0x527F, 0xB6D0, 0x5277, 0xB6D1, 0x527D, 0xB6D2, 0x52DF,
- 0xB6D3, 0x52E6, 0xB6D4, 0x52E4, 0xB6D5, 0x52E2, 0xB6D6, 0x52E3,
- 0xB6D7, 0x532F, 0xB6D8, 0x55DF, 0xB6D9, 0x55E8, 0xB6DA, 0x55D3,
- 0xB6DB, 0x55E6, 0xB6DC, 0x55CE, 0xB6DD, 0x55DC, 0xB6DE, 0x55C7,
- 0xB6DF, 0x55D1, 0xB6E0, 0x55E3, 0xB6E1, 0x55E4, 0xB6E2, 0x55EF,
- 0xB6E3, 0x55DA, 0xB6E4, 0x55E1, 0xB6E5, 0x55C5, 0xB6E6, 0x55C6,
- 0xB6E7, 0x55E5, 0xB6E8, 0x55C9, 0xB6E9, 0x5712, 0xB6EA, 0x5713,
- 0xB6EB, 0x585E, 0xB6EC, 0x5851, 0xB6ED, 0x5858, 0xB6EE, 0x5857,
- 0xB6EF, 0x585A, 0xB6F0, 0x5854, 0xB6F1, 0x586B, 0xB6F2, 0x584C,
- 0xB6F3, 0x586D, 0xB6F4, 0x584A, 0xB6F5, 0x5862, 0xB6F6, 0x5852,
- 0xB6F7, 0x584B, 0xB6F8, 0x5967, 0xB6F9, 0x5AC1, 0xB6FA, 0x5AC9,
- 0xB6FB, 0x5ACC, 0xB6FC, 0x5ABE, 0xB6FD, 0x5ABD, 0xB6FE, 0x5ABC,
- 0xB740, 0x5AB3, 0xB741, 0x5AC2, 0xB742, 0x5AB2, 0xB743, 0x5D69,
- 0xB744, 0x5D6F, 0xB745, 0x5E4C, 0xB746, 0x5E79, 0xB747, 0x5EC9,
- 0xB748, 0x5EC8, 0xB749, 0x5F12, 0xB74A, 0x5F59, 0xB74B, 0x5FAC,
- 0xB74C, 0x5FAE, 0xB74D, 0x611A, 0xB74E, 0x610F, 0xB74F, 0x6148,
- 0xB750, 0x611F, 0xB751, 0x60F3, 0xB752, 0x611B, 0xB753, 0x60F9,
- 0xB754, 0x6101, 0xB755, 0x6108, 0xB756, 0x614E, 0xB757, 0x614C,
- 0xB758, 0x6144, 0xB759, 0x614D, 0xB75A, 0x613E, 0xB75B, 0x6134,
- 0xB75C, 0x6127, 0xB75D, 0x610D, 0xB75E, 0x6106, 0xB75F, 0x6137,
- 0xB760, 0x6221, 0xB761, 0x6222, 0xB762, 0x6413, 0xB763, 0x643E,
- 0xB764, 0x641E, 0xB765, 0x642A, 0xB766, 0x642D, 0xB767, 0x643D,
- 0xB768, 0x642C, 0xB769, 0x640F, 0xB76A, 0x641C, 0xB76B, 0x6414,
- 0xB76C, 0x640D, 0xB76D, 0x6436, 0xB76E, 0x6416, 0xB76F, 0x6417,
- 0xB770, 0x6406, 0xB771, 0x656C, 0xB772, 0x659F, 0xB773, 0x65B0,
- 0xB774, 0x6697, 0xB775, 0x6689, 0xB776, 0x6687, 0xB777, 0x6688,
- 0xB778, 0x6696, 0xB779, 0x6684, 0xB77A, 0x6698, 0xB77B, 0x668D,
- 0xB77C, 0x6703, 0xB77D, 0x6994, 0xB77E, 0x696D, 0xB7A1, 0x695A,
- 0xB7A2, 0x6977, 0xB7A3, 0x6960, 0xB7A4, 0x6954, 0xB7A5, 0x6975,
- 0xB7A6, 0x6930, 0xB7A7, 0x6982, 0xB7A8, 0x694A, 0xB7A9, 0x6968,
- 0xB7AA, 0x696B, 0xB7AB, 0x695E, 0xB7AC, 0x6953, 0xB7AD, 0x6979,
- 0xB7AE, 0x6986, 0xB7AF, 0x695D, 0xB7B0, 0x6963, 0xB7B1, 0x695B,
- 0xB7B2, 0x6B47, 0xB7B3, 0x6B72, 0xB7B4, 0x6BC0, 0xB7B5, 0x6BBF,
- 0xB7B6, 0x6BD3, 0xB7B7, 0x6BFD, 0xB7B8, 0x6EA2, 0xB7B9, 0x6EAF,
- 0xB7BA, 0x6ED3, 0xB7BB, 0x6EB6, 0xB7BC, 0x6EC2, 0xB7BD, 0x6E90,
- 0xB7BE, 0x6E9D, 0xB7BF, 0x6EC7, 0xB7C0, 0x6EC5, 0xB7C1, 0x6EA5,
- 0xB7C2, 0x6E98, 0xB7C3, 0x6EBC, 0xB7C4, 0x6EBA, 0xB7C5, 0x6EAB,
- 0xB7C6, 0x6ED1, 0xB7C7, 0x6E96, 0xB7C8, 0x6E9C, 0xB7C9, 0x6EC4,
- 0xB7CA, 0x6ED4, 0xB7CB, 0x6EAA, 0xB7CC, 0x6EA7, 0xB7CD, 0x6EB4,
- 0xB7CE, 0x714E, 0xB7CF, 0x7159, 0xB7D0, 0x7169, 0xB7D1, 0x7164,
- 0xB7D2, 0x7149, 0xB7D3, 0x7167, 0xB7D4, 0x715C, 0xB7D5, 0x716C,
- 0xB7D6, 0x7166, 0xB7D7, 0x714C, 0xB7D8, 0x7165, 0xB7D9, 0x715E,
- 0xB7DA, 0x7146, 0xB7DB, 0x7168, 0xB7DC, 0x7156, 0xB7DD, 0x723A,
- 0xB7DE, 0x7252, 0xB7DF, 0x7337, 0xB7E0, 0x7345, 0xB7E1, 0x733F,
- 0xB7E2, 0x733E, 0xB7E3, 0x746F, 0xB7E4, 0x745A, 0xB7E5, 0x7455,
- 0xB7E6, 0x745F, 0xB7E7, 0x745E, 0xB7E8, 0x7441, 0xB7E9, 0x743F,
- 0xB7EA, 0x7459, 0xB7EB, 0x745B, 0xB7EC, 0x745C, 0xB7ED, 0x7576,
- 0xB7EE, 0x7578, 0xB7EF, 0x7600, 0xB7F0, 0x75F0, 0xB7F1, 0x7601,
- 0xB7F2, 0x75F2, 0xB7F3, 0x75F1, 0xB7F4, 0x75FA, 0xB7F5, 0x75FF,
- 0xB7F6, 0x75F4, 0xB7F7, 0x75F3, 0xB7F8, 0x76DE, 0xB7F9, 0x76DF,
- 0xB7FA, 0x775B, 0xB7FB, 0x776B, 0xB7FC, 0x7766, 0xB7FD, 0x775E,
- 0xB7FE, 0x7763, 0xB840, 0x7779, 0xB841, 0x776A, 0xB842, 0x776C,
- 0xB843, 0x775C, 0xB844, 0x7765, 0xB845, 0x7768, 0xB846, 0x7762,
- 0xB847, 0x77EE, 0xB848, 0x788E, 0xB849, 0x78B0, 0xB84A, 0x7897,
- 0xB84B, 0x7898, 0xB84C, 0x788C, 0xB84D, 0x7889, 0xB84E, 0x787C,
- 0xB84F, 0x7891, 0xB850, 0x7893, 0xB851, 0x787F, 0xB852, 0x797A,
- 0xB853, 0x797F, 0xB854, 0x7981, 0xB855, 0x842C, 0xB856, 0x79BD,
- 0xB857, 0x7A1C, 0xB858, 0x7A1A, 0xB859, 0x7A20, 0xB85A, 0x7A14,
- 0xB85B, 0x7A1F, 0xB85C, 0x7A1E, 0xB85D, 0x7A9F, 0xB85E, 0x7AA0,
- 0xB85F, 0x7B77, 0xB860, 0x7BC0, 0xB861, 0x7B60, 0xB862, 0x7B6E,
- 0xB863, 0x7B67, 0xB864, 0x7CB1, 0xB865, 0x7CB3, 0xB866, 0x7CB5,
- 0xB867, 0x7D93, 0xB868, 0x7D79, 0xB869, 0x7D91, 0xB86A, 0x7D81,
- 0xB86B, 0x7D8F, 0xB86C, 0x7D5B, 0xB86D, 0x7F6E, 0xB86E, 0x7F69,
- 0xB86F, 0x7F6A, 0xB870, 0x7F72, 0xB871, 0x7FA9, 0xB872, 0x7FA8,
- 0xB873, 0x7FA4, 0xB874, 0x8056, 0xB875, 0x8058, 0xB876, 0x8086,
- 0xB877, 0x8084, 0xB878, 0x8171, 0xB879, 0x8170, 0xB87A, 0x8178,
- 0xB87B, 0x8165, 0xB87C, 0x816E, 0xB87D, 0x8173, 0xB87E, 0x816B,
- 0xB8A1, 0x8179, 0xB8A2, 0x817A, 0xB8A3, 0x8166, 0xB8A4, 0x8205,
- 0xB8A5, 0x8247, 0xB8A6, 0x8482, 0xB8A7, 0x8477, 0xB8A8, 0x843D,
- 0xB8A9, 0x8431, 0xB8AA, 0x8475, 0xB8AB, 0x8466, 0xB8AC, 0x846B,
- 0xB8AD, 0x8449, 0xB8AE, 0x846C, 0xB8AF, 0x845B, 0xB8B0, 0x843C,
- 0xB8B1, 0x8435, 0xB8B2, 0x8461, 0xB8B3, 0x8463, 0xB8B4, 0x8469,
- 0xB8B5, 0x846D, 0xB8B6, 0x8446, 0xB8B7, 0x865E, 0xB8B8, 0x865C,
- 0xB8B9, 0x865F, 0xB8BA, 0x86F9, 0xB8BB, 0x8713, 0xB8BC, 0x8708,
- 0xB8BD, 0x8707, 0xB8BE, 0x8700, 0xB8BF, 0x86FE, 0xB8C0, 0x86FB,
- 0xB8C1, 0x8702, 0xB8C2, 0x8703, 0xB8C3, 0x8706, 0xB8C4, 0x870A,
- 0xB8C5, 0x8859, 0xB8C6, 0x88DF, 0xB8C7, 0x88D4, 0xB8C8, 0x88D9,
- 0xB8C9, 0x88DC, 0xB8CA, 0x88D8, 0xB8CB, 0x88DD, 0xB8CC, 0x88E1,
- 0xB8CD, 0x88CA, 0xB8CE, 0x88D5, 0xB8CF, 0x88D2, 0xB8D0, 0x899C,
- 0xB8D1, 0x89E3, 0xB8D2, 0x8A6B, 0xB8D3, 0x8A72, 0xB8D4, 0x8A73,
- 0xB8D5, 0x8A66, 0xB8D6, 0x8A69, 0xB8D7, 0x8A70, 0xB8D8, 0x8A87,
- 0xB8D9, 0x8A7C, 0xB8DA, 0x8A63, 0xB8DB, 0x8AA0, 0xB8DC, 0x8A71,
- 0xB8DD, 0x8A85, 0xB8DE, 0x8A6D, 0xB8DF, 0x8A62, 0xB8E0, 0x8A6E,
- 0xB8E1, 0x8A6C, 0xB8E2, 0x8A79, 0xB8E3, 0x8A7B, 0xB8E4, 0x8A3E,
- 0xB8E5, 0x8A68, 0xB8E6, 0x8C62, 0xB8E7, 0x8C8A, 0xB8E8, 0x8C89,
- 0xB8E9, 0x8CCA, 0xB8EA, 0x8CC7, 0xB8EB, 0x8CC8, 0xB8EC, 0x8CC4,
- 0xB8ED, 0x8CB2, 0xB8EE, 0x8CC3, 0xB8EF, 0x8CC2, 0xB8F0, 0x8CC5,
- 0xB8F1, 0x8DE1, 0xB8F2, 0x8DDF, 0xB8F3, 0x8DE8, 0xB8F4, 0x8DEF,
- 0xB8F5, 0x8DF3, 0xB8F6, 0x8DFA, 0xB8F7, 0x8DEA, 0xB8F8, 0x8DE4,
- 0xB8F9, 0x8DE6, 0xB8FA, 0x8EB2, 0xB8FB, 0x8F03, 0xB8FC, 0x8F09,
- 0xB8FD, 0x8EFE, 0xB8FE, 0x8F0A, 0xB940, 0x8F9F, 0xB941, 0x8FB2,
- 0xB942, 0x904B, 0xB943, 0x904A, 0xB944, 0x9053, 0xB945, 0x9042,
- 0xB946, 0x9054, 0xB947, 0x903C, 0xB948, 0x9055, 0xB949, 0x9050,
- 0xB94A, 0x9047, 0xB94B, 0x904F, 0xB94C, 0x904E, 0xB94D, 0x904D,
- 0xB94E, 0x9051, 0xB94F, 0x903E, 0xB950, 0x9041, 0xB951, 0x9112,
- 0xB952, 0x9117, 0xB953, 0x916C, 0xB954, 0x916A, 0xB955, 0x9169,
- 0xB956, 0x91C9, 0xB957, 0x9237, 0xB958, 0x9257, 0xB959, 0x9238,
- 0xB95A, 0x923D, 0xB95B, 0x9240, 0xB95C, 0x923E, 0xB95D, 0x925B,
- 0xB95E, 0x924B, 0xB95F, 0x9264, 0xB960, 0x9251, 0xB961, 0x9234,
- 0xB962, 0x9249, 0xB963, 0x924D, 0xB964, 0x9245, 0xB965, 0x9239,
- 0xB966, 0x923F, 0xB967, 0x925A, 0xB968, 0x9598, 0xB969, 0x9698,
- 0xB96A, 0x9694, 0xB96B, 0x9695, 0xB96C, 0x96CD, 0xB96D, 0x96CB,
- 0xB96E, 0x96C9, 0xB96F, 0x96CA, 0xB970, 0x96F7, 0xB971, 0x96FB,
- 0xB972, 0x96F9, 0xB973, 0x96F6, 0xB974, 0x9756, 0xB975, 0x9774,
- 0xB976, 0x9776, 0xB977, 0x9810, 0xB978, 0x9811, 0xB979, 0x9813,
- 0xB97A, 0x980A, 0xB97B, 0x9812, 0xB97C, 0x980C, 0xB97D, 0x98FC,
- 0xB97E, 0x98F4, 0xB9A1, 0x98FD, 0xB9A2, 0x98FE, 0xB9A3, 0x99B3,
- 0xB9A4, 0x99B1, 0xB9A5, 0x99B4, 0xB9A6, 0x9AE1, 0xB9A7, 0x9CE9,
- 0xB9A8, 0x9E82, 0xB9A9, 0x9F0E, 0xB9AA, 0x9F13, 0xB9AB, 0x9F20,
- 0xB9AC, 0x50E7, 0xB9AD, 0x50EE, 0xB9AE, 0x50E5, 0xB9AF, 0x50D6,
- 0xB9B0, 0x50ED, 0xB9B1, 0x50DA, 0xB9B2, 0x50D5, 0xB9B3, 0x50CF,
- 0xB9B4, 0x50D1, 0xB9B5, 0x50F1, 0xB9B6, 0x50CE, 0xB9B7, 0x50E9,
- 0xB9B8, 0x5162, 0xB9B9, 0x51F3, 0xB9BA, 0x5283, 0xB9BB, 0x5282,
- 0xB9BC, 0x5331, 0xB9BD, 0x53AD, 0xB9BE, 0x55FE, 0xB9BF, 0x5600,
- 0xB9C0, 0x561B, 0xB9C1, 0x5617, 0xB9C2, 0x55FD, 0xB9C3, 0x5614,
- 0xB9C4, 0x5606, 0xB9C5, 0x5609, 0xB9C6, 0x560D, 0xB9C7, 0x560E,
- 0xB9C8, 0x55F7, 0xB9C9, 0x5616, 0xB9CA, 0x561F, 0xB9CB, 0x5608,
- 0xB9CC, 0x5610, 0xB9CD, 0x55F6, 0xB9CE, 0x5718, 0xB9CF, 0x5716,
- 0xB9D0, 0x5875, 0xB9D1, 0x587E, 0xB9D2, 0x5883, 0xB9D3, 0x5893,
- 0xB9D4, 0x588A, 0xB9D5, 0x5879, 0xB9D6, 0x5885, 0xB9D7, 0x587D,
- 0xB9D8, 0x58FD, 0xB9D9, 0x5925, 0xB9DA, 0x5922, 0xB9DB, 0x5924,
- 0xB9DC, 0x596A, 0xB9DD, 0x5969, 0xB9DE, 0x5AE1, 0xB9DF, 0x5AE6,
- 0xB9E0, 0x5AE9, 0xB9E1, 0x5AD7, 0xB9E2, 0x5AD6, 0xB9E3, 0x5AD8,
- 0xB9E4, 0x5AE3, 0xB9E5, 0x5B75, 0xB9E6, 0x5BDE, 0xB9E7, 0x5BE7,
- 0xB9E8, 0x5BE1, 0xB9E9, 0x5BE5, 0xB9EA, 0x5BE6, 0xB9EB, 0x5BE8,
- 0xB9EC, 0x5BE2, 0xB9ED, 0x5BE4, 0xB9EE, 0x5BDF, 0xB9EF, 0x5C0D,
- 0xB9F0, 0x5C62, 0xB9F1, 0x5D84, 0xB9F2, 0x5D87, 0xB9F3, 0x5E5B,
- 0xB9F4, 0x5E63, 0xB9F5, 0x5E55, 0xB9F6, 0x5E57, 0xB9F7, 0x5E54,
- 0xB9F8, 0x5ED3, 0xB9F9, 0x5ED6, 0xB9FA, 0x5F0A, 0xB9FB, 0x5F46,
- 0xB9FC, 0x5F70, 0xB9FD, 0x5FB9, 0xB9FE, 0x6147, 0xBA40, 0x613F,
- 0xBA41, 0x614B, 0xBA42, 0x6177, 0xBA43, 0x6162, 0xBA44, 0x6163,
- 0xBA45, 0x615F, 0xBA46, 0x615A, 0xBA47, 0x6158, 0xBA48, 0x6175,
- 0xBA49, 0x622A, 0xBA4A, 0x6487, 0xBA4B, 0x6458, 0xBA4C, 0x6454,
- 0xBA4D, 0x64A4, 0xBA4E, 0x6478, 0xBA4F, 0x645F, 0xBA50, 0x647A,
- 0xBA51, 0x6451, 0xBA52, 0x6467, 0xBA53, 0x6434, 0xBA54, 0x646D,
- 0xBA55, 0x647B, 0xBA56, 0x6572, 0xBA57, 0x65A1, 0xBA58, 0x65D7,
- 0xBA59, 0x65D6, 0xBA5A, 0x66A2, 0xBA5B, 0x66A8, 0xBA5C, 0x669D,
- 0xBA5D, 0x699C, 0xBA5E, 0x69A8, 0xBA5F, 0x6995, 0xBA60, 0x69C1,
- 0xBA61, 0x69AE, 0xBA62, 0x69D3, 0xBA63, 0x69CB, 0xBA64, 0x699B,
- 0xBA65, 0x69B7, 0xBA66, 0x69BB, 0xBA67, 0x69AB, 0xBA68, 0x69B4,
- 0xBA69, 0x69D0, 0xBA6A, 0x69CD, 0xBA6B, 0x69AD, 0xBA6C, 0x69CC,
- 0xBA6D, 0x69A6, 0xBA6E, 0x69C3, 0xBA6F, 0x69A3, 0xBA70, 0x6B49,
- 0xBA71, 0x6B4C, 0xBA72, 0x6C33, 0xBA73, 0x6F33, 0xBA74, 0x6F14,
- 0xBA75, 0x6EFE, 0xBA76, 0x6F13, 0xBA77, 0x6EF4, 0xBA78, 0x6F29,
- 0xBA79, 0x6F3E, 0xBA7A, 0x6F20, 0xBA7B, 0x6F2C, 0xBA7C, 0x6F0F,
- 0xBA7D, 0x6F02, 0xBA7E, 0x6F22, 0xBAA1, 0x6EFF, 0xBAA2, 0x6EEF,
- 0xBAA3, 0x6F06, 0xBAA4, 0x6F31, 0xBAA5, 0x6F38, 0xBAA6, 0x6F32,
- 0xBAA7, 0x6F23, 0xBAA8, 0x6F15, 0xBAA9, 0x6F2B, 0xBAAA, 0x6F2F,
- 0xBAAB, 0x6F88, 0xBAAC, 0x6F2A, 0xBAAD, 0x6EEC, 0xBAAE, 0x6F01,
- 0xBAAF, 0x6EF2, 0xBAB0, 0x6ECC, 0xBAB1, 0x6EF7, 0xBAB2, 0x7194,
- 0xBAB3, 0x7199, 0xBAB4, 0x717D, 0xBAB5, 0x718A, 0xBAB6, 0x7184,
- 0xBAB7, 0x7192, 0xBAB8, 0x723E, 0xBAB9, 0x7292, 0xBABA, 0x7296,
- 0xBABB, 0x7344, 0xBABC, 0x7350, 0xBABD, 0x7464, 0xBABE, 0x7463,
- 0xBABF, 0x746A, 0xBAC0, 0x7470, 0xBAC1, 0x746D, 0xBAC2, 0x7504,
- 0xBAC3, 0x7591, 0xBAC4, 0x7627, 0xBAC5, 0x760D, 0xBAC6, 0x760B,
- 0xBAC7, 0x7609, 0xBAC8, 0x7613, 0xBAC9, 0x76E1, 0xBACA, 0x76E3,
- 0xBACB, 0x7784, 0xBACC, 0x777D, 0xBACD, 0x777F, 0xBACE, 0x7761,
- 0xBACF, 0x78C1, 0xBAD0, 0x789F, 0xBAD1, 0x78A7, 0xBAD2, 0x78B3,
- 0xBAD3, 0x78A9, 0xBAD4, 0x78A3, 0xBAD5, 0x798E, 0xBAD6, 0x798F,
- 0xBAD7, 0x798D, 0xBAD8, 0x7A2E, 0xBAD9, 0x7A31, 0xBADA, 0x7AAA,
- 0xBADB, 0x7AA9, 0xBADC, 0x7AED, 0xBADD, 0x7AEF, 0xBADE, 0x7BA1,
- 0xBADF, 0x7B95, 0xBAE0, 0x7B8B, 0xBAE1, 0x7B75, 0xBAE2, 0x7B97,
- 0xBAE3, 0x7B9D, 0xBAE4, 0x7B94, 0xBAE5, 0x7B8F, 0xBAE6, 0x7BB8,
- 0xBAE7, 0x7B87, 0xBAE8, 0x7B84, 0xBAE9, 0x7CB9, 0xBAEA, 0x7CBD,
- 0xBAEB, 0x7CBE, 0xBAEC, 0x7DBB, 0xBAED, 0x7DB0, 0xBAEE, 0x7D9C,
- 0xBAEF, 0x7DBD, 0xBAF0, 0x7DBE, 0xBAF1, 0x7DA0, 0xBAF2, 0x7DCA,
- 0xBAF3, 0x7DB4, 0xBAF4, 0x7DB2, 0xBAF5, 0x7DB1, 0xBAF6, 0x7DBA,
- 0xBAF7, 0x7DA2, 0xBAF8, 0x7DBF, 0xBAF9, 0x7DB5, 0xBAFA, 0x7DB8,
- 0xBAFB, 0x7DAD, 0xBAFC, 0x7DD2, 0xBAFD, 0x7DC7, 0xBAFE, 0x7DAC,
- 0xBB40, 0x7F70, 0xBB41, 0x7FE0, 0xBB42, 0x7FE1, 0xBB43, 0x7FDF,
- 0xBB44, 0x805E, 0xBB45, 0x805A, 0xBB46, 0x8087, 0xBB47, 0x8150,
- 0xBB48, 0x8180, 0xBB49, 0x818F, 0xBB4A, 0x8188, 0xBB4B, 0x818A,
- 0xBB4C, 0x817F, 0xBB4D, 0x8182, 0xBB4E, 0x81E7, 0xBB4F, 0x81FA,
- 0xBB50, 0x8207, 0xBB51, 0x8214, 0xBB52, 0x821E, 0xBB53, 0x824B,
- 0xBB54, 0x84C9, 0xBB55, 0x84BF, 0xBB56, 0x84C6, 0xBB57, 0x84C4,
- 0xBB58, 0x8499, 0xBB59, 0x849E, 0xBB5A, 0x84B2, 0xBB5B, 0x849C,
- 0xBB5C, 0x84CB, 0xBB5D, 0x84B8, 0xBB5E, 0x84C0, 0xBB5F, 0x84D3,
- 0xBB60, 0x8490, 0xBB61, 0x84BC, 0xBB62, 0x84D1, 0xBB63, 0x84CA,
- 0xBB64, 0x873F, 0xBB65, 0x871C, 0xBB66, 0x873B, 0xBB67, 0x8722,
- 0xBB68, 0x8725, 0xBB69, 0x8734, 0xBB6A, 0x8718, 0xBB6B, 0x8755,
- 0xBB6C, 0x8737, 0xBB6D, 0x8729, 0xBB6E, 0x88F3, 0xBB6F, 0x8902,
- 0xBB70, 0x88F4, 0xBB71, 0x88F9, 0xBB72, 0x88F8, 0xBB73, 0x88FD,
- 0xBB74, 0x88E8, 0xBB75, 0x891A, 0xBB76, 0x88EF, 0xBB77, 0x8AA6,
- 0xBB78, 0x8A8C, 0xBB79, 0x8A9E, 0xBB7A, 0x8AA3, 0xBB7B, 0x8A8D,
- 0xBB7C, 0x8AA1, 0xBB7D, 0x8A93, 0xBB7E, 0x8AA4, 0xBBA1, 0x8AAA,
- 0xBBA2, 0x8AA5, 0xBBA3, 0x8AA8, 0xBBA4, 0x8A98, 0xBBA5, 0x8A91,
- 0xBBA6, 0x8A9A, 0xBBA7, 0x8AA7, 0xBBA8, 0x8C6A, 0xBBA9, 0x8C8D,
- 0xBBAA, 0x8C8C, 0xBBAB, 0x8CD3, 0xBBAC, 0x8CD1, 0xBBAD, 0x8CD2,
- 0xBBAE, 0x8D6B, 0xBBAF, 0x8D99, 0xBBB0, 0x8D95, 0xBBB1, 0x8DFC,
- 0xBBB2, 0x8F14, 0xBBB3, 0x8F12, 0xBBB4, 0x8F15, 0xBBB5, 0x8F13,
- 0xBBB6, 0x8FA3, 0xBBB7, 0x9060, 0xBBB8, 0x9058, 0xBBB9, 0x905C,
- 0xBBBA, 0x9063, 0xBBBB, 0x9059, 0xBBBC, 0x905E, 0xBBBD, 0x9062,
- 0xBBBE, 0x905D, 0xBBBF, 0x905B, 0xBBC0, 0x9119, 0xBBC1, 0x9118,
- 0xBBC2, 0x911E, 0xBBC3, 0x9175, 0xBBC4, 0x9178, 0xBBC5, 0x9177,
- 0xBBC6, 0x9174, 0xBBC7, 0x9278, 0xBBC8, 0x9280, 0xBBC9, 0x9285,
- 0xBBCA, 0x9298, 0xBBCB, 0x9296, 0xBBCC, 0x927B, 0xBBCD, 0x9293,
- 0xBBCE, 0x929C, 0xBBCF, 0x92A8, 0xBBD0, 0x927C, 0xBBD1, 0x9291,
- 0xBBD2, 0x95A1, 0xBBD3, 0x95A8, 0xBBD4, 0x95A9, 0xBBD5, 0x95A3,
- 0xBBD6, 0x95A5, 0xBBD7, 0x95A4, 0xBBD8, 0x9699, 0xBBD9, 0x969C,
- 0xBBDA, 0x969B, 0xBBDB, 0x96CC, 0xBBDC, 0x96D2, 0xBBDD, 0x9700,
- 0xBBDE, 0x977C, 0xBBDF, 0x9785, 0xBBE0, 0x97F6, 0xBBE1, 0x9817,
- 0xBBE2, 0x9818, 0xBBE3, 0x98AF, 0xBBE4, 0x98B1, 0xBBE5, 0x9903,
- 0xBBE6, 0x9905, 0xBBE7, 0x990C, 0xBBE8, 0x9909, 0xBBE9, 0x99C1,
- 0xBBEA, 0x9AAF, 0xBBEB, 0x9AB0, 0xBBEC, 0x9AE6, 0xBBED, 0x9B41,
- 0xBBEE, 0x9B42, 0xBBEF, 0x9CF4, 0xBBF0, 0x9CF6, 0xBBF1, 0x9CF3,
- 0xBBF2, 0x9EBC, 0xBBF3, 0x9F3B, 0xBBF4, 0x9F4A, 0xBBF5, 0x5104,
- 0xBBF6, 0x5100, 0xBBF7, 0x50FB, 0xBBF8, 0x50F5, 0xBBF9, 0x50F9,
- 0xBBFA, 0x5102, 0xBBFB, 0x5108, 0xBBFC, 0x5109, 0xBBFD, 0x5105,
- 0xBBFE, 0x51DC, 0xBC40, 0x5287, 0xBC41, 0x5288, 0xBC42, 0x5289,
- 0xBC43, 0x528D, 0xBC44, 0x528A, 0xBC45, 0x52F0, 0xBC46, 0x53B2,
- 0xBC47, 0x562E, 0xBC48, 0x563B, 0xBC49, 0x5639, 0xBC4A, 0x5632,
- 0xBC4B, 0x563F, 0xBC4C, 0x5634, 0xBC4D, 0x5629, 0xBC4E, 0x5653,
- 0xBC4F, 0x564E, 0xBC50, 0x5657, 0xBC51, 0x5674, 0xBC52, 0x5636,
- 0xBC53, 0x562F, 0xBC54, 0x5630, 0xBC55, 0x5880, 0xBC56, 0x589F,
- 0xBC57, 0x589E, 0xBC58, 0x58B3, 0xBC59, 0x589C, 0xBC5A, 0x58AE,
- 0xBC5B, 0x58A9, 0xBC5C, 0x58A6, 0xBC5D, 0x596D, 0xBC5E, 0x5B09,
- 0xBC5F, 0x5AFB, 0xBC60, 0x5B0B, 0xBC61, 0x5AF5, 0xBC62, 0x5B0C,
- 0xBC63, 0x5B08, 0xBC64, 0x5BEE, 0xBC65, 0x5BEC, 0xBC66, 0x5BE9,
- 0xBC67, 0x5BEB, 0xBC68, 0x5C64, 0xBC69, 0x5C65, 0xBC6A, 0x5D9D,
- 0xBC6B, 0x5D94, 0xBC6C, 0x5E62, 0xBC6D, 0x5E5F, 0xBC6E, 0x5E61,
- 0xBC6F, 0x5EE2, 0xBC70, 0x5EDA, 0xBC71, 0x5EDF, 0xBC72, 0x5EDD,
- 0xBC73, 0x5EE3, 0xBC74, 0x5EE0, 0xBC75, 0x5F48, 0xBC76, 0x5F71,
- 0xBC77, 0x5FB7, 0xBC78, 0x5FB5, 0xBC79, 0x6176, 0xBC7A, 0x6167,
- 0xBC7B, 0x616E, 0xBC7C, 0x615D, 0xBC7D, 0x6155, 0xBC7E, 0x6182,
- 0xBCA1, 0x617C, 0xBCA2, 0x6170, 0xBCA3, 0x616B, 0xBCA4, 0x617E,
- 0xBCA5, 0x61A7, 0xBCA6, 0x6190, 0xBCA7, 0x61AB, 0xBCA8, 0x618E,
- 0xBCA9, 0x61AC, 0xBCAA, 0x619A, 0xBCAB, 0x61A4, 0xBCAC, 0x6194,
- 0xBCAD, 0x61AE, 0xBCAE, 0x622E, 0xBCAF, 0x6469, 0xBCB0, 0x646F,
- 0xBCB1, 0x6479, 0xBCB2, 0x649E, 0xBCB3, 0x64B2, 0xBCB4, 0x6488,
- 0xBCB5, 0x6490, 0xBCB6, 0x64B0, 0xBCB7, 0x64A5, 0xBCB8, 0x6493,
- 0xBCB9, 0x6495, 0xBCBA, 0x64A9, 0xBCBB, 0x6492, 0xBCBC, 0x64AE,
- 0xBCBD, 0x64AD, 0xBCBE, 0x64AB, 0xBCBF, 0x649A, 0xBCC0, 0x64AC,
- 0xBCC1, 0x6499, 0xBCC2, 0x64A2, 0xBCC3, 0x64B3, 0xBCC4, 0x6575,
- 0xBCC5, 0x6577, 0xBCC6, 0x6578, 0xBCC7, 0x66AE, 0xBCC8, 0x66AB,
- 0xBCC9, 0x66B4, 0xBCCA, 0x66B1, 0xBCCB, 0x6A23, 0xBCCC, 0x6A1F,
- 0xBCCD, 0x69E8, 0xBCCE, 0x6A01, 0xBCCF, 0x6A1E, 0xBCD0, 0x6A19,
- 0xBCD1, 0x69FD, 0xBCD2, 0x6A21, 0xBCD3, 0x6A13, 0xBCD4, 0x6A0A,
- 0xBCD5, 0x69F3, 0xBCD6, 0x6A02, 0xBCD7, 0x6A05, 0xBCD8, 0x69ED,
- 0xBCD9, 0x6A11, 0xBCDA, 0x6B50, 0xBCDB, 0x6B4E, 0xBCDC, 0x6BA4,
- 0xBCDD, 0x6BC5, 0xBCDE, 0x6BC6, 0xBCDF, 0x6F3F, 0xBCE0, 0x6F7C,
- 0xBCE1, 0x6F84, 0xBCE2, 0x6F51, 0xBCE3, 0x6F66, 0xBCE4, 0x6F54,
- 0xBCE5, 0x6F86, 0xBCE6, 0x6F6D, 0xBCE7, 0x6F5B, 0xBCE8, 0x6F78,
- 0xBCE9, 0x6F6E, 0xBCEA, 0x6F8E, 0xBCEB, 0x6F7A, 0xBCEC, 0x6F70,
- 0xBCED, 0x6F64, 0xBCEE, 0x6F97, 0xBCEF, 0x6F58, 0xBCF0, 0x6ED5,
- 0xBCF1, 0x6F6F, 0xBCF2, 0x6F60, 0xBCF3, 0x6F5F, 0xBCF4, 0x719F,
- 0xBCF5, 0x71AC, 0xBCF6, 0x71B1, 0xBCF7, 0x71A8, 0xBCF8, 0x7256,
- 0xBCF9, 0x729B, 0xBCFA, 0x734E, 0xBCFB, 0x7357, 0xBCFC, 0x7469,
- 0xBCFD, 0x748B, 0xBCFE, 0x7483, 0xBD40, 0x747E, 0xBD41, 0x7480,
- 0xBD42, 0x757F, 0xBD43, 0x7620, 0xBD44, 0x7629, 0xBD45, 0x761F,
- 0xBD46, 0x7624, 0xBD47, 0x7626, 0xBD48, 0x7621, 0xBD49, 0x7622,
- 0xBD4A, 0x769A, 0xBD4B, 0x76BA, 0xBD4C, 0x76E4, 0xBD4D, 0x778E,
- 0xBD4E, 0x7787, 0xBD4F, 0x778C, 0xBD50, 0x7791, 0xBD51, 0x778B,
- 0xBD52, 0x78CB, 0xBD53, 0x78C5, 0xBD54, 0x78BA, 0xBD55, 0x78CA,
- 0xBD56, 0x78BE, 0xBD57, 0x78D5, 0xBD58, 0x78BC, 0xBD59, 0x78D0,
- 0xBD5A, 0x7A3F, 0xBD5B, 0x7A3C, 0xBD5C, 0x7A40, 0xBD5D, 0x7A3D,
- 0xBD5E, 0x7A37, 0xBD5F, 0x7A3B, 0xBD60, 0x7AAF, 0xBD61, 0x7AAE,
- 0xBD62, 0x7BAD, 0xBD63, 0x7BB1, 0xBD64, 0x7BC4, 0xBD65, 0x7BB4,
- 0xBD66, 0x7BC6, 0xBD67, 0x7BC7, 0xBD68, 0x7BC1, 0xBD69, 0x7BA0,
- 0xBD6A, 0x7BCC, 0xBD6B, 0x7CCA, 0xBD6C, 0x7DE0, 0xBD6D, 0x7DF4,
- 0xBD6E, 0x7DEF, 0xBD6F, 0x7DFB, 0xBD70, 0x7DD8, 0xBD71, 0x7DEC,
- 0xBD72, 0x7DDD, 0xBD73, 0x7DE8, 0xBD74, 0x7DE3, 0xBD75, 0x7DDA,
- 0xBD76, 0x7DDE, 0xBD77, 0x7DE9, 0xBD78, 0x7D9E, 0xBD79, 0x7DD9,
- 0xBD7A, 0x7DF2, 0xBD7B, 0x7DF9, 0xBD7C, 0x7F75, 0xBD7D, 0x7F77,
- 0xBD7E, 0x7FAF, 0xBDA1, 0x7FE9, 0xBDA2, 0x8026, 0xBDA3, 0x819B,
- 0xBDA4, 0x819C, 0xBDA5, 0x819D, 0xBDA6, 0x81A0, 0xBDA7, 0x819A,
- 0xBDA8, 0x8198, 0xBDA9, 0x8517, 0xBDAA, 0x853D, 0xBDAB, 0x851A,
- 0xBDAC, 0x84EE, 0xBDAD, 0x852C, 0xBDAE, 0x852D, 0xBDAF, 0x8513,
- 0xBDB0, 0x8511, 0xBDB1, 0x8523, 0xBDB2, 0x8521, 0xBDB3, 0x8514,
- 0xBDB4, 0x84EC, 0xBDB5, 0x8525, 0xBDB6, 0x84FF, 0xBDB7, 0x8506,
- 0xBDB8, 0x8782, 0xBDB9, 0x8774, 0xBDBA, 0x8776, 0xBDBB, 0x8760,
- 0xBDBC, 0x8766, 0xBDBD, 0x8778, 0xBDBE, 0x8768, 0xBDBF, 0x8759,
- 0xBDC0, 0x8757, 0xBDC1, 0x874C, 0xBDC2, 0x8753, 0xBDC3, 0x885B,
- 0xBDC4, 0x885D, 0xBDC5, 0x8910, 0xBDC6, 0x8907, 0xBDC7, 0x8912,
- 0xBDC8, 0x8913, 0xBDC9, 0x8915, 0xBDCA, 0x890A, 0xBDCB, 0x8ABC,
- 0xBDCC, 0x8AD2, 0xBDCD, 0x8AC7, 0xBDCE, 0x8AC4, 0xBDCF, 0x8A95,
- 0xBDD0, 0x8ACB, 0xBDD1, 0x8AF8, 0xBDD2, 0x8AB2, 0xBDD3, 0x8AC9,
- 0xBDD4, 0x8AC2, 0xBDD5, 0x8ABF, 0xBDD6, 0x8AB0, 0xBDD7, 0x8AD6,
- 0xBDD8, 0x8ACD, 0xBDD9, 0x8AB6, 0xBDDA, 0x8AB9, 0xBDDB, 0x8ADB,
- 0xBDDC, 0x8C4C, 0xBDDD, 0x8C4E, 0xBDDE, 0x8C6C, 0xBDDF, 0x8CE0,
- 0xBDE0, 0x8CDE, 0xBDE1, 0x8CE6, 0xBDE2, 0x8CE4, 0xBDE3, 0x8CEC,
- 0xBDE4, 0x8CED, 0xBDE5, 0x8CE2, 0xBDE6, 0x8CE3, 0xBDE7, 0x8CDC,
- 0xBDE8, 0x8CEA, 0xBDE9, 0x8CE1, 0xBDEA, 0x8D6D, 0xBDEB, 0x8D9F,
- 0xBDEC, 0x8DA3, 0xBDED, 0x8E2B, 0xBDEE, 0x8E10, 0xBDEF, 0x8E1D,
- 0xBDF0, 0x8E22, 0xBDF1, 0x8E0F, 0xBDF2, 0x8E29, 0xBDF3, 0x8E1F,
- 0xBDF4, 0x8E21, 0xBDF5, 0x8E1E, 0xBDF6, 0x8EBA, 0xBDF7, 0x8F1D,
- 0xBDF8, 0x8F1B, 0xBDF9, 0x8F1F, 0xBDFA, 0x8F29, 0xBDFB, 0x8F26,
- 0xBDFC, 0x8F2A, 0xBDFD, 0x8F1C, 0xBDFE, 0x8F1E, 0xBE40, 0x8F25,
- 0xBE41, 0x9069, 0xBE42, 0x906E, 0xBE43, 0x9068, 0xBE44, 0x906D,
- 0xBE45, 0x9077, 0xBE46, 0x9130, 0xBE47, 0x912D, 0xBE48, 0x9127,
- 0xBE49, 0x9131, 0xBE4A, 0x9187, 0xBE4B, 0x9189, 0xBE4C, 0x918B,
- 0xBE4D, 0x9183, 0xBE4E, 0x92C5, 0xBE4F, 0x92BB, 0xBE50, 0x92B7,
- 0xBE51, 0x92EA, 0xBE52, 0x92AC, 0xBE53, 0x92E4, 0xBE54, 0x92C1,
- 0xBE55, 0x92B3, 0xBE56, 0x92BC, 0xBE57, 0x92D2, 0xBE58, 0x92C7,
- 0xBE59, 0x92F0, 0xBE5A, 0x92B2, 0xBE5B, 0x95AD, 0xBE5C, 0x95B1,
- 0xBE5D, 0x9704, 0xBE5E, 0x9706, 0xBE5F, 0x9707, 0xBE60, 0x9709,
- 0xBE61, 0x9760, 0xBE62, 0x978D, 0xBE63, 0x978B, 0xBE64, 0x978F,
- 0xBE65, 0x9821, 0xBE66, 0x982B, 0xBE67, 0x981C, 0xBE68, 0x98B3,
- 0xBE69, 0x990A, 0xBE6A, 0x9913, 0xBE6B, 0x9912, 0xBE6C, 0x9918,
- 0xBE6D, 0x99DD, 0xBE6E, 0x99D0, 0xBE6F, 0x99DF, 0xBE70, 0x99DB,
- 0xBE71, 0x99D1, 0xBE72, 0x99D5, 0xBE73, 0x99D2, 0xBE74, 0x99D9,
- 0xBE75, 0x9AB7, 0xBE76, 0x9AEE, 0xBE77, 0x9AEF, 0xBE78, 0x9B27,
- 0xBE79, 0x9B45, 0xBE7A, 0x9B44, 0xBE7B, 0x9B77, 0xBE7C, 0x9B6F,
- 0xBE7D, 0x9D06, 0xBE7E, 0x9D09, 0xBEA1, 0x9D03, 0xBEA2, 0x9EA9,
- 0xBEA3, 0x9EBE, 0xBEA4, 0x9ECE, 0xBEA5, 0x58A8, 0xBEA6, 0x9F52,
- 0xBEA7, 0x5112, 0xBEA8, 0x5118, 0xBEA9, 0x5114, 0xBEAA, 0x5110,
- 0xBEAB, 0x5115, 0xBEAC, 0x5180, 0xBEAD, 0x51AA, 0xBEAE, 0x51DD,
- 0xBEAF, 0x5291, 0xBEB0, 0x5293, 0xBEB1, 0x52F3, 0xBEB2, 0x5659,
- 0xBEB3, 0x566B, 0xBEB4, 0x5679, 0xBEB5, 0x5669, 0xBEB6, 0x5664,
- 0xBEB7, 0x5678, 0xBEB8, 0x566A, 0xBEB9, 0x5668, 0xBEBA, 0x5665,
- 0xBEBB, 0x5671, 0xBEBC, 0x566F, 0xBEBD, 0x566C, 0xBEBE, 0x5662,
- 0xBEBF, 0x5676, 0xBEC0, 0x58C1, 0xBEC1, 0x58BE, 0xBEC2, 0x58C7,
- 0xBEC3, 0x58C5, 0xBEC4, 0x596E, 0xBEC5, 0x5B1D, 0xBEC6, 0x5B34,
- 0xBEC7, 0x5B78, 0xBEC8, 0x5BF0, 0xBEC9, 0x5C0E, 0xBECA, 0x5F4A,
- 0xBECB, 0x61B2, 0xBECC, 0x6191, 0xBECD, 0x61A9, 0xBECE, 0x618A,
- 0xBECF, 0x61CD, 0xBED0, 0x61B6, 0xBED1, 0x61BE, 0xBED2, 0x61CA,
- 0xBED3, 0x61C8, 0xBED4, 0x6230, 0xBED5, 0x64C5, 0xBED6, 0x64C1,
- 0xBED7, 0x64CB, 0xBED8, 0x64BB, 0xBED9, 0x64BC, 0xBEDA, 0x64DA,
- 0xBEDB, 0x64C4, 0xBEDC, 0x64C7, 0xBEDD, 0x64C2, 0xBEDE, 0x64CD,
- 0xBEDF, 0x64BF, 0xBEE0, 0x64D2, 0xBEE1, 0x64D4, 0xBEE2, 0x64BE,
- 0xBEE3, 0x6574, 0xBEE4, 0x66C6, 0xBEE5, 0x66C9, 0xBEE6, 0x66B9,
- 0xBEE7, 0x66C4, 0xBEE8, 0x66C7, 0xBEE9, 0x66B8, 0xBEEA, 0x6A3D,
- 0xBEEB, 0x6A38, 0xBEEC, 0x6A3A, 0xBEED, 0x6A59, 0xBEEE, 0x6A6B,
- 0xBEEF, 0x6A58, 0xBEF0, 0x6A39, 0xBEF1, 0x6A44, 0xBEF2, 0x6A62,
- 0xBEF3, 0x6A61, 0xBEF4, 0x6A4B, 0xBEF5, 0x6A47, 0xBEF6, 0x6A35,
- 0xBEF7, 0x6A5F, 0xBEF8, 0x6A48, 0xBEF9, 0x6B59, 0xBEFA, 0x6B77,
- 0xBEFB, 0x6C05, 0xBEFC, 0x6FC2, 0xBEFD, 0x6FB1, 0xBEFE, 0x6FA1,
- 0xBF40, 0x6FC3, 0xBF41, 0x6FA4, 0xBF42, 0x6FC1, 0xBF43, 0x6FA7,
- 0xBF44, 0x6FB3, 0xBF45, 0x6FC0, 0xBF46, 0x6FB9, 0xBF47, 0x6FB6,
- 0xBF48, 0x6FA6, 0xBF49, 0x6FA0, 0xBF4A, 0x6FB4, 0xBF4B, 0x71BE,
- 0xBF4C, 0x71C9, 0xBF4D, 0x71D0, 0xBF4E, 0x71D2, 0xBF4F, 0x71C8,
- 0xBF50, 0x71D5, 0xBF51, 0x71B9, 0xBF52, 0x71CE, 0xBF53, 0x71D9,
- 0xBF54, 0x71DC, 0xBF55, 0x71C3, 0xBF56, 0x71C4, 0xBF57, 0x7368,
- 0xBF58, 0x749C, 0xBF59, 0x74A3, 0xBF5A, 0x7498, 0xBF5B, 0x749F,
- 0xBF5C, 0x749E, 0xBF5D, 0x74E2, 0xBF5E, 0x750C, 0xBF5F, 0x750D,
- 0xBF60, 0x7634, 0xBF61, 0x7638, 0xBF62, 0x763A, 0xBF63, 0x76E7,
- 0xBF64, 0x76E5, 0xBF65, 0x77A0, 0xBF66, 0x779E, 0xBF67, 0x779F,
- 0xBF68, 0x77A5, 0xBF69, 0x78E8, 0xBF6A, 0x78DA, 0xBF6B, 0x78EC,
- 0xBF6C, 0x78E7, 0xBF6D, 0x79A6, 0xBF6E, 0x7A4D, 0xBF6F, 0x7A4E,
- 0xBF70, 0x7A46, 0xBF71, 0x7A4C, 0xBF72, 0x7A4B, 0xBF73, 0x7ABA,
- 0xBF74, 0x7BD9, 0xBF75, 0x7C11, 0xBF76, 0x7BC9, 0xBF77, 0x7BE4,
- 0xBF78, 0x7BDB, 0xBF79, 0x7BE1, 0xBF7A, 0x7BE9, 0xBF7B, 0x7BE6,
- 0xBF7C, 0x7CD5, 0xBF7D, 0x7CD6, 0xBF7E, 0x7E0A, 0xBFA1, 0x7E11,
- 0xBFA2, 0x7E08, 0xBFA3, 0x7E1B, 0xBFA4, 0x7E23, 0xBFA5, 0x7E1E,
- 0xBFA6, 0x7E1D, 0xBFA7, 0x7E09, 0xBFA8, 0x7E10, 0xBFA9, 0x7F79,
- 0xBFAA, 0x7FB2, 0xBFAB, 0x7FF0, 0xBFAC, 0x7FF1, 0xBFAD, 0x7FEE,
- 0xBFAE, 0x8028, 0xBFAF, 0x81B3, 0xBFB0, 0x81A9, 0xBFB1, 0x81A8,
- 0xBFB2, 0x81FB, 0xBFB3, 0x8208, 0xBFB4, 0x8258, 0xBFB5, 0x8259,
- 0xBFB6, 0x854A, 0xBFB7, 0x8559, 0xBFB8, 0x8548, 0xBFB9, 0x8568,
- 0xBFBA, 0x8569, 0xBFBB, 0x8543, 0xBFBC, 0x8549, 0xBFBD, 0x856D,
- 0xBFBE, 0x856A, 0xBFBF, 0x855E, 0xBFC0, 0x8783, 0xBFC1, 0x879F,
- 0xBFC2, 0x879E, 0xBFC3, 0x87A2, 0xBFC4, 0x878D, 0xBFC5, 0x8861,
- 0xBFC6, 0x892A, 0xBFC7, 0x8932, 0xBFC8, 0x8925, 0xBFC9, 0x892B,
- 0xBFCA, 0x8921, 0xBFCB, 0x89AA, 0xBFCC, 0x89A6, 0xBFCD, 0x8AE6,
- 0xBFCE, 0x8AFA, 0xBFCF, 0x8AEB, 0xBFD0, 0x8AF1, 0xBFD1, 0x8B00,
- 0xBFD2, 0x8ADC, 0xBFD3, 0x8AE7, 0xBFD4, 0x8AEE, 0xBFD5, 0x8AFE,
- 0xBFD6, 0x8B01, 0xBFD7, 0x8B02, 0xBFD8, 0x8AF7, 0xBFD9, 0x8AED,
- 0xBFDA, 0x8AF3, 0xBFDB, 0x8AF6, 0xBFDC, 0x8AFC, 0xBFDD, 0x8C6B,
- 0xBFDE, 0x8C6D, 0xBFDF, 0x8C93, 0xBFE0, 0x8CF4, 0xBFE1, 0x8E44,
- 0xBFE2, 0x8E31, 0xBFE3, 0x8E34, 0xBFE4, 0x8E42, 0xBFE5, 0x8E39,
- 0xBFE6, 0x8E35, 0xBFE7, 0x8F3B, 0xBFE8, 0x8F2F, 0xBFE9, 0x8F38,
- 0xBFEA, 0x8F33, 0xBFEB, 0x8FA8, 0xBFEC, 0x8FA6, 0xBFED, 0x9075,
- 0xBFEE, 0x9074, 0xBFEF, 0x9078, 0xBFF0, 0x9072, 0xBFF1, 0x907C,
- 0xBFF2, 0x907A, 0xBFF3, 0x9134, 0xBFF4, 0x9192, 0xBFF5, 0x9320,
- 0xBFF6, 0x9336, 0xBFF7, 0x92F8, 0xBFF8, 0x9333, 0xBFF9, 0x932F,
- 0xBFFA, 0x9322, 0xBFFB, 0x92FC, 0xBFFC, 0x932B, 0xBFFD, 0x9304,
- 0xBFFE, 0x931A, 0xC040, 0x9310, 0xC041, 0x9326, 0xC042, 0x9321,
- 0xC043, 0x9315, 0xC044, 0x932E, 0xC045, 0x9319, 0xC046, 0x95BB,
- 0xC047, 0x96A7, 0xC048, 0x96A8, 0xC049, 0x96AA, 0xC04A, 0x96D5,
- 0xC04B, 0x970E, 0xC04C, 0x9711, 0xC04D, 0x9716, 0xC04E, 0x970D,
- 0xC04F, 0x9713, 0xC050, 0x970F, 0xC051, 0x975B, 0xC052, 0x975C,
- 0xC053, 0x9766, 0xC054, 0x9798, 0xC055, 0x9830, 0xC056, 0x9838,
- 0xC057, 0x983B, 0xC058, 0x9837, 0xC059, 0x982D, 0xC05A, 0x9839,
- 0xC05B, 0x9824, 0xC05C, 0x9910, 0xC05D, 0x9928, 0xC05E, 0x991E,
- 0xC05F, 0x991B, 0xC060, 0x9921, 0xC061, 0x991A, 0xC062, 0x99ED,
- 0xC063, 0x99E2, 0xC064, 0x99F1, 0xC065, 0x9AB8, 0xC066, 0x9ABC,
- 0xC067, 0x9AFB, 0xC068, 0x9AED, 0xC069, 0x9B28, 0xC06A, 0x9B91,
- 0xC06B, 0x9D15, 0xC06C, 0x9D23, 0xC06D, 0x9D26, 0xC06E, 0x9D28,
- 0xC06F, 0x9D12, 0xC070, 0x9D1B, 0xC071, 0x9ED8, 0xC072, 0x9ED4,
- 0xC073, 0x9F8D, 0xC074, 0x9F9C, 0xC075, 0x512A, 0xC076, 0x511F,
- 0xC077, 0x5121, 0xC078, 0x5132, 0xC079, 0x52F5, 0xC07A, 0x568E,
- 0xC07B, 0x5680, 0xC07C, 0x5690, 0xC07D, 0x5685, 0xC07E, 0x5687,
- 0xC0A1, 0x568F, 0xC0A2, 0x58D5, 0xC0A3, 0x58D3, 0xC0A4, 0x58D1,
- 0xC0A5, 0x58CE, 0xC0A6, 0x5B30, 0xC0A7, 0x5B2A, 0xC0A8, 0x5B24,
- 0xC0A9, 0x5B7A, 0xC0AA, 0x5C37, 0xC0AB, 0x5C68, 0xC0AC, 0x5DBC,
- 0xC0AD, 0x5DBA, 0xC0AE, 0x5DBD, 0xC0AF, 0x5DB8, 0xC0B0, 0x5E6B,
- 0xC0B1, 0x5F4C, 0xC0B2, 0x5FBD, 0xC0B3, 0x61C9, 0xC0B4, 0x61C2,
- 0xC0B5, 0x61C7, 0xC0B6, 0x61E6, 0xC0B7, 0x61CB, 0xC0B8, 0x6232,
- 0xC0B9, 0x6234, 0xC0BA, 0x64CE, 0xC0BB, 0x64CA, 0xC0BC, 0x64D8,
- 0xC0BD, 0x64E0, 0xC0BE, 0x64F0, 0xC0BF, 0x64E6, 0xC0C0, 0x64EC,
- 0xC0C1, 0x64F1, 0xC0C2, 0x64E2, 0xC0C3, 0x64ED, 0xC0C4, 0x6582,
- 0xC0C5, 0x6583, 0xC0C6, 0x66D9, 0xC0C7, 0x66D6, 0xC0C8, 0x6A80,
- 0xC0C9, 0x6A94, 0xC0CA, 0x6A84, 0xC0CB, 0x6AA2, 0xC0CC, 0x6A9C,
- 0xC0CD, 0x6ADB, 0xC0CE, 0x6AA3, 0xC0CF, 0x6A7E, 0xC0D0, 0x6A97,
- 0xC0D1, 0x6A90, 0xC0D2, 0x6AA0, 0xC0D3, 0x6B5C, 0xC0D4, 0x6BAE,
- 0xC0D5, 0x6BDA, 0xC0D6, 0x6C08, 0xC0D7, 0x6FD8, 0xC0D8, 0x6FF1,
- 0xC0D9, 0x6FDF, 0xC0DA, 0x6FE0, 0xC0DB, 0x6FDB, 0xC0DC, 0x6FE4,
- 0xC0DD, 0x6FEB, 0xC0DE, 0x6FEF, 0xC0DF, 0x6F80, 0xC0E0, 0x6FEC,
- 0xC0E1, 0x6FE1, 0xC0E2, 0x6FE9, 0xC0E3, 0x6FD5, 0xC0E4, 0x6FEE,
- 0xC0E5, 0x6FF0, 0xC0E6, 0x71E7, 0xC0E7, 0x71DF, 0xC0E8, 0x71EE,
- 0xC0E9, 0x71E6, 0xC0EA, 0x71E5, 0xC0EB, 0x71ED, 0xC0EC, 0x71EC,
- 0xC0ED, 0x71F4, 0xC0EE, 0x71E0, 0xC0EF, 0x7235, 0xC0F0, 0x7246,
- 0xC0F1, 0x7370, 0xC0F2, 0x7372, 0xC0F3, 0x74A9, 0xC0F4, 0x74B0,
- 0xC0F5, 0x74A6, 0xC0F6, 0x74A8, 0xC0F7, 0x7646, 0xC0F8, 0x7642,
- 0xC0F9, 0x764C, 0xC0FA, 0x76EA, 0xC0FB, 0x77B3, 0xC0FC, 0x77AA,
- 0xC0FD, 0x77B0, 0xC0FE, 0x77AC, 0xC140, 0x77A7, 0xC141, 0x77AD,
- 0xC142, 0x77EF, 0xC143, 0x78F7, 0xC144, 0x78FA, 0xC145, 0x78F4,
- 0xC146, 0x78EF, 0xC147, 0x7901, 0xC148, 0x79A7, 0xC149, 0x79AA,
- 0xC14A, 0x7A57, 0xC14B, 0x7ABF, 0xC14C, 0x7C07, 0xC14D, 0x7C0D,
- 0xC14E, 0x7BFE, 0xC14F, 0x7BF7, 0xC150, 0x7C0C, 0xC151, 0x7BE0,
- 0xC152, 0x7CE0, 0xC153, 0x7CDC, 0xC154, 0x7CDE, 0xC155, 0x7CE2,
- 0xC156, 0x7CDF, 0xC157, 0x7CD9, 0xC158, 0x7CDD, 0xC159, 0x7E2E,
- 0xC15A, 0x7E3E, 0xC15B, 0x7E46, 0xC15C, 0x7E37, 0xC15D, 0x7E32,
- 0xC15E, 0x7E43, 0xC15F, 0x7E2B, 0xC160, 0x7E3D, 0xC161, 0x7E31,
- 0xC162, 0x7E45, 0xC163, 0x7E41, 0xC164, 0x7E34, 0xC165, 0x7E39,
- 0xC166, 0x7E48, 0xC167, 0x7E35, 0xC168, 0x7E3F, 0xC169, 0x7E2F,
- 0xC16A, 0x7F44, 0xC16B, 0x7FF3, 0xC16C, 0x7FFC, 0xC16D, 0x8071,
- 0xC16E, 0x8072, 0xC16F, 0x8070, 0xC170, 0x806F, 0xC171, 0x8073,
- 0xC172, 0x81C6, 0xC173, 0x81C3, 0xC174, 0x81BA, 0xC175, 0x81C2,
- 0xC176, 0x81C0, 0xC177, 0x81BF, 0xC178, 0x81BD, 0xC179, 0x81C9,
- 0xC17A, 0x81BE, 0xC17B, 0x81E8, 0xC17C, 0x8209, 0xC17D, 0x8271,
- 0xC17E, 0x85AA, 0xC1A1, 0x8584, 0xC1A2, 0x857E, 0xC1A3, 0x859C,
- 0xC1A4, 0x8591, 0xC1A5, 0x8594, 0xC1A6, 0x85AF, 0xC1A7, 0x859B,
- 0xC1A8, 0x8587, 0xC1A9, 0x85A8, 0xC1AA, 0x858A, 0xC1AB, 0x8667,
- 0xC1AC, 0x87C0, 0xC1AD, 0x87D1, 0xC1AE, 0x87B3, 0xC1AF, 0x87D2,
- 0xC1B0, 0x87C6, 0xC1B1, 0x87AB, 0xC1B2, 0x87BB, 0xC1B3, 0x87BA,
- 0xC1B4, 0x87C8, 0xC1B5, 0x87CB, 0xC1B6, 0x893B, 0xC1B7, 0x8936,
- 0xC1B8, 0x8944, 0xC1B9, 0x8938, 0xC1BA, 0x893D, 0xC1BB, 0x89AC,
- 0xC1BC, 0x8B0E, 0xC1BD, 0x8B17, 0xC1BE, 0x8B19, 0xC1BF, 0x8B1B,
- 0xC1C0, 0x8B0A, 0xC1C1, 0x8B20, 0xC1C2, 0x8B1D, 0xC1C3, 0x8B04,
- 0xC1C4, 0x8B10, 0xC1C5, 0x8C41, 0xC1C6, 0x8C3F, 0xC1C7, 0x8C73,
- 0xC1C8, 0x8CFA, 0xC1C9, 0x8CFD, 0xC1CA, 0x8CFC, 0xC1CB, 0x8CF8,
- 0xC1CC, 0x8CFB, 0xC1CD, 0x8DA8, 0xC1CE, 0x8E49, 0xC1CF, 0x8E4B,
- 0xC1D0, 0x8E48, 0xC1D1, 0x8E4A, 0xC1D2, 0x8F44, 0xC1D3, 0x8F3E,
- 0xC1D4, 0x8F42, 0xC1D5, 0x8F45, 0xC1D6, 0x8F3F, 0xC1D7, 0x907F,
- 0xC1D8, 0x907D, 0xC1D9, 0x9084, 0xC1DA, 0x9081, 0xC1DB, 0x9082,
- 0xC1DC, 0x9080, 0xC1DD, 0x9139, 0xC1DE, 0x91A3, 0xC1DF, 0x919E,
- 0xC1E0, 0x919C, 0xC1E1, 0x934D, 0xC1E2, 0x9382, 0xC1E3, 0x9328,
- 0xC1E4, 0x9375, 0xC1E5, 0x934A, 0xC1E6, 0x9365, 0xC1E7, 0x934B,
- 0xC1E8, 0x9318, 0xC1E9, 0x937E, 0xC1EA, 0x936C, 0xC1EB, 0x935B,
- 0xC1EC, 0x9370, 0xC1ED, 0x935A, 0xC1EE, 0x9354, 0xC1EF, 0x95CA,
- 0xC1F0, 0x95CB, 0xC1F1, 0x95CC, 0xC1F2, 0x95C8, 0xC1F3, 0x95C6,
- 0xC1F4, 0x96B1, 0xC1F5, 0x96B8, 0xC1F6, 0x96D6, 0xC1F7, 0x971C,
- 0xC1F8, 0x971E, 0xC1F9, 0x97A0, 0xC1FA, 0x97D3, 0xC1FB, 0x9846,
- 0xC1FC, 0x98B6, 0xC1FD, 0x9935, 0xC1FE, 0x9A01, 0xC240, 0x99FF,
- 0xC241, 0x9BAE, 0xC242, 0x9BAB, 0xC243, 0x9BAA, 0xC244, 0x9BAD,
- 0xC245, 0x9D3B, 0xC246, 0x9D3F, 0xC247, 0x9E8B, 0xC248, 0x9ECF,
- 0xC249, 0x9EDE, 0xC24A, 0x9EDC, 0xC24B, 0x9EDD, 0xC24C, 0x9EDB,
- 0xC24D, 0x9F3E, 0xC24E, 0x9F4B, 0xC24F, 0x53E2, 0xC250, 0x5695,
- 0xC251, 0x56AE, 0xC252, 0x58D9, 0xC253, 0x58D8, 0xC254, 0x5B38,
- 0xC255, 0x5F5D, 0xC256, 0x61E3, 0xC257, 0x6233, 0xC258, 0x64F4,
- 0xC259, 0x64F2, 0xC25A, 0x64FE, 0xC25B, 0x6506, 0xC25C, 0x64FA,
- 0xC25D, 0x64FB, 0xC25E, 0x64F7, 0xC25F, 0x65B7, 0xC260, 0x66DC,
- 0xC261, 0x6726, 0xC262, 0x6AB3, 0xC263, 0x6AAC, 0xC264, 0x6AC3,
- 0xC265, 0x6ABB, 0xC266, 0x6AB8, 0xC267, 0x6AC2, 0xC268, 0x6AAE,
- 0xC269, 0x6AAF, 0xC26A, 0x6B5F, 0xC26B, 0x6B78, 0xC26C, 0x6BAF,
- 0xC26D, 0x7009, 0xC26E, 0x700B, 0xC26F, 0x6FFE, 0xC270, 0x7006,
- 0xC271, 0x6FFA, 0xC272, 0x7011, 0xC273, 0x700F, 0xC274, 0x71FB,
- 0xC275, 0x71FC, 0xC276, 0x71FE, 0xC277, 0x71F8, 0xC278, 0x7377,
- 0xC279, 0x7375, 0xC27A, 0x74A7, 0xC27B, 0x74BF, 0xC27C, 0x7515,
- 0xC27D, 0x7656, 0xC27E, 0x7658, 0xC2A1, 0x7652, 0xC2A2, 0x77BD,
- 0xC2A3, 0x77BF, 0xC2A4, 0x77BB, 0xC2A5, 0x77BC, 0xC2A6, 0x790E,
- 0xC2A7, 0x79AE, 0xC2A8, 0x7A61, 0xC2A9, 0x7A62, 0xC2AA, 0x7A60,
- 0xC2AB, 0x7AC4, 0xC2AC, 0x7AC5, 0xC2AD, 0x7C2B, 0xC2AE, 0x7C27,
- 0xC2AF, 0x7C2A, 0xC2B0, 0x7C1E, 0xC2B1, 0x7C23, 0xC2B2, 0x7C21,
- 0xC2B3, 0x7CE7, 0xC2B4, 0x7E54, 0xC2B5, 0x7E55, 0xC2B6, 0x7E5E,
- 0xC2B7, 0x7E5A, 0xC2B8, 0x7E61, 0xC2B9, 0x7E52, 0xC2BA, 0x7E59,
- 0xC2BB, 0x7F48, 0xC2BC, 0x7FF9, 0xC2BD, 0x7FFB, 0xC2BE, 0x8077,
- 0xC2BF, 0x8076, 0xC2C0, 0x81CD, 0xC2C1, 0x81CF, 0xC2C2, 0x820A,
- 0xC2C3, 0x85CF, 0xC2C4, 0x85A9, 0xC2C5, 0x85CD, 0xC2C6, 0x85D0,
- 0xC2C7, 0x85C9, 0xC2C8, 0x85B0, 0xC2C9, 0x85BA, 0xC2CA, 0x85B9,
- 0xC2CB, 0x85A6, 0xC2CC, 0x87EF, 0xC2CD, 0x87EC, 0xC2CE, 0x87F2,
- 0xC2CF, 0x87E0, 0xC2D0, 0x8986, 0xC2D1, 0x89B2, 0xC2D2, 0x89F4,
- 0xC2D3, 0x8B28, 0xC2D4, 0x8B39, 0xC2D5, 0x8B2C, 0xC2D6, 0x8B2B,
- 0xC2D7, 0x8C50, 0xC2D8, 0x8D05, 0xC2D9, 0x8E59, 0xC2DA, 0x8E63,
- 0xC2DB, 0x8E66, 0xC2DC, 0x8E64, 0xC2DD, 0x8E5F, 0xC2DE, 0x8E55,
- 0xC2DF, 0x8EC0, 0xC2E0, 0x8F49, 0xC2E1, 0x8F4D, 0xC2E2, 0x9087,
- 0xC2E3, 0x9083, 0xC2E4, 0x9088, 0xC2E5, 0x91AB, 0xC2E6, 0x91AC,
- 0xC2E7, 0x91D0, 0xC2E8, 0x9394, 0xC2E9, 0x938A, 0xC2EA, 0x9396,
- 0xC2EB, 0x93A2, 0xC2EC, 0x93B3, 0xC2ED, 0x93AE, 0xC2EE, 0x93AC,
- 0xC2EF, 0x93B0, 0xC2F0, 0x9398, 0xC2F1, 0x939A, 0xC2F2, 0x9397,
- 0xC2F3, 0x95D4, 0xC2F4, 0x95D6, 0xC2F5, 0x95D0, 0xC2F6, 0x95D5,
- 0xC2F7, 0x96E2, 0xC2F8, 0x96DC, 0xC2F9, 0x96D9, 0xC2FA, 0x96DB,
- 0xC2FB, 0x96DE, 0xC2FC, 0x9724, 0xC2FD, 0x97A3, 0xC2FE, 0x97A6,
- 0xC340, 0x97AD, 0xC341, 0x97F9, 0xC342, 0x984D, 0xC343, 0x984F,
- 0xC344, 0x984C, 0xC345, 0x984E, 0xC346, 0x9853, 0xC347, 0x98BA,
- 0xC348, 0x993E, 0xC349, 0x993F, 0xC34A, 0x993D, 0xC34B, 0x992E,
- 0xC34C, 0x99A5, 0xC34D, 0x9A0E, 0xC34E, 0x9AC1, 0xC34F, 0x9B03,
- 0xC350, 0x9B06, 0xC351, 0x9B4F, 0xC352, 0x9B4E, 0xC353, 0x9B4D,
- 0xC354, 0x9BCA, 0xC355, 0x9BC9, 0xC356, 0x9BFD, 0xC357, 0x9BC8,
- 0xC358, 0x9BC0, 0xC359, 0x9D51, 0xC35A, 0x9D5D, 0xC35B, 0x9D60,
- 0xC35C, 0x9EE0, 0xC35D, 0x9F15, 0xC35E, 0x9F2C, 0xC35F, 0x5133,
- 0xC360, 0x56A5, 0xC361, 0x58DE, 0xC362, 0x58DF, 0xC363, 0x58E2,
- 0xC364, 0x5BF5, 0xC365, 0x9F90, 0xC366, 0x5EEC, 0xC367, 0x61F2,
- 0xC368, 0x61F7, 0xC369, 0x61F6, 0xC36A, 0x61F5, 0xC36B, 0x6500,
- 0xC36C, 0x650F, 0xC36D, 0x66E0, 0xC36E, 0x66DD, 0xC36F, 0x6AE5,
- 0xC370, 0x6ADD, 0xC371, 0x6ADA, 0xC372, 0x6AD3, 0xC373, 0x701B,
- 0xC374, 0x701F, 0xC375, 0x7028, 0xC376, 0x701A, 0xC377, 0x701D,
- 0xC378, 0x7015, 0xC379, 0x7018, 0xC37A, 0x7206, 0xC37B, 0x720D,
- 0xC37C, 0x7258, 0xC37D, 0x72A2, 0xC37E, 0x7378, 0xC3A1, 0x737A,
- 0xC3A2, 0x74BD, 0xC3A3, 0x74CA, 0xC3A4, 0x74E3, 0xC3A5, 0x7587,
- 0xC3A6, 0x7586, 0xC3A7, 0x765F, 0xC3A8, 0x7661, 0xC3A9, 0x77C7,
- 0xC3AA, 0x7919, 0xC3AB, 0x79B1, 0xC3AC, 0x7A6B, 0xC3AD, 0x7A69,
- 0xC3AE, 0x7C3E, 0xC3AF, 0x7C3F, 0xC3B0, 0x7C38, 0xC3B1, 0x7C3D,
- 0xC3B2, 0x7C37, 0xC3B3, 0x7C40, 0xC3B4, 0x7E6B, 0xC3B5, 0x7E6D,
- 0xC3B6, 0x7E79, 0xC3B7, 0x7E69, 0xC3B8, 0x7E6A, 0xC3B9, 0x7F85,
- 0xC3BA, 0x7E73, 0xC3BB, 0x7FB6, 0xC3BC, 0x7FB9, 0xC3BD, 0x7FB8,
- 0xC3BE, 0x81D8, 0xC3BF, 0x85E9, 0xC3C0, 0x85DD, 0xC3C1, 0x85EA,
- 0xC3C2, 0x85D5, 0xC3C3, 0x85E4, 0xC3C4, 0x85E5, 0xC3C5, 0x85F7,
- 0xC3C6, 0x87FB, 0xC3C7, 0x8805, 0xC3C8, 0x880D, 0xC3C9, 0x87F9,
- 0xC3CA, 0x87FE, 0xC3CB, 0x8960, 0xC3CC, 0x895F, 0xC3CD, 0x8956,
- 0xC3CE, 0x895E, 0xC3CF, 0x8B41, 0xC3D0, 0x8B5C, 0xC3D1, 0x8B58,
- 0xC3D2, 0x8B49, 0xC3D3, 0x8B5A, 0xC3D4, 0x8B4E, 0xC3D5, 0x8B4F,
- 0xC3D6, 0x8B46, 0xC3D7, 0x8B59, 0xC3D8, 0x8D08, 0xC3D9, 0x8D0A,
- 0xC3DA, 0x8E7C, 0xC3DB, 0x8E72, 0xC3DC, 0x8E87, 0xC3DD, 0x8E76,
- 0xC3DE, 0x8E6C, 0xC3DF, 0x8E7A, 0xC3E0, 0x8E74, 0xC3E1, 0x8F54,
- 0xC3E2, 0x8F4E, 0xC3E3, 0x8FAD, 0xC3E4, 0x908A, 0xC3E5, 0x908B,
- 0xC3E6, 0x91B1, 0xC3E7, 0x91AE, 0xC3E8, 0x93E1, 0xC3E9, 0x93D1,
- 0xC3EA, 0x93DF, 0xC3EB, 0x93C3, 0xC3EC, 0x93C8, 0xC3ED, 0x93DC,
- 0xC3EE, 0x93DD, 0xC3EF, 0x93D6, 0xC3F0, 0x93E2, 0xC3F1, 0x93CD,
- 0xC3F2, 0x93D8, 0xC3F3, 0x93E4, 0xC3F4, 0x93D7, 0xC3F5, 0x93E8,
- 0xC3F6, 0x95DC, 0xC3F7, 0x96B4, 0xC3F8, 0x96E3, 0xC3F9, 0x972A,
- 0xC3FA, 0x9727, 0xC3FB, 0x9761, 0xC3FC, 0x97DC, 0xC3FD, 0x97FB,
- 0xC3FE, 0x985E, 0xC440, 0x9858, 0xC441, 0x985B, 0xC442, 0x98BC,
- 0xC443, 0x9945, 0xC444, 0x9949, 0xC445, 0x9A16, 0xC446, 0x9A19,
- 0xC447, 0x9B0D, 0xC448, 0x9BE8, 0xC449, 0x9BE7, 0xC44A, 0x9BD6,
- 0xC44B, 0x9BDB, 0xC44C, 0x9D89, 0xC44D, 0x9D61, 0xC44E, 0x9D72,
- 0xC44F, 0x9D6A, 0xC450, 0x9D6C, 0xC451, 0x9E92, 0xC452, 0x9E97,
- 0xC453, 0x9E93, 0xC454, 0x9EB4, 0xC455, 0x52F8, 0xC456, 0x56A8,
- 0xC457, 0x56B7, 0xC458, 0x56B6, 0xC459, 0x56B4, 0xC45A, 0x56BC,
- 0xC45B, 0x58E4, 0xC45C, 0x5B40, 0xC45D, 0x5B43, 0xC45E, 0x5B7D,
- 0xC45F, 0x5BF6, 0xC460, 0x5DC9, 0xC461, 0x61F8, 0xC462, 0x61FA,
- 0xC463, 0x6518, 0xC464, 0x6514, 0xC465, 0x6519, 0xC466, 0x66E6,
- 0xC467, 0x6727, 0xC468, 0x6AEC, 0xC469, 0x703E, 0xC46A, 0x7030,
- 0xC46B, 0x7032, 0xC46C, 0x7210, 0xC46D, 0x737B, 0xC46E, 0x74CF,
- 0xC46F, 0x7662, 0xC470, 0x7665, 0xC471, 0x7926, 0xC472, 0x792A,
- 0xC473, 0x792C, 0xC474, 0x792B, 0xC475, 0x7AC7, 0xC476, 0x7AF6,
- 0xC477, 0x7C4C, 0xC478, 0x7C43, 0xC479, 0x7C4D, 0xC47A, 0x7CEF,
- 0xC47B, 0x7CF0, 0xC47C, 0x8FAE, 0xC47D, 0x7E7D, 0xC47E, 0x7E7C,
- 0xC4A1, 0x7E82, 0xC4A2, 0x7F4C, 0xC4A3, 0x8000, 0xC4A4, 0x81DA,
- 0xC4A5, 0x8266, 0xC4A6, 0x85FB, 0xC4A7, 0x85F9, 0xC4A8, 0x8611,
- 0xC4A9, 0x85FA, 0xC4AA, 0x8606, 0xC4AB, 0x860B, 0xC4AC, 0x8607,
- 0xC4AD, 0x860A, 0xC4AE, 0x8814, 0xC4AF, 0x8815, 0xC4B0, 0x8964,
- 0xC4B1, 0x89BA, 0xC4B2, 0x89F8, 0xC4B3, 0x8B70, 0xC4B4, 0x8B6C,
- 0xC4B5, 0x8B66, 0xC4B6, 0x8B6F, 0xC4B7, 0x8B5F, 0xC4B8, 0x8B6B,
- 0xC4B9, 0x8D0F, 0xC4BA, 0x8D0D, 0xC4BB, 0x8E89, 0xC4BC, 0x8E81,
- 0xC4BD, 0x8E85, 0xC4BE, 0x8E82, 0xC4BF, 0x91B4, 0xC4C0, 0x91CB,
- 0xC4C1, 0x9418, 0xC4C2, 0x9403, 0xC4C3, 0x93FD, 0xC4C4, 0x95E1,
- 0xC4C5, 0x9730, 0xC4C6, 0x98C4, 0xC4C7, 0x9952, 0xC4C8, 0x9951,
- 0xC4C9, 0x99A8, 0xC4CA, 0x9A2B, 0xC4CB, 0x9A30, 0xC4CC, 0x9A37,
- 0xC4CD, 0x9A35, 0xC4CE, 0x9C13, 0xC4CF, 0x9C0D, 0xC4D0, 0x9E79,
- 0xC4D1, 0x9EB5, 0xC4D2, 0x9EE8, 0xC4D3, 0x9F2F, 0xC4D4, 0x9F5F,
- 0xC4D5, 0x9F63, 0xC4D6, 0x9F61, 0xC4D7, 0x5137, 0xC4D8, 0x5138,
- 0xC4D9, 0x56C1, 0xC4DA, 0x56C0, 0xC4DB, 0x56C2, 0xC4DC, 0x5914,
- 0xC4DD, 0x5C6C, 0xC4DE, 0x5DCD, 0xC4DF, 0x61FC, 0xC4E0, 0x61FE,
- 0xC4E1, 0x651D, 0xC4E2, 0x651C, 0xC4E3, 0x6595, 0xC4E4, 0x66E9,
- 0xC4E5, 0x6AFB, 0xC4E6, 0x6B04, 0xC4E7, 0x6AFA, 0xC4E8, 0x6BB2,
- 0xC4E9, 0x704C, 0xC4EA, 0x721B, 0xC4EB, 0x72A7, 0xC4EC, 0x74D6,
- 0xC4ED, 0x74D4, 0xC4EE, 0x7669, 0xC4EF, 0x77D3, 0xC4F0, 0x7C50,
- 0xC4F1, 0x7E8F, 0xC4F2, 0x7E8C, 0xC4F3, 0x7FBC, 0xC4F4, 0x8617,
- 0xC4F5, 0x862D, 0xC4F6, 0x861A, 0xC4F7, 0x8823, 0xC4F8, 0x8822,
- 0xC4F9, 0x8821, 0xC4FA, 0x881F, 0xC4FB, 0x896A, 0xC4FC, 0x896C,
- 0xC4FD, 0x89BD, 0xC4FE, 0x8B74, 0xC540, 0x8B77, 0xC541, 0x8B7D,
- 0xC542, 0x8D13, 0xC543, 0x8E8A, 0xC544, 0x8E8D, 0xC545, 0x8E8B,
- 0xC546, 0x8F5F, 0xC547, 0x8FAF, 0xC548, 0x91BA, 0xC549, 0x942E,
- 0xC54A, 0x9433, 0xC54B, 0x9435, 0xC54C, 0x943A, 0xC54D, 0x9438,
- 0xC54E, 0x9432, 0xC54F, 0x942B, 0xC550, 0x95E2, 0xC551, 0x9738,
- 0xC552, 0x9739, 0xC553, 0x9732, 0xC554, 0x97FF, 0xC555, 0x9867,
- 0xC556, 0x9865, 0xC557, 0x9957, 0xC558, 0x9A45, 0xC559, 0x9A43,
- 0xC55A, 0x9A40, 0xC55B, 0x9A3E, 0xC55C, 0x9ACF, 0xC55D, 0x9B54,
- 0xC55E, 0x9B51, 0xC55F, 0x9C2D, 0xC560, 0x9C25, 0xC561, 0x9DAF,
- 0xC562, 0x9DB4, 0xC563, 0x9DC2, 0xC564, 0x9DB8, 0xC565, 0x9E9D,
- 0xC566, 0x9EEF, 0xC567, 0x9F19, 0xC568, 0x9F5C, 0xC569, 0x9F66,
- 0xC56A, 0x9F67, 0xC56B, 0x513C, 0xC56C, 0x513B, 0xC56D, 0x56C8,
- 0xC56E, 0x56CA, 0xC56F, 0x56C9, 0xC570, 0x5B7F, 0xC571, 0x5DD4,
- 0xC572, 0x5DD2, 0xC573, 0x5F4E, 0xC574, 0x61FF, 0xC575, 0x6524,
- 0xC576, 0x6B0A, 0xC577, 0x6B61, 0xC578, 0x7051, 0xC579, 0x7058,
- 0xC57A, 0x7380, 0xC57B, 0x74E4, 0xC57C, 0x758A, 0xC57D, 0x766E,
- 0xC57E, 0x766C, 0xC5A1, 0x79B3, 0xC5A2, 0x7C60, 0xC5A3, 0x7C5F,
- 0xC5A4, 0x807E, 0xC5A5, 0x807D, 0xC5A6, 0x81DF, 0xC5A7, 0x8972,
- 0xC5A8, 0x896F, 0xC5A9, 0x89FC, 0xC5AA, 0x8B80, 0xC5AB, 0x8D16,
- 0xC5AC, 0x8D17, 0xC5AD, 0x8E91, 0xC5AE, 0x8E93, 0xC5AF, 0x8F61,
- 0xC5B0, 0x9148, 0xC5B1, 0x9444, 0xC5B2, 0x9451, 0xC5B3, 0x9452,
- 0xC5B4, 0x973D, 0xC5B5, 0x973E, 0xC5B6, 0x97C3, 0xC5B7, 0x97C1,
- 0xC5B8, 0x986B, 0xC5B9, 0x9955, 0xC5BA, 0x9A55, 0xC5BB, 0x9A4D,
- 0xC5BC, 0x9AD2, 0xC5BD, 0x9B1A, 0xC5BE, 0x9C49, 0xC5BF, 0x9C31,
- 0xC5C0, 0x9C3E, 0xC5C1, 0x9C3B, 0xC5C2, 0x9DD3, 0xC5C3, 0x9DD7,
- 0xC5C4, 0x9F34, 0xC5C5, 0x9F6C, 0xC5C6, 0x9F6A, 0xC5C7, 0x9F94,
- 0xC5C8, 0x56CC, 0xC5C9, 0x5DD6, 0xC5CA, 0x6200, 0xC5CB, 0x6523,
- 0xC5CC, 0x652B, 0xC5CD, 0x652A, 0xC5CE, 0x66EC, 0xC5CF, 0x6B10,
- 0xC5D0, 0x74DA, 0xC5D1, 0x7ACA, 0xC5D2, 0x7C64, 0xC5D3, 0x7C63,
- 0xC5D4, 0x7C65, 0xC5D5, 0x7E93, 0xC5D6, 0x7E96, 0xC5D7, 0x7E94,
- 0xC5D8, 0x81E2, 0xC5D9, 0x8638, 0xC5DA, 0x863F, 0xC5DB, 0x8831,
- 0xC5DC, 0x8B8A, 0xC5DD, 0x9090, 0xC5DE, 0x908F, 0xC5DF, 0x9463,
- 0xC5E0, 0x9460, 0xC5E1, 0x9464, 0xC5E2, 0x9768, 0xC5E3, 0x986F,
- 0xC5E4, 0x995C, 0xC5E5, 0x9A5A, 0xC5E6, 0x9A5B, 0xC5E7, 0x9A57,
- 0xC5E8, 0x9AD3, 0xC5E9, 0x9AD4, 0xC5EA, 0x9AD1, 0xC5EB, 0x9C54,
- 0xC5EC, 0x9C57, 0xC5ED, 0x9C56, 0xC5EE, 0x9DE5, 0xC5EF, 0x9E9F,
- 0xC5F0, 0x9EF4, 0xC5F1, 0x56D1, 0xC5F2, 0x58E9, 0xC5F3, 0x652C,
- 0xC5F4, 0x705E, 0xC5F5, 0x7671, 0xC5F6, 0x7672, 0xC5F7, 0x77D7,
- 0xC5F8, 0x7F50, 0xC5F9, 0x7F88, 0xC5FA, 0x8836, 0xC5FB, 0x8839,
- 0xC5FC, 0x8862, 0xC5FD, 0x8B93, 0xC5FE, 0x8B92, 0xC640, 0x8B96,
- 0xC641, 0x8277, 0xC642, 0x8D1B, 0xC643, 0x91C0, 0xC644, 0x946A,
- 0xC645, 0x9742, 0xC646, 0x9748, 0xC647, 0x9744, 0xC648, 0x97C6,
- 0xC649, 0x9870, 0xC64A, 0x9A5F, 0xC64B, 0x9B22, 0xC64C, 0x9B58,
- 0xC64D, 0x9C5F, 0xC64E, 0x9DF9, 0xC64F, 0x9DFA, 0xC650, 0x9E7C,
- 0xC651, 0x9E7D, 0xC652, 0x9F07, 0xC653, 0x9F77, 0xC654, 0x9F72,
- 0xC655, 0x5EF3, 0xC656, 0x6B16, 0xC657, 0x7063, 0xC658, 0x7C6C,
- 0xC659, 0x7C6E, 0xC65A, 0x883B, 0xC65B, 0x89C0, 0xC65C, 0x8EA1,
- 0xC65D, 0x91C1, 0xC65E, 0x9472, 0xC65F, 0x9470, 0xC660, 0x9871,
- 0xC661, 0x995E, 0xC662, 0x9AD6, 0xC663, 0x9B23, 0xC664, 0x9ECC,
- 0xC665, 0x7064, 0xC666, 0x77DA, 0xC667, 0x8B9A, 0xC668, 0x9477,
- 0xC669, 0x97C9, 0xC66A, 0x9A62, 0xC66B, 0x9A65, 0xC66C, 0x7E9C,
- 0xC66D, 0x8B9C, 0xC66E, 0x8EAA, 0xC66F, 0x91C5, 0xC670, 0x947D,
- 0xC671, 0x947E, 0xC672, 0x947C, 0xC673, 0x9C77, 0xC674, 0x9C78,
- 0xC675, 0x9EF7, 0xC676, 0x8C54, 0xC677, 0x947F, 0xC678, 0x9E1A,
- 0xC679, 0x7228, 0xC67A, 0x9A6A, 0xC67B, 0x9B31, 0xC67C, 0x9E1B,
- 0xC67D, 0x9E1E, 0xC67E, 0x7C72, 0xC940, 0x4E42, 0xC941, 0x4E5C,
- 0xC942, 0x51F5, 0xC943, 0x531A, 0xC944, 0x5382, 0xC945, 0x4E07,
- 0xC946, 0x4E0C, 0xC947, 0x4E47, 0xC948, 0x4E8D, 0xC949, 0x56D7,
- 0xC94A, 0xFA0C, 0xC94B, 0x5C6E, 0xC94C, 0x5F73, 0xC94D, 0x4E0F,
- 0xC94E, 0x5187, 0xC94F, 0x4E0E, 0xC950, 0x4E2E, 0xC951, 0x4E93,
- 0xC952, 0x4EC2, 0xC953, 0x4EC9, 0xC954, 0x4EC8, 0xC955, 0x5198,
- 0xC956, 0x52FC, 0xC957, 0x536C, 0xC958, 0x53B9, 0xC959, 0x5720,
- 0xC95A, 0x5903, 0xC95B, 0x592C, 0xC95C, 0x5C10, 0xC95D, 0x5DFF,
- 0xC95E, 0x65E1, 0xC95F, 0x6BB3, 0xC960, 0x6BCC, 0xC961, 0x6C14,
- 0xC962, 0x723F, 0xC963, 0x4E31, 0xC964, 0x4E3C, 0xC965, 0x4EE8,
- 0xC966, 0x4EDC, 0xC967, 0x4EE9, 0xC968, 0x4EE1, 0xC969, 0x4EDD,
- 0xC96A, 0x4EDA, 0xC96B, 0x520C, 0xC96C, 0x531C, 0xC96D, 0x534C,
- 0xC96E, 0x5722, 0xC96F, 0x5723, 0xC970, 0x5917, 0xC971, 0x592F,
- 0xC972, 0x5B81, 0xC973, 0x5B84, 0xC974, 0x5C12, 0xC975, 0x5C3B,
- 0xC976, 0x5C74, 0xC977, 0x5C73, 0xC978, 0x5E04, 0xC979, 0x5E80,
- 0xC97A, 0x5E82, 0xC97B, 0x5FC9, 0xC97C, 0x6209, 0xC97D, 0x6250,
- 0xC97E, 0x6C15, 0xC9A1, 0x6C36, 0xC9A2, 0x6C43, 0xC9A3, 0x6C3F,
- 0xC9A4, 0x6C3B, 0xC9A5, 0x72AE, 0xC9A6, 0x72B0, 0xC9A7, 0x738A,
- 0xC9A8, 0x79B8, 0xC9A9, 0x808A, 0xC9AA, 0x961E, 0xC9AB, 0x4F0E,
- 0xC9AC, 0x4F18, 0xC9AD, 0x4F2C, 0xC9AE, 0x4EF5, 0xC9AF, 0x4F14,
- 0xC9B0, 0x4EF1, 0xC9B1, 0x4F00, 0xC9B2, 0x4EF7, 0xC9B3, 0x4F08,
- 0xC9B4, 0x4F1D, 0xC9B5, 0x4F02, 0xC9B6, 0x4F05, 0xC9B7, 0x4F22,
- 0xC9B8, 0x4F13, 0xC9B9, 0x4F04, 0xC9BA, 0x4EF4, 0xC9BB, 0x4F12,
- 0xC9BC, 0x51B1, 0xC9BD, 0x5213, 0xC9BE, 0x5209, 0xC9BF, 0x5210,
- 0xC9C0, 0x52A6, 0xC9C1, 0x5322, 0xC9C2, 0x531F, 0xC9C3, 0x534D,
- 0xC9C4, 0x538A, 0xC9C5, 0x5407, 0xC9C6, 0x56E1, 0xC9C7, 0x56DF,
- 0xC9C8, 0x572E, 0xC9C9, 0x572A, 0xC9CA, 0x5734, 0xC9CB, 0x593C,
- 0xC9CC, 0x5980, 0xC9CD, 0x597C, 0xC9CE, 0x5985, 0xC9CF, 0x597B,
- 0xC9D0, 0x597E, 0xC9D1, 0x5977, 0xC9D2, 0x597F, 0xC9D3, 0x5B56,
- 0xC9D4, 0x5C15, 0xC9D5, 0x5C25, 0xC9D6, 0x5C7C, 0xC9D7, 0x5C7A,
- 0xC9D8, 0x5C7B, 0xC9D9, 0x5C7E, 0xC9DA, 0x5DDF, 0xC9DB, 0x5E75,
- 0xC9DC, 0x5E84, 0xC9DD, 0x5F02, 0xC9DE, 0x5F1A, 0xC9DF, 0x5F74,
- 0xC9E0, 0x5FD5, 0xC9E1, 0x5FD4, 0xC9E2, 0x5FCF, 0xC9E3, 0x625C,
- 0xC9E4, 0x625E, 0xC9E5, 0x6264, 0xC9E6, 0x6261, 0xC9E7, 0x6266,
- 0xC9E8, 0x6262, 0xC9E9, 0x6259, 0xC9EA, 0x6260, 0xC9EB, 0x625A,
- 0xC9EC, 0x6265, 0xC9ED, 0x65EF, 0xC9EE, 0x65EE, 0xC9EF, 0x673E,
- 0xC9F0, 0x6739, 0xC9F1, 0x6738, 0xC9F2, 0x673B, 0xC9F3, 0x673A,
- 0xC9F4, 0x673F, 0xC9F5, 0x673C, 0xC9F6, 0x6733, 0xC9F7, 0x6C18,
- 0xC9F8, 0x6C46, 0xC9F9, 0x6C52, 0xC9FA, 0x6C5C, 0xC9FB, 0x6C4F,
- 0xC9FC, 0x6C4A, 0xC9FD, 0x6C54, 0xC9FE, 0x6C4B, 0xCA40, 0x6C4C,
- 0xCA41, 0x7071, 0xCA42, 0x725E, 0xCA43, 0x72B4, 0xCA44, 0x72B5,
- 0xCA45, 0x738E, 0xCA46, 0x752A, 0xCA47, 0x767F, 0xCA48, 0x7A75,
- 0xCA49, 0x7F51, 0xCA4A, 0x8278, 0xCA4B, 0x827C, 0xCA4C, 0x8280,
- 0xCA4D, 0x827D, 0xCA4E, 0x827F, 0xCA4F, 0x864D, 0xCA50, 0x897E,
- 0xCA51, 0x9099, 0xCA52, 0x9097, 0xCA53, 0x9098, 0xCA54, 0x909B,
- 0xCA55, 0x9094, 0xCA56, 0x9622, 0xCA57, 0x9624, 0xCA58, 0x9620,
- 0xCA59, 0x9623, 0xCA5A, 0x4F56, 0xCA5B, 0x4F3B, 0xCA5C, 0x4F62,
- 0xCA5D, 0x4F49, 0xCA5E, 0x4F53, 0xCA5F, 0x4F64, 0xCA60, 0x4F3E,
- 0xCA61, 0x4F67, 0xCA62, 0x4F52, 0xCA63, 0x4F5F, 0xCA64, 0x4F41,
- 0xCA65, 0x4F58, 0xCA66, 0x4F2D, 0xCA67, 0x4F33, 0xCA68, 0x4F3F,
- 0xCA69, 0x4F61, 0xCA6A, 0x518F, 0xCA6B, 0x51B9, 0xCA6C, 0x521C,
- 0xCA6D, 0x521E, 0xCA6E, 0x5221, 0xCA6F, 0x52AD, 0xCA70, 0x52AE,
- 0xCA71, 0x5309, 0xCA72, 0x5363, 0xCA73, 0x5372, 0xCA74, 0x538E,
- 0xCA75, 0x538F, 0xCA76, 0x5430, 0xCA77, 0x5437, 0xCA78, 0x542A,
- 0xCA79, 0x5454, 0xCA7A, 0x5445, 0xCA7B, 0x5419, 0xCA7C, 0x541C,
- 0xCA7D, 0x5425, 0xCA7E, 0x5418, 0xCAA1, 0x543D, 0xCAA2, 0x544F,
- 0xCAA3, 0x5441, 0xCAA4, 0x5428, 0xCAA5, 0x5424, 0xCAA6, 0x5447,
- 0xCAA7, 0x56EE, 0xCAA8, 0x56E7, 0xCAA9, 0x56E5, 0xCAAA, 0x5741,
- 0xCAAB, 0x5745, 0xCAAC, 0x574C, 0xCAAD, 0x5749, 0xCAAE, 0x574B,
- 0xCAAF, 0x5752, 0xCAB0, 0x5906, 0xCAB1, 0x5940, 0xCAB2, 0x59A6,
- 0xCAB3, 0x5998, 0xCAB4, 0x59A0, 0xCAB5, 0x5997, 0xCAB6, 0x598E,
- 0xCAB7, 0x59A2, 0xCAB8, 0x5990, 0xCAB9, 0x598F, 0xCABA, 0x59A7,
- 0xCABB, 0x59A1, 0xCABC, 0x5B8E, 0xCABD, 0x5B92, 0xCABE, 0x5C28,
- 0xCABF, 0x5C2A, 0xCAC0, 0x5C8D, 0xCAC1, 0x5C8F, 0xCAC2, 0x5C88,
- 0xCAC3, 0x5C8B, 0xCAC4, 0x5C89, 0xCAC5, 0x5C92, 0xCAC6, 0x5C8A,
- 0xCAC7, 0x5C86, 0xCAC8, 0x5C93, 0xCAC9, 0x5C95, 0xCACA, 0x5DE0,
- 0xCACB, 0x5E0A, 0xCACC, 0x5E0E, 0xCACD, 0x5E8B, 0xCACE, 0x5E89,
- 0xCACF, 0x5E8C, 0xCAD0, 0x5E88, 0xCAD1, 0x5E8D, 0xCAD2, 0x5F05,
- 0xCAD3, 0x5F1D, 0xCAD4, 0x5F78, 0xCAD5, 0x5F76, 0xCAD6, 0x5FD2,
- 0xCAD7, 0x5FD1, 0xCAD8, 0x5FD0, 0xCAD9, 0x5FED, 0xCADA, 0x5FE8,
- 0xCADB, 0x5FEE, 0xCADC, 0x5FF3, 0xCADD, 0x5FE1, 0xCADE, 0x5FE4,
- 0xCADF, 0x5FE3, 0xCAE0, 0x5FFA, 0xCAE1, 0x5FEF, 0xCAE2, 0x5FF7,
- 0xCAE3, 0x5FFB, 0xCAE4, 0x6000, 0xCAE5, 0x5FF4, 0xCAE6, 0x623A,
- 0xCAE7, 0x6283, 0xCAE8, 0x628C, 0xCAE9, 0x628E, 0xCAEA, 0x628F,
- 0xCAEB, 0x6294, 0xCAEC, 0x6287, 0xCAED, 0x6271, 0xCAEE, 0x627B,
- 0xCAEF, 0x627A, 0xCAF0, 0x6270, 0xCAF1, 0x6281, 0xCAF2, 0x6288,
- 0xCAF3, 0x6277, 0xCAF4, 0x627D, 0xCAF5, 0x6272, 0xCAF6, 0x6274,
- 0xCAF7, 0x6537, 0xCAF8, 0x65F0, 0xCAF9, 0x65F4, 0xCAFA, 0x65F3,
- 0xCAFB, 0x65F2, 0xCAFC, 0x65F5, 0xCAFD, 0x6745, 0xCAFE, 0x6747,
- 0xCB40, 0x6759, 0xCB41, 0x6755, 0xCB42, 0x674C, 0xCB43, 0x6748,
- 0xCB44, 0x675D, 0xCB45, 0x674D, 0xCB46, 0x675A, 0xCB47, 0x674B,
- 0xCB48, 0x6BD0, 0xCB49, 0x6C19, 0xCB4A, 0x6C1A, 0xCB4B, 0x6C78,
- 0xCB4C, 0x6C67, 0xCB4D, 0x6C6B, 0xCB4E, 0x6C84, 0xCB4F, 0x6C8B,
- 0xCB50, 0x6C8F, 0xCB51, 0x6C71, 0xCB52, 0x6C6F, 0xCB53, 0x6C69,
- 0xCB54, 0x6C9A, 0xCB55, 0x6C6D, 0xCB56, 0x6C87, 0xCB57, 0x6C95,
- 0xCB58, 0x6C9C, 0xCB59, 0x6C66, 0xCB5A, 0x6C73, 0xCB5B, 0x6C65,
- 0xCB5C, 0x6C7B, 0xCB5D, 0x6C8E, 0xCB5E, 0x7074, 0xCB5F, 0x707A,
- 0xCB60, 0x7263, 0xCB61, 0x72BF, 0xCB62, 0x72BD, 0xCB63, 0x72C3,
- 0xCB64, 0x72C6, 0xCB65, 0x72C1, 0xCB66, 0x72BA, 0xCB67, 0x72C5,
- 0xCB68, 0x7395, 0xCB69, 0x7397, 0xCB6A, 0x7393, 0xCB6B, 0x7394,
- 0xCB6C, 0x7392, 0xCB6D, 0x753A, 0xCB6E, 0x7539, 0xCB6F, 0x7594,
- 0xCB70, 0x7595, 0xCB71, 0x7681, 0xCB72, 0x793D, 0xCB73, 0x8034,
- 0xCB74, 0x8095, 0xCB75, 0x8099, 0xCB76, 0x8090, 0xCB77, 0x8092,
- 0xCB78, 0x809C, 0xCB79, 0x8290, 0xCB7A, 0x828F, 0xCB7B, 0x8285,
- 0xCB7C, 0x828E, 0xCB7D, 0x8291, 0xCB7E, 0x8293, 0xCBA1, 0x828A,
- 0xCBA2, 0x8283, 0xCBA3, 0x8284, 0xCBA4, 0x8C78, 0xCBA5, 0x8FC9,
- 0xCBA6, 0x8FBF, 0xCBA7, 0x909F, 0xCBA8, 0x90A1, 0xCBA9, 0x90A5,
- 0xCBAA, 0x909E, 0xCBAB, 0x90A7, 0xCBAC, 0x90A0, 0xCBAD, 0x9630,
- 0xCBAE, 0x9628, 0xCBAF, 0x962F, 0xCBB0, 0x962D, 0xCBB1, 0x4E33,
- 0xCBB2, 0x4F98, 0xCBB3, 0x4F7C, 0xCBB4, 0x4F85, 0xCBB5, 0x4F7D,
- 0xCBB6, 0x4F80, 0xCBB7, 0x4F87, 0xCBB8, 0x4F76, 0xCBB9, 0x4F74,
- 0xCBBA, 0x4F89, 0xCBBB, 0x4F84, 0xCBBC, 0x4F77, 0xCBBD, 0x4F4C,
- 0xCBBE, 0x4F97, 0xCBBF, 0x4F6A, 0xCBC0, 0x4F9A, 0xCBC1, 0x4F79,
- 0xCBC2, 0x4F81, 0xCBC3, 0x4F78, 0xCBC4, 0x4F90, 0xCBC5, 0x4F9C,
- 0xCBC6, 0x4F94, 0xCBC7, 0x4F9E, 0xCBC8, 0x4F92, 0xCBC9, 0x4F82,
- 0xCBCA, 0x4F95, 0xCBCB, 0x4F6B, 0xCBCC, 0x4F6E, 0xCBCD, 0x519E,
- 0xCBCE, 0x51BC, 0xCBCF, 0x51BE, 0xCBD0, 0x5235, 0xCBD1, 0x5232,
- 0xCBD2, 0x5233, 0xCBD3, 0x5246, 0xCBD4, 0x5231, 0xCBD5, 0x52BC,
- 0xCBD6, 0x530A, 0xCBD7, 0x530B, 0xCBD8, 0x533C, 0xCBD9, 0x5392,
- 0xCBDA, 0x5394, 0xCBDB, 0x5487, 0xCBDC, 0x547F, 0xCBDD, 0x5481,
- 0xCBDE, 0x5491, 0xCBDF, 0x5482, 0xCBE0, 0x5488, 0xCBE1, 0x546B,
- 0xCBE2, 0x547A, 0xCBE3, 0x547E, 0xCBE4, 0x5465, 0xCBE5, 0x546C,
- 0xCBE6, 0x5474, 0xCBE7, 0x5466, 0xCBE8, 0x548D, 0xCBE9, 0x546F,
- 0xCBEA, 0x5461, 0xCBEB, 0x5460, 0xCBEC, 0x5498, 0xCBED, 0x5463,
- 0xCBEE, 0x5467, 0xCBEF, 0x5464, 0xCBF0, 0x56F7, 0xCBF1, 0x56F9,
- 0xCBF2, 0x576F, 0xCBF3, 0x5772, 0xCBF4, 0x576D, 0xCBF5, 0x576B,
- 0xCBF6, 0x5771, 0xCBF7, 0x5770, 0xCBF8, 0x5776, 0xCBF9, 0x5780,
- 0xCBFA, 0x5775, 0xCBFB, 0x577B, 0xCBFC, 0x5773, 0xCBFD, 0x5774,
- 0xCBFE, 0x5762, 0xCC40, 0x5768, 0xCC41, 0x577D, 0xCC42, 0x590C,
- 0xCC43, 0x5945, 0xCC44, 0x59B5, 0xCC45, 0x59BA, 0xCC46, 0x59CF,
- 0xCC47, 0x59CE, 0xCC48, 0x59B2, 0xCC49, 0x59CC, 0xCC4A, 0x59C1,
- 0xCC4B, 0x59B6, 0xCC4C, 0x59BC, 0xCC4D, 0x59C3, 0xCC4E, 0x59D6,
- 0xCC4F, 0x59B1, 0xCC50, 0x59BD, 0xCC51, 0x59C0, 0xCC52, 0x59C8,
- 0xCC53, 0x59B4, 0xCC54, 0x59C7, 0xCC55, 0x5B62, 0xCC56, 0x5B65,
- 0xCC57, 0x5B93, 0xCC58, 0x5B95, 0xCC59, 0x5C44, 0xCC5A, 0x5C47,
- 0xCC5B, 0x5CAE, 0xCC5C, 0x5CA4, 0xCC5D, 0x5CA0, 0xCC5E, 0x5CB5,
- 0xCC5F, 0x5CAF, 0xCC60, 0x5CA8, 0xCC61, 0x5CAC, 0xCC62, 0x5C9F,
- 0xCC63, 0x5CA3, 0xCC64, 0x5CAD, 0xCC65, 0x5CA2, 0xCC66, 0x5CAA,
- 0xCC67, 0x5CA7, 0xCC68, 0x5C9D, 0xCC69, 0x5CA5, 0xCC6A, 0x5CB6,
- 0xCC6B, 0x5CB0, 0xCC6C, 0x5CA6, 0xCC6D, 0x5E17, 0xCC6E, 0x5E14,
- 0xCC6F, 0x5E19, 0xCC70, 0x5F28, 0xCC71, 0x5F22, 0xCC72, 0x5F23,
- 0xCC73, 0x5F24, 0xCC74, 0x5F54, 0xCC75, 0x5F82, 0xCC76, 0x5F7E,
- 0xCC77, 0x5F7D, 0xCC78, 0x5FDE, 0xCC79, 0x5FE5, 0xCC7A, 0x602D,
- 0xCC7B, 0x6026, 0xCC7C, 0x6019, 0xCC7D, 0x6032, 0xCC7E, 0x600B,
- 0xCCA1, 0x6034, 0xCCA2, 0x600A, 0xCCA3, 0x6017, 0xCCA4, 0x6033,
- 0xCCA5, 0x601A, 0xCCA6, 0x601E, 0xCCA7, 0x602C, 0xCCA8, 0x6022,
- 0xCCA9, 0x600D, 0xCCAA, 0x6010, 0xCCAB, 0x602E, 0xCCAC, 0x6013,
- 0xCCAD, 0x6011, 0xCCAE, 0x600C, 0xCCAF, 0x6009, 0xCCB0, 0x601C,
- 0xCCB1, 0x6214, 0xCCB2, 0x623D, 0xCCB3, 0x62AD, 0xCCB4, 0x62B4,
- 0xCCB5, 0x62D1, 0xCCB6, 0x62BE, 0xCCB7, 0x62AA, 0xCCB8, 0x62B6,
- 0xCCB9, 0x62CA, 0xCCBA, 0x62AE, 0xCCBB, 0x62B3, 0xCCBC, 0x62AF,
- 0xCCBD, 0x62BB, 0xCCBE, 0x62A9, 0xCCBF, 0x62B0, 0xCCC0, 0x62B8,
- 0xCCC1, 0x653D, 0xCCC2, 0x65A8, 0xCCC3, 0x65BB, 0xCCC4, 0x6609,
- 0xCCC5, 0x65FC, 0xCCC6, 0x6604, 0xCCC7, 0x6612, 0xCCC8, 0x6608,
- 0xCCC9, 0x65FB, 0xCCCA, 0x6603, 0xCCCB, 0x660B, 0xCCCC, 0x660D,
- 0xCCCD, 0x6605, 0xCCCE, 0x65FD, 0xCCCF, 0x6611, 0xCCD0, 0x6610,
- 0xCCD1, 0x66F6, 0xCCD2, 0x670A, 0xCCD3, 0x6785, 0xCCD4, 0x676C,
- 0xCCD5, 0x678E, 0xCCD6, 0x6792, 0xCCD7, 0x6776, 0xCCD8, 0x677B,
- 0xCCD9, 0x6798, 0xCCDA, 0x6786, 0xCCDB, 0x6784, 0xCCDC, 0x6774,
- 0xCCDD, 0x678D, 0xCCDE, 0x678C, 0xCCDF, 0x677A, 0xCCE0, 0x679F,
- 0xCCE1, 0x6791, 0xCCE2, 0x6799, 0xCCE3, 0x6783, 0xCCE4, 0x677D,
- 0xCCE5, 0x6781, 0xCCE6, 0x6778, 0xCCE7, 0x6779, 0xCCE8, 0x6794,
- 0xCCE9, 0x6B25, 0xCCEA, 0x6B80, 0xCCEB, 0x6B7E, 0xCCEC, 0x6BDE,
- 0xCCED, 0x6C1D, 0xCCEE, 0x6C93, 0xCCEF, 0x6CEC, 0xCCF0, 0x6CEB,
- 0xCCF1, 0x6CEE, 0xCCF2, 0x6CD9, 0xCCF3, 0x6CB6, 0xCCF4, 0x6CD4,
- 0xCCF5, 0x6CAD, 0xCCF6, 0x6CE7, 0xCCF7, 0x6CB7, 0xCCF8, 0x6CD0,
- 0xCCF9, 0x6CC2, 0xCCFA, 0x6CBA, 0xCCFB, 0x6CC3, 0xCCFC, 0x6CC6,
- 0xCCFD, 0x6CED, 0xCCFE, 0x6CF2, 0xCD40, 0x6CD2, 0xCD41, 0x6CDD,
- 0xCD42, 0x6CB4, 0xCD43, 0x6C8A, 0xCD44, 0x6C9D, 0xCD45, 0x6C80,
- 0xCD46, 0x6CDE, 0xCD47, 0x6CC0, 0xCD48, 0x6D30, 0xCD49, 0x6CCD,
- 0xCD4A, 0x6CC7, 0xCD4B, 0x6CB0, 0xCD4C, 0x6CF9, 0xCD4D, 0x6CCF,
- 0xCD4E, 0x6CE9, 0xCD4F, 0x6CD1, 0xCD50, 0x7094, 0xCD51, 0x7098,
- 0xCD52, 0x7085, 0xCD53, 0x7093, 0xCD54, 0x7086, 0xCD55, 0x7084,
- 0xCD56, 0x7091, 0xCD57, 0x7096, 0xCD58, 0x7082, 0xCD59, 0x709A,
- 0xCD5A, 0x7083, 0xCD5B, 0x726A, 0xCD5C, 0x72D6, 0xCD5D, 0x72CB,
- 0xCD5E, 0x72D8, 0xCD5F, 0x72C9, 0xCD60, 0x72DC, 0xCD61, 0x72D2,
- 0xCD62, 0x72D4, 0xCD63, 0x72DA, 0xCD64, 0x72CC, 0xCD65, 0x72D1,
- 0xCD66, 0x73A4, 0xCD67, 0x73A1, 0xCD68, 0x73AD, 0xCD69, 0x73A6,
- 0xCD6A, 0x73A2, 0xCD6B, 0x73A0, 0xCD6C, 0x73AC, 0xCD6D, 0x739D,
- 0xCD6E, 0x74DD, 0xCD6F, 0x74E8, 0xCD70, 0x753F, 0xCD71, 0x7540,
- 0xCD72, 0x753E, 0xCD73, 0x758C, 0xCD74, 0x7598, 0xCD75, 0x76AF,
- 0xCD76, 0x76F3, 0xCD77, 0x76F1, 0xCD78, 0x76F0, 0xCD79, 0x76F5,
- 0xCD7A, 0x77F8, 0xCD7B, 0x77FC, 0xCD7C, 0x77F9, 0xCD7D, 0x77FB,
- 0xCD7E, 0x77FA, 0xCDA1, 0x77F7, 0xCDA2, 0x7942, 0xCDA3, 0x793F,
- 0xCDA4, 0x79C5, 0xCDA5, 0x7A78, 0xCDA6, 0x7A7B, 0xCDA7, 0x7AFB,
- 0xCDA8, 0x7C75, 0xCDA9, 0x7CFD, 0xCDAA, 0x8035, 0xCDAB, 0x808F,
- 0xCDAC, 0x80AE, 0xCDAD, 0x80A3, 0xCDAE, 0x80B8, 0xCDAF, 0x80B5,
- 0xCDB0, 0x80AD, 0xCDB1, 0x8220, 0xCDB2, 0x82A0, 0xCDB3, 0x82C0,
- 0xCDB4, 0x82AB, 0xCDB5, 0x829A, 0xCDB6, 0x8298, 0xCDB7, 0x829B,
- 0xCDB8, 0x82B5, 0xCDB9, 0x82A7, 0xCDBA, 0x82AE, 0xCDBB, 0x82BC,
- 0xCDBC, 0x829E, 0xCDBD, 0x82BA, 0xCDBE, 0x82B4, 0xCDBF, 0x82A8,
- 0xCDC0, 0x82A1, 0xCDC1, 0x82A9, 0xCDC2, 0x82C2, 0xCDC3, 0x82A4,
- 0xCDC4, 0x82C3, 0xCDC5, 0x82B6, 0xCDC6, 0x82A2, 0xCDC7, 0x8670,
- 0xCDC8, 0x866F, 0xCDC9, 0x866D, 0xCDCA, 0x866E, 0xCDCB, 0x8C56,
- 0xCDCC, 0x8FD2, 0xCDCD, 0x8FCB, 0xCDCE, 0x8FD3, 0xCDCF, 0x8FCD,
- 0xCDD0, 0x8FD6, 0xCDD1, 0x8FD5, 0xCDD2, 0x8FD7, 0xCDD3, 0x90B2,
- 0xCDD4, 0x90B4, 0xCDD5, 0x90AF, 0xCDD6, 0x90B3, 0xCDD7, 0x90B0,
- 0xCDD8, 0x9639, 0xCDD9, 0x963D, 0xCDDA, 0x963C, 0xCDDB, 0x963A,
- 0xCDDC, 0x9643, 0xCDDD, 0x4FCD, 0xCDDE, 0x4FC5, 0xCDDF, 0x4FD3,
- 0xCDE0, 0x4FB2, 0xCDE1, 0x4FC9, 0xCDE2, 0x4FCB, 0xCDE3, 0x4FC1,
- 0xCDE4, 0x4FD4, 0xCDE5, 0x4FDC, 0xCDE6, 0x4FD9, 0xCDE7, 0x4FBB,
- 0xCDE8, 0x4FB3, 0xCDE9, 0x4FDB, 0xCDEA, 0x4FC7, 0xCDEB, 0x4FD6,
- 0xCDEC, 0x4FBA, 0xCDED, 0x4FC0, 0xCDEE, 0x4FB9, 0xCDEF, 0x4FEC,
- 0xCDF0, 0x5244, 0xCDF1, 0x5249, 0xCDF2, 0x52C0, 0xCDF3, 0x52C2,
- 0xCDF4, 0x533D, 0xCDF5, 0x537C, 0xCDF6, 0x5397, 0xCDF7, 0x5396,
- 0xCDF8, 0x5399, 0xCDF9, 0x5398, 0xCDFA, 0x54BA, 0xCDFB, 0x54A1,
- 0xCDFC, 0x54AD, 0xCDFD, 0x54A5, 0xCDFE, 0x54CF, 0xCE40, 0x54C3,
- 0xCE41, 0x830D, 0xCE42, 0x54B7, 0xCE43, 0x54AE, 0xCE44, 0x54D6,
- 0xCE45, 0x54B6, 0xCE46, 0x54C5, 0xCE47, 0x54C6, 0xCE48, 0x54A0,
- 0xCE49, 0x5470, 0xCE4A, 0x54BC, 0xCE4B, 0x54A2, 0xCE4C, 0x54BE,
- 0xCE4D, 0x5472, 0xCE4E, 0x54DE, 0xCE4F, 0x54B0, 0xCE50, 0x57B5,
- 0xCE51, 0x579E, 0xCE52, 0x579F, 0xCE53, 0x57A4, 0xCE54, 0x578C,
- 0xCE55, 0x5797, 0xCE56, 0x579D, 0xCE57, 0x579B, 0xCE58, 0x5794,
- 0xCE59, 0x5798, 0xCE5A, 0x578F, 0xCE5B, 0x5799, 0xCE5C, 0x57A5,
- 0xCE5D, 0x579A, 0xCE5E, 0x5795, 0xCE5F, 0x58F4, 0xCE60, 0x590D,
- 0xCE61, 0x5953, 0xCE62, 0x59E1, 0xCE63, 0x59DE, 0xCE64, 0x59EE,
- 0xCE65, 0x5A00, 0xCE66, 0x59F1, 0xCE67, 0x59DD, 0xCE68, 0x59FA,
- 0xCE69, 0x59FD, 0xCE6A, 0x59FC, 0xCE6B, 0x59F6, 0xCE6C, 0x59E4,
- 0xCE6D, 0x59F2, 0xCE6E, 0x59F7, 0xCE6F, 0x59DB, 0xCE70, 0x59E9,
- 0xCE71, 0x59F3, 0xCE72, 0x59F5, 0xCE73, 0x59E0, 0xCE74, 0x59FE,
- 0xCE75, 0x59F4, 0xCE76, 0x59ED, 0xCE77, 0x5BA8, 0xCE78, 0x5C4C,
- 0xCE79, 0x5CD0, 0xCE7A, 0x5CD8, 0xCE7B, 0x5CCC, 0xCE7C, 0x5CD7,
- 0xCE7D, 0x5CCB, 0xCE7E, 0x5CDB, 0xCEA1, 0x5CDE, 0xCEA2, 0x5CDA,
- 0xCEA3, 0x5CC9, 0xCEA4, 0x5CC7, 0xCEA5, 0x5CCA, 0xCEA6, 0x5CD6,
- 0xCEA7, 0x5CD3, 0xCEA8, 0x5CD4, 0xCEA9, 0x5CCF, 0xCEAA, 0x5CC8,
- 0xCEAB, 0x5CC6, 0xCEAC, 0x5CCE, 0xCEAD, 0x5CDF, 0xCEAE, 0x5CF8,
- 0xCEAF, 0x5DF9, 0xCEB0, 0x5E21, 0xCEB1, 0x5E22, 0xCEB2, 0x5E23,
- 0xCEB3, 0x5E20, 0xCEB4, 0x5E24, 0xCEB5, 0x5EB0, 0xCEB6, 0x5EA4,
- 0xCEB7, 0x5EA2, 0xCEB8, 0x5E9B, 0xCEB9, 0x5EA3, 0xCEBA, 0x5EA5,
- 0xCEBB, 0x5F07, 0xCEBC, 0x5F2E, 0xCEBD, 0x5F56, 0xCEBE, 0x5F86,
- 0xCEBF, 0x6037, 0xCEC0, 0x6039, 0xCEC1, 0x6054, 0xCEC2, 0x6072,
- 0xCEC3, 0x605E, 0xCEC4, 0x6045, 0xCEC5, 0x6053, 0xCEC6, 0x6047,
- 0xCEC7, 0x6049, 0xCEC8, 0x605B, 0xCEC9, 0x604C, 0xCECA, 0x6040,
- 0xCECB, 0x6042, 0xCECC, 0x605F, 0xCECD, 0x6024, 0xCECE, 0x6044,
- 0xCECF, 0x6058, 0xCED0, 0x6066, 0xCED1, 0x606E, 0xCED2, 0x6242,
- 0xCED3, 0x6243, 0xCED4, 0x62CF, 0xCED5, 0x630D, 0xCED6, 0x630B,
- 0xCED7, 0x62F5, 0xCED8, 0x630E, 0xCED9, 0x6303, 0xCEDA, 0x62EB,
- 0xCEDB, 0x62F9, 0xCEDC, 0x630F, 0xCEDD, 0x630C, 0xCEDE, 0x62F8,
- 0xCEDF, 0x62F6, 0xCEE0, 0x6300, 0xCEE1, 0x6313, 0xCEE2, 0x6314,
- 0xCEE3, 0x62FA, 0xCEE4, 0x6315, 0xCEE5, 0x62FB, 0xCEE6, 0x62F0,
- 0xCEE7, 0x6541, 0xCEE8, 0x6543, 0xCEE9, 0x65AA, 0xCEEA, 0x65BF,
- 0xCEEB, 0x6636, 0xCEEC, 0x6621, 0xCEED, 0x6632, 0xCEEE, 0x6635,
- 0xCEEF, 0x661C, 0xCEF0, 0x6626, 0xCEF1, 0x6622, 0xCEF2, 0x6633,
- 0xCEF3, 0x662B, 0xCEF4, 0x663A, 0xCEF5, 0x661D, 0xCEF6, 0x6634,
- 0xCEF7, 0x6639, 0xCEF8, 0x662E, 0xCEF9, 0x670F, 0xCEFA, 0x6710,
- 0xCEFB, 0x67C1, 0xCEFC, 0x67F2, 0xCEFD, 0x67C8, 0xCEFE, 0x67BA,
- 0xCF40, 0x67DC, 0xCF41, 0x67BB, 0xCF42, 0x67F8, 0xCF43, 0x67D8,
- 0xCF44, 0x67C0, 0xCF45, 0x67B7, 0xCF46, 0x67C5, 0xCF47, 0x67EB,
- 0xCF48, 0x67E4, 0xCF49, 0x67DF, 0xCF4A, 0x67B5, 0xCF4B, 0x67CD,
- 0xCF4C, 0x67B3, 0xCF4D, 0x67F7, 0xCF4E, 0x67F6, 0xCF4F, 0x67EE,
- 0xCF50, 0x67E3, 0xCF51, 0x67C2, 0xCF52, 0x67B9, 0xCF53, 0x67CE,
- 0xCF54, 0x67E7, 0xCF55, 0x67F0, 0xCF56, 0x67B2, 0xCF57, 0x67FC,
- 0xCF58, 0x67C6, 0xCF59, 0x67ED, 0xCF5A, 0x67CC, 0xCF5B, 0x67AE,
- 0xCF5C, 0x67E6, 0xCF5D, 0x67DB, 0xCF5E, 0x67FA, 0xCF5F, 0x67C9,
- 0xCF60, 0x67CA, 0xCF61, 0x67C3, 0xCF62, 0x67EA, 0xCF63, 0x67CB,
- 0xCF64, 0x6B28, 0xCF65, 0x6B82, 0xCF66, 0x6B84, 0xCF67, 0x6BB6,
- 0xCF68, 0x6BD6, 0xCF69, 0x6BD8, 0xCF6A, 0x6BE0, 0xCF6B, 0x6C20,
- 0xCF6C, 0x6C21, 0xCF6D, 0x6D28, 0xCF6E, 0x6D34, 0xCF6F, 0x6D2D,
- 0xCF70, 0x6D1F, 0xCF71, 0x6D3C, 0xCF72, 0x6D3F, 0xCF73, 0x6D12,
- 0xCF74, 0x6D0A, 0xCF75, 0x6CDA, 0xCF76, 0x6D33, 0xCF77, 0x6D04,
- 0xCF78, 0x6D19, 0xCF79, 0x6D3A, 0xCF7A, 0x6D1A, 0xCF7B, 0x6D11,
- 0xCF7C, 0x6D00, 0xCF7D, 0x6D1D, 0xCF7E, 0x6D42, 0xCFA1, 0x6D01,
- 0xCFA2, 0x6D18, 0xCFA3, 0x6D37, 0xCFA4, 0x6D03, 0xCFA5, 0x6D0F,
- 0xCFA6, 0x6D40, 0xCFA7, 0x6D07, 0xCFA8, 0x6D20, 0xCFA9, 0x6D2C,
- 0xCFAA, 0x6D08, 0xCFAB, 0x6D22, 0xCFAC, 0x6D09, 0xCFAD, 0x6D10,
- 0xCFAE, 0x70B7, 0xCFAF, 0x709F, 0xCFB0, 0x70BE, 0xCFB1, 0x70B1,
- 0xCFB2, 0x70B0, 0xCFB3, 0x70A1, 0xCFB4, 0x70B4, 0xCFB5, 0x70B5,
- 0xCFB6, 0x70A9, 0xCFB7, 0x7241, 0xCFB8, 0x7249, 0xCFB9, 0x724A,
- 0xCFBA, 0x726C, 0xCFBB, 0x7270, 0xCFBC, 0x7273, 0xCFBD, 0x726E,
- 0xCFBE, 0x72CA, 0xCFBF, 0x72E4, 0xCFC0, 0x72E8, 0xCFC1, 0x72EB,
- 0xCFC2, 0x72DF, 0xCFC3, 0x72EA, 0xCFC4, 0x72E6, 0xCFC5, 0x72E3,
- 0xCFC6, 0x7385, 0xCFC7, 0x73CC, 0xCFC8, 0x73C2, 0xCFC9, 0x73C8,
- 0xCFCA, 0x73C5, 0xCFCB, 0x73B9, 0xCFCC, 0x73B6, 0xCFCD, 0x73B5,
- 0xCFCE, 0x73B4, 0xCFCF, 0x73EB, 0xCFD0, 0x73BF, 0xCFD1, 0x73C7,
- 0xCFD2, 0x73BE, 0xCFD3, 0x73C3, 0xCFD4, 0x73C6, 0xCFD5, 0x73B8,
- 0xCFD6, 0x73CB, 0xCFD7, 0x74EC, 0xCFD8, 0x74EE, 0xCFD9, 0x752E,
- 0xCFDA, 0x7547, 0xCFDB, 0x7548, 0xCFDC, 0x75A7, 0xCFDD, 0x75AA,
- 0xCFDE, 0x7679, 0xCFDF, 0x76C4, 0xCFE0, 0x7708, 0xCFE1, 0x7703,
- 0xCFE2, 0x7704, 0xCFE3, 0x7705, 0xCFE4, 0x770A, 0xCFE5, 0x76F7,
- 0xCFE6, 0x76FB, 0xCFE7, 0x76FA, 0xCFE8, 0x77E7, 0xCFE9, 0x77E8,
- 0xCFEA, 0x7806, 0xCFEB, 0x7811, 0xCFEC, 0x7812, 0xCFED, 0x7805,
- 0xCFEE, 0x7810, 0xCFEF, 0x780F, 0xCFF0, 0x780E, 0xCFF1, 0x7809,
- 0xCFF2, 0x7803, 0xCFF3, 0x7813, 0xCFF4, 0x794A, 0xCFF5, 0x794C,
- 0xCFF6, 0x794B, 0xCFF7, 0x7945, 0xCFF8, 0x7944, 0xCFF9, 0x79D5,
- 0xCFFA, 0x79CD, 0xCFFB, 0x79CF, 0xCFFC, 0x79D6, 0xCFFD, 0x79CE,
- 0xCFFE, 0x7A80, 0xD040, 0x7A7E, 0xD041, 0x7AD1, 0xD042, 0x7B00,
- 0xD043, 0x7B01, 0xD044, 0x7C7A, 0xD045, 0x7C78, 0xD046, 0x7C79,
- 0xD047, 0x7C7F, 0xD048, 0x7C80, 0xD049, 0x7C81, 0xD04A, 0x7D03,
- 0xD04B, 0x7D08, 0xD04C, 0x7D01, 0xD04D, 0x7F58, 0xD04E, 0x7F91,
- 0xD04F, 0x7F8D, 0xD050, 0x7FBE, 0xD051, 0x8007, 0xD052, 0x800E,
- 0xD053, 0x800F, 0xD054, 0x8014, 0xD055, 0x8037, 0xD056, 0x80D8,
- 0xD057, 0x80C7, 0xD058, 0x80E0, 0xD059, 0x80D1, 0xD05A, 0x80C8,
- 0xD05B, 0x80C2, 0xD05C, 0x80D0, 0xD05D, 0x80C5, 0xD05E, 0x80E3,
- 0xD05F, 0x80D9, 0xD060, 0x80DC, 0xD061, 0x80CA, 0xD062, 0x80D5,
- 0xD063, 0x80C9, 0xD064, 0x80CF, 0xD065, 0x80D7, 0xD066, 0x80E6,
- 0xD067, 0x80CD, 0xD068, 0x81FF, 0xD069, 0x8221, 0xD06A, 0x8294,
- 0xD06B, 0x82D9, 0xD06C, 0x82FE, 0xD06D, 0x82F9, 0xD06E, 0x8307,
- 0xD06F, 0x82E8, 0xD070, 0x8300, 0xD071, 0x82D5, 0xD072, 0x833A,
- 0xD073, 0x82EB, 0xD074, 0x82D6, 0xD075, 0x82F4, 0xD076, 0x82EC,
- 0xD077, 0x82E1, 0xD078, 0x82F2, 0xD079, 0x82F5, 0xD07A, 0x830C,
- 0xD07B, 0x82FB, 0xD07C, 0x82F6, 0xD07D, 0x82F0, 0xD07E, 0x82EA,
- 0xD0A1, 0x82E4, 0xD0A2, 0x82E0, 0xD0A3, 0x82FA, 0xD0A4, 0x82F3,
- 0xD0A5, 0x82ED, 0xD0A6, 0x8677, 0xD0A7, 0x8674, 0xD0A8, 0x867C,
- 0xD0A9, 0x8673, 0xD0AA, 0x8841, 0xD0AB, 0x884E, 0xD0AC, 0x8867,
- 0xD0AD, 0x886A, 0xD0AE, 0x8869, 0xD0AF, 0x89D3, 0xD0B0, 0x8A04,
- 0xD0B1, 0x8A07, 0xD0B2, 0x8D72, 0xD0B3, 0x8FE3, 0xD0B4, 0x8FE1,
- 0xD0B5, 0x8FEE, 0xD0B6, 0x8FE0, 0xD0B7, 0x90F1, 0xD0B8, 0x90BD,
- 0xD0B9, 0x90BF, 0xD0BA, 0x90D5, 0xD0BB, 0x90C5, 0xD0BC, 0x90BE,
- 0xD0BD, 0x90C7, 0xD0BE, 0x90CB, 0xD0BF, 0x90C8, 0xD0C0, 0x91D4,
- 0xD0C1, 0x91D3, 0xD0C2, 0x9654, 0xD0C3, 0x964F, 0xD0C4, 0x9651,
- 0xD0C5, 0x9653, 0xD0C6, 0x964A, 0xD0C7, 0x964E, 0xD0C8, 0x501E,
- 0xD0C9, 0x5005, 0xD0CA, 0x5007, 0xD0CB, 0x5013, 0xD0CC, 0x5022,
- 0xD0CD, 0x5030, 0xD0CE, 0x501B, 0xD0CF, 0x4FF5, 0xD0D0, 0x4FF4,
- 0xD0D1, 0x5033, 0xD0D2, 0x5037, 0xD0D3, 0x502C, 0xD0D4, 0x4FF6,
- 0xD0D5, 0x4FF7, 0xD0D6, 0x5017, 0xD0D7, 0x501C, 0xD0D8, 0x5020,
- 0xD0D9, 0x5027, 0xD0DA, 0x5035, 0xD0DB, 0x502F, 0xD0DC, 0x5031,
- 0xD0DD, 0x500E, 0xD0DE, 0x515A, 0xD0DF, 0x5194, 0xD0E0, 0x5193,
- 0xD0E1, 0x51CA, 0xD0E2, 0x51C4, 0xD0E3, 0x51C5, 0xD0E4, 0x51C8,
- 0xD0E5, 0x51CE, 0xD0E6, 0x5261, 0xD0E7, 0x525A, 0xD0E8, 0x5252,
- 0xD0E9, 0x525E, 0xD0EA, 0x525F, 0xD0EB, 0x5255, 0xD0EC, 0x5262,
- 0xD0ED, 0x52CD, 0xD0EE, 0x530E, 0xD0EF, 0x539E, 0xD0F0, 0x5526,
- 0xD0F1, 0x54E2, 0xD0F2, 0x5517, 0xD0F3, 0x5512, 0xD0F4, 0x54E7,
- 0xD0F5, 0x54F3, 0xD0F6, 0x54E4, 0xD0F7, 0x551A, 0xD0F8, 0x54FF,
- 0xD0F9, 0x5504, 0xD0FA, 0x5508, 0xD0FB, 0x54EB, 0xD0FC, 0x5511,
- 0xD0FD, 0x5505, 0xD0FE, 0x54F1, 0xD140, 0x550A, 0xD141, 0x54FB,
- 0xD142, 0x54F7, 0xD143, 0x54F8, 0xD144, 0x54E0, 0xD145, 0x550E,
- 0xD146, 0x5503, 0xD147, 0x550B, 0xD148, 0x5701, 0xD149, 0x5702,
- 0xD14A, 0x57CC, 0xD14B, 0x5832, 0xD14C, 0x57D5, 0xD14D, 0x57D2,
- 0xD14E, 0x57BA, 0xD14F, 0x57C6, 0xD150, 0x57BD, 0xD151, 0x57BC,
- 0xD152, 0x57B8, 0xD153, 0x57B6, 0xD154, 0x57BF, 0xD155, 0x57C7,
- 0xD156, 0x57D0, 0xD157, 0x57B9, 0xD158, 0x57C1, 0xD159, 0x590E,
- 0xD15A, 0x594A, 0xD15B, 0x5A19, 0xD15C, 0x5A16, 0xD15D, 0x5A2D,
- 0xD15E, 0x5A2E, 0xD15F, 0x5A15, 0xD160, 0x5A0F, 0xD161, 0x5A17,
- 0xD162, 0x5A0A, 0xD163, 0x5A1E, 0xD164, 0x5A33, 0xD165, 0x5B6C,
- 0xD166, 0x5BA7, 0xD167, 0x5BAD, 0xD168, 0x5BAC, 0xD169, 0x5C03,
- 0xD16A, 0x5C56, 0xD16B, 0x5C54, 0xD16C, 0x5CEC, 0xD16D, 0x5CFF,
- 0xD16E, 0x5CEE, 0xD16F, 0x5CF1, 0xD170, 0x5CF7, 0xD171, 0x5D00,
- 0xD172, 0x5CF9, 0xD173, 0x5E29, 0xD174, 0x5E28, 0xD175, 0x5EA8,
- 0xD176, 0x5EAE, 0xD177, 0x5EAA, 0xD178, 0x5EAC, 0xD179, 0x5F33,
- 0xD17A, 0x5F30, 0xD17B, 0x5F67, 0xD17C, 0x605D, 0xD17D, 0x605A,
- 0xD17E, 0x6067, 0xD1A1, 0x6041, 0xD1A2, 0x60A2, 0xD1A3, 0x6088,
- 0xD1A4, 0x6080, 0xD1A5, 0x6092, 0xD1A6, 0x6081, 0xD1A7, 0x609D,
- 0xD1A8, 0x6083, 0xD1A9, 0x6095, 0xD1AA, 0x609B, 0xD1AB, 0x6097,
- 0xD1AC, 0x6087, 0xD1AD, 0x609C, 0xD1AE, 0x608E, 0xD1AF, 0x6219,
- 0xD1B0, 0x6246, 0xD1B1, 0x62F2, 0xD1B2, 0x6310, 0xD1B3, 0x6356,
- 0xD1B4, 0x632C, 0xD1B5, 0x6344, 0xD1B6, 0x6345, 0xD1B7, 0x6336,
- 0xD1B8, 0x6343, 0xD1B9, 0x63E4, 0xD1BA, 0x6339, 0xD1BB, 0x634B,
- 0xD1BC, 0x634A, 0xD1BD, 0x633C, 0xD1BE, 0x6329, 0xD1BF, 0x6341,
- 0xD1C0, 0x6334, 0xD1C1, 0x6358, 0xD1C2, 0x6354, 0xD1C3, 0x6359,
- 0xD1C4, 0x632D, 0xD1C5, 0x6347, 0xD1C6, 0x6333, 0xD1C7, 0x635A,
- 0xD1C8, 0x6351, 0xD1C9, 0x6338, 0xD1CA, 0x6357, 0xD1CB, 0x6340,
- 0xD1CC, 0x6348, 0xD1CD, 0x654A, 0xD1CE, 0x6546, 0xD1CF, 0x65C6,
- 0xD1D0, 0x65C3, 0xD1D1, 0x65C4, 0xD1D2, 0x65C2, 0xD1D3, 0x664A,
- 0xD1D4, 0x665F, 0xD1D5, 0x6647, 0xD1D6, 0x6651, 0xD1D7, 0x6712,
- 0xD1D8, 0x6713, 0xD1D9, 0x681F, 0xD1DA, 0x681A, 0xD1DB, 0x6849,
- 0xD1DC, 0x6832, 0xD1DD, 0x6833, 0xD1DE, 0x683B, 0xD1DF, 0x684B,
- 0xD1E0, 0x684F, 0xD1E1, 0x6816, 0xD1E2, 0x6831, 0xD1E3, 0x681C,
- 0xD1E4, 0x6835, 0xD1E5, 0x682B, 0xD1E6, 0x682D, 0xD1E7, 0x682F,
- 0xD1E8, 0x684E, 0xD1E9, 0x6844, 0xD1EA, 0x6834, 0xD1EB, 0x681D,
- 0xD1EC, 0x6812, 0xD1ED, 0x6814, 0xD1EE, 0x6826, 0xD1EF, 0x6828,
- 0xD1F0, 0x682E, 0xD1F1, 0x684D, 0xD1F2, 0x683A, 0xD1F3, 0x6825,
- 0xD1F4, 0x6820, 0xD1F5, 0x6B2C, 0xD1F6, 0x6B2F, 0xD1F7, 0x6B2D,
- 0xD1F8, 0x6B31, 0xD1F9, 0x6B34, 0xD1FA, 0x6B6D, 0xD1FB, 0x8082,
- 0xD1FC, 0x6B88, 0xD1FD, 0x6BE6, 0xD1FE, 0x6BE4, 0xD240, 0x6BE8,
- 0xD241, 0x6BE3, 0xD242, 0x6BE2, 0xD243, 0x6BE7, 0xD244, 0x6C25,
- 0xD245, 0x6D7A, 0xD246, 0x6D63, 0xD247, 0x6D64, 0xD248, 0x6D76,
- 0xD249, 0x6D0D, 0xD24A, 0x6D61, 0xD24B, 0x6D92, 0xD24C, 0x6D58,
- 0xD24D, 0x6D62, 0xD24E, 0x6D6D, 0xD24F, 0x6D6F, 0xD250, 0x6D91,
- 0xD251, 0x6D8D, 0xD252, 0x6DEF, 0xD253, 0x6D7F, 0xD254, 0x6D86,
- 0xD255, 0x6D5E, 0xD256, 0x6D67, 0xD257, 0x6D60, 0xD258, 0x6D97,
- 0xD259, 0x6D70, 0xD25A, 0x6D7C, 0xD25B, 0x6D5F, 0xD25C, 0x6D82,
- 0xD25D, 0x6D98, 0xD25E, 0x6D2F, 0xD25F, 0x6D68, 0xD260, 0x6D8B,
- 0xD261, 0x6D7E, 0xD262, 0x6D80, 0xD263, 0x6D84, 0xD264, 0x6D16,
- 0xD265, 0x6D83, 0xD266, 0x6D7B, 0xD267, 0x6D7D, 0xD268, 0x6D75,
- 0xD269, 0x6D90, 0xD26A, 0x70DC, 0xD26B, 0x70D3, 0xD26C, 0x70D1,
- 0xD26D, 0x70DD, 0xD26E, 0x70CB, 0xD26F, 0x7F39, 0xD270, 0x70E2,
- 0xD271, 0x70D7, 0xD272, 0x70D2, 0xD273, 0x70DE, 0xD274, 0x70E0,
- 0xD275, 0x70D4, 0xD276, 0x70CD, 0xD277, 0x70C5, 0xD278, 0x70C6,
- 0xD279, 0x70C7, 0xD27A, 0x70DA, 0xD27B, 0x70CE, 0xD27C, 0x70E1,
- 0xD27D, 0x7242, 0xD27E, 0x7278, 0xD2A1, 0x7277, 0xD2A2, 0x7276,
- 0xD2A3, 0x7300, 0xD2A4, 0x72FA, 0xD2A5, 0x72F4, 0xD2A6, 0x72FE,
- 0xD2A7, 0x72F6, 0xD2A8, 0x72F3, 0xD2A9, 0x72FB, 0xD2AA, 0x7301,
- 0xD2AB, 0x73D3, 0xD2AC, 0x73D9, 0xD2AD, 0x73E5, 0xD2AE, 0x73D6,
- 0xD2AF, 0x73BC, 0xD2B0, 0x73E7, 0xD2B1, 0x73E3, 0xD2B2, 0x73E9,
- 0xD2B3, 0x73DC, 0xD2B4, 0x73D2, 0xD2B5, 0x73DB, 0xD2B6, 0x73D4,
- 0xD2B7, 0x73DD, 0xD2B8, 0x73DA, 0xD2B9, 0x73D7, 0xD2BA, 0x73D8,
- 0xD2BB, 0x73E8, 0xD2BC, 0x74DE, 0xD2BD, 0x74DF, 0xD2BE, 0x74F4,
- 0xD2BF, 0x74F5, 0xD2C0, 0x7521, 0xD2C1, 0x755B, 0xD2C2, 0x755F,
- 0xD2C3, 0x75B0, 0xD2C4, 0x75C1, 0xD2C5, 0x75BB, 0xD2C6, 0x75C4,
- 0xD2C7, 0x75C0, 0xD2C8, 0x75BF, 0xD2C9, 0x75B6, 0xD2CA, 0x75BA,
- 0xD2CB, 0x768A, 0xD2CC, 0x76C9, 0xD2CD, 0x771D, 0xD2CE, 0x771B,
- 0xD2CF, 0x7710, 0xD2D0, 0x7713, 0xD2D1, 0x7712, 0xD2D2, 0x7723,
- 0xD2D3, 0x7711, 0xD2D4, 0x7715, 0xD2D5, 0x7719, 0xD2D6, 0x771A,
- 0xD2D7, 0x7722, 0xD2D8, 0x7727, 0xD2D9, 0x7823, 0xD2DA, 0x782C,
- 0xD2DB, 0x7822, 0xD2DC, 0x7835, 0xD2DD, 0x782F, 0xD2DE, 0x7828,
- 0xD2DF, 0x782E, 0xD2E0, 0x782B, 0xD2E1, 0x7821, 0xD2E2, 0x7829,
- 0xD2E3, 0x7833, 0xD2E4, 0x782A, 0xD2E5, 0x7831, 0xD2E6, 0x7954,
- 0xD2E7, 0x795B, 0xD2E8, 0x794F, 0xD2E9, 0x795C, 0xD2EA, 0x7953,
- 0xD2EB, 0x7952, 0xD2EC, 0x7951, 0xD2ED, 0x79EB, 0xD2EE, 0x79EC,
- 0xD2EF, 0x79E0, 0xD2F0, 0x79EE, 0xD2F1, 0x79ED, 0xD2F2, 0x79EA,
- 0xD2F3, 0x79DC, 0xD2F4, 0x79DE, 0xD2F5, 0x79DD, 0xD2F6, 0x7A86,
- 0xD2F7, 0x7A89, 0xD2F8, 0x7A85, 0xD2F9, 0x7A8B, 0xD2FA, 0x7A8C,
- 0xD2FB, 0x7A8A, 0xD2FC, 0x7A87, 0xD2FD, 0x7AD8, 0xD2FE, 0x7B10,
- 0xD340, 0x7B04, 0xD341, 0x7B13, 0xD342, 0x7B05, 0xD343, 0x7B0F,
- 0xD344, 0x7B08, 0xD345, 0x7B0A, 0xD346, 0x7B0E, 0xD347, 0x7B09,
- 0xD348, 0x7B12, 0xD349, 0x7C84, 0xD34A, 0x7C91, 0xD34B, 0x7C8A,
- 0xD34C, 0x7C8C, 0xD34D, 0x7C88, 0xD34E, 0x7C8D, 0xD34F, 0x7C85,
- 0xD350, 0x7D1E, 0xD351, 0x7D1D, 0xD352, 0x7D11, 0xD353, 0x7D0E,
- 0xD354, 0x7D18, 0xD355, 0x7D16, 0xD356, 0x7D13, 0xD357, 0x7D1F,
- 0xD358, 0x7D12, 0xD359, 0x7D0F, 0xD35A, 0x7D0C, 0xD35B, 0x7F5C,
- 0xD35C, 0x7F61, 0xD35D, 0x7F5E, 0xD35E, 0x7F60, 0xD35F, 0x7F5D,
- 0xD360, 0x7F5B, 0xD361, 0x7F96, 0xD362, 0x7F92, 0xD363, 0x7FC3,
- 0xD364, 0x7FC2, 0xD365, 0x7FC0, 0xD366, 0x8016, 0xD367, 0x803E,
- 0xD368, 0x8039, 0xD369, 0x80FA, 0xD36A, 0x80F2, 0xD36B, 0x80F9,
- 0xD36C, 0x80F5, 0xD36D, 0x8101, 0xD36E, 0x80FB, 0xD36F, 0x8100,
- 0xD370, 0x8201, 0xD371, 0x822F, 0xD372, 0x8225, 0xD373, 0x8333,
- 0xD374, 0x832D, 0xD375, 0x8344, 0xD376, 0x8319, 0xD377, 0x8351,
- 0xD378, 0x8325, 0xD379, 0x8356, 0xD37A, 0x833F, 0xD37B, 0x8341,
- 0xD37C, 0x8326, 0xD37D, 0x831C, 0xD37E, 0x8322, 0xD3A1, 0x8342,
- 0xD3A2, 0x834E, 0xD3A3, 0x831B, 0xD3A4, 0x832A, 0xD3A5, 0x8308,
- 0xD3A6, 0x833C, 0xD3A7, 0x834D, 0xD3A8, 0x8316, 0xD3A9, 0x8324,
- 0xD3AA, 0x8320, 0xD3AB, 0x8337, 0xD3AC, 0x832F, 0xD3AD, 0x8329,
- 0xD3AE, 0x8347, 0xD3AF, 0x8345, 0xD3B0, 0x834C, 0xD3B1, 0x8353,
- 0xD3B2, 0x831E, 0xD3B3, 0x832C, 0xD3B4, 0x834B, 0xD3B5, 0x8327,
- 0xD3B6, 0x8348, 0xD3B7, 0x8653, 0xD3B8, 0x8652, 0xD3B9, 0x86A2,
- 0xD3BA, 0x86A8, 0xD3BB, 0x8696, 0xD3BC, 0x868D, 0xD3BD, 0x8691,
- 0xD3BE, 0x869E, 0xD3BF, 0x8687, 0xD3C0, 0x8697, 0xD3C1, 0x8686,
- 0xD3C2, 0x868B, 0xD3C3, 0x869A, 0xD3C4, 0x8685, 0xD3C5, 0x86A5,
- 0xD3C6, 0x8699, 0xD3C7, 0x86A1, 0xD3C8, 0x86A7, 0xD3C9, 0x8695,
- 0xD3CA, 0x8698, 0xD3CB, 0x868E, 0xD3CC, 0x869D, 0xD3CD, 0x8690,
- 0xD3CE, 0x8694, 0xD3CF, 0x8843, 0xD3D0, 0x8844, 0xD3D1, 0x886D,
- 0xD3D2, 0x8875, 0xD3D3, 0x8876, 0xD3D4, 0x8872, 0xD3D5, 0x8880,
- 0xD3D6, 0x8871, 0xD3D7, 0x887F, 0xD3D8, 0x886F, 0xD3D9, 0x8883,
- 0xD3DA, 0x887E, 0xD3DB, 0x8874, 0xD3DC, 0x887C, 0xD3DD, 0x8A12,
- 0xD3DE, 0x8C47, 0xD3DF, 0x8C57, 0xD3E0, 0x8C7B, 0xD3E1, 0x8CA4,
- 0xD3E2, 0x8CA3, 0xD3E3, 0x8D76, 0xD3E4, 0x8D78, 0xD3E5, 0x8DB5,
- 0xD3E6, 0x8DB7, 0xD3E7, 0x8DB6, 0xD3E8, 0x8ED1, 0xD3E9, 0x8ED3,
- 0xD3EA, 0x8FFE, 0xD3EB, 0x8FF5, 0xD3EC, 0x9002, 0xD3ED, 0x8FFF,
- 0xD3EE, 0x8FFB, 0xD3EF, 0x9004, 0xD3F0, 0x8FFC, 0xD3F1, 0x8FF6,
- 0xD3F2, 0x90D6, 0xD3F3, 0x90E0, 0xD3F4, 0x90D9, 0xD3F5, 0x90DA,
- 0xD3F6, 0x90E3, 0xD3F7, 0x90DF, 0xD3F8, 0x90E5, 0xD3F9, 0x90D8,
- 0xD3FA, 0x90DB, 0xD3FB, 0x90D7, 0xD3FC, 0x90DC, 0xD3FD, 0x90E4,
- 0xD3FE, 0x9150, 0xD440, 0x914E, 0xD441, 0x914F, 0xD442, 0x91D5,
- 0xD443, 0x91E2, 0xD444, 0x91DA, 0xD445, 0x965C, 0xD446, 0x965F,
- 0xD447, 0x96BC, 0xD448, 0x98E3, 0xD449, 0x9ADF, 0xD44A, 0x9B2F,
- 0xD44B, 0x4E7F, 0xD44C, 0x5070, 0xD44D, 0x506A, 0xD44E, 0x5061,
- 0xD44F, 0x505E, 0xD450, 0x5060, 0xD451, 0x5053, 0xD452, 0x504B,
- 0xD453, 0x505D, 0xD454, 0x5072, 0xD455, 0x5048, 0xD456, 0x504D,
- 0xD457, 0x5041, 0xD458, 0x505B, 0xD459, 0x504A, 0xD45A, 0x5062,
- 0xD45B, 0x5015, 0xD45C, 0x5045, 0xD45D, 0x505F, 0xD45E, 0x5069,
- 0xD45F, 0x506B, 0xD460, 0x5063, 0xD461, 0x5064, 0xD462, 0x5046,
- 0xD463, 0x5040, 0xD464, 0x506E, 0xD465, 0x5073, 0xD466, 0x5057,
- 0xD467, 0x5051, 0xD468, 0x51D0, 0xD469, 0x526B, 0xD46A, 0x526D,
- 0xD46B, 0x526C, 0xD46C, 0x526E, 0xD46D, 0x52D6, 0xD46E, 0x52D3,
- 0xD46F, 0x532D, 0xD470, 0x539C, 0xD471, 0x5575, 0xD472, 0x5576,
- 0xD473, 0x553C, 0xD474, 0x554D, 0xD475, 0x5550, 0xD476, 0x5534,
- 0xD477, 0x552A, 0xD478, 0x5551, 0xD479, 0x5562, 0xD47A, 0x5536,
- 0xD47B, 0x5535, 0xD47C, 0x5530, 0xD47D, 0x5552, 0xD47E, 0x5545,
- 0xD4A1, 0x550C, 0xD4A2, 0x5532, 0xD4A3, 0x5565, 0xD4A4, 0x554E,
- 0xD4A5, 0x5539, 0xD4A6, 0x5548, 0xD4A7, 0x552D, 0xD4A8, 0x553B,
- 0xD4A9, 0x5540, 0xD4AA, 0x554B, 0xD4AB, 0x570A, 0xD4AC, 0x5707,
- 0xD4AD, 0x57FB, 0xD4AE, 0x5814, 0xD4AF, 0x57E2, 0xD4B0, 0x57F6,
- 0xD4B1, 0x57DC, 0xD4B2, 0x57F4, 0xD4B3, 0x5800, 0xD4B4, 0x57ED,
- 0xD4B5, 0x57FD, 0xD4B6, 0x5808, 0xD4B7, 0x57F8, 0xD4B8, 0x580B,
- 0xD4B9, 0x57F3, 0xD4BA, 0x57CF, 0xD4BB, 0x5807, 0xD4BC, 0x57EE,
- 0xD4BD, 0x57E3, 0xD4BE, 0x57F2, 0xD4BF, 0x57E5, 0xD4C0, 0x57EC,
- 0xD4C1, 0x57E1, 0xD4C2, 0x580E, 0xD4C3, 0x57FC, 0xD4C4, 0x5810,
- 0xD4C5, 0x57E7, 0xD4C6, 0x5801, 0xD4C7, 0x580C, 0xD4C8, 0x57F1,
- 0xD4C9, 0x57E9, 0xD4CA, 0x57F0, 0xD4CB, 0x580D, 0xD4CC, 0x5804,
- 0xD4CD, 0x595C, 0xD4CE, 0x5A60, 0xD4CF, 0x5A58, 0xD4D0, 0x5A55,
- 0xD4D1, 0x5A67, 0xD4D2, 0x5A5E, 0xD4D3, 0x5A38, 0xD4D4, 0x5A35,
- 0xD4D5, 0x5A6D, 0xD4D6, 0x5A50, 0xD4D7, 0x5A5F, 0xD4D8, 0x5A65,
- 0xD4D9, 0x5A6C, 0xD4DA, 0x5A53, 0xD4DB, 0x5A64, 0xD4DC, 0x5A57,
- 0xD4DD, 0x5A43, 0xD4DE, 0x5A5D, 0xD4DF, 0x5A52, 0xD4E0, 0x5A44,
- 0xD4E1, 0x5A5B, 0xD4E2, 0x5A48, 0xD4E3, 0x5A8E, 0xD4E4, 0x5A3E,
- 0xD4E5, 0x5A4D, 0xD4E6, 0x5A39, 0xD4E7, 0x5A4C, 0xD4E8, 0x5A70,
- 0xD4E9, 0x5A69, 0xD4EA, 0x5A47, 0xD4EB, 0x5A51, 0xD4EC, 0x5A56,
- 0xD4ED, 0x5A42, 0xD4EE, 0x5A5C, 0xD4EF, 0x5B72, 0xD4F0, 0x5B6E,
- 0xD4F1, 0x5BC1, 0xD4F2, 0x5BC0, 0xD4F3, 0x5C59, 0xD4F4, 0x5D1E,
- 0xD4F5, 0x5D0B, 0xD4F6, 0x5D1D, 0xD4F7, 0x5D1A, 0xD4F8, 0x5D20,
- 0xD4F9, 0x5D0C, 0xD4FA, 0x5D28, 0xD4FB, 0x5D0D, 0xD4FC, 0x5D26,
- 0xD4FD, 0x5D25, 0xD4FE, 0x5D0F, 0xD540, 0x5D30, 0xD541, 0x5D12,
- 0xD542, 0x5D23, 0xD543, 0x5D1F, 0xD544, 0x5D2E, 0xD545, 0x5E3E,
- 0xD546, 0x5E34, 0xD547, 0x5EB1, 0xD548, 0x5EB4, 0xD549, 0x5EB9,
- 0xD54A, 0x5EB2, 0xD54B, 0x5EB3, 0xD54C, 0x5F36, 0xD54D, 0x5F38,
- 0xD54E, 0x5F9B, 0xD54F, 0x5F96, 0xD550, 0x5F9F, 0xD551, 0x608A,
- 0xD552, 0x6090, 0xD553, 0x6086, 0xD554, 0x60BE, 0xD555, 0x60B0,
- 0xD556, 0x60BA, 0xD557, 0x60D3, 0xD558, 0x60D4, 0xD559, 0x60CF,
- 0xD55A, 0x60E4, 0xD55B, 0x60D9, 0xD55C, 0x60DD, 0xD55D, 0x60C8,
- 0xD55E, 0x60B1, 0xD55F, 0x60DB, 0xD560, 0x60B7, 0xD561, 0x60CA,
- 0xD562, 0x60BF, 0xD563, 0x60C3, 0xD564, 0x60CD, 0xD565, 0x60C0,
- 0xD566, 0x6332, 0xD567, 0x6365, 0xD568, 0x638A, 0xD569, 0x6382,
- 0xD56A, 0x637D, 0xD56B, 0x63BD, 0xD56C, 0x639E, 0xD56D, 0x63AD,
- 0xD56E, 0x639D, 0xD56F, 0x6397, 0xD570, 0x63AB, 0xD571, 0x638E,
- 0xD572, 0x636F, 0xD573, 0x6387, 0xD574, 0x6390, 0xD575, 0x636E,
- 0xD576, 0x63AF, 0xD577, 0x6375, 0xD578, 0x639C, 0xD579, 0x636D,
- 0xD57A, 0x63AE, 0xD57B, 0x637C, 0xD57C, 0x63A4, 0xD57D, 0x633B,
- 0xD57E, 0x639F, 0xD5A1, 0x6378, 0xD5A2, 0x6385, 0xD5A3, 0x6381,
- 0xD5A4, 0x6391, 0xD5A5, 0x638D, 0xD5A6, 0x6370, 0xD5A7, 0x6553,
- 0xD5A8, 0x65CD, 0xD5A9, 0x6665, 0xD5AA, 0x6661, 0xD5AB, 0x665B,
- 0xD5AC, 0x6659, 0xD5AD, 0x665C, 0xD5AE, 0x6662, 0xD5AF, 0x6718,
- 0xD5B0, 0x6879, 0xD5B1, 0x6887, 0xD5B2, 0x6890, 0xD5B3, 0x689C,
- 0xD5B4, 0x686D, 0xD5B5, 0x686E, 0xD5B6, 0x68AE, 0xD5B7, 0x68AB,
- 0xD5B8, 0x6956, 0xD5B9, 0x686F, 0xD5BA, 0x68A3, 0xD5BB, 0x68AC,
- 0xD5BC, 0x68A9, 0xD5BD, 0x6875, 0xD5BE, 0x6874, 0xD5BF, 0x68B2,
- 0xD5C0, 0x688F, 0xD5C1, 0x6877, 0xD5C2, 0x6892, 0xD5C3, 0x687C,
- 0xD5C4, 0x686B, 0xD5C5, 0x6872, 0xD5C6, 0x68AA, 0xD5C7, 0x6880,
- 0xD5C8, 0x6871, 0xD5C9, 0x687E, 0xD5CA, 0x689B, 0xD5CB, 0x6896,
- 0xD5CC, 0x688B, 0xD5CD, 0x68A0, 0xD5CE, 0x6889, 0xD5CF, 0x68A4,
- 0xD5D0, 0x6878, 0xD5D1, 0x687B, 0xD5D2, 0x6891, 0xD5D3, 0x688C,
- 0xD5D4, 0x688A, 0xD5D5, 0x687D, 0xD5D6, 0x6B36, 0xD5D7, 0x6B33,
- 0xD5D8, 0x6B37, 0xD5D9, 0x6B38, 0xD5DA, 0x6B91, 0xD5DB, 0x6B8F,
- 0xD5DC, 0x6B8D, 0xD5DD, 0x6B8E, 0xD5DE, 0x6B8C, 0xD5DF, 0x6C2A,
- 0xD5E0, 0x6DC0, 0xD5E1, 0x6DAB, 0xD5E2, 0x6DB4, 0xD5E3, 0x6DB3,
- 0xD5E4, 0x6E74, 0xD5E5, 0x6DAC, 0xD5E6, 0x6DE9, 0xD5E7, 0x6DE2,
- 0xD5E8, 0x6DB7, 0xD5E9, 0x6DF6, 0xD5EA, 0x6DD4, 0xD5EB, 0x6E00,
- 0xD5EC, 0x6DC8, 0xD5ED, 0x6DE0, 0xD5EE, 0x6DDF, 0xD5EF, 0x6DD6,
- 0xD5F0, 0x6DBE, 0xD5F1, 0x6DE5, 0xD5F2, 0x6DDC, 0xD5F3, 0x6DDD,
- 0xD5F4, 0x6DDB, 0xD5F5, 0x6DF4, 0xD5F6, 0x6DCA, 0xD5F7, 0x6DBD,
- 0xD5F8, 0x6DED, 0xD5F9, 0x6DF0, 0xD5FA, 0x6DBA, 0xD5FB, 0x6DD5,
- 0xD5FC, 0x6DC2, 0xD5FD, 0x6DCF, 0xD5FE, 0x6DC9, 0xD640, 0x6DD0,
- 0xD641, 0x6DF2, 0xD642, 0x6DD3, 0xD643, 0x6DFD, 0xD644, 0x6DD7,
- 0xD645, 0x6DCD, 0xD646, 0x6DE3, 0xD647, 0x6DBB, 0xD648, 0x70FA,
- 0xD649, 0x710D, 0xD64A, 0x70F7, 0xD64B, 0x7117, 0xD64C, 0x70F4,
- 0xD64D, 0x710C, 0xD64E, 0x70F0, 0xD64F, 0x7104, 0xD650, 0x70F3,
- 0xD651, 0x7110, 0xD652, 0x70FC, 0xD653, 0x70FF, 0xD654, 0x7106,
- 0xD655, 0x7113, 0xD656, 0x7100, 0xD657, 0x70F8, 0xD658, 0x70F6,
- 0xD659, 0x710B, 0xD65A, 0x7102, 0xD65B, 0x710E, 0xD65C, 0x727E,
- 0xD65D, 0x727B, 0xD65E, 0x727C, 0xD65F, 0x727F, 0xD660, 0x731D,
- 0xD661, 0x7317, 0xD662, 0x7307, 0xD663, 0x7311, 0xD664, 0x7318,
- 0xD665, 0x730A, 0xD666, 0x7308, 0xD667, 0x72FF, 0xD668, 0x730F,
- 0xD669, 0x731E, 0xD66A, 0x7388, 0xD66B, 0x73F6, 0xD66C, 0x73F8,
- 0xD66D, 0x73F5, 0xD66E, 0x7404, 0xD66F, 0x7401, 0xD670, 0x73FD,
- 0xD671, 0x7407, 0xD672, 0x7400, 0xD673, 0x73FA, 0xD674, 0x73FC,
- 0xD675, 0x73FF, 0xD676, 0x740C, 0xD677, 0x740B, 0xD678, 0x73F4,
- 0xD679, 0x7408, 0xD67A, 0x7564, 0xD67B, 0x7563, 0xD67C, 0x75CE,
- 0xD67D, 0x75D2, 0xD67E, 0x75CF, 0xD6A1, 0x75CB, 0xD6A2, 0x75CC,
- 0xD6A3, 0x75D1, 0xD6A4, 0x75D0, 0xD6A5, 0x768F, 0xD6A6, 0x7689,
- 0xD6A7, 0x76D3, 0xD6A8, 0x7739, 0xD6A9, 0x772F, 0xD6AA, 0x772D,
- 0xD6AB, 0x7731, 0xD6AC, 0x7732, 0xD6AD, 0x7734, 0xD6AE, 0x7733,
- 0xD6AF, 0x773D, 0xD6B0, 0x7725, 0xD6B1, 0x773B, 0xD6B2, 0x7735,
- 0xD6B3, 0x7848, 0xD6B4, 0x7852, 0xD6B5, 0x7849, 0xD6B6, 0x784D,
- 0xD6B7, 0x784A, 0xD6B8, 0x784C, 0xD6B9, 0x7826, 0xD6BA, 0x7845,
- 0xD6BB, 0x7850, 0xD6BC, 0x7964, 0xD6BD, 0x7967, 0xD6BE, 0x7969,
- 0xD6BF, 0x796A, 0xD6C0, 0x7963, 0xD6C1, 0x796B, 0xD6C2, 0x7961,
- 0xD6C3, 0x79BB, 0xD6C4, 0x79FA, 0xD6C5, 0x79F8, 0xD6C6, 0x79F6,
- 0xD6C7, 0x79F7, 0xD6C8, 0x7A8F, 0xD6C9, 0x7A94, 0xD6CA, 0x7A90,
- 0xD6CB, 0x7B35, 0xD6CC, 0x7B47, 0xD6CD, 0x7B34, 0xD6CE, 0x7B25,
- 0xD6CF, 0x7B30, 0xD6D0, 0x7B22, 0xD6D1, 0x7B24, 0xD6D2, 0x7B33,
- 0xD6D3, 0x7B18, 0xD6D4, 0x7B2A, 0xD6D5, 0x7B1D, 0xD6D6, 0x7B31,
- 0xD6D7, 0x7B2B, 0xD6D8, 0x7B2D, 0xD6D9, 0x7B2F, 0xD6DA, 0x7B32,
- 0xD6DB, 0x7B38, 0xD6DC, 0x7B1A, 0xD6DD, 0x7B23, 0xD6DE, 0x7C94,
- 0xD6DF, 0x7C98, 0xD6E0, 0x7C96, 0xD6E1, 0x7CA3, 0xD6E2, 0x7D35,
- 0xD6E3, 0x7D3D, 0xD6E4, 0x7D38, 0xD6E5, 0x7D36, 0xD6E6, 0x7D3A,
- 0xD6E7, 0x7D45, 0xD6E8, 0x7D2C, 0xD6E9, 0x7D29, 0xD6EA, 0x7D41,
- 0xD6EB, 0x7D47, 0xD6EC, 0x7D3E, 0xD6ED, 0x7D3F, 0xD6EE, 0x7D4A,
- 0xD6EF, 0x7D3B, 0xD6F0, 0x7D28, 0xD6F1, 0x7F63, 0xD6F2, 0x7F95,
- 0xD6F3, 0x7F9C, 0xD6F4, 0x7F9D, 0xD6F5, 0x7F9B, 0xD6F6, 0x7FCA,
- 0xD6F7, 0x7FCB, 0xD6F8, 0x7FCD, 0xD6F9, 0x7FD0, 0xD6FA, 0x7FD1,
- 0xD6FB, 0x7FC7, 0xD6FC, 0x7FCF, 0xD6FD, 0x7FC9, 0xD6FE, 0x801F,
- 0xD740, 0x801E, 0xD741, 0x801B, 0xD742, 0x8047, 0xD743, 0x8043,
- 0xD744, 0x8048, 0xD745, 0x8118, 0xD746, 0x8125, 0xD747, 0x8119,
- 0xD748, 0x811B, 0xD749, 0x812D, 0xD74A, 0x811F, 0xD74B, 0x812C,
- 0xD74C, 0x811E, 0xD74D, 0x8121, 0xD74E, 0x8115, 0xD74F, 0x8127,
- 0xD750, 0x811D, 0xD751, 0x8122, 0xD752, 0x8211, 0xD753, 0x8238,
- 0xD754, 0x8233, 0xD755, 0x823A, 0xD756, 0x8234, 0xD757, 0x8232,
- 0xD758, 0x8274, 0xD759, 0x8390, 0xD75A, 0x83A3, 0xD75B, 0x83A8,
- 0xD75C, 0x838D, 0xD75D, 0x837A, 0xD75E, 0x8373, 0xD75F, 0x83A4,
- 0xD760, 0x8374, 0xD761, 0x838F, 0xD762, 0x8381, 0xD763, 0x8395,
- 0xD764, 0x8399, 0xD765, 0x8375, 0xD766, 0x8394, 0xD767, 0x83A9,
- 0xD768, 0x837D, 0xD769, 0x8383, 0xD76A, 0x838C, 0xD76B, 0x839D,
- 0xD76C, 0x839B, 0xD76D, 0x83AA, 0xD76E, 0x838B, 0xD76F, 0x837E,
- 0xD770, 0x83A5, 0xD771, 0x83AF, 0xD772, 0x8388, 0xD773, 0x8397,
- 0xD774, 0x83B0, 0xD775, 0x837F, 0xD776, 0x83A6, 0xD777, 0x8387,
- 0xD778, 0x83AE, 0xD779, 0x8376, 0xD77A, 0x839A, 0xD77B, 0x8659,
- 0xD77C, 0x8656, 0xD77D, 0x86BF, 0xD77E, 0x86B7, 0xD7A1, 0x86C2,
- 0xD7A2, 0x86C1, 0xD7A3, 0x86C5, 0xD7A4, 0x86BA, 0xD7A5, 0x86B0,
- 0xD7A6, 0x86C8, 0xD7A7, 0x86B9, 0xD7A8, 0x86B3, 0xD7A9, 0x86B8,
- 0xD7AA, 0x86CC, 0xD7AB, 0x86B4, 0xD7AC, 0x86BB, 0xD7AD, 0x86BC,
- 0xD7AE, 0x86C3, 0xD7AF, 0x86BD, 0xD7B0, 0x86BE, 0xD7B1, 0x8852,
- 0xD7B2, 0x8889, 0xD7B3, 0x8895, 0xD7B4, 0x88A8, 0xD7B5, 0x88A2,
- 0xD7B6, 0x88AA, 0xD7B7, 0x889A, 0xD7B8, 0x8891, 0xD7B9, 0x88A1,
- 0xD7BA, 0x889F, 0xD7BB, 0x8898, 0xD7BC, 0x88A7, 0xD7BD, 0x8899,
- 0xD7BE, 0x889B, 0xD7BF, 0x8897, 0xD7C0, 0x88A4, 0xD7C1, 0x88AC,
- 0xD7C2, 0x888C, 0xD7C3, 0x8893, 0xD7C4, 0x888E, 0xD7C5, 0x8982,
- 0xD7C6, 0x89D6, 0xD7C7, 0x89D9, 0xD7C8, 0x89D5, 0xD7C9, 0x8A30,
- 0xD7CA, 0x8A27, 0xD7CB, 0x8A2C, 0xD7CC, 0x8A1E, 0xD7CD, 0x8C39,
- 0xD7CE, 0x8C3B, 0xD7CF, 0x8C5C, 0xD7D0, 0x8C5D, 0xD7D1, 0x8C7D,
- 0xD7D2, 0x8CA5, 0xD7D3, 0x8D7D, 0xD7D4, 0x8D7B, 0xD7D5, 0x8D79,
- 0xD7D6, 0x8DBC, 0xD7D7, 0x8DC2, 0xD7D8, 0x8DB9, 0xD7D9, 0x8DBF,
- 0xD7DA, 0x8DC1, 0xD7DB, 0x8ED8, 0xD7DC, 0x8EDE, 0xD7DD, 0x8EDD,
- 0xD7DE, 0x8EDC, 0xD7DF, 0x8ED7, 0xD7E0, 0x8EE0, 0xD7E1, 0x8EE1,
- 0xD7E2, 0x9024, 0xD7E3, 0x900B, 0xD7E4, 0x9011, 0xD7E5, 0x901C,
- 0xD7E6, 0x900C, 0xD7E7, 0x9021, 0xD7E8, 0x90EF, 0xD7E9, 0x90EA,
- 0xD7EA, 0x90F0, 0xD7EB, 0x90F4, 0xD7EC, 0x90F2, 0xD7ED, 0x90F3,
- 0xD7EE, 0x90D4, 0xD7EF, 0x90EB, 0xD7F0, 0x90EC, 0xD7F1, 0x90E9,
- 0xD7F2, 0x9156, 0xD7F3, 0x9158, 0xD7F4, 0x915A, 0xD7F5, 0x9153,
- 0xD7F6, 0x9155, 0xD7F7, 0x91EC, 0xD7F8, 0x91F4, 0xD7F9, 0x91F1,
- 0xD7FA, 0x91F3, 0xD7FB, 0x91F8, 0xD7FC, 0x91E4, 0xD7FD, 0x91F9,
- 0xD7FE, 0x91EA, 0xD840, 0x91EB, 0xD841, 0x91F7, 0xD842, 0x91E8,
- 0xD843, 0x91EE, 0xD844, 0x957A, 0xD845, 0x9586, 0xD846, 0x9588,
- 0xD847, 0x967C, 0xD848, 0x966D, 0xD849, 0x966B, 0xD84A, 0x9671,
- 0xD84B, 0x966F, 0xD84C, 0x96BF, 0xD84D, 0x976A, 0xD84E, 0x9804,
- 0xD84F, 0x98E5, 0xD850, 0x9997, 0xD851, 0x509B, 0xD852, 0x5095,
- 0xD853, 0x5094, 0xD854, 0x509E, 0xD855, 0x508B, 0xD856, 0x50A3,
- 0xD857, 0x5083, 0xD858, 0x508C, 0xD859, 0x508E, 0xD85A, 0x509D,
- 0xD85B, 0x5068, 0xD85C, 0x509C, 0xD85D, 0x5092, 0xD85E, 0x5082,
- 0xD85F, 0x5087, 0xD860, 0x515F, 0xD861, 0x51D4, 0xD862, 0x5312,
- 0xD863, 0x5311, 0xD864, 0x53A4, 0xD865, 0x53A7, 0xD866, 0x5591,
- 0xD867, 0x55A8, 0xD868, 0x55A5, 0xD869, 0x55AD, 0xD86A, 0x5577,
- 0xD86B, 0x5645, 0xD86C, 0x55A2, 0xD86D, 0x5593, 0xD86E, 0x5588,
- 0xD86F, 0x558F, 0xD870, 0x55B5, 0xD871, 0x5581, 0xD872, 0x55A3,
- 0xD873, 0x5592, 0xD874, 0x55A4, 0xD875, 0x557D, 0xD876, 0x558C,
- 0xD877, 0x55A6, 0xD878, 0x557F, 0xD879, 0x5595, 0xD87A, 0x55A1,
- 0xD87B, 0x558E, 0xD87C, 0x570C, 0xD87D, 0x5829, 0xD87E, 0x5837,
- 0xD8A1, 0x5819, 0xD8A2, 0x581E, 0xD8A3, 0x5827, 0xD8A4, 0x5823,
- 0xD8A5, 0x5828, 0xD8A6, 0x57F5, 0xD8A7, 0x5848, 0xD8A8, 0x5825,
- 0xD8A9, 0x581C, 0xD8AA, 0x581B, 0xD8AB, 0x5833, 0xD8AC, 0x583F,
- 0xD8AD, 0x5836, 0xD8AE, 0x582E, 0xD8AF, 0x5839, 0xD8B0, 0x5838,
- 0xD8B1, 0x582D, 0xD8B2, 0x582C, 0xD8B3, 0x583B, 0xD8B4, 0x5961,
- 0xD8B5, 0x5AAF, 0xD8B6, 0x5A94, 0xD8B7, 0x5A9F, 0xD8B8, 0x5A7A,
- 0xD8B9, 0x5AA2, 0xD8BA, 0x5A9E, 0xD8BB, 0x5A78, 0xD8BC, 0x5AA6,
- 0xD8BD, 0x5A7C, 0xD8BE, 0x5AA5, 0xD8BF, 0x5AAC, 0xD8C0, 0x5A95,
- 0xD8C1, 0x5AAE, 0xD8C2, 0x5A37, 0xD8C3, 0x5A84, 0xD8C4, 0x5A8A,
- 0xD8C5, 0x5A97, 0xD8C6, 0x5A83, 0xD8C7, 0x5A8B, 0xD8C8, 0x5AA9,
- 0xD8C9, 0x5A7B, 0xD8CA, 0x5A7D, 0xD8CB, 0x5A8C, 0xD8CC, 0x5A9C,
- 0xD8CD, 0x5A8F, 0xD8CE, 0x5A93, 0xD8CF, 0x5A9D, 0xD8D0, 0x5BEA,
- 0xD8D1, 0x5BCD, 0xD8D2, 0x5BCB, 0xD8D3, 0x5BD4, 0xD8D4, 0x5BD1,
- 0xD8D5, 0x5BCA, 0xD8D6, 0x5BCE, 0xD8D7, 0x5C0C, 0xD8D8, 0x5C30,
- 0xD8D9, 0x5D37, 0xD8DA, 0x5D43, 0xD8DB, 0x5D6B, 0xD8DC, 0x5D41,
- 0xD8DD, 0x5D4B, 0xD8DE, 0x5D3F, 0xD8DF, 0x5D35, 0xD8E0, 0x5D51,
- 0xD8E1, 0x5D4E, 0xD8E2, 0x5D55, 0xD8E3, 0x5D33, 0xD8E4, 0x5D3A,
- 0xD8E5, 0x5D52, 0xD8E6, 0x5D3D, 0xD8E7, 0x5D31, 0xD8E8, 0x5D59,
- 0xD8E9, 0x5D42, 0xD8EA, 0x5D39, 0xD8EB, 0x5D49, 0xD8EC, 0x5D38,
- 0xD8ED, 0x5D3C, 0xD8EE, 0x5D32, 0xD8EF, 0x5D36, 0xD8F0, 0x5D40,
- 0xD8F1, 0x5D45, 0xD8F2, 0x5E44, 0xD8F3, 0x5E41, 0xD8F4, 0x5F58,
- 0xD8F5, 0x5FA6, 0xD8F6, 0x5FA5, 0xD8F7, 0x5FAB, 0xD8F8, 0x60C9,
- 0xD8F9, 0x60B9, 0xD8FA, 0x60CC, 0xD8FB, 0x60E2, 0xD8FC, 0x60CE,
- 0xD8FD, 0x60C4, 0xD8FE, 0x6114, 0xD940, 0x60F2, 0xD941, 0x610A,
- 0xD942, 0x6116, 0xD943, 0x6105, 0xD944, 0x60F5, 0xD945, 0x6113,
- 0xD946, 0x60F8, 0xD947, 0x60FC, 0xD948, 0x60FE, 0xD949, 0x60C1,
- 0xD94A, 0x6103, 0xD94B, 0x6118, 0xD94C, 0x611D, 0xD94D, 0x6110,
- 0xD94E, 0x60FF, 0xD94F, 0x6104, 0xD950, 0x610B, 0xD951, 0x624A,
- 0xD952, 0x6394, 0xD953, 0x63B1, 0xD954, 0x63B0, 0xD955, 0x63CE,
- 0xD956, 0x63E5, 0xD957, 0x63E8, 0xD958, 0x63EF, 0xD959, 0x63C3,
- 0xD95A, 0x649D, 0xD95B, 0x63F3, 0xD95C, 0x63CA, 0xD95D, 0x63E0,
- 0xD95E, 0x63F6, 0xD95F, 0x63D5, 0xD960, 0x63F2, 0xD961, 0x63F5,
- 0xD962, 0x6461, 0xD963, 0x63DF, 0xD964, 0x63BE, 0xD965, 0x63DD,
- 0xD966, 0x63DC, 0xD967, 0x63C4, 0xD968, 0x63D8, 0xD969, 0x63D3,
- 0xD96A, 0x63C2, 0xD96B, 0x63C7, 0xD96C, 0x63CC, 0xD96D, 0x63CB,
- 0xD96E, 0x63C8, 0xD96F, 0x63F0, 0xD970, 0x63D7, 0xD971, 0x63D9,
- 0xD972, 0x6532, 0xD973, 0x6567, 0xD974, 0x656A, 0xD975, 0x6564,
- 0xD976, 0x655C, 0xD977, 0x6568, 0xD978, 0x6565, 0xD979, 0x658C,
- 0xD97A, 0x659D, 0xD97B, 0x659E, 0xD97C, 0x65AE, 0xD97D, 0x65D0,
- 0xD97E, 0x65D2, 0xD9A1, 0x667C, 0xD9A2, 0x666C, 0xD9A3, 0x667B,
- 0xD9A4, 0x6680, 0xD9A5, 0x6671, 0xD9A6, 0x6679, 0xD9A7, 0x666A,
- 0xD9A8, 0x6672, 0xD9A9, 0x6701, 0xD9AA, 0x690C, 0xD9AB, 0x68D3,
- 0xD9AC, 0x6904, 0xD9AD, 0x68DC, 0xD9AE, 0x692A, 0xD9AF, 0x68EC,
- 0xD9B0, 0x68EA, 0xD9B1, 0x68F1, 0xD9B2, 0x690F, 0xD9B3, 0x68D6,
- 0xD9B4, 0x68F7, 0xD9B5, 0x68EB, 0xD9B6, 0x68E4, 0xD9B7, 0x68F6,
- 0xD9B8, 0x6913, 0xD9B9, 0x6910, 0xD9BA, 0x68F3, 0xD9BB, 0x68E1,
- 0xD9BC, 0x6907, 0xD9BD, 0x68CC, 0xD9BE, 0x6908, 0xD9BF, 0x6970,
- 0xD9C0, 0x68B4, 0xD9C1, 0x6911, 0xD9C2, 0x68EF, 0xD9C3, 0x68C6,
- 0xD9C4, 0x6914, 0xD9C5, 0x68F8, 0xD9C6, 0x68D0, 0xD9C7, 0x68FD,
- 0xD9C8, 0x68FC, 0xD9C9, 0x68E8, 0xD9CA, 0x690B, 0xD9CB, 0x690A,
- 0xD9CC, 0x6917, 0xD9CD, 0x68CE, 0xD9CE, 0x68C8, 0xD9CF, 0x68DD,
- 0xD9D0, 0x68DE, 0xD9D1, 0x68E6, 0xD9D2, 0x68F4, 0xD9D3, 0x68D1,
- 0xD9D4, 0x6906, 0xD9D5, 0x68D4, 0xD9D6, 0x68E9, 0xD9D7, 0x6915,
- 0xD9D8, 0x6925, 0xD9D9, 0x68C7, 0xD9DA, 0x6B39, 0xD9DB, 0x6B3B,
- 0xD9DC, 0x6B3F, 0xD9DD, 0x6B3C, 0xD9DE, 0x6B94, 0xD9DF, 0x6B97,
- 0xD9E0, 0x6B99, 0xD9E1, 0x6B95, 0xD9E2, 0x6BBD, 0xD9E3, 0x6BF0,
- 0xD9E4, 0x6BF2, 0xD9E5, 0x6BF3, 0xD9E6, 0x6C30, 0xD9E7, 0x6DFC,
- 0xD9E8, 0x6E46, 0xD9E9, 0x6E47, 0xD9EA, 0x6E1F, 0xD9EB, 0x6E49,
- 0xD9EC, 0x6E88, 0xD9ED, 0x6E3C, 0xD9EE, 0x6E3D, 0xD9EF, 0x6E45,
- 0xD9F0, 0x6E62, 0xD9F1, 0x6E2B, 0xD9F2, 0x6E3F, 0xD9F3, 0x6E41,
- 0xD9F4, 0x6E5D, 0xD9F5, 0x6E73, 0xD9F6, 0x6E1C, 0xD9F7, 0x6E33,
- 0xD9F8, 0x6E4B, 0xD9F9, 0x6E40, 0xD9FA, 0x6E51, 0xD9FB, 0x6E3B,
- 0xD9FC, 0x6E03, 0xD9FD, 0x6E2E, 0xD9FE, 0x6E5E, 0xDA40, 0x6E68,
- 0xDA41, 0x6E5C, 0xDA42, 0x6E61, 0xDA43, 0x6E31, 0xDA44, 0x6E28,
- 0xDA45, 0x6E60, 0xDA46, 0x6E71, 0xDA47, 0x6E6B, 0xDA48, 0x6E39,
- 0xDA49, 0x6E22, 0xDA4A, 0x6E30, 0xDA4B, 0x6E53, 0xDA4C, 0x6E65,
- 0xDA4D, 0x6E27, 0xDA4E, 0x6E78, 0xDA4F, 0x6E64, 0xDA50, 0x6E77,
- 0xDA51, 0x6E55, 0xDA52, 0x6E79, 0xDA53, 0x6E52, 0xDA54, 0x6E66,
- 0xDA55, 0x6E35, 0xDA56, 0x6E36, 0xDA57, 0x6E5A, 0xDA58, 0x7120,
- 0xDA59, 0x711E, 0xDA5A, 0x712F, 0xDA5B, 0x70FB, 0xDA5C, 0x712E,
- 0xDA5D, 0x7131, 0xDA5E, 0x7123, 0xDA5F, 0x7125, 0xDA60, 0x7122,
- 0xDA61, 0x7132, 0xDA62, 0x711F, 0xDA63, 0x7128, 0xDA64, 0x713A,
- 0xDA65, 0x711B, 0xDA66, 0x724B, 0xDA67, 0x725A, 0xDA68, 0x7288,
- 0xDA69, 0x7289, 0xDA6A, 0x7286, 0xDA6B, 0x7285, 0xDA6C, 0x728B,
- 0xDA6D, 0x7312, 0xDA6E, 0x730B, 0xDA6F, 0x7330, 0xDA70, 0x7322,
- 0xDA71, 0x7331, 0xDA72, 0x7333, 0xDA73, 0x7327, 0xDA74, 0x7332,
- 0xDA75, 0x732D, 0xDA76, 0x7326, 0xDA77, 0x7323, 0xDA78, 0x7335,
- 0xDA79, 0x730C, 0xDA7A, 0x742E, 0xDA7B, 0x742C, 0xDA7C, 0x7430,
- 0xDA7D, 0x742B, 0xDA7E, 0x7416, 0xDAA1, 0x741A, 0xDAA2, 0x7421,
- 0xDAA3, 0x742D, 0xDAA4, 0x7431, 0xDAA5, 0x7424, 0xDAA6, 0x7423,
- 0xDAA7, 0x741D, 0xDAA8, 0x7429, 0xDAA9, 0x7420, 0xDAAA, 0x7432,
- 0xDAAB, 0x74FB, 0xDAAC, 0x752F, 0xDAAD, 0x756F, 0xDAAE, 0x756C,
- 0xDAAF, 0x75E7, 0xDAB0, 0x75DA, 0xDAB1, 0x75E1, 0xDAB2, 0x75E6,
- 0xDAB3, 0x75DD, 0xDAB4, 0x75DF, 0xDAB5, 0x75E4, 0xDAB6, 0x75D7,
- 0xDAB7, 0x7695, 0xDAB8, 0x7692, 0xDAB9, 0x76DA, 0xDABA, 0x7746,
- 0xDABB, 0x7747, 0xDABC, 0x7744, 0xDABD, 0x774D, 0xDABE, 0x7745,
- 0xDABF, 0x774A, 0xDAC0, 0x774E, 0xDAC1, 0x774B, 0xDAC2, 0x774C,
- 0xDAC3, 0x77DE, 0xDAC4, 0x77EC, 0xDAC5, 0x7860, 0xDAC6, 0x7864,
- 0xDAC7, 0x7865, 0xDAC8, 0x785C, 0xDAC9, 0x786D, 0xDACA, 0x7871,
- 0xDACB, 0x786A, 0xDACC, 0x786E, 0xDACD, 0x7870, 0xDACE, 0x7869,
- 0xDACF, 0x7868, 0xDAD0, 0x785E, 0xDAD1, 0x7862, 0xDAD2, 0x7974,
- 0xDAD3, 0x7973, 0xDAD4, 0x7972, 0xDAD5, 0x7970, 0xDAD6, 0x7A02,
- 0xDAD7, 0x7A0A, 0xDAD8, 0x7A03, 0xDAD9, 0x7A0C, 0xDADA, 0x7A04,
- 0xDADB, 0x7A99, 0xDADC, 0x7AE6, 0xDADD, 0x7AE4, 0xDADE, 0x7B4A,
- 0xDADF, 0x7B3B, 0xDAE0, 0x7B44, 0xDAE1, 0x7B48, 0xDAE2, 0x7B4C,
- 0xDAE3, 0x7B4E, 0xDAE4, 0x7B40, 0xDAE5, 0x7B58, 0xDAE6, 0x7B45,
- 0xDAE7, 0x7CA2, 0xDAE8, 0x7C9E, 0xDAE9, 0x7CA8, 0xDAEA, 0x7CA1,
- 0xDAEB, 0x7D58, 0xDAEC, 0x7D6F, 0xDAED, 0x7D63, 0xDAEE, 0x7D53,
- 0xDAEF, 0x7D56, 0xDAF0, 0x7D67, 0xDAF1, 0x7D6A, 0xDAF2, 0x7D4F,
- 0xDAF3, 0x7D6D, 0xDAF4, 0x7D5C, 0xDAF5, 0x7D6B, 0xDAF6, 0x7D52,
- 0xDAF7, 0x7D54, 0xDAF8, 0x7D69, 0xDAF9, 0x7D51, 0xDAFA, 0x7D5F,
- 0xDAFB, 0x7D4E, 0xDAFC, 0x7F3E, 0xDAFD, 0x7F3F, 0xDAFE, 0x7F65,
- 0xDB40, 0x7F66, 0xDB41, 0x7FA2, 0xDB42, 0x7FA0, 0xDB43, 0x7FA1,
- 0xDB44, 0x7FD7, 0xDB45, 0x8051, 0xDB46, 0x804F, 0xDB47, 0x8050,
- 0xDB48, 0x80FE, 0xDB49, 0x80D4, 0xDB4A, 0x8143, 0xDB4B, 0x814A,
- 0xDB4C, 0x8152, 0xDB4D, 0x814F, 0xDB4E, 0x8147, 0xDB4F, 0x813D,
- 0xDB50, 0x814D, 0xDB51, 0x813A, 0xDB52, 0x81E6, 0xDB53, 0x81EE,
- 0xDB54, 0x81F7, 0xDB55, 0x81F8, 0xDB56, 0x81F9, 0xDB57, 0x8204,
- 0xDB58, 0x823C, 0xDB59, 0x823D, 0xDB5A, 0x823F, 0xDB5B, 0x8275,
- 0xDB5C, 0x833B, 0xDB5D, 0x83CF, 0xDB5E, 0x83F9, 0xDB5F, 0x8423,
- 0xDB60, 0x83C0, 0xDB61, 0x83E8, 0xDB62, 0x8412, 0xDB63, 0x83E7,
- 0xDB64, 0x83E4, 0xDB65, 0x83FC, 0xDB66, 0x83F6, 0xDB67, 0x8410,
- 0xDB68, 0x83C6, 0xDB69, 0x83C8, 0xDB6A, 0x83EB, 0xDB6B, 0x83E3,
- 0xDB6C, 0x83BF, 0xDB6D, 0x8401, 0xDB6E, 0x83DD, 0xDB6F, 0x83E5,
- 0xDB70, 0x83D8, 0xDB71, 0x83FF, 0xDB72, 0x83E1, 0xDB73, 0x83CB,
- 0xDB74, 0x83CE, 0xDB75, 0x83D6, 0xDB76, 0x83F5, 0xDB77, 0x83C9,
- 0xDB78, 0x8409, 0xDB79, 0x840F, 0xDB7A, 0x83DE, 0xDB7B, 0x8411,
- 0xDB7C, 0x8406, 0xDB7D, 0x83C2, 0xDB7E, 0x83F3, 0xDBA1, 0x83D5,
- 0xDBA2, 0x83FA, 0xDBA3, 0x83C7, 0xDBA4, 0x83D1, 0xDBA5, 0x83EA,
- 0xDBA6, 0x8413, 0xDBA7, 0x83C3, 0xDBA8, 0x83EC, 0xDBA9, 0x83EE,
- 0xDBAA, 0x83C4, 0xDBAB, 0x83FB, 0xDBAC, 0x83D7, 0xDBAD, 0x83E2,
- 0xDBAE, 0x841B, 0xDBAF, 0x83DB, 0xDBB0, 0x83FE, 0xDBB1, 0x86D8,
- 0xDBB2, 0x86E2, 0xDBB3, 0x86E6, 0xDBB4, 0x86D3, 0xDBB5, 0x86E3,
- 0xDBB6, 0x86DA, 0xDBB7, 0x86EA, 0xDBB8, 0x86DD, 0xDBB9, 0x86EB,
- 0xDBBA, 0x86DC, 0xDBBB, 0x86EC, 0xDBBC, 0x86E9, 0xDBBD, 0x86D7,
- 0xDBBE, 0x86E8, 0xDBBF, 0x86D1, 0xDBC0, 0x8848, 0xDBC1, 0x8856,
- 0xDBC2, 0x8855, 0xDBC3, 0x88BA, 0xDBC4, 0x88D7, 0xDBC5, 0x88B9,
- 0xDBC6, 0x88B8, 0xDBC7, 0x88C0, 0xDBC8, 0x88BE, 0xDBC9, 0x88B6,
- 0xDBCA, 0x88BC, 0xDBCB, 0x88B7, 0xDBCC, 0x88BD, 0xDBCD, 0x88B2,
- 0xDBCE, 0x8901, 0xDBCF, 0x88C9, 0xDBD0, 0x8995, 0xDBD1, 0x8998,
- 0xDBD2, 0x8997, 0xDBD3, 0x89DD, 0xDBD4, 0x89DA, 0xDBD5, 0x89DB,
- 0xDBD6, 0x8A4E, 0xDBD7, 0x8A4D, 0xDBD8, 0x8A39, 0xDBD9, 0x8A59,
- 0xDBDA, 0x8A40, 0xDBDB, 0x8A57, 0xDBDC, 0x8A58, 0xDBDD, 0x8A44,
- 0xDBDE, 0x8A45, 0xDBDF, 0x8A52, 0xDBE0, 0x8A48, 0xDBE1, 0x8A51,
- 0xDBE2, 0x8A4A, 0xDBE3, 0x8A4C, 0xDBE4, 0x8A4F, 0xDBE5, 0x8C5F,
- 0xDBE6, 0x8C81, 0xDBE7, 0x8C80, 0xDBE8, 0x8CBA, 0xDBE9, 0x8CBE,
- 0xDBEA, 0x8CB0, 0xDBEB, 0x8CB9, 0xDBEC, 0x8CB5, 0xDBED, 0x8D84,
- 0xDBEE, 0x8D80, 0xDBEF, 0x8D89, 0xDBF0, 0x8DD8, 0xDBF1, 0x8DD3,
- 0xDBF2, 0x8DCD, 0xDBF3, 0x8DC7, 0xDBF4, 0x8DD6, 0xDBF5, 0x8DDC,
- 0xDBF6, 0x8DCF, 0xDBF7, 0x8DD5, 0xDBF8, 0x8DD9, 0xDBF9, 0x8DC8,
- 0xDBFA, 0x8DD7, 0xDBFB, 0x8DC5, 0xDBFC, 0x8EEF, 0xDBFD, 0x8EF7,
- 0xDBFE, 0x8EFA, 0xDC40, 0x8EF9, 0xDC41, 0x8EE6, 0xDC42, 0x8EEE,
- 0xDC43, 0x8EE5, 0xDC44, 0x8EF5, 0xDC45, 0x8EE7, 0xDC46, 0x8EE8,
- 0xDC47, 0x8EF6, 0xDC48, 0x8EEB, 0xDC49, 0x8EF1, 0xDC4A, 0x8EEC,
- 0xDC4B, 0x8EF4, 0xDC4C, 0x8EE9, 0xDC4D, 0x902D, 0xDC4E, 0x9034,
- 0xDC4F, 0x902F, 0xDC50, 0x9106, 0xDC51, 0x912C, 0xDC52, 0x9104,
- 0xDC53, 0x90FF, 0xDC54, 0x90FC, 0xDC55, 0x9108, 0xDC56, 0x90F9,
- 0xDC57, 0x90FB, 0xDC58, 0x9101, 0xDC59, 0x9100, 0xDC5A, 0x9107,
- 0xDC5B, 0x9105, 0xDC5C, 0x9103, 0xDC5D, 0x9161, 0xDC5E, 0x9164,
- 0xDC5F, 0x915F, 0xDC60, 0x9162, 0xDC61, 0x9160, 0xDC62, 0x9201,
- 0xDC63, 0x920A, 0xDC64, 0x9225, 0xDC65, 0x9203, 0xDC66, 0x921A,
- 0xDC67, 0x9226, 0xDC68, 0x920F, 0xDC69, 0x920C, 0xDC6A, 0x9200,
- 0xDC6B, 0x9212, 0xDC6C, 0x91FF, 0xDC6D, 0x91FD, 0xDC6E, 0x9206,
- 0xDC6F, 0x9204, 0xDC70, 0x9227, 0xDC71, 0x9202, 0xDC72, 0x921C,
- 0xDC73, 0x9224, 0xDC74, 0x9219, 0xDC75, 0x9217, 0xDC76, 0x9205,
- 0xDC77, 0x9216, 0xDC78, 0x957B, 0xDC79, 0x958D, 0xDC7A, 0x958C,
- 0xDC7B, 0x9590, 0xDC7C, 0x9687, 0xDC7D, 0x967E, 0xDC7E, 0x9688,
- 0xDCA1, 0x9689, 0xDCA2, 0x9683, 0xDCA3, 0x9680, 0xDCA4, 0x96C2,
- 0xDCA5, 0x96C8, 0xDCA6, 0x96C3, 0xDCA7, 0x96F1, 0xDCA8, 0x96F0,
- 0xDCA9, 0x976C, 0xDCAA, 0x9770, 0xDCAB, 0x976E, 0xDCAC, 0x9807,
- 0xDCAD, 0x98A9, 0xDCAE, 0x98EB, 0xDCAF, 0x9CE6, 0xDCB0, 0x9EF9,
- 0xDCB1, 0x4E83, 0xDCB2, 0x4E84, 0xDCB3, 0x4EB6, 0xDCB4, 0x50BD,
- 0xDCB5, 0x50BF, 0xDCB6, 0x50C6, 0xDCB7, 0x50AE, 0xDCB8, 0x50C4,
- 0xDCB9, 0x50CA, 0xDCBA, 0x50B4, 0xDCBB, 0x50C8, 0xDCBC, 0x50C2,
- 0xDCBD, 0x50B0, 0xDCBE, 0x50C1, 0xDCBF, 0x50BA, 0xDCC0, 0x50B1,
- 0xDCC1, 0x50CB, 0xDCC2, 0x50C9, 0xDCC3, 0x50B6, 0xDCC4, 0x50B8,
- 0xDCC5, 0x51D7, 0xDCC6, 0x527A, 0xDCC7, 0x5278, 0xDCC8, 0x527B,
- 0xDCC9, 0x527C, 0xDCCA, 0x55C3, 0xDCCB, 0x55DB, 0xDCCC, 0x55CC,
- 0xDCCD, 0x55D0, 0xDCCE, 0x55CB, 0xDCCF, 0x55CA, 0xDCD0, 0x55DD,
- 0xDCD1, 0x55C0, 0xDCD2, 0x55D4, 0xDCD3, 0x55C4, 0xDCD4, 0x55E9,
- 0xDCD5, 0x55BF, 0xDCD6, 0x55D2, 0xDCD7, 0x558D, 0xDCD8, 0x55CF,
- 0xDCD9, 0x55D5, 0xDCDA, 0x55E2, 0xDCDB, 0x55D6, 0xDCDC, 0x55C8,
- 0xDCDD, 0x55F2, 0xDCDE, 0x55CD, 0xDCDF, 0x55D9, 0xDCE0, 0x55C2,
- 0xDCE1, 0x5714, 0xDCE2, 0x5853, 0xDCE3, 0x5868, 0xDCE4, 0x5864,
- 0xDCE5, 0x584F, 0xDCE6, 0x584D, 0xDCE7, 0x5849, 0xDCE8, 0x586F,
- 0xDCE9, 0x5855, 0xDCEA, 0x584E, 0xDCEB, 0x585D, 0xDCEC, 0x5859,
- 0xDCED, 0x5865, 0xDCEE, 0x585B, 0xDCEF, 0x583D, 0xDCF0, 0x5863,
- 0xDCF1, 0x5871, 0xDCF2, 0x58FC, 0xDCF3, 0x5AC7, 0xDCF4, 0x5AC4,
- 0xDCF5, 0x5ACB, 0xDCF6, 0x5ABA, 0xDCF7, 0x5AB8, 0xDCF8, 0x5AB1,
- 0xDCF9, 0x5AB5, 0xDCFA, 0x5AB0, 0xDCFB, 0x5ABF, 0xDCFC, 0x5AC8,
- 0xDCFD, 0x5ABB, 0xDCFE, 0x5AC6, 0xDD40, 0x5AB7, 0xDD41, 0x5AC0,
- 0xDD42, 0x5ACA, 0xDD43, 0x5AB4, 0xDD44, 0x5AB6, 0xDD45, 0x5ACD,
- 0xDD46, 0x5AB9, 0xDD47, 0x5A90, 0xDD48, 0x5BD6, 0xDD49, 0x5BD8,
- 0xDD4A, 0x5BD9, 0xDD4B, 0x5C1F, 0xDD4C, 0x5C33, 0xDD4D, 0x5D71,
- 0xDD4E, 0x5D63, 0xDD4F, 0x5D4A, 0xDD50, 0x5D65, 0xDD51, 0x5D72,
- 0xDD52, 0x5D6C, 0xDD53, 0x5D5E, 0xDD54, 0x5D68, 0xDD55, 0x5D67,
- 0xDD56, 0x5D62, 0xDD57, 0x5DF0, 0xDD58, 0x5E4F, 0xDD59, 0x5E4E,
- 0xDD5A, 0x5E4A, 0xDD5B, 0x5E4D, 0xDD5C, 0x5E4B, 0xDD5D, 0x5EC5,
- 0xDD5E, 0x5ECC, 0xDD5F, 0x5EC6, 0xDD60, 0x5ECB, 0xDD61, 0x5EC7,
- 0xDD62, 0x5F40, 0xDD63, 0x5FAF, 0xDD64, 0x5FAD, 0xDD65, 0x60F7,
- 0xDD66, 0x6149, 0xDD67, 0x614A, 0xDD68, 0x612B, 0xDD69, 0x6145,
- 0xDD6A, 0x6136, 0xDD6B, 0x6132, 0xDD6C, 0x612E, 0xDD6D, 0x6146,
- 0xDD6E, 0x612F, 0xDD6F, 0x614F, 0xDD70, 0x6129, 0xDD71, 0x6140,
- 0xDD72, 0x6220, 0xDD73, 0x9168, 0xDD74, 0x6223, 0xDD75, 0x6225,
- 0xDD76, 0x6224, 0xDD77, 0x63C5, 0xDD78, 0x63F1, 0xDD79, 0x63EB,
- 0xDD7A, 0x6410, 0xDD7B, 0x6412, 0xDD7C, 0x6409, 0xDD7D, 0x6420,
- 0xDD7E, 0x6424, 0xDDA1, 0x6433, 0xDDA2, 0x6443, 0xDDA3, 0x641F,
- 0xDDA4, 0x6415, 0xDDA5, 0x6418, 0xDDA6, 0x6439, 0xDDA7, 0x6437,
- 0xDDA8, 0x6422, 0xDDA9, 0x6423, 0xDDAA, 0x640C, 0xDDAB, 0x6426,
- 0xDDAC, 0x6430, 0xDDAD, 0x6428, 0xDDAE, 0x6441, 0xDDAF, 0x6435,
- 0xDDB0, 0x642F, 0xDDB1, 0x640A, 0xDDB2, 0x641A, 0xDDB3, 0x6440,
- 0xDDB4, 0x6425, 0xDDB5, 0x6427, 0xDDB6, 0x640B, 0xDDB7, 0x63E7,
- 0xDDB8, 0x641B, 0xDDB9, 0x642E, 0xDDBA, 0x6421, 0xDDBB, 0x640E,
- 0xDDBC, 0x656F, 0xDDBD, 0x6592, 0xDDBE, 0x65D3, 0xDDBF, 0x6686,
- 0xDDC0, 0x668C, 0xDDC1, 0x6695, 0xDDC2, 0x6690, 0xDDC3, 0x668B,
- 0xDDC4, 0x668A, 0xDDC5, 0x6699, 0xDDC6, 0x6694, 0xDDC7, 0x6678,
- 0xDDC8, 0x6720, 0xDDC9, 0x6966, 0xDDCA, 0x695F, 0xDDCB, 0x6938,
- 0xDDCC, 0x694E, 0xDDCD, 0x6962, 0xDDCE, 0x6971, 0xDDCF, 0x693F,
- 0xDDD0, 0x6945, 0xDDD1, 0x696A, 0xDDD2, 0x6939, 0xDDD3, 0x6942,
- 0xDDD4, 0x6957, 0xDDD5, 0x6959, 0xDDD6, 0x697A, 0xDDD7, 0x6948,
- 0xDDD8, 0x6949, 0xDDD9, 0x6935, 0xDDDA, 0x696C, 0xDDDB, 0x6933,
- 0xDDDC, 0x693D, 0xDDDD, 0x6965, 0xDDDE, 0x68F0, 0xDDDF, 0x6978,
- 0xDDE0, 0x6934, 0xDDE1, 0x6969, 0xDDE2, 0x6940, 0xDDE3, 0x696F,
- 0xDDE4, 0x6944, 0xDDE5, 0x6976, 0xDDE6, 0x6958, 0xDDE7, 0x6941,
- 0xDDE8, 0x6974, 0xDDE9, 0x694C, 0xDDEA, 0x693B, 0xDDEB, 0x694B,
- 0xDDEC, 0x6937, 0xDDED, 0x695C, 0xDDEE, 0x694F, 0xDDEF, 0x6951,
- 0xDDF0, 0x6932, 0xDDF1, 0x6952, 0xDDF2, 0x692F, 0xDDF3, 0x697B,
- 0xDDF4, 0x693C, 0xDDF5, 0x6B46, 0xDDF6, 0x6B45, 0xDDF7, 0x6B43,
- 0xDDF8, 0x6B42, 0xDDF9, 0x6B48, 0xDDFA, 0x6B41, 0xDDFB, 0x6B9B,
- 0xDDFC, 0xFA0D, 0xDDFD, 0x6BFB, 0xDDFE, 0x6BFC, 0xDE40, 0x6BF9,
- 0xDE41, 0x6BF7, 0xDE42, 0x6BF8, 0xDE43, 0x6E9B, 0xDE44, 0x6ED6,
- 0xDE45, 0x6EC8, 0xDE46, 0x6E8F, 0xDE47, 0x6EC0, 0xDE48, 0x6E9F,
- 0xDE49, 0x6E93, 0xDE4A, 0x6E94, 0xDE4B, 0x6EA0, 0xDE4C, 0x6EB1,
- 0xDE4D, 0x6EB9, 0xDE4E, 0x6EC6, 0xDE4F, 0x6ED2, 0xDE50, 0x6EBD,
- 0xDE51, 0x6EC1, 0xDE52, 0x6E9E, 0xDE53, 0x6EC9, 0xDE54, 0x6EB7,
- 0xDE55, 0x6EB0, 0xDE56, 0x6ECD, 0xDE57, 0x6EA6, 0xDE58, 0x6ECF,
- 0xDE59, 0x6EB2, 0xDE5A, 0x6EBE, 0xDE5B, 0x6EC3, 0xDE5C, 0x6EDC,
- 0xDE5D, 0x6ED8, 0xDE5E, 0x6E99, 0xDE5F, 0x6E92, 0xDE60, 0x6E8E,
- 0xDE61, 0x6E8D, 0xDE62, 0x6EA4, 0xDE63, 0x6EA1, 0xDE64, 0x6EBF,
- 0xDE65, 0x6EB3, 0xDE66, 0x6ED0, 0xDE67, 0x6ECA, 0xDE68, 0x6E97,
- 0xDE69, 0x6EAE, 0xDE6A, 0x6EA3, 0xDE6B, 0x7147, 0xDE6C, 0x7154,
- 0xDE6D, 0x7152, 0xDE6E, 0x7163, 0xDE6F, 0x7160, 0xDE70, 0x7141,
- 0xDE71, 0x715D, 0xDE72, 0x7162, 0xDE73, 0x7172, 0xDE74, 0x7178,
- 0xDE75, 0x716A, 0xDE76, 0x7161, 0xDE77, 0x7142, 0xDE78, 0x7158,
- 0xDE79, 0x7143, 0xDE7A, 0x714B, 0xDE7B, 0x7170, 0xDE7C, 0x715F,
- 0xDE7D, 0x7150, 0xDE7E, 0x7153, 0xDEA1, 0x7144, 0xDEA2, 0x714D,
- 0xDEA3, 0x715A, 0xDEA4, 0x724F, 0xDEA5, 0x728D, 0xDEA6, 0x728C,
- 0xDEA7, 0x7291, 0xDEA8, 0x7290, 0xDEA9, 0x728E, 0xDEAA, 0x733C,
- 0xDEAB, 0x7342, 0xDEAC, 0x733B, 0xDEAD, 0x733A, 0xDEAE, 0x7340,
- 0xDEAF, 0x734A, 0xDEB0, 0x7349, 0xDEB1, 0x7444, 0xDEB2, 0x744A,
- 0xDEB3, 0x744B, 0xDEB4, 0x7452, 0xDEB5, 0x7451, 0xDEB6, 0x7457,
- 0xDEB7, 0x7440, 0xDEB8, 0x744F, 0xDEB9, 0x7450, 0xDEBA, 0x744E,
- 0xDEBB, 0x7442, 0xDEBC, 0x7446, 0xDEBD, 0x744D, 0xDEBE, 0x7454,
- 0xDEBF, 0x74E1, 0xDEC0, 0x74FF, 0xDEC1, 0x74FE, 0xDEC2, 0x74FD,
- 0xDEC3, 0x751D, 0xDEC4, 0x7579, 0xDEC5, 0x7577, 0xDEC6, 0x6983,
- 0xDEC7, 0x75EF, 0xDEC8, 0x760F, 0xDEC9, 0x7603, 0xDECA, 0x75F7,
- 0xDECB, 0x75FE, 0xDECC, 0x75FC, 0xDECD, 0x75F9, 0xDECE, 0x75F8,
- 0xDECF, 0x7610, 0xDED0, 0x75FB, 0xDED1, 0x75F6, 0xDED2, 0x75ED,
- 0xDED3, 0x75F5, 0xDED4, 0x75FD, 0xDED5, 0x7699, 0xDED6, 0x76B5,
- 0xDED7, 0x76DD, 0xDED8, 0x7755, 0xDED9, 0x775F, 0xDEDA, 0x7760,
- 0xDEDB, 0x7752, 0xDEDC, 0x7756, 0xDEDD, 0x775A, 0xDEDE, 0x7769,
- 0xDEDF, 0x7767, 0xDEE0, 0x7754, 0xDEE1, 0x7759, 0xDEE2, 0x776D,
- 0xDEE3, 0x77E0, 0xDEE4, 0x7887, 0xDEE5, 0x789A, 0xDEE6, 0x7894,
- 0xDEE7, 0x788F, 0xDEE8, 0x7884, 0xDEE9, 0x7895, 0xDEEA, 0x7885,
- 0xDEEB, 0x7886, 0xDEEC, 0x78A1, 0xDEED, 0x7883, 0xDEEE, 0x7879,
- 0xDEEF, 0x7899, 0xDEF0, 0x7880, 0xDEF1, 0x7896, 0xDEF2, 0x787B,
- 0xDEF3, 0x797C, 0xDEF4, 0x7982, 0xDEF5, 0x797D, 0xDEF6, 0x7979,
- 0xDEF7, 0x7A11, 0xDEF8, 0x7A18, 0xDEF9, 0x7A19, 0xDEFA, 0x7A12,
- 0xDEFB, 0x7A17, 0xDEFC, 0x7A15, 0xDEFD, 0x7A22, 0xDEFE, 0x7A13,
- 0xDF40, 0x7A1B, 0xDF41, 0x7A10, 0xDF42, 0x7AA3, 0xDF43, 0x7AA2,
- 0xDF44, 0x7A9E, 0xDF45, 0x7AEB, 0xDF46, 0x7B66, 0xDF47, 0x7B64,
- 0xDF48, 0x7B6D, 0xDF49, 0x7B74, 0xDF4A, 0x7B69, 0xDF4B, 0x7B72,
- 0xDF4C, 0x7B65, 0xDF4D, 0x7B73, 0xDF4E, 0x7B71, 0xDF4F, 0x7B70,
- 0xDF50, 0x7B61, 0xDF51, 0x7B78, 0xDF52, 0x7B76, 0xDF53, 0x7B63,
- 0xDF54, 0x7CB2, 0xDF55, 0x7CB4, 0xDF56, 0x7CAF, 0xDF57, 0x7D88,
- 0xDF58, 0x7D86, 0xDF59, 0x7D80, 0xDF5A, 0x7D8D, 0xDF5B, 0x7D7F,
- 0xDF5C, 0x7D85, 0xDF5D, 0x7D7A, 0xDF5E, 0x7D8E, 0xDF5F, 0x7D7B,
- 0xDF60, 0x7D83, 0xDF61, 0x7D7C, 0xDF62, 0x7D8C, 0xDF63, 0x7D94,
- 0xDF64, 0x7D84, 0xDF65, 0x7D7D, 0xDF66, 0x7D92, 0xDF67, 0x7F6D,
- 0xDF68, 0x7F6B, 0xDF69, 0x7F67, 0xDF6A, 0x7F68, 0xDF6B, 0x7F6C,
- 0xDF6C, 0x7FA6, 0xDF6D, 0x7FA5, 0xDF6E, 0x7FA7, 0xDF6F, 0x7FDB,
- 0xDF70, 0x7FDC, 0xDF71, 0x8021, 0xDF72, 0x8164, 0xDF73, 0x8160,
- 0xDF74, 0x8177, 0xDF75, 0x815C, 0xDF76, 0x8169, 0xDF77, 0x815B,
- 0xDF78, 0x8162, 0xDF79, 0x8172, 0xDF7A, 0x6721, 0xDF7B, 0x815E,
- 0xDF7C, 0x8176, 0xDF7D, 0x8167, 0xDF7E, 0x816F, 0xDFA1, 0x8144,
- 0xDFA2, 0x8161, 0xDFA3, 0x821D, 0xDFA4, 0x8249, 0xDFA5, 0x8244,
- 0xDFA6, 0x8240, 0xDFA7, 0x8242, 0xDFA8, 0x8245, 0xDFA9, 0x84F1,
- 0xDFAA, 0x843F, 0xDFAB, 0x8456, 0xDFAC, 0x8476, 0xDFAD, 0x8479,
- 0xDFAE, 0x848F, 0xDFAF, 0x848D, 0xDFB0, 0x8465, 0xDFB1, 0x8451,
- 0xDFB2, 0x8440, 0xDFB3, 0x8486, 0xDFB4, 0x8467, 0xDFB5, 0x8430,
- 0xDFB6, 0x844D, 0xDFB7, 0x847D, 0xDFB8, 0x845A, 0xDFB9, 0x8459,
- 0xDFBA, 0x8474, 0xDFBB, 0x8473, 0xDFBC, 0x845D, 0xDFBD, 0x8507,
- 0xDFBE, 0x845E, 0xDFBF, 0x8437, 0xDFC0, 0x843A, 0xDFC1, 0x8434,
- 0xDFC2, 0x847A, 0xDFC3, 0x8443, 0xDFC4, 0x8478, 0xDFC5, 0x8432,
- 0xDFC6, 0x8445, 0xDFC7, 0x8429, 0xDFC8, 0x83D9, 0xDFC9, 0x844B,
- 0xDFCA, 0x842F, 0xDFCB, 0x8442, 0xDFCC, 0x842D, 0xDFCD, 0x845F,
- 0xDFCE, 0x8470, 0xDFCF, 0x8439, 0xDFD0, 0x844E, 0xDFD1, 0x844C,
- 0xDFD2, 0x8452, 0xDFD3, 0x846F, 0xDFD4, 0x84C5, 0xDFD5, 0x848E,
- 0xDFD6, 0x843B, 0xDFD7, 0x8447, 0xDFD8, 0x8436, 0xDFD9, 0x8433,
- 0xDFDA, 0x8468, 0xDFDB, 0x847E, 0xDFDC, 0x8444, 0xDFDD, 0x842B,
- 0xDFDE, 0x8460, 0xDFDF, 0x8454, 0xDFE0, 0x846E, 0xDFE1, 0x8450,
- 0xDFE2, 0x870B, 0xDFE3, 0x8704, 0xDFE4, 0x86F7, 0xDFE5, 0x870C,
- 0xDFE6, 0x86FA, 0xDFE7, 0x86D6, 0xDFE8, 0x86F5, 0xDFE9, 0x874D,
- 0xDFEA, 0x86F8, 0xDFEB, 0x870E, 0xDFEC, 0x8709, 0xDFED, 0x8701,
- 0xDFEE, 0x86F6, 0xDFEF, 0x870D, 0xDFF0, 0x8705, 0xDFF1, 0x88D6,
- 0xDFF2, 0x88CB, 0xDFF3, 0x88CD, 0xDFF4, 0x88CE, 0xDFF5, 0x88DE,
- 0xDFF6, 0x88DB, 0xDFF7, 0x88DA, 0xDFF8, 0x88CC, 0xDFF9, 0x88D0,
- 0xDFFA, 0x8985, 0xDFFB, 0x899B, 0xDFFC, 0x89DF, 0xDFFD, 0x89E5,
- 0xDFFE, 0x89E4, 0xE040, 0x89E1, 0xE041, 0x89E0, 0xE042, 0x89E2,
- 0xE043, 0x89DC, 0xE044, 0x89E6, 0xE045, 0x8A76, 0xE046, 0x8A86,
- 0xE047, 0x8A7F, 0xE048, 0x8A61, 0xE049, 0x8A3F, 0xE04A, 0x8A77,
- 0xE04B, 0x8A82, 0xE04C, 0x8A84, 0xE04D, 0x8A75, 0xE04E, 0x8A83,
- 0xE04F, 0x8A81, 0xE050, 0x8A74, 0xE051, 0x8A7A, 0xE052, 0x8C3C,
- 0xE053, 0x8C4B, 0xE054, 0x8C4A, 0xE055, 0x8C65, 0xE056, 0x8C64,
- 0xE057, 0x8C66, 0xE058, 0x8C86, 0xE059, 0x8C84, 0xE05A, 0x8C85,
- 0xE05B, 0x8CCC, 0xE05C, 0x8D68, 0xE05D, 0x8D69, 0xE05E, 0x8D91,
- 0xE05F, 0x8D8C, 0xE060, 0x8D8E, 0xE061, 0x8D8F, 0xE062, 0x8D8D,
- 0xE063, 0x8D93, 0xE064, 0x8D94, 0xE065, 0x8D90, 0xE066, 0x8D92,
- 0xE067, 0x8DF0, 0xE068, 0x8DE0, 0xE069, 0x8DEC, 0xE06A, 0x8DF1,
- 0xE06B, 0x8DEE, 0xE06C, 0x8DD0, 0xE06D, 0x8DE9, 0xE06E, 0x8DE3,
- 0xE06F, 0x8DE2, 0xE070, 0x8DE7, 0xE071, 0x8DF2, 0xE072, 0x8DEB,
- 0xE073, 0x8DF4, 0xE074, 0x8F06, 0xE075, 0x8EFF, 0xE076, 0x8F01,
- 0xE077, 0x8F00, 0xE078, 0x8F05, 0xE079, 0x8F07, 0xE07A, 0x8F08,
- 0xE07B, 0x8F02, 0xE07C, 0x8F0B, 0xE07D, 0x9052, 0xE07E, 0x903F,
- 0xE0A1, 0x9044, 0xE0A2, 0x9049, 0xE0A3, 0x903D, 0xE0A4, 0x9110,
- 0xE0A5, 0x910D, 0xE0A6, 0x910F, 0xE0A7, 0x9111, 0xE0A8, 0x9116,
- 0xE0A9, 0x9114, 0xE0AA, 0x910B, 0xE0AB, 0x910E, 0xE0AC, 0x916E,
- 0xE0AD, 0x916F, 0xE0AE, 0x9248, 0xE0AF, 0x9252, 0xE0B0, 0x9230,
- 0xE0B1, 0x923A, 0xE0B2, 0x9266, 0xE0B3, 0x9233, 0xE0B4, 0x9265,
- 0xE0B5, 0x925E, 0xE0B6, 0x9283, 0xE0B7, 0x922E, 0xE0B8, 0x924A,
- 0xE0B9, 0x9246, 0xE0BA, 0x926D, 0xE0BB, 0x926C, 0xE0BC, 0x924F,
- 0xE0BD, 0x9260, 0xE0BE, 0x9267, 0xE0BF, 0x926F, 0xE0C0, 0x9236,
- 0xE0C1, 0x9261, 0xE0C2, 0x9270, 0xE0C3, 0x9231, 0xE0C4, 0x9254,
- 0xE0C5, 0x9263, 0xE0C6, 0x9250, 0xE0C7, 0x9272, 0xE0C8, 0x924E,
- 0xE0C9, 0x9253, 0xE0CA, 0x924C, 0xE0CB, 0x9256, 0xE0CC, 0x9232,
- 0xE0CD, 0x959F, 0xE0CE, 0x959C, 0xE0CF, 0x959E, 0xE0D0, 0x959B,
- 0xE0D1, 0x9692, 0xE0D2, 0x9693, 0xE0D3, 0x9691, 0xE0D4, 0x9697,
- 0xE0D5, 0x96CE, 0xE0D6, 0x96FA, 0xE0D7, 0x96FD, 0xE0D8, 0x96F8,
- 0xE0D9, 0x96F5, 0xE0DA, 0x9773, 0xE0DB, 0x9777, 0xE0DC, 0x9778,
- 0xE0DD, 0x9772, 0xE0DE, 0x980F, 0xE0DF, 0x980D, 0xE0E0, 0x980E,
- 0xE0E1, 0x98AC, 0xE0E2, 0x98F6, 0xE0E3, 0x98F9, 0xE0E4, 0x99AF,
- 0xE0E5, 0x99B2, 0xE0E6, 0x99B0, 0xE0E7, 0x99B5, 0xE0E8, 0x9AAD,
- 0xE0E9, 0x9AAB, 0xE0EA, 0x9B5B, 0xE0EB, 0x9CEA, 0xE0EC, 0x9CED,
- 0xE0ED, 0x9CE7, 0xE0EE, 0x9E80, 0xE0EF, 0x9EFD, 0xE0F0, 0x50E6,
- 0xE0F1, 0x50D4, 0xE0F2, 0x50D7, 0xE0F3, 0x50E8, 0xE0F4, 0x50F3,
- 0xE0F5, 0x50DB, 0xE0F6, 0x50EA, 0xE0F7, 0x50DD, 0xE0F8, 0x50E4,
- 0xE0F9, 0x50D3, 0xE0FA, 0x50EC, 0xE0FB, 0x50F0, 0xE0FC, 0x50EF,
- 0xE0FD, 0x50E3, 0xE0FE, 0x50E0, 0xE140, 0x51D8, 0xE141, 0x5280,
- 0xE142, 0x5281, 0xE143, 0x52E9, 0xE144, 0x52EB, 0xE145, 0x5330,
- 0xE146, 0x53AC, 0xE147, 0x5627, 0xE148, 0x5615, 0xE149, 0x560C,
- 0xE14A, 0x5612, 0xE14B, 0x55FC, 0xE14C, 0x560F, 0xE14D, 0x561C,
- 0xE14E, 0x5601, 0xE14F, 0x5613, 0xE150, 0x5602, 0xE151, 0x55FA,
- 0xE152, 0x561D, 0xE153, 0x5604, 0xE154, 0x55FF, 0xE155, 0x55F9,
- 0xE156, 0x5889, 0xE157, 0x587C, 0xE158, 0x5890, 0xE159, 0x5898,
- 0xE15A, 0x5886, 0xE15B, 0x5881, 0xE15C, 0x587F, 0xE15D, 0x5874,
- 0xE15E, 0x588B, 0xE15F, 0x587A, 0xE160, 0x5887, 0xE161, 0x5891,
- 0xE162, 0x588E, 0xE163, 0x5876, 0xE164, 0x5882, 0xE165, 0x5888,
- 0xE166, 0x587B, 0xE167, 0x5894, 0xE168, 0x588F, 0xE169, 0x58FE,
- 0xE16A, 0x596B, 0xE16B, 0x5ADC, 0xE16C, 0x5AEE, 0xE16D, 0x5AE5,
- 0xE16E, 0x5AD5, 0xE16F, 0x5AEA, 0xE170, 0x5ADA, 0xE171, 0x5AED,
- 0xE172, 0x5AEB, 0xE173, 0x5AF3, 0xE174, 0x5AE2, 0xE175, 0x5AE0,
- 0xE176, 0x5ADB, 0xE177, 0x5AEC, 0xE178, 0x5ADE, 0xE179, 0x5ADD,
- 0xE17A, 0x5AD9, 0xE17B, 0x5AE8, 0xE17C, 0x5ADF, 0xE17D, 0x5B77,
- 0xE17E, 0x5BE0, 0xE1A1, 0x5BE3, 0xE1A2, 0x5C63, 0xE1A3, 0x5D82,
- 0xE1A4, 0x5D80, 0xE1A5, 0x5D7D, 0xE1A6, 0x5D86, 0xE1A7, 0x5D7A,
- 0xE1A8, 0x5D81, 0xE1A9, 0x5D77, 0xE1AA, 0x5D8A, 0xE1AB, 0x5D89,
- 0xE1AC, 0x5D88, 0xE1AD, 0x5D7E, 0xE1AE, 0x5D7C, 0xE1AF, 0x5D8D,
- 0xE1B0, 0x5D79, 0xE1B1, 0x5D7F, 0xE1B2, 0x5E58, 0xE1B3, 0x5E59,
- 0xE1B4, 0x5E53, 0xE1B5, 0x5ED8, 0xE1B6, 0x5ED1, 0xE1B7, 0x5ED7,
- 0xE1B8, 0x5ECE, 0xE1B9, 0x5EDC, 0xE1BA, 0x5ED5, 0xE1BB, 0x5ED9,
- 0xE1BC, 0x5ED2, 0xE1BD, 0x5ED4, 0xE1BE, 0x5F44, 0xE1BF, 0x5F43,
- 0xE1C0, 0x5F6F, 0xE1C1, 0x5FB6, 0xE1C2, 0x612C, 0xE1C3, 0x6128,
- 0xE1C4, 0x6141, 0xE1C5, 0x615E, 0xE1C6, 0x6171, 0xE1C7, 0x6173,
- 0xE1C8, 0x6152, 0xE1C9, 0x6153, 0xE1CA, 0x6172, 0xE1CB, 0x616C,
- 0xE1CC, 0x6180, 0xE1CD, 0x6174, 0xE1CE, 0x6154, 0xE1CF, 0x617A,
- 0xE1D0, 0x615B, 0xE1D1, 0x6165, 0xE1D2, 0x613B, 0xE1D3, 0x616A,
- 0xE1D4, 0x6161, 0xE1D5, 0x6156, 0xE1D6, 0x6229, 0xE1D7, 0x6227,
- 0xE1D8, 0x622B, 0xE1D9, 0x642B, 0xE1DA, 0x644D, 0xE1DB, 0x645B,
- 0xE1DC, 0x645D, 0xE1DD, 0x6474, 0xE1DE, 0x6476, 0xE1DF, 0x6472,
- 0xE1E0, 0x6473, 0xE1E1, 0x647D, 0xE1E2, 0x6475, 0xE1E3, 0x6466,
- 0xE1E4, 0x64A6, 0xE1E5, 0x644E, 0xE1E6, 0x6482, 0xE1E7, 0x645E,
- 0xE1E8, 0x645C, 0xE1E9, 0x644B, 0xE1EA, 0x6453, 0xE1EB, 0x6460,
- 0xE1EC, 0x6450, 0xE1ED, 0x647F, 0xE1EE, 0x643F, 0xE1EF, 0x646C,
- 0xE1F0, 0x646B, 0xE1F1, 0x6459, 0xE1F2, 0x6465, 0xE1F3, 0x6477,
- 0xE1F4, 0x6573, 0xE1F5, 0x65A0, 0xE1F6, 0x66A1, 0xE1F7, 0x66A0,
- 0xE1F8, 0x669F, 0xE1F9, 0x6705, 0xE1FA, 0x6704, 0xE1FB, 0x6722,
- 0xE1FC, 0x69B1, 0xE1FD, 0x69B6, 0xE1FE, 0x69C9, 0xE240, 0x69A0,
- 0xE241, 0x69CE, 0xE242, 0x6996, 0xE243, 0x69B0, 0xE244, 0x69AC,
- 0xE245, 0x69BC, 0xE246, 0x6991, 0xE247, 0x6999, 0xE248, 0x698E,
- 0xE249, 0x69A7, 0xE24A, 0x698D, 0xE24B, 0x69A9, 0xE24C, 0x69BE,
- 0xE24D, 0x69AF, 0xE24E, 0x69BF, 0xE24F, 0x69C4, 0xE250, 0x69BD,
- 0xE251, 0x69A4, 0xE252, 0x69D4, 0xE253, 0x69B9, 0xE254, 0x69CA,
- 0xE255, 0x699A, 0xE256, 0x69CF, 0xE257, 0x69B3, 0xE258, 0x6993,
- 0xE259, 0x69AA, 0xE25A, 0x69A1, 0xE25B, 0x699E, 0xE25C, 0x69D9,
- 0xE25D, 0x6997, 0xE25E, 0x6990, 0xE25F, 0x69C2, 0xE260, 0x69B5,
- 0xE261, 0x69A5, 0xE262, 0x69C6, 0xE263, 0x6B4A, 0xE264, 0x6B4D,
- 0xE265, 0x6B4B, 0xE266, 0x6B9E, 0xE267, 0x6B9F, 0xE268, 0x6BA0,
- 0xE269, 0x6BC3, 0xE26A, 0x6BC4, 0xE26B, 0x6BFE, 0xE26C, 0x6ECE,
- 0xE26D, 0x6EF5, 0xE26E, 0x6EF1, 0xE26F, 0x6F03, 0xE270, 0x6F25,
- 0xE271, 0x6EF8, 0xE272, 0x6F37, 0xE273, 0x6EFB, 0xE274, 0x6F2E,
- 0xE275, 0x6F09, 0xE276, 0x6F4E, 0xE277, 0x6F19, 0xE278, 0x6F1A,
- 0xE279, 0x6F27, 0xE27A, 0x6F18, 0xE27B, 0x6F3B, 0xE27C, 0x6F12,
- 0xE27D, 0x6EED, 0xE27E, 0x6F0A, 0xE2A1, 0x6F36, 0xE2A2, 0x6F73,
- 0xE2A3, 0x6EF9, 0xE2A4, 0x6EEE, 0xE2A5, 0x6F2D, 0xE2A6, 0x6F40,
- 0xE2A7, 0x6F30, 0xE2A8, 0x6F3C, 0xE2A9, 0x6F35, 0xE2AA, 0x6EEB,
- 0xE2AB, 0x6F07, 0xE2AC, 0x6F0E, 0xE2AD, 0x6F43, 0xE2AE, 0x6F05,
- 0xE2AF, 0x6EFD, 0xE2B0, 0x6EF6, 0xE2B1, 0x6F39, 0xE2B2, 0x6F1C,
- 0xE2B3, 0x6EFC, 0xE2B4, 0x6F3A, 0xE2B5, 0x6F1F, 0xE2B6, 0x6F0D,
- 0xE2B7, 0x6F1E, 0xE2B8, 0x6F08, 0xE2B9, 0x6F21, 0xE2BA, 0x7187,
- 0xE2BB, 0x7190, 0xE2BC, 0x7189, 0xE2BD, 0x7180, 0xE2BE, 0x7185,
- 0xE2BF, 0x7182, 0xE2C0, 0x718F, 0xE2C1, 0x717B, 0xE2C2, 0x7186,
- 0xE2C3, 0x7181, 0xE2C4, 0x7197, 0xE2C5, 0x7244, 0xE2C6, 0x7253,
- 0xE2C7, 0x7297, 0xE2C8, 0x7295, 0xE2C9, 0x7293, 0xE2CA, 0x7343,
- 0xE2CB, 0x734D, 0xE2CC, 0x7351, 0xE2CD, 0x734C, 0xE2CE, 0x7462,
- 0xE2CF, 0x7473, 0xE2D0, 0x7471, 0xE2D1, 0x7475, 0xE2D2, 0x7472,
- 0xE2D3, 0x7467, 0xE2D4, 0x746E, 0xE2D5, 0x7500, 0xE2D6, 0x7502,
- 0xE2D7, 0x7503, 0xE2D8, 0x757D, 0xE2D9, 0x7590, 0xE2DA, 0x7616,
- 0xE2DB, 0x7608, 0xE2DC, 0x760C, 0xE2DD, 0x7615, 0xE2DE, 0x7611,
- 0xE2DF, 0x760A, 0xE2E0, 0x7614, 0xE2E1, 0x76B8, 0xE2E2, 0x7781,
- 0xE2E3, 0x777C, 0xE2E4, 0x7785, 0xE2E5, 0x7782, 0xE2E6, 0x776E,
- 0xE2E7, 0x7780, 0xE2E8, 0x776F, 0xE2E9, 0x777E, 0xE2EA, 0x7783,
- 0xE2EB, 0x78B2, 0xE2EC, 0x78AA, 0xE2ED, 0x78B4, 0xE2EE, 0x78AD,
- 0xE2EF, 0x78A8, 0xE2F0, 0x787E, 0xE2F1, 0x78AB, 0xE2F2, 0x789E,
- 0xE2F3, 0x78A5, 0xE2F4, 0x78A0, 0xE2F5, 0x78AC, 0xE2F6, 0x78A2,
- 0xE2F7, 0x78A4, 0xE2F8, 0x7998, 0xE2F9, 0x798A, 0xE2FA, 0x798B,
- 0xE2FB, 0x7996, 0xE2FC, 0x7995, 0xE2FD, 0x7994, 0xE2FE, 0x7993,
- 0xE340, 0x7997, 0xE341, 0x7988, 0xE342, 0x7992, 0xE343, 0x7990,
- 0xE344, 0x7A2B, 0xE345, 0x7A4A, 0xE346, 0x7A30, 0xE347, 0x7A2F,
- 0xE348, 0x7A28, 0xE349, 0x7A26, 0xE34A, 0x7AA8, 0xE34B, 0x7AAB,
- 0xE34C, 0x7AAC, 0xE34D, 0x7AEE, 0xE34E, 0x7B88, 0xE34F, 0x7B9C,
- 0xE350, 0x7B8A, 0xE351, 0x7B91, 0xE352, 0x7B90, 0xE353, 0x7B96,
- 0xE354, 0x7B8D, 0xE355, 0x7B8C, 0xE356, 0x7B9B, 0xE357, 0x7B8E,
- 0xE358, 0x7B85, 0xE359, 0x7B98, 0xE35A, 0x5284, 0xE35B, 0x7B99,
- 0xE35C, 0x7BA4, 0xE35D, 0x7B82, 0xE35E, 0x7CBB, 0xE35F, 0x7CBF,
- 0xE360, 0x7CBC, 0xE361, 0x7CBA, 0xE362, 0x7DA7, 0xE363, 0x7DB7,
- 0xE364, 0x7DC2, 0xE365, 0x7DA3, 0xE366, 0x7DAA, 0xE367, 0x7DC1,
- 0xE368, 0x7DC0, 0xE369, 0x7DC5, 0xE36A, 0x7D9D, 0xE36B, 0x7DCE,
- 0xE36C, 0x7DC4, 0xE36D, 0x7DC6, 0xE36E, 0x7DCB, 0xE36F, 0x7DCC,
- 0xE370, 0x7DAF, 0xE371, 0x7DB9, 0xE372, 0x7D96, 0xE373, 0x7DBC,
- 0xE374, 0x7D9F, 0xE375, 0x7DA6, 0xE376, 0x7DAE, 0xE377, 0x7DA9,
- 0xE378, 0x7DA1, 0xE379, 0x7DC9, 0xE37A, 0x7F73, 0xE37B, 0x7FE2,
- 0xE37C, 0x7FE3, 0xE37D, 0x7FE5, 0xE37E, 0x7FDE, 0xE3A1, 0x8024,
- 0xE3A2, 0x805D, 0xE3A3, 0x805C, 0xE3A4, 0x8189, 0xE3A5, 0x8186,
- 0xE3A6, 0x8183, 0xE3A7, 0x8187, 0xE3A8, 0x818D, 0xE3A9, 0x818C,
- 0xE3AA, 0x818B, 0xE3AB, 0x8215, 0xE3AC, 0x8497, 0xE3AD, 0x84A4,
- 0xE3AE, 0x84A1, 0xE3AF, 0x849F, 0xE3B0, 0x84BA, 0xE3B1, 0x84CE,
- 0xE3B2, 0x84C2, 0xE3B3, 0x84AC, 0xE3B4, 0x84AE, 0xE3B5, 0x84AB,
- 0xE3B6, 0x84B9, 0xE3B7, 0x84B4, 0xE3B8, 0x84C1, 0xE3B9, 0x84CD,
- 0xE3BA, 0x84AA, 0xE3BB, 0x849A, 0xE3BC, 0x84B1, 0xE3BD, 0x84D0,
- 0xE3BE, 0x849D, 0xE3BF, 0x84A7, 0xE3C0, 0x84BB, 0xE3C1, 0x84A2,
- 0xE3C2, 0x8494, 0xE3C3, 0x84C7, 0xE3C4, 0x84CC, 0xE3C5, 0x849B,
- 0xE3C6, 0x84A9, 0xE3C7, 0x84AF, 0xE3C8, 0x84A8, 0xE3C9, 0x84D6,
- 0xE3CA, 0x8498, 0xE3CB, 0x84B6, 0xE3CC, 0x84CF, 0xE3CD, 0x84A0,
- 0xE3CE, 0x84D7, 0xE3CF, 0x84D4, 0xE3D0, 0x84D2, 0xE3D1, 0x84DB,
- 0xE3D2, 0x84B0, 0xE3D3, 0x8491, 0xE3D4, 0x8661, 0xE3D5, 0x8733,
- 0xE3D6, 0x8723, 0xE3D7, 0x8728, 0xE3D8, 0x876B, 0xE3D9, 0x8740,
- 0xE3DA, 0x872E, 0xE3DB, 0x871E, 0xE3DC, 0x8721, 0xE3DD, 0x8719,
- 0xE3DE, 0x871B, 0xE3DF, 0x8743, 0xE3E0, 0x872C, 0xE3E1, 0x8741,
- 0xE3E2, 0x873E, 0xE3E3, 0x8746, 0xE3E4, 0x8720, 0xE3E5, 0x8732,
- 0xE3E6, 0x872A, 0xE3E7, 0x872D, 0xE3E8, 0x873C, 0xE3E9, 0x8712,
- 0xE3EA, 0x873A, 0xE3EB, 0x8731, 0xE3EC, 0x8735, 0xE3ED, 0x8742,
- 0xE3EE, 0x8726, 0xE3EF, 0x8727, 0xE3F0, 0x8738, 0xE3F1, 0x8724,
- 0xE3F2, 0x871A, 0xE3F3, 0x8730, 0xE3F4, 0x8711, 0xE3F5, 0x88F7,
- 0xE3F6, 0x88E7, 0xE3F7, 0x88F1, 0xE3F8, 0x88F2, 0xE3F9, 0x88FA,
- 0xE3FA, 0x88FE, 0xE3FB, 0x88EE, 0xE3FC, 0x88FC, 0xE3FD, 0x88F6,
- 0xE3FE, 0x88FB, 0xE440, 0x88F0, 0xE441, 0x88EC, 0xE442, 0x88EB,
- 0xE443, 0x899D, 0xE444, 0x89A1, 0xE445, 0x899F, 0xE446, 0x899E,
- 0xE447, 0x89E9, 0xE448, 0x89EB, 0xE449, 0x89E8, 0xE44A, 0x8AAB,
- 0xE44B, 0x8A99, 0xE44C, 0x8A8B, 0xE44D, 0x8A92, 0xE44E, 0x8A8F,
- 0xE44F, 0x8A96, 0xE450, 0x8C3D, 0xE451, 0x8C68, 0xE452, 0x8C69,
- 0xE453, 0x8CD5, 0xE454, 0x8CCF, 0xE455, 0x8CD7, 0xE456, 0x8D96,
- 0xE457, 0x8E09, 0xE458, 0x8E02, 0xE459, 0x8DFF, 0xE45A, 0x8E0D,
- 0xE45B, 0x8DFD, 0xE45C, 0x8E0A, 0xE45D, 0x8E03, 0xE45E, 0x8E07,
- 0xE45F, 0x8E06, 0xE460, 0x8E05, 0xE461, 0x8DFE, 0xE462, 0x8E00,
- 0xE463, 0x8E04, 0xE464, 0x8F10, 0xE465, 0x8F11, 0xE466, 0x8F0E,
- 0xE467, 0x8F0D, 0xE468, 0x9123, 0xE469, 0x911C, 0xE46A, 0x9120,
- 0xE46B, 0x9122, 0xE46C, 0x911F, 0xE46D, 0x911D, 0xE46E, 0x911A,
- 0xE46F, 0x9124, 0xE470, 0x9121, 0xE471, 0x911B, 0xE472, 0x917A,
- 0xE473, 0x9172, 0xE474, 0x9179, 0xE475, 0x9173, 0xE476, 0x92A5,
- 0xE477, 0x92A4, 0xE478, 0x9276, 0xE479, 0x929B, 0xE47A, 0x927A,
- 0xE47B, 0x92A0, 0xE47C, 0x9294, 0xE47D, 0x92AA, 0xE47E, 0x928D,
- 0xE4A1, 0x92A6, 0xE4A2, 0x929A, 0xE4A3, 0x92AB, 0xE4A4, 0x9279,
- 0xE4A5, 0x9297, 0xE4A6, 0x927F, 0xE4A7, 0x92A3, 0xE4A8, 0x92EE,
- 0xE4A9, 0x928E, 0xE4AA, 0x9282, 0xE4AB, 0x9295, 0xE4AC, 0x92A2,
- 0xE4AD, 0x927D, 0xE4AE, 0x9288, 0xE4AF, 0x92A1, 0xE4B0, 0x928A,
- 0xE4B1, 0x9286, 0xE4B2, 0x928C, 0xE4B3, 0x9299, 0xE4B4, 0x92A7,
- 0xE4B5, 0x927E, 0xE4B6, 0x9287, 0xE4B7, 0x92A9, 0xE4B8, 0x929D,
- 0xE4B9, 0x928B, 0xE4BA, 0x922D, 0xE4BB, 0x969E, 0xE4BC, 0x96A1,
- 0xE4BD, 0x96FF, 0xE4BE, 0x9758, 0xE4BF, 0x977D, 0xE4C0, 0x977A,
- 0xE4C1, 0x977E, 0xE4C2, 0x9783, 0xE4C3, 0x9780, 0xE4C4, 0x9782,
- 0xE4C5, 0x977B, 0xE4C6, 0x9784, 0xE4C7, 0x9781, 0xE4C8, 0x977F,
- 0xE4C9, 0x97CE, 0xE4CA, 0x97CD, 0xE4CB, 0x9816, 0xE4CC, 0x98AD,
- 0xE4CD, 0x98AE, 0xE4CE, 0x9902, 0xE4CF, 0x9900, 0xE4D0, 0x9907,
- 0xE4D1, 0x999D, 0xE4D2, 0x999C, 0xE4D3, 0x99C3, 0xE4D4, 0x99B9,
- 0xE4D5, 0x99BB, 0xE4D6, 0x99BA, 0xE4D7, 0x99C2, 0xE4D8, 0x99BD,
- 0xE4D9, 0x99C7, 0xE4DA, 0x9AB1, 0xE4DB, 0x9AE3, 0xE4DC, 0x9AE7,
- 0xE4DD, 0x9B3E, 0xE4DE, 0x9B3F, 0xE4DF, 0x9B60, 0xE4E0, 0x9B61,
- 0xE4E1, 0x9B5F, 0xE4E2, 0x9CF1, 0xE4E3, 0x9CF2, 0xE4E4, 0x9CF5,
- 0xE4E5, 0x9EA7, 0xE4E6, 0x50FF, 0xE4E7, 0x5103, 0xE4E8, 0x5130,
- 0xE4E9, 0x50F8, 0xE4EA, 0x5106, 0xE4EB, 0x5107, 0xE4EC, 0x50F6,
- 0xE4ED, 0x50FE, 0xE4EE, 0x510B, 0xE4EF, 0x510C, 0xE4F0, 0x50FD,
- 0xE4F1, 0x510A, 0xE4F2, 0x528B, 0xE4F3, 0x528C, 0xE4F4, 0x52F1,
- 0xE4F5, 0x52EF, 0xE4F6, 0x5648, 0xE4F7, 0x5642, 0xE4F8, 0x564C,
- 0xE4F9, 0x5635, 0xE4FA, 0x5641, 0xE4FB, 0x564A, 0xE4FC, 0x5649,
- 0xE4FD, 0x5646, 0xE4FE, 0x5658, 0xE540, 0x565A, 0xE541, 0x5640,
- 0xE542, 0x5633, 0xE543, 0x563D, 0xE544, 0x562C, 0xE545, 0x563E,
- 0xE546, 0x5638, 0xE547, 0x562A, 0xE548, 0x563A, 0xE549, 0x571A,
- 0xE54A, 0x58AB, 0xE54B, 0x589D, 0xE54C, 0x58B1, 0xE54D, 0x58A0,
- 0xE54E, 0x58A3, 0xE54F, 0x58AF, 0xE550, 0x58AC, 0xE551, 0x58A5,
- 0xE552, 0x58A1, 0xE553, 0x58FF, 0xE554, 0x5AFF, 0xE555, 0x5AF4,
- 0xE556, 0x5AFD, 0xE557, 0x5AF7, 0xE558, 0x5AF6, 0xE559, 0x5B03,
- 0xE55A, 0x5AF8, 0xE55B, 0x5B02, 0xE55C, 0x5AF9, 0xE55D, 0x5B01,
- 0xE55E, 0x5B07, 0xE55F, 0x5B05, 0xE560, 0x5B0F, 0xE561, 0x5C67,
- 0xE562, 0x5D99, 0xE563, 0x5D97, 0xE564, 0x5D9F, 0xE565, 0x5D92,
- 0xE566, 0x5DA2, 0xE567, 0x5D93, 0xE568, 0x5D95, 0xE569, 0x5DA0,
- 0xE56A, 0x5D9C, 0xE56B, 0x5DA1, 0xE56C, 0x5D9A, 0xE56D, 0x5D9E,
- 0xE56E, 0x5E69, 0xE56F, 0x5E5D, 0xE570, 0x5E60, 0xE571, 0x5E5C,
- 0xE572, 0x7DF3, 0xE573, 0x5EDB, 0xE574, 0x5EDE, 0xE575, 0x5EE1,
- 0xE576, 0x5F49, 0xE577, 0x5FB2, 0xE578, 0x618B, 0xE579, 0x6183,
- 0xE57A, 0x6179, 0xE57B, 0x61B1, 0xE57C, 0x61B0, 0xE57D, 0x61A2,
- 0xE57E, 0x6189, 0xE5A1, 0x619B, 0xE5A2, 0x6193, 0xE5A3, 0x61AF,
- 0xE5A4, 0x61AD, 0xE5A5, 0x619F, 0xE5A6, 0x6192, 0xE5A7, 0x61AA,
- 0xE5A8, 0x61A1, 0xE5A9, 0x618D, 0xE5AA, 0x6166, 0xE5AB, 0x61B3,
- 0xE5AC, 0x622D, 0xE5AD, 0x646E, 0xE5AE, 0x6470, 0xE5AF, 0x6496,
- 0xE5B0, 0x64A0, 0xE5B1, 0x6485, 0xE5B2, 0x6497, 0xE5B3, 0x649C,
- 0xE5B4, 0x648F, 0xE5B5, 0x648B, 0xE5B6, 0x648A, 0xE5B7, 0x648C,
- 0xE5B8, 0x64A3, 0xE5B9, 0x649F, 0xE5BA, 0x6468, 0xE5BB, 0x64B1,
- 0xE5BC, 0x6498, 0xE5BD, 0x6576, 0xE5BE, 0x657A, 0xE5BF, 0x6579,
- 0xE5C0, 0x657B, 0xE5C1, 0x65B2, 0xE5C2, 0x65B3, 0xE5C3, 0x66B5,
- 0xE5C4, 0x66B0, 0xE5C5, 0x66A9, 0xE5C6, 0x66B2, 0xE5C7, 0x66B7,
- 0xE5C8, 0x66AA, 0xE5C9, 0x66AF, 0xE5CA, 0x6A00, 0xE5CB, 0x6A06,
- 0xE5CC, 0x6A17, 0xE5CD, 0x69E5, 0xE5CE, 0x69F8, 0xE5CF, 0x6A15,
- 0xE5D0, 0x69F1, 0xE5D1, 0x69E4, 0xE5D2, 0x6A20, 0xE5D3, 0x69FF,
- 0xE5D4, 0x69EC, 0xE5D5, 0x69E2, 0xE5D6, 0x6A1B, 0xE5D7, 0x6A1D,
- 0xE5D8, 0x69FE, 0xE5D9, 0x6A27, 0xE5DA, 0x69F2, 0xE5DB, 0x69EE,
- 0xE5DC, 0x6A14, 0xE5DD, 0x69F7, 0xE5DE, 0x69E7, 0xE5DF, 0x6A40,
- 0xE5E0, 0x6A08, 0xE5E1, 0x69E6, 0xE5E2, 0x69FB, 0xE5E3, 0x6A0D,
- 0xE5E4, 0x69FC, 0xE5E5, 0x69EB, 0xE5E6, 0x6A09, 0xE5E7, 0x6A04,
- 0xE5E8, 0x6A18, 0xE5E9, 0x6A25, 0xE5EA, 0x6A0F, 0xE5EB, 0x69F6,
- 0xE5EC, 0x6A26, 0xE5ED, 0x6A07, 0xE5EE, 0x69F4, 0xE5EF, 0x6A16,
- 0xE5F0, 0x6B51, 0xE5F1, 0x6BA5, 0xE5F2, 0x6BA3, 0xE5F3, 0x6BA2,
- 0xE5F4, 0x6BA6, 0xE5F5, 0x6C01, 0xE5F6, 0x6C00, 0xE5F7, 0x6BFF,
- 0xE5F8, 0x6C02, 0xE5F9, 0x6F41, 0xE5FA, 0x6F26, 0xE5FB, 0x6F7E,
- 0xE5FC, 0x6F87, 0xE5FD, 0x6FC6, 0xE5FE, 0x6F92, 0xE640, 0x6F8D,
- 0xE641, 0x6F89, 0xE642, 0x6F8C, 0xE643, 0x6F62, 0xE644, 0x6F4F,
- 0xE645, 0x6F85, 0xE646, 0x6F5A, 0xE647, 0x6F96, 0xE648, 0x6F76,
- 0xE649, 0x6F6C, 0xE64A, 0x6F82, 0xE64B, 0x6F55, 0xE64C, 0x6F72,
- 0xE64D, 0x6F52, 0xE64E, 0x6F50, 0xE64F, 0x6F57, 0xE650, 0x6F94,
- 0xE651, 0x6F93, 0xE652, 0x6F5D, 0xE653, 0x6F00, 0xE654, 0x6F61,
- 0xE655, 0x6F6B, 0xE656, 0x6F7D, 0xE657, 0x6F67, 0xE658, 0x6F90,
- 0xE659, 0x6F53, 0xE65A, 0x6F8B, 0xE65B, 0x6F69, 0xE65C, 0x6F7F,
- 0xE65D, 0x6F95, 0xE65E, 0x6F63, 0xE65F, 0x6F77, 0xE660, 0x6F6A,
- 0xE661, 0x6F7B, 0xE662, 0x71B2, 0xE663, 0x71AF, 0xE664, 0x719B,
- 0xE665, 0x71B0, 0xE666, 0x71A0, 0xE667, 0x719A, 0xE668, 0x71A9,
- 0xE669, 0x71B5, 0xE66A, 0x719D, 0xE66B, 0x71A5, 0xE66C, 0x719E,
- 0xE66D, 0x71A4, 0xE66E, 0x71A1, 0xE66F, 0x71AA, 0xE670, 0x719C,
- 0xE671, 0x71A7, 0xE672, 0x71B3, 0xE673, 0x7298, 0xE674, 0x729A,
- 0xE675, 0x7358, 0xE676, 0x7352, 0xE677, 0x735E, 0xE678, 0x735F,
- 0xE679, 0x7360, 0xE67A, 0x735D, 0xE67B, 0x735B, 0xE67C, 0x7361,
- 0xE67D, 0x735A, 0xE67E, 0x7359, 0xE6A1, 0x7362, 0xE6A2, 0x7487,
- 0xE6A3, 0x7489, 0xE6A4, 0x748A, 0xE6A5, 0x7486, 0xE6A6, 0x7481,
- 0xE6A7, 0x747D, 0xE6A8, 0x7485, 0xE6A9, 0x7488, 0xE6AA, 0x747C,
- 0xE6AB, 0x7479, 0xE6AC, 0x7508, 0xE6AD, 0x7507, 0xE6AE, 0x757E,
- 0xE6AF, 0x7625, 0xE6B0, 0x761E, 0xE6B1, 0x7619, 0xE6B2, 0x761D,
- 0xE6B3, 0x761C, 0xE6B4, 0x7623, 0xE6B5, 0x761A, 0xE6B6, 0x7628,
- 0xE6B7, 0x761B, 0xE6B8, 0x769C, 0xE6B9, 0x769D, 0xE6BA, 0x769E,
- 0xE6BB, 0x769B, 0xE6BC, 0x778D, 0xE6BD, 0x778F, 0xE6BE, 0x7789,
- 0xE6BF, 0x7788, 0xE6C0, 0x78CD, 0xE6C1, 0x78BB, 0xE6C2, 0x78CF,
- 0xE6C3, 0x78CC, 0xE6C4, 0x78D1, 0xE6C5, 0x78CE, 0xE6C6, 0x78D4,
- 0xE6C7, 0x78C8, 0xE6C8, 0x78C3, 0xE6C9, 0x78C4, 0xE6CA, 0x78C9,
- 0xE6CB, 0x799A, 0xE6CC, 0x79A1, 0xE6CD, 0x79A0, 0xE6CE, 0x799C,
- 0xE6CF, 0x79A2, 0xE6D0, 0x799B, 0xE6D1, 0x6B76, 0xE6D2, 0x7A39,
- 0xE6D3, 0x7AB2, 0xE6D4, 0x7AB4, 0xE6D5, 0x7AB3, 0xE6D6, 0x7BB7,
- 0xE6D7, 0x7BCB, 0xE6D8, 0x7BBE, 0xE6D9, 0x7BAC, 0xE6DA, 0x7BCE,
- 0xE6DB, 0x7BAF, 0xE6DC, 0x7BB9, 0xE6DD, 0x7BCA, 0xE6DE, 0x7BB5,
- 0xE6DF, 0x7CC5, 0xE6E0, 0x7CC8, 0xE6E1, 0x7CCC, 0xE6E2, 0x7CCB,
- 0xE6E3, 0x7DF7, 0xE6E4, 0x7DDB, 0xE6E5, 0x7DEA, 0xE6E6, 0x7DE7,
- 0xE6E7, 0x7DD7, 0xE6E8, 0x7DE1, 0xE6E9, 0x7E03, 0xE6EA, 0x7DFA,
- 0xE6EB, 0x7DE6, 0xE6EC, 0x7DF6, 0xE6ED, 0x7DF1, 0xE6EE, 0x7DF0,
- 0xE6EF, 0x7DEE, 0xE6F0, 0x7DDF, 0xE6F1, 0x7F76, 0xE6F2, 0x7FAC,
- 0xE6F3, 0x7FB0, 0xE6F4, 0x7FAD, 0xE6F5, 0x7FED, 0xE6F6, 0x7FEB,
- 0xE6F7, 0x7FEA, 0xE6F8, 0x7FEC, 0xE6F9, 0x7FE6, 0xE6FA, 0x7FE8,
- 0xE6FB, 0x8064, 0xE6FC, 0x8067, 0xE6FD, 0x81A3, 0xE6FE, 0x819F,
- 0xE740, 0x819E, 0xE741, 0x8195, 0xE742, 0x81A2, 0xE743, 0x8199,
- 0xE744, 0x8197, 0xE745, 0x8216, 0xE746, 0x824F, 0xE747, 0x8253,
- 0xE748, 0x8252, 0xE749, 0x8250, 0xE74A, 0x824E, 0xE74B, 0x8251,
- 0xE74C, 0x8524, 0xE74D, 0x853B, 0xE74E, 0x850F, 0xE74F, 0x8500,
- 0xE750, 0x8529, 0xE751, 0x850E, 0xE752, 0x8509, 0xE753, 0x850D,
- 0xE754, 0x851F, 0xE755, 0x850A, 0xE756, 0x8527, 0xE757, 0x851C,
- 0xE758, 0x84FB, 0xE759, 0x852B, 0xE75A, 0x84FA, 0xE75B, 0x8508,
- 0xE75C, 0x850C, 0xE75D, 0x84F4, 0xE75E, 0x852A, 0xE75F, 0x84F2,
- 0xE760, 0x8515, 0xE761, 0x84F7, 0xE762, 0x84EB, 0xE763, 0x84F3,
- 0xE764, 0x84FC, 0xE765, 0x8512, 0xE766, 0x84EA, 0xE767, 0x84E9,
- 0xE768, 0x8516, 0xE769, 0x84FE, 0xE76A, 0x8528, 0xE76B, 0x851D,
- 0xE76C, 0x852E, 0xE76D, 0x8502, 0xE76E, 0x84FD, 0xE76F, 0x851E,
- 0xE770, 0x84F6, 0xE771, 0x8531, 0xE772, 0x8526, 0xE773, 0x84E7,
- 0xE774, 0x84E8, 0xE775, 0x84F0, 0xE776, 0x84EF, 0xE777, 0x84F9,
- 0xE778, 0x8518, 0xE779, 0x8520, 0xE77A, 0x8530, 0xE77B, 0x850B,
- 0xE77C, 0x8519, 0xE77D, 0x852F, 0xE77E, 0x8662, 0xE7A1, 0x8756,
- 0xE7A2, 0x8763, 0xE7A3, 0x8764, 0xE7A4, 0x8777, 0xE7A5, 0x87E1,
- 0xE7A6, 0x8773, 0xE7A7, 0x8758, 0xE7A8, 0x8754, 0xE7A9, 0x875B,
- 0xE7AA, 0x8752, 0xE7AB, 0x8761, 0xE7AC, 0x875A, 0xE7AD, 0x8751,
- 0xE7AE, 0x875E, 0xE7AF, 0x876D, 0xE7B0, 0x876A, 0xE7B1, 0x8750,
- 0xE7B2, 0x874E, 0xE7B3, 0x875F, 0xE7B4, 0x875D, 0xE7B5, 0x876F,
- 0xE7B6, 0x876C, 0xE7B7, 0x877A, 0xE7B8, 0x876E, 0xE7B9, 0x875C,
- 0xE7BA, 0x8765, 0xE7BB, 0x874F, 0xE7BC, 0x877B, 0xE7BD, 0x8775,
- 0xE7BE, 0x8762, 0xE7BF, 0x8767, 0xE7C0, 0x8769, 0xE7C1, 0x885A,
- 0xE7C2, 0x8905, 0xE7C3, 0x890C, 0xE7C4, 0x8914, 0xE7C5, 0x890B,
- 0xE7C6, 0x8917, 0xE7C7, 0x8918, 0xE7C8, 0x8919, 0xE7C9, 0x8906,
- 0xE7CA, 0x8916, 0xE7CB, 0x8911, 0xE7CC, 0x890E, 0xE7CD, 0x8909,
- 0xE7CE, 0x89A2, 0xE7CF, 0x89A4, 0xE7D0, 0x89A3, 0xE7D1, 0x89ED,
- 0xE7D2, 0x89F0, 0xE7D3, 0x89EC, 0xE7D4, 0x8ACF, 0xE7D5, 0x8AC6,
- 0xE7D6, 0x8AB8, 0xE7D7, 0x8AD3, 0xE7D8, 0x8AD1, 0xE7D9, 0x8AD4,
- 0xE7DA, 0x8AD5, 0xE7DB, 0x8ABB, 0xE7DC, 0x8AD7, 0xE7DD, 0x8ABE,
- 0xE7DE, 0x8AC0, 0xE7DF, 0x8AC5, 0xE7E0, 0x8AD8, 0xE7E1, 0x8AC3,
- 0xE7E2, 0x8ABA, 0xE7E3, 0x8ABD, 0xE7E4, 0x8AD9, 0xE7E5, 0x8C3E,
- 0xE7E6, 0x8C4D, 0xE7E7, 0x8C8F, 0xE7E8, 0x8CE5, 0xE7E9, 0x8CDF,
- 0xE7EA, 0x8CD9, 0xE7EB, 0x8CE8, 0xE7EC, 0x8CDA, 0xE7ED, 0x8CDD,
- 0xE7EE, 0x8CE7, 0xE7EF, 0x8DA0, 0xE7F0, 0x8D9C, 0xE7F1, 0x8DA1,
- 0xE7F2, 0x8D9B, 0xE7F3, 0x8E20, 0xE7F4, 0x8E23, 0xE7F5, 0x8E25,
- 0xE7F6, 0x8E24, 0xE7F7, 0x8E2E, 0xE7F8, 0x8E15, 0xE7F9, 0x8E1B,
- 0xE7FA, 0x8E16, 0xE7FB, 0x8E11, 0xE7FC, 0x8E19, 0xE7FD, 0x8E26,
- 0xE7FE, 0x8E27, 0xE840, 0x8E14, 0xE841, 0x8E12, 0xE842, 0x8E18,
- 0xE843, 0x8E13, 0xE844, 0x8E1C, 0xE845, 0x8E17, 0xE846, 0x8E1A,
- 0xE847, 0x8F2C, 0xE848, 0x8F24, 0xE849, 0x8F18, 0xE84A, 0x8F1A,
- 0xE84B, 0x8F20, 0xE84C, 0x8F23, 0xE84D, 0x8F16, 0xE84E, 0x8F17,
- 0xE84F, 0x9073, 0xE850, 0x9070, 0xE851, 0x906F, 0xE852, 0x9067,
- 0xE853, 0x906B, 0xE854, 0x912F, 0xE855, 0x912B, 0xE856, 0x9129,
- 0xE857, 0x912A, 0xE858, 0x9132, 0xE859, 0x9126, 0xE85A, 0x912E,
- 0xE85B, 0x9185, 0xE85C, 0x9186, 0xE85D, 0x918A, 0xE85E, 0x9181,
- 0xE85F, 0x9182, 0xE860, 0x9184, 0xE861, 0x9180, 0xE862, 0x92D0,
- 0xE863, 0x92C3, 0xE864, 0x92C4, 0xE865, 0x92C0, 0xE866, 0x92D9,
- 0xE867, 0x92B6, 0xE868, 0x92CF, 0xE869, 0x92F1, 0xE86A, 0x92DF,
- 0xE86B, 0x92D8, 0xE86C, 0x92E9, 0xE86D, 0x92D7, 0xE86E, 0x92DD,
- 0xE86F, 0x92CC, 0xE870, 0x92EF, 0xE871, 0x92C2, 0xE872, 0x92E8,
- 0xE873, 0x92CA, 0xE874, 0x92C8, 0xE875, 0x92CE, 0xE876, 0x92E6,
- 0xE877, 0x92CD, 0xE878, 0x92D5, 0xE879, 0x92C9, 0xE87A, 0x92E0,
- 0xE87B, 0x92DE, 0xE87C, 0x92E7, 0xE87D, 0x92D1, 0xE87E, 0x92D3,
- 0xE8A1, 0x92B5, 0xE8A2, 0x92E1, 0xE8A3, 0x92C6, 0xE8A4, 0x92B4,
- 0xE8A5, 0x957C, 0xE8A6, 0x95AC, 0xE8A7, 0x95AB, 0xE8A8, 0x95AE,
- 0xE8A9, 0x95B0, 0xE8AA, 0x96A4, 0xE8AB, 0x96A2, 0xE8AC, 0x96D3,
- 0xE8AD, 0x9705, 0xE8AE, 0x9708, 0xE8AF, 0x9702, 0xE8B0, 0x975A,
- 0xE8B1, 0x978A, 0xE8B2, 0x978E, 0xE8B3, 0x9788, 0xE8B4, 0x97D0,
- 0xE8B5, 0x97CF, 0xE8B6, 0x981E, 0xE8B7, 0x981D, 0xE8B8, 0x9826,
- 0xE8B9, 0x9829, 0xE8BA, 0x9828, 0xE8BB, 0x9820, 0xE8BC, 0x981B,
- 0xE8BD, 0x9827, 0xE8BE, 0x98B2, 0xE8BF, 0x9908, 0xE8C0, 0x98FA,
- 0xE8C1, 0x9911, 0xE8C2, 0x9914, 0xE8C3, 0x9916, 0xE8C4, 0x9917,
- 0xE8C5, 0x9915, 0xE8C6, 0x99DC, 0xE8C7, 0x99CD, 0xE8C8, 0x99CF,
- 0xE8C9, 0x99D3, 0xE8CA, 0x99D4, 0xE8CB, 0x99CE, 0xE8CC, 0x99C9,
- 0xE8CD, 0x99D6, 0xE8CE, 0x99D8, 0xE8CF, 0x99CB, 0xE8D0, 0x99D7,
- 0xE8D1, 0x99CC, 0xE8D2, 0x9AB3, 0xE8D3, 0x9AEC, 0xE8D4, 0x9AEB,
- 0xE8D5, 0x9AF3, 0xE8D6, 0x9AF2, 0xE8D7, 0x9AF1, 0xE8D8, 0x9B46,
- 0xE8D9, 0x9B43, 0xE8DA, 0x9B67, 0xE8DB, 0x9B74, 0xE8DC, 0x9B71,
- 0xE8DD, 0x9B66, 0xE8DE, 0x9B76, 0xE8DF, 0x9B75, 0xE8E0, 0x9B70,
- 0xE8E1, 0x9B68, 0xE8E2, 0x9B64, 0xE8E3, 0x9B6C, 0xE8E4, 0x9CFC,
- 0xE8E5, 0x9CFA, 0xE8E6, 0x9CFD, 0xE8E7, 0x9CFF, 0xE8E8, 0x9CF7,
- 0xE8E9, 0x9D07, 0xE8EA, 0x9D00, 0xE8EB, 0x9CF9, 0xE8EC, 0x9CFB,
- 0xE8ED, 0x9D08, 0xE8EE, 0x9D05, 0xE8EF, 0x9D04, 0xE8F0, 0x9E83,
- 0xE8F1, 0x9ED3, 0xE8F2, 0x9F0F, 0xE8F3, 0x9F10, 0xE8F4, 0x511C,
- 0xE8F5, 0x5113, 0xE8F6, 0x5117, 0xE8F7, 0x511A, 0xE8F8, 0x5111,
- 0xE8F9, 0x51DE, 0xE8FA, 0x5334, 0xE8FB, 0x53E1, 0xE8FC, 0x5670,
- 0xE8FD, 0x5660, 0xE8FE, 0x566E, 0xE940, 0x5673, 0xE941, 0x5666,
- 0xE942, 0x5663, 0xE943, 0x566D, 0xE944, 0x5672, 0xE945, 0x565E,
- 0xE946, 0x5677, 0xE947, 0x571C, 0xE948, 0x571B, 0xE949, 0x58C8,
- 0xE94A, 0x58BD, 0xE94B, 0x58C9, 0xE94C, 0x58BF, 0xE94D, 0x58BA,
- 0xE94E, 0x58C2, 0xE94F, 0x58BC, 0xE950, 0x58C6, 0xE951, 0x5B17,
- 0xE952, 0x5B19, 0xE953, 0x5B1B, 0xE954, 0x5B21, 0xE955, 0x5B14,
- 0xE956, 0x5B13, 0xE957, 0x5B10, 0xE958, 0x5B16, 0xE959, 0x5B28,
- 0xE95A, 0x5B1A, 0xE95B, 0x5B20, 0xE95C, 0x5B1E, 0xE95D, 0x5BEF,
- 0xE95E, 0x5DAC, 0xE95F, 0x5DB1, 0xE960, 0x5DA9, 0xE961, 0x5DA7,
- 0xE962, 0x5DB5, 0xE963, 0x5DB0, 0xE964, 0x5DAE, 0xE965, 0x5DAA,
- 0xE966, 0x5DA8, 0xE967, 0x5DB2, 0xE968, 0x5DAD, 0xE969, 0x5DAF,
- 0xE96A, 0x5DB4, 0xE96B, 0x5E67, 0xE96C, 0x5E68, 0xE96D, 0x5E66,
- 0xE96E, 0x5E6F, 0xE96F, 0x5EE9, 0xE970, 0x5EE7, 0xE971, 0x5EE6,
- 0xE972, 0x5EE8, 0xE973, 0x5EE5, 0xE974, 0x5F4B, 0xE975, 0x5FBC,
- 0xE976, 0x619D, 0xE977, 0x61A8, 0xE978, 0x6196, 0xE979, 0x61C5,
- 0xE97A, 0x61B4, 0xE97B, 0x61C6, 0xE97C, 0x61C1, 0xE97D, 0x61CC,
- 0xE97E, 0x61BA, 0xE9A1, 0x61BF, 0xE9A2, 0x61B8, 0xE9A3, 0x618C,
- 0xE9A4, 0x64D7, 0xE9A5, 0x64D6, 0xE9A6, 0x64D0, 0xE9A7, 0x64CF,
- 0xE9A8, 0x64C9, 0xE9A9, 0x64BD, 0xE9AA, 0x6489, 0xE9AB, 0x64C3,
- 0xE9AC, 0x64DB, 0xE9AD, 0x64F3, 0xE9AE, 0x64D9, 0xE9AF, 0x6533,
- 0xE9B0, 0x657F, 0xE9B1, 0x657C, 0xE9B2, 0x65A2, 0xE9B3, 0x66C8,
- 0xE9B4, 0x66BE, 0xE9B5, 0x66C0, 0xE9B6, 0x66CA, 0xE9B7, 0x66CB,
- 0xE9B8, 0x66CF, 0xE9B9, 0x66BD, 0xE9BA, 0x66BB, 0xE9BB, 0x66BA,
- 0xE9BC, 0x66CC, 0xE9BD, 0x6723, 0xE9BE, 0x6A34, 0xE9BF, 0x6A66,
- 0xE9C0, 0x6A49, 0xE9C1, 0x6A67, 0xE9C2, 0x6A32, 0xE9C3, 0x6A68,
- 0xE9C4, 0x6A3E, 0xE9C5, 0x6A5D, 0xE9C6, 0x6A6D, 0xE9C7, 0x6A76,
- 0xE9C8, 0x6A5B, 0xE9C9, 0x6A51, 0xE9CA, 0x6A28, 0xE9CB, 0x6A5A,
- 0xE9CC, 0x6A3B, 0xE9CD, 0x6A3F, 0xE9CE, 0x6A41, 0xE9CF, 0x6A6A,
- 0xE9D0, 0x6A64, 0xE9D1, 0x6A50, 0xE9D2, 0x6A4F, 0xE9D3, 0x6A54,
- 0xE9D4, 0x6A6F, 0xE9D5, 0x6A69, 0xE9D6, 0x6A60, 0xE9D7, 0x6A3C,
- 0xE9D8, 0x6A5E, 0xE9D9, 0x6A56, 0xE9DA, 0x6A55, 0xE9DB, 0x6A4D,
- 0xE9DC, 0x6A4E, 0xE9DD, 0x6A46, 0xE9DE, 0x6B55, 0xE9DF, 0x6B54,
- 0xE9E0, 0x6B56, 0xE9E1, 0x6BA7, 0xE9E2, 0x6BAA, 0xE9E3, 0x6BAB,
- 0xE9E4, 0x6BC8, 0xE9E5, 0x6BC7, 0xE9E6, 0x6C04, 0xE9E7, 0x6C03,
- 0xE9E8, 0x6C06, 0xE9E9, 0x6FAD, 0xE9EA, 0x6FCB, 0xE9EB, 0x6FA3,
- 0xE9EC, 0x6FC7, 0xE9ED, 0x6FBC, 0xE9EE, 0x6FCE, 0xE9EF, 0x6FC8,
- 0xE9F0, 0x6F5E, 0xE9F1, 0x6FC4, 0xE9F2, 0x6FBD, 0xE9F3, 0x6F9E,
- 0xE9F4, 0x6FCA, 0xE9F5, 0x6FA8, 0xE9F6, 0x7004, 0xE9F7, 0x6FA5,
- 0xE9F8, 0x6FAE, 0xE9F9, 0x6FBA, 0xE9FA, 0x6FAC, 0xE9FB, 0x6FAA,
- 0xE9FC, 0x6FCF, 0xE9FD, 0x6FBF, 0xE9FE, 0x6FB8, 0xEA40, 0x6FA2,
- 0xEA41, 0x6FC9, 0xEA42, 0x6FAB, 0xEA43, 0x6FCD, 0xEA44, 0x6FAF,
- 0xEA45, 0x6FB2, 0xEA46, 0x6FB0, 0xEA47, 0x71C5, 0xEA48, 0x71C2,
- 0xEA49, 0x71BF, 0xEA4A, 0x71B8, 0xEA4B, 0x71D6, 0xEA4C, 0x71C0,
- 0xEA4D, 0x71C1, 0xEA4E, 0x71CB, 0xEA4F, 0x71D4, 0xEA50, 0x71CA,
- 0xEA51, 0x71C7, 0xEA52, 0x71CF, 0xEA53, 0x71BD, 0xEA54, 0x71D8,
- 0xEA55, 0x71BC, 0xEA56, 0x71C6, 0xEA57, 0x71DA, 0xEA58, 0x71DB,
- 0xEA59, 0x729D, 0xEA5A, 0x729E, 0xEA5B, 0x7369, 0xEA5C, 0x7366,
- 0xEA5D, 0x7367, 0xEA5E, 0x736C, 0xEA5F, 0x7365, 0xEA60, 0x736B,
- 0xEA61, 0x736A, 0xEA62, 0x747F, 0xEA63, 0x749A, 0xEA64, 0x74A0,
- 0xEA65, 0x7494, 0xEA66, 0x7492, 0xEA67, 0x7495, 0xEA68, 0x74A1,
- 0xEA69, 0x750B, 0xEA6A, 0x7580, 0xEA6B, 0x762F, 0xEA6C, 0x762D,
- 0xEA6D, 0x7631, 0xEA6E, 0x763D, 0xEA6F, 0x7633, 0xEA70, 0x763C,
- 0xEA71, 0x7635, 0xEA72, 0x7632, 0xEA73, 0x7630, 0xEA74, 0x76BB,
- 0xEA75, 0x76E6, 0xEA76, 0x779A, 0xEA77, 0x779D, 0xEA78, 0x77A1,
- 0xEA79, 0x779C, 0xEA7A, 0x779B, 0xEA7B, 0x77A2, 0xEA7C, 0x77A3,
- 0xEA7D, 0x7795, 0xEA7E, 0x7799, 0xEAA1, 0x7797, 0xEAA2, 0x78DD,
- 0xEAA3, 0x78E9, 0xEAA4, 0x78E5, 0xEAA5, 0x78EA, 0xEAA6, 0x78DE,
- 0xEAA7, 0x78E3, 0xEAA8, 0x78DB, 0xEAA9, 0x78E1, 0xEAAA, 0x78E2,
- 0xEAAB, 0x78ED, 0xEAAC, 0x78DF, 0xEAAD, 0x78E0, 0xEAAE, 0x79A4,
- 0xEAAF, 0x7A44, 0xEAB0, 0x7A48, 0xEAB1, 0x7A47, 0xEAB2, 0x7AB6,
- 0xEAB3, 0x7AB8, 0xEAB4, 0x7AB5, 0xEAB5, 0x7AB1, 0xEAB6, 0x7AB7,
- 0xEAB7, 0x7BDE, 0xEAB8, 0x7BE3, 0xEAB9, 0x7BE7, 0xEABA, 0x7BDD,
- 0xEABB, 0x7BD5, 0xEABC, 0x7BE5, 0xEABD, 0x7BDA, 0xEABE, 0x7BE8,
- 0xEABF, 0x7BF9, 0xEAC0, 0x7BD4, 0xEAC1, 0x7BEA, 0xEAC2, 0x7BE2,
- 0xEAC3, 0x7BDC, 0xEAC4, 0x7BEB, 0xEAC5, 0x7BD8, 0xEAC6, 0x7BDF,
- 0xEAC7, 0x7CD2, 0xEAC8, 0x7CD4, 0xEAC9, 0x7CD7, 0xEACA, 0x7CD0,
- 0xEACB, 0x7CD1, 0xEACC, 0x7E12, 0xEACD, 0x7E21, 0xEACE, 0x7E17,
- 0xEACF, 0x7E0C, 0xEAD0, 0x7E1F, 0xEAD1, 0x7E20, 0xEAD2, 0x7E13,
- 0xEAD3, 0x7E0E, 0xEAD4, 0x7E1C, 0xEAD5, 0x7E15, 0xEAD6, 0x7E1A,
- 0xEAD7, 0x7E22, 0xEAD8, 0x7E0B, 0xEAD9, 0x7E0F, 0xEADA, 0x7E16,
- 0xEADB, 0x7E0D, 0xEADC, 0x7E14, 0xEADD, 0x7E25, 0xEADE, 0x7E24,
- 0xEADF, 0x7F43, 0xEAE0, 0x7F7B, 0xEAE1, 0x7F7C, 0xEAE2, 0x7F7A,
- 0xEAE3, 0x7FB1, 0xEAE4, 0x7FEF, 0xEAE5, 0x802A, 0xEAE6, 0x8029,
- 0xEAE7, 0x806C, 0xEAE8, 0x81B1, 0xEAE9, 0x81A6, 0xEAEA, 0x81AE,
- 0xEAEB, 0x81B9, 0xEAEC, 0x81B5, 0xEAED, 0x81AB, 0xEAEE, 0x81B0,
- 0xEAEF, 0x81AC, 0xEAF0, 0x81B4, 0xEAF1, 0x81B2, 0xEAF2, 0x81B7,
- 0xEAF3, 0x81A7, 0xEAF4, 0x81F2, 0xEAF5, 0x8255, 0xEAF6, 0x8256,
- 0xEAF7, 0x8257, 0xEAF8, 0x8556, 0xEAF9, 0x8545, 0xEAFA, 0x856B,
- 0xEAFB, 0x854D, 0xEAFC, 0x8553, 0xEAFD, 0x8561, 0xEAFE, 0x8558,
- 0xEB40, 0x8540, 0xEB41, 0x8546, 0xEB42, 0x8564, 0xEB43, 0x8541,
- 0xEB44, 0x8562, 0xEB45, 0x8544, 0xEB46, 0x8551, 0xEB47, 0x8547,
- 0xEB48, 0x8563, 0xEB49, 0x853E, 0xEB4A, 0x855B, 0xEB4B, 0x8571,
- 0xEB4C, 0x854E, 0xEB4D, 0x856E, 0xEB4E, 0x8575, 0xEB4F, 0x8555,
- 0xEB50, 0x8567, 0xEB51, 0x8560, 0xEB52, 0x858C, 0xEB53, 0x8566,
- 0xEB54, 0x855D, 0xEB55, 0x8554, 0xEB56, 0x8565, 0xEB57, 0x856C,
- 0xEB58, 0x8663, 0xEB59, 0x8665, 0xEB5A, 0x8664, 0xEB5B, 0x879B,
- 0xEB5C, 0x878F, 0xEB5D, 0x8797, 0xEB5E, 0x8793, 0xEB5F, 0x8792,
- 0xEB60, 0x8788, 0xEB61, 0x8781, 0xEB62, 0x8796, 0xEB63, 0x8798,
- 0xEB64, 0x8779, 0xEB65, 0x8787, 0xEB66, 0x87A3, 0xEB67, 0x8785,
- 0xEB68, 0x8790, 0xEB69, 0x8791, 0xEB6A, 0x879D, 0xEB6B, 0x8784,
- 0xEB6C, 0x8794, 0xEB6D, 0x879C, 0xEB6E, 0x879A, 0xEB6F, 0x8789,
- 0xEB70, 0x891E, 0xEB71, 0x8926, 0xEB72, 0x8930, 0xEB73, 0x892D,
- 0xEB74, 0x892E, 0xEB75, 0x8927, 0xEB76, 0x8931, 0xEB77, 0x8922,
- 0xEB78, 0x8929, 0xEB79, 0x8923, 0xEB7A, 0x892F, 0xEB7B, 0x892C,
- 0xEB7C, 0x891F, 0xEB7D, 0x89F1, 0xEB7E, 0x8AE0, 0xEBA1, 0x8AE2,
- 0xEBA2, 0x8AF2, 0xEBA3, 0x8AF4, 0xEBA4, 0x8AF5, 0xEBA5, 0x8ADD,
- 0xEBA6, 0x8B14, 0xEBA7, 0x8AE4, 0xEBA8, 0x8ADF, 0xEBA9, 0x8AF0,
- 0xEBAA, 0x8AC8, 0xEBAB, 0x8ADE, 0xEBAC, 0x8AE1, 0xEBAD, 0x8AE8,
- 0xEBAE, 0x8AFF, 0xEBAF, 0x8AEF, 0xEBB0, 0x8AFB, 0xEBB1, 0x8C91,
- 0xEBB2, 0x8C92, 0xEBB3, 0x8C90, 0xEBB4, 0x8CF5, 0xEBB5, 0x8CEE,
- 0xEBB6, 0x8CF1, 0xEBB7, 0x8CF0, 0xEBB8, 0x8CF3, 0xEBB9, 0x8D6C,
- 0xEBBA, 0x8D6E, 0xEBBB, 0x8DA5, 0xEBBC, 0x8DA7, 0xEBBD, 0x8E33,
- 0xEBBE, 0x8E3E, 0xEBBF, 0x8E38, 0xEBC0, 0x8E40, 0xEBC1, 0x8E45,
- 0xEBC2, 0x8E36, 0xEBC3, 0x8E3C, 0xEBC4, 0x8E3D, 0xEBC5, 0x8E41,
- 0xEBC6, 0x8E30, 0xEBC7, 0x8E3F, 0xEBC8, 0x8EBD, 0xEBC9, 0x8F36,
- 0xEBCA, 0x8F2E, 0xEBCB, 0x8F35, 0xEBCC, 0x8F32, 0xEBCD, 0x8F39,
- 0xEBCE, 0x8F37, 0xEBCF, 0x8F34, 0xEBD0, 0x9076, 0xEBD1, 0x9079,
- 0xEBD2, 0x907B, 0xEBD3, 0x9086, 0xEBD4, 0x90FA, 0xEBD5, 0x9133,
- 0xEBD6, 0x9135, 0xEBD7, 0x9136, 0xEBD8, 0x9193, 0xEBD9, 0x9190,
- 0xEBDA, 0x9191, 0xEBDB, 0x918D, 0xEBDC, 0x918F, 0xEBDD, 0x9327,
- 0xEBDE, 0x931E, 0xEBDF, 0x9308, 0xEBE0, 0x931F, 0xEBE1, 0x9306,
- 0xEBE2, 0x930F, 0xEBE3, 0x937A, 0xEBE4, 0x9338, 0xEBE5, 0x933C,
- 0xEBE6, 0x931B, 0xEBE7, 0x9323, 0xEBE8, 0x9312, 0xEBE9, 0x9301,
- 0xEBEA, 0x9346, 0xEBEB, 0x932D, 0xEBEC, 0x930E, 0xEBED, 0x930D,
- 0xEBEE, 0x92CB, 0xEBEF, 0x931D, 0xEBF0, 0x92FA, 0xEBF1, 0x9325,
- 0xEBF2, 0x9313, 0xEBF3, 0x92F9, 0xEBF4, 0x92F7, 0xEBF5, 0x9334,
- 0xEBF6, 0x9302, 0xEBF7, 0x9324, 0xEBF8, 0x92FF, 0xEBF9, 0x9329,
- 0xEBFA, 0x9339, 0xEBFB, 0x9335, 0xEBFC, 0x932A, 0xEBFD, 0x9314,
- 0xEBFE, 0x930C, 0xEC40, 0x930B, 0xEC41, 0x92FE, 0xEC42, 0x9309,
- 0xEC43, 0x9300, 0xEC44, 0x92FB, 0xEC45, 0x9316, 0xEC46, 0x95BC,
- 0xEC47, 0x95CD, 0xEC48, 0x95BE, 0xEC49, 0x95B9, 0xEC4A, 0x95BA,
- 0xEC4B, 0x95B6, 0xEC4C, 0x95BF, 0xEC4D, 0x95B5, 0xEC4E, 0x95BD,
- 0xEC4F, 0x96A9, 0xEC50, 0x96D4, 0xEC51, 0x970B, 0xEC52, 0x9712,
- 0xEC53, 0x9710, 0xEC54, 0x9799, 0xEC55, 0x9797, 0xEC56, 0x9794,
- 0xEC57, 0x97F0, 0xEC58, 0x97F8, 0xEC59, 0x9835, 0xEC5A, 0x982F,
- 0xEC5B, 0x9832, 0xEC5C, 0x9924, 0xEC5D, 0x991F, 0xEC5E, 0x9927,
- 0xEC5F, 0x9929, 0xEC60, 0x999E, 0xEC61, 0x99EE, 0xEC62, 0x99EC,
- 0xEC63, 0x99E5, 0xEC64, 0x99E4, 0xEC65, 0x99F0, 0xEC66, 0x99E3,
- 0xEC67, 0x99EA, 0xEC68, 0x99E9, 0xEC69, 0x99E7, 0xEC6A, 0x9AB9,
- 0xEC6B, 0x9ABF, 0xEC6C, 0x9AB4, 0xEC6D, 0x9ABB, 0xEC6E, 0x9AF6,
- 0xEC6F, 0x9AFA, 0xEC70, 0x9AF9, 0xEC71, 0x9AF7, 0xEC72, 0x9B33,
- 0xEC73, 0x9B80, 0xEC74, 0x9B85, 0xEC75, 0x9B87, 0xEC76, 0x9B7C,
- 0xEC77, 0x9B7E, 0xEC78, 0x9B7B, 0xEC79, 0x9B82, 0xEC7A, 0x9B93,
- 0xEC7B, 0x9B92, 0xEC7C, 0x9B90, 0xEC7D, 0x9B7A, 0xEC7E, 0x9B95,
- 0xECA1, 0x9B7D, 0xECA2, 0x9B88, 0xECA3, 0x9D25, 0xECA4, 0x9D17,
- 0xECA5, 0x9D20, 0xECA6, 0x9D1E, 0xECA7, 0x9D14, 0xECA8, 0x9D29,
- 0xECA9, 0x9D1D, 0xECAA, 0x9D18, 0xECAB, 0x9D22, 0xECAC, 0x9D10,
- 0xECAD, 0x9D19, 0xECAE, 0x9D1F, 0xECAF, 0x9E88, 0xECB0, 0x9E86,
- 0xECB1, 0x9E87, 0xECB2, 0x9EAE, 0xECB3, 0x9EAD, 0xECB4, 0x9ED5,
- 0xECB5, 0x9ED6, 0xECB6, 0x9EFA, 0xECB7, 0x9F12, 0xECB8, 0x9F3D,
- 0xECB9, 0x5126, 0xECBA, 0x5125, 0xECBB, 0x5122, 0xECBC, 0x5124,
- 0xECBD, 0x5120, 0xECBE, 0x5129, 0xECBF, 0x52F4, 0xECC0, 0x5693,
- 0xECC1, 0x568C, 0xECC2, 0x568D, 0xECC3, 0x5686, 0xECC4, 0x5684,
- 0xECC5, 0x5683, 0xECC6, 0x567E, 0xECC7, 0x5682, 0xECC8, 0x567F,
- 0xECC9, 0x5681, 0xECCA, 0x58D6, 0xECCB, 0x58D4, 0xECCC, 0x58CF,
- 0xECCD, 0x58D2, 0xECCE, 0x5B2D, 0xECCF, 0x5B25, 0xECD0, 0x5B32,
- 0xECD1, 0x5B23, 0xECD2, 0x5B2C, 0xECD3, 0x5B27, 0xECD4, 0x5B26,
- 0xECD5, 0x5B2F, 0xECD6, 0x5B2E, 0xECD7, 0x5B7B, 0xECD8, 0x5BF1,
- 0xECD9, 0x5BF2, 0xECDA, 0x5DB7, 0xECDB, 0x5E6C, 0xECDC, 0x5E6A,
- 0xECDD, 0x5FBE, 0xECDE, 0x5FBB, 0xECDF, 0x61C3, 0xECE0, 0x61B5,
- 0xECE1, 0x61BC, 0xECE2, 0x61E7, 0xECE3, 0x61E0, 0xECE4, 0x61E5,
- 0xECE5, 0x61E4, 0xECE6, 0x61E8, 0xECE7, 0x61DE, 0xECE8, 0x64EF,
- 0xECE9, 0x64E9, 0xECEA, 0x64E3, 0xECEB, 0x64EB, 0xECEC, 0x64E4,
- 0xECED, 0x64E8, 0xECEE, 0x6581, 0xECEF, 0x6580, 0xECF0, 0x65B6,
- 0xECF1, 0x65DA, 0xECF2, 0x66D2, 0xECF3, 0x6A8D, 0xECF4, 0x6A96,
- 0xECF5, 0x6A81, 0xECF6, 0x6AA5, 0xECF7, 0x6A89, 0xECF8, 0x6A9F,
- 0xECF9, 0x6A9B, 0xECFA, 0x6AA1, 0xECFB, 0x6A9E, 0xECFC, 0x6A87,
- 0xECFD, 0x6A93, 0xECFE, 0x6A8E, 0xED40, 0x6A95, 0xED41, 0x6A83,
- 0xED42, 0x6AA8, 0xED43, 0x6AA4, 0xED44, 0x6A91, 0xED45, 0x6A7F,
- 0xED46, 0x6AA6, 0xED47, 0x6A9A, 0xED48, 0x6A85, 0xED49, 0x6A8C,
- 0xED4A, 0x6A92, 0xED4B, 0x6B5B, 0xED4C, 0x6BAD, 0xED4D, 0x6C09,
- 0xED4E, 0x6FCC, 0xED4F, 0x6FA9, 0xED50, 0x6FF4, 0xED51, 0x6FD4,
- 0xED52, 0x6FE3, 0xED53, 0x6FDC, 0xED54, 0x6FED, 0xED55, 0x6FE7,
- 0xED56, 0x6FE6, 0xED57, 0x6FDE, 0xED58, 0x6FF2, 0xED59, 0x6FDD,
- 0xED5A, 0x6FE2, 0xED5B, 0x6FE8, 0xED5C, 0x71E1, 0xED5D, 0x71F1,
- 0xED5E, 0x71E8, 0xED5F, 0x71F2, 0xED60, 0x71E4, 0xED61, 0x71F0,
- 0xED62, 0x71E2, 0xED63, 0x7373, 0xED64, 0x736E, 0xED65, 0x736F,
- 0xED66, 0x7497, 0xED67, 0x74B2, 0xED68, 0x74AB, 0xED69, 0x7490,
- 0xED6A, 0x74AA, 0xED6B, 0x74AD, 0xED6C, 0x74B1, 0xED6D, 0x74A5,
- 0xED6E, 0x74AF, 0xED6F, 0x7510, 0xED70, 0x7511, 0xED71, 0x7512,
- 0xED72, 0x750F, 0xED73, 0x7584, 0xED74, 0x7643, 0xED75, 0x7648,
- 0xED76, 0x7649, 0xED77, 0x7647, 0xED78, 0x76A4, 0xED79, 0x76E9,
- 0xED7A, 0x77B5, 0xED7B, 0x77AB, 0xED7C, 0x77B2, 0xED7D, 0x77B7,
- 0xED7E, 0x77B6, 0xEDA1, 0x77B4, 0xEDA2, 0x77B1, 0xEDA3, 0x77A8,
- 0xEDA4, 0x77F0, 0xEDA5, 0x78F3, 0xEDA6, 0x78FD, 0xEDA7, 0x7902,
- 0xEDA8, 0x78FB, 0xEDA9, 0x78FC, 0xEDAA, 0x78F2, 0xEDAB, 0x7905,
- 0xEDAC, 0x78F9, 0xEDAD, 0x78FE, 0xEDAE, 0x7904, 0xEDAF, 0x79AB,
- 0xEDB0, 0x79A8, 0xEDB1, 0x7A5C, 0xEDB2, 0x7A5B, 0xEDB3, 0x7A56,
- 0xEDB4, 0x7A58, 0xEDB5, 0x7A54, 0xEDB6, 0x7A5A, 0xEDB7, 0x7ABE,
- 0xEDB8, 0x7AC0, 0xEDB9, 0x7AC1, 0xEDBA, 0x7C05, 0xEDBB, 0x7C0F,
- 0xEDBC, 0x7BF2, 0xEDBD, 0x7C00, 0xEDBE, 0x7BFF, 0xEDBF, 0x7BFB,
- 0xEDC0, 0x7C0E, 0xEDC1, 0x7BF4, 0xEDC2, 0x7C0B, 0xEDC3, 0x7BF3,
- 0xEDC4, 0x7C02, 0xEDC5, 0x7C09, 0xEDC6, 0x7C03, 0xEDC7, 0x7C01,
- 0xEDC8, 0x7BF8, 0xEDC9, 0x7BFD, 0xEDCA, 0x7C06, 0xEDCB, 0x7BF0,
- 0xEDCC, 0x7BF1, 0xEDCD, 0x7C10, 0xEDCE, 0x7C0A, 0xEDCF, 0x7CE8,
- 0xEDD0, 0x7E2D, 0xEDD1, 0x7E3C, 0xEDD2, 0x7E42, 0xEDD3, 0x7E33,
- 0xEDD4, 0x9848, 0xEDD5, 0x7E38, 0xEDD6, 0x7E2A, 0xEDD7, 0x7E49,
- 0xEDD8, 0x7E40, 0xEDD9, 0x7E47, 0xEDDA, 0x7E29, 0xEDDB, 0x7E4C,
- 0xEDDC, 0x7E30, 0xEDDD, 0x7E3B, 0xEDDE, 0x7E36, 0xEDDF, 0x7E44,
- 0xEDE0, 0x7E3A, 0xEDE1, 0x7F45, 0xEDE2, 0x7F7F, 0xEDE3, 0x7F7E,
- 0xEDE4, 0x7F7D, 0xEDE5, 0x7FF4, 0xEDE6, 0x7FF2, 0xEDE7, 0x802C,
- 0xEDE8, 0x81BB, 0xEDE9, 0x81C4, 0xEDEA, 0x81CC, 0xEDEB, 0x81CA,
- 0xEDEC, 0x81C5, 0xEDED, 0x81C7, 0xEDEE, 0x81BC, 0xEDEF, 0x81E9,
- 0xEDF0, 0x825B, 0xEDF1, 0x825A, 0xEDF2, 0x825C, 0xEDF3, 0x8583,
- 0xEDF4, 0x8580, 0xEDF5, 0x858F, 0xEDF6, 0x85A7, 0xEDF7, 0x8595,
- 0xEDF8, 0x85A0, 0xEDF9, 0x858B, 0xEDFA, 0x85A3, 0xEDFB, 0x857B,
- 0xEDFC, 0x85A4, 0xEDFD, 0x859A, 0xEDFE, 0x859E, 0xEE40, 0x8577,
- 0xEE41, 0x857C, 0xEE42, 0x8589, 0xEE43, 0x85A1, 0xEE44, 0x857A,
- 0xEE45, 0x8578, 0xEE46, 0x8557, 0xEE47, 0x858E, 0xEE48, 0x8596,
- 0xEE49, 0x8586, 0xEE4A, 0x858D, 0xEE4B, 0x8599, 0xEE4C, 0x859D,
- 0xEE4D, 0x8581, 0xEE4E, 0x85A2, 0xEE4F, 0x8582, 0xEE50, 0x8588,
- 0xEE51, 0x8585, 0xEE52, 0x8579, 0xEE53, 0x8576, 0xEE54, 0x8598,
- 0xEE55, 0x8590, 0xEE56, 0x859F, 0xEE57, 0x8668, 0xEE58, 0x87BE,
- 0xEE59, 0x87AA, 0xEE5A, 0x87AD, 0xEE5B, 0x87C5, 0xEE5C, 0x87B0,
- 0xEE5D, 0x87AC, 0xEE5E, 0x87B9, 0xEE5F, 0x87B5, 0xEE60, 0x87BC,
- 0xEE61, 0x87AE, 0xEE62, 0x87C9, 0xEE63, 0x87C3, 0xEE64, 0x87C2,
- 0xEE65, 0x87CC, 0xEE66, 0x87B7, 0xEE67, 0x87AF, 0xEE68, 0x87C4,
- 0xEE69, 0x87CA, 0xEE6A, 0x87B4, 0xEE6B, 0x87B6, 0xEE6C, 0x87BF,
- 0xEE6D, 0x87B8, 0xEE6E, 0x87BD, 0xEE6F, 0x87DE, 0xEE70, 0x87B2,
- 0xEE71, 0x8935, 0xEE72, 0x8933, 0xEE73, 0x893C, 0xEE74, 0x893E,
- 0xEE75, 0x8941, 0xEE76, 0x8952, 0xEE77, 0x8937, 0xEE78, 0x8942,
- 0xEE79, 0x89AD, 0xEE7A, 0x89AF, 0xEE7B, 0x89AE, 0xEE7C, 0x89F2,
- 0xEE7D, 0x89F3, 0xEE7E, 0x8B1E, 0xEEA1, 0x8B18, 0xEEA2, 0x8B16,
- 0xEEA3, 0x8B11, 0xEEA4, 0x8B05, 0xEEA5, 0x8B0B, 0xEEA6, 0x8B22,
- 0xEEA7, 0x8B0F, 0xEEA8, 0x8B12, 0xEEA9, 0x8B15, 0xEEAA, 0x8B07,
- 0xEEAB, 0x8B0D, 0xEEAC, 0x8B08, 0xEEAD, 0x8B06, 0xEEAE, 0x8B1C,
- 0xEEAF, 0x8B13, 0xEEB0, 0x8B1A, 0xEEB1, 0x8C4F, 0xEEB2, 0x8C70,
- 0xEEB3, 0x8C72, 0xEEB4, 0x8C71, 0xEEB5, 0x8C6F, 0xEEB6, 0x8C95,
- 0xEEB7, 0x8C94, 0xEEB8, 0x8CF9, 0xEEB9, 0x8D6F, 0xEEBA, 0x8E4E,
- 0xEEBB, 0x8E4D, 0xEEBC, 0x8E53, 0xEEBD, 0x8E50, 0xEEBE, 0x8E4C,
- 0xEEBF, 0x8E47, 0xEEC0, 0x8F43, 0xEEC1, 0x8F40, 0xEEC2, 0x9085,
- 0xEEC3, 0x907E, 0xEEC4, 0x9138, 0xEEC5, 0x919A, 0xEEC6, 0x91A2,
- 0xEEC7, 0x919B, 0xEEC8, 0x9199, 0xEEC9, 0x919F, 0xEECA, 0x91A1,
- 0xEECB, 0x919D, 0xEECC, 0x91A0, 0xEECD, 0x93A1, 0xEECE, 0x9383,
- 0xEECF, 0x93AF, 0xEED0, 0x9364, 0xEED1, 0x9356, 0xEED2, 0x9347,
- 0xEED3, 0x937C, 0xEED4, 0x9358, 0xEED5, 0x935C, 0xEED6, 0x9376,
- 0xEED7, 0x9349, 0xEED8, 0x9350, 0xEED9, 0x9351, 0xEEDA, 0x9360,
- 0xEEDB, 0x936D, 0xEEDC, 0x938F, 0xEEDD, 0x934C, 0xEEDE, 0x936A,
- 0xEEDF, 0x9379, 0xEEE0, 0x9357, 0xEEE1, 0x9355, 0xEEE2, 0x9352,
- 0xEEE3, 0x934F, 0xEEE4, 0x9371, 0xEEE5, 0x9377, 0xEEE6, 0x937B,
- 0xEEE7, 0x9361, 0xEEE8, 0x935E, 0xEEE9, 0x9363, 0xEEEA, 0x9367,
- 0xEEEB, 0x9380, 0xEEEC, 0x934E, 0xEEED, 0x9359, 0xEEEE, 0x95C7,
- 0xEEEF, 0x95C0, 0xEEF0, 0x95C9, 0xEEF1, 0x95C3, 0xEEF2, 0x95C5,
- 0xEEF3, 0x95B7, 0xEEF4, 0x96AE, 0xEEF5, 0x96B0, 0xEEF6, 0x96AC,
- 0xEEF7, 0x9720, 0xEEF8, 0x971F, 0xEEF9, 0x9718, 0xEEFA, 0x971D,
- 0xEEFB, 0x9719, 0xEEFC, 0x979A, 0xEEFD, 0x97A1, 0xEEFE, 0x979C,
- 0xEF40, 0x979E, 0xEF41, 0x979D, 0xEF42, 0x97D5, 0xEF43, 0x97D4,
- 0xEF44, 0x97F1, 0xEF45, 0x9841, 0xEF46, 0x9844, 0xEF47, 0x984A,
- 0xEF48, 0x9849, 0xEF49, 0x9845, 0xEF4A, 0x9843, 0xEF4B, 0x9925,
- 0xEF4C, 0x992B, 0xEF4D, 0x992C, 0xEF4E, 0x992A, 0xEF4F, 0x9933,
- 0xEF50, 0x9932, 0xEF51, 0x992F, 0xEF52, 0x992D, 0xEF53, 0x9931,
- 0xEF54, 0x9930, 0xEF55, 0x9998, 0xEF56, 0x99A3, 0xEF57, 0x99A1,
- 0xEF58, 0x9A02, 0xEF59, 0x99FA, 0xEF5A, 0x99F4, 0xEF5B, 0x99F7,
- 0xEF5C, 0x99F9, 0xEF5D, 0x99F8, 0xEF5E, 0x99F6, 0xEF5F, 0x99FB,
- 0xEF60, 0x99FD, 0xEF61, 0x99FE, 0xEF62, 0x99FC, 0xEF63, 0x9A03,
- 0xEF64, 0x9ABE, 0xEF65, 0x9AFE, 0xEF66, 0x9AFD, 0xEF67, 0x9B01,
- 0xEF68, 0x9AFC, 0xEF69, 0x9B48, 0xEF6A, 0x9B9A, 0xEF6B, 0x9BA8,
- 0xEF6C, 0x9B9E, 0xEF6D, 0x9B9B, 0xEF6E, 0x9BA6, 0xEF6F, 0x9BA1,
- 0xEF70, 0x9BA5, 0xEF71, 0x9BA4, 0xEF72, 0x9B86, 0xEF73, 0x9BA2,
- 0xEF74, 0x9BA0, 0xEF75, 0x9BAF, 0xEF76, 0x9D33, 0xEF77, 0x9D41,
- 0xEF78, 0x9D67, 0xEF79, 0x9D36, 0xEF7A, 0x9D2E, 0xEF7B, 0x9D2F,
- 0xEF7C, 0x9D31, 0xEF7D, 0x9D38, 0xEF7E, 0x9D30, 0xEFA1, 0x9D45,
- 0xEFA2, 0x9D42, 0xEFA3, 0x9D43, 0xEFA4, 0x9D3E, 0xEFA5, 0x9D37,
- 0xEFA6, 0x9D40, 0xEFA7, 0x9D3D, 0xEFA8, 0x7FF5, 0xEFA9, 0x9D2D,
- 0xEFAA, 0x9E8A, 0xEFAB, 0x9E89, 0xEFAC, 0x9E8D, 0xEFAD, 0x9EB0,
- 0xEFAE, 0x9EC8, 0xEFAF, 0x9EDA, 0xEFB0, 0x9EFB, 0xEFB1, 0x9EFF,
- 0xEFB2, 0x9F24, 0xEFB3, 0x9F23, 0xEFB4, 0x9F22, 0xEFB5, 0x9F54,
- 0xEFB6, 0x9FA0, 0xEFB7, 0x5131, 0xEFB8, 0x512D, 0xEFB9, 0x512E,
- 0xEFBA, 0x5698, 0xEFBB, 0x569C, 0xEFBC, 0x5697, 0xEFBD, 0x569A,
- 0xEFBE, 0x569D, 0xEFBF, 0x5699, 0xEFC0, 0x5970, 0xEFC1, 0x5B3C,
- 0xEFC2, 0x5C69, 0xEFC3, 0x5C6A, 0xEFC4, 0x5DC0, 0xEFC5, 0x5E6D,
- 0xEFC6, 0x5E6E, 0xEFC7, 0x61D8, 0xEFC8, 0x61DF, 0xEFC9, 0x61ED,
- 0xEFCA, 0x61EE, 0xEFCB, 0x61F1, 0xEFCC, 0x61EA, 0xEFCD, 0x61F0,
- 0xEFCE, 0x61EB, 0xEFCF, 0x61D6, 0xEFD0, 0x61E9, 0xEFD1, 0x64FF,
- 0xEFD2, 0x6504, 0xEFD3, 0x64FD, 0xEFD4, 0x64F8, 0xEFD5, 0x6501,
- 0xEFD6, 0x6503, 0xEFD7, 0x64FC, 0xEFD8, 0x6594, 0xEFD9, 0x65DB,
- 0xEFDA, 0x66DA, 0xEFDB, 0x66DB, 0xEFDC, 0x66D8, 0xEFDD, 0x6AC5,
- 0xEFDE, 0x6AB9, 0xEFDF, 0x6ABD, 0xEFE0, 0x6AE1, 0xEFE1, 0x6AC6,
- 0xEFE2, 0x6ABA, 0xEFE3, 0x6AB6, 0xEFE4, 0x6AB7, 0xEFE5, 0x6AC7,
- 0xEFE6, 0x6AB4, 0xEFE7, 0x6AAD, 0xEFE8, 0x6B5E, 0xEFE9, 0x6BC9,
- 0xEFEA, 0x6C0B, 0xEFEB, 0x7007, 0xEFEC, 0x700C, 0xEFED, 0x700D,
- 0xEFEE, 0x7001, 0xEFEF, 0x7005, 0xEFF0, 0x7014, 0xEFF1, 0x700E,
- 0xEFF2, 0x6FFF, 0xEFF3, 0x7000, 0xEFF4, 0x6FFB, 0xEFF5, 0x7026,
- 0xEFF6, 0x6FFC, 0xEFF7, 0x6FF7, 0xEFF8, 0x700A, 0xEFF9, 0x7201,
- 0xEFFA, 0x71FF, 0xEFFB, 0x71F9, 0xEFFC, 0x7203, 0xEFFD, 0x71FD,
- 0xEFFE, 0x7376, 0xF040, 0x74B8, 0xF041, 0x74C0, 0xF042, 0x74B5,
- 0xF043, 0x74C1, 0xF044, 0x74BE, 0xF045, 0x74B6, 0xF046, 0x74BB,
- 0xF047, 0x74C2, 0xF048, 0x7514, 0xF049, 0x7513, 0xF04A, 0x765C,
- 0xF04B, 0x7664, 0xF04C, 0x7659, 0xF04D, 0x7650, 0xF04E, 0x7653,
- 0xF04F, 0x7657, 0xF050, 0x765A, 0xF051, 0x76A6, 0xF052, 0x76BD,
- 0xF053, 0x76EC, 0xF054, 0x77C2, 0xF055, 0x77BA, 0xF056, 0x78FF,
- 0xF057, 0x790C, 0xF058, 0x7913, 0xF059, 0x7914, 0xF05A, 0x7909,
- 0xF05B, 0x7910, 0xF05C, 0x7912, 0xF05D, 0x7911, 0xF05E, 0x79AD,
- 0xF05F, 0x79AC, 0xF060, 0x7A5F, 0xF061, 0x7C1C, 0xF062, 0x7C29,
- 0xF063, 0x7C19, 0xF064, 0x7C20, 0xF065, 0x7C1F, 0xF066, 0x7C2D,
- 0xF067, 0x7C1D, 0xF068, 0x7C26, 0xF069, 0x7C28, 0xF06A, 0x7C22,
- 0xF06B, 0x7C25, 0xF06C, 0x7C30, 0xF06D, 0x7E5C, 0xF06E, 0x7E50,
- 0xF06F, 0x7E56, 0xF070, 0x7E63, 0xF071, 0x7E58, 0xF072, 0x7E62,
- 0xF073, 0x7E5F, 0xF074, 0x7E51, 0xF075, 0x7E60, 0xF076, 0x7E57,
- 0xF077, 0x7E53, 0xF078, 0x7FB5, 0xF079, 0x7FB3, 0xF07A, 0x7FF7,
- 0xF07B, 0x7FF8, 0xF07C, 0x8075, 0xF07D, 0x81D1, 0xF07E, 0x81D2,
- 0xF0A1, 0x81D0, 0xF0A2, 0x825F, 0xF0A3, 0x825E, 0xF0A4, 0x85B4,
- 0xF0A5, 0x85C6, 0xF0A6, 0x85C0, 0xF0A7, 0x85C3, 0xF0A8, 0x85C2,
- 0xF0A9, 0x85B3, 0xF0AA, 0x85B5, 0xF0AB, 0x85BD, 0xF0AC, 0x85C7,
- 0xF0AD, 0x85C4, 0xF0AE, 0x85BF, 0xF0AF, 0x85CB, 0xF0B0, 0x85CE,
- 0xF0B1, 0x85C8, 0xF0B2, 0x85C5, 0xF0B3, 0x85B1, 0xF0B4, 0x85B6,
- 0xF0B5, 0x85D2, 0xF0B6, 0x8624, 0xF0B7, 0x85B8, 0xF0B8, 0x85B7,
- 0xF0B9, 0x85BE, 0xF0BA, 0x8669, 0xF0BB, 0x87E7, 0xF0BC, 0x87E6,
- 0xF0BD, 0x87E2, 0xF0BE, 0x87DB, 0xF0BF, 0x87EB, 0xF0C0, 0x87EA,
- 0xF0C1, 0x87E5, 0xF0C2, 0x87DF, 0xF0C3, 0x87F3, 0xF0C4, 0x87E4,
- 0xF0C5, 0x87D4, 0xF0C6, 0x87DC, 0xF0C7, 0x87D3, 0xF0C8, 0x87ED,
- 0xF0C9, 0x87D8, 0xF0CA, 0x87E3, 0xF0CB, 0x87A4, 0xF0CC, 0x87D7,
- 0xF0CD, 0x87D9, 0xF0CE, 0x8801, 0xF0CF, 0x87F4, 0xF0D0, 0x87E8,
- 0xF0D1, 0x87DD, 0xF0D2, 0x8953, 0xF0D3, 0x894B, 0xF0D4, 0x894F,
- 0xF0D5, 0x894C, 0xF0D6, 0x8946, 0xF0D7, 0x8950, 0xF0D8, 0x8951,
- 0xF0D9, 0x8949, 0xF0DA, 0x8B2A, 0xF0DB, 0x8B27, 0xF0DC, 0x8B23,
- 0xF0DD, 0x8B33, 0xF0DE, 0x8B30, 0xF0DF, 0x8B35, 0xF0E0, 0x8B47,
- 0xF0E1, 0x8B2F, 0xF0E2, 0x8B3C, 0xF0E3, 0x8B3E, 0xF0E4, 0x8B31,
- 0xF0E5, 0x8B25, 0xF0E6, 0x8B37, 0xF0E7, 0x8B26, 0xF0E8, 0x8B36,
- 0xF0E9, 0x8B2E, 0xF0EA, 0x8B24, 0xF0EB, 0x8B3B, 0xF0EC, 0x8B3D,
- 0xF0ED, 0x8B3A, 0xF0EE, 0x8C42, 0xF0EF, 0x8C75, 0xF0F0, 0x8C99,
- 0xF0F1, 0x8C98, 0xF0F2, 0x8C97, 0xF0F3, 0x8CFE, 0xF0F4, 0x8D04,
- 0xF0F5, 0x8D02, 0xF0F6, 0x8D00, 0xF0F7, 0x8E5C, 0xF0F8, 0x8E62,
- 0xF0F9, 0x8E60, 0xF0FA, 0x8E57, 0xF0FB, 0x8E56, 0xF0FC, 0x8E5E,
- 0xF0FD, 0x8E65, 0xF0FE, 0x8E67, 0xF140, 0x8E5B, 0xF141, 0x8E5A,
- 0xF142, 0x8E61, 0xF143, 0x8E5D, 0xF144, 0x8E69, 0xF145, 0x8E54,
- 0xF146, 0x8F46, 0xF147, 0x8F47, 0xF148, 0x8F48, 0xF149, 0x8F4B,
- 0xF14A, 0x9128, 0xF14B, 0x913A, 0xF14C, 0x913B, 0xF14D, 0x913E,
- 0xF14E, 0x91A8, 0xF14F, 0x91A5, 0xF150, 0x91A7, 0xF151, 0x91AF,
- 0xF152, 0x91AA, 0xF153, 0x93B5, 0xF154, 0x938C, 0xF155, 0x9392,
- 0xF156, 0x93B7, 0xF157, 0x939B, 0xF158, 0x939D, 0xF159, 0x9389,
- 0xF15A, 0x93A7, 0xF15B, 0x938E, 0xF15C, 0x93AA, 0xF15D, 0x939E,
- 0xF15E, 0x93A6, 0xF15F, 0x9395, 0xF160, 0x9388, 0xF161, 0x9399,
- 0xF162, 0x939F, 0xF163, 0x938D, 0xF164, 0x93B1, 0xF165, 0x9391,
- 0xF166, 0x93B2, 0xF167, 0x93A4, 0xF168, 0x93A8, 0xF169, 0x93B4,
- 0xF16A, 0x93A3, 0xF16B, 0x93A5, 0xF16C, 0x95D2, 0xF16D, 0x95D3,
- 0xF16E, 0x95D1, 0xF16F, 0x96B3, 0xF170, 0x96D7, 0xF171, 0x96DA,
- 0xF172, 0x5DC2, 0xF173, 0x96DF, 0xF174, 0x96D8, 0xF175, 0x96DD,
- 0xF176, 0x9723, 0xF177, 0x9722, 0xF178, 0x9725, 0xF179, 0x97AC,
- 0xF17A, 0x97AE, 0xF17B, 0x97A8, 0xF17C, 0x97AB, 0xF17D, 0x97A4,
- 0xF17E, 0x97AA, 0xF1A1, 0x97A2, 0xF1A2, 0x97A5, 0xF1A3, 0x97D7,
- 0xF1A4, 0x97D9, 0xF1A5, 0x97D6, 0xF1A6, 0x97D8, 0xF1A7, 0x97FA,
- 0xF1A8, 0x9850, 0xF1A9, 0x9851, 0xF1AA, 0x9852, 0xF1AB, 0x98B8,
- 0xF1AC, 0x9941, 0xF1AD, 0x993C, 0xF1AE, 0x993A, 0xF1AF, 0x9A0F,
- 0xF1B0, 0x9A0B, 0xF1B1, 0x9A09, 0xF1B2, 0x9A0D, 0xF1B3, 0x9A04,
- 0xF1B4, 0x9A11, 0xF1B5, 0x9A0A, 0xF1B6, 0x9A05, 0xF1B7, 0x9A07,
- 0xF1B8, 0x9A06, 0xF1B9, 0x9AC0, 0xF1BA, 0x9ADC, 0xF1BB, 0x9B08,
- 0xF1BC, 0x9B04, 0xF1BD, 0x9B05, 0xF1BE, 0x9B29, 0xF1BF, 0x9B35,
- 0xF1C0, 0x9B4A, 0xF1C1, 0x9B4C, 0xF1C2, 0x9B4B, 0xF1C3, 0x9BC7,
- 0xF1C4, 0x9BC6, 0xF1C5, 0x9BC3, 0xF1C6, 0x9BBF, 0xF1C7, 0x9BC1,
- 0xF1C8, 0x9BB5, 0xF1C9, 0x9BB8, 0xF1CA, 0x9BD3, 0xF1CB, 0x9BB6,
- 0xF1CC, 0x9BC4, 0xF1CD, 0x9BB9, 0xF1CE, 0x9BBD, 0xF1CF, 0x9D5C,
- 0xF1D0, 0x9D53, 0xF1D1, 0x9D4F, 0xF1D2, 0x9D4A, 0xF1D3, 0x9D5B,
- 0xF1D4, 0x9D4B, 0xF1D5, 0x9D59, 0xF1D6, 0x9D56, 0xF1D7, 0x9D4C,
- 0xF1D8, 0x9D57, 0xF1D9, 0x9D52, 0xF1DA, 0x9D54, 0xF1DB, 0x9D5F,
- 0xF1DC, 0x9D58, 0xF1DD, 0x9D5A, 0xF1DE, 0x9E8E, 0xF1DF, 0x9E8C,
- 0xF1E0, 0x9EDF, 0xF1E1, 0x9F01, 0xF1E2, 0x9F00, 0xF1E3, 0x9F16,
- 0xF1E4, 0x9F25, 0xF1E5, 0x9F2B, 0xF1E6, 0x9F2A, 0xF1E7, 0x9F29,
- 0xF1E8, 0x9F28, 0xF1E9, 0x9F4C, 0xF1EA, 0x9F55, 0xF1EB, 0x5134,
- 0xF1EC, 0x5135, 0xF1ED, 0x5296, 0xF1EE, 0x52F7, 0xF1EF, 0x53B4,
- 0xF1F0, 0x56AB, 0xF1F1, 0x56AD, 0xF1F2, 0x56A6, 0xF1F3, 0x56A7,
- 0xF1F4, 0x56AA, 0xF1F5, 0x56AC, 0xF1F6, 0x58DA, 0xF1F7, 0x58DD,
- 0xF1F8, 0x58DB, 0xF1F9, 0x5912, 0xF1FA, 0x5B3D, 0xF1FB, 0x5B3E,
- 0xF1FC, 0x5B3F, 0xF1FD, 0x5DC3, 0xF1FE, 0x5E70, 0xF240, 0x5FBF,
- 0xF241, 0x61FB, 0xF242, 0x6507, 0xF243, 0x6510, 0xF244, 0x650D,
- 0xF245, 0x6509, 0xF246, 0x650C, 0xF247, 0x650E, 0xF248, 0x6584,
- 0xF249, 0x65DE, 0xF24A, 0x65DD, 0xF24B, 0x66DE, 0xF24C, 0x6AE7,
- 0xF24D, 0x6AE0, 0xF24E, 0x6ACC, 0xF24F, 0x6AD1, 0xF250, 0x6AD9,
- 0xF251, 0x6ACB, 0xF252, 0x6ADF, 0xF253, 0x6ADC, 0xF254, 0x6AD0,
- 0xF255, 0x6AEB, 0xF256, 0x6ACF, 0xF257, 0x6ACD, 0xF258, 0x6ADE,
- 0xF259, 0x6B60, 0xF25A, 0x6BB0, 0xF25B, 0x6C0C, 0xF25C, 0x7019,
- 0xF25D, 0x7027, 0xF25E, 0x7020, 0xF25F, 0x7016, 0xF260, 0x702B,
- 0xF261, 0x7021, 0xF262, 0x7022, 0xF263, 0x7023, 0xF264, 0x7029,
- 0xF265, 0x7017, 0xF266, 0x7024, 0xF267, 0x701C, 0xF268, 0x702A,
- 0xF269, 0x720C, 0xF26A, 0x720A, 0xF26B, 0x7207, 0xF26C, 0x7202,
- 0xF26D, 0x7205, 0xF26E, 0x72A5, 0xF26F, 0x72A6, 0xF270, 0x72A4,
- 0xF271, 0x72A3, 0xF272, 0x72A1, 0xF273, 0x74CB, 0xF274, 0x74C5,
- 0xF275, 0x74B7, 0xF276, 0x74C3, 0xF277, 0x7516, 0xF278, 0x7660,
- 0xF279, 0x77C9, 0xF27A, 0x77CA, 0xF27B, 0x77C4, 0xF27C, 0x77F1,
- 0xF27D, 0x791D, 0xF27E, 0x791B, 0xF2A1, 0x7921, 0xF2A2, 0x791C,
- 0xF2A3, 0x7917, 0xF2A4, 0x791E, 0xF2A5, 0x79B0, 0xF2A6, 0x7A67,
- 0xF2A7, 0x7A68, 0xF2A8, 0x7C33, 0xF2A9, 0x7C3C, 0xF2AA, 0x7C39,
- 0xF2AB, 0x7C2C, 0xF2AC, 0x7C3B, 0xF2AD, 0x7CEC, 0xF2AE, 0x7CEA,
- 0xF2AF, 0x7E76, 0xF2B0, 0x7E75, 0xF2B1, 0x7E78, 0xF2B2, 0x7E70,
- 0xF2B3, 0x7E77, 0xF2B4, 0x7E6F, 0xF2B5, 0x7E7A, 0xF2B6, 0x7E72,
- 0xF2B7, 0x7E74, 0xF2B8, 0x7E68, 0xF2B9, 0x7F4B, 0xF2BA, 0x7F4A,
- 0xF2BB, 0x7F83, 0xF2BC, 0x7F86, 0xF2BD, 0x7FB7, 0xF2BE, 0x7FFD,
- 0xF2BF, 0x7FFE, 0xF2C0, 0x8078, 0xF2C1, 0x81D7, 0xF2C2, 0x81D5,
- 0xF2C3, 0x8264, 0xF2C4, 0x8261, 0xF2C5, 0x8263, 0xF2C6, 0x85EB,
- 0xF2C7, 0x85F1, 0xF2C8, 0x85ED, 0xF2C9, 0x85D9, 0xF2CA, 0x85E1,
- 0xF2CB, 0x85E8, 0xF2CC, 0x85DA, 0xF2CD, 0x85D7, 0xF2CE, 0x85EC,
- 0xF2CF, 0x85F2, 0xF2D0, 0x85F8, 0xF2D1, 0x85D8, 0xF2D2, 0x85DF,
- 0xF2D3, 0x85E3, 0xF2D4, 0x85DC, 0xF2D5, 0x85D1, 0xF2D6, 0x85F0,
- 0xF2D7, 0x85E6, 0xF2D8, 0x85EF, 0xF2D9, 0x85DE, 0xF2DA, 0x85E2,
- 0xF2DB, 0x8800, 0xF2DC, 0x87FA, 0xF2DD, 0x8803, 0xF2DE, 0x87F6,
- 0xF2DF, 0x87F7, 0xF2E0, 0x8809, 0xF2E1, 0x880C, 0xF2E2, 0x880B,
- 0xF2E3, 0x8806, 0xF2E4, 0x87FC, 0xF2E5, 0x8808, 0xF2E6, 0x87FF,
- 0xF2E7, 0x880A, 0xF2E8, 0x8802, 0xF2E9, 0x8962, 0xF2EA, 0x895A,
- 0xF2EB, 0x895B, 0xF2EC, 0x8957, 0xF2ED, 0x8961, 0xF2EE, 0x895C,
- 0xF2EF, 0x8958, 0xF2F0, 0x895D, 0xF2F1, 0x8959, 0xF2F2, 0x8988,
- 0xF2F3, 0x89B7, 0xF2F4, 0x89B6, 0xF2F5, 0x89F6, 0xF2F6, 0x8B50,
- 0xF2F7, 0x8B48, 0xF2F8, 0x8B4A, 0xF2F9, 0x8B40, 0xF2FA, 0x8B53,
- 0xF2FB, 0x8B56, 0xF2FC, 0x8B54, 0xF2FD, 0x8B4B, 0xF2FE, 0x8B55,
- 0xF340, 0x8B51, 0xF341, 0x8B42, 0xF342, 0x8B52, 0xF343, 0x8B57,
- 0xF344, 0x8C43, 0xF345, 0x8C77, 0xF346, 0x8C76, 0xF347, 0x8C9A,
- 0xF348, 0x8D06, 0xF349, 0x8D07, 0xF34A, 0x8D09, 0xF34B, 0x8DAC,
- 0xF34C, 0x8DAA, 0xF34D, 0x8DAD, 0xF34E, 0x8DAB, 0xF34F, 0x8E6D,
- 0xF350, 0x8E78, 0xF351, 0x8E73, 0xF352, 0x8E6A, 0xF353, 0x8E6F,
- 0xF354, 0x8E7B, 0xF355, 0x8EC2, 0xF356, 0x8F52, 0xF357, 0x8F51,
- 0xF358, 0x8F4F, 0xF359, 0x8F50, 0xF35A, 0x8F53, 0xF35B, 0x8FB4,
- 0xF35C, 0x9140, 0xF35D, 0x913F, 0xF35E, 0x91B0, 0xF35F, 0x91AD,
- 0xF360, 0x93DE, 0xF361, 0x93C7, 0xF362, 0x93CF, 0xF363, 0x93C2,
- 0xF364, 0x93DA, 0xF365, 0x93D0, 0xF366, 0x93F9, 0xF367, 0x93EC,
- 0xF368, 0x93CC, 0xF369, 0x93D9, 0xF36A, 0x93A9, 0xF36B, 0x93E6,
- 0xF36C, 0x93CA, 0xF36D, 0x93D4, 0xF36E, 0x93EE, 0xF36F, 0x93E3,
- 0xF370, 0x93D5, 0xF371, 0x93C4, 0xF372, 0x93CE, 0xF373, 0x93C0,
- 0xF374, 0x93D2, 0xF375, 0x93E7, 0xF376, 0x957D, 0xF377, 0x95DA,
- 0xF378, 0x95DB, 0xF379, 0x96E1, 0xF37A, 0x9729, 0xF37B, 0x972B,
- 0xF37C, 0x972C, 0xF37D, 0x9728, 0xF37E, 0x9726, 0xF3A1, 0x97B3,
- 0xF3A2, 0x97B7, 0xF3A3, 0x97B6, 0xF3A4, 0x97DD, 0xF3A5, 0x97DE,
- 0xF3A6, 0x97DF, 0xF3A7, 0x985C, 0xF3A8, 0x9859, 0xF3A9, 0x985D,
- 0xF3AA, 0x9857, 0xF3AB, 0x98BF, 0xF3AC, 0x98BD, 0xF3AD, 0x98BB,
- 0xF3AE, 0x98BE, 0xF3AF, 0x9948, 0xF3B0, 0x9947, 0xF3B1, 0x9943,
- 0xF3B2, 0x99A6, 0xF3B3, 0x99A7, 0xF3B4, 0x9A1A, 0xF3B5, 0x9A15,
- 0xF3B6, 0x9A25, 0xF3B7, 0x9A1D, 0xF3B8, 0x9A24, 0xF3B9, 0x9A1B,
- 0xF3BA, 0x9A22, 0xF3BB, 0x9A20, 0xF3BC, 0x9A27, 0xF3BD, 0x9A23,
- 0xF3BE, 0x9A1E, 0xF3BF, 0x9A1C, 0xF3C0, 0x9A14, 0xF3C1, 0x9AC2,
- 0xF3C2, 0x9B0B, 0xF3C3, 0x9B0A, 0xF3C4, 0x9B0E, 0xF3C5, 0x9B0C,
- 0xF3C6, 0x9B37, 0xF3C7, 0x9BEA, 0xF3C8, 0x9BEB, 0xF3C9, 0x9BE0,
- 0xF3CA, 0x9BDE, 0xF3CB, 0x9BE4, 0xF3CC, 0x9BE6, 0xF3CD, 0x9BE2,
- 0xF3CE, 0x9BF0, 0xF3CF, 0x9BD4, 0xF3D0, 0x9BD7, 0xF3D1, 0x9BEC,
- 0xF3D2, 0x9BDC, 0xF3D3, 0x9BD9, 0xF3D4, 0x9BE5, 0xF3D5, 0x9BD5,
- 0xF3D6, 0x9BE1, 0xF3D7, 0x9BDA, 0xF3D8, 0x9D77, 0xF3D9, 0x9D81,
- 0xF3DA, 0x9D8A, 0xF3DB, 0x9D84, 0xF3DC, 0x9D88, 0xF3DD, 0x9D71,
- 0xF3DE, 0x9D80, 0xF3DF, 0x9D78, 0xF3E0, 0x9D86, 0xF3E1, 0x9D8B,
- 0xF3E2, 0x9D8C, 0xF3E3, 0x9D7D, 0xF3E4, 0x9D6B, 0xF3E5, 0x9D74,
- 0xF3E6, 0x9D75, 0xF3E7, 0x9D70, 0xF3E8, 0x9D69, 0xF3E9, 0x9D85,
- 0xF3EA, 0x9D73, 0xF3EB, 0x9D7B, 0xF3EC, 0x9D82, 0xF3ED, 0x9D6F,
- 0xF3EE, 0x9D79, 0xF3EF, 0x9D7F, 0xF3F0, 0x9D87, 0xF3F1, 0x9D68,
- 0xF3F2, 0x9E94, 0xF3F3, 0x9E91, 0xF3F4, 0x9EC0, 0xF3F5, 0x9EFC,
- 0xF3F6, 0x9F2D, 0xF3F7, 0x9F40, 0xF3F8, 0x9F41, 0xF3F9, 0x9F4D,
- 0xF3FA, 0x9F56, 0xF3FB, 0x9F57, 0xF3FC, 0x9F58, 0xF3FD, 0x5337,
- 0xF3FE, 0x56B2, 0xF440, 0x56B5, 0xF441, 0x56B3, 0xF442, 0x58E3,
- 0xF443, 0x5B45, 0xF444, 0x5DC6, 0xF445, 0x5DC7, 0xF446, 0x5EEE,
- 0xF447, 0x5EEF, 0xF448, 0x5FC0, 0xF449, 0x5FC1, 0xF44A, 0x61F9,
- 0xF44B, 0x6517, 0xF44C, 0x6516, 0xF44D, 0x6515, 0xF44E, 0x6513,
- 0xF44F, 0x65DF, 0xF450, 0x66E8, 0xF451, 0x66E3, 0xF452, 0x66E4,
- 0xF453, 0x6AF3, 0xF454, 0x6AF0, 0xF455, 0x6AEA, 0xF456, 0x6AE8,
- 0xF457, 0x6AF9, 0xF458, 0x6AF1, 0xF459, 0x6AEE, 0xF45A, 0x6AEF,
- 0xF45B, 0x703C, 0xF45C, 0x7035, 0xF45D, 0x702F, 0xF45E, 0x7037,
- 0xF45F, 0x7034, 0xF460, 0x7031, 0xF461, 0x7042, 0xF462, 0x7038,
- 0xF463, 0x703F, 0xF464, 0x703A, 0xF465, 0x7039, 0xF466, 0x7040,
- 0xF467, 0x703B, 0xF468, 0x7033, 0xF469, 0x7041, 0xF46A, 0x7213,
- 0xF46B, 0x7214, 0xF46C, 0x72A8, 0xF46D, 0x737D, 0xF46E, 0x737C,
- 0xF46F, 0x74BA, 0xF470, 0x76AB, 0xF471, 0x76AA, 0xF472, 0x76BE,
- 0xF473, 0x76ED, 0xF474, 0x77CC, 0xF475, 0x77CE, 0xF476, 0x77CF,
- 0xF477, 0x77CD, 0xF478, 0x77F2, 0xF479, 0x7925, 0xF47A, 0x7923,
- 0xF47B, 0x7927, 0xF47C, 0x7928, 0xF47D, 0x7924, 0xF47E, 0x7929,
- 0xF4A1, 0x79B2, 0xF4A2, 0x7A6E, 0xF4A3, 0x7A6C, 0xF4A4, 0x7A6D,
- 0xF4A5, 0x7AF7, 0xF4A6, 0x7C49, 0xF4A7, 0x7C48, 0xF4A8, 0x7C4A,
- 0xF4A9, 0x7C47, 0xF4AA, 0x7C45, 0xF4AB, 0x7CEE, 0xF4AC, 0x7E7B,
- 0xF4AD, 0x7E7E, 0xF4AE, 0x7E81, 0xF4AF, 0x7E80, 0xF4B0, 0x7FBA,
- 0xF4B1, 0x7FFF, 0xF4B2, 0x8079, 0xF4B3, 0x81DB, 0xF4B4, 0x81D9,
- 0xF4B5, 0x820B, 0xF4B6, 0x8268, 0xF4B7, 0x8269, 0xF4B8, 0x8622,
- 0xF4B9, 0x85FF, 0xF4BA, 0x8601, 0xF4BB, 0x85FE, 0xF4BC, 0x861B,
- 0xF4BD, 0x8600, 0xF4BE, 0x85F6, 0xF4BF, 0x8604, 0xF4C0, 0x8609,
- 0xF4C1, 0x8605, 0xF4C2, 0x860C, 0xF4C3, 0x85FD, 0xF4C4, 0x8819,
- 0xF4C5, 0x8810, 0xF4C6, 0x8811, 0xF4C7, 0x8817, 0xF4C8, 0x8813,
- 0xF4C9, 0x8816, 0xF4CA, 0x8963, 0xF4CB, 0x8966, 0xF4CC, 0x89B9,
- 0xF4CD, 0x89F7, 0xF4CE, 0x8B60, 0xF4CF, 0x8B6A, 0xF4D0, 0x8B5D,
- 0xF4D1, 0x8B68, 0xF4D2, 0x8B63, 0xF4D3, 0x8B65, 0xF4D4, 0x8B67,
- 0xF4D5, 0x8B6D, 0xF4D6, 0x8DAE, 0xF4D7, 0x8E86, 0xF4D8, 0x8E88,
- 0xF4D9, 0x8E84, 0xF4DA, 0x8F59, 0xF4DB, 0x8F56, 0xF4DC, 0x8F57,
- 0xF4DD, 0x8F55, 0xF4DE, 0x8F58, 0xF4DF, 0x8F5A, 0xF4E0, 0x908D,
- 0xF4E1, 0x9143, 0xF4E2, 0x9141, 0xF4E3, 0x91B7, 0xF4E4, 0x91B5,
- 0xF4E5, 0x91B2, 0xF4E6, 0x91B3, 0xF4E7, 0x940B, 0xF4E8, 0x9413,
- 0xF4E9, 0x93FB, 0xF4EA, 0x9420, 0xF4EB, 0x940F, 0xF4EC, 0x9414,
- 0xF4ED, 0x93FE, 0xF4EE, 0x9415, 0xF4EF, 0x9410, 0xF4F0, 0x9428,
- 0xF4F1, 0x9419, 0xF4F2, 0x940D, 0xF4F3, 0x93F5, 0xF4F4, 0x9400,
- 0xF4F5, 0x93F7, 0xF4F6, 0x9407, 0xF4F7, 0x940E, 0xF4F8, 0x9416,
- 0xF4F9, 0x9412, 0xF4FA, 0x93FA, 0xF4FB, 0x9409, 0xF4FC, 0x93F8,
- 0xF4FD, 0x940A, 0xF4FE, 0x93FF, 0xF540, 0x93FC, 0xF541, 0x940C,
- 0xF542, 0x93F6, 0xF543, 0x9411, 0xF544, 0x9406, 0xF545, 0x95DE,
- 0xF546, 0x95E0, 0xF547, 0x95DF, 0xF548, 0x972E, 0xF549, 0x972F,
- 0xF54A, 0x97B9, 0xF54B, 0x97BB, 0xF54C, 0x97FD, 0xF54D, 0x97FE,
- 0xF54E, 0x9860, 0xF54F, 0x9862, 0xF550, 0x9863, 0xF551, 0x985F,
- 0xF552, 0x98C1, 0xF553, 0x98C2, 0xF554, 0x9950, 0xF555, 0x994E,
- 0xF556, 0x9959, 0xF557, 0x994C, 0xF558, 0x994B, 0xF559, 0x9953,
- 0xF55A, 0x9A32, 0xF55B, 0x9A34, 0xF55C, 0x9A31, 0xF55D, 0x9A2C,
- 0xF55E, 0x9A2A, 0xF55F, 0x9A36, 0xF560, 0x9A29, 0xF561, 0x9A2E,
- 0xF562, 0x9A38, 0xF563, 0x9A2D, 0xF564, 0x9AC7, 0xF565, 0x9ACA,
- 0xF566, 0x9AC6, 0xF567, 0x9B10, 0xF568, 0x9B12, 0xF569, 0x9B11,
- 0xF56A, 0x9C0B, 0xF56B, 0x9C08, 0xF56C, 0x9BF7, 0xF56D, 0x9C05,
- 0xF56E, 0x9C12, 0xF56F, 0x9BF8, 0xF570, 0x9C40, 0xF571, 0x9C07,
- 0xF572, 0x9C0E, 0xF573, 0x9C06, 0xF574, 0x9C17, 0xF575, 0x9C14,
- 0xF576, 0x9C09, 0xF577, 0x9D9F, 0xF578, 0x9D99, 0xF579, 0x9DA4,
- 0xF57A, 0x9D9D, 0xF57B, 0x9D92, 0xF57C, 0x9D98, 0xF57D, 0x9D90,
- 0xF57E, 0x9D9B, 0xF5A1, 0x9DA0, 0xF5A2, 0x9D94, 0xF5A3, 0x9D9C,
- 0xF5A4, 0x9DAA, 0xF5A5, 0x9D97, 0xF5A6, 0x9DA1, 0xF5A7, 0x9D9A,
- 0xF5A8, 0x9DA2, 0xF5A9, 0x9DA8, 0xF5AA, 0x9D9E, 0xF5AB, 0x9DA3,
- 0xF5AC, 0x9DBF, 0xF5AD, 0x9DA9, 0xF5AE, 0x9D96, 0xF5AF, 0x9DA6,
- 0xF5B0, 0x9DA7, 0xF5B1, 0x9E99, 0xF5B2, 0x9E9B, 0xF5B3, 0x9E9A,
- 0xF5B4, 0x9EE5, 0xF5B5, 0x9EE4, 0xF5B6, 0x9EE7, 0xF5B7, 0x9EE6,
- 0xF5B8, 0x9F30, 0xF5B9, 0x9F2E, 0xF5BA, 0x9F5B, 0xF5BB, 0x9F60,
- 0xF5BC, 0x9F5E, 0xF5BD, 0x9F5D, 0xF5BE, 0x9F59, 0xF5BF, 0x9F91,
- 0xF5C0, 0x513A, 0xF5C1, 0x5139, 0xF5C2, 0x5298, 0xF5C3, 0x5297,
- 0xF5C4, 0x56C3, 0xF5C5, 0x56BD, 0xF5C6, 0x56BE, 0xF5C7, 0x5B48,
- 0xF5C8, 0x5B47, 0xF5C9, 0x5DCB, 0xF5CA, 0x5DCF, 0xF5CB, 0x5EF1,
- 0xF5CC, 0x61FD, 0xF5CD, 0x651B, 0xF5CE, 0x6B02, 0xF5CF, 0x6AFC,
- 0xF5D0, 0x6B03, 0xF5D1, 0x6AF8, 0xF5D2, 0x6B00, 0xF5D3, 0x7043,
- 0xF5D4, 0x7044, 0xF5D5, 0x704A, 0xF5D6, 0x7048, 0xF5D7, 0x7049,
- 0xF5D8, 0x7045, 0xF5D9, 0x7046, 0xF5DA, 0x721D, 0xF5DB, 0x721A,
- 0xF5DC, 0x7219, 0xF5DD, 0x737E, 0xF5DE, 0x7517, 0xF5DF, 0x766A,
- 0xF5E0, 0x77D0, 0xF5E1, 0x792D, 0xF5E2, 0x7931, 0xF5E3, 0x792F,
- 0xF5E4, 0x7C54, 0xF5E5, 0x7C53, 0xF5E6, 0x7CF2, 0xF5E7, 0x7E8A,
- 0xF5E8, 0x7E87, 0xF5E9, 0x7E88, 0xF5EA, 0x7E8B, 0xF5EB, 0x7E86,
- 0xF5EC, 0x7E8D, 0xF5ED, 0x7F4D, 0xF5EE, 0x7FBB, 0xF5EF, 0x8030,
- 0xF5F0, 0x81DD, 0xF5F1, 0x8618, 0xF5F2, 0x862A, 0xF5F3, 0x8626,
- 0xF5F4, 0x861F, 0xF5F5, 0x8623, 0xF5F6, 0x861C, 0xF5F7, 0x8619,
- 0xF5F8, 0x8627, 0xF5F9, 0x862E, 0xF5FA, 0x8621, 0xF5FB, 0x8620,
- 0xF5FC, 0x8629, 0xF5FD, 0x861E, 0xF5FE, 0x8625, 0xF640, 0x8829,
- 0xF641, 0x881D, 0xF642, 0x881B, 0xF643, 0x8820, 0xF644, 0x8824,
- 0xF645, 0x881C, 0xF646, 0x882B, 0xF647, 0x884A, 0xF648, 0x896D,
- 0xF649, 0x8969, 0xF64A, 0x896E, 0xF64B, 0x896B, 0xF64C, 0x89FA,
- 0xF64D, 0x8B79, 0xF64E, 0x8B78, 0xF64F, 0x8B45, 0xF650, 0x8B7A,
- 0xF651, 0x8B7B, 0xF652, 0x8D10, 0xF653, 0x8D14, 0xF654, 0x8DAF,
- 0xF655, 0x8E8E, 0xF656, 0x8E8C, 0xF657, 0x8F5E, 0xF658, 0x8F5B,
- 0xF659, 0x8F5D, 0xF65A, 0x9146, 0xF65B, 0x9144, 0xF65C, 0x9145,
- 0xF65D, 0x91B9, 0xF65E, 0x943F, 0xF65F, 0x943B, 0xF660, 0x9436,
- 0xF661, 0x9429, 0xF662, 0x943D, 0xF663, 0x943C, 0xF664, 0x9430,
- 0xF665, 0x9439, 0xF666, 0x942A, 0xF667, 0x9437, 0xF668, 0x942C,
- 0xF669, 0x9440, 0xF66A, 0x9431, 0xF66B, 0x95E5, 0xF66C, 0x95E4,
- 0xF66D, 0x95E3, 0xF66E, 0x9735, 0xF66F, 0x973A, 0xF670, 0x97BF,
- 0xF671, 0x97E1, 0xF672, 0x9864, 0xF673, 0x98C9, 0xF674, 0x98C6,
- 0xF675, 0x98C0, 0xF676, 0x9958, 0xF677, 0x9956, 0xF678, 0x9A39,
- 0xF679, 0x9A3D, 0xF67A, 0x9A46, 0xF67B, 0x9A44, 0xF67C, 0x9A42,
- 0xF67D, 0x9A41, 0xF67E, 0x9A3A, 0xF6A1, 0x9A3F, 0xF6A2, 0x9ACD,
- 0xF6A3, 0x9B15, 0xF6A4, 0x9B17, 0xF6A5, 0x9B18, 0xF6A6, 0x9B16,
- 0xF6A7, 0x9B3A, 0xF6A8, 0x9B52, 0xF6A9, 0x9C2B, 0xF6AA, 0x9C1D,
- 0xF6AB, 0x9C1C, 0xF6AC, 0x9C2C, 0xF6AD, 0x9C23, 0xF6AE, 0x9C28,
- 0xF6AF, 0x9C29, 0xF6B0, 0x9C24, 0xF6B1, 0x9C21, 0xF6B2, 0x9DB7,
- 0xF6B3, 0x9DB6, 0xF6B4, 0x9DBC, 0xF6B5, 0x9DC1, 0xF6B6, 0x9DC7,
- 0xF6B7, 0x9DCA, 0xF6B8, 0x9DCF, 0xF6B9, 0x9DBE, 0xF6BA, 0x9DC5,
- 0xF6BB, 0x9DC3, 0xF6BC, 0x9DBB, 0xF6BD, 0x9DB5, 0xF6BE, 0x9DCE,
- 0xF6BF, 0x9DB9, 0xF6C0, 0x9DBA, 0xF6C1, 0x9DAC, 0xF6C2, 0x9DC8,
- 0xF6C3, 0x9DB1, 0xF6C4, 0x9DAD, 0xF6C5, 0x9DCC, 0xF6C6, 0x9DB3,
- 0xF6C7, 0x9DCD, 0xF6C8, 0x9DB2, 0xF6C9, 0x9E7A, 0xF6CA, 0x9E9C,
- 0xF6CB, 0x9EEB, 0xF6CC, 0x9EEE, 0xF6CD, 0x9EED, 0xF6CE, 0x9F1B,
- 0xF6CF, 0x9F18, 0xF6D0, 0x9F1A, 0xF6D1, 0x9F31, 0xF6D2, 0x9F4E,
- 0xF6D3, 0x9F65, 0xF6D4, 0x9F64, 0xF6D5, 0x9F92, 0xF6D6, 0x4EB9,
- 0xF6D7, 0x56C6, 0xF6D8, 0x56C5, 0xF6D9, 0x56CB, 0xF6DA, 0x5971,
- 0xF6DB, 0x5B4B, 0xF6DC, 0x5B4C, 0xF6DD, 0x5DD5, 0xF6DE, 0x5DD1,
- 0xF6DF, 0x5EF2, 0xF6E0, 0x6521, 0xF6E1, 0x6520, 0xF6E2, 0x6526,
- 0xF6E3, 0x6522, 0xF6E4, 0x6B0B, 0xF6E5, 0x6B08, 0xF6E6, 0x6B09,
- 0xF6E7, 0x6C0D, 0xF6E8, 0x7055, 0xF6E9, 0x7056, 0xF6EA, 0x7057,
- 0xF6EB, 0x7052, 0xF6EC, 0x721E, 0xF6ED, 0x721F, 0xF6EE, 0x72A9,
- 0xF6EF, 0x737F, 0xF6F0, 0x74D8, 0xF6F1, 0x74D5, 0xF6F2, 0x74D9,
- 0xF6F3, 0x74D7, 0xF6F4, 0x766D, 0xF6F5, 0x76AD, 0xF6F6, 0x7935,
- 0xF6F7, 0x79B4, 0xF6F8, 0x7A70, 0xF6F9, 0x7A71, 0xF6FA, 0x7C57,
- 0xF6FB, 0x7C5C, 0xF6FC, 0x7C59, 0xF6FD, 0x7C5B, 0xF6FE, 0x7C5A,
- 0xF740, 0x7CF4, 0xF741, 0x7CF1, 0xF742, 0x7E91, 0xF743, 0x7F4F,
- 0xF744, 0x7F87, 0xF745, 0x81DE, 0xF746, 0x826B, 0xF747, 0x8634,
- 0xF748, 0x8635, 0xF749, 0x8633, 0xF74A, 0x862C, 0xF74B, 0x8632,
- 0xF74C, 0x8636, 0xF74D, 0x882C, 0xF74E, 0x8828, 0xF74F, 0x8826,
- 0xF750, 0x882A, 0xF751, 0x8825, 0xF752, 0x8971, 0xF753, 0x89BF,
- 0xF754, 0x89BE, 0xF755, 0x89FB, 0xF756, 0x8B7E, 0xF757, 0x8B84,
- 0xF758, 0x8B82, 0xF759, 0x8B86, 0xF75A, 0x8B85, 0xF75B, 0x8B7F,
- 0xF75C, 0x8D15, 0xF75D, 0x8E95, 0xF75E, 0x8E94, 0xF75F, 0x8E9A,
- 0xF760, 0x8E92, 0xF761, 0x8E90, 0xF762, 0x8E96, 0xF763, 0x8E97,
- 0xF764, 0x8F60, 0xF765, 0x8F62, 0xF766, 0x9147, 0xF767, 0x944C,
- 0xF768, 0x9450, 0xF769, 0x944A, 0xF76A, 0x944B, 0xF76B, 0x944F,
- 0xF76C, 0x9447, 0xF76D, 0x9445, 0xF76E, 0x9448, 0xF76F, 0x9449,
- 0xF770, 0x9446, 0xF771, 0x973F, 0xF772, 0x97E3, 0xF773, 0x986A,
- 0xF774, 0x9869, 0xF775, 0x98CB, 0xF776, 0x9954, 0xF777, 0x995B,
- 0xF778, 0x9A4E, 0xF779, 0x9A53, 0xF77A, 0x9A54, 0xF77B, 0x9A4C,
- 0xF77C, 0x9A4F, 0xF77D, 0x9A48, 0xF77E, 0x9A4A, 0xF7A1, 0x9A49,
- 0xF7A2, 0x9A52, 0xF7A3, 0x9A50, 0xF7A4, 0x9AD0, 0xF7A5, 0x9B19,
- 0xF7A6, 0x9B2B, 0xF7A7, 0x9B3B, 0xF7A8, 0x9B56, 0xF7A9, 0x9B55,
- 0xF7AA, 0x9C46, 0xF7AB, 0x9C48, 0xF7AC, 0x9C3F, 0xF7AD, 0x9C44,
- 0xF7AE, 0x9C39, 0xF7AF, 0x9C33, 0xF7B0, 0x9C41, 0xF7B1, 0x9C3C,
- 0xF7B2, 0x9C37, 0xF7B3, 0x9C34, 0xF7B4, 0x9C32, 0xF7B5, 0x9C3D,
- 0xF7B6, 0x9C36, 0xF7B7, 0x9DDB, 0xF7B8, 0x9DD2, 0xF7B9, 0x9DDE,
- 0xF7BA, 0x9DDA, 0xF7BB, 0x9DCB, 0xF7BC, 0x9DD0, 0xF7BD, 0x9DDC,
- 0xF7BE, 0x9DD1, 0xF7BF, 0x9DDF, 0xF7C0, 0x9DE9, 0xF7C1, 0x9DD9,
- 0xF7C2, 0x9DD8, 0xF7C3, 0x9DD6, 0xF7C4, 0x9DF5, 0xF7C5, 0x9DD5,
- 0xF7C6, 0x9DDD, 0xF7C7, 0x9EB6, 0xF7C8, 0x9EF0, 0xF7C9, 0x9F35,
- 0xF7CA, 0x9F33, 0xF7CB, 0x9F32, 0xF7CC, 0x9F42, 0xF7CD, 0x9F6B,
- 0xF7CE, 0x9F95, 0xF7CF, 0x9FA2, 0xF7D0, 0x513D, 0xF7D1, 0x5299,
- 0xF7D2, 0x58E8, 0xF7D3, 0x58E7, 0xF7D4, 0x5972, 0xF7D5, 0x5B4D,
- 0xF7D6, 0x5DD8, 0xF7D7, 0x882F, 0xF7D8, 0x5F4F, 0xF7D9, 0x6201,
- 0xF7DA, 0x6203, 0xF7DB, 0x6204, 0xF7DC, 0x6529, 0xF7DD, 0x6525,
- 0xF7DE, 0x6596, 0xF7DF, 0x66EB, 0xF7E0, 0x6B11, 0xF7E1, 0x6B12,
- 0xF7E2, 0x6B0F, 0xF7E3, 0x6BCA, 0xF7E4, 0x705B, 0xF7E5, 0x705A,
- 0xF7E6, 0x7222, 0xF7E7, 0x7382, 0xF7E8, 0x7381, 0xF7E9, 0x7383,
- 0xF7EA, 0x7670, 0xF7EB, 0x77D4, 0xF7EC, 0x7C67, 0xF7ED, 0x7C66,
- 0xF7EE, 0x7E95, 0xF7EF, 0x826C, 0xF7F0, 0x863A, 0xF7F1, 0x8640,
- 0xF7F2, 0x8639, 0xF7F3, 0x863C, 0xF7F4, 0x8631, 0xF7F5, 0x863B,
- 0xF7F6, 0x863E, 0xF7F7, 0x8830, 0xF7F8, 0x8832, 0xF7F9, 0x882E,
- 0xF7FA, 0x8833, 0xF7FB, 0x8976, 0xF7FC, 0x8974, 0xF7FD, 0x8973,
- 0xF7FE, 0x89FE, 0xF840, 0x8B8C, 0xF841, 0x8B8E, 0xF842, 0x8B8B,
- 0xF843, 0x8B88, 0xF844, 0x8C45, 0xF845, 0x8D19, 0xF846, 0x8E98,
- 0xF847, 0x8F64, 0xF848, 0x8F63, 0xF849, 0x91BC, 0xF84A, 0x9462,
- 0xF84B, 0x9455, 0xF84C, 0x945D, 0xF84D, 0x9457, 0xF84E, 0x945E,
- 0xF84F, 0x97C4, 0xF850, 0x97C5, 0xF851, 0x9800, 0xF852, 0x9A56,
- 0xF853, 0x9A59, 0xF854, 0x9B1E, 0xF855, 0x9B1F, 0xF856, 0x9B20,
- 0xF857, 0x9C52, 0xF858, 0x9C58, 0xF859, 0x9C50, 0xF85A, 0x9C4A,
- 0xF85B, 0x9C4D, 0xF85C, 0x9C4B, 0xF85D, 0x9C55, 0xF85E, 0x9C59,
- 0xF85F, 0x9C4C, 0xF860, 0x9C4E, 0xF861, 0x9DFB, 0xF862, 0x9DF7,
- 0xF863, 0x9DEF, 0xF864, 0x9DE3, 0xF865, 0x9DEB, 0xF866, 0x9DF8,
- 0xF867, 0x9DE4, 0xF868, 0x9DF6, 0xF869, 0x9DE1, 0xF86A, 0x9DEE,
- 0xF86B, 0x9DE6, 0xF86C, 0x9DF2, 0xF86D, 0x9DF0, 0xF86E, 0x9DE2,
- 0xF86F, 0x9DEC, 0xF870, 0x9DF4, 0xF871, 0x9DF3, 0xF872, 0x9DE8,
- 0xF873, 0x9DED, 0xF874, 0x9EC2, 0xF875, 0x9ED0, 0xF876, 0x9EF2,
- 0xF877, 0x9EF3, 0xF878, 0x9F06, 0xF879, 0x9F1C, 0xF87A, 0x9F38,
- 0xF87B, 0x9F37, 0xF87C, 0x9F36, 0xF87D, 0x9F43, 0xF87E, 0x9F4F,
- 0xF8A1, 0x9F71, 0xF8A2, 0x9F70, 0xF8A3, 0x9F6E, 0xF8A4, 0x9F6F,
- 0xF8A5, 0x56D3, 0xF8A6, 0x56CD, 0xF8A7, 0x5B4E, 0xF8A8, 0x5C6D,
- 0xF8A9, 0x652D, 0xF8AA, 0x66ED, 0xF8AB, 0x66EE, 0xF8AC, 0x6B13,
- 0xF8AD, 0x705F, 0xF8AE, 0x7061, 0xF8AF, 0x705D, 0xF8B0, 0x7060,
- 0xF8B1, 0x7223, 0xF8B2, 0x74DB, 0xF8B3, 0x74E5, 0xF8B4, 0x77D5,
- 0xF8B5, 0x7938, 0xF8B6, 0x79B7, 0xF8B7, 0x79B6, 0xF8B8, 0x7C6A,
- 0xF8B9, 0x7E97, 0xF8BA, 0x7F89, 0xF8BB, 0x826D, 0xF8BC, 0x8643,
- 0xF8BD, 0x8838, 0xF8BE, 0x8837, 0xF8BF, 0x8835, 0xF8C0, 0x884B,
- 0xF8C1, 0x8B94, 0xF8C2, 0x8B95, 0xF8C3, 0x8E9E, 0xF8C4, 0x8E9F,
- 0xF8C5, 0x8EA0, 0xF8C6, 0x8E9D, 0xF8C7, 0x91BE, 0xF8C8, 0x91BD,
- 0xF8C9, 0x91C2, 0xF8CA, 0x946B, 0xF8CB, 0x9468, 0xF8CC, 0x9469,
- 0xF8CD, 0x96E5, 0xF8CE, 0x9746, 0xF8CF, 0x9743, 0xF8D0, 0x9747,
- 0xF8D1, 0x97C7, 0xF8D2, 0x97E5, 0xF8D3, 0x9A5E, 0xF8D4, 0x9AD5,
- 0xF8D5, 0x9B59, 0xF8D6, 0x9C63, 0xF8D7, 0x9C67, 0xF8D8, 0x9C66,
- 0xF8D9, 0x9C62, 0xF8DA, 0x9C5E, 0xF8DB, 0x9C60, 0xF8DC, 0x9E02,
- 0xF8DD, 0x9DFE, 0xF8DE, 0x9E07, 0xF8DF, 0x9E03, 0xF8E0, 0x9E06,
- 0xF8E1, 0x9E05, 0xF8E2, 0x9E00, 0xF8E3, 0x9E01, 0xF8E4, 0x9E09,
- 0xF8E5, 0x9DFF, 0xF8E6, 0x9DFD, 0xF8E7, 0x9E04, 0xF8E8, 0x9EA0,
- 0xF8E9, 0x9F1E, 0xF8EA, 0x9F46, 0xF8EB, 0x9F74, 0xF8EC, 0x9F75,
- 0xF8ED, 0x9F76, 0xF8EE, 0x56D4, 0xF8EF, 0x652E, 0xF8F0, 0x65B8,
- 0xF8F1, 0x6B18, 0xF8F2, 0x6B19, 0xF8F3, 0x6B17, 0xF8F4, 0x6B1A,
- 0xF8F5, 0x7062, 0xF8F6, 0x7226, 0xF8F7, 0x72AA, 0xF8F8, 0x77D8,
- 0xF8F9, 0x77D9, 0xF8FA, 0x7939, 0xF8FB, 0x7C69, 0xF8FC, 0x7C6B,
- 0xF8FD, 0x7CF6, 0xF8FE, 0x7E9A, 0xF940, 0x7E98, 0xF941, 0x7E9B,
- 0xF942, 0x7E99, 0xF943, 0x81E0, 0xF944, 0x81E1, 0xF945, 0x8646,
- 0xF946, 0x8647, 0xF947, 0x8648, 0xF948, 0x8979, 0xF949, 0x897A,
- 0xF94A, 0x897C, 0xF94B, 0x897B, 0xF94C, 0x89FF, 0xF94D, 0x8B98,
- 0xF94E, 0x8B99, 0xF94F, 0x8EA5, 0xF950, 0x8EA4, 0xF951, 0x8EA3,
- 0xF952, 0x946E, 0xF953, 0x946D, 0xF954, 0x946F, 0xF955, 0x9471,
- 0xF956, 0x9473, 0xF957, 0x9749, 0xF958, 0x9872, 0xF959, 0x995F,
- 0xF95A, 0x9C68, 0xF95B, 0x9C6E, 0xF95C, 0x9C6D, 0xF95D, 0x9E0B,
- 0xF95E, 0x9E0D, 0xF95F, 0x9E10, 0xF960, 0x9E0F, 0xF961, 0x9E12,
- 0xF962, 0x9E11, 0xF963, 0x9EA1, 0xF964, 0x9EF5, 0xF965, 0x9F09,
- 0xF966, 0x9F47, 0xF967, 0x9F78, 0xF968, 0x9F7B, 0xF969, 0x9F7A,
- 0xF96A, 0x9F79, 0xF96B, 0x571E, 0xF96C, 0x7066, 0xF96D, 0x7C6F,
- 0xF96E, 0x883C, 0xF96F, 0x8DB2, 0xF970, 0x8EA6, 0xF971, 0x91C3,
- 0xF972, 0x9474, 0xF973, 0x9478, 0xF974, 0x9476, 0xF975, 0x9475,
- 0xF976, 0x9A60, 0xF977, 0x9C74, 0xF978, 0x9C73, 0xF979, 0x9C71,
- 0xF97A, 0x9C75, 0xF97B, 0x9E14, 0xF97C, 0x9E13, 0xF97D, 0x9EF6,
- 0xF97E, 0x9F0A, 0xF9A1, 0x9FA4, 0xF9A2, 0x7068, 0xF9A3, 0x7065,
- 0xF9A4, 0x7CF7, 0xF9A5, 0x866A, 0xF9A6, 0x883E, 0xF9A7, 0x883D,
- 0xF9A8, 0x883F, 0xF9A9, 0x8B9E, 0xF9AA, 0x8C9C, 0xF9AB, 0x8EA9,
- 0xF9AC, 0x8EC9, 0xF9AD, 0x974B, 0xF9AE, 0x9873, 0xF9AF, 0x9874,
- 0xF9B0, 0x98CC, 0xF9B1, 0x9961, 0xF9B2, 0x99AB, 0xF9B3, 0x9A64,
- 0xF9B4, 0x9A66, 0xF9B5, 0x9A67, 0xF9B6, 0x9B24, 0xF9B7, 0x9E15,
- 0xF9B8, 0x9E17, 0xF9B9, 0x9F48, 0xF9BA, 0x6207, 0xF9BB, 0x6B1E,
- 0xF9BC, 0x7227, 0xF9BD, 0x864C, 0xF9BE, 0x8EA8, 0xF9BF, 0x9482,
- 0xF9C0, 0x9480, 0xF9C1, 0x9481, 0xF9C2, 0x9A69, 0xF9C3, 0x9A68,
- 0xF9C4, 0x9B2E, 0xF9C5, 0x9E19, 0xF9C6, 0x7229, 0xF9C7, 0x864B,
- 0xF9C8, 0x8B9F, 0xF9C9, 0x9483, 0xF9CA, 0x9C79, 0xF9CB, 0x9EB7,
- 0xF9CC, 0x7675, 0xF9CD, 0x9A6B, 0xF9CE, 0x9C7A, 0xF9CF, 0x9E1D,
- 0xF9D0, 0x7069, 0xF9D1, 0x706A, 0xF9D2, 0x9EA4, 0xF9D3, 0x9F7E,
- 0xF9D4, 0x9F49, 0xF9D5, 0x9F98, 0xF9D6, 0x7881, 0xF9D7, 0x92B9,
- 0xF9D8, 0x88CF, 0xF9D9, 0x58BB, 0xF9DA, 0x6052, 0xF9DB, 0x7CA7,
- 0xF9DC, 0x5AFA, 0xF9DD, 0x2554, 0xF9DE, 0x2566, 0xF9DF, 0x2557,
- 0xF9E0, 0x2560, 0xF9E1, 0x256C, 0xF9E2, 0x2563, 0xF9E3, 0x255A,
- 0xF9E4, 0x2569, 0xF9E5, 0x255D, 0xF9E6, 0x2552, 0xF9E7, 0x2564,
- 0xF9E8, 0x2555, 0xF9E9, 0x255E, 0xF9EA, 0x256A, 0xF9EB, 0x2561,
- 0xF9EC, 0x2558, 0xF9ED, 0x2567, 0xF9EE, 0x255B, 0xF9EF, 0x2553,
- 0xF9F0, 0x2565, 0xF9F1, 0x2556, 0xF9F2, 0x255F, 0xF9F3, 0x256B,
- 0xF9F4, 0x2562, 0xF9F5, 0x2559, 0xF9F6, 0x2568, 0xF9F7, 0x255C,
- 0xF9F8, 0x2551, 0xF9F9, 0x2550, 0xF9FA, 0x256D, 0xF9FB, 0x256E,
- 0xF9FC, 0x2570, 0xF9FD, 0x256F, 0xF9FE, 0x2593, 0, 0
-};
-
-
-
-WCHAR ff_convert ( /* Converted code, 0 means conversion error */
- WCHAR src, /* Character code to be converted */
- UINT dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
- )
-{
- const WCHAR *p;
- WCHAR c;
- int i, n, li, hi;
-
-
- if (src < 0x80) { /* ASCII */
- c = src;
- } else {
- if (dir) { /* OEMCP to unicode */
- p = oem2uni;
- hi = sizeof(oem2uni) / 4 - 1;
- } else { /* Unicode to OEMCP */
- p = uni2oem;
- hi = sizeof(uni2oem) / 4 - 1;
- }
- li = 0;
- for (n = 16; n; n--) {
- i = li + (hi - li) / 2;
- if (src == p[i * 2]) break;
- if (src > p[i * 2])
- li = i;
- else
- hi = i;
- }
- c = n ? p[i * 2 + 1] : 0;
- }
-
- return c;
-}
-
-
-
-
-WCHAR ff_wtoupper ( /* Upper converted character */
- WCHAR chr /* Input character */
- )
-{
- static const WCHAR tbl_lower[] = { 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68, 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70, 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78, 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF, 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7, 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF, 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8, 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101, 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F, 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D, 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B, 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A, 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148, 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157, 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165, 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173, 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1, 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8, 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF, 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7, 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433, 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A, 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441, 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448, 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F, 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457, 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F, 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177, 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F, 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48, 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50, 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58, 0xFF59, 0xFF5A, 0 };
- static const WCHAR tbl_upper[] = { 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
- int i;
-
-
- for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
-
- return tbl_lower[i] ? tbl_upper[i] : chr;
-}
diff --git a/BaS_gcc/fs/ccsbcs.c b/BaS_gcc/fs/ccsbcs.c
deleted file mode 100644
index b8dce2b..0000000
--- a/BaS_gcc/fs/ccsbcs.c
+++ /dev/null
@@ -1,619 +0,0 @@
-/*------------------------------------------------------------------------*/
-/* Unicode - Local code bidirectional converter (C)ChaN, 2009 */
-/* (SBCS code pages) */
-/*------------------------------------------------------------------------*/
-/* 437 U.S. (OEM)
-/ 720 Arabic (OEM)
-/ 1256 Arabic (Windows)
-/ 737 Greek (OEM)
-/ 1253 Greek (Windows)
-/ 1250 Central Europe (Windows)
-/ 775 Baltic (OEM)
-/ 1257 Baltic (Windows)
-/ 850 Multilingual Latin 1 (OEM)
-/ 852 Latin 2 (OEM)
-/ 1252 Latin 1 (Windows)
-/ 855 Cyrillic (OEM)
-/ 1251 Cyrillic (Windows)
-/ 866 Russian (OEM)
-/ 857 Turkish (OEM)
-/ 1254 Turkish (Windows)
-/ 858 Multilingual Latin 1 + Euro (OEM)
-/ 862 Hebrew (OEM)
-/ 1255 Hebrew (Windows)
-/ 874 Thai (OEM, Windows)
-/ 1258 Vietnam (OEM, Windows)
-*/
-
-#include
-#include
-
-#if _CODE_PAGE == 437
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP437(0x80-0xFF) to Unicode conversion table */
- 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
- 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
- 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
- 0x00FF, 0x00D6, 0x00DC, 0x00A2, 0x00A3, 0x00A5, 0x20A7, 0x0192,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
- 0x00BF, 0x2310, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
- 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
- 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
- 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x03B1, 0x00DF, 0x0393, 0x03C0, 0x03A3, 0x03C3, 0x00B5, 0x03C4,
- 0x03A6, 0x0398, 0x03A9, 0x03B4, 0x221E, 0x03C6, 0x03B5, 0x2229,
- 0x2261, 0x00B1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00F7, 0x2248,
- 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 720
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP720(0x80-0xFF) to Unicode conversion table */
- 0x0000, 0x0000, 0x00E9, 0x00E2, 0x0000, 0x00E0, 0x0000, 0x00E7,
- 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0651, 0x0652, 0x00F4, 0x00A4, 0x0640, 0x00FB, 0x00F9,
- 0x0621, 0x0622, 0x0623, 0x0624, 0x00A3, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
- 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
- 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
- 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x0636, 0x0637, 0x0638, 0x0639, 0x063A, 0x0641, 0x00B5, 0x0642,
- 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, 0x0648, 0x0649, 0x064A,
- 0x2261, 0x064B, 0x064C, 0x064D, 0x064E, 0x064F, 0xO650, 0x2248,
- 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 737
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP737(0x80-0xFF) to Unicode conversion table */
- 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
- 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F, 0x03A0,
- 0x03A1, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7, 0x03A8, 0x03A9,
- 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7, 0x03B8,
- 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF, 0x03C0,
- 0x03C1, 0x03C3, 0x03C2, 0x03C4, 0x03C5, 0x03C6, 0x03C7, 0x03C8,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
- 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
- 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
- 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x03C9, 0x03AC, 0x03AD, 0x03AE, 0x03CA, 0x03AF, 0x03CC, 0x03CD,
- 0x03CB, 0x03CE, 0x0386, 0x0388, 0x0389, 0x038A, 0x038C, 0x038E,
- 0x038F, 0x00B1, 0x2265, 0x2264, 0x03AA, 0x03AB, 0x00F7, 0x2248,
- 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 775
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP775(0x80-0xFF) to Unicode conversion table */
- 0x0106, 0x00FC, 0x00E9, 0x0101, 0x00E4, 0x0123, 0x00E5, 0x0107,
- 0x0142, 0x0113, 0x0156, 0x0157, 0x012B, 0x0179, 0x00C4, 0x00C5,
- 0x00C9, 0x00E6, 0x00C6, 0x014D, 0x00F6, 0x0122, 0x00A2, 0x015A,
- 0x015B, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x00A4,
- 0x0100, 0x012A, 0x00F3, 0x017B, 0x017C, 0x017A, 0x201D, 0x00A6,
- 0x00A9, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x0141, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0104, 0x010C, 0x0118,
- 0x0116, 0x2563, 0x2551, 0x2557, 0x255D, 0x012E, 0x0160, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x0172, 0x016A,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x017D,
- 0x0105, 0x010D, 0x0119, 0x0117, 0x012F, 0x0161, 0x0173, 0x016B,
- 0x017E, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x00D3, 0x00DF, 0x014C, 0x0143, 0x00F5, 0x00D5, 0x00B5, 0x0144,
- 0x0136, 0x0137, 0x013B, 0x013C, 0x0146, 0x0112, 0x0145, 0x2019,
- 0x00AD, 0x00B1, 0x201C, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x201E,
- 0x00B0, 0x2219, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 850
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP850(0x80-0xFF) to Unicode conversion table */
- 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
- 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
- 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
- 0x00FF, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x0192,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
- 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
- 0x00A9, 0x2563, 0x2551, 0x2557, 0x255D, 0x00A2, 0x00A5, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
- 0x00F0, 0x00D0, 0x00CA, 0x00CB, 0x00C8, 0x0131, 0x00CD, 0x00CE,
- 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00A6, 0x00CC, 0x2580,
- 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x00FE,
- 0x00DE, 0x00DA, 0x00DB, 0x00D9, 0x00FD, 0x00DD, 0x00AF, 0x00B4,
- 0x00AD, 0x00B1, 0x2017, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
- 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 852
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP852(0x80-0xFF) to Unicode conversion table */
- 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x016F, 0x0107, 0x00E7,
- 0x0142, 0x00EB, 0x0150, 0x0151, 0x00EE, 0x0179, 0x00C4, 0x0106,
- 0x00C9, 0x0139, 0x013A, 0x00F4, 0x00F6, 0x013D, 0x013E, 0x015A,
- 0x015B, 0x00D6, 0x00DC, 0x0164, 0x0165, 0x0141, 0x00D7, 0x010D,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x0104, 0x0105, 0x017D, 0x017E,
- 0x0118, 0x0119, 0x00AC, 0x017A, 0x010C, 0x015F, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x011A,
- 0x015E, 0x2563, 0x2551, 0x2557, 0x255D, 0x017B, 0x017C, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x0102, 0x0103,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
- 0x0111, 0x0110, 0x010E, 0x00CB, 0x010F, 0x0147, 0x00CD, 0x00CE,
- 0x011B, 0x2518, 0x250C, 0x2588, 0x2584, 0x0162, 0x016E, 0x2580,
- 0x00D3, 0x00DF, 0x00D4, 0x0143, 0x0144, 0x0148, 0x0160, 0x0161,
- 0x0154, 0x00DA, 0x0155, 0x0170, 0x00FD, 0x00DD, 0x0163, 0x00B4,
- 0x00AD, 0x02DD, 0x02DB, 0x02C7, 0x02D8, 0x00A7, 0x00F7, 0x00B8,
- 0x00B0, 0x00A8, 0x02D9, 0x0171, 0x0158, 0x0159, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 855
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP855(0x80-0xFF) to Unicode conversion table */
- 0x0452, 0x0402, 0x0453, 0x0403, 0x0451, 0x0401, 0x0454, 0x0404,
- 0x0455, 0x0405, 0x0456, 0x0406, 0x0457, 0x0407, 0x0458, 0x0408,
- 0x0459, 0x0409, 0x045A, 0x040A, 0x045B, 0x040B, 0x045C, 0x040C,
- 0x045E, 0x040E, 0x045F, 0x040F, 0x044E, 0x042E, 0x044A, 0x042A,
- 0x0430, 0x0410, 0x0431, 0x0411, 0x0446, 0x0426, 0x0434, 0x0414,
- 0x0435, 0x0415, 0x0444, 0x0424, 0x0433, 0x0413, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0445, 0x0425, 0x0438,
- 0x0418, 0x2563, 0x2551, 0x2557, 0x255D, 0x0439, 0x0419, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x043A, 0x041A,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
- 0x043B, 0x041B, 0x043C, 0x041C, 0x043D, 0x041D, 0x043E, 0x041E,
- 0x043F, 0x2518, 0x250C, 0x2588, 0x2584, 0x041F, 0x044F, 0x2580,
- 0x042F, 0x0440, 0x0420, 0x0441, 0x0421, 0x0442, 0x0422, 0x0443,
- 0x0423, 0x0436, 0x0416, 0x0432, 0x0412, 0x044C, 0x042C, 0x2116,
- 0x00AD, 0x044B, 0x042B, 0x0437, 0x0417, 0x0448, 0x0428, 0x044D,
- 0x042D, 0x0449, 0x0429, 0x0447, 0x0427, 0x00A7, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 857
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP857(0x80-0xFF) to Unicode conversion table */
- 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
- 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x0131, 0x00C4, 0x00C5,
- 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
- 0x0130, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x015E, 0x015F,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x011E, 0x011F,
- 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
- 0x00A9, 0x2563, 0x2551, 0x2557, 0x255D, 0x00A2, 0x00A5, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
- 0x00BA, 0x00AA, 0x00CA, 0x00CB, 0x00C8, 0x0000, 0x00CD, 0x00CE,
- 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00A6, 0x00CC, 0x2580,
- 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x0000,
- 0x00D7, 0x00DA, 0x00DB, 0x00D9, 0x00EC, 0x00FF, 0x00AF, 0x00B4,
- 0x00AD, 0x00B1, 0x0000, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
- 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 858
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP858(0x80-0xFF) to Unicode conversion table */
- 0x00C7, 0x00FC, 0x00E9, 0x00E2, 0x00E4, 0x00E0, 0x00E5, 0x00E7,
- 0x00EA, 0x00EB, 0x00E8, 0x00EF, 0x00EE, 0x00EC, 0x00C4, 0x00C5,
- 0x00C9, 0x00E6, 0x00C6, 0x00F4, 0x00F6, 0x00F2, 0x00FB, 0x00F9,
- 0x00FF, 0x00D6, 0x00DC, 0x00F8, 0x00A3, 0x00D8, 0x00D7, 0x0192,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
- 0x00BF, 0x00AE, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00C1, 0x00C2, 0x00C0,
- 0x00A9, 0x2563, 0x2551, 0x2557, 0x2550, 0x00A2, 0x00A5, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x00E3, 0x00C3,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x00A4,
- 0x00F0, 0x00D0, 0x00CA, 0x00CB, 0x00C8, 0x20AC, 0x00CD, 0x00CE,
- 0x00CF, 0x2518, 0x250C, 0x2588, 0x2584, 0x00C6, 0x00CC, 0x2580,
- 0x00D3, 0x00DF, 0x00D4, 0x00D2, 0x00F5, 0x00D5, 0x00B5, 0x00FE,
- 0x00DE, 0x00DA, 0x00DB, 0x00D9, 0x00FD, 0x00DD, 0x00AF, 0x00B4,
- 0x00AD, 0x00B1, 0x2017, 0x00BE, 0x00B6, 0x00A7, 0x00F7, 0x00B8,
- 0x00B0, 0x00A8, 0x00B7, 0x00B9, 0x00B3, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 862
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP862(0x80-0xFF) to Unicode conversion table */
- 0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,
- 0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,
- 0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,
- 0x05E8, 0x05E9, 0x05EA, 0x00A2, 0x00A3, 0x00A5, 0x20A7, 0x0192,
- 0x00E1, 0x00ED, 0x00F3, 0x00FA, 0x00F1, 0x00D1, 0x00AA, 0x00BA,
- 0x00BF, 0x2310, 0x00AC, 0x00BD, 0x00BC, 0x00A1, 0x00AB, 0x00BB,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
- 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
- 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
- 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x03B1, 0x00DF, 0x0393, 0x03C0, 0x03A3, 0x03C3, 0x00B5, 0x03C4,
- 0x03A6, 0x0398, 0x03A9, 0x03B4, 0x221E, 0x03C6, 0x03B5, 0x2229,
- 0x2261, 0x00B1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00F7, 0x2248,
- 0x00B0, 0x2219, 0x00B7, 0x221A, 0x207F, 0x00B2, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 866
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP866(0x80-0xFF) to Unicode conversion table */
- 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
- 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, 0x041F,
- 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
- 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F,
- 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
- 0x2555, 0x2563, 0x2551, 0x2557, 0x255D, 0x255C, 0x255B, 0x2510,
- 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, 0x255E, 0x255F,
- 0x255A, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256C, 0x2567,
- 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B,
- 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, 0x2590, 0x2580,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
- 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F,
- 0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, 0x040E, 0x045E,
- 0x00B0, 0x2219, 0x00B7, 0x221A, 0x2116, 0x00A4, 0x25A0, 0x00A0
-};
-
-#elif _CODE_PAGE == 874
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP874(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x0000, 0x0000, 0x0000, 0x2026, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00A0, 0x0E01, 0x0E02, 0x0E03, 0x0E04, 0x0E05, 0x0E06, 0x0E07,
- 0x0E08, 0x0E09, 0x0E0A, 0x0E0B, 0x0E0C, 0x0E0D, 0x0E0E, 0x0E0F,
- 0x0E10, 0x0E11, 0x0E12, 0x0E13, 0x0E14, 0x0E15, 0x0E16, 0x0E17,
- 0x0E18, 0x0E19, 0x0E1A, 0x0E1B, 0x0E1C, 0x0E1D, 0x0E1E, 0x0E1F,
- 0x0E20, 0x0E21, 0x0E22, 0x0E23, 0x0E24, 0x0E25, 0x0E26, 0x0E27,
- 0x0E28, 0x0E29, 0x0E2A, 0x0E2B, 0x0E2C, 0x0E2D, 0x0E2E, 0x0E2F,
- 0x0E30, 0x0E31, 0x0E32, 0x0E33, 0x0E34, 0x0E35, 0x0E36, 0x0E37,
- 0x0E38, 0x0E39, 0x0E3A, 0x0000, 0x0000, 0x0000, 0x0000, 0x0E3F,
- 0x0E40, 0x0E41, 0x0E42, 0x0E43, 0x0E44, 0x0E45, 0x0E46, 0x0E47,
- 0x0E48, 0x0E49, 0x0E4A, 0x0E4B, 0x0E4C, 0x0E4D, 0x0E4E, 0x0E4F,
- 0x0E50, 0x0E51, 0x0E52, 0x0E53, 0x0E54, 0x0E55, 0x0E56, 0x0E57,
- 0x0E58, 0x0E59, 0x0E5A, 0x0E5B, 0x0000, 0x0000, 0x0000, 0x0000
-};
-
-#elif _CODE_PAGE == 1250
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1250(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x0000, 0x2030, 0x0160, 0x2039, 0x015A, 0x0164, 0x017D, 0x0179,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x0000, 0x2122, 0x0161, 0x203A, 0x015B, 0x0165, 0x017E, 0x017A,
- 0x00A0, 0x02C7, 0x02D8, 0x0141, 0x00A4, 0x0104, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x015E, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x017B,
- 0x00B0, 0x00B1, 0x02DB, 0x0142, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x0105, 0x015F, 0x00BB, 0x013D, 0x02DD, 0x013E, 0x017C,
- 0x0154, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x0139, 0x0106, 0x00C7,
- 0x010C, 0x00C9, 0x0118, 0x00CB, 0x011A, 0x00CD, 0x00CE, 0x010E,
- 0x0110, 0x0143, 0x0147, 0x00D3, 0x00D4, 0x0150, 0x00D6, 0x00D7,
- 0x0158, 0x016E, 0x00DA, 0x0170, 0x00DC, 0x00DD, 0x0162, 0x00DF,
- 0x0155, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x013A, 0x0107, 0x00E7,
- 0x010D, 0x00E9, 0x0119, 0x00EB, 0x011B, 0x00ED, 0x00EE, 0x010F,
- 0x0111, 0x0144, 0x0148, 0x00F3, 0x00F4, 0x0151, 0x00F6, 0x00F7,
- 0x0159, 0x016F, 0x00FA, 0x0171, 0x00FC, 0x00FD, 0x0163, 0x02D9
-};
-
-#elif _CODE_PAGE == 1251
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1251(0x80-0xFF) to Unicode conversion table */
- 0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x20AC, 0x2030, 0x0409, 0x2039, 0x040A, 0x040C, 0x040B, 0x040F,
- 0x0452, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x0000, 0x2111, 0x0459, 0x203A, 0x045A, 0x045C, 0x045B, 0x045F,
- 0x00A0, 0x040E, 0x045E, 0x0408, 0x00A4, 0x0490, 0x00A6, 0x00A7,
- 0x0401, 0x00A9, 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407,
- 0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, 0x00B6, 0x00B7,
- 0x0451, 0x2116, 0x0454, 0x00BB, 0x0458, 0x0405, 0x0455, 0x0457,
- 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
- 0x0418, 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, 0x041F,
- 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
- 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, 0x042E, 0x042F,
- 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
- 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F,
- 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
- 0x0448, 0x0449, 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F
-};
-
-#elif _CODE_PAGE == 1252
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1252(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x017D, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x017E, 0x0178,
- 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
- 0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
- 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,
- 0x00D0, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,
- 0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, 0x00DE, 0x00DF,
- 0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
- 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,
- 0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,
- 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x00FD, 0x00FE, 0x00FF
-};
-
-#elif _CODE_PAGE == 1253
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1253(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x0000, 0x2030, 0x0000, 0x2039, 0x000C, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00A0, 0x0385, 0x0386, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x0000, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x2015,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x0384, 0x00B5, 0x00B6, 0x00B7,
- 0x0388, 0x0389, 0x038A, 0x00BB, 0x038C, 0x00BD, 0x038E, 0x038F,
- 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
- 0x0398, 0x0399, 0x039A, 0x039B, 0x039C, 0x039D, 0x039E, 0x039F,
- 0x03A0, 0x03A1, 0x0000, 0x03A3, 0x03A4, 0x03A5, 0x03A6, 0x03A7,
- 0x03A8, 0x03A9, 0x03AA, 0x03AD, 0x03AC, 0x03AD, 0x03AE, 0x03AF,
- 0x03B0, 0x03B1, 0x03B2, 0x03B3, 0x03B4, 0x03B5, 0x03B6, 0x03B7,
- 0x03B8, 0x03B9, 0x03BA, 0x03BB, 0x03BC, 0x03BD, 0x03BE, 0x03BF,
- 0x03C0, 0x03C1, 0x03C2, 0x03C3, 0x03C4, 0x03C5, 0x03C6, 0x03C7,
- 0x03C8, 0x03C9, 0x03CA, 0x03CB, 0x03CC, 0x03CD, 0x03CE, 0x0000
-};
-
-#elif _CODE_PAGE == 1254
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1254(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x210A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x02C6, 0x2030, 0x0160, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,
- 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
- 0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
- 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x00CC, 0x00CD, 0x00CE, 0x00CF,
- 0x011E, 0x00D1, 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7,
- 0x00D8, 0x00D9, 0x00DA, 0x00BD, 0x00DC, 0x0130, 0x015E, 0x00DF,
- 0x00E0, 0x00E1, 0x00E2, 0x00E3, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
- 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF,
- 0x011F, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, 0x00F6, 0x00F7,
- 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x0131, 0x015F, 0x00FF
-};
-
-#elif _CODE_PAGE == 1255
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1255(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x02C6, 0x2030, 0x0000, 0x2039, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x02DC, 0x2122, 0x0000, 0x203A, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x00D7, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x00F7, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
- 0x05B0, 0x05B1, 0x05B2, 0x05B3, 0x05B4, 0x05B5, 0x05B6, 0x05B7,
- 0x05B8, 0x05B9, 0x0000, 0x05BB, 0x05BC, 0x05BD, 0x05BE, 0x05BF,
- 0x05C0, 0x05C1, 0x05C2, 0x05C3, 0x05F0, 0x05F1, 0x05F2, 0x05F3,
- 0x05F4, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x05D0, 0x05D1, 0x05D2, 0x05D3, 0x05D4, 0x05D5, 0x05D6, 0x05D7,
- 0x05D8, 0x05D9, 0x05DA, 0x05DB, 0x05DC, 0x05DD, 0x05DE, 0x05DF,
- 0x05E0, 0x05E1, 0x05E2, 0x05E3, 0x05E4, 0x05E5, 0x05E6, 0x05E7,
- 0x05E8, 0x05E9, 0x05EA, 0x0000, 0x0000, 0x200E, 0x200F, 0x0000
-};
-
-#elif _CODE_PAGE == 1256
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1256(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x067E, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x02C6, 0x2030, 0x0679, 0x2039, 0x0152, 0x0686, 0x0698, 0x0688,
- 0x06AF, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x06A9, 0x2122, 0x0691, 0x203A, 0x0153, 0x200C, 0x200D, 0x06BA,
- 0x00A0, 0x060C, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x06BE, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x061B, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x061F,
- 0x06C1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
- 0x0628, 0x0629, 0x062A, 0x062B, 0x062C, 0x062D, 0x062E, 0x062F,
- 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x00D7,
- 0x0637, 0x0638, 0x0639, 0x063A, 0x0640, 0x0640, 0x0642, 0x0643,
- 0x00E0, 0x0644, 0x00E2, 0x0645, 0x0646, 0x0647, 0x0648, 0x00E7,
- 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0649, 0x064A, 0x00EE, 0x00EF,
- 0x064B, 0x064C, 0x064D, 0x064E, 0x00F4, 0x064F, 0x0650, 0x00F7,
- 0x0651, 0x00F9, 0x0652, 0x00FB, 0x00FC, 0x200E, 0x200F, 0x06D2
-}
-
-#elif _CODE_PAGE == 1257
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1257(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0000, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x0000, 0x2030, 0x0000, 0x2039, 0x0000, 0x00A8, 0x02C7, 0x00B8,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x0000, 0x2122, 0x0000, 0x203A, 0x0000, 0x00AF, 0x02DB, 0x0000,
- 0x00A0, 0x0000, 0x00A2, 0x00A3, 0x00A4, 0x0000, 0x00A6, 0x00A7,
- 0x00D8, 0x00A9, 0x0156, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x0157, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00E6,
- 0x0104, 0x012E, 0x0100, 0x0106, 0x00C4, 0x00C5, 0x0118, 0x0112,
- 0x010C, 0x00C9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012A, 0x013B,
- 0x0160, 0x0143, 0x0145, 0x00D3, 0x014C, 0x00D5, 0x00D6, 0x00D7,
- 0x0172, 0x0141, 0x015A, 0x016A, 0x00DC, 0x017B, 0x017D, 0x00DF,
- 0x0105, 0x012F, 0x0101, 0x0107, 0x00E4, 0x00E5, 0x0119, 0x0113,
- 0x010D, 0x00E9, 0x017A, 0x0117, 0x0123, 0x0137, 0x012B, 0x013C,
- 0x0161, 0x0144, 0x0146, 0x00F3, 0x014D, 0x00F5, 0x00F6, 0x00F7,
- 0x0173, 0x014E, 0x015B, 0x016B, 0x00FC, 0x017C, 0x017E, 0x02D9
-};
-
-#elif _CODE_PAGE == 1258
-#define _TBLDEF 1
-static
-const uint16_t Tbl[] =
-{
- /* CP1258(0x80-0xFF) to Unicode conversion table */
- 0x20AC, 0x0000, 0x201A, 0x0192, 0x201E, 0x2026, 0x2020, 0x2021,
- 0x02C6, 0x2030, 0x0000, 0x2039, 0x0152, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x2018, 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014,
- 0x02DC, 0x2122, 0x0000, 0x203A, 0x0153, 0x0000, 0x0000, 0x0178,
- 0x00A0, 0x00A1, 0x00A2, 0x00A3, 0x00A4, 0x00A5, 0x00A6, 0x00A7,
- 0x00A8, 0x00A9, 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF,
- 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, 0x00B6, 0x00B7,
- 0x00B8, 0x00B9, 0x00BA, 0x00BB, 0x00BC, 0x00BD, 0x00BE, 0x00BF,
- 0x00C0, 0x00C1, 0x00C2, 0x0102, 0x00C4, 0x00C5, 0x00C6, 0x00C7,
- 0x00C8, 0x00C9, 0x00CA, 0x00CB, 0x0300, 0x00CD, 0x00CE, 0x00CF,
- 0x0110, 0x00D1, 0x0309, 0x00D3, 0x00D4, 0x01A0, 0x00D6, 0x00D7,
- 0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x01AF, 0x0303, 0x00DF,
- 0x00E0, 0x00E1, 0x00E2, 0x0103, 0x00E4, 0x00E5, 0x00E6, 0x00E7,
- 0x00E8, 0x00E9, 0x00EA, 0x00EB, 0x0301, 0x00ED, 0x00EE, 0x00EF,
- 0x0111, 0x00F1, 0x0323, 0x00F3, 0x00F4, 0x01A1, 0x00F6, 0x00F7,
- 0x00F8, 0x00F9, 0x00FA, 0x00FB, 0x00FC, 0x01B0, 0x20AB, 0x00FF
-};
-
-#endif
-
-
-#if !_TBLDEF || !_USE_LFN
-#error This file is not needed in current configuration. Remove from the project.
-#endif
-
-
-uint16_t ff_convert ( /* Converted character, Returns zero on error */
- uint16_t src, /* Character code to be converted */
- uint32_t dir /* 0: Unicode to OEMCP, 1: OEMCP to Unicode */
- )
-{
- uint16_t c;
-
-
- if (src < 0x80) { /* ASCII */
- c = src;
-
- } else {
- if (dir) { /* OEMCP to Unicode */
- c = (src >= 0x100) ? 0 : Tbl[src - 0x80];
-
- } else { /* Unicode to OEMCP */
- for (c = 0; c < 0x80; c++) {
- if (src == Tbl[c]) break;
- }
- c = (c + 0x80) & 0xFF;
- }
- }
-
- return c;
-}
-
-
-uint16_t ff_wtoupper ( /* Upper converted character */
- uint16_t chr /* Input character */
- )
-{
- static const uint16_t tbl_lower[] =
- {
- 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, 0x67, 0x68,
- 0x69, 0x6A, 0x6B, 0x6C, 0x6D, 0x6E, 0x6F, 0x70,
- 0x71, 0x72, 0x73, 0x74, 0x75, 0x76, 0x77, 0x78,
- 0x79, 0x7A, 0xA1, 0x00A2, 0x00A3, 0x00A5, 0x00AC, 0x00AF,
- 0xE0, 0xE1, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6, 0xE7,
- 0xE8, 0xE9, 0xEA, 0xEB, 0xEC, 0xED, 0xEE, 0xEF,
- 0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF8,
- 0xF9, 0xFA, 0xFB, 0xFC, 0xFD, 0xFE, 0x0FF, 0x101,
- 0x103, 0x105, 0x107, 0x109, 0x10B, 0x10D, 0x10F,
- 0x111, 0x113, 0x115, 0x117, 0x119, 0x11B, 0x11D,
- 0x11F, 0x121, 0x123, 0x125, 0x127, 0x129, 0x12B,
- 0x12D, 0x12F, 0x131, 0x133, 0x135, 0x137, 0x13A,
- 0x13C, 0x13E, 0x140, 0x142, 0x144, 0x146, 0x148,
- 0x14B, 0x14D, 0x14F, 0x151, 0x153, 0x155, 0x157,
- 0x159, 0x15B, 0x15D, 0x15F, 0x161, 0x163, 0x165,
- 0x167, 0x169, 0x16B, 0x16D, 0x16F, 0x171, 0x173,
- 0x175, 0x177, 0x17A, 0x17C, 0x17E, 0x192, 0x3B1,
- 0x3B2, 0x3B3, 0x3B4, 0x3B5, 0x3B6, 0x3B7, 0x3B8,
- 0x3B9, 0x3BA, 0x3BB, 0x3BC, 0x3BD, 0x3BE, 0x3BF,
- 0x3C0, 0x3C1, 0x3C3, 0x3C4, 0x3C5, 0x3C6, 0x3C7,
- 0x3C8, 0x3C9, 0x3CA, 0x430, 0x431, 0x432, 0x433,
- 0x434, 0x435, 0x436, 0x437, 0x438, 0x439, 0x43A,
- 0x43B, 0x43C, 0x43D, 0x43E, 0x43F, 0x440, 0x441,
- 0x442, 0x443, 0x444, 0x445, 0x446, 0x447, 0x448,
- 0x449, 0x44A, 0x44B, 0x44C, 0x44D, 0x44E, 0x44F,
- 0x451, 0x452, 0x453, 0x454, 0x455, 0x456, 0x457,
- 0x458, 0x459, 0x45A, 0x45B, 0x45C, 0x45E, 0x45F,
- 0x2170, 0x2171, 0x2172, 0x2173, 0x2174, 0x2175, 0x2176, 0x2177,
- 0x2178, 0x2179, 0x217A, 0x217B, 0x217C, 0x217D, 0x217E, 0x217F,
- 0xFF41, 0xFF42, 0xFF43, 0xFF44, 0xFF45, 0xFF46, 0xFF47, 0xFF48,
- 0xFF49, 0xFF4A, 0xFF4B, 0xFF4C, 0xFF4D, 0xFF4E, 0xFF4F, 0xFF50,
- 0xFF51, 0xFF52, 0xFF53, 0xFF54, 0xFF55, 0xFF56, 0xFF57, 0xFF58,
- 0xFF59, 0xFF5A, 0
- };
- static const uint16_t tbl_upper[] =
- {
- 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4A, 0x4B, 0x4C, 0x4D, 0x4E, 0x4F, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5A, 0x21, 0xFFE0, 0xFFE1, 0xFFE5, 0xFFE2, 0xFFE3, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6, 0xD8, 0xD9, 0xDA, 0xDB, 0xDC, 0xDD, 0xDE, 0x178, 0x100, 0x102, 0x104, 0x106, 0x108, 0x10A, 0x10C, 0x10E, 0x110, 0x112, 0x114, 0x116, 0x118, 0x11A, 0x11C, 0x11E, 0x120, 0x122, 0x124, 0x126, 0x128, 0x12A, 0x12C, 0x12E, 0x130, 0x132, 0x134, 0x136, 0x139, 0x13B, 0x13D, 0x13F, 0x141, 0x143, 0x145, 0x147, 0x14A, 0x14C, 0x14E, 0x150, 0x152, 0x154, 0x156, 0x158, 0x15A, 0x15C, 0x15E, 0x160, 0x162, 0x164, 0x166, 0x168, 0x16A, 0x16C, 0x16E, 0x170, 0x172, 0x174, 0x176, 0x179, 0x17B, 0x17D, 0x191, 0x391, 0x392, 0x393, 0x394, 0x395, 0x396, 0x397, 0x398, 0x399, 0x39A, 0x39B, 0x39C, 0x39D, 0x39E, 0x39F, 0x3A0, 0x3A1, 0x3A3, 0x3A4, 0x3A5, 0x3A6, 0x3A7, 0x3A8, 0x3A9, 0x3AA, 0x410, 0x411, 0x412, 0x413, 0x414, 0x415, 0x416, 0x417, 0x418, 0x419, 0x41A, 0x41B, 0x41C, 0x41D, 0x41E, 0x41F, 0x420, 0x421, 0x422, 0x423, 0x424, 0x425, 0x426, 0x427, 0x428, 0x429, 0x42A, 0x42B, 0x42C, 0x42D, 0x42E, 0x42F, 0x401, 0x402, 0x403, 0x404, 0x405, 0x406, 0x407, 0x408, 0x409, 0x40A, 0x40B, 0x40C, 0x40E, 0x40F, 0x2160, 0x2161, 0x2162, 0x2163, 0x2164, 0x2165, 0x2166, 0x2167, 0x2168, 0x2169, 0x216A, 0x216B, 0x216C, 0x216D, 0x216E, 0x216F, 0xFF21, 0xFF22, 0xFF23, 0xFF24, 0xFF25, 0xFF26, 0xFF27, 0xFF28, 0xFF29, 0xFF2A, 0xFF2B, 0xFF2C, 0xFF2D, 0xFF2E, 0xFF2F, 0xFF30, 0xFF31, 0xFF32, 0xFF33, 0xFF34, 0xFF35, 0xFF36, 0xFF37, 0xFF38, 0xFF39, 0xFF3A, 0 };
- int i;
-
-
- for (i = 0; tbl_lower[i] && chr != tbl_lower[i]; i++) ;
-
- return tbl_lower[i] ? tbl_upper[i] : chr;
-}
diff --git a/BaS_gcc/fs/ff.c b/BaS_gcc/fs/ff.c
deleted file mode 100644
index 2e88870..0000000
--- a/BaS_gcc/fs/ff.c
+++ /dev/null
@@ -1,4159 +0,0 @@
-/*----------------------------------------------------------------------------/
-/ FatFs - FAT file system module R0.09a (C)ChaN, 2012
-/-----------------------------------------------------------------------------/
-/ FatFs module is a generic FAT file system module for small embedded systems.
-/ This is a free software that opened for education, research and commercial
-/ developments under license policy of following terms.
-/
-/ Copyright (C) 2012, ChaN, all right reserved.
-/
-/ * The FatFs module is a free software and there is NO WARRANTY.
-/ * No restriction on use. You can use, modify and redistribute it for
-/ personal, non-profit or commercial products UNDER YOUR RESPONSIBILITY.
-/ * Redistributions of source code must retain the above copyright notice.
-/
-/-----------------------------------------------------------------------------/
-/ Feb 26,'06 R0.00 Prototype.
-/
-/ Apr 29,'06 R0.01 First stable version.
-/
-/ Jun 01,'06 R0.02 Added FAT12 support.
-/ Removed unbuffered mode.
-/ Fixed a problem on small (<32M) partition.
-/ Jun 10,'06 R0.02a Added a configuration option (_FS_MINIMUM).
-/
-/ Sep 22,'06 R0.03 Added f_rename().
-/ Changed option _FS_MINIMUM to _FS_MINIMIZE.
-/ Dec 11,'06 R0.03a Improved cluster scan algorithm to write files fast.
-/ Fixed f_mkdir() creates incorrect directory on FAT32.
-/
-/ Feb 04,'07 R0.04 Supported multiple drive system.
-/ Changed some interfaces for multiple drive system.
-/ Changed f_mountdrv() to f_mount().
-/ Added f_mkfs().
-/ Apr 01,'07 R0.04a Supported multiple partitions on a physical drive.
-/ Added a capability of extending file size to f_lseek().
-/ Added minimization level 3.
-/ Fixed an endian sensitive code in f_mkfs().
-/ May 05,'07 R0.04b Added a configuration option _USE_NTFLAG.
-/ Added FSInfo support.
-/ Fixed DBCS name can result FR_INVALID_NAME.
-/ Fixed short seek (<= csize) collapses the file object.
-/
-/ Aug 25,'07 R0.05 Changed arguments of f_read(), f_write() and f_mkfs().
-/ Fixed f_mkfs() on FAT32 creates incorrect FSInfo.
-/ Fixed f_mkdir() on FAT32 creates incorrect directory.
-/ Feb 03,'08 R0.05a Added f_truncate() and f_utime().
-/ Fixed off by one error at FAT sub-type determination.
-/ Fixed btr in f_read() can be mistruncated.
-/ Fixed cached sector is not flushed when create and close without write.
-/
-/ Apr 01,'08 R0.06 Added fputc(), fputs(), fprintf() and fgets().
-/ Improved performance of f_lseek() on moving to the same or following cluster.
-/
-/ Apr 01,'09 R0.07 Merged Tiny-FatFs as a configuration option. (_FS_TINY)
-/ Added long file name feature.
-/ Added multiple code page feature.
-/ Added re-entrancy for multitask operation.
-/ Added auto cluster size selection to f_mkfs().
-/ Added rewind option to f_readdir().
-/ Changed result code of critical errors.
-/ Renamed string functions to avoid name collision.
-/ Apr 14,'09 R0.07a Separated out OS dependent code on reentrant cfg.
-/ Added multiple sector size feature.
-/ Jun 21,'09 R0.07c Fixed f_unlink() can return FR_OK on error.
-/ Fixed wrong cache control in f_lseek().
-/ Added relative path feature.
-/ Added f_chdir() and f_chdrive().
-/ Added proper case conversion to extended char.
-/ Nov 03,'09 R0.07e Separated out configuration options from ff.h to ffconf.h.
-/ Fixed f_unlink() fails to remove a sub-dir on _FS_RPATH.
-/ Fixed name matching error on the 13 char boundary.
-/ Added a configuration option, _LFN_UNICODE.
-/ Changed f_readdir() to return the SFN with always upper case on non-LFN cfg.
-/
-/ May 15,'10 R0.08 Added a memory configuration option. (_USE_LFN = 3)
-/ Added file lock feature. (_FS_SHARE)
-/ Added fast seek feature. (_USE_FASTSEEK)
-/ Changed some types on the API, XCHAR->TCHAR.
-/ Changed fname member in the FILINFO structure on Unicode cfg.
-/ String functions support UTF-8 encoding files on Unicode cfg.
-/ Aug 16,'10 R0.08a Added f_getcwd(). (_FS_RPATH = 2)
-/ Added sector erase feature. (_USE_ERASE)
-/ Moved file lock semaphore table from fs object to the bss.
-/ Fixed a wrong directory entry is created on non-LFN cfg when the given name contains ';'.
-/ Fixed f_mkfs() creates wrong FAT32 volume.
-/ Jan 15,'11 R0.08b Fast seek feature is also applied to f_read() and f_write().
-/ f_lseek() reports required table size on creating CLMP.
-/ Extended format syntax of f_printf function.
-/ Ignores duplicated directory separators in given path name.
-/
-/ Sep 06,'11 R0.09 f_mkfs() supports multiple partition to finish the multiple partition feature.
-/ Added f_fdisk(). (_MULTI_PARTITION = 2)
-/ Aug 27,'12 R0.09a Fixed assertion failure due to OS/2 EA on FAT12/16 volume.
-/ Changed f_open() and f_opendir reject null object pointer to avoid crash.
-/ Changed option name _FS_SHARE to _FS_LOCK.
-/---------------------------------------------------------------------------*/
-
-#include
-#include /* FatFs configurations and declarations */
-#include /* Declarations of low level disk I/O functions */
-
-
-/*--------------------------------------------------------------------------
-
- Module Private Definitions
-
----------------------------------------------------------------------------*/
-
-#if _FATFS != 4004 /* Revision ID */
-#error Wrong include file (ff.h).
-#endif
-
-
-/* Definitions on sector size */
-#if _MAX_SS != 512 && _MAX_SS != 1024 && _MAX_SS != 2048 && _MAX_SS != 4096
-#error Wrong sector size.
-#endif
-#if _MAX_SS != 512
-#define SS(fs) ((fs)->ssize) /* Variable sector size */
-#else
-#define SS(fs) 512U /* Fixed sector size */
-#endif
-
-
-/* Reentrancy related */
-#if _FS_REENTRANT
-#if _USE_LFN == 1
-#error Static LFN work area must not be used in re-entrant configuration.
-#endif
-#define ENTER_FF(fs) { if (!lock_fs(fs)) return FR_TIMEOUT; }
-#define LEAVE_FF(fs, res) { unlock_fs(fs, res); return res; }
-#else
-#define ENTER_FF(fs)
-#define LEAVE_FF(fs, res) return res
-#endif
-
-#define ABORT(fs, res) { fp->flag |= FA__ERROR; LEAVE_FF(fs, res); }
-
-
-/* File access control feature */
-#if _FS_LOCK
-#if _FS_READONLY
-#error _FS_LOCK must be 0 on read-only cfg.
-#endif
-typedef struct
-{
- FATFS *fs; /* File ID 1, volume (NULL:blank entry) */
- uint32_t clu; /* File ID 2, directory */
- uint16_t idx; /* File ID 3, directory index */
- uint16_t ctr; /* File open counter, 0:none, 0x01..0xFF:read open count, 0x100:write mode */
-} FILESEM;
-#endif
-
-
-
-/* DBCS code ranges and SBCS extend char conversion table */
-
-#if _CODE_PAGE == 932 /* Japanese Shift-JIS */
-#define _DF1S 0x81 /* DBC 1st byte range 1 start */
-#define _DF1E 0x9F /* DBC 1st byte range 1 end */
-#define _DF2S 0xE0 /* DBC 1st byte range 2 start */
-#define _DF2E 0xFC /* DBC 1st byte range 2 end */
-#define _DS1S 0x40 /* DBC 2nd byte range 1 start */
-#define _DS1E 0x7E /* DBC 2nd byte range 1 end */
-#define _DS2S 0x80 /* DBC 2nd byte range 2 start */
-#define _DS2E 0xFC /* DBC 2nd byte range 2 end */
-
-#elif _CODE_PAGE == 936 /* Simplified Chinese GBK */
-#define _DF1S 0x81
-#define _DF1E 0xFE
-#define _DS1S 0x40
-#define _DS1E 0x7E
-#define _DS2S 0x80
-#define _DS2E 0xFE
-
-#elif _CODE_PAGE == 949 /* Korean */
-#define _DF1S 0x81
-#define _DF1E 0xFE
-#define _DS1S 0x41
-#define _DS1E 0x5A
-#define _DS2S 0x61
-#define _DS2E 0x7A
-#define _DS3S 0x81
-#define _DS3E 0xFE
-
-#elif _CODE_PAGE == 950 /* Traditional Chinese Big5 */
-#define _DF1S 0x81
-#define _DF1E 0xFE
-#define _DS1S 0x40
-#define _DS1E 0x7E
-#define _DS2S 0xA1
-#define _DS2E 0xFE
-
-#elif _CODE_PAGE == 437 /* U.S. (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x90,0x41,0x8E,0x41,0x8F,0x80,0x45,0x45,0x45,0x49,0x49,0x49,0x8E,0x8F,0x90,0x92,0x92,0x4F,0x99,0x4F,0x55,0x55,0x59,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0x21,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 720 /* Arabic (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x45,0x41,0x84,0x41,0x86,0x43,0x45,0x45,0x45,0x49,0x49,0x8D,0x8E,0x8F,0x90,0x92,0x92,0x93,0x94,0x95,0x49,0x49,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 737 /* Greek (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x92,0x92,0x93,0x94,0x95,0x96,0x97,0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87, \
- 0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0xAA,0x92,0x93,0x94,0x95,0x96,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0x97,0xEA,0xEB,0xEC,0xE4,0xED,0xEE,0xE7,0xE8,0xF1,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 775 /* Baltic (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x91,0xA0,0x8E,0x95,0x8F,0x80,0xAD,0xED,0x8A,0x8A,0xA1,0x8D,0x8E,0x8F,0x90,0x92,0x92,0xE2,0x99,0x95,0x96,0x97,0x97,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xE0,0xA3,0xA3,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xB5,0xB6,0xB7,0xB8,0xBD,0xBE,0xC6,0xC7,0xA5,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE3,0xE8,0xE8,0xEA,0xEA,0xEE,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 850 /* Multilingual Latin 1 (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xB7,0x8F,0x80,0xD2,0xD3,0xD4,0xD8,0xD7,0xDE,0x8E,0x8F,0x90,0x92,0x92,0xE2,0x99,0xE3,0xEA,0xEB,0x59,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9F, \
- 0xB5,0xD6,0xE0,0xE9,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0x21,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE7,0xE7,0xE9,0xEA,0xEB,0xED,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 852 /* Latin 2 (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xDE,0x8F,0x80,0x9D,0xD3,0x8A,0x8A,0xD7,0x8D,0x8E,0x8F,0x90,0x91,0x91,0xE2,0x99,0x95,0x95,0x97,0x97,0x99,0x9A,0x9B,0x9B,0x9D,0x9E,0x9F, \
- 0xB5,0xD6,0xE0,0xE9,0xA4,0xA4,0xA6,0xA6,0xA8,0xA8,0xAA,0x8D,0xAC,0xB8,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBD,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC6,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD1,0xD1,0xD2,0xD3,0xD2,0xD5,0xD6,0xD7,0xB7,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE3,0xD5,0xE6,0xE6,0xE8,0xE9,0xE8,0xEB,0xED,0xED,0xDD,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xEB,0xFC,0xFC,0xFE,0xFF}
-
-#elif _CODE_PAGE == 855 /* Cyrillic (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x81,0x81,0x83,0x83,0x85,0x85,0x87,0x87,0x89,0x89,0x8B,0x8B,0x8D,0x8D,0x8F,0x8F,0x91,0x91,0x93,0x93,0x95,0x95,0x97,0x97,0x99,0x99,0x9B,0x9B,0x9D,0x9D,0x9F,0x9F, \
- 0xA1,0xA1,0xA3,0xA3,0xA5,0xA5,0xA7,0xA7,0xA9,0xA9,0xAB,0xAB,0xAD,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB6,0xB6,0xB8,0xB8,0xB9,0xBA,0xBB,0xBC,0xBE,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD1,0xD1,0xD3,0xD3,0xD5,0xD5,0xD7,0xD7,0xDD,0xD9,0xDA,0xDB,0xDC,0xDD,0xE0,0xDF, \
- 0xE0,0xE2,0xE2,0xE4,0xE4,0xE6,0xE6,0xE8,0xE8,0xEA,0xEA,0xEC,0xEC,0xEE,0xEE,0xEF,0xF0,0xF2,0xF2,0xF4,0xF4,0xF6,0xF6,0xF8,0xF8,0xFA,0xFA,0xFC,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 857 /* Turkish (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xB7,0x8F,0x80,0xD2,0xD3,0xD4,0xD8,0xD7,0x98,0x8E,0x8F,0x90,0x92,0x92,0xE2,0x99,0xE3,0xEA,0xEB,0x98,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9E, \
- 0xB5,0xD6,0xE0,0xE9,0xA5,0xA5,0xA6,0xA6,0xA8,0xA9,0xAA,0xAB,0xAC,0x21,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xDE,0x59,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 858 /* Multilingual Latin 1 + Euro (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x9A,0x90,0xB6,0x8E,0xB7,0x8F,0x80,0xD2,0xD3,0xD4,0xD8,0xD7,0xDE,0x8E,0x8F,0x90,0x92,0x92,0xE2,0x99,0xE3,0xEA,0xEB,0x59,0x99,0x9A,0x9D,0x9C,0x9D,0x9E,0x9F, \
- 0xB5,0xD6,0xE0,0xE9,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0x21,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC7,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD1,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE5,0xE5,0xE6,0xE7,0xE7,0xE9,0xEA,0xEB,0xED,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 862 /* Hebrew (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0x41,0x49,0x4F,0x55,0xA5,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0x21,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 866 /* Russian (OEM) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0x90,0x91,0x92,0x93,0x9d,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F,0xF0,0xF0,0xF2,0xF2,0xF4,0xF4,0xF6,0xF6,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 874 /* Thai (OEM, Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 1250 /* Central Europe (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x8A,0x9B,0x8C,0x8D,0x8E,0x8F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xA3,0xB4,0xB5,0xB6,0xB7,0xB8,0xA5,0xAA,0xBB,0xBC,0xBD,0xBC,0xAF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xF7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xFF}
-
-#elif _CODE_PAGE == 1251 /* Cyrillic (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x82,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x80,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x8A,0x9B,0x8C,0x8D,0x8E,0x8F, \
- 0xA0,0xA2,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB2,0xA5,0xB5,0xB6,0xB7,0xA8,0xB9,0xAA,0xBB,0xA3,0xBD,0xBD,0xAF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF}
-
-#elif _CODE_PAGE == 1252 /* Latin 1 (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0xAd,0x9B,0x8C,0x9D,0xAE,0x9F, \
- 0xA0,0x21,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xF7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0x9F}
-
-#elif _CODE_PAGE == 1253 /* Greek (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xA2,0xB8,0xB9,0xBA, \
- 0xE0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xF2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xFB,0xBC,0xFD,0xBF,0xFF}
-
-#elif _CODE_PAGE == 1254 /* Turkish (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x8A,0x9B,0x8C,0x9D,0x9E,0x9F, \
- 0xA0,0x21,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xF7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0x9F}
-
-#elif _CODE_PAGE == 1255 /* Hebrew (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0x21,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xE0,0xE1,0xE2,0xE3,0xE4,0xE5,0xE6,0xE7,0xE8,0xE9,0xEA,0xEB,0xEC,0xED,0xEE,0xEF,0xF0,0xF1,0xF2,0xF3,0xF4,0xF5,0xF6,0xF7,0xF8,0xF9,0xFA,0xFB,0xFC,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 1256 /* Arabic (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x8C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0x41,0xE1,0x41,0xE3,0xE4,0xE5,0xE6,0x43,0x45,0x45,0x45,0x45,0xEC,0xED,0x49,0x49,0xF0,0xF1,0xF2,0xF3,0x4F,0xF5,0xF6,0xF7,0xF8,0x55,0xFA,0x55,0x55,0xFD,0xFE,0xFF}
-
-#elif _CODE_PAGE == 1257 /* Baltic (Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0x9C,0x9D,0x9E,0x9F, \
- 0xA0,0xA1,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xA8,0xB9,0xAA,0xBB,0xBC,0xBD,0xBE,0xAF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xF7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xFF}
-
-#elif _CODE_PAGE == 1258 /* Vietnam (OEM, Windows) */
-#define _DF1S 0
-#define _EXCVT {0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8A,0x8B,0x8C,0x8D,0x8E,0x8F,0x90,0x91,0x92,0x93,0x94,0x95,0x96,0x97,0x98,0x99,0x9A,0x9B,0xAC,0x9D,0x9E,0x9F, \
- 0xA0,0x21,0xA2,0xA3,0xA4,0xA5,0xA6,0xA7,0xA8,0xA9,0xAA,0xAB,0xAC,0xAD,0xAE,0xAF,0xB0,0xB1,0xB2,0xB3,0xB4,0xB5,0xB6,0xB7,0xB8,0xB9,0xBA,0xBB,0xBC,0xBD,0xBE,0xBF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xCC,0xCD,0xCE,0xCF,0xD0,0xD1,0xD2,0xD3,0xD4,0xD5,0xD6,0xD7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xDE,0xDF, \
- 0xC0,0xC1,0xC2,0xC3,0xC4,0xC5,0xC6,0xC7,0xC8,0xC9,0xCA,0xCB,0xEC,0xCD,0xCE,0xCF,0xD0,0xD1,0xF2,0xD3,0xD4,0xD5,0xD6,0xF7,0xD8,0xD9,0xDA,0xDB,0xDC,0xDD,0xFE,0x9F}
-
-#elif _CODE_PAGE == 1 /* ASCII (for only non-LFN cfg) */
-#if _USE_LFN
-#error Cannot use LFN feature without valid code page.
-#endif
-#define _DF1S 0
-
-#else
-#error Unknown code page
-
-#endif
-
-
-/*---------------------------------------------------------*/
-/* User Provided Timer Function for FatFs module */
-/*---------------------------------------------------------*/
-
-uint32_t get_fattime (void)
-{
- return ((uint32_t)(2012 - 1980) << 25) /* Year = 2012 */
- | ((uint32_t)1 << 21) /* Month = 1 */
- | ((uint32_t)1 << 16) /* Day_m = 1*/
- | ((uint32_t)0 << 11) /* Hour = 0 */
- | ((uint32_t)0 << 5) /* Min = 0 */
- | ((uint32_t)0 >> 1); /* Sec = 0 */
-}
-
-/* Character code support macros */
-#define IsUpper(c) (((c)>='A')&&((c)<='Z'))
-#define IsLower(c) (((c)>='a')&&((c)<='z'))
-#define IsDigit(c) (((c)>='0')&&((c)<='9'))
-
-#if _DF1S /* Code page is DBCS */
-
-#ifdef _DF2S /* Two 1st byte areas */
-#define IsDBCS1(c) (((uint8_t)(c) >= _DF1S && (uint8_t)(c) <= _DF1E) || ((uint8_t)(c) >= _DF2S && (uint8_t)(c) <= _DF2E))
-#else /* One 1st byte area */
-#define IsDBCS1(c) ((uint8_t)(c) >= _DF1S && (uint8_t)(c) <= _DF1E)
-#endif
-
-#ifdef _DS3S /* Three 2nd byte areas */
-#define IsDBCS2(c) (((uint8_t)(c) >= _DS1S && (uint8_t)(c) <= _DS1E) || ((uint8_t)(c) >= _DS2S && (uint8_t)(c) <= _DS2E) || ((uint8_t)(c) >= _DS3S && (uint8_t)(c) <= _DS3E))
-#else /* Two 2nd byte areas */
-#define IsDBCS2(c) (((uint8_t)(c) >= _DS1S && (uint8_t)(c) <= _DS1E) || ((uint8_t)(c) >= _DS2S && (uint8_t)(c) <= _DS2E))
-#endif
-
-#else /* Code page is SBCS */
-
-#define IsDBCS1(c) 0
-#define IsDBCS2(c) 0
-
-#endif /* _DF1S */
-
-
-/* Name status flags */
-#define NS 11 /* Index of name status byte in fn[] */
-#define NS_LOSS 0x01 /* Out of 8.3 format */
-#define NS_LFN 0x02 /* Force to create LFN entry */
-#define NS_LAST 0x04 /* Last segment */
-#define NS_BODY 0x08 /* Lower case flag (body) */
-#define NS_EXT 0x10 /* Lower case flag (ext) */
-#define NS_DOT 0x20 /* Dot entry */
-
-
-/* FAT sub-type boundaries */
-/* Note that the FAT spec by Microsoft says 4085 but Windows works with 4087! */
-#define MIN_FAT16 4086 /* Minimum number of clusters for FAT16 */
-#define MIN_FAT32 65526 /* Minimum number of clusters for FAT32 */
-
-
-/* FatFs refers the members in the FAT structures as byte array instead of
-/ structure member because the structure is not binary compatible between
-/ different platforms */
-
-#define BS_jmpBoot 0 /* Jump instruction (3) */
-#define BS_OEMName 3 /* OEM name (8) */
-#define BPB_BytsPerSec 11 /* Sector size [byte] (2) */
-#define BPB_SecPerClus 13 /* Cluster size [sector] (1) */
-#define BPB_RsvdSecCnt 14 /* Size of reserved area [sector] (2) */
-#define BPB_NumFATs 16 /* Number of FAT copies (1) */
-#define BPB_RootEntCnt 17 /* Number of root dir entries for FAT12/16 (2) */
-#define BPB_TotSec16 19 /* Volume size [sector] (2) */
-#define BPB_Media 21 /* Media descriptor (1) */
-#define BPB_FATSz16 22 /* FAT size [sector] (2) */
-#define BPB_SecPerTrk 24 /* Track size [sector] (2) */
-#define BPB_NumHeads 26 /* Number of heads (2) */
-#define BPB_HiddSec 28 /* Number of special hidden sectors (4) */
-#define BPB_TotSec32 32 /* Volume size [sector] (4) */
-#define BS_DrvNum 36 /* Physical drive number (2) */
-#define BS_BootSig 38 /* Extended boot signature (1) */
-#define BS_VolID 39 /* Volume serial number (4) */
-#define BS_VolLab 43 /* Volume label (8) */
-#define BS_FilSysType 54 /* File system type (1) */
-#define BPB_FATSz32 36 /* FAT size [sector] (4) */
-#define BPB_ExtFlags 40 /* Extended flags (2) */
-#define BPB_FSVer 42 /* File system version (2) */
-#define BPB_RootClus 44 /* Root dir first cluster (4) */
-#define BPB_FSInfo 48 /* Offset of FSInfo sector (2) */
-#define BPB_BkBootSec 50 /* Offset of backup boot sector (2) */
-#define BS_DrvNum32 64 /* Physical drive number (2) */
-#define BS_BootSig32 66 /* Extended boot signature (1) */
-#define BS_VolID32 67 /* Volume serial number (4) */
-#define BS_VolLab32 71 /* Volume label (8) */
-#define BS_FilSysType32 82 /* File system type (1) */
-#define FSI_LeadSig 0 /* FSI: Leading signature (4) */
-#define FSI_StrucSig 484 /* FSI: Structure signature (4) */
-#define FSI_Free_Count 488 /* FSI: Number of free clusters (4) */
-#define FSI_Nxt_Free 492 /* FSI: Last allocated cluster (4) */
-#define MBR_Table 446 /* MBR: Partition table offset (2) */
-#define SZ_PTE 16 /* MBR: Size of a partition table entry */
-#define BS_55AA 510 /* Boot sector signature (2) */
-
-#define DIR_Name 0 /* Short file name (11) */
-#define DIR_Attr 11 /* Attribute (1) */
-#define DIR_NTres 12 /* NT flag (1) */
-#define DIR_CrtTimeTenth 13 /* Created time sub-second (1) */
-#define DIR_CrtTime 14 /* Created time (2) */
-#define DIR_CrtDate 16 /* Created date (2) */
-#define DIR_LstAccDate 18 /* Last accessed date (2) */
-#define DIR_FstClusHI 20 /* Higher 16-bit of first cluster (2) */
-#define DIR_WrtTime 22 /* Modified time (2) */
-#define DIR_WrtDate 24 /* Modified date (2) */
-#define DIR_FstClusLO 26 /* Lower 16-bit of first cluster (2) */
-#define DIR_FileSize 28 /* File size (4) */
-#define LDIR_Ord 0 /* LFN entry order and LLE flag (1) */
-#define LDIR_Attr 11 /* LFN attribute (1) */
-#define LDIR_Type 12 /* LFN type (1) */
-#define LDIR_Chksum 13 /* Sum of corresponding SFN entry */
-#define LDIR_FstClusLO 26 /* Filled by zero (0) */
-#define SZ_DIR 32 /* Size of a directory entry */
-#define LLE 0x40 /* Last long entry flag in LDIR_Ord */
-#define DDE 0xE5 /* Deleted directory entry mark in DIR_Name[0] */
-#define NDDE 0x05 /* Replacement of the character collides with DDE */
-
-
-/*------------------------------------------------------------*/
-/* Module private work area */
-/*------------------------------------------------------------*/
-/* Note that uninitialized variables with static duration are
-/ zeroed/nulled at start-up. If not, the compiler or start-up
-/ routine is out of ANSI-C standard.
-*/
-
-#if _VOLUMES
-static
-FATFS *FatFs[_VOLUMES]; /* Pointer to the file system objects (logical drives) */
-#else
-#error Number of volumes must not be 0.
-#endif
-
-static
-uint16_t Fsid; /* File system mount ID */
-
-#if _FS_RPATH
-static
-uint8_t CurrVol; /* Current drive */
-#endif
-
-#if _FS_LOCK
-static
-FILESEM Files[_FS_LOCK]; /* File lock semaphores */
-#endif
-
-#if _USE_LFN == 0 /* No LFN feature */
-#define DEF_NAMEBUF uint8_t sfn[12]
-#define INIT_BUF(dobj) (dobj).fn = sfn
-#define FREE_BUF()
-
-#elif _USE_LFN == 1 /* LFN feature with static working buffer */
-static uint16_t LfnBuf[_MAX_LFN+1];
-#define DEF_NAMEBUF uint8_t sfn[12]
-#define INIT_BUF(dobj) { (dobj).fn = sfn; (dobj).lfn = LfnBuf; }
-#define FREE_BUF()
-
-#elif _USE_LFN == 2 /* LFN feature with dynamic working buffer on the stack */
-#define DEF_NAMEBUF uint8_t sfn[12]; uint16_t lbuf[_MAX_LFN+1]
-#define INIT_BUF(dobj) { (dobj).fn = sfn; (dobj).lfn = lbuf; }
-#define FREE_BUF()
-
-#elif _USE_LFN == 3 /* LFN feature with dynamic working buffer on the heap */
-#define DEF_NAMEBUF uint8_t sfn[12]; WCHAR *lfn
-#define INIT_BUF(dobj) { lfn = ff_memalloc((_MAX_LFN + 1) * 2); \
- if (!lfn) LEAVE_FF((dobj).fs, FR_NOT_ENOUGH_CORE); \
- (dobj).lfn = lfn; (dobj).fn = sfn; }
-#define FREE_BUF() ff_memfree(lfn)
-
-#else
-#error Wrong LFN configuration.
-#endif
-
-
-
-
-/*--------------------------------------------------------------------------
-
- Module Private Functions
-
----------------------------------------------------------------------------*/
-
-
-/*-----------------------------------------------------------------------*/
-/* String functions */
-/*-----------------------------------------------------------------------*/
-
-/* Copy memory to memory */
-static
-void mem_cpy (void* dst, const void* src, uint32_t cnt) {
- uint8_t *d = (uint8_t*)dst;
- const uint8_t *s = (const uint8_t*)src;
-
-#if _WORD_ACCESS == 1
- while (cnt >= sizeof (int)) {
- *(int*)d = *(int*)s;
- d += sizeof (int); s += sizeof (int);
- cnt -= sizeof (int);
- }
-#endif
- while (cnt--)
- *d++ = *s++;
-}
-
-/* Fill memory */
-static
-void mem_set (void* dst, int val, uint32_t cnt) {
- uint8_t *d = (uint8_t*)dst;
-
- while (cnt--)
- *d++ = (uint8_t)val;
-}
-
-/* Compare memory to memory */
-static
-int mem_cmp (const void* dst, const void* src, uint32_t cnt) {
- const uint8_t *d = (const uint8_t *)dst, *s = (const uint8_t *)src;
- int r = 0;
-
- while (cnt-- && (r = *d++ - *s++) == 0) ;
- return r;
-}
-
-/* Check if chr is contained in the string */
-static
-int chk_chr (const char* str, int chr) {
- while (*str && *str != chr) str++;
- return *str;
-}
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Request/Release grant to access the volume */
-/*-----------------------------------------------------------------------*/
-#if _FS_REENTRANT
-
-static
-int lock_fs (
- FATFS *fs /* File system object */
- )
-{
- return ff_req_grant(fs->sobj);
-}
-
-
-static
-void unlock_fs (
- FATFS *fs, /* File system object */
- FRESULT res /* Result code to be returned */
- )
-{
- if (fs &&
- res != FR_NOT_ENABLED &&
- res != FR_INVALID_DRIVE &&
- res != FR_INVALID_OBJECT &&
- res != FR_TIMEOUT) {
- ff_rel_grant(fs->sobj);
- }
-}
-#endif
-
-
-
-/*-----------------------------------------------------------------------*/
-/* File lock control functions */
-/*-----------------------------------------------------------------------*/
-#if _FS_LOCK
-
-static
-FRESULT chk_lock ( /* Check if the file can be accessed */
- DIR* dj, /* Directory object pointing the file to be checked */
- int acc /* Desired access (0:Read, 1:Write, 2:Delete/Rename) */
- )
-{
- uint32_t i, be;
-
- /* Search file semaphore table */
- for (i = be = 0; i < _FS_LOCK; i++) {
- if (Files[i].fs) { /* Existing entry */
- if (Files[i].fs == dj->fs && /* Check if the file matched with an open file */
- Files[i].clu == dj->sclust &&
- Files[i].idx == dj->index) break;
- } else { /* Blank entry */
- be++;
- }
- }
- if (i == _FS_LOCK) /* The file is not opened */
- return (be || acc == 2) ? FR_OK : FR_TOO_MANY_OPEN_FILES; /* Is there a blank entry for new file? */
-
- /* The file has been opened. Reject any open against writing file and all write mode open */
- return (acc || Files[i].ctr == 0x100) ? FR_LOCKED : FR_OK;
-}
-
-
-static
-int enq_lock (void) /* Check if an entry is available for a new file */
-{
- uint32_t i;
-
- for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
- return (i == _FS_LOCK) ? 0 : 1;
-}
-
-
-static
-uint32_t inc_lock ( /* Increment file open counter and returns its index (0:int error) */
- DIR* dj, /* Directory object pointing the file to register or increment */
- int acc /* Desired access mode (0:Read, !0:Write) */
- )
-{
- uint32_t i;
-
-
- for (i = 0; i < _FS_LOCK; i++) { /* Find the file */
- if (Files[i].fs == dj->fs &&
- Files[i].clu == dj->sclust &&
- Files[i].idx == dj->index) break;
- }
-
- if (i == _FS_LOCK) { /* Not opened. Register it as new. */
- for (i = 0; i < _FS_LOCK && Files[i].fs; i++) ;
- if (i == _FS_LOCK) return 0; /* No space to register (int err) */
- Files[i].fs = dj->fs;
- Files[i].clu = dj->sclust;
- Files[i].idx = dj->index;
- Files[i].ctr = 0;
- }
-
- if (acc && Files[i].ctr) return 0; /* Access violation (int err) */
-
- Files[i].ctr = acc ? 0x100 : Files[i].ctr + 1; /* Set semaphore value */
-
- return i + 1;
-}
-
-
-static
-FRESULT dec_lock ( /* Decrement file open counter */
- uint32_t i /* Semaphore index */
- )
-{
- uint16_t n;
- FRESULT res;
-
-
- if (--i < _FS_LOCK) {
- n = Files[i].ctr;
- if (n == 0x100) n = 0;
- if (n) n--;
- Files[i].ctr = n;
- if (!n) Files[i].fs = 0;
- res = FR_OK;
- } else {
- res = FR_INT_ERR;
- }
- return res;
-}
-
-
-static
-void clear_lock ( /* Clear lock entries of the volume */
- FATFS *fs
- )
-{
- uint32_t i;
-
- for (i = 0; i < _FS_LOCK; i++) {
- if (Files[i].fs == fs) Files[i].fs = 0;
- }
-}
-#endif
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Change window offset */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT move_window (
- FATFS *fs, /* File system object */
- uint32_t sector /* Sector number to make appearance in the fs->win[] */
- ) /* Move to zero only writes back dirty window */
-{
- uint32_t wsect;
-
-
- wsect = fs->winsect;
- if (wsect != sector) { /* Changed current window */
-#if !_FS_READONLY
- if (fs->wflag) { /* Write back dirty window if needed */
- if (disk_write(fs->drv, fs->win, wsect, 1) != RES_OK)
- return FR_DISK_ERR;
- fs->wflag = 0;
- if (wsect < (fs->fatbase + fs->fsize)) { /* In FAT area */
- uint8_t nf;
- for (nf = fs->n_fats; nf > 1; nf--) { /* Reflect the change to all FAT copies */
- wsect += fs->fsize;
- disk_write(fs->drv, fs->win, wsect, 1);
- }
- }
- }
-#endif
- if (sector) {
- if (disk_read(fs->drv, fs->win, sector, 1) != RES_OK)
- return FR_DISK_ERR;
- fs->winsect = sector;
- }
- }
-
- return FR_OK;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Clean-up cached data */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY
-static
-FRESULT sync ( /* FR_OK: successful, FR_DISK_ERR: failed */
- FATFS *fs /* File system object */
- )
-{
- FRESULT res;
-
-
- res = move_window(fs, 0);
- if (res == FR_OK) {
- /* Update FSInfo sector if needed */
- if (fs->fs_type == FS_FAT32 && fs->fsi_flag) {
- fs->winsect = 0;
- /* Create FSInfo structure */
- mem_set(fs->win, 0, 512);
- ST_WORD(fs->win+BS_55AA, 0xAA55);
- ST_DWORD(fs->win+FSI_LeadSig, 0x41615252);
- ST_DWORD(fs->win+FSI_StrucSig, 0x61417272);
- ST_DWORD(fs->win+FSI_Free_Count, fs->free_clust);
- ST_DWORD(fs->win+FSI_Nxt_Free, fs->last_clust);
- /* Write it into the FSInfo sector */
- disk_write(fs->drv, fs->win, fs->fsi_sector, 1);
- fs->fsi_flag = 0;
- }
- /* Make sure that no pending write process in the physical drive */
- if (disk_ioctl(fs->drv, CTRL_SYNC, 0) != RES_OK)
- res = FR_DISK_ERR;
- }
-
- return res;
-}
-#endif
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Get sector# from cluster# */
-/*-----------------------------------------------------------------------*/
-
-
-uint32_t clust2sect ( /* !=0: Sector number, 0: Failed - invalid cluster# */
- FATFS *fs, /* File system object */
- uint32_t clst /* Cluster# to be converted */
- )
-{
- clst -= 2;
- if (clst >= (fs->n_fatent - 2)) return 0; /* Invalid cluster# */
- return clst * fs->csize + fs->database;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* FAT access - Read value of a FAT entry */
-/*-----------------------------------------------------------------------*/
-
-
-uint32_t get_fat ( /* 0xFFFFFFFF:Disk error, 1:Internal error, Else:Cluster status */
- FATFS *fs, /* File system object */
- uint32_t clst /* Cluster# to get the link information */
- )
-{
- uint32_t wc, bc;
- uint8_t *p;
-
-
- if (clst < 2 || clst >= fs->n_fatent) /* Check range */
- return 1;
-
- switch (fs->fs_type) {
- case FS_FAT12 :
- bc = (uint32_t)clst; bc += bc / 2;
- if (move_window(fs, fs->fatbase + (bc / SS(fs)))) break;
- wc = fs->win[bc % SS(fs)]; bc++;
- if (move_window(fs, fs->fatbase + (bc / SS(fs)))) break;
- wc |= fs->win[bc % SS(fs)] << 8;
- return (clst & 1) ? (wc >> 4) : (wc & 0xFFF);
-
- case FS_FAT16 :
- if (move_window(fs, fs->fatbase + (clst / (SS(fs) / 2)))) break;
- p = &fs->win[clst * 2 % SS(fs)];
- return LD_WORD(p);
-
- case FS_FAT32 :
- if (move_window(fs, fs->fatbase + (clst / (SS(fs) / 4)))) break;
- p = &fs->win[clst * 4 % SS(fs)];
- return LD_DWORD(p) & 0x0FFFFFFF;
- }
-
- return 0xFFFFFFFF; /* An error occurred at the disk I/O layer */
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* FAT access - Change value of a FAT entry */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY
-
-FRESULT put_fat (
- FATFS *fs, /* File system object */
- uint32_t clst, /* Cluster# to be changed in range of 2 to fs->n_fatent - 1 */
- uint32_t val /* New value to mark the cluster */
- )
-{
- uint32_t bc;
- uint8_t *p;
- FRESULT res;
-
-
- if (clst < 2 || clst >= fs->n_fatent) { /* Check range */
- res = FR_INT_ERR;
-
- } else {
- switch (fs->fs_type) {
- case FS_FAT12 :
- bc = (uint32_t)clst; bc += bc / 2;
- res = move_window(fs, fs->fatbase + (bc / SS(fs)));
- if (res != FR_OK) break;
- p = &fs->win[bc % SS(fs)];
- *p = (clst & 1) ? ((*p & 0x0F) | ((uint8_t)val << 4)) : (uint8_t)val;
- bc++;
- fs->wflag = 1;
- res = move_window(fs, fs->fatbase + (bc / SS(fs)));
- if (res != FR_OK) break;
- p = &fs->win[bc % SS(fs)];
- *p = (clst & 1) ? (uint8_t)(val >> 4) : ((*p & 0xF0) | ((uint8_t)(val >> 8) & 0x0F));
- break;
-
- case FS_FAT16 :
- res = move_window(fs, fs->fatbase + (clst / (SS(fs) / 2)));
- if (res != FR_OK) break;
- p = &fs->win[clst * 2 % SS(fs)];
- ST_WORD(p, (uint16_t)val);
- break;
-
- case FS_FAT32 :
- res = move_window(fs, fs->fatbase + (clst / (SS(fs) / 4)));
- if (res != FR_OK) break;
- p = &fs->win[clst * 4 % SS(fs)];
- val |= LD_DWORD(p) & 0xF0000000;
- ST_DWORD(p, val);
- break;
-
- default :
- res = FR_INT_ERR;
- break;
- }
- fs->wflag = 1;
- }
-
- return res;
-}
-#endif /* !_FS_READONLY */
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* FAT handling - Remove a cluster chain */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY
-static
-FRESULT remove_chain (
- FATFS *fs, /* File system object */
- uint32_t clst /* Cluster# to remove a chain from */
- )
-{
- FRESULT res;
- uint32_t nxt;
-#if _USE_ERASE
- uint32_t scl = clst, ecl = clst, rt[2];
-#endif
-
- if (clst < 2 || clst >= fs->n_fatent) { /* Check range */
- res = FR_INT_ERR;
-
- } else {
- res = FR_OK;
- while (clst < fs->n_fatent) { /* Not a last link? */
- nxt = get_fat(fs, clst); /* Get cluster status */
- if (nxt == 0) break; /* Empty cluster? */
- if (nxt == 1) { res = FR_INT_ERR; break; } /* Internal error? */
- if (nxt == 0xFFFFFFFF) { res = FR_DISK_ERR; break; } /* Disk error? */
- res = put_fat(fs, clst, 0); /* Mark the cluster "empty" */
- if (res != FR_OK) break;
- if (fs->free_clust != 0xFFFFFFFF) { /* Update FSInfo */
- fs->free_clust++;
- fs->fsi_flag = 1;
- }
-#if _USE_ERASE
- if (ecl + 1 == nxt) { /* Is next cluster contiguous? */
- ecl = nxt;
- } else { /* End of contiguous clusters */
- rt[0] = clust2sect(fs, scl); /* Start sector */
- rt[1] = clust2sect(fs, ecl) + fs->csize - 1; /* End sector */
- disk_ioctl(fs->drv, CTRL_ERASE_SECTOR, rt); /* Erase the block */
- scl = ecl = nxt;
- }
-#endif
- clst = nxt; /* Next cluster */
- }
- }
-
- return res;
-}
-#endif
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* FAT handling - Stretch or Create a cluster chain */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY
-static
-uint32_t create_chain ( /* 0:No free cluster, 1:Internal error, 0xFFFFFFFF:Disk error, >=2:New cluster# */
- FATFS *fs, /* File system object */
- uint32_t clst /* Cluster# to stretch. 0 means create a new chain. */
- )
-{
- uint32_t cs, ncl, scl;
- FRESULT res;
-
-
- if (clst == 0) { /* Create a new chain */
- scl = fs->last_clust; /* Get suggested start point */
- if (!scl || scl >= fs->n_fatent) scl = 1;
- }
- else { /* Stretch the current chain */
- cs = get_fat(fs, clst); /* Check the cluster status */
- if (cs < 2) return 1; /* It is an invalid cluster */
- if (cs < fs->n_fatent) return cs; /* It is already followed by next cluster */
- scl = clst;
- }
-
- ncl = scl; /* Start cluster */
- for (;;) {
- ncl++; /* Next cluster */
- if (ncl >= fs->n_fatent) { /* Wrap around */
- ncl = 2;
- if (ncl > scl) return 0; /* No free cluster */
- }
- cs = get_fat(fs, ncl); /* Get the cluster status */
- if (cs == 0) break; /* Found a free cluster */
- if (cs == 0xFFFFFFFF || cs == 1)/* An error occurred */
- return cs;
- if (ncl == scl) return 0; /* No free cluster */
- }
-
- res = put_fat(fs, ncl, 0x0FFFFFFF); /* Mark the new cluster "last link" */
- if (res == FR_OK && clst != 0) {
- res = put_fat(fs, clst, ncl); /* Link it to the previous one if needed */
- }
- if (res == FR_OK) {
- fs->last_clust = ncl; /* Update FSINFO */
- if (fs->free_clust != 0xFFFFFFFF) {
- fs->free_clust--;
- fs->fsi_flag = 1;
- }
- } else {
- ncl = (res == FR_DISK_ERR) ? 0xFFFFFFFF : 1;
- }
-
- return ncl; /* Return new cluster number or error code */
-}
-#endif /* !_FS_READONLY */
-
-
-
-/*-----------------------------------------------------------------------*/
-/* FAT handling - Convert offset into cluster with link map table */
-/*-----------------------------------------------------------------------*/
-
-#if _USE_FASTSEEK
-static
-uint32_t clmt_clust ( /* <2:Error, >=2:Cluster number */
- FIL* fp, /* Pointer to the file object */
- uint32_t ofs /* File offset to be converted to cluster# */
- )
-{
- uint32_t cl, ncl, *tbl;
-
-
- tbl = fp->cltbl + 1; /* Top of CLMT */
- cl = ofs / SS(fp->fs) / fp->fs->csize; /* Cluster order from top of the file */
- for (;;) {
- ncl = *tbl++; /* Number of cluters in the fragment */
- if (!ncl) return 0; /* End of table? (error) */
- if (cl < ncl) break; /* In this fragment? */
- cl -= ncl; tbl++; /* Next fragment */
- }
- return cl + *tbl; /* Return the cluster number */
-}
-#endif /* _USE_FASTSEEK */
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Directory handling - Set directory index */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT dir_sdi (
- DIR *dj, /* Pointer to directory object */
- uint16_t idx /* Index of directory table */
- )
-{
- uint32_t clst;
- uint16_t ic;
-
-
- dj->index = idx;
- clst = dj->sclust;
- if (clst == 1 || clst >= dj->fs->n_fatent) /* Check start cluster range */
- return FR_INT_ERR;
- if (!clst && dj->fs->fs_type == FS_FAT32) /* Replace cluster# 0 with root cluster# if in FAT32 */
- clst = dj->fs->dirbase;
-
- if (clst == 0) { /* Static table (root-dir in FAT12/16) */
- dj->clust = clst;
- if (idx >= dj->fs->n_rootdir) /* Index is out of range */
- return FR_INT_ERR;
- dj->sect = dj->fs->dirbase + idx / (SS(dj->fs) / SZ_DIR); /* Sector# */
- }
- else { /* Dynamic table (sub-dirs or root-dir in FAT32) */
- ic = SS(dj->fs) / SZ_DIR * dj->fs->csize; /* Entries per cluster */
- while (idx >= ic) { /* Follow cluster chain */
- clst = get_fat(dj->fs, clst); /* Get next cluster */
- if (clst == 0xFFFFFFFF) return FR_DISK_ERR; /* Disk error */
- if (clst < 2 || clst >= dj->fs->n_fatent) /* Reached to end of table or int error */
- return FR_INT_ERR;
- idx -= ic;
- }
- dj->clust = clst;
- dj->sect = clust2sect(dj->fs, clst) + idx / (SS(dj->fs) / SZ_DIR); /* Sector# */
- }
-
- dj->dir = dj->fs->win + (idx % (SS(dj->fs) / SZ_DIR)) * SZ_DIR; /* Ptr to the entry in the sector */
-
- return FR_OK; /* Seek succeeded */
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Directory handling - Move directory table index next */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT dir_next ( /* FR_OK:Succeeded, FR_NO_FILE:End of table, FR_DENIED:EOT and could not stretch */
- DIR *dj, /* Pointer to directory object */
- int stretch /* 0: Do not stretch table, 1: Stretch table if needed */
- )
-{
- uint32_t clst;
- uint16_t i;
-
-
- //stretch = stretch; /* To suppress warning on read-only cfg. */
- i = dj->index + 1;
- if (!i || !dj->sect) /* Report EOT when index has reached 65535 */
- return FR_NO_FILE;
-
- if (!(i % (SS(dj->fs) / SZ_DIR))) { /* Sector changed? */
- dj->sect++; /* Next sector */
-
- if (dj->clust == 0) { /* Static table */
- if (i >= dj->fs->n_rootdir) /* Report EOT when end of table */
- return FR_NO_FILE;
- }
- else { /* Dynamic table */
- if (((i / (SS(dj->fs) / SZ_DIR)) & (dj->fs->csize - 1)) == 0) { /* Cluster changed? */
- clst = get_fat(dj->fs, dj->clust); /* Get next cluster */
- if (clst <= 1) return FR_INT_ERR;
- if (clst == 0xFFFFFFFF) return FR_DISK_ERR;
- if (clst >= dj->fs->n_fatent) { /* When it reached end of dynamic table */
-#if !_FS_READONLY
- uint8_t c;
- if (!stretch) return FR_NO_FILE; /* When do not stretch, report EOT */
- clst = create_chain(dj->fs, dj->clust); /* Stretch cluster chain */
- if (clst == 0) return FR_DENIED; /* No free cluster */
- if (clst == 1) return FR_INT_ERR;
- if (clst == 0xFFFFFFFF) return FR_DISK_ERR;
- /* Clean-up stretched table */
- if (move_window(dj->fs, 0)) return FR_DISK_ERR; /* Flush active window */
- mem_set(dj->fs->win, 0, SS(dj->fs)); /* Clear window buffer */
- dj->fs->winsect = clust2sect(dj->fs, clst); /* Cluster start sector */
- for (c = 0; c < dj->fs->csize; c++) { /* Fill the new cluster with 0 */
- dj->fs->wflag = 1;
- if (move_window(dj->fs, 0)) return FR_DISK_ERR;
- dj->fs->winsect++;
- }
- dj->fs->winsect -= c; /* Rewind window address */
-#else
- return FR_NO_FILE; /* Report EOT */
-#endif
- }
- dj->clust = clst; /* Initialize data for new cluster */
- dj->sect = clust2sect(dj->fs, clst);
- }
- }
- }
-
- dj->index = i;
- dj->dir = dj->fs->win + (i % (SS(dj->fs) / SZ_DIR)) * SZ_DIR;
-
- return FR_OK;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Directory handling - Load/Store start cluster number */
-/*-----------------------------------------------------------------------*/
-
-static
-uint32_t ld_clust (
- FATFS *fs, /* Pointer to the fs object */
- uint8_t *dir /* Pointer to the directory entry */
- )
-{
- uint32_t cl;
-
- cl = LD_WORD(dir+DIR_FstClusLO);
- if (fs->fs_type == FS_FAT32)
- cl |= (uint32_t)LD_WORD(dir+DIR_FstClusHI) << 16;
-
- return cl;
-}
-
-
-#if !_FS_READONLY
-static
-void st_clust (
- uint8_t *dir, /* Pointer to the directory entry */
- uint32_t cl /* Value to be set */
- )
-{
- ST_WORD(dir+DIR_FstClusLO, cl);
- ST_WORD(dir+DIR_FstClusHI, cl >> 16);
-}
-#endif
-
-
-
-/*-----------------------------------------------------------------------*/
-/* LFN handling - Test/Pick/Fit an LFN segment from/to directory entry */
-/*-----------------------------------------------------------------------*/
-#if _USE_LFN
-static
-const uint8_t LfnOfs[] = {1,3,5,7,9,14,16,18,20,22,24,28,30}; /* Offset of LFN chars in the directory entry */
-
-
-static
-int cmp_lfn ( /* 1:Matched, 0:Not matched */
- uint16_t *lfnbuf, /* Pointer to the LFN to be compared */
- uint8_t *dir /* Pointer to the directory entry containing a part of LFN */
- )
-{
- uint32_t i, s;
- uint16_t wc, uc;
-
-
- i = ((dir[LDIR_Ord] & ~LLE) - 1) * 13; /* Get offset in the LFN buffer */
- s = 0; wc = 1;
- do {
- uc = LD_WORD(dir+LfnOfs[s]); /* Pick an LFN character from the entry */
- if (wc) { /* Last char has not been processed */
- wc = ff_wtoupper(uc); /* Convert it to upper case */
- if (i >= _MAX_LFN || wc != ff_wtoupper(lfnbuf[i++])) /* Compare it */
- return 0; /* Not matched */
- } else {
- if (uc != 0xFFFF) return 0; /* Check filler */
- }
- } while (++s < 13); /* Repeat until all chars in the entry are checked */
-
- if ((dir[LDIR_Ord] & LLE) && wc && lfnbuf[i]) /* Last segment matched but different length */
- return 0;
-
- return 1; /* The part of LFN matched */
-}
-
-
-
-static
-int pick_lfn ( /* 1:Succeeded, 0:Buffer overflow */
- uint16_t *lfnbuf, /* Pointer to the Unicode-LFN buffer */
- uint8_t *dir /* Pointer to the directory entry */
- )
-{
- uint32_t i, s;
- uint16_t wc, uc;
-
-
- i = ((dir[LDIR_Ord] & 0x3F) - 1) * 13; /* Offset in the LFN buffer */
-
- s = 0; wc = 1;
- do {
- uc = LD_WORD(dir+LfnOfs[s]); /* Pick an LFN character from the entry */
- if (wc) { /* Last char has not been processed */
- if (i >= _MAX_LFN) return 0; /* Buffer overflow? */
- lfnbuf[i++] = wc = uc; /* Store it */
- } else {
- if (uc != 0xFFFF) return 0; /* Check filler */
- }
- } while (++s < 13); /* Read all character in the entry */
-
- if (dir[LDIR_Ord] & LLE) { /* Put terminator if it is the last LFN part */
- if (i >= _MAX_LFN) return 0; /* Buffer overflow? */
- lfnbuf[i] = 0;
- }
-
- return 1;
-}
-
-
-#if !_FS_READONLY
-static
-void fit_lfn (
- const uint16_t *lfnbuf, /* Pointer to the LFN buffer */
- uint8_t *dir, /* Pointer to the directory entry */
- uint8_t ord, /* LFN order (1-20) */
- uint8_t sum /* SFN sum */
- )
-{
- uint32_t i, s;
- uint16_t wc;
-
-
- dir[LDIR_Chksum] = sum; /* Set check sum */
- dir[LDIR_Attr] = AM_LFN; /* Set attribute. LFN entry */
- dir[LDIR_Type] = 0;
- ST_WORD(dir+LDIR_FstClusLO, 0);
-
- i = (ord - 1) * 13; /* Get offset in the LFN buffer */
- s = wc = 0;
- do {
- if (wc != 0xFFFF) wc = lfnbuf[i++]; /* Get an effective char */
- ST_WORD(dir+LfnOfs[s], wc); /* Put it */
- if (!wc) wc = 0xFFFF; /* Padding chars following last char */
- } while (++s < 13);
- if (wc == 0xFFFF || !lfnbuf[i]) ord |= LLE; /* Bottom LFN part is the start of LFN sequence */
- dir[LDIR_Ord] = ord; /* Set the LFN order */
-}
-
-#endif
-#endif
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Create numbered name */
-/*-----------------------------------------------------------------------*/
-#if _USE_LFN
-void gen_numname (
- uint8_t *dst, /* Pointer to generated SFN */
- const uint8_t *src, /* Pointer to source SFN to be modified */
- const uint16_t *lfn, /* Pointer to LFN */
- uint16_t seq /* Sequence number */
- )
-{
- uint8_t ns[8], c;
- uint32_t i, j;
-
-
- mem_cpy(dst, src, 11);
-
- if (seq > 5) { /* On many collisions, generate a hash number instead of sequential number */
- do seq = (seq >> 1) + (seq << 15) + (uint16_t)*lfn++; while (*lfn);
- }
-
- /* itoa (hexdecimal) */
- i = 7;
- do {
- c = (seq % 16) + '0';
- if (c > '9') c += 7;
- ns[i--] = c;
- seq /= 16;
- } while (seq);
- ns[i] = '~';
-
- /* Append the number */
- for (j = 0; j < i && dst[j] != ' '; j++) {
- if (IsDBCS1(dst[j])) {
- if (j == i - 1) break;
- j++;
- }
- }
- do {
- dst[j++] = (i < 8) ? ns[i++] : ' ';
- } while (j < 8);
-}
-#endif
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Calculate sum of an SFN */
-/*-----------------------------------------------------------------------*/
-#if _USE_LFN
-static
-uint8_t sum_sfn (
- const uint8_t *dir /* Ptr to directory entry */
- )
-{
- uint8_t sum = 0;
- uint32_t n = 11;
-
- do sum = (sum >> 1) + (sum << 7) + *dir++; while (--n);
- return sum;
-}
-#endif
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Directory handling - Find an object in the directory */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT dir_find (
- DIR *dj /* Pointer to the directory object linked to the file name */
- )
-{
- FRESULT res;
- uint8_t c, *dir;
-#if _USE_LFN
- uint8_t a, ord, sum;
-#endif
-
- res = dir_sdi(dj, 0); /* Rewind directory object */
- if (res != FR_OK) return res;
-
-#if _USE_LFN
- ord = sum = 0xFF;
-#endif
- do {
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- dir = dj->dir; /* Ptr to the directory entry of current index */
- c = dir[DIR_Name];
- if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
-#if _USE_LFN /* LFN configuration */
- a = dir[DIR_Attr] & AM_MASK;
- if (c == DDE || ((a & AM_VOL) && a != AM_LFN)) { /* An entry without valid data */
- ord = 0xFF;
- } else {
- if (a == AM_LFN) { /* An LFN entry is found */
- if (dj->lfn) {
- if (c & LLE) { /* Is it start of LFN sequence? */
- sum = dir[LDIR_Chksum];
- c &= ~LLE; ord = c; /* LFN start order */
- dj->lfn_idx = dj->index;
- }
- /* Check validity of the LFN entry and compare it with given name */
- ord = (c == ord && sum == dir[LDIR_Chksum] && cmp_lfn(dj->lfn, dir)) ? ord - 1 : 0xFF;
- }
- } else { /* An SFN entry is found */
- if (!ord && sum == sum_sfn(dir)) break; /* LFN matched? */
- ord = 0xFF; dj->lfn_idx = 0xFFFF; /* Reset LFN sequence */
- if (!(dj->fn[NS] & NS_LOSS) && !mem_cmp(dir, dj->fn, 11)) break; /* SFN matched? */
- }
- }
-#else /* Non LFN configuration */
- if (!(dir[DIR_Attr] & AM_VOL) && !mem_cmp(dir, dj->fn, 11)) /* Is it a valid entry? */
- break;
-#endif
- res = dir_next(dj, 0); /* Next entry */
- } while (res == FR_OK);
-
- return res;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Read an object from the directory */
-/*-----------------------------------------------------------------------*/
-#if _FS_MINIMIZE <= 1
-static
-FRESULT dir_read (
- DIR *dj /* Pointer to the directory object that pointing the entry to be read */
- )
-{
- FRESULT res;
- uint8_t c, *dir;
-#if _USE_LFN
- uint8_t a, ord = 0xFF, sum = 0xFF;
-#endif
-
- res = FR_NO_FILE;
- while (dj->sect) {
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- dir = dj->dir; /* Ptr to the directory entry of current index */
- c = dir[DIR_Name];
- if (c == 0) { res = FR_NO_FILE; break; } /* Reached to end of table */
-#if _USE_LFN /* LFN configuration */
- a = dir[DIR_Attr] & AM_MASK;
- if (c == DDE || (!_FS_RPATH && c == '.') || ((a & AM_VOL) && a != AM_LFN)) { /* An entry without valid data */
- ord = 0xFF;
- } else {
- if (a == AM_LFN) { /* An LFN entry is found */
- if (c & LLE) { /* Is it start of LFN sequence? */
- sum = dir[LDIR_Chksum];
- c &= ~LLE; ord = c;
- dj->lfn_idx = dj->index;
- }
- /* Check LFN validity and capture it */
- ord = (c == ord && sum == dir[LDIR_Chksum] && pick_lfn(dj->lfn, dir)) ? ord - 1 : 0xFF;
- } else { /* An SFN entry is found */
- if (ord || sum != sum_sfn(dir)) /* Is there a valid LFN? */
- dj->lfn_idx = 0xFFFF; /* It has no LFN. */
- break;
- }
- }
-#else /* Non LFN configuration */
- if (c != DDE && (_FS_RPATH || c != '.') && !(dir[DIR_Attr] & AM_VOL)) /* Is it a valid entry? */
- break;
-#endif
- res = dir_next(dj, 0); /* Next entry */
- if (res != FR_OK) break;
- }
-
- if (res != FR_OK) dj->sect = 0;
-
- return res;
-}
-#endif
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Register an object to the directory */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY
-static
-FRESULT dir_register ( /* FR_OK:Successful, FR_DENIED:No free entry or too many SFN collision, FR_DISK_ERR:Disk error */
- DIR *dj /* Target directory with object name to be created */
- )
-{
- FRESULT res;
- uint8_t c, *dir;
-#if _USE_LFN /* LFN configuration */
- uint16_t n, ne, is;
- uint8_t sn[12], *fn, sum;
- uint16_t *lfn;
-
-
- fn = dj->fn; lfn = dj->lfn;
- mem_cpy(sn, fn, 12);
-
- if (_FS_RPATH && (sn[NS] & NS_DOT)) /* Cannot create dot entry */
- return FR_INVALID_NAME;
-
- if (sn[NS] & NS_LOSS) { /* When LFN is out of 8.3 format, generate a numbered name */
- fn[NS] = 0; dj->lfn = 0; /* Find only SFN */
- for (n = 1; n < 100; n++) {
- gen_numname(fn, sn, lfn, n); /* Generate a numbered name */
- res = dir_find(dj); /* Check if the name collides with existing SFN */
- if (res != FR_OK) break;
- }
- if (n == 100) return FR_DENIED; /* Abort if too many collisions */
- if (res != FR_NO_FILE) return res; /* Abort if the result is other than 'not collided' */
- fn[NS] = sn[NS]; dj->lfn = lfn;
- }
-
- if (sn[NS] & NS_LFN) { /* When LFN is to be created, reserve an SFN + LFN entries. */
- for (ne = 0; lfn[ne]; ne++) ;
- ne = (ne + 25) / 13;
- } else { /* Otherwise reserve only an SFN entry. */
- ne = 1;
- }
-
- /* Reserve contiguous entries */
- res = dir_sdi(dj, 0);
- if (res != FR_OK) return res;
- n = is = 0;
- do {
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- c = *dj->dir; /* Check the entry status */
- if (c == DDE || c == 0) { /* Is it a blank entry? */
- if (n == 0) is = dj->index; /* First index of the contiguous entry */
- if (++n == ne) break; /* A contiguous entry that required count is found */
- } else {
- n = 0; /* Not a blank entry. Restart to search */
- }
- res = dir_next(dj, 1); /* Next entry with table stretch */
- } while (res == FR_OK);
-
- if (res == FR_OK && ne > 1) { /* Initialize LFN entry if needed */
- res = dir_sdi(dj, is);
- if (res == FR_OK) {
- sum = sum_sfn(dj->fn); /* Sum of the SFN tied to the LFN */
- ne--;
- do { /* Store LFN entries in bottom first */
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- fit_lfn(dj->lfn, dj->dir, (uint8_t)ne, sum);
- dj->fs->wflag = 1;
- res = dir_next(dj, 0); /* Next entry */
- } while (res == FR_OK && --ne);
- }
- }
-
-#else /* Non LFN configuration */
- res = dir_sdi(dj, 0);
- if (res == FR_OK) {
- do { /* Find a blank entry for the SFN */
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- c = *dj->dir;
- if (c == DDE || c == 0) break; /* Is it a blank entry? */
- res = dir_next(dj, 1); /* Next entry with table stretch */
- } while (res == FR_OK);
- }
-#endif
-
- if (res == FR_OK) { /* Initialize the SFN entry */
- res = move_window(dj->fs, dj->sect);
- if (res == FR_OK) {
- dir = dj->dir;
- mem_set(dir, 0, SZ_DIR); /* Clean the entry */
- mem_cpy(dir, dj->fn, 11); /* Put SFN */
-#if _USE_LFN
- dir[DIR_NTres] = *(dj->fn+NS) & (NS_BODY | NS_EXT); /* Put NT flag */
-#endif
- dj->fs->wflag = 1;
- }
- }
-
- return res;
-}
-#endif /* !_FS_READONLY */
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Remove an object from the directory */
-/*-----------------------------------------------------------------------*/
-#if !_FS_READONLY && !_FS_MINIMIZE
-static
-FRESULT dir_remove ( /* FR_OK: Successful, FR_DISK_ERR: A disk error */
- DIR *dj /* Directory object pointing the entry to be removed */
- )
-{
- FRESULT res;
-#if _USE_LFN /* LFN configuration */
- uint16_t i;
-
- i = dj->index; /* SFN index */
- res = dir_sdi(dj, (uint16_t)((dj->lfn_idx == 0xFFFF) ? i : dj->lfn_idx)); /* Goto the SFN or top of the LFN entries */
- if (res == FR_OK) {
- do {
- res = move_window(dj->fs, dj->sect);
- if (res != FR_OK) break;
- *dj->dir = DDE; /* Mark the entry "deleted" */
- dj->fs->wflag = 1;
- if (dj->index >= i) break; /* When reached SFN, all entries of the object has been deleted. */
- res = dir_next(dj, 0); /* Next entry */
- } while (res == FR_OK);
- if (res == FR_NO_FILE) res = FR_INT_ERR;
- }
-
-#else /* Non LFN configuration */
- res = dir_sdi(dj, dj->index);
- if (res == FR_OK) {
- res = move_window(dj->fs, dj->sect);
- if (res == FR_OK) {
- *dj->dir = DDE; /* Mark the entry "deleted" */
- dj->fs->wflag = 1;
- }
- }
-#endif
-
- return res;
-}
-#endif /* !_FS_READONLY */
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Pick a segment and create the object name in directory form */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT create_name (
- DIR *dj, /* Pointer to the directory object */
- const TCHAR **path /* Pointer to pointer to the segment in the path string */
- )
-{
-#ifdef _EXCVT
- static const uint8_t excvt[] = _EXCVT; /* Upper conversion table for extended chars */
-#endif
-
-#if _USE_LFN /* LFN configuration */
- uint8_t b, cf;
- uint16_t w, *lfn;
- uint32_t i, ni, si, di;
- const TCHAR *p;
-
- /* Create LFN in Unicode */
- for (p = *path; *p == '/' || *p == '\\'; p++) ; /* Strip duplicated separator */
- lfn = dj->lfn;
- si = di = 0;
- for (;;) {
- w = p[si++]; /* Get a character */
- if (w < ' ' || w == '/' || w == '\\') break; /* Break on end of segment */
- if (di >= _MAX_LFN) /* Reject too long name */
- return FR_INVALID_NAME;
-#if !_LFN_UNICODE
- w &= 0xFF;
- if (IsDBCS1(w)) { /* Check if it is a DBC 1st byte (always false on SBCS cfg) */
- b = (uint8_t)p[si++]; /* Get 2nd byte */
- if (!IsDBCS2(b))
- return FR_INVALID_NAME; /* Reject invalid sequence */
- w = (w << 8) + b; /* Create a DBC */
- }
- w = ff_convert(w, 1); /* Convert ANSI/OEM to Unicode */
- if (!w) return FR_INVALID_NAME; /* Reject invalid code */
-#endif
- if (w < 0x80 && chk_chr("\"*:<>\?|\x7F", w)) /* Reject illegal chars for LFN */
- return FR_INVALID_NAME;
- lfn[di++] = w; /* Store the Unicode char */
- }
- *path = &p[si]; /* Return pointer to the next segment */
- cf = (w < ' ') ? NS_LAST : 0; /* Set last segment flag if end of path */
-#if _FS_RPATH
- if ((di == 1 && lfn[di-1] == '.') || /* Is this a dot entry? */
- (di == 2 && lfn[di-1] == '.' && lfn[di-2] == '.')) {
- lfn[di] = 0;
- for (i = 0; i < 11; i++)
- dj->fn[i] = (i < di) ? '.' : ' ';
- dj->fn[i] = cf | NS_DOT; /* This is a dot entry */
- return FR_OK;
- }
-#endif
- while (di) { /* Strip trailing spaces and dots */
- w = lfn[di-1];
- if (w != ' ' && w != '.') break;
- di--;
- }
- if (!di) return FR_INVALID_NAME; /* Reject nul string */
-
- lfn[di] = 0; /* LFN is created */
-
- /* Create SFN in directory form */
- mem_set(dj->fn, ' ', 11);
- for (si = 0; lfn[si] == ' ' || lfn[si] == '.'; si++) ; /* Strip leading spaces and dots */
- if (si) cf |= NS_LOSS | NS_LFN;
- while (di && lfn[di - 1] != '.') di--; /* Find extension (di<=si: no extension) */
-
- b = i = 0; ni = 8;
- for (;;) {
- w = lfn[si++]; /* Get an LFN char */
- if (!w) break; /* Break on end of the LFN */
- if (w == ' ' || (w == '.' && si != di)) { /* Remove spaces and dots */
- cf |= NS_LOSS | NS_LFN; continue;
- }
-
- if (i >= ni || si == di) { /* Extension or end of SFN */
- if (ni == 11) { /* Long extension */
- cf |= NS_LOSS | NS_LFN; break;
- }
- if (si != di) cf |= NS_LOSS | NS_LFN; /* Out of 8.3 format */
- if (si > di) break; /* No extension */
- si = di; i = 8; ni = 11; /* Enter extension section */
- b <<= 2; continue;
- }
-
- if (w >= 0x80) { /* Non ASCII char */
-#ifdef _EXCVT
- w = ff_convert(w, 0); /* Unicode -> OEM code */
- if (w) w = excvt[w - 0x80]; /* Convert extended char to upper (SBCS) */
-#else
- w = ff_convert(ff_wtoupper(w), 0); /* Upper converted Unicode -> OEM code */
-#endif
- cf |= NS_LFN; /* Force create LFN entry */
- }
-
- if (_DF1S && w >= 0x100) { /* Double byte char (always false on SBCS cfg) */
- if (i >= ni - 1) {
- cf |= NS_LOSS | NS_LFN; i = ni; continue;
- }
- dj->fn[i++] = (uint8_t)(w >> 8);
- } else { /* Single byte char */
- if (!w || chk_chr("+,;=[]", w)) { /* Replace illegal chars for SFN */
- w = '_'; cf |= NS_LOSS | NS_LFN;/* Lossy conversion */
- } else {
- if (IsUpper(w)) { /* ASCII large capital */
- b |= 2;
- } else {
- if (IsLower(w)) { /* ASCII small capital */
- b |= 1; w -= 0x20;
- }
- }
- }
- }
- dj->fn[i++] = (uint8_t)w;
- }
-
- if (dj->fn[0] == DDE) dj->fn[0] = NDDE; /* If the first char collides with deleted mark, replace it with 0x05 */
-
- if (ni == 8) b <<= 2;
- if ((b & 0x0C) == 0x0C || (b & 0x03) == 0x03) /* Create LFN entry when there are composite capitals */
- cf |= NS_LFN;
- if (!(cf & NS_LFN)) { /* When LFN is in 8.3 format without extended char, NT flags are created */
- if ((b & 0x03) == 0x01) cf |= NS_EXT; /* NT flag (Extension has only small capital) */
- if ((b & 0x0C) == 0x04) cf |= NS_BODY; /* NT flag (Filename has only small capital) */
- }
-
- dj->fn[NS] = cf; /* SFN is created */
-
- return FR_OK;
-
-
-#else /* Non-LFN configuration */
- uint8_t b, c, d, *sfn;
- uint32_t ni, si, i;
- const char *p;
-
- /* Create file name in directory form */
- for (p = *path; *p == '/' || *p == '\\'; p++) ; /* Strip duplicated separator */
- sfn = dj->fn;
- mem_set(sfn, ' ', 11);
- si = i = b = 0; ni = 8;
-#if _FS_RPATH
- if (p[si] == '.') { /* Is this a dot entry? */
- for (;;) {
- c = (uint8_t)p[si++];
- if (c != '.' || si >= 3) break;
- sfn[i++] = c;
- }
- if (c != '/' && c != '\\' && c > ' ') return FR_INVALID_NAME;
- *path = &p[si]; /* Return pointer to the next segment */
- sfn[NS] = (c <= ' ') ? NS_LAST | NS_DOT : NS_DOT; /* Set last segment flag if end of path */
- return FR_OK;
- }
-#endif
- for (;;) {
- c = (uint8_t)p[si++];
- if (c <= ' ' || c == '/' || c == '\\') break; /* Break on end of segment */
- if (c == '.' || i >= ni) {
- if (ni != 8 || c != '.') return FR_INVALID_NAME;
- i = 8; ni = 11;
- b <<= 2; continue;
- }
- if (c >= 0x80) { /* Extended char? */
- b |= 3; /* Eliminate NT flag */
-#ifdef _EXCVT
- c = excvt[c - 0x80]; /* Upper conversion (SBCS) */
-#else
-#if !_DF1S /* ASCII only cfg */
- return FR_INVALID_NAME;
-#endif
-#endif
- }
- if (IsDBCS1(c)) { /* Check if it is a DBC 1st byte (always false on SBCS cfg) */
- d = (uint8_t)p[si++]; /* Get 2nd byte */
- if (!IsDBCS2(d) || i >= ni - 1) /* Reject invalid DBC */
- return FR_INVALID_NAME;
- sfn[i++] = c;
- sfn[i++] = d;
- } else { /* Single byte code */
- if (chk_chr("\"*+,:;<=>\?[]|\x7F", c)) /* Reject illegal chrs for SFN */
- return FR_INVALID_NAME;
- if (IsUpper(c)) { /* ASCII large capital? */
- b |= 2;
- } else {
- if (IsLower(c)) { /* ASCII small capital? */
- b |= 1; c -= 0x20;
- }
- }
- sfn[i++] = c;
- }
- }
- *path = &p[si]; /* Return pointer to the next segment */
- c = (c <= ' ') ? NS_LAST : 0; /* Set last segment flag if end of path */
-
- if (!i) return FR_INVALID_NAME; /* Reject nul string */
- if (sfn[0] == DDE) sfn[0] = NDDE; /* When first char collides with DDE, replace it with 0x05 */
-
- if (ni == 8) b <<= 2;
- if ((b & 0x03) == 0x01) c |= NS_EXT; /* NT flag (Name extension has only small capital) */
- if ((b & 0x0C) == 0x04) c |= NS_BODY; /* NT flag (Name body has only small capital) */
-
- sfn[NS] = c; /* Store NT flag, File name is created */
-
- return FR_OK;
-#endif
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Get file information from directory entry */
-/*-----------------------------------------------------------------------*/
-#if _FS_MINIMIZE <= 1
-static
-void get_fileinfo ( /* No return code */
- DIR *dj, /* Pointer to the directory object */
- FILINFO *fno /* Pointer to the file information to be filled */
- )
-{
- uint32_t i;
- uint8_t nt, *dir;
- TCHAR *p, c;
-
-
- p = fno->fname;
- if (dj->sect) {
- dir = dj->dir;
- nt = dir[DIR_NTres]; /* NT flag */
- for (i = 0; i < 8; i++) { /* Copy name body */
- c = dir[i];
- if (c == ' ') break;
- if (c == NDDE) c = (TCHAR)DDE;
- if (_USE_LFN && (nt & NS_BODY) && IsUpper(c)) c += 0x20;
-#if _LFN_UNICODE
- if (IsDBCS1(c) && i < 7 && IsDBCS2(dir[i+1]))
- c = (c << 8) | dir[++i];
- c = ff_convert(c, 1);
- if (!c) c = '?';
-#endif
- *p++ = c;
- }
- if (dir[8] != ' ') { /* Copy name extension */
- *p++ = '.';
- for (i = 8; i < 11; i++) {
- c = dir[i];
- if (c == ' ') break;
- if (_USE_LFN && (nt & NS_EXT) && IsUpper(c)) c += 0x20;
-#if _LFN_UNICODE
- if (IsDBCS1(c) && i < 10 && IsDBCS2(dir[i+1]))
- c = (c << 8) | dir[++i];
- c = ff_convert(c, 1);
- if (!c) c = '?';
-#endif
- *p++ = c;
- }
- }
- fno->fattrib = dir[DIR_Attr]; /* Attribute */
- fno->fsize = LD_DWORD(dir+DIR_FileSize); /* Size */
- fno->fdate = LD_WORD(dir+DIR_WrtDate); /* Date */
- fno->ftime = LD_WORD(dir+DIR_WrtTime); /* Time */
- }
- *p = 0; /* Terminate SFN str by a \0 */
-
-#if _USE_LFN
- if (fno->lfname && fno->lfsize) {
- TCHAR *tp = fno->lfname;
- uint16_t w, *lfn;
-
- i = 0;
- if (dj->sect && dj->lfn_idx != 0xFFFF) {/* Get LFN if available */
- lfn = dj->lfn;
- while ((w = *lfn++) != 0) { /* Get an LFN char */
-#if !_LFN_UNICODE
- w = ff_convert(w, 0); /* Unicode -> OEM conversion */
- if (!w) { i = 0; break; } /* Could not convert, no LFN */
- if (_DF1S && w >= 0x100) /* Put 1st byte if it is a DBC (always false on SBCS cfg) */
- tp[i++] = (TCHAR)(w >> 8);
-#endif
- if (i >= fno->lfsize - 1) { i = 0; break; } /* Buffer overflow, no LFN */
- tp[i++] = (TCHAR)w;
- }
- }
- tp[i] = 0; /* Terminate the LFN str by a \0 */
- }
-#endif
-}
-#endif /* _FS_MINIMIZE <= 1 */
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Follow a file path */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT follow_path ( /* FR_OK(0): successful, !=0: error code */
- DIR *dj, /* Directory object to return last directory and found object */
- const TCHAR *path /* Full-path string to find a file or directory */
- )
-{
- FRESULT res;
- uint8_t *dir, ns;
-
-
-#if _FS_RPATH
- if (*path == '/' || *path == '\\') { /* There is a heading separator */
- path++; dj->sclust = 0; /* Strip it and start from the root dir */
- } else { /* No heading separator */
- dj->sclust = dj->fs->cdir; /* Start from the current dir */
- }
-#else
- if (*path == '/' || *path == '\\') /* Strip heading separator if exist */
- path++;
- dj->sclust = 0; /* Start from the root dir */
-#endif
-
- if ((uint32_t)*path < ' ') { /* Nul path means the start directory itself */
- res = dir_sdi(dj, 0);
- dj->dir = 0;
- } else { /* Follow path */
- for (;;) {
- res = create_name(dj, &path); /* Get a segment */
- if (res != FR_OK) break;
- res = dir_find(dj); /* Find it */
- ns = *(dj->fn+NS);
- if (res != FR_OK) { /* Failed to find the object */
- if (res != FR_NO_FILE) break; /* Abort if any hard error occurred */
- /* Object not found */
- if (_FS_RPATH && (ns & NS_DOT)) { /* If dot entry is not exit */
- dj->sclust = 0; dj->dir = 0; /* It is the root dir */
- res = FR_OK;
- if (!(ns & NS_LAST)) continue;
- } else { /* Could not find the object */
- if (!(ns & NS_LAST)) res = FR_NO_PATH;
- }
- break;
- }
- if (ns & NS_LAST) break; /* Last segment match. Function completed. */
- dir = dj->dir; /* There is next segment. Follow the sub directory */
- if (!(dir[DIR_Attr] & AM_DIR)) { /* Cannot follow because it is a file */
- res = FR_NO_PATH; break;
- }
- dj->sclust = ld_clust(dj->fs, dir);
- }
- }
-
- return res;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Load a sector and check if it is an FAT Volume Boot Record */
-/*-----------------------------------------------------------------------*/
-
-static
-uint8_t check_fs ( /* 0:FAT-VBR, 1:Any BR but not FAT, 2:Not a BR, 3:Disk error */
- FATFS *fs, /* File system object */
- uint32_t sect /* Sector# (lba) to check if it is an FAT boot record or not */
- )
-{
- if (disk_read(fs->drv, fs->win, sect, 1) != RES_OK) /* Load boot record */
- return 3;
- if (LD_WORD(&fs->win[BS_55AA]) != 0xAA55) /* Check record signature (always placed at offset 510 even if the sector size is >512) */
- return 2;
-
- if ((LD_DWORD(&fs->win[BS_FilSysType]) & 0xFFFFFF) == 0x544146) /* Check "FAT" string */
- return 0;
- if ((LD_DWORD(&fs->win[BS_FilSysType32]) & 0xFFFFFF) == 0x544146)
- return 0;
-
- return 1;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Check if the file system object is valid or not */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT chk_mounted ( /* FR_OK(0): successful, !=0: any error occurred */
- const TCHAR **path, /* Pointer to pointer to the path name (drive number) */
- FATFS **rfs, /* Pointer to pointer to the found file system object */
- uint8_t wmode /* !=0: Check write protection for write access */
- )
-{
- uint8_t fmt, b, pi, *tbl;
- uint32_t vol;
- DSTATUS stat;
- uint32_t bsect, fasize, tsect, sysect, nclst, szbfat;
- uint16_t nrsv;
- const TCHAR *p = *path;
- FATFS *fs;
-
-
- /* Get logical drive number from the path name */
- vol = p[0] - '0'; /* Is there a drive number? */
- if (vol <= 9 && p[1] == ':') { /* Found a drive number, get and strip it */
- p += 2; *path = p; /* Return pointer to the path name */
- } else { /* No drive number is given */
-#if _FS_RPATH
- vol = CurrVol; /* Use current drive */
-#else
- vol = 0; /* Use drive 0 */
-#endif
- }
-
- /* Check if the file system object is valid or not */
- *rfs = 0;
- if (vol >= _VOLUMES) /* Is the drive number valid? */
- return FR_INVALID_DRIVE;
- fs = FatFs[vol]; /* Get corresponding file system object */
- if (!fs) return FR_NOT_ENABLED; /* Is the file system object available? */
-
- ENTER_FF(fs); /* Lock file system */
-
- *rfs = fs; /* Return pointer to the corresponding file system object */
- if (fs->fs_type) { /* If the volume has been mounted */
- stat = disk_status(fs->drv);
- if (!(stat & STA_NOINIT)) { /* and the physical drive is kept initialized (has not been changed), */
- if (!_FS_READONLY && wmode && (stat & STA_PROTECT)) /* Check write protection if needed */
- return FR_WRITE_PROTECTED;
- return FR_OK; /* The file system object is valid */
- }
- }
-
- /* The file system object is not valid. */
- /* Following code attempts to mount the volume. (analyze BPB and initialize the fs object) */
-
- fs->fs_type = 0; /* Clear the file system object */
- fs->drv = LD2PD(vol); /* Bind the logical drive and a physical drive */
- stat = disk_initialize(fs->drv); /* Initialize the physical drive */
- if (stat & STA_NOINIT) /* Check if the initialization succeeded */
- return FR_NOT_READY; /* Failed to initialize due to no medium or hard error */
- if (!_FS_READONLY && wmode && (stat & STA_PROTECT)) /* Check disk write protection if needed */
- return FR_WRITE_PROTECTED;
-#if _MAX_SS != 512 /* Get disk sector size (variable sector size cfg only) */
- if (disk_ioctl(fs->drv, GET_SECTOR_SIZE, &fs->ssize) != RES_OK)
- return FR_DISK_ERR;
-#endif
- /* Search FAT partition on the drive. Supports only generic partitions, FDISK and SFD. */
- fmt = check_fs(fs, bsect = 0); /* Load sector 0 and check if it is an FAT-VBR (in SFD) */
- if (LD2PT(vol) && !fmt) fmt = 1; /* Force non-SFD if the volume is forced partition */
- if (fmt == 1) { /* Not an FAT-VBR, the physical drive can be partitioned */
- /* Check the partition listed in the partition table */
- pi = LD2PT(vol);
- if (pi) pi--;
- tbl = &fs->win[MBR_Table + pi * SZ_PTE];/* Partition table */
- if (tbl[4]) { /* Is the partition existing? */
- bsect = LD_DWORD(&tbl[8]); /* Partition offset in LBA */
- fmt = check_fs(fs, bsect); /* Check the partition */
- }
- }
- if (fmt == 3) return FR_DISK_ERR;
- if (fmt) return FR_NO_FILESYSTEM; /* No FAT volume is found */
-
- /* An FAT volume is found. Following code initializes the file system object */
-
- if (LD_WORD(fs->win+BPB_BytsPerSec) != SS(fs)) /* (BPB_BytsPerSec must be equal to the physical sector size) */
- return FR_NO_FILESYSTEM;
-
- fasize = LD_WORD(fs->win+BPB_FATSz16); /* Number of sectors per FAT */
- if (!fasize) fasize = LD_DWORD(fs->win+BPB_FATSz32);
- fs->fsize = fasize;
-
- fs->n_fats = b = fs->win[BPB_NumFATs]; /* Number of FAT copies */
- if (b != 1 && b != 2) return FR_NO_FILESYSTEM; /* (Must be 1 or 2) */
- fasize *= b; /* Number of sectors for FAT area */
-
- fs->csize = b = fs->win[BPB_SecPerClus]; /* Number of sectors per cluster */
- if (!b || (b & (b - 1))) return FR_NO_FILESYSTEM; /* (Must be power of 2) */
-
- fs->n_rootdir = LD_WORD(fs->win+BPB_RootEntCnt); /* Number of root directory entries */
- if (fs->n_rootdir % (SS(fs) / SZ_DIR)) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be sector aligned) */
-
- tsect = LD_WORD(fs->win+BPB_TotSec16); /* Number of sectors on the volume */
- if (!tsect) tsect = LD_DWORD(fs->win+BPB_TotSec32);
-
- nrsv = LD_WORD(fs->win+BPB_RsvdSecCnt); /* Number of reserved sectors */
- if (!nrsv) return FR_NO_FILESYSTEM; /* (BPB_RsvdSecCnt must not be 0) */
-
- /* Determine the FAT sub type */
- sysect = nrsv + fasize + fs->n_rootdir / (SS(fs) / SZ_DIR); /* RSV+FAT+DIR */
- if (tsect < sysect) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
- nclst = (tsect - sysect) / fs->csize; /* Number of clusters */
- if (!nclst) return FR_NO_FILESYSTEM; /* (Invalid volume size) */
- fmt = FS_FAT12;
- if (nclst >= MIN_FAT16) fmt = FS_FAT16;
- if (nclst >= MIN_FAT32) fmt = FS_FAT32;
-
- /* Boundaries and Limits */
- fs->n_fatent = nclst + 2; /* Number of FAT entries */
- fs->database = bsect + sysect; /* Data start sector */
- fs->fatbase = bsect + nrsv; /* FAT start sector */
- if (fmt == FS_FAT32) {
- if (fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must be 0) */
- fs->dirbase = LD_DWORD(fs->win+BPB_RootClus); /* Root directory start cluster */
- szbfat = fs->n_fatent * 4; /* (Required FAT size) */
- } else {
- if (!fs->n_rootdir) return FR_NO_FILESYSTEM; /* (BPB_RootEntCnt must not be 0) */
- fs->dirbase = fs->fatbase + fasize; /* Root directory start sector */
- szbfat = (fmt == FS_FAT16) ? /* (Required FAT size) */
- fs->n_fatent * 2 : fs->n_fatent * 3 / 2 + (fs->n_fatent & 1);
- }
- if (fs->fsize < (szbfat + (SS(fs) - 1)) / SS(fs)) /* (BPB_FATSz must not be less than required) */
- return FR_NO_FILESYSTEM;
-
-#if !_FS_READONLY
- /* Initialize cluster allocation information */
- fs->free_clust = 0xFFFFFFFF;
- fs->last_clust = 0;
-
- /* Get fsinfo if available */
- if (fmt == FS_FAT32) {
- fs->fsi_flag = 0;
- fs->fsi_sector = bsect + LD_WORD(fs->win+BPB_FSInfo);
- if (disk_read(fs->drv, fs->win, fs->fsi_sector, 1) == RES_OK &&
- LD_WORD(fs->win+BS_55AA) == 0xAA55 &&
- LD_DWORD(fs->win+FSI_LeadSig) == 0x41615252 &&
- LD_DWORD(fs->win+FSI_StrucSig) == 0x61417272) {
- fs->last_clust = LD_DWORD(fs->win+FSI_Nxt_Free);
- fs->free_clust = LD_DWORD(fs->win+FSI_Free_Count);
- }
- }
-#endif
- fs->fs_type = fmt; /* FAT sub-type */
- fs->id = ++Fsid; /* File system mount ID */
- fs->winsect = 0; /* Invalidate sector cache */
- fs->wflag = 0;
-#if _FS_RPATH
- fs->cdir = 0; /* Current directory (root dir) */
-#endif
-#if _FS_LOCK /* Clear file lock semaphores */
- clear_lock(fs);
-#endif
-
- return FR_OK;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Check if the file/dir object is valid or not */
-/*-----------------------------------------------------------------------*/
-
-static
-FRESULT validate ( /* FR_OK(0): The object is valid, !=0: Invalid */
- void* obj /* Pointer to the object FIL/DIR to check validity */
- )
-{
- FIL *fil;
-
-
- fil = (FIL*)obj; /* Assuming offset of fs and id in the FIL/DIR is identical */
- if (!fil->fs || !fil->fs->fs_type || fil->fs->id != fil->id)
- return FR_INVALID_OBJECT;
-
- ENTER_FF(fil->fs); /* Lock file system */
-
- if (disk_status(fil->fs->drv) & STA_NOINIT)
- return FR_NOT_READY;
-
- return FR_OK;
-}
-
-
-
-
-/*--------------------------------------------------------------------------
-
- Public Functions
-
---------------------------------------------------------------------------*/
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Mount/Unmount a Logical Drive */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_mount (
- uint8_t vol, /* Logical drive number to be mounted/unmounted */
- FATFS *fs /* Pointer to new file system object (NULL for unmount)*/
- )
-{
- FATFS *rfs;
-
-
- if (vol >= _VOLUMES) /* Check if the drive number is valid */
- return FR_INVALID_DRIVE;
- rfs = FatFs[vol]; /* Get current fs object */
-
- if (rfs) {
-#if _FS_LOCK
- clear_lock(rfs);
-#endif
-#if _FS_REENTRANT /* Discard sync object of the current volume */
- if (!ff_del_syncobj(rfs->sobj)) return FR_INT_ERR;
-#endif
- rfs->fs_type = 0; /* Clear old fs object */
- }
-
- if (fs) {
- fs->fs_type = 0; /* Clear new fs object */
-#if _FS_REENTRANT /* Create sync object for the new volume */
- if (!ff_cre_syncobj(vol, &fs->sobj)) return FR_INT_ERR;
-#endif
- }
- FatFs[vol] = fs; /* Register new fs object */
-
- return FR_OK;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Open or Create a File */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_open (
- FIL *fp, /* Pointer to the blank file object */
- const TCHAR *path, /* Pointer to the file name */
- uint8_t mode /* Access mode and file open mode flags */
- )
-{
- FRESULT res;
- DIR dj;
- uint8_t *dir;
- DEF_NAMEBUF;
-
-
- if (!fp) return FR_INVALID_OBJECT;
- fp->fs = 0; /* Clear file object */
-
-#if !_FS_READONLY
- mode &= FA_READ | FA_WRITE | FA_CREATE_ALWAYS | FA_OPEN_ALWAYS | FA_CREATE_NEW;
- res = chk_mounted(&path, &dj.fs, (uint8_t)(mode & ~FA_READ));
-#else
- mode &= FA_READ;
- res = chk_mounted(&path, &dj.fs, 0);
-#endif
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- dir = dj.dir;
-#if !_FS_READONLY /* R/W configuration */
- if (res == FR_OK) {
- if (!dir) /* Current dir itself */
- res = FR_INVALID_NAME;
-#if _FS_LOCK
- else
- res = chk_lock(&dj, (mode & ~FA_READ) ? 1 : 0);
-#endif
- }
- /* Create or Open a file */
- if (mode & (FA_CREATE_ALWAYS | FA_OPEN_ALWAYS | FA_CREATE_NEW)) {
- uint32_t dw, cl;
-
- if (res != FR_OK) { /* No file, create new */
- if (res == FR_NO_FILE) /* There is no file to open, create a new entry */
-#if _FS_LOCK
- res = enq_lock() ? dir_register(&dj) : FR_TOO_MANY_OPEN_FILES;
-#else
- res = dir_register(&dj);
-#endif
- mode |= FA_CREATE_ALWAYS; /* File is created */
- dir = dj.dir; /* New entry */
- }
- else { /* Any object is already existing */
- if (dir[DIR_Attr] & (AM_RDO | AM_DIR)) { /* Cannot overwrite it (R/O or DIR) */
- res = FR_DENIED;
- } else {
- if (mode & FA_CREATE_NEW) /* Cannot create as new file */
- res = FR_EXIST;
- }
- }
- if (res == FR_OK && (mode & FA_CREATE_ALWAYS)) { /* Truncate it if overwrite mode */
- dw = get_fattime(); /* Created time */
- ST_DWORD(dir+DIR_CrtTime, dw);
- dir[DIR_Attr] = 0; /* Reset attribute */
- ST_DWORD(dir+DIR_FileSize, 0); /* size = 0 */
- cl = ld_clust(dj.fs, dir); /* Get start cluster */
- st_clust(dir, 0); /* cluster = 0 */
- dj.fs->wflag = 1;
- if (cl) { /* Remove the cluster chain if exist */
- dw = dj.fs->winsect;
- res = remove_chain(dj.fs, cl);
- if (res == FR_OK) {
- dj.fs->last_clust = cl - 1; /* Reuse the cluster hole */
- res = move_window(dj.fs, dw);
- }
- }
- }
- }
- else { /* Open an existing file */
- if (res == FR_OK) { /* Follow succeeded */
- if (dir[DIR_Attr] & AM_DIR) { /* It is a directory */
- res = FR_NO_FILE;
- } else {
- if ((mode & FA_WRITE) && (dir[DIR_Attr] & AM_RDO)) /* R/O violation */
- res = FR_DENIED;
- }
- }
- }
- if (res == FR_OK) {
- if (mode & FA_CREATE_ALWAYS) /* Set file change flag if created or overwritten */
- mode |= FA__WRITTEN;
- fp->dir_sect = dj.fs->winsect; /* Pointer to the directory entry */
- fp->dir_ptr = dir;
-#if _FS_LOCK
- fp->lockid = inc_lock(&dj, (mode & ~FA_READ) ? 1 : 0);
- if (!fp->lockid) res = FR_INT_ERR;
-#endif
- }
-
-#else /* R/O configuration */
- if (res == FR_OK) { /* Follow succeeded */
- dir = dj.dir;
- if (!dir) { /* Current dir itself */
- res = FR_INVALID_NAME;
- } else {
- if (dir[DIR_Attr] & AM_DIR) /* It is a directory */
- res = FR_NO_FILE;
- }
- }
-#endif
- FREE_BUF();
-
- if (res == FR_OK) {
- fp->flag = mode; /* File access mode */
- fp->sclust = ld_clust(dj.fs, dir); /* File start cluster */
- fp->fsize = LD_DWORD(dir+DIR_FileSize); /* File size */
- fp->fptr = 0; /* File pointer */
- fp->dsect = 0;
-#if _USE_FASTSEEK
- fp->cltbl = 0; /* Normal seek mode */
-#endif
- fp->fs = dj.fs; fp->id = dj.fs->id; /* Validate file object */
- }
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Read File */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_read (
- FIL *fp, /* Pointer to the file object */
- void *buff, /* Pointer to data buffer */
- uint32_t btr, /* Number of bytes to read */
- uint32_t *br /* Pointer to number of bytes read */
- )
-{
- FRESULT res;
- uint32_t clst, sect, remain;
- uint32_t rcnt, cc;
- uint8_t csect, *rbuff = buff;
-
-
- *br = 0; /* Clear read byte counter */
-
- res = validate(fp); /* Check validity */
- if (res != FR_OK) LEAVE_FF(fp->fs, res);
- if (fp->flag & FA__ERROR) /* Aborted file? */
- LEAVE_FF(fp->fs, FR_INT_ERR);
- if (!(fp->flag & FA_READ)) /* Check access mode */
- LEAVE_FF(fp->fs, FR_DENIED);
- remain = fp->fsize - fp->fptr;
- if (btr > remain) btr = (uint32_t)remain; /* Truncate btr by remaining bytes */
-
- for ( ; btr; /* Repeat until all data read */
- rbuff += rcnt, fp->fptr += rcnt, *br += rcnt, btr -= rcnt) {
- if ((fp->fptr % SS(fp->fs)) == 0) { /* On the sector boundary? */
- csect = (uint8_t)(fp->fptr / SS(fp->fs) & (fp->fs->csize - 1)); /* Sector offset in the cluster */
- if (!csect) { /* On the cluster boundary? */
- if (fp->fptr == 0) { /* On the top of the file? */
- clst = fp->sclust; /* Follow from the origin */
- } else { /* Middle or end of the file */
-#if _USE_FASTSEEK
- if (fp->cltbl)
- clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
- else
-#endif
- clst = get_fat(fp->fs, fp->clust); /* Follow cluster chain on the FAT */
- }
- if (clst < 2) ABORT(fp->fs, FR_INT_ERR);
- if (clst == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- fp->clust = clst; /* Update current cluster */
- }
- sect = clust2sect(fp->fs, fp->clust); /* Get current sector */
- if (!sect) ABORT(fp->fs, FR_INT_ERR);
- sect += csect;
- cc = btr / SS(fp->fs); /* When remaining bytes >= sector size, */
- if (cc) { /* Read maximum contiguous sectors directly */
- if (csect + cc > fp->fs->csize) /* Clip at cluster boundary */
- cc = fp->fs->csize - csect;
- if (disk_read(fp->fs->drv, rbuff, sect, (uint8_t)cc) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
-#if !_FS_READONLY && _FS_MINIMIZE <= 2 /* Replace one of the read sectors with cached data if it contains a dirty sector */
-#if _FS_TINY
- if (fp->fs->wflag && fp->fs->winsect - sect < cc)
- mem_cpy(rbuff + ((fp->fs->winsect - sect) * SS(fp->fs)), fp->fs->win, SS(fp->fs));
-#else
- if ((fp->flag & FA__DIRTY) && fp->dsect - sect < cc)
- mem_cpy(rbuff + ((fp->dsect - sect) * SS(fp->fs)), fp->buf, SS(fp->fs));
-#endif
-#endif
- rcnt = SS(fp->fs) * cc; /* Number of bytes transferred */
- continue;
- }
-#if !_FS_TINY
- if (fp->dsect != sect) { /* Load data sector if not in cache */
-#if !_FS_READONLY
- if (fp->flag & FA__DIRTY) { /* Write-back dirty sector cache */
- if (disk_write(fp->fs->drv, fp->buf, fp->dsect, 1) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- if (disk_read(fp->fs->drv, fp->buf, sect, 1) != RES_OK) /* Fill sector cache */
- ABORT(fp->fs, FR_DISK_ERR);
- }
-#endif
- fp->dsect = sect;
- }
- rcnt = SS(fp->fs) - ((uint32_t)fp->fptr % SS(fp->fs)); /* Get partial sector data from sector buffer */
- if (rcnt > btr) rcnt = btr;
-#if _FS_TINY
- if (move_window(fp->fs, fp->dsect)) /* Move sector window */
- ABORT(fp->fs, FR_DISK_ERR);
- mem_cpy(rbuff, &fp->fs->win[fp->fptr % SS(fp->fs)], rcnt); /* Pick partial sector */
-#else
- mem_cpy(rbuff, &fp->buf[fp->fptr % SS(fp->fs)], rcnt); /* Pick partial sector */
-#endif
- }
-
- LEAVE_FF(fp->fs, FR_OK);
-}
-
-
-
-
-#if !_FS_READONLY
-/*-----------------------------------------------------------------------*/
-/* Write File */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_write (
- FIL *fp, /* Pointer to the file object */
- const void *buff, /* Pointer to the data to be written */
- uint32_t btw, /* Number of bytes to write */
- uint32_t *bw /* Pointer to number of bytes written */
- )
-{
- FRESULT res;
- uint32_t clst, sect;
- uint32_t wcnt, cc;
- const uint8_t *wbuff = buff;
- uint8_t csect;
-
-
- *bw = 0; /* Clear write byte counter */
-
- res = validate(fp); /* Check validity */
- if (res != FR_OK) LEAVE_FF(fp->fs, res);
- if (fp->flag & FA__ERROR) /* Aborted file? */
- LEAVE_FF(fp->fs, FR_INT_ERR);
- if (!(fp->flag & FA_WRITE)) /* Check access mode */
- LEAVE_FF(fp->fs, FR_DENIED);
- if ((uint32_t)(fp->fsize + btw) < fp->fsize) btw = 0; /* File size cannot reach 4GB */
-
- for ( ; btw; /* Repeat until all data written */
- wbuff += wcnt, fp->fptr += wcnt, *bw += wcnt, btw -= wcnt) {
- if ((fp->fptr % SS(fp->fs)) == 0) { /* On the sector boundary? */
- csect = (uint8_t)(fp->fptr / SS(fp->fs) & (fp->fs->csize - 1)); /* Sector offset in the cluster */
- if (!csect) { /* On the cluster boundary? */
- if (fp->fptr == 0) { /* On the top of the file? */
- clst = fp->sclust; /* Follow from the origin */
- if (clst == 0) /* When no cluster is allocated, */
- fp->sclust = clst = create_chain(fp->fs, 0); /* Create a new cluster chain */
- } else { /* Middle or end of the file */
-#if _USE_FASTSEEK
- if (fp->cltbl)
- clst = clmt_clust(fp, fp->fptr); /* Get cluster# from the CLMT */
- else
-#endif
- clst = create_chain(fp->fs, fp->clust); /* Follow or stretch cluster chain on the FAT */
- }
- if (clst == 0) break; /* Could not allocate a new cluster (disk full) */
- if (clst == 1) ABORT(fp->fs, FR_INT_ERR);
- if (clst == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- fp->clust = clst; /* Update current cluster */
- }
-#if _FS_TINY
- if (fp->fs->winsect == fp->dsect && move_window(fp->fs, 0)) /* Write-back sector cache */
- ABORT(fp->fs, FR_DISK_ERR);
-#else
- if (fp->flag & FA__DIRTY) { /* Write-back sector cache */
- if (disk_write(fp->fs->drv, fp->buf, fp->dsect, 1) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- sect = clust2sect(fp->fs, fp->clust); /* Get current sector */
- if (!sect) ABORT(fp->fs, FR_INT_ERR);
- sect += csect;
- cc = btw / SS(fp->fs); /* When remaining bytes >= sector size, */
- if (cc) { /* Write maximum contiguous sectors directly */
- if (csect + cc > fp->fs->csize) /* Clip at cluster boundary */
- cc = fp->fs->csize - csect;
- if (disk_write(fp->fs->drv, wbuff, sect, (uint8_t)cc) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
-#if _FS_TINY
- if (fp->fs->winsect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct write */
- mem_cpy(fp->fs->win, wbuff + ((fp->fs->winsect - sect) * SS(fp->fs)), SS(fp->fs));
- fp->fs->wflag = 0;
- }
-#else
- if (fp->dsect - sect < cc) { /* Refill sector cache if it gets invalidated by the direct write */
- mem_cpy(fp->buf, wbuff + ((fp->dsect - sect) * SS(fp->fs)), SS(fp->fs));
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- wcnt = SS(fp->fs) * cc; /* Number of bytes transferred */
- continue;
- }
-#if _FS_TINY
- if (fp->fptr >= fp->fsize) { /* Avoid silly cache filling at growing edge */
- if (move_window(fp->fs, 0)) ABORT(fp->fs, FR_DISK_ERR);
- fp->fs->winsect = sect;
- }
-#else
- if (fp->dsect != sect) { /* Fill sector cache with file data */
- if (fp->fptr < fp->fsize &&
- disk_read(fp->fs->drv, fp->buf, sect, 1) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
- }
-#endif
- fp->dsect = sect;
- }
- wcnt = SS(fp->fs) - ((uint32_t)fp->fptr % SS(fp->fs));/* Put partial sector into file I/O buffer */
- if (wcnt > btw) wcnt = btw;
-#if _FS_TINY
- if (move_window(fp->fs, fp->dsect)) /* Move sector window */
- ABORT(fp->fs, FR_DISK_ERR);
- mem_cpy(&fp->fs->win[fp->fptr % SS(fp->fs)], wbuff, wcnt); /* Fit partial sector */
- fp->fs->wflag = 1;
-#else
- mem_cpy(&fp->buf[fp->fptr % SS(fp->fs)], wbuff, wcnt); /* Fit partial sector */
- fp->flag |= FA__DIRTY;
-#endif
- }
-
- if (fp->fptr > fp->fsize) fp->fsize = fp->fptr; /* Update file size if needed */
- fp->flag |= FA__WRITTEN; /* Set file change flag */
-
- LEAVE_FF(fp->fs, FR_OK);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Synchronize the File Object */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_sync (
- FIL *fp /* Pointer to the file object */
- )
-{
- FRESULT res;
- uint32_t tim;
- uint8_t *dir;
-
-
- res = validate(fp); /* Check validity of the object */
- if (res == FR_OK) {
- if (fp->flag & FA__WRITTEN) { /* Has the file been written? */
-#if !_FS_TINY /* Write-back dirty buffer */
- if (fp->flag & FA__DIRTY) {
- if (disk_write(fp->fs->drv, fp->buf, fp->dsect, 1) != RES_OK)
- LEAVE_FF(fp->fs, FR_DISK_ERR);
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- /* Update the directory entry */
- res = move_window(fp->fs, fp->dir_sect);
- if (res == FR_OK) {
- dir = fp->dir_ptr;
- dir[DIR_Attr] |= AM_ARC; /* Set archive bit */
- ST_DWORD(dir+DIR_FileSize, fp->fsize); /* Update file size */
- st_clust(dir, fp->sclust); /* Update start cluster */
- tim = get_fattime(); /* Update updated time */
- ST_DWORD(dir+DIR_WrtTime, tim);
- ST_WORD(dir+DIR_LstAccDate, 0);
- fp->flag &= ~FA__WRITTEN;
- fp->fs->wflag = 1;
- res = sync(fp->fs);
- }
- }
- }
-
- LEAVE_FF(fp->fs, res);
-}
-
-#endif /* !_FS_READONLY */
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Close File */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_close (
- FIL *fp /* Pointer to the file object to be closed */
- )
-{
- FRESULT res;
-
-
-#if _FS_READONLY
- res = validate(fp);
- {
-#if _FS_REENTRANT
- FATFS *fs = fp->fs;
-#endif
- if (res == FR_OK) fp->fs = 0; /* Discard file object */
- LEAVE_FF(fs, res);
- }
-#else
- res = f_sync(fp); /* Flush cached data */
-#if _FS_LOCK
- if (res == FR_OK) { /* Decrement open counter */
-#if _FS_REENTRANT
- FATFS *fs = fp->fs;;
- res = validate(fp);
- if (res == FR_OK) {
- res = dec_lock(fp->lockid);
- unlock_fs(fs, FR_OK);
- }
-#else
- res = dec_lock(fp->lockid);
-#endif
- }
-#endif
- if (res == FR_OK) fp->fs = 0; /* Discard file object */
- return res;
-#endif
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Current Drive/Directory Handlings */
-/*-----------------------------------------------------------------------*/
-
-#if _FS_RPATH >= 1
-
-FRESULT f_chdrive (
- uint8_t drv /* Drive number */
- )
-{
- if (drv >= _VOLUMES) return FR_INVALID_DRIVE;
-
- CurrVol = drv;
-
- return FR_OK;
-}
-
-
-
-FRESULT f_chdir (
- const TCHAR *path /* Pointer to the directory path */
- )
-{
- FRESULT res;
- DIR dj;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 0);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the path */
- FREE_BUF();
- if (res == FR_OK) { /* Follow completed */
- if (!dj.dir) {
- dj.fs->cdir = dj.sclust; /* Start directory itself */
- } else {
- if (dj.dir[DIR_Attr] & AM_DIR) /* Reached to the directory */
- dj.fs->cdir = ld_clust(dj.fs, dj.dir);
- else
- res = FR_NO_PATH; /* Reached but a file */
- }
- }
- if (res == FR_NO_FILE) res = FR_NO_PATH;
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-#if _FS_RPATH >= 2
-FRESULT f_getcwd (
- TCHAR *path, /* Pointer to the directory path */
- uint32_t sz_path /* Size of path */
- )
-{
- FRESULT res;
- DIR dj;
- uint32_t i, n;
- uint32_t ccl;
- TCHAR *tp;
- FILINFO fno;
- DEF_NAMEBUF;
-
-
- *path = 0;
- res = chk_mounted((const TCHAR**)&path, &dj.fs, 0); /* Get current volume */
- if (res == FR_OK) {
- INIT_BUF(dj);
- i = sz_path; /* Bottom of buffer (dir stack base) */
- dj.sclust = dj.fs->cdir; /* Start to follow upper dir from current dir */
- while ((ccl = dj.sclust) != 0) { /* Repeat while current dir is a sub-dir */
- res = dir_sdi(&dj, 1); /* Get parent dir */
- if (res != FR_OK) break;
- res = dir_read(&dj);
- if (res != FR_OK) break;
- dj.sclust = ld_clust(dj.fs, dj.dir); /* Goto parent dir */
- res = dir_sdi(&dj, 0);
- if (res != FR_OK) break;
- do { /* Find the entry links to the child dir */
- res = dir_read(&dj);
- if (res != FR_OK) break;
- if (ccl == ld_clust(dj.fs, dj.dir)) break; /* Found the entry */
- res = dir_next(&dj, 0);
- } while (res == FR_OK);
- if (res == FR_NO_FILE) res = FR_INT_ERR;/* It cannot be 'not found'. */
- if (res != FR_OK) break;
-#if _USE_LFN
- fno.lfname = path;
- fno.lfsize = i;
-#endif
- get_fileinfo(&dj, &fno); /* Get the dir name and push it to the buffer */
- tp = fno.fname;
- if (_USE_LFN && *path) tp = path;
- for (n = 0; tp[n]; n++) ;
- if (i < n + 3) {
- res = FR_NOT_ENOUGH_CORE; break;
- }
- while (n) path[--i] = tp[--n];
- path[--i] = '/';
- }
- tp = path;
- if (res == FR_OK) {
- *tp++ = '0' + CurrVol; /* Put drive number */
- *tp++ = ':';
- if (i == sz_path) { /* Root-dir */
- *tp++ = '/';
- } else { /* Sub-dir */
- do /* Add stacked path str */
- *tp++ = path[i++];
- while (i < sz_path);
- }
- }
- *tp = 0;
- FREE_BUF();
- }
-
- LEAVE_FF(dj.fs, res);
-}
-#endif /* _FS_RPATH >= 2 */
-#endif /* _FS_RPATH >= 1 */
-
-
-
-#if _FS_MINIMIZE <= 2
-/*-----------------------------------------------------------------------*/
-/* Seek File R/W Pointer */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_lseek (
- FIL *fp, /* Pointer to the file object */
- uint32_t ofs /* File pointer from top of file */
- )
-{
- FRESULT res;
-
-
- res = validate(fp); /* Check validity of the object */
- if (res != FR_OK) LEAVE_FF(fp->fs, res);
- if (fp->flag & FA__ERROR) /* Check abort flag */
- LEAVE_FF(fp->fs, FR_INT_ERR);
-
-#if _USE_FASTSEEK
- if (fp->cltbl) { /* Fast seek */
- uint32_t cl, pcl, ncl, tcl, dsc, tlen, ulen, *tbl;
-
- if (ofs == CREATE_LINKMAP) { /* Create CLMT */
- tbl = fp->cltbl;
- tlen = *tbl++; ulen = 2; /* Given table size and required table size */
- cl = fp->sclust; /* Top of the chain */
- if (cl) {
- do {
- /* Get a fragment */
- tcl = cl; ncl = 0; ulen += 2; /* Top, length and used items */
- do {
- pcl = cl; ncl++;
- cl = get_fat(fp->fs, cl);
- if (cl <= 1) ABORT(fp->fs, FR_INT_ERR);
- if (cl == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- } while (cl == pcl + 1);
- if (ulen <= tlen) { /* Store the length and top of the fragment */
- *tbl++ = ncl; *tbl++ = tcl;
- }
- } while (cl < fp->fs->n_fatent); /* Repeat until end of chain */
- }
- *fp->cltbl = ulen; /* Number of items used */
- if (ulen <= tlen)
- *tbl = 0; /* Terminate table */
- else
- res = FR_NOT_ENOUGH_CORE; /* Given table size is smaller than required */
-
- } else { /* Fast seek */
- if (ofs > fp->fsize) /* Clip offset at the file size */
- ofs = fp->fsize;
- fp->fptr = ofs; /* Set file pointer */
- if (ofs) {
- fp->clust = clmt_clust(fp, ofs - 1);
- dsc = clust2sect(fp->fs, fp->clust);
- if (!dsc) ABORT(fp->fs, FR_INT_ERR);
- dsc += (ofs - 1) / SS(fp->fs) & (fp->fs->csize - 1);
- if (fp->fptr % SS(fp->fs) && dsc != fp->dsect) { /* Refill sector cache if needed */
-#if !_FS_TINY
-#if !_FS_READONLY
- if (fp->flag & FA__DIRTY) { /* Write-back dirty sector cache */
- if (disk_write(fp->fs->drv, fp->buf, fp->dsect, 1) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- if (disk_read(fp->fs->drv, fp->buf, dsc, 1) != RES_OK) /* Load current sector */
- ABORT(fp->fs, FR_DISK_ERR);
-#endif
- fp->dsect = dsc;
- }
- }
- }
- } else
-#endif
-
- /* Normal Seek */
- {
- uint32_t clst, bcs, nsect, ifptr;
-
- if (ofs > fp->fsize /* In read-only mode, clip offset with the file size */
- #if !_FS_READONLY
- && !(fp->flag & FA_WRITE)
- #endif
- ) ofs = fp->fsize;
-
- ifptr = fp->fptr;
- fp->fptr = nsect = 0;
- if (ofs) {
- bcs = (uint32_t)fp->fs->csize * SS(fp->fs); /* Cluster size (byte) */
- if (ifptr > 0 &&
- (ofs - 1) / bcs >= (ifptr - 1) / bcs) { /* When seek to same or following cluster, */
- fp->fptr = (ifptr - 1) & ~(bcs - 1); /* start from the current cluster */
- ofs -= fp->fptr;
- clst = fp->clust;
- } else { /* When seek to back cluster, */
- clst = fp->sclust; /* start from the first cluster */
-#if !_FS_READONLY
- if (clst == 0) { /* If no cluster chain, create a new chain */
- clst = create_chain(fp->fs, 0);
- if (clst == 1) ABORT(fp->fs, FR_INT_ERR);
- if (clst == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- fp->sclust = clst;
- }
-#endif
- fp->clust = clst;
- }
- if (clst != 0) {
- while (ofs > bcs) { /* Cluster following loop */
-#if !_FS_READONLY
- if (fp->flag & FA_WRITE) { /* Check if in write mode or not */
- clst = create_chain(fp->fs, clst); /* Force stretch if in write mode */
- if (clst == 0) { /* When disk gets full, clip file size */
- ofs = bcs; break;
- }
- } else
-#endif
- clst = get_fat(fp->fs, clst); /* Follow cluster chain if not in write mode */
- if (clst == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- if (clst <= 1 || clst >= fp->fs->n_fatent) ABORT(fp->fs, FR_INT_ERR);
- fp->clust = clst;
- fp->fptr += bcs;
- ofs -= bcs;
- }
- fp->fptr += ofs;
- if (ofs % SS(fp->fs)) {
- nsect = clust2sect(fp->fs, clst); /* Current sector */
- if (!nsect) ABORT(fp->fs, FR_INT_ERR);
- nsect += ofs / SS(fp->fs);
- }
- }
- }
- if (fp->fptr % SS(fp->fs) && nsect != fp->dsect) { /* Fill sector cache if needed */
-#if !_FS_TINY
-#if !_FS_READONLY
- if (fp->flag & FA__DIRTY) { /* Write-back dirty sector cache */
- if (disk_write(fp->fs->drv, fp->buf, fp->dsect, 1) != RES_OK)
- ABORT(fp->fs, FR_DISK_ERR);
- fp->flag &= ~FA__DIRTY;
- }
-#endif
- if (disk_read(fp->fs->drv, fp->buf, nsect, 1) != RES_OK) /* Fill sector cache */
- ABORT(fp->fs, FR_DISK_ERR);
-#endif
- fp->dsect = nsect;
- }
-#if !_FS_READONLY
- if (fp->fptr > fp->fsize) { /* Set file change flag if the file size is extended */
- fp->fsize = fp->fptr;
- fp->flag |= FA__WRITTEN;
- }
-#endif
- }
-
- LEAVE_FF(fp->fs, res);
-}
-
-
-
-#if _FS_MINIMIZE <= 1
-/*-----------------------------------------------------------------------*/
-/* Create a Directory Object */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_opendir (
- DIR *dj, /* Pointer to directory object to create */
- const char *path /* Pointer to the directory path */
- )
-{
- FRESULT res;
- FATFS *fs;
- DEF_NAMEBUF;
-
-
- if (!dj) return FR_INVALID_OBJECT;
-
- res = chk_mounted(&path, &dj->fs, 0);
- fs = dj->fs;
- if (res == FR_OK) {
- INIT_BUF(*dj);
- res = follow_path(dj, path); /* Follow the path to the directory */
- FREE_BUF();
- if (res == FR_OK) { /* Follow completed */
- if (dj->dir) { /* It is not the root dir */
- if (dj->dir[DIR_Attr] & AM_DIR) { /* The object is a directory */
- dj->sclust = ld_clust(fs, dj->dir);
- } else { /* The object is not a directory */
- res = FR_NO_PATH;
- }
- }
- if (res == FR_OK) {
- dj->id = fs->id;
- res = dir_sdi(dj, 0); /* Rewind dir */
- }
- }
- if (res == FR_NO_FILE) res = FR_NO_PATH;
- if (res != FR_OK) dj->fs = 0; /* Invalidate the dir object if function faild */
- } else {
- dj->fs = 0;
- }
-
- LEAVE_FF(fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Read Directory Entry in Sequence */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_readdir (
- DIR *dj, /* Pointer to the open directory object */
- FILINFO *fno /* Pointer to file information to return */
- )
-{
- FRESULT res;
- DEF_NAMEBUF;
-
-
- res = validate(dj); /* Check validity of the object */
- if (res == FR_OK) {
- if (!fno) {
- res = dir_sdi(dj, 0); /* Rewind the directory object */
- } else {
- INIT_BUF(*dj);
- res = dir_read(dj); /* Read an directory item */
- if (res == FR_NO_FILE) { /* Reached end of dir */
- dj->sect = 0;
- res = FR_OK;
- }
- if (res == FR_OK) { /* A valid entry is found */
- get_fileinfo(dj, fno); /* Get the object information */
- res = dir_next(dj, 0); /* Increment index for next */
- if (res == FR_NO_FILE) {
- dj->sect = 0;
- res = FR_OK;
- }
- }
- FREE_BUF();
- }
- }
-
- LEAVE_FF(dj->fs, res);
-}
-
-
-
-#if _FS_MINIMIZE == 0
-/*-----------------------------------------------------------------------*/
-/* Get File Status */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_stat (
- const TCHAR *path, /* Pointer to the file path */
- FILINFO *fno /* Pointer to file information to return */
- )
-{
- FRESULT res;
- DIR dj;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 0);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- if (res == FR_OK) { /* Follow completed */
- if (dj.dir) /* Found an object */
- get_fileinfo(&dj, fno);
- else /* It is root dir */
- res = FR_INVALID_NAME;
- }
- FREE_BUF();
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-#if !_FS_READONLY
-/*-----------------------------------------------------------------------*/
-/* Get Number of Free Clusters */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_getfree (
- const TCHAR *path, /* Pointer to the logical drive number (root dir) */
- uint32_t *nclst, /* Pointer to the variable to return number of free clusters */
- FATFS **fatfs /* Pointer to pointer to corresponding file system object to return */
- )
-{
- FRESULT res;
- FATFS *fs;
- uint32_t n, clst, sect, stat;
- uint32_t i;
- uint8_t fat, *p;
-
-
- /* Get drive number */
- res = chk_mounted(&path, fatfs, 0);
- fs = *fatfs;
- if (res == FR_OK) {
- /* If free_clust is valid, return it without full cluster scan */
- if (fs->free_clust <= fs->n_fatent - 2) {
- *nclst = fs->free_clust;
- } else {
- /* Get number of free clusters */
- fat = fs->fs_type;
- n = 0;
- if (fat == FS_FAT12) {
- clst = 2;
- do {
- stat = get_fat(fs, clst);
- if (stat == 0xFFFFFFFF) { res = FR_DISK_ERR; break; }
- if (stat == 1) { res = FR_INT_ERR; break; }
- if (stat == 0) n++;
- } while (++clst < fs->n_fatent);
- } else {
- clst = fs->n_fatent;
- sect = fs->fatbase;
- i = 0; p = 0;
- do {
- if (!i) {
- res = move_window(fs, sect++);
- if (res != FR_OK) break;
- p = fs->win;
- i = SS(fs);
- }
- if (fat == FS_FAT16) {
- if (LD_WORD(p) == 0) n++;
- p += 2; i -= 2;
- } else {
- if ((LD_DWORD(p) & 0x0FFFFFFF) == 0) n++;
- p += 4; i -= 4;
- }
- } while (--clst);
- }
- fs->free_clust = n;
- if (fat == FS_FAT32) fs->fsi_flag = 1;
- *nclst = n;
- }
- }
- LEAVE_FF(fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Truncate File */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_truncate (
- FIL *fp /* Pointer to the file object */
- )
-{
- FRESULT res;
- uint32_t ncl;
-
-
- if (!fp) return FR_INVALID_OBJECT;
-
- res = validate(fp); /* Check validity of the object */
- if (res == FR_OK) {
- if (fp->flag & FA__ERROR) { /* Check abort flag */
- res = FR_INT_ERR;
- } else {
- if (!(fp->flag & FA_WRITE)) /* Check access mode */
- res = FR_DENIED;
- }
- }
- if (res == FR_OK) {
- if (fp->fsize > fp->fptr) {
- fp->fsize = fp->fptr; /* Set file size to current R/W point */
- fp->flag |= FA__WRITTEN;
- if (fp->fptr == 0) { /* When set file size to zero, remove entire cluster chain */
- res = remove_chain(fp->fs, fp->sclust);
- fp->sclust = 0;
- } else { /* When truncate a part of the file, remove remaining clusters */
- ncl = get_fat(fp->fs, fp->clust);
- res = FR_OK;
- if (ncl == 0xFFFFFFFF) res = FR_DISK_ERR;
- if (ncl == 1) res = FR_INT_ERR;
- if (res == FR_OK && ncl < fp->fs->n_fatent) {
- res = put_fat(fp->fs, fp->clust, 0x0FFFFFFF);
- if (res == FR_OK) res = remove_chain(fp->fs, ncl);
- }
- }
- }
- if (res != FR_OK) fp->flag |= FA__ERROR;
- }
-
- LEAVE_FF(fp->fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Delete a File or Directory */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_unlink (
- const TCHAR *path /* Pointer to the file or directory path */
- )
-{
- FRESULT res;
- DIR dj, sdj;
- uint8_t *dir;
- uint32_t dclst;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 1);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- if (_FS_RPATH && res == FR_OK && (dj.fn[NS] & NS_DOT))
- res = FR_INVALID_NAME; /* Cannot remove dot entry */
-#if _FS_LOCK
- if (res == FR_OK) res = chk_lock(&dj, 2); /* Cannot remove open file */
-#endif
- if (res == FR_OK) { /* The object is accessible */
- dir = dj.dir;
- if (!dir) {
- res = FR_INVALID_NAME; /* Cannot remove the start directory */
- } else {
- if (dir[DIR_Attr] & AM_RDO)
- res = FR_DENIED; /* Cannot remove R/O object */
- }
- dclst = ld_clust(dj.fs, dir);
- if (res == FR_OK && (dir[DIR_Attr] & AM_DIR)) { /* Is it a sub-dir? */
- if (dclst < 2) {
- res = FR_INT_ERR;
- } else {
- mem_cpy(&sdj, &dj, sizeof (DIR)); /* Check if the sub-dir is empty or not */
- sdj.sclust = dclst;
- res = dir_sdi(&sdj, 2); /* Exclude dot entries */
- if (res == FR_OK) {
- res = dir_read(&sdj);
- if (res == FR_OK /* Not empty dir */
- #if _FS_RPATH
- || dclst == dj.fs->cdir /* Current dir */
- #endif
- ) res = FR_DENIED;
- if (res == FR_NO_FILE) res = FR_OK; /* Empty */
- }
- }
- }
- if (res == FR_OK) {
- res = dir_remove(&dj); /* Remove the directory entry */
- if (res == FR_OK) {
- if (dclst) /* Remove the cluster chain if exist */
- res = remove_chain(dj.fs, dclst);
- if (res == FR_OK) res = sync(dj.fs);
- }
- }
- }
- FREE_BUF();
- }
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Create a Directory */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_mkdir (
- const TCHAR *path /* Pointer to the directory path */
- )
-{
- FRESULT res;
- DIR dj;
- uint8_t *dir, n;
- uint32_t dsc, dcl, pcl, tim = get_fattime();
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 1);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- if (res == FR_OK) res = FR_EXIST; /* Any object with same name is already existing */
- if (_FS_RPATH && res == FR_NO_FILE && (dj.fn[NS] & NS_DOT))
- res = FR_INVALID_NAME;
- if (res == FR_NO_FILE) { /* Can create a new directory */
- dcl = create_chain(dj.fs, 0); /* Allocate a cluster for the new directory table */
- res = FR_OK;
- if (dcl == 0) res = FR_DENIED; /* No space to allocate a new cluster */
- if (dcl == 1) res = FR_INT_ERR;
- if (dcl == 0xFFFFFFFF) res = FR_DISK_ERR;
- if (res == FR_OK) /* Flush FAT */
- res = move_window(dj.fs, 0);
- if (res == FR_OK) { /* Initialize the new directory table */
- dsc = clust2sect(dj.fs, dcl);
- dir = dj.fs->win;
- mem_set(dir, 0, SS(dj.fs));
- mem_set(dir+DIR_Name, ' ', 8+3); /* Create "." entry */
- dir[DIR_Name] = '.';
- dir[DIR_Attr] = AM_DIR;
- ST_DWORD(dir+DIR_WrtTime, tim);
- st_clust(dir, dcl);
- mem_cpy(dir+SZ_DIR, dir, SZ_DIR); /* Create ".." entry */
- dir[33] = '.'; pcl = dj.sclust;
- if (dj.fs->fs_type == FS_FAT32 && pcl == dj.fs->dirbase)
- pcl = 0;
- st_clust(dir+SZ_DIR, pcl);
- for (n = dj.fs->csize; n; n--) { /* Write dot entries and clear following sectors */
- dj.fs->winsect = dsc++;
- dj.fs->wflag = 1;
- res = move_window(dj.fs, 0);
- if (res != FR_OK) break;
- mem_set(dir, 0, SS(dj.fs));
- }
- }
- if (res == FR_OK) res = dir_register(&dj); /* Register the object to the directoy */
- if (res != FR_OK) {
- remove_chain(dj.fs, dcl); /* Could not register, remove cluster chain */
- } else {
- dir = dj.dir;
- dir[DIR_Attr] = AM_DIR; /* Attribute */
- ST_DWORD(dir+DIR_WrtTime, tim); /* Created time */
- st_clust(dir, dcl); /* Table start cluster */
- dj.fs->wflag = 1;
- res = sync(dj.fs);
- }
- }
- FREE_BUF();
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Change Attribute */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_chmod (
- const TCHAR *path, /* Pointer to the file path */
- uint8_t value, /* Attribute bits */
- uint8_t mask /* Attribute mask to change */
- )
-{
- FRESULT res;
- DIR dj;
- uint8_t *dir;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 1);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- FREE_BUF();
- if (_FS_RPATH && res == FR_OK && (dj.fn[NS] & NS_DOT))
- res = FR_INVALID_NAME;
- if (res == FR_OK) {
- dir = dj.dir;
- if (!dir) { /* Is it a root directory? */
- res = FR_INVALID_NAME;
- } else { /* File or sub directory */
- mask &= AM_RDO|AM_HID|AM_SYS|AM_ARC; /* Valid attribute mask */
- dir[DIR_Attr] = (value & mask) | (dir[DIR_Attr] & (uint8_t)~mask); /* Apply attribute change */
- dj.fs->wflag = 1;
- res = sync(dj.fs);
- }
- }
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Change Timestamp */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_utime (
- const TCHAR *path, /* Pointer to the file/directory name */
- const FILINFO *fno /* Pointer to the time stamp to be set */
- )
-{
- FRESULT res;
- DIR dj;
- uint8_t *dir;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path, &dj.fs, 1);
- if (res == FR_OK) {
- INIT_BUF(dj);
- res = follow_path(&dj, path); /* Follow the file path */
- FREE_BUF();
- if (_FS_RPATH && res == FR_OK && (dj.fn[NS] & NS_DOT))
- res = FR_INVALID_NAME;
- if (res == FR_OK) {
- dir = dj.dir;
- if (!dir) { /* Root directory */
- res = FR_INVALID_NAME;
- } else { /* File or sub-directory */
- ST_WORD(dir+DIR_WrtTime, fno->ftime);
- ST_WORD(dir+DIR_WrtDate, fno->fdate);
- dj.fs->wflag = 1;
- res = sync(dj.fs);
- }
- }
- }
-
- LEAVE_FF(dj.fs, res);
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Rename File/Directory */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_rename (
- const TCHAR *path_old, /* Pointer to the old name */
- const TCHAR *path_new /* Pointer to the new name */
- )
-{
- FRESULT res;
- DIR djo, djn;
- uint8_t buf[21], *dir;
- uint32_t dw;
- DEF_NAMEBUF;
-
-
- res = chk_mounted(&path_old, &djo.fs, 1);
- if (res == FR_OK) {
- djn.fs = djo.fs;
- INIT_BUF(djo);
- res = follow_path(&djo, path_old); /* Check old object */
- if (_FS_RPATH && res == FR_OK && (djo.fn[NS] & NS_DOT))
- res = FR_INVALID_NAME;
-#if _FS_LOCK
- if (res == FR_OK) res = chk_lock(&djo, 2);
-#endif
- if (res == FR_OK) { /* Old object is found */
- if (!djo.dir) { /* Is root dir? */
- res = FR_NO_FILE;
- } else {
- mem_cpy(buf, djo.dir+DIR_Attr, 21); /* Save the object information except for name */
- mem_cpy(&djn, &djo, sizeof (DIR)); /* Check new object */
- res = follow_path(&djn, path_new);
- if (res == FR_OK) res = FR_EXIST; /* The new object name is already existing */
- if (res == FR_NO_FILE) { /* Is it a valid path and no name collision? */
- /* Start critical section that an interruption or error can cause cross-link */
- res = dir_register(&djn); /* Register the new entry */
- if (res == FR_OK) {
- dir = djn.dir; /* Copy object information except for name */
- mem_cpy(dir+13, buf+2, 19);
- dir[DIR_Attr] = buf[0] | AM_ARC;
- djo.fs->wflag = 1;
- if (djo.sclust != djn.sclust && (dir[DIR_Attr] & AM_DIR)) { /* Update .. entry in the directory if needed */
- dw = clust2sect(djo.fs, ld_clust(djo.fs, dir));
- if (!dw) {
- res = FR_INT_ERR;
- } else {
- res = move_window(djo.fs, dw);
- dir = djo.fs->win+SZ_DIR; /* .. entry */
- if (res == FR_OK && dir[1] == '.') {
- dw = (djo.fs->fs_type == FS_FAT32 && djn.sclust == djo.fs->dirbase) ? 0 : djn.sclust;
- st_clust(dir, dw);
- djo.fs->wflag = 1;
- }
- }
- }
- if (res == FR_OK) {
- res = dir_remove(&djo); /* Remove old entry */
- if (res == FR_OK)
- res = sync(djo.fs);
- }
- }
- /* End critical section */
- }
- }
- }
- FREE_BUF();
- }
- LEAVE_FF(djo.fs, res);
-}
-
-#endif /* !_FS_READONLY */
-#endif /* _FS_MINIMIZE == 0 */
-#endif /* _FS_MINIMIZE <= 1 */
-#endif /* _FS_MINIMIZE <= 2 */
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Forward data to the stream directly (available on only tiny cfg) */
-/*-----------------------------------------------------------------------*/
-#if _USE_FORWARD && _FS_TINY
-
-FRESULT f_forward (
- FIL *fp, /* Pointer to the file object */
- uint32_t (*func)(const uint8_t*,uint32_t), /* Pointer to the streaming function */
- uint32_t btr, /* Number of bytes to forward */
- uint32_t *bf /* Pointer to number of bytes forwarded */
- )
-{
- FRESULT res;
- uint32_t remain, clst, sect;
- uint32_t rcnt;
- uint8_t csect;
-
-
- *bf = 0; /* Clear transfer byte counter */
-
- if (!fp) return FR_INVALID_OBJECT;
-
- res = validate(fp); /* Check validity of the object */
- if (res != FR_OK) LEAVE_FF(fp->fs, res);
- if (fp->flag & FA__ERROR) /* Check error flag */
- LEAVE_FF(fp->fs, FR_INT_ERR);
- if (!(fp->flag & FA_READ)) /* Check access mode */
- LEAVE_FF(fp->fs, FR_DENIED);
-
- remain = fp->fsize - fp->fptr;
- if (btr > remain) btr = (uint32_t)remain; /* Truncate btr by remaining bytes */
-
- for ( ; btr && (*func)(0, 0); /* Repeat until all data transferred or stream becomes busy */
- fp->fptr += rcnt, *bf += rcnt, btr -= rcnt) {
- csect = (uint8_t)(fp->fptr / SS(fp->fs) & (fp->fs->csize - 1)); /* Sector offset in the cluster */
- if ((fp->fptr % SS(fp->fs)) == 0) { /* On the sector boundary? */
- if (!csect) { /* On the cluster boundary? */
- clst = (fp->fptr == 0) ? /* On the top of the file? */
- fp->sclust : get_fat(fp->fs, fp->clust);
- if (clst <= 1) ABORT(fp->fs, FR_INT_ERR);
- if (clst == 0xFFFFFFFF) ABORT(fp->fs, FR_DISK_ERR);
- fp->clust = clst; /* Update current cluster */
- }
- }
- sect = clust2sect(fp->fs, fp->clust); /* Get current data sector */
- if (!sect) ABORT(fp->fs, FR_INT_ERR);
- sect += csect;
- if (move_window(fp->fs, sect)) /* Move sector window */
- ABORT(fp->fs, FR_DISK_ERR);
- fp->dsect = sect;
- rcnt = SS(fp->fs) - (uint16_t)(fp->fptr % SS(fp->fs)); /* Forward data from sector window */
- if (rcnt > btr) rcnt = btr;
- rcnt = (*func)(&fp->fs->win[(uint16_t)fp->fptr % SS(fp->fs)], rcnt);
- if (!rcnt) ABORT(fp->fs, FR_INT_ERR);
- }
-
- LEAVE_FF(fp->fs, FR_OK);
-}
-#endif /* _USE_FORWARD */
-
-
-
-#if _USE_MKFS && !_FS_READONLY
-/*-----------------------------------------------------------------------*/
-/* Create File System on the Drive */
-/*-----------------------------------------------------------------------*/
-#define N_ROOTDIR 512 /* Number of root dir entries for FAT12/16 */
-#define N_FATS 1 /* Number of FAT copies (1 or 2) */
-
-
-FRESULT f_mkfs (
- uint8_t drv, /* Logical drive number */
- uint8_t sfd, /* Partitioning rule 0:FDISK, 1:SFD */
- uint32_t au /* Allocation unit size [bytes] */
- )
-{
- static const uint16_t vst[] = { 1024, 512, 256, 128, 64, 32, 16, 8, 4, 2, 0};
- static const uint16_t cst[] = {32768, 16384, 8192, 4096, 2048, 16384, 8192, 4096, 2048, 1024, 512};
- uint8_t fmt, md, sys, *tbl, pdrv, part;
- uint32_t n_clst, vs, n, wsect;
- uint32_t i;
- uint32_t b_vol, b_fat, b_dir, b_data; /* LBA */
- uint32_t n_vol, n_rsv, n_fat, n_dir; /* Size */
- FATFS *fs;
- DSTATUS stat;
-
-
- /* Check mounted drive and clear work area */
- if (drv >= _VOLUMES) return FR_INVALID_DRIVE;
- if (sfd > 1) return FR_INVALID_PARAMETER;
- if (au & (au - 1)) return FR_INVALID_PARAMETER;
- fs = FatFs[drv];
- if (!fs) return FR_NOT_ENABLED;
- fs->fs_type = 0;
- pdrv = LD2PD(drv); /* Physical drive */
- part = LD2PT(drv); /* Partition (0:auto detect, 1-4:get from partition table)*/
-
- /* Get disk statics */
- stat = disk_initialize(pdrv);
- if (stat & STA_NOINIT) return FR_NOT_READY;
- if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
-#if _MAX_SS != 512 /* Get disk sector size */
- if (disk_ioctl(pdrv, GET_SECTOR_SIZE, &SS(fs)) != RES_OK || SS(fs) > _MAX_SS)
- return FR_DISK_ERR;
-#endif
- if (_MULTI_PARTITION && part) {
- /* Get partition information from partition table in the MBR */
- if (disk_read(pdrv, fs->win, 0, 1) != RES_OK) return FR_DISK_ERR;
- if (LD_WORD(fs->win+BS_55AA) != 0xAA55) return FR_MKFS_ABORTED;
- tbl = &fs->win[MBR_Table + (part - 1) * SZ_PTE];
- if (!tbl[4]) return FR_MKFS_ABORTED; /* No partition? */
- b_vol = LD_DWORD(tbl+8); /* Volume start sector */
- n_vol = LD_DWORD(tbl+12); /* Volume size */
- } else {
- /* Create a partition in this function */
- if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &n_vol) != RES_OK || n_vol < 128)
- return FR_DISK_ERR;
- b_vol = (sfd) ? 0 : 63; /* Volume start sector */
- n_vol -= b_vol; /* Volume size */
- }
-
- if (!au) { /* AU auto selection */
- vs = n_vol / (2000 / (SS(fs) / 512));
- for (i = 0; vs < vst[i]; i++) ;
- au = cst[i];
- }
- au /= SS(fs); /* Number of sectors per cluster */
- if (au == 0) au = 1;
- if (au > 128) au = 128;
-
- /* Pre-compute number of clusters and FAT sub-type */
- n_clst = n_vol / au;
- fmt = FS_FAT12;
- if (n_clst >= MIN_FAT16) fmt = FS_FAT16;
- if (n_clst >= MIN_FAT32) fmt = FS_FAT32;
-
- /* Determine offset and size of FAT structure */
- if (fmt == FS_FAT32) {
- n_fat = ((n_clst * 4) + 8 + SS(fs) - 1) / SS(fs);
- n_rsv = 32;
- n_dir = 0;
- } else {
- n_fat = (fmt == FS_FAT12) ? (n_clst * 3 + 1) / 2 + 3 : (n_clst * 2) + 4;
- n_fat = (n_fat + SS(fs) - 1) / SS(fs);
- n_rsv = 1;
- n_dir = (uint32_t)N_ROOTDIR * SZ_DIR / SS(fs);
- }
- b_fat = b_vol + n_rsv; /* FAT area start sector */
- b_dir = b_fat + n_fat * N_FATS; /* Directory area start sector */
- b_data = b_dir + n_dir; /* Data area start sector */
- if (n_vol < b_data + au - b_vol) return FR_MKFS_ABORTED; /* Too small volume */
-
- /* Align data start sector to erase block boundary (for flash memory media) */
- if (disk_ioctl(pdrv, GET_BLOCK_SIZE, &n) != RES_OK || !n || n > 32768) n = 1;
- n = (b_data + n - 1) & ~(n - 1); /* Next nearest erase block from current data start */
- n = (n - b_data) / N_FATS;
- if (fmt == FS_FAT32) { /* FAT32: Move FAT offset */
- n_rsv += n;
- b_fat += n;
- } else { /* FAT12/16: Expand FAT size */
- n_fat += n;
- }
-
- /* Determine number of clusters and final check of validity of the FAT sub-type */
- n_clst = (n_vol - n_rsv - n_fat * N_FATS - n_dir) / au;
- if ( (fmt == FS_FAT16 && n_clst < MIN_FAT16)
- || (fmt == FS_FAT32 && n_clst < MIN_FAT32))
- return FR_MKFS_ABORTED;
-
- switch (fmt) { /* Determine system ID for partition table */
- case FS_FAT12: sys = 0x01; break;
- case FS_FAT16: sys = (n_vol < 0x10000) ? 0x04 : 0x06; break;
- default: sys = 0x0C;
- }
-
- if (_MULTI_PARTITION && part) {
- /* Update system ID in the partition table */
- tbl = &fs->win[MBR_Table + (part - 1) * SZ_PTE];
- tbl[4] = sys;
- if (disk_write(pdrv, fs->win, 0, 1) != RES_OK) return FR_DISK_ERR;
- md = 0xF8;
- } else {
- if (sfd) { /* No partition table (SFD) */
- md = 0xF0;
- } else { /* Create partition table (FDISK) */
- mem_set(fs->win, 0, SS(fs));
- tbl = fs->win+MBR_Table; /* Create partition table for single partition in the drive */
- tbl[1] = 1; /* Partition start head */
- tbl[2] = 1; /* Partition start sector */
- tbl[3] = 0; /* Partition start cylinder */
- tbl[4] = sys; /* System type */
- tbl[5] = 254; /* Partition end head */
- n = (b_vol + n_vol) / 63 / 255;
- tbl[6] = (uint8_t)((n >> 2) | 63); /* Partition end sector */
- tbl[7] = (uint8_t)n; /* End cylinder */
- ST_DWORD(tbl+8, 63); /* Partition start in LBA */
- ST_DWORD(tbl+12, n_vol); /* Partition size in LBA */
- ST_WORD(fs->win+BS_55AA, 0xAA55); /* MBR signature */
- if (disk_write(pdrv, fs->win, 0, 1) != RES_OK) /* Write it to the MBR sector */
- return FR_DISK_ERR;
- md = 0xF8;
- }
- }
-
- /* Create BPB in the VBR */
- tbl = fs->win; /* Clear sector */
- mem_set(tbl, 0, SS(fs));
- mem_cpy(tbl, "\xEB\xFE\x90" "MSDOS5.0", 11);/* Boot jump code, OEM name */
- i = SS(fs); /* Sector size */
- ST_WORD(tbl+BPB_BytsPerSec, i);
- tbl[BPB_SecPerClus] = (uint8_t)au; /* Sectors per cluster */
- ST_WORD(tbl+BPB_RsvdSecCnt, n_rsv); /* Reserved sectors */
- tbl[BPB_NumFATs] = N_FATS; /* Number of FATs */
- i = (fmt == FS_FAT32) ? 0 : N_ROOTDIR; /* Number of rootdir entries */
- ST_WORD(tbl+BPB_RootEntCnt, i);
- if (n_vol < 0x10000) { /* Number of total sectors */
- ST_WORD(tbl+BPB_TotSec16, n_vol);
- } else {
- ST_DWORD(tbl+BPB_TotSec32, n_vol);
- }
- tbl[BPB_Media] = md; /* Media descriptor */
- ST_WORD(tbl+BPB_SecPerTrk, 63); /* Number of sectors per track */
- ST_WORD(tbl+BPB_NumHeads, 255); /* Number of heads */
- ST_DWORD(tbl+BPB_HiddSec, b_vol); /* Hidden sectors */
- n = get_fattime(); /* Use current time as VSN */
- if (fmt == FS_FAT32) {
- ST_DWORD(tbl+BS_VolID32, n); /* VSN */
- ST_DWORD(tbl+BPB_FATSz32, n_fat); /* Number of sectors per FAT */
- ST_DWORD(tbl+BPB_RootClus, 2); /* Root directory start cluster (2) */
- ST_WORD(tbl+BPB_FSInfo, 1); /* FSInfo record offset (VBR+1) */
- ST_WORD(tbl+BPB_BkBootSec, 6); /* Backup boot record offset (VBR+6) */
- tbl[BS_DrvNum32] = 0x80; /* Drive number */
- tbl[BS_BootSig32] = 0x29; /* Extended boot signature */
- mem_cpy(tbl+BS_VolLab32, "NO NAME " "FAT32 ", 19); /* Volume label, FAT signature */
- } else {
- ST_DWORD(tbl+BS_VolID, n); /* VSN */
- ST_WORD(tbl+BPB_FATSz16, n_fat); /* Number of sectors per FAT */
- tbl[BS_DrvNum] = 0x80; /* Drive number */
- tbl[BS_BootSig] = 0x29; /* Extended boot signature */
- mem_cpy(tbl+BS_VolLab, "NO NAME " "FAT ", 19); /* Volume label, FAT signature */
- }
- ST_WORD(tbl+BS_55AA, 0xAA55); /* Signature (Offset is fixed here regardless of sector size) */
- if (disk_write(pdrv, tbl, b_vol, 1) != RES_OK) /* Write it to the VBR sector */
- return FR_DISK_ERR;
- if (fmt == FS_FAT32) /* Write backup VBR if needed (VBR+6) */
- disk_write(pdrv, tbl, b_vol + 6, 1);
-
- /* Initialize FAT area */
- wsect = b_fat;
- for (i = 0; i < N_FATS; i++) { /* Initialize each FAT copy */
- mem_set(tbl, 0, SS(fs)); /* 1st sector of the FAT */
- n = md; /* Media descriptor byte */
- if (fmt != FS_FAT32) {
- n |= (fmt == FS_FAT12) ? 0x00FFFF00 : 0xFFFFFF00;
- ST_DWORD(tbl+0, n); /* Reserve cluster #0-1 (FAT12/16) */
- } else {
- n |= 0xFFFFFF00;
- ST_DWORD(tbl+0, n); /* Reserve cluster #0-1 (FAT32) */
- ST_DWORD(tbl+4, 0xFFFFFFFF);
- ST_DWORD(tbl+8, 0x0FFFFFFF); /* Reserve cluster #2 for root dir */
- }
- if (disk_write(pdrv, tbl, wsect++, 1) != RES_OK)
- return FR_DISK_ERR;
- mem_set(tbl, 0, SS(fs)); /* Fill following FAT entries with zero */
- for (n = 1; n < n_fat; n++) { /* This loop may take a time on FAT32 volume due to many single sector writes */
- if (disk_write(pdrv, tbl, wsect++, 1) != RES_OK)
- return FR_DISK_ERR;
- }
- }
-
- /* Initialize root directory */
- i = (fmt == FS_FAT32) ? au : n_dir;
- do {
- if (disk_write(pdrv, tbl, wsect++, 1) != RES_OK)
- return FR_DISK_ERR;
- } while (--i);
-
-#if _USE_ERASE /* Erase data area if needed */
- {
- uint32_t eb[2];
-
- eb[0] = wsect; eb[1] = wsect + (n_clst - ((fmt == FS_FAT32) ? 1 : 0)) * au - 1;
- disk_ioctl(pdrv, CTRL_ERASE_SECTOR, eb);
- }
-#endif
-
- /* Create FSInfo if needed */
- if (fmt == FS_FAT32) {
- ST_DWORD(tbl+FSI_LeadSig, 0x41615252);
- ST_DWORD(tbl+FSI_StrucSig, 0x61417272);
- ST_DWORD(tbl+FSI_Free_Count, n_clst - 1); /* Number of free clusters */
- ST_DWORD(tbl+FSI_Nxt_Free, 2); /* Last allocated cluster# */
- ST_WORD(tbl+BS_55AA, 0xAA55);
- disk_write(pdrv, tbl, b_vol + 1, 1); /* Write original (VBR+1) */
- disk_write(pdrv, tbl, b_vol + 7, 1); /* Write backup (VBR+7) */
- }
-
- return (disk_ioctl(pdrv, CTRL_SYNC, 0) == RES_OK) ? FR_OK : FR_DISK_ERR;
-}
-
-
-#if _MULTI_PARTITION == 2
-/*-----------------------------------------------------------------------*/
-/* Divide Physical Drive */
-/*-----------------------------------------------------------------------*/
-
-FRESULT f_fdisk (
- uint8_t pdrv, /* Physical drive number */
- const uint32_t szt[], /* Pointer to the size table for each partitions */
- void* work /* Pointer to the working buffer */
- )
-{
- uint32_t i, n, sz_cyl, tot_cyl, b_cyl, e_cyl, p_cyl;
- uint8_t s_hd, e_hd, *p, *buf = (uint8_t*)work;
- DSTATUS stat;
- uint32_t sz_disk, sz_part, s_part;
-
-
- stat = disk_initialize(pdrv);
- if (stat & STA_NOINIT) return FR_NOT_READY;
- if (stat & STA_PROTECT) return FR_WRITE_PROTECTED;
- if (disk_ioctl(pdrv, GET_SECTOR_COUNT, &sz_disk)) return FR_DISK_ERR;
-
- /* Determine CHS in the table regardless of the drive geometry */
- for (n = 16; n < 256 && sz_disk / n / 63 > 1024; n *= 2) ;
- if (n == 256) n--;
- e_hd = n - 1;
- sz_cyl = 63 * n;
- tot_cyl = sz_disk / sz_cyl;
-
- /* Create partition table */
- mem_set(buf, 0, _MAX_SS);
- p = buf + MBR_Table; b_cyl = 0;
- for (i = 0; i < 4; i++, p += SZ_PTE) {
- p_cyl = (szt[i] <= 100) ? (uint32_t)tot_cyl * szt[i] / 100 : szt[i] / sz_cyl;
- if (!p_cyl) continue;
- s_part = (uint32_t)sz_cyl * b_cyl;
- sz_part = (uint32_t)sz_cyl * p_cyl;
- if (i == 0) { /* Exclude first track of cylinder 0 */
- s_hd = 1;
- s_part += 63; sz_part -= 63;
- } else {
- s_hd = 0;
- }
- e_cyl = b_cyl + p_cyl - 1;
- if (e_cyl >= tot_cyl) return FR_INVALID_PARAMETER;
-
- /* Set partition table */
- p[1] = s_hd; /* Start head */
- p[2] = (uint8_t)((b_cyl >> 2) + 1); /* Start sector */
- p[3] = (uint8_t)b_cyl; /* Start cylinder */
- p[4] = 0x06; /* System type (temporary setting) */
- p[5] = e_hd; /* End head */
- p[6] = (uint8_t)((e_cyl >> 2) + 63); /* End sector */
- p[7] = (uint8_t)e_cyl; /* End cylinder */
- ST_DWORD(p + 8, s_part); /* Start sector in LBA */
- ST_DWORD(p + 12, sz_part); /* Partition size */
-
- /* Next partition */
- b_cyl += p_cyl;
- }
- ST_WORD(p, 0xAA55);
-
- /* Write it to the MBR */
- return (disk_write(pdrv, buf, 0, 1) || disk_ioctl(pdrv, CTRL_SYNC, 0)) ? FR_DISK_ERR : FR_OK;
-}
-
-
-#endif /* _MULTI_PARTITION == 2 */
-#endif /* _USE_MKFS && !_FS_READONLY */
-
-
-
-
-#if _USE_STRFUNC
-/*-----------------------------------------------------------------------*/
-/* Get a string from the file */
-/*-----------------------------------------------------------------------*/
-TCHAR* f_gets (
- TCHAR* buff, /* Pointer to the string buffer to read */
- int len, /* Size of string buffer (characters) */
- FIL* fil /* Pointer to the file object */
- )
-{
- int n = 0;
- TCHAR c, *p = buff;
- uint8_t s[2];
- uint32_t rc;
-
-
- while (n < len - 1) { /* Read bytes until buffer gets filled */
- f_read(fil, s, 1, &rc);
- if (rc != 1) break; /* Break on EOF or error */
- c = s[0];
-#if _LFN_UNICODE /* Read a character in UTF-8 encoding */
- if (c >= 0x80) {
- if (c < 0xC0) continue; /* Skip stray trailer */
- if (c < 0xE0) { /* Two-byte sequence */
- f_read(fil, s, 1, &rc);
- if (rc != 1) break;
- c = ((c & 0x1F) << 6) | (s[0] & 0x3F);
- if (c < 0x80) c = '?';
- } else {
- if (c < 0xF0) { /* Three-byte sequence */
- f_read(fil, s, 2, &rc);
- if (rc != 2) break;
- c = (c << 12) | ((s[0] & 0x3F) << 6) | (s[1] & 0x3F);
- if (c < 0x800) c = '?';
- } else { /* Reject four-byte sequence */
- c = '?';
- }
- }
- }
-#endif
-#if _USE_STRFUNC >= 2
- if (c == '\r') continue; /* Strip '\r' */
-#endif
- *p++ = c;
- n++;
- if (c == '\n') break; /* Break on EOL */
- }
- *p = 0;
- return n ? buff : 0; /* When no data read (eof or error), return with error. */
-}
-
-
-
-#if !_FS_READONLY
-#include
-/*-----------------------------------------------------------------------*/
-/* Put a character to the file */
-/*-----------------------------------------------------------------------*/
-int f_putc (
- TCHAR c, /* A character to be output */
- FIL* fil /* Pointer to the file object */
- )
-{
- uint32_t bw, btw;
- uint8_t s[3];
-
-
-#if _USE_STRFUNC >= 2
- if (c == '\n') f_putc ('\r', fil); /* LF -> CRLF conversion */
-#endif
-
-#if _LFN_UNICODE /* Write the character in UTF-8 encoding */
- if (c < 0x80) { /* 7-bit */
- s[0] = (uint8_t)c;
- btw = 1;
- } else {
- if (c < 0x800) { /* 11-bit */
- s[0] = (uint8_t)(0xC0 | (c >> 6));
- s[1] = (uint8_t)(0x80 | (c & 0x3F));
- btw = 2;
- } else { /* 16-bit */
- s[0] = (uint8_t)(0xE0 | (c >> 12));
- s[1] = (uint8_t)(0x80 | ((c >> 6) & 0x3F));
- s[2] = (uint8_t)(0x80 | (c & 0x3F));
- btw = 3;
- }
- }
-#else /* Write the character without conversion */
- s[0] = (uint8_t)c;
- btw = 1;
-#endif
- f_write(fil, s, btw, &bw); /* Write the char to the file */
- return (bw == btw) ? 1 : EOF; /* Return the result */
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Put a string to the file */
-/*-----------------------------------------------------------------------*/
-int f_puts (
- const TCHAR* str, /* Pointer to the string to be output */
- FIL* fil /* Pointer to the file object */
- )
-{
- int n;
-
-
- for (n = 0; *str; str++, n++) {
- if (f_putc(*str, fil) == EOF) return EOF;
- }
- return n;
-}
-
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Put a formatted string to the file */
-/*-----------------------------------------------------------------------*/
-int f_printf (
- FIL* fil, /* Pointer to the file object */
- const TCHAR* str, /* Pointer to the format string */
- ... /* Optional arguments... */
- )
-{
- va_list arp;
- uint8_t f, r;
- uint32_t i, j, w;
- uint32_t v;
- TCHAR c, d, s[16], *p;
- int res, chc, cc;
-
-
- va_start(arp, str);
-
- for (cc = res = 0; cc != EOF; res += cc) {
- c = *str++;
- if (c == 0) break; /* End of string */
- if (c != '%') { /* Non escape character */
- cc = f_putc(c, fil);
- if (cc != EOF) cc = 1;
- continue;
- }
- w = f = 0;
- c = *str++;
- if (c == '0') { /* Flag: '0' padding */
- f = 1; c = *str++;
- } else {
- if (c == '-') { /* Flag: left justified */
- f = 2; c = *str++;
- }
- }
- while (IsDigit(c)) { /* Precision */
- w = w * 10 + c - '0';
- c = *str++;
- }
- if (c == 'l' || c == 'L') { /* Prefix: Size is long int */
- f |= 4; c = *str++;
- }
- if (!c) break;
- d = c;
- if (IsLower(d)) d -= 0x20;
- switch (d) { /* Type is... */
- case 'S' : /* String */
- p = va_arg(arp, TCHAR*);
- for (j = 0; p[j]; j++) ;
- chc = 0;
- if (!(f & 2)) {
- while (j++ < w) chc += (cc = f_putc(' ', fil));
- }
- chc += (cc = f_puts(p, fil));
- while (j++ < w) chc += (cc = f_putc(' ', fil));
- if (cc != EOF) cc = chc;
- continue;
- case 'C' : /* Character */
- cc = f_putc((TCHAR)va_arg(arp, int), fil); continue;
- case 'B' : /* Binary */
- r = 2; break;
- case 'O' : /* Octal */
- r = 8; break;
- case 'D' : /* Signed decimal */
- case 'U' : /* Unsigned decimal */
- r = 10; break;
- case 'X' : /* Hexdecimal */
- r = 16; break;
- default: /* Unknown type (pass-through) */
- cc = f_putc(c, fil); continue;
- }
-
- /* Get an argument and put it in numeral */
- v = (f & 4) ? (uint32_t)va_arg(arp, long) : ((d == 'D') ? (uint32_t)(long)va_arg(arp, int) : (uint32_t)va_arg(arp, unsigned int));
- if (d == 'D' && (v & 0x80000000)) {
- v = 0 - v;
- f |= 8;
- }
- i = 0;
- do {
- d = (TCHAR)(v % r); v /= r;
- if (d > 9) d += (c == 'x') ? 0x27 : 0x07;
- s[i++] = d + '0';
- } while (v && i < sizeof s / sizeof s[0]);
- if (f & 8) s[i++] = '-';
- j = i; d = (f & 1) ? '0' : ' ';
- res = 0;
- while (!(f & 2) && j++ < w) res += (cc = f_putc(d, fil));
- do res += (cc = f_putc(s[--i], fil)); while(i);
- while (j++ < w) res += (cc = f_putc(' ', fil));
- if (cc != EOF) cc = res;
- }
-
- va_end(arp);
- return (cc == EOF) ? cc : res;
-}
-
-
-
-
-#endif /* !_FS_READONLY */
-#endif /* _USE_STRFUNC */
diff --git a/BaS_gcc/fs/unicode.c b/BaS_gcc/fs/unicode.c
deleted file mode 100644
index 76e10d2..0000000
--- a/BaS_gcc/fs/unicode.c
+++ /dev/null
@@ -1,17 +0,0 @@
-#include
-
-#if _USE_LFN != 0
-
-#if _CODE_PAGE == 932
-#include "cc932.c"
-#elif _CODE_PAGE == 936
-#include "cc936.c"
-#elif _CODE_PAGE == 949
-#include "cc949.c"
-#elif _CODE_PAGE == 950
-#include "cc950.c"
-#else
-#include "ccsbcs.c"
-#endif
-
-#endif
diff --git a/BaS_gcc/i2c/i2c.c b/BaS_gcc/i2c/i2c.c
deleted file mode 100644
index ce0e3a2..0000000
--- a/BaS_gcc/i2c/i2c.c
+++ /dev/null
@@ -1,41 +0,0 @@
-
-#include
-
-void i2c_init(void)
-{
-
-}
-
-void i2c_set_frequency(int hz)
-{
-}
-
-int i2c_read(int address, char *data, int length, bool repeated)
-{
- return 0;
-}
-
-int i2c_read_byte(int ack)
-{
- return 0;
-}
-
-int i2c_write(int address, const char *data, int length, bool repeated)
-{
- return 0;
-}
-
-int i2c_write_byte(int data)
-{
- return 0;
-}
-
-void i2c_start(void)
-{
-
-}
-
-void i2c_stop(void)
-{
-
-}
diff --git a/BaS_gcc/if/driver_vec.c b/BaS_gcc/if/driver_vec.c
deleted file mode 100644
index 706676b..0000000
--- a/BaS_gcc/if/driver_vec.c
+++ /dev/null
@@ -1,299 +0,0 @@
-/*
- * driver_vec.c
- *
- * Expose BaS drivers to OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "version.h"
-#include "xhdi_sd.h"
-#include "dma.h"
-#include "driver_vec.h"
-#include "driver_mem.h"
-#include "pci.h"
-#include "mmu.h"
-
-/*
- * driver interface struct for the SD card BaS driver
- */
-static struct xhdi_driver_interface xhdi_call_interface =
-{
- xhdi_call
-};
-
-/*
- * driver interface struct for the BaS multichannel DMA driver
- * This is exactly the same thing FireTOS provides and the MiNT FEC drivers expect.
- * It can be directly used in TOS to register the corresponding cookie ("DMAC").
- */
-static struct dma_driver_interface dma_interface =
-{
- .version = 0x0101,
- .magic = 0x444d4143, /* 'DMAC' */
- .dma_set_initiator = dma_set_initiator,
- .dma_get_initiator = dma_get_initiator,
- .dma_free_initiator = dma_free_initiator,
- .dma_set_channel = dma_set_channel,
- .dma_get_channel = dma_get_channel,
- .dma_free_channel = dma_free_channel,
- .dma_clear_channel = dma_clear_channel,
- .MCD_startDma = (int (*)(long, int8_t *, unsigned int, int8_t *, unsigned int,
- unsigned int, unsigned int, unsigned int, int,
- unsigned int, unsigned int)) MCD_startDma,
- .MCD_dmaStatus = (int32_t (*)(int32_t)) MCD_dmaStatus,
- .MCD_XferProgrQuery = (int32_t (*)(int32_t, MCD_XferProg *)) MCD_XferProgrQuery,
- .MCD_killDma = (int32_t (*)(int32_t)) MCD_killDma,
- .MCD_continDma = (int32_t (*)(int32_t)) MCD_continDma,
- .MCD_pauseDma = (int32_t (*)(int32_t)) MCD_pauseDma,
- .MCD_resumeDma = (int32_t (*)(int32_t)) MCD_resumeDma,
- .MCD_csumQuery = (int32_t (*)(int32_t, uint32_t *)) MCD_csumQuery,
- .dma_malloc = driver_mem_alloc,
- .dma_free = driver_mem_free
-};
-
-extern struct fb_info *info_fb;
-
-/*
- * driver interface struct for the PCI_BIOS BaS driver
- */
-static struct pci_bios_interface pci_interface =
-{
- .subjar = 0,
- .version = 0x00010000,
- .find_pci_device = wrapper_find_pci_device,
- .find_pci_classcode = wrapper_find_pci_classcode,
- .read_config_byte = wrapper_read_config_byte,
- .read_config_word = wrapper_read_config_word,
- .read_config_longword = wrapper_read_config_longword,
- .fast_read_config_byte = wrapper_fast_read_config_byte,
- .fast_read_config_word = wrapper_fast_read_config_word,
- .fast_read_config_longword = wrapper_fast_read_config_longword,
- .write_config_byte = wrapper_write_config_byte,
- .write_config_word = wrapper_write_config_word,
- .write_config_longword = wrapper_write_config_longword,
- .hook_interrupt = wrapper_hook_interrupt,
- .unhook_interrupt = wrapper_unhook_interrupt,
- .special_cycle = wrapper_special_cycle,
- .get_routing = wrapper_get_routing,
- .set_interrupt = wrapper_set_interrupt,
- .get_resource = wrapper_get_resource,
- .get_card_used = wrapper_get_card_used,
- .set_card_used = wrapper_set_card_used,
- .read_mem_byte = wrapper_read_mem_byte,
- .read_mem_word = wrapper_read_mem_word,
- .read_mem_longword = wrapper_read_mem_longword,
- .fast_read_mem_byte = wrapper_fast_read_mem_byte,
- .fast_read_mem_word = wrapper_fast_read_mem_word,
- .fast_read_mem_longword = wrapper_fast_read_mem_longword,
- .write_mem_byte = wrapper_write_mem_byte,
- .write_mem_word = wrapper_write_mem_word,
- .write_mem_longword = wrapper_write_mem_longword,
- .read_io_byte = wrapper_read_io_byte,
- .read_io_word = wrapper_read_io_word,
- .read_io_longword = wrapper_read_io_longword,
- .fast_read_io_byte = wrapper_fast_read_io_byte,
- .fast_read_io_word = wrapper_fast_read_io_word,
- .fast_read_io_longword = wrapper_fast_read_io_longword,
- .write_io_byte = wrapper_write_io_byte,
- .write_io_word = wrapper_write_io_word,
- .write_io_longword = wrapper_write_io_longword,
- .get_machine_id = wrapper_get_machine_id,
- .get_pagesize = wrapper_get_pagesize,
- .virt_to_bus = wrapper_virt_to_bus,
- .bus_to_virt = wrapper_bus_to_virt,
- .virt_to_phys = wrapper_virt_to_phys,
- .phys_to_virt = wrapper_phys_to_virt,
-};
-
-static struct pci_native_driver_interface_0_1 pci_native_interface_0_1 =
-{
- .pci_read_config_longword = pci_read_config_longword,
- .pci_read_config_word = pci_read_config_word,
- .pci_read_config_byte = pci_read_config_byte,
- .pci_write_config_longword = pci_write_config_longword,
- .pci_write_config_word = pci_write_config_word,
- .pci_write_config_byte = pci_write_config_byte,
- .pci_hook_interrupt = pci_hook_interrupt,
- .pci_unhook_interrupt = pci_unhook_interrupt,
- .pci_get_resource = pci_get_resource,
-};
-
-static struct pci_native_driver_interface pci_native_interface =
-{
- .pci_read_config_longword = pci_read_config_longword,
- .pci_read_config_word = pci_read_config_word,
- .pci_read_config_byte = pci_read_config_byte,
- .pci_write_config_longword = pci_write_config_longword,
- .pci_write_config_word = pci_write_config_word,
- .pci_write_config_byte = pci_write_config_byte,
- .pci_hook_interrupt = pci_hook_interrupt,
- .pci_unhook_interrupt = pci_unhook_interrupt,
- .pci_find_device = pci_find_device,
- .pci_find_classcode = pci_find_classcode,
- .pci_get_resource = pci_get_resource,
-};
-/*
- * driver interface struct for the BaS framebuffer video driver
- */
-static struct framebuffer_driver_interface framebuffer_interface =
-{
- .framebuffer_info = &info_fb
-};
-
-/*
- * driver interface struct for the BaS MMU driver
- */
-static struct mmu_driver_interface mmu_interface =
-{
- .map_page_locked = &mmu_map_data_page_locked,
- .unlock_page = &mmu_unlock_data_page,
- .report_locked_pages = &mmu_report_locked_pages,
- .report_pagesize = &mmu_report_pagesize
-};
-
-static struct generic_interface interfaces[] =
-{
- {
- /* BaS SD-card driver interface */
-
- .type = XHDI_DRIVER,
- .name = "SDCARD",
- .description = "BaS SD Card driver",
- .version = 0,
- .revision = 1,
- .interface.xhdi = &xhdi_call_interface
- },
- {
- .type = MCD_DRIVER,
- .name = "MCDDMA",
- .description = "BaS Multichannel DMA driver",
- .version = 0,
- .revision = 1,
- .interface.dma = &dma_interface,
- },
- {
- .type = VIDEO_DRIVER,
- .name = "RADEON",
- .description = "BaS RADEON framebuffer driver",
- .version = 0,
- .revision = 1,
- .interface.fb = &framebuffer_interface,
- },
- {
- .type = PCI_DRIVER,
- .name = "PCI",
- .description = "BaS PCI_BIOS driver",
- .version = 0,
- .revision = 1,
- .interface.pci = &pci_interface,
- },
- {
- .type = MMU_DRIVER,
- .name = "MMU",
- .description = "BaS MMU driver",
- .version = 0,
- .revision = 1,
- .interface.mmu = &mmu_interface,
- },
- {
- .type = PCI_NATIVE_DRIVER,
- .name = "PCI_N",
- .description = "BaS PCI native",
- .version = 0,
- .revision = 1,
- .interface.pci_native = (struct pci_native_driver_interface *) &pci_native_interface_0_1,
- },
- {
- .type = PCI_NATIVE_DRIVER,
- .name = "PCI_N",
- .description = "BaS PCI native",
- .version = 0,
- .revision = 2,
- .interface.pci_native = &pci_native_interface,
- },
-
- /* insert new drivers here */
-
- {
- .type = END_OF_DRIVERS
- }
-};
-
-extern void remove_handler(void); /* forward declaration */
-
-/*
- * this is the driver table we expose to the OS
- */
-static struct driver_table bas_drivers =
-{
- .bas_version = MAJOR_VERSION,
- .bas_revision = MINOR_VERSION,
- .remove_handler = remove_handler,
- .interfaces = interfaces
-};
-
-void remove_handler(void)
-{
- extern void std_exc_vec(void);
- uint32_t *trap_0_vector = (uint32_t *) 0x80;
-
- *trap_0_vector = (uint32_t) std_exc_vec;
-}
-
-/*
- * trap #0 entry point
- *
- * this is used to retrieve the driver table that gets exposed to the OS by BaS
- */
-void __attribute__((interrupt)) get_bas_drivers(void)
-{
- __asm__ __volatile(
- /*
- * (sp) should now point to the next instruction after the trap
- * The trap itself is 2 bytes, the four bytes before that must
- * read '_BAS', otherwise we are not meant by this call
- */
- " move.l a0,-(sp) \n\t" // save registers
- " move.l d0,-(sp) \n\t"
- " move.l 12(sp),a0 \n\t" // get return address
- " move.l -6(a0),d0 \n\t" //
- " cmp.l #0x5f424153,d0 \n\t" // is it '_BAS'?
- " beq fetch_drivers \n\t" // yes
- /*
- * This seems indeed a "normal" trap #0. Better pass control to "normal" trap #0 processing
- * If trap #0 isn't set to something sensible, we'll probably crash here, but this must be
- * prevented on the caller side.
- */
- " move.l (sp)+,d0 \n\t" // restore registers
- " move.l (sp)+,a0 \n\t"
- " move.l 0x80,-(sp) \n\t" // fetch vector
- " rts \n\t" // and jump through it
-
- "fetch_drivers: \n\t"
- " move.l #%[drivers],d0 \n\t" // return driver struct in d0
- " addq.l #4,sp \n\t" // adjust stack
- " move.l (sp)+,a0 \n\t" // restore register
- : /* no output */
- : [drivers] "o" (bas_drivers) /* input */
- : /* clobber */
- );
-}
diff --git a/BaS_gcc/include/MCD_dma.h b/BaS_gcc/include/MCD_dma.h
deleted file mode 100755
index b589cc8..0000000
--- a/BaS_gcc/include/MCD_dma.h
+++ /dev/null
@@ -1,362 +0,0 @@
-/*
- * File: MCD_dma.h
- * Purpose: Main header file for multi-channel DMA API.
- *
- * Notes:
- */
-#ifndef _MCD_API_H
-#define _MCD_API_H
-
-/*
- * Turn Execution Unit tasks ON (#define) or OFF (#undef)
- */
-#undef MCD_INCLUDE_EU
-//#define MCD_INCLUDE_EU
-/*
- * Number of DMA channels
- */
-#define NCHANNELS 16
-
-/*
- * Total number of variants
- */
-#ifdef MCD_INCLUDE_EU
-#define NUMOFVARIANTS 6
-#else
-#define NUMOFVARIANTS 4
-#endif
-
-/*
- * Define sizes of the various tables
- */
-#define TASK_TABLE_SIZE (NCHANNELS*32)
-#define VAR_TAB_SIZE (128)
-#define CONTEXT_SAVE_SIZE (128)
-#define FUNCDESC_TAB_SIZE (256)
-
-#ifdef MCD_INCLUDE_EU
-#define FUNCDESC_TAB_NUM 16
-#else
-#define FUNCDESC_TAB_NUM 1
-#endif
-
-
-#ifndef DEFINESONLY
-
-/*
- * Portability typedefs
- */
-typedef int s32;
-typedef unsigned int u32;
-typedef short s16;
-typedef unsigned short u16;
-typedef char s8;
-typedef unsigned char u8;
-
-/*
- * These structures represent the internal registers of the
- * multi-channel DMA
- */
-struct dmaRegs_s {
- u32 taskbar; /* task table base address register */
- u32 currPtr;
- u32 endPtr;
- u32 varTablePtr;
- u16 dma_rsvd0;
- u16 ptdControl; /* ptd control */
- u32 intPending; /* interrupt pending register */
- u32 intMask; /* interrupt mask register */
- u16 taskControl[16]; /* task control registers */
- u8 priority[32]; /* priority registers */
- u32 initiatorMux; /* initiator mux control */
- u32 taskSize0; /* task size control register 0. */
- u32 taskSize1; /* task size control register 1. */
- u32 dma_rsvd1; /* reserved */
- u32 dma_rsvd2; /* reserved */
- u32 debugComp1; /* debug comparator 1 */
- u32 debugComp2; /* debug comparator 2 */
- u32 debugControl; /* debug control */
- u32 debugStatus; /* debug status */
- u32 ptdDebug; /* priority task decode debug */
- u32 dma_rsvd3[31]; /* reserved */
-};
-typedef volatile struct dmaRegs_s dmaRegs;
-
-#endif
-
-/*
- * PTD contrl reg bits
- */
-#define PTD_CTL_TSK_PRI 0x8000
-#define PTD_CTL_COMM_PREFETCH 0x0001
-
-/*
- * Task Control reg bits and field masks
- */
-#define TASK_CTL_EN 0x8000
-#define TASK_CTL_VALID 0x4000
-#define TASK_CTL_ALWAYS 0x2000
-#define TASK_CTL_INIT_MASK 0x1f00
-#define TASK_CTL_ASTRT 0x0080
-#define TASK_CTL_HIPRITSKEN 0x0040
-#define TASK_CTL_HLDINITNUM 0x0020
-#define TASK_CTL_ASTSKNUM_MASK 0x000f
-
-/*
- * Priority reg bits and field masks
- */
-#define PRIORITY_HLD 0x80
-#define PRIORITY_PRI_MASK 0x07
-
-/*
- * Debug Control reg bits and field masks
- */
-#define DBG_CTL_BLOCK_TASKS_MASK 0xffff0000
-#define DBG_CTL_AUTO_ARM 0x00008000
-#define DBG_CTL_BREAK 0x00004000
-#define DBG_CTL_COMP1_TYP_MASK 0x00003800
-#define DBG_CTL_COMP2_TYP_MASK 0x00000070
-#define DBG_CTL_EXT_BREAK 0x00000004
-#define DBG_CTL_INT_BREAK 0x00000002
-
-/*
- * PTD Debug reg selector addresses
- * This reg must be written with a value to show the contents of
- * one of the desired internal register.
- */
-#define PTD_DBG_REQ 0x00 /* shows the state of 31 initiators */
-#define PTD_DBG_TSK_VLD_INIT 0x01 /* shows which 16 tasks are valid and
- have initiators asserted */
-
-
-/*
- * General return values
- */
-#define MCD_OK 0
-#define MCD_ERROR -1
-#define MCD_TABLE_UNALIGNED -2
-#define MCD_CHANNEL_INVALID -3
-
-/*
- * MCD_initDma input flags
- */
-#define MCD_RELOC_TASKS 0x00000001
-#define MCD_NO_RELOC_TASKS 0x00000000
-#define MCD_COMM_PREFETCH_EN 0x00000002 /* Commbus Prefetching - MCF547x/548x ONLY */
-
-/*
- * MCD_dmaStatus Status Values for each channel
- */
-#define MCD_NO_DMA 1 /* No DMA has been requested since reset */
-#define MCD_IDLE 2 /* DMA active, but the initiator is currently inactive */
-#define MCD_RUNNING 3 /* DMA active, and the initiator is currently active */
-#define MCD_PAUSED 4 /* DMA active but it is currently paused */
-#define MCD_HALTED 5 /* the most recent DMA has been killed with MCD_killTask() */
-#define MCD_DONE 6 /* the most recent DMA has completed. */
-
-
-/*
- * MCD_startDma parameter defines
- */
-
-/*
- * Constants for the funcDesc parameter
- */
-/* Byte swapping: */
-#define MCD_NO_BYTE_SWAP 0x00045670 /* to disable byte swapping. */
-#define MCD_BYTE_REVERSE 0x00076540 /* to reverse the bytes of each u32 of the DMAed data. */
-#define MCD_U16_REVERSE 0x00067450 /* to reverse the 16-bit halves of
- each 32-bit data value being DMAed.*/
-#define MCD_U16_BYTE_REVERSE 0x00054760 /* to reverse the byte halves of each
- 16-bit half of each 32-bit data value DMAed */
-#define MCD_NO_BIT_REV 0x00000000 /* do not reverse the bits of each byte DMAed. */
-#define MCD_BIT_REV 0x00088880 /* reverse the bits of each byte DMAed */
-/* CRCing: */
-#define MCD_CRC16 0xc0100000 /* to perform CRC-16 on DMAed data. */
-#define MCD_CRCCCITT 0xc0200000 /* to perform CRC-CCITT on DMAed data. */
-#define MCD_CRC32 0xc0300000 /* to perform CRC-32 on DMAed data. */
-#define MCD_CSUMINET 0xc0400000 /* to perform internet checksums on DMAed data.*/
-#define MCD_NO_CSUM 0xa0000000 /* to perform no checksumming. */
-
-#define MCD_FUNC_NOEU1 (MCD_NO_BYTE_SWAP | MCD_NO_BIT_REV | MCD_NO_CSUM)
-#define MCD_FUNC_NOEU2 (MCD_NO_BYTE_SWAP | MCD_NO_CSUM)
-
-/*
- * Constants for the flags parameter
- */
-#define MCD_TT_FLAGS_RL 0x00000001 /* Read line */
-#define MCD_TT_FLAGS_CW 0x00000002 /* Combine Writes */
-#define MCD_TT_FLAGS_SP 0x00000004 /* Speculative prefetch(XLB) MCF547x/548x ONLY */
-#define MCD_TT_FLAGS_MASK 0x000000ff
-#define MCD_TT_FLAGS_DEF (MCD_TT_FLAGS_RL | MCD_TT_FLAGS_CW)
-
-#define MCD_SINGLE_DMA 0x00000100 /* Unchained DMA */
-#define MCD_CHAIN_DMA /* TBD */
-#define MCD_EU_DMA /* TBD */
-#define MCD_FECTX_DMA 0x00001000 /* FEC TX ring DMA */
-#define MCD_FECRX_DMA 0x00002000 /* FEC RX ring DMA */
-
-
-/* these flags are valid for MCD_startDma and the chained buffer descriptors */
-#define MCD_BUF_READY 0x80000000 /* indicates that this buffer is now under the DMA's control */
-#define MCD_WRAP 0x20000000 /* to tell the FEC Dmas to wrap to the first BD */
-#define MCD_INTERRUPT 0x10000000 /* to generate an interrupt after completion of the DMA. */
-#define MCD_END_FRAME 0x08000000 /* tell the DMA to end the frame when transferring
- last byte of data in buffer */
-#define MCD_CRC_RESTART 0x40000000 /* to empty out the accumulated checksum
- prior to performing the DMA. */
-
-/* Defines for the FEC buffer descriptor control/status word*/
-#define MCD_FEC_BUF_READY 0x8000
-#define MCD_FEC_WRAP 0x2000
-#define MCD_FEC_INTERRUPT 0x1000
-#define MCD_FEC_END_FRAME 0x0800
-
-
-/*
- * Defines for general intuitiveness
- */
-
-#define MCD_TRUE 1
-#define MCD_FALSE 0
-
-/*
- * Three different cases for destination and source.
- */
-#define MINUS1 -1
-#define ZERO 0
-#define PLUS1 1
-
-#ifndef DEFINESONLY
-
-/* Task Table Entry struct*/
-typedef struct {
- u32 TDTstart; /* task descriptor table start */
- u32 TDTend; /* task descriptor table end */
- u32 varTab; /* variable table start */
- u32 FDTandFlags; /* function descriptor table start and flags */
- volatile u32 descAddrAndStatus;
- volatile u32 modifiedVarTab;
- u32 contextSaveSpace; /* context save space start */
- u32 literalBases;
-} TaskTableEntry;
-
-
-/* Chained buffer descriptor */
-typedef volatile struct MCD_bufDesc_struct MCD_bufDesc;
-struct MCD_bufDesc_struct {
- u32 flags; /* flags describing the DMA */
- u32 csumResult; /* checksum from checksumming performed since last checksum reset */
- s8 *srcAddr; /* the address to move data from */
- s8 *destAddr; /* the address to move data to */
- s8 *lastDestAddr; /* the last address written to */
- u32 dmaSize; /* the number of bytes to transfer independent of the transfer size */
- MCD_bufDesc *next; /* next buffer descriptor in chain */
- u32 info; /* private information about this descriptor; DMA does not affect it */
-};
-
-/* Progress Query struct */
-typedef volatile struct MCD_XferProg_struct {
- s8 *lastSrcAddr; /* the most-recent or last, post-increment source address */
- s8 *lastDestAddr; /* the most-recent or last, post-increment destination address */
- u32 dmaSize; /* the amount of data transferred for the current buffer */
- MCD_bufDesc *currBufDesc;/* pointer to the current buffer descriptor being DMAed */
-} MCD_XferProg;
-
-
-/* FEC buffer descriptor */
-typedef volatile struct MCD_bufDescFec_struct {
- u16 statCtrl;
- u16 length;
- u32 dataPointer;
-} MCD_bufDescFec;
-
-
-/*************************************************************************/
-/*
- * API function Prototypes - see MCD_dmaApi.c for further notes
- */
-
-/*
- * MCD_startDma starts a particular kind of DMA .
- */
-int MCD_startDma (
- int channel, /* the channel on which to run the DMA */
- s8 *srcAddr, /* the address to move data from, or buffer-descriptor address */
- s16 srcIncr, /* the amount to increment the source address per transfer */
- s8 *destAddr, /* the address to move data to */
- s16 destIncr, /* the amount to increment the destination address per transfer */
- u32 dmaSize, /* the number of bytes to transfer independent of the transfer size */
- u32 xferSize, /* the number bytes in of each data movement (1, 2, or 4) */
- u32 initiator, /* what device initiates the DMA */
- int priority, /* priority of the DMA */
- u32 flags, /* flags describing the DMA */
- u32 funcDesc /* a description of byte swapping, bit swapping, and CRC actions */
-);
-
-/*
- * MCD_initDma() initializes the DMA API by setting up a pointer to the DMA
- * registers, relocating and creating the appropriate task structures, and
- * setting up some global settings
- */
-int MCD_initDma (dmaRegs *sDmaBarAddr, void *taskTableDest, u32 flags);
-
-/*
- * MCD_dmaStatus() returns the status of the DMA on the requested channel.
- */
-int MCD_dmaStatus (int channel);
-
-/*
- * MCD_XferProgrQuery() returns progress of DMA on requested channel
- */
-int MCD_XferProgrQuery (int channel, MCD_XferProg *progRep);
-
-/*
- * MCD_killDma() halts the DMA on the requested channel, without any
- * intention of resuming the DMA.
- */
-int MCD_killDma (int channel);
-
-/*
- * MCD_continDma() continues a DMA which as stopped due to encountering an
- * unready buffer descriptor.
- */
-int MCD_continDma (int channel);
-
-/*
- * MCD_pauseDma() pauses the DMA on the given channel ( if any DMA is
- * running on that channel).
- */
-int MCD_pauseDma (int channel);
-
-/*
- * MCD_resumeDma() resumes the DMA on a given channel (if any DMA is
- * running on that channel).
- */
-int MCD_resumeDma (int channel);
-
-/*
- * MCD_csumQuery provides the checksum/CRC after performing a non-chained DMA
- */
-int MCD_csumQuery (int channel, u32 *csum);
-
-/*
- * MCD_getCodeSize provides the packed size required by the microcoded task
- * and structures.
- */
-int MCD_getCodeSize(void);
-
-/*
- * MCD_getVersion provides a pointer to a version string and returns a
- * version number.
- */
-int MCD_getVersion(char **longVersion);
-
-/* macro for setting a location in the variable table */
-#define MCD_SET_VAR(taskTab,idx,value) ((u32 *)(taskTab)->varTab)[idx] = value
- /* Note that MCD_SET_VAR() is invoked many times in firing up a DMA function,
- so I'm avoiding surrounding it with "do {} while(0)" */
-
-#endif /* DEFINESONLY */
-
-#endif /* _MCD_API_H */
diff --git a/BaS_gcc/include/MCD_progCheck.h b/BaS_gcc/include/MCD_progCheck.h
deleted file mode 100755
index e0f578f..0000000
--- a/BaS_gcc/include/MCD_progCheck.h
+++ /dev/null
@@ -1,5 +0,0 @@
- /* This file is autogenerated. Do not change */
-#define CURRBD 4
-#define DCOUNT 6
-#define DESTPTR 5
-#define SRCPTR 7
diff --git a/BaS_gcc/include/MCD_tasksInit.h b/BaS_gcc/include/MCD_tasksInit.h
deleted file mode 100755
index daf871c..0000000
--- a/BaS_gcc/include/MCD_tasksInit.h
+++ /dev/null
@@ -1,44 +0,0 @@
-#ifndef MCD_TSK_INIT_H
-#define MCD_TSK_INIT_H 1
-
-/*
- * Do not edit!
- */
-
-
-/*
- * Task 0
- */
-void MCD_startDmaChainNoEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 1
- */
-void MCD_startDmaSingleNoEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 2
- */
-void MCD_startDmaChainEu(int *currBD, short srcIncr, short destIncr, int xferSize, short xferSizeIncr, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 3
- */
-void MCD_startDmaSingleEu(char *srcAddr, short srcIncr, char *destAddr, short destIncr, int dmaSize, short xferSizeIncr, int flags, int *currBD, int *cSave, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 4
- */
-void MCD_startDmaENetRcv(char *bDBase, char *currBD, char *rcvFifoPtr, volatile TaskTableEntry *taskTable, int channel);
-
-
-/*
- * Task 5
- */
-void MCD_startDmaENetXmit(char *bDBase, char *currBD, char *xmitFifoPtr, volatile TaskTableEntry *taskTable, int channel);
-
-#endif /* MCD_TSK_INIT_H */
diff --git a/BaS_gcc/include/MCF5475.h b/BaS_gcc/include/MCF5475.h
deleted file mode 100644
index 332d343..0000000
--- a/BaS_gcc/include/MCF5475.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_H__
-#define __MCF5475_H__
-
-#include
-/***
- * MCF5475 Derivative Memory map definitions from linker command files:
- * __MBAR, __MMUBAR, __RAMBAR0, __RAMBAR0_SIZE, __RAMBAR1, __RAMBAR1_SIZE
- * linker symbols must be defined in the linker command file.
- */
-
-typedef uint32_t __attribute__((__may_alias__)) uint32_t_a; /* a type to avoid gcc's complaints about pointer aliasing */
-
-extern uint8_t _MBAR[];
-extern uint8_t _MMUBAR[];
-extern uint8_t _RAMBAR0[];
-extern uint8_t _RAMBAR0_SIZE[];
-extern uint8_t _RAMBAR1[];
-extern uint8_t _RAMBAR1_SIZE[];
-
-#define MBAR_ADDRESS (uint32_t)_MBAR
-#define MMUBAR_ADDRESS (uint32_t)_MMUBAR
-#define RAMBAR0_ADDRESS (uint32_t)_RAMBAR0
-#define RAMBAR0_SIZE (uint32_t)_RAMBAR0_SIZE
-#define RAMBAR1_ADDRESS (uint32_t)_RAMBAR1
-#define RAMBAR1_SIZE (uint32_t)_RAMBAR1_SIZE
-
-
-#include "MCF5475_SIU.h"
-#include "MCF5475_MMU.h"
-#include "MCF5475_SDRAMC.h"
-#include "MCF5475_XLB.h"
-#include "MCF5475_CLOCK.h"
-#include "MCF5475_FBCS.h"
-#include "MCF5475_INTC.h"
-#include "MCF5475_GPT.h"
-#include "MCF5475_SLT.h"
-#include "MCF5475_GPIO.h"
-#include "MCF5475_PAD.h"
-#include "MCF5475_PCI.h"
-#include "MCF5475_PCIARB.h"
-#include "MCF5475_EPORT.h"
-#include "MCF5475_CTM.h"
-#include "MCF5475_DMA.h"
-#include "MCF5475_PSC.h"
-#include "MCF5475_DSPI.h"
-#include "MCF5475_I2C.h"
-#include "MCF5475_FEC.h"
-#include "MCF5475_USB.h"
-#include "MCF5475_SRAM.h"
-#include "MCF5475_SEC.h"
-
-#endif /* __MCF5475_H__ */
diff --git a/BaS_gcc/include/MCF5475_CLOCK.h b/BaS_gcc/include/MCF5475_CLOCK.h
deleted file mode 100644
index 4603098..0000000
--- a/BaS_gcc/include/MCF5475_CLOCK.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CLOCK_H__
-#define __MCF5475_CLOCK_H__
-
-
-/*********************************************************************
-*
-* Clock Module (CLOCK)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CLOCK_SPCR (*(volatile uint32_t*)(&_MBAR[0x300]))
-
-
-/* Bit definitions and macros for MCF_CLOCK_SPCR */
-#define MCF_CLOCK_SPCR_MEMEN (0x1)
-#define MCF_CLOCK_SPCR_PCIEN (0x2)
-#define MCF_CLOCK_SPCR_FBEN (0x4)
-#define MCF_CLOCK_SPCR_CAN0EN (0x8)
-#define MCF_CLOCK_SPCR_DMAEN (0x10)
-#define MCF_CLOCK_SPCR_FEC0EN (0x20)
-#define MCF_CLOCK_SPCR_FEC1EN (0x40)
-#define MCF_CLOCK_SPCR_USBEN (0x80)
-#define MCF_CLOCK_SPCR_PSCEN (0x200)
-#define MCF_CLOCK_SPCR_CAN1EN (0x800)
-#define MCF_CLOCK_SPCR_CRYENA (0x1000)
-#define MCF_CLOCK_SPCR_CRYENB (0x2000)
-#define MCF_CLOCK_SPCR_COREN (0x4000)
-#define MCF_CLOCK_SPCR_PLLK (0x80000000)
-
-
-#endif /* __MCF5475_CLOCK_H__ */
diff --git a/BaS_gcc/include/MCF5475_CTM.h b/BaS_gcc/include/MCF5475_CTM.h
deleted file mode 100644
index 5ba86e4..0000000
--- a/BaS_gcc/include/MCF5475_CTM.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CTM_H__
-#define __MCF5475_CTM_H__
-
-
-/*********************************************************************
-*
-* Comm Timer Module (CTM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CTM_CTCR0 (*(volatile uint32_t*)(&_MBAR[0x7F00]))
-#define MCF_CTM_CTCR1 (*(volatile uint32_t*)(&_MBAR[0x7F04]))
-#define MCF_CTM_CTCR2 (*(volatile uint32_t*)(&_MBAR[0x7F08]))
-#define MCF_CTM_CTCR3 (*(volatile uint32_t*)(&_MBAR[0x7F0C]))
-#define MCF_CTM_CTCR4 (*(volatile uint32_t*)(&_MBAR[0x7F10]))
-#define MCF_CTM_CTCR5 (*(volatile uint32_t*)(&_MBAR[0x7F14]))
-#define MCF_CTM_CTCR6 (*(volatile uint32_t*)(&_MBAR[0x7F18]))
-#define MCF_CTM_CTCR7 (*(volatile uint32_t*)(&_MBAR[0x7F1C]))
-#define MCF_CTM_CTCRF(x) (*(volatile uint32_t*)(&_MBAR[0x7F00 + ((x)*0x4)]))
-#define MCF_CTM_CTCRV(x) (*(volatile uint32_t*)(&_MBAR[0x7F10 + ((x-4)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_CTM_CTCRF */
-#define MCF_CTM_CTCRF_CRV(x) (((x)&0xFFFF)<<0)
-#define MCF_CTM_CTCRF_S(x) (((x)&0xF)<<0x10)
-#define MCF_CTM_CTCRF_S_CLK_1 (0)
-#define MCF_CTM_CTCRF_S_CLK_2 (0x10000)
-#define MCF_CTM_CTCRF_S_CLK_4 (0x20000)
-#define MCF_CTM_CTCRF_S_CLK_8 (0x30000)
-#define MCF_CTM_CTCRF_S_CLK_16 (0x40000)
-#define MCF_CTM_CTCRF_S_CLK_32 (0x50000)
-#define MCF_CTM_CTCRF_S_CLK_64 (0x60000)
-#define MCF_CTM_CTCRF_S_CLK_128 (0x70000)
-#define MCF_CTM_CTCRF_S_CLK_256 (0x80000)
-#define MCF_CTM_CTCRF_S_CLK_EXT (0x90000)
-#define MCF_CTM_CTCRF_PCT(x) (((x)&0x7)<<0x14)
-#define MCF_CTM_CTCRF_PCT_100 (0)
-#define MCF_CTM_CTCRF_PCT_50 (0x100000)
-#define MCF_CTM_CTCRF_PCT_25 (0x200000)
-#define MCF_CTM_CTCRF_PCT_12p5 (0x300000)
-#define MCF_CTM_CTCRF_PCT_6p25 (0x400000)
-#define MCF_CTM_CTCRF_PCT_OFF (0x500000)
-#define MCF_CTM_CTCRF_M (0x800000)
-#define MCF_CTM_CTCRF_IM (0x1000000)
-#define MCF_CTM_CTCRF_I (0x80000000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRV */
-#define MCF_CTM_CTCRV_CRV(x) (((x)&0xFFFFFF)<<0)
-#define MCF_CTM_CTCRV_PCT(x) (((x)&0x7)<<0x18)
-#define MCF_CTM_CTCRV_PCT_100 (0)
-#define MCF_CTM_CTCRV_PCT_50 (0x1000000)
-#define MCF_CTM_CTCRV_PCT_25 (0x2000000)
-#define MCF_CTM_CTCRV_PCT_12p5 (0x3000000)
-#define MCF_CTM_CTCRV_PCT_6p25 (0x4000000)
-#define MCF_CTM_CTCRV_PCT_OFF (0x5000000)
-#define MCF_CTM_CTCRV_M (0x8000000)
-#define MCF_CTM_CTCRV_S (0x10000000)
-
-
-#endif /* __MCF5475_CTM_H__ */
diff --git a/BaS_gcc/include/MCF5475_DMA.h b/BaS_gcc/include/MCF5475_DMA.h
deleted file mode 100644
index 4e6f916..0000000
--- a/BaS_gcc/include/MCF5475_DMA.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DMA_H__
-#define __MCF5475_DMA_H__
-
-
-/*********************************************************************
-*
-* Multichannel DMA (DMA)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DMA_TASKBAR (*(volatile uint32_t*)(&_MBAR[0x8000]))
-#define MCF_DMA_CP (*(volatile uint32_t*)(&_MBAR[0x8004]))
-#define MCF_DMA_EP (*(volatile uint32_t*)(&_MBAR[0x8008]))
-#define MCF_DMA_VP (*(volatile uint32_t*)(&_MBAR[0x800C]))
-#define MCF_DMA_PTD (*(volatile uint32_t*)(&_MBAR[0x8010]))
-#define MCF_DMA_DIPR (*(volatile uint32_t*)(&_MBAR[0x8014]))
-#define MCF_DMA_DIMR (*(volatile uint32_t*)(&_MBAR[0x8018]))
-#define MCF_DMA_TCR0 (*(volatile uint16_t*)(&_MBAR[0x801C]))
-#define MCF_DMA_TCR1 (*(volatile uint16_t*)(&_MBAR[0x801E]))
-#define MCF_DMA_TCR2 (*(volatile uint16_t*)(&_MBAR[0x8020]))
-#define MCF_DMA_TCR3 (*(volatile uint16_t*)(&_MBAR[0x8022]))
-#define MCF_DMA_TCR4 (*(volatile uint16_t*)(&_MBAR[0x8024]))
-#define MCF_DMA_TCR5 (*(volatile uint16_t*)(&_MBAR[0x8026]))
-#define MCF_DMA_TCR6 (*(volatile uint16_t*)(&_MBAR[0x8028]))
-#define MCF_DMA_TCR7 (*(volatile uint16_t*)(&_MBAR[0x802A]))
-#define MCF_DMA_TCR8 (*(volatile uint16_t*)(&_MBAR[0x802C]))
-#define MCF_DMA_TCR9 (*(volatile uint16_t*)(&_MBAR[0x802E]))
-#define MCF_DMA_TCR10 (*(volatile uint16_t*)(&_MBAR[0x8030]))
-#define MCF_DMA_TCR11 (*(volatile uint16_t*)(&_MBAR[0x8032]))
-#define MCF_DMA_TCR12 (*(volatile uint16_t*)(&_MBAR[0x8034]))
-#define MCF_DMA_TCR13 (*(volatile uint16_t*)(&_MBAR[0x8036]))
-#define MCF_DMA_TCR14 (*(volatile uint16_t*)(&_MBAR[0x8038]))
-#define MCF_DMA_TCR15 (*(volatile uint16_t*)(&_MBAR[0x803A]))
-#define MCF_DMA_PRIOR0 (*(volatile uint8_t *)(&_MBAR[0x803C]))
-#define MCF_DMA_PRIOR1 (*(volatile uint8_t *)(&_MBAR[0x803D]))
-#define MCF_DMA_PRIOR2 (*(volatile uint8_t *)(&_MBAR[0x803E]))
-#define MCF_DMA_PRIOR3 (*(volatile uint8_t *)(&_MBAR[0x803F]))
-#define MCF_DMA_PRIOR4 (*(volatile uint8_t *)(&_MBAR[0x8040]))
-#define MCF_DMA_PRIOR5 (*(volatile uint8_t *)(&_MBAR[0x8041]))
-#define MCF_DMA_PRIOR6 (*(volatile uint8_t *)(&_MBAR[0x8042]))
-#define MCF_DMA_PRIOR7 (*(volatile uint8_t *)(&_MBAR[0x8043]))
-#define MCF_DMA_PRIOR8 (*(volatile uint8_t *)(&_MBAR[0x8044]))
-#define MCF_DMA_PRIOR9 (*(volatile uint8_t *)(&_MBAR[0x8045]))
-#define MCF_DMA_PRIOR10 (*(volatile uint8_t *)(&_MBAR[0x8046]))
-#define MCF_DMA_PRIOR11 (*(volatile uint8_t *)(&_MBAR[0x8047]))
-#define MCF_DMA_PRIOR12 (*(volatile uint8_t *)(&_MBAR[0x8048]))
-#define MCF_DMA_PRIOR13 (*(volatile uint8_t *)(&_MBAR[0x8049]))
-#define MCF_DMA_PRIOR14 (*(volatile uint8_t *)(&_MBAR[0x804A]))
-#define MCF_DMA_PRIOR15 (*(volatile uint8_t *)(&_MBAR[0x804B]))
-#define MCF_DMA_PRIOR16 (*(volatile uint8_t *)(&_MBAR[0x804C]))
-#define MCF_DMA_PRIOR17 (*(volatile uint8_t *)(&_MBAR[0x804D]))
-#define MCF_DMA_PRIOR18 (*(volatile uint8_t *)(&_MBAR[0x804E]))
-#define MCF_DMA_PRIOR19 (*(volatile uint8_t *)(&_MBAR[0x804F]))
-#define MCF_DMA_PRIOR20 (*(volatile uint8_t *)(&_MBAR[0x8050]))
-#define MCF_DMA_PRIOR21 (*(volatile uint8_t *)(&_MBAR[0x8051]))
-#define MCF_DMA_PRIOR22 (*(volatile uint8_t *)(&_MBAR[0x8052]))
-#define MCF_DMA_PRIOR23 (*(volatile uint8_t *)(&_MBAR[0x8053]))
-#define MCF_DMA_PRIOR24 (*(volatile uint8_t *)(&_MBAR[0x8054]))
-#define MCF_DMA_PRIOR25 (*(volatile uint8_t *)(&_MBAR[0x8055]))
-#define MCF_DMA_PRIOR26 (*(volatile uint8_t *)(&_MBAR[0x8056]))
-#define MCF_DMA_PRIOR27 (*(volatile uint8_t *)(&_MBAR[0x8057]))
-#define MCF_DMA_PRIOR28 (*(volatile uint8_t *)(&_MBAR[0x8058]))
-#define MCF_DMA_PRIOR29 (*(volatile uint8_t *)(&_MBAR[0x8059]))
-#define MCF_DMA_PRIOR30 (*(volatile uint8_t *)(&_MBAR[0x805A]))
-#define MCF_DMA_PRIOR31 (*(volatile uint8_t *)(&_MBAR[0x805B]))
-#define MCF_DMA_IMCR (*(volatile uint32_t*)(&_MBAR[0x805C]))
-#define MCF_DMA_TSKSZ0 (*(volatile uint32_t*)(&_MBAR[0x8060]))
-#define MCF_DMA_TSKSZ1 (*(volatile uint32_t*)(&_MBAR[0x8064]))
-#define MCF_DMA_DBGCOMP0 (*(volatile uint32_t*)(&_MBAR[0x8070]))
-#define MCF_DMA_DBGCOMP2 (*(volatile uint32_t*)(&_MBAR[0x8074]))
-#define MCF_DMA_DBGCTL (*(volatile uint32_t*)(&_MBAR[0x8078]))
-#define MCF_DMA_TCR(x) (*(volatile uint16_t*)(&_MBAR[0x801C + ((x)*0x2)]))
-#define MCF_DMA_PRIOR(x) (*(volatile uint8_t *)(&_MBAR[0x803C + ((x)*0x1)]))
-
-
-/* Bit definitions and macros for MCF_DMA_TASKBAR */
-#define MCF_DMA_TASKBAR_TASK_BASE_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_CP */
-#define MCF_DMA_CP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_EP */
-#define MCF_DMA_EP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_VP */
-#define MCF_DMA_VP_VARIABLE_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_PTD */
-#define MCF_DMA_PTD_PCTL0 (0x1)
-#define MCF_DMA_PTD_PCTL1 (0x2)
-#define MCF_DMA_PTD_PCTL13 (0x2000)
-#define MCF_DMA_PTD_PCTL14 (0x4000)
-#define MCF_DMA_PTD_PCTL15 (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_TCR */
-#define MCF_DMA_TCR_ASTSKNUM(x) (((x)&0xF)<<0)
-#define MCF_DMA_TCR_HLDINITNUM (0x20)
-#define MCF_DMA_TCR_HIPRITSKEN (0x40)
-#define MCF_DMA_TCR_ASTRT (0x80)
-#define MCF_DMA_TCR_INITNUM(x) (((x)&0x1F)<<0x8)
-#define MCF_DMA_TCR_ALWINIT (0x2000)
-#define MCF_DMA_TCR_V (0x4000)
-#define MCF_DMA_TCR_EN (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_PRIOR */
-#define MCF_DMA_PRIOR_PRI(x) (((x)&0x7)<<0)
-#define MCF_DMA_PRIOR_HLD (0x80)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_IMC16(x) (((x)&0x3)<<0)
-#define MCF_DMA_IMCR_IMC17(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_IMCR_IMC18(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_IMCR_IMC19(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_IMCR_IMC20(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_IMCR_IMC21(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_IMCR_IMC22(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_IMCR_IMC23(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_IMCR_IMC24(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_IMCR_IMC25(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_IMCR_IMC26(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_IMCR_IMC27(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_IMCR_IMC28(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_IMCR_IMC29(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_IMCR_IMC30(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_IMCR_IMC31(x) (((x)&0x3)<<0x1E)
-
-
-#define MCF_DMA_IMCR_IMC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_IMC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_IMC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_IMC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_IMC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_IMC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_IMC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_IMC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_IMC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_IMC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_IMC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_IMC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_IMC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_IMC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_IMC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_IMC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_IMC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_IMC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_IMC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_IMC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_IMC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_IMC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_IMC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_IMC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_IMC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_IMC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_IMC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_IMC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_IMC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_IMC31_PSC3TX (0xC0000000)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ0 */
-#define MCF_DMA_TSKSZ0_DSTSZ7(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ0_SRCSZ7(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ0_DSTSZ6(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ0_SRCSZ6(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ0_DSTSZ5(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ0_SRCSZ5(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ0_DSTSZ4(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ0_SRCSZ4(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ0_DSTSZ3(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ0_SRCSZ3(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ0_DSTSZ2(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ0_SRCSZ2(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ0_DSTSZ1(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ0_SRCSZ1(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ0_DSTSZ0(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ0_SRCSZ0(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ1 */
-#define MCF_DMA_TSKSZ1_DSTSZ15(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ1_SRCSZ15(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ1_DSTSZ14(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ1_SRCSZ14(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ1_DSTSZ13(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ1_SRCSZ13(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ1_DSTSZ12(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ1_SRCSZ12(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ1_DSTSZ11(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ1_SRCSZ11(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ1_DSTSZ10(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ1_SRCSZ10(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ1_DSTSZ9(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ1_SRCSZ9(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ1_DSTSZ8(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ1_SRCSZ8(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP0 */
-#define MCF_DMA_DBGCOMP0_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP2 */
-#define MCF_DMA_DBGCOMP2_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCTL */
-#define MCF_DMA_DBGCTL_I (0x2)
-#define MCF_DMA_DBGCTL_E (0x4)
-#define MCF_DMA_DBGCTL_AND_OR (0x80)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_2(x) (((x)&0x7)<<0x8)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_1(x) (((x)&0x7)<<0xB)
-#define MCF_DMA_DBGCTL_B (0x4000)
-#define MCF_DMA_DBGCTL_AA (0x8000)
-#define MCF_DMA_DBGCTL_BLOCK_TASKS(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_DMA_H__ */
diff --git a/BaS_gcc/include/MCF5475_DSPI.h b/BaS_gcc/include/MCF5475_DSPI.h
deleted file mode 100644
index 76cac28..0000000
--- a/BaS_gcc/include/MCF5475_DSPI.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DSPI_H__
-#define __MCF5475_DSPI_H__
-
-
-/*********************************************************************
-*
-* DMA Serial Peripheral Interface (DSPI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(volatile uint32_t*)(&_MBAR[0x8A00]))
-#define MCF_DSPI_DTCR (*(volatile uint32_t*)(&_MBAR[0x8A08]))
-#define MCF_DSPI_DCTAR0 (*(volatile uint32_t*)(&_MBAR[0x8A0C]))
-#define MCF_DSPI_DCTAR1 (*(volatile uint32_t*)(&_MBAR[0x8A10]))
-#define MCF_DSPI_DCTAR2 (*(volatile uint32_t*)(&_MBAR[0x8A14]))
-#define MCF_DSPI_DCTAR3 (*(volatile uint32_t*)(&_MBAR[0x8A18]))
-#define MCF_DSPI_DCTAR4 (*(volatile uint32_t*)(&_MBAR[0x8A1C]))
-#define MCF_DSPI_DCTAR5 (*(volatile uint32_t*)(&_MBAR[0x8A20]))
-#define MCF_DSPI_DCTAR6 (*(volatile uint32_t*)(&_MBAR[0x8A24]))
-#define MCF_DSPI_DCTAR7 (*(volatile uint32_t*)(&_MBAR[0x8A28]))
-#define MCF_DSPI_DSR (*(volatile uint32_t*)(&_MBAR[0x8A2C]))
-#define MCF_DSPI_DIRSR (*(volatile uint32_t*)(&_MBAR[0x8A30]))
-#define MCF_DSPI_DTFR (*(volatile uint32_t*)(&_MBAR[0x8A34]))
-#define MCF_DSPI_DRFR (*(volatile uint32_t*)(&_MBAR[0x8A38]))
-#define MCF_DSPI_DTFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A3C]))
-#define MCF_DSPI_DTFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A40]))
-#define MCF_DSPI_DTFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A44]))
-#define MCF_DSPI_DTFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A48]))
-#define MCF_DSPI_DRFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A7C]))
-#define MCF_DSPI_DRFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A80]))
-#define MCF_DSPI_DRFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A84]))
-#define MCF_DSPI_DRFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A88]))
-#define MCF_DSPI_DCTAR(x) (*(volatile uint32_t*)(&_MBAR[0x8A0C + ((x)*0x4)]))
-#define MCF_DSPI_DTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A3C + ((x)*0x4)]))
-#define MCF_DSPI_DRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A7C + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x1)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x3)<<0x8)
-#define MCF_DSPI_DMCR_SMPL_PT_0CLK (0)
-#define MCF_DSPI_DMCR_SMPL_PT_1CLK (0x100)
-#define MCF_DSPI_DMCR_SMPL_PT_2CLK (0x200)
-#define MCF_DSPI_DMCR_CRXF (0x400)
-#define MCF_DSPI_DMCR_CTXF (0x800)
-#define MCF_DSPI_DMCR_DRXF (0x1000)
-#define MCF_DSPI_DMCR_DTXF (0x2000)
-#define MCF_DSPI_DMCR_CSIS0 (0x10000)
-#define MCF_DSPI_DMCR_CSIS2 (0x40000)
-#define MCF_DSPI_DMCR_CSIS3 (0x80000)
-#define MCF_DSPI_DMCR_CSIS5 (0x200000)
-#define MCF_DSPI_DMCR_ROOE (0x1000000)
-#define MCF_DSPI_DMCR_PCSSE (0x2000000)
-#define MCF_DSPI_DMCR_MTFE (0x4000000)
-#define MCF_DSPI_DMCR_FRZ (0x8000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x3)<<0x1C)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DCTAR */
-#define MCF_DSPI_DCTAR_BR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DCTAR_DT(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DCTAR_ASC(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DCTAR_CSSCK(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DCTAR_PBR(x) (((x)&0x3)<<0x10)
-#define MCF_DSPI_DCTAR_PBR_1CLK (0)
-#define MCF_DSPI_DCTAR_PBR_3CLK (0x10000)
-#define MCF_DSPI_DCTAR_PBR_5CLK (0x20000)
-#define MCF_DSPI_DCTAR_PBR_7CLK (0x30000)
-#define MCF_DSPI_DCTAR_PDT(x) (((x)&0x3)<<0x12)
-#define MCF_DSPI_DCTAR_PDT_1CLK (0)
-#define MCF_DSPI_DCTAR_PDT_3CLK (0x40000)
-#define MCF_DSPI_DCTAR_PDT_5CLK (0x80000)
-#define MCF_DSPI_DCTAR_PDT_7CLK (0xC0000)
-#define MCF_DSPI_DCTAR_PASC(x) (((x)&0x3)<<0x14)
-#define MCF_DSPI_DCTAR_PASC_1CLK (0)
-#define MCF_DSPI_DCTAR_PASC_3CLK (0x100000)
-#define MCF_DSPI_DCTAR_PASC_5CLK (0x200000)
-#define MCF_DSPI_DCTAR_PASC_7CLK (0x300000)
-#define MCF_DSPI_DCTAR_PCSSCK(x) (((x)&0x3)<<0x16)
-#define MCF_DSPI_DCTAR_LSBFE (0x1000000)
-#define MCF_DSPI_DCTAR_CPHA (0x2000000)
-#define MCF_DSPI_DCTAR_CPOL (0x4000000)
-#define MCF_DSPI_DCTAR_TRSZ(x) (((x)&0xF)<<0x1B)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DSR_RFDF (0x20000)
-#define MCF_DSPI_DSR_RFOF (0x80000)
-#define MCF_DSPI_DSR_TFFF (0x2000000)
-#define MCF_DSPI_DSR_TFUF (0x8000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x10000)
-#define MCF_DSPI_DIRSR_RFDFE (0x20000)
-#define MCF_DSPI_DIRSR_RFOFE (0x80000)
-#define MCF_DSPI_DIRSR_TFFFS (0x1000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x2000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x8000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x10000)
-#define MCF_DSPI_DTFR_CS2 (0x40000)
-#define MCF_DSPI_DTFR_CS3 (0x80000)
-#define MCF_DSPI_DTFR_CS5 (0x200000)
-#define MCF_DSPI_DTFR_CTCNT (0x4000000)
-#define MCF_DSPI_DTFR_EOQ (0x8000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x7)<<0x1C)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDR */
-#define MCF_DSPI_DTFDR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFDR_TXCMD(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDR */
-#define MCF_DSPI_DRFDR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-
-#endif /* __MCF5475_DSPI_H__ */
diff --git a/BaS_gcc/include/MCF5475_EPORT.h b/BaS_gcc/include/MCF5475_EPORT.h
deleted file mode 100644
index 6506196..0000000
--- a/BaS_gcc/include/MCF5475_EPORT.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_EPORT_H__
-#define __MCF5475_EPORT_H__
-
-
-/*********************************************************************
-*
-* Edge Port Module (EPORT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(volatile uint16_t*)(&_MBAR[0xF00]))
-#define MCF_EPORT_EPDDR (*(volatile uint8_t *)(&_MBAR[0xF04]))
-#define MCF_EPORT_EPIER (*(volatile uint8_t *)(&_MBAR[0xF05]))
-#define MCF_EPORT_EPDR (*(volatile uint8_t *)(&_MBAR[0xF08]))
-#define MCF_EPORT_EPPDR (*(volatile uint8_t *)(&_MBAR[0xF09]))
-#define MCF_EPORT_EPFR (*(volatile uint8_t *)(&_MBAR[0xF0C]))
-
-
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x3)<<0x2)
-#define MCF_EPORT_EPPAR_EPPA1_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA1_RISING (0x4)
-#define MCF_EPORT_EPPAR_EPPA1_FALLING (0x8)
-#define MCF_EPORT_EPPAR_EPPA1_BOTH (0xC)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x3)<<0x4)
-#define MCF_EPORT_EPPAR_EPPA2_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA2_RISING (0x10)
-#define MCF_EPORT_EPPAR_EPPA2_FALLING (0x20)
-#define MCF_EPORT_EPPAR_EPPA2_BOTH (0x30)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x3)<<0x6)
-#define MCF_EPORT_EPPAR_EPPA3_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA3_RISING (0x40)
-#define MCF_EPORT_EPPAR_EPPA3_FALLING (0x80)
-#define MCF_EPORT_EPPAR_EPPA3_BOTH (0xC0)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x3)<<0x8)
-#define MCF_EPORT_EPPAR_EPPA4_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA4_RISING (0x100)
-#define MCF_EPORT_EPPAR_EPPA4_FALLING (0x200)
-#define MCF_EPORT_EPPAR_EPPA4_BOTH (0x300)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x3)<<0xA)
-#define MCF_EPORT_EPPAR_EPPA5_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA5_RISING (0x400)
-#define MCF_EPORT_EPPAR_EPPA5_FALLING (0x800)
-#define MCF_EPORT_EPPAR_EPPA5_BOTH (0xC00)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x3)<<0xC)
-#define MCF_EPORT_EPPAR_EPPA6_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA6_RISING (0x1000)
-#define MCF_EPORT_EPPAR_EPPA6_FALLING (0x2000)
-#define MCF_EPORT_EPPAR_EPPA6_BOTH (0x3000)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x3)<<0xE)
-#define MCF_EPORT_EPPAR_EPPA7_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA7_RISING (0x4000)
-#define MCF_EPORT_EPPAR_EPPA7_FALLING (0x8000)
-#define MCF_EPORT_EPPAR_EPPA7_BOTH (0xC000)
-#define MCF_EPORT_EPPAR_LEVEL (0)
-#define MCF_EPORT_EPPAR_RISING (0x1)
-#define MCF_EPORT_EPPAR_FALLING (0x2)
-#define MCF_EPORT_EPPAR_BOTH (0x3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x2)
-#define MCF_EPORT_EPDDR_EPDD2 (0x4)
-#define MCF_EPORT_EPDDR_EPDD3 (0x8)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x2)
-#define MCF_EPORT_EPIER_EPIE2 (0x4)
-#define MCF_EPORT_EPIER_EPIE3 (0x8)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x2)
-#define MCF_EPORT_EPDR_EPD2 (0x4)
-#define MCF_EPORT_EPDR_EPD3 (0x8)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x2)
-#define MCF_EPORT_EPPDR_EPPD2 (0x4)
-#define MCF_EPORT_EPPDR_EPPD3 (0x8)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x2)
-#define MCF_EPORT_EPFR_EPF2 (0x4)
-#define MCF_EPORT_EPFR_EPF3 (0x8)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-
-#endif /* __MCF5475_EPORT_H__ */
diff --git a/BaS_gcc/include/MCF5475_FBCS.h b/BaS_gcc/include/MCF5475_FBCS.h
deleted file mode 100644
index 37daf00..0000000
--- a/BaS_gcc/include/MCF5475_FBCS.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FBCS_H__
-#define __MCF5475_FBCS_H__
-
-
-/*********************************************************************
-*
-* FlexBus Chip Select Module (FBCS)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FBCS0_CSAR (*(volatile uint32_t*)(&_MBAR[0x500]))
-#define MCF_FBCS0_CSMR (*(volatile uint32_t*)(&_MBAR[0x504]))
-#define MCF_FBCS0_CSCR (*(volatile uint32_t*)(&_MBAR[0x508]))
-
-#define MCF_FBCS1_CSAR (*(volatile uint32_t*)(&_MBAR[0x50C]))
-#define MCF_FBCS1_CSMR (*(volatile uint32_t*)(&_MBAR[0x510]))
-#define MCF_FBCS1_CSCR (*(volatile uint32_t*)(&_MBAR[0x514]))
-
-#define MCF_FBCS2_CSAR (*(volatile uint32_t*)(&_MBAR[0x518]))
-#define MCF_FBCS2_CSMR (*(volatile uint32_t*)(&_MBAR[0x51C]))
-#define MCF_FBCS2_CSCR (*(volatile uint32_t*)(&_MBAR[0x520]))
-
-#define MCF_FBCS3_CSAR (*(volatile uint32_t*)(&_MBAR[0x524]))
-#define MCF_FBCS3_CSMR (*(volatile uint32_t*)(&_MBAR[0x528]))
-#define MCF_FBCS3_CSCR (*(volatile uint32_t*)(&_MBAR[0x52C]))
-
-#define MCF_FBCS4_CSAR (*(volatile uint32_t*)(&_MBAR[0x530]))
-#define MCF_FBCS4_CSMR (*(volatile uint32_t*)(&_MBAR[0x534]))
-#define MCF_FBCS4_CSCR (*(volatile uint32_t*)(&_MBAR[0x538]))
-
-#define MCF_FBCS5_CSAR (*(volatile uint32_t*)(&_MBAR[0x53C]))
-#define MCF_FBCS5_CSMR (*(volatile uint32_t*)(&_MBAR[0x540]))
-#define MCF_FBCS5_CSCR (*(volatile uint32_t*)(&_MBAR[0x544]))
-
-#define MCF_FBCS_CSAR(x) (*(volatile uint32_t*)(&_MBAR[0x500 + ((x)*0xC)]))
-#define MCF_FBCS_CSMR(x) (*(volatile uint32_t*)(&_MBAR[0x504 + ((x)*0xC)]))
-#define MCF_FBCS_CSCR(x) (*(volatile uint32_t*)(&_MBAR[0x508 + ((x)*0xC)]))
-
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x1)
-#define MCF_FBCS_CSMR_WP (0x100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0xFFFF)<<0x10)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0xFFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x7FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x3FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x1FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0xFF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x7F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x3F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x1F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0xF0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0xF0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x70000)
-#define MCF_FBCS_CSMR_BAM_256K (0x30000)
-#define MCF_FBCS_CSMR_BAM_128K (0x10000)
-#define MCF_FBCS_CSMR_BAM_64K (0)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x8)
-#define MCF_FBCS_CSCR_BSTR (0x10)
-#define MCF_FBCS_CSCR_BEM (0x20)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x3)<<0x6)
-#define MCF_FBCS_CSCR_PS_32 (0)
-#define MCF_FBCS_CSCR_PS_8 (0x40)
-#define MCF_FBCS_CSCR_PS_16 (0x80)
-#define MCF_FBCS_CSCR_AA (0x100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x3F)<<0xA)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x3)<<0x10)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x3)<<0x12)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x3)<<0x14)
-#define MCF_FBCS_CSCR_SWSEN (0x800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x3F)<<0x1A)
-
-
-#endif /* __MCF5475_FBCS_H__ */
diff --git a/BaS_gcc/include/MCF5475_FEC.h b/BaS_gcc/include/MCF5475_FEC.h
deleted file mode 100644
index fdd9403..0000000
--- a/BaS_gcc/include/MCF5475_FEC.h
+++ /dev/null
@@ -1,680 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FEC_H__
-#define __MCF5475_FEC_H__
-
-
-/*********************************************************************
-*
-* Fast Ethernet Controller(FEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FEC0_EIR (*(volatile uint32_t*)(&_MBAR[0x9004]))
-#define MCF_FEC0_EIMR (*(volatile uint32_t*)(&_MBAR[0x9008]))
-#define MCF_FEC0_ECR (*(volatile uint32_t*)(&_MBAR[0x9024]))
-#define MCF_FEC0_MMFR (*(volatile uint32_t*)(&_MBAR[0x9040]))
-#define MCF_FEC0_MSCR (*(volatile uint32_t*)(&_MBAR[0x9044]))
-#define MCF_FEC0_MIBC (*(volatile uint32_t*)(&_MBAR[0x9064]))
-#define MCF_FEC0_RCR (*(volatile uint32_t*)(&_MBAR[0x9084]))
-#define MCF_FEC0_RHR (*(volatile uint32_t*)(&_MBAR[0x9088]))
-#define MCF_FEC0_TCR (*(volatile uint32_t*)(&_MBAR[0x90C4]))
-#define MCF_FEC0_PALR (*(volatile uint32_t*)(&_MBAR[0x90E4]))
-#define MCF_FEC0_PAHR (*(volatile uint32_t*)(&_MBAR[0x90E8]))
-#define MCF_FEC0_OPD (*(volatile uint32_t*)(&_MBAR[0x90EC]))
-#define MCF_FEC0_IAUR (*(volatile uint32_t*)(&_MBAR[0x9118]))
-#define MCF_FEC0_IALR (*(volatile uint32_t*)(&_MBAR[0x911C]))
-#define MCF_FEC0_GAUR (*(volatile uint32_t*)(&_MBAR[0x9120]))
-#define MCF_FEC0_GALR (*(volatile uint32_t*)(&_MBAR[0x9124]))
-#define MCF_FEC0_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9144]))
-#define MCF_FEC0_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9184]))
-#define MCF_FEC0_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9188]))
-#define MCF_FEC0_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x918C]))
-#define MCF_FEC0_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9190]))
-#define MCF_FEC0_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9194]))
-#define MCF_FEC0_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9198]))
-#define MCF_FEC0_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x919C]))
-#define MCF_FEC0_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x91A0]))
-#define MCF_FEC0_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x91A4]))
-#define MCF_FEC0_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x91A8]))
-#define MCF_FEC0_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x91AC]))
-#define MCF_FEC0_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x91B0]))
-#define MCF_FEC0_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x91B4]))
-#define MCF_FEC0_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x91B8]))
-#define MCF_FEC0_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x91BC]))
-#define MCF_FEC0_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x91C0]))
-#define MCF_FEC0_FECFRST (*(volatile uint32_t*)(&_MBAR[0x91C4]))
-#define MCF_FEC0_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x91C8]))
-#define MCF_FEC0_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9200]))
-#define MCF_FEC0_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9204]))
-#define MCF_FEC0_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9208]))
-#define MCF_FEC0_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x920C]))
-#define MCF_FEC0_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9210]))
-#define MCF_FEC0_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9214]))
-#define MCF_FEC0_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9218]))
-#define MCF_FEC0_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x921C]))
-#define MCF_FEC0_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9220]))
-#define MCF_FEC0_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9224]))
-#define MCF_FEC0_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9228]))
-#define MCF_FEC0_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x922C]))
-#define MCF_FEC0_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9230]))
-#define MCF_FEC0_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9234]))
-#define MCF_FEC0_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9238]))
-#define MCF_FEC0_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x923C]))
-#define MCF_FEC0_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9240]))
-#define MCF_FEC0_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9244]))
-#define MCF_FEC0_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9248]))
-#define MCF_FEC0_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x924C]))
-#define MCF_FEC0_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9250]))
-#define MCF_FEC0_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9254]))
-#define MCF_FEC0_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9258]))
-#define MCF_FEC0_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x925C]))
-#define MCF_FEC0_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9260]))
-#define MCF_FEC0_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9264]))
-#define MCF_FEC0_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9268]))
-#define MCF_FEC0_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x926C]))
-#define MCF_FEC0_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9270]))
-#define MCF_FEC0_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9274]))
-#define MCF_FEC0_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9280]))
-#define MCF_FEC0_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9284]))
-#define MCF_FEC0_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9288]))
-#define MCF_FEC0_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x928C]))
-#define MCF_FEC0_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9290]))
-#define MCF_FEC0_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9294]))
-#define MCF_FEC0_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9298]))
-#define MCF_FEC0_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x929C]))
-#define MCF_FEC0_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x92A0]))
-#define MCF_FEC0_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x92A4]))
-#define MCF_FEC0_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x92A8]))
-#define MCF_FEC0_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x92AC]))
-#define MCF_FEC0_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x92B0]))
-#define MCF_FEC0_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x92B4]))
-#define MCF_FEC0_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x92B8]))
-#define MCF_FEC0_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x92BC]))
-#define MCF_FEC0_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x92C0]))
-#define MCF_FEC0_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x92C4]))
-#define MCF_FEC0_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x92C8]))
-#define MCF_FEC0_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x92CC]))
-#define MCF_FEC0_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x92D0]))
-#define MCF_FEC0_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x92D4]))
-#define MCF_FEC0_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x92D8]))
-#define MCF_FEC0_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x92DC]))
-#define MCF_FEC0_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x92E0]))
-
-#define MCF_FEC1_EIR (*(volatile uint32_t*)(&_MBAR[0x9804]))
-#define MCF_FEC1_EIMR (*(volatile uint32_t*)(&_MBAR[0x9808]))
-#define MCF_FEC1_ECR (*(volatile uint32_t*)(&_MBAR[0x9824]))
-#define MCF_FEC1_MMFR (*(volatile uint32_t*)(&_MBAR[0x9840]))
-#define MCF_FEC1_MSCR (*(volatile uint32_t*)(&_MBAR[0x9844]))
-#define MCF_FEC1_MIBC (*(volatile uint32_t*)(&_MBAR[0x9864]))
-#define MCF_FEC1_RCR (*(volatile uint32_t*)(&_MBAR[0x9884]))
-#define MCF_FEC1_RHR (*(volatile uint32_t*)(&_MBAR[0x9888]))
-#define MCF_FEC1_TCR (*(volatile uint32_t*)(&_MBAR[0x98C4]))
-#define MCF_FEC1_PALR (*(volatile uint32_t*)(&_MBAR[0x98E4]))
-#define MCF_FEC1_PAHR (*(volatile uint32_t*)(&_MBAR[0x98E8]))
-#define MCF_FEC1_OPD (*(volatile uint32_t*)(&_MBAR[0x98EC]))
-#define MCF_FEC1_IAUR (*(volatile uint32_t*)(&_MBAR[0x9918]))
-#define MCF_FEC1_IALR (*(volatile uint32_t*)(&_MBAR[0x991C]))
-#define MCF_FEC1_GAUR (*(volatile uint32_t*)(&_MBAR[0x9920]))
-#define MCF_FEC1_GALR (*(volatile uint32_t*)(&_MBAR[0x9924]))
-#define MCF_FEC1_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9944]))
-#define MCF_FEC1_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9984]))
-#define MCF_FEC1_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9988]))
-#define MCF_FEC1_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x998C]))
-#define MCF_FEC1_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9990]))
-#define MCF_FEC1_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9994]))
-#define MCF_FEC1_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9998]))
-#define MCF_FEC1_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x999C]))
-#define MCF_FEC1_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x99A0]))
-#define MCF_FEC1_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x99A4]))
-#define MCF_FEC1_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x99A8]))
-#define MCF_FEC1_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x99AC]))
-#define MCF_FEC1_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x99B0]))
-#define MCF_FEC1_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x99B4]))
-#define MCF_FEC1_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x99B8]))
-#define MCF_FEC1_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x99BC]))
-#define MCF_FEC1_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x99C0]))
-#define MCF_FEC1_FECFRST (*(volatile uint32_t*)(&_MBAR[0x99C4]))
-#define MCF_FEC1_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x99C8]))
-#define MCF_FEC1_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A00]))
-#define MCF_FEC1_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A04]))
-#define MCF_FEC1_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A08]))
-#define MCF_FEC1_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A0C]))
-#define MCF_FEC1_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A10]))
-#define MCF_FEC1_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A14]))
-#define MCF_FEC1_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A18]))
-#define MCF_FEC1_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A1C]))
-#define MCF_FEC1_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9A20]))
-#define MCF_FEC1_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9A24]))
-#define MCF_FEC1_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9A28]))
-#define MCF_FEC1_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9A2C]))
-#define MCF_FEC1_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9A30]))
-#define MCF_FEC1_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9A34]))
-#define MCF_FEC1_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9A38]))
-#define MCF_FEC1_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9A3C]))
-#define MCF_FEC1_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9A40]))
-#define MCF_FEC1_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9A44]))
-#define MCF_FEC1_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A48]))
-#define MCF_FEC1_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9A4C]))
-#define MCF_FEC1_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9A50]))
-#define MCF_FEC1_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9A54]))
-#define MCF_FEC1_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9A58]))
-#define MCF_FEC1_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x9A5C]))
-#define MCF_FEC1_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9A60]))
-#define MCF_FEC1_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9A64]))
-#define MCF_FEC1_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9A68]))
-#define MCF_FEC1_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x9A6C]))
-#define MCF_FEC1_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9A70]))
-#define MCF_FEC1_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9A74]))
-#define MCF_FEC1_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9A80]))
-#define MCF_FEC1_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A84]))
-#define MCF_FEC1_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A88]))
-#define MCF_FEC1_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A8C]))
-#define MCF_FEC1_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A90]))
-#define MCF_FEC1_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A94]))
-#define MCF_FEC1_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A98]))
-#define MCF_FEC1_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A9C]))
-#define MCF_FEC1_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x9AA0]))
-#define MCF_FEC1_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x9AA4]))
-#define MCF_FEC1_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x9AA8]))
-#define MCF_FEC1_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9AAC]))
-#define MCF_FEC1_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9AB0]))
-#define MCF_FEC1_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9AB4]))
-#define MCF_FEC1_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9AB8]))
-#define MCF_FEC1_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9ABC]))
-#define MCF_FEC1_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9AC0]))
-#define MCF_FEC1_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9AC4]))
-#define MCF_FEC1_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9AC8]))
-#define MCF_FEC1_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9ACC]))
-#define MCF_FEC1_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x9AD0]))
-#define MCF_FEC1_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9AD4]))
-#define MCF_FEC1_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x9AD8]))
-#define MCF_FEC1_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9ADC]))
-#define MCF_FEC1_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9AE0]))
-
-#define MCF_FEC_EIR(x) (*(volatile uint32_t*)(&_MBAR[0x9004 + ((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(volatile uint32_t*)(&_MBAR[0x9008 + ((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(volatile uint32_t*)(&_MBAR[0x9024 + ((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(volatile uint32_t*)(&_MBAR[0x9040 + ((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(volatile uint32_t*)(&_MBAR[0x9044 + ((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(volatile uint32_t*)(&_MBAR[0x9064 + ((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(volatile uint32_t*)(&_MBAR[0x9084 + ((x)*0x800)]))
-#define MCF_FEC_RHR(x) (*(volatile uint32_t*)(&_MBAR[0x9088 + ((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(volatile uint32_t*)(&_MBAR[0x90C4 + ((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(volatile uint32_t*)(&_MBAR[0x90E4 + ((x)*0x800)]))
-#define MCF_FEC_PAHR(x) (*(volatile uint32_t*)(&_MBAR[0x90E8 + ((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(volatile uint32_t*)(&_MBAR[0x90EC + ((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9118 + ((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(volatile uint32_t*)(&_MBAR[0x911C + ((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9120 + ((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(volatile uint32_t*)(&_MBAR[0x9124 + ((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(volatile uint32_t*)(&_MBAR[0x9144 + ((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x9184 + ((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(volatile uint32_t*)(&_MBAR[0x9188 + ((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x918C + ((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x9190 + ((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x9194 + ((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(volatile uint32_t*)(&_MBAR[0x9198 + ((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(volatile uint32_t*)(&_MBAR[0x919C + ((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91A0 + ((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x91A4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(volatile uint32_t*)(&_MBAR[0x91A8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x91AC + ((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B0 + ((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(volatile uint32_t*)(&_MBAR[0x91B8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(volatile uint32_t*)(&_MBAR[0x91BC + ((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91C0 + ((x)*0x800)]))
-#define MCF_FEC_FECFRST(x) (*(volatile uint32_t*)(&_MBAR[0x91C4 + ((x)*0x800)]))
-#define MCF_FEC_FECCTCWR(x) (*(volatile uint32_t*)(&_MBAR[0x91C8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9200 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9204 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9208 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x920C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9210 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9214 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9218 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x921C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x9220 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(volatile uint32_t*)(&_MBAR[0x9224 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(volatile uint32_t*)(&_MBAR[0x9228 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x922C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x9230 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x9234 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x9238 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x923C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x9240 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x9244 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9248 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x924C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(volatile uint32_t*)(&_MBAR[0x9250 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9254 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(volatile uint32_t*)(&_MBAR[0x9258 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(volatile uint32_t*)(&_MBAR[0x925C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9260 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x9264 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(volatile uint32_t*)(&_MBAR[0x9268 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(volatile uint32_t*)(&_MBAR[0x926C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x9270 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x9274 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9280 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9284 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9288 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x928C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9290 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9294 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9298 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x929C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x92A0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(volatile uint32_t*)(&_MBAR[0x92A4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(volatile uint32_t*)(&_MBAR[0x92A8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x92AC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x92B0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x92B4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x92B8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x92BC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x92C0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x92C4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x92C8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92CC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(volatile uint32_t*)(&_MBAR[0x92D0 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x92D4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x92D8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x92DC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92E0 + ((x)*0x800)]))
-
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x20000)
-#define MCF_FEC_EIR_XFERR (0x40000)
-#define MCF_FEC_EIR_XFUN (0x80000)
-#define MCF_FEC_EIR_RL (0x100000)
-#define MCF_FEC_EIR_LC (0x200000)
-#define MCF_FEC_EIR_MII (0x800000)
-#define MCF_FEC_EIR_TXF (0x8000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x20000)
-#define MCF_FEC_EIMR_XFERR (0x40000)
-#define MCF_FEC_EIMR_XFUN (0x80000)
-#define MCF_FEC_EIMR_RL (0x100000)
-#define MCF_FEC_EIMR_LC (0x200000)
-#define MCF_FEC_EIMR_MII (0x800000)
-#define MCF_FEC_EIMR_TXF (0x8000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x1)
-#define MCF_FEC_ECR_ETHER_EN (0x2)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x3)<<0x10)
-#define MCF_FEC_MMFR_TA_10 (0x20000)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x1F)<<0x12)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x1F)<<0x17)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x3)<<0x1C)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x3)<<0x1E)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x3F)<<0x1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x80)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<0x1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x1)
-#define MCF_FEC_RCR_DRT (0x2)
-#define MCF_FEC_RCR_MII_MODE (0x4)
-#define MCF_FEC_RCR_PROM (0x8)
-#define MCF_FEC_RCR_BC_REJ (0x10)
-#define MCF_FEC_RCR_FCE (0x20)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x7FF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_RHR */
-#define MCF_FEC_RHR_HASH(x) (((x)&0x3F)<<0x18)
-#define MCF_FEC_RHR_MULTCAST (0x40000000)
-#define MCF_FEC_RHR_FCE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x1)
-#define MCF_FEC_TCR_HBC (0x2)
-#define MCF_FEC_TCR_FDEN (0x4)
-#define MCF_FEC_TCR_TFC_PAUSE (0x8)
-#define MCF_FEC_TCR_RFC_PAUSE (0x10)
-
-/* Bit definitions and macros for MCF_FEC_PALR */
-#define MCF_FEC_PALR_PADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_PAHR */
-#define MCF_FEC_PAHR_TYPE(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_PAHR_PADDR2(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_PAUSE_DUR(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_IAUR */
-#define MCF_FEC_IAUR_IADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IALR */
-#define MCF_FEC_IALR_IADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GAUR */
-#define MCF_FEC_GAUR_GADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GALR */
-#define MCF_FEC_GALR_GADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0xF)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x1)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x2)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x3)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x4)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x5)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x6)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x7)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x8)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x9)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0xA)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0xB)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0xC)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0xD)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0xE)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0xF)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x10000)
-#define MCF_FEC_FECRFSR_ALARM (0x20000)
-#define MCF_FEC_FECRFSR_FU (0x40000)
-#define MCF_FEC_FECRFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECRFSR_OF (0x100000)
-#define MCF_FEC_FECRFSR_UF (0x200000)
-#define MCF_FEC_FECRFSR_RXW (0x400000)
-#define MCF_FEC_FECRFSR_FAE (0x800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x80000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_FEC_FECRFCR_FRMEN (0x8000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x10000)
-#define MCF_FEC_FECTFSR_ALARM (0x20000)
-#define MCF_FEC_FECTFSR_FU (0x40000)
-#define MCF_FEC_FECTFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECTFSR_OF (0x100000)
-#define MCF_FEC_FECTFSR_UF (0x200000)
-#define MCF_FEC_FECTFSR_FAE (0x800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0xFFFF)<<0|0x200000)
-#define MCF_FEC_FECTFCR_TXW_MASK (0x240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0xA00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x7)<<0x18|0x200000)
-#define MCF_FEC_FECTFCR_FRMEN (0x8200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECFRST */
-#define MCF_FEC_FECFRST_RST_CTL (0x1000000)
-#define MCF_FEC_FECFRST_SW_RST (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_FECCTCWR */
-#define MCF_FEC_FECCTCWR_TFCW (0x1000000)
-#define MCF_FEC_FECCTCWR_CRC (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_DROP */
-#define MCF_FEC_RMON_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_PACKETS */
-#define MCF_FEC_RMON_T_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_BC_PKT */
-#define MCF_FEC_RMON_T_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_MC_PKT */
-#define MCF_FEC_RMON_T_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_CRC_ALIGN */
-#define MCF_FEC_RMON_T_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_UNDERSIZE */
-#define MCF_FEC_RMON_T_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OVERSIZE */
-#define MCF_FEC_RMON_T_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_FRAG */
-#define MCF_FEC_RMON_T_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_JAB */
-#define MCF_FEC_RMON_T_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_COL */
-#define MCF_FEC_RMON_T_COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P64 */
-#define MCF_FEC_RMON_T_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P65TO127 */
-#define MCF_FEC_RMON_T_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P128TO255 */
-#define MCF_FEC_RMON_T_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P256TO511 */
-#define MCF_FEC_RMON_T_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P512TO1023 */
-#define MCF_FEC_RMON_T_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P1024TO2047 */
-#define MCF_FEC_RMON_T_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P_GTE2048 */
-#define MCF_FEC_RMON_T_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OCTETS */
-#define MCF_FEC_RMON_T_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DROP */
-#define MCF_FEC_IEEE_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FRAME_OK */
-#define MCF_FEC_IEEE_T_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_1COL */
-#define MCF_FEC_IEEE_T_1COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MCOL */
-#define MCF_FEC_IEEE_T_MCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DEF */
-#define MCF_FEC_IEEE_T_DEF_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_LCOL */
-#define MCF_FEC_IEEE_T_LCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_EXCOL */
-#define MCF_FEC_IEEE_T_EXCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MACERR */
-#define MCF_FEC_IEEE_T_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_CSERR */
-#define MCF_FEC_IEEE_T_CSERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_SQE */
-#define MCF_FEC_IEEE_T_SQE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FDXFC */
-#define MCF_FEC_IEEE_T_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_OCTETS_OK */
-#define MCF_FEC_IEEE_T_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_DROP */
-#define MCF_FEC_RMON_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_PACKETS */
-#define MCF_FEC_RMON_R_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_BC_PKT */
-#define MCF_FEC_RMON_R_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_MC_PKT */
-#define MCF_FEC_RMON_R_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_CRC_ALIGN */
-#define MCF_FEC_RMON_R_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_UNDERSIZE */
-#define MCF_FEC_RMON_R_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OVERSIZE */
-#define MCF_FEC_RMON_R_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_FRAG */
-#define MCF_FEC_RMON_R_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_JAB */
-#define MCF_FEC_RMON_R_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_RESVD_0 */
-#define MCF_FEC_RMON_R_RESVD_0_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P64 */
-#define MCF_FEC_RMON_R_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P65TO127 */
-#define MCF_FEC_RMON_R_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P128TO255 */
-#define MCF_FEC_RMON_R_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P256TO511 */
-#define MCF_FEC_RMON_R_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P512TO1023 */
-#define MCF_FEC_RMON_R_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P1024TO2047 */
-#define MCF_FEC_RMON_R_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P_GTE2048 */
-#define MCF_FEC_RMON_R_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OCTETS */
-#define MCF_FEC_RMON_R_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_DROP */
-#define MCF_FEC_IEEE_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FRAME_OK */
-#define MCF_FEC_IEEE_R_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_CRC */
-#define MCF_FEC_IEEE_R_CRC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_ALIGN */
-#define MCF_FEC_IEEE_R_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_MACERR */
-#define MCF_FEC_IEEE_R_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FDXFC */
-#define MCF_FEC_IEEE_R_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_OCTETS_OK */
-#define MCF_FEC_IEEE_R_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-
-#endif /* __MCF5475_FEC_H__ */
diff --git a/BaS_gcc/include/MCF5475_GPIO.h b/BaS_gcc/include/MCF5475_GPIO.h
deleted file mode 100644
index 5dd2583..0000000
--- a/BaS_gcc/include/MCF5475_GPIO.h
+++ /dev/null
@@ -1,543 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPIO_H__
-#define __MCF5475_GPIO_H__
-
-
-/*********************************************************************
-*
-* General Purpose I/O (GPIO)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA00]))
-#define MCF_GPIO_PDDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA10]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA20]))
-#define MCF_GPIO_PCLRR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA30]))
-
-#define MCF_GPIO_PODR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA01]))
-#define MCF_GPIO_PDDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA11]))
-#define MCF_GPIO_PPDSDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA21]))
-#define MCF_GPIO_PCLRR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA31]))
-
-#define MCF_GPIO_PODR_DMA (*(volatile uint8_t *)(&_MBAR[0xA02]))
-#define MCF_GPIO_PDDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA12]))
-#define MCF_GPIO_PPDSDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA22]))
-#define MCF_GPIO_PCLRR_DMA (*(volatile uint8_t *)(&_MBAR[0xA32]))
-
-#define MCF_GPIO_PODR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA04]))
-#define MCF_GPIO_PDDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA14]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA24]))
-#define MCF_GPIO_PCLRR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA34]))
-
-#define MCF_GPIO_PODR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA05]))
-#define MCF_GPIO_PDDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA15]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA25]))
-#define MCF_GPIO_PCLRR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA35]))
-
-#define MCF_GPIO_PODR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA06]))
-#define MCF_GPIO_PDDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA16]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA26]))
-#define MCF_GPIO_PCLRR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA36]))
-
-#define MCF_GPIO_PODR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA07]))
-#define MCF_GPIO_PDDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA17]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA27]))
-#define MCF_GPIO_PCLRR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA37]))
-
-#define MCF_GPIO_PODR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA08]))
-#define MCF_GPIO_PDDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA18]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA28]))
-#define MCF_GPIO_PCLRR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA38]))
-
-#define MCF_GPIO_PODR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA09]))
-#define MCF_GPIO_PDDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA19]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA29]))
-#define MCF_GPIO_PCLRR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA39]))
-
-#define MCF_GPIO_PODR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA0A]))
-#define MCF_GPIO_PDDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA1A]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA2A]))
-#define MCF_GPIO_PCLRR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA3A]))
-
-#define MCF_GPIO2_PODR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA0C]))
-#define MCF_GPIO2_PDDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA1C]))
-#define MCF_GPIO2_PPDSDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define MCF_GPIO2_PCLRR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA3C]))
-
-#define MCF_GPIO0_PODR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA0D]))
-#define MCF_GPIO0_PDDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA1D]))
-#define MCF_GPIO0_PPDSDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA2D]))
-#define MCF_GPIO0_PCLRR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA3D]))
-
-#define MCF_GPIO_PODR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA0E]))
-#define MCF_GPIO_PDDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA1E]))
-#define MCF_GPIO_PPDSDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA2E]))
-#define MCF_GPIO_PCLRR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA3E]))
-
-
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x1)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x2)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x4)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x8)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x1)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x2)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x4)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x8)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x1)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x1)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x2)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x4)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x8)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x2)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x4)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x8)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x2)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x4)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x8)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x2)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x4)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x8)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x1)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x2)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x4)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x1)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x2)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x4)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x1)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x2)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x4)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x1)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x2)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x4)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x1)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x2)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x4)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x8)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x1)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x2)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x4)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x8)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x1)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x2)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x4)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x8)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x1)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x2)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x4)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x8)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x1)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x2)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x4)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x8)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x1)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x2)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x4)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x8)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x1)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x2)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x4)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x8)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x1)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x2)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x4)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x8)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x1)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x2)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x4)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x1)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x2)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x4)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x1)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x2)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x4)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x1)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x2)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C2 (0x4)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x1)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x2)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x4)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x8)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x1)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x2)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x4)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x8)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x1)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x2)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x4)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x8)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x1)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x2)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x4)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x8)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC */
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC */
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC */
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC */
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC */
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC */
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC */
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC */
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x1)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x2)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x4)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x8)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x1)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x2)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x4)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x8)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x1)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x2)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x4)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x8)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x1)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x2)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x4)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x8)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-
-#endif /* __MCF5475_GPIO_H__ */
diff --git a/BaS_gcc/include/MCF5475_GPT.h b/BaS_gcc/include/MCF5475_GPT.h
deleted file mode 100644
index f9fbc98..0000000
--- a/BaS_gcc/include/MCF5475_GPT.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPT_H__
-#define __MCF5475_GPT_H__
-
-
-/*********************************************************************
-*
-* General Purpose Timers (GPT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPT0_GMS (*(volatile uint32_t*)(&_MBAR[0x800]))
-#define MCF_GPT0_GCIR (*(volatile uint32_t*)(&_MBAR[0x804]))
-#define MCF_GPT0_GPWM (*(volatile uint32_t*)(&_MBAR[0x808]))
-#define MCF_GPT0_GSR (*(volatile uint32_t*)(&_MBAR[0x80C]))
-
-#define MCF_GPT1_GMS (*(volatile uint32_t*)(&_MBAR[0x810]))
-#define MCF_GPT1_GCIR (*(volatile uint32_t*)(&_MBAR[0x814]))
-#define MCF_GPT1_GPWM (*(volatile uint32_t*)(&_MBAR[0x818]))
-#define MCF_GPT1_GSR (*(volatile uint32_t*)(&_MBAR[0x81C]))
-
-#define MCF_GPT2_GMS (*(volatile uint32_t*)(&_MBAR[0x820]))
-#define MCF_GPT2_GCIR (*(volatile uint32_t*)(&_MBAR[0x824]))
-#define MCF_GPT2_GPWM (*(volatile uint32_t*)(&_MBAR[0x828]))
-#define MCF_GPT2_GSR (*(volatile uint32_t*)(&_MBAR[0x82C]))
-
-#define MCF_GPT3_GMS (*(volatile uint32_t*)(&_MBAR[0x830]))
-#define MCF_GPT3_GCIR (*(volatile uint32_t*)(&_MBAR[0x834]))
-#define MCF_GPT3_GPWM (*(volatile uint32_t*)(&_MBAR[0x838]))
-#define MCF_GPT3_GSR (*(volatile uint32_t*)(&_MBAR[0x83C]))
-
-#define MCF_GPT_GMS(x) (*(volatile uint32_t*)(&_MBAR[0x800 + ((x)*0x10)]))
-#define MCF_GPT_GCIR(x) (*(volatile uint32_t*)(&_MBAR[0x804 + ((x)*0x10)]))
-#define MCF_GPT_GPWM(x) (*(volatile uint32_t*)(&_MBAR[0x808 + ((x)*0x10)]))
-#define MCF_GPT_GSR(x) (*(volatile uint32_t*)(&_MBAR[0x80C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x7)<<0)
-#define MCF_GPT_GMS_TMS_DISABLE (0)
-#define MCF_GPT_GMS_TMS_INCAPT (0x1)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x2)
-#define MCF_GPT_GMS_TMS_PWM (0x3)
-#define MCF_GPT_GMS_TMS_GPIO (0x4)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x3)<<0x4)
-#define MCF_GPT_GMS_GPIO_INPUT (0)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x20)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x30)
-#define MCF_GPT_GMS_IEN (0x100)
-#define MCF_GPT_GMS_OD (0x200)
-#define MCF_GPT_GMS_SC (0x400)
-#define MCF_GPT_GMS_CE (0x1000)
-#define MCF_GPT_GMS_WDEN (0x8000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x3)<<0x10)
-#define MCF_GPT_GMS_ICT_ANY (0)
-#define MCF_GPT_GMS_ICT_RISE (0x10000)
-#define MCF_GPT_GMS_ICT_FALL (0x20000)
-#define MCF_GPT_GMS_ICT_PULSE (0x30000)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x3)<<0x14)
-#define MCF_GPT_GMS_OCT_FRCLOW (0)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x300000)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0xFFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x1)
-#define MCF_GPT_GPWM_PWMOP (0x100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x1)
-#define MCF_GPT_GSR_COMP (0x2)
-#define MCF_GPT_GSR_PWMP (0x4)
-#define MCF_GPT_GSR_TEXP (0x8)
-#define MCF_GPT_GSR_PIN (0x100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x7)<<0xC)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_GPT_H__ */
diff --git a/BaS_gcc/include/MCF5475_I2C.h b/BaS_gcc/include/MCF5475_I2C.h
deleted file mode 100644
index 1e8a85b..0000000
--- a/BaS_gcc/include/MCF5475_I2C.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_I2C_H__
-#define __MCF5475_I2C_H__
-
-
-/*********************************************************************
-*
-* I2C Module (I2C)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_I2C_I2ADR (*(volatile uint8_t *)(&_MBAR[0x8F00]))
-#define MCF_I2C_I2FDR (*(volatile uint8_t *)(&_MBAR[0x8F04]))
-#define MCF_I2C_I2CR (*(volatile uint8_t *)(&_MBAR[0x8F08]))
-#define MCF_I2C_I2SR (*(volatile uint8_t *)(&_MBAR[0x8F0C]))
-#define MCF_I2C_I2DR (*(volatile uint8_t *)(&_MBAR[0x8F10]))
-#define MCF_I2C_I2ICR (*(volatile uint8_t *)(&_MBAR[0x8F20]))
-
-
-
-/* Bit definitions and macros for MCF_I2C_I2ADR */
-#define MCF_I2C_I2ADR_ADR(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x4)
-#define MCF_I2C_I2CR_TXAK (0x8)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x1)
-#define MCF_I2C_I2SR_IIF (0x2)
-#define MCF_I2C_I2SR_SRW (0x4)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2DR */
-#define MCF_I2C_I2DR_DATA(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x1)
-#define MCF_I2C_I2ICR_RE (0x2)
-#define MCF_I2C_I2ICR_TE (0x4)
-#define MCF_I2C_I2ICR_BNBE (0x8)
-
-
-#endif /* __MCF5475_I2C_H__ */
diff --git a/BaS_gcc/include/MCF5475_INTC.h b/BaS_gcc/include/MCF5475_INTC.h
deleted file mode 100644
index 50e8074..0000000
--- a/BaS_gcc/include/MCF5475_INTC.h
+++ /dev/null
@@ -1,330 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_INTC_H__
-#define __MCF5475_INTC_H__
-
-
-/*********************************************************************
-*
-* Interrupt Controller (INTC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(volatile uint32_t*)(&_MBAR[0x700]))
-#define MCF_INTC_IPRL (*(volatile uint32_t*)(&_MBAR[0x704]))
-#define MCF_INTC_IMRH (*(volatile uint32_t*)(&_MBAR[0x708]))
-#define MCF_INTC_IMRL (*(volatile uint32_t*)(&_MBAR[0x70C]))
-#define MCF_INTC_INTFRCH (*(volatile uint32_t*)(&_MBAR[0x710]))
-#define MCF_INTC_INTFRCL (*(volatile uint32_t*)(&_MBAR[0x714]))
-#define MCF_INTC_IRLR (*(volatile uint8_t *)(&_MBAR[0x718]))
-#define MCF_INTC_IACKLPR (*(volatile uint8_t *)(&_MBAR[0x719]))
-#define MCF_INTC_ICR01 (*(volatile uint8_t *)(&_MBAR[0x741]))
-#define MCF_INTC_ICR02 (*(volatile uint8_t *)(&_MBAR[0x742]))
-#define MCF_INTC_ICR03 (*(volatile uint8_t *)(&_MBAR[0x743]))
-#define MCF_INTC_ICR04 (*(volatile uint8_t *)(&_MBAR[0x744]))
-#define MCF_INTC_ICR05 (*(volatile uint8_t *)(&_MBAR[0x745]))
-#define MCF_INTC_ICR06 (*(volatile uint8_t *)(&_MBAR[0x746]))
-#define MCF_INTC_ICR07 (*(volatile uint8_t *)(&_MBAR[0x747]))
-#define MCF_INTC_ICR08 (*(volatile uint8_t *)(&_MBAR[0x748]))
-#define MCF_INTC_ICR09 (*(volatile uint8_t *)(&_MBAR[0x749]))
-#define MCF_INTC_ICR10 (*(volatile uint8_t *)(&_MBAR[0x74A]))
-#define MCF_INTC_ICR11 (*(volatile uint8_t *)(&_MBAR[0x74B]))
-#define MCF_INTC_ICR12 (*(volatile uint8_t *)(&_MBAR[0x74C]))
-#define MCF_INTC_ICR13 (*(volatile uint8_t *)(&_MBAR[0x74D]))
-#define MCF_INTC_ICR14 (*(volatile uint8_t *)(&_MBAR[0x74E]))
-#define MCF_INTC_ICR15 (*(volatile uint8_t *)(&_MBAR[0x74F]))
-#define MCF_INTC_ICR16 (*(volatile uint8_t *)(&_MBAR[0x750]))
-#define MCF_INTC_ICR17 (*(volatile uint8_t *)(&_MBAR[0x751]))
-#define MCF_INTC_ICR18 (*(volatile uint8_t *)(&_MBAR[0x752]))
-#define MCF_INTC_ICR19 (*(volatile uint8_t *)(&_MBAR[0x753]))
-#define MCF_INTC_ICR20 (*(volatile uint8_t *)(&_MBAR[0x754]))
-#define MCF_INTC_ICR21 (*(volatile uint8_t *)(&_MBAR[0x755]))
-#define MCF_INTC_ICR22 (*(volatile uint8_t *)(&_MBAR[0x756]))
-#define MCF_INTC_ICR23 (*(volatile uint8_t *)(&_MBAR[0x757]))
-#define MCF_INTC_ICR24 (*(volatile uint8_t *)(&_MBAR[0x758]))
-#define MCF_INTC_ICR25 (*(volatile uint8_t *)(&_MBAR[0x759]))
-#define MCF_INTC_ICR26 (*(volatile uint8_t *)(&_MBAR[0x75A]))
-#define MCF_INTC_ICR27 (*(volatile uint8_t *)(&_MBAR[0x75B]))
-#define MCF_INTC_ICR28 (*(volatile uint8_t *)(&_MBAR[0x75C]))
-#define MCF_INTC_ICR29 (*(volatile uint8_t *)(&_MBAR[0x75D]))
-#define MCF_INTC_ICR30 (*(volatile uint8_t *)(&_MBAR[0x75E]))
-#define MCF_INTC_ICR31 (*(volatile uint8_t *)(&_MBAR[0x75F]))
-#define MCF_INTC_ICR32 (*(volatile uint8_t *)(&_MBAR[0x760]))
-#define MCF_INTC_ICR33 (*(volatile uint8_t *)(&_MBAR[0x761]))
-#define MCF_INTC_ICR34 (*(volatile uint8_t *)(&_MBAR[0x762]))
-#define MCF_INTC_ICR35 (*(volatile uint8_t *)(&_MBAR[0x763]))
-#define MCF_INTC_ICR36 (*(volatile uint8_t *)(&_MBAR[0x764]))
-#define MCF_INTC_ICR37 (*(volatile uint8_t *)(&_MBAR[0x765]))
-#define MCF_INTC_ICR38 (*(volatile uint8_t *)(&_MBAR[0x766]))
-#define MCF_INTC_ICR39 (*(volatile uint8_t *)(&_MBAR[0x767]))
-#define MCF_INTC_ICR40 (*(volatile uint8_t *)(&_MBAR[0x768]))
-#define MCF_INTC_ICR41 (*(volatile uint8_t *)(&_MBAR[0x769]))
-#define MCF_INTC_ICR42 (*(volatile uint8_t *)(&_MBAR[0x76A]))
-#define MCF_INTC_ICR43 (*(volatile uint8_t *)(&_MBAR[0x76B]))
-#define MCF_INTC_ICR44 (*(volatile uint8_t *)(&_MBAR[0x76C]))
-#define MCF_INTC_ICR45 (*(volatile uint8_t *)(&_MBAR[0x76D]))
-#define MCF_INTC_ICR46 (*(volatile uint8_t *)(&_MBAR[0x76E]))
-#define MCF_INTC_ICR47 (*(volatile uint8_t *)(&_MBAR[0x76F]))
-#define MCF_INTC_ICR48 (*(volatile uint8_t *)(&_MBAR[0x770]))
-#define MCF_INTC_ICR49 (*(volatile uint8_t *)(&_MBAR[0x771]))
-#define MCF_INTC_ICR50 (*(volatile uint8_t *)(&_MBAR[0x772]))
-#define MCF_INTC_ICR51 (*(volatile uint8_t *)(&_MBAR[0x773]))
-#define MCF_INTC_ICR52 (*(volatile uint8_t *)(&_MBAR[0x774]))
-#define MCF_INTC_ICR53 (*(volatile uint8_t *)(&_MBAR[0x775]))
-#define MCF_INTC_ICR54 (*(volatile uint8_t *)(&_MBAR[0x776]))
-#define MCF_INTC_ICR55 (*(volatile uint8_t *)(&_MBAR[0x777]))
-#define MCF_INTC_ICR56 (*(volatile uint8_t *)(&_MBAR[0x778]))
-#define MCF_INTC_ICR57 (*(volatile uint8_t *)(&_MBAR[0x779]))
-#define MCF_INTC_ICR58 (*(volatile uint8_t *)(&_MBAR[0x77A]))
-#define MCF_INTC_ICR59 (*(volatile uint8_t *)(&_MBAR[0x77B]))
-#define MCF_INTC_ICR60 (*(volatile uint8_t *)(&_MBAR[0x77C]))
-#define MCF_INTC_ICR61 (*(volatile uint8_t *)(&_MBAR[0x77D]))
-#define MCF_INTC_ICR62 (*(volatile uint8_t *)(&_MBAR[0x77E]))
-#define MCF_INTC_ICR63 (*(volatile uint8_t *)(&_MBAR[0x77F]))
-#define MCF_INTC_SWIACK (*(volatile uint8_t *)(&_MBAR[0x7E0]))
-#define MCF_INTC_L1IACK (*(volatile uint8_t *)(&_MBAR[0x7E4]))
-#define MCF_INTC_L2IACK (*(volatile uint8_t *)(&_MBAR[0x7E8]))
-#define MCF_INTC_L3IACK (*(volatile uint8_t *)(&_MBAR[0x7EC]))
-#define MCF_INTC_L4IACK (*(volatile uint8_t *)(&_MBAR[0x7F0]))
-#define MCF_INTC_L5IACK (*(volatile uint8_t *)(&_MBAR[0x7F4]))
-#define MCF_INTC_L6IACK (*(volatile uint8_t *)(&_MBAR[0x7F8]))
-#define MCF_INTC_L7IACK (*(volatile uint8_t *)(&_MBAR[0x7FC]))
-#define MCF_INTC_ICR(x) (*(volatile uint8_t *)(&_MBAR[0x741 + ((x-1)*0x1)]))
-#define MCF_INTC_LIACK(x) (*(volatile uint8_t *)(&_MBAR[0x7E4 + ((x-1)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x1)
-#define MCF_INTC_IPRH_INT33 (0x2)
-#define MCF_INTC_IPRH_INT34 (0x4)
-#define MCF_INTC_IPRH_INT35 (0x8)
-#define MCF_INTC_IPRH_INT36 (0x10)
-#define MCF_INTC_IPRH_INT37 (0x20)
-#define MCF_INTC_IPRH_INT38 (0x40)
-#define MCF_INTC_IPRH_INT39 (0x80)
-#define MCF_INTC_IPRH_INT40 (0x100)
-#define MCF_INTC_IPRH_INT41 (0x200)
-#define MCF_INTC_IPRH_INT42 (0x400)
-#define MCF_INTC_IPRH_INT43 (0x800)
-#define MCF_INTC_IPRH_INT44 (0x1000)
-#define MCF_INTC_IPRH_INT45 (0x2000)
-#define MCF_INTC_IPRH_INT46 (0x4000)
-#define MCF_INTC_IPRH_INT47 (0x8000)
-#define MCF_INTC_IPRH_INT48 (0x10000)
-#define MCF_INTC_IPRH_INT49 (0x20000)
-#define MCF_INTC_IPRH_INT50 (0x40000)
-#define MCF_INTC_IPRH_INT51 (0x80000)
-#define MCF_INTC_IPRH_INT52 (0x100000)
-#define MCF_INTC_IPRH_INT53 (0x200000)
-#define MCF_INTC_IPRH_INT54 (0x400000)
-#define MCF_INTC_IPRH_INT55 (0x800000)
-#define MCF_INTC_IPRH_INT56 (0x1000000)
-#define MCF_INTC_IPRH_INT57 (0x2000000)
-#define MCF_INTC_IPRH_INT58 (0x4000000)
-#define MCF_INTC_IPRH_INT59 (0x8000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x2)
-#define MCF_INTC_IPRL_INT2 (0x4)
-#define MCF_INTC_IPRL_INT3 (0x8)
-#define MCF_INTC_IPRL_INT4 (0x10)
-#define MCF_INTC_IPRL_INT5 (0x20)
-#define MCF_INTC_IPRL_INT6 (0x40)
-#define MCF_INTC_IPRL_INT7 (0x80)
-#define MCF_INTC_IPRL_INT8 (0x100)
-#define MCF_INTC_IPRL_INT9 (0x200)
-#define MCF_INTC_IPRL_INT10 (0x400)
-#define MCF_INTC_IPRL_INT11 (0x800)
-#define MCF_INTC_IPRL_INT12 (0x1000)
-#define MCF_INTC_IPRL_INT13 (0x2000)
-#define MCF_INTC_IPRL_INT14 (0x4000)
-#define MCF_INTC_IPRL_INT15 (0x8000)
-#define MCF_INTC_IPRL_INT16 (0x10000)
-#define MCF_INTC_IPRL_INT17 (0x20000)
-#define MCF_INTC_IPRL_INT18 (0x40000)
-#define MCF_INTC_IPRL_INT19 (0x80000)
-#define MCF_INTC_IPRL_INT20 (0x100000)
-#define MCF_INTC_IPRL_INT21 (0x200000)
-#define MCF_INTC_IPRL_INT22 (0x400000)
-#define MCF_INTC_IPRL_INT23 (0x800000)
-#define MCF_INTC_IPRL_INT24 (0x1000000)
-#define MCF_INTC_IPRL_INT25 (0x2000000)
-#define MCF_INTC_IPRL_INT26 (0x4000000)
-#define MCF_INTC_IPRL_INT27 (0x8000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x1)
-#define MCF_INTC_IMRH_INT_MASK33 (0x2)
-#define MCF_INTC_IMRH_INT_MASK34 (0x4)
-#define MCF_INTC_IMRH_INT_MASK35 (0x8)
-#define MCF_INTC_IMRH_INT_MASK36 (0x10)
-#define MCF_INTC_IMRH_INT_MASK37 (0x20)
-#define MCF_INTC_IMRH_INT_MASK38 (0x40)
-#define MCF_INTC_IMRH_INT_MASK39 (0x80)
-#define MCF_INTC_IMRH_INT_MASK40 (0x100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x1000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x2000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x4000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x8000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x10000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x20000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x40000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x80000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x1)
-#define MCF_INTC_IMRL_INT_MASK1 (0x2)
-#define MCF_INTC_IMRL_INT_MASK2 (0x4)
-#define MCF_INTC_IMRL_INT_MASK3 (0x8)
-#define MCF_INTC_IMRL_INT_MASK4 (0x10)
-#define MCF_INTC_IMRL_INT_MASK5 (0x20)
-#define MCF_INTC_IMRL_INT_MASK6 (0x40)
-#define MCF_INTC_IMRL_INT_MASK7 (0x80)
-#define MCF_INTC_IMRL_INT_MASK8 (0x100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x1000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x2000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x4000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x8000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x10000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x20000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x40000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x80000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x1)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x2)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x4)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x8)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x10)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x20)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x40)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x80)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x2)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x4)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x8)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x10)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x20)
-#define MCF_INTC_INTFRCL_INTFRC6 (0x40)
-#define MCF_INTC_INTFRCL_INTFRC7 (0x80)
-#define MCF_INTC_INTFRCL_INTFRC8 (0x100)
-#define MCF_INTC_INTFRCL_INTFRC9 (0x200)
-#define MCF_INTC_INTFRCL_INTFRC10 (0x400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
-#define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
-
-/* Bit definitions and macros for MCF_INTC_ICR */
-#define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
-#define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
-
-/* Bit definitions and macros for MCF_INTC_SWIACK */
-#define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_INTC_LIACK */
-#define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-
-#endif /* __MCF5475_INTC_H__ */
diff --git a/BaS_gcc/include/MCF5475_MMU.h b/BaS_gcc/include/MCF5475_MMU.h
deleted file mode 100644
index 942e62e..0000000
--- a/BaS_gcc/include/MCF5475_MMU.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_MMU_H__
-#define __MCF5475_MMU_H__
-
-
-/*********************************************************************
-*
-* Memory Management Unit (MMU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-
-/* note the uint32_t_a - this is to avoid gcc warnings about pointer aliasing */
-#define MCF_MMU_MMUCR (*(volatile uint32_t_a*)(&_MMUBAR[0]))
-#define MCF_MMU_MMUOR (*(volatile uint32_t_a*)(&_MMUBAR[0x4]))
-#define MCF_MMU_MMUSR (*(volatile uint32_t_a*)(&_MMUBAR[0x8]))
-#define MCF_MMU_MMUAR (*(volatile uint32_t_a*)(&_MMUBAR[0x10]))
-#define MCF_MMU_MMUTR (*(volatile uint32_t_a*)(&_MMUBAR[0x14]))
-#define MCF_MMU_MMUDR (*(volatile uint32_t_a*)(&_MMUBAR[0x18]))
-
-
-/* Bit definitions and macros for MCF_MMU_MMUCR */
-#define MCF_MMU_MMUCR_EN (0x1)
-#define MCF_MMU_MMUCR_ASM (0x2)
-
-/* Bit definitions and macros for MCF_MMU_MMUOR */
-#define MCF_MMU_MMUOR_UAA (0x1)
-#define MCF_MMU_MMUOR_ACC (0x2)
-#define MCF_MMU_MMUOR_RW (0x4)
-#define MCF_MMU_MMUOR_ADR (0x8)
-#define MCF_MMU_MMUOR_ITLB (0x10)
-#define MCF_MMU_MMUOR_CAS (0x20)
-#define MCF_MMU_MMUOR_CNL (0x40)
-#define MCF_MMU_MMUOR_CA (0x80)
-#define MCF_MMU_MMUOR_STLB (0x100)
-#define MCF_MMU_MMUOR_AA(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_MMU_MMUSR */
-#define MCF_MMU_MMUSR_HIT (0x2)
-#define MCF_MMU_MMUSR_WF (0x8)
-#define MCF_MMU_MMUSR_RF (0x10)
-#define MCF_MMU_MMUSR_SPF (0x20)
-
-/* Bit definitions and macros for MCF_MMU_MMUAR */
-#define MCF_MMU_MMUAR_FA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_MMU_MMUTR */
-#define MCF_MMU_MMUTR_V (0x1)
-#define MCF_MMU_MMUTR_SG (0x2)
-#define MCF_MMU_MMUTR_ID(x) (((x) & 0xFF) << 0x2)
-#define MCF_MMU_MMUTR_VA(x) (((x)&0x3FFFFF)<<0xA)
-
-/* Bit definitions and macros for MCF_MMU_MMUDR */
-#define MCF_MMU_MMUDR_LK (0x2)
-#define MCF_MMU_MMUDR_X (0x4)
-#define MCF_MMU_MMUDR_W (0x8)
-#define MCF_MMU_MMUDR_R (0x10)
-#define MCF_MMU_MMUDR_SP (0x20)
-#define MCF_MMU_MMUDR_CM(x) (((x) & 0x3) << 0x6)
-#define MCF_MMU_MMUDR_SZ(x) (((x) & 0x3) << 0x8)
-#define MCF_MMU_MMUDR_PA(x) (((x) & 0x3FFFFF) << 0xA)
-
-
-#endif /* __MCF5475_MMU_H__ */
diff --git a/BaS_gcc/include/MCF5475_PAD.h b/BaS_gcc/include/MCF5475_PAD.h
deleted file mode 100644
index 1d87e2e..0000000
--- a/BaS_gcc/include/MCF5475_PAD.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PAD_H__
-#define __MCF5475_PAD_H__
-
-
-/*********************************************************************
-*
-* Common GPIO
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PAD_PAR_FBCTL (*(volatile uint16_t*)(&_MBAR[0xA40]))
-#define MCF_PAD_PAR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA42]))
-#define MCF_PAD_PAR_DMA (*(volatile uint8_t *)(&_MBAR[0xA43]))
-#define MCF_PAD_PAR_FECI2CIRQ (*(volatile uint16_t*)(&_MBAR[0xA44]))
-#define MCF_PAD_PAR_PCIBG (*(volatile uint16_t*)(&_MBAR[0xA48]))
-#define MCF_PAD_PAR_PCIBR (*(volatile uint16_t*)(&_MBAR[0xA4A]))
-#define MCF_PAD_PAR_PSC3 (*(volatile uint8_t *)(&_MBAR[0xA4C]))
-#define MCF_PAD_PAR_PSC2 (*(volatile uint8_t *)(&_MBAR[0xA4D]))
-#define MCF_PAD_PAR_PSC1 (*(volatile uint8_t *)(&_MBAR[0xA4E]))
-#define MCF_PAD_PAR_PSC0 (*(volatile uint8_t *)(&_MBAR[0xA4F]))
-#define MCF_PAD_PAR_DSPI (*(volatile uint16_t*)(&_MBAR[0xA50]))
-#define MCF_PAD_PAR_TIMER (*(volatile uint8_t *)(&_MBAR[0xA52]))
-
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCTL */
-#define MCF_PAD_PAR_FBCTL_PAR_ALE(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_TBST (0x2)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_ALE (0x3)
-#define MCF_PAD_PAR_FBCTL_PAR_TA (0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_TBST (0x20)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_RW (0x30)
-#define MCF_PAD_PAR_FBCTL_PAR_OE (0x40)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE0 (0x100)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE1 (0x400)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE3 (0x4000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCS */
-#define MCF_PAD_PAR_FBCS_PAR_CS1 (0x2)
-#define MCF_PAD_PAR_FBCS_PAR_CS2 (0x4)
-#define MCF_PAD_PAR_FBCS_PAR_CS3 (0x8)
-#define MCF_PAD_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_PAD_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DMA */
-#define MCF_PAD_PAR_DMA_PAR_DREQ0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_TIN0 (0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_DREQ0 (0x3)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_IRQ1 (0x4)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_TIN1 (0x8)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_DREQ1 (0xC)
-#define MCF_PAD_PAR_DMA_PAR_DACK0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_TOUT0 (0x20)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_DACK0 (0x30)
-#define MCF_PAD_PAR_DMA_PAR_DACK1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_TOUT1 (0x80)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_DACK1 (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FECI2CIRQ */
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5 (0x1)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 (0x2)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SCL (0x4)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SDA (0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x80)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC (0xC0)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x200)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO (0x300)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII (0x400)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E17 (0x800)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBG */
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_TOUT0 (0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 (0x3)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_TOUT1 (0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 (0xC)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_TOUT2 (0x20)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 (0x30)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_TOUT3 (0x80)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 (0xC0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST (0x200)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBR */
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_TIN0 (0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 (0x3)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_TIN1 (0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 (0xC)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_TIN2 (0x20)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 (0x30)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_TIN3 (0x80)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 (0xC0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 (0x200)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC3 */
-#define MCF_PAD_PAR_PSC3_PAR_TXD3 (0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RXD3 (0x8)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC2 */
-#define MCF_PAD_PAR_PSC2_PAR_TXD2 (0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RXD2 (0x8)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_RTS (0x30)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC1 */
-#define MCF_PAD_PAR_PSC1_PAR_TXD1 (0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RXD1 (0x8)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_RTS (0x30)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC0 */
-#define MCF_PAD_PAR_PSC0_PAR_TXD0 (0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RXD0 (0x8)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_RTS (0x30)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DSPI */
-#define MCF_PAD_PAR_DSPI_PAR_SOUT(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_TXD (0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT (0x3)
-#define MCF_PAD_PAR_DSPI_PAR_SIN(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_RXD (0x8)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_SIN (0xC)
-#define MCF_PAD_PAR_DSPI_PAR_SCK(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_BCLK (0x10)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_CTS (0x20)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_SCK (0x30)
-#define MCF_PAD_PAR_DSPI_PAR_CS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_FSYNC (0x40)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_RTS (0x80)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0 (0xC0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_TOUT2 (0x200)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2 (0x300)
-#define MCF_PAD_PAR_DSPI_PAR_CS3(x) (((x)&0x3)<<0xA)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_TOUT3 (0x800)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3 (0xC00)
-#define MCF_PAD_PAR_DSPI_PAR_CS5 (0x1000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_TIMER */
-#define MCF_PAD_PAR_TIMER_PAR_TOUT2 (0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2(x) (((x)&0x3)<<0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2 (0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_TIN2 (0x6)
-#define MCF_PAD_PAR_TIMER_PAR_TOUT3 (0x8)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3 (0x20)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_TIN3 (0x30)
-
-
-#endif /* __MCF5475_PAD_H__ */
diff --git a/BaS_gcc/include/MCF5475_PCI.h b/BaS_gcc/include/MCF5475_PCI.h
deleted file mode 100644
index 3eb3341..0000000
--- a/BaS_gcc/include/MCF5475_PCI.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCI_H__
-#define __MCF5475_PCI_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Controller (PCI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCI_PCIIDR (*(volatile uint32_t*)(&_MBAR[0xB00]))
-#define MCF_PCI_PCISCR (*(volatile uint32_t*)(&_MBAR[0xB04]))
-#define MCF_PCI_PCICCRIR (*(volatile uint32_t*)(&_MBAR[0xB08]))
-#define MCF_PCI_PCICR1 (*(volatile uint32_t*)(&_MBAR[0xB0C]))
-#define MCF_PCI_PCIBAR0 (*(volatile uint32_t*)(&_MBAR[0xB10]))
-#define MCF_PCI_PCIBAR1 (*(volatile uint32_t*)(&_MBAR[0xB14]))
-#define MCF_PCI_PCICCPR (*(volatile uint32_t*)(&_MBAR[0xB28]))
-#define MCF_PCI_PCISID (*(volatile uint32_t*)(&_MBAR[0xB2C]))
-#define MCF_PCI_PCICR2 (*(volatile uint32_t*)(&_MBAR[0xB3C]))
-#define MCF_PCI_PCIGSCR (*(volatile uint32_t*)(&_MBAR[0xB60]))
-#define MCF_PCI_PCITBATR0 (*(volatile uint32_t*)(&_MBAR[0xB64]))
-#define MCF_PCI_PCITBATR1 (*(volatile uint32_t*)(&_MBAR[0xB68]))
-#define MCF_PCI_PCITCR (*(volatile uint32_t*)(&_MBAR[0xB6C]))
-#define MCF_PCI_PCIIW0BTAR (*(volatile uint32_t*)(&_MBAR[0xB70]))
-#define MCF_PCI_PCIIW1BTAR (*(volatile uint32_t*)(&_MBAR[0xB74]))
-#define MCF_PCI_PCIIW2BTAR (*(volatile uint32_t*)(&_MBAR[0xB78]))
-#define MCF_PCI_PCIIWCR (*(volatile uint32_t*)(&_MBAR[0xB80]))
-#define MCF_PCI_PCIICR (*(volatile uint32_t*)(&_MBAR[0xB84]))
-#define MCF_PCI_PCIISR (*(volatile uint32_t*)(&_MBAR[0xB88]))
-#define MCF_PCI_PCICAR (*(volatile uint32_t*)(&_MBAR[0xBF8]))
-#define MCF_PCI_PCITPSR (*(volatile uint32_t*)(&_MBAR[0x8400]))
-#define MCF_PCI_PCITSAR (*(volatile uint32_t*)(&_MBAR[0x8404]))
-#define MCF_PCI_PCITTCR (*(volatile uint32_t*)(&_MBAR[0x8408]))
-#define MCF_PCI_PCITER (*(volatile uint32_t*)(&_MBAR[0x840C]))
-#define MCF_PCI_PCITNAR (*(volatile uint32_t*)(&_MBAR[0x8410]))
-#define MCF_PCI_PCITLWR (*(volatile uint32_t*)(&_MBAR[0x8414]))
-#define MCF_PCI_PCITDCR (*(volatile uint32_t*)(&_MBAR[0x8418]))
-#define MCF_PCI_PCITSR (*(volatile uint32_t*)(&_MBAR[0x841C]))
-#define MCF_PCI_PCITFDR (*(volatile uint32_t*)(&_MBAR[0x8440]))
-#define MCF_PCI_PCITFSR (*(volatile uint32_t*)(&_MBAR[0x8444]))
-#define MCF_PCI_PCITFCR (*(volatile uint32_t*)(&_MBAR[0x8448]))
-#define MCF_PCI_PCITFAR (*(volatile uint32_t*)(&_MBAR[0x844C]))
-#define MCF_PCI_PCITFRPR (*(volatile uint32_t*)(&_MBAR[0x8450]))
-#define MCF_PCI_PCITFWPR (*(volatile uint32_t*)(&_MBAR[0x8454]))
-#define MCF_PCI_PCIRPSR (*(volatile uint32_t*)(&_MBAR[0x8480]))
-#define MCF_PCI_PCIRSAR (*(volatile uint32_t*)(&_MBAR[0x8484]))
-#define MCF_PCI_PCIRTCR (*(volatile uint32_t*)(&_MBAR[0x8488]))
-#define MCF_PCI_PCIRER (*(volatile uint32_t*)(&_MBAR[0x848C]))
-#define MCF_PCI_PCIRNAR (*(volatile uint32_t*)(&_MBAR[0x8490]))
-#define MCF_PCI_PCIRDCR (*(volatile uint32_t*)(&_MBAR[0x8498]))
-#define MCF_PCI_PCIRSR (*(volatile uint32_t*)(&_MBAR[0x849C]))
-#define MCF_PCI_PCIRFDR (*(volatile uint32_t*)(&_MBAR[0x84C0]))
-#define MCF_PCI_PCIRFSR (*(volatile uint32_t*)(&_MBAR[0x84C4]))
-#define MCF_PCI_PCIRFCR (*(volatile uint32_t*)(&_MBAR[0x84C8]))
-#define MCF_PCI_PCIRFAR (*(volatile uint32_t*)(&_MBAR[0x84CC]))
-#define MCF_PCI_PCIRFRPR (*(volatile uint32_t*)(&_MBAR[0x84D0]))
-#define MCF_PCI_PCIRFWPR (*(volatile uint32_t*)(&_MBAR[0x84D4]))
-
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_IO (0x1)
-#define MCF_PCI_PCISCR_M (0x2)
-#define MCF_PCI_PCISCR_B (0x4)
-#define MCF_PCI_PCISCR_SP (0x8)
-#define MCF_PCI_PCISCR_MW (0x10)
-#define MCF_PCI_PCISCR_V (0x20)
-#define MCF_PCI_PCISCR_PER (0x40)
-#define MCF_PCI_PCISCR_ST (0x80)
-#define MCF_PCI_PCISCR_S (0x100)
-#define MCF_PCI_PCISCR_F (0x200)
-#define MCF_PCI_PCISCR_C (0x100000)
-#define MCF_PCI_PCISCR_66M (0x200000)
-#define MCF_PCI_PCISCR_R (0x400000)
-#define MCF_PCI_PCISCR_FC (0x800000)
-#define MCF_PCI_PCISCR_DP (0x1000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCISCR_TS (0x8000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVISIONID(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0xFFFFFF)<<0x8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IOM (0x1)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR0_PREF (0x8)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IOM (0x1)
-#define MCF_PCI_PCIBAR1_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR1_PREF (0x8)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCICCPR */
-#define MCF_PCI_PCICCPR_PCICCP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCISID */
-#define MCF_PCI_PCISID_VENDORID(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x1)
-#define MCF_PCI_PCIGSCR_SEE (0x1000)
-#define MCF_PCI_PCIGSCR_PEE (0x2000)
-#define MCF_PCI_PCIGSCR_CLKINRESERVED(x) (((x)&0x7)<<0x10)
-#define MCF_PCI_PCIGSCR_XLB2CLKIN(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x1)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x1)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x10000)
-#define MCF_PCI_PCITCR_LD (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2_E (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_PRC(x) (((x)&0x3)<<0x9)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IOM (0x800)
-#define MCF_PCI_PCIIWCR_WINCTRL1_E (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_PRC(x) (((x)&0x3)<<0x11)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IOM (0x80000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_E (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_PRC(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IOM (0x8000000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x900)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x30000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x50000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x90000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x3000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x5000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x9000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x1000000)
-#define MCF_PCI_PCIICR_IAE (0x2000000)
-#define MCF_PCI_PCIICR_REE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x1000000)
-#define MCF_PCI_PCIISR_IA (0x2000000)
-#define MCF_PCI_PCIISR_RE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x3F)<<0x2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x1F)<<0xB)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSAR */
-#define MCF_PCI_PCITSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x1)
-#define MCF_PCI_PCITTCR_W (0x10)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x10000)
-#define MCF_PCI_PCITER_IAE (0x20000)
-#define MCF_PCI_PCITER_TAE (0x40000)
-#define MCF_PCI_PCITER_RE (0x80000)
-#define MCF_PCI_PCITER_SE (0x100000)
-#define MCF_PCI_PCITER_FEE (0x200000)
-#define MCF_PCI_PCITER_ME (0x1000000)
-#define MCF_PCI_PCITER_BE (0x8000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITNAR */
-#define MCF_PCI_PCITNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITLWR */
-#define MCF_PCI_PCITLWR_LASTWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x10000)
-#define MCF_PCI_PCITSR_TA (0x20000)
-#define MCF_PCI_PCITSR_RE (0x40000)
-#define MCF_PCI_PCITSR_SE (0x80000)
-#define MCF_PCI_PCITSR_FE (0x100000)
-#define MCF_PCI_PCITSR_BE1 (0x200000)
-#define MCF_PCI_PCITSR_BE2 (0x400000)
-#define MCF_PCI_PCITSR_BE3 (0x800000)
-#define MCF_PCI_PCITSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFDR */
-#define MCF_PCI_PCITFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMPTY (0x10000)
-#define MCF_PCI_PCITFSR_ALARM (0x20000)
-#define MCF_PCI_PCITFSR_FULL (0x40000)
-#define MCF_PCI_PCITFSR_FR (0x80000)
-#define MCF_PCI_PCITFSR_OF (0x100000)
-#define MCF_PCI_PCITFSR_UF (0x200000)
-#define MCF_PCI_PCITFSR_RXW (0x400000)
-#define MCF_PCI_PCITFSR_FAE (0x800000)
-#define MCF_PCI_PCITFSR_TXW (0x40000000)
-#define MCF_PCI_PCITFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCITFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCITFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCITFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCITFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCITFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCITFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSAR */
-#define MCF_PCI_PCIRSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x1)
-#define MCF_PCI_PCIRTCR_W (0x10)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCIRTCR_FB (0x1000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x10000)
-#define MCF_PCI_PCIRER_IAE (0x20000)
-#define MCF_PCI_PCIRER_TAE (0x40000)
-#define MCF_PCI_PCIRER_RE (0x80000)
-#define MCF_PCI_PCIRER_SE (0x100000)
-#define MCF_PCI_PCIRER_FEE (0x200000)
-#define MCF_PCI_PCIRER_ME (0x1000000)
-#define MCF_PCI_PCIRER_BE (0x8000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRNAR */
-#define MCF_PCI_PCIRNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x10000)
-#define MCF_PCI_PCIRSR_TA (0x20000)
-#define MCF_PCI_PCIRSR_RE (0x40000)
-#define MCF_PCI_PCIRSR_SE (0x80000)
-#define MCF_PCI_PCIRSR_FE (0x100000)
-#define MCF_PCI_PCIRSR_BE1 (0x200000)
-#define MCF_PCI_PCIRSR_BE2 (0x400000)
-#define MCF_PCI_PCIRSR_BE3 (0x800000)
-#define MCF_PCI_PCIRSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFDR */
-#define MCF_PCI_PCIRFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMPTY (0x10000)
-#define MCF_PCI_PCIRFSR_ALARM (0x20000)
-#define MCF_PCI_PCIRFSR_FULL (0x40000)
-#define MCF_PCI_PCIRFSR_FR (0x80000)
-#define MCF_PCI_PCIRFSR_OF (0x100000)
-#define MCF_PCI_PCIRFSR_UF (0x200000)
-#define MCF_PCI_PCIRFSR_RXW (0x400000)
-#define MCF_PCI_PCIRFSR_FAE (0x800000)
-#define MCF_PCI_PCIRFSR_TXW (0x40000000)
-#define MCF_PCI_PCIRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCIRFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCIRFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCIRFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCIRFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCIRFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIRFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-
-#endif /* __MCF5475_PCI_H__ */
diff --git a/BaS_gcc/include/MCF5475_PCIARB.h b/BaS_gcc/include/MCF5475_PCIARB.h
deleted file mode 100644
index 9e8c05b..0000000
--- a/BaS_gcc/include/MCF5475_PCIARB.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCIARB_H__
-#define __MCF5475_PCIARB_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Arbiter Module (PCIARB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(volatile uint32_t*)(&_MBAR[0xC00]))
-#define MCF_PCIARB_PASR (*(volatile uint32_t*)(&_MBAR[0xC04]))
-
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x1)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x1F)<<0x1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x10000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x1F)<<0x11)
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x10000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x1F)<<0x11)
-
-
-#endif /* __MCF5475_PCIARB_H__ */
diff --git a/BaS_gcc/include/MCF5475_PSC.h b/BaS_gcc/include/MCF5475_PSC.h
deleted file mode 100644
index ffa9f3e..0000000
--- a/BaS_gcc/include/MCF5475_PSC.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PSC_H__
-#define __MCF5475_PSC_H__
-
-
-/*********************************************************************
-*
-* Programmable Serial Controller (PSC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PSC0_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8608]))
-#define MCF_PSC0_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8618]))
-#define MCF_PSC0_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x861C]))
-#define MCF_PSC0_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8634]))
-#define MCF_PSC0_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8638]))
-#define MCF_PSC0_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x863C]))
-#define MCF_PSC0_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8640]))
-#define MCF_PSC0_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8644]))
-#define MCF_PSC0_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8648]))
-#define MCF_PSC0_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x864C]))
-#define MCF_PSC0_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8650]))
-#define MCF_PSC0_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8654]))
-#define MCF_PSC0_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8658]))
-#define MCF_PSC0_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x865C]))
-#define MCF_PSC0_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8660]))
-#define MCF_PSC0_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8664]))
-#define MCF_PSC0_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8668]))
-#define MCF_PSC0_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x866E]))
-#define MCF_PSC0_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8672]))
-#define MCF_PSC0_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8676]))
-#define MCF_PSC0_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x867A]))
-#define MCF_PSC0_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x867E]))
-#define MCF_PSC0_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8680]))
-#define MCF_PSC0_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8684]))
-#define MCF_PSC0_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8688]))
-#define MCF_PSC0_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x868E]))
-#define MCF_PSC0_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8692]))
-#define MCF_PSC0_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8696]))
-#define MCF_PSC0_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x869A]))
-#define MCF_PSC0_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x869E]))
-
-#define MCF_PSC1_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8708]))
-#define MCF_PSC1_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8718]))
-#define MCF_PSC1_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x871C]))
-#define MCF_PSC1_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8734]))
-#define MCF_PSC1_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8738]))
-#define MCF_PSC1_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x873C]))
-#define MCF_PSC1_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8740]))
-#define MCF_PSC1_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8744]))
-#define MCF_PSC1_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8748]))
-#define MCF_PSC1_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x874C]))
-#define MCF_PSC1_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8750]))
-#define MCF_PSC1_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8754]))
-#define MCF_PSC1_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8758]))
-#define MCF_PSC1_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x875C]))
-#define MCF_PSC1_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8760]))
-#define MCF_PSC1_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8764]))
-#define MCF_PSC1_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8768]))
-#define MCF_PSC1_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x876E]))
-#define MCF_PSC1_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8772]))
-#define MCF_PSC1_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8776]))
-#define MCF_PSC1_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x877A]))
-#define MCF_PSC1_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x877E]))
-#define MCF_PSC1_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8780]))
-#define MCF_PSC1_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8784]))
-#define MCF_PSC1_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8788]))
-#define MCF_PSC1_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x878E]))
-#define MCF_PSC1_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8792]))
-#define MCF_PSC1_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8796]))
-#define MCF_PSC1_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x879A]))
-#define MCF_PSC1_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x879E]))
-
-#define MCF_PSC2_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8808]))
-#define MCF_PSC2_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8818]))
-#define MCF_PSC2_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x881C]))
-#define MCF_PSC2_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8834]))
-#define MCF_PSC2_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8838]))
-#define MCF_PSC2_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x883C]))
-#define MCF_PSC2_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8840]))
-#define MCF_PSC2_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8844]))
-#define MCF_PSC2_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8848]))
-#define MCF_PSC2_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x884C]))
-#define MCF_PSC2_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8850]))
-#define MCF_PSC2_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8854]))
-#define MCF_PSC2_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8858]))
-#define MCF_PSC2_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x885C]))
-#define MCF_PSC2_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8860]))
-#define MCF_PSC2_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8864]))
-#define MCF_PSC2_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8868]))
-#define MCF_PSC2_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x886E]))
-#define MCF_PSC2_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8872]))
-#define MCF_PSC2_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8876]))
-#define MCF_PSC2_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x887A]))
-#define MCF_PSC2_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x887E]))
-#define MCF_PSC2_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8880]))
-#define MCF_PSC2_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8884]))
-#define MCF_PSC2_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8888]))
-#define MCF_PSC2_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x888E]))
-#define MCF_PSC2_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8892]))
-#define MCF_PSC2_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8896]))
-#define MCF_PSC2_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x889A]))
-#define MCF_PSC2_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x889E]))
-
-#define MCF_PSC3_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8908]))
-#define MCF_PSC3_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8918]))
-#define MCF_PSC3_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x891C]))
-#define MCF_PSC3_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8934]))
-#define MCF_PSC3_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8938]))
-#define MCF_PSC3_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x893C]))
-#define MCF_PSC3_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8940]))
-#define MCF_PSC3_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8944]))
-#define MCF_PSC3_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8948]))
-#define MCF_PSC3_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x894C]))
-#define MCF_PSC3_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8950]))
-#define MCF_PSC3_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8954]))
-#define MCF_PSC3_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8958]))
-#define MCF_PSC3_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x895C]))
-#define MCF_PSC3_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8960]))
-#define MCF_PSC3_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8964]))
-#define MCF_PSC3_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8968]))
-#define MCF_PSC3_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x896E]))
-#define MCF_PSC3_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8972]))
-#define MCF_PSC3_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8976]))
-#define MCF_PSC3_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x897A]))
-#define MCF_PSC3_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x897E]))
-#define MCF_PSC3_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8980]))
-#define MCF_PSC3_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8984]))
-#define MCF_PSC3_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8988]))
-#define MCF_PSC3_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x898E]))
-#define MCF_PSC3_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8992]))
-#define MCF_PSC3_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8996]))
-#define MCF_PSC3_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x899A]))
-#define MCF_PSC3_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x899E]))
-
-#define MCF_PSC_PSCMR(x) (*(volatile uint8_t *)(&_MBAR[0x8600 + ((x)*0x100)]))
-#define MCF_PSC_PSCCSR(x) (*(volatile uint8_t *)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCSR(x) (*(volatile uint16_t*)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCCR(x) (*(volatile uint8_t *)(&_MBAR[0x8608 + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCIPCR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCACR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCIMR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCISR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTUR(x) (*(volatile uint8_t *)(&_MBAR[0x8618 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTLR(x) (*(volatile uint8_t *)(&_MBAR[0x861C + ((x)*0x100)]))
-#define MCF_PSC_PSCIP(x) (*(volatile uint8_t *)(&_MBAR[0x8634 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPSET(x) (*(volatile uint8_t *)(&_MBAR[0x8638 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPRESET(x) (*(volatile uint8_t *)(&_MBAR[0x863C + ((x)*0x100)]))
-#define MCF_PSC_PSCSICR(x) (*(volatile uint8_t *)(&_MBAR[0x8640 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR1(x) (*(volatile uint8_t *)(&_MBAR[0x8644 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR2(x) (*(volatile uint8_t *)(&_MBAR[0x8648 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRSDR(x) (*(volatile uint8_t *)(&_MBAR[0x864C + ((x)*0x100)]))
-#define MCF_PSC_PSCIRMDR(x) (*(volatile uint8_t *)(&_MBAR[0x8650 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRFDR(x) (*(volatile uint8_t *)(&_MBAR[0x8654 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x8658 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x865C + ((x)*0x100)]))
-#define MCF_PSC_PSCRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8660 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8664 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8668 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFAR(x) (*(volatile uint16_t*)(&_MBAR[0x866E + ((x)*0x100)]))
-#define MCF_PSC_PSCRFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8672 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8676 + ((x)*0x100)]))
-#define MCF_PSC_PSCRLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x867A + ((x)*0x100)]))
-#define MCF_PSC_PSCRLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x867E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8680 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8684 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8688 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFAR(x) (*(volatile uint16_t*)(&_MBAR[0x868E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8692 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8696 + ((x)*0x100)]))
-#define MCF_PSC_PSCTLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x869A + ((x)*0x100)]))
-#define MCF_PSC_PSCTLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x869E + ((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_PSCMR */
-#define MCF_PSC_PSCMR_SB(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCMR_TXCTS (0x10)
-#define MCF_PSC_PSCMR_TXRTS (0x20)
-#define MCF_PSC_PSCMR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_PSC_PSCMR_CM_NORMAL (0)
-#define MCF_PSC_PSCMR_CM_ECHO (0x40)
-#define MCF_PSC_PSCMR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_PSCMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_1 (0x7)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_15 (0x8)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_2 (0xF)
-#define MCF_PSC_PSCMR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_PSCMR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_PSCMR_PM_NONE (0x10)
-#define MCF_PSC_PSCMR_PM_FORCE_HI (0xC)
-#define MCF_PSC_PSCMR_PM_FORCE_LO (0x8)
-#define MCF_PSC_PSCMR_PM_ODD (0x4)
-#define MCF_PSC_PSCMR_PM_EVEN (0)
-#define MCF_PSC_PSCMR_BC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCMR_BC_5 (0)
-#define MCF_PSC_PSCMR_BC_6 (0x1)
-#define MCF_PSC_PSCMR_BC_7 (0x2)
-#define MCF_PSC_PSCMR_BC_8 (0x3)
-#define MCF_PSC_PSCMR_PT (0x4)
-#define MCF_PSC_PSCMR_PM(x) (((x)&0x3)<<0x3)
-#define MCF_PSC_PSCMR_ERR (0x20)
-#define MCF_PSC_PSCMR_RXIRQ_FU (0x40)
-#define MCF_PSC_PSCMR_RXRTS (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCCSR */
-#define MCF_PSC_PSCCSR_TCSEL(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCCSR_RCSEL(x) (((x)&0xF)<<0x4)
-#define MCF_PSC_PSCCSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_PSCCSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_PSCCSR_TCSEL_CTM (0x0F)
-#define MCF_PSC_PSCCSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM (0xF0)
-
-/* Bit definitions and macros for MCF_PSC_PSCSR */
-#define MCF_PSC_PSCSR_ERR (0x40)
-#define MCF_PSC_PSCSR_CDE_DEOF (0x80)
-#define MCF_PSC_PSCSR_RXRDY (0x100)
-#define MCF_PSC_PSCSR_FU (0x200)
-#define MCF_PSC_PSCSR_TXRDY (0x400)
-#define MCF_PSC_PSCSR_TXEMP_URERR (0x800)
-#define MCF_PSC_PSCSR_OE (0x1000)
-#define MCF_PSC_PSCSR_PE_CRCERR (0x2000)
-#define MCF_PSC_PSCSR_FE_PHYERR (0x4000)
-#define MCF_PSC_PSCSR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCR */
-#define MCF_PSC_PSCCR_RXC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCCR_RX_ENABLED (0x1)
-#define MCF_PSC_PSCCR_RX_DISABLED (0x2)
-#define MCF_PSC_PSCCR_TXC(x) (((x)&0x3)<<0x2)
-#define MCF_PSC_PSCCR_TX_ENABLED (0x4)
-#define MCF_PSC_PSCCR_TX_DISABLED (0x8)
-#define MCF_PSC_PSCCR_MISC(x) (((x)&0x7)<<0x4)
-#define MCF_PSC_PSCCR_NONE (0)
-#define MCF_PSC_PSCCR_RESET_MR (0x10)
-#define MCF_PSC_PSCCR_RESET_RX (0x20)
-#define MCF_PSC_PSCCR_RESET_TX (0x30)
-#define MCF_PSC_PSCCR_RESET_ERROR (0x40)
-#define MCF_PSC_PSCCR_RESET_BKCHGINT (0x50)
-#define MCF_PSC_PSCCR_START_BREAK (0x60)
-#define MCF_PSC_PSCCR_STOP_BREAK (0x70)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_8BIT */
-#define MCF_PSC_PSCRB_8BIT_RB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCRB_8BIT_RB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCRB_8BIT_RB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCRB_8BIT_RB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_8BIT */
-#define MCF_PSC_PSCTB_8BIT_TB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCTB_8BIT_TB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCTB_8BIT_TB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCTB_8BIT_TB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_16BIT */
-#define MCF_PSC_PSCRB_16BIT_RB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRB_16BIT_RB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_16BIT */
-#define MCF_PSC_PSCTB_16BIT_TB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTB_16BIT_TB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_AC97 */
-#define MCF_PSC_PSCRB_AC97_SOF (0x800)
-#define MCF_PSC_PSCRB_AC97_RB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_AC97 */
-#define MCF_PSC_PSCTB_AC97_TB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCIPCR */
-#define MCF_PSC_PSCIPCR_RESERVED (0xC)
-#define MCF_PSC_PSCIPCR_CTS (0xD)
-#define MCF_PSC_PSCIPCR_D_CTS (0x1C)
-#define MCF_PSC_PSCIPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_PSCACR */
-#define MCF_PSC_PSCACR_IEC0 (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCIMR */
-#define MCF_PSC_PSCIMR_ERR (0x40)
-#define MCF_PSC_PSCIMR_DEOF (0x80)
-#define MCF_PSC_PSCIMR_TXRDY (0x100)
-#define MCF_PSC_PSCIMR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCIMR_DB (0x400)
-#define MCF_PSC_PSCIMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCISR */
-#define MCF_PSC_PSCISR_ERR (0x40)
-#define MCF_PSC_PSCISR_DEOF (0x80)
-#define MCF_PSC_PSCISR_TXRDY (0x100)
-#define MCF_PSC_PSCISR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCISR_DB (0x400)
-#define MCF_PSC_PSCISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTUR */
-#define MCF_PSC_PSCCTUR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTLR */
-#define MCF_PSC_PSCCTLR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIP */
-#define MCF_PSC_PSCIP_CTS (0x1)
-#define MCF_PSC_PSCIP_TGL (0x40)
-#define MCF_PSC_PSCIP_LPWR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPSET */
-#define MCF_PSC_PSCOPSET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPRESET */
-#define MCF_PSC_PSCOPRESET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCSICR */
-#define MCF_PSC_PSCSICR_SIM(x) (((x)&0x7)<<0)
-#define MCF_PSC_PSCSICR_SIM_UART (0)
-#define MCF_PSC_PSCSICR_SIM_MODEM8 (0x1)
-#define MCF_PSC_PSCSICR_SIM_MODEM16 (0x2)
-#define MCF_PSC_PSCSICR_SIM_AC97 (0x3)
-#define MCF_PSC_PSCSICR_SIM_SIR (0x4)
-#define MCF_PSC_PSCSICR_SIM_MIR (0x5)
-#define MCF_PSC_PSCSICR_SIM_FIR (0x6)
-#define MCF_PSC_PSCSICR_SHDIR (0x10)
-#define MCF_PSC_PSCSICR_DTS1 (0x20)
-#define MCF_PSC_PSCSICR_AWR (0x40)
-#define MCF_PSC_PSCSICR_ACRB (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR1 */
-#define MCF_PSC_PSCIRCR1_SPUL (0x1)
-#define MCF_PSC_PSCIRCR1_SIPEN (0x2)
-#define MCF_PSC_PSCIRCR1_FD (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR2 */
-#define MCF_PSC_PSCIRCR2_NXTEOF (0x1)
-#define MCF_PSC_PSCIRCR2_ABORT (0x2)
-#define MCF_PSC_PSCIRCR2_SIPREQ (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRSDR */
-#define MCF_PSC_PSCIRSDR_IRSTIM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRMDR */
-#define MCF_PSC_PSCIRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_PSCIRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRFDR */
-#define MCF_PSC_PSCIRFDR_F_FDIV(x) (((x)&0xF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCNT */
-#define MCF_PSC_PSCRFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCNT */
-#define MCF_PSC_PSCTFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFDR */
-#define MCF_PSC_PSCRFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFSR */
-#define MCF_PSC_PSCRFSR_EMT (0x1)
-#define MCF_PSC_PSCRFSR_ALARM (0x2)
-#define MCF_PSC_PSCRFSR_FU (0x4)
-#define MCF_PSC_PSCRFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCRFSR_OF (0x10)
-#define MCF_PSC_PSCRFSR_UF (0x20)
-#define MCF_PSC_PSCRFSR_RXW (0x40)
-#define MCF_PSC_PSCRFSR_FAE (0x80)
-#define MCF_PSC_PSCRFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCRFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCRFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCRFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCRFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCRFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCRFSR_TXW (0x4000)
-#define MCF_PSC_PSCRFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCR */
-#define MCF_PSC_PSCRFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCRFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCRFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCRFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCRFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCRFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCRFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFAR */
-#define MCF_PSC_PSCRFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFRP */
-#define MCF_PSC_PSCRFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFWP */
-#define MCF_PSC_PSCRFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLRFP */
-#define MCF_PSC_PSCRLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLWFP */
-#define MCF_PSC_PSCRLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFDR */
-#define MCF_PSC_PSCTFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFSR */
-#define MCF_PSC_PSCTFSR_EMT (0x1)
-#define MCF_PSC_PSCTFSR_ALARM (0x2)
-#define MCF_PSC_PSCTFSR_FU (0x4)
-#define MCF_PSC_PSCTFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCTFSR_OF (0x10)
-#define MCF_PSC_PSCTFSR_UF (0x20)
-#define MCF_PSC_PSCTFSR_RXW (0x40)
-#define MCF_PSC_PSCTFSR_FAE (0x80)
-#define MCF_PSC_PSCTFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCTFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCTFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCTFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCTFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCTFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCTFSR_TXW (0x4000)
-#define MCF_PSC_PSCTFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCR */
-#define MCF_PSC_PSCTFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCTFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCTFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCTFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCTFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCTFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCTFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCTFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCTFCR_TIMER (0x10000000)
-#define MCF_PSC_PSCTFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFAR */
-#define MCF_PSC_PSCTFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFRP */
-#define MCF_PSC_PSCTFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFWP */
-#define MCF_PSC_PSCTFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLRFP */
-#define MCF_PSC_PSCTLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLWFP */
-#define MCF_PSC_PSCTLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-
-#endif /* __MCF5475_PSC_H__ */
diff --git a/BaS_gcc/include/MCF5475_SDRAMC.h b/BaS_gcc/include/MCF5475_SDRAMC.h
deleted file mode 100644
index 6cdbd68..0000000
--- a/BaS_gcc/include/MCF5475_SDRAMC.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SDRAMC_H__
-#define __MCF5475_SDRAMC_H__
-
-
-/*********************************************************************
-*
-* Synchronous DRAM Controller (SDRAMC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(volatile uint32_t*)(&_MBAR[0x4]))
-#define MCF_SDRAMC_CS0CFG (*(volatile uint32_t*)(&_MBAR[0x20]))
-#define MCF_SDRAMC_CS1CFG (*(volatile uint32_t*)(&_MBAR[0x24]))
-#define MCF_SDRAMC_CS2CFG (*(volatile uint32_t*)(&_MBAR[0x28]))
-#define MCF_SDRAMC_CS3CFG (*(volatile uint32_t*)(&_MBAR[0x2C]))
-#define MCF_SDRAMC_SDMR (*(volatile uint32_t*)(&_MBAR[0x100]))
-#define MCF_SDRAMC_SDCR (*(volatile uint32_t*)(&_MBAR[0x104]))
-#define MCF_SDRAMC_SDCFG1 (*(volatile uint32_t*)(&_MBAR[0x108]))
-#define MCF_SDRAMC_SDCFG2 (*(volatile uint32_t*)(&_MBAR[0x10C]))
-#define MCF_SDRAMC_CSCFG(x) (*(volatile uint32_t*)(&_MBAR[0x20 + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x3)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x3)<<0x2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x3)<<0x4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x3)<<0x6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x3)<<0x8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x1)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x2)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x3)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSCFG */
-#define MCF_SDRAMC_CSCFG_CSSZ(x) (((x)&0x1F)<<0)
-#define MCF_SDRAMC_CSCFG_CSSZ_DISABLED (0)
-#define MCF_SDRAMC_CSCFG_CSSZ_1MBYTE (0x13)
-#define MCF_SDRAMC_CSCFG_CSSZ_2MBYTE (0x14)
-#define MCF_SDRAMC_CSCFG_CSSZ_4MBYTE (0x15)
-#define MCF_SDRAMC_CSCFG_CSSZ_8MBYTE (0x16)
-#define MCF_SDRAMC_CSCFG_CSSZ_16MBYTE (0x17)
-#define MCF_SDRAMC_CSCFG_CSSZ_32MBYTE (0x18)
-#define MCF_SDRAMC_CSCFG_CSSZ_64MBYTE (0x19)
-#define MCF_SDRAMC_CSCFG_CSSZ_128MBYTE (0x1A)
-#define MCF_SDRAMC_CSCFG_CSSZ_256MBYTE (0x1B)
-#define MCF_SDRAMC_CSCFG_CSSZ_512MBYTE (0x1C)
-#define MCF_SDRAMC_CSCFG_CSSZ_1GBYTE (0x1D)
-#define MCF_SDRAMC_CSCFG_CSSZ_2GBYTE (0x1E)
-#define MCF_SDRAMC_CSCFG_CSSZ_4GBYTE (0x1F)
-#define MCF_SDRAMC_CSCFG_CSBA(x) (((x)&0xFFF)<<0x14)
-#define MCF_SDRAMC_CSCFG_BA(x) ((x)&0xFFF00000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x10000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0xFFF)<<0x12)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x3)<<0x1E)
-#define MCF_SDRAMC_SDMR_BK_LMR (0)
-#define MCF_SDRAMC_SDMR_BK_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x2)
-#define MCF_SDRAMC_SDCR_IREF (0x4)
-#define MCF_SDRAMC_SDCR_BUFF (0x10)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x3F)<<0x10)
-#define MCF_SDRAMC_SDCR_DRIVE (0x400000)
-#define MCF_SDRAMC_SDCR_AP (0x800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x3)<<0x18)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x7)<<0x4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x7)<<0xC)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x7)<<0x10)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x7)<<0x18)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0xF)<<0x1C)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0xF)<<0x10)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0xF)<<0x18)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0xF)<<0x1C)
-
-
-#endif /* __MCF5475_SDRAMC_H__ */
diff --git a/BaS_gcc/include/MCF5475_SEC.h b/BaS_gcc/include/MCF5475_SEC.h
deleted file mode 100644
index 8deff0b..0000000
--- a/BaS_gcc/include/MCF5475_SEC.h
+++ /dev/null
@@ -1,398 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SEC_H__
-#define __MCF5475_SEC_H__
-
-
-/*********************************************************************
-*
-* Integrated Security Engine (SEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(volatile uint32_t*)(&_MBAR[0x21000]))
-#define MCF_SEC_EUACRL (*(volatile uint32_t*)(&_MBAR[0x21004]))
-#define MCF_SEC_SIMRH (*(volatile uint32_t*)(&_MBAR[0x21008]))
-#define MCF_SEC_SIMRL (*(volatile uint32_t*)(&_MBAR[0x2100C]))
-#define MCF_SEC_SISRH (*(volatile uint32_t*)(&_MBAR[0x21010]))
-#define MCF_SEC_SISRL (*(volatile uint32_t*)(&_MBAR[0x21014]))
-#define MCF_SEC_SICRH (*(volatile uint32_t*)(&_MBAR[0x21018]))
-#define MCF_SEC_SICRL (*(volatile uint32_t*)(&_MBAR[0x2101C]))
-#define MCF_SEC_SIDR (*(volatile uint32_t*)(&_MBAR[0x21020]))
-#define MCF_SEC_EUASRH (*(volatile uint32_t*)(&_MBAR[0x21028]))
-#define MCF_SEC_EUASRL (*(volatile uint32_t*)(&_MBAR[0x2102C]))
-#define MCF_SEC_SMCR (*(volatile uint32_t*)(&_MBAR[0x21030]))
-#define MCF_SEC_MEAR (*(volatile uint32_t*)(&_MBAR[0x21038]))
-#define MCF_SEC_CCCR0 (*(volatile uint32_t*)(&_MBAR[0x2200C]))
-#define MCF_SEC_CCPSRH0 (*(volatile uint32_t*)(&_MBAR[0x22010]))
-#define MCF_SEC_CCPSRL0 (*(volatile uint32_t*)(&_MBAR[0x22014]))
-#define MCF_SEC_CDPR0 (*(volatile uint32_t*)(&_MBAR[0x22044]))
-#define MCF_SEC_FR0 (*(volatile uint32_t*)(&_MBAR[0x2204C]))
-#define MCF_SEC_CCCR1 (*(volatile uint32_t*)(&_MBAR[0x2300C]))
-#define MCF_SEC_CCPSRH1 (*(volatile uint32_t*)(&_MBAR[0x23010]))
-#define MCF_SEC_CCPSRL1 (*(volatile uint32_t*)(&_MBAR[0x23014]))
-#define MCF_SEC_CDPR1 (*(volatile uint32_t*)(&_MBAR[0x23044]))
-#define MCF_SEC_FR1 (*(volatile uint32_t*)(&_MBAR[0x2304C]))
-#define MCF_SEC_AFRCR (*(volatile uint32_t*)(&_MBAR[0x28018]))
-#define MCF_SEC_AFSR (*(volatile uint32_t*)(&_MBAR[0x28028]))
-#define MCF_SEC_AFISR (*(volatile uint32_t*)(&_MBAR[0x28030]))
-#define MCF_SEC_AFIMR (*(volatile uint32_t*)(&_MBAR[0x28038]))
-#define MCF_SEC_DRCR (*(volatile uint32_t*)(&_MBAR[0x2A018]))
-#define MCF_SEC_DSR (*(volatile uint32_t*)(&_MBAR[0x2A028]))
-#define MCF_SEC_DISR (*(volatile uint32_t*)(&_MBAR[0x2A030]))
-#define MCF_SEC_DIMR (*(volatile uint32_t*)(&_MBAR[0x2A038]))
-#define MCF_SEC_MDRCR (*(volatile uint32_t*)(&_MBAR[0x2C018]))
-#define MCF_SEC_MDSR (*(volatile uint32_t*)(&_MBAR[0x2C028]))
-#define MCF_SEC_MDISR (*(volatile uint32_t*)(&_MBAR[0x2C030]))
-#define MCF_SEC_MDIMR (*(volatile uint32_t*)(&_MBAR[0x2C038]))
-#define MCF_SEC_RNGRCR (*(volatile uint32_t*)(&_MBAR[0x2E018]))
-#define MCF_SEC_RNGSR (*(volatile uint32_t*)(&_MBAR[0x2E028]))
-#define MCF_SEC_RNGISR (*(volatile uint32_t*)(&_MBAR[0x2E030]))
-#define MCF_SEC_RNGIMR (*(volatile uint32_t*)(&_MBAR[0x2E038]))
-#define MCF_SEC_AESRCR (*(volatile uint32_t*)(&_MBAR[0x32018]))
-#define MCF_SEC_AESSR (*(volatile uint32_t*)(&_MBAR[0x32028]))
-#define MCF_SEC_AESISR (*(volatile uint32_t*)(&_MBAR[0x32030]))
-#define MCF_SEC_AESIMR (*(volatile uint32_t*)(&_MBAR[0x32038]))
-#define MCF_SEC_CCCRn(x) (*(volatile uint32_t*)(&_MBAR[0x2200C + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRHn(x) (*(volatile uint32_t*)(&_MBAR[0x22010 + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRLn(x) (*(volatile uint32_t*)(&_MBAR[0x22014 + ((x)*0x1000)]))
-#define MCF_SEC_CDPRn(x) (*(volatile uint32_t*)(&_MBAR[0x22044 + ((x)*0x1000)]))
-#define MCF_SEC_FRn(x) (*(volatile uint32_t*)(&_MBAR[0x2204C + ((x)*0x1000)]))
-
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUACRH_AFFEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_AFFEU_CHA0 (0x1)
-#define MCF_SEC_EUACRH_AFFEU_CHA1 (0x2)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x200)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0xF)<<0x18)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x1000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x10000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x20000)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x8000000)
-#define MCF_SEC_SIMRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x40)
-#define MCF_SEC_SIMRL_DEU_DN (0x100)
-#define MCF_SEC_SIMRL_DEU_ERR (0x200)
-#define MCF_SEC_SIMRL_AESU_DN (0x1000)
-#define MCF_SEC_SIMRL_AESU_ERR (0x2000)
-#define MCF_SEC_SIMRL_MDEU_DN (0x10000)
-#define MCF_SEC_SIMRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SIMRL_AFEU_DN (0x100000)
-#define MCF_SEC_SIMRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SIMRL_RNG_DN (0x1000000)
-#define MCF_SEC_SIMRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x8000000)
-#define MCF_SEC_SISRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SISRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SISRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x40)
-#define MCF_SEC_SISRL_DEU_DN (0x100)
-#define MCF_SEC_SISRL_DEU_ERR (0x200)
-#define MCF_SEC_SISRL_AESU_DN (0x1000)
-#define MCF_SEC_SISRL_AESU_ERR (0x2000)
-#define MCF_SEC_SISRL_MDEU_DN (0x10000)
-#define MCF_SEC_SISRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SISRL_AFEU_DN (0x100000)
-#define MCF_SEC_SISRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SISRL_RNG_DN (0x1000000)
-#define MCF_SEC_SISRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x8000000)
-#define MCF_SEC_SICRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SICRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SICRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x40)
-#define MCF_SEC_SICRL_DEU_DN (0x100)
-#define MCF_SEC_SICRL_DEU_ERR (0x200)
-#define MCF_SEC_SICRL_AESU_DN (0x1000)
-#define MCF_SEC_SICRL_AESU_ERR (0x2000)
-#define MCF_SEC_SICRL_MDEU_DN (0x10000)
-#define MCF_SEC_SICRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SICRL_AFEU_DN (0x100000)
-#define MCF_SEC_SICRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SICRL_RNG_DN (0x1000000)
-#define MCF_SEC_SICRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SIDR */
-#define MCF_SEC_SIDR_VERSION(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0xF)<<0x4)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x10)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x20)
-#define MCF_SEC_SMCR_SWR (0x1000000)
-
-/* Bit definitions and macros for MCF_SEC_MEAR */
-#define MCF_SEC_MEAR_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x1)
-#define MCF_SEC_CCCRn_CDIE (0x2)
-#define MCF_SEC_CCCRn_NT (0x4)
-#define MCF_SEC_CCCRn_NE (0x8)
-#define MCF_SEC_CCCRn_WE (0x10)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x7)<<0x8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0xFF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x100)
-#define MCF_SEC_CCPSRLn_SERR (0x200)
-#define MCF_SEC_CCPSRLn_DERR (0x400)
-#define MCF_SEC_CCPSRLn_PERR (0x1000)
-#define MCF_SEC_CCPSRLn_TEA (0x2000)
-#define MCF_SEC_CCPSRLn_SD (0x10000)
-#define MCF_SEC_CCPSRLn_PD (0x20000)
-#define MCF_SEC_CCPSRLn_SRD (0x40000)
-#define MCF_SEC_CCPSRLn_PRD (0x80000)
-#define MCF_SEC_CCPSRLn_SG (0x100000)
-#define MCF_SEC_CCPSRLn_PG (0x200000)
-#define MCF_SEC_CCPSRLn_SR (0x400000)
-#define MCF_SEC_CCPSRLn_PR (0x800000)
-#define MCF_SEC_CCPSRLn_MO (0x1000000)
-#define MCF_SEC_CCPSRLn_MI (0x2000000)
-#define MCF_SEC_CCPSRLn_STAT (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_CDPRn */
-#define MCF_SEC_CDPRn_CDP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_FRn */
-#define MCF_SEC_FRn_FETCH_ADDR(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x1000000)
-#define MCF_SEC_AFRCR_MI (0x2000000)
-#define MCF_SEC_AFRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x1000000)
-#define MCF_SEC_AFSR_ID (0x2000000)
-#define MCF_SEC_AFSR_IE (0x4000000)
-#define MCF_SEC_AFSR_OFR (0x8000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x10000)
-#define MCF_SEC_AFISR_KSE (0x20000)
-#define MCF_SEC_AFISR_CE (0x40000)
-#define MCF_SEC_AFISR_ERE (0x80000)
-#define MCF_SEC_AFISR_IE (0x100000)
-#define MCF_SEC_AFISR_OFU (0x2000000)
-#define MCF_SEC_AFISR_IFO (0x4000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x10000)
-#define MCF_SEC_AFIMR_KSE (0x20000)
-#define MCF_SEC_AFIMR_CE (0x40000)
-#define MCF_SEC_AFIMR_ERE (0x80000)
-#define MCF_SEC_AFIMR_IE (0x100000)
-#define MCF_SEC_AFIMR_OFU (0x2000000)
-#define MCF_SEC_AFIMR_IFO (0x4000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x1000000)
-#define MCF_SEC_DRCR_MI (0x2000000)
-#define MCF_SEC_DRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x1000000)
-#define MCF_SEC_DSR_ID (0x2000000)
-#define MCF_SEC_DSR_IE (0x4000000)
-#define MCF_SEC_DSR_OFR (0x8000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x10000)
-#define MCF_SEC_DISR_KSE (0x20000)
-#define MCF_SEC_DISR_CE (0x40000)
-#define MCF_SEC_DISR_ERE (0x80000)
-#define MCF_SEC_DISR_IE (0x100000)
-#define MCF_SEC_DISR_KPE (0x200000)
-#define MCF_SEC_DISR_OFU (0x2000000)
-#define MCF_SEC_DISR_IFO (0x4000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x10000)
-#define MCF_SEC_DIMR_KSE (0x20000)
-#define MCF_SEC_DIMR_CE (0x40000)
-#define MCF_SEC_DIMR_ERE (0x80000)
-#define MCF_SEC_DIMR_IE (0x100000)
-#define MCF_SEC_DIMR_KPE (0x200000)
-#define MCF_SEC_DIMR_OFU (0x2000000)
-#define MCF_SEC_DIMR_IFO (0x4000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x1000000)
-#define MCF_SEC_MDRCR_MI (0x2000000)
-#define MCF_SEC_MDRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x1000000)
-#define MCF_SEC_MDSR_ID (0x2000000)
-#define MCF_SEC_MDSR_IE (0x4000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x10000)
-#define MCF_SEC_MDISR_KSE (0x20000)
-#define MCF_SEC_MDISR_CE (0x40000)
-#define MCF_SEC_MDISR_ERE (0x80000)
-#define MCF_SEC_MDISR_IE (0x100000)
-#define MCF_SEC_MDISR_IFO (0x4000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x10000)
-#define MCF_SEC_MDIMR_KSE (0x20000)
-#define MCF_SEC_MDIMR_CE (0x40000)
-#define MCF_SEC_MDIMR_ERE (0x80000)
-#define MCF_SEC_MDIMR_IE (0x100000)
-#define MCF_SEC_MDIMR_IFO (0x4000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x1000000)
-#define MCF_SEC_RNGRCR_MI (0x2000000)
-#define MCF_SEC_RNGRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x1000000)
-#define MCF_SEC_RNGSR_IE (0x4000000)
-#define MCF_SEC_RNGSR_OFR (0x8000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x100000)
-#define MCF_SEC_RNGISR_OFU (0x2000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x100000)
-#define MCF_SEC_RNGIMR_OFU (0x2000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x1000000)
-#define MCF_SEC_AESRCR_MI (0x2000000)
-#define MCF_SEC_AESRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x1000000)
-#define MCF_SEC_AESSR_ID (0x2000000)
-#define MCF_SEC_AESSR_IE (0x4000000)
-#define MCF_SEC_AESSR_OFR (0x8000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x10000)
-#define MCF_SEC_AESISR_KSE (0x20000)
-#define MCF_SEC_AESISR_CE (0x40000)
-#define MCF_SEC_AESISR_ERE (0x80000)
-#define MCF_SEC_AESISR_IE (0x100000)
-#define MCF_SEC_AESISR_OFU (0x2000000)
-#define MCF_SEC_AESISR_IFO (0x4000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x10000)
-#define MCF_SEC_AESIMR_KSE (0x20000)
-#define MCF_SEC_AESIMR_CE (0x40000)
-#define MCF_SEC_AESIMR_ERE (0x80000)
-#define MCF_SEC_AESIMR_IE (0x100000)
-#define MCF_SEC_AESIMR_OFU (0x2000000)
-#define MCF_SEC_AESIMR_IFO (0x4000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-
-#endif /* __MCF5475_SEC_H__ */
diff --git a/BaS_gcc/include/MCF5475_SIU.h b/BaS_gcc/include/MCF5475_SIU.h
deleted file mode 100644
index efb2896..0000000
--- a/BaS_gcc/include/MCF5475_SIU.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SIU_H__
-#define __MCF5475_SIU_H__
-
-
-/*********************************************************************
-*
-* System Integration Unit (SIU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(volatile uint32_t*)(&_MBAR[0x10]))
-#define MCF_SIU_SECSACR (*(volatile uint32_t*)(&_MBAR[0x38]))
-#define MCF_SIU_RSR (*(volatile uint32_t*)(&_MBAR[0x44]))
-#define MCF_SIU_JTAGID (*(volatile uint32_t*)(&_MBAR[0x50]))
-
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x8000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x1)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x1)
-#define MCF_SIU_RSR_RSTWD (0x2)
-#define MCF_SIU_RSR_RSTJTG (0x8)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_JTAGID(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF5475_SIU_H__ */
diff --git a/BaS_gcc/include/MCF5475_SLT.h b/BaS_gcc/include/MCF5475_SLT.h
deleted file mode 100644
index 20e8558..0000000
--- a/BaS_gcc/include/MCF5475_SLT.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SLT_H__
-#define __MCF5475_SLT_H__
-
-
-/*********************************************************************
-*
-* Slice Timers (SLT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SLT0_STCNT (*(volatile uint32_t*)(&_MBAR[0x900]))
-#define MCF_SLT0_SCR (*(volatile uint32_t*)(&_MBAR[0x904]))
-#define MCF_SLT0_SCNT (*(volatile uint32_t*)(&_MBAR[0x908]))
-#define MCF_SLT0_SSR (*(volatile uint32_t*)(&_MBAR[0x90C]))
-
-#define MCF_SLT1_STCNT (*(volatile uint32_t*)(&_MBAR[0x910]))
-#define MCF_SLT1_SCR (*(volatile uint32_t*)(&_MBAR[0x914]))
-#define MCF_SLT1_SCNT (*(volatile uint32_t*)(&_MBAR[0x918]))
-#define MCF_SLT1_SSR (*(volatile uint32_t*)(&_MBAR[0x91C]))
-
-#define MCF_SLT_STCNT(x) (*(volatile uint32_t*)(&_MBAR[0x900 + ((x)*0x10)]))
-#define MCF_SLT_SCR(x) (*(volatile uint32_t*)(&_MBAR[0x904 + ((x)*0x10)]))
-#define MCF_SLT_SCNT(x) (*(volatile int32_t*)(&_MBAR[0x908 + ((x)*0x10)]))
-#define MCF_SLT_SSR(x) (*(volatile uint32_t*)(&_MBAR[0x90C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_SLT_STCNT */
-#define MCF_SLT_STCNT_TC(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x1000000)
-#define MCF_SLT_SCR_IEN (0x2000000)
-#define MCF_SLT_SCR_RUN (0x4000000)
-
-/* Bit definitions and macros for MCF_SLT_SCNT */
-#define MCF_SLT_SCNT_CNT(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x1000000)
-#define MCF_SLT_SSR_BE (0x2000000)
-
-
-#endif /* __MCF5475_SLT_H__ */
diff --git a/BaS_gcc/include/MCF5475_SRAM.h b/BaS_gcc/include/MCF5475_SRAM.h
deleted file mode 100644
index d111f13..0000000
--- a/BaS_gcc/include/MCF5475_SRAM.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SRAM_H__
-#define __MCF5475_SRAM_H__
-
-
-/*********************************************************************
-*
-* System SRAM Module (SRAM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(volatile uint32_t*)(&__MBAR[0x1FFC0]))
-#define MCF_SRAM_TCCR (*(volatile uint32_t*)(&__MBAR[0x1FFC4]))
-#define MCF_SRAM_TCCRDR (*(volatile uint32_t*)(&__MBAR[0x1FFC8]))
-#define MCF_SRAM_TCCRDW (*(volatile uint32_t*)(&__MBAR[0x1FFCC]))
-#define MCF_SRAM_TCCRSEC (*(volatile uint32_t*)(&__MBAR[0x1FFD0]))
-
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x10000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-
-#endif /* __MCF5475_SRAM_H__ */
diff --git a/BaS_gcc/include/MCF5475_USB.h b/BaS_gcc/include/MCF5475_USB.h
deleted file mode 100644
index c60273c..0000000
--- a/BaS_gcc/include/MCF5475_USB.h
+++ /dev/null
@@ -1,554 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_USB_H__
-#define __MCF5475_USB_H__
-
-
-/*********************************************************************
-*
-* Universal Serial Bus Interface (USB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(volatile uint8_t *)(&__MBAR[0xB000]))
-#define MCF_USB_USBAIMR (*(volatile uint8_t *)(&__MBAR[0xB001]))
-#define MCF_USB_EPINFO (*(volatile uint8_t *)(&__MBAR[0xB003]))
-#define MCF_USB_CFGR (*(volatile uint8_t *)(&__MBAR[0xB004]))
-#define MCF_USB_CFGAR (*(volatile uint8_t *)(&__MBAR[0xB005]))
-#define MCF_USB_SPEEDR (*(volatile uint8_t *)(&__MBAR[0xB006]))
-#define MCF_USB_FRMNUMR (*(volatile uint16_t*)(&__MBAR[0xB00E]))
-#define MCF_USB_EPTNR (*(volatile uint16_t*)(&__MBAR[0xB010]))
-#define MCF_USB_IFUR (*(volatile uint16_t*)(&__MBAR[0xB014]))
-#define MCF_USB_IFR0 (*(volatile uint16_t*)(&__MBAR[0xB040]))
-#define MCF_USB_IFR1 (*(volatile uint16_t*)(&__MBAR[0xB042]))
-#define MCF_USB_IFR2 (*(volatile uint16_t*)(&__MBAR[0xB044]))
-#define MCF_USB_IFR3 (*(volatile uint16_t*)(&__MBAR[0xB046]))
-#define MCF_USB_IFR4 (*(volatile uint16_t*)(&__MBAR[0xB048]))
-#define MCF_USB_IFR5 (*(volatile uint16_t*)(&__MBAR[0xB04A]))
-#define MCF_USB_IFR6 (*(volatile uint16_t*)(&__MBAR[0xB04C]))
-#define MCF_USB_IFR7 (*(volatile uint16_t*)(&__MBAR[0xB04E]))
-#define MCF_USB_IFR8 (*(volatile uint16_t*)(&__MBAR[0xB050]))
-#define MCF_USB_IFR9 (*(volatile uint16_t*)(&__MBAR[0xB052]))
-#define MCF_USB_IFR10 (*(volatile uint16_t*)(&__MBAR[0xB054]))
-#define MCF_USB_IFR11 (*(volatile uint16_t*)(&__MBAR[0xB056]))
-#define MCF_USB_IFR12 (*(volatile uint16_t*)(&__MBAR[0xB058]))
-#define MCF_USB_IFR13 (*(volatile uint16_t*)(&__MBAR[0xB05A]))
-#define MCF_USB_IFR14 (*(volatile uint16_t*)(&__MBAR[0xB05C]))
-#define MCF_USB_IFR15 (*(volatile uint16_t*)(&__MBAR[0xB05E]))
-#define MCF_USB_IFR16 (*(volatile uint16_t*)(&__MBAR[0xB060]))
-#define MCF_USB_IFR17 (*(volatile uint16_t*)(&__MBAR[0xB062]))
-#define MCF_USB_IFR18 (*(volatile uint16_t*)(&__MBAR[0xB064]))
-#define MCF_USB_IFR19 (*(volatile uint16_t*)(&__MBAR[0xB066]))
-#define MCF_USB_IFR20 (*(volatile uint16_t*)(&__MBAR[0xB068]))
-#define MCF_USB_IFR21 (*(volatile uint16_t*)(&__MBAR[0xB06A]))
-#define MCF_USB_IFR22 (*(volatile uint16_t*)(&__MBAR[0xB06C]))
-#define MCF_USB_IFR23 (*(volatile uint16_t*)(&__MBAR[0xB06E]))
-#define MCF_USB_IFR24 (*(volatile uint16_t*)(&__MBAR[0xB070]))
-#define MCF_USB_IFR25 (*(volatile uint16_t*)(&__MBAR[0xB072]))
-#define MCF_USB_IFR26 (*(volatile uint16_t*)(&__MBAR[0xB074]))
-#define MCF_USB_IFR27 (*(volatile uint16_t*)(&__MBAR[0xB076]))
-#define MCF_USB_IFR28 (*(volatile uint16_t*)(&__MBAR[0xB078]))
-#define MCF_USB_IFR29 (*(volatile uint16_t*)(&__MBAR[0xB07A]))
-#define MCF_USB_IFR30 (*(volatile uint16_t*)(&__MBAR[0xB07C]))
-#define MCF_USB_IFR31 (*(volatile uint16_t*)(&__MBAR[0xB07E]))
-#define MCF_USB_PPCNT (*(volatile uint16_t*)(&__MBAR[0xB080]))
-#define MCF_USB_DPCNT (*(volatile uint16_t*)(&__MBAR[0xB082]))
-#define MCF_USB_CRCECNT (*(volatile uint16_t*)(&__MBAR[0xB084]))
-#define MCF_USB_BSECNT (*(volatile uint16_t*)(&__MBAR[0xB086]))
-#define MCF_USB_PIDECNT (*(volatile uint16_t*)(&__MBAR[0xB088]))
-#define MCF_USB_FRMECNT (*(volatile uint16_t*)(&__MBAR[0xB08A]))
-#define MCF_USB_TXPCNT (*(volatile uint16_t*)(&__MBAR[0xB08C]))
-#define MCF_USB_CNTOVR (*(volatile uint8_t *)(&__MBAR[0xB08E]))
-#define MCF_USB_EP0ACR (*(volatile uint8_t *)(&__MBAR[0xB101]))
-#define MCF_USB_EP0MPSR (*(volatile uint16_t*)(&__MBAR[0xB102]))
-#define MCF_USB_EP0IFR (*(volatile uint8_t *)(&__MBAR[0xB104]))
-#define MCF_USB_EP0SR (*(volatile uint8_t *)(&__MBAR[0xB105]))
-#define MCF_USB_BMRTR (*(volatile uint8_t *)(&__MBAR[0xB106]))
-#define MCF_USB_BRTR (*(volatile uint8_t *)(&__MBAR[0xB107]))
-#define MCF_USB_WVALUER (*(volatile uint16_t*)(&__MBAR[0xB108]))
-#define MCF_USB_WINDEXR (*(volatile uint16_t*)(&__MBAR[0xB10A]))
-#define MCF_USB_WLENGTHR (*(volatile uint16_t*)(&__MBAR[0xB10C]))
-#define MCF_USB_EP1OUTACR (*(volatile uint8_t *)(&__MBAR[0xB131]))
-#define MCF_USB_EP1OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB132]))
-#define MCF_USB_EP1OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB134]))
-#define MCF_USB_EP1OUTSR (*(volatile uint8_t *)(&__MBAR[0xB135]))
-#define MCF_USB_EP1OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB13E]))
-#define MCF_USB_EP1INACR (*(volatile uint8_t *)(&__MBAR[0xB149]))
-#define MCF_USB_EP1INMPSR (*(volatile uint16_t*)(&__MBAR[0xB14A]))
-#define MCF_USB_EP1INIFR (*(volatile uint8_t *)(&__MBAR[0xB14C]))
-#define MCF_USB_EP1INSR (*(volatile uint8_t *)(&__MBAR[0xB14D]))
-#define MCF_USB_EP1INSFR (*(volatile uint16_t*)(&__MBAR[0xB156]))
-#define MCF_USB_EP2OUTACR (*(volatile uint8_t *)(&__MBAR[0xB161]))
-#define MCF_USB_EP2OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB162]))
-#define MCF_USB_EP2OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB164]))
-#define MCF_USB_EP2OUTSR (*(volatile uint8_t *)(&__MBAR[0xB165]))
-#define MCF_USB_EP2OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB16E]))
-#define MCF_USB_EP2INACR (*(volatile uint8_t *)(&__MBAR[0xB179]))
-#define MCF_USB_EP2INMPSR (*(volatile uint16_t*)(&__MBAR[0xB17A]))
-#define MCF_USB_EP2INIFR (*(volatile uint8_t *)(&__MBAR[0xB17C]))
-#define MCF_USB_EP2INSR (*(volatile uint8_t *)(&__MBAR[0xB17D]))
-#define MCF_USB_EP2INSFR (*(volatile uint16_t*)(&__MBAR[0xB186]))
-#define MCF_USB_EP3OUTACR (*(volatile uint8_t *)(&__MBAR[0xB191]))
-#define MCF_USB_EP3OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB192]))
-#define MCF_USB_EP3OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB194]))
-#define MCF_USB_EP3OUTSR (*(volatile uint8_t *)(&__MBAR[0xB195]))
-#define MCF_USB_EP3OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB19E]))
-#define MCF_USB_EP3INACR (*(volatile uint8_t *)(&__MBAR[0xB1A9]))
-#define MCF_USB_EP3INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1AA]))
-#define MCF_USB_EP3INIFR (*(volatile uint8_t *)(&__MBAR[0xB1AC]))
-#define MCF_USB_EP3INSR (*(volatile uint8_t *)(&__MBAR[0xB1AD]))
-#define MCF_USB_EP3INSFR (*(volatile uint16_t*)(&__MBAR[0xB1B6]))
-#define MCF_USB_EP4OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1C1]))
-#define MCF_USB_EP4OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1C2]))
-#define MCF_USB_EP4OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1C4]))
-#define MCF_USB_EP4OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1C5]))
-#define MCF_USB_EP4OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1CE]))
-#define MCF_USB_EP4INACR (*(volatile uint8_t *)(&__MBAR[0xB1D9]))
-#define MCF_USB_EP4INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1DA]))
-#define MCF_USB_EP4INIFR (*(volatile uint8_t *)(&__MBAR[0xB1DC]))
-#define MCF_USB_EP4INSR (*(volatile uint8_t *)(&__MBAR[0xB1DD]))
-#define MCF_USB_EP4INSFR (*(volatile uint16_t*)(&__MBAR[0xB1E6]))
-#define MCF_USB_EP5OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1F1]))
-#define MCF_USB_EP5OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1F2]))
-#define MCF_USB_EP5OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1F4]))
-#define MCF_USB_EP5OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1F5]))
-#define MCF_USB_EP5OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1FE]))
-#define MCF_USB_EP5INACR (*(volatile uint8_t *)(&__MBAR[0xB209]))
-#define MCF_USB_EP5INMPSR (*(volatile uint16_t*)(&__MBAR[0xB20A]))
-#define MCF_USB_EP5INIFR (*(volatile uint8_t *)(&__MBAR[0xB20C]))
-#define MCF_USB_EP5INSR (*(volatile uint8_t *)(&__MBAR[0xB20D]))
-#define MCF_USB_EP5INSFR (*(volatile uint16_t*)(&__MBAR[0xB216]))
-#define MCF_USB_EP6OUTACR (*(volatile uint8_t *)(&__MBAR[0xB221]))
-#define MCF_USB_EP6OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB222]))
-#define MCF_USB_EP6OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB224]))
-#define MCF_USB_EP6OUTSR (*(volatile uint8_t *)(&__MBAR[0xB225]))
-#define MCF_USB_EP6OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB22E]))
-#define MCF_USB_EP6INACR (*(volatile uint8_t *)(&__MBAR[0xB239]))
-#define MCF_USB_EP6INMPSR (*(volatile uint16_t*)(&__MBAR[0xB23A]))
-#define MCF_USB_EP6INIFR (*(volatile uint8_t *)(&__MBAR[0xB23C]))
-#define MCF_USB_EP6INSR (*(volatile uint8_t *)(&__MBAR[0xB23D]))
-#define MCF_USB_EP6INSFR (*(volatile uint16_t*)(&__MBAR[0xB246]))
-#define MCF_USB_USBSR (*(volatile uint32_t*)(&__MBAR[0xB400]))
-#define MCF_USB_USBCR (*(volatile uint32_t*)(&__MBAR[0xB404]))
-#define MCF_USB_DRAMCR (*(volatile uint32_t*)(&__MBAR[0xB408]))
-#define MCF_USB_DRAMDR (*(volatile uint32_t*)(&__MBAR[0xB40C]))
-#define MCF_USB_USBISR (*(volatile uint32_t*)(&__MBAR[0xB410]))
-#define MCF_USB_USBIMR (*(volatile uint32_t*)(&__MBAR[0xB414]))
-#define MCF_USB_EP0STAT (*(volatile uint32_t*)(&__MBAR[0xB440]))
-#define MCF_USB_EP0ISR (*(volatile uint32_t*)(&__MBAR[0xB444]))
-#define MCF_USB_EP0IMR (*(volatile uint32_t*)(&__MBAR[0xB448]))
-#define MCF_USB_EP0FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB44C]))
-#define MCF_USB_EP0FDR (*(volatile uint32_t*)(&__MBAR[0xB450]))
-#define MCF_USB_EP0FSR (*(volatile uint32_t*)(&__MBAR[0xB454]))
-#define MCF_USB_EP0FCR (*(volatile uint32_t*)(&__MBAR[0xB458]))
-#define MCF_USB_EP0FAR (*(volatile uint32_t*)(&__MBAR[0xB45C]))
-#define MCF_USB_EP0FRP (*(volatile uint32_t*)(&__MBAR[0xB460]))
-#define MCF_USB_EP0FWP (*(volatile uint32_t*)(&__MBAR[0xB464]))
-#define MCF_USB_EP0LRFP (*(volatile uint32_t*)(&__MBAR[0xB468]))
-#define MCF_USB_EP0LWFP (*(volatile uint32_t*)(&__MBAR[0xB46C]))
-#define MCF_USB_EP1STAT (*(volatile uint32_t*)(&__MBAR[0xB470]))
-#define MCF_USB_EP1ISR (*(volatile uint32_t*)(&__MBAR[0xB474]))
-#define MCF_USB_EP1IMR (*(volatile uint32_t*)(&__MBAR[0xB478]))
-#define MCF_USB_EP1FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB47C]))
-#define MCF_USB_EP1FDR (*(volatile uint32_t*)(&__MBAR[0xB480]))
-#define MCF_USB_EP1FSR (*(volatile uint32_t*)(&__MBAR[0xB484]))
-#define MCF_USB_EP1FCR (*(volatile uint32_t*)(&__MBAR[0xB488]))
-#define MCF_USB_EP1FAR (*(volatile uint32_t*)(&__MBAR[0xB48C]))
-#define MCF_USB_EP1FRP (*(volatile uint32_t*)(&__MBAR[0xB490]))
-#define MCF_USB_EP1FWP (*(volatile uint32_t*)(&__MBAR[0xB494]))
-#define MCF_USB_EP1LRFP (*(volatile uint32_t*)(&__MBAR[0xB498]))
-#define MCF_USB_EP1LWFP (*(volatile uint32_t*)(&__MBAR[0xB49C]))
-#define MCF_USB_EP2STAT (*(volatile uint32_t*)(&__MBAR[0xB4A0]))
-#define MCF_USB_EP2ISR (*(volatile uint32_t*)(&__MBAR[0xB4A4]))
-#define MCF_USB_EP2IMR (*(volatile uint32_t*)(&__MBAR[0xB4A8]))
-#define MCF_USB_EP2FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4AC]))
-#define MCF_USB_EP2FDR (*(volatile uint32_t*)(&__MBAR[0xB4B0]))
-#define MCF_USB_EP2FSR (*(volatile uint32_t*)(&__MBAR[0xB4B4]))
-#define MCF_USB_EP2FCR (*(volatile uint32_t*)(&__MBAR[0xB4B8]))
-#define MCF_USB_EP2FAR (*(volatile uint32_t*)(&__MBAR[0xB4BC]))
-#define MCF_USB_EP2FRP (*(volatile uint32_t*)(&__MBAR[0xB4C0]))
-#define MCF_USB_EP2FWP (*(volatile uint32_t*)(&__MBAR[0xB4C4]))
-#define MCF_USB_EP2LRFP (*(volatile uint32_t*)(&__MBAR[0xB4C8]))
-#define MCF_USB_EP2LWFP (*(volatile uint32_t*)(&__MBAR[0xB4CC]))
-#define MCF_USB_EP3STAT (*(volatile uint32_t*)(&__MBAR[0xB4D0]))
-#define MCF_USB_EP3ISR (*(volatile uint32_t*)(&__MBAR[0xB4D4]))
-#define MCF_USB_EP3IMR (*(volatile uint32_t*)(&__MBAR[0xB4D8]))
-#define MCF_USB_EP3FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4DC]))
-#define MCF_USB_EP3FDR (*(volatile uint32_t*)(&__MBAR[0xB4E0]))
-#define MCF_USB_EP3FSR (*(volatile uint32_t*)(&__MBAR[0xB4E4]))
-#define MCF_USB_EP3FCR (*(volatile uint32_t*)(&__MBAR[0xB4E8]))
-#define MCF_USB_EP3FAR (*(volatile uint32_t*)(&__MBAR[0xB4EC]))
-#define MCF_USB_EP3FRP (*(volatile uint32_t*)(&__MBAR[0xB4F0]))
-#define MCF_USB_EP3FWP (*(volatile uint32_t*)(&__MBAR[0xB4F4]))
-#define MCF_USB_EP3LRFP (*(volatile uint32_t*)(&__MBAR[0xB4F8]))
-#define MCF_USB_EP3LWFP (*(volatile uint32_t*)(&__MBAR[0xB4FC]))
-#define MCF_USB_EP4STAT (*(volatile uint32_t*)(&__MBAR[0xB500]))
-#define MCF_USB_EP4ISR (*(volatile uint32_t*)(&__MBAR[0xB504]))
-#define MCF_USB_EP4IMR (*(volatile uint32_t*)(&__MBAR[0xB508]))
-#define MCF_USB_EP4FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB50C]))
-#define MCF_USB_EP4FDR (*(volatile uint32_t*)(&__MBAR[0xB510]))
-#define MCF_USB_EP4FSR (*(volatile uint32_t*)(&__MBAR[0xB514]))
-#define MCF_USB_EP4FCR (*(volatile uint32_t*)(&__MBAR[0xB518]))
-#define MCF_USB_EP4FAR (*(volatile uint32_t*)(&__MBAR[0xB51C]))
-#define MCF_USB_EP4FRP (*(volatile uint32_t*)(&__MBAR[0xB520]))
-#define MCF_USB_EP4FWP (*(volatile uint32_t*)(&__MBAR[0xB524]))
-#define MCF_USB_EP4LRFP (*(volatile uint32_t*)(&__MBAR[0xB528]))
-#define MCF_USB_EP4LWFP (*(volatile uint32_t*)(&__MBAR[0xB52C]))
-#define MCF_USB_EP5STAT (*(volatile uint32_t*)(&__MBAR[0xB530]))
-#define MCF_USB_EP5ISR (*(volatile uint32_t*)(&__MBAR[0xB534]))
-#define MCF_USB_EP5IMR (*(volatile uint32_t*)(&__MBAR[0xB538]))
-#define MCF_USB_EP5FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB53C]))
-#define MCF_USB_EP5FDR (*(volatile uint32_t*)(&__MBAR[0xB540]))
-#define MCF_USB_EP5FSR (*(volatile uint32_t*)(&__MBAR[0xB544]))
-#define MCF_USB_EP5FCR (*(volatile uint32_t*)(&__MBAR[0xB548]))
-#define MCF_USB_EP5FAR (*(volatile uint32_t*)(&__MBAR[0xB54C]))
-#define MCF_USB_EP5FRP (*(volatile uint32_t*)(&__MBAR[0xB550]))
-#define MCF_USB_EP5FWP (*(volatile uint32_t*)(&__MBAR[0xB554]))
-#define MCF_USB_EP5LRFP (*(volatile uint32_t*)(&__MBAR[0xB558]))
-#define MCF_USB_EP5LWFP (*(volatile uint32_t*)(&__MBAR[0xB55C]))
-#define MCF_USB_EP6STAT (*(volatile uint32_t*)(&__MBAR[0xB560]))
-#define MCF_USB_EP6ISR (*(volatile uint32_t*)(&__MBAR[0xB564]))
-#define MCF_USB_EP6IMR (*(volatile uint32_t*)(&__MBAR[0xB568]))
-#define MCF_USB_EP6FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB56C]))
-#define MCF_USB_EP6FDR (*(volatile uint32_t*)(&__MBAR[0xB570]))
-#define MCF_USB_EP6FSR (*(volatile uint32_t*)(&__MBAR[0xB574]))
-#define MCF_USB_EP6FCR (*(volatile uint32_t*)(&__MBAR[0xB578]))
-#define MCF_USB_EP6FAR (*(volatile uint32_t*)(&__MBAR[0xB57C]))
-#define MCF_USB_EP6FRP (*(volatile uint32_t*)(&__MBAR[0xB580]))
-#define MCF_USB_EP6FWP (*(volatile uint32_t*)(&__MBAR[0xB584]))
-#define MCF_USB_EP6LRFP (*(volatile uint32_t*)(&__MBAR[0xB588]))
-#define MCF_USB_EP6LWFP (*(volatile uint32_t*)(&__MBAR[0xB58C]))
-#define MCF_USB_IFR(x) (*(volatile uint16_t*)(&__MBAR[0xB040 + ((x)*0x2)]))
-#define MCF_USB_EPOUTACR(x) (*(volatile uint8_t *)(&__MBAR[0xB131 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB132 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB134 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSR(x) (*(volatile uint8_t *)(&__MBAR[0xB135 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB13E + ((x-1)*0x30)]))
-#define MCF_USB_EPINACR(x) (*(volatile uint8_t *)(&__MBAR[0xB149 + ((x-1)*0x30)]))
-#define MCF_USB_EPINMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB14A + ((x-1)*0x30)]))
-#define MCF_USB_EPINIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB14C + ((x-1)*0x30)]))
-#define MCF_USB_EPINSR(x) (*(volatile uint8_t *)(&__MBAR[0xB14D + ((x-1)*0x30)]))
-#define MCF_USB_EPINSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB156 + ((x-1)*0x30)]))
-#define MCF_USB_EPSTAT(x) (*(volatile uint32_t*)(&__MBAR[0xB440 + ((x)*0x30)]))
-#define MCF_USB_EPISR(x) (*(volatile uint32_t*)(&__MBAR[0xB444 + ((x)*0x30)]))
-#define MCF_USB_EPIMR(x) (*(volatile uint32_t*)(&__MBAR[0xB448 + ((x)*0x30)]))
-#define MCF_USB_EPFRCFGR(x) (*(volatile uint32_t*)(&__MBAR[0xB44C + ((x)*0x30)]))
-#define MCF_USB_EPFDR(x) (*(volatile uint32_t*)(&__MBAR[0xB450 + ((x)*0x30)]))
-#define MCF_USB_EPFSR(x) (*(volatile uint32_t*)(&__MBAR[0xB454 + ((x)*0x30)]))
-#define MCF_USB_EPFCR(x) (*(volatile uint32_t*)(&__MBAR[0xB458 + ((x)*0x30)]))
-#define MCF_USB_EPFAR(x) (*(volatile uint32_t*)(&__MBAR[0xB45C + ((x)*0x30)]))
-#define MCF_USB_EPFRP(x) (*(volatile uint32_t*)(&__MBAR[0xB460 + ((x)*0x30)]))
-#define MCF_USB_EPFWP(x) (*(volatile uint32_t*)(&__MBAR[0xB464 + ((x)*0x30)]))
-#define MCF_USB_EPLRFP(x) (*(volatile uint32_t*)(&__MBAR[0xB468 + ((x)*0x30)]))
-#define MCF_USB_EPLWFP(x) (*(volatile uint32_t*)(&__MBAR[0xB46C + ((x)*0x30)]))
-
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x1)
-#define MCF_USB_USBAISR_IN (0x2)
-#define MCF_USB_USBAISR_OUT (0x4)
-#define MCF_USB_USBAISR_EPHALT (0x8)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x1)
-#define MCF_USB_USBAIMR_INEN (0x2)
-#define MCF_USB_USBAIMR_OUTEN (0x4)
-#define MCF_USB_USBAIMR_EPHALTEN (0x8)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x1)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x7)<<0x1)
-
-/* Bit definitions and macros for MCF_USB_CFGR */
-#define MCF_USB_CFGR_Configuration_Value(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_SPEED(x) (((x)&0x3)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x3)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x3)<<0x2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x3)<<0x4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x3)<<0x6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x3)<<0x8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x3)<<0xA)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (0x1)
-#define MCF_USB_EPTNR_EPnT3 (0x2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_IFR */
-#define MCF_USB_IFR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_PPCNT */
-#define MCF_USB_PPCNT_PPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_DPCNT */
-#define MCF_USB_DPCNT_DPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CRCECNT */
-#define MCF_USB_CRCECNT_CRCECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_BSECNT */
-#define MCF_USB_BSECNT_BSECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_PIDECNT */
-#define MCF_USB_PIDECNT_PIDECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMECNT */
-#define MCF_USB_FRMECNT_FRMECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_TXPCNT */
-#define MCF_USB_TXPCNT_TXPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x1)
-#define MCF_USB_CNTOVR_DPCNT (0x2)
-#define MCF_USB_CNTOVR_CRCECNT (0x4)
-#define MCF_USB_CNTOVR_BSECNT (0x8)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (0x2)
-#define MCF_USB_EP0ACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EP0IFR */
-#define MCF_USB_EP0IFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x1)
-#define MCF_USB_EP0SR_ACTIVE (0x2)
-#define MCF_USB_EP0SR_PSTALL (0x4)
-#define MCF_USB_EP0SR_CCOMP (0x8)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_REC(x) (((x)&0x1F)<<0)
-#define MCF_USB_BMRTR_REC_DEVICE (0)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x1)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x2)
-#define MCF_USB_BMRTR_REC_OTHER (0x3)
-#define MCF_USB_BMRTR_TYPE(x) (((x)&0x3)<<0x5)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_DIR (0x80)
-
-/* Bit definitions and macros for MCF_USB_BRTR */
-#define MCF_USB_BRTR_BREQ(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WVALUER */
-#define MCF_USB_WVALUER_WVALUE(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WINDEXR */
-#define MCF_USB_WINDEXR_WINDEX(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WLENGTHR */
-#define MCF_USB_WLENGTHR_WLENGTH(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTACR */
-#define MCF_USB_EPOUTACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPOUTACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPOUTACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPOUTACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPOUTMPSR */
-#define MCF_USB_EPOUTMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPOUTMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPOUTIFR */
-#define MCF_USB_EPOUTIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSR */
-#define MCF_USB_EPOUTSR_HALT (0x1)
-#define MCF_USB_EPOUTSR_ACTIVE (0x2)
-#define MCF_USB_EPOUTSR_PSTALL (0x4)
-#define MCF_USB_EPOUTSR_CCOMP (0x8)
-#define MCF_USB_EPOUTSR_TXZERO (0x20)
-#define MCF_USB_EPOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSFR */
-#define MCF_USB_EPOUTSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINACR */
-#define MCF_USB_EPINACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPINACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPINACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPINACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPINMPSR */
-#define MCF_USB_EPINMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPINMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPINIFR */
-#define MCF_USB_EPINIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINSR */
-#define MCF_USB_EPINSR_HALT (0x1)
-#define MCF_USB_EPINSR_ACTIVE (0x2)
-#define MCF_USB_EPINSR_PSTALL (0x4)
-#define MCF_USB_EPINSR_CCOMP (0x8)
-#define MCF_USB_EPINSR_TXZERO (0x20)
-#define MCF_USB_EPINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINSFR */
-#define MCF_USB_EPINSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_ISOERREP(x) (((x)&0xF)<<0)
-#define MCF_USB_USBSR_SUSP (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x1)
-#define MCF_USB_USBCR_APPLOCK (0x2)
-#define MCF_USB_USBCR_RST (0x4)
-#define MCF_USB_USBCR_RAMEN (0x8)
-#define MCF_USB_USBCR_RAMSPLIT (0x20)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x3FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x7FF)<<0x10)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x1)
-#define MCF_USB_USBISR_FTUNLCK (0x2)
-#define MCF_USB_USBISR_SUSP (0x4)
-#define MCF_USB_USBISR_RES (0x8)
-#define MCF_USB_USBISR_UPDSOF (0x10)
-#define MCF_USB_USBISR_RSTSTOP (0x20)
-#define MCF_USB_USBISR_SOF (0x40)
-#define MCF_USB_USBISR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x1)
-#define MCF_USB_USBIMR_FTUNLCK (0x2)
-#define MCF_USB_USBIMR_SUSP (0x4)
-#define MCF_USB_USBIMR_RES (0x8)
-#define MCF_USB_USBIMR_UPDSOF (0x10)
-#define MCF_USB_USBIMR_RSTSTOP (0x20)
-#define MCF_USB_USBIMR_SOF (0x40)
-#define MCF_USB_USBIMR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPSTAT */
-#define MCF_USB_EPSTAT_RST (0x1)
-#define MCF_USB_EPSTAT_FLUSH (0x2)
-#define MCF_USB_EPSTAT_DIR (0x80)
-#define MCF_USB_EPSTAT_BYTECNT(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPISR */
-#define MCF_USB_EPISR_EOF (0x1)
-#define MCF_USB_EPISR_EOT (0x4)
-#define MCF_USB_EPISR_FIFOLO (0x10)
-#define MCF_USB_EPISR_FIFOHI (0x20)
-#define MCF_USB_EPISR_ERR (0x40)
-#define MCF_USB_EPISR_EMT (0x80)
-#define MCF_USB_EPISR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPIMR */
-#define MCF_USB_EPIMR_EOF (0x1)
-#define MCF_USB_EPIMR_EOT (0x4)
-#define MCF_USB_EPIMR_FIFOLO (0x10)
-#define MCF_USB_EPIMR_FIFOHI (0x20)
-#define MCF_USB_EPIMR_ERR (0x40)
-#define MCF_USB_EPIMR_EMT (0x80)
-#define MCF_USB_EPIMR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPFRCFGR */
-#define MCF_USB_EPFRCFGR_DEPTH(x) (((x)&0x1FFF)<<0)
-#define MCF_USB_EPFRCFGR_BASE(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPFDR */
-#define MCF_USB_EPFDR_RX_TXDATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFSR */
-#define MCF_USB_EPFSR_EMT (0x10000)
-#define MCF_USB_EPFSR_ALRM (0x20000)
-#define MCF_USB_EPFSR_FU (0x40000)
-#define MCF_USB_EPFSR_FR (0x80000)
-#define MCF_USB_EPFSR_OF (0x100000)
-#define MCF_USB_EPFSR_UF (0x200000)
-#define MCF_USB_EPFSR_RXW (0x400000)
-#define MCF_USB_EPFSR_FAE (0x800000)
-#define MCF_USB_EPFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_USB_EPFSR_TXW (0x40000000)
-#define MCF_USB_EPFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFCR */
-#define MCF_USB_EPFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_USB_EPFCR_TXWMSK (0x40000)
-#define MCF_USB_EPFCR_OFMSK (0x80000)
-#define MCF_USB_EPFCR_UFMSK (0x100000)
-#define MCF_USB_EPFCR_RXWMSK (0x200000)
-#define MCF_USB_EPFCR_FAEMSK (0x400000)
-#define MCF_USB_EPFCR_IPMSK (0x800000)
-#define MCF_USB_EPFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_USB_EPFCR_FRM (0x8000000)
-#define MCF_USB_EPFCR_TMR (0x10000000)
-#define MCF_USB_EPFCR_WFR (0x20000000)
-#define MCF_USB_EPFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFAR */
-#define MCF_USB_EPFAR_ALRMP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFRP */
-#define MCF_USB_EPFRP_RP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFWP */
-#define MCF_USB_EPFWP_WP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLRFP */
-#define MCF_USB_EPLRFP_LRFP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLWFP */
-#define MCF_USB_EPLWFP_LWFP(x) (((x)&0xFFF)<<0)
-
-
-#endif /* __MCF5475_USB_H__ */
diff --git a/BaS_gcc/include/MCF5475_XLB.h b/BaS_gcc/include/MCF5475_XLB.h
deleted file mode 100644
index af25ae7..0000000
--- a/BaS_gcc/include/MCF5475_XLB.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_XLB_H__
-#define __MCF5475_XLB_H__
-
-
-/*********************************************************************
-*
-* XL Bus Arbiter (XLB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_XLB_XARB_CFG (*(volatile uint32_t*)(&_MBAR[0x240]))
-#define MCF_XLB_XARB_VER (*(volatile uint32_t*)(&_MBAR[0x244]))
-#define MCF_XLB_XARB_SR (*(volatile uint32_t*)(&_MBAR[0x248]))
-#define MCF_XLB_XARB_IMR (*(volatile uint32_t*)(&_MBAR[0x24C]))
-#define MCF_XLB_XARB_ADRCAP (*(volatile uint32_t*)(&_MBAR[0x250]))
-#define MCF_XLB_XARB_SIGCAP (*(volatile uint32_t*)(&_MBAR[0x254]))
-#define MCF_XLB_XARB_ADRTO (*(volatile uint32_t*)(&_MBAR[0x258]))
-#define MCF_XLB_XARB_DATTO (*(volatile uint32_t*)(&_MBAR[0x25C]))
-#define MCF_XLB_XARB_BUSTO (*(volatile uint32_t*)(&_MBAR[0x260]))
-#define MCF_XLB_XARB_PRIEN (*(volatile uint32_t*)(&_MBAR[0x264]))
-#define MCF_XLB_XARB_PRI (*(volatile uint32_t*)(&_MBAR[0x268]))
-
-
-/* Bit definitions and macros for MCF_XLB_XARB_CFG */
-#define MCF_XLB_XARB_CFG_AT (0x2)
-#define MCF_XLB_XARB_CFG_DT (0x4)
-#define MCF_XLB_XARB_CFG_BA (0x8)
-#define MCF_XLB_XARB_CFG_PM(x) (((x)&0x3)<<0x5)
-#define MCF_XLB_XARB_CFG_SP(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_CFG_PLDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_XLB_XARB_VER */
-#define MCF_XLB_XARB_VER_VER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SR */
-#define MCF_XLB_XARB_SR_AT (0x1)
-#define MCF_XLB_XARB_SR_DT (0x2)
-#define MCF_XLB_XARB_SR_BA (0x4)
-#define MCF_XLB_XARB_SR_TTM (0x8)
-#define MCF_XLB_XARB_SR_ECW (0x10)
-#define MCF_XLB_XARB_SR_TTR (0x20)
-#define MCF_XLB_XARB_SR_TTA (0x40)
-#define MCF_XLB_XARB_SR_MM (0x80)
-#define MCF_XLB_XARB_SR_SEA (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_IMR */
-#define MCF_XLB_XARB_IMR_ATE (0x1)
-#define MCF_XLB_XARB_IMR_DTE (0x2)
-#define MCF_XLB_XARB_IMR_BAE (0x4)
-#define MCF_XLB_XARB_IMR_TTME (0x8)
-#define MCF_XLB_XARB_IMR_ECWE (0x10)
-#define MCF_XLB_XARB_IMR_TTRE (0x20)
-#define MCF_XLB_XARB_IMR_TTAE (0x40)
-#define MCF_XLB_XARB_IMR_MME (0x80)
-#define MCF_XLB_XARB_IMR_SEAE (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRCAP */
-#define MCF_XLB_XARB_ADRCAP_ADRCAP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SIGCAP */
-#define MCF_XLB_XARB_SIGCAP_TT(x) (((x)&0x1F)<<0)
-#define MCF_XLB_XARB_SIGCAP_TBST (0x20)
-#define MCF_XLB_XARB_SIGCAP_TSIZ(x) (((x)&0x7)<<0x7)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRTO */
-#define MCF_XLB_XARB_ADRTO_ADRTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_DATTO */
-#define MCF_XLB_XARB_DATTO_DATTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_BUSTO */
-#define MCF_XLB_XARB_BUSTO_BUSTO(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRIEN */
-#define MCF_XLB_XARB_PRIEN_M0 (0x1)
-#define MCF_XLB_XARB_PRIEN_M2 (0x4)
-#define MCF_XLB_XARB_PRIEN_M3 (0x8)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRI */
-#define MCF_XLB_XARB_PRI_M0P(x) (((x)&0x7)<<0)
-#define MCF_XLB_XARB_PRI_M2P(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_PRI_M3P(x) (((x)&0x7)<<0xC)
-
-
-#endif /* __MCF5475_XLB_H__ */
diff --git a/BaS_gcc/include/acia.h b/BaS_gcc/include/acia.h
deleted file mode 100644
index 65e95c2..0000000
--- a/BaS_gcc/include/acia.h
+++ /dev/null
@@ -1,12 +0,0 @@
-#ifndef _ACIA_H_
-#define _ACIA_H_
-
-/*
- * ACIA registers
- */
-#define keyctl 0xfffc00
-#define keybd 0xfffc02
-#define midictl 0xfffc04
-#define midi 0xfffc06
-
-#endif /* _ACIA_H_ */
diff --git a/BaS_gcc/include/am79c874.h b/BaS_gcc/include/am79c874.h
deleted file mode 100644
index d501183..0000000
--- a/BaS_gcc/include/am79c874.h
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * File: am79c874.h
- * Purpose: Driver for the AM79C874 10/100 Ethernet PHY
- *
- * Notes:
- */
-
-#ifndef _AM79C874_H_
-#define _AM79C874_H_
-
-
-extern int am79c874_init(uint8_t fec_ch, uint8_t phy_addr, uint8_t speed, uint8_t duplex);
-
-
-/* MII Register Addresses */
-#define MII_AM79C874_CR 0 /* MII Management Control Register */
-#define MII_AM79C874_SR 1 /* MII Management Status Register */
-#define MII_AM79C874_PHYIDR1 2 /* PHY Identifier 1 Register */
-#define MII_AM79C874_PHYIDR2 3 /* PHY Identifier 2 Register */
-#define MII_AM79C874_ANAR 4 /* Auto-Negociation Advertissement Register */
-#define MII_AM79C874_ANLPAR 5 /* Auto-Negociation Link Partner Register */
-#define MII_AM79C874_ANER 6 /* Auto-Negociation Expansion Register */
-#define MII_AM79C874_ANNPTR 7 /* Next Page Advertisement Register */
-#define MII_AM79C874_MFR 16 /* Miscellaneous Feature Register */
-#define MII_AM79C874_ICSR 17 /* Interrupt/Status Register */
-#define MII_AM79C874_DR 18 /* Diagnostic Register */
-#define MII_AM79C874_PMLR 19 /* Power and Loopback Register */
-#define MII_AM79C874_MCR 21 /* ModeControl Register */
-#define MII_AM79C874_DC 23 /* Disconnect Counter */
-#define MII_AM79C874_REC 24 /* Recieve Error Counter */
-
-/* Bit definitions and macros for MII_AM79C874_CR */
-#define MII_AM79C874_CR_RESET (0x8000)
-#define MII_AM79C874_CR_LOOP (0x4000)
-#define MII_AM79C874_CR_100MB (0x2000)
-#define MII_AM79C874_CR_AUTON (0x1000)
-#define MII_AM79C874_CR_POWD (0x0800)
-#define MII_AM79C874_CR_ISO (0x0400)
-#define MII_AM79C874_CR_RST_NEG (0x0200)
-#define MII_AM79C874_CR_DPLX (0x0100)
-#define MII_AM79C874_CR_COL_TST (0x0080)
-#define MII_AM79C874_CR_SPEED_MASK (0x2040)
-#define MII_AM79C874_CR_1000_MPS (0x0040)
-#define MII_AM79C874_CR_100_MPS (0x2000)
-#define MII_AM79C874_CR_10_MPS (0x0000)
-
-/* Bit definitions and macros for MII_AM79C874_SR */
-#define MII_AM79C874_SR_100T4 (0x8000)
-#define MII_AM79C874_SR_100TXF (0x4000)
-#define MII_AM79C874_SR_100TXH (0x2000)
-#define MII_AM79C874_SR_10TF (0x1000)
-#define MII_AM79C874_SR_10TH (0x0800)
-#define MII_AM79C874_SR_PRE_SUP (0x0040)
-#define MII_AM79C874_SR_AUTN_COMP (0x0020)
-#define MII_AM79C874_SR_RF (0x0010)
-#define MII_AM79C874_SR_AUTN_ABLE (0x0008)
-#define MII_AM79C874_SR_LS (0x0004)
-#define MII_AM79C874_SR_JD (0x0002)
-#define MII_AM79C874_SR_EXT (0x0001)
-
-/* Bit definitions and macros for MII_AM79C874_ANLPAR */
-#define MII_AM79C874_ANLPAR_NP (0x8000)
-#define MII_AM79C874_ANLPAR_ACK (0x4000)
-#define MII_AM79C874_ANLPAR_RF (0x2000)
-#define MII_AM79C874_ANLPAR_T4 (0x0200)
-#define MII_AM79C874_ANLPAR_TXFD (0x0100)
-#define MII_AM79C874_ANLPAR_TX (0x0080)
-#define MII_AM79C874_ANLPAR_10FD (0x0040)
-#define MII_AM79C874_ANLPAR_10 (0x0020)
-#define MII_AM79C874_ANLPAR_100 (0x0380)
-#define MII_AM79C874_ANLPAR_PSB_MASK (0x001F)
-#define MII_AM79C874_ANLPAR_PSB_802_3 (0x0001)
-#define MII_AM79C874_ANLPAR_PSB_802_9 (0x0002)
-
-/* Bit definitions and macros for MII_AM79C874_DR */
-#define MII_AM79C874_DR_DPLX (0x0800)
-#define MII_AM79C874_DR_DATA_RATE (0x0400)
-#define MII_AM79C874_DR_RX_PASS (0x0200)
-#define MII_AM79C874_DR_RX_LOCK (0x0100)
-
-#define AUTONEGLINK (MII_AM79C874_SR_AUTN_COMP | MII_AM79C874_SR_LS)
-
-/********************************************************************/
-
-#endif /* _AM79C874_H_ */
diff --git a/BaS_gcc/include/arp.h b/BaS_gcc/include/arp.h
deleted file mode 100644
index 9f8a846..0000000
--- a/BaS_gcc/include/arp.h
+++ /dev/null
@@ -1,99 +0,0 @@
-/*
- * File: arp.h
- * Purpose: ARP definitions.
- *
- * Notes:
- */
-
-#ifndef _ARP_H
-#define _ARP_H
-
-/********************************************************************/
-
-/*
- * This data definition is defined for Ethernet only!
- */
-typedef struct
-{
- uint16_t ar_hrd;
- uint16_t ar_pro;
- uint8_t ar_hln;
- uint8_t ar_pln;
- uint16_t opcode;
- uint8_t ar_sha[6]; /* ethernet hw address */
- uint8_t ar_spa[4]; /* ip address */
- uint8_t ar_tha[6]; /* ethernet hw address */
- uint8_t ar_tpa[4]; /* ip address */
-} arp_frame_hdr;
-
-#define ARP_HDR_LEN sizeof(arp_frame_hdr)
-
-/*
- * ARP table entry definition. Note that this table only designed
- * with Ethernet and IP in mind.
- */
-#define MAX_HWA_SIZE (6) /* 6 is enough for Ethernet address */
-#define MAX_PA_SIZE (4) /* 4 is enough for Protocol address */
-typedef struct
-{
- uint16_t protocol;
- uint8_t hwa_size;
- uint8_t hwa[MAX_HWA_SIZE];
- uint8_t pa_size;
- uint8_t pa[MAX_PA_SIZE];
- int longevity;
-} ARPENTRY;
-#define MAX_ARP_ENTRY (10)
-
-typedef struct
-{
- unsigned int tab_size;
- ARPENTRY table[MAX_ARP_ENTRY];
-} ARP_INFO;
-
-#define ARP_ENTRY_EMPTY (0)
-#define ARP_ENTRY_PERM (1)
-#define ARP_ENTRY_TEMP (2)
-
-
-#define ETHERNET (1)
-#define ARP_REQUEST (1)
-#define ARP_REPLY (2)
-
-#define ARP_TIMEOUT (1) /* Timeout in seconds */
-
-/* Protocol Header information */
-#define ARP_HDR_OFFSET ETH_HDR_LEN
-
-/********************************************************************/
-
-uint8_t *
-arp_get_mypa (void);
-
-uint8_t *
-arp_get_myha (void);
-
-uint8_t *
-arp_get_broadcast (void);
-
-void
-arp_merge (ARP_INFO *, uint16_t, int, uint8_t *, int, uint8_t *, int);
-
-void
-arp_remove (ARP_INFO *, uint16_t, uint8_t *, uint8_t *);
-
-void
-arp_request (NIF *, uint8_t *);
-
-void
-arp_handler (NIF *, NBUF *);
-
-uint8_t *
-arp_resolve (NIF *, uint16_t, uint8_t *);
-
-void
-arp_init (ARP_INFO *);
-
-/********************************************************************/
-
-#endif /* _ARP_H */
diff --git a/BaS_gcc/include/ati_ids.h b/BaS_gcc/include/ati_ids.h
deleted file mode 100644
index 13321c6..0000000
--- a/BaS_gcc/include/ati_ids.h
+++ /dev/null
@@ -1,211 +0,0 @@
-/*
- * ATI PCI IDs from XFree86, kept here to make sync'ing with
- * XFree much simpler. Currently, this list is only used by
- * radeonfb
- */
-
-#define PCI_CHIP_RV380_3150 0x3150
-#define PCI_CHIP_RV380_3151 0x3151
-#define PCI_CHIP_RV380_3152 0x3152
-#define PCI_CHIP_RV380_3153 0x3153
-#define PCI_CHIP_RV380_3154 0x3154
-#define PCI_CHIP_RV380_3156 0x3156
-#define PCI_CHIP_RV380_3E50 0x3E50
-#define PCI_CHIP_RV380_3E51 0x3E51
-#define PCI_CHIP_RV380_3E52 0x3E52
-#define PCI_CHIP_RV380_3E53 0x3E53
-#define PCI_CHIP_RV380_3E54 0x3E54
-#define PCI_CHIP_RV380_3E56 0x3E56
-#define PCI_CHIP_RS100_4136 0x4136
-#define PCI_CHIP_RS200_4137 0x4137
-#define PCI_CHIP_R300_AD 0x4144
-#define PCI_CHIP_R300_AE 0x4145
-#define PCI_CHIP_R300_AF 0x4146
-#define PCI_CHIP_R300_AG 0x4147
-#define PCI_CHIP_R350_AH 0x4148
-#define PCI_CHIP_R350_AI 0x4149
-#define PCI_CHIP_R350_AJ 0x414A
-#define PCI_CHIP_R350_AK 0x414B
-#define PCI_CHIP_RV350_AP 0x4150
-#define PCI_CHIP_RV350_AQ 0x4151
-#define PCI_CHIP_RV360_AR 0x4152
-#define PCI_CHIP_RV350_AS 0x4153
-#define PCI_CHIP_RV350_AT 0x4154
-#define PCI_CHIP_RV350_AV 0x4156
-#define PCI_CHIP_MACH32 0x4158
-#define PCI_CHIP_RS250_4237 0x4237
-#define PCI_CHIP_R200_BB 0x4242
-#define PCI_CHIP_R200_BC 0x4243
-#define PCI_CHIP_RS100_4336 0x4336
-#define PCI_CHIP_RS200_4337 0x4337
-#define PCI_CHIP_MACH64CT 0x4354
-#define PCI_CHIP_MACH64CX 0x4358
-#define PCI_CHIP_RS250_4437 0x4437
-#define PCI_CHIP_MACH64ET 0x4554
-#define PCI_CHIP_MACH64GB 0x4742
-#define PCI_CHIP_MACH64GD 0x4744
-#define PCI_CHIP_MACH64GI 0x4749
-#define PCI_CHIP_MACH64GL 0x474C
-#define PCI_CHIP_MACH64GM 0x474D
-#define PCI_CHIP_MACH64GN 0x474E
-#define PCI_CHIP_MACH64GO 0x474F
-#define PCI_CHIP_MACH64GP 0x4750
-#define PCI_CHIP_MACH64GQ 0x4751
-#define PCI_CHIP_MACH64GR 0x4752
-#define PCI_CHIP_MACH64GS 0x4753
-#define PCI_CHIP_MACH64GT 0x4754
-#define PCI_CHIP_MACH64GU 0x4755
-#define PCI_CHIP_MACH64GV 0x4756
-#define PCI_CHIP_MACH64GW 0x4757
-#define PCI_CHIP_MACH64GX 0x4758
-#define PCI_CHIP_MACH64GY 0x4759
-#define PCI_CHIP_MACH64GZ 0x475A
-#define PCI_CHIP_RV250_Id 0x4964
-#define PCI_CHIP_RV250_Ie 0x4965
-#define PCI_CHIP_RV250_If 0x4966
-#define PCI_CHIP_RV250_Ig 0x4967
-#define PCI_CHIP_R420_JH 0x4A48
-#define PCI_CHIP_R420_JI 0x4A49
-#define PCI_CHIP_R420_JJ 0x4A4A
-#define PCI_CHIP_R420_JK 0x4A4B
-#define PCI_CHIP_R420_JL 0x4A4C
-#define PCI_CHIP_R420_JM 0x4A4D
-#define PCI_CHIP_R420_JN 0x4A4E
-#define PCI_CHIP_R420_JP 0x4A50
-#define PCI_CHIP_MACH64LB 0x4C42
-#define PCI_CHIP_MACH64LD 0x4C44
-#define PCI_CHIP_RAGE128LE 0x4C45
-#define PCI_CHIP_RAGE128LF 0x4C46
-#define PCI_CHIP_MACH64LG 0x4C47
-#define PCI_CHIP_MACH64LI 0x4C49
-#define PCI_CHIP_MACH64LM 0x4C4D
-#define PCI_CHIP_MACH64LN 0x4C4E
-#define PCI_CHIP_MACH64LP 0x4C50
-#define PCI_CHIP_MACH64LQ 0x4C51
-#define PCI_CHIP_MACH64LR 0x4C52
-#define PCI_CHIP_MACH64LS 0x4C53
-#define PCI_CHIP_MACH64LT 0x4C54
-#define PCI_CHIP_RADEON_LW 0x4C57
-#define PCI_CHIP_RADEON_LX 0x4C58
-#define PCI_CHIP_RADEON_LY 0x4C59
-#define PCI_CHIP_RADEON_LZ 0x4C5A
-#define PCI_CHIP_RV250_Ld 0x4C64
-#define PCI_CHIP_RV250_Le 0x4C65
-#define PCI_CHIP_RV250_Lf 0x4C66
-#define PCI_CHIP_RV250_Lg 0x4C67
-#define PCI_CHIP_RV250_Ln 0x4C6E
-#define PCI_CHIP_RAGE128MF 0x4D46
-#define PCI_CHIP_RAGE128ML 0x4D4C
-#define PCI_CHIP_R300_ND 0x4E44
-#define PCI_CHIP_R300_NE 0x4E45
-#define PCI_CHIP_R300_NF 0x4E46
-#define PCI_CHIP_R300_NG 0x4E47
-#define PCI_CHIP_R350_NH 0x4E48
-#define PCI_CHIP_R350_NI 0x4E49
-#define PCI_CHIP_R360_NJ 0x4E4A
-#define PCI_CHIP_R350_NK 0x4E4B
-#define PCI_CHIP_RV350_NP 0x4E50
-#define PCI_CHIP_RV350_NQ 0x4E51
-#define PCI_CHIP_RV350_NR 0x4E52
-#define PCI_CHIP_RV350_NS 0x4E53
-#define PCI_CHIP_RV350_NT 0x4E54
-#define PCI_CHIP_RV350_NV 0x4E56
-#define PCI_CHIP_RAGE128PA 0x5041
-#define PCI_CHIP_RAGE128PB 0x5042
-#define PCI_CHIP_RAGE128PC 0x5043
-#define PCI_CHIP_RAGE128PD 0x5044
-#define PCI_CHIP_RAGE128PE 0x5045
-#define PCI_CHIP_RAGE128PF 0x5046
-#define PCI_CHIP_RAGE128PG 0x5047
-#define PCI_CHIP_RAGE128PH 0x5048
-#define PCI_CHIP_RAGE128PI 0x5049
-#define PCI_CHIP_RAGE128PJ 0x504A
-#define PCI_CHIP_RAGE128PK 0x504B
-#define PCI_CHIP_RAGE128PL 0x504C
-#define PCI_CHIP_RAGE128PM 0x504D
-#define PCI_CHIP_RAGE128PN 0x504E
-#define PCI_CHIP_RAGE128PO 0x504F
-#define PCI_CHIP_RAGE128PP 0x5050
-#define PCI_CHIP_RAGE128PQ 0x5051
-#define PCI_CHIP_RAGE128PR 0x5052
-#define PCI_CHIP_RAGE128PS 0x5053
-#define PCI_CHIP_RAGE128PT 0x5054
-#define PCI_CHIP_RAGE128PU 0x5055
-#define PCI_CHIP_RAGE128PV 0x5056
-#define PCI_CHIP_RAGE128PW 0x5057
-#define PCI_CHIP_RAGE128PX 0x5058
-#define PCI_CHIP_RADEON_QD 0x5144
-#define PCI_CHIP_RADEON_QE 0x5145
-#define PCI_CHIP_RADEON_QF 0x5146
-#define PCI_CHIP_RADEON_QG 0x5147
-#define PCI_CHIP_R200_QH 0x5148
-#define PCI_CHIP_R200_QI 0x5149
-#define PCI_CHIP_R200_QJ 0x514A
-#define PCI_CHIP_R200_QK 0x514B
-#define PCI_CHIP_R200_QL 0x514C
-#define PCI_CHIP_R200_QM 0x514D
-#define PCI_CHIP_R200_QN 0x514E
-#define PCI_CHIP_R200_QO 0x514F
-#define PCI_CHIP_RV200_QW 0x5157
-#define PCI_CHIP_RV200_QX 0x5158
-#define PCI_CHIP_RV100_QY 0x5159
-#define PCI_CHIP_RV100_QZ 0x515A
-#define PCI_CHIP_RAGE128RE 0x5245
-#define PCI_CHIP_RAGE128RF 0x5246
-#define PCI_CHIP_RAGE128RG 0x5247
-#define PCI_CHIP_RAGE128RK 0x524B
-#define PCI_CHIP_RAGE128RL 0x524C
-#define PCI_CHIP_RAGE128SE 0x5345
-#define PCI_CHIP_RAGE128SF 0x5346
-#define PCI_CHIP_RAGE128SG 0x5347
-#define PCI_CHIP_RAGE128SH 0x5348
-#define PCI_CHIP_RAGE128SK 0x534B
-#define PCI_CHIP_RAGE128SL 0x534C
-#define PCI_CHIP_RAGE128SM 0x534D
-#define PCI_CHIP_RAGE128SN 0x534E
-#define PCI_CHIP_RAGE128TF 0x5446
-#define PCI_CHIP_RAGE128TL 0x544C
-#define PCI_CHIP_RAGE128TR 0x5452
-#define PCI_CHIP_RAGE128TS 0x5453
-#define PCI_CHIP_RAGE128TT 0x5454
-#define PCI_CHIP_RAGE128TU 0x5455
-#define PCI_CHIP_RV370_5460 0x5460
-#define PCI_CHIP_RV370_5461 0x5461
-#define PCI_CHIP_RV370_5462 0x5462
-#define PCI_CHIP_RV370_5463 0x5463
-#define PCI_CHIP_RV370_5464 0x5464
-#define PCI_CHIP_RV370_5465 0x5465
-#define PCI_CHIP_RV370_5466 0x5466
-#define PCI_CHIP_RV370_5467 0x5467
-#define PCI_CHIP_R423_UH 0x5548
-#define PCI_CHIP_R423_UI 0x5549
-#define PCI_CHIP_R423_UJ 0x554A
-#define PCI_CHIP_R423_UK 0x554B
-#define PCI_CHIP_R423_UQ 0x5551
-#define PCI_CHIP_R423_UR 0x5552
-#define PCI_CHIP_R423_UT 0x5554
-#define PCI_CHIP_MACH64VT 0x5654
-#define PCI_CHIP_MACH64VU 0x5655
-#define PCI_CHIP_MACH64VV 0x5656
-#define PCI_CHIP_RS300_5834 0x5834
-#define PCI_CHIP_RS300_5835 0x5835
-#define PCI_CHIP_RS300_5836 0x5836
-#define PCI_CHIP_RS300_5837 0x5837
-#define PCI_CHIP_RV370_5B60 0x5B60
-#define PCI_CHIP_RV370_5B61 0x5B61
-#define PCI_CHIP_RV370_5B62 0x5B62
-#define PCI_CHIP_RV370_5B63 0x5B63
-#define PCI_CHIP_RV370_5B64 0x5B64
-#define PCI_CHIP_RV370_5B65 0x5B65
-#define PCI_CHIP_RV370_5B66 0x5B66
-#define PCI_CHIP_RV370_5B67 0x5B67
-#define PCI_CHIP_RV280_5960 0x5960
-#define PCI_CHIP_RV280_5961 0x5961
-#define PCI_CHIP_RV280_5962 0x5962
-#define PCI_CHIP_RV280_5964 0x5964
-#define PCI_CHIP_RV280_5C61 0x5C61
-#define PCI_CHIP_RV280_5C63 0x5C63
-#define PCI_CHIP_R423_5D57 0x5D57
-#define PCI_CHIP_RS350_7834 0x7834
-#define PCI_CHIP_RS350_7835 0x7835
-
diff --git a/BaS_gcc/include/bas_printf.h b/BaS_gcc/include/bas_printf.h
deleted file mode 100644
index 9d6d708..0000000
--- a/BaS_gcc/include/bas_printf.h
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- */
-
-#ifndef _BAS_PRINTF_H_
-#define _BAS_PRINTF_H_
-#include
-#include
-#include "MCF5475.h"
-
-extern void xvsnprintf(char *str, size_t size, const char *fmt, va_list va);
-extern void xvprintf(const char *fmt, va_list va);
-extern void xprintf(const char *fmt, ...);
-extern void xsnprintf(char *str, size_t size, const char *fmt, ...);
-extern int sprintf(char *str, const char *format, ...);
-
-extern bool conoutstat(void);
-extern bool coninstat(void);
-extern void xputchar(int c);
-extern char xgetchar(void);
-
-
-extern void display_progress(void);
-extern void hexdump(uint8_t buffer[], int size);
-
-
-#endif /* _BAS_PRINTF_H_ */
diff --git a/BaS_gcc/include/bas_string.h b/BaS_gcc/include/bas_string.h
deleted file mode 100644
index d2430fd..0000000
--- a/BaS_gcc/include/bas_string.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * bas_string.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef BAS_STRING_H_
-#define BAS_STRING_H_
-
-#include
-
-extern int strncmp(const char *s1, const char *s2, size_t max);
-extern char *strcpy(char *dst, const char *src);
-char *strncpy(char *dst, const char *src, size_t max);
-extern int strcmp(const char *s1, const char *s2);
-extern size_t strlen(const char *str);
-extern char *strcat(char *dst, const char *src);
-extern char *strncat(char *dst, const char *src, size_t max);
-extern int atoi(const char *c);
-extern void *memcpy(void *dst, const void *src, size_t n);
-extern void *memmove(void *dst, const void *src, size_t n);
-extern void *memset(void *s, int c, size_t n);
-extern int memcmp(const void *s1, const void *s2, size_t max);
-extern void bzero(void *s, size_t n);
-
-#define isdigit(c) (((c) >= '0') && ((c) <= '9'))
-#define isupper(c) ((c) >= 'A' && ((c) <= 'Z'))
-#define islower(c) ((c) >= 'a' && ((c) <= 'z'))
-#define isalpha(c) (isupper((c)) || islower(c))
-#define tolower(c) (isupper(c) ? ((c) + 'a' - 'A') : (c))
-
-#endif /* BAS_STRING_H_ */
diff --git a/BaS_gcc/include/bas_types.h b/BaS_gcc/include/bas_types.h
deleted file mode 100644
index 4f692a1..0000000
--- a/BaS_gcc/include/bas_types.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * bas_types.h
- *
- * Created on: 17.11.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef BAS_TYPES_H_
-#define BAS_TYPES_H_
-
-#include
-#include
-#include /* for sizeof() etc. */
-
-#endif /* BAS_TYPES_H_ */
diff --git a/BaS_gcc/include/bas_utils.h b/BaS_gcc/include/bas_utils.h
deleted file mode 100644
index ae3499e..0000000
--- a/BaS_gcc/include/bas_utils.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * bas_utils.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _BAS_UTILS_H_
-#define _BAS_UTILS_H_
-
-#define CLEAR_BIT(p,bit) p &= ~(bit)
-#define CLEAR_BIT_NO(p,nr) CLEAR_BIT(p, (1 << (nr)))
-
-extern void write_pic_byte(uint8_t value);
-extern uint8_t read_pic_byte(void);
-
-#endif /* _BAS_UTILS_H_ */
diff --git a/BaS_gcc/include/bcm5222.h b/BaS_gcc/include/bcm5222.h
deleted file mode 100644
index f7dc81e..0000000
--- a/BaS_gcc/include/bcm5222.h
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * File: bcm5222.h
- * Purpose: Driver for the BCM5222 10/100 Ethernet PHY
- *
- * Notes:
- */
-
-#ifndef _BCM5222_H_
-#define _BCM5222_H_
-
-extern int bcm5222_init(uint8_t, uint8_t, uint8_t, uint8_t);
-extern void bcm5222_get_reg(uint16_t*, uint16_t*);
-
-/********************************************************************/
-
-/* MII Register Addresses */
-#define BCM5222_CTRL (0x00)
-#define BCM5222_STAT (0x01)
-#define BCM5222_PHY_ID1 (0x02)
-#define BCM5222_PHY_ID2 (0x03)
-#define BCM5222_AN_ADV (0x04)
-#define BCM5222_AN_LINK_PAR (0x05)
-#define BCM5222_AN_EXP (0x06)
-#define BCM5222_AN_NPR (0x07)
-#define BCM5222_LINK_NPA (0x08)
-#define BCM5222_ACSR (0x18)
-
-/* Bit definitions and macros for BCM5222_CTRL */
-#define BCM5222_CTRL_RESET (0x8000)
-#define BCM5222_CTRL_LOOP (0x4000)
-#define BCM5222_CTRL_SPEED (0x2000)
-#define BCM5222_CTRL_ANE (0x1000)
-#define BCM5222_CTRL_PD (0x0800)
-#define BCM5222_CTRL_ISOLATE (0x0400)
-#define BCM5222_CTRL_RESTART_AN (0x0200)
-#define BCM5222_CTRL_FDX (0x0100)
-#define BCM5222_CTRL_COL_TEST (0x0080)
-
-
-/* Bit definitions and macros for BCM5222_STAT */
-#define BCM5222_STAT_100BT4 (0x8000)
-#define BCM5222_STAT_100BTX_FDX (0x4000)
-#define BCM5222_STAT_100BTX (0x2000)
-#define BCM5222_STAT_10BT_FDX (0x1000)
-#define BCM5222_STAT_10BT (0x0800)
-#define BCM5222_STAT_NO_PREAMBLE (0x0040)
-#define BCM5222_STAT_AN_COMPLETE (0x0020)
-#define BCM5222_STAT_REMOTE_FAULT (0x0010)
-#define BCM5222_STAT_AN_ABILITY (0x0008)
-#define BCM5222_STAT_LINK (0x0004)
-#define BCM5222_STAT_JABBER (0x0002)
-#define BCM5222_STAT_EXTENDED (0x0001)
-
-/* Bit definitions and macros for BCM5222_AN_ADV */
-#define BCM5222_AN_ADV_NEXT_PAGE (0x8001)
-#define BCM5222_AN_ADV_REM_FAULT (0x2001)
-#define BCM5222_AN_ADV_PAUSE (0x0401)
-#define BCM5222_AN_ADV_100BT4 (0x0201)
-#define BCM5222_AN_ADV_100BTX_FDX (0x0101)
-#define BCM5222_AN_ADV_100BTX (0x0081)
-#define BCM5222_AN_ADV_10BT_FDX (0x0041)
-#define BCM5222_AN_ADV_10BT (0x0021)
-#define BCM5222_AN_ADV_802_3 (0x0001)
-
-/* Bit definitions and macros for BCM5222_ACSR */
-#define BCM5222_ACSR_100BTX (0x0002)
-#define BCM5222_ACSR_FDX (0x0001)
-
-/********************************************************************/
-
-#endif /* _BCM5222_H_ */
diff --git a/BaS_gcc/include/bootp.h b/BaS_gcc/include/bootp.h
deleted file mode 100644
index ec62e40..0000000
--- a/BaS_gcc/include/bootp.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * File: bootp.h
- * Purpose: BOOTP definitions.
- *
- * Notes:
- */
-
-#ifndef _BOOTP_H_
-#define _BOOTP_H_
-
-#define BOOTP_SERVER_PORT 67
-#define BOOTP_CLIENT_PORT 68
-
-/* protocol header information */
-#define BOOTP_HDR_OFFSET (ETH_HDR_LEN + IP_HDR_SIZE + UDP_HDR_SIZE)
-
-/* timeout in seconds */
-#define BOOTP_TIMEOUT 2
-
-/* BOOTP connection status */
-
-struct bootp_connection
-{
- bool open; /* connection established flag */
- NIF *nif; /* pointer to network interface */
- IP_ADDR server_ip; /* server IP address */
-};
-
-/*
- * This data definition is defined for Ethernet only!
- */
-struct bootp_packet
-{
- uint8_t type; /* bootp operation type */
- uint8_t htype; /* hardware type */
- uint8_t hlen; /* hardware address length */
- uint8_t hops; /* hops */
- uint32_t xid; /* transaction identifier */
- uint16_t secs; /* seconds since trying to boot */
- uint16_t flags; /* only broadcast flag in use */
- uint32_t cl_addr; /* client ip address. Set to all 0 on request */
- uint32_t yi_addr; /* this field contains the new IP */
- uint32_t gi_addr; /* gateway address */
- uint8_t ch_addr[16]; /* client hw address */
- uint8_t sname[64]; /* server name */
- uint8_t file[128]; /* name of bootfile */
- uint8_t vend[64]; /* vendor specific (see below) */
-};
-
-#define BOOTP_PACKET_LEN (BOOTP_HDR_OFFSET + sizeof(struct bootp_packet))
-
-/* possible values for type field */
-#define BOOTP_TYPE_BOOTREQUEST 1
-#define BOOTP_TYPE_BOOTREPLY 2
-
-/* values for hardware type - we only use ethernet */
-#define BOOTP_HTYPE_ETHERNET 1
-
-/* values for hlen - again only ethernet defined */
-#define BOOTP_HLEN_ETHERNET 6
-
-/* values for flags - only broadcast flag in use */
-#define BOOTP_FLAGS_BROADCAST 1
-
-extern void bootp_request(NIF *, uint8_t *);
-extern void bootp_handler(NIF *, NBUF *);
-//extern void bootp_init(BOOTP_INFO *);
-
-#endif /* _BOOTP_H_ */
diff --git a/BaS_gcc/include/cache.h b/BaS_gcc/include/cache.h
deleted file mode 100644
index d852d74..0000000
--- a/BaS_gcc/include/cache.h
+++ /dev/null
@@ -1,89 +0,0 @@
-#ifndef _CACHE_H_
-#define _CACHE_H_
-
-/*
- * cache.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#include
-
-/*
- * CACR Cache Control Register
- */
-#define CF_CACR_DEC (0x80000000) /* Data Cache Enable */
-#define CF_CACR_DW (0x40000000) /* Data default Write-protect */
-#define CF_CACR_DESB (0x20000000) /* Data Enable Store Buffer */
-#define CF_CACR_DPI (0x10000000) /* Data Disable CPUSHL Invalidate */
-#define CF_CACR_DHLCK (0x08000000) /* 1/2 Data Cache Lock Mode */
-#define CF_CACR_DDCM_00 (0x00000000) /* Cacheable writethrough imprecise */
-#define CF_CACR_DDCM_01 (0x02000000) /* Cacheable copyback */
-#define CF_CACR_DDCM_10 (0x04000000) /* Noncacheable precise */
-#define CF_CACR_DDCM_11 (0x06000000) /* Noncacheable imprecise */
-#define CF_CACR_DCINVA (0x01000000) /* Data Cache Invalidate All */
-#define CF_CACR_DDSP (0x00800000) /* Data default supervisor-protect */
-#define CF_CACR_IVO (0x00100000) /* Invalidate only */
-#define CF_CACR_BEC (0x00080000) /* Branch Cache Enable */
-#define CF_CACR_BCINVA (0x00040000) /* Branch Cache Invalidate All */
-#define CF_CACR_IEC (0x00008000) /* Instruction Cache Enable */
-#define CF_CACR_SPA (0x00004000) /* Search by Physical Address */
-#define CF_CACR_DNFB (0x00002000) /* Default cache-inhibited fill buf */
-#define CF_CACR_IDPI (0x00001000) /* Instr Disable CPUSHL Invalidate */
-#define CF_CACR_IHLCK (0x00000800) /* 1/2 Instruction Cache Lock Mode */
-#define CF_CACR_IDCM (0x00000400) /* Noncacheable Instr default mode */
-#define CF_CACR_ICINVA (0x00000100) /* Instr Cache Invalidate All */
-#define CF_CACR_IDSP (0x00000080) /* Ins default supervisor-protect */
-#define CF_CACR_EUSP (0x00000020) /* Switch stacks in user mode */
-#define CF_CACR_DF (0x00000010) /* Disable FPU */
-
-#define _DCACHE_SET_MASK ((DCACHE_SIZE / 64 - 1) << CACHE_WAYS)
-#define _ICACHE_SET_MASK ((ICACHE_SIZE / 64 - 1) << CACHE_WAYS)
-#define LAST_DCACHE_ADDR _DCACHE_SET_MASK
-#define LAST_ICACHE_ADDR _ICACHE_SET_MASK
-
-#define ICACHE_SIZE 0x8000 /* instruction - 32k */
-#define DCACHE_SIZE 0x8000 /* data - 32k */
-
-#define CACHE_LINE_SIZE 0x0010 /* 16 bytes */
-#define CACHE_SETS 0x0200 /* 512 sets */
-#define CACHE_WAYS 0x0004 /* 4 way */
-
-
-#define CACHE_DISABLE_MODE (CF_CACR_DCINVA + \
- CF_CACR_BCINVA + \
- CF_CACR_ICINVA)
-
-#define CACHE_INITIAL_MODE (CF_CACR_DEC + \
- CF_CACR_BEC + \
- CF_CACR_IEC + \
- CF_CACR_DESB + \
- CF_CACR_EUSP)
-
-extern void flush_and_invalidate_caches(void);
-extern uint32_t cacr_get(void);
-extern void cacr_set(uint32_t);
-extern void flush_icache_range(void *address, size_t size);
-extern void flush_dcache_range(void *address, size_t size);
-extern void flush_cache_range(void *address, size_t size);
-
-
-#endif /* _CACHE_H_ */
diff --git a/BaS_gcc/include/conout.h b/BaS_gcc/include/conout.h
deleted file mode 100755
index 1785948..0000000
--- a/BaS_gcc/include/conout.h
+++ /dev/null
@@ -1,63 +0,0 @@
-#ifndef __CONOUT_H__
-#define __CONOUT_H__
-
-#include "bas_types.h"
-
-/*
- * conout.h - lowlevel color model dependent screen handling routines
- *
- *
- * Copyright (C) 2004-2016 by Authors:
- *
- * Authors:
- * MAD Martin Doering
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-
-
-/* Defines for cursor */
-#define M_CFLASH 0x0001 /* cursor flash 0:disabled 1:enabled */
-#define M_CSTATE 0x0002 /* cursor flash state 0:off 1:on */
-#define M_CVIS 0x0004 /* cursor visibility 0:invisible 1:visible */
-
-/*
- * The visibility flag is also used as a semaphore to prevent
- * the interrupt-driven cursor blink logic from colliding with
- * escape function/sequence cursor drawing activity.
- */
-
-#define M_CEOL 0x0008 /* end of line handling 0:overwrite 1:wrap */
-#define M_REVID 0x0010 /* reverse video 0:on 1:off */
-#define M_SVPOS 0x0020 /* position saved flag. 0:false, 1:true */
-#define M_CRIT 0x0040 /* reverse video 0:on 1:off */
-
-/* Color related linea variables */
-
-extern int16_t v_col_bg; /* current background color */
-extern int16_t v_col_fg; /* current foreground color */
-
-/* Cursor related linea variables */
-
-extern uint8_t *v_cur_ad; /* current cursor address */
-extern int16_t v_cur_of; /* cursor offset */
-extern int8_t v_cur_tim; /* cursor blink timer */
-
-extern int8_t v_period;
-extern int16_t disab_cnt; /* disable depth count. (>0 means disabled) */
-extern int8_t v_stat_0; /* video cell system status */
-extern int16_t sav_cur_x; /* saved cursor cell x */
-extern int16_t sav_cur_y; /* saved cursor cell y */
-
-/* Prototypes */
-
-extern void ascii_out(int);
-extern void move_cursor(int, int);
-extern void blank_out (int, int, int, int);
-extern void invert_cell(int, int);
-extern void scroll_up(int);
-extern void scroll_down(int);
-
-#endif /* __CONOUT_H__ */
diff --git a/BaS_gcc/include/debug.h b/BaS_gcc/include/debug.h
deleted file mode 100644
index c0b0e26..0000000
--- a/BaS_gcc/include/debug.h
+++ /dev/null
@@ -1,16 +0,0 @@
-#ifndef DEBUG_H
-// #define DEBUG_H
-
-#ifdef DEBUG
-#include "bas_types.h"
-#include "bas_printf.h"
-
-#define dbg(format, arg...) do { xprintf("DEBUG (%s()): " format, __FUNCTION__, ##arg);} while(0)
-#else
-#define dbg(format, arg...) do {;} while (0)
-#endif /* DEBUG */
-#define err(format, arg...) do { xprintf("ERROR (%s()): " format, __FUNCTION__, ##arg); } while(0)
-#define inf(format, arg...) do { xprintf("" format, ##arg); } while(0)
-
-#endif // DEBUG_H
-
diff --git a/BaS_gcc/include/diskio.h b/BaS_gcc/include/diskio.h
deleted file mode 100644
index 0fb3ac5..0000000
--- a/BaS_gcc/include/diskio.h
+++ /dev/null
@@ -1,91 +0,0 @@
-/*-----------------------------------------------------------------------
-/ Low level disk interface modlue include file (C)ChaN, 2012
-/-----------------------------------------------------------------------*/
-
-#ifndef _DISKIO_DEFINED
-#define _DISKIO_DEFINED
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#define _USE_WRITE 1 /* 1: Enable disk_write function */
-#define _USE_IOCTL 1 /* 1: Enable disk_ioctl fucntion */
-
-#include
-
-
-/* Status of Disk Functions */
-typedef uint8_t DSTATUS;
-
-/* Results of Disk Functions */
-typedef enum {
- RES_OK = 0, /* 0: Successful */
- RES_ERROR, /* 1: R/W Error */
- RES_WRPRT, /* 2: Write Protected */
- RES_NOTRDY, /* 3: Not Ready */
- RES_PARERR /* 4: Invalid Parameter */
-} DRESULT;
-
-
-/*---------------------------------------*/
-/* Prototypes for disk control functions */
-
-
-DSTATUS disk_initialize (uint8_t);
-DSTATUS disk_reset(uint8_t);
-DSTATUS disk_status (uint8_t);
-DRESULT disk_read (uint8_t, uint8_t*, uint32_t, uint8_t);
-#if _READONLY == 0
-DRESULT disk_write (uint8_t, const uint8_t*, uint32_t, uint8_t);
-#endif
-DRESULT disk_ioctl (uint8_t, uint8_t, void*);
-
-
-/* Disk Status Bits (DSTATUS) */
-#define STA_NOINIT 0x01 /* Drive not initialized */
-#define STA_NODISK 0x02 /* No medium in the drive */
-#define STA_PROTECT 0x04 /* Write protected */
-
-
-/* Command code for disk_ioctrl fucntion */
-
-/* Generic command (used by FatFs) */
-#define CTRL_SYNC 0 /* Flush disk cache (for write functions) */
-#define GET_SECTOR_COUNT 1 /* Get media size (for only f_mkfs()) */
-#define GET_SECTOR_SIZE 2 /* Get sector size (for multiple sector size (_MAX_SS >= 1024)) */
-#define GET_BLOCK_SIZE 3 /* Get erase block size (for only f_mkfs()) */
-#define CTRL_ERASE_SECTOR 4 /* Force erased a block of sectors (for only _USE_ERASE) */
-
-/* Generic command (not used by FatFs) */
-#define CTRL_POWER 5 /* Get/Set power status */
-#define CTRL_LOCK 6 /* Lock/Unlock media removal */
-#define CTRL_EJECT 7 /* Eject media */
-#define CTRL_FORMAT 8 /* Create physical format on the media */
-
-/* MMC/SDC specific ioctl command */
-#define MMC_GET_TYPE 10 /* Get card type */
-#define MMC_GET_CSD 11 /* Get CSD */
-#define MMC_GET_CID 12 /* Get CID */
-#define MMC_GET_OCR 13 /* Get OCR */
-#define MMC_GET_SDSTAT 14 /* Get SD status */
-
-/* ATA/CF specific ioctl command */
-#define ATA_GET_REV 20 /* Get F/W revision */
-#define ATA_GET_MODEL 21 /* Get model name */
-#define ATA_GET_SN 22 /* Get serial number */
-
-
-/* MMC card type flags (MMC_GET_TYPE) */
-#define CT_MMC 0x01 /* MMC ver 3 */
-#define CT_SD1 0x02 /* SD ver 1 */
-#define CT_SD2 0x04 /* SD ver 2 */
-#define CT_SDC (CT_SD1 | CT_SD2) /* SD */
-#define CT_BLOCK 0x08 /* Block addressing */
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif
diff --git a/BaS_gcc/include/dma.h b/BaS_gcc/include/dma.h
deleted file mode 100644
index 2776b28..0000000
--- a/BaS_gcc/include/dma.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * spidma.h *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DMA_H_
-#define _DMA_H_
-
-#include "MCF5475.h"
-#include "MCD_dma.h"
-#include "bas_string.h"
-
-void *dma_memcpy(void *dst, void *src, size_t n);
-extern int dma_init(void);
-extern int dma_get_channel(int requestor);
-extern int dma_set_channel(int, void (*)(void));
-extern void dma_free_channel(int requestor);
-extern void dma_clear_channel(int channel);
-extern uint32_t dma_get_initiator(int requestor);
-extern int dma_set_initiator(int initiator);
-extern void dma_free_initiator(int initiator);
-extern void dma_irq_enable(void);
-extern void dma_irq_disable(void);
-extern bool dma_interrupt_handler(void *arg1, void *arg2);
-
-
-#endif /* _DMA_H_ */
diff --git a/BaS_gcc/include/driver_mem.h b/BaS_gcc/include/driver_mem.h
deleted file mode 100644
index a08d0f3..0000000
--- a/BaS_gcc/include/driver_mem.h
+++ /dev/null
@@ -1,15 +0,0 @@
-#ifndef _DRIVER_MEM_H_
-#define _DRIVER_MEM_H_
-
-#include "bas_types.h"
-
-/*
- * the driver_mem module provides a block of _uncached_ memory for USB and other drivers as
- * well as some memory handling functions for it
- */
-extern int driver_mem_init(void);
-extern void *driver_mem_alloc(uint32_t amount);
-extern int32_t driver_mem_free(void *addr);
-extern void driver_mem_release(void);
-
-#endif /* _DRIVER_MEM_H_ */
diff --git a/BaS_gcc/include/driver_vec.h b/BaS_gcc/include/driver_vec.h
deleted file mode 100644
index 57650f2..0000000
--- a/BaS_gcc/include/driver_vec.h
+++ /dev/null
@@ -1,216 +0,0 @@
-/*
- * driver_vec.h
- *
- * Interface for exposure of BaS drivers to the OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DRIVER_VEC_H_
-#define _DRIVER_VEC_H_
-
-#include "xhdi_sd.h"
-#include "MCD_dma.h"
-#include "pci.h"
-#include "fb.h"
-
-enum driver_type
-{
- BLOCKDEV_DRIVER,
- CHARDEV_DRIVER,
- XHDI_DRIVER,
- MCD_DRIVER,
- VIDEO_DRIVER,
- PCI_DRIVER,
- MMU_DRIVER,
- PCI_NATIVE_DRIVER,
- END_OF_DRIVERS = 0xffffffffL, /* marks end of driver list */
-};
-
-struct generic_driver_interface
-{
- uint32_t (*init)(void);
- uint32_t (*read)(void *buf, size_t count);
- uint32_t (*write)(const void *buf, size_t count);
- uint32_t (*ioctl)(uint32_t request, ...);
-};
-
-struct dma_driver_interface
-{
- int32_t version;
- int32_t magic;
- int (*dma_set_initiator)(int initiator);
- uint32_t (*dma_get_initiator)(int requestor);
- void (*dma_free_initiator)(int requestor);
- int (*dma_set_channel)(int requestor, void (*handler)(void));
- int (*dma_get_channel)(int requestor);
- void (*dma_free_channel)(int requestor);
- void (*dma_clear_channel)(int channel);
- int (*MCD_startDma)(long channel,
- int8_t *srcAddr, unsigned int srcIncr, int8_t *destAddr, unsigned int destIncr,
- unsigned int dmaSize, unsigned int xferSize, unsigned int initiator, int priority,
- unsigned int flags, unsigned int funcDesc);
- int32_t (*MCD_dmaStatus)(int32_t channel);
- int32_t (*MCD_XferProgrQuery)(int32_t channel, MCD_XferProg *progRep);
- int32_t (*MCD_killDma)(int32_t channel);
- int32_t (*MCD_continDma)(int32_t channel);
- int32_t (*MCD_pauseDma)(int32_t channel);
- int32_t (*MCD_resumeDma)(int32_t channel);
- int32_t (*MCD_csumQuery)(int32_t channel, uint32_t *csum);
- void *(*dma_malloc)(uint32_t amount);
- int32_t (*dma_free)(void *addr);
-};
-
-struct xhdi_driver_interface
-{
- uint32_t (*xhdivec)();
-};
-
-
-
-struct framebuffer_driver_interface
-{
- struct fb_info **framebuffer_info; /* pointer to an fb_info struct (defined in include/fb.h) */
-};
-
-struct pci_bios_interface
-{
- uint32_t subjar;
- uint32_t version;
- /* Although we declare this functions as standard gcc functions (cdecl),
- * they expect parameters inside registers (fastcall) unsupported by gcc m68k.
- * Caller will take care of parameters passing convention.
- */
- int32_t (*find_pci_device)(uint32_t id, uint16_t index);
- int32_t (*find_pci_classcode)(uint32_t class, uint16_t index);
- int32_t (*read_config_byte)(int32_t handle, uint16_t reg, uint8_t *address);
- int32_t (*read_config_word)(int32_t handle, uint16_t reg, uint16_t *address);
- int32_t (*read_config_longword)(int32_t handle, uint16_t reg, uint32_t *address);
- uint8_t (*fast_read_config_byte)(int32_t handle, uint16_t reg);
- uint16_t (*fast_read_config_word)(int32_t handle, uint16_t reg);
- uint32_t (*fast_read_config_longword)(int32_t handle, uint16_t reg);
- int32_t (*write_config_byte)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_word)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_longword)(int32_t handle, uint16_t reg, uint32_t val);
- int32_t (*hook_interrupt)(int32_t handle, uint32_t *routine, uint32_t *parameter);
- int32_t (*unhook_interrupt)(int32_t handle);
- int32_t (*special_cycle)(uint16_t bus, uint32_t data);
- int32_t (*get_routing)(int32_t handle);
- int32_t (*set_interrupt)(int32_t handle);
- int32_t (*get_resource)(int32_t handle);
- int32_t (*get_card_used)(int32_t handle, uint32_t *address);
- int32_t (*set_card_used)(int32_t handle, uint32_t *callback);
- int32_t (*read_mem_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_mem_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_mem_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_mem_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_mem_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_mem_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_mem_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*read_io_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_io_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_io_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_io_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_io_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_io_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_io_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*get_machine_id)(void);
- int32_t (*get_pagesize)(void);
- int32_t (*virt_to_bus)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*bus_to_virt)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*virt_to_phys)(uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*phys_to_virt)(uint32_t address, PCI_CONV_ADR *pointer);
- // int32_t reserved[2];
-};
-
-struct mmu_driver_interface
-{
- uint32_t (*map_page_locked)(uint32_t address, uint32_t length, int asid);
- uint32_t (*unlock_page)(uint32_t address, uint32_t length, int asid);
- uint32_t (*report_locked_pages)(uint32_t *num_itlb, uint32_t *num_dtlb);
- uint32_t (*report_pagesize)(void);
-};
-
-struct pci_native_driver_interface_0_1
-{
- uint32_t (*pci_read_config_longword)(int32_t handle, int offset);
- uint16_t (*pci_read_config_word)(int32_t handle, int offset);
- uint8_t (*pci_read_config_byte)(int32_t handle, int offset);
-
- int32_t (*pci_write_config_longword)(int32_t handle, int offset, uint32_t value);
- int32_t (*pci_write_config_word)(int32_t handle, int offset, uint16_t value);
- int32_t (*pci_write_config_byte)(int32_t handle, int offset, uint8_t value);
- int32_t (*pci_hook_interrupt)(int32_t handle, void *handler, void *parameter);
- int32_t (*pci_unhook_interrupt)(int32_t handle);
-
- struct pci_rd * (*pci_get_resource)(int32_t handle);
-};
-
-struct pci_native_driver_interface
-{
- uint32_t (*pci_read_config_longword)(int32_t handle, int offset);
- uint16_t (*pci_read_config_word)(int32_t handle, int offset);
- uint8_t (*pci_read_config_byte)(int32_t handle, int offset);
-
- int32_t (*pci_write_config_longword)(int32_t handle, int offset, uint32_t value);
- int32_t (*pci_write_config_word)(int32_t handle, int offset, uint16_t value);
- int32_t (*pci_write_config_byte)(int32_t handle, int offset, uint8_t value);
- int32_t (*pci_hook_interrupt)(int32_t handle, void *handler, void *parameter);
- int32_t (*pci_unhook_interrupt)(int32_t handle);
- int32_t (*pci_find_device)(uint16_t device_id, uint16_t vendor_id, int index);
- int32_t (*pci_find_classcode)(uint32_t classcode, int index);
- struct pci_rd * (*pci_get_resource)(int32_t handle);
-};
-
-union interface
-{
- struct generic_driver_interface *gdi;
- struct xhdi_driver_interface *xhdi;
- struct dma_driver_interface *dma;
- struct framebuffer_driver_interface *fb;
- struct pci_bios_interface *pci;
- struct mmu_driver_interface *mmu;
- struct pci_native_driver_interface_0_1 *pci_native_0_1;
- struct pci_native_driver_interface *pci_native;
-};
-
-struct generic_interface
-{
- enum driver_type type;
- char name[16];
- char description[64];
- int version;
- int revision;
- union interface interface;
-};
-
-struct driver_table
-{
- uint32_t bas_version;
- uint32_t bas_revision;
- void (*remove_handler)(void); /* calling this will disable the BaS' hook into trap #0 */
- struct generic_interface *interfaces;
-};
-
-
-#endif /* _DRIVER_VEC_H_ */
diff --git a/BaS_gcc/include/edid.h b/BaS_gcc/include/edid.h
deleted file mode 100644
index 432b919..0000000
--- a/BaS_gcc/include/edid.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * edid.h - EDID/DDC Header
- *
- * Based on:
- * 1. XFree86 4.3.0, edid.h
- * Copyright 1998 by Egbert Eich
- *
- * 2. John Fremlin and
- * Ani Joshi
- *
- * DDC is a Trademark of VESA (Video Electronics Standard Association).
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive
- * for more details.
-*/
-
-#ifndef __EDID_H__
-#define __EDID_H__
-
-#define EDID_LENGTH 0x80
-#define EDID_HEADER 0x00
-#define EDID_HEADER_END 0x07
-
-#define ID_MANUFACTURER_NAME 0x08
-#define ID_MANUFACTURER_NAME_END 0x09
-#define ID_MODEL 0x0a
-
-#define ID_SERIAL_NUMBER 0x0c
-
-#define MANUFACTURE_WEEK 0x10
-#define MANUFACTURE_YEAR 0x11
-
-#define EDID_STRUCT_VERSION 0x12
-#define EDID_STRUCT_REVISION 0x13
-
-#define EDID_STRUCT_DISPLAY 0x14
-
-#define DPMS_FLAGS 0x18
-#define ESTABLISHED_TIMING_1 0x23
-#define ESTABLISHED_TIMING_2 0x24
-#define MANUFACTURERS_TIMINGS 0x25
-
-/* standard timings supported */
-#define STD_TIMING 8
-#define STD_TIMING_DESCRIPTION_SIZE 2
-#define STD_TIMING_DESCRIPTIONS_START 0x26
-
-#define DETAILED_TIMING_DESCRIPTIONS_START 0x36
-#define DETAILED_TIMING_DESCRIPTION_SIZE 18
-#define NO_DETAILED_TIMING_DESCRIPTIONS 4
-
-#define DETAILED_TIMING_DESCRIPTION_1 0x36
-#define DETAILED_TIMING_DESCRIPTION_2 0x48
-#define DETAILED_TIMING_DESCRIPTION_3 0x5a
-#define DETAILED_TIMING_DESCRIPTION_4 0x6c
-
-#define DESCRIPTOR_DATA 5
-
-#define UPPER_NIBBLE( x ) \
- (((128|64|32|16) & (x)) >> 4)
-
-#define LOWER_NIBBLE( x ) \
- ((1|2|4|8) & (x))
-
-#define COMBINE_HI_8LO( hi, lo ) \
- ( (((unsigned)hi) << 8) | (unsigned)lo )
-
-#define COMBINE_HI_4LO( hi, lo ) \
- ( (((unsigned)hi) << 4) | (unsigned)lo )
-
-#define PIXEL_CLOCK_LO (unsigned)block[ 0 ]
-#define PIXEL_CLOCK_HI (unsigned)block[ 1 ]
-#define PIXEL_CLOCK (COMBINE_HI_8LO( PIXEL_CLOCK_HI,PIXEL_CLOCK_LO )*10000)
-#define H_ACTIVE_LO (unsigned)block[ 2 ]
-#define H_BLANKING_LO (unsigned)block[ 3 ]
-#define H_ACTIVE_HI UPPER_NIBBLE( (unsigned)block[ 4 ] )
-#define H_ACTIVE COMBINE_HI_8LO( H_ACTIVE_HI, H_ACTIVE_LO )
-#define H_BLANKING_HI LOWER_NIBBLE( (unsigned)block[ 4 ] )
-#define H_BLANKING COMBINE_HI_8LO( H_BLANKING_HI, H_BLANKING_LO )
-
-#define V_ACTIVE_LO (unsigned)block[ 5 ]
-#define V_BLANKING_LO (unsigned)block[ 6 ]
-#define V_ACTIVE_HI UPPER_NIBBLE( (unsigned)block[ 7 ] )
-#define V_ACTIVE COMBINE_HI_8LO( V_ACTIVE_HI, V_ACTIVE_LO )
-#define V_BLANKING_HI LOWER_NIBBLE( (unsigned)block[ 7 ] )
-#define V_BLANKING COMBINE_HI_8LO( V_BLANKING_HI, V_BLANKING_LO )
-
-#define H_SYNC_OFFSET_LO (unsigned)block[ 8 ]
-#define H_SYNC_WIDTH_LO (unsigned)block[ 9 ]
-
-#define V_SYNC_OFFSET_LO UPPER_NIBBLE( (unsigned)block[ 10 ] )
-#define V_SYNC_WIDTH_LO LOWER_NIBBLE( (unsigned)block[ 10 ] )
-
-#define V_SYNC_WIDTH_HI ((unsigned)block[ 11 ] & (1|2))
-#define V_SYNC_OFFSET_HI (((unsigned)block[ 11 ] & (4|8)) >> 2)
-
-#define H_SYNC_WIDTH_HI (((unsigned)block[ 11 ] & (16|32)) >> 4)
-#define H_SYNC_OFFSET_HI (((unsigned)block[ 11 ] & (64|128)) >> 6)
-
-#define V_SYNC_WIDTH COMBINE_HI_4LO( V_SYNC_WIDTH_HI, V_SYNC_WIDTH_LO )
-#define V_SYNC_OFFSET COMBINE_HI_4LO( V_SYNC_OFFSET_HI, V_SYNC_OFFSET_LO )
-
-#define H_SYNC_WIDTH COMBINE_HI_4LO( H_SYNC_WIDTH_HI, H_SYNC_WIDTH_LO )
-#define H_SYNC_OFFSET COMBINE_HI_4LO( H_SYNC_OFFSET_HI, H_SYNC_OFFSET_LO )
-
-#define H_SIZE_LO (unsigned)block[ 12 ]
-#define V_SIZE_LO (unsigned)block[ 13 ]
-
-#define H_SIZE_HI UPPER_NIBBLE( (unsigned)block[ 14 ] )
-#define V_SIZE_HI LOWER_NIBBLE( (unsigned)block[ 14 ] )
-
-#define H_SIZE COMBINE_HI_8LO( H_SIZE_HI, H_SIZE_LO )
-#define V_SIZE COMBINE_HI_8LO( V_SIZE_HI, V_SIZE_LO )
-
-#define H_BORDER (unsigned)block[ 15 ]
-#define V_BORDER (unsigned)block[ 16 ]
-
-#define FLAGS (unsigned)block[ 17 ]
-
-#define INTERLACED (FLAGS&128)
-#define SYNC_TYPE (FLAGS&3<<3) /* bits 4,3 */
-#define SYNC_SEPARATE (3<<3)
-#define HSYNC_POSITIVE (FLAGS & 4)
-#define VSYNC_POSITIVE (FLAGS & 2)
-
-#define V_MIN_RATE block[ 5 ]
-#define V_MAX_RATE block[ 6 ]
-#define H_MIN_RATE block[ 7 ]
-#define H_MAX_RATE block[ 8 ]
-#define MAX_PIXEL_CLOCK (((int)block[ 9 ]) * 10)
-#define GTF_SUPPORT block[10]
-
-#define DPMS_ACTIVE_OFF (1 << 5)
-#define DPMS_SUSPEND (1 << 6)
-#define DPMS_STANDBY (1 << 7)
-
-#endif /* __EDID_H__ */
diff --git a/BaS_gcc/include/ehci.h b/BaS_gcc/include/ehci.h
deleted file mode 100644
index 8122bd1..0000000
--- a/BaS_gcc/include/ehci.h
+++ /dev/null
@@ -1,211 +0,0 @@
-/*-
- * Copyright (c) 2007-2008, Juniper Networks, Inc.
- * Copyright (c) 2008, Michael Trimarchi
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-#ifndef USB_EHCI_H
-#define USB_EHCI_H
-
-#define CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS 5
-
-/* (shifted) direction/type/recipient from the USB 2.0 spec, table 9.2 */
-#define DeviceRequest \
- ((USB_DIR_IN | USB_TYPE_STANDARD | USB_RECIP_DEVICE) << 8)
-
-#define DeviceOutRequest \
- ((USB_DIR_OUT | USB_TYPE_STANDARD | USB_RECIP_DEVICE) << 8)
-
-#define InterfaceRequest \
- ((USB_DIR_IN | USB_TYPE_STANDARD | USB_RECIP_INTERFACE) << 8)
-
-#define EndpointRequest \
- ((USB_DIR_IN | USB_TYPE_STANDARD | USB_RECIP_INTERFACE) << 8)
-
-#define EndpointOutRequest \
- ((USB_DIR_OUT | USB_TYPE_STANDARD | USB_RECIP_INTERFACE) << 8)
-
-/*
- * Register Space.
- */
-struct ehci_hccr
-{
- uint32_t cr_capbase;
-#define HC_LENGTH(p) (((p) >> 0) & 0x00ff)
-#define HC_VERSION(p) (((p) >> 16) & 0xffff)
- uint32_t cr_hcsparams;
-#define HCS_PPC(p) ((p) & (1 << 4))
-#define HCS_INDICATOR(p) ((p) & (1 << 16)) /* Port indicators */
-#define HCS_N_PORTS(p) (((p) >> 0) & 0xf)
- uint32_t cr_hccparams;
- uint8_t cr_hcsp_portrt[8];
-} __attribute__ ((packed));
-
-struct ehci_hcor
-{
- uint32_t or_usbcmd;
-#define CMD_PARK (1 << 11) /* enable "park" */
-#define CMD_PARK_CNT(c) (((c) >> 8) & 3) /* how many transfers to park */
-#define CMD_ASE (1 << 5) /* async schedule enable */
-#define CMD_LRESET (1 << 7) /* partial reset */
-#define CMD_IAAD (1 << 5) /* "doorbell" interrupt */
-#define CMD_PSE (1 << 4) /* periodic schedule enable */
-#define CMD_RESET (1 << 1) /* reset HC not bus */
-#define CMD_RUN (1 << 0) /* start/stop HC */
- uint32_t or_usbsts;
-#define STD_ASS (1 << 15)
-#define STS_PSSTAT (1 << 14)
-#define STS_RECL (1 << 13)
-#define STS_HALT (1 << 12)
-#define STS_IAA (1 << 5)
-#define STS_HSE (1 << 4)
-#define STS_FLR (1 << 3)
-#define STS_PCD (1 << 2)
-#define STS_USBERRINT (1 << 1)
-#define STS_USBINT (1 << 0)
- uint32_t or_usbintr;
-#define INTR_IAAE (1 << 5)
-#define INTR_HSEE (1 << 4)
-#define INTR_FLRE (1 << 3)
-#define INTR_PCDE (1 << 2)
-#define INTR_USBERRINTE (1 << 1)
-#define INTR_USBINTE (1 << 0)
- uint32_t or_frindex;
- uint32_t or_ctrldssegment;
- uint32_t or_periodiclistbase;
- uint32_t or_asynclistaddr;
- uint32_t _reserved_[9];
- uint32_t or_configflag;
-#define FLAG_CF (1 << 0) /* true: we'll support "high speed" */
- uint32_t or_portsc[CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS];
- uint32_t or_systune;
-} __attribute__ ((packed));
-
-#define USBMODE 0x68 /* USB Device mode */
-#define USBMODE_SDIS (1 << 3) /* Stream disable */
-#define USBMODE_BE (1 << 2) /* BE/LE endiannes select */
-#define USBMODE_CM_HC (3 << 0) /* host controller mode */
-#define USBMODE_CM_IDLE (0 << 0) /* idle state */
-
-/* Interface descriptor */
-struct usb_linux_interface_descriptor
-{
- unsigned char bLength;
- unsigned char bDescriptorType;
- unsigned char bInterfaceNumber;
- unsigned char bAlternateSetting;
- unsigned char bNumEndpoints;
- unsigned char bInterfaceClass;
- unsigned char bInterfaceSubClass;
- unsigned char bInterfaceProtocol;
- unsigned char iInterface;
-} __attribute__ ((packed));
-
-/* Configuration descriptor information.. */
-struct usb_linux_config_descriptor
-{
- unsigned char bLength;
- unsigned char bDescriptorType;
- unsigned short wTotalLength;
- unsigned char bNumInterfaces;
- unsigned char bConfigurationValue;
- unsigned char iConfiguration;
- unsigned char bmAttributes;
- unsigned char MaxPower;
-} __attribute__ ((packed));
-
-#if defined CONFIG_EHCI_DESC_BIG_ENDIAN
-#define ehci_readl(x) (*((volatile uint32_t *)(x)))
-#define ehci_writel(a, b) (*((volatile uint32_t *)(a)) = ((volatile uint32_t) b))
-#else
-#define ehci_readl(x) swpl((*((volatile uint32_t *)(x))))
-#define ehci_writel(a, b) (*((volatile uint32_t *)(a)) = swpl(((volatile uint32_t) b)))
-#endif
-
-#if defined CONFIG_EHCI_MMIO_BIG_ENDIAN
-#define hc32_to_cpu(x) be32_to_cpu((x))
-#define cpu_to_hc32(x) cpu_to_be32((x))
-#else
-#define hc32_to_cpu(x) swpl((x))
-#define cpu_to_hc32(x) swpl((x))
-#endif
-
-#define EHCI_PS_WKOC_E (1 << 22) /* RW wake on over current */
-#define EHCI_PS_WKDSCNNT_E (1 << 21) /* RW wake on disconnect */
-#define EHCI_PS_WKCNNT_E (1 << 20) /* RW wake on connect */
-#define EHCI_PS_PO (1 << 13) /* RW port owner */
-#define EHCI_PS_PP (1 << 12) /* RW,RO port power */
-#define EHCI_PS_LS (3 << 10) /* RO line status */
-#define EHCI_PS_PR (1 << 8) /* RW port reset */
-#define EHCI_PS_SUSP (1 << 7) /* RW suspend */
-#define EHCI_PS_FPR (1 << 6) /* RW force port resume */
-#define EHCI_PS_OCC (1 << 5) /* RWC over current change */
-#define EHCI_PS_OCA (1 << 4) /* RO over current active */
-#define EHCI_PS_PEC (1 << 3) /* RWC port enable change */
-#define EHCI_PS_PE (1 << 2) /* RW port enable */
-#define EHCI_PS_CSC (1 << 1) /* RWC connect status change */
-#define EHCI_PS_CS (1 << 0) /* RO connect status */
-#define EHCI_PS_CLEAR (EHCI_PS_OCC | EHCI_PS_PEC | EHCI_PS_CSC)
-
-#define EHCI_PS_IS_LOWSPEED(x) (((x) & EHCI_PS_LS) == (1 << 10))
-
-/*
- * Schedule Interface Space.
- *
- * IMPORTANT: Software must ensure that no interface data structure
- * reachable by the EHCI host controller spans a 4K page boundary!
- *
- * Periodic transfers (i.e. isochronous and interrupt transfers) are
- * not supported.
- */
-
-/* Queue Element Transfer Descriptor (qTD). */
-struct qTD
-{
- uint32_t qt_next;
-#define QT_NEXT_TERMINATE 1
- uint32_t qt_altnext;
- uint32_t qt_token;
- uint32_t qt_buffer[5];
-};
-
-/* Queue Head (QH). */
-struct QH
-{
- uint32_t qh_link;
-#define QH_LINK_TERMINATE 1
-#define QH_LINK_TYPE_ITD 0
-#define QH_LINK_TYPE_QH 2
-#define QH_LINK_TYPE_SITD 4
-#define QH_LINK_TYPE_FSTN 6
- uint32_t qh_endpt1;
- uint32_t qh_endpt2;
- uint32_t qh_curtd;
- struct qTD qh_overlay;
- /*
- * Add dummy fill value to make the size of this struct
- * aligned to 32 bytes
- */
- uint8_t fill[16];
-};
-
-/* Low level init functions */
-int ehci_hcd_init(void);
-int ehci_hcd_stop(void);
-
-#endif /* USB_EHCI_H */
diff --git a/BaS_gcc/include/eth.h b/BaS_gcc/include/eth.h
deleted file mode 100644
index dc3b127..0000000
--- a/BaS_gcc/include/eth.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * File: eth.h
- * Purpose: Definitions for Ethernet Frames.
- *
- * Modifications:
- */
-
-#ifndef _ETH_H
-#define _ETH_H
-
-#include "bas_types.h"
-
-/*******************************************************************/
-
-/* Ethernet standard lengths in bytes*/
-#define ETH_ADDR_LEN (6)
-#define ETH_TYPE_LEN (2)
-#define ETH_CRC_LEN (4)
-#define ETH_MAX_DATA (1500)
-#define ETH_MIN_DATA (46)
-#define ETH_HDR_LEN (ETH_ADDR_LEN * 2 + ETH_TYPE_LEN)
-
-/* Defined Ethernet Frame Types */
-#define ETH_FRM_IP (0x0800)
-#define ETH_FRM_ARP (0x0806)
-#define ETH_FRM_RARP (0x8035)
-#define ETH_FRM_TEST (0xA5A5)
-
-/* Maximum and Minimum Ethernet Frame Sizes */
-#define ETH_MAX_FRM (ETH_HDR_LEN + ETH_MAX_DATA + ETH_CRC_LEN)
-#define ETH_MIN_FRM (ETH_HDR_LEN + ETH_MIN_DATA + ETH_CRC_LEN)
-#define ETH_MTU (ETH_HDR_LEN + ETH_MAX_DATA)
-
-/* Ethernet Addresses */
-typedef uint8_t ETH_ADDR[ETH_ADDR_LEN];
-
-/* 16-bit Ethernet Frame Type, ie. Protocol */
-typedef uint16_t ETH_FRM_TYPE;
-
-/* Ethernet Frame Header definition */
-typedef struct
-{
- ETH_ADDR dest;
- ETH_ADDR src;
- ETH_FRM_TYPE type;
-} ETH_HDR;
-
-/* Ethernet Frame definition */
-typedef struct
-{
- ETH_HDR head;
- uint8_t* data;
-} ETH_FRAME;
-
-/*******************************************************************/
-
-#endif /* _ETH_H */
diff --git a/BaS_gcc/include/exceptions.h b/BaS_gcc/include/exceptions.h
deleted file mode 100644
index a0914df..0000000
--- a/BaS_gcc/include/exceptions.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef _EXCEPTIONS_H_
-#define _EXCEPTIONS_H_
-
-#include
-
-extern uint32_t set_ipl(uint32_t ipl);
-
-#endif /* _EXCEPTIONS_H_ */
diff --git a/BaS_gcc/include/fb.h b/BaS_gcc/include/fb.h
deleted file mode 100644
index c64fa48..0000000
--- a/BaS_gcc/include/fb.h
+++ /dev/null
@@ -1,569 +0,0 @@
-#ifndef _FB_H
-#define _FB_H
-
-#include
-
-/* Definitions of frame buffers */
-
-#define FB_MAJOR 29
-#define FB_MAX 32 /* sufficient for now */
-
-/* ioctls 0x46 is 'F' */
-#define FBIOGET_VSCREENINFO 0x4600
-#define FBIOPUT_VSCREENINFO 0x4601
-#define FBIOGET_FSCREENINFO 0x4602
-#define FBIOPAN_DISPLAY 0x4606
-#define FBIOBLANK 0x4611 /* arg: 0 or vesa level + 1 */
-#define FBIO_ALLOC 0x4613
-#define FBIO_FREE 0x4614
-
-/* picture format */
-#define PICT_FORMAT(bpp, type, a, r, g, b) (((bpp) << 24) | ((type) << 16) | ((a) << 12) | ((r) << 8) | ((g) << 4) | ((b)))
-
-/* gray/color formats use a visual index instead of argb */
-#define PICT_VISFORMAT(bpp, type, vi) (((bpp) << 24) | ((type) << 16) | ((vi)))
-#define PICT_FORMAT_BPP(f) (((f) >> 24) )
-#define PICT_FORMAT_TYPE(f) (((f) >> 16) & 0xff)
-#define PICT_FORMAT_A(f) (((f) >> 12) & 0x0f)
-#define PICT_FORMAT_R(f) (((f) >> 8) & 0x0f)
-#define PICT_FORMAT_G(f) (((f) >> 4) & 0x0f)
-#define PICT_FORMAT_B(f) (((f) ) & 0x0f)
-#define PICT_FORMAT_RGB(f) (((f) ) & 0xfff)
-#define PICT_FORMAT_VIS(f) (((f) ) & 0xffff)
-
-#define PICT_TYPE_OTHER 0
-#define PICT_TYPE_A 1
-#define PICT_TYPE_ARGB 2
-#define PICT_TYPE_ABGR 3
-#define PICT_TYPE_COLOR 4
-#define PICT_TYPE_GRAY 5
-#define PICT_FORMAT_COLOR(f) (PICT_FORMAT_TYPE(f) & 2)
-
-/* 32bpp formats */
-#define PICT_a8r8g8b8 PICT_FORMAT(32, PICT_TYPE_ARGB, 8, 8, 8, 8)
-#define PICT_x8r8g8b8 PICT_FORMAT(32, PICT_TYPE_ARGB, 0, 8, 8, 8)
-#define PICT_a8b8g8r8 PICT_FORMAT(32, PICT_TYPE_ABGR, 8, 8, 8, 8)
-#define PICT_x8b8g8r8 PICT_FORMAT(32, PICT_TYPE_ABGR, 0, 8, 8, 8)
-
-/* 24bpp formats */
-#define PICT_r8g8b8 PICT_FORMAT(24, PICT_TYPE_ARGB, 0, 8, 8, 8)
-#define PICT_b8g8r8 PICT_FORMAT(24, PICT_TYPE_ABGR, 0, 8, 8, 8)
-
-/* 16bpp formats */
-#define PICT_r5g6b5 PICT_FORMAT(16, PICT_TYPE_ARGB, 0, 5, 6, 5)
-#define PICT_b5g6r5 PICT_FORMAT(16, PICT_TYPE_ABGR, 0, 5, 6, 5)
-#define PICT_a1r5g5b5 PICT_FORMAT(16, PICT_TYPE_ARGB, 1, 5, 5, 5)
-#define PICT_x1r5g5b5 PICT_FORMAT(16, PICT_TYPE_ARGB, 0, 5, 5, 5)
-#define PICT_a1b5g5r5 PICT_FORMAT(16, PICT_TYPE_ABGR, 1, 5, 5, 5)
-#define PICT_x1b5g5r5 PICT_FORMAT(16, PICT_TYPE_ABGR, 0, 5, 5, 5)
-#define PICT_a4r4g4b4 PICT_FORMAT(16, PICT_TYPE_ARGB, 4, 4, 4, 4)
-#define PICT_x4r4g4b4 PICT_FORMAT(16, PICT_TYPE_ARGB, 4, 4, 4, 4)
-#define PICT_a4b4g4r4 PICT_FORMAT(16, PICT_TYPE_ARGB, 4, 4, 4, 4)
-#define PICT_x4b4g4r4 PICT_FORMAT(16, PICT_TYPE_ARGB, 4, 4, 4, 4)
-
-/* 8bpp formats */
-#define PICT_a8 PICT_FORMAT(8, PICT_TYPE_A, 8, 0, 0, 0)
-#define PICT_r3g3b2 PICT_FORMAT(8, PICT_TYPE_ARGB, 0, 3, 3, 2)
-#define PICT_b2g3r3 PICT_FORMAT(8, PICT_TYPE_ABGR, 0, 3, 3, 2)
-#define PICT_a2r2g2b2 PICT_FORMAT(8, PICT_TYPE_ARGB, 2, 2, 2, 2)
-#define PICT_a2b2g2r2 PICT_FORMAT(8, PICT_TYPE_ABGR, 2, 2, 2, 2)
-#define PICT_c8 PICT_FORMAT(8, PICT_TYPE_COLOR, 0, 0, 0, 0)
-#define PICT_g8 PICT_FORMAT(8, PICT_TYPE_GRAY, 0, 0, 0, 0)
-
-/* fVDI */
-#define MODE_EMUL_MONO_FLAG 1
-#define MODE_VESA_FLAG 2 /* for modedb.c */
-
-struct mode_option
-{
- short used; /* Whether the mode option was used or not. */
- short width;
- short height;
- short bpp;
- short freq;
- short flags;
-};
-
-extern struct mode_option resolution; /* fVDI */
-
-#define FB_TYPE_PACKED_PIXELS 0 /* Packed Pixels */
-#define FB_TYPE_PLANES 1 /* Non interleaved planes */
-#define FB_TYPE_INTERLEAVED_PLANES 2 /* Interleaved planes */
-#define FB_TYPE_TEXT 3 /* Text/attributes */
-#define FB_TYPE_VGA_PLANES 4 /* EGA/VGA planes */
-
-#define FB_AUX_TEXT_MDA 0 /* Monochrome text */
-#define FB_AUX_TEXT_CGA 1 /* CGA/EGA/VGA Color text */
-#define FB_AUX_TEXT_S3_MMIO 2 /* S3 MMIO fasttext */
-#define FB_AUX_TEXT_MGA_STEP16 3 /* MGA Millenium I: text, attr, 14 reserved bytes */
-#define FB_AUX_TEXT_MGA_STEP8 4 /* other MGAs: text, attr, 6 reserved bytes */
-
-#define FB_AUX_VGA_PLANES_VGA4 0 /* 16 color planes (EGA/VGA) */
-#define FB_AUX_VGA_PLANES_CFB4 1 /* CFB4 in planes (VGA) */
-#define FB_AUX_VGA_PLANES_CFB8 2 /* CFB8 in planes (VGA) */
-
-#define FB_VISUAL_MONO01 0 /* Monochr. 1=Black 0=White */
-#define FB_VISUAL_MONO10 1 /* Monochr. 1=White 0=Black */
-#define FB_VISUAL_TRUECOLOR 2 /* True color */
-#define FB_VISUAL_PSEUDOCOLOR 3 /* Pseudo color (like atari) */
-#define FB_VISUAL_DIRECTCOLOR 4 /* Direct color */
-#define FB_VISUAL_STATIC_PSEUDOCOLOR 5 /* Pseudo color readonly */
-
-#define FB_ACCEL_NONE 0 /* no hardware accelerator */
-#define FB_ACCEL_ATARIBLITT 1 /* Atari Blitter */
-#define FB_ACCEL_AMIGABLITT 2 /* Amiga Blitter */
-#define FB_ACCEL_S3_TRIO64 3 /* Cybervision64 (S3 Trio64) */
-#define FB_ACCEL_NCR_77C32BLT 4 /* RetinaZ3 (NCR 77C32BLT) */
-#define FB_ACCEL_S3_VIRGE 5 /* Cybervision64/3D (S3 ViRGE) */
-#define FB_ACCEL_ATI_MACH64GX 6 /* ATI Mach 64GX family */
-#define FB_ACCEL_DEC_TGA 7 /* DEC 21030 TGA */
-#define FB_ACCEL_ATI_MACH64CT 8 /* ATI Mach 64CT family */
-#define FB_ACCEL_ATI_MACH64VT 9 /* ATI Mach 64CT family VT class */
-#define FB_ACCEL_ATI_MACH64GT 10 /* ATI Mach 64CT family GT class */
-#define FB_ACCEL_SUN_CREATOR 11 /* Sun Creator/Creator3D */
-#define FB_ACCEL_SUN_CGSIX 12 /* Sun cg6 */
-#define FB_ACCEL_SUN_LEO 13 /* Sun leo/zx */
-#define FB_ACCEL_IMS_TWINTURBO 14 /* IMS Twin Turbo */
-#define FB_ACCEL_3DLABS_PERMEDIA2 15 /* 3Dlabs Permedia 2 */
-#define FB_ACCEL_MATROX_MGA2064W 16 /* Matrox MGA2064W (Millenium) */
-#define FB_ACCEL_MATROX_MGA1064SG 17 /* Matrox MGA1064SG (Mystique) */
-#define FB_ACCEL_MATROX_MGA2164W 18 /* Matrox MGA2164W (Millenium II) */
-#define FB_ACCEL_MATROX_MGA2164W_AGP 19 /* Matrox MGA2164W (Millenium II) */
-#define FB_ACCEL_MATROX_MGAG100 20 /* Matrox G100 (Productiva G100) */
-#define FB_ACCEL_MATROX_MGAG200 21 /* Matrox G200 (Myst, Mill, ...) */
-#define FB_ACCEL_SUN_CG14 22 /* Sun cgfourteen */
-#define FB_ACCEL_SUN_BWTWO 23 /* Sun bwtwo */
-#define FB_ACCEL_SUN_CGTHREE 24 /* Sun cgthree */
-#define FB_ACCEL_SUN_TCX 25 /* Sun tcx */
-#define FB_ACCEL_MATROX_MGAG400 26 /* Matrox G400 */
-#define FB_ACCEL_NV3 27 /* nVidia RIVA 128 */
-#define FB_ACCEL_NV4 28 /* nVidia RIVA TNT */
-#define FB_ACCEL_NV5 29 /* nVidia RIVA TNT2 */
-#define FB_ACCEL_CT_6555x 30 /* C&T 6555x */
-#define FB_ACCEL_3DFX_BANSHEE 31 /* 3Dfx Banshee */
-#define FB_ACCEL_ATI_RAGE128 32 /* ATI Rage128 family */
-#define FB_ACCEL_IGS_CYBER2000 33 /* CyberPro 2000 */
-#define FB_ACCEL_IGS_CYBER2010 34 /* CyberPro 2010 */
-#define FB_ACCEL_IGS_CYBER5000 35 /* CyberPro 5000 */
-#define FB_ACCEL_SIS_GLAMOUR 36 /* SiS 300/630/540 */
-#define FB_ACCEL_3DLABS_PERMEDIA3 37 /* 3Dlabs Permedia 3 */
-#define FB_ACCEL_ATI_RADEON 38 /* ATI Radeon family */
-#define FB_ACCEL_I810 39 /* Intel 810/815 */
-#define FB_ACCEL_SIS_GLAMOUR_2 40 /* SiS 315, 650, 740 */
-#define FB_ACCEL_SIS_XABRE 41 /* SiS 330 ("Xabre") */
-#define FB_ACCEL_I830 42 /* Intel 830M/845G/85x/865G */
-#define FB_ACCEL_NV_10 43 /* nVidia Arch 10 */
-#define FB_ACCEL_NV_20 44 /* nVidia Arch 20 */
-#define FB_ACCEL_NV_30 45 /* nVidia Arch 30 */
-#define FB_ACCEL_NV_40 46 /* nVidia Arch 40 */
-#define FB_ACCEL_NEOMAGIC_NM2070 90 /* NeoMagic NM2070 */
-#define FB_ACCEL_NEOMAGIC_NM2090 91 /* NeoMagic NM2090 */
-#define FB_ACCEL_NEOMAGIC_NM2093 92 /* NeoMagic NM2093 */
-#define FB_ACCEL_NEOMAGIC_NM2097 93 /* NeoMagic NM2097 */
-#define FB_ACCEL_NEOMAGIC_NM2160 94 /* NeoMagic NM2160 */
-#define FB_ACCEL_NEOMAGIC_NM2200 95 /* NeoMagic NM2200 */
-#define FB_ACCEL_NEOMAGIC_NM2230 96 /* NeoMagic NM2230 */
-#define FB_ACCEL_NEOMAGIC_NM2360 97 /* NeoMagic NM2360 */
-#define FB_ACCEL_NEOMAGIC_NM2380 98 /* NeoMagic NM2380 */
-
-#define FB_ACCEL_SAVAGE4 0x80 /* S3 Savage4 */
-#define FB_ACCEL_SAVAGE3D 0x81 /* S3 Savage3D */
-#define FB_ACCEL_SAVAGE3D_MV 0x82 /* S3 Savage3D-MV */
-#define FB_ACCEL_SAVAGE2000 0x83 /* S3 Savage2000 */
-#define FB_ACCEL_SAVAGE_MX_MV 0x84 /* S3 Savage/MX-MV */
-#define FB_ACCEL_SAVAGE_MX 0x85 /* S3 Savage/MX */
-#define FB_ACCEL_SAVAGE_IX_MV 0x86 /* S3 Savage/IX-MV */
-#define FB_ACCEL_SAVAGE_IX 0x87 /* S3 Savage/IX */
-#define FB_ACCEL_PROSAVAGE_PM 0x88 /* S3 ProSavage PM133 */
-#define FB_ACCEL_PROSAVAGE_KM 0x89 /* S3 ProSavage KM133 */
-#define FB_ACCEL_S3TWISTER_P 0x8a /* S3 Twister */
-#define FB_ACCEL_S3TWISTER_K 0x8b /* S3 TwisterK */
-#define FB_ACCEL_SUPERSAVAGE 0x8c /* S3 Supersavage */
-#define FB_ACCEL_PROSAVAGE_DDR 0x8d /* S3 ProSavage DDR */
-#define FB_ACCEL_PROSAVAGE_DDRK 0x8e /* S3 ProSavage DDR-K */
-
-struct fb_fix_screeninfo
-{
- char id[16]; /* identification string eg "TT Builtin" */
- uint32_t smem_start; /* Start of frame buffer mem */
- /* (physical address) */
- uint32_t smem_len; /* Length of frame buffer mem */
- uint32_t type; /* see FB_TYPE_* */
- uint32_t type_aux; /* Interleave for interleaved Planes */
- uint32_t visual; /* see FB_VISUAL_* */
- uint16_t xpanstep; /* zero if no hardware panning */
- uint16_t ypanstep; /* zero if no hardware panning */
- uint16_t ywrapstep; /* zero if no hardware ywrap */
- uint32_t line_length; /* length of a line in bytes */
- uint32_t mmio_start; /* Start of Memory Mapped I/O */
- /* (physical address) */
- uint32_t mmio_len; /* Length of Memory Mapped I/O */
- uint32_t accel; /* Indicate to driver which */
- /* specific chip/card we have */
- uint16_t reserved[3]; /* Reserved for future compatibility */
-};
-
-/* Interpretation of offset for color fields: All offsets are from the right,
- * inside a "pixel" value, which is exactly 'bits_per_pixel' wide (means: you
- * can use the offset as right argument to <<). A pixel afterwards is a bit
- * stream and is written to video memory as that unmodified. This implies
- * big-endian byte order if bits_per_pixel is greater than 8.
- */
-struct fb_bitfield
-{
- uint32_t offset; /* beginning of bitfield */
- uint32_t length; /* length of bitfield */
- uint32_t msb_right; /* != 0 : Most significant bit is */
- /* right */
-};
-
-#define FB_NONSTD_HAM 1 /* Hold-And-Modify (HAM) */
-
-#define FB_ACTIVATE_NOW 0 /* set values immediately (or vbl)*/
-#define FB_ACTIVATE_NXTOPEN 1 /* activate on next open */
-#define FB_ACTIVATE_TEST 2 /* don't set, round up impossible */
-#define FB_ACTIVATE_MASK 15
-/* values */
-#define FB_ACTIVATE_VBL 16 /* activate values on next vbl */
-#define FB_CHANGE_CMAP_VBL 32 /* change colormap on vbl */
-#define FB_ACTIVATE_ALL 64 /* change all VCs on this fb */
-#define FB_ACTIVATE_FORCE 128 /* force apply even when no change*/
-#define FB_ACTIVATE_INV_MODE 256 /* invalidate videomode */
-
-#define FB_ACCELF_TEXT 1 /* (OBSOLETE) see fb_info.flags and vc_mode */
-
-#define FB_SYNC_HOR_HIGH_ACT 1 /* horizontal sync high active */
-#define FB_SYNC_VERT_HIGH_ACT 2 /* vertical sync high active */
-#define FB_SYNC_EXT 4 /* external sync */
-#define FB_SYNC_COMP_HIGH_ACT 8 /* composite sync high active */
-#define FB_SYNC_BROADCAST 16 /* broadcast video timings */
- /* vtotal = 144d/288n/576i => PAL */
- /* vtotal = 121d/242n/484i => NTSC */
-#define FB_SYNC_ON_GREEN 32 /* sync on green */
-
-#define FB_VMODE_NONINTERLACED 0 /* non interlaced */
-#define FB_VMODE_INTERLACED 1 /* interlaced */
-#define FB_VMODE_DOUBLE 2 /* double scan */
-#define FB_VMODE_MASK 255
-
-#define FB_VMODE_YWRAP 256 /* ywrap instead of panning */
-#define FB_VMODE_SMOOTH_XPAN 512 /* smooth xpan possible (internally used) */
-#define FB_VMODE_CONUPDATE 512 /* don't update x/yoffset */
-
-#define PICOS2KHZ(a) (1000000000UL / (a))
-#define KHZ2PICOS(a) (1000000000UL / (a))
-
-struct fb_var_screeninfo
-{
- uint32_t xres; /* visible resolution */
- uint32_t yres;
- uint32_t xres_virtual; /* virtual resolution */
- uint32_t yres_virtual;
- uint32_t xoffset; /* offset from virtual to visible */
- uint32_t yoffset; /* resolution */
-
- uint32_t bits_per_pixel; /* guess what */
- uint32_t grayscale; /* != 0 Graylevels instead of colors */
-
- struct fb_bitfield red; /* bitfield in fb mem if true color, */
- struct fb_bitfield green; /* else only length is significant */
- struct fb_bitfield blue;
- struct fb_bitfield transp; /* transparency */
-
- uint32_t nonstd; /* != 0 Non standard pixel format */
-
- uint32_t activate; /* see FB_ACTIVATE_* */
-
- uint32_t height; /* height of picture in mm */
- uint32_t width; /* width of picture in mm */
-
- uint32_t accel_flags; /* (OBSOLETE) see fb_info.flags */
-
- /* Timing: All values in pixclocks, except pixclock (of course) */
- uint32_t pixclock; /* pixel clock in ps (pico seconds) */
- uint32_t left_margin; /* time from sync to picture */
- uint32_t right_margin; /* time from picture to sync */
- uint32_t upper_margin; /* time from sync to picture */
- uint32_t lower_margin;
- uint32_t hsync_len; /* length of horizontal sync */
- uint32_t vsync_len; /* length of vertical sync */
- uint32_t sync; /* see FB_SYNC_* */
- uint32_t vmode; /* see FB_VMODE_* */
- uint32_t rotate; /* angle we rotate counter clockwise */
- uint32_t refresh;
- uint32_t reserved[4]; /* Reserved for future compatibility */
-};
-
-/* VESA Blanking Levels */
-#define VESA_NO_BLANKING 0
-#define VESA_VSYNC_SUSPEND 1
-#define VESA_HSYNC_SUSPEND 2
-#define VESA_POWERDOWN 3
-
-enum
-{
- /* screen: unblanked, hsync: on, vsync: on */
- FB_BLANK_UNBLANK = VESA_NO_BLANKING,
- /* screen: blanked, hsync: on, vsync: on */
- FB_BLANK_NORMAL = VESA_NO_BLANKING + 1,
- /* screen: blanked, hsync: on, vsync: off */
- FB_BLANK_VSYNC_SUSPEND = VESA_VSYNC_SUSPEND + 1,
- /* screen: blanked, hsync: off, vsync: on */
- FB_BLANK_HSYNC_SUSPEND = VESA_HSYNC_SUSPEND + 1,
- /* screen: blanked, hsync: off, vsync: off */
- FB_BLANK_POWERDOWN = VESA_POWERDOWN + 1
-};
-
-#define FB_VBLANK_VBLANKING 0x001 /* currently in a vertical blank */
-#define FB_VBLANK_HBLANKING 0x002 /* currently in a horizontal blank */
-#define FB_VBLANK_HAVE_VBLANK 0x004 /* vertical blanks can be detected */
-#define FB_VBLANK_HAVE_HBLANK 0x008 /* horizontal blanks can be detected */
-#define FB_VBLANK_HAVE_COUNT 0x010 /* global retrace counter is available */
-#define FB_VBLANK_HAVE_VCOUNT 0x020 /* the vcount field is valid */
-#define FB_VBLANK_HAVE_HCOUNT 0x040 /* the hcount field is valid */
-#define FB_VBLANK_VSYNCING 0x080 /* currently in a vsync */
-#define FB_VBLANK_HAVE_VSYNC 0x100 /* verical syncs can be detected */
-
-struct fb_vblank
-{
- uint32_t flags; /* FB_VBLANK flags */
- uint32_t count; /* counter of retraces since boot */
- uint32_t vcount; /* current scanline position */
- uint32_t hcount; /* current scandot position */
- uint32_t reserved[4]; /* reserved for future compatibility */
-};
-
-struct vm_area_struct;
-struct fb_info;
-struct device;
-struct file;
-
-/* Definitions below are used in the parsed monitor specs */
-#define FB_DPMS_ACTIVE_OFF 1
-#define FB_DPMS_SUSPEND 2
-#define FB_DPMS_STANDBY 4
-
-#define FB_DISP_DDI 1
-#define FB_DISP_ANA_700_300 2
-#define FB_DISP_ANA_714_286 4
-#define FB_DISP_ANA_1000_400 8
-#define FB_DISP_ANA_700_000 16
-
-#define FB_DISP_MONO 32
-#define FB_DISP_RGB 64
-#define FB_DISP_MULTI 128
-#define FB_DISP_UNKNOWN 256
-
-#define FB_SIGNAL_NONE 0
-#define FB_SIGNAL_BLANK_BLANK 1
-#define FB_SIGNAL_SEPARATE 2
-#define FB_SIGNAL_COMPOSITE 4
-#define FB_SIGNAL_SYNC_ON_GREEN 8
-#define FB_SIGNAL_SERRATION_ON 16
-
-#define FB_MISC_PRIM_COLOR 1
-#define FB_MISC_1ST_DETAIL 2 /* First Detailed Timing is preferred */
-
-struct fb_chroma
-{
- uint32_t redx; /* in fraction of 1024 */
- uint32_t greenx;
- uint32_t bluex;
- uint32_t whitex;
- uint32_t redy;
- uint32_t greeny;
- uint32_t bluey;
- uint32_t whitey;
-};
-
-struct fb_monspecs
-{
- struct fb_chroma chroma;
- struct fb_videomode *modedb; /* mode database */
- uint8_t manufacturer[4]; /* Manufacturer */
- uint8_t monitor[14]; /* Monitor String */
- uint8_t serial_no[14]; /* Serial Number */
- uint8_t ascii[14]; /* ? */
- uint32_t modedb_len; /* mode database length */
- uint32_t model; /* Monitor Model */
- uint32_t serial; /* Serial Number - Integer */
- uint32_t year; /* Year manufactured */
- uint32_t week; /* Week Manufactured */
- uint32_t hfmin; /* hfreq lower limit (Hz) */
- uint32_t hfmax; /* hfreq upper limit (Hz) */
- uint32_t dclkmin; /* pixelclock lower limit (Hz) */
- uint32_t dclkmax; /* pixelclock upper limit (Hz) */
- uint16_t input; /* display type - see FB_DISP_* */
- uint16_t dpms; /* DPMS support - see FB_DPMS_ */
- uint16_t signal; /* Signal Type - see FB_SIGNAL_* */
- uint16_t vfmin; /* vfreq lower limit (Hz) */
- uint16_t vfmax; /* vfreq upper limit (Hz) */
- uint16_t gamma; /* Gamma - in fractions of 100 */
- uint16_t gtf : 1; /* supports GTF */
- uint16_t misc; /* Misc flags - see FB_MISC_* */
- uint8_t version; /* EDID version... */
- uint8_t revision; /* ...and revision */
- uint8_t max_x; /* Maximum horizontal size (cm) */
- uint8_t max_y; /* Maximum vertical size (cm) */
-};
-
-struct fb_ops
-{
- /* checks var and eventually tweaks if to something supported,
- * DO NOT MODIFY PAR */
- int32_t (*fb_check_var)(struct fb_var_screeninfo *var, struct fb_info *info);
-
- /* set the video mode according to info->var */
- int32_t (*fb_set_par)(struct fb_info *info);
-
- /* set color register */
- int32_t (*fb_setcolreg)(uint32_t regno, uint32_t red, uint32_t green,
- uint32_t blue, uint32_t transp, struct fb_info *info);
-
- /* pan display */
- int32_t (*fb_pan_display)(struct fb_var_screeninfo *var, struct fb_info *info);
-
- /* blank display */
- int32_t (*fb_blank)(int32_t blank, struct fb_info *info);
-
- /* wait for blit idle */
- int32_t (*fb_sync)(struct fb_info *info);
-
- /* perform fb specific ioctl */
- int32_t (*fb_ioctl)(uint32_t cmd, uint32_t arg, struct fb_info *info);
-
- /*
- * Build the modedb for head 1 (head 2 will come later), check panel infos
- * from either BIOS or EDID, and pick up the default mode
- */
- void (*fb_check_modes)(struct fb_info *info, struct mode_option *resolution);
-
- /* Accel functions */
-#define DEGREES_0 0
-#define DEGREES_90 1
-#define DEGREES_180 2
-#define DEGREES_270 3
-#define OMIT_LAST 1
- void (*SetupForSolidFill)(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask);
- void (*SubsequentSolidFillRect)(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h);
- void (*SetupForSolidLine)(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask);
- void (*SubsequentSolidHorVertLine)(struct fb_info *info, int32_t x, int32_t y, int32_t len, int32_t dir);
- void (*SubsequentSolidTwoPointLine)(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t flags);
- void (*SetupForDashedLine)(struct fb_info *info, int32_t fg, int32_t bg, int32_t rop, uint32_t planemask, int32_t length, uint8_t *pattern);
- void (*SubsequentDashedTwoPointLine)(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t flags, int32_t phase);
- void (*SetupForScreenToScreenCopy)(struct fb_info *info, int32_t xdir, int32_t ydir, int32_t rop, uint32_t planemask, int32_t trans_color);
- void (*SubsequentScreenToScreenCopy)(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h);
- void (*ScreenToScreenCopy)(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h, int32_t rop);
- void (*SetupForMono8x8PatternFill)(struct fb_info *info, int32_t patternx, int32_t patterny, int32_t fg, int32_t bg, int32_t rop, uint32_t planemask);
- void (*SubsequentMono8x8PatternFillRect)(struct fb_info *info, int32_t patternx, int32_t patterny, int32_t x, int32_t y, int32_t w, int32_t h);
- void (*SetupForScanlineCPUToScreenColorExpandFill)(struct fb_info *info, int32_t fg, int32_t bg, int32_t rop, uint32_t planemask);
- void (*SubsequentScanlineCPUToScreenColorExpandFill)(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft);
- void (*SubsequentScanline)(struct fb_info *info, uint32_t *buf);
- void (*SetupForScanlineImageWrite)(struct fb_info *info, int32_t rop, uint32_t planemask, int32_t trans_color, int32_t bpp);
- void (*SubsequentScanlineImageWriteRect)(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft);
- void (*SetClippingRectangle)(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb);
- void (*DisableClipping)(struct fb_info *info);
- int (*SetupForCPUToScreenAlphaTexture)(struct fb_info *info,
- int32_t op, uint16_t red, uint16_t green, uint16_t blue, uint16_t alpha,
- uint32_t maskFormat, uint32_t dstFormat, uint8_t *alphaPtr, int32_t alphaPitch,
- int32_t width, int32_t height, int32_t flags);
- int32_t (*SetupForCPUToScreenTexture)(struct fb_info *info, int32_t op, uint32_t srcFormat, uint32_t dstFormat, uint8_t *texPtr, int32_t texPitch, int32_t width, int32_t height, int32_t flags);
- void (*SubsequentCPUToScreenTexture)(struct fb_info *info, int32_t dstx, int32_t dsty, int32_t srcx, int32_t srcy, int32_t width, int32_t height);
- /* Cursor functions */
- void (*SetCursorColors)(struct fb_info *info, int32_t bg, int32_t fg);
- void (*SetCursorPosition)(struct fb_info *info, int32_t x, int32_t y);
- void (*LoadCursorImage)(struct fb_info *info, uint16_t *mask, uint16_t *data, int32_t zoom);
- void (*HideCursor)(struct fb_info *info);
- void (*ShowCursor)(struct fb_info *info);
- long (*CursorInit)(struct fb_info *info);
- void (*WaitVbl)(struct fb_info *info);
-};
-
-struct fb_info
-{
- struct fb_var_screeninfo var; /* Current var */
- struct fb_fix_screeninfo fix; /* Current fix */
- struct fb_monspecs monspecs; /* Current Monitor specs */
- struct fb_videomode *mode; /* current mode */
- char *screen_base; /* virtual address */
- uint32_t screen_size;
- char *ram_base; /* base vram */
- uint32_t ram_size; /* vram size */
- char *screen_mono;
- long update_mono;
- struct fb_ops *fbops;
- void *par; /* device dependent */
-};
-
-/* fbmem.c */
-extern int fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var);
-extern int fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var);
-extern int fb_blank(struct fb_info *info, int blank);
-extern int fb_ioctl(struct fb_info *info, uint32_t cmd, uint32_t arg);
-extern struct fb_info *framebuffer_alloc(uint32_t size);
-extern void framebuffer_release(struct fb_info *info);
-
-/* offscreen.c */
-extern long offscreen_free(struct fb_info *info, void *addr);
-extern long offscreen_alloc(struct fb_info *info, long amount);
-extern long offscren_reserved(struct fb_info *info);
-extern void offscreen_init(struct fb_info *info);
-
-/* fbmon.c */
-#define FB_MAXTIMINGS 0
-#define FB_VSYNCTIMINGS 1
-#define FB_HSYNCTIMINGS 2
-#define FB_DCLKTIMINGS 3
-#define FB_IGNOREMON 0x100
-
-#define FB_MODE_IS_UNKNOWN 0
-#define FB_MODE_IS_DETAILED 1
-#define FB_MODE_IS_STANDARD 2
-#define FB_MODE_IS_VESA 4
-#define FB_MODE_IS_CALCULATED 8
-#define FB_MODE_IS_FIRST 16
-#define FB_MODE_IS_FROM_VAR 32
-
-extern void fb_destroy_modedb(struct fb_videomode *modedb);
-extern int fb_parse_edid(uint8_t *edid, struct fb_var_screeninfo *var);
-extern void fb_edid_to_monspecs(uint8_t *edid, struct fb_monspecs *specs);
-extern int32_t fb_get_mode(int32_t flags, uint32_t val, struct fb_var_screeninfo *var, struct fb_info *info);
-extern int32_t fb_validate_mode(const struct fb_var_screeninfo *var, struct fb_info *info);
-
-/* modedb.c */
-#define VESA_MODEDB_SIZE 34
-extern int fb_find_mode(struct fb_var_screeninfo *var,
- struct fb_info *info, struct mode_option *resolution ,
- const struct fb_videomode *db, unsigned int dbsize,
- const struct fb_videomode *default_mode, unsigned int default_bpp);
-extern void fb_var_to_videomode(struct fb_videomode *mode, struct fb_var_screeninfo *var);
-extern void fb_videomode_to_var(struct fb_var_screeninfo *var, struct fb_videomode *mode);
-extern int fb_mode_is_equal(struct fb_videomode *mode1, struct fb_videomode *mode2);
-
-struct fb_videomode
-{
- uint16_t refresh; /* optional */
- uint16_t xres;
- uint16_t yres;
- uint32_t pixclock;
- uint16_t left_margin;
- uint16_t right_margin;
- uint16_t upper_margin;
- uint16_t lower_margin;
- uint16_t hsync_len;
- uint16_t vsync_len;
- uint16_t sync;
- uint16_t vmode;
- uint16_t flag;
-};
-
-extern const struct fb_videomode vesa_modes[];
-
-extern void start_timeout(void);
-extern int32_t end_timeout(long msec);
-extern void mdelay(long msec);
-extern void install_vbl_timer(void *func, int32_t remove);
-extern void uninstall_vbl_timer(void *func);
-
-extern struct fb_info *info_fvdi;
-#endif /* _FB_H */
diff --git a/BaS_gcc/include/fec.h b/BaS_gcc/include/fec.h
deleted file mode 100644
index c439618..0000000
--- a/BaS_gcc/include/fec.h
+++ /dev/null
@@ -1,96 +0,0 @@
-/*
- * File: fec.h
- * Purpose: Driver for the Fast Ethernet Controller (FEC)
- *
- * Notes:
- */
-
-#ifndef _FEC_H_
-#define _FEC_H_
-
-/********************************************************************/
-/* MII Speed Settings */
-#define FEC_MII_10BASE_T 0
-#define FEC_MII_100BASE_TX 1
-
-/* MII Duplex Settings */
-#define FEC_MII_HALF_DUPLEX 0
-#define FEC_MII_FULL_DUPLEX 1
-
-/* Timeout for MII communications */
-#define FEC_MII_TIMEOUT 0x10000
-
-/* External Interface Modes */
-#define FEC_MODE_7WIRE 0
-#define FEC_MODE_MII 1
-#define FEC_MODE_LOOPBACK 2 /* Internal Loopback */
-
-/*
- * FEC Event Log
- */
-typedef struct
-{
- int total; /* total count of errors */
- int hberr; /* heartbeat error */
- int babr; /* babbling receiver */
- int babt; /* babbling transmitter */
- int gra; /* graceful stop complete */
- int txf; /* transmit frame */
- int mii; /* MII */
- int lc; /* late collision */
- int rl; /* collision retry limit */
- int xfun; /* transmit FIFO underrrun */
- int xferr; /* transmit FIFO error */
- int rferr; /* receive FIFO error */
- int dtxf; /* DMA transmit frame */
- int drxf; /* DMA receive frame */
- int rfsw_inv; /* Invalid bit in RFSW */
- int rfsw_l; /* RFSW Last in Frame */
- int rfsw_m; /* RFSW Miss */
- int rfsw_bc; /* RFSW Broadcast */
- int rfsw_mc; /* RFSW Multicast */
- int rfsw_lg; /* RFSW Length Violation */
- int rfsw_no; /* RFSW Non-octet */
- int rfsw_cr; /* RFSW Bad CRC */
- int rfsw_ov; /* RFSW Overflow */
- int rfsw_tr; /* RFSW Truncated */
-} FEC_EVENT_LOG;
-
-
-extern int fec_mii_write(uint8_t , uint8_t , uint8_t , uint16_t );
-extern int fec_mii_read(uint8_t , uint8_t , uint8_t , uint16_t *);
-extern void fec_mii_init(uint8_t, uint32_t);
-extern void fec_mib_init(uint8_t);
-extern void fec_mib_dump(uint8_t);
-extern void fec_log_init(uint8_t);
-extern void fec_log_dump(uint8_t);
-extern void fec_debug_dump(uint8_t);
-extern void fec_duplex (uint8_t, uint8_t);
-extern uint8_t fec_hash_address(const uint8_t *);
-extern void fec_set_address (uint8_t ch, const uint8_t *);
-extern void fec_reset (uint8_t);
-extern void fec_init(uint8_t ch, uint8_t mode, const uint8_t *pa);
-extern void fec_rx_start(uint8_t, int8_t *);
-extern void fec_rx_restart(uint8_t);
-extern void fec_rx_stop (uint8_t);
-extern void fec_rx_frame(uint8_t, NIF *);
-extern void fec0_rx_frame(void);
-extern void fec1_rx_frame(void);
-extern void fec_tx_start(uint8_t, int8_t *);
-extern void fec_tx_restart(uint8_t);
-extern void fec_tx_stop (uint8_t);
-extern void fec0_tx_frame(void);
-extern void fec1_tx_frame(void);
-extern int fec_send(uint8_t, NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-extern int fec0_send(NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-extern int fec1_send(NIF *, uint8_t *, uint8_t *, uint16_t , NBUF *);
-extern void fec_irq_enable(uint8_t, uint8_t, uint8_t);
-extern void fec_irq_disable(uint8_t);
-extern void fec_interrupt_handler(uint8_t);
-extern bool fec0_interrupt_handler(void *, void *);
-extern bool fec1_interrupt_handler(void *, void *);
-extern void fec_eth_setup(uint8_t, uint8_t, uint8_t, uint8_t, const uint8_t *);
-extern void fec_eth_reset(uint8_t);
-extern void fec_eth_stop(uint8_t);
-
-#endif /* _FEC_H_ */
diff --git a/BaS_gcc/include/fecbd.h b/BaS_gcc/include/fecbd.h
deleted file mode 100644
index f25847b..0000000
--- a/BaS_gcc/include/fecbd.h
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * File: fecbd.h
- * Purpose:
- *
- * Purpose: Provide a simple buffer management driver
- */
-
-#ifndef _FECBD_H_
-#define _FECBD_H_
-
-#include "bas_types.h"
-
-/********************************************************************/
-
-#define Rx 1
-#define Tx 0
-
-/*
- * Buffer sizes in bytes
- */
-#ifndef RX_BUF_SZ
-#define RX_BUF_SZ NBUF_SZ
-#endif
-#ifndef TX_BUF_SZ
-#define TX_BUF_SZ NBUF_SZ
-#endif
-
-/*
- * Number of Rx and Tx Buffers and Buffer Descriptors
- */
-#ifndef NRXBD
-#define NRXBD 20
-#endif
-#ifndef NTXBD
-#define NTXBD 20
-#endif
-
-/*
- * Buffer Descriptor Format
- */
-typedef struct
-{
- uint16_t status; /* control and status */
- uint16_t length; /* transfer length */
- uint8_t *data; /* buffer address */
-} FECBD;
-
-/*
- * Bit level definitions for status field of buffer descriptors
- */
-#define TX_BD_R 0x8000
-#define TX_BD_TO1 0x4000
-#define TX_BD_W 0x2000
-#define TX_BD_TO2 0x1000
-#define TX_BD_INTERRUPT 0x1000 /* MCF547x/8x Only */
-#define TX_BD_L 0x0800
-#define TX_BD_TC 0x0400
-#define TX_BD_DEF 0x0200 /* MCF5272 Only */
-#define TX_BD_ABC 0x0200
-#define TX_BD_HB 0x0100 /* MCF5272 Only */
-#define TX_BD_LC 0x0080 /* MCF5272 Only */
-#define TX_BD_RL 0x0040 /* MCF5272 Only */
-#define TX_BD_UN 0x0002 /* MCF5272 Only */
-#define TX_BD_CSL 0x0001 /* MCF5272 Only */
-
-#define RX_BD_E 0x8000
-#define RX_BD_R01 0x4000
-#define RX_BD_W 0x2000
-#define RX_BD_R02 0x1000
-#define RX_BD_INTERRUPT 0x1000 /* MCF547x/8x Only */
-#define RX_BD_L 0x0800
-#define RX_BD_M 0x0100
-#define RX_BD_BC 0x0080
-#define RX_BD_MC 0x0040
-#define RX_BD_LG 0x0020
-#define RX_BD_NO 0x0010
-#define RX_BD_CR 0x0004
-#define RX_BD_OV 0x0002
-#define RX_BD_TR 0x0001
-#define RX_BD_ERROR (RX_BD_NO | RX_BD_CR | RX_BD_OV | RX_BD_TR)
-
-/*
- * Functions provided in fec_bd.c
- */
-extern void fecbd_init(uint8_t);
-extern uint32_t fecbd_get_start(uint8_t, uint8_t);
-extern FECBD *fecbd_rx_alloc(uint8_t);
-extern FECBD *fecbd_tx_alloc(uint8_t);
-extern FECBD *fecbd_tx_free(uint8_t);
-
-/*******************************************************************/
-
-#endif /* _FECBD_H_ */
diff --git a/BaS_gcc/include/ff.h b/BaS_gcc/include/ff.h
deleted file mode 100644
index a4eb4a1..0000000
--- a/BaS_gcc/include/ff.h
+++ /dev/null
@@ -1,337 +0,0 @@
-/*---------------------------------------------------------------------------/
-/ FatFs - FAT file system module include file R0.09a (C)ChaN, 2012
-/----------------------------------------------------------------------------/
-/ FatFs module is a generic FAT file system module for small embedded systems.
-/ This is a free software that opened for education, research and commercial
-/ developments under license policy of following terms.
-/
-/ Copyright (C) 2012, ChaN, all right reserved.
-/
-/ * The FatFs module is a free software and there is NO WARRANTY.
-/ * No restriction on use. You can use, modify and redistribute it for
-/ personal, non-profit or commercial product UNDER YOUR RESPONSIBILITY.
-/ * Redistributions of source code must retain the above copyright notice.
-/
-/----------------------------------------------------------------------------*/
-
-#ifndef _FATFS
-#define _FATFS 4004 /* Revision ID */
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include
-#include /* FatFs configuration options */
-
-#if _FATFS != _FFCONF
-#error Wrong configuration file (ffconf.h).
-#endif
-
-
-
-/* Definitions of volume management */
-
-#if _MULTI_PARTITION /* Multiple partition configuration */
-typedef struct {
- uint8_t pd; /* Physical drive number */
- uint8_t pt; /* Partition: 0:Auto detect, 1-4:Forced partition) */
-} PARTITION;
-extern PARTITION VolToPart[]; /* Volume - Partition resolution table */
-#define LD2PD(vol) (VolToPart[vol].pd) /* Get physical drive number */
-#define LD2PT(vol) (VolToPart[vol].pt) /* Get partition index */
-
-#else /* Single partition configuration */
-#define LD2PD(vol) (uint8_t)(vol) /* Each logical drive is bound to the same physical drive number */
-#define LD2PT(vol) 0 /* Always mounts the 1st partition or in SFD */
-
-#endif
-
-
-
-/* Type of path name strings on FatFs API */
-
-#if _LFN_UNICODE /* Unicode string */
-#if !_USE_LFN
-#error _LFN_UNICODE must be 0 in non-LFN cfg.
-#endif
-#ifndef _INC_TCHAR
-typedef uint16_t TCHAR;
-#define _T(x) L ## x
-#define _TEXT(x) L ## x
-#endif
-
-#else /* ANSI/OEM string */
-#ifndef _INC_TCHAR
-typedef char TCHAR;
-#define _T(x) x
-#define _TEXT(x) x
-#endif
-
-#endif
-
-
-
-/* File system object structure (FATFS) */
-
-typedef struct {
- uint8_t fs_type; /* FAT sub-type (0:Not mounted) */
- uint8_t drv; /* Physical drive number */
- uint8_t csize; /* Sectors per cluster (1,2,4...128) */
- uint8_t n_fats; /* Number of FAT copies (1,2) */
- uint8_t wflag; /* win[] dirty flag (1:must be written back) */
- uint8_t fsi_flag; /* fsinfo dirty flag (1:must be written back) */
- uint16_t id; /* File system mount ID */
- uint16_t n_rootdir; /* Number of root directory entries (FAT12/16) */
-#if _MAX_SS != 512
- uint16_t ssize; /* Bytes per sector (512, 1024, 2048 or 4096) */
-#endif
-#if _FS_REENTRANT
- _SYNC_t sobj; /* Identifier of sync object */
-#endif
-#if !_FS_READONLY
- uint32_t last_clust; /* Last allocated cluster */
- uint32_t free_clust; /* Number of free clusters */
- uint32_t fsi_sector; /* fsinfo sector (FAT32) */
-#endif
-#if _FS_RPATH
- uint32_t cdir; /* Current directory start cluster (0:root) */
-#endif
- uint32_t n_fatent; /* Number of FAT entries (= number of clusters + 2) */
- uint32_t fsize; /* Sectors per FAT */
- uint32_t fatbase; /* FAT start sector */
- uint32_t dirbase; /* Root directory start sector (FAT32:Cluster#) */
- uint32_t database; /* Data start sector */
- uint32_t winsect; /* Current sector appearing in the win[] */
- uint8_t win[_MAX_SS]; /* Disk access window for Directory, FAT (and Data on tiny cfg) */
-} FATFS;
-
-
-
-/* File object structure (FIL) */
-
-typedef struct {
- FATFS* fs; /* Pointer to the related file system object */
- uint16_t id; /* File system mount ID of the related file system object */
- uint8_t flag; /* File status flags */
- uint8_t pad1;
- uint32_t fptr; /* File read/write pointer (0ed on file open) */
- uint32_t fsize; /* File size */
- uint32_t sclust; /* File data start cluster (0:no data cluster, always 0 when fsize is 0) */
- uint32_t clust; /* Current cluster of fpter */
- uint32_t dsect; /* Current data sector of fpter */
-#if !_FS_READONLY
- uint32_t dir_sect; /* Sector containing the directory entry */
- uint8_t* dir_ptr; /* Pointer to the directory entry in the window */
-#endif
-#if _USE_FASTSEEK
- uint32_t* cltbl; /* Pointer to the cluster link map table (null on file open) */
-#endif
-#if _FS_LOCK
- uint32_t lockid; /* File lock ID (index of file semaphore table Files[]) */
-#endif
-#if !_FS_TINY
- uint8_t buf[_MAX_SS]; /* File data read/write buffer */
-#endif
-} FIL;
-
-
-
-/* Directory object structure (DIR) */
-
-typedef struct {
- FATFS* fs; /* Pointer to the owner file system object */
- uint16_t id; /* Owner file system mount ID */
- uint16_t index; /* Current read/write index number */
- uint32_t sclust; /* Table start cluster (0:Root dir) */
- uint32_t clust; /* Current cluster */
- uint32_t sect; /* Current sector */
- uint8_t* dir; /* Pointer to the current SFN entry in the win[] */
- uint8_t* fn; /* Pointer to the SFN (in/out) {file[8],ext[3],status[1]} */
-#if _USE_LFN
- uint16_t* lfn; /* Pointer to the LFN working buffer */
- uint16_t lfn_idx; /* Last matched LFN index number (0xFFFF:No LFN) */
-#endif
-} DIR;
-
-
-
-/* File status structure (FILINFO) */
-
-typedef struct {
- uint32_t fsize; /* File size */
- uint16_t fdate; /* Last modified date */
- uint16_t ftime; /* Last modified time */
- uint8_t fattrib; /* Attribute */
- TCHAR fname[13]; /* Short file name (8.3 format) */
-#if _USE_LFN
- TCHAR* lfname; /* Pointer to the LFN buffer */
- uint32_t lfsize; /* Size of LFN buffer in TCHAR */
-#endif
-} FILINFO;
-
-
-
-/* File function return code (FRESULT) */
-
-typedef enum {
- FR_OK = 0, /* (0) Succeeded */
- FR_DISK_ERR, /* (1) A hard error occurred in the low level disk I/O layer */
- FR_INT_ERR, /* (2) Assertion failed */
- FR_NOT_READY, /* (3) The physical drive cannot work */
- FR_NO_FILE, /* (4) Could not find the file */
- FR_NO_PATH, /* (5) Could not find the path */
- FR_INVALID_NAME, /* (6) The path name format is invalid */
- FR_DENIED, /* (7) Access denied due to prohibited access or directory full */
- FR_EXIST, /* (8) Access denied due to prohibited access */
- FR_INVALID_OBJECT, /* (9) The file/directory object is invalid */
- FR_WRITE_PROTECTED, /* (10) The physical drive is write protected */
- FR_INVALID_DRIVE, /* (11) The logical drive number is invalid */
- FR_NOT_ENABLED, /* (12) The volume has no work area */
- FR_NO_FILESYSTEM, /* (13) There is no valid FAT volume */
- FR_MKFS_ABORTED, /* (14) The f_mkfs() aborted due to any parameter error */
- FR_TIMEOUT, /* (15) Could not get a grant to access the volume within defined period */
- FR_LOCKED, /* (16) The operation is rejected according to the file sharing policy */
- FR_NOT_ENOUGH_CORE, /* (17) LFN working buffer could not be allocated */
- FR_TOO_MANY_OPEN_FILES, /* (18) Number of open files > _FS_SHARE */
- FR_INVALID_PARAMETER /* (19) Given parameter is invalid */
-} FRESULT;
-
-
-
-/*--------------------------------------------------------------*/
-/* FatFs module application interface */
-
-FRESULT f_mount (uint8_t, FATFS*); /* Mount/Unmount a logical drive */
-FRESULT f_open (FIL*, const TCHAR*, uint8_t); /* Open or create a file */
-FRESULT f_read (FIL*, void*, uint32_t, uint32_t*); /* Read data from a file */
-FRESULT f_lseek (FIL*, uint32_t); /* Move file pointer of a file object */
-FRESULT f_close (FIL*); /* Close an open file object */
-FRESULT f_opendir (DIR*, const char*); /* Open an existing directory */
-FRESULT f_readdir (DIR*, FILINFO*); /* Read a directory item */
-FRESULT f_stat (const TCHAR*, FILINFO*); /* Get file status */
-FRESULT f_write (FIL*, const void*, uint32_t, uint32_t*); /* Write data to a file */
-FRESULT f_getfree (const TCHAR*, uint32_t*, FATFS**); /* Get number of free clusters on the drive */
-FRESULT f_truncate (FIL*); /* Truncate file */
-FRESULT f_sync (FIL*); /* Flush cached data of a writing file */
-FRESULT f_unlink (const TCHAR*); /* Delete an existing file or directory */
-FRESULT f_mkdir (const TCHAR*); /* Create a new directory */
-FRESULT f_chmod (const TCHAR*, uint8_t, uint8_t); /* Change attribute of the file/dir */
-FRESULT f_utime (const TCHAR*, const FILINFO*); /* Change times-tamp of the file/dir */
-FRESULT f_rename (const TCHAR*, const TCHAR*); /* Rename/Move a file or directory */
-FRESULT f_chdrive (uint8_t); /* Change current drive */
-FRESULT f_chdir (const TCHAR*); /* Change current directory */
-FRESULT f_getcwd (TCHAR*, uint32_t); /* Get current directory */
-FRESULT f_forward (FIL*, uint32_t(*)(const uint8_t*,uint32_t), uint32_t, uint32_t*); /* Forward data to the stream */
-FRESULT f_mkfs (uint8_t, uint8_t, uint32_t); /* Create a file system on the drive */
-FRESULT f_fdisk (uint8_t, const uint32_t[], void*); /* Divide a physical drive into some partitions */
-int f_putc (TCHAR, FIL*); /* Put a character to the file */
-int f_puts (const TCHAR*, FIL*); /* Put a string to the file */
-int f_printf (FIL*, const TCHAR*, ...); /* Put a formatted string to the file */
-TCHAR* f_gets (TCHAR*, int, FIL*); /* Get a string from the file */
-
-#define f_eof(fp) (((fp)->fptr == (fp)->fsize) ? 1 : 0)
-#define f_error(fp) (((fp)->flag & FA__ERROR) ? 1 : 0)
-#define f_tell(fp) ((fp)->fptr)
-#define f_size(fp) ((fp)->fsize)
-
-#ifndef EOF
-#define EOF (-1)
-#endif
-
-
-
-
-/*--------------------------------------------------------------*/
-/* Additional user defined functions */
-
-/* RTC function */
-#if !_FS_READONLY
-uint32_t get_fattime (void);
-#endif
-
-/* Unicode support functions */
-#if _USE_LFN /* Unicode - OEM code conversion */
-uint16_t ff_convert (uint16_t, uint32_t); /* OEM-Unicode bidirectional conversion */
-uint16_t ff_wtoupper (uint16_t); /* Unicode upper-case conversion */
-#if _USE_LFN == 3 /* Memory functions */
-void* ff_memalloc (uint32_t); /* Allocate memory block */
-void ff_memfree (void*); /* Free memory block */
-#endif
-#endif
-
-/* Sync functions */
-#if _FS_REENTRANT
-int ff_cre_syncobj (uint8_t, _SYNC_t*);/* Create a sync object */
-int ff_req_grant (_SYNC_t); /* Lock sync object */
-void ff_rel_grant (_SYNC_t); /* Unlock sync object */
-int ff_del_syncobj (_SYNC_t); /* Delete a sync object */
-#endif
-
-
-
-
-/*--------------------------------------------------------------*/
-/* Flags and offset address */
-
-
-/* File access control and file status flags (FIL.flag) */
-
-#define FA_READ 0x01
-#define FA_OPEN_EXISTING 0x00
-#define FA__ERROR 0x80
-
-#if !_FS_READONLY
-#define FA_WRITE 0x02
-#define FA_CREATE_NEW 0x04
-#define FA_CREATE_ALWAYS 0x08
-#define FA_OPEN_ALWAYS 0x10
-#define FA__WRITTEN 0x20
-#define FA__DIRTY 0x40
-#endif
-
-
-/* FAT sub type (FATFS.fs_type) */
-
-#define FS_FAT12 1
-#define FS_FAT16 2
-#define FS_FAT32 3
-
-
-/* File attribute bits for directory entry */
-
-#define AM_RDO 0x01 /* Read only */
-#define AM_HID 0x02 /* Hidden */
-#define AM_SYS 0x04 /* System */
-#define AM_VOL 0x08 /* Volume label */
-#define AM_LFN 0x0F /* LFN entry */
-#define AM_DIR 0x10 /* Directory */
-#define AM_ARC 0x20 /* Archive */
-#define AM_MASK 0x3F /* Mask of defined bits */
-
-
-/* Fast seek feature */
-#define CREATE_LINKMAP 0xFFFFFFFF
-
-
-
-/*--------------------------------*/
-/* Multi-byte word access macros */
-
-#if _WORD_ACCESS == 1 /* Enable word access to the FAT structure */
-#define LD_WORD(ptr) (uint16_t)(* (uint16_t *)(uint8_t *)(ptr))
-#define LD_DWORD(ptr) (uint32_t)(* (uint32_t *)(uint8_t *)(ptr))
-#define ST_WORD(ptr,val) *(uint16_t *) (uint8_t *)(ptr) = (uint16_t)(val)
-#define ST_DWORD(ptr,val) *(uint32_t *) (uint8_t *)(ptr) = (uint32_t)(val)
-#else /* Use byte-by-byte access to the FAT structure */
-#define LD_WORD(ptr) (uint16_t)(((uint16_t)*((uint8_t *)(ptr) + 1) << 8) | (uint16_t) *(uint8_t *)(ptr))
-#define LD_DWORD(ptr) (uint32_t)(((uint32_t)*((uint8_t *)(ptr) + 3) << 24) | ((uint32_t)*((uint8_t*)(ptr) + 2) << 16) | ((uint16_t) *((uint8_t*)(ptr) + 1) << 8) | *(uint8_t*)(ptr))
-#define ST_WORD(ptr,val) *(uint8_t *)(ptr) = (uint8_t)(val); *((uint8_t *)(ptr) + 1) = (uint8_t)((uint16_t)(val) >> 8)
-#define ST_DWORD(ptr,val) *(uint8_t *)(ptr) = (uint8_t)(val); *((uint8_t *)(ptr) + 1) = (uint8_t)((uint16_t)(val) >> 8); *((uint8_t*)(ptr) + 2) = (uint8_t)((uint32_t)(val) >> 16); *((uint8_t *)(ptr) + 3) = (uint8_t)((uint32_t)(val) >> 24)
-#endif
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _FATFS */
diff --git a/BaS_gcc/include/ffconf.h b/BaS_gcc/include/ffconf.h
deleted file mode 100644
index 2247451..0000000
--- a/BaS_gcc/include/ffconf.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/*---------------------------------------------------------------------------/
-/ FatFs - FAT file system module configuration file R0.09a (C)ChaN, 2012
-/----------------------------------------------------------------------------/
-/
-/ CAUTION! Do not forget to make clean the project after any changes to
-/ the configuration options.
-/
-/----------------------------------------------------------------------------*/
-#ifndef _FFCONF
-#define _FFCONF 4004 /* Revision ID */
-
-
-/*---------------------------------------------------------------------------/
-/ Functions and Buffer Configurations
-/----------------------------------------------------------------------------*/
-
-#define _FS_TINY 0 /* 0:Normal or 1:Tiny */
-/* When _FS_TINY is set to 1, FatFs uses the sector buffer in the file system
-/ object instead of the sector buffer in the individual file object for file
-/ data transfer. This reduces memory consumption 512 bytes each file object. */
-
-
-#define _FS_READONLY 0 /* 0:Read/Write or 1:Read only */
-/* Setting _FS_READONLY to 1 defines read only configuration. This removes
-/ writing functions, f_write, f_sync, f_unlink, f_mkdir, f_chmod, f_rename,
-/ f_truncate and useless f_getfree. */
-
-
-#define _FS_MINIMIZE 0 /* 0 to 3 */
-/* The _FS_MINIMIZE option defines minimization level to remove some functions.
-/
-/ 0: Full function.
-/ 1: f_stat, f_getfree, f_unlink, f_mkdir, f_chmod, f_truncate and f_rename
-/ are removed.
-/ 2: f_opendir and f_readdir are removed in addition to 1.
-/ 3: f_lseek is removed in addition to 2. */
-
-
-#define _USE_STRFUNC 1 /* 0:Disable or 1-2:Enable */
-/* To enable string functions, set _USE_STRFUNC to 1 or 2. */
-
-
-#define _USE_MKFS 0 /* 0:Disable or 1:Enable */
-/* To enable f_mkfs function, set _USE_MKFS to 1 and set _FS_READONLY to 0 */
-
-
-#define _USE_FORWARD 0 /* 0:Disable or 1:Enable */
-/* To enable f_forward function, set _USE_FORWARD to 1 and set _FS_TINY to 1. */
-
-
-#define _USE_FASTSEEK 0 /* 0:Disable or 1:Enable */
-/* To enable fast seek feature, set _USE_FASTSEEK to 1. */
-
-
-
-/*---------------------------------------------------------------------------/
-/ Locale and Namespace Configurations
-/----------------------------------------------------------------------------*/
-
-#define _CODE_PAGE 858
-/* The _CODE_PAGE specifies the OEM code page to be used on the target system.
-/ Incorrect setting of the code page can cause a file open failure.
-/
-/ 932 - Japanese Shift-JIS (DBCS, OEM, Windows)
-/ 936 - Simplified Chinese GBK (DBCS, OEM, Windows)
-/ 949 - Korean (DBCS, OEM, Windows)
-/ 950 - Traditional Chinese Big5 (DBCS, OEM, Windows)
-/ 1250 - Central Europe (Windows)
-/ 1251 - Cyrillic (Windows)
-/ 1252 - Latin 1 (Windows)
-/ 1253 - Greek (Windows)
-/ 1254 - Turkish (Windows)
-/ 1255 - Hebrew (Windows)
-/ 1256 - Arabic (Windows)
-/ 1257 - Baltic (Windows)
-/ 1258 - Vietnam (OEM, Windows)
-/ 437 - U.S. (OEM)
-/ 720 - Arabic (OEM)
-/ 737 - Greek (OEM)
-/ 775 - Baltic (OEM)
-/ 850 - Multilingual Latin 1 (OEM)
-/ 858 - Multilingual Latin 1 + Euro (OEM)
-/ 852 - Latin 2 (OEM)
-/ 855 - Cyrillic (OEM)
-/ 866 - Russian (OEM)
-/ 857 - Turkish (OEM)
-/ 862 - Hebrew (OEM)
-/ 874 - Thai (OEM, Windows)
-/ 1 - ASCII only (Valid for non LFN cfg.)
-*/
-
-
-#define _USE_LFN 0 /* 0 to 3 */
-#define _MAX_LFN 255 /* Maximum LFN length to handle (12 to 255) */
-/* The _USE_LFN option switches the LFN support.
-/
-/ 0: Disable LFN feature. _MAX_LFN and _LFN_UNICODE have no effect.
-/ 1: Enable LFN with static working buffer on the BSS. Always NOT reentrant.
-/ 2: Enable LFN with dynamic working buffer on the STACK.
-/ 3: Enable LFN with dynamic working buffer on the HEAP.
-/
-/ The LFN working buffer occupies (_MAX_LFN + 1) * 2 bytes. To enable LFN,
-/ Unicode handling functions ff_convert() and ff_wtoupper() must be added
-/ to the project. When enable to use heap, memory control functions
-/ ff_memalloc() and ff_memfree() must be added to the project. */
-
-
-#define _LFN_UNICODE 0 /* 0:ANSI/OEM or 1:Unicode */
-/* To switch the character code set on FatFs API to Unicode,
-/ enable LFN feature and set _LFN_UNICODE to 1. */
-
-
-#define _FS_RPATH 0 /* 0 to 2 */
-/* The _FS_RPATH option configures relative path feature.
-/
-/ 0: Disable relative path feature and remove related functions.
-/ 1: Enable relative path. f_chdrive() and f_chdir() are available.
-/ 2: f_getcwd() is available in addition to 1.
-/
-/ Note that output of the f_readdir fnction is affected by this option. */
-
-
-
-/*---------------------------------------------------------------------------/
-/ Physical Drive Configurations
-/----------------------------------------------------------------------------*/
-
-#define _VOLUMES 1
-/* Number of volumes (logical drives) to be used. */
-
-
-#define _MAX_SS 512 /* 512, 1024, 2048 or 4096 */
-/* Maximum sector size to be handled.
-/ Always set 512 for memory card and hard disk but a larger value may be
-/ required for on-board flash memory, floppy disk and optical disk.
-/ When _MAX_SS is larger than 512, it configures FatFs to variable sector size
-/ and GET_SECTOR_SIZE command must be implememted to the disk_ioctl function. */
-
-
-#define _MULTI_PARTITION 0 /* 0:Single partition, 1/2:Enable multiple partition */
-/* When set to 0, each volume is bound to the same physical drive number and
-/ it can mount only first primaly partition. When it is set to 1, each volume
-/ is tied to the partitions listed in VolToPart[]. */
-
-
-#define _USE_ERASE 0 /* 0:Disable or 1:Enable */
-/* To enable sector erase feature, set _USE_ERASE to 1. CTRL_ERASE_SECTOR command
-/ should be added to the disk_ioctl functio. */
-
-
-
-/*---------------------------------------------------------------------------/
-/ System Configurations
-/----------------------------------------------------------------------------*/
-
-#define _WORD_ACCESS 0 /* 0 or 1 */
-/* Set 0 first and it is always compatible with all platforms. The _WORD_ACCESS
-/ option defines which access method is used to the word data on the FAT volume.
-/
-/ 0: Byte-by-byte access.
-/ 1: Word access. Do not choose this unless following condition is met.
-/
-/ When the byte order on the memory is big-endian or address miss-aligned word
-/ access results incorrect behavior, the _WORD_ACCESS must be set to 0.
-/ If it is not the case, the value can also be set to 1 to improve the
-/ performance and code size.
-*/
-
-
-/* A header file that defines sync object types on the O/S, such as
-/ windows.h, ucos_ii.h and semphr.h, must be included prior to ff.h. */
-
-#define _FS_REENTRANT 0 /* 0:Disable or 1:Enable */
-#define _FS_TIMEOUT 1000 /* Timeout period in unit of time ticks */
-#define _SYNC_t HANDLE /* O/S dependent type of sync object. e.g. HANDLE, OS_EVENT*, ID and etc.. */
-
-/* The _FS_REENTRANT option switches the reentrancy (thread safe) of the FatFs module.
-/
-/ 0: Disable reentrancy. _SYNC_t and _FS_TIMEOUT have no effect.
-/ 1: Enable reentrancy. Also user provided synchronization handlers,
-/ ff_req_grant, ff_rel_grant, ff_del_syncobj and ff_cre_syncobj
-/ function must be added to the project. */
-
-
-#define _FS_LOCK 0 /* 0:Disable or >=1:Enable */
-/* To enable file lock control feature, set _FS_LOCK to 1 or greater.
- The value defines how many files can be opened simultaneously. */
-
-
-#endif /* _FFCONFIG */
diff --git a/BaS_gcc/include/firebee.h b/BaS_gcc/include/firebee.h
deleted file mode 100644
index 4018764..0000000
--- a/BaS_gcc/include/firebee.h
+++ /dev/null
@@ -1,51 +0,0 @@
-#ifndef _FIREBEE_H_
-#define _FIREBEE_H_
-
-/*
- * firebee.h
- *
- * preprocessor definitions for the Firebee machine. This file should contain nothing but preprocessor
- * definition that evaluate to numbers. It is intended for use in C sources as well as in linker control
- * files, so care must be taken to not break the syntax of either one.
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#define SYSCLK 132000 /* NOTE: 132 _is_ correct. 133 _is_ wrong. Do not change! */
-
-#define BOOTFLASH_BASE_ADDRESS 0xE0000000
-#define BOOTFLASH_SIZE 0x800000 /* FireBee has 8 MByte Flash */
-#define BOOTFLASH_BAM (BOOTFLASH_SIZE - 1)
-
-#define SDRAM_START 0x00000000 /* start at address 0 */
-#define SDRAM_SIZE 0x20000000 /* 512 MB on the Firebee */
-
-#ifdef COMPILE_RAM
-#define TARGET_ADDRESS (SDRAM_START + SDRAM_SIZE - 0x200000)
-#else
-#define TARGET_ADDRESS BOOTFLASH_BASE_ADDRESS
-#define BFL_TARGET_ADDRESS 0x0100000 /* load address for basflash */
-
-#endif /* COMPILE_RAM */
-
-#define DRIVER_MEM_BUFFER_SIZE 0x100000
-
-#define EMUTOS_BASE_ADDRESS 0xe0600000
-
-#endif /* _FIREBEE_H_ */
diff --git a/BaS_gcc/include/font.h b/BaS_gcc/include/font.h
deleted file mode 100644
index 92b9e32..0000000
--- a/BaS_gcc/include/font.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * font.h - font specific definitions
- *
- * Copyright (c) 2001 Lineo, Inc.
- * Copyright (c) 2004 by Authors:
- *
- * Authors:
- * MAD Martin Doering
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-#ifndef FONT_H
-#define FONT_H
-
-#include
-
-/* font header flags */
-
-#define F_DEFAULT 1 /* this is the default font (face and size) */
-#define F_HORZ_OFF 2 /* there are left and right offset tables */
-#define F_STDFORM 4 /* is the font in standard format */
-#define F_MONOSPACE 8 /* is the font monospaced */
-
-/* font style bits */
-
-#define F_THICKEN 1
-#define F_LIGHT 2
-#define F_SKEW 4
-#define F_UNDER 8
-#define F_OUTLINE 16
-#define F_SHADOW 32
-
-/* font specific linea variables */
-
-extern const uint16_t *v_fnt_ad; /* address of current monospace font */
-extern const uint16_t *v_off_ad; /* address of font offset table */
-extern uint16_t v_fnt_nd; /* ascii code of last cell in font */
-extern uint16_t v_fnt_st; /* ascii code of first cell in font */
-extern uint16_t v_fnt_wr; /* font cell wrap */
-
-/* character cell specific linea variables */
-
-extern uint16_t v_cel_ht; /* cell height (width is 8) */
-extern uint16_t v_cel_mx; /* needed by MiNT: columns on the screen minus 1 */
-extern uint16_t v_cel_my; /* needed by MiNT: rows on the screen minus 1 */
-extern uint16_t v_cel_wr; /* needed by MiNT: length (in int8_ts) of a line of characters */
-
-/*
- * font_ring is a struct of four pointers, each of which points to
- * a list of font headers linked together to form a string.
- */
-
-extern struct font_head *font_ring[4]; /* Ring of available fonts */
-extern int16_t font_count; /* all three fonts and NULL */
-
-/* the font header descibes a font */
-
-struct font_head {
- int16_t font_id;
- int16_t point;
- int8_t name[32];
- uint16_t first_ade;
- uint16_t last_ade;
- uint16_t top;
- uint16_t ascent;
- uint16_t half;
- uint16_t descent;
- uint16_t bottom;
- uint16_t max_char_width;
- uint16_t max_cell_width;
- uint16_t left_offset; /* amount character slants left when skewed */
- uint16_t right_offset; /* amount character slants right */
- uint16_t thicken; /* number of pixels to smear */
- uint16_t ul_size; /* size of the underline */
- uint16_t lighten; /* mask to and with to lighten */
- uint16_t skew; /* mask for skewing */
- uint16_t flags;
-
- const uint8_t *hor_table; /* horizontal offsets */
- const uint16_t *off_table; /* character offsets */
- const uint16_t *dat_table; /* character definitions */
- uint16_t form_width;
- uint16_t form_height;
-
- struct font_head *next_font;/* pointer to next font */
- uint16_t font_seg;
-};
-
-
-
-/* prototypes */
-
-void font_init(void); /* initialize BIOS font ring */
-void font_set_default(void); /* choose the default font */
-
-extern struct font_head *fnt;
-
-#endif /* FONT_H */
diff --git a/BaS_gcc/include/i2c-algo-bit.h b/BaS_gcc/include/i2c-algo-bit.h
deleted file mode 100644
index 92545ac..0000000
--- a/BaS_gcc/include/i2c-algo-bit.h
+++ /dev/null
@@ -1,55 +0,0 @@
-/* ------------------------------------------------------------------------- */
-/* i2c-algo-bit.h i2c driver algorithms for bit-shift adapters */
-/* ------------------------------------------------------------------------- */
-/* Copyright (C) 1995-99 Simon G. Vogl
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-/* ------------------------------------------------------------------------- */
-
-/* With some changes from Kyösti Mälkki and even
- Frodo Looijaard */
-
-/* $Id: i2c-algo-bit.h,v 1.1.1.1 2012/08/16 18:43:05 mfro Exp $ */
-
-#ifndef I2C_ALGO_BIT_H
-#define I2C_ALGO_BIT_H
-
-/* --- Defines for bit-adapters --------------------------------------- */
-/*
- * This struct contains the hw-dependent functions of bit-style adapters to
- * manipulate the line states, and to init any hw-specific features. This is
- * only used if you have more than one hw-type of adapter running.
- */
-struct i2c_algo_bit_data
-{
- void *data; /* private data for lowlevel routines */
- void (*setsda) (void *data, int state);
- void (*setscl) (void *data, int state);
- int (*getsda) (void *data);
- int (*getscl) (void *data);
-
- /* local settings */
- int udelay; /* half-clock-cycle time in microsecs */
- /* i.e. clock is (500 / udelay) KHz */
- int mdelay; /* in millisecs, unused */
- int timeout; /* in jiffies */
-};
-
-#define I2C_BIT_ADAP_MAX 16
-
-int i2c_bit_add_bus(struct i2c_adapter *);
-int i2c_bit_del_bus(struct i2c_adapter *);
-
-#endif /* I2C_ALGO_BIT_H */
diff --git a/BaS_gcc/include/i2c.h b/BaS_gcc/include/i2c.h
deleted file mode 100644
index 4645f89..0000000
--- a/BaS_gcc/include/i2c.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/* ------------------------------------------------------------------------- */
-/* */
-/* i2c.h - definitions for the i2c-bus interface */
-/* */
-/* ------------------------------------------------------------------------- */
-/* Copyright (C) 1995-2000 Simon G. Vogl
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-/* ------------------------------------------------------------------------- */
-
-/* With some changes from Kyösti Mälkki and
- Frodo Looijaard */
-
-/* $Id: i2c.h,v 1.1.1.1 2012/08/16 18:43:05 mfro Exp $ */
-
-#ifndef _I2C_H
-#define _I2C_H
-
-#include "bas_types.h"
-
-/* --- General options ------------------------------------------------ */
-
-struct i2c_msg;
-struct i2c_algorithm;
-struct i2c_adapter;
-
-/* Transfer num messages.
- */
-extern int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num);
-
-/*
- * The following structs are for those who like to implement new bus drivers:
- * i2c_algorithm is the interface to a class of hardware solutions which can
- * be addressed using the same bus algorithms - i.e. bit-banging or the PCF8584
- * to name two of the most common.
- */
-struct i2c_algorithm
-{
- unsigned int id;
- int (*master_xfer)(struct i2c_adapter *adap,struct i2c_msg *msgs, int num);
- /* --- ioctl like call to set div. parameters. */
- int (*algo_control)(struct i2c_adapter *, unsigned int, unsigned long);
-};
-
-/*
- * i2c_adapter is the structure used to identify a physical i2c bus along
- * with the access algorithms necessary to access it.
- */
-struct i2c_adapter
-{
- struct i2c_algorithm *algo; /* the algorithm to access the bus */
- void *algo_data;
- int timeout;
- int retries;
- int nr;
-};
-
-/*
- * I2C Message - used for pure i2c transaction, also from /dev interface
- */
-struct i2c_msg
-{
- unsigned short addr; /* slave address */
- unsigned short flags;
-#define I2C_M_TEN 0x10 /* we have a ten bit chip address */
-#define I2C_M_RD 0x01
-#define I2C_M_NOSTART 0x4000
-#define I2C_M_REV_DIR_ADDR 0x2000
-#define I2C_M_IGNORE_NAK 0x1000
-#define I2C_M_NO_RD_ACK 0x0800
- unsigned short len; /* msg length */
- unsigned char *buf; /* pointer to msg data */
-};
-
-/*
-extern void i2c_init(void);
-extern void i2c_set_frequency(int hz);
-extern int i2c_read(int address, char *data, int lengt, bool repeated);
-extern int i2c_read_byte(int ack);
-extern int i2c_write(int address, const char *data, int length, bool repeated);
-extern int i2c_write_byte(int data);
-extern void i2c_start(void);
-extern void i2c_stop(void);
-*/
-#endif /* _I2C_H */
diff --git a/BaS_gcc/include/icmp.h b/BaS_gcc/include/icmp.h
deleted file mode 100644
index 2231692..0000000
--- a/BaS_gcc/include/icmp.h
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * File: icmp.h
- * Purpose: Handle Internet Control Message Protocol packets.
- *
- * Notes: See RFC 792 "Internet Control Message Protocol"
- * for more details.
- */
-
-#ifndef _ICMP_H
-#define _ICMP_H
-
-/********************************************************************/
-
-typedef struct
-{
- uint32_t unused;
- uint8_t ih_dg;
-} icmp_dest_unreachable;
-#define ICMP_DEST_UNREACHABLE (3) /* type */
-#define ICMP_NET_UNREACHABLE (0) /* code */
-#define ICMP_HOST_UNREACHABLE (1)
-#define ICMP_PROTOCOL_UNREACHABLE (2)
-#define ICMP_PORT_UNREACHABLE (3)
-#define ICMP_FRAG_NEEDED (4)
-#define ICMP_ROUTE_FAILED (5)
-
-typedef struct
-{
- uint32_t unused;
- uint8_t ih_dg;
-} icmp_time_exceeded;
-#define ICMP_TIME_EXCEEDED (11) /* type */
-#define ICMP_TTL_EXCEEDED (0) /* code */
-#define ICMP_FRAG_TIME_EXCEEDED (1)
-
-typedef struct
-{
- uint8_t pointer;
- uint8_t unused1;
- uint16_t unused2;
- uint8_t ih_dg;
-} icmp_parameter_problem;
-#define ICMP_PARAMETER_PROBLEM (12) /* type */
-#define ICMP_POINTER (0) /* code -- not */
-
-typedef struct
-{
- uint32_t unused;
- uint8_t ih_dg;
-} icmp_source_quench;
-#define ICMP_SOURCE_QUENCH (4) /* type */
-
-typedef struct
-{
- uint32_t gateway_addr;
- uint8_t ih_dg;
-} icmp_redirect;
-#define ICMP_REDIRECT (5) /* type */
-#define ICMP_REDIRECT_NET (0) /* code */
-#define ICMP_REDIRECT_HOST (1)
-#define ICMP_REDIRECT_TOS_NET (2)
-#define ICMP_REDIRECT_TOS_HOST (3)
-
-typedef struct
-{
- uint16_t identifier;
- uint16_t sequence;
- uint8_t data;
-} icmp_echo;
-#define ICMP_ECHO (8) /* type */
-#define ICMP_ECHO_REPLY (0) /* type */
-
-typedef struct
-{
- uint16_t identifier;
- uint16_t sequence;
-} icmp_information;
-#define ICMP_INFORMATION_REQUEST (15) /* type */
-#define ICMP_INFORMATION_REPLY (16) /* type */
-
-typedef struct
-{
- uint16_t identifier;
- uint16_t sequence;
- uint32_t originate_ts;
- uint32_t receive_ts;
- uint32_t transmit_ts;
-} icmp_timestamp;
-#define ICMP_TIMESTAMP (13) /* type */
-#define ICMP_TIMESTAMP_REPLY (14) /* type */
-
-typedef struct
-{
- uint8_t type;
- uint8_t code;
- uint16_t chksum;
- union
- {
- icmp_dest_unreachable dest_unreachable;
- icmp_source_quench source_quench;
- icmp_redirect redirect;
- icmp_time_exceeded time_exceeded;
- icmp_parameter_problem parameter_problem;
- icmp_timestamp timestamp;
- icmp_information information;
- icmp_echo echo;
- } msg;
-} icmp_message;
-
-/********************************************************************/
-
-/* Protocol Header information */
-#define ICMP_HDR_OFFSET (ETH_HDR_LEN + IP_HDR_SIZE)
-#define ICMP_HDR_SIZE 8
-
-void
-icmp_handler(NIF *, NBUF *);
-
-/********************************************************************/
-
-#endif /* _ICMP_H */
diff --git a/BaS_gcc/include/ikbd.h b/BaS_gcc/include/ikbd.h
deleted file mode 100644
index 2f6927b..0000000
--- a/BaS_gcc/include/ikbd.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef _IKBD_H_
-#define _IKBD_H_
-
-extern void ikbd_init(void);
-extern void ikbd_poll(void);
-extern void ikbd_joystick(uint8_t joy, uint8_t map);
-extern void ikbd_mouse(uint8_t buttons, int8_t x, int8_t y);
-extern void ikbd_keyboard(uint8_t code);
-
-#endif /* _IKBD_H_ */
-
diff --git a/BaS_gcc/include/interrupts.h b/BaS_gcc/include/interrupts.h
deleted file mode 100644
index 5b6ebac..0000000
--- a/BaS_gcc/include/interrupts.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/*
- * interrupts.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- *
- * Created on: 08.08.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _INTERRUPTS_H_
-#define _INTERRUPTS_H_
-
-#include
-
-/* interrupt sources */
-#define INT_SOURCE_EPORT_EPF1 1 // edge port flag 1
-#define INT_SOURCE_EPORT_EPF2 2 // edge port flag 2
-#define INT_SOURCE_EPORT_EPF3 3 // edge port flag 3
-#define INT_SOURCE_EPORT_EPF4 4 // edge port flag 4
-#define INT_SOURCE_EPORT_EPF5 5 // edge port flag 5
-#define INT_SOURCE_EPORT_EPF6 6 // edge port flag 6
-#define INT_SOURCE_EPORT_EPF7 7 // edge port flag 7
-#define INT_SOURCE_USB_EP0ISR 15 // USB endpoint 0 interrupt
-#define INT_SOURCE_USB_EP1ISR 16 // USB endpoint 1 interrupt
-#define INT_SOURCE_USB_EP2ISR 17 // USB endpoint 2 interrupt
-#define INT_SOURCE_USB_EP3ISR 18 // USB endpoint 3 interrupt
-#define INT_SOURCE_USB_EP4ISR 19 // USB endpoint 4 interrupt
-#define INT_SOURCE_USB_EP5ISR 20 // USB endpoint 5 interrupt
-#define INT_SOURCE_USB_EP6ISR 21 // USB endpoint 6 interrupt
-#define INT_SOURCE_USB_USBISR 22 // USB general interrupt
-#define INT_SOURCE_USB_USBAISR 23 // USB core interrupt
-#define INT_SOURCE_USB_ANY 24 // OR of all USB interrupts
-#define INT_SOURCE_USB_DSPI_OVF 25 // DSPI overflow or underflow
-#define INT_SOURCE_USB_DSPI_RFOF 26 // receive FIFO overflow interrupt
-#define INT_SOURCE_USB_DSPI_RFDF 27 // receive FIFO drain interrupt
-#define INT_SOURCE_USB_DSPI_TFUF 28 // transmit FIFO underflow interrupt
-#define INT_SOURCE_USB_DSPI_TCF 29 // transfer complete interrupt
-#define INT_SOURCE_USB_DSPI_TFFF 30 // transfer FIFO fill interrupt
-#define INT_SOURCE_USB_DSPI_EOQF 31 // end of queue interrupt
-#define INT_SOURCE_PSC3 32 // PSC3 interrupt
-#define INT_SOURCE_PSC2 33 // PSC2 interrupt
-#define INT_SOURCE_PSC1 34 // PSC1 interrupt
-#define INT_SOURCE_PSC0 35 // PSC0 interrupt
-#define INT_SOURCE_CTIMERS 36 // combined source for comm timers
-#define INT_SOURCE_SEC 37 // SEC interrupt
-#define INT_SOURCE_FEC1 38 // FEC1 interrupt
-#define INT_SOURCE_FEC0 39 // FEC0 interrupt
-#define INT_SOURCE_I2C 40 // I2C interrupt
-#define INT_SOURCE_PCIARB 41 // PCI arbiter interrupt
-#define INT_SOURCE_CBPCI 42 // COMM bus PCI interrupt
-#define INT_SOURCE_XLBPCI 43 // XLB PCI interrupt
-#define INT_SOURCE_XLBARB 47 // XLBARB to PCI interrupt
-#define INT_SOURCE_DMA 48 // multichannel DMA interrupt
-#define INT_SOURCE_CAN0_ERROR 49 // FlexCAN error interrupt
-#define INT_SOURCE_CAN0_BUSOFF 50 // FlexCAN bus off interrupt
-#define INT_SOURCE_CAN0_MBOR 51 // message buffer ORed interrupt
-#define INT_SOURCE_SLT1 53 // slice timer 1 interrupt
-#define INT_SOURCE_SLT0 54 // slice timer 0 interrupt
-#define INT_SOURCE_CAN1_ERROR 55 // FlexCAN error interrupt
-#define INT_SOURCE_CAN1_BUSOFF 56 // FlexCAN bus off interrupt
-#define INT_SOURCE_CAN1_MBOR 57 // message buffer ORed interrupt
-#define INT_SOURCE_GPT3 59 // GPT3 timer interrupt
-#define INT_SOURCE_GPT2 60 // GPT2 timer interrupt
-#define INT_SOURCE_GPT1 61 // GPT1 timer interrupt
-#define INT_SOURCE_GPT0 62 // GPT0 timer interrupt
-
-
-#define FEC0_INTC_LVL 6 /* interrupt level for FEC0 */
-#define FEC0_INTC_PRI 7 /* interrupt priority for FEC0 */
-
-#define FEC1_INTC_LVL 6 /* interrupt level for FEC1 */
-#define FEC1_INTC_PRI 6 /* interrupt priority for FEC1 */
-
-#define FEC_INTC_LVL(x) ((x == 0) ? FEC0_INTC_LVL : FEC1_INTC_LVL)
-#define FEC_INTC_PRI(x) ((x == 0) ? FEC0_INTC_PRI : FEC1_INTC_PRI)
-
-#define FEC0RX_DMA_PRI 5
-#define FEC1RX_DMA_PRI 4
-#define FECRX_DMA_PRI(x) ((x == 0) ? FEC0RX_DMA_PRI : FEC1RX_DMA_PRI)
-#define FEC0TX_DMA_PRI 2
-#define FEC1TX_DMA_PRI 1
-#define FECTX_DMA_PRI(x) ((x == 0) ? FEC0TX_DMA_PRI : FEC1TX_DMA_PRI)
-
-#if defined(MACHINE_FIREBEE)
-
-/* Firebee FPGA interrupt controller */
-#define FBEE_INTR_CONTROL * ((volatile uint32_t *) 0xf0010000)
-#define FBEE_INTR_ENABLE * ((volatile uint32_t *) 0xf0010004)
-#define FBEE_INTR_CLEAR * ((volatile uint32_t *) 0xf0010008)
-#define FBEE_INTR_PENDING * ((volatile uint32_t *) 0xff01000c)
-
-/* register bits for Firebee FPGA-based interrupt controller */
-#define FBEE_INTR_PIC (1 << 0) /* PIC interrupt enable/pending/clear bit */
-#define FBEE_INTR_ETHERNET (1 << 1) /* ethernet PHY interrupt enable/pending/clear bit */
-#define FBEE_INTR_DVI (1 << 2) /* TFP410 monitor sense interrupt enable/pending/clear bit */
-#define FBEE_INTR_PCI_INTA (1 << 3) /* /PCIINTA enable/pending clear bit */
-#define FBEE_INTR_PCI_INTB (1 << 4) /* /PCIINTB enable/pending clear bit */
-#define FBEE_INTR_PCI_INTC (1 << 5) /* /PCIINTC enable/pending clear bit */
-#define FBEE_INTR_PCI_INTD (1 << 6) /* /PCIINTD enable/pending clear bit */
-#define FBEE_INTR_DSP (1 << 7) /* DSP interrupt enable/pending/clear bit */
-#define FBEE_INTR_VSYNC (1 << 8) /* VSYNC interrupt enable/pending/clear bit */
-#define FBEE_INTR_HSYNC (1 << 9) /* HSYNC interrupt enable/pending/clear bit */
-
-#define FBEE_INTR_INT_HSYNC_IRQ2 (1 << 26) /* these bits are only meaningful for the FBEE_INTR_ENABLE register */
-#define FBEE_INTR_INT_CTR0_IRQ3 (1 << 27)
-#define FBEE_INTR_INT_VSYNC_IRQ4 (1 << 28)
-#define FBEE_INTR_INT_FPGA_IRQ5 (1 << 29)
-#define FBEE_INTR_INT_MFP_IRQ6 (1 << 30)
-#define FBEE_INTR_INT_IRQ7 (1 << 31)
-
-/*
- * Atari MFP interrupt registers.
- */
-
-#define FALCON_MFP_IERA *((volatile uint8_t *) 0xfffffa07)
-#define FALCON_MFP_IERB *((volatile uint8_t *) 0xfffffa09)
-#define FALCON_MFP_IPRA *((volatile uint8_t *) 0xfffffa0b)
-#define FALCON_MFP_IPRB *((volatile uint8_t *) 0xfffffa0d)
-#define FALCON_MFP_IMRA *((volatile uint8_t *) 0xfffffa13)
-#define FALCON_MFP_IMRB *((volatile uint8_t *) 0xfffffa15)
-
-#endif /* MACHINE_FIREBEE */
-
-extern void isr_init(void);
-extern bool isr_set_prio_and_level(int int_source, int priority, int level);
-extern bool isr_enable_int_source(int int_source);
-extern bool isr_register_handler(int vector, int level, int priority, bool (*handler)(void *, void *), void *hdev, void *harg);
-extern void isr_remove_handler(bool (*handler)(void *, void *));
-extern bool isr_execute_handler(int vector);
-extern bool pic_interrupt_handler(void *arg1, void *arg2);
-extern bool xlbpci_interrupt_handler(void *arg1, void *arg2);
-extern bool pciarb_interrupt_handler(void *arg1, void *arg2);
-extern bool xlbarb_interrupt_handler(void *arg1, void *arg2);
-extern bool gpt0_interrupt_handler(void *arg1, void *arg2);
-extern bool irq5_handler(void *arg1, void *arg2);
-#endif /* _INTERRUPTS_H_ */
diff --git a/BaS_gcc/include/ip.h b/BaS_gcc/include/ip.h
deleted file mode 100644
index bde1213..0000000
--- a/BaS_gcc/include/ip.h
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * File: ip.h
- * Purpose: Definitions for the Internet Protocol, IP.
- *
- * Notes: See RFC 791 "DARPA Internet Program Protocol
- * Specification" for more details.
- */
-
-#ifndef _IP_H
-#define _IP_H
-
-
-/* 32-bit IP Addresses */
-typedef uint8_t IP_ADDR[4];
-
-/* Pointer to an IP Address */
-typedef uint8_t IP_ADDR_P[];
-
-/* Definition of an IP packet header */
-typedef struct
-{
- uint8_t version_ihl;
- uint8_t service_type;
- uint16_t total_length;
- uint16_t identification;
- uint16_t flags_frag_offset;
- uint8_t ttl;
- uint8_t protocol;
- uint16_t checksum;
- IP_ADDR source_addr;
- IP_ADDR dest_addr;
- uint8_t options; /* actually an array of undetermined length */
-} ip_frame_hdr;
-
-/* Macros for accessing an IP datagram. */
-#define IP_VERSION(a) ((a->version_ihl & 0x00F0) >> 4)
-#define IP_IHL(a) ((a->version_ihl & 0x000F))
-#define IP_SERVICE(a) (a->service_type)
-#define IP_LENGTH(a) (a->total_length)
-#define IP_IDENT(a) (a->identification)
-#define IP_FLAGS(a) ((a->flags_frag_offset & 0x0000E000) >> 13)
-#define IP_FRAGMENT(a) ((a->flags_frag_offset & 0x00001FFF))
-#define IP_TTL(a) (a->ttl)
-#define IP_PROTOCOL(a) (a->protocol)
-#define IP_CHKSUM(a) (a->checksum)
-#define IP_SRC(a) (&a->source_addr[0])
-#define IP_DEST(a) (&a->dest_addr[0])
-#define IP_OPTIONS(a) (&a->options)
-#define IP_DATA(a) (&((uint8_t *)a)[IP_IHL(a) * 4])
-
-/* Defined IP protocols */
-#define IP_PROTO_ICMP (1)
-#define IP_PROTO_UDP (17)
-
-/* Protocol Header information */
-#define IP_HDR_OFFSET ETH_HDR_LEN
-#define IP_HDR_SIZE 20 /* no options */
-
-
-typedef struct
-{
- IP_ADDR myip;
- IP_ADDR gateway;
- IP_ADDR netmask;
- IP_ADDR broadcast;
- unsigned int rx;
- unsigned int rx_unsup;
- unsigned int tx;
- unsigned int err;
-} IP_INFO;
-
-
-extern void ip_handler(NIF *nif, NBUF *nbf);
-uint16_t ip_chksum(uint16_t *data, int num);
-extern int ip_send(NIF *nif, uint8_t *dest_addr, uint8_t *src_addr, uint8_t protocol, NBUF *nbf);
-extern void ip_init(IP_INFO *, IP_ADDR_P, IP_ADDR_P, IP_ADDR_P);
-extern uint8_t *ip_get_myip(IP_INFO *);
-extern uint8_t *ip_resolve_route(NIF *, IP_ADDR_P);
-
-#endif /* _IP_H */
diff --git a/BaS_gcc/include/m54455.h b/BaS_gcc/include/m54455.h
deleted file mode 100644
index 3f3ae24..0000000
--- a/BaS_gcc/include/m54455.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef _M54455_H_
-#define _M54455_H_
-
-/*
- * m54455.h
- *
- * preprocessor definitions for the M54455 Freescale machine. This file should contain nothing but preprocessor
- * definition that evaluate to numbers. It is intended for use in C sources as well as in linker control
- * files, so care must be taken to not break the syntax of either one.
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#define SYSCLK 133000
-
-#define BOOTFLASH_BASE_ADDRESS 0xe0000000
-#define BOOTFLASH_SIZE 0x800000
-#define BOOTFLASH_BAM (BOOTFLASH_SIZE - 1)
-
-#define SDRAM_START 0x40000000 /* start at address 40000000 */
-#define SDRAM_SIZE 0x10000000 /* 256 MB */
-
-#ifdef COMPILE_RAM
-#define TARGET_ADDRESS (SDRAM_START + SDRAM_SIZE - 0x200000)
-#else
-#define TARGET_ADDRESS BOOTFLASH_BASE_ADDRESS
-#endif /* COMPILE_RAM */
-#define BFL_TARGET_ADDRESS 0x0100000 /* load address for basflash */
-
-#define DRIVER_MEM_BUFFER_SIZE 0x100000
-
-#define EMUTOS_BASE_ADDRESS 0xe0100000
-
-#endif /* _M54455_H_ */
diff --git a/BaS_gcc/include/m5484l.h b/BaS_gcc/include/m5484l.h
deleted file mode 100644
index 192b29d..0000000
--- a/BaS_gcc/include/m5484l.h
+++ /dev/null
@@ -1,50 +0,0 @@
-#ifndef _M5484L_H_
-#define _M5484L_H_
-
-/*
- * m5484l.h
- *
- * preprocessor definitions for the M5484LITE machine. This file should contain nothing but preprocessor
- * definition that evaluate to numbers. It is intended for use in C sources as well as in linker control
- * files, so care must be taken to not break the syntax of either one.
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#define SYSCLK 100000UL
-
-#define BOOTFLASH_BASE_ADDRESS 0xe0000000
-#define BOOTFLASH_SIZE 0x400000 /* LITEKIT has 4MB flash */
-#define BOOTFLASH_BAM (BOOTFLASH_SIZE - 1)
-
-#define SDRAM_START 0x00000000 /* start at address 0 */
-#define SDRAM_SIZE 0x4000000 /* 64 MB on the LITEKIT */
-
-#ifdef COMPILE_RAM
-#define TARGET_ADDRESS (SDRAM_START + SDRAM_SIZE - 0x200000)
-#else
-#define TARGET_ADDRESS BOOTFLASH_BASE_ADDRESS
-#endif /* COMPILE_RAM */
-#define BFL_TARGET_ADDRESS 0x0100000 /* load address for basflash */
-
-#define DRIVER_MEM_BUFFER_SIZE 0x100000
-
-#define EMUTOS_BASE_ADDRESS 0xe0100000
-
-#endif /* _M5484L_H_ */
diff --git a/BaS_gcc/include/mcd_initiators.h b/BaS_gcc/include/mcd_initiators.h
deleted file mode 100644
index c6f41ca..0000000
--- a/BaS_gcc/include/mcd_initiators.h
+++ /dev/null
@@ -1,48 +0,0 @@
-#ifndef _MCD_INITIATORS_H_
-#define _MCD_INITIATORS_H_
-
-/* initiators */
-
-/* direct connected initiators */
-#define DMA_ALWAYS (0)
-#define DMA_DSPI_RXFIFO (1)
-#define DMA_DSPI_TXFIFO (2)
-#define DMA_DREQ0 (3)
-#define DMA_PSC0_RX (4)
-#define DMA_PSC0_TX (5)
-#define DMA_USB_EP0 (6)
-#define DMA_USB_EP1 (7)
-#define DMA_USB_EP2 (8)
-#define DMA_USB_EP3 (9)
-#define DMA_PCI_TX (10)
-#define DMA_PCI_RX (11)
-#define DMA_PSC1_RX (12)
-#define DMA_PSC1_TX (13)
-#define DMA_I2C_RX (14)
-#define DMA_I2C_TX (15)
-
-/* multiplexed initiators */
-#define DMA_FEC0_RX (16)
-#define DMA_FEC0_TX (17)
-#define DMA_FEC1_RX (18)
-#define DMA_FEC1_TX (19)
-#define DMA_DREQ1 (20)
-#define DMA_CTM0 (21)
-#define DMA_CTM1 (22)
-#define DMA_CTM2 (23)
-#define DMA_CTM3 (24)
-#define DMA_CTM4 (25)
-#define DMA_CTM5 (26)
-#define DMA_CTM6 (27)
-#define DMA_CTM7 (28)
-#define DMA_USBEP4 (29)
-#define DMA_USBEP5 (30)
-#define DMA_USBEP6 (31)
-#define DMA_PSC2_RX (32)
-#define DMA_PSC2_TX (33)
-#define DMA_PSC3_RX (34)
-#define DMA_PSC3_TX (35)
-#define DMA_FEC_RX(x) ((x == 0) ? DMA_FEC0_RX : DMA_FEC1_RX)
-#define DMA_FEC_TX(x) ((x == 0) ? DMA_FEC0_TX : DMA_FEC1_TX)
-
-#endif /* _MCD_INITIATORS_H_ */
diff --git a/BaS_gcc/include/mmu.h b/BaS_gcc/include/mmu.h
deleted file mode 100644
index 663b08a..0000000
--- a/BaS_gcc/include/mmu.h
+++ /dev/null
@@ -1,133 +0,0 @@
-/*
- * mmu.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-
-#ifndef _MMU_H_
-#define _MMU_H_
-
-#include
-#include "bas_types.h"
-
-/*
- * ACR register handling macros
- */
-#define ACR_BA(x) ((x) & 0xff000000)
-#define ACR_ADMSK(x) (((x) & 0xff) << 16)
-#define ACR_E(x) (((x) & 1) << 15)
-
-#define ACR_S(x) (((x) & 3) << 13)
-#define ACR_S_USERMODE 0
-#define ACR_S_SUPERVISOR_MODE 1
-#define ACR_S_ALL 2
-
-#define ACR_ADDRESS_MASK_MODE(x) (((x) & 1) << 10)
-
-#define ACR_CACHE_MODE(x) (((x) & 3) << 5)
-#define ACR_SUPERVISOR_PROTECT(x) (((x) & 1) << 3)
-#define ACR_WRITE_PROTECT(x) (((x) & 1) << 2)
-
-#define ACR_AMM(x) (((x) & 1) << 10)
-
-#define ACR_CM(x) (((x) & 3) << 5)
-#define ACR_CM_CACHEABLE_WT 0x0
-#define ACR_CM_CACHEABLE_CB 0x1
-#define ACR_CM_CACHE_INH_PRECISE 0x2
-#define ACR_CM_CACHE_INH_IMPRECISE 0x3
-
-#define ACR_SP(x) (((x) & 1) << 3)
-#define ACR_W(x) (((x) & 1) << 2)
-
-
-/*
- * MMU register handling macros
- */
-
-#define SCA_PAGE_ID 6 /* indicates video memory page */
-
-/*
- * MMU page sizes
- */
-
-enum mmu_page_size
-{
- MMU_PAGE_SIZE_1M = 0,
- MMU_PAGE_SIZE_4K = 1,
- MMU_PAGE_SIZE_8K = 2,
- MMU_PAGE_SIZE_1K = 3
-};
-
-#define MMU_PAGE_SIZE_DEFAULT MMU_PAGE_SIZE_1M /* note: if this changes, SIZE_DEFAULT below _must_ also change */
-
-#define SIZE_1M 0x100000 /* 1 Megabyte */
-#define SIZE_4K 0x1000 /* 4 KB */
-#define SIZE_8K 0x2000 /* 8 KB */
-#define SIZE_1K 0x400 /* 1 KB */
-
-#define SIZE_DEFAULT SIZE_1M
-/*
- * cache modes
- */
-#define CACHE_WRITETHROUGH 0
-#define CACHE_COPYBACK 1
-#define CACHE_NOCACHE_PRECISE 2
-#define CACHE_NOCACHE_IMPRECISE 3
-
-
-/*
- * page flags
- */
-#define SV_PROTECT 1
-#define SV_USER 0
-
-#define ACCESS_READ (1 << 0)
-#define ACCESS_WRITE (1 << 1)
-#define ACCESS_EXECUTE (1 << 2)
-
-
-/*
- * global variables from linker script
- */
-extern long video_tlb;
-extern long video_sbt;
-
-struct mmu_page_descriptor_ram
-{
- uint8_t cache_mode : 2;
- uint8_t supervisor_protect : 1;
- uint8_t read : 1;
- uint8_t write : 1;
- uint8_t execute : 1;
- uint8_t global : 1;
- uint8_t locked : 1;
-};
-
-extern void mmu_init(void);
-extern uint32_t mmu_map_page(uint32_t virt, uint32_t phys, enum mmu_page_size sz, uint8_t page_id, const struct mmu_page_descriptor_ram *flags);
-
-/*
- * API functions for the BaS driver interface
- */
-extern uint32_t mmu_map_data_page_locked(uint32_t address, uint32_t length, int asid);
-extern uint32_t mmu_unlock_data_page(uint32_t address, uint32_t length, int asid);
-extern uint32_t mmu_report_locked_pages(uint32_t *num_itlb, uint32_t *num_dtlb);
-extern uint32_t mmu_report_pagesize(void);
-#endif /* _MMU_H_ */
diff --git a/BaS_gcc/include/mod_devicetable.h b/BaS_gcc/include/mod_devicetable.h
deleted file mode 100644
index 443c6e4..0000000
--- a/BaS_gcc/include/mod_devicetable.h
+++ /dev/null
@@ -1,176 +0,0 @@
-#ifndef MOD_DEVICETABLE_H
-#define MOD_DEVICETABLE_H
-
-#define PCI_ANY_ID (~0)
-
-struct pci_device_id
-{
- unsigned long vendor; /* Vendor and device ID or PCI_ANY_ID*/
- unsigned long device;
- unsigned long subvendor; /* Subsystem ID's or PCI_ANY_ID */
- unsigned long subdevice;
- unsigned long class; /* (class,subclass,prog-if) triplet */
- unsigned long class_mask;
- unsigned long driver_data; /* Data private to the driver */
-};
-
-#define IEEE1394_MATCH_VENDOR_ID 0x0001
-#define IEEE1394_MATCH_MODEL_ID 0x0002
-#define IEEE1394_MATCH_SPECIFIER_ID 0x0004
-#define IEEE1394_MATCH_VERSION 0x0008
-
-struct ieee1394_device_id
-{
- unsigned long match_flags;
- unsigned long vendor_id;
- unsigned long model_id;
- unsigned long specifier_id;
- unsigned long version;
- unsigned long driver_data;
-};
-
-/*
- * Device table entry for "new style" table-driven USB drivers.
- * User mode code can read these tables to choose which modules to load.
- * Declare the table as a MODULE_DEVICE_TABLE.
- *
- * A probe() parameter will point to a matching entry from this table.
- * Use the driver_info field for each match to hold information tied
- * to that match: device quirks, etc.
- *
- * Terminate the driver's table with an all-zeroes entry.
- * Use the flag values to control which fields are compared.
- */
-
-/**
- * struct usb_device_id - identifies USB devices for probing and hotplugging
- * @match_flags: Bit mask controlling of the other fields are used to match
- * against new devices. Any field except for driver_info may be used,
- * although some only make sense in conjunction with other fields.
- * This is usually set by a USB_DEVICE_*() macro, which sets all
- * other fields in this structure except for driver_info.
- * @idVendor: USB vendor ID for a device; numbers are assigned
- * by the USB forum to its members.
- * @idProduct: Vendor-assigned product ID.
- * @bcdDevice_lo: Low end of range of vendor-assigned product version numbers.
- * This is also used to identify individual product versions, for
- * a range consisting of a single device.
- * @bcdDevice_hi: High end of version number range. The range of product
- * versions is inclusive.
- * @bDeviceClass: Class of device; numbers are assigned
- * by the USB forum. Products may choose to implement classes,
- * or be vendor-specific. Device classes specify behavior of all
- * the interfaces on a devices.
- * @bDeviceSubClass: Subclass of device; associated with bDeviceClass.
- * @bDeviceProtocol: Protocol of device; associated with bDeviceClass.
- * @bInterfaceClass: Class of interface; numbers are assigned
- * by the USB forum. Products may choose to implement classes,
- * or be vendor-specific. Interface classes specify behavior only
- * of a given interface; other interfaces may support other classes.
- * @bInterfaceSubClass: Subclass of interface; associated with bInterfaceClass.
- * @bInterfaceProtocol: Protocol of interface; associated with bInterfaceClass.
- * @driver_info: Holds information used by the driver. Usually it holds
- * a pointer to a descriptor understood by the driver, or perhaps
- * device flags.
- *
- * In most cases, drivers will create a table of device IDs by using
- * USB_DEVICE(), or similar macros designed for that purpose.
- * They will then export it to userspace using MODULE_DEVICE_TABLE(),
- * and provide it to the USB core through their usb_driver structure.
- *
- * See the usb_match_id() function for information about how matches are
- * performed. Briefly, you will normally use one of several macros to help
- * construct these entries. Each entry you provide will either identify
- * one or more specific products, or will identify a class of products
- * which have agreed to behave the same. You should put the more specific
- * matches towards the beginning of your table, so that driver_info can
- * record quirks of specific products.
- */
-struct usb_device_id
-{
- /* which fields to match against? */
- unsigned short match_flags;
-
- /* Used for product specific matches; range is inclusive */
- unsigned short idVendor;
- unsigned short idProduct;
- unsigned short bcdDevice_lo;
- unsigned short bcdDevice_hi;
-
- /* Used for device class matches */
- unsigned char bDeviceClass;
- unsigned char bDeviceSubClass;
- unsigned char bDeviceProtocol;
-
- /* Used for interface class matches */
- unsigned char bInterfaceClass;
- unsigned char bInterfaceSubClass;
- unsigned char bInterfaceProtocol;
-
- /* not matched against */
- unsigned long driver_info;
-};
-
-/* Some useful macros to use to create struct usb_device_id */
-#define USB_DEVICE_ID_MATCH_VENDOR 0x0001
-#define USB_DEVICE_ID_MATCH_PRODUCT 0x0002
-#define USB_DEVICE_ID_MATCH_DEV_LO 0x0004
-#define USB_DEVICE_ID_MATCH_DEV_HI 0x0008
-#define USB_DEVICE_ID_MATCH_DEV_CLASS 0x0010
-#define USB_DEVICE_ID_MATCH_DEV_SUBCLASS 0x0020
-#define USB_DEVICE_ID_MATCH_DEV_PROTOCOL 0x0040
-#define USB_DEVICE_ID_MATCH_INT_CLASS 0x0080
-#define USB_DEVICE_ID_MATCH_INT_SUBCLASS 0x0100
-#define USB_DEVICE_ID_MATCH_INT_PROTOCOL 0x0200
-
-/* s390 CCW devices */
-struct ccw_device_id
-{
- unsigned short match_flags; /* which fields to match against */
-
- unsigned short cu_type; /* control unit type */
- unsigned short dev_type; /* device type */
- unsigned char cu_model; /* control unit model */
- unsigned char dev_model; /* device model */
-
- unsigned long driver_info;
-};
-
-#define CCW_DEVICE_ID_MATCH_CU_TYPE 0x01
-#define CCW_DEVICE_ID_MATCH_CU_MODEL 0x02
-#define CCW_DEVICE_ID_MATCH_DEVICE_TYPE 0x04
-#define CCW_DEVICE_ID_MATCH_DEVICE_MODEL 0x08
-
-
-#define PNP_ID_LEN 8
-#define PNP_MAX_DEVICES 8
-
-struct pnp_device_id
-{
- unsigned char id[PNP_ID_LEN];
- unsigned long driver_data;
-};
-
-struct pnp_card_device_id
-{
- unsigned char id[PNP_ID_LEN];
- unsigned long driver_data;
- struct
- {
- unsigned char id[PNP_ID_LEN];
- } devs[PNP_MAX_DEVICES];
-};
-
-
-#define SERIO_ANY 0xff
-
-struct serio_device_id
-{
- unsigned char type;
- unsigned char extra;
- unsigned char id;
- unsigned char proto;
-};
-
-
-#endif /* MOD_DEVICETABLE_H */
diff --git a/BaS_gcc/include/nbuf.h b/BaS_gcc/include/nbuf.h
deleted file mode 100644
index 7e3a785..0000000
--- a/BaS_gcc/include/nbuf.h
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * File: nbuf.h
- * Purpose: Definitions for network buffer management
- *
- * Notes: These routines implement a network buffer scheme
- */
-
-#ifndef _NBUF_H_
-#define _NBUF_H_
-
-#include "bas_types.h"
-
-/*
- * Include the Queue structure definitions
- */
-#include "queue.h"
-
-/*
- * Number of network buffers to use
- */
-#define NBUF_MAX 30
-
-/*
- * Size of each buffer in bytes
- */
-#ifndef NBUF_SZ
-#define NBUF_SZ 2048
-#endif
-
-/*
- * Defines to identify all the buffer queues
- * - FREE must always be defined as 0
- */
-#define NBUF_FREE 0 /* available buffers */
-#define NBUF_TX_RING 1 /* buffers in the Tx BD ring */
-#define NBUF_RX_RING 2 /* buffers in the Rx BD ring */
-#define NBUF_SCRATCH 3 /* misc */
-#define NBUF_MAXQ 4 /* total number of queueus */
-
-/*
- * Buffer Descriptor Format
- *
- * Fields:
- * next Pointer to next node in the queue
- * data Pointer to the data buffer
- * offset Index into buffer
- * length Remaining bytes in buffer from (data + offset)
- */
-typedef struct
-{
- QNODE node;
- uint8_t *data;
- uint16_t offset;
- uint16_t length;
-} NBUF;
-
-/*
- * Functions to manipulate the network buffers.
- */
-extern int nbuf_init(void);
-extern void nbuf_flush(void);
-extern NBUF *nbuf_alloc (void);
-extern void nbuf_free(NBUF *);
-extern NBUF *nbuf_remove(int);
-extern void nbuf_add(int, NBUF *);
-extern void nbuf_reset(void);
-extern void nbuf_debug_dump(void);
-
-
-#endif /* _NBUF_H_ */
diff --git a/BaS_gcc/include/net.h b/BaS_gcc/include/net.h
deleted file mode 100644
index e6ce6ec..0000000
--- a/BaS_gcc/include/net.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * File: net.h
- * Purpose: Network definitions and prototypes for BaS.
- *
- * Notes:
- */
-
-#ifndef _NET_H
-#define _NET_H
-
-
-/*
- * Include information and prototypes for all protocols
- */
-#include "eth.h"
-#include "nbuf.h"
-#include "nif.h"
-#include "ip.h"
-#include "icmp.h"
-#include "arp.h"
-#include "udp.h"
-#include "tftp.h"
-
-#define TIMER_NETWORK 3 /* use GPT3 for network timers */
-#define TMR_INTC_LVL 3 /* interrupt level for network timer */
-#define TMR_INTC_PRI 0 /* interrupt priority for network timer */
-
-extern int net_init(void);
-
-
-#endif /* _NET_H */
-
diff --git a/BaS_gcc/include/net_timer.h b/BaS_gcc/include/net_timer.h
deleted file mode 100644
index 0fd571a..0000000
--- a/BaS_gcc/include/net_timer.h
+++ /dev/null
@@ -1,32 +0,0 @@
-/*
- * File: net_timer.h
- * Purpose: Provide a timer use by the BaS network as a timeout
- * indicator
- *
- */
-
-#ifndef _TIMER_H_
-#define _TIMER_H_
-
-#include
-
-typedef struct
-{
- uint8_t ch; /* which channel is this structure for? */
- uint8_t lvl; /* Interrupt level for this channel */
- uint8_t pri; /* Interrupt priority for this channel */
- uint8_t reference; /* timeout indicator */
- uint32_t gms; /* mode select register value */
- uint16_t pre; /* prescale value */
- uint16_t cnt; /* prescaled clocks for timeout */
-} NET_TIMER;
-
-
-extern bool timer_init(uint8_t, uint8_t, uint8_t);
-extern bool timer_set_secs(uint8_t ch, uint32_t secs);
-extern uint32_t timer_get_reference(uint8_t ch);
-
-/* Vector numbers for all the timer channels */
-#define TIMER_VECTOR(x) (126-x)
-
-#endif /* _TIMER_H_ */
diff --git a/BaS_gcc/include/nif.h b/BaS_gcc/include/nif.h
deleted file mode 100644
index 639d341..0000000
--- a/BaS_gcc/include/nif.h
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * File: nif.h
- * Purpose: Definition of a Network InterFace.
- *
- * Notes:
- */
-
-#ifndef _NIF_H
-#define _NIF_H
-
-/*
- * Maximum number of supported protoocls: IP, ARP, RARP
- */
-#define MAX_SUP_PROTO (3)
-
-typedef struct NIF_t
-{
- ETH_ADDR hwa; /* ethernet card hardware address */
- ETH_ADDR broadcast; /* broadcast address */
- int mtu; /* hardware maximum transmission unit */
- int ch; /* ethernet channel associated with this NIF */
-
- struct SUP_PROTO_t
- {
- uint16_t protocol;
- void (*handler)(struct NIF_t *, NBUF *);
- void *info;
- } protocol[MAX_SUP_PROTO];
-
- unsigned short num_protocol;
-
- int (*send)(struct NIF_t *, uint8_t *, uint8_t *, uint16_t, NBUF *);
-
- unsigned int f_rx;
- unsigned int f_tx;
- unsigned int f_rx_err;
- unsigned int f_tx_err;
- unsigned int f_err;
-} NIF;
-
-
-extern NIF *nif_init (NIF *);
-extern int nif_protocol_exist (NIF *, uint16_t);
-extern void nif_protocol_handler (NIF *, uint16_t, NBUF *);
-extern void *nif_get_protocol_info (NIF *, uint16_t);
-extern int nif_bind_protocol (NIF *, uint16_t, void (*)(NIF *, NBUF *), void *);
-
-
-#endif /* _NIF_H */
diff --git a/BaS_gcc/include/ohci.h b/BaS_gcc/include/ohci.h
deleted file mode 100644
index b0141c8..0000000
--- a/BaS_gcc/include/ohci.h
+++ /dev/null
@@ -1,464 +0,0 @@
-/*
- * URB OHCI HCD (Host Controller Driver) for USB.
- *
- * (C) Copyright 1999 Roman Weissgaerber
- * (C) Copyright 2000-2001 David Brownell
- *
- * usb-ohci.h
- */
-
-#define USB_OHCI_MAX_ROOT_PORTS 4
-
-static int cc_to_error[16] =
-{
-
-/* mapping of the OHCI CC status to error codes */
- /* No Error */ 0,
- /* CRC Error */ USB_ST_CRC_ERR,
- /* Bit Stuff */ USB_ST_BIT_ERR,
- /* Data Togg */ USB_ST_CRC_ERR,
- /* Stall */ USB_ST_STALLED,
- /* DevNotResp */ -1,
- /* PIDCheck */ USB_ST_BIT_ERR,
- /* UnExpPID */ USB_ST_BIT_ERR,
- /* DataOver */ USB_ST_BUF_ERR,
- /* DataUnder */ USB_ST_BUF_ERR,
- /* reservd */ -1,
- /* reservd */ -1,
- /* BufferOver */ USB_ST_BUF_ERR,
- /* BuffUnder */ USB_ST_BUF_ERR,
- /* Not Access */ -1,
- /* Not Access */ -1
-};
-
-static const char *cc_to_string[16] =
-{
- "No Error",
- "CRC: Last data packet from endpoint contained a CRC error.",
- "BITSTUFFING:\r\nLast data packet from endpoint contained a bit stuffing violation",
- "DATATOGGLEMISMATCH:\r\n Last packet from endpoint had data toggle PID\r\n" \
- "that did not match the expected value.",
- "STALL: TD was moved to the Done Queue because the endpoint returned a STALL PID",
- "DEVICENOTRESPONDING:\r\nDevice did not respond to token (IN) or did\r\n" \
- "not provide a handshake (OUT)",
- "PIDCHECKFAILURE:\r\nCheck bits on PID from endpoint failed on data PID\r\n"\
- "(IN) or handshake (OUT)",
- "UNEXPECTEDPID:\r\nReceive PID was not valid when encountered or PID\r\n" \
- "value is not defined.",
- "DATAOVERRUN:\r\nThe amount of data returned by the endpoint exceeded\r\n" \
- "either the size of the maximum data packet allowed\r\n" \
- "from the endpoint (found in MaximumPacketSize field\r\n" \
- "of ED) or the remaining buffer size.",
- "DATAUNDERRUN:\r\nThe endpoint returned less than MaximumPacketSize\r\n" \
- "and that amount was not sufficient to fill the\r\n" \
- "specified buffer",
- "reserved1",
- "reserved2",
- "BUFFEROVERRUN:\r\nDuring an IN, HC received data from endpoint faster\r\n" \
- "than it could be written to system memory",
- "BUFFERUNDERRUN:\r\nDuring an OUT, HC could not retrieve data from\r\n" \
- "system memory fast enough to keep up with data USB data rate.",
- "NOT ACCESSED:\r\nThis code is set by software before the TD is placed\r\n" \
- "on a list to be processed by the HC.(1)",
- "NOT ACCESSED:\r\nThis code is set by software before the TD is placed\r\n" \
- "on a list to be processed by the HC.(2)",
-};
-
-/* ED States */
-
-#define ED_NEW 0x00
-#define ED_UNLINK 0x01
-#define ED_OPER 0x02
-#define ED_DEL 0x04
-#define ED_URB_DEL 0x08
-
-/* usb_ohci_ed */
-struct ed
-{
- uint32_t hwINFO;
- uint32_t hwTailP;
- uint32_t hwHeadP;
- uint32_t hwNextED;
-
- volatile struct ed *ed_prev;
- uint8_t int_period;
- uint8_t int_branch;
- uint8_t int_load;
- uint8_t int_interval;
- uint8_t state;
- uint8_t type;
- uint16_t last_iso;
- struct ed *ed_rm_list;
-
- struct usb_device *usb_dev;
- volatile void *purb;
- uint32_t unused[2];
-} __attribute__((aligned(16)));
-typedef struct ed ed_t;
-
-
-/* TD info field */
-#define TD_CC 0xf0000000
-#define TD_CC_GET(td_p) ((td_p >>28) & 0x0f)
-#define TD_CC_SET(td_p, cc) (td_p) = ((td_p) & 0x0fffffff) | (((cc) & 0x0f) << 28)
-#define TD_EC 0x0C000000
-#define TD_T 0x03000000
-#define TD_T_DATA0 0x02000000
-#define TD_T_DATA1 0x03000000
-#define TD_T_TOGGLE 0x00000000
-#define TD_R 0x00040000
-#define TD_DI 0x00E00000
-#define TD_DI_SET(X) (((X) & 0x07)<< 21)
-#define TD_DP 0x00180000
-#define TD_DP_SETUP 0x00000000
-#define TD_DP_IN 0x00100000
-#define TD_DP_OUT 0x00080000
-
-#define TD_ISO 0x00010000
-#define TD_DEL 0x00020000
-
-/* CC Codes */
-#define TD_CC_NOERROR 0x00
-#define TD_CC_CRC 0x01
-#define TD_CC_BITSTUFFING 0x02
-#define TD_CC_DATATOGGLEM 0x03
-#define TD_CC_STALL 0x04
-#define TD_DEVNOTRESP 0x05
-#define TD_PIDCHECKFAIL 0x06
-#define TD_UNEXPECTEDPID 0x07
-#define TD_DATAOVERRUN 0x08
-#define TD_DATAUNDERRUN 0x09
-#define TD_BUFFEROVERRUN 0x0C
-#define TD_BUFFERUNDERRUN 0x0D
-#define TD_NOTACCESSED 0x0F
-
-
-#define MAXPSW 1
-
-struct td
-{
- uint32_t hwINFO;
- uint32_t hwCBP; /* Current Buffer Pointer */
- uint32_t hwNextTD; /* Next TD Pointer */
- uint32_t hwBE; /* Memory Buffer End Pointer */
-
- uint16_t hwPSW[MAXPSW];
- uint8_t unused;
- uint8_t index;
- volatile struct ed *ed;
- volatile struct td *next_dl_td;
- struct usb_device *usb_dev;
- int transfer_len;
- uint32_t data;
-
- uint32_t unused2[2];
-} __attribute__((aligned(32)));
-typedef struct td td_t;
-
-#define OHCI_ED_SKIP (1 << 14)
-
-/*
- * The HCCA (Host Controller Communications Area) is a 256 byte
- * structure defined in the OHCI spec. that the host controller is
- * told the base address of. It must be 256-byte aligned.
- */
-
-#define NUM_INTS 32 /* part of the OHCI standard */
-struct ohci_hcca
-{
- volatile uint32_t int_table[NUM_INTS]; /* Interrupt ED table */
-#if defined(CONFIG_MPC5200)
- uint16_t pad1; /* set to 0 on each frame_no change */
- uint16_t frame_no; /* current frame number */
-#else
- uint16_t frame_no; /* current frame number */
- uint16_t pad1; /* set to 0 on each frame_no change */
-#endif
- uint32_t done_head; /* info returned for an interrupt */
- uint8_t reserved_for_hc[116];
-} __attribute__((aligned(256)));
-
-/*
- * This is the structure of the OHCI controller's memory mapped I/O
- * region. This is Memory Mapped I/O. You must use the readl() and
- * writel() macros defined in asm/io.h to access these!!
- */
-struct ohci_regs
-{
- /* control and status registers */
- uint32_t revision;
- uint32_t control;
- uint32_t cmdstatus;
- uint32_t intrstatus;
- uint32_t intrenable;
- uint32_t intrdisable;
- /* memory pointers */
- uint32_t hcca;
- uint32_t ed_periodcurrent;
- uint32_t ed_controlhead;
- uint32_t ed_controlcurrent;
- uint32_t ed_bulkhead;
- uint32_t ed_bulkcurrent;
- uint32_t donehead;
- /* frame counters */
- uint32_t fminterval;
- uint32_t fmremaining;
- uint32_t fmnumber;
- uint32_t periodicstart;
- uint32_t lsthresh;
- /* Root hub ports */
- struct ohci_roothub_regs
- {
- uint32_t a;
- uint32_t b;
- uint32_t status;
- uint32_t portstatus[USB_OHCI_MAX_ROOT_PORTS];
- } roothub;
-} __attribute__((aligned(32)));
-
-/* Some EHCI controls */
-#define EHCI_USBCMD_OFF 0x20
-#define EHCI_USBCMD_HCRESET (1 << 1)
-
-/* OHCI CONTROL AND STATUS REGISTER MASKS */
-
-/*
- * HcControl (control) register masks
- */
-#define OHCI_CTRL_CBSR (3 << 0) /* control/bulk service ratio */
-#define OHCI_CTRL_PLE (1 << 2) /* periodic list enable */
-#define OHCI_CTRL_IE (1 << 3) /* isochronous enable */
-#define OHCI_CTRL_CLE (1 << 4) /* control list enable */
-#define OHCI_CTRL_BLE (1 << 5) /* bulk list enable */
-#define OHCI_CTRL_HCFS (3 << 6) /* host controller functional state */
-#define OHCI_CTRL_IR (1 << 8) /* interrupt routing */
-#define OHCI_CTRL_RWC (1 << 9) /* remote wakeup connected */
-#define OHCI_CTRL_RWE (1 << 10) /* remote wakeup enable */
-
-/* pre-shifted values for HCFS */
-# define OHCI_USB_RESET (0 << 6)
-# define OHCI_USB_RESUME (1 << 6)
-# define OHCI_USB_OPER (2 << 6)
-# define OHCI_USB_SUSPEND (3 << 6)
-
-/*
- * HcCommandStatus (cmdstatus) register masks
- */
-#define OHCI_HCR (1 << 0) /* host controller reset */
-#define OHCI_CLF (1 << 1) /* control list filled */
-#define OHCI_BLF (1 << 2) /* bulk list filled */
-#define OHCI_OCR (1 << 3) /* ownership change request */
-#define OHCI_SOC (3 << 16) /* scheduling overrun count */
-
-/*
- * masks used with interrupt registers:
- * HcInterruptStatus (intrstatus)
- * HcInterruptEnable (intrenable)
- * HcInterruptDisable (intrdisable)
- */
-#define OHCI_INTR_SO (1 << 0) /* scheduling overrun */
-#define OHCI_INTR_WDH (1 << 1) /* writeback of done_head */
-#define OHCI_INTR_SF (1 << 2) /* start frame */
-#define OHCI_INTR_RD (1 << 3) /* resume detect */
-#define OHCI_INTR_UE (1 << 4) /* unrecoverable error */
-#define OHCI_INTR_FNO (1 << 5) /* frame number overflow */
-#define OHCI_INTR_RHSC (1 << 6) /* root hub status change */
-#define OHCI_INTR_OC (1 << 30) /* ownership change */
-#define OHCI_INTR_MIE (1 << 31) /* master interrupt enable */
-
-
-/* Virtual Root HUB */
-struct virt_root_hub
-{
- int devnum; /* Address of Root Hub endpoint */
- void *dev; /* was urb */
- void *int_addr;
- int send;
- int interval;
-};
-
-/* USB HUB CONSTANTS (not OHCI-specific; see hub.h) */
-
-/* destination of request */
-#define RH_INTERFACE 0x01
-#define RH_ENDPOINT 0x02
-#define RH_OTHER 0x03
-
-#define RH_CLASS 0x20
-#define RH_VENDOR 0x40
-
-/* Requests: bRequest << 8 | bmRequestType */
-#define RH_GET_STATUS 0x0080
-#define RH_CLEAR_FEATURE 0x0100
-#define RH_SET_FEATURE 0x0300
-#define RH_SET_ADDRESS 0x0500
-#define RH_GET_DESCRIPTOR 0x0680
-#define RH_SET_DESCRIPTOR 0x0700
-#define RH_GET_CONFIGURATION 0x0880
-#define RH_SET_CONFIGURATION 0x0900
-#define RH_GET_STATE 0x0280
-#define RH_GET_INTERFACE 0x0A80
-#define RH_SET_INTERFACE 0x0B00
-#define RH_SYNC_FRAME 0x0C80
-/* Our Vendor Specific Request */
-#define RH_SET_EP 0x2000
-
-
-/* Hub port features */
-#define RH_PORT_CONNECTION 0x00
-#define RH_PORT_ENABLE 0x01
-#define RH_PORT_SUSPEND 0x02
-#define RH_PORT_OVER_CURRENT 0x03
-#define RH_PORT_RESET 0x04
-#define RH_PORT_POWER 0x08
-#define RH_PORT_LOW_SPEED 0x09
-
-#define RH_C_PORT_CONNECTION 0x10
-#define RH_C_PORT_ENABLE 0x11
-#define RH_C_PORT_SUSPEND 0x12
-#define RH_C_PORT_OVER_CURRENT 0x13
-#define RH_C_PORT_RESET 0x14
-
-/* Hub features */
-#define RH_C_HUB_LOCAL_POWER 0x00
-#define RH_C_HUB_OVER_CURRENT 0x01
-
-#define RH_DEVICE_REMOTE_WAKEUP 0x00
-#define RH_ENDPOINT_STALL 0x01
-
-#define RH_ACK 0x01
-#define RH_REQ_ERR -1
-#define RH_NACK 0x00
-
-
-/* OHCI ROOT HUB REGISTER MASKS */
-
-/* roothub.portstatus [i] bits */
-#define RH_PS_CCS 0x00000001 /* current connect status */
-#define RH_PS_PES 0x00000002 /* port enable status*/
-#define RH_PS_PSS 0x00000004 /* port suspend status */
-#define RH_PS_POCI 0x00000008 /* port over current indicator */
-#define RH_PS_PRS 0x00000010 /* port reset status */
-#define RH_PS_PPS 0x00000100 /* port power status */
-#define RH_PS_LSDA 0x00000200 /* low speed device attached */
-#define RH_PS_CSC 0x00010000 /* connect status change */
-#define RH_PS_PESC 0x00020000 /* port enable status change */
-#define RH_PS_PSSC 0x00040000 /* port suspend status change */
-#define RH_PS_OCIC 0x00080000 /* over current indicator change */
-#define RH_PS_PRSC 0x00100000 /* port reset status change */
-
-/* roothub.status bits */
-#define RH_HS_LPS 0x00000001 /* local power status */
-#define RH_HS_OCI 0x00000002 /* over current indicator */
-#define RH_HS_DRWE 0x00008000 /* device remote wakeup enable */
-#define RH_HS_LPSC 0x00010000 /* local power status change */
-#define RH_HS_OCIC 0x00020000 /* over current indicator change */
-#define RH_HS_CRWE 0x80000000 /* clear remote wakeup enable */
-
-/* roothub.b masks */
-#define RH_B_DR 0x0000ffff /* device removable flags */
-#define RH_B_PPCM 0xffff0000 /* port power control mask */
-
-/* roothub.a masks */
-#define RH_A_NDP (0xff << 0) /* number of downstream ports */
-#define RH_A_PSM (1 << 8) /* power switching mode */
-#define RH_A_NPS (1 << 9) /* no power switching */
-#define RH_A_DT (1 << 10) /* device type (mbz) */
-#define RH_A_OCPM (1 << 11) /* over current protection mode */
-#define RH_A_NOCP (1 << 12) /* no over current protection */
-#define RH_A_POTPGT (0xff << 24) /* power on to power good time */
-
-/* urb */
-#define N_URB_TD 48
-typedef struct
-{
- volatile ed_t *ed;
- uint16_t length; /* number of tds associated with this request */
- uint16_t td_cnt; /* number of tds already serviced */
- struct usb_device *dev;
- int state;
- uint32_t pipe;
- void *transfer_buffer;
- int transfer_buffer_length;
- int interval;
- int actual_length;
- int finished;
- td_t *td[N_URB_TD]; /* list pointer to all corresponding TDs associated with this request */
-} urb_priv_t;
-#define URB_DEL 1
-
-#define NUM_EDS 8 /* num of preallocated endpoint descriptors */
-
-struct ohci_device
-{
- ed_t ed[NUM_EDS];
- int ed_cnt;
-};
-
-/*
- * This is the full ohci controller description
- *
- * Note how the "proper" USB information is just
- * a subset of what the full implementation needs. (Linus)
- */
-
-typedef struct ohci
-{
- /* ------- common part -------- */
- long handle; /* PCI BIOS */
- const struct pci_device_id *ent;
- int usbnum;
- /* ---- end of common part ---- */
- int big_endian; /* PCI BIOS */
- int controller;
- volatile struct ohci_hcca *hcca_unaligned;
- volatile struct ohci_hcca *hcca; /* hcca */
- td_t *td_unaligned;
- struct ohci_device *ohci_dev_unaligned;
- /* this allocates EDs for all possible endpoints */
- struct ohci_device *ohci_dev;
-
- int irq_enabled;
- int stat_irq;
- volatile int irq;
- int disabled; /* e.g. got a UE, we're hung */
- int sleeping;
-#define OHCI_FLAGS_NEC 0x80000000
- uint32_t flags; /* for HC bugs */
-
- uint32_t offset;
- uint32_t dma_offset;
- volatile struct ohci_regs *regs; /* OHCI controller's memory */
-
- int ohci_int_load[32]; /* load of the 32 Interrupt Chains (for load balancing)*/
- volatile ed_t *ed_rm_list[2]; /* lists of all endpoints to be removed */
- volatile ed_t *ed_bulktail; /* last endpoint of bulk list */
- volatile ed_t *ed_controltail; /* last endpoint of control list */
- int intrstatus;
- uint32_t hc_control; /* copy of the hc control reg */
- uint32_t ndp; /* copy NDP from roothub_a */
- struct virt_root_hub rh;
-
- const char *slot_name;
-
- /* device which was disconnected */
- struct usb_device *devgone;
-} ohci_t;
-
-/* hcd */
-/* endpoint */
-static int ep_link(volatile ohci_t * ohci, volatile ed_t *ed);
-static int ep_unlink(volatile ohci_t * ohci, volatile ed_t *ed);
-static ed_t * ep_add_ed(volatile ohci_t * ohci, struct usb_device * usb_dev, uint32_t pipe, int interval, int load);
-
-
-/* we need more TDs than EDs */
-#define NUM_TD 64
-
-
-static inline void ed_free(struct ed *ed)
-{
- ed->usb_dev = NULL;
-}
-
-
diff --git a/BaS_gcc/include/part.h b/BaS_gcc/include/part.h
deleted file mode 100644
index 54ffafb..0000000
--- a/BaS_gcc/include/part.h
+++ /dev/null
@@ -1,90 +0,0 @@
-/*
- * (C) Copyright 2000-2004
- * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-#ifndef _PART_H
-#define _PART_H
-
-typedef unsigned long long uint64_t;
-typedef unsigned long lbaint_t;
-
-typedef struct block_dev_desc
-{
- int if_type; /* type of the interface */
- int dev; /* device number */
- unsigned char part_type; /* partition type */
- unsigned char target; /* target SCSI ID */
- unsigned char lun; /* target LUN */
- unsigned char type; /* device type */
- unsigned char removable; /* removable device */
-#ifdef CONFIG_LBA48
- unsigned char lba48; /* device can use 48bit addr (ATA/ATAPI v7) */
-#endif
- lbaint_t lba; /* number of blocks */
- unsigned long blksz; /* block size */
- char vendor [40+1]; /* IDE model, SCSI Vendor */
- char product[20+1]; /* IDE Serial no, SCSI product */
- char revision[8+1]; /* firmware revision */
- long (*block_read)(int dev, unsigned long start, lbaint_t blkcnt, void *buffer);
- long (*block_write)(int dev, unsigned long start, lbaint_t blkcnt, const void *buffer);
- void *priv; /* driver private struct pointer */
-}block_dev_desc_t;
-
-/* Interface types: */
-#define IF_TYPE_UNKNOWN 0
-#define IF_TYPE_IDE 1
-#define IF_TYPE_SCSI 2
-#define IF_TYPE_ATAPI 3
-#define IF_TYPE_USB 4
-#define IF_TYPE_DOC 5
-#define IF_TYPE_MMC 6
-#define IF_TYPE_SD 7
-#define IF_TYPE_SATA 8
-
-/* Part types */
-#define PART_TYPE_UNKNOWN 0x00
-#define PART_TYPE_MAC 0x01
-#define PART_TYPE_DOS 0x02
-#define PART_TYPE_ISO 0x03
-#define PART_TYPE_AMIGA 0x04
-#define PART_TYPE_EFI 0x05
-#define PART_TYPE_GEMDOS 0x06
-
-/*
- * Type string for U-Boot bootable partitions
- */
-#define BOOT_PART_TYPE "U-Boot" /* primary boot partition type */
-#define BOOT_PART_COMP "PPCBoot" /* PPCBoot compatibility type */
-
-/* device types */
-#define DEV_TYPE_UNKNOWN 0xff /* not connected */
-#define DEV_TYPE_HARDDISK 0x00 /* harddisk */
-#define DEV_TYPE_TAPE 0x01 /* Tape */
-#define DEV_TYPE_CDROM 0x05 /* CD-ROM */
-#define DEV_TYPE_OPDISK 0x07 /* optical disk */
-
-void print_part(block_dev_desc_t *dev_desc);
-void init_part(block_dev_desc_t *dev_desc);
-void dev_print(block_dev_desc_t *dev_desc);
-
-int fat_register_device(block_dev_desc_t *dev_desc, int part_no, unsigned long *part_type, unsigned long *part_offset, unsigned long *part_size);
-
-#endif /* _PART_H */
diff --git a/BaS_gcc/include/pci.h b/BaS_gcc/include/pci.h
deleted file mode 100644
index af27656..0000000
--- a/BaS_gcc/include/pci.h
+++ /dev/null
@@ -1,360 +0,0 @@
-#ifndef _PCI_H_
-#define _PCI_H_
-
-/*
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "util.h" /* for swpX() */
-
-#define PCI_MEMORY_OFFSET 0x80000000
-#define PCI_MEMORY_SIZE 0x40000000 /* 1 GByte PCI memory window */
-#define PCI_IO_OFFSET 0xD0000000
-#define PCI_IO_SIZE 0x10000000 /* 256 MByte PCI I/O window */
-
-#define PCI_LANESWAP_B(x) (x ^ 3)
-#define PCI_LANESWAP_W(x) (x ^ 2)
-#define PCI_LANESWAP_L(x) (x) /* for completeness only */
-/*
- * Note: the byte offsets are in little endian format, so for pci_xxx_config_byte()
- * accesses to hit the right offset, you'll need to wrap them into PCI_LANESWAP_B()
- * and for pci_xxx_config_word() into PCI_LANESWAP_W()
- */
-#define PCIIDR 0x00 /* PCI Configuration ID Register */
-#define PCICSR 0x04 /* PCI Command/Status Register */
-#define PCICR 0x06 /* PCI Command Register */
-#define PCISR 0x04 /* PCI Status Register */
-#define PCIREV 0x0B /* PCI Revision ID Register */
-#define PCICCR 0x08 /* PCI Class Code Register */
-#define PCICLSR 0x0F /* PCI Cache Line Size Register */
-#define PCILTR 0x0E /* PCI Latency Timer Register */
-#define PCIHTR 0x0D /* PCI Header Type Register */
-#define PCIBISTR 0x0C /* PCI Build-In Self Test Register */
-
-#define PCIBAR0 0x10 /* PCI Base Address Register for Memory
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR1 0x14 /* PCI Base Address Register for I/O
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR2 0x18 /* PCI Base Address Register for Memory
- Accesses to Local Address Space 0 */
-#define PCIBAR3 0x1C /* PCI Base Address Register for Memory
- Accesses to Local Address Space 1 */
-#define PCIBAR4 0x20 /* PCI Base Address Register, reserved */
-#define PCIBAR5 0x24 /* PCI Base Address Register, reserved */
-#define PCICIS 0x28 /* PCI Cardbus CIS Pointer, not support*/
-#define PCISVID 0x2E /* PCI Subsystem Vendor ID */
-#define PCISID 0x2D /* PCI Subsystem ID */
-#define PCIERBAR 0x30 /* PCI Expansion ROM Base Register */
-#define CAP_PTR 0x34 /* New Capability Pointer */
-#define PCIILR 0x3F /* PCI Interrupt Line Register */
-#define PCIIPR 0x3E /* PCI Interrupt Pin Register */
-#define PCIMGR 0x3D /* PCI Min_Gnt Register */
-#define PCIMLR 0x3C /* PCI Max_Lat Register */
-#define PMCAPID 0x40 /* Power Management Capability ID */
-#define PMNEXT 0x41 /* Power Management Next Capability
- Pointer */
-#define PMC 0x42 /* Power Management Capabilities */
-#define PMCSR 0x44 /* Power Management Control/Status */
-#define PMCSR_BSE 0x46 /* PMCSR Bridge Support Extensions */
-#define PMDATA 0x47 /* Power Management Data */
-#define HS_CNTL 0x48 /* Hot Swap Control */
-#define HS_NEXT 0x49 /* Hot Swap Next Capability Pointer */
-#define HS_CSR 0x4A /* Hot Swap Control/Status */
-#define PVPDCNTL 0x4C /* PCI Vital Product Data Control */
-#define PVPD_NEXT 0x4D /* PCI Vital Product Data Next
- Capability Pointer */
-#define PVPDAD 0x4E /* PCI Vital Product Data Address */
-#define PVPDATA 0x50 /* PCI VPD Data */
-
-/*
- * bit definitions for PCICSR lower half (Command Register)
- */
-#define PCICR_IO (1 << 0) /* if set: device responds to I/O space accesses */
-#define PCICR_MEMORY (1 << 1) /* if set: device responds to memory space accesses */
-#define PCICR_MASTER (1 << 2) /* if set: device is master */
-#define PCICR_SPECIAL (1 << 3) /* if set: device reacts on special cycles */
-#define PCICR_MEMWI (1 << 4) /* if set: device deals with memory write and invalidate */
-#define PCICR_VGA_SNOOP (1 << 5) /* if set: capable of palette snoop */
-#define PCICR_PERR (1 << 6) /* if set: reacts to parity errors */
-#define PCICR_STEPPING (1 << 7) /* if set: stepping enabled */
-#define PCICR_SERR (1 << 8) /* if set: SERR pin enabled */
-#define PCICR_FAST_BTOB_E (1 << 9) /* if set: fast back-to-back enabled */
-#define PCICR_INT_DISABLE (1 << 10) /* if set: disable interrupts from this device */
-/*
- * bit definitions for PCICSR upper half (Status Register)
- */
-#define PCISR_INTERRUPT (1 << 3) /* device requested interrupt */
-#define PCISR_CAPABILITIES (1 << 4) /* if set, capabilities pointer is valid */
-#define PCISR_66MHZ (1 << 5) /* 66 MHz capable */
-#define PCISR_UDF (1 << 6) /* UDF supported */
-#define PCISR_FAST_BTOB (1 << 7) /* Fast back-to-back enabled */
-#define PCISR_DPARITY_ERROR (1 << 8) /* data parity error detected */
-
-#define PCISR_T_ABORT_S (1 << 11) /* target abort signaled */
-#define PCISR_T_ABORT_R (1 << 12) /* target abort received */
-#define PCISR_M_ABORT_R (1 << 13) /* master abort received */
-#define PCISR_S_ERROR_S (1 << 14) /* system error signaled */
-#define PCISR_PARITY_ERR (1 << 15) /* data parity error */
-
-/* Header type 1 (PCI-to-PCI bridges) */
-#define PCI_PRIMARY_BUS 0x1B /* Primary bus number */
-#define PCI_SECONDARY_BUS 0x1A /* Secondary bus number */
-#define PCI_SUBORDINATE_BUS 0x19 /* Highest bus number behind the bridge */
-#define PCI_SEC_LATENCY_TIMER 0x18 /* Latency timer for secondary interface */
-#define PCI_IO_BASE 0x1C /* I/O range behind the bridge */
-#define PCI_IO_LIMIT 0x1D
-#define PCI_SEC_STATUS 0x1C /* Secondary status register, only bit 14 used */
-#define PCI_MEMORY_BASE 0x20 /* Memory range behind */
-#define PCI_MEMORY_LIMIT 0x22
-#define PCI_PREF_MEMORY_BASE 0x24 /* Prefetchable memory range behind */
-#define PCI_PREF_MEMORY_LIMIT 0x26
-#define PCI_PREF_BASE_UPPER32 0x28 /* Upper half of prefetchable memory range */
-#define PCI_PREF_LIMIT_UPPER32 0x2C
-#define PCI_IO_BASE_UPPER16 0x30 /* Upper half of I/O addresses */
-#define PCI_IO_LIMIT_UPPER16 0x32
-#define PCI_BRIDGE_CONTROL 0x3E /* Bridge Control */
-
-struct pci_rd /* structure of resource descriptor */
-{
- unsigned short next; /* length of the following structure */
- unsigned short flags; /* type of resource and misc. flags */
- unsigned long start; /* start-address of resource */
- unsigned long length; /* length of resource */
- unsigned long offset; /* offset PCI to phys. CPU Address */
- unsigned long dmaoffset; /* offset for DMA-transfers */
-};
-
-typedef struct /* structure of address conversion */
-{
- unsigned long adr; /* calculated address (CPU<->PCI) */
- unsigned long len; /* length of memory range */
-} PCI_CONV_ADR;
-
-/******************************************************************************/
-/* PCI-BIOS Error Codes */
-/******************************************************************************/
-#define PCI_SUCCESSFUL 0 /* everything's fine */
-#define PCI_FUNC_NOT_SUPPORTED -2 /* function not supported */
-#define PCI_BAD_VENDOR_ID -3 /* wrong Vendor ID */
-#define PCI_DEVICE_NOT_FOUND -4 /* PCI-Device not found */
-#define PCI_BAD_REGISTER_NUMBER -5 /* wrong register number */
-#define PCI_SET_FAILED -6 /* reserved for later use */
-#define PCI_BUFFER_TOO_SMALL -7 /* reserved for later use */
-#define PCI_GENERAL_ERROR -8 /* general BIOS error code */
-#define PCI_BAD_HANDLE -9 /* wrong/unknown PCI-handle */
-
-/******************************************************************************/
-/* Flags used in Resource-Descriptor */
-/******************************************************************************/
-#define FLG_IO 0x4000 /* Ressource in IO range */
-#define FLG_ROM 0x2000 /* Expansion ROM */
-#define FLG_LAST 0x8000 /* last ressource */
-#define FLG_8BIT 0x0100 /* 8 bit accesses allowed */
-#define FLG_16BIT 0x0200 /* 16 bit accesses allowed */
-#define FLG_32BIT 0x0400 /* 32 bit accesses allowed */
-#define FLG_ENDMASK 0x000F /* mask for byte ordering */
-
-/******************************************************************************/
-/* Values used in FLG_ENDMASK for Byte Ordering */
-/******************************************************************************/
-#define ORD_MOTOROLA 0 /* Motorola (big endian) */
-#define ORD_INTEL_AS 1 /* Intel (little endian), addr.swapped */
-#define ORD_INTEL_LS 2 /* Intel (little endian), lane swapped */
-#define ORD_UNKNOWN 15 /* unknown (BIOS-calls allowed only) */
-
-/******************************************************************************/
-/* Status Info used in Device-Descriptor */
-/******************************************************************************/
-#define DEVICE_FREE 0 /* Device is not used */
-#define DEVICE_USED 1 /* Device is used by another driver */
-#define DEVICE_CALLBACK 2 /* used, but driver can be cancelled */
-#define DEVICE_AVAILABLE 3 /* used, not available */
-#define NO_DEVICE -1 /* no device detected */
-
-/* PCI configuration space macros */
-
-/* register 0x00 macros */
-#define PCI_DEVICE_ID(i) (uint16_t)(((i) & 0xffff0000) >> 16)
-#define PCI_VENDOR_ID(i) (uint16_t) ((i) & 0xffff)
-
-/* register 0x04 macros */
-#define PCI_STATUS(i) ((i) & 0xffff)
-#define PCI_COMMAND(i) (((i) >> 16) & 0xffff)
-
-/* register 0x08 macros (use on little endian value!) */
-#define PCI_CLASS_CODE(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_SUBCLASS(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_PROG_IF(i) (((i) & 0x000000ff) >> 0)
-#define PCI_REVISION_ID(i) (((i) & 0xff000000) >> 24)
-
-/* register 0x0c macros */
-#define PCI_BIST(i) (((i) & 0xff000000) >> 24)
-#define PCI_HEADER_TYPE(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_LAT_TIMER(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_CACHELINE_SIZE(i) (((i) & 0x000000ff))
-
-/* register 0x2c macros */
-#define PCI_SUBSYS_ID(i) ((i) & 0xffff0000) >> 16)
-#define PCI_SUBSYS_VID(i) ((i) & 0xffff))
-
-/* register 0x34 macros */
-#define PCI_CAPABILITIES(i) ((i) & 0xff)
-
-/* register 0x3c macros */
-#define PCI_MAX_LATENCY(i) (((i) & 0xff000000) >> 24)
-#define PCI_MIN_GRANT(i) (((i) & 0xff0000) >> 16)
-#define PCI_INTERRUPT_PIN(i) (((i) & 0xff00) >> 8)
-#define PCI_INTERRUPT_LINE(i) (((i)) & 0xff)
-
-#define IS_PCI_MEM_BAR(i) ((i) & 1) == 0
-#define IS_PCI_IO_BAR(i) ((i) & 1) == 1
-#define PCI_MEMBAR_TYPE(i) (((i) & 0x6) >> 1)
-#define PCI_IOBAR_ADR(i) (((i) & 0xfffffffc))
-#define PCI_MEMBAR_ADR(i) (((i) & 0xfffffff0))
-
-extern void init_eport(void);
-extern void init_xlbus_arbiter(void);
-extern void init_pci(void);
-extern int pci_handle2index(int32_t handle);
-
-extern int32_t pci_find_device(uint16_t device_id, uint16_t vendor_id, int index);
-extern int32_t pci_find_classcode(uint32_t classcode, int index);
-
-extern int32_t pci_get_interrupt_cause(void);
-extern int32_t pci_call_interrupt_chain(int32_t handle, int32_t data);
-
-/*
- * match bits for pci_find_classcode()
- */
-#define PCI_FIND_BASE_CLASS (1 << 26)
-#define PCI_FIND_SUB_CLASS (1 << 25)
-#define PCI_FIND_PROG_IF (1 << 24)
-
-extern uint32_t pci_read_config_longword(int32_t handle, int offset);
-extern uint16_t pci_read_config_word(int32_t handle, int offset);
-extern uint8_t pci_read_config_byte(int32_t handle, int offset);
-
-extern int32_t pci_write_config_longword(int32_t handle, int offset, uint32_t value);
-extern int32_t pci_write_config_word(int32_t handle, int offset, uint16_t value);
-extern int32_t pci_write_config_byte(int32_t handle, int offset, uint8_t value);
-
-typedef int (*pci_interrupt_handler)(int param);
-
-extern int32_t pci_hook_interrupt(int32_t handle, void *handler, void *parameter);
-extern int32_t pci_unhook_interrupt(int32_t handle);
-
-extern struct pci_rd *pci_get_resource(int32_t handle);
-
-/*
- * Not implemented PCI_BIOS functions
- */
-extern uint8_t pci_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t pci_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t pci_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t pci_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t pci_get_routing(int32_t handle);
-extern int32_t pci_set_interrupt(int32_t handle);
-extern int32_t pci_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t pci_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t pci_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_get_machine_id(void);
-extern int32_t pci_get_pagesize(void);
-extern int32_t pci_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-/*
- * prototypes for PCI wrapper routines
- */
-extern int32_t wrapper_find_pci_device(uint32_t id, uint16_t index);
-extern int32_t wrapper_find_pci_classcode(uint32_t class, uint16_t index);
-extern int32_t wrapper_read_config_byte(int32_t handle, uint16_t reg, uint8_t *address);
-extern int32_t wrapper_read_config_word(int32_t handle, uint16_t reg, uint16_t *address);
-extern int32_t wrapper_read_config_longword(int32_t handle, uint16_t reg, uint32_t *address);
-extern uint8_t wrapper_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t wrapper_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t wrapper_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t wrapper_write_config_byte(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_word(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_longword(int32_t handle, uint16_t reg, uint32_t val);
-extern int32_t wrapper_hook_interrupt(int32_t handle, uint32_t *routine, uint32_t *parameter);
-extern int32_t wrapper_unhook_interrupt(int32_t handle);
-extern int32_t wrapper_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t wrapper_get_routing(int32_t handle);
-extern int32_t wrapper_set_interrupt(int32_t handle);
-extern int32_t wrapper_get_resource(int32_t handle);
-extern int32_t wrapper_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t wrapper_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t wrapper_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_get_machine_id(void);
-extern int32_t wrapper_get_pagesize(void);
-extern int32_t wrapper_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-#define PCI_MK_CONF_ADDR(bus, device, function) (MCF_PCI_PCICAR_E | \
- ((bus) << 16) | \
- ((device << 8) | \
- (function))
-
-#define PCI_HANDLE(bus, slot, function) (0 | ((bus & 0xff) << 10 | (slot & 0x1f) << 3 | (function & 7)))
-#define PCI_BUS_FROM_HANDLE(h) (((h) & 0xff00) >> 10)
-#define PCI_DEVICE_FROM_HANDLE(h) (((h) & 0xf8) >> 3)
-#define PCI_FUNCTION_FROM_HANDLE(h) (((h) & 0x7))
-
-extern void pci_dump_registers(int32_t handle);
-
-#endif /* _PCI_H_ */
diff --git a/BaS_gcc/include/pci_errata.h b/BaS_gcc/include/pci_errata.h
deleted file mode 100755
index b8ac603..0000000
--- a/BaS_gcc/include/pci_errata.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef PCI_ERRATA_H
-#define PCI_ERRATA_H
-
-#include
-
-
-extern void chip_errata_135(void);
-extern void chip_errata_055(int32_t handle);
-
-#endif // PCI_ERRATA_H
-
diff --git a/BaS_gcc/include/pci_ids.h b/BaS_gcc/include/pci_ids.h
deleted file mode 100644
index f57d92e..0000000
--- a/BaS_gcc/include/pci_ids.h
+++ /dev/null
@@ -1,2626 +0,0 @@
-/*
- * PCI Class, Vendor and Device IDs
- *
- * Please keep sorted.
- */
-
-/* Device classes and subclasses */
-
-#define PCI_CLASS_NOT_DEFINED 0x0000
-#define PCI_CLASS_NOT_DEFINED_VGA 0x0001
-
-#define PCI_BASE_CLASS_STORAGE 0x01
-#define PCI_CLASS_STORAGE_SCSI 0x0100
-#define PCI_CLASS_STORAGE_IDE 0x0101
-#define PCI_CLASS_STORAGE_FLOPPY 0x0102
-#define PCI_CLASS_STORAGE_IPI 0x0103
-#define PCI_CLASS_STORAGE_RAID 0x0104
-#define PCI_CLASS_STORAGE_OTHER 0x0180
-
-#define PCI_BASE_CLASS_NETWORK 0x02
-#define PCI_CLASS_NETWORK_ETHERNET 0x0200
-#define PCI_CLASS_NETWORK_TOKEN_RING 0x0201
-#define PCI_CLASS_NETWORK_FDDI 0x0202
-#define PCI_CLASS_NETWORK_ATM 0x0203
-#define PCI_CLASS_NETWORK_OTHER 0x0280
-
-#define PCI_BASE_CLASS_DISPLAY 0x03
-#define PCI_CLASS_DISPLAY_VGA 0x0300
-#define PCI_CLASS_DISPLAY_XGA 0x0301
-#define PCI_CLASS_DISPLAY_3D 0x0302
-#define PCI_CLASS_DISPLAY_OTHER 0x0380
-
-#define PCI_BASE_CLASS_MULTIMEDIA 0x04
-#define PCI_CLASS_MULTIMEDIA_VIDEO 0x0400
-#define PCI_CLASS_MULTIMEDIA_AUDIO 0x0401
-#define PCI_CLASS_MULTIMEDIA_PHONE 0x0402
-#define PCI_CLASS_MULTIMEDIA_OTHER 0x0480
-
-#define PCI_BASE_CLASS_MEMORY 0x05
-#define PCI_CLASS_MEMORY_RAM 0x0500
-#define PCI_CLASS_MEMORY_FLASH 0x0501
-#define PCI_CLASS_MEMORY_OTHER 0x0580
-
-#define PCI_BASE_CLASS_BRIDGE 0x06
-#define PCI_CLASS_BRIDGE_HOST 0x0600
-#define PCI_CLASS_BRIDGE_ISA 0x0601
-#define PCI_CLASS_BRIDGE_EISA 0x0602
-#define PCI_CLASS_BRIDGE_MC 0x0603
-#define PCI_CLASS_BRIDGE_PCI 0x0604
-#define PCI_CLASS_BRIDGE_PCMCIA 0x0605
-#define PCI_CLASS_BRIDGE_NUBUS 0x0606
-#define PCI_CLASS_BRIDGE_CARDBUS 0x0607
-#define PCI_CLASS_BRIDGE_RACEWAY 0x0608
-#define PCI_CLASS_BRIDGE_OTHER 0x0680
-
-#define PCI_BASE_CLASS_COMMUNICATION 0x07
-#define PCI_CLASS_COMMUNICATION_SERIAL 0x0700
-#define PCI_CLASS_COMMUNICATION_PARALLEL 0x0701
-#define PCI_CLASS_COMMUNICATION_MULTISERIAL 0x0702
-#define PCI_CLASS_COMMUNICATION_MODEM 0x0703
-#define PCI_CLASS_COMMUNICATION_OTHER 0x0780
-
-#define PCI_BASE_CLASS_SYSTEM 0x08
-#define PCI_CLASS_SYSTEM_PIC 0x0800
-#define PCI_CLASS_SYSTEM_DMA 0x0801
-#define PCI_CLASS_SYSTEM_TIMER 0x0802
-#define PCI_CLASS_SYSTEM_RTC 0x0803
-#define PCI_CLASS_SYSTEM_PCI_HOTPLUG 0x0804
-#define PCI_CLASS_SYSTEM_OTHER 0x0880
-
-#define PCI_BASE_CLASS_INPUT 0x09
-#define PCI_CLASS_INPUT_KEYBOARD 0x0900
-#define PCI_CLASS_INPUT_PEN 0x0901
-#define PCI_CLASS_INPUT_MOUSE 0x0902
-#define PCI_CLASS_INPUT_SCANNER 0x0903
-#define PCI_CLASS_INPUT_GAMEPORT 0x0904
-#define PCI_CLASS_INPUT_OTHER 0x0980
-
-#define PCI_BASE_CLASS_DOCKING 0x0a
-#define PCI_CLASS_DOCKING_GENERIC 0x0a00
-#define PCI_CLASS_DOCKING_OTHER 0x0a80
-
-#define PCI_BASE_CLASS_PROCESSOR 0x0b
-#define PCI_CLASS_PROCESSOR_386 0x0b00
-#define PCI_CLASS_PROCESSOR_486 0x0b01
-#define PCI_CLASS_PROCESSOR_PENTIUM 0x0b02
-#define PCI_CLASS_PROCESSOR_ALPHA 0x0b10
-#define PCI_CLASS_PROCESSOR_POWERPC 0x0b20
-#define PCI_CLASS_PROCESSOR_MIPS 0x0b30
-#define PCI_CLASS_PROCESSOR_CO 0x0b40
-
-#define PCI_BASE_CLASS_SERIAL 0x0c
-#define PCI_CLASS_SERIAL_FIREWIRE 0x0c00
-#define PCI_CLASS_SERIAL_ACCESS 0x0c01
-#define PCI_CLASS_SERIAL_SSA 0x0c02
-#define PCI_CLASS_SERIAL_USB 0x0c03
-/* added code to find different types of USB controllers */
-#define PCI_CLASS_SERIAL_USB_UHCI 0x0c0300
-#define PCI_CLASS_SERIAL_USB_OHCI 0x0c0310
-#define PCI_CLASS_SERIAL_USB_EHCI 0x0c0320
-#define PCI_CLASS_SERIAL_FIBER 0x0c04
-#define PCI_CLASS_SERIAL_SMBUS 0x0c05
-
-#define PCI_BASE_CLASS_INTELLIGENT 0x0e
-#define PCI_CLASS_INTELLIGENT_I2O 0x0e00
-
-#define PCI_BASE_CLASS_SATELLITE 0x0f
-#define PCI_CLASS_SATELLITE_TV 0x0f00
-#define PCI_CLASS_SATELLITE_AUDIO 0x0f01
-#define PCI_CLASS_SATELLITE_VOICE 0x0f03
-#define PCI_CLASS_SATELLITE_DATA 0x0f04
-
-#define PCI_BASE_CLASS_CRYPT 0x10
-#define PCI_CLASS_CRYPT_NETWORK 0x1000
-#define PCI_CLASS_CRYPT_ENTERTAINMENT 0x1001
-#define PCI_CLASS_CRYPT_OTHER 0x1080
-
-#define PCI_BASE_CLASS_SIGNAL_PROCESSING 0x11
-#define PCI_CLASS_SP_DPIO 0x1100
-#define PCI_CLASS_SP_OTHER 0x1180
-
-#define PCI_CLASS_OTHERS 0xff
-
-/* Vendors and devices. Sort key: vendor first, device next. */
-
-#define PCI_VENDOR_ID_DYNALINK 0x0675
-#define PCI_DEVICE_ID_DYNALINK_IS64PH 0x1702
-
-#define PCI_VENDOR_ID_BERKOM 0x0871
-#define PCI_DEVICE_ID_BERKOM_A1T 0xffa1
-#define PCI_DEVICE_ID_BERKOM_T_CONCEPT 0xffa2
-#define PCI_DEVICE_ID_BERKOM_A4T 0xffa4
-#define PCI_DEVICE_ID_BERKOM_SCITEL_QUADRO 0xffa8
-
-#define PCI_VENDOR_ID_COMPAQ 0x0e11
-#define PCI_DEVICE_ID_COMPAQ_TOKENRING 0x0508
-#define PCI_DEVICE_ID_COMPAQ_1280 0x3033
-#define PCI_DEVICE_ID_COMPAQ_TRIFLEX 0x4000
-#define PCI_DEVICE_ID_COMPAQ_6010 0x6010
-#define PCI_DEVICE_ID_COMPAQ_TACHYON 0xa0fc
-#define PCI_DEVICE_ID_COMPAQ_SMART2P 0xae10
-#define PCI_DEVICE_ID_COMPAQ_NETEL100 0xae32
-#define PCI_DEVICE_ID_COMPAQ_NETEL10 0xae34
-#define PCI_DEVICE_ID_COMPAQ_TRIFLEX_IDE 0xae33
-#define PCI_DEVICE_ID_COMPAQ_NETFLEX3I 0xae35
-#define PCI_DEVICE_ID_COMPAQ_NETEL100D 0xae40
-#define PCI_DEVICE_ID_COMPAQ_NETEL100PI 0xae43
-#define PCI_DEVICE_ID_COMPAQ_NETEL100I 0xb011
-#define PCI_DEVICE_ID_COMPAQ_CISS 0xb060
-#define PCI_DEVICE_ID_COMPAQ_CISSB 0xb178
-#define PCI_DEVICE_ID_COMPAQ_CISSC 0x46
-#define PCI_DEVICE_ID_COMPAQ_THUNDER 0xf130
-#define PCI_DEVICE_ID_COMPAQ_NETFLEX3B 0xf150
-
-#define PCI_VENDOR_ID_NCR 0x1000
-#define PCI_VENDOR_ID_LSI_LOGIC 0x1000
-#define PCI_DEVICE_ID_NCR_53C810 0x0001
-#define PCI_DEVICE_ID_NCR_53C820 0x0002
-#define PCI_DEVICE_ID_NCR_53C825 0x0003
-#define PCI_DEVICE_ID_NCR_53C815 0x0004
-#define PCI_DEVICE_ID_LSI_53C810AP 0x0005
-#define PCI_DEVICE_ID_NCR_53C860 0x0006
-#define PCI_DEVICE_ID_LSI_53C1510 0x000a
-#define PCI_DEVICE_ID_NCR_53C896 0x000b
-#define PCI_DEVICE_ID_NCR_53C895 0x000c
-#define PCI_DEVICE_ID_NCR_53C885 0x000d
-#define PCI_DEVICE_ID_NCR_53C875 0x000f
-#define PCI_DEVICE_ID_NCR_53C1510 0x0010
-#define PCI_DEVICE_ID_LSI_53C895A 0x0012
-#define PCI_DEVICE_ID_LSI_53C875A 0x0013
-#define PCI_DEVICE_ID_LSI_53C1010_33 0x0020
-#define PCI_DEVICE_ID_LSI_53C1010_66 0x0021
-#define PCI_DEVICE_ID_LSI_53C1030 0x0030
-#define PCI_DEVICE_ID_LSI_1030_53C1035 0x0032
-#define PCI_DEVICE_ID_LSI_53C1035 0x0040
-#define PCI_DEVICE_ID_NCR_53C875J 0x008f
-#define PCI_DEVICE_ID_LSI_FC909 0x0621
-#define PCI_DEVICE_ID_LSI_FC929 0x0622
-#define PCI_DEVICE_ID_LSI_FC929_LAN 0x0623
-#define PCI_DEVICE_ID_LSI_FC919 0x0624
-#define PCI_DEVICE_ID_LSI_FC919_LAN 0x0625
-#define PCI_DEVICE_ID_LSI_FC929X 0x0626
-#define PCI_DEVICE_ID_LSI_FC939X 0x0642
-#define PCI_DEVICE_ID_LSI_FC949X 0x0640
-#define PCI_DEVICE_ID_LSI_FC919X 0x0628
-#define PCI_DEVICE_ID_NCR_YELLOWFIN 0x0701
-#define PCI_DEVICE_ID_LSI_61C102 0x0901
-#define PCI_DEVICE_ID_LSI_63C815 0x1000
-#define PCI_DEVICE_ID_LSI_SAS1064 0x0050
-#define PCI_DEVICE_ID_LSI_SAS1066 0x005E
-#define PCI_DEVICE_ID_LSI_SAS1068 0x0054
-#define PCI_DEVICE_ID_LSI_SAS1064A 0x005C
-#define PCI_DEVICE_ID_LSI_SAS1064E 0x0056
-#define PCI_DEVICE_ID_LSI_SAS1066E 0x005A
-#define PCI_DEVICE_ID_LSI_SAS1068E 0x0058
-#define PCI_DEVICE_ID_LSI_SAS1078 0x0060
-
-#define PCI_VENDOR_ID_ATI 0x1002
-/* Mach64 */
-#define PCI_DEVICE_ID_ATI_68800 0x4158
-#define PCI_DEVICE_ID_ATI_215CT222 0x4354
-#define PCI_DEVICE_ID_ATI_210888CX 0x4358
-#define PCI_DEVICE_ID_ATI_215ET222 0x4554
-/* Mach64 / Rage */
-#define PCI_DEVICE_ID_ATI_215GB 0x4742
-#define PCI_DEVICE_ID_ATI_215GD 0x4744
-#define PCI_DEVICE_ID_ATI_215GI 0x4749
-#define PCI_DEVICE_ID_ATI_215GP 0x4750
-#define PCI_DEVICE_ID_ATI_215GQ 0x4751
-#define PCI_DEVICE_ID_ATI_215XL 0x4752
-#define PCI_DEVICE_ID_ATI_215GT 0x4754
-#define PCI_DEVICE_ID_ATI_215GTB 0x4755
-#define PCI_DEVICE_ID_ATI_215_IV 0x4756
-#define PCI_DEVICE_ID_ATI_215_IW 0x4757
-#define PCI_DEVICE_ID_ATI_215_IZ 0x475A
-#define PCI_DEVICE_ID_ATI_210888GX 0x4758
-#define PCI_DEVICE_ID_ATI_215_LB 0x4c42
-#define PCI_DEVICE_ID_ATI_215_LD 0x4c44
-#define PCI_DEVICE_ID_ATI_215_LG 0x4c47
-#define PCI_DEVICE_ID_ATI_215_LI 0x4c49
-#define PCI_DEVICE_ID_ATI_215_LM 0x4c4D
-#define PCI_DEVICE_ID_ATI_215_LN 0x4c4E
-#define PCI_DEVICE_ID_ATI_215_LR 0x4c52
-#define PCI_DEVICE_ID_ATI_215_LS 0x4c53
-#define PCI_DEVICE_ID_ATI_264_LT 0x4c54
-/* Mach64 VT */
-#define PCI_DEVICE_ID_ATI_264VT 0x5654
-#define PCI_DEVICE_ID_ATI_264VU 0x5655
-#define PCI_DEVICE_ID_ATI_264VV 0x5656
-/* Rage128 GL */
-#define PCI_DEVICE_ID_ATI_RAGE128_RE 0x5245
-#define PCI_DEVICE_ID_ATI_RAGE128_RF 0x5246
-#define PCI_DEVICE_ID_ATI_RAGE128_RG 0x5247
-/* Rage128 VR */
-#define PCI_DEVICE_ID_ATI_RAGE128_RK 0x524b
-#define PCI_DEVICE_ID_ATI_RAGE128_RL 0x524c
-#define PCI_DEVICE_ID_ATI_RAGE128_SE 0x5345
-#define PCI_DEVICE_ID_ATI_RAGE128_SF 0x5346
-#define PCI_DEVICE_ID_ATI_RAGE128_SG 0x5347
-#define PCI_DEVICE_ID_ATI_RAGE128_SH 0x5348
-#define PCI_DEVICE_ID_ATI_RAGE128_SK 0x534b
-#define PCI_DEVICE_ID_ATI_RAGE128_SL 0x534c
-#define PCI_DEVICE_ID_ATI_RAGE128_SM 0x534d
-#define PCI_DEVICE_ID_ATI_RAGE128_SN 0x534e
-/* Rage128 Ultra */
-#define PCI_DEVICE_ID_ATI_RAGE128_TF 0x5446
-#define PCI_DEVICE_ID_ATI_RAGE128_TL 0x544c
-#define PCI_DEVICE_ID_ATI_RAGE128_TR 0x5452
-#define PCI_DEVICE_ID_ATI_RAGE128_TS 0x5453
-#define PCI_DEVICE_ID_ATI_RAGE128_TT 0x5454
-#define PCI_DEVICE_ID_ATI_RAGE128_TU 0x5455
-/* Rage128 M3 */
-#define PCI_DEVICE_ID_ATI_RAGE128_LE 0x4c45
-#define PCI_DEVICE_ID_ATI_RAGE128_LF 0x4c46
-/* Rage128 M4 */
-#define PCI_DEVICE_ID_ATI_RAGE128_MF 0x4d46
-#define PCI_DEVICE_ID_ATI_RAGE128_ML 0x4d4c
-/* Rage128 Pro GL */
-#define PCI_DEVICE_ID_ATI_RAGE128_PA 0x5041
-#define PCI_DEVICE_ID_ATI_RAGE128_PB 0x5042
-#define PCI_DEVICE_ID_ATI_RAGE128_PC 0x5043
-#define PCI_DEVICE_ID_ATI_RAGE128_PD 0x5044
-#define PCI_DEVICE_ID_ATI_RAGE128_PE 0x5045
-#define PCI_DEVICE_ID_ATI_RAGE128_PF 0x5046
-/* Rage128 Pro VR */
-#define PCI_DEVICE_ID_ATI_RAGE128_PG 0x5047
-#define PCI_DEVICE_ID_ATI_RAGE128_PH 0x5048
-#define PCI_DEVICE_ID_ATI_RAGE128_PI 0x5049
-#define PCI_DEVICE_ID_ATI_RAGE128_PJ 0x504A
-#define PCI_DEVICE_ID_ATI_RAGE128_PK 0x504B
-#define PCI_DEVICE_ID_ATI_RAGE128_PL 0x504C
-#define PCI_DEVICE_ID_ATI_RAGE128_PM 0x504D
-#define PCI_DEVICE_ID_ATI_RAGE128_PN 0x504E
-#define PCI_DEVICE_ID_ATI_RAGE128_PO 0x504F
-#define PCI_DEVICE_ID_ATI_RAGE128_PP 0x5050
-#define PCI_DEVICE_ID_ATI_RAGE128_PQ 0x5051
-#define PCI_DEVICE_ID_ATI_RAGE128_PR 0x5052
-#define PCI_DEVICE_ID_ATI_RAGE128_TR 0x5452
-#define PCI_DEVICE_ID_ATI_RAGE128_PS 0x5053
-#define PCI_DEVICE_ID_ATI_RAGE128_PT 0x5054
-#define PCI_DEVICE_ID_ATI_RAGE128_PU 0x5055
-#define PCI_DEVICE_ID_ATI_RAGE128_PV 0x5056
-#define PCI_DEVICE_ID_ATI_RAGE128_PW 0x5057
-#define PCI_DEVICE_ID_ATI_RAGE128_PX 0x5058
-/* Rage128 M4 */
-#define PCI_DEVICE_ID_ATI_RADEON_LE 0x4d45
-#define PCI_DEVICE_ID_ATI_RADEON_LF 0x4d46
-/* Radeon R100 */
-#define PCI_DEVICE_ID_ATI_RADEON_QD 0x5144
-#define PCI_DEVICE_ID_ATI_RADEON_QE 0x5145
-#define PCI_DEVICE_ID_ATI_RADEON_QF 0x5146
-#define PCI_DEVICE_ID_ATI_RADEON_QG 0x5147
-/* Radeon RV100 (VE) */
-#define PCI_DEVICE_ID_ATI_RADEON_QY 0x5159
-#define PCI_DEVICE_ID_ATI_RADEON_QZ 0x515a
-/* Radeon R200 (8500) */
-#define PCI_DEVICE_ID_ATI_RADEON_QL 0x514c
-#define PCI_DEVICE_ID_ATI_RADEON_QN 0x514e
-#define PCI_DEVICE_ID_ATI_RADEON_QO 0x514f
-#define PCI_DEVICE_ID_ATI_RADEON_Ql 0x516c
-#define PCI_DEVICE_ID_ATI_RADEON_BB 0x4242
-/* Radeon R200 (9100) */
-#define PCI_DEVICE_ID_ATI_RADEON_QM 0x514d
-/* Radeon RV200 (7500) */
-#define PCI_DEVICE_ID_ATI_RADEON_QW 0x5157
-#define PCI_DEVICE_ID_ATI_RADEON_QX 0x5158
-/* Radeon NV-100 */
-#define PCI_DEVICE_ID_ATI_RADEON_N1 0x5159
-#define PCI_DEVICE_ID_ATI_RADEON_N2 0x515a
-/* Radeon RV250 (9000) */
-#define PCI_DEVICE_ID_ATI_RADEON_Id 0x4964
-#define PCI_DEVICE_ID_ATI_RADEON_Ie 0x4965
-#define PCI_DEVICE_ID_ATI_RADEON_If 0x4966
-#define PCI_DEVICE_ID_ATI_RADEON_Ig 0x4967
-/* Radeon RV280 (9200) */
-#define PCI_DEVICE_ID_ATI_RADEON_Y_ 0x5960
-#define PCI_DEVICE_ID_ATI_RADEON_Ya 0x5961
-#define PCI_DEVICE_ID_ATI_RADEON_Yd 0x5964
-/* Radeon R300 (9500) */
-#define PCI_DEVICE_ID_ATI_RADEON_AD 0x4144
-/* Radeon R300 (9700) */
-#define PCI_DEVICE_ID_ATI_RADEON_ND 0x4e44
-#define PCI_DEVICE_ID_ATI_RADEON_NE 0x4e45
-#define PCI_DEVICE_ID_ATI_RADEON_NF 0x4e46
-#define PCI_DEVICE_ID_ATI_RADEON_NG 0x4e47
-#define PCI_DEVICE_ID_ATI_RADEON_AE 0x4145
-#define PCI_DEVICE_ID_ATI_RADEON_AF 0x4146
-/* Radeon R350 (9800) */
-#define PCI_DEVICE_ID_ATI_RADEON_NH 0x4e48
-#define PCI_DEVICE_ID_ATI_RADEON_NI 0x4e49
-/* Radeon RV350 (9600) */
-#define PCI_DEVICE_ID_ATI_RADEON_AP 0x4150
-#define PCI_DEVICE_ID_ATI_RADEON_AR 0x4152
-/* Radeon M6 */
-#define PCI_DEVICE_ID_ATI_RADEON_LY 0x4c59
-#define PCI_DEVICE_ID_ATI_RADEON_LZ 0x4c5a
-/* Radeon M7 */
-#define PCI_DEVICE_ID_ATI_RADEON_LW 0x4c57
-#define PCI_DEVICE_ID_ATI_RADEON_LX 0x4c58
-/* Radeon M9 */
-#define PCI_DEVICE_ID_ATI_RADEON_Ld 0x4c64
-#define PCI_DEVICE_ID_ATI_RADEON_Le 0x4c65
-#define PCI_DEVICE_ID_ATI_RADEON_Lf 0x4c66
-#define PCI_DEVICE_ID_ATI_RADEON_Lg 0x4c67
-/* Radeon */
-#define PCI_DEVICE_ID_ATI_RADEON_RA 0x5144
-#define PCI_DEVICE_ID_ATI_RADEON_RB 0x5145
-#define PCI_DEVICE_ID_ATI_RADEON_RC 0x5146
-#define PCI_DEVICE_ID_ATI_RADEON_RD 0x5147
-/* RadeonIGP */
-#define PCI_DEVICE_ID_ATI_RS100 0xcab0
-#define PCI_DEVICE_ID_ATI_RS200 0xcab2
-#define PCI_DEVICE_ID_ATI_RS200_B 0xcbb2
-#define PCI_DEVICE_ID_ATI_RS250 0xcab3
-#define PCI_DEVICE_ID_ATI_RS300_100 0x5830
-#define PCI_DEVICE_ID_ATI_RS300_133 0x5831
-#define PCI_DEVICE_ID_ATI_RS300_166 0x5832
-#define PCI_DEVICE_ID_ATI_RS300_200 0x5833
-#define PCI_DEVICE_ID_ATI_RS350_100 0x7830
-#define PCI_DEVICE_ID_ATI_RS350_133 0x7831
-#define PCI_DEVICE_ID_ATI_RS350_166 0x7832
-#define PCI_DEVICE_ID_ATI_RS350_200 0x7833
-#define PCI_DEVICE_ID_ATI_RS400_100 0x5a30
-#define PCI_DEVICE_ID_ATI_RS400_133 0x5a31
-#define PCI_DEVICE_ID_ATI_RS400_166 0x5a32
-#define PCI_DEVICE_ID_ATI_RS400_200 0x5a33
-#define PCI_DEVICE_ID_ATI_RS480 0x5950
-/* ATI IXP Chipset */
-#define PCI_DEVICE_ID_ATI_IXP200_IDE 0x4349
-#define PCI_DEVICE_ID_ATI_IXP300_IDE 0x4369
-#define PCI_DEVICE_ID_ATI_IXP300_SATA 0x436e
-#define PCI_DEVICE_ID_ATI_IXP400_IDE 0x4376
-#define PCI_DEVICE_ID_ATI_IXP400_SATA 0x4379
-
-#define PCI_VENDOR_ID_VLSI 0x1004
-#define PCI_DEVICE_ID_VLSI_82C592 0x0005
-#define PCI_DEVICE_ID_VLSI_82C593 0x0006
-#define PCI_DEVICE_ID_VLSI_82C594 0x0007
-#define PCI_DEVICE_ID_VLSI_82C597 0x0009
-#define PCI_DEVICE_ID_VLSI_82C541 0x000c
-#define PCI_DEVICE_ID_VLSI_82C543 0x000d
-#define PCI_DEVICE_ID_VLSI_82C532 0x0101
-#define PCI_DEVICE_ID_VLSI_82C534 0x0102
-#define PCI_DEVICE_ID_VLSI_82C535 0x0104
-#define PCI_DEVICE_ID_VLSI_82C147 0x0105
-#define PCI_DEVICE_ID_VLSI_VAS96011 0x0702
-
-#define PCI_VENDOR_ID_ADL 0x1005
-#define PCI_DEVICE_ID_ADL_2301 0x2301
-
-#define PCI_VENDOR_ID_NS 0x100b
-#define PCI_DEVICE_ID_NS_87415 0x0002
-#define PCI_DEVICE_ID_NS_87560_LIO 0x000e
-#define PCI_DEVICE_ID_NS_87560_USB 0x0012
-#define PCI_DEVICE_ID_NS_83815 0x0020
-#define PCI_DEVICE_ID_NS_83820 0x0022
-#define PCI_DEVICE_ID_NS_SCx200_BRIDGE 0x0500
-#define PCI_DEVICE_ID_NS_SCx200_SMI 0x0501
-#define PCI_DEVICE_ID_NS_SCx200_IDE 0x0502
-#define PCI_DEVICE_ID_NS_SCx200_AUDIO 0x0503
-#define PCI_DEVICE_ID_NS_SCx200_VIDEO 0x0504
-#define PCI_DEVICE_ID_NS_SCx200_XBUS 0x0505
-#define PCI_DEVICE_ID_NS_SC1100_BRIDGE 0x0510
-#define PCI_DEVICE_ID_NS_SC1100_SMI 0x0511
-#define PCI_DEVICE_ID_NS_SC1100_XBUS 0x0515
-#define PCI_DEVICE_ID_NS_87410 0xd001
-
-#define PCI_VENDOR_ID_TSENG 0x100c
-#define PCI_DEVICE_ID_TSENG_W32P_2 0x3202
-#define PCI_DEVICE_ID_TSENG_W32P_b 0x3205
-#define PCI_DEVICE_ID_TSENG_W32P_c 0x3206
-#define PCI_DEVICE_ID_TSENG_W32P_d 0x3207
-#define PCI_DEVICE_ID_TSENG_ET6000 0x3208
-
-#define PCI_VENDOR_ID_WEITEK 0x100e
-#define PCI_DEVICE_ID_WEITEK_P9000 0x9001
-#define PCI_DEVICE_ID_WEITEK_P9100 0x9100
-
-#define PCI_VENDOR_ID_DEC 0x1011
-#define PCI_DEVICE_ID_DEC_BRD 0x0001
-#define PCI_DEVICE_ID_DEC_TULIP 0x0002
-#define PCI_DEVICE_ID_DEC_TGA 0x0004
-#define PCI_DEVICE_ID_DEC_TULIP_FAST 0x0009
-#define PCI_DEVICE_ID_DEC_TGA2 0x000D
-#define PCI_DEVICE_ID_DEC_FDDI 0x000F
-#define PCI_DEVICE_ID_DEC_TULIP_PLUS 0x0014
-#define PCI_DEVICE_ID_DEC_21142 0x0019
-#define PCI_DEVICE_ID_DEC_21052 0x0021
-#define PCI_DEVICE_ID_DEC_21150 0x0022
-#define PCI_DEVICE_ID_DEC_21152 0x0024
-#define PCI_DEVICE_ID_DEC_21153 0x0025
-#define PCI_DEVICE_ID_DEC_21154 0x0026
-#define PCI_DEVICE_ID_DEC_21285 0x1065
-#define PCI_DEVICE_ID_COMPAQ_42XX 0x0046
-
-#define PCI_VENDOR_ID_CIRRUS 0x1013
-#define PCI_DEVICE_ID_CIRRUS_7548 0x0038
-#define PCI_DEVICE_ID_CIRRUS_5430 0x00a0
-#define PCI_DEVICE_ID_CIRRUS_5434_4 0x00a4
-#define PCI_DEVICE_ID_CIRRUS_5434_8 0x00a8
-#define PCI_DEVICE_ID_CIRRUS_5436 0x00ac
-#define PCI_DEVICE_ID_CIRRUS_5446 0x00b8
-#define PCI_DEVICE_ID_CIRRUS_5480 0x00bc
-#define PCI_DEVICE_ID_CIRRUS_5462 0x00d0
-#define PCI_DEVICE_ID_CIRRUS_5464 0x00d4
-#define PCI_DEVICE_ID_CIRRUS_5465 0x00d6
-#define PCI_DEVICE_ID_CIRRUS_6729 0x1100
-#define PCI_DEVICE_ID_CIRRUS_6832 0x1110
-#define PCI_DEVICE_ID_CIRRUS_7542 0x1200
-#define PCI_DEVICE_ID_CIRRUS_7543 0x1202
-#define PCI_DEVICE_ID_CIRRUS_7541 0x1204
-
-#define PCI_VENDOR_ID_IBM 0x1014
-#define PCI_DEVICE_ID_IBM_FIRE_CORAL 0x000a
-#define PCI_DEVICE_ID_IBM_TR 0x0018
-#define PCI_DEVICE_ID_IBM_82G2675 0x001d
-#define PCI_DEVICE_ID_IBM_MCA 0x0020
-#define PCI_DEVICE_ID_IBM_82351 0x0022
-#define PCI_DEVICE_ID_IBM_PYTHON 0x002d
-#define PCI_DEVICE_ID_IBM_SERVERAID 0x002e
-#define PCI_DEVICE_ID_IBM_TR_WAKE 0x003e
-#define PCI_DEVICE_ID_IBM_MPIC 0x0046
-#define PCI_DEVICE_ID_IBM_3780IDSP 0x007d
-#define PCI_DEVICE_ID_IBM_CHUKAR 0x0096
-#define PCI_DEVICE_ID_IBM_CPC710_PCI64 0x00fc
-#define PCI_DEVICE_ID_IBM_CPC710_PCI32 0x0105
-#define PCI_DEVICE_ID_IBM_405GP 0x0156
-#define PCI_DEVICE_ID_IBM_SNIPE 0x0180
-#define PCI_DEVICE_ID_IBM_SERVERAIDI960 0x01bd
-#define PCI_DEVICE_ID_IBM_CITRINE 0x028C
-#define PCI_DEVICE_ID_IBM_GEMSTONE 0xB166
-#define PCI_DEVICE_ID_IBM_MPIC_2 0xffff
-#define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_1 0x0031
-#define PCI_DEVICE_ID_IBM_ICOM_DEV_ID_2 0x0219
-#define PCI_DEVICE_ID_IBM_ICOM_V2_TWO_PORTS_RVX 0x021A
-#define PCI_DEVICE_ID_IBM_ICOM_V2_ONE_PORT_RVX_ONE_PORT_MDM 0x0251
-#define PCI_DEVICE_ID_IBM_ICOM_FOUR_PORT_MODEL 0x252
-
-#define PCI_VENDOR_ID_COMPEX2 0x101a // pci.ids says "AT&T GIS (NCR)"
-#define PCI_DEVICE_ID_COMPEX2_100VG 0x0005
-
-#define PCI_VENDOR_ID_WD 0x101c
-#define PCI_DEVICE_ID_WD_7197 0x3296
-#define PCI_DEVICE_ID_WD_90C 0xc24a
-
-#define PCI_VENDOR_ID_AMI 0x101e
-#define PCI_DEVICE_ID_AMI_MEGARAID3 0x1960
-#define PCI_DEVICE_ID_AMI_MEGARAID 0x9010
-#define PCI_DEVICE_ID_AMI_MEGARAID2 0x9060
-
-#define PCI_VENDOR_ID_AMD 0x1022
-#define PCI_DEVICE_ID_AMD_LANCE 0x2000
-#define PCI_DEVICE_ID_AMD_LANCE_HOME 0x2001
-#define PCI_DEVICE_ID_AMD_SCSI 0x2020
-#define PCI_DEVICE_ID_AMD_SERENADE 0x36c0
-#define PCI_DEVICE_ID_AMD_FE_GATE_7006 0x7006
-#define PCI_DEVICE_ID_AMD_FE_GATE_7007 0x7007
-#define PCI_DEVICE_ID_AMD_FE_GATE_700C 0x700C
-#define PCI_DEVICE_ID_AMD_FE_GATE_700D 0x700D
-#define PCI_DEVICE_ID_AMD_FE_GATE_700E 0x700E
-#define PCI_DEVICE_ID_AMD_FE_GATE_700F 0x700F
-#define PCI_DEVICE_ID_AMD_COBRA_7400 0x7400
-#define PCI_DEVICE_ID_AMD_COBRA_7401 0x7401
-#define PCI_DEVICE_ID_AMD_COBRA_7403 0x7403
-#define PCI_DEVICE_ID_AMD_COBRA_7404 0x7404
-#define PCI_DEVICE_ID_AMD_VIPER_7408 0x7408
-#define PCI_DEVICE_ID_AMD_VIPER_7409 0x7409
-#define PCI_DEVICE_ID_AMD_VIPER_740B 0x740B
-#define PCI_DEVICE_ID_AMD_VIPER_740C 0x740C
-#define PCI_DEVICE_ID_AMD_VIPER_7410 0x7410
-#define PCI_DEVICE_ID_AMD_VIPER_7411 0x7411
-#define PCI_DEVICE_ID_AMD_VIPER_7413 0x7413
-#define PCI_DEVICE_ID_AMD_VIPER_7414 0x7414
-#define PCI_DEVICE_ID_AMD_OPUS_7440 0x7440
-# define PCI_DEVICE_ID_AMD_VIPER_7440 PCI_DEVICE_ID_AMD_OPUS_7440
-#define PCI_DEVICE_ID_AMD_OPUS_7441 0x7441
-# define PCI_DEVICE_ID_AMD_VIPER_7441 PCI_DEVICE_ID_AMD_OPUS_7441
-#define PCI_DEVICE_ID_AMD_OPUS_7443 0x7443
-# define PCI_DEVICE_ID_AMD_VIPER_7443 PCI_DEVICE_ID_AMD_OPUS_7443
-#define PCI_DEVICE_ID_AMD_OPUS_7445 0x7445
-#define PCI_DEVICE_ID_AMD_OPUS_7448 0x7448
-# define PCI_DEVICE_ID_AMD_VIPER_7448 PCI_DEVICE_ID_AMD_OPUS_7448
-#define PCI_DEVICE_ID_AMD_OPUS_7449 0x7449
-# define PCI_DEVICE_ID_AMD_VIPER_7449 PCI_DEVICE_ID_AMD_OPUS_7449
-#define PCI_DEVICE_ID_AMD_8111_LAN 0x7462
-#define PCI_DEVICE_ID_AMD_8111_LPC 0x7468
-#define PCI_DEVICE_ID_AMD_8111_IDE 0x7469
-#define PCI_DEVICE_ID_AMD_8111_SMBUS2 0x746a
-#define PCI_DEVICE_ID_AMD_8111_SMBUS 0x746b
-#define PCI_DEVICE_ID_AMD_8111_AUDIO 0x746d
-#define PCI_DEVICE_ID_AMD_8151_0 0x7454
-#define PCI_DEVICE_ID_AMD_8131_APIC 0x7450
-
-#define PCI_VENDOR_ID_TRIDENT 0x1023
-#define PCI_DEVICE_ID_TRIDENT_4DWAVE_DX 0x2000
-#define PCI_DEVICE_ID_TRIDENT_4DWAVE_NX 0x2001
-#define PCI_DEVICE_ID_TRIDENT_9320 0x9320
-#define PCI_DEVICE_ID_TRIDENT_9388 0x9388
-#define PCI_DEVICE_ID_TRIDENT_9397 0x9397
-#define PCI_DEVICE_ID_TRIDENT_939A 0x939A
-#define PCI_DEVICE_ID_TRIDENT_9520 0x9520
-#define PCI_DEVICE_ID_TRIDENT_9525 0x9525
-#define PCI_DEVICE_ID_TRIDENT_9420 0x9420
-#define PCI_DEVICE_ID_TRIDENT_9440 0x9440
-#define PCI_DEVICE_ID_TRIDENT_9660 0x9660
-#define PCI_DEVICE_ID_TRIDENT_9750 0x9750
-#define PCI_DEVICE_ID_TRIDENT_9850 0x9850
-#define PCI_DEVICE_ID_TRIDENT_9880 0x9880
-#define PCI_DEVICE_ID_TRIDENT_8400 0x8400
-#define PCI_DEVICE_ID_TRIDENT_8420 0x8420
-#define PCI_DEVICE_ID_TRIDENT_8500 0x8500
-
-#define PCI_VENDOR_ID_AI 0x1025
-#define PCI_DEVICE_ID_AI_M1435 0x1435
-
-#define PCI_VENDOR_ID_DELL 0x1028
-#define PCI_DEVICE_ID_DELL_RACIII 0x0008
-#define PCI_DEVICE_ID_DELL_RAC4 0x0012
-
-#define PCI_VENDOR_ID_MATROX 0x102B
-#define PCI_DEVICE_ID_MATROX_MGA_2 0x0518
-#define PCI_DEVICE_ID_MATROX_MIL 0x0519
-#define PCI_DEVICE_ID_MATROX_MYS 0x051A
-#define PCI_DEVICE_ID_MATROX_MIL_2 0x051b
-#define PCI_DEVICE_ID_MATROX_MIL_2_AGP 0x051f
-#define PCI_DEVICE_ID_MATROX_MGA_IMP 0x0d10
-#define PCI_DEVICE_ID_MATROX_G100_MM 0x1000
-#define PCI_DEVICE_ID_MATROX_G100_AGP 0x1001
-#define PCI_DEVICE_ID_MATROX_G200_PCI 0x0520
-#define PCI_DEVICE_ID_MATROX_G200_AGP 0x0521
-#define PCI_DEVICE_ID_MATROX_G400 0x0525
-#define PCI_DEVICE_ID_MATROX_G550 0x2527
-#define PCI_DEVICE_ID_MATROX_VIA 0x4536
-
-#define PCI_VENDOR_ID_CT 0x102c
-#define PCI_DEVICE_ID_CT_69000 0x00c0
-#define PCI_DEVICE_ID_CT_65545 0x00d8
-#define PCI_DEVICE_ID_CT_65548 0x00dc
-#define PCI_DEVICE_ID_CT_65550 0x00e0
-#define PCI_DEVICE_ID_CT_65554 0x00e4
-#define PCI_DEVICE_ID_CT_65555 0x00e5
-
-#define PCI_VENDOR_ID_MIRO 0x1031
-#define PCI_DEVICE_ID_MIRO_36050 0x5601
-#define PCI_DEVICE_ID_MIRO_DC10PLUS 0x7efe
-#define PCI_DEVICE_ID_MIRO_DC30PLUS 0xd801
-
-#define PCI_VENDOR_ID_NEC 0x1033
-#define PCI_DEVICE_ID_NEC_CBUS_1 0x0001 /* PCI-Cbus Bridge */
-#define PCI_DEVICE_ID_NEC_LOCAL 0x0002 /* Local Bridge */
-#define PCI_DEVICE_ID_NEC_ATM 0x0003 /* ATM LAN Controller */
-#define PCI_DEVICE_ID_NEC_R4000 0x0004 /* R4000 Bridge */
-#define PCI_DEVICE_ID_NEC_486 0x0005 /* 486 Like Peripheral Bus Bridge */
-#define PCI_DEVICE_ID_NEC_ACCEL_1 0x0006 /* Graphic Accelerator */
-#define PCI_DEVICE_ID_NEC_UXBUS 0x0007 /* UX-Bus Bridge */
-#define PCI_DEVICE_ID_NEC_ACCEL_2 0x0008 /* Graphic Accelerator */
-#define PCI_DEVICE_ID_NEC_GRAPH 0x0009 /* PCI-CoreGraph Bridge */
-#define PCI_DEVICE_ID_NEC_VL 0x0016 /* PCI-VL Bridge */
-#define PCI_DEVICE_ID_NEC_STARALPHA2 0x002c /* STAR ALPHA2 */
-#define PCI_DEVICE_ID_NEC_CBUS_2 0x002d /* PCI-Cbus Bridge */
-#define PCI_DEVICE_ID_NEC_USB_A 0x0031
-#define PCI_DEVICE_ID_NEC_USB 0x0035 /* PCI-USB Host */
-#define PCI_DEVICE_ID_NEC_USB_2 0x00e0 /* PCI-USB 2 Host */
-#define PCI_DEVICE_ID_NEC_USB_3 0x00f0
-#define PCI_DEVICE_ID_NEC_CBUS_3 0x003b
-#define PCI_DEVICE_ID_NEC_NAPCCARD 0x003e
-#define PCI_DEVICE_ID_NEC_PCX2 0x0046 /* PowerVR */
-#define PCI_DEVICE_ID_NEC_NILE4 0x005a
-#define PCI_DEVICE_ID_NEC_VRC5476 0x009b
-#define PCI_DEVICE_ID_NEC_VRC4173 0x00a5
-#define PCI_DEVICE_ID_NEC_VRC5477_AC97 0x00a6
-#define PCI_DEVICE_ID_NEC_PC9821CS01 0x800c /* PC-9821-CS01 */
-#define PCI_DEVICE_ID_NEC_PC9821NRB06 0x800d /* PC-9821NR-B06 */
-
-#define PCI_VENDOR_ID_FD 0x1036
-#define PCI_DEVICE_ID_FD_36C70 0x0000
-
-#define PCI_VENDOR_ID_SI 0x1039
-#define PCI_DEVICE_ID_SI_5591_AGP 0x0001
-#define PCI_DEVICE_ID_SI_6202 0x0002
-#define PCI_DEVICE_ID_SI_503 0x0008
-#define PCI_DEVICE_ID_SI_ACPI 0x0009
-#define PCI_DEVICE_ID_SI_SMBUS 0x0016
-#define PCI_DEVICE_ID_SI_LPC 0x0018
-#define PCI_DEVICE_ID_SI_5597_VGA 0x0200
-#define PCI_DEVICE_ID_SI_6205 0x0205
-#define PCI_DEVICE_ID_SI_501 0x0406
-#define PCI_DEVICE_ID_SI_496 0x0496
-#define PCI_DEVICE_ID_SI_300 0x0300
-#define PCI_DEVICE_ID_SI_315H 0x0310
-#define PCI_DEVICE_ID_SI_315 0x0315
-#define PCI_DEVICE_ID_SI_315PRO 0x0325
-#define PCI_DEVICE_ID_SI_530 0x0530
-#define PCI_DEVICE_ID_SI_540 0x0540
-#define PCI_DEVICE_ID_SI_550 0x0550
-#define PCI_DEVICE_ID_SI_540_VGA 0x5300
-#define PCI_DEVICE_ID_SI_550_VGA 0x5315
-#define PCI_DEVICE_ID_SI_601 0x0601
-#define PCI_DEVICE_ID_SI_620 0x0620
-#define PCI_DEVICE_ID_SI_630 0x0630
-#define PCI_DEVICE_ID_SI_633 0x0633
-#define PCI_DEVICE_ID_SI_635 0x0635
-#define PCI_DEVICE_ID_SI_640 0x0640
-#define PCI_DEVICE_ID_SI_645 0x0645
-#define PCI_DEVICE_ID_SI_646 0x0646
-#define PCI_DEVICE_ID_SI_648 0x0648
-#define PCI_DEVICE_ID_SI_650 0x0650
-#define PCI_DEVICE_ID_SI_651 0x0651
-#define PCI_DEVICE_ID_SI_652 0x0652
-#define PCI_DEVICE_ID_SI_655 0x0655
-#define PCI_DEVICE_ID_SI_661 0x0661
-#define PCI_DEVICE_ID_SI_730 0x0730
-#define PCI_DEVICE_ID_SI_733 0x0733
-#define PCI_DEVICE_ID_SI_630_VGA 0x6300
-#define PCI_DEVICE_ID_SI_730_VGA 0x7300
-#define PCI_DEVICE_ID_SI_735 0x0735
-#define PCI_DEVICE_ID_SI_740 0x0740
-#define PCI_DEVICE_ID_SI_741 0x0741
-#define PCI_DEVICE_ID_SI_745 0x0745
-#define PCI_DEVICE_ID_SI_746 0x0746
-#define PCI_DEVICE_ID_SI_748 0x0748
-#define PCI_DEVICE_ID_SI_750 0x0750
-#define PCI_DEVICE_ID_SI_751 0x0751
-#define PCI_DEVICE_ID_SI_752 0x0752
-#define PCI_DEVICE_ID_SI_755 0x0755
-#define PCI_DEVICE_ID_SI_760 0x0760
-#define PCI_DEVICE_ID_SI_900 0x0900
-#define PCI_DEVICE_ID_SI_961 0x0961
-#define PCI_DEVICE_ID_SI_962 0x0962
-#define PCI_DEVICE_ID_SI_963 0x0963
-#define PCI_DEVICE_ID_SI_5107 0x5107
-#define PCI_DEVICE_ID_SI_5300 0x5300
-#define PCI_DEVICE_ID_SI_5511 0x5511
-#define PCI_DEVICE_ID_SI_5513 0x5513
-#define PCI_DEVICE_ID_SI_5518 0x5518
-#define PCI_DEVICE_ID_SI_5571 0x5571
-#define PCI_DEVICE_ID_SI_5581 0x5581
-#define PCI_DEVICE_ID_SI_5582 0x5582
-#define PCI_DEVICE_ID_SI_5591 0x5591
-#define PCI_DEVICE_ID_SI_5596 0x5596
-#define PCI_DEVICE_ID_SI_5597 0x5597
-#define PCI_DEVICE_ID_SI_5598 0x5598
-#define PCI_DEVICE_ID_SI_5600 0x5600
-#define PCI_DEVICE_ID_SI_6300 0x6300
-#define PCI_DEVICE_ID_SI_6306 0x6306
-#define PCI_DEVICE_ID_SI_6326 0x6326
-#define PCI_DEVICE_ID_SI_7001 0x7001
-#define PCI_DEVICE_ID_SI_7012 0x7012
-#define PCI_DEVICE_ID_SI_7016 0x7016
-
-#define PCI_VENDOR_ID_HP 0x103c
-#define PCI_DEVICE_ID_HP_VISUALIZE_EG 0x1005
-#define PCI_DEVICE_ID_HP_VISUALIZE_FX6 0x1006
-#define PCI_DEVICE_ID_HP_VISUALIZE_FX4 0x1008
-#define PCI_DEVICE_ID_HP_VISUALIZE_FX2 0x100a
-#define PCI_DEVICE_ID_HP_TACHYON 0x1028
-#define PCI_DEVICE_ID_HP_TACHLITE 0x1029
-#define PCI_DEVICE_ID_HP_J2585A 0x1030
-#define PCI_DEVICE_ID_HP_J2585B 0x1031
-#define PCI_DEVICE_ID_HP_J2973A 0x1040
-#define PCI_DEVICE_ID_HP_J2970A 0x1042
-#define PCI_DEVICE_ID_HP_DIVA 0x1048
-#define PCI_DEVICE_ID_HP_DIVA_TOSCA1 0x1049
-#define PCI_DEVICE_ID_HP_DIVA_TOSCA2 0x104A
-#define PCI_DEVICE_ID_HP_DIVA_MAESTRO 0x104B
-#define PCI_DEVICE_ID_HP_PCI_LBA 0x1054
-#define PCI_DEVICE_ID_HP_REO_SBA 0x10f0
-#define PCI_DEVICE_ID_HP_REO_IOC 0x10f1
-#define PCI_DEVICE_ID_HP_VISUALIZE_FXE 0x108b
-#define PCI_DEVICE_ID_HP_DIVA_HALFDOME 0x1223
-#define PCI_DEVICE_ID_HP_DIVA_KEYSTONE 0x1226
-#define PCI_DEVICE_ID_HP_DIVA_POWERBAR 0x1227
-#define PCI_DEVICE_ID_HP_ZX1_SBA 0x1229
-#define PCI_DEVICE_ID_HP_ZX1_IOC 0x122a
-#define PCI_DEVICE_ID_HP_PCIX_LBA 0x122e
-#define PCI_DEVICE_ID_HP_SX1000_IOC 0x127c
-#define PCI_DEVICE_ID_HP_DIVA_EVEREST 0x1282
-#define PCI_DEVICE_ID_HP_DIVA_AUX 0x1290
-#define PCI_DEVICE_ID_HP_DIVA_RMP3 0x1301
-#define PCI_DEVICE_ID_HP_CISSA 0x3220
-#define PCI_DEVICE_ID_HP_CISSB 0x3230
-#define PCI_DEVICE_ID_HP_ZX2_IOC 0x4031
-
-#define PCI_VENDOR_ID_PCTECH 0x1042
-#define PCI_DEVICE_ID_PCTECH_RZ1000 0x1000
-#define PCI_DEVICE_ID_PCTECH_RZ1001 0x1001
-#define PCI_DEVICE_ID_PCTECH_SAMURAI_0 0x3000
-#define PCI_DEVICE_ID_PCTECH_SAMURAI_1 0x3010
-#define PCI_DEVICE_ID_PCTECH_SAMURAI_IDE 0x3020
-
-#define PCI_VENDOR_ID_ASUSTEK 0x1043
-#define PCI_DEVICE_ID_ASUSTEK_0675 0x0675
-
-#define PCI_VENDOR_ID_DPT 0x1044
-#define PCI_DEVICE_ID_DPT 0xa400
-
-#define PCI_VENDOR_ID_OPTI 0x1045
-#define PCI_DEVICE_ID_OPTI_92C178 0xc178
-#define PCI_DEVICE_ID_OPTI_82C557 0xc557
-#define PCI_DEVICE_ID_OPTI_82C558 0xc558
-#define PCI_DEVICE_ID_OPTI_82C621 0xc621
-#define PCI_DEVICE_ID_OPTI_82C700 0xc700
-#define PCI_DEVICE_ID_OPTI_82C701 0xc701
-#define PCI_DEVICE_ID_OPTI_82C814 0xc814
-#define PCI_DEVICE_ID_OPTI_82C822 0xc822
-#define PCI_DEVICE_ID_OPTI_82C861 0xc861
-#define PCI_DEVICE_ID_OPTI_82C825 0xd568
-
-#define PCI_VENDOR_ID_ELSA 0x1048
-#define PCI_DEVICE_ID_ELSA_MICROLINK 0x1000
-#define PCI_DEVICE_ID_ELSA_QS3000 0x3000
-
-#define PCI_VENDOR_ID_SGS 0x104a
-#define PCI_DEVICE_ID_SGS_2000 0x0008
-#define PCI_DEVICE_ID_SGS_1764 0x0009
-
-#define PCI_VENDOR_ID_BUSLOGIC 0x104B
-#define PCI_DEVICE_ID_BUSLOGIC_MULTIMASTER_NC 0x0140
-#define PCI_DEVICE_ID_BUSLOGIC_MULTIMASTER 0x1040
-#define PCI_DEVICE_ID_BUSLOGIC_FLASHPOINT 0x8130
-
-#define PCI_VENDOR_ID_TI 0x104c
-#define PCI_DEVICE_ID_TI_TVP4010 0x3d04
-#define PCI_DEVICE_ID_TI_TVP4020 0x3d07
-#define PCI_DEVICE_ID_TI_4450 0x8011
-#define PCI_DEVICE_ID_TI_1130 0xac12
-#define PCI_DEVICE_ID_TI_1031 0xac13
-#define PCI_DEVICE_ID_TI_1131 0xac15
-#define PCI_DEVICE_ID_TI_1250 0xac16
-#define PCI_DEVICE_ID_TI_1220 0xac17
-#define PCI_DEVICE_ID_TI_1221 0xac19
-#define PCI_DEVICE_ID_TI_1210 0xac1a
-#define PCI_DEVICE_ID_TI_1450 0xac1b
-#define PCI_DEVICE_ID_TI_1225 0xac1c
-#define PCI_DEVICE_ID_TI_1251A 0xac1d
-#define PCI_DEVICE_ID_TI_1211 0xac1e
-#define PCI_DEVICE_ID_TI_1251B 0xac1f
-#define PCI_DEVICE_ID_TI_4410 0xac41
-#define PCI_DEVICE_ID_TI_4451 0xac42
-#define PCI_DEVICE_ID_TI_4510 0xac44
-#define PCI_DEVICE_ID_TI_4520 0xac46
-#define PCI_DEVICE_ID_TI_1410 0xac50
-#define PCI_DEVICE_ID_TI_1420 0xac51
-#define PCI_DEVICE_ID_TI_1451A 0xac52
-#define PCI_DEVICE_ID_TI_1620 0xac54
-#define PCI_DEVICE_ID_TI_1520 0xac55
-#define PCI_DEVICE_ID_TI_1510 0xac56
-
-#define PCI_VENDOR_ID_SONY 0x104d
-#define PCI_DEVICE_ID_SONY_CXD3222 0x8039
-
-#define PCI_VENDOR_ID_OAK 0x104e
-#define PCI_DEVICE_ID_OAK_OTI107 0x0107
-
-/* Winbond have two vendor IDs! See 0x10ad as well */
-#define PCI_VENDOR_ID_WINBOND2 0x1050
-#define PCI_DEVICE_ID_WINBOND2_89C940 0x0940
-#define PCI_DEVICE_ID_WINBOND2_89C940F 0x5a5a
-#define PCI_DEVICE_ID_WINBOND2_6692 0x6692
-
-#define PCI_VENDOR_ID_ANIGMA 0x1051
-#define PCI_DEVICE_ID_ANIGMA_MC145575 0x0100
-
-#define PCI_VENDOR_ID_EFAR 0x1055
-#define PCI_DEVICE_ID_EFAR_SLC90E66_1 0x9130
-#define PCI_DEVICE_ID_EFAR_SLC90E66_0 0x9460
-#define PCI_DEVICE_ID_EFAR_SLC90E66_2 0x9462
-#define PCI_DEVICE_ID_EFAR_SLC90E66_3 0x9463
-
-#define PCI_VENDOR_ID_MOTOROLA 0x1057
-#define PCI_VENDOR_ID_MOTOROLA_OOPS 0x1507
-#define PCI_DEVICE_ID_MOTOROLA_MPC105 0x0001
-#define PCI_DEVICE_ID_MOTOROLA_MPC106 0x0002
-#define PCI_DEVICE_ID_MOTOROLA_MPC107 0x0004
-#define PCI_DEVICE_ID_MOTOROLA_RAVEN 0x4801
-#define PCI_DEVICE_ID_MOTOROLA_FALCON 0x4802
-#define PCI_DEVICE_ID_MOTOROLA_HAWK 0x4803
-#define PCI_DEVICE_ID_MOTOROLA_CPX8216 0x4806
-#define PCI_DEVICE_ID_MOTOROLA_HARRIER 0x480b
-#define PCI_DEVICE_ID_MOTOROLA_MPC5200 0x5803
-
-#define PCI_VENDOR_ID_PROMISE 0x105a
-#define PCI_DEVICE_ID_PROMISE_20265 0x0d30
-#define PCI_DEVICE_ID_PROMISE_20267 0x4d30
-#define PCI_DEVICE_ID_PROMISE_20246 0x4d33
-#define PCI_DEVICE_ID_PROMISE_20262 0x4d38
-#define PCI_DEVICE_ID_PROMISE_20263 0x0D38
-#define PCI_DEVICE_ID_PROMISE_20268 0x4d68
-#define PCI_DEVICE_ID_PROMISE_20268R 0x6268
-#define PCI_DEVICE_ID_PROMISE_20269 0x4d69
-#define PCI_DEVICE_ID_PROMISE_20270 0x6268
-#define PCI_DEVICE_ID_PROMISE_20271 0x6269
-#define PCI_DEVICE_ID_PROMISE_20275 0x1275
-#define PCI_DEVICE_ID_PROMISE_20276 0x5275
-#define PCI_DEVICE_ID_PROMISE_20277 0x7275
-#define PCI_DEVICE_ID_PROMISE_5300 0x5300
-
-#define PCI_VENDOR_ID_N9 0x105d
-#define PCI_DEVICE_ID_N9_I128 0x2309
-#define PCI_DEVICE_ID_N9_I128_2 0x2339
-#define PCI_DEVICE_ID_N9_I128_T2R 0x493d
-
-#define PCI_VENDOR_ID_UMC 0x1060
-#define PCI_DEVICE_ID_UMC_UM8673F 0x0101
-#define PCI_DEVICE_ID_UMC_UM8891A 0x0891
-#define PCI_DEVICE_ID_UMC_UM8886BF 0x673a
-#define PCI_DEVICE_ID_UMC_UM8886A 0x886a
-#define PCI_DEVICE_ID_UMC_UM8881F 0x8881
-#define PCI_DEVICE_ID_UMC_UM8886F 0x8886
-#define PCI_DEVICE_ID_UMC_UM9017F 0x9017
-#define PCI_DEVICE_ID_UMC_UM8886N 0xe886
-#define PCI_DEVICE_ID_UMC_UM8891N 0xe891
-
-#define PCI_VENDOR_ID_X 0x1061
-#define PCI_DEVICE_ID_X_AGX016 0x0001
-
-#define PCI_VENDOR_ID_MYLEX 0x1069
-#define PCI_DEVICE_ID_MYLEX_DAC960_P 0x0001
-#define PCI_DEVICE_ID_MYLEX_DAC960_PD 0x0002
-#define PCI_DEVICE_ID_MYLEX_DAC960_PG 0x0010
-#define PCI_DEVICE_ID_MYLEX_DAC960_LA 0x0020
-#define PCI_DEVICE_ID_MYLEX_DAC960_LP 0x0050
-#define PCI_DEVICE_ID_MYLEX_DAC960_BA 0xBA56
-#define PCI_DEVICE_ID_MYLEX_DAC960_GEM 0xB166
-
-#define PCI_VENDOR_ID_PICOP 0x1066
-#define PCI_DEVICE_ID_PICOP_PT86C52X 0x0001
-#define PCI_DEVICE_ID_PICOP_PT80C524 0x8002
-
-#define PCI_VENDOR_ID_APPLE 0x106b
-#define PCI_DEVICE_ID_APPLE_BANDIT 0x0001
-#define PCI_DEVICE_ID_APPLE_GC 0x0002
-#define PCI_DEVICE_ID_APPLE_HYDRA 0x000e
-#define PCI_DEVICE_ID_APPLE_UNI_N_FW 0x0018
-#define PCI_DEVICE_ID_APPLE_KL_USB 0x0019
-#define PCI_DEVICE_ID_APPLE_UNI_N_AGP 0x0020
-#define PCI_DEVICE_ID_APPLE_UNI_N_GMAC 0x0021
-#define PCI_DEVICE_ID_APPLE_KEYLARGO 0x0022
-#define PCI_DEVICE_ID_APPLE_UNI_N_GMACP 0x0024
-#define PCI_DEVICE_ID_APPLE_KEYLARGO_P 0x0025
-#define PCI_DEVICE_ID_APPLE_KL_USB_P 0x0026
-#define PCI_DEVICE_ID_APPLE_UNI_N_AGP_P 0x0027
-#define PCI_DEVICE_ID_APPLE_UNI_N_AGP15 0x002d
-#define PCI_DEVICE_ID_APPLE_UNI_N_PCI15 0x002e
-#define PCI_DEVICE_ID_APPLE_UNI_N_FW2 0x0030
-#define PCI_DEVICE_ID_APPLE_UNI_N_GMAC2 0x0032
-#define PCI_DEVIEC_ID_APPLE_UNI_N_ATA 0x0033
-#define PCI_DEVICE_ID_APPLE_UNI_N_AGP2 0x0034
-#define PCI_DEVICE_ID_APPLE_IPID_ATA100 0x003b
-#define PCI_DEVICE_ID_APPLE_KEYLARGO_I 0x003e
-#define PCI_DEVICE_ID_APPLE_K2_ATA100 0x0043
-#define PCI_DEVICE_ID_APPLE_U3_AGP 0x004b
-#define PCI_DEVICE_ID_APPLE_K2_GMAC 0x004c
-#define PCI_DEVICE_ID_APPLE_SH_ATA 0x0050
-#define PCI_DEVICE_ID_APPLE_SH_SUNGEM 0x0051
-#define PCI_DEVICE_ID_APPLE_SH_FW 0x0052
-#define PCI_DEVICE_ID_APPLE_U3L_AGP 0x0058
-#define PCI_DEVICE_ID_APPLE_U3H_AGP 0x0059
-#define PCI_DEVICE_ID_APPLE_TIGON3 0x1645
-
-#define PCI_VENDOR_ID_YAMAHA 0x1073
-#define PCI_DEVICE_ID_YAMAHA_724 0x0004
-#define PCI_DEVICE_ID_YAMAHA_724F 0x000d
-#define PCI_DEVICE_ID_YAMAHA_740 0x000a
-#define PCI_DEVICE_ID_YAMAHA_740C 0x000c
-#define PCI_DEVICE_ID_YAMAHA_744 0x0010
-#define PCI_DEVICE_ID_YAMAHA_754 0x0012
-
-#define PCI_VENDOR_ID_NEXGEN 0x1074
-#define PCI_DEVICE_ID_NEXGEN_82C501 0x4e78
-
-#define PCI_VENDOR_ID_QLOGIC 0x1077
-#define PCI_DEVICE_ID_QLOGIC_ISP1020 0x1020
-#define PCI_DEVICE_ID_QLOGIC_ISP1022 0x1022
-#define PCI_DEVICE_ID_QLOGIC_ISP2100 0x2100
-#define PCI_DEVICE_ID_QLOGIC_ISP2200 0x2200
-
-#define PCI_VENDOR_ID_CYRIX 0x1078
-#define PCI_DEVICE_ID_CYRIX_5510 0x0000
-#define PCI_DEVICE_ID_CYRIX_PCI_MASTER 0x0001
-#define PCI_DEVICE_ID_CYRIX_5520 0x0002
-#define PCI_DEVICE_ID_CYRIX_5530_LEGACY 0x0100
-#define PCI_DEVICE_ID_CYRIX_5530_SMI 0x0101
-#define PCI_DEVICE_ID_CYRIX_5530_IDE 0x0102
-#define PCI_DEVICE_ID_CYRIX_5530_AUDIO 0x0103
-#define PCI_DEVICE_ID_CYRIX_5530_VIDEO 0x0104
-
-#define PCI_VENDOR_ID_LEADTEK 0x107d
-#define PCI_DEVICE_ID_LEADTEK_805 0x0000
-
-#define PCI_VENDOR_ID_INTERPHASE 0x107e
-#define PCI_DEVICE_ID_INTERPHASE_5526 0x0004
-#define PCI_DEVICE_ID_INTERPHASE_55x6 0x0005
-#define PCI_DEVICE_ID_INTERPHASE_5575 0x0008
-
-#define PCI_VENDOR_ID_CONTAQ 0x1080
-#define PCI_DEVICE_ID_CONTAQ_82C599 0x0600
-#define PCI_DEVICE_ID_CONTAQ_82C693 0xc693
-
-#define PCI_VENDOR_ID_FOREX 0x1083
-
-#define PCI_VENDOR_ID_OLICOM 0x108d
-#define PCI_DEVICE_ID_OLICOM_OC3136 0x0001
-#define PCI_DEVICE_ID_OLICOM_OC2315 0x0011
-#define PCI_DEVICE_ID_OLICOM_OC2325 0x0012
-#define PCI_DEVICE_ID_OLICOM_OC2183 0x0013
-#define PCI_DEVICE_ID_OLICOM_OC2326 0x0014
-#define PCI_DEVICE_ID_OLICOM_OC6151 0x0021
-
-#define PCI_VENDOR_ID_SUN 0x108e
-#define PCI_DEVICE_ID_SUN_EBUS 0x1000
-#define PCI_DEVICE_ID_SUN_HAPPYMEAL 0x1001
-#define PCI_DEVICE_ID_SUN_RIO_EBUS 0x1100
-#define PCI_DEVICE_ID_SUN_RIO_GEM 0x1101
-#define PCI_DEVICE_ID_SUN_RIO_1394 0x1102
-#define PCI_DEVICE_ID_SUN_RIO_USB 0x1103
-#define PCI_DEVICE_ID_SUN_GEM 0x2bad
-#define PCI_DEVICE_ID_SUN_SIMBA 0x5000
-#define PCI_DEVICE_ID_SUN_PBM 0x8000
-#define PCI_DEVICE_ID_SUN_SCHIZO 0x8001
-#define PCI_DEVICE_ID_SUN_SABRE 0xa000
-#define PCI_DEVICE_ID_SUN_HUMMINGBIRD 0xa001
-#define PCI_DEVICE_ID_SUN_TOMATILLO 0xa801
-
-#define PCI_VENDOR_ID_CMD 0x1095
-#define PCI_DEVICE_ID_CMD_640 0x0640
-#define PCI_DEVICE_ID_CMD_643 0x0643
-#define PCI_DEVICE_ID_CMD_646 0x0646
-#define PCI_DEVICE_ID_CMD_647 0x0647
-#define PCI_DEVICE_ID_CMD_648 0x0648
-#define PCI_DEVICE_ID_CMD_649 0x0649
-#define PCI_DEVICE_ID_CMD_670 0x0670
-#define PCI_DEVICE_ID_CMD_680 0x0680
-
-#define PCI_DEVICE_ID_SII_680 0x0680
-#define PCI_DEVICE_ID_SII_3112 0x3112
-#define PCI_DEVICE_ID_SII_1210SA 0x0240
-
-#define PCI_VENDOR_ID_VISION 0x1098
-#define PCI_DEVICE_ID_VISION_QD8500 0x0001
-#define PCI_DEVICE_ID_VISION_QD8580 0x0002
-
-#define PCI_VENDOR_ID_BROOKTREE 0x109e
-#define PCI_DEVICE_ID_BROOKTREE_848 0x0350
-#define PCI_DEVICE_ID_BROOKTREE_849A 0x0351
-#define PCI_DEVICE_ID_BROOKTREE_878_1 0x036e
-#define PCI_DEVICE_ID_BROOKTREE_878 0x0878
-#define PCI_DEVICE_ID_BROOKTREE_8474 0x8474
-
-#define PCI_VENDOR_ID_SIERRA 0x10a8
-#define PCI_DEVICE_ID_SIERRA_STB 0x0000
-
-#define PCI_VENDOR_ID_SGI 0x10a9
-#define PCI_DEVICE_ID_SGI_IOC3 0x0003
-#define PCI_DEVICE_ID_SGI_IOC4 0x100a
-#define PCI_VENDOR_ID_SGI_LITHIUM 0x1002
-
-#define PCI_VENDOR_ID_ACC 0x10aa
-#define PCI_DEVICE_ID_ACC_2056 0x0000
-
-#define PCI_VENDOR_ID_WINBOND 0x10ad
-#define PCI_DEVICE_ID_WINBOND_83769 0x0001
-#define PCI_DEVICE_ID_WINBOND_82C105 0x0105
-#define PCI_DEVICE_ID_WINBOND_83C553 0x0565
-
-#define PCI_VENDOR_ID_DATABOOK 0x10b3
-#define PCI_DEVICE_ID_DATABOOK_87144 0xb106
-
-#define PCI_VENDOR_ID_PLX 0x10b5
-#define PCI_DEVICE_ID_PLX_R685 0x1030
-#define PCI_DEVICE_ID_PLX_ROMULUS 0x106a
-#define PCI_DEVICE_ID_PLX_SPCOM800 0x1076
-#define PCI_DEVICE_ID_PLX_1077 0x1077
-#define PCI_DEVICE_ID_PLX_SPCOM200 0x1103
-#define PCI_DEVICE_ID_PLX_DJINN_ITOO 0x1151
-#define PCI_DEVICE_ID_PLX_R753 0x1152
-#define PCI_DEVICE_ID_PLX_9030 0x9030
-#define PCI_DEVICE_ID_PLX_9050 0x9050
-#define PCI_DEVICE_ID_PLX_9060 0x9060
-#define PCI_DEVICE_ID_PLX_9060ES 0x906E
-#define PCI_DEVICE_ID_PLX_9060SD 0x906D
-#define PCI_DEVICE_ID_PLX_9080 0x9080
-#define PCI_DEVICE_ID_PLX_GTEK_SERIAL2 0xa001
-
-#define PCI_VENDOR_ID_MADGE 0x10b6
-#define PCI_DEVICE_ID_MADGE_MK2 0x0002
-#define PCI_DEVICE_ID_MADGE_C155S 0x1001
-
-#define PCI_VENDOR_ID_3COM 0x10b7
-#define PCI_DEVICE_ID_3COM_3C985 0x0001
-#define PCI_DEVICE_ID_3COM_3C940 0x1700
-#define PCI_DEVICE_ID_3COM_3C339 0x3390
-#define PCI_DEVICE_ID_3COM_3C359 0x3590
-#define PCI_DEVICE_ID_3COM_3C590 0x5900
-#define PCI_DEVICE_ID_3COM_3C595TX 0x5950
-#define PCI_DEVICE_ID_3COM_3C595T4 0x5951
-#define PCI_DEVICE_ID_3COM_3C595MII 0x5952
-#define PCI_DEVICE_ID_3COM_3C940B 0x80eb
-#define PCI_DEVICE_ID_3COM_3C900TPO 0x9000
-#define PCI_DEVICE_ID_3COM_3C900COMBO 0x9001
-#define PCI_DEVICE_ID_3COM_3C905TX 0x9050
-#define PCI_DEVICE_ID_3COM_3C905T4 0x9051
-#define PCI_DEVICE_ID_3COM_3C905B_TX 0x9055
-#define PCI_DEVICE_ID_3COM_3CR990 0x9900
-#define PCI_DEVICE_ID_3COM_3CR990_TX_95 0x9902
-#define PCI_DEVICE_ID_3COM_3CR990_TX_97 0x9903
-#define PCI_DEVICE_ID_3COM_3CR990B 0x9904
-#define PCI_DEVICE_ID_3COM_3CR990_FX 0x9905
-#define PCI_DEVICE_ID_3COM_3CR990SVR95 0x9908
-#define PCI_DEVICE_ID_3COM_3CR990SVR97 0x9909
-#define PCI_DEVICE_ID_3COM_3CR990SVR 0x990a
-
-#define PCI_VENDOR_ID_SMC 0x10b8
-#define PCI_DEVICE_ID_SMC_EPIC100 0x0005
-
-#define PCI_VENDOR_ID_AL 0x10b9
-#define PCI_DEVICE_ID_AL_M1445 0x1445
-#define PCI_DEVICE_ID_AL_M1449 0x1449
-#define PCI_DEVICE_ID_AL_M1451 0x1451
-#define PCI_DEVICE_ID_AL_M1461 0x1461
-#define PCI_DEVICE_ID_AL_M1489 0x1489
-#define PCI_DEVICE_ID_AL_M1511 0x1511
-#define PCI_DEVICE_ID_AL_M1513 0x1513
-#define PCI_DEVICE_ID_AL_M1521 0x1521
-#define PCI_DEVICE_ID_AL_M1523 0x1523
-#define PCI_DEVICE_ID_AL_M1531 0x1531
-#define PCI_DEVICE_ID_AL_M1533 0x1533
-#define PCI_DEVICE_ID_AL_M1535 0x1535
-#define PCI_DEVICE_ID_AL_M1541 0x1541
-#define PCI_DEVICE_ID_AL_M1543 0x1543
-#define PCI_DEVICE_ID_AL_M1563 0x1563
-#define PCI_DEVICE_ID_AL_M1621 0x1621
-#define PCI_DEVICE_ID_AL_M1631 0x1631
-#define PCI_DEVICE_ID_AL_M1632 0x1632
-#define PCI_DEVICE_ID_AL_M1641 0x1641
-#define PCI_DEVICE_ID_AL_M1644 0x1644
-#define PCI_DEVICE_ID_AL_M1647 0x1647
-#define PCI_DEVICE_ID_AL_M1651 0x1651
-#define PCI_DEVICE_ID_AL_M1671 0x1671
-#define PCI_DEVICE_ID_AL_M1681 0x1681
-#define PCI_DEVICE_ID_AL_M1683 0x1683
-#define PCI_DEVICE_ID_AL_M1689 0x1689
-#define PCI_DEVICE_ID_AL_M3307 0x3307
-#define PCI_DEVICE_ID_AL_M4803 0x5215
-#define PCI_DEVICE_ID_AL_M5219 0x5219
-#define PCI_DEVICE_ID_AL_M5228 0x5228
-#define PCI_DEVICE_ID_AL_M5229 0x5229
-#define PCI_DEVICE_ID_AL_M5237 0x5237
-#define PCI_DEVICE_ID_AL_M5243 0x5243
-#define PCI_DEVICE_ID_AL_M5451 0x5451
-#define PCI_DEVICE_ID_AL_M7101 0x7101
-
-#define PCI_VENDOR_ID_MITSUBISHI 0x10ba
-
-#define PCI_VENDOR_ID_SURECOM 0x10bd
-#define PCI_DEVICE_ID_SURECOM_NE34 0x0e34
-
-#define PCI_VENDOR_ID_NEOMAGIC 0x10c8
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICGRAPH_NM2070 0x0001
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICGRAPH_128V 0x0002
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICGRAPH_128ZV 0x0003
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICGRAPH_NM2160 0x0004
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICMEDIA_256AV 0x0005
-#define PCI_DEVICE_ID_NEOMAGIC_MAGICGRAPH_128ZVPLUS 0x0083
-
-#define PCI_VENDOR_ID_ASP 0x10cd
-#define PCI_DEVICE_ID_ASP_ABP940 0x1200
-#define PCI_DEVICE_ID_ASP_ABP940U 0x1300
-#define PCI_DEVICE_ID_ASP_ABP940UW 0x2300
-
-#define PCI_VENDOR_ID_MACRONIX 0x10d9
-#define PCI_DEVICE_ID_MACRONIX_MX98713 0x0512
-#define PCI_DEVICE_ID_MACRONIX_MX987x5 0x0531
-
-#define PCI_VENDOR_ID_TCONRAD 0x10da
-#define PCI_DEVICE_ID_TCONRAD_TOKENRING 0x0508
-
-#define PCI_VENDOR_ID_CERN 0x10dc
-#define PCI_DEVICE_ID_CERN_SPSB_PMC 0x0001
-#define PCI_DEVICE_ID_CERN_SPSB_PCI 0x0002
-#define PCI_DEVICE_ID_CERN_HIPPI_DST 0x0021
-#define PCI_DEVICE_ID_CERN_HIPPI_SRC 0x0022
-
-#define PCI_VENDOR_ID_NVIDIA 0x10de
-#define PCI_DEVICE_ID_NVIDIA_TNT 0x0020
-#define PCI_DEVICE_ID_NVIDIA_TNT2 0x0028
-#define PCI_DEVICE_ID_NVIDIA_UTNT2 0x0029
-#define PCI_DEVICE_ID_NVIDIA_TNT_UNKNOWN 0x002a
-#define PCI_DEVICE_ID_NVIDIA_VTNT2 0x002C
-#define PCI_DEVICE_ID_NVIDIA_UVTNT2 0x002D
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_IDE 0x0035
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SATA 0x0036
-#define PCI_DEVICE_ID_NVIDIA_NVENET_10 0x0037
-#define PCI_DEVICE_ID_NVIDIA_NVENET_11 0x0038
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP04_SATA2 0x003e
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800_ULTRA 0x0040
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800 0x0041
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800_LE 0x0042
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800_GT 0x0045
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_4000 0x004E
-#define PCI_DEVICE_ID_NVIDIA_NFORCE4_SMBUS 0x0052
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_CK804_IDE 0x0053
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_CK804_SATA 0x0054
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_CK804_SATA2 0x0055
-#define PCI_DEVICE_ID_NVIDIA_NVENET_8 0x0056
-#define PCI_DEVICE_ID_NVIDIA_NVENET_9 0x0057
-#define PCI_DEVICE_ID_NVIDIA_CK804_AUDIO 0x0059
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2_SMBUS 0x0064
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2_IDE 0x0065
-#define PCI_DEVICE_ID_NVIDIA_NVENET_2 0x0066
-#define PCI_DEVICE_ID_NVIDIA_MCP2_AUDIO 0x006a
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2S_SMBUS 0x0084
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2S_IDE 0x0085
-#define PCI_DEVICE_ID_NVIDIA_NVENET_4 0x0086
-#define PCI_DEVICE_ID_NVIDIA_NVENET_5 0x008c
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2S_SATA 0x008e
-#define PCI_DEVICE_ID_NVIDIA_ITNT2 0x00A0
-#define PCI_DEVICE_ID_GEFORCE_6800A 0x00c1
-#define PCI_DEVICE_ID_GEFORCE_6800A_LE 0x00c2
-#define PCI_DEVICE_ID_GEFORCE_GO_6800 0x00c8
-#define PCI_DEVICE_ID_GEFORCE_GO_6800_ULTRA 0x00c9
-#define PCI_DEVICE_ID_QUADRO_FX_GO1400 0x00cc
-#define PCI_DEVICE_ID_QUADRO_FX_1400 0x00ce
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3 0x00d1
-#define PCI_DEVICE_ID_NVIDIA_MCP3_AUDIO 0x00da
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3_SMBUS 0x00d4
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3_IDE 0x00d5
-#define PCI_DEVICE_ID_NVIDIA_NVENET_3 0x00d6
-#define PCI_DEVICE_ID_NVIDIA_MCP3_AUDIO 0x00da
-#define PCI_DEVICE_ID_NVIDIA_NVENET_7 0x00df
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3S 0x00e1
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3S_SATA 0x00e3
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3S_SMBUS 0x00e4
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3S_IDE 0x00e5
-#define PCI_DEVICE_ID_NVIDIA_NVENET_6 0x00e6
-#define PCI_DEVICE_ID_NVIDIA_NFORCE3S_SATA2 0x00ee
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_SDR 0x0100
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_DDR 0x0101
-#define PCI_DEVICE_ID_NVIDIA_QUADRO 0x0103
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_MX 0x0110
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_MX2 0x0111
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_GO 0x0112
-#define PCI_DEVICE_ID_NVIDIA_QUADRO2_MXR 0x0113
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6600_GT 0x0140
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6600 0x0141
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6610_XL 0x0145
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_540 0x014E
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6200 0x014F
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_GTS 0x0150
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_GTS2 0x0151
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE2_ULTRA 0x0152
-#define PCI_DEVICE_ID_NVIDIA_QUADRO2_PRO 0x0153
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6200_TURBOCACHE 0x0161
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_GO_6200 0x0164
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_GO_6250 0x0166
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_GO_6200_1 0x0167
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_GO_6250_1 0x0168
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_460 0x0170
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_440 0x0171
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_420 0x0172
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_440_SE 0x0173
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_440_GO 0x0174
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_420_GO 0x0175
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_420_GO_M32 0x0176
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_460_GO 0x0177
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_500XGL 0x0178
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_440_GO_M64 0x0179
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_200 0x017A
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_550XGL 0x017B
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_500_GOGL 0x017C
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_410_GO_M16 0x017D
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_440_8X 0x0181
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_440SE_8X 0x0182
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_420_8X 0x0183
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_448_GO 0x0186
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_488_GO 0x0187
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_580_XGL 0x0188
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_MX_MAC 0x0189
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_280_NVS 0x018A
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_380_XGL 0x018B
-#define PCI_DEVICE_ID_NVIDIA_IGEFORCE2 0x01a0
-#define PCI_DEVICE_ID_NVIDIA_NFORCE 0x01a4
-#define PCI_DEVICE_ID_NVIDIA_MCP1_AUDIO 0x01b1
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_SMBUS 0x01b4
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_IDE 0x01bc
-#define PCI_DEVICE_ID_NVIDIA_NVENET_1 0x01c3
-#define PCI_DEVICE_ID_NVIDIA_NFORCE2 0x01e0
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE3 0x0200
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE3_1 0x0201
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE3_2 0x0202
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_DDC 0x0203
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800B 0x0211
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800B_LE 0x0212
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_6800B_GT 0x0215
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4600 0x0250
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4400 0x0251
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4200 0x0253
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_900XGL 0x0258
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_750XGL 0x0259
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_700XGL 0x025B
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_IDE 0x0265
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA 0x0266
-#define PCI_DEVICE_ID_NVIDIA_NFORCE_MCP51_SATA2 0x0267
-#define PCI_DEVICE_ID_NVIDIA_NVENET_12 0x0268
-#define PCI_DEVICE_ID_NVIDIA_NVENET_13 0x0269
-#define PCI_DEVICE_ID_NVIDIA_MCP51_AUDIO 0x026B
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4800 0x0280
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4800_8X 0x0281
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_TI_4800SE 0x0282
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE4_4200_GO 0x0286
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_980_XGL 0x0288
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_780_XGL 0x0289
-#define PCI_DEVICE_ID_NVIDIA_QUADRO4_700_GOGL 0x028C
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5800_ULTRA 0x0301
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5800 0x0302
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_2000 0x0308
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_1000 0x0309
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5600_ULTRA 0x0311
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5600 0x0312
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5600SE 0x0314
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5600 0x031A
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5650 0x031B
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_GO700 0x031C
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5200 0x0320
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5200_ULTRA 0x0321
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5200_1 0x0322
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5200SE 0x0323
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5200 0x0324
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5250 0x0325
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5500 0x0326
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5100 0x0327
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5250_32 0x0328
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO_5200 0x0329
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_NVS_280_PCI 0x032A
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_500 0x032B
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5300 0x032C
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5100 0x032D
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5900_ULTRA 0x0330
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5900 0x0331
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5900XT 0x0332
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5950_ULTRA 0x0333
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5900ZT 0x0334
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_3000 0x0338
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_700 0x033F
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5700_ULTRA 0x0341
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5700 0x0342
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5700LE 0x0343
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_5700VE 0x0344
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5700_1 0x0347
-#define PCI_DEVICE_ID_NVIDIA_GEFORCE_FX_GO5700_2 0x0348
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_GO1000 0x034C
-#define PCI_DEVICE_ID_NVIDIA_QUADRO_FX_1100 0x034E
-
-#define PCI_VENDOR_ID_IMS 0x10e0
-#define PCI_DEVICE_ID_IMS_8849 0x8849
-#define PCI_DEVICE_ID_IMS_TT128 0x9128
-#define PCI_DEVICE_ID_IMS_TT3D 0x9135
-
-#define PCI_VENDOR_ID_TEKRAM2 0x10e1
-#define PCI_DEVICE_ID_TEKRAM2_690c 0x690c
-
-#define PCI_VENDOR_ID_TUNDRA 0x10e3
-#define PCI_DEVICE_ID_TUNDRA_CA91C042 0x0000
-
-#define PCI_VENDOR_ID_AMCC 0x10e8
-#define PCI_DEVICE_ID_AMCC_MYRINET 0x8043
-#define PCI_DEVICE_ID_AMCC_PARASTATION 0x8062
-#define PCI_DEVICE_ID_AMCC_S5933 0x807d
-#define PCI_DEVICE_ID_AMCC_S5933_HEPC3 0x809c
-
-#define PCI_VENDOR_ID_INTERG 0x10ea
-#define PCI_DEVICE_ID_INTERG_1680 0x1680
-#define PCI_DEVICE_ID_INTERG_1682 0x1682
-#define PCI_DEVICE_ID_INTERG_2000 0x2000
-#define PCI_DEVICE_ID_INTERG_2010 0x2010
-#define PCI_DEVICE_ID_INTERG_5000 0x5000
-#define PCI_DEVICE_ID_INTERG_5050 0x5050
-
-#define PCI_VENDOR_ID_REALTEK 0x10ec
-#define PCI_DEVICE_ID_REALTEK_8029 0x8029
-#define PCI_DEVICE_ID_REALTEK_8129 0x8129
-#define PCI_DEVICE_ID_REALTEK_8139 0x8139
-#define PCI_DEVICE_ID_REALTEK_8169 0x8169
-
-#define PCI_VENDOR_ID_XILINX 0x10ee
-#define PCI_DEVICE_ID_TURBOPAM 0x4020
-
-#define PCI_VENDOR_ID_TRUEVISION 0x10fa
-#define PCI_DEVICE_ID_TRUEVISION_T1000 0x000c
-
-#define PCI_VENDOR_ID_INIT 0x1101
-#define PCI_DEVICE_ID_INIT_320P 0x9100
-#define PCI_DEVICE_ID_INIT_360P 0x9500
-
-#define PCI_VENDOR_ID_CREATIVE 0x1102 // duplicate: ECTIVA
-#define PCI_DEVICE_ID_CREATIVE_EMU10K1 0x0002
-
-#define PCI_VENDOR_ID_ECTIVA 0x1102 // duplicate: CREATIVE
-#define PCI_DEVICE_ID_ECTIVA_EV1938 0x8938
-
-#define PCI_VENDOR_ID_TTI 0x1103
-#define PCI_DEVICE_ID_TTI_HPT343 0x0003
-#define PCI_DEVICE_ID_TTI_HPT366 0x0004
-#define PCI_DEVICE_ID_TTI_HPT372 0x0005
-#define PCI_DEVICE_ID_TTI_HPT302 0x0006
-#define PCI_DEVICE_ID_TTI_HPT371 0x0007
-#define PCI_DEVICE_ID_TTI_HPT374 0x0008
-#define PCI_DEVICE_ID_TTI_HPT372N 0x0009 // apparently a 372N variant?
-
-#define PCI_VENDOR_ID_VIA 0x1106
-#define PCI_DEVICE_ID_VIA_8763_0 0x0198
-#define PCI_DEVICE_ID_VIA_8380_0 0x0204
-#define PCI_DEVICE_ID_VIA_3238_0 0x0238
-#define PCI_DEVICE_ID_VIA_PT880 0x0258
-#define PCI_DEVICE_ID_VIA_PX8X0_0 0x0259
-#define PCI_DEVICE_ID_VIA_3269_0 0x0269
-#define PCI_DEVICE_ID_VIA_K8T800PRO_0 0x0282
-#define PCI_DEVICE_ID_VIA_8363_0 0x0305
-#define PCI_DEVICE_ID_VIA_8371_0 0x0391
-#define PCI_DEVICE_ID_VIA_8501_0 0x0501
-#define PCI_DEVICE_ID_VIA_82C505 0x0505
-#define PCI_DEVICE_ID_VIA_82C561 0x0561
-#define PCI_DEVICE_ID_VIA_82C586_1 0x0571
-#define PCI_DEVICE_ID_VIA_82C576 0x0576
-#define PCI_DEVICE_ID_VIA_82C585 0x0585
-#define PCI_DEVICE_ID_VIA_82C586_0 0x0586
-#define PCI_DEVICE_ID_VIA_82C595 0x0595
-#define PCI_DEVICE_ID_VIA_82C596 0x0596
-#define PCI_DEVICE_ID_VIA_82C597_0 0x0597
-#define PCI_DEVICE_ID_VIA_82C598_0 0x0598
-#define PCI_DEVICE_ID_VIA_8601_0 0x0601
-#define PCI_DEVICE_ID_VIA_8605_0 0x0605
-#define PCI_DEVICE_ID_VIA_82C680 0x0680
-#define PCI_DEVICE_ID_VIA_82C686 0x0686
-#define PCI_DEVICE_ID_VIA_82C691_0 0x0691
-#define PCI_DEVICE_ID_VIA_82C693 0x0693
-#define PCI_DEVICE_ID_VIA_82C693_1 0x0698
-#define PCI_DEVICE_ID_VIA_82C926 0x0926
-#define PCI_DEVICE_ID_VIA_82C576_1 0x1571
-#define PCI_DEVICE_ID_VIA_82C595_97 0x1595
-#define PCI_DEVICE_ID_VIA_82C586_2 0x3038
-#define PCI_DEVICE_ID_VIA_82C586_3 0x3040
-#define PCI_DEVICE_ID_VIA_6305 0x3044
-#define PCI_DEVICE_ID_VIA_82C596_3 0x3050
-#define PCI_DEVICE_ID_VIA_82C596B_3 0x3051
-#define PCI_DEVICE_ID_VIA_82C686_4 0x3057
-#define PCI_DEVICE_ID_VIA_82C686_5 0x3058
-#define PCI_DEVICE_ID_VIA_8233_5 0x3059
-#define PCI_DEVICE_ID_VIA_8233_7 0x3065
-#define PCI_DEVICE_ID_VIA_82C686_6 0x3068
-#define PCI_DEVICE_ID_VIA_8233_0 0x3074
-#define PCI_DEVICE_ID_VIA_8633_0 0x3091
-#define PCI_DEVICE_ID_VIA_8367_0 0x3099
-#define PCI_DEVICE_ID_VIA_8653_0 0x3101
-#define PCI_DEVICE_ID_VIA_8622 0x3102
-#define PCI_DEVICE_ID_VIA_8233C_0 0x3109
-#define PCI_DEVICE_ID_VIA_8361 0x3112
-#define PCI_DEVICE_ID_VIA_XM266 0x3116
-#define PCI_DEVICE_ID_VIA_612X 0x3119
-#define PCI_DEVICE_ID_VIA_862X_0 0x3123
-#define PCI_DEVICE_ID_VIA_8753_0 0x3128
-#define PCI_DEVICE_ID_VIA_8233A 0x3147
-#define PCI_DEVICE_ID_VIA_8703_51_0 0x3148
-#define PCI_DEVICE_ID_VIA_8237_SATA 0x3149
-#define PCI_DEVICE_ID_VIA_XN266 0x3156
-#define PCI_DEVICE_ID_VIA_8754C_0 0x3168
-#define PCI_DEVICE_ID_VIA_8235 0x3177
-#define PCI_DEVICE_ID_VIA_P4N333 0x3178
-#define PCI_DEVICE_ID_VIA_8385_0 0x3188
-#define PCI_DEVICE_ID_VIA_8377_0 0x3189
-#define PCI_DEVICE_ID_VIA_8378_0 0x3205
-#define PCI_DEVICE_ID_VIA_8783_0 0x3208
-#define PCI_DEVICE_ID_VIA_P4M400 0x3209
-#define PCI_DEVICE_ID_VIA_8237 0x3227
-#define PCI_DEVICE_ID_VIA_3296_0 0x0296
-#define PCI_DEVICE_ID_VIA_86C100A 0x6100
-#define PCI_DEVICE_ID_VIA_8231 0x8231
-#define PCI_DEVICE_ID_VIA_8231_4 0x8235
-#define PCI_DEVICE_ID_VIA_8365_1 0x8305
-#define PCI_DEVICE_ID_VIA_8371_1 0x8391
-#define PCI_DEVICE_ID_VIA_8501_1 0x8501
-#define PCI_DEVICE_ID_VIA_82C597_1 0x8597
-#define PCI_DEVICE_ID_VIA_82C598_1 0x8598
-#define PCI_DEVICE_ID_VIA_8601_1 0x8601
-#define PCI_DEVICE_ID_VIA_8505_1 0x8605
-#define PCI_DEVICE_ID_VIA_8633_1 0xB091
-#define PCI_DEVICE_ID_VIA_8367_1 0xB099
-#define PCI_DEVICE_ID_VIA_P4X266_1 0xB101
-#define PCI_DEVICE_ID_VIA_8615_1 0xB103
-#define PCI_DEVICE_ID_VIA_8361_1 0xB112
-#define PCI_DEVICE_ID_VIA_8235_1 0xB168
-#define PCI_DEVICE_ID_VIA_838X_1 0xB188
-#define PCI_DEVICE_ID_VIA_83_87XX_1 0xB198
-
-#define PCI_VENDOR_ID_SIEMENS 0x110A
-#define PCI_DEVICE_ID_SIEMENS_DSCC4 0x2102
-
-#define PCI_VENDOR_ID_SMC2 0x1113
-#define PCI_DEVICE_ID_SMC2_1211TX 0x1211
-
-#define PCI_VENDOR_ID_VORTEX 0x1119
-#define PCI_DEVICE_ID_VORTEX_GDT60x0 0x0000
-#define PCI_DEVICE_ID_VORTEX_GDT6000B 0x0001
-#define PCI_DEVICE_ID_VORTEX_GDT6x10 0x0002
-#define PCI_DEVICE_ID_VORTEX_GDT6x20 0x0003
-#define PCI_DEVICE_ID_VORTEX_GDT6530 0x0004
-#define PCI_DEVICE_ID_VORTEX_GDT6550 0x0005
-#define PCI_DEVICE_ID_VORTEX_GDT6x17 0x0006
-#define PCI_DEVICE_ID_VORTEX_GDT6x27 0x0007
-#define PCI_DEVICE_ID_VORTEX_GDT6537 0x0008
-#define PCI_DEVICE_ID_VORTEX_GDT6557 0x0009
-#define PCI_DEVICE_ID_VORTEX_GDT6x15 0x000a
-#define PCI_DEVICE_ID_VORTEX_GDT6x25 0x000b
-#define PCI_DEVICE_ID_VORTEX_GDT6535 0x000c
-#define PCI_DEVICE_ID_VORTEX_GDT6555 0x000d
-#define PCI_DEVICE_ID_VORTEX_GDT6x17RP 0x0100
-#define PCI_DEVICE_ID_VORTEX_GDT6x27RP 0x0101
-#define PCI_DEVICE_ID_VORTEX_GDT6537RP 0x0102
-#define PCI_DEVICE_ID_VORTEX_GDT6557RP 0x0103
-#define PCI_DEVICE_ID_VORTEX_GDT6x11RP 0x0104
-#define PCI_DEVICE_ID_VORTEX_GDT6x21RP 0x0105
-#define PCI_DEVICE_ID_VORTEX_GDT6x17RP1 0x0110
-#define PCI_DEVICE_ID_VORTEX_GDT6x27RP1 0x0111
-#define PCI_DEVICE_ID_VORTEX_GDT6537RP1 0x0112
-#define PCI_DEVICE_ID_VORTEX_GDT6557RP1 0x0113
-#define PCI_DEVICE_ID_VORTEX_GDT6x11RP1 0x0114
-#define PCI_DEVICE_ID_VORTEX_GDT6x21RP1 0x0115
-#define PCI_DEVICE_ID_VORTEX_GDT6x17RP2 0x0120
-#define PCI_DEVICE_ID_VORTEX_GDT6x27RP2 0x0121
-#define PCI_DEVICE_ID_VORTEX_GDT6537RP2 0x0122
-#define PCI_DEVICE_ID_VORTEX_GDT6557RP2 0x0123
-#define PCI_DEVICE_ID_VORTEX_GDT6x11RP2 0x0124
-#define PCI_DEVICE_ID_VORTEX_GDT6x21RP2 0x0125
-
-#define PCI_VENDOR_ID_EF 0x111a
-#define PCI_DEVICE_ID_EF_ATM_FPGA 0x0000
-#define PCI_DEVICE_ID_EF_ATM_ASIC 0x0002
-#define PCI_VENDOR_ID_EF_ATM_LANAI2 0x0003
-#define PCI_VENDOR_ID_EF_ATM_LANAIHB 0x0005
-
-#define PCI_VENDOR_ID_IDT 0x111d
-#define PCI_DEVICE_ID_IDT_IDT77201 0x0001
-
-#define PCI_VENDOR_ID_FORE 0x1127
-#define PCI_DEVICE_ID_FORE_PCA200PC 0x0210
-#define PCI_DEVICE_ID_FORE_PCA200E 0x0300
-
-#define PCI_VENDOR_ID_IMAGINGTECH 0x112f
-#define PCI_DEVICE_ID_IMAGINGTECH_ICPCI 0x0000
-
-#define PCI_VENDOR_ID_PHILIPS 0x1131
-#define PCI_DEVICE_ID_PHILIPS_ISP1561 0x1561
-#define PCI_DEVICE_ID_PHILIPS_ISP1561_2 0x1562
-#define PCI_DEVICE_ID_PHILIPS_SAA7145 0x7145
-#define PCI_DEVICE_ID_PHILIPS_SAA7146 0x7146
-#define PCI_DEVICE_ID_PHILIPS_SAA9730 0x9730
-
-#define PCI_VENDOR_ID_EICON 0x1133
-#define PCI_DEVICE_ID_EICON_DIVA20PRO 0xe001
-#define PCI_DEVICE_ID_EICON_DIVA20 0xe002
-#define PCI_DEVICE_ID_EICON_DIVA20PRO_U 0xe003
-#define PCI_DEVICE_ID_EICON_DIVA20_U 0xe004
-#define PCI_DEVICE_ID_EICON_DIVA201 0xe005
-#define PCI_DEVICE_ID_EICON_DIVA202 0xe00b
-#define PCI_DEVICE_ID_EICON_MAESTRA 0xe010
-#define PCI_DEVICE_ID_EICON_MAESTRAQ 0xe012
-#define PCI_DEVICE_ID_EICON_MAESTRAQ_U 0xe013
-#define PCI_DEVICE_ID_EICON_MAESTRAP 0xe014
-
-#define PCI_VENDOR_ID_ZIATECH 0x1138
-#define PCI_DEVICE_ID_ZIATECH_5550_HC 0x5550
-
-#define PCI_VENDOR_ID_CYCLONE 0x113c
-#define PCI_DEVICE_ID_CYCLONE_SDK 0x0001
-
-#define PCI_VENDOR_ID_ALLIANCE 0x1142
-#define PCI_DEVICE_ID_ALLIANCE_PROMOTIO 0x3210
-#define PCI_DEVICE_ID_ALLIANCE_PROVIDEO 0x6422
-#define PCI_DEVICE_ID_ALLIANCE_AT24 0x6424
-#define PCI_DEVICE_ID_ALLIANCE_AT3D 0x643d
-
-#define PCI_VENDOR_ID_SYSKONNECT 0x1148
-#define PCI_DEVICE_ID_SYSKONNECT_FP 0x4000
-#define PCI_DEVICE_ID_SYSKONNECT_TR 0x4200
-#define PCI_DEVICE_ID_SYSKONNECT_GE 0x4300
-#define PCI_DEVICE_ID_SYSKONNECT_YU 0x4320
-#define PCI_DEVICE_ID_SYSKONNECT_9DXX 0x4400
-#define PCI_DEVICE_ID_SYSKONNECT_9MXX 0x4500
-
-#define PCI_VENDOR_ID_VMIC 0x114a
-#define PCI_DEVICE_ID_VMIC_VME 0x7587
-
-#define PCI_VENDOR_ID_DIGI 0x114f
-#define PCI_DEVICE_ID_DIGI_EPC 0x0002
-#define PCI_DEVICE_ID_DIGI_RIGHTSWITCH 0x0003
-#define PCI_DEVICE_ID_DIGI_XEM 0x0004
-#define PCI_DEVICE_ID_DIGI_XR 0x0005
-#define PCI_DEVICE_ID_DIGI_CX 0x0006
-#define PCI_DEVICE_ID_DIGI_XRJ 0x0009
-#define PCI_DEVICE_ID_DIGI_EPCJ 0x000a
-#define PCI_DEVICE_ID_DIGI_XR_920 0x0027
-#define PCI_DEVICE_ID_DIGI_DF_M_IOM2_E 0x0070
-#define PCI_DEVICE_ID_DIGI_DF_M_E 0x0071
-#define PCI_DEVICE_ID_DIGI_DF_M_IOM2_A 0x0072
-#define PCI_DEVICE_ID_DIGI_DF_M_A 0x0073
-#define PCI_DEVICE_ID_NEO_2DB9 0x00C8
-#define PCI_DEVICE_ID_NEO_2DB9PRI 0x00C9
-#define PCI_DEVICE_ID_NEO_2RJ45 0x00CA
-#define PCI_DEVICE_ID_NEO_2RJ45PRI 0x00CB
-
-#define PCI_VENDOR_ID_MUTECH 0x1159
-#define PCI_DEVICE_ID_MUTECH_MV1000 0x0001
-
-#define PCI_VENDOR_ID_XIRCOM 0x115d
-#define PCI_DEVICE_ID_XIRCOM_X3201_ETH 0x0003
-#define PCI_DEVICE_ID_XIRCOM_RBM56G 0x0101
-#define PCI_DEVICE_ID_XIRCOM_X3201_MDM 0x0103
-
-#define PCI_VENDOR_ID_RENDITION 0x1163
-#define PCI_DEVICE_ID_RENDITION_VERITE 0x0001
-#define PCI_DEVICE_ID_RENDITION_VERITE2100 0x2000
-
-#define PCI_VENDOR_ID_SERVERWORKS 0x1166
-#define PCI_DEVICE_ID_SERVERWORKS_HE 0x0008
-#define PCI_DEVICE_ID_SERVERWORKS_LE 0x0009
-#define PCI_DEVICE_ID_SERVERWORKS_CIOB30 0x0010
-#define PCI_DEVICE_ID_SERVERWORKS_CMIC_HE 0x0011
-#define PCI_DEVICE_ID_SERVERWORKS_GCNB_LE 0x0017
-#define PCI_DEVICE_ID_SERVERWORKS_OSB4 0x0200
-#define PCI_DEVICE_ID_SERVERWORKS_CSB5 0x0201
-#define PCI_DEVICE_ID_SERVERWORKS_CSB6 0x0203
-#define PCI_DEVICE_ID_SERVERWORKS_OSB4IDE 0x0211
-#define PCI_DEVICE_ID_SERVERWORKS_CSB5IDE 0x0212
-#define PCI_DEVICE_ID_SERVERWORKS_CSB6IDE 0x0213
-#define PCI_DEVICE_ID_SERVERWORKS_CSB6IDE2 0x0217
-#define PCI_DEVICE_ID_SERVERWORKS_OSB4USB 0x0220
-#define PCI_DEVICE_ID_SERVERWORKS_CSB5USB PCI_DEVICE_ID_SERVERWORKS_OSB4USB
-#define PCI_DEVICE_ID_SERVERWORKS_CSB6USB 0x0221
-#define PCI_DEVICE_ID_SERVERWORKS_GCLE 0x0225
-#define PCI_DEVICE_ID_SERVERWORKS_GCLE2 0x0227
-#define PCI_DEVICE_ID_SERVERWORKS_CSB5ISA 0x0230
-
-#define PCI_VENDOR_ID_SBE 0x1176
-#define PCI_DEVICE_ID_SBE_WANXL100 0x0301
-#define PCI_DEVICE_ID_SBE_WANXL200 0x0302
-#define PCI_DEVICE_ID_SBE_WANXL400 0x0104
-
-#define PCI_VENDOR_ID_TOSHIBA 0x1179
-#define PCI_DEVICE_ID_TOSHIBA_PICCOLO 0x0102
-#define PCI_DEVICE_ID_TOSHIBA_PICCOLO_1 0x0103
-#define PCI_DEVICE_ID_TOSHIBA_PICCOLO_2 0x0105
-#define PCI_DEVICE_ID_TOSHIBA_601 0x0601
-#define PCI_DEVICE_ID_TOSHIBA_TOPIC95 0x060a
-#define PCI_DEVICE_ID_TOSHIBA_TOPIC95_A 0x0603
-#define PCI_DEVICE_ID_TOSHIBA_TOPIC95_B 0x060a
-#define PCI_DEVICE_ID_TOSHIBA_TOPIC97 0x060f
-#define PCI_DEVICE_ID_TOSHIBA_TOPIC100 0x0617
-
-#define PCI_VENDOR_ID_TOSHIBA_2 0x102f
-#define PCI_DEVICE_ID_TOSHIBA_TX3927 0x000a
-#define PCI_DEVICE_ID_TOSHIBA_TC35815CF 0x0030
-#define PCI_DEVICE_ID_TOSHIBA_TX4927 0x0180
-#define PCI_DEVICE_ID_TOSHIBA_TC86C001_MISC 0x0108
-
-#define PCI_VENDOR_ID_RICOH 0x1180
-#define PCI_DEVICE_ID_RICOH_RL5C465 0x0465
-#define PCI_DEVICE_ID_RICOH_RL5C466 0x0466
-#define PCI_DEVICE_ID_RICOH_RL5C475 0x0475
-#define PCI_DEVICE_ID_RICOH_RL5C476 0x0476
-#define PCI_DEVICE_ID_RICOH_RL5C478 0x0478
-
-#define PCI_VENDOR_ID_DLINK 0x1186
-#define PCI_DEVICE_ID_DLINK_DGE510T 0x4c00
-
-#define PCI_VENDOR_ID_ARTOP 0x1191
-#define PCI_DEVICE_ID_ARTOP_ATP8400 0x0004
-#define PCI_DEVICE_ID_ARTOP_ATP850UF 0x0005
-#define PCI_DEVICE_ID_ARTOP_ATP860 0x0006
-#define PCI_DEVICE_ID_ARTOP_ATP860R 0x0007
-#define PCI_DEVICE_ID_ARTOP_ATP865 0x0008
-#define PCI_DEVICE_ID_ARTOP_ATP865R 0x0009
-#define PCI_DEVICE_ID_ARTOP_AEC7610 0x8002
-#define PCI_DEVICE_ID_ARTOP_AEC7612UW 0x8010
-#define PCI_DEVICE_ID_ARTOP_AEC7612U 0x8020
-#define PCI_DEVICE_ID_ARTOP_AEC7612S 0x8030
-#define PCI_DEVICE_ID_ARTOP_AEC7612D 0x8040
-#define PCI_DEVICE_ID_ARTOP_AEC7612SUW 0x8050
-#define PCI_DEVICE_ID_ARTOP_8060 0x8060
-#define PCI_DEVICE_ID_ARTOP_AEC67160 0x8080
-#define PCI_DEVICE_ID_ARTOP_AEC67160_2 0x8081
-#define PCI_DEVICE_ID_ARTOP_AEC67162 0x808a
-
-#define PCI_VENDOR_ID_ZEITNET 0x1193
-#define PCI_DEVICE_ID_ZEITNET_1221 0x0001
-#define PCI_DEVICE_ID_ZEITNET_1225 0x0002
-
-#define PCI_VENDOR_ID_OMEGA 0x119b
-#define PCI_DEVICE_ID_OMEGA_82C092G 0x1221
-
-#define PCI_VENDOR_ID_FUJITSU_ME 0x119e
-#define PCI_DEVICE_ID_FUJITSU_FS155 0x0001
-#define PCI_DEVICE_ID_FUJITSU_FS50 0x0003
-
-#define PCI_SUBVENDOR_ID_KEYSPAN 0x11a9
-#define PCI_SUBDEVICE_ID_KEYSPAN_SX2 0x5334
-
-#define PCI_VENDOR_ID_MARVELL 0x11ab
-#define PCI_DEVICE_ID_MARVELL_GT64011 0x4146
-#define PCI_DEVICE_ID_MARVELL_GT64111 0x4146
-#define PCI_DEVICE_ID_MARVELL_GT64260 0x6430
-#define PCI_DEVICE_ID_MARVELL_MV64360 0x6460
-#define PCI_DEVICE_ID_MARVELL_MV64460 0x6480
-#define PCI_DEVICE_ID_MARVELL_GT96100 0x9652
-#define PCI_DEVICE_ID_MARVELL_GT96100A 0x9653
-
-#define PCI_VENDOR_ID_LITEON 0x11ad
-#define PCI_DEVICE_ID_LITEON_LNE100TX 0x0002
-
-#define PCI_VENDOR_ID_V3 0x11b0
-#define PCI_DEVICE_ID_V3_V960 0x0001
-#define PCI_DEVICE_ID_V3_V350 0x0001
-#define PCI_DEVICE_ID_V3_V961 0x0002
-#define PCI_DEVICE_ID_V3_V351 0x0002
-
-#define PCI_VENDOR_ID_NP 0x11bc
-#define PCI_DEVICE_ID_NP_PCI_FDDI 0x0001
-
-#define PCI_VENDOR_ID_ATT 0x11c1
-#define PCI_DEVICE_ID_ATT_L56XMF 0x0440
-#define PCI_DEVICE_ID_ATT_VENUS_MODEM 0x480
-
-#define PCI_VENDOR_ID_NEC2 0x11c3 /* NEC (2nd) */
-
-#define PCI_VENDOR_ID_SPECIALIX 0x11cb
-#define PCI_DEVICE_ID_SPECIALIX_IO8 0x2000
-#define PCI_DEVICE_ID_SPECIALIX_XIO 0x4000
-#define PCI_DEVICE_ID_SPECIALIX_RIO 0x8000
-#define PCI_SUBDEVICE_ID_SPECIALIX_SPEED4 0xa004
-
-#define PCI_VENDOR_ID_AURAVISION 0x11d1
-#define PCI_DEVICE_ID_AURAVISION_VXP524 0x01f7
-
-#define PCI_VENDOR_ID_ANALOG_DEVICES 0x11d4
-#define PCI_DEVICE_ID_AD1889JS 0x1889
-
-#define PCI_VENDOR_ID_IKON 0x11d5
-#define PCI_DEVICE_ID_IKON_10115 0x0115
-#define PCI_DEVICE_ID_IKON_10117 0x0117
-
-#define PCI_VENDOR_ID_SEGA 0x11db
-#define PCI_DEVICE_ID_SEGA_BBA 0x1234
-
-#define PCI_VENDOR_ID_ZORAN 0x11de
-#define PCI_DEVICE_ID_ZORAN_36057 0x6057
-#define PCI_DEVICE_ID_ZORAN_36120 0x6120
-
-#define PCI_VENDOR_ID_KINETIC 0x11f4
-#define PCI_DEVICE_ID_KINETIC_2915 0x2915
-
-#define PCI_VENDOR_ID_COMPEX 0x11f6
-#define PCI_DEVICE_ID_COMPEX_ENET100VG4 0x0112
-#define PCI_DEVICE_ID_COMPEX_RL2000 0x1401
-
-#define PCI_VENDOR_ID_RP 0x11fe
-#define PCI_DEVICE_ID_RP32INTF 0x0001
-#define PCI_DEVICE_ID_RP8INTF 0x0002
-#define PCI_DEVICE_ID_RP16INTF 0x0003
-#define PCI_DEVICE_ID_RP4QUAD 0x0004
-#define PCI_DEVICE_ID_RP8OCTA 0x0005
-#define PCI_DEVICE_ID_RP8J 0x0006
-#define PCI_DEVICE_ID_RP4J 0x0007
-#define PCI_DEVICE_ID_RP8SNI 0x0008
-#define PCI_DEVICE_ID_RP16SNI 0x0009
-#define PCI_DEVICE_ID_RPP4 0x000A
-#define PCI_DEVICE_ID_RPP8 0x000B
-#define PCI_DEVICE_ID_RP8M 0x000C
-#define PCI_DEVICE_ID_RP4M 0x000D
-#define PCI_DEVICE_ID_RP2_232 0x000E
-#define PCI_DEVICE_ID_RP2_422 0x000F
-#define PCI_DEVICE_ID_URP32INTF 0x0801
-#define PCI_DEVICE_ID_URP8INTF 0x0802
-#define PCI_DEVICE_ID_URP16INTF 0x0803
-#define PCI_DEVICE_ID_URP8OCTA 0x0805
-#define PCI_DEVICE_ID_UPCI_RM3_8PORT 0x080C
-#define PCI_DEVICE_ID_UPCI_RM3_4PORT 0x080D
-#define PCI_DEVICE_ID_CRP16INTF 0x0903
-
-#define PCI_VENDOR_ID_CYCLADES 0x120e
-#define PCI_DEVICE_ID_CYCLOM_Y_Lo 0x0100
-#define PCI_DEVICE_ID_CYCLOM_Y_Hi 0x0101
-#define PCI_DEVICE_ID_CYCLOM_4Y_Lo 0x0102
-#define PCI_DEVICE_ID_CYCLOM_4Y_Hi 0x0103
-#define PCI_DEVICE_ID_CYCLOM_8Y_Lo 0x0104
-#define PCI_DEVICE_ID_CYCLOM_8Y_Hi 0x0105
-#define PCI_DEVICE_ID_CYCLOM_Z_Lo 0x0200
-#define PCI_DEVICE_ID_CYCLOM_Z_Hi 0x0201
-#define PCI_DEVICE_ID_PC300_RX_2 0x0300
-#define PCI_DEVICE_ID_PC300_RX_1 0x0301
-#define PCI_DEVICE_ID_PC300_TE_2 0x0310
-#define PCI_DEVICE_ID_PC300_TE_1 0x0311
-#define PCI_DEVICE_ID_PC300_TE_M_2 0x0320
-#define PCI_DEVICE_ID_PC300_TE_M_1 0x0321
-
-/* Allied Telesyn */
-#define PCI_VENDOR_ID_AT 0x1259
-#define PCI_SUBDEVICE_ID_AT_2701FX 0x2703
-
-#define PCI_VENDOR_ID_ESSENTIAL 0x120f
-#define PCI_DEVICE_ID_ESSENTIAL_ROADRUNNER 0x0001
-
-#define PCI_VENDOR_ID_O2 0x1217
-#define PCI_DEVICE_ID_O2_6729 0x6729
-#define PCI_DEVICE_ID_O2_6730 0x673a
-#define PCI_DEVICE_ID_O2_6832 0x6832
-#define PCI_DEVICE_ID_O2_6836 0x6836
-
-#define PCI_VENDOR_ID_3DFX 0x121a
-#define PCI_DEVICE_ID_3DFX_VOODOO 0x0001
-#define PCI_DEVICE_ID_3DFX_VOODOO2 0x0002
-#define PCI_DEVICE_ID_3DFX_BANSHEE 0x0003
-#define PCI_DEVICE_ID_3DFX_VOODOO3 0x0005
-#define PCI_DEVICE_ID_3DFX_VOODOO5 0x0009
-
-#define PCI_VENDOR_ID_SIGMADES 0x1236
-#define PCI_DEVICE_ID_SIGMADES_6425 0x6401
-
-#define PCI_VENDOR_ID_CCUBE 0x123f
-
-#define PCI_VENDOR_ID_AVM 0x1244
-#define PCI_DEVICE_ID_AVM_B1 0x0700
-#define PCI_DEVICE_ID_AVM_C4 0x0800
-#define PCI_DEVICE_ID_AVM_A1 0x0a00
-#define PCI_DEVICE_ID_AVM_A1_V2 0x0e00
-#define PCI_DEVICE_ID_AVM_C2 0x1100
-#define PCI_DEVICE_ID_AVM_T1 0x1200
-
-#define PCI_VENDOR_ID_DIPIX 0x1246
-
-#define PCI_VENDOR_ID_STALLION 0x124d
-#define PCI_DEVICE_ID_STALLION_ECHPCI832 0x0000
-#define PCI_DEVICE_ID_STALLION_ECHPCI864 0x0002
-#define PCI_DEVICE_ID_STALLION_EIOPCI 0x0003
-
-#define PCI_VENDOR_ID_OPTIBASE 0x1255
-#define PCI_DEVICE_ID_OPTIBASE_FORGE 0x1110
-#define PCI_DEVICE_ID_OPTIBASE_FUSION 0x1210
-#define PCI_DEVICE_ID_OPTIBASE_VPLEX 0x2110
-#define PCI_DEVICE_ID_OPTIBASE_VPLEXCC 0x2120
-#define PCI_DEVICE_ID_OPTIBASE_VQUEST 0x2130
-
-/* Allied Telesyn */
-#define PCI_VENDOR_ID_AT 0x1259
-#define PCI_SUBDEVICE_ID_AT_2700FX 0x2701
-#define PCI_SUBDEVICE_ID_AT_2701FX 0x2703
-
-#define PCI_VENDOR_ID_ESS 0x125d
-#define PCI_DEVICE_ID_ESS_ESS1968 0x1968
-#define PCI_DEVICE_ID_ESS_AUDIOPCI 0x1969
-#define PCI_DEVICE_ID_ESS_ESS1978 0x1978
-
-#define PCI_VENDOR_ID_SATSAGEM 0x1267
-#define PCI_DEVICE_ID_SATSAGEM_NICCY 0x1016
-#define PCI_DEVICE_ID_SATSAGEM_PCR2101 0x5352
-#define PCI_DEVICE_ID_SATSAGEM_TELSATTURBO 0x5a4b
-
-#define PCI_VENDOR_ID_SMI 0x126f
-#define PCI_DEVICE_ID_SMI_710 0x0710
-#define PCI_DEVICE_ID_SMI_712 0x0712
-#define PCI_DEVICE_ID_SMI_720 0x0720
-#define PCI_DEVICE_ID_SMI_810 0x0810
-#define PCI_DEVICE_ID_SMI_820 0x0810
-#define PCI_DEVICE_ID_SMI_910 0x0910
-
-#define PCI_VENDOR_ID_HUGHES 0x1273
-#define PCI_DEVICE_ID_HUGHES_DIRECPC 0x0002
-
-#define PCI_VENDOR_ID_ENSONIQ 0x1274
-#define PCI_DEVICE_ID_ENSONIQ_CT5880 0x5880
-#define PCI_DEVICE_ID_ENSONIQ_ES1370 0x5000
-#define PCI_DEVICE_ID_ENSONIQ_ES1371 0x1371
-
-#define PCI_VENDOR_ID_TRANSMETA 0x1279
-#define PCI_DEVICE_ID_EFFICEON 0x0060
-
-#define PCI_VENDOR_ID_ROCKWELL 0x127A
-
-#define PCI_VENDOR_ID_ITE 0x1283
-#define PCI_DEVICE_ID_ITE_IT8172G 0x8172
-#define PCI_DEVICE_ID_ITE_IT8172G_AUDIO 0x0801
-#define PCI_DEVICE_ID_ITE_8872 0x8872
-#define PCI_DEVICE_ID_ITE_IT8330G_0 0xe886
-
-/* formerly Platform Tech */
-#define PCI_VENDOR_ID_ESS_OLD 0x1285
-#define PCI_DEVICE_ID_ESS_ESS0100 0x0100
-
-#define PCI_VENDOR_ID_ALTEON 0x12ae
-#define PCI_DEVICE_ID_ALTEON_ACENIC 0x0001
-
-#define PCI_VENDOR_ID_USR 0x12B9
-
-#define PCI_SUBVENDOR_ID_CONNECT_TECH 0x12c4
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH8_232 0x0001
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH4_232 0x0002
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH2_232 0x0003
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH8_485 0x0004
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH8_485_4_4 0x0005
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH4_485 0x0006
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH4_485_2_2 0x0007
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH2_485 0x0008
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH8_485_2_6 0x0009
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH081101V1 0x000A
-#define PCI_SUBDEVICE_ID_CONNECT_TECH_BH041101V1 0x000B
-
-#define PCI_VENDOR_ID_PICTUREL 0x12c5
-#define PCI_DEVICE_ID_PICTUREL_PCIVST 0x0081
-
-#define PCI_VENDOR_ID_NVIDIA_SGS 0x12d2
-#define PCI_DEVICE_ID_NVIDIA_SGS_RIVA128 0x0018
-
-#define PCI_SUBVENDOR_ID_CHASE_PCIFAST 0x12E0
-#define PCI_SUBDEVICE_ID_CHASE_PCIFAST4 0x0031
-#define PCI_SUBDEVICE_ID_CHASE_PCIFAST8 0x0021
-#define PCI_SUBDEVICE_ID_CHASE_PCIFAST16 0x0011
-#define PCI_SUBDEVICE_ID_CHASE_PCIFAST16FMC 0x0041
-#define PCI_SUBVENDOR_ID_CHASE_PCIRAS 0x124D
-#define PCI_SUBDEVICE_ID_CHASE_PCIRAS4 0xF001
-#define PCI_SUBDEVICE_ID_CHASE_PCIRAS8 0xF010
-
-#define PCI_VENDOR_ID_AUREAL 0x12eb
-#define PCI_DEVICE_ID_AUREAL_VORTEX_1 0x0001
-#define PCI_DEVICE_ID_AUREAL_VORTEX_2 0x0002
-#define PCI_DEVICE_ID_AUREAL_ADVANTAGE 0x0003
-
-#define PCI_VENDOR_ID_ELECTRONICDESIGNGMBH 0x12f8
-#define PCI_DEVICE_ID_LML_33R10 0x8a02
-
-#define PCI_VENDOR_ID_CBOARDS 0x1307
-#define PCI_DEVICE_ID_CBOARDS_DAS1602_16 0x0001
-
-#define PCI_VENDOR_ID_SIIG 0x131f
-#define PCI_DEVICE_ID_SIIG_1S_10x_550 0x1000
-#define PCI_DEVICE_ID_SIIG_1S_10x_650 0x1001
-#define PCI_DEVICE_ID_SIIG_1S_10x_850 0x1002
-#define PCI_DEVICE_ID_SIIG_1S1P_10x_550 0x1010
-#define PCI_DEVICE_ID_SIIG_1S1P_10x_650 0x1011
-#define PCI_DEVICE_ID_SIIG_1S1P_10x_850 0x1012
-#define PCI_DEVICE_ID_SIIG_1P_10x 0x1020
-#define PCI_DEVICE_ID_SIIG_2P_10x 0x1021
-#define PCI_DEVICE_ID_SIIG_2S_10x_550 0x1030
-#define PCI_DEVICE_ID_SIIG_2S_10x_650 0x1031
-#define PCI_DEVICE_ID_SIIG_2S_10x_850 0x1032
-#define PCI_DEVICE_ID_SIIG_2S1P_10x_550 0x1034
-#define PCI_DEVICE_ID_SIIG_2S1P_10x_650 0x1035
-#define PCI_DEVICE_ID_SIIG_2S1P_10x_850 0x1036
-#define PCI_DEVICE_ID_SIIG_4S_10x_550 0x1050
-#define PCI_DEVICE_ID_SIIG_4S_10x_650 0x1051
-#define PCI_DEVICE_ID_SIIG_4S_10x_850 0x1052
-#define PCI_DEVICE_ID_SIIG_1S_20x_550 0x2000
-#define PCI_DEVICE_ID_SIIG_1S_20x_650 0x2001
-#define PCI_DEVICE_ID_SIIG_1S_20x_850 0x2002
-#define PCI_DEVICE_ID_SIIG_1P_20x 0x2020
-#define PCI_DEVICE_ID_SIIG_2P_20x 0x2021
-#define PCI_DEVICE_ID_SIIG_2S_20x_550 0x2030
-#define PCI_DEVICE_ID_SIIG_2S_20x_650 0x2031
-#define PCI_DEVICE_ID_SIIG_2S_20x_850 0x2032
-#define PCI_DEVICE_ID_SIIG_2P1S_20x_550 0x2040
-#define PCI_DEVICE_ID_SIIG_2P1S_20x_650 0x2041
-#define PCI_DEVICE_ID_SIIG_2P1S_20x_850 0x2042
-#define PCI_DEVICE_ID_SIIG_1S1P_20x_550 0x2010
-#define PCI_DEVICE_ID_SIIG_1S1P_20x_650 0x2011
-#define PCI_DEVICE_ID_SIIG_1S1P_20x_850 0x2012
-#define PCI_DEVICE_ID_SIIG_4S_20x_550 0x2050
-#define PCI_DEVICE_ID_SIIG_4S_20x_650 0x2051
-#define PCI_DEVICE_ID_SIIG_4S_20x_850 0x2052
-#define PCI_DEVICE_ID_SIIG_2S1P_20x_550 0x2060
-#define PCI_DEVICE_ID_SIIG_2S1P_20x_650 0x2061
-#define PCI_DEVICE_ID_SIIG_2S1P_20x_850 0x2062
-
-#define PCI_VENDOR_ID_RADISYS 0x1331
-#define PCI_DEVICE_ID_RADISYS_ENP2611 0x0030
-
-#define PCI_VENDOR_ID_DOMEX 0x134a
-#define PCI_DEVICE_ID_DOMEX_DMX3191D 0x0001
-
-#define PCI_VENDOR_ID_QUATECH 0x135C
-#define PCI_DEVICE_ID_QUATECH_QSC100 0x0010
-#define PCI_DEVICE_ID_QUATECH_DSC100 0x0020
-#define PCI_DEVICE_ID_QUATECH_DSC200 0x0030
-#define PCI_DEVICE_ID_QUATECH_QSC200 0x0040
-#define PCI_DEVICE_ID_QUATECH_ESC100D 0x0050
-#define PCI_DEVICE_ID_QUATECH_ESC100M 0x0060
-
-#define PCI_VENDOR_ID_SEALEVEL 0x135e
-#define PCI_DEVICE_ID_SEALEVEL_U530 0x7101
-#define PCI_DEVICE_ID_SEALEVEL_UCOMM2 0x7201
-#define PCI_DEVICE_ID_SEALEVEL_UCOMM422 0x7402
-#define PCI_DEVICE_ID_SEALEVEL_UCOMM232 0x7202
-#define PCI_DEVICE_ID_SEALEVEL_COMM4 0x7401
-#define PCI_DEVICE_ID_SEALEVEL_COMM8 0x7801
-#define PCI_DEVICE_ID_SEALEVEL_UCOMM8 0x7804
-
-#define PCI_VENDOR_ID_HYPERCOPE 0x1365
-#define PCI_DEVICE_ID_HYPERCOPE_PLX 0x9050
-#define PCI_SUBDEVICE_ID_HYPERCOPE_OLD_ERGO 0x0104
-#define PCI_SUBDEVICE_ID_HYPERCOPE_ERGO 0x0106
-#define PCI_SUBDEVICE_ID_HYPERCOPE_METRO 0x0107
-#define PCI_SUBDEVICE_ID_HYPERCOPE_CHAMP2 0x0108
-#define PCI_SUBDEVICE_ID_HYPERCOPE_PLEXUS 0x0109
-
-#define PCI_VENDOR_ID_KAWASAKI 0x136b
-#define PCI_DEVICE_ID_MCHIP_KL5A72002 0xff01
-
-#define PCI_VENDOR_ID_CNET 0x1371
-#define PCI_DEVICE_ID_CNET_GIGACARD 0x434e
-
-#define PCI_VENDOR_ID_LMC 0x1376
-#define PCI_DEVICE_ID_LMC_HSSI 0x0003
-#define PCI_DEVICE_ID_LMC_DS3 0x0004
-#define PCI_DEVICE_ID_LMC_SSI 0x0005
-#define PCI_DEVICE_ID_LMC_T1 0x0006
-
-#define PCI_VENDOR_ID_NETGEAR 0x1385
-#define PCI_DEVICE_ID_NETGEAR_GA620 0x620a
-#define PCI_DEVICE_ID_NETGEAR_GA622 0x622a
-
-#define PCI_VENDOR_ID_APPLICOM 0x1389
-#define PCI_DEVICE_ID_APPLICOM_PCIGENERIC 0x0001
-#define PCI_DEVICE_ID_APPLICOM_PCI2000IBS_CAN 0x0002
-#define PCI_DEVICE_ID_APPLICOM_PCI2000PFB 0x0003
-
-#define PCI_VENDOR_ID_MOXA 0x1393
-#define PCI_DEVICE_ID_MOXA_RC7000 0x0001
-#define PCI_DEVICE_ID_MOXA_CP102 0x1020
-#define PCI_DEVICE_ID_MOXA_CP102UL 0x1021
-#define PCI_DEVICE_ID_MOXA_CP102U 0x1022
-#define PCI_DEVICE_ID_MOXA_C104 0x1040
-#define PCI_DEVICE_ID_MOXA_CP104U 0x1041
-#define PCI_DEVICE_ID_MOXA_CP104JU 0x1042
-#define PCI_DEVICE_ID_MOXA_CT114 0x1140
-#define PCI_DEVICE_ID_MOXA_CP114 0x1141
-#define PCI_DEVICE_ID_MOXA_CP118U 0x1180
-#define PCI_DEVICE_ID_MOXA_CP132 0x1320
-#define PCI_DEVICE_ID_MOXA_CP132U 0x1321
-#define PCI_DEVICE_ID_MOXA_CP134U 0x1340
-#define PCI_DEVICE_ID_MOXA_C168 0x1680
-#define PCI_DEVICE_ID_MOXA_CP168U 0x1681
-#define PCI_DEVICE_ID_MOXA_CP204J 0x2040
-#define PCI_DEVICE_ID_MOXA_C218 0x2180
-#define PCI_DEVICE_ID_MOXA_C320 0x3200
-
-#define PCI_VENDOR_ID_CCD 0x1397
-#define PCI_DEVICE_ID_CCD_2BD0 0x2bd0
-#define PCI_DEVICE_ID_CCD_B000 0xb000
-#define PCI_DEVICE_ID_CCD_B006 0xb006
-#define PCI_DEVICE_ID_CCD_B007 0xb007
-#define PCI_DEVICE_ID_CCD_B008 0xb008
-#define PCI_DEVICE_ID_CCD_B009 0xb009
-#define PCI_DEVICE_ID_CCD_B00A 0xb00a
-#define PCI_DEVICE_ID_CCD_B00B 0xb00b
-#define PCI_DEVICE_ID_CCD_B00C 0xb00c
-#define PCI_DEVICE_ID_CCD_B100 0xb100
-
-#define PCI_VENDOR_ID_EXAR 0x13a8
-#define PCI_DEVICE_ID_EXAR_XR17C152 0x0152
-#define PCI_DEVICE_ID_EXAR_XR17C154 0x0154
-#define PCI_DEVICE_ID_EXAR_XR17C158 0x0158
-
-#define PCI_VENDOR_ID_MICROGATE 0x13c0
-#define PCI_DEVICE_ID_MICROGATE_USC 0x0010
-#define PCI_DEVICE_ID_MICROGATE_SCC 0x0020
-#define PCI_DEVICE_ID_MICROGATE_SCA 0x0030
-#define PCI_DEVICE_ID_MICROGATE_USC2 0x0210
-
-#define PCI_VENDOR_ID_3WARE 0x13C1
-#define PCI_DEVICE_ID_3WARE_1000 0x1000
-#define PCI_DEVICE_ID_3WARE_7000 0x1001
-#define PCI_DEVICE_ID_3WARE_9000 0x1002
-
-#define PCI_VENDOR_ID_IOMEGA 0x13ca
-#define PCI_DEVICE_ID_IOMEGA_BUZ 0x4231
-
-#define PCI_VENDOR_ID_ABOCOM 0x13D1
-#define PCI_DEVICE_ID_ABOCOM_2BD1 0x2BD1
-
-#define PCI_VENDOR_ID_CMEDIA 0x13f6
-#define PCI_DEVICE_ID_CMEDIA_CM8338A 0x0100
-#define PCI_DEVICE_ID_CMEDIA_CM8338B 0x0101
-#define PCI_DEVICE_ID_CMEDIA_CM8738 0x0111
-#define PCI_DEVICE_ID_CMEDIA_CM8738B 0x0112
-
-#define PCI_VENDOR_ID_LAVA 0x1407
-#define PCI_DEVICE_ID_LAVA_DSERIAL 0x0100 /* 2x 16550 */
-#define PCI_DEVICE_ID_LAVA_QUATRO_A 0x0101 /* 2x 16550, half of 4 port */
-#define PCI_DEVICE_ID_LAVA_QUATRO_B 0x0102 /* 2x 16550, half of 4 port */
-#define PCI_DEVICE_ID_LAVA_OCTO_A 0x0180 /* 4x 16550A, half of 8 port */
-#define PCI_DEVICE_ID_LAVA_OCTO_B 0x0181 /* 4x 16550A, half of 8 port */
-#define PCI_DEVICE_ID_LAVA_PORT_PLUS 0x0200 /* 2x 16650 */
-#define PCI_DEVICE_ID_LAVA_QUAD_A 0x0201 /* 2x 16650, half of 4 port */
-#define PCI_DEVICE_ID_LAVA_QUAD_B 0x0202 /* 2x 16650, half of 4 port */
-#define PCI_DEVICE_ID_LAVA_SSERIAL 0x0500 /* 1x 16550 */
-#define PCI_DEVICE_ID_LAVA_PORT_650 0x0600 /* 1x 16650 */
-#define PCI_DEVICE_ID_LAVA_PARALLEL 0x8000
-#define PCI_DEVICE_ID_LAVA_DUAL_PAR_A 0x8002 /* The Lava Dual Parallel is */
-#define PCI_DEVICE_ID_LAVA_DUAL_PAR_B 0x8003 /* two PCI devices on a card */
-#define PCI_DEVICE_ID_LAVA_BOCA_IOPPAR 0x8800
-
-#define PCI_VENDOR_ID_TIMEDIA 0x1409
-#define PCI_DEVICE_ID_TIMEDIA_1889 0x7168
-
-#define PCI_VENDOR_ID_OXSEMI 0x1415
-#define PCI_DEVICE_ID_OXSEMI_12PCI840 0x8403
-#define PCI_DEVICE_ID_OXSEMI_16PCI954 0x9501
-#define PCI_DEVICE_ID_OXSEMI_16PCI95N 0x9511
-#define PCI_DEVICE_ID_OXSEMI_16PCI954PP 0x9513
-#define PCI_DEVICE_ID_OXSEMI_16PCI952 0x9521
-
-#define PCI_VENDOR_ID_SAMSUNG 0x144d
-
-#define PCI_VENDOR_ID_AIRONET 0x14b9
-#define PCI_DEVICE_ID_AIRONET_4800_1 0x0001
-#define PCI_DEVICE_ID_AIRONET_4800 0x4500 // values switched? see
-#define PCI_DEVICE_ID_AIRONET_4500 0x4800 // drivers/net/aironet4500_card.c
-
-#define PCI_VENDOR_ID_TITAN 0x14D2
-#define PCI_DEVICE_ID_TITAN_010L 0x8001
-#define PCI_DEVICE_ID_TITAN_100L 0x8010
-#define PCI_DEVICE_ID_TITAN_110L 0x8011
-#define PCI_DEVICE_ID_TITAN_200L 0x8020
-#define PCI_DEVICE_ID_TITAN_210L 0x8021
-#define PCI_DEVICE_ID_TITAN_400L 0x8040
-#define PCI_DEVICE_ID_TITAN_800L 0x8080
-#define PCI_DEVICE_ID_TITAN_100 0xA001
-#define PCI_DEVICE_ID_TITAN_200 0xA005
-#define PCI_DEVICE_ID_TITAN_400 0xA003
-#define PCI_DEVICE_ID_TITAN_800B 0xA004
-
-#define PCI_VENDOR_ID_PANACOM 0x14d4
-#define PCI_DEVICE_ID_PANACOM_QUADMODEM 0x0400
-#define PCI_DEVICE_ID_PANACOM_DUALMODEM 0x0402
-
-#define PCI_VENDOR_ID_SIPACKETS 0x14d9
-#define PCI_DEVICE_ID_SP_HT 0x0010
-
-#define PCI_VENDOR_ID_AFAVLAB 0x14db
-#define PCI_DEVICE_ID_AFAVLAB_P028 0x2180
-#define PCI_DEVICE_ID_AFAVLAB_P030 0x2182
-
-#define PCI_VENDOR_ID_BROADCOM 0x14e4
-#define PCI_DEVICE_ID_TIGON3_5752 0x1600
-#define PCI_DEVICE_ID_TIGON3_5752M 0x1601
-#define PCI_DEVICE_ID_TIGON3_5700 0x1644
-#define PCI_DEVICE_ID_TIGON3_5701 0x1645
-#define PCI_DEVICE_ID_TIGON3_5702 0x1646
-#define PCI_DEVICE_ID_TIGON3_5703 0x1647
-#define PCI_DEVICE_ID_TIGON3_5704 0x1648
-#define PCI_DEVICE_ID_TIGON3_5704S_2 0x1649
-#define PCI_DEVICE_ID_NX2_5706 0x164a
-#define PCI_DEVICE_ID_TIGON3_5702FE 0x164d
-#define PCI_DEVICE_ID_TIGON3_5705 0x1653
-#define PCI_DEVICE_ID_TIGON3_5705_2 0x1654
-#define PCI_DEVICE_ID_TIGON3_5720 0x1658
-#define PCI_DEVICE_ID_TIGON3_5721 0x1659
-#define PCI_DEVICE_ID_TIGON3_5705M 0x165d
-#define PCI_DEVICE_ID_TIGON3_5705M_2 0x165e
-#define PCI_DEVICE_ID_TIGON3_5705F 0x166e
-#define PCI_DEVICE_ID_TIGON3_5750 0x1676
-#define PCI_DEVICE_ID_TIGON3_5751 0x1677
-#define PCI_DEVICE_ID_TIGON3_5750M 0x167c
-#define PCI_DEVICE_ID_TIGON3_5751M 0x167d
-#define PCI_DEVICE_ID_TIGON3_5751F 0x167e
-#define PCI_DEVICE_ID_TIGON3_5782 0x1696
-#define PCI_DEVICE_ID_TIGON3_5788 0x169c
-#define PCI_DEVICE_ID_TIGON3_5789 0x169d
-#define PCI_DEVICE_ID_TIGON3_5702X 0x16a6
-#define PCI_DEVICE_ID_TIGON3_5703X 0x16a7
-#define PCI_DEVICE_ID_TIGON3_5704S 0x16a8
-#define PCI_DEVICE_ID_NX2_5706S 0x16aa
-#define PCI_DEVICE_ID_TIGON3_5702A3 0x16c6
-#define PCI_DEVICE_ID_TIGON3_5703A3 0x16c7
-#define PCI_DEVICE_ID_TIGON3_5781 0x16dd
-#define PCI_DEVICE_ID_TIGON3_5753 0x16f7
-#define PCI_DEVICE_ID_TIGON3_5753M 0x16fd
-#define PCI_DEVICE_ID_TIGON3_5753F 0x16fe
-#define PCI_DEVICE_ID_TIGON3_5901 0x170d
-#define PCI_DEVICE_ID_BCM4401B1 0x170c
-#define PCI_DEVICE_ID_TIGON3_5901_2 0x170e
-#define PCI_DEVICE_ID_BCM4401 0x4401
-#define PCI_DEVICE_ID_BCM4401B0 0x4402
-
-#define PCI_VENDOR_ID_TOPIC 0x151f
-#define PCI_DEVICE_ID_TOPIC_TP560 0x0000
-
-#define PCI_VENDOR_ID_ENE 0x1524
-#define PCI_DEVICE_ID_ENE_1211 0x1211
-#define PCI_DEVICE_ID_ENE_1225 0x1225
-#define PCI_DEVICE_ID_ENE_1410 0x1410
-#define PCI_DEVICE_ID_ENE_1420 0x1420
-
-#define PCI_VENDOR_ID_SYBA 0x1592
-#define PCI_DEVICE_ID_SYBA_2P_EPP 0x0782
-#define PCI_DEVICE_ID_SYBA_1P_ECP 0x0783
-
-#define PCI_VENDOR_ID_MORETON 0x15aa
-#define PCI_DEVICE_ID_RASTEL_2PORT 0x2000
-
-#define PCI_VENDOR_ID_ZOLTRIX 0x15b0
-#define PCI_DEVICE_ID_ZOLTRIX_2BD0 0x2bd0
-
-#define PCI_VENDOR_ID_MELLANOX 0x15b3
-#define PCI_DEVICE_ID_MELLANOX_TAVOR 0x5a44
-#define PCI_DEVICE_ID_MELLANOX_ARBEL_COMPAT 0x6278
-#define PCI_DEVICE_ID_MELLANOX_ARBEL 0x6282
-#define PCI_DEVICE_ID_MELLANOX_SINAI_OLD 0x5e8c
-#define PCI_DEVICE_ID_MELLANOX_SINAI 0x6274
-
-#define PCI_VENDOR_ID_PDC 0x15e9
-#define PCI_DEVICE_ID_PDC_1841 0x1841
-
-#define PCI_VENDOR_ID_MACROLINK 0x15ed
-#define PCI_DEVICE_ID_MACROLINK_MCCS8 0x1000
-#define PCI_DEVICE_ID_MACROLINK_MCCS 0x1001
-#define PCI_DEVICE_ID_MACROLINK_MCCS8H 0x1002
-#define PCI_DEVICE_ID_MACROLINK_MCCSH 0x1003
-#define PCI_DEVICE_ID_MACROLINK_MCCR8 0x2000
-#define PCI_DEVICE_ID_MACROLINK_MCCR 0x2001
-
-#define PCI_VENDOR_ID_FARSITE 0x1619
-#define PCI_DEVICE_ID_FARSITE_T2P 0x0400
-#define PCI_DEVICE_ID_FARSITE_T4P 0x0440
-#define PCI_DEVICE_ID_FARSITE_T1U 0x0610
-#define PCI_DEVICE_ID_FARSITE_T2U 0x0620
-#define PCI_DEVICE_ID_FARSITE_T4U 0x0640
-#define PCI_DEVICE_ID_FARSITE_TE1 0x1610
-#define PCI_DEVICE_ID_FARSITE_TE1C 0x1612
-
-#define PCI_VENDOR_ID_SIBYTE 0x166d
-#define PCI_DEVICE_ID_BCM1250_HT 0x0002
-
-#define PCI_VENDOR_ID_LINKSYS 0x1737
-#define PCI_DEVICE_ID_LINKSYS_EG1032 0x1032
-#define PCI_DEVICE_ID_LINKSYS_EG1064 0x1064
-
-#define PCI_VENDOR_ID_ALTIMA 0x173b
-#define PCI_DEVICE_ID_ALTIMA_AC1000 0x03e8
-#define PCI_DEVICE_ID_ALTIMA_AC1001 0x03e9
-#define PCI_DEVICE_ID_ALTIMA_AC9100 0x03ea
-#define PCI_DEVICE_ID_ALTIMA_AC1003 0x03eb
-
-#define PCI_VENDOR_ID_S2IO 0x17d5
-#define PCI_DEVICE_ID_S2IO_WIN 0x5731
-#define PCI_DEVICE_ID_S2IO_UNI 0x5831
-#define PCI_DEVICE_ID_HERC_WIN 0x5732
-#define PCI_DEVICE_ID_HERC_UNI 0x5832
-
-#define PCI_VENDOR_ID_INFINICON 0x1820
-
-#define PCI_VENDOR_ID_TOPSPIN 0x1867
-
-#define PCI_VENDOR_ID_TDI 0x192E
-#define PCI_DEVICE_ID_TDI_EHCI 0x0101
-
-#define PCI_VENDOR_ID_SYMPHONY 0x1c1c
-#define PCI_DEVICE_ID_SYMPHONY_101 0x0001
-
-#define PCI_VENDOR_ID_TEKRAM 0x1de1
-#define PCI_DEVICE_ID_TEKRAM_DC290 0xdc29
-
-#define PCI_VENDOR_ID_HINT 0x3388
-#define PCI_DEVICE_ID_HINT_VXPROII_IDE 0x8013
-
-#define PCI_VENDOR_ID_3DLABS 0x3d3d
-#define PCI_DEVICE_ID_3DLABS_300SX 0x0001
-#define PCI_DEVICE_ID_3DLABS_500TX 0x0002
-#define PCI_DEVICE_ID_3DLABS_DELTA 0x0003
-#define PCI_DEVICE_ID_3DLABS_PERMEDIA 0x0004
-#define PCI_DEVICE_ID_3DLABS_MX 0x0006
-#define PCI_DEVICE_ID_3DLABS_PERMEDIA2 0x0007
-#define PCI_DEVICE_ID_3DLABS_GAMMA 0x0008
-#define PCI_DEVICE_ID_3DLABS_PERMEDIA2V 0x0009
-
-#define PCI_VENDOR_ID_AVANCE 0x4005
-#define PCI_DEVICE_ID_AVANCE_ALG2064 0x2064
-#define PCI_DEVICE_ID_AVANCE_2302 0x2302
-
-#define PCI_VENDOR_ID_AKS 0x416c
-#define PCI_DEVICE_ID_AKS_ALADDINCARD 0x0100
-#define PCI_DEVICE_ID_AKS_CPC 0x0200
-
-#define PCI_VENDOR_ID_REDCREEK 0x4916
-#define PCI_DEVICE_ID_RC45 0x1960
-
-#define PCI_VENDOR_ID_NETVIN 0x4a14
-#define PCI_DEVICE_ID_NETVIN_NV5000SC 0x5000
-
-#define PCI_VENDOR_ID_S3 0x5333
-#define PCI_DEVICE_ID_S3_PLATO_PXS 0x0551
-#define PCI_DEVICE_ID_S3_ViRGE 0x5631
-#define PCI_DEVICE_ID_S3_TRIO 0x8811
-#define PCI_DEVICE_ID_S3_AURORA64VP 0x8812
-#define PCI_DEVICE_ID_S3_TRIO64UVP 0x8814
-#define PCI_DEVICE_ID_S3_ViRGE_VX 0x883d
-#define PCI_DEVICE_ID_S3_868 0x8880
-#define PCI_DEVICE_ID_S3_928 0x88b0
-#define PCI_DEVICE_ID_S3_864_1 0x88c0
-#define PCI_DEVICE_ID_S3_864_2 0x88c1
-#define PCI_DEVICE_ID_S3_964_1 0x88d0
-#define PCI_DEVICE_ID_S3_964_2 0x88d1
-#define PCI_DEVICE_ID_S3_968 0x88f0
-#define PCI_DEVICE_ID_S3_TRIO64V2 0x8901
-#define PCI_DEVICE_ID_S3_PLATO_PXG 0x8902
-#define PCI_DEVICE_ID_S3_ViRGE_DXGX 0x8a01
-#define PCI_DEVICE_ID_S3_ViRGE_GX2 0x8a10
-#define PCI_DEVICE_ID_S3_SAVAGE4 0x8a25
-#define PCI_DEVICE_ID_S3_ViRGE_MX 0x8c01
-#define PCI_DEVICE_ID_S3_ViRGE_MXP 0x8c02
-#define PCI_DEVICE_ID_S3_ViRGE_MXPMV 0x8c03
-#define PCI_DEVICE_ID_S3_PROSAVAGE8 0x8d04
-#define PCI_DEVICE_ID_S3_SONICVIBES 0xca00
-
-#define PCI_VENDOR_ID_DUNORD 0x5544
-#define PCI_DEVICE_ID_DUNORD_I3000 0x0001
-
-#define PCI_VENDOR_ID_DCI 0x6666
-#define PCI_DEVICE_ID_DCI_PCCOM4 0x0001
-#define PCI_DEVICE_ID_DCI_PCCOM8 0x0002
-
-#define PCI_VENDOR_ID_DUNORD 0x5544
-#define PCI_DEVICE_ID_DUNORD_I3000 0x0001
-
-#define PCI_VENDOR_ID_GENROCO 0x5555
-#define PCI_DEVICE_ID_GENROCO_HFP832 0x0003
-
-#define PCI_VENDOR_ID_INTEL 0x8086
-#define PCI_DEVICE_ID_INTEL_EESSC 0x0008
-#define PCI_DEVICE_ID_INTEL_21145 0x0039
-#define PCI_DEVICE_ID_INTEL_82375 0x0482
-#define PCI_DEVICE_ID_INTEL_82424 0x0483
-#define PCI_DEVICE_ID_INTEL_82378 0x0484
-#define PCI_DEVICE_ID_INTEL_82430 0x0486
-#define PCI_DEVICE_ID_INTEL_82434 0x04a3
-#define PCI_DEVICE_ID_INTEL_I960 0x0960
-#define PCI_DEVICE_ID_INTEL_I960RM 0x0962
-#define PCI_DEVICE_ID_INTEL_82562ET 0x1031
-#define PCI_DEVICE_ID_INTEL_82801CAM 0x1038
-#define PCI_DEVICE_ID_INTEL_82815_MC 0x1130
-#define PCI_DEVICE_ID_INTEL_82815_AB 0x1131
-#define PCI_DEVICE_ID_INTEL_82815_CGC 0x1132
-#define PCI_DEVICE_ID_INTEL_82559ER 0x1209
-#define PCI_DEVICE_ID_INTEL_82092AA_0 0x1221
-#define PCI_DEVICE_ID_INTEL_82092AA_1 0x1222
-#define PCI_DEVICE_ID_INTEL_7116 0x1223
-#define PCI_DEVICE_ID_INTEL_7505_0 0x2550
-#define PCI_DEVICE_ID_INTEL_7505_1 0x2552
-#define PCI_DEVICE_ID_INTEL_7205_0 0x255d
-#define PCI_DEVICE_ID_INTEL_82596 0x1226
-#define PCI_DEVICE_ID_INTEL_82865 0x1227
-#define PCI_DEVICE_ID_INTEL_82557 0x1229
-#define PCI_DEVICE_ID_INTEL_82437 0x122d
-#define PCI_DEVICE_ID_INTEL_82371FB_0 0x122e
-#define PCI_DEVICE_ID_INTEL_82371FB_1 0x1230
-#define PCI_DEVICE_ID_INTEL_82371MX 0x1234
-#define PCI_DEVICE_ID_INTEL_82437MX 0x1235
-#define PCI_DEVICE_ID_INTEL_82441 0x1237
-#define PCI_DEVICE_ID_INTEL_82380FB 0x124b
-#define PCI_DEVICE_ID_INTEL_82439 0x1250
-#define PCI_DEVICE_ID_INTEL_80960_RP 0x1960
-#define PCI_DEVICE_ID_INTEL_82840_HB 0x1a21
-#define PCI_DEVICE_ID_INTEL_82845_HB 0x1a30
-#define PCI_DEVICE_ID_INTEL_82801AA_0 0x2410
-#define PCI_DEVICE_ID_INTEL_82801AA_1 0x2411
-#define PCI_DEVICE_ID_INTEL_82801AA_2 0x2412
-#define PCI_DEVICE_ID_INTEL_82801AA_3 0x2413
-#define PCI_DEVICE_ID_INTEL_82801AA_5 0x2415
-#define PCI_DEVICE_ID_INTEL_82801AA_6 0x2416
-#define PCI_DEVICE_ID_INTEL_82801AA_8 0x2418
-#define PCI_DEVICE_ID_INTEL_82801AB_0 0x2420
-#define PCI_DEVICE_ID_INTEL_82801AB_1 0x2421
-#define PCI_DEVICE_ID_INTEL_82801AB_2 0x2422
-#define PCI_DEVICE_ID_INTEL_82801AB_3 0x2423
-#define PCI_DEVICE_ID_INTEL_82801AB_5 0x2425
-#define PCI_DEVICE_ID_INTEL_82801AB_6 0x2426
-#define PCI_DEVICE_ID_INTEL_82801AB_8 0x2428
-#define PCI_DEVICE_ID_INTEL_82801BA_0 0x2440
-#define PCI_DEVICE_ID_INTEL_82801BA_1 0x2442
-#define PCI_DEVICE_ID_INTEL_82801BA_2 0x2443
-#define PCI_DEVICE_ID_INTEL_82801BA_3 0x2444
-#define PCI_DEVICE_ID_INTEL_82801BA_4 0x2445
-#define PCI_DEVICE_ID_INTEL_82801BA_5 0x2446
-#define PCI_DEVICE_ID_INTEL_82801BA_6 0x2448
-#define PCI_DEVICE_ID_INTEL_82801BA_7 0x2449
-#define PCI_DEVICE_ID_INTEL_82801BA_8 0x244a
-#define PCI_DEVICE_ID_INTEL_82801BA_9 0x244b
-#define PCI_DEVICE_ID_INTEL_82801BA_10 0x244c
-#define PCI_DEVICE_ID_INTEL_82801BA_11 0x244e
-#define PCI_DEVICE_ID_INTEL_82801E_0 0x2450
-#define PCI_DEVICE_ID_INTEL_82801E_2 0x2452
-#define PCI_DEVICE_ID_INTEL_82801E_3 0x2453
-#define PCI_DEVICE_ID_INTEL_82801E_9 0x2459
-#define PCI_DEVICE_ID_INTEL_82801E_11 0x245b
-#define PCI_DEVICE_ID_INTEL_82801E_13 0x245d
-#define PCI_DEVICE_ID_INTEL_82801E_14 0x245e
-#define PCI_DEVICE_ID_INTEL_82801CA_0 0x2480
-#define PCI_DEVICE_ID_INTEL_82801CA_2 0x2482
-#define PCI_DEVICE_ID_INTEL_82801CA_3 0x2483
-#define PCI_DEVICE_ID_INTEL_82801CA_4 0x2484
-#define PCI_DEVICE_ID_INTEL_82801CA_5 0x2485
-#define PCI_DEVICE_ID_INTEL_82801CA_6 0x2486
-#define PCI_DEVICE_ID_INTEL_82801CA_7 0x2487
-#define PCI_DEVICE_ID_INTEL_82801CA_10 0x248a
-#define PCI_DEVICE_ID_INTEL_82801CA_11 0x248b
-#define PCI_DEVICE_ID_INTEL_82801CA_12 0x248c
-#define PCI_DEVICE_ID_INTEL_82801DB_0 0x24c0
-#define PCI_DEVICE_ID_INTEL_82801DB_1 0x24c1
-#define PCI_DEVICE_ID_INTEL_82801DB_2 0x24c2
-#define PCI_DEVICE_ID_INTEL_82801DB_3 0x24c3
-#define PCI_DEVICE_ID_INTEL_82801DB_4 0x24c4
-#define PCI_DEVICE_ID_INTEL_82801DB_5 0x24c5
-#define PCI_DEVICE_ID_INTEL_82801DB_6 0x24c6
-#define PCI_DEVICE_ID_INTEL_82801DB_7 0x24c7
-#define PCI_DEVICE_ID_INTEL_82801DB_9 0x24c9
-#define PCI_DEVICE_ID_INTEL_82801DB_10 0x24ca
-#define PCI_DEVICE_ID_INTEL_82801DB_11 0x24cb
-#define PCI_DEVICE_ID_INTEL_82801DB_12 0x24cc
-#define PCI_DEVICE_ID_INTEL_82801DB_13 0x24cd
-#define PCI_DEVICE_ID_INTEL_82801EB_0 0x24d0
-#define PCI_DEVICE_ID_INTEL_82801EB_1 0x24d1
-#define PCI_DEVICE_ID_INTEL_82801EB_2 0x24d2
-#define PCI_DEVICE_ID_INTEL_82801EB_3 0x24d3
-#define PCI_DEVICE_ID_INTEL_82801EB_4 0x24d4
-#define PCI_DEVICE_ID_INTEL_82801EB_5 0x24d5
-#define PCI_DEVICE_ID_INTEL_82801EB_6 0x24d6
-#define PCI_DEVICE_ID_INTEL_82801EB_7 0x24d7
-#define PCI_DEVICE_ID_INTEL_82801EB_11 0x24db
-#define PCI_DEVICE_ID_INTEL_82801EB_13 0x24dd
-#define PCI_DEVICE_ID_INTEL_ESB_1 0x25a1
-#define PCI_DEVICE_ID_INTEL_ESB_2 0x25a2
-#define PCI_DEVICE_ID_INTEL_ESB_3 0x25a3
-#define PCI_DEVICE_ID_INTEL_ESB_31 0x25b0
-#define PCI_DEVICE_ID_INTEL_ESB_4 0x25a4
-#define PCI_DEVICE_ID_INTEL_ESB_5 0x25a6
-#define PCI_DEVICE_ID_INTEL_ESB_6 0x25a7
-#define PCI_DEVICE_ID_INTEL_ESB_7 0x25a9
-#define PCI_DEVICE_ID_INTEL_ESB_8 0x25aa
-#define PCI_DEVICE_ID_INTEL_ESB_9 0x25ab
-#define PCI_DEVICE_ID_INTEL_ESB_11 0x25ac
-#define PCI_DEVICE_ID_INTEL_ESB_12 0x25ad
-#define PCI_DEVICE_ID_INTEL_ESB_13 0x25ae
-#define PCI_DEVICE_ID_INTEL_82820_HB 0x2500
-#define PCI_DEVICE_ID_INTEL_82820_UP_HB 0x2501
-#define PCI_DEVICE_ID_INTEL_82850_HB 0x2530
-#define PCI_DEVICE_ID_INTEL_82860_HB 0x2531
-#define PCI_DEVICE_ID_INTEL_82845G_HB 0x2560
-#define PCI_DEVICE_ID_INTEL_82845G_IG 0x2562
-#define PCI_DEVICE_ID_INTEL_82865_HB 0x2570
-#define PCI_DEVICE_ID_INTEL_82865_IG 0x2572
-#define PCI_DEVICE_ID_INTEL_82875_HB 0x2578
-#define PCI_DEVICE_ID_INTEL_82875_IG 0x257b
-#define PCI_DEVICE_ID_INTEL_82915G_HB 0x2580
-#define PCI_DEVICE_ID_INTEL_82915G_IG 0x2582
-#define PCI_DEVICE_ID_INTEL_82915GM_HB 0x2590
-#define PCI_DEVICE_ID_INTEL_82915GM_IG 0x2592
-#define PCI_DEVICE_ID_INTEL_82945G_HB 0x2770
-#define PCI_DEVICE_ID_INTEL_82945G_IG 0x2772
-#define PCI_DEVICE_ID_INTEL_ICH6_0 0x2640
-#define PCI_DEVICE_ID_INTEL_ICH6_1 0x2641
-#define PCI_DEVICE_ID_INTEL_ICH6_2 0x2642
-#define PCI_DEVICE_ID_INTEL_ICH6_3 0x2651
-#define PCI_DEVICE_ID_INTEL_ICH6_4 0x2652
-#define PCI_DEVICE_ID_INTEL_ICH6_5 0x2653
-#define PCI_DEVICE_ID_INTEL_ICH6_6 0x2658
-#define PCI_DEVICE_ID_INTEL_ICH6_7 0x2659
-#define PCI_DEVICE_ID_INTEL_ICH6_8 0x265a
-#define PCI_DEVICE_ID_INTEL_ICH6_9 0x265b
-#define PCI_DEVICE_ID_INTEL_ICH6_10 0x265c
-#define PCI_DEVICE_ID_INTEL_ICH6_11 0x2660
-#define PCI_DEVICE_ID_INTEL_ICH6_12 0x2662
-#define PCI_DEVICE_ID_INTEL_ICH6_13 0x2664
-#define PCI_DEVICE_ID_INTEL_ICH6_14 0x2666
-#define PCI_DEVICE_ID_INTEL_ICH6_15 0x2668
-#define PCI_DEVICE_ID_INTEL_ICH6_16 0x266a
-#define PCI_DEVICE_ID_INTEL_ICH6_17 0x266d
-#define PCI_DEVICE_ID_INTEL_ICH6_18 0x266e
-#define PCI_DEVICE_ID_INTEL_ICH6_19 0x266f
-#define PCI_DEVICE_ID_INTEL_ESB2_0 0x2670
-#define PCI_DEVICE_ID_INTEL_ESB2_1 0x2680
-#define PCI_DEVICE_ID_INTEL_ESB2_2 0x2681
-#define PCI_DEVICE_ID_INTEL_ESB2_3 0x2682
-#define PCI_DEVICE_ID_INTEL_ESB2_4 0x2683
-#define PCI_DEVICE_ID_INTEL_ESB2_5 0x2688
-#define PCI_DEVICE_ID_INTEL_ESB2_6 0x2689
-#define PCI_DEVICE_ID_INTEL_ESB2_7 0x268a
-#define PCI_DEVICE_ID_INTEL_ESB2_8 0x268b
-#define PCI_DEVICE_ID_INTEL_ESB2_9 0x268c
-#define PCI_DEVICE_ID_INTEL_ESB2_10 0x2690
-#define PCI_DEVICE_ID_INTEL_ESB2_11 0x2692
-#define PCI_DEVICE_ID_INTEL_ESB2_12 0x2694
-#define PCI_DEVICE_ID_INTEL_ESB2_13 0x2696
-#define PCI_DEVICE_ID_INTEL_ESB2_14 0x2698
-#define PCI_DEVICE_ID_INTEL_ESB2_15 0x2699
-#define PCI_DEVICE_ID_INTEL_ESB2_16 0x269a
-#define PCI_DEVICE_ID_INTEL_ESB2_17 0x269b
-#define PCI_DEVICE_ID_INTEL_ESB2_18 0x269e
-#define PCI_DEVICE_ID_INTEL_ICH7_0 0x27b8
-#define PCI_DEVICE_ID_INTEL_ICH7_1 0x27b9
-#define PCI_DEVICE_ID_INTEL_ICH7_2 0x27c0
-#define PCI_DEVICE_ID_INTEL_ICH7_3 0x27c1
-#define PCI_DEVICE_ID_INTEL_ICH7_30 0x27b0
-#define PCI_DEVICE_ID_INTEL_ICH7_31 0x27bd
-#define PCI_DEVICE_ID_INTEL_ICH7_5 0x27c4
-#define PCI_DEVICE_ID_INTEL_ICH7_6 0x27c5
-#define PCI_DEVICE_ID_INTEL_ICH7_7 0x27c8
-#define PCI_DEVICE_ID_INTEL_ICH7_8 0x27c9
-#define PCI_DEVICE_ID_INTEL_ICH7_9 0x27ca
-#define PCI_DEVICE_ID_INTEL_ICH7_10 0x27cb
-#define PCI_DEVICE_ID_INTEL_ICH7_11 0x27cc
-#define PCI_DEVICE_ID_INTEL_ICH7_12 0x27d0
-#define PCI_DEVICE_ID_INTEL_ICH7_13 0x27d2
-#define PCI_DEVICE_ID_INTEL_ICH7_14 0x27d4
-#define PCI_DEVICE_ID_INTEL_ICH7_15 0x27d6
-#define PCI_DEVICE_ID_INTEL_ICH7_16 0x27d8
-#define PCI_DEVICE_ID_INTEL_ICH7_17 0x27da
-#define PCI_DEVICE_ID_INTEL_ICH7_18 0x27dc
-#define PCI_DEVICE_ID_INTEL_ICH7_19 0x27dd
-#define PCI_DEVICE_ID_INTEL_ICH7_20 0x27de
-#define PCI_DEVICE_ID_INTEL_ICH7_21 0x27df
-#define PCI_DEVICE_ID_INTEL_ICH7_22 0x27e0
-#define PCI_DEVICE_ID_INTEL_ICH7_23 0x27e2
-#define PCI_DEVICE_ID_INTEL_82855PM_HB 0x3340
-#define PCI_DEVICE_ID_INTEL_ESB2_19 0x3500
-#define PCI_DEVICE_ID_INTEL_ESB2_20 0x3501
-#define PCI_DEVICE_ID_INTEL_ESB2_21 0x3504
-#define PCI_DEVICE_ID_INTEL_ESB2_22 0x3505
-#define PCI_DEVICE_ID_INTEL_ESB2_23 0x350c
-#define PCI_DEVICE_ID_INTEL_ESB2_24 0x350d
-#define PCI_DEVICE_ID_INTEL_ESB2_25 0x3510
-#define PCI_DEVICE_ID_INTEL_ESB2_26 0x3511
-#define PCI_DEVICE_ID_INTEL_ESB2_27 0x3514
-#define PCI_DEVICE_ID_INTEL_ESB2_28 0x3515
-#define PCI_DEVICE_ID_INTEL_ESB2_29 0x3518
-#define PCI_DEVICE_ID_INTEL_ESB2_30 0x3519
-#define PCI_DEVICE_ID_INTEL_82830_HB 0x3575
-#define PCI_DEVICE_ID_INTEL_82830_CGC 0x3577
-#define PCI_DEVICE_ID_INTEL_82855GM_HB 0x3580
-#define PCI_DEVICE_ID_INTEL_82855GM_IG 0x3582
-#define PCI_DEVICE_ID_INTEL_E7520_MCH 0x3590
-#define PCI_DEVICE_ID_INTEL_E7320_MCH 0x3592
-#define PCI_DEVICE_ID_INTEL_MCH_PA 0x3595
-#define PCI_DEVICE_ID_INTEL_MCH_PA1 0x3596
-#define PCI_DEVICE_ID_INTEL_MCH_PB 0x3597
-#define PCI_DEVICE_ID_INTEL_MCH_PB1 0x3598
-#define PCI_DEVICE_ID_INTEL_MCH_PC 0x3599
-#define PCI_DEVICE_ID_INTEL_MCH_PC1 0x359a
-#define PCI_DEVICE_ID_INTEL_E7525_MCH 0x359e
-#define PCI_DEVICE_ID_INTEL_80310 0x530d
-#define PCI_DEVICE_ID_INTEL_82371SB_0 0x7000
-#define PCI_DEVICE_ID_INTEL_82371SB_1 0x7010
-#define PCI_DEVICE_ID_INTEL_82371SB_2 0x7020
-#define PCI_DEVICE_ID_INTEL_82437VX 0x7030
-#define PCI_DEVICE_ID_INTEL_82439TX 0x7100
-#define PCI_DEVICE_ID_INTEL_82371AB_0 0x7110
-#define PCI_DEVICE_ID_INTEL_82371AB 0x7111
-#define PCI_DEVICE_ID_INTEL_82371AB_2 0x7112
-#define PCI_DEVICE_ID_INTEL_82371AB_3 0x7113
-#define PCI_DEVICE_ID_INTEL_82810_MC1 0x7120
-#define PCI_DEVICE_ID_INTEL_82810_IG1 0x7121
-#define PCI_DEVICE_ID_INTEL_82810_MC3 0x7122
-#define PCI_DEVICE_ID_INTEL_82810_IG3 0x7123
-#define PCI_DEVICE_ID_INTEL_82810E_MC 0x7124
-#define PCI_DEVICE_ID_INTEL_82810E_IG 0x7125
-#define PCI_DEVICE_ID_INTEL_82443LX_0 0x7180
-#define PCI_DEVICE_ID_INTEL_82443LX_1 0x7181
-#define PCI_DEVICE_ID_INTEL_82443BX_0 0x7190
-#define PCI_DEVICE_ID_INTEL_82443BX_1 0x7191
-#define PCI_DEVICE_ID_INTEL_82443BX_2 0x7192
-#define PCI_DEVICE_ID_INTEL_440MX 0x7195
-#define PCI_DEVICE_ID_INTEL_82443MX_0 0x7198
-#define PCI_DEVICE_ID_INTEL_82443MX_1 0x7199
-#define PCI_DEVICE_ID_INTEL_82443MX_2 0x719a
-#define PCI_DEVICE_ID_INTEL_82443MX_3 0x719b
-#define PCI_DEVICE_ID_INTEL_82443GX_0 0x71a0
-#define PCI_DEVICE_ID_INTEL_82443GX_1 0x71a1
-#define PCI_DEVICE_ID_INTEL_82443GX_2 0x71a2
-#define PCI_DEVICE_ID_INTEL_82372FB_0 0x7600
-#define PCI_DEVICE_ID_INTEL_82372FB_1 0x7601
-#define PCI_DEVICE_ID_INTEL_82372FB_2 0x7602
-#define PCI_DEVICE_ID_INTEL_82372FB_3 0x7603
-#define PCI_DEVICE_ID_INTEL_82454GX 0x84c4
-#define PCI_DEVICE_ID_INTEL_82450GX 0x84c5
-#define PCI_DEVICE_ID_INTEL_82451NX 0x84ca
-#define PCI_DEVICE_ID_INTEL_82454NX 0x84cb
-#define PCI_DEVICE_ID_INTEL_84460GX 0x84ea
-#define PCI_DEVICE_ID_INTEL_IXP4XX 0x8500
-#define PCI_DEVICE_ID_INTEL_IXP2400 0x9001
-#define PCI_DEVICE_ID_INTEL_IXP2800 0x9004
-#define PCI_DEVICE_ID_INTEL_S21152BB 0xb152
-
-#define PCI_VENDOR_ID_COMPUTONE 0x8e0e
-#define PCI_DEVICE_ID_COMPUTONE_IP2EX 0x0291
-#define PCI_DEVICE_ID_COMPUTONE_PG 0x0302
-#define PCI_SUBVENDOR_ID_COMPUTONE 0x8e0e
-#define PCI_SUBDEVICE_ID_COMPUTONE_PG4 0x0001
-#define PCI_SUBDEVICE_ID_COMPUTONE_PG8 0x0002
-#define PCI_SUBDEVICE_ID_COMPUTONE_PG6 0x0003
-
-#define PCI_VENDOR_ID_KTI 0x8e2e
-#define PCI_DEVICE_ID_KTI_ET32P2 0x3000
-
-#define PCI_VENDOR_ID_ADAPTEC 0x9004
-#define PCI_DEVICE_ID_ADAPTEC_7810 0x1078
-#define PCI_DEVICE_ID_ADAPTEC_7821 0x2178
-#define PCI_DEVICE_ID_ADAPTEC_38602 0x3860
-#define PCI_DEVICE_ID_ADAPTEC_7850 0x5078
-#define PCI_DEVICE_ID_ADAPTEC_7855 0x5578
-#define PCI_DEVICE_ID_ADAPTEC_5800 0x5800
-#define PCI_DEVICE_ID_ADAPTEC_3860 0x6038
-#define PCI_DEVICE_ID_ADAPTEC_1480A 0x6075
-#define PCI_DEVICE_ID_ADAPTEC_7860 0x6078
-#define PCI_DEVICE_ID_ADAPTEC_7861 0x6178
-#define PCI_DEVICE_ID_ADAPTEC_7870 0x7078
-#define PCI_DEVICE_ID_ADAPTEC_7871 0x7178
-#define PCI_DEVICE_ID_ADAPTEC_7872 0x7278
-#define PCI_DEVICE_ID_ADAPTEC_7873 0x7378
-#define PCI_DEVICE_ID_ADAPTEC_7874 0x7478
-#define PCI_DEVICE_ID_ADAPTEC_7895 0x7895
-#define PCI_DEVICE_ID_ADAPTEC_7880 0x8078
-#define PCI_DEVICE_ID_ADAPTEC_7881 0x8178
-#define PCI_DEVICE_ID_ADAPTEC_7882 0x8278
-#define PCI_DEVICE_ID_ADAPTEC_7883 0x8378
-#define PCI_DEVICE_ID_ADAPTEC_7884 0x8478
-#define PCI_DEVICE_ID_ADAPTEC_7885 0x8578
-#define PCI_DEVICE_ID_ADAPTEC_7886 0x8678
-#define PCI_DEVICE_ID_ADAPTEC_7887 0x8778
-#define PCI_DEVICE_ID_ADAPTEC_7888 0x8878
-#define PCI_DEVICE_ID_ADAPTEC_1030 0x8b78
-
-#define PCI_VENDOR_ID_ADAPTEC2 0x9005
-#define PCI_DEVICE_ID_ADAPTEC2_2940U2 0x0010
-#define PCI_DEVICE_ID_ADAPTEC2_2930U2 0x0011
-#define PCI_DEVICE_ID_ADAPTEC2_7890B 0x0013
-#define PCI_DEVICE_ID_ADAPTEC2_7890 0x001f
-#define PCI_DEVICE_ID_ADAPTEC2_3940U2 0x0050
-#define PCI_DEVICE_ID_ADAPTEC2_3950U2D 0x0051
-#define PCI_DEVICE_ID_ADAPTEC2_7896 0x005f
-#define PCI_DEVICE_ID_ADAPTEC2_7892A 0x0080
-#define PCI_DEVICE_ID_ADAPTEC2_7892B 0x0081
-#define PCI_DEVICE_ID_ADAPTEC2_7892D 0x0083
-#define PCI_DEVICE_ID_ADAPTEC2_7892P 0x008f
-#define PCI_DEVICE_ID_ADAPTEC2_7899A 0x00c0
-#define PCI_DEVICE_ID_ADAPTEC2_7899B 0x00c1
-#define PCI_DEVICE_ID_ADAPTEC2_7899D 0x00c3
-#define PCI_DEVICE_ID_ADAPTEC2_7899P 0x00cf
-#define PCI_DEVICE_ID_ADAPTEC2_SCAMP 0x0503
-
-#define PCI_VENDOR_ID_ATRONICS 0x907f
-#define PCI_DEVICE_ID_ATRONICS_2015 0x2015
-
-#define PCI_VENDOR_ID_HOLTEK 0x9412
-#define PCI_DEVICE_ID_HOLTEK_6565 0x6565
-
-#define PCI_VENDOR_ID_NETMOS 0x9710
-#define PCI_DEVICE_ID_NETMOS_9705 0x9705
-#define PCI_DEVICE_ID_NETMOS_9715 0x9715
-#define PCI_DEVICE_ID_NETMOS_9735 0x9735
-#define PCI_DEVICE_ID_NETMOS_9745 0x9745
-#define PCI_DEVICE_ID_NETMOS_9755 0x9755
-#define PCI_DEVICE_ID_NETMOS_9805 0x9805
-#define PCI_DEVICE_ID_NETMOS_9815 0x9815
-#define PCI_DEVICE_ID_NETMOS_9835 0x9835
-#define PCI_DEVICE_ID_NETMOS_9845 0x9845
-#define PCI_DEVICE_ID_NETMOS_9855 0x9855
-
-#define PCI_SUBVENDOR_ID_EXSYS 0xd84d
-#define PCI_SUBDEVICE_ID_EXSYS_4014 0x4014
-
-#define PCI_VENDOR_ID_TIGERJET 0xe159
-#define PCI_DEVICE_ID_TIGERJET_300 0x0001
-#define PCI_DEVICE_ID_TIGERJET_100 0x0002
-
-#define PCI_VENDOR_ID_TTTECH 0x0357
-#define PCI_DEVICE_ID_TTTECH_MC322 0x000A
-
-#define PCI_VENDOR_ID_ARK 0xedd8
-#define PCI_DEVICE_ID_ARK_STING 0xa091
-#define PCI_DEVICE_ID_ARK_STINGARK 0xa099
-#define PCI_DEVICE_ID_ARK_2000MT 0xa0a1
diff --git a/BaS_gcc/include/queue.h b/BaS_gcc/include/queue.h
deleted file mode 100644
index f8fc229..0000000
--- a/BaS_gcc/include/queue.h
+++ /dev/null
@@ -1,51 +0,0 @@
-/*
- * File: queue.h
- * Purpose: Implement a first in, first out linked list
- *
- * Notes:
- */
-
-#ifndef _QUEUE_H_
-#define _QUEUE_H_
-
-/*
- * Individual queue node
- */
-typedef struct NODE
-{
- struct NODE *next;
-} QNODE;
-
-/*
- * Queue Struture - linked list of qentry items
- */
-typedef struct
-{
- QNODE *head;
- QNODE *tail;
-} QUEUE;
-
-/*
- * Functions provided by queue.c
- */
-void
-queue_init(QUEUE *);
-
-int
-queue_isempty(QUEUE *);
-
-void
-queue_add(QUEUE *, QNODE *);
-
-QNODE*
-queue_remove(QUEUE *);
-
-QNODE*
-queue_peek(QUEUE *);
-
-void
-queue_move(QUEUE *, QUEUE *);
-
-/********************************************************************/
-
-#endif /* _QUEUE_H_ */
diff --git a/BaS_gcc/include/radeon_reg.h b/BaS_gcc/include/radeon_reg.h
deleted file mode 100644
index f11039e..0000000
--- a/BaS_gcc/include/radeon_reg.h
+++ /dev/null
@@ -1,5648 +0,0 @@
-#ifndef _RADEON_H
-#define _RADEON_H
-
-/* to fix: multiple definition from Linux defines and Xfree defines added for VIDX and RENDER */
-
-#define RADEON_REGSIZE 0x4000
-
-#define MM_INDEX 0x0000
-#define MM_DATA 0x0004
-#define RADEON_BIOS_0_SCRATCH 0x0010
-#define RADEON_BIOS_1_SCRATCH 0x0014
-#define RADEON_BIOS_2_SCRATCH 0x0018
-#define RADEON_BIOS_3_SCRATCH 0x001c
-#define RADEON_BIOS_4_SCRATCH 0x0020
-#define RADEON_BIOS_5_SCRATCH 0x0024
-#define RADEON_BIOS_6_SCRATCH 0x0028
-#define RADEON_BIOS_7_SCRATCH 0x002c
-#define BUS_CNTL 0x0030
-#define BUS_CNTL1 0x0034
-#define MEM_VGA_WP_SEL 0x0038
-#define MEM_VGA_RP_SEL 0x003C
-#define GEN_INT_CNTL 0x0040
-#define GEN_INT_STATUS 0x0044
-#define HI_STAT 0x004C
-#define CRTC_GEN_CNTL 0x0050
-#define CRTC_EXT_CNTL 0x0054
-#define DAC_CNTL 0x0058
-#define CRTC_STATUS 0x005C
-#define GPIO_VGA_DDC 0x0060
-#define GPIO_DVI_DDC 0x0064
-#define GPIO_MONID 0x0068
-#define GPIO_CRT2_DDC 0x006c
-
-#define I2C_CNTL_1 0x0094
-#define CONFIG_CNTL 0x00E0
-#define CONFIG_MEMSIZE 0x00F8
-#define CONFIG_APER_0_BASE 0x0100
-#define CONFIG_APER_1_BASE 0x0104
-#define CONFIG_APER_SIZE 0x0108
-#define CONFIG_REG_1_BASE 0x010C
-#define CONFIG_REG_APER_SIZE 0x0110
-#define PAD_AGPINPUT_DELAY 0x0164
-#define PAD_CTLR_STRENGTH 0x0168
-#define PAD_CTLR_UPDATE 0x016C
-#define PAD_CTLR_MISC 0x0aa0
-#define AGP_CNTL 0x0174
-#define BM_STATUS 0x0160
-#define CAP0_TRIG_CNTL 0x0950
-#define CAP1_TRIG_CNTL 0x09c0
-#define VENDOR_ID 0x0F00
-#define DEVICE_ID 0x0F02
-#define COMMAND 0x0F04
-#define STATUS 0x0F06
-#define REVISION_ID 0x0F08
-#define REGPROG_INF 0x0F09
-#define SUB_CLASS 0x0F0A
-#define BASE_CODE 0x0F0B
-#define CACHE_LINE 0x0F0C
-#define LATENCY 0x0F0D
-#define HEADER 0x0F0E
-#define BIST 0x0F0F
-#define REG_MEM_BASE 0x0F10
-#define REG_IO_BASE 0x0F14
-#define REG_REG_BASE 0x0F18
-#define ADAPTER_ID 0x0F2C
-#define BIOS_ROM 0x0F30
-#define CAPABILITIES_PTR 0x0F34
-#define INTERRUPT_LINE 0x0F3C
-#define INTERRUPT_PIN 0x0F3D
-#define MIN_GRANT 0x0F3E
-#define MAX_LATENCY 0x0F3F
-#define ADAPTER_ID_W 0x0F4C
-#define PMI_CAP_ID 0x0F50
-#define PMI_NXT_CAP_PTR 0x0F51
-#define PMI_PMC_REG 0x0F52
-#define PM_STATUS 0x0F54
-#define PMI_DATA 0x0F57
-#define AGP_CAP_ID 0x0F58
-#define AGP_STATUS 0x0F5C
-#define AGP_COMMAND 0x0F60
-#define AIC_CTRL 0x01D0
-#define AIC_STAT 0x01D4
-#define AIC_PT_BASE 0x01D8
-#define AIC_LO_ADDR 0x01DC
-#define AIC_HI_ADDR 0x01E0
-#define AIC_TLB_ADDR 0x01E4
-#define AIC_TLB_DATA 0x01E8
-#define DAC_CNTL2 0x007c
-#define MEM_CNTL 0x0140
-#define MC_CNTL 0x0140
-#define EXT_MEM_CNTL 0x0144
-#define MC_TIMING_CNTL 0x0144
-#define MC_AGP_LOCATION 0x014C
-#define MEM_IO_CNTL_A0 0x0178
-#define MEM_REFRESH_CNTL 0x0178
-#define MEM_INIT_LATENCY_TIMER 0x0154
-#define MC_INIT_GFX_LAT_TIMER 0x0154
-#define MEM_SDRAM_MODE_REG 0x0158
-#define AGP_BASE 0x0170
-#define MEM_IO_CNTL_A1 0x017C
-#define MC_READ_CNTL_AB 0x017C
-#define MEM_IO_CNTL_B0 0x0180
-#define MC_INIT_MISC_LAT_TIMER 0x0180
-#define MEM_IO_CNTL_B1 0x0184
-#define MC_IOPAD_CNTL 0x0184
-#define MC_DEBUG 0x0188
-#define MC_STATUS 0x0150
-#define MEM_IO_OE_CNTL 0x018C
-#define MC_CHIP_IO_OE_CNTL_AB 0x018C
-#define MC_FB_LOCATION 0x0148
-#define HOST_PATH_CNTL 0x0130
-#define HDP_DEBUG 0x0138
-#define SW_SEMAPHORE 0x013C
-#define TEST_DEBUG_CNTL 0x0120
-#define TEST_DEBUG_MUX 0x0124
-#define TEST_DEBUG_OUT 0x012c
-#define CRTC2_GEN_CNTL 0x03f8
-#define CRTC2_DISPLAY_BASE_ADDR 0x033c
-#define SURFACE_CNTL 0x0B00
-#define SURFACE0_LOWER_BOUND 0x0B04
-#define SURFACE1_LOWER_BOUND 0x0B14
-#define SURFACE2_LOWER_BOUND 0x0B24
-#define SURFACE3_LOWER_BOUND 0x0B34
-#define SURFACE4_LOWER_BOUND 0x0B44
-#define SURFACE5_LOWER_BOUND 0x0B54
-#define SURFACE6_LOWER_BOUND 0x0B64
-#define SURFACE7_LOWER_BOUND 0x0B74
-#define SURFACE0_UPPER_BOUND 0x0B08
-#define SURFACE1_UPPER_BOUND 0x0B18
-#define SURFACE2_UPPER_BOUND 0x0B28
-#define SURFACE3_UPPER_BOUND 0x0B38
-#define SURFACE4_UPPER_BOUND 0x0B48
-#define SURFACE5_UPPER_BOUND 0x0B58
-#define SURFACE6_UPPER_BOUND 0x0B68
-#define SURFACE7_UPPER_BOUND 0x0B78
-#define SURFACE0_INFO 0x0B0C
-#define SURFACE1_INFO 0x0B1C
-#define SURFACE2_INFO 0x0B2C
-#define SURFACE3_INFO 0x0B3C
-#define SURFACE4_INFO 0x0B4C
-#define SURFACE5_INFO 0x0B5C
-#define SURFACE6_INFO 0x0B6C
-#define SURFACE7_INFO 0x0B7C
-#define SURFACE_ACCESS_FLAGS 0x0BF8
-#define SURFACE_ACCESS_CLR 0x0BFC
-#define BRUSH_DATA0 0x1480
-#define BRUSH_DATA1 0x1484
-#define BRUSH_DATA2 0x1488
-#define BRUSH_DATA3 0x148c
-#define BRUSH_DATA4 0x1490
-#define BRUSH_DATA5 0x1494
-#define BRUSH_DATA7 0x149c
-#define BRUSH_DATA8 0x14a0
-#define BRUSH_DATA9 0x14a4
-#define BRUSH_DATA10 0x14a8
-#define BRUSH_DATA11 0x14ac
-#define BRUSH_DATA12 0x14b0
-#define BRUSH_DATA13 0x14b4
-#define BRUSH_DATA14 0x14b8
-#define BRUSH_DATA15 0x14bc
-#define BRUSH_DATA16 0x14c0
-#define BRUSH_DATA17 0x14c4
-#define BRUSH_DATA18 0x14c8
-#define BRUSH_DATA19 0x14cc
-#define BRUSH_DATA20 0x14d0
-#define BRUSH_DATA21 0x14d4
-#define BRUSH_DATA22 0x14d8
-#define BRUSH_DATA23 0x14dc
-#define BRUSH_DATA24 0x14e0
-#define BRUSH_DATA25 0x14e4
-#define BRUSH_DATA26 0x14e8
-#define BRUSH_DATA27 0x14ec
-#define BRUSH_DATA28 0x14f0
-#define BRUSH_DATA29 0x14f4
-#define BRUSH_DATA30 0x14f8
-#define BRUSH_DATA31 0x14fc
-#define BRUSH_DATA32 0x1500
-#define BRUSH_DATA33 0x1504
-#define BRUSH_DATA34 0x1508
-#define BRUSH_DATA35 0x150c
-#define BRUSH_DATA36 0x1510
-#define BRUSH_DATA37 0x1514
-#define BRUSH_DATA38 0x1518
-#define BRUSH_DATA39 0x151c
-#define BRUSH_DATA40 0x1520
-#define BRUSH_DATA41 0x1524
-#define BRUSH_DATA42 0x1528
-#define BRUSH_DATA43 0x152c
-#define BRUSH_DATA44 0x1530
-#define BRUSH_DATA45 0x1534
-#define BRUSH_DATA46 0x1538
-#define BRUSH_DATA47 0x153c
-#define BRUSH_DATA48 0x1540
-#define BRUSH_DATA49 0x1544
-#define BRUSH_DATA50 0x1548
-#define BRUSH_DATA51 0x154c
-#define BRUSH_DATA52 0x1550
-#define BRUSH_DATA53 0x1554
-#define BRUSH_DATA54 0x1558
-#define BRUSH_DATA55 0x155c
-#define BRUSH_DATA56 0x1560
-#define BRUSH_DATA57 0x1564
-#define BRUSH_DATA58 0x1568
-#define BRUSH_DATA59 0x156c
-#define BRUSH_DATA6 0x1498
-#define BRUSH_DATA60 0x1570
-#define BRUSH_DATA61 0x1574
-#define BRUSH_DATA62 0x1578
-#define BRUSH_DATA63 0x157c
-#define BRUSH_SCALE 0x1470
-#define BRUSH_Y_X 0x1474
-#define RB3D_CNTL 0x1C3C
-#define WAIT_UNTIL 0x1720
-#define ISYNC_CNTL 0x1724
-#define RBBM_GUICNTL 0x172C
-#define RBBM_STATUS 0x0E40
-#define RBBM_STATUS_alt_1 0x1740
-#define RBBM_CNTL 0x00EC
-#define RBBM_CNTL_alt_1 0x0E44
-#define RBBM_SOFT_RESET 0x00F0
-#define RBBM_SOFT_RESET_alt_1 0x0E48
-#define NQWAIT_UNTIL 0x0E50
-#define RBBM_DEBUG 0x0E6C
-#define RBBM_CMDFIFO_ADDR 0x0E70
-#define RBBM_CMDFIFO_DATAL 0x0E74
-#define RBBM_CMDFIFO_DATAH 0x0E78
-#define RBBM_CMDFIFO_STAT 0x0E7C
-#define PALETTE_INDEX 0x00B0
-#define PALETTE_DATA 0x00B4
-#define PALETTE_30_DATA 0x00B8
-#define CRTC_H_TOTAL_DISP 0x0200
-#define CRTC_H_SYNC_STRT_WID 0x0204
-#define CRTC_V_TOTAL_DISP 0x0208
-#define CRTC_V_SYNC_STRT_WID 0x020C
-#define CRTC_VLINE_CRNT_VLINE 0x0210
-#define CRTC_CRNT_FRAME 0x0214
-#define CRTC_GUI_TRIG_VLINE 0x0218
-#define CRTC_DEBUG 0x021C
-#define CRTC_OFFSET_RIGHT 0x0220
-#define CRTC_OFFSET 0x0224
-#define CRTC_OFFSET_CNTL 0x0228
-#define CRTC_PITCH 0x022C
-#define OVR_CLR 0x0230
-#define OVR_WID_LEFT_RIGHT 0x0234
-#define OVR_WID_TOP_BOTTOM 0x0238
-#define DISPLAY_BASE_ADDR 0x023C
-#define SNAPSHOT_VH_COUNTS 0x0240
-#define SNAPSHOT_F_COUNT 0x0244
-#define N_VIF_COUNT 0x0248
-#define SNAPSHOT_VIF_COUNT 0x024C
-#define FP_CRTC_H_TOTAL_DISP 0x0250
-#define FP_CRTC_V_TOTAL_DISP 0x0254
-#define CRT_CRTC_H_SYNC_STRT_WID 0x0258
-#define CRT_CRTC_V_SYNC_STRT_WID 0x025C
-#define CUR_OFFSET 0x0260
-#define CUR_HORZ_VERT_POSN 0x0264
-#define CUR_HORZ_VERT_OFF 0x0268
-#define CUR_CLR0 0x026C
-#define CUR_CLR1 0x0270
-#define FP_HORZ_VERT_ACTIVE 0x0278
-#define CRTC_MORE_CNTL 0x027C
-#define CRTC_H_CUTOFF_ACTIVE_EN (1<<4)
-#define CRTC_V_CUTOFF_ACTIVE_EN (1<<5)
-#define DAC_EXT_CNTL 0x0280
-#define FP_GEN_CNTL 0x0284
-#define FP_HORZ_STRETCH 0x028C
-#define FP_VERT_STRETCH 0x0290
-#define FP_H_SYNC_STRT_WID 0x02C4
-#define FP_V_SYNC_STRT_WID 0x02C8
-#define AUX_WINDOW_HORZ_CNTL 0x02D8
-#define AUX_WINDOW_VERT_CNTL 0x02DC
-//#define DDA_CONFIG 0x02e0
-//#define DDA_ON_OFF 0x02e4
-#define DVI_I2C_CNTL_1 0x02e4
-#define GRPH_BUFFER_CNTL 0x02F0
-#define GRPH2_BUFFER_CNTL 0x03F0
-#define VGA_BUFFER_CNTL 0x02F4
-#define OV0_Y_X_START 0x0400
-#define OV0_Y_X_END 0x0404
-#define OV0_PIPELINE_CNTL 0x0408
-#define OV0_REG_LOAD_CNTL 0x0410
-#define OV0_SCALE_CNTL 0x0420
-#define OV0_V_INC 0x0424
-#define OV0_P1_V_ACCUM_INIT 0x0428
-#define OV0_P23_V_ACCUM_INIT 0x042C
-#define OV0_P1_BLANK_LINES_AT_TOP 0x0430
-#define OV0_P23_BLANK_LINES_AT_TOP 0x0434
-#define OV0_BASE_ADDR 0x043C
-#define OV0_VID_BUF0_BASE_ADRS 0x0440
-#define OV0_VID_BUF1_BASE_ADRS 0x0444
-#define OV0_VID_BUF2_BASE_ADRS 0x0448
-#define OV0_VID_BUF3_BASE_ADRS 0x044C
-#define OV0_VID_BUF4_BASE_ADRS 0x0450
-#define OV0_VID_BUF5_BASE_ADRS 0x0454
-#define OV0_VID_BUF_PITCH0_VALUE 0x0460
-#define OV0_VID_BUF_PITCH1_VALUE 0x0464
-#define OV0_AUTO_FLIP_CNTRL 0x0470
-#define OV0_DEINTERLACE_PATTERN 0x0474
-#define OV0_SUBMIT_HISTORY 0x0478
-#define OV0_H_INC 0x0480
-#define OV0_STEP_BY 0x0484
-#define OV0_P1_H_ACCUM_INIT 0x0488
-#define OV0_P23_H_ACCUM_INIT 0x048C
-#define OV0_P1_X_START_END 0x0494
-#define OV0_P2_X_START_END 0x0498
-#define OV0_P3_X_START_END 0x049C
-#define OV0_FILTER_CNTL 0x04A0
-#define OV0_FOUR_TAP_COEF_0 0x04B0
-#define OV0_FOUR_TAP_COEF_1 0x04B4
-#define OV0_FOUR_TAP_COEF_2 0x04B8
-#define OV0_FOUR_TAP_COEF_3 0x04BC
-#define OV0_FOUR_TAP_COEF_4 0x04C0
-#define OV0_FLAG_CNTRL 0x04DC
-#define OV0_SLICE_CNTL 0x04E0
-#define OV0_VID_KEY_CLR_LOW 0x04E4
-#define OV0_VID_KEY_CLR_HIGH 0x04E8
-#define OV0_GRPH_KEY_CLR_LOW 0x04EC
-#define OV0_GRPH_KEY_CLR_HIGH 0x04F0
-#define OV0_KEY_CNTL 0x04F4
-#define OV0_TEST 0x04F8
-#define SUBPIC_CNTL 0x0540
-#define SUBPIC_DEFCOLCON 0x0544
-#define SUBPIC_Y_X_START 0x054C
-#define SUBPIC_Y_X_END 0x0550
-#define SUBPIC_V_INC 0x0554
-#define SUBPIC_H_INC 0x0558
-#define SUBPIC_BUF0_OFFSET 0x055C
-#define SUBPIC_BUF1_OFFSET 0x0560
-#define SUBPIC_LC0_OFFSET 0x0564
-#define SUBPIC_LC1_OFFSET 0x0568
-#define SUBPIC_PITCH 0x056C
-#define SUBPIC_BTN_HLI_COLCON 0x0570
-#define SUBPIC_BTN_HLI_Y_X_START 0x0574
-#define SUBPIC_BTN_HLI_Y_X_END 0x0578
-#define SUBPIC_PALETTE_INDEX 0x057C
-#define SUBPIC_PALETTE_DATA 0x0580
-#define SUBPIC_H_ACCUM_INIT 0x0584
-#define SUBPIC_V_ACCUM_INIT 0x0588
-#define DISP_MISC_CNTL 0x0D00
-#define DAC_MACRO_CNTL 0x0D04
-#define DISP_PWR_MAN 0x0D08
-#define DISP_TEST_DEBUG_CNTL 0x0D10
-#define DISP_HW_DEBUG 0x0D14
-#define DAC_CRC_SIG1 0x0D18
-#define DAC_CRC_SIG2 0x0D1C
-#define OV0_LIN_TRANS_A 0x0D20
-#define OV0_LIN_TRANS_B 0x0D24
-#define OV0_LIN_TRANS_C 0x0D28
-#define OV0_LIN_TRANS_D 0x0D2C
-#define OV0_LIN_TRANS_E 0x0D30
-#define OV0_LIN_TRANS_F 0x0D34
-#define OV0_GAMMA_0_F 0x0D40
-#define OV0_GAMMA_10_1F 0x0D44
-#define OV0_GAMMA_20_3F 0x0D48
-#define OV0_GAMMA_40_7F 0x0D4C
-#define OV0_GAMMA_380_3BF 0x0D50
-#define OV0_GAMMA_3C0_3FF 0x0D54
-#define DISP_MERGE_CNTL 0x0D60
-#define DISP_OUTPUT_CNTL 0x0D64
-#define DISP_LIN_TRANS_GRPH_A 0x0D80
-#define DISP_LIN_TRANS_GRPH_B 0x0D84
-#define DISP_LIN_TRANS_GRPH_C 0x0D88
-#define DISP_LIN_TRANS_GRPH_D 0x0D8C
-#define DISP_LIN_TRANS_GRPH_E 0x0D90
-#define DISP_LIN_TRANS_GRPH_F 0x0D94
-#define DISP_LIN_TRANS_VID_A 0x0D98
-#define DISP_LIN_TRANS_VID_B 0x0D9C
-#define DISP_LIN_TRANS_VID_C 0x0DA0
-#define DISP_LIN_TRANS_VID_D 0x0DA4
-#define DISP_LIN_TRANS_VID_E 0x0DA8
-#define DISP_LIN_TRANS_VID_F 0x0DAC
-#define RMX_HORZ_FILTER_0TAP_COEF 0x0DB0
-#define RMX_HORZ_FILTER_1TAP_COEF 0x0DB4
-#define RMX_HORZ_FILTER_2TAP_COEF 0x0DB8
-#define RMX_HORZ_PHASE 0x0DBC
-#define DAC_EMBEDDED_SYNC_CNTL 0x0DC0
-#define DAC_BROAD_PULSE 0x0DC4
-#define DAC_SKEW_CLKS 0x0DC8
-#define DAC_INCR 0x0DCC
-#define DAC_NEG_SYNC_LEVEL 0x0DD0
-#define DAC_POS_SYNC_LEVEL 0x0DD4
-#define DAC_BLANK_LEVEL 0x0DD8
-#define CLOCK_CNTL_INDEX 0x0008
-#define CLOCK_CNTL_DATA 0x000C
-#define CP_RB_CNTL 0x0704
-#define CP_RB_BASE 0x0700
-#define CP_RB_RPTR_ADDR 0x070C
-#define CP_RB_RPTR 0x0710
-#define CP_RB_WPTR 0x0714
-#define CP_RB_WPTR_DELAY 0x0718
-#define CP_IB_BASE 0x0738
-#define CP_IB_BUFSZ 0x073C
-#define SCRATCH_REG0 0x15E0
-#define GUI_SCRATCH_REG0 0x15E0
-#define SCRATCH_REG1 0x15E4
-#define GUI_SCRATCH_REG1 0x15E4
-#define SCRATCH_REG2 0x15E8
-#define GUI_SCRATCH_REG2 0x15E8
-#define SCRATCH_REG3 0x15EC
-#define GUI_SCRATCH_REG3 0x15EC
-#define SCRATCH_REG4 0x15F0
-#define GUI_SCRATCH_REG4 0x15F0
-#define SCRATCH_REG5 0x15F4
-#define GUI_SCRATCH_REG5 0x15F4
-#define SCRATCH_UMSK 0x0770
-#define SCRATCH_ADDR 0x0774
-#define DP_BRUSH_FRGD_CLR 0x147C
-#define DP_BRUSH_BKGD_CLR 0x1478
-#define DST_LINE_START 0x1600
-#define DST_LINE_END 0x1604
-#define DST_LINE_PATCOUNT 0x1608
-#define SRC_OFFSET 0x15AC
-#define SRC_PITCH 0x15B0
-#define SRC_TILE 0x1704
-#define SRC_PITCH_OFFSET 0x1428
-#define SRC_X 0x1414
-#define SRC_Y 0x1418
-#define SRC_X_Y 0x1590
-#define SRC_Y_X 0x1434
-#define DST_Y_X 0x1438
-#define DST_WIDTH_HEIGHT 0x1598
-#define DST_HEIGHT_WIDTH 0x143c
-#define DST_OFFSET 0x1404
-#define SRC_CLUT_ADDRESS 0x1780
-#define SRC_CLUT_DATA 0x1784
-#define SRC_CLUT_DATA_RD 0x1788
-#define HOST_DATA0 0x17C0
-#define HOST_DATA1 0x17C4
-#define HOST_DATA2 0x17C8
-#define HOST_DATA3 0x17CC
-#define HOST_DATA4 0x17D0
-#define HOST_DATA5 0x17D4
-#define HOST_DATA6 0x17D8
-#define HOST_DATA7 0x17DC
-#define HOST_DATA_LAST 0x17E0
-#define DP_SRC_ENDIAN 0x15D4
-#define DP_SRC_FRGD_CLR 0x15D8
-#define DP_SRC_BKGD_CLR 0x15DC
-#define SC_LEFT 0x1640
-#define SC_RIGHT 0x1644
-#define SC_TOP 0x1648
-#define SC_BOTTOM 0x164C
-#define SRC_SC_RIGHT 0x1654
-#define SRC_SC_BOTTOM 0x165C
-#define DP_CNTL 0x16C0
-#define DP_CNTL_XDIR_YDIR_YMAJOR 0x16D0
-#define DP_DATATYPE 0x16C4
-#define DP_MIX 0x16C8
-#define DP_WRITE_MSK 0x16CC
-#define DP_XOP 0x17F8
-#define CLR_CMP_CLR_SRC 0x15C4
-#define CLR_CMP_CLR_DST 0x15C8
-#define CLR_CMP_CNTL 0x15C0
-#define CLR_CMP_MSK 0x15CC
-#define DSTCACHE_MODE 0x1710
-#define DSTCACHE_CTLSTAT 0x1714
-#define DEFAULT_PITCH_OFFSET 0x16E0
-#define DEFAULT_OFFSET 0x16e0
-#define DEFAULT_PITCH 0x16e4
-#define DEFAULT_SC_BOTTOM_RIGHT 0x16E8
-#define DEFAULT_SC_TOP_LEFT 0x16EC
-#define SRC_PITCH_OFFSET 0x1428
-#define DST_PITCH_OFFSET 0x142C
-#define DP_GUI_MASTER_CNTL 0x146C
-#define SC_TOP_LEFT 0x16EC
-#define SC_BOTTOM_RIGHT 0x16F0
-#define SRC_SC_BOTTOM_RIGHT 0x16F4
-#define RB2D_DSTCACHE_MODE 0x3428
-#define RB2D_DSTCACHE_CTLSTAT 0x342C
-#define LVDS_GEN_CNTL 0x02d0
-#define LVDS_PLL_CNTL 0x02d4
-#define FP2_GEN_CNTL 0x0288
-#define TMDS_CNTL 0x0294
-#define TMDS_CRC 0x02a0
-#define TMDS_TRANSMITTER_CNTL 0x02a4
-#define MPP_TB_CONFIG 0x01c0
-#define PAMAC0_DLY_CNTL 0x0a94
-#define PAMAC1_DLY_CNTL 0x0a98
-#define PAMAC2_DLY_CNTL 0x0a9c
-#define FW_CNTL 0x0118
-#define FCP_CNTL 0x0910
-#define VGA_DDA_ON_OFF 0x02ec
-#define TV_MASTER_CNTL 0x0800
-
-#define BIOS_0_SCRATCH 0x0010
-#define BIOS_1_SCRATCH 0x0014
-#define BIOS_2_SCRATCH 0x0018
-#define BIOS_3_SCRATCH 0x001c
-#define BIOS_4_SCRATCH 0x0020
-#define BIOS_5_SCRATCH 0x0024
-#define BIOS_6_SCRATCH 0x0028
-#define BIOS_7_SCRATCH 0x002c
-
-#define HDP_SOFT_RESET (1 << 26)
-
-#define TV_DAC_CNTL 0x088c
-#define GPIOPAD_MASK 0x0198
-#define GPIOPAD_A 0x019c
-#define GPIOPAD_EN 0x01a0
-#define GPIOPAD_Y 0x01a4
-#define ZV_LCDPAD_MASK 0x01a8
-#define ZV_LCDPAD_A 0x01ac
-#define ZV_LCDPAD_EN 0x01b0
-#define ZV_LCDPAD_Y 0x01b4
-
-/* PLL Registers */
-#define CLK_PIN_CNTL 0x0001
-#define PPLL_CNTL 0x0002
-#define PPLL_REF_DIV 0x0003
-#define PPLL_DIV_0 0x0004
-#define PPLL_DIV_1 0x0005
-#define PPLL_DIV_2 0x0006
-#define PPLL_DIV_3 0x0007
-#define VCLK_ECP_CNTL 0x0008
-#define HTOTAL_CNTL 0x0009
-#define M_SPLL_REF_FB_DIV 0x000a
-#define AGP_PLL_CNTL 0x000b
-#define SPLL_CNTL 0x000c
-#define SCLK_CNTL 0x000d
-#define MPLL_CNTL 0x000e
-#define MDLL_CKO 0x000f
-#define MDLL_RDCKA 0x0010
-#define MCLK_CNTL 0x0012
-#define AGP_PLL_CNTL 0x000b
-#define PLL_TEST_CNTL 0x0013
-#define CLK_PWRMGT_CNTL 0x0014
-#define PLL_PWRMGT_CNTL 0x0015
-#define MCLK_MISC 0x001f
-#define P2PLL_CNTL 0x002a
-#define P2PLL_REF_DIV 0x002b
-#define PIXCLKS_CNTL 0x002d
-#define SCLK_MORE_CNTL 0x0035
-
-/* MCLK_CNTL bit constants */
-#define FORCEON_MCLKA (1 << 16)
-#define FORCEON_MCLKB (1 << 17)
-#define FORCEON_YCLKA (1 << 18)
-#define FORCEON_YCLKB (1 << 19)
-#define FORCEON_MC (1 << 20)
-#define FORCEON_AIC (1 << 21)
-
-/* SCLK_CNTL bit constants */
-#define DYN_STOP_LAT_MASK 0x00007ff8
-#define CP_MAX_DYN_STOP_LAT 0x0008
-#define SCLK_FORCEON_MASK 0xffff8000
-
-/* SCLK_MORE_CNTL bit constants */
-#define SCLK_MORE_FORCEON 0x0700
-
-/* BUS_CNTL bit constants */
-#define BUS_DBL_RESYNC 0x00000001
-#define BUS_MSTR_RESET 0x00000002
-#define BUS_FLUSH_BUF 0x00000004
-#define BUS_STOP_REQ_DIS 0x00000008
-#define BUS_ROTATION_DIS 0x00000010
-#define BUS_MASTER_DIS 0x00000040
-#define BUS_ROM_WRT_EN 0x00000080
-#define BUS_DIS_ROM 0x00001000
-#define BUS_PCI_READ_RETRY_EN 0x00002000
-#define BUS_AGP_AD_STEPPING_EN 0x00004000
-#define BUS_PCI_WRT_RETRY_EN 0x00008000
-#define BUS_MSTR_RD_MULT 0x00100000
-#define BUS_MSTR_RD_LINE 0x00200000
-#define BUS_SUSPEND 0x00400000
-#define LAT_16X 0x00800000
-#define BUS_RD_DISCARD_EN 0x01000000
-#define BUS_RD_ABORT_EN 0x02000000
-#define BUS_MSTR_WS 0x04000000
-#define BUS_PARKING_DIS 0x08000000
-#define BUS_MSTR_DISCONNECT_EN 0x10000000
-#define BUS_WRT_BURST 0x20000000
-#define BUS_READ_BURST 0x40000000
-#define BUS_RDY_READ_DLY 0x80000000
-
-/* PIXCLKS_CNTL */
-#define PIX2CLK_SRC_SEL_MASK 0x03
-#define PIX2CLK_SRC_SEL_CPUCLK 0x00
-#define PIX2CLK_SRC_SEL_PSCANCLK 0x01
-#define PIX2CLK_SRC_SEL_BYTECLK 0x02
-#define PIX2CLK_SRC_SEL_P2PLLCLK 0x03
-#define PIX2CLK_ALWAYS_ONb (1<<6)
-#define PIX2CLK_DAC_ALWAYS_ONb (1<<7)
-#define PIXCLK_TV_SRC_SEL (1 << 8)
-#define PIXCLK_LVDS_ALWAYS_ONb (1 << 14)
-#define PIXCLK_TMDS_ALWAYS_ONb (1 << 15)
-
-/* CLOCK_CNTL_INDEX bit constants */
-#define PLL_WR_EN 0x00000080
-
-/* CONFIG_CNTL bit constants */
-#define CFG_VGA_RAM_EN 0x00000100
-#define CFG_ATI_REV_ID_MASK (0xf << 16)
-#define CFG_ATI_REV_A11 (0 << 16)
-#define CFG_ATI_REV_A12 (1 << 16)
-#define CFG_ATI_REV_A13 (2 << 16)
-
-/* CRTC_EXT_CNTL bit constants */
-#define VGA_ATI_LINEAR 0x00000008
-#define VGA_128KAP_PAGING 0x00000010
-#define XCRT_CNT_EN (1 << 6)
-#define CRTC_HSYNC_DIS (1 << 8)
-#define CRTC_VSYNC_DIS (1 << 9)
-#define CRTC_DISPLAY_DIS (1 << 10)
-#define CRTC_CRT_ON (1 << 15)
-
-/* DSTCACHE_CTLSTAT bit constants */
-#define RB2D_DC_FLUSH (3 << 0)
-#define RB2D_DC_FREE (3 << 2)
-#define RB2D_DC_FLUSH_ALL 0xf
-#define RB2D_DC_BUSY (1 << 31)
-
-/* CRTC_GEN_CNTL bit constants */
-#define CRTC_DBL_SCAN_EN (1 << 0)
-#define CRTC_INTERLACE_EN (1 << 1)
-#define CRTC_CSYNC_EN (1 << 4)
-#define CRTC_BYPASS_LUT_EN (1 << 14)
-#define CRTC_CUR_EN (1 << 16)
-#define CRTC_CUR_MODE_MASK (7 << 17)
-#define CRTC_ICON_EN (1 << 20)
-#define CRTC_EXT_DISP_EN (1 << 24)
-#define CRTC_EN (1 << 25)
-#define CRTC_DISP_REQ_EN_B (1 << 26)
-
-/* CRTC2_GEN_CTRL bit constants */
-#define CRTC2_DBL_SCAN_EN (1 << 0)
-#define CRTC2_INTERLACE_EN (1 << 1)
-#define CRTC2_SYNC_TRISTAT (1 << 4)
-#define CRTC2_HSYNC_TRISTAT (1 << 5)
-#define CRTC2_VSYNC_TRISTAT (1 << 6)
-#define CRTC2_CRT2_ON (1 << 7)
-#define CRTC2_ICON_EN (1 << 15)
-#define CRTC2_CUR_EN (1 << 16)
-#define CRTC2_CUR_MODE_MASK (7 << 20)
-#define CRTC2_DISP_DIS (1 << 23)
-#define CRTC2_EN (1 << 25)
-#define CRTC2_DISP_REQ_EN_B (1 << 26)
-#define CRTC2_CSYNC_EN (1 << 27)
-#define CRTC2_HSYNC_DIS (1 << 28)
-#define CRTC2_VSYNC_DIS (1 << 29)
-
-/* CRTC_STATUS bit constants */
-#define CRTC_VBLANK 0x00000001
-
-/* CRTC2_GEN_CNTL bit constants */
-#define CRT2_ON (1 << 7)
-#define CRTC2_DISPLAY_DIS (1 << 23)
-#define CRTC2_EN (1 << 25)
-#define CRTC2_DISP_REQ_EN_B (1 << 26)
-
-/* CUR_OFFSET, CUR_HORZ_VERT_POSN, CUR_HORZ_VERT_OFF bit constants */
-#define CUR_LOCK 0x80000000
-
-/* GPIO bit constants */
-#define GPIO_A_0 (1 << 0)
-#define GPIO_A_1 (1 << 1)
-#define GPIO_Y_0 (1 << 8)
-#define GPIO_Y_1 (1 << 9)
-#define GPIO_EN_0 (1 << 16)
-#define GPIO_EN_1 (1 << 17)
-#define GPIO_MASK_0 (1 << 24)
-#define GPIO_MASK_1 (1 << 25)
-#define VGA_DDC_DATA_OUTPUT GPIO_A_0
-#define VGA_DDC_CLK_OUTPUT GPIO_A_1
-#define VGA_DDC_DATA_INPUT GPIO_Y_0
-#define VGA_DDC_CLK_INPUT GPIO_Y_1
-#define VGA_DDC_DATA_OUT_EN GPIO_EN_0
-#define VGA_DDC_CLK_OUT_EN GPIO_EN_1
-
-/* FP bit constants */
-#define FP_CRTC_H_TOTAL_MASK 0x000003ff
-#define FP_CRTC_H_DISP_MASK 0x01ff0000
-#define FP_CRTC_V_TOTAL_MASK 0x00000fff
-#define FP_CRTC_V_DISP_MASK 0x0fff0000
-#define FP_H_SYNC_STRT_CHAR_MASK 0x00001ff8
-#define FP_H_SYNC_WID_MASK 0x003f0000
-#define FP_V_SYNC_STRT_MASK 0x00000fff
-#define FP_V_SYNC_WID_MASK 0x001f0000
-#define FP_CRTC_H_TOTAL_SHIFT 0x00000000
-#define FP_CRTC_H_DISP_SHIFT 0x00000010
-#define FP_CRTC_V_TOTAL_SHIFT 0x00000000
-#define FP_CRTC_V_DISP_SHIFT 0x00000010
-#define FP_H_SYNC_STRT_CHAR_SHIFT 0x00000003
-#define FP_H_SYNC_WID_SHIFT 0x00000010
-#define FP_V_SYNC_STRT_SHIFT 0x00000000
-#define FP_V_SYNC_WID_SHIFT 0x00000010
-
-/* FP_GEN_CNTL bit constants */
-#define FP_FPON (1 << 0)
-#define FP_TMDS_EN (1 << 2)
-#define FP_PANEL_FORMAT (1 << 3)
-#define FP_EN_TMDS (1 << 7)
-#define FP_DETECT_SENSE (1 << 8)
-#define R200_FP_SOURCE_SEL_MASK (3 << 10)
-#define R200_FP_SOURCE_SEL_CRTC1 (0 << 10)
-#define R200_FP_SOURCE_SEL_CRTC2 (1 << 10)
-#define R200_FP_SOURCE_SEL_RMX (2 << 10)
-#define R200_FP_SOURCE_SEL_TRANS (3 << 10)
-#define FP_SEL_CRTC1 (0 << 13)
-#define FP_SEL_CRTC2 (1 << 13)
-#define FP_USE_VGA_HSYNC (1 << 14)
-#define FP_CRTC_DONT_SHADOW_HPAR (1 << 15)
-#define FP_CRTC_DONT_SHADOW_VPAR (1 << 16)
-#define FP_CRTC_DONT_SHADOW_HEND (1 << 17)
-#define FP_CRTC_USE_SHADOW_VEND (1 << 18)
-#define FP_RMX_HVSYNC_CONTROL_EN (1 << 20)
-#define FP_DFP_SYNC_SEL (1 << 21)
-#define FP_CRTC_LOCK_8DOT (1 << 22)
-#define FP_CRT_SYNC_SEL (1 << 23)
-#define FP_USE_SHADOW_EN (1 << 24)
-#define FP_CRT_SYNC_ALT (1 << 26)
-
-/* FP2_GEN_CNTL bit constants */
-#define FP2_BLANK_EN (1 << 1)
-#define FP2_ON (1 << 2)
-#define FP2_PANEL_FORMAT (1 << 3)
-#define FP2_SOURCE_SEL_MASK (3 << 10)
-#define FP2_SOURCE_SEL_CRTC2 (1 << 10)
-#define FP2_SRC_SEL_MASK (3 << 13)
-#define FP2_SRC_SEL_CRTC2 (1 << 13)
-#define FP2_FP_POL (1 << 16)
-#define FP2_LP_POL (1 << 17)
-#define FP2_SCK_POL (1 << 18)
-#define FP2_LCD_CNTL_MASK (7 << 19)
-#define FP2_PAD_FLOP_EN (1 << 22)
-#define FP2_CRC_EN (1 << 23)
-#define FP2_CRC_READ_EN (1 << 24)
-#define FP2_DV0_EN (1 << 25)
-#define FP2_DV0_RATE_SEL_SDR (1 << 26)
-
-/* LVDS_GEN_CNTL bit constants */
-#define LVDS_ON (1 << 0)
-#define LVDS_DISPLAY_DIS (1 << 1)
-#define LVDS_PANEL_TYPE (1 << 2)
-#define LVDS_PANEL_FORMAT (1 << 3)
-#define LVDS_EN (1 << 7)
-#define LVDS_BL_MOD_LEVEL_MASK 0x0000ff00
-#define LVDS_BL_MOD_LEVEL_SHIFT 8
-#define LVDS_BL_MOD_EN (1 << 16)
-#define LVDS_DIGON (1 << 18)
-#define LVDS_BLON (1 << 19)
-#define LVDS_SEL_CRTC2 (1 << 23)
-#define LVDS_STATE_MASK \
- (LVDS_ON | LVDS_DISPLAY_DIS | LVDS_BL_MOD_LEVEL_MASK | LVDS_BLON)
-
-/* LVDS_PLL_CNTL bit constatns */
-#define HSYNC_DELAY_SHIFT 0x1c
-#define HSYNC_DELAY_MASK (0xf << 0x1c)
-
-/* TMDS_TRANSMITTER_CNTL bit constants */
-#define TMDS_PLL_EN (1 << 0)
-#define TMDS_PLLRST (1 << 1)
-#define TMDS_RAN_PAT_RST (1 << 7)
-#define TMDS_ICHCSEL (1 << 28)
-
-/* FP_HORZ_STRETCH bit constants */
-#define HORZ_STRETCH_RATIO_MASK 0xffff
-#define HORZ_STRETCH_RATIO_MAX 4096
-#define HORZ_PANEL_SIZE (0x1ff << 16)
-#define HORZ_PANEL_SHIFT 16
-#define HORZ_STRETCH_PIXREP (0 << 25)
-#define HORZ_STRETCH_BLEND (1 << 26)
-#define HORZ_STRETCH_ENABLE (1 << 25)
-#define HORZ_AUTO_RATIO (1 << 27)
-#define HORZ_FP_LOOP_STRETCH (0x7 << 28)
-#define HORZ_AUTO_RATIO_INC (1 << 31)
-
-/* FP_VERT_STRETCH bit constants */
-#define VERT_STRETCH_RATIO_MASK 0xfff
-#define VERT_STRETCH_RATIO_MAX 4096
-#define VERT_PANEL_SIZE (0xfff << 12)
-#define VERT_PANEL_SHIFT 12
-#define VERT_STRETCH_LINREP (0 << 26)
-#define VERT_STRETCH_BLEND (1 << 26)
-#define VERT_STRETCH_ENABLE (1 << 25)
-#define VERT_AUTO_RATIO_EN (1 << 27)
-#define VERT_FP_LOOP_STRETCH (0x7 << 28)
-#define VERT_STRETCH_RESERVED 0xf1000000
-
-/* DAC_CNTL bit constants */
-#define DAC_8BIT_EN 0x00000100
-#define DAC_4BPP_PIX_ORDER 0x00000200
-#define DAC_CRC_EN 0x00080000
-#define DAC_MASK_ALL (0xff << 24)
-#define DAC_PDWN (1 << 15)
-#define DAC_EXPAND_MODE (1 << 14)
-#define DAC_VGA_ADR_EN (1 << 13)
-#define DAC_RANGE_CNTL (3 << 0)
-#define DAC_RANGE_CNTL_MASK 0x03
-#define DAC_BLANKING (1 << 2)
-#define DAC_CMP_EN (1 << 3)
-#define DAC_CMP_OUTPUT (1 << 7)
-
-/* DAC_CNTL2 bit constants */
-#define DAC2_EXPAND_MODE (1 << 14)
-#define DAC2_CMP_EN (1 << 7)
-#define DAC2_PALETTE_ACCESS_CNTL (1 << 5)
-
-/* DAC_EXT_CNTL bit constants */
-#define DAC_FORCE_BLANK_OFF_EN (1 << 4)
-#define DAC_FORCE_DATA_EN (1 << 5)
-#define DAC_FORCE_DATA_SEL_MASK (3 << 6)
-#define DAC_FORCE_DATA_MASK 0x0003ff00
-#define DAC_FORCE_DATA_SHIFT 8
-
-/* GEN_RESET_CNTL bit constants */
-#define SOFT_RESET_GUI 0x00000001
-#define SOFT_RESET_VCLK 0x00000100
-#define SOFT_RESET_PCLK 0x00000200
-#define SOFT_RESET_ECP 0x00000400
-#define SOFT_RESET_DISPENG_XCLK 0x00000800
-
-/* MEM_CNTL bit constants */
-#define MEM_CTLR_STATUS_IDLE 0x00000000
-#define MEM_CTLR_STATUS_BUSY 0x00100000
-#define MEM_SEQNCR_STATUS_IDLE 0x00000000
-#define MEM_SEQNCR_STATUS_BUSY 0x00200000
-#define MEM_ARBITER_STATUS_IDLE 0x00000000
-#define MEM_ARBITER_STATUS_BUSY 0x00400000
-#define MEM_REQ_UNLOCK 0x00000000
-#define MEM_REQ_LOCK 0x00800000
-#define MEM_NUM_CHANNELS_MASK 0x00000001
-#define MEM_USE_B_CH_ONLY 0x00000002
-#define RV100_MEM_HALF_MODE 0x00000008
-#define R300_MEM_NUM_CHANNELS_MASK 0x00000003
-#define R300_MEM_USE_CD_CH_ONLY 0x00000004
-
-/* RBBM_GUICNTL bit connstants */
-#define HOST_DATA_SWAP_NONE (0 << 0)
-#define HOST_DATA_SWAP_16BIT (1 << 0)
-#define HOST_DATA_SWAP_32BIT (2 << 0)
-#define HOST_DATA_SWAP_HDW (3 << 0)
-
-/* RBBM_SOFT_RESET bit constants */
-#define SOFT_RESET_CP (1 << 0)
-#define SOFT_RESET_HI (1 << 1)
-#define SOFT_RESET_SE (1 << 2)
-#define SOFT_RESET_RE (1 << 3)
-#define SOFT_RESET_PP (1 << 4)
-#define SOFT_RESET_E2 (1 << 5)
-#define SOFT_RESET_RB (1 << 6)
-#define SOFT_RESET_HDP (1 << 7)
-
-/* RBBM_STATUS bit constants */
-#define RBBM_FIFOCNT_MASK 0x007f
-#define RBBM_ACTIVE (1 << 31)
-
-/* SURFACE_CNTL bit constants */
-#define SURF_TRANSLATION_DIS (1 << 8)
-#define NONSURF_AP0_SWP_16BPP (1 << 20)
-#define NONSURF_AP0_SWP_32BPP (1 << 21)
-#define NONSURF_AP1_SWP_16BPP (1 << 22)
-#define NONSURF_AP1_SWP_32BPP (1 << 23)
-
-/* SURFACE_INFO bit constants */
-#define SURF_TILE_COLOR_MACRO (0 << 16)
-#define SURF_TILE_COLOR_BOTH (1 << 16)
-#define SURF_TILE_DEPTH_32BPP (2 << 16)
-#define SURF_TILE_DEPTH_16BPP (3 << 16)
-#define R200_SURF_TILE_NONE (0 << 16)
-#define R200_SURF_TILE_COLOR_MACRO (1 << 16)
-#define R200_SURF_TILE_COLOR_MICRO (2 << 16)
-#define R200_SURF_TILE_COLOR_BOTH (3 << 16)
-#define R200_SURF_TILE_DEPTH_32BPP (4 << 16)
-#define R200_SURF_TILE_DEPTH_16BPP (5 << 16)
-#define R300_SURF_TILE_NONE (0 << 16)
-#define R300_SURF_TILE_COLOR_MACRO (1 << 16)
-#define R300_SURF_TILE_DEPTH_32BPP (2 << 16)
-#define SURF_AP0_SWP_16BPP (1 << 20)
-#define SURF_AP0_SWP_32BPP (1 << 21)
-#define SURF_AP1_SWP_16BPP (1 << 22)
-#define SURF_AP1_SWP_32BPP (1 << 23)
-
-
-/* DEFAULT_SC_BOTTOM_RIGHT bit constants */
-#define DEFAULT_SC_RIGHT_MAX (0x1fff << 0)
-#define DEFAULT_SC_BOTTOM_MAX (0x1fff << 16)
-
-/* MM_INDEX bit constants */
-#define MM_APER 0x80000000
-
-/* CLR_CMP_CNTL bit constants */
-#define COMPARE_SRC_FALSE 0x00000000
-#define COMPARE_SRC_TRUE 0x00000001
-#define COMPARE_SRC_NOT_EQUAL 0x00000004
-#define COMPARE_SRC_EQUAL 0x00000005
-#define COMPARE_SRC_EQUAL_FLIP 0x00000007
-#define COMPARE_DST_FALSE 0x00000000
-#define COMPARE_DST_TRUE 0x00000100
-#define COMPARE_DST_NOT_EQUAL 0x00000400
-#define COMPARE_DST_EQUAL 0x00000500
-#define COMPARE_DESTINATION 0x00000000
-#define COMPARE_SOURCE 0x01000000
-#define COMPARE_SRC_AND_DST 0x02000000
-
-/* CMP_CNTL bit constants */
-#define SRC_CMP_EQ_COLOR (4 << 0)
-#define SRC_CMP_NEQ_COLOR (5 << 0)
-#define CLR_CMP_SRC_SOURCE (1 << 24)
-
-/* DP_CNTL bit constants */
-#define DST_X_RIGHT_TO_LEFT 0x00000000
-#define DST_X_LEFT_TO_RIGHT 0x00000001
-#define DST_Y_BOTTOM_TO_TOP 0x00000000
-#define DST_Y_TOP_TO_BOTTOM 0x00000002
-#define DST_X_MAJOR 0x00000000
-#define DST_Y_MAJOR 0x00000004
-#define DST_X_TILE 0x00000008
-#define DST_Y_TILE 0x00000010
-#define DST_LAST_PEL 0x00000020
-#define DST_TRAIL_X_RIGHT_TO_LEFT 0x00000000
-#define DST_TRAIL_X_LEFT_TO_RIGHT 0x00000040
-#define DST_TRAP_FILL_RIGHT_TO_LEFT 0x00000000
-#define DST_TRAP_FILL_LEFT_TO_RIGHT 0x00000080
-#define DST_BRES_SIGN 0x00000100
-#define DST_HOST_BIG_ENDIAN_EN 0x00000200
-#define DST_POLYLINE_NONLAST 0x00008000
-#define DST_RASTER_STALL 0x00010000
-#define DST_POLY_EDGE 0x00040000
-
-/* DP_CNTL_YDIR_XDIR_YMAJOR bit constants (short version of DP_CNTL) */
-#define DST_X_MAJOR_S 0x00000000
-#define DST_Y_MAJOR_S 0x00000001
-#define DST_Y_BOTTOM_TO_TOP_S 0x00000000
-#define DST_Y_TOP_TO_BOTTOM_S 0x00008000
-#define DST_X_RIGHT_TO_LEFT_S 0x00000000
-#define DST_X_LEFT_TO_RIGHT_S 0x80000000
-
-/* SC_TOP_LEFT_C bit contsants */
-#define SC_SIGN_MASK_LO 0x8000
-#define SC_SIGN_MASK_HI 0x80000000
-
-/* DST_LINE_PATCOUNT bit constants */
-#define BRES_CNTL_SHIFT 8
-
-/* DP_DATATYPE bit constants */
-#define DST_8BPP 0x00000002
-#define DST_15BPP 0x00000003
-#define DST_16BPP 0x00000004
-#define DST_24BPP 0x00000005
-#define DST_32BPP 0x00000006
-#define DST_8BPP_RGB332 0x00000007
-#define DST_8BPP_Y8 0x00000008
-#define DST_8BPP_RGB8 0x00000009
-#define DST_16BPP_VYUY422 0x0000000b
-#define DST_16BPP_YVYU422 0x0000000c
-#define DST_32BPP_AYUV444 0x0000000e
-#define DST_16BPP_ARGB4444 0x0000000f
-#define BRUSH_SOLIDCOLOR 0x00000d00
-#define SRC_MONO 0x00000000
-#define SRC_MONO_LBKGD 0x00010000
-#define SRC_DSTCOLOR 0x00030000
-#define BYTE_ORDER_MSB_TO_LSB 0x00000000
-#define BYTE_ORDER_LSB_TO_MSB 0x40000000
-#define DP_CONVERSION_TEMP 0x80000000
-#define HOST_BIG_ENDIAN_EN (1 << 29)
-
-/* DP_GUI_MASTER_CNTL bit constants */
-#define GMC_SRC_PITCH_OFFSET_DEFAULT 0x00000000
-#define GMC_SRC_PITCH_OFFSET_LEAVE 0x00000001
-#define GMC_DST_PITCH_OFFSET_DEFAULT 0x00000000
-#define GMC_DST_PITCH_OFFSET_LEAVE 0x00000002
-#define GMC_SRC_CLIP_DEFAULT 0x00000000
-#define GMC_SRC_CLIP_LEAVE 0x00000004
-#define GMC_DST_CLIP_DEFAULT 0x00000000
-#define GMC_DST_CLIP_LEAVE 0x00000008
-#define GMC_BRUSH_8x8MONO 0x00000000
-#define GMC_BRUSH_8x8MONO_LBKGD 0x00000010
-#define GMC_BRUSH_8x1MONO 0x00000020
-#define GMC_BRUSH_8x1MONO_LBKGD 0x00000030
-#define GMC_BRUSH_1x8MONO 0x00000040
-#define GMC_BRUSH_1x8MONO_LBKGD 0x00000050
-#define GMC_BRUSH_32x1MONO 0x00000060
-#define GMC_BRUSH_32x1MONO_LBKGD 0x00000070
-#define GMC_BRUSH_32x32MONO 0x00000080
-#define GMC_BRUSH_32x32MONO_LBKGD 0x00000090
-#define GMC_BRUSH_8x8COLOR 0x000000a0
-#define GMC_BRUSH_8x1COLOR 0x000000b0
-#define GMC_BRUSH_1x8COLOR 0x000000c0
-#define GMC_DST_8BPP 0x00000200
-#define GMC_DST_8BPP_RGB332 0x00000700
-#define GMC_DST_8BPP_Y8 0x00000800
-#define GMC_DST_8BPP_RGB8 0x00000900
-#define GMC_DST_16BPP_VYUY422 0x00000b00
-#define GMC_DST_16BPP_YVYU422 0x00000c00
-#define GMC_DST_32BPP_AYUV444 0x00000e00
-#define GMC_DST_16BPP_ARGB4444 0x00000f00
-#define GMC_SRC_MONO 0x00000000
-#define GMC_SRC_MONO_LBKGD 0x00001000
-#define GMC_SRC_DSTCOLOR 0x00003000
-#define GMC_BYTE_ORDER_MSB_TO_LSB 0x00000000
-#define GMC_BYTE_ORDER_LSB_TO_MSB 0x00004000
-#define GMC_DP_CONVERSION_TEMP_9300 0x00008000
-#define GMC_DP_CONVERSION_TEMP_6500 0x00000000
-#define GMC_DP_SRC_RECT 0x02000000
-#define GMC_DP_SRC_HOST 0x03000000
-#define GMC_DP_SRC_HOST_BYTEALIGN 0x04000000
-#define GMC_3D_FCN_EN_CLR 0x00000000
-#define GMC_3D_FCN_EN_SET 0x08000000
-#define GMC_DST_CLR_CMP_FCN_LEAVE 0x00000000
-#define GMC_DST_CLR_CMP_FCN_CLEAR 0x10000000
-#define GMC_AUX_CLIP_LEAVE 0x00000000
-#define GMC_AUX_CLIP_CLEAR 0x20000000
-#define GMC_WRITE_MASK_LEAVE 0x00000000
-#define GMC_WRITE_MASK_SET 0x40000000
-#define GMC_CLR_CMP_CNTL_DIS (1 << 28)
-#define GMC_SRC_DATATYPE_COLOR (3 << 12)
-#define DP_SRC_SOURCE_MASK (7 << 24)
-#define GMC_BRUSH_NONE (15 << 4)
-#define DP_SRC_SOURCE_MEMORY (2 << 24)
-#define GMC_BRUSH_SOLIDCOLOR 0x000000d0
-#define GMC_SRC_PITCH_OFFSET_CNTL (1 << 0)
-#define GMC_DST_PITCH_OFFSET_CNTL (1 << 1)
-#define GMC_SRC_CLIPPING (1 << 2)
-#define GMC_DST_CLIPPING (1 << 3)
-#define GMC_BRUSH_DATATYPE_MASK (0x0f << 4)
-#define GMC_BRUSH_8X8_MONO_FG_BG (0 << 4)
-#define GMC_BRUSH_8X8_MONO_FG_LA (1 << 4)
-#define GMC_BRUSH_1X8_MONO_FG_BG (4 << 4)
-#define GMC_BRUSH_1X8_MONO_FG_LA (5 << 4)
-#define GMC_BRUSH_32X1_MONO_FG_BG (6 << 4)
-#define GMC_BRUSH_32X1_MONO_FG_LA (7 << 4)
-#define GMC_BRUSH_32X32_MONO_FG_BG (8 << 4)
-#define GMC_BRUSH_32X32_MONO_FG_LA (9 << 4)
-#define GMC_BRUSH_8X8_COLOR (10 << 4)
-#define GMC_BRUSH_1X8_COLOR (12 << 4)
-#define GMC_BRUSH_SOLID_COLOR (13 << 4)
-#define GMC_BRUSH_NONE (15 << 4)
-#define GMC_DST_8BPP_CI (2 << 8)
-#define GMC_DST_15BPP (3 << 8)
-#define GMC_DST_16BPP (4 << 8)
-#define GMC_DST_24BPP (5 << 8)
-#define GMC_DST_32BPP (6 << 8)
-#define GMC_DST_8BPP_RGB (7 << 8)
-#define GMC_DST_Y8 (8 << 8)
-#define GMC_DST_RGB8 (9 << 8)
-#define GMC_DST_VYUY (11 << 8)
-#define GMC_DST_YVYU (12 << 8)
-#define GMC_DST_AYUV444 (14 << 8)
-#define GMC_DST_ARGB4444 (15 << 8)
-#define GMC_DST_DATATYPE_MASK (0x0f << 8)
-#define GMC_DST_DATATYPE_SHIFT 8
-#define GMC_SRC_DATATYPE_MASK (3 << 12)
-#define GMC_SRC_DATATYPE_MONO_FG_BG (0 << 12)
-#define GMC_SRC_DATATYPE_MONO_FG_LA (1 << 12)
-#define GMC_SRC_DATATYPE_COLOR (3 << 12)
-#define GMC_BYTE_PIX_ORDER (1 << 14)
-#define GMC_BYTE_MSB_TO_LSB (0 << 14)
-#define GMC_BYTE_LSB_TO_MSB (1 << 14)
-#define GMC_CONVERSION_TEMP (1 << 15)
-#define GMC_CONVERSION_TEMP_6500 (0 << 15)
-#define GMC_CONVERSION_TEMP_9300 (1 << 15)
-#define GMC_ROP3_MASK (0xff << 16)
-#define DP_SRC_SOURCE_MASK (7 << 24)
-#define DP_SRC_SOURCE_MEMORY (2 << 24)
-#define DP_SRC_SOURCE_HOST_DATA (3 << 24)
-#define GMC_3D_FCN_EN (1 << 27)
-#define GMC_CLR_CMP_CNTL_DIS (1 << 28)
-#define GMC_AUX_CLIP_DIS (1 << 29)
-#define GMC_WR_MSK_DIS (1 << 30)
-#define GMC_LD_BRUSH_Y_X (1 << 31)
-#define ROP3_ZERO 0x00000000
-#define ROP3_DSa 0x00880000
-#define ROP3_SDna 0x00440000
-#define ROP3_S 0x00cc0000
-#define ROP3_SRCCOPY 0x00cc0000
-#define ROP3_DSna 0x00220000
-#define ROP3_D 0x00aa0000
-#define ROP3_DSx 0x00660000
-#define ROP3_DSo 0x00ee0000
-#define ROP3_DSon 0x00110000
-#define ROP3_DSxn 0x00990000
-#define ROP3_Dn 0x00550000
-#define ROP3_SDno 0x00dd0000
-#define ROP3_Sn 0x00330000
-#define ROP3_DSno 0x00bb0000
-#define ROP3_DSan 0x00770000
-#define ROP3_ONE 0x00ff0000
-#define ROP3_DPa 0x00a00000
-#define ROP3_PDna 0x00500000
-#define ROP3_P 0x00f00000
-#define ROP3_PATCOPY 0x00f00000
-#define ROP3_DPna 0x000a0000
-#define ROP3_D 0x00aa0000
-#define ROP3_DPx 0x005a0000
-#define ROP3_DPo 0x00fa0000
-#define ROP3_DPon 0x00050000
-#define ROP3_PDxn 0x00a50000
-#define ROP3_PDno 0x00f50000
-#define ROP3_Pn 0x000f0000
-#define ROP3_DPno 0x00af0000
-#define ROP3_DPan 0x005f0000
-
-/* DP_MIX bit constants */
-#define DP_SRC_RECT 0x00000200
-#define DP_SRC_HOST 0x00000300
-#define DP_SRC_HOST_BYTEALIGN 0x00000400
-
-/* MPLL_CNTL bit constants */
-#define MPLL_RESET 0x00000001
-
-/* MDLL_CKO bit constants */
-#define MCKOA_SLEEP 0x00000001
-#define MCKOA_RESET 0x00000002
-#define MCKOA_REF_SKEW_MASK 0x00000700
-#define MCKOA_FB_SKEW_MASK 0x00007000
-
-/* MDLL_RDCKA bit constants */
-#define MRDCKA0_SLEEP 0x00000001
-#define MRDCKA0_RESET 0x00000002
-#define MRDCKA1_SLEEP 0x00010000
-#define MRDCKA1_RESET 0x00020000
-
-/* VCLK_ECP_CNTL constants */
-#define VCLK_SRC_SEL_MASK 0x03
-#define VCLK_SRC_SEL_CPUCLK 0x00
-#define VCLK_SRC_SEL_PSCANCLK 0x01
-#define VCLK_SRC_SEL_BYTECLK 0x02
-#define VCLK_SRC_SEL_PPLLCLK 0x03
-#define PIXCLK_ALWAYS_ONb 0x00000040
-#define PIXCLK_DAC_ALWAYS_ONb 0x00000080
-
-/* BUS_CNTL1 constants */
-#define BUS_CNTL1_MOBILE_PLATFORM_SEL_MASK 0x0c000000
-#define BUS_CNTL1_MOBILE_PLATFORM_SEL_SHIFT 26
-#define BUS_CNTL1_AGPCLK_VALID 0x80000000
-
-/* PLL_PWRMGT_CNTL constants */
-#define PLL_PWRMGT_CNTL_SPLL_TURNOFF 0x00000002
-#define PLL_PWRMGT_CNTL_PPLL_TURNOFF 0x00000004
-#define PLL_PWRMGT_CNTL_P2PLL_TURNOFF 0x00000008
-#define PLL_PWRMGT_CNTL_TVPLL_TURNOFF 0x00000010
-#define PLL_PWRMGT_CNTL_MOBILE_SU 0x00010000
-#define PLL_PWRMGT_CNTL_SU_SCLK_USE_BCLK 0x00020000
-#define PLL_PWRMGT_CNTL_SU_MCLK_USE_BCLK 0x00040000
-
-/* TV_DAC_CNTL constants */
-#define TV_DAC_CNTL_BGSLEEP 0x00000040
-#define TV_DAC_CNTL_DETECT 0x00000010
-#define TV_DAC_CNTL_BGADJ_MASK 0x000f0000
-#define TV_DAC_CNTL_DACADJ_MASK 0x00f00000
-#define TV_DAC_CNTL_BGADJ__SHIFT 16
-#define TV_DAC_CNTL_DACADJ__SHIFT 20
-#define TV_DAC_CNTL_RDACPD 0x01000000
-#define TV_DAC_CNTL_GDACPD 0x02000000
-#define TV_DAC_CNTL_BDACPD 0x04000000
-
-/* DISP_MISC_CNTL constants */
-#define DISP_MISC_CNTL_SOFT_RESET_GRPH_PP (1 << 0)
-#define DISP_MISC_CNTL_SOFT_RESET_SUBPIC_PP (1 << 1)
-#define DISP_MISC_CNTL_SOFT_RESET_OV0_PP (1 << 2)
-#define DISP_MISC_CNTL_SOFT_RESET_GRPH_SCLK (1 << 4)
-#define DISP_MISC_CNTL_SOFT_RESET_SUBPIC_SCLK (1 << 5)
-#define DISP_MISC_CNTL_SOFT_RESET_OV0_SCLK (1 << 6)
-#define DISP_MISC_CNTL_SOFT_RESET_GRPH2_PP (1 << 12)
-#define DISP_MISC_CNTL_SOFT_RESET_GRPH2_SCLK (1 << 15)
-#define DISP_MISC_CNTL_SOFT_RESET_LVDS (1 << 16)
-#define DISP_MISC_CNTL_SOFT_RESET_TMDS (1 << 17)
-#define DISP_MISC_CNTL_SOFT_RESET_DIG_TMDS (1 << 18)
-#define DISP_MISC_CNTL_SOFT_RESET_TV (1 << 19)
-
-/* DISP_PWR_MAN constants */
-#define DISP_PWR_MAN_DISP_PWR_MAN_D3_CRTC_EN (1 << 0)
-#define DISP_PWR_MAN_DISP2_PWR_MAN_D3_CRTC2_EN (1 << 4)
-#define DISP_PWR_MAN_DISP_D3_RST (1 << 16)
-#define DISP_PWR_MAN_DISP_D3_REG_RST (1 << 17)
-#define DISP_PWR_MAN_DISP_D3_GRPH_RST (1 << 18)
-#define DISP_PWR_MAN_DISP_D3_SUBPIC_RST (1 << 19)
-#define DISP_PWR_MAN_DISP_D3_OV0_RST (1 << 20)
-#define DISP_PWR_MAN_DISP_D1D2_GRPH_RST (1 << 21)
-#define DISP_PWR_MAN_DISP_D1D2_SUBPIC_RST (1 << 22)
-#define DISP_PWR_MAN_DISP_D1D2_OV0_RST (1 << 23)
-#define DISP_PWR_MAN_DIG_TMDS_ENABLE_RST (1 << 24)
-#define DISP_PWR_MAN_TV_ENABLE_RST (1 << 25)
-#define DISP_PWR_MAN_AUTO_PWRUP_EN (1 << 26)
-
-/* DST_PITCH_OFFSET bit constants */
-#define PITCH_SHIFT 21
-#define DST_TILE_LINEAR (0 << 30)
-#define DST_TILE_MACRO (1 << 30)
-#define DST_TILE_MICRO (2 << 30)
-#define DST_TILE_BOTH (3 << 30)
-
-/* masks */
-#define CONFIG_MEMSIZE_MASK 0x1f000000
-#define MEM_CFG_TYPE 0x40000000
-#define DST_OFFSET_MASK 0x003fffff
-#define DST_PITCH_MASK 0x3fc00000
-#define DEFAULT_TILE_MASK 0xc0000000
-#define PPLL_DIV_SEL_MASK 0x00000300
-#define PPLL_RESET 0x00000001
-#define PPLL_SLEEP 0x00000002
-#define PPLL_ATOMIC_UPDATE_EN 0x00010000
-#define PPLL_REF_DIV_MASK 0x000003ff
-#define PPLL_FB3_DIV_MASK 0x000007ff
-#define PPLL_POST3_DIV_MASK 0x00070000
-#define PPLL_ATOMIC_UPDATE_R 0x00008000
-#define PPLL_ATOMIC_UPDATE_W 0x00008000
-#define PPLL_VGA_ATOMIC_UPDATE_EN 0x00020000
-#define R300_PPLL_REF_DIV_ACC_MASK (0x3ff << 18)
-#define R300_PPLL_REF_DIV_ACC_SHIFT 18
-
-#define GUI_ACTIVE 0x80000000
-
-#define MC_IND_INDEX 0x01F8
-#define MC_IND_DATA 0x01FC
-
-/* PAD_CTLR_STRENGTH */
-#define PAD_MANUAL_OVERRIDE 0x80000000
-
-/* pllCLK_PIN_CNTL */
-#define CLK_PIN_CNTL__OSC_EN_MASK 0x00000001L
-#define CLK_PIN_CNTL__OSC_EN 0x00000001L
-#define CLK_PIN_CNTL__XTL_LOW_GAIN_MASK 0x00000004L
-#define CLK_PIN_CNTL__XTL_LOW_GAIN 0x00000004L
-#define CLK_PIN_CNTL__DONT_USE_XTALIN_MASK 0x00000010L
-#define CLK_PIN_CNTL__DONT_USE_XTALIN 0x00000010L
-#define CLK_PIN_CNTL__SLOW_CLOCK_SOURCE_MASK 0x00000020L
-#define CLK_PIN_CNTL__SLOW_CLOCK_SOURCE 0x00000020L
-#define CLK_PIN_CNTL__CG_CLK_TO_OUTPIN_MASK 0x00000800L
-#define CLK_PIN_CNTL__CG_CLK_TO_OUTPIN 0x00000800L
-#define CLK_PIN_CNTL__CG_COUNT_UP_TO_OUTPIN_MASK 0x00001000L
-#define CLK_PIN_CNTL__CG_COUNT_UP_TO_OUTPIN 0x00001000L
-#define CLK_PIN_CNTL__ACCESS_REGS_IN_SUSPEND_MASK 0x00002000L
-#define CLK_PIN_CNTL__ACCESS_REGS_IN_SUSPEND 0x00002000L
-#define CLK_PIN_CNTL__CG_SPARE_MASK 0x00004000L
-#define CLK_PIN_CNTL__CG_SPARE 0x00004000L
-#define CLK_PIN_CNTL__SCLK_DYN_START_CNTL_MASK 0x00008000L
-#define CLK_PIN_CNTL__SCLK_DYN_START_CNTL 0x00008000L
-#define CLK_PIN_CNTL__CP_CLK_RUNNING_MASK 0x00010000L
-#define CLK_PIN_CNTL__CP_CLK_RUNNING 0x00010000L
-#define CLK_PIN_CNTL__CG_SPARE_RD_MASK 0x00060000L
-#define CLK_PIN_CNTL__XTALIN_ALWAYS_ONb_MASK 0x00080000L
-#define CLK_PIN_CNTL__XTALIN_ALWAYS_ONb 0x00080000L
-#define CLK_PIN_CNTL__PWRSEQ_DELAY_MASK 0xff000000L
-
-/* pllCLK_PWRMGT_CNTL */
-#define CLK_PWRMGT_CNTL__MPLL_PWRMGT_OFF__SHIFT 0x00000000
-#define CLK_PWRMGT_CNTL__SPLL_PWRMGT_OFF__SHIFT 0x00000001
-#define CLK_PWRMGT_CNTL__PPLL_PWRMGT_OFF__SHIFT 0x00000002
-#define CLK_PWRMGT_CNTL__P2PLL_PWRMGT_OFF__SHIFT 0x00000003
-#define CLK_PWRMGT_CNTL__MCLK_TURNOFF__SHIFT 0x00000004
-#define CLK_PWRMGT_CNTL__SCLK_TURNOFF__SHIFT 0x00000005
-#define CLK_PWRMGT_CNTL__PCLK_TURNOFF__SHIFT 0x00000006
-#define CLK_PWRMGT_CNTL__P2CLK_TURNOFF__SHIFT 0x00000007
-#define CLK_PWRMGT_CNTL__MC_CH_MODE__SHIFT 0x00000008
-#define CLK_PWRMGT_CNTL__TEST_MODE__SHIFT 0x00000009
-#define CLK_PWRMGT_CNTL__GLOBAL_PMAN_EN__SHIFT 0x0000000a
-#define CLK_PWRMGT_CNTL__ENGINE_DYNCLK_MODE__SHIFT 0x0000000c
-#define CLK_PWRMGT_CNTL__ACTIVE_HILO_LAT__SHIFT 0x0000000d
-#define CLK_PWRMGT_CNTL__DISP_DYN_STOP_LAT__SHIFT 0x0000000f
-#define CLK_PWRMGT_CNTL__MC_BUSY__SHIFT 0x00000010
-#define CLK_PWRMGT_CNTL__MC_INT_CNTL__SHIFT 0x00000011
-#define CLK_PWRMGT_CNTL__MC_SWITCH__SHIFT 0x00000012
-#define CLK_PWRMGT_CNTL__DLL_READY__SHIFT 0x00000013
-#define CLK_PWRMGT_CNTL__DISP_PM__SHIFT 0x00000014
-#define CLK_PWRMGT_CNTL__DYN_STOP_MODE__SHIFT 0x00000015
-#define CLK_PWRMGT_CNTL__CG_NO1_DEBUG__SHIFT 0x00000018
-#define CLK_PWRMGT_CNTL__TVPLL_PWRMGT_OFF__SHIFT 0x0000001e
-#define CLK_PWRMGT_CNTL__TVCLK_TURNOFF__SHIFT 0x0000001f
-
-/* pllP2PLL_CNTL */
-#define P2PLL_CNTL__P2PLL_RESET_MASK 0x00000001L
-#define P2PLL_CNTL__P2PLL_RESET 0x00000001L
-#define P2PLL_CNTL__P2PLL_SLEEP_MASK 0x00000002L
-#define P2PLL_CNTL__P2PLL_SLEEP 0x00000002L
-#define P2PLL_CNTL__P2PLL_TST_EN_MASK 0x00000004L
-#define P2PLL_CNTL__P2PLL_TST_EN 0x00000004L
-#define P2PLL_CNTL__P2PLL_REFCLK_SEL_MASK 0x00000010L
-#define P2PLL_CNTL__P2PLL_REFCLK_SEL 0x00000010L
-#define P2PLL_CNTL__P2PLL_FBCLK_SEL_MASK 0x00000020L
-#define P2PLL_CNTL__P2PLL_FBCLK_SEL 0x00000020L
-#define P2PLL_CNTL__P2PLL_TCPOFF_MASK 0x00000040L
-#define P2PLL_CNTL__P2PLL_TCPOFF 0x00000040L
-#define P2PLL_CNTL__P2PLL_TVCOMAX_MASK 0x00000080L
-#define P2PLL_CNTL__P2PLL_TVCOMAX 0x00000080L
-#define P2PLL_CNTL__P2PLL_PCP_MASK 0x00000700L
-#define P2PLL_CNTL__P2PLL_PVG_MASK 0x00003800L
-#define P2PLL_CNTL__P2PLL_PDC_MASK 0x0000c000L
-#define P2PLL_CNTL__P2PLL_ATOMIC_UPDATE_EN_MASK 0x00010000L
-#define P2PLL_CNTL__P2PLL_ATOMIC_UPDATE_EN 0x00010000L
-#define P2PLL_CNTL__P2PLL_ATOMIC_UPDATE_SYNC_MASK 0x00040000L
-#define P2PLL_CNTL__P2PLL_ATOMIC_UPDATE_SYNC 0x00040000L
-#define P2PLL_CNTL__P2PLL_DISABLE_AUTO_RESET_MASK 0x00080000L
-#define P2PLL_CNTL__P2PLL_DISABLE_AUTO_RESET 0x00080000L
-
-/* pllPIXCLKS_CNTL */
-#define PIXCLKS_CNTL__PIX2CLK_SRC_SEL__SHIFT 0x00000000
-#define PIXCLKS_CNTL__PIX2CLK_INVERT__SHIFT 0x00000004
-#define PIXCLKS_CNTL__PIX2CLK_SRC_INVERT__SHIFT 0x00000005
-#define PIXCLKS_CNTL__PIX2CLK_ALWAYS_ONb__SHIFT 0x00000006
-#define PIXCLKS_CNTL__PIX2CLK_DAC_ALWAYS_ONb__SHIFT 0x00000007
-#define PIXCLKS_CNTL__PIXCLK_TV_SRC_SEL__SHIFT 0x00000008
-#define PIXCLKS_CNTL__PIXCLK_BLEND_ALWAYS_ONb__SHIFT 0x0000000b
-#define PIXCLKS_CNTL__PIXCLK_GV_ALWAYS_ONb__SHIFT 0x0000000c
-#define PIXCLKS_CNTL__PIXCLK_DIG_TMDS_ALWAYS_ONb__SHIFT 0x0000000d
-#define PIXCLKS_CNTL__PIXCLK_LVDS_ALWAYS_ONb__SHIFT 0x0000000e
-#define PIXCLKS_CNTL__PIXCLK_TMDS_ALWAYS_ONb__SHIFT 0x0000000f
-
-/* pllPIXCLKS_CNTL */
-#define PIXCLKS_CNTL__PIX2CLK_SRC_SEL_MASK 0x00000003L
-#define PIXCLKS_CNTL__PIX2CLK_INVERT 0x00000010L
-#define PIXCLKS_CNTL__PIX2CLK_SRC_INVERT 0x00000020L
-#define PIXCLKS_CNTL__PIX2CLK_ALWAYS_ONb 0x00000040L
-#define PIXCLKS_CNTL__PIX2CLK_DAC_ALWAYS_ONb 0x00000080L
-#define PIXCLKS_CNTL__PIXCLK_TV_SRC_SEL 0x00000100L
-#define PIXCLKS_CNTL__PIXCLK_BLEND_ALWAYS_ONb 0x00000800L
-#define PIXCLKS_CNTL__PIXCLK_GV_ALWAYS_ONb 0x00001000L
-#define PIXCLKS_CNTL__PIXCLK_DIG_TMDS_ALWAYS_ONb 0x00002000L
-#define PIXCLKS_CNTL__PIXCLK_LVDS_ALWAYS_ONb 0x00004000L
-#define PIXCLKS_CNTL__PIXCLK_TMDS_ALWAYS_ONb 0x00008000L
-#define PIXCLKS_CNTL__DISP_TVOUT_PIXCLK_TV_ALWAYS_ONb (1 << 9)
-#define PIXCLKS_CNTL__R300_DVOCLK_ALWAYS_ONb (1 << 10)
-#define PIXCLKS_CNTL__R300_PIXCLK_DVO_ALWAYS_ONb (1 << 13)
-#define PIXCLKS_CNTL__R300_PIXCLK_TRANS_ALWAYS_ONb (1 << 16)
-#define PIXCLKS_CNTL__R300_PIXCLK_TVO_ALWAYS_ONb (1 << 17)
-#define PIXCLKS_CNTL__R300_P2G2CLK_ALWAYS_ONb (1 << 18)
-#define PIXCLKS_CNTL__R300_P2G2CLK_DAC_ALWAYS_ONb (1 << 19)
-#define PIXCLKS_CNTL__R300_DISP_DAC_PIXCLK_DAC2_BLANK_OFF (1 << 23)
-
-/* pllP2PLL_DIV_0 */
-#define P2PLL_DIV_0__P2PLL_FB_DIV_MASK 0x000007ffL
-#define P2PLL_DIV_0__P2PLL_ATOMIC_UPDATE_W_MASK 0x00008000L
-#define P2PLL_DIV_0__P2PLL_ATOMIC_UPDATE_W 0x00008000L
-#define P2PLL_DIV_0__P2PLL_ATOMIC_UPDATE_R_MASK 0x00008000L
-#define P2PLL_DIV_0__P2PLL_ATOMIC_UPDATE_R 0x00008000L
-#define P2PLL_DIV_0__P2PLL_POST_DIV_MASK 0x00070000L
-
-/* pllSCLK_CNTL */
-#define SCLK_CNTL__SCLK_SRC_SEL_MASK 0x00000007L
-#define SCLK_CNTL__CP_MAX_DYN_STOP_LAT 0x00000008L
-#define SCLK_CNTL__HDP_MAX_DYN_STOP_LAT 0x00000010L
-#define SCLK_CNTL__TV_MAX_DYN_STOP_LAT 0x00000020L
-#define SCLK_CNTL__E2_MAX_DYN_STOP_LAT 0x00000040L
-#define SCLK_CNTL__SE_MAX_DYN_STOP_LAT 0x00000080L
-#define SCLK_CNTL__IDCT_MAX_DYN_STOP_LAT 0x00000100L
-#define SCLK_CNTL__VIP_MAX_DYN_STOP_LAT 0x00000200L
-#define SCLK_CNTL__RE_MAX_DYN_STOP_LAT 0x00000400L
-#define SCLK_CNTL__PB_MAX_DYN_STOP_LAT 0x00000800L
-#define SCLK_CNTL__TAM_MAX_DYN_STOP_LAT 0x00001000L
-#define SCLK_CNTL__TDM_MAX_DYN_STOP_LAT 0x00002000L
-#define SCLK_CNTL__RB_MAX_DYN_STOP_LAT 0x00004000L
-#define SCLK_CNTL__DYN_STOP_LAT_MASK 0x00007ff8
-#define SCLK_CNTL__FORCE_DISP2 0x00008000L
-#define SCLK_CNTL__FORCE_CP 0x00010000L
-#define SCLK_CNTL__FORCE_HDP 0x00020000L
-#define SCLK_CNTL__FORCE_DISP1 0x00040000L
-#define SCLK_CNTL__FORCE_TOP 0x00080000L
-#define SCLK_CNTL__FORCE_E2 0x00100000L
-#define SCLK_CNTL__FORCE_SE 0x00200000L
-#define SCLK_CNTL__FORCE_IDCT 0x00400000L
-#define SCLK_CNTL__FORCE_VIP 0x00800000L
-#define SCLK_CNTL__FORCE_RE 0x01000000L
-#define SCLK_CNTL__FORCE_PB 0x02000000L
-#define SCLK_CNTL__FORCE_TAM 0x04000000L
-#define SCLK_CNTL__FORCE_TDM 0x08000000L
-#define SCLK_CNTL__FORCE_RB 0x10000000L
-#define SCLK_CNTL__FORCE_TV_SCLK 0x20000000L
-#define SCLK_CNTL__FORCE_SUBPIC 0x40000000L
-#define SCLK_CNTL__FORCE_OV0 0x80000000L
-#define SCLK_CNTL__R300_FORCE_VAP (1<<21)
-#define SCLK_CNTL__R300_FORCE_SR (1<<25)
-#define SCLK_CNTL__R300_FORCE_PX (1<<26)
-#define SCLK_CNTL__R300_FORCE_TX (1<<27)
-#define SCLK_CNTL__R300_FORCE_US (1<<28)
-#define SCLK_CNTL__R300_FORCE_SU (1<<30)
-#define SCLK_CNTL__FORCEON_MASK 0xffff8000L
-
-/* pllSCLK_CNTL2 */
-#define SCLK_CNTL2__R300_TCL_MAX_DYN_STOP_LAT (1<<10)
-#define SCLK_CNTL2__R300_GA_MAX_DYN_STOP_LAT (1<<11)
-#define SCLK_CNTL2__R300_CBA_MAX_DYN_STOP_LAT (1<<12)
-#define SCLK_CNTL2__R300_FORCE_TCL (1<<13)
-#define SCLK_CNTL2__R300_FORCE_CBA (1<<14)
-#define SCLK_CNTL2__R300_FORCE_GA (1<<15)
-
-/* SCLK_MORE_CNTL */
-#define SCLK_MORE_CNTL__DISPREGS_MAX_DYN_STOP_LAT 0x00000001L
-#define SCLK_MORE_CNTL__MC_GUI_MAX_DYN_STOP_LAT 0x00000002L
-#define SCLK_MORE_CNTL__MC_HOST_MAX_DYN_STOP_LAT 0x00000004L
-#define SCLK_MORE_CNTL__FORCE_DISPREGS 0x00000100L
-#define SCLK_MORE_CNTL__FORCE_MC_GUI 0x00000200L
-#define SCLK_MORE_CNTL__FORCE_MC_HOST 0x00000400L
-#define SCLK_MORE_CNTL__STOP_SCLK_EN 0x00001000L
-#define SCLK_MORE_CNTL__STOP_SCLK_A 0x00002000L
-#define SCLK_MORE_CNTL__STOP_SCLK_B 0x00004000L
-#define SCLK_MORE_CNTL__STOP_SCLK_C 0x00008000L
-#define SCLK_MORE_CNTL__HALF_SPEED_SCLK 0x00010000L
-#define SCLK_MORE_CNTL__IO_CG_VOLTAGE_DROP 0x00020000L
-#define SCLK_MORE_CNTL__TVFB_SOFT_RESET 0x00040000L
-#define SCLK_MORE_CNTL__VOLTAGE_DROP_SYNC 0x00080000L
-#define SCLK_MORE_CNTL__IDLE_DELAY_HALF_SCLK 0x00400000L
-#define SCLK_MORE_CNTL__AGP_BUSY_HALF_SCLK 0x00800000L
-#define SCLK_MORE_CNTL__CG_SPARE_RD_C_MASK 0xff000000L
-#define SCLK_MORE_CNTL__FORCEON 0x00000700L
-
-/* MCLK_CNTL */
-#define MCLK_CNTL__MCLKA_SRC_SEL_MASK 0x00000007L
-#define MCLK_CNTL__YCLKA_SRC_SEL_MASK 0x00000070L
-#define MCLK_CNTL__MCLKB_SRC_SEL_MASK 0x00000700L
-#define MCLK_CNTL__YCLKB_SRC_SEL_MASK 0x00007000L
-#define MCLK_CNTL__FORCE_MCLKA_MASK 0x00010000L
-#define MCLK_CNTL__FORCE_MCLKA 0x00010000L
-#define MCLK_CNTL__FORCE_MCLKB_MASK 0x00020000L
-#define MCLK_CNTL__FORCE_MCLKB 0x00020000L
-#define MCLK_CNTL__FORCE_YCLKA_MASK 0x00040000L
-#define MCLK_CNTL__FORCE_YCLKA 0x00040000L
-#define MCLK_CNTL__FORCE_YCLKB_MASK 0x00080000L
-#define MCLK_CNTL__FORCE_YCLKB 0x00080000L
-#define MCLK_CNTL__FORCE_MC_MASK 0x00100000L
-#define MCLK_CNTL__FORCE_MC 0x00100000L
-#define MCLK_CNTL__FORCE_AIC_MASK 0x00200000L
-#define MCLK_CNTL__FORCE_AIC 0x00200000L
-#define MCLK_CNTL__MRDCKA0_SOUTSEL_MASK 0x03000000L
-#define MCLK_CNTL__MRDCKA1_SOUTSEL_MASK 0x0c000000L
-#define MCLK_CNTL__MRDCKB0_SOUTSEL_MASK 0x30000000L
-#define MCLK_CNTL__MRDCKB1_SOUTSEL_MASK 0xc0000000L
-#define MCLK_CNTL__R300_DISABLE_MC_MCLKA (1 << 21)
-#define MCLK_CNTL__R300_DISABLE_MC_MCLKB (1 << 21)
-
-/* MCLK_MISC */
-#define MCLK_MISC__SCLK_SOURCED_FROM_MPLL_SEL_MASK 0x00000003L
-#define MCLK_MISC__MCLK_FROM_SPLL_DIV_SEL_MASK 0x00000004L
-#define MCLK_MISC__MCLK_FROM_SPLL_DIV_SEL 0x00000004L
-#define MCLK_MISC__ENABLE_SCLK_FROM_MPLL_MASK 0x00000008L
-#define MCLK_MISC__ENABLE_SCLK_FROM_MPLL 0x00000008L
-#define MCLK_MISC__MPLL_MODEA_MODEC_HW_SEL_EN_MASK 0x00000010L
-#define MCLK_MISC__MPLL_MODEA_MODEC_HW_SEL_EN 0x00000010L
-#define MCLK_MISC__DLL_READY_LAT_MASK 0x00000100L
-#define MCLK_MISC__DLL_READY_LAT 0x00000100L
-#define MCLK_MISC__MC_MCLK_MAX_DYN_STOP_LAT_MASK 0x00001000L
-#define MCLK_MISC__MC_MCLK_MAX_DYN_STOP_LAT 0x00001000L
-#define MCLK_MISC__IO_MCLK_MAX_DYN_STOP_LAT_MASK 0x00002000L
-#define MCLK_MISC__IO_MCLK_MAX_DYN_STOP_LAT 0x00002000L
-#define MCLK_MISC__MC_MCLK_DYN_ENABLE_MASK 0x00004000L
-#define MCLK_MISC__MC_MCLK_DYN_ENABLE 0x00004000L
-#define MCLK_MISC__IO_MCLK_DYN_ENABLE_MASK 0x00008000L
-#define MCLK_MISC__IO_MCLK_DYN_ENABLE 0x00008000L
-#define MCLK_MISC__CGM_CLK_TO_OUTPIN_MASK 0x00010000L
-#define MCLK_MISC__CGM_CLK_TO_OUTPIN 0x00010000L
-#define MCLK_MISC__CLK_OR_COUNT_SEL_MASK 0x00020000L
-#define MCLK_MISC__CLK_OR_COUNT_SEL 0x00020000L
-#define MCLK_MISC__EN_MCLK_TRISTATE_IN_SUSPEND_MASK 0x00040000L
-#define MCLK_MISC__EN_MCLK_TRISTATE_IN_SUSPEND 0x00040000L
-#define MCLK_MISC__CGM_SPARE_RD_MASK 0x00300000L
-#define MCLK_MISC__CGM_SPARE_A_RD_MASK 0x00c00000L
-#define MCLK_MISC__TCLK_TO_YCLKB_EN_MASK 0x01000000L
-#define MCLK_MISC__TCLK_TO_YCLKB_EN 0x01000000L
-#define MCLK_MISC__CGM_SPARE_A_MASK 0x0e000000L
-
-/* VCLK_ECP_CNTL */
-#define VCLK_ECP_CNTL__VCLK_SRC_SEL_MASK 0x00000003L
-#define VCLK_ECP_CNTL__VCLK_INVERT 0x00000010L
-#define VCLK_ECP_CNTL__PIXCLK_SRC_INVERT 0x00000020L
-#define VCLK_ECP_CNTL__PIXCLK_ALWAYS_ONb 0x00000040L
-#define VCLK_ECP_CNTL__PIXCLK_DAC_ALWAYS_ONb 0x00000080L
-#define VCLK_ECP_CNTL__ECP_DIV_MASK 0x00000300L
-#define VCLK_ECP_CNTL__ECP_FORCE_ON 0x00040000L
-#define VCLK_ECP_CNTL__SUBCLK_FORCE_ON 0x00080000L
-#define VCLK_ECP_CNTL__R300_DISP_DAC_PIXCLK_DAC_BLANK_OFF (1<<23)
-
-/* PLL_PWRMGT_CNTL */
-#define PLL_PWRMGT_CNTL__MPLL_TURNOFF_MASK 0x00000001L
-#define PLL_PWRMGT_CNTL__MPLL_TURNOFF 0x00000001L
-#define PLL_PWRMGT_CNTL__SPLL_TURNOFF_MASK 0x00000002L
-#define PLL_PWRMGT_CNTL__SPLL_TURNOFF 0x00000002L
-#define PLL_PWRMGT_CNTL__PPLL_TURNOFF_MASK 0x00000004L
-#define PLL_PWRMGT_CNTL__PPLL_TURNOFF 0x00000004L
-#define PLL_PWRMGT_CNTL__P2PLL_TURNOFF_MASK 0x00000008L
-#define PLL_PWRMGT_CNTL__P2PLL_TURNOFF 0x00000008L
-#define PLL_PWRMGT_CNTL__TVPLL_TURNOFF_MASK 0x00000010L
-#define PLL_PWRMGT_CNTL__TVPLL_TURNOFF 0x00000010L
-#define PLL_PWRMGT_CNTL__AGPCLK_DYN_STOP_LAT_MASK 0x000001e0L
-#define PLL_PWRMGT_CNTL__APM_POWER_STATE_MASK 0x00000600L
-#define PLL_PWRMGT_CNTL__APM_PWRSTATE_RD_MASK 0x00001800L
-#define PLL_PWRMGT_CNTL__PM_MODE_SEL_MASK 0x00002000L
-#define PLL_PWRMGT_CNTL__PM_MODE_SEL 0x00002000L
-#define PLL_PWRMGT_CNTL__EN_PWRSEQ_DONE_COND_MASK 0x00004000L
-#define PLL_PWRMGT_CNTL__EN_PWRSEQ_DONE_COND 0x00004000L
-#define PLL_PWRMGT_CNTL__EN_DISP_PARKED_COND_MASK 0x00008000L
-#define PLL_PWRMGT_CNTL__EN_DISP_PARKED_COND 0x00008000L
-#define PLL_PWRMGT_CNTL__MOBILE_SU_MASK 0x00010000L
-#define PLL_PWRMGT_CNTL__MOBILE_SU 0x00010000L
-#define PLL_PWRMGT_CNTL__SU_SCLK_USE_BCLK_MASK 0x00020000L
-#define PLL_PWRMGT_CNTL__SU_SCLK_USE_BCLK 0x00020000L
-#define PLL_PWRMGT_CNTL__SU_MCLK_USE_BCLK_MASK 0x00040000L
-#define PLL_PWRMGT_CNTL__SU_MCLK_USE_BCLK 0x00040000L
-#define PLL_PWRMGT_CNTL__SU_SUSTAIN_DISABLE_MASK 0x00080000L
-#define PLL_PWRMGT_CNTL__SU_SUSTAIN_DISABLE 0x00080000L
-#define PLL_PWRMGT_CNTL__TCL_BYPASS_DISABLE_MASK 0x00100000L
-#define PLL_PWRMGT_CNTL__TCL_BYPASS_DISABLE 0x00100000L
-#define PLL_PWRMGT_CNTL__TCL_CLOCK_CTIVE_RD_MASK 0x00200000L
-#define PLL_PWRMGT_CNTL__TCL_CLOCK_ACTIVE_RD 0x00200000L
-#define PLL_PWRMGT_CNTL__CG_NO2_DEBUG_MASK 0xff000000L
-
-/* CLK_PWRMGT_CNTL */
-#define CLK_PWRMGT_CNTL__MPLL_PWRMGT_OFF_MASK 0x00000001L
-#define CLK_PWRMGT_CNTL__MPLL_PWRMGT_OFF 0x00000001L
-#define CLK_PWRMGT_CNTL__SPLL_PWRMGT_OFF_MASK 0x00000002L
-#define CLK_PWRMGT_CNTL__SPLL_PWRMGT_OFF 0x00000002L
-#define CLK_PWRMGT_CNTL__PPLL_PWRMGT_OFF_MASK 0x00000004L
-#define CLK_PWRMGT_CNTL__PPLL_PWRMGT_OFF 0x00000004L
-#define CLK_PWRMGT_CNTL__P2PLL_PWRMGT_OFF_MASK 0x00000008L
-#define CLK_PWRMGT_CNTL__P2PLL_PWRMGT_OFF 0x00000008L
-#define CLK_PWRMGT_CNTL__MCLK_TURNOFF_MASK 0x00000010L
-#define CLK_PWRMGT_CNTL__MCLK_TURNOFF 0x00000010L
-#define CLK_PWRMGT_CNTL__SCLK_TURNOFF_MASK 0x00000020L
-#define CLK_PWRMGT_CNTL__SCLK_TURNOFF 0x00000020L
-#define CLK_PWRMGT_CNTL__PCLK_TURNOFF_MASK 0x00000040L
-#define CLK_PWRMGT_CNTL__PCLK_TURNOFF 0x00000040L
-#define CLK_PWRMGT_CNTL__P2CLK_TURNOFF_MASK 0x00000080L
-#define CLK_PWRMGT_CNTL__P2CLK_TURNOFF 0x00000080L
-#define CLK_PWRMGT_CNTL__MC_CH_MODE_MASK 0x00000100L
-#define CLK_PWRMGT_CNTL__MC_CH_MODE 0x00000100L
-#define CLK_PWRMGT_CNTL__TEST_MODE_MASK 0x00000200L
-#define CLK_PWRMGT_CNTL__TEST_MODE 0x00000200L
-#define CLK_PWRMGT_CNTL__GLOBAL_PMAN_EN_MASK 0x00000400L
-#define CLK_PWRMGT_CNTL__GLOBAL_PMAN_EN 0x00000400L
-#define CLK_PWRMGT_CNTL__ENGINE_DYNCLK_MODE_MASK 0x00001000L
-#define CLK_PWRMGT_CNTL__ENGINE_DYNCLK_MODE 0x00001000L
-#define CLK_PWRMGT_CNTL__ACTIVE_HILO_LAT_MASK 0x00006000L
-#define CLK_PWRMGT_CNTL__DISP_DYN_STOP_LAT_MASK 0x00008000L
-#define CLK_PWRMGT_CNTL__DISP_DYN_STOP_LAT 0x00008000L
-#define CLK_PWRMGT_CNTL__MC_BUSY_MASK 0x00010000L
-#define CLK_PWRMGT_CNTL__MC_BUSY 0x00010000L
-#define CLK_PWRMGT_CNTL__MC_INT_CNTL_MASK 0x00020000L
-#define CLK_PWRMGT_CNTL__MC_INT_CNTL 0x00020000L
-#define CLK_PWRMGT_CNTL__MC_SWITCH_MASK 0x00040000L
-#define CLK_PWRMGT_CNTL__MC_SWITCH 0x00040000L
-#define CLK_PWRMGT_CNTL__DLL_READY_MASK 0x00080000L
-#define CLK_PWRMGT_CNTL__DLL_READY 0x00080000L
-#define CLK_PWRMGT_CNTL__DISP_PM_MASK 0x00100000L
-#define CLK_PWRMGT_CNTL__DISP_PM 0x00100000L
-#define CLK_PWRMGT_CNTL__DYN_STOP_MODE_MASK 0x00e00000L
-#define CLK_PWRMGT_CNTL__CG_NO1_DEBUG_MASK 0x3f000000L
-#define CLK_PWRMGT_CNTL__TVPLL_PWRMGT_OFF_MASK 0x40000000L
-#define CLK_PWRMGT_CNTL__TVPLL_PWRMGT_OFF 0x40000000L
-#define CLK_PWRMGT_CNTL__TVCLK_TURNOFF_MASK 0x80000000L
-#define CLK_PWRMGT_CNTL__TVCLK_TURNOFF 0x80000000L
-
-/* BUS_CNTL1 */
-#define BUS_CNTL1__PMI_IO_DISABLE_MASK 0x00000001L
-#define BUS_CNTL1__PMI_IO_DISABLE 0x00000001L
-#define BUS_CNTL1__PMI_MEM_DISABLE_MASK 0x00000002L
-#define BUS_CNTL1__PMI_MEM_DISABLE 0x00000002L
-#define BUS_CNTL1__PMI_BM_DISABLE_MASK 0x00000004L
-#define BUS_CNTL1__PMI_BM_DISABLE 0x00000004L
-#define BUS_CNTL1__PMI_INT_DISABLE_MASK 0x00000008L
-#define BUS_CNTL1__PMI_INT_DISABLE 0x00000008L
-#define BUS_CNTL1__BUS2_IMMEDIATE_PMI_DISABLE_MASK 0x00000020L
-#define BUS_CNTL1__BUS2_IMMEDIATE_PMI_DISABLE 0x00000020L
-#define BUS_CNTL1__BUS2_VGA_REG_COHERENCY_DIS_MASK 0x00000100L
-#define BUS_CNTL1__BUS2_VGA_REG_COHERENCY_DIS 0x00000100L
-#define BUS_CNTL1__BUS2_VGA_MEM_COHERENCY_DIS_MASK 0x00000200L
-#define BUS_CNTL1__BUS2_VGA_MEM_COHERENCY_DIS 0x00000200L
-#define BUS_CNTL1__BUS2_HDP_REG_COHERENCY_DIS_MASK 0x00000400L
-#define BUS_CNTL1__BUS2_HDP_REG_COHERENCY_DIS 0x00000400L
-#define BUS_CNTL1__BUS2_GUI_INITIATOR_COHERENCY_DIS_MASK 0x00000800L
-#define BUS_CNTL1__BUS2_GUI_INITIATOR_COHERENCY_DIS 0x00000800L
-#define BUS_CNTL1__MOBILE_PLATFORM_SEL_MASK 0x0c000000L
-#define BUS_CNTL1__SEND_SBA_LATENCY_MASK 0x70000000L
-#define BUS_CNTL1__AGPCLK_VALID_MASK 0x80000000L
-#define BUS_CNTL1__AGPCLK_VALID 0x80000000L
-
-/* BUS_CNTL1 */
-#define BUS_CNTL1__PMI_IO_DISABLE__SHIFT 0x00000000
-#define BUS_CNTL1__PMI_MEM_DISABLE__SHIFT 0x00000001
-#define BUS_CNTL1__PMI_BM_DISABLE__SHIFT 0x00000002
-#define BUS_CNTL1__PMI_INT_DISABLE__SHIFT 0x00000003
-#define BUS_CNTL1__BUS2_IMMEDIATE_PMI_DISABLE__SHIFT 0x00000005
-#define BUS_CNTL1__BUS2_VGA_REG_COHERENCY_DIS__SHIFT 0x00000008
-#define BUS_CNTL1__BUS2_VGA_MEM_COHERENCY_DIS__SHIFT 0x00000009
-#define BUS_CNTL1__BUS2_HDP_REG_COHERENCY_DIS__SHIFT 0x0000000a
-#define BUS_CNTL1__BUS2_GUI_INITIATOR_COHERENCY_DIS__SHIFT 0x0000000b
-#define BUS_CNTL1__MOBILE_PLATFORM_SEL__SHIFT 0x0000001a
-#define BUS_CNTL1__SEND_SBA_LATENCY__SHIFT 0x0000001c
-#define BUS_CNTL1__AGPCLK_VALID__SHIFT 0x0000001f
-
-/* CRTC_OFFSET_CNTL */
-#define CRTC_OFFSET_CNTL__CRTC_TILE_LINE_MASK 0x0000000fL
-#define CRTC_OFFSET_CNTL__CRTC_TILE_LINE_RIGHT_MASK 0x000000f0L
-#define CRTC_OFFSET_CNTL__CRTC_TILE_EN_RIGHT_MASK 0x00004000L
-#define CRTC_OFFSET_CNTL__CRTC_TILE_EN_RIGHT 0x00004000L
-#define CRTC_OFFSET_CNTL__CRTC_TILE_EN_MASK 0x00008000L
-#define CRTC_OFFSET_CNTL__CRTC_TILE_EN 0x00008000L
-#define CRTC_OFFSET_CNTL__CRTC_OFFSET_FLIP_CNTL_MASK 0x00010000L
-#define CRTC_OFFSET_CNTL__CRTC_OFFSET_FLIP_CNTL 0x00010000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_OFFSET_EN_MASK 0x00020000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_OFFSET_EN 0x00020000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC_EN_MASK 0x000c0000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC_OUT_EN_MASK 0x00100000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC_OUT_EN 0x00100000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC_MASK 0x00200000L
-#define CRTC_OFFSET_CNTL__CRTC_STEREO_SYNC 0x00200000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET_LEFT_EN_MASK 0x10000000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET_LEFT_EN 0x10000000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET_RIGHT_EN_MASK 0x20000000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET_RIGHT_EN 0x20000000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET_MASK 0x40000000L
-#define CRTC_OFFSET_CNTL__CRTC_GUI_TRIG_OFFSET 0x40000000L
-#define CRTC_OFFSET_CNTL__CRTC_OFFSET_LOCK_MASK 0x80000000L
-#define CRTC_OFFSET_CNTL__CRTC_OFFSET_LOCK 0x80000000L
-#define R300_CRTC_X_Y_MODE_EN_RIGHT (1 << 6)
-#define R300_CRTC_MICRO_TILE_BUFFER_RIGHT_MASK (3 << 7)
-#define R300_CRTC_MICRO_TILE_BUFFER_RIGHT_AUTO (0 << 7)
-#define R300_CRTC_MICRO_TILE_BUFFER_RIGHT_SINGLE (1 << 7)
-#define R300_CRTC_MICRO_TILE_BUFFER_RIGHT_DOUBLE (2 << 7)
-#define R300_CRTC_MICRO_TILE_BUFFER_RIGHT_DIS (3 << 7)
-#define R300_CRTC_X_Y_MODE_EN (1 << 9)
-#define R300_CRTC_MICRO_TILE_BUFFER_MASK (3 << 10)
-#define R300_CRTC_MICRO_TILE_BUFFER_AUTO (0 << 10)
-#define R300_CRTC_MICRO_TILE_BUFFER_SINGLE (1 << 10)
-#define R300_CRTC_MICRO_TILE_BUFFER_DOUBLE (2 << 10)
-#define R300_CRTC_MICRO_TILE_BUFFER_DIS (3 << 10)
-#define R300_CRTC_MICRO_TILE_EN_RIGHT (1 << 12)
-#define R300_CRTC_MICRO_TILE_EN (1 << 13)
-#define R300_CRTC_MACRO_TILE_EN_RIGHT (1 << 14)
-#define R300_CRTC_MACRO_TILE_EN (1 << 15)
-
-/* CRTC_GEN_CNTL */
-#define CRTC_GEN_CNTL__CRTC_DBL_SCAN_EN_MASK 0x00000001L
-#define CRTC_GEN_CNTL__CRTC_DBL_SCAN_EN 0x00000001L
-#define CRTC_GEN_CNTL__CRTC_INTERLACE_EN_MASK 0x00000002L
-#define CRTC_GEN_CNTL__CRTC_INTERLACE_EN 0x00000002L
-#define CRTC_GEN_CNTL__CRTC_C_SYNC_EN_MASK 0x00000010L
-#define CRTC_GEN_CNTL__CRTC_C_SYNC_EN 0x00000010L
-#define CRTC_GEN_CNTL__CRTC_PIX_WIDTH_MASK 0x00000f00L
-#define CRTC_GEN_CNTL__CRTC_ICON_EN_MASK 0x00008000L
-#define CRTC_GEN_CNTL__CRTC_ICON_EN 0x00008000L
-#define CRTC_GEN_CNTL__CRTC_CUR_EN_MASK 0x00010000L
-#define CRTC_GEN_CNTL__CRTC_CUR_EN 0x00010000L
-#define CRTC_GEN_CNTL__CRTC_VSTAT_MODE_MASK 0x00060000L
-#define CRTC_GEN_CNTL__CRTC_CUR_MODE_MASK 0x00700000L
-#define CRTC_GEN_CNTL__CRTC_EXT_DISP_EN_MASK 0x01000000L
-#define CRTC_GEN_CNTL__CRTC_EXT_DISP_EN 0x01000000L
-#define CRTC_GEN_CNTL__CRTC_EN_MASK 0x02000000L
-#define CRTC_GEN_CNTL__CRTC_EN 0x02000000L
-#define CRTC_GEN_CNTL__CRTC_DISP_REQ_EN_B_MASK 0x04000000L
-#define CRTC_GEN_CNTL__CRTC_DISP_REQ_EN_B 0x04000000L
-
-/* CRTC2_GEN_CNTL */
-#define CRTC2_GEN_CNTL__CRTC2_DBL_SCAN_EN_MASK 0x00000001L
-#define CRTC2_GEN_CNTL__CRTC2_DBL_SCAN_EN 0x00000001L
-#define CRTC2_GEN_CNTL__CRTC2_INTERLACE_EN_MASK 0x00000002L
-#define CRTC2_GEN_CNTL__CRTC2_INTERLACE_EN 0x00000002L
-#define CRTC2_GEN_CNTL__CRTC2_SYNC_TRISTATE_MASK 0x00000010L
-#define CRTC2_GEN_CNTL__CRTC2_SYNC_TRISTATE 0x00000010L
-#define CRTC2_GEN_CNTL__CRTC2_HSYNC_TRISTATE_MASK 0x00000020L
-#define CRTC2_GEN_CNTL__CRTC2_HSYNC_TRISTATE 0x00000020L
-#define CRTC2_GEN_CNTL__CRTC2_VSYNC_TRISTATE_MASK 0x00000040L
-#define CRTC2_GEN_CNTL__CRTC2_VSYNC_TRISTATE 0x00000040L
-#define CRTC2_GEN_CNTL__CRT2_ON_MASK 0x00000080L
-#define CRTC2_GEN_CNTL__CRT2_ON 0x00000080L
-#define CRTC2_GEN_CNTL__CRTC2_PIX_WIDTH_MASK 0x00000f00L
-#define CRTC2_GEN_CNTL__CRTC2_ICON_EN_MASK 0x00008000L
-#define CRTC2_GEN_CNTL__CRTC2_ICON_EN 0x00008000L
-#define CRTC2_GEN_CNTL__CRTC2_CUR_EN_MASK 0x00010000L
-#define CRTC2_GEN_CNTL__CRTC2_CUR_EN 0x00010000L
-#define CRTC2_GEN_CNTL__CRTC2_CUR_MODE_MASK 0x00700000L
-#define CRTC2_GEN_CNTL__CRTC2_DISPLAY_DIS_MASK 0x00800000L
-#define CRTC2_GEN_CNTL__CRTC2_DISPLAY_DIS 0x00800000L
-#define CRTC2_GEN_CNTL__CRTC2_EN_MASK 0x02000000L
-#define CRTC2_GEN_CNTL__CRTC2_EN 0x02000000L
-#define CRTC2_GEN_CNTL__CRTC2_DISP_REQ_EN_B_MASK 0x04000000L
-#define CRTC2_GEN_CNTL__CRTC2_DISP_REQ_EN_B 0x04000000L
-#define CRTC2_GEN_CNTL__CRTC2_C_SYNC_EN_MASK 0x08000000L
-#define CRTC2_GEN_CNTL__CRTC2_C_SYNC_EN 0x08000000L
-#define CRTC2_GEN_CNTL__CRTC2_HSYNC_DIS_MASK 0x10000000L
-#define CRTC2_GEN_CNTL__CRTC2_HSYNC_DIS 0x10000000L
-#define CRTC2_GEN_CNTL__CRTC2_VSYNC_DIS_MASK 0x20000000L
-#define CRTC2_GEN_CNTL__CRTC2_VSYNC_DIS 0x20000000L
-
-/* AGP_CNTL */
-#define AGP_CNTL__MAX_IDLE_CLK_MASK 0x000000ffL
-#define AGP_CNTL__HOLD_RD_FIFO_MASK 0x00000100L
-#define AGP_CNTL__HOLD_RD_FIFO 0x00000100L
-#define AGP_CNTL__HOLD_RQ_FIFO_MASK 0x00000200L
-#define AGP_CNTL__HOLD_RQ_FIFO 0x00000200L
-#define AGP_CNTL__EN_2X_STBB_MASK 0x00000400L
-#define AGP_CNTL__EN_2X_STBB 0x00000400L
-#define AGP_CNTL__FORCE_FULL_SBA_MASK 0x00000800L
-#define AGP_CNTL__FORCE_FULL_SBA 0x00000800L
-#define AGP_CNTL__SBA_DIS_MASK 0x00001000L
-#define AGP_CNTL__SBA_DIS 0x00001000L
-#define AGP_CNTL__AGP_REV_ID_MASK 0x00002000L
-#define AGP_CNTL__AGP_REV_ID 0x00002000L
-#define AGP_CNTL__REG_CRIPPLE_AGP4X_MASK 0x00004000L
-#define AGP_CNTL__REG_CRIPPLE_AGP4X 0x00004000L
-#define AGP_CNTL__REG_CRIPPLE_AGP2X4X_MASK 0x00008000L
-#define AGP_CNTL__REG_CRIPPLE_AGP2X4X 0x00008000L
-#define AGP_CNTL__FORCE_INT_VREF_MASK 0x00010000L
-#define AGP_CNTL__FORCE_INT_VREF 0x00010000L
-#define AGP_CNTL__PENDING_SLOTS_VAL_MASK 0x00060000L
-#define AGP_CNTL__PENDING_SLOTS_SEL_MASK 0x00080000L
-#define AGP_CNTL__PENDING_SLOTS_SEL 0x00080000L
-#define AGP_CNTL__EN_EXTENDED_AD_STB_2X_MASK 0x00100000L
-#define AGP_CNTL__EN_EXTENDED_AD_STB_2X 0x00100000L
-#define AGP_CNTL__DIS_QUEUED_GNT_FIX_MASK 0x00200000L
-#define AGP_CNTL__DIS_QUEUED_GNT_FIX 0x00200000L
-#define AGP_CNTL__EN_RDATA2X4X_MULTIRESET_MASK 0x00400000L
-#define AGP_CNTL__EN_RDATA2X4X_MULTIRESET 0x00400000L
-#define AGP_CNTL__EN_RBFCALM_MASK 0x00800000L
-#define AGP_CNTL__EN_RBFCALM 0x00800000L
-#define AGP_CNTL__FORCE_EXT_VREF_MASK 0x01000000L
-#define AGP_CNTL__FORCE_EXT_VREF 0x01000000L
-#define AGP_CNTL__DIS_RBF_MASK 0x02000000L
-#define AGP_CNTL__DIS_RBF 0x02000000L
-#define AGP_CNTL__DELAY_FIRST_SBA_EN_MASK 0x04000000L
-#define AGP_CNTL__DELAY_FIRST_SBA_EN 0x04000000L
-#define AGP_CNTL__DELAY_FIRST_SBA_VAL_MASK 0x38000000L
-#define AGP_CNTL__AGP_MISC_MASK 0xc0000000L
-
-/* AGP_CNTL */
-#define AGP_CNTL__MAX_IDLE_CLK__SHIFT 0x00000000
-#define AGP_CNTL__HOLD_RD_FIFO__SHIFT 0x00000008
-#define AGP_CNTL__HOLD_RQ_FIFO__SHIFT 0x00000009
-#define AGP_CNTL__EN_2X_STBB__SHIFT 0x0000000a
-#define AGP_CNTL__FORCE_FULL_SBA__SHIFT 0x0000000b
-#define AGP_CNTL__SBA_DIS__SHIFT 0x0000000c
-#define AGP_CNTL__AGP_REV_ID__SHIFT 0x0000000d
-#define AGP_CNTL__REG_CRIPPLE_AGP4X__SHIFT 0x0000000e
-#define AGP_CNTL__REG_CRIPPLE_AGP2X4X__SHIFT 0x0000000f
-#define AGP_CNTL__FORCE_INT_VREF__SHIFT 0x00000010
-#define AGP_CNTL__PENDING_SLOTS_VAL__SHIFT 0x00000011
-#define AGP_CNTL__PENDING_SLOTS_SEL__SHIFT 0x00000013
-#define AGP_CNTL__EN_EXTENDED_AD_STB_2X__SHIFT 0x00000014
-#define AGP_CNTL__DIS_QUEUED_GNT_FIX__SHIFT 0x00000015
-#define AGP_CNTL__EN_RDATA2X4X_MULTIRESET__SHIFT 0x00000016
-#define AGP_CNTL__EN_RBFCALM__SHIFT 0x00000017
-#define AGP_CNTL__FORCE_EXT_VREF__SHIFT 0x00000018
-#define AGP_CNTL__DIS_RBF__SHIFT 0x00000019
-#define AGP_CNTL__DELAY_FIRST_SBA_EN__SHIFT 0x0000001a
-#define AGP_CNTL__DELAY_FIRST_SBA_VAL__SHIFT 0x0000001b
-#define AGP_CNTL__AGP_MISC__SHIFT 0x0000001e
-
-/* DISP_MISC_CNTL */
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH_PP_MASK 0x00000001L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH_PP 0x00000001L
-#define DISP_MISC_CNTL__SOFT_RESET_SUBPIC_PP_MASK 0x00000002L
-#define DISP_MISC_CNTL__SOFT_RESET_SUBPIC_PP 0x00000002L
-#define DISP_MISC_CNTL__SOFT_RESET_OV0_PP_MASK 0x00000004L
-#define DISP_MISC_CNTL__SOFT_RESET_OV0_PP 0x00000004L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH_SCLK_MASK 0x00000010L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH_SCLK 0x00000010L
-#define DISP_MISC_CNTL__SOFT_RESET_SUBPIC_SCLK_MASK 0x00000020L
-#define DISP_MISC_CNTL__SOFT_RESET_SUBPIC_SCLK 0x00000020L
-#define DISP_MISC_CNTL__SOFT_RESET_OV0_SCLK_MASK 0x00000040L
-#define DISP_MISC_CNTL__SOFT_RESET_OV0_SCLK 0x00000040L
-#define DISP_MISC_CNTL__SYNC_STRENGTH_MASK 0x00000300L
-#define DISP_MISC_CNTL__SYNC_PAD_FLOP_EN_MASK 0x00000400L
-#define DISP_MISC_CNTL__SYNC_PAD_FLOP_EN 0x00000400L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH2_PP_MASK 0x00001000L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH2_PP 0x00001000L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH2_SCLK_MASK 0x00008000L
-#define DISP_MISC_CNTL__SOFT_RESET_GRPH2_SCLK 0x00008000L
-#define DISP_MISC_CNTL__SOFT_RESET_LVDS_MASK 0x00010000L
-#define DISP_MISC_CNTL__SOFT_RESET_LVDS 0x00010000L
-#define DISP_MISC_CNTL__SOFT_RESET_TMDS_MASK 0x00020000L
-#define DISP_MISC_CNTL__SOFT_RESET_TMDS 0x00020000L
-#define DISP_MISC_CNTL__SOFT_RESET_DIG_TMDS_MASK 0x00040000L
-#define DISP_MISC_CNTL__SOFT_RESET_DIG_TMDS 0x00040000L
-#define DISP_MISC_CNTL__SOFT_RESET_TV_MASK 0x00080000L
-#define DISP_MISC_CNTL__SOFT_RESET_TV 0x00080000L
-#define DISP_MISC_CNTL__PALETTE2_MEM_RD_MARGIN_MASK 0x00f00000L
-#define DISP_MISC_CNTL__PALETTE_MEM_RD_MARGIN_MASK 0x0f000000L
-#define DISP_MISC_CNTL__RMX_BUF_MEM_RD_MARGIN_MASK 0xf0000000L
-
-/* DISP_PWR_MAN */
-#define DISP_PWR_MAN__DISP_PWR_MAN_D3_CRTC_EN_MASK 0x00000001L
-#define DISP_PWR_MAN__DISP_PWR_MAN_D3_CRTC_EN 0x00000001L
-#define DISP_PWR_MAN__DISP2_PWR_MAN_D3_CRTC2_EN_MASK 0x00000010L
-#define DISP_PWR_MAN__DISP2_PWR_MAN_D3_CRTC2_EN 0x00000010L
-#define DISP_PWR_MAN__DISP_PWR_MAN_DPMS_MASK 0x00000300L
-#define DISP_PWR_MAN__DISP_D3_RST_MASK 0x00010000L
-#define DISP_PWR_MAN__DISP_D3_RST 0x00010000L
-#define DISP_PWR_MAN__DISP_D3_REG_RST_MASK 0x00020000L
-#define DISP_PWR_MAN__DISP_D3_REG_RST 0x00020000L
-#define DISP_PWR_MAN__DISP_D3_GRPH_RST_MASK 0x00040000L
-#define DISP_PWR_MAN__DISP_D3_GRPH_RST 0x00040000L
-#define DISP_PWR_MAN__DISP_D3_SUBPIC_RST_MASK 0x00080000L
-#define DISP_PWR_MAN__DISP_D3_SUBPIC_RST 0x00080000L
-#define DISP_PWR_MAN__DISP_D3_OV0_RST_MASK 0x00100000L
-#define DISP_PWR_MAN__DISP_D3_OV0_RST 0x00100000L
-#define DISP_PWR_MAN__DISP_D1D2_GRPH_RST_MASK 0x00200000L
-#define DISP_PWR_MAN__DISP_D1D2_GRPH_RST 0x00200000L
-#define DISP_PWR_MAN__DISP_D1D2_SUBPIC_RST_MASK 0x00400000L
-#define DISP_PWR_MAN__DISP_D1D2_SUBPIC_RST 0x00400000L
-#define DISP_PWR_MAN__DISP_D1D2_OV0_RST_MASK 0x00800000L
-#define DISP_PWR_MAN__DISP_D1D2_OV0_RST 0x00800000L
-#define DISP_PWR_MAN__DIG_TMDS_ENABLE_RST_MASK 0x01000000L
-#define DISP_PWR_MAN__DIG_TMDS_ENABLE_RST 0x01000000L
-#define DISP_PWR_MAN__TV_ENABLE_RST_MASK 0x02000000L
-#define DISP_PWR_MAN__TV_ENABLE_RST 0x02000000L
-#define DISP_PWR_MAN__AUTO_PWRUP_EN_MASK 0x04000000L
-#define DISP_PWR_MAN__AUTO_PWRUP_EN 0x04000000L
-
-/* MC_IND_INDEX */
-#define MC_IND_INDEX__MC_IND_ADDR_MASK 0x0000001fL
-#define MC_IND_INDEX__MC_IND_WR_EN_MASK 0x00000100L
-#define MC_IND_INDEX__MC_IND_WR_EN 0x00000100L
-
-/* MC_IND_DATA */
-#define MC_IND_DATA__MC_IND_DATA_MASK 0xffffffffL
-
-/* MC_CHP_IO_CNTL_A1 */
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_CKA__SHIFT 0x00000000
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_AA__SHIFT 0x00000001
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQMA__SHIFT 0x00000002
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQSA__SHIFT 0x00000003
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_CKA__SHIFT 0x00000004
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_AA__SHIFT 0x00000005
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQMA__SHIFT 0x00000006
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQSA__SHIFT 0x00000007
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_AA__SHIFT 0x00000008
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQMA__SHIFT 0x00000009
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQSA__SHIFT 0x0000000a
-#define MC_CHP_IO_CNTL_A1__MEM_IO_MODEA__SHIFT 0x0000000c
-#define MC_CHP_IO_CNTL_A1__MEM_REC_CKA__SHIFT 0x0000000e
-#define MC_CHP_IO_CNTL_A1__MEM_REC_AA__SHIFT 0x00000010
-#define MC_CHP_IO_CNTL_A1__MEM_REC_DQMA__SHIFT 0x00000012
-#define MC_CHP_IO_CNTL_A1__MEM_REC_DQSA__SHIFT 0x00000014
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_PHASEA__SHIFT 0x00000016
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_CENTERA__SHIFT 0x00000017
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_ENA__SHIFT 0x00000018
-#define MC_CHP_IO_CNTL_A1__MEM_CLK_SELA__SHIFT 0x0000001a
-#define MC_CHP_IO_CNTL_A1__MEM_CLK_INVA__SHIFT 0x0000001c
-#define MC_CHP_IO_CNTL_A1__MEM_DATA_ENIMP_A__SHIFT 0x0000001e
-#define MC_CHP_IO_CNTL_A1__MEM_CNTL_ENIMP_A__SHIFT 0x0000001f
-
-/* MC_CHP_IO_CNTL_B1 */
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_CKB__SHIFT 0x00000000
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_AB__SHIFT 0x00000001
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQMB__SHIFT 0x00000002
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQSB__SHIFT 0x00000003
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_CKB__SHIFT 0x00000004
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_AB__SHIFT 0x00000005
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQMB__SHIFT 0x00000006
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQSB__SHIFT 0x00000007
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_AB__SHIFT 0x00000008
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQMB__SHIFT 0x00000009
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQSB__SHIFT 0x0000000a
-#define MC_CHP_IO_CNTL_B1__MEM_IO_MODEB__SHIFT 0x0000000c
-#define MC_CHP_IO_CNTL_B1__MEM_REC_CKB__SHIFT 0x0000000e
-#define MC_CHP_IO_CNTL_B1__MEM_REC_AB__SHIFT 0x00000010
-#define MC_CHP_IO_CNTL_B1__MEM_REC_DQMB__SHIFT 0x00000012
-#define MC_CHP_IO_CNTL_B1__MEM_REC_DQSB__SHIFT 0x00000014
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_PHASEB__SHIFT 0x00000016
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_CENTERB__SHIFT 0x00000017
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_ENB__SHIFT 0x00000018
-#define MC_CHP_IO_CNTL_B1__MEM_CLK_SELB__SHIFT 0x0000001a
-#define MC_CHP_IO_CNTL_B1__MEM_CLK_INVB__SHIFT 0x0000001c
-#define MC_CHP_IO_CNTL_B1__MEM_DATA_ENIMP_B__SHIFT 0x0000001e
-#define MC_CHP_IO_CNTL_B1__MEM_CNTL_ENIMP_B__SHIFT 0x0000001f
-
-/* MC_CHP_IO_CNTL_A1 */
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_CKA_MASK 0x00000001L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_CKA 0x00000001L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_AA_MASK 0x00000002L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_AA 0x00000002L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQMA_MASK 0x00000004L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQMA 0x00000004L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQSA_MASK 0x00000008L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWN_DQSA 0x00000008L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_CKA_MASK 0x00000010L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_CKA 0x00000010L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_AA_MASK 0x00000020L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_AA 0x00000020L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQMA_MASK 0x00000040L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQMA 0x00000040L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQSA_MASK 0x00000080L
-#define MC_CHP_IO_CNTL_A1__MEM_SLEWP_DQSA 0x00000080L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_AA_MASK 0x00000100L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_AA 0x00000100L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQMA_MASK 0x00000200L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQMA 0x00000200L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQSA_MASK 0x00000400L
-#define MC_CHP_IO_CNTL_A1__MEM_PREAMP_DQSA 0x00000400L
-#define MC_CHP_IO_CNTL_A1__MEM_IO_MODEA_MASK 0x00003000L
-#define MC_CHP_IO_CNTL_A1__MEM_REC_CKA_MASK 0x0000c000L
-#define MC_CHP_IO_CNTL_A1__MEM_REC_AA_MASK 0x00030000L
-#define MC_CHP_IO_CNTL_A1__MEM_REC_DQMA_MASK 0x000c0000L
-#define MC_CHP_IO_CNTL_A1__MEM_REC_DQSA_MASK 0x00300000L
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_PHASEA_MASK 0x00400000L
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_PHASEA 0x00400000L
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_CENTERA_MASK 0x00800000L
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_CENTERA 0x00800000L
-#define MC_CHP_IO_CNTL_A1__MEM_SYNC_ENA_MASK 0x03000000L
-#define MC_CHP_IO_CNTL_A1__MEM_CLK_SELA_MASK 0x0c000000L
-#define MC_CHP_IO_CNTL_A1__MEM_CLK_INVA_MASK 0x10000000L
-#define MC_CHP_IO_CNTL_A1__MEM_CLK_INVA 0x10000000L
-#define MC_CHP_IO_CNTL_A1__MEM_DATA_ENIMP_A_MASK 0x40000000L
-#define MC_CHP_IO_CNTL_A1__MEM_DATA_ENIMP_A 0x40000000L
-#define MC_CHP_IO_CNTL_A1__MEM_CNTL_ENIMP_A_MASK 0x80000000L
-#define MC_CHP_IO_CNTL_A1__MEM_CNTL_ENIMP_A 0x80000000L
-
-/* MC_CHP_IO_CNTL_B1 */
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_CKB_MASK 0x00000001L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_CKB 0x00000001L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_AB_MASK 0x00000002L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_AB 0x00000002L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQMB_MASK 0x00000004L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQMB 0x00000004L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQSB_MASK 0x00000008L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWN_DQSB 0x00000008L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_CKB_MASK 0x00000010L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_CKB 0x00000010L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_AB_MASK 0x00000020L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_AB 0x00000020L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQMB_MASK 0x00000040L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQMB 0x00000040L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQSB_MASK 0x00000080L
-#define MC_CHP_IO_CNTL_B1__MEM_SLEWP_DQSB 0x00000080L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_AB_MASK 0x00000100L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_AB 0x00000100L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQMB_MASK 0x00000200L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQMB 0x00000200L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQSB_MASK 0x00000400L
-#define MC_CHP_IO_CNTL_B1__MEM_PREAMP_DQSB 0x00000400L
-#define MC_CHP_IO_CNTL_B1__MEM_IO_MODEB_MASK 0x00003000L
-#define MC_CHP_IO_CNTL_B1__MEM_REC_CKB_MASK 0x0000c000L
-#define MC_CHP_IO_CNTL_B1__MEM_REC_AB_MASK 0x00030000L
-#define MC_CHP_IO_CNTL_B1__MEM_REC_DQMB_MASK 0x000c0000L
-#define MC_CHP_IO_CNTL_B1__MEM_REC_DQSB_MASK 0x00300000L
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_PHASEB_MASK 0x00400000L
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_PHASEB 0x00400000L
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_CENTERB_MASK 0x00800000L
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_CENTERB 0x00800000L
-#define MC_CHP_IO_CNTL_B1__MEM_SYNC_ENB_MASK 0x03000000L
-#define MC_CHP_IO_CNTL_B1__MEM_CLK_SELB_MASK 0x0c000000L
-#define MC_CHP_IO_CNTL_B1__MEM_CLK_INVB_MASK 0x10000000L
-#define MC_CHP_IO_CNTL_B1__MEM_CLK_INVB 0x10000000L
-#define MC_CHP_IO_CNTL_B1__MEM_DATA_ENIMP_B_MASK 0x40000000L
-#define MC_CHP_IO_CNTL_B1__MEM_DATA_ENIMP_B 0x40000000L
-#define MC_CHP_IO_CNTL_B1__MEM_CNTL_ENIMP_B_MASK 0x80000000L
-#define MC_CHP_IO_CNTL_B1__MEM_CNTL_ENIMP_B 0x80000000L
-
-/* MEM_SDRAM_MODE_REG */
-#define MEM_SDRAM_MODE_REG__MEM_MODE_REG_MASK 0x00007fffL
-#define MEM_SDRAM_MODE_REG__MEM_WR_LATENCY_MASK 0x000f0000L
-#define MEM_SDRAM_MODE_REG__MEM_CAS_LATENCY_MASK 0x00700000L
-#define MEM_SDRAM_MODE_REG__MEM_CMD_LATENCY_MASK 0x00800000L
-#define MEM_SDRAM_MODE_REG__MEM_CMD_LATENCY 0x00800000L
-#define MEM_SDRAM_MODE_REG__MEM_STR_LATENCY_MASK 0x01000000L
-#define MEM_SDRAM_MODE_REG__MEM_STR_LATENCY 0x01000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_CMD_MASK 0x02000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_CMD 0x02000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_DATA_MASK 0x04000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_DATA 0x04000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_STR_MASK 0x08000000L
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_STR 0x08000000L
-#define MEM_SDRAM_MODE_REG__MC_INIT_COMPLETE_MASK 0x10000000L
-#define MEM_SDRAM_MODE_REG__MC_INIT_COMPLETE 0x10000000L
-#define MEM_SDRAM_MODE_REG__MEM_DDR_DLL_MASK 0x20000000L
-#define MEM_SDRAM_MODE_REG__MEM_DDR_DLL 0x20000000L
-#define MEM_SDRAM_MODE_REG__MEM_CFG_TYPE_MASK 0x40000000L
-#define MEM_SDRAM_MODE_REG__MEM_CFG_TYPE 0x40000000L
-#define MEM_SDRAM_MODE_REG__MEM_SDRAM_RESET_MASK 0x80000000L
-#define MEM_SDRAM_MODE_REG__MEM_SDRAM_RESET 0x80000000L
-
-/* MEM_SDRAM_MODE_REG */
-#define MEM_SDRAM_MODE_REG__MEM_MODE_REG__SHIFT 0x00000000
-#define MEM_SDRAM_MODE_REG__MEM_WR_LATENCY__SHIFT 0x00000010
-#define MEM_SDRAM_MODE_REG__MEM_CAS_LATENCY__SHIFT 0x00000014
-#define MEM_SDRAM_MODE_REG__MEM_CMD_LATENCY__SHIFT 0x00000017
-#define MEM_SDRAM_MODE_REG__MEM_STR_LATENCY__SHIFT 0x00000018
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_CMD__SHIFT 0x00000019
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_DATA__SHIFT 0x0000001a
-#define MEM_SDRAM_MODE_REG__MEM_FALL_OUT_STR__SHIFT 0x0000001b
-#define MEM_SDRAM_MODE_REG__MC_INIT_COMPLETE__SHIFT 0x0000001c
-#define MEM_SDRAM_MODE_REG__MEM_DDR_DLL__SHIFT 0x0000001d
-#define MEM_SDRAM_MODE_REG__MEM_CFG_TYPE__SHIFT 0x0000001e
-#define MEM_SDRAM_MODE_REG__MEM_SDRAM_RESET__SHIFT 0x0000001f
-
-/* MEM_REFRESH_CNTL */
-#define MEM_REFRESH_CNTL__MEM_REFRESH_RATE_MASK 0x000000ffL
-#define MEM_REFRESH_CNTL__MEM_REFRESH_DIS_MASK 0x00000100L
-#define MEM_REFRESH_CNTL__MEM_REFRESH_DIS 0x00000100L
-#define MEM_REFRESH_CNTL__MEM_DYNAMIC_CKE_MASK 0x00000200L
-#define MEM_REFRESH_CNTL__MEM_DYNAMIC_CKE 0x00000200L
-#define MEM_REFRESH_CNTL__MEM_TRFC_MASK 0x0000f000L
-#define MEM_REFRESH_CNTL__MEM_CLKA0_ENABLE_MASK 0x00010000L
-#define MEM_REFRESH_CNTL__MEM_CLKA0_ENABLE 0x00010000L
-#define MEM_REFRESH_CNTL__MEM_CLKA0b_ENABLE_MASK 0x00020000L
-#define MEM_REFRESH_CNTL__MEM_CLKA0b_ENABLE 0x00020000L
-#define MEM_REFRESH_CNTL__MEM_CLKA1_ENABLE_MASK 0x00040000L
-#define MEM_REFRESH_CNTL__MEM_CLKA1_ENABLE 0x00040000L
-#define MEM_REFRESH_CNTL__MEM_CLKA1b_ENABLE_MASK 0x00080000L
-#define MEM_REFRESH_CNTL__MEM_CLKA1b_ENABLE 0x00080000L
-#define MEM_REFRESH_CNTL__MEM_CLKAFB_ENABLE_MASK 0x00100000L
-#define MEM_REFRESH_CNTL__MEM_CLKAFB_ENABLE 0x00100000L
-#define MEM_REFRESH_CNTL__DLL_FB_SLCT_CKA_MASK 0x00c00000L
-#define MEM_REFRESH_CNTL__MEM_CLKB0_ENABLE_MASK 0x01000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB0_ENABLE 0x01000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB0b_ENABLE_MASK 0x02000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB0b_ENABLE 0x02000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB1_ENABLE_MASK 0x04000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB1_ENABLE 0x04000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB1b_ENABLE_MASK 0x08000000L
-#define MEM_REFRESH_CNTL__MEM_CLKB1b_ENABLE 0x08000000L
-#define MEM_REFRESH_CNTL__MEM_CLKBFB_ENABLE_MASK 0x10000000L
-#define MEM_REFRESH_CNTL__MEM_CLKBFB_ENABLE 0x10000000L
-#define MEM_REFRESH_CNTL__DLL_FB_SLCT_CKB_MASK 0xc0000000L
-
-/* MC_STATUS */
-#define MC_STATUS__MEM_PWRUP_COMPL_A_MASK 0x00000001L
-#define MC_STATUS__MEM_PWRUP_COMPL_A 0x00000001L
-#define MC_STATUS__MEM_PWRUP_COMPL_B_MASK 0x00000002L
-#define MC_STATUS__MEM_PWRUP_COMPL_B 0x00000002L
-#define MC_STATUS__MC_IDLE_MASK 0x00000004L
-#define MC_STATUS__MC_IDLE 0x00000004L
-#define MC_STATUS__IMP_N_VALUE_R_BACK_MASK 0x00000078L
-#define MC_STATUS__IMP_P_VALUE_R_BACK_MASK 0x00000780L
-#define MC_STATUS__TEST_OUT_R_BACK_MASK 0x00000800L
-#define MC_STATUS__TEST_OUT_R_BACK 0x00000800L
-#define MC_STATUS__DUMMY_OUT_R_BACK_MASK 0x00001000L
-#define MC_STATUS__DUMMY_OUT_R_BACK 0x00001000L
-#define MC_STATUS__IMP_N_VALUE_A_R_BACK_MASK 0x0001e000L
-#define MC_STATUS__IMP_P_VALUE_A_R_BACK_MASK 0x001e0000L
-#define MC_STATUS__IMP_N_VALUE_CK_R_BACK_MASK 0x01e00000L
-#define MC_STATUS__IMP_P_VALUE_CK_R_BACK_MASK 0x1e000000L
-
-/* MDLL_CKO */
-#define MDLL_CKO__MCKOA_SLEEP_MASK 0x00000001L
-#define MDLL_CKO__MCKOA_SLEEP 0x00000001L
-#define MDLL_CKO__MCKOA_RESET_MASK 0x00000002L
-#define MDLL_CKO__MCKOA_RESET 0x00000002L
-#define MDLL_CKO__MCKOA_RANGE_MASK 0x0000000cL
-#define MDLL_CKO__ERSTA_SOUTSEL_MASK 0x00000030L
-#define MDLL_CKO__MCKOA_FB_SEL_MASK 0x000000c0L
-#define MDLL_CKO__MCKOA_REF_SKEW_MASK 0x00000700L
-#define MDLL_CKO__MCKOA_FB_SKEW_MASK 0x00007000L
-#define MDLL_CKO__MCKOA_BP_SEL_MASK 0x00008000L
-#define MDLL_CKO__MCKOA_BP_SEL 0x00008000L
-#define MDLL_CKO__MCKOB_SLEEP_MASK 0x00010000L
-#define MDLL_CKO__MCKOB_SLEEP 0x00010000L
-#define MDLL_CKO__MCKOB_RESET_MASK 0x00020000L
-#define MDLL_CKO__MCKOB_RESET 0x00020000L
-#define MDLL_CKO__MCKOB_RANGE_MASK 0x000c0000L
-#define MDLL_CKO__ERSTB_SOUTSEL_MASK 0x00300000L
-#define MDLL_CKO__MCKOB_FB_SEL_MASK 0x00c00000L
-#define MDLL_CKO__MCKOB_REF_SKEW_MASK 0x07000000L
-#define MDLL_CKO__MCKOB_FB_SKEW_MASK 0x70000000L
-#define MDLL_CKO__MCKOB_BP_SEL_MASK 0x80000000L
-#define MDLL_CKO__MCKOB_BP_SEL 0x80000000L
-
-/* MDLL_RDCKA */
-#define MDLL_RDCKA__MRDCKA0_SLEEP_MASK 0x00000001L
-#define MDLL_RDCKA__MRDCKA0_SLEEP 0x00000001L
-#define MDLL_RDCKA__MRDCKA0_RESET_MASK 0x00000002L
-#define MDLL_RDCKA__MRDCKA0_RESET 0x00000002L
-#define MDLL_RDCKA__MRDCKA0_RANGE_MASK 0x0000000cL
-#define MDLL_RDCKA__MRDCKA0_REF_SEL_MASK 0x00000030L
-#define MDLL_RDCKA__MRDCKA0_FB_SEL_MASK 0x000000c0L
-#define MDLL_RDCKA__MRDCKA0_REF_SKEW_MASK 0x00000700L
-#define MDLL_RDCKA__MRDCKA0_SINSEL_MASK 0x00000800L
-#define MDLL_RDCKA__MRDCKA0_SINSEL 0x00000800L
-#define MDLL_RDCKA__MRDCKA0_FB_SKEW_MASK 0x00007000L
-#define MDLL_RDCKA__MRDCKA0_BP_SEL_MASK 0x00008000L
-#define MDLL_RDCKA__MRDCKA0_BP_SEL 0x00008000L
-#define MDLL_RDCKA__MRDCKA1_SLEEP_MASK 0x00010000L
-#define MDLL_RDCKA__MRDCKA1_SLEEP 0x00010000L
-#define MDLL_RDCKA__MRDCKA1_RESET_MASK 0x00020000L
-#define MDLL_RDCKA__MRDCKA1_RESET 0x00020000L
-#define MDLL_RDCKA__MRDCKA1_RANGE_MASK 0x000c0000L
-#define MDLL_RDCKA__MRDCKA1_REF_SEL_MASK 0x00300000L
-#define MDLL_RDCKA__MRDCKA1_FB_SEL_MASK 0x00c00000L
-#define MDLL_RDCKA__MRDCKA1_REF_SKEW_MASK 0x07000000L
-#define MDLL_RDCKA__MRDCKA1_SINSEL_MASK 0x08000000L
-#define MDLL_RDCKA__MRDCKA1_SINSEL 0x08000000L
-#define MDLL_RDCKA__MRDCKA1_FB_SKEW_MASK 0x70000000L
-#define MDLL_RDCKA__MRDCKA1_BP_SEL_MASK 0x80000000L
-#define MDLL_RDCKA__MRDCKA1_BP_SEL 0x80000000L
-
-/* MDLL_RDCKB */
-#define MDLL_RDCKB__MRDCKB0_SLEEP_MASK 0x00000001L
-#define MDLL_RDCKB__MRDCKB0_SLEEP 0x00000001L
-#define MDLL_RDCKB__MRDCKB0_RESET_MASK 0x00000002L
-#define MDLL_RDCKB__MRDCKB0_RESET 0x00000002L
-#define MDLL_RDCKB__MRDCKB0_RANGE_MASK 0x0000000cL
-#define MDLL_RDCKB__MRDCKB0_REF_SEL_MASK 0x00000030L
-#define MDLL_RDCKB__MRDCKB0_FB_SEL_MASK 0x000000c0L
-#define MDLL_RDCKB__MRDCKB0_REF_SKEW_MASK 0x00000700L
-#define MDLL_RDCKB__MRDCKB0_SINSEL_MASK 0x00000800L
-#define MDLL_RDCKB__MRDCKB0_SINSEL 0x00000800L
-#define MDLL_RDCKB__MRDCKB0_FB_SKEW_MASK 0x00007000L
-#define MDLL_RDCKB__MRDCKB0_BP_SEL_MASK 0x00008000L
-#define MDLL_RDCKB__MRDCKB0_BP_SEL 0x00008000L
-#define MDLL_RDCKB__MRDCKB1_SLEEP_MASK 0x00010000L
-#define MDLL_RDCKB__MRDCKB1_SLEEP 0x00010000L
-#define MDLL_RDCKB__MRDCKB1_RESET_MASK 0x00020000L
-#define MDLL_RDCKB__MRDCKB1_RESET 0x00020000L
-#define MDLL_RDCKB__MRDCKB1_RANGE_MASK 0x000c0000L
-#define MDLL_RDCKB__MRDCKB1_REF_SEL_MASK 0x00300000L
-#define MDLL_RDCKB__MRDCKB1_FB_SEL_MASK 0x00c00000L
-#define MDLL_RDCKB__MRDCKB1_REF_SKEW_MASK 0x07000000L
-#define MDLL_RDCKB__MRDCKB1_SINSEL_MASK 0x08000000L
-#define MDLL_RDCKB__MRDCKB1_SINSEL 0x08000000L
-#define MDLL_RDCKB__MRDCKB1_FB_SKEW_MASK 0x70000000L
-#define MDLL_RDCKB__MRDCKB1_BP_SEL_MASK 0x80000000L
-#define MDLL_RDCKB__MRDCKB1_BP_SEL 0x80000000L
-
-#define MDLL_R300_RDCK__MRDCKA_SLEEP 0x00000001L
-#define MDLL_R300_RDCK__MRDCKA_RESET 0x00000002L
-#define MDLL_R300_RDCK__MRDCKB_SLEEP 0x00000004L
-#define MDLL_R300_RDCK__MRDCKB_RESET 0x00000008L
-#define MDLL_R300_RDCK__MRDCKC_SLEEP 0x00000010L
-#define MDLL_R300_RDCK__MRDCKC_RESET 0x00000020L
-#define MDLL_R300_RDCK__MRDCKD_SLEEP 0x00000040L
-#define MDLL_R300_RDCK__MRDCKD_RESET 0x00000080L
-
-#define pllCLK_PIN_CNTL 0x0001
-#define pllPPLL_CNTL 0x0002
-#define pllPPLL_REF_DIV 0x0003
-#define pllPPLL_DIV_0 0x0004
-#define pllPPLL_DIV_1 0x0005
-#define pllPPLL_DIV_2 0x0006
-#define pllPPLL_DIV_3 0x0007
-#define pllVCLK_ECP_CNTL 0x0008
-#define pllHTOTAL_CNTL 0x0009
-#define pllM_SPLL_REF_FB_DIV 0x000A
-#define pllAGP_PLL_CNTL 0x000B
-#define pllSPLL_CNTL 0x000C
-#define pllSCLK_CNTL 0x000D
-#define pllMPLL_CNTL 0x000E
-#define pllMDLL_CKO 0x000F
-#define pllMDLL_RDCKA 0x0010
-#define pllMDLL_RDCKB 0x0011
-#define pllMCLK_CNTL 0x0012
-#define pllPLL_TEST_CNTL 0x0013
-#define pllCLK_PWRMGT_CNTL 0x0014
-#define pllPLL_PWRMGT_CNTL 0x0015
-#define pllCG_TEST_MACRO_RW_WRITE 0x0016
-#define pllCG_TEST_MACRO_RW_READ 0x0017
-#define pllCG_TEST_MACRO_RW_DATA 0x0018
-#define pllCG_TEST_MACRO_RW_CNTL 0x0019
-#define pllDISP_TEST_MACRO_RW_WRITE 0x001A
-#define pllDISP_TEST_MACRO_RW_READ 0x001B
-#define pllDISP_TEST_MACRO_RW_DATA 0x001C
-#define pllDISP_TEST_MACRO_RW_CNTL 0x001D
-#define pllSCLK_CNTL2 0x001E
-#define pllMCLK_MISC 0x001F
-#define pllTV_PLL_FINE_CNTL 0x0020
-#define pllTV_PLL_CNTL 0x0021
-#define pllTV_PLL_CNTL1 0x0022
-#define pllTV_DTO_INCREMENTS 0x0023
-#define pllSPLL_AUX_CNTL 0x0024
-#define pllMPLL_AUX_CNTL 0x0025
-#define pllP2PLL_CNTL 0x002A
-#define pllP2PLL_REF_DIV 0x002B
-#define pllP2PLL_DIV_0 0x002C
-#define pllPIXCLKS_CNTL 0x002D
-#define pllHTOTAL2_CNTL 0x002E
-#define pllSSPLL_CNTL 0x0030
-#define pllSSPLL_REF_DIV 0x0031
-#define pllSSPLL_DIV_0 0x0032
-#define pllSS_INT_CNTL 0x0033
-#define pllSS_TST_CNTL 0x0034
-#define pllSCLK_MORE_CNTL 0x0035
-
-#define ixMC_PERF_CNTL 0x0000
-#define ixMC_PERF_SEL 0x0001
-#define ixMC_PERF_REGION_0 0x0002
-#define ixMC_PERF_REGION_1 0x0003
-#define ixMC_PERF_COUNT_0 0x0004
-#define ixMC_PERF_COUNT_1 0x0005
-#define ixMC_PERF_COUNT_2 0x0006
-#define ixMC_PERF_COUNT_3 0x0007
-#define ixMC_PERF_COUNT_MEMCH_A 0x0008
-#define ixMC_PERF_COUNT_MEMCH_B 0x0009
-#define ixMC_IMP_CNTL 0x000A
-#define ixMC_CHP_IO_CNTL_A0 0x000B
-#define ixMC_CHP_IO_CNTL_A1 0x000C
-#define ixMC_CHP_IO_CNTL_B0 0x000D
-#define ixMC_CHP_IO_CNTL_B1 0x000E
-#define ixMC_IMP_CNTL_0 0x000F
-#define ixTC_MISMATCH_1 0x0010
-#define ixTC_MISMATCH_2 0x0011
-#define ixMC_BIST_CTRL 0x0012
-#define ixREG_COLLAR_WRITE 0x0013
-#define ixREG_COLLAR_READ 0x0014
-#define ixR300_MC_IMP_CNTL 0x0018
-#define ixR300_MC_CHP_IO_CNTL_A0 0x0019
-#define ixR300_MC_CHP_IO_CNTL_A1 0x001a
-#define ixR300_MC_CHP_IO_CNTL_B0 0x001b
-#define ixR300_MC_CHP_IO_CNTL_B1 0x001c
-#define ixR300_MC_CHP_IO_CNTL_C0 0x001d
-#define ixR300_MC_CHP_IO_CNTL_C1 0x001e
-#define ixR300_MC_CHP_IO_CNTL_D0 0x001f
-#define ixR300_MC_CHP_IO_CNTL_D1 0x0020
-#define ixR300_MC_IMP_CNTL_0 0x0021
-#define ixR300_MC_ELPIDA_CNTL 0x0022
-#define ixR300_MC_CHP_IO_OE_CNTL_CD 0x0023
-#define ixR300_MC_READ_CNTL_CD 0x0024
-#define ixR300_MC_MC_INIT_WR_LAT_TIMER 0x0025
-#define ixR300_MC_DEBUG_CNTL 0x0026
-#define ixR300_MC_BIST_CNTL_0 0x0028
-#define ixR300_MC_BIST_CNTL_1 0x0029
-#define ixR300_MC_BIST_CNTL_2 0x002a
-#define ixR300_MC_BIST_CNTL_3 0x002b
-#define ixR300_MC_BIST_CNTL_4 0x002c
-#define ixR300_MC_BIST_CNTL_5 0x002d
-#define ixR300_MC_IMP_STATUS 0x002e
-#define ixR300_MC_DLL_CNTL 0x002f
-#define NB_TOM 0x15C
-
-/****************** for VIDIX **************************/
-
-/* BUS_CNTL bit constants */
-#define BUS_DBL_RESYNC 0x00000001
-#define BUS_MSTR_RESET 0x00000002
-#define BUS_FLUSH_BUF 0x00000004
-#define BUS_STOP_REQ_DIS 0x00000008
-#define BUS_ROTATION_DIS 0x00000010
-#define BUS_MASTER_DIS 0x00000040
-#define BUS_ROM_WRT_EN 0x00000080
-#define BUS_DIS_ROM 0x00001000
-#define BUS_PCI_READ_RETRY_EN 0x00002000
-#define BUS_AGP_AD_STEPPING_EN 0x00004000
-#define BUS_PCI_WRT_RETRY_EN 0x00008000
-#define BUS_MSTR_RD_MULT 0x00100000
-#define BUS_MSTR_RD_LINE 0x00200000
-#define BUS_SUSPEND 0x00400000
-#define LAT_16X 0x00800000
-#define BUS_RD_DISCARD_EN 0x01000000
-#define BUS_RD_ABORT_EN 0x02000000
-#define BUS_MSTR_WS 0x04000000
-#define BUS_PARKING_DIS 0x08000000
-#define BUS_MSTR_DISCONNECT_EN 0x10000000
-#define BUS_WRT_BURST 0x20000000
-#define BUS_READ_BURST 0x40000000
-#define BUS_RDY_READ_DLY 0x80000000
-#define HI_STAT 0x004C
-#define BUS_CNTL1 0x0034
-#define BUS_WAIT_ON_LOCK_EN (1 << 4)
-#define I2C_CNTL_0 0x0090
-#define I2C_DONE (1<<0)
-#define I2C_NACK (1<<1)
-#define I2C_HALT (1<<2)
-#define I2C_SOFT_RST (1<<5)
-#define I2C_DRIVE_EN (1<<6)
-#define I2C_DRIVE_SEL (1<<7)
-#define I2C_START (1<<8)
-#define I2C_STOP (1<<9)
-#define I2C_RECEIVE (1<<10)
-#define I2C_ABORT (1<<11)
-#define I2C_GO (1<<12)
-#define I2C_SEL (1<<16)
-#define I2C_EN (1<<17)
-#define I2C_CNTL_1 0x0094
-#define I2C_DATA 0x0098
-#define CONFIG_CNTL 0x00E0
-/* CONFIG_CNTL bit constants */
-#define CFG_VGA_RAM_EN 0x00000100
-#define CONFIG_MEMSIZE 0x00F8
-#define CONFIG_APER_0_BASE 0x0100
-#define CONFIG_APER_1_BASE 0x0104
-#define CONFIG_APER_SIZE 0x0108
-#define CONFIG_REG_1_BASE 0x010C
-#define CONFIG_REG_APER_SIZE 0x0110
-#define PAD_AGPINPUT_DELAY 0x0164
-#define PAD_CTLR_STRENGTH 0x0168
-#define PAD_CTLR_UPDATE 0x016C
-#define AGP_CNTL 0x0174
-#define AGP_APER_SIZE_256MB (0x00 << 0)
-#define AGP_APER_SIZE_128MB (0x20 << 0)
-#define AGP_APER_SIZE_64MB (0x30 << 0)
-#define AGP_APER_SIZE_32MB (0x38 << 0)
-#define AGP_APER_SIZE_16MB (0x3c << 0)
-#define AGP_APER_SIZE_8MB (0x3e << 0)
-#define AGP_APER_SIZE_4MB (0x3f << 0)
-#define AGP_APER_SIZE_MASK (0x3f << 0)
-#define AMCGPIO_A_REG 0x01a0
-#define AMCGPIO_EN_REG 0x01a8
-#define AMCGPIO_MASK 0x0194
-#define AMCGPIO_Y_REG 0x01a4
-#define MPP_TB_CONFIG 0x01c0 /* ? */
-#define MPP_GP_CONFIG 0x01c8 /* ? */
-#define VENDOR_ID 0x0F00
-#define DEVICE_ID 0x0F02
-#define COMMAND 0x0F04
-#define STATUS 0x0F06
-#define REVISION_ID 0x0F08
-#define REGPROG_INF 0x0F09
-#define SUB_CLASS 0x0F0A
-#define CACHE_LINE 0x0F0C
-#define LATENCY 0x0F0D
-#define HEADER 0x0F0E
-#define BIST 0x0F0F
-#define REG_MEM_BASE 0x0F10
-#define REG_IO_BASE 0x0F14
-#define REG_REG_BASE 0x0F18
-#define ADAPTER_ID 0x0F2C
-#define BIOS_ROM 0x0F30
-#define CAPABILITIES_PTR 0x0F34
-#define INTERRUPT_LINE 0x0F3C
-#define INTERRUPT_PIN 0x0F3D
-#define MIN_GRANT 0x0F3E
-#define MAX_LATENCY 0x0F3F
-#define ADAPTER_ID_W 0x0F4C
-#define PMI_CAP_ID 0x0F50
-#define PMI_NXT_CAP_PTR 0x0F51
-#define PMI_PMC_REG 0x0F52
-#define PM_STATUS 0x0F54
-#define PMI_DATA 0x0F57
-#define AGP_CAP_ID 0x0F58
-#define AGP_STATUS 0x0F5C
-#define AGP_1X_MODE 0x01
-#define AGP_2X_MODE 0x02
-#define AGP_4X_MODE 0x04
-#define AGP_MODE_MASK 0x07
-#define AGP_COMMAND 0x0F60
-
-/* Video muxer unit */
-#define VIDEOMUX_CNTL 0x0190
-#define VIPPAD_MASK 0x0198
-#define VIPPAD1_A 0x01AC
-#define VIPPAD1_EN 0x01B0
-#define VIPPAD1_Y 0x01B4
-
-#define AIC_CTRL 0x01D0
-#define AIC_STAT 0x01D4
-#define AIC_PT_BASE 0x01D8
-#define AIC_LO_ADDR 0x01DC
-#define AIC_HI_ADDR 0x01E0
-#define AIC_TLB_ADDR 0x01E4
-#define AIC_TLB_DATA 0x01E8
-#define DAC_CNTL 0x0058
-/* DAC_CNTL bit constants */
-#define DAC_8BIT_EN 0x00000100
-#define DAC_4BPP_PIX_ORDER 0x00000200
-#define DAC_CRC_EN 0x00080000
-#define DAC_MASK_ALL (0xff << 24)
-#define DAC_VGA_ADR_EN (1 << 13)
-#define DAC_RANGE_CNTL (3 << 0)
-#define DAC_BLANKING (1 << 2)
-#define DAC_CNTL2 0x007c
-/* DAC_CNTL2 bit constants */
-#define DAC2_DAC_CLK_SEL (1 << 0)
-#define DAC2_DAC2_CLK_SEL (1 << 1)
-#define DAC2_PALETTE_ACC_CTL (1 << 5)
-#define TV_DAC_CNTL 0x088c
-/* TV_DAC_CNTL bit constants */
-#define TV_DAC_STD_MASK 0x0300
-#define TV_DAC_RDACPD (1 << 24)
-#define TV_DAC_GDACPD (1 << 25)
-#define TV_DAC_BDACPD (1 << 26)
-#define CRTC_GEN_CNTL 0x0050
-/* CRTC_GEN_CNTL bit constants */
-//#define CRTC_DBL_SCAN_EN 0x00000001
-#define CRTC_INTERLACE_EN (1 << 1)
-#define CRTC_CSYNC_EN (1 << 4)
-//#define CRTC_CUR_EN 0x00010000
-#define CRTC_CUR_MODE_MASK (7 << 17)
-#define CRTC_ICON_EN (1 << 20)
-#define CRTC_EXT_DISP_EN (1 << 24)
-#define CRTC_EN (1 << 25)
-#define CRTC_DISP_REQ_EN_B (1 << 26)
-#define CRTC2_GEN_CNTL 0x03f8
-/* CRTC2_GEN_CNTL bit constants */
-#define CRTC2_DBL_SCAN_EN (1 << 0)
-#define CRTC2_INTERLACE_EN (1 << 1)
-#define CRTC2_SYNC_TRISTAT (1 << 4)
-#define CRTC2_HSYNC_TRISTAT (1 << 5)
-#define CRTC2_VSYNC_TRISTAT (1 << 6)
-#define CRTC2_CRT2_ON (1 << 7)
-#define CRTC2_ICON_EN (1 << 15)
-#define CRTC2_CUR_EN (1 << 16)
-#define CRTC2_CUR_MODE_MASK (7 << 20)
-#define CRTC2_DISP_DIS (1 << 23)
-#define CRTC2_EN (1 << 25)
-#define CRTC2_DISP_REQ_EN_B (1 << 26)
-#define CRTC2_HSYNC_DIS (1 << 28)
-#define CRTC2_VSYNC_DIS (1 << 29)
-#define MEM_CNTL 0x0140
-/* MEM_CNTL bit constants */
-#define MEM_CTLR_STATUS_IDLE 0x00000000
-#define MEM_CTLR_STATUS_BUSY 0x00100000
-#define MEM_SEQNCR_STATUS_IDLE 0x00000000
-#define MEM_SEQNCR_STATUS_BUSY 0x00200000
-#define MEM_ARBITER_STATUS_IDLE 0x00000000
-#define MEM_ARBITER_STATUS_BUSY 0x00400000
-#define MEM_REQ_UNLOCK 0x00000000
-#define MEM_REQ_LOCK 0x00800000
-#define EXT_MEM_CNTL 0x0144
-#define MC_AGP_LOCATION 0x014C
-#define MEM_IO_CNTL_A0 0x0178
-#define MEM_INIT_LATENCY_TIMER 0x0154
-#define MEM_SDRAM_MODE_REG 0x0158
-#define AGP_BASE 0x0170
-#define MEM_IO_CNTL_A1 0x017C
-#define MEM_IO_CNTL_B0 0x0180
-#define MEM_IO_CNTL_B1 0x0184
-#define MC_DEBUG 0x0188
-#define MC_STATUS 0x0150
-#define MEM_IO_OE_CNTL 0x018C
-#define MC_FB_LOCATION 0x0148
-#define HOST_PATH_CNTL 0x0130
-#define MEM_VGA_WP_SEL 0x0038
-#define MEM_VGA_RP_SEL 0x003C
-#define HDP_DEBUG 0x0138
-#define SW_SEMAPHORE 0x013C
-#define SURFACE_CNTL 0x0B00
-/* SURFACE_CNTL bit constants */
-# define SURF_TRANSLATION_DIS (1 << 8)
-#define SURFACE0_LOWER_BOUND 0x0B04
-#define SURFACE1_LOWER_BOUND 0x0B14
-#define SURFACE2_LOWER_BOUND 0x0B24
-#define SURFACE3_LOWER_BOUND 0x0B34
-#define SURFACE4_LOWER_BOUND 0x0B44
-#define SURFACE5_LOWER_BOUND 0x0B54
-#define SURFACE6_LOWER_BOUND 0x0B64
-#define SURFACE7_LOWER_BOUND 0x0B74
-#define SURFACE0_UPPER_BOUND 0x0B08
-#define SURFACE1_UPPER_BOUND 0x0B18
-#define SURFACE2_UPPER_BOUND 0x0B28
-#define SURFACE3_UPPER_BOUND 0x0B38
-#define SURFACE4_UPPER_BOUND 0x0B48
-#define SURFACE5_UPPER_BOUND 0x0B58
-#define SURFACE6_UPPER_BOUND 0x0B68
-#define SURFACE7_UPPER_BOUND 0x0B78
-#define SURFACE0_INFO 0x0B0C
-#define SURFACE1_INFO 0x0B1C
-#define SURFACE2_INFO 0x0B2C
-#define SURFACE3_INFO 0x0B3C
-#define SURFACE4_INFO 0x0B4C
-#define SURFACE5_INFO 0x0B5C
-#define SURFACE6_INFO 0x0B6C
-#define SURFACE7_INFO 0x0B7C
-#define SURFACE_ACCESS_FLAGS 0x0BF8
-#define SURFACE_ACCESS_CLR 0x0BFC
-#define GEN_INT_CNTL 0x0040
-#define GEN_INT_STATUS 0x0044
-#define VSYNC_INT_AK (1 << 2)
-#define VSYNC_INT (1 << 2)
-#define CRTC_EXT_CNTL 0x0054
-/* CRTC_EXT_CNTL bit constants */
-#define CRTC_VGA_XOVERSCAN (1 << 0)
-#define VGA_ATI_LINEAR 0x00000008
-#define VGA_128KAP_PAGING 0x00000010
-#define XCRT_CNT_EN (1 << 6)
-#define CRTC_HSYNC_DIS (1 << 8)
-#define CRTC_VSYNC_DIS (1 << 9)
-#define CRTC_DISPLAY_DIS (1 << 10)
-#define CRTC_SYNC_TRISTAT (1 << 11)
-#define CRTC_CRT_ON (1 << 15)
-#define CRTC_EXT_CNTL_DPMS_BYTE 0x0055
-#define CRTC_HSYNC_DIS_BYTE (1 << 0)
-#define CRTC_VSYNC_DIS_BYTE (1 << 1)
-#define CRTC_DISPLAY_DIS_BYTE (1 << 2)
-#define WAIT_UNTIL 0x1720
-#define WAIT_CRTC_PFLIP (1 << 0)
-#define WAIT_2D_IDLECLEAN (1 << 16)
-#define WAIT_3D_IDLECLEAN (1 << 17)
-#define WAIT_HOST_IDLECLEAN (1 << 18)
-#define ISYNC_CNTL 0x1724
-#define RBBM_GUICNTL 0x172C
-#define RBBM_STATUS 0x0E40
-#define RBBM_FIFOCNT_MASK 0x007f
-#define RBBM_ACTIVE (1 << 31)
-#define RBBM_STATUS_alt_1 0x1740
-#define RBBM_CNTL 0x00EC
-#define RBBM_CNTL_alt_1 0x0E44
-#define RBBM_SOFT_RESET 0x00F0
-/* RBBM_SOFT_RESET bit constants */
-#define SOFT_RESET_CP (1 << 0)
-#define SOFT_RESET_HI (1 << 1)
-#define SOFT_RESET_SE (1 << 2)
-#define SOFT_RESET_RE (1 << 3)
-#define SOFT_RESET_PP (1 << 4)
-#define SOFT_RESET_E2 (1 << 5)
-#define SOFT_RESET_RB (1 << 6)
-#define SOFT_RESET_HDP (1 << 7)
-#define RBBM_SOFT_RESET_alt_1 0x0E48
-#define NQWAIT_UNTIL 0x0E50
-#define RBBM_DEBUG 0x0E6C
-#define RBBM_CMDFIFO_ADDR 0x0E70
-#define RBBM_CMDFIFO_DATAL 0x0E74
-#define RBBM_CMDFIFO_DATAH 0x0E78
-#define RBBM_CMDFIFO_STAT 0x0E7C
-#define CRTC_STATUS 0x005C
-/* CRTC_STATUS bit constants */
-#define CRTC_VBLANK 0x00000001
-#define CRTC_VBLANK_SAVE ( 1 << 1)
-#define GPIO_VGA_DDC 0x0060
-#define GPIO_DVI_DDC 0x0064
-#define GPIO_MONID 0x0068
-#define PALETTE_INDEX 0x00B0
-#define PALETTE_DATA 0x00B4
-#define PALETTE_30_DATA 0x00B8
-#define CRTC_H_TOTAL_DISP 0x0200
-#define CRTC_H_TOTAL (0x03ff << 0)
-#define CRTC_H_TOTAL_SHIFT 0
-#define CRTC_H_DISP (0x01ff << 16)
-#define CRTC_H_DISP_SHIFT 16
-#define CRTC2_H_TOTAL_DISP 0x0300
-#define CRTC2_H_TOTAL (0x03ff << 0)
-#define CRTC2_H_TOTAL_SHIFT 0
-#define CRTC2_H_DISP (0x01ff << 16)
-#define CRTC2_H_DISP_SHIFT 16
-#define CRTC_H_SYNC_STRT_WID 0x0204
-#define CRTC_H_SYNC_STRT_PIX (0x07 << 0)
-#define CRTC_H_SYNC_STRT_CHAR (0x3ff << 3)
-#define CRTC_H_SYNC_STRT_CHAR_SHIFT 3
-#define CRTC_H_SYNC_WID (0x3f << 16)
-#define CRTC_H_SYNC_WID_SHIFT 16
-#define CRTC_H_SYNC_POL (1 << 23)
-#define CRTC2_H_SYNC_STRT_WID 0x0304
-#define CRTC2_H_SYNC_STRT_PIX (0x07 << 0)
-#define CRTC2_H_SYNC_STRT_CHAR (0x3ff << 3)
-#define CRTC2_H_SYNC_STRT_CHAR_SHIFT 3
-#define CRTC2_H_SYNC_WID (0x3f << 16)
-#define CRTC2_H_SYNC_WID_SHIFT 16
-#define CRTC2_H_SYNC_POL (1 << 23)
-#define CRTC_V_TOTAL_DISP 0x0208
-#define CRTC_V_TOTAL (0x07ff << 0)
-#define CRTC_V_TOTAL_SHIFT 0
-#define CRTC_V_DISP (0x07ff << 16)
-#define CRTC_V_DISP_SHIFT 16
-#define CRTC2_V_TOTAL_DISP 0x0308
-#define CRTC2_V_TOTAL (0x07ff << 0)
-#define CRTC2_V_TOTAL_SHIFT 0
-#define CRTC2_V_DISP (0x07ff << 16)
-#define CRTC2_V_DISP_SHIFT 16
-#define CRTC_V_SYNC_STRT_WID 0x020C
-#define CRTC_V_SYNC_STRT (0x7ff << 0)
-#define CRTC_V_SYNC_STRT_SHIFT 0
-#define CRTC_V_SYNC_WID (0x1f << 16)
-#define CRTC_V_SYNC_WID_SHIFT 16
-#define CRTC_V_SYNC_POL (1 << 23)
-#define CRTC2_V_SYNC_STRT_WID 0x030C
-#define CRTC2_V_SYNC_STRT (0x7ff << 0)
-#define CRTC2_V_SYNC_STRT_SHIFT 0
-#define CRTC2_V_SYNC_WID (0x1f << 16)
-#define CRTC2_V_SYNC_WID_SHIFT 16
-#define CRTC2_V_SYNC_POL (1 << 23)
-#define CRTC_VLINE_CRNT_VLINE 0x0210
-#define CRTC_CRNT_VLINE_MASK (0x7ff << 16)
-#define CRTC2_VLINE_CRNT_VLINE 0x0310
-#define CRTC_CRNT_FRAME 0x0214
-#define CRTC2_CRNT_FRAME 0x0314
-#define CRTC_GUI_TRIG_VLINE 0x0218
-#define CRTC2_GUI_TRIG_VLINE 0x0318
-#define CRTC_DEBUG 0x021C
-#define CRTC2_DEBUG 0x031C
-#define CRTC_OFFSET_RIGHT 0x0220
-#define CRTC_OFFSET 0x0224
-#define CRTC2_OFFSET 0x0324
-#define CRTC_OFFSET_CNTL 0x0228
-#define CRTC_TILE_EN (1 << 15)
-#define CRTC2_OFFSET_CNTL 0x0328
-#define CRTC2_TILE_EN (1 << 15)
-#define CRTC_PITCH 0x022C
-#define CRTC2_PITCH 0x032C
-#define TMDS_CRC 0x02a0
-#define OVR_CLR 0x0230
-#define OVR_WID_LEFT_RIGHT 0x0234
-#define OVR_WID_TOP_BOTTOM 0x0238
-#define DISPLAY_BASE_ADDR 0x023C
-#define SNAPSHOT_VH_COUNTS 0x0240
-#define SNAPSHOT_F_COUNT 0x0244
-#define N_VIF_COUNT 0x0248
-#define SNAPSHOT_VIF_COUNT 0x024C
-#define FP_CRTC_H_TOTAL_DISP 0x0250
-#define FP_CRTC2_H_TOTAL_DISP 0x0350
-#define FP_CRTC_V_TOTAL_DISP 0x0254
-#define FP_CRTC2_V_TOTAL_DISP 0x0354
-#define FP_CRTC_H_TOTAL_MASK 0x000003ff
-#define FP_CRTC_H_DISP_MASK 0x01ff0000
-#define FP_CRTC_V_TOTAL_MASK 0x00000fff
-#define FP_CRTC_V_DISP_MASK 0x0fff0000
-#define FP_H_SYNC_STRT_CHAR_MASK 0x00001ff8
-#define FP_H_SYNC_WID_MASK 0x003f0000
-#define FP_V_SYNC_STRT_MASK 0x00000fff
-#define FP_V_SYNC_WID_MASK 0x001f0000
-#define FP_CRTC_H_TOTAL_SHIFT 0x00000000
-#define FP_CRTC_H_DISP_SHIFT 0x00000010
-#define FP_CRTC_V_TOTAL_SHIFT 0x00000000
-#define FP_CRTC_V_DISP_SHIFT 0x00000010
-#define FP_H_SYNC_STRT_CHAR_SHIFT 0x00000003
-#define FP_H_SYNC_WID_SHIFT 0x00000010
-#define FP_V_SYNC_STRT_SHIFT 0x00000000
-#define FP_V_SYNC_WID_SHIFT 0x00000010
-#define CRT_CRTC_H_SYNC_STRT_WID 0x0258
-#define CRT_CRTC_V_SYNC_STRT_WID 0x025C
-#define CUR_OFFSET 0x0260
-#define CUR_HORZ_VERT_POSN 0x0264
-#define CUR_HORZ_VERT_OFF 0x0268
-/* CUR_OFFSET, CUR_HORZ_VERT_POSN, CUR_HORZ_VERT_OFF bit constants */
-#define CUR_LOCK 0x80000000
-#define CUR_CLR0 0x026C
-#define CUR_CLR1 0x0270
-#define CUR2_OFFSET 0x0360
-#define CUR2_HORZ_VERT_POSN 0x0364
-#define CUR2_HORZ_VERT_OFF 0x0368
-#define CUR2_LOCK (1 << 31)
-#define CUR2_CLR0 0x036c
-#define CUR2_CLR1 0x0370
-#define FP_HORZ_VERT_ACTIVE 0x0278
-#define CRTC_MORE_CNTL 0x027C
-#define DAC_EXT_CNTL 0x0280
-#define FP_GEN_CNTL 0x0284
-/* FP_GEN_CNTL bit constants */
-#define FP_FPON (1 << 0)
-#define FP_TMDS_EN (1 << 2)
-#define FP_EN_TMDS (1 << 7)
-#define FP_DETECT_SENSE (1 << 8)
-#define FP_SEL_CRTC2 (1 << 13)
-#define FP_CRTC_DONT_SHADOW_HPAR (1 << 15)
-#define FP_CRTC_DONT_SHADOW_VPAR (1 << 16)
-#define FP_CRTC_DONT_SHADOW_HEND (1 << 17)
-#define FP_CRTC_USE_SHADOW_VEND (1 << 18)
-#define FP_RMX_HVSYNC_CONTROL_EN (1 << 20)
-#define FP_DFP_SYNC_SEL (1 << 21)
-#define FP_CRTC_LOCK_8DOT (1 << 22)
-#define FP_CRT_SYNC_SEL (1 << 23)
-#define FP_USE_SHADOW_EN (1 << 24)
-#define FP_CRT_SYNC_ALT (1 << 26)
-#define FP2_GEN_CNTL 0x0288
-/* FP2_GEN_CNTL bit constants */
-#define FP2_FPON (1 << 0)
-#define FP2_TMDS_EN (1 << 2)
-#define FP2_EN_TMDS (1 << 7)
-#define FP2_DETECT_SENSE (1 << 8)
-#define FP2_SEL_CRTC2 (1 << 13)
-#define FP2_FP_POL (1 << 16)
-#define FP2_LP_POL (1 << 17)
-#define FP2_SCK_POL (1 << 18)
-#define FP2_LCD_CNTL_MASK (7 << 19)
-#define FP2_PAD_FLOP_EN (1 << 22)
-#define FP2_CRC_EN (1 << 23)
-#define FP2_CRC_READ_EN (1 << 24)
-#define FP_HORZ_STRETCH 0x028C
-#define FP_HORZ2_STRETCH 0x038C
-#define HORZ_STRETCH_RATIO_MASK 0xffff
-#define HORZ_STRETCH_RATIO_MAX 4096
-#define HORZ_PANEL_SIZE (0x1ff << 16)
-#define HORZ_PANEL_SHIFT 16
-#define HORZ_STRETCH_PIXREP (0 << 25)
-#define HORZ_STRETCH_BLEND (1 << 26)
-#define HORZ_STRETCH_ENABLE (1 << 25)
-#define HORZ_AUTO_RATIO (1 << 27)
-#define HORZ_FP_LOOP_STRETCH (0x7 << 28)
-#define HORZ_AUTO_RATIO_INC (1 << 31)
-#define FP_VERT_STRETCH 0x0290
-#define FP_VERT2_STRETCH 0x0390
-#define VERT_PANEL_SIZE (0xfff << 12)
-#define VERT_PANEL_SHIFT 12
-#define VERT_STRETCH_RATIO_MASK 0xfff
-#define VERT_STRETCH_RATIO_SHIFT 0
-#define VERT_STRETCH_RATIO_MAX 4096
-#define VERT_STRETCH_ENABLE (1 << 25)
-#define VERT_STRETCH_LINEREP (0 << 26)
-#define VERT_STRETCH_BLEND (1 << 26)
-#define VERT_AUTO_RATIO_EN (1 << 27)
-#define VERT_STRETCH_RESERVED 0xf1000000
-#define FP_H_SYNC_STRT_WID 0x02C4
-#define FP_H2_SYNC_STRT_WID 0x03C4
-#define FP_V_SYNC_STRT_WID 0x02C8
-#define FP_V2_SYNC_STRT_WID 0x03C8
-#define LVDS_GEN_CNTL 0x02d0
-#define LVDS_ON (1 << 0)
-#define LVDS_DISPLAY_DIS (1 << 1)
-#define LVDS_PANEL_TYPE (1 << 2)
-#define LVDS_PANEL_FORMAT (1 << 3)
-#define LVDS_EN (1 << 7)
-#define LVDS_DIGON (1 << 18)
-#define LVDS_BLON (1 << 19)
-#define LVDS_SEL_CRTC2 (1 << 23)
-#define LVDS_PLL_CNTL 0x02d4
-#define AUX_WINDOW_HORZ_CNTL 0x02D8
-#define AUX_WINDOW_VERT_CNTL 0x02DC
-#define DDA_CONFIG 0x02e0
-#define DDA_ON_OFF 0x02e4
-
-#define GRPH_BUFFER_CNTL 0x02F0
-#define VGA_BUFFER_CNTL 0x02F4
-
-/* first overlay unit (there is only one) */
-
-#define OV0_Y_X_START 0x0400
-#define OV0_Y_X_END 0x0404
-#define OV0_PIPELINE_CNTL 0x0408
-#define OV0_EXCLUSIVE_HORZ 0x0408
-#define EXCL_HORZ_START_MASK 0x000000ff
-#define EXCL_HORZ_END_MASK 0x0000ff00
-#define EXCL_HORZ_BACK_PORCH_MASK 0x00ff0000
-#define EXCL_HORZ_EXCLUSIVE_EN 0x80000000
-#define OV0_EXCLUSIVE_VERT 0x040C
-#define EXCL_VERT_START_MASK 0x000003ff
-#define EXCL_VERT_END_MASK 0x03ff0000
-#define OV0_REG_LOAD_CNTL 0x0410
-#define REG_LD_CTL_LOCK 0x00000001L
-#define REG_LD_CTL_VBLANK_DURING_LOCK 0x00000002L
-#define REG_LD_CTL_STALL_GUI_UNTIL_FLIP 0x00000004L
-#define REG_LD_CTL_LOCK_READBACK 0x00000008L
-#define OV0_SCALE_CNTL 0x0420
-#define SCALER_PIX_EXPAND 0x00000001L
-#define SCALER_Y2R_TEMP 0x00000002L
-#define SCALER_HORZ_PICK_NEAREST 0x00000004L
-#define SCALER_VERT_PICK_NEAREST 0x00000008L
-#define SCALER_SIGNED_UV 0x00000010L
-#define SCALER_GAMMA_SEL_MASK 0x00000060L
-#define SCALER_GAMMA_SEL_BRIGHT 0x00000000L
-#define SCALER_GAMMA_SEL_G22 0x00000020L
-#define SCALER_GAMMA_SEL_G18 0x00000040L
-#define SCALER_GAMMA_SEL_G14 0x00000060L
-#define SCALER_COMCORE_SHIFT_UP_ONE 0x00000080L
-#define SCALER_SURFAC_FORMAT 0x00000f00L
-#define SCALER_SOURCE_UNK0 0x00000000L /* 2 bpp ??? */
-#define SCALER_SOURCE_UNK1 0x00000100L /* 4 bpp ??? */
-#define SCALER_SOURCE_UNK2 0x00000200L /* 8 bpp ??? */
-#define SCALER_SOURCE_15BPP 0x00000300L
-#define SCALER_SOURCE_16BPP 0x00000400L
-/*# define SCALER_SOURCE_24BPP 0x00000500L*/
-#define SCALER_SOURCE_32BPP 0x00000600L
-#define SCALER_SOURCE_UNK3 0x00000700L /* 8BPP_RGB332 ??? */
-#define SCALER_SOURCE_UNK4 0x00000800L /* 8BPP_Y8 ??? */
-#define SCALER_SOURCE_YUV9 0x00000900L /* 8BPP_RGB8 */
-#define SCALER_SOURCE_YUV12 0x00000A00L
-#define SCALER_SOURCE_VYUY422 0x00000B00L
-#define SCALER_SOURCE_YVYU422 0x00000C00L
-#define SCALER_SOURCE_UNK5 0x00000D00L /* ??? */
-#define SCALER_SOURCE_UNK6 0x00000E00L /* 32BPP_AYUV444 */
-#define SCALER_SOURCE_UNK7 0x00000F00L /* 16BPP_ARGB4444 */
-#define SCALER_ADAPTIVE_DEINT 0x00001000L
-#define R200_SCALER_TEMPORAL_DEINT 0x00002000L
-#define SCALER_UNKNOWN_FLAG1 0x00004000L /* ??? */
-#define SCALER_SMART_SWITCH 0x00008000L
-#define SCALER_BURST_PER_PLANE 0x007f0000L
-#define SCALER_DOUBLE_BUFFER 0x01000000L
-#define SCALER_UNKNOWN_FLAG3 0x02000000L /* ??? */
-#define SCALER_UNKNOWN_FLAG4 0x04000000L /* ??? */
-#define SCALER_DIS_LIMIT 0x08000000L
-#define SCALER_PRG_LOAD_START 0x10000000L
-#define SCALER_INT_EMU 0x20000000L
-#define SCALER_ENABLE 0x40000000L
-#define SCALER_SOFT_RESET 0x80000000L
-#define OV0_V_INC 0x0424
-#define OV0_P1_V_ACCUM_INIT 0x0428
-#define OV0_P1_MAX_LN_IN_PER_LN_OUT 0x00000003L
-#define OV0_P1_V_ACCUM_INIT_MASK 0x01ff8000L
-#define OV0_P23_V_ACCUM_INIT 0x042C
-#define OV0_P23_MAX_LN_IN_PER_LN_OUT 0x00000003L
-#define OV0_P23_V_ACCUM_INIT_MASK 0x01ff8000L
-#define OV0_P1_BLANK_LINES_AT_TOP 0x0430
-#define P1_BLNK_LN_AT_TOP_M1_MASK 0x00000fffL
-#define P1_ACTIVE_LINES_M1 0x0fff0000L
-#define OV0_P23_BLANK_LINES_AT_TOP 0x0434
-#define P23_BLNK_LN_AT_TOP_M1_MASK 0x000007ffL
-#define P23_ACTIVE_LINES_M1 0x07ff0000L
-#define OV0_BASE_ADDR 0x043C
-#define OV0_VID_BUF0_BASE_ADRS 0x0440
-#define VIF_BUF0_PITCH_SEL 0x00000001L
-#define VIF_BUF0_TILE_ADRS 0x00000002L
-#define VIF_BUF0_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF0_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF1_BASE_ADRS 0x0444
-#define VIF_BUF1_PITCH_SEL 0x00000001L
-#define VIF_BUF1_TILE_ADRS 0x00000002L
-#define VIF_BUF1_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF1_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF2_BASE_ADRS 0x0448
-#define VIF_BUF2_PITCH_SEL 0x00000001L
-#define VIF_BUF2_TILE_ADRS 0x00000002L
-#define VIF_BUF2_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF2_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF3_BASE_ADRS 0x044C
-#define VIF_BUF3_PITCH_SEL 0x00000001L
-#define VIF_BUF3_TILE_ADRS 0x00000002L
-#define VIF_BUF3_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF3_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF4_BASE_ADRS 0x0450
-#define VIF_BUF4_PITCH_SEL 0x00000001L
-#define VIF_BUF4_TILE_ADRS 0x00000002L
-#define VIF_BUF4_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF4_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF5_BASE_ADRS 0x0454
-#define VIF_BUF5_PITCH_SEL 0x00000001L
-#define VIF_BUF5_TILE_ADRS 0x00000002L
-#define VIF_BUF5_BASE_ADRS_MASK 0xfffffff0L
-#define VIF_BUF5_1ST_LINE_LSBS_MASK 0x48000000L
-#define OV0_VID_BUF_PITCH0_VALUE 0x0460
-#define OV0_VID_BUF_PITCH1_VALUE 0x0464
-#define OV0_AUTO_FLIP_CNTL 0x0470
-#define OV0_AUTO_FLIP_CNTL_SOFT_BUF_NUM 0x00000007
-#define OV0_AUTO_FLIP_CNTL_SOFT_REPEAT_FIELD 0x00000008
-#define OV0_AUTO_FLIP_CNTL_SOFT_BUF_ODD 0x00000010
-#define OV0_AUTO_FLIP_CNTL_IGNORE_REPEAT_FIELD 0x00000020
-#define OV0_AUTO_FLIP_CNTL_SOFT_EOF_TOGGLE 0x00000040
-#define OV0_AUTO_FLIP_CNTL_VID_PORT_SELECT 0x00000300
-#define OV0_AUTO_FLIP_CNTL_P1_FIRST_LINE_EVEN 0x00010000
-#define OV0_AUTO_FLIP_CNTL_SHIFT_EVEN_DOWN 0x00040000
-#define OV0_AUTO_FLIP_CNTL_SHIFT_ODD_DOWN 0x00080000
-#define OV0_AUTO_FLIP_CNTL_FIELD_POL_SOURCE 0x00800000
-#define OV0_DEINTERLACE_PATTERN 0x0474
-#define OV0_SUBMIT_HISTORY 0x0478
-#define OV0_H_INC 0x0480
-#define OV0_STEP_BY 0x0484
-#define OV0_P1_H_ACCUM_INIT 0x0488
-#define OV0_P23_H_ACCUM_INIT 0x048C
-#define OV0_P1_X_START_END 0x0494
-#define OV0_P2_X_START_END 0x0498
-#define OV0_P3_X_START_END 0x049C
-#define OV0_FILTER_CNTL 0x04A0
-#define FILTER_PROGRAMMABLE_COEF 0x00000000
-#define FILTER_HARD_SCALE_HORZ_Y 0x00000001
-#define FILTER_HARD_SCALE_HORZ_UV 0x00000002
-#define FILTER_HARD_SCALE_VERT_Y 0x00000004
-#define FILTER_HARD_SCALE_VERT_UV 0x00000008
-#define FILTER_HARDCODED_COEF 0x0000000F
-#define FILTER_COEF_MASK 0x0000000F
-/* When bit is set hard coded coefficients are used. */
-
-/*
- Top quality 4x4-tap filtered vertical and horizontal scaler.
- It allows up to 64:1 upscaling and downscaling without
- performance or quality degradation.
-*/
-#define OV0_FOUR_TAP_COEF_0 0x04B0
-#define OV0_FOUR_TAP_PHASE_0_TAP_0 0x0000000F
-#define OV0_FOUR_TAP_PHASE_0_TAP_1 0x00007F00
-#define OV0_FOUR_TAP_PHASE_0_TAP_2 0x007F0000
-#define OV0_FOUR_TAP_PHASE_0_TAP_3 0x0F000000
-#define OV0_FOUR_TAP_COEF_1 0x04B4
-#define OV0_FOUR_TAP_PHASE_1_5_TAP_0 0x0000000F
-#define OV0_FOUR_TAP_PHASE_1_5_TAP_1 0x00007F00
-#define OV0_FOUR_TAP_PHASE_1_5_TAP_2 0x007F0000
-#define OV0_FOUR_TAP_PHASE_1_5_TAP_3 0x0F000000
-#define OV0_FOUR_TAP_COEF_2 0x04B8
-#define OV0_FOUR_TAP_PHASE_2_6_TAP_0 0x0000000F
-#define OV0_FOUR_TAP_PHASE_2_6_TAP_1 0x00007F00
-#define OV0_FOUR_TAP_PHASE_2_6_TAP_2 0x007F0000
-#define OV0_FOUR_TAP_PHASE_2_6_TAP_3 0x0F000000
-#define OV0_FOUR_TAP_COEF_3 0x04BC
-#define OV0_FOUR_TAP_PHASE_3_7_TAP_0 0x0000000F
-#define OV0_FOUR_TAP_PHASE_3_7_TAP_1 0x00007F00
-#define OV0_FOUR_TAP_PHASE_3_7_TAP_2 0x007F0000
-#define OV0_FOUR_TAP_PHASE_3_7_TAP_3 0x0F000000
-#define OV0_FOUR_TAP_COEF_4 0x04C0
-#define OV0_FOUR_TAP_PHASE_4_TAP_0 0x0000000F
-#define OV0_FOUR_TAP_PHASE_4_TAP_1 0x00007F00
-#define OV0_FOUR_TAP_PHASE_4_TAP_2 0x007F0000
-#define OV0_FOUR_TAP_PHASE_4_TAP_3 0x0F000000
-/* 0th_tap means that the left most of top most pixel in a set of four will
- be multiplied by this coefficient. */
-
-#define OV0_FLAG_CNTL 0x04DC
-#define OV0_SLICE_CNTL 0x04E0
-#define SLICE_CNTL_DISABLE 0x40000000
-/* Video and graphics keys allow alpha blending, color correction
- and many other video effects */
-#define OV0_VID_KEY_CLR 0x04E4
-#define OV0_VID_KEY_MSK 0x04E8
-#define OV0_GRAPHICS_KEY_CLR 0x04EC
-#define OV0_GRAPHICS_KEY_MSK 0x04F0
-#define OV0_KEY_CNTL 0x04F4
-#define VIDEO_KEY_FN_MASK 0x00000003L
-#define VIDEO_KEY_FN_FALSE 0x00000000L
-#define VIDEO_KEY_FN_TRUE 0x00000001L
-#define VIDEO_KEY_FN_EQ 0x00000002L
-#define VIDEO_KEY_FN_NE 0x00000003L
-#define GRAPHIC_KEY_FN_MASK 0x00000030L
-#define GRAPHIC_KEY_FN_FALSE 0x00000000L
-#define GRAPHIC_KEY_FN_TRUE 0x00000010L
-#define GRAPHIC_KEY_FN_EQ 0x00000020L
-#define GRAPHIC_KEY_FN_NE 0x00000030L
-#define CMP_MIX_MASK 0x00000100L
-#define CMP_MIX_OR 0x00000000L
-#define CMP_MIX_AND 0x00000100L
-#define OV0_TEST 0x04F8
-#define OV0_SCALER_Y2R_DISABLE 0x00000001L
-#define OV0_SUBPIC_ONLY 0x00000008L
-#define OV0_EXTENSE 0x00000010L
-#define OV0_SWAP_UV 0x00000020L
-#define OV0_LIN_TRANS_A 0x0D20
-#define OV0_LIN_TRANS_B 0x0D24
-#define OV0_LIN_TRANS_C 0x0D28
-#define OV0_LIN_TRANS_D 0x0D2C
-#define OV0_LIN_TRANS_E 0x0D30
-#define OV0_LIN_TRANS_F 0x0D34
-#define OV0_GAMMA_0_F 0x0D40
-#define OV0_GAMMA_10_1F 0x0D44
-#define OV0_GAMMA_20_3F 0x0D48
-#define OV0_GAMMA_40_7F 0x0D4C
-/* These registers exist on R200 only */
-#define OV0_GAMMA_80_BF 0x0E00
-#define OV0_GAMMA_C0_FF 0x0E04
-#define OV0_GAMMA_100_13F 0x0E08
-#define OV0_GAMMA_140_17F 0x0E0C
-#define OV0_GAMMA_180_1BF 0x0E10
-#define OV0_GAMMA_1C0_1FF 0x0E14
-#define OV0_GAMMA_200_23F 0x0E18
-#define OV0_GAMMA_240_27F 0x0E1C
-#define OV0_GAMMA_280_2BF 0x0E20
-#define OV0_GAMMA_2C0_2FF 0x0E24
-#define OV0_GAMMA_300_33F 0x0E28
-#define OV0_GAMMA_340_37F 0x0E2C
-/* End of R200 specific definitions */
-#define OV0_GAMMA_380_3BF 0x0D50
-#define OV0_GAMMA_3C0_3FF 0x0D54
-
-/*
- IDCT ENGINE:
- It's MPEG-2 hardware decoder which incorporates run-level decode, de-zigzag
- and IDCT into an IDCT engine to complement the motion compensation engine.
-*/
-#define IDCT_RUNS 0x1F80
-#define IDCT_LEVELS 0x1F84
-#define IDCT_AUTH_CONTROL 0x1F88
-#define IDCT_AUTH 0x1F8C
-#define IDCT_CONTROL 0x1FBC
-
-#define SE_MC_SRC2_CNTL 0x19D4
-#define SE_MC_SRC1_CNTL 0x19D8
-#define SE_MC_DST_CNTL 0x19DC
-#define SE_MC_CNTL_START 0x19E0
-#define SE_MC_BUF_BASE 0x19E4
-#define PP_MC_CONTEXT 0x19E8
-
-/*
- SUBPICTURE UNIT:
- Decompressing, scaling and alpha blending the compressed bitmap on the fly.
- Provide optimal DVD subpicture qualtity.
-*/
-#define SUBPIC_CNTL 0x0540
-#define SUBPIC_DEFCOLCON 0x0544
-#define SUBPIC_Y_X_START 0x054C
-#define SUBPIC_Y_X_END 0x0550
-#define SUBPIC_V_INC 0x0554
-#define SUBPIC_H_INC 0x0558
-#define SUBPIC_BUF0_OFFSET 0x055C
-#define SUBPIC_BUF1_OFFSET 0x0560
-#define SUBPIC_LC0_OFFSET 0x0564
-#define SUBPIC_LC1_OFFSET 0x0568
-#define SUBPIC_PITCH 0x056C
-#define SUBPIC_BTN_HLI_COLCON 0x0570
-#define SUBPIC_BTN_HLI_Y_X_START 0x0574
-#define SUBPIC_BTN_HLI_Y_X_END 0x0578
-#define SUBPIC_PALETTE_INDEX 0x057C
-#define SUBPIC_PALETTE_DATA 0x0580
-#define SUBPIC_H_ACCUM_INIT 0x0584
-#define SUBPIC_V_ACCUM_INIT 0x0588
-
-#define CP_RB_BASE 0x0700
-#define CP_RB_CNTL 0x0704
-#define CP_RB_RPTR_ADDR 0x070C
-#define CP_RB_RPTR 0x0710
-#define CP_RB_WPTR 0x0714
-#define CP_RB_WPTR_DELAY 0x0718
-#define CP_IB_BASE 0x0738
-#define CP_IB_BUFSZ 0x073C
-#define CP_CSQ_CNTL 0x0740
-#define SCRATCH_UMSK 0x0770
-#define SCRATCH_ADDR 0x0774
-#define DMA_GUI_TABLE_ADDR 0x0780
-#define DMA_GUI_COMMAND__BYTE_COUNT_MASK 0x001fffff
-#define DMA_GUI_COMMAND__INTDIS 0x40000000
-#define DMA_GUI_COMMAND__EOL 0x80000000
-#define DMA_GUI_SRC_ADDR 0x0784
-#define DMA_GUI_DST_ADDR 0x0788
-#define DMA_GUI_COMMAND 0x078C
-#define DMA_GUI_STATUS 0x0790
-#define DMA_GUI_ACT_DSCRPTR 0x0794
-#define DMA_VID_TABLE_ADDR 0x07A0
-#define DMA_VID_SRC_ADDR 0x07A4
-#define DMA_VID_DST_ADDR 0x07A8
-#define DMA_VID_COMMAND 0x07AC
-#define DMA_VID_STATUS 0x07B0
-#define DMA_VID_ACT_DSCRPTR 0x07B4
-#define CP_ME_CNTL 0x07D0
-#define CP_ME_RAM_ADDR 0x07D4
-#define CP_ME_RAM_RADDR 0x07D8
-#define CP_ME_RAM_DATAH 0x07DC
-#define CP_ME_RAM_DATAL 0x07E0
-#define CP_CSQ_ADDR 0x07F0
-#define CP_CSQ_DATA 0x07F4
-#define CP_CSQ_STAT 0x07F8
-
-#define DISP_MISC_CNTL 0x0D00
-#define SOFT_RESET_GRPH_PP (1 << 0)
-#define DAC_MACRO_CNTL 0x0D04
-#define DISP_PWR_MAN 0x0D08
-#define DISP_TEST_DEBUG_CNTL 0x0D10
-#define DISP_HW_DEBUG 0x0D14
-#define DAC_CRC_SIG1 0x0D18
-#define DAC_CRC_SIG2 0x0D1C
-
-/* first capture unit */
-
-#define VID_BUFFER_CONTROL 0x0900
-#define CAP_INT_CNTL 0x0908
-#define CAP_INT_STATUS 0x090C
-#define FCP_CNTL 0x0910
-#define FCP0_SRC_PCICLK 0
-#define FCP0_SRC_PCLK 1
-#define FCP0_SRC_PCLKb 2
-#define FCP0_SRC_HREF 3
-#define FCP0_SRC_GND 4
-#define FCP0_SRC_HREFb 5
-#define CAP0_BUF0_OFFSET 0x0920
-#define CAP0_BUF1_OFFSET 0x0924
-#define CAP0_BUF0_EVEN_OFFSET 0x0928
-#define CAP0_BUF1_EVEN_OFFSET 0x092C
-#define CAP0_BUF_PITCH 0x0930
-#define CAP0_V_WINDOW 0x0934
-#define CAP0_H_WINDOW 0x0938
-#define CAP0_VBI0_OFFSET 0x093C
-#define CAP0_VBI1_OFFSET 0x0940
-#define CAP0_VBI_V_WINDOW 0x0944
-#define CAP0_VBI_H_WINDOW 0x0948
-#define CAP0_PORT_MODE_CNTL 0x094C
-#define CAP0_TRIG_CNTL 0x0950
-#define CAP0_DEBUG 0x0954
-#define CAP0_CONFIG 0x0958
-#define CAP0_CONFIG_CONTINUOS 0x00000001
-#define CAP0_CONFIG_START_FIELD_EVEN 0x00000002
-#define CAP0_CONFIG_START_BUF_GET 0x00000004
-#define CAP0_CONFIG_START_BUF_SET 0x00000008
-#define CAP0_CONFIG_BUF_TYPE_ALT 0x00000010
-#define CAP0_CONFIG_BUF_TYPE_FRAME 0x00000020
-#define CAP0_CONFIG_ONESHOT_MODE_FRAME 0x00000040
-#define CAP0_CONFIG_BUF_MODE_DOUBLE 0x00000080
-#define CAP0_CONFIG_BUF_MODE_TRIPLE 0x00000100
-#define CAP0_CONFIG_MIRROR_EN 0x00000200
-#define CAP0_CONFIG_ONESHOT_MIRROR_EN 0x00000400
-#define CAP0_CONFIG_VIDEO_SIGNED_UV 0x00000800
-#define CAP0_CONFIG_ANC_DECODE_EN 0x00001000
-#define CAP0_CONFIG_VBI_EN 0x00002000
-#define CAP0_CONFIG_SOFT_PULL_DOWN_EN 0x00004000
-#define CAP0_CONFIG_VIP_EXTEND_FLAG_EN 0x00008000
-#define CAP0_CONFIG_FAKE_FIELD_EN 0x00010000
-#define CAP0_CONFIG_ODD_ONE_MORE_LINE 0x00020000
-#define CAP0_CONFIG_EVEN_ONE_MORE_LINE 0x00040000
-#define CAP0_CONFIG_HORZ_DIVIDE_2 0x00080000
-#define CAP0_CONFIG_HORZ_DIVIDE_4 0x00100000
-#define CAP0_CONFIG_VERT_DIVIDE_2 0x00200000
-#define CAP0_CONFIG_VERT_DIVIDE_4 0x00400000
-#define CAP0_CONFIG_FORMAT_BROOKTREE 0x00000000
-#define CAP0_CONFIG_FORMAT_CCIR656 0x00800000
-#define CAP0_CONFIG_FORMAT_ZV 0x01000000
-#define CAP0_CONFIG_FORMAT_VIP 0x01800000
-#define CAP0_CONFIG_FORMAT_TRANSPORT 0x02000000
-#define CAP0_CONFIG_HORZ_DECIMATOR 0x04000000
-#define CAP0_CONFIG_VIDEO_IN_YVYU422 0x00000000
-#define CAP0_CONFIG_VIDEO_IN_VYUY422 0x20000000
-#define CAP0_CONFIG_VBI_DIVIDE_2 0x40000000
-#define CAP0_CONFIG_VBI_DIVIDE_4 0x80000000
-#define CAP0_ANC_ODD_OFFSET 0x095C
-#define CAP0_ANC_EVEN_OFFSET 0x0960
-#define CAP0_ANC_H_WINDOW 0x0964
-#define CAP0_VIDEO_SYNC_TEST 0x0968
-#define CAP0_ONESHOT_BUF_OFFSET 0x096C
-#define CAP0_BUF_STATUS 0x0970
-/* #define CAP0_DWNSC_XRATIO 0x0978 */
-/* #define CAP0_XSHARPNESS 0x097C */
-#define CAP0_VBI2_OFFSET 0x0980
-#define CAP0_VBI3_OFFSET 0x0984
-#define CAP0_ANC2_OFFSET 0x0988
-#define CAP0_ANC3_OFFSET 0x098C
-
-/* second capture unit */
-
-#define CAP1_BUF0_OFFSET 0x0990
-#define CAP1_BUF1_OFFSET 0x0994
-#define CAP1_BUF0_EVEN_OFFSET 0x0998
-#define CAP1_BUF1_EVEN_OFFSET 0x099C
-
-#define CAP1_BUF_PITCH 0x09A0
-#define CAP1_V_WINDOW 0x09A4
-#define CAP1_H_WINDOW 0x09A8
-#define CAP1_VBI_ODD_OFFSET 0x09AC
-#define CAP1_VBI_EVEN_OFFSET 0x09B0
-#define CAP1_VBI_V_WINDOW 0x09B4
-#define CAP1_VBI_H_WINDOW 0x09B8
-#define CAP1_PORT_MODE_CNTL 0x09BC
-#define CAP1_DEBUG 0x09C4
-#define CAP1_CONFIG 0x09C8
-#define CAP1_ANC_ODD_OFFSET 0x09CC
-#define CAP1_ANC_EVEN_OFFSET 0x09D0
-#define CAP1_ANC_H_WINDOW 0x09D4
-#define CAP1_VIDEO_SYNC_TEST 0x09D8
-#define CAP1_ONESHOT_BUF_OFFSET 0x09DC
-#define CAP1_BUF_STATUS 0x09E0
-#define CAP1_DWNSC_XRATIO 0x09E8
-#define CAP1_XSHARPNESS 0x09EC
-
-#define DISP_MERGE_CNTL 0x0D60
-#define DISP_OUTPUT_CNTL 0x0D64
-#define DISP_DAC_SOURCE_MASK 0x03
-#define DISP_DAC_SOURCE_CRTC2 0x01
-#define DISP_LIN_TRANS_GRPH_A 0x0D80
-#define DISP_LIN_TRANS_GRPH_B 0x0D84
-#define DISP_LIN_TRANS_GRPH_C 0x0D88
-#define DISP_LIN_TRANS_GRPH_D 0x0D8C
-#define DISP_LIN_TRANS_GRPH_E 0x0D90
-#define DISP_LIN_TRANS_GRPH_F 0x0D94
-#define DISP_LIN_TRANS_VID_A 0x0D98
-#define DISP_LIN_TRANS_VID_B 0x0D9C
-#define DISP_LIN_TRANS_VID_C 0x0DA0
-#define DISP_LIN_TRANS_VID_D 0x0DA4
-#define DISP_LIN_TRANS_VID_E 0x0DA8
-#define DISP_LIN_TRANS_VID_F 0x0DAC
-#define RMX_HORZ_FILTER_0TAP_COEF 0x0DB0
-#define RMX_HORZ_FILTER_1TAP_COEF 0x0DB4
-#define RMX_HORZ_FILTER_2TAP_COEF 0x0DB8
-#define RMX_HORZ_PHASE 0x0DBC
-#define DAC_EMBEDDED_SYNC_CNTL 0x0DC0
-#define DAC_BROAD_PULSE 0x0DC4
-#define DAC_SKEW_CLKS 0x0DC8
-#define DAC_INCR 0x0DCC
-#define DAC_NEG_SYNC_LEVEL 0x0DD0
-#define DAC_POS_SYNC_LEVEL 0x0DD4
-#define DAC_BLANK_LEVEL 0x0DD8
-#define CLOCK_CNTL_INDEX 0x0008
-/* CLOCK_CNTL_INDEX bit constants */
-#define PLL_WR_EN 0x00000080
-#define PLL_DIV_SEL (3 << 8)
-#define PLL2_DIV_SEL_MASK ~(3 << 8)
-#define CLOCK_CNTL_DATA 0x000C
-#define CP_RB_CNTL 0x0704
-#define CP_RB_BASE 0x0700
-#define CP_RB_RPTR_ADDR 0x070C
-#define CP_RB_RPTR 0x0710
-#define CP_RB_WPTR 0x0714
-#define CP_RB_WPTR_DELAY 0x0718
-#define CP_IB_BASE 0x0738
-#define CP_IB_BUFSZ 0x073C
-#define SCRATCH_REG0 0x15E0
-#define GUI_SCRATCH_REG0 0x15E0
-#define SCRATCH_REG1 0x15E4
-#define GUI_SCRATCH_REG1 0x15E4
-#define SCRATCH_REG2 0x15E8
-#define GUI_SCRATCH_REG2 0x15E8
-#define SCRATCH_REG3 0x15EC
-#define GUI_SCRATCH_REG3 0x15EC
-#define SCRATCH_REG4 0x15F0
-#define GUI_SCRATCH_REG4 0x15F0
-#define SCRATCH_REG5 0x15F4
-#define GUI_SCRATCH_REG5 0x15F4
-#define SCRATCH_UMSK 0x0770
-#define SCRATCH_ADDR 0x0774
-#define DP_BRUSH_FRGD_CLR 0x147C
-#define DP_BRUSH_BKGD_CLR 0x1478
-#define DST_LINE_START 0x1600
-#define DST_LINE_END 0x1604
-#define SRC_OFFSET 0x15AC
-#define SRC_PITCH 0x15B0
-#define SRC_TILE 0x1704
-#define SRC_PITCH_OFFSET 0x1428
-#define SRC_X 0x1414
-#define SRC_Y 0x1418
-#define DST_WIDTH_X 0x1588
-#define DST_HEIGHT_WIDTH_8 0x158C
-#define SRC_X_Y 0x1590
-#define SRC_Y_X 0x1434
-#define DST_Y_X 0x1438
-#define DST_WIDTH_HEIGHT 0x1598
-#define DST_HEIGHT_WIDTH 0x143c
-#define SRC_CLUT_ADDRESS 0x1780
-#define SRC_CLUT_DATA 0x1784
-#define SRC_CLUT_DATA_RD 0x1788
-#define HOST_DATA0 0x17C0
-#define HOST_DATA1 0x17C4
-#define HOST_DATA2 0x17C8
-#define HOST_DATA3 0x17CC
-#define HOST_DATA4 0x17D0
-#define HOST_DATA5 0x17D4
-#define HOST_DATA6 0x17D8
-#define HOST_DATA7 0x17DC
-#define HOST_DATA_LAST 0x17E0
-#define DP_SRC_ENDIAN 0x15D4
-#define DP_SRC_FRGD_CLR 0x15D8
-#define DP_SRC_BKGD_CLR 0x15DC
-#define DP_WRITE_MASK 0x16cc
-#define SC_LEFT 0x1640
-#define SC_RIGHT 0x1644
-#define SC_TOP 0x1648
-#define SC_BOTTOM 0x164C
-#define SRC_SC_RIGHT 0x1654
-#define SRC_SC_BOTTOM 0x165C
-#define DP_CNTL 0x16C0
-/* DP_CNTL bit constants */
-#define DST_X_RIGHT_TO_LEFT 0x00000000
-#define DST_X_LEFT_TO_RIGHT 0x00000001
-#define DST_Y_BOTTOM_TO_TOP 0x00000000
-#define DST_Y_TOP_TO_BOTTOM 0x00000002
-#define DST_X_MAJOR 0x00000000
-#define DST_Y_MAJOR 0x00000004
-#define DST_X_TILE 0x00000008
-#define DST_Y_TILE 0x00000010
-#define DST_LAST_PEL 0x00000020
-#define DST_TRAIL_X_RIGHT_TO_LEFT 0x00000000
-#define DST_TRAIL_X_LEFT_TO_RIGHT 0x00000040
-#define DST_TRAP_FILL_RIGHT_TO_LEFT 0x00000000
-#define DST_TRAP_FILL_LEFT_TO_RIGHT 0x00000080
-#define DST_BRES_SIGN 0x00000100
-#define DST_HOST_BIG_ENDIAN_EN 0x00000200
-#define DST_POLYLINE_NONLAST 0x00008000
-#define DST_RASTER_STALL 0x00010000
-#define DST_POLY_EDGE 0x00040000
-#define DP_CNTL_XDIR_YDIR_YMAJOR 0x16D0
-/* DP_CNTL_XDIR_YDIR_YMAJOR bit constants (short version of DP_CNTL) */
-#define DST_X_MAJOR_S 0x00000000
-#define DST_Y_MAJOR_S 0x00000001
-#define DST_Y_BOTTOM_TO_TOP_S 0x00000000
-#define DST_Y_TOP_TO_BOTTOM_S 0x00008000
-#define DST_X_RIGHT_TO_LEFT_S 0x00000000
-#define DST_X_LEFT_TO_RIGHT_S 0x80000000
-#define DP_DATATYPE 0x16C4
-/* DP_DATATYPE bit constants */
-#define DST_8BPP 0x00000002
-#define DST_15BPP 0x00000003
-#define DST_16BPP 0x00000004
-#define DST_24BPP 0x00000005
-#define DST_32BPP 0x00000006
-#define DST_8BPP_RGB332 0x00000007
-#define DST_8BPP_Y8 0x00000008
-#define DST_8BPP_RGB8 0x00000009
-#define DST_16BPP_VYUY422 0x0000000b
-#define DST_16BPP_YVYU422 0x0000000c
-#define DST_32BPP_AYUV444 0x0000000e
-#define DST_16BPP_ARGB4444 0x0000000f
-#define BRUSH_SOLIDCOLOR 0x00000d00
-#define SRC_MONO 0x00000000
-#define SRC_MONO_LBKGD 0x00010000
-#define SRC_DSTCOLOR 0x00030000
-#define BYTE_ORDER_MSB_TO_LSB 0x00000000
-#define BYTE_ORDER_LSB_TO_MSB 0x40000000
-#define DP_CONVERSION_TEMP 0x80000000
-#define HOST_BIG_ENDIAN_EN (1 << 29)
-#define DP_MIX 0x16C8
-/* DP_MIX bit constants */
-#define DP_SRC_RECT 0x00000200
-#define DP_SRC_HOST 0x00000300
-#define DP_SRC_HOST_BYTEALIGN 0x00000400
-#define DP_WRITE_MSK 0x16CC
-#define DP_XOP 0x17F8
-#define CLR_CMP_CLR_SRC 0x15C4
-#define CLR_CMP_CLR_DST 0x15C8
-#define CLR_CMP_CNTL 0x15C0
-/* CLR_CMP_CNTL bit constants */
-#define COMPARE_SRC_FALSE 0x00000000
-#define COMPARE_SRC_TRUE 0x00000001
-#define COMPARE_SRC_NOT_EQUAL 0x00000004
-#define COMPARE_SRC_EQUAL 0x00000005
-#define COMPARE_SRC_EQUAL_FLIP 0x00000007
-#define COMPARE_DST_FALSE 0x00000000
-#define COMPARE_DST_TRUE 0x00000100
-#define COMPARE_DST_NOT_EQUAL 0x00000400
-#define COMPARE_DST_EQUAL 0x00000500
-#define COMPARE_DESTINATION 0x00000000
-#define COMPARE_SOURCE 0x01000000
-#define COMPARE_SRC_AND_DST 0x02000000
-#define CLR_CMP_MSK 0x15CC
-#define DSTCACHE_MODE 0x1710
-#define DSTCACHE_CTLSTAT 0x1714
-/* DSTCACHE_CTLSTAT bit constants */
-#define RB2D_DC_FLUSH (3 << 0)
-#define RB2D_DC_FLUSH_ALL 0xf
-#define RB2D_DC_BUSY (1 << 31)
-#define DEFAULT_OFFSET 0x16e0
-#define DEFAULT_PITCH_OFFSET 0x16E0
-#define DEFAULT_SC_BOTTOM_RIGHT 0x16E8
-/* DEFAULT_SC_BOTTOM_RIGHT bit constants */
-#define DEFAULT_SC_RIGHT_MAX (0x1fff << 0)
-#define DEFAULT_SC_BOTTOM_MAX (0x1fff << 16)
-#define DP_GUI_MASTER_CNTL 0x146C
-/* DP_GUI_MASTER_CNTL bit constants */
-#define GMC_SRC_PITCH_OFFSET_DEFAULT 0x00000000
-#define GMC_SRC_PITCH_OFFSET_LEAVE 0x00000001
-#define GMC_DST_PITCH_OFFSET_DEFAULT 0x00000000
-#define GMC_DST_PITCH_OFFSET_LEAVE 0x00000002
-#define GMC_SRC_CLIP_DEFAULT 0x00000000
-#define GMC_SRC_CLIP_LEAVE 0x00000004
-#define GMC_DST_CLIP_DEFAULT 0x00000000
-#define GMC_DST_CLIP_LEAVE 0x00000008
-#define GMC_BRUSH_8x8MONO 0x00000000
-#define GMC_BRUSH_8x8MONO_LBKGD 0x00000010
-#define GMC_BRUSH_8x1MONO 0x00000020
-#define GMC_BRUSH_8x1MONO_LBKGD 0x00000030
-#define GMC_BRUSH_1x8MONO 0x00000040
-#define GMC_BRUSH_1x8MONO_LBKGD 0x00000050
-#define GMC_BRUSH_32x1MONO 0x00000060
-#define GMC_BRUSH_32x1MONO_LBKGD 0x00000070
-#define GMC_BRUSH_32x32MONO 0x00000080
-#define GMC_BRUSH_32x32MONO_LBKGD 0x00000090
-#define GMC_BRUSH_8x8COLOR 0x000000a0
-#define GMC_BRUSH_8x1COLOR 0x000000b0
-#define GMC_BRUSH_1x8COLOR 0x000000c0
-//#define GMC_BRUSH_SOLID_COLOR 0x000000d0
-//#define GMC_DST_8BPP 0x00000200
-//#define GMC_DST_15BPP 0x00000300
-//#define GMC_DST_16BPP 0x00000400
-//#define GMC_DST_24BPP 0x00000500
-//#define GMC_DST_32BPP 0x00000600
-//#define GMC_DST_8BPP_RGB332 0x00000700
-//#define GMC_DST_8BPP_Y8 0x00000800
-//#define GMC_DST_8BPP_RGB8 0x00000900
-//#define GMC_DST_16BPP_VYUY422 0x00000b00
-//#define GMC_DST_16BPP_YVYU422 0x00000c00
-//#define GMC_DST_32BPP_AYUV444 0x00000e00
-//#define GMC_DST_16BPP_ARGB4444 0x00000f00
-#define GMC_SRC_MONO 0x00000000
-#define GMC_SRC_MONO_LBKGD 0x00001000
-#define GMC_SRC_DSTCOLOR 0x00003000
-#define GMC_BYTE_ORDER_MSB_TO_LSB 0x00000000
-#define GMC_BYTE_ORDER_LSB_TO_MSB 0x00004000
-#define GMC_DP_CONVERSION_TEMP_9300 0x00008000
-#define GMC_DP_CONVERSION_TEMP_6500 0x00000000
-#define GMC_DP_SRC_RECT 0x02000000
-#define GMC_DP_SRC_HOST 0x03000000
-#define GMC_DP_SRC_HOST_BYTEALIGN 0x04000000
-#define GMC_3D_FCN_EN_CLR 0x00000000
-#define GMC_3D_FCN_EN_SET 0x08000000
-#define GMC_DST_CLR_CMP_FCN_LEAVE 0x00000000
-#define GMC_DST_CLR_CMP_FCN_CLEAR 0x10000000
-#define GMC_AUX_CLIP_LEAVE 0x00000000
-#define GMC_AUX_CLIP_CLEAR 0x20000000
-#define GMC_WRITE_MASK_LEAVE 0x00000000
-#define GMC_WRITE_MASK_SET 0x40000000
-#define GMC_CLR_CMP_CNTL_DIS (1 << 28)
-#define GMC_SRC_DATATYPE_COLOR (3 << 12)
-#define ROP3_S 0x00cc0000
-#define ROP3_SRCCOPY 0x00cc0000
-#define ROP3_P 0x00f00000
-#define ROP3_PATCOPY 0x00f00000
-#define DP_SRC_SOURCE_MASK (7 << 24)
-#define GMC_BRUSH_NONE (15 << 4)
-#define DP_SRC_SOURCE_MEMORY (2 << 24)
-#define GMC_BRUSH_SOLIDCOLOR 0x000000d0
-#define SC_TOP_LEFT 0x16EC
-#define SC_BOTTOM_RIGHT 0x16F0
-#define SRC_SC_BOTTOM_RIGHT 0x16F4
-#define RB2D_DSTCACHE_CTLSTAT 0x342C
-#define RB2D_DSTCACHE_MODE 0x3428
-
-
-
-#define CLK_PIN_CNTL 0x0001
-#define PPLL_CNTL 0x0002
-//#define PPLL_RESET (1 << 0)
-//#define PPLL_SLEEP (1 << 1)
-//#define PPLL_ATOMIC_UPDATE_EN (1 << 16)
-//#define PPLL_VGA_ATOMIC_UPDATE_EN (1 << 17)
-//#define PPLL_ATOMIC_UPDATE_VSYNC (1 << 18)
-//#define PPLL_REF_DIV 0x0003
-//#define PPLL_ATOMIC_UPDATE_R (1 << 15) /* same as _W */
-//#define PPLL_ATOMIC_UPDATE_W (1 << 15) /* same as _R */
-#define PPLL_DIV_0 0x0004
-#define PPLL_DIV_1 0x0005
-#define PPLL_DIV_2 0x0006
-#define PPLL_DIV_3 0x0007
-#define VCLK_ECP_CNTL 0x0008
-#define VCLK_SRC_SEL_MASK 0x03
-#define VCLK_SRC_SEL_CPUCLK 0x00
-#define VCLK_SRC_SEL_PSCANCLK 0x01
-#define VCLK_SRC_SEL_BYTECLK 0x02
-#define VCLK_SRC_SEL_PPLLCLK 0x03
-#define HTOTAL_CNTL 0x0009
-#define HTOTAL2_CNTL 0x002e /* PLL */
-#define M_SPLL_REF_FB_DIV 0x000a
-#define AGP_PLL_CNTL 0x000b
-#define SPLL_CNTL 0x000c
-#define SCLK_CNTL 0x000d
-#define DYN_STOP_LAT_MASK 0x00007ff8
-#define CP_MAX_DYN_STOP_LAT 0x0008
-#define SCLK_FORCEON_MASK 0xffff8000
-#define SCLK_MORE_CNTL 0x0035 /* PLL */
-#define SCLK_MORE_FORCEON 0x0700
-#define MPLL_CNTL 0x000e
-#define MCLK_CNTL 0x0012
-/* MCLK_CNTL bit constants */
-#define FORCEON_MCLKA (1 << 16)
-#define FORCEON_MCLKB (1 << 17)
-#define FORCEON_YCLKA (1 << 18)
-#define FORCEON_YCLKB (1 << 19)
-#define FORCEON_MC (1 << 20)
-#define FORCEON_AIC (1 << 21)
-#define PLL_TEST_CNTL 0x0013
-#define P2PLL_CNTL 0x002a /* P2PLL */
-#define P2PLL_RESET (1 << 0)
-#define P2PLL_SLEEP (1 << 1)
-#define P2PLL_ATOMIC_UPDATE_EN (1 << 16)
-#define P2PLL_VGA_ATOMIC_UPDATE_EN (1 << 17)
-#define P2PLL_ATOMIC_UPDATE_VSYNC (1 << 18)
-#define P2PLL_DIV_0 0x002c
-#define P2PLL_FB0_DIV_MASK 0x07ff
-#define P2PLL_POST0_DIV_MASK 0x00070000
-#define P2PLL_REF_DIV_MASK 0x03ff
-#define P2PLL_ATOMIC_UPDATE_R (1 << 15) /* same as _W */
-#define P2PLL_ATOMIC_UPDATE_W (1 << 15) /* same as _R */
-#define PIXCLKS_CNTL 0x002d
-#define PIX2CLK_SRC_SEL_MASK 0x03
-#define PIX2CLK_SRC_SEL_CPUCLK 0x00
-#define PIX2CLK_SRC_SEL_PSCANCLK 0x01
-#define PIX2CLK_SRC_SEL_BYTECLK 0x02
-#define PIX2CLK_SRC_SEL_P2PLLCLK 0x03
-
-/* masks */
-
-#define CONFIG_MEMSIZE_MASK 0x1f000000
-#define MEM_CFG_TYPE 0x40000000
-#define DST_OFFSET_MASK 0x003fffff
-#define DST_PITCH_MASK 0x3fc00000
-#define DEFAULT_TILE_MASK 0xc0000000
-#define PPLL_DIV_SEL_MASK 0x00000300
-#define PPLL_FB3_DIV_MASK 0x000007ff
-#define PPLL_POST3_DIV_MASK 0x00070000
-
-/* Registers for 3D/TCL */
-
-#define PP_BORDER_COLOR_0 0x1d40
-#define PP_BORDER_COLOR_1 0x1d44
-#define PP_BORDER_COLOR_2 0x1d48
-#define PP_CNTL 0x1c38
-#define STIPPLE_ENABLE (1 << 0)
-#define SCISSOR_ENABLE (1 << 1)
-#define PATTERN_ENABLE (1 << 2)
-#define SHADOW_ENABLE (1 << 3)
-#define TEX_ENABLE_MASK (0xf << 4)
-#define TEX_0_ENABLE (1 << 4)
-#define TEX_1_ENABLE (1 << 5)
-#define TEX_2_ENABLE (1 << 6)
-#define TEX_3_ENABLE (1 << 7)
-#define TEX_BLEND_ENABLE_MASK (0xf << 12)
-#define TEX_BLEND_0_ENABLE (1 << 12)
-#define TEX_BLEND_1_ENABLE (1 << 13)
-#define TEX_BLEND_2_ENABLE (1 << 14)
-#define TEX_BLEND_3_ENABLE (1 << 15)
-#define PLANAR_YUV_ENABLE (1 << 20)
-#define SPECULAR_ENABLE (1 << 21)
-#define FOG_ENABLE (1 << 22)
-#define ALPHA_TEST_ENABLE (1 << 23)
-#define ANTI_ALIAS_NONE (0 << 24)
-#define ANTI_ALIAS_LINE (1 << 24)
-#define ANTI_ALIAS_POLY (2 << 24)
-#define ANTI_ALIAS_LINE_POLY (3 << 24)
-#define BUMP_MAP_ENABLE (1 << 26)
-#define BUMPED_MAP_T0 (0 << 27)
-#define BUMPED_MAP_T1 (1 << 27)
-#define BUMPED_MAP_T2 (2 << 27)
-#define TEX_3D_ENABLE_0 (1 << 29)
-#define TEX_3D_ENABLE_1 (1 << 30)
-#define MC_ENABLE (1 << 31)
-#define PP_FOG_COLOR 0x1c18
-#define FOG_COLOR_MASK 0x00ffffff
-#define FOG_VERTEX (0 << 24)
-#define FOG_TABLE (1 << 24)
-#define FOG_USE_DEPTH (0 << 25)
-#define FOG_USE_DIFFUSE_ALPHA (2 << 25)
-#define FOG_USE_SPEC_ALPHA (3 << 25)
-#define PP_LUM_MATRIX 0x1d00
-#define PP_MISC 0x1c14
-#define REF_ALPHA_MASK 0x000000ff
-#define ALPHA_TEST_FAIL (0 << 8)
-#define ALPHA_TEST_LESS (1 << 8)
-#define ALPHA_TEST_LEQUAL (2 << 8)
-#define ALPHA_TEST_EQUAL (3 << 8)
-#define ALPHA_TEST_GEQUAL (4 << 8)
-#define ALPHA_TEST_GREATER (5 << 8)
-#define ALPHA_TEST_NEQUAL (6 << 8)
-#define ALPHA_TEST_PASS (7 << 8)
-#define ALPHA_TEST_OP_MASK (7 << 8)
-#define CHROMA_FUNC_FAIL (0 << 16)
-#define CHROMA_FUNC_PASS (1 << 16)
-#define CHROMA_FUNC_NEQUAL (2 << 16)
-#define CHROMA_FUNC_EQUAL (3 << 16)
-#define CHROMA_KEY_NEAREST (0 << 18)
-#define CHROMA_KEY_ZERO (1 << 18)
-#define SHADOW_ID_AUTO_INC (1 << 20)
-#define SHADOW_FUNC_EQUAL (0 << 21)
-#define SHADOW_FUNC_NEQUAL (1 << 21)
-#define SHADOW_PASS_1 (0 << 22)
-#define SHADOW_PASS_2 (1 << 22)
-#define RIGHT_HAND_CUBE_D3D (0 << 24)
-#define RIGHT_HAND_CUBE_OGL (1 << 24)
-#define PP_ROT_MATRIX_0 0x1d58
-#define PP_ROT_MATRIX_1 0x1d5c
-#define PP_TXFILTER_0 0x1c54
-#define PP_TXFILTER_1 0x1c6c
-#define PP_TXFILTER_2 0x1c84
-#define MAG_FILTER_NEAREST (0 << 0)
-#define MAG_FILTER_LINEAR (1 << 0)
-#define MAG_FILTER_MASK (1 << 0)
-#define MIN_FILTER_NEAREST (0 << 1)
-#define MIN_FILTER_LINEAR (1 << 1)
-#define MIN_FILTER_NEAREST_MIP_NEAREST (2 << 1)
-#define MIN_FILTER_NEAREST_MIP_LINEAR (3 << 1)
-#define MIN_FILTER_LINEAR_MIP_NEAREST (6 << 1)
-#define MIN_FILTER_LINEAR_MIP_LINEAR (7 << 1)
-#define MIN_FILTER_ANISO_NEAREST (8 << 1)
-#define MIN_FILTER_ANISO_LINEAR (9 << 1)
-#define MIN_FILTER_ANISO_NEAREST_MIP_NEAREST (10 << 1)
-#define MIN_FILTER_ANISO_NEAREST_MIP_LINEAR (11 << 1)
-#define MIN_FILTER_MASK (15 << 1)
-#define MAX_ANISO_1_TO_1 (0 << 5)
-#define MAX_ANISO_2_TO_1 (1 << 5)
-#define MAX_ANISO_4_TO_1 (2 << 5)
-#define MAX_ANISO_8_TO_1 (3 << 5)
-#define MAX_ANISO_16_TO_1 (4 << 5)
-#define MAX_ANISO_MASK (7 << 5)
-#define LOD_BIAS_MASK (0xff << 8)
-#define LOD_BIAS_SHIFT 8
-#define MAX_MIP_LEVEL_MASK (0x0f << 16)
-#define MAX_MIP_LEVEL_SHIFT 16
-#define YUV_TO_RGB (1 << 20)
-#define YUV_TEMPERATURE_COOL (0 << 21)
-#define YUV_TEMPERATURE_HOT (1 << 21)
-#define YUV_TEMPERATURE_MASK (1 << 21)
-#define WRAPEN_S (1 << 22)
-#define CLAMP_S_WRAP (0 << 23)
-#define CLAMP_S_MIRROR (1 << 23)
-#define CLAMP_S_CLAMP_LAST (2 << 23)
-#define CLAMP_S_MIRROR_CLAMP_LAST (3 << 23)
-#define CLAMP_S_CLAMP_BORDER (4 << 23)
-#define CLAMP_S_MIRROR_CLAMP_BORDER (5 << 23)
-#define CLAMP_S_CLAMP_GL (6 << 23)
-#define CLAMP_S_MIRROR_CLAMP_GL (7 << 23)
-#define CLAMP_S_MASK (7 << 23)
-#define WRAPEN_T (1 << 26)
-#define CLAMP_T_WRAP (0 << 27)
-#define CLAMP_T_MIRROR (1 << 27)
-#define CLAMP_T_CLAMP_LAST (2 << 27)
-#define CLAMP_T_MIRROR_CLAMP_LAST (3 << 27)
-#define CLAMP_T_CLAMP_BORDER (4 << 27)
-#define CLAMP_T_MIRROR_CLAMP_BORDER (5 << 27)
-#define CLAMP_T_CLAMP_GL (6 << 27)
-#define CLAMP_T_MIRROR_CLAMP_GL (7 << 27)
-#define CLAMP_T_MASK (7 << 27)
-#define BORDER_MODE_OGL (0 << 31)
-#define BORDER_MODE_D3D (1 << 31)
-#define PP_TXFORMAT_0 0x1c58
-#define PP_TXFORMAT_1 0x1c70
-#define PP_TXFORMAT_2 0x1c88
-#define TXFORMAT_I8 (0 << 0)
-#define TXFORMAT_AI88 (1 << 0)
-#define TXFORMAT_RGB332 (2 << 0)
-#define TXFORMAT_ARGB1555 (3 << 0)
-#define TXFORMAT_RGB565 (4 << 0)
-#define TXFORMAT_ARGB4444 (5 << 0)
-#define TXFORMAT_ARGB8888 (6 << 0)
-#define TXFORMAT_RGBA8888 (7 << 0)
-#define TXFORMAT_Y8 (8 << 0)
-#define TXFORMAT_VYUY422 (10 << 0)
-#define TXFORMAT_YVYU422 (11 << 0)
-#define TXFORMAT_DXT1 (12 << 0)
-#define TXFORMAT_DXT23 (14 << 0)
-#define TXFORMAT_DXT45 (15 << 0)
-#define TXFORMAT_FORMAT_MASK (31 << 0)
-#define TXFORMAT_FORMAT_SHIFT 0
-#define TXFORMAT_APPLE_YUV_MODE (1 << 5)
-#define TXFORMAT_ALPHA_IN_MAP (1 << 6)
-#define TXFORMAT_NON_POWER2 (1 << 7)
-#define TXFORMAT_WIDTH_MASK (15 << 8)
-#define TXFORMAT_WIDTH_SHIFT 8
-#define TXFORMAT_HEIGHT_MASK (15 << 12)
-#define TXFORMAT_HEIGHT_SHIFT 12
-#define TXFORMAT_F5_WIDTH_MASK (15 << 16)
-#define TXFORMAT_F5_WIDTH_SHIFT 16
-#define TXFORMAT_F5_HEIGHT_MASK (15 << 20)
-#define TXFORMAT_F5_HEIGHT_SHIFT 20
-#define TXFORMAT_ST_ROUTE_STQ0 (0 << 24)
-#define TXFORMAT_ST_ROUTE_MASK (3 << 24)
-#define TXFORMAT_ST_ROUTE_STQ1 (1 << 24)
-#define TXFORMAT_ST_ROUTE_STQ2 (2 << 24)
-#define TXFORMAT_ENDIAN_NO_SWAP (0 << 26)
-#define TXFORMAT_ENDIAN_16BPP_SWAP (1 << 26)
-#define TXFORMAT_ENDIAN_32BPP_SWAP (2 << 26)
-#define TXFORMAT_ENDIAN_HALFDW_SWAP (3 << 26)
-#define TXFORMAT_ALPHA_MASK_ENABLE (1 << 28)
-#define TXFORMAT_CHROMA_KEY_ENABLE (1 << 29)
-#define TXFORMAT_CUBIC_MAP_ENABLE (1 << 30)
-#define TXFORMAT_PERSPECTIVE_ENABLE (1 << 31)
-#define PP_CUBIC_FACES_0 0x1d24
-#define PP_CUBIC_FACES_1 0x1d28
-#define PP_CUBIC_FACES_2 0x1d2c
-#define FACE_WIDTH_1_SHIFT 0
-#define FACE_HEIGHT_1_SHIFT 4
-#define FACE_WIDTH_1_MASK (0xf << 0)
-#define FACE_HEIGHT_1_MASK (0xf << 4)
-#define FACE_WIDTH_2_SHIFT 8
-#define FACE_HEIGHT_2_SHIFT 12
-#define FACE_WIDTH_2_MASK (0xf << 8)
-#define FACE_HEIGHT_2_MASK (0xf << 12)
-#define FACE_WIDTH_3_SHIFT 16
-#define FACE_HEIGHT_3_SHIFT 20
-#define FACE_WIDTH_3_MASK (0xf << 16)
-#define FACE_HEIGHT_3_MASK (0xf << 20)
-#define FACE_WIDTH_4_SHIFT 24
-#define FACE_HEIGHT_4_SHIFT 28
-#define FACE_WIDTH_4_MASK (0xf << 24)
-#define FACE_HEIGHT_4_MASK (0xf << 28)
-
-#define PP_TXOFFSET_0 0x1c5c
-#define PP_TXOFFSET_1 0x1c74
-#define PP_TXOFFSET_2 0x1c8c
-#define TXO_ENDIAN_NO_SWAP (0 << 0)
-#define TXO_ENDIAN_BYTE_SWAP (1 << 0)
-#define TXO_ENDIAN_WORD_SWAP (2 << 0)
-#define TXO_ENDIAN_HALFDW_SWAP (3 << 0)
-#define TXO_MACRO_LINEAR (0 << 2)
-#define TXO_MACRO_TILE (1 << 2)
-#define TXO_MICRO_LINEAR (0 << 3)
-#define TXO_MICRO_TILE_X2 (1 << 3)
-#define TXO_MICRO_TILE_OPT (2 << 3)
-#define TXO_OFFSET_MASK 0xffffffe0
-#define TXO_OFFSET_SHIFT 5
-
-#define PP_CUBIC_OFFSET_T0_0 0x1dd0 /* bits [31:5] */
-#define PP_CUBIC_OFFSET_T0_1 0x1dd4
-#define PP_CUBIC_OFFSET_T0_2 0x1dd8
-#define PP_CUBIC_OFFSET_T0_3 0x1ddc
-#define PP_CUBIC_OFFSET_T0_4 0x1de0
-#define PP_CUBIC_OFFSET_T1_0 0x1e00
-#define PP_CUBIC_OFFSET_T1_1 0x1e04
-#define PP_CUBIC_OFFSET_T1_2 0x1e08
-#define PP_CUBIC_OFFSET_T1_3 0x1e0c
-#define PP_CUBIC_OFFSET_T1_4 0x1e10
-#define PP_CUBIC_OFFSET_T2_0 0x1e14
-#define PP_CUBIC_OFFSET_T2_1 0x1e18
-#define PP_CUBIC_OFFSET_T2_2 0x1e1c
-#define PP_CUBIC_OFFSET_T2_3 0x1e20
-#define PP_CUBIC_OFFSET_T2_4 0x1e24
-
-#define PP_TEX_SIZE_0 0x1d04 /* NPOT */
-#define PP_TEX_SIZE_1 0x1d0c
-#define PP_TEX_SIZE_2 0x1d14
-#define TEX_USIZE_MASK (0x7ff << 0)
-#define TEX_USIZE_SHIFT 0
-#define TEX_VSIZE_MASK (0x7ff << 16)
-#define TEX_VSIZE_SHIFT 16
-#define SIGNED_RGB_MASK (1 << 30)
-#define SIGNED_RGB_SHIFT 30
-#define SIGNED_ALPHA_MASK (1 << 31)
-#define SIGNED_ALPHA_SHIFT 31
-#define PP_TEX_PITCH_0 0x1d08 /* NPOT */
-#define PP_TEX_PITCH_1 0x1d10 /* NPOT */
-#define PP_TEX_PITCH_2 0x1d18 /* NPOT */
-/* note: bits 13-5: 32 byte aligned stride of texture map */
-
-#define PP_TXCBLEND_0 0x1c60
-#define PP_TXCBLEND_1 0x1c78
-#define PP_TXCBLEND_2 0x1c90
-#define COLOR_ARG_A_SHIFT 0
-#define COLOR_ARG_A_MASK (0x1f << 0)
-#define COLOR_ARG_A_ZERO (0 << 0)
-#define COLOR_ARG_A_CURRENT_COLOR (2 << 0)
-#define COLOR_ARG_A_CURRENT_ALPHA (3 << 0)
-#define COLOR_ARG_A_DIFFUSE_COLOR (4 << 0)
-#define COLOR_ARG_A_DIFFUSE_ALPHA (5 << 0)
-#define COLOR_ARG_A_SPECULAR_COLOR (6 << 0)
-#define COLOR_ARG_A_SPECULAR_ALPHA (7 << 0)
-#define COLOR_ARG_A_TFACTOR_COLOR (8 << 0)
-#define COLOR_ARG_A_TFACTOR_ALPHA (9 << 0)
-#define COLOR_ARG_A_T0_COLOR (10 << 0)
-#define COLOR_ARG_A_T0_ALPHA (11 << 0)
-#define COLOR_ARG_A_T1_COLOR (12 << 0)
-#define COLOR_ARG_A_T1_ALPHA (13 << 0)
-#define COLOR_ARG_A_T2_COLOR (14 << 0)
-#define COLOR_ARG_A_T2_ALPHA (15 << 0)
-#define COLOR_ARG_A_T3_COLOR (16 << 0)
-#define COLOR_ARG_A_T3_ALPHA (17 << 0)
-#define COLOR_ARG_B_SHIFT 5
-#define COLOR_ARG_B_MASK (0x1f << 5)
-#define COLOR_ARG_B_ZERO (0 << 5)
-#define COLOR_ARG_B_CURRENT_COLOR (2 << 5)
-#define COLOR_ARG_B_CURRENT_ALPHA (3 << 5)
-#define COLOR_ARG_B_DIFFUSE_COLOR (4 << 5)
-#define COLOR_ARG_B_DIFFUSE_ALPHA (5 << 5)
-#define COLOR_ARG_B_SPECULAR_COLOR (6 << 5)
-#define COLOR_ARG_B_SPECULAR_ALPHA (7 << 5)
-#define COLOR_ARG_B_TFACTOR_COLOR (8 << 5)
-#define COLOR_ARG_B_TFACTOR_ALPHA (9 << 5)
-#define COLOR_ARG_B_T0_COLOR (10 << 5)
-#define COLOR_ARG_B_T0_ALPHA (11 << 5)
-#define COLOR_ARG_B_T1_COLOR (12 << 5)
-#define COLOR_ARG_B_T1_ALPHA (13 << 5)
-#define COLOR_ARG_B_T2_COLOR (14 << 5)
-#define COLOR_ARG_B_T2_ALPHA (15 << 5)
-#define COLOR_ARG_B_T3_COLOR (16 << 5)
-#define COLOR_ARG_B_T3_ALPHA (17 << 5)
-#define COLOR_ARG_C_SHIFT 10
-#define COLOR_ARG_C_MASK (0x1f << 10)
-#define COLOR_ARG_C_ZERO (0 << 10)
-#define COLOR_ARG_C_CURRENT_COLOR (2 << 10)
-#define COLOR_ARG_C_CURRENT_ALPHA (3 << 10)
-#define COLOR_ARG_C_DIFFUSE_COLOR (4 << 10)
-#define COLOR_ARG_C_DIFFUSE_ALPHA (5 << 10)
-#define COLOR_ARG_C_SPECULAR_COLOR (6 << 10)
-#define COLOR_ARG_C_SPECULAR_ALPHA (7 << 10)
-#define COLOR_ARG_C_TFACTOR_COLOR (8 << 10)
-#define COLOR_ARG_C_TFACTOR_ALPHA (9 << 10)
-#define COLOR_ARG_C_T0_COLOR (10 << 10)
-#define COLOR_ARG_C_T0_ALPHA (11 << 10)
-#define COLOR_ARG_C_T1_COLOR (12 << 10)
-#define COLOR_ARG_C_T1_ALPHA (13 << 10)
-#define COLOR_ARG_C_T2_COLOR (14 << 10)
-#define COLOR_ARG_C_T2_ALPHA (15 << 10)
-#define COLOR_ARG_C_T3_COLOR (16 << 10)
-#define COLOR_ARG_C_T3_ALPHA (17 << 10)
-#define COMP_ARG_A (1 << 15)
-#define COMP_ARG_A_SHIFT 15
-#define COMP_ARG_B (1 << 16)
-#define COMP_ARG_B_SHIFT 16
-#define COMP_ARG_C (1 << 17)
-#define COMP_ARG_C_SHIFT 17
-#define BLEND_CTL_MASK (7 << 18)
-#define BLEND_CTL_ADD (0 << 18)
-#define BLEND_CTL_SUBTRACT (1 << 18)
-#define BLEND_CTL_ADDSIGNED (2 << 18)
-#define BLEND_CTL_BLEND (3 << 18)
-#define BLEND_CTL_DOT3 (4 << 18)
-#define SCALE_SHIFT 21
-#define SCALE_MASK (3 << 21)
-#define SCALE_1X (0 << 21)
-#define SCALE_2X (1 << 21)
-#define SCALE_4X (2 << 21)
-#define CLAMP_TX (1 << 23)
-#define T0_EQ_TCUR (1 << 24)
-#define T1_EQ_TCUR (1 << 25)
-#define T2_EQ_TCUR (1 << 26)
-#define T3_EQ_TCUR (1 << 27)
-#define COLOR_ARG_MASK 0x1f
-#define COMP_ARG_SHIFT 15
-#define PP_TXABLEND_0 0x1c64
-#define PP_TXABLEND_1 0x1c7c
-#define PP_TXABLEND_2 0x1c94
-#define ALPHA_ARG_A_SHIFT 0
-#define ALPHA_ARG_A_MASK (0xf << 0)
-#define ALPHA_ARG_A_ZERO (0 << 0)
-#define ALPHA_ARG_A_CURRENT_ALPHA (1 << 0)
-#define ALPHA_ARG_A_DIFFUSE_ALPHA (2 << 0)
-#define ALPHA_ARG_A_SPECULAR_ALPHA (3 << 0)
-#define ALPHA_ARG_A_TFACTOR_ALPHA (4 << 0)
-#define ALPHA_ARG_A_T0_ALPHA (5 << 0)
-#define ALPHA_ARG_A_T1_ALPHA (6 << 0)
-#define ALPHA_ARG_A_T2_ALPHA (7 << 0)
-#define ALPHA_ARG_A_T3_ALPHA (8 << 0)
-#define ALPHA_ARG_B_SHIFT 4
-#define ALPHA_ARG_B_MASK (0xf << 4)
-#define ALPHA_ARG_B_ZERO (0 << 4)
-#define ALPHA_ARG_B_CURRENT_ALPHA (1 << 4)
-#define ALPHA_ARG_B_DIFFUSE_ALPHA (2 << 4)
-#define ALPHA_ARG_B_SPECULAR_ALPHA (3 << 4)
-#define ALPHA_ARG_B_TFACTOR_ALPHA (4 << 4)
-#define ALPHA_ARG_B_T0_ALPHA (5 << 4)
-#define ALPHA_ARG_B_T1_ALPHA (6 << 4)
-#define ALPHA_ARG_B_T2_ALPHA (7 << 4)
-#define ALPHA_ARG_B_T3_ALPHA (8 << 4)
-#define ALPHA_ARG_C_SHIFT 8
-#define ALPHA_ARG_C_MASK (0xf << 8)
-#define ALPHA_ARG_C_ZERO (0 << 8)
-#define ALPHA_ARG_C_CURRENT_ALPHA (1 << 8)
-#define ALPHA_ARG_C_DIFFUSE_ALPHA (2 << 8)
-#define ALPHA_ARG_C_SPECULAR_ALPHA (3 << 8)
-#define ALPHA_ARG_C_TFACTOR_ALPHA (4 << 8)
-#define ALPHA_ARG_C_T0_ALPHA (5 << 8)
-#define ALPHA_ARG_C_T1_ALPHA (6 << 8)
-#define ALPHA_ARG_C_T2_ALPHA (7 << 8)
-#define ALPHA_ARG_C_T3_ALPHA (8 << 8)
-#define DOT_ALPHA_DONT_REPLICATE (1 << 9)
-#define ALPHA_ARG_MASK 0xf
-
-#define PP_TFACTOR_0 0x1c68
-#define PP_TFACTOR_1 0x1c80
-#define PP_TFACTOR_2 0x1c98
-
-#define RB3D_BLENDCNTL 0x1c20
-#define COMB_FCN_MASK (3 << 12)
-#define COMB_FCN_ADD_CLAMP (0 << 12)
-#define COMB_FCN_ADD_NOCLAMP (1 << 12)
-#define COMB_FCN_SUB_CLAMP (2 << 12)
-#define COMB_FCN_SUB_NOCLAMP (3 << 12)
-#define SRC_BLEND_GL_ZERO (32 << 16)
-#define SRC_BLEND_GL_ONE (33 << 16)
-#define SRC_BLEND_GL_SRC_COLOR (34 << 16)
-#define SRC_BLEND_GL_ONE_MINUS_SRC_COLOR (35 << 16)
-#define SRC_BLEND_GL_DST_COLOR (36 << 16)
-#define SRC_BLEND_GL_ONE_MINUS_DST_COLOR (37 << 16)
-#define SRC_BLEND_GL_SRC_ALPHA (38 << 16)
-#define SRC_BLEND_GL_ONE_MINUS_SRC_ALPHA (39 << 16)
-#define SRC_BLEND_GL_DST_ALPHA (40 << 16)
-#define SRC_BLEND_GL_ONE_MINUS_DST_ALPHA (41 << 16)
-#define SRC_BLEND_GL_SRC_ALPHA_SATURATE (42 << 16)
-#define SRC_BLEND_MASK (63 << 16)
-#define DST_BLEND_GL_ZERO (32 << 24)
-#define DST_BLEND_GL_ONE (33 << 24)
-#define DST_BLEND_GL_SRC_COLOR (34 << 24)
-#define DST_BLEND_GL_ONE_MINUS_SRC_COLOR (35 << 24)
-#define DST_BLEND_GL_DST_COLOR (36 << 24)
-#define DST_BLEND_GL_ONE_MINUS_DST_COLOR (37 << 24)
-#define DST_BLEND_GL_SRC_ALPHA (38 << 24)
-#define DST_BLEND_GL_ONE_MINUS_SRC_ALPHA (39 << 24)
-#define DST_BLEND_GL_DST_ALPHA (40 << 24)
-#define DST_BLEND_GL_ONE_MINUS_DST_ALPHA (41 << 24)
-#define DST_BLEND_MASK (63 << 24)
-#define RB3D_CNTL 0x1C3C
-#define ALPHA_BLEND_ENABLE (1 << 0)
-#define PLANE_MASK_ENABLE (1 << 1)
-#define DITHER_ENABLE (1 << 2)
-#define ROUND_ENABLE (1 << 3)
-#define SCALE_DITHER_ENABLE (1 << 4)
-#define DITHER_INIT (1 << 5)
-#define ROP_ENABLE (1 << 6)
-#define STENCIL_ENABLE (1 << 7)
-#define Z_ENABLE (1 << 8)
-#define DEPTH_XZ_OFFEST_ENABLE (1 << 9)
-#define COLOR_FORMAT_ARGB1555 (3 << 10)
-#define COLOR_FORMAT_RGB565 (4 << 10)
-#define COLOR_FORMAT_ARGB8888 (6 << 10)
-#define COLOR_FORMAT_RGB332 (7 << 10)
-#define COLOR_FORMAT_Y8 (8 << 10)
-#define COLOR_FORMAT_RGB8 (9 << 10)
-#define COLOR_FORMAT_YUV422_VYUY (11 << 10)
-#define COLOR_FORMAT_YUV422_YVYU (12 << 10)
-#define COLOR_FORMAT_aYUV444 (14 << 10)
-#define COLOR_FORMAT_ARGB4444 (15 << 10)
-#define CLRCMP_FLIP_ENABLE (1 << 14)
-#define RB3D_COLOROFFSET 0x1c40
-#define COLOROFFSET_MASK 0xfffffff0
-#define RB3D_COLORPITCH 0x1c48
-#define COLORPITCH_MASK 0x000001ff8
-#define COLOR_TILE_ENABLE (1 << 16)
-#define COLOR_MICROTILE_ENABLE (1 << 17)
-#define COLOR_ENDIAN_NO_SWAP (0 << 18)
-#define COLOR_ENDIAN_WORD_SWAP (1 << 18)
-#define COLOR_ENDIAN_DWORD_SWAP (2 << 18)
-#define RB3D_DEPTHOFFSET 0x1c24
-#define RB3D_DEPTHPITCH 0x1c28
-#define DEPTHPITCH_MASK 0x00001ff8
-#define DEPTH_ENDIAN_NO_SWAP (0 << 18)
-#define DEPTH_ENDIAN_WORD_SWAP (1 << 18)
-#define DEPTH_ENDIAN_DWORD_SWAP (2 << 18)
-#define RB3D_PLANEMASK 0x1d84
-#define RB3D_ROPCNTL 0x1d80
-#define ROP_MASK (15 << 8)
-#define ROP_CLEAR (0 << 8)
-#define ROP_NOR (1 << 8)
-#define ROP_AND_INVERTED (2 << 8)
-#define ROP_COPY_INVERTED (3 << 8)
-#define ROP_AND_REVERSE (4 << 8)
-#define ROP_INVERT (5 << 8)
-#define ROP_XOR (6 << 8)
-#define ROP_NAND (7 << 8)
-#define ROP_AND (8 << 8)
-#define ROP_EQUIV (9 << 8)
-#define ROP_NOOP (10 << 8)
-#define ROP_OR_INVERTED (11 << 8)
-#define ROP_COPY (12 << 8)
-#define ROP_OR_REVERSE (13 << 8)
-#define ROP_OR (14 << 8)
-#define ROP_SET (15 << 8)
-#define RB3D_STENCILREFMASK 0x1d7c
-#define STENCIL_REF_SHIFT 0
-#define STENCIL_REF_MASK (0xff << 0)
-#define STENCIL_MASK_SHIFT 16
-#define STENCIL_VALUE_MASK (0xff << 16)
-#define STENCIL_WRITEMASK_SHIFT 24
-#define STENCIL_WRITE_MASK (0xff << 24)
-#define RB3D_ZSTENCILCNTL 0x1c2c
-#define DEPTH_FORMAT_MASK (0xf << 0)
-#define DEPTH_FORMAT_16BIT_INT_Z (0 << 0)
-#define DEPTH_FORMAT_24BIT_INT_Z (2 << 0)
-#define DEPTH_FORMAT_24BIT_FLOAT_Z (3 << 0)
-#define DEPTH_FORMAT_32BIT_INT_Z (4 << 0)
-#define DEPTH_FORMAT_32BIT_FLOAT_Z (5 << 0)
-#define DEPTH_FORMAT_16BIT_FLOAT_W (7 << 0)
-#define DEPTH_FORMAT_24BIT_FLOAT_W (9 << 0)
-#define DEPTH_FORMAT_32BIT_FLOAT_W (11 << 0)
-#define Z_TEST_NEVER (0 << 4)
-#define Z_TEST_LESS (1 << 4)
-#define Z_TEST_LEQUAL (2 << 4)
-#define Z_TEST_EQUAL (3 << 4)
-#define Z_TEST_GEQUAL (4 << 4)
-#define Z_TEST_GREATER (5 << 4)
-#define Z_TEST_NEQUAL (6 << 4)
-#define Z_TEST_ALWAYS (7 << 4)
-#define Z_TEST_MASK (7 << 4)
-#define STENCIL_TEST_NEVER (0 << 12)
-#define STENCIL_TEST_LESS (1 << 12)
-#define STENCIL_TEST_LEQUAL (2 << 12)
-#define STENCIL_TEST_EQUAL (3 << 12)
-#define STENCIL_TEST_GEQUAL (4 << 12)
-#define STENCIL_TEST_GREATER (5 << 12)
-#define STENCIL_TEST_NEQUAL (6 << 12)
-#define STENCIL_TEST_ALWAYS (7 << 12)
-#define STENCIL_TEST_MASK (0x7 << 12)
-#define STENCIL_FAIL_KEEP (0 << 16)
-#define STENCIL_FAIL_ZERO (1 << 16)
-#define STENCIL_FAIL_REPLACE (2 << 16)
-#define STENCIL_FAIL_INC (3 << 16)
-#define STENCIL_FAIL_DEC (4 << 16)
-#define STENCIL_FAIL_INVERT (5 << 16)
-#define STENCIL_FAIL_MASK (0x7 << 16)
-#define STENCIL_ZPASS_KEEP (0 << 20)
-#define STENCIL_ZPASS_ZERO (1 << 20)
-#define STENCIL_ZPASS_REPLACE (2 << 20)
-#define STENCIL_ZPASS_INC (3 << 20)
-#define STENCIL_ZPASS_DEC (4 << 20)
-#define STENCIL_ZPASS_INVERT (5 << 20)
-#define STENCIL_ZPASS_MASK (0x7 << 20)
-#define STENCIL_ZFAIL_KEEP (0 << 24)
-#define STENCIL_ZFAIL_ZERO (1 << 24)
-#define STENCIL_ZFAIL_REPLACE (2 << 24)
-#define STENCIL_ZFAIL_INC (3 << 24)
-#define STENCIL_ZFAIL_DEC (4 << 24)
-#define STENCIL_ZFAIL_INVERT (5 << 24)
-#define STENCIL_ZFAIL_MASK (0x7 << 24)
-#define Z_COMPRESSION_ENABLE (1 << 28)
-#define FORCE_Z_DIRTY (1 << 29)
-#define Z_WRITE_ENABLE (1 << 30)
-#define RE_LINE_PATTERN 0x1cd0
-#define LINE_PATTERN_MASK 0x0000ffff
-#define LINE_REPEAT_COUNT_SHIFT 16
-#define LINE_PATTERN_START_SHIFT 24
-#define LINE_PATTERN_LITTLE_BIT_ORDER (0 << 28)
-#define LINE_PATTERN_BIG_BIT_ORDER (1 << 28)
-#define LINE_PATTERN_AUTO_RESET (1 << 29)
-#define RE_LINE_STATE 0x1cd4
-#define LINE_CURRENT_PTR_SHIFT 0
-#define LINE_CURRENT_COUNT_SHIFT 8
-#define RE_MISC 0x26c4
-#define STIPPLE_COORD_MASK 0x1f
-#define STIPPLE_X_OFFSET_SHIFT 0
-#define STIPPLE_X_OFFSET_MASK (0x1f << 0)
-#define STIPPLE_Y_OFFSET_SHIFT 8
-#define STIPPLE_Y_OFFSET_MASK (0x1f << 8)
-#define STIPPLE_LITTLE_BIT_ORDER (0 << 16)
-#define STIPPLE_BIG_BIT_ORDER (1 << 16)
-#define RE_SOLID_COLOR 0x1c1c
-#define RE_TOP_LEFT 0x26c0
-#define RE_LEFT_SHIFT 0
-#define RE_TOP_SHIFT 16
-#define RE_WIDTH_HEIGHT 0x1c44
-#define RE_WIDTH_SHIFT 0
-#define RE_HEIGHT_SHIFT 16
-
-#define SE_CNTL 0x1c4c
-#define FFACE_CULL_CW (0 << 0)
-#define FFACE_CULL_CCW (1 << 0)
-#define FFACE_CULL_DIR_MASK (1 << 0)
-#define BFACE_CULL (0 << 1)
-#define BFACE_SOLID (3 << 1)
-#define FFACE_CULL (0 << 3)
-#define FFACE_SOLID (3 << 3)
-#define FFACE_CULL_MASK (3 << 3)
-#define BADVTX_CULL_DISABLE (1 << 5)
-#define FLAT_SHADE_VTX_0 (0 << 6)
-#define FLAT_SHADE_VTX_1 (1 << 6)
-#define FLAT_SHADE_VTX_2 (2 << 6)
-#define FLAT_SHADE_VTX_LAST (3 << 6)
-#define DIFFUSE_SHADE_SOLID (0 << 8)
-#define DIFFUSE_SHADE_FLAT (1 << 8)
-#define DIFFUSE_SHADE_GOURAUD (2 << 8)
-#define DIFFUSE_SHADE_MASK (3 << 8)
-#define ALPHA_SHADE_SOLID (0 << 10)
-#define ALPHA_SHADE_FLAT (1 << 10)
-#define ALPHA_SHADE_GOURAUD (2 << 10)
-#define ALPHA_SHADE_MASK (3 << 10)
-#define SPECULAR_SHADE_SOLID (0 << 12)
-#define SPECULAR_SHADE_FLAT (1 << 12)
-#define SPECULAR_SHADE_GOURAUD (2 << 12)
-#define SPECULAR_SHADE_MASK (3 << 12)
-#define FOG_SHADE_SOLID (0 << 14)
-#define FOG_SHADE_FLAT (1 << 14)
-#define FOG_SHADE_GOURAUD (2 << 14)
-#define FOG_SHADE_MASK (3 << 14)
-#define ZBIAS_ENABLE_POINT (1 << 16)
-#define ZBIAS_ENABLE_LINE (1 << 17)
-#define ZBIAS_ENABLE_TRI (1 << 18)
-#define WIDELINE_ENABLE (1 << 20)
-#define VPORT_XY_XFORM_ENABLE (1 << 24)
-#define VPORT_Z_XFORM_ENABLE (1 << 25)
-#define VTX_PIX_CENTER_D3D (0 << 27)
-#define VTX_PIX_CENTER_OGL (1 << 27)
-#define ROUND_MODE_TRUNC (0 << 28)
-#define ROUND_MODE_ROUND (1 << 28)
-#define ROUND_MODE_ROUND_EVEN (2 << 28)
-#define ROUND_MODE_ROUND_ODD (3 << 28)
-#define ROUND_PREC_16TH_PIX (0 << 30)
-#define ROUND_PREC_8TH_PIX (1 << 30)
-#define ROUND_PREC_4TH_PIX (2 << 30)
-#define ROUND_PREC_HALF_PIX (3 << 30)
-#define R200_RE_CNTL 0x1c50
-#define R200_STIPPLE_ENABLE 0x1
-#define R200_SCISSOR_ENABLE 0x2
-#define R200_PATTERN_ENABLE 0x4
-#define R200_PERSPECTIVE_ENABLE 0x8
-#define R200_POINT_SMOOTH 0x20
-#define R200_VTX_STQ0_D3D 0x00010000
-#define R200_VTX_STQ1_D3D 0x00040000
-#define R200_VTX_STQ2_D3D 0x00100000
-#define R200_VTX_STQ3_D3D 0x00400000
-#define R200_VTX_STQ4_D3D 0x01000000
-#define R200_VTX_STQ5_D3D 0x04000000
-#define SE_CNTL_STATUS 0x2140
-#define VC_NO_SWAP (0 << 0)
-#define VC_16BIT_SWAP (1 << 0)
-#define VC_32BIT_SWAP (2 << 0)
-#define VC_HALF_DWORD_SWAP (3 << 0)
-#define TCL_BYPASS (1 << 8)
-#define SE_COORD_FMT 0x1c50
-#define VTX_XY_PRE_MULT_1_OVER_W0 (1 << 0)
-#define VTX_Z_PRE_MULT_1_OVER_W0 (1 << 1)
-#define VTX_ST0_NONPARAMETRIC (1 << 8)
-#define VTX_ST1_NONPARAMETRIC (1 << 9)
-#define VTX_ST2_NONPARAMETRIC (1 << 10)
-#define VTX_ST3_NONPARAMETRIC (1 << 11)
-#define VTX_W0_NORMALIZE (1 << 12)
-#define VTX_W0_IS_NOT_1_OVER_W0 (1 << 16)
-#define VTX_ST0_PRE_MULT_1_OVER_W0 (1 << 17)
-#define VTX_ST1_PRE_MULT_1_OVER_W0 (1 << 19)
-#define VTX_ST2_PRE_MULT_1_OVER_W0 (1 << 21)
-#define VTX_ST3_PRE_MULT_1_OVER_W0 (1 << 23)
-#define TEX1_W_ROUTING_USE_W0 (0 << 26)
-#define TEX1_W_ROUTING_USE_Q1 (1 << 26)
-#define SE_LINE_WIDTH 0x1db8
-#define SE_TCL_LIGHT_MODEL_CTL 0x226c
-#define LIGHTING_ENABLE (1 << 0)
-#define LIGHT_IN_MODELSPACE (1 << 1)
-#define LOCAL_VIEWER (1 << 2)
-#define NORMALIZE_NORMALS (1 << 3)
-#define RESCALE_NORMALS (1 << 4)
-#define SPECULAR_LIGHTS (1 << 5)
-#define DIFFUSE_SPECULAR_COMBINE (1 << 6)
-#define LIGHT_ALPHA (1 << 7)
-#define LOCAL_LIGHT_VEC_GL (1 << 8)
-#define LIGHT_NO_NORMAL_AMBIENT_ONLY (1 << 9)
-#define LM_SOURCE_STATE_PREMULT 0
-#define LM_SOURCE_STATE_MULT 1
-#define LM_SOURCE_VERTEX_DIFFUSE 2
-#define LM_SOURCE_VERTEX_SPECULAR 3
-#define EMISSIVE_SOURCE_SHIFT 16
-#define AMBIENT_SOURCE_SHIFT 18
-#define DIFFUSE_SOURCE_SHIFT 20
-#define SPECULAR_SOURCE_SHIFT 22
-#define SE_TCL_MATERIAL_AMBIENT_RED 0x2220
-#define SE_TCL_MATERIAL_AMBIENT_GREEN 0x2224
-#define SE_TCL_MATERIAL_AMBIENT_BLUE 0x2228
-#define SE_TCL_MATERIAL_AMBIENT_ALPHA 0x222c
-#define SE_TCL_MATERIAL_DIFFUSE_RED 0x2230
-#define SE_TCL_MATERIAL_DIFFUSE_GREEN 0x2234
-#define SE_TCL_MATERIAL_DIFFUSE_BLUE 0x2238
-#define SE_TCL_MATERIAL_DIFFUSE_ALPHA 0x223c
-#define SE_TCL_MATERIAL_EMMISSIVE_RED 0x2210
-#define SE_TCL_MATERIAL_EMMISSIVE_GREEN 0x2214
-#define SE_TCL_MATERIAL_EMMISSIVE_BLUE 0x2218
-#define SE_TCL_MATERIAL_EMMISSIVE_ALPHA 0x221c
-#define SE_TCL_MATERIAL_SPECULAR_RED 0x2240
-#define SE_TCL_MATERIAL_SPECULAR_GREEN 0x2244
-#define SE_TCL_MATERIAL_SPECULAR_BLUE 0x2248
-#define SE_TCL_MATERIAL_SPECULAR_ALPHA 0x224c
-#define SE_TCL_MATRIX_SELECT_0 0x225c
-#define MODELVIEW_0_SHIFT 0
-#define MODELVIEW_1_SHIFT 4
-#define MODELVIEW_2_SHIFT 8
-#define MODELVIEW_3_SHIFT 12
-#define IT_MODELVIEW_0_SHIFT 16
-#define IT_MODELVIEW_1_SHIFT 20
-#define IT_MODELVIEW_2_SHIFT 24
-#define IT_MODELVIEW_3_SHIFT 28
-#define SE_TCL_MATRIX_SELECT_1 0x2260
-#define MODELPROJECT_0_SHIFT 0
-#define MODELPROJECT_1_SHIFT 4
-#define MODELPROJECT_2_SHIFT 8
-#define MODELPROJECT_3_SHIFT 12
-#define TEXMAT_0_SHIFT 16
-#define TEXMAT_1_SHIFT 20
-#define TEXMAT_2_SHIFT 24
-#define TEXMAT_3_SHIFT 28
-
-#define SE_TCL_OUTPUT_VTX_FMT 0x2254
-#define TCL_VTX_W0 (1 << 0)
-#define TCL_VTX_FP_DIFFUSE (1 << 1)
-#define TCL_VTX_FP_ALPHA (1 << 2)
-#define TCL_VTX_PK_DIFFUSE (1 << 3)
-#define TCL_VTX_FP_SPEC (1 << 4)
-#define TCL_VTX_FP_FOG (1 << 5)
-#define TCL_VTX_PK_SPEC (1 << 6)
-#define TCL_VTX_ST0 (1 << 7)
-#define TCL_VTX_ST1 (1 << 8)
-#define TCL_VTX_Q1 (1 << 9)
-#define TCL_VTX_ST2 (1 << 10)
-#define TCL_VTX_Q2 (1 << 11)
-#define TCL_VTX_ST3 (1 << 12)
-#define TCL_VTX_Q3 (1 << 13)
-#define TCL_VTX_Q0 (1 << 14)
-#define TCL_VTX_WEIGHT_COUNT_SHIFT 15
-#define TCL_VTX_NORM0 (1 << 18)
-#define TCL_VTX_XY1 (1 << 27)
-#define TCL_VTX_Z1 (1 << 28)
-#define TCL_VTX_W1 (1 << 29)
-#define TCL_VTX_NORM1 (1 << 30)
-#define TCL_VTX_Z0 (1 << 31)
-
-#define SE_TCL_OUTPUT_VTX_SEL 0x2258
-#define TCL_COMPUTE_XYZW (1 << 0)
-#define TCL_COMPUTE_DIFFUSE (1 << 1)
-#define TCL_COMPUTE_SPECULAR (1 << 2)
-#define TCL_FORCE_NAN_IF_COLOR_NAN (1 << 3)
-#define TCL_FORCE_INORDER_PROC (1 << 4)
-#define TCL_TEX_INPUT_TEX_0 0
-#define TCL_TEX_INPUT_TEX_1 1
-#define TCL_TEX_INPUT_TEX_2 2
-#define TCL_TEX_INPUT_TEX_3 3
-#define TCL_TEX_COMPUTED_TEX_0 8
-#define TCL_TEX_COMPUTED_TEX_1 9
-#define TCL_TEX_COMPUTED_TEX_2 10
-#define TCL_TEX_COMPUTED_TEX_3 11
-#define TCL_TEX_0_OUTPUT_SHIFT 16
-#define TCL_TEX_1_OUTPUT_SHIFT 20
-#define TCL_TEX_2_OUTPUT_SHIFT 24
-#define TCL_TEX_3_OUTPUT_SHIFT 28
-
-#define SE_TCL_PER_LIGHT_CTL_0 0x2270
-#define LIGHT_0_ENABLE (1 << 0)
-#define LIGHT_0_ENABLE_AMBIENT (1 << 1)
-#define LIGHT_0_ENABLE_SPECULAR (1 << 2)
-#define LIGHT_0_IS_LOCAL (1 << 3)
-#define LIGHT_0_IS_SPOT (1 << 4)
-#define LIGHT_0_DUAL_CONE (1 << 5)
-#define LIGHT_0_ENABLE_RANGE_ATTEN (1 << 6)
-#define LIGHT_0_CONSTANT_RANGE_ATTEN (1 << 7)
-#define LIGHT_0_SHIFT 0
-#define LIGHT_1_ENABLE (1 << 16)
-#define LIGHT_1_ENABLE_AMBIENT (1 << 17)
-#define LIGHT_1_ENABLE_SPECULAR (1 << 18)
-#define LIGHT_1_IS_LOCAL (1 << 19)
-#define LIGHT_1_IS_SPOT (1 << 20)
-#define LIGHT_1_DUAL_CONE (1 << 21)
-#define LIGHT_1_ENABLE_RANGE_ATTEN (1 << 22)
-#define LIGHT_1_CONSTANT_RANGE_ATTEN (1 << 23)
-#define LIGHT_1_SHIFT 16
-#define SE_TCL_PER_LIGHT_CTL_1 0x2274
-#define LIGHT_2_SHIFT 0
-#define LIGHT_3_SHIFT 16
-#define SE_TCL_PER_LIGHT_CTL_2 0x2278
-#define LIGHT_4_SHIFT 0
-#define LIGHT_5_SHIFT 16
-#define SE_TCL_PER_LIGHT_CTL_3 0x227c
-#define LIGHT_6_SHIFT 0
-#define LIGHT_7_SHIFT 16
-
-#define SE_TCL_SHININESS 0x2250
-
-#define SE_TCL_TEXTURE_PROC_CTL 0x2268
-#define TEXGEN_TEXMAT_0_ENABLE (1 << 0)
-#define TEXGEN_TEXMAT_1_ENABLE (1 << 1)
-#define TEXGEN_TEXMAT_2_ENABLE (1 << 2)
-#define TEXGEN_TEXMAT_3_ENABLE (1 << 3)
-#define TEXMAT_0_ENABLE (1 << 4)
-#define TEXMAT_1_ENABLE (1 << 5)
-#define TEXMAT_2_ENABLE (1 << 6)
-#define TEXMAT_3_ENABLE (1 << 7)
-#define TEXGEN_INPUT_MASK 0xf
-#define TEXGEN_INPUT_TEXCOORD_0 0
-#define TEXGEN_INPUT_TEXCOORD_1 1
-#define TEXGEN_INPUT_TEXCOORD_2 2
-#define TEXGEN_INPUT_TEXCOORD_3 3
-#define TEXGEN_INPUT_OBJ 4
-#define TEXGEN_INPUT_EYE 5
-#define TEXGEN_INPUT_EYE_NORMAL 6
-#define TEXGEN_INPUT_EYE_REFLECT 7
-#define TEXGEN_INPUT_EYE_NORMALIZED 8
-#define TEXGEN_0_INPUT_SHIFT 16
-#define TEXGEN_1_INPUT_SHIFT 20
-#define TEXGEN_2_INPUT_SHIFT 24
-#define TEXGEN_3_INPUT_SHIFT 28
-
-#define SE_TCL_UCP_VERT_BLEND_CTL 0x2264
-#define UCP_IN_CLIP_SPACE (1 << 0)
-#define UCP_IN_MODEL_SPACE (1 << 1)
-#define UCP_ENABLE_0 (1 << 2)
-#define UCP_ENABLE_1 (1 << 3)
-#define UCP_ENABLE_2 (1 << 4)
-#define UCP_ENABLE_3 (1 << 5)
-#define UCP_ENABLE_4 (1 << 6)
-#define UCP_ENABLE_5 (1 << 7)
-#define TCL_FOG_MASK (3 << 8)
-#define TCL_FOG_DISABLE (0 << 8)
-#define TCL_FOG_EXP (1 << 8)
-#define TCL_FOG_EXP2 (2 << 8)
-#define TCL_FOG_LINEAR (3 << 8)
-#define RNG_BASED_FOG (1 << 10)
-#define LIGHT_TWOSIDE (1 << 11)
-#define BLEND_OP_COUNT_MASK (7 << 12)
-#define BLEND_OP_COUNT_SHIFT 12
-#define POSITION_BLEND_OP_ENABLE (1 << 16)
-#define NORMAL_BLEND_OP_ENABLE (1 << 17)
-#define VERTEX_BLEND_SRC_0_PRIMARY (1 << 18)
-#define VERTEX_BLEND_SRC_0_SECONDARY (1 << 18)
-#define VERTEX_BLEND_SRC_1_PRIMARY (1 << 19)
-#define VERTEX_BLEND_SRC_1_SECONDARY (1 << 19)
-#define VERTEX_BLEND_SRC_2_PRIMARY (1 << 20)
-#define VERTEX_BLEND_SRC_2_SECONDARY (1 << 20)
-#define VERTEX_BLEND_SRC_3_PRIMARY (1 << 21)
-#define VERTEX_BLEND_SRC_3_SECONDARY (1 << 21)
-#define VERTEX_BLEND_WGT_MINUS_ONE (1 << 22)
-#define CULL_FRONT_IS_CW (0 << 28)
-#define CULL_FRONT_IS_CCW (1 << 28)
-#define CULL_FRONT (1 << 29)
-#define CULL_BACK (1 << 30)
-#define FORCE_W_TO_ONE (1 << 31)
-
-#define SE_VPORT_XSCALE 0x1d98
-#define SE_VPORT_XOFFSET 0x1d9c
-#define SE_VPORT_YSCALE 0x1da0
-#define SE_VPORT_YOFFSET 0x1da4
-#define SE_VPORT_ZSCALE 0x1da8
-#define SE_VPORT_ZOFFSET 0x1dac
-#define SE_ZBIAS_FACTOR 0x1db0
-#define SE_ZBIAS_CONSTANT 0x1db4
-
-#define SE_VTX_FMT 0x2080
-#define SE_VTX_FMT_XY 0x00000000
-#define SE_VTX_FMT_W0 0x00000001
-#define SE_VTX_FMT_FPCOLOR 0x00000002
-#define SE_VTX_FMT_FPALPHA 0x00000004
-#define SE_VTX_FMT_PKCOLOR 0x00000008
-#define SE_VTX_FMT_FPSPEC 0x00000010
-#define SE_VTX_FMT_FPFOG 0x00000020
-#define SE_VTX_FMT_PKSPEC 0x00000040
-#define SE_VTX_FMT_ST0 0x00000080
-#define SE_VTX_FMT_ST1 0x00000100
-#define SE_VTX_FMT_Q1 0x00000200
-#define SE_VTX_FMT_ST2 0x00000400
-#define SE_VTX_FMT_Q2 0x00000800
-#define SE_VTX_FMT_ST3 0x00001000
-#define SE_VTX_FMT_Q3 0x00002000
-#define SE_VTX_FMT_Q0 0x00004000
-#define SE_VTX_FMT_BLND_WEIGHT_CNT_MASK 0x00038000
-#define SE_VTX_FMT_N0 0x00040000
-#define SE_VTX_FMT_XY1 0x08000000
-#define SE_VTX_FMT_Z1 0x10000000
-#define SE_VTX_FMT_W1 0x20000000
-#define SE_VTX_FMT_N1 0x40000000
-#define SE_VTX_FMT_Z 0x80000000
-
-#define SE_VF_CNTL 0x2084
-#define VF_PRIM_TYPE_POINT_LIST 1
-#define VF_PRIM_TYPE_LINE_LIST 2
-#define VF_PRIM_TYPE_LINE_STRIP 3
-#define VF_PRIM_TYPE_TRIANGLE_LIST 4
-#define VF_PRIM_TYPE_TRIANGLE_FAN 5
-#define VF_PRIM_TYPE_TRIANGLE_STRIP 6
-#define VF_PRIM_TYPE_TRIANGLE_FLAG 7
-#define VF_PRIM_TYPE_RECTANGLE_LIST 8
-#define VF_PRIM_TYPE_POINT_LIST_3 9
-#define VF_PRIM_TYPE_LINE_LIST_3 10
-#define VF_PRIM_TYPE_SPIRIT_LIST 11
-#define VF_PRIM_TYPE_LINE_LOOP 12
-#define VF_PRIM_TYPE_QUAD_LIST 13
-#define VF_PRIM_TYPE_QUAD_STRIP 14
-#define VF_PRIM_TYPE_POLYGON 15
-#define VF_PRIM_WALK_STATE (0<<4)
-#define VF_PRIM_WALK_INDEX (1<<4)
-#define VF_PRIM_WALK_LIST (2<<4)
-#define VF_PRIM_WALK_DATA (3<<4)
-#define VF_COLOR_ORDER_RGBA (1<<6)
-#define VF_RADEON_MODE (1<<8)
-#define VF_TCL_OUTPUT_CTL_ENA (1<<9)
-#define VF_PROG_STREAM_ENA (1<<10)
-#define VF_INDEX_SIZE_SHIFT 11
-#define VF_NUM_VERTICES_SHIFT 16
-
-#define SE_PORT_DATA0 0x2000
-
-#define R200_SE_VAP_CNTL 0x2080
-#define R200_VAP_TCL_ENABLE 0x00000001
-#define R200_VAP_SINGLE_BUF_STATE_ENABLE 0x00000010
-#define R200_VAP_FORCE_W_TO_ONE 0x00010000
-#define R200_VAP_D3D_TEX_DEFAULT 0x00020000
-#define R200_VAP_VF_MAX_VTX_NUM__SHIFT 18
-#define R200_VAP_VF_MAX_VTX_NUM (9 << 18)
-#define R200_VAP_DX_CLIP_SPACE_DEF 0x00400000
-#define R200_VF_MAX_VTX_INDX 0x210c
-#define R200_VF_MIN_VTX_INDX 0x2110
-#define R200_SE_VTE_CNTL 0x20b0
-#define R200_VPORT_X_SCALE_ENA 0x00000001
-#define R200_VPORT_X_OFFSET_ENA 0x00000002
-#define R200_VPORT_Y_SCALE_ENA 0x00000004
-#define R200_VPORT_Y_OFFSET_ENA 0x00000008
-#define R200_VPORT_Z_SCALE_ENA 0x00000010
-#define R200_VPORT_Z_OFFSET_ENA 0x00000020
-#define R200_VTX_XY_FMT 0x00000100
-#define R200_VTX_Z_FMT 0x00000200
-#define R200_VTX_W0_FMT 0x00000400
-#define R200_VTX_W0_NORMALIZE 0x00000800
-#define R200_VTX_ST_DENORMALIZED 0x00001000
-#define R200_SE_VAP_CNTL_STATUS 0x2140
-#define R200_VC_NO_SWAP (0 << 0)
-#define R200_VC_16BIT_SWAP (1 << 0)
-#define R200_VC_32BIT_SWAP (2 << 0)
-#define R200_PP_TXFILTER_0 0x2c00
-#define R200_MAG_FILTER_NEAREST (0 << 0)
-#define R200_MAG_FILTER_LINEAR (1 << 0)
-#define R200_MAG_FILTER_MASK (1 << 0)
-#define R200_MIN_FILTER_NEAREST (0 << 1)
-#define R200_MIN_FILTER_LINEAR (1 << 1)
-#define R200_MIN_FILTER_NEAREST_MIP_NEAREST (2 << 1)
-#define R200_MIN_FILTER_NEAREST_MIP_LINEAR (3 << 1)
-#define R200_MIN_FILTER_LINEAR_MIP_NEAREST (6 << 1)
-#define R200_MIN_FILTER_LINEAR_MIP_LINEAR (7 << 1)
-#define R200_MIN_FILTER_ANISO_NEAREST (8 << 1)
-#define R200_MIN_FILTER_ANISO_LINEAR (9 << 1)
-#define R200_MIN_FILTER_ANISO_NEAREST_MIP_NEAREST (10 << 1)
-#define R200_MIN_FILTER_ANISO_NEAREST_MIP_LINEAR (11 << 1)
-#define R200_MIN_FILTER_MASK (15 << 1)
-#define R200_MAX_ANISO_1_TO_1 (0 << 5)
-#define R200_MAX_ANISO_2_TO_1 (1 << 5)
-#define R200_MAX_ANISO_4_TO_1 (2 << 5)
-#define R200_MAX_ANISO_8_TO_1 (3 << 5)
-#define R200_MAX_ANISO_16_TO_1 (4 << 5)
-#define R200_MAX_ANISO_MASK (7 << 5)
-#define R200_MAX_MIP_LEVEL_MASK (0x0f << 16)
-#define R200_MAX_MIP_LEVEL_SHIFT 16
-#define R200_YUV_TO_RGB (1 << 20)
-#define R200_YUV_TEMPERATURE_COOL (0 << 21)
-#define R200_YUV_TEMPERATURE_HOT (1 << 21)
-#define R200_YUV_TEMPERATURE_MASK (1 << 21)
-#define R200_WRAPEN_S (1 << 22)
-#define R200_CLAMP_S_WRAP (0 << 23)
-#define R200_CLAMP_S_MIRROR (1 << 23)
-#define R200_CLAMP_S_CLAMP_LAST (2 << 23)
-#define R200_CLAMP_S_MIRROR_CLAMP_LAST (3 << 23)
-#define R200_CLAMP_S_CLAMP_BORDER (4 << 23)
-#define R200_CLAMP_S_MIRROR_CLAMP_BORDER (5 << 23)
-#define R200_CLAMP_S_CLAMP_GL (6 << 23)
-#define R200_CLAMP_S_MIRROR_CLAMP_GL (7 << 23)
-#define R200_CLAMP_S_MASK (7 << 23)
-#define R200_WRAPEN_T (1 << 26)
-#define R200_CLAMP_T_WRAP (0 << 27)
-#define R200_CLAMP_T_MIRROR (1 << 27)
-#define R200_CLAMP_T_CLAMP_LAST (2 << 27)
-#define R200_CLAMP_T_MIRROR_CLAMP_LAST (3 << 27)
-#define R200_CLAMP_T_CLAMP_BORDER (4 << 27)
-#define R200_CLAMP_T_MIRROR_CLAMP_BORDER (5 << 27)
-#define R200_CLAMP_T_CLAMP_GL (6 << 27)
-#define R200_CLAMP_T_MIRROR_CLAMP_GL (7 << 27)
-#define R200_CLAMP_T_MASK (7 << 27)
-#define R200_KILL_LT_ZERO (1 << 30)
-#define R200_BORDER_MODE_OGL (0 << 31)
-#define R200_BORDER_MODE_D3D (1 << 31)
-#define R200_PP_TXFORMAT_0 0x2c04
-#define R200_TXFORMAT_I8 (0 << 0)
-#define R200_TXFORMAT_AI88 (1 << 0)
-#define R200_TXFORMAT_RGB332 (2 << 0)
-#define R200_TXFORMAT_ARGB1555 (3 << 0)
-#define R200_TXFORMAT_RGB565 (4 << 0)
-#define R200_TXFORMAT_ARGB4444 (5 << 0)
-#define R200_TXFORMAT_ARGB8888 (6 << 0)
-#define R200_TXFORMAT_RGBA8888 (7 << 0)
-#define R200_TXFORMAT_Y8 (8 << 0)
-#define R200_TXFORMAT_AVYU4444 (9 << 0)
-#define R200_TXFORMAT_VYUY422 (10 << 0)
-#define R200_TXFORMAT_YVYU422 (11 << 0)
-#define R200_TXFORMAT_DXT1 (12 << 0)
-#define R200_TXFORMAT_DXT23 (14 << 0)
-#define R200_TXFORMAT_DXT45 (15 << 0)
-#define R200_TXFORMAT_FORMAT_MASK (31 << 0)
-#define R200_TXFORMAT_FORMAT_SHIFT 0
-#define R200_TXFORMAT_ALPHA_IN_MAP (1 << 6)
-#define R200_TXFORMAT_NON_POWER2 (1 << 7)
-#define R200_TXFORMAT_WIDTH_MASK (15 << 8)
-#define R200_TXFORMAT_WIDTH_SHIFT 8
-#define R200_TXFORMAT_HEIGHT_MASK (15 << 12)
-#define R200_TXFORMAT_HEIGHT_SHIFT 12
-#define R200_TXFORMAT_F5_WIDTH_MASK (15 << 16) /* cube face 5 */
-#define R200_TXFORMAT_F5_WIDTH_SHIFT 16
-#define R200_TXFORMAT_F5_HEIGHT_MASK (15 << 20)
-#define R200_TXFORMAT_F5_HEIGHT_SHIFT 20
-#define R200_TXFORMAT_ST_ROUTE_STQ0 (0 << 24)
-#define R200_TXFORMAT_ST_ROUTE_STQ1 (1 << 24)
-#define R200_TXFORMAT_ST_ROUTE_STQ2 (2 << 24)
-#define R200_TXFORMAT_ST_ROUTE_STQ3 (3 << 24)
-#define R200_TXFORMAT_ST_ROUTE_STQ4 (4 << 24)
-#define R200_TXFORMAT_ST_ROUTE_STQ5 (5 << 24)
-#define R200_TXFORMAT_ST_ROUTE_MASK (7 << 24)
-#define R200_TXFORMAT_ST_ROUTE_SHIFT 24
-#define R200_TXFORMAT_ALPHA_MASK_ENABLE (1 << 28)
-#define R200_TXFORMAT_CHROMA_KEY_ENABLE (1 << 29)
-#define R200_TXFORMAT_CUBIC_MAP_ENABLE (1 << 30)
-#define R200_PP_TXFORMAT_X_0 0x2c08
-#define R200_PP_TXSIZE_0 0x2c0c /* NPOT only */
-#define R200_PP_TXPITCH_0 0x2c10 /* NPOT only */
-#define R200_PP_TXOFFSET_0 0x2d00
-#define R200_TXO_ENDIAN_NO_SWAP (0 << 0)
-#define R200_TXO_ENDIAN_BYTE_SWAP (1 << 0)
-#define R200_TXO_ENDIAN_WORD_SWAP (2 << 0)
-#define R200_TXO_ENDIAN_HALFDW_SWAP (3 << 0)
-#define R200_TXO_OFFSET_MASK 0xffffffe0
-#define R200_TXO_OFFSET_SHIFT 5
-
-#define R200_PP_TFACTOR_0 0x2ee0
-#define R200_PP_TFACTOR_1 0x2ee4
-#define R200_PP_TFACTOR_2 0x2ee8
-#define R200_PP_TFACTOR_3 0x2eec
-#define R200_PP_TFACTOR_4 0x2ef0
-#define R200_PP_TFACTOR_5 0x2ef4
-
-#define R200_PP_TXCBLEND_0 0x2f00
-#define R200_TXC_ARG_A_ZERO (0)
-#define R200_TXC_ARG_A_CURRENT_COLOR (2)
-#define R200_TXC_ARG_A_CURRENT_ALPHA (3)
-#define R200_TXC_ARG_A_DIFFUSE_COLOR (4)
-#define R200_TXC_ARG_A_DIFFUSE_ALPHA (5)
-#define R200_TXC_ARG_A_SPECULAR_COLOR (6)
-#define R200_TXC_ARG_A_SPECULAR_ALPHA (7)
-#define R200_TXC_ARG_A_TFACTOR_COLOR (8)
-#define R200_TXC_ARG_A_TFACTOR_ALPHA (9)
-#define R200_TXC_ARG_A_R0_COLOR (10)
-#define R200_TXC_ARG_A_R0_ALPHA (11)
-#define R200_TXC_ARG_A_R1_COLOR (12)
-#define R200_TXC_ARG_A_R1_ALPHA (13)
-#define R200_TXC_ARG_A_R2_COLOR (14)
-#define R200_TXC_ARG_A_R2_ALPHA (15)
-#define R200_TXC_ARG_A_R3_COLOR (16)
-#define R200_TXC_ARG_A_R3_ALPHA (17)
-#define R200_TXC_ARG_A_R4_COLOR (18)
-#define R200_TXC_ARG_A_R4_ALPHA (19)
-#define R200_TXC_ARG_A_R5_COLOR (20)
-#define R200_TXC_ARG_A_R5_ALPHA (21)
-#define R200_TXC_ARG_A_TFACTOR1_COLOR (26)
-#define R200_TXC_ARG_A_TFACTOR1_ALPHA (27)
-#define R200_TXC_ARG_A_MASK (31 << 0)
-#define R200_TXC_ARG_A_SHIFT 0
-#define R200_TXC_ARG_B_ZERO (0 << 5)
-#define R200_TXC_ARG_B_CURRENT_COLOR (2 << 5)
-#define R200_TXC_ARG_B_CURRENT_ALPHA (3 << 5)
-#define R200_TXC_ARG_B_DIFFUSE_COLOR (4 << 5)
-#define R200_TXC_ARG_B_DIFFUSE_ALPHA (5 << 5)
-#define R200_TXC_ARG_B_SPECULAR_COLOR (6 << 5)
-#define R200_TXC_ARG_B_SPECULAR_ALPHA (7 << 5)
-#define R200_TXC_ARG_B_TFACTOR_COLOR (8 << 5)
-#define R200_TXC_ARG_B_TFACTOR_ALPHA (9 << 5)
-#define R200_TXC_ARG_B_R0_COLOR (10 << 5)
-#define R200_TXC_ARG_B_R0_ALPHA (11 << 5)
-#define R200_TXC_ARG_B_R1_COLOR (12 << 5)
-#define R200_TXC_ARG_B_R1_ALPHA (13 << 5)
-#define R200_TXC_ARG_B_R2_COLOR (14 << 5)
-#define R200_TXC_ARG_B_R2_ALPHA (15 << 5)
-#define R200_TXC_ARG_B_R3_COLOR (16 << 5)
-#define R200_TXC_ARG_B_R3_ALPHA (17 << 5)
-#define R200_TXC_ARG_B_R4_COLOR (18 << 5)
-#define R200_TXC_ARG_B_R4_ALPHA (19 << 5)
-#define R200_TXC_ARG_B_R5_COLOR (20 << 5)
-#define R200_TXC_ARG_B_R5_ALPHA (21 << 5)
-#define R200_TXC_ARG_B_TFACTOR1_COLOR (26 << 5)
-#define R200_TXC_ARG_B_TFACTOR1_ALPHA (27 << 5)
-#define R200_TXC_ARG_B_MASK (31 << 5)
-#define R200_TXC_ARG_B_SHIFT 5
-#define R200_TXC_ARG_C_ZERO (0 << 10)
-#define R200_TXC_ARG_C_CURRENT_COLOR (2 << 10)
-#define R200_TXC_ARG_C_CURRENT_ALPHA (3 << 10)
-#define R200_TXC_ARG_C_DIFFUSE_COLOR (4 << 10)
-#define R200_TXC_ARG_C_DIFFUSE_ALPHA (5 << 10)
-#define R200_TXC_ARG_C_SPECULAR_COLOR (6 << 10)
-#define R200_TXC_ARG_C_SPECULAR_ALPHA (7 << 10)
-#define R200_TXC_ARG_C_TFACTOR_COLOR (8 << 10)
-#define R200_TXC_ARG_C_TFACTOR_ALPHA (9 << 10)
-#define R200_TXC_ARG_C_R0_COLOR (10 << 10)
-#define R200_TXC_ARG_C_R0_ALPHA (11 << 10)
-#define R200_TXC_ARG_C_R1_COLOR (12 << 10)
-#define R200_TXC_ARG_C_R1_ALPHA (13 << 10)
-#define R200_TXC_ARG_C_R2_COLOR (14 << 10)
-#define R200_TXC_ARG_C_R2_ALPHA (15 << 10)
-#define R200_TXC_ARG_C_R3_COLOR (16 << 10)
-#define R200_TXC_ARG_C_R3_ALPHA (17 << 10)
-#define R200_TXC_ARG_C_R4_COLOR (18 << 10)
-#define R200_TXC_ARG_C_R4_ALPHA (19 << 10)
-#define R200_TXC_ARG_C_R5_COLOR (20 << 10)
-#define R200_TXC_ARG_C_R5_ALPHA (21 << 10)
-#define R200_TXC_ARG_C_TFACTOR1_COLOR (26 << 10)
-#define R200_TXC_ARG_C_TFACTOR1_ALPHA (27 << 10)
-#define R200_TXC_ARG_C_MASK (31 << 10)
-#define R200_TXC_ARG_C_SHIFT 10
-#define R200_TXC_COMP_ARG_A (1 << 16)
-#define R200_TXC_COMP_ARG_A_SHIFT (16)
-#define R200_TXC_BIAS_ARG_A (1 << 17)
-#define R200_TXC_SCALE_ARG_A (1 << 18)
-#define R200_TXC_NEG_ARG_A (1 << 19)
-#define R200_TXC_COMP_ARG_B (1 << 20)
-#define R200_TXC_COMP_ARG_B_SHIFT (20)
-#define R200_TXC_BIAS_ARG_B (1 << 21)
-#define R200_TXC_SCALE_ARG_B (1 << 22)
-#define R200_TXC_NEG_ARG_B (1 << 23)
-#define R200_TXC_COMP_ARG_C (1 << 24)
-#define R200_TXC_COMP_ARG_C_SHIFT (24)
-#define R200_TXC_BIAS_ARG_C (1 << 25)
-#define R200_TXC_SCALE_ARG_C (1 << 26)
-#define R200_TXC_NEG_ARG_C (1 << 27)
-#define R200_TXC_OP_MADD (0 << 28)
-#define R200_TXC_OP_CND0 (2 << 28)
-#define R200_TXC_OP_LERP (3 << 28)
-#define R200_TXC_OP_DOT3 (4 << 28)
-#define R200_TXC_OP_DOT4 (5 << 28)
-#define R200_TXC_OP_CONDITIONAL (6 << 28)
-#define R200_TXC_OP_DOT2_ADD (7 << 28)
-#define R200_TXC_OP_MASK (7 << 28)
-#define R200_PP_TXCBLEND2_0 0x2f04
-#define R200_TXC_TFACTOR_SEL_SHIFT 0
-#define R200_TXC_TFACTOR_SEL_MASK 0x7
-#define R200_TXC_TFACTOR1_SEL_SHIFT 4
-#define R200_TXC_TFACTOR1_SEL_MASK (0x7 << 4)
-#define R200_TXC_SCALE_SHIFT 8
-#define R200_TXC_SCALE_MASK (7 << 8)
-#define R200_TXC_SCALE_1X (0 << 8)
-#define R200_TXC_SCALE_2X (1 << 8)
-#define R200_TXC_SCALE_4X (2 << 8)
-#define R200_TXC_SCALE_8X (3 << 8)
-#define R200_TXC_SCALE_INV2 (5 << 8)
-#define R200_TXC_SCALE_INV4 (6 << 8)
-#define R200_TXC_SCALE_INV8 (7 << 8)
-#define R200_TXC_CLAMP_SHIFT 12
-#define R200_TXC_CLAMP_MASK (3 << 12)
-#define R200_TXC_CLAMP_WRAP (0 << 12)
-#define R200_TXC_CLAMP_0_1 (1 << 12)
-#define R200_TXC_CLAMP_8_8 (2 << 12)
-#define R200_TXC_OUTPUT_REG_MASK (7 << 16)
-#define R200_TXC_OUTPUT_REG_NONE (0 << 16)
-#define R200_TXC_OUTPUT_REG_R0 (1 << 16)
-#define R200_TXC_OUTPUT_REG_R1 (2 << 16)
-#define R200_TXC_OUTPUT_REG_R2 (3 << 16)
-#define R200_TXC_OUTPUT_REG_R3 (4 << 16)
-#define R200_TXC_OUTPUT_REG_R4 (5 << 16)
-#define R200_TXC_OUTPUT_REG_R5 (6 << 16)
-#define R200_TXC_OUTPUT_MASK_MASK (7 << 20)
-#define R200_TXC_OUTPUT_MASK_RGB (0 << 20)
-#define R200_TXC_OUTPUT_MASK_RG (1 << 20)
-#define R200_TXC_OUTPUT_MASK_RB (2 << 20)
-#define R200_TXC_OUTPUT_MASK_R (3 << 20)
-#define R200_TXC_OUTPUT_MASK_GB (4 << 20)
-#define R200_TXC_OUTPUT_MASK_G (5 << 20)
-#define R200_TXC_OUTPUT_MASK_B (6 << 20)
-#define R200_TXC_OUTPUT_MASK_NONE (7 << 20)
-#define R200_TXC_REPL_NORMAL 0
-#define R200_TXC_REPL_RED 1
-#define R200_TXC_REPL_GREEN 2
-#define R200_TXC_REPL_BLUE 3
-#define R200_TXC_REPL_ARG_A_SHIFT 26
-#define R200_TXC_REPL_ARG_A_MASK (3 << 26)
-#define R200_TXC_REPL_ARG_B_SHIFT 28
-#define R200_TXC_REPL_ARG_B_MASK (3 << 28)
-#define R200_TXC_REPL_ARG_C_SHIFT 30
-#define R200_TXC_REPL_ARG_C_MASK (3 << 30)
-#define R200_PP_TXABLEND_0 0x2f08
-#define R200_TXA_ARG_A_ZERO (0)
-#define R200_TXA_ARG_A_CURRENT_ALPHA (2) /* guess */
-#define R200_TXA_ARG_A_CURRENT_BLUE (3) /* guess */
-#define R200_TXA_ARG_A_DIFFUSE_ALPHA (4)
-#define R200_TXA_ARG_A_DIFFUSE_BLUE (5)
-#define R200_TXA_ARG_A_SPECULAR_ALPHA (6)
-#define R200_TXA_ARG_A_SPECULAR_BLUE (7)
-#define R200_TXA_ARG_A_TFACTOR_ALPHA (8)
-#define R200_TXA_ARG_A_TFACTOR_BLUE (9)
-#define R200_TXA_ARG_A_R0_ALPHA (10)
-#define R200_TXA_ARG_A_R0_BLUE (11)
-#define R200_TXA_ARG_A_R1_ALPHA (12)
-#define R200_TXA_ARG_A_R1_BLUE (13)
-#define R200_TXA_ARG_A_R2_ALPHA (14)
-#define R200_TXA_ARG_A_R2_BLUE (15)
-#define R200_TXA_ARG_A_R3_ALPHA (16)
-#define R200_TXA_ARG_A_R3_BLUE (17)
-#define R200_TXA_ARG_A_R4_ALPHA (18)
-#define R200_TXA_ARG_A_R4_BLUE (19)
-#define R200_TXA_ARG_A_R5_ALPHA (20)
-#define R200_TXA_ARG_A_R5_BLUE (21)
-#define R200_TXA_ARG_A_TFACTOR1_ALPHA (26)
-#define R200_TXA_ARG_A_TFACTOR1_BLUE (27)
-#define R200_TXA_ARG_A_MASK (31 << 0)
-#define R200_TXA_ARG_A_SHIFT 0
-#define R200_TXA_ARG_B_ZERO (0 << 5)
-#define R200_TXA_ARG_B_CURRENT_ALPHA (2 << 5) /* guess */
-#define R200_TXA_ARG_B_CURRENT_BLUE (3 << 5) /* guess */
-#define R200_TXA_ARG_B_DIFFUSE_ALPHA (4 << 5)
-#define R200_TXA_ARG_B_DIFFUSE_BLUE (5 << 5)
-#define R200_TXA_ARG_B_SPECULAR_ALPHA (6 << 5)
-#define R200_TXA_ARG_B_SPECULAR_BLUE (7 << 5)
-#define R200_TXA_ARG_B_TFACTOR_ALPHA (8 << 5)
-#define R200_TXA_ARG_B_TFACTOR_BLUE (9 << 5)
-#define R200_TXA_ARG_B_R0_ALPHA (10 << 5)
-#define R200_TXA_ARG_B_R0_BLUE (11 << 5)
-#define R200_TXA_ARG_B_R1_ALPHA (12 << 5)
-#define R200_TXA_ARG_B_R1_BLUE (13 << 5)
-#define R200_TXA_ARG_B_R2_ALPHA (14 << 5)
-#define R200_TXA_ARG_B_R2_BLUE (15 << 5)
-#define R200_TXA_ARG_B_R3_ALPHA (16 << 5)
-#define R200_TXA_ARG_B_R3_BLUE (17 << 5)
-#define R200_TXA_ARG_B_R4_ALPHA (18 << 5)
-#define R200_TXA_ARG_B_R4_BLUE (19 << 5)
-#define R200_TXA_ARG_B_R5_ALPHA (20 << 5)
-#define R200_TXA_ARG_B_R5_BLUE (21 << 5)
-#define R200_TXA_ARG_B_TFACTOR1_ALPHA (26 << 5)
-#define R200_TXA_ARG_B_TFACTOR1_BLUE (27 << 5)
-#define R200_TXA_ARG_B_MASK (31 << 5)
-#define R200_TXA_ARG_B_SHIFT 5
-#define R200_TXA_ARG_C_ZERO (0 << 10)
-#define R200_TXA_ARG_C_CURRENT_ALPHA (2 << 10) /* guess */
-#define R200_TXA_ARG_C_CURRENT_BLUE (3 << 10) /* guess */
-#define R200_TXA_ARG_C_DIFFUSE_ALPHA (4 << 10)
-#define R200_TXA_ARG_C_DIFFUSE_BLUE (5 << 10)
-#define R200_TXA_ARG_C_SPECULAR_ALPHA (6 << 10)
-#define R200_TXA_ARG_C_SPECULAR_BLUE (7 << 10)
-#define R200_TXA_ARG_C_TFACTOR_ALPHA (8 << 10)
-#define R200_TXA_ARG_C_TFACTOR_BLUE (9 << 10)
-#define R200_TXA_ARG_C_R0_ALPHA (10 << 10)
-#define R200_TXA_ARG_C_R0_BLUE (11 << 10)
-#define R200_TXA_ARG_C_R1_ALPHA (12 << 10)
-#define R200_TXA_ARG_C_R1_BLUE (13 << 10)
-#define R200_TXA_ARG_C_R2_ALPHA (14 << 10)
-#define R200_TXA_ARG_C_R2_BLUE (15 << 10)
-#define R200_TXA_ARG_C_R3_ALPHA (16 << 10)
-#define R200_TXA_ARG_C_R3_BLUE (17 << 10)
-#define R200_TXA_ARG_C_R4_ALPHA (18 << 10)
-#define R200_TXA_ARG_C_R4_BLUE (19 << 10)
-#define R200_TXA_ARG_C_R5_ALPHA (20 << 10)
-#define R200_TXA_ARG_C_R5_BLUE (21 << 10)
-#define R200_TXA_ARG_C_TFACTOR1_ALPHA (26 << 10)
-#define R200_TXA_ARG_C_TFACTOR1_BLUE (27 << 10)
-#define R200_TXA_ARG_C_MASK (31 << 10)
-#define R200_TXA_ARG_C_SHIFT 10
-#define R200_TXA_COMP_ARG_A (1 << 16)
-#define R200_TXA_COMP_ARG_A_SHIFT (16)
-#define R200_TXA_BIAS_ARG_A (1 << 17)
-#define R200_TXA_SCALE_ARG_A (1 << 18)
-#define R200_TXA_NEG_ARG_A (1 << 19)
-#define R200_TXA_COMP_ARG_B (1 << 20)
-#define R200_TXA_COMP_ARG_B_SHIFT (20)
-#define R200_TXA_BIAS_ARG_B (1 << 21)
-#define R200_TXA_SCALE_ARG_B (1 << 22)
-#define R200_TXA_NEG_ARG_B (1 << 23)
-#define R200_TXA_COMP_ARG_C (1 << 24)
-#define R200_TXA_COMP_ARG_C_SHIFT (24)
-#define R200_TXA_BIAS_ARG_C (1 << 25)
-#define R200_TXA_SCALE_ARG_C (1 << 26)
-#define R200_TXA_NEG_ARG_C (1 << 27)
-#define R200_TXA_OP_MADD (0 << 28)
-#define R200_TXA_OP_CND0 (2 << 28)
-#define R200_TXA_OP_LERP (3 << 28)
-#define R200_TXA_OP_CONDITIONAL (6 << 28)
-#define R200_TXA_OP_MASK (7 << 28)
-#define R200_PP_TXABLEND2_0 0x2f0c
-#define R200_TXA_TFACTOR_SEL_SHIFT 0
-#define R200_TXA_TFACTOR_SEL_MASK 0x7
-#define R200_TXA_TFACTOR1_SEL_SHIFT 4
-#define R200_TXA_TFACTOR1_SEL_MASK (0x7 << 4)
-#define R200_TXA_SCALE_SHIFT 8
-#define R200_TXA_SCALE_MASK (7 << 8)
-#define R200_TXA_SCALE_1X (0 << 8)
-#define R200_TXA_SCALE_2X (1 << 8)
-#define R200_TXA_SCALE_4X (2 << 8)
-#define R200_TXA_SCALE_8X (3 << 8)
-#define R200_TXA_SCALE_INV2 (5 << 8)
-#define R200_TXA_SCALE_INV4 (6 << 8)
-#define R200_TXA_SCALE_INV8 (7 << 8)
-#define R200_TXA_CLAMP_SHIFT 12
-#define R200_TXA_CLAMP_MASK (3 << 12)
-#define R200_TXA_CLAMP_WRAP (0 << 12)
-#define R200_TXA_CLAMP_0_1 (1 << 12)
-#define R200_TXA_CLAMP_8_8 (2 << 12)
-#define R200_TXA_OUTPUT_REG_MASK (7 << 16)
-#define R200_TXA_OUTPUT_REG_NONE (0 << 16)
-#define R200_TXA_OUTPUT_REG_R0 (1 << 16)
-#define R200_TXA_OUTPUT_REG_R1 (2 << 16)
-#define R200_TXA_OUTPUT_REG_R2 (3 << 16)
-#define R200_TXA_OUTPUT_REG_R3 (4 << 16)
-#define R200_TXA_OUTPUT_REG_R4 (5 << 16)
-#define R200_TXA_OUTPUT_REG_R5 (6 << 16)
-#define R200_TXA_DOT_ALPHA (1 << 20)
-#define R200_TXA_REPL_NORMAL 0
-#define R200_TXA_REPL_RED 1
-#define R200_TXA_REPL_GREEN 2
-#define R200_TXA_REPL_ARG_A_SHIFT 26
-#define R200_TXA_REPL_ARG_A_MASK (3 << 26)
-#define R200_TXA_REPL_ARG_B_SHIFT 28
-#define R200_TXA_REPL_ARG_B_MASK (3 << 28)
-#define R200_TXA_REPL_ARG_C_SHIFT 30
-#define R200_TXA_REPL_ARG_C_MASK (3 << 30)
-
-#define R200_SE_VTX_FMT_0 0x2088
-#define R200_VTX_XY 0 /* always have xy */
-#define R200_VTX_Z0 (1<<0)
-#define R200_VTX_W0 (1<<1)
-#define R200_VTX_WEIGHT_COUNT_SHIFT (2)
-#define R200_VTX_PV_MATRIX_SEL (1<<5)
-#define R200_VTX_N0 (1<<6)
-#define R200_VTX_POINT_SIZE (1<<7)
-#define R200_VTX_DISCRETE_FOG (1<<8)
-#define R200_VTX_SHININESS_0 (1<<9)
-#define R200_VTX_SHININESS_1 (1<<10)
-#define R200_VTX_COLOR_NOT_PRESENT 0
-#define R200_VTX_PK_RGBA 1
-#define R200_VTX_FP_RGB 2
-#define R200_VTX_FP_RGBA 3
-#define R200_VTX_COLOR_MASK 3
-#define R200_VTX_COLOR_0_SHIFT 11
-#define R200_VTX_COLOR_1_SHIFT 13
-#define R200_VTX_COLOR_2_SHIFT 15
-#define R200_VTX_COLOR_3_SHIFT 17
-#define R200_VTX_COLOR_4_SHIFT 19
-#define R200_VTX_COLOR_5_SHIFT 21
-#define R200_VTX_COLOR_6_SHIFT 23
-#define R200_VTX_COLOR_7_SHIFT 25
-#define R200_VTX_XY1 (1<<28)
-#define R200_VTX_Z1 (1<<29)
-#define R200_VTX_W1 (1<<30)
-#define R200_VTX_N1 (1<<31)
-#define R200_SE_VTX_FMT_1 0x208c
-#define R200_VTX_TEX0_COMP_CNT_SHIFT 0
-#define R200_VTX_TEX1_COMP_CNT_SHIFT 3
-#define R200_VTX_TEX2_COMP_CNT_SHIFT 6
-#define R200_VTX_TEX3_COMP_CNT_SHIFT 9
-#define R200_VTX_TEX4_COMP_CNT_SHIFT 12
-#define R200_VTX_TEX5_COMP_CNT_SHIFT 15
-
-#define R200_SE_TCL_OUTPUT_VTX_FMT_0 0x2090
-#define R200_SE_TCL_OUTPUT_VTX_FMT_1 0x2094
-#define R200_SE_TCL_OUTPUT_VTX_COMP_SEL 0x2250
-#define R200_OUTPUT_XYZW (1<<0)
-#define R200_OUTPUT_COLOR_0 (1<<8)
-#define R200_OUTPUT_COLOR_1 (1<<9)
-#define R200_OUTPUT_TEX_0 (1<<16)
-#define R200_OUTPUT_TEX_1 (1<<17)
-#define R200_OUTPUT_TEX_2 (1<<18)
-#define R200_OUTPUT_TEX_3 (1<<19)
-#define R200_OUTPUT_TEX_4 (1<<20)
-#define R200_OUTPUT_TEX_5 (1<<21)
-#define R200_OUTPUT_TEX_MASK (0x3f<<16)
-#define R200_OUTPUT_DISCRETE_FOG (1<<24)
-#define R200_OUTPUT_PT_SIZE (1<<25)
-#define R200_FORCE_INORDER_PROC (1<<31)
-#define R200_PP_CNTL_X 0x2cc4
-#define R200_PP_TXMULTI_CTL_0 0x2c1c
-#define R200_SE_VTX_STATE_CNTL 0x2180
-#define R200_UPDATE_USER_COLOR_0_ENA_MASK (1<<16)
-
-/* BUS MASTERING */
-
-#define BM_FRAME_BUF_OFFSET 0xA00
-#define BM_SYSTEM_MEM_ADDR 0xA04
-#define BM_COMMAND 0xA08
-#define BM_INTERRUPT_DIS 0x08000000
-#define BM_TRANSFER_DEST_REG 0x10000000
-#define BM_FORCE_TO_PCI 0x20000000
-#define BM_FRAME_OFFSET_HOLD 0x40000000
-#define BM_END_OF_LIST 0x80000000
-//#define BM_STATUS 0xA0c // !!!!!! already used
-#define BM_QUEUE_STATUS 0xA10
-#define BM_QUEUE_FREE_STATUS 0xA14
-#define BM_CHUNK_0_VAL 0xA18
-#define BM_PTR_FORCE_TO_PCI 0x00200000
-#define BM_PM4_RD_FORCE_TO_PCI 0x00400000
-#define BM_GLOBAL_FORCE_TO_PCI 0x00800000
-#define BM_VIP3_NOCHUNK 0x10000000
-#define BM_VIP2_NOCHUNK 0x20000000
-#define BM_VIP1_NOCHUNK 0x40000000
-#define BM_VIP0_NOCHUNK 0x80000000
-#define BM_CHUNK_1_VAL 0xA1C
-#define BM_VIP0_BUF 0xA20
-#define SYSTEM_TRIGGER_SYSTEM_TO_VIDEO 0x0
-#define SYSTEM_TRIGGER_VIDEO_TO_SYSTEM 0x1
-#define BM_VIP0_ACTIVE 0xA24
-#define BM_VIP1_BUF 0xA30
-#define BM_VIP1_ACTIVE 0xA34
-#define BM_VIP2_BUF 0xA40
-#define BM_VIP2_ACTIVE 0xA44
-#define BM_VIP3_BUF 0xA50
-#define BM_VIP3_ACTIVE 0xA54
-#define BM_VIDCAP_BUF0 0xA60
-#define BM_VIDCAP_BUF1 0xA64
-#define BM_VIDCAP_BUF2 0xA68
-#define BM_VIDCAP_ACTIVE 0xA6c
-#define BM_GUI 0xA80
-
-/* RAGE THEATER REGISTERS */
-
-#define DMA_VIPH0_COMMAND 0x0A00
-#define DMA_VIPH1_COMMAND 0x0A04
-#define DMA_VIPH2_COMMAND 0x0A08
-#define DMA_VIPH3_COMMAND 0x0A0C
-#define DMA_VIPH_STATUS 0x0A10
-#define DMA_VIPH_CHUNK_0 0x0A18
-#define DMA_VIPH_CHUNK_1_VAL 0x0A1C
-#define DMA_VIP0_TABLE_ADDR 0x0A20
-#define DMA_VIPH0_ACTIVE 0x0A24
-#define DMA_VIP1_TABLE_ADDR 0x0A30
-#define DMA_VIPH1_ACTIVE 0x0A34
-#define DMA_VIP2_TABLE_ADDR 0x0A40
-#define DMA_VIPH2_ACTIVE 0x0A44
-#define DMA_VIP3_TABLE_ADDR 0x0A50
-#define DMA_VIPH3_ACTIVE 0x0A54
-#define DMA_VIPH_ABORT 0x0A88
-
-#define VIPH_CONTROL 0x0C40
-#define VIPH_CH0_DATA 0x0C00
-#define VIPH_CH1_DATA 0x0C04
-#define VIPH_CH2_DATA 0x0C08
-#define VIPH_CH3_DATA 0x0C0C
-#define VIPH_CH0_ADDR 0x0C10
-#define VIPH_CH1_ADDR 0x0C14
-#define VIPH_CH2_ADDR 0x0C18
-#define VIPH_CH3_ADDR 0x0C1C
-#define VIPH_CH0_SBCNT 0x0C20
-#define VIPH_CH1_SBCNT 0x0C24
-#define VIPH_CH2_SBCNT 0x0C28
-#define VIPH_CH3_SBCNT 0x0C2C
-#define VIPH_CH0_ABCNT 0x0C30
-#define VIPH_CH1_ABCNT 0x0C34
-#define VIPH_CH2_ABCNT 0x0C38
-#define VIPH_CH3_ABCNT 0x0C3C
-#define VIPH_DV_LAT 0x0C44
-#define VIPH_BM_CHUNK 0x0C48
-#define VIPH_DV_INT 0x0C4C
-#define VIPH_TIMEOUT_STAT 0x0C50
-
-#define VIPH_REG_DATA 0x0084
-#define VIPH_REG_ADDR 0x0080
-
-/* Address Space Rage Theatre Registers (VIP Access) */
-#define VIP_VIP_VENDOR_DEVICE_ID 0x0000
-#define VIP_VIP_SUB_VENDOR_DEVICE_ID 0x0004
-#define VIP_VIP_COMMAND_STATUS 0x0008
-#define VIP_VIP_REVISION_ID 0x000c
-#define VIP_HW_DEBUG 0x0010
-#define VIP_SW_SCRATCH 0x0014
-#define VIP_I2C_CNTL_0 0x0020
-#define VIP_I2C_CNTL_1 0x0024
-#define VIP_I2C_DATA 0x0028
-#define VIP_INT_CNTL 0x002c
-#define VIP_INT_CNTL__FB_INT0 0x02000000
-#define VIP_INT_CNTL__FB_INT0_CLR 0x02000000
-#define VIP_GPIO_INOUT 0x0030
-#define VIP_GPIO_CNTL 0x0034
-#define VIP_CLKOUT_GPIO_CNTL 0x0038
-#define VIP_RIPINTF_PORT_CNTL 0x003c
-#define VIP_HOSTINTF_PORT_CNTL 0x003c
-#define VIP_HOSTINTF_PORT_CNTL__HAD_HCTL_SDA_SN 0x00000008
-#define VIP_HOSTINTF_PORT_CNTL__HAD_HCTL_SDA_SP 0x00000080
-#define VIP_HOSTINTF_PORT_CNTL__HAD_HCTL_SDA_SR 0x00000100
-#define VIP_HOSTINTF_PORT_CNTL__SUB_SYS_ID_EN 0x00010000
-#define VIP_HOSTINTF_PORT_CNTL__FIFO_RW_MODE 0x00300000
-#define VIP_HOSTINTF_PORT_CNTL__FIFOA_ENDIAN_SWAP 0x00c00000
-#define VIP_HOSTINTF_PORT_CNTL__FIFOB_ENDIAN_SWAP 0x03000000
-#define VIP_HOSTINTF_PORT_CNTL__FIFOC_ENDIAN_SWAP 0x0c000000
-#define VIP_HOSTINTF_PORT_CNTL__FIFOD_ENDIAN_SWAP 0x30000000
-#define VIP_HOSTINTF_PORT_CNTL__FIFOE_ENDIAN_SWAP 0xc0000000
-#define VIP_DSP_PLL_CNTL 0x0bc
-#define VIP_TC_SOURCE 0x300
-#define VIP_TC_DESTINATION 0x304
-#define VIP_TC_COMMAND 0x308
-#define VIP_TC_STATUS 0x030c
-#define VIP_TC_STATUS__TC_CHAN_BUSY 0x00007fff
-#define VIP_TC_STATUS__TC_WRITE_PENDING 0x00008000
-#define VIP_TC_STATUS__TC_FIFO_4_EMPTY 0x00040000
-#define VIP_TC_STATUS__TC_FIFO_6_EMPTY 0x00080000
-#define VIP_TC_STATUS__TC_FIFO_8_EMPTY 0x00100000
-#define VIP_TC_STATUS__TC_FIFO_10_EMPTY 0x00200000
-#define VIP_TC_STATUS__TC_FIFO_4_FULL 0x04000000
-#define VIP_TC_STATUS__TC_FIFO_6_FULL 0x08080000
-#define VIP_TC_STATUS__TC_FIFO_8_FULL 0x10080000
-#define VIP_TC_STATUS__TC_FIFO_10_FULL 0x20080000
-#define VIP_TC_STATUS__DSP_ILLEGAL_OP 0x80080000
-#define VIP_TC_DOWNLOAD 0x0310
-#define VIP_TC_DOWNLOAD__TC_DONE_MASK 0x00003fff
-#define VIP_TC_DOWNLOAD__TC_RESET_MODE 0x00060000
-#define VIP_FB_INT 0x0314
-#define VIP_FB_INT__INT_7 0x00000080
-#define VIP_FB_SCRATCH0 0x0318
-#define VIP_FB_SCRATCH1 0x031c
-#define VIP_ADC_CNTL 0x0400
-#define VIP_ADC_DEBUG 0x0404
-#define VIP_STANDARD_SELECT 0x0408
-#define VIP_THERMO2BIN_STATUS 0x040c
-#define VIP_COMB_CNTL0 0x0440
-#define VIP_COMB_CNTL1 0x0444
-#define VIP_COMB_CNTL2 0x0448
-#define VIP_COMB_LINE_LENGTH 0x044c
-#define VIP_NOISE_CNTL0 0x0450
-#define VIP_HS_PLINE 0x0480
-#define VIP_HS_DTOINC 0x0484
-#define VIP_HS_PLLGAIN 0x0488
-#define VIP_HS_MINMAXWIDTH 0x048c
-#define VIP_HS_GENLOCKDELAY 0x0490
-#define VIP_HS_WINDOW_LIMIT 0x0494
-#define VIP_HS_WINDOW_OC_SPEED 0x0498
-#define VIP_HS_PULSE_WIDTH 0x049c
-#define VIP_HS_PLL_ERROR 0x04a0
-#define VIP_HS_PLL_FS_PATH 0x04a4
-#define VIP_SG_BLACK_GATE 0x04c0
-#define VIP_SG_SYNCTIP_GATE 0x04c4
-#define VIP_SG_UVGATE_GATE 0x04c8
-#define VIP_LP_AGC_CLAMP_CNTL0 0x0500
-#define VIP_LP_AGC_CLAMP_CNTL1 0x0504
-#define VIP_LP_BRIGHTNESS 0x0508
-#define VIP_LP_CONTRAST 0x050c
-#define VIP_LP_SLICE_LIMIT 0x0510
-#define VIP_LP_WPA_CNTL0 0x0514
-#define VIP_LP_WPA_CNTL1 0x0518
-#define VIP_LP_BLACK_LEVEL 0x051c
-#define VIP_LP_SLICE_LEVEL 0x0520
-#define VIP_LP_SYNCTIP_LEVEL 0x0524
-#define VIP_LP_VERT_LOCKOUT 0x0528
-#define VIP_VS_DETECTOR_CNTL 0x0540
-#define VIP_VS_BLANKING_CNTL 0x0544
-#define VIP_VS_FIELD_ID_CNTL 0x0548
-#define VIP_VS_COUNTER_CNTL 0x054c
-#define VIP_VS_FRAME_TOTAL 0x0550
-#define VIP_VS_LINE_COUNT 0x0554
-#define VIP_CP_PLL_CNTL0 0x0580
-#define VIP_CP_PLL_CNTL1 0x0584
-#define VIP_CP_HUE_CNTL 0x0588
-#define VIP_CP_BURST_GAIN 0x058c
-#define VIP_CP_AGC_CNTL 0x0590
-#define VIP_CP_ACTIVE_GAIN 0x0594
-#define VIP_CP_PLL_STATUS0 0x0598
-#define VIP_CP_PLL_STATUS1 0x059c
-#define VIP_CP_PLL_STATUS2 0x05a0
-#define VIP_CP_PLL_STATUS3 0x05a4
-#define VIP_CP_PLL_STATUS4 0x05a8
-#define VIP_CP_PLL_STATUS5 0x05ac
-#define VIP_CP_PLL_STATUS6 0x05b0
-#define VIP_CP_PLL_STATUS7 0x05b4
-#define VIP_CP_DEBUG_FORCE 0x05b8
-#define VIP_CP_VERT_LOCKOUT 0x05bc
-#define VIP_H_ACTIVE_WINDOW 0x05c0
-#define VIP_V_ACTIVE_WINDOW 0x05c4
-#define VIP_H_VBI_WINDOW 0x05c8
-#define VIP_V_VBI_WINDOW 0x05cc
-#define VIP_VBI_CONTROL 0x05d0
-#define VIP_DECODER_DEBUG_CNTL 0x05d4
-#define VIP_SINGLE_STEP_DATA 0x05d8
-#define VIP_MASTER_CNTL 0x0040
-#define VIP_RGB_CNTL 0x0048
-#define VIP_CLKOUT_CNTL 0x004c
-#define VIP_SYNC_CNTL 0x0050
-#define VIP_I2C_CNTL 0x0054
-#define VIP_HTOTAL 0x0080
-#define VIP_HDISP 0x0084
-#define VIP_HSIZE 0x0088
-#define VIP_HSTART 0x008c
-#define VIP_HCOUNT 0x0090
-#define VIP_VTOTAL 0x0094
-#define VIP_VDISP 0x0098
-#define VIP_VCOUNT 0x009c
-#define VIP_VFTOTAL 0x00a0
-#define VIP_DFCOUNT 0x00a4
-#define VIP_DFRESTART 0x00a8
-#define VIP_DHRESTART 0x00ac
-#define VIP_DVRESTART 0x00b0
-#define VIP_SYNC_SIZE 0x00b4
-#define VIP_TV_PLL_FINE_CNTL 0x00b8
-#define VIP_CRT_PLL_FINE_CNTL 0x00bc
-#define VIP_TV_PLL_CNTL 0x00c0
-#define VIP_CRT_PLL_CNTL 0x00c4
-#define VIP_PLL_CNTL0 0x00c8
-#define VIP_PLL_TEST_CNTL 0x00cc
-#define VIP_CLOCK_SEL_CNTL 0x00d0
-#define VIP_VIN_PLL_CNTL 0x00d4
-#define VIP_VIN_PLL_FINE_CNTL 0x00d8
-#define VIP_AUD_PLL_CNTL 0x00e0
-#define VIP_AUD_PLL_FINE_CNTL 0x00e4
-#define VIP_AUD_CLK_DIVIDERS 0x00e8
-#define VIP_AUD_DTO_INCREMENTS 0x00ec
-#define VIP_L54_PLL_CNTL 0x00f0
-#define VIP_L54_PLL_FINE_CNTL 0x00f4
-#define VIP_L54_DTO_INCREMENTS 0x00f8
-#define VIP_PLL_CNTL1 0x00fc
-#define VIP_FRAME_LOCK_CNTL 0x0100
-#define VIP_SYNC_LOCK_CNTL 0x0104
-#define VIP_TVO_SYNC_PAT_ACCUM 0x0108
-#define VIP_TVO_SYNC_THRESHOLD 0x010c
-#define VIP_TVO_SYNC_PAT_EXPECT 0x0110
-#define VIP_DELAY_ONE_MAP_A 0x0114
-#define VIP_DELAY_ONE_MAP_B 0x0118
-#define VIP_DELAY_ZERO_MAP_A 0x011c
-#define VIP_DELAY_ZERO_MAP_B 0x0120
-#define VIP_TVO_DATA_DELAY_A 0x0140
-#define VIP_TVO_DATA_DELAY_B 0x0144
-#define VIP_HOST_READ_DATA 0x0180
-#define VIP_HOST_WRITE_DATA 0x0184
-#define VIP_HOST_RD_WT_CNTL 0x0188
-#define VIP_VSCALER_CNTL1 0x01c0
-#define VIP_TIMING_CNTL 0x01c4
-#define VIP_VSCALER_CNTL2 0x01c8
-#define VIP_Y_FALL_CNTL 0x01cc
-#define VIP_Y_RISE_CNTL 0x01d0
-#define VIP_Y_SAW_TOOTH_CNTL 0x01d4
-#define VIP_UPSAMP_AND_GAIN_CNTL 0x01e0
-#define VIP_GAIN_LIMIT_SETTINGS 0x01e4
-#define VIP_LINEAR_GAIN_SETTINGS 0x01e8
-#define VIP_MODULATOR_CNTL1 0x0200
-#define VIP_MODULATOR_CNTL2 0x0204
-#define VIP_MV_MODE_CNTL 0x0208
-#define VIP_MV_STRIPE_CNTL 0x020c
-#define VIP_MV_LEVEL_CNTL1 0x0210
-#define VIP_MV_LEVEL_CNTL2 0x0214
-#define VIP_PRE_DAC_MUX_CNTL 0x0240
-#define VIP_TV_DAC_CNTL 0x0280
-#define VIP_CRC_CNTL 0x02c0
-#define VIP_VIDEO_PORT_SIG 0x02c4
-#define VIP_VBI_CC_CNTL 0x02c8
-#define VIP_VBI_EDS_CNTL 0x02cc
-#define VIP_VBI_20BIT_CNTL 0x02d0
-#define VIP_VBI_DTO_CNTL 0x02d4
-#define VIP_VBI_LEVEL_CNTL 0x02d8
-#define VIP_UV_ADR 0x0300
-#define VIP_MV_STATUS 0x0330
-#define VIP_UPSAMP_COEFF0_0 0x0340
-#define VIP_UPSAMP_COEFF0_1 0x0344
-#define VIP_UPSAMP_COEFF0_2 0x0348
-#define VIP_UPSAMP_COEFF1_0 0x034c
-#define VIP_UPSAMP_COEFF1_1 0x0350
-#define VIP_UPSAMP_COEFF1_2 0x0354
-#define VIP_UPSAMP_COEFF2_0 0x0358
-#define VIP_UPSAMP_COEFF2_1 0x035c
-#define VIP_UPSAMP_COEFF2_2 0x0360
-#define VIP_UPSAMP_COEFF3_0 0x0364
-#define VIP_UPSAMP_COEFF3_1 0x0368
-#define VIP_UPSAMP_COEFF3_2 0x036c
-#define VIP_UPSAMP_COEFF4_0 0x0370
-#define VIP_UPSAMP_COEFF4_1 0x0374
-#define VIP_UPSAMP_COEFF4_2 0x0378
-#define VIP_TV_DTO_INCREMENTS 0x0390
-#define VIP_CRT_DTO_INCREMENTS 0x0394
-#define VIP_VSYNC_DIFF_CNTL 0x03a0
-#define VIP_VSYNC_DIFF_LIMITS 0x03a4
-#define VIP_VSYNC_DIFF_RD_DATA 0x03a8
-#define VIP_SCALER_IN_WINDOW 0x0618
-#define VIP_SCALER_OUT_WINDOW 0x061c
-#define VIP_H_SCALER_CONTROL 0x0600
-#define VIP_V_SCALER_CONTROL 0x0604
-#define VIP_V_DEINTERLACE_CONTROL 0x0608
-#define VIP_VBI_SCALER_CONTROL 0x060c
-#define VIP_DVS_PORT_CTRL 0x0610
-#define VIP_DVS_PORT_READBACK 0x0614
-#define VIP_FIFOA_CONFIG 0x0800
-#define VIP_FIFOB_CONFIG 0x0804
-#define VIP_FIFOC_CONFIG 0x0808
-#define VIP_SPDIF_PORT_CNTL 0x080c
-#define VIP_SPDIF_CHANNEL_STAT 0x0810
-#define VIP_SPDIF_AC3_PREAMBLE 0x0814
-#define VIP_I2S_TRANSMIT_CNTL 0x0818
-#define VIP_I2S_RECEIVE_CNTL 0x081c
-#define VIP_SPDIF_TX_CNT_REG 0x0820
-#define VIP_IIS_TX_CNT_REG 0x0824
-
-/* Status defines */
-#define VIP_BUSY 0
-#define VIP_IDLE 1
-#define VIP_RESET 2
-
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO0_STAT 0x00000001
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO0_AK 0x00000001
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO1_STAT 0x00000002
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO1_AK 0x00000002
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO2_STAT 0x00000004
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO2_AK 0x00000004
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO3_STAT 0x00000008
-#define VIPH_TIMEOUT_STAT__VIPH_FIFO3_AK 0x00000008
-
-#define VIPH_TIMEOUT_STAT__VIPH_REG_STAT 0x00000010
-#define VIPH_TIMEOUT_STAT__VIPH_REG_AK 0x00000010
-#define VIPH_TIMEOUT_STAT__VIPH_REGR_DIS 0x01000000
-#define TEST_DEBUG_CNTL__TEST_DEBUG_OUT_EN 0x00000001
-
-#define RT100_ATI_ID 0x4D541002
-#define RT200_ATI_ID 0x4D4A1002
-
-/* Register/Field values: */
-#define RT_COMP0 0x0
-#define RT_COMP1 0x1
-#define RT_COMP2 0x2
-#define RT_YF_COMP3 0x3
-#define RT_YR_COMP3 0x4
-#define RT_YCF_COMP4 0x5
-#define RT_YCR_COMP4 0x6
-
-/* Video standard defines */
-#define RT_NTSC 0x0
-#define RT_PAL 0x1
-#define RT_SECAM 0x2
-#define extNONE 0x0000
-#define extNTSC 0x0100
-#define extRsvd 0x0200
-#define extPAL 0x0300
-#define extPAL_M 0x0400
-#define extPAL_N 0x0500
-#define extSECAM 0x0600
-#define extPAL_NCOMB 0x0700
-#define extNTSC_J 0x0800
-#define extNTSC_443 0x0900
-#define extPAL_BGHI 0x0A00
-#define extPAL_60 0x0B00
- /* these are used in MSP3430 */
-#define extPAL_DK1 0x0C00
-#define extPAL_AUTO 0x0D00
- /* these are used in RT200. Some are defined above */
-#define extPAL_B 0x0E00
-#define extPAL_D 0x0F00
-#define extPAL_G 0x1000
-#define extPAL_H 0x1100
-#define extPAL_I 0x1200
-#define extSECAM_B 0x1300
-#define extSECAM_D 0x1400
-#define extSECAM_G 0x1500
-#define extSECAM_H 0x1600
-#define extSECAM_K 0x1700
-#define extSECAM_K1 0x1800
-#define extSECAM_L 0x1900
-#define extSECAM_L1 0x1A00
-
-#define RT_FREF_2700 6
-#define RT_FREF_2950 5
-
-#define RT_COMPOSITE 0x0
-#define RT_SVIDEO 0x1
-
-#define RT_NORM_SHARPNESS 0x03
-#define RT_HIGH_SHARPNESS 0x0F
-
-#define RT_HUE_PAL_DEF 0x00
-
-#define RT_DECINTERLACED 0x1
-#define RT_DECNONINTERLACED 0x0
-
-#define NTSC_LINES 525
-#define PAL_SECAM_LINES 625
-
-#define RT_ASYNC_ENABLE 0x0
-#define RT_ASYNC_DISABLE 0x1
-#define RT_ASYNC_RESET 0x1
-
-#define RT_VINRST_ACTIVE 0x0
-#define RT_VINRST_RESET 0x1
-#define RT_L54RST_RESET 0x1
-
-#define RT_REF_CLK 0x0
-#define RT_PLL_VIN_CLK 0x1
-
-#define RT_VIN_ASYNC_RST 0x20
-#define RT_DVS_ASYNC_RST 0x80
-
-#define RT_ADC_ENABLE 0x0
-#define RT_ADC_DISABLE 0x1
-
-#define RT_DVSDIR_IN 0x0
-#define RT_DVSDIR_OUT 0x1
-
-#define RT_DVSCLK_HIGH 0x0
-#define RT_DVSCLK_LOW 0x1
-
-#define RT_DVSCLK_SEL_8FS 0x0
-#define RT_DVSCLK_SEL_27MHZ 0x1
-
-#define RT_DVS_CONTSTREAM 0x1
-#define RT_DVS_NONCONTSTREAM 0x0
-
-#define RT_DVSDAT_HIGH 0x0
-#define RT_DVSDAT_LOW 0x1
-
-#define RT_ADC_CNTL_DEFAULT 0x03252338
-
-/* COMB_CNTL0 FILTER SETTINGS FOR DIFFERENT STANDARDS: */
-#define RT_NTSCM_COMB_CNTL0_COMPOSITE 0x09438090 /* was 0x09438090 */
-#define RT_NTSCM_COMB_CNTL0_SVIDEO 0x48540000
-
-#define RT_PAL_COMB_CNTL0_COMPOSITE 0x09438090
-#define RT_PAL_COMB_CNTL0_SVIDEO 0x40348090
-
-#define RT_SECAM_COMB_CNTL0_COMPOSITE 0xD0108090 /* instead of orig 0xD0088090 - eric*/
-#define RT_SECAM_COMB_CNTL0_SVIDEO 0x50148090
-
-#define RT_PALN_COMB_CNTL0_COMPOSITE 0x09438090
-#define RT_PALN_COMB_CNTL0_SVIDEO 0x40348090
-
-#define RT_PALM_COMB_CNTL0_COMPOSITE 0x09438090
-#define RT_PALM_COMB_CNTL0_SVIDEO 0x40348090
-/* End of filter settings. */
-
-/* COMB_CNTL1 FILTER SETTINGS FOR DIFFERENT STANDARDS: */
-#define RT_NTSCM_COMB_CNTL1_COMPOSITE 0x00000010
-#define RT_NTSCM_COMB_CNTL1_SVIDEO 0x00000081
-
-#define RT_PAL_COMB_CNTL1_COMPOSITE 0x00000010
-#define RT_PAL_COMB_CNTL1_SVIDEO 0x000000A1
-
-#define RT_SECAM_COMB_CNTL1_COMPOSITE 0x00000091
-#define RT_SECAM_COMB_CNTL1_SVIDEO 0x00000081
-
-#define RT_PALN_COMB_CNTL1_COMPOSITE 0x00000010
-#define RT_PALN_COMB_CNTL1_SVIDEO 0x000000A1
-
-#define RT_PALM_COMB_CNTL1_COMPOSITE 0x00000010
-#define RT_PALM_COMB_CNTL1_SVIDEO 0x000000A1
-/* End of filter settings. */
-
-/* COMB_CNTL2 FILTER SETTINGS FOR DIFFERENT STANDARDS: */
-#define RT_NTSCM_COMB_CNTL2_COMPOSITE 0x16161010
-#define RT_NTSCM_COMB_CNTL2_SVIDEO 0xFFFFFFFF
-
-#define RT_PAL_COMB_CNTL2_COMPOSITE 0x06080102 /* instead of 0x16161010 - Ivo */
-#define RT_PAL_COMB_CNTL2_SVIDEO 0x06080102
-
-#define RT_SECAM_COMB_CNTL2_COMPOSITE 0xffffffff /* instead of 0x06080102 - eric */
-#define RT_SECAM_COMB_CNTL2_SVIDEO 0x06080102
-
-#define RT_PALN_COMB_CNTL2_COMPOSITE 0x06080102
-#define RT_PALN_COMB_CNTL2_SVIDEO 0x06080102
-
-#define RT_PALM_COMB_CNTL2_COMPOSITE 0x06080102
-#define RT_PALM_COMB_CNTL2_SVIDEO 0x06080102
-/* End of filter settings. */
-
-/* COMB_LINE_LENGTH FILTER SETTINGS FOR DIFFERENT STANDARDS: */
-#define RT_NTSCM_COMB_LENGTH_COMPOSITE 0x0718038A
-#define RT_NTSCM_COMB_LENGTH_SVIDEO 0x0718038A
-
-#define RT_PAL_COMB_LENGTH_COMPOSITE 0x08DA046B
-#define RT_PAL_COMB_LENGTH_SVIDEO 0x08DA046B
-
-#define RT_SECAM_COMB_LENGTH_COMPOSITE 0x08DA046A
-#define RT_SECAM_COMB_LENGTH_SVIDEO 0x08DA046A
-
-#define RT_PALN_COMB_LENGTH_COMPOSITE 0x07260391
-#define RT_PALN_COMB_LENGTH_SVIDEO 0x07260391
-
-#define RT_PALM_COMB_LENGTH_COMPOSITE 0x07160389
-#define RT_PALM_COMB_LENGTH_SVIDEO 0x07160389
-/* End of filter settings. */
-
-/* LP_AGC_CLAMP_CNTL0 */
-#define RT_NTSCM_SYNCTIP_REF0 0x00000037
-#define RT_NTSCM_SYNCTIP_REF1 0x00000029
-#define RT_NTSCM_CLAMP_REF 0x0000003B
-#define RT_NTSCM_PEAKWHITE 0x000000FF
-#define RT_NTSCM_VBI_PEAKWHITE 0x000000D2 /* was 0xc2 - docs say d2 */
-
-#define RT_NTSCM_WPA_THRESHOLD 0x00000406
-#define RT_NTSCM_WPA_TRIGGER_LO 0x000000B3
-
-#define RT_NTSCM_WPA_TRIGGER_HIGH 0x0000021B
-
-#define RT_NTSCM_LP_LOCKOUT_START 0x00000206
-#define RT_NTSCM_LP_LOCKOUT_END 0x00000021
-#define RT_NTSCM_CH_DTO_INC 0x00400000
-#define RT_NTSCM_CH_PLL_SGAIN 0x00000001
-#define RT_NTSCM_CH_PLL_FGAIN 0x00000002
-
-#define RT_NTSCM_CR_BURST_GAIN 0x0000007A
-#define RT_NTSCM_CB_BURST_GAIN 0x000000AC
-
-#define RT_NTSCM_CH_HEIGHT 0x000000CD
-#define RT_NTSCM_CH_KILL_LEVEL 0x000000C0
-#define RT_NTSCM_CH_AGC_ERROR_LIM 0x00000002
-#define RT_NTSCM_CH_AGC_FILTER_EN 0x00000000
-#define RT_NTSCM_CH_AGC_LOOP_SPEED 0x00000000
-
-#define RT_NTSCM_CRDR_ACTIVE_GAIN 0x0000007A
-#define RT_NTSCM_CBDB_ACTIVE_GAIN 0x000000AC
-
-#define RT_NTSCM_VERT_LOCKOUT_START 0x00000207
-#define RT_NTSCM_VERT_LOCKOUT_END 0x0000000E
-
-#define RT_NTSCJ_SYNCTIP_REF0 0x00000004
-#define RT_NTSCJ_SYNCTIP_REF1 0x00000012
-#define RT_NTSCJ_CLAMP_REF 0x0000003B
-#define RT_NTSCJ_PEAKWHITE 0x000000CB
-#define RT_NTSCJ_VBI_PEAKWHITE 0x000000C2
-#define RT_NTSCJ_WPA_THRESHOLD 0x000004B0
-#define RT_NTSCJ_WPA_TRIGGER_LO 0x000000B4
-#define RT_NTSCJ_WPA_TRIGGER_HIGH 0x0000021C
-#define RT_NTSCJ_LP_LOCKOUT_START 0x00000206
-#define RT_NTSCJ_LP_LOCKOUT_END 0x00000021
-
-#define RT_NTSCJ_CR_BURST_GAIN 0x00000071
-#define RT_NTSCJ_CB_BURST_GAIN 0x0000009F
-#define RT_NTSCJ_CH_HEIGHT 0x000000CD
-#define RT_NTSCJ_CH_KILL_LEVEL 0x000000C0
-#define RT_NTSCJ_CH_AGC_ERROR_LIM 0x00000002
-#define RT_NTSCJ_CH_AGC_FILTER_EN 0x00000000
-#define RT_NTSCJ_CH_AGC_LOOP_SPEED 0x00000000
-
-#define RT_NTSCJ_CRDR_ACTIVE_GAIN 0x00000071
-#define RT_NTSCJ_CBDB_ACTIVE_GAIN 0x0000009F
-#define RT_NTSCJ_VERT_LOCKOUT_START 0x00000207
-#define RT_NTSCJ_VERT_LOCKOUT_END 0x0000000E
-
-#define RT_PAL_SYNCTIP_REF0 0x37 /* instead of 0x00000004 - Ivo */
-#define RT_PAL_SYNCTIP_REF1 0x26 /* instead of 0x0000000F - Ivo */
-#define RT_PAL_CLAMP_REF 0x0000003B
-#define RT_PAL_PEAKWHITE 0xFF /* instead of 0x000000C1 - Ivo */
-#define RT_PAL_VBI_PEAKWHITE 0xC6 /* instead of 0x000000C7 - Ivo */
-#define RT_PAL_WPA_THRESHOLD 0x59C /* instead of 0x000006A4 - Ivo */
-
-#define RT_PAL_WPA_TRIGGER_LO 0x00000096
-#define RT_PAL_WPA_TRIGGER_HIGH 0x000001C2
-#define RT_PAL_LP_LOCKOUT_START 0x00000263
-#define RT_PAL_LP_LOCKOUT_END 0x0000002C
-
-#define RT_PAL_CH_DTO_INC 0x00400000
-#define RT_PAL_CH_PLL_SGAIN 1 /* instead of 0x00000002 - Ivo */
-#define RT_PAL_CH_PLL_FGAIN 2 /* instead of 0x00000001 - Ivo */
-#define RT_PAL_CR_BURST_GAIN 0x0000007A
-#define RT_PAL_CB_BURST_GAIN 0x000000AB
-#define RT_PAL_CH_HEIGHT 0x0000009C
-#define RT_PAL_CH_KILL_LEVEL 4 /* instead of 0x00000090 - Ivo */
-#define RT_PAL_CH_AGC_ERROR_LIM 1 /* instead of 0x00000002 - Ivo */
-#define RT_PAL_CH_AGC_FILTER_EN 1 /* instead of 0x00000000 - Ivo */
-#define RT_PAL_CH_AGC_LOOP_SPEED 0x00000000
-
-#define RT_PAL_CRDR_ACTIVE_GAIN 0x9E /* instead of 0x0000007A - Ivo */
-#define RT_PAL_CBDB_ACTIVE_GAIN 0xDF /* instead of 0x000000AB - Ivo */
-#define RT_PAL_VERT_LOCKOUT_START 0x00000269
-#define RT_PAL_VERT_LOCKOUT_END 0x00000012
-
-#define RT_SECAM_SYNCTIP_REF0 0x37 /* instead of 0x00000004 - Ivo */
-#define RT_SECAM_SYNCTIP_REF1 0x26 /* instead of 0x0000000F - Ivo */
-#define RT_SECAM_CLAMP_REF 0x0000003B
-#define RT_SECAM_PEAKWHITE 0xFF /* instead of 0x000000C1 - Ivo */
-#define RT_SECAM_VBI_PEAKWHITE 0xC6 /* instead of 0x000000C7 - Ivo */
-#define RT_SECAM_WPA_THRESHOLD 0x57A /* instead of 0x6A4, instead of 0x0000059C is Ivo's value , -eric*/
-
-#define RT_SECAM_WPA_TRIGGER_LO 0x96 /* instead of 0x0000026B - eric */
-#define RT_SECAM_WPA_TRIGGER_HIGH 0x000001C2
-#define RT_SECAM_LP_LOCKOUT_START 0x263 /* instead of 0x0000026B - eric */
-#define RT_SECAM_LP_LOCKOUT_END 0x2b /* instead of 0x0000002C -eric */
-
-#define RT_SECAM_CH_DTO_INC 0x003E7A28
-#define RT_SECAM_CH_PLL_SGAIN 0x4 /* instead of 0x00000006 - Volodya */
-#define RT_SECAM_CH_PLL_FGAIN 0x7 /* instead of 0x00000006 -Volodya */
-
-#define RT_SECAM_CR_BURST_GAIN 0x1FF /* instead of 0x00000200 -Volodya */
-#define RT_SECAM_CB_BURST_GAIN 0x1FF /* instead of 0x00000200 -Volodya */
-#define RT_SECAM_CH_HEIGHT 0x00000066
-#define RT_SECAM_CH_KILL_LEVEL 0x00000060
-#define RT_SECAM_CH_AGC_ERROR_LIM 0x00000003
-#define RT_SECAM_CH_AGC_FILTER_EN 0x00000000
-#define RT_SECAM_CH_AGC_LOOP_SPEED 0x00000000
-
-#define RT_SECAM_CRDR_ACTIVE_GAIN 0x11B /* instead of 0x00000200 - eric */
-#define RT_SECAM_CBDB_ACTIVE_GAIN 0x15A /* instead of 0x00000200 - eric */
-#define RT_SECAM_VERT_LOCKOUT_START 0x00000269
-#define RT_SECAM_VERT_LOCKOUT_END 0x00000012
-
-#define RT_PAL_VS_FIELD_BLANK_END 0x2A /* instead of 0x0000002C - Ivo*/
-#define RT_NTSCM_VS_FIELD_BLANK_END 0x0000000a
-
-#define RT_NTSCM_FIELD_IDLOCATION 0x00000105
-#define RT_PAL_FIELD_IDLOCATION 0x00000137
-
-#define RT_NTSCM_H_ACTIVE_START 0x00000070
-#define RT_NTSCM_H_ACTIVE_END 0x00000363
-
-#define RT_PAL_H_ACTIVE_START 0x0000009A
-#define RT_PAL_H_ACTIVE_END 0x00000439
-
-#define RT_NTSCM_V_ACTIVE_START ((22-4)*2+1)
-#define RT_NTSCM_V_ACTIVE_END ((22+240-4)*2+1)
-
-#define RT_PAL_V_ACTIVE_START 0x2E /* instead of 0x00000023 (Same as SECAM) - Ivo */
-#define RT_PAL_V_ACTIVE_END 0x269 /* instead of 0x00000262 - Ivo */
-
-/* VBI */
-#define RT_NTSCM_H_VBI_WIND_START 0x32 /* instead of 0x00000049 - V.D. */
-#define RT_NTSCM_H_VBI_WIND_END 0x367 /* instead of 0x00000366 - V.D. */
-
-#define RT_PAL_H_VBI_WIND_START 0x00000084
-#define RT_PAL_H_VBI_WIND_END 0x0000041F
-
-#define RT_NTSCM_V_VBI_WIND_START fld_V_VBI_WIND_START_def
-#define RT_NTSCM_V_VBI_WIND_END fld_V_VBI_WIND_END_def
-
-#define RT_PAL_V_VBI_WIND_START 0x8 /* instead of 0x0000000B - Ivo */
-#define RT_PAL_V_VBI_WIND_END 0x2D /* instead of 0x00000022 - Ivo */
-
-#define RT_VBI_CAPTURE_EN 0x00000001 /* Enable */
-#define RT_VBI_CAPTURE_DIS 0x00000000 /* Disable */
-#define RT_RAW_CAPTURE 0x00000002 /* Use raw Video Capture. */
-
-#define RT_NTSCM_VSYNC_INT_TRIGGER 0x2AA
-#define RT_PALSEM_VSYNC_INT_TRIGGER 0x353
-
-#define RT_NTSCM_VSYNC_INT_HOLD 0x17
-#define RT_PALSEM_VSYNC_INT_HOLD 0x1C
-
-#define RT_NTSCM_VS_FIELD_BLANK_START 0x206
-#define RT_PALSEM_VS_FIELD_BLANK_START 0x26D /* instead of 0x26C - Ivo */
-
-#define RT_FIELD_FLIP_EN 0x4
-#define RT_V_FIELD_FLIP_INVERTED 0x2000
-
-#define RT_NTSCM_H_IN_START 0x70
-#define RT_PAL_H_IN_START 154 /* instead of 144 - Ivo */
-#define RT_SECAM_H_IN_START 0x91 /* instead of 0x9A, Ivo value is 154, instead of 144 - Volodya, - eric */
-#define RT_NTSC_H_ACTIVE_SIZE 744
-#define RT_PAL_H_ACTIVE_SIZE 928 /* instead of 927 - Ivo */
-#define RT_SECAM_H_ACTIVE_SIZE 932 /* instead of 928, instead of 927 - Ivo, - eric */
-#define RT_NTSCM_V_IN_START (0x23)
-#define RT_PAL_V_IN_START 44 /* instead of (45-6) - Ivo */
-#define RT_SECAM_V_IN_START 0x2C /* instead of (45-6) - Volodya */
-#define RT_NTSCM_V_ACTIVE_SIZE 480
-#define RT_PAL_V_ACTIVE_SIZE 572 /* instead of 575 - Ivo */
-#define RT_SECAM_V_ACTIVE_SIZE 570 /* instead of 572, instead of 575 - Ivo, - eric */
-
-#define RT_NTSCM_WIN_CLOSE_LIMIT 0x4D
-#define RT_NTSCJ_WIN_CLOSE_LIMIT 0x4D
-#define RT_NTSC443_WIN_CLOSE_LIMIT 0x5F
-#define RT_PALM_WIN_CLOSE_LIMIT 0x4D
-#define RT_PALN_WIN_CLOSE_LIMIT 0x5F
-#define RT_SECAM_WIN_CLOSE_LIMIT 0xC7 /* instead of 0x5F - eric */
-
-#define RT_NTSCM_VS_FIELD_BLANK_START 0x206
-
-#define RT_NTSCM_HS_PLL_SGAIN 0x5
-#define RT_NTSCM_HS_PLL_FGAIN 0x7
-
-#define RT_NTSCM_H_OUT_WIND_WIDTH 0x2F4
-#define RT_NTSCM_V_OUT_WIND_HEIGHT 0xF0
-
-#define TV 0x1
-#define LINEIN 0x2
-#define MUTE 0x3
-
-#define DEC_COMPOSITE 0
-#define DEC_SVIDEO 1
-#define DEC_TUNER 2
-
-#define DEC_NTSC 0
-#define DEC_PAL 1
-#define DEC_SECAM 2
-#define DEC_NTSC_J 8
-
-#define DEC_SMOOTH 0
-#define DEC_SHARP 1
-
-/* RT Register Field Defaults: */
-#define fld_tmpReg1_def (unsigned long) 0x00000000
-#define fld_tmpReg2_def (unsigned long) 0x00000001
-#define fld_tmpReg3_def (unsigned long) 0x00000002
-
-#define fld_LP_CONTRAST_def (unsigned long) 0x0000006e
-#define fld_LP_BRIGHTNESS_def (unsigned long) 0x00003ff0
-#define fld_CP_HUE_CNTL_def (unsigned long) 0x00000000
-#define fld_LUMA_FILTER_def (unsigned long) 0x00000001
-#define fld_H_SCALE_RATIO_def (unsigned long) 0x00010000
-#define fld_H_SHARPNESS_def (unsigned long) 0x00000000
-
-#define fld_V_SCALE_RATIO_def (unsigned long) 0x00000800
-#define fld_V_DEINTERLACE_ON_def (unsigned long) 0x00000001
-#define fld_V_BYPSS_def (unsigned long) 0x00000000
-#define fld_V_DITHER_ON_def (unsigned long) 0x00000001
-#define fld_EVENF_OFFSET_def (unsigned long) 0x00000000
-#define fld_ODDF_OFFSET_def (unsigned long) 0x00000000
-
-#define fld_INTERLACE_DETECTED_def (unsigned long) 0x00000000
-
-#define fld_VS_LINE_COUNT_def (unsigned long) 0x00000000
-#define fld_VS_DETECTED_LINES_def (unsigned long) 0x00000000
-#define fld_VS_ITU656_VB_def (unsigned long) 0x00000000
-
-#define fld_VBI_CC_DATA_def (unsigned long) 0x00000000
-#define fld_VBI_CC_WT_def (unsigned long) 0x00000000
-#define fld_VBI_CC_WT_ACK_def (unsigned long) 0x00000000
-#define fld_VBI_CC_HOLD_def (unsigned long) 0x00000000
-#define fld_VBI_DECODE_EN_def (unsigned long) 0x00000000
-
-#define fld_VBI_CC_DTO_P_def (unsigned long) 0x00001802
-#define fld_VBI_20BIT_DTO_P_def (unsigned long) 0x0000155c
-
-#define fld_VBI_CC_LEVEL_def (unsigned long) 0x0000003f
-#define fld_VBI_20BIT_LEVEL_def (unsigned long) 0x00000059
-#define fld_VBI_CLK_RUNIN_GAIN_def (unsigned long) 0x0000010f
-
-#define fld_H_VBI_WIND_START_def (unsigned long) 0x00000041
-#define fld_H_VBI_WIND_END_def (unsigned long) 0x00000366
-
-#define fld_V_VBI_WIND_START_def (unsigned long) 0x0B /* instead of 0x0D - V.D. */
-#define fld_V_VBI_WIND_END_def (unsigned long) 0x24
-
-#define fld_VBI_20BIT_DATA0_def (unsigned long) 0x00000000
-#define fld_VBI_20BIT_DATA1_def (unsigned long) 0x00000000
-#define fld_VBI_20BIT_WT_def (unsigned long) 0x00000000
-#define fld_VBI_20BIT_WT_ACK_def (unsigned long) 0x00000000
-#define fld_VBI_20BIT_HOLD_def (unsigned long) 0x00000000
-
-#define fld_VBI_CAPTURE_ENABLE_def (unsigned long) 0x00000000
-
-#define fld_VBI_EDS_DATA_def (unsigned long) 0x00000000
-#define fld_VBI_EDS_WT_def (unsigned long) 0x00000000
-#define fld_VBI_EDS_WT_ACK_def (unsigned long) 0x00000000
-#define fld_VBI_EDS_HOLD_def (unsigned long) 0x00000000
-
-#define fld_VBI_SCALING_RATIO_def (unsigned long) 0x00010000
-#define fld_VBI_ALIGNER_ENABLE_def (unsigned long) 0x00000000
-
-#define fld_H_ACTIVE_START_def (unsigned long) 0x00000070
-#define fld_H_ACTIVE_END_def (unsigned long) 0x000002f0
-
-#define fld_V_ACTIVE_START_def (unsigned long) ((22-4)*2+1)
-#define fld_V_ACTIVE_END_def (unsigned long) ((22+240-4)*2+2)
-
-#define fld_CH_HEIGHT_def (unsigned long) 0x000000CD
-#define fld_CH_KILL_LEVEL_def (unsigned long) 0x000000C0
-#define fld_CH_AGC_ERROR_LIM_def (unsigned long) 0x00000002
-#define fld_CH_AGC_FILTER_EN_def (unsigned long) 0x00000000
-#define fld_CH_AGC_LOOP_SPEED_def (unsigned long) 0x00000000
-
-#define fld_HUE_ADJ_def (unsigned long) 0x00000000
-
-#define fld_STANDARD_SEL_def (unsigned long) 0x00000000
-#define fld_STANDARD_YC_def (unsigned long) 0x00000000
-
-#define fld_ADC_PDWN_def (unsigned long) 0x00000001
-#define fld_INPUT_SELECT_def (unsigned long) 0x00000000
-
-#define fld_ADC_PREFLO_def (unsigned long) 0x00000003
-#define fld_H_SYNC_PULSE_WIDTH_def (unsigned long) 0x00000000
-#define fld_HS_GENLOCKED_def (unsigned long) 0x00000000
-#define fld_HS_SYNC_IN_WIN_def (unsigned long) 0x00000000
-
-#define fld_VIN_ASYNC_RST_def (unsigned long) 0x00000001
-#define fld_DVS_ASYNC_RST_def (unsigned long) 0x00000001
-
-/* Vendor IDs: */
-#define fld_VIP_VENDOR_ID_def (unsigned long) 0x00001002
-#define fld_VIP_DEVICE_ID_def (unsigned long) 0x00004d54
-#define fld_VIP_REVISION_ID_def (unsigned long) 0x00000001
-
-/* AGC Delay Register */
-#define fld_BLACK_INT_START_def (unsigned long) 0x00000031
-#define fld_BLACK_INT_LENGTH_def (unsigned long) 0x0000000f
-
-#define fld_UV_INT_START_def (unsigned long) 0x0000003b
-#define fld_U_INT_LENGTH_def (unsigned long) 0x0000000f
-#define fld_V_INT_LENGTH_def (unsigned long) 0x0000000f
-#define fld_CRDR_ACTIVE_GAIN_def (unsigned long) 0x0000007a
-#define fld_CBDB_ACTIVE_GAIN_def (unsigned long) 0x000000ac
-
-#define fld_DVS_DIRECTION_def (unsigned long) 0x00000000
-#define fld_DVS_VBI_CARD8_SWAP_def (unsigned long) 0x00000000
-#define fld_DVS_CLK_SELECT_def (unsigned long) 0x00000000
-#define fld_CONTINUOUS_STREAM_def (unsigned long) 0x00000000
-#define fld_DVSOUT_CLK_DRV_def (unsigned long) 0x00000001
-#define fld_DVSOUT_DATA_DRV_def (unsigned long) 0x00000001
-
-#define fld_COMB_CNTL0_def (unsigned long) 0x09438090
-#define fld_COMB_CNTL1_def (unsigned long) 0x00000010
-
-#define fld_COMB_CNTL2_def (unsigned long) 0x16161010
-#define fld_COMB_LENGTH_def (unsigned long) 0x0718038A
-
-#define fld_SYNCTIP_REF0_def (unsigned long) 0x00000037
-#define fld_SYNCTIP_REF1_def (unsigned long) 0x00000029
-#define fld_CLAMP_REF_def (unsigned long) 0x0000003B
-#define fld_AGC_PEAKWHITE_def (unsigned long) 0x000000FF
-#define fld_VBI_PEAKWHITE_def (unsigned long) 0x000000D2
-
-#define fld_WPA_THRESHOLD_def (unsigned long) 0x000003B0
-
-#define fld_WPA_TRIGGER_LO_def (unsigned long) 0x000000B4
-#define fld_WPA_TRIGGER_HIGH_def (unsigned long) 0x0000021C
-
-#define fld_LOCKOUT_START_def (unsigned long) 0x00000206
-#define fld_LOCKOUT_END_def (unsigned long) 0x00000021
-
-#define fld_CH_DTO_INC_def (unsigned long) 0x00400000
-#define fld_PLL_SGAIN_def (unsigned long) 0x00000001
-#define fld_PLL_FGAIN_def (unsigned long) 0x00000002
-
-#define fld_CR_BURST_GAIN_def (unsigned long) 0x0000007a
-#define fld_CB_BURST_GAIN_def (unsigned long) 0x000000ac
-
-#define fld_VERT_LOCKOUT_START_def (unsigned long) 0x00000207
-#define fld_VERT_LOCKOUT_END_def (unsigned long) 0x0000000E
-
-#define fld_H_IN_WIND_START_def (unsigned long) 0x00000070
-#define fld_V_IN_WIND_START_def (unsigned long) 0x00000027
-
-#define fld_H_OUT_WIND_WIDTH_def (unsigned long) 0x000002f4
-
-#define fld_V_OUT_WIND_WIDTH_def (unsigned long) 0x000000f0
-
-#define fld_HS_LINE_TOTAL_def (unsigned long) 0x0000038E
-
-#define fld_MIN_PULSE_WIDTH_def (unsigned long) 0x0000002F
-#define fld_MAX_PULSE_WIDTH_def (unsigned long) 0x00000046
-
-#define fld_WIN_CLOSE_LIMIT_def (unsigned long) 0x0000004D
-#define fld_WIN_OPEN_LIMIT_def (unsigned long) 0x000001B7
-
-#define fld_VSYNC_INT_TRIGGER_def (unsigned long) 0x000002AA
-
-#define fld_VSYNC_INT_HOLD_def (unsigned long) 0x0000001D
-
-#define fld_VIN_M0_def (unsigned long) 0x00000039
-#define fld_VIN_N0_def (unsigned long) 0x0000014c
-#define fld_MNFLIP_EN_def (unsigned long) 0x00000000
-#define fld_VIN_P_def (unsigned long) 0x00000006
-#define fld_REG_CLK_SEL_def (unsigned long) 0x00000000
-
-#define fld_VIN_M1_def (unsigned long) 0x00000000
-#define fld_VIN_N1_def (unsigned long) 0x00000000
-#define fld_VIN_DRIVER_SEL_def (unsigned long) 0x00000000
-#define fld_VIN_MNFLIP_REQ_def (unsigned long) 0x00000000
-#define fld_VIN_MNFLIP_DONE_def (unsigned long) 0x00000000
-#define fld_TV_LOCK_TO_VIN_def (unsigned long) 0x00000000
-#define fld_TV_P_FOR_WINCLK_def (unsigned long) 0x00000004
-
-#define fld_VINRST_def (unsigned long) 0x00000001
-#define fld_VIN_CLK_SEL_def (unsigned long) 0x00000000
-
-#define fld_VS_FIELD_BLANK_START_def (unsigned long) 0x00000206
-
-#define fld_VS_FIELD_BLANK_END_def (unsigned long) 0x0000000A
-
-/*#define fld_VS_FIELD_IDLOCATION_def (unsigned long) 0x00000105 */
-#define fld_VS_FIELD_IDLOCATION_def (unsigned long) 0x00000001
-#define fld_VS_FRAME_TOTAL_def (unsigned long) 0x00000217
-
-#define fld_SYNC_TIP_START_def (unsigned long) 0x00000372
-#define fld_SYNC_TIP_LENGTH_def (unsigned long) 0x0000000F
-
-#define fld_GAIN_FORCE_DATA_def (unsigned long) 0x00000000
-#define fld_GAIN_FORCE_EN_def (unsigned long) 0x00000000
-#define fld_I_CLAMP_SEL_def (unsigned long) 0x00000003
-#define fld_I_AGC_SEL_def (unsigned long) 0x00000001
-#define fld_EXT_CLAMP_CAP_def (unsigned long) 0x00000001
-#define fld_EXT_AGC_CAP_def (unsigned long) 0x00000001
-#define fld_DECI_DITHER_EN_def (unsigned long) 0x00000001
-#define fld_ADC_PREFHI_def (unsigned long) 0x00000000
-#define fld_ADC_CH_GAIN_SEL_def (unsigned long) 0x00000001
-
-#define fld_HS_PLL_SGAIN_def (unsigned long) 0x00000003
-
-#define fld_NREn_def (unsigned long) 0x00000000
-#define fld_NRGainCntl_def (unsigned long) 0x00000000
-#define fld_NRBWTresh_def (unsigned long) 0x00000000
-#define fld_NRGCTresh_def (unsigned long) 0x00000000
-#define fld_NRCoefDespeclMode_def (unsigned long) 0x00000000
-
-#define fld_GPIO_5_OE_def (unsigned long) 0x00000000
-#define fld_GPIO_6_OE_def (unsigned long) 0x00000000
-
-#define fld_GPIO_5_OUT_def (unsigned long) 0x00000000
-#define fld_GPIO_6_OUT_def (unsigned long) 0x00000000
-/* End of field default values. */
-
-#endif /* _RADEON_H */
-
diff --git a/BaS_gcc/include/radeonfb.h b/BaS_gcc/include/radeonfb.h
deleted file mode 100644
index 86269ea..0000000
--- a/BaS_gcc/include/radeonfb.h
+++ /dev/null
@@ -1,676 +0,0 @@
-#ifndef __RADEONFB_H__
-#define __RADEONFB_H__
-
-#include
-#include "pci.h"
-#include "mod_devicetable.h"
-#include "pci_ids.h"
-#include "fb.h"
-#include "i2c.h"
-#include "i2c-algo-bit.h"
-#include "util.h" /* for swpX() */
-#include "wait.h"
-#include "video.h"
-
-// #define RADEON_TILING
-
-//#include "radeon_theatre.h"
-
-#include "radeon_reg.h"
-
-/* Buffer are aligned on 4096 byte boundaries */
-#define RADEON_BUFFER_ALIGN 0x00000fff
-
-#define RADEON_IDLE_RETRY 16 /* Fall out of idle loops after this count */
-#define RADEON_TIMEOUT 2000000 /* Fall out of wait loops after this count */
-#define RADEON_MMIOSIZE 0x80000
-
-#define RADEON_ALIGN(x,bytes) (((x) + ((bytes) - 1)) & ~((bytes) - 1))
-
-#define ATY_RADEON_LCD_ON 0x00000001
-#define ATY_RADEON_CRT_ON 0x00000002
-
-#define FBIO_RADEON_GET_MIRROR 0x80044003
-#define FBIO_RADEON_SET_MIRROR 0xC0044004
-
-/***************************************************************
- * Most of the definitions here are adapted right from XFree86 *
- ***************************************************************/
-
-/*
- * Chip families. Must fit in the low 16 bits of a int32_t word
- */
-enum radeon_family
-{
- CHIP_FAMILY_UNKNOW,
- CHIP_FAMILY_LEGACY,
- CHIP_FAMILY_RADEON,
- CHIP_FAMILY_RV100,
- CHIP_FAMILY_RS100, /* U1 (IGP320M) or A3 (IGP320)*/
- CHIP_FAMILY_RV200,
- CHIP_FAMILY_RS200, /* U2 (IGP330M/340M/350M) or A4 (IGP330/340/345/350), RS250 (IGP 7000) */
- CHIP_FAMILY_R200,
- CHIP_FAMILY_RV250,
- CHIP_FAMILY_RS300, /* Radeon 9000 IGP */
- CHIP_FAMILY_RV280,
- CHIP_FAMILY_R300,
- CHIP_FAMILY_R350,
- CHIP_FAMILY_RV350,
- CHIP_FAMILY_RV380, /* RV370/RV380/M22/M24 */
- CHIP_FAMILY_R420, /* R420/R423/M18 */
- CHIP_FAMILY_LAST,
-};
-
-#define IS_RV100_VARIANT(rinfo) (((rinfo)->family == CHIP_FAMILY_RV100) || \
- ((rinfo)->family == CHIP_FAMILY_RV200) || \
- ((rinfo)->family == CHIP_FAMILY_RS100) || \
- ((rinfo)->family == CHIP_FAMILY_RS200) || \
- ((rinfo)->family == CHIP_FAMILY_RV250) || \
- ((rinfo)->family == CHIP_FAMILY_RV280) || \
- ((rinfo)->family == CHIP_FAMILY_RS300))
-
-
-#define IS_R300_VARIANT(rinfo) (((rinfo)->family == CHIP_FAMILY_R300) || \
- ((rinfo)->family == CHIP_FAMILY_RV350) || \
- ((rinfo)->family == CHIP_FAMILY_R350) || \
- ((rinfo)->family == CHIP_FAMILY_RV380) || \
- ((rinfo)->family == CHIP_FAMILY_R420))
-
-/*
- * Chip flags
- */
-enum radeon_chip_flags
-{
- CHIP_FAMILY_MASK = 0x0000ffffUL,
- CHIP_FLAGS_MASK = 0xffff0000UL,
- CHIP_IS_MOBILITY = 0x00010000UL,
- CHIP_IS_IGP = 0x00020000UL,
- CHIP_HAS_CRTC2 = 0x00040000UL,
-};
-
-/*
- * Errata workarounds
- */
-enum radeon_errata
-{
- CHIP_ERRATA_R300_CG = 0x00000001,
- CHIP_ERRATA_PLL_DUMMYREADS = 0x00000002,
- CHIP_ERRATA_PLL_DELAY = 0x00000004,
-};
-
-
-/*
- * Monitor types
- */
-enum radeon_montype
-{
- MT_NONE = 0,
- MT_CRT, /* CRT */
- MT_LCD, /* LCD */
- MT_DFP, /* DVI */
- MT_CTV, /* composite TV */
- MT_STV /* S-Video out */
-};
-
-/*
- * DDC i2c ports
- */
-enum ddc_type
-{
- ddc_none,
- ddc_monid,
- ddc_dvi,
- ddc_vga,
- ddc_crt2,
-};
-
-/*
- * Connector types
- */
-enum conn_type
-{
- conn_none,
- conn_proprietary,
- conn_crt,
- conn_DVI_I,
- conn_DVI_D,
-};
-
-
-/*
- * PLL infos
- */
-struct pll_info
-{
- int32_t ppll_max;
- int32_t ppll_min;
- int32_t sclk, mclk;
- int32_t ref_div;
- int32_t ref_clk;
-};
-
-
-/*
- * This structure contains the various registers manipulated by this
- * driver for setting or restoring a mode. It's mostly copied from
- * XFree's RADEONSaveRec structure. A few chip settings might still be
- * tweaked without beeing reflected or saved in these registers though
- */
-struct radeon_regs
-{
- /* Common registers */
- uint32_t ovr_clr;
- uint32_t ovr_wid_left_right;
- uint32_t ovr_wid_top_bottom;
- uint32_t ov0_scale_cntl;
- uint32_t mpp_tb_config;
- uint32_t mpp_gp_config;
- uint32_t subpic_cntl;
- uint32_t viph_control;
- uint32_t i2c_cntl_1;
- uint32_t gen_int_cntl;
- uint32_t cap0_trig_cntl;
- uint32_t cap1_trig_cntl;
- uint32_t bus_cntl;
- uint32_t surface_cntl;
- uint32_t bios_5_scratch;
-
- /* Other registers to save for VT switches or driver load/unload */
- uint32_t dp_datatype;
- uint32_t rbbm_soft_reset;
- uint32_t clock_cntl_index;
- uint32_t amcgpio_en_reg;
- uint32_t amcgpio_mask;
-
- /* Surface/tiling registers */
- uint32_t surf_lower_bound[8];
- uint32_t surf_upper_bound[8];
- uint32_t surf_info[8];
-
- /* CRTC registers */
- uint32_t crtc_gen_cntl;
- uint32_t crtc_ext_cntl;
- uint32_t dac_cntl;
- uint32_t crtc_h_total_disp;
- uint32_t crtc_h_sync_strt_wid;
- uint32_t crtc_v_total_disp;
- uint32_t crtc_v_sync_strt_wid;
- uint32_t crtc_offset;
- uint32_t crtc_offset_cntl;
- uint32_t crtc_pitch;
- uint32_t disp_merge_cntl;
- uint32_t grph_buffer_cntl;
- uint32_t crtc_more_cntl;
-
- /* CRTC2 registers */
- uint32_t crtc2_gen_cntl;
- uint32_t dac2_cntl;
- uint32_t disp_output_cntl;
- uint32_t disp_hw_debug;
- uint32_t disp2_merge_cntl;
- uint32_t grph2_buffer_cntl;
- uint32_t crtc2_h_total_disp;
- uint32_t crtc2_h_sync_strt_wid;
- uint32_t crtc2_v_total_disp;
- uint32_t crtc2_v_sync_strt_wid;
- uint32_t crtc2_offset;
- uint32_t crtc2_offset_cntl;
- uint32_t crtc2_pitch;
-
- /* Flat panel regs */
- uint32_t fp_crtc_h_total_disp;
- uint32_t fp_crtc_v_total_disp;
- uint32_t fp_gen_cntl;
- uint32_t fp2_gen_cntl;
- uint32_t fp_h_sync_strt_wid;
- uint32_t fp2_h_sync_strt_wid;
- uint32_t fp_horz_stretch;
- uint32_t fp_panel_cntl;
- uint32_t fp_v_sync_strt_wid;
- uint32_t fp2_v_sync_strt_wid;
- uint32_t fp_vert_stretch;
- uint32_t lvds_gen_cntl;
- uint32_t lvds_pll_cntl;
- uint32_t tmds_crc;
- uint32_t tmds_transmitter_cntl;
-
- /* Computed values for PLL */
- uint32_t dot_clock_freq;
- uint32_t pll_output_freq;
- int32_t feedback_div;
- int32_t post_div;
-
- /* PLL registers */
- uint32_t ppll_div_3;
- uint32_t ppll_ref_div;
- uint32_t vclk_ecp_cntl;
- uint32_t clk_cntl_index;
- uint32_t htotal_cntl;
-
- /* Computed values for PLL2 */
- uint32_t dot_clock_freq_2;
- uint32_t pll_output_freq_2;
- int32_t feedback_div_2;
- int32_t post_div_2;
-
- /* PLL2 registers */
- uint32_t p2pll_ref_div;
- uint32_t p2pll_div_0;
- uint32_t htotal_cntl2;
-};
-
-struct panel_info
-{
- int32_t xres, yres;
- int32_t valid;
- int32_t clock;
- int32_t hOver_plus, hSync_width, hblank;
- int32_t vOver_plus, vSync_width, vblank;
- int32_t hAct_high, vAct_high, int32_terlaced;
- int32_t pwr_delay;
- int32_t use_bios_dividers;
- int32_t ref_divider;
- int32_t post_divider;
- int32_t fbk_divider;
-};
-
-struct radeonfb_info;
-
-#ifdef CONFIG_FB_RADEON_I2C
-struct radeon_i2c_chan
-{
- struct radeonfb_info *rinfo;
- uint32_t ddc_reg;
- struct i2c_adapter adapter;
- struct i2c_algo_bit_data algo;
-};
-#endif
-
-enum radeon_pm_mode
-{
- radeon_pm_none = 0, /* Nothing supported */
- radeon_pm_d2 = 0x00000001, /* Can do D2 state */
- radeon_pm_off = 0x00000002, /* Can resume from D3 cold */
-};
-
-typedef struct
-{
- uint8_t table_revision;
- uint8_t table_size;
- uint8_t tuner_type;
- uint8_t audio_chip;
- uint8_t product_id;
- uint8_t tuner_voltage_teletext_fm;
- uint8_t i2s_config; /* configuration of the sound chip */
- uint8_t video_decoder_type;
- uint8_t video_decoder_host_config;
- uint8_t input[5];
-} _MM_TABLE;
-
-struct radeonfb_info
-{
- int32_t handle; /* PCI BIOS, must be 1st place */
- int32_t big_endian; /* PCI BIOS */
-
- uint32_t cursor_x;
- uint32_t cursor_y;
- int32_t cursor_show;
- uint32_t cursor_start;
- uint32_t cursor_end;
- int32_t cursor_fg;
- int32_t cursor_bg;
-
- int32_t fifo_slots; /* Free slots in the FIFO (64 max) */
-
- /* Computed values for Radeon */
- uint32_t dp_gui_master_cntl_clip;
- uint32_t trans_color;
-
- /* Saved values for ScreenToScreenCopy */
- int32_t xdir;
- int32_t ydir;
-
- /* ScanlineScreenToScreenColorExpand support */
- int32_t scanline_h;
- int32_t scanline_words;
- int32_t scanline_bpp; /* Only used for ImageWrite */
-
- /* Saved values for DashedTwoPoint32_tLine */
- int32_t dashLen;
- uint32_t dashPattern;
- int32_t dash_fg;
- int32_t dash_bg;
-
- struct fb_info *info;
-
- struct radeon_regs state;
- struct radeon_regs init_state;
-
- uint8_t name[50];
-
- uint32_t io_base_phys;
- uint32_t mmio_base_phys;
- uint32_t fb_base_phys;
-
- void *io_base;
- void *mmio_base;
- void *fb_base;
-
- uint32_t fb_local_base;
- uint32_t fb_offset;
-
- uint32_t bios_seg_phys;
- void *bios_seg;
- int32_t fp_bios_start;
-
- struct
- {
- uint8_t red;
- uint8_t green;
- uint8_t blue;
- uint8_t pad;
- } palette[256];
-
- int32_t chipset;
- uint8_t family;
- uint8_t rev;
- int32_t errata;
- uint32_t video_ram;
- uint32_t mapped_vram;
- int32_t vram_width;
- int32_t vram_ddr;
-
- int32_t pitch, bpp, depth;
-
- int32_t has_CRTC2;
- int32_t is_mobility;
- int32_t is_IGP;
- int32_t reversed_DAC;
- int32_t reversed_TMDS;
- struct panel_info panel_info;
- int32_t mon1_type;
- uint8_t *mon1_EDID;
- struct fb_videomode *mon1_modedb;
- int32_t mon1_dbsize;
- int32_t mon2_type;
- uint8_t *mon2_EDID;
-
- uint32_t dp_gui_master_cntl;
-
- struct pll_info bios_pll;
- struct pll_info pll;
-
- uint32_t save_regs[100];
- int32_t asleep;
- int32_t lock_blank;
- int32_t dynclk;
- int32_t no_schedule;
- enum radeon_pm_mode pm_mode;
-
- /* Timer used for delayed LVDS operations */
- int32_t lvds_timer;
- uint32_t pending_lvds_gen_cntl;
-
-#ifdef CONFIG_FB_RADEON_I2C
- struct radeon_i2c_chan i2c[4];
-#endif
-
- /* Texture */
-
- int32_t RenderInited3D;
- int32_t tilingEnabled;
- void *RenderTex;
- uint32_t RenderTexOffset;
- int32_t RenderTexSize;
- void (*RenderCallback)(struct radeonfb_info *rinfo);
- uint32_t RenderTimeout;
- uint32_t dst_pitch_offset;
-
-
-#ifdef _NOT_USED_
- /* Video & theatre */
-
- TheatrePtr theatre;
-
- int32_t MM_TABLE_valid;
- _MM_TABLE MM_TABLE;
-
- int32_t RageTheatreCrystal;
- int32_t RageTheatreTunerPort;
- int32_t RageTheatreCompositePort;
- int32_t RageTheatreSVideoPort;
- int32_t tunerType;
-
- int32_t videoStatus;
- int32_t encoding;
- int32_t overlay_deint32_terlacing_method;
- int32_t video_stream_active;
- int32_t capture_vbi_data;
- int32_t v;
- void *videoLinear;
- int32_t videoLinearSize;
- struct
- {
- uint32_t y,u,v;
- } videoLinearOffset;
-#endif /* _NOT_USED_ */
-
- int32_t dec_hue;
- int32_t dec_saturation;
- int32_t dec_contrast;
- int32_t dec_brightness;
-};
-
-#define PRIMARY_MONITOR(rinfo) (rinfo->mon1_type)
-
-/*
- * IO macros
- */
-
-/*
- * Note about this function: we have some rare cases where we must not schedule,
- * this typically happen with our special "wake up early" hook which allows us to
- * wake up the graphic chip (and thus get the console back) before everything else
- * on some machines that support that mecanism. At this point, intterrupts are off
- * and scheduling is not permitted
- */
-static inline void _radeon_msleep(struct radeonfb_info *rinfo, uint32_t ms)
-{
- wait_ms(ms);
-}
-
-#define radeon_msleep(ms) _radeon_msleep(rinfo,ms)
-
-extern void _OUTREGP(struct radeonfb_info *rinfo, uint32_t addr, uint32_t val, uint32_t mask);
-extern void radeon_pll_errata_after_index(struct radeonfb_info *rinfo);
-extern void radeon_pll_errata_after_data(struct radeonfb_info *rinfo);
-extern uint32_t __INPLL(struct radeonfb_info *rinfo, uint32_t addr);
-extern void __OUTPLL(struct radeonfb_info *rinfo, uint32_t index, uint32_t val);
-extern void __OUTPLLP(struct radeonfb_info *rinfo, uint32_t index, uint32_t val, uint32_t mask);
-
-#define INREG8(addr) *((volatile uint8_t *)(rinfo->mmio_base + addr))
-#define INREG16(addr) swpw(*(volatile uint16_t *)(rinfo->mmio_base + addr))
-#define INREG(addr) swpl(*(volatile uint32_t *)(rinfo->mmio_base + addr))
-#define OUTREG8(addr, val) (*((volatile uint8_t *)(rinfo->mmio_base + addr)) = val)
-#define OUTREG16(addr, val) (*((volatile uint16_t *)(rinfo->mmio_base + addr)) = swpw((uint32_t) val))
-#define OUTREG(addr, val) (*((volatile uint32_t *)(rinfo->mmio_base + addr)) = swpl((uint32_t) val))
-
-extern int32_t *tab_funcs_pci;
-#define BIOS_IN8(v) (* ((volatile uint8_t *) rinfo->bios_seg_phys + v))
-#define BIOS_IN16(v) (swpw(*(volatile uint16_t *) ((uint8_t *) rinfo->bios_seg_phys + v)))
-#define BIOS_IN32(v) (swpl(*(volatile uint32_t *) ((uint8_t *) rinfo->bios_seg_phys + v)))
-
-#define ADDRREG(addr) ((volatile uint32_t *)(rinfo->mmio_base + (addr)))
-#define OUTREGP(addr, val, mask) _OUTREGP(rinfo, addr, val, mask)
-#define INPLL(addr) __INPLL(rinfo, addr)
-#define OUTPLL(index, val) __OUTPLL(rinfo, index, val)
-#define OUTPLLP(index, val, mask) __OUTPLLP(rinfo, index, val, mask)
-
-/*
- * Inline utilities
- */
-
-static inline uint32_t radeon_get_dstbpp(uint16_t depth)
-{
- switch(depth)
- {
- case 8: return DST_8BPP;
- case 15: return DST_15BPP;
- case 16: return DST_16BPP;
- case 32: return DST_32BPP;
- default: return 0;
- }
-}
-
-/* I2C Functions */
-extern void radeon_create_i2c_busses(struct radeonfb_info *rinfo);
-extern void radeon_delete_i2c_busses(struct radeonfb_info *rinfo);
-extern int32_t radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int32_t conn, uint8_t **out_edid);
-
-/* PM Functions */
-/* extern int32_t radeonfb_pci_suspend(struct pci_dev *pdev, uint32_t state);
-extern int32_t radeonfb_pci_resume(struct pci_dev *pdev); */
-extern void radeonfb_pm_init(struct radeonfb_info *rinfo, int32_t dynclk);
-extern void radeonfb_pm_exit(struct radeonfb_info *rinfo);
-
-/* Monitor probe functions */
-extern void radeon_probe_screens(struct radeonfb_info *rinfo,
- const char *monitor_layout, int32_t ignore_edid);
-extern void radeon_check_modes(struct radeonfb_info *rinfo, struct mode_option *resolution);
-extern int32_t radeon_match_mode(struct radeonfb_info *rinfo,
- struct fb_var_screeninfo *dest,
- const struct fb_var_screeninfo *src);
-
-/* Video functions */
-void RADEONResetVideo(struct radeonfb_info *rinfo);
-int32_t RADEONVIP_read(struct radeonfb_info *rinfo, uint32_t address, uint32_t count, uint8_t *buffer);
-int32_t RADEONVIP_fifo_read(struct radeonfb_info *rinfo, uint32_t address, uint32_t count, uint8_t *buffer);
-int32_t RADEONVIP_write(struct radeonfb_info *rinfo, uint32_t address, uint32_t count, uint8_t *buffer);
-int32_t RADEONVIP_fifo_write(struct radeonfb_info *rinfo, uint32_t address, uint32_t count, uint8_t *buffer);
-void RADEONVIP_reset(struct radeonfb_info *rinfo);
-
-void RADEONInitVideo(struct radeonfb_info *rinfo);
-void RADEONShutdownVideo(struct radeonfb_info *rinfo);
-int32_t RADEONPutVideo(struct radeonfb_info *rinfo, int32_t src_x, int32_t src_y, int32_t src_w, int32_t src_h,
- int32_t drw_x, int32_t drw_y, int32_t drw_w, int32_t drw_h);
-void RADEONStopVideo(struct radeonfb_info *rinfo, int32_t cleanup);
-
-/* Theatre functions */
-//extern TheatrePtr DetectTheatre(struct radeonfb_info *rinfo);
-//extern void RT_SetTint32_t(TheatrePtr t, int32_t hue);
-//extern void RT_SetSaturation(TheatrePtr t, int32_t Saturation);
-//extern void RT_SetBrightness(TheatrePtr t, int32_t Brightness);
-//extern void RT_SetSharpness(TheatrePtr t, uint16_t wSharpness);
-//extern void RT_SetContrast(TheatrePtr t, int32_t Contrast);
-//extern void RT_SetInterlace(TheatrePtr t, uint8_t bInterlace);
-//extern void RT_SetStandard(TheatrePtr t, uint16_t wStandard);
-//extern void RT_SetCombFilter(TheatrePtr t, uint16_t wStandard, uint16_t wConnector);
-//extern void RT_SetOutputVideoSize(TheatrePtr t, uint16_t wHorzSize, uint16_t wVertSize, uint8_t fCC_On, uint8_t fVBICap_On);
-//extern void RT_SetConnector(TheatrePtr t, uint16_t wConnector, int32_t tunerFlag);
-//extern void InitTheatre(TheatrePtr t);
-//extern void ShutdownTheatre(TheatrePtr t);
-//extern void ResetTheatreRegsForNoTVout(TheatrePtr t);
-//extern void ResetTheatreRegsForTVout(TheatrePtr t);
-extern void RADEONVIP_reset(struct radeonfb_info *rinfo);
-
-/* Accel functions */
-
-extern void radeon_wait_for_fifo_function(struct radeonfb_info *rinfo, int32_t entries);
-extern void radeon_engine_flush(struct radeonfb_info *rinfo);
-extern void radeon_engine_reset(struct radeonfb_info *rinfo);
-extern void radeon_engine_restore(struct radeonfb_info *rinfo);
-extern void radeon_engine_init(struct radeonfb_info *rinfo);
-extern void radeon_wait_for_idle_mmio(struct radeonfb_info *rinfo);
-
-#define radeon_engine_idle() radeon_wait_for_idle_mmio(rinfo)
-
-#define radeon_wait_for_fifo(rinfo, entries) \
- do \
- { \
- if (rinfo->fifo_slots < entries) \
- radeon_wait_for_fifo_function(rinfo, entries); \
- rinfo->fifo_slots -= entries; \
- } while (0)
-
-static inline int32_t radeonfb_sync(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- radeon_engine_idle();
- return 0;
-}
-
-extern void radeon_restore_accel_state_mmio(struct fb_info *info);
-extern void radeon_setup_for_solid_fill(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask);
-extern void radeon_subsequent_solid_fill_rect_mmio(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h);
-extern void radeon_setup_for_solid_line_mmio(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask);
-extern void radeon_subsequent_solid_hor_vert_line_mmio(struct fb_info *info, int32_t x, int32_t y, int32_t len, int32_t dir);
-extern void radeon_subsequent_solid_two_point_line_mmio(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb,
- int32_t yb, int32_t flags);
-extern void radeon_setup_for_dashed_line_mmio(struct fb_info *info, int32_t fg, int32_t bg,
- int32_t rop, uint32_t planemask, int32_t length, unsigned char *pattern);
-extern void radeon_subsequent_dashed_two_point_line_mmio(struct fb_info *info,
- int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t flags, int32_t phase);
-extern void radeon_setup_for_screen_to_screen_copy_mmio(struct fb_info *info,
- int32_t xdir, int32_t ydir, int32_t rop, uint32_t planemask, int32_t trans_color);
-extern void radeon_subsequent_screen_to_screen_copy_mmio(struct fb_info *info,
- int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h);
-extern void radeon_screen_to_screen_copy_mmio(struct fb_info *info,
- int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h, int32_t rop);
-extern void radeon_setup_for_mono_8x8_pattern_fill_mmio(struct fb_info *info,
- int32_t patternx, int32_t patterny, int32_t fg, int32_t bg, int32_t rop, uint32_t planemask);
-extern void radeon_subsequent_mono_8x8_pattern_fill_rect_mmio(struct fb_info *info,
- int32_t patternx, int32_t patterny, int32_t x, int32_t y, int32_t w, int32_t h);
-extern void radeon_setup_for_scanline_cpu_to_screen_color_expand_fill_mmio(struct fb_info *info,
- int32_t fg, int32_t bg, int32_t rop, uint32_t planemask);
-extern void radeon_subsequent_scanline_cpu_to_screen_color_expand_fill_mmio(struct fb_info *info,
- int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft);
-extern void radeon_subsequent_scanline_mmio(struct fb_info *info, uint32_t *buf);
-extern void radeon_setup_for_scanline_image_write_mmio(struct fb_info *info,
- int32_t rop, uint32_t planemask, int32_t trans_color, int32_t bpp);
-extern void radeon_subsequent_scanline_image_write_rect_mmio(struct fb_info *info,
- int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft);
-extern void radeon_set_clipping_rectangle_mmio(struct fb_info *info,
- int32_t xa, int32_t ya, int32_t xb, int32_t yb);
-extern void radeon_disable_clipping_mmio(struct fb_info *info);
-
-extern int32_t radeon_setup_for_cpu_to_screen_alpha_texture_mmio(struct fb_info *info,
- int32_t op, int32_t red, int32_t green, int32_t blue,
- int32_t alpha, int32_t maskFormat, int32_t dstFormat,
- uint8_t *alphaPtr, int32_t alphaPitch,
- int32_t width, int32_t height, int32_t flags);
-extern int32_t radeon_setup_for_cpu_to_screen_texture_mmio(struct fb_info *info, int32_t op,
- uint32_t srcFormat, uint32_t dstFormat,
- uint8_t *texPtr, int32_t texPitch,
- int32_t width, int32_t height, int32_t flags);
-extern void radeon_subsequent_cpu_to_screen_texture_mmio(struct fb_info *info,
- int32_t dstx, int32_t dsty,
- int32_t srcx, int32_t srcy,
- int32_t width, int32_t height);
-/* Cursor functions */
-extern void radeon_set_cursor_colors(struct fb_info *info, int32_t bg, int32_t fg);
-extern void radeon_set_cursor_position(struct fb_info *info, int32_t x, int32_t y);
-extern void radeon_load_cursor_image(struct fb_info *info, unsigned short *mask, unsigned short *data, int32_t zoom);
-extern void radeon_hide_cursor(struct fb_info *info);
-extern void radeon_show_cursor(struct fb_info *info);
-extern long radeon_cursor_init(struct fb_info *info);
-
-/* Other functions */
-extern int32_t radeon_screen_blank(struct radeonfb_info *rinfo, int32_t blank, int32_t mode_switch);
-extern void radeon_write_mode(struct radeonfb_info *rinfo, struct radeon_regs *mode, int32_t reg_only);
-int32_t radeonfb_setcolreg(uint32_t regno, uint32_t red, uint32_t green,
- uint32_t blue, uint32_t transp, struct fb_info *info);
-extern int32_t radeonfb_pci_register(int32_t handle, const struct pci_device_id *ent);
-extern void radeonfb_pci_unregister(void);
-
-/* global */
-extern const char monitor_layout[];
-extern int16_t default_dynclk;
-extern int16_t ignore_edid;
-extern int16_t mirror;
-extern int16_t virtual;
-extern int16_t force_measure_pll;
-extern int16_t zoom_mouse;
-
-extern struct pci_device_id radeonfb_pci_table[];
-
-#endif /* __RADEONFB_H__ */
diff --git a/BaS_gcc/include/s19reader.h b/BaS_gcc/include/s19reader.h
deleted file mode 100644
index c371144..0000000
--- a/BaS_gcc/include/s19reader.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * s19reader.h
- *
- * Created on: 17.11.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef _S19READER_H_
-#define _S19READER_H_
-
-typedef enum
-{
- OK, /* no error */
- FAIL, /* general error aka "I don't know what went wrong" */
- FILE_OPEN, /* file open failed */
- FILE_READ, /* file read failed */
- SREC_CORRUPT, /* file doesn't seem to contain valid S-records */
- MEMCPY_FAILED, /* could not copy buffer to destination */
- CODE_OVERLAPS, /* copying would overwrite ourself */
- VERIFY_FAILED, /* destination does not read as we've written to */
- ILLEGAL_SECTOR /* flash sector number invalid */
-} err_t;
-
-typedef err_t (*memcpy_callback_t)(uint8_t *dst, uint8_t *src, size_t length);
-
-extern void srec_execute(char *filename);
-extern err_t read_srecords(char *filename, void **start_address, uint32_t *actual_length, memcpy_callback_t callback);
-extern err_t srec_memcpy(uint8_t *dst, uint8_t *src, size_t n);
-
-#endif /* _S19READER_H_ */
diff --git a/BaS_gcc/include/screen.h b/BaS_gcc/include/screen.h
deleted file mode 100644
index 0b53e56..0000000
--- a/BaS_gcc/include/screen.h
+++ /dev/null
@@ -1,122 +0,0 @@
-/*
- * screen.h - low-level screen routines
- *
- * Copyright (c) 2001-2013 The EmuTOS development team
- *
- * Authors:
- * LVL Laurent Vogel
- * THH Thomas Huth
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-#ifndef SCREEN_H
-#define SCREEN_H
-
-#define ST_VRAM_SIZE 32000UL
-#define TT_VRAM_SIZE 153600UL
-#define FALCON_VRAM_SIZE 307200UL
-
-#define VIDEOBASE_ADDR_HI 0xffff8201L
-#define VIDEOBASE_ADDR_MID 0xffff8203L
-#define VIDEOBASE_ADDR_LOW 0xffff820dL
-
-#define SYNCMODE 0xffff820aL
-
-#define ST_SHIFTER 0xffff8260L
-#define TT_SHIFTER 0xffff8262L
-#define SPSHIFT 0xffff8266L
-
-#define TT_SHIFTER_BITMASK 0x970f /* valid bits in TT_SHIFTER */
-
-#define ST_PALETTE_REGS 0xffff8240L
-#define FALCON_PALETTE_REGS 0xffff9800L
-
-#define TT_PALETTE_BITMASK 0x0fff /* valid bits in TT_PALETTE_REGS */
-
-/* misc routines */
-int16_t check_moderez(int16_t moderez);
-void initialise_palette_registers(int16_t rez,int16_t mode);
-
-/* hardware dependant xbios routines */
-
-int16_t esetshift(int16_t mode);
-int16_t egetshift(void);
-int16_t esetbank(int16_t bank);
-int16_t esetcolor(int16_t index,int16_t color);
-void esetpalette(int16_t index,int16_t count,int16_t *rgb);
-void egetpalette(int16_t index,int16_t count,int16_t *rgb);
-int16_t esetgray(int16_t mode);
-int16_t esetsmear(int16_t mode);
-
-/* pallette color definitions */
-
-#define RGB_BLACK 0x0000 /* ST(e) palette */
-#define RGB_BLUE 0x000f
-#define RGB_GREEN 0x00f0
-#define RGB_CYAN 0x00ff
-#define RGB_RED 0x0f00
-#define RGB_MAGENTA 0x0f0f
-#define RGB_LTGRAY 0x0555
-#define RGB_GRAY 0x0333
-#define RGB_LTBLUE 0x033f
-#define RGB_LTGREEN 0x03f3
-#define RGB_LTCYAN 0x03ff
-#define RGB_LTRED 0x0f33
-#define RGB_LTMAGENTA 0x0f3f
-#define RGB_YELLOW 0x0ff0
-#define RGB_LTYELLOW 0x0ff3
-#define RGB_WHITE 0x0fff
-
-#define TTRGB_BLACK 0x0000 /* TT Palette */
-#define TTRGB_BLUE 0x000f
-#define TTRGB_GREEN 0x00f0
-#define TTRGB_CYAN 0x00ff
-#define TTRGB_RED 0x0f00
-#define TTRGB_MAGENTA 0x0f0f
-#define TTRGB_LTGRAY 0x0aaa
-#define TTRGB_GRAY 0x0666
-#define TTRGB_LTBLUE 0x099f
-#define TTRGB_LTGREEN 0x09f9
-#define TTRGB_LTCYAN 0x09ff
-#define TTRGB_LTRED 0x0f99
-#define TTRGB_LTMAGENTA 0x0f9f
-#define TTRGB_YELLOW 0x0ff0
-#define TTRGB_LTYELLOW 0x0ff9
-#define TTRGB_WHITE 0x0fff
-
-/* TT resolutions */
-#define TT_HIGH 6
-#define TT_MEDIUM 4
-#define TT_LOW 7
-
-/* ST(e) resolutions */
-#define ST_HIGH 2
-#define ST_MEDIUM 1
-#define ST_LOW 0
-
-/* monitor types (from VgetMonitor()) */
-#define MON_MONO 0 /* ST monochrome */
-#define MON_COLOR 1 /* ST colour */
-#define MON_VGA 2 /* VGA */
-#define MON_TV 3 /* TV via RF modulator */
-
-/* determine monitor type, ... */
-void screen_init(void);
-void set_rez_hacked(void);
-int rez_changeable(void);
-int16_t get_monitor_type(void);
-void screen_get_current_mode_info(uint16_t *planes, uint16_t *hz_rez, uint16_t *vt_rez);
-
-/* hardware independant xbios routines */
-
-int32_t physbase(void);
-int32_t logbase(void);
-int16_t getrez(void);
-void setscreen(int32_t logLoc, int32_t physLoc, int16_t rez, int16_t videlmode);
-void setpalette(int32_t palettePtr);
-int16_t setcolor(int16_t colorNum, int16_t color);
-void vsync(void);
-
-#endif /* SCREEN_H */
diff --git a/BaS_gcc/include/sd_card.h b/BaS_gcc/include/sd_card.h
deleted file mode 100644
index e8bba09..0000000
--- a/BaS_gcc/include/sd_card.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * sd_card.h
- *
- * Exported sd-card access routines for the FireBee BaS
- *
- * Created on: 19.11.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef _SD_CARD_H_
-#define _SD_CARD_H_
-
-#include
-#include
-
-extern void sd_card_init(void);
-
-/* MMC card type flags (MMC_GET_TYPE) */
-#define CT_MMC 0x01 /* MMC ver 3 */
-#define CT_SD1 0x02 /* SD ver 1 */
-#define CT_SD2 0x04 /* SD ver 2 */
-#define CT_SDC (CT_SD1|CT_SD2) /* SD */
-#define CT_BLOCK 0x08 /* Block addressing */
-
-#endif /* _SD_CARD_H_ */
diff --git a/BaS_gcc/include/setjmp.h b/BaS_gcc/include/setjmp.h
deleted file mode 100644
index 010591b..0000000
--- a/BaS_gcc/include/setjmp.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef _SETJMP_H_
-#define _SETJMP_H_
-
-#include "bas_types.h"
-
-typedef uint32_t jmp_buf[18];
-
-extern int setjmp(jmp_buf env);
-extern void longjmp(jmp_buf env, int val);
-
-#endif /* _SETJMP_H_ */
diff --git a/BaS_gcc/include/startcf.h b/BaS_gcc/include/startcf.h
deleted file mode 100644
index b8dc311..0000000
--- a/BaS_gcc/include/startcf.h
+++ /dev/null
@@ -1,31 +0,0 @@
-#ifndef _STARTCF_H_
-#define _STARTCF_H_
-
-/*
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#define cf_stack
-
-#define DIP_SWITCH (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define DIP_SWITCHa __MBAR + 0xA2C
-
-#define sca_page_ID 6
-
-#endif /* _STARTCF_H_ */
diff --git a/BaS_gcc/include/sysinit.h b/BaS_gcc/include/sysinit.h
deleted file mode 100644
index 2447f00..0000000
--- a/BaS_gcc/include/sysinit.h
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * File: sysinit.h
- * Purpose: Firebee Power-on Reset configuration
- *
- * Notes:
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef __SYSINIT_H__
-#define __SYSINIT_H__
-
-#include
-
-/* function(s) from init_fpga.c */
-extern bool init_fpga(void);
-extern void init_usb(void);
-
-/* fault_vectors */
-extern void setup_vectors(void);
-
-extern bool fpga_configured;
-
-#endif /* __SYSINIT_H__ */
-
-
diff --git a/BaS_gcc/include/tftp.h b/BaS_gcc/include/tftp.h
deleted file mode 100644
index a3f72d1..0000000
--- a/BaS_gcc/include/tftp.h
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * File: tftp.h
- * Purpose: Data definitions for TFTP
- *
- * Notes:
- */
-
-#ifndef _TFTP_H_
-#define _TFTP_H_
-
-#define TFTP_RRQ (1)
-#define TFTP_WRQ (2)
-#define TFTP_DATA (3)
-#define TFTP_ACK (4)
-#define TFTP_ERROR (5)
-
-#define TFTP_ERR_FNF 1
-#define TFTP_ERR_AV 2
-#define TFTP_ERR_DF 3
-#define TFTP_ERR_ILL 4
-#define TFTP_ERR_TID 5
-#define TFTP_FE 6
-#define TFTP_NSU 7
-#define TFTP_ERR_UD 0
-
-#define OCTET "octet"
-#define NETASCII "netascii"
-
-/* Protocol Header information */
-#define TFTP_HDR_OFFSET (ETH_HDR_LEN + IP_HDR_SIZE + UDP_HDR_SIZE)
-
-/* Timeout in seconds */
-#define TFTP_TIMEOUT 2
-
-/* Maximum TFTP Packet Size (payload only - no header) */
-#define TFTP_PKTSIZE 512
-
-/* Number of TFTP Data Buffers */
-#define NUM_TFTPBD 6
-
-
-/* Data Buffer Pointer Structure */
-typedef struct
-{
- uint8_t data[TFTP_PKTSIZE];
- uint16_t bytes;
-} DATA_BUF;
-
-/* TFTP RRQ/WRQ Packet */
-typedef struct
-{
- uint16_t opcode;
- char filename_mode[TFTP_PKTSIZE - 2];
-} RWRQ;
-
-/* TFTP DATA Packet */
-typedef struct
-{
- uint16_t opcode;
- uint16_t blocknum;
- uint8_t data[TFTP_PKTSIZE - 4];
-} DATA;
-
-/* TFTP Acknowledge Packet */
-typedef struct
-{
- uint16_t opcode;
- uint16_t blocknum;
-} ACK;
-
-/* TFTP Error Packet */
-typedef struct
-{
- uint16_t opcode;
- uint16_t code;
- char msg[TFTP_PKTSIZE - 4];
-} ERROR;
-
-/* TFTP Generic Packet */
-typedef struct
-{
- uint16_t opcode;
-} GEN;
-
-union TFTPpacket
-{
- RWRQ rwrq;
- DATA data;
- ACK ack;
- ERROR error;
- GEN generic;
-};
-
-/* TFTP Connection Status */
-typedef struct
-{
- /* Pointer to next character in buffer ring */
- uint8_t *next_char;
-
- /* Direction of current connection, read or write */
- uint8_t dir;
-
- /* Connection established flag */
- uint8_t open;
-
- /* Pointer to our Network InterFace */
- NIF *nif;
-
- /* File being transferred */
- char *file;
-
- /* Server IP address */
- IP_ADDR server_ip;
-
- /* Queue to hold the TFTP packets */
- QUEUE queue;
-
- /* Bytes received counter */
- uint32_t bytes_recv;
-
- /* Bytes sent counter */
- uint32_t bytes_sent;
-
- /* Bytes remaining in current Rx buffer */
- uint32_t rem_bytes;
-
- /* Server UDP port */
- uint16_t server_port;
-
- /* My UDP port */
- uint16_t my_port;
-
- /* Expected TFTP block number */
- uint16_t exp_blocknum;
-
- /* Keep track of the last packet acknowledged */
- uint16_t last_ack;
-
- /* Error Flag */
- uint8_t error;
-
-} TFTP_Connection;
-
-
-extern void tftp_handler(NIF *, NBUF *) ;
-extern int tftp_write (NIF *, char *, IP_ADDR_P, uint32_t, uint32_t);
-extern int tftp_read(NIF *, char *, IP_ADDR_P);
-extern void tftp_end(int);
-extern int tftp_in_char(void);
-
-
-#endif /* _TFTP_H_ */
diff --git a/BaS_gcc/include/udp.h b/BaS_gcc/include/udp.h
deleted file mode 100644
index de87dc3..0000000
--- a/BaS_gcc/include/udp.h
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * File: udp.h
- * Purpose: User Datagram Protocol, UDP, data definitions
- *
- * Notes:
- */
-
-#ifndef _UDP_H
-#define _UDP_H
-
-/********************************************************************/
-
-typedef struct
-{
- uint16_t src_port;
- uint16_t dest_port;
- uint16_t length;
- uint16_t chksum;
-} udp_frame_hdr;
-
-#define UDP_SOURCE(a) (a->src_port)
-#define UDP_DEST(a) (a->dest_port)
-#define UDP_LENGTH(a) (a->length)
-#define UDP_CHKSUM(a) (a->chksum)
-
-#define DEFAULT_UDP_PORT (0x4321)
-#define UDP_PORT_TELNET (23)
-#define UDP_PORT_FTP (21)
-#define UDP_PORT_TFTP (69)
-
-/* Protocol Header information */
-#define UDP_HDR_OFFSET (ETH_HDR_LEN + IP_HDR_SIZE)
-#define UDP_HDR_SIZE 8
-
-
-/********************************************************************/
-
-extern void udp_init(void);
-extern void udp_prime_port(uint16_t);
-extern uint16_t udp_obtain_free_port(void);
-extern void udp_bind_port( uint16_t, void (*)(NIF *,NBUF *));
-extern void udp_free_port(uint16_t);
-extern int udp_send(NIF *, uint8_t *, int, int, NBUF *);
-extern void udp_handler(NIF *, NBUF *);
-
-/********************************************************************/
-
-#endif /* _UDP_H */
diff --git a/BaS_gcc/include/usb.h b/BaS_gcc/include/usb.h
deleted file mode 100644
index 041376f..0000000
--- a/BaS_gcc/include/usb.h
+++ /dev/null
@@ -1,430 +0,0 @@
-/*
- * (C) Copyright 2001
- * Denis Peter, MPL AG Switzerland
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- * Note: Part of this code has been derived from linux
- *
- */
-#ifndef _USB_H_
-#define _USB_H_
-
-#include
-#include "driver_mem.h"
-#include "pci.h"
-#include "mod_devicetable.h"
-#include "pci_ids.h"
-#include "part.h"
-
-
-extern long *tab_funcs_pci;
-
-#define __u8 uint8_t
-#define __u16 uint16_t
-#define __u32 uint32_t
-//#define u8 uint8_t
-#define u16 uint16_t
-#define u32 uint32_t
-#define uint8_t uint8_t
-#define uint32_t uint32_t
-#define uint16_t uint16_t
-
-extern void kprint(const char *fmt, ...);
-extern int sprintD(char *s, const char *fmt, ...);
-
-#include "usb_defs.h"
-
-/* Everything is aribtrary */
-#define USB_ALTSETTINGALLOC 4
-#define USB_MAXALTSETTING 128 /* Hard limit */
-
-#define USB_MAX_BUS 3
-#define USB_MAX_DEVICE 16
-#define USB_MAXCONFIG 8
-#define USB_MAXINTERFACES 8
-#define USB_MAXENDPOINTS 16
-#define USB_MAXCHILDREN 8 /* This is arbitrary */
-#define USB_MAX_HUB 16
-
-#define USB_CNTL_TIMEOUT 100 /* 100 ms timeout */
-
-#define USB_BUFSIZ 512
-
-/* String descriptor */
-struct usb_string_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t wData[1];
-} __attribute__ ((packed));
-
-/* device request (setup) */
-struct devrequest
-{
- uint8_t requesttype;
- uint8_t request;
- uint16_t value;
- uint16_t index;
- uint16_t length;
-} __attribute__ ((packed));
-
-/* All standard descriptors have these 2 fields in common */
-struct usb_descriptor_header
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
-} __attribute__ ((packed));
-
-/* Device descriptor */
-struct usb_device_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t bcdUSB;
- uint8_t bDeviceClass;
- uint8_t bDeviceSubClass;
- uint8_t bDeviceProtocol;
- uint8_t bMaxPacketSize0;
- uint16_t idVendor;
- uint16_t idProduct;
- uint16_t bcdDevice;
- uint8_t iManufacturer;
- uint8_t iProduct;
- uint8_t iSerialNumber;
- uint8_t bNumConfigurations;
-} __attribute__ ((packed));
-
-/* Endpoint descriptor */
-struct usb_endpoint_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bEndpointAddress;
- uint8_t bmAttributes;
- uint16_t wMaxPacketSize;
- uint8_t bInterval;
- uint8_t bRefresh;
- uint8_t bSynchAddress;
-} __attribute__ ((packed)) __attribute__ ((aligned(2)));
-
-/* Interface descriptor */
-struct usb_interface_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bInterfaceNumber;
- uint8_t bAlternateSetting;
- uint8_t bNumEndpoints;
- uint8_t bInterfaceClass;
- uint8_t bInterfaceSubClass;
- uint8_t bInterfaceProtocol;
- uint8_t iInterface;
-
- uint8_t no_of_ep;
- uint8_t num_altsetting;
- uint8_t act_altsetting;
-
- struct usb_endpoint_descriptor ep_desc[USB_MAXENDPOINTS];
-} __attribute__ ((packed));
-
-
-/* Configuration descriptor information.. */
-struct usb_config_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint16_t wTotalLength;
- uint8_t bNumInterfaces;
- uint8_t bConfigurationValue;
- uint8_t iConfiguration;
- uint8_t bmAttributes;
- uint8_t MaxPower;
-
- uint8_t no_of_if; /* number of interfaces */
- struct usb_interface_descriptor if_desc[USB_MAXINTERFACES];
-} __attribute__ ((packed));
-
-enum
-{
- /* Maximum packet size; encoded as 0,1,2,3 = 8,16,32,64 */
- PACKET_SIZE_8 = 0,
- PACKET_SIZE_16 = 1,
- PACKET_SIZE_32 = 2,
- PACKET_SIZE_64 = 3,
-};
-
-struct usb_device
-{
- int devnum; /* Device number on USB bus */
- int speed; /* full/low/high */
- char mf[32]; /* manufacturer */
- char prod[32]; /* product */
- char serial[32]; /* serial number */
-
- /* Maximum packet size; one of: PACKET_SIZE_* */
- int maxpacketsize;
-
- /* one bit for each endpoint ([0] = IN, [1] = OUT) */
- unsigned int toggle[2];
-
- /* endpoint halts; one bit per endpoint # & direction;
- * [0] = IN, [1] = OUT
- */
- unsigned int halted[2];
- int epmaxpacketin[16]; /* INput endpoint specific maximums */
- int epmaxpacketout[16]; /* OUTput endpoint specific maximums */
-
- int configno; /* selected config number */
- struct usb_device_descriptor descriptor; /* Device Descriptor */
- struct usb_config_descriptor config; /* config descriptor */
-
- int have_langid; /* whether string_langid is valid yet */
- int string_langid; /* language ID for strings */
- int (*irq_handle)(struct usb_device *dev);
- uint32_t irq_status;
- int irq_act_len; /* transfered bytes */
- void *privptr;
-
- /*
- * Child devices - if this is a hub device
- * Each instance needs its own set of data structures.
- */
- uint32_t status;
- int act_len; /* transfered bytes */
- int maxchild; /* Number of ports if hub */
- int portnr;
- struct usb_device *parent;
- struct usb_device *children[USB_MAXCHILDREN];
- void *priv_hcd;
- int (*deregister)(struct usb_device *dev);
-
- struct usb_hub_device *hub;
- int usbnum;
-};
-
-typedef struct
-{
- long ident;
- union
- {
- long l;
- short i[2];
- char c[4];
- } v;
-} USB_COOKIE;
-
-/*
- * this is how the lowlevel part communicate with the outer world
- */
-
-extern int ohci_usb_lowlevel_init(int32_t handle, const struct pci_device_id *ent, void **priv);
-extern int ohci_usb_lowlevel_stop(void *priv);
-extern int ohci_submit_bulk_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len);
-extern int ohci_submit_control_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, struct devrequest *setup);
-extern int ohci_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, int interval);
-extern void ohci_usb_enable_interrupt(int enable);
-
-extern int ehci_usb_lowlevel_init(long handle, const struct pci_device_id *ent, void **priv);
-extern int ehci_usb_lowlevel_stop(void *priv);
-extern int ehci_submit_bulk_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len);
-extern int ehci_submit_control_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, struct devrequest *setup);
-extern int ehci_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, int interval);
-extern void ehci_usb_enable_interrupt(int enable);
-
-extern void usb_enable_interrupt(int enable);
-
-extern int usb_new_device(struct usb_device *dev);
-extern struct usb_device *usb_alloc_new_device(int bus_index, void *priv);
-extern void usb_disconnect(struct usb_device **pdev);
-
-#define USB_MAX_STOR_DEV 5
-
-extern block_dev_desc_t *usb_stor_get_dev(int index);
-extern int usb_stor_scan(void);
-extern int usb_stor_info(void);
-extern int usb_stor_register(struct usb_device *dev);
-extern int usb_stor_deregister(struct usb_device *dev);
-
-extern int drv_usb_kbd_init(void);
-extern int usb_kbd_register(struct usb_device *dev);
-extern int usb_kbd_deregister(struct usb_device *dev);
-
-extern int drv_usb_mouse_init(void);
-extern int usb_mouse_register(struct usb_device *dev);
-extern int usb_mouse_deregister(struct usb_device *dev);
-
-/* routines */
-extern int usb_init(int32_t handle, const struct pci_device_id *ent); /* initialize the USB Controller */
-extern int usb_stop(void); /* stop the USB Controller */
-
-extern int usb_set_protocol(struct usb_device *dev, int ifnum, int protocol);
-extern int usb_set_idle(struct usb_device *dev, int ifnum, int duration, int report_id);
-extern struct usb_device *usb_get_dev_index(int index, int bus);
-extern int usb_control_msg(struct usb_device *dev, unsigned int pipe, uint8_t request, uint8_t requesttype,
- uint16_t value, uint16_t index, void *data, uint16_t size, int timeout);
-extern int usb_bulk_msg(struct usb_device *dev, unsigned int pipe, void *data, int len, int *actual_length, int timeout);
-extern int usb_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, int interval);
-extern void usb_disable_asynch(int disable);
-extern int usb_maxpacket(struct usb_device *dev, uint32_t pipe);
-
-extern int usb_get_configuration_no(struct usb_device *dev, uint8_t *buffer, int cfgno);
-extern int usb_get_report(struct usb_device *dev, int ifnum, uint8_t type, uint8_t id, void *buf, int size);
-extern int usb_get_class_descriptor(struct usb_device *dev, int ifnum, uint8_t type, uint8_t id, void *buf, int size);
-extern int usb_clear_halt(struct usb_device *dev, int pipe);
-extern int usb_string(struct usb_device *dev, int index, char *buf, size_t size);
-extern int usb_set_interface(struct usb_device *dev, int interface, int alternate);
-
-/*
- * Calling this entity a "pipe" is glorifying it. A USB pipe
- * is something embarrassingly simple: it basically consists
- * of the following information:
- * - device number (7 bits)
- * - endpoint number (4 bits)
- * - current Data0/1 state (1 bit)
- * - direction (1 bit)
- * - speed (2 bits)
- * - max packet size (2 bits: 8, 16, 32 or 64)
- * - pipe type (2 bits: control, interrupt, bulk, isochronous)
- *
- * That's 18 bits. Really. Nothing more. And the USB people have
- * documented these eighteen bits as some kind of glorious
- * virtual data structure.
- *
- * Let's not fall in that trap. We'll just encode it as a simple
- * unsigned int. The encoding is:
- *
- * - max size: bits 0-1 (00 = 8, 01 = 16, 10 = 32, 11 = 64)
- * - direction: bit 7 (0 = Host-to-Device [Out],
- * (1 = Device-to-Host [In])
- * - device: bits 8-14
- * - endpoint: bits 15-18
- * - Data0/1: bit 19
- * - speed: bit 26 (0 = Full, 1 = Low Speed, 2 = High)
- * - pipe type: bits 30-31 (00 = isochronous, 01 = interrupt,
- * 10 = control, 11 = bulk)
- *
- * Why? Because it's arbitrary, and whatever encoding we select is really
- * up to us. This one happens to share a lot of bit positions with the UHCI
- * specification, so that much of the uhci driver can just mask the bits
- * appropriately.
- */
-
-/* Create various pipes... */
-#define create_pipe(dev, endpoint) \
- (((dev)->devnum << 8) | (endpoint << 15) | \
- ((dev)->speed << 26) | (dev)->maxpacketsize)
-#define default_pipe(dev) ((dev)->speed << 26)
-
-#define usb_sndctrlpipe(dev, endpoint) ((PIPE_CONTROL << 30) | \
- create_pipe(dev, endpoint))
-#define usb_rcvctrlpipe(dev, endpoint) ((PIPE_CONTROL << 30) | \
- create_pipe(dev, endpoint) | \
- USB_DIR_IN)
-#define usb_sndisocpipe(dev, endpoint) ((PIPE_ISOCHRONOUS << 30) | \
- create_pipe(dev, endpoint))
-#define usb_rcvisocpipe(dev, endpoint) ((PIPE_ISOCHRONOUS << 30) | \
- create_pipe(dev, endpoint) | \
- USB_DIR_IN)
-#define usb_sndbulkpipe(dev, endpoint) ((PIPE_BULK << 30) | \
- create_pipe(dev, endpoint))
-#define usb_rcvbulkpipe(dev, endpoint) ((PIPE_BULK << 30) | \
- create_pipe(dev, endpoint) | \
- USB_DIR_IN)
-#define usb_sndintpipe(dev, endpoint) ((PIPE_INTERRUPT << 30) | \
- create_pipe(dev, endpoint))
-#define usb_rcvintpipe(dev, endpoint) ((PIPE_INTERRUPT << 30) | \
- create_pipe(dev, endpoint) | \
- USB_DIR_IN)
-#define usb_snddefctrl(dev) ((PIPE_CONTROL << 30) | \
- default_pipe(dev))
-#define usb_rcvdefctrl(dev) ((PIPE_CONTROL << 30) | \
- default_pipe(dev) | \
- USB_DIR_IN)
-
-/* The D0/D1 toggle bits */
-#define usb_gettoggle(dev, ep, out) (((dev)->toggle[out] >> ep) & 1)
-#define usb_dotoggle(dev, ep, out) ((dev)->toggle[out] ^= (1 << ep))
-#define usb_settoggle(dev, ep, out, bit) ((dev)->toggle[out] = \
- ((dev)->toggle[out] & \
- ~(1 << ep)) | ((bit) << ep))
-
-/* Endpoint halt control/status */
-#define usb_endpoint_out(ep_dir) (((ep_dir >> 7) & 1) ^ 1)
-#define usb_endpoint_halt(dev, ep, out) ((dev)->halted[out] |= (1 << (ep)))
-#define usb_endpoint_running(dev, ep, out) ((dev)->halted[out] &= ~(1 << (ep)))
-#define usb_endpoint_halted(dev, ep, out) ((dev)->halted[out] & (1 << (ep)))
-
-#define usb_packetid(pipe) (((pipe) & USB_DIR_IN) ? USB_PID_IN : \
- USB_PID_OUT)
-
-#define usb_pipeout(pipe) ((((pipe) >> 7) & 1) ^ 1)
-#define usb_pipein(pipe) (((pipe) >> 7) & 1)
-#define usb_pipedevice(pipe) (((pipe) >> 8) & 0x7f)
-#define usb_pipe_endpdev(pipe) (((pipe) >> 8) & 0x7ff)
-#define usb_pipeendpoint(pipe) (((pipe) >> 15) & 0xf)
-#define usb_pipedata(pipe) (((pipe) >> 19) & 1)
-#define usb_pipespeed(pipe) (((pipe) >> 26) & 3)
-#define usb_pipeslow(pipe) (usb_pipespeed(pipe) == USB_SPEED_LOW)
-#define usb_pipetype(pipe) (((pipe) >> 30) & 3)
-#define usb_pipeisoc(pipe) (usb_pipetype((pipe)) == PIPE_ISOCHRONOUS)
-#define usb_pipeint(pipe) (usb_pipetype((pipe)) == PIPE_INTERRUPT)
-#define usb_pipecontrol(pipe) (usb_pipetype((pipe)) == PIPE_CONTROL)
-#define usb_pipebulk(pipe) (usb_pipetype((pipe)) == PIPE_BULK)
-
-
-/*************************************************************************
- * Hub Stuff
- */
-struct usb_port_status
-{
- uint16_t wPortStatus;
- uint16_t wPortChange;
-} __attribute__ ((packed));
-
-struct usb_hub_status
-{
- uint16_t wHubStatus;
- uint16_t wHubChange;
-} __attribute__ ((packed));
-
-
-/* Hub descriptor */
-struct usb_hub_descriptor
-{
- uint8_t bLength;
- uint8_t bDescriptorType;
- uint8_t bNbrPorts;
- uint16_t wHubCharacteristics;
- uint8_t bPwrOn2PwrGood;
- uint8_t bHubContrCurrent;
- uint8_t DeviceRemovable[(USB_MAXCHILDREN+1+7)/8];
- uint8_t PortPowerCtrlMask[(USB_MAXCHILDREN+1+7)/8];
- /* DeviceRemovable and PortPwrCtrlMask want to be variable-length
- bitmaps that hold max 255 entries. (bit0 is ignored) */
-} __attribute__ ((packed));
-
-
-struct usb_hub_device
-{
- struct usb_device *pusb_dev;
- struct usb_hub_descriptor desc;
-};
-
-#endif /*_USB_H_ */
diff --git a/BaS_gcc/include/usb_defs.h b/BaS_gcc/include/usb_defs.h
deleted file mode 100644
index bdeb9e5..0000000
--- a/BaS_gcc/include/usb_defs.h
+++ /dev/null
@@ -1,252 +0,0 @@
-/*
- * (C) Copyright 2001
- * Denis Peter, MPL AG Switzerland
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- * Note: Part of this code has been derived from linux
- *
- */
-#ifndef _USB_DEFS_H_
-#define _USB_DEFS_H_
-
-#define CONFIG_USB_INTERRUPT_POLLING
-/* USB constants */
-
-/* Device and/or Interface Class codes */
-#define USB_CLASS_PER_INTERFACE 0 /* for DeviceClass */
-#define USB_CLASS_AUDIO 1
-#define USB_CLASS_COMM 2
-#define USB_CLASS_HID 3
-#define USB_CLASS_PRINTER 7
-#define USB_CLASS_MASS_STORAGE 8
-#define USB_CLASS_HUB 9
-#define USB_CLASS_DATA 10
-#define USB_CLASS_VENDOR_SPEC 0xff
-
-/* some HID sub classes */
-#define USB_SUB_HID_NONE 0
-#define USB_SUB_HID_BOOT 1
-
-/* some UID Protocols */
-#define USB_PROT_HID_NONE 0
-#define USB_PROT_HID_KEYBOARD 1
-#define USB_PROT_HID_MOUSE 2
-
-
-/* Sub STORAGE Classes */
-#define US_SC_RBC 1 /* Typically, flash devices */
-#define US_SC_8020 2 /* CD-ROM */
-#define US_SC_QIC 3 /* QIC-157 Tapes */
-#define US_SC_UFI 4 /* Floppy */
-#define US_SC_8070 5 /* Removable media */
-#define US_SC_SCSI 6 /* Transparent */
-#define US_SC_MIN US_SC_RBC
-#define US_SC_MAX US_SC_SCSI
-
-/* STORAGE Protocols */
-#define US_PR_CB 1 /* Control/Bulk w/o interrupt */
-#define US_PR_CBI 0 /* Control/Bulk/Interrupt */
-#define US_PR_BULK 0x50 /* bulk only */
-
-/* USB types */
-#define USB_TYPE_STANDARD (0x00 << 5)
-#define USB_TYPE_CLASS (0x01 << 5)
-#define USB_TYPE_VENDOR (0x02 << 5)
-#define USB_TYPE_RESERVED (0x03 << 5)
-
-/* USB recipients */
-#define USB_RECIP_DEVICE 0x00
-#define USB_RECIP_INTERFACE 0x01
-#define USB_RECIP_ENDPOINT 0x02
-#define USB_RECIP_OTHER 0x03
-
-/* USB directions */
-#define USB_DIR_OUT 0
-#define USB_DIR_IN 0x80
-
-/* USB device speeds */
-#define USB_SPEED_FULL 0x0 /* 12Mbps */
-#define USB_SPEED_LOW 0x1 /* 1.5Mbps */
-#define USB_SPEED_HIGH 0x2 /* 480Mbps */
-#define USB_SPEED_RESERVED 0x3
-
-/* Descriptor types */
-#define USB_DT_DEVICE 0x01
-#define USB_DT_CONFIG 0x02
-#define USB_DT_STRING 0x03
-#define USB_DT_INTERFACE 0x04
-#define USB_DT_ENDPOINT 0x05
-
-#define USB_DT_HID (USB_TYPE_CLASS | 0x01)
-#define USB_DT_REPORT (USB_TYPE_CLASS | 0x02)
-#define USB_DT_PHYSICAL (USB_TYPE_CLASS | 0x03)
-#define USB_DT_HUB (USB_TYPE_CLASS | 0x09)
-
-/* Descriptor sizes per descriptor type */
-#define USB_DT_DEVICE_SIZE 18
-#define USB_DT_CONFIG_SIZE 9
-#define USB_DT_INTERFACE_SIZE 9
-#define USB_DT_ENDPOINT_SIZE 7
-#define USB_DT_ENDPOINT_AUDIO_SIZE 9 /* Audio extension */
-#define USB_DT_HUB_NONVAR_SIZE 7
-#define USB_DT_HID_SIZE 9
-
-/* Endpoints */
-#define USB_ENDPOINT_NUMBER_MASK 0x0f /* in bEndpointAddress */
-#define USB_ENDPOINT_DIR_MASK 0x80
-
-#define USB_ENDPOINT_XFERTYPE_MASK 0x03 /* in bmAttributes */
-#define USB_ENDPOINT_XFER_CONTROL 0
-#define USB_ENDPOINT_XFER_ISOC 1
-#define USB_ENDPOINT_XFER_BULK 2
-#define USB_ENDPOINT_XFER_INT 3
-
-/* USB Packet IDs (PIDs) */
-#define USB_PID_UNDEF_0 0xf0
-#define USB_PID_OUT 0xe1
-#define USB_PID_ACK 0xd2
-#define USB_PID_DATA0 0xc3
-#define USB_PID_UNDEF_4 0xb4
-#define USB_PID_SOF 0xa5
-#define USB_PID_UNDEF_6 0x96
-#define USB_PID_UNDEF_7 0x87
-#define USB_PID_UNDEF_8 0x78
-#define USB_PID_IN 0x69
-#define USB_PID_NAK 0x5a
-#define USB_PID_DATA1 0x4b
-#define USB_PID_PREAMBLE 0x3c
-#define USB_PID_SETUP 0x2d
-#define USB_PID_STALL 0x1e
-#define USB_PID_UNDEF_F 0x0f
-
-/* Standard requests */
-#define USB_REQ_GET_STATUS 0x00
-#define USB_REQ_CLEAR_FEATURE 0x01
-#define USB_REQ_SET_FEATURE 0x03
-#define USB_REQ_SET_ADDRESS 0x05
-#define USB_REQ_GET_DESCRIPTOR 0x06
-#define USB_REQ_SET_DESCRIPTOR 0x07
-#define USB_REQ_GET_CONFIGURATION 0x08
-#define USB_REQ_SET_CONFIGURATION 0x09
-#define USB_REQ_GET_INTERFACE 0x0A
-#define USB_REQ_SET_INTERFACE 0x0B
-#define USB_REQ_SYNCH_FRAME 0x0C
-
-/* HID requests */
-#define USB_REQ_GET_REPORT 0x01
-#define USB_REQ_GET_IDLE 0x02
-#define USB_REQ_GET_PROTOCOL 0x03
-#define USB_REQ_SET_REPORT 0x09
-#define USB_REQ_SET_IDLE 0x0A
-#define USB_REQ_SET_PROTOCOL 0x0B
-
-
-/* "pipe" definitions */
-
-#define PIPE_ISOCHRONOUS 0
-#define PIPE_INTERRUPT 1
-#define PIPE_CONTROL 2
-#define PIPE_BULK 3
-#define PIPE_DEVEP_MASK 0x0007ff00
-
-#define USB_ISOCHRONOUS 0
-#define USB_INTERRUPT 1
-#define USB_CONTROL 2
-#define USB_BULK 3
-
-/* USB-status codes: */
-#define USB_ST_ACTIVE 0x1 /* TD is active */
-#define USB_ST_STALLED 0x2 /* TD is stalled */
-#define USB_ST_BUF_ERR 0x4 /* buffer error */
-#define USB_ST_BABBLE_DET 0x8 /* Babble detected */
-#define USB_ST_NAK_REC 0x10 /* NAK Received*/
-#define USB_ST_CRC_ERR 0x20 /* CRC/timeout Error */
-#define USB_ST_BIT_ERR 0x40 /* Bitstuff error */
-#define USB_ST_NOT_PROC 0x80000000L /* Not yet processed */
-
-
-/*************************************************************************
- * Hub defines
- */
-
-/*
- * Hub request types
- */
-
-#define USB_RT_HUB (USB_TYPE_CLASS | USB_RECIP_DEVICE)
-#define USB_RT_PORT (USB_TYPE_CLASS | USB_RECIP_OTHER)
-
-/*
- * Hub Class feature numbers
- */
-#define C_HUB_LOCAL_POWER 0
-#define C_HUB_OVER_CURRENT 1
-
-/*
- * Port feature numbers
- */
-#define USB_PORT_FEAT_CONNECTION 0
-#define USB_PORT_FEAT_ENABLE 1
-#define USB_PORT_FEAT_SUSPEND 2
-#define USB_PORT_FEAT_OVER_CURRENT 3
-#define USB_PORT_FEAT_RESET 4
-#define USB_PORT_FEAT_POWER 8
-#define USB_PORT_FEAT_LOWSPEED 9
-#define USB_PORT_FEAT_HIGHSPEED 10
-#define USB_PORT_FEAT_C_CONNECTION 16
-#define USB_PORT_FEAT_C_ENABLE 17
-#define USB_PORT_FEAT_C_SUSPEND 18
-#define USB_PORT_FEAT_C_OVER_CURRENT 19
-#define USB_PORT_FEAT_C_RESET 20
-
-/* wPortStatus bits */
-#define USB_PORT_STAT_CONNECTION 0x0001
-#define USB_PORT_STAT_ENABLE 0x0002
-#define USB_PORT_STAT_SUSPEND 0x0004
-#define USB_PORT_STAT_OVERCURRENT 0x0008
-#define USB_PORT_STAT_RESET 0x0010
-#define USB_PORT_STAT_POWER 0x0100
-#define USB_PORT_STAT_LOW_SPEED 0x0200
-#define USB_PORT_STAT_HIGH_SPEED 0x0400 /* support for EHCI */
-#define USB_PORT_STAT_SPEED \
- (USB_PORT_STAT_LOW_SPEED | USB_PORT_STAT_HIGH_SPEED)
-
-/* wPortChange bits */
-#define USB_PORT_STAT_C_CONNECTION 0x0001
-#define USB_PORT_STAT_C_ENABLE 0x0002
-#define USB_PORT_STAT_C_SUSPEND 0x0004
-#define USB_PORT_STAT_C_OVERCURRENT 0x0008
-#define USB_PORT_STAT_C_RESET 0x0010
-
-/* wHubCharacteristics (masks) */
-#define HUB_CHAR_LPSM 0x0003
-#define HUB_CHAR_COMPOUND 0x0004
-#define HUB_CHAR_OCPM 0x0018
-
-/*
- *Hub Status & Hub Change bit masks
- */
-#define HUB_STATUS_LOCAL_POWER 0x0001
-#define HUB_STATUS_OVERCURRENT 0x0002
-
-#define HUB_CHANGE_LOCAL_POWER 0x0001
-#define HUB_CHANGE_OVERCURRENT 0x0002
-
-#endif /*_USB_DEFS_H_ */
diff --git a/BaS_gcc/include/usb_hub.h b/BaS_gcc/include/usb_hub.h
deleted file mode 100644
index f26a3f4..0000000
--- a/BaS_gcc/include/usb_hub.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef USB_HUB_H
-#define USB_HUB_H
-
-extern int bus_index;
-
-extern void usb_hub_reset(int bus_index);
-extern int usb_hub_probe(struct usb_device *dev, int ifnum);
-extern int hub_port_reset(struct usb_device *dev, int port, unsigned short *portstat);
-
-#endif // USB_HUB_H
diff --git a/BaS_gcc/include/user_io.h b/BaS_gcc/include/user_io.h
deleted file mode 100644
index cc3ba04..0000000
--- a/BaS_gcc/include/user_io.h
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
-* user_io.h
-*
-*/
-
-#ifndef _USER_IO_H_
-#define _USER_IO_H_
-
-#define UIO_STATUS 0x00
-#define UIO_BUT_SW 0x01
-
-// codes as used by minimig (amiga)
-#define UIO_JOYSTICK0 0x02
-#define UIO_JOYSTICK1 0x03
-#define UIO_MOUSE 0x04
-#define UIO_KEYBOARD 0x05
-#define UIO_KBD_OSD 0x06 // keycodes used by OSD only
-
-// codes as used by MiST (atari)
-#define UIO_IKBD_OUT 0x02
-#define UIO_IKBD_IN 0x03
-#define UIO_SERIAL_OUT 0x04
-#define UIO_SERIAL_IN 0x05
-
-#define JOY_RIGHT 0x01
-#define JOY_LEFT 0x02
-#define JOY_DOWN 0x04
-#define JOY_UP 0x08
-#define JOY_BTN1 0x10
-#define JOY_BTN2 0x20
-#define JOY_MOVE (JOY_RIGHT|JOY_LEFT|JOY_UP|JOY_DOWN)
-
-#define BUTTON1 0x01
-#define BUTTON2 0x02
-#define SWITCH1 0x04
-#define SWITCH2 0x08
-
-// core type value should be unlikely to be returned by broken cores
-#define CORE_TYPE_UNKNOWN 0x55
-#define CORE_TYPE_DUMB 0xa0
-#define CORE_TYPE_MINIMIG 0xa1
-#define CORE_TYPE_PACE 0xa2
-#define CORE_TYPE_MIST 0xa3
-
-void user_io_init();
-void user_io_detect_core_type();
-unsigned char user_io_core_type();
-void user_io_poll();
-int user_io_button_pressed();
-void user_io_osd_key_enable(char);
-
-// hooks from the usb layer
-void user_io_mouse(unsigned char b, char x, char y);
-void user_io_kbd(unsigned char m, unsigned char *k);
-
-#endif /* _USER_IO_H_ */
-
diff --git a/BaS_gcc/include/util.h b/BaS_gcc/include/util.h
deleted file mode 100644
index c31e698..0000000
--- a/BaS_gcc/include/util.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * util.h
- *
- * Byteswapping macros lend from EmuTOS sources
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 27.10.2013
- * Author: mfro
- */
-
-#ifndef _UTIL_H_
-#define _UTIL_H_
-
-#include
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-/*
- * uint16_t swpw(uint16_t val);
- * swap endianess of val, 16 bits only.
- */
-static inline uint16_t swpw(uint16_t w)
-{
- return (w << 8) | (w >> 8);
-}
-
-/*
- * uint32_t swpl(uint32_t val);
- * swap endianess of val, 32 bits only.
- * e.g. ABCD => DCBA
- */
-static inline uint32_t swpl(uint32_t l)
-{
- return ((l & 0xff000000) >> 24) | ((l & 0x00ff0000) >> 8) |
- ((l & 0x0000ff00) << 8) | (l << 24);
-}
-
-
-/*
- * WORD swpw2(ULONG val);
- * swap endianness of val, treated as two 16-bit words.
- * e.g. ABCD => BADC
- */
-
-#define swpw2(a) \
- __extension__ \
- ({unsigned long _tmp; \
- __asm__ __volatile__ \
- ("move.b (%1),%0\n\t" \
- "move.b 1(%1),(%1)\n\t" \
- "move.b %0,1(%1)\n\t" \
- "move.b 2(%1),%0\n\t" \
- "move.b 3(%1),2(%1)\n\t" \
- "move.b %0,3(%1)" \
- : "=d"(_tmp) /* outputs */ \
- : "a"(&a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- })
-
-/*
- * WORD set_sr(WORD new);
- * sets sr to the new value, and return the old sr value
- */
-
-#define set_sr(a) \
-__extension__ \
-({short _r, _a = (a); \
- __asm__ __volatile__ \
- ("move.w sr,%0\n\t" \
- "move.w %1,sr" \
- : "=&d"(_r) /* outputs */ \
- : "nd"(_a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-/*
- * WORD get_sr(void);
- * returns the current value of sr.
- */
-
-#define get_sr() \
-__extension__ \
-({short _r; \
- __asm__ volatile \
- ("move.w sr,%0" \
- : "=dm"(_r) /* outputs */ \
- : /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-
-/*
- * void regsafe_call(void *addr)
- * Saves all registers to the stack, calls the function
- * that addr points to, and restores the registers afterwards.
- */
-#define regsafe_call(addr) \
-__extension__ \
-({__asm__ volatile ("lea -60(sp),sp\n\t" \
- "movem.l d0-d7/a0-a6,(sp)"); \
- ((void (*) (void)) addr)(); \
- __asm__ volatile ("movem.l (sp),d0-d7/a0-a6\n\t" \
- "lea 60(sp),sp"); \
-})
-
-
-#endif /* UTIL_H_ */
diff --git a/BaS_gcc/include/version.h b/BaS_gcc/include/version.h
deleted file mode 100644
index 2131d59..0000000
--- a/BaS_gcc/include/version.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * version.h
- *
- * Created on: 21.10.2013
- * Author: Markus Fröschle
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- */
-
-#ifndef VERSION_H_
-#define VERSION_H_
-
-/*
- * increment version number for release
- */
-
-#define MAJOR_VERSION 0
-#define MINOR_VERSION 93
-
-
-#endif /* VERSION_H_ */
diff --git a/BaS_gcc/include/videl.h b/BaS_gcc/include/videl.h
deleted file mode 100644
index 51fce5d..0000000
--- a/BaS_gcc/include/videl.h
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * screen.h - low-level screen routines
- *
- * Copyright (c) 2013 The EmuTOS development team
- *
- * Authors:
- * PES Petr Stehlik
- * RFB Roger Burrows
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-#ifndef VIDEL_H
-#define VIDEL_H
-
-#define SPSHIFT 0xffff8266L
-
-#define FRGB_BLACK 0x00000000 /* Falcon palette */
-#define FRGB_BLUE 0x000000ff
-#define FRGB_GREEN 0x00ff0000
-#define FRGB_CYAN 0x00ff00ff
-#define FRGB_RED 0xff000000
-#define FRGB_MAGENTA 0xff0000ff
-#define FRGB_LTGRAY 0xbbbb00bb
-#define FRGB_GRAY 0x88880088
-#define FRGB_LTBLUE 0x000000aa
-#define FRGB_LTGREEN 0x00aa0000
-#define FRGB_LTCYAN 0x00aa00aa
-#define FRGB_LTRED 0xaa000000
-#define FRGB_LTMAGENTA 0xaa0000aa
-#define FRGB_YELLOW 0xffff0000
-#define FRGB_LTYELLOW 0xaaaa0000
-#define FRGB_WHITE 0xffff00ff
-
-/* bit settings for Falcon videomodes */
-#define VIDEL_VALID 0x01ff /* the only bits allowed in a videomode */
-#define VIDEL_VERTICAL 0x0100 /* if set, use interlace (TV), double line (VGA) */
-#define VIDEL_COMPAT 0x0080 /* ST-compatible if set */
-#define VIDEL_OVERSCAN 0x0040 /* overscan if set (not used with VGA) */
-#define VIDEL_PAL 0x0020 /* PAL if set; otherwise NTSC */
-#define VIDEL_VGA 0x0010 /* VGA if set; otherwise TV */
-#define VIDEL_80COL 0x0008 /* 80-column mode if set; otherwise 40 */
-#define VIDEL_BPPMASK 0x0007 /* mask for bits/pixel encoding */
-#define VIDEL_1BPP 0 /* 2 colours */
-#define VIDEL_2BPP 1 /* 4 colours */
-#define VIDEL_4BPP 2 /* 16 colours */
-#define VIDEL_8BPP 3 /* 256 colours */
-#define VIDEL_TRUECOLOR 4 /* 65536 colours */
-
-/* test for VDI support of videomode */
-#define VALID_VDI_BPP(mode) ((mode&VIDEL_BPPMASK)<=VIDEL_8BPP)
-
-/* selected Falcon videomodes */
-#define FALCON_ST_HIGH (VIDEL_COMPAT|VIDEL_VGA|VIDEL_80COL|VIDEL_1BPP)
-
-#define FALCON_DEFAULT_BOOT (VIDEL_VERTICAL|VIDEL_80COL|VIDEL_8BPP) /* 640x480x256 colours, TV, NTSC */
-
-#define FALCON_REZ 3 /* used as a Falcon indicator */
-
-typedef struct {
- int16_t vmode; /* video mode (-1 => end marker) */
- int16_t monitor; /* applicable monitors */
- uint16_t hht; /* H hold timer */
- uint16_t hbb; /* H border begin */
- uint16_t hbe; /* H border end */
- uint16_t hdb; /* H display begin */
- uint16_t hde; /* H display end */
- uint16_t hss; /* H SS */
- uint16_t vft; /* V freq timer */
- uint16_t vbb; /* V border begin */
- uint16_t vbe; /* V border end */
- uint16_t vdb; /* V display begin */
- uint16_t vde; /* V display end */
- uint16_t vss; /* V SS */
-} VMODE_ENTRY;
-
-extern void initialise_falcon_palette(int16_t mode);
-extern const VMODE_ENTRY *lookup_videl_mode(int16_t mode,int16_t monitor);
-
-/* Public XBIOS functions */
-extern int16_t vsetmode(int16_t mode);
-extern int16_t vmontype(void);
-extern int16_t vsetsync(int16_t external);
-extern int32_t vgetsize(int16_t mode);
-extern int16_t vsetrgb(int16_t index,int16_t count, uint32_t *rgb);
-extern int16_t vgetrgb(int16_t index,int16_t count, uint32_t *rgb);
-
-/* misc routines */
-extern int16_t get_videl_mode(void);
-extern int16_t vfixmode(int16_t mode);
-extern int16_t videl_check_moderez(int16_t moderez);
-extern uint32_t videl_vram_size(void);
-extern void videl_get_current_mode_info(uint16_t *planes, uint16_t *hz_rez, uint16_t *vt_rez);
-
-extern int16_t current_video_mode;
-
-#endif /* VIDEL_H */
diff --git a/BaS_gcc/include/video.h b/BaS_gcc/include/video.h
deleted file mode 100644
index e02f25a..0000000
--- a/BaS_gcc/include/video.h
+++ /dev/null
@@ -1,10 +0,0 @@
-#ifndef _VIDEO_H_
-#define _VIDEO_H_
-
-#include
-#include "bas_printf.h"
-#define CONFIG_FB_RADEON_I2C
-
-extern void video_init(void);
-
-#endif /* _VIDEO_H_ */
diff --git a/BaS_gcc/include/wait.h b/BaS_gcc/include/wait.h
deleted file mode 100644
index 20e9eea..0000000
--- a/BaS_gcc/include/wait.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * wait.h
- *
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef _WAIT_H_
-#define _WAIT_H_
-
-#include
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine"
-#endif /* MACHINE_FIREBEE */
-
-#include "MCF5475.h"
-
-typedef bool (*checker_func)(void);
-
-extern void wait(uint32_t);
-extern void wait_us(uint32_t); /* this is just an alias to the above */
-
-inline static void udelay(long us)
-{
- wait((uint32_t) us);
-}
-
-extern bool waitfor(uint32_t us, checker_func condition);
-extern uint32_t get_timer(void);
-extern void wait_ms(uint32_t ms);
-
-#define US_TO_TIMER(a) ((a) * SYSCLK) / 1000000UL
-#define TIMER_TO_US(a) ((a) * 1000000UL) / SYSCLK)
-
-#endif /* _WAIT_H_ */
diff --git a/BaS_gcc/include/x86emu.h b/BaS_gcc/include/x86emu.h
deleted file mode 100644
index 85fd77b..0000000
--- a/BaS_gcc/include/x86emu.h
+++ /dev/null
@@ -1,158 +0,0 @@
-/* $NetBSD: x86emu.h,v 1.1 2007/12/01 20:14:10 joerg Exp $ */
-
-/****************************************************************************
-*
-* Realmode X86 Emulator Library
-*
-* Copyright (C) 1996-1999 SciTech Software, Inc.
-* Copyright (C) David Mosberger-Tang
-* Copyright (C) 1999 Egbert Eich
-* Copyright (C) 2007 Joerg Sonnenberger
-*
-* ========================================================================
-*
-* Permission to use, copy, modify, distribute, and sell this software and
-* its documentation for any purpose is hereby granted without fee,
-* provided that the above copyright notice appear in all copies and that
-* both that copyright notice and this permission notice appear in
-* supporting documentation, and that the name of the authors not be used
-* in advertising or publicity pertaining to distribution of the software
-* without specific, written prior permission. The authors makes no
-* representations about the suitability of this software for any purpose.
-* It is provided "as is" without express or implied warranty.
-*
-* THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-* EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
-* USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-* PERFORMANCE OF THIS SOFTWARE.
-*
-****************************************************************************/
-
-#ifndef __X86EMU_X86EMU_H
-#define __X86EMU_X86EMU_H
-
-#include "bas_types.h"
-#include "setjmp.h"
-
-/*
- * General EAX, EBX, ECX, EDX type registers. Note that for
- * portability, and speed, the issue of byte swapping is not addressed
- * in the registers. All registers are stored in the default format
- * available on the host machine. The only critical issue is that the
- * registers should line up EXACTLY in the same manner as they do in
- * the 386. That is:
- *
- * EAX & 0xff === AL
- * EAX & 0xffff == AX
- *
- * etc. The result is that alot of the calculations can then be
- * done using the native instruction set fully.
- */
-
-
-struct X86EMU_register32 {
- uint32_t e_reg;
-};
-
-struct X86EMU_register16 {
- uint16_t filler0;
- uint16_t x_reg;
-};
-
-struct X86EMU_register8 {
- uint8_t filler0, filler1;
- uint8_t h_reg, l_reg;
-};
-
-
-union X86EMU_register {
- struct X86EMU_register32 I32_reg;
- struct X86EMU_register16 I16_reg;
- struct X86EMU_register8 I8_reg;
-};
-
-struct X86EMU_regs {
- uint16_t register_cs;
- uint16_t register_ds;
- uint16_t register_es;
- uint16_t register_fs;
- uint16_t register_gs;
- uint16_t register_ss;
- uint32_t register_flags;
- union X86EMU_register register_a;
- union X86EMU_register register_b;
- union X86EMU_register register_c;
- union X86EMU_register register_d;
-
- union X86EMU_register register_sp;
- union X86EMU_register register_bp;
- union X86EMU_register register_si;
- union X86EMU_register register_di;
- union X86EMU_register register_ip;
-
- /*
- * MODE contains information on:
- * REPE prefix 2 bits repe,repne
- * SEGMENT overrides 5 bits normal,DS,SS,CS,ES
- * Delayed flag set 3 bits (zero, signed, parity)
- * reserved 6 bits
- * interrupt # 8 bits instruction raised interrupt
- * BIOS video segregs 4 bits
- * Interrupt Pending 1 bits
- * Extern interrupt 1 bits
- * Halted 1 bits
- */
- uint32_t mode;
- volatile int intr; /* mask of pending interrupts */
- uint8_t intno;
- uint8_t __pad[3];
-};
-
-struct X86EMU
-{
- char *mem_base;
- size_t mem_size;
- void *sys_private;
- struct X86EMU_regs x86;
-
- jmp_buf exec_state;
-
- uint64_t cur_cycles;
-
- unsigned int cur_mod:2;
- unsigned int cur_rl:3;
- unsigned int cur_rh:3;
- uint32_t cur_offset;
-
- uint8_t (*emu_rdb)(struct X86EMU *, uint32_t addr);
- uint16_t (*emu_rdw)(struct X86EMU *, uint32_t addr);
- uint32_t (*emu_rdl)(struct X86EMU *, uint32_t addr);
- void (*emu_wrb)(struct X86EMU *, uint32_t addr,uint8_t val);
- void (*emu_wrw)(struct X86EMU *, uint32_t addr, uint16_t val);
- void (*emu_wrl)(struct X86EMU *, uint32_t addr, uint32_t val);
-
- uint8_t (*emu_inb)(struct X86EMU *, uint16_t addr);
- uint16_t (*emu_inw)(struct X86EMU *, uint16_t addr);
- uint32_t (*emu_inl)(struct X86EMU *, uint16_t addr);
- void (*emu_outb)(struct X86EMU *, uint16_t addr, uint8_t val);
- void (*emu_outw)(struct X86EMU *, uint16_t addr, uint16_t val);
- void (*emu_outl)(struct X86EMU *, uint16_t addr, uint32_t val);
-
- void (*_X86EMU_intrTab[256])(struct X86EMU *, int);
-};
-
-
-void X86EMU_init_default(struct X86EMU *);
-
-/* decode.c */
-
-void X86EMU_exec(struct X86EMU *);
-void X86EMU_exec_call(struct X86EMU *, uint16_t, uint16_t);
-void X86EMU_exec_intr(struct X86EMU *, uint8_t);
-void X86EMU_halt_sys(struct X86EMU *);
-
-
-#endif /* __X86EMU_X86EMU_H */
diff --git a/BaS_gcc/include/x86emu_regs.h b/BaS_gcc/include/x86emu_regs.h
deleted file mode 100644
index 6d6b871..0000000
--- a/BaS_gcc/include/x86emu_regs.h
+++ /dev/null
@@ -1,169 +0,0 @@
-/* $NetBSD: x86emu_regs.h,v 1.1 2007/12/01 20:14:10 joerg Exp $ */
-
-/****************************************************************************
-*
-* Realmode X86 Emulator Library
-*
-* Copyright (C) 1996-1999 SciTech Software, Inc.
-* Copyright (C) David Mosberger-Tang
-* Copyright (C) 1999 Egbert Eich
-* Copyright (C) 2007 Joerg Sonnenberger
-*
-* ========================================================================
-*
-* Permission to use, copy, modify, distribute, and sell this software and
-* its documentation for any purpose is hereby granted without fee,
-* provided that the above copyright notice appear in all copies and that
-* both that copyright notice and this permission notice appear in
-* supporting documentation, and that the name of the authors not be used
-* in advertising or publicity pertaining to distribution of the software
-* without specific, written prior permission. The authors makes no
-* representations about the suitability of this software for any purpose.
-* It is provided "as is" without express or implied warranty.
-*
-* THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-* EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
-* USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-* PERFORMANCE OF THIS SOFTWARE.
-*
-****************************************************************************/
-
-#ifndef __X86EMU_REGS_H
-#define __X86EMU_REGS_H
-
-/*---------------------- Macros and type definitions ----------------------*/
-
-/* 8 bit registers */
-#define R_AH register_a.I8_reg.h_reg
-#define R_AL register_a.I8_reg.l_reg
-#define R_BH register_b.I8_reg.h_reg
-#define R_BL register_b.I8_reg.l_reg
-#define R_CH register_c.I8_reg.h_reg
-#define R_CL register_c.I8_reg.l_reg
-#define R_DH register_d.I8_reg.h_reg
-#define R_DL register_d.I8_reg.l_reg
-
-/* 16 bit registers */
-#define R_AX register_a.I16_reg.x_reg
-#define R_BX register_b.I16_reg.x_reg
-#define R_CX register_c.I16_reg.x_reg
-#define R_DX register_d.I16_reg.x_reg
-
-/* 32 bit extended registers */
-#define R_EAX register_a.I32_reg.e_reg
-#define R_EBX register_b.I32_reg.e_reg
-#define R_ECX register_c.I32_reg.e_reg
-#define R_EDX register_d.I32_reg.e_reg
-
-/* special registers */
-#define R_SP register_sp.I16_reg.x_reg
-#define R_BP register_bp.I16_reg.x_reg
-#define R_SI register_si.I16_reg.x_reg
-#define R_DI register_di.I16_reg.x_reg
-#define R_IP register_ip.I16_reg.x_reg
-#define R_FLG register_flags
-
-/* special registers */
-#define R_ESP register_sp.I32_reg.e_reg
-#define R_EBP register_bp.I32_reg.e_reg
-#define R_ESI register_si.I32_reg.e_reg
-#define R_EDI register_di.I32_reg.e_reg
-#define R_EIP register_ip.I32_reg.e_reg
-#define R_EFLG register_flags
-
-/* segment registers */
-#define R_CS register_cs
-#define R_DS register_ds
-#define R_SS register_ss
-#define R_ES register_es
-#define R_FS register_fs
-#define R_GS register_gs
-
-/* flag conditions */
-#define FB_CF 0x0001 /* CARRY flag */
-#define FB_PF 0x0004 /* PARITY flag */
-#define FB_AF 0x0010 /* AUX flag */
-#define FB_ZF 0x0040 /* ZERO flag */
-#define FB_SF 0x0080 /* SIGN flag */
-#define FB_TF 0x0100 /* TRAP flag */
-#define FB_IF 0x0200 /* INTERRUPT ENABLE flag */
-#define FB_DF 0x0400 /* DIR flag */
-#define FB_OF 0x0800 /* OVERFLOW flag */
-
-/* 80286 and above always have bit#1 set */
-#define F_ALWAYS_ON (0x0002) /* flag bits always on */
-
-/*
- * Define a mask for only those flag bits we will ever pass back
- * (via PUSHF)
- */
-#define F_MSK (FB_CF|FB_PF|FB_AF|FB_ZF|FB_SF|FB_TF|FB_IF|FB_DF|FB_OF)
-
-/* following bits masked in to a 16bit quantity */
-
-#define F_CF 0x0001 /* CARRY flag */
-#define F_PF 0x0004 /* PARITY flag */
-#define F_AF 0x0010 /* AUX flag */
-#define F_ZF 0x0040 /* ZERO flag */
-#define F_SF 0x0080 /* SIGN flag */
-#define F_TF 0x0100 /* TRAP flag */
-#define F_IF 0x0200 /* INTERRUPT ENABLE flag */
-#define F_DF 0x0400 /* DIR flag */
-#define F_OF 0x0800 /* OVERFLOW flag */
-
-#define SET_FLAG(flag) (emu->x86.R_FLG |= (flag))
-#define CLEAR_FLAG(flag) (emu->x86.R_FLG &= ~(flag))
-#define ACCESS_FLAG(flag) (emu->x86.R_FLG & (flag))
-#define CLEARALL_FLAG(m) (emu->x86.R_FLG = 0)
-
-#define CONDITIONAL_SET_FLAG(COND,FLAG) \
- if (COND) SET_FLAG(FLAG); else CLEAR_FLAG(FLAG)
-
-#define F_PF_CALC 0x010000 /* PARITY flag has been calced */
-#define F_ZF_CALC 0x020000 /* ZERO flag has been calced */
-#define F_SF_CALC 0x040000 /* SIGN flag has been calced */
-
-#define F_ALL_CALC 0xff0000 /* All have been calced */
-
-/*
- * Emulator machine state.
- * Segment usage control.
- */
-#define SYSMODE_SEG_DS_SS 0x00000001
-#define SYSMODE_SEGOVR_CS 0x00000002
-#define SYSMODE_SEGOVR_DS 0x00000004
-#define SYSMODE_SEGOVR_ES 0x00000008
-#define SYSMODE_SEGOVR_FS 0x00000010
-#define SYSMODE_SEGOVR_GS 0x00000020
-#define SYSMODE_SEGOVR_SS 0x00000040
-#define SYSMODE_PREFIX_REPE 0x00000080
-#define SYSMODE_PREFIX_REPNE 0x00000100
-#define SYSMODE_PREFIX_DATA 0x00000200
-#define SYSMODE_PREFIX_ADDR 0x00000400
-#define SYSMODE_INTR_PENDING 0x10000000
-#define SYSMODE_EXTRN_INTR 0x20000000
-#define SYSMODE_HALTED 0x40000000
-
-#define SYSMODE_SEGMASK (SYSMODE_SEG_DS_SS | \
- SYSMODE_SEGOVR_CS | \
- SYSMODE_SEGOVR_DS | \
- SYSMODE_SEGOVR_ES | \
- SYSMODE_SEGOVR_FS | \
- SYSMODE_SEGOVR_GS | \
- SYSMODE_SEGOVR_SS)
-#define SYSMODE_CLRMASK (SYSMODE_SEG_DS_SS | \
- SYSMODE_SEGOVR_CS | \
- SYSMODE_SEGOVR_DS | \
- SYSMODE_SEGOVR_ES | \
- SYSMODE_SEGOVR_FS | \
- SYSMODE_SEGOVR_GS | \
- SYSMODE_SEGOVR_SS | \
- SYSMODE_PREFIX_DATA | \
- SYSMODE_PREFIX_ADDR)
-
-#define INTR_SYNCH 0x1
-
-#endif /* __X86EMU_REGS_H */
diff --git a/BaS_gcc/include/x86pcibios.h b/BaS_gcc/include/x86pcibios.h
deleted file mode 100644
index 945ee91..0000000
--- a/BaS_gcc/include/x86pcibios.h
+++ /dev/null
@@ -1,53 +0,0 @@
-#ifndef _PCI_BIOS_H_
-#define _PCI_BIOS_H_
-
-enum
-{
- PCI_BIOS_PRESENT = 0xB101,
- FIND_PCI_DEVICE = 0xB102,
- FIND_PCI_CLASS_CODE = 0xB103,
- GENERATE_SPECIAL_CYCLE = 0xB106,
- READ_CONFIG_BYTE = 0xB108,
- READ_CONFIG_WORD = 0xB109,
- READ_CONFIG_DWORD = 0xB10A,
- WRITE_CONFIG_BYTE = 0xB10B,
- WRITE_CONFIG_WORD = 0xB10C,
- WRITE_CONFIG_DWORD = 0xB10D,
- GET_IRQ_ROUTING_OPTIONS = 0xB10E,
- SET_PCI_IRQ = 0xB10F
-};
-
-enum
-{
- SUCCESSFUL = 0x00,
- FUNC_NOT_SUPPORTED = 0x81,
- BAD_VENDOR_ID = 0x83,
- DEVICE_NOT_FOUND = 0x86,
- BAD_REGISTER_NUMBER = 0x87,
- SET_FAILED = 0x88,
- BUFFER_TOO_SMALL = 0x89
-};
-
-extern int x86_pcibios_handler(struct X86EMU *emu);
-
-
-#define USE_SDRAM
-#define DIRECT_ACCESS
-
-#define MEM_WB(where, what) emu->emu_wrb(emu, where, what)
-#define MEM_WW(where, what) emu->emu_wrw(emu, where, what)
-#define MEM_WL(where, what) emu->emu_wrl(emu, where, what)
-
-#define MEM_RB(where) emu->emu_rdb(emu, where)
-#define MEM_RW(where) emu->emu_rdw(emu, where)
-#define MEM_RL(where) emu->emu_rdl(emu, where)
-
-#define PCI_VGA_RAM_IMAGE_START 0xC0000
-#define PCI_RAM_IMAGE_START 0xD0000
-#define SYS_BIOS 0xF0000
-#define SIZE_EMU 0x100000
-#define BIOS_MEM 0x100000UL
-
-
-#endif /* _PCI_BIOS_H_ */
-
diff --git a/BaS_gcc/include/xhdi_sd.h b/BaS_gcc/include/xhdi_sd.h
deleted file mode 100644
index e855ea6..0000000
--- a/BaS_gcc/include/xhdi_sd.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * xhdi_sd.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 01.05.2013
- * Copyright 2012 M. Fröschle
- */
-
-#ifndef _XHDI_SD_H_
-#define _XHDI_SD_H_
-
-/* XHDI function numbers */
-
-#define XHDI_VERSION 0
-#define XHDI_INQUIRE_TARGET 1
-#define XHDI_RESERVE 2
-#define XHDI_LOCK 3
-#define XHDI_STOP 4
-#define XHDI_EJECT 5
-#define XHDI_DRIVEMAP 6
-#define XHDI_INQUIRE_DEVICE 7
-#define XHDI_INQUIRE_DRIVER 8
-#define XHDI_NEW_COOKIE 9
-#define XHDI_READ_WRITE 10
-#define XHDI_INQUIRE_TARGET2 11
-#define XHDI_INQUIRE_DEVICE2 12
-#define XHDI_DRIVER_SPECIAL 13
-#define XHDI_GET_CAPACITY 14
-#define XHDI_MEDIUM_CHANGED 15
-#define XHDI_MINT_INFO 16
-#define XHDI_DOS_LIMITS 17
-#define XHDI_LAST_ACCESS 18
-#define XHDI_REACCESS 19
-
-/* XHDI error codes */
-
-#define E_OK 0 /* OK */
-#define ERROR -1 /* unspecified error */
-#define EDRVNR -2 /* drive not ready */
-#define EUNDEV -15 /* invalid device/target number */
-#define EINVFN -32 /* invalid function number */
-#define EACCDN -36 /* access denied (device currently reserved) */
-#define EDRIVE -46 /* BIOS device not served by driver */
-
-/* XHDI device capabilities */
-
-#define XH_TARGET_STOPPABLE (1 << 0)
-#define XH_TARGET_REMOVABLE (1 << 1)
-#define XH_TARGET_LOCKABLE (1 << 2)
-#define XH_TARGET_EJECTABLE (1 << 3)
-#define XH_TARGET_LOCKED (1 << 29)
-#define XH_TARGET_STOPPED (1 << 30)
-#define XH_TARGET_RESERVED (1 << 31)
-
-typedef struct _BPB
-{
- uint16_t recsiz; /* Bytes per sector */
- uint16_t clsiz; /* Sectors per cluster */
- uint16_t clsizb; /* Bytes per cluster */
- uint16_t rdlen; /* Directory length */
- uint16_t fsiz; /* Length of the FAT */
- uint16_t fatrec; /* Start of the 2nd FAT */
- uint16_t datrec; /* 1st free sector */
- uint16_t numcl; /* Total numbr of clusters */
- uint16_t bflags; /* Flags as bit-vector */
- /* Bit 0: 0 (12-Bit-FAT), 1 16-Bit-FAT */
- /* Bit 1: 0 (two FATs), 1 (one FAT) */
- /* only available since TOS 2.06 */
-} BPB;
-
-/* a riddle: how do you typedef a function pointer to a function that returns its own type? ;) */
-typedef void* (*xhdi_call_fun)(int xhdi_fun, ...);
-
-extern uint32_t xhdi_call(uint16_t *stack);
-
-extern xhdi_call_fun xhdi_sd_install(xhdi_call_fun old_vector) __attribute__((__interrupt__));
-
-extern uint16_t xhdi_version(void); /* XHDI 0 */
-
-extern uint32_t xhdi_inquire_target(uint16_t major, uint16_t minor, uint32_t *block_size, uint32_t *flags,
- char *product_name); /* XHDI 1 */
-
-extern uint32_t xhdi_reserve(uint16_t major, uint16_t minor, uint16_t do_reserve, uint16_t key); /* XHDI 2 */
-
-extern uint32_t xhdi_lock(uint16_t major, uint16_t minor, uint16_t do_lock, uint16_t key); /* XHDI 3 */
-
-extern uint32_t xhdi_stop(uint16_t major, uint16_t minor, uint16_t do_stop, uint16_t key); /* XHDI 4 */
-
-extern uint32_t xhdi_eject(uint16_t major, uint16_t minor, uint16_t do_eject, uint16_t key); /* XHDI 5 */
-
-extern uint32_t xhdi_drivemap(void); /* XHDI 6 */
-
-extern uint32_t xhdi_inquire_device(uint16_t bios_device, uint16_t *major, uint16_t *minor,
- uint32_t *start_sector, /* BPB */ void *bpb); /* XHDI 7 */
-
-extern uint32_t xhdi_inquire_driver(uint16_t bios_device, char *name, char *version,
- char *company, uint16_t *ahdi_version, uint16_t *maxIPL); /* XHDI 8 */
-
-extern uint32_t xhdi_new_cookie(uint32_t newcookie); /* XHDI 9 */
-
-extern uint32_t xhdi_read_write(uint16_t major, uint16_t minor, uint16_t rwflag,
- uint32_t recno, uint16_t count, void *buf); /* XHDI 10 */
-
-extern uint32_t xhdi_inquire_target2(uint16_t major, uint16_t minor, uint32_t *block_size,
- uint32_t *device_flags, char *product_name, uint16_t stringlen); /* XHDI 11 */
-
-extern uint32_t xhdi_inquire_device2(uint16_t bios_device, uint16_t *major, uint16_t *minor,
- uint32_t *start_sector, BPB *bpb, uint32_t *blocks, char *partid); /* XHDI 12 */
-
-extern uint32_t xhdi_driver_special(uint32_t key1, uint32_t key2, uint16_t subopcode, void *data); /* XHDI 13 */
-
-extern uint32_t xhdi_get_capacity(uint16_t major, uint16_t minor, uint32_t *blocks, uint32_t *bs); /* XHDI 14 */
-
-extern uint32_t xhdi_medium_changed(uint16_t major, uint16_t minor); /* XHDI 15 */
-
-extern uint32_t xhdi_mint_info(uint16_t opcode, void *data); /* XHDI 16 */
-
-extern uint32_t xhdi_dos_limits(uint16_t which, uint32_t limit); /* XHDI 17 */
-
-extern uint32_t xhdi_last_access(uint16_t major, uint16_t minor, uint32_t *ms); /* XHDI 18 */
-
-extern uint32_t xhdi_reaccess(uint16_t major, uint16_t minor); /* XHDI 19 */
-
-#endif /* _XHDI_SD_H_ */
diff --git a/BaS_gcc/kbd/ikbd.c b/BaS_gcc/kbd/ikbd.c
deleted file mode 100644
index 66bbc31..0000000
--- a/BaS_gcc/kbd/ikbd.c
+++ /dev/null
@@ -1,352 +0,0 @@
-/*
-
- https://www.kernel.org/doc/Documentation/input/atarikbd.txt
-
- ikbd ToDo:
-
- Feature Example using/needing it impl. tested
- ---------------------------------------------------------------------
- mouse y at bottom Bolo X X
- mouse button key events Goldrunner/A_008 X X
- joystick interrogation mode Xevious/A_004 X X
- Absolute mouse mode Backlash/A_008, A-Ball/A50
- disable mouse ? X
- disable joystick ? X
- Joysticks also generate Goldrunner X X
- mouse button events!
- Pause (cmd 0x13) Wings of Death/A_427
-
- */
-
-#include
-#include "bas_printf.h"
-#include "bas_string.h"
-
-#include "user_io.h"
-//#include "hardware.h"
-#include "ikbd.h"
-
-#include "debug.h"
-
-// atari ikbd stuff
-#define IKBD_STATE_JOYSTICK_EVENT_REPORTING 0x01
-#define IKBD_STATE_MOUSE_Y_BOTTOM 0x02
-#define IKBD_STATE_MOUSE_BUTTON_AS_KEY 0x04 // mouse buttons act like keys
-#define IKBD_STATE_MOUSE_DISABLED 0x08
-#define IKBD_STATE_MOUSE_ABSOLUTE 0x10
-
-#define IKBD_DEFAULT IKBD_STATE_JOYSTICK_EVENT_REPORTING
-
-#define QUEUE_LEN 16 // power of 2!
-static unsigned char tx_queue[QUEUE_LEN];
-static unsigned char wptr = 0, rptr = 0;
-
-// structure to keep track of ikbd state
-static struct
-{
- unsigned char cmd;
- unsigned char state;
- unsigned char expect;
-
- // joystick state
- unsigned char joystick[2];
-
- // mouse state
- unsigned short mouse_pos_x, mouse_pos_y;
- unsigned char mouse_buttons;
-} ikbd;
-
-// #define IKBD_DEBUG
-
-void ikbd_init()
-{
- // reset ikbd state
- memset(&ikbd, 0, sizeof(ikbd));
- ikbd.state = IKBD_DEFAULT;
-}
-
-static void enqueue(unsigned char b)
-{
- if (((wptr + 1)&(QUEUE_LEN-1)) == rptr)
- {
- xprintf("IKBD: !!!!!!! tx queue overflow !!!!!!!!!\n");
- return;
- }
-
- tx_queue[wptr] = b;
- wptr = (wptr + 1) & (QUEUE_LEN - 1);
-}
-
-// convert internal joystick format into atari ikbd format
-static unsigned char joystick_map2ikbd(unsigned in)
-{
- unsigned char out = 0;
-
- if (in & JOY_UP) out |= 0x01;
- if (in & JOY_DOWN) out |= 0x02;
- if (in & JOY_LEFT) out |= 0x04;
- if (in & JOY_RIGHT) out |= 0x08;
- if (in & JOY_BTN1) out |= 0x80;
-
- return out;
-}
-
-// process inout from atari core into ikbd
-void ikbd_handle_input(unsigned char cmd)
-{
- // expecting a second byte for command
- if (ikbd.expect)
- {
- ikbd.expect--;
-
- // last byte of command received
- if (!ikbd.expect)
- {
- switch(ikbd.cmd)
- {
- case 0x07: // set mouse button action
- xprintf("IKBD: mouse button action = %x\n", cmd);
-
- // bit 2: Mouse buttons act like keys (LEFT=0x74 & RIGHT=0x75)
- if(cmd & 0x04) ikbd.state |= IKBD_STATE_MOUSE_BUTTON_AS_KEY;
- else ikbd.state &= ~IKBD_STATE_MOUSE_BUTTON_AS_KEY;
-
- break;
-
- case 0x80: // ibkd reset
- // reply "everything is ok"
- enqueue(0xf0);
- break;
-
- default:
- break;
- }
- }
-
- return;
- }
-
- ikbd.cmd = cmd;
-
- switch(cmd)
- {
- case 0x07:
- xprintf("IKBD: Set mouse button action");
- ikbd.expect = 1;
- break;
-
- case 0x08:
- xprintf("IKBD: Set relative mouse positioning");
- ikbd.state &= ~IKBD_STATE_MOUSE_DISABLED;
- ikbd.state &= ~IKBD_STATE_MOUSE_ABSOLUTE;
- break;
-
- case 0x09:
- xprintf("IKBD: Set absolute mouse positioning");
- ikbd.state &= ~IKBD_STATE_MOUSE_DISABLED;
- ikbd.state |= IKBD_STATE_MOUSE_ABSOLUTE;
- ikbd.expect = 4;
- break;
-
- case 0x0b:
- xprintf("IKBD: Set Mouse threshold");
- ikbd.expect = 2;
- break;
-
- case 0x0f:
- xprintf("IKBD: Set Y at bottom");
- ikbd.state |= IKBD_STATE_MOUSE_Y_BOTTOM;
- break;
-
- case 0x10:
- xprintf("IKBD: Set Y at top");
- ikbd.state &= ~IKBD_STATE_MOUSE_Y_BOTTOM;
- break;
-
- case 0x12:
- xprintf("IKBD: Disable mouse");
- ikbd.state |= IKBD_STATE_MOUSE_DISABLED;
- break;
-
- case 0x14:
- xprintf("IKBD: Set Joystick event reporting");
- ikbd.state |= IKBD_STATE_JOYSTICK_EVENT_REPORTING;
- break;
-
- case 0x15:
- xprintf("IKBD: Set Joystick interrogation mode");
- ikbd.state &= ~IKBD_STATE_JOYSTICK_EVENT_REPORTING;
- break;
-
- case 0x16: // interrogate joystick
- // send reply
- enqueue(0xfd);
- enqueue(joystick_map2ikbd(ikbd.joystick[0]));
- enqueue(joystick_map2ikbd(ikbd.joystick[1]));
- break;
-
- case 0x1a:
- xprintf("IKBD: Disable joysticks");
- ikbd.state &= ~IKBD_STATE_JOYSTICK_EVENT_REPORTING;
- break;
-
- case 0x1c:
- xprintf("IKBD: Interrogate time of day");
-
- enqueue(0xfc);
- enqueue(0x13); // year bcd
- enqueue(0x03); // month bcd
- enqueue(0x07); // day bcd
- enqueue(0x20); // hour bcd
- enqueue(0x58); // minute bcd
- enqueue(0x00); // second bcd
- break;
-
-
- case 0x80:
- xprintf("IKBD: Reset");
- ikbd.expect = 1;
- ikbd.state = IKBD_DEFAULT;
- break;
-
- default:
- xprintf("IKBD: unknown command: %x\n", cmd);
- break;
- }
-}
-
-/*
- * FIXME: temporarily provide function prototypes for unimplemented functions here to make compiler happy
- */
-
-extern int GetTimer(int);
-extern int CheckTimer(int);
-extern void EnableIO(void);
-extern void DisableIO(void);
-extern int SPI(int);
-
-void ikbd_poll(void)
-{
- static int mtimer = 0;
- if (CheckTimer(mtimer))
- {
- mtimer = GetTimer(10);
-
- // check for incoming ikbd data
- EnableIO();
- SPI(UIO_IKBD_IN);
-
- while(SPI(0))
- ikbd_handle_input(SPI(0));
-
- DisableIO();
- }
-
- // send data from queue if present
- if(rptr == wptr) return;
-
- // transmit data from queue
- EnableIO();
- SPI(UIO_IKBD_OUT);
- SPI(tx_queue[rptr]);
- DisableIO();
-
- rptr = (rptr + 1) & (QUEUE_LEN - 1);
-}
-
-void ikbd_joystick(unsigned char joystick, unsigned char map)
-{
- // todo: suppress events for joystick 0 as long as mouse
- // is enabled?
-
- if (ikbd.state & IKBD_STATE_JOYSTICK_EVENT_REPORTING)
- {
-#ifdef IKBD_DEBUG
- xprintf("IKBD: joy %d %x\n", joystick, map);
-#endif
-
- // only report joystick data for joystick 0 if the mouse is disabled
- if ((ikbd.state & IKBD_STATE_MOUSE_DISABLED) || (joystick == 1))
- {
- enqueue(0xfe + joystick);
- enqueue(joystick_map2ikbd(map));
- }
-
- if (!(ikbd.state & IKBD_STATE_MOUSE_DISABLED))
- {
- // the fire button also generates a mouse event if
- // mouse reporting is enabled
- if ((map & JOY_BTN1) != (ikbd.joystick[joystick] & JOY_BTN1))
- {
- // generate mouse event (ikbd_joystick_buttons is evaluated inside
- // user_io_mouse)
- ikbd.joystick[joystick] = map;
- ikbd_mouse(0, 0, 0);
- }
- }
- }
-#ifdef IKBD_DEBUG
- else
- xprintf("IKBD: no monitor, drop joy %d %x\n", joystick, map);
-#endif
-
- // save state of joystick for interrogation mode
- ikbd.joystick[joystick] = map;
-}
-
-void ikbd_keyboard(unsigned char code)
-{
-#ifdef IKBD_DEBUG
- xprintf("IKBD: send keycode %x%s\n", code&0x7f, (code&0x80)?" BREAK":"");
-#endif
- enqueue(code);
-}
-
-void ikbd_mouse(uint8_t b, int8_t x, int8_t y)
-{
- if (ikbd.state & IKBD_STATE_MOUSE_DISABLED)
- return;
-
- // joystick and mouse buttons are wired together in
- // atari st
- b |= (ikbd.joystick[0] & JOY_BTN1)?1:0;
- b |= (ikbd.joystick[1] & JOY_BTN1)?2:0;
-
- static unsigned char b_old = 0;
- // monitor state of two mouse buttons
- if (b != b_old)
- {
- // check if mouse buttons are supposed to be treated like keys
- if (ikbd.state & IKBD_STATE_MOUSE_BUTTON_AS_KEY)
- {
- // Mouse buttons act like keys (LEFT=0x74 & RIGHT=0x75)
-
- // handle left mouse button
- if((b ^ b_old) & 1) ikbd_keyboard(0x74 | ((b&1)?0x00:0x80));
- // handle right mouse button
- if((b ^ b_old) & 2) ikbd_keyboard(0x75 | ((b&2)?0x00:0x80));
- }
- b_old = b;
- }
-
-#if 0
- if(ikbd.state & IKBD_STATE_MOUSE_BUTTON_AS_KEY)
- {
- b = 0;
- // if mouse position is 0/0 quit here
- if(!x && !y) return;
- }
-#endif
-
- if (ikbd.state & IKBD_STATE_MOUSE_ABSOLUTE)
- {
- }
- else
- {
- // atari has mouse button bits swapped
- enqueue(0xf8|((b&1)?2:0)|((b&2)?1:0));
- enqueue(x);
- enqueue((ikbd.state & IKBD_STATE_MOUSE_Y_BOTTOM)?-y:y);
- }
-}
-
diff --git a/BaS_gcc/mcf5474.gdb b/BaS_gcc/mcf5474.gdb
deleted file mode 100644
index a7cf98b..0000000
--- a/BaS_gcc/mcf5474.gdb
+++ /dev/null
@@ -1,71 +0,0 @@
-#
-# GDB Init script for the Coldfire 5474 processor (firebee).
-#
-
-define addresses
-set $vbr = 0x00000000
-#monitor bdm-ctl-set 0x0801 0x00000000
-
-set $mbar = 0xFF000000
-#monitor bdm-ctl-set 0x0C0F 0xFF000000
-
-set $rambar0 = 0xFF100000
-#monitor bdm-ctl-set 0x0C04 0xFF100007
-
-set $rambar1 = 0xFF101000
-#monitor bdm-ctl-set 0x0C05 0xFF101001
-end
-
-#
-# Setup the DRAM controller.
-#
-
-define setup-dram
-# Init CS0 (BootFLASH @ E000_0000 - E07F_FFFF 8Mbytes)
-set *((long *) 0xFF000500) = 0xE0000000
-set *((long *) 0xFF000508) = 0x00041180
-set *((long *) 0xFF000504) = 0x007F0001
-
-# set *((long *) 0xFF00050C) = 0xFFF00000 # ATARI I/O address
-
-# SDRAM Initialization @ 0000_0000 - 1FFF_FFFF 512Mbytes
-set *((long *) 0xFF000004) = 0x000002AA
-set *((long *) 0xFF000020) = 0x0000001A
-set *((long *) 0xFF000024) = 0x0800001A
-set *((long *) 0xFF000028) = 0x1000001A
-set *((long *) 0xFF00002C) = 0x1800001A
-set *((long *) 0xFF000108) = 0x73622830
-set *((long *) 0xFF00010C) = 0x46770000
-
-
-set *((long *) 0xFF000104) = 0xE10D0002
-set *((long *) 0xFF000100) = 0x40010000
-set *((long *) 0xFF000100) = 0x048D0000
-set *((long *) 0xFF000104) = 0xE10D0002
-set *((long *) 0xFF000104) = 0xE10D0004
-set *((long *) 0xFF000104) = 0xE10D0004
-set *((long *) 0xFF000100) = 0x008D0000
-set *((long *) 0xFF000104) = 0x710D0F00
-end
-
-define cu
-!killall m68k-bdm-gdbserver
-end
-
-#
-# Wake up the board
-#
-
-define ib
- addresses
- setup-dram
-end
-
-define run
- continue
-end
-
-tr
-ib
-#add-symbol-file ../emutos/emutos2.img 0xe00000
-#load firebee/ram.elf
diff --git a/BaS_gcc/memory_map.txt b/BaS_gcc/memory_map.txt
deleted file mode 100644
index 58acb8b..0000000
--- a/BaS_gcc/memory_map.txt
+++ /dev/null
@@ -1,8 +0,0 @@
-Firebee memory map
-==================
-
- Virt. Start Virt. End Phys. Start Phys. End
-ST-RAM 0x00000000 0x00dfffff 0x60000000 0x60dfffff
-TOS 0x00e00000 0x00efffff 0x00e00000 0x00efffff
-ST I/O area 0x00f00000 0x01000000 0xfff00000 0xffffffff
-TT-RAM 0x01000000 0x20ffffff 0x00000000 0x1fffffff
diff --git a/BaS_gcc/net/am79c874.c b/BaS_gcc/net/am79c874.c
deleted file mode 100644
index 6a6ca4f..0000000
--- a/BaS_gcc/net/am79c874.c
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * File: am79c874.c
- * Purpose: Driver for the AMD AM79C874 10/100 Ethernet PHY
- */
-
-#include "net.h"
-#include "fec.h"
-#include "am79c874.h"
-
-#include "bas_printf.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine!"
-#endif
-
-#include
-// #define DEBUG
-
-/* Initialize the AM79C874 PHY
- *
- * This function sets up the Auto-Negotiate Advertisement register
- * within the PHY and then forces the PHY to auto-negotiate for
- * it's settings.
- *
- * Params:
- * fec_ch FEC channel
- * phy_addr Address of the PHY.
- * speed Desired speed (10BaseT or 100BaseTX)
- * duplex Desired duplex (Full or Half)
- *
- * Return Value:
- * 0 if MII commands fail
- * 1 otherwise
- */
-int am79c874_init(uint8_t fec_ch, uint8_t phy_addr, uint8_t speed, uint8_t duplex)
-{
- int timeout;
- uint16_t settings;
- if (speed); /* to do */
- if (duplex); /* to do */
-
- /* Initialize the MII interface */
- fec_mii_init(fec_ch, SYSCLK / 1000);
- dbg("%s: PHY reset\r\n", __FUNCTION__);
-
- /* Reset the PHY */
- if (!fec_mii_write(fec_ch, phy_addr, MII_AM79C874_CR, MII_AM79C874_CR_RESET))
- return 0;
-
- /* Wait for the PHY to reset */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- fec_mii_read(fec_ch, phy_addr, MII_AM79C874_CR, &settings);
- if (!(settings & MII_AM79C874_CR_RESET))
- break;
- }
-
- if (timeout >= FEC_MII_TIMEOUT)
- {
- dbg("%s: PHY reset failed\r\n", __FUNCTION__);
- return 0;
- };
- dbg("%s: PHY reset OK\r\n", __FUNCTION__);
- dbg("%s: PHY Enable Auto-Negotiation\r\n", __FUNCTION__);
-
- /* Enable Auto-Negotiation */
- if (!fec_mii_write(fec_ch, phy_addr, MII_AM79C874_CR, MII_AM79C874_CR_AUTON | MII_AM79C874_CR_RST_NEG))
- return 0;
-
- dbg("%s:PHY Wait for auto-negotiation to complete\r\n", __FUNCTION__);
-
- /* Wait for auto-negotiation to complete */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- settings = 0;
- fec_mii_read(fec_ch, phy_addr, MII_AM79C874_SR, &settings);
- if ((settings & AUTONEGLINK) == AUTONEGLINK)
- break;
- }
-
- if (timeout >= FEC_MII_TIMEOUT)
- {
- dbg("%s: Auto-negotiation failed (timeout). Set default mode (100Mbps, full duplex)\r\n", __FUNCTION__);
-
- /* Set the default mode (Full duplex, 100 Mbps) */
- if (!fec_mii_write(fec_ch, phy_addr, MII_AM79C874_CR, MII_AM79C874_CR_100MB | MII_AM79C874_CR_DPLX))
- {
- dbg("%s: forced setting 100Mbps/full failed.\r\n", __FUNCTION__);
- return 0;
- }
- }
-
-#ifdef DBG_AM79
- settings = 0;
-
- fec_mii_read(fec_ch, phy_addr, MII_AM79C874_DR, &settings);
-
- dbg("%s: PHY Mode:\r\n", __FUNCTION__);
- if (settings & MII_AM79C874_DR_DATA_RATE)
- dbg("%s: 100Mbps", __FUNCTION__);
- else
- dbg("%s: 10Mbps ", __FUNCTION__);
-
- if (settings & MII_AM79C874_DR_DPLX)
- dbg("%s: Full-duplex\r\n", __FUNCTION__);
- else
- dbg("%s: Half-duplex\r\n", __FUNCTION__);
-
- dbg("%s:PHY auto-negotiation complete\r\n", __FUNCTION__);
-#endif /* DBG_AM79 */
-
- return 1;
-}
diff --git a/BaS_gcc/net/arp.c b/BaS_gcc/net/arp.c
deleted file mode 100644
index 09faab9..0000000
--- a/BaS_gcc/net/arp.c
+++ /dev/null
@@ -1,486 +0,0 @@
-/*
- * File: arp.c
- * Purpose: Address Resolution Protocol routines.
- *
- * Notes:
- */
-
-#include "net.h"
-#include "net_timer.h"
-#include "bas_printf.h"
-#include
-#include
-
-//#define DEBUG
-#include "debug.h"
-
-#define TIMER_NETWORK 3
-
-static uint8_t *arp_find_pair(ARP_INFO *arptab, uint16_t protocol, uint8_t *hwa, uint8_t *pa)
-{
- /*
- * This function searches through the ARP table for the
- * specified or address pair.
- * If it is found, then a a pointer to the non-specified
- * address is returned. Otherwise NULL is returned.
- * If you pass in then you get out.
- * If you pass in then you get out.
- */
- int slot, i, match = false;
- uint8_t *rvalue;
-
- if (((hwa == 0) && (pa == 0)) || (arptab == 0))
- return NULL;
-
- rvalue = NULL;
-
- /*
- * Check each protocol address for a match
- */
- for (slot = 0; slot < arptab->tab_size; slot++)
- {
- if ((arptab->table[slot].longevity != ARP_ENTRY_EMPTY) &&
- (arptab->table[slot].protocol == protocol))
- {
- match = true;
- if (hwa != 0)
- {
- /*
- * Check the Hardware Address field
- */
- rvalue = &arptab->table[slot].pa[0];
- for (i = 0; i < arptab->table[slot].hwa_size; i++)
- {
- if (arptab->table[slot].hwa[i] != hwa[i])
- {
- match = false;
- break;
- }
- }
- }
- else
- {
- /*
- * Check the Protocol Address field
- */
- rvalue = &arptab->table[slot].hwa[0];
- for (i = 0; i < arptab->table[slot].pa_size; i++)
- {
- if (arptab->table[slot].pa[i] != pa[i])
- {
- match = false;
- break;
- }
- }
- }
- if (match)
- {
- break;
- }
- }
- }
-
- if (match)
- return rvalue;
- else
- return NULL;
-}
-
-void arp_merge(ARP_INFO *arptab, uint16_t protocol, int hwa_size, uint8_t *hwa,
- int pa_size, uint8_t *pa, int longevity)
-{
- /*
- * This function merges an entry into the ARP table. If
- * either piece is NULL, the function exits, otherwise
- * the entry is merged or added, provided there is space.
- */
- int i, slot;
- uint8_t *ta;
-
- if ((hwa == NULL) || (pa == NULL) || (arptab == NULL) ||
- ((longevity != ARP_ENTRY_TEMP) &&
- (longevity != ARP_ENTRY_PERM)))
- {
- return;
- }
-
- /* First search ARP table for existing entry */
- if ((ta = arp_find_pair(arptab,protocol,NULL,pa)) != 0)
- {
- /* Update hardware address */
- for (i = 0; i < hwa_size; i++)
- ta[i] = hwa[i];
- return;
- }
-
- /* Next try to find an empty slot */
- slot = -1;
- for (i = 0; i < MAX_ARP_ENTRY; i++)
- {
- if (arptab->table[i].longevity == ARP_ENTRY_EMPTY)
- {
- slot = i;
- break;
- }
- }
-
- /* if no empty slot was found, pick a temp slot */
- if (slot == -1)
- {
- for (i = 0; i < MAX_ARP_ENTRY; i++)
- {
- if (arptab->table[i].longevity == ARP_ENTRY_TEMP)
- {
- slot = i;
- break;
- }
- }
- }
-
- /* if after all this, still no slot found, add in last slot */
- if (slot == -1)
- slot = (MAX_ARP_ENTRY - 1);
-
- /* add the entry into the slot */
- arptab->table[slot].protocol = protocol;
-
- arptab->table[slot].hwa_size = (uint8_t) hwa_size;
- for (i = 0; i < hwa_size; i++)
- arptab->table[slot].hwa[i] = hwa[i];
-
- arptab->table[slot].pa_size = (uint8_t) pa_size;
- for (i = 0; i < pa_size; i++)
- arptab->table[slot].pa[i] = pa[i];
-
- arptab->table[slot].longevity = longevity;
-}
-
-
-void arp_remove(ARP_INFO *arptab, uint16_t protocol, uint8_t *hwa, uint8_t *pa)
-{
- /*
- * This function removes an entry from the ARP table. The
- * ARP table is searched according to the non-NULL address
- * that is provided.
- */
- int slot, i, match;
-
- if (((hwa == 0) && (pa == 0)) || (arptab == 0))
- return;
-
- /* check each hardware adress for a match */
- for (slot = 0; slot < arptab->tab_size; slot++)
- {
- if ((arptab->table[slot].longevity != ARP_ENTRY_EMPTY) &&
- (arptab->table[slot].protocol == protocol))
- {
- match = true;
- if (hwa != 0)
- {
- /* Check Hardware Address field */
- for (i = 0; i < arptab->table[slot].hwa_size; i++)
- {
- if (arptab->table[slot].hwa[i] != hwa[i])
- {
- match = false;
- break;
- }
- }
- }
- else
- {
- /* Check Protocol Address field */
- for (i = 0; i < arptab->table[slot].pa_size; i++)
- {
- if (arptab->table[slot].pa[i] != pa[i])
- {
- match = false;
- break;
- }
- }
- }
- if (match)
- {
- for (i = 0; i < arptab->table[slot].hwa_size; i++)
- arptab->table[slot].hwa[i] = 0;
- for (i = 0; i < arptab->table[slot].pa_size; i++)
- arptab->table[slot].pa[i] = 0;
- arptab->table[slot].longevity = ARP_ENTRY_EMPTY;
- break;
- }
- }
- }
-}
-
-void arp_request(NIF *nif, uint8_t *pa)
-{
- /*
- * This function broadcasts an ARP request for the protocol
- * address "pa"
- */
- uint8_t *addr;
- NBUF *pNbuf;
- arp_frame_hdr *arpframe;
- int i, result;
-
- pNbuf = nbuf_alloc();
- if (pNbuf == NULL)
- {
- dbg("could not allocate Tx buffer\n");
- return;
- }
-
- arpframe = (arp_frame_hdr *)&pNbuf->data[ARP_HDR_OFFSET];
-
- /* Build the ARP request packet */
- arpframe->ar_hrd = ETHERNET;
- arpframe->ar_pro = ETH_FRM_IP;
- arpframe->ar_hln = 6;
- arpframe->ar_pln = 4;
- arpframe->opcode = ARP_REQUEST;
-
- addr = &nif->hwa[0];
- for (i = 0; i < 6; i++)
- arpframe->ar_sha[i] = addr[i];
-
- addr = ip_get_myip(nif_get_protocol_info(nif,ETH_FRM_IP));
- for (i = 0; i < 4; i++)
- arpframe->ar_spa[i] = addr[i];
-
- for (i = 0; i < 6; i++)
- arpframe->ar_tha[i] = 0x00;
-
- for (i = 0; i < 4; i++)
- arpframe->ar_tpa[i] = pa[i];
-
- pNbuf->length = ARP_HDR_LEN;
-
- /* Send the ARP request */
- dbg("sending ARP request\r\n");
- result = nif->send(nif, nif->broadcast, nif->hwa, ETH_FRM_ARP, pNbuf);
-
- if (result == 0)
- nbuf_free(pNbuf);
-}
-
-static int arp_resolve_pa(NIF *nif, uint16_t protocol, uint8_t *pa, uint8_t **ha)
-{
- /*
- * This function accepts a pointer to a protocol address and
- * searches the ARP table for a hardware address match. If no
- * no match found, false is returned.
- */
- ARP_INFO *arptab;
-
- if ((pa == NULL) || (nif == NULL) || (protocol == 0))
- return 0;
-
- arptab = nif_get_protocol_info (nif,ETH_FRM_ARP);
- *ha = arp_find_pair(arptab,protocol,0,pa);
-
- if (*ha == NULL)
- return 0;
- else
- return 1;
-}
-
-uint8_t *arp_resolve(NIF *nif, uint16_t protocol, uint8_t *pa)
-{
- int i;
- uint8_t *hwa;
-
- /*
- * Check to see if the necessary MAC-to-IP translation information
- * is in table already
- */
- if (arp_resolve_pa(nif, protocol, pa, &hwa))
- return hwa;
-
- /*
- * Ok, it's not, so we need to try to obtain it by broadcasting
- * an ARP request. Hopefully the desired host is listening and
- * will respond with it's MAC address
- */
- for (i = 0; i < 3; i++)
- {
- arp_request(nif, pa);
-
- timer_set_secs(TIMER_NETWORK, ARP_TIMEOUT);
- while (timer_get_reference(TIMER_NETWORK))
- {
- dbg("try to resolve %d.%d.%d.%d\r\n",
- pa[0], pa[1], pa[2], pa[3], pa[4]);
- if (arp_resolve_pa(nif, protocol, pa, &hwa))
- {
- dbg("resolved to %02x:%02x:%02x:%02x:%02x:%02x.\r\n",
- hwa[0], hwa[1], hwa[2], hwa[3], hwa[4], hwa[5], hwa[6]);
-
- return hwa;
- }
- }
- }
-
- return NULL;
-}
-
-void arp_init(ARP_INFO *arptab)
-{
- int slot, i;
-
- arptab->tab_size = MAX_ARP_ENTRY;
- for (slot = 0; slot < arptab->tab_size; slot++)
- {
- for (i = 0; i < MAX_HWA_SIZE; i++)
- arptab->table[slot].hwa[i] = 0;
- for (i = 0; i < MAX_PA_SIZE; i++)
- arptab->table[slot].pa[i] = 0;
- arptab->table[slot].longevity = ARP_ENTRY_EMPTY;
- arptab->table[slot].hwa_size = 0;
- arptab->table[slot].pa_size = 0;
- }
-}
-
-void arp_handler(NIF *nif, NBUF *pNbuf)
-{
- /*
- * ARP protocol handler
- */
- uint8_t *addr;
- ARP_INFO *arptab;
- int longevity;
- arp_frame_hdr *rx_arpframe, *tx_arpframe;
-
- arptab = nif_get_protocol_info(nif, ETH_FRM_ARP);
- rx_arpframe = (arp_frame_hdr *) &pNbuf->data[pNbuf->offset];
-
- /*
- * Check for an appropriate ARP packet
- */
- if ((pNbuf->length < ARP_HDR_LEN) ||
- (rx_arpframe->ar_hrd != ETHERNET) ||
- (rx_arpframe->ar_hln != 6) ||
- (rx_arpframe->ar_pro != ETH_FRM_IP) ||
- (rx_arpframe->ar_pln != 4))
- {
- dbg("received packet is not an ARP packet, discard it\r\n");
- nbuf_free(pNbuf);
- return;
- }
-
- /*
- * Check to see if it was addressed to me - if it was, keep this
- * ARP entry in the table permanently; if not, mark it so that it
- * can be displaced later if necessary
- */
- addr = ip_get_myip(nif_get_protocol_info(nif,ETH_FRM_IP));
- if ((rx_arpframe->ar_tpa[0] == addr[0]) &&
- (rx_arpframe->ar_tpa[1] == addr[1]) &&
- (rx_arpframe->ar_tpa[2] == addr[2]) &&
- (rx_arpframe->ar_tpa[3] == addr[3]) )
- {
- dbg("received ARP packet is a permanent one, store it\r\n");
- longevity = ARP_ENTRY_PERM;
- }
- else
- {
- dbg("received ARP packet was not addressed to us, keep only temporarily\r\n");
- longevity = ARP_ENTRY_TEMP;
- }
-
- /*
- * Add ARP info into the table
- */
- arp_merge(arptab,
- rx_arpframe->ar_pro,
- rx_arpframe->ar_hln,
- &rx_arpframe->ar_sha[0],
- rx_arpframe->ar_pln,
- &rx_arpframe->ar_spa[0],
- longevity
- );
-
- switch (rx_arpframe->opcode)
- {
- case ARP_REQUEST:
- /*
- * Check to see if request is directed to me
- */
- if ((rx_arpframe->ar_tpa[0] == addr[0]) &&
- (rx_arpframe->ar_tpa[1] == addr[1]) &&
- (rx_arpframe->ar_tpa[2] == addr[2]) &&
- (rx_arpframe->ar_tpa[3] == addr[3]) )
- {
- dbg("received arp request directed to us, replying\r\n");
- /*
- * Reuse the current network buffer to assemble an ARP reply
- */
- tx_arpframe = (arp_frame_hdr *)&pNbuf->data[ARP_HDR_OFFSET];
-
- /*
- * Build new ARP frame from the received data
- */
- tx_arpframe->ar_hrd = ETHERNET;
- tx_arpframe->ar_pro = ETH_FRM_IP;
- tx_arpframe->ar_hln = 6;
- tx_arpframe->ar_pln = 4;
- tx_arpframe->opcode = ARP_REPLY;
- tx_arpframe->ar_tha[0] = rx_arpframe->ar_sha[0];
- tx_arpframe->ar_tha[1] = rx_arpframe->ar_sha[1];
- tx_arpframe->ar_tha[2] = rx_arpframe->ar_sha[2];
- tx_arpframe->ar_tha[3] = rx_arpframe->ar_sha[3];
- tx_arpframe->ar_tha[4] = rx_arpframe->ar_sha[4];
- tx_arpframe->ar_tha[5] = rx_arpframe->ar_sha[5];
- tx_arpframe->ar_tpa[0] = rx_arpframe->ar_spa[0];
- tx_arpframe->ar_tpa[1] = rx_arpframe->ar_spa[1];
- tx_arpframe->ar_tpa[2] = rx_arpframe->ar_spa[2];
- tx_arpframe->ar_tpa[3] = rx_arpframe->ar_spa[3];
-
- /*
- * Now copy in the new information
- */
- addr = &nif->hwa[0];
- tx_arpframe->ar_sha[0] = addr[0];
- tx_arpframe->ar_sha[1] = addr[1];
- tx_arpframe->ar_sha[2] = addr[2];
- tx_arpframe->ar_sha[3] = addr[3];
- tx_arpframe->ar_sha[4] = addr[4];
- tx_arpframe->ar_sha[5] = addr[5];
-
- addr = ip_get_myip(nif_get_protocol_info(nif,ETH_FRM_IP));
- tx_arpframe->ar_spa[0] = addr[0];
- tx_arpframe->ar_spa[1] = addr[1];
- tx_arpframe->ar_spa[2] = addr[2];
- tx_arpframe->ar_spa[3] = addr[3];
-
- /*
- * Save the length of my packet in the buffer structure
- */
- pNbuf->length = ARP_HDR_LEN;
-
- nif->send(nif,
- &tx_arpframe->ar_tha[0],
- &tx_arpframe->ar_sha[0],
- ETH_FRM_ARP,
- pNbuf);
- }
- else
- {
- dbg("ARP request not addressed to us, discarding\r\n");
- nbuf_free(pNbuf);
- }
- break;
-
- case ARP_REPLY:
- /*
- * The ARP Reply case is already taken care of
- */
-
- /* missing break is intentional */
-
- default:
- nbuf_free(pNbuf);
- break;
- }
-
- return;
-}
diff --git a/BaS_gcc/net/bcm5222.c b/BaS_gcc/net/bcm5222.c
deleted file mode 100644
index b56b3dd..0000000
--- a/BaS_gcc/net/bcm5222.c
+++ /dev/null
@@ -1,178 +0,0 @@
-/*
- * File: bcm5222.c
- * Purpose: Driver for the Micrel BCM5222 10/100 Ethernet PHY
- *
- * Notes: This driver was written specifically for the M5475EVB
- * and M5485EVB. These boards use the MII signals from
- * FEC0 to control the PHY. Therefore the fec_ch parameter
- * is ignored when doing MII reads and writes.
- */
-
-#include "net.h"
-#include "fec.h"
-#include "bcm5222.h"
-
-#include "bas_printf.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "Unknown machine!"
-#endif
-
-// #define DEBUG
-#include "debug.h"
-
-/*
- * Initialize the BCM5222 PHY
- *
- * This function sets up the Auto-Negotiate Advertisement register
- * within the PHY and then forces the PHY to auto-negotiate for
- * it's settings.
- *
- * Params:
- * fec_ch FEC channel
- * phy_addr Address of the PHY.
- * speed Desired speed (10BaseT or 100BaseTX)
- * duplex Desired duplex (Full or Half)
- *
- * Return Value:
- * 0 if MII commands fail
- * 1 otherwise
- */
-int bcm5222_init(uint8_t fec_ch, uint8_t phy_addr, uint8_t speed, uint8_t duplex)
-{
- int timeout;
- uint16_t settings;
-
- /* Initialize the MII interface */
- fec_mii_init(fec_ch, SYSCLK / 1000);
- dbg("PHY reset\r\n");
-
- /* Reset the PHY */
- if (!fec_mii_write(fec_ch, phy_addr, BCM5222_CTRL, BCM5222_CTRL_RESET | BCM5222_CTRL_ANE))
- return 0;
-
- /* Wait for the PHY to reset */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- fec_mii_read(fec_ch, phy_addr, BCM5222_CTRL, &settings);
- if (!(settings & BCM5222_CTRL_RESET))
- break;
- }
- if(timeout >= FEC_MII_TIMEOUT)
- return 0;
-
- dbg("PHY reset OK\r\n");
-
- settings = (BCM5222_AN_ADV_NEXT_PAGE | BCM5222_AN_ADV_PAUSE);
-
- if (speed == FEC_MII_10BASE_T)
- settings |= (uint16_t)((duplex == FEC_MII_FULL_DUPLEX)
- ? (BCM5222_AN_ADV_10BT_FDX | BCM5222_AN_ADV_10BT)
- : BCM5222_AN_ADV_10BT);
- else /* (speed == FEC_MII_100BASE_TX) */
- settings = (uint16_t)((duplex == FEC_MII_FULL_DUPLEX)
- ? (BCM5222_AN_ADV_100BTX_FDX | BCM5222_AN_ADV_100BTX
- | BCM5222_AN_ADV_10BT_FDX | BCM5222_AN_ADV_10BT)
- : (BCM5222_AN_ADV_100BTX | BCM5222_AN_ADV_10BT));
-
- /* Set the Auto-Negotiation Advertisement Register */
- if (!fec_mii_write(fec_ch, phy_addr, BCM5222_AN_ADV, settings))
- return 0;
-
- dbg("PHY Enable Auto-Negotiation\r\n");
-
- /* Enable Auto-Negotiation */
- if (!fec_mii_write(fec_ch, phy_addr, BCM5222_CTRL, (BCM5222_CTRL_ANE | BCM5222_CTRL_RESTART_AN)))
- return 0;
-
- dbg("PHY Wait for auto-negotiation to complete\r\n");
-
- /* Wait for auto-negotiation to complete */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- if (!fec_mii_read(fec_ch, phy_addr, BCM5222_STAT, &settings))
- return 0;
- if (settings & BCM5222_STAT_AN_COMPLETE)
- break;
- }
-
- if (timeout < FEC_MII_TIMEOUT)
- {
- dbg("PHY auto-negociation complete\r\n");
-
- /* Read Auxiliary Control/Status Register */
- if (!fec_mii_read(fec_ch, phy_addr, BCM5222_ACSR, &settings))
- return 0;
- }
- else
- {
- dbg("auto negotiation failed, PHY Set the default mode\r\n");
-
- /* Set the default mode (Full duplex, 100 Mbps) */
- if (!fec_mii_write(fec_ch, phy_addr, BCM5222_ACSR, settings = (BCM5222_ACSR_100BTX | BCM5222_ACSR_FDX)))
- return 0;
- }
-
- /* Set the proper duplex in the FEC now that we have auto-negotiated */
- if (settings & BCM5222_ACSR_FDX)
- fec_duplex(fec_ch, FEC_MII_FULL_DUPLEX);
- else
- fec_duplex(fec_ch, FEC_MII_HALF_DUPLEX);
-
- dbg("PHY Mode: ");
-
- if (settings & BCM5222_ACSR_100BTX)
- dbg("100Mbps\r\n");
- else
- dbg("10Mbps\r\n");
-
- if (settings & BCM5222_ACSR_FDX)
- dbg("Full-duplex\r\n");
- else
- dbg("Half-duplex\r\n");
-
- return 1;
-}
-
-void bcm5222_get_reg(uint16_t* status0, uint16_t* status1)
-{
- fec_mii_read(0, 0x00, 0x00000000, &status0[0]);
- fec_mii_read(0, 0x00, 0x00000001, &status0[1]);
- fec_mii_read(0, 0x00, 0x00000004, &status0[4]);
- fec_mii_read(0, 0x00, 0x00000005, &status0[5]);
- fec_mii_read(0, 0x00, 0x00000006, &status0[6]);
- fec_mii_read(0, 0x00, 0x00000007, &status0[7]);
- fec_mii_read(0, 0x00, 0x00000008, &status0[8]);
- fec_mii_read(0, 0x00, 0x00000010, &status0[16]);
- fec_mii_read(0, 0x00, 0x00000011, &status0[17]);
- fec_mii_read(0, 0x00, 0x00000012, &status0[18]);
- fec_mii_read(0, 0x00, 0x00000013, &status0[19]);
- fec_mii_read(0, 0x00, 0x00000018, &status0[24]);
- fec_mii_read(0, 0x00, 0x00000019, &status0[25]);
- fec_mii_read(0, 0x00, 0x0000001B, &status0[27]);
- fec_mii_read(0, 0x00, 0x0000001C, &status0[28]);
- fec_mii_read(0, 0x00, 0x0000001E, &status0[30]);
- fec_mii_read(0, 0x01, 0x00000000, &status1[0]);
- fec_mii_read(0, 0x01, 0x00000001, &status1[1]);
- fec_mii_read(0, 0x01, 0x00000004, &status1[4]);
- fec_mii_read(0, 0x01, 0x00000005, &status1[5]);
- fec_mii_read(0, 0x01, 0x00000006, &status1[6]);
- fec_mii_read(0, 0x01, 0x00000007, &status1[7]);
- fec_mii_read(0, 0x01, 0x00000008, &status1[8]);
- fec_mii_read(0, 0x01, 0x00000010, &status1[16]);
- fec_mii_read(0, 0x01, 0x00000011, &status1[17]);
- fec_mii_read(0, 0x01, 0x00000012, &status1[18]);
- fec_mii_read(0, 0x01, 0x00000013, &status1[19]);
- fec_mii_read(0, 0x01, 0x00000018, &status1[24]);
- fec_mii_read(0, 0x01, 0x00000019, &status1[25]);
- fec_mii_read(0, 0x01, 0x0000001B, &status1[27]);
- fec_mii_read(0, 0x01, 0x0000001C, &status1[28]);
- fec_mii_read(0, 0x01, 0x0000001E, &status1[30]);
-}
-
diff --git a/BaS_gcc/net/bootp.c b/BaS_gcc/net/bootp.c
deleted file mode 100644
index 426e732..0000000
--- a/BaS_gcc/net/bootp.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * File: bootp.c
- * Purpose: Address Resolution Protocol routines.
- *
- * Notes:
- */
-
-#include "net.h"
-#include "bootp.h"
-#include
-#include
-#include "bas_printf.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#define TIMER_NETWORK 3 /* defines GPT3 as timer for this function */
-
-static struct bootp_connection connection;
-#define XID 0x1234 /* this is arbitrary */
-#define MAX_TRIES 5 /* since UDP can fail */
-
-void bootp_request(NIF *nif, uint8_t *pa)
-{
- /*
- * This function broadcasts a BOOTP request for the protocol
- * address "pa"
- */
- uint8_t *addr;
- IP_ADDR broadcast = {255, 255, 255, 255};
- NBUF *nbuf;
- struct bootp_packet *p;
- int i, result;
-
- nbuf = nbuf_alloc();
- if (nbuf == NULL)
- {
- xprintf("%s: couldn't allocate Tx buffer\r\n", __FUNCTION__);
- return;
- }
-
- p = (struct bootp_packet *) &nbuf->data[BOOTP_HDR_OFFSET];
-
- /* Build the BOOTP request packet */
- p->type = BOOTP_TYPE_BOOTREQUEST;
- p->htype = BOOTP_HTYPE_ETHERNET;
- p->hlen = BOOTP_HLEN_ETHERNET;
- p->hops = 0;
- p->xid = XID;
- p->secs = 1;
- p->flags = BOOTP_FLAGS_BROADCAST;
- p->cl_addr = 0x0;
- p->yi_addr = 0x0;
- p->gi_addr = 0x0;
-
- connection.nif = nif;
- addr = &nif->hwa[0];
-
- for (i = 0; i < 6; i++)
- p->ch_addr[i] = addr[i];
-
- nbuf->length = BOOTP_PACKET_LEN;
-
- /* setup reply handler */
- udp_bind_port(BOOTP_CLIENT_PORT, bootp_handler);
-
- for (i = 0; i < MAX_TRIES; i++)
- {
- /* Send the BOOTP request */
- result = udp_send(connection.nif, broadcast, BOOTP_CLIENT_PORT,
- BOOTP_SERVER_PORT, nbuf);
- dbg("sent bootp request\r\n");
- if (result == true)
- break;
- }
-
- /* release handler */
- udp_free_port(BOOTP_CLIENT_PORT);
-
- if (result == 0)
- nbuf_free(nbuf);
-}
-
-void bootp_handler(NIF *nif, NBUF *nbuf)
-{
- /*
- * BOOTP protocol handler
- */
- struct bootp_packet *rx_p;
- udp_frame_hdr *udpframe;
-
- (void) udpframe; /* FIXME: just to avoid compiler warning */
- dbg("\r\n");
-
- rx_p = (struct bootp_packet *) &nbuf->data[nbuf->offset];
- udpframe = (udp_frame_hdr *) &nbuf->data[nbuf->offset - UDP_HDR_SIZE];
-
- /*
- * check packet if it is valid and if it is really intended for us
- */
-
- if (rx_p->type == BOOTP_TYPE_BOOTREPLY && rx_p->xid == XID)
- {
- dbg("received bootp reply\r\n");
- /* seems to be valid */
-
- }
- else
- {
- dbg("received invalid bootp reply\r\n");
- /* not valid */
- return;
- }
-}
diff --git a/BaS_gcc/net/fec.c b/BaS_gcc/net/fec.c
deleted file mode 100644
index ce8c2d9..0000000
--- a/BaS_gcc/net/fec.c
+++ /dev/null
@@ -1,1442 +0,0 @@
-/*
- * File: fec.c
- * Purpose: Driver for the Fast Ethernet Controller (FEC)
- *
- * Notes:
- */
-
-#include "net.h"
-#include "fec.h"
-#include "fecbd.h"
-#include "exceptions.h"
-#include "interrupts.h"
-#include "MCF5475.h"
-#include "MCD_dma.h"
-#include "mcd_initiators.h"
-#include "dma.h"
-#include "bas_string.h"
-#include "bas_printf.h"
-#include "util.h"
-#include "wait.h"
-#include "am79c874.h"
-//#include "bcm5222.h"
-#include
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error Unknown machine!
-#endif
-
-// #define DEBUG
-#include "debug.h"
-
-
-FEC_EVENT_LOG fec_log[2];
-
-/*
- * Write a value to a PHY's MII register.
- *
- * Parameters:
- * ch FEC channel
- * phy_addr Address of the PHY.
- * reg_addr Address of the register in the PHY.
- * data Data to be written to the PHY register.
- *
- * Return Values:
- * 1 on failure
- * 0 on success.
- *
- * Please refer to your PHY manual for registers and their meanings.
- * mii_write() polls for the FEC's MII interrupt event (which should
- * be masked from the interrupt handler) and clears it. If after a
- * suitable amount of time the event isn't triggered, a value of 0
- * is returned.
- */
-int fec_mii_write(uint8_t ch, uint8_t phy_addr, uint8_t reg_addr, uint16_t data)
-{
- int timeout;
- uint32_t eimr;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Write to the MII Management Frame Register to kick-off
- * the MII write
- */
- MCF_FEC_MMFR(ch) = 0
- | MCF_FEC_MMFR_ST_01
- | MCF_FEC_MMFR_OP_WRITE
- | MCF_FEC_MMFR_PA(phy_addr)
- | MCF_FEC_MMFR_RA(reg_addr)
- | MCF_FEC_MMFR_TA_10
- | MCF_FEC_MMFR_DATA(data);
-
- /*
- * Mask the MII interrupt
- */
- eimr = MCF_FEC_EIMR(ch);
- MCF_FEC_EIMR(ch) &= ~MCF_FEC_EIMR_MII;
-
- /*
- * Poll for the MII interrupt (interrupt should be masked)
- */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- wait(1);
- if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
- break;
- }
-
- if (timeout == FEC_MII_TIMEOUT)
- return 0;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Restore the EIMR
- */
- MCF_FEC_EIMR(ch) = eimr;
-
- return 1;
-}
-
-/*
- * Read a value from a PHY's MII register.
- *
- * Parameters:
- * ch FEC channel
- * phy_addr Address of the PHY.
- * reg_addr Address of the register in the PHY.
- * data Pointer to storage for the Data to be read
- * from the PHY register (passed by reference)
- *
- * Return Values:
- * 1 on failure
- * 0 on success.
- *
- * Please refer to your PHY manual for registers and their meanings.
- * mii_read() polls for the FEC's MII interrupt event (which should
- * be masked from the interrupt handler) and clears it. If after a
- * suitable amount of time the event isn't triggered, a value of 0
- * is returned.
- */
-int fec_mii_read(uint8_t ch, uint8_t phy_addr, uint8_t reg_addr, uint16_t *data)
-{
- int timeout;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- /*
- * Write to the MII Management Frame Register to kick-off
- * the MII read
- */
- MCF_FEC_MMFR(ch) = 0
- | MCF_FEC_MMFR_ST_01
- | MCF_FEC_MMFR_OP_READ
- | MCF_FEC_MMFR_PA(phy_addr)
- | MCF_FEC_MMFR_RA(reg_addr)
- | MCF_FEC_MMFR_TA_10;
-
- /*
- * Poll for the MII interrupt (interrupt should be masked)
- */
- for (timeout = 0; timeout < FEC_MII_TIMEOUT; timeout++)
- {
- wait(1);
- if (MCF_FEC_EIR(ch) & MCF_FEC_EIR_MII)
- break;
- }
-
- if (timeout == FEC_MII_TIMEOUT)
- return 0;
-
- /*
- * Clear the MII interrupt bit
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_MII;
-
- *data = (uint16_t)(MCF_FEC_MMFR(ch) & 0x0000FFFF);
-
- return 1;
-}
-
-/*
- * Initialize the MII interface controller
- *
- * Parameters:
- * ch FEC channel
- * sys_clk System Clock Frequency (in MHz)
- */
-void fec_mii_init(uint8_t ch, uint32_t sys_clk)
-{
- /*
- * Initialize the MII clock (EMDC) frequency
- *
- * Desired MII clock is 2.5MHz
- * MII Speed Setting = System_Clock / (2.5MHz * 2)
- * (plus 1 to make sure we round up)
- */
- MCF_FEC_MSCR(ch) = MCF_FEC_MSCR_MII_SPEED((sys_clk / 5) + 1);
-}
-
-/* Initialize the MIB counters
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_mib_init(uint8_t ch)
-{
- //To do
-}
-
-/*
- * Display the MIB counters
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_mib_dump(uint8_t ch)
-{
- //To do
-}
-
-/*
- * Initialize the FEC log
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_log_init(uint8_t ch)
-{
- memset(&fec_log[ch], 0, sizeof(FEC_EVENT_LOG));
-}
-
-/*
- * Display the FEC log
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_log_dump(uint8_t ch)
-{
- dbg("\r\n FEC%d Log\r\n", __FUNCTION__, ch);
- dbg(" ---------------\r\n", __FUNCTION__);
- dbg(" Total: %4d\r\n", fec_log[ch].total);
- dbg(" hberr: %4d\r\n", fec_log[ch].hberr);
- dbg(" babr: %4d\r\n", fec_log[ch].babr);
- dbg(" babt: %4d\r\n", fec_log[ch].babt);
- dbg(" gra: %4d\r\n", fec_log[ch].gra);
- dbg(" txf: %4d\r\n", fec_log[ch].txf);
- dbg(" mii: %4d\r\n", fec_log[ch].mii);
- dbg(" lc: %4d\r\n", fec_log[ch].lc);
- dbg(" rl: %4d\r\n", fec_log[ch].rl);
- dbg(" xfun: %4d\r\n", fec_log[ch].xfun);
- dbg(" xferr: %4d\r\n", fec_log[ch].xferr);
- dbg(" rferr: %4d\r\n", fec_log[ch].rferr);
- dbg(" dtxf: %4d\r\n", fec_log[ch].dtxf);
- dbg(" drxf: %4d\r\n", fec_log[ch].drxf);
- dbg(" \r\nRFSW:\r\n");
- dbg(" inv: %4d\r\n", fec_log[ch].rfsw_inv);
- dbg(" m: %4d\r\n", fec_log[ch].rfsw_m);
- dbg(" bc: %4d\r\n", fec_log[ch].rfsw_bc);
- dbg(" mc: %4d\r\n", fec_log[ch].rfsw_mc);
- dbg(" lg: %4d\r\n", fec_log[ch].rfsw_lg);
- dbg(" no: %4d\r\n", fec_log[ch].rfsw_no);
- dbg(" cr: %4d\r\n", fec_log[ch].rfsw_cr);
- dbg(" ov: %4d\r\n", fec_log[ch].rfsw_ov);
- dbg(" tr: %4d\r\n", fec_log[ch].rfsw_tr);
- dbg(" ---------------\r\n\r\n");
-}
-
-/*
- * Display some of the registers for debugging
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_debug_dump(uint8_t ch)
-{
- dbg("\r\n------------- FEC%d -------------\r\n",ch);
- dbg("EIR %08x \r\n", MCF_FEC_EIR(ch));
- dbg("EIMR %08x \r\n", MCF_FEC_EIMR(ch));
- dbg("ECR %08x \r\n", MCF_FEC_ECR(ch));
- dbg("RCR %08x \r\n", MCF_FEC_RCR(ch));
- dbg("R_HASH %08x \r\n", MCF_FEC_RHR_HASH(ch));
- dbg("TCR %08x \r\n", MCF_FEC_TCR(ch));
- dbg("FECTFWR %08x \r\n", MCF_FEC_FECTFWR(ch));
- dbg("FECRFSR %08x \r\n", MCF_FEC_FECRFSR(ch));
- dbg("FECRFCR %08x \r\n", MCF_FEC_FECRFCR(ch));
- dbg("FECRLRFP %08x \r\n", MCF_FEC_FECRLRFP(ch));
- dbg("FECRLWFP %08x \r\n", MCF_FEC_FECRLWFP(ch));
- dbg("FECRFAR %08x \r\n", MCF_FEC_FECRFAR(ch));
- dbg("FECRFRP %08x \r\n", MCF_FEC_FECRFRP(ch));
- dbg("FECRFWP %08x \r\n", MCF_FEC_FECRFWP(ch));
- dbg("FECTFSR %08x \r\n", MCF_FEC_FECTFSR(ch));
- dbg("FECTFCR %08x \r\n", MCF_FEC_FECTFCR(ch));
- dbg("FECTLRFP %08x \r\n", MCF_FEC_FECTLRFP(ch));
- dbg("FECTLWFP %08x \r\n", MCF_FEC_FECTLWFP(ch));
- dbg("FECTFAR %08x \r\n", MCF_FEC_FECTFAR(ch));
- dbg("FECTFRP %08x \r\n", MCF_FEC_FECTFRP(ch));
- dbg("FECTFWP %08x \r\n", MCF_FEC_FECTFWP(ch));
- dbg("FRST %08x \r\n", MCF_FEC_FECFRST(ch));
- dbg("--------------------------------\r\n\r\n");
-}
-
-/*
- * Set the duplex on the selected FEC controller
- *
- * Parameters:
- * ch FEC channel
- * duplex FEC_MII_FULL_DUPLEX or FEC_MII_HALF_DUPLEX
- */
-void fec_duplex(uint8_t ch, uint8_t duplex)
-{
- switch (duplex)
- {
- case FEC_MII_HALF_DUPLEX:
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_DRT;
- MCF_FEC_TCR(ch) &= (uint32_t) ~MCF_FEC_TCR_FDEN;
- break;
- case FEC_MII_FULL_DUPLEX:
- default:
- MCF_FEC_RCR(ch) &= (uint32_t) ~MCF_FEC_RCR_DRT;
- MCF_FEC_TCR(ch) |= MCF_FEC_TCR_FDEN;
- break;
- }
-}
-
-/*
- * Generate the hash table settings for the given address
- *
- * Parameters:
- * addr 48-bit (6 byte) Address to generate the hash for
- *
- * Return Value:
- * The 6 most significant bits of the 32-bit CRC result
- */
-uint8_t fec_hash_address(const uint8_t *addr)
-{
- uint32_t crc;
- uint8_t byte;
- int i, j;
-
- crc = 0xFFFFFFFF;
- for (i = 0; i < 6; ++i)
- {
- byte = addr[i];
- for (j = 0; j < 8; ++j)
- {
- if ((byte & 0x01) ^ (crc & 0x01))
- {
- crc >>= 1;
- crc = crc ^ 0xEDB88320;
- }
- else
- crc >>= 1;
- byte >>= 1;
- }
- }
- return (uint8_t)(crc >> 26);
-}
-
-/*
- * Set the Physical (Hardware) Address and the Individual Address
- * Hash in the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * pa Physical (Hardware) Address for the selected FEC
- */
-void fec_set_address(uint8_t ch, const uint8_t *pa)
-{
- uint8_t crc;
-
- /*
- * Set the Physical Address
- */
- MCF_FEC_PALR(ch) = (uint32_t) ((pa[0] << 24) | (pa[1] << 16) | (pa[2] << 8) | pa[3]);
- MCF_FEC_PAHR(ch) = (uint32_t) ((pa[4] << 24) | (pa[5] << 16));
-
- /*
- * Calculate and set the hash for given Physical Address
- * in the Individual Address Hash registers
- */
- crc = fec_hash_address(pa);
- if(crc >= 32)
- MCF_FEC_IAUR(ch) |= (uint32_t) (1 << (crc - 32));
- else
- MCF_FEC_IALR(ch) |= (uint32_t) (1 << crc);
-}
-
-/*
- * Reset the selected FEC controller
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_reset(uint8_t ch)
-{
- int i;
-
- /* Clear any events in the FIFO status registers */
- MCF_FEC_FECRFSR(ch) = (0
- | MCF_FEC_FECRFSR_OF
- | MCF_FEC_FECRFSR_UF
- | MCF_FEC_FECRFSR_RXW
- | MCF_FEC_FECRFSR_FAE
- | MCF_FEC_FECRFSR_IP);
- MCF_FEC_FECTFSR(ch) = (0
- | MCF_FEC_FECTFSR_OF
- | MCF_FEC_FECTFSR_UF
- | MCF_FEC_FECTFSR_TXW
- | MCF_FEC_FECTFSR_FAE
- | MCF_FEC_FECTFSR_IP);
-
- /* Reset the FIFOs */
- MCF_FEC_FECFRST(ch) |= MCF_FEC_FECFRST_SW_RST;
- MCF_FEC_FECFRST(ch) &= ~MCF_FEC_FECFRST_SW_RST;
-
- /* Set the Reset bit and clear the Enable bit */
- MCF_FEC_ECR(ch) = MCF_FEC_ECR_RESET;
-
- /* Wait at least 8 clock cycles */
- for (i = 0; i < 10; ++i)
- NOP();
-}
-
-/*
- * Initialize the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * mode External interface mode (MII, 7-wire, or internal loopback)
- * pa Physical (Hardware) Address for the selected FEC
- */
-void fec_init(uint8_t ch, uint8_t mode, const uint8_t *pa)
-{
- /*
- * Enable all the external interface signals
- */
- if (mode == FEC_MODE_7WIRE)
- {
- if (ch == 1)
- MCF_PAD_PAR_FECI2CIRQ |= MCF_PAD_PAR_FECI2CIRQ_PAR_E17;
- else
- MCF_PAD_PAR_FECI2CIRQ |= MCF_PAD_PAR_FECI2CIRQ_PAR_E07;
- }
- else if (mode == FEC_MODE_MII)
- {
- if (ch == 1)
- MCF_PAD_PAR_FECI2CIRQ |= 0
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E17;
- else
- MCF_PAD_PAR_FECI2CIRQ |= 0
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII
- | MCF_PAD_PAR_FECI2CIRQ_PAR_E07;
- }
-
- /*
- * Clear the Individual and Group Address Hash registers
- */
- MCF_FEC_IALR(ch) = 0;
- MCF_FEC_IAUR(ch) = 0;
- MCF_FEC_GALR(ch) = 0;
- MCF_FEC_GAUR(ch) = 0;
-
- /*
- * Set the Physical Address for the selected FEC
- */
- fec_set_address(ch, pa);
-
- /*
- * Mask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_MASK_ALL;
-
- /*
- * Clear all FEC interrupt events
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_CLEAR_ALL;
-
- /*
- * Initialize the Receive Control Register
- */
- MCF_FEC_RCR(ch) = 0
- | MCF_FEC_RCR_MAX_FL(ETH_MAX_FRM)
- | MCF_FEC_RCR_PROM
- | MCF_FEC_RCR_FCE;
-
- if (mode == FEC_MODE_MII)
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_MII_MODE;
-
- else if (mode == FEC_MODE_LOOPBACK)
- MCF_FEC_RCR(ch) |= MCF_FEC_RCR_LOOP;
-
- /*
- * Initialize the Transmit Control Register
- */
- MCF_FEC_TCR(ch) = MCF_FEC_TCR_FDEN;
-
- /*
- * Set Rx FIFO alarm and granularity
- */
- MCF_FEC_FECRFCR(ch) = 0
- | MCF_FEC_FECRFCR_FRMEN
- | MCF_FEC_FECRFCR_RXW_MSK
- | MCF_FEC_FECRFCR_GR(7);
- MCF_FEC_FECRFAR(ch) = MCF_FEC_FECRFAR_ALARM(768);
-
- /*
- * Set Tx FIFO watermark, alarm and granularity
- */
- MCF_FEC_FECTFCR(ch) = 0
- | MCF_FEC_FECTFCR_FRMEN
- | MCF_FEC_FECTFCR_TXW_MASK
- | MCF_FEC_FECTFCR_GR(7);
- MCF_FEC_FECTFAR(ch) = MCF_FEC_FECTFAR_ALARM(256);
- MCF_FEC_FECTFWR(ch) = MCF_FEC_FECTFWR_X_WMRK_256;
-
- /*
- * Enable the transmitter to append the CRC
- */
- MCF_FEC_FECCTCWR(ch) = 0
- | MCF_FEC_FECCTCWR_TFCW
- | MCF_FEC_FECCTCWR_CRC;
-}
-
-/*
- * Start the FEC Rx DMA task
- *
- * Parameters:
- * ch FEC channel
- * rxbd First Rx buffer descriptor in the chain
- */
-void fec_rx_start(uint8_t ch, int8_t *rxbd)
-{
- uint32_t initiator;
- int channel;
-#ifdef DBG_FEC
- int res;
-#endif
-
- /*
- * Make the initiator assignment
- */
-#if defined(DBG_FEC)
- res =
-#else
- (void)
-#endif
- dma_set_initiator(DMA_FEC_RX(ch));
- dbg("dma_set_initiator(DMA_FEC_RX(%d)): %d\r\n", ch, res);
-
- /*
- * Grab the initiator number
- */
- initiator = dma_get_initiator(DMA_FEC_RX(ch));
- dbg("dma_get_initiator(DMA_FEC_RX(%d)) = %d\r\n", ch, initiator);
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_set_channel(DMA_FEC_RX(ch),
- (ch == 0) ? fec0_rx_frame : fec1_rx_frame);
- dbg("DMA channel for FEC%1d: %d\r\n", ch, channel);
-
- /*
- * Start the Rx DMA task
- */
- MCD_startDma(channel,
- (s8 *) rxbd,
- 0,
- (s8 *) MCF_FEC_FECRFDR(ch),
- 0,
- RX_BUF_SZ,
- 0,
- initiator,
- FECRX_DMA_PRI(ch),
- 0
- | MCD_FECRX_DMA
- | MCD_INTERRUPT
- | MCD_TT_FLAGS_CW
- | MCD_TT_FLAGS_RL
- | MCD_TT_FLAGS_SP
- ,
- 0
- | MCD_NO_CSUM
- | MCD_NO_BYTE_SWAP
- );
- dbg("Rx DMA task for FEC%1d started\r\n", ch);
-}
-
-/*
- * Continue the Rx DMA task
- *
- * This routine is called after the DMA task has halted after
- * encountering an Rx buffer descriptor that wasn't marked as
- * ready. There is no harm in calling the DMA continue routine
- * if the DMA is not halted.
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_rx_continue(uint8_t ch)
-{
- int channel;
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_RX(ch));
-
- dbg("RX DMA channel for FEC%1d is %d\r\n", ch, channel);
-
- /*
- * Continue/restart the DMA task
- */
- MCD_continDma(channel);
- dbg("RX dma on channel %d continued\r\n", channel);
-}
-
-/*
- * Stop all frame receptions on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_rx_stop (uint8_t ch)
-{
- uint32_t mask;
- int channel;
-
- /* Save off the EIMR value */
- mask = MCF_FEC_EIMR(ch);
-
- /* Mask all interrupts */
- MCF_FEC_EIMR(ch) = 0;
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_RX(ch));
-
- /* Kill the FEC Rx DMA task */
- MCD_killDma(channel);
-
- /*
- * Free up the FEC requestor from the software maintained
- * initiator list
- */
- dma_free_initiator(DMA_FEC_RX(ch));
-
- /* Free up the DMA channel */
- dma_free_channel(DMA_FEC_RX(ch));
-
- /* Restore the interrupt mask register value */
- MCF_FEC_EIMR(ch) = mask;
-}
-
-/*
- * Receive Frame interrupt handler - this handler is called by the
- * DMA interrupt handler indicating that a packet was successfully
- * transferred out of the Rx FIFO.
- *
- * Parameters:
- * nif Pointer to Network Interface structure
- * ch FEC channel
- */
-void fec_rx_frame(uint8_t ch, NIF *nif)
-{
- ETH_HDR *eth_hdr;
- FECBD *pRxBD;
- NBUF *cur_nbuf, *new_nbuf;
- int keep;
-
- dbg("started\r\n");
-
- while ((pRxBD = fecbd_rx_alloc(ch)) != NULL)
- {
- fec_log[ch].drxf++;
- keep = true;
-
- /*
- * Check the Receive Frame Status Word for errors
- * - The L bit should always be set
- * - No undefined bits should be set
- * - The upper 5 bits of the length should be cleared
- */
- if (!(pRxBD->status & RX_BD_L) || (pRxBD->status & 0x0608)
- || (pRxBD->length & 0xF800))
- {
- keep = false;
- fec_log[ch].rfsw_inv++;
- }
- else if (pRxBD->status & RX_BD_ERROR)
- {
- keep = false;
- if (pRxBD->status & RX_BD_NO)
- fec_log[ch].rfsw_no++;
- if (pRxBD->status & RX_BD_CR)
- fec_log[ch].rfsw_cr++;
- if (pRxBD->status & RX_BD_OV)
- fec_log[ch].rfsw_ov++;
- if (pRxBD->status & RX_BD_TR)
- fec_log[ch].rfsw_tr++;
- }
- else
- {
- if (pRxBD->status & RX_BD_LG)
- fec_log[ch].rfsw_lg++;
- if (pRxBD->status & RX_BD_M)
- fec_log[ch].rfsw_m++;
- if (pRxBD->status & RX_BD_BC)
- fec_log[ch].rfsw_bc++;
- if (pRxBD->status & RX_BD_MC)
- fec_log[ch].rfsw_mc++;
- }
-
- if (keep)
- {
- /*
- * Pull the network buffer off the Rx ring queue
- */
- cur_nbuf = nbuf_remove(NBUF_RX_RING);
-
- /*
- * Copy the buffer descriptor information to the network buffer
- */
- cur_nbuf->length = (pRxBD->length - (ETH_HDR_LEN + ETH_CRC_LEN));
- cur_nbuf->offset = ETH_HDR_LEN;
-
- /*
- * Get a new buffer pointer for this buffer descriptor
- */
- new_nbuf = nbuf_alloc();
- if (new_nbuf == NULL)
- {
- dbg("nbuf_alloc() failed\n");
-
- /*
- * Can't allocate a new network buffer, so we
- * have to trash the received data and reuse the buffer
- * hoping that some buffers will free up in the system
- * and this frame will be re-transmitted by the host
- */
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
- nbuf_add(NBUF_RX_RING, cur_nbuf);
- fec_rx_continue(ch);
-
- continue;
- }
-
- /*
- * Add the new network buffer to the Rx ring queue
- */
- nbuf_add(NBUF_RX_RING, new_nbuf);
-
- /*
- * Re-initialize the buffer descriptor - pointing it
- * to the new data buffer. The previous data buffer
- * will be passed up the stack
- */
- pRxBD->data = new_nbuf->data;
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
-
-
- /*
- * Let the DMA know that there is a new Rx BD (in case the
- * ring was full and the DMA was waiting for an empty one)
- */
- fec_rx_continue(ch);
-
- /*
- * Get pointer to the frame data inside the network buffer
- */
- eth_hdr = (ETH_HDR *) cur_nbuf->data;
-
- /*
- * Pass the received packet up the network stack if the
- * protocol is supported in our network interface (NIF)
- */
- if (nif_protocol_exist(nif, eth_hdr->type))
- {
- hexdump((uint8_t *) eth_hdr, ETH_MAX_FRM);
- nif_protocol_handler(nif, eth_hdr->type, cur_nbuf);
- }
- else
- {
- nbuf_free(cur_nbuf);
- dbg("got unsupported packet %d, trashed it\r\n", eth_hdr->type);
- }
- }
- else
- {
- /*
- * This frame isn't a keeper
- * Reset the status and length, but don't need to get another
- * buffer since we are trashing the data in the current one
- */
- pRxBD->length = RX_BUF_SZ;
- pRxBD->status &= (RX_BD_W | RX_BD_INTERRUPT);
- pRxBD->status |= RX_BD_E;
-
- /*
- * Move the current buffer from the beginning to the end of the
- * Rx ring queue
- */
- cur_nbuf = nbuf_remove(NBUF_RX_RING);
- nbuf_add(NBUF_RX_RING, cur_nbuf);
-
- /*
- * Let the DMA know that there are new Rx BDs (in case
- * it is waiting for an empty one)
- */
- fec_rx_continue(ch);
- }
- }
-}
-
-void fec0_rx_frame(void)
-{
- extern NIF nif1;
-
- fec_rx_frame(0, &nif1);
-}
-
-void fec1_rx_frame(void)
-{
- extern NIF nif1;
-
- fec_rx_frame(1, &nif1);
-}
-
-/*
- * Start the FEC Tx DMA task
- *
- * Parameters:
- * ch FEC channel
- * txbd First Tx buffer descriptor in the chain
- */
-void fec_tx_start(uint8_t ch, int8_t *txbd)
-{
- uint32_t initiator;
- int channel;
- void fec0_tx_frame(void);
- void fec1_tx_frame(void);
-#ifdef DBG_FEC
- int res;
-#endif
-
- /*
- * Make the initiator assignment
- */
-#ifdef DBG_FEC
- res =
-#else
- (void)
-#endif
- dma_set_initiator(DMA_FEC_TX(ch));
- dbg("dma_set_initiator(%d) = %d\r\n", ch, res);
-
- /*
- * Grab the initiator number
- */
- initiator = dma_get_initiator(DMA_FEC_TX(ch));
- dbg("dma_get_initiator(%d) = %d\r\n", ch, initiator);
-
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_set_channel(DMA_FEC_TX(ch),
- (ch == 0) ? fec0_tx_frame : fec1_tx_frame);
- dbg("dma_set_channel(%d, ...) = %d\r\n", ch, channel);
-
- /*
- * Start the Tx DMA task
- */
- MCD_startDma(channel,
- (s8 *) txbd,
- 0,
- (s8 *) MCF_FEC_FECTFDR(ch),
- 0,
- ETH_MTU,
- 0,
- initiator,
- FECTX_DMA_PRI(ch),
- 0
- | MCD_FECTX_DMA
- | MCD_INTERRUPT
- | MCD_TT_FLAGS_CW
- | MCD_TT_FLAGS_RL
- | MCD_TT_FLAGS_SP
- ,
- 0
- | MCD_NO_CSUM
- | MCD_NO_BYTE_SWAP
- );
- dbg("DMA tx task started\r\n");
-}
-
-/*
- * Continue the Tx DMA task
- *
- * This routine is called after the DMA task has halted after
- * encountering an Tx buffer descriptor that wasn't marked as
- * ready. There is no harm in calling the continue DMA routine
- * if the DMA was not paused.
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_tx_continue(uint8_t ch)
-{
- int channel;
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_TX(ch));
- dbg("dma_get_channel(DMA_FEC_TX(%d)) = %d\r\n", ch, channel);
-
- /*
- * Continue/restart the DMA task
- */
- MCD_continDma(channel);
- dbg("DMA TX task continue\r\n");
-}
-
-/*
- * Stop all transmissions on the selected FEC and kill the DMA task
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_tx_stop(uint8_t ch)
-{
- uint32_t mask;
- int channel;
-
-
- /* Save off the EIMR value */
- mask = MCF_FEC_EIMR(ch);
-
- /* Mask all interrupts */
- MCF_FEC_EIMR(ch) = 0;
-
- /* If the Ethernet is still enabled... */
- if (MCF_FEC_ECR(ch) & MCF_FEC_ECR_ETHER_EN)
- {
- /* Issue the Graceful Transmit Stop */
- MCF_FEC_TCR(ch) |= MCF_FEC_TCR_GTS;
-
- /* Wait for the Graceful Stop Complete interrupt */
- while (!(MCF_FEC_EIR(ch) & MCF_FEC_EIR_GRA))
- {
- if (!(MCF_FEC_ECR(ch) & MCF_FEC_ECR_ETHER_EN))
- break;
- }
-
- /* Clear the Graceful Stop Complete interrupt */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_GRA;
- }
-
- /*
- * Determine the DMA channel running the task for the
- * selected FEC
- */
- channel = dma_get_channel(DMA_FEC_TX(ch));
-
- /* Kill the FEC Tx DMA task */
- MCD_killDma(channel);
-
- /*
- * Free up the FEC requestor from the software maintained
- * initiator list
- */
- dma_free_initiator(DMA_FEC_TX(ch));
-
- /* Free up the DMA channel */
- dma_free_channel(DMA_FEC_TX(ch));
-
- /* Restore the interrupt mask register value */
- MCF_FEC_EIMR(ch) = mask;
-}
-
-/*
- * Trasmit Frame interrupt handler - this handler is called by the
- * DMA interrupt handler indicating that a packet was successfully
- * transferred to the Tx FIFO.
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_tx_frame(uint8_t ch)
-{
- FECBD *pTxBD;
- NBUF *pNbuf;
- bool is_empty = true;
-
- dbg("\r\n");
- while ((pTxBD = fecbd_tx_free(ch)) != NULL)
- {
- fec_log[ch].dtxf++;
-
- /*
- * Grab the network buffer associated with this buffer descriptor
- */
- pNbuf = nbuf_remove(NBUF_TX_RING);
-
- /*
- * Free up the network buffer that was just transmitted
- */
- nbuf_free(pNbuf);
- dbg("free buffer %p from TX ring\r\n", pNbuf);
-
- /*
- * Re-initialize the Tx BD
- */
- pTxBD->data = NULL;
- pTxBD->length = 0;
- is_empty = false;
-
- }
- if (is_empty)
- dbg("transmit queue was empty!\r\n");
-}
-
-void fec0_tx_frame(void)
-{
- fec_tx_frame(0);
-}
-
-void fec1_tx_frame(void)
-{
- fec_tx_frame(1);
-}
-
-/*
- * Send a packet out the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * nif Pointer to Network Interface (NIF) structure
- * dst Destination MAC Address
- * src Source MAC Address
- * type Ethernet Frame Type
- * length Number of bytes to be transmitted (doesn't include type,
- * src, or dest byte count)
- * pkt Pointer packet network buffer
- *
- * Return Value:
- * 1 success
- * 0 otherwise
- */
-int fec_send(uint8_t ch, NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- FECBD *pTxBD;
-
- /* Check the length */
- if ((nbuf->length + ETH_HDR_LEN) > ETH_MTU)
- {
- dbg("nbuf->length (%d) + ETH_HDR_LEN (%d) exceeds ETH_MTU (%d)\r\n",
- nbuf->length, ETH_HDR_LEN, ETH_MTU);
- return 0;
- }
-
- /*
- * Copy the destination address, source address, and Ethernet
- * type into the packet
- */
- memcpy(&nbuf->data[0], dst, 6);
- memcpy(&nbuf->data[6], src, 6);
- memcpy(&nbuf->data[12], &type, 2);
-
- /*
- * Grab the next available Tx Buffer Descriptor
- */
- while ((pTxBD = fecbd_tx_alloc(ch)) == NULL) {};
-
- /*
- * Put the network buffer into the Tx waiting queue
- */
- nbuf_add(NBUF_TX_RING, nbuf);
-
- /*
- * Setup the buffer descriptor for transmission
- */
- pTxBD->data = nbuf->data;
- pTxBD->length = nbuf->length + ETH_HDR_LEN;
- pTxBD->status |= (TX_BD_R | TX_BD_L);
-
- /*
- * Continue the Tx DMA task (in case it was waiting for a new
- * TxBD to be ready
- */
- fec_tx_continue(ch);
-
- return 1;
-}
-
-int fec0_send(NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- return fec_send(0, nif, dst, src, type, nbuf);
-}
-
-int fec1_send(NIF *nif, uint8_t *dst, uint8_t *src, uint16_t type, NBUF *nbuf)
-{
- return fec_send(1, nif, dst, src, type, nbuf);
-}
-
-/*
- * Enable interrupts on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- * pri Interrupt Priority
- * lvl Interrupt Level
- */
-void fec_irq_enable(uint8_t ch, uint8_t lvl, uint8_t pri)
-{
- /*
- * Setup the appropriate ICR
- */
- MCF_INTC_ICR((ch == 0) ? 39 : 38) = MCF_INTC_ICR_IP(pri) |
- MCF_INTC_ICR_IL(lvl);
-
- /*
- * Clear any pending FEC interrupt events
- */
- MCF_FEC_EIR(ch) = MCF_FEC_EIR_CLEAR_ALL;
-
- /*
- * Unmask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_UNMASK_ALL;
-
- /*
- * Unmask the FEC interrupt in the interrupt controller
- */
- if (ch == 0)
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK39;
- else
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK38;
-}
-
-
-/*
- * Disable interrupts on the selected FEC
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_irq_disable(uint8_t ch)
-{
-
- /*
- * Mask all FEC interrupts
- */
- MCF_FEC_EIMR(ch) = MCF_FEC_EIMR_MASK_ALL;
-
- /*
- * Mask the FEC interrupt in the interrupt controller
- */
- if (ch == 0)
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK39;
- else
- MCF_INTC_IMRH |= MCF_INTC_IMRH_INT_MASK38;
-}
-
-/*
- * FEC interrupt handler
- * All interrupts are multiplexed into a single vector for each
- * FEC module. The lower level interrupt handler passes in the
- * channel to this handler. Note that the receive interrupt is
- * generated by the Multi-channel DMA FEC Rx task.
- *
- * Parameters:
- * ch FEC channel
- */
-static bool fec_irq_handler(uint8_t ch)
-{
- uint32_t event, eir;
-
- /*
- * Determine which interrupt(s) asserted by AND'ing the
- * pending interrupts with those that aren't masked.
- */
- eir = MCF_FEC_EIR(ch);
- event = eir & MCF_FEC_EIMR(ch);
-
- if (event != eir)
- dbg("pending but not enabled: 0x%08x\r\n", (event ^ eir));
-
- /*
- * Clear the event(s) in the EIR immediately
- */
- MCF_FEC_EIR(ch) = event;
-
- if (event & MCF_FEC_EIR_RFERR)
- {
- fec_log[ch].total++;
- fec_log[ch].rferr++;
- dbg("RFERR\r\n");
- dbg("FECRFSR%d = 0x%08x\r\n", ch, MCF_FEC_FECRFSR(ch));
- //fec_eth_stop(ch);
- }
-
- if (event & MCF_FEC_EIR_XFERR)
- {
- fec_log[ch].total++;
- fec_log[ch].xferr++;
- dbg("XFERR\r\n");
- }
-
- if (event & MCF_FEC_EIR_XFUN)
- {
- fec_log[ch].total++;
- fec_log[ch].xfun++;
- dbg("XFUN\r\n");
- //fec_eth_stop(ch);
- }
-
- if (event & MCF_FEC_EIR_RL)
- {
- fec_log[ch].total++;
- fec_log[ch].rl++;
- dbg("RL\r\n");
- }
-
- if (event & MCF_FEC_EIR_LC)
- {
- fec_log[ch].total++;
- fec_log[ch].lc++;
- dbg("LC\r\n");
- }
-
- if (event & MCF_FEC_EIR_MII)
- {
- fec_log[ch].mii++;
- dbg("MII\r\n");
- }
-
- if (event & MCF_FEC_EIR_TXF)
- {
- fec_log[ch].txf++;
- dbg("TXF\r\n");
- }
-
- if (event & MCF_FEC_EIR_GRA)
- {
- fec_log[ch].gra++;
- dbg("GRA\r\n");
- }
-
- if (event & MCF_FEC_EIR_BABT)
- {
- fec_log[ch].total++;
- fec_log[ch].babt++;
- dbg("BABT\r\n");
- }
-
- if (event & MCF_FEC_EIR_BABR)
- {
- fec_log[ch].total++;
- fec_log[ch].babr++;
- dbg("BABR\r\n");
- }
-
- if (event & MCF_FEC_EIR_HBERR)
- {
- fec_log[ch].total++;
- fec_log[ch].hberr++;
- dbg("HBERR\r\n");
- }
-
- return true;
-}
-
-/*
- * handler for FEC interrupts
- * arg2 is a pointer to the nif in this case
- */
-bool fec0_interrupt_handler(void* arg1, void* arg2)
-{
- bool res;
-
- (void) arg1; /* not used */
- (void) arg2;
-
- res = fec_irq_handler(0);
-
- return res;
-}
-
-bool fec1_interrupt_handler(void* arg1, void* arg2)
-{
- bool res;
-
- (void) arg1; /* not used */
- (void) arg2;
-
- res = fec_irq_handler(1);
-
- return res;
-}
-
-/*
- * Configure the selected Ethernet port and enable all operations
- *
- * Parameters:
- * ch FEC channel
- * trcvr Transceiver mode (MII, 7-Wire or internal loopback)
- * speed Maximum operating speed (MII only)
- * duplex Full or Half-duplex (MII only)
- * mac Physical (MAC) Address
- */
-void fec_eth_setup(uint8_t ch, uint8_t trcvr, uint8_t speed, uint8_t duplex, const uint8_t *mac)
-{
- /*
- * Disable FEC interrupts
- */
- fec_irq_disable(ch);
-
- /*
- * Initialize the event log
- */
- fec_log_init(ch);
-
- /*
- * Initialize the network buffers and fec buffer descriptors
- */
- nbuf_init();
- fecbd_init(ch);
-
- /*
- * Initialize the FEC
- */
- fec_reset(ch);
- fec_init(ch, trcvr, mac);
-
- if (trcvr == FEC_MODE_MII)
- {
- /*
- * Initialize the MII interface
- */
-#if defined(MACHINE_FIREBEE)
- if (am79c874_init(0, 0, speed, duplex))
- dbg("PHY init completed\r\n");
- else
- dbg("PHY init failed\r\n");
-#elif defined(MACHINE_M548X)
- bcm_5222_init(0, 0, speed, duplex);
-#else
- fec_mii_init(ch, SYSCLK / 1000);
-#endif /* MACHINE_FIREBEE */
- }
-
- /*
- * Initialize and enable FEC interrupts
- */
- fec_irq_enable(ch, FEC_INTC_LVL(ch), FEC_INTC_PRI(ch));
-
- /*
- * Enable the multi-channel DMA tasks
- */
- fec_rx_start(ch, (int8_t*) fecbd_get_start(ch, Rx));
- fec_tx_start(ch, (int8_t*) fecbd_get_start(ch, Tx));
-
- /*
- * Enable the FEC channel
- */
- MCF_FEC_ECR(ch) |= MCF_FEC_ECR_ETHER_EN;
-}
-
-/*
- * Reset the selected Ethernet port
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_eth_reset(uint8_t ch)
-{
- // To do
-}
-
-
-/*
- * Stop the selected Ethernet port
- *
- * Parameters:
- * ch FEC channel
- */
-void fec_eth_stop(uint8_t ch)
-{
- int level;
-
- /*
- * Disable interrupts
- */
- level = set_ipl(7);
-
- dbg("fec %d stopped\r\n", ch);
- /*
- * Gracefully disable the receiver and transmitter
- */
- fec_tx_stop(ch);
- fec_rx_stop(ch);
-
- /*
- * Disable FEC interrupts
- */
- fec_irq_disable(ch);
-
- /*
- * Disable the FEC channel
- */
- MCF_FEC_ECR(ch) &= ~MCF_FEC_ECR_ETHER_EN;
-
-#ifdef DBG_FEC
- nbuf_debug_dump();
- fec_log_dump(ch);
-#endif
-
- /*
- * Flush the network buffers
- */
- nbuf_flush();
-
- /*
- * Restore interrupt level
- */
- set_ipl(level);
-}
-
diff --git a/BaS_gcc/net/fecbd.c b/BaS_gcc/net/fecbd.c
deleted file mode 100644
index c309c5b..0000000
--- a/BaS_gcc/net/fecbd.c
+++ /dev/null
@@ -1,239 +0,0 @@
-/*
- * File: fecbd.c
- * Purpose: Provide a simple buffer management driver
- *
- * Notes:
- */
-#include "MCD_dma.h"
-#include "fecbd.h"
-#include "nbuf.h"
-#include "eth.h"
-#include "bas_printf.h"
-#include
-
-//#define DBG_FECBD
-#ifdef DBG_FECBD
-#define dbg(format, arg...) do { xprintf("DEBUG: " format, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_FECBD */
-
-/*
- * This implements a simple static buffer descriptor
- * ring for each channel and each direction
- *
- * FEC Buffer Descriptors need to be aligned to a 4-byte boundary.
- * In order to accomplish this, data is over-allocated and manually
- * aligned at runtime
- *
- * Enough space is allocated for each of the two FEC channels to have
- * NRXBD Rx BDs and NTXBD Tx BDs
- *
- */
-
-static FECBD unaligned_bds[(2 * NRXBD) + (2 * NTXBD) + 1];
-
-/*
- * These pointers are used to reference into the chunck of data set
- * aside for buffer descriptors
- */
-static FECBD *RxBD;
-static FECBD *TxBD;
-
-/*
- * Macros to easier access to the BD ring
- */
-#define RxBD(ch,i) RxBD[(ch * NRXBD) + i]
-#define TxBD(ch,i) TxBD[(ch * NTXBD) + i]
-
-/*
- * Buffer descriptor indexes
- */
-static int iTxbd_new;
-static int iTxbd_old;
-static int iRxbd;
-
-/*
- * Initialize the FEC Buffer Descriptor ring
- * Buffer Descriptor format is defined by the MCDAPI
- *
- * Parameters:
- * ch FEC channel
- */
-void fecbd_init(uint8_t ch)
-{
- NBUF *nbuf;
- int i;
-
- dbg("\r\n");
-
- /*
- * Align Buffer Descriptors to 4-byte boundary
- */
- RxBD = (FECBD *)(((int) unaligned_bds + 3) & 0xFFFFFFFC);
- TxBD = (FECBD *)((int) RxBD + (sizeof(FECBD) * 2 * NRXBD));
-
- dbg("initialise RX buffer descriptor ring\r\n");
-
- /*
- * Initialize the Rx Buffer Descriptor ring
- */
- for (i = 0; i < NRXBD; ++i)
- {
- /* Grab a network buffer from the free list */
- nbuf = nbuf_alloc();
- if (nbuf == NULL)
- {
- dbg("could not allocate network buffer\r\n");
- return;
- }
-
- /* Initialize the BD */
- RxBD(ch,i).status = RX_BD_E | RX_BD_INTERRUPT;
- RxBD(ch,i).length = RX_BUF_SZ;
- RxBD(ch,i).data = nbuf->data;
-
- /* Add the network buffer to the Rx queue */
- nbuf_add(NBUF_RX_RING, nbuf);
- }
-
- /*
- * Set the WRAP bit on the last one
- */
- RxBD(ch, i - 1).status |= RX_BD_W;
-
- dbg("initialise TX buffer descriptor ring\r\n");
-
- /*
- * Initialize the Tx Buffer Descriptor ring
- */
- for (i = 0; i < NTXBD; ++i)
- {
- TxBD(ch, i).status = TX_BD_INTERRUPT;
- TxBD(ch, i).length = 0;
- TxBD(ch, i).data = NULL;
- }
-
- /*
- * Set the WRAP bit on the last one
- */
- TxBD(ch, i - 1).status |= TX_BD_W;
-
- /*
- * Initialize the buffer descriptor indexes
- */
- iTxbd_new = iTxbd_old = iRxbd = 0;
-}
-
-void fecbd_dump(uint8_t ch)
-{
-#ifdef DBG_FECBD
- int i;
-
- xprintf("\n------------ FEC%d BDs -----------\n",ch);
- xprintf("RxBD Ring\n");
- for (i = 0; i < NRXBD; i++)
- {
- xprintf("%02d: BD Addr=0x%08x, Ctrl=0x%04x, Lgth=%04d, DataPtr=0x%08x\n",
- i, &RxBD(ch, i),
- RxBD(ch, i).status,
- RxBD(ch, i).length,
- RxBD(ch, i).data);
- }
- xprintf("TxBD Ring\n");
- for (i = 0; i < NTXBD; i++)
- {
- xprintf("%02d: BD Addr=0x%08x, Ctrl=0x%04x, Lgth=%04d, DataPtr=0x%08x\n",
- i, &TxBD(ch, i),
- TxBD(ch, i).status,
- TxBD(ch, i).length,
- TxBD(ch, i).data);
- }
- xprintf("--------------------------------\n\n");
-#endif /* DBG_FECBD */
-}
-
-/*
- * Return the address of the first buffer descriptor in the ring.
- *
- * Parameters:
- * ch FEC channel
- * direction Rx or Tx Macro
- *
- * Return Value:
- * The start address of the selected Buffer Descriptor ring
- */
-uint32_t fecbd_get_start(uint8_t ch, uint8_t direction)
-{
- switch (direction)
- {
- case Rx:
- return (uint32_t)((int)RxBD + (ch * sizeof(FECBD) * NRXBD));
- case Tx:
- default:
- return (uint32_t)((int)TxBD + (ch * sizeof(FECBD) * NTXBD));
- }
-}
-
-FECBD *fecbd_rx_alloc(uint8_t ch)
-{
- int i = iRxbd;
-
- /* Check to see if the ring of BDs is full */
- if (RxBD(ch, i).status & RX_BD_E)
- return NULL;
-
- /* Increment the circular index */
- iRxbd = (uint8_t)((iRxbd + 1) % NRXBD);
-
- return &RxBD(ch, i);
-}
-
-/*
- * This function keeps track of the next available Tx BD in the ring
- *
- * Parameters:
- * ch FEC channel
- *
- * Return Value:
- * Pointer to next available buffer descriptor.
- * NULL if the BD ring is full
- */
-FECBD *fecbd_tx_alloc(uint8_t ch)
-{
- int i = iTxbd_new;
-
- /* Check to see if the ring of BDs is full */
- if (TxBD(ch, i).status & TX_BD_R)
- return NULL;
-
- /* Increment the circular index */
- iTxbd_new = (uint8_t)((iTxbd_new + 1) % NTXBD);
-
- return &TxBD(ch, i);
-}
-
-/*
- * This function keeps track of the Tx BDs that have already been
- * processed by the FEC
- *
- * Parameters:
- * ch FEC channel
- *
- * Return Value:
- * Pointer to the oldest buffer descriptor that has already been sent
- * by the FEC, NULL if the BD ring is empty
- */
-FECBD *fecbd_tx_free(uint8_t ch)
-{
- int i = iTxbd_old;
-
- /* Check to see if the ring of BDs is empty */
- if ((TxBD(ch, i).data == NULL) || (TxBD(ch, i).status & TX_BD_R))
- return NULL;
-
- /* Increment the circular index */
- iTxbd_old = (uint8_t)((iTxbd_old + 1) % NTXBD);
-
- return &TxBD(ch, i);
-}
diff --git a/BaS_gcc/net/ip.c b/BaS_gcc/net/ip.c
deleted file mode 100644
index b3951ce..0000000
--- a/BaS_gcc/net/ip.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/*
- * File: ip.c
- * Purpose: Internet Protcol device driver
- *
- * Notes:
- *
- * Modifications:
- */
-#include
-#include "net.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-
-//#define IP_DEBUG
-#if defined(IP_DEBUG)
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif
-
-void ip_init(IP_INFO *info, IP_ADDR_P myip, IP_ADDR_P gateway, IP_ADDR_P netmask)
-{
- int index;
-
- for (index = 0; index < sizeof(IP_ADDR); index++)
- {
- info->myip[index] = myip[index];
- info->gateway[index] = gateway[index];
- info->netmask[index] = netmask[index];
- info->broadcast[index] = 0xFF;
- }
-
- info->rx = 0;
- info->rx_unsup = 0;
- info->tx = 0;
- info->err = 0;
-}
-
-uint8_t *ip_get_myip(IP_INFO *info)
-{
- if (info != 0)
- {
- return (uint8_t *) &info->myip[0];
- }
- dbg("info is NULL!\n\t");
- return 0;
-}
-
-int ip_addr_compare(IP_ADDR_P addr1, IP_ADDR_P addr2)
-{
- int i;
-
- for (i = 0; i < sizeof(IP_ADDR); i++)
- {
- if (addr1[i] != addr2[i])
- return 0;
- }
- return 1;
-}
-
-uint8_t *ip_resolve_route(NIF *nif, IP_ADDR_P destip)
-{
- /*
- * This function determines whether or not an outgoing IP
- * packet needs to be transmitted on the local net or sent
- * to the router for transmission.
- */
- IP_INFO *info;
- IP_ADDR mask, result;
- IP_ADDR bc = { 255, 255, 255, 255 };
- int i;
-
- info = nif_get_protocol_info(nif, ETH_FRM_IP);
-
- if (memcmp(destip, bc, 4) == 0)
- {
- dbg("destip is broadcast address, no gateway needed\r\n");
- return destip;
- }
-
- /* create mask for local IP */
- for (i = 0; i < sizeof(IP_ADDR); i++)
- {
- mask[i] = info->myip[i] & info->netmask[i];
- }
-
- /* apply mask to the destination IP */
- for (i = 0; i < sizeof(IP_ADDR); i++)
- {
- result[i] = mask[i] & destip[i];
- }
-
- /* See if destination IP is local or not */
- if (ip_addr_compare(mask, result))
- {
- /* The destination IP is on the local net */
- return arp_resolve(nif, ETH_FRM_IP, destip);
- }
- else
- {
- /* The destination IP is not on the local net */
- return arp_resolve(nif, ETH_FRM_IP, info->gateway);
- }
-}
-
-int ip_send(NIF *nif, uint8_t *dest, uint8_t *src, uint8_t protocol, NBUF *pNbuf)
-{
- /*
- * This function assembles an IP datagram and passes it
- * onto the hardware to be sent over the network.
- */
- uint8_t *route;
- ip_frame_hdr *ipframe;
-
- /*
- * Construct the IP header
- */
- ipframe = (ip_frame_hdr*) &pNbuf->data[IP_HDR_OFFSET];
-
- /* IP version 4, Internet Header Length of 5 32-bit words */
- ipframe->version_ihl = 0x45;
-
- /* Type of Service == 0, normal and routine */
- ipframe->service_type = 0x00;
-
- /* Total length of data */
- ipframe->total_length = (uint16_t) (pNbuf->length + IP_HDR_SIZE);
-
- /* User defined identification */
- ipframe->identification = 0x0000;
-
- /* Fragment Flags and Offset -- Don't fragment, last frag */
- ipframe->flags_frag_offset = 0x0000;
-
- /* Time To Live */
- ipframe->ttl = 0xFF;
-
- /* Protocol */
- ipframe->protocol = protocol;
-
- /* Checksum, computed later, zeroed for computation */
- ipframe->checksum = 0x0000;
-
- /* source IP address */
- ipframe->source_addr[0] = src[0];
- ipframe->source_addr[1] = src[1];
- ipframe->source_addr[2] = src[2];
- ipframe->source_addr[3] = src[3];
-
- /* dest IP address */
- ipframe->dest_addr[0] = dest[0];
- ipframe->dest_addr[1] = dest[1];
- ipframe->dest_addr[2] = dest[2];
- ipframe->dest_addr[3] = dest[3];
-
- /* Compute checksum */
- ipframe->checksum = ip_chksum((uint16_t *) ipframe, IP_HDR_SIZE);
-
- /* Increment the packet length by the size of the IP header */
- pNbuf->length += IP_HDR_SIZE;
-
- /*
- * Determine the hardware address of the recipient
- */
- IP_ADDR bc = { 255, 255, 255, 255};
- if (memcmp(bc, dest, 4) != 0)
- {
- route = ip_resolve_route(nif, dest);
- if (route == NULL)
- {
- dbg("Unable to locate %d.%d.%d.%d\r\n",
- dest[0], dest[1], dest[2], dest[3]);
- return 0;
- }
- }
- else
- {
- route = bc;
- dbg("route = broadcast\r\n");
- dbg("nif = %p\r\n", nif);
- dbg("nif->send = %p\r\n", nif->send);
- }
-
- return nif->send(nif, route, &nif->hwa[0], ETH_FRM_IP, pNbuf);
-}
-
-#if defined(DEBUG_PRINT)
-void dump_ip_frame(ip_frame_hdr *ipframe)
-{
- xprintf("Version: %02X\n", ((ipframe->version_ihl & 0x00f0) >> 4));
- xprintf("IHL: %02X\n", ipframe->version_ihl & 0x000f);
- xprintf("Service: %02X\n", ipframe->service_type);
- xprintf("Length: %04X\n", ipframe->total_length);
- xprintf("Ident: %04X\n", ipframe->identification);
- xprintf("Flags: %02X\n", ((ipframe->flags_frag_offset & 0xC000) >> 14));
- xprintf("Frag: %04X\n", ipframe->flags_frag_offset & 0x3FFF);
- xprintf("TTL: %02X\n", ipframe->ttl);
- xprintf("Protocol: %02X\n", ipframe->protocol);
- xprintf("Chksum: %04X\n", ipframe->checksum);
- xprintf("Source : %d.%d.%d.%d\n",
- ipframe->source_addr[0],
- ipframe->source_addr[1],
- ipframe->source_addr[2],
- ipframe->source_addr[3]);
- xprintf("Dest : %d.%d.%d.%d\n",
- ipframe->dest_addr[0],
- ipframe->dest_addr[1],
- ipframe->dest_addr[2],
- ipframe->dest_addr[3]);
- xprintf("Options: %08X\n", ipframe->options);
-}
-#endif
-
-
-uint16_t ip_chksum(uint16_t *data, int num)
-{
- int chksum, ichksum;
- uint16_t temp;
-
- chksum = 0;
- num = num >> 1; /* from bytes to words */
- for (; num; num--, data++)
- {
- temp = *data;
- ichksum = chksum + temp;
- ichksum = ichksum & 0x0000FFFF;
- if ((ichksum < temp) || (ichksum < chksum))
- {
- ichksum += 1;
- ichksum = ichksum & 0x0000FFFF;
- }
- chksum = ichksum;
- }
- return (uint16_t) ~chksum;
-}
-
-static int validate_ip_hdr(NIF *nif, ip_frame_hdr *ipframe)
-{
- int index, chksum;
- IP_INFO *info;
-
- /*
- * Check the IP Version
- */
- if (IP_VERSION(ipframe) != 4)
- return 0;
-
- /*
- * Check Internet Header Length
- */
- if (IP_IHL(ipframe) < 5)
- return 0;
-
- /*
- * Check the destination IP address
- */
- info = nif_get_protocol_info(nif,ETH_FRM_IP);
- for (index = 0; index < sizeof(IP_ADDR); index++)
- if (info->myip[index] != ipframe->dest_addr[index])
- return 0;
-
- /*
- * Check the checksum
- */
- chksum = (int)((uint16_t) IP_CHKSUM(ipframe));
- IP_CHKSUM(ipframe) = 0;
-
- if (ip_chksum((uint16_t *) ipframe, IP_IHL(ipframe) * 4) != chksum)
- return 0;
-
- IP_CHKSUM(ipframe) = (uint16_t) chksum;
-
- return 1;
-}
-
-void ip_handler(NIF *nif, NBUF *pNbuf)
-{
- /*
- * IP packet handler
- */
- ip_frame_hdr *ipframe;
-
- dbg("packet received\r\n");
-
- ipframe = (ip_frame_hdr *) &pNbuf->data[pNbuf->offset];
-
- /*
- * Verify valid IP header and destination IP
- */
- if (!validate_ip_hdr(nif, ipframe))
- {
- dbg("not a valid IP packet!\r\n");
-
- nbuf_free(pNbuf);
- return;
- }
-
- /*
- * Call the appriopriate handler
- */
- switch (IP_PROTOCOL(ipframe))
- {
- case IP_PROTO_ICMP:
- // FIXME: icmp_handler(nif, pNbuf);
- break;
- case IP_PROTO_UDP:
- udp_handler(nif,pNbuf);
- break;
- default:
- dbg("no protocol handler registered for protocol %d\r\n",
- __FUNCTION__, IP_PROTOCOL(ipframe));
- nbuf_free(pNbuf);
- break;
- }
- return;
-}
diff --git a/BaS_gcc/net/nbuf.c b/BaS_gcc/net/nbuf.c
deleted file mode 100644
index ce8de27..0000000
--- a/BaS_gcc/net/nbuf.c
+++ /dev/null
@@ -1,224 +0,0 @@
-/*
- * File: nbuf.c
- * Purpose: Implementation of network buffer scheme.
- *
- * Notes:
- */
-#include "queue.h"
-#include "net.h"
-#include "driver_mem.h"
-#include "exceptions.h"
-#include "bas_types.h"
-#include "bas_printf.h"
-
-
-#define DBG_NBUF
-#if defined(DBG_NBUF)
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_NBUF */
-/*
- * Queues used for network buffer storage
- */
-QUEUE nbuf_queue[NBUF_MAXQ];
-
-/*
- * Some devices require line-aligned buffers. In order to accomplish
- * this, the nbuf data is over-allocated and adjusted. The following
- * array keeps track of the original data pointer returned by malloc
- */
-uint8_t *unaligned_buffers[NBUF_MAX];
-
-/*
- * Initialize all the network buffer queues
- *
- * Return Value:
- * 0 success
- * 1 failure
- */
-int nbuf_init(void)
-{
- int i;
- NBUF *nbuf;
-
- for (i = 0; i < NBUF_MAXQ; ++i)
- {
- /* Initialize all the queues */
- queue_init(&nbuf_queue[i]);
- }
-
- dbg("Creating %d net buffers of %d bytes\r\n", NBUF_MAX, NBUF_SZ);
-
- for (i = 0; i < NBUF_MAX; ++i)
- {
- /* Allocate memory for the network buffer structure */
- nbuf = (NBUF *) driver_mem_alloc(sizeof(NBUF));
- if (!nbuf)
- {
- xprintf("failed to allocate nbuf\r\n");
- return 1;
- }
-
- /* Allocate memory for the actual data */
- unaligned_buffers[i] = driver_mem_alloc(NBUF_SZ + 16);
- nbuf->data = (uint8_t *)((uint32_t)(unaligned_buffers[i] + 15) & 0xFFFFFFF0);
- if (!nbuf->data)
- {
- return 1;
- }
-
- /* Initialize the network buffer */
- nbuf->offset = 0;
- nbuf->length = 0;
-
- /* Add the network buffer to the free list */
- queue_add(&nbuf_queue[NBUF_FREE], (QNODE *)nbuf);
- }
-
- dbg("NBUF allocation complete\r\n");
-
- return 0;
-}
-
-/*
- * Return all the allocated memory to the heap
- */
-void nbuf_flush(void)
-{
- NBUF *nbuf;
- int i;
- int level = set_ipl(7);
- int n = 0;
-
- for (i = 0; i < NBUF_MAX; ++i)
- driver_mem_free((uint8_t *) unaligned_buffers[i]);
-
- for (i = 0; i < NBUF_MAXQ; ++i)
- {
- while ((nbuf = (NBUF *) queue_remove(&nbuf_queue[i])) != NULL)
- {
- driver_mem_free(nbuf);
- ++n;
- }
- }
- set_ipl(level);
-}
-
-/*
- * Allocate a network buffer from the free list
- *
- * Return Value:
- * Pointer to a free network buffer
- * NULL if none are available
- */
-NBUF *nbuf_alloc(void)
-{
- NBUF *nbuf;
- int level = set_ipl(7);
-
- nbuf = (NBUF *) queue_remove(&nbuf_queue[NBUF_FREE]);
- set_ipl(level);
-
- return nbuf;
-}
-
-/*
- * Add the specified network buffer back to the free list
- *
- * Parameters:
- * nbuf Buffer to add back to the free list
- */
-void nbuf_free(NBUF *nbuf)
-{
- int level = set_ipl(7);
-
- nbuf->offset = 0;
- nbuf->length = NBUF_SZ;
- queue_add(&nbuf_queue[NBUF_FREE],(QNODE *) nbuf);
-
- set_ipl(level);
-}
-
-/*
- * Remove a network buffer from the specified queue
- *
- * Parameters:
- * q The index that identifies the queue to pull the buffer from
- */
-NBUF *nbuf_remove(int q)
-{
- NBUF *nbuf;
- int level = set_ipl(7);
-
- nbuf = (NBUF *) queue_remove(&nbuf_queue[q]);
- set_ipl(level);
-
- return nbuf;
-}
-
-/*
- * Add a network buffer to the specified queue
- *
- * Parameters:
- * q The index that identifies the queue to add the buffer to
- */
-void nbuf_add(int q, NBUF *nbuf)
-{
- int level = set_ipl(7);
-
- queue_add(&nbuf_queue[q], (QNODE *) nbuf);
- set_ipl(level);
-}
-
-/*
- * Put all the network buffers back into the free list
- */
-void nbuf_reset(void)
-{
- NBUF *nbuf;
- int i;
- int level = set_ipl(7);
-
- for (i = 1; i < NBUF_MAXQ; ++i)
- {
- while ((nbuf = nbuf_remove(i)) != NULL)
- nbuf_free(nbuf);
- }
- set_ipl(level);
-}
-
-/*
- * Display all the nbuf queues
- */
-void nbuf_debug_dump(void)
-{
-#ifdef DBG_NBUF
- NBUF *nbuf;
- int i;
- int j;
- int level;
-
- level = set_ipl(7);
-
- for (i = 0; i < NBUF_MAXQ; ++i)
- {
- dbg("\r\n\r\nQueue #%d\r\n\r\n", i);
- dbg("\tBuffer Location\tOffset\tLength\r\n");
- dbg("--------------------------------------\r\n");
- j = 0;
- nbuf = (NBUF *) queue_peek(&nbuf_queue[i]);
-
- while (nbuf != NULL)
- {
- dbg("%d\t0x%08x\t0x%04x\t0x%04x\r\n", j++, nbuf->data,
- nbuf->offset,
- nbuf->length);
- nbuf = (NBUF *) nbuf->node.next;
- }
- }
- dbg("\r\n");
-
- set_ipl(level);
-#endif /* DBG_NBUF */
-}
diff --git a/BaS_gcc/net/net_timer.c b/BaS_gcc/net/net_timer.c
deleted file mode 100644
index 747b0a0..0000000
--- a/BaS_gcc/net/net_timer.c
+++ /dev/null
@@ -1,202 +0,0 @@
-/*
- * File: net_timer.c
- * Purpose: Provide a timer use by the BaS network as a timeout
- * indicator
- *
- * Notes:
- */
-
-#include "net_timer.h"
-#include "bas_printf.h"
-#include "MCF5475.h"
-#include "interrupts.h"
-
-//#define DBG_TMR
-#ifdef DBG_TMR
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_TMR */
-
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error unknown machine!
-#endif
-
-static NET_TIMER net_timer[4] =
-{
- {0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0},
- {0, 0, 0, 0, 0, 0, 0}
-};
-
-
-bool timer_default_isr(void *not_used, NET_TIMER *t)
-{
- (void) not_used;
-
- /*
- * Clear the pending event
- */
- MCF_GPT_GMS(t->ch) = 0;
-
- dbg("timer isr called for timer channel %d\r\n");
-
- /*
- * Clear the reference - the desired seconds have expired
- */
- t->reference = 0;
-
- return 1;
-}
-
-void timer_irq_enable(uint8_t ch)
-{
- /*
- * Setup the appropriate ICR
- */
- MCF_INTC_ICR(TIMER_VECTOR(ch) - 64) = MCF_INTC_ICR_IP(net_timer[ch].pri) |
- MCF_INTC_ICR_IL(net_timer[ch].lvl);
-
- /*
- * Unmask the FEC interrupt in the interrupt controller
- */
- if (ch == 3)
- {
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK59;
- }
- else if (ch == 2)
- {
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK60;
- }
- else if (ch == 1)
- {
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK61;
- }
- else
- {
- MCF_INTC_IMRH &= ~MCF_INTC_IMRH_INT_MASK62;
- }
-}
-
-bool timer_set_secs(uint8_t ch, uint32_t secs)
-{
- uint16_t timeout;
-
- /*
- * Reset the timer
- */
- MCF_GPT_GMS(ch) = 0;
-
- /*
- * Get the timeout in seconds
- */
- timeout = (uint16_t)(secs * net_timer[ch].cnt);
-
- /*
- * Set the reference indicating that we have not yet reached the
- * desired timeout
- */
- net_timer[ch].reference = 1;
-
- /*
- * Enable timer interrupt to the processor
- */
- timer_irq_enable(ch);
-
- /*
- * Enable the timer using the pre-calculated values
- */
- MCF_GPT_GCIR(ch) = (0
- | MCF_GPT_GCIR_CNT(timeout)
- | MCF_GPT_GCIR_PRE(net_timer[ch].pre)
- );
- MCF_GPT_GMS(ch) = net_timer[ch].gms;
-
- return true;
-}
-
-uint32_t timer_get_reference(uint8_t ch)
-{
- return (uint32_t) net_timer[ch].reference;
-}
-
-bool timer_init(uint8_t ch, uint8_t lvl, uint8_t pri)
-{
- /*
- * Initialize the timer to expire after one second
- *
- * This routine should only be called by the project (board) specific
- * initialization code.
- */
- if (!((ch <= 3) && (lvl <= 7) && (lvl >= 1) && (pri <= 7)))
- {
- dbg("illegal parameters (ch=%d, lvl=%d, pri=%d)\r\n", ch, lvl, pri);
-
- return false;
- }
-
- /*
- * Reset the timer
- */
- MCF_GPT_GMS(ch) = 0;
-
- /*
- * Save off the channel, and interrupt lvl/pri information
- */
- net_timer[ch].ch = ch;
- net_timer[ch].lvl = lvl;
- net_timer[ch].pri = pri;
-
- /*
- * Register the timer interrupt handler
- */
- if (!isr_register_handler(TIMER_VECTOR(ch), 3, 0,
- (bool (*)(void *,void *)) timer_default_isr,
- NULL,
- (void *) &net_timer[ch])
- )
- {
- dbg("could not register timer interrupt handler\r\n");
- return false;
- }
- dbg("timer handler registered\r\n", __FUNCTION__);
-
- /*
- * Calculate the require CNT value to get a 1 second timeout
- *
- * 1 sec = CNT * Clk Period * PRE
- * CNT = 1 sec / (Clk Period * PRE)
- * CNT = Clk Freq / PRE
- *
- * The system clock frequency is defined as SYSTEM_CLOCK and
- * is given in MHz. We need to multiple it by 1000000 to get the
- * true value. If we assume PRE to be the maximum of 0xFFFF,
- * then the CNT value needed to achieve a 1 second timeout is
- * given by:
- *
- * CNT = SYSTEM_CLOCK * (1000000/0xFFFF)
- */
- net_timer[ch].pre = 0xFFFF;
- net_timer[ch].cnt = (uint16_t) ((SYSCLK / 1000) * (1000000 / 0xFFFF));
-
- /*
- * Save off the appropriate mode select register value
- */
- net_timer[ch].gms = (0
- | MCF_GPT_GMS_TMS_GPIO
- | MCF_GPT_GMS_IEN
- | MCF_GPT_GMS_SC
- | MCF_GPT_GMS_CE
- );
-
- return true;
-}
-
diff --git a/BaS_gcc/net/nif.c b/BaS_gcc/net/nif.c
deleted file mode 100644
index ee7dfee..0000000
--- a/BaS_gcc/net/nif.c
+++ /dev/null
@@ -1,130 +0,0 @@
-/*
- * File: nif.c
- * Purpose: Network InterFace routines
- *
- * Notes:
- *
- * Modifications:
- *
- */
-#include "net.h"
-#include "bas_types.h"
-#include "bas_printf.h"
-
-#define DBG_NIF
-#ifdef DBG_NIF
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_NIF */
-
-int nif_protocol_exist(NIF *nif, uint16_t protocol)
-{
- /*
- * This function searches the list of supported protocols
- * on the particular NIF and if a protocol handler exists,
- * true is returned. This function is useful for network cards
- * that needn't read in the entire frame but can discard frames
- * arbitrarily.
- */
- int index;
-
- for (index = 0; index < nif->num_protocol; ++index)
- {
- if (nif->protocol[index].protocol == protocol)
- {
- return true;
- }
- }
- return false;
-}
-
-void nif_protocol_handler(NIF *nif, uint16_t protocol, NBUF *pNbuf)
-{
- /*
- * This function searches the list of supported protocols
- * on the particular NIF and if a protocol handler exists,
- * the protocol handler is invoked. This routine called by
- * network device driver after receiving a frame.
- */
- int index;
-
- for (index = 0; index < nif->num_protocol; ++index)
- {
- if (nif->protocol[index].protocol == protocol)
- {
- dbg("call protocol handler for protocol %d at %p\r\n", protocol,
- nif->protocol[index].handler);
- nif->protocol[index].handler(nif,pNbuf);
- return;
- }
- }
- dbg("no protocol handler found for protocol %d\r\n", protocol);
-}
-
-void *nif_get_protocol_info(NIF *nif, uint16_t protocol)
-{
- /*
- * This function searches the list of supported protocols
- * on the particular NIF and returns a pointer to the
- * config info for 'protocol', otherwise NULL is returned.
- */
- int index;
-
- for (index = 0; index < nif->num_protocol; ++index)
- {
- if (nif->protocol[index].protocol == protocol)
- return (void *)nif->protocol[index].info;
- }
- return (void *)0;
-}
-
-int nif_bind_protocol(NIF *nif, uint16_t protocol, void (*handler)(NIF *,NBUF *),
- void *info)
-{
- /*
- * This function registers 'protocol' as a supported
- * protocol in 'nif'.
- */
- if (nif->num_protocol < (MAX_SUP_PROTO - 1))
- {
- nif->protocol[nif->num_protocol].protocol = protocol;
- nif->protocol[nif->num_protocol].handler = (void(*)(NIF *, NBUF *)) handler;
- nif->protocol[nif->num_protocol].info = info;
- ++nif->num_protocol;
-
- return true;
- }
- return false;
-}
-
-NIF *nif_init (NIF *nif)
-{
- int i;
-
- for (i = 0; i < ETH_ADDR_LEN; ++i)
- {
- nif->hwa[i] = 0;
- nif->broadcast[i] = 0xFF;
- }
-
- for (i = 0; i < MAX_SUP_PROTO; ++i)
- {
- nif->protocol[i].protocol = 0;
- nif->protocol[i].handler = 0;
- nif->protocol[i].info = 0;
- }
- nif->num_protocol = 0;
-
- nif->mtu = 0;
- nif->ch = 0;
- nif->send = 0;
-
- nif->f_rx = 0;
- nif->f_tx = 0;
- nif->f_rx_err = 0;
- nif->f_tx_err = 0;
- nif->f_err = 0;
-
- return nif;
-}
diff --git a/BaS_gcc/net/queue.c b/BaS_gcc/net/queue.c
deleted file mode 100644
index 756a9a7..0000000
--- a/BaS_gcc/net/queue.c
+++ /dev/null
@@ -1,114 +0,0 @@
-/*
- * File: queue.c
- * Purpose: Implement a first in, first out linked list
- *
- * Notes:
- */
-#include "bas_string.h"
-#include "queue.h"
-
-/*
- * Initialize the specified queue to an empty state
- *
- * Parameters:
- * q Pointer to queue structure
- */
-void queue_init(QUEUE *q)
-{
- q->head = NULL;
-}
-
-/*
- * Check for an empty queue
- *
- * Parameters:
- * q Pointer to queue structure
- *
- * Return Value:
- * 1 if Queue is empty
- * 0 otherwise
- */
-int queue_isempty(QUEUE *q)
-{
- return (q->head == NULL);
-}
-
-/*
- * Add an item to the end of the queue
- *
- * Parameters:
- * q Pointer to queue structure
- * node New node to add to the queue
- */
-void queue_add(QUEUE *q, QNODE *node)
-{
- if (queue_isempty(q))
- {
- q->head = q->tail = node;
- }
- else
- {
- q->tail->next = node;
- q->tail = node;
- }
-
- node->next = NULL;
-}
-
-/*
- * Remove and return first (oldest) entry from the specified queue
- *
- * Parameters:
- * q Pointer to queue structure
- *
- * Return Value:
- * Node at head of queue - NULL if queue is empty
- */
-QNODE *queue_remove(QUEUE *q)
-{
- QNODE *oldest;
-
- if (queue_isempty(q))
- return NULL;
-
- oldest = q->head;
- q->head = oldest->next;
- return oldest;
-}
-
-/*
- * Peek into the queue and return pointer to first (oldest) entry.
- * The queue is not modified
- *
- * Parameters:
- * q Pointer to queue structure
- *
- * Return Value:
- * Node at head of queue - NULL if queue is empty
- */
-QNODE *queue_peek(QUEUE *q)
-{
- return q->head;
-}
-
-/*
- * Move entire contents of one queue to the other
- *
- * Parameters:
- * src Pointer to source queue
- * dst Pointer to destination queue
- */
-void queue_move(QUEUE *dst, QUEUE *src)
-{
- if (queue_isempty(src))
- return;
-
- if (queue_isempty(dst))
- dst->head = src->head;
- else
- dst->tail->next = src->head;
-
- dst->tail = src->tail;
- src->head = NULL;
- return;
-}
diff --git a/BaS_gcc/net/tftp.c b/BaS_gcc/net/tftp.c
deleted file mode 100644
index ac19e25..0000000
--- a/BaS_gcc/net/tftp.c
+++ /dev/null
@@ -1,659 +0,0 @@
-/*
- * File: tftp.c
- * Purpose: Trivial File Transfer Protocol driver for reading a file
- * from a remote host.
- *
- * Notes: See RFC 1350
- *
- * Modifications:
- *
- */
-
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "net.h"
-#include "net_timer.h"
-
-#define TIMER_NETWORK 3
-
-/* The one and only TFTP connection */
-static TFTP_Connection tcxn;
-
-/* Progress Indicators */
-static char hash[] = {'-','\\','|','/'};
-static int ihash = 0;
-
-static int tftp_rwrq(void)
-{
- NBUF *pNbuf;
- RWRQ *rwrq;
- int i, j, result;
-
- pNbuf = nbuf_alloc();
- if (pNbuf == NULL)
- {
- xprintf("TFTP: tftp_rwrq() couldn't allocate Tx buffer\n");
- return 0;
- }
-
- rwrq = (RWRQ *)&pNbuf->data[TFTP_HDR_OFFSET];
-
- /* Indicate a R/WRQ */
- rwrq->opcode = tcxn.dir;
-
- /* Copy in filename */
- strcpy(&rwrq->filename_mode[0], tcxn.file);
- i = strlen(tcxn.file) + 1;
-
- /* Indicate transfer type */
- strcpy (&rwrq->filename_mode[i], OCTET);
-
- for (j = 0; j < 3; ++j)
- {
- pNbuf->length = (uint16_t)(i + strlen(OCTET) + 1 + 2);
- result = udp_send(tcxn.nif,
- tcxn.server_ip,
- tcxn.my_port,
- tcxn.server_port,
- pNbuf);
- if (result == 1)
- break;
- }
-
- if (result == 0)
- nbuf_free(pNbuf);
-
- return result;
-}
-
-static int tftp_ack(uint16_t blocknum)
-{
- ACK *ack;
- NBUF *pNbuf;
- int i, result;
-
- pNbuf = nbuf_alloc();
- if (pNbuf == NULL)
- {
- xprintf("TFTP: tftp_ack() couldn't allocate Tx buffer\n");
- return 0;
- }
-
- ack = (ACK *)&pNbuf->data[TFTP_HDR_OFFSET];
- ack->opcode = TFTP_ACK;
- ack->blocknum = blocknum;
-
- for (i = 0; i < 3; ++i)
- {
- pNbuf->length = 4;
- result = udp_send(tcxn.nif,
- tcxn.server_ip,
- tcxn.my_port,
- tcxn.server_port,
- pNbuf);
- if (result == 1)
- break;
- }
-
- if (result == 0)
- nbuf_free(pNbuf);
-
- return result;
-}
-
-static int tftp_error(uint16_t error_code, uint16_t server_port)
-{
- ERROR *err;
- NBUF *pNbuf;
- int i, result;
-
- pNbuf = nbuf_alloc();
- if (pNbuf == NULL)
- {
- xprintf("TFTP: tftp_error() couldn't allocate Tx buffer\n");
- return 0;
- }
-
- err = (ERROR *)&pNbuf->data[TFTP_HDR_OFFSET];
- err->opcode = TFTP_ERROR;
- err->code = error_code;
- err->msg[0] = '\0';
-
- for (i = 0; i < 3; ++i)
- {
- pNbuf->length = 5;
- result = udp_send(tcxn.nif,
- tcxn.server_ip,
- tcxn.my_port,
- server_port,
- pNbuf);
- if (result == 1)
- break;
- }
-
- if (result == 0)
- nbuf_free(pNbuf);
-
- return result;
-}
-
-
-void tftp_handler(NIF *nif, NBUF *pNbuf)
-{
- union TFTPpacket *tftp_pkt;
- udp_frame_hdr *udpframe;
- static int cnt;
- (void) nif;
-
- tftp_pkt = (union TFTPpacket *)&pNbuf->data[pNbuf->offset];
- udpframe = (udp_frame_hdr *)&pNbuf->data[pNbuf->offset - UDP_HDR_SIZE];
-
- switch (tftp_pkt->generic.opcode)
- {
- case TFTP_DATA:
- /* Is this the expected block number? */
- if (tftp_pkt->data.blocknum == tcxn.exp_blocknum)
- {
- /* Is this is the first data block received? */
- if (tftp_pkt->data.blocknum == 1)
- {
- /* Save the server's transfer ID */
- tcxn.server_port = UDP_SOURCE(udpframe);
-
- /* Mark the connection as open */
- tcxn.open = true;
-
- /* Start progress indicator */
- xprintf("%c", hash[0]);
- cnt = 0;
- }
- else
- {
- /* Check the server's transfer ID */
- if (tcxn.server_port != UDP_SOURCE(udpframe))
- {
- xprintf("TFTP: Invalid server port: %d\n", \
- UDP_SOURCE(udpframe));
-
- /* Send ERROR packet to source */
- tftp_error(TFTP_ERR_TID, UDP_SOURCE(udpframe));
- break;
- }
- }
-
- /* Add the buffer to the TFTP queue */
- queue_add(&tcxn.queue, (QNODE *)pNbuf);
-
- /* Update number of the next block expected */
- tcxn.exp_blocknum++;
-
- /* Increment number of bytes received counter */
- tcxn.bytes_recv += (pNbuf->length - 4);
-
- /* Update progress indicator */
- if (++cnt == 50)
- {
- ihash = (ihash + 1) % 4;
- xprintf("\r");
- xprintf("%c", hash[ihash]);
- cnt = 0;
- }
- }
- else
- {
- if (tftp_pkt->data.blocknum < tcxn.exp_blocknum)
- {
- /* Re-ACK this packet */
- tftp_ack(tftp_pkt->data.blocknum);
- }
-
- /* This is NOT the block expected */
- xprintf("Exp: %d, ", tcxn.exp_blocknum);
- xprintf("Rcv: %d\n", tftp_pkt->data.blocknum);
-
- /* Free the network buffer */
- nbuf_free(pNbuf);
- }
- break;
- case TFTP_ERROR:
- xprintf("\nTFTP Error #%d: ",tftp_pkt->error.code);
- xprintf("%s\n",tftp_pkt->error.msg);
- tcxn.error = true;
- /* Free the network buffer */
- nbuf_free(pNbuf);
- break;
- case TFTP_ACK:
- if (tftp_pkt->ack.blocknum == tcxn.exp_blocknum)
- {
- if (tftp_pkt->data.blocknum == 0)
- { /* This is the first ACK received */
-
- /* Save the server's transfer ID */
- tcxn.server_port = UDP_SOURCE(udpframe);
-
- /* Mark the connection as open */
- tcxn.open = true;
- }
- else
- { /* Check the server's transfer ID */
- if (tcxn.server_port != UDP_SOURCE(udpframe))
- {
- xprintf("TFTP: Invalid server port: %d\n", \
- UDP_SOURCE(udpframe));
-
- /*Send ERROR packet to source */
- tftp_error(TFTP_ERR_TID, UDP_SOURCE(udpframe));
- break;
- }
- }
-
- tcxn.exp_blocknum++;
- }
- else
- {
- /* This is NOT the block number expected */
- xprintf("ACK Exp: %d, ", tcxn.exp_blocknum);
- xprintf("ACK Rcv: %d\n", tftp_pkt->ack.blocknum);
- }
-
- /* Free the network buffer */
- nbuf_free(pNbuf);
- break;
- case TFTP_RRQ:
- case TFTP_WRQ:
- default:
- /* Free the network buffer */
- nbuf_free(pNbuf);
- break;
- }
-}
-
-void tftp_end(int success)
-{
- /*
- * Following a successful transfer the caller should pass in
- * true, there should have been no ERROR packets received, and
- * the connection should have been marked as closed by the
- * tftp_in_char() routine.
- */
- if (success && !tcxn.error && (tcxn.open == false))
- {
- xprintf("\bTFTP transfer completed \n");
- xprintf("Read %d bytes (%d blocks)\n", \
- tcxn.bytes_recv, tcxn.exp_blocknum - 1);
- }
- else
- {
- /* Send error packet to stifle the server */
- tftp_error(TFTP_ERR_ILL, tcxn.server_port);
-
- xprintf("\bErrors in TFTP transfer.\n");
- xprintf("Read %d bytes (%d blocks)\n", \
- tcxn.bytes_recv, tcxn.exp_blocknum - 1);
- }
-
- /* Free up any buffers left in the queue */
- while (!queue_isempty(&tcxn.queue))
- nbuf_free((NBUF *)queue_remove(&tcxn.queue));
-
- /* Free the UDP port */
- udp_free_port(tcxn.my_port);
-}
-
-int tftp_write(NIF *nif, char *fn, IP_ADDR_P server, uint32_t begin, uint32_t end)
-{
- DATA *data;
- NBUF *pNbuf;
-
- uint32_t i, retries, bytes_to_send;
- uint16_t blocknum, this_size;
- uint8_t success, *current;
- int result;
-
- if (fn == 0 || server == 0 || end < begin)
- return 0;
-
- /* Setup initial connection status */
- tcxn.nif = nif;
- tcxn.file = fn;
- tcxn.server_ip[0] = server[0];
- tcxn.server_ip[1] = server[1];
- tcxn.server_ip[2] = server[2];
- tcxn.server_ip[3] = server[3];
- tcxn.server_port = UDP_PORT_TFTP;
- tcxn.exp_blocknum = 0;
- tcxn.dir = TFTP_WRQ;
- tcxn.open = false;
- tcxn.bytes_sent = 0;
- tcxn.error = false;
-
- /* Use Mac address as pseudo-random port */
- udp_prime_port((uint16_t)((nif->hwa[4] << 8) | nif->hwa[5]));
- tcxn.my_port = udp_obtain_free_port();
- udp_bind_port(tcxn.my_port,&tftp_handler);
-
- retries = 4;
- success = false;
-
- while (--retries)
- {
- /* Make the TFTP Read/Write Request */
- if (!tftp_rwrq())
- {
- xprintf("Error: Couldn't send TFTP Write Request\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
-
- timer_set_secs(TIMER_NETWORK, TFTP_TIMEOUT);
- while (timer_get_reference(TIMER_NETWORK))
- {
- /* Has the server responded */
- if (tcxn.open)
- {
- success = true;
- break;
- }
- }
-
- /* If the connection is open, we are done here */
- if (success || tcxn.error)
- break;
- }
- if (!retries)
- {
- xprintf("TFTP could not make connection to server.\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
- else if (tcxn.error)
- {
- xprintf("\bErrors in TFTP upload.\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
-
- bytes_to_send = end - begin;
- current = (uint8_t *)begin;
- blocknum = 1;
- retries = 4;
- success = false;
-
- while (--retries)
- {
- pNbuf = nbuf_alloc();
- if (pNbuf == NULL)
- {
- xprintf("TFTP: tftp_write() couldn't allocate Tx buffer\n");
- return false;
- }
-
- /* Build the packet */
- data = (DATA *)&pNbuf->data[TFTP_HDR_OFFSET];
- data->blocknum = blocknum;
- data->opcode = TFTP_DATA;
-
- this_size = (bytes_to_send > TFTP_PKTSIZE) ? \
- TFTP_PKTSIZE : (uint16_t)bytes_to_send;
-
- for (i = 0; i < this_size; i++)
- {
- data->data[i] = current[i];
- }
-
- /* Set the packet length */
- pNbuf->length = (uint16_t)(4 + this_size);
-
- /* Attempt to send the packet */
- for (i = 0; i < 3; ++i)
- {
- result = udp_send(tcxn.nif,
- tcxn.server_ip,
- tcxn.my_port,
- tcxn.server_port,
- pNbuf);
-
- if (result == 1)
- break;
- }
-
- if (result == 0)
- nbuf_free(pNbuf);
-
- timer_set_secs(TIMER_NETWORK, TFTP_TIMEOUT);
- while (timer_get_reference(TIMER_NETWORK))
- {
- /* Has the server responded */
- if ((tcxn.exp_blocknum - 1) == blocknum)
- {
- success = true;
- break;
- }
- }
-
- /* TFTP Write Compeleted successfully */
- if (success && (this_size < TFTP_PKTSIZE))
- {
- tcxn.bytes_sent += this_size;
- break;
- }
-
- if (tcxn.error)
- break;
-
- /* If an ACK was received, keep sending packets */
- if (success)
- {
- tcxn.bytes_sent += TFTP_PKTSIZE;
- bytes_to_send -= TFTP_PKTSIZE;
- current += TFTP_PKTSIZE;
- blocknum++;
- retries = 4;
- success = false;
- }
- }
- if (tcxn.error)
- {
- xprintf("TFTP lost connection to server.\n");
- xprintf("Sent %d bytes (%d blocks)\n", \
- tcxn.bytes_sent, tcxn.exp_blocknum - 1);
- udp_free_port(tcxn.my_port);
- return false;
- }
- else
- {
- xprintf("\bTFTP upload successful\n");
- xprintf("Sent %d bytes (%d blocks)\n", \
- tcxn.bytes_sent, tcxn.exp_blocknum - 1);
- udp_free_port(tcxn.my_port);
- return true;
- }
-}
-
-int tftp_read(NIF *nif, char *fn, IP_ADDR_P server)
-{
- uint32_t retries;
-
- if (fn == 0 || server == 0)
- return 0;
-
- /* Setup initial connection status */
- tcxn.nif = nif;
- tcxn.file = fn;
- tcxn.server_ip[0] = server[0];
- tcxn.server_ip[1] = server[1];
- tcxn.server_ip[2] = server[2];
- tcxn.server_ip[3] = server[3];
- tcxn.server_port = UDP_PORT_TFTP;
- tcxn.exp_blocknum = 1;
- tcxn.last_ack = 0;
- tcxn.dir = TFTP_RRQ;
- tcxn.open = false;
- tcxn.bytes_recv = 0;
- tcxn.rem_bytes = 0;
- tcxn.next_char = NULL;
- tcxn.error = false;
- queue_init(&tcxn.queue);
-
- /* Use Mac address as pseudo-random port */
- udp_prime_port((uint16_t)((nif->hwa[4] << 8) | nif->hwa[5]));
- tcxn.my_port = udp_obtain_free_port();
- udp_bind_port(tcxn.my_port,&tftp_handler);
-
- retries = 4;
-
- while (--retries)
- {
- /* Make the TFTP Read/Write Request */
- if (!tftp_rwrq())
- {
- xprintf("Error: Couldn't send TFTP Read Request\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
-
- timer_set_secs(TIMER_NETWORK, TFTP_TIMEOUT);
- while (timer_get_reference(TIMER_NETWORK))
- {
- /* Has the server responded */
- if (tcxn.open == true)
- break;
- }
-
- /* If the connection is open, we are done here */
- if ((tcxn.open == true) || tcxn.error)
- break;
- }
- if (!retries)
- {
- xprintf("TFTP could not make connection to server.\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
- else if (tcxn.error)
- {
- xprintf("\bErrors in TFTP download.\n");
- udp_free_port(tcxn.my_port);
- return false;
- }
- else
- return true;
-}
-
-int tftp_in_char(void)
-{
- union TFTPpacket *tftp_pkt;
- int retval;
- NBUF *pNbuf;
-
- if (tcxn.next_char != NULL)
- {
- /*
- * A buffer is already being worked on - grab next
- * byte from it
- */
- retval = *tcxn.next_char++;
- if (--tcxn.rem_bytes <= 0)
- {
- /* The buffer is depleted; add it back to the free queue */
- pNbuf = (NBUF *)queue_remove(&tcxn.queue);
-
- nbuf_free(pNbuf);
- tcxn.next_char = NULL;
- }
- }
- else
- {
- /* Is the connection still open? */
- if (tcxn.open == false)
- {
- /*
- * The last packet has been received and the last data
- * buffer has been exhausted
- */
- retval = -1;
- }
- else
- {
- /* Get pointer to the next buffer */
- pNbuf = (NBUF *)queue_peek(&tcxn.queue);
-
- if (pNbuf == NULL)
- {
- int i;
-
- /* There was no buffer in the queue */
- for (i = 0; i < 3; ++i)
- {
- timer_set_secs(TIMER_NETWORK, 1);
- while (timer_get_reference(TIMER_NETWORK))
- {
- /* Has the server sent another DATA packet? */
- if (!queue_isempty(&tcxn.queue))
- {
- pNbuf = (NBUF *)queue_peek(&tcxn.queue);
- break;
- }
- }
- if (pNbuf != NULL)
- break;
-
- /* Ack the last packet again */
- xprintf("Re-acking %d\n",tcxn.last_ack - 1);
- retval = tftp_ack(tcxn.last_ack - 1);
- }
- }
- if (pNbuf == NULL)
- {
- /* The server didn't respond with the expected packet */
- tcxn.open = false;
- tcxn.error = true;
- xprintf("TFTP lost connection to server.\n");
- retval = -1;
- }
- else
- {
- tftp_pkt = (union TFTPpacket *)&pNbuf->data[pNbuf->offset];
-
- /* Subtract the TFTP header from the data length */
- tcxn.rem_bytes = pNbuf->length - 4;
-
- /* Point to first data byte in the packet */
- tcxn.next_char = tftp_pkt->data.data;
-
- /* Save off the block number */
- tcxn.last_ack = tftp_pkt->data.blocknum;
-
- /* Check to see if this is the last packet of the transfer */
- if (tcxn.rem_bytes < TFTP_PKTSIZE)
- tcxn.open = false;
-
- /* Check for empty termination packet */
- if (tcxn.rem_bytes == 0)
- {
- pNbuf = (NBUF *)queue_remove(&tcxn.queue);
- nbuf_free(pNbuf);
- tcxn.next_char = NULL;
- retval = tftp_ack(tcxn.last_ack++);
- retval = -1;
- }
- else
- {
- retval = tftp_ack(tcxn.last_ack++);
- retval = *tcxn.next_char++;
-
- /* Check for a single byte packet */
- if (--tcxn.rem_bytes == 0)
- {
- /* The buffer is depleted; add it back to the free queue */
- pNbuf = (NBUF *)queue_remove(&tcxn.queue);
- nbuf_free(pNbuf);
- tcxn.next_char = NULL;
- }
- }
- }
- }
- }
- return retval;
-}
diff --git a/BaS_gcc/net/udp.c b/BaS_gcc/net/udp.c
deleted file mode 100644
index cd84c4e..0000000
--- a/BaS_gcc/net/udp.c
+++ /dev/null
@@ -1,184 +0,0 @@
-/*
- * File: udp.c
- * Purpose: User Datagram Protocol driver
- *
- * Notes:
- *
- * Modifications:
- *
- */
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "net.h"
-#include
-
-//#define DBG_UDP
-#if defined(DBG_UDP)
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_UDP */
-
-typedef struct
-{
- uint16_t port;
- void (*handler)(NIF *, NBUF *);
-} UDP_BOUND_PORT;
-
-#define UDP_MAX_PORTS (5) /* plenty for this implementation */
-
-
-static UDP_BOUND_PORT udp_port_table[UDP_MAX_PORTS];
-
-static uint16_t udp_port;
-
-void udp_init(void)
-{
- int index;
-
- for (index = 0; index < UDP_MAX_PORTS; ++index)
- {
- udp_port_table[index].port = 0;
- udp_port_table[index].handler = 0;
- }
-
- udp_port = DEFAULT_UDP_PORT; /* next free port */
-}
-
-void udp_prime_port(uint16_t init_port)
-{
- udp_port = init_port;
-}
-
-void udp_bind_port(uint16_t port, void (*handler)(NIF *, NBUF *))
-{
- int index;
-
- for (index = 0; index < UDP_MAX_PORTS; ++index)
- {
- if (udp_port_table[index].port == 0)
- {
- udp_port_table[index].port = port;
- udp_port_table[index].handler = handler;
-
- return;
- }
- }
-}
-
-void udp_free_port(uint16_t port)
-{
- int index;
-
- for (index = 0; index < UDP_MAX_PORTS; ++index)
- {
- if (udp_port_table[index].port == port)
- {
- udp_port_table[index].port = 0;
-
- return;
- }
- }
-}
-
-static void *udp_port_handler(uint16_t port)
-{
- int index;
-
- for (index = 0; index < UDP_MAX_PORTS; ++index)
- {
- if (udp_port_table[index].port == port)
- {
- return (void *) udp_port_table[index].handler;
- }
- }
- return NULL;
-}
-
-uint16_t udp_obtain_free_port(void)
-{
- uint16_t port;
-
- port = udp_port;
- if (--udp_port <= 255)
- udp_port = DEFAULT_UDP_PORT;
-
- return port;
-}
-
-int udp_send(NIF *nif, uint8_t *dest, int sport, int dport, NBUF *pNbuf)
-{
- uint8_t *myip;
-
- if (nif == NULL)
- {
- dbg("nif is NULL\r\n");
- return 0;
- }
-
- /*
- * This function takes data, creates a UDP frame from it and
- * passes it onto the IP layer
- */
- udp_frame_hdr *udpframe;
-
- udpframe = (udp_frame_hdr *) &pNbuf->data[UDP_HDR_OFFSET];
-
- /* Set UDP source port */
- udpframe->src_port = (uint16_t) sport;
-
- /* Set UDP destination port */
- udpframe->dest_port = (uint16_t) dport;
-
- /* Set length */
- udpframe->length = (uint16_t) (pNbuf->length + UDP_HDR_SIZE);
-
- /* No checksum calcualation needed */
- udpframe->chksum = (uint16_t) 0;
-
- /* Add the length of the UDP packet to the total length of the packet */
- pNbuf->length += 8;
-
- myip = ip_get_myip(nif_get_protocol_info(nif, ETH_FRM_IP));
-
- dbg("sent UDP request to %d.%d.%d.%d from %d.%d.%d.%d\r\n",
- dest[0], dest[1], dest[2], dest[3],
- myip[0], myip[1], myip[2], myip[3]);
-
- return (ip_send(nif, dest, myip, IP_PROTO_UDP, pNbuf));
-
-}
-
-void udp_handler(NIF *nif, NBUF *pNbuf)
-{
- /*
- * This function handles incoming UDP packets
- */
- udp_frame_hdr *udpframe;
- void (*handler)(NIF *, NBUF *);
-
- udpframe = (udp_frame_hdr *) &pNbuf->data[pNbuf->offset];
-
- dbg("packet received\r\n",);
-
- /*
- * Adjust the length and valid data offset of the packet we are
- * passing on
- */
- pNbuf->length -= UDP_HDR_SIZE;
- pNbuf->offset += UDP_HDR_SIZE;
-
- /*
- * Traverse the list of bound ports to see if there is a higher
- * level protocol to pass the packet on to
- */
- if ((handler = (void(*)(NIF*, NBUF*)) udp_port_handler(UDP_DEST(udpframe))) != NULL)
- handler(nif, pNbuf);
- else
- {
- dbg("received UDP packet for non-supported port\n");
- nbuf_free(pNbuf);
- }
-
- return;
-}
diff --git a/BaS_gcc/nutil/s19header.c b/BaS_gcc/nutil/s19header.c
deleted file mode 100644
index e40fe6b..0000000
--- a/BaS_gcc/nutil/s19header.c
+++ /dev/null
@@ -1,380 +0,0 @@
-/*
- * s19header.c
- *
- * Created on: 17.12.2012
- * Author: mfro
- * The ACP Firebee project
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2012 M. Froeschle
- */
-
-#include
-#include
-#include
-#include
-#include
-
-#include "s19reader.h"
-
-/*
- * Yes, I know. The following doesn't really look like code should look like...
- *
- * I did try to map structures over the S-records with (packed) which didn't work reliably due to
- * gcc _not_ packing them appropiate and finally ended up with this. Not nice, put paid (and working).
- *
- */
-#define SREC_TYPE(a) (a)[0] /* type of record */
-#define SREC_COUNT(a) (a)[1] /* length of valid bytes to follow */
-#define SREC_ADDR16(a) (256 * (a)[2] + (a)[3]) /* 2 byte address field */
-#define SREC_ADDR24(a) (0x10000 * (a)[2] + 0x100 * \
- (a)[3] + (a)[4]) /* 3 byte address field */
-#define SREC_ADDR32(a) (0x1000000 * a[2] + 0x10000 * \
- a[3] + 0x100 * (a)[4] + (a)[5]) /* 4 byte address field */
-#define SREC_DATA16(a) ((uint8_t *)&((a)[4])) /* address of first byte of data in a record */
-#define SREC_DATA24(a) ((uint8_t *)&((a)[5])) /* address of first data byte in 24 bit record */
-#define SREC_DATA32(a) ((uint8_t *)&((a)[6])) /* adress of first byte of a record with 32 bit address field */
-#define SREC_DATA16_SIZE(a) (SREC_COUNT((a)) - 3) /* length of the data[] array without the checksum field */
-#define SREC_DATA24_SIZE(a) (SREC_COUNT((a)) - 4) /* length of the data[] array without the checksum field */
-#define SREC_DATA32_SIZE(a) (SREC_COUNT((a)) - 5) /* length of the data[] array without the checksum field */
-#define SREC_CHECKSUM(a) (a)[SREC_COUNT(a) + 2 - 1] /* record's checksum (two's complement of the sum of all bytes) */
-
-#define SREC_MODULENAME(a) &((a)[4]) /* module name in an S0 record */
-#define SREC_MODULENAME_LENGTH 20
-#define SREC_VERSION(a) &((a)[24]) /* version info in an S0 record */
-#define SREC_VERSION_LENGTH 2
-#define SREC_REVISION(a) &((a)[26]) /* revision info in an S0 record */
-#define SREC_REVISIION_LENGTH 2
-#define SREC_DESCRIPTION(a) &((a)[28]) /* description field in an S0 record */
-#define SREC_DESCRIPTION_LENGTH 36
-
-/*
- * convert a single hex character into byte
- */
-static uint8_t nibble_to_byte(uint8_t nibble)
-{
- if ((nibble >= '0') && (nibble <= '9'))
- return nibble - '0';
- else if ((nibble >= 'A' && nibble <= 'F'))
- return 10 + nibble - 'A';
- else if ((nibble >= 'a' && nibble <= 'f'))
- return 10 + nibble - 'a';
- return 0;
-}
-
-/*
- * convert two hex characters into byte
- */
-static uint8_t hex_to_byte(uint8_t hex[2])
-{
- return 16 * (nibble_to_byte(hex[0])) + (nibble_to_byte(hex[1]));
-}
-
-#ifdef _NOT_USED_
-/*
- * convert four hex characters into a 16 bit word
- */
-static uint16_t hex_to_word(uint8_t hex[4])
-{
- return 256 * hex_to_byte(&hex[0]) + hex_to_byte(&hex[2]);
-}
-
-/*
- * convert eight hex characters into a 32 bit word
- */
-static uint32_t hex_to_long(uint8_t hex[8])
-{
- return 65536 * hex_to_word(&hex[0]) + hex_to_word(&hex[4]);
-}
-#endif /* _NOT_USED_ */
-
-/*
- * compute the record checksum
- *
- * it consists of the one's complement of the byte sum of the data from the count field until the end
- */
-static uint8_t checksum(uint8_t arr[])
-{
- int i;
- uint8_t checksum = SREC_COUNT(arr);
-
- for (i = 0; i < SREC_COUNT(arr) - 1; i++)
- {
- checksum += arr[i + 2];
- }
- return ~checksum;
-}
-
-void print_record(uint8_t *arr)
-{
- switch (SREC_TYPE(arr))
- {
- case 0:
- {
- printf("type 0x%x ", SREC_TYPE(arr));
- printf("count 0x%x ", SREC_COUNT(arr));
- printf("addr 0x%x ", SREC_ADDR16(arr));
- printf("module %11.11s ", SREC_DATA16(arr));
- printf("chk 0x%x 0x%x\r\n", SREC_CHECKSUM(arr), checksum(arr));
- }
- break;
-
- case 3:
- case 7:
- {
- printf("type 0x%x ", SREC_TYPE(arr));
- printf("count 0x%x ", SREC_COUNT(arr));
- printf("addr 0x%x ", SREC_ADDR32(arr));
- printf("data %02x,%02x,%02x,%02x,... ",
- SREC_DATA32(arr)[0], SREC_DATA32(arr)[1], SREC_DATA32(arr)[3], SREC_DATA32(arr)[4]);
- printf("chk 0x%x 0x%x\r\n", SREC_CHECKSUM(arr), checksum(arr));
- }
- break;
-
- default:
- printf("unsupported report type %d in print_record\r\n", arr[0]);
- break;
- }
-}
-
-/*
- * convert an S-record line into its corresponding byte vector (ASCII->binary)
- */
-static void line_to_vector(uint8_t *buff, uint8_t *vector)
-{
- int i;
- int length;
- uint8_t *vp = vector;
-
- length = hex_to_byte(buff + 2);
-
- buff++;
- *vp++ = nibble_to_byte(*buff); /* record type. Only one single nibble */
- buff++;
-
- for (i = 0; i <= length; i++)
- {
- *vp++ = hex_to_byte(buff);
- buff += 2;
- }
-}
-
-static void vector_to_line(uint8_t *vector, uint8_t *buff)
-{
- sprintf(buff, "S");
-}
-
-/*
- * read and parse a Motorola S-record file and copy contents to dst. The theory of operation is to read and parse the S-record file
- * and to use the supplied callback routine to copy the buffer to the destination once the S-record line is converted.
- * The memcpy callback can be anything (as long as it conforms parameter-wise) - a basically empty function to just let
- * read_srecords validate the file, a standard memcpy() to copy file contents to destination RAM or a more sophisticated
- * routine that does write/erase flash
- *
- * FIXME: Currently only records that the gcc toolchain emits are supported.
- *
- * Parameters:
- * IN
- * filename - the filename that contains the S-records
- * callback - the memcpy() routine discussed above
- * OUT
- * start_address - the execution address of the code as read from the file. Can be used to jump into and execute it
- * actual_length - the overall length of the binary code read from the file
- * returns
- * OK or an err_t error code if anything failed
- */
-int main(int argc, char *argv[])
-{
- int fres;
- int set;
- char *filename = NULL;
- FILE *file;
- int ret = OK;
- int i;
-
-
- for (i = 1; i < argc; i++)
- {
- if (argv[i][0] == '-')
- {
- /* option */
- if (strcmp(argv[i], "-s") == 0)
- {
- set = 1;
- }
- }
- else
- {
- filename = argv[i];
- }
- }
-
- if (filename == NULL)
- {
- fprintf(stderr, "no filename given\n");
- exit(1);
- }
-
- if ((file = fopen(filename, "r")) != NULL)
- {
- uint8_t line[80];
- int lineno = 0;
- int data_records = 0;
- bool found_block_header = false;
- bool found_block_end = false;
- bool found_block_data = false;
-
- while (ret == OK && (uint8_t *) fgets((char *) line, sizeof(line), file) != NULL)
- {
- lineno++;
- uint8_t vector[80];
- char str[255];
- int length;
-
-
-
- line_to_vector(line, vector); /* vector now contains the decoded contents of line, from line[1] on */
-
- if (line[0] == 'S')
- {
- char header[256];
-
- if (SREC_CHECKSUM(vector) != checksum(vector))
- {
- printf("invalid checksum 0x%x (should be 0x%x) in line %d\r\n",
- SREC_CHECKSUM(vector), checksum(vector), lineno);
- ret = FAIL;
- }
-
- switch (vector[0])
- {
- case 0: /* block header */
- found_block_header = true;
- if (found_block_data || found_block_end)
- {
- printf("S7 or S3 record found before S0: S-records corrupt?\r\n");
- ret = FAIL;
- }
- printf("address: 0x%04x\n", SREC_ADDR16(vector));
- printf("length of record: %d\n", SREC_COUNT(vector));
- length = SREC_DATA16_SIZE(vector) - (SREC_DATA16(vector) - vector);
- printf("length: %d\n", length);
- strncpy(str, SREC_DATA16(vector), length);
- str[length] = '\0';
- printf("Name: %s\n", str);
- printf("version: %d, revision %d\n",
- * (unsigned short *)((char *) SREC_DATA16(vector) + length),
- * (unsigned short *)((char *) SREC_DATA16(vector) + length + 1));
- print_record(vector);
-
- break;
-
- case 2: /* three byte address field data record */
- if (!found_block_header || found_block_end)
- {
- printf("S3 record found before S0 or after S7: S-records corrupt?\r\n");
- ret = FAIL;
- }
- // ret = callback((uint8_t *) SREC_ADDR24(vector), SREC_DATA24(vector), SREC_DATA24_SIZE(vector));
- data_records++;
- break;
-
- case 3: /* four byte address field data record */
- if (!found_block_header || found_block_end)
- {
- printf("S3 record found before S0 or after S7: S-records corrupt?\r\n");
- ret = FAIL;
- }
- // ret = callback((uint8_t *) SREC_ADDR32(vector), SREC_DATA32(vector), SREC_DATA32_SIZE(vector));
- data_records++;
- break;
-
- case 7: /* four byte address field end record */
- if (!found_block_header || found_block_end)
- {
- printf("S7 record found before S0 or after S7: S-records corrupt?\r\n");
- }
- else
- {
- // printf("S7 record (end) found after %d valid data blocks\r\n", data_records);
- //*start_address = (void *) SREC_ADDR32(vector);
- }
- break;
-
- case 8: /* three byte address field end record */
- if (!found_block_header || found_block_end)
- {
- printf("S8 record found before S0 or after S8: S-records corrupt?\r\n");
- }
- else
- {
- // printf("S7 record (end) found after %d valid data blocks\r\n", data_records);
- //*start_address = (void *) SREC_ADDR24(vector);
- }
- break;
-
- default:
- printf("unsupported record type (%d) found in line %d\r\n", vector[0], lineno);
- printf("offending line: \r\n");
- printf("%s\r\n", line);
- ret = FAIL;
- break;
- }
- }
- else
- {
- printf("illegal character ('%c') found on line %d: S-records corrupt?\r\n", line[0], lineno);
- ret = FAIL;
- break;
- }
- }
- fclose(file);
- }
- else
- {
- printf("could not open file %s\r\n", filename);
- ret = FILE_OPEN;
- }
- return ret;
-}
-
-/*
- * this callback just does nothing besides returning OK. Meant to do a dry run over the file to check its integrity
- */
-static err_t simulate()
-{
- err_t ret = OK;
-
- return ret;
-}
-
-
-/*
- * this callback verifies the data against the S-record file contents after a write to destination
- */
-static err_t verify(uint8_t *dst, uint8_t *src, uint32_t length)
-{
- uint8_t *end = src + length;
-
- do
- {
- if (*src++ != *dst++)
- return FAIL;
- } while (src < end);
-
- return OK;
-}
diff --git a/BaS_gcc/pci/ehci-hcd.c b/BaS_gcc/pci/ehci-hcd.c
deleted file mode 100644
index 9be487a..0000000
--- a/BaS_gcc/pci/ehci-hcd.c
+++ /dev/null
@@ -1,1174 +0,0 @@
-/*
- * Copyright (c) 2007-2008, Juniper Networks, Inc.
- * Copyright (c) 2008, Excito Elektronik i Skåne AB
- * Copyright (c) 2008, Michael Trimarchi
- *
- * All rights reserved.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation version 2 of
- * the License.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- */
-
-
-#include "util.h" /* for endian conversions */
-#include "bas_printf.h" /* for diagnostics */
-#include "wait.h"
-#include "cache.h"
-#include "usb.h"
-#include "ehci.h"
-#include "pci.h"
-
-// #define DEBUG
-#include "debug.h"
-
-static char ehci_inited;
-static int rootdev;
-
-static uint16_t portreset;
-static uint16_t companion;
-
-struct descriptor
-{
- struct usb_hub_descriptor hub;
- struct usb_device_descriptor device;
- struct usb_linux_config_descriptor config;
- struct usb_linux_interface_descriptor interface;
- struct usb_endpoint_descriptor endpoint;
-} __attribute__ ((packed));
-
-static struct descriptor rom_descriptor =
-{
-{
- 0x8, /* bDescLength */
- 0x29, /* bDescriptorType: hub descriptor */
- 2, /* bNrPorts -- runtime modified */
- 0, /* wHubCharacteristics */
- 0xff, /* bPwrOn2PwrGood */
- 0, /* bHubCntrCurrent */
-{}, /* Device removable */
-{} /* at most 7 ports! XXX */
-},
-{
- 0x12, /* bLength */
- 1, /* bDescriptorType: UDESC_DEVICE */
- 0x0002, /* bcdUSB: v2.0 */
- 9, /* bDeviceClass: UDCLASS_HUB */
- 0, /* bDeviceSubClass: UDSUBCLASS_HUB */
- 1, /* bDeviceProtocol: UDPROTO_HSHUBSTT */
- 64, /* bMaxPacketSize: 64 bytes */
- 0x0000, /* idVendor */
- 0x0000, /* idProduct */
- 0x0001, /* bcdDevice */
- 1, /* iManufacturer */
- 2, /* iProduct */
- 0, /* iSerialNumber */
- 1 /* bNumConfigurations: 1 */
-},
-{
- 0x9,
- 2, /* bDescriptorType: UDESC_CONFIG */
- (0x19 << 8), /* cpu_to_le16(0x19), */
- 1, /* bNumInterface */
- 1, /* bConfigurationValue */
- 0, /* iConfiguration */
- 0x40, /* bmAttributes: UC_SELF_POWER */
- 0 /* bMaxPower */
-},
-{
- 0x9, /* bLength */
- 4, /* bDescriptorType: UDESC_INTERFACE */
- 0, /* bInterfaceNumber */
- 0, /* bAlternateSetting */
- 1, /* bNumEndpoints */
- 9, /* bInterfaceClass: UICLASS_HUB */
- 0, /* bInterfaceSubClass: UISUBCLASS_HUB */
- 0, /* bInterfaceProtocol: UIPROTO_HSHUBSTT */
- 0 /* iInterface */
-},
-{
- 0x7, /* bLength */
- 5, /* bDescriptorType: UDESC_ENDPOINT */
- 0x81, /* bEndpointAddress: UE_DIR_IN | EHCI_INTR_ENDPT */
- 3, /* bmAttributes: UE_INTERRUPT */
- 8, 0, /* wMaxPacketSize */
- 255 /* bInterval */
-},
-};
-
-struct pci_device_id ehci_usb_pci_table[] =
-{
-{
- PCI_VENDOR_ID_NEC,
- PCI_DEVICE_ID_NEC_USB_2,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_EHCI,
- 0,
- 0
-}, /* NEC PCI OHCI module ids */
-{
- PCI_VENDOR_ID_NEC,
- PCI_DEVICE_ID_NEC_USB_3,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_EHCI,
- 0,
- 0
-},
-{
- PCI_VENDOR_ID_PHILIPS,
- PCI_DEVICE_ID_PHILIPS_ISP1561_2,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_EHCI,
- 0,
- 0
-}, /* Philips 1561 PCI OHCI module ids */
-/* Please add supported PCI OHCI controller ids here */
-{
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0
-}
-};
-
-static struct ehci
-{
- /* ------- common part -------- */
- long handle; /* PCI BIOS */
- const struct pci_device_id *ent;
- int usbnum;
- /* ---- end of common part ---- */
- int big_endian; /* PCI BIOS */
- struct ehci_hccr *hccr; /* R/O registers, not need for volatile */
- volatile struct ehci_hcor *hcor;
- struct QH *qh_list_unaligned;
- struct QH *qh_list;
- struct QH *qh_unaligned;
- struct QH *qh;
- struct qTD *td_unaligned[3];
- struct qTD *td[3];
- struct descriptor *descriptor;
- int irq;
- uint32_t dma_offset;
- const char *slot_name;
-} gehci;
-
-static void cache_qtd(struct qTD *qtd, int flush)
-{
- /*
- * not needed
- */
- //flush_and_invalidate_caches();
-}
-
-static inline struct QH *qh_addr(struct QH *qh)
-{
- return (struct QH *)((uint32_t) qh & 0xffffffe0);
-}
-
-static void cache_qh(struct QH *qh, int flush)
-{
- struct qTD *qtd;
- struct qTD *next;
- static struct qTD *first_qtd;
-
- /* Walk the QH list and flush/invalidate all entries */
- while(1)
- {
- flush_and_invalidate_caches();
- if ((uint32_t) qh & QH_LINK_TYPE_QH)
- break;
- qh = qh_addr(qh);
- qh = (struct QH *)(swpl(qh->qh_link) + gehci.dma_offset);
- }
- qh = qh_addr(qh);
-
- /* Save first qTD pointer, needed for invalidating pass on this QH */
- if (flush)
- {
- qtd = (struct qTD *)(swpl(*(uint32_t *)&qh->qh_overlay) & 0xffffffe0);
- if (qtd != NULL)
- qtd = (struct qTD *)(gehci.dma_offset + (uint32_t)qtd);
- first_qtd = qtd;
- }
- else
- qtd = first_qtd;
-
- /* Walk the qTD list and flush/invalidate all entries */
- while(1)
- {
- if (qtd == NULL)
- break;
- cache_qtd(qtd, flush);
- next = (struct qTD *)((uint32_t)swpl(qtd->qt_next) & 0xffffffe0);
- if (next != NULL)
- next = (struct qTD *)(gehci.dma_offset + (uint32_t)next);
- if (next == qtd)
- break;
- qtd = next;
- }
-}
-
-static inline void ehci_flush_dcache(struct QH *qh)
-{
- cache_qh(qh, 1);
-}
-
-static inline void ehci_invalidate_dcache(struct QH *qh)
-{
- cache_qh(qh, 0);
-}
-
-static int handshake(uint32_t *ptr, uint32_t mask, uint32_t done, int usec)
-{
- uint32_t result;
-
- do
- {
- result = ehci_readl(ptr);
- if (result == ~ (uint32_t) 0)
- {
- return -1;
- }
- result &= mask;
- if (result == done)
- {
- return 0;
- }
- wait(1);
- usec--;
- } while (usec > 0);
-
- return -1;
-}
-
-static void ehci_free(void *p, size_t sz)
-{
-}
-
-static int ehci_reset(void)
-{
- uint32_t cmd;
- int ret = 0;
-
- if ((gehci.ent->vendor == PCI_VENDOR_ID_NEC) && (gehci.ent->device == PCI_DEVICE_ID_NEC_USB_2))
- {
- dbg("ehci_reset set 48MHz clock\r\n");
- pci_write_config_longword(gehci.handle, 0xE4, 0x20); // oscillator
- wait(5);
- }
-
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- dbg("%s cmd: 0x%08x\r\n", __FUNCTION__, cmd);
-
- cmd |= CMD_RESET;
- ehci_writel(&gehci.hcor->or_usbcmd, cmd);
- ret = handshake((uint32_t *) &gehci.hcor->or_usbcmd, CMD_RESET, 0, 250);
- if (ret < 0)
- {
- err("*** EHCI fail to reset! ***\r\n");
- goto out;
- }
-
-out:
- return ret;
-}
-
-static void *ehci_alloc(size_t sz, size_t align)
-{
- static int ntds;
- void *p;
- switch(sz)
- {
- case sizeof(struct QH):
- p = gehci.qh;
- ntds = 0;
- break;
-
- case sizeof(struct qTD):
- if (ntds == 3)
- {
- dbg("out of TDs\r\n");
- return NULL;
- }
- p = gehci.td[ntds];
- ntds++;
- break;
-
- default:
- dbg("unknown allocation size\r\n");
- return NULL;
- }
- memset(p, sz, 0);
- return p;
-}
-
-static int ehci_td_buffer(struct qTD *td, void *buf, size_t sz)
-{
- uint32_t addr;
- uint32_t delta;
- uint32_t next;
- int idx;
-
- addr = (uint32_t)buf;
- idx = 0;
-
- while (idx < 5)
- {
- td->qt_buffer[idx] = swpl(addr - gehci.dma_offset);
- next = (addr + 4096) & ~4095;
- delta = next - addr;
- if (delta >= sz)
- break;
- sz -= delta;
- addr = next;
- idx++;
- }
-
- if (idx == 5)
- {
- dbg("out of buffer pointers (%u bytes left)\r\n", sz);
- return -1;
- }
- return 0;
-}
-
-static int ehci_submit_async(struct usb_device *dev, uint32_t pipe, void *buffer, int length, struct devrequest *req)
-{
- struct QH *qh;
- struct qTD *td;
- volatile struct qTD *vtd;
- uint32_t ts;
- uint32_t *tdp;
- uint32_t endpt;
- uint32_t token;
- uint32_t usbsts;
- uint32_t c;
- uint32_t toggle;
- uint32_t cmd;
- int ret = 0;
-
- dbg("%s: dev=%p, pipe=%lx, buffer=%p, length=%d, req=%p\r\n", __FUNCTION__, dev, pipe, buffer, length, req);
-
-#ifdef DBG_EHCI
- if (req != NULL)
- dbg("ehci_submit_async req=%u (%#x), type=%u (%#x), value=%u (%#x), index=%u\r\n",
- req->request, req->request,
- req->requesttype, req->requesttype,
- swpw(req->value), swpw(req->value), swpw(req->index));
-#endif /* DBG_EHCI */
-
- qh = ehci_alloc(sizeof(struct QH), 32);
- if (qh == NULL)
- {
- dbg("unable to allocate QH\r\n");
- return -1;
- }
- qh->qh_link = swpl(((uint32_t) gehci.qh_list - gehci.dma_offset) | QH_LINK_TYPE_QH);
-
- c = (usb_pipespeed(pipe) != USB_SPEED_HIGH && usb_pipeendpoint(pipe) == 0) ? 1 : 0;
- endpt = (8 << 28) |
- (c << 27) |
- (usb_maxpacket(dev, pipe) << 16) |
- (0 << 15) |
- (1 << 14) |
- (usb_pipespeed(pipe) << 12) |
- (usb_pipeendpoint(pipe) << 8) |
- (0 << 7) |
- (usb_pipedevice(pipe) << 0);
- qh->qh_endpt1 = swpl(endpt);
- endpt = (1 << 30) |
- (dev->portnr << 23) |
- (dev->parent->devnum << 16) |
- (0 << 8) |
- (0 << 0);
- qh->qh_endpt2 = swpl(endpt);
- qh->qh_overlay.qt_next = swpl(QT_NEXT_TERMINATE);
- qh->qh_overlay.qt_altnext = swpl(QT_NEXT_TERMINATE);
- td = NULL;
- tdp = &qh->qh_overlay.qt_next;
- toggle = usb_gettoggle(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe));
-
- if (req != NULL)
- {
- td = ehci_alloc(sizeof(struct qTD), 32);
- if (td == NULL)
- {
- dbg("unable to allocate SETUP td\r\n");
- goto fail;
- }
- td->qt_next = swpl(QT_NEXT_TERMINATE);
- td->qt_altnext = swpl(QT_NEXT_TERMINATE);
- token = (0 << 31) | (sizeof(*req) << 16) | (0 << 15) | (0 << 12) | (3 << 10) | (2 << 8) | (0x80 << 0);
- td->qt_token = swpl(token);
- if (ehci_td_buffer(td, req, sizeof(*req)) != 0)
- {
- dbg("unable construct SETUP td\r\n");
- ehci_free(td, sizeof(*td));
- goto fail;
- }
- *tdp = swpl((uint32_t)td - gehci.dma_offset);
- tdp = &td->qt_next;
- toggle = 1;
- }
-
- if (length > 0 || req == NULL)
- {
- td = ehci_alloc(sizeof(struct qTD), 32);
- if (td == NULL)
- {
- dbg("unable to allocate DATA td\r\n");
- goto fail;
- }
- td->qt_next = swpl(QT_NEXT_TERMINATE);
- td->qt_altnext = swpl(QT_NEXT_TERMINATE);
- token = (toggle << 31) | (length << 16) | ((req == NULL ? 1 : 0) << 15) | (0 << 12) | (3 << 10) | ((usb_pipein(pipe) ? 1 : 0) << 8) | (0x80 << 0);
- td->qt_token = swpl(token);
- if (ehci_td_buffer(td, buffer, length) != 0)
- {
- dbg("unable construct DATA td\r\n");
- ehci_free(td, sizeof(*td));
- goto fail;
- }
- *tdp = swpl((uint32_t)td - gehci.dma_offset);
- tdp = &td->qt_next;
- }
-
- if (req != NULL)
- {
- td = ehci_alloc(sizeof(struct qTD), 32);
- if (td == NULL)
- {
- dbg("unable to allocate ACK td\r\n");
- goto fail;
- }
- td->qt_next = swpl(QT_NEXT_TERMINATE);
- td->qt_altnext = swpl(QT_NEXT_TERMINATE);
- token = (toggle << 31) | (0 << 16) | (1 << 15) | (0 << 12) | (3 << 10) | ((usb_pipein(pipe) ? 0 : 1) << 8) | (0x80 << 0);
- td->qt_token = swpl(token);
- *tdp = swpl((uint32_t)td - gehci.dma_offset);
- tdp = &td->qt_next;
- }
-
- gehci.qh_list->qh_link = swpl(((uint32_t)qh - gehci.dma_offset) | QH_LINK_TYPE_QH);
-
- /* Flush dcache */
- ehci_flush_dcache(gehci.qh_list);
- usbsts = ehci_readl(&gehci.hcor->or_usbsts);
- ehci_writel(&gehci.hcor->or_usbsts, (usbsts & 0x3f));
-
- /* Enable async. schedule. */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- cmd |= CMD_ASE;
- ehci_writel(&gehci.hcor->or_usbcmd, cmd);
-
- ret = handshake((uint32_t *) &gehci.hcor->or_usbsts, STD_ASS, STD_ASS, 100 * 1000);
- if (ret < 0)
- {
- err("EHCI fail timeout STD_ASS set (usbsts=%#x)", ehci_readl(&gehci.hcor->or_usbsts));
- goto fail;
- }
-
- /* Wait for TDs to be processed. */
- ts = 0;
- vtd = td;
- do
- {
- /* Invalidate dcache */
- ehci_invalidate_dcache(gehci.qh_list);
- token = swpl(vtd->qt_token);
- if (!(token & 0x80))
- {
- break;
- }
- wait(1 * 1000);
- ts++;
- } while (ts < 1000);
-
- /* Disable async schedule. */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- cmd &= ~CMD_ASE;
- ehci_writel(&gehci.hcor->or_usbcmd, cmd);
- ret = handshake((uint32_t *) &gehci.hcor->or_usbsts, STD_ASS, 0, 100 * 1000);
- if (ret < 0)
- {
- err("EHCI fail timeout STD_ASS reset (usbsts=%#x)", ehci_readl(&gehci.hcor->or_usbsts));
- goto fail;
- }
- gehci.qh_list->qh_link = swpl(((uint32_t)gehci.qh_list - gehci.dma_offset) | QH_LINK_TYPE_QH);
-
- token = swpl(qh->qh_overlay.qt_token);
- if (!(token & 0x80))
- {
- dbg("TOKEN=%#x\r\n", token);
- switch(token & 0xfc)
- {
- case 0:
- toggle = token >> 31;
- usb_settoggle(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe), toggle);
- dev->status = 0;
- break;
-
- case 0x40:
- dev->status = USB_ST_STALLED;
- break;
-
- case 0xa0:
- case 0x20:
- dev->status = USB_ST_BUF_ERR;
- break;
-
- case 0x50:
- case 0x10:
- dev->status = USB_ST_BABBLE_DET;
- break;
-
- default:
- dev->status = USB_ST_CRC_ERR;
- break;
- }
- dev->act_len = length - ((token >> 16) & 0x7fff);
- }
- else
- {
- dev->act_len = 0;
- dbg("dev=%u, usbsts=%#x, p[1]=%#x, p[2]=%#x\r\n",
- dev->devnum, ehci_readl(&gehci.hcor->or_usbsts),
- ehci_readl(&gehci.hcor->or_portsc[0]), ehci_readl(&gehci.hcor->or_portsc[1]));
- }
- return (dev->status != USB_ST_NOT_PROC) ? 0 : -1;
-fail:
- td = (void *) swpl(qh->qh_overlay.qt_next);
- if (td != (void *)QT_NEXT_TERMINATE)
- td = (struct qTD *)(gehci.dma_offset + (uint32_t)td);
- while(td != (void *)QT_NEXT_TERMINATE)
- {
- qh->qh_overlay.qt_next = td->qt_next;
- ehci_free(td, sizeof(*td));
- td = (void *)swpl(qh->qh_overlay.qt_next);
- if (td != (void *)QT_NEXT_TERMINATE)
- td = (struct qTD *)(gehci.dma_offset + (uint32_t)td);
- }
- ehci_free(qh, sizeof(*qh));
- if (ehci_readl(&gehci.hcor->or_usbsts) & STS_HSE) /* Host System Error */
- {
- unsigned short status = pci_read_config_word(gehci.handle, PCISR);
- err("EHCI Host System Error, controller usb-%s disabled\r\n(SR:0x%04X%s%s%s%s%s%s)",
- gehci.slot_name, status & 0xFFFF, status & 0x8000 ? ", Parity error" : "",
- status & 0x4000 ? ", Signaled system error" : "",
- status & 0x2000 ? ", Received master abort" : "",
- status & 0x1000 ? ", Received target abort" : "",
- status & 0x800 ? ", Signaled target abort" : "",
- status & 0x100 ? ", Data parity error" : "");
- }
- return -1;
-}
-
-static inline int min3(int a, int b, int c)
-{
- if (b < a)
- a = b;
- if (c < a)
- a = c;
- return a;
-}
-
-static int ehci_submit_root(struct usb_device *dev, uint32_t pipe, void *buffer, int length, struct devrequest *req)
-{
- uint8_t tmpbuf[4];
- u16 typeReq;
- void *srcptr = NULL;
- int len, srclen;
- uint32_t reg;
- uint32_t *status_reg;
-
- if (swpw(req->index) > CONFIG_SYS_USB_EHCI_MAX_ROOT_PORTS)
- {
- err("the requested port(%d) is not configured\r\n", swpw(req->index) - 1);
- return -1;
- }
-
- status_reg = (uint32_t *) &gehci.hcor->or_portsc[swpw(req->index) - 1];
- srclen = 0;
- dbg("ehci_submit_root req=%u (%#x), type=%u (%#x), value=%u, index=%u\r\n",
- req->request, req->request, req->requesttype, req->requesttype, swpw(req->value), swpw(req->index));
- typeReq = req->request | req->requesttype << 8;
-
- switch(typeReq)
- {
- case DeviceRequest | USB_REQ_GET_DESCRIPTOR:
- switch(swpw(req->value) >> 8)
- {
- case USB_DT_DEVICE:
- dbg("USB_DT_DEVICE request\r\n");
- srcptr = &gehci.descriptor->device;
- srclen = 0x12;
- break;
-
- case USB_DT_CONFIG:
- dbg("USB_DT_CONFIG config\r\n");
- srcptr = &gehci.descriptor->config;
- srclen = 0x19;
- break;
-
- case USB_DT_STRING:
- dbg("USB_DT_STRING config\r\n");
- switch(swpw(req->value) & 0xff)
- {
- case 0: /* Language */
- srcptr = "\4\3\1\0";
- srclen = 4;
- break;
-
- case 1: /* Vendor */
- srcptr = "\2\3";
- srclen = 2;
- break;
-
- case 2: /* Product */
- srcptr = "\34\3E\0H\0C\0I\0 \0R\0o\0o\0t\0 \0H\0u\0b\0";
- srclen = 28;
- break;
-
- default:
- dbg("unknown value DT_STRING %x\r\n",
- swpw(req->value));
- goto unknown;
- }
- break;
- default:
- dbg("unknown value %x\r\n", swpw(req->value));
- goto unknown;
- }
- break;
-
- case USB_REQ_GET_DESCRIPTOR | ((USB_DIR_IN | USB_RT_HUB) << 8):
- switch(swpw(req->value) >> 8)
- {
- case USB_DT_HUB:
- dbg("USB_DT_HUB config\r\n");
- srcptr = &gehci.descriptor->hub;
- srclen = 0x8;
- break;
-
- default:
- dbg("unknown value %x\r\n", swpw(req->value));
- goto unknown;
- }
- break;
-
- case USB_REQ_SET_ADDRESS | (USB_RECIP_DEVICE << 8):
- dbg("USB_REQ_SET_ADDRESS\r\n");
- rootdev = swpw(req->value);
- break;
-
- case DeviceOutRequest | USB_REQ_SET_CONFIGURATION:
- dbg("USB_REQ_SET_CONFIGURATION\r\n");
- /* Nothing to do */
- break;
-
- case USB_REQ_GET_STATUS | ((USB_DIR_IN | USB_RT_HUB) << 8):
- tmpbuf[0] = 1; /* USB_STATUS_SELFPOWERED */
- tmpbuf[1] = 0;
- srcptr = tmpbuf;
- srclen = 2;
- break;
-
- case USB_REQ_GET_STATUS | ((USB_RT_PORT | USB_DIR_IN) << 8):
- memset(tmpbuf, 0, 4);
- reg = ehci_readl(status_reg);
-
- if ((reg & EHCI_PS_PR) && (portreset & (1 << swpw(req->index))))
- {
- int ret;
- /* force reset to complete */
- reg = reg & ~(EHCI_PS_PR | EHCI_PS_CLEAR);
- ehci_writel(status_reg, reg);
- ret = handshake(status_reg, EHCI_PS_PR, 0, 2 * 1000);
- if (!ret)
- {
- tmpbuf[0] |= USB_PORT_STAT_RESET;
- reg = ehci_readl(status_reg);
- }
- else
- err("port(%d) reset error", swpw(req->index) - 1);
- }
-
- if (reg & EHCI_PS_CS)
- tmpbuf[0] |= USB_PORT_STAT_CONNECTION;
- if (reg & EHCI_PS_PE)
- tmpbuf[0] |= USB_PORT_STAT_ENABLE;
- if (reg & EHCI_PS_SUSP)
- tmpbuf[0] |= USB_PORT_STAT_SUSPEND;
- if (reg & EHCI_PS_OCA)
- tmpbuf[0] |= USB_PORT_STAT_OVERCURRENT;
- if (reg & EHCI_PS_PP)
- tmpbuf[1] |= USB_PORT_STAT_POWER >> 8;
-
- tmpbuf[1] |= USB_PORT_STAT_HIGH_SPEED >> 8;
-
- if (reg & EHCI_PS_CSC)
- tmpbuf[2] |= USB_PORT_STAT_C_CONNECTION;
- if (reg & EHCI_PS_PEC)
- tmpbuf[2] |= USB_PORT_STAT_C_ENABLE;
- if (reg & EHCI_PS_OCC)
- tmpbuf[2] |= USB_PORT_STAT_C_OVERCURRENT;
- if (portreset & (1 << swpw(req->index)))
- tmpbuf[2] |= USB_PORT_STAT_C_RESET;
-
- srcptr = tmpbuf;
- srclen = 4;
- break;
-
- case USB_REQ_SET_FEATURE | ((USB_DIR_OUT | USB_RT_PORT) << 8):
- reg = ehci_readl(status_reg);
- reg &= ~EHCI_PS_CLEAR;
- switch(swpw(req->value))
- {
- case USB_PORT_FEAT_ENABLE:
- reg |= EHCI_PS_PE;
- ehci_writel(status_reg, reg);
- break;
-
- case USB_PORT_FEAT_POWER:
- if (HCS_PPC(ehci_readl(&gehci.hccr->cr_hcsparams)))
- {
- reg |= EHCI_PS_PP;
- ehci_writel(status_reg, reg);
- }
- break;
-
- case USB_PORT_FEAT_RESET:
- if ((reg & (EHCI_PS_PE | EHCI_PS_CS)) == EHCI_PS_CS && EHCI_PS_IS_LOWSPEED(reg))
- {
- /* Low speed device, give up ownership. */
- dbg("port %d low speed --> companion\r\n", swpw(req->index));
- reg |= EHCI_PS_PO;
- ehci_writel(status_reg, reg);
- companion |= (1 << swpw(req->index));
- break;
- }
- else
- {
- reg |= EHCI_PS_PR;
- reg &= ~EHCI_PS_PE;
- ehci_writel(status_reg, reg);
- /*
- * caller must wait, then call GetPortStatus
- * usb 2.0 specification say 50 ms resets on root
- */
- wait(50 * 1000);
- portreset |= (1 << swpw(req->index));
- }
- break;
-
- default:
- dbg("unknown feature %x\r\n", swpw(req->value));
- goto unknown;
- }
- /* unblock posted writes */
- (void) ehci_readl(&gehci.hcor->or_usbcmd);
- break;
-
- case USB_REQ_CLEAR_FEATURE | ((USB_DIR_OUT | USB_RT_PORT) << 8):
- reg = ehci_readl(status_reg);
- switch(swpw(req->value))
- {
- case USB_PORT_FEAT_ENABLE:
- reg &= ~EHCI_PS_PE;
- break;
-
- case USB_PORT_FEAT_C_ENABLE:
- reg = (reg & ~EHCI_PS_CLEAR) | EHCI_PS_PE;
- break;
-
- case USB_PORT_FEAT_POWER:
- if (HCS_PPC(ehci_readl(&gehci.hccr->cr_hcsparams)))
- reg = reg & ~(EHCI_PS_CLEAR | EHCI_PS_PP);
- case USB_PORT_FEAT_C_CONNECTION:
- reg = (reg & ~EHCI_PS_CLEAR) | EHCI_PS_CSC;
- break;
-
- case USB_PORT_FEAT_OVER_CURRENT:
- reg = (reg & ~EHCI_PS_CLEAR) | EHCI_PS_OCC;
- break;
-
- case USB_PORT_FEAT_C_RESET:
- portreset &= ~(1 << swpw(req->index));
- break;
-
- default:
- dbg("unknown feature %x\r\n", swpw(req->value));
- goto unknown;
- }
- ehci_writel(status_reg, reg);
- /* unblock posted write */
- (void) ehci_readl(&gehci.hcor->or_usbcmd);
- break;
-
- default:
- dbg("Unknown request\r\n");
- goto unknown;
- }
- wait(1 * 1000);
- len = min3(srclen, swpw(req->length), length);
- if (srcptr != NULL && len > 0)
- memcpy(buffer, srcptr, len);
- else
- dbg("Len is 0\r\n");
- dev->act_len = len;
- dev->status = 0;
- return 0;
-unknown:
- dbg("Unknown: requesttype=%x, request=%x, value=%x, index=%x, length=%x\r\n",
- req->requesttype, req->request, swpw(req->value), swpw(req->index), swpw(req->length));
- dev->act_len = 0;
- dev->status = USB_ST_STALLED;
- return -1;
-}
-
-/* an interrupt happens */
-static int hc_interrupt(struct ehci *ehci)
-{
- uint32_t status = ehci_readl(&ehci->hcor->or_usbsts);
-
- dbg("\r\n");
-
- if (status & STS_PCD) /* port change detect */
- {
- uint32_t reg = ehci_readl(&ehci->hccr->cr_hcsparams);
- uint32_t i = HCS_N_PORTS(reg);
-
- while(i)
- {
- uint32_t pstatus = ehci_readl(&ehci->hcor->or_portsc[i-1]);
- if (pstatus & EHCI_PS_PO)
- {
- i--;
- continue;
- }
-
- if (companion & (1 << i))
- {
- /* Low speed device, give up ownership. */
- pstatus |= EHCI_PS_PO;
- ehci_writel(&ehci->hcor->or_portsc[i - 1], pstatus);
- }
- i--;
- }
- }
- ehci_writel(&ehci->hcor->or_usbsts, status);
-
- return 1; /* interrupt was from this card */
-}
-
-void ehci_usb_enable_interrupt(int enable)
-{
- if (enable);
-}
-
-static int handle_usb_interrupt(struct ehci *ehci)
-{
- return hc_interrupt(ehci);
-}
-
-static void hc_free_buffers(struct ehci *ehci)
-{
- int i;
-
- if (ehci->descriptor != NULL)
- {
- driver_mem_free(ehci->descriptor);
- ehci->descriptor = NULL;
- }
-
- for (i = 0; i < 3; i++)
- {
- if (ehci->td_unaligned[i] != NULL)
- {
- driver_mem_free(ehci->td_unaligned[i]);
- ehci->td_unaligned[i] = NULL;
- }
- }
-
- if (ehci->qh_unaligned != NULL)
- {
- driver_mem_free(ehci->qh_unaligned);
- ehci->qh_unaligned = NULL;
- }
-
- if (ehci->qh_list_unaligned != NULL)
- {
- driver_mem_free(ehci->qh_list_unaligned);
- ehci->qh_list_unaligned = NULL;
- }
-}
-
-int ehci_usb_lowlevel_init(long handle, const struct pci_device_id *ent, void **priv)
-{
- int i;
- uint32_t reg;
- uint32_t cmd;
- uint32_t usb_base_addr = 0xFFFFFFFF;
- struct pci_rd *pci_rsc_desc;
-
- pci_rsc_desc = pci_get_resource(handle); /* USB EHCI */
- if (handle && (ent != NULL))
- {
- memset(&gehci, 0, sizeof(struct ehci));
- gehci.handle = handle;
- gehci.ent = ent;
- }
- else if (!gehci.handle) /* for restart USB cmd */
- {
- dbg("!gehci.handle\r\n");
- return -1;
- }
-
- gehci.qh_list_unaligned = (struct QH *) driver_mem_alloc(sizeof(struct QH) + 32);
- if (gehci.qh_list_unaligned == NULL)
- {
- dbg("QHs malloc failed\r\n");
- hc_free_buffers(&gehci);
- return -1;
- }
-
- gehci.qh_list = (struct QH *)(((uint32_t)gehci.qh_list_unaligned + 31) & ~31);
- memset(gehci.qh_list, 0, sizeof(struct QH));
- gehci.qh_unaligned = (struct QH *)driver_mem_alloc(sizeof(struct QH) + 32);
-
- if (gehci.qh_unaligned == NULL)
- {
- dbg("QHs malloc failed\r\n");
- hc_free_buffers(&gehci);
-
- return -1;
- }
- gehci.qh = (struct QH *)(((uint32_t) gehci.qh_unaligned + 31) & ~31);
- memset(gehci.qh, 0, sizeof(struct QH));
-
- for (i = 0; i < 3; i++)
- {
- gehci.td_unaligned[i] = (struct qTD *) driver_mem_alloc(sizeof(struct qTD) + 32);
- if (gehci.td_unaligned[i] == NULL)
- {
- dbg("TDs malloc failed\r\n");
- hc_free_buffers(&gehci);
-
- return -1;
- }
- gehci.td[i] = (struct qTD *)(((uint32_t) gehci.td_unaligned[i] + 31) & ~31);
- memset(gehci.td[i], 0, sizeof(struct qTD));
- }
-
- gehci.descriptor = (struct descriptor *) driver_mem_alloc(sizeof(struct descriptor));
- if (gehci.descriptor == NULL)
- {
- dbg("decriptor malloc failed\r\n");
- hc_free_buffers(&gehci);
-
- return -1;
- }
- memcpy(gehci.descriptor, &rom_descriptor, sizeof(struct descriptor));
-
- if ((long) pci_rsc_desc >= 0)
- {
- unsigned short flags;
- do
- {
- dbg("PCI USB descriptors (at %p): flags 0x%04x start 0x%08lx \r\n offset 0x%08lx dmaoffset 0x%08lx length 0x%08lx\r\n", pci_rsc_desc,
- pci_rsc_desc->flags, pci_rsc_desc->start, pci_rsc_desc->offset, pci_rsc_desc->dmaoffset, pci_rsc_desc->length);
- if (!(pci_rsc_desc->flags & FLG_IO))
- {
- if (usb_base_addr == 0xFFFFFFFF)
- {
- usb_base_addr = pci_rsc_desc->start;
- gehci.hccr = (struct ehci_hccr *) (pci_rsc_desc->offset + pci_rsc_desc->start);
- gehci.dma_offset = pci_rsc_desc->dmaoffset;
- if ((pci_rsc_desc->flags & FLG_ENDMASK) == ORD_MOTOROLA)
- gehci.big_endian = 0; /* host bridge make swapping intel -> motorola */
- else
- gehci.big_endian = 1; /* driver must swapping intel -> motorola */
- }
- }
- flags = pci_rsc_desc->flags;
- pci_rsc_desc = (struct pci_rd *)((uint32_t) pci_rsc_desc->next + (uint32_t) pci_rsc_desc);
- }
- while (!(flags & FLG_LAST));
- }
- else
- {
- hc_free_buffers(&gehci);
- dbg("pci_get_resource() error\r\n");
-
- return -1;
- }
-
- if (usb_base_addr == 0xFFFFFFFF)
- {
- hc_free_buffers(&gehci);
- return(-1);
- }
-
- if (handle && (ent != NULL))
- {
- switch(ent->vendor)
- {
- case PCI_VENDOR_ID_NEC: gehci.slot_name = "uPD720101"; break;
- case PCI_VENDOR_ID_PHILIPS: gehci.slot_name = "isp1561"; break;
- default: gehci.slot_name = "generic"; break;
- }
- }
- gehci.hcor = (struct ehci_hcor *)((uint32_t) gehci.hccr + HC_LENGTH(ehci_readl(&gehci.hccr->cr_capbase)));
- xprintf("EHCI usb-%s, regs address 0x%08X, PCI handle 0x%X\r\n", gehci.slot_name, gehci.hccr, handle);
-
- /* EHCI spec section 4.1 */
- if (ehci_reset() != 0)
- {
- hc_free_buffers(&gehci);
-
- dbg("ehci_reset() failed\r\n");
-
- return -1;
- }
-
- /* Set head of reclaim list */
- gehci.qh_list->qh_link = swpl(((uint32_t) gehci.qh_list - gehci.dma_offset) | QH_LINK_TYPE_QH);
- gehci.qh_list->qh_endpt1 = swpl((1 << 15) | (USB_SPEED_HIGH << 12));
- gehci.qh_list->qh_curtd = swpl(QT_NEXT_TERMINATE);
- gehci.qh_list->qh_overlay.qt_next = swpl(QT_NEXT_TERMINATE);
- gehci.qh_list->qh_overlay.qt_altnext = swpl(QT_NEXT_TERMINATE);
- gehci.qh_list->qh_overlay.qt_token = swpl(0x40);
-
- /* Set async. queue head pointer. */
- ehci_writel(&gehci.hcor->or_asynclistaddr, (uint32_t) gehci.qh_list - gehci.dma_offset);
- reg = ehci_readl(&gehci.hccr->cr_hcsparams);
- gehci.descriptor->hub.bNbrPorts = HCS_N_PORTS(reg);
- xprintf("Register %x NbrPorts %d\r\n", reg, gehci.descriptor->hub.bNbrPorts);
-
- /* Port Indicators */
- if (HCS_INDICATOR(reg))
- {
- gehci.descriptor->hub.wHubCharacteristics |= 0x80;
- }
-
- /* Port Power Control */
- if (HCS_PPC(reg))
- {
- gehci.descriptor->hub.wHubCharacteristics |= 0x01;
- }
-
- /* Start the host controller. */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
-
- /*
- * Philips, Intel, and maybe others need CMD_RUN before the
- * root hub will detect new devices (why?); NEC doesn't
- */
- cmd &= ~(CMD_LRESET|CMD_IAAD|CMD_PSE|CMD_ASE|CMD_RESET);
- cmd |= CMD_RUN;
- ehci_writel(&gehci.hcor->or_usbcmd, cmd);
-
- /* take control over the ports */
- ehci_writel(&gehci.hcor->or_configflag, FLAG_CF);
-
- /* unblock posted write */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- wait(5 * 1000);
-
- reg = HC_VERSION(ehci_readl(&gehci.hccr->cr_capbase));
- xprintf("USB EHCI host controller version %x.%02x\r\n", reg >> 8, reg & 0xff);
-
- /* turn on interrupts */
- pci_hook_interrupt(handle, handle_usb_interrupt, &gehci);
- ehci_writel(&gehci.hcor->or_usbintr, INTR_PCDE);
-
- rootdev = 0;
- if (priv != NULL)
- {
- *priv = (void *) &gehci;
- }
- ehci_inited = 1;
-
- return 0;
-}
-
-int ehci_usb_lowlevel_stop(void *priv)
-{
- uint32_t cmd;
-
- if (priv);
- if (!ehci_inited)
- return(0);
-
- /* turn off interrupts */
- ehci_writel(&gehci.hcor->or_usbintr, 0);
- pci_unhook_interrupt(gehci.handle);
-
- /* stop the controller */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- cmd &= ~CMD_RUN;
- ehci_writel(&gehci.hcor->or_usbcmd, cmd);
-
- /* turn off all ports => todo */
- /* use the companions */
- ehci_writel(&gehci.hcor->or_configflag, 0);
-
- /* unblock posted write */
- cmd = ehci_readl(&gehci.hcor->or_usbcmd);
- ehci_reset();
- hc_free_buffers(&gehci);
- ehci_inited = 0;
- return(0);
-}
-
-int ehci_submit_bulk_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int length)
-{
- if (usb_pipetype(pipe) != PIPE_BULK)
- {
- dbg("non-bulk pipe (type=%lu)", usb_pipetype(pipe));
- return -1;
- }
- return ehci_submit_async(dev, pipe, buffer, length, NULL);
-}
-
-int ehci_submit_control_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int length, struct devrequest *setup)
-{
- if (usb_pipetype(pipe) != PIPE_CONTROL)
- {
- dbg("non-control pipe (type=%lu)", usb_pipetype(pipe));
- return -1;
- }
-
- if (usb_pipedevice(pipe) == rootdev)
- {
- if (rootdev == 0)
- dev->speed = USB_SPEED_HIGH;
- return ehci_submit_root(dev, pipe, buffer, length, setup);
- }
- return ehci_submit_async(dev, pipe, buffer, length, setup);
-}
-
-int ehci_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int length, int interval)
-{
- dbg("submit_int_msg dev=%p, pipe=%lu, buffer=%p, length=%d, interval=%d", dev, pipe, buffer, length, interval);
- return -1;
-}
-
diff --git a/BaS_gcc/pci/ohci-hcd.c b/BaS_gcc/pci/ohci-hcd.c
deleted file mode 100644
index 3f635b2..0000000
--- a/BaS_gcc/pci/ohci-hcd.c
+++ /dev/null
@@ -1,2380 +0,0 @@
-/*
- * URB OHCI HCD (Host Controller Driver) for USB and PCI bus.
- *
- * Interrupt support is added. Now, it has been tested
- * on ULI1575.cpu and works well with USB keyboard.
- *
- * (C) Copyright 2007
- * Zhang Wei, Freescale Semiconductor, Inc.
- *
- * (C) Copyright 2003
- * Gary Jennejohn, DENX Software Engineering
- *
- * Note: Much of this code has been derived from Linux 2.4
- * (C) Copyright 1999 Roman Weissgaerber
- * (C) Copyright 2000-2002 David Brownell
- *
- * Modified for the MP2USB by (C) Copyright 2005 Eric Benard
- * ebenard@eukrea.com - based on s3c24x0's driver
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- */
-/*
- * IMPORTANT NOTE
- * this driver is intended for use with USB Mass Storage Devices
- * (BBB) and USB keyboard. There is NO support for Isochronous pipes!
- */
-
-
-#include "wait.h" /* for wait_ms routines */
-#include "bas_printf.h"
-#include "bas_string.h" /* for memset() */
-#include "pci.h"
-#include "interrupts.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#undef OHCI_USE_NPS /* force NoPowerSwitching mode */
-
-#undef OHCI_VERBOSE_DEBUG /* not always helpful */
-#undef OHCI_FILL_TRACE
-
-#include "usb.h"
-#include "ohci.h"
-#include "util.h" /* for endian conversions */
-
-/* For initializing controller (mask in an HCFS mode too) */
-#define OHCI_CONTROL_INIT (OHCI_CTRL_CBSR & 0x3) | OHCI_CTRL_IE | OHCI_CTRL_PLE
-
-/*
- * e.g. PCI controllers need this
- */
-
-#define CONFIG_SYS_OHCI_SWAP_REG_ACCESS
-#ifdef CONFIG_SYS_OHCI_SWAP_REG_ACCESS
-
-/*
- * do a longword read from addr and byteswap the result
- */
-static inline uint32_t readl(volatile uint32_t *addr)
-{
- uint32_t res;
-
- res = swpl(*addr);
- //chip_errata_135();
- //dbg("reading from 0x%08x = 0x%08x\r\n", addr, res);
- return res;
-}
-
-/*
- * byteswap value and write it to address
- */
-static inline void writel(uint32_t value, volatile uint32_t *address)
-{
- // dbg("writing %08x to %08x\r\n", value, address);
- * (volatile uint32_t *) address = swpl(value);
-}
-#else
-/*
-#define readl(a) (*((volatile uint32_t *)(a)))
-#define writel(a, b) (*((volatile uint32_t *)(b)) = ((volatile uint32_t)a))
-*/
-#error CONFIG_SYS_OHCI_SWAP_REG_ACESS must be defined
-#endif /* CONFIG_SYS_OHCI_SWAP_REG_ACCESS */
-
-#define min_t(type, x, y) ({ type __x = (x); type __y = (y); __x < __y ? __x: __y; })
-
-struct pci_device_id ohci_usb_pci_table[] =
-{
-{
- PCI_VENDOR_ID_AL,
- PCI_DEVICE_ID_AL_M5237,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_OHCI,
- 0,
- 0
-}, /* ULI1575 PCI OHCI module ids */
-{
- PCI_VENDOR_ID_NEC,
- PCI_DEVICE_ID_NEC_USB,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_OHCI,
- 0,
- 0
-}, /* NEC PCI OHCI module ids */
-{
- PCI_VENDOR_ID_NEC,
- PCI_DEVICE_ID_NEC_USB_A,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_OHCI,
- 0,
- 0
-}, /* NEC PCI OHCI module ids */
-{
- PCI_VENDOR_ID_PHILIPS,
- PCI_DEVICE_ID_PHILIPS_ISP1561,
- PCI_ANY_ID,
- PCI_ANY_ID,
- PCI_CLASS_SERIAL_USB_OHCI,
- 0,
- 0
-}, /* Philips 1561 PCI OHCI module ids */
-/* Please add supported PCI OHCI controller ids here */
-{
- 0,
- 0,
- 0,
- 0,
- 0,
- 0,
- 0
-}
-};
-
-/* global ohci_t */
-static ohci_t gohci[10];
-int ohci_inited;
-
-static inline uint32_t roothub_a(volatile ohci_t *ohci) { return readl(&ohci->regs->roothub.a); }
-static inline uint32_t roothub_b(volatile ohci_t *ohci) { return readl(&ohci->regs->roothub.b); }
-static inline uint32_t roothub_status(volatile ohci_t *ohci) { return readl(&ohci->regs->roothub.status); }
-static inline uint32_t roothub_portstatus(volatile ohci_t *ohci, int i) { return readl(&ohci->regs->roothub.portstatus[i]); }
-
-/* forward declaration */
-static int hc_interrupt(volatile ohci_t *ohci);
-static void td_submit_job(volatile ohci_t *ohci, struct usb_device *dev, uint32_t pipe,
- void *buffer, int transfer_len, struct devrequest *setup,
- volatile urb_priv_t *urb, int interval);
-
-
-static struct td *ptd;
-
-/* TDs ... */
-static struct td *td_alloc(struct usb_device *usb_dev)
-{
- int i;
- struct td *td;
-
- td = NULL;
-
- for (i = 0; i < NUM_TD; i++)
- {
- if (ptd[i].usb_dev == NULL)
- {
- td = &ptd[i];
- td->usb_dev = usb_dev;
- break;
- }
- }
- return td;
-}
-
-/*-------------------------------------------------------------------------*
- * URB support functions
- *-------------------------------------------------------------------------*/
-
-/* free HCD-private data associated with this URB */
-
-static void urb_free_priv(volatile urb_priv_t *urb)
-{
- int i;
- struct td *td;
- int last = urb->length - 1;
-
- if (last >= 0)
- {
- for (i = 0; i <= last; i++)
- {
- td = urb->td[i];
- if (td)
- {
- td->usb_dev = NULL;
- urb->td[i] = NULL;
- }
- }
- }
- /* FIXME: driver_mem_free(urb); */
-}
-
-/*-------------------------------------------------------------------------*/
-
-#ifdef DEBUG_OHCI
-static int sohci_get_current_frame_number(ohci_t *ohci, struct usb_device *dev);
-
-/* debug| print the main components of an URB
- * small: 0) header + data packets 1) just header */
-
-static void pkt_print(ohci_t *ohci, urb_priv_t *purb, struct usb_device *dev,
- uint32_t pipe, void *buffer, int transfer_len,
- struct devrequest *setup, char *str, int small)
-{
- dbg("%s URB:[%4x] dev:%2lu,ep:%2lu-%c,type:%s,len:%d/%d stat:%#lx\r\n",
- str,
- sohci_get_current_frame_number(ohci, dev),
- usb_pipedevice(pipe),
- usb_pipeendpoint(pipe),
- usb_pipeout(pipe)? 'O': 'I',
- usb_pipetype(pipe) < 2 ? \
- (usb_pipeint(pipe)? "INTR": "ISOC"): \
- (usb_pipecontrol(pipe)? "CTRL": "BULK"),
- (purb ? purb->actual_length : 0),
- transfer_len, dev->status);
-#ifdef OHCI_VERBOSE_DEBUG
- if (!small)
- {
- int i;
- int len;
-
- if (usb_pipecontrol(pipe))
- {
- dbg(__FILE__ ": cmd(8):");
- for (i = 0; i < 8 ; i++)
- dbg(" %02x", ((uint8_t *)setup)[i]);
- dbg("\r\n");
- }
-
- if (transfer_len > 0 && buffer)
- {
- dbg(__FILE__ ": data(%d/%d):", (purb ? purb->actual_length : 0), transfer_len);
- len = usb_pipeout(pipe)? transfer_len : (purb ? purb->actual_length : 0);
-
- for (i = 0; i < 16 && i < len; i++)
- dbg(" %02x", ((uint8_t *)buffer)[i]);
- dbg("%s\r\n", i < len? "...": "");
- }
- }
-#endif
-}
-
-/*
- * just for debugging; prints non-empty branches of the int ed tree
- * inclusive iso eds
- */
-static void ep_print_int_eds(ohci_t *ohci, char *str)
-{
- int i, j;
- uint32_t *ed_p;
-
- for (i = 0; i < 32; i++)
- {
- j = 5;
- ed_p = &(ohci->hcca->int_table[i]);
- if (*ed_p == 0)
- continue;
-
- dbg("%s branch int %2d(%2x):\r\n", str, i, i);
- while (*ed_p != 0 && j--)
- {
- ed_t *ed = (ed_t *) swpl((uint32_t) ed_p);
- dbg(" ed: %4x;", ed->hwINFO);
- ed_p = &ed->hwNextED;
- }
- dbg("\r\n");
- }
-}
-
-static void ohci_dump_intr_mask(char *label, uint32_t mask)
-{
- dbg("%s: 0x%08x%s%s%s%s%s%s%s%s%s\r\n",
- label,
- mask,
- (mask & OHCI_INTR_MIE) ? " MIE" : "",
- (mask & OHCI_INTR_OC) ? " OC" : "",
- (mask & OHCI_INTR_RHSC) ? " RHSC" : "",
- (mask & OHCI_INTR_FNO) ? " FNO" : "",
- (mask & OHCI_INTR_UE) ? " UE" : "",
- (mask & OHCI_INTR_RD) ? " RD" : "",
- (mask & OHCI_INTR_SF) ? " SF" : "",
- (mask & OHCI_INTR_WDH) ? " WDH" : "",
- (mask & OHCI_INTR_SO) ? " SO" : ""
- );
-}
-
-static void maybe_print_eds(ohci_t *controller, char *label, uint32_t value)
-{
- ed_t *edp;
-
- value += controller->dma_offset;
- edp = (ed_t *) value;
- (void) edp;
-
- if (value && (value < 0xDFFFF0)) /* STRAM */
- {
- dbg("%s %08x\r\n", label, value);
- dbg("%08x\r\n", edp->hwINFO);
- dbg("%08x\r\n", edp->hwTailP);
- dbg("%08x\r\n", edp->hwHeadP);
- dbg("%08x\r\n", edp->hwNextED);
- }
-}
-
-static char *hcfs2string(int state)
-{
- switch (state)
- {
- case OHCI_USB_RESET: return "reset";
- case OHCI_USB_RESUME: return "resume";
- case OHCI_USB_OPER: return "operational";
- case OHCI_USB_SUSPEND: return "suspend";
- }
- return "?";
-}
-
-/* dump control and status registers */
-static void ohci_dump_status(ohci_t *controller)
-{
- struct ohci_regs *regs = controller->regs;
- uint32_t temp = readl(®s->revision) & 0xff;
-
- if (temp != 0x10)
- dbg("spec %d.%d\r\n", (temp >> 4), (temp & 0x0f));
-
- temp = readl(®s->control);
- dbg("control: 0x%08x%s%s%s HCFS=%s%s%s%s%s CBSR=%d\r\n", temp,
- (temp & OHCI_CTRL_RWE) ? " RWE" : "",
- (temp & OHCI_CTRL_RWC) ? " RWC" : "",
- (temp & OHCI_CTRL_IR) ? " IR" : "",
- hcfs2string(temp & OHCI_CTRL_HCFS),
- (temp & OHCI_CTRL_BLE) ? " BLE" : "",
- (temp & OHCI_CTRL_CLE) ? " CLE" : "",
- (temp & OHCI_CTRL_IE) ? " IE" : "",
- (temp & OHCI_CTRL_PLE) ? " PLE" : "",
- temp & OHCI_CTRL_CBSR
- );
-
- temp = readl(®s->cmdstatus);
- dbg("cmdstatus: 0x%08x SOC=%d%s%s%s%s\r\n", temp,
- (temp & OHCI_SOC) >> 16,
- (temp & OHCI_OCR) ? " OCR" : "",
- (temp & OHCI_BLF) ? " BLF" : "",
- (temp & OHCI_CLF) ? " CLF" : "",
- (temp & OHCI_HCR) ? " HCR" : ""
- );
- ohci_dump_intr_mask("intrstatus", readl(®s->intrstatus));
- ohci_dump_intr_mask("intrenable", readl(®s->intrenable));
- maybe_print_eds(controller, "ed_periodcurrent", readl(®s->ed_periodcurrent));
- maybe_print_eds(controller, "ed_controlhead", readl(®s->ed_controlhead));
- maybe_print_eds(controller, "ed_controlcurrent", readl(®s->ed_controlcurrent));
- maybe_print_eds(controller, "ed_bulkhead", readl(®s->ed_bulkhead));
- maybe_print_eds(controller, "ed_bulkcurrent", readl(®s->ed_bulkcurrent));
- maybe_print_eds(controller, "donehead", readl(®s->donehead));
-}
-
-static void ohci_dump_roothub(ohci_t *controller, int verbose)
-{
- uint32_t temp;
- uint32_t ndp;
- uint32_t i;
-
- temp = roothub_a(controller);
- (void) temp;
-
- // ndp = (temp & RH_A_NDP);
- ndp = controller->ndp;
- if (verbose)
- {
- dbg("roothub.a: %08x POTPGT=%d%s%s%s%s%s NDP=%d\r\n", temp,
- ((temp & RH_A_POTPGT) >> 24) & 0xff,
- (temp & RH_A_NOCP) ? " NOCP" : "",
- (temp & RH_A_OCPM) ? " OCPM" : "",
- (temp & RH_A_DT) ? " DT" : "",
- (temp & RH_A_NPS) ? " NPS" : "",
- (temp & RH_A_PSM) ? " PSM" : "",
- ndp
- );
- temp = roothub_b(controller);
- dbg("roothub.b: %08x PPCM=%04x DR=%04x\r\n",
- temp,
- (temp & RH_B_PPCM) >> 16,
- (temp & RH_B_DR)
- );
- temp = roothub_status(controller);
- dbg("roothub.status: %08x%s%s%s%s%s%s\r\n",
- temp,
- (temp & RH_HS_CRWE) ? " CRWE" : "",
- (temp & RH_HS_OCIC) ? " OCIC" : "",
- (temp & RH_HS_LPSC) ? " LPSC" : "",
- (temp & RH_HS_DRWE) ? " DRWE" : "",
- (temp & RH_HS_OCI) ? " OCI" : "",
- (temp & RH_HS_LPS) ? " LPS" : ""
- );
- }
-
- for (i = 0; i < ndp; i++)
- {
- temp = roothub_portstatus(controller, i);
- dbg("roothub.portstatus [%d] = 0x%08x%s%s%s%s%s%s%s%s%s%s%s%s\r\n",
- i,
- temp,
- (temp & RH_PS_PRSC) ? " PRSC" : "",
- (temp & RH_PS_OCIC) ? " OCIC" : "",
- (temp & RH_PS_PSSC) ? " PSSC" : "",
- (temp & RH_PS_PESC) ? " PESC" : "",
- (temp & RH_PS_CSC) ? " CSC" : "",
-
- (temp & RH_PS_LSDA) ? " LSDA" : "",
- (temp & RH_PS_PPS) ? " PPS" : "",
- (temp & RH_PS_PRS) ? " PRS" : "",
- (temp & RH_PS_POCI) ? " POCI" : "",
- (temp & RH_PS_PSS) ? " PSS" : "",
-
- (temp & RH_PS_PES) ? " PES" : "",
- (temp & RH_PS_CCS) ? " CCS" : ""
- );
- }
-}
-
-static void ohci_dump(ohci_t *ohci, int verbose)
-{
- dbg("OHCI controller usb-%s-%c state\r\n", ohci->slot_name, (char)ohci->controller + '0');
- /* dumps some of the state we know about */
- ohci_dump_status(ohci);
- if (verbose)
- ep_print_int_eds(ohci, "hcca");
- dbg("hcca frame #%04x\r\n", ohci->hcca->frame_no);
- ohci_dump_roothub(ohci, 1);
-}
-#endif /* DEBUG_OHCI */
-
-/*
- * Interface functions (URB)
- */
-
-/* get a transfer request */
-
-static int sohci_submit_job(volatile ohci_t *ohci, volatile urb_priv_t *urb, struct devrequest *setup)
-{
- volatile ed_t *ed;
- volatile urb_priv_t *purb_priv = urb;
- int i;
- int size = 0;
- struct usb_device *dev = urb->dev;
- uint32_t pipe = urb->pipe;
- void *buffer = urb->transfer_buffer;
- int transfer_len = urb->transfer_buffer_length;
- int interval = urb->interval;
-
- /*
- * when controller's hung, permit only roothub cleanup attempts
- * such as powering down ports
- */
- if (ohci->disabled)
- {
- urb_free_priv(purb_priv); // added
- err("sohci_submit_job: EPIPE\r\n");
-
- return -1;
- }
-
- /*
- * we're about to begin a new transaction here so mark the
- * URB unfinished
- */
- urb->finished = 0;
-
- /* every endpoint has an ed, locate and fill it */
- ed = ep_add_ed(ohci, dev, pipe, interval, 1);
- if (!ed)
- {
- urb_free_priv(purb_priv); // added
- err("sohci_submit_job: ENOMEM");
- return -1;
- }
-
- /* for the private part of the URB we need the number of TDs (size) */
- switch (usb_pipetype(pipe))
- {
- case PIPE_BULK: /* one TD for every 4096 Byte */
- size = (transfer_len - 1) / 4096 + 1;
- break;
-
- case PIPE_CONTROL:/* 1 TD for setup, 1 for ACK and 1 for every 4096 B */
- size = (transfer_len == 0) ? 2 : (transfer_len - 1) / 4096 + 3;
- break;
-
- case PIPE_INTERRUPT: /* 1 TD */
- size = 1;
- break;
- }
- ed->purb = urb;
- if (size >= (N_URB_TD - 1))
- {
- urb_free_priv(purb_priv); // added
- err("need %d TDs, only have %d", size, N_URB_TD);
- return -1;
- }
- purb_priv->pipe = pipe;
-
- /* fill the private part of the URB */
- purb_priv->length = size;
- purb_priv->ed = ed;
- purb_priv->actual_length = 0;
-
- /* allocate the TDs */
- /* note that td[0] was allocated in ep_add_ed */
- for (i = 0; i < size; i++)
- {
- purb_priv->td[i] = td_alloc(dev);
- if (!purb_priv->td[i])
- {
- purb_priv->length = i;
- urb_free_priv(purb_priv);
- err("sohci_submit_job: ENOMEM\r\n");
- return -1;
- }
- }
-
- if (ed->state == ED_NEW || (ed->state & ED_DEL))
- {
- urb_free_priv(purb_priv);
- err("sohci_submit_job: EINVAL\r\n");
- return -1;
- }
-
- /* link the ed into a chain if is not already */
- if (ed->state != ED_OPER)
- {
- ep_link(ohci, ed);
- }
-
- /* fill the TDs and link it to the ed */
- td_submit_job(ohci, dev, pipe, buffer, transfer_len, setup, purb_priv, interval);
-
- return 0;
-}
-
-static inline int sohci_return_job(volatile ohci_t *ohci, volatile urb_priv_t *urb)
-{
- volatile struct ohci_regs *regs = ohci->regs;
-
- switch (usb_pipetype(urb->pipe))
- {
- case PIPE_INTERRUPT:
- /* implicitly requeued */
- if ((urb->dev->irq_handle != NULL) && (urb->dev->irq_act_len = urb->actual_length))
- {
- writel(OHCI_INTR_WDH, ®s->intrenable);
- readl(®s->intrenable); /* PCI posting flush */
-
- /* call interrupt device routine */
- dbg("irq_handle device %d", urb->dev->devnum);
- urb->dev->irq_handle(urb->dev);
-
- writel(OHCI_INTR_WDH, ®s->intrdisable);
- readl(®s->intrdisable); /* PCI posting flush */
- }
- urb->actual_length = 0;
- td_submit_job(ohci, urb->dev, urb->pipe, urb->transfer_buffer, urb->transfer_buffer_length, NULL, urb, urb->interval);
- break;
-
- case PIPE_CONTROL:
- case PIPE_BULK:
- break;
-
- default:
- return 0;
- }
- return 1;
-}
-
-/*-------------------------------------------------------------------------*/
-
-#ifdef DEBUG_OHCI
-/* tell us the current USB frame number */
-
-static int sohci_get_current_frame_number(ohci_t *ohci, struct usb_device *usb_dev)
-{
- return swpw(ohci->hcca->frame_no);
-}
-#endif
-
-/*-------------------------------------------------------------------------*
- * ED handling functions
- *-------------------------------------------------------------------------*/
-
-/*
- * search for the right branch to insert an interrupt ed into the int tree
- * do some load balancing;
- * returns the branch and
- * sets the interval to interval = 2^integer (ld (interval))
- */
-
-static int ep_int_balance(volatile ohci_t *ohci, int interval, int load)
-{
- int i;
- int branch = 0;
-
- /*
- * search for the least loaded interrupt endpoint
- * branch of all 32 branches
- */
- for (i = 0; i < 32; i++)
- {
- if (ohci->ohci_int_load[branch] > ohci->ohci_int_load[i])
- branch = i;
- }
- branch = branch % interval;
- for (i = branch; i < 32; i += interval)
- ohci->ohci_int_load[i] += load;
- return branch;
-}
-
-/*-------------------------------------------------------------------------*/
-
-/* 2^int( ld (inter)) */
-
-static int ep_2_n_interval(int inter)
-{
- int i;
-
- for (i = 0; ((inter >> i) > 1) && (i < 5); i++);
- return 1 << i;
-}
-
-/*-------------------------------------------------------------------------*/
-
-/*
- * the int tree is a binary tree
- * in order to process it sequentially the indexes of the branches have to
- * be mapped the mapping reverses the bits of a word of num_bits length
- */
-static int ep_rev(int num_bits, int word)
-{
- int i;
- int wout = 0;
-
- for (i = 0; i < num_bits; i++)
- wout |= (((word >> i) & 1) << (num_bits - i - 1));
-
- return wout;
-}
-
-/*-------------------------------------------------------------------------*
- * ED handling functions
- *-------------------------------------------------------------------------*/
-
-/* link an ed into one of the HC chains */
-
-static int ep_link(volatile ohci_t *ohci, volatile ed_t *edi)
-{
- volatile ed_t *ed = edi;
- int int_branch;
- int i;
- int inter;
- int interval;
- int load;
- volatile uint32_t *ed_p;
-
- ed->state = ED_OPER;
- ed->int_interval = 0;
- switch (ed->type)
- {
- case PIPE_CONTROL:
- ed->hwNextED = 0;
- if (ohci->ed_controltail == NULL)
- writel((uint32_t) ed - ohci->dma_offset, &ohci->regs->ed_controlhead);
- else
- ohci->ed_controltail->hwNextED = swpl((uint32_t)ed - ohci->dma_offset);
-
- ed->ed_prev = ohci->ed_controltail;
- if (!ohci->ed_controltail && !ohci->ed_rm_list[0] && !ohci->ed_rm_list[1] && !ohci->sleeping)
- {
- ohci->hc_control |= OHCI_CTRL_CLE;
- writel(ohci->hc_control, &ohci->regs->control);
- }
- ohci->ed_controltail = edi;
- break;
-
- case PIPE_BULK:
- ed->hwNextED = 0;
- if (ohci->ed_bulktail == NULL)
- writel((uint32_t) ed - ohci->dma_offset, &ohci->regs->ed_bulkhead);
- else
- ohci->ed_bulktail->hwNextED = swpl((uint32_t)ed - ohci->dma_offset);
- ed->ed_prev = ohci->ed_bulktail;
- if (!ohci->ed_bulktail && !ohci->ed_rm_list[0] && !ohci->ed_rm_list[1] && !ohci->sleeping)
- {
- ohci->hc_control |= OHCI_CTRL_BLE;
- writel(ohci->hc_control, &ohci->regs->control);
- }
- ohci->ed_bulktail = edi;
- break;
-
- case PIPE_INTERRUPT:
- load = ed->int_load;
- interval = ep_2_n_interval(ed->int_period);
- ed->int_interval = interval;
- int_branch = ep_int_balance(ohci, interval, load);
- ed->int_branch = int_branch;
- for (i = 0; i < ep_rev(6, interval); i += inter)
- {
- inter = 1;
- for (ed_p = &(ohci->hcca->int_table[ep_rev(5, i) + int_branch]);
- (*ed_p != 0) && (((volatile ed_t *)ed_p)->int_interval >= interval);
- ed_p = &(((ed_t *)ed_p)->hwNextED))
- inter = ep_rev(6, ((ed_t *)ed_p)->int_interval);
- ed->hwNextED = *ed_p;
- *ed_p = swpl((uint32_t)ed - ohci->dma_offset);
- }
- break;
- }
- return 0;
-}
-
-/*-------------------------------------------------------------------------*/
-
-/* scan the periodic table to find and unlink this ED */
-static void periodic_unlink(volatile struct ohci *ohci, volatile struct ed *ed, unsigned index, unsigned period)
-{
- for ( ;index < NUM_INTS; index += period)
- {
- volatile uint32_t *ed_p = &ohci->hcca->int_table[index];
-
- /* ED might have been unlinked through another path */
- while (*ed_p != 0)
- {
- if ((uint32_t)*ed_p == swpl((uint32_t)ed - ohci->dma_offset)) /* changed */
- {
- *ed_p = ed->hwNextED;
- break;
- }
- ed_p = &(((struct ed *)ed_p)->hwNextED); /* changed */
- }
- }
-}
-
-/*
- * unlink an ed from one of the HC chains.
- * just the link to the ed is unlinked.
- * the link from the ed still points to another operational ed or 0
- * so the HC can eventually finish the processing of the unlinked ed
- */
-
-static int ep_unlink(volatile ohci_t *ohci, volatile ed_t *edi)
-{
- volatile ed_t *ed = edi;
- int i;
-
- ed->hwINFO |= swpl(OHCI_ED_SKIP);
- switch (ed->type)
- {
- case PIPE_CONTROL:
- if (ed->ed_prev == NULL)
- {
- if (!ed->hwNextED)
- {
- ohci->hc_control &= ~OHCI_CTRL_CLE;
- writel(ohci->hc_control, &ohci->regs->control);
- }
- writel(swpl(*((uint32_t *)&ed->hwNextED)), &ohci->regs->ed_controlhead);
- }
- else
- ed->ed_prev->hwNextED = ed->hwNextED;
- if (ohci->ed_controltail == ed)
- ohci->ed_controltail = ed->ed_prev;
- else
- ((ed_t *)(swpl(*((uint32_t *)&ed->hwNextED)) + ohci->dma_offset))->ed_prev = ed->ed_prev;
- break;
-
- case PIPE_BULK:
- if (ed->ed_prev == NULL)
- {
- if (!ed->hwNextED)
- {
- ohci->hc_control &= ~OHCI_CTRL_BLE;
- writel(ohci->hc_control, &ohci->regs->control);
- }
- writel(swpl(*((uint32_t *) &ed->hwNextED)), &ohci->regs->ed_bulkhead);
- }
- else
- ed->ed_prev->hwNextED = ed->hwNextED;
-
- if (ohci->ed_bulktail == ed)
- ohci->ed_bulktail = ed->ed_prev;
- else
- ((ed_t *)(swpl(*((uint32_t *) &ed->hwNextED)) + ohci->dma_offset))->ed_prev = ed->ed_prev;
- break;
-
- case PIPE_INTERRUPT:
- periodic_unlink(ohci, ed, 0, 1);
- for (i = ed->int_branch; i < 32; i += ed->int_interval)
- ohci->ohci_int_load[i] -= ed->int_load;
- break;
- }
- ed->state = ED_UNLINK;
- return 0;
-}
-
-/*-------------------------------------------------------------------------*/
-
-/*
- * add/reinit an endpoint; this should be done once at the
- * usb_set_configuration command, but the USB stack is a little bit
- * stateless so we do it at every transaction if the state of the ed
- * is ED_NEW then a dummy td is added and the state is changed to
- * ED_UNLINK in all other cases the state is left unchanged the ed
- * info fields are setted anyway even though most of them should not
- * change
- */
-static ed_t *ep_add_ed(volatile ohci_t *ohci, struct usb_device *usb_dev, uint32_t pipe, int interval, int load)
-{
- td_t *td;
- ed_t *ed_ret;
- volatile ed_t *ed;
- struct ohci_device *ohci_dev = ohci->ohci_dev;
-
- ed = ed_ret = &ohci_dev->ed[(usb_pipeendpoint(pipe) << 1) | (usb_pipecontrol(pipe)? 0: usb_pipeout(pipe))];
- if ((ed->state & ED_DEL) || (ed->state & ED_URB_DEL))
- {
- err("ep_add_ed: pending delete");
- /* pending delete request */
- return NULL;
- }
-
- if (ed->state == ED_NEW)
- {
- /* dummy td; end of td list for ed */
- td = td_alloc(usb_dev);
- ed->hwTailP = swpl((uint32_t)td - ohci->dma_offset);
- ed->hwHeadP = ed->hwTailP;
- ed->state = ED_UNLINK;
- ed->type = usb_pipetype(pipe);
- ohci_dev->ed_cnt++;
- }
-
- ed->hwINFO = swpl(usb_pipedevice(pipe)
- | usb_pipeendpoint(pipe) << 7
- | (usb_pipeisoc(pipe)? 0x8000: 0)
- | (usb_pipecontrol(pipe)? 0: (usb_pipeout(pipe)? 0x800: 0x1000))
- | usb_pipeslow(pipe) << 13
- | usb_maxpacket(usb_dev, pipe) << 16);
-
- if (ed->type == PIPE_INTERRUPT && ed->state == ED_UNLINK)
- {
- ed->int_period = interval;
- ed->int_load = load;
- }
- return ed_ret;
-}
-
-/*-------------------------------------------------------------------------*
- * TD handling functions
- *-------------------------------------------------------------------------*/
-
-/* enqueue next TD for this URB (OHCI spec 5.2.8.2) */
-
-static void td_fill(volatile ohci_t *ohci, unsigned int info, void *data, int len,
- struct usb_device *dev, int index, volatile urb_priv_t *urb_priv)
-{
- volatile td_t *td;
- volatile td_t *td_pt;
-
-#ifdef OHCI_FILL_TRACE
- int i;
-#endif
- if (index > urb_priv->length)
- {
- err("index > length");
- return;
- }
- /* use this td as the next dummy */
- td_pt = urb_priv->td[index];
- td_pt->hwNextTD = 0;
-
- /* fill the old dummy TD */
- td = urb_priv->td[index] = (td_t *)((swpl(urb_priv->ed->hwTailP) & ~0xf) + ohci->dma_offset);
- td->ed = urb_priv->ed;
- td->next_dl_td = NULL;
- td->index = index;
- td->data = (uint32_t)data;
-#ifdef OHCI_FILL_TRACE
- if (usb_pipebulk(urb_priv->pipe) && usb_pipeout(urb_priv->pipe))
- {
- for (i = 0; i < len; i++)
- dbg("td->data[%d] %#2x ", i, ((unsigned char *)td->data)[i]);
- dbg("\r\n");
- }
-#endif
- if (!len)
- data = NULL;
- td->hwINFO = swpl(info);
- if (data != NULL)
- {
- td->hwCBP = swpl((uint32_t)data - ohci->dma_offset);
- td->hwBE = swpl((uint32_t)(data + len - 1 - ohci->dma_offset));
- }
- else
- {
- td->hwCBP = 0;
- td->hwBE = 0;
- }
- td->hwNextTD = swpl((uint32_t)td_pt - ohci->dma_offset);
- /* append to queue */
- td->ed->hwTailP = td->hwNextTD;
-
-#if 0
- if (data)
- {
- int i;
- dbg("td_fill: %08x %08x %08X %08X at 0x%08X\r\n",
- swpl(td->hwINFO), swpl(td->hwCBP), swpl(td->hwNextTD), swpl(td->hwBE), td);
- for (i = 0; i < len; i++)
- dbg("%02X ", *(unsigned char *)(data + i) & 0xff);
- dbg("\r\n");
- }
- else
- dbg("td_fill: %08x %08x %08X %08X at 0x%08X\r\n",
- swpl(td->hwINFO), swpl(td->hwCBP), swpl(td->hwNextTD), swpl(td->hwBE), td);
-#endif
-}
-
-/*-------------------------------------------------------------------------*/
-
-/* prepare all TDs of a transfer */
-
-static void td_submit_job(volatile ohci_t *ohci, struct usb_device *dev, uint32_t pipe,
- void *buffer, int transfer_len, struct devrequest *setup,
- volatile urb_priv_t *urb, int interval)
-{
- int data_len = transfer_len;
- void *data;
- int cnt = 0;
- uint32_t info = 0;
- unsigned int toggle = 0;
-
- /* OHCI handles the DATA-toggles itself, we just use the USB-toggle
- * bits for reseting */
- if (usb_gettoggle(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe)))
- toggle = TD_T_TOGGLE;
- else
- {
- toggle = TD_T_DATA0;
- usb_settoggle(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe), 1);
- }
-
- urb->td_cnt = 0;
- if (data_len)
- data = buffer;
- else
- data = NULL;
-
- switch (usb_pipetype(pipe))
- {
- case PIPE_BULK:
- info = usb_pipeout(pipe) ? TD_CC | TD_DP_OUT : TD_CC | TD_DP_IN ;
- while (data_len > 4096)
- {
- td_fill(ohci, info | (cnt? TD_T_TOGGLE : toggle), data, 4096, dev, cnt, urb);
- data += 4096; data_len -= 4096; cnt++;
- }
- info = usb_pipeout(pipe) ? TD_CC | TD_DP_OUT : TD_CC | TD_R | TD_DP_IN ;
- td_fill(ohci, info | (cnt? TD_T_TOGGLE:toggle), data, data_len, dev, cnt, urb);
- cnt++;
- if (!ohci->sleeping) /* start bulk list */
- writel(OHCI_BLF, &ohci->regs->cmdstatus);
- break;
-
- case PIPE_CONTROL:
- /* Setup phase */
- info = TD_CC | TD_DP_SETUP | TD_T_DATA0;
- td_fill(ohci, info, setup, 8, dev, cnt++, urb);
- /* Optional Data phase */
- if (data_len > 0)
- {
- info = usb_pipeout(pipe) ? TD_CC | TD_R | TD_DP_OUT | TD_T_DATA1 : TD_CC | TD_R | TD_DP_IN | TD_T_DATA1;
- /* NOTE: mishandles transfers >8K, some >4K */
- td_fill(ohci, info, data, data_len, dev, cnt++, urb);
- }
- /* Status phase */
- info = usb_pipeout(pipe) ? TD_CC | TD_DP_IN | TD_T_DATA1 : TD_CC | TD_DP_OUT | TD_T_DATA1;
- td_fill(ohci, info, data, 0, dev, cnt++, urb);
- if (!ohci->sleeping) /* start Control list */
- writel(OHCI_CLF, &ohci->regs->cmdstatus);
- break;
-
- case PIPE_INTERRUPT:
- info = usb_pipeout(urb->pipe) ? TD_CC | TD_DP_OUT | toggle : TD_CC | TD_R | TD_DP_IN | toggle;
- td_fill(ohci, info, data, data_len, dev, cnt++, urb);
- break;
- }
- if (urb->length != cnt)
- dbg("TD LENGTH %d != CNT %d", urb->length, cnt);
-}
-
-/*-------------------------------------------------------------------------*
- * Done List handling functions
- *-------------------------------------------------------------------------*/
-
-/* calculate the transfer length and update the urb */
-
-static void dl_transfer_length(volatile ohci_t *ohci, volatile td_t *td)
-{
- uint32_t tdBE;
- uint32_t tdCBP;
-
- volatile urb_priv_t *lurb_priv = td->ed->purb;
-
- tdBE = swpl(td->hwBE);
- tdCBP = swpl(td->hwCBP);
-
- if (tdBE)
- tdBE += ohci->dma_offset;
- if (tdCBP)
- tdCBP += ohci->dma_offset;
-
- if (!(usb_pipecontrol(lurb_priv->pipe) && ((td->index == 0) || (td->index == lurb_priv->length - 1))))
- {
- if (tdBE != 0)
- {
- if (td->hwCBP == 0)
- lurb_priv->actual_length += (tdBE - td->data + 1);
- else
- lurb_priv->actual_length += (tdCBP - td->data);
- }
- }
-}
-
-/*-------------------------------------------------------------------------*/
-static void check_status(volatile ohci_t *ohci, td_t *td_list)
-{
- volatile urb_priv_t *lurb_priv = td_list->ed->purb;
- int urb_len = lurb_priv->length;
- volatile uint32_t *phwHeadP = &td_list->ed->hwHeadP;
- int cc = TD_CC_GET(swpl(td_list->hwINFO));
-
- if (cc)
- {
- err("OHCI usb-%s-%c error: %s (%x)\r\n", ohci->slot_name, (char) ohci->controller + '0', cc_to_string[cc], cc);
- if (*phwHeadP & swpl(0x1))
- {
- if (lurb_priv && ((td_list->index + 1) < urb_len))
- {
- *phwHeadP = (lurb_priv->td[urb_len - 1]->hwNextTD & swpl(0xfffffff0)) | (*phwHeadP & swpl(0x2));
- lurb_priv->td_cnt += urb_len - td_list->index - 1;
- }
- else
- *phwHeadP &= swpl(0xfffffff2);
- }
-#ifdef CONFIG_MPC5200
- td_list->hwNextTD = 0;
-#endif
- }
-}
-
-/*
- * replies to the request have to be on a FIFO basis so
- * we reverse the reversed done-list
- */
-static td_t *dl_reverse_done_list(volatile ohci_t *ohci)
-{
- uint32_t td_list_hc;
- td_t *td_rev = NULL;
- td_t *td_list = NULL;
-
- td_list_hc = swpl(ohci->hcca->done_head) & ~0xf;
-
- if (td_list_hc)
- {
- td_list_hc += ohci->dma_offset;
- }
-
- ohci->hcca->done_head = 0;
- while (td_list_hc)
- {
- td_list = (td_t *) td_list_hc;
- check_status(ohci, td_list);
- td_list->next_dl_td = td_rev;
- td_rev = td_list;
- td_list_hc = swpl(td_list->hwNextTD) & ~0xf;
- if (td_list_hc)
- {
- td_list_hc += ohci->dma_offset;
- }
- }
- return td_list;
-}
-
-/*-------------------------------------------------------------------------*/
-
-static void finish_urb(volatile ohci_t *ohci, volatile urb_priv_t *urb, int status)
-{
- if ((status & (ED_OPER | ED_UNLINK)) && (urb->state != URB_DEL))
- {
- urb->finished = sohci_return_job(ohci, urb);
- }
- else
- {
- dbg("finish_urb: strange.., ED state %x, \r\n", status);
- }
-}
-
-/*
- * Used to take back a TD from the host controller. This would normally be
- * called from within dl_done_list, however it may be called directly if the
- * HC no longer sees the TD and it has not appeared on the donelist (after
- * two frames). This bug has been observed on ZF Micro systems.
- */
-static int takeback_td(volatile ohci_t *ohci, volatile td_t *td_list)
-{
- volatile ed_t *ed;
- int cc;
- int stat = 0;
- volatile urb_priv_t *lurb_priv;
- uint32_t tdINFO;
- uint32_t edHeadP;
- uint32_t edTailP;
-
- tdINFO = swpl(td_list->hwINFO);
-
- ed = td_list->ed;
- if (ed == NULL)
- {
- err("OHCI usb-%s-%c cannot get error code ED is null\r\n", ohci->slot_name, (char) ohci->controller + '0');
-
- return stat;
- }
-
- lurb_priv = ed->purb;
- dl_transfer_length(ohci, td_list);
- lurb_priv->td_cnt++;
-
- /* error code of transfer */
- cc = TD_CC_GET(tdINFO);
- if (cc)
- {
- err("OHCI usb-%s-%c error: %s (%x)\r\n", ohci->slot_name, (char) ohci->controller + '0', cc_to_string[cc], cc);
- stat = cc_to_error[cc];
- }
-
- /*
- * see if this done list makes for all TD's of current URB,
- * and mark the URB finished if so
- */
- if (lurb_priv->td_cnt == lurb_priv->length)
- {
- finish_urb(ohci, lurb_priv, ed->state);
- }
-
- if (ohci->irq)
- {
- dbg("dl_done_list: processing TD %x, len %x\r\n", lurb_priv->td_cnt, lurb_priv->length);
- }
-
- if (ed->state != ED_NEW && (!usb_pipeint(lurb_priv->pipe)))
- {
- edHeadP = swpl(ed->hwHeadP) & ~0xf;
- edTailP = swpl(ed->hwTailP);
-
- /* unlink eds if they are not busy */
- if ((edHeadP == edTailP) && (ed->state == ED_OPER))
- {
- ep_unlink(ohci, ed);
- }
- }
-
- if (cc && (ed->type == PIPE_INTERRUPT)) /* added, but it's not the better method */
- {
- ep_unlink(ohci, ed);
- }
- return stat;
-}
-
-static int dl_done_list(volatile ohci_t *ohci)
-{
- int stat = 0;
- volatile td_t *td_list = dl_reverse_done_list(ohci);
-
- while (td_list)
- {
- volatile td_t *td_next = td_list->next_dl_td;
-
- stat = takeback_td(ohci, td_list);
- td_list = td_next;
- }
- return stat;
-}
-
-/*-------------------------------------------------------------------------*
- * Virtual Root Hub
- *-------------------------------------------------------------------------*/
-
-/* Device descriptor */
-static uint8_t root_hub_dev_des[] =
-{
- 0x12, /* uint8_t bLength; */
- 0x01, /* uint8_t bDescriptorType; Device */
- 0x10, /* uint16_t bcdUSB; v1.1 */
- 0x01,
- 0x09, /* uint8_t bDeviceClass; HUB_CLASSCODE */
- 0x00, /* uint8_t bDeviceSubClass; */
- 0x00, /* uint8_t bDeviceProtocol; */
- 0x08, /* uint8_t bMaxPacketSize0; 8 Bytes */
- 0x00, /* uint16_t idVendor; */
- 0x00,
- 0x00, /* uint16_t idProduct; */
- 0x00,
- 0x00, /* uint16_t bcdDevice; */
- 0x00,
- 0x00, /* uint8_t iManufacturer; */
- 0x01, /* uint8_t iProduct; */
- 0x00, /* uint8_t iSerialNumber; */
- 0x01 /* uint8_t bNumConfigurations; */
-};
-
-/* Configuration descriptor */
-static uint8_t root_hub_config_des[] =
-{
- 0x09, /* uint8_t bLength; */
- 0x02, /* uint8_t bDescriptorType; Configuration */
- 0x19, /* uint16_t wTotalLength; */
- 0x00,
- 0x01, /* uint8_t bNumInterfaces; */
- 0x01, /* uint8_t bConfigurationValue; */
- 0x00, /* uint8_t iConfiguration; */
- 0x40, /* uint8_t bmAttributes;
- Bit 7: Bus-powered, 6: Self-powered, 5 Remote-wakwup, 4..0: resvd */
- 0x00, /* uint8_t MaxPower; */
-
- /* interface */
- 0x09, /* uint8_t if_bLength; */
- 0x04, /* uint8_t if_bDescriptorType; Interface */
- 0x00, /* uint8_t if_bInterfaceNumber; */
- 0x00, /* uint8_t if_bAlternateSetting; */
- 0x01, /* uint8_t if_bNumEndpoints; */
- 0x09, /* uint8_t if_bInterfaceClass; HUB_CLASSCODE */
- 0x00, /* uint8_t if_bInterfaceSubClass; */
- 0x00, /* uint8_t if_bInterfaceProtocol; */
- 0x00, /* uint8_t if_iInterface; */
-
- /* endpoint */
- 0x07, /* uint8_t ep_bLength; */
- 0x05, /* uint8_t ep_bDescriptorType; Endpoint */
- 0x81, /* uint8_t ep_bEndpointAddress; IN Endpoint 1 */
- 0x03, /* uint8_t ep_bmAttributes; Interrupt */
- 0x02, /* uint16_t ep_wMaxPacketSize; ((MAX_ROOT_PORTS + 1) / 8 */
- 0x00,
- 0xff /* uint8_t ep_bInterval; 255 ms */
-};
-
-static unsigned char root_hub_str_index0[] =
-{
- 0x04, /* uint8_t bLength; */
- 0x03, /* uint8_t bDescriptorType; String-descriptor */
- 0x09, /* uint8_t lang ID */
- 0x04, /* uint8_t lang ID */
-};
-
-static unsigned char root_hub_str_index1[] =
-{
- 28, /* uint8_t bLength; */
- 0x03, /* uint8_t bDescriptorType; String-descriptor */
- 'O', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'H', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'C', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'I', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- ' ', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'R', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'o', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'o', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 't', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- ' ', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'H', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'u', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
- 'b', /* uint8_t Unicode */
- 0, /* uint8_t Unicode */
-};
-
-/* Hub class-specific descriptor is constructed dynamically */
-
-/*-------------------------------------------------------------------------*/
-
-#define OK(x) len = (x); break
-#ifdef DEBUG_OHCI
-#define WR_RH_STAT(x) { err("WR:status %#8x", (x)); writel((x), &ohci->regs->roothub.status); }
-#define WR_RH_PORTSTAT(x) { err("WR:portstatus[%d] %#8x", wIndex - 1, (x)); writel((x), &ohci->regs->roothub.portstatus[wIndex - 1]); }
-#else
-#define WR_RH_STAT(x) { writel((x), &ohci->regs->roothub.status); }
-#define WR_RH_PORTSTAT(x) { writel((x), &ohci->regs->roothub.portstatus[wIndex - 1]); }
-#endif
-#define RD_RH_STAT roothub_status(ohci)
-#define RD_RH_PORTSTAT roothub_portstatus(ohci, wIndex-1)
-
-/* request to virtual root hub */
-
-int rh_check_port_status(ohci_t *controller)
-{
- uint32_t temp, ndp, i;
- int res = -1;
- temp = roothub_a(controller);
- // ndp = (temp & RH_A_NDP);
- ndp = controller->ndp;
- for (i = 0; i < ndp; i++)
- {
- temp = roothub_portstatus(controller, i);
-
- /* check for a device disconnect */
- if (((temp & (RH_PS_PESC | RH_PS_CSC)) == (RH_PS_PESC | RH_PS_CSC)) && ((temp & RH_PS_CCS) == 0))
- {
- res = i;
- break;
- }
-
- /* check for a device connect */
- if ((temp & RH_PS_CSC) && (temp & RH_PS_CCS))
- {
- res = i;
- break;
- }
- }
- return res;
-}
-
-static int ohci_submit_rh_msg(volatile ohci_t *ohci, struct usb_device *dev, uint32_t pipe,
- void *buffer, int transfer_len, struct devrequest *cmd)
-{
- void *data = buffer;
- int leni = transfer_len;
- int len = 0;
- int stat = 0;
- uint32_t datab[4];
- uint8_t *data_buf = (uint8_t *)datab;
- uint16_t bmRType_bReq;
- uint16_t wValue;
- uint16_t wIndex;
- uint16_t wLength;
-
-#ifdef DEBUG_OHCI
- pkt_print(ohci, NULL, dev, pipe, buffer, transfer_len, cmd, "SUB(rh)", usb_pipein(pipe));
-#else
- if (ohci->irq)
- {
- wait_ms(10);
- }
-#endif
-
- if (usb_pipeint(pipe))
- {
- err("Root-Hub submit IRQ: NOT implemented\r\n");
-
- return 0;
- }
-
- bmRType_bReq = cmd->requesttype | (cmd->request << 8);
- wValue = swpw(cmd->value);
- wIndex = swpw(cmd->index);
- wLength = swpw(cmd->length);
- dbg("Root-Hub: adr: %2x cmd(%1x): %08x %04x %04x %04x\r\n", dev->devnum, 8, bmRType_bReq, wValue, wIndex, wLength);
-
- switch (bmRType_bReq)
- {
- /*
- * Request Destination:
- * without flags: Device,
- * RH_INTERFACE: interface,
- * RH_ENDPOINT: endpoint,
- * RH_CLASS means HUB here,
- * RH_OTHER | RH_CLASS almost ever means HUB_PORT here
- */
- case RH_GET_STATUS:
- *(uint16_t *) data_buf = swpw(1);
- OK(2);
-
- case RH_GET_STATUS | RH_INTERFACE:
- *(uint16_t *) data_buf = swpw(0);
- OK(2);
-
- case RH_GET_STATUS | RH_ENDPOINT:
- *(uint16_t *) data_buf = swpw(0);
- OK(2);
-
- case RH_GET_STATUS | RH_CLASS:
- *(uint32_t *) data_buf = swpl(RD_RH_STAT & ~(RH_HS_CRWE | RH_HS_DRWE));
- OK(4);
-
- case RH_GET_STATUS | RH_OTHER | RH_CLASS:
- *(uint32_t *) data_buf = swpl(RD_RH_PORTSTAT);
- OK(4);
-
- case RH_CLEAR_FEATURE | RH_ENDPOINT:
- switch (wValue)
- {
- case (RH_ENDPOINT_STALL): OK(0);
- }
- break;
-
- case RH_CLEAR_FEATURE | RH_CLASS:
- switch (wValue)
- {
- case RH_C_HUB_LOCAL_POWER: OK(0);
- case (RH_C_HUB_OVER_CURRENT): WR_RH_STAT(RH_HS_OCIC); OK(0);
- }
- break;
-
- case RH_CLEAR_FEATURE | RH_OTHER | RH_CLASS:
- switch (wValue)
- {
- case (RH_PORT_ENABLE): WR_RH_PORTSTAT(RH_PS_CCS); OK(0);
- case (RH_PORT_SUSPEND): WR_RH_PORTSTAT(RH_PS_POCI); OK(0);
- case (RH_PORT_POWER): WR_RH_PORTSTAT(RH_PS_LSDA); OK(0);
- case (RH_C_PORT_CONNECTION): WR_RH_PORTSTAT(RH_PS_CSC); OK(0);
- case (RH_C_PORT_ENABLE): WR_RH_PORTSTAT(RH_PS_PESC); OK(0);
- case (RH_C_PORT_SUSPEND): WR_RH_PORTSTAT(RH_PS_PSSC); OK(0);
- case (RH_C_PORT_OVER_CURRENT):WR_RH_PORTSTAT(RH_PS_OCIC); OK(0);
- case (RH_C_PORT_RESET): WR_RH_PORTSTAT(RH_PS_PRSC); OK(0);
- }
- break;
-
- case RH_SET_FEATURE | RH_OTHER | RH_CLASS:
- switch (wValue)
- {
- case (RH_PORT_SUSPEND):
- WR_RH_PORTSTAT(RH_PS_PSS);
- OK(0);
- case (RH_PORT_RESET): /* BUG IN HUP CODE *********/
- if (RD_RH_PORTSTAT & RH_PS_CCS)
- WR_RH_PORTSTAT(RH_PS_PRS);
- OK(0);
- case (RH_PORT_POWER):
- WR_RH_PORTSTAT(RH_PS_PPS);
- wait_ms(100);
- OK(0);
- case (RH_PORT_ENABLE): /* BUG IN HUP CODE *********/
- if (RD_RH_PORTSTAT & RH_PS_CCS)
- WR_RH_PORTSTAT(RH_PS_PES);
- OK(0);
- }
- break;
-
- case RH_SET_ADDRESS:
- ohci->rh.devnum = wValue;
- OK(0);
-
- case RH_GET_DESCRIPTOR:
- switch ((wValue & 0xff00) >> 8)
- {
- case(0x01): /* device descriptor */
- len = min_t(unsigned int, leni, min_t(unsigned int, sizeof(root_hub_dev_des), wLength));
- data_buf = root_hub_dev_des;
- OK(len);
-
- case(0x02): /* configuration descriptor */
- len = min_t(unsigned int, leni, min_t(unsigned int, sizeof(root_hub_config_des), wLength));
- data_buf = root_hub_config_des;
- OK(len);
-
- case(0x03): /* string descriptors */
- if (wValue == 0x0300)
- {
- len = min_t(unsigned int, leni, min_t(unsigned int, sizeof(root_hub_str_index0), wLength));
- data_buf = root_hub_str_index0;
- OK(len);
- }
- if (wValue == 0x0301)
- {
- len = min_t(unsigned int, leni, min_t(unsigned int, sizeof(root_hub_str_index1), wLength));
- data_buf = root_hub_str_index1;
- OK(len);
- }
-
- default:
- stat = USB_ST_STALLED;
- }
- break;
-
- case RH_GET_DESCRIPTOR | RH_CLASS:
- {
- uint32_t temp = roothub_a(ohci);
- data_buf[0] = 9; /* min length; */
- data_buf[1] = 0x29;
- // data_buf[2] = temp & RH_A_NDP;
- data_buf[2] = (uint8_t)ohci->ndp;
- data_buf[3] = 0;
-
- if (temp & RH_A_PSM) /* per-port power switching? */
- {
- data_buf[3] |= 0x1;
- }
-
- if (temp & RH_A_NOCP) /* no overcurrent reporting? */
- {
- data_buf[3] |= 0x10;
- }
- else if (temp & RH_A_OCPM) /* per-port overcurrent reporting? */
- {
- data_buf[3] |= 0x8;
- }
-
- /* corresponds to data_buf[4-7] */
- datab[1] = 0;
- data_buf[5] = (temp & RH_A_POTPGT) >> 24;
- temp = roothub_b(ohci);
- data_buf[7] = temp & RH_B_DR;
- if (data_buf[2] < 7)
- {
- data_buf[8] = 0xff;
- }
- else
- {
- data_buf[0] += 2;
- data_buf[8] = (temp & RH_B_DR) >> 8;
- data_buf[10] = data_buf[9] = 0xff;
- }
- len = min_t(unsigned int, leni, min_t(unsigned int, data_buf[0], wLength));
- OK(len);
- }
-
- case RH_GET_CONFIGURATION: *(uint8_t *) data_buf = 0x01; OK(1);
-
- case RH_SET_CONFIGURATION: WR_RH_STAT(0x10000); OK(0);
-
- default:
- dbg("unsupported root hub command");
- stat = USB_ST_STALLED;
- }
-#ifdef DEBUG_OHCI
- ohci_dump_roothub(ohci, 1);
-#else
- if (ohci->irq)
- {
- wait_ms(10);
- }
-#endif
-
- len = min_t(int, len, leni);
-
- if (data != data_buf)
- {
- memcpy(data, data_buf, len);
- }
-
- dev->act_len = len;
- dev->status = stat;
-
-#ifdef DEBUG_OHCI
- pkt_print(ohci, NULL, dev, pipe, buffer, transfer_len, cmd, "RET(rh)", 0/*usb_pipein(pipe)*/);
-#else
-
- if (ohci->irq)
- {
- wait_ms(10);
- }
-#endif
-
- return stat;
-}
-
-
-/*
- * common code for handling submit messages - used for all but root hub accesses.
- */
-
-static int submit_common_msg(volatile ohci_t *ohci, struct usb_device *dev, uint32_t pipe, void *buffer,
- int transfer_len, struct devrequest *setup, int interval)
-{
- int stat = 0;
- int maxsize = usb_maxpacket(dev, pipe);
- int timeout;
- volatile urb_priv_t *urb = driver_mem_alloc(sizeof(urb_priv_t));
-
- if (urb == NULL)
- {
- err("submit_common_msg driver_mem_alloc() failed\r\n");
-
- return -1;
- }
- memset((void *) urb, 0, sizeof(urb_priv_t));
-
- urb->dev = dev;
- urb->pipe = pipe;
- urb->transfer_buffer = buffer;
- urb->transfer_buffer_length = transfer_len;
- urb->interval = interval;
-
- /* device pulled? Shortcut the action. */
- if (ohci->devgone == dev)
- {
- dev->status = USB_ST_CRC_ERR;
- err("device is gone...\r\n");
- return 0;
- }
-#ifdef DEBUG_OHCI
- urb->actual_length = 0;
- pkt_print(ohci, urb, dev, pipe, buffer, transfer_len, setup, "SUB", usb_pipein(pipe));
-#else
- if (ohci->irq)
- {
- wait_us(10);
- }
-#endif
-
- if (!maxsize)
- {
- err("submit_common_message: pipesize for pipe %lx is zero\r\n", pipe);
- return -1;
- }
-
- if (sohci_submit_job(ohci, urb, setup) < 0)
- {
- err("sohci_submit_job failed\r\n");
- return -1;
- }
-
-#if 0
- wait_us(10);
- /* ohci_dump_status(ohci); */
-#endif
-
- /* allow more time for a BULK device to react - some are slow */
-
-#define BULK_TO 5000 /* timeout in milliseconds */
-
- if (usb_pipebulk(pipe))
- {
- timeout = BULK_TO;
- }
- else
- {
- timeout = 1000;
- }
-
- /* wait for it to complete */
- while (ohci->irq)
- {
- /* check whether the controller is done */
- // flush_data_cache(ohci); no need to do that, PCI is uncached, as well as USB memory
-
-#ifndef CONFIG_USB_INTERRUPT_POLLING
- if (ohci->irq_enabled)
- {
- stat = ohci->stat_irq;
- }
- else
-#endif
- stat = hc_interrupt(ohci);
-
- if (stat < 0)
- {
- err("USB CRC error\r\n");
- stat = USB_ST_CRC_ERR;
- break;
- }
- /*
- * NOTE: since we are not interrupt driven in U-Boot and always
- * handle only one URB at a time, we cannot assume the
- * transaction finished on the first successful return from
- * hc_interrupt().. unless the flag for current URB is set,
- * meaning that all TD's to/from device got actually
- * transferred and processed. If the current URB is not
- * finished we need to re-iterate this loop so as
- * hc_interrupt() gets called again as there needs to be some
- * more TD's to process still
- */
- if ((stat >= 0) && (stat != 0xff) && (urb->finished))
- {
- /* 0xff is returned for an SF-interrupt */
- break;
- }
-
- if (--timeout)
- {
- wait_ms(10);
-// if (!urb->finished)
-// xprintf("*\r\n");
- }
- else
- {
- err("OHCI usb-%s-%c CTL:TIMEOUT\r\n", ohci->slot_name, (char) ohci->controller + '0');
- dbg("submit_common_msg: TO status %x\r\n", stat);
- urb->finished = 1;
- stat = USB_ST_CRC_ERR;
- break;
- }
- }
-
- dev->status = stat;
- dev->act_len = transfer_len;
-#ifdef DEBUG_OHCI
- pkt_print(ohci, urb, dev, pipe, buffer, transfer_len, setup, "RET(ctlr)", usb_pipein(pipe));
-#else
- if (ohci->irq)
- wait_ms(10);
-#endif
- /* free TDs in urb_priv */
- if (!usb_pipeint(pipe))
- urb_free_priv(urb);
- return 0;
-}
-
-/* submit routines called from usb.c */
-int ohci_submit_bulk_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len)
-{
- err("submit_bulk_msg dev 0x%p ohci 0x%p buffer 0x%p len %d", dev, dev->priv_hcd, buffer, transfer_len);
- return submit_common_msg((ohci_t *)dev->priv_hcd, dev, pipe, buffer, transfer_len, NULL, 0);
-}
-
-int ohci_submit_control_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, struct devrequest *setup)
-{
- volatile ohci_t *ohci = (ohci_t *) dev->priv_hcd;
- int maxsize = usb_maxpacket(dev, pipe);
-
- dbg("submit_control_msg dev 0x%p ohci 0x%p\r\n", dev, ohci);
-
-#ifdef DEBUG_OHCI
- pkt_print(ohci, NULL, dev, pipe, buffer, transfer_len, setup, "SUB", usb_pipein(pipe));
-#else
- if (ohci->irq)
- {
- wait_us(10);
- }
-#endif
-
- if (!maxsize)
- {
- err("submit_control_message: pipesize for pipe %lx is zero", pipe);
- return -1;
- }
-
- if (((pipe >> 8) & 0x7f) == ohci->rh.devnum)
- {
- ohci->rh.dev = dev;
- dbg("redirect\r\n");
- /* root hub - redirect */
- return ohci_submit_rh_msg(ohci, dev, pipe, buffer, transfer_len, setup);
- }
- return submit_common_msg(ohci, dev, pipe, buffer, transfer_len, setup, 0);
-}
-
-int ohci_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, int interval)
-{
- err("submit_int_msg dev 0x%p ohci 0x%p buffer 0x%p len %d", dev, dev->priv_hcd, buffer, transfer_len);
- return submit_common_msg((ohci_t *)dev->priv_hcd, dev, pipe, buffer, transfer_len, NULL, interval);
-}
-
-/*-------------------------------------------------------------------------*
- * HC functions
- *-------------------------------------------------------------------------*/
-
-/* reset the HC and BUS */
-
-static int hc_reset(volatile ohci_t *ohci)
-{
- int timeout = 30;
- int smm_timeout = 50; /* 0,5 sec */
-
- if ((ohci->ent->vendor == PCI_VENDOR_ID_PHILIPS)
- && (ohci->ent->device == PCI_DEVICE_ID_PHILIPS_ISP1561))
- {
-#define EHCI_USBCMD_OFF 0x20
-#define EHCI_USBCMD_HCRESET (1 << 1)
-
- /*
- * Some multi-function controllers (e.g. ISP1562) allow root hub
- * resetting via EHCI registers only.
- */
- int index = 0;
- long handle;
-
- do
- {
- handle = pci_find_device(0x0, 0xffff, index++);
-
- if (handle >= 0)
- {
- uint32_t id = 0;
- id = pci_read_config_longword(handle, PCIIDR);
- if ((PCI_VENDOR_ID_PHILIPS == (id & 0xFFFF)) && (PCI_DEVICE_ID_PHILIPS_ISP1561_2 == (id >> 16)))
- {
- int timeout = 1000;
- uint32_t usb_base_addr = 0xFFFFFFFF;
- struct pci_rd *pci_rsc_desc;
- pci_rsc_desc = pci_get_resource(handle); /* USB OHCI */
- if ((long)pci_rsc_desc >= 0)
- {
- unsigned short flags;
- do
- {
- if (!(pci_rsc_desc->flags & FLG_IO))
- {
- if (usb_base_addr == 0xFFFFFFFF)
- {
- uint32_t base = pci_rsc_desc->offset + pci_rsc_desc->start;
- writel((uint32_t) readl((uint32_t *) base + EHCI_USBCMD_OFF) | EHCI_USBCMD_HCRESET, (uint32_t *) base + EHCI_USBCMD_OFF);
- while (readl((uint32_t *) base + EHCI_USBCMD_OFF) & EHCI_USBCMD_HCRESET)
- {
- if (timeout-- <= 0)
- {
- err("USB RootHub reset timed out!\r\n");
- break;
- }
- wait_us(1);
- }
- }
- }
- flags = pci_rsc_desc->flags;
- pci_rsc_desc = (struct pci_rd *) ((uint32_t) pci_rsc_desc->next + (uint32_t) pci_rsc_desc);
- }
- while (!(flags & FLG_LAST));
- }
- }
- }
- }
- while (handle >= 0);
- }
-
- if ((ohci->controller == 0) && (ohci->ent->vendor == PCI_VENDOR_ID_NEC)
- && (ohci->ent->device == PCI_DEVICE_ID_NEC_USB))
- {
- //if (ohci->handle == 1) /* NEC on motherboard has FPGA clock */
-#if defined(MACHINE_FIREBEE)
- {
- dbg("USB OHCI set 48MHz clock\r\n");
- pci_write_config_longword(ohci->handle, 0xE4, 0x21); // oscillator & disable ehci
- wait_us(1);
- }
- //else
-#else
- {
- pci_write_config_longword(ohci->handle, 0xE4, pci_read_config_longword(ohci->handle, 0xE4) | 0x01); // disable ehci
- wait_us(1);
- }
-#endif
- }
-
- dbg("control: %x\r\n", readl(&ohci->regs->control));
-
- if (readl(&ohci->regs->control) & OHCI_CTRL_IR)
- {
- /* SMM owns the HC */
- writel(OHCI_OCR, &ohci->regs->cmdstatus); /* request ownership */
-
- err("USB HC TakeOver from SMM");
- while (readl(&ohci->regs->control) & OHCI_CTRL_IR)
- {
- wait_us(10);
- if (--smm_timeout == 0)
- {
- err("USB HC TakeOver failed!");
- return -1;
- }
- }
- }
-
- /* Disable HC interrupts */
- writel(OHCI_INTR_MIE, &ohci->regs->intrdisable);
-
- dbg("USB OHCI HC reset_hc usb-%s-%c: ctrl = 0x%X\r\n", ohci->slot_name,
- (char) ohci->controller + '0', readl(&ohci->regs->control));
-
- /* Reset USB (needed by some controllers) */
- ohci->hc_control = 0;
- writel(ohci->hc_control, &ohci->regs->control);
-
- /* HC Reset requires max 10 us delay */
- writel(OHCI_HCR, &ohci->regs->cmdstatus);
- while ((readl(&ohci->regs->cmdstatus) & OHCI_HCR) != 0)
- {
- if (--timeout == 0)
- {
- err("USB HC reset timed out!");
-#ifdef DEBUG_OHCI
- ohci_dump_status(ohci);
-#endif /* DEBUG_OHCI */
- return -1;
- }
- wait_us(1);
- }
- return 0;
-}
-
-
-/*
- * Start an OHCI controller, set the BUS operational
- * enable interrupts
- * connect the virtual root hub
- */
-
-static int hc_start(volatile ohci_t *ohci)
-{
- uint32_t mask;
- unsigned int fminterval;
-
- ohci->disabled = 1;
-
- /*
- * Tell the controller where the control and bulk lists are
- * The lists are empty now.
- */
- writel(0, &ohci->regs->ed_controlhead);
- writel(0, &ohci->regs->ed_bulkhead);
-
- writel((uint32_t) ohci->hcca, &ohci->regs->hcca); /* a reset clears this */
-
- fminterval = 0x2edf;
- writel((fminterval * 9) / 10, &ohci->regs->periodicstart);
-
- fminterval |= ((((fminterval - 210) * 6) / 7) << 16);
- writel(fminterval, &ohci->regs->fminterval);
- writel(0x628, &ohci->regs->lsthresh);
-
- /* start controller operations */
- ohci->hc_control = OHCI_CONTROL_INIT | OHCI_USB_OPER;
- ohci->disabled = 0;
- writel(ohci->hc_control, &ohci->regs->control);
-
- /* disable all interrupts */
- mask = (OHCI_INTR_SO | OHCI_INTR_WDH | OHCI_INTR_SF | OHCI_INTR_RD |
- OHCI_INTR_UE | OHCI_INTR_FNO | OHCI_INTR_RHSC |
- OHCI_INTR_OC | OHCI_INTR_MIE);
- writel(mask, &ohci->regs->intrdisable);
-
- /* clear all interrupts */
- mask &= ~OHCI_INTR_MIE;
- writel(mask, &ohci->regs->intrstatus);
-
- /* Choose the interrupts we care about now - but w/o MIE */
- mask = OHCI_INTR_RHSC | OHCI_INTR_UE | OHCI_INTR_WDH | OHCI_INTR_SO;
- writel(mask, &ohci->regs->intrenable);
- ohci->ndp = roothub_a(ohci);
-
-#ifdef OHCI_USE_NPS
- /* required for AMD-756 and some Mac platforms */
- writel((ohci->ndp | RH_A_NPS) & ~RH_A_PSM, &ohci->regs->roothub.a);
- writel(RH_HS_LPSC, &ohci->regs->roothub.status);
-#endif /* OHCI_USE_NPS */
-
- /* POTPGT delay is bits 24-31, in 2 ms units. */
-#define mdelay(n) ({unsigned long msec = (n); while (msec--) wait_ms(1); })
-
- dbg("wait_ms(0x%x)\r\n", (ohci->ndp >> 23) & 0x1fe);
- mdelay((ohci->ndp >> 23) & 0x1fe);
-
- // ohci->ndp &= RH_A_NDP;
-
- /* connect the virtual root hub */
- ohci->rh.devnum = 0;
-
- return 0;
-}
-
-
-
-
-/*
- * an interrupt happens
- */
-static int hc_interrupt(volatile ohci_t *ohci)
-{
- volatile struct ohci_regs *regs = ohci->regs;
- int ints;
- int stat = -1;
-
- dbg("\r\n");
- if ((ohci->hcca->done_head != 0) && !(swpl(ohci->hcca->done_head) & 0x01))
- {
- ints = OHCI_INTR_WDH;
- }
- else
- {
- ints = readl(®s->intrstatus);
- if (ints == ~0UL)
- {
- ohci->disabled++;
- err("OHCI usb-%s-%c device removed!\r\n", ohci->slot_name, (char) ohci->controller + '0');
- return -1;
- }
- else
- {
- ints &= readl(®s->intrenable);
- if (ints == 0)
- {
- dbg("no interrupt...\r\n");
-
- return 0xff;
- }
- }
- }
-
- if (ohci->irq)
- {
- dbg("Interrupt: 0x%x frame: 0x%x bus: %d\r\n", ints, swpw(ohci->hcca->frame_no), ohci->controller);
- }
-
- if (ints & OHCI_INTR_RHSC) /* root hub status change */
- {
- stat = 0xff;
- }
-
- if (ints & OHCI_INTR_UE) /* e.g. due to PCI Master/Target Abort */
- {
- unsigned short status = pci_read_config_word(ohci->handle, PCISR);
-
- err("OHCI Unrecoverable Error, controller usb-%s-%c disabled\r\n(SR:0x%04X%s%s%s%s%s%s)",
- ohci->slot_name, (char) ohci->controller + '0', status & 0xFFFF,
- status & 0x8000 ? ", Parity error" : "",
- status & 0x4000 ? ", Signaled system error" : "",
- status & 0x2000 ? ", Received master abort" : "",
- status & 0x1000 ? ", Received target abort" : "",
- status & 0x800 ? ", Signaled target abort" : "",
- status & 0x100 ? ", Data parity error" : "");
- ohci->disabled++;
-#ifdef DEBUG_OHCI
- ohci_dump(ohci, 1);
-#else
- if (ohci->irq)
- {
- wait_ms(1);
- }
-#endif
- /* HC Reset */
- ohci->hc_control = 0;
- writel(ohci->hc_control, &ohci->regs->control);
-
- return -1;
- }
-
- if (ints & OHCI_INTR_WDH)
- {
- if (ohci->irq)
- {
- wait_ms(1);
- }
-
- writel(OHCI_INTR_WDH, ®s->intrdisable);
- (void) readl(®s->intrdisable); /* flush */
- stat = dl_done_list(ohci);
-
- writel(OHCI_INTR_WDH, ®s->intrenable);
- (void) readl(®s->intrdisable); /* flush */
- }
-
- if (ints & OHCI_INTR_SO)
- {
- dbg("USB Schedule overrun\r\n");
- writel(OHCI_INTR_SO, ®s->intrenable);
- stat = -1;
- }
-
- /* FIXME: this assumes SOF (1/ms) interrupts don't get lost... */
- if (ints & OHCI_INTR_SF)
- {
- unsigned int frame = swpw(ohci->hcca->frame_no) & 1;
-
- wait_ms(1);
- writel(OHCI_INTR_SF, ®s->intrdisable);
- if (ohci->ed_rm_list[frame] != NULL)
- {
- writel(OHCI_INTR_SF, ®s->intrenable);
- }
- stat = 0xff;
- }
- writel(ints, ®s->intrstatus);
-
- return stat;
-}
-
-static int handle_usb_interrupt(ohci_t *ohci)
-{
- if(!ohci->irq_enabled)
- {
- return 0;
- }
-
- ohci->irq = 0;
- ohci->stat_irq = hc_interrupt(ohci);
- ohci->irq = -1;
-
- return 1; /* clear interrupt, 0: disable interrupt */
-}
-
-void ohci_usb_enable_interrupt(int enable)
-{
- int i;
-
- dbg("usb_enable_interrupt(%d)", enable);
-
- for(i = 0; i < (sizeof(gohci) / sizeof(ohci_t)); i++)
- {
- ohci_t *ohci = &gohci[i];
- if(!ohci->handle)
- {
- continue;
- }
- ohci->irq_enabled = enable;
- if (enable)
- writel(OHCI_INTR_MIE, &ohci->regs->intrenable);
- else
- writel(OHCI_INTR_MIE, &ohci->regs->intrdisable);
- }
-}
-
-/* De-allocate all resources.. */
-
-static void hc_release_ohci(volatile ohci_t *ohci)
-{
- dbg("USB HC release OHCI usb-%s-%c", ohci->slot_name, (char) ohci->controller + '0');
- if (!ohci->disabled)
- {
- hc_reset(ohci);
- }
-}
-
-static void hc_free_buffers(volatile ohci_t *ohci)
-{
- if (ohci->td_unaligned != NULL)
- {
- /* FIXME: driver_mem_free(ohci->td_unaligned); */
- ohci->td_unaligned = NULL;
- }
- if (ohci->ohci_dev_unaligned != NULL)
- {
- /* FIXME: driver_mem_free(ohci->ohci_dev_unaligned); */
- ohci->ohci_dev_unaligned = NULL;
- }
- if (ohci->hcca_unaligned != NULL)
- {
- /* FIXME: driver_mem_free(ohci->hcca_unaligned); */
- ohci->hcca_unaligned = NULL;
- }
-}
-
-/*
- * low level initalisation routine, called from usb.c
- */
-int ohci_usb_lowlevel_init(int32_t handle, const struct pci_device_id *ent, void **priv)
-{
- uint32_t usb_base_addr = 0xFFFFFFFF;
- volatile ohci_t *ohci = &gohci[pci_handle2index(handle)];
- struct pci_rd *pci_rsc_desc = pci_get_resource(handle); /* USB OHCI */
-
- if (handle && (ent != NULL))
- {
- memset((void *) ohci, 0, sizeof(ohci_t));
- ohci->handle = handle;
- ohci->ent = ent;
- }
- else if (!ohci->handle) /* for restart USB cmd */
- {
- return -1;
- }
-
- inf("ohci %p, handle = 0x%x, fctn = 0x%x\r\n", ohci, handle, PCI_FUNCTION_FROM_HANDLE(handle));
-
- ohci->controller = PCI_FUNCTION_FROM_HANDLE(ohci->handle);
-
- dbg("handle = 0x%x, function = 0x%x\r\n", ohci->handle, ohci->controller);
- // ohci->controller = (ohci->handle >> 16) & 3; /* PCI function */
-
- /* this must be aligned to a 256 byte boundary */
- ohci->hcca_unaligned = driver_mem_alloc(sizeof(struct ohci_hcca) + 256);
- if (ohci->hcca_unaligned == NULL)
- {
- err("HCCA malloc failed\r\n");
- return -1;
- }
-
- /* align the storage */
- ohci->hcca = (struct ohci_hcca *) (((uint32_t) ohci->hcca_unaligned + 255) & ~255);
- memset((void *) ohci->hcca, 0, sizeof(struct ohci_hcca));
- inf("aligned ghcca %p\r\n", ohci->hcca);
-
- ohci->ohci_dev_unaligned = driver_mem_alloc(sizeof(struct ohci_device) + 8);
- if (ohci->ohci_dev_unaligned == NULL)
- {
- err("EDs malloc failed\r\n");
- hc_free_buffers(ohci);
-
- return -1;
- }
- ohci->ohci_dev = (struct ohci_device *) (((uint32_t) ohci->ohci_dev_unaligned + 7) & ~7);
- memset(ohci->ohci_dev, 0, sizeof(struct ohci_device));
- dbg("aligned EDs %p\r\n", ohci->ohci_dev);
-
- ohci->td_unaligned = driver_mem_alloc(sizeof(struct td) * (NUM_TD + 1));
- if (ohci->td_unaligned == NULL)
- {
- err("TDs malloc failed\r\n");
- hc_free_buffers(ohci);
-
- return -1;
- }
-
- ptd = (struct td *) (((uint32_t) ohci->td_unaligned + 7) & ~7);
-
- dbg("memset from %p to %p\r\n", ptd, ptd + sizeof(td_t) * NUM_TD);
- memset(ptd, 0, sizeof(td_t) * NUM_TD);
- dbg("aligned TDs %p\r\n", ptd);
-
- ohci->disabled = 1;
- ohci->sleeping = 0;
- ohci->irq = -1;
-
- if (pci_rsc_desc != NULL)
- {
- unsigned short flags;
- do
- {
- dbg("PCI USB descriptors (at %p): flags 0x%04x start 0x%08lx\r\n",
- pci_rsc_desc, pci_rsc_desc->flags, pci_rsc_desc->start);
- dbg("offset 0x%08lx dmaoffset 0x%08lx length 0x%08lx\r\n",
- pci_rsc_desc->offset,
- pci_rsc_desc->dmaoffset,
- pci_rsc_desc->length);
-
- if (!(pci_rsc_desc->flags & FLG_IO))
- {
- /* if this is a memory-mapped resource */
-
- if (usb_base_addr == 0xFFFFFFFF)
- {
- /* and if its not initialized yet */
-
- usb_base_addr = pci_rsc_desc->start;
- ohci->offset = pci_rsc_desc->offset;
- ohci->regs = (void *) (pci_rsc_desc->offset + pci_rsc_desc->start);
- ohci->dma_offset = pci_rsc_desc->dmaoffset;
-
- /* big_endian unused actually */
- if ((pci_rsc_desc->flags & FLG_ENDMASK) == ORD_MOTOROLA)
- ohci->big_endian = 0; /* host bridge make swapping intel -> motorola */
- else
- ohci->big_endian = 1; /* driver must do swapping intel -> motorola */
- }
- }
- flags = pci_rsc_desc->flags;
- pci_rsc_desc = (struct pci_rd *) ((uint32_t) pci_rsc_desc->next + (uint32_t) pci_rsc_desc);
- } while (!(flags & FLG_LAST));
- }
- else
- {
- hc_free_buffers(ohci);
- dbg("pci_get_resource() failed\r\n");
-
- return -1; /* get_resource error */
- }
-
- if (usb_base_addr == 0xFFFFFFFF)
- {
- hc_free_buffers(ohci);
- return -1;
- }
-
- if (handle && (ent != NULL))
- {
- ohci->flags = 0;
- switch (ent->vendor)
- {
- case PCI_VENDOR_ID_AL:
- ohci->slot_name = "uli1575";
- break;
-
- case PCI_VENDOR_ID_NEC:
- ohci->slot_name = "uPD720101";
- ohci->flags |= OHCI_FLAGS_NEC;
- break;
-
- case PCI_VENDOR_ID_PHILIPS:
- ohci->slot_name = "isp1561";
- break;
-
- default:
- ohci->slot_name = "generic";
- break;
- }
- }
-
- dbg("OHCI usb-%s-%c, regs address 0x%08X, PCI handle 0x%X\r\n",
- ohci->slot_name,
- (char) ohci->controller + '0',
- ohci->regs, handle);
-
- if (hc_reset(ohci) < 0)
- {
- err("Can't reset OHCI usb-%s-%c", ohci->slot_name, (char) ohci->controller + '0');
- hc_release_ohci(ohci);
- hc_free_buffers(ohci);
- return -1;
- }
-
- if (hc_start(ohci) < 0)
- {
- err("Can't start OHCI usb-%s-%c", ohci->slot_name, (char) ohci->controller + '0');
- hc_release_ohci(ohci);
- hc_free_buffers(ohci);
-
- /* Initialization failed */
- return -1;
- }
-
-#ifdef DEBUG_OHCI
- ohci_dump(ohci, 1);
-#endif
- pci_hook_interrupt(handle, (pci_interrupt_handler) handle_usb_interrupt, (void *) ohci);
- if (priv != NULL)
- {
- *priv = (void *) ohci;
- }
-
- ohci_inited = 1;
-
- return 0;
-}
-
-int ohci_usb_lowlevel_stop(void *priv)
-{
- /* this gets called really early - before the controller has */
- /* even been initialized! */
-
- ohci_t *ohci = (ohci_t *) priv;
-
- if (!ohci_inited)
- return 0;
-
- if (ohci == NULL)
- ohci = &gohci[0];
-
- pci_unhook_interrupt(ohci->handle);
-
- hc_reset(ohci);
- hc_free_buffers(ohci);
-
- /* This driver is no longer initialised. It needs a new low-level
- * init (board/cpu) before it can be used again. */
-
- ohci_inited = 0;
-
- return 0;
-}
-
diff --git a/BaS_gcc/pci/pci.c b/BaS_gcc/pci/pci.c
deleted file mode 100644
index 1a13fd8..0000000
--- a/BaS_gcc/pci/pci.c
+++ /dev/null
@@ -1,1281 +0,0 @@
-/*
- * pci.c
- *
- * Purpose: PCI configuration for the Coldfire builtin PCI bridge.
- *
- * Notes:
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 08.01.2013
- * Author: Markus Froeschle
- */
-
-#include
-#include "pci.h"
-#include "pci_errata.h"
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "util.h"
-#include "interrupts.h"
-#include "wait.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#define pci_config_wait() do { __asm__ __volatile("tpf" ::: "memory"); } while (0)
-
-/*
- * PCI device class descriptions displayed during PCI bus scan
- */
-static struct pci_class
-{
- int classcode;
- char *description;
-} pci_classes[] =
-{
-{ 0x00, "device was built prior definition of the class code field" },
-{ 0x01, "Mass Storage Controller" },
-{ 0x02, "Network Controller" },
-{ 0x03, "Display Controller" },
-{ 0x04, "Multimedia Controller" },
-{ 0x05, "Memory Controller" },
-{ 0x06, "Bridge Device" },
-{ 0x07, "Simple Communication Controller" },
-{ 0x08, "Base System Peripherial" },
-{ 0x09, "Input Device" },
-{ 0x0a, "Docking Station" },
-{ 0x0b, "Processor" },
-{ 0x0c, "Serial Bus Controller" },
-{ 0x0d, "Wireless Controller" },
-{ 0x0e, "Intelligent I/O Controller" },
-{ 0x0f, "Satellite Communication Controller" },
-{ 0x10, "Encryption/Decryption Controller" },
-{ 0x11, "Data Acquisition and Signal Processing Controller" },
-{ 0xff, "Device does not fit any defined class" },
-};
-static int num_pci_classes = sizeof(pci_classes) / sizeof(struct pci_class);
-
-#define NUM_CARDS 10
-#define NUM_RESOURCES 7
-/* holds the handle of a card at position = array index */
-static int32_t handles[NUM_CARDS] = { -1 };
-
-/* holds the card's resource descriptors; filled in pci_device_config() */
-static struct pci_rd resource_descriptors[NUM_CARDS][NUM_RESOURCES];
-
-/*
- * holds the interrupt handler addresses (see pci_hook_interrupt()
- * and pci_unhook_interrupt()) of the PCI cards
- */
-struct pci_interrupt
-{
- int32_t handle;
- int irq;
- pci_interrupt_handler handler;
- int32_t parameter;
- struct pci_interrupt *next;
-};
-
-#define MAX_INTERRUPTS (NUM_CARDS * 3)
-static struct pci_interrupt interrupts[MAX_INTERRUPTS];
-
-
-/*
- * Although this pragma stuff should work according to the GCC docs, it doesn't seem to
- * with m68k-atari-mint-gcc. At least not currently.
- * I nevertheless keep it here for future reference
- */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wunused-function"
-
-int32_t pci_get_interrupt_cause(void)
-{
- int32_t handle;
- int32_t *hdl = &handles[0];
- /*
- * loop through all PCI devices...
- */
- dbg("");
- while ((handle = *hdl++) != -1)
- {
- uint16_t command_register = swpw(pci_read_config_word(handle, PCI_LANESWAP_W(PCICR)));
- uint16_t status_register = swpw(pci_read_config_word(handle, PCI_LANESWAP_W(PCISR)));
-
- /*
- * ...to see which device caused the interrupt
- */
- if ((status_register & PCISR_INTERRUPT) && !(command_register & PCICR_INT_DISABLE))
- {
- /* device has interrupts enabled and has an active interrupt, so its probably ours */
-
- return handle;
- }
- }
- dbg("no interrupt cause found\r\n");
- return -1;
-}
-
-int32_t pci_call_interrupt_chain(int32_t handle, int32_t data)
-{
- int i;
-
- dbg("");
- for (i = 0; i < MAX_INTERRUPTS; i++)
- {
- if (interrupts[i].handle == handle)
- {
- interrupts[i].handler(data);
-
- return 1;
- }
- }
- return data; /* unmodified - means: not handled */
-}
-#pragma GCC diagnostic pop
-
-
-
-/*
- * retrieve handle for i'th device
- */
-int pci_handle2index(int32_t handle)
-{
- int i;
-
- for (i = 0; i < NUM_CARDS; i++)
- {
- if (handles[i] == handle)
- {
- return i;
- }
- }
- return -1;
-}
-
-/*
- * retrieve device class (in cleartext) for a PCI classcode
- */
-static char *device_class(int classcode)
-{
- int i;
-
- for (i = 0; i < num_pci_classes; i++)
- {
- if (pci_classes[i].classcode == classcode)
- {
- return pci_classes[i].description;
- }
- }
- return "unknown device class";
-}
-
-/*
- * do error checking after a PCI transaction
- */
-static int pci_check_status(void)
-{
- uint32_t pcisr;
- uint32_t pcigscr;
-
- int ret = 0;
-
- pcisr = MCF_PCI_PCIISR; /* retrieve initiator status register */
-
- if (pcisr & MCF_PCI_PCIISR_RE)
- {
- dbg("PCI initiator retry error. Cleared.\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_RE;
-
- ret = 1;
- }
-
- if (pcisr & MCF_PCI_PCIISR_IA)
- {
- dbg("PCI initiator abort. Error cleared\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_IA;
-
- ret = 1;
- }
-
- if (pcisr & MCF_PCI_PCIISR_TA)
- {
- dbg("PCI initiator target abort error. Error cleared\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_TA;
-
- ret = 1;
- }
-
- pcigscr = MCF_PCI_PCIGSCR;
-
- if (pcigscr & MCF_PCI_PCIGSCR_PE)
- {
- dbg("PCI parity error. Error cleared\r\n");
- MCF_PCI_PCIGSCR |= MCF_PCI_PCIGSCR_PE;
-
- ret = 1;
- }
-
- if (pcigscr & MCF_PCI_PCIGSCR_SE)
- {
- dbg("PCI system error. Error cleared\r\n");
- MCF_PCI_PCIGSCR |= MCF_PCI_PCIGSCR_SE;
-
- ret = 1;
- }
- return ret;
-}
-
-/*
- * read an uint32_t from configuration space of card with handle and offset
- *
- * The returned value is in little endian format.
- */
-uint32_t pci_read_config_longword(int32_t handle, int offset)
-{
- uint32_t value;
-
- /* initiate PCI configuration access to device */
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration access special cycle */
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) | /* device number, devices 0 - 9 are reserved */
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) | /* function number */
- MCF_PCI_PCICAR_DWORD(offset / 4);
-
- NOP();
-
- value = * (volatile uint32_t *) PCI_IO_OFFSET; /* access device */
-
- NOP();
-
- /* finish PCI configuration access special cycle (allow regular PCI accesses) */
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return value;
-}
-
-uint16_t pci_read_config_word(int32_t handle, int offset)
-{
- uint16_t value;
-
- /*
- * initiate PCI configuration space access to device
- */
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration space special cycle */
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DWORD(offset / 4);
-
- NOP();
-
- value = * (volatile uint16_t *) (PCI_IO_OFFSET + (offset & 2));
-
- NOP();
-
- /* finish PCI configuration access special cycle */
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return value;
-}
-
-uint8_t pci_read_config_byte(int32_t handle, int offset)
-{
- uint8_t value;
-
- /* initiate PCI configuration access to device */
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration access special cycle */
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) | /* device number, devices 0 - 9 are reserved */
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) | /* function number */
- MCF_PCI_PCICAR_DWORD(offset / 4);
-
- NOP();
-
- value = * (volatile uint8_t *) (PCI_IO_OFFSET + (offset & 3));
-
- NOP();
-
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return value;
-}
-
-/*
- * pci_write_config_longword()
- *
- * write an uint32_t value (must be in little endian format) to the configuration space of a PCI device
- */
-int32_t pci_write_config_longword(int32_t handle, int offset, uint32_t value)
-{
- /* initiate PCI configuration access to device */
-
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration access special cycle */
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) | /* device number, devices 0 - 9 are reserved */
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) | /* function number */
- MCF_PCI_PCICAR_DWORD(offset / 4);
-
- chip_errata_135();
- NOP();
-
- * (volatile uint32_t *) PCI_IO_OFFSET = value; /* access device */
-
- dbg("chip errata\r\n");
- chip_errata_135();
-
- NOP();
-
- /* finish configuration space access cycle */
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return PCI_SUCCESSFUL;
-}
-
-/*
- * write a 16-bit value to config space. Must be in little-endian format
- */
-int32_t pci_write_config_word(int32_t handle, int offset, uint16_t value)
-{
- /* initiate PCI configuration access to device */
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration access special cycle */
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DWORD(offset / 4);
-
- chip_errata_135();
-
- NOP();
-
- * (volatile uint16_t *) (PCI_IO_OFFSET + (offset & 2)) = value;
- chip_errata_135();
- NOP();
-
- /* finish configuration space access cycle */
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return PCI_SUCCESSFUL;
-}
-
-/*
- * write a single byte to config space
- */
-int32_t pci_write_config_byte(int32_t handle, int offset, uint8_t value)
-{
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E |
- MCF_PCI_PCICAR_BUSNUM(PCI_BUS_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) |
- MCF_PCI_PCICAR_DWORD(offset / 4);
- chip_errata_135();
-
- NOP();
-
- * (volatile uint8_t *) (PCI_IO_OFFSET + (offset & 3)) = value;
- chip_errata_135();
-
- NOP();
-
-
- /* finish configuration space access cycle */
- MCF_PCI_PCICAR &= ~MCF_PCI_PCICAR_E;
-
- pci_check_status();
-
- return PCI_SUCCESSFUL;
-}
-
-/*
- * pci_get_resource
- *
- * get resource descriptor chain for handle
- */
-struct pci_rd *pci_get_resource(int32_t handle)
-{
- int index = -1;
- struct pci_rd *ret;
-
- index = pci_handle2index(handle);
- if (index == -1)
- {
- ret = NULL;
- }
- else
- {
- ret = &resource_descriptors[index][0];
- }
-
- dbg("pci_get_resource: resource struct for handle %lx (index %d) is at %p\r\n", handle, index, ret);
-
- return ret;
-}
-
-/*
- * pci_find_device()
- *
- * find index'th device by device_id and vendor_id. Special case: vendor id -1 (0xffff)
- * matches all devices. You can search the whole bus by repeatedly calling this function
- */
-int32_t pci_find_device(uint16_t device_id, uint16_t vendor_id, int index)
-{
- uint16_t bus;
- uint16_t device;
- uint16_t function = 0;
- uint16_t n = 0;
- int32_t handle;
-
- for (bus = 0; bus < 1; bus++)
- {
- for (device = 10; device < 31; device++)
- {
- uint32_t value;
- uint8_t htr;
-
- handle = PCI_HANDLE(bus, device, 0);
- value = swpl(pci_read_config_longword(handle, PCIIDR));
- if (value != 0xffffffff) /* we have a device at this position */
- {
- if (vendor_id == 0xffff ||
- (PCI_VENDOR_ID(value) == vendor_id && PCI_DEVICE_ID(value) == device_id))
- {
- if (n == index)
- {
- return handle;
- }
- n++;
- }
-
- /*
- * There is a device at this position, but not the one we are looking for.
- * Check to see if it is a multi-function device. We need to look "behind" it
- * for the other functions in that case.
- */
- if ((htr = pci_read_config_byte(handle, PCI_LANESWAP_B(PCIHTR))) & 0x80)
- {
- /* yes, this is a multi-function device, look for more functions */
-
- for (function = 1; function < 8; function++)
- {
- handle = PCI_HANDLE(bus, device, function);
- value = swpl(pci_read_config_longword(handle, PCIIDR));
- if (value != 0xffffffff) /* device found */
- {
- if (vendor_id == 0xffff ||
- ((PCI_VENDOR_ID(value) == vendor_id) && (PCI_DEVICE_ID(value) == device_id)))
- {
- if (n == index)
- {
- return handle;
- }
- n++;
- }
- }
- }
- }
- }
- }
- }
- return PCI_DEVICE_NOT_FOUND;
-}
-
-static bool match_classcode(uint32_t handle, uint32_t classcode)
-{
- uint8_t find_mask = (classcode >> 24) & 0xff;
- uint32_t value = swpl(pci_read_config_longword(handle, PCICCR));
- int i;
-
- classcode &= 0x00ffffff;
- value >>= 8; /* shift away revision id */
-
- //dbg("classcode=0x%08x, value=0x%08x\r\n", classcode, value);
-
- for (i = 0; i < 3; i++) /* loop through mask */
- {
- if ((find_mask >> i) & 1)
- {
- //dbg("compare 0x%02x against 0x%02x\r\n", value & 0xff, classcode & 0xff);
- if ((value & 0xff) != (classcode & 0xff))
- return false;
- //dbg("match\r\n");
- classcode >>= 8;
- }
- value >>= 8;
- //dbg("value=0x%08x\r\n", value);
- }
- dbg("return true\r\n");
- return true;
-}
-
-/*
- * pci_find_classcode(uint32_t classcode, int index)
- *
- * Find the index'th pci device with a specific classcode. Bits 0-23 describe this classcode.
- *
- * Bits 24 - 26 describe what needs to match: 24: prog interface, 25: PCI subclass, 26: PCI base class.
- * If no bits are set, there is a match for each device.
- */
-int32_t pci_find_classcode(uint32_t classcode, int index)
-{
- int i;
- uint32_t handle;
- int n = 0;
-
- for (i = 0; (handle = handles[i]) != -1; i++)
- {
- dbg("handle=0x%x, n=%d, index=%d\r\n", handle, n, index);
- if (match_classcode(handle, classcode))
- {
- if (n == index)
- return handle;
- else
- n++;
- }
- }
-
- dbg("not found\r\n");
- return PCI_DEVICE_NOT_FOUND;
-}
-
-int32_t pci_hook_interrupt(int32_t handle, void *handler, void *parameter)
-{
- int i;
-
- // pci_interrupt_handler h = handler;
-
- /*
- * find empty slot
- */
- for (i = 0; i < MAX_INTERRUPTS; i++)
- {
- if (interrupts[i].handle == 0)
- {
- interrupts[i].handle = handle;
- interrupts[i].handler = handler;
- interrupts[i].parameter = (int32_t) parameter;
-
- return PCI_SUCCESSFUL;
- }
- }
- return PCI_BUFFER_TOO_SMALL;
-}
-
-int32_t pci_unhook_interrupt(int32_t handle)
-{
- int i;
-
- for (i = 0; i < MAX_INTERRUPTS; i++)
- {
- if (interrupts[i].handle == handle)
- {
- memset(&interrupts[i], 0, sizeof(struct pci_interrupt));
-
- return PCI_SUCCESSFUL;
- }
- }
- return PCI_DEVICE_NOT_FOUND;
-}
-
-/*
- * Not implemented PCI_BIOS functions
- */
-
-uint8_t pci_fast_read_config_byte(int32_t handle, uint16_t reg)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint16_t pci_fast_read_config_word(int32_t handle, uint16_t reg)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint32_t pci_fast_read_config_longword(int32_t handle, uint16_t reg)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_special_cycle(uint16_t bus, uint32_t data)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_get_routing(int32_t handle)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_set_interrupt(int32_t handle)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_get_card_used(int32_t handle, uint32_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_set_card_used(int32_t handle, uint32_t *callback)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint8_t pci_fast_read_mem_byte(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint16_t pci_fast_read_mem_word(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint32_t pci_fast_read_mem_longword(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_mem_word(int32_t handle, uint32_t offset, uint16_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_io_word(int32_t handle, uint32_t offset, uint16_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint8_t pci_fast_read_io_byte(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint16_t pci_fast_read_io_word(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-uint32_t pci_fast_read_io_longword(int32_t handle, uint32_t offset)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_io_byte(int32_t handle, uint32_t offset, uint16_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_io_word(int32_t handle, uint32_t offset, uint16_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_write_io_longword(int32_t handle, uint32_t offset, uint32_t val)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_get_machine_id(void)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_get_pagesize(void)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-int32_t pci_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-int32_t pci_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer)
-{
- return PCI_FUNC_NOT_SUPPORTED;
-}
-
-/*
- * pci_device_config()
- *
- * Map card resources, adjust BARs and fill resource descriptors
- */
-static void pci_device_config(uint16_t bus, uint16_t device, uint16_t function)
-{
- uint32_t address;
- int32_t handle;
- int16_t index = - 1;
- uint8_t il;
- struct pci_rd *descriptors;
- int i;
- uint32_t value;
- static uint32_t mem_address = PCI_MEMORY_OFFSET;
- static uint32_t io_address = PCI_IO_OFFSET;
- uint16_t cr;
-
- /*
- * should make compiler happy (these are used only in debug builds)
- */
- (void) value;
- (void) il;
-
- /* determine pci handle from bus, device + function number */
- handle = PCI_HANDLE(bus, device, function);
-
- /* find index into resource descriptor table for handle */
- index = pci_handle2index(handle);
-
- if (index == -1)
- {
- dbg("cannot find index for handle %d\r\n", handle);
- return;
- }
-
- /*
- * disable device
- */
-
- cr = swpw(pci_read_config_word(handle, PCI_LANESWAP_W(PCICR)));
- cr &= ~3; /* disable device response to address */
- pci_write_config_word(handle, PCI_LANESWAP_W(PCICR), swpw(cr));
-
- int barnum = 0;
-
- descriptors = resource_descriptors[index];
- for (i = 0; i < 6 * 4; i += 4) /* for all bars */
- {
- /*
- * write all bits of BAR[i]
- */
- pci_write_config_longword(handle, PCIBAR0 + i, 0xffffffff);
-
- /*
- * read back value to see which bits have been set
- */
- address = swpl(pci_read_config_longword(handle, PCIBAR0 + i));
-
- if (address) /* is bar in use? */
- {
- /*
- * resource descriptor for this device
- */
- struct pci_rd *rd = &descriptors[barnum];
-
- dbg("address = %08x\r\n", address);
- if (IS_PCI_MEM_BAR(address))
- {
- /* adjust base address to card's alignment requirements */
- size_t size = ~(address & 0xfffffff0) + 1;
- dbg("device 0x%02x: BAR[%d] requests %ld kBytes of memory\r\n", handle, i / 4, size / 1024);
-
- /* calculate a valid map adress with alignment requirements */
- address = (mem_address + size - 1) & ~(size - 1);
-
- /* write it to the BAR */
- pci_write_config_longword(handle, PCIBAR0 + i, swpl(address));
-
- /* read it back, just to be sure */
- value = swpl(pci_read_config_longword(handle, PCIBAR0 + i)) & ~1;
-
- dbg("set PCIBAR%d on device 0x%02x to 0x%08x\r\n",
- i / 4, handle, value);
-
- /* fill resource descriptor */
- rd->next = sizeof(struct pci_rd);
- rd->flags = 0 | FLG_32BIT | FLG_16BIT | FLG_8BIT | ORD_INTEL_LS; /* little endian, lane swapped */
- rd->start = address;
- rd->length = size;
- rd->offset = 0;
- rd->dmaoffset = 0;
-
- /* adjust memory adress for next turn */
- mem_address += size;
-
- cr |= 2;
-
- /* index to next unused resource descriptor */
- barnum++;
- }
- else if (IS_PCI_IO_BAR(address)) /* same as above for I/O resources */
- {
- int size = ~(address & 0xfffffffc) + 1;
- dbg("device 0x%x: BAR[%d] requests %d bytes of I/O space\r\n", handle, i, size);
-
- address = (io_address + size - 1) & ~(size - 1);
- pci_write_config_longword(handle, PCIBAR0 + i, swpl(address | 1));
- value = swpl(pci_read_config_longword(handle, PCIBAR0 + i));
-
- dbg("set PCIBAR%d on device 0x%02x to 0x%08x\r\n",
- i / 4, handle, value);
-
- rd->next = sizeof(struct pci_rd);
- rd->flags = FLG_IO | FLG_8BIT | FLG_16BIT | FLG_32BIT | 2;
- rd->start = address;
- rd->offset = 0;
- rd->length = size;
- rd->dmaoffset = 0;
-
- io_address += size;
-
- cr |= 1;
-
- barnum++;
- }
- }
- }
-
- /*
- * check if we have an expansion ROM
- */
-
- /*
- * write all bits of PCIERBAR
- */
- pci_write_config_longword(handle, PCIERBAR, 0xffffffff);
-
- /*
- * read back value to see which bits have been set
- */
- address = swpl(pci_read_config_longword(handle, PCIERBAR));
- if (address & 1)
- {
- /*
- * there is a ROM
- */
-
- struct pci_rd *rd = &descriptors[barnum];
- int size = ~(address & ~0x7ff) + 1;
-
- dbg("expansion ROM requested size=0x%08x\r\n", size);
- dbg("device 0x%02x: requests %ld kBytes for expansion ROM\r\n", handle, size / 1024);
-
- /* expansion ROM active and mapped */
-
- /* calculate a valid map adress with alignment requirements */
- address = (mem_address + size - 1) & ~(size - 1);
-
- /* write it to PCIERBAR and enable ROM */
- pci_write_config_longword(handle, PCIERBAR, swpl(address | 1));
- dbg("set PCIERBAR on device 0x%02x to 0x%08x\r\n", handle, address | 1);
-
- /* read value back just to be sure */
- dbg("PCIERBAR = %p\r\n", swpl(pci_read_config_longword(handle, PCIERBAR)));
-
-
- rd->next = sizeof(struct pci_rd);
- rd->flags = FLG_ROM | FLG_8BIT | FLG_16BIT | FLG_32BIT | 2;
- rd->start = address;
- rd->offset = 0;
- rd->length = size;
- rd->dmaoffset = 0;
-
- cr |= 2; /* enable Memory */
- mem_address += size;
- barnum++;
- }
-
- /* mark end of resource chain */
- if (barnum > 0)
- descriptors[barnum - 1].flags |= FLG_LAST;
-
- /* check if device requests an interrupt */
- il = pci_read_config_byte(handle, PCI_LANESWAP_B(PCIIPR));
- dbg("device requests interrupts on interrupt pin %d\r\n", il);
-
- /* disable interrupt on PCI device */
-
- cr |= PCICR_INT_DISABLE;
-
- /*
- * enable device memory or I/O access
- */
- pci_write_config_word(handle, PCI_LANESWAP_W(PCICR), swpw(cr));
-}
-
-static void pci_bridge_config(uint16_t bus, uint16_t device, uint16_t function)
-{
- int32_t handle;
-
- if (function != 0)
- {
- err("trying to configure a multi-function bridge. Cancelled\r\n");
- return;
- }
- handle = PCI_HANDLE(bus, device, function);
- dbg("handle=%d\r\n", handle);
-
- pci_write_config_longword(handle, PCIBISTR, MCF_PCI_PCICR1_CACHELINESIZE(8) |
- MCF_PCI_PCICR1_LATTIMER(0x20));
- pci_write_config_longword(handle, PCIBAR0, swpl(0x80000000));
- pci_write_config_longword(handle, PCIBAR1, 0x0);
- pci_write_config_word(handle, PCI_LANESWAP_W(PCICR), swpw(
- (1 << 1) /* memory space */
- | (1 << 2) /* bus master */
- | (1 << 4) /* memory write and invalidate */
- | (1 << 6) /* parity errors */
- | (1 << 8) /* SERR */
- | (1 << 9) /* fast back-to-back */
- ));
-}
-
-/*
- * scan PCI bus and display devices found. Create a handle for each device and call pci_device_config() for it
- */
-void pci_scan(void)
-{
- int16_t handle;
- int16_t index = 0;
-
- xprintf("\r\nPCI bus scan...\r\n\r\n");
- xprintf(" Bus| Dev|Func|Vndr|D-ID|Hndl|\r\n");
- xprintf("----+----+----+----+----+----+\r\n");
-
- handle = pci_find_device(0x0, 0xFFFF, index);
- while (handle > 0)
- {
- uint32_t value;
-
- value = swpl(pci_read_config_longword(handle, PCIIDR));
-
- xprintf(" %02x | %02x | %02x |%04x|%04x|%04x| %s (0x%02x, 0x%04x)\r\n",
- PCI_BUS_FROM_HANDLE(handle),
- PCI_DEVICE_FROM_HANDLE(handle),
- PCI_FUNCTION_FROM_HANDLE(handle),
- PCI_VENDOR_ID(value), PCI_DEVICE_ID(value),
- handle,
- device_class(pci_read_config_byte(handle, PCI_LANESWAP_B(PCICCR))),
- pci_read_config_byte(handle, PCI_LANESWAP_B(PCICCR)),
- pci_read_config_word(handle, PCI_LANESWAP_W(PCICCR)));
-
- /* save handle to index value so that we'll be able to later find our resources */
- handles[index] = handle;
- handles[index + 1] = -1;
-
- if (PCI_VENDOR_ID(value) != 0x1057 && PCI_DEVICE_ID(value) != 0x5806) /* do not configure bridge */
- {
- /* configure memory and I/O for card */
- pci_device_config(PCI_BUS_FROM_HANDLE(handle),
- PCI_DEVICE_FROM_HANDLE(handle),
- PCI_FUNCTION_FROM_HANDLE(handle));
- }
- else
- {
- dbg("\r\n");
- pci_bridge_config(PCI_BUS_FROM_HANDLE(handle),
- PCI_DEVICE_FROM_HANDLE(handle),
- PCI_FUNCTION_FROM_HANDLE(handle));
- }
- dbg("\r\n");
- handle = pci_find_device(0x0, 0xFFFF, ++index);
- }
- xprintf("\r\n...finished\r\n");
-}
-
-/* start of PCI initialization code */
-void init_eport(void)
-{
- /* configure IRQ1-7 pins on EPORT falling edge triggered */
- MCF_EPORT_EPPAR = MCF_EPORT_EPPAR_EPPA7(MCF_EPORT_EPPAR_FALLING) |
- MCF_EPORT_EPPAR_EPPA6(MCF_EPORT_EPPAR_FALLING) |
- #if defined(MACHINE_FIREBEE) /* irq5 level triggered on FireBee */
- MCF_EPORT_EPPAR_EPPA5(MCF_EPORT_EPPAR_LEVEL) |
- #elif defined(MACHINE_M5484LITE)
- MCF_EPORT_EPPAR_EPPA5(MCF_EPORT_EPPAR_FALLING) |
- #endif /* MACHINE_FIREBEE */
- MCF_EPORT_EPPAR_EPPA4(MCF_EPORT_EPPAR_FALLING) |
- MCF_EPORT_EPPAR_EPPA3(MCF_EPORT_EPPAR_FALLING) |
- MCF_EPORT_EPPAR_EPPA2(MCF_EPORT_EPPAR_FALLING) |
- MCF_EPORT_EPPAR_EPPA1(MCF_EPORT_EPPAR_FALLING);
-
- MCF_EPORT_EPDDR = 0; /* clear data direction register. All pins as input */
- MCF_EPORT_EPFR = -1; /* clear all EPORT interrupt flags */
- MCF_EPORT_EPIER = 0xfe; /* enable all EPORT interrupts (for now) */
-}
-
-void init_xlbus_arbiter(void)
-{
- uint8_t clock_ratio;
-
- /* setup XL bus arbiter */
- clock_ratio = (MCF_PCI_PCIGSCR >> 24) & 0x07;
- if (clock_ratio == 4)
- {
- MCF_XLB_XARB_CFG = MCF_XLB_XARB_CFG_BA |
- MCF_XLB_XARB_CFG_DT |
- MCF_XLB_XARB_CFG_AT |
- MCF_XLB_XARB_CFG_PLDIS;
- }
- else
- {
- MCF_XLB_XARB_CFG = MCF_XLB_XARB_CFG_BA |
- MCF_XLB_XARB_CFG_DT |
- MCF_XLB_XARB_CFG_AT;
- }
-
- /*
- * set arbitration priorities for XL bus masters
- *
- * M0 = ColdFire core
- * M2 = Multichannel DMA
- * M3 = PCI target interface
- */
-#if 0
- MCF_XLB_XARB_PRIEN = MCF_XLB_XARB_PRIEN_M0 | /* activate programmed priority for Coldfire core */
- MCF_XLB_XARB_PRIEN_M2 | /* activate programmed priority for Multichannel DMA */
- MCF_XLB_XARB_PRIEN_M3; /* activate programmed priority for PCI target interface */
- MCF_XLB_XARB_PRI = MCF_XLB_XARB_PRI_M0P(7) | /* Coldfire core gets lowest */
- MCF_XLB_XARB_PRI_M2P(5) | /* Multichannel DMA mid priority */
- MCF_XLB_XARB_PRI_M3P(3); /* PCI target interface is highest priority */
-#endif
-}
-
-void init_pci(void)
-{
- int res;
-
- xprintf("initializing PCI bridge:\r\n");
-
- (void) res; /* for now */
-
- init_eport();
- init_xlbus_arbiter();
-
- MCF_PCI_PCIGSCR |= MCF_PCI_PCIGSCR_PR; /* reset PCI devices */
-
-
- /*
- * setup the PCI arbiter
- */
- MCF_PCIARB_PACR = MCF_PCIARB_PACR_INTMPRI /* internal master priority: high */
- | MCF_PCIARB_PACR_EXTMPRI(0x0) /* external master priority: high */
- | MCF_PCIARB_PACR_INTMINTEN /* enable "internal master broken" interrupt */
- | MCF_PCIARB_PACR_EXTMINTEN(0x0f); /* enable "external master broken" interrupt */
-
-#if defined(MACHINE_FIREBEE)
- MCF_PAD_PAR_PCIBG = MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0;
- MCF_PAD_PAR_PCIBR = MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0;
-#elif defined(MACHINE_M5484LITE)
- MCF_PAD_PAR_PCIBG = MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4; /* enable all PCI bus grant and bus requests on the LITE board */
- MCF_PAD_PAR_PCIBR = MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4;
-#endif /* MACHINE_FIREBEE */
-
- MCF_PCI_PCISCR = MCF_PCI_PCISCR_M | /* memory access control enabled */
- MCF_PCI_PCISCR_B | /* bus master enabled */
- MCF_PCI_PCISCR_M | /* mem access enable */
- MCF_PCI_PCISCR_MA | /* clear master abort error */
- MCF_PCI_PCISCR_MW | /* memory write and invalidate enabled */
- MCF_PCI_PCISCR_PER; /* assert PERR on parity error */
-
-
- /* Setup burst parameters */
- MCF_PCI_PCICR1 = MCF_PCI_PCICR1_CACHELINESIZE(8) |
- MCF_PCI_PCICR1_LATTIMER(0x20); /* TODO: test increased latency timer */
-
- MCF_PCI_PCICR2 = MCF_PCI_PCICR2_MINGNT(1) |
- MCF_PCI_PCICR2_MAXLAT(32);
-
- // MCF_PCI_PCICR2 = 0; /* this is what Linux does */
-
- /* error signaling */
-
- MCF_PCI_PCIICR = MCF_PCI_PCIICR_TAE | /* target abort enable */
- MCF_PCI_PCIICR_IAE; /* initiator abort enable */
-
- // MCF_PCI_PCIICR = 0; /* this is what Linux does */
-
- MCF_PCI_PCIGSCR |= MCF_PCI_PCIGSCR_SEE | /* system error interrupt enable */
- MCF_PCI_PCIGSCR_PEE; /* parity error interrupt enable */
- /* Configure Initiator Windows */
-
- /*
- * initiator window 0 base / translation adress register
- * used for PCI memory access
- */
- MCF_PCI_PCIIW0BTAR = ((PCI_MEMORY_OFFSET + ((PCI_MEMORY_SIZE - 1) >> 8)) & 0xffff0000)
- | (PCI_MEMORY_OFFSET >> 16);
-
- NOP();
- dbg("PCIIW0BTAR=0x%08x\r\n", MCF_PCI_PCIIW0BTAR);
-
- /*
- * initiator window 1 base / translation adress register
- * used for PCI I/O access
- */
- MCF_PCI_PCIIW1BTAR = ((PCI_IO_OFFSET + ((PCI_IO_SIZE - 1) >> 8)) & 0xffff0000)
- | (PCI_IO_OFFSET >> 16);
- NOP();
- /* initiator window 2 base / translation address register */
- MCF_PCI_PCIIW2BTAR = 0L; /* not used */
- NOP();
- /* initiator window configuration register */
- MCF_PCI_PCIIWCR = MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE |
- MCF_PCI_PCIIWCR_WINCTRL1_IO |
- MCF_PCI_PCIIWCR_WINCTRL0_E |
- MCF_PCI_PCIIWCR_WINCTRL1_E;
- NOP();
-
- /*
- * Initialize target control register.
- * Used when an external bus master accesses the Coldfire PCI as target
- */
- MCF_PCI_PCIBAR0 = 0x40000000; /* 256 kB window */
- MCF_PCI_PCITBATR0 = (uint32_t) &_MBAR[0] | MCF_PCI_PCITBATR0_EN; /* target base address translation register 0 */
- MCF_PCI_PCIBAR1 = 0; /* 1GB window */
- MCF_PCI_PCITBATR1 = MCF_PCI_PCITBATR1_EN;
-
- /* reset PCI devices */
- MCF_PCI_PCIGSCR &= ~MCF_PCI_PCIGSCR_PR;
- do { NOP(); } while (MCF_PCI_PCIGSCR & MCF_PCI_PCIGSCR_PR); /* wait until reset finished */
- wait(200);
-
- xprintf("finished\r\n");
-
- /* initialize/clear resource descriptor table */
- memset(&resource_descriptors, 0, NUM_CARDS * NUM_RESOURCES * sizeof(struct pci_rd));
-
- /* initialize/clear handles array */
- memset(handles, 0, NUM_CARDS * sizeof(int32_t));
-
- /* initialize/clear interrupts array */
- memset(interrupts, 0, MAX_INTERRUPTS * sizeof(struct pci_interrupt));
-
- /*
- * give devices a chance to come up befor attempting to configure them,
- * necessary to properly detect the FireBee USB chip
- */
- wait_ms(400);
-
- /*
- * do normal initialization
- */
- pci_scan();
-}
-
-
-#ifdef DEBUG_PCI
-void pci_print_device_abilities(int32_t handle)
-{
- uint16_t value;
- uint16_t saved_value;
-
- saved_value = pci_read_config_word(handle, PCICSR);
- pci_write_config_word(handle, PCICSR, 0xffff);
- value = swpw(pci_read_config_word(handle, PCICSR));
- dbg("IO: %1d MEM: %1d MSTR:%1d SPCC: %1d MEMW: %1d VGAS: %1d PERR: %1d STEP: %1d SERR: %1d FBTB: %1d\r\n",
- value & PCICSR_IO ? 1 : 0,
- value & PCICSR_MEMORY ? 1 : 0,
- value & PCICSR_MASTER ? 1 : 0,
- value & PCICSR_SPECIAL ? 1 : 0,
- value & PCICSR_MEMWI ? 1 : 0,
- value & PCICSR_VGA_SNOOP ? 1 : 0,
- value & PCICSR_PERR ? 1 : 0,
- value & PCICSR_STEPPING ? 1 : 0,
- value & PCICSR_SERR ? 1 : 0,
- value & PCICSR_FAST_BTOB_E ? 1 : 0);
- pci_write_config_word(handle, PCICSR, saved_value);
-}
-
-
-void pci_print_device_config(int32_t handle)
-{
- uint16_t value;
-
- value = swpw(pci_read_config_word(handle, PCICSR + 2));
- dbg("66M: %1d UDF: %1d FB2B:%1d PERR: %1d TABR: %1d DABR: %1d SERR: %1d PPER: %1d\r\n",
- value & PCICSR_66MHZ ? 1 : 0,
- value & PCICSR_UDF ? 1 : 0,
- value & PCICSR_FAST_BTOB ? 1 : 0,
- value & PCICSR_DPARITY_ERROR ? 1 : 0,
- value & PCICSR_T_ABORT_S ? 1 : 0,
- value & PCICSR_T_ABORT_R ? 1 : 0,
- value & PCICSR_M_ABORT_R ? 1 : 0,
- value & PCICSR_S_ERROR_S ? 1 : 0,
- value & PCICSR_PARITY_ERR ? 1 : 0);
-}
-#endif /* DEBUG_PCI */
-
-
diff --git a/BaS_gcc/pci/pci_errata.c b/BaS_gcc/pci/pci_errata.c
deleted file mode 100755
index 52ca707..0000000
--- a/BaS_gcc/pci/pci_errata.c
+++ /dev/null
@@ -1,66 +0,0 @@
-#include "pci_errata.h"
-#include "pci.h"
-#include
-
-#include "debug.h"
-
-__attribute__((aligned(16))) void chip_errata_135(void)
-{
- /*
- * Errata type: Silicon
- * Affected component: PCI
- * Description: When core PCI transactions that involve writes to configuration or I/O space
- * are followed by a core line access to line addresses 0x4 and 0xC, core access
- * to the XL bus can hang.
- * Workaround: Prevent PCI configuration and I/O writes from being followed by the described
- * line access by the core by generating a known good XL bus transaction after
- * the PCI transaction.
- * Create a dummy function which is called immediately after each of the affected
- * transactions. There are three requirements for this dummy function.
- * 1. The function must be aligned to a 16-byte boundary.
- * 2. The function must contain a dummy write to a location on the XL bus,
- * preferably one with no side effects.
- * 3. The function must be longer than 32 bytes. If it is not, the function should
- * be padded with 16- or 48-bit TPF instructions placed after the end of
- * the function (after the RTS instruction) such that the length is longer
- * than 32 bytes.
- */
-
- __asm__ __volatile(
- " .extern __MBAR \n\t"
- " clr.l d0 \n\t"
- " move.l d0,__MBAR+0xF0C \n\t" /* Must use direct addressing. write to EPORT module */
- /* xlbus -> slavebus -> eport, writing '0' to register */
- /* has no effect */
- " rts \n\t"
- " tpf.l #0x0 \n\t"
- " tpf.l #0x0 \n\t"
- " tpf.l #0x0 \n\t"
- " tpf.l #0x0 \n\t"
- " tpf.l #0x0 \n\t"
- ::: "d0", "memory");
-}
-
-void chip_errata_055(int32_t handle)
-{
- uint32_t dummy;
-
- return; /* test */
-
- /* initiate PCI configuration access to device */
- MCF_PCI_PCICAR = MCF_PCI_PCICAR_E | /* enable configuration access special cycle */
- MCF_PCI_PCICAR_BUSNUM(3) | /* note: invalid bus number */
- MCF_PCI_PCICAR_DEVNUM(PCI_DEVICE_FROM_HANDLE(handle)) | /* device number, devices 0 - 9 are reserved */
- MCF_PCI_PCICAR_FUNCNUM(PCI_FUNCTION_FROM_HANDLE(handle)) | /* function number */
- MCF_PCI_PCICAR_DWORD(0);
-
- /* issue a dummy read to an unsupported bus number (will fail) */
- dummy = * (volatile uint32_t *) PCI_IO_OFFSET; /* access device */
-
- /* silently clear the PCI errors we produced just now */
- MCF_PCI_PCIISR = 0xffffffff; /* clear all errors */
- MCF_PCI_PCIGSCR = MCF_PCI_PCIGSCR_PE | MCF_PCI_PCIGSCR_SE;
-
- (void) dummy;
-}
-
diff --git a/BaS_gcc/pci/pci_wrappers.S b/BaS_gcc/pci/pci_wrappers.S
deleted file mode 100644
index faf166e..0000000
--- a/BaS_gcc/pci/pci_wrappers.S
+++ /dev/null
@@ -1,469 +0,0 @@
-/*
- * pci.S
- *
- * Purpose: PCI configuration for the Coldfire builtin PCI bridge.
- *
- * Notes:
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 08.05.2014
- * Author: David Galvez
- */
-
-.global _wrapper_find_pci_device
-.global _wrapper_find_pci_classcode
-
-.global _wrapper_read_config_longword
-.global _wrapper_read_config_word
-.global _wrapper_read_config_byte
-
-.global _wrapper_fast_read_config_byte
-.global _wrapper_fast_read_config_word
-.global _wrapper_fast_read_config_longword
-
-.global _wrapper_write_config_longword
-.global _wrapper_write_config_word
-.global _wrapper_write_config_byte
-
-.global _wrapper_get_resource
-.global _wrapper_hook_interrupt
-.global _wrapper_unhook_interrupt
-
-.global _wrapper_special_cycle
-.global _wrapper_get_routing
-.global _wrapper_set_interrupt
-.global _wrapper_get_resource
-.global _wrapper_get_card_used
-.global _wrapper_set_card_used
-
-.global _wrapper_read_mem_byte
-.global _wrapper_read_mem_word
-.global _wrapper_read_mem_longword
-
-.global _wrapper_fast_read_mem_byte
-.global _wrapper_fast_read_mem_word
-.global _wrapper_fast_read_mem_longword
-
-.global _wrapper_write_mem_byte
-.global _wrapper_write_mem_word
-.global _wrapper_write_mem_longword
-
-.global _wrapper_read_io_byte
-.global _wrapper_read_io_word
-.global _wrapper_read_io_longword
-
-.global _wrapper_fast_read_io_byte
-.global _wrapper_fast_read_io_word
-.global _wrapper_fast_read_io_longword
-
-.global _wrapper_write_io_byte
-.global _wrapper_write_io_word
-.global _wrapper_write_io_longword
-
-.global _wrapper_get_machine_id
-.global _wrapper_get_pagesize
-
-.global _wrapper_virt_to_bus
-.global _wrapper_bus_to_virt
-.global _wrapper_virt_to_phys
-.global _wrapper_phys_to_virt
-
-
-_wrapper_find_pci_device:
- move.l D1,-(SP) // index
- move.l D0,-(SP) // Vendor ID
- move.l #16,D1
- lsr.l D1,D0
- move.l D0,-(SP) // Device ID
- jsr _pci_find_device
- add.l #12,SP
- rts
-
-_wrapper_find_pci_classcode:
- move.l D1,-(SP) // index
- move.l D0,-(SP) // ID
- jsr _pci_find_classcode
- addq.l #8,SP
- rts
-
-_wrapper_read_config_byte:
- move.l A0,-(SP) // pointer to space for read data
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_read_config_byte
- move.l 8(SP),A0 // PCI_BIOS expects value in memory
- move.l D0,(A0)
- add.l #12,SP
- move.l #0,D0
- rts
-
-_wrapper_read_config_word:
- move.l A0,-(SP) // pointer to space for read data
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_read_config_word
- move.l 8(SP),A0 // little to big endian
- move.l D0,(A0)
- mvz.b 1(A0),D0
- lsl.l #8,D0
- move.b (A0),D0
- move.l D0,(A0) // PCI_BIOS expects value in memory, not in D0
- add.l #12,SP
- move.l #0,D0
- rts
-
-_wrapper_read_config_longword:
- move.l A0,-(SP) // pointer to space for read data
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_read_config_longword
- move.l 8(SP),A0 // little to big endian
- move.l D0,(A0)
- mvz.b 3(A0),D0
- lsl.l #8,D0
- move.b 2(A0),D0
- lsl.l #8,D0
- move.b 1(A0),D0
- lsl.l #8,D0
- move.b (A0),D0
- move.l D0,(A0) // PCI_BIOS expects value in memory, not in D0
- add.l #12,SP
- move.l #0,D0
- rts
-
-/* Not implemented */
-_wrapper_fast_read_config_byte:
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_fast_read_config_byte
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_config_word:
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_fast_read_config_word
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_config_longword:
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_fast_read_config_longword
- addq.l #8,SP
- rts
-
-_wrapper_write_config_byte:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_write_config_byte
- add.l #12,SP
- rts
-
-_wrapper_write_config_word:
- move.l D0,-(SP) // make data little endian
- moveq #0,D1
- move.w D2,D1
- lsr.l #8,D1
- asl.l #8,D2
- or.l D1,D2
- move.l (SP)+,D0
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_write_config_word
- add.l #12,SP
- rts
-
-_wrapper_write_config_longword:
- move.l D0,-(SP)
- move.l D2,D0 // make data little endian
- lsr.l #8,D0
- asl.l #8,D2
- and.l #0x00FF00FF,D0
- and.l #0xFF00FF00,D2
- or.l D0,D2
- swap D2
- move.l (SP)+,D0
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // PCI register
- move.l D0,-(SP) // handle
- jsr _pci_write_config_longword
- add.l #12,SP
- rts
-
-_wrapper_hook_interrupt:
- move.l A1,-(SP) // parameter for interrupt handler
- move.l A0,-(SP) // pointer to interrupt handler
- move.l D0,-(SP) // handle
- jsr _pci_hook_interrupt
- add.l #12,SP
- rts
-
-_wrapper_unhook_interrupt:
- move.l D0,-(SP) // handle
- jsr _pci_unhook_interrupt
- addq.l #4,SP
- rts
-
-/* Not implemented */
-_wrapper_special_cycle:
- move.l D1,-(SP) // special cycle data
- move.l D0,-(SP) // bus number
- jsr _pci_special_cycle
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_get_routing:
- move.l D0,-(SP) // handle
- jsr _pci_get_routing
- addq.l #4,SP
- rts
-
-/* Not implemented */
-_wrapper_set_interrupt:
- move.l D1,-(SP) // mode
- move.l D0,-(SP) // handle
- jsr _pci_set_interrupt
- addq.l #8,SP
- rts
-
-_wrapper_get_resource:
- move.l D0,-(SP) // handle
- jsr _pci_get_resource
- addq.l #4,SP
- rts
-
-/* Not implemented */
-_wrapper_get_card_used:
- move.l D1,-(SP) // address
- move.l D0,-(SP) // handle
- jsr _pci_get_card_used
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_set_card_used:
- move.l A0,-(SP) // callback
- move.l D0,-(SP) // handle
- jsr _pci_set_card_used
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_read_mem_byte:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_byte
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_read_mem_word:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_word
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_read_mem_longword:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_longword
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_mem_byte:
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_byte
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_mem_word:
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_word
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_mem_longword:
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_mem_longword
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_write_mem_byte:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_mem_byte
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_write_mem_word:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_mem_word
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_write_mem_longword:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI memory address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_mem_longword
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_read_io_byte:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_byte
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_read_io_word:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_word
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_read_io_longword:
- move.l A0,-(SP) // pointer to data in memory
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_longword
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_io_byte:
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_byte
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_io_word:
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_word
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_fast_read_io_longword:
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_read_io_longword
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_write_io_byte:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_io_byte
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_write_io_word:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_io_word
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_write_io_longword:
- move.l D2,-(SP) // data to write
- move.l D1,-(SP) // address to access (in PCI I/O address space)
- move.l D0,-(SP) // handle
- jsr _pci_write_io_longword
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_get_machine_id:
- jsr _pci_get_machine_id
- rts
-
-/* Not implemented */
-_wrapper_get_pagesize:
- jsr _pci_get_pagesize
- rts
-
-/* Not implemented */
-_wrapper_virt_to_bus:
- move.l A0,-(SP) // ptr
- move.l D1,-(SP) // address in virtual CPU space
- move.l D0,-(SP) // handle
- jsr _pci_virt_to_bus
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_bus_to_virt:
- move.l A0,-(SP) // ptr
- move.l D1,-(SP) // PCI bus address
- move.l D0,-(SP) // handle
- jsr _pci_bus_to_virt
- add.l #12,SP
- rts
-
-/* Not implemented */
-_wrapper_virt_to_phys:
- move.l A0,-(SP) // ptr
- move.l D0,-(SP) // address in virtual CPU space
- jsr _pci_virt_to_phys
- addq.l #8,SP
- rts
-
-/* Not implemented */
-_wrapper_phys_to_virt:
- move.l A0,-(SP) // ptr
- move.l D0,-(SP) // physical CPU address
- jsr _pci_phys_to_virt
- addq.l #8,SP
- rts
diff --git a/BaS_gcc/radeon/i2c-algo-bit.c b/BaS_gcc/radeon/i2c-algo-bit.c
deleted file mode 100644
index aa4ee13..0000000
--- a/BaS_gcc/radeon/i2c-algo-bit.c
+++ /dev/null
@@ -1,474 +0,0 @@
-/* ------------------------------------------------------------------------- */
-/* i2c-algo-bit.c i2c driver algorithms for bit-shift adapters */
-/* ------------------------------------------------------------------------- */
-/* Copyright (C) 1995-2000 Simon G. Vogl
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
-/* ------------------------------------------------------------------------- */
-
-/* With some changes from Frodo Looijaard , Kyösti Mälkki
- and Jean Delvare */
-
-#include "wait.h"
-#include "i2c.h"
-#include "i2c-algo-bit.h"
-
-#ifndef NULL
-#define NULL ((void *)0)
-#endif
-
-// #define DEBUG
-#include "debug.h"
-
-extern void start_timeout(void);
-extern int end_timeout(long msec);
-
-/* --- setting states on the bus with the right timing: --------------- */
-
-#define setsda(adap,val) adap->setsda(adap->data, val)
-#define setscl(adap,val) adap->setscl(adap->data, val)
-#define getsda(adap) adap->getsda(adap->data)
-#define getscl(adap) adap->getscl(adap->data)
-
-static inline void sdalo(struct i2c_algo_bit_data *adap)
-{
- setsda(adap,0);
- wait_us(adap->udelay);
-}
-
-static inline void sdahi(struct i2c_algo_bit_data *adap)
-{
- setsda(adap,1);
- wait_us(adap->udelay);
-}
-
-static inline void scllo(struct i2c_algo_bit_data *adap)
-{
- setscl(adap,0);
- wait_us(adap->udelay);
-}
-
-/*
- * Raise scl line, and do checking for delays. This is necessary for slower
- * devices.
- */
-static inline int sclhi(struct i2c_algo_bit_data *adap)
-{
- setscl(adap, 1);
- /* Not all adapters have scl sense line... */
- if(adap->getscl == NULL )
- {
- wait_us(adap->udelay);
- return 0;
- }
- start_timeout();
- while (! getscl(adap))
- {
- /* the hw knows how to read the clock line,
- * so we wait until it actually gets high.
- * This is safer as some chips may hold it low
- * while they are processing data internally.
- */
- if (end_timeout((long)adap->timeout))
- return -110;
- }
- wait_us(adap->udelay);
- return 0;
-}
-
-
-/* --- other auxiliary functions -------------------------------------- */
-void i2c_start(struct i2c_algo_bit_data *adap)
-{
- /* assert: scl, sda are high */
- sdalo(adap);
- scllo(adap);
-}
-
-static void i2c_repstart(struct i2c_algo_bit_data *adap)
-{
- /* scl, sda may not be high */
- setsda(adap, 1);
- sclhi(adap);
- wait_us(adap->udelay);
- sdalo(adap);
- scllo(adap);
-}
-
-static void i2c_stop(struct i2c_algo_bit_data *adap)
-{
- /* assert: scl is low */
- sdalo(adap);
- sclhi(adap);
- sdahi(adap);
-}
-
-/*
- * send a byte without start cond., look for arbitration,
- * check ackn. from slave
- *
- * returns:
- * 1 if the device acknowledged
- * 0 if the device did not ack
- * -ETIMEDOUT if an error occurred (while raising the scl line)
- */
-static int i2c_outb(struct i2c_adapter *i2c_adap, char c)
-{
- int i;
- int sb;
- int ack;
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- /* assert: scl is low */
-
- for (i = 7; i >= 0; i--)
- {
- sb = c & (1 << i);
- setsda(adap,sb);
- wait_us(adap->udelay);
- if (sclhi(adap) < 0)
- {
- /* timed out */
- sdahi(adap); /* we don't want to block the net */
-#ifdef DEBUG
- dbg("ETIMEDOUT\r\n");
-#endif
- return -110;
- };
- /* do arbitration here:
- * if ( sb && ! getsda(adap) ) -> ouch! Get out of here.
- */
- setscl(adap, 0 );
- wait_us(adap->udelay);
- }
- sdahi(adap);
- if(sclhi(adap)<0)
- {
- /* timeout */
-
- dbg("ETIMEDOUT\r\n");
-
- return -110;
- }
- /* read ack: SDA should be pulled down by slave */
- ack = getsda(adap); /* ack: sda is pulled low ->success. */
- scllo(adap);
-
- dbg("0x%02x, ack=0x%02x\r\n", (unsigned long)(c & 0xff), ack);
-
- return 0 == ack; /* return 1 if device acked */
- /* assert: scl is low (sda undef) */
-}
-
-static int i2c_inb(struct i2c_adapter *i2c_adap)
-{
- /* read byte via i2c port, without start/stop sequence */
- /* acknowledge is sent in i2c_read. */
- int i;
- unsigned char indata = 0;
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- /* assert: scl is low */
- sdahi(adap);
- for(i = 0; i < 8; i++)
- {
- if (sclhi(adap) < 0)
- {
- /* timeout */
- dbg("i2c_inb TIMEDOUT\r\n");
- return -110;
- }
- indata *= 2;
- if (getsda(adap))
- indata |= 0x01;
- scllo(adap);
- }
- /* assert: scl is low */
- dbg("0x%02x\r\n", (unsigned long)(indata & 0xff));
-
- return (int) (indata & 0xff);
-}
-
-/*
- * Sanity check for the adapter hardware - check the reaction of
- * the bus lines only if it seems to be idle.
- */
-static int test_bus(struct i2c_algo_bit_data *adap)
-{
- int scl, sda;
- sda = getsda(adap);
- scl = (adap->getscl == NULL ? 1 : getscl(adap));
- if (!scl || !sda )
- goto bailout;
- sdalo(adap);
- sda = getsda(adap);
- scl = (adap->getscl == NULL ? 1 : getscl(adap));
- if (sda !=0 || scl == 0)
- goto bailout;
- sdahi(adap);
- sda = getsda(adap);
- scl = (adap->getscl == NULL ? 1 : getscl(adap));
- if (sda == 0 || scl ==0)
- goto bailout;
- scllo(adap);
- sda = getsda(adap);
- scl = (adap->getscl == NULL ? 0 : getscl(adap));
- if (scl !=0 || sda == 0)
- goto bailout;
- sclhi(adap);
- sda = getsda(adap);
- scl = (adap->getscl == NULL ? 1 : getscl(adap));
- if (scl == 0 || sda ==0)
- goto bailout;
- return 0;
-bailout:
- sdahi(adap);
- sclhi(adap);
- return -110;
-}
-
-/* ----- Utility functions
- */
-
-/* try_address tries to contact a chip for a number of
- * times before it gives up.
- * return values:
- * 1 chip answered
- * 0 chip did not answer
- * -x transmission error
- */
-static inline int try_address(struct i2c_adapter *i2c_adap,
- unsigned char addr, int retries)
-{
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- int i, ret = -1;
- for (i = 0; i <= retries; i++)
- {
- ret = i2c_outb(i2c_adap, addr);
- if (ret == 1)
- break; /* success! */
- i2c_stop(adap);
- wait_us(5);
- if (i == retries) /* no success */
- break;
- i2c_start(adap);
- wait_us(adap->udelay);
- }
- return ret;
-}
-
-static int sendbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msg)
-{
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- char c;
- const char *temp = (const char *)msg->buf;
- int count = msg->len;
- unsigned short nak_ok = msg->flags & I2C_M_IGNORE_NAK;
- int retval;
- int wrcount=0;
- while(count > 0)
- {
- c = *temp;
- retval = i2c_outb(i2c_adap,c);
- if ((retval > 0) || (nak_ok && (retval==0)))
- { /* ok or ignored NAK */
- count--;
- temp++;
- wrcount++;
- }
- else
- { /* arbitration or no acknowledge */
- i2c_stop(adap);
- return (retval < 0)? retval : -110;
- /* got a better one ?? */
- }
- }
- return wrcount;
-}
-
-static inline int readbytes(struct i2c_adapter *i2c_adap, struct i2c_msg *msg)
-{
- int inval;
- int rdcount=0; /* counts bytes read */
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- char *temp = (char *)msg->buf;
- int count = msg->len;
- while(count > 0)
- {
- inval = i2c_inb(i2c_adap);
- if (inval >= 0)
- {
- *temp = inval;
- rdcount++;
- }
- else
- /* read timed out */
- break;
- temp++;
- count--;
- if (msg->flags & I2C_M_NO_RD_ACK)
- continue;
- if (count > 0)
- /* send ack */
- sdalo(adap);
- else
- sdahi(adap); /* neg. ack on last byte */
- if (sclhi(adap) < 0)
- {
- /* timeout */
- sdahi(adap);
- return -1;
- };
- scllo(adap);
- sdahi(adap);
- }
- return rdcount;
-}
-
-/* doAddress initiates the transfer by generating the start condition (in
- * try_address) and transmits the address in the necessary format to handle
- * reads, writes as well as 10bit-addresses.
- * returns:
- * 0 everything went okay, the chip ack'ed, or IGNORE_NAK flag was set
- * -x an error occurred (like: -EREMOTEIO if the device did not answer, or
- * -ETIMEDOUT, for example if the lines are stuck...)
- */
-static inline int bit_doAddress(struct i2c_adapter *i2c_adap, struct i2c_msg *msg)
-{
- unsigned short flags = msg->flags;
- unsigned short nak_ok = msg->flags & I2C_M_IGNORE_NAK;
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- unsigned char addr;
- int ret, retries;
- retries = nak_ok ? 0 : i2c_adap->retries;
- if (flags & I2C_M_TEN)
- {
- /* a ten bit address */
- addr = 0xf0 | (( msg->addr >> 7) & 0x03);
- /* try extended address code...*/
- ret = try_address(i2c_adap, addr, retries);
- if ((ret != 1) && !nak_ok)
- return -1;
- /* the remaining 8 bit address */
- ret = i2c_outb(i2c_adap,msg->addr & 0x7f);
- if ((ret != 1) && !nak_ok)
- /* the chip did not ack / xmission error occurred */
- return -1;
- if (flags & I2C_M_RD)
- {
- i2c_repstart(adap);
- /* okay, now switch into reading mode */
- addr |= 0x01;
- ret = try_address(i2c_adap, addr, retries);
- if ((ret != 1) && !nak_ok)
- return -1;
- }
- }
- else
- { /* normal 7bit address */
- addr = (msg->addr << 1);
- if (flags & I2C_M_RD )
- addr |= 1;
- if (flags & I2C_M_REV_DIR_ADDR )
- addr ^= 1;
- ret = try_address(i2c_adap, addr, retries);
- if ((ret != 1) && !nak_ok)
- return -1;
- }
- return 0;
-}
-
-static int bit_xfer(struct i2c_adapter *i2c_adap, struct i2c_msg msgs[], int num)
-{
- struct i2c_msg *pmsg;
- struct i2c_algo_bit_data *adap = i2c_adap->algo_data;
- int i,ret;
- unsigned short nak_ok;
- i2c_start(adap);
- for(i=0;iflags & I2C_M_IGNORE_NAK;
- if(!(pmsg->flags & I2C_M_NOSTART))
- {
- if (i)
- i2c_repstart(adap);
- ret = bit_doAddress(i2c_adap, pmsg);
- if ((ret != 0) && !nak_ok)
- return (ret < 0) ? ret : -1;
- }
- if(pmsg->flags & I2C_M_RD )
- {
- /* read bytes into buffer*/
- ret = readbytes(i2c_adap, pmsg);
- if(ret < pmsg->len)
- return (ret < 0)? ret : -1;
- }
- else
- {
- /* write bytes from buffer */
- ret = sendbytes(i2c_adap, pmsg);
- if (ret < pmsg->len )
- return (ret < 0) ? ret : -1;
- }
- }
- i2c_stop(adap);
- return num;
-}
-
-/* -----exported algorithm data: ------------------------------------- */
-
-static struct i2c_algorithm i2c_bit_algo = {
- .master_xfer = bit_xfer,
-};
-
-/*
- * registering functions to load algorithms at runtime
- */
-int i2c_bit_add_bus(struct i2c_adapter *adap)
-{
- struct i2c_algo_bit_data *bit_adap = adap->algo_data;
- if (1)
- {
- int ret = test_bus(bit_adap);
- if (ret < 0)
- return -1;
- }
- /* register new adapter to i2c module... */
- adap->algo = &i2c_bit_algo;
- adap->timeout = 10; /* default values, should */
- adap->retries = 3; /* be replaced by defines */
- return 0;
-}
-
-int i2c_bit_del_bus(struct i2c_adapter *adap)
-{
- return 0;
-}
-
-/* ----------------------------------------------------
- * the functional interface to the i2c busses.
- * ----------------------------------------------------
- */
-
-int i2c_transfer(struct i2c_adapter *adap, struct i2c_msg *msgs, int num)
-{
- int ret;
- if (adap->algo->master_xfer)
- {
- ret = adap->algo->master_xfer(adap, msgs, num);
- return ret;
- }
- else
- return -1;
-}
diff --git a/BaS_gcc/radeon/radeon_accel.c b/BaS_gcc/radeon/radeon_accel.c
deleted file mode 100644
index 3fa6d96..0000000
--- a/BaS_gcc/radeon/radeon_accel.c
+++ /dev/null
@@ -1,1036 +0,0 @@
-/*
- * Copyright 2000 ATI Technologies Inc., Markham, Ontario, and
- * VA Linux Systems Inc., Fremont, California.
- *
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation on the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial
- * portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NON-INFRINGEMENT. IN NO EVENT SHALL ATI, VA LINUX SYSTEMS AND/OR
- * THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-/*
- * Authors:
- * Kevin E. Martin
- * Rickard E. Faith
- * Alan Hourihane
- *
- * Credits:
- *
- * Thanks to Ani Joshi for providing source
- * code to his Radeon driver. Portions of this file are based on the
- * initialization code for that driver.
- *
- * References:
- *
- * !!!! FIXME !!!!
- * RAGE 128 VR/ RAGE 128 GL Register Reference Manual (Technical
- * Reference Manual P/N RRG-G04100-C Rev. 0.04), ATI Technologies: April
- * 1999.
- *
- * RAGE 128 Software Development Manual (Technical Reference Manual P/N
- * SDK-G04000 Rev. 0.01), ATI Technologies: June 1999.
- *
- * Notes on unimplemented XAA optimizations:
- *
- * SetClipping: This has been removed as XAA expects 16bit registers
- * for full clipping.
- * TwoPointLine: The Radeon supports this. Not Bresenham.
- * DashedLine with non-power-of-two pattern length: Apparently, there is
- * no way to set the length of the pattern -- it is always
- * assumed to be 8 or 32 (or 1024?).
- * ScreenToScreenColorExpandFill: See p. 4-17 of the Technical Reference
- * Manual where it states that monochrome expansion of frame
- * buffer data is not supported.
- * Color8x8PatternFill: Apparently, an 8x8 color brush cannot take an 8x8
- * pattern from frame buffer memory.
- *
- */
-
-// #define DEBUG
-#include "debug.h"
-
-#include "fb.h"
-#include "radeonfb.h"
-
-static struct {
- int32_t rop;
- int32_t pattern;
-} RADEON_ROP[] = {
- { ROP3_ZERO, ROP3_ZERO }, /* GXclear */
- { ROP3_DSa, ROP3_DPa }, /* Gxand */
- { ROP3_SDna, ROP3_PDna }, /* GXandReverse */
- { ROP3_S, ROP3_P }, /* GXcopy */
- { ROP3_DSna, ROP3_DPna }, /* GXandInverted */
- { ROP3_D, ROP3_D }, /* GXnoop */
- { ROP3_DSx, ROP3_DPx }, /* GXxor */
- { ROP3_DSo, ROP3_DPo }, /* GXor */
- { ROP3_DSon, ROP3_DPon }, /* GXnor */
- { ROP3_DSxn, ROP3_PDxn }, /* GXequiv */
- { ROP3_Dn, ROP3_Dn }, /* GXinvert */
- { ROP3_SDno, ROP3_PDno }, /* GXorReverse */
- { ROP3_Sn, ROP3_Pn }, /* GXcopyInverted */
- { ROP3_DSno, ROP3_DPno }, /* GXorInverted */
- { ROP3_DSan, ROP3_DPan }, /* GXnand */
- { ROP3_ONE, ROP3_ONE } /* GXset */
-};
-
-#define ACCEL_MMIO
-#define ACCEL_PREAMBLE()
-#define BEGIN_ACCEL(n) radeon_wait_for_fifo(rinfo, (n))
-#define OUT_ACCEL_REG(reg, val) OUTREG(reg, val)
-#define FINISH_ACCEL()
-
-/* MMIO:
- *
- * Wait for the graphics engine to be completely idle: the FIFO has
- * drained, the Pixel Cache is flushed, and the engine is idle. This is
- * a standard "sync" function that will make the hardware "quiescent".
- */
-void radeon_wait_for_idle_mmio(struct radeonfb_info *rinfo)
-{
- int32_t i = 0;
- /* Wait for the engine to go idle */
- radeon_wait_for_fifo_function(rinfo, 64);
- while(1)
- {
- for(i = 0; i < RADEON_TIMEOUT; i++)
- {
- if (!(INREG(RBBM_STATUS) & RBBM_ACTIVE))
- {
- radeon_engine_flush(rinfo);
- return;
- }
- }
- radeon_engine_reset(rinfo);
- radeon_engine_restore(rinfo);
- }
-}
-
-#if 0
-
-/* This callback is required for multiheader cards using XAA */
-void RADEONRestoreAccelStateMMIO(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
-// unsigned long pitch64 = ((info->var.xres * (rinfo->bpp / 8) + 0x3f)) >> 6;
- OUTREG(DEFAULT_OFFSET, (((INREG(DISPLAY_BASE_ADDR) + rinfo->fb_local_base) >> 10) | (rinfo->pitch << 22)));
- /* FIXME: May need to restore other things, like BKGD_CLK FG_CLK... */
- RADEONWaitForIdleMMIO(rinfo);
-}
-
-#endif
-
-/* Setup for XAA SolidFill */
-void radeon_setup_for_solid_fill(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask)
-{
- struct radeonfb_info *rinfo = info->par;
- ACCEL_PREAMBLE();
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_SOLID_COLOR | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].pattern);
- BEGIN_ACCEL(4);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, color);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- OUT_ACCEL_REG(DP_CNTL, (DST_X_LEFT_TO_RIGHT | DST_Y_TOP_TO_BOTTOM));
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA SolidFillRect */
-void radeon_subsequent_solid_fill_rect_mmio(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h)
-{
- struct radeonfb_info *rinfo = info->par;
- ACCEL_PREAMBLE();
-#ifdef RADEON_TILING
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(2);
-#endif
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | x);
- OUT_ACCEL_REG(DST_WIDTH_HEIGHT, (w << 16) | h);
- FINISH_ACCEL();
-}
-
-/* Setup for XAA solid lines */
-void radeon_setup_for_solid_line_mmio(struct fb_info *info, int32_t color, int32_t rop, uint32_t planemask)
-{
- struct radeonfb_info *rinfo = info->par;
- ACCEL_PREAMBLE();
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_SOLID_COLOR | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].pattern);
- if (rinfo->family >= CHIP_FAMILY_RV200)
- {
- BEGIN_ACCEL(1);
- OUT_ACCEL_REG(DST_LINE_PATCOUNT, 0x55 << BRES_CNTL_SHIFT);
- }
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, color);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA solid horizontal and vertical lines */
-void radeon_subsequent_solid_hor_vert_line_mmio(struct fb_info *info, int32_t x, int32_t y, int32_t len, int32_t dir)
-{
- struct radeonfb_info *rinfo = info->par;
- int32_t w = 1;
- int32_t h = 1;
- ACCEL_PREAMBLE();
- if (dir == DEGREES_0)
- w = len;
- else
- h = len;
-#ifdef RADEON_TILING
- BEGIN_ACCEL(4);
- OUT_ACCEL_REG(DP_CNTL, (DST_X_LEFT_TO_RIGHT | DST_Y_TOP_TO_BOTTOM));
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.xres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DP_CNTL, (DST_X_LEFT_TO_RIGHT | DST_Y_TOP_TO_BOTTOM));
-#endif
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | x);
- OUT_ACCEL_REG(DST_WIDTH_HEIGHT, (w << 16) | h);
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA solid TwoPointLine line */
-void radeon_subsequent_solid_two_point_line_mmio(struct fb_info *info,
- int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t flags)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
-
- /* TODO: Check bounds -- RADEON only has 14 bits */
- if (!(flags & OMIT_LAST))
- radeon_subsequent_solid_hor_vert_line_mmio(info, xb, yb, 1, DEGREES_0);
-#ifdef RADEON_TILING
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (ya <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(2);
-#endif
- OUT_ACCEL_REG(DST_LINE_START, (ya << 16) | xa);
- OUT_ACCEL_REG(DST_LINE_END, (yb << 16) | xb);
- FINISH_ACCEL();
-}
-
-/* Setup for XAA dashed lines
- * NOTE: Since we can only accelerate lines with power-of-2 patterns of * length <= 32
- */
-void radeon_setup_for_dashed_line_mmio(struct fb_info *info, int32_t fg, int32_t bg,
- int32_t rop, uint32_t planemask, int32_t length, unsigned char *pattern)
-{
- struct radeonfb_info *rinfo = info->par;
- unsigned long pat = *(unsigned long *) pattern;
-
- ACCEL_PREAMBLE();
- /* Save for determining whether or not to draw last pixel */
- rinfo->dashLen = length;
- rinfo->dashPattern = pat;
- if (rinfo->big_endian)
- {
- switch (length)
- {
- case 2: pat |= (pat >> 2); /* fall through */
- case 4: pat |= (pat >> 4); /* fall through */
- case 8: pat |= (pat >> 8); /* fall through */
- case 16: pat |= (pat >> 16);
- }
- }
- else
- {
- switch (length)
- {
- case 2: pat |= (pat << 2); /* fall through */
- case 4: pat |= (pat << 4); /* fall through */
- case 8: pat |= (pat << 8); /* fall through */
- case 16: pat |= (pat << 16);
- }
- }
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | (bg == -1 ? GMC_BRUSH_32X1_MONO_FG_LA : GMC_BRUSH_32X1_MONO_FG_BG)
- | RADEON_ROP[rop].pattern | GMC_BYTE_LSB_TO_MSB);
- rinfo->dash_fg = fg;
- rinfo->dash_bg = bg;
- BEGIN_ACCEL((bg == -1) ? 4 : 5);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, fg);
- if (bg != -1)
- OUT_ACCEL_REG(DP_BRUSH_BKGD_CLR, bg);
- OUT_ACCEL_REG(BRUSH_DATA0, pat);
- FINISH_ACCEL();
-}
-
-/* Helper function to draw last point for dashed lines */
-static void RADEONDashedLastPelMMIO(struct fb_info *info,
- int32_t x, int32_t y, int32_t fg)
-{
- struct radeonfb_info *rinfo = info->par;
- unsigned long dp_gui_master_cntl = rinfo->dp_gui_master_cntl_clip;
- ACCEL_PREAMBLE();
- dp_gui_master_cntl &= ~GMC_BRUSH_DATATYPE_MASK;
- dp_gui_master_cntl |= GMC_BRUSH_SOLID_COLOR;
- dp_gui_master_cntl &= ~GMC_SRC_DATATYPE_MASK;
- dp_gui_master_cntl |= GMC_SRC_DATATYPE_COLOR;
-#ifdef RADEON_TILING
- BEGIN_ACCEL(8);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, dp_gui_master_cntl);
- OUT_ACCEL_REG(DP_CNTL, (DST_X_LEFT_TO_RIGHT | DST_Y_TOP_TO_BOTTOM));
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(7);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, dp_gui_master_cntl);
- OUT_ACCEL_REG(DP_CNTL, (DST_X_LEFT_TO_RIGHT | DST_Y_TOP_TO_BOTTOM));
-#endif
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, fg);
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | x);
- OUT_ACCEL_REG(DST_WIDTH_HEIGHT, (1 << 16) | 1);
- /* Restore old values */
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, rinfo->dash_fg);
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA dashed line */
-void radeon_subsequent_dashed_two_point_line_mmio(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t flags, int32_t phase)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
-
- /* TODO: Check bounds -- RADEON only has 14 bits */
- if (!(flags & OMIT_LAST))
- {
- int32_t deltax = xa - xb;
- int32_t deltay = ya - yb;
- int32_t shift;
- if (deltax < 0)
- deltax = -deltax;
- if (deltay < 0)
- deltay = -deltay;
- if (deltax > deltay)
- shift = deltax;
- else
- shift = deltay;
- shift += phase;
- shift %= rinfo->dashLen;
- if ((rinfo->dashPattern >> shift) & 1)
- RADEONDashedLastPelMMIO(info, xb, yb, rinfo->dash_fg);
- else if (rinfo->dash_bg != -1)
- RADEONDashedLastPelMMIO(info, xb, yb, rinfo->dash_bg);
- }
-#ifdef RADEON_TILING
- BEGIN_ACCEL(4);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (ya <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(3);
-#endif
- OUT_ACCEL_REG(DST_LINE_START, (ya << 16) | xa);
- OUT_ACCEL_REG(DST_LINE_PATCOUNT, phase);
- OUT_ACCEL_REG(DST_LINE_END, (yb << 16) | xb);
- FINISH_ACCEL();
-}
-
-/* Set up for transparency
- *
- * Mmmm, Seems as though the transparency compare is opposite to r128.
- * It should only draw when source != trans_color, this is the opposite
- * of that.
- */
-static void radeon_set_transparency_mmio(struct radeonfb_info *rinfo, int32_t trans_color)
-{
- if (trans_color != -1)
- {
- ACCEL_PREAMBLE();
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(CLR_CMP_CLR_SRC, trans_color);
- OUT_ACCEL_REG(CLR_CMP_MSK, 0xffffffff);
- OUT_ACCEL_REG(CLR_CMP_CNTL, (SRC_CMP_EQ_COLOR | CLR_CMP_SRC_SOURCE));
- FINISH_ACCEL();
- }
-}
-
-/* Setup for XAA screen-to-screen copy */
-void radeon_setup_for_screen_to_screen_copy_mmio(struct fb_info *info,
- int32_t xdir, int32_t ydir, int32_t rop, uint32_t planemask, int32_t trans_color)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
- rinfo->xdir = xdir;
- rinfo->ydir = ydir;
- /* Save for later clipping */
-#ifdef RADEON_TILING
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_NONE | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].rop
- | DP_SRC_SOURCE_MEMORY | GMC_SRC_PITCH_OFFSET_CNTL);
-#else
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_NONE | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].rop | DP_SRC_SOURCE_MEMORY);
-#endif
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- OUT_ACCEL_REG(DP_CNTL, ((xdir >= 0 ? DST_X_LEFT_TO_RIGHT : 0) | (ydir >= 0 ? DST_Y_TOP_TO_BOTTOM : 0)));
- FINISH_ACCEL();
- rinfo->trans_color = trans_color;
- if (trans_color != -1)
- radeon_set_transparency_mmio(rinfo, trans_color);
-}
-
-/* Subsequent XAA screen-to-screen copy */
-void radeon_subsequent_screen_to_screen_copy_mmio(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
- if (rinfo->xdir < 0)
- xa += w - 1, xb += w - 1;
-
- if (rinfo->ydir < 0)
- ya += h - 1, yb += h - 1;
-
-#ifdef RADEON_TILING
- BEGIN_ACCEL(5);
- OUT_ACCEL_REG(SRC_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (ya <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (yb <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(3);
-#endif
- OUT_ACCEL_REG(SRC_Y_X, (ya << 16) | xa);
- OUT_ACCEL_REG(DST_Y_X, (yb << 16) | xb);
- OUT_ACCEL_REG(DST_HEIGHT_WIDTH, (h << 16) | w);
- FINISH_ACCEL();
-}
-
-/* XAA screen-to-screen copy */
-void radeon_screen_to_screen_copy_mmio(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb, int32_t w, int32_t h, int32_t rop)
-{
- struct radeonfb_info *rinfo = info->par;
-
- int32_t xdir = xa - xb;
- int32_t ydir = ya - yb;
- ACCEL_PREAMBLE();
- if (xdir < 0)
- xa += w - 1, xb += w - 1;
- if (ydir < 0)
- ya += h - 1, yb += h - 1;
-#ifdef RADEON_TILING
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_NONE | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].rop
- | DP_SRC_SOURCE_MEMORY | GMC_SRC_PITCH_OFFSET_CNTL);
- BEGIN_ACCEL(8);
-
- OUT_ACCEL_REG(SRC_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (ya <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (yb <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_BRUSH_NONE | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].rop | DP_SRC_SOURCE_MEMORY);
- BEGIN_ACCEL(6);
-#endif
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, -1);
- OUT_ACCEL_REG(DP_CNTL, ((xdir >= 0 ? DST_X_LEFT_TO_RIGHT : 0) | (ydir >= 0 ? DST_Y_TOP_TO_BOTTOM : 0)));
- OUT_ACCEL_REG(SRC_Y_X, (ya << 16) | xa);
- OUT_ACCEL_REG(DST_Y_X, (yb << 16) | xb);
- OUT_ACCEL_REG(DST_HEIGHT_WIDTH, (h << 16) | w);
- FINISH_ACCEL();
-}
-
-/* Setup for XAA mono 8x8 pattern color expansion. Patterns with
- * transparency use `bg == -1'. This routine is only used if the XAA
- * pixmap cache is turned on.
- */
-void radeon_setup_for_mono_8x8_pattern_fill_mmio(struct fb_info *info, int32_t patternx, int32_t patterny,
- int32_t fg, int32_t bg, int32_t rop, uint32_t planemask)
-{
- struct radeonfb_info *rinfo = info->par;
- unsigned char pattern[8];
-
- ACCEL_PREAMBLE();
- if (rinfo->big_endian)
- {
- /* Take care of endianness */
- pattern[0] = (patternx & 0x000000ff);
- pattern[1] = (patternx & 0x0000ff00) >> 8;
- pattern[2] = (patternx & 0x00ff0000) >> 16;
- pattern[3] = (patternx & 0xff000000) >> 24;
- pattern[4] = (patterny & 0x000000ff);
- pattern[5] = (patterny & 0x0000ff00) >> 8;
- pattern[6] = (patterny & 0x00ff0000) >> 16;
- pattern[7] = (patterny & 0xff000000) >> 24;
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | (bg == -1 ? GMC_BRUSH_8X8_MONO_FG_LA : GMC_BRUSH_8X8_MONO_FG_BG)
- | RADEON_ROP[rop].pattern | GMC_BYTE_MSB_TO_LSB);
- }
- else
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | (bg == -1 ? GMC_BRUSH_8X8_MONO_FG_LA : GMC_BRUSH_8X8_MONO_FG_BG)
- | RADEON_ROP[rop].pattern);
- BEGIN_ACCEL((bg == -1) ? 5 : 6);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- OUT_ACCEL_REG(DP_BRUSH_FRGD_CLR, fg);
- if (bg != -1)
- OUT_ACCEL_REG(DP_BRUSH_BKGD_CLR, bg);
- if (rinfo->big_endian)
- {
- OUT_ACCEL_REG(BRUSH_DATA0, &pattern[0]);
- OUT_ACCEL_REG(BRUSH_DATA1, &pattern[4]);
- }
- else
- {
- OUT_ACCEL_REG(BRUSH_DATA0, patternx);
- OUT_ACCEL_REG(BRUSH_DATA1, patterny);
- }
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA 8x8 pattern color expansion. Because they are used in
- * the setup function, `patternx' and `patterny' are not used here.
- */
-void radeon_subsequent_mono_8x8_pattern_fill_rect_mmio(struct fb_info *info, int32_t patternx, int32_t patterny,
- int32_t x, int32_t y, int32_t w, int32_t h)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
-#ifdef RADEON_TILING
- BEGIN_ACCEL(4);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(3);
-#endif
- OUT_ACCEL_REG(BRUSH_Y_X, (patterny << 8) | patternx);
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | x);
- OUT_ACCEL_REG(DST_HEIGHT_WIDTH, (h << 16) | w);
- FINISH_ACCEL();
-}
-
-/* Setup for XAA indirect CPU-to-screen color expansion (indirect).
- * Because of how the scratch buffer is initialized, this is really a
- * mainstore-to-screen color expansion. Transparency is supported when
- * `bg == -1'.
- */
-void radeon_setup_for_scanline_cpu_to_screen_color_expand_fill_mmio(struct fb_info *info,
- int32_t fg, int32_t bg, int32_t rop, uint32_t planemask)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
- /* Save for later clipping */
- if (rinfo->big_endian)
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_DST_CLIPPING | GMC_BRUSH_NONE
- | (bg == -1 ? GMC_SRC_DATATYPE_MONO_FG_LA : GMC_SRC_DATATYPE_MONO_FG_BG)
- | RADEON_ROP[rop].rop | GMC_BYTE_MSB_TO_LSB | DP_SRC_SOURCE_HOST_DATA);
- else
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_DST_CLIPPING | GMC_BRUSH_NONE
- | (bg == -1 ? GMC_SRC_DATATYPE_MONO_FG_LA : GMC_SRC_DATATYPE_MONO_FG_BG)
- | RADEON_ROP[rop].rop | GMC_BYTE_LSB_TO_MSB | DP_SRC_SOURCE_HOST_DATA);
- if (rinfo->big_endian)
- {
- BEGIN_ACCEL(5);
- OUT_ACCEL_REG(RBBM_GUICNTL, HOST_DATA_SWAP_NONE);
- }
- else
- BEGIN_ACCEL(4);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- OUT_ACCEL_REG(DP_SRC_FRGD_CLR, fg);
- OUT_ACCEL_REG(DP_SRC_BKGD_CLR, bg);
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA indirect CPU-to-screen color expansion. This is only
- * called once for each rectangle.
- */
-void radeon_subsequent_scanline_cpu_to_screen_color_expand_fill_mmio(struct fb_info *info,
- int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft)
-{
- struct radeonfb_info *rinfo = info->par;
- ACCEL_PREAMBLE();
- rinfo->scanline_h = h;
- rinfo->scanline_words = (w + 31) >> 5;
-#ifdef RADEON_TILING
- BEGIN_ACCEL(5);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(4);
-#endif
- OUT_ACCEL_REG(SC_TOP_LEFT, (y << 16) | ((x + skipleft) & 0xffff));
- OUT_ACCEL_REG(SC_BOTTOM_RIGHT, ((y+h) << 16) | ((x + w) & 0xffff));
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | (x & 0xffff));
- /* Have to pad the width here and use clipping engine */
- OUT_ACCEL_REG(DST_HEIGHT_WIDTH, (h << 16) | ((w + 31) & ~31));
- FINISH_ACCEL();
-}
-
-/* Subsequent XAA indirect CPU-to-screen color expansion and indirect
- * image write. This is called once for each scanline.
- */
-void radeon_subsequent_scanline_mmio(struct fb_info *info, uint32_t *src)
-{
- struct radeonfb_info *rinfo = info->par;
- int32_t left = rinfo->scanline_words;
- volatile unsigned long *d;
- ACCEL_PREAMBLE();
- --rinfo->scanline_h;
- while(left)
- {
- if (left <= 8)
- {
- /* Last scanline - finish write to DATA_LAST */
- if (rinfo->scanline_h == 0)
- {
- BEGIN_ACCEL(left);
- /* Unrolling doesn't improve performance */
- for (d = (volatile unsigned long *) ADDRREG(HOST_DATA_LAST) - (left - 1); left; --left)
- *d++ = *src++;
- return;
- }
- else
- {
- BEGIN_ACCEL(left);
- /* Unrolling doesn't improve performance */
- for (d = (volatile unsigned long *) ADDRREG(HOST_DATA7) - (left - 1); left; --left)
- *d++ = *src++;
- }
- }
- else
- {
- BEGIN_ACCEL(8);
- /* Unrolling doesn't improve performance */
- d = (volatile unsigned long *) ADDRREG(HOST_DATA0);
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- *d++ = *src++;
- left -= 8;
- }
- }
- FINISH_ACCEL();
-}
-
-/* Setup for XAA indirect image write */
-void radeon_setup_for_scanline_image_write_mmio(struct fb_info *info, int32_t rop, uint32_t planemask,
- int32_t trans_color, int32_t bpp)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
- rinfo->scanline_bpp = bpp;
- /* Save for later clipping */
- rinfo->dp_gui_master_cntl_clip = (rinfo->dp_gui_master_cntl
- | GMC_DST_CLIPPING | GMC_BRUSH_NONE | GMC_SRC_DATATYPE_COLOR | RADEON_ROP[rop].rop
- | GMC_BYTE_MSB_TO_LSB | DP_SRC_SOURCE_HOST_DATA);
- if (rinfo->big_endian)
- {
- BEGIN_ACCEL(3);
- if (bpp == 16)
- OUT_ACCEL_REG(RBBM_GUICNTL, HOST_DATA_SWAP_16BIT);
- else if (bpp == 32)
- OUT_ACCEL_REG(RBBM_GUICNTL, HOST_DATA_SWAP_32BIT);
- else
- OUT_ACCEL_REG(RBBM_GUICNTL, HOST_DATA_SWAP_NONE);
- }
- else
- BEGIN_ACCEL(2);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(DP_WRITE_MSK, planemask);
- FINISH_ACCEL();
- rinfo->trans_color = trans_color;
- if (trans_color != -1)
- radeon_set_transparency_mmio(rinfo, trans_color);
-}
-
-/* Subsequent XAA indirect image write. This is only called once for each rectangle. */
-void radeon_subsequent_scanline_image_write_rect_mmio(struct fb_info *info, int32_t x, int32_t y, int32_t w, int32_t h, int32_t skipleft)
-{
- struct radeonfb_info *rinfo = info->par;
- int32_t shift = 0; /* 32bpp */
- ACCEL_PREAMBLE();
- if (rinfo->bpp == 8)
- shift = 3;
- else if (rinfo->bpp == 16)
- shift = 1;
- rinfo->scanline_h = h;
- rinfo->scanline_words = (w * rinfo->scanline_bpp + 31) >> 5;
-#ifdef RADEON_TILING
- BEGIN_ACCEL(5);
- OUT_ACCEL_REG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset
- | ((rinfo->tilingEnabled && (y <= info->var.yres_virtual)) ? DST_TILE_MACRO : 0));
-#else
- BEGIN_ACCEL(4);
-#endif
- OUT_ACCEL_REG(SC_TOP_LEFT, (y << 16) | ((x+skipleft) & 0xffff));
- OUT_ACCEL_REG(SC_BOTTOM_RIGHT, ((y+h) << 16) | ((x+w) & 0xffff));
- OUT_ACCEL_REG(DST_Y_X, (y << 16) | (x & 0xffff));
- /* Have to pad the width here and use clipping engine */
- OUT_ACCEL_REG(DST_HEIGHT_WIDTH, (h << 16) | ((w + shift) & ~shift));
- FINISH_ACCEL();
-}
-
-/* Set up the clipping rectangle */
-void radeon_set_clipping_rectangle_mmio(struct fb_info *info, int32_t xa, int32_t ya, int32_t xb, int32_t yb)
-{
- struct radeonfb_info *rinfo = info->par;
-
- unsigned long tmp1 = 0;
- unsigned long tmp2 = 0;
- ACCEL_PREAMBLE();
- if (xa < 0)
- {
- tmp1 = (-xa) & 0x3fff;
- tmp1 |= SC_SIGN_MASK_LO;
- }
- else
- tmp1 = xa;
- if (ya < 0)
- {
- tmp1 |= (((-ya) & 0x3fff) << 16);
- tmp1 |= SC_SIGN_MASK_HI;
- }
- else
- tmp1 |= (ya << 16);
- xb++; yb++;
- if (xb < 0)
- {
- tmp2 = (-xb) & 0x3fff;
- tmp2 |= SC_SIGN_MASK_LO;
- }
- else
- tmp2 = xb;
- if (yb < 0)
- {
- tmp2 |= (((-yb) & 0x3fff) << 16);
- tmp2 |= SC_SIGN_MASK_HI;
- }
- else
- tmp2 |= (yb << 16);
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, (rinfo->dp_gui_master_cntl_clip | GMC_DST_CLIPPING));
- OUT_ACCEL_REG(SC_TOP_LEFT, tmp1);
- OUT_ACCEL_REG(SC_BOTTOM_RIGHT, tmp2);
- FINISH_ACCEL();
- if (rinfo->trans_color != -1)
- radeon_set_transparency_mmio(rinfo, rinfo->trans_color);
-}
-
-/* Disable the clipping rectangle */
-void radeon_disable_clipping_mmio(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
-
- ACCEL_PREAMBLE();
- BEGIN_ACCEL(3);
- OUT_ACCEL_REG(DP_GUI_MASTER_CNTL, rinfo->dp_gui_master_cntl_clip);
- OUT_ACCEL_REG(SC_TOP_LEFT, 0);
- OUT_ACCEL_REG(SC_BOTTOM_RIGHT, (DEFAULT_SC_RIGHT_MAX | DEFAULT_SC_BOTTOM_MAX));
- FINISH_ACCEL();
- if (rinfo->trans_color != -1)
- radeon_set_transparency_mmio(rinfo, rinfo->trans_color);
-}
-
-#if 0
-
-/* Change surfaces
- The idea here is to only set up front buffer as tiled, and back/depth buffer when needed.
- Everything else is left as untiled. This means we need to use eplicit src/dst pitch control
- when blitting, based on the src/target address, and can no longer use a default offset.
- But OTOH we don't need to dynamically change surfaces (for xv for instance), and some
- ugly offset / fb reservation (cursor) is gone. And as a bonus, everything actually works...
- All surface addresses are relative to MC_FB_LOCATION
- */
-void RADEONChangeSurfaces(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- int32_t cpp = rinfo->bpp >> 3;
- /* depth/front/back pitch must be identical (and the same as displayWidth) */
- int32_t width_bytes = info->var.xres_virtual * cpp;
- int32_t bufferSize = (((((info->var.yres_virtual + 15) & ~15) * width_bytes) + RADEON_BUFFER_ALIGN) & ~RADEON_BUFFER_ALIGN);
- uint32_t depth_pattern, color_pattern, swap_pattern, surf_info;
- if (rinfo->big_endian)
- {
- switch(rinfo->bpp)
- {
- case 16:
- swap_pattern = SURF_AP0_SWP_16BPP | SURF_AP1_SWP_16BPP;
- break;
- case 32:
- swap_pattern = SURF_AP0_SWP_32BPP | SURF_AP1_SWP_32BPP;
- break;
- default:
- swap_pattern = 0;
- }
- }
- else
- swap_pattern = 0;
- if (rinfo->family < CHIP_FAMILY_R200)
- {
- color_pattern = SURF_TILE_COLOR_MACRO;
- if (cpp == 2)
- depth_pattern = SURF_TILE_DEPTH_16BPP;
- else
- depth_pattern = SURF_TILE_DEPTH_32BPP;
- }
- else if (rinfo->family >= CHIP_FAMILY_R300)
- {
- color_pattern = R300_SURF_TILE_COLOR_MACRO;
- if (cpp == 2)
- depth_pattern = R300_SURF_TILE_COLOR_MACRO;
- else
- depth_pattern = R300_SURF_TILE_COLOR_MACRO | R300_SURF_TILE_DEPTH_32BPP;
- }
- else
- {
- color_pattern = R200_SURF_TILE_COLOR_MACRO;
- if (cpp == 2)
- depth_pattern = R200_SURF_TILE_DEPTH_16BPP;
- else
- depth_pattern = R200_SURF_TILE_DEPTH_32BPP;
- }
- /* we don't need anything like WaitForFifo, no? */
-#ifdef RADEON_TILING
- if (rinfo->tilingEnabled)
- {
- if (rinfo->family >= CHIP_FAMILY_R300)
- surf_info = swap_pattern | (width_bytes / 8) | color_pattern;
- else
- surf_info = swap_pattern | (width_bytes / 16) | color_pattern;
- }
- else
-#endif
- surf_info = 0;
- OUTREG(SURFACE0_INFO, surf_info);
- OUTREG(SURFACE0_LOWER_BOUND, 0);
- OUTREG(SURFACE0_UPPER_BOUND, bufferSize - 1);
-}
-
-#endif
-
-/*
- * The FIFO has 64 slots. This routines waits until at least `entries'
- * of these slots are empty.
- */
-void radeon_wait_for_fifo_function(struct radeonfb_info *rinfo, int32_t entries)
-{
- int32_t i;
- while(1)
- {
- for(i = 0; i < RADEON_TIMEOUT; i++)
- {
- rinfo->fifo_slots = INREG(RBBM_STATUS) & RBBM_FIFOCNT_MASK;
- if (rinfo->fifo_slots >= entries)
- return;
- }
- radeon_engine_reset(rinfo);
- radeon_engine_restore(rinfo);
- }
-}
-
-/* Flush all dirty data in the Pixel Cache to memory */
-void radeon_engine_flush(struct radeonfb_info *rinfo)
-{
- int32_t i;
- OUTREGP(RB2D_DSTCACHE_CTLSTAT, RB2D_DC_FLUSH_ALL, ~RB2D_DC_FLUSH_ALL);
- for(i = 0; i < RADEON_TIMEOUT; i++)
- {
- if (!(INREG(RB2D_DSTCACHE_CTLSTAT) & RB2D_DC_BUSY))
- break;
- }
-}
-
-/*
- * Reset graphics card to known state
- */
-void radeon_engine_reset(struct radeonfb_info *rinfo)
-{
- unsigned long clock_cntl_index;
- unsigned long mclk_cntl;
- unsigned long rbbm_soft_reset;
- unsigned long host_path_cntl;
-
- radeon_engine_flush(rinfo);
- clock_cntl_index = INREG(CLOCK_CNTL_INDEX);
-
- /* Some ASICs have bugs with dynamic-on feature, which are
- * ASIC-version dependent, so we force all blocks on for now
- */
- if (rinfo->has_CRTC2)
- {
- unsigned long tmp;
-
- tmp = INPLL(SCLK_CNTL);
- OUTPLL(SCLK_CNTL, ((tmp & ~DYN_STOP_LAT_MASK) | CP_MAX_DYN_STOP_LAT | SCLK_FORCEON_MASK));
- if (rinfo->family == CHIP_FAMILY_RV200)
- {
- tmp = INPLL(SCLK_MORE_CNTL);
- OUTPLL(SCLK_MORE_CNTL, tmp | SCLK_MORE_FORCEON);
- }
- }
- mclk_cntl = INPLL(MCLK_CNTL);
- OUTPLL(MCLK_CNTL, (mclk_cntl | FORCEON_MCLKA
- | FORCEON_MCLKB
- | FORCEON_YCLKA
- | FORCEON_YCLKB
- | FORCEON_MC
- | FORCEON_AIC));
-
- /*
- * Soft resetting HDP thru RBBM_SOFT_RESET register can cause some
- * unexpected behaviour on some machines. Here we use
- * HOST_PATH_CNTL to reset it.
- */
- host_path_cntl = INREG(HOST_PATH_CNTL);
-
- rbbm_soft_reset = INREG(RBBM_SOFT_RESET);
-
- if ((rinfo->family == CHIP_FAMILY_R300) || (rinfo->family == CHIP_FAMILY_R350)
- || (rinfo->family == CHIP_FAMILY_RV350))
- {
- unsigned long tmp;
-
- OUTREG(RBBM_SOFT_RESET, (rbbm_soft_reset | SOFT_RESET_CP | SOFT_RESET_HI | SOFT_RESET_E2));
- INREG(RBBM_SOFT_RESET);
- OUTREG(RBBM_SOFT_RESET, 0);
- tmp = INREG(RB2D_DSTCACHE_MODE);
- OUTREG(RB2D_DSTCACHE_MODE, tmp | (1 << 17)); /* FIXME */
- }
- else
- {
- OUTREG(RBBM_SOFT_RESET, (rbbm_soft_reset | SOFT_RESET_CP
- | SOFT_RESET_HI | SOFT_RESET_SE | SOFT_RESET_RE
- | SOFT_RESET_PP | SOFT_RESET_E2 | SOFT_RESET_RB));
-
- INREG(RBBM_SOFT_RESET);
-
- OUTREG(RBBM_SOFT_RESET, (rbbm_soft_reset & (unsigned long) ~(SOFT_RESET_CP | SOFT_RESET_HI | SOFT_RESET_SE
- | SOFT_RESET_RE | SOFT_RESET_PP | SOFT_RESET_E2 | SOFT_RESET_RB)));
- INREG(RBBM_SOFT_RESET);
- }
- OUTREG(HOST_PATH_CNTL, host_path_cntl | HDP_SOFT_RESET);
- INREG(HOST_PATH_CNTL);
- OUTREG(HOST_PATH_CNTL, host_path_cntl);
-
- if ((rinfo->family != CHIP_FAMILY_R300)
- && (rinfo->family != CHIP_FAMILY_R350)
- && (rinfo->family != CHIP_FAMILY_RV350))
- OUTREG(RBBM_SOFT_RESET, rbbm_soft_reset);
-
- OUTREG(CLOCK_CNTL_INDEX, clock_cntl_index);
- OUTPLL(MCLK_CNTL, mclk_cntl);
-}
-
-/*
- * Restore the acceleration hardware to its previous state
- */
-void radeon_engine_restore(struct radeonfb_info *rinfo)
-{
- BEGIN_ACCEL(1);
- /* NOTE: The following RB2D_DSTCACHE_MODE setting will cause the
- * R300 to hang. ATI does not see a reason to change it from the
- * default BIOS settings (even on non-R300 cards). This setting
- * might be removed in future versions of the Radeon driver.
- */
- /* Turn of all automatic flushing - we'll do it all */
- if ((rinfo->family != CHIP_FAMILY_R300)
- && (rinfo->family != CHIP_FAMILY_R350)
- && (rinfo->family != CHIP_FAMILY_RV350))
- OUTREG(RB2D_DSTCACHE_MODE, 0);
-
- rinfo->fb_local_base = INREG(MC_FB_LOCATION) << 16;
-
- BEGIN_ACCEL(3);
- OUTREG(DEFAULT_PITCH_OFFSET, rinfo->dst_pitch_offset);
- OUTREG(DST_PITCH_OFFSET, rinfo->dst_pitch_offset);
- OUTREG(SRC_PITCH_OFFSET, rinfo->dst_pitch_offset);
-
- BEGIN_ACCEL(1);
- if (rinfo->big_endian)
- OUTREGP(DP_DATATYPE, HOST_BIG_ENDIAN_EN, ~HOST_BIG_ENDIAN_EN);
- else
- OUTREGP(DP_DATATYPE, 0, ~HOST_BIG_ENDIAN_EN);
-
- /* Restore SURFACE_CNTL - only the first head contains valid data */
- OUTREG(SURFACE_CNTL, rinfo->state.surface_cntl);
-
- BEGIN_ACCEL(2);
- OUTREG(DEFAULT_SC_TOP_LEFT, 0);
- OUTREG(DEFAULT_SC_BOTTOM_RIGHT, (DEFAULT_SC_RIGHT_MAX | DEFAULT_SC_BOTTOM_MAX));
-
- BEGIN_ACCEL(1);
- OUTREG(DP_GUI_MASTER_CNTL, (rinfo->dp_gui_master_cntl | GMC_BRUSH_SOLID_COLOR | GMC_SRC_DATATYPE_COLOR));
-
- BEGIN_ACCEL(7);
- OUTREG(DST_LINE_START, 0);
- OUTREG(DST_LINE_END, 0);
- OUTREG(DP_BRUSH_FRGD_CLR, 0xffffffff);
- OUTREG(DP_BRUSH_BKGD_CLR, 0x00000000);
- OUTREG(DP_SRC_FRGD_CLR, 0xffffffff);
- OUTREG(DP_SRC_BKGD_CLR, 0x00000000);
- OUTREG(DP_WRITE_MSK, 0xffffffff);
-
- radeon_wait_for_idle_mmio(rinfo);
-}
-
-/* Initialize the acceleration hardware */
-void radeon_engine_init(struct radeonfb_info *rinfo)
-{
- unsigned long temp;
-
- OUTREG(RB3D_CNTL, 0);
- radeon_engine_reset(rinfo);
- temp = radeon_get_dstbpp(rinfo->depth);
-#ifdef RADEON_TILING
- rinfo->dp_gui_master_cntl = ((temp << GMC_DST_DATATYPE_SHIFT) | GMC_CLR_CMP_CNTL_DIS | GMC_DST_PITCH_OFFSET_CNTL);
-#else
- rinfo->dp_gui_master_cntl = ((temp << GMC_DST_DATATYPE_SHIFT) | GMC_CLR_CMP_CNTL_DIS);
-#endif
- radeon_engine_restore(rinfo);
-}
-
diff --git a/BaS_gcc/radeon/radeon_base.c b/BaS_gcc/radeon/radeon_base.c
deleted file mode 100644
index 0a42bba..0000000
--- a/BaS_gcc/radeon/radeon_base.c
+++ /dev/null
@@ -1,2457 +0,0 @@
-/*
- * radeon_base.c
- *
- * framebuffer driver for ATI Radeon chipset video boards
- *
- * Copyright 2003 Ben. Herrenschmidt
- * Copyright 2000 Ani Joshi
- *
- * i2c bits from Luca Tettamanti
- *
- * Special thanks to ATI DevRel team for their hardware donations.
- *
- * ...Insert GPL boilerplate here...
- *
- * Significant portions of this driver apdated from XFree86 Radeon
- * driver which has the following copyright notice:
- *
- * Copyright 2000 ATI Technologies Inc., Markham, Ontario, and
- * VA Linux Systems Inc., Fremont, California.
- *
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation on the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial
- * portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NON-INFRINGEMENT. IN NO EVENT SHALL ATI, VA LINUX SYSTEMS AND/OR
- * THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- *
- * XFree86 driver authors:
- *
- * Kevin E. Martin
- * Rickard E. Faith
- * Alan Hourihane
- *
- */
-
-#define RADEON_VERSION "0.2.0"
-
-#include "fb.h"
-#include "i2c.h"
-#include "pci.h"
-#include "radeonfb.h"
-#include "edid.h"
-#include "ati_ids.h"
-#include "driver_mem.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "exceptions.h" /* for set_ipl() */
-
-// #define DEBUG
-#include "debug.h"
-
-extern void run_bios(struct radeonfb_info *rinfo);
-
-#define MAX_MAPPED_VRAM (2048 * 2048 * 4)
-#define MIN_MAPPED_VRAM (1024 * 768 * 4)
-
-#define CHIP_DEF(id, family, flags) \
-{ \
- PCI_VENDOR_ID_ATI, \
- id, \
- PCI_ANY_ID, \
- PCI_ANY_ID, \
- 0, \
- 0, \
- (flags) | (CHIP_FAMILY_##family) \
-}
-
-struct pci_device_id radeonfb_pci_table[] =
-{
- /* Mobility M6 */
- CHIP_DEF(PCI_CHIP_RADEON_LY, RV100, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RADEON_LZ, RV100, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- /* Radeon VE/7000 */
- CHIP_DEF(PCI_CHIP_RV100_QY, RV100, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV100_QZ, RV100, CHIP_HAS_CRTC2),
- /* Radeon IGP320M (U1) */
- CHIP_DEF(PCI_CHIP_RS100_4336, RS100, CHIP_HAS_CRTC2 | CHIP_IS_IGP | CHIP_IS_MOBILITY),
- /* Radeon IGP320 (A3) */
- CHIP_DEF(PCI_CHIP_RS100_4136, RS100, CHIP_HAS_CRTC2 | CHIP_IS_IGP),
- /* IGP330M/340M/350M (U2) */
- CHIP_DEF(PCI_CHIP_RS200_4337, RS200, CHIP_HAS_CRTC2 | CHIP_IS_IGP | CHIP_IS_MOBILITY),
- /* IGP330/340/350 (A4) */
- CHIP_DEF(PCI_CHIP_RS200_4137, RS200, CHIP_HAS_CRTC2 | CHIP_IS_IGP),
- /* Mobility 7000 IGP */
- CHIP_DEF(PCI_CHIP_RS250_4437, RS200, CHIP_HAS_CRTC2 | CHIP_IS_IGP | CHIP_IS_MOBILITY),
- /* 7000 IGP (A4+) */
- CHIP_DEF(PCI_CHIP_RS250_4237, RS200, CHIP_HAS_CRTC2 | CHIP_IS_IGP),
- /* 8500 AIW */
- CHIP_DEF(PCI_CHIP_R200_BB, R200, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R200_BC, R200, CHIP_HAS_CRTC2),
- /* 8700/8800 */
- CHIP_DEF(PCI_CHIP_R200_QH, R200, CHIP_HAS_CRTC2),
- /* 8500 */
- CHIP_DEF(PCI_CHIP_R200_QL, R200, CHIP_HAS_CRTC2),
- /* 9100 */
- CHIP_DEF(PCI_CHIP_R200_QM, R200, CHIP_HAS_CRTC2),
- /* Mobility M7 */
- CHIP_DEF(PCI_CHIP_RADEON_LW, RV200, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RADEON_LX, RV200, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- /* 7500 */
- CHIP_DEF(PCI_CHIP_RV200_QW, RV200, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV200_QX, RV200, CHIP_HAS_CRTC2),
- /* Mobility M9 */
- CHIP_DEF(PCI_CHIP_RV250_Ld, RV250, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV250_Le, RV250, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV250_Lf, RV250, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV250_Lg, RV250, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- /* 9000/Pro */
- CHIP_DEF(PCI_CHIP_RV250_If, RV250, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV250_Ig, RV250, CHIP_HAS_CRTC2),
- /* Mobility 9100 IGP (U3) */
- CHIP_DEF(PCI_CHIP_RS300_5835, RS300, CHIP_HAS_CRTC2 | CHIP_IS_IGP | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RS350_7835, RS300, CHIP_HAS_CRTC2 | CHIP_IS_IGP | CHIP_IS_MOBILITY),
- /* 9100 IGP (A5) */
- CHIP_DEF(PCI_CHIP_RS300_5834, RS300, CHIP_HAS_CRTC2 | CHIP_IS_IGP),
- CHIP_DEF(PCI_CHIP_RS350_7834, RS300, CHIP_HAS_CRTC2 | CHIP_IS_IGP),
- /* Mobility 9200 (M9+) */
- CHIP_DEF(PCI_CHIP_RV280_5C61, RV280, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV280_5C63, RV280, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- /* 9200 */
- CHIP_DEF(PCI_CHIP_RV280_5960, RV280, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV280_5961, RV280, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV280_5962, RV280, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV280_5964, RV280, CHIP_HAS_CRTC2),
- /* 9500 */
- CHIP_DEF(PCI_CHIP_R300_AD, R300, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R300_AE, R300, CHIP_HAS_CRTC2),
- /* 9600TX / FireGL Z1 */
- CHIP_DEF(PCI_CHIP_R300_AF, R300, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R300_AG, R300, CHIP_HAS_CRTC2),
- /* 9700/9500/Pro/FireGL X1 */
- CHIP_DEF(PCI_CHIP_R300_ND, R300, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R300_NE, R300, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R300_NF, R300, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R300_NG, R300, CHIP_HAS_CRTC2),
- /* Mobility M10/M11 */
- CHIP_DEF(PCI_CHIP_RV350_NP, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV350_NQ, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV350_NR, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV350_NS, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV350_NT, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV350_NV, RV350, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- /* 9600/FireGL T2 */
- CHIP_DEF(PCI_CHIP_RV350_AP, RV350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV350_AQ, RV350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV360_AR, RV350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV350_AS, RV350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV350_AT, RV350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV350_AV, RV350, CHIP_HAS_CRTC2),
- /* 9800/Pro/FileGL X2 */
- CHIP_DEF(PCI_CHIP_R350_AH, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_AI, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_AJ, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_AK, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_NH, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_NI, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R360_NJ, R350, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R350_NK, R350, CHIP_HAS_CRTC2),
- /* Newer stuff */
- CHIP_DEF(PCI_CHIP_RV380_3E50, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV380_3E54, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV380_3150, RV380, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV380_3154, RV380, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV370_5B60, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV370_5B62, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV370_5B64, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV370_5B65, RV380, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_RV370_5460, RV380, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_RV370_5464, RV380, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_R420_JH, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JI, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JJ, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JK, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JL, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JM, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R420_JN, R420, CHIP_HAS_CRTC2 | CHIP_IS_MOBILITY),
- CHIP_DEF(PCI_CHIP_R420_JP, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UH, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UI, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UJ, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UK, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UQ, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UR, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_UT, R420, CHIP_HAS_CRTC2),
- CHIP_DEF(PCI_CHIP_R423_5D57, R420, CHIP_HAS_CRTC2),
- /* Original Radeon/7200 */
- CHIP_DEF(PCI_CHIP_RADEON_QD, RADEON, 0),
- CHIP_DEF(PCI_CHIP_RADEON_QE, RADEON, 0),
- CHIP_DEF(PCI_CHIP_RADEON_QF, RADEON, 0),
- CHIP_DEF(PCI_CHIP_RADEON_QG, RADEON, 0),
- { 0, 0, 0, 0, 0, 0, 0 }
-};
-
-
-typedef struct
-{
- uint16_t reg;
- uint32_t val;
-} reg_val;
-
-
-/* these common regs are cleared before mode setting so they do not
- * interfere with anything
- */
-static reg_val common_regs[] =
-{
- { OVR_CLR, 0 },
- { OVR_WID_LEFT_RIGHT, 0 },
- { OVR_WID_TOP_BOTTOM, 0 },
- { OV0_SCALE_CNTL, 0 },
- { SUBPIC_CNTL, 0 },
- { VIPH_CONTROL, 0 },
- { I2C_CNTL_1, 0 },
- { GEN_INT_CNTL, 0 },
- { CAP0_TRIG_CNTL, 0 },
- { CAP1_TRIG_CNTL, 0 },
-};
-
-extern struct fb_info *info_fb;
-#define rinfo ((struct radeonfb_info *) info_fb->par)
-static uint32_t inreg(uint32_t addr)
-{
- return INREG(addr);
-}
-
-static void outreg(uint32_t addr, uint32_t val)
-{
- OUTREG(addr, val);
-}
-
-#undef rinfo
-#undef INREG
-#define INREG inreg
-#undef OUTREG
-#define OUTREG outreg
-
-void _OUTREGP(struct radeonfb_info *rinfo, uint32_t addr, uint32_t val, uint32_t mask)
-{
- uint32_t tmp;
- tmp = INREG(addr);
- tmp &= (mask);
- tmp |= (val);
- OUTREG(addr, tmp);
-}
-
-/*
- * Note about PLL register accesses:
- *
- * I have removed the spinlock on them on purpose. The driver now
- * expects that it will only manipulate the PLL registers in normal
- * task environment, where radeon_msleep() will be called, protected
- * by a semaphore (currently the console semaphore) so that no conflict
- * will happen on the PLL register index.
- *
- * With the latest changes to the VT layer, this is guaranteed for all
- * calls except the actual drawing/blits which aren't supposed to use
- * the PLL registers anyway
- *
- * This is very important for the workarounds to work properly. The only
- * possible exception to this rule is the call to unblank(), which may
- * be done at irq time if an oops is in progress.
- */
-void radeon_pll_errata_after_index(struct radeonfb_info *rinfo)
-{
- if (!(rinfo->errata & CHIP_ERRATA_PLL_DUMMYREADS))
- return;
- (void) INREG(CLOCK_CNTL_DATA);
- (void) INREG(CRTC_GEN_CNTL);
-}
-
-void radeon_pll_errata_after_data(struct radeonfb_info *rinfo)
-{
- if (rinfo->errata & CHIP_ERRATA_PLL_DELAY)
- {
- /* we can't deal with posted writes here ... */
- radeon_msleep(5);
- }
-
- if (rinfo->errata & CHIP_ERRATA_R300_CG)
- {
- uint32_t save, tmp;
- save = INREG(CLOCK_CNTL_INDEX);
- tmp = save & ~(0x3f | PLL_WR_EN);
- OUTREG(CLOCK_CNTL_INDEX, tmp);
- tmp = INREG(CLOCK_CNTL_DATA);
- OUTREG(CLOCK_CNTL_INDEX, save);
- }
-}
-
-uint32_t __INPLL(struct radeonfb_info *rinfo, uint32_t addr)
-{
- uint32_t data;
-
- OUTREG8(CLOCK_CNTL_INDEX, addr & 0x0000003f);
- radeon_pll_errata_after_index(rinfo);
- data = INREG(CLOCK_CNTL_DATA);
- radeon_pll_errata_after_data(rinfo);
-
- return data;
-}
-
-void __OUTPLL(struct radeonfb_info *rinfo, uint32_t index, uint32_t val)
-{
- OUTREG8(CLOCK_CNTL_INDEX, (index & 0x0000003f) | 0x00000080);
- radeon_pll_errata_after_index(rinfo);
- OUTREG(CLOCK_CNTL_DATA, val);
- radeon_pll_errata_after_data(rinfo);
-}
-
-void __OUTPLLP(struct radeonfb_info *rinfo, uint32_t index, uint32_t val, uint32_t mask)
-{
- uint32_t tmp;
-
- tmp = __INPLL(rinfo, index);
- tmp &= (mask);
- tmp |= (val);
- __OUTPLL(rinfo, index, tmp);
-}
-
-static __inline int32_t round_div(int32_t num, int32_t den)
-{
- return(num + (den / 2)) / den;
-}
-
-static __inline uint32_t read_vline_crnt(struct radeonfb_info *rinfo)
-{
- return (INREG(CRTC_VLINE_CRNT_VLINE) >> 16) & 0x3FF;
-}
-
-static int32_t radeon_map_ROM(struct radeonfb_info *rinfo)
-{
- uint16_t dptr;
- uint8_t rom_type;
-
- /*
- * If this is a primary card, there is a shadow copy of the
- * ROM somewhere in the first meg. We will just ignore the copy
- * and use the ROM directly.
- */
-
- /* Fix from ATI for problem with Radeon hardware not leaving ROM enabled */
-
- uint32_t temp;
-
- temp = inreg(MPP_TB_CONFIG);
-
- temp &= 0x00ffffffu;
- temp |= 0x04 << 24;
- OUTREG(MPP_TB_CONFIG, temp);
- temp = INREG(MPP_TB_CONFIG);
-
- if (rinfo->bios_seg == NULL)
- {
- err("no ROM found on ATI card\r\n");
- return -1;
- }
-
- /* Very simple test to make sure it appeared */
- if (BIOS_IN16(0) != 0xaa55)
- {
- err("Invalid ROM signature 0x%04x instead of 0x%04x found\r\n", BIOS_IN16(0), 0xaa55);
- goto failed;
- }
-
- /* Look for the PCI data to check the ROM type */
- dptr = BIOS_IN16(0x18);
-
- /*
- * Check the PCI data signature. If it's wrong, we still assume a normal x86 ROM
- * for now, until I've verified this works everywhere. The goal here is more
- * to phase out Open Firmware images.
- *
- * Currently, we only look at the first PCI data, we could iteratre and deal with
- * them all, and we should use fb_bios_start relative to start of image and not
- * relative start of ROM, but so far, I never found a dual-image ATI card
- *
- * typedef struct
- * {
- * u32 signature; + 0x00
- * u16 vendor; + 0x04
- * u16 device; + 0x06
- * u16 reserved_1; + 0x08
- * u16 dlen; + 0x0a
- * u8 drevision; + 0x0c
- * u8 class_hi; + 0x0d
- * u16 class_lo; + 0x0e
- * u16 ilen; + 0x10
- * u16 irevision; + 0x12
- * u8 type; + 0x14
- * u8 indicator; + 0x15
- * u16 reserved_2; + 0x16
- * } pci_data_t;
- */
-
- if (BIOS_IN32(dptr) != (('R' << 24) | ('I' << 16) | ('C' << 8) | 'P'))
- {
- err("PCI DATA signature in ROM incorrect: %p\r\n", BIOS_IN32(dptr));
- goto anyway;
- }
-
- rom_type = BIOS_IN8(dptr + 0x14);
- switch(rom_type)
- {
- case 0:
- inf("Found Intel x86 BIOS ROM Image\r\n");
- break;
- case 1:
- inf("Found Open Firmware ROM Image\r\n");
- goto failed;
- case 2:
- inf("Found HP PA-RISC ROM Image\r\n");
- goto failed;
- default:
- inf("Found unknown type %d ROM Image\r\n", rom_type);
- goto failed;
- }
-
-anyway:
- /* Locate the flat panel infos, do some sanity checking !!! */
- rinfo->fp_bios_start = BIOS_IN16(0x48);
- dbg("BIOS start offset: %p\r\n", BIOS_IN16(0x48));
-
- /* Save BIOS PLL informations */
-
- uint16_t pll_info_block = BIOS_IN16(rinfo->fp_bios_start + 0x30);
-
- dbg("BIOS PLL info block offset: %p\r\n", BIOS_IN16(rinfo->fp_bios_start + 0x30));
- rinfo->bios_pll.sclk = BIOS_IN16(pll_info_block + 0x08);
- rinfo->bios_pll.mclk = BIOS_IN16(pll_info_block + 0x0a);
- rinfo->bios_pll.ref_clk = BIOS_IN16(pll_info_block + 0x0e);
- rinfo->bios_pll.ref_div = BIOS_IN16(pll_info_block + 0x10);
- rinfo->bios_pll.ppll_min = BIOS_IN32(pll_info_block + 0x12);
- rinfo->bios_pll.ppll_max = BIOS_IN32(pll_info_block + 0x16);
-
- return 0;
-
-failed:
- rinfo->bios_seg = NULL;
- return -1; //-ENXIO;
-}
-
-/*
- * Read PLL infos from chip registers
- */
-static int32_t radeon_probe_pll_params(struct radeonfb_info *rinfo)
-{
- uint8_t ppll_div_sel;
- uint32_t Ns;
- uint32_t Nm;
- uint32_t M;
- uint32_t sclk;
- uint32_t mclk;
- uint32_t tmp;
- uint32_t ref_div;
- int32_t hTotal;
- int32_t vTotal;
- int32_t num;
- int32_t denom;
- int32_t m;
- int32_t n;
- double hz;
- double vclk;
- int32_t xtal;
- uint32_t start_tv;
- uint32_t stop_tv;
- int32_t timeout = 0;
- int32_t ipl;
- uint32_t vline;
-
- /*
- * Ugh, we cut interrupts, bad bad bad, but we want some precision
- * here, so... --BenH
- */
- ipl = set_ipl(0);
-
- dbg("\r\n");
-
- /* Flush PCI buffers ? */
- tmp = INREG16(DEVICE_ID);
-
- start_tv = get_timer();
- while ((vline = read_vline_crnt(rinfo)) != 0)
- {
- if ((start_tv - get_timer()) > US_TO_TIMER(10000000UL)) /* 10 sec */
- {
- timeout = 1;
- dbg("timeout\r\n");
- break;
- }
- }
-
- if (!timeout)
- {
- start_tv = get_timer();
- while (read_vline_crnt(rinfo) == 0)
- {
- if ((start_tv - get_timer()) > US_TO_TIMER(1000000UL)) /* 1 sec */
- {
- timeout = 1;
- dbg("timeout2\r\n");
- break;
- }
- }
-
- if (!timeout)
- {
- while (read_vline_crnt(rinfo) != 0)
- {
- if ((start_tv - get_timer()) > US_TO_TIMER(10000000UL)) /* 10 sec */
- {
- timeout = 1;
- dbg("timeout3\r\n");
- break;
- }
- }
- }
- }
- stop_tv = get_timer();
-
- set_ipl(ipl);
-
- hz = US_TO_TIMER(1000000.0) / (double)(start_tv - stop_tv);
- dbg("hz %d\r\n", (int32_t) hz);
-
- // OUTREG(CRTC_H_TOTAL_DISP, 640 / 8 - 1);
- // OUTREG(CRTC_V_TOTAL_DISP, 480 - 1);
- dbg("h_total=%d vtotal=%d\r\n", INREG(CRTC_H_TOTAL_DISP), INREG(CRTC_V_TOTAL_DISP));
-
- hTotal = ((INREG(CRTC_H_TOTAL_DISP) & 0x1ff) + 1) * 8;
- vTotal = ((INREG(CRTC_V_TOTAL_DISP) & 0x3ff) + 1);
- dbg("hTotal=%d\r\n", hTotal);
- dbg("vTotal=%d\r\n", vTotal);
-
- vclk = (double) hTotal * (double) vTotal * hz;
- dbg("vclk=%d\r\n", (int32_t) vclk);
-
- switch ((INPLL(PPLL_REF_DIV) & 0x30000) >> 16)
- {
- case 1:
- n = ((INPLL(M_SPLL_REF_FB_DIV) >> 16) & 0xff);
- m = (INPLL(M_SPLL_REF_FB_DIV) & 0xff);
- num = 2 * n;
- denom = 2 * m;
- break;
-
- case 2:
- n = ((INPLL(M_SPLL_REF_FB_DIV) >> 8) & 0xff);
- m = (INPLL(M_SPLL_REF_FB_DIV) & 0xff);
- num = 2 * n;
- denom = 2 * m;
- break;
-
- case 0:
- default:
- num = 1;
- denom = 1;
- break;
- }
-
- ppll_div_sel = INREG8(CLOCK_CNTL_INDEX + 1) & 0x3;
- radeon_pll_errata_after_index(rinfo);
-
- n = (INPLL(PPLL_DIV_0 + ppll_div_sel) & 0x7ff);
- m = (INPLL(PPLL_REF_DIV) & 0x3ff);
-
- num *= n;
- denom *= m;
-
- switch((INPLL(PPLL_DIV_0 + ppll_div_sel) >> 16) & 0x7)
- {
- case 1:
- denom *= 2;
- break;
-
- case 2:
- denom *= 4;
- break;
-
- case 3:
- denom *= 8;
- break;
-
- case 4:
- denom *= 3;
- break;
-
- case 6:
- denom *= 6;
- break;
-
- case 7:
- denom *= 12;
- break;
- }
- vclk *= (double) denom;
- vclk /= (double) (1000 * num);
- xtal = (int32_t) vclk;
-
- if ((xtal > 26900) && (xtal < 27100))
- xtal = 2700; /* 27 MHz */
- else if ((xtal > 14200) && (xtal < 14400))
- xtal = 1432;
- else if ((xtal > 29400) && (xtal < 29600))
- xtal = 2950;
- else
- {
- err("xtal calculation failed: %d\r\n", xtal);
- return -1; /* error */
- }
-
- tmp = INPLL(M_SPLL_REF_FB_DIV);
- ref_div = INPLL(PPLL_REF_DIV) & 0x3ff;
-
- Ns = (tmp & 0xff0000) >> 16;
- Nm = (tmp & 0xff00) >> 8;
- M = (tmp & 0xff);
-
- sclk = round_div((2 * Ns * xtal), (2 * M));
- mclk = round_div((2 * Nm * xtal), (2 * M));
-
- /* we're done, hopefully these are sane values */
- rinfo->pll.ref_clk = xtal;
- rinfo->pll.ref_div = ref_div;
- rinfo->pll.sclk = sclk;
- rinfo->pll.mclk = mclk;
-
- return 0;
-}
-
-/*
- * Retreive PLL infos by register probing...
- */
-static void radeon_get_pllinfo(struct radeonfb_info *rinfo)
-{
- /*
- * In the case nothing works, these are defaults; they are mostly
- * incomplete, however. It does provide ppll_max and _min values
- * even for most other methods, however.
- */
- dbg("\r\n");
-
- switch(rinfo->chipset)
- {
- case PCI_DEVICE_ID_ATI_RADEON_QW:
- case PCI_DEVICE_ID_ATI_RADEON_QX:
- rinfo->pll.ppll_max = 35000;
- rinfo->pll.ppll_min = 12000;
- rinfo->pll.mclk = 23000;
- rinfo->pll.sclk = 23000;
- rinfo->pll.ref_clk = 2700;
- break;
-
- case PCI_DEVICE_ID_ATI_RADEON_QL:
- case PCI_DEVICE_ID_ATI_RADEON_QN:
- case PCI_DEVICE_ID_ATI_RADEON_QO:
- case PCI_DEVICE_ID_ATI_RADEON_Ql:
- case PCI_DEVICE_ID_ATI_RADEON_BB:
- rinfo->pll.ppll_max = 35000;
- rinfo->pll.ppll_min = 12000;
- rinfo->pll.mclk = 27500;
- rinfo->pll.sclk = 27500;
- rinfo->pll.ref_clk = 2700;
- break;
-
- case PCI_DEVICE_ID_ATI_RADEON_Id:
- case PCI_DEVICE_ID_ATI_RADEON_Ie:
- case PCI_DEVICE_ID_ATI_RADEON_If:
- case PCI_DEVICE_ID_ATI_RADEON_Ig:
- rinfo->pll.ppll_max = 35000;
- rinfo->pll.ppll_min = 12000;
- rinfo->pll.mclk = 25000;
- rinfo->pll.sclk = 25000;
- rinfo->pll.ref_clk = 2700;
- break;
-
- case PCI_DEVICE_ID_ATI_RADEON_ND:
- case PCI_DEVICE_ID_ATI_RADEON_NE:
- case PCI_DEVICE_ID_ATI_RADEON_NF:
- case PCI_DEVICE_ID_ATI_RADEON_NG:
- rinfo->pll.ppll_max = 40000;
- rinfo->pll.ppll_min = 20000;
- rinfo->pll.mclk = 27000;
- rinfo->pll.sclk = 27000;
- rinfo->pll.ref_clk = 2700;
- break;
-
- case PCI_DEVICE_ID_ATI_RADEON_QD:
- case PCI_DEVICE_ID_ATI_RADEON_QE:
- case PCI_DEVICE_ID_ATI_RADEON_QF:
- case PCI_DEVICE_ID_ATI_RADEON_QG:
- default:
- rinfo->pll.ppll_max = 35000;
- rinfo->pll.ppll_min = 12000;
- rinfo->pll.mclk = 16600;
- rinfo->pll.sclk = 16600;
- rinfo->pll.ref_clk = 2700;
- break;
- }
- rinfo->pll.ref_div = INPLL(PPLL_REF_DIV) & PPLL_REF_DIV_MASK;
-
- /*
- * Check out if we have an X86 which gave us some PLL informations
- * and if yes, retreive them
- */
- if (!force_measure_pll && (rinfo->bios_seg != NULL))
- {
- rinfo->pll.sclk = rinfo->bios_pll.sclk;
- rinfo->pll.mclk = rinfo->bios_pll.mclk;
- rinfo->pll.ref_clk = rinfo->bios_pll.ref_clk;
- rinfo->pll.ref_div = rinfo->bios_pll.ref_div;
- rinfo->pll.ppll_min = rinfo->bios_pll.ppll_min;
- rinfo->pll.ppll_max = rinfo->bios_pll.ppll_max;
- inf("Retreived PLL infos from BIOS\r\n");
-
- goto found;
- }
-
- /*
- * We didn't get PLL parameters from either OF or BIOS, we try to
- * probe them
- */
- if (radeon_probe_pll_params(rinfo) == 0)
- {
- inf("Retreived PLL infos from registers\r\n");
- goto found;
- }
-
- /*
- * Fall back to already-set defaults...
- */
- inf("Used default PLL infos\r\n");
-
-found:
- /*
- * Some methods fail to retreive SCLK and MCLK values, we apply default
- * settings in this case (200Mhz). If that really happne often, we could
- * fetch from registers instead...
- */
- if (rinfo->pll.mclk == 0)
- rinfo->pll.mclk = 20000;
- if (rinfo->pll.sclk == 0)
- rinfo->pll.sclk = 20000;
-
- dbg("Reference=%d MHz (RefDiv=0x%x) Memory=%d MHz\r\n",
- rinfo->pll.ref_clk / 100, rinfo->pll.ref_div, rinfo->pll.mclk / 100);
- dbg("System=%d MHz PLL min %d, max %d\r\n",
- rinfo->pll.sclk / 100, rinfo->pll.ppll_min, rinfo->pll.ppll_max);
-}
-
-static int32_t var_to_depth(const struct fb_var_screeninfo *var)
-{
- if (var->bits_per_pixel != 16)
- return var->bits_per_pixel;
-
- return(var->green.length == 5) ? 15 : 16;
-}
-
-int32_t radeonfb_check_var(struct fb_var_screeninfo *var, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- struct fb_var_screeninfo v;
- int32_t nom, den;
- uint32_t pitch;
-
- dbg("\r\n");
-
- /* clocks over 135 MHz have heat isues with DVI on RV100 */
- if ((rinfo->mon1_type == MT_DFP) && (rinfo->family == CHIP_FAMILY_RV100) && ((100000000 / var->pixclock) > 13500))
- {
- err("mode %d x %d x %d", var->xres, var->yres, var->bits_per_pixel);
- err("rejected, RV100 DVI clock over 135 MHz\r\n");
-
- return -1; //-EINVAL;
- }
-
- if (radeon_match_mode(rinfo, &v, var))
- {
- err("invalid mode\r\n");
- return -1; //-EINVAL;
- }
-
- switch (v.bits_per_pixel)
- {
- case 0 ... 8:
- v.bits_per_pixel = 8;
- break;
-
- case 9 ... 16:
- v.bits_per_pixel = 16;
- break;
-
-#if 0 /* Doesn't seem to work */
- case 17 ... 24:
- v.bits_per_pixel = 24;
- break;
-#endif
- case 25 ... 32:
- v.bits_per_pixel = 32;
- break;
-
- default:
- err("invalid bits per pixel\r\n");
- return -1; //-EINVAL;
- }
-
- switch (var_to_depth(&v))
- {
- case 8:
- nom = den = 1;
- v.red.offset = v.green.offset = v.blue.offset = 0;
- v.red.length = v.green.length = v.blue.length = 8;
- v.transp.offset = v.transp.length = 0;
- break;
-
- case 15:
- nom = 2;
- den = 1;
- v.red.offset = 10;
- v.green.offset = 5;
- v.blue.offset = 0;
- v.red.length = v.green.length = v.blue.length = 5;
- v.transp.offset = v.transp.length = 0;
- break;
-
- case 16:
- nom = 2;
- den = 1;
- v.red.offset = 11;
- v.green.offset = 5;
- v.blue.offset = 0;
- v.red.length = 5;
- v.green.length = 6;
- v.blue.length = 5;
- v.transp.offset = v.transp.length = 0;
- break;
-
- case 24:
- nom = 4;
- den = 1;
- v.red.offset = 16;
- v.green.offset = 8;
- v.blue.offset = 0;
- v.red.length = v.blue.length = v.green.length = 8;
- v.transp.offset = v.transp.length = 0;
- break;
-
- case 32:
- nom = 4;
- den = 1;
- v.red.offset = 16;
- v.green.offset = 8;
- v.blue.offset = 0;
- v.red.length = v.blue.length = v.green.length = 8;
- v.transp.offset = 24;
- v.transp.length = 8;
- break;
-
- default:
- err("radeonfb: mode %d x %d x %d rejected, color depth invalid\r\n ",
- var->xres, var->yres, var->bits_per_pixel);
- return -1; //-EINVAL;
- }
-
- if (v.yres_virtual < v.yres)
- v.yres_virtual = v.yres;
- if (v.xres_virtual < v.xres)
- v.xres_virtual = v.xres;
-
- /*
- * XXX I'm adjusting xres_virtual to the pitch, that may help XFree
- * with some panels, though I don't quite like this solution
- */
- pitch = ((v.xres_virtual * ((v.bits_per_pixel + 1) / 8) + 0x3f) & ~(0x3f)) >> 6;
- v.xres_virtual = (pitch << 6) / ((v.bits_per_pixel + 1) / 8);
-
- if (((v.xres_virtual * v.yres_virtual * nom) / den) > info->screen_size)
- {
- err("mode %d x %d rejected (screen size too small)\r\n", v.xres_virtual, v.yres_virtual);
- return -1; //-EINVAL;
- }
-
- if (v.xres_virtual < v.xres)
- v.xres = v.xres_virtual;
-
- if (v.xoffset < 0)
- v.xoffset = 0;
-
- if (v.yoffset < 0)
- v.yoffset = 0;
-
- if (v.xoffset > v.xres_virtual - v.xres)
- v.xoffset = v.xres_virtual - v.xres - 1;
-
- if (v.yoffset > v.yres_virtual - v.yres)
- v.yoffset = v.yres_virtual - v.yres - 1;
-
- v.red.msb_right = v.green.msb_right = v.blue.msb_right = 0;
- v.transp.offset = v.transp.length = v.transp.msb_right = 0;
-
- inf("using mode %d x %d \r\n", v.xres, v.yres);
-
- memcpy(var, &v, sizeof(v));
-
- return 0;
-}
-
-int32_t radeonfb_pan_display(struct fb_var_screeninfo *var, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- dbg("\r\n");
- if ((var->xoffset + var->xres) > var->xres_virtual)
- {
- dbg("xoffset = %d, xres = %d, xres_virtual=%d\r\n",
- var->xoffset, var->xres, var->xres_virtual);
- return -1; //-EINVAL;
- }
-
- if (((var->yoffset * var->xres_virtual) + var->xoffset) >=
- (rinfo->mapped_vram - (var->yres * var->xres * (var->bits_per_pixel / 8))))
- {
- dbg("yoffset=%d, xres_virtual=%d, mapped_vram=%ld,\r\n",
- "yres=%d, xres=%d, bpp=%d\r\n",
- var->yoffset, var->xres_virtual, var->xoffset, rinfo->mapped_vram,
- var->yres, var->xres, var->bits_per_pixel);
- return -1; //-EINVAL;
- }
-
- if (rinfo->asleep)
- return 0;
-
- radeon_wait_for_fifo(rinfo, 2);
- rinfo->fb_offset = ((var->yoffset * var->xres_virtual + var->xoffset) * var->bits_per_pixel / 8) & ~7;
- rinfo->dst_pitch_offset = (rinfo->pitch << 22) | ((rinfo->fb_local_base + rinfo->fb_offset) >> 10);
- OUTREG(CRTC_OFFSET, rinfo->fb_offset);
-
- return 0;
-}
-
-short mirror;
-
-int32_t radeonfb_ioctl(uint32_t cmd, uint32_t arg, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- uint32_t tmp;
- uint32_t value = 0;
-
- switch(cmd)
- {
- /*
- * TODO: set mirror accordingly for non-Mobility chipsets with 2 CRTC's
- * and do something better using 2nd CRTC instead of just hackish
- * routing to second output
- */
- case FBIO_RADEON_SET_MIRROR:
- if (!rinfo->is_mobility)
- return -1; //-EINVAL;
- radeon_wait_for_fifo(rinfo, 2);
-
- if (value & 0x01)
- {
- tmp = INREG(LVDS_GEN_CNTL);
- tmp |= (LVDS_ON | LVDS_BLON);
- }
- else
- {
- tmp = INREG(LVDS_GEN_CNTL);
- tmp &= ~(LVDS_ON | LVDS_BLON);
- }
- OUTREG(LVDS_GEN_CNTL, tmp);
-
- if (value & 0x02)
- {
- tmp = INREG(CRTC_EXT_CNTL);
- tmp |= CRTC_CRT_ON;
- mirror = 1;
- }
- else
- {
- tmp = INREG(CRTC_EXT_CNTL);
- tmp &= ~CRTC_CRT_ON;
- mirror = 0;
- }
- OUTREG(CRTC_EXT_CNTL, tmp);
- return 0;
-
- case FBIO_RADEON_GET_MIRROR:
- if (!rinfo->is_mobility)
- return -1; //-EINVAL;
- tmp = INREG(LVDS_GEN_CNTL);
- if ((LVDS_ON | LVDS_BLON) & tmp)
- value |= 0x01;
- tmp = INREG(CRTC_EXT_CNTL);
- if (CRTC_CRT_ON & tmp)
- value |= 0x02;
- return 0;
-
- default:
- return -1; //-EINVAL;
- }
- return -1; //-EINVAL;
-}
-
-int32_t radeon_screen_blank(struct radeonfb_info *rinfo, int32_t blank, int32_t mode_switch)
-{
- uint32_t val;
- uint32_t tmp_pix_clks;
- int32_t unblank = 0;
-
- if (rinfo->lock_blank)
- return 0;
-
- dbg("radeonfb: radeon_screen_blank\r\n");
- radeon_engine_idle();
- val = INREG(CRTC_EXT_CNTL);
- val &= ~(CRTC_DISPLAY_DIS | CRTC_HSYNC_DIS | CRTC_VSYNC_DIS);
-
- switch(blank)
- {
- case FB_BLANK_VSYNC_SUSPEND:
- val |= (CRTC_DISPLAY_DIS | CRTC_VSYNC_DIS);
- break;
-
- case FB_BLANK_HSYNC_SUSPEND:
- val |= (CRTC_DISPLAY_DIS | CRTC_HSYNC_DIS);
- break;
-
- case FB_BLANK_POWERDOWN:
- val |= (CRTC_DISPLAY_DIS | CRTC_VSYNC_DIS | CRTC_HSYNC_DIS);
- break;
-
- case FB_BLANK_NORMAL:
- val |= CRTC_DISPLAY_DIS;
- break;
-
- case FB_BLANK_UNBLANK:
- default:
- unblank = 1;
- break;
- }
- OUTREG(CRTC_EXT_CNTL, val);
-
- switch(rinfo->mon1_type)
- {
- case MT_DFP:
- if (unblank)
- OUTREGP(FP_GEN_CNTL, (FP_FPON | FP_TMDS_EN), ~(FP_FPON | FP_TMDS_EN));
- else
- {
- if (mode_switch || blank == FB_BLANK_NORMAL)
- break;
- OUTREGP(FP_GEN_CNTL, 0, ~(FP_FPON | FP_TMDS_EN));
- }
- break;
-
- case MT_LCD:
- rinfo->lvds_timer = 0;
- val = INREG(LVDS_GEN_CNTL);
- if (unblank)
- {
- uint32_t target_val = (val & ~LVDS_DISPLAY_DIS) | LVDS_BLON | LVDS_ON
- | LVDS_EN | (rinfo->init_state.lvds_gen_cntl & (LVDS_DIGON | LVDS_BL_MOD_EN));
- if ((val ^ target_val) == LVDS_DISPLAY_DIS)
- OUTREG(LVDS_GEN_CNTL, target_val);
- else if ((val ^ target_val) != 0)
- {
- OUTREG(LVDS_GEN_CNTL, target_val & ~(LVDS_ON | LVDS_BL_MOD_EN));
- rinfo->init_state.lvds_gen_cntl &= ~LVDS_STATE_MASK;
- rinfo->init_state.lvds_gen_cntl |= target_val & LVDS_STATE_MASK;
- if (mode_switch)
- {
- radeon_msleep(rinfo->panel_info.pwr_delay);
- OUTREG(LVDS_GEN_CNTL, target_val);
- }
- else
- {
- rinfo->pending_lvds_gen_cntl = target_val;
- rinfo->lvds_timer = (int32_t)rinfo->panel_info.pwr_delay;
- }
- }
- }
- else
- {
- val |= LVDS_DISPLAY_DIS;
- OUTREG(LVDS_GEN_CNTL, val);
- /* We don't do a full switch-off on a simple mode switch */
- if (mode_switch || blank == FB_BLANK_NORMAL)
- break;
-
- /* Asic bug, when turning off LVDS_ON, we have to make sure
- * RADEON_PIXCLK_LVDS_ALWAYS_ON bit is off
- */
- tmp_pix_clks = INPLL(PIXCLKS_CNTL);
- if (rinfo->is_mobility || rinfo->is_IGP)
- OUTPLLP(PIXCLKS_CNTL, 0, ~PIXCLK_LVDS_ALWAYS_ONb);
-
- val &= ~(LVDS_BL_MOD_EN);
- OUTREG(LVDS_GEN_CNTL, val);
-
- wait(100);
-
- val &= ~(LVDS_ON | LVDS_EN);
- OUTREG(LVDS_GEN_CNTL, val);
- val &= ~LVDS_DIGON;
- rinfo->pending_lvds_gen_cntl = val;
- rinfo->lvds_timer = (int32_t)rinfo->panel_info.pwr_delay;
- rinfo->init_state.lvds_gen_cntl &= ~LVDS_STATE_MASK;
- rinfo->init_state.lvds_gen_cntl |= val & LVDS_STATE_MASK;
-
- if (rinfo->is_mobility || rinfo->is_IGP)
- OUTPLL(PIXCLKS_CNTL, tmp_pix_clks);
- }
- break;
- case MT_CRT:
- // todo: powerdown DAC
- default:
- break;
- }
- /* let fbcon do a soft blank for us */
- return(blank == FB_BLANK_NORMAL) ? -1 /* -EINVAL */ : 0;
-}
-
-int32_t radeonfb_blank(int32_t blank, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
-
- if (rinfo->asleep)
- return 0;
-
- return radeon_screen_blank(rinfo, blank, 0);
-}
-
-static int32_t radeon_setcolreg(uint32_t regno, uint32_t red, uint32_t green,
- uint32_t blue, uint32_t transp, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- uint32_t pindex;
-
- if (regno > 255)
- return 1;
-
- red >>= 8;
- green >>= 8;
- blue >>= 8;
-
- rinfo->palette[regno].red = red;
- rinfo->palette[regno].green = green;
- rinfo->palette[regno].blue = blue;
-
- /* default */
- pindex = regno;
- if (!rinfo->asleep)
- {
- radeon_wait_for_fifo(rinfo, 9);
- if (rinfo->bpp == 16)
- {
- pindex = regno * 8;
- if (rinfo->depth == 16 && regno > 63)
- return 1;
- if (rinfo->depth == 15 && regno > 31)
- return 1;
-
- /*
- * For 565, the green component is mixed one order
- * below
- */
- if (rinfo->depth == 16)
- {
- OUTREG(PALETTE_INDEX, pindex>>1);
- OUTREG(PALETTE_DATA,(rinfo->palette[regno>>1].red << 16)
- | (green << 8) | (rinfo->palette[regno>>1].blue));
- green = rinfo->palette[regno<<1].green;
- }
- }
- if (rinfo->depth != 16 || regno < 32)
- {
- OUTREG(PALETTE_INDEX, pindex);
- OUTREG(PALETTE_DATA, (red << 16) | (green << 8) | blue);
- }
- }
- return 0;
-}
-
-int32_t radeonfb_setcolreg(uint32_t regno, uint32_t red, uint32_t green,
- uint32_t blue, uint32_t transp, struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- uint32_t dac_cntl2, vclk_cntl = 0;
- int32_t rc;
-
- if (!rinfo->asleep)
- {
- if (rinfo->is_mobility)
- {
- vclk_cntl = INPLL(VCLK_ECP_CNTL);
- OUTPLL(VCLK_ECP_CNTL, vclk_cntl & ~PIXCLK_DAC_ALWAYS_ONb);
- }
-
- /* Make sure we are on first palette */
- if (rinfo->has_CRTC2)
- {
- dac_cntl2 = INREG(DAC_CNTL2);
- dac_cntl2 &= ~DAC2_PALETTE_ACCESS_CNTL;
- OUTREG(DAC_CNTL2, dac_cntl2);
- }
- }
- rc = radeon_setcolreg(regno, red, green, blue, transp, info);
- if (!rinfo->asleep && rinfo->is_mobility)
- OUTPLL(VCLK_ECP_CNTL, vclk_cntl);
-
- return rc;
-}
-
-static void radeon_save_state(struct radeonfb_info *rinfo, struct radeon_regs *save)
-{
- /* CRTC regs */
- save->crtc_gen_cntl = INREG(CRTC_GEN_CNTL);
- save->crtc_ext_cntl = INREG(CRTC_EXT_CNTL);
- save->crtc_more_cntl = INREG(CRTC_MORE_CNTL);
- save->dac_cntl = INREG(DAC_CNTL);
- save->crtc_h_total_disp = INREG(CRTC_H_TOTAL_DISP);
- save->crtc_h_sync_strt_wid = INREG(CRTC_H_SYNC_STRT_WID);
- save->crtc_v_total_disp = INREG(CRTC_V_TOTAL_DISP);
- save->crtc_v_sync_strt_wid = INREG(CRTC_V_SYNC_STRT_WID);
- save->crtc_pitch = INREG(CRTC_PITCH);
- save->surface_cntl = INREG(SURFACE_CNTL);
-
- /* FP regs */
- save->fp_crtc_h_total_disp = INREG(FP_CRTC_H_TOTAL_DISP);
- save->fp_crtc_v_total_disp = INREG(FP_CRTC_V_TOTAL_DISP);
- save->fp_gen_cntl = INREG(FP_GEN_CNTL);
- save->fp_h_sync_strt_wid = INREG(FP_H_SYNC_STRT_WID);
- save->fp_horz_stretch = INREG(FP_HORZ_STRETCH);
- save->fp_v_sync_strt_wid = INREG(FP_V_SYNC_STRT_WID);
- save->fp_vert_stretch = INREG(FP_VERT_STRETCH);
- save->lvds_gen_cntl = INREG(LVDS_GEN_CNTL);
- save->lvds_pll_cntl = INREG(LVDS_PLL_CNTL);
- save->tmds_crc = INREG(TMDS_CRC);
- save->tmds_transmitter_cntl = INREG(TMDS_TRANSMITTER_CNTL);
- save->vclk_ecp_cntl = INPLL(VCLK_ECP_CNTL);
- /* PLL regs */
-
- save->clk_cntl_index = INREG(CLOCK_CNTL_INDEX) & ~0x3f;
- radeon_pll_errata_after_index(rinfo);
- save->ppll_div_3 = INPLL(PPLL_DIV_3);
- save->ppll_ref_div = INPLL(PPLL_REF_DIV);
-}
-
-static void radeon_write_pll_regs(struct radeonfb_info *rinfo, struct radeon_regs *mode)
-{
- int32_t i;
-
- dbg("\r\n");
- radeon_wait_for_fifo(rinfo, 20);
-
-#if 0
- /* Workaround from XFree */
- if (rinfo->is_mobility)
- {
- /* A temporal workaround for the occational blanking on certain laptop
- * panels. This appears to related to the PLL divider registers
- * (fail to lock?). It occurs even when all dividers are the same
- * with their old settings. In this case we really don't need to
- * fiddle with PLL registers. By doing this we can avoid the blanking
- * problem with some panels.
- */
- if ((mode->ppll_ref_div == (INPLL(PPLL_REF_DIV) & PPLL_REF_DIV_MASK))
- && (mode->ppll_div_3 == (INPLL(PPLL_DIV_3) & (PPLL_POST3_DIV_MASK | PPLL_FB3_DIV_MASK))))
- {
- /* We still have to force a switch to selected PPLL div thanks to
- * an XFree86 driver bug which will switch it away in some cases
- * even when using UseFDev */
- OUTREGP(CLOCK_CNTL_INDEX,
- mode->clk_cntl_index & PPLL_DIV_SEL_MASK,
- ~PPLL_DIV_SEL_MASK);
- radeon_pll_errata_after_index(rinfo);
- radeon_pll_errata_after_data(rinfo);
- return;
- }
- }
-#endif
-
- /* Swich VCKL clock input to CPUCLK so it stays fed while PPLL updates*/
- OUTPLLP(VCLK_ECP_CNTL, VCLK_SRC_SEL_CPUCLK, ~VCLK_SRC_SEL_MASK);
-
- /* Reset PPLL & enable atomic update */
- OUTPLLP(PPLL_CNTL, PPLL_RESET | PPLL_ATOMIC_UPDATE_EN | PPLL_VGA_ATOMIC_UPDATE_EN,
- ~(PPLL_RESET | PPLL_ATOMIC_UPDATE_EN | PPLL_VGA_ATOMIC_UPDATE_EN));
-
- /* Switch to selected PPLL divider */
- OUTREGP(CLOCK_CNTL_INDEX, mode->clk_cntl_index & PPLL_DIV_SEL_MASK, ~PPLL_DIV_SEL_MASK);
- radeon_pll_errata_after_index(rinfo);
- radeon_pll_errata_after_data(rinfo);
-
- /* Set PPLL ref. div */
- if (rinfo->family == CHIP_FAMILY_R300 || rinfo->family == CHIP_FAMILY_RS300
- || rinfo->family == CHIP_FAMILY_R350 || rinfo->family == CHIP_FAMILY_RV350)
- {
- if (mode->ppll_ref_div & R300_PPLL_REF_DIV_ACC_MASK)
- {
- /*
- * When restoring console mode, use saved PPLL_REF_DIV
- * setting.
- */
- OUTPLLP(PPLL_REF_DIV, mode->ppll_ref_div, 0);
- }
- else
- {
- /* R300 uses ref_div_acc field as real ref divider */
- OUTPLLP(PPLL_REF_DIV,(mode->ppll_ref_div << R300_PPLL_REF_DIV_ACC_SHIFT),~R300_PPLL_REF_DIV_ACC_MASK);
- }
- }
- else
- OUTPLLP(PPLL_REF_DIV, mode->ppll_ref_div, ~PPLL_REF_DIV_MASK);
-
- /* Set PPLL divider 3 & post divider*/
- OUTPLLP(PPLL_DIV_3, mode->ppll_div_3, ~PPLL_FB3_DIV_MASK);
- OUTPLLP(PPLL_DIV_3, mode->ppll_div_3, ~PPLL_POST3_DIV_MASK);
-
- /* Write update */
- while (INPLL(PPLL_REF_DIV) & PPLL_ATOMIC_UPDATE_R);
- OUTPLLP(PPLL_REF_DIV, PPLL_ATOMIC_UPDATE_W, ~PPLL_ATOMIC_UPDATE_W);
-
- /* Wait read update complete */
- /* FIXME: Certain revisions of R300 can't recover here. Not sure of
- the cause yet, but this workaround will mask the problem for now.
- Other chips usually will pass at the very first test, so the
- workaround shouldn't have any effect on them. */
-
- for (i = 0; (i < 10000 && INPLL(PPLL_REF_DIV) & PPLL_ATOMIC_UPDATE_R); i++);
- OUTPLL(HTOTAL_CNTL, 0);
-
- /* Clear reset & atomic update */
- OUTPLLP(PPLL_CNTL, 0, ~(PPLL_RESET | PPLL_SLEEP | PPLL_ATOMIC_UPDATE_EN | PPLL_VGA_ATOMIC_UPDATE_EN));
-
- /* We may want some locking ... oh well */
- radeon_msleep(5);
-
- /* Switch back VCLK source to PPLL */
- OUTPLLP(VCLK_ECP_CNTL, VCLK_SRC_SEL_PPLLCLK, ~VCLK_SRC_SEL_MASK);
-}
-
-static void radeon_wait_vbl(struct fb_info *info)
-{
- uint32_t cnt = INREG(CRTC_CRNT_FRAME);
-
- while (cnt == INREG(CRTC_CRNT_FRAME));
-}
-
-static void radeon_timer_func(void)
-{
- struct fb_info *info = info_fb;
- struct radeonfb_info *rinfo = info->par;
- struct fb_var_screeninfo var;
- uint32_t x;
- uint32_t y;
- int32_t chg;
- int32_t disp;
-
- static int32_t start_timer;
-
- /* delayed LVDS panel power up/down */
- if (rinfo->lvds_timer)
- {
- if (!start_timer)
- start_timer = get_timer();
-
- if (((start_timer - get_timer())) >= (int32_t)rinfo->lvds_timer)
- {
- rinfo->lvds_timer = 0;
- radeon_engine_idle();
- OUTREG(LVDS_GEN_CNTL, rinfo->pending_lvds_gen_cntl);
- }
- }
- else
- start_timer = 0;
-
- if (rinfo->RenderCallback != NULL)
- rinfo->RenderCallback(rinfo);
-
- if ((info->screen_mono != NULL) && info->update_mono)
- {
- int32_t foreground = 255;
- int32_t background = 0;
- uint8_t *src_buf = (uint8_t *) info->screen_mono;
- int32_t skipleft = ((int32_t) src_buf & 3) << 3;
- int32_t dst_x = 0;
- int32_t w = (int32_t) info->var.xres_virtual;
- int32_t h = (int32_t) info->var.yres_virtual;
-
- // info->fbops->SetClippingRectangle(info,0,0,w-1,h-1);
-
- src_buf = (uint8_t*) ((int32_t) src_buf & ~3);
- dst_x -= (int32_t) skipleft;
- w += (int32_t) skipleft;
- info->fbops->SetupForScanlineCPUToScreenColorExpandFill(info, (int32_t) foreground, (int32_t) background, 3, 0xffffffff);
- info->fbops->SubsequentScanlineCPUToScreenColorExpandFill(info, (int32_t) dst_x, 0, w, h, skipleft);
-
- while (--h >= 0)
- {
- info->fbops->SubsequentScanline(info, (uint32_t *) src_buf);
- src_buf += (info->var.xres_virtual >> 3);
- }
-
- // info->fbops->DisableClipping(info);
- if (info->update_mono > 0)
- info->update_mono = 0;
- }
-
- if ((info->var.xres_virtual != info->var.xres)
- || (info->var.yres_virtual != info->var.yres))
- {
- int32_t ipl;
- ipl = set_ipl(0);
-
- chg = 0;
- x = info->var.xoffset;
- y = info->var.yoffset;
-
- if (((x + info->var.xres) < info->var.xres_virtual) && (rinfo->cursor_x >= (info->var.xres - 8)))
- {
- x += 8;
- chg = 1;
- }
- else if ((x >= 8) && (rinfo->cursor_x <= 8))
- {
- x -= 8;
- chg = 1;
- }
-
- if (((y + info->var.yres) < info->var.yres_virtual) && (rinfo->cursor_y >= (info->var.yres - 8)))
- {
- y += 8;
- chg = 1;
- }
- else if ((y >=8) && (rinfo->cursor_y <= 8))
- {
- y -= 8;
- chg = 1;
- }
-
- if (chg)
- {
- memcpy(&var, &info->var, sizeof(struct fb_var_screeninfo));
- var.xoffset = x;
- var.yoffset = y;
- disp = rinfo->cursor_show;
- if (disp)
- info->fbops->HideCursor(info);
-
- fb_pan_display(info,&var);
-
- if (disp)
- info->fbops->ShowCursor(info);
- }
- set_ipl(ipl);
- }
-}
-
-/*
- * Apply a video mode. This will apply the whole register set, including
- * the PLL registers, to the card
- */
-void radeon_write_mode(struct radeonfb_info *rinfo, struct radeon_regs *mode, int32_t regs_only)
-{
- int32_t i;
- int32_t primary_mon = PRIMARY_MONITOR(rinfo);
-
- dbg("radeonfb: radeon_write_mode\r\n");
-
- if (!regs_only)
- radeon_screen_blank(rinfo, FB_BLANK_NORMAL, 0);
-
- radeon_wait_for_fifo(rinfo, 31);
-
- for (i = 0; i < 10; i++)
- OUTREG(common_regs[i].reg, common_regs[i].val);
-
- /* Apply surface registers */
- for (i = 0; i < 8; i++)
- {
- OUTREG(SURFACE0_LOWER_BOUND + 0x10 * i, mode->surf_lower_bound[i]);
- OUTREG(SURFACE0_UPPER_BOUND + 0x10 * i, mode->surf_upper_bound[i]);
- OUTREG(SURFACE0_INFO + 0x10 * i, mode->surf_info[i]);
- }
- OUTREG(CRTC_GEN_CNTL, mode->crtc_gen_cntl);
- OUTREGP(CRTC_EXT_CNTL, mode->crtc_ext_cntl, ~(CRTC_HSYNC_DIS | CRTC_VSYNC_DIS | CRTC_DISPLAY_DIS));
- OUTREG(CRTC_MORE_CNTL, mode->crtc_more_cntl);
- OUTREGP(DAC_CNTL, mode->dac_cntl, DAC_RANGE_CNTL | DAC_BLANKING);
- OUTREG(CRTC_H_TOTAL_DISP, mode->crtc_h_total_disp);
- OUTREG(CRTC_H_SYNC_STRT_WID, mode->crtc_h_sync_strt_wid);
- OUTREG(CRTC_V_TOTAL_DISP, mode->crtc_v_total_disp);
- OUTREG(CRTC_V_SYNC_STRT_WID, mode->crtc_v_sync_strt_wid);
- rinfo->fb_offset = 0;
- rinfo->dst_pitch_offset = (rinfo->pitch << 22) | ((rinfo->fb_local_base + rinfo->fb_offset) >> 10);
- OUTREG(CRTC_OFFSET, rinfo->fb_offset);
-#ifdef RADEON_TILING
- if (rinfo->tilingEnabled)
- {
- if (rinfo->family >= CHIP_FAMILY_R300)
- OUTREG(CRTC_OFFSET_CNTL, R300_CRTC_X_Y_MODE_EN | R300_CRTC_MICRO_TILE_BUFFER_DIS | R300_CRTC_MACRO_TILE_EN);
- else
- OUTREG(CRTC_OFFSET_CNTL, CRTC_OFFSET_CNTL__CRTC_TILE_EN);
- }
- else
-#endif
- OUTREG(CRTC_OFFSET_CNTL, 0);
-
- OUTREG(CRTC_PITCH, mode->crtc_pitch);
- OUTREG(SURFACE_CNTL, mode->surface_cntl);
- radeon_write_pll_regs(rinfo, mode);
-
- if ((primary_mon == MT_DFP) || (primary_mon == MT_LCD))
- {
- radeon_wait_for_fifo(rinfo, 10);
- OUTREG(FP_CRTC_H_TOTAL_DISP, mode->fp_crtc_h_total_disp);
- OUTREG(FP_CRTC_V_TOTAL_DISP, mode->fp_crtc_v_total_disp);
- OUTREG(FP_H_SYNC_STRT_WID, mode->fp_h_sync_strt_wid);
- OUTREG(FP_V_SYNC_STRT_WID, mode->fp_v_sync_strt_wid);
- OUTREG(FP_HORZ_STRETCH, mode->fp_horz_stretch);
- OUTREG(FP_VERT_STRETCH, mode->fp_vert_stretch);
- OUTREG(FP_GEN_CNTL, mode->fp_gen_cntl);
- OUTREG(TMDS_CRC, mode->tmds_crc);
- OUTREG(TMDS_TRANSMITTER_CNTL, mode->tmds_transmitter_cntl);
- }
-
- if (!regs_only)
- radeon_screen_blank(rinfo, FB_BLANK_UNBLANK, 0);
- radeon_wait_for_fifo(rinfo, 2);
- OUTPLL(VCLK_ECP_CNTL, mode->vclk_ecp_cntl);
-}
-
-/*
- * Calculate the PLL values for a given mode
- */
-static void radeon_calc_pll_regs(struct radeonfb_info *rinfo, struct radeon_regs *regs, uint32_t freq)
-{
- static const struct
- {
- int32_t divider;
- int32_t bitvalue;
- } *post_div,
- post_divs[] =
- {
- { 1, 0 },
- { 2, 1 },
- { 4, 2 },
- { 8, 3 },
- { 3, 4 },
- { 16, 5 },
- { 6, 6 },
- { 12, 7 },
- { 0, 0 },
- };
- int32_t fb_div;
- int32_t pll_output_freq = 0;
- int32_t uses_dvo = 0;
-
- /* Check if the DVO port is enabled and sourced from the primary CRTC. I'm
- * not sure which model starts having FP2_GEN_CNTL, I assume anything more
- * recent than an r(v)100...
- */
-#if 1
- /* XXX I had reports of flicker happening with the cinema display
- * on TMDS1 that seem to be fixed if I also forbid odd dividers in
- * this case. This could just be a bandwidth calculation issue, I
- * haven't implemented the bandwidth code yet, but in the meantime,
- * forcing uses_dvo to 1 fixes it and shouln't have bad side effects,
- * I haven't seen a case were were absolutely needed an odd PLL
- * divider. I'll find a better fix once I have more infos on the
- * real cause of the problem.
- */
- while (rinfo->has_CRTC2)
- {
- uint32_t fp2_gen_cntl = INREG(FP2_GEN_CNTL);
- uint32_t disp_output_cntl;
- int32_t source;
-
- /* FP2 path not enabled */
- if ((fp2_gen_cntl & FP2_ON) == 0)
- break;
-
- /* Not all chip revs have the same format for this register,
- * extract the source selection
- */
- if (rinfo->family == CHIP_FAMILY_R200 || rinfo->family == CHIP_FAMILY_R300
- || rinfo->family == CHIP_FAMILY_R350 || rinfo->family == CHIP_FAMILY_RV350)
- {
- source = (fp2_gen_cntl >> 10) & 0x3;
- /* sourced from transform unit, check for transform unit
- * own source
- */
- if (source == 3)
- {
- disp_output_cntl = INREG(DISP_OUTPUT_CNTL);
- source = (disp_output_cntl >> 12) & 0x3;
- }
- }
- else
- source = (fp2_gen_cntl >> 13) & 0x1;
-
- /* sourced from CRTC2 -> exit */
- if (source == 1)
- break;
-
- /* so we end up on CRTC1, let's set uses_dvo to 1 now */
- uses_dvo = 1;
- break;
- }
-#else
- uses_dvo = 1;
-#endif
- if (freq > rinfo->pll.ppll_max)
- freq = rinfo->pll.ppll_max;
- if (freq * 12 < rinfo->pll.ppll_min)
- freq = rinfo->pll.ppll_min / 12;
- for (post_div = &post_divs[0]; post_div->divider; ++post_div)
- {
- pll_output_freq = post_div->divider * freq;
-
- /*
- * If we output to the DVO port (external TMDS), we don't allow an
- * odd PLL divider as those aren't supported on this path
- */
- if (uses_dvo && (post_div->divider & 1))
- continue;
-
- if (pll_output_freq >= rinfo->pll.ppll_min &&
- pll_output_freq <= rinfo->pll.ppll_max)
- break;
- }
-
- /* If we fall through the bottom, try the "default value"
- given by the terminal post_div->bitvalue */
- if (!post_div->divider)
- {
- post_div = &post_divs[post_div->bitvalue];
- pll_output_freq = post_div->divider * freq;
- }
-
- /* If we fall through the bottom, try the "default value"
- given by the terminal post_div->bitvalue */
- if ( !post_div->divider )
- {
- post_div = &post_divs[post_div->bitvalue];
- pll_output_freq = post_div->divider * freq;
- }
- fb_div = round_div(rinfo->pll.ref_div*pll_output_freq,rinfo->pll.ref_clk);
- regs->ppll_ref_div = rinfo->pll.ref_div;
- regs->ppll_div_3 = fb_div | (post_div->bitvalue << 16);
-}
-
-int32_t radeonfb_set_par(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- struct fb_var_screeninfo *mode = &info->var;
- struct radeon_regs *newmode;
- int32_t hTotal;
- int32_t vTotal;
- int32_t hSyncStart;
- int32_t hSyncEnd;
- int32_t vSyncStart;
- int32_t vSyncEnd;
-
- // FIXME: int32_t hSyncPol; this is not used anywhere
- // FIXME: int32_t vSyncPol; this is not used anywhere
- // FIXME: int32_t cSync; this is not used anywhere
-
- static uint8_t hsync_adj_tab[] = { 0, 0x12, 9, 9, 6, 5 };
- static uint8_t hsync_fudge_fp[] = { 2, 2, 0, 0, 5, 5 };
- uint32_t sync;
- uint32_t h_sync_pol;
- uint32_t v_sync_pol;
- uint32_t dotClock;
- uint32_t pixClock;
- int32_t i;
- int32_t freq;
- int32_t format = 0;
- int32_t nopllcalc = 0;
- int32_t hsync_start;
- int32_t hsync_fudge;
-
- // int32_t bytpp; FIXME: this doesn't seem to be used anywhere
- int32_t hsync_wid;
- int32_t vsync_wid;
- int32_t primary_mon = PRIMARY_MONITOR(rinfo);
- int32_t depth = var_to_depth(mode);
- int32_t use_rmx = 0;
-
- dbg("depth=%d\r\n", depth);
-
- newmode = (struct radeon_regs *) driver_mem_alloc(sizeof(struct radeon_regs));
- if (!newmode)
- {
- err("driver_mem_alloc() failed (ret=%p)\r\n", newmode);
- return -1;
- }
-
- /*
- * We always want engine to be idle on a mode switch, even
- * if we won't actually change the mode
- */
- radeon_engine_idle();
-
- dbg("xres=%d yres=%d\r\n", mode->xres, mode->yres);
-
- hSyncStart = mode->xres + mode->right_margin;
- hSyncEnd = hSyncStart + mode->hsync_len;
- hTotal = hSyncEnd + mode->left_margin;
-
- vSyncStart = mode->yres + mode->lower_margin;
- vSyncEnd = vSyncStart + mode->vsync_len;
- vTotal = vSyncEnd + mode->upper_margin;
-
- dbg("pixel clock = %d\r\n", mode->pixclock);
-
- pixClock = mode->pixclock;
-
- dbg("sync = %d\r\n", mode->sync);
- sync = mode->sync;
-
- h_sync_pol = sync & FB_SYNC_HOR_HIGH_ACT ? 0 : 1;
- v_sync_pol = sync & FB_SYNC_VERT_HIGH_ACT ? 0 : 1;
-
- if (primary_mon == MT_DFP || primary_mon == MT_LCD)
- {
- if (rinfo->panel_info.xres < mode->xres)
- mode->xres = rinfo->panel_info.xres;
-
- if (rinfo->panel_info.yres < mode->yres)
- mode->yres = rinfo->panel_info.yres;
-
- hTotal = mode->xres + rinfo->panel_info.hblank;
- hSyncStart = mode->xres + rinfo->panel_info.hOver_plus;
- hSyncEnd = hSyncStart + rinfo->panel_info.hSync_width;
-
- vTotal = mode->yres + rinfo->panel_info.vblank;
- vSyncStart = mode->yres + rinfo->panel_info.vOver_plus;
- vSyncEnd = vSyncStart + rinfo->panel_info.vSync_width;
-
- h_sync_pol = !rinfo->panel_info.hAct_high;
- v_sync_pol = !rinfo->panel_info.vAct_high;
-
- pixClock = 100000000 / rinfo->panel_info.clock;
-
- if (rinfo->panel_info.use_bios_dividers)
- {
- nopllcalc = 1;
- newmode->ppll_div_3 = rinfo->panel_info.fbk_divider | (rinfo->panel_info.post_divider << 16);
- newmode->ppll_ref_div = rinfo->panel_info.ref_divider;
- }
- }
-
- dotClock = 1000000000 / pixClock;
- freq = dotClock / 10; /* x100 */
-
- dbg("dotClock=%ld, freq = %ld\r\n", dotClock, freq);
-
- hsync_wid = (hSyncEnd - hSyncStart) / 8;
-
- if (hsync_wid == 0)
- hsync_wid = 1;
- else if (hsync_wid > 0x3f) /* max */
- hsync_wid = 0x3f;
-
- dbg("hsync_wid=%d\r\n", hsync_wid);
-
- if (mode->vmode & FB_VMODE_DOUBLE)
- {
- vSyncStart <<= 1;
- vSyncEnd <<= 1;
- vTotal <<= 1;
- }
-
- vsync_wid = vSyncEnd - vSyncStart;
- if (vsync_wid == 0)
- vsync_wid = 1;
- else if (vsync_wid > 0x1f) /* max */
- vsync_wid = 0x1f;
-
- dbg("vsync_wid=%d\r\n", vsync_wid);
-
- // FIXME: this doesn't seem to be used anywhere hSyncPol = mode->sync & FB_SYNC_HOR_HIGH_ACT ? 0 : 1;
- // FIXME: this doesn't seem to be used anywhere vSyncPol = mode->sync & FB_SYNC_VERT_HIGH_ACT ? 0 : 1;
- // FIXME: this doesn't seem to be used anywhere cSync = mode->sync & FB_SYNC_COMP_HIGH_ACT ? (1 << 4) : 0;
-
- format = radeon_get_dstbpp(depth);
- dbg("format=%d\r\n", format);
-
- // FIXME: this doesn't seem to be used anywhere bytpp = mode->bits_per_pixel >> 3;
-
- if ((primary_mon == MT_DFP) || (primary_mon == MT_LCD))
- hsync_fudge = hsync_fudge_fp[format - 1];
- else
- hsync_fudge = hsync_adj_tab[format - 1];
-
- if (mode->vmode & FB_VMODE_DOUBLE)
- hsync_fudge = 0; /* todo: need adjust */
-
- hsync_start = hSyncStart - 8 + hsync_fudge;
- newmode->crtc_gen_cntl = CRTC_EXT_DISP_EN | CRTC_EN | (format << 8);
- if (mode->vmode & FB_VMODE_DOUBLE)
- newmode->crtc_gen_cntl |= CRTC_DBL_SCAN_EN;
- if (mode->vmode & FB_VMODE_INTERLACED)
- newmode->crtc_gen_cntl |= CRTC_INTERLACE_EN;
-
- /* Clear auto-center etc... */
- newmode->crtc_more_cntl = rinfo->init_state.crtc_more_cntl;
- newmode->crtc_more_cntl &= 0xfffffff0;
-
- if ((primary_mon == MT_DFP) || (primary_mon == MT_LCD))
- {
- newmode->crtc_ext_cntl = VGA_ATI_LINEAR | XCRT_CNT_EN;
- if (mirror)
- newmode->crtc_ext_cntl |= CRTC_CRT_ON;
- newmode->crtc_gen_cntl &= ~(CRTC_DBL_SCAN_EN | CRTC_INTERLACE_EN);
- }
- else
- newmode->crtc_ext_cntl = VGA_ATI_LINEAR | XCRT_CNT_EN | CRTC_CRT_ON;
-
- newmode->dac_cntl = /* INREG(DAC_CNTL) | */ DAC_MASK_ALL | DAC_VGA_ADR_EN | DAC_8BIT_EN;
- newmode->crtc_h_total_disp = ((((hTotal / 8) - 1) & 0x3ff) | (((mode->xres / 8) - 1) << 16));
- newmode->crtc_h_sync_strt_wid = ((hsync_start & 0x1fff) | (hsync_wid << 16) | (h_sync_pol << 23));
-
- if (mode->vmode & FB_VMODE_DOUBLE)
- newmode->crtc_v_total_disp = ((vTotal - 1) & 0xffff) | (((mode->yres << 1) - 1) << 16);
- else
- newmode->crtc_v_total_disp = ((vTotal - 1) & 0xffff) | ((mode->yres - 1) << 16);
-
- newmode->crtc_v_sync_strt_wid = (((vSyncStart - 1) & 0xfff) | (vsync_wid << 16) | (v_sync_pol << 23));
-
- /* We first calculate the engine pitch */
- rinfo->pitch = ((mode->xres_virtual * ((mode->bits_per_pixel + 1) / 8) + 0x3f) & ~(0x3f)) >> 6;
-
- /* Then, re-multiply it to get the CRTC pitch */
- newmode->crtc_pitch = (rinfo->pitch << 3) / ((mode->bits_per_pixel + 1) / 8);
- newmode->crtc_pitch |= (newmode->crtc_pitch << 16);
-
- /*
- * It looks like recent chips have a problem with SURFACE_CNTL,
- * setting SURF_TRANSLATION_DIS completely disables the
- * swapper as well, so we leave it unset now.
- */
- newmode->surface_cntl = 0;
-
- if (rinfo->big_endian)
- {
- /* Setup swapping on both apertures, though we currently
- * only use aperture 0, enabling swapper on aperture 1
- * won't harm
- */
- switch(mode->bits_per_pixel)
- {
- case 16:
- newmode->surface_cntl |= NONSURF_AP0_SWP_16BPP;
- newmode->surface_cntl |= NONSURF_AP1_SWP_16BPP;
- break;
- case 24:
- case 32:
- newmode->surface_cntl |= NONSURF_AP0_SWP_32BPP;
- newmode->surface_cntl |= NONSURF_AP1_SWP_32BPP;
- break;
- }
- }
-
- /* Clear surface registers */
- for (i = 0; i < 8; i++)
- {
- newmode->surf_lower_bound[i] = 0;
- newmode->surf_upper_bound[i] = 0x1f;
- newmode->surf_info[i] = 0;
- }
-
- rinfo->bpp = mode->bits_per_pixel;
- rinfo->depth = depth;
-
- /* We use PPLL_DIV_3 */
- newmode->clk_cntl_index = 0x300;
-
- /* Calculate PPLL value if necessary */
- if (!nopllcalc)
- radeon_calc_pll_regs(rinfo, newmode, freq);
-
- newmode->vclk_ecp_cntl = rinfo->init_state.vclk_ecp_cntl;
- if ((primary_mon == MT_DFP) || (primary_mon == MT_LCD))
- {
- int32_t hRatio, vRatio;
- if (mode->xres > rinfo->panel_info.xres)
- mode->xres = rinfo->panel_info.xres;
- if (mode->yres > rinfo->panel_info.yres)
- mode->yres = rinfo->panel_info.yres;
- newmode->fp_horz_stretch = (((rinfo->panel_info.xres / 8) - 1) << HORZ_PANEL_SHIFT);
- newmode->fp_vert_stretch = ((rinfo->panel_info.yres - 1) << VERT_PANEL_SHIFT);
-
- if (mode->xres != rinfo->panel_info.xres)
- {
- hRatio = round_div(mode->xres * HORZ_STRETCH_RATIO_MAX, rinfo->panel_info.xres);
- newmode->fp_horz_stretch = (((hRatio & HORZ_STRETCH_RATIO_MASK))
- | (newmode->fp_horz_stretch & (HORZ_PANEL_SIZE | HORZ_FP_LOOP_STRETCH | HORZ_AUTO_RATIO_INC)));
- newmode->fp_horz_stretch |= (HORZ_STRETCH_BLEND | HORZ_STRETCH_ENABLE);
- use_rmx = 1;
- }
-
- newmode->fp_horz_stretch &= ~HORZ_AUTO_RATIO;
- if (mode->yres != rinfo->panel_info.yres)
- {
- vRatio = round_div(mode->yres * VERT_STRETCH_RATIO_MAX, rinfo->panel_info.yres);
- newmode->fp_vert_stretch = (((((uint32_t)vRatio) & VERT_STRETCH_RATIO_MASK))
- | (newmode->fp_vert_stretch & (VERT_PANEL_SIZE | VERT_STRETCH_RESERVED)));
- newmode->fp_vert_stretch |= (VERT_STRETCH_BLEND | VERT_STRETCH_ENABLE);
- use_rmx = 1;
- }
- newmode->fp_vert_stretch &= ~VERT_AUTO_RATIO_EN;
- newmode->fp_gen_cntl = (rinfo->init_state.fp_gen_cntl
- & ~(FP_SEL_CRTC2 | FP_RMX_HVSYNC_CONTROL_EN | FP_DFP_SYNC_SEL | FP_CRT_SYNC_SEL
- | FP_CRTC_LOCK_8DOT | FP_USE_SHADOW_EN | FP_CRTC_USE_SHADOW_VEND | FP_CRT_SYNC_ALT));
- newmode->fp_gen_cntl |= (FP_CRTC_DONT_SHADOW_VPAR | FP_CRTC_DONT_SHADOW_HEND | FP_PANEL_FORMAT);
-
- if (IS_R300_VARIANT(rinfo) || (rinfo->family == CHIP_FAMILY_R200))
- {
- newmode->fp_gen_cntl &= ~R200_FP_SOURCE_SEL_MASK;
- if (use_rmx)
- newmode->fp_gen_cntl |= R200_FP_SOURCE_SEL_RMX;
- else
- newmode->fp_gen_cntl |= R200_FP_SOURCE_SEL_CRTC1;
- }
- else
- newmode->fp_gen_cntl |= FP_SEL_CRTC1;
-
- newmode->lvds_gen_cntl = rinfo->init_state.lvds_gen_cntl;
- newmode->lvds_pll_cntl = rinfo->init_state.lvds_pll_cntl;
- newmode->tmds_crc = rinfo->init_state.tmds_crc;
- newmode->tmds_transmitter_cntl = rinfo->init_state.tmds_transmitter_cntl;
-
- if (primary_mon == MT_LCD)
- {
- newmode->lvds_gen_cntl |= (LVDS_ON | LVDS_BLON);
- newmode->fp_gen_cntl &= ~(FP_FPON | FP_TMDS_EN);
- }
- else
- {
- /* DFP */
- newmode->fp_gen_cntl |= (FP_FPON | FP_TMDS_EN);
- newmode->tmds_transmitter_cntl &= ~(TMDS_PLLRST);
- /* TMDS_PLL_EN bit is reversed on RV (and mobility) chips */
- if (IS_R300_VARIANT(rinfo) || (rinfo->family == CHIP_FAMILY_R200) || !rinfo->has_CRTC2)
- newmode->tmds_transmitter_cntl &= ~TMDS_PLL_EN;
- else
- newmode->tmds_transmitter_cntl |= TMDS_PLL_EN;
- newmode->crtc_ext_cntl &= ~CRTC_CRT_ON;
- }
-
- newmode->fp_crtc_h_total_disp = (((rinfo->panel_info.hblank / 8) & 0x3ff) | (((mode->xres / 8) - 1) << 16));
- newmode->fp_crtc_v_total_disp = (rinfo->panel_info.vblank & 0xffff) | ((mode->yres - 1) << 16);
- newmode->fp_h_sync_strt_wid = ((rinfo->panel_info.hOver_plus & 0x1fff) | (hsync_wid << 16) | (h_sync_pol << 23));
- newmode->fp_v_sync_strt_wid = ((rinfo->panel_info.vOver_plus & 0xfff) | (vsync_wid << 16) | (v_sync_pol << 23));
- }
-
- /* do it! */
- if (!rinfo->asleep)
- {
-#if 0
- if (debug)
- {
- dbg("Press a key for write the video mode...\r\n");
- Bconin(2);
- }
-#endif
- memcpy(&rinfo->state, newmode, sizeof(*newmode));
-#ifdef RADEON_TILING
- rinfo->tilingEnabled = (mode->vmode & (FB_VMODE_DOUBLE | FB_VMODE_INTERLACED)) ? false : true;
-#endif
- radeon_write_mode(rinfo, newmode, 0);
- /* (re)initialize the engine */
- radeon_engine_init(rinfo);
- }
-
- /* Update fix */
- info->fix.line_length = rinfo->pitch * 64;
- info->fix.visual = rinfo->depth == 8 ? FB_VISUAL_PSEUDOCOLOR : FB_VISUAL_DIRECTCOLOR;
- driver_mem_free(newmode);
-
- return 0;
-}
-
-static void radeonfb_check_modes(struct fb_info *info, struct mode_option *resolution)
-{
- struct radeonfb_info *rinfo = info->par;
-
- radeon_check_modes(rinfo, resolution);
-}
-
-static struct fb_ops radeonfb_ops =
-{
- .fb_check_var = radeonfb_check_var,
- .fb_set_par = radeonfb_set_par,
- .fb_setcolreg = radeonfb_setcolreg,
- .fb_pan_display = radeonfb_pan_display,
- .fb_blank = radeonfb_blank,
- .fb_sync = radeonfb_sync,
- .fb_ioctl = radeonfb_ioctl,
- .fb_check_modes = radeonfb_check_modes,
- .SetupForSolidFill = radeon_setup_for_solid_fill,
- .SubsequentSolidFillRect = radeon_subsequent_solid_fill_rect_mmio,
- .SetupForSolidLine = radeon_setup_for_solid_line_mmio,
- .SubsequentSolidHorVertLine = radeon_subsequent_solid_hor_vert_line_mmio,
- .SubsequentSolidTwoPointLine = radeon_subsequent_solid_two_point_line_mmio,
- .SetupForDashedLine = radeon_setup_for_dashed_line_mmio,
- .SubsequentDashedTwoPointLine = radeon_subsequent_dashed_two_point_line_mmio,
- .SetupForScreenToScreenCopy = radeon_setup_for_screen_to_screen_copy_mmio,
- .SubsequentScreenToScreenCopy = radeon_subsequent_screen_to_screen_copy_mmio,
- .ScreenToScreenCopy = radeon_screen_to_screen_copy_mmio,
- .SetupForMono8x8PatternFill = radeon_setup_for_mono_8x8_pattern_fill_mmio,
- .SubsequentMono8x8PatternFillRect = radeon_subsequent_mono_8x8_pattern_fill_rect_mmio,
- .SetupForScanlineCPUToScreenColorExpandFill = radeon_setup_for_scanline_cpu_to_screen_color_expand_fill_mmio,
- .SubsequentScanlineCPUToScreenColorExpandFill = radeon_subsequent_scanline_cpu_to_screen_color_expand_fill_mmio,
- .SubsequentScanline = radeon_subsequent_scanline_mmio,
- .SetupForScanlineImageWrite = radeon_setup_for_scanline_image_write_mmio,
- .SubsequentScanlineImageWriteRect = radeon_subsequent_scanline_image_write_rect_mmio,
- .SetClippingRectangle = radeon_set_clipping_rectangle_mmio,
- .DisableClipping = radeon_disable_clipping_mmio,
-#ifdef RADEON_RENDER
- .SetupForCPUToScreenAlphaTexture = radeon_setup_for_cpu_to_screen_alpha_texture_mmio,
- .SetupForCPUToScreenTexture = radeon_setup_for_cpu_to_screen_texture_mmio,
- .SubsequentCPUToScreenTexture = radeon_subsequent_cpu_to_screen_texture_mmio,
-#else
- .SetupForCPUToScreenAlphaTexture = NULL,
- .SetupForCPUToScreenTexture = NULL,
- .SubsequentCPUToScreenTexture = NULL,
-#endif /* RADEON_RENDER */
- .SetCursorColors = radeon_set_cursor_colors,
- .SetCursorPosition = radeon_set_cursor_position,
- .LoadCursorImage = radeon_load_cursor_image,
- .HideCursor = radeon_hide_cursor,
- .ShowCursor = radeon_show_cursor,
- .CursorInit = radeon_cursor_init,
- .WaitVbl = radeon_wait_vbl,
-};
-
-static int radeon_set_fbinfo(struct radeonfb_info *rinfo)
-{
- struct fb_info *info = rinfo->info;
-
- info->par = rinfo;
- info->fbops = &radeonfb_ops;
- info->ram_base = info->screen_base = rinfo->fb_base;
- info->screen_size = rinfo->mapped_vram;
- info->ram_size = rinfo->mapped_vram;
- if (info->screen_size > MAX_MAPPED_VRAM)
- info->screen_size = MAX_MAPPED_VRAM;
- else if (info->screen_size > MIN_MAPPED_VRAM)
- info->screen_size = MIN_MAPPED_VRAM;
-
- dbg("ram_base %p\r\n", info->screen_base);
- dbg("ram_size 0x%08lx\r\n", info->ram_size);
-
- /* Fill fix common fields */
- memcpy(info->fix.id, rinfo->name, sizeof(info->fix.id));
- info->fix.smem_start = rinfo->fb_base_phys;
- info->fix.smem_len = rinfo->video_ram;
- info->fix.type = FB_TYPE_PACKED_PIXELS;
- info->fix.visual = FB_VISUAL_PSEUDOCOLOR;
- info->fix.xpanstep = 8;
- info->fix.ypanstep = 1;
- info->fix.ywrapstep = 0;
- info->fix.type_aux = 0;
- info->fix.mmio_start = rinfo->mmio_base_phys;
- info->fix.mmio_len = RADEON_REGSIZE;
- info->fix.accel = FB_ACCEL_ATI_RADEON;
-
- return 0;
-}
-
-static void radeon_identify_vram(struct radeonfb_info *rinfo)
-{
- uint32_t tmp;
- /* framebuffer size */
- if ((rinfo->family == CHIP_FAMILY_RS100)
- || (rinfo->family == CHIP_FAMILY_RS200)
- || (rinfo->family == CHIP_FAMILY_RS300))
- {
- uint32_t tom = INREG(NB_TOM);
- tmp = ((((tom >> 16) - (tom & 0xffff) + 1) << 6) * 1024);
- radeon_wait_for_fifo(rinfo, 6);
- OUTREG(MC_FB_LOCATION, tom);
- OUTREG(DISPLAY_BASE_ADDR, (tom & 0xffff) << 16);
- OUTREG(CRTC2_DISPLAY_BASE_ADDR, (tom & 0xffff) << 16);
- OUTREG(OV0_BASE_ADDR, (tom & 0xffff) << 16);
- /* This is supposed to fix the crtc2 noise problem. */
- OUTREG(GRPH2_BUFFER_CNTL, INREG(GRPH2_BUFFER_CNTL) & ~0x7f0000);
- if ((rinfo->family == CHIP_FAMILY_RS100) || (rinfo->family == CHIP_FAMILY_RS200))
- {
- /* This is to workaround the asic bug for RMX, some versions
- of BIOS dosen't have this register initialized correctly. */
- OUTREGP(CRTC_MORE_CNTL, CRTC_H_CUTOFF_ACTIVE_EN, ~CRTC_H_CUTOFF_ACTIVE_EN);
- }
- }
- else
- tmp = INREG(CONFIG_MEMSIZE);
- /* mem size is bits [28:0], mask off the rest */
- rinfo->video_ram = tmp & CONFIG_MEMSIZE_MASK;
- /*
- * Hack to get around some busted production M6's
- * reporting no ram
- */
- if (rinfo->video_ram == 0)
- {
- switch(rinfo->chipset)
- {
- case PCI_CHIP_RADEON_LY:
- case PCI_CHIP_RADEON_LZ: rinfo->video_ram = 8192 * 1024; break;
- default: break;
- }
- }
- /*
- * Now try to identify VRAM type
- */
- if (rinfo->is_IGP || (rinfo->family >= CHIP_FAMILY_R300)
- || (INREG(MEM_SDRAM_MODE_REG) & (1<<30)))
- rinfo->vram_ddr = 1;
- else
- rinfo->vram_ddr = 0;
- tmp = INREG(MEM_CNTL);
- if (IS_R300_VARIANT(rinfo))
- {
- tmp &= R300_MEM_NUM_CHANNELS_MASK;
- switch(tmp)
- {
- case 0: rinfo->vram_width = 64; break;
- case 1: rinfo->vram_width = 128; break;
- case 2: rinfo->vram_width = 256; break;
- default: rinfo->vram_width = 128; break;
- }
- }
- else if ((rinfo->family == CHIP_FAMILY_RV100)
- || (rinfo->family == CHIP_FAMILY_RS100)
- || (rinfo->family == CHIP_FAMILY_RS200))
- {
- if (tmp & RV100_MEM_HALF_MODE)
- rinfo->vram_width = 32;
- else
- rinfo->vram_width = 64;
- }
- else
- {
- if (tmp & MEM_NUM_CHANNELS_MASK)
- rinfo->vram_width = 128;
- else
- rinfo->vram_width = 64;
- }
-
- /*
- * This may not be correct, as some cards can have half of channel disabled
- * ToDo: identify these cases
- */
- switch(rinfo->family)
- {
- case CHIP_FAMILY_LEGACY: inf("chip type: %s\r\n", "LEGACY"); break;
- case CHIP_FAMILY_RADEON: inf("chip type: %s\r\n", "RADEON"); break;
- case CHIP_FAMILY_RV100: inf("chip type: %s\r\n", "RV100"); break;
- case CHIP_FAMILY_RS100: inf("chip type: %s\r\n", "RS100"); break;
- case CHIP_FAMILY_RV200: inf("chip type: %s\r\n", "RV200"); break;
- case CHIP_FAMILY_RS200: inf("chip type: %s\r\n", "RS200"); break;
- case CHIP_FAMILY_R200: inf("chip type: %s\r\n", "R200"); break;
- case CHIP_FAMILY_RV250: inf("chip type: %s\r\n", "RV250"); break;
- case CHIP_FAMILY_RS300: inf("chip type: %s\r\n", "RS300"); break;
- case CHIP_FAMILY_RV280: inf("chip type: %s\r\n", "RV280"); break;
- case CHIP_FAMILY_R300: inf("chip type: %s\r\n", "R300"); break;
- case CHIP_FAMILY_R350: inf("chip type: %s\r\n", "R350"); break;
- case CHIP_FAMILY_RV350: inf("chip type: %s\r\n", "RV350"); break;
- case CHIP_FAMILY_RV380: inf("chip type: %s\r\n", "RV380"); break;
- case CHIP_FAMILY_R420: inf("chip type: %s\r\n", "R420"); break;
- default: inf("chip type: %s\r\n", "UNKNOWN"); break;
- }
- inf("found %d KB of %d bits wide %s video RAM\r\n", rinfo->video_ram / 1024,
- rinfo->vram_width, rinfo->vram_ddr ? "DDR" : "SDRAM");
-}
-
-int32_t radeonfb_pci_register(int32_t handle, const struct pci_device_id *ent)
-{
- struct fb_info *info;
- struct radeonfb_info *rinfo;
- struct pci_rd *pci_rsc_desc;
-
- dbg("\r\n");
- info = framebuffer_alloc(sizeof(struct radeonfb_info));
- if (!info)
- {
- err("could not allocate frame buffer info\r\n");
- return -1; // -ENOMEM;
- }
-
- rinfo = info->par;
-
- rinfo->info = info;
- rinfo->handle = handle;
-
- strcpy((char *) rinfo->name, "ATI Radeon XX ");
- rinfo->name[11] = (char) (ent->device >> 8);
- rinfo->name[12] = (char) ent->device;
-
- rinfo->family = ent->driver_data & CHIP_FAMILY_MASK;
- rinfo->chipset = ent->device;
- rinfo->has_CRTC2 = (ent->driver_data & CHIP_HAS_CRTC2) != 0;
- rinfo->is_mobility = (ent->driver_data & CHIP_IS_MOBILITY) != 0;
- rinfo->is_IGP = (ent->driver_data & CHIP_IS_IGP) != 0;
-
- /* Set base addrs */
- dbg("Set base addrs\r\n");
- rinfo->fb_base_phys = rinfo->mmio_base_phys = rinfo->io_base_phys = 0xFFFFFFFF;
- rinfo->mapped_vram = 0;
- rinfo->mmio_base = rinfo->io_base = NULL;
- rinfo->bios_seg = NULL;
-
- pci_rsc_desc = pci_get_resource(handle);
- if ((int32_t) pci_rsc_desc >= 0)
- {
- uint16_t flags;
- do
- {
- dbg("flags %p\r\n", pci_rsc_desc->flags);
- dbg(" start %p\r\n", pci_rsc_desc->start);
- dbg(" offset 0x%x\r\n", pci_rsc_desc->offset);
- dbg(" length 0x%x\r\n", pci_rsc_desc->length);
-
- if (!(pci_rsc_desc->flags & FLG_IO))
- {
- if ((rinfo->fb_base_phys == 0xFFFFFFFF) && (pci_rsc_desc->length >= 0x100000))
- {
- rinfo->fb_base = (void *)(pci_rsc_desc->offset + pci_rsc_desc->start);
- rinfo->fb_base_phys = pci_rsc_desc->start;
- rinfo->mapped_vram = pci_rsc_desc->length;
- // rinfo->dma_offset = pci_rsc_desc->dmaoffset;
- if ((pci_rsc_desc->flags & FLG_ENDMASK) == ORD_MOTOROLA)
- {
- rinfo->big_endian = 0; /* host bridge make swapping intel -> motorola */
- dbg("host bridge is big endian\r\n");
- }
- else
- {
- rinfo->big_endian = 1; /* radeon make swapping intel -> motorola */
- dbg("host bridge is little endian\r\n");
- }
- }
- else if ((pci_rsc_desc->length >= RADEON_REGSIZE) && (pci_rsc_desc->length < 0x100000))
- {
- if (pci_rsc_desc->flags & FLG_ROM)
- {
- dbg("FLG_ROM resource descriptor found\r\n");
- dbg(" start = %p, size = 0x%x\r\n", pci_rsc_desc->start, pci_rsc_desc->length);
- dbg(" bios_seg = %p\r\n", rinfo->bios_seg);
-
- if (rinfo->bios_seg == NULL)
- {
- rinfo->bios_seg_phys = pci_rsc_desc->start;
- if (BIOS_IN16(0) == 0xaa55)
- {
- rinfo->bios_seg = (void *) (pci_rsc_desc->offset + pci_rsc_desc->start);
- }
- else
- {
- dbg("rinfo->bios_seg[0] (%p) was %x (expected 0xaa55)\r\n",
- rinfo->bios_seg_phys, * (uint16_t *) rinfo->bios_seg_phys);
- rinfo->bios_seg_phys = 0;
- return 0;
- }
- }
- }
- else
- {
- if (rinfo->mmio_base_phys == 0xFFFFFFFF)
- {
- rinfo->mmio_base = (void *)(pci_rsc_desc->offset + pci_rsc_desc->start);
- rinfo->mmio_base_phys = pci_rsc_desc->start;
- }
- }
- }
- }
- else
- {
- if (rinfo->io_base_phys == 0xFFFFFFFF)
- {
- rinfo->io_base = (void *)(pci_rsc_desc->offset + pci_rsc_desc->start);
- rinfo->io_base_phys = pci_rsc_desc->start;
- }
- }
- flags = pci_rsc_desc->flags;
- pci_rsc_desc = (struct pci_rd *) ((uint32_t) pci_rsc_desc->next + (uint32_t) pci_rsc_desc);
- } while (!(flags & FLG_LAST));
- }
- else
- err("get_resource error\r\n");
-
- /* map the regions */
- dbg("map memory regions\r\n");
- if (rinfo->mmio_base == NULL)
- {
- err("cannot map MMIO\r\n");
- framebuffer_release(info);
- return -2; //(-EIO);
- }
- dbg("mmio_base_phys %p, mmio_base %p\r\n", rinfo->mmio_base_phys, rinfo->mmio_base);
- dbg("io_base_phys %p, io_base %p\r\n", rinfo->io_base_phys, rinfo->io_base);
- dbg("fb_base_phys %p, fb_base %p\r\n", rinfo->fb_base_phys, rinfo->fb_base);
-
- /*
- * Check for errata
- */
- dbg("check for errata\r\n");
- rinfo->errata = 0;
- if (rinfo->family == CHIP_FAMILY_R300
- && (INREG(CONFIG_CNTL) & CFG_ATI_REV_ID_MASK) == CFG_ATI_REV_A11)
- rinfo->errata |= CHIP_ERRATA_R300_CG;
- if (rinfo->family == CHIP_FAMILY_RV200 || rinfo->family == CHIP_FAMILY_RS200)
- rinfo->errata |= CHIP_ERRATA_PLL_DUMMYREADS;
- if (rinfo->family == CHIP_FAMILY_RV100
- || rinfo->family == CHIP_FAMILY_RS100
- || rinfo->family == CHIP_FAMILY_RS200)
- rinfo->errata |= CHIP_ERRATA_PLL_DELAY;
-
- /*
- * Map the BIOS ROM if any and retreive PLL parameters from
- * the BIOS.
- */
- dbg("bios_seg_phys %p\r\n", rinfo->bios_seg_phys);
- dbg("map the BIOS ROM\r\n");
- radeon_map_ROM(rinfo);
-
- /*
- * Run VGA BIOS
- */
- if ((rinfo->bios_seg != NULL))
- {
- dbg("run VGA BIOS\r\n");
- run_bios(rinfo);
- }
- else
- {
- err("could not run VGA bios - rinfo->bios_seg is NULL\r\n");
- }
-
- dbg("fixup display base address \r\n");
-
- OUTREG(MC_FB_LOCATION, 0x7fff0000);
- rinfo->fb_local_base = 0;
-
- /*
- * Fixup the display base addresses & engine offsets while we
- * are at it as well
- */
- OUTREG(DISPLAY_BASE_ADDR, 0);
- if (rinfo->has_CRTC2)
- OUTREG(CRTC2_DISPLAY_BASE_ADDR, 0);
-
- OUTREG(OV0_BASE_ADDR, 0);
-
- /* Get VRAM size and type */
- dbg("get VRAM size\r\n");
- radeon_identify_vram(rinfo);
-
- if ((rinfo->fb_base == NULL)
- || ((rinfo->video_ram > rinfo->mapped_vram) && (rinfo->mapped_vram < MIN_MAPPED_VRAM * 2)))
- {
- err("cannot map FB, video ram: %d KB\r\n", rinfo->mapped_vram / 1024);
- framebuffer_release(info);
- return -2; //(-EIO);
- }
- else
- {
- inf("%d KB of video RAM mapped to %p\r\n", rinfo->mapped_vram / 1024, rinfo->fb_base);
- }
-
- /* Get information about the board's PLL */
- dbg("get information about the board's PLL\r\n");
- radeon_get_pllinfo(rinfo);
-
-#ifdef CONFIG_FB_RADEON_I2C
- /* Register I2C bus */
- dbg("register I2C bus\r\n");
- radeon_create_i2c_busses(rinfo);
-#endif /* CONFIG_FB_RADEON_I2C */
-
- /* set all the vital stuff */
- dbg("set all the vital stuff\r\n");
- radeon_set_fbinfo(rinfo);
-
- /* set offscreen memory descriptor */
- dbg("set offscreen memory descriptor\r\n");
- offscreen_init(info);
-
- /* Probe screen types */
- dbg("probe screen types, monitor_layout: %s\r\n", monitor_layout);
- radeon_probe_screens(rinfo, monitor_layout, ignore_edid);
-
- /* Build mode list, check out panel native model */
- dbg("build mode list\r\n");
- radeon_check_modes(rinfo, &resolution);
-
- /*
- * save current mode regs before we switch into the new one
- * so we can restore this upon exit
- */
- dbg("save current mode\r\n");
- radeon_save_state(rinfo, &rinfo->init_state);
- memcpy(&rinfo->state, &rinfo->init_state, sizeof(struct radeon_regs));
-
- dbg("install VBL timer\r\n");
- rinfo->lvds_timer = 0;
-
-#ifndef DRIVER_IN_ROM
- install_vbl_timer(radeon_timer_func, 1); /* remove old vector */
-#else
- install_vbl_timer(radeon_timer_func, 0);
-#endif
- radeon_timer_func();
-
- return 0;
-}
-
-#if 0
-
-void radeonfb_pci_unregister(void)
-{
- struct fb_info *info = info_fb;
- struct radeonfb_info *rinfo = info->par;
- // radeonfb_pm_exit(rinfo);
- uninstall_vbl_timer(radeon_timer_func);
- if (rinfo->mon1_EDID!=NULL)
- driver_mem_free(rinfo->mon1_EDID);
- if (rinfo->mon2_EDID!=NULL)
- driver_mem_free(rinfo->mon2_EDID);
- if (rinfo->mon1_modedb)
- fb_destroy_modedb(rinfo->mon1_modedb);
-#ifdef CONFIG_FB_RADEON_I2C
- radeon_delete_i2c_busses(rinfo);
-#endif
- framebuffer_release(info);
-}
-
-#endif
-
-
diff --git a/BaS_gcc/radeon/radeon_cursor.c b/BaS_gcc/radeon/radeon_cursor.c
deleted file mode 100644
index 32a93c8..0000000
--- a/BaS_gcc/radeon/radeon_cursor.c
+++ /dev/null
@@ -1,335 +0,0 @@
-/* $XFree86: xc/programs/Xserver/hw/xfree86/drivers/ati/radeon_cursor.c,v 1.26 2003/11/10 18:41:22 tsi Exp $ */
-/*
- * Copyright 2000 ATI Technologies Inc., Markham, Ontario, and
- * VA Linux Systems Inc., Fremont, California.
- *
- * All Rights Reserved.
- *
- * Permission is hereby granted, free of charge, to any person obtaining
- * a copy of this software and associated documentation files (the
- * "Software"), to deal in the Software without restriction, including
- * without limitation on the rights to use, copy, modify, merge,
- * publish, distribute, sublicense, and/or sell copies of the Software,
- * and to permit persons to whom the Software is furnished to do so,
- * subject to the following conditions:
- *
- * The above copyright notice and this permission notice (including the
- * next paragraph) shall be included in all copies or substantial
- * portions of the Software.
- *
- * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
- * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
- * NON-INFRINGEMENT. IN NO EVENT SHALL ATI, VA LINUX SYSTEMS AND/OR
- * THEIR SUPPLIERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
- * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
- * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
- * DEALINGS IN THE SOFTWARE.
- */
-
-/*
- * Authors:
- * Kevin E. Martin
- * Rickard E. Faith
- *
- * References:
- *
- * !!!! FIXME !!!!
- * RAGE 128 VR/ RAGE 128 GL Register Reference Manual (Technical
- * Reference Manual P/N RRG-G04100-C Rev. 0.04), ATI Technologies: April
- * 1999.
- *
- * RAGE 128 Software Development Manual (Technical Reference Manual P/N
- * SDK-G04000 Rev. 0.01), ATI Technologies: June 1999.
- *
- */
-
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "radeonfb.h"
-
-#define DBG_RADEON
-#ifdef DBG_RADEON
-#define dbg(format, arg...) do { xprintf("DEBUG %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_RADEON */
-
-
-#define CURSOR_WIDTH 64
-#define CURSOR_HEIGHT 64
-
-/*
- * The cursor bits are always 32bpp. On MSBFirst buses,
- * configure byte swapping to swap 32 bit units when writing
- * the cursor image. Byte swapping must always be returned
- * to its previous value before returning.
- */
-#define CURSOR_SWAPPING_DECL_MMIO
-#define CURSOR_SWAPPING_DECL unsigned long __surface_cntl=0;
-#define CURSOR_SWAPPING_START() \
- if (rinfo->big_endian) \
- OUTREG(SURFACE_CNTL, \
- ((__surface_cntl = INREG(SURFACE_CNTL)) | \
- NONSURF_AP0_SWP_32BPP) & \
- ~NONSURF_AP0_SWP_16BPP);
-#define CURSOR_SWAPPING_END() \
- if (rinfo->big_endian) \
- (OUTREG(SURFACE_CNTL, __surface_cntl));
-
-/* Set cursor foreground and background colors */
-void radeon_set_cursor_colors(struct fb_info *info, int32_t bg, int32_t fg)
-{
- struct radeonfb_info *rinfo = info->par;
- unsigned long *pixels = (unsigned long *)((unsigned long) rinfo->fb_base + rinfo->cursor_start);
- int pixel, i;
- CURSOR_SWAPPING_DECL_MMIO
- CURSOR_SWAPPING_DECL
- // DPRINTVALHEX("radeonfb: RADEONSetCursorColors: cursor_start ",rinfo->cursor_start);
- // DPRINT("\r\n");
- fg |= 0xff000000;
- bg |= 0xff000000;
- /* Don't recolour the image if we don't have to. */
- if (fg == rinfo->cursor_fg && bg == rinfo->cursor_bg)
- return;
- CURSOR_SWAPPING_START();
-
- /*
- * Note: We assume that the pixels are either fully opaque or fully
- * transparent, so we won't premultiply them, and we can just
- * check for non-zero pixel values; those are either fg or bg
- */
- for (i = 0; i < CURSOR_WIDTH * CURSOR_HEIGHT; i++, pixels++)
- if ((pixel = *pixels))
- *pixels = (pixel == rinfo->cursor_fg) ? fg : bg;
- CURSOR_SWAPPING_END();
- rinfo->cursor_fg = fg;
- rinfo->cursor_bg = bg;
-}
-
-/* Set cursor position to (x,y) with offset into cursor bitmap at
- * (xorigin,yorigin)
- */
-void radeon_set_cursor_position(struct fb_info *info, int32_t x, int32_t y)
-{
- struct radeonfb_info *rinfo = info->par;
- struct fb_var_screeninfo *mode = &info->var;
- int xorigin = 0;
- int yorigin = 0;
- if (mode->vmode & FB_VMODE_DOUBLE)
- y <<= 1;
- if (x < 0)
- xorigin = 1 - x;
- if (y < 0)
- yorigin = 1 - y;
-
- // DPRINTVALHEX("radeonfb: RADEONSetCursorPosition: cursor_start ",rinfo->cursor_start);
- // DPRINTVAL(" x ",x);
- // DPRINTVAL(" y ",y);
- // DPRINT("\r\n");
-
- OUTREG(CUR_HORZ_VERT_OFF, (CUR_LOCK | (xorigin << 16) | yorigin));
- OUTREG(CUR_HORZ_VERT_POSN, (CUR_LOCK | ((xorigin ? 0 : x) << 16) | (yorigin ? 0 : y)));
- OUTREG(CUR_OFFSET, rinfo->cursor_start + yorigin * 256);
- rinfo->cursor_x = (unsigned long)x;
- if (mode->vmode & FB_VMODE_DOUBLE)
- rinfo->cursor_y = (unsigned long) y >> 1;
- else
- rinfo->cursor_y = (unsigned long) y;
-}
-
-/*
- * Copy cursor image from `image' to video memory. RADEONSetCursorPosition
- * will be called after this, so we can ignore xorigin and yorigin.
- */
-void radeon_load_cursor_image(struct fb_info *info, unsigned short *mask, unsigned short *data, int32_t zoom)
-{
- struct radeonfb_info *rinfo = info->par;
- unsigned long *d = (unsigned long *)((unsigned long)rinfo->fb_base+rinfo->cursor_start);
- unsigned long save = 0;
- unsigned short chunk, mchunk;
- unsigned long i, j, k;
- CURSOR_SWAPPING_DECL
-
- // DPRINTVALHEX("radeonfb: RADEONLoadCursorImage: cursor_start ",rinfo->cursor_start);
- // DPRINT("\r\n");
-
- save = INREG(CRTC_GEN_CNTL) & ~(unsigned long) (3 << 20);
- save |= (unsigned long) (2 << 20);
- OUTREG(CRTC_GEN_CNTL, save & (unsigned long)~CRTC_CUR_EN);
-
- /*
- * Convert the bitmap to ARGB32.
- */
- CURSOR_SWAPPING_START();
-#define ARGB_PER_CHUNK (8 * sizeof (chunk))
- switch(zoom)
- {
- case 1:
- default:
- for (i = 0; i < CURSOR_HEIGHT; i++)
- {
- if (i < 16)
- {
- mchunk = *mask++;
- chunk = *data++;
- }
- else
- mchunk = chunk = 0;
- for (j = 0; j < CURSOR_WIDTH / ARGB_PER_CHUNK; j++)
- {
- for (k = 0; k < ARGB_PER_CHUNK; k++, chunk <<= 1, mchunk <<= 1)
- {
- if (mchunk & 0x8000)
- {
- if (chunk & 0x8000)
- *d++ = 0xff000000; /* Black, fully opaque. */
- else
- *d++ = 0xffffffff; /* White, fully opaque. */
- }
- else
- *d++ = 0x00000000; /* White/Black, fully transparent. */
- }
- }
- }
- break;
- case 2:
- for (i = 0; i < CURSOR_HEIGHT; i++)
- {
- if (i < 16*2)
- {
- mchunk = *mask;
- chunk = *data;
- if ((i & 1) == 1)
- {
- mask++;
- data++;
- }
- }
- else
- mchunk = chunk = 0;
- for (j = 0; j < CURSOR_WIDTH / ARGB_PER_CHUNK; j+=2)
- {
- for (k = 0; k < ARGB_PER_CHUNK; k++, chunk <<= 1, mchunk <<= 1)
- {
- if (mchunk & 0x8000)
- {
- if (chunk & 0x8000)
- {
- *d++ = 0xff000000; /* Black, fully opaque. */
- *d++ = 0xff000000;
- }
- else
- {
- *d++ = 0xffffffff; /* White, fully opaque. */
- *d++ = 0xffffffff;
- }
- }
- else
- {
- *d++ = 0x00000000; /* White/Black, fully transparent. */
- *d++ = 0x00000000;
- }
- }
- }
- }
- break;
- case 4:
- for (i = 0; i < CURSOR_HEIGHT; i++)
- {
- if (i < 16 * 4)
- {
- mchunk = *mask;
- chunk = *data;
- if ((i & 3) == 3)
- {
- mask++;
- data++;
- }
- }
- else
- mchunk = chunk = 0;
- for (j = 0; j < CURSOR_WIDTH / ARGB_PER_CHUNK; j+=4)
- {
- for (k = 0; k < ARGB_PER_CHUNK; k++, chunk <<= 1, mchunk <<= 1)
- {
- if (mchunk & 0x8000)
- {
- if (chunk & 0x8000)
- {
- *d++ = 0xff000000; /* Black, fully opaque. */
- *d++ = 0xff000000;
- *d++ = 0xff000000;
- *d++ = 0xff000000;
- }
- else
- {
- *d++ = 0xffffffff; /* White, fully opaque. */
- *d++ = 0xffffffff;
- *d++ = 0xffffffff;
- *d++ = 0xffffffff;
- }
- }
- else
- {
- *d++ = 0x00000000; /* White/Black, fully transparent. */
- *d++ = 0x00000000;
- *d++ = 0x00000000;
- *d++ = 0x00000000;
- }
- }
- }
- }
- break;
- }
- CURSOR_SWAPPING_END();
- rinfo->cursor_bg = 0xffffffff; /* White, fully opaque. */
- rinfo->cursor_fg = 0xff000000; /* Black, fully opaque. */
- OUTREG(CRTC_GEN_CNTL, save);
-}
-
-/* Hide hardware cursor. */
-void radeon_hide_cursor(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
-
- // DPRINT("radeonfb: RADEONHideCursor\r\n");
- OUTREGP(CRTC_GEN_CNTL, 0, ~CRTC_CUR_EN);
- rinfo->cursor_show = 0;
-}
-
-/* Show hardware cursor. */
-void radeon_show_cursor(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
-
- // DPRINT("radeonfb: RADEONShowCursor\r\n");
- OUTREGP(CRTC_GEN_CNTL, CRTC_CUR_EN, ~CRTC_CUR_EN);
- rinfo->cursor_show = 1;
-}
-
-/* Initialize hardware cursor support. */
-long radeon_cursor_init(struct fb_info *info)
-{
- struct radeonfb_info *rinfo = info->par;
- int size_bytes = CURSOR_WIDTH * 4 * CURSOR_HEIGHT;
- unsigned long fbarea = offscreen_alloc(rinfo->info, size_bytes + 256);
-
- dbg("radeonfb: %s: fbarea: %p\r\n", fbarea);
-
- if (!fbarea)
- rinfo->cursor_start = 0;
- else
- {
- unsigned short data[16], mask[16];
-
- memset(data, 0, sizeof(data));
- memset(mask, 0, sizeof(data));
- rinfo->cursor_start = RADEON_ALIGN(fbarea - (unsigned long) rinfo->fb_base, 256);
- rinfo->cursor_end = rinfo->cursor_start + size_bytes;
- radeon_load_cursor_image(info, mask, data, 1);
- }
- dbg("radeonfb: %s cursor_start: %p\r\n", rinfo->cursor_start);
-
- return (rinfo->cursor_start ? fbarea : 0);
-}
diff --git a/BaS_gcc/radeon/radeon_i2c.c b/BaS_gcc/radeon/radeon_i2c.c
deleted file mode 100644
index 55ff7a7..0000000
--- a/BaS_gcc/radeon/radeon_i2c.c
+++ /dev/null
@@ -1,237 +0,0 @@
-#include "video.h"
-#include "radeonfb.h"
-#include "edid.h"
-#include "i2c.h"
-#include "driver_mem.h"
-
-// #define DEBUG
-#include "debug.h"
-
-
-#define CONFIG_FB_RADEON_I2C
-#ifdef CONFIG_FB_RADEON_I2C
-
-#define RADEON_DDC 0x50
-
-static void radeon_gpio_setscl(void* data, int state)
-{
- struct radeon_i2c_chan *chan = data;
- struct radeonfb_info *rinfo = chan->rinfo;
- unsigned long val;
-
- val = INREG(chan->ddc_reg) & ~(VGA_DDC_CLK_OUT_EN);
-
- if (!state)
- val |= VGA_DDC_CLK_OUT_EN;
- OUTREG(chan->ddc_reg, val);
- (void) INREG(chan->ddc_reg);
-}
-
-static void radeon_gpio_setsda(void* data, int state)
-{
- struct radeon_i2c_chan *chan = data;
- struct radeonfb_info *rinfo = chan->rinfo;
- unsigned long val;
-
- val = INREG(chan->ddc_reg) & ~(VGA_DDC_DATA_OUT_EN);
- if (!state)
- val |= VGA_DDC_DATA_OUT_EN;
- OUTREG(chan->ddc_reg, val);
- (void) INREG(chan->ddc_reg);
-}
-
-static int radeon_gpio_getscl(void* data)
-{
- struct radeon_i2c_chan *chan = data;
- struct radeonfb_info *rinfo = chan->rinfo;
- unsigned long val;
-
- val = INREG(chan->ddc_reg);
- return (val & VGA_DDC_CLK_INPUT) ? 1 : 0;
-}
-
-static int radeon_gpio_getsda(void* data)
-{
- struct radeon_i2c_chan *chan = data;
- struct radeonfb_info *rinfo = chan->rinfo;
- unsigned long val;
- val = INREG(chan->ddc_reg);
- return(val & VGA_DDC_DATA_INPUT) ? 1 : 0;
-}
-
-static int radeon_setup_i2c_bus(struct radeon_i2c_chan *chan)
-{
- int rc;
- chan->adapter.algo_data = &chan->algo;
- chan->algo.setsda = radeon_gpio_setsda;
- chan->algo.setscl = radeon_gpio_setscl;
- chan->algo.getsda = radeon_gpio_getsda;
- chan->algo.getscl = radeon_gpio_getscl;
- chan->algo.udelay = 40;
- chan->algo.timeout = 20;
- chan->algo.data = chan;
- /* Raise SCL and SDA */
- radeon_gpio_setsda(chan, 1);
- radeon_gpio_setscl(chan, 1);
- udelay(20);
- rc = i2c_bit_add_bus(&chan->adapter);
- return rc;
-}
-
-void radeon_create_i2c_busses(struct radeonfb_info *rinfo)
-{
- rinfo->i2c[0].rinfo = rinfo;
- rinfo->i2c[0].ddc_reg = GPIO_MONID;
- radeon_setup_i2c_bus(&rinfo->i2c[0]);
- rinfo->i2c[1].rinfo = rinfo;
- rinfo->i2c[1].ddc_reg = GPIO_DVI_DDC;
- radeon_setup_i2c_bus(&rinfo->i2c[1]);
- rinfo->i2c[2].rinfo = rinfo;
- rinfo->i2c[2].ddc_reg = GPIO_VGA_DDC;
- radeon_setup_i2c_bus(&rinfo->i2c[2]);
- rinfo->i2c[3].rinfo = rinfo;
- rinfo->i2c[3].ddc_reg = GPIO_CRT2_DDC;
- radeon_setup_i2c_bus(&rinfo->i2c[3]);
-}
-
-#if 0
-void radeon_delete_i2c_busses(struct radeonfb_info *rinfo)
-{
- if(rinfo->i2c[0].rinfo)
- i2c_bit_del_bus(&rinfo->i2c[0].adapter);
- rinfo->i2c[0].rinfo = NULL;
- if(rinfo->i2c[1].rinfo)
- i2c_bit_del_bus(&rinfo->i2c[1].adapter);
- rinfo->i2c[1].rinfo = NULL;
- if(rinfo->i2c[2].rinfo)
- i2c_bit_del_bus(&rinfo->i2c[2].adapter);
- rinfo->i2c[2].rinfo = NULL;
- if(rinfo->i2c[3].rinfo)
- i2c_bit_del_bus(&rinfo->i2c[3].adapter);
- rinfo->i2c[3].rinfo = NULL;
-}
-#endif
-
-static unsigned char *radeon_do_probe_i2c_edid(struct radeon_i2c_chan *chan)
-{
- unsigned char start = 0x0;
- struct i2c_msg msgs[] =
- {
- {
- .addr = RADEON_DDC,
- .len = 1,
- .buf = &start,
- },
- {
- .addr = RADEON_DDC,
- .flags = I2C_M_RD,
- .len = EDID_LENGTH,
- },
- };
-
- unsigned char *buf;
-
- buf = driver_mem_alloc(EDID_LENGTH * 3);
- if (!buf)
- return NULL;
-
- msgs[1].buf = buf;
- if (i2c_transfer(&chan->adapter, msgs, 2) == 2)
- return buf;
- else
- dbg("i2c_transfer() failed\r\n");
-
- driver_mem_free(buf);
- return NULL;
-}
-
-int32_t radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int32_t conn, uint8_t **out_edid)
-{
- unsigned long reg = rinfo->i2c[conn - 1].ddc_reg;
- unsigned char *edid = NULL;
- int i, j;
-
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_DATA_OUTPUT | VGA_DDC_CLK_OUTPUT));
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN));
- (void) INREG(reg);
-
- for(i = 0; i < 3; i++)
- {
- /* For some old monitors we need the
- * following process to initialize/stop DDC
- */
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_DATA_OUT_EN));
- (void)INREG(reg);
- wait_ms(13);
-
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN));
- (void)INREG(reg);
-
- for(j = 0; j < 5; j++)
- {
- wait_ms(10);
- if (INREG(reg) & VGA_DDC_CLK_INPUT)
- break;
- }
-
- if (j == 5)
- continue;
-
- OUTREG(reg, INREG(reg) | VGA_DDC_DATA_OUT_EN);
- (void) INREG(reg);
- wait_ms(15);
-
- OUTREG(reg, INREG(reg) | VGA_DDC_CLK_OUT_EN);
- (void) INREG(reg);
- wait_ms(15);
-
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_DATA_OUT_EN));
- (void) INREG(reg);
- wait_ms(15);
-
- /* Do the real work */
- edid = radeon_do_probe_i2c_edid(&rinfo->i2c[conn - 1]);
- OUTREG(reg, INREG(reg) | (VGA_DDC_DATA_OUT_EN | VGA_DDC_CLK_OUT_EN));
- (void) INREG(reg);
- wait_ms(15);
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN));
- (void) INREG(reg);
- for(j = 0; j < 10; j++)
- {
- wait_ms(10);
- if (INREG(reg) & VGA_DDC_CLK_INPUT)
- break;
- }
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_DATA_OUT_EN));
- (void) INREG(reg);
- wait_ms(15);
-
- OUTREG(reg, INREG(reg) | (VGA_DDC_DATA_OUT_EN | VGA_DDC_CLK_OUT_EN));
- (void) INREG(reg);
-
- if (edid)
- break;
- }
- /* Release the DDC lines when done or the Apple Cinema HD display
- * will switch off */
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN | VGA_DDC_DATA_OUT_EN));
- (void) INREG(reg);
-
- if (out_edid)
- *out_edid = edid;
-
- if (!edid)
- return MT_NONE;
-
- if (edid[0x14] & 0x80)
- {
- /* Fix detection using BIOS tables */
- if(rinfo->is_mobility /*&& conn == ddc_dvi*/ && (INREG(LVDS_GEN_CNTL) & LVDS_ON))
- return MT_LCD;
- else
- return MT_DFP;
- }
- return MT_CRT;
-}
-
-#endif /* CONFIG_FB_RADEON_I2C */
diff --git a/BaS_gcc/radeon/radeon_monitor.c b/BaS_gcc/radeon/radeon_monitor.c
deleted file mode 100644
index c46b7f9..0000000
--- a/BaS_gcc/radeon/radeon_monitor.c
+++ /dev/null
@@ -1,748 +0,0 @@
-#include "radeonfb.h"
-#include "wait.h"
-#include "edid.h"
-#include "driver_mem.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "video.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#ifndef INT_MAX
-#define INT_MAX ((int) (~0U >> 1))
-#endif
-
-static struct fb_var_screeninfo radeonfb_default_var =
-{
- .xres = 640,
- .yres = 480,
- .xres_virtual = 640,
- .yres_virtual = 480,
- .bits_per_pixel = 8,
- .red = { .length = 8 },
- .green = { .length = 8 },
- .blue = { .length = 8 },
- .activate = FB_ACTIVATE_NOW,
- .height = -1,
- .width = -1,
- .pixclock = 9295,
- .left_margin = 40,
- .right_margin = 24,
- .upper_margin = 32,
- .lower_margin = 11,
- .hsync_len = 96,
- .vsync_len = 2,
- .vmode = FB_VMODE_NONINTERLACED
-};
-
-char *radeon_get_mon_name(int type)
-{
- char *pret = NULL;
- switch(type)
- {
- case MT_NONE:
- pret = "no";
- break;
- case MT_CRT:
- pret = "CRT";
- break;
- case MT_DFP:
- pret = "DFP";
- break;
- case MT_LCD:
- pret = "LCD";
- break;
- case MT_CTV:
- pret = "CTV";
- break;
- case MT_STV:
- pret = "STV";
- break;
- }
- return pret;
-}
-
-/*
- * Probe physical connection of a CRT. This code comes from XFree
- * as well and currently is only implemented for the CRT DAC, the
- * code for the TVDAC is commented out in XFree as "non working"
- */
-static int radeon_crt_is_connected(struct radeonfb_info *rinfo, int is_crt_dac)
-{
- int connected = 0;
- /*
- * the monitor either wasn't connected or it is a non-DDC CRT.
- * try to probe it
- */
- if (is_crt_dac)
- {
- unsigned long ulOrigVCLK_ECP_CNTL;
- unsigned long ulOrigDAC_CNTL;
- unsigned long ulOrigDAC_EXT_CNTL;
- unsigned long ulOrigCRTC_EXT_CNTL;
- unsigned long ulData;
- unsigned long ulMask;
-
- ulOrigVCLK_ECP_CNTL = INPLL(VCLK_ECP_CNTL);
- ulData = ulOrigVCLK_ECP_CNTL;
- ulData &= ~(PIXCLK_ALWAYS_ONb | PIXCLK_DAC_ALWAYS_ONb);
- ulMask = ~(PIXCLK_ALWAYS_ONb | PIXCLK_DAC_ALWAYS_ONb);
- OUTPLLP(VCLK_ECP_CNTL, ulData, ulMask);
- ulOrigCRTC_EXT_CNTL = INREG(CRTC_EXT_CNTL);
- ulData = ulOrigCRTC_EXT_CNTL;
- ulData |= CRTC_CRT_ON;
- OUTREG(CRTC_EXT_CNTL, ulData);
- ulOrigDAC_EXT_CNTL = INREG(DAC_EXT_CNTL);
- ulData = ulOrigDAC_EXT_CNTL;
- ulData &= ~DAC_FORCE_DATA_MASK;
- ulData |= (DAC_FORCE_BLANK_OFF_EN | DAC_FORCE_DATA_EN | DAC_FORCE_DATA_SEL_MASK);
- if ((rinfo->family == CHIP_FAMILY_RV250) || (rinfo->family == CHIP_FAMILY_RV280))
- ulData |= (0x01b6 << DAC_FORCE_DATA_SHIFT);
- else
- ulData |= (0x01ac << DAC_FORCE_DATA_SHIFT);
- OUTREG(DAC_EXT_CNTL, ulData);
- ulOrigDAC_CNTL = INREG(DAC_CNTL);
- ulData = ulOrigDAC_CNTL;
- ulData |= DAC_CMP_EN;
- ulData &= ~(DAC_RANGE_CNTL_MASK | DAC_PDWN);
- ulData |= 0x2;
- OUTREG(DAC_CNTL, ulData);
- wait_ms(1);
- ulData = INREG(DAC_CNTL);
- connected = (DAC_CMP_OUTPUT & ulData) ? 1 : 0;
- ulData = ulOrigVCLK_ECP_CNTL;
- ulMask = 0xFFFFFFFFL;
- OUTPLLP(VCLK_ECP_CNTL, ulData, ulMask);
- OUTREG(DAC_CNTL, ulOrigDAC_CNTL);
- OUTREG(DAC_EXT_CNTL, ulOrigDAC_EXT_CNTL );
- OUTREG(CRTC_EXT_CNTL, ulOrigCRTC_EXT_CNTL);
- }
- return connected ? MT_CRT : MT_NONE;
-}
-
-/*
- * Parse the "monitor_layout" string if any. This code is mostly
- * copied from XFree's radeon driver
- */
-static int radeon_parse_monitor_layout(struct radeonfb_info *rinfo, const char *monitor_layout)
-{
- char s1[5], s2[5];
- int i = 0, second = 0;
- const char *s;
-
- if ((monitor_layout == NULL) || (*monitor_layout == '\0'))
- {
- dbg("monitor_layout missing\r\n");
- return 0;
- }
-
- s = monitor_layout;
- do
- {
- switch (*s)
- {
- case ',':
- s1[i] = '\0';
- i = 0;
- second = 1;
- break;
-
- case ' ':
- case '\0':
- break;
-
- default:
- if (i >= 4)
- break;
- if (second)
- s2[i] = *s;
- else
- s1[i] = *s;
- i++;
- break;
- }
- } while(*s++);
-
- if (second)
- s2[i] = '\0';
- else
- {
- s1[i] = '\0';
- s2[0] = '\0';
- }
-
- dbg("s1=%s, s2=%s \r\n", s1, s2);
-
- if (!strcmp(s1, "CRT"))
- {
- rinfo->mon1_type = MT_CRT;
- dbg("monitor 1 set to CRT\r\n");
- }
- else if (!strcmp(s1, "TMDS"))
- {
- rinfo->mon1_type = MT_DFP;
- dbg("monitor 1 set to TMDS\r\n");
- }
- else if (!strcmp(s1, "LVDS"))
- {
- rinfo->mon1_type = MT_LCD;
- dbg("monitor 1 set to LVDS\r\n");
- }
-
- if (!strcmp(s2, "CRT"))
- {
- rinfo->mon2_type = MT_CRT;
- dbg("monitor 2 set to CRT\r\n");
- }
- else if (!strcmp(s2, "TMDS"))
- {
- rinfo->mon2_type = MT_DFP;
- dbg("monitor 2 set to TMDS\r\n");
- }
- else if (!strcmp(s2, "LVDS"))
- {
- rinfo->mon2_type = MT_LCD;
- dbg("monitor 2 set to LVDS\r\n");
- }
- return 1;
-}
-
-/*
- * Probe display on both primary and secondary card's connector (if any)
- * by i2c and try to retreive EDID. The algorithm here comes from XFree's * radeon driver
- */
-void radeon_probe_screens(struct radeonfb_info *rinfo, const char *monitor_layout, int32_t ignore_edid)
-{
-
-#ifdef CONFIG_FB_RADEON_I2C
- int ddc_crt2_used = 0;
-#endif
-
- dbg("monitor_layout=%s\r\n", monitor_layout);
- if (radeon_parse_monitor_layout(rinfo, monitor_layout))
- {
- /*
- * If user specified a monitor_layout option, use it instead
- * of auto-detecting. Maybe we should only use this argument
- * on the first radeon card probed or provide a way to specify
- * a layout for each card ?
- */
-#ifdef CONFIG_FB_RADEON_I2C
- dbg("use monitor layout\r\n");
- if (!ignore_edid)
- {
- if (rinfo->mon1_type != MT_NONE)
- {
- dbg("probe ddc_dvi on MON1\r\n");
- if (!radeon_probe_i2c_connector(rinfo, ddc_dvi, &rinfo->mon1_EDID))
- {
- dbg("probe ddc_crt2 on MON1\r\n");
- radeon_probe_i2c_connector(rinfo, ddc_crt2, &rinfo->mon1_EDID);
- ddc_crt2_used = 1;
- }
- }
- if (rinfo->mon2_type != MT_NONE)
- {
- dbg("probe ddc_vga on MON2\r\n");
- if (!radeon_probe_i2c_connector(rinfo, ddc_vga, &rinfo->mon2_EDID) && !ddc_crt2_used)
- {
- dbg("probe ddc_crt2 on MON2\r\n");
- radeon_probe_i2c_connector(rinfo, ddc_crt2, &rinfo->mon2_EDID);
- }
- }
- }
-#endif /* CONFIG_FB_RADEON_I2C */
- if (rinfo->mon1_type == MT_NONE)
- {
- if (rinfo->mon2_type != MT_NONE)
- {
- rinfo->mon1_type = rinfo->mon2_type;
- rinfo->mon1_EDID = rinfo->mon2_EDID;
- }
- else
- {
- rinfo->mon1_type = MT_CRT;
- dbg("No valid monitor, assuming CRT on first port\r\n");
- }
- rinfo->mon2_type = MT_NONE;
- rinfo->mon2_EDID = NULL;
- }
- }
- else
- {
- /*
- * Auto-detecting display type (well... trying to ...)
- */
-#ifdef CONFIG_FB_RADEON_I2C
- dbg("Auto-detecting\r\n");
-#endif
-#if 0 //#if DEBUG && defined(CONFIG_FB_RADEON_I2C)
- {
- unsigned char *EDIDs[4] = { NULL, NULL, NULL, NULL };
- int mon_types[4] = {MT_NONE, MT_NONE, MT_NONE, MT_NONE};
- int i;
- for(i = 0; i < 4; i++)
- mon_types[i] = radeon_probe_i2c_connector(rinfo, i+1, &EDIDs[i]);
- }
-#endif /* DEBUG */
- /*
- * Old single head cards
- */
- if (!rinfo->has_CRTC2)
- {
-#ifdef CONFIG_FB_RADEON_I2C
- if (rinfo->mon1_type == MT_NONE)
- {
- dbg("probe ddc_dvi on MON1\r\n");
- rinfo->mon1_type = radeon_probe_i2c_connector(rinfo, ddc_dvi, &rinfo->mon1_EDID);
- }
- if (rinfo->mon1_type == MT_NONE)
- {
- dbg("probe ddc_vga on MON1\r\n");
- rinfo->mon1_type = radeon_probe_i2c_connector(rinfo, ddc_vga, &rinfo->mon1_EDID);
- }
- if (rinfo->mon1_type == MT_NONE)
- {
- dbg("probe ddc_crt2 on MON1\r\n");
- rinfo->mon1_type = radeon_probe_i2c_connector(rinfo, ddc_crt2, &rinfo->mon1_EDID);
- }
-#endif /* CONFIG_FB_RADEON_I2C */
- if (rinfo->mon1_type == MT_NONE)
- rinfo->mon1_type = MT_CRT;
- goto bail;
- }
- /*
- * Probe primary head (DVI or laptop internal panel)
- */
-#ifdef CONFIG_FB_RADEON_I2C
- if (rinfo->mon1_type == MT_NONE)
- {
- dbg("probe ddc_dvi on MON1\r\n");
- rinfo->mon1_type = radeon_probe_i2c_connector(rinfo, ddc_dvi, &rinfo->mon1_EDID);
- }
- if (rinfo->mon1_type == MT_NONE)
- {
- dbg("probe ddc_crt2 on MON1\r\n");
- rinfo->mon1_type = radeon_probe_i2c_connector(rinfo, ddc_crt2, &rinfo->mon1_EDID);
- if (rinfo->mon1_type != MT_NONE)
- ddc_crt2_used = 1;
- }
-#endif /* CONFIG_FB_RADEON_I2C */
- if (rinfo->mon1_type == MT_NONE && rinfo->is_mobility
- && (INREG(LVDS_GEN_CNTL) & LVDS_ON))
- {
- rinfo->mon1_type = MT_LCD;
- dbg("Non-DDC laptop panel detected\r\n");
- }
- if (rinfo->mon1_type == MT_NONE)
- rinfo->mon1_type = radeon_crt_is_connected(rinfo, rinfo->reversed_DAC);
- /*
- * Probe secondary head (mostly VGA, can be DVI)
- */
-#ifdef CONFIG_FB_RADEON_I2C
- if (rinfo->mon2_type == MT_NONE)
- {
- dbg("probe ddc_vga on MON2\r\n");
- rinfo->mon2_type = radeon_probe_i2c_connector(rinfo, ddc_vga, &rinfo->mon2_EDID);
- }
- if (rinfo->mon2_type == MT_NONE && !ddc_crt2_used)
- {
- dbg("probe ddc_crt2 on MON2\r\n");
- rinfo->mon2_type = radeon_probe_i2c_connector(rinfo, ddc_crt2, &rinfo->mon2_EDID);
- }
-#endif /* CONFIG_FB_RADEON_I2C */
- if (rinfo->mon2_type == MT_NONE)
- rinfo->mon2_type = radeon_crt_is_connected(rinfo, !rinfo->reversed_DAC);
- /*
- * If we only detected port 2, we swap them, if none detected,
- * assume CRT (maybe fallback to old BIOS_SCRATCH stuff ? or look
- * at FP registers ?)
- */
- if (rinfo->mon1_type == MT_NONE)
- {
- if (rinfo->mon2_type != MT_NONE)
- {
- rinfo->mon1_type = rinfo->mon2_type;
- rinfo->mon1_EDID = rinfo->mon2_EDID;
- }
- else
- rinfo->mon1_type = MT_CRT;
-
- rinfo->mon2_type = MT_NONE;
- rinfo->mon2_EDID = NULL;
- }
- /*
- * Deal with reversed TMDS
- */
- if (rinfo->reversed_TMDS)
- {
- /* Always keep internal TMDS as primary head */
- if (rinfo->mon1_type == MT_DFP || rinfo->mon2_type == MT_DFP)
- {
- int tmp_type = rinfo->mon1_type;
- unsigned char *tmp_EDID = rinfo->mon1_EDID;
- rinfo->mon1_type = rinfo->mon2_type;
- rinfo->mon1_EDID = rinfo->mon2_EDID;
- rinfo->mon2_type = tmp_type;
- rinfo->mon2_EDID = tmp_EDID;
- if (rinfo->mon1_type == MT_CRT || rinfo->mon2_type == MT_CRT)
- rinfo->reversed_DAC ^= 1;
- }
- }
- }
-
- if (ignore_edid)
- {
- driver_mem_free(rinfo->mon1_EDID);
- rinfo->mon1_EDID = NULL;
- driver_mem_free(rinfo->mon2_EDID);
- rinfo->mon2_EDID = NULL;
- }
-
-bail:
- dbg("Monitor 1 type %s found\r\n", radeon_get_mon_name(rinfo->mon1_type));
- if (rinfo->mon1_EDID)
- {
- dbg("EDID probed\r\n");
- }
-
- if (!rinfo->has_CRTC2)
- return;
- dbg("Monitor 2 type %s\r\n", radeon_get_mon_name(rinfo->mon2_type));
- if (rinfo->mon2_EDID)
- {
- dbg("EDID probed\r\n");
- }
-}
-
-/*
- * Fill up panel infos from a mode definition, either returned by the EDID
- * or from the default mode when we can't do any better
- */
-static void radeon_var_to_panel_info(struct radeonfb_info *rinfo, struct fb_var_screeninfo *var)
-{
- rinfo->panel_info.xres = var->xres;
- rinfo->panel_info.yres = var->yres;
- rinfo->panel_info.clock = 100000000 / var->pixclock;
- rinfo->panel_info.hOver_plus = var->right_margin;
- rinfo->panel_info.hSync_width = var->hsync_len;
- rinfo->panel_info.hblank = var->left_margin + (var->right_margin + var->hsync_len);
- rinfo->panel_info.vOver_plus = var->lower_margin;
- rinfo->panel_info.vSync_width = var->vsync_len;
- rinfo->panel_info.vblank = var->upper_margin + (var->lower_margin + var->vsync_len);
- rinfo->panel_info.hAct_high = (var->sync & FB_SYNC_HOR_HIGH_ACT) != 0;
- rinfo->panel_info.vAct_high = (var->sync & FB_SYNC_VERT_HIGH_ACT) != 0;
- rinfo->panel_info.valid = 1;
-
- /*
- * We use a default of 200ms for the panel power delay,
- * I need to have a real schedule() instead of mdelay's in the panel code.
- * we might be possible to figure out a better power delay either from
- * MacOS OF tree or from the EDID block (proprietary extensions ?)
- */
- rinfo->panel_info.pwr_delay = 200;
-}
-
-static void radeon_videomode_to_var(struct fb_var_screeninfo *var,
- const struct fb_videomode *mode)
-{
- var->xres = mode->xres;
- var->yres = mode->yres;
- var->xres_virtual = mode->xres;
- var->yres_virtual = mode->yres;
- var->xoffset = 0;
- var->yoffset = 0;
- var->pixclock = mode->pixclock;
- var->left_margin = mode->left_margin;
- var->right_margin = mode->right_margin;
- var->upper_margin = mode->upper_margin;
- var->lower_margin = mode->lower_margin;
- var->hsync_len = mode->hsync_len;
- var->vsync_len = mode->vsync_len;
- var->sync = mode->sync;
- var->vmode = mode->vmode;
-}
-
-/*
- * Build the modedb for head 1 (head 2 will come later), check panel infos
- * from either BIOS or EDID, and pick up the default mode
- */
-void radeon_check_modes(struct radeonfb_info *rinfo, struct mode_option *resolution)
-{
- struct fb_info *info = rinfo->info;
- int has_default_mode = 0;
- struct mode_option xres_yres;
- dbg("\r\n");
-
- /*
- * Fill default var first
- */
- memcpy(&info->var, &radeonfb_default_var, sizeof(struct fb_var_screeninfo));
-
- /*
- * Parse EDID detailed timings and deduce panel infos if any. Right now
- * we only deal with first entry returned by parse_EDID, we may do better
- * some day...
- */
- if (!rinfo->panel_info.use_bios_dividers
- && rinfo->mon1_type != MT_CRT && rinfo->mon1_EDID)
- {
- struct fb_var_screeninfo var;
-
- dbg("fb_parse_edid\r\n");
- if (fb_parse_edid(rinfo->mon1_EDID, &var) == 0)
- {
- if ((var.xres >= rinfo->panel_info.xres) && (var.yres >= rinfo->panel_info.yres))
- radeon_var_to_panel_info(rinfo, &var);
- }
- else
- {
- dbg("no data to parse\r\n");
- }
- }
- /*
- * If we have some valid panel infos, we setup the default mode based on
- * those
- */
- if (rinfo->mon1_type != MT_CRT && rinfo->panel_info.valid)
- {
- struct fb_var_screeninfo *var = &info->var;
-
- dbg("setup the default mode based on panel info\r\n");
- var->xres = rinfo->panel_info.xres;
- var->yres = rinfo->panel_info.yres;
- var->xres_virtual = rinfo->panel_info.xres;
- var->yres_virtual = rinfo->panel_info.yres;
- var->xoffset = var->yoffset = 0;
- var->bits_per_pixel = 8;
- var->pixclock = 100000000 / rinfo->panel_info.clock;
- var->left_margin = (rinfo->panel_info.hblank - rinfo->panel_info.hOver_plus - rinfo->panel_info.hSync_width);
- var->right_margin = rinfo->panel_info.hOver_plus;
- var->upper_margin = (rinfo->panel_info.vblank - rinfo->panel_info.vOver_plus - rinfo->panel_info.vSync_width);
- var->lower_margin = rinfo->panel_info.vOver_plus;
- var->hsync_len = rinfo->panel_info.hSync_width;
- var->vsync_len = rinfo->panel_info.vSync_width;
- var->sync = 0;
-
- if (rinfo->panel_info.hAct_high)
- var->sync |= FB_SYNC_HOR_HIGH_ACT;
-
- if (rinfo->panel_info.vAct_high)
- var->sync |= FB_SYNC_VERT_HIGH_ACT;
-
- var->vmode = 0;
- has_default_mode = 1;
- }
-
- /*
- * Now build modedb from EDID
- */
- if (rinfo->mon1_EDID)
- {
- fb_edid_to_monspecs(rinfo->mon1_EDID, &info->monspecs);
- rinfo->mon1_modedb = info->monspecs.modedb;
- rinfo->mon1_dbsize = info->monspecs.modedb_len;
- }
- /*
- * Finally, if we don't have panel infos we need to figure some (or
- * we try to read it from card), we try to pick a default mode
- * and create some panel infos. Whatever...
- */
- if (rinfo->mon1_type != MT_CRT && !rinfo->panel_info.valid)
- {
- struct fb_videomode *modedb;
- int dbsize;
-
- if (rinfo->panel_info.xres == 0 || rinfo->panel_info.yres == 0)
- {
- unsigned long tmp = INREG(FP_HORZ_STRETCH) & HORZ_PANEL_SIZE;
-
- rinfo->panel_info.xres = ((tmp >> HORZ_PANEL_SHIFT) + 1) * 8;
-
- tmp = INREG(FP_VERT_STRETCH) & VERT_PANEL_SIZE;
- rinfo->panel_info.yres = (tmp >> VERT_PANEL_SHIFT) + 1;
- }
-
- if ((rinfo->panel_info.xres <= 8) || (rinfo->panel_info.yres <= 1))
- {
- rinfo->mon1_type = MT_CRT;
- goto pickup_default;
- }
- modedb = rinfo->mon1_modedb;
- dbsize = rinfo->mon1_dbsize;
- xres_yres.used = 1;
- xres_yres.width = rinfo->panel_info.xres;
- xres_yres.height = rinfo->panel_info.yres;
- xres_yres.bpp = xres_yres.freq = 0;
- if (fb_find_mode(&info->var, info, &xres_yres, modedb, dbsize, NULL,
- (resolution->bpp >= 8) ? (unsigned int)resolution->bpp : 8) == 0)
- {
- rinfo->mon1_type = MT_CRT;
- goto pickup_default;
- }
- has_default_mode = 1;
- radeon_var_to_panel_info(rinfo, &info->var);
- }
-
-pickup_default:
-
- /*
- * Apply passed-in mode option if any
- */
- if (resolution->used)
- {
- if (fb_find_mode(&info->var, info, resolution, info->monspecs.modedb,
- info->monspecs.modedb_len, NULL, (resolution->bpp >= 8) ? (unsigned int)resolution->bpp : 8) != 0)
- has_default_mode = 1;
- }
-
- /*
- * Still no mode, let's pick up a default from the db
- */
- if (!has_default_mode && info->monspecs.modedb != NULL)
- {
- struct fb_monspecs *specs = &info->monspecs;
- struct fb_videomode *modedb = NULL;
-
- /* get preferred timing */
- if (specs->misc & FB_MISC_1ST_DETAIL)
- {
- int i;
- for(i = 0; i < specs->modedb_len; i++)
- {
- if (specs->modedb[i].flag & FB_MODE_IS_FIRST)
- {
- modedb = &specs->modedb[i];
- break;
- }
- }
- }
- else
- {
- /* otherwise, get first mode in database */
- modedb = &specs->modedb[0];
- }
-
- if (modedb != NULL)
- {
- info->var.bits_per_pixel = 8;
- radeon_videomode_to_var(&info->var, modedb);
- has_default_mode = 1;
- }
- }
-}
-
-/*
- * The code below is used to pick up a mode in check_var and
- * set_var. It should be made generic
- */
-
-/*
- * This is used when looking for modes. We assign a "distance" value
- * to a mode in the modedb depending how "close" it is from what we
- * are looking for.
- * Currently, we don't compare that much, we could do better but
- * the current fbcon doesn't quite mind ;)
- */
-static int radeon_compare_modes(const struct fb_var_screeninfo *var,
- const struct fb_videomode *mode)
-{
- int distance = 0;
-
- distance = mode->yres - var->yres;
- distance += (mode->xres - var->xres)/2;
-
- return distance;
-}
-
-/*
- * This function is called by check_var, it gets the passed in mode parameter, and
- * outputs a valid mode matching the passed-in one as closely as possible.
- * We need something better ultimately.
- */
-int32_t radeon_match_mode(struct radeonfb_info *rinfo,
- struct fb_var_screeninfo *dest,
- const struct fb_var_screeninfo *src)
-{
- const struct fb_videomode *db = vesa_modes;
- int i, dbsize = 34;
- int has_rmx, native_db = 0;
- int distance = INT_MAX;
- const struct fb_videomode *candidate = NULL;
-
- dbg("\r\n");
-
- /* Start with a copy of the requested mode */
- memcpy(dest, src, sizeof(struct fb_var_screeninfo));
-
- /* Check if we have a modedb built from EDID */
- if (rinfo->mon1_modedb)
- {
- db = rinfo->mon1_modedb;
- dbsize = rinfo->mon1_dbsize;
- native_db = 1;
- }
- /* Check if we have a scaler allowing any fancy mode */
- has_rmx = (rinfo->mon1_type == MT_LCD) || (rinfo->mon1_type == MT_DFP);
-
- /* If we have a scaler and are passed FB_ACTIVATE_TEST or
- * FB_ACTIVATE_NOW, just do basic checking and return if the
- * mode match
- */
- if ((src->activate & FB_ACTIVATE_MASK) == FB_ACTIVATE_TEST
- || (src->activate & FB_ACTIVATE_MASK) == FB_ACTIVATE_NOW)
- {
- /* We don't have an RMX, validate timings. If we don't have
- * monspecs, we should be paranoid and not let use go above
- * 640x480-60, but I assume userland knows what it's doing here
- * (though I may be proven wrong...)
- */
- if ((has_rmx == 0) && rinfo->mon1_modedb)
- {
- if (fb_validate_mode((struct fb_var_screeninfo *)src, rinfo->info))
- return -1; //-EINVAL;
- }
- return 0;
- }
- dbg("look for a mode in the database\r\n");
-
- /* Now look for a mode in the database */
- while(db)
- {
- for (i = 0; i < dbsize; i++)
- {
- int d;
-
- if ((db[i].yres < src->yres) || (db[i].xres < src->xres))
- continue;
- d = radeon_compare_modes(src, &db[i]);
- /* If the new mode is at least as good as the previous one,
- * then it's our new candidate
- */
- if (d < distance)
- {
- candidate = &db[i];
- distance = d;
- }
- }
- db = NULL;
- /* If we have a scaler, we allow any mode from the database */
- if (native_db && has_rmx)
- {
- db = vesa_modes;
- dbsize = 34;
- native_db = 0;
- }
- }
- /* If we have found a match, return it */
- if (candidate != NULL)
- {
- radeon_videomode_to_var(dest, candidate);
- return 0;
- }
- /* If we haven't and don't have a scaler, fail */
- if (!has_rmx)
- return -1; //-EINVAL;
- return 0;
-}
diff --git a/BaS_gcc/spi/dspi.c b/BaS_gcc/spi/dspi.c
deleted file mode 100644
index 6b77a99..0000000
--- a/BaS_gcc/spi/dspi.c
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
- * dspi.c
- *
- * Coldfire DSPI (DMA Serial Peripherial Interface).
- *
- * On the Coldfire, the DSPI interface supports 4 SPI output channels and one input channel.
- * On the Firebee, DSPICS5 is connected to the SD card slot.
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 16.10.2013
- * Author: mfro
- */
-
-#include
-#include
-
-struct baudrate
-{
- int br_divisor;
- int pbr_divisor;
- int divider;
-};
-
-static const int system_clock = 132000000; /* System clock in Hz */
-
-static struct baudrate baudrates[] =
-{
- { 0b0000, 0b00, 4 },
- { 0b0000, 0b01, 6 },
- { 0b0001, 0b00, 8 },
- { 0b0000, 0b10, 10 },
- { 0b0001, 0b01, 12 },
- { 0b0010, 0b00, 12 },
- { 0b0000, 0b11, 14 },
- { 0b0011, 0b00, 16 },
- { 0b0010, 0b01, 18 },
- { 0b0001, 0b10, 20 },
- { 0b0011, 0b01, 24 },
- { 0b0001, 0b11, 28 },
- { 0b0010, 0b10, 30 },
- { 0b0100, 0b00, 32 },
- { 0b0011, 0b10, 40 },
- { 0b0010, 0b11, 42 },
- { 0b0100, 0b01, 48 },
- { 0b0011, 0b11, 56 },
- { 0b0101, 0b00, 64 },
- { 0b0100, 0b10, 80 },
- { 0b0101, 0b01, 96 },
- { 0b0100, 0b11, 112 },
- { 0b0110, 0b00, 128 },
- { 0b0101, 0b10, 160 },
- { 0b0110, 0b01, 192 },
- { 0b0101, 0b11, 224 },
- { 0b0111, 0b00, 256 },
- { 0b0110, 0b10, 320 },
- { 0b0111, 0b01, 384 },
- { 0b0110, 0b11, 448 },
- { 0b1000, 0b00, 512 },
- { 0b0111, 0b10, 640 },
- { 0b1000, 0b01, 768 },
- { 0b0111, 0b11, 896 },
- { 0b1001, 0b00, 1024 },
- { 0b1000, 0b10, 1280 },
- { 0b1001, 0b01, 1536 },
- { 0b1000, 0b11, 1792 },
- { 0b1010, 0b00, 2048 },
- { 0b1001, 0b10, 2560 },
- { 0b1010, 0b01, 3072 },
- { 0b1001, 0b11, 3584 },
- { 0b1011, 0b00, 4096 },
- { 0b1010, 0b10, 5120 },
- { 0b1011, 0b01, 6144 },
- { 0b1010, 0b11, 7168 },
- { 0b1100, 0b00, 8192 },
- { 0b1011, 0b10, 10240 },
- { 0b1100, 0b01, 12288 },
- { 0b1011, 0b11, 14336 },
- { 0b1101, 0b00, 16384 },
- { 0b1100, 0b10, 20480 },
- { 0b1101, 0b01, 24576 },
- { 0b1100, 0b11, 28672 },
- { 0b1110, 0b00, 32768 },
- { 0b1101, 0b10, 40960 },
- { 0b1110, 0b01, 49152 },
- { 0b1101, 0b11, 57344 },
- { 0b1111, 0b00, 65536 },
- { 0b1110, 0b10, 81920 },
- { 0b1111, 0b01, 98304 },
- { 0b1110, 0b11, 114688 },
- { 0b1111, 0b10, 163840 },
- { 0b1111, 0b11, 229376 },
-};
-
-/*
- * set the dspi clock to rate or - if no exact match possible - to the next lower possible baudrate
- */
-int dspi_set_baudrate(int rate)
-{
- int set_baudrate = 0;
- int br;
- int pbr;
- int i;
-
- for (i = sizeof(baudrates) / sizeof(struct baudrate) - 1; i >= 0; i--)
- {
- set_baudrate = system_clock / baudrates[i].divider;
-
- if (set_baudrate > rate)
- {
- continue;
- }
- br = baudrates[i].br_divisor;
- pbr = baudrates[i].pbr_divisor;
-
- /* TODO: set br and pbr here */
- (void) pbr;
- (void) br;
- return set_baudrate;
- }
-
- return 0;
-}
-
-static uint32_t dspi_fifo_val = MCF_DSPI_DTFR_CTCNT;
-
-/*
- * Exchange a byte. If last is false (0), there will be more bytes to follow (EOQ flag in DTFR left unset)
- */
-uint8_t dspi_xchg_byte(int device, uint8_t byte, int last)
-{
- uint32_t fifo;
- uint8_t res;
-
- fifo = dspi_fifo_val | (byte & 0xff); /* transfer bytes only */
- fifo |= (last ? MCF_DSPI_DTFR_EOQ : 0); /* mark last transfer */
- MCF_DSPI_DTFR = fifo;
- while (! (MCF_DSPI_DSR & MCF_DSPI_DSR_TCF)); /* wait until DSPI transfer complete */
- fifo = MCF_DSPI_DRFR; /* read transferred word */
-
- MCF_DSPI_DSR = -1; /* clear DSPI status register */
-
- res = fifo & 0xff;
-
- return res;
-}
-
-/* Receive multiple byte with 0xff as output
- *
- * buff: pointer to data buffer
- * btr: number of bytes to receive (16, 64 or 512)
- */
-void dspi_rcv_byte_multi(int device, uint8_t *buff, uint32_t count)
-{
- int i;
-
- for (i = 0; i < count - 1; i++)
- *buff++ = dspi_xchg_byte(device, 0xff, 0);
- *buff++ = dspi_xchg_byte(device, 0xff, 1); /* transfer last byte and stop transmission */
-}
-
-/* Send multiple byte, discard input
- *
- * buff: pointer to data
- * btx: number of bytes to send
- */
-void dspi_xmt_byte_multi(int device, const uint8_t *buff, uint32_t btx)
-{
- int i;
-
- for (i = 0; i < btx - 1; i++)
- dspi_xchg_byte(device, *buff++, 0);
- dspi_xchg_byte(device, *buff++, 1); /* transfer last byte and indicate end of transmission */
-}
-
diff --git a/BaS_gcc/spi/mmc.c b/BaS_gcc/spi/mmc.c
deleted file mode 100644
index 8819b59..0000000
--- a/BaS_gcc/spi/mmc.c
+++ /dev/null
@@ -1,814 +0,0 @@
-#include
-#include
-#include
-#include
-#include
-#include
-
-/*
- * Firebee: MMCv3/SDv1/SDv2 (SPI mode) control module
- *
- *
- * Copyright (C) 2011, ChaN, all right reserved.
- *
- * This software is a free software and there is NO WARRANTY.
- * No restriction on use. You can use, modify and redistribute it for
- * personal, non-profit or commercial products UNDER YOUR RESPONSIBILITY.
- * Redistributions of source code must retain the above copyright notice.
- *
- */
-
-/* Copyright (C) 2012, mfro, all rights reserved. */
-
-// // #define DEBUG_MMC
-#ifdef DEBUG_MMC
-#define debug_printf(format, arg...) do { xprintf("DEBUG: " format "\r\n", ##arg); } while (0)
-#else
-#define debug_printf(format, arg...) do { ; } while (0)
-#endif /* DEBUG_MMC */
-
-#define CS_LOW() { dspi_fifo_val |= MCF_DSPI_DTFR_CS5; }
-#define CS_HIGH() { dspi_fifo_val &= ~MCF_DSPI_DTFR_CS5; }
-
-/*
- * DCTAR_PBR (baud rate prescaler) and DCTAR_BR (baud rate scaler) together determine the SPI baud rate. The forumula is
- *
- * baud rate = system clock / DCTAR_PBR * 1 / DCTAR_BR.
- *
- * System clock for the Firebee is 133 MHZ.
- *
- * The SPICLK_FAST() example calculates as follows: baud rate = 133 MHz / 3 * 1 / 2 = 22,16 MHz
- * SPICLK_SLOW() should be between 100 and 400 kHz: 133 MHz / 1 * 1 / 1024 = 129 kHz
- */
-#define SPICLK_FAST() { MCF_DSPI_DCTAR0 = MCF_DSPI_DCTAR_TRSZ(0b0111) | /* transfer size = 8 bit */ \
- MCF_DSPI_DCTAR_PCSSCK(0b01) | /* 3 clock DSPICS to DSPISCK delay prescaler */ \
- MCF_DSPI_DCTAR_PASC_3CLK | /* 3 clock DSPISCK to DSPICS negation prescaler */ \
- MCF_DSPI_DCTAR_PDT_3CLK | /* 3 clock delay between DSPICS assertions prescaler */ \
- MCF_DSPI_DCTAR_PBR_1CLK | /* 3 clock baudrate prescaler */ \
- MCF_DSPI_DCTAR_CSSCK(1) | /* delay scaler * 4 */\
- MCF_DSPI_DCTAR_ASC(0b0001) | /* 2 */ \
- MCF_DSPI_DCTAR_DT(0b0010) | /* 2 */ \
- MCF_DSPI_DCTAR_BR(0b0001); } /* clock / 2 */
-
-#define SPICLK_SLOW() { \
- MCF_DSPI_DCTAR0 = MCF_DSPI_DCTAR_TRSZ(0b111) | /* transfer size = 8 bit */ \
- MCF_DSPI_DCTAR_PCSSCK(0b01) | /* 3 clock DSPICS to DSPISCK delay prescaler */ \
- MCF_DSPI_DCTAR_PASC_3CLK | /* 3 clock DSPISCK to DSPICS negation prescaler */ \
- MCF_DSPI_DCTAR_PDT_3CLK | /* 3 clock delay between DSPICS assertions prescaler */ \
- MCF_DSPI_DCTAR_PBR_3CLK | /* 1 clock baudrate prescaler */ \
- MCF_DSPI_DCTAR_CSSCK(8) | /* delay scaler * 512 */\
- MCF_DSPI_DCTAR_ASC(8) | /* 2 */ \
- MCF_DSPI_DCTAR_DT(9) | /* 2 */ \
- MCF_DSPI_DCTAR_BR(7); \
- }
-
-
-
-/*--------------------------------------------------------------------------
-
- Module Private Functions
-
----------------------------------------------------------------------------*/
-
-#include "diskio.h"
-
-
-/* MMC/SD command */
-#define CMD0 (0) /* GO_IDLE_STATE */
-#define CMD1 (1) /* SEND_OP_COND (MMC) */
-#define ACMD41 (0x80+41) /* SEND_OP_COND (SDC) */
-#define CMD8 (8) /* SEND_IF_COND */
-#define CMD9 (9) /* SEND_CSD */
-#define CMD10 (10) /* SEND_CID */
-#define CMD12 (12) /* STOP_TRANSMISSION */
-#define ACMD13 (0x80+13) /* SD_STATUS (SDC) */
-#define CMD16 (16) /* SET_BLOCKLEN */
-#define CMD17 (17) /* READ_SINGLE_BLOCK */
-#define CMD18 (18) /* READ_MULTIPLE_BLOCK */
-#define CMD23 (23) /* SET_BLOCK_COUNT (MMC) */
-#define ACMD23 (0x80+23) /* SET_WR_BLK_ERASE_COUNT (SDC) */
-#define CMD24 (24) /* WRITE_BLOCK */
-#define CMD25 (25) /* WRITE_MULTIPLE_BLOCK */
-#define CMD32 (32) /* ERASE_ER_BLK_START */
-#define CMD33 (33) /* ERASE_ER_BLK_END */
-#define CMD38 (38) /* ERASE */
-#define CMD55 (55) /* APP_CMD */
-#define CMD58 (58) /* READ_OCR */
-
-
-static volatile DSTATUS Stat = 0 /* STA_NOINIT */; /* Physical drive status */
-static uint8_t CardType; /* Card type flags */
-
-
-static uint32_t dspi_fifo_val = MCF_DSPI_DTFR_CTCNT;
-
-/*-----------------------------------------------------------------------*/
-/* Send/Receive data to the MMC (Platform dependent) */
-/*-----------------------------------------------------------------------*/
-
-/*
- * Exchange a byte. If last is false (0), there will be more bytes to follow (EOQ flag in DTFR left unset)
- */
-static uint8_t xchg_spi(uint8_t byte, int last)
-{
- uint32_t fifo;
- uint8_t res;
-
- fifo = dspi_fifo_val | (byte & 0xff); /* transfer bytes only */
- //fifo |= (last ? MCF_DSPI_DTFR_EOQ : 0); /* mark last transfer */
- MCF_DSPI_DTFR = fifo;
- while (! (MCF_DSPI_DSR & MCF_DSPI_DSR_TCF)); /* wait until DSPI transfer complete */
- fifo = MCF_DSPI_DRFR; /* read transferred word */
-
- MCF_DSPI_DSR = -1; /* clear DSPI status register */
-
- res = fifo & 0xff;
-
- return res;
-}
-
-
-/* Receive multiple byte
- *
- * buff: pointer to data buffer
- * btr: number of bytes to receive (16, 64 or 512)
- */
-static void rcvr_spi_multi(uint8_t *buff, uint32_t count)
-{
- int i;
-
- for (i = 0; i < count - 1; i++)
- *buff++ = xchg_spi(0xff, 0);
- *buff++ = xchg_spi(0xff, 1); /* transfer last byte and stop transmission */
-}
-
-
-#if _USE_WRITE
-/* Send multiple byte
- *
- * buff: pointer to data
- * btx: number of bytes to send
- */
-static void xmit_spi_multi(const uint8_t *buff, uint32_t btx)
-{
- int i;
-
- for (i = 0; i < btx - 1; i++)
- xchg_spi(*buff++, 0);
- xchg_spi(*buff++, 1); /* transfer last byte and indicate end of transmission */
-}
-#endif
-
-
-static bool card_ready(void)
-{
- uint8_t d;
-
- d = xchg_spi(0xff, 1);
- return (d == 0xff);
-}
-
-/*
- * Wait for card ready
- *
- * wt: timeout in ns
- * returns 1: ready, 0: timeout
- */
-static int wait_ready(uint32_t wt)
-{
- return waitfor(wt * 1000, card_ready);
-}
-
-
-
-/*
- * Deselect card and release SPI
- */
-static void deselect(void)
-{
- CS_HIGH();
- wait_ready(50); /* Dummy clock (force DO hi-z for multiple slave SPI) */
-}
-
-
-
-/*
- * Select card and wait for ready
- */
-
-static int select(void) /* 1:OK, 0:Timeout */
-{
- CS_LOW();
-
- if (wait_ready(500))
- return 1; /* OK */
- deselect();
- return 0; /* Timeout */
-}
-
-
-
-/*
- * Control SPI module (Platform dependent)
- */
-static void power_on(void) /* Enable SSP module */
-{
- MCF_PAD_PAR_DSPI = 0x1fff; /* configure all DSPI GPIO pins for DSPI usage */
- dspi_fifo_val = MCF_DSPI_DTFR_CTCNT;
- /*
- * initialize DSPI module configuration register
- */
- MCF_DSPI_DMCR = MCF_DSPI_DMCR_MSTR | /* FireBee is DSPI master*/
- MCF_DSPI_DMCR_CSIS5 | /* CS5 inactive state high */
- MCF_DSPI_DMCR_CSIS3 | /* CS3 inactive state high */
- MCF_DSPI_DMCR_CSIS2 | /* CS2 inactive state high */
- MCF_DSPI_DMCR_CSIS0 | /* CS0 inactive state high */
- MCF_DSPI_DMCR_DTXF | /* disable transmit FIFO */
- MCF_DSPI_DMCR_DRXF | /* disable receive FIFO */
- MCF_DSPI_DMCR_CTXF | /* clear transmit FIFO */
- MCF_DSPI_DMCR_CRXF; /* clear receive FIFO */
-
- /* initialize DSPI clock and transfer attributes register 0 */
- SPICLK_SLOW();
-
- CS_HIGH(); /* Set CS# high */
-
- /* card should now be initialized as MMC */
-
- wait(10 * 1000); /* 10ms */
-}
-
-
-static void power_off (void) /* Disable SPI function */
-{
- select(); /* Wait for card ready */
- deselect();
-}
-
-
-/*-----------------------------------------------------------------------*/
-/* Receive a data packet from the MMC */
-/*-----------------------------------------------------------------------*/
-static int rcvr_datablock(uint8_t *buff, uint32_t btr)
-{
- uint8_t token;
- int32_t target = MCF_SLT_SCNT(0) - (200L * 1000L * 132L);
-
- do { /* Wait for DataStart token in timeout of 200ms */
- token = xchg_spi(0xFF, 0);
- } while ((token == 0xFF) && MCF_SLT_SCNT(0) - target > 0);
-
- if (token == 0xff)
- {
- debug_printf("no data start token received after 2000ms in rcvr_datablock\r\n");
- return 0;
- }
-
- if (token != 0xFE)
- {
- debug_printf("invalid token (%x) in rcvr_datablock()!\r\n", token);
- return 0; /* Function fails if invalid DataStart token or timeout */
- }
-
- rcvr_spi_multi(buff, btr); /* Store trailing data to the buffer */
-
- xchg_spi(0xFF, 1);
- xchg_spi(0xFF, 1); /* Discard CRC */
-
- return 1; /* Function succeeded */
-}
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Send a data packet to the MMC */
-/*-----------------------------------------------------------------------*/
-
-#if _USE_WRITE
-static int xmit_datablock(const uint8_t *buff, uint8_t token)
-{
- uint8_t resp;
-
-
- if (!wait_ready(500))
- {
- debug_printf("card did not respond ready after 500 ms in xmit_datablock()\r\n");
- return 0; /* Wait for card ready */
- }
-
- xchg_spi(token, 1); /* Send token */
- if (token != 0xFD) { /* Send data if token is other than StopTran */
- xmit_spi_multi(buff, 512); /* Data */
- xchg_spi(0xFF, 1);
- xchg_spi(0xFF, 1); /* Dummy CRC */
-
- resp = xchg_spi(0xFF, 1); /* Receive data resp */
- if ((resp & 0x1F) != 0x05) /* Function fails if the data packet was not accepted */
- {
- debug_printf("card did not accept data packet in xmit_datablock() (resp = %x)\r\n", resp & 0x1F);
- return 0;
- }
- }
-
- wait_ready(30);
-
- return 1;
-}
-#endif
-
-
-/*-----------------------------------------------------------------------*/
-/* Send a command packet to the MMC */
-/*-----------------------------------------------------------------------*/
-
-static uint8_t send_cmd(uint8_t cmd, uint32_t arg)
-{
- int n;
- int res;
-
- if (cmd & 0x80)
- { /* Send a CMD55 prior to ACMD */
- cmd &= 0x7F;
- res = send_cmd(CMD55, 0);
- if (res > 1)
- return res;
- }
-
- /* Select card */
- deselect();
- if (!select())
- {
- debug_printf("card could not be selected in send_cmd()\r\n");
- return 0xFF;
- }
-
- if (!wait_ready(500))
- {
- debug_printf("card did not respond ready after 5000 ms in send_cmd()\r\n");
- return 0xff; /* Wait for card ready */
- }
-
- /* Send command packet */
- xchg_spi(0x40 | cmd, 0); /* Start + command index */
- xchg_spi((uint8_t)(arg >> 24), 0); /* Argument[31..24] */
- xchg_spi((uint8_t)(arg >> 16), 0); /* Argument[23..16] */
- xchg_spi((uint8_t)(arg >> 8), 0); /* Argument[15..8] */
- xchg_spi((uint8_t)arg, 1); /* Argument[7..0] */
-
- n = 0x01; /* Dummy CRC + Stop */
- if (cmd == CMD0)
- n = 0x95; /* Valid CRC for CMD0(0) */
- if (cmd == CMD8)
- n = 0x87; /* Valid CRC for CMD8(0x1AA) */
- xchg_spi(n, 0);
-
- /* Receive command resp */
- if (cmd == CMD12)
- {
- xchg_spi(0xFF, 0); /* Discard following one byte when CMD12 */
- }
-
- n = 1000; /* Wait for response (1000 bytes max) */
- do
- res = xchg_spi(0xFF, 1);
- while ((res & 0x80) && --n);
- return res; /* Return received response */
-}
-
-
-
-/*--------------------------------------------------------------------------
-
- Public Functions
-
----------------------------------------------------------------------------*/
-
-
-/*
- * Initialize disk drive
- *
- * drv: physical drive number (0)
- */
-DSTATUS disk_initialize(uint8_t drv)
-{
- uint8_t n, cmd, card_type, ocr[4];
-
- if (drv)
- return STA_NOINIT; /* Supports only drive 0 */
-
- power_on(); /* Initialize SPI */
-
- if (Stat & STA_NODISK)
- return Stat; /* Is card existing in the socket? */
-
- SPICLK_SLOW();
-
- for (n = 10; n; n--)
- xchg_spi(0xFF, 1); /* Send 80 dummy clocks */
-
- card_type = 0;
- if (send_cmd(CMD0, 0) == 1)
- {
- /* Put the card SPI/Idle state */
- int32_t target;
-
- if (send_cmd(CMD8, 0x1AA) == 1) { /* SDv2? */
- for (n = 0; n < 4; n++)
- ocr[n] = xchg_spi(0xFF, 1); /* Get 32 bit return value of R7 resp */
- if (ocr[2] == 0x01 && ocr[3] == 0xAA)
- {
- int res;
-
- /* Is the card supports vcc of 2.7-3.6V? */
- target = MCF_SLT_SCNT(0) - (1000L * 1000L * 132); /* 1 sec */
- while (MCF_SLT_SCNT(0) - target > 0)
- {
- res = send_cmd(ACMD41, 1UL << 30); /* Wait for end of initialization with ACMD41(HCS) */
- if (res != 0xff)
- break;
- }
- debug_printf("res = %d\r\n", res);
-
- target = MCF_SLT_SCNT(0) - (1000L * 1000L * 132); /* 1 sec */
- while (MCF_SLT_SCNT(0) - target > 0)
- {
- res = send_cmd(CMD58, 0); /* Check CCS bit in the OCR */
- if (res != 0xff)
- break;
- }
- debug_printf("res = %d\r\n", res);
- for (n = 0; n < 4; n++)
- ocr[n] = xchg_spi(0xFF, 1);
- card_type = (ocr[0] & 0x40) ? CT_SD2 | CT_BLOCK : CT_SD2; /* Card id SDv2 */
- }
- }
- else
- { /* Not SDv2 card */
- if (send_cmd(ACMD41, 0) <= 1)
- { /* SDv1 or MMC? */
- card_type = CT_SD1;
- cmd = ACMD41; /* SDv1 (ACMD41(0)) */
- } else {
- card_type = CT_MMC;
- cmd = CMD1; /* MMCv3 (CMD1(0)) */
- }
- target = MCF_SLT_SCNT(0) - (1000L * 1000L * 132); /* 1 sec */
- while (MCF_SLT_SCNT(0) - target > 0 && send_cmd(cmd, 0)); /* Wait for end of initialization */
-
- if (send_cmd(CMD16, 512) != 0) /* Set block length: 512 */
- card_type = 0;
- }
- }
- CardType = card_type; /* Card type */
-
-#ifdef DEBUG
- {
- uint8_t buff[16];
- res = disk_ioctl(0, MMC_GET_CSD, buff);
-
- if (res == RES_OK)
- {
- debug_printf("CSD of card:\r\n");
- hexdump(buff, 16);
- }
- }
-#endif /* DEBUG */
-
- deselect();
-
- if (card_type)
- {
- /* OK */
-
- SPICLK_FAST(); /* Set fast clock */
- Stat &= ~STA_NOINIT; /* Clear STA_NOINIT flag */
- debug_printf("card type: %d\r\n", card_type);
- //res = disk_ioctl(0, MMC_GET_CSD, buff);
- /*
- if (res == RES_OK)
- {
- debug_printf("CSD of card now:\r\n");
- hexdump(buff, 16);
- }
- */
- deselect();
-
- }
- else
- {
- /* Failed */
- xprintf("no card type detected in disk_initialize()\r\n");
- power_off();
- Stat = STA_NOINIT;
- }
-
- return Stat;
-}
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Get disk status */
-/*-----------------------------------------------------------------------*/
-
-DSTATUS disk_status(uint8_t drv)
-{
- if (drv) return STA_NOINIT; /* Supports only drive 0 */
-
- return Stat; /* Return disk status */
-}
-
-DSTATUS disk_reset(uint8_t drv)
-{
- if (drv) return STA_NOINIT;
-
- deselect();
- disk_initialize(0);
-
- return 0;
-}
-
-/*-----------------------------------------------------------------------*/
-/* Read sector(s) */
-/*-----------------------------------------------------------------------*/
-
-DRESULT disk_read(uint8_t drv, uint8_t *buff, uint32_t sector, uint8_t count)
-{
- if (drv)
- {
- debug_printf("wrong drive in disk_read()\r\n");
- return RES_PARERR; /* Check parameter */
- }
-
- if (! count)
- {
- debug_printf("wrong count in disk_read()\r\n");
- return RES_PARERR;
- }
-
- if (Stat & STA_NOINIT)
- {
- debug_printf("drive not ready in disk_read()\r\n");
- return RES_NOTRDY; /* Check if drive is ready */
- }
-
- if (!(CardType & CT_BLOCK)) sector *= 512; /* LBA or BA conversion (byte addressing cards) */
-
- if (count == 1) { /* Single sector read */
- if ((send_cmd(CMD17, sector) == 0)) /* READ_SINGLE_BLOCK */
- if (rcvr_datablock(buff, 512))
- count = 0;
- }
- else { /* Multiple sector read */
- if (send_cmd(CMD18, sector) == 0) { /* READ_MULTIPLE_BLOCK */
- do {
- if (!rcvr_datablock(buff, 512))
- break;
- buff += 512;
- } while (--count);
- send_cmd(CMD12, 0); /* STOP_TRANSMISSION */
- }
- }
- deselect();
-
- return count ? RES_ERROR : RES_OK; /* Return result */
-}
-
-
-
-/*-----------------------------------------------------------------------*/
-/* Write sector(s) */
-/*-----------------------------------------------------------------------*/
-
-#if _USE_WRITE
-DRESULT disk_write(uint8_t drv, const uint8_t *buff, uint32_t sector, uint8_t count)
-{
- int res;
-
- if (drv || !count) return RES_PARERR; /* Check parameter */
- if (Stat & STA_NOINIT) return RES_NOTRDY; /* Check drive status */
- if (Stat & STA_PROTECT) return RES_WRPRT; /* Check write protect */
-
- if (!(CardType & CT_BLOCK))
- {
- sector *= 512; /* LBA ==> BA conversion (byte addressing cards) */
- }
-
- if (count == 1)
- { /* Single sector write */
- res = send_cmd(CMD24, sector);
- if (res == 0)
- {
- count = 0;
- }
- else
- debug_printf("send_cmd(CMD24, ...) failed in disk_write()\r\n");
-
- if (xmit_datablock(buff, 0xFE))
- {
- count = 0;
- }
- else
- {
- debug_printf("xmit_datablock(buff, ...) failed in disk_write()\r\n");
- }
- }
- else { /* Multiple sector write */
- if (CardType & CT_SDC) send_cmd(ACMD23, count); /* Predefine number of sectors */
- if (send_cmd(CMD25, sector) == 0)
- { /* WRITE_MULTIPLE_BLOCK */
- do
- {
- if (!xmit_datablock(buff, 0xFC)) break;
- buff += 512;
- } while (--count);
-
- if (!xmit_datablock(0, 0xFD)) /* STOP_TRAN token */
- {
- count = 1;
- }
- }
- }
- deselect();
-
- if (count) /* we had an error, try a reinit */
- {
- debug_printf("disk_write() failed (count=%d)\r\n", count);
- }
-
- return count ? RES_ERROR : RES_OK; /* Return result */
-}
-#endif
-
-
-/*-----------------------------------------------------------------------*/
-/* Miscellaneous drive controls other than data read/write */
-/*-----------------------------------------------------------------------*/
-
-#if _USE_IOCTL
-DRESULT disk_ioctl(uint8_t drv, uint8_t ctrl, void *buff)
-{
- DRESULT res;
- uint8_t n, csd[16], *ptr = buff;
- uint32_t *dp, st, ed, csize;
-
-
- if (drv) return RES_PARERR; /* Check parameter */
- if (Stat & STA_NOINIT) return RES_NOTRDY; /* Check if drive is ready */
-
- res = RES_ERROR;
-
- switch (ctrl) {
- case CTRL_SYNC : /* Wait for end of internal write process of the drive */
- if (select()) {
- deselect();
- res = RES_OK;
- }
- break;
-
- case GET_SECTOR_COUNT : /* Get drive capacity in unit of sector (DWORD) */
- if ((send_cmd(CMD9, 0) == 0))
- {
- if (rcvr_datablock(csd, 16))
- {
- if ((csd[0] >> 6) == 1)
- { /* SDC ver 2.00 */
- csize = csd[9] + ((uint16_t)csd[8] << 8) + ((uint32_t)(csd[7] & 63) << 16) + 1;
- * (uint32_t*) buff = csize << 10;
- }
- else
- {
- /* SDC ver 1.XX or MMC ver 3 */
- n = (csd[5] & 15) + ((csd[10] & 128) >> 7) + ((csd[9] & 3) << 1) + 2;
- csize = (csd[8] >> 6) + ((uint16_t)csd[7] << 2) + ((uint16_t)(csd[6] & 3) << 10) + 1;
- * (uint32_t*) buff = csize << (n - 9);
- }
- }
- res = RES_OK;
- }
- break;
-
- case GET_SECTOR_SIZE : /* Get sector size in unit of byte (WORD) */
- * (uint32_t*) buff = 512;
- res = RES_OK;
- break;
-
- case GET_BLOCK_SIZE : /* Get erase block size in unit of sector (DWORD) */
- if (CardType & CT_SD2) { /* SDC ver 2.00 */
- if (send_cmd(ACMD13, 0) == 0) { /* Read SD status */
- xchg_spi(0xFF, 1);
- if (rcvr_datablock(csd, 16)) { /* Read partial block */
- for (n = 64 - 16; n; n--) xchg_spi(0xFF, 1); /* Purge trailing data */
- *(uint32_t*)buff = 16UL << (csd[10] >> 4);
- res = RES_OK;
- }
- }
- } else { /* SDC ver 1.XX or MMC */
- if ((send_cmd(CMD9, 0) == 0))
- {
- if (rcvr_datablock(csd, 16))
- {
- /* Read CSD */
- if (CardType & CT_SD1)
- { /* SDC ver 1.XX */
- * (uint32_t*) buff = (((csd[10] & 63) << 1) + ((uint16_t)(csd[11] & 128) >> 7) + 1) << ((csd[13] >> 6) - 1);
- }
- else
- {
- /* MMC */
- *(uint32_t*)buff = ((uint16_t)((csd[10] & 124) >> 2) + 1) * (((csd[11] & 3) << 3) + ((csd[11] & 224) >> 5) + 1);
- }
- }
- res = RES_OK;
- }
- }
- break;
-
- case CTRL_ERASE_SECTOR : /* Erase a block of sectors (used when _USE_ERASE == 1) */
- if (!(CardType & CT_SDC)) break; /* Check if the card is SDC */
- if (disk_ioctl(drv, MMC_GET_CSD, csd)) break; /* Get CSD */
- if (!(csd[0] >> 6) && !(csd[10] & 0x40)) break; /* Check if sector erase can be applied to the card */
- dp = buff; st = dp[0]; ed = dp[1]; /* Load sector block */
- if (!(CardType & CT_BLOCK)) {
- st *= 512; ed *= 512;
- }
- if (send_cmd(CMD32, st) == 0)
- {
- if (send_cmd(CMD33, ed) == 0)
- if (send_cmd(CMD38, 0) == 0)
- if (wait_ready(30))
- ; /* Erase sector block */
- }
- res = RES_OK; /* FatFs does not check result of this command */
- break;
-
- /* Following command are not used by FatFs module */
-
- case MMC_GET_TYPE : /* Get MMC/SDC type (BYTE) */
- *ptr = CardType;
- res = RES_OK;
- break;
-
- case MMC_GET_CSD : /* Read CSD (16 bytes) */
- if (send_cmd(CMD9, 0) == 0 /* READ_CSD */
- && rcvr_datablock(ptr, 16))
- res = RES_OK;
- break;
-
- case MMC_GET_CID : /* Read CID (16 bytes) */
- if (send_cmd(CMD10, 0) == 0 /* READ_CID */
- && rcvr_datablock(ptr, 16))
- res = RES_OK;
- break;
-
- case MMC_GET_OCR : /* Read OCR (4 bytes) */
- if (send_cmd(CMD58, 0) == 0) { /* READ_OCR */
- for (n = 4; n; n--) *ptr++ = xchg_spi(0xFF, 1);
- res = RES_OK;
- }
- break;
-
- case MMC_GET_SDSTAT : /* Read SD status (64 bytes) */
- if (send_cmd(ACMD13, 0) == 0) { /* SD_STATUS */
- xchg_spi(0xFF, 1);
- if (rcvr_datablock(ptr, 64))
- res = RES_OK;
- }
- break;
-
- default:
- res = RES_PARERR;
- break;
- }
-
- deselect();
-
- return res;
-}
-#endif
-
-
-/*-----------------------------------------------------------------------*/
-/* Device timer function */
-/*-----------------------------------------------------------------------*/
-/* This function must be called from timer interrupt routine in period
-/ of 1 ms to generate card control timing.
-*/
-
-#ifdef _NOT_USED_
-void disk_timerproc (void)
-{
- uint8_t s;
-
- s = Stat;
- if (WP) /* Write protected */
- s |= STA_PROTECT;
- else /* Write enabled */
- s &= ~STA_PROTECT;
- //if (INS) /* Card is in socket */
- s &= ~STA_NODISK;
- //else /* Socket empty */
- // s |= (STA_NODISK | STA_NOINIT);
- Stat = s;
-}
-#endif /* _NOT_USED_ */
diff --git a/BaS_gcc/spi/sd_card.c b/BaS_gcc/spi/sd_card.c
deleted file mode 100644
index b14af74..0000000
--- a/BaS_gcc/spi/sd_card.c
+++ /dev/null
@@ -1,121 +0,0 @@
-/*
- * sd_card.c
- *
- * Created on: 16.12.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2012 M. Froeschle
- */
-
-#include
-#include
-#include
-#include
-
-#define WELCOME_NAME "WELCOME.MSG"
-#define FLASHCODE_NAME "BENCH.BIN"
-
-#define FLASHCODE_ADDRESS 0x03000000L
-
-/*
- * initialize SD-card and FF FAT filesystem routines. Harness to load a file during boot.
- *
- * This is currently more like a proof of concept,
- * but will be extended to load and execute a bootstrap flasher to be able to flash the Bee directly
- * from card.
- */
-void sd_card_init(void)
-{
- DRESULT res;
- FATFS fs;
- FRESULT fres;
-
- disk_initialize(0);
- res = disk_status(0);
- xprintf("disk status of SD card is %d\r\n", res);
- if (res == RES_OK)
- {
- fres = f_mount(0, &fs);
- xprintf("mount status of SD card fs is %d\r\n", fres);
- if (fres == FR_OK)
- {
- DIR directory;
- FIL file;
-
- fres = f_opendir(&directory, "\\");
- if (fres == FR_OK)
- {
- FILINFO fi;
-
- while (((fres = f_readdir(&directory, &fi)) == FR_OK) && fi.fname[0])
- {
- xprintf("%13.13s %d\r\n", fi.fname, fi.fsize);
- }
- }
- else
- {
- xprintf("could not open directory \"\\\" on SD-card! Error code: %d\r\n", fres);
- }
-
- /*
- * let's see if we find our boot flashing executable on disk
- */
- fres = f_open(&file, FLASHCODE_NAME, FA_READ);
- if (fres == FR_OK)
- {
- /*
- * yes, load and execute it
- *
- * FIXME: we will need some kind of user confirmation here
- * to avoid unwanted flashing or "bootsector viruses" before going productive
- */
- uint32_t size; /* length of code piece read */
- uint32_t total_size = 0L;
- int32_t start_time = MCF_SLT_SCNT(0);
- int32_t end_time;
- int32_t time = 0;
-
- while ((fres = f_read(&file, (void *) FLASHCODE_ADDRESS, 1024 * 1000, &size)) == FR_OK && size > 0)
- {
- total_size += size / 1024;
- xprintf("read hunk of %d bytes, total_size = %d kBytes\r\n", size, total_size);
- }
- end_time = MCF_SLT_SCNT(0);
- time = (end_time - start_time) / 132L;
- xprintf("result of f_read: %ld, %ld kbytes read\r\n", fres, total_size);
- xprintf("time to load %s: %ld s\r\n", FLASHCODE_NAME, time / 1000 / 100);
- xprintf("equals to about %ld kBytes/second\r\n", total_size / (time / 1000 / 100));
-
- }
- f_close(&file);
-
- fres = f_open(&file, WELCOME_NAME, FA_READ);
- if (fres == FR_OK)
- {
- char line[128];
-
- while (f_gets(line, sizeof(line), &file))
- {
- xprintf("%s", line);
- }
- }
- f_close(&file);
- }
- f_mount(0, 0L); /* release work area */
- }
-}
diff --git a/BaS_gcc/sys/BaS.c b/BaS_gcc/sys/BaS.c
deleted file mode 100644
index e2cdd65..0000000
--- a/BaS_gcc/sys/BaS.c
+++ /dev/null
@@ -1,611 +0,0 @@
-/*
- * BaS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- */
-
-#include
-
-#include "MCF5475.h"
-#include "startcf.h"
-#include "sysinit.h"
-#include "util.h"
-#include "cache.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "bas_types.h"
-#include "bas_utils.h"
-#include "sd_card.h"
-#include "wait.h"
-
-#include "ff.h"
-#include "s19reader.h"
-#include "mmu.h"
-#include "dma.h"
-#include "net.h"
-#include "eth.h"
-#include "nbuf.h"
-#include "nif.h"
-#include "fec.h"
-#include "bootp.h"
-#include "interrupts.h"
-#include "exceptions.h"
-#include "net_timer.h"
-#include "pci.h"
-#include "video.h"
-
-// #define DEBUG
-#include "debug.h"
-
-/* imported routines */
-extern int vec_init();
-
-/* Symbols from the linker script */
-extern uint8_t _STRAM_END[];
-#define STRAM_END ((uint32_t)_STRAM_END)
-extern uint8_t _TOS[];
-#define TOS ((uint32_t)_TOS) /* final TOS location */
-extern uint8_t _FASTRAM_END[];
-#define FASTRAM_END ((uint32_t)_FASTRAM_END)
-extern uint8_t _EMUTOS[];
-#define EMUTOS ((uint32_t)_EMUTOS) /* where EmuTOS is stored in flash */
-extern uint8_t _EMUTOS_SIZE[];
-#define EMUTOS_SIZE ((uint32_t)_EMUTOS_SIZE) /* size of EmuTOS, in bytes */
-
-/*
- * check if it is possible to transfer data to PIC
- */
-static inline bool pic_txready(void)
-{
- if (MCF_PSC3_PSCSR & MCF_PSC_PSCSR_TXRDY)
- {
- return true;
- }
-
- return false;
-}
-
-/*
- * check if it is possible to receive data from PIC
- */
-static inline bool pic_rxready(void)
-{
- if (MCF_PSC3_PSCSR & MCF_PSC_PSCSR_RXRDY)
- {
- return true;
- }
-
- return false;
-}
-
-void write_pic_byte(uint8_t value)
-{
- /*
- * Wait until the transmitter is ready or 1000us are passed
- */
- waitfor(1000, pic_txready);
-
- /*
- * Transmit the byte
- */
- *(volatile uint8_t*)(&MCF_PSC3_PSCTB_8BIT) = value; // Really 8-bit
-}
-
-uint8_t read_pic_byte(void)
-{
- /*
- * Wait until a byte has been received or 1000us are passed
- */
- waitfor(1000, pic_rxready);
-
- /*
- * Return the received byte
- */
- return * (volatile uint8_t *) (&MCF_PSC3_PSCTB_8BIT); // Really 8-bit
-}
-
-void pic_init(void)
-{
- char answer[4] = "OLD";
-
- xprintf("initialize the PIC: ");
-
- /*
- * Send the PIC initialization string
- */
- write_pic_byte('A');
- write_pic_byte('C');
- write_pic_byte('P');
- write_pic_byte('F');
-
- /*
- * Read the 3-char answer string. Should be "OK!".
- */
- answer[0] = read_pic_byte();
- answer[1] = read_pic_byte();
- answer[2] = read_pic_byte();
- answer[3] = '\0';
-
- if (answer[0] != 'O' || answer[1] != 'K' || answer[2] != '!')
- {
- dbg("PIC initialization failed. Already initialized?\r\n");
- }
- else
- {
- xprintf("%s\r\n", answer);
- }
-}
-
-void nvram_init(void)
-{
- int i;
-
- xprintf("Restore the NVRAM data: ");
-
- /* Request for NVRAM backup data */
- write_pic_byte(0x01);
-
- /* Check answer type */
- if (read_pic_byte() != 0x81)
- {
- // FIXME: PIC protocol error
- xprintf("FAILED\r\n");
- return;
- }
-
- /* Restore the NVRAM backup to the FPGA */
- for (i = 0; i < 64; i++)
- {
- uint8_t data = read_pic_byte();
- * (volatile uint8_t*) 0xffff8961 = i;
- * (volatile uint8_t*) 0xffff8963 = data;
- }
-
- xprintf("finished\r\n");
-}
-
-#define KBD_ACIA_CONTROL * ((uint8_t *) 0xfffffc00)
-#define MIDI_ACIA_CONTROL * ((uint8_t *) 0xfffffc04)
-#define MFP_INTR_IN_SERVICE_A * ((uint8_t *) 0xfffffa0f)
-#define MFP_INTR_IN_SERVICE_B * ((uint8_t *) 0xfffffa11)
-
-void acia_init()
-{
- xprintf("init ACIA: ");
- /* init ACIA */
- KBD_ACIA_CONTROL = 3; /* master reset */
- NOP();
-
- MIDI_ACIA_CONTROL = 3; /* master reset */
- NOP();
-
- KBD_ACIA_CONTROL = 0x96; /* clock div = 64, 8N1, RTS low, TX int disable, RX int enable */
- NOP();
-
- MFP_INTR_IN_SERVICE_A = 0xff;
- NOP();
-
- MFP_INTR_IN_SERVICE_B = 0xff;
- NOP();
-
- xprintf("finished\r\n");
-}
-
-void enable_coldfire_interrupts()
-{
- xprintf("enable interrupts: ");
-#if defined(MACHINE_FIREBEE)
- FBEE_INTR_CONTROL = 0L; /* disable all interrupts */
-#endif /* MACHINE_FIREBEE */
-
- MCF_EPORT_EPPAR = 0xaaa8; /* all interrupts on falling edge */
-
-#ifdef _NOT_USED_
-#if defined(MACHINE_FIREBEE)
- /*
- * TIN0 on the Coldfire is connected to the FPGA. TIN0 triggers every write
- * access to 0xff8201 (vbasehi), i.e. everytime the video base address is written
- */
- MCF_GPT0_GMS = MCF_GPT_GMS_ICT(1) | /* timer 0 on, video change capture on rising edge */
- MCF_GPT_GMS_IEN |
- MCF_GPT_GMS_TMS(1); /* route GPT0 interrupt on interrupt controller */
- MCF_INTC_ICR62 = MCF_INTC_ICR_IL(7) |
- MCF_INTC_ICR_IP(6); /* interrupt level 7, interrupt priority 6 */
- MCF_INTC_IMRH = 0xbffffffe; /* psc3 and timer 0 int on */
-#endif
-#endif
- xprintf("finished\r\n");
-}
-
-void enable_pci_interrupts()
-{
- dbg("enable PCI interrupts\r\n");
- MCF_EPORT_EPIER = 0xfe; /* int 1-7 on */
- MCF_EPORT_EPFR = 0xff; /* clear all pending interrupts */
- MCF_INTC_IMRL = 0xffffff00; /* int 1-7 on */
- MCF_INTC_IMRH = 0;
-#if defined(MACHINE_FIREBEE)
- FBEE_INTR_ENABLE = FBEE_INTR_INT_IRQ7 | /* enable pseudo bus error */
- FBEE_INTR_INT_MFP_IRQ6 | /* enable MFP interrupts */
- FBEE_INTR_INT_FPGA_IRQ5 | /* enable Firebee (PIC, PCI, ETH PHY, DVI, DSP) interrupts */
- FBEE_INTR_INT_VSYNC_IRQ4 | /* enable vsync interrupts */
- FBEE_INTR_PCI_INTA | /* enable PCI interrupts */
- FBEE_INTR_PCI_INTB |
- FBEE_INTR_PCI_INTC |
- FBEE_INTR_PCI_INTD;
- ;
-#elif defined(MACHINE_M5484LITE)
- /*
- * MCF 5484 interrupts are configured at the CPLD for the FireEngine
- */
-
- /* TODO: enable PCI interrupts on the LITEKIT */
-#elif defined(MACHINE_M54455)
- /* MCF 54455 interrupts are configured at the FPGA */
-
- /* TODO: enable PCI interrupts on the MCF54455 */
-#else
-#error unknown machine!
-#endif
-}
-
-void disable_coldfire_interrupts()
-{
-#if defined(MACHINE_FIREBEE)
- FBEE_INTR_ENABLE = 0; /* disable all interrupts */
-#endif /* MACHINE_FIREBEE */
-
- MCF_EPORT_EPIER = 0x0;
- MCF_INTC_IMRL = 0xfffffffe;
- MCF_INTC_IMRH = 0xffffffff;
-}
-
-
-
-NIF nif1;
-#if defined(MACHINE_M5484LITE)
- /*
- * on the MCF 5484 LITEKIT, the second FEC interface is usable
- */
-NIF nif2;
-#endif
-
-bool spurious_interrupt_handler(void *arg1, void *arg2)
-{
- err("spurious interrupt\r\n");
- err("IMRH=%lx, IMRL=%lx\r\n", MCF_INTC_IMRH, MCF_INTC_IMRL);
- err("IPRH=%lx, IPRL=%lx\r\n", MCF_INTC_IPRH, MCF_INTC_IPRL);
- err("IRLR=%x\r\n", MCF_INTC_IRLR);
-
- return true;
-}
-
-/*
- * initialize the interrupt handler tables to dispatch interrupt requests from Coldfire devices
- */
-void init_isr(void)
-{
- isr_init(); /* need to call that explicitely, otherwise isr table might be full */
-
- /*
- * register spurious interrupt handler
- */
- if (!isr_register_handler(24, 6, 6, spurious_interrupt_handler, NULL, NULL))
- {
- dbg("unable to register spurious interrupt handler\r\n");
- }
-
- /*
- * register the FEC interrupt handler
- */
- if (!isr_register_handler(64 + INT_SOURCE_FEC0, 5, 1, fec0_interrupt_handler, NULL, (void *) &nif1))
- {
- dbg("unable to register isr for FEC0\r\n");
- }
-
- /*
- * Register the DMA interrupt handler
- */
-
- if (!isr_register_handler(64 + INT_SOURCE_DMA, 5, 3, dma_interrupt_handler, NULL, NULL))
- {
- dbg("unable to register isr for DMA\r\n");
- }
-
-#if defined(MACHINE_FIREBEE)
- /*
- * register GPT0 timer interrupt vector
- */
- if (!isr_register_handler(64 + INT_SOURCE_GPT0, 5, 2, gpt0_interrupt_handler, NULL, NULL))
- {
- dbg("unable to register isr for GPT0 timer\r\n");
- }
-
- /*
- * register the PIC interrupt handler
- */
- if (!isr_register_handler(64 + INT_SOURCE_PSC3, 5, 5, pic_interrupt_handler, NULL, NULL))
- {
- dbg("Error: unable to register ISR for PSC3\r\n");
- }
-#endif /* MACHINE_FIREBEE */
-
- /*
- * register the XLB PCI interrupt handler
- */
- if (!isr_register_handler(64 + INT_SOURCE_XLBPCI, 3, 0, xlbpci_interrupt_handler, NULL, NULL))
- {
- dbg("Error: unable to register isr for XLB PCI interrupts\r\n");
- }
-
-
- /*
- * initialize arbiter timeout registers
- */
- MCF_XLB_XARB_ADRTO = 0x1fffff;
- MCF_XLB_XARB_DATTO = 0x1fffff;
- MCF_XLB_XARB_BUSTO = 0xffffff;
-
-
- MCF_XLB_XARB_IMR = MCF_XLB_XARB_IMR_SEAE | /* slave error acknowledge interrupt */
- MCF_XLB_XARB_IMR_MME | /* multiple master at prio 0 interrupt */
- MCF_XLB_XARB_IMR_TTAE | /* TT address only interrupt */
- MCF_XLB_XARB_IMR_TTRE | /* TT reserved interrupt enable */
- MCF_XLB_XARB_IMR_ECWE | /* external control word interrupt */
- MCF_XLB_XARB_IMR_TTME | /* TBST/TSIZ mismatch interrupt */
- MCF_XLB_XARB_IMR_BAE; /* bus activity tenure timeout interrupt */
-
- if (!isr_register_handler(64 + INT_SOURCE_PCIARB, 5, 0, pciarb_interrupt_handler, NULL, NULL))
- {
- dbg("Error: unable to register isr for PCIARB interrupts\r\n");
-
- return;
- }
- MCF_PCIARB_PACR = MCF_PCIARB_PACR_EXTMINTEN(0x1f) | /* external master broken interrupt */
- MCF_PCIARB_PACR_INTMINTEN; /* internal master broken interrupt */
-
- if (!isr_register_handler(64 + INT_SOURCE_XLBARB, 7, 1, xlbarb_interrupt_handler, NULL, NULL))
- {
- dbg("Error: unable to register isr for XLB ARB interrupts\r\n");
- }
-}
-
-/* Jump into the OS */
-typedef void void_func(void);
-struct rom_header
-{
- void *initial_sp;
- void_func *initial_pc;
-};
-
-/*
- * fix ST RAM header (address 0x0 and 0x4). FreeMiNT uses these vectors on CTRL-ALT-DEL.
- *
- * Beware: Newer compilers refuse to dereference pointers to NULL and abort (trap #7) if the following
- * attribute isn't set.
- */
-static void fix_stram_header() __attribute__((optimize("no-delete-null-pointer-checks")));
-static void fix_stram_header()
-{
- struct rom_header *bas_header = (struct rom_header *) TARGET_ADDRESS;
- struct rom_header *stram_header = (struct rom_header *) 0x0;
-
- *stram_header = *bas_header;
-}
-
-void BaS(void)
-{
- uint8_t *src;
- uint8_t *dst = (uint8_t *) TOS;
-
-#if defined(MACHINE_FIREBEE) /* LITE board has no pic and (currently) no nvram */
- pic_init();
- nvram_init();
-#endif /* MACHINE_FIREBEE */
-
- xprintf("initialize MMU: ");
- mmu_init();
- xprintf("finished\r\n");
-
- xprintf("initialize Coldfire DMA: ");
- dma_init();
- xprintf("finished\r\n");
-
- xprintf("copy EmuTOS: ");
- /* copy EMUTOS */
- src = (uint8_t *) EMUTOS;
- memcpy(dst, src, EMUTOS_SIZE);
- /* do a second copy to FPGA RAM exclusively for the blitter */
- memcpy(dst + 0x40000000, src, EMUTOS_SIZE);
- xprintf("finished\r\n");
-
- xprintf("flush caches: ");
- flush_and_invalidate_caches();
- xprintf("finished\r\n");
- xprintf("enable MMU: ");
- MCF_MMU_MMUCR = MCF_MMU_MMUCR_EN; /* MMU on */
- NOP(); /* force pipeline sync */
- xprintf("finished\r\n");
-
- xprintf("initialize exception vector table: ");
- vec_init();
- xprintf("finished\r\n");
-
-
- memset((void *) 0x0400, 0x0, 0x0400);
-
-#if defined(MACHINE_FIREBEE)
- xprintf("IDE reset: ");
- /* IDE reset */
- * (volatile uint8_t *) (0xffff8802 - 2) = 14;
- * (volatile uint8_t *) (0xffff8802 - 0) = 0x80;
- wait(1);
-
- * (volatile uint8_t *) (0xffff8802 - 0) = 0;
-
- xprintf("finished\r\n");
- xprintf("enable video: ");
-
- /*
- * ATARI video modes "modeline"
- *
- * horizontal:
- * high word: h_total
- * low word: hsync_start
- *
- * vertical:
- * high word v_total
- * low word vsync_start
- *
- * can be calculated with umc ("universal modeline generator")
- *
- */
- struct atari_video_timing
- {
- uint16_t total;
- uint16_t sync_start;
- };
-
- static volatile struct atari_video_timing *hor_640x480 = (volatile struct atari_video_timing *) 0xf0000410;
- static volatile struct atari_video_timing *ver_640x480 = (volatile struct atari_video_timing *) 0xf0000414;
- static volatile struct atari_video_timing *hor_320x240 = (volatile struct atari_video_timing *) 0xf0000418;
- static volatile struct atari_video_timing *ver_320x240 = (volatile struct atari_video_timing *) 0xf000041c;
-
-#undef VIDEO_25MHZ
-
-#ifdef VIDEO_25MHZ
- hor_640x480->total = 0x320; /* 800 */
- hor_640x480->sync_start = 0x2ba; /* 698 */
- ver_640x480->total = 0x20c; /* 524 */
- ver_640x480->sync_start = 0x20a; /* 522 */
-
- hor_320x240->total = 0x190; /* 400 */
- hor_320x240->sync_start = 0x15d; /* 349 */
- ver_320x240->total = 0x20c; /* 524 */
- ver_320x240->sync_start = 0x20a; /* 522 */
-#else /* 32 MHz */
- hor_640x480->total = 0x370; /* 880 */
- hor_640x480->sync_start = 0x2ba; /* 698 */
- ver_640x480->total = 0x20d; /* 525 */
- ver_640x480->sync_start = 0x20a; /* 522 */
-
- hor_320x240->total = 0x2a0; /* 672 */
- hor_320x240->sync_start = 0x1e0; /* 480 */
- ver_320x240->total = 0x5a0; /* 480 */
- ver_320x240->sync_start = 0x160; /* 352 */
-#endif
-
- /* fifo on, refresh on, ddrcs and cke on, video dac on */
- * (volatile uint32_t *) 0xf0000400 = 0x01070082;
-
- xprintf("finished\r\n");
-#endif /* MACHINE_FIREBEE */
-
- sd_card_init();
-
-
-#if defined(MACHINE_FIREBEE)
- /* set Falcon bus control register */
- /* sets bit 3 and 6. Both are undefined on an original Falcon? */
-
- * (volatile uint8_t *) 0xffff8007 = 0x48;
-#endif /* MACHINE_FIREBEE */
-
- /* ST RAM */
-
- * (uint32_t *) 0x42e = STRAM_END; /* phystop TOS system variable */
- * (uint32_t *) 0x420 = 0x752019f3; /* memvalid TOS system variable */
- * (uint32_t *) 0x43a = 0x237698aa; /* memval2 TOS system variable */
- * (uint32_t *) 0x51a = 0x5555aaaa; /* memval3 TOS system variable */
-
- /* TT-RAM */
-
- * (uint32_t *) 0x5a4 = FASTRAM_END; /* ramtop TOS system variable */
- * (uint32_t *) 0x5a8 = 0x1357bd13; /* ramvalid TOS system variable */
-
-#if defined(MACHINE_FIREBEE) /* m5484lite has no ACIA and no dip switch... */
- acia_init();
-#endif /* MACHINE_FIREBEE */
-
- srec_execute("BASFLASH.S19");
-
- xprintf("BaS initialization finished, enable interrupts\r\n");
- init_isr();
-
- enable_coldfire_interrupts();
- MCF_INTC_IMRH = 0;
- MCF_INTC_IMRL = 0;
-
- dma_irq_enable();
- fec_irq_enable(0, 5, 1);
-
- enable_pci_interrupts();
- init_pci();
-
- video_init();
-
- /* initialize USB devices */
- // init_usb();
-
- set_ipl(7); /* disable interrupts */
-
- /*
- * start FireTOS if DIP switch is set accordingly
- */
- if (!(DIP_SWITCH & (1 << 6)))
- {
- extern uint8_t _FIRETOS[];
-#define FIRETOS ((uint32_t)_FIRETOS) /* where FireTOS is stored in flash */
-
- /* make sure MMU is disabled */
- MCF_MMU_MMUCR = 0; /* MMU off */
- NOP(); /* force pipeline sync */
-
-
- /* ST RAM */
-
- * (uint32_t *) 0x42e = STRAM_END; /* phystop TOS system variable */
- * (uint32_t *) 0x420 = 0x752019f3; /* memvalid TOS system variable */
- * (uint32_t *) 0x43a = 0x237698aa; /* memval2 TOS system variable */
- * (uint32_t *) 0x51a = 0x5555aaaa; /* memval3 TOS system variable */
-
- /* TT-RAM */
-
- * (uint32_t *) 0x5a4 = FASTRAM_END; /* ramtop TOS system variable */
- * (uint32_t *) 0x5a8 = 0x1357bd13; /* ramvalid TOS system variable */
-
- xprintf("call FireTOS\r\n");
- /* Jump into FireTOS */
-
- void_func* FireTOS = (void_func*) FIRETOS;
- FireTOS(); // Should never return
- }
-
- /*
- * fix initial pc/sp in ST RAM for FreeMiNT. It expects valid values there
- * like on original STs (where these values reside in ROM) and uses them on
- * CTRL-ALT-DELETE reboots.
- */
- fix_stram_header();
-
- xprintf("call EmuTOS\r\n");
- struct rom_header *os_header = (struct rom_header *) TOS;
- os_header->initial_pc();
-}
diff --git a/BaS_gcc/sys/cache.c b/BaS_gcc/sys/cache.c
deleted file mode 100644
index 62cd565..0000000
--- a/BaS_gcc/sys/cache.c
+++ /dev/null
@@ -1,241 +0,0 @@
-/*
- * cache handling
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#include "cache.h"
-
-void cacr_set(uint32_t value)
-{
- extern uint32_t rt_cacr;
-
- rt_cacr = value;
- __asm__ __volatile__(
- " movec %0, cacr\n\t"
- : /* output */
- : "r" (rt_cacr)
- : "memory" /* clobbers */);
-}
-
-uint32_t cacr_get(void)
-{
- extern uint32_t rt_cacr;
-
- return rt_cacr;
-}
-
-void disable_data_cache(void)
-{
- flush_and_invalidate_caches();
- cacr_set((cacr_get() | CF_CACR_DCINVA) & ~CF_CACR_DEC);
-}
-
-void disable_instruction_cache(void)
-{
- flush_and_invalidate_caches();
- cacr_set((cacr_get() | CF_CACR_ICINVA) & ~CF_CACR_IEC);
-}
-
-void enable_data_cache(void)
-{
- cacr_set(cacr_get() & ~CF_CACR_DCINVA);
-}
-
-void flush_and_invalidate_caches(void)
-{
- __asm__ __volatile__(
- " clr.l d0 \n\t"
- " clr.l d1 \n\t"
- " move.l d0,a0 \n\t"
- "cfa_setloop%=: \n\t"
- " cpushl bc,(a0) | flush\n\t"
- " lea 0x10(a0),a0 | index+1\n\t"
- " addq.l #1,d1 | index+1\n\t"
- " cmpi.w #512,d1 | all sets?\n\t"
- " bne.s cfa_setloop%= | no->\n\t"
- " clr.l d1 \n\t"
- " addq.l #1,d0 \n\t"
- " move.l d0,a0 \n\t"
- " cmpi.w #4,d0 | all ways?\n\t"
- " bne.s cfa_setloop%= | no->\n\t"
- /* input */ :
- /* output */ :
- /* clobber */ : "cc", "d0", "d1", "a0"
- );
-}
-
-/*
- * flush and invalidate a specific memory region from the instruction cache
- */
-void flush_icache_range(void *address, size_t size)
-{
- uint32_t set;
- uint32_t start_set;
- uint32_t end_set;
- void *endaddr = address + size;
-
- start_set = (uint32_t) address & _ICACHE_SET_MASK;
- end_set = (uint32_t) endaddr & _ICACHE_SET_MASK;
-
- if (start_set > end_set) {
- /* from the begining to the lowest address */
- for (set = 0; set <= end_set; set += (0x10 - 3))
- {
- __asm__ __volatile__(
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set]) \n\t"
- : /* output parameters */
- : [set] "a" (set) /* input parameters */
- : "cc" /* clobbered registers */
- );
- }
- /* next loop will finish the cache ie pass the hole */
- end_set = LAST_ICACHE_ADDR;
- }
- for (set = start_set; set <= end_set; set += (0x10 - 3)) {
- __asm__ __volatile__(
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl ic,(%[set])"
- : /* output parameters */
- : [set] "a" (set)
- : "cc"
- );
- }
-}
-
-
-
-/*
- * flush and invalidate a specific region from the data cache
- */
-void flush_dcache_range(void *address, size_t size)
-{
- unsigned long set;
- unsigned long start_set;
- unsigned long end_set;
- void *endaddr;
-
- endaddr = address + size;
- start_set = (uint32_t) address & _DCACHE_SET_MASK;
- end_set = (uint32_t) endaddr & _DCACHE_SET_MASK;
-
- if (start_set > end_set) {
- /* from the begining to the lowest address */
- for (set = 0; set <= end_set; set += (0x10 - 3))
- {
- __asm__ __volatile__(
- " cpushl dc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- : /* output parameters */
- : [set] "a" (set)
- : "cc" /* clobbered registers */
- );
- }
- /* next loop will finish the cache ie pass the hole */
- end_set = LAST_DCACHE_ADDR;
- }
- for (set = start_set; set <= end_set; set += (0x10 - 3))
- {
- __asm__ __volatile__(
- " cpushl dc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- " addq%.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl dc,(%[set]) \n\t"
- : /* output parameters */
- : [set] "a" (set)
- : "cc" /* clobbered registers */
- );
- }
-}
-
-
-/*
- * flush and invalidate a specific region from the both caches. We do not know if the area is cached
- * at all, we do not know in which of the four ways it is cached, but we know the index where they
- * would be cached if they are, so we only need to flush and invalidate only a subset of the 512 index
- * entries, but all four ways.
- */
-void flush_cache_range(void *address, size_t size)
-{
- unsigned long set;
- unsigned long start_set;
- unsigned long end_set;
- void *endaddr;
-
- endaddr = address + size;
- start_set = (uint32_t) address & _DCACHE_SET_MASK;
- end_set = (uint32_t) endaddr & _DCACHE_SET_MASK;
-
- if (start_set > end_set) {
- /* from the begining to the lowest address */
- for (set = 0; set <= end_set; set += (0x10 - 3))
- {
- __asm__ __volatile__(
- " cpushl bc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- : /* output parameters */
- : [set] "a" (set)
- : "cc" /* clobbered registers */
- );
- }
- /* next loop will finish the cache ie pass the hole */
- end_set = LAST_DCACHE_ADDR;
- }
- for (set = start_set; set <= end_set; set += (0x10 - 3))
- {
- __asm__ __volatile__(
- " cpushl bc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- " addq%.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- " addq.l #1,%[set] \n\t"
- " cpushl bc,(%[set]) \n\t"
- : /* output parameters */
- : [set] "a" (set)
- : "cc" /* clobbered registers */
- );
- }
-}
diff --git a/BaS_gcc/sys/driver_mem.c b/BaS_gcc/sys/driver_mem.c
deleted file mode 100644
index 79e6d01..0000000
--- a/BaS_gcc/sys/driver_mem.c
+++ /dev/null
@@ -1,338 +0,0 @@
-/*
- * driver_mem.c
- *
- * based from Emutos / BDOS
- *
- * Copyright (c) 2001 Lineo, Inc.
- *
- * Authors: Karl T. Braun, Martin Doering, Laurent Vogel
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version.
- */
-
-
-#include
-#include "bas_string.h"
-#include "bas_printf.h"
-#include "usb.h"
-#include "exceptions.h" /* set_ipl() */
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine!"
-#endif
-
-// #define DEBUG
-#include "debug.h"
-
-extern long offscren_reserved(void);
-
-extern uint8_t driver_mem_buffer[DRIVER_MEM_BUFFER_SIZE]; /* defined in linker control file */
-
-/* MD - Memory Descriptor */
-
-#define MD struct _md_
-
-MD
-{
- MD *m_link;
- long m_start;
- long m_length;
- void *m_own;
-};
-
-/* MPB - Memory Partition Block */
-
-#define MPB struct _mpb
-
-MPB
-{
- MD *mp_mfl;
- MD *mp_mal;
- MD *mp_rover;
-};
-
-#define MAXMD 256
-
-static MD tab_md[MAXMD];
-static MPB pmd;
-
-static void *xmgetblk(void)
-{
- int i;
-
- for (i = 0; i < MAXMD; i++)
- {
- if (tab_md[i].m_own == NULL)
- {
- tab_md[i].m_own = (void*)1L;
- return(&tab_md[i]);
- }
- }
- return NULL;
-}
-
-static void xmfreblk(void *m)
-{
- int i = (int)(((long) m - (long) tab_md) / sizeof(MD));
- if ((i > 0) && (i < MAXMD))
- {
- tab_md[i].m_own = NULL;
- }
-}
-
-static MD *ffit(long amount, MPB *mp)
-{
- MD *p, *q, *p1; /* free list is composed of MD's */
- int maxflg;
- long maxval;
-
- if (amount != -1)
- {
- amount += 15; /* 16 bytes alignment */
- amount &= 0xFFFFFFF0;
- }
-
- if ((q = mp->mp_rover) == 0) /* get rotating pointer */
- {
- return 0;
- }
-
- maxval = 0;
- maxflg = ((amount == -1) ? true : false) ;
- p = q->m_link; /* start with next MD */
- do /* search the list for an MD with enough space */
- {
- if (p == 0)
- {
- /* at end of list, wrap back to start */
- q = (MD *) &mp->mp_mfl; /* q => mfl field */
- p = q->m_link; /* p => 1st MD */
- }
- if ((!maxflg) && (p->m_length >= amount))
- {
- /* big enough */
- if (p->m_length == amount)
- {
- q->m_link = p->m_link; /* take the whole thing */
- }
- else
- {
- /*
- * break it up - 1st allocate a new
- * MD to describe the remainder
- */
- p1 = xmgetblk();
- if (p1 == NULL)
- {
- return(NULL);
- }
-
- /* init new MD */
- p1->m_length = p->m_length - amount;
- p1->m_start = p->m_start + amount;
- p1->m_link = p->m_link;
- p->m_length = amount; /* adjust allocated block */
- q->m_link = p1;
- }
- /* link allocate block into allocated list,
- mark owner of block, & adjust rover */
- p->m_link = mp->mp_mal;
- mp->mp_mal = p;
- mp->mp_rover = (q == (MD *) &mp->mp_mfl ? q->m_link : q);
- return(p); /* got some */
- }
- else if (p->m_length > maxval)
- maxval = p->m_length;
- p = ( q=p )->m_link;
- } while(q != mp->mp_rover);
-
- /*
- * return either the max, or 0 (error)
- */
- if (maxflg)
- {
- maxval -= 15; /* 16 bytes alignment */
- if (maxval < 0)
- {
- maxval = 0;
- }
- else
- {
- maxval &= 0xFFFFFFF0;
- }
- }
- return(maxflg ? (MD *) maxval : 0);
-}
-
-static void freeit(MD *m, MPB *mp)
-{
- MD *p, *q;
-
- q = 0;
- for (p = mp->mp_mfl; p ; p = (q = p) -> m_link)
- {
- if (m->m_start <= p->m_start)
- {
- break;
- }
- }
- m->m_link = p;
-
- if (q)
- {
- q->m_link = m;
- }
- else
- {
- mp->mp_mfl = m;
- }
-
- if (!mp->mp_rover)
- {
- mp->mp_rover = m;
- }
-
- if (p)
- {
- if (m->m_start + m->m_length == p->m_start)
- {
- /* join to higher neighbor */
- m->m_length += p->m_length;
- m->m_link = p->m_link;
- if (p == mp->mp_rover)
- {
- mp->mp_rover = m;
- }
- xmfreblk(p);
- }
- }
- if (q)
- {
- if (q->m_start + q->m_length == m->m_start)
- {
- /* join to lower neighbor */
- q->m_length += m->m_length;
- q->m_link = m->m_link;
- if (m == mp->mp_rover)
- {
- mp->mp_rover = q;
- }
- xmfreblk(m);
- }
- }
-}
-
-int32_t driver_mem_free(void *addr)
-{
- int level;
- MD *p, **q;
- MPB *mpb;
- mpb = &pmd;
- level = set_ipl(7);
-
- for(p = *(q = &mpb->mp_mal); p; p = *(q = &p->m_link))
- {
- if ((long) addr == p->m_start)
- {
- break;
- }
- }
-
- if (!p)
- {
- set_ipl(level);
- return(-1);
- }
-
- *q = p->m_link;
- freeit(p, mpb);
- set_ipl(level);
-
- dbg("addr=0x%08X)\r\n", addr);
-
- return(0);
-}
-
-void *driver_mem_alloc(uint32_t amount)
-{
- void *ret = NULL;
- int level;
- MD *m;
-
- if (amount == -1L)
- {
- return (void *) ffit(-1L, &pmd);
- }
-
- if (amount <= 0 )
- {
- return(0);
- }
-
- if ((amount & 1))
- {
- amount++;
- }
-
- level = set_ipl(7);
- m = ffit(amount, &pmd);
-
- if (m != NULL)
- {
- ret = (void *) m->m_start;
- }
- set_ipl(level);
- dbg("alloc(%d) = 0x%08X\r\n", amount, ret);
-
- return ret;
-}
-
-static int use_count = 0;
-
-int driver_mem_init(void)
-{
- if (use_count == 0)
- {
- dbg("initialise driver_mem_buffer[] at %p, size 0x%x\r\n", driver_mem_buffer, DRIVER_MEM_BUFFER_SIZE);
- memset(driver_mem_buffer, 0, DRIVER_MEM_BUFFER_SIZE);
-
- pmd.mp_mfl = pmd.mp_rover = &tab_md[0];
- tab_md[0].m_link = (MD *) NULL;
- tab_md[0].m_start = ((long) driver_mem_buffer + 15) & ~15;
- tab_md[0].m_length = DRIVER_MEM_BUFFER_SIZE;
- tab_md[0].m_own = (void *) 1L;
- pmd.mp_mal = (MD *) NULL;
- memset(driver_mem_buffer, 0, tab_md[0].m_length);
-
- dbg("uncached driver memory buffer at 0x%08X size %d\r\n", tab_md[0].m_start, tab_md[0].m_length);
- }
- use_count++;
- dbg("driver_mem now has a use count of %d\r\n", use_count);
-
- return 0;
-}
-
-void driver_mem_release(void)
-{
- if (use_count-- == 0)
- {
-#ifndef CONFIG_USB_MEM_NO_CACHE
-#ifdef USE_RADEON_MEMORY
- if (driver_mem_buffer == (void *) offscren_reserved())
- return;
-
-#endif
-#endif
- }
- dbg("driver_mem use count now %d\r\n", use_count);
-}
-
-
-
diff --git a/BaS_gcc/sys/exceptions.S b/BaS_gcc/sys/exceptions.S
deleted file mode 100644
index 0c8aded..0000000
--- a/BaS_gcc/sys/exceptions.S
+++ /dev/null
@@ -1,608 +0,0 @@
-/*
- * initialize exception vectors
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include "startcf.h"
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#endif /* MACHINE_FIREBEE */
-
- .extern __SUP_SP
- .extern _rom_entry
- .extern __RAMBAR0
- .extern _rt_mod
- .extern _rt_ssp
- .extern _rt_usp
- .extern _rt_vbr
- .extern _mmutr_miss
- .extern __MBAR
- .extern __MMUBAR
- .extern _video_tlb
- .extern _video_sbt
- .extern _flush_and_invalidate_caches
- .extern _get_bas_drivers
-
- /* PCI interrupt handlers */
- .extern _irq5_handler
- .extern _irq6_handler
- .extern _irq7_handler
-
- .global _vec_init
- .global _std_exc_vec /* needed by driver_vec.c */
-
-/* Register read/write equates */
-
- /* MMU */
- .equ MCF_MMU_MMUCR, __MMUBAR
- .equ MCF_MMU_MMUOR, __MMUBAR+0x04
- .equ MCF_MMU_MMUSR, __MMUBAR+0x08
- .equ MCF_MMU_MMUAR, __MMUBAR+0x10
- .equ MCF_MMU_MMUTR, __MMUBAR+0x14
- .equ MCF_MMU_MMUDR, __MMUBAR+0x18
-
- /* EPORT flag register */
- .equ MCF_EPORT_EPFR, __MBAR+0xf0c
-
- /* FEC1 port output data direction register */
- .equ MCF_GPIO_PODR_FEC1L, __MBAR+0xa07
-
- /* PSC0 transmit buffer register */
- .equ MCF_PSC0_PSCTB_8BIT, __MBAR+0x860c
-
- /* GPT mode select register */
- .equ MCF_GPT0_GMS, __MBAR+0x800
-
- /* Slice timer 0 count register */
- .equ MCF_SLT0_SCNT, __MBAR+0x908
-
- // interrupt sources
- .equ INT_SOURCE_EPORT_EPF1,1 // edge port flag 1
- .equ INT_SOURCE_EPORT_EPF2,2 // edge port flag 2
- .equ INT_SOURCE_EPORT_EPF3,3 // edge port flag 3
- .equ INT_SOURCE_EPORT_EPF4,4 // edge port flag 4
- .equ INT_SOURCE_EPORT_EPF5,5 // edge port flag 5
- .equ INT_SOURCE_EPORT_EPF6,6 // edge port flag 6
- .equ INT_SOURCE_EPORT_EPF7,7 // edge port flag 7
- .equ INT_SOURCE_USB_EP0ISR,15 // USB endpoint 0 interrupt
- .equ INT_SOURCE_USB_EP1ISR,16 // USB endpoint 1 interrupt
- .equ INT_SOURCE_USB_EP2ISR,17 // USB endpoint 2 interrupt
- .equ INT_SOURCE_USB_EP3ISR,18 // USB endpoint 3 interrupt
- .equ INT_SOURCE_USB_EP4ISR,19 // USB endpoint 4 interrupt
- .equ INT_SOURCE_USB_EP5ISR,20 // USB endpoint 5 interrupt
- .equ INT_SOURCE_USB_EP6ISR,21 // USB endpoint 6 interrupt
- .equ INT_SOURCE_USB_USBISR,22 // USB general interrupt
- .equ INT_SOURCE_USB_USBAISR,23 // USB core interrupt
- .equ INT_SOURCE_USB_ANY,24 // OR of all USB interrupts
- .equ INT_SOURCE_USB_DSPI_OVF,25 // DSPI overflow or underflow
- .equ INT_SOURCE_USB_DSPI_RFOF,26 // receive FIFO overflow interrupt
- .equ INT_SOURCE_USB_DSPI_RFDF,27 // receive FIFO drain interrupt
- .equ INT_SOURCE_USB_DSPI_TFUF,28 // transmit FIFO underflow interrupt
- .equ INT_SOURCE_USB_DSPI_TCF,29 // transfer complete interrupt
- .equ INT_SOURCE_USB_DSPI_TFFF,30 // transfer FIFO fill interrupt
- .equ INT_SOURCE_USB_DSPI_EOQF,31 // end of queue interrupt
- .equ INT_SOURCE_PSC3,32 // PSC3 interrupt
- .equ INT_SOURCE_PSC2,33 // PSC2 interrupt
- .equ INT_SOURCE_PSC1,34 // PSC1 interrupt
- .equ INT_SOURCE_PSC0,35 // PSC0 interrupt
- .equ INT_SOURCE_CTIMERS,36 // combined source for comm timers
- .equ INT_SOURCE_SEC,37 // SEC interrupt
- .equ INT_SOURCE_FEC1,38 // FEC1 interrupt
- .equ INT_SOURCE_FEC0,39 // FEC0 interrupt
- .equ INT_SOURCE_I2C,40 // I2C interrupt
- .equ INT_SOURCE_PCIARB,41 // PCI arbiter interrupt
- .equ INT_SOURCE_CBPCI,42 // COMM bus PCI interrupt
- .equ INT_SOURCE_XLBPCI,43 // XLB PCI interrupt
- .equ INT_SOURCE_XLBARB,47 // XLBARB interrupt
- .equ INT_SOURCE_DMA,48 // multichannel DMA interrupt
- .equ INT_SOURCE_CAN0_ERROR,49 // FlexCAN error interrupt
- .equ INT_SOURCE_CAN0_BUSOFF,50 // FlexCAN bus off interrupt
- .equ INT_SOURCE_CAN0_MBOR,51 // message buffer ORed interrupt
- .equ INT_SOURCE_SLT1,53 // slice timer 1 interrupt
- .equ INT_SOURCE_SLT0,54 // slice timer 0 interrupt
- .equ INT_SOURCE_CAN1_ERROR,55 // FlexCAN error interrupt
- .equ INT_SOURCE_CAN1_BUSOFF,56 // FlexCAN bus off interrupt
- .equ INT_SOURCE_CAN1_MBOR,57 // message buffer ORed interrupt
- .equ INT_SOURCE_GPT3,59 // GPT3 timer interrupt
- .equ INT_SOURCE_GPT2,60 // GPT2 timer interrupt
- .equ INT_SOURCE_GPT1,61 // GPT1 timer interrupt
- .equ INT_SOURCE_GPT0,62 // GPT0 timer interrupt
-
-// Atari register equates (provided by FPGA)
- .equ vbasehi, 0xffff8201
-
-/*
- * macros
- */
-
-/*
- * used for "forwarding" interrupt handlers. This just clears the "pending interrupt"
- * flag from the EDGE PORT flag register, set the status register to the appropriate interrupt
- * mask an jump through the corresponging vector
- */
- .macro irq vector,int_mask,clr_int
- move.w #0x2700,sr // disable interrupts
- subq.l #8,sp
- movem.l d0/a5,(sp) // save registers
-
- lea MCF_EPORT_EPFR,a5
- move.b #\clr_int,(a5) // clear int pending
-
- movem.l (sp),d0/a5 // restore registers
- addq.l #8,sp
- move.l \vector,-(sp)
- move #0x2\int_mask\()00,sr
- rts
- .endm
-
- .text
-_vec_init:
- move.l a2,-(sp) // Backup registers
-
- mov3q.l #-1,_rt_mod // rt_mod auf super
- clr.l _rt_ssp
- clr.l _rt_usp
- clr.l _rt_vbr
- move.l #__RAMBAR0,d0 // exception vectors reside in rambar0
- movec d0,VBR
- move.l d0,a0
- move.l a0,a2
-
-/*
- * first, set standard vector for all exceptions
- */
-init_vec:
- move.l #256,d0
- lea std_exc_vec(pc),a1 // standard vector
-init_vec_loop:
- move.l a1,(a2)+ // set standard vector for all exceptions
- subq.l #1,d0
- bne init_vec_loop
-
-// set individual interrupt handler assignments
-
- move.l #__SUP_SP,(a0) // set initial stack pointer at start of exception vector table
-
- lea reset_vector(pc),a1 // set reset vector
- move.l a1,0x04(a0)
-
- lea access(pc),a1 // set illegal access exception handler
- move.l a1,0x08(a0)
-
-// install spurious interrupt handler
- lea _lowlevel_isr_handler,a1
- move.l a1,0x60(a0)
-
-// trap #0 (without any parameters for now) is used to provide BaS' driver addresses to the OS
- lea _get_bas_drivers(pc),a1
- move.l a1,0x80(a0) // trap #0 exception vector
-
-// MFP non-autovector interrupt handlers. Those are just rerouted to their autovector counterparts
-
- lea irq1(pc),a1
- move.l a1,0x104(a0)
-
- lea irq2(pc),a1
- move.l a1,0x108(a0)
-
- lea irq3(pc),a1
- move.l a1,0x10c(a0)
-
- lea irq4(pc),a1
- move.l a1,0x110(a0)
-
- lea irq5(pc),a1
- move.l a1,0x114(a0)
-
- lea irq6(pc),a1
- move.l a1,0x118(a0)
-
- lea irq7(pc),a1
- move.l a1,0x11c(a0)
-
-
-
-// install lowlevel_isr_handler for the three GPT timers
- lea _lowlevel_isr_handler(pc),a1
- move.l a1,(INT_SOURCE_GPT1 + 64) * 4(a0)
- move.l a1,(INT_SOURCE_GPT2 + 64) * 4(a0)
- move.l a1,(INT_SOURCE_GPT3 + 64) * 4(a0)
-
-// install lowlevel_isr_handler for the PSC3 interrupt
- move.l a1,(INT_SOURCE_PSC3 + 64) * 4(a0)
-
-// install lowlevel_isr_handler for Coldfire DMA interrupts
- move.l a1,(INT_SOURCE_DMA + 64) * 4(a0)
-
-// install lowlevel_isr_handler for the XLBPCI interrupt
- move.l a1,(INT_SOURCE_XLBPCI + 64) * 4(a0)
-
-// install lowlevel_isr_handler for the XLBARB interrupt
-// move.l a1,(INT_SOURCE_XLBARB + 64) * 4(a0) // FIXME: commented out for testing
-
-// install lowlevel_isr_handler for the FEC0 interrupt
- move.l a1,(INT_SOURCE_FEC0 + 64) * 4(a0)
-
-#ifndef MACHINE_FIREBEE
-// FEC1 not wired on the FireBee (used for FPGA as GPIO), but available on other machines
- move.l a1,(INT_SOURCE_FEC1 + 64) * 4(a0)
-#endif
-
-#ifdef MACHINE_FIREBEE
-
-// timer vectors (triggers when vbashi gets changed, used for video page copy)
- // move.l a1,(INT_SOURCE_GPT0 + 64) * 4(a0)
-#endif /* MACHINE_FIREBEE */
-
- move.l (sp)+,a2 // Restore registers
- rts
-
-
-/*
- * exception vector routines
- */
-vector_table_start:
-std_exc_vec:
-_std_exc_vec:
- move.w #0x2700,sr // disable interrupt
- subq.l #8,sp
- movem.l d0/a5,(sp) // save registers
- move.w 8(sp),d0 // fetch vector
- and.l #0x3fc,d0 // mask out vector number
-// #define DBG_EXC
-#ifdef DBG_EXC
- // printout vector number of exception
-
- lea -4 * 4(sp),sp // reserve stack space
- movem.l d0-d1/a0-a1,(sp) // save gcc scratch registers
-
- lsr.l #2,d0 // shift vector number in place
- cmp.l #33,d0
- beq noprint
- cmp.l #34,d0
- beq noprint
- cmp.l #45,d0
- beq noprint
- cmp.l #46,d0
- beq noprint
- move.l 4 * 4 + 8 + 4(sp),-(sp) // pc at exception
- move.l d0,-(sp) // provide it to xprintf()
- pea exception_text
- jsr _xprintf // call xprintf()
- add.l #3*4,sp // adjust stack
-noprint:
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- lea 4 * 4(sp),sp
-#endif /* DBG_EXC */
-
- add.l _rt_vbr,d0 // + VBR
- move.l d0,a5
- move.l (a5),d0 // fetch exception routine address
-
- move.l 4(sp),a5 // restore a5
- move.l d0,4(sp) // store exception routine address
-
- move.w 10(sp),d0 // restore original SR (irq mask)
- bset #13,d0 // set supervisor bit
- move.w d0,sr //
- move.l (sp)+,d0 // restore d0
- rts // jump to exception handler
-
-exception_text:
- .ascii "DEBUG: EXCEPTION %d caught at %p"
- .byte 13, 10, 0
- .align 4
-
-reset_vector:
- move.w #0x2700,sr // disable interrupts
- move.l #0x31415926,d0
- cmp.l 0x426,d0 // _resvalid: reset vector valid?
- beq std_exc_vec // yes->
- jmp _rom_entry // no, cold start machine
-
-access:
- move.w #0x2700,sr // disable interrupts
-
- link a6,#-4 * 4 // make room for gcc scratch registers
- movem.l d0-d1/a0-a1,(sp) // save them
-
- move.l 4(a6),-(sp) // push format_status
- move.l 8(a6),-(sp) // pc at exception
- move.l MCF_MMU_MMUAR,-(sp) // MMU fault address
- move.l MCF_MMU_MMUSR,-(sp) // MMU status register
- // probably doesn't make sense since we still have a potential unmapped MMU page
- // move.w #0x2300,sr // can lower interrupt mask now that MMU status is safe
- jsr _mmutr_miss // call C routine
- lea 4 * 4(sp),sp // adjust stack
-
- tst.l d0 // exception handler signals bus error
- bne bus_error
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- rte
-
-bus_error:
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- move.l 0x08,-(sp)
- rts
- // bra std_exc_vec // FIXME: this seems to be bogous...
-
-zero_divide:
- move.w #0x2700,sr // disable interrupt
- move.l a0,-(sp)
- move.l d0,-(sp)
- move.l 12(sp),a0 // pc
- move.w (a0)+,d0 // command word
- btst #7,d0 // long?
- beq zd_word // no->
- addq.l #2,a0
-
-zd_word:
- and.l 0x3f,d0 // mask out ea field
- cmp.w #0x08,d0 // -(ax) or less?
- ble zd_end
- addq.l #2,a0
- cmp.w #0x39,d0 // xxx.L
- bne zd_nal
- addq.l #2,a0
- bra zd_end
-
-zd_nal: cmp.w #0x3c,d0 // immediate?
- bne zd_end // no->
- btst #7,d0 // long?
- beq zd_end // no
- addq.l #2,a0
-zd_end:
- move.l a0,12(sp)
- move.l (sp)+,d0
- move.l (sp)+,a0
- rte
-
-#ifdef _NOT_USED_
-linea:
- move.w #0x2700,sr // disable interrupt
- halt
- nop
- nop
-linef:
- move.w #0x2700,sr // disable interrupt
- halt
- nop
- nop
-format:
- move.w #0x2700,sr // disable interrupt
- halt
- nop
- nop
-
-//floating point
-flpoow:
- move.w #0x2700,sr // disable interrupt
- halt
- nop
- nop
-#endif /* _NOT_USED */
-
-
-irq1: irq 0x64, 1, 0x02 // Level 1 autovector interrupt (unused)
-irq2: irq 0x68, 2, 0x04 // Level 2 autovector interrupt (horizontal blank)
-irq3: irq 0x6c, 3, 0x08 // Level 3 autovector interrupt (unused)
-irq4: irq 0x70, 4, 0x10 // Level 4 autovector interrupt (vertical blank)
-
-
-
-#if defined(MACHINE_FIREBEE) // these handlers are only meaningful for the Firebee
-irq5: //move.w #0x2700,sr // disable interrupts
- subq.l #4,sp // extra space
-
- link a6,#-4 * 4 // save gcc scratch registers
- movem.l d0-d1/a0-a1,(sp)
-
- jsr _irq5_handler // call C handler routine
-
- tst.b d0 // handled?
- beq irq5_forward
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- addq.l #4,sp
-
- rte // return from exception
-
-irq5_forward: move.l 0x74,a0 // fetch OS irq5 vector
- add.l _rt_vbr,a0 // add runtime vbr
- move.l a0,4(a6) // put on stack
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6 //
- move.w #0x2500,sr // set interrupt level
- rts // jump through vector
-
-/*
- * irq6 needs special treatment since - because the Coldfire only supports autovector interrupts
- * - the exception vector is provided by the simulated MFP from the FPGA
- */
-irq6: move.w #0x2700,sr // disable interrupt
- subq.l #4,sp // extra space
-
- link a6,#-4 * 4 // save gcc scratch registers
- movem.l d0-d1/a0-a1,(sp)
-
- move.l 8(a6),-(sp) // format status word
- move.l 12(a6),-(sp) // pc at exception
- jsr _irq6_handler // call C handler
- lea 8(sp),sp // fix stack
-
- tst.b d0 // interrupt handled?
- beq irq6_forward // no, forward to TOS
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- addq.l #4,sp // "extra space" not needed in this case
- rte
-
-irq6_forward:
- move.l 0xf0020000,a0 // fetch "MFP interrupt vector" from FPGA
- add.l _rt_vbr,a0 // add runtime VBR
- move.l (a0),4(a6) // fetch handler address and put it on "extra space"
-
- movem.l (sp),d0-d1/a0-a1
- unlk a6
- move.w #0x2600,sr // set interrupt mask to MFP level
-
- rts // jump through vector
-
-/*
- * irq 7 = pseudo bus error
- */
-irq7:
- lea -12(sp),sp
- movem.l d0/a0,(sp)
-
- move.l __RAMBAR0+0x008,a0 // real access error handler
- move.l a0,8(sp) // this will be the return address for rts
-
- move.w 12(sp),d0 // format/vector word
- andi.l #0xf000,d0 // keep only the format
- ori.l #2*4,d0 // simulate vector #2, no fault
- move.w d0,12(sp)
-
- // TODO: Inside an interrupt handler, 16(sp) is the return address.
- // For an Access Error, it should be the address of the fault instruction instead
-
- lea MCF_EPORT_EPFR,a0
- bset #7,(a0) // clear int 7
-
- move.l (sp)+,d0 // restore registers
- move.l (sp)+,a0
- rts // Forward to the Access Error handler
-
-#else // handlers for M5484LITE
-
-irq5:
- move.w #0x2700,sr // disable interrupts
- subq.l #4,sp // extra space
-
- link a6,#-4 * 4 // save gcc scratch registers
- movem.l d0-d1/a0-a1,(sp)
-
- jsr _irq5_handler // call C handler routine
-
- tst.b d0 // handled?
- beq irq5_forward
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- addq.l #4,sp
-
- rte // return from exception
-
-irq5_forward:
- move.l 0x74,a0 // fetch OS irq5 vector
- add.l _rt_vbr,a0 // add runtime vbr
- move.l a0,4(a6) // put on stack
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6 //
- move.w #0x2500,sr // set interrupt level
- rts // jump through vector
-
-irq6:
- irq 0x74,5,0x20
-
-irq7: // irq7 is tied to PCI INTA# and PCI INTB# on the M5484LITE
-
- move.w #0x2700,sr // disable interrupts
-
- lea -4*4(sp),sp // save gcc scratch registers
- movem.l d0-d1/a0-a1,(sp)
-
- jsr _irq7_handler // call C handler routine
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- lea 4 * 4(sp),sp
-
- rte // return from exception
-
-irq7text:
- .data
- .ascii "IRQ7!"
- .byte 13,10,0
- .align 4
- .text
-#endif /* MACHINE_FIREBEE */
-
-/*
- * low-level interrupt service routine for routines registered with
- * isr_register_handler(int vector). If the higlevel routine (isr_execute_handler())
- * returns != true, the call is forwarded to the OS (through its own vector base).
- */
- .global _lowlevel_isr_handler
- .extern _isr_execute_handler
-
-
-/*
- * stack format (after link instruction) is like this:
- *
- * +12 program counter (return address)
- * +8 format_status
- * +4 save area for rts (if we need to jump through the OS vector)
- * (a6) -> saved a6 (from link)
- * -4
- * -8
- * -12
- * (sp) -> gcc scratch registers save area
- */
-_lowlevel_isr_handler:
- subq.l #4,sp // extra space
- link a6,#-4 * 4 // make room for
- movem.l d0-d1/a0-a1,(sp) // gcc scratch registers and save them,
- // other registers will be taken care of by gcc itself
-
- move.w 8(a6),d0 // fetch vector number from stack
- lsr.l #2,d0 // move it in place
- andi.l #0xff,d0 // mask it out
- move.l d0,-(sp) // push it
- jsr _isr_execute_handler // call the C handler
- addq.l #4,sp // adjust stack
- tst.l d0 // handled?
- beq lowlevel_forward // no, forward it to TOS
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6
- addq.l #4,sp // eliminate extra space
-
- rte
-
-lowlevel_forward:
- move.l 8(a6),d0 // fetch OS irq vector
- lsr.l #2,d0 // move it in place
- andi.l #0xff,d0 // mask out vector number
- add.l _rt_vbr,d0 // add runtime vbr
- move.l d0,4(a6) // put on stack as return address
-
- movem.l (sp),d0-d1/a0-a1 // restore registers
- unlk a6 //
- rts // jump through vector
diff --git a/BaS_gcc/sys/fault_vectors.c b/BaS_gcc/sys/fault_vectors.c
deleted file mode 100644
index c4ad5de..0000000
--- a/BaS_gcc/sys/fault_vectors.c
+++ /dev/null
@@ -1,235 +0,0 @@
-/*
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * provide an early exception vector branch table to catch exceptions _before_ VBR has been setup eventually
- * (to RAMBAR0, in exceptions.S)
- */
-
-#include "MCF5475.h"
-#include "bas_types.h"
-#include "bas_printf.h"
-
-typedef void (*exception_handler)(void);
-extern exception_handler SDRAM_VECTOR_TABLE[];
-
-/*
- * decipher Coldfire exception stack frame and print it out in cleartext
- */
-void fault_handler(uint32_t pc, uint32_t format_status)
-{
- int format;
- int fault_status;
- int vector;
- int sr;
-
- xprintf("\007\007exception! Processor halted.\r\n");
- xprintf("format_status: %lx\r\n", format_status);
- xprintf("pc: %lx\r\n", pc);
-
- /*
- * extract info from format-/status word
- */
- format = (format_status & 0b11110000000000000000000000000000) >> 28;
- fault_status = ((format_status & 0b00001100000000000000000000000000) >> 26) |
- ((format_status & 0b00000000000000110000000000000000) >> 16);
- vector = (format_status & 0b00000011111111000000000000000000) >> 18;
- sr = (format_status & 0b00000000000000001111111111111111);
-
- xprintf("format: %x\r\n", format);
- xprintf("fault_status: %x (", fault_status);
- switch (fault_status)
- {
- case 0:
- xprintf("not an access or address error nor an interrupted debug service routine");
- break;
-
- case 1:
- case 3:
- case 11:
- xprintf("reserved");
- break;
-
- case 2:
- xprintf("interrupt during a debug service routine for faults other than access errors");
- break;
-
- case 4:
- xprintf("error (for example, protection fault) on instruction fetch");
- break;
-
- case 5:
- xprintf("TLB miss on opword or instruction fetch");
- break;
-
- case 6:
- xprintf("TLB miss on extension word of instruction fetch");
- break;
-
- case 7:
- xprintf("IFP access error while executing in emulator mode");
- break;
-
- case 8:
- xprintf("error on data write");
- break;
-
- case 9:
- xprintf("error on attempted write to write-protected space");
- break;
-
- case 10:
- xprintf("TLB miss on data write");
- break;
-
- case 12:
- xprintf("error on data read");
- break;
-
- case 13:
- xprintf("attempted read, read-modify-write of protected space");
- break;
-
- case 14:
- xprintf("TLB miss on data read or read-modify-write");
- break;
-
- case 15:
- xprintf("OEP access error while executing in emulator mode");
- }
- xprintf(")\r\n");
-
- xprintf("vector = %d (", vector);
- switch (vector)
- {
- case 2:
- xprintf("access error");
- break;
-
- case 3:
- xprintf("address error");
- break;
-
- case 4:
- xprintf("illegal instruction");
- break;
-
- case 5:
- xprintf("divide by zero");
- break;
-
- case 8:
- xprintf("privilege violation");
- break;
-
- case 9:
- xprintf("trace");
- break;
-
- case 10:
- xprintf("unimplemented line-a opcode");
- break;
-
- case 11:
- xprintf("unimplemented line-f opcode");
- break;
-
- case 12:
- xprintf("non-PC breakpoint debug interrupt");
- break;
-
- case 13:
- xprintf("PC breakpoint debug interrupt");
- break;
-
- case 14:
- xprintf("format error");
- break;
-
- case 24:
- xprintf("spurious interrupt");
- break;
-
- default:
- if ( ((vector >= 6) && (vector <= 7)) ||
- ((vector >= 16) && (vector <= 23)))
- {
- xprintf("reserved");
- }
- else if ((vector >= 25) && (vector <= 31))
- {
- xprintf("level %d autovectored interrupt", fault_status - 24);
- }
- else if ((vector >= 32) && (vector <= 47))
- {
- xprintf("trap #%d", vector - 32);
- }
- else
- {
- xprintf("unknown vector\r\n");
- }
- }
- xprintf(")\r\n");
- xprintf("sr=%4x\r\n", sr);
-
- __asm__ __volatile__(
- " move.w 0x2700,d0 \r\n" // disable interrupts
- " move.w d0,sr \r\n"
- " halt \r\n" // stop processor
- : /* no output */
- : /* no input */
- : "memory");
-}
-
-void __attribute__((interrupt)) handler(void)
-{
- /*
- * Prepare exception stack contents so it can be handled by a C routine.
- *
- * For standard routines, we'd have to save registers here.
- * Since we do not intend to return anyway, we just ignore that requirement.
- */
- __asm__ __volatile__("move.l (sp),-(sp)\n\t"\
- "move.l 8(sp),-(sp)\n\t"\
- "bsr _fault_handler\n\t"\
- "halt\n\t"\
- : : : "memory");
-}
-
-void setup_vectors(void)
-{
- int i;
-
- xprintf("\r\ninstall early exception vector table:");
-
- for (i = 8; i < 256; i++)
- {
- SDRAM_VECTOR_TABLE[i] = &handler;
- }
-
- /*
- * make sure VBR points to our table
- */
- __asm__ __volatile__("clr.l d0\n\t"\
- "movec.l d0,VBR\n\t"\
- "nop\n\t"\
- "move.l d0,_rt_vbr"
- : /* outputs */
- : /* inputs */
- : "d0", "memory", "cc" /* clobbered registers */
- );
-
- xprintf("finished.\r\n");
-}
diff --git a/BaS_gcc/sys/init_fpga.c b/BaS_gcc/sys/init_fpga.c
deleted file mode 100644
index ec96545..0000000
--- a/BaS_gcc/sys/init_fpga.c
+++ /dev/null
@@ -1,201 +0,0 @@
-/*
- * init_fpga.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#include "MCF5475.h"
-#include "sysinit.h"
-#include "bas_printf.h"
-#include "wait.h"
-
-// #define FPGA_DEBUG
-#if defined(FPGA_DEBUG)
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif
-
-#define FPGA_STATUS (1 << 0)
-#define FPGA_CLOCK (1 << 1)
-#define FPGA_CONFIG (1 << 2)
-#define FPGA_DATA0 (1 << 3)
-#define FPGA_CONF_DONE (1 << 5)
-
-extern uint8_t _FPGA_CONFIG[];
-#define FPGA_FLASH_DATA &_FPGA_CONFIG[0]
-extern uint8_t _FPGA_CONFIG_SIZE[];
-#define FPGA_FLASH_DATA_SIZE ((uint32_t) &_FPGA_CONFIG_SIZE[0])
-
-/*
- * flag located in processor SRAM1 that indicates that the FPGA configuration has
- * been loaded through the onboard JTAG interface.
- * init_fpga() will honour this and not overwrite config.
- */
-extern uint32_t _FPGA_JTAG_LOADED;
-extern uint32_t _FPGA_JTAG_VALID;
-#define VALID_JTAG 0xaffeaffe
-
-void config_gpio_for_fpga_config(void)
-{
-#if defined(MACHINE_FIREBEE)
- /*
- * Configure GPIO FEC1L port directions (needed to load FPGA configuration)
- */
- MCF_GPIO_PDDR_FEC1L = 0 | /* bit 7 = input */
- 0 | /* bit 6 = input */
- 0 | /* bit 5 = input */
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 | /* bit 4 = LED => output */
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 | /* bit 3 = PRG_DQ0 => output */
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 | /* bit 2 = FPGA_CONFIG => output */
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 | /* bit 1 = PRG_CLK (FPGA) => output */
- 0; /* bit 0 => input */
-#endif /* MACHINE_FIREBEE */
-}
-
-void config_gpio_for_jtag_config(void)
-{
- /*
- * configure FEC1L port directions to enable external JTAG configuration download to FPGA
- */
- MCF_GPIO_PDDR_FEC1L = 0 |
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4; /* bit 4 = LED => output */
- /* all other bits = input */
- /*
- * unfortunately, the GPIO module cannot trigger interrupts. That means CONF_DONE needs to be polled to detect
- * external FPGA (re)configuration and reset the system in that case. Could be done from the OS as well...
- */
-}
-
-/*
- * load FPGA
- */
-bool init_fpga(void)
-{
- uint8_t *fpga_data;
- volatile int32_t time, start, end;
- int i;
-
- xprintf("FPGA load config...\r\n");
- xprintf("_FPGA_JTAG_LOADED = 0x%x\r\n", _FPGA_JTAG_LOADED);
- xprintf("_FPGA_JTAG_VALID = 0x%x\r\n", _FPGA_JTAG_VALID);
- if (_FPGA_JTAG_LOADED == 1 && _FPGA_JTAG_VALID == VALID_JTAG)
- {
- xprintf("detected _FPGA_JTAG_LOADED flag. FPGA config skipped.\r\n");
-
- /* reset the flag so that next boot will load config again from flash */
- // _FPGA_JTAG_LOADED = 0;
- // _FPGA_JTAG_VALID = 0;
-
- return true;
- }
- start = MCF_SLT0_SCNT;
-
- config_gpio_for_fpga_config();
- MCF_GPIO_PODR_FEC1L &= ~FPGA_CLOCK; /* FPGA clock => low */
-
- /* pulling FPGA_CONFIG to low resets the FPGA */
- MCF_GPIO_PODR_FEC1L &= ~FPGA_CONFIG; /* FPGA config => low */
- wait(10); /* give it some time to do its reset stuff */
-
- while ((MCF_GPIO_PPDSDR_FEC1L & FPGA_STATUS) && (MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE));
-
- MCF_GPIO_PODR_FEC1L |= FPGA_CONFIG; /* pull FPGA_CONFIG high to start config cycle */
- while (!(MCF_GPIO_PPDSDR_FEC1L & FPGA_STATUS))
- ; /* wait until status becomes high */
-
- /*
- * excerpt from an Altera configuration manual:
- *
- * The low-to-high transition of nCONFIG on the FPGA begins the configuration cycle. The
- * configuration cycle consists of 3 stages: reset, configuration, and initialization.
- * While nCONFIG is low, the device is in reset. When the device comes out of reset,
- * nCONFIG must be at a logic high level in order for the device to release the open-drain
- * nSTATUS pin. After nSTATUS is released, it is pulled high by a pull-up resistor and the FPGA
- * is ready to receive configuration data. Before and during configuration, all user I/O pins
- * are tri-stated. Stratix series, Arria series, and Cyclone series have weak pull-up resistors
- * on the I/O pins which are on, before and during configuration.
- *
- * To begin configuration, nCONFIG and nSTATUS must be at a logic high level. You can delay
- * configuration by holding the nCONFIG low. The device receives configuration data on its
- * DATA0 pins. Configuration data is latched into the FPGA on the rising edge of DCLK. After
- * the FPGA has received all configuration data successfully, it releases the CONF_DONE pin,
- * which is pulled high by a pull-up resistor. A low to high transition on CONF_DONE indicates
- * configuration is complete and initialization of the device can begin.
- */
-
- const uint8_t *fpga_flash_data_end = FPGA_FLASH_DATA + FPGA_FLASH_DATA_SIZE;
-
- fpga_data = (uint8_t *) FPGA_FLASH_DATA;
- do
- {
- uint8_t value = *fpga_data++;
- for (i = 0; i < 8; i++, value >>= 1)
- {
-
- if (value & 1)
- {
- /* bit set -> toggle DATA0 to high */
- MCF_GPIO_PODR_FEC1L |= FPGA_DATA0;
- }
- else
- {
- /* bit is cleared -> toggle DATA0 to low */
- MCF_GPIO_PODR_FEC1L &= ~FPGA_DATA0;
- }
- /* toggle DCLK -> FPGA reads the bit */
- MCF_GPIO_PODR_FEC1L |= FPGA_CLOCK;
- MCF_GPIO_PODR_FEC1L &= ~FPGA_CLOCK;
- }
- } while ((!(MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)) && (fpga_data < fpga_flash_data_end));
-
- if (fpga_data < fpga_flash_data_end)
- {
-#ifdef _NOT_USED_
- while (fpga_data++ < fpga_flash_data_end)
- {
- /* toggle a little more since it's fun ;) */
- MCF_GPIO_PODR_FEC1L |= FPGA_CLOCK;
- MCF_GPIO_PODR_FEC1L &= ~FPGA_CLOCK;
- }
-#endif /* _NOT_USED_ */
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
-
- xprintf("finished (took %f seconds).\r\n", time / 1000.0);
- config_gpio_for_jtag_config();
-
- /*
- * assure skipping fpga load on warm boot
- */
-
- _FPGA_JTAG_LOADED = 1;
- _FPGA_JTAG_VALID = VALID_JTAG;
-
- xprintf("SRAM now set to FPGA load skip\r\n");
-
- return true;
- }
- xprintf("FAILED!\r\n");
- config_gpio_for_jtag_config();
-
- return false;
-}
diff --git a/BaS_gcc/sys/interrupts.c b/BaS_gcc/sys/interrupts.c
deleted file mode 100644
index 50e6680..0000000
--- a/BaS_gcc/sys/interrupts.c
+++ /dev/null
@@ -1,685 +0,0 @@
-/*
- * Interrupts
- *
- * Handle interrupts, the levels.
- *
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "MCF5475.h"
-#include "bas_utils.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "exceptions.h"
-#include "interrupts.h"
-#include "bas_printf.h"
-#include "startcf.h"
-#include "cache.h"
-#include "util.h"
-#include "dma.h"
-#include "pci.h"
-#include
-
-// #define DEBUG
-#include "debug.h"
-
-#ifndef MAX_ISR_ENTRY
-#define MAX_ISR_ENTRY (20)
-#endif
-
-
-struct isrentry
-{
- int vector;
- bool (*handler)(void *, void *);
- void *hdev;
- void *harg;
-};
-
-static struct isrentry isrtab[MAX_ISR_ENTRY]; /* list of interrupt service routines */
-
-
-/*
- * clear the table of interrupt service handlers
- */
-void isr_init(void)
-{
- memset(isrtab, 0, sizeof(isrtab));
-}
-
-bool isr_set_prio_and_level(int int_source, int priority, int level)
-{
- if (int_source > 8 && int_source <= 62)
- {
- /*
- * preset interrupt control registers with level and priority
- */
- dbg("set MCF_INTC_ICR(%d) to priority %d, level %d\r\n",
- int_source, priority, level);
- MCF_INTC_ICR(int_source) = MCF_INTC_ICR_IP(priority) |
- MCF_INTC_ICR_IL(level);
- }
- else if (int_source >= 1 && int_source <= 8)
- {
- dbg("interrrupt control register for vector %d is read only!\r\n");
- }
- else
- {
- err("invalid vector - interrupt control register not set.\r\n");
- return false;
- }
-
- return true;
-}
-
-/*
- * enable internal int source in interrupt controller
- */
-bool isr_enable_int_source(int int_source)
-{
- dbg("anding int_source %d, MCF_INTC_IMR%c = 0x%08x, now 0x%08x\r\n",
- int_source,
- int_source < 32 && int_source > 0 ? 'L' :
- int_source >= 32 && int_source <= 62 ? 'H' : 'U',
- int_source < 32 && int_source > 0 ? ~(1 << int_source) :
- int_source >= 32 && int_source <= 62 ? ~(1 << (int_source - 32)) : 0,
- MCF_INTC_IMRH);
-
- if (int_source < 32 && int_source > 0)
- {
- MCF_INTC_IMRL &= ~(1 << int_source);
- }
- else if (int_source >= 32 && int_source <= 62)
- {
- MCF_INTC_IMRH &= ~(1 << (int_source - 32));
- }
- else
- {
- dbg("vector %d does not correspond to an internal interrupt source\r\n");
- return false;
- }
-
- return true;
-}
-
-/*
- * This function places an interrupt handler in the ISR table,
- * thereby registering it so that the low-level handler may call it.
- *
- * The two parameters are intended for the first arg to be a
- * pointer to the device itself, and the second a pointer to a data
- * structure used by the device driver for that particular device.
- */
-bool isr_register_handler(int vector, int level, int priority, bool (*handler)(void *, void *), void *hdev, void *harg)
-{
- int index;
- int int_source;
-
- if ((vector <= 0) || (handler == NULL))
- {
- dbg("illegal vector or handler (vector=%x, handler=%p)!\r\n", vector, handler);
-
- return false;
- }
-
- for (index = 0; index < MAX_ISR_ENTRY; index++)
- {
- if (isrtab[index].vector == vector)
- {
- /* one cross each, only! */
- dbg("already set handler with this vector (%d, %d)\r\n", vector);
-
- return false;
- }
-
- if (isrtab[index].vector == 0)
- {
- isrtab[index].vector = vector;
- isrtab[index].handler = handler;
- isrtab[index].hdev = hdev;
- isrtab[index].harg = harg;
-
- int_source = vector - 64;
-
- if (int_source >= 0)
- {
- if (!isr_enable_int_source(int_source))
- {
- dbg("failed to enable internal interrupt souce %d in IMRL/IMRH\r\n", int_source);
- return false;
- }
-
- if (!isr_set_prio_and_level(int_source, priority, level))
- {
- dbg("failed to set priority and level for interrupt source %d\r\n", int_source);
- return false;
- }
- }
- return true;
- }
- }
- dbg("no available slots to register handler for vector %d\n\r", vector);
-
- return false; /* no available slots */
-}
-
-void isr_remove_handler(bool (*handler)(void *, void *))
-{
- /*
- * This routine removes from the ISR table all
- * entries that matches 'handler'.
- */
- int index;
-
- for (index = 0; index < MAX_ISR_ENTRY; index++)
- {
- if (isrtab[index].handler == handler)
- {
- memset(&isrtab[index], 0, sizeof(struct isrentry));
-
- return;
- }
- }
- dbg("no such handler registered (handler=%p\r\n", handler);
-}
-
-#ifdef DEBUG
-static char *vector_to_str[] =
-{
- "initial stack pointer", /* 0 */
- "initial program counter", /* 1 */
- "access error", /* 2 */
- "address error", /* 3 */
- "illegal instruction", /* 4 */
- "divide by zero", /* 5 */
- "reserved6", /* 6 */
- "reserved7", /* 7 */
- "privilege violation", /* 8 */
- "trace", /* 9 */
- "unimplemented line-a opcode", /* 10 */
- "unimplemented line-f opcode", /* 11 */
- "non-PC breakpoint debug interrupt", /* 12 */
- "PC breakpoint debug interrupt", /* 13 */
- "format error", /* 14 */
- "uninitialized interrupt", /* 15 */
- "reserved16",
- "reserved17",
- "reserved18",
- "reserved19",
- "reserved20",
- "reserved21",
- "reserved22",
- "reserved23",
- "spurious interrupt", /* 24 */
- "level 1 autovector", /* 25 */
- "level 2 autovector", /* 26 */
- "level 3 autovector", /* 27 */
- "level 4 autovector", /* 28 */
- "level 5 autovector", /* 29 */
- "level 6 autovector", /* 30 */
- "level 7 autovector", /* 31 */
- "trap #0", /* 32 */
- "trap #1", /* 33 */
- "trap #2", /* 34 */
- "trap #3", /* 35 */
- "trap #4", /* 36 */
- "trap #5", /* 37 */
- "trap #6", /* 38 */
- "trap #7", /* 39 */
- "trap #8", /* 40 */
- "trap #9", /* 41 */
- "trap #10" /* 42 */
- "trap #11", /* 43 */
- "trap #12", /* 44 */
- "trap #13", /* 45 */
- "trap #14", /* 46 */
- "trap #15", /* 47 */
- "floating point branch on unordered condition", /* 48 */
- "floting point inexact result", /* 49 */
- "floating point divide by zero", /* 50 */
- "floating point underflow", /* 51 */
- "floating point operand error", /* 52 */
- "floating point overflow", /* 53 */
- "floating point NaN", /* 54 */
- "floating point denormalized number", /* 55 */
- "reserved56", /* 56 */
- "reserved57",
- "reserved58",
- "reserved59",
- "reserved60",
- "unsupported instruction", /* 61 */
- "reserved62", /* 62 */
- "reserved63", /* 63 */
- "", "",
- "edge port 1", /* 1 */
- "edge port 2", /* 2 */
- "edge port 3", /* 3 */
- "edge port 4", /* 4 */
- "edge port 5", /* 5 */
- "edge port 6", /* 6 */
- "edge port 7", /* 7 */
- "unused8",
- "unused9",
- "unused10",
- "unused11",
- "unused12",
- "unused13",
- "unused14",
- "USB endpoint 0", /* 15 */
- "USB endpoint 1", /* 16 */
- "USB endpoint 2", /* 17 */
- "USB endpoint 3", /* 18 */
- "USB endpoint 4", /* 19 */
- "USB endpoint 5", /* 20 */
- "USB endpoint 6", /* 21 */
- "USB general interrupt", /* 22 */
- "USB core interrupt", /* 23 */
- "USB OR interrupt", /* 24 */
- "DSPI over/underflow", /* 25 */
- "DSPI receive FIFO overflow", /* 26 */
- "DSPI receive FIFO drain", /* 27 */
- "DSPI transmit FIFO underflow", /* 28 */
- "DSPI transfer complete", /* 29 */
- "DSPI trasmit FIFO full", /* 30 */
- "DSPI end of queue", /* 31 */
- "PSC3", /* 32 */
- "PSC2", /* 33 */
- "PSC1", /* 34 */
- "PSC0", /* 35 */
- "Comm timer", /* 36 */
- "SEC", /* 37 */
- "FEC1", /* 38 */
- "FEC0", /* 39 */
- "I2C", /* 40 */
- "PCI arbiter", /* 41 */
- "comm bus PCI", /* 42 */
- "XLB PCI", /* 43 */
- "not used44",
- "not used45",
- "not used46",
- "XLB arbiter to CPU", /* 47 */
- "multichannel DMA", /* 48 */
- "FlexCAN 0 error", /* 49 */
- "FlexCAN 0 bus off", /* 50 */
- "FlexCAN 0 message buffer", /* 51 */
- "not used52"
- "slice timer 1", /* 53 */
- "slice timer 0", /* 54 */
- "FlexCAN 1 error", /* 55 */
- "FlexCAN 1 bus off", /* 56 */
- "FlexCAN 1 message buffer", /* 57 */
- "not used58",
- "GPT3", /* 59 */
- "GPT2", /* 60 */
- "GPT1", /* 61 */
- "GPT0", /* 62 */
- "not used63"
-};
-#endif /* DEBUG */
-
-/*
- * This routine searches the ISR table for an entry that matches
- * 'vector'. If one is found, then 'handler' is executed.
- *
- * This routine returns either true or false where
- * true = interrupt has been handled, return to caller
- * false= interrupt has been handled or hasn't, but needs to be forwarded to TOS
- */
-bool isr_execute_handler(int vector)
-{
- int index;
-
- dbg("vector = %d (%s)\r\n", vector, vector_to_str[vector]);
-
- /*
- * locate an interrupt service routine handler.
- */
- for (index = 0; index < MAX_ISR_ENTRY; index++)
- {
- if (isrtab[index].vector == vector)
- {
- isrtab[index].handler(isrtab[index].hdev, isrtab[index].harg);
- return true;
- }
- }
- err("no isr handler for vector %d found. Spurious?\r\n", vector);
-
- return true;
-}
-
-#if defined(MACHINE_FIREBEE)
-/*
- * PIC interrupt handler for Firebee
- *
- * Handles PIC requests that come in from PSC3 serial interface. Currently, that
- * is RTC/NVRAM requests only
- */
-bool pic_interrupt_handler(void *arg1, void *arg2)
-{
- uint8_t rcv_byte;
-
- dbg("PIC interrupt\r\n");
-
- rcv_byte = read_pic_byte();
- if (rcv_byte == 2) /* PIC requests RTC data */
- {
- volatile uint8_t *rtc_reg = (uint8_t *) 0xffff8961;
- volatile uint8_t *rtc_data = (uint8_t *) 0xffff8963;
- int index = 0;
-
- err("PIC interrupt: requesting RTC data\r\n");
-
- write_pic_byte(0x82); // header byte to PIC
- do
- {
- *rtc_reg = index;
- write_pic_byte(*rtc_data);
- } while (++index < 64);
- }
- return true;
-}
-#endif /* MACHINE_FIREBEE */
-
-bool xlbpci_interrupt_handler(void *arg1, void *arg2)
-{
- uint32_t reason;
-
- dbg("XLB PCI interrupt\r\n");
-
- reason = MCF_PCI_PCIISR;
-
- if (reason & MCF_PCI_PCIISR_RE)
- {
- dbg("Retry error. Retry terminated or max retries reached. Cleared\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_RE;
- }
-
- if (reason & MCF_PCI_PCIISR_IA)
- {
- dbg("Initiator abort. No target answered in time. Cleared.\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_IA;
- }
-
- if (reason & MCF_PCI_PCIISR_TA)
- {
- dbg("Target abort. Cleared.\r\n");
- MCF_PCI_PCIISR |= MCF_PCI_PCIISR_TA;
- }
-
- return true;
-}
-
-bool pciarb_interrupt_handler(void *arg1, void *arg2)
-{
- dbg("PCI ARB interrupt\r\n");
-
- MCF_PCIARB_PASR |= MCF_PCIARB_PASR_EXTMBK(0x1f) | MCF_PCIARB_PASR_ITLMBK;
- return true;
-}
-
-bool xlbarb_interrupt_handler(void *arg1, void *arg2)
-{
- uint32_t status = MCF_XLB_XARB_SR;
-
- dbg("arg1=0x%08x arg2=0x%08x\r\n", arg1, arg2);
-
- /*
- * TODO: we should probably issue a bus error when this occors
- */
- err("XLB arbiter interrupt\r\n");
- err("captured address: 0x%08lx\r\n", MCF_XLB_XARB_ADRCAP);
-
- MCF_XLB_XARB_ADRCAP = 0x0L;
- MCF_XLB_XARB_SIGCAP = 0x0L;
-
- if (status & MCF_XLB_XARB_SR_AT)
- err("address tenure timeout\r\n");
- if (status & MCF_XLB_XARB_SR_DT)
- err("data tenure timeout\r\n");
- if (status & MCF_XLB_XARB_SR_BA)
- err("bus activity tenure timeout\r\n");
- if (status & MCF_XLB_XARB_SR_TTM)
- err("TBST/TSIZ mismatch\r\n");
- if (status & MCF_XLB_XARB_SR_ECW)
- err("external control word read/write\r\n");
- if (status & MCF_XLB_XARB_SR_TTR)
- err("TT reserved\r\n");
- if (status & MCF_XLB_XARB_SR_TTA)
- err("TT address only\r\n");
- if (status & MCF_XLB_XARB_SR_MM)
- err("multiple masters at priority 0\r\n");
- if (status & MCF_XLB_XARB_SR_SEA)
- err("slave error acknowledge\r\n");
-
- /*
- * acknowledge interrupt
- */
- MCF_XLB_XARB_SR = status; /* rwc bits */
-
- return true;
-}
-
-#if defined(MACHINE_FIREBEE)
-/*
- * This gets called from irq5 in exceptions.S
- *
- * IRQ5 are the "FBEE" (PIC, ETH PHY, PCI, DVI monitor sense and DSP) interrupts multiplexed by the FPGA interrupt handler
- */
-bool irq5_handler(void *arg1, void *arg2)
-{
- uint32_t pending_interrupts = FBEE_INTR_PENDING;
-
- dbg("IRQ5!\r\n");
- if (pending_interrupts & FBEE_INTR_PIC)
- {
- dbg("PIC interrupt\r\n");
- FBEE_INTR_CLEAR = FBEE_INTR_PIC;
- }
-
- if (pending_interrupts & FBEE_INTR_ETHERNET)
- {
- dbg("ethernet 0 PHY interrupt\r\n");
- FBEE_INTR_CLEAR = FBEE_INTR_ETHERNET;
- }
-
- if (pending_interrupts & FBEE_INTR_DVI)
- {
- dbg("DVI monitor sense interrupt\r\n");
- FBEE_INTR_CLEAR = FBEE_INTR_DVI;
- }
-
- if (pending_interrupts & FBEE_INTR_PCI_INTA ||
- pending_interrupts & FBEE_INTR_PCI_INTB ||
- pending_interrupts & FBEE_INTR_PCI_INTC ||
- pending_interrupts & FBEE_INTR_PCI_INTD)
- {
- int handle;
-
- if ((handle = pci_get_interrupt_cause() != -1))
- {
- pci_call_interrupt_chain(handle, 0L);
- }
- dbg("PCI interrupt IRQ5\r\n");
- FBEE_INTR_CLEAR = FBEE_INTR_PCI_INTA |
- FBEE_INTR_PCI_INTB |
- FBEE_INTR_PCI_INTC |
- FBEE_INTR_PCI_INTD;
- }
-
- if (pending_interrupts & FBEE_INTR_DSP)
- {
- dbg("DSP interrupt\r\n");
- FBEE_INTR_CLEAR = FBEE_INTR_DSP;
- }
-
- MCF_EPORT_EPFR |= (1 << 5); /* clear interrupt from edge port */
-
- return true;
-}
-
-/*
- * blink the Firebee's LED to show we are still alive
- */
-void blink_led(void)
-{
- static uint16_t blinker = 0;
-
- if ((blinker++ & 0x80) > 0)
- {
- MCF_GPIO_PODR_FEC1L |= (1 << 4); /* LED off */
- }
- else
- {
- MCF_GPIO_PODR_FEC1L &= ~(1 << 4); /* LED on */
- }
-}
-
-/*
- * Atari MFP interrupt registers.
- *
- * TODO: should go into a header file
- */
-
-#define FALCON_MFP_IERA *((volatile uint8_t *) 0xfffffa07)
-#define FALCON_MFP_IERB *((volatile uint8_t *) 0xfffffa09)
-#define FALCON_MFP_IPRA *((volatile uint8_t *) 0xfffffa0b)
-#define FALCON_MFP_IPRB *((volatile uint8_t *) 0xfffffa0d)
-#define FALCON_MFP_IMRA *((volatile uint8_t *) 0xfffffa13)
-#define FALCON_MFP_IMRB *((volatile uint8_t *) 0xfffffa15)
-
-bool irq6_acsi_dma_interrupt(void)
-{
- dbg("ACSI DMA interrupt\r\n");
-
- /*
- * TODO: implement handler
- */
-
- return false;
-}
-
-bool irq6_handler(uint32_t sf1, uint32_t sf2)
-{
- //err("IRQ6!\r\n");
-
- if (FALCON_MFP_IPRA || FALCON_MFP_IPRB)
- {
- blink_led();
- }
-
- MCF_EPORT_EPFR |= (1 << 6); /* clear int6 from edge port */
-
- return false; /* always forward IRQ6 to TOS */
-}
-
-#else /* MACHINE_FIREBEE */
-
-bool irq5_handler(void *arg1, void *arg2)
-{
- MCF_EPORT_EPFR |= (1 << 5); /* clear int5 from edge port */
-
- return true;
-}
-
-bool irq6_handler(void *arg1, void *arg2)
-{
- err("IRQ6!\r\n");
-
- MCF_EPORT_EPFR |= (1 << 6); /* clear int6 from edge port */
-
- return false; /* always forward IRQ6 to TOS */
-}
-
-/*
- * This gets called from irq7 in exceptions.S
- * Once we arrive here, the SR has been set to disable interrupts and the gcc scratch registers have been saved
- */
-bool irq7_handler(void)
-{
- int32_t handle;
- int32_t value = 0;
- int32_t newvalue;
-
- MCF_EPORT_EPFR |= (1 << 7);
- dbg("IRQ7!\r\n");
- if ((handle = pci_get_interrupt_cause()) > 0)
- {
- newvalue = pci_call_interrupt_chain(handle, value);
- if (newvalue == value)
- {
- dbg("interrupt not handled!\r\n");
- }
- }
- MCF_EPORT_EPFR |= (1 << 7); /* clear int7 from edge port */
-
- return true;
-}
-#endif /* MACHINE_M548X */
-
-#if defined(MACHINE_FIREBEE)
-/*
- * this is the higlevel interrupt service routine for gpt0 timer interrupts.
- *
- * It is called from handler_gpt0 in exceptions.S
- *
- * The gpt0 timer is not used as a timer, but as interrupt trigger by the FPGA which fires
- * everytime the video base address high byte (0xffff8201) gets written by user code (i.e.
- * everytime the video base address is set).
- * The interrupt service routine checks if that page was already set as a video page (in that
- * case it does nothing), if not (if we have a newly set page), it sets up an MMU mapping for
- * that page (effectively rerouting any further access to Falcon video RAM to Firebee FPGA
- * video RAM starting at 0x60000000) and copies SDRAM contents of that page to the video
- * RAM page.
- */
-bool gpt0_interrupt_handler(void *arg0, void *arg1)
-{
- dbg("gpt0 handler called\n\r");
-
- MCF_GPT0_GMS &= ~1; /* rearm trigger */
- NOP();
- MCF_GPT0_GMS |= 1;
-
- return true;
-}
-#endif /* MACHINE_FIREBEE */
-
-
-uint32_t set_ipl(uint32_t ipl)
-{
- uint32_t ret;
-
- __asm__ __volatile__(
- " move.w sr,%[ret]\r\n" /* retrieve status register */
- " andi.l #0x07,%[ipl]\n\t" /* mask out ipl bits on new value */
- " lsl.l #8,%[ipl]\n\t" /* shift them to position */
- " move.l %[ret],d0\n\t" /* retrieve original value */
- " andi.l #0x0000f8ff,d0\n\t" /* clear ipl part */
- " or.l %[ipl],d0\n\t" /* or in new value */
- " move.w d0,sr\n\t" /* put it in place */
- " andi.l #0x0700,%[ret]\r\n" /* mask out ipl bits */
- " lsr.l #8,%[ret]\r\n" /* shift them to position */
- : [ret] "=&d" (ret) /* output */
- : [ipl] "d" (ipl) /* input */
- : "d0", "cc" /* clobber */
- );
-
- return ret;
-}
diff --git a/BaS_gcc/sys/mmu.c b/BaS_gcc/sys/mmu.c
deleted file mode 100644
index 435e6c3..0000000
--- a/BaS_gcc/sys/mmu.c
+++ /dev/null
@@ -1,1017 +0,0 @@
-#include "mmu.h"
-#include "acia.h"
-#include "exceptions.h"
-#include "pci.h"
-
-// #define DEBUG
-#include "debug.h"
-
-/*
- * mmu.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * derived from original assembler sources:
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2013 M. Froeschle
- */
-
-#include
-#include "bas_printf.h"
-#include "bas_types.h"
-#include "MCF5475.h"
-#include "pci.h"
-#include "cache.h"
-#include "util.h"
-
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine!"x
-#endif /* MACHINE_FIREBEE */
-
-/*
- * set ASID register
- * saves new value to rt_asid and returns former value
- */
-inline uint32_t set_asid(uint32_t value)
-{
- extern long rt_asid;
- uint32_t ret = rt_asid;
-
- __asm__ __volatile__(
- "movec %[value],ASID\n\t"
- : /* no output */
- : [value] "r" (value)
- :
- );
-
- rt_asid = value;
-
- return ret;
-}
-
-
-/*
- * set ACRx register
- * saves new value to rt_acrx and returns former value
- */
-inline uint32_t set_acr0(uint32_t value)
-{
- extern uint32_t rt_acr0;
- uint32_t ret = rt_acr0;
-
- __asm__ __volatile__(
- "movec %[value],ACR0\n\t"
- : /* not output */
- : [value] "r" (value)
- :
- );
- rt_acr0 = value;
-
- return ret;
-}
-
-/*
- * set ACRx register
- * saves new value to rt_acrx and returns former value
- */
-inline uint32_t set_acr1(uint32_t value)
-{
- extern uint32_t rt_acr1;
- uint32_t ret = rt_acr1;
-
- __asm__ __volatile__(
- "movec %[value],ACR1\n\t"
- : /* not output */
- : [value] "r" (value)
- :
- );
- rt_acr1 = value;
-
- return ret;
-}
-
-
-/*
- * set ACRx register
- * saves new value to rt_acrx and returns former value
- */
-inline uint32_t set_acr2(uint32_t value)
-{
- extern uint32_t rt_acr2;
- uint32_t ret = rt_acr2;
-
- __asm__ __volatile__(
- "movec %[value],ACR2\n\t"
- : /* not output */
- : [value] "r" (value)
- :
- );
- rt_acr2 = value;
-
- return ret;
-}
-
-/*
- * set ACRx register
- * saves new value to rt_acrx and returns former value
- */
-inline uint32_t set_acr3(uint32_t value)
-{
- extern uint32_t rt_acr3;
- uint32_t ret = rt_acr3;
-
- __asm__ __volatile__(
- "movec %[value],ACR3\n\t"
- : /* not output */
- : [value] "r" (value)
- :
- );
- rt_acr3 = value;
-
- return ret;
-}
-
-inline uint32_t set_mmubar(uint32_t value)
-{
- extern uint32_t rt_mmubar;
- uint32_t ret = rt_mmubar;
-
- __asm__ __volatile__(
- "movec %[value],MMUBAR\n\t"
- : /* no output */
- : [value] "r" (value)
- : /* no clobber */
- );
- rt_mmubar = value;
- NOP();
-
- return ret;
-}
-
-
-/*
- * translation table for virtual address ranges. Holds the physical_offset (which must be added to a virtual
- * address to get its physical counterpart) for memory ranges.
- */
-struct virt_to_phys
-{
- uint32_t start_address;
- uint32_t length;
- uint32_t physical_offset;
-};
-
-#if defined(MACHINE_FIREBEE)
-static struct virt_to_phys translation[] =
-{
- /* virtual , length , offset */
- { 0x00000000, 0x00e00000, 0x60000000 }, /* map first 14 MByte to first 14 Mb of video ram */
- { 0x00e00000, 0x00100000, 0x00000000 }, /* map TOS to SDRAM */
- { 0x00f00000, 0x00100000, 0xff000000 }, /* map Falcon I/O area to FPGA */
- { 0x01000000, 0x1f000000, 0x00000000 }, /* map rest of ram virt = phys */
-};
-#elif defined(MACHINE_M5484LITE)
-static struct virt_to_phys translation[] =
-{
- /* virtual , length , offset */
- { 0x00000000, 0x00e00000, 0x00000000 }, /* map first 14 MByte to first 14 Mb of SD ram */
- { 0x00e00000, 0x00100000, 0x00000000 }, /* map TOS to SDRAM */
- { 0x01000000, 0x04000000, 0x00000000 }, /* map rest of ram virt = phys */
-#if 0
- { 0x04000000, 0x08000000, 0x7C000000 }, /* experimental mapping for PCI memory */
-#endif
-};
-#elif defined(MACHINE_M54455)
-/* FIXME: this is not determined yet! */
-static struct virt_to_phys translation[] =
-{
- /* virtual , length , offset */
- { 0x00000000, 0x00e00000, 0x60000000 }, /* map first 14 MByte to first 14 Mb of video ram */
- { 0x00e00000, 0x00100000, 0x00000000 }, /* map TOS to SDRAM */
- { 0x00f00000, 0x00100000, 0xff000000 }, /* map Falcon I/O area to FPGA */
- { 0x01000000, 0x1f000000, 0x00000000 }, /* map rest of ram virt = phys */
-};
-#else
-#error unknown machine!
-#endif
-
-static int num_translations = sizeof(translation) / sizeof(struct virt_to_phys);
-
-static inline uint32_t lookup_phys(int32_t virt)
-{
- int i;
-
- for (i = 0; i < num_translations; i++)
- {
- if (virt >= translation[i].start_address && virt < translation[i].start_address + translation[i].length)
- {
- return virt + translation[i].physical_offset;
- }
- }
- err("virtual address 0x%lx not found in translation table!\r\n", virt);
-
- return -1;
-}
-
-
-/*
- * page descriptors. Size depending on DEFAULT_PAGE_SIZE, either 1M (resulting in 512
- * bytes size) or 8k pages (64k descriptor array size)
- */
-#define NUM_PAGES (SDRAM_SIZE / SIZE_DEFAULT)
-static struct mmu_page_descriptor_ram pages[NUM_PAGES];
-
-
-int mmu_map_instruction_page(uint32_t virt, uint8_t asid)
-{
- const uint32_t size_mask = ~ (SIZE_DEFAULT - 1); /* pagesize */
- int page_index = (virt & size_mask) / SIZE_DEFAULT; /* index into page_descriptor array */
- struct mmu_page_descriptor_ram *page = &pages[page_index]; /* attributes of page to map */
- int ipl;
- uint32_t phys = lookup_phys(virt); /* virtual to physical translation of page */
-
- if (phys == (uint32_t) -1)
- {
- /* no valid mapping found, caller will issue a bus error in return */
- dbg("no mapping found\r\n");
- return 0;
- }
-
-#ifdef DBG_MMU
- register int sp asm("sp");
- dbg("page_descriptor: 0x%02x, ssp = 0x%08x\r\n", * (uint8_t *) page, sp);
-#endif /* DBG_MMU */
-
- /*
- * add page to TLB
- */
-
- ipl = set_ipl(7); /* do not disturb */
-
- MCF_MMU_MMUAR = (virt & size_mask);
-
- MCF_MMU_MMUTR = (virt & size_mask) | /* virtual address */
- MCF_MMU_MMUTR_ID(asid) | /* address space id (ASID) */
- (page->global ? MCF_MMU_MMUTR_SG : 0) | /* shared global */
- MCF_MMU_MMUTR_V; /* valid */
-
- MCF_MMU_MMUDR = (phys & size_mask) | /* physical address */
- MCF_MMU_MMUDR_SZ(MMU_PAGE_SIZE_DEFAULT) | /* page size */
- MCF_MMU_MMUDR_CM(page->cache_mode) | /* cache mode */
- (page->supervisor_protect ? MCF_MMU_MMUDR_SP : 0) | /* supervisor protect */
- (page->read ? MCF_MMU_MMUDR_R : 0) | /* read access enable */
- (page->write ? MCF_MMU_MMUDR_W : 0) | /* write access enable */
- (page->execute ? MCF_MMU_MMUDR_X : 0) | /* execute access enable */
- (page->locked ? MCF_MMU_MMUDR_LK : 0);
-
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */
- MCF_MMU_MMUOR_ACC | /* access TLB */
- MCF_MMU_MMUOR_UAA; /* update allocation address field */
-
- set_ipl(ipl);
-
- dbg("mapped virt=0x%08x to phys=0x%08x\r\n", virt & size_mask, phys & size_mask);
-
- dbg("ITLB: MCF_MMU_MMUOR = %08x\r\n", MCF_MMU_MMUOR);
-
- return 1;
-}
-
-struct mmu_page_descriptor_ram pci_descriptor =
-{
- .cache_mode = CACHE_NOCACHE_PRECISE,
- .supervisor_protect = 0,
- .read = 1,
- .write = 1,
- .execute = 1,
- .global = 1,
- .locked = 0
-};
-
-int mmu_map_data_page(uint32_t virt, uint8_t asid)
-{
- uint16_t ipl;
- const uint32_t size_mask = ~ (SIZE_DEFAULT - 1); /* pagesize */
- int page_index = (virt & size_mask) / SIZE_DEFAULT; /* index into page_descriptor array */
- struct mmu_page_descriptor_ram *page;
- uint32_t phys = 0L;
-
- if (page_index < sizeof(pages) / sizeof(struct mmu_page_descriptor_ram))
- {
- page = &pages[page_index]; /* attributes of page to map */
- phys = lookup_phys(virt); /* virtual to physical translation of page */
- }
-
- /*
- * check if we are trying to access PCI space
- */
- else if (virt >= PCI_MEMORY_OFFSET && virt <= PCI_MEMORY_OFFSET + PCI_MEMORY_SIZE)
- {
- phys = virt;
- page = &pci_descriptor;
- }
- else
- return 0;
-
-
-
- if (phys == (uint32_t) -1)
- {
- /* no valid mapping found, caller will issue a bus error in return */
- dbg("no mapping found\r\n");
- return 0;
- }
-
-#ifdef DEBUG
- register int sp asm("sp");
- dbg("page_descriptor: 0x%02x, ssp = 0x%08x\r\n", * (uint8_t *) page, sp);
-#endif /* DBG_MMU */
-
- /*
- * add page to TLB
- */
-
- ipl = set_ipl(7); /* do not disturb */
-
- MCF_MMU_MMUTR = (virt & size_mask) | /* virtual address */
- MCF_MMU_MMUTR_ID(asid) | /* address space id (ASID) */
- (page->global ? MCF_MMU_MMUTR_SG : 0) | /* shared global */
- MCF_MMU_MMUTR_V; /* valid */
-
- MCF_MMU_MMUDR = (phys & size_mask) | /* physical address */
- MCF_MMU_MMUDR_SZ(MMU_PAGE_SIZE_DEFAULT) | /* page size */
- MCF_MMU_MMUDR_CM(page->cache_mode) | /* cache mode */
- (page->supervisor_protect ? MCF_MMU_MMUDR_SP : 0) | /* supervisor protect */
- (page->read ? MCF_MMU_MMUDR_R : 0) | /* read access enable */
- (page->write ? MCF_MMU_MMUDR_W : 0) | /* write access enable */
- (page->execute ? MCF_MMU_MMUDR_X : 0) | /* execute access enable */
- (page->locked ? MCF_MMU_MMUDR_LK : 0);
-
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */
- MCF_MMU_MMUOR_UAA; /* update allocation address field */
-
- set_ipl(ipl);
-
- dbg("mapped virt=0x%08x to phys=0x%08x\r\n", virt & size_mask, phys & size_mask);
-
- dbg("DTLB: MCF_MMU_MMUOR = %08x\r\n", MCF_MMU_MMUOR);
-
- return 1;
-}
-
-/*
- * map a page of memory using virt and phys as addresses with the Coldfire MMU.
- *
- * Theory of operation: the Coldfire MMU in the Firebee has 64 TLB entries, 32 for data (DTLB), 32 for
- * instructions (ITLB). Mappings can either be done locked (normal MMU TLB misses will not consider them
- * for replacement) or unlocked (mappings will reallocate using a LRU scheme when the MMU runs out of
- * TLB entries). For proper operation, the MMU needs at least two ITLBs and/or four free/allocatable DTLBs
- * per instruction as a minimum, more for performance. Thus locked pages (that can't be touched by the
- * LRU algorithm) should be used sparsingly.
- */
-uint32_t mmu_map_page(uint32_t virt, uint32_t phys, enum mmu_page_size sz, uint8_t page_id, const struct mmu_page_descriptor_ram *flags)
-{
- int size_mask;
- int ipl;
-
- switch (sz)
- {
- case MMU_PAGE_SIZE_1M:
- size_mask = ~ (SIZE_1M - 1);
- break;
-
- case MMU_PAGE_SIZE_8K:
- size_mask = ~ (SIZE_8K - 1);
- break;
-
- case MMU_PAGE_SIZE_4K:
- size_mask = ~ (SIZE_4K - 1);
- break;
-
- case MMU_PAGE_SIZE_1K:
- size_mask = ~ (SIZE_1K - 1);
- break;
-
- default:
- dbg("illegal map size %d\r\n", sz);
- return 0;
- }
-
- /*
- * add page to TLB
- */
-
- ipl = set_ipl(7); /* do not disturb */
-
- MCF_MMU_MMUTR = (virt & size_mask) | /* virtual address */
- MCF_MMU_MMUTR_ID(page_id) | /* address space id (ASID) */
- (flags->global ? MCF_MMU_MMUTR_SG : 0) | /* shared global */
- MCF_MMU_MMUTR_V; /* valid */
-
- MCF_MMU_MMUDR = (phys & size_mask) | /* physical address */
- MCF_MMU_MMUDR_SZ(sz) | /* page size */
- MCF_MMU_MMUDR_CM(flags->cache_mode) |
- (flags->read ? MCF_MMU_MMUDR_R : 0) | /* read access enable */
- (flags->write ? MCF_MMU_MMUDR_W : 0) | /* write access enable */
- (flags->execute ? MCF_MMU_MMUDR_X : 0) | /* execute access enable */
- (flags->supervisor_protect ? MCF_MMU_MMUDR_SP : 0) | /* supervisor protect */
- (flags->locked ? MCF_MMU_MMUDR_LK : 0);
-
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_ACC | /* access TLB, data */
- MCF_MMU_MMUOR_UAA; /* update allocation address field */
- NOP();
-
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_ITLB | /* instruction */
- MCF_MMU_MMUOR_ACC | /* access TLB */
- MCF_MMU_MMUOR_UAA; /* update allocation address field */
-
- set_ipl(ipl);
-
- dbg("mapped virt=0x%08x to phys=0x%08x size mask 0x%lx\r\n", virt, phys, size_mask);
-
- return 1;
-}
-
-void mmu_init(void)
-{
- extern uint8_t _MMUBAR[];
- uint32_t MMUBAR = (uint32_t) &_MMUBAR[0];
- struct mmu_page_descriptor_ram flags;
- int i;
-
- /*
- * clear all MMU TLB entries first
- */
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_CA; /* clears _all_ TLBs (including locked ones) */
- NOP();
-
- /*
- * prelaminary initialization of page descriptor 0 (root) table
- */
- for (i = 0; i < NUM_PAGES; i++)
- {
- uint32_t addr = i * SIZE_DEFAULT;
-
-#if defined(MACHINE_FIREBEE)
- if (addr >= 0x00f00000UL && addr < 0x00ffffffUL) /* Falcon I/O area on the Firebee */
- {
- pages[i].cache_mode = CACHE_NOCACHE_PRECISE;
- pages[i].supervisor_protect = 1;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 0;
- pages[i].global = 1;
- }
- else if (addr >= 0xfff00000UL && addr <= 0xffffffffUL) /* Falcon I/O area on the Firebee */
- {
- pages[i].cache_mode = CACHE_NOCACHE_PRECISE;
- pages[i].supervisor_protect = 1;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 0;
- pages[i].global = 1;
- }
- else if (addr >= 0x0UL && addr < 0x00e00000UL) /* ST-RAM, potential video memory */
- {
- pages[i].cache_mode = CACHE_WRITETHROUGH;
- pages[i].supervisor_protect = 0; // (addr == 0x0L ? 1 : 0);
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else if (addr >= 0x00e00000UL && addr < 0x00f00000UL) /* EmuTOS */
- {
- pages[i].cache_mode = CACHE_COPYBACK;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 0;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else if (addr >= 0x00000000 && addr <= 0x00010000) /* first Megabyte of ST RAM */
- {
- pages[i].cache_mode = CACHE_COPYBACK;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else
- {
- pages[i].cache_mode = CACHE_COPYBACK;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- pages[i].locked = 0; /* not locked */
-
-#elif defined(MACHINE_M5484LITE)
- if (addr >= 0x60000000UL && addr < 0x70000000UL) /* Compact Flash on the m5484lite */
- {
- pages[i].cache_mode = CACHE_NOCACHE_PRECISE;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else if (addr >= 0x0UL && addr < 0x00e00000UL) /* ST-RAM, potential video memory */
- {
- pages[i].cache_mode = CACHE_WRITETHROUGH;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else if (addr >= 0x00e00000UL && addr < 0x00f00000UL) /* EmuTOS */
- {
- pages[i].cache_mode = CACHE_COPYBACK;
- pages[i].execute = 1;
- pages[i].supervisor_protect = 1;
- pages[i].read = 1;
- pages[i].write = 0;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else
- {
- pages[i].cache_mode = CACHE_COPYBACK; /* rest of RAM */
- pages[i].execute = 1;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].supervisor_protect = 0;
- pages[i].global = 1;
- }
- pages[i].locked = 0; /* not locked */
-
-#elif defined(MACHINE_M54455)
- if (addr >= 0x60000000UL && addr < 0x70000000UL) /* Compact Flash on the m5484lite */
- {
- pages[i].cache_mode = CACHE_NOCACHE_PRECISE;
- pages[i].execute = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 0;
- pages[i].global = 1;
- pages[i].supervisor_protect = 1;
- }
- else if (addr >= 0x0UL && addr < 0x00e00000UL) /* ST-RAM, potential video memory */
- {
- pages[i].cache_mode = CACHE_WRITETHROUGH;
- pages[i].execute = 1;
- pages[i].supervisor_protect = 0;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else if (addr >= 0x00e00000UL && addr < 0x00f00000UL) /* EmuTOS */
- {
- pages[i].cache_mode = CACHE_COPYBACK;
- pages[i].execute = 1;
- pages[i].supervisor_protect = 1;
- pages[i].read = 1;
- pages[i].write = 0;
- pages[i].execute = 1;
- pages[i].global = 1;
- }
- else
- {
- pages[i].cache_mode = CACHE_COPYBACK; /* rest of RAM */
- pages[i].execute = 1;
- pages[i].read = 1;
- pages[i].write = 1;
- pages[i].supervisor_protect = 0;
- pages[i].global = 1;
- }
- pages[i].locked = 0; /* not locked */
-#else
-#error Unknown machine!
-#endif /* MACHINE_FIREBEE */
- }
-
- set_asid(0); /* do not use address extension (ASID provides virtual 48 bit addresses */
-
- // pages[0].supervisor_protect = 1; /* protect system vectors */
-
- /* set data access attributes in ACR0 and ACR1 */
-
- /* map PCI address space */
- /* set SRAM and MBAR access */
- set_acr0(ACR_W(0) | /* read and write accesses permitted */
- // ACR_SP(1) | /* supervisor only access permitted */
- ACR_CM(ACR_CM_CACHE_INH_PRECISE) | /* cache inhibit, precise */
- ACR_AMM(0) | /* control region > 16 MB */
- ACR_S(ACR_S_SUPERVISOR_MODE) | /* match addresses in supervisor and user mode */
- ACR_E(1) | /* enable ACR */
-#if defined(MACHINE_FIREBEE)
- ACR_ADMSK(0x7f) | /* cover 2GB area from 0x80000000 to 0xffffffff */
- // ACR_BA(PCI_MEMORY_OFFSET)); /* (equals area from 3 to 4 GB */
- ACR_BA(0xe0000000));
-#elif defined(MACHINE_M5484LITE)
- ACR_ADMSK(0x7f) | /* cover 2 GB area from 0x80000000 to 0xffffffff */
- // ACR_BA(PCI_MEMORY_OFFSET));
- ACR_BA(0xe0000000));
-#elif defined(MACHINE_M54455)
- ACR_ADMSK(0x7f) |
- ACR_BA(0x80000000)); /* FIXME: not determined yet */
-#else
-#error unknown machine!
-#endif /* MACHINE_FIREBEE */
-
- /* data access attributes for BaS in flash */
-
- set_acr1(ACR_W(0) |
- ACR_SP(0) |
- ACR_CM(0) |
-#if defined(MACHINE_FIREBEE)
- ACR_CM(ACR_CM_CACHEABLE_WT) |
-#elif defined(MACHINE_M5484LITE)
- ACR_CM(ACR_CM_CACHEABLE_WT) |
-#elif defined(MACHINE_M54455)
- ACR_CM(ACR_CM_CACHEABLE_WT) |
-#else
-#error unknown machine!
-#endif /* MACHINE_FIREBEE */
- ACR_AMM(0) |
- ACR_S(ACR_S_ALL) |
- ACR_E(1) |
- ACR_ADMSK(0x1f) |
- ACR_BA(0xe0000000));
-
- /* set instruction access attributes in ACR2 and ACR3 */
-
- //set_acr2(0xe007c400);
-
- /* instruction access attribute for BaS in flash */
-
- set_acr2(ACR_W(0) |
- ACR_SP(0) |
- ACR_CM(0) |
- ACR_CM(ACR_CM_CACHEABLE_WT) |
- ACR_AMM(1) |
- ACR_S(ACR_S_ALL) |
- ACR_E(1) |
- ACR_ADMSK(0x7) |
- ACR_BA(0xe0000000));
-
-
- /* disable ACR3 */
- set_acr3(0x0);
-
- set_mmubar(MMUBAR + 1); /* set and enable MMUBAR */
-
- /*
- * Make the TOS (in SDRAM) read-only
- * This maps virtual 0x00e0'0000 - 0x00ef'ffff to the same virtual address
- */
- flags.cache_mode = CACHE_COPYBACK;
- flags.supervisor_protect = 0; // needs to stay like this or cf_flasher will choke */
- flags.read = 1;
- flags.write = 0;
- flags.execute = 1;
- flags.locked = 1;
- mmu_map_page(0xe00000, 0xe00000, MMU_PAGE_SIZE_1M, 0, &flags);
-
-#if defined(MACHINE_FIREBEE)
- /*
- * Map FireBee I/O area (0xfff0'0000 - 0xffff'ffff physical) to the Falcon-compatible I/O
- * area (0x00f0'0000 - 0x00ff'ffff virtual) for the FireBee
- */
- flags.cache_mode = CACHE_NOCACHE_PRECISE;
- flags.supervisor_protect = 1;
- flags.read = 1;
- flags.write = 1;
- flags.execute = 0;
- flags.locked = 1;
- mmu_map_page(0x00f00000, 0xfff00000, MMU_PAGE_SIZE_1M, 0, &flags);
-#elif defined(MACHINE_M5484LITE)
- /*
- * Map m5484LITE CPLD access
- */
- flags.cache_mode = CACHE_NOCACHE_PRECISE;
- flags.supervisor_protect = 1;
- flags.read = 1;
- flags.write = 1;
- flags.execute = 0;
- flags.locked = 1;
- mmu_map_page(0x6a000000, 0x6a000000, MMU_PAGE_SIZE_1M, 0, &flags);
-#elif defined(MACHINE_M54455)
-#warning MMU specs for M54455 not yet determined
-#else
-#error Unknown machine
-#endif /* MACHINE_FIREBEE */
-
- /*
- * Map (locked) the second last MB of physical SDRAM (this is where BaS .data and .bss reside) to the same
- * virtual address. This is also used (completely) when BaS is in RAM
- */
- flags.cache_mode = CACHE_COPYBACK;
- flags.supervisor_protect = 0;
- flags.read = 1;
- flags.write = 1;
- flags.execute = 1;
- flags.locked = 1;
- mmu_map_page(SDRAM_START + SDRAM_SIZE - 0x00200000, SDRAM_START + SDRAM_SIZE - 0x00200000, MMU_PAGE_SIZE_1M, 0, &flags);
-
- /*
- * Map (locked) the very last MB of physical SDRAM (this is where the driver buffers reside) to the same
- * virtual address. Used uncached for drivers.
- */
- flags.cache_mode = CACHE_NOCACHE_PRECISE;
- flags.supervisor_protect = 0;
- flags.read = 1;
- flags.write = 1;
- flags.execute = 0;
- flags.locked = 1;
- mmu_map_page(SDRAM_START + SDRAM_SIZE - 0x00100000, SDRAM_START + SDRAM_SIZE - 0x00100000, MMU_PAGE_SIZE_1M, 0, &flags);
-}
-
-
-uint32_t mmutr_miss(uint32_t mmu_sr, uint32_t fault_address, uint32_t pc, uint32_t format_status)
-{
- uint32_t fault = format_status & 0xc030000;
-
- //dbg("MMU TLB MISS accessing 0x%08x\r\nFS = 0x%08x\r\nPC = 0x%08x\r\n", fault_address, format_status, pc);
- // flush_and_invalidate_caches();
-
- switch (fault)
- {
- /* if we have a real TLB miss, map the offending page */
-
- case 0x04010000: /* TLB miss on opword of instruction fetch */
- case 0x04020000: /* TLB miss on extension word of instruction fetch */
- dbg("MMU ITLB MISS accessing 0x%08x\r\n"
- "FS = 0x%08x\r\n"
- "MMUSR = 0x%08x\r\n"
- "PC = 0x%08x\r\n",
- fault_address, format_status, mmu_sr, pc);
- dbg("fault = 0x%08x\r\n", fault);
-
- if (!mmu_map_instruction_page(pc, 0))
- {
- dbg("ITLB miss bus error\r\n");
- return 1; /* bus error */
- }
-
-#ifdef _NOT_USED_
- /* due to prefetch, it makes sense to map the next adjacent page also for ITLBs */
- if (pc + SIZE_DEFAULT < TARGET_ADDRESS)
- {
- /*
- * only do this if the next page is still valid RAM
- */
- if (!mmu_map_instruction_page(pc + MMU_DEFAULT_PAGE_SIZE, 0))
- {
- dbg("ITLB next page bus error\r\n");
- return 1; /* bus error */
- }
- }
-#endif /* _NOT_USED_ */
- break;
-
- case 0x08020000: /* TLB miss on data write */
- case 0x0c020000: /* TLB miss on data read or read-modify-write */
- dbg("MMU DTLB MISS accessing 0x%08x\r\n"
- "FS = 0x%08x\r\n"
- "MMUSR = 0x%08x\r\n"
- "PC = 0x%08x\r\n",
- fault_address, format_status, mmu_sr, pc);
- dbg("fault = 0x%08x\r\n", fault);
-
- if (!mmu_map_data_page(fault_address, 0))
- {
- dbg("DTLB miss bus error\r\n");
- return 1; /* bus error */
- }
- break;
-
- case 0x0c010000:
- case 0x08010000:
- dbg("privilege violation accessing 0x%08x\r\n"
- "FS = 0x%08x\r\n"
- "MMUSR = 0x%08x\r\n"
- "PC = 0x%08x\r\n",
- fault_address, format_status, mmu_sr, pc);
- dbg("fault = 0x%08x\r\n", fault);
-#ifdef _DOES_NOT_WORK_
- /*
- * check if its one of our "special cases" and map a user page on top of it if user
- * mode access should be allowed
- */
- if (fault_address >= 1024 && fault_address < 0x00100000) /* ST-RAM */
- {
- struct mmu_page_descriptor flags =
- {
- .cache_mode = CACHE_COPYBACK,
- .supervisor_protect = 0,
- .read = 1,
- .write = 1,
- .execute = 1,
- .global = 1,
- .locked = 0
- };
-
- uint32_t virt = fault_address & ~(SIZE_1K - 1);
- uint32_t phys = (fault_address & (~(SIZE_1K - 1))) + 0x60000000;
- dbg("mapping helper page virt=0x%08x to phys=0x%08x\r\n", virt, phys);
- if (!mmu_map_page(virt, phys, MMU_PAGE_SIZE_1K, 0, &flags))
- {
- dbg("privilege violation (bus error)\r\n");
- return 1;
- }
- }
-#endif
- return 1;
- break;
-
- /* else issue a bus error */
- default:
- dbg("bus error accessing 0x%08x\r\n"
- "FS = 0x%08x\r\n"
- "MMUSR = 0x%08x\r\n"
- "PC = 0x%08x\r\n",
- fault_address, format_status, mmu_sr, pc);
- dbg("fault = 0x%08x\r\n", fault);
- return 1; /* signal bus error to caller */
- }
-#ifdef DBG_MMU
- xprintf("\r\n");
-#endif /* DBG_MMU */
-
- return 0; /* signal TLB miss handled to caller */
-}
-
-
-/* TODO: implement */
-
-/*
- * API-exposed, externally callable MMU functions
- */
-
-
-/*
- * lock data page(s) with address space id asid from address virt to virt + size.
- *
- * ASID probably needs an explanation - this is the "address space id" managed by
- * the MMU.
- * If its value range would be large enough, this could directly map to a PID
- * in MiNT. Unfortunately, the Coldfire MMU only allows an 8 bit value for ASID
- * (with 0 already occupied for the super user/root process and the Firebee video
- * subsystem occupying another one), so we are left with 253 distinct values.
- * MMU software needs to implement some kind of mapping and LRU scheme which will
- * lead to a throwaway of all mappings for processes not seen for a while (and thus
- * to undeterministic response/task switching times when such processes are activated
- * again).
- *
- * FIXME: There is no check for "too many locked pages", currently.
- *
- * return: 0 if failed (page not in translation table), 1 otherwise
- */
-uint32_t mmu_map_data_page_locked(uint32_t virt, uint32_t size, int asid)
-{
- const uint32_t size_mask = ~ (SIZE_DEFAULT - 1); /* pagesize */
- int page_index = (virt & size_mask) / SIZE_DEFAULT; /* index into page_descriptor array */
- struct mmu_page_descriptor_ram *page = &pages[page_index]; /* attributes of page to map */
- int i = 0;
-
- while (page_index * SIZE_DEFAULT < virt + size)
- {
- if (page->locked)
- {
- dbg("page at %p is already locked. Nothing to do\r\n", virt);
- }
- else
- {
- page->locked = 1;
- mmu_map_data_page(virt, 0);
- i++;
- }
- virt += SIZE_DEFAULT;
- }
-
- dbg("%d pages locked\r\n", i);
-
- return 1; /* success */
-}
-
-/*
- * the opposite: unlock data page(s) with address space id asid from address virt to virt + size_t
- *
- * return: 0 if failed (page not found), 1 otherwise
- */
-uint32_t mmu_unlock_data_page(uint32_t address, uint32_t size, int asid)
-{
- int curr_asid;
- const uint32_t size_mask = ~ (SIZE_DEFAULT - 1);
- int page_index = (address & size_mask) / SIZE_DEFAULT; /* index into page descriptor array */
- struct mmu_page_descriptor_ram *page = &pages[page_index];
-
- curr_asid = set_asid(asid); /* set asid to the one to search for */
-
- /* TODO: check for pages[] array bounds */
-
- while (page_index * SIZE_DEFAULT < address + size)
- {
- MCF_MMU_MMUAR = address + page->supervisor_protect;
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_STLB | /* search TLB */
- MCF_MMU_MMUOR_ADR |
- MCF_MMU_MMUOR_RW;
- if (MCF_MMU_MMUSR & MCF_MMU_MMUSR_HIT) /* found */
- {
-#ifdef DEBUG
- uint32_t tlb_aa = MCF_MMU_MMUOR >> 16; /* MMU internal allocation address for TLB */
-#endif /* DBG_MMU */
-
- MCF_MMU_MMUDR &= ~MCF_MMU_MMUDR_LK; /* clear lock bit */
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_UAA |
- MCF_MMU_MMUOR_ACC; /* update TLB */
-
- dbg("DTLB %d unlocked\r\n", tlb_aa);
- }
- else
- {
- dbg("%p doesn't seem to be locked??\r\n");
- }
- page_index++;
- }
- set_asid(curr_asid);
-
- return 1; /* success */
-}
-
-uint32_t mmu_report_locked_pages(uint32_t *num_itlb, uint32_t *num_dtlb)
-{
- int i;
- int li = 0;
- int ld = 0;
-
- /* Coldfire V4e allocation addresses run from 0 to 63 */
-
- for (i = 0; i < 31; i++) /* 0-31 = ITLB AA */
- {
- MCF_MMU_MMUAR = i;
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_STLB |
- MCF_MMU_MMUOR_ITLB |
- MCF_MMU_MMUOR_RW; /* search ITLB */
-
- if (MCF_MMU_MMUTR & MCF_MMU_MMUTR_V)
- {
- /* entry is valid */
- if (MCF_MMU_MMUDR & MCF_MMU_MMUDR_LK)
- {
- li++;
- }
- }
-
- }
- for (i = 32; i < 64; i++) /* 32-63 = DTLB AA */
- {
- MCF_MMU_MMUAR = i;
- MCF_MMU_MMUOR = MCF_MMU_MMUOR_STLB |
- MCF_MMU_MMUOR_RW; /* search ITLB */
-
- if (MCF_MMU_MMUTR & MCF_MMU_MMUTR_V)
- {
- /* entry is valid */
- if (MCF_MMU_MMUDR & MCF_MMU_MMUDR_LK)
- {
- ld++;
- }
- }
- }
-
- *num_itlb = li;
- *num_dtlb = ld;
-
- return 1; /* success */
-}
-
-uint32_t mmu_report_pagesize(void)
-{
- return SIZE_DEFAULT;
-}
-
diff --git a/BaS_gcc/sys/startcf.S b/BaS_gcc/sys/startcf.S
deleted file mode 100644
index 656296f..0000000
--- a/BaS_gcc/sys/startcf.S
+++ /dev/null
@@ -1,76 +0,0 @@
-
-//
-// This object file must be the first to be linked,
-// so it will be placed at the very beginning of the ROM.
-//
-
- .equ MCF_MMU_MMUCR, __MMUBAR + 0
-
- .globl _rom_header
- .globl _rom_entry
-
- .extern _initialize_hardware
- .extern _rt_mbar
-
-/* ROM header */
-_rom_header:
- //
- // The first long is supposed to be the initial SP.
- // We replace it by bra.s to allow running the ROM from the first byte.
- // Then we add a fake jmp instruction for pretty disassembly.
- //
- bra.s _rom_entry // Short jump to the real entry point
- .short 0x4ef9 // Fake jmp instruction
- // The second long is the initial PC
- .long _rom_entry // Real entry point
-
-/* ROM entry point */
-_rom_entry:
- // disable interrupts
- move.w #0x2700,sr
-
-#if !defined(MACHINE_M54455) // MCF54455 does not have the MBAR register
- /* Initialize MBAR */
- move.l #__MBAR,d0
- movec d0,MBAR
- move.l d0,_rt_mbar
-#endif
-
- /* mmu off */
- move.l #__MMUBAR+1,d0
- movec d0,MMUBAR
-
- clr.l d0
- move.l d0,MCF_MMU_MMUCR
- nop
-
-#if !defined(MACHINE_M54455) // MCF54455 does not have RAMBAR0 and RAMBAR1 registers */
-
- // Initialize RAMBARs: locate SRAM and validate it
- move.l #__RAMBAR0 + 0x7,d0 // supervisor only
- movec d0,RAMBAR0
- move.l #__RAMBAR1 + 0x1,d0
- movec d0,RAMBAR1
-#else
- move.l #__RAMBAR0 + 0x7,d0
- movec d0,RAMBAR
-#endif
-
- // set stack pointer to end of SRAM
- lea __SUP_SP,a7
- move.l #0,(sp)
-
- // Initialize the processor caches.
- // The instruction cache is fully enabled.
- // The data cache is enabled, but cache-inhibited by default.
- // Later, the MMU will fully activate the data cache for specific areas.
- // It is important to enable both caches now, otherwise cpushl would hang.
-
- move.l #0xa50c8120,d0
- movec d0,cacr
- andi.l #0xfefbfeff,d0 // Clear invalidate bits
- move.l d0,_rt_cacr
-
- // initialize any hardware specific issues
- bra _initialize_hardware
-
diff --git a/BaS_gcc/sys/sysinit.c b/BaS_gcc/sys/sysinit.c
deleted file mode 100644
index eb208fe..0000000
--- a/BaS_gcc/sys/sysinit.c
+++ /dev/null
@@ -1,1147 +0,0 @@
-/*
- * File: sysinit.c
- * Purpose: Power-on Reset configuration of the Firebee board.
- *
- * Notes:
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#include
-#include "MCF5475.h"
-#include "startcf.h"
-#include "cache.h"
-#include "sysinit.h"
-#include "pci.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "bas_types.h"
-#include "wait.h"
-#include "util.h"
-#include "version.h"
-#if defined(MACHINE_FIREBEE)
-#include "firebee.h"
-#elif defined(MACHINE_M5484LITE)
-#include "m5484l.h"
-#elif defined(MACHINE_M54455)
-#include "m54455.h"
-#else
-#error "unknown machine"
-#endif /* MACHINE_M5484LITE */
-#include "dma.h"
-#include "mod_devicetable.h"
-#include "pci_ids.h"
-#include "driver_mem.h"
-#include "usb.h"
-#include "video.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#define UNUSED(x) (void)(x) /* Unused variable */
-
-bool fpga_configured = false; /* for FPGA JTAG configuration */
-
-extern volatile long _VRAM; /* start address of video ram from linker script */
-
-/*
- * init SLICE TIMER 0
- * all = 32.538 sec = 30.736mHz
- * BYT0 = 127.1ms/tick = 7.876Hz offset 0
- * BYT1 = 496.5us/tick = 2.014kHz offset 1
- * BYT2 = 1.939us/tick = 515.6kHz offset 2
- * BYT3 = 7.576ns/tick = 132.00MHz offset 3/
- * count down!!! 132MHz!!!
- */
-static void init_slt(void)
-{
- xprintf("slice timer initialization: ");
- MCF_SLT0_STCNT = 0xffffffff;
- MCF_SLT0_SCR = MCF_SLT_SCR_TEN | MCF_SLT_SCR_RUN; /* enable and run continuously */
- xprintf("finished\r\n");
-}
-
-/*
- * init GPIO general purpose I/O module
- */
-static void init_gpio(void)
-{
- /*
- * pad register P.S.:FBCTL and FBCS set correctly at reset
- */
-
- /*
- * configure all four 547x GPIO module DMA pins:
- *
- * /DACK1 - DMA acknowledge 1
- * /DACK0 - DMA acknowledge 0
- * /DREQ1 - DMA request 1
- * /DREQ0 - DMA request 0
- *
- * for DMA operation
- */
- MCF_PAD_PAR_DMA = MCF_PAD_PAR_DMA_PAR_DACK0(0x3) |
- MCF_PAD_PAR_DMA_PAR_DACK1(0x3) |
- MCF_PAD_PAR_DMA_PAR_DREQ1(0x3) |
- MCF_PAD_PAR_DMA_PAR_DREQ0(0x3);
-
- /*
- * configure FEC0 pin assignment on GPIO module as FEC0
- * configure FEC1 pin assignment (PAR_E17, PAR_E1MII) as GPIO,
- * /IRQ5 and /IRQ6 from GPIO (needs to be disabled on EPORT module, which also can
- * use those INTs).
- */
- MCF_PAD_PAR_FECI2CIRQ = MCF_PAD_PAR_FECI2CIRQ_PAR_E07 |
- MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII |
- MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO |
- MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC |
- MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO |
- MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC |
- MCF_PAD_PAR_FECI2CIRQ_PAR_SDA |
- MCF_PAD_PAR_FECI2CIRQ_PAR_SCL |
- MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 |
- MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5;
-
- /*
- * configure PCI Grant pin assignment on GPIO module:
- *
- * /PCIBG4 used as FlexBus /TBST
- * /PCIBG3 used as general purpose I/O
- * /PCIBG2 used as /PCIBG2
- * /PCIBG1 used as /PCIBG1
- * /PCIBG0 used as /PCIBG0
- */
-#if defined(MACHINE_FIREBEE)
- MCF_PAD_PAR_PCIBG = MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0;
-#elif defined(MACHINE_M5484LITE)
- MCF_PAD_PAR_PCIBG = MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 |
- MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0;
-#endif /* MACHINE_FIREBEE */
-
- /*
- * configure PCI request pin assignment on GPIO module:
- * /PCIBR4 as /IRQ4
- * /PCIBR3 as GPIO (PIC)
- * /PCIBR2 as /PCIBR2
- * /PCIBR1 as /PCIBR1
- * /PCIBR0 as /PCIBR0
- */
-#if defined(MACHINE_FIREBEE)
- MCF_PAD_PAR_PCIBR = MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0;
-#elif defined(MACHINE_M5484LITE)
- MCF_PAD_PAR_PCIBR = MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 |
- MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0;
-#endif /* MACHINE_FIREBEE */
-
- /*
- * configure PSC3 pin assignment on GPIO module:
- * /PSC3CTS as /PSC3PTS
- * /PSC3RTS as /PSC3RTS
- * PSC3RXD as PSC3RXD
- * PSC3TXD as PSC3TXD
- */
-
- MCF_PAD_PAR_PSC3 = MCF_PAD_PAR_PSC3_PAR_TXD3 | MCF_PAD_PAR_PSC3_PAR_RXD3;
-
- /*
- * Configure PSC1 pin assignment on GPIO module:
- * - all pins configured for serial interface operation
- */
-
- MCF_PAD_PAR_PSC1 = MCF_PAD_PAR_PSC1_PAR_CTS1_CTS |
- MCF_PAD_PAR_PSC1_PAR_RTS1_RTS |
- MCF_PAD_PAR_PSC1_PAR_RXD1 |
- MCF_PAD_PAR_PSC1_PAR_TXD1;
-
- /*
- * Configure PSC0 Pin Assignment on GPIO module:
- * - all pins configured for serial interface operation
- */
-
- MCF_PAD_PAR_PSC0 = MCF_PAD_PAR_PSC0_PAR_CTS0_CTS |
- MCF_PAD_PAR_PSC0_PAR_RTS0_RTS |
- MCF_PAD_PAR_PSC0_PAR_RXD0 |
- MCF_PAD_PAR_PSC0_PAR_TXD0;
-
- /*
- * Configure all DSPI pins on the GPIO module for there primary function
- */
- MCF_PAD_PAR_DSPI = MCF_PAD_PAR_DSPI_PAR_SOUT(MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT) |
- MCF_PAD_PAR_DSPI_PAR_SIN(MCF_PAD_PAR_DSPI_PAR_SIN_SIN) |
- MCF_PAD_PAR_DSPI_PAR_SCK(MCF_PAD_PAR_DSPI_PAR_SCK_SCK) |
- MCF_PAD_PAR_DSPI_PAR_CS0(MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0) |
- MCF_PAD_PAR_DSPI_PAR_CS2(MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2) |
- MCF_PAD_PAR_DSPI_PAR_CS3(MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3) |
- MCF_PAD_PAR_DSPI_PAR_CS5;
-
- MCF_PAD_PAR_TIMER = MCF_PAD_PAR_TIMER_PAR_TIN3(MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3) |
- MCF_PAD_PAR_TIMER_PAR_TOUT3 |
- MCF_PAD_PAR_TIMER_PAR_TIN2(MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2) |
- MCF_PAD_PAR_TIMER_PAR_TOUT2;
-}
-
-/*
- * init serial
- */
-static void init_serial(void)
-{
- /* PSC0: SER1 */
- MCF_PSC0_PSCSICR = 0; /* PSC control register: select UART mode */
- MCF_PSC0_PSCCSR = 0xDD; /* use TX and RX baud rate from PSC timer */
- MCF_PSC0_PSCCTUR = 0x00; /* =\ */
-#if defined(MACHINE_FIREBEE)
- MCF_PSC0_PSCCTLR = 36; /* divide sys_clk by 36 => BAUD RATE = 115200 bps */
-#endif
-#if defined(MACHINE_M5484LITE)
- MCF_PSC0_PSCCTLR = 27; /* LITE board has 100 MHz sys_clk only */
-#endif
- MCF_PSC0_PSCCR = 0x20; /* reset receiver and RxFIFO */
- MCF_PSC0_PSCCR = 0x30; /* reset transmitter and TxFIFO */
- MCF_PSC0_PSCCR = 0x40; /* reset all error status */
- MCF_PSC0_PSCCR = 0x50; /* reset break change interrupt */
- MCF_PSC0_PSCCR = 0x10; /* reset MR pointer */
- MCF_PSC0_PSCIMR = 0x8700; /* enable input port change interrupt, enable delta break interrupt, */
- /* enable receiver interrupt/request, enable transceiver interrupt/request */
-
- MCF_PSC0_PSCACR = 0x03; /* enable state change of CTS */
- MCF_PSC0_PSCMR1 = 0xb3; /* 8 bit, no parity */
- MCF_PSC0_PSCMR2 = 0x07; /* 1 stop bit */
- MCF_PSC0_PSCRFCR = 0x0F;
- MCF_PSC0_PSCTFCR = 0x0F;
- MCF_PSC0_PSCRFAR = 0x00F0;
- MCF_PSC0_PSCTFAR = 0x00F0;
- MCF_PSC0_PSCOPSET = 0x01;
- MCF_PSC0_PSCCR = 0x05;
-
-#if defined(MACHINE_FIREBEE) /* PSC3 is not connected to anything on the LITE board */
- /* PSC3: PIC */
- MCF_PSC3_PSCSICR = 0; // UART
- MCF_PSC3_PSCCSR = 0xDD;
- MCF_PSC3_PSCCTUR = 0x00;
- MCF_PSC3_PSCCTLR = 36; // BAUD RATE = 115200
- MCF_PSC3_PSCCR = 0x20;
- MCF_PSC3_PSCCR = 0x30;
- MCF_PSC3_PSCCR = 0x40;
- MCF_PSC3_PSCCR = 0x50;
- MCF_PSC3_PSCCR = 0x10;
- MCF_PSC3_PSCIMR = 0x0200; // receiver interrupt enable
- MCF_PSC3_PSCACR = 0x03;
- MCF_PSC3_PSCMR1 = 0xb3;
- MCF_PSC3_PSCMR2 = 0x07;
- MCF_PSC3_PSCRFCR = 0x0F;
- MCF_PSC3_PSCTFCR = 0x0F;
- MCF_PSC3_PSCRFAR = 0x00F0;
- MCF_PSC3_PSCTFAR = 0x00F0;
- MCF_PSC3_PSCOPSET = 0x01;
- MCF_PSC3_PSCCR = 0x05;
-#endif /* MACHINE_FIREBEE */
-
- xprintf("\r\nserial interfaces initialization: finished\r\n");
-}
-
-/********************************************************************/
-/* Initialize DDR DIMMs on the EVB board */
-/********************************************************************/
-static bool init_ddram(void)
-{
- xprintf("SDRAM controller initialization: ");
-
- /*
- * Check to see if the SDRAM has already been initialized
- * by a run control tool
- */
- if (!(MCF_SDRAMC_SDCR & MCF_SDRAMC_SDCR_REF)) {
- /* Basic configuration and initialization */
-
- /*
- * SB_E (Bits 9-8): 10 <=> 7.6 mA (SDCKE)
- * SB_C (Bits 7-6): 10 <=> 7.6 mA (SDRAM Clocks)
- * SB_A (Bits 5-4): 10 <=> 7.6 mA (RAS, CAS, SDWE, SDADDR[12:0], and SDBA)
- * SB_S (Bits 3-2): 10 <=> 7.6 mA (SDRDQS)
- * SB_D (Bits 1-0): 10 <=> 7.6 mA (SDRDQS)
- *
- * -> lowest setting the Coldfire SDRAM controller allows
- */
- MCF_SDRAMC_SDRAMDS = 0x000002AA;/* SDRAMDS configuration */
-
-#if defined(MACHINE_FIREBEE)
- MCF_SDRAMC_CS0CFG = 0x0000001A; /* SDRAM CS0 configuration (128Mbytes 0000_0000 - 07FF_FFFF) */
- MCF_SDRAMC_CS1CFG = 0x0800001A; /* SDRAM CS1 configuration (128Mbytes 0800_0000 - 0FFF_FFFF) */
- MCF_SDRAMC_CS2CFG = 0x1000001A; /* SDRAM CS2 configuration (128Mbytes 1000_0000 - 07FF_FFFF) */
- MCF_SDRAMC_CS3CFG = 0x1800001A; /* SDRAM CS3 configuration (128Mbytes 1800_0000 - 1FFF_FFFF) */
-
- /*
- *
- */
- MCF_SDRAMC_SDCFG1 = MCF_SDRAMC_SDCFG1_WTLAT(3) /* Write latency */
- | MCF_SDRAMC_SDCFG1_REF2ACT(8) /* Refresh to Active Delay */
- | MCF_SDRAMC_SDCFG1_PRE2ACT(2) /* Precharge to Active Delay */
- | MCF_SDRAMC_SDCFG1_ACT2RW(2) /* Active to Read/Write Delay */
- | MCF_SDRAMC_SDCFG1_RDLAT(6) /* Read CAS latency */
- | MCF_SDRAMC_SDCFG1_SWT2RD(3) /* Single Write to Read/Write/Precharge delay */
- | MCF_SDRAMC_SDCFG1_SRD2RW(7); /* Single Read to Read/Write/Precharge delay */
-
- MCF_SDRAMC_SDCFG2 = MCF_SDRAMC_SDCFG2_BL(7) /* Burst Length */
- | MCF_SDRAMC_SDCFG2_BRD2WT(7) /* Burst Read to Write delay */
- | MCF_SDRAMC_SDCFG2_BWT2RW(6) /* Burst Write to Read/Write/Precharge delay */
- | MCF_SDRAMC_SDCFG2_BRD2PRE(4); /* Burst Read to Read/Precharge delay */
-
-
- MCF_SDRAMC_SDCR = MCF_SDRAMC_SDCR_IPALL /* initiate Precharge All command */
- | MCF_SDRAMC_SDCR_RCNT(13) /* Refresh Count (= (x + 1) * 64 */
- | MCF_SDRAMC_SDCR_MUX(1) /* Muxing control */
- | MCF_SDRAMC_SDCR_DDR
- | MCF_SDRAMC_SDCR_CKE
- | MCF_SDRAMC_SDCR_MODE_EN;
-
- MCF_SDRAMC_SDMR = MCF_SDRAMC_SDMR_CMD /* Generate an LMR/LEMR command */
- | MCF_SDRAMC_SDMR_AD(0) /* Address */
- | MCF_SDRAMC_SDMR_BNKAD(1); /* LEMR */
- MCF_SDRAMC_SDMR = MCF_SDRAMC_SDMR_CMD /* Generate an LMR/LEMR command */
- | MCF_SDRAMC_SDMR_AD(0x123)
- | MCF_SDRAMC_SDMR_BNKAD(0); /* LMR */
-
- MCF_SDRAMC_SDCR = 0xE10D0002; /* SDCR + IPALL */
- MCF_SDRAMC_SDCR = 0xE10D0004; /* SDCR + IREF (first refresh) */
- MCF_SDRAMC_SDCR = 0xE10D0004; /* SDCR + IREF (second refresh) */
- MCF_SDRAMC_SDMR = 0x008D0000; /* SDMR (write to LMR) */
- MCF_SDRAMC_SDCR = 0x710D0F00; /* SDCR (lock SDMR and enable refresh) */
-
-#elif defined(MACHINE_M5484LITE)
- MCF_SDRAMC_CS0CFG = 0x00000019; /* SDRAM CS0 configuration (64 Mbytes 0000_0000 - 03FF_FFFF) */
- MCF_SDRAMC_CS1CFG = 0x00000000; /* SDRAM CS1 configuration - off */
- MCF_SDRAMC_CS2CFG = 0x00000000; /* SDRAM CS2 configuration - off */
- MCF_SDRAMC_CS3CFG = 0x00000000; /* SDRAM CS3 configuration - off */
-
-
- /*
- *
- */
- MCF_SDRAMC_SDCFG1 = MCF_SDRAMC_SDCFG1_WTLAT(3) /* Write latency */
- | MCF_SDRAMC_SDCFG1_REF2ACT(8) /* Refresh to Active Delay */
- | MCF_SDRAMC_SDCFG1_PRE2ACT(2) /* Precharge to Active Delay */
- | MCF_SDRAMC_SDCFG1_ACT2RW(2) /* Active to Read/Write Delay */
- | MCF_SDRAMC_SDCFG1_RDLAT(6) /* Read CAS latency */
- | MCF_SDRAMC_SDCFG1_SWT2RD(3) /* Single Write to Read/Write/Precharge delay */
- | MCF_SDRAMC_SDCFG1_SRD2RW(7); /* Single Read to Read/Write/Precharge delay */
-
- MCF_SDRAMC_SDCFG2 = MCF_SDRAMC_SDCFG2_BL(7) /* Burst Length */
- | MCF_SDRAMC_SDCFG2_BRD2WT(7) /* Burst Read to Write delay */
- | MCF_SDRAMC_SDCFG2_BWT2RW(6) /* Burst Write to Read/Write/Precharge delay */
- | MCF_SDRAMC_SDCFG2_BRD2PRE(4); /* Burst Read to Read/Precharge delay */
-
-
- MCF_SDRAMC_SDCR = MCF_SDRAMC_SDCR_IPALL /* initiate Precharge All command */
- | MCF_SDRAMC_SDCR_RCNT(13) /* Refresh Count (= (x + 1) * 64 */
- | MCF_SDRAMC_SDCR_MUX(1) /* Muxing control */
- | MCF_SDRAMC_SDCR_DDR
- | MCF_SDRAMC_SDCR_CKE
- | MCF_SDRAMC_SDCR_MODE_EN;
-
- MCF_SDRAMC_SDMR = MCF_SDRAMC_SDMR_CMD /* Generate an LMR/LEMR command */
- | MCF_SDRAMC_SDMR_AD(0) /* Address */
- | MCF_SDRAMC_SDMR_BNKAD(1); /* LEMR */
- MCF_SDRAMC_SDMR = MCF_SDRAMC_SDMR_CMD /* Generate an LMR/LEMR command */
- | MCF_SDRAMC_SDMR_AD(0x123)
- | MCF_SDRAMC_SDMR_BNKAD(0); /* LMR */
-
- MCF_SDRAMC_SDCR = 0xE10D0002; /* SDCR + IPALL */
- MCF_SDRAMC_SDCR = 0xE10D0004; /* SDCR + IREF (first refresh) */
- MCF_SDRAMC_SDCR = 0xE10D0004; /* SDCR + IREF (second refresh) */
- MCF_SDRAMC_SDMR = 0x008D0000; /* SDMR (write to LMR) */
- MCF_SDRAMC_SDCR = 0x710D0F00; /* SDCR (lock SDMR and enable refresh) */
-
-#endif /* MACHINE_FIREBEE */
-
- xprintf("finished\r\n");
-
- return true;
- }
- else
- {
- xprintf("skipped. Already initialized (running from RAM)\r\n");
- }
- return false;
-}
-
-/*
- * initialize FlexBus chip select registers
- */
-static void init_fbcs()
-{
- xprintf("FlexBus chip select registers initialization: ");
-
- /* Flash */
- MCF_FBCS0_CSAR = MCF_FBCS_CSAR_BA(BOOTFLASH_BASE_ADDRESS); /* flash base address */
- MCF_FBCS0_CSCR = MCF_FBCS_CSCR_PS_16 | /* 16 bit word access */
- MCF_FBCS_CSCR_WS(4)| /* 4 wait states */
- MCF_FBCS_CSCR_AA | /* auto /TA acknowledge */
- MCF_FBCS_CSCR_ASET(1) | /* assert chip select on second rising edge after address assertion */
- MCF_FBCS_CSCR_RDAH(1); /* chip errata SECF077 */
- MCF_FBCS0_CSMR = BOOTFLASH_BAM |
- MCF_FBCS_CSMR_V; /* enable */
-
-
-#if defined(MACHINE_FIREBEE) /* FBC setup for FireBee */
- MCF_FBCS1_CSAR = MCF_FBCS_CSAR_BA(0xFFF80000); /* ATARI I/O address range */
- MCF_FBCS1_CSCR = MCF_FBCS_CSCR_PS_16 /* 16BIT PORT */
- | MCF_FBCS_CSCR_WS(16) /* 16 wait states */
- | MCF_FBCS_CSCR_AA; /* auto /TA acknowledge */
- MCF_FBCS1_CSMR = MCF_FBCS_CSMR_BAM_512K | MCF_FBCS_CSMR_V;
-
- MCF_FBCS2_CSAR = MCF_FBCS_CSAR_BA(0xF0000000); /* Firebee new I/O address range */
- MCF_FBCS2_CSCR = MCF_FBCS_CSCR_PS_32 /* 32BIT PORT */
- | MCF_FBCS_CSCR_WS(8) /* 8 wait states */
- | MCF_FBCS_CSCR_AA; /* auto /TA acknowledge */
- MCF_FBCS2_CSMR = (MCF_FBCS_CSMR_BAM_128M /* F000'0000-F7FF'FFFF */
- | MCF_FBCS_CSMR_V);
-
- MCF_FBCS3_CSAR = MCF_FBCS_CSAR_BA(0xfff00000); /* IDE address range for burst mode */
- MCF_FBCS3_CSCR = MCF_FBCS_CSCR_PS_16 /* 16 bit port */
- | MCF_FBCS_CSCR_WS(16) /* 16 wait states */
- | MCF_FBCS_CSCR_BSTR /* burst read enable */
- | MCF_FBCS_CSCR_BSTW /* burst write enable */
- | MCF_FBCS_CSCR_AA; /* auto /TA acknowledge */
- MCF_FBCS3_CSMR = (MCF_FBCS_CSMR_BAM_512K /* F800'0000-FBFF'FFFF */
- | MCF_FBCS_CSMR_V);
-
- /*
- * Note: burst read/write settings of the following FBCS are purely "cosmetical".
- * The Coldfire FlexBus only "bursts" on a smaller port size than 32 bit up to 32 bit,
- * i.e. it can burst on an 8 bit port up to 4 burst cycles or two on a 16 bit port.
- * Enabling burst on a 32 bit port has no effect (unfortunately).
- */
- MCF_FBCS4_CSAR = MCF_FBCS_CSAR_BA(0x40000000); /* video ram area, FB_CS4 not used, decoded on FPGA */
- MCF_FBCS4_CSCR = MCF_FBCS_CSCR_PS_32 /* 32 bit port */
- | MCF_FBCS_CSCR_WS(32) /* 0 wait states */
- | MCF_FBCS_CSCR_AA /* /TA auto acknowledge */
- | MCF_FBCS_CSCR_BSTR /* burst read enable */
- | MCF_FBCS_CSCR_BSTW; /* burst write enable */
- MCF_FBCS4_CSMR = MCF_FBCS_CSMR_BAM_1G /* 4000'0000-7FFF'FFFF */
- | MCF_FBCS_CSMR_V;
-
- /* disable FBCS5 on Firebee */
- MCF_FBCS5_CSAR = 0x0;
- MCF_FBCS5_CSCR = MCF_FBCS_CSCR_PS_8
- | MCF_FBCS_CSCR_BSTR
- | MCF_FBCS_CSCR_BSTW
- | MCF_FBCS_CSCR_RDAH(1); /* chip errata SECF077 */
- MCF_FBCS5_CSMR = MCF_FBCS_CSMR_BAM_1G;
- //| MCF_FBCS_CSMR_V;
-#elif defined(MACHINE_M5484LITE)
- /* disable other FBCS for now */
- MCF_FBCS1_CSMR = 0;
- MCF_FBCS2_CSMR = 0;
- MCF_FBCS3_CSMR = 0;
- MCF_FBCS4_CSMR = 0;
-
- /*
- * the FireEngine needs AA for its CPLD accessed registers
- */
- MCF_FBCS5_CSAR = MCF_FBCS_CSAR_BA(0x60000000);
- MCF_FBCS5_CSCR = MCF_FBCS_CSCR_PS_16 | /* CPLD access 16 bit wide */
- MCF_FBCS_CSCR_WS(32) | /* 32 wait states */
- MCF_FBCS_CSCR_ASET(1) | /* chip select on second rising clock edge */
- MCF_FBCS_CSCR_AA; /* auto acknowledge */
- MCF_FBCS5_CSMR = MCF_FBCS_CSMR_BAM_256M | /* maps 0x60000000 to 0x68000000 */
- MCF_FBCS_CSMR_V;
-#endif /* MACHINE_FIREBEE */
-
- xprintf("finished\r\n");
-}
-
-#ifdef MACHINE_FIREBEE
-static void wait_pll(void)
-{
- int32_t trgt = MCF_SLT0_SCNT - 100000;
- do
- {
- ;
- } while ((* (volatile int16_t *) 0xf0000800 < 0) && MCF_SLT0_SCNT > trgt);
-}
-
-static volatile uint8_t *pll_base = (volatile uint8_t *) 0xf0000600;
-
-static void init_pll(void)
-{
- xprintf("FPGA PLL initialization: ");
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x48) = 27; /* loopfilter r */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x08) = 1; /* charge pump 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x00) = 12; /* N counter high = 12 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x40) = 12; /* N counter low = 12 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x114) = 1; /* ck1 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x118) = 1; /* ck2 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x11c) = 1; /* ck3 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x10) = 1; /* ck0 high = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x50) = 1; /* ck0 low = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x144) = 1; /* M odd division */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x44) = 1; /* M low = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x04) = 145; /* M high = 145 = 146 MHz */
-
- wait_pll();
-
- * (volatile uint8_t *) 0xf0000800 = 0; /* set */
-
- xprintf("finished\r\n");
-}
-
-/*
- * INIT VIDEO DDR RAM
- */
-static void init_video_ddr(void) {
- xprintf("init video RAM: ");
-
- * (volatile uint16_t *) 0xf0000400 = 0xb; /* set cke = 1, cs=1, config = 1 */
- NOP();
-
- _VRAM = 0x00050400; /* IPALL */
- NOP();
-
- _VRAM = 0x00072000; /* load EMR pll on */
- NOP();
-
- _VRAM = 0x00070122; /* load MR: reset pll, cl=2, burst=4lw */
- NOP();
-
- _VRAM = 0x00050400; /* IPALL */
- NOP();
-
- _VRAM = 0x00060000; /* auto refresh */
- NOP();
-
- _VRAM = 0x00060000; /* auto refresh */
- NOP();
-
- /* FIXME: what's this? */
- _VRAM = 0000070022; /* load MR dll on */
- NOP();
-
- * (uint32_t *) 0xf0000400 = 0x01070082; /* fifo on, refresh on, ddrcs und cke on, video dac on, Falcon shift mode on */
-
- xprintf("finished\r\n");
-}
-#endif /* MACHINE_FIREBEE */
-
-/*
- * probe for NEC compatible USB host controller and install if found
- */
-void init_usb(void)
-{
- extern struct pci_device_id ohci_usb_pci_table[];
- extern struct pci_device_id ehci_usb_pci_table[];
- struct pci_device_id *board;
- int32_t handle;
- int usb_found = 0;
- int index = 0;
-
- /*
- * disabled for now
- */
- return;
-
- inf("USB controller initialization:\r\n");
-
- do
- {
- handle = pci_find_classcode(PCI_CLASS_SERIAL_USB | PCI_FIND_BASE_CLASS | PCI_FIND_SUB_CLASS, index++);
- dbg("handle 0x%02x\r\n", handle);
- if (handle > 0)
- {
- long id;
- long pci_class;
-
- xprintf("serial USB found at bus=0x%x, dev=0x%x, fnc=0x%x (0x%x)\r\n",
- PCI_BUS_FROM_HANDLE(handle),
- PCI_DEVICE_FROM_HANDLE(handle),
- PCI_FUNCTION_FROM_HANDLE(handle),
- handle);
- id = swpl(pci_read_config_longword(handle, PCIIDR));
- pci_class = swpl(pci_read_config_longword(handle, PCIREV));
-
- if (pci_class >> 8 == PCI_CLASS_SERIAL_USB_EHCI)
- {
- board = ehci_usb_pci_table;
- while (board->vendor)
- {
- if ((board->vendor == PCI_VENDOR_ID(id)) && board->device == PCI_DEVICE_ID(id))
- {
- if (usb_init(handle, board) >= 0)
- {
- usb_found++;
- }
- }
- board++;
- }
- }
- if (pci_class >> 8 == PCI_CLASS_SERIAL_USB_OHCI)
- {
- board = ohci_usb_pci_table;
- while (board->vendor)
- {
- if ((board->vendor == PCI_VENDOR_ID(id)) && board->device == PCI_DEVICE_ID(id))
- {
- if (usb_init(handle, board) >= 0)
- usb_found++;
- }
- board++;
- }
- }
- }
- } while (handle >= 0);
-
- xprintf("finished (found %d USB controller(s))\r\n", usb_found);
-}
-
-#if defined(MACHINE_FIREBEE)
-
-static bool i2c_transfer_finished(void)
-{
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_IIF)
- return true;
-
- return false;
-}
-
-static void wait_i2c_transfer_finished(void)
-{
- waitfor(1000, i2c_transfer_finished); /* wait until interrupt bit has been set */
- MCF_I2C_I2SR &= ~MCF_I2C_I2SR_IIF; /* clear interrupt bit (byte transfer finished */
-}
-
-static bool i2c_bus_free(void)
-{
- return (MCF_I2C_I2SR & MCF_I2C_I2SR_IBB);
-}
-
-/*
- * TFP410 (DVI) on
- */
-static void dvi_on(void)
-{
- uint8_t receivedByte;
- uint8_t dummyByte; /* only used for a dummy read */
- int num_tries = 0;
-
- xprintf("DVI digital video output initialization: ");
-
- MCF_I2C_I2FDR = 0x3c; /* divide system clock by 1280: 100kHz standard */
-
- do
- {
- /* disable all i2c interrupt routing targets */
- MCF_I2C_I2ICR = 0x0; // ~(MCF_I2C_I2ICR_IE | MCF_I2C_I2ICR_RE | MCF_I2C_I2ICR_TE | MCF_I2C_I2ICR_BNBE);
-
- /* disable i2c, disable i2c interrupts, slave, receive, i2c = acknowledge, no repeat start */
- MCF_I2C_I2CR = 0x0;
-
- /* repeat start, transmit acknowledge */
- MCF_I2C_I2CR = MCF_I2C_I2CR_RSTA | MCF_I2C_I2CR_TXAK;
-
- receivedByte = MCF_I2C_I2DR; /* read a byte */
- MCF_I2C_I2SR = 0x0; /* clear status register */
- MCF_I2C_I2CR = 0x0; /* clear control register */
-
- MCF_I2C_I2ICR = MCF_I2C_I2ICR_IE; /* route i2c interrupts to cpu */
-
- /* i2c enable, master mode, transmit acknowledge */
- MCF_I2C_I2CR = MCF_I2C_I2CR_IEN | MCF_I2C_I2CR_MSTA | MCF_I2C_I2CR_MTX;
-
- MCF_I2C_I2DR = 0x7a; /* send data: address of TFP410 */
- wait_i2c_transfer_finished();
-
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_RXAK) /* next try if no acknowledge */
- goto try_again;
-
- MCF_I2C_I2DR = 0x00; /* send data: SUB ADRESS 0 */
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR |= MCF_I2C_I2CR_RSTA; /* repeat start */
- MCF_I2C_I2DR = 0x7b; /* begin read */
-
- wait_i2c_transfer_finished();
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_RXAK) /* next try if no acknowledge */
- goto try_again;
-
-#ifdef _NOT_USED_
- MCH_I2C_I2CR &= ~MCF_I2C_I2CR_MTX; /* FIXME: not clear where this came from ... */
-#endif /* _NOT_USED_ */
- MCF_I2C_I2CR &= 0xef; /* ... this actually disables the I2C module... */
- dummyByte = MCF_I2C_I2DR; /* dummy read */
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR |= MCF_I2C_I2CR_TXAK; /* transmit acknowledge enable */
- receivedByte = MCF_I2C_I2DR; /* read a byte */
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR = MCF_I2C_I2CR_IEN; /* stop */
-
- dummyByte = MCF_I2C_I2DR; // dummy read
-
- if (receivedByte != 0x4c)
- goto try_again;
-
- MCF_I2C_I2CR = 0x0; // stop
- MCF_I2C_I2SR = 0x0; // clear sr
-
- waitfor(10000, i2c_bus_free);
-
- MCF_I2C_I2CR = 0xb0; // on tx master
- MCF_I2C_I2DR = 0x7A;
-
- wait_i2c_transfer_finished();
-
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_RXAK)
- goto try_again;
-
- MCF_I2C_I2DR = 0x08; // SUB ADRESS 8
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2DR = 0xbf; // ctl1: power on, T:M:D:S: enable
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR = 0x80; // stop
- dummyByte = MCF_I2C_I2DR; // dummy read
- MCF_I2C_I2SR = 0x0; // clear sr
-
- waitfor(10000, i2c_bus_free);
-
- MCF_I2C_I2CR = 0xb0;
- MCF_I2C_I2DR = 0x7A;
-
- wait_i2c_transfer_finished();
-
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_RXAK)
- goto try_again;
-
- MCF_I2C_I2DR = 0x08; // SUB ADRESS 8
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR |= 0x4; // repeat start
- MCF_I2C_I2DR = 0x7b; // beginn read
-
- wait_i2c_transfer_finished();
-
- if (MCF_I2C_I2SR & MCF_I2C_I2SR_RXAK)
- goto try_again;
-
- MCF_I2C_I2CR &= 0xef; // switch to rx
- dummyByte = MCF_I2C_I2DR; // dummy read
-
- wait_i2c_transfer_finished();
- MCF_I2C_I2CR |= 0x08; // txak=1
-
- wait(50);
-
- receivedByte = MCF_I2C_I2DR;
-
- wait_i2c_transfer_finished();
-
- MCF_I2C_I2CR = 0x80; // stop
-
- dummyByte = MCF_I2C_I2DR; // dummy read
-
-try_again:
- num_tries++;
- } while ((receivedByte != 0xbf) && (num_tries < 10));
-
- if (num_tries >= 10)
- {
- xprintf("FAILED!\r\n");
- }
- else
- {
- xprintf("finished\r\n");
- }
- UNUSED(dummyByte);
- // Avoid warning
-}
-
-
-/*
- * AC97
- */
-static void init_ac97(void)
-{
- // PSC2: AC97 ----------
- int i;
- int zm;
- int va;
- int vb;
- int vc;
-
- xprintf("AC97 sound chip initialization: ");
- MCF_PAD_PAR_PSC2 = MCF_PAD_PAR_PSC2_PAR_RTS2_RTS // PSC2=TX,RX BCLK,CTS->AC'97
- | MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK
- | MCF_PAD_PAR_PSC2_PAR_TXD2
- | MCF_PAD_PAR_PSC2_PAR_RXD2;
- MCF_PSC2_PSCMR1 = 0x0;
- MCF_PSC2_PSCMR2 = 0x0;
- MCF_PSC2_PSCIMR = 0x0300;
- MCF_PSC2_PSCSICR = 0x03; //AC97
- MCF_PSC2_PSCRFCR = 0x0f000000;
- MCF_PSC2_PSCTFCR = 0x0f000000;
- MCF_PSC2_PSCRFAR = 0x00F0;
- MCF_PSC2_PSCTFAR = 0x00F0;
-
- for (zm = 0; zm < 100000; zm++) // wiederholen bis synchron
- {
- MCF_PSC2_PSCCR = 0x20;
- MCF_PSC2_PSCCR = 0x30;
- MCF_PSC2_PSCCR = 0x40;
- MCF_PSC2_PSCCR = 0x05;
-
- // MASTER VOLUME -0dB
- MCF_PSC2_PSCTB_AC97 = 0xE0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x02000000; //SLOT1:WR REG MASTER VOLUME adr 0x02
-
- for (i = 2; i < 13; i++)
- {
- MCF_PSC2_PSCTB_AC97 = 0x0; //SLOT2-12:WR REG ALLES 0
- }
-
- // read register
- MCF_PSC2_PSCTB_AC97 = 0xc0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x82000000; //SLOT1:master volume
-
- for (i = 2; i < 13; i++)
- {
- MCF_PSC2_PSCTB_AC97 = 0x00000000; //SLOT2-12:RD REG ALLES 0
- }
- wait(50);
-
- va = MCF_PSC2_PSCTB_AC97;
- if ((va & 0x80000fff) == 0x80000800) {
- vb = MCF_PSC2_PSCTB_AC97;
- vc = MCF_PSC2_PSCTB_AC97;
-
- /* FIXME: that looks more than suspicious (Fredi?) */
- /* fixed with parentheses to avoid compiler warnings, but this looks still more than wrong to me */
- if (((va & 0xE0000fff) == 0xE0000800) & (vb == 0x02000000) & (vc == 0x00000000)) {
- goto livo;
- }
- }
- }
- xprintf(" NOT");
-livo:
- // AUX VOLUME ->-0dB
- MCF_PSC2_PSCTB_AC97 = 0xE0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x16000000; //SLOT1:WR REG AUX VOLUME adr 0x16
- MCF_PSC2_PSCTB_AC97 = 0x06060000; //SLOT1:VOLUME
- for (i = 3; i < 13; i++) {
- MCF_PSC2_PSCTB_AC97 = 0x0; //SLOT2-12:WR REG ALLES 0
- }
-
- // line in VOLUME +12dB
- MCF_PSC2_PSCTB_AC97 = 0xE0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x10000000; //SLOT1:WR REG MASTER VOLUME adr 0x02
- for (i = 2; i < 13; i++) {
- MCF_PSC2_PSCTB_AC97 = 0x0; //SLOT2-12:WR REG ALLES 0
- }
- // cd in VOLUME 0dB
- MCF_PSC2_PSCTB_AC97 = 0xE0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x12000000; //SLOT1:WR REG MASTER VOLUME adr 0x02
- for (i = 2; i < 13; i++) {
- MCF_PSC2_PSCTB_AC97 = 0x0; //SLOT2-12:WR REG ALLES 0
- }
- // mono out VOLUME 0dB
- MCF_PSC2_PSCTB_AC97 = 0xE0000000; //START SLOT1 + SLOT2, FIRST FRAME
- MCF_PSC2_PSCTB_AC97 = 0x06000000; //SLOT1:WR REG MASTER VOLUME adr 0x02
- MCF_PSC2_PSCTB_AC97 = 0x00000000; //SLOT1:WR REG MASTER VOLUME adr 0x02
- for (i = 3; i < 13; i++) {
- MCF_PSC2_PSCTB_AC97 = 0x0; //SLOT2-12:WR REG ALLES 0
- }
- MCF_PSC2_PSCTFCR |= MCF_PSC_PSCTFCR_WFR; //set EOF
- MCF_PSC2_PSCTB_AC97 = 0x00000000; //last data
- xprintf(" finished\r\n");
-}
-#endif /* MACHINE_FIREBEE */
-
-/* Symbols from the linker script */
-
-extern uint8_t _STRAM_END[];
-#define STRAM_END ((uint32_t)_STRAM_END)
-
-extern uint8_t _FIRETOS[];
-#define FIRETOS ((uint32_t)_FIRETOS) /* where FireTOS is stored in flash */
-
-extern uint8_t _BAS_LMA[];
-#define BAS_LMA (&_BAS_LMA[0]) /* where the BaS is stored in flash */
-
-extern uint8_t _BAS_IN_RAM[];
-#define BAS_IN_RAM (&_BAS_IN_RAM[0]) /* where the BaS is run in RAM */
-
-extern uint8_t _BAS_SIZE[];
-#define BAS_SIZE ((uint32_t)_BAS_SIZE) /* size of the BaS, in bytes */
-
-extern uint8_t _FASTRAM_END[];
-#define FASTRAM_END ((uint32_t)_FASTRAM_END)
-
-extern uint8_t _BAS_RESIDENT_TEXT[];
-#define BAS_RESIDENT_TEXT ((uint32_t) _BAS_RESIDENT_TEXT)
-
-extern uint8_t _BAS_RESIDENT_TEXT_SIZE[];
-#define BAS_RESIDENT_TEXT_SIZE ((uint32_t) _BAS_RESIDENT_TEXT_SIZE)
-
-static void clear_bss_segment(void)
-{
- extern uint8_t _BAS_BSS_START[];
- uint8_t * BAS_BSS_START = &_BAS_BSS_START[0];
- extern uint8_t _BAS_BSS_END[];
- uint8_t *BAS_BSS_END = &_BAS_BSS_END[0];
-
- bzero(BAS_BSS_START, BAS_BSS_END - BAS_BSS_START + 1);
-}
-
-void initialize_hardware(void)
-{
- /* Test for FireTOS switch: DIP switch #5 up */
-#ifdef _NOT_USED_ // #if defined(MACHINE_FIREBEE)
- if (!(DIP_SWITCH & (1 << 6))) {
- /* Minimal hardware initialization */
- init_gpio();
- init_serial();
- init_slt();
- init_fbcs();
- init_ddram();
- init_fpga();
-
- /* Validate ST RAM */
- * (volatile uint32_t *) 0x42e = STRAM_END; /* phystop TOS system variable */
- * (volatile uint32_t *) 0x420 = 0x752019f3; /* memvalid TOS system variable */
- * (volatile uint32_t *) 0x43a = 0x237698aa; /* memval2 TOS system variable */
- * (volatile uint32_t *) 0x51a = 0x5555aaaa; /* memval3 TOS system variable */
-
- /* TT-RAM */
-
- xprintf("FASTRAM_END = %p\r\n", FASTRAM_END);
- * (uint32_t *) 0x5a4 = FASTRAM_END; /* ramtop TOS system variable */
- * (uint32_t *) 0x5a8 = 0x1357bd13; /* ramvalid TOS system variable */
-
- /* Jump into FireTOS */
- typedef void void_func(void);
- void_func* FireTOS = (void_func*) FIRETOS;
- FireTOS(); // Should never return
- return;
- }
-#endif /* MACHINE_FIREBEE */
- init_gpio();
- init_serial();
-
- xprintf("\n\n");
- xprintf("%s BASIS system (BaS) v %d.%d (%s, %s)\r\n\r\n",
-#if defined(MACHINE_FIREBEE)
- "Firebee"
-#elif MACHINE_M5484LITE
- "m5484 LITEKIT"
-#else
- "unknown platform"
-#endif
- , MAJOR_VERSION, MINOR_VERSION, __DATE__, __TIME__);
-
- /*
- * Determine cause(s) of Reset
- */
- if (MCF_SIU_RSR & MCF_SIU_RSR_RST)
- xprintf("Reset. Cause: External Reset\r\n");
- if (MCF_SIU_RSR & MCF_SIU_RSR_RSTWD)
- xprintf("Reset. Cause: Watchdog Timer Reset\n");
- if (MCF_SIU_RSR & MCF_SIU_RSR_RSTJTG)
- xprintf("Reset. Cause: BDM/JTAG Reset\r\n");
-
- /*
- * Clear the Reset Status Register
- */
- MCF_SIU_RSR = (MCF_SIU_RSR_RST
- | MCF_SIU_RSR_RSTWD
- | MCF_SIU_RSR_RSTJTG);
-
- /*
- * Determine which processor we are running on
- */
- xprintf("JTAGID: ");
- switch (MCF_SIU_JTAGID & MCF_SIU_JTAGID_PROCESSOR)
- {
- case MCF_SIU_JTAGID_MCF5485:
- xprintf("MCF5485");
- break;
- case MCF_SIU_JTAGID_MCF5484:
- xprintf("MCF5484");
- break;
- case MCF_SIU_JTAGID_MCF5483:
- xprintf("MCF5483");
- break;
- case MCF_SIU_JTAGID_MCF5482:
- xprintf("MCF5482");
- break;
- case MCF_SIU_JTAGID_MCF5481:
- xprintf("MCF5481");
- break;
- case MCF_SIU_JTAGID_MCF5480:
- xprintf("MCF5480");
- break;
- case MCF_SIU_JTAGID_MCF5475:
- xprintf("MCF5475");
- break;
- case MCF_SIU_JTAGID_MCF5474:
- xprintf("MCF5474");
- break;
- case MCF_SIU_JTAGID_MCF5473:
- xprintf("MCF5473");
- break;
- case MCF_SIU_JTAGID_MCF5472:
- xprintf("MCF5472");
- break;
- case MCF_SIU_JTAGID_MCF5471:
- xprintf("MCF5471");
- break;
- case MCF_SIU_JTAGID_MCF5470:
- xprintf("MCF5470");
- break;
- }
-
- /*
- * Determine the processor revision
- */
- xprintf(" (revision %d)\r\n", ((MCF_SIU_JTAGID & MCF_SIU_JTAGID_REV) >> 28));
-
- /* make sure MMU is disabled */
- MCF_MMU_MMUCR = 0; /* MMU off */
- NOP(); /* force pipeline sync */
-
- init_slt();
- init_fbcs();
- init_ddram();
-
-#if defined(MACHINE_M5484LITE)
- dbg("Fire Engine Control register: %02x\r\n", * (uint8_t *) 0x61000000);
- dbg("Fire Engine interrupt register: %02x\r\n", * (uint8_t *) 0x62000000);
- dbg("Fire Engine interrupt mask register: %02x\r\n", * (uint8_t *) 0x63000000);
- dbg("Fire Engine power management register: %02x\r\n", * (uint8_t *) 0x64000000);
- dbg("Fire Engine EEPROM SPI register: %02x\r\n", * (uint8_t *) 0x65000000);
- dbg("Fire Engine Flash register: %02x\r\n", * (uint8_t *) 0x66000000);
- dbg("Fire Engine CPLD revision register: %02x\r\n", * (uint8_t *) 0x67000000);
- dbg("Fire Engine Hardware revision register:%02x\r\n", * (uint8_t *) 0x68000000);
-
- dbg("write control register 0x%02x\r\n", 1 << 7);
- * (uint8_t *) 0x61000000 = 1 << 7;
- dbg("Fire Engine Control register: %02x\r\n", * (uint8_t *) 0x61000000);
-#endif /* MACHINE_M5484LITE */
-
- /*
- * install (preliminary) exception vectors
- */
- setup_vectors();
-
-#ifdef _NOT_USED_
- /* make sure the handlers are called */
- __asm__ __volatile__("dc.w 0xafff"); /* should trigger a line-A exception */
-#endif /* _NOT_USED_ */
-
-
- /*
- * save the planet (and reduce case heat): disable clocks of unused SOC modules
- */
- MCF_CLOCK_SPCR = 0xffffffff & ~(
- 0 | /* leave memory clock enabled */
- 0 | /* leave PCI clock enabled */
- 0 | /* leave FlexBus clock enabled */
- MCF_CLOCK_SPCR_CAN0EN | /* disable CAN0 */
- 0 | /* leave DMA clock enabled */
- 0 | /* leave FEC0 clock enabled */
- MCF_CLOCK_SPCR_FEC1EN | /* disable FEC1 */
- MCF_CLOCK_SPCR_USBEN | /* disable USB slave */
- 0 | /* leave PSC clock enabled */
- MCF_CLOCK_SPCR_CAN1EN | /* disable CAN1 */
- MCF_CLOCK_SPCR_CRYENA | /* disable crypto clock A */
- MCF_CLOCK_SPCR_CRYENB | /* disable crypto clock B */
- 0 /* leave core clock enabled */
- );
-
- /* the following only makes sense _after_ DDRAM has been initialized */
- clear_bss_segment();
- xprintf(".bss segment cleared\r\n");
-
- if (BAS_LMA != BAS_IN_RAM)
- {
- memcpy((void *) BAS_IN_RAM, BAS_LMA, BAS_SIZE);
-
- /* we have copied a code area, so flush the caches */
- flush_and_invalidate_caches();
-
- }
-
-#if defined(MACHINE_FIREBEE)
- fpga_configured = init_fpga();
-
- init_pll();
- init_video_ddr();
- dvi_on();
- init_ac97();
-#endif /* MACHINE_FIREBEE */
- driver_mem_init();
-
- /* jump into the BaS */
- extern void BaS(void);
- BaS();
-}
diff --git a/BaS_gcc/tos/Makefile b/BaS_gcc/tos/Makefile
deleted file mode 100644
index c51142f..0000000
--- a/BaS_gcc/tos/Makefile
+++ /dev/null
@@ -1,37 +0,0 @@
-.PHONY: tos
-.PHONY: jtagwait
-.PHONY: bascook
-.PHONY: vmem_test
-.PHONY: pci_test
-.PHONY: pci_mem
-.PHONY: fpga_test
-tos: jtagwait bascook vmem_test pci_test pci_mem fpga_test
-
-jtagwait:
- @$(MAKE) -s -C $@
-
-bascook:
- @$(MAKE) -s -C $@
-
-vmem_test:
- @$(MAKE) -s -C $@
-
-pci_test:
- @$(MAKE) -s -C $@
-
-pci_mem:
- @$(MAKE) -s -C $@
-
-fpga_test:
- @$(MAKE) -s -C $@
-
-.PHONY: clean
-clean:
- @(cd jtagwait; $(MAKE) -s clean)
- @(cd bascook; $(MAKE) -s clean)
- @(cd vmem_test; $(MAKE) -s clean)
- @(cd pci_test; $(MAKE) -s clean)
- @(cd pci_mem; $(MAKE) -s clean)
- @(cd fpga_test; $(MAKE) -s clean)
-
-
diff --git a/BaS_gcc/tos/bascook/Makefile b/BaS_gcc/tos/bascook/Makefile
deleted file mode 100755
index b2e2b88..0000000
--- a/BaS_gcc/tos/bascook/Makefile
+++ /dev/null
@@ -1,101 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR= ../..
-
-BAS_INCLUDE=-I$(TOPDIR)/../BaS_gcc/include
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include $(BAS_INCLUDE) -nostdlib
-LIBS=-lcmini -nostdlib -lgcc
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=bascook.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -Os\
- -g\
- -Wl,-Map,mapfile\
- -Wall
-
-SRCDIR=sources
-
-CSRCS=\
- $(SRCDIR)/bascook.c
-ASRCS=
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=.
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-$(APP):CFLAGS += -mcpu=5475
-
-all: $(TEST_APP)
-
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- @echo CC $$<
- @$(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/m5475/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/m5475 $(LIBS)
- @$(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- @-rm -f $(DEPEND)
- @for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/bascook/sources/bascook.c b/BaS_gcc/tos/bascook/sources/bascook.c
deleted file mode 100644
index 8fa4e1c..0000000
--- a/BaS_gcc/tos/bascook/sources/bascook.c
+++ /dev/null
@@ -1,175 +0,0 @@
-#include
-#include
-#include
-#include
-
-#include "driver_vec.h"
-
-struct driver_table *get_bas_drivers(void)
-{
- struct driver_table *ret = NULL;
-
- __asm__ __volatile__(
- " bra.s do_trap \n\t"
- " .dc.l 0x5f424153 \n\t" // '_BAS'
- "do_trap: trap #0 \n\t"
- " move.l d0,%[ret] \n\t"
- : [ret] "=m" (ret) /* output */
- : /* no inputs */
- : /* clobbered */
- );
-
- return ret;
-}
-
-/*
- * temporarily replace the trap 0 handler with this so we can avoid
- * getting caught by BaS versions that don't understand the driver interface
- * exposure call.
- * If we get here, we have a BaS version that doesn't support the trap 0 interface
- */
-static void __attribute__((interrupt)) trap0_catcher(void)
-{
- __asm__ __volatile__(
- " clr.l d0 \n\t" // return 0 to indicate not supported
- :
- :
- :
- );
-}
-
-static uint32_t cookieptr(void)
-{
- return * (uint32_t *) 0x5a0L;
-}
-
-void setcookie(uint32_t cookie, uint32_t value)
-{
- uint32_t *cookiejar = (uint32_t *) Supexec(cookieptr);
- int num_slots;
- int max_slots;
-
- num_slots = max_slots = 0;
- do
- {
- if (cookiejar[0] == cookie)
- {
- cookiejar[1] = value;
- return;
- }
- cookiejar = &(cookiejar[2]);
- num_slots++;
- } while (cookiejar[-2]);
-
- /*
- * Here we are at the end of the list and did not find our cookie.
- * Let's check if there is any space left and append our value to the
- * list if so. If not, we are lost (extending the cookie jar does only
- * work from TSRs)
- */
- if (cookiejar[-1])
- {
- max_slots = cookiejar[-1];
- }
-
- if (max_slots > num_slots)
- {
- /* relief, there is space left, extend the list */
- cookiejar[0] = cookiejar[-2];
- cookiejar[1] = cookiejar[-1];
- /* add the new element */
- cookiejar[-2] = cookie;
- cookiejar[-1] = value;
- }
- else
- printf("cannot set cookie, cookie jar is full!\r\n");
-}
-
-#define COOKIE_DMAC 0x444d4143L /* FireTOS DMA API cookie ("DMAC") */
-#define COOKIE_BAS_ 0x4241535fL /* BAS_ cookie (points to driver table struct */
-
-static char *dt_to_str(enum driver_type dt)
-{
- switch (dt)
- {
- case BLOCKDEV_DRIVER: return "generic block device driver";
- case CHARDEV_DRIVER: return "generic character device driver";
- case VIDEO_DRIVER: return "video/framebuffer driver";
- case XHDI_DRIVER: return "XHDI compatible hard disk driver";
- case MCD_DRIVER: return "multichannel DMA driver";
- case PCI_DRIVER: return "PCI interface driver";
- case MMU_DRIVER: return "MMU lock/unlock pages driver";
- case PCI_NATIVE_DRIVER: return "PCI interface native driver";
- default: return "unknown driver type";
- }
-}
-
-static void set_driver_cookies(void)
-{
- struct driver_table *dt;
- void *old_vector;
- char **sysbase = (char **) 0x4f2;
- uint32_t sig;
-
- sig = * (long *)((*sysbase) + 0x2c);
-
- /*
- * first check if we are on EmuTOS, FireTOS want's to do everything itself
- */
- if (sig == 0x45544f53)
- {
- old_vector = Setexc(0x20, trap0_catcher); /* set our own temporarily */
- dt = get_bas_drivers(); /* trap #0 */
- (void) Setexc(0x20, old_vector); /* restore original vector */
-
- if (dt)
- {
- struct generic_interface *ifc = &dt->interfaces[0];
-
- printf("BaS driver table found at %p, BaS version is %d.%d\r\n", dt,
- dt->bas_version, dt->bas_revision);
-
- while (ifc->type != END_OF_DRIVERS)
- {
- printf("driver \"%s (%s)\" found,\r\n"
- "interface type is %d (%s),\r\n"
- "version %d.%d\r\n\r\n",
- ifc->name, ifc->description, ifc->type, dt_to_str(ifc->type),
- ifc->version, ifc->revision);
- if (ifc->type == MCD_DRIVER)
- {
- setcookie(COOKIE_DMAC, (uint32_t) ifc->interface.dma);
- printf("\r\nDMAC cookie set to %p\r\n", ifc->interface.dma);
- }
- ifc++;
- }
-
- /*
- * set cookie to be able to find the driver table later on
- */
- setcookie(COOKIE_BAS_, (uint32_t) dt);
- printf("BAS_ cookie set to %p\r\n", dt);
- }
- else
- {
- printf("driver table not found.\r\n");
- }
- }
- else
- {
- printf("not running on EmuTOS,\r\n(signature 0x%04x instead of 0x%04x\r\n",
- (uint32_t) sig, 0x45544f53);
- }
-}
-
-int main(int argc, char *argv[])
-{
- (void) Cconws("retrieve BaS driver interface\r\n");
-
- Supexec(set_driver_cookies);
-
- while (Cconis()) Cconin(); /* eat keys */
-
- return 0;
-}
-
diff --git a/BaS_gcc/tos/fpga_test/Makefile b/BaS_gcc/tos/fpga_test/Makefile
deleted file mode 100755
index e8b381e..0000000
--- a/BaS_gcc/tos/fpga_test/Makefile
+++ /dev/null
@@ -1,109 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR = ../..
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include -nostdlib -I$(TOPDIR)/include
-LIBS=-lcmini -nostdlib -lgcc -L$(TOPDIR)/firebee -lbas
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=fpga_test.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -O0\
- -g\
- -Wl,-Map,mapfile\
- -Wl,--defsym -Wl,__MBAR=0xff000000\
- -Wl,--defsym -Wl,__MMUBAR=0xff040000\
- -Wl,--defsym -Wl,__FPGA_JTAG_LOADED=0xff101000\
- -Wl,--defsym -Wl,__FPGA_JTAG_VALID=0xff101004\
- -Wl,--defsym -Wl,__VRAM=0x60000000\
- -Wall
-
-SRCDIR=sources
-INCDIR=include
-INCLUDE+=-I$(INCDIR)
-
-CSRCS=\
- $(SRCDIR)/fpga_test.c \
- $(SRCDIR)/ser_printf.c
-
-ASRCS=
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=./m5475 ./m5475/mshort
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-m5475/$(APP):CFLAGS += -mcpu=5475
-m5475/mshort/$(APP): CFLAGS += -mcpu=5475 -mshort
-
-all:$(patsubst %,%/$(APP),$(TRGTDIRS))
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- @echo CC $$@
- @$(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/$(1)/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/$(1) $(LIBS)
- #$(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- @-rm -f $(DEPEND)
- @for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/fpga_test/sources/fpga_test.c b/BaS_gcc/tos/fpga_test/sources/fpga_test.c
deleted file mode 100644
index 6350e01..0000000
--- a/BaS_gcc/tos/fpga_test/sources/fpga_test.c
+++ /dev/null
@@ -1,491 +0,0 @@
-#include
-#include
-#include
-#include
-
-#include "bas_printf.h"
-#include "MCF5475.h"
-#include "driver_vec.h"
-
-#define FPGA_CONFIG (1 << 2)
-#define FPGA_CONF_DONE (1 << 5)
-
-#define SRAM1_START 0xff101000
-#define SRAM1_END SRAM1_START + 0x1000
-#define SAFE_STACK SRAM1_END - 4
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-#define SYSCLK 132000
-
-long bas_start = 0xe0000000;
-
-volatile uint16_t *FB_CS1 = (volatile uint16_t *) 0xfff00000; /* "classic" ATARI I/O registers */
-volatile uint32_t *FB_CS2 = (volatile uint32_t *) 0xf0000000; /* FireBee 32 bit I/O registers */
-volatile uint16_t *FB_CS3 = (volatile uint16_t *) 0xf8000000; /* FireBee SRAM */
-volatile uint32_t *FB_CS4 = (uint32_t *) 0x40000000; /* FireBee SD RAM */
-
-const long sdram_size = 128 * 1024L * 1024L;
-
-static void init_ddr_ram(void)
-{
- xprintf("init video RAM: ");
-
- FB_CS2[0x100] = 0xb; /* set cke = 1, cs=1, config = 1 */
- NOP();
-
- FB_CS4[0] = 0x00050400; /* IPALL */
- NOP();
-
- FB_CS4[0] = 0x00072000; /* load EMR pll on */
- NOP();
-
- FB_CS4[0] = 0x00070122; /* load MR: reset pll, cl=2, burst=4lw */
- NOP();
-
- FB_CS4[0] = 0x00050400; /* IPALL */
- NOP();
-
- FB_CS4[0] = 0x00060000; /* auto refresh */
- NOP();
-
- FB_CS4[0] = 0x00060000; /* auto refresh */
- NOP();
-
- /* FIXME: what's this? */
- FB_CS4[0] = 0000070022; /* load MR dll on */
- NOP();
-
- FB_CS2[0x100] = 0x01070082; /* fifo on, refresh on, ddrcs und cke on, video dac on, Falcon shift mode on */
-
- xprintf("finished\r\n");
-}
-
-
-bool verify_ddr_ram(uint32_t value)
-{
- volatile uint32_t *lp;
- volatile uint16_t *wp;
- uint32_t rl;
- uint16_t rw;
-
- lp = FB_CS4;
-
- /*
- * write/read longs
- */
- lp = FB_CS4;
- do
- {
- *lp = value;
- xprintf("W: 0x%08x R: 0x%08x\r", value, rl = *lp);
-
- if (rl != value)
- {
- xprintf("\nvalidation error at %p: written = 0x%08x, read = 0x%08x\r\n", lp, value, rl);
-
- return false;
- }
- } while (lp++ <= FB_CS4 + sdram_size - 1);
-
- wp = (uint16_t *) FB_CS4;
-
- /*
- * write/read words
- */
- wp = (uint16_t *) FB_CS4;
- do
- {
- *wp = (uint16_t) value;
-
- xprintf("W: 0x%04x R: 0x%04x\r", value, rw = *wp);
-
- if (rw != value)
- {
- xprintf("\nvalidation error at %p: written = 0x%04x, read = 0x%04x\r\n", wp, value, rw);
-
- return false;
- }
- } while (wp++ <= (uint16_t *) FB_CS4 + sdram_size - 1);
-
-
- return true;
-}
-
-bool verify_longaddr(volatile uint32_t * const addr, uint32_t value)
-{
- *addr = value;
-
- xprintf("W: 0x%08x R: 0x%08x\r", value, *addr);
-
- if (value != *addr)
- {
- xprintf("validation error at %p: written = 0x%08x, read = 0x%08x\r\n", addr, value, *addr);
-
- xprintf("\r\n");
-
- return false;
- }
-
- return true;
-}
-
-bool verify_long(volatile uint32_t * const addr, uint32_t low_value, uint32_t high_value)
-{
- uint32_t i;
-
- for (i = low_value; i <= high_value; i++)
- if (verify_longaddr(addr, i) == false)
- {
- xprintf("verify of %p failed: 0x%08x written, 0x%08x read\r\n",
- addr, i, *addr);
-
- return false;
- }
- return true;
-}
-
-void firebee_io_test(void)
-{
- volatile uint32_t *ACP_VCTR = &FB_CS2[0x100]; /* 0xf000400 */
- volatile uint32_t *CCR = &FB_CS2[0x101]; /* 0xf000401 - FireBee mode border color */
- volatile uint32_t *ATARI_HH = &FB_CS2[0x104]; /* 0xf000410 */
- volatile uint32_t *ATARI_VH = &FB_CS2[0x105]; /* 0xf000414 */
- volatile uint32_t *ATARI_HL = &FB_CS2[0x106]; /* 0xf000418 */
- volatile uint32_t *ATARI_VL = &FB_CS2[0x107]; /* 0xf00041c */
-
- volatile uint32_t *VIDEO_PLL_CONFIG = &FB_CS2[0x180]; /* 0xf000600 */
- volatile uint32_t *VIDEO_PLL_RECONFIG = &FB_CS2[0x200]; /* 0xf000800 */
-
- xprintf("verify ACP_VCTR register\r\n");
- verify_long(ACP_VCTR, 0, 0x1ff);
-
- xprintf("verify CCR register\r\n");
- verify_long(CCR, 0, 0x1ff);
-
- xprintf("verify ATARI_HH register\r\n");
- verify_long(ATARI_HH, 0, 0x1ff);
-
- xprintf("verify ATARI_VH register\r\n");
- verify_long(ATARI_VH, 0, 0x1ff);
-
- xprintf("verify ATARI_HL register\r\n");
- verify_long(ATARI_HL, 0, 0x1ff);
-
- xprintf("verify ATARI_VL register\r\n");
- verify_long(ATARI_VL, 0, 0x1ff);
-
- xprintf("verify VIDEO_PLL_CONFIG register\r\n");
- verify_long(VIDEO_PLL_CONFIG, 0, 0x1ff);
-
- xprintf("verify VIDEO_PLL_RECONFIG register\r\n");
- verify_long(VIDEO_PLL_RECONFIG, 0, 0x1ff);
-}
-
-bool verify_wordaddr(volatile uint16_t * const addr, uint16_t value)
-{
- long rvalue;
- *addr = value;
-
- if (value != (rvalue = *addr))
- {
- xprintf("validation error at %p, wrote 0x%04x, read 0x%04x\r\n", addr, value, rvalue);
-
- xprintf("\r\n");
-
- return false;
- }
-
- return true;
-}
-
-bool verify_word(volatile uint16_t * const addr, uint16_t low_value, uint16_t high_value)
-{
- uint16_t i;
-
- for (i = low_value; i <= high_value; i++)
- if (verify_wordaddr(addr, i) == false)
- {
- xprintf("verify of %p failed: 0x%04x written, 0x%04x read\r\n",
- addr, i, *addr);
- return false;
- }
-
- return true;
-}
-
-bool verify_byteaddr(volatile uint8_t * const addr, uint8_t value)
-{
- uint8_t rvalue;
- *addr = value;
-
- if (value != (rvalue = *addr))
- {
- xprintf("validation error at %p, wrote 0x%02x, read 0x%02x\r\n", addr, value, rvalue);
-
- xprintf("\r\n");
-
- return false;
- }
-
- return true;
-}
-
-bool verify_byte(volatile uint8_t * const addr, uint8_t low_value, uint8_t high_value)
-{
- int8_t i;
-
- for (i = low_value; i <= high_value; i++)
- if (verify_byteaddr(addr, i) == false)
- {
- xprintf("verify of %p failed: 0x%02x written, 0x%02x read\r\n",
- addr, i, *addr);
- return false;
- }
-
- return true;
-}
-
-void falcon_io_test(void)
-{
- int i;
-
- volatile uint16_t *SYS_CTR = &FB_CS1[0x7c003]; /* 0xffff8006 */
-
- volatile uint8_t *VIDEO_ADR_HI = ((volatile uint8_t *) &FB_CS1[0x7c100]) + 1; /* 0xffff8201 */
- volatile uint8_t *VIDEO_ADR_MI = ((volatile uint8_t *) &FB_CS1[0x7c101]) + 1; /* 0xffff8203 */
- volatile uint8_t *VIDEO_ADR_LO = ((volatile uint8_t *) &FB_CS1[0x7c106]) + 1; /* 0xffff820d */
-
- volatile uint8_t *VIDEO_CNT_HI = ((volatile uint8_t *) &FB_CS1[0x7c102]) + 1; /* 0xffff8205 */
- volatile uint8_t *VIDEO_CNT_MI = ((volatile uint8_t *) &FB_CS1[0x7c103]) + 1; /* 0xffff8207 */
- volatile uint8_t *VIDEO_CNT_LO = ((volatile uint8_t *) &FB_CS1[0x7c104]) + 1; /* 0xffff8209 */
-
- volatile uint8_t *SYNC_MODE = ((volatile uint8_t *) &FB_CS1[0x7c105]) + 1; /* 0xffff8006 */
-
- volatile uint16_t *VDL_LOF = &FB_CS1[0x7c107]; /* 0xffff820e */
- volatile uint16_t *VDL_LWD = &FB_CS1[0x7c108]; /* 0xffff8210 */
- volatile uint16_t *VDL_HHT = &FB_CS1[0x7c141]; /* 0xffff8282 */
- volatile uint16_t *VDL_HBB = &FB_CS1[0x7c142]; /* 0xffff8284 */
- volatile uint16_t *VDL_HBE = &FB_CS1[0x7c143]; /* 0xffff8286 */
- volatile uint16_t *VDL_HDB = &FB_CS1[0x7c144]; /* 0xffff8288 */
- volatile uint16_t *VDL_HDE = &FB_CS1[0x7c145]; /* 0xffff828a */
- volatile uint16_t *VDL_HSS = &FB_CS1[0x7c146]; /* 0xffff828c */
-
- volatile uint16_t *VDL_VFT = &FB_CS1[0x7c151]; /* 0xffff82a2 */
- volatile uint16_t *VDL_VBB = &FB_CS1[0x7c152]; /* 0xffff82a4 */
- volatile uint16_t *VDL_VBE = &FB_CS1[0x7c153]; /* 0xffff82a6 */
- volatile uint16_t *VDL_VDB = &FB_CS1[0x7c154]; /* 0xffff82a8 */
- volatile uint16_t *VDL_VDE = &FB_CS1[0x7c155]; /* 0xffff82aa */
- volatile uint16_t *VDL_VSS = &FB_CS1[0x7c156]; /* 0xffff82ac */
- volatile uint16_t *VDL_VCT = &FB_CS1[0x7c160]; /* 0xffff82c0 */
- volatile uint16_t *VDL_VMD = &FB_CS1[0x7c161]; /* 0xffff82c2 */
-
- /* ST palette registers */
- volatile uint8_t *st_palette = (volatile uint8_t *) &FB_CS1[0x7c120]; /* 0xffff8240 */
-
- /* Falcon palette registers */
- volatile uint8_t *falcon_palette = (volatile uint8_t *) &FB_CS1[0x7cc00]; /* 0xffff9800 */
-
- xprintf("verify VIDEO_ADR_XX registers\r\n");
- verify_byte(VIDEO_ADR_HI, 0x00, 0xff);
- verify_byte(VIDEO_ADR_MI, 0x00, 0xff);
- verify_byte(VIDEO_ADR_LO, 0x00, 0xff);
-
- xprintf("verify VIDEO_CNT_XX registers\r\n");
- verify_byte(VIDEO_CNT_HI, 0x00, 0xff);
- verify_byte(VIDEO_CNT_MI, 0x00, 0xff);
- verify_byte(VIDEO_CNT_LO, 0x00, 0xff);
-
- xprintf("verify SYNC_MODE register\r\n");
- verify_byte(SYNC_MODE, 0x00, 0xff);
-
- xprintf("verify SYS_CTR register\r\n");
- verify_word(SYS_CTR, 0, 0x1ff);
-
- for (i = 0; i < 16 * 2; i += 2)
- {
- xprintf("verify ST palette register %d\r\n", i / 2);
- verify_byte(&st_palette[i], i / 2, i / 2);
- verify_byte(&st_palette[i], i / 2, i / 2); /* do two consecutive tests here because of RAM latency */
- }
-
- for (i = 0; i < 255 * 2; i += 2)
- {
- xprintf("verify Falcon palette register %d\r\n", i / 2);
- verify_byte(&falcon_palette[i], i / 2, i / 2);
- verify_byte(&falcon_palette[i], i / 2, i / 2); /* do two consecutive tests here because of FPGA RAM latency */
- }
-
- xprintf("verify LOF register\r\n");
- verify_word(VDL_LOF, 0, 0x1ff);
-
- xprintf("verify LWD register \r\n");
- verify_word(VDL_LWD, 0, 0x1ff);
-
- xprintf("verify HHT register\r\n");
- verify_word(VDL_HHT, 0, 0x1ff);
-
- xprintf("verify HBB register\r\n");
- verify_word(VDL_HBB, 0, 0x1ff);
-
- xprintf("verify HBE register\r\n");
- verify_word(VDL_HBE, 0, 0x1ff);
-
- xprintf("verify HDB register\r\n");
- verify_word(VDL_HDB, 0, 0x1ff);
-
- xprintf("verify HDE register\r\n");
- verify_word(VDL_HDE, 0, 0x1ff);
-
- xprintf("verify HSS register\r\n");
- verify_word(VDL_HSS, 0, 0x1ff);
-
-
- xprintf("verify VFT register\r\n");
- verify_word(VDL_VFT, 0, 0x1ff);
-
- xprintf("verify VBB register\r\n");
- verify_word(VDL_VBB, 0, 0x1ff);
-
- xprintf("verify VBE register\r\n");
- verify_word(VDL_VBE, 0, 0x1ff);
-
- xprintf("verify VDB register\r\n");
- verify_word(VDL_VDB, 0, 0x1ff);
-
- xprintf("verify VDE register\r\n");
- verify_word(VDL_VDE, 0, 0x1ff);
-
- xprintf("verify VSS register\r\n");
- verify_word(VDL_VSS, 0, 0x1ff);
-
- xprintf("verify VCT register\r\n");
- verify_word(VDL_VCT, 0, 0x1ff);
-
- xprintf("verify VMD register\r\n");
- verify_word(VDL_VMD, 0, 0x1ff);
-}
-
-void do_tests(void)
-{
- xprintf("start tests:\r\n");
-
- xprintf("Falcon I/O test\r\n");
- falcon_io_test();
-
- xprintf("FireBee I/O test\r\n");
- firebee_io_test();
-
- init_ddr_ram();
- verify_ddr_ram(0xaaaaaaaa);
- verify_ddr_ram(0x55555555);
-}
-
-
-void wait_for_jtag(void)
-{
- long i;
-
- /* set supervisor stack to end of SRAM1 */
- __asm__ __volatile__ (
- " move #0x2700,sr\n\t" /* disable interrupts */
- " move.l %[stack],d0\n\t" /* 4KB on-chip core SRAM1 */
- " move.l d0,sp\n\t" /* set stack pointer */
- :
- : [stack] "i" (SAFE_STACK)
- : "d0", "cc" /* clobber */
- );
-
- MCF_EPORT_EPIER = 0x0; /* disable EPORT interrupts */
- MCF_INTC_IMRL = 0xffffffff;
- MCF_INTC_IMRH = 0xffffffff; /* disable interrupt controller */
-
- MCF_MMU_MMUCR &= ~MCF_MMU_MMUCR_EN; /* disable MMU */
-
- xprintf("relocated supervisor stack, disabled interrupts and disabled MMU\r\n");
-
- /*
- * configure FEC1L port directions to enable external JTAG configuration download to FPGA
- */
- MCF_GPIO_PDDR_FEC1L = 0 |
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4; /* bit 4 = LED => output */
- /* all other bits = input */
-
- /*
- * configure DSPI_CS3 as GPIO input to avoid the MCU driving against the FPGA blink
- */
- MCF_PAD_PAR_DSPI &= ~MCF_PAD_PAR_DSPI_PAR_CS3(MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3);
- /*
- * now that GPIO ports have been switched to input, we can poll for FPGA config
- * started from the JTAG interface (CONF_DONE goes low) and finish (CONF_DONE goes high)
- */
- xprintf("waiting for JTAG configuration start\r\n");
- while ((MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load started */
-
- xprintf("waiting for JTAG configuration to finish\r\n");
- while (!(MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load finished */
-
- xprintf("JTAG configuration finished.\r\n");
-
- /* wait */
- xprintf("wait a little to let things settle...\r\n");
- for (i = 0; i < 100000L; i++);
-
- xprintf("disable caches\r\n");
- __asm__ __volatile(
- "move.l #0x01000000,d0 \r\n"
- "movec d0,CACR \r\n"
- : /* no output */
- : /* no input */
- : "d0", "memory");
-
- /* begin of tests */
-
- do_tests();
-
- xprintf("wait a little to let things settle...\r\n");
- for (i = 0; i < 100000L; i++);
-
- xprintf("INFO: endless loop now. Press reset to reboot\r\n");
- while (1)
- ;
-}
-
-int main(int argc, char *argv[])
-{
- printf("FPGA JTAG configuration support\r\n");
- printf("test FPGA DDR RAM controller\r\n");
- printf("\xbd 2014 M. Fr\x94schle\r\n");
-
- printf("You may now savely load a new FPGA configuration through the JTAG interface\r\n"
- "and your FireBee will reboot once finished using that new configuration.\r\n");
- if (argc == 2)
- {
- /*
- * we got an argument. This is supposed to be the address that we need to jump to after JTAG
- * configuration has been finished. Meant to support BaS in RAM testing
- */
- char *addr_str = argv[1];
- char *addr = NULL;
- char *end = NULL;
-
- addr = (char *) strtol(addr_str, &end, 16);
- if (addr != NULL && addr <= (char *) 0xe0000000 && addr >= (char *) 0x10000000)
- {
- /*
- * seems to be a valid address
- */
- bas_start = (long) addr;
-
- printf("BaS start address set to %p\r\n", (void *) bas_start);
- }
- else
- {
- printf("\r\nNote: BaS start address %p not valid. Stick to %p.\r\n", addr, (void *) bas_start);
- }
- }
- Supexec(wait_for_jtag);
-
- return 0; /* just to make the compiler happy, we will never return */
-}
-
diff --git a/BaS_gcc/tos/fpga_test/sources/ser_printf.c b/BaS_gcc/tos/fpga_test/sources/ser_printf.c
deleted file mode 100755
index 2b3dd95..0000000
--- a/BaS_gcc/tos/fpga_test/sources/ser_printf.c
+++ /dev/null
@@ -1,480 +0,0 @@
-
-/*
- * tc.printf.c: A public-domain, minimal printf/sprintf routine that prints
- * through the putchar() routine. Feel free to use for
- * anything... -- 7/17/87 Paul Placeway
- */
-/*-
- * Copyright (c) 1980, 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include
-#include
-#include "MCF5475.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-/*
- * Lexical definitions.
- *
- * All lexical space is allocated dynamically.
- * The eighth/sixteenth bit of characters is used to prevent recognition,
- * and eventually stripped.
- */
-#define META 0200
-#define ASCII 0177
-#define QUOTE ((char) 0200) /* Eighth char bit used for 'ing */
-#define TRIM 0177 /* Mask to strip quote bit */
-#define UNDER 0000000 /* No extra bits to do both */
-#define BOLD 0000000 /* Bold flag */
-#define STANDOUT META /* Standout flag */
-#define LITERAL 0000000 /* Literal character flag */
-#define ATTRIBUTES 0200 /* The bits used for attributes */
-#define CHAR 0000177 /* Mask to mask out the character */
-
-#define INF 32766 /* should be bigger than any field to print */
-
-static char snil[] = "(nil)";
-
-bool conoutstat(void)
-{
- bool stat;
-
- stat = MCF_PSC0_PSCSR & MCF_PSC_PSCSR_TXRDY; /* TX FIFO can take data */
-
- return stat;
-}
-
-bool coninstat(void)
-{
- bool stat;
-
- stat = MCF_PSC0_PSCSR & MCF_PSC_PSCSR_RXRDY; /* RX FIFO has data available */
-
- return stat;
-}
-
-void xputchar(int c)
-{
- do { ; } while (!conoutstat());
- MCF_PSC_PSCRB_8BIT(0) = (char) c;
-}
-
-char xgetchar(void)
-{
- char c;
-
- do { ; } while (!coninstat());
- c = MCF_PSC_PSCTB_8BIT(0);
-
- return c;
-}
-
-static void doprnt(void (*addchar)(int), const char *sfmt, va_list ap)
-{
- char buf[128];
- char *bp;
- const char *f;
- float flt;
- long l;
- unsigned long u;
- int i;
- int fmt;
- unsigned char pad = ' ';
- int flush_left = 0;
- int f_width = 0;
- int prec = INF;
- int hash = 0;
- int do_long = 0;
- int sign = 0;
- int attributes = 0;
-
- f = sfmt;
- for (; *f; f++)
- {
- if (*f != '%')
- {
- /* then just out the char */
- (*addchar)((int) (((unsigned char) *f) | attributes));
- }
- else
- {
- f++; /* skip the % */
-
- if (*f == '-')
- { /* minus: flush left */
- flush_left = 1;
- f++;
- }
-
- if (*f == '0' || *f == '.')
- {
- /* padding with 0 rather than blank */
- pad = '0';
- f++;
- }
- if (*f == '*')
- {
- /* field width */
- f_width = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- f_width = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
-
- if (*f == '.')
- { /* precision */
- f++;
- if (*f == '*')
- {
- prec = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- prec = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
- }
-
- if (*f == '#')
- { /* alternate form */
- hash = 1;
- f++;
- }
-
- if (*f == 'l')
- { /* long format */
- do_long++;
- f++;
- if (*f == 'l')
- {
- do_long++;
- f++;
- }
- }
-
- fmt = (unsigned char) *f;
- if (fmt != 'S' && fmt != 'Q' && isupper(fmt))
- {
- do_long = 1;
- fmt = tolower(fmt);
- }
- bp = buf;
- switch (fmt)
- { /* do the format */
- case 'd':
- switch (do_long)
- {
- case 0:
- l = (long) (va_arg(ap, int));
- break;
- case 1:
- default:
- l = va_arg(ap, long);
- break;
- }
-
- if (l < 0)
- {
- sign = 1;
- l = -l;
- }
- do
- {
- *bp++ = (char) (l % 10) + '0';
- } while ((l /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'f':
- /* this is actually more than stupid, but does work for now */
- flt = (float) (va_arg(ap, double)); /* beware: va_arg() extends float to double! */
- if (flt < 0)
- {
- sign = 1;
- flt = -flt;
- }
- {
- int quotient, remainder;
-
- quotient = (int) flt;
- remainder = (flt - quotient) * 10E5;
-
- for (i = 0; i < 6; i++)
- {
- *bp++ = (char) (remainder % 10) + '0';
- remainder /= 10;
- }
- *bp++ = '.';
- do
- {
- *bp++ = (char) (quotient % 10) + '0';
- } while ((quotient /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- }
- break;
-
- case 'p':
- do_long = 1;
- hash = 1;
- fmt = 'x';
- /* no break */
- case 'o':
- case 'x':
- case 'u':
- switch (do_long)
- {
- case 0:
- u = (unsigned long) (va_arg(ap, unsigned int));
- break;
- case 1:
- default:
- u = va_arg(ap, unsigned long);
- break;
- }
- if (fmt == 'u')
- { /* unsigned decimal */
- do
- {
- *bp++ = (char) (u % 10) + '0';
- } while ((u /= 10) > 0);
- }
- else if (fmt == 'o')
- { /* octal */
- do
- {
- *bp++ = (char) (u % 8) + '0';
- } while ((u /= 8) > 0);
- if (hash)
- *bp++ = '0';
- }
- else if (fmt == 'x')
- { /* hex */
- do
- {
- i = (int) (u % 16);
- if (i < 10)
- *bp++ = i + '0';
- else
- *bp++ = i - 10 + 'a';
- } while ((u /= 16) > 0);
- if (hash)
- {
- *bp++ = 'x';
- *bp++ = '0';
- }
- }
- i = f_width - (int) (bp - buf);
- if (!flush_left)
- while (i-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (i-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'c':
- i = va_arg(ap, int);
- (*addchar)((int) (i | attributes));
- break;
-
- case 'S':
- case 'Q':
- case 's':
- case 'q':
- bp = va_arg(ap, char *);
- if (!bp)
- bp = snil;
- f_width = f_width - strlen((char *) bp);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (i = 0; *bp && i < prec; i++)
- {
- if (fmt == 'q' && (*bp & QUOTE))
- (*addchar)((int) ('\\' | attributes));
- (*addchar)(
- (int) (((unsigned char) *bp & TRIM) | attributes));
- bp++;
- }
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'a':
- attributes = va_arg(ap, int);
- break;
-
- case '%':
- (*addchar)((int) ('%' | attributes));
- break;
-
- default:
- break;
- }
- flush_left = 0, f_width = 0, prec = INF, hash = 0, do_long = 0;
- sign = 0;
- pad = ' ';
- }
- }
-}
-
-static char *xstring, *xestring;
-
-void xaddchar(int c)
-{
- if (xestring == xstring)
- *xstring = '\0';
- else
- *xstring++ = (char) c;
-}
-
-int sprintf(char *str, const char *format, ...)
-{
- va_list va;
- va_start(va, format);
-
- xstring = str;
-
- doprnt(xaddchar, format, va);
- va_end(va);
- *xstring++ = '\0';
-
- return 0;
-}
-
-void xsnprintf(char *str, size_t size, const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
-
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- va_end(va);
- *xstring++ = '\0';
-}
-
-void xprintf(const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
- doprnt(xputchar, fmt, va);
- va_end(va);
-}
-
-void xvprintf(const char *fmt, va_list va)
-{
- doprnt(xputchar, fmt, va);
-}
-
-void xvsnprintf(char *str, size_t size, const char *fmt, va_list va)
-{
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- *xstring++ = '\0';
-}
-
-
-void display_progress()
-{
- static int _progress_index;
- char progress_char[] = "|/-\\";
-
- xputchar(progress_char[_progress_index++ % strlen(progress_char)]);
- xputchar('\r');
-}
-
-void hexdump(uint8_t buffer[], int size)
-{
- int i;
- int line = 0;
- volatile uint8_t *bp = buffer;
-
- while (bp < buffer + size) {
- volatile uint8_t *lbp = bp;
-
- xprintf("%08x ", line);
-
- for (i = 0; i < 16; i++) {
- uint8_t c = *lbp++;
- if (bp + i > buffer + size) {
- break;
- }
- xprintf("%02x ", c);
- }
-
- lbp = bp;
- for (i = 0; i < 16; i++) {
- volatile int8_t c = *lbp++;
-
- if (bp + i > buffer + size) {
- break;
- }
- if (c > ' ' && c < '~') {
- xprintf("%c", c);
- } else {
- xprintf(".");
- }
- }
- xprintf("\r\n");
-
- bp += 16;
- line += 16;
- }
-}
diff --git a/BaS_gcc/tos/fpga_test/vmem_test.config b/BaS_gcc/tos/fpga_test/vmem_test.config
deleted file mode 100644
index 8cec188..0000000
--- a/BaS_gcc/tos/fpga_test/vmem_test.config
+++ /dev/null
@@ -1 +0,0 @@
-// ADD PREDEFINED MACROS HERE!
diff --git a/BaS_gcc/tos/fpga_test/vmem_test.creator b/BaS_gcc/tos/fpga_test/vmem_test.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/tos/fpga_test/vmem_test.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/tos/fpga_test/vmem_test.files b/BaS_gcc/tos/fpga_test/vmem_test.files
deleted file mode 100644
index d4c5c1a..0000000
--- a/BaS_gcc/tos/fpga_test/vmem_test.files
+++ /dev/null
@@ -1,7 +0,0 @@
-include/driver_vec.h
-sources/jtagwait.c
-Makefile
-sources/bas_printf.c
-sources/bas_string.c
-sources/printf_helper.S
-sources/vmem_test.c
diff --git a/BaS_gcc/tos/fpga_test/vmem_test.includes b/BaS_gcc/tos/fpga_test/vmem_test.includes
deleted file mode 100644
index 0e46827..0000000
--- a/BaS_gcc/tos/fpga_test/vmem_test.includes
+++ /dev/null
@@ -1,2 +0,0 @@
-include
-/usr/m68k-atari-mint/include
diff --git a/BaS_gcc/tos/jtagwait/Makefile b/BaS_gcc/tos/jtagwait/Makefile
deleted file mode 100755
index d893b33..0000000
--- a/BaS_gcc/tos/jtagwait/Makefile
+++ /dev/null
@@ -1,108 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR = ../..
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include -nostdlib
-LIBS=-lcmini -nostdlib -lgcc
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=jtagwait.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -O0\
- -g\
- -Wl,-Map,mapfile\
- -Wl,--defsym -Wl,__MBAR=0xff000000\
- -Wl,--defsym -Wl,__MMUBAR=0xff040000\
- -Wl,--defsym -Wl,__FPGA_JTAG_LOADED=0xff101000\
- -Wl,--defsym -Wl,__FPGA_JTAG_VALID=0xff101004\
- -Wall
-
-SRCDIR=sources
-INCDIR=include
-INCLUDE+=-I$(INCDIR)
-
-CSRCS=\
- $(SRCDIR)/jtagwait.c \
- $(SRCDIR)/bas_printf.c
-
-ASRCS=$(SRCDIR)/printf_helper.S
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=./m5475 ./m5475/mshort
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-m5475/$(APP):CFLAGS += -mcpu=5475
-m5475/mshort/$(APP): CFLAGS += -mcpu=5475 -mshort
-
-all:$(patsubst %,%/$(APP),$(TRGTDIRS))
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- @echo CC $$@
- @$(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/$(1)/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/$(1) $(LIBS)
- @$(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- @-rm -f $(DEPEND)
- @for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475.h b/BaS_gcc/tos/jtagwait/include/MCF5475.h
deleted file mode 100644
index 5ab1750..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_H__
-#define __MCF5475_H__
-
-#include
-/***
- * MCF5475 Derivative Memory map definitions from linker command files:
- * __MBAR, __MMUBAR, __RAMBAR0, __RAMBAR0_SIZE, __RAMBAR1, __RAMBAR1_SIZE
- * linker symbols must be defined in the linker command file.
- */
-
-typedef uint32_t __attribute__((__may_alias__)) uint32_t_a; /* a type to avoid gcc's complaints about pointer aliasing */
-
-extern uint8_t _MBAR[];
-extern uint8_t _MMUBAR[];
-extern uint8_t _RAMBAR0[];
-extern uint8_t _RAMBAR0_SIZE[];
-extern uint8_t _RAMBAR1[];
-extern uint8_t _RAMBAR1_SIZE[];
-
-#define MBAR_ADDRESS (uint32_t)_MBAR
-#define MMUBAR_ADDRESS (uint32_t)_MMUBAR
-#define RAMBAR0_ADDRESS (uint32_t)_RAMBAR0
-#define RAMBAR0_SIZE (uint32_t)_RAMBAR0_SIZE
-#define RAMBAR1_ADDRESS (uint32_t)_RAMBAR1
-#define RAMBAR1_SIZE (uint32_t)_RAMBAR1_SIZE
-
-
-#include "MCF5475_SIU.h"
-#include "MCF5475_MMU.h"
-#include "MCF5475_SDRAMC.h"
-#include "MCF5475_XLB.h"
-#include "MCF5475_CLOCK.h"
-#include "MCF5475_FBCS.h"
-#include "MCF5475_INTC.h"
-#include "MCF5475_GPT.h"
-#include "MCF5475_SLT.h"
-#include "MCF5475_GPIO.h"
-#include "MCF5475_PAD.h"
-#include "MCF5475_PCI.h"
-#include "MCF5475_PCIARB.h"
-#include "MCF5475_EPORT.h"
-#include "MCF5475_CTM.h"
-#include "MCF5475_DMA.h"
-#include "MCF5475_PSC.h"
-#include "MCF5475_DSPI.h"
-#include "MCF5475_I2C.h"
-#include "MCF5475_FEC.h"
-#include "MCF5475_USB.h"
-#include "MCF5475_SRAM.h"
-#include "MCF5475_SEC.h"
-
-#endif /* __MCF5475_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_CLOCK.h b/BaS_gcc/tos/jtagwait/include/MCF5475_CLOCK.h
deleted file mode 100644
index 4603098..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_CLOCK.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CLOCK_H__
-#define __MCF5475_CLOCK_H__
-
-
-/*********************************************************************
-*
-* Clock Module (CLOCK)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CLOCK_SPCR (*(volatile uint32_t*)(&_MBAR[0x300]))
-
-
-/* Bit definitions and macros for MCF_CLOCK_SPCR */
-#define MCF_CLOCK_SPCR_MEMEN (0x1)
-#define MCF_CLOCK_SPCR_PCIEN (0x2)
-#define MCF_CLOCK_SPCR_FBEN (0x4)
-#define MCF_CLOCK_SPCR_CAN0EN (0x8)
-#define MCF_CLOCK_SPCR_DMAEN (0x10)
-#define MCF_CLOCK_SPCR_FEC0EN (0x20)
-#define MCF_CLOCK_SPCR_FEC1EN (0x40)
-#define MCF_CLOCK_SPCR_USBEN (0x80)
-#define MCF_CLOCK_SPCR_PSCEN (0x200)
-#define MCF_CLOCK_SPCR_CAN1EN (0x800)
-#define MCF_CLOCK_SPCR_CRYENA (0x1000)
-#define MCF_CLOCK_SPCR_CRYENB (0x2000)
-#define MCF_CLOCK_SPCR_COREN (0x4000)
-#define MCF_CLOCK_SPCR_PLLK (0x80000000)
-
-
-#endif /* __MCF5475_CLOCK_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_CTM.h b/BaS_gcc/tos/jtagwait/include/MCF5475_CTM.h
deleted file mode 100644
index 5ba86e4..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_CTM.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CTM_H__
-#define __MCF5475_CTM_H__
-
-
-/*********************************************************************
-*
-* Comm Timer Module (CTM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CTM_CTCR0 (*(volatile uint32_t*)(&_MBAR[0x7F00]))
-#define MCF_CTM_CTCR1 (*(volatile uint32_t*)(&_MBAR[0x7F04]))
-#define MCF_CTM_CTCR2 (*(volatile uint32_t*)(&_MBAR[0x7F08]))
-#define MCF_CTM_CTCR3 (*(volatile uint32_t*)(&_MBAR[0x7F0C]))
-#define MCF_CTM_CTCR4 (*(volatile uint32_t*)(&_MBAR[0x7F10]))
-#define MCF_CTM_CTCR5 (*(volatile uint32_t*)(&_MBAR[0x7F14]))
-#define MCF_CTM_CTCR6 (*(volatile uint32_t*)(&_MBAR[0x7F18]))
-#define MCF_CTM_CTCR7 (*(volatile uint32_t*)(&_MBAR[0x7F1C]))
-#define MCF_CTM_CTCRF(x) (*(volatile uint32_t*)(&_MBAR[0x7F00 + ((x)*0x4)]))
-#define MCF_CTM_CTCRV(x) (*(volatile uint32_t*)(&_MBAR[0x7F10 + ((x-4)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_CTM_CTCRF */
-#define MCF_CTM_CTCRF_CRV(x) (((x)&0xFFFF)<<0)
-#define MCF_CTM_CTCRF_S(x) (((x)&0xF)<<0x10)
-#define MCF_CTM_CTCRF_S_CLK_1 (0)
-#define MCF_CTM_CTCRF_S_CLK_2 (0x10000)
-#define MCF_CTM_CTCRF_S_CLK_4 (0x20000)
-#define MCF_CTM_CTCRF_S_CLK_8 (0x30000)
-#define MCF_CTM_CTCRF_S_CLK_16 (0x40000)
-#define MCF_CTM_CTCRF_S_CLK_32 (0x50000)
-#define MCF_CTM_CTCRF_S_CLK_64 (0x60000)
-#define MCF_CTM_CTCRF_S_CLK_128 (0x70000)
-#define MCF_CTM_CTCRF_S_CLK_256 (0x80000)
-#define MCF_CTM_CTCRF_S_CLK_EXT (0x90000)
-#define MCF_CTM_CTCRF_PCT(x) (((x)&0x7)<<0x14)
-#define MCF_CTM_CTCRF_PCT_100 (0)
-#define MCF_CTM_CTCRF_PCT_50 (0x100000)
-#define MCF_CTM_CTCRF_PCT_25 (0x200000)
-#define MCF_CTM_CTCRF_PCT_12p5 (0x300000)
-#define MCF_CTM_CTCRF_PCT_6p25 (0x400000)
-#define MCF_CTM_CTCRF_PCT_OFF (0x500000)
-#define MCF_CTM_CTCRF_M (0x800000)
-#define MCF_CTM_CTCRF_IM (0x1000000)
-#define MCF_CTM_CTCRF_I (0x80000000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRV */
-#define MCF_CTM_CTCRV_CRV(x) (((x)&0xFFFFFF)<<0)
-#define MCF_CTM_CTCRV_PCT(x) (((x)&0x7)<<0x18)
-#define MCF_CTM_CTCRV_PCT_100 (0)
-#define MCF_CTM_CTCRV_PCT_50 (0x1000000)
-#define MCF_CTM_CTCRV_PCT_25 (0x2000000)
-#define MCF_CTM_CTCRV_PCT_12p5 (0x3000000)
-#define MCF_CTM_CTCRV_PCT_6p25 (0x4000000)
-#define MCF_CTM_CTCRV_PCT_OFF (0x5000000)
-#define MCF_CTM_CTCRV_M (0x8000000)
-#define MCF_CTM_CTCRV_S (0x10000000)
-
-
-#endif /* __MCF5475_CTM_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_DMA.h b/BaS_gcc/tos/jtagwait/include/MCF5475_DMA.h
deleted file mode 100644
index 4e6f916..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_DMA.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DMA_H__
-#define __MCF5475_DMA_H__
-
-
-/*********************************************************************
-*
-* Multichannel DMA (DMA)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DMA_TASKBAR (*(volatile uint32_t*)(&_MBAR[0x8000]))
-#define MCF_DMA_CP (*(volatile uint32_t*)(&_MBAR[0x8004]))
-#define MCF_DMA_EP (*(volatile uint32_t*)(&_MBAR[0x8008]))
-#define MCF_DMA_VP (*(volatile uint32_t*)(&_MBAR[0x800C]))
-#define MCF_DMA_PTD (*(volatile uint32_t*)(&_MBAR[0x8010]))
-#define MCF_DMA_DIPR (*(volatile uint32_t*)(&_MBAR[0x8014]))
-#define MCF_DMA_DIMR (*(volatile uint32_t*)(&_MBAR[0x8018]))
-#define MCF_DMA_TCR0 (*(volatile uint16_t*)(&_MBAR[0x801C]))
-#define MCF_DMA_TCR1 (*(volatile uint16_t*)(&_MBAR[0x801E]))
-#define MCF_DMA_TCR2 (*(volatile uint16_t*)(&_MBAR[0x8020]))
-#define MCF_DMA_TCR3 (*(volatile uint16_t*)(&_MBAR[0x8022]))
-#define MCF_DMA_TCR4 (*(volatile uint16_t*)(&_MBAR[0x8024]))
-#define MCF_DMA_TCR5 (*(volatile uint16_t*)(&_MBAR[0x8026]))
-#define MCF_DMA_TCR6 (*(volatile uint16_t*)(&_MBAR[0x8028]))
-#define MCF_DMA_TCR7 (*(volatile uint16_t*)(&_MBAR[0x802A]))
-#define MCF_DMA_TCR8 (*(volatile uint16_t*)(&_MBAR[0x802C]))
-#define MCF_DMA_TCR9 (*(volatile uint16_t*)(&_MBAR[0x802E]))
-#define MCF_DMA_TCR10 (*(volatile uint16_t*)(&_MBAR[0x8030]))
-#define MCF_DMA_TCR11 (*(volatile uint16_t*)(&_MBAR[0x8032]))
-#define MCF_DMA_TCR12 (*(volatile uint16_t*)(&_MBAR[0x8034]))
-#define MCF_DMA_TCR13 (*(volatile uint16_t*)(&_MBAR[0x8036]))
-#define MCF_DMA_TCR14 (*(volatile uint16_t*)(&_MBAR[0x8038]))
-#define MCF_DMA_TCR15 (*(volatile uint16_t*)(&_MBAR[0x803A]))
-#define MCF_DMA_PRIOR0 (*(volatile uint8_t *)(&_MBAR[0x803C]))
-#define MCF_DMA_PRIOR1 (*(volatile uint8_t *)(&_MBAR[0x803D]))
-#define MCF_DMA_PRIOR2 (*(volatile uint8_t *)(&_MBAR[0x803E]))
-#define MCF_DMA_PRIOR3 (*(volatile uint8_t *)(&_MBAR[0x803F]))
-#define MCF_DMA_PRIOR4 (*(volatile uint8_t *)(&_MBAR[0x8040]))
-#define MCF_DMA_PRIOR5 (*(volatile uint8_t *)(&_MBAR[0x8041]))
-#define MCF_DMA_PRIOR6 (*(volatile uint8_t *)(&_MBAR[0x8042]))
-#define MCF_DMA_PRIOR7 (*(volatile uint8_t *)(&_MBAR[0x8043]))
-#define MCF_DMA_PRIOR8 (*(volatile uint8_t *)(&_MBAR[0x8044]))
-#define MCF_DMA_PRIOR9 (*(volatile uint8_t *)(&_MBAR[0x8045]))
-#define MCF_DMA_PRIOR10 (*(volatile uint8_t *)(&_MBAR[0x8046]))
-#define MCF_DMA_PRIOR11 (*(volatile uint8_t *)(&_MBAR[0x8047]))
-#define MCF_DMA_PRIOR12 (*(volatile uint8_t *)(&_MBAR[0x8048]))
-#define MCF_DMA_PRIOR13 (*(volatile uint8_t *)(&_MBAR[0x8049]))
-#define MCF_DMA_PRIOR14 (*(volatile uint8_t *)(&_MBAR[0x804A]))
-#define MCF_DMA_PRIOR15 (*(volatile uint8_t *)(&_MBAR[0x804B]))
-#define MCF_DMA_PRIOR16 (*(volatile uint8_t *)(&_MBAR[0x804C]))
-#define MCF_DMA_PRIOR17 (*(volatile uint8_t *)(&_MBAR[0x804D]))
-#define MCF_DMA_PRIOR18 (*(volatile uint8_t *)(&_MBAR[0x804E]))
-#define MCF_DMA_PRIOR19 (*(volatile uint8_t *)(&_MBAR[0x804F]))
-#define MCF_DMA_PRIOR20 (*(volatile uint8_t *)(&_MBAR[0x8050]))
-#define MCF_DMA_PRIOR21 (*(volatile uint8_t *)(&_MBAR[0x8051]))
-#define MCF_DMA_PRIOR22 (*(volatile uint8_t *)(&_MBAR[0x8052]))
-#define MCF_DMA_PRIOR23 (*(volatile uint8_t *)(&_MBAR[0x8053]))
-#define MCF_DMA_PRIOR24 (*(volatile uint8_t *)(&_MBAR[0x8054]))
-#define MCF_DMA_PRIOR25 (*(volatile uint8_t *)(&_MBAR[0x8055]))
-#define MCF_DMA_PRIOR26 (*(volatile uint8_t *)(&_MBAR[0x8056]))
-#define MCF_DMA_PRIOR27 (*(volatile uint8_t *)(&_MBAR[0x8057]))
-#define MCF_DMA_PRIOR28 (*(volatile uint8_t *)(&_MBAR[0x8058]))
-#define MCF_DMA_PRIOR29 (*(volatile uint8_t *)(&_MBAR[0x8059]))
-#define MCF_DMA_PRIOR30 (*(volatile uint8_t *)(&_MBAR[0x805A]))
-#define MCF_DMA_PRIOR31 (*(volatile uint8_t *)(&_MBAR[0x805B]))
-#define MCF_DMA_IMCR (*(volatile uint32_t*)(&_MBAR[0x805C]))
-#define MCF_DMA_TSKSZ0 (*(volatile uint32_t*)(&_MBAR[0x8060]))
-#define MCF_DMA_TSKSZ1 (*(volatile uint32_t*)(&_MBAR[0x8064]))
-#define MCF_DMA_DBGCOMP0 (*(volatile uint32_t*)(&_MBAR[0x8070]))
-#define MCF_DMA_DBGCOMP2 (*(volatile uint32_t*)(&_MBAR[0x8074]))
-#define MCF_DMA_DBGCTL (*(volatile uint32_t*)(&_MBAR[0x8078]))
-#define MCF_DMA_TCR(x) (*(volatile uint16_t*)(&_MBAR[0x801C + ((x)*0x2)]))
-#define MCF_DMA_PRIOR(x) (*(volatile uint8_t *)(&_MBAR[0x803C + ((x)*0x1)]))
-
-
-/* Bit definitions and macros for MCF_DMA_TASKBAR */
-#define MCF_DMA_TASKBAR_TASK_BASE_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_CP */
-#define MCF_DMA_CP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_EP */
-#define MCF_DMA_EP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_VP */
-#define MCF_DMA_VP_VARIABLE_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_PTD */
-#define MCF_DMA_PTD_PCTL0 (0x1)
-#define MCF_DMA_PTD_PCTL1 (0x2)
-#define MCF_DMA_PTD_PCTL13 (0x2000)
-#define MCF_DMA_PTD_PCTL14 (0x4000)
-#define MCF_DMA_PTD_PCTL15 (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_TCR */
-#define MCF_DMA_TCR_ASTSKNUM(x) (((x)&0xF)<<0)
-#define MCF_DMA_TCR_HLDINITNUM (0x20)
-#define MCF_DMA_TCR_HIPRITSKEN (0x40)
-#define MCF_DMA_TCR_ASTRT (0x80)
-#define MCF_DMA_TCR_INITNUM(x) (((x)&0x1F)<<0x8)
-#define MCF_DMA_TCR_ALWINIT (0x2000)
-#define MCF_DMA_TCR_V (0x4000)
-#define MCF_DMA_TCR_EN (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_PRIOR */
-#define MCF_DMA_PRIOR_PRI(x) (((x)&0x7)<<0)
-#define MCF_DMA_PRIOR_HLD (0x80)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_IMC16(x) (((x)&0x3)<<0)
-#define MCF_DMA_IMCR_IMC17(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_IMCR_IMC18(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_IMCR_IMC19(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_IMCR_IMC20(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_IMCR_IMC21(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_IMCR_IMC22(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_IMCR_IMC23(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_IMCR_IMC24(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_IMCR_IMC25(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_IMCR_IMC26(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_IMCR_IMC27(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_IMCR_IMC28(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_IMCR_IMC29(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_IMCR_IMC30(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_IMCR_IMC31(x) (((x)&0x3)<<0x1E)
-
-
-#define MCF_DMA_IMCR_IMC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_IMC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_IMC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_IMC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_IMC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_IMC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_IMC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_IMC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_IMC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_IMC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_IMC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_IMC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_IMC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_IMC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_IMC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_IMC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_IMC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_IMC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_IMC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_IMC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_IMC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_IMC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_IMC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_IMC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_IMC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_IMC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_IMC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_IMC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_IMC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_IMC31_PSC3TX (0xC0000000)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ0 */
-#define MCF_DMA_TSKSZ0_DSTSZ7(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ0_SRCSZ7(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ0_DSTSZ6(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ0_SRCSZ6(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ0_DSTSZ5(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ0_SRCSZ5(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ0_DSTSZ4(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ0_SRCSZ4(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ0_DSTSZ3(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ0_SRCSZ3(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ0_DSTSZ2(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ0_SRCSZ2(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ0_DSTSZ1(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ0_SRCSZ1(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ0_DSTSZ0(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ0_SRCSZ0(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ1 */
-#define MCF_DMA_TSKSZ1_DSTSZ15(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ1_SRCSZ15(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ1_DSTSZ14(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ1_SRCSZ14(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ1_DSTSZ13(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ1_SRCSZ13(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ1_DSTSZ12(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ1_SRCSZ12(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ1_DSTSZ11(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ1_SRCSZ11(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ1_DSTSZ10(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ1_SRCSZ10(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ1_DSTSZ9(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ1_SRCSZ9(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ1_DSTSZ8(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ1_SRCSZ8(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP0 */
-#define MCF_DMA_DBGCOMP0_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP2 */
-#define MCF_DMA_DBGCOMP2_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCTL */
-#define MCF_DMA_DBGCTL_I (0x2)
-#define MCF_DMA_DBGCTL_E (0x4)
-#define MCF_DMA_DBGCTL_AND_OR (0x80)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_2(x) (((x)&0x7)<<0x8)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_1(x) (((x)&0x7)<<0xB)
-#define MCF_DMA_DBGCTL_B (0x4000)
-#define MCF_DMA_DBGCTL_AA (0x8000)
-#define MCF_DMA_DBGCTL_BLOCK_TASKS(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_DMA_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_DSPI.h b/BaS_gcc/tos/jtagwait/include/MCF5475_DSPI.h
deleted file mode 100644
index 76cac28..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_DSPI.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DSPI_H__
-#define __MCF5475_DSPI_H__
-
-
-/*********************************************************************
-*
-* DMA Serial Peripheral Interface (DSPI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(volatile uint32_t*)(&_MBAR[0x8A00]))
-#define MCF_DSPI_DTCR (*(volatile uint32_t*)(&_MBAR[0x8A08]))
-#define MCF_DSPI_DCTAR0 (*(volatile uint32_t*)(&_MBAR[0x8A0C]))
-#define MCF_DSPI_DCTAR1 (*(volatile uint32_t*)(&_MBAR[0x8A10]))
-#define MCF_DSPI_DCTAR2 (*(volatile uint32_t*)(&_MBAR[0x8A14]))
-#define MCF_DSPI_DCTAR3 (*(volatile uint32_t*)(&_MBAR[0x8A18]))
-#define MCF_DSPI_DCTAR4 (*(volatile uint32_t*)(&_MBAR[0x8A1C]))
-#define MCF_DSPI_DCTAR5 (*(volatile uint32_t*)(&_MBAR[0x8A20]))
-#define MCF_DSPI_DCTAR6 (*(volatile uint32_t*)(&_MBAR[0x8A24]))
-#define MCF_DSPI_DCTAR7 (*(volatile uint32_t*)(&_MBAR[0x8A28]))
-#define MCF_DSPI_DSR (*(volatile uint32_t*)(&_MBAR[0x8A2C]))
-#define MCF_DSPI_DIRSR (*(volatile uint32_t*)(&_MBAR[0x8A30]))
-#define MCF_DSPI_DTFR (*(volatile uint32_t*)(&_MBAR[0x8A34]))
-#define MCF_DSPI_DRFR (*(volatile uint32_t*)(&_MBAR[0x8A38]))
-#define MCF_DSPI_DTFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A3C]))
-#define MCF_DSPI_DTFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A40]))
-#define MCF_DSPI_DTFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A44]))
-#define MCF_DSPI_DTFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A48]))
-#define MCF_DSPI_DRFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A7C]))
-#define MCF_DSPI_DRFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A80]))
-#define MCF_DSPI_DRFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A84]))
-#define MCF_DSPI_DRFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A88]))
-#define MCF_DSPI_DCTAR(x) (*(volatile uint32_t*)(&_MBAR[0x8A0C + ((x)*0x4)]))
-#define MCF_DSPI_DTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A3C + ((x)*0x4)]))
-#define MCF_DSPI_DRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A7C + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x1)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x3)<<0x8)
-#define MCF_DSPI_DMCR_SMPL_PT_0CLK (0)
-#define MCF_DSPI_DMCR_SMPL_PT_1CLK (0x100)
-#define MCF_DSPI_DMCR_SMPL_PT_2CLK (0x200)
-#define MCF_DSPI_DMCR_CRXF (0x400)
-#define MCF_DSPI_DMCR_CTXF (0x800)
-#define MCF_DSPI_DMCR_DRXF (0x1000)
-#define MCF_DSPI_DMCR_DTXF (0x2000)
-#define MCF_DSPI_DMCR_CSIS0 (0x10000)
-#define MCF_DSPI_DMCR_CSIS2 (0x40000)
-#define MCF_DSPI_DMCR_CSIS3 (0x80000)
-#define MCF_DSPI_DMCR_CSIS5 (0x200000)
-#define MCF_DSPI_DMCR_ROOE (0x1000000)
-#define MCF_DSPI_DMCR_PCSSE (0x2000000)
-#define MCF_DSPI_DMCR_MTFE (0x4000000)
-#define MCF_DSPI_DMCR_FRZ (0x8000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x3)<<0x1C)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DCTAR */
-#define MCF_DSPI_DCTAR_BR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DCTAR_DT(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DCTAR_ASC(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DCTAR_CSSCK(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DCTAR_PBR(x) (((x)&0x3)<<0x10)
-#define MCF_DSPI_DCTAR_PBR_1CLK (0)
-#define MCF_DSPI_DCTAR_PBR_3CLK (0x10000)
-#define MCF_DSPI_DCTAR_PBR_5CLK (0x20000)
-#define MCF_DSPI_DCTAR_PBR_7CLK (0x30000)
-#define MCF_DSPI_DCTAR_PDT(x) (((x)&0x3)<<0x12)
-#define MCF_DSPI_DCTAR_PDT_1CLK (0)
-#define MCF_DSPI_DCTAR_PDT_3CLK (0x40000)
-#define MCF_DSPI_DCTAR_PDT_5CLK (0x80000)
-#define MCF_DSPI_DCTAR_PDT_7CLK (0xC0000)
-#define MCF_DSPI_DCTAR_PASC(x) (((x)&0x3)<<0x14)
-#define MCF_DSPI_DCTAR_PASC_1CLK (0)
-#define MCF_DSPI_DCTAR_PASC_3CLK (0x100000)
-#define MCF_DSPI_DCTAR_PASC_5CLK (0x200000)
-#define MCF_DSPI_DCTAR_PASC_7CLK (0x300000)
-#define MCF_DSPI_DCTAR_PCSSCK(x) (((x)&0x3)<<0x16)
-#define MCF_DSPI_DCTAR_LSBFE (0x1000000)
-#define MCF_DSPI_DCTAR_CPHA (0x2000000)
-#define MCF_DSPI_DCTAR_CPOL (0x4000000)
-#define MCF_DSPI_DCTAR_TRSZ(x) (((x)&0xF)<<0x1B)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DSR_RFDF (0x20000)
-#define MCF_DSPI_DSR_RFOF (0x80000)
-#define MCF_DSPI_DSR_TFFF (0x2000000)
-#define MCF_DSPI_DSR_TFUF (0x8000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x10000)
-#define MCF_DSPI_DIRSR_RFDFE (0x20000)
-#define MCF_DSPI_DIRSR_RFOFE (0x80000)
-#define MCF_DSPI_DIRSR_TFFFS (0x1000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x2000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x8000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x10000)
-#define MCF_DSPI_DTFR_CS2 (0x40000)
-#define MCF_DSPI_DTFR_CS3 (0x80000)
-#define MCF_DSPI_DTFR_CS5 (0x200000)
-#define MCF_DSPI_DTFR_CTCNT (0x4000000)
-#define MCF_DSPI_DTFR_EOQ (0x8000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x7)<<0x1C)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDR */
-#define MCF_DSPI_DTFDR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFDR_TXCMD(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDR */
-#define MCF_DSPI_DRFDR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-
-#endif /* __MCF5475_DSPI_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_EPORT.h b/BaS_gcc/tos/jtagwait/include/MCF5475_EPORT.h
deleted file mode 100644
index 6506196..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_EPORT.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_EPORT_H__
-#define __MCF5475_EPORT_H__
-
-
-/*********************************************************************
-*
-* Edge Port Module (EPORT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(volatile uint16_t*)(&_MBAR[0xF00]))
-#define MCF_EPORT_EPDDR (*(volatile uint8_t *)(&_MBAR[0xF04]))
-#define MCF_EPORT_EPIER (*(volatile uint8_t *)(&_MBAR[0xF05]))
-#define MCF_EPORT_EPDR (*(volatile uint8_t *)(&_MBAR[0xF08]))
-#define MCF_EPORT_EPPDR (*(volatile uint8_t *)(&_MBAR[0xF09]))
-#define MCF_EPORT_EPFR (*(volatile uint8_t *)(&_MBAR[0xF0C]))
-
-
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x3)<<0x2)
-#define MCF_EPORT_EPPAR_EPPA1_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA1_RISING (0x4)
-#define MCF_EPORT_EPPAR_EPPA1_FALLING (0x8)
-#define MCF_EPORT_EPPAR_EPPA1_BOTH (0xC)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x3)<<0x4)
-#define MCF_EPORT_EPPAR_EPPA2_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA2_RISING (0x10)
-#define MCF_EPORT_EPPAR_EPPA2_FALLING (0x20)
-#define MCF_EPORT_EPPAR_EPPA2_BOTH (0x30)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x3)<<0x6)
-#define MCF_EPORT_EPPAR_EPPA3_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA3_RISING (0x40)
-#define MCF_EPORT_EPPAR_EPPA3_FALLING (0x80)
-#define MCF_EPORT_EPPAR_EPPA3_BOTH (0xC0)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x3)<<0x8)
-#define MCF_EPORT_EPPAR_EPPA4_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA4_RISING (0x100)
-#define MCF_EPORT_EPPAR_EPPA4_FALLING (0x200)
-#define MCF_EPORT_EPPAR_EPPA4_BOTH (0x300)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x3)<<0xA)
-#define MCF_EPORT_EPPAR_EPPA5_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA5_RISING (0x400)
-#define MCF_EPORT_EPPAR_EPPA5_FALLING (0x800)
-#define MCF_EPORT_EPPAR_EPPA5_BOTH (0xC00)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x3)<<0xC)
-#define MCF_EPORT_EPPAR_EPPA6_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA6_RISING (0x1000)
-#define MCF_EPORT_EPPAR_EPPA6_FALLING (0x2000)
-#define MCF_EPORT_EPPAR_EPPA6_BOTH (0x3000)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x3)<<0xE)
-#define MCF_EPORT_EPPAR_EPPA7_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA7_RISING (0x4000)
-#define MCF_EPORT_EPPAR_EPPA7_FALLING (0x8000)
-#define MCF_EPORT_EPPAR_EPPA7_BOTH (0xC000)
-#define MCF_EPORT_EPPAR_LEVEL (0)
-#define MCF_EPORT_EPPAR_RISING (0x1)
-#define MCF_EPORT_EPPAR_FALLING (0x2)
-#define MCF_EPORT_EPPAR_BOTH (0x3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x2)
-#define MCF_EPORT_EPDDR_EPDD2 (0x4)
-#define MCF_EPORT_EPDDR_EPDD3 (0x8)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x2)
-#define MCF_EPORT_EPIER_EPIE2 (0x4)
-#define MCF_EPORT_EPIER_EPIE3 (0x8)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x2)
-#define MCF_EPORT_EPDR_EPD2 (0x4)
-#define MCF_EPORT_EPDR_EPD3 (0x8)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x2)
-#define MCF_EPORT_EPPDR_EPPD2 (0x4)
-#define MCF_EPORT_EPPDR_EPPD3 (0x8)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x2)
-#define MCF_EPORT_EPFR_EPF2 (0x4)
-#define MCF_EPORT_EPFR_EPF3 (0x8)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-
-#endif /* __MCF5475_EPORT_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_FBCS.h b/BaS_gcc/tos/jtagwait/include/MCF5475_FBCS.h
deleted file mode 100644
index 37daf00..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_FBCS.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FBCS_H__
-#define __MCF5475_FBCS_H__
-
-
-/*********************************************************************
-*
-* FlexBus Chip Select Module (FBCS)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FBCS0_CSAR (*(volatile uint32_t*)(&_MBAR[0x500]))
-#define MCF_FBCS0_CSMR (*(volatile uint32_t*)(&_MBAR[0x504]))
-#define MCF_FBCS0_CSCR (*(volatile uint32_t*)(&_MBAR[0x508]))
-
-#define MCF_FBCS1_CSAR (*(volatile uint32_t*)(&_MBAR[0x50C]))
-#define MCF_FBCS1_CSMR (*(volatile uint32_t*)(&_MBAR[0x510]))
-#define MCF_FBCS1_CSCR (*(volatile uint32_t*)(&_MBAR[0x514]))
-
-#define MCF_FBCS2_CSAR (*(volatile uint32_t*)(&_MBAR[0x518]))
-#define MCF_FBCS2_CSMR (*(volatile uint32_t*)(&_MBAR[0x51C]))
-#define MCF_FBCS2_CSCR (*(volatile uint32_t*)(&_MBAR[0x520]))
-
-#define MCF_FBCS3_CSAR (*(volatile uint32_t*)(&_MBAR[0x524]))
-#define MCF_FBCS3_CSMR (*(volatile uint32_t*)(&_MBAR[0x528]))
-#define MCF_FBCS3_CSCR (*(volatile uint32_t*)(&_MBAR[0x52C]))
-
-#define MCF_FBCS4_CSAR (*(volatile uint32_t*)(&_MBAR[0x530]))
-#define MCF_FBCS4_CSMR (*(volatile uint32_t*)(&_MBAR[0x534]))
-#define MCF_FBCS4_CSCR (*(volatile uint32_t*)(&_MBAR[0x538]))
-
-#define MCF_FBCS5_CSAR (*(volatile uint32_t*)(&_MBAR[0x53C]))
-#define MCF_FBCS5_CSMR (*(volatile uint32_t*)(&_MBAR[0x540]))
-#define MCF_FBCS5_CSCR (*(volatile uint32_t*)(&_MBAR[0x544]))
-
-#define MCF_FBCS_CSAR(x) (*(volatile uint32_t*)(&_MBAR[0x500 + ((x)*0xC)]))
-#define MCF_FBCS_CSMR(x) (*(volatile uint32_t*)(&_MBAR[0x504 + ((x)*0xC)]))
-#define MCF_FBCS_CSCR(x) (*(volatile uint32_t*)(&_MBAR[0x508 + ((x)*0xC)]))
-
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x1)
-#define MCF_FBCS_CSMR_WP (0x100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0xFFFF)<<0x10)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0xFFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x7FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x3FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x1FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0xFF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x7F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x3F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x1F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0xF0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0xF0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x70000)
-#define MCF_FBCS_CSMR_BAM_256K (0x30000)
-#define MCF_FBCS_CSMR_BAM_128K (0x10000)
-#define MCF_FBCS_CSMR_BAM_64K (0)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x8)
-#define MCF_FBCS_CSCR_BSTR (0x10)
-#define MCF_FBCS_CSCR_BEM (0x20)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x3)<<0x6)
-#define MCF_FBCS_CSCR_PS_32 (0)
-#define MCF_FBCS_CSCR_PS_8 (0x40)
-#define MCF_FBCS_CSCR_PS_16 (0x80)
-#define MCF_FBCS_CSCR_AA (0x100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x3F)<<0xA)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x3)<<0x10)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x3)<<0x12)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x3)<<0x14)
-#define MCF_FBCS_CSCR_SWSEN (0x800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x3F)<<0x1A)
-
-
-#endif /* __MCF5475_FBCS_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_FEC.h b/BaS_gcc/tos/jtagwait/include/MCF5475_FEC.h
deleted file mode 100644
index fdd9403..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_FEC.h
+++ /dev/null
@@ -1,680 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FEC_H__
-#define __MCF5475_FEC_H__
-
-
-/*********************************************************************
-*
-* Fast Ethernet Controller(FEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FEC0_EIR (*(volatile uint32_t*)(&_MBAR[0x9004]))
-#define MCF_FEC0_EIMR (*(volatile uint32_t*)(&_MBAR[0x9008]))
-#define MCF_FEC0_ECR (*(volatile uint32_t*)(&_MBAR[0x9024]))
-#define MCF_FEC0_MMFR (*(volatile uint32_t*)(&_MBAR[0x9040]))
-#define MCF_FEC0_MSCR (*(volatile uint32_t*)(&_MBAR[0x9044]))
-#define MCF_FEC0_MIBC (*(volatile uint32_t*)(&_MBAR[0x9064]))
-#define MCF_FEC0_RCR (*(volatile uint32_t*)(&_MBAR[0x9084]))
-#define MCF_FEC0_RHR (*(volatile uint32_t*)(&_MBAR[0x9088]))
-#define MCF_FEC0_TCR (*(volatile uint32_t*)(&_MBAR[0x90C4]))
-#define MCF_FEC0_PALR (*(volatile uint32_t*)(&_MBAR[0x90E4]))
-#define MCF_FEC0_PAHR (*(volatile uint32_t*)(&_MBAR[0x90E8]))
-#define MCF_FEC0_OPD (*(volatile uint32_t*)(&_MBAR[0x90EC]))
-#define MCF_FEC0_IAUR (*(volatile uint32_t*)(&_MBAR[0x9118]))
-#define MCF_FEC0_IALR (*(volatile uint32_t*)(&_MBAR[0x911C]))
-#define MCF_FEC0_GAUR (*(volatile uint32_t*)(&_MBAR[0x9120]))
-#define MCF_FEC0_GALR (*(volatile uint32_t*)(&_MBAR[0x9124]))
-#define MCF_FEC0_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9144]))
-#define MCF_FEC0_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9184]))
-#define MCF_FEC0_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9188]))
-#define MCF_FEC0_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x918C]))
-#define MCF_FEC0_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9190]))
-#define MCF_FEC0_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9194]))
-#define MCF_FEC0_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9198]))
-#define MCF_FEC0_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x919C]))
-#define MCF_FEC0_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x91A0]))
-#define MCF_FEC0_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x91A4]))
-#define MCF_FEC0_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x91A8]))
-#define MCF_FEC0_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x91AC]))
-#define MCF_FEC0_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x91B0]))
-#define MCF_FEC0_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x91B4]))
-#define MCF_FEC0_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x91B8]))
-#define MCF_FEC0_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x91BC]))
-#define MCF_FEC0_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x91C0]))
-#define MCF_FEC0_FECFRST (*(volatile uint32_t*)(&_MBAR[0x91C4]))
-#define MCF_FEC0_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x91C8]))
-#define MCF_FEC0_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9200]))
-#define MCF_FEC0_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9204]))
-#define MCF_FEC0_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9208]))
-#define MCF_FEC0_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x920C]))
-#define MCF_FEC0_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9210]))
-#define MCF_FEC0_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9214]))
-#define MCF_FEC0_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9218]))
-#define MCF_FEC0_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x921C]))
-#define MCF_FEC0_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9220]))
-#define MCF_FEC0_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9224]))
-#define MCF_FEC0_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9228]))
-#define MCF_FEC0_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x922C]))
-#define MCF_FEC0_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9230]))
-#define MCF_FEC0_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9234]))
-#define MCF_FEC0_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9238]))
-#define MCF_FEC0_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x923C]))
-#define MCF_FEC0_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9240]))
-#define MCF_FEC0_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9244]))
-#define MCF_FEC0_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9248]))
-#define MCF_FEC0_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x924C]))
-#define MCF_FEC0_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9250]))
-#define MCF_FEC0_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9254]))
-#define MCF_FEC0_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9258]))
-#define MCF_FEC0_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x925C]))
-#define MCF_FEC0_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9260]))
-#define MCF_FEC0_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9264]))
-#define MCF_FEC0_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9268]))
-#define MCF_FEC0_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x926C]))
-#define MCF_FEC0_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9270]))
-#define MCF_FEC0_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9274]))
-#define MCF_FEC0_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9280]))
-#define MCF_FEC0_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9284]))
-#define MCF_FEC0_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9288]))
-#define MCF_FEC0_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x928C]))
-#define MCF_FEC0_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9290]))
-#define MCF_FEC0_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9294]))
-#define MCF_FEC0_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9298]))
-#define MCF_FEC0_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x929C]))
-#define MCF_FEC0_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x92A0]))
-#define MCF_FEC0_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x92A4]))
-#define MCF_FEC0_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x92A8]))
-#define MCF_FEC0_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x92AC]))
-#define MCF_FEC0_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x92B0]))
-#define MCF_FEC0_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x92B4]))
-#define MCF_FEC0_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x92B8]))
-#define MCF_FEC0_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x92BC]))
-#define MCF_FEC0_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x92C0]))
-#define MCF_FEC0_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x92C4]))
-#define MCF_FEC0_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x92C8]))
-#define MCF_FEC0_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x92CC]))
-#define MCF_FEC0_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x92D0]))
-#define MCF_FEC0_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x92D4]))
-#define MCF_FEC0_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x92D8]))
-#define MCF_FEC0_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x92DC]))
-#define MCF_FEC0_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x92E0]))
-
-#define MCF_FEC1_EIR (*(volatile uint32_t*)(&_MBAR[0x9804]))
-#define MCF_FEC1_EIMR (*(volatile uint32_t*)(&_MBAR[0x9808]))
-#define MCF_FEC1_ECR (*(volatile uint32_t*)(&_MBAR[0x9824]))
-#define MCF_FEC1_MMFR (*(volatile uint32_t*)(&_MBAR[0x9840]))
-#define MCF_FEC1_MSCR (*(volatile uint32_t*)(&_MBAR[0x9844]))
-#define MCF_FEC1_MIBC (*(volatile uint32_t*)(&_MBAR[0x9864]))
-#define MCF_FEC1_RCR (*(volatile uint32_t*)(&_MBAR[0x9884]))
-#define MCF_FEC1_RHR (*(volatile uint32_t*)(&_MBAR[0x9888]))
-#define MCF_FEC1_TCR (*(volatile uint32_t*)(&_MBAR[0x98C4]))
-#define MCF_FEC1_PALR (*(volatile uint32_t*)(&_MBAR[0x98E4]))
-#define MCF_FEC1_PAHR (*(volatile uint32_t*)(&_MBAR[0x98E8]))
-#define MCF_FEC1_OPD (*(volatile uint32_t*)(&_MBAR[0x98EC]))
-#define MCF_FEC1_IAUR (*(volatile uint32_t*)(&_MBAR[0x9918]))
-#define MCF_FEC1_IALR (*(volatile uint32_t*)(&_MBAR[0x991C]))
-#define MCF_FEC1_GAUR (*(volatile uint32_t*)(&_MBAR[0x9920]))
-#define MCF_FEC1_GALR (*(volatile uint32_t*)(&_MBAR[0x9924]))
-#define MCF_FEC1_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9944]))
-#define MCF_FEC1_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9984]))
-#define MCF_FEC1_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9988]))
-#define MCF_FEC1_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x998C]))
-#define MCF_FEC1_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9990]))
-#define MCF_FEC1_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9994]))
-#define MCF_FEC1_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9998]))
-#define MCF_FEC1_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x999C]))
-#define MCF_FEC1_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x99A0]))
-#define MCF_FEC1_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x99A4]))
-#define MCF_FEC1_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x99A8]))
-#define MCF_FEC1_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x99AC]))
-#define MCF_FEC1_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x99B0]))
-#define MCF_FEC1_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x99B4]))
-#define MCF_FEC1_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x99B8]))
-#define MCF_FEC1_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x99BC]))
-#define MCF_FEC1_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x99C0]))
-#define MCF_FEC1_FECFRST (*(volatile uint32_t*)(&_MBAR[0x99C4]))
-#define MCF_FEC1_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x99C8]))
-#define MCF_FEC1_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A00]))
-#define MCF_FEC1_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A04]))
-#define MCF_FEC1_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A08]))
-#define MCF_FEC1_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A0C]))
-#define MCF_FEC1_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A10]))
-#define MCF_FEC1_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A14]))
-#define MCF_FEC1_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A18]))
-#define MCF_FEC1_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A1C]))
-#define MCF_FEC1_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9A20]))
-#define MCF_FEC1_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9A24]))
-#define MCF_FEC1_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9A28]))
-#define MCF_FEC1_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9A2C]))
-#define MCF_FEC1_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9A30]))
-#define MCF_FEC1_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9A34]))
-#define MCF_FEC1_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9A38]))
-#define MCF_FEC1_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9A3C]))
-#define MCF_FEC1_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9A40]))
-#define MCF_FEC1_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9A44]))
-#define MCF_FEC1_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A48]))
-#define MCF_FEC1_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9A4C]))
-#define MCF_FEC1_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9A50]))
-#define MCF_FEC1_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9A54]))
-#define MCF_FEC1_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9A58]))
-#define MCF_FEC1_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x9A5C]))
-#define MCF_FEC1_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9A60]))
-#define MCF_FEC1_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9A64]))
-#define MCF_FEC1_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9A68]))
-#define MCF_FEC1_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x9A6C]))
-#define MCF_FEC1_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9A70]))
-#define MCF_FEC1_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9A74]))
-#define MCF_FEC1_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9A80]))
-#define MCF_FEC1_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A84]))
-#define MCF_FEC1_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A88]))
-#define MCF_FEC1_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A8C]))
-#define MCF_FEC1_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A90]))
-#define MCF_FEC1_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A94]))
-#define MCF_FEC1_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A98]))
-#define MCF_FEC1_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A9C]))
-#define MCF_FEC1_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x9AA0]))
-#define MCF_FEC1_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x9AA4]))
-#define MCF_FEC1_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x9AA8]))
-#define MCF_FEC1_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9AAC]))
-#define MCF_FEC1_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9AB0]))
-#define MCF_FEC1_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9AB4]))
-#define MCF_FEC1_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9AB8]))
-#define MCF_FEC1_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9ABC]))
-#define MCF_FEC1_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9AC0]))
-#define MCF_FEC1_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9AC4]))
-#define MCF_FEC1_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9AC8]))
-#define MCF_FEC1_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9ACC]))
-#define MCF_FEC1_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x9AD0]))
-#define MCF_FEC1_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9AD4]))
-#define MCF_FEC1_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x9AD8]))
-#define MCF_FEC1_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9ADC]))
-#define MCF_FEC1_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9AE0]))
-
-#define MCF_FEC_EIR(x) (*(volatile uint32_t*)(&_MBAR[0x9004 + ((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(volatile uint32_t*)(&_MBAR[0x9008 + ((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(volatile uint32_t*)(&_MBAR[0x9024 + ((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(volatile uint32_t*)(&_MBAR[0x9040 + ((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(volatile uint32_t*)(&_MBAR[0x9044 + ((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(volatile uint32_t*)(&_MBAR[0x9064 + ((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(volatile uint32_t*)(&_MBAR[0x9084 + ((x)*0x800)]))
-#define MCF_FEC_RHR(x) (*(volatile uint32_t*)(&_MBAR[0x9088 + ((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(volatile uint32_t*)(&_MBAR[0x90C4 + ((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(volatile uint32_t*)(&_MBAR[0x90E4 + ((x)*0x800)]))
-#define MCF_FEC_PAHR(x) (*(volatile uint32_t*)(&_MBAR[0x90E8 + ((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(volatile uint32_t*)(&_MBAR[0x90EC + ((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9118 + ((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(volatile uint32_t*)(&_MBAR[0x911C + ((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9120 + ((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(volatile uint32_t*)(&_MBAR[0x9124 + ((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(volatile uint32_t*)(&_MBAR[0x9144 + ((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x9184 + ((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(volatile uint32_t*)(&_MBAR[0x9188 + ((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x918C + ((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x9190 + ((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x9194 + ((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(volatile uint32_t*)(&_MBAR[0x9198 + ((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(volatile uint32_t*)(&_MBAR[0x919C + ((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91A0 + ((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x91A4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(volatile uint32_t*)(&_MBAR[0x91A8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x91AC + ((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B0 + ((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(volatile uint32_t*)(&_MBAR[0x91B8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(volatile uint32_t*)(&_MBAR[0x91BC + ((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91C0 + ((x)*0x800)]))
-#define MCF_FEC_FECFRST(x) (*(volatile uint32_t*)(&_MBAR[0x91C4 + ((x)*0x800)]))
-#define MCF_FEC_FECCTCWR(x) (*(volatile uint32_t*)(&_MBAR[0x91C8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9200 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9204 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9208 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x920C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9210 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9214 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9218 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x921C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x9220 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(volatile uint32_t*)(&_MBAR[0x9224 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(volatile uint32_t*)(&_MBAR[0x9228 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x922C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x9230 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x9234 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x9238 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x923C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x9240 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x9244 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9248 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x924C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(volatile uint32_t*)(&_MBAR[0x9250 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9254 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(volatile uint32_t*)(&_MBAR[0x9258 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(volatile uint32_t*)(&_MBAR[0x925C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9260 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x9264 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(volatile uint32_t*)(&_MBAR[0x9268 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(volatile uint32_t*)(&_MBAR[0x926C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x9270 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x9274 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9280 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9284 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9288 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x928C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9290 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9294 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9298 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x929C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x92A0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(volatile uint32_t*)(&_MBAR[0x92A4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(volatile uint32_t*)(&_MBAR[0x92A8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x92AC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x92B0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x92B4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x92B8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x92BC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x92C0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x92C4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x92C8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92CC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(volatile uint32_t*)(&_MBAR[0x92D0 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x92D4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x92D8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x92DC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92E0 + ((x)*0x800)]))
-
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x20000)
-#define MCF_FEC_EIR_XFERR (0x40000)
-#define MCF_FEC_EIR_XFUN (0x80000)
-#define MCF_FEC_EIR_RL (0x100000)
-#define MCF_FEC_EIR_LC (0x200000)
-#define MCF_FEC_EIR_MII (0x800000)
-#define MCF_FEC_EIR_TXF (0x8000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x20000)
-#define MCF_FEC_EIMR_XFERR (0x40000)
-#define MCF_FEC_EIMR_XFUN (0x80000)
-#define MCF_FEC_EIMR_RL (0x100000)
-#define MCF_FEC_EIMR_LC (0x200000)
-#define MCF_FEC_EIMR_MII (0x800000)
-#define MCF_FEC_EIMR_TXF (0x8000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x1)
-#define MCF_FEC_ECR_ETHER_EN (0x2)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x3)<<0x10)
-#define MCF_FEC_MMFR_TA_10 (0x20000)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x1F)<<0x12)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x1F)<<0x17)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x3)<<0x1C)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x3)<<0x1E)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x3F)<<0x1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x80)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<0x1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x1)
-#define MCF_FEC_RCR_DRT (0x2)
-#define MCF_FEC_RCR_MII_MODE (0x4)
-#define MCF_FEC_RCR_PROM (0x8)
-#define MCF_FEC_RCR_BC_REJ (0x10)
-#define MCF_FEC_RCR_FCE (0x20)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x7FF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_RHR */
-#define MCF_FEC_RHR_HASH(x) (((x)&0x3F)<<0x18)
-#define MCF_FEC_RHR_MULTCAST (0x40000000)
-#define MCF_FEC_RHR_FCE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x1)
-#define MCF_FEC_TCR_HBC (0x2)
-#define MCF_FEC_TCR_FDEN (0x4)
-#define MCF_FEC_TCR_TFC_PAUSE (0x8)
-#define MCF_FEC_TCR_RFC_PAUSE (0x10)
-
-/* Bit definitions and macros for MCF_FEC_PALR */
-#define MCF_FEC_PALR_PADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_PAHR */
-#define MCF_FEC_PAHR_TYPE(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_PAHR_PADDR2(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_PAUSE_DUR(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_IAUR */
-#define MCF_FEC_IAUR_IADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IALR */
-#define MCF_FEC_IALR_IADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GAUR */
-#define MCF_FEC_GAUR_GADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GALR */
-#define MCF_FEC_GALR_GADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0xF)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x1)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x2)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x3)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x4)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x5)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x6)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x7)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x8)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x9)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0xA)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0xB)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0xC)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0xD)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0xE)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0xF)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x10000)
-#define MCF_FEC_FECRFSR_ALARM (0x20000)
-#define MCF_FEC_FECRFSR_FU (0x40000)
-#define MCF_FEC_FECRFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECRFSR_OF (0x100000)
-#define MCF_FEC_FECRFSR_UF (0x200000)
-#define MCF_FEC_FECRFSR_RXW (0x400000)
-#define MCF_FEC_FECRFSR_FAE (0x800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x80000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_FEC_FECRFCR_FRMEN (0x8000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x10000)
-#define MCF_FEC_FECTFSR_ALARM (0x20000)
-#define MCF_FEC_FECTFSR_FU (0x40000)
-#define MCF_FEC_FECTFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECTFSR_OF (0x100000)
-#define MCF_FEC_FECTFSR_UF (0x200000)
-#define MCF_FEC_FECTFSR_FAE (0x800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0xFFFF)<<0|0x200000)
-#define MCF_FEC_FECTFCR_TXW_MASK (0x240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0xA00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x7)<<0x18|0x200000)
-#define MCF_FEC_FECTFCR_FRMEN (0x8200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECFRST */
-#define MCF_FEC_FECFRST_RST_CTL (0x1000000)
-#define MCF_FEC_FECFRST_SW_RST (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_FECCTCWR */
-#define MCF_FEC_FECCTCWR_TFCW (0x1000000)
-#define MCF_FEC_FECCTCWR_CRC (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_DROP */
-#define MCF_FEC_RMON_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_PACKETS */
-#define MCF_FEC_RMON_T_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_BC_PKT */
-#define MCF_FEC_RMON_T_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_MC_PKT */
-#define MCF_FEC_RMON_T_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_CRC_ALIGN */
-#define MCF_FEC_RMON_T_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_UNDERSIZE */
-#define MCF_FEC_RMON_T_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OVERSIZE */
-#define MCF_FEC_RMON_T_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_FRAG */
-#define MCF_FEC_RMON_T_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_JAB */
-#define MCF_FEC_RMON_T_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_COL */
-#define MCF_FEC_RMON_T_COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P64 */
-#define MCF_FEC_RMON_T_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P65TO127 */
-#define MCF_FEC_RMON_T_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P128TO255 */
-#define MCF_FEC_RMON_T_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P256TO511 */
-#define MCF_FEC_RMON_T_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P512TO1023 */
-#define MCF_FEC_RMON_T_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P1024TO2047 */
-#define MCF_FEC_RMON_T_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P_GTE2048 */
-#define MCF_FEC_RMON_T_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OCTETS */
-#define MCF_FEC_RMON_T_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DROP */
-#define MCF_FEC_IEEE_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FRAME_OK */
-#define MCF_FEC_IEEE_T_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_1COL */
-#define MCF_FEC_IEEE_T_1COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MCOL */
-#define MCF_FEC_IEEE_T_MCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DEF */
-#define MCF_FEC_IEEE_T_DEF_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_LCOL */
-#define MCF_FEC_IEEE_T_LCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_EXCOL */
-#define MCF_FEC_IEEE_T_EXCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MACERR */
-#define MCF_FEC_IEEE_T_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_CSERR */
-#define MCF_FEC_IEEE_T_CSERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_SQE */
-#define MCF_FEC_IEEE_T_SQE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FDXFC */
-#define MCF_FEC_IEEE_T_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_OCTETS_OK */
-#define MCF_FEC_IEEE_T_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_DROP */
-#define MCF_FEC_RMON_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_PACKETS */
-#define MCF_FEC_RMON_R_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_BC_PKT */
-#define MCF_FEC_RMON_R_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_MC_PKT */
-#define MCF_FEC_RMON_R_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_CRC_ALIGN */
-#define MCF_FEC_RMON_R_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_UNDERSIZE */
-#define MCF_FEC_RMON_R_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OVERSIZE */
-#define MCF_FEC_RMON_R_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_FRAG */
-#define MCF_FEC_RMON_R_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_JAB */
-#define MCF_FEC_RMON_R_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_RESVD_0 */
-#define MCF_FEC_RMON_R_RESVD_0_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P64 */
-#define MCF_FEC_RMON_R_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P65TO127 */
-#define MCF_FEC_RMON_R_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P128TO255 */
-#define MCF_FEC_RMON_R_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P256TO511 */
-#define MCF_FEC_RMON_R_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P512TO1023 */
-#define MCF_FEC_RMON_R_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P1024TO2047 */
-#define MCF_FEC_RMON_R_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P_GTE2048 */
-#define MCF_FEC_RMON_R_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OCTETS */
-#define MCF_FEC_RMON_R_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_DROP */
-#define MCF_FEC_IEEE_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FRAME_OK */
-#define MCF_FEC_IEEE_R_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_CRC */
-#define MCF_FEC_IEEE_R_CRC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_ALIGN */
-#define MCF_FEC_IEEE_R_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_MACERR */
-#define MCF_FEC_IEEE_R_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FDXFC */
-#define MCF_FEC_IEEE_R_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_OCTETS_OK */
-#define MCF_FEC_IEEE_R_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-
-#endif /* __MCF5475_FEC_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_GPIO.h b/BaS_gcc/tos/jtagwait/include/MCF5475_GPIO.h
deleted file mode 100644
index 5dd2583..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_GPIO.h
+++ /dev/null
@@ -1,543 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPIO_H__
-#define __MCF5475_GPIO_H__
-
-
-/*********************************************************************
-*
-* General Purpose I/O (GPIO)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA00]))
-#define MCF_GPIO_PDDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA10]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA20]))
-#define MCF_GPIO_PCLRR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA30]))
-
-#define MCF_GPIO_PODR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA01]))
-#define MCF_GPIO_PDDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA11]))
-#define MCF_GPIO_PPDSDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA21]))
-#define MCF_GPIO_PCLRR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA31]))
-
-#define MCF_GPIO_PODR_DMA (*(volatile uint8_t *)(&_MBAR[0xA02]))
-#define MCF_GPIO_PDDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA12]))
-#define MCF_GPIO_PPDSDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA22]))
-#define MCF_GPIO_PCLRR_DMA (*(volatile uint8_t *)(&_MBAR[0xA32]))
-
-#define MCF_GPIO_PODR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA04]))
-#define MCF_GPIO_PDDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA14]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA24]))
-#define MCF_GPIO_PCLRR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA34]))
-
-#define MCF_GPIO_PODR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA05]))
-#define MCF_GPIO_PDDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA15]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA25]))
-#define MCF_GPIO_PCLRR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA35]))
-
-#define MCF_GPIO_PODR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA06]))
-#define MCF_GPIO_PDDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA16]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA26]))
-#define MCF_GPIO_PCLRR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA36]))
-
-#define MCF_GPIO_PODR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA07]))
-#define MCF_GPIO_PDDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA17]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA27]))
-#define MCF_GPIO_PCLRR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA37]))
-
-#define MCF_GPIO_PODR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA08]))
-#define MCF_GPIO_PDDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA18]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA28]))
-#define MCF_GPIO_PCLRR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA38]))
-
-#define MCF_GPIO_PODR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA09]))
-#define MCF_GPIO_PDDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA19]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA29]))
-#define MCF_GPIO_PCLRR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA39]))
-
-#define MCF_GPIO_PODR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA0A]))
-#define MCF_GPIO_PDDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA1A]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA2A]))
-#define MCF_GPIO_PCLRR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA3A]))
-
-#define MCF_GPIO2_PODR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA0C]))
-#define MCF_GPIO2_PDDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA1C]))
-#define MCF_GPIO2_PPDSDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define MCF_GPIO2_PCLRR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA3C]))
-
-#define MCF_GPIO0_PODR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA0D]))
-#define MCF_GPIO0_PDDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA1D]))
-#define MCF_GPIO0_PPDSDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA2D]))
-#define MCF_GPIO0_PCLRR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA3D]))
-
-#define MCF_GPIO_PODR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA0E]))
-#define MCF_GPIO_PDDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA1E]))
-#define MCF_GPIO_PPDSDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA2E]))
-#define MCF_GPIO_PCLRR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA3E]))
-
-
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x1)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x2)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x4)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x8)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x1)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x2)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x4)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x8)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x1)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x1)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x2)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x4)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x8)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x2)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x4)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x8)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x2)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x4)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x8)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x2)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x4)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x8)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x1)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x2)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x4)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x1)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x2)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x4)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x1)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x2)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x4)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x1)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x2)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x4)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x1)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x2)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x4)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x8)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x1)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x2)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x4)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x8)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x1)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x2)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x4)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x8)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x1)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x2)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x4)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x8)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x1)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x2)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x4)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x8)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x1)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x2)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x4)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x8)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x1)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x2)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x4)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x8)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x1)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x2)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x4)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x8)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x1)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x2)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x4)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x1)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x2)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x4)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x1)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x2)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x4)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x1)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x2)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C2 (0x4)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x1)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x2)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x4)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x8)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x1)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x2)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x4)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x8)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x1)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x2)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x4)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x8)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x1)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x2)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x4)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x8)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC */
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC */
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC */
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC */
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC */
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC */
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC */
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC */
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x1)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x2)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x4)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x8)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x1)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x2)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x4)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x8)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x1)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x2)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x4)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x8)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x1)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x2)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x4)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x8)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-
-#endif /* __MCF5475_GPIO_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_GPT.h b/BaS_gcc/tos/jtagwait/include/MCF5475_GPT.h
deleted file mode 100644
index f9fbc98..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_GPT.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPT_H__
-#define __MCF5475_GPT_H__
-
-
-/*********************************************************************
-*
-* General Purpose Timers (GPT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPT0_GMS (*(volatile uint32_t*)(&_MBAR[0x800]))
-#define MCF_GPT0_GCIR (*(volatile uint32_t*)(&_MBAR[0x804]))
-#define MCF_GPT0_GPWM (*(volatile uint32_t*)(&_MBAR[0x808]))
-#define MCF_GPT0_GSR (*(volatile uint32_t*)(&_MBAR[0x80C]))
-
-#define MCF_GPT1_GMS (*(volatile uint32_t*)(&_MBAR[0x810]))
-#define MCF_GPT1_GCIR (*(volatile uint32_t*)(&_MBAR[0x814]))
-#define MCF_GPT1_GPWM (*(volatile uint32_t*)(&_MBAR[0x818]))
-#define MCF_GPT1_GSR (*(volatile uint32_t*)(&_MBAR[0x81C]))
-
-#define MCF_GPT2_GMS (*(volatile uint32_t*)(&_MBAR[0x820]))
-#define MCF_GPT2_GCIR (*(volatile uint32_t*)(&_MBAR[0x824]))
-#define MCF_GPT2_GPWM (*(volatile uint32_t*)(&_MBAR[0x828]))
-#define MCF_GPT2_GSR (*(volatile uint32_t*)(&_MBAR[0x82C]))
-
-#define MCF_GPT3_GMS (*(volatile uint32_t*)(&_MBAR[0x830]))
-#define MCF_GPT3_GCIR (*(volatile uint32_t*)(&_MBAR[0x834]))
-#define MCF_GPT3_GPWM (*(volatile uint32_t*)(&_MBAR[0x838]))
-#define MCF_GPT3_GSR (*(volatile uint32_t*)(&_MBAR[0x83C]))
-
-#define MCF_GPT_GMS(x) (*(volatile uint32_t*)(&_MBAR[0x800 + ((x)*0x10)]))
-#define MCF_GPT_GCIR(x) (*(volatile uint32_t*)(&_MBAR[0x804 + ((x)*0x10)]))
-#define MCF_GPT_GPWM(x) (*(volatile uint32_t*)(&_MBAR[0x808 + ((x)*0x10)]))
-#define MCF_GPT_GSR(x) (*(volatile uint32_t*)(&_MBAR[0x80C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x7)<<0)
-#define MCF_GPT_GMS_TMS_DISABLE (0)
-#define MCF_GPT_GMS_TMS_INCAPT (0x1)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x2)
-#define MCF_GPT_GMS_TMS_PWM (0x3)
-#define MCF_GPT_GMS_TMS_GPIO (0x4)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x3)<<0x4)
-#define MCF_GPT_GMS_GPIO_INPUT (0)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x20)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x30)
-#define MCF_GPT_GMS_IEN (0x100)
-#define MCF_GPT_GMS_OD (0x200)
-#define MCF_GPT_GMS_SC (0x400)
-#define MCF_GPT_GMS_CE (0x1000)
-#define MCF_GPT_GMS_WDEN (0x8000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x3)<<0x10)
-#define MCF_GPT_GMS_ICT_ANY (0)
-#define MCF_GPT_GMS_ICT_RISE (0x10000)
-#define MCF_GPT_GMS_ICT_FALL (0x20000)
-#define MCF_GPT_GMS_ICT_PULSE (0x30000)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x3)<<0x14)
-#define MCF_GPT_GMS_OCT_FRCLOW (0)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x300000)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0xFFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x1)
-#define MCF_GPT_GPWM_PWMOP (0x100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x1)
-#define MCF_GPT_GSR_COMP (0x2)
-#define MCF_GPT_GSR_PWMP (0x4)
-#define MCF_GPT_GSR_TEXP (0x8)
-#define MCF_GPT_GSR_PIN (0x100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x7)<<0xC)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_GPT_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_I2C.h b/BaS_gcc/tos/jtagwait/include/MCF5475_I2C.h
deleted file mode 100644
index 1e8a85b..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_I2C.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_I2C_H__
-#define __MCF5475_I2C_H__
-
-
-/*********************************************************************
-*
-* I2C Module (I2C)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_I2C_I2ADR (*(volatile uint8_t *)(&_MBAR[0x8F00]))
-#define MCF_I2C_I2FDR (*(volatile uint8_t *)(&_MBAR[0x8F04]))
-#define MCF_I2C_I2CR (*(volatile uint8_t *)(&_MBAR[0x8F08]))
-#define MCF_I2C_I2SR (*(volatile uint8_t *)(&_MBAR[0x8F0C]))
-#define MCF_I2C_I2DR (*(volatile uint8_t *)(&_MBAR[0x8F10]))
-#define MCF_I2C_I2ICR (*(volatile uint8_t *)(&_MBAR[0x8F20]))
-
-
-
-/* Bit definitions and macros for MCF_I2C_I2ADR */
-#define MCF_I2C_I2ADR_ADR(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x4)
-#define MCF_I2C_I2CR_TXAK (0x8)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x1)
-#define MCF_I2C_I2SR_IIF (0x2)
-#define MCF_I2C_I2SR_SRW (0x4)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2DR */
-#define MCF_I2C_I2DR_DATA(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x1)
-#define MCF_I2C_I2ICR_RE (0x2)
-#define MCF_I2C_I2ICR_TE (0x4)
-#define MCF_I2C_I2ICR_BNBE (0x8)
-
-
-#endif /* __MCF5475_I2C_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_INTC.h b/BaS_gcc/tos/jtagwait/include/MCF5475_INTC.h
deleted file mode 100644
index 61265ed..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_INTC.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_INTC_H__
-#define __MCF5475_INTC_H__
-
-
-/*********************************************************************
-*
-* Interrupt Controller (INTC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(volatile uint32_t*)(&_MBAR[0x700]))
-#define MCF_INTC_IPRL (*(volatile uint32_t*)(&_MBAR[0x704]))
-#define MCF_INTC_IMRH (*(volatile uint32_t*)(&_MBAR[0x708]))
-#define MCF_INTC_IMRL (*(volatile uint32_t*)(&_MBAR[0x70C]))
-#define MCF_INTC_INTFRCH (*(volatile uint32_t*)(&_MBAR[0x710]))
-#define MCF_INTC_INTFRCL (*(volatile uint32_t*)(&_MBAR[0x714]))
-#define MCF_INTC_IRLR (*(volatile uint8_t *)(&_MBAR[0x718]))
-#define MCF_INTC_IACKLPR (*(volatile uint8_t *)(&_MBAR[0x719]))
-#define MCF_INTC_ICR01 (*(volatile uint8_t *)(&_MBAR[0x741]))
-#define MCF_INTC_ICR02 (*(volatile uint8_t *)(&_MBAR[0x742]))
-#define MCF_INTC_ICR03 (*(volatile uint8_t *)(&_MBAR[0x743]))
-#define MCF_INTC_ICR04 (*(volatile uint8_t *)(&_MBAR[0x744]))
-#define MCF_INTC_ICR05 (*(volatile uint8_t *)(&_MBAR[0x745]))
-#define MCF_INTC_ICR06 (*(volatile uint8_t *)(&_MBAR[0x746]))
-#define MCF_INTC_ICR07 (*(volatile uint8_t *)(&_MBAR[0x747]))
-#define MCF_INTC_ICR08 (*(volatile uint8_t *)(&_MBAR[0x748]))
-#define MCF_INTC_ICR09 (*(volatile uint8_t *)(&_MBAR[0x749]))
-#define MCF_INTC_ICR10 (*(volatile uint8_t *)(&_MBAR[0x74A]))
-#define MCF_INTC_ICR11 (*(volatile uint8_t *)(&_MBAR[0x74B]))
-#define MCF_INTC_ICR12 (*(volatile uint8_t *)(&_MBAR[0x74C]))
-#define MCF_INTC_ICR13 (*(volatile uint8_t *)(&_MBAR[0x74D]))
-#define MCF_INTC_ICR14 (*(volatile uint8_t *)(&_MBAR[0x74E]))
-#define MCF_INTC_ICR15 (*(volatile uint8_t *)(&_MBAR[0x74F]))
-#define MCF_INTC_ICR16 (*(volatile uint8_t *)(&_MBAR[0x750]))
-#define MCF_INTC_ICR17 (*(volatile uint8_t *)(&_MBAR[0x751]))
-#define MCF_INTC_ICR18 (*(volatile uint8_t *)(&_MBAR[0x752]))
-#define MCF_INTC_ICR19 (*(volatile uint8_t *)(&_MBAR[0x753]))
-#define MCF_INTC_ICR20 (*(volatile uint8_t *)(&_MBAR[0x754]))
-#define MCF_INTC_ICR21 (*(volatile uint8_t *)(&_MBAR[0x755]))
-#define MCF_INTC_ICR22 (*(volatile uint8_t *)(&_MBAR[0x756]))
-#define MCF_INTC_ICR23 (*(volatile uint8_t *)(&_MBAR[0x757]))
-#define MCF_INTC_ICR24 (*(volatile uint8_t *)(&_MBAR[0x758]))
-#define MCF_INTC_ICR25 (*(volatile uint8_t *)(&_MBAR[0x759]))
-#define MCF_INTC_ICR26 (*(volatile uint8_t *)(&_MBAR[0x75A]))
-#define MCF_INTC_ICR27 (*(volatile uint8_t *)(&_MBAR[0x75B]))
-#define MCF_INTC_ICR28 (*(volatile uint8_t *)(&_MBAR[0x75C]))
-#define MCF_INTC_ICR29 (*(volatile uint8_t *)(&_MBAR[0x75D]))
-#define MCF_INTC_ICR30 (*(volatile uint8_t *)(&_MBAR[0x75E]))
-#define MCF_INTC_ICR31 (*(volatile uint8_t *)(&_MBAR[0x75F]))
-#define MCF_INTC_ICR32 (*(volatile uint8_t *)(&_MBAR[0x760]))
-#define MCF_INTC_ICR33 (*(volatile uint8_t *)(&_MBAR[0x761]))
-#define MCF_INTC_ICR34 (*(volatile uint8_t *)(&_MBAR[0x762]))
-#define MCF_INTC_ICR35 (*(volatile uint8_t *)(&_MBAR[0x763]))
-#define MCF_INTC_ICR36 (*(volatile uint8_t *)(&_MBAR[0x764]))
-#define MCF_INTC_ICR37 (*(volatile uint8_t *)(&_MBAR[0x765]))
-#define MCF_INTC_ICR38 (*(volatile uint8_t *)(&_MBAR[0x766]))
-#define MCF_INTC_ICR39 (*(volatile uint8_t *)(&_MBAR[0x767]))
-#define MCF_INTC_ICR40 (*(volatile uint8_t *)(&_MBAR[0x768]))
-#define MCF_INTC_ICR41 (*(volatile uint8_t *)(&_MBAR[0x769]))
-#define MCF_INTC_ICR42 (*(volatile uint8_t *)(&_MBAR[0x76A]))
-#define MCF_INTC_ICR43 (*(volatile uint8_t *)(&_MBAR[0x76B]))
-#define MCF_INTC_ICR44 (*(volatile uint8_t *)(&_MBAR[0x76C]))
-#define MCF_INTC_ICR45 (*(volatile uint8_t *)(&_MBAR[0x76D]))
-#define MCF_INTC_ICR46 (*(volatile uint8_t *)(&_MBAR[0x76E]))
-#define MCF_INTC_ICR47 (*(volatile uint8_t *)(&_MBAR[0x76F]))
-#define MCF_INTC_ICR48 (*(volatile uint8_t *)(&_MBAR[0x770]))
-#define MCF_INTC_ICR49 (*(volatile uint8_t *)(&_MBAR[0x771]))
-#define MCF_INTC_ICR50 (*(volatile uint8_t *)(&_MBAR[0x772]))
-#define MCF_INTC_ICR51 (*(volatile uint8_t *)(&_MBAR[0x773]))
-#define MCF_INTC_ICR52 (*(volatile uint8_t *)(&_MBAR[0x774]))
-#define MCF_INTC_ICR53 (*(volatile uint8_t *)(&_MBAR[0x775]))
-#define MCF_INTC_ICR54 (*(volatile uint8_t *)(&_MBAR[0x776]))
-#define MCF_INTC_ICR55 (*(volatile uint8_t *)(&_MBAR[0x777]))
-#define MCF_INTC_ICR56 (*(volatile uint8_t *)(&_MBAR[0x778]))
-#define MCF_INTC_ICR57 (*(volatile uint8_t *)(&_MBAR[0x779]))
-#define MCF_INTC_ICR58 (*(volatile uint8_t *)(&_MBAR[0x77A]))
-#define MCF_INTC_ICR59 (*(volatile uint8_t *)(&_MBAR[0x77B]))
-#define MCF_INTC_ICR60 (*(volatile uint8_t *)(&_MBAR[0x77C]))
-#define MCF_INTC_ICR61 (*(volatile uint8_t *)(&_MBAR[0x77D]))
-#define MCF_INTC_ICR62 (*(volatile uint8_t *)(&_MBAR[0x77E]))
-#define MCF_INTC_ICR63 (*(volatile uint8_t *)(&_MBAR[0x77F]))
-#define MCF_INTC_SWIACK (*(volatile uint8_t *)(&_MBAR[0x7E0]))
-#define MCF_INTC_L1IACK (*(volatile uint8_t *)(&_MBAR[0x7E4]))
-#define MCF_INTC_L2IACK (*(volatile uint8_t *)(&_MBAR[0x7E8]))
-#define MCF_INTC_L3IACK (*(volatile uint8_t *)(&_MBAR[0x7EC]))
-#define MCF_INTC_L4IACK (*(volatile uint8_t *)(&_MBAR[0x7F0]))
-#define MCF_INTC_L5IACK (*(volatile uint8_t *)(&_MBAR[0x7F4]))
-#define MCF_INTC_L6IACK (*(volatile uint8_t *)(&_MBAR[0x7F8]))
-#define MCF_INTC_L7IACK (*(volatile uint8_t *)(&_MBAR[0x7FC]))
-#define MCF_INTC_ICR(x) (*(volatile uint8_t *)(&_MBAR[0x741 + ((x-1)*0x1)]))
-#define MCF_INTC_LIACK(x) (*(volatile uint8_t *)(&_MBAR[0x7E4 + ((x-1)*0x4)]))
-
-
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x1)
-#define MCF_INTC_IPRH_INT33 (0x2)
-#define MCF_INTC_IPRH_INT34 (0x4)
-#define MCF_INTC_IPRH_INT35 (0x8)
-#define MCF_INTC_IPRH_INT36 (0x10)
-#define MCF_INTC_IPRH_INT37 (0x20)
-#define MCF_INTC_IPRH_INT38 (0x40)
-#define MCF_INTC_IPRH_INT39 (0x80)
-#define MCF_INTC_IPRH_INT40 (0x100)
-#define MCF_INTC_IPRH_INT41 (0x200)
-#define MCF_INTC_IPRH_INT42 (0x400)
-#define MCF_INTC_IPRH_INT43 (0x800)
-#define MCF_INTC_IPRH_INT44 (0x1000)
-#define MCF_INTC_IPRH_INT45 (0x2000)
-#define MCF_INTC_IPRH_INT46 (0x4000)
-#define MCF_INTC_IPRH_INT47 (0x8000)
-#define MCF_INTC_IPRH_INT48 (0x10000)
-#define MCF_INTC_IPRH_INT49 (0x20000)
-#define MCF_INTC_IPRH_INT50 (0x40000)
-#define MCF_INTC_IPRH_INT51 (0x80000)
-#define MCF_INTC_IPRH_INT52 (0x100000)
-#define MCF_INTC_IPRH_INT53 (0x200000)
-#define MCF_INTC_IPRH_INT54 (0x400000)
-#define MCF_INTC_IPRH_INT55 (0x800000)
-#define MCF_INTC_IPRH_INT56 (0x1000000)
-#define MCF_INTC_IPRH_INT57 (0x2000000)
-#define MCF_INTC_IPRH_INT58 (0x4000000)
-#define MCF_INTC_IPRH_INT59 (0x8000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x2)
-#define MCF_INTC_IPRL_INT2 (0x4)
-#define MCF_INTC_IPRL_INT3 (0x8)
-#define MCF_INTC_IPRL_INT4 (0x10)
-#define MCF_INTC_IPRL_INT5 (0x20)
-#define MCF_INTC_IPRL_INT6 (0x40)
-#define MCF_INTC_IPRL_INT7 (0x80)
-#define MCF_INTC_IPRL_INT8 (0x100)
-#define MCF_INTC_IPRL_INT9 (0x200)
-#define MCF_INTC_IPRL_INT10 (0x400)
-#define MCF_INTC_IPRL_INT11 (0x800)
-#define MCF_INTC_IPRL_INT12 (0x1000)
-#define MCF_INTC_IPRL_INT13 (0x2000)
-#define MCF_INTC_IPRL_INT14 (0x4000)
-#define MCF_INTC_IPRL_INT15 (0x8000)
-#define MCF_INTC_IPRL_INT16 (0x10000)
-#define MCF_INTC_IPRL_INT17 (0x20000)
-#define MCF_INTC_IPRL_INT18 (0x40000)
-#define MCF_INTC_IPRL_INT19 (0x80000)
-#define MCF_INTC_IPRL_INT20 (0x100000)
-#define MCF_INTC_IPRL_INT21 (0x200000)
-#define MCF_INTC_IPRL_INT22 (0x400000)
-#define MCF_INTC_IPRL_INT23 (0x800000)
-#define MCF_INTC_IPRL_INT24 (0x1000000)
-#define MCF_INTC_IPRL_INT25 (0x2000000)
-#define MCF_INTC_IPRL_INT26 (0x4000000)
-#define MCF_INTC_IPRL_INT27 (0x8000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x1)
-#define MCF_INTC_IMRH_INT_MASK33 (0x2)
-#define MCF_INTC_IMRH_INT_MASK34 (0x4)
-#define MCF_INTC_IMRH_INT_MASK35 (0x8)
-#define MCF_INTC_IMRH_INT_MASK36 (0x10)
-#define MCF_INTC_IMRH_INT_MASK37 (0x20)
-#define MCF_INTC_IMRH_INT_MASK38 (0x40)
-#define MCF_INTC_IMRH_INT_MASK39 (0x80)
-#define MCF_INTC_IMRH_INT_MASK40 (0x100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x1000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x2000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x4000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x8000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x10000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x20000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x40000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x80000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x1)
-#define MCF_INTC_IMRL_INT_MASK1 (0x2)
-#define MCF_INTC_IMRL_INT_MASK2 (0x4)
-#define MCF_INTC_IMRL_INT_MASK3 (0x8)
-#define MCF_INTC_IMRL_INT_MASK4 (0x10)
-#define MCF_INTC_IMRL_INT_MASK5 (0x20)
-#define MCF_INTC_IMRL_INT_MASK6 (0x40)
-#define MCF_INTC_IMRL_INT_MASK7 (0x80)
-#define MCF_INTC_IMRL_INT_MASK8 (0x100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x1000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x2000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x4000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x8000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x10000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x20000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x40000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x80000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x1)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x2)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x4)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x8)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x10)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x20)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x40)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x80)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x2)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x4)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x8)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x10)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x20)
-#define MCF_INTC_INTFRCL_INTFRC6 (0x40)
-#define MCF_INTC_INTFRCL_INTFRC7 (0x80)
-#define MCF_INTC_INTFRCL_INTFRC8 (0x100)
-#define MCF_INTC_INTFRCL_INTFRC9 (0x200)
-#define MCF_INTC_INTFRCL_INTFRC10 (0x400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
-#define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
-
-/* Bit definitions and macros for MCF_INTC_ICR */
-#define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
-#define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
-
-/* Bit definitions and macros for MCF_INTC_SWIACK */
-#define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_INTC_LIACK */
-#define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-
-#endif /* __MCF5475_INTC_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_MMU.h b/BaS_gcc/tos/jtagwait/include/MCF5475_MMU.h
deleted file mode 100644
index 334ad28..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_MMU.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_MMU_H__
-#define __MCF5475_MMU_H__
-
-
-/*********************************************************************
-*
-* Memory Management Unit (MMU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-
-/* note the uint32_t_a - this is to avoid gcc warnings about pointer aliasing */
-#define MCF_MMU_MMUCR (*(volatile uint32_t_a*)(&_MMUBAR[0]))
-#define MCF_MMU_MMUOR (*(volatile uint32_t_a*)(&_MMUBAR[0x4]))
-#define MCF_MMU_MMUSR (*(volatile uint32_t_a*)(&_MMUBAR[0x8]))
-#define MCF_MMU_MMUAR (*(volatile uint32_t_a*)(&_MMUBAR[0x10]))
-#define MCF_MMU_MMUTR (*(volatile uint32_t_a*)(&_MMUBAR[0x14]))
-#define MCF_MMU_MMUDR (*(volatile uint32_t_a*)(&_MMUBAR[0x18]))
-
-
-/* Bit definitions and macros for MCF_MMU_MMUCR */
-#define MCF_MMU_MMUCR_EN (0x1)
-#define MCF_MMU_MMUCR_ASM (0x2)
-
-/* Bit definitions and macros for MCF_MMU_MMUOR */
-#define MCF_MMU_MMUOR_UAA (0x1)
-#define MCF_MMU_MMUOR_ACC (0x2)
-#define MCF_MMU_MMUOR_RW (0x4)
-#define MCF_MMU_MMUOR_ADR (0x8)
-#define MCF_MMU_MMUOR_ITLB (0x10)
-#define MCF_MMU_MMUOR_CAS (0x20)
-#define MCF_MMU_MMUOR_CNL (0x40)
-#define MCF_MMU_MMUOR_CA (0x80)
-#define MCF_MMU_MMUOR_STLB (0x100)
-#define MCF_MMU_MMUOR_AA(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_MMU_MMUSR */
-#define MCF_MMU_MMUSR_HIT (0x2)
-#define MCF_MMU_MMUSR_WF (0x8)
-#define MCF_MMU_MMUSR_RF (0x10)
-#define MCF_MMU_MMUSR_SPF (0x20)
-
-/* Bit definitions and macros for MCF_MMU_MMUAR */
-#define MCF_MMU_MMUAR_FA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_MMU_MMUTR */
-#define MCF_MMU_MMUTR_V (0x1)
-#define MCF_MMU_MMUTR_SG (0x2)
-#define MCF_MMU_MMUTR_ID(x) (((x)&0xFF)<<0x2)
-#define MCF_MMU_MMUTR_VA(x) (((x)&0x3FFFFF)<<0xA)
-
-/* Bit definitions and macros for MCF_MMU_MMUDR */
-#define MCF_MMU_MMUDR_LK (0x2)
-#define MCF_MMU_MMUDR_X (0x4)
-#define MCF_MMU_MMUDR_W (0x8)
-#define MCF_MMU_MMUDR_R (0x10)
-#define MCF_MMU_MMUDR_SP (0x20)
-#define MCF_MMU_MMUDR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_MMU_MMUDR_SZ(x) (((x)&0x3)<<0x8)
-#define MCF_MMU_MMUDR_PA(x) (((x)&0x3FFFFF)<<0xA)
-
-
-#endif /* __MCF5475_MMU_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_PAD.h b/BaS_gcc/tos/jtagwait/include/MCF5475_PAD.h
deleted file mode 100644
index 1d87e2e..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_PAD.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PAD_H__
-#define __MCF5475_PAD_H__
-
-
-/*********************************************************************
-*
-* Common GPIO
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PAD_PAR_FBCTL (*(volatile uint16_t*)(&_MBAR[0xA40]))
-#define MCF_PAD_PAR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA42]))
-#define MCF_PAD_PAR_DMA (*(volatile uint8_t *)(&_MBAR[0xA43]))
-#define MCF_PAD_PAR_FECI2CIRQ (*(volatile uint16_t*)(&_MBAR[0xA44]))
-#define MCF_PAD_PAR_PCIBG (*(volatile uint16_t*)(&_MBAR[0xA48]))
-#define MCF_PAD_PAR_PCIBR (*(volatile uint16_t*)(&_MBAR[0xA4A]))
-#define MCF_PAD_PAR_PSC3 (*(volatile uint8_t *)(&_MBAR[0xA4C]))
-#define MCF_PAD_PAR_PSC2 (*(volatile uint8_t *)(&_MBAR[0xA4D]))
-#define MCF_PAD_PAR_PSC1 (*(volatile uint8_t *)(&_MBAR[0xA4E]))
-#define MCF_PAD_PAR_PSC0 (*(volatile uint8_t *)(&_MBAR[0xA4F]))
-#define MCF_PAD_PAR_DSPI (*(volatile uint16_t*)(&_MBAR[0xA50]))
-#define MCF_PAD_PAR_TIMER (*(volatile uint8_t *)(&_MBAR[0xA52]))
-
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCTL */
-#define MCF_PAD_PAR_FBCTL_PAR_ALE(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_TBST (0x2)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_ALE (0x3)
-#define MCF_PAD_PAR_FBCTL_PAR_TA (0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_TBST (0x20)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_RW (0x30)
-#define MCF_PAD_PAR_FBCTL_PAR_OE (0x40)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE0 (0x100)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE1 (0x400)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE3 (0x4000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCS */
-#define MCF_PAD_PAR_FBCS_PAR_CS1 (0x2)
-#define MCF_PAD_PAR_FBCS_PAR_CS2 (0x4)
-#define MCF_PAD_PAR_FBCS_PAR_CS3 (0x8)
-#define MCF_PAD_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_PAD_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DMA */
-#define MCF_PAD_PAR_DMA_PAR_DREQ0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_TIN0 (0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_DREQ0 (0x3)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_IRQ1 (0x4)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_TIN1 (0x8)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_DREQ1 (0xC)
-#define MCF_PAD_PAR_DMA_PAR_DACK0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_TOUT0 (0x20)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_DACK0 (0x30)
-#define MCF_PAD_PAR_DMA_PAR_DACK1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_TOUT1 (0x80)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_DACK1 (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FECI2CIRQ */
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5 (0x1)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 (0x2)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SCL (0x4)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SDA (0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x80)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC (0xC0)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x200)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO (0x300)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII (0x400)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E17 (0x800)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBG */
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_TOUT0 (0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 (0x3)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_TOUT1 (0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 (0xC)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_TOUT2 (0x20)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 (0x30)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_TOUT3 (0x80)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 (0xC0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST (0x200)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBR */
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_TIN0 (0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 (0x3)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_TIN1 (0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 (0xC)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_TIN2 (0x20)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 (0x30)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_TIN3 (0x80)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 (0xC0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 (0x200)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC3 */
-#define MCF_PAD_PAR_PSC3_PAR_TXD3 (0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RXD3 (0x8)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC2 */
-#define MCF_PAD_PAR_PSC2_PAR_TXD2 (0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RXD2 (0x8)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_RTS (0x30)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC1 */
-#define MCF_PAD_PAR_PSC1_PAR_TXD1 (0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RXD1 (0x8)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_RTS (0x30)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC0 */
-#define MCF_PAD_PAR_PSC0_PAR_TXD0 (0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RXD0 (0x8)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_RTS (0x30)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DSPI */
-#define MCF_PAD_PAR_DSPI_PAR_SOUT(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_TXD (0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT (0x3)
-#define MCF_PAD_PAR_DSPI_PAR_SIN(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_RXD (0x8)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_SIN (0xC)
-#define MCF_PAD_PAR_DSPI_PAR_SCK(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_BCLK (0x10)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_CTS (0x20)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_SCK (0x30)
-#define MCF_PAD_PAR_DSPI_PAR_CS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_FSYNC (0x40)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_RTS (0x80)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0 (0xC0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_TOUT2 (0x200)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2 (0x300)
-#define MCF_PAD_PAR_DSPI_PAR_CS3(x) (((x)&0x3)<<0xA)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_TOUT3 (0x800)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3 (0xC00)
-#define MCF_PAD_PAR_DSPI_PAR_CS5 (0x1000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_TIMER */
-#define MCF_PAD_PAR_TIMER_PAR_TOUT2 (0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2(x) (((x)&0x3)<<0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2 (0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_TIN2 (0x6)
-#define MCF_PAD_PAR_TIMER_PAR_TOUT3 (0x8)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3 (0x20)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_TIN3 (0x30)
-
-
-#endif /* __MCF5475_PAD_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_PCI.h b/BaS_gcc/tos/jtagwait/include/MCF5475_PCI.h
deleted file mode 100644
index 3eb3341..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_PCI.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCI_H__
-#define __MCF5475_PCI_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Controller (PCI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCI_PCIIDR (*(volatile uint32_t*)(&_MBAR[0xB00]))
-#define MCF_PCI_PCISCR (*(volatile uint32_t*)(&_MBAR[0xB04]))
-#define MCF_PCI_PCICCRIR (*(volatile uint32_t*)(&_MBAR[0xB08]))
-#define MCF_PCI_PCICR1 (*(volatile uint32_t*)(&_MBAR[0xB0C]))
-#define MCF_PCI_PCIBAR0 (*(volatile uint32_t*)(&_MBAR[0xB10]))
-#define MCF_PCI_PCIBAR1 (*(volatile uint32_t*)(&_MBAR[0xB14]))
-#define MCF_PCI_PCICCPR (*(volatile uint32_t*)(&_MBAR[0xB28]))
-#define MCF_PCI_PCISID (*(volatile uint32_t*)(&_MBAR[0xB2C]))
-#define MCF_PCI_PCICR2 (*(volatile uint32_t*)(&_MBAR[0xB3C]))
-#define MCF_PCI_PCIGSCR (*(volatile uint32_t*)(&_MBAR[0xB60]))
-#define MCF_PCI_PCITBATR0 (*(volatile uint32_t*)(&_MBAR[0xB64]))
-#define MCF_PCI_PCITBATR1 (*(volatile uint32_t*)(&_MBAR[0xB68]))
-#define MCF_PCI_PCITCR (*(volatile uint32_t*)(&_MBAR[0xB6C]))
-#define MCF_PCI_PCIIW0BTAR (*(volatile uint32_t*)(&_MBAR[0xB70]))
-#define MCF_PCI_PCIIW1BTAR (*(volatile uint32_t*)(&_MBAR[0xB74]))
-#define MCF_PCI_PCIIW2BTAR (*(volatile uint32_t*)(&_MBAR[0xB78]))
-#define MCF_PCI_PCIIWCR (*(volatile uint32_t*)(&_MBAR[0xB80]))
-#define MCF_PCI_PCIICR (*(volatile uint32_t*)(&_MBAR[0xB84]))
-#define MCF_PCI_PCIISR (*(volatile uint32_t*)(&_MBAR[0xB88]))
-#define MCF_PCI_PCICAR (*(volatile uint32_t*)(&_MBAR[0xBF8]))
-#define MCF_PCI_PCITPSR (*(volatile uint32_t*)(&_MBAR[0x8400]))
-#define MCF_PCI_PCITSAR (*(volatile uint32_t*)(&_MBAR[0x8404]))
-#define MCF_PCI_PCITTCR (*(volatile uint32_t*)(&_MBAR[0x8408]))
-#define MCF_PCI_PCITER (*(volatile uint32_t*)(&_MBAR[0x840C]))
-#define MCF_PCI_PCITNAR (*(volatile uint32_t*)(&_MBAR[0x8410]))
-#define MCF_PCI_PCITLWR (*(volatile uint32_t*)(&_MBAR[0x8414]))
-#define MCF_PCI_PCITDCR (*(volatile uint32_t*)(&_MBAR[0x8418]))
-#define MCF_PCI_PCITSR (*(volatile uint32_t*)(&_MBAR[0x841C]))
-#define MCF_PCI_PCITFDR (*(volatile uint32_t*)(&_MBAR[0x8440]))
-#define MCF_PCI_PCITFSR (*(volatile uint32_t*)(&_MBAR[0x8444]))
-#define MCF_PCI_PCITFCR (*(volatile uint32_t*)(&_MBAR[0x8448]))
-#define MCF_PCI_PCITFAR (*(volatile uint32_t*)(&_MBAR[0x844C]))
-#define MCF_PCI_PCITFRPR (*(volatile uint32_t*)(&_MBAR[0x8450]))
-#define MCF_PCI_PCITFWPR (*(volatile uint32_t*)(&_MBAR[0x8454]))
-#define MCF_PCI_PCIRPSR (*(volatile uint32_t*)(&_MBAR[0x8480]))
-#define MCF_PCI_PCIRSAR (*(volatile uint32_t*)(&_MBAR[0x8484]))
-#define MCF_PCI_PCIRTCR (*(volatile uint32_t*)(&_MBAR[0x8488]))
-#define MCF_PCI_PCIRER (*(volatile uint32_t*)(&_MBAR[0x848C]))
-#define MCF_PCI_PCIRNAR (*(volatile uint32_t*)(&_MBAR[0x8490]))
-#define MCF_PCI_PCIRDCR (*(volatile uint32_t*)(&_MBAR[0x8498]))
-#define MCF_PCI_PCIRSR (*(volatile uint32_t*)(&_MBAR[0x849C]))
-#define MCF_PCI_PCIRFDR (*(volatile uint32_t*)(&_MBAR[0x84C0]))
-#define MCF_PCI_PCIRFSR (*(volatile uint32_t*)(&_MBAR[0x84C4]))
-#define MCF_PCI_PCIRFCR (*(volatile uint32_t*)(&_MBAR[0x84C8]))
-#define MCF_PCI_PCIRFAR (*(volatile uint32_t*)(&_MBAR[0x84CC]))
-#define MCF_PCI_PCIRFRPR (*(volatile uint32_t*)(&_MBAR[0x84D0]))
-#define MCF_PCI_PCIRFWPR (*(volatile uint32_t*)(&_MBAR[0x84D4]))
-
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_IO (0x1)
-#define MCF_PCI_PCISCR_M (0x2)
-#define MCF_PCI_PCISCR_B (0x4)
-#define MCF_PCI_PCISCR_SP (0x8)
-#define MCF_PCI_PCISCR_MW (0x10)
-#define MCF_PCI_PCISCR_V (0x20)
-#define MCF_PCI_PCISCR_PER (0x40)
-#define MCF_PCI_PCISCR_ST (0x80)
-#define MCF_PCI_PCISCR_S (0x100)
-#define MCF_PCI_PCISCR_F (0x200)
-#define MCF_PCI_PCISCR_C (0x100000)
-#define MCF_PCI_PCISCR_66M (0x200000)
-#define MCF_PCI_PCISCR_R (0x400000)
-#define MCF_PCI_PCISCR_FC (0x800000)
-#define MCF_PCI_PCISCR_DP (0x1000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCISCR_TS (0x8000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVISIONID(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0xFFFFFF)<<0x8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IOM (0x1)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR0_PREF (0x8)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IOM (0x1)
-#define MCF_PCI_PCIBAR1_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR1_PREF (0x8)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCICCPR */
-#define MCF_PCI_PCICCPR_PCICCP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCISID */
-#define MCF_PCI_PCISID_VENDORID(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x1)
-#define MCF_PCI_PCIGSCR_SEE (0x1000)
-#define MCF_PCI_PCIGSCR_PEE (0x2000)
-#define MCF_PCI_PCIGSCR_CLKINRESERVED(x) (((x)&0x7)<<0x10)
-#define MCF_PCI_PCIGSCR_XLB2CLKIN(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x1)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x1)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x10000)
-#define MCF_PCI_PCITCR_LD (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2_E (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_PRC(x) (((x)&0x3)<<0x9)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IOM (0x800)
-#define MCF_PCI_PCIIWCR_WINCTRL1_E (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_PRC(x) (((x)&0x3)<<0x11)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IOM (0x80000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_E (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_PRC(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IOM (0x8000000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x900)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x30000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x50000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x90000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x3000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x5000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x9000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x1000000)
-#define MCF_PCI_PCIICR_IAE (0x2000000)
-#define MCF_PCI_PCIICR_REE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x1000000)
-#define MCF_PCI_PCIISR_IA (0x2000000)
-#define MCF_PCI_PCIISR_RE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x3F)<<0x2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x1F)<<0xB)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSAR */
-#define MCF_PCI_PCITSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x1)
-#define MCF_PCI_PCITTCR_W (0x10)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x10000)
-#define MCF_PCI_PCITER_IAE (0x20000)
-#define MCF_PCI_PCITER_TAE (0x40000)
-#define MCF_PCI_PCITER_RE (0x80000)
-#define MCF_PCI_PCITER_SE (0x100000)
-#define MCF_PCI_PCITER_FEE (0x200000)
-#define MCF_PCI_PCITER_ME (0x1000000)
-#define MCF_PCI_PCITER_BE (0x8000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITNAR */
-#define MCF_PCI_PCITNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITLWR */
-#define MCF_PCI_PCITLWR_LASTWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x10000)
-#define MCF_PCI_PCITSR_TA (0x20000)
-#define MCF_PCI_PCITSR_RE (0x40000)
-#define MCF_PCI_PCITSR_SE (0x80000)
-#define MCF_PCI_PCITSR_FE (0x100000)
-#define MCF_PCI_PCITSR_BE1 (0x200000)
-#define MCF_PCI_PCITSR_BE2 (0x400000)
-#define MCF_PCI_PCITSR_BE3 (0x800000)
-#define MCF_PCI_PCITSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFDR */
-#define MCF_PCI_PCITFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMPTY (0x10000)
-#define MCF_PCI_PCITFSR_ALARM (0x20000)
-#define MCF_PCI_PCITFSR_FULL (0x40000)
-#define MCF_PCI_PCITFSR_FR (0x80000)
-#define MCF_PCI_PCITFSR_OF (0x100000)
-#define MCF_PCI_PCITFSR_UF (0x200000)
-#define MCF_PCI_PCITFSR_RXW (0x400000)
-#define MCF_PCI_PCITFSR_FAE (0x800000)
-#define MCF_PCI_PCITFSR_TXW (0x40000000)
-#define MCF_PCI_PCITFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCITFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCITFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCITFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCITFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCITFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCITFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSAR */
-#define MCF_PCI_PCIRSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x1)
-#define MCF_PCI_PCIRTCR_W (0x10)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCIRTCR_FB (0x1000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x10000)
-#define MCF_PCI_PCIRER_IAE (0x20000)
-#define MCF_PCI_PCIRER_TAE (0x40000)
-#define MCF_PCI_PCIRER_RE (0x80000)
-#define MCF_PCI_PCIRER_SE (0x100000)
-#define MCF_PCI_PCIRER_FEE (0x200000)
-#define MCF_PCI_PCIRER_ME (0x1000000)
-#define MCF_PCI_PCIRER_BE (0x8000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRNAR */
-#define MCF_PCI_PCIRNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x10000)
-#define MCF_PCI_PCIRSR_TA (0x20000)
-#define MCF_PCI_PCIRSR_RE (0x40000)
-#define MCF_PCI_PCIRSR_SE (0x80000)
-#define MCF_PCI_PCIRSR_FE (0x100000)
-#define MCF_PCI_PCIRSR_BE1 (0x200000)
-#define MCF_PCI_PCIRSR_BE2 (0x400000)
-#define MCF_PCI_PCIRSR_BE3 (0x800000)
-#define MCF_PCI_PCIRSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFDR */
-#define MCF_PCI_PCIRFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMPTY (0x10000)
-#define MCF_PCI_PCIRFSR_ALARM (0x20000)
-#define MCF_PCI_PCIRFSR_FULL (0x40000)
-#define MCF_PCI_PCIRFSR_FR (0x80000)
-#define MCF_PCI_PCIRFSR_OF (0x100000)
-#define MCF_PCI_PCIRFSR_UF (0x200000)
-#define MCF_PCI_PCIRFSR_RXW (0x400000)
-#define MCF_PCI_PCIRFSR_FAE (0x800000)
-#define MCF_PCI_PCIRFSR_TXW (0x40000000)
-#define MCF_PCI_PCIRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCIRFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCIRFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCIRFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCIRFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCIRFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIRFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-
-#endif /* __MCF5475_PCI_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_PCIARB.h b/BaS_gcc/tos/jtagwait/include/MCF5475_PCIARB.h
deleted file mode 100644
index 9e8c05b..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_PCIARB.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCIARB_H__
-#define __MCF5475_PCIARB_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Arbiter Module (PCIARB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(volatile uint32_t*)(&_MBAR[0xC00]))
-#define MCF_PCIARB_PASR (*(volatile uint32_t*)(&_MBAR[0xC04]))
-
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x1)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x1F)<<0x1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x10000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x1F)<<0x11)
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x10000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x1F)<<0x11)
-
-
-#endif /* __MCF5475_PCIARB_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_PSC.h b/BaS_gcc/tos/jtagwait/include/MCF5475_PSC.h
deleted file mode 100644
index ffa9f3e..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_PSC.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PSC_H__
-#define __MCF5475_PSC_H__
-
-
-/*********************************************************************
-*
-* Programmable Serial Controller (PSC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PSC0_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8608]))
-#define MCF_PSC0_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8618]))
-#define MCF_PSC0_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x861C]))
-#define MCF_PSC0_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8634]))
-#define MCF_PSC0_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8638]))
-#define MCF_PSC0_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x863C]))
-#define MCF_PSC0_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8640]))
-#define MCF_PSC0_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8644]))
-#define MCF_PSC0_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8648]))
-#define MCF_PSC0_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x864C]))
-#define MCF_PSC0_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8650]))
-#define MCF_PSC0_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8654]))
-#define MCF_PSC0_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8658]))
-#define MCF_PSC0_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x865C]))
-#define MCF_PSC0_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8660]))
-#define MCF_PSC0_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8664]))
-#define MCF_PSC0_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8668]))
-#define MCF_PSC0_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x866E]))
-#define MCF_PSC0_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8672]))
-#define MCF_PSC0_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8676]))
-#define MCF_PSC0_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x867A]))
-#define MCF_PSC0_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x867E]))
-#define MCF_PSC0_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8680]))
-#define MCF_PSC0_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8684]))
-#define MCF_PSC0_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8688]))
-#define MCF_PSC0_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x868E]))
-#define MCF_PSC0_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8692]))
-#define MCF_PSC0_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8696]))
-#define MCF_PSC0_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x869A]))
-#define MCF_PSC0_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x869E]))
-
-#define MCF_PSC1_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8708]))
-#define MCF_PSC1_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8718]))
-#define MCF_PSC1_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x871C]))
-#define MCF_PSC1_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8734]))
-#define MCF_PSC1_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8738]))
-#define MCF_PSC1_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x873C]))
-#define MCF_PSC1_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8740]))
-#define MCF_PSC1_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8744]))
-#define MCF_PSC1_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8748]))
-#define MCF_PSC1_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x874C]))
-#define MCF_PSC1_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8750]))
-#define MCF_PSC1_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8754]))
-#define MCF_PSC1_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8758]))
-#define MCF_PSC1_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x875C]))
-#define MCF_PSC1_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8760]))
-#define MCF_PSC1_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8764]))
-#define MCF_PSC1_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8768]))
-#define MCF_PSC1_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x876E]))
-#define MCF_PSC1_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8772]))
-#define MCF_PSC1_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8776]))
-#define MCF_PSC1_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x877A]))
-#define MCF_PSC1_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x877E]))
-#define MCF_PSC1_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8780]))
-#define MCF_PSC1_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8784]))
-#define MCF_PSC1_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8788]))
-#define MCF_PSC1_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x878E]))
-#define MCF_PSC1_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8792]))
-#define MCF_PSC1_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8796]))
-#define MCF_PSC1_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x879A]))
-#define MCF_PSC1_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x879E]))
-
-#define MCF_PSC2_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8808]))
-#define MCF_PSC2_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8818]))
-#define MCF_PSC2_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x881C]))
-#define MCF_PSC2_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8834]))
-#define MCF_PSC2_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8838]))
-#define MCF_PSC2_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x883C]))
-#define MCF_PSC2_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8840]))
-#define MCF_PSC2_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8844]))
-#define MCF_PSC2_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8848]))
-#define MCF_PSC2_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x884C]))
-#define MCF_PSC2_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8850]))
-#define MCF_PSC2_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8854]))
-#define MCF_PSC2_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8858]))
-#define MCF_PSC2_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x885C]))
-#define MCF_PSC2_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8860]))
-#define MCF_PSC2_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8864]))
-#define MCF_PSC2_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8868]))
-#define MCF_PSC2_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x886E]))
-#define MCF_PSC2_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8872]))
-#define MCF_PSC2_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8876]))
-#define MCF_PSC2_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x887A]))
-#define MCF_PSC2_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x887E]))
-#define MCF_PSC2_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8880]))
-#define MCF_PSC2_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8884]))
-#define MCF_PSC2_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8888]))
-#define MCF_PSC2_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x888E]))
-#define MCF_PSC2_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8892]))
-#define MCF_PSC2_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8896]))
-#define MCF_PSC2_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x889A]))
-#define MCF_PSC2_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x889E]))
-
-#define MCF_PSC3_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8908]))
-#define MCF_PSC3_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8918]))
-#define MCF_PSC3_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x891C]))
-#define MCF_PSC3_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8934]))
-#define MCF_PSC3_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8938]))
-#define MCF_PSC3_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x893C]))
-#define MCF_PSC3_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8940]))
-#define MCF_PSC3_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8944]))
-#define MCF_PSC3_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8948]))
-#define MCF_PSC3_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x894C]))
-#define MCF_PSC3_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8950]))
-#define MCF_PSC3_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8954]))
-#define MCF_PSC3_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8958]))
-#define MCF_PSC3_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x895C]))
-#define MCF_PSC3_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8960]))
-#define MCF_PSC3_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8964]))
-#define MCF_PSC3_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8968]))
-#define MCF_PSC3_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x896E]))
-#define MCF_PSC3_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8972]))
-#define MCF_PSC3_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8976]))
-#define MCF_PSC3_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x897A]))
-#define MCF_PSC3_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x897E]))
-#define MCF_PSC3_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8980]))
-#define MCF_PSC3_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8984]))
-#define MCF_PSC3_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8988]))
-#define MCF_PSC3_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x898E]))
-#define MCF_PSC3_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8992]))
-#define MCF_PSC3_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8996]))
-#define MCF_PSC3_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x899A]))
-#define MCF_PSC3_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x899E]))
-
-#define MCF_PSC_PSCMR(x) (*(volatile uint8_t *)(&_MBAR[0x8600 + ((x)*0x100)]))
-#define MCF_PSC_PSCCSR(x) (*(volatile uint8_t *)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCSR(x) (*(volatile uint16_t*)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCCR(x) (*(volatile uint8_t *)(&_MBAR[0x8608 + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCIPCR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCACR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCIMR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCISR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTUR(x) (*(volatile uint8_t *)(&_MBAR[0x8618 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTLR(x) (*(volatile uint8_t *)(&_MBAR[0x861C + ((x)*0x100)]))
-#define MCF_PSC_PSCIP(x) (*(volatile uint8_t *)(&_MBAR[0x8634 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPSET(x) (*(volatile uint8_t *)(&_MBAR[0x8638 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPRESET(x) (*(volatile uint8_t *)(&_MBAR[0x863C + ((x)*0x100)]))
-#define MCF_PSC_PSCSICR(x) (*(volatile uint8_t *)(&_MBAR[0x8640 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR1(x) (*(volatile uint8_t *)(&_MBAR[0x8644 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR2(x) (*(volatile uint8_t *)(&_MBAR[0x8648 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRSDR(x) (*(volatile uint8_t *)(&_MBAR[0x864C + ((x)*0x100)]))
-#define MCF_PSC_PSCIRMDR(x) (*(volatile uint8_t *)(&_MBAR[0x8650 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRFDR(x) (*(volatile uint8_t *)(&_MBAR[0x8654 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x8658 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x865C + ((x)*0x100)]))
-#define MCF_PSC_PSCRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8660 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8664 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8668 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFAR(x) (*(volatile uint16_t*)(&_MBAR[0x866E + ((x)*0x100)]))
-#define MCF_PSC_PSCRFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8672 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8676 + ((x)*0x100)]))
-#define MCF_PSC_PSCRLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x867A + ((x)*0x100)]))
-#define MCF_PSC_PSCRLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x867E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8680 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8684 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8688 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFAR(x) (*(volatile uint16_t*)(&_MBAR[0x868E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8692 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8696 + ((x)*0x100)]))
-#define MCF_PSC_PSCTLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x869A + ((x)*0x100)]))
-#define MCF_PSC_PSCTLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x869E + ((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_PSCMR */
-#define MCF_PSC_PSCMR_SB(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCMR_TXCTS (0x10)
-#define MCF_PSC_PSCMR_TXRTS (0x20)
-#define MCF_PSC_PSCMR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_PSC_PSCMR_CM_NORMAL (0)
-#define MCF_PSC_PSCMR_CM_ECHO (0x40)
-#define MCF_PSC_PSCMR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_PSCMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_1 (0x7)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_15 (0x8)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_2 (0xF)
-#define MCF_PSC_PSCMR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_PSCMR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_PSCMR_PM_NONE (0x10)
-#define MCF_PSC_PSCMR_PM_FORCE_HI (0xC)
-#define MCF_PSC_PSCMR_PM_FORCE_LO (0x8)
-#define MCF_PSC_PSCMR_PM_ODD (0x4)
-#define MCF_PSC_PSCMR_PM_EVEN (0)
-#define MCF_PSC_PSCMR_BC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCMR_BC_5 (0)
-#define MCF_PSC_PSCMR_BC_6 (0x1)
-#define MCF_PSC_PSCMR_BC_7 (0x2)
-#define MCF_PSC_PSCMR_BC_8 (0x3)
-#define MCF_PSC_PSCMR_PT (0x4)
-#define MCF_PSC_PSCMR_PM(x) (((x)&0x3)<<0x3)
-#define MCF_PSC_PSCMR_ERR (0x20)
-#define MCF_PSC_PSCMR_RXIRQ_FU (0x40)
-#define MCF_PSC_PSCMR_RXRTS (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCCSR */
-#define MCF_PSC_PSCCSR_TCSEL(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCCSR_RCSEL(x) (((x)&0xF)<<0x4)
-#define MCF_PSC_PSCCSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_PSCCSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_PSCCSR_TCSEL_CTM (0x0F)
-#define MCF_PSC_PSCCSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM (0xF0)
-
-/* Bit definitions and macros for MCF_PSC_PSCSR */
-#define MCF_PSC_PSCSR_ERR (0x40)
-#define MCF_PSC_PSCSR_CDE_DEOF (0x80)
-#define MCF_PSC_PSCSR_RXRDY (0x100)
-#define MCF_PSC_PSCSR_FU (0x200)
-#define MCF_PSC_PSCSR_TXRDY (0x400)
-#define MCF_PSC_PSCSR_TXEMP_URERR (0x800)
-#define MCF_PSC_PSCSR_OE (0x1000)
-#define MCF_PSC_PSCSR_PE_CRCERR (0x2000)
-#define MCF_PSC_PSCSR_FE_PHYERR (0x4000)
-#define MCF_PSC_PSCSR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCR */
-#define MCF_PSC_PSCCR_RXC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCCR_RX_ENABLED (0x1)
-#define MCF_PSC_PSCCR_RX_DISABLED (0x2)
-#define MCF_PSC_PSCCR_TXC(x) (((x)&0x3)<<0x2)
-#define MCF_PSC_PSCCR_TX_ENABLED (0x4)
-#define MCF_PSC_PSCCR_TX_DISABLED (0x8)
-#define MCF_PSC_PSCCR_MISC(x) (((x)&0x7)<<0x4)
-#define MCF_PSC_PSCCR_NONE (0)
-#define MCF_PSC_PSCCR_RESET_MR (0x10)
-#define MCF_PSC_PSCCR_RESET_RX (0x20)
-#define MCF_PSC_PSCCR_RESET_TX (0x30)
-#define MCF_PSC_PSCCR_RESET_ERROR (0x40)
-#define MCF_PSC_PSCCR_RESET_BKCHGINT (0x50)
-#define MCF_PSC_PSCCR_START_BREAK (0x60)
-#define MCF_PSC_PSCCR_STOP_BREAK (0x70)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_8BIT */
-#define MCF_PSC_PSCRB_8BIT_RB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCRB_8BIT_RB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCRB_8BIT_RB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCRB_8BIT_RB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_8BIT */
-#define MCF_PSC_PSCTB_8BIT_TB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCTB_8BIT_TB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCTB_8BIT_TB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCTB_8BIT_TB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_16BIT */
-#define MCF_PSC_PSCRB_16BIT_RB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRB_16BIT_RB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_16BIT */
-#define MCF_PSC_PSCTB_16BIT_TB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTB_16BIT_TB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_AC97 */
-#define MCF_PSC_PSCRB_AC97_SOF (0x800)
-#define MCF_PSC_PSCRB_AC97_RB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_AC97 */
-#define MCF_PSC_PSCTB_AC97_TB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCIPCR */
-#define MCF_PSC_PSCIPCR_RESERVED (0xC)
-#define MCF_PSC_PSCIPCR_CTS (0xD)
-#define MCF_PSC_PSCIPCR_D_CTS (0x1C)
-#define MCF_PSC_PSCIPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_PSCACR */
-#define MCF_PSC_PSCACR_IEC0 (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCIMR */
-#define MCF_PSC_PSCIMR_ERR (0x40)
-#define MCF_PSC_PSCIMR_DEOF (0x80)
-#define MCF_PSC_PSCIMR_TXRDY (0x100)
-#define MCF_PSC_PSCIMR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCIMR_DB (0x400)
-#define MCF_PSC_PSCIMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCISR */
-#define MCF_PSC_PSCISR_ERR (0x40)
-#define MCF_PSC_PSCISR_DEOF (0x80)
-#define MCF_PSC_PSCISR_TXRDY (0x100)
-#define MCF_PSC_PSCISR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCISR_DB (0x400)
-#define MCF_PSC_PSCISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTUR */
-#define MCF_PSC_PSCCTUR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTLR */
-#define MCF_PSC_PSCCTLR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIP */
-#define MCF_PSC_PSCIP_CTS (0x1)
-#define MCF_PSC_PSCIP_TGL (0x40)
-#define MCF_PSC_PSCIP_LPWR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPSET */
-#define MCF_PSC_PSCOPSET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPRESET */
-#define MCF_PSC_PSCOPRESET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCSICR */
-#define MCF_PSC_PSCSICR_SIM(x) (((x)&0x7)<<0)
-#define MCF_PSC_PSCSICR_SIM_UART (0)
-#define MCF_PSC_PSCSICR_SIM_MODEM8 (0x1)
-#define MCF_PSC_PSCSICR_SIM_MODEM16 (0x2)
-#define MCF_PSC_PSCSICR_SIM_AC97 (0x3)
-#define MCF_PSC_PSCSICR_SIM_SIR (0x4)
-#define MCF_PSC_PSCSICR_SIM_MIR (0x5)
-#define MCF_PSC_PSCSICR_SIM_FIR (0x6)
-#define MCF_PSC_PSCSICR_SHDIR (0x10)
-#define MCF_PSC_PSCSICR_DTS1 (0x20)
-#define MCF_PSC_PSCSICR_AWR (0x40)
-#define MCF_PSC_PSCSICR_ACRB (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR1 */
-#define MCF_PSC_PSCIRCR1_SPUL (0x1)
-#define MCF_PSC_PSCIRCR1_SIPEN (0x2)
-#define MCF_PSC_PSCIRCR1_FD (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR2 */
-#define MCF_PSC_PSCIRCR2_NXTEOF (0x1)
-#define MCF_PSC_PSCIRCR2_ABORT (0x2)
-#define MCF_PSC_PSCIRCR2_SIPREQ (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRSDR */
-#define MCF_PSC_PSCIRSDR_IRSTIM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRMDR */
-#define MCF_PSC_PSCIRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_PSCIRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRFDR */
-#define MCF_PSC_PSCIRFDR_F_FDIV(x) (((x)&0xF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCNT */
-#define MCF_PSC_PSCRFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCNT */
-#define MCF_PSC_PSCTFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFDR */
-#define MCF_PSC_PSCRFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFSR */
-#define MCF_PSC_PSCRFSR_EMT (0x1)
-#define MCF_PSC_PSCRFSR_ALARM (0x2)
-#define MCF_PSC_PSCRFSR_FU (0x4)
-#define MCF_PSC_PSCRFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCRFSR_OF (0x10)
-#define MCF_PSC_PSCRFSR_UF (0x20)
-#define MCF_PSC_PSCRFSR_RXW (0x40)
-#define MCF_PSC_PSCRFSR_FAE (0x80)
-#define MCF_PSC_PSCRFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCRFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCRFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCRFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCRFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCRFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCRFSR_TXW (0x4000)
-#define MCF_PSC_PSCRFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCR */
-#define MCF_PSC_PSCRFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCRFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCRFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCRFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCRFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCRFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCRFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFAR */
-#define MCF_PSC_PSCRFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFRP */
-#define MCF_PSC_PSCRFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFWP */
-#define MCF_PSC_PSCRFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLRFP */
-#define MCF_PSC_PSCRLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLWFP */
-#define MCF_PSC_PSCRLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFDR */
-#define MCF_PSC_PSCTFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFSR */
-#define MCF_PSC_PSCTFSR_EMT (0x1)
-#define MCF_PSC_PSCTFSR_ALARM (0x2)
-#define MCF_PSC_PSCTFSR_FU (0x4)
-#define MCF_PSC_PSCTFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCTFSR_OF (0x10)
-#define MCF_PSC_PSCTFSR_UF (0x20)
-#define MCF_PSC_PSCTFSR_RXW (0x40)
-#define MCF_PSC_PSCTFSR_FAE (0x80)
-#define MCF_PSC_PSCTFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCTFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCTFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCTFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCTFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCTFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCTFSR_TXW (0x4000)
-#define MCF_PSC_PSCTFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCR */
-#define MCF_PSC_PSCTFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCTFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCTFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCTFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCTFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCTFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCTFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCTFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCTFCR_TIMER (0x10000000)
-#define MCF_PSC_PSCTFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFAR */
-#define MCF_PSC_PSCTFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFRP */
-#define MCF_PSC_PSCTFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFWP */
-#define MCF_PSC_PSCTFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLRFP */
-#define MCF_PSC_PSCTLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLWFP */
-#define MCF_PSC_PSCTLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-
-#endif /* __MCF5475_PSC_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_SDRAMC.h b/BaS_gcc/tos/jtagwait/include/MCF5475_SDRAMC.h
deleted file mode 100644
index 6cdbd68..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_SDRAMC.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SDRAMC_H__
-#define __MCF5475_SDRAMC_H__
-
-
-/*********************************************************************
-*
-* Synchronous DRAM Controller (SDRAMC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(volatile uint32_t*)(&_MBAR[0x4]))
-#define MCF_SDRAMC_CS0CFG (*(volatile uint32_t*)(&_MBAR[0x20]))
-#define MCF_SDRAMC_CS1CFG (*(volatile uint32_t*)(&_MBAR[0x24]))
-#define MCF_SDRAMC_CS2CFG (*(volatile uint32_t*)(&_MBAR[0x28]))
-#define MCF_SDRAMC_CS3CFG (*(volatile uint32_t*)(&_MBAR[0x2C]))
-#define MCF_SDRAMC_SDMR (*(volatile uint32_t*)(&_MBAR[0x100]))
-#define MCF_SDRAMC_SDCR (*(volatile uint32_t*)(&_MBAR[0x104]))
-#define MCF_SDRAMC_SDCFG1 (*(volatile uint32_t*)(&_MBAR[0x108]))
-#define MCF_SDRAMC_SDCFG2 (*(volatile uint32_t*)(&_MBAR[0x10C]))
-#define MCF_SDRAMC_CSCFG(x) (*(volatile uint32_t*)(&_MBAR[0x20 + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x3)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x3)<<0x2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x3)<<0x4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x3)<<0x6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x3)<<0x8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x1)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x2)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x3)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSCFG */
-#define MCF_SDRAMC_CSCFG_CSSZ(x) (((x)&0x1F)<<0)
-#define MCF_SDRAMC_CSCFG_CSSZ_DISABLED (0)
-#define MCF_SDRAMC_CSCFG_CSSZ_1MBYTE (0x13)
-#define MCF_SDRAMC_CSCFG_CSSZ_2MBYTE (0x14)
-#define MCF_SDRAMC_CSCFG_CSSZ_4MBYTE (0x15)
-#define MCF_SDRAMC_CSCFG_CSSZ_8MBYTE (0x16)
-#define MCF_SDRAMC_CSCFG_CSSZ_16MBYTE (0x17)
-#define MCF_SDRAMC_CSCFG_CSSZ_32MBYTE (0x18)
-#define MCF_SDRAMC_CSCFG_CSSZ_64MBYTE (0x19)
-#define MCF_SDRAMC_CSCFG_CSSZ_128MBYTE (0x1A)
-#define MCF_SDRAMC_CSCFG_CSSZ_256MBYTE (0x1B)
-#define MCF_SDRAMC_CSCFG_CSSZ_512MBYTE (0x1C)
-#define MCF_SDRAMC_CSCFG_CSSZ_1GBYTE (0x1D)
-#define MCF_SDRAMC_CSCFG_CSSZ_2GBYTE (0x1E)
-#define MCF_SDRAMC_CSCFG_CSSZ_4GBYTE (0x1F)
-#define MCF_SDRAMC_CSCFG_CSBA(x) (((x)&0xFFF)<<0x14)
-#define MCF_SDRAMC_CSCFG_BA(x) ((x)&0xFFF00000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x10000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0xFFF)<<0x12)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x3)<<0x1E)
-#define MCF_SDRAMC_SDMR_BK_LMR (0)
-#define MCF_SDRAMC_SDMR_BK_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x2)
-#define MCF_SDRAMC_SDCR_IREF (0x4)
-#define MCF_SDRAMC_SDCR_BUFF (0x10)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x3F)<<0x10)
-#define MCF_SDRAMC_SDCR_DRIVE (0x400000)
-#define MCF_SDRAMC_SDCR_AP (0x800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x3)<<0x18)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x7)<<0x4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x7)<<0xC)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x7)<<0x10)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x7)<<0x18)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0xF)<<0x1C)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0xF)<<0x10)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0xF)<<0x18)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0xF)<<0x1C)
-
-
-#endif /* __MCF5475_SDRAMC_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_SEC.h b/BaS_gcc/tos/jtagwait/include/MCF5475_SEC.h
deleted file mode 100644
index 8deff0b..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_SEC.h
+++ /dev/null
@@ -1,398 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SEC_H__
-#define __MCF5475_SEC_H__
-
-
-/*********************************************************************
-*
-* Integrated Security Engine (SEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(volatile uint32_t*)(&_MBAR[0x21000]))
-#define MCF_SEC_EUACRL (*(volatile uint32_t*)(&_MBAR[0x21004]))
-#define MCF_SEC_SIMRH (*(volatile uint32_t*)(&_MBAR[0x21008]))
-#define MCF_SEC_SIMRL (*(volatile uint32_t*)(&_MBAR[0x2100C]))
-#define MCF_SEC_SISRH (*(volatile uint32_t*)(&_MBAR[0x21010]))
-#define MCF_SEC_SISRL (*(volatile uint32_t*)(&_MBAR[0x21014]))
-#define MCF_SEC_SICRH (*(volatile uint32_t*)(&_MBAR[0x21018]))
-#define MCF_SEC_SICRL (*(volatile uint32_t*)(&_MBAR[0x2101C]))
-#define MCF_SEC_SIDR (*(volatile uint32_t*)(&_MBAR[0x21020]))
-#define MCF_SEC_EUASRH (*(volatile uint32_t*)(&_MBAR[0x21028]))
-#define MCF_SEC_EUASRL (*(volatile uint32_t*)(&_MBAR[0x2102C]))
-#define MCF_SEC_SMCR (*(volatile uint32_t*)(&_MBAR[0x21030]))
-#define MCF_SEC_MEAR (*(volatile uint32_t*)(&_MBAR[0x21038]))
-#define MCF_SEC_CCCR0 (*(volatile uint32_t*)(&_MBAR[0x2200C]))
-#define MCF_SEC_CCPSRH0 (*(volatile uint32_t*)(&_MBAR[0x22010]))
-#define MCF_SEC_CCPSRL0 (*(volatile uint32_t*)(&_MBAR[0x22014]))
-#define MCF_SEC_CDPR0 (*(volatile uint32_t*)(&_MBAR[0x22044]))
-#define MCF_SEC_FR0 (*(volatile uint32_t*)(&_MBAR[0x2204C]))
-#define MCF_SEC_CCCR1 (*(volatile uint32_t*)(&_MBAR[0x2300C]))
-#define MCF_SEC_CCPSRH1 (*(volatile uint32_t*)(&_MBAR[0x23010]))
-#define MCF_SEC_CCPSRL1 (*(volatile uint32_t*)(&_MBAR[0x23014]))
-#define MCF_SEC_CDPR1 (*(volatile uint32_t*)(&_MBAR[0x23044]))
-#define MCF_SEC_FR1 (*(volatile uint32_t*)(&_MBAR[0x2304C]))
-#define MCF_SEC_AFRCR (*(volatile uint32_t*)(&_MBAR[0x28018]))
-#define MCF_SEC_AFSR (*(volatile uint32_t*)(&_MBAR[0x28028]))
-#define MCF_SEC_AFISR (*(volatile uint32_t*)(&_MBAR[0x28030]))
-#define MCF_SEC_AFIMR (*(volatile uint32_t*)(&_MBAR[0x28038]))
-#define MCF_SEC_DRCR (*(volatile uint32_t*)(&_MBAR[0x2A018]))
-#define MCF_SEC_DSR (*(volatile uint32_t*)(&_MBAR[0x2A028]))
-#define MCF_SEC_DISR (*(volatile uint32_t*)(&_MBAR[0x2A030]))
-#define MCF_SEC_DIMR (*(volatile uint32_t*)(&_MBAR[0x2A038]))
-#define MCF_SEC_MDRCR (*(volatile uint32_t*)(&_MBAR[0x2C018]))
-#define MCF_SEC_MDSR (*(volatile uint32_t*)(&_MBAR[0x2C028]))
-#define MCF_SEC_MDISR (*(volatile uint32_t*)(&_MBAR[0x2C030]))
-#define MCF_SEC_MDIMR (*(volatile uint32_t*)(&_MBAR[0x2C038]))
-#define MCF_SEC_RNGRCR (*(volatile uint32_t*)(&_MBAR[0x2E018]))
-#define MCF_SEC_RNGSR (*(volatile uint32_t*)(&_MBAR[0x2E028]))
-#define MCF_SEC_RNGISR (*(volatile uint32_t*)(&_MBAR[0x2E030]))
-#define MCF_SEC_RNGIMR (*(volatile uint32_t*)(&_MBAR[0x2E038]))
-#define MCF_SEC_AESRCR (*(volatile uint32_t*)(&_MBAR[0x32018]))
-#define MCF_SEC_AESSR (*(volatile uint32_t*)(&_MBAR[0x32028]))
-#define MCF_SEC_AESISR (*(volatile uint32_t*)(&_MBAR[0x32030]))
-#define MCF_SEC_AESIMR (*(volatile uint32_t*)(&_MBAR[0x32038]))
-#define MCF_SEC_CCCRn(x) (*(volatile uint32_t*)(&_MBAR[0x2200C + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRHn(x) (*(volatile uint32_t*)(&_MBAR[0x22010 + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRLn(x) (*(volatile uint32_t*)(&_MBAR[0x22014 + ((x)*0x1000)]))
-#define MCF_SEC_CDPRn(x) (*(volatile uint32_t*)(&_MBAR[0x22044 + ((x)*0x1000)]))
-#define MCF_SEC_FRn(x) (*(volatile uint32_t*)(&_MBAR[0x2204C + ((x)*0x1000)]))
-
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUACRH_AFFEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_AFFEU_CHA0 (0x1)
-#define MCF_SEC_EUACRH_AFFEU_CHA1 (0x2)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x200)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0xF)<<0x18)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x1000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x10000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x20000)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x8000000)
-#define MCF_SEC_SIMRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x40)
-#define MCF_SEC_SIMRL_DEU_DN (0x100)
-#define MCF_SEC_SIMRL_DEU_ERR (0x200)
-#define MCF_SEC_SIMRL_AESU_DN (0x1000)
-#define MCF_SEC_SIMRL_AESU_ERR (0x2000)
-#define MCF_SEC_SIMRL_MDEU_DN (0x10000)
-#define MCF_SEC_SIMRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SIMRL_AFEU_DN (0x100000)
-#define MCF_SEC_SIMRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SIMRL_RNG_DN (0x1000000)
-#define MCF_SEC_SIMRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x8000000)
-#define MCF_SEC_SISRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SISRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SISRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x40)
-#define MCF_SEC_SISRL_DEU_DN (0x100)
-#define MCF_SEC_SISRL_DEU_ERR (0x200)
-#define MCF_SEC_SISRL_AESU_DN (0x1000)
-#define MCF_SEC_SISRL_AESU_ERR (0x2000)
-#define MCF_SEC_SISRL_MDEU_DN (0x10000)
-#define MCF_SEC_SISRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SISRL_AFEU_DN (0x100000)
-#define MCF_SEC_SISRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SISRL_RNG_DN (0x1000000)
-#define MCF_SEC_SISRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x8000000)
-#define MCF_SEC_SICRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SICRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SICRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x40)
-#define MCF_SEC_SICRL_DEU_DN (0x100)
-#define MCF_SEC_SICRL_DEU_ERR (0x200)
-#define MCF_SEC_SICRL_AESU_DN (0x1000)
-#define MCF_SEC_SICRL_AESU_ERR (0x2000)
-#define MCF_SEC_SICRL_MDEU_DN (0x10000)
-#define MCF_SEC_SICRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SICRL_AFEU_DN (0x100000)
-#define MCF_SEC_SICRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SICRL_RNG_DN (0x1000000)
-#define MCF_SEC_SICRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SIDR */
-#define MCF_SEC_SIDR_VERSION(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0xF)<<0x4)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x10)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x20)
-#define MCF_SEC_SMCR_SWR (0x1000000)
-
-/* Bit definitions and macros for MCF_SEC_MEAR */
-#define MCF_SEC_MEAR_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x1)
-#define MCF_SEC_CCCRn_CDIE (0x2)
-#define MCF_SEC_CCCRn_NT (0x4)
-#define MCF_SEC_CCCRn_NE (0x8)
-#define MCF_SEC_CCCRn_WE (0x10)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x7)<<0x8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0xFF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x100)
-#define MCF_SEC_CCPSRLn_SERR (0x200)
-#define MCF_SEC_CCPSRLn_DERR (0x400)
-#define MCF_SEC_CCPSRLn_PERR (0x1000)
-#define MCF_SEC_CCPSRLn_TEA (0x2000)
-#define MCF_SEC_CCPSRLn_SD (0x10000)
-#define MCF_SEC_CCPSRLn_PD (0x20000)
-#define MCF_SEC_CCPSRLn_SRD (0x40000)
-#define MCF_SEC_CCPSRLn_PRD (0x80000)
-#define MCF_SEC_CCPSRLn_SG (0x100000)
-#define MCF_SEC_CCPSRLn_PG (0x200000)
-#define MCF_SEC_CCPSRLn_SR (0x400000)
-#define MCF_SEC_CCPSRLn_PR (0x800000)
-#define MCF_SEC_CCPSRLn_MO (0x1000000)
-#define MCF_SEC_CCPSRLn_MI (0x2000000)
-#define MCF_SEC_CCPSRLn_STAT (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_CDPRn */
-#define MCF_SEC_CDPRn_CDP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_FRn */
-#define MCF_SEC_FRn_FETCH_ADDR(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x1000000)
-#define MCF_SEC_AFRCR_MI (0x2000000)
-#define MCF_SEC_AFRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x1000000)
-#define MCF_SEC_AFSR_ID (0x2000000)
-#define MCF_SEC_AFSR_IE (0x4000000)
-#define MCF_SEC_AFSR_OFR (0x8000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x10000)
-#define MCF_SEC_AFISR_KSE (0x20000)
-#define MCF_SEC_AFISR_CE (0x40000)
-#define MCF_SEC_AFISR_ERE (0x80000)
-#define MCF_SEC_AFISR_IE (0x100000)
-#define MCF_SEC_AFISR_OFU (0x2000000)
-#define MCF_SEC_AFISR_IFO (0x4000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x10000)
-#define MCF_SEC_AFIMR_KSE (0x20000)
-#define MCF_SEC_AFIMR_CE (0x40000)
-#define MCF_SEC_AFIMR_ERE (0x80000)
-#define MCF_SEC_AFIMR_IE (0x100000)
-#define MCF_SEC_AFIMR_OFU (0x2000000)
-#define MCF_SEC_AFIMR_IFO (0x4000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x1000000)
-#define MCF_SEC_DRCR_MI (0x2000000)
-#define MCF_SEC_DRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x1000000)
-#define MCF_SEC_DSR_ID (0x2000000)
-#define MCF_SEC_DSR_IE (0x4000000)
-#define MCF_SEC_DSR_OFR (0x8000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x10000)
-#define MCF_SEC_DISR_KSE (0x20000)
-#define MCF_SEC_DISR_CE (0x40000)
-#define MCF_SEC_DISR_ERE (0x80000)
-#define MCF_SEC_DISR_IE (0x100000)
-#define MCF_SEC_DISR_KPE (0x200000)
-#define MCF_SEC_DISR_OFU (0x2000000)
-#define MCF_SEC_DISR_IFO (0x4000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x10000)
-#define MCF_SEC_DIMR_KSE (0x20000)
-#define MCF_SEC_DIMR_CE (0x40000)
-#define MCF_SEC_DIMR_ERE (0x80000)
-#define MCF_SEC_DIMR_IE (0x100000)
-#define MCF_SEC_DIMR_KPE (0x200000)
-#define MCF_SEC_DIMR_OFU (0x2000000)
-#define MCF_SEC_DIMR_IFO (0x4000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x1000000)
-#define MCF_SEC_MDRCR_MI (0x2000000)
-#define MCF_SEC_MDRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x1000000)
-#define MCF_SEC_MDSR_ID (0x2000000)
-#define MCF_SEC_MDSR_IE (0x4000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x10000)
-#define MCF_SEC_MDISR_KSE (0x20000)
-#define MCF_SEC_MDISR_CE (0x40000)
-#define MCF_SEC_MDISR_ERE (0x80000)
-#define MCF_SEC_MDISR_IE (0x100000)
-#define MCF_SEC_MDISR_IFO (0x4000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x10000)
-#define MCF_SEC_MDIMR_KSE (0x20000)
-#define MCF_SEC_MDIMR_CE (0x40000)
-#define MCF_SEC_MDIMR_ERE (0x80000)
-#define MCF_SEC_MDIMR_IE (0x100000)
-#define MCF_SEC_MDIMR_IFO (0x4000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x1000000)
-#define MCF_SEC_RNGRCR_MI (0x2000000)
-#define MCF_SEC_RNGRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x1000000)
-#define MCF_SEC_RNGSR_IE (0x4000000)
-#define MCF_SEC_RNGSR_OFR (0x8000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x100000)
-#define MCF_SEC_RNGISR_OFU (0x2000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x100000)
-#define MCF_SEC_RNGIMR_OFU (0x2000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x1000000)
-#define MCF_SEC_AESRCR_MI (0x2000000)
-#define MCF_SEC_AESRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x1000000)
-#define MCF_SEC_AESSR_ID (0x2000000)
-#define MCF_SEC_AESSR_IE (0x4000000)
-#define MCF_SEC_AESSR_OFR (0x8000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x10000)
-#define MCF_SEC_AESISR_KSE (0x20000)
-#define MCF_SEC_AESISR_CE (0x40000)
-#define MCF_SEC_AESISR_ERE (0x80000)
-#define MCF_SEC_AESISR_IE (0x100000)
-#define MCF_SEC_AESISR_OFU (0x2000000)
-#define MCF_SEC_AESISR_IFO (0x4000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x10000)
-#define MCF_SEC_AESIMR_KSE (0x20000)
-#define MCF_SEC_AESIMR_CE (0x40000)
-#define MCF_SEC_AESIMR_ERE (0x80000)
-#define MCF_SEC_AESIMR_IE (0x100000)
-#define MCF_SEC_AESIMR_OFU (0x2000000)
-#define MCF_SEC_AESIMR_IFO (0x4000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-
-#endif /* __MCF5475_SEC_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_SIU.h b/BaS_gcc/tos/jtagwait/include/MCF5475_SIU.h
deleted file mode 100644
index efb2896..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_SIU.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SIU_H__
-#define __MCF5475_SIU_H__
-
-
-/*********************************************************************
-*
-* System Integration Unit (SIU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(volatile uint32_t*)(&_MBAR[0x10]))
-#define MCF_SIU_SECSACR (*(volatile uint32_t*)(&_MBAR[0x38]))
-#define MCF_SIU_RSR (*(volatile uint32_t*)(&_MBAR[0x44]))
-#define MCF_SIU_JTAGID (*(volatile uint32_t*)(&_MBAR[0x50]))
-
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x8000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x1)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x1)
-#define MCF_SIU_RSR_RSTWD (0x2)
-#define MCF_SIU_RSR_RSTJTG (0x8)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_JTAGID(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF5475_SIU_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_SLT.h b/BaS_gcc/tos/jtagwait/include/MCF5475_SLT.h
deleted file mode 100644
index 20e8558..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_SLT.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SLT_H__
-#define __MCF5475_SLT_H__
-
-
-/*********************************************************************
-*
-* Slice Timers (SLT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SLT0_STCNT (*(volatile uint32_t*)(&_MBAR[0x900]))
-#define MCF_SLT0_SCR (*(volatile uint32_t*)(&_MBAR[0x904]))
-#define MCF_SLT0_SCNT (*(volatile uint32_t*)(&_MBAR[0x908]))
-#define MCF_SLT0_SSR (*(volatile uint32_t*)(&_MBAR[0x90C]))
-
-#define MCF_SLT1_STCNT (*(volatile uint32_t*)(&_MBAR[0x910]))
-#define MCF_SLT1_SCR (*(volatile uint32_t*)(&_MBAR[0x914]))
-#define MCF_SLT1_SCNT (*(volatile uint32_t*)(&_MBAR[0x918]))
-#define MCF_SLT1_SSR (*(volatile uint32_t*)(&_MBAR[0x91C]))
-
-#define MCF_SLT_STCNT(x) (*(volatile uint32_t*)(&_MBAR[0x900 + ((x)*0x10)]))
-#define MCF_SLT_SCR(x) (*(volatile uint32_t*)(&_MBAR[0x904 + ((x)*0x10)]))
-#define MCF_SLT_SCNT(x) (*(volatile int32_t*)(&_MBAR[0x908 + ((x)*0x10)]))
-#define MCF_SLT_SSR(x) (*(volatile uint32_t*)(&_MBAR[0x90C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_SLT_STCNT */
-#define MCF_SLT_STCNT_TC(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x1000000)
-#define MCF_SLT_SCR_IEN (0x2000000)
-#define MCF_SLT_SCR_RUN (0x4000000)
-
-/* Bit definitions and macros for MCF_SLT_SCNT */
-#define MCF_SLT_SCNT_CNT(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x1000000)
-#define MCF_SLT_SSR_BE (0x2000000)
-
-
-#endif /* __MCF5475_SLT_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_SRAM.h b/BaS_gcc/tos/jtagwait/include/MCF5475_SRAM.h
deleted file mode 100644
index d111f13..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_SRAM.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SRAM_H__
-#define __MCF5475_SRAM_H__
-
-
-/*********************************************************************
-*
-* System SRAM Module (SRAM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(volatile uint32_t*)(&__MBAR[0x1FFC0]))
-#define MCF_SRAM_TCCR (*(volatile uint32_t*)(&__MBAR[0x1FFC4]))
-#define MCF_SRAM_TCCRDR (*(volatile uint32_t*)(&__MBAR[0x1FFC8]))
-#define MCF_SRAM_TCCRDW (*(volatile uint32_t*)(&__MBAR[0x1FFCC]))
-#define MCF_SRAM_TCCRSEC (*(volatile uint32_t*)(&__MBAR[0x1FFD0]))
-
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x10000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-
-#endif /* __MCF5475_SRAM_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_USB.h b/BaS_gcc/tos/jtagwait/include/MCF5475_USB.h
deleted file mode 100644
index c60273c..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_USB.h
+++ /dev/null
@@ -1,554 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_USB_H__
-#define __MCF5475_USB_H__
-
-
-/*********************************************************************
-*
-* Universal Serial Bus Interface (USB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(volatile uint8_t *)(&__MBAR[0xB000]))
-#define MCF_USB_USBAIMR (*(volatile uint8_t *)(&__MBAR[0xB001]))
-#define MCF_USB_EPINFO (*(volatile uint8_t *)(&__MBAR[0xB003]))
-#define MCF_USB_CFGR (*(volatile uint8_t *)(&__MBAR[0xB004]))
-#define MCF_USB_CFGAR (*(volatile uint8_t *)(&__MBAR[0xB005]))
-#define MCF_USB_SPEEDR (*(volatile uint8_t *)(&__MBAR[0xB006]))
-#define MCF_USB_FRMNUMR (*(volatile uint16_t*)(&__MBAR[0xB00E]))
-#define MCF_USB_EPTNR (*(volatile uint16_t*)(&__MBAR[0xB010]))
-#define MCF_USB_IFUR (*(volatile uint16_t*)(&__MBAR[0xB014]))
-#define MCF_USB_IFR0 (*(volatile uint16_t*)(&__MBAR[0xB040]))
-#define MCF_USB_IFR1 (*(volatile uint16_t*)(&__MBAR[0xB042]))
-#define MCF_USB_IFR2 (*(volatile uint16_t*)(&__MBAR[0xB044]))
-#define MCF_USB_IFR3 (*(volatile uint16_t*)(&__MBAR[0xB046]))
-#define MCF_USB_IFR4 (*(volatile uint16_t*)(&__MBAR[0xB048]))
-#define MCF_USB_IFR5 (*(volatile uint16_t*)(&__MBAR[0xB04A]))
-#define MCF_USB_IFR6 (*(volatile uint16_t*)(&__MBAR[0xB04C]))
-#define MCF_USB_IFR7 (*(volatile uint16_t*)(&__MBAR[0xB04E]))
-#define MCF_USB_IFR8 (*(volatile uint16_t*)(&__MBAR[0xB050]))
-#define MCF_USB_IFR9 (*(volatile uint16_t*)(&__MBAR[0xB052]))
-#define MCF_USB_IFR10 (*(volatile uint16_t*)(&__MBAR[0xB054]))
-#define MCF_USB_IFR11 (*(volatile uint16_t*)(&__MBAR[0xB056]))
-#define MCF_USB_IFR12 (*(volatile uint16_t*)(&__MBAR[0xB058]))
-#define MCF_USB_IFR13 (*(volatile uint16_t*)(&__MBAR[0xB05A]))
-#define MCF_USB_IFR14 (*(volatile uint16_t*)(&__MBAR[0xB05C]))
-#define MCF_USB_IFR15 (*(volatile uint16_t*)(&__MBAR[0xB05E]))
-#define MCF_USB_IFR16 (*(volatile uint16_t*)(&__MBAR[0xB060]))
-#define MCF_USB_IFR17 (*(volatile uint16_t*)(&__MBAR[0xB062]))
-#define MCF_USB_IFR18 (*(volatile uint16_t*)(&__MBAR[0xB064]))
-#define MCF_USB_IFR19 (*(volatile uint16_t*)(&__MBAR[0xB066]))
-#define MCF_USB_IFR20 (*(volatile uint16_t*)(&__MBAR[0xB068]))
-#define MCF_USB_IFR21 (*(volatile uint16_t*)(&__MBAR[0xB06A]))
-#define MCF_USB_IFR22 (*(volatile uint16_t*)(&__MBAR[0xB06C]))
-#define MCF_USB_IFR23 (*(volatile uint16_t*)(&__MBAR[0xB06E]))
-#define MCF_USB_IFR24 (*(volatile uint16_t*)(&__MBAR[0xB070]))
-#define MCF_USB_IFR25 (*(volatile uint16_t*)(&__MBAR[0xB072]))
-#define MCF_USB_IFR26 (*(volatile uint16_t*)(&__MBAR[0xB074]))
-#define MCF_USB_IFR27 (*(volatile uint16_t*)(&__MBAR[0xB076]))
-#define MCF_USB_IFR28 (*(volatile uint16_t*)(&__MBAR[0xB078]))
-#define MCF_USB_IFR29 (*(volatile uint16_t*)(&__MBAR[0xB07A]))
-#define MCF_USB_IFR30 (*(volatile uint16_t*)(&__MBAR[0xB07C]))
-#define MCF_USB_IFR31 (*(volatile uint16_t*)(&__MBAR[0xB07E]))
-#define MCF_USB_PPCNT (*(volatile uint16_t*)(&__MBAR[0xB080]))
-#define MCF_USB_DPCNT (*(volatile uint16_t*)(&__MBAR[0xB082]))
-#define MCF_USB_CRCECNT (*(volatile uint16_t*)(&__MBAR[0xB084]))
-#define MCF_USB_BSECNT (*(volatile uint16_t*)(&__MBAR[0xB086]))
-#define MCF_USB_PIDECNT (*(volatile uint16_t*)(&__MBAR[0xB088]))
-#define MCF_USB_FRMECNT (*(volatile uint16_t*)(&__MBAR[0xB08A]))
-#define MCF_USB_TXPCNT (*(volatile uint16_t*)(&__MBAR[0xB08C]))
-#define MCF_USB_CNTOVR (*(volatile uint8_t *)(&__MBAR[0xB08E]))
-#define MCF_USB_EP0ACR (*(volatile uint8_t *)(&__MBAR[0xB101]))
-#define MCF_USB_EP0MPSR (*(volatile uint16_t*)(&__MBAR[0xB102]))
-#define MCF_USB_EP0IFR (*(volatile uint8_t *)(&__MBAR[0xB104]))
-#define MCF_USB_EP0SR (*(volatile uint8_t *)(&__MBAR[0xB105]))
-#define MCF_USB_BMRTR (*(volatile uint8_t *)(&__MBAR[0xB106]))
-#define MCF_USB_BRTR (*(volatile uint8_t *)(&__MBAR[0xB107]))
-#define MCF_USB_WVALUER (*(volatile uint16_t*)(&__MBAR[0xB108]))
-#define MCF_USB_WINDEXR (*(volatile uint16_t*)(&__MBAR[0xB10A]))
-#define MCF_USB_WLENGTHR (*(volatile uint16_t*)(&__MBAR[0xB10C]))
-#define MCF_USB_EP1OUTACR (*(volatile uint8_t *)(&__MBAR[0xB131]))
-#define MCF_USB_EP1OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB132]))
-#define MCF_USB_EP1OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB134]))
-#define MCF_USB_EP1OUTSR (*(volatile uint8_t *)(&__MBAR[0xB135]))
-#define MCF_USB_EP1OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB13E]))
-#define MCF_USB_EP1INACR (*(volatile uint8_t *)(&__MBAR[0xB149]))
-#define MCF_USB_EP1INMPSR (*(volatile uint16_t*)(&__MBAR[0xB14A]))
-#define MCF_USB_EP1INIFR (*(volatile uint8_t *)(&__MBAR[0xB14C]))
-#define MCF_USB_EP1INSR (*(volatile uint8_t *)(&__MBAR[0xB14D]))
-#define MCF_USB_EP1INSFR (*(volatile uint16_t*)(&__MBAR[0xB156]))
-#define MCF_USB_EP2OUTACR (*(volatile uint8_t *)(&__MBAR[0xB161]))
-#define MCF_USB_EP2OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB162]))
-#define MCF_USB_EP2OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB164]))
-#define MCF_USB_EP2OUTSR (*(volatile uint8_t *)(&__MBAR[0xB165]))
-#define MCF_USB_EP2OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB16E]))
-#define MCF_USB_EP2INACR (*(volatile uint8_t *)(&__MBAR[0xB179]))
-#define MCF_USB_EP2INMPSR (*(volatile uint16_t*)(&__MBAR[0xB17A]))
-#define MCF_USB_EP2INIFR (*(volatile uint8_t *)(&__MBAR[0xB17C]))
-#define MCF_USB_EP2INSR (*(volatile uint8_t *)(&__MBAR[0xB17D]))
-#define MCF_USB_EP2INSFR (*(volatile uint16_t*)(&__MBAR[0xB186]))
-#define MCF_USB_EP3OUTACR (*(volatile uint8_t *)(&__MBAR[0xB191]))
-#define MCF_USB_EP3OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB192]))
-#define MCF_USB_EP3OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB194]))
-#define MCF_USB_EP3OUTSR (*(volatile uint8_t *)(&__MBAR[0xB195]))
-#define MCF_USB_EP3OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB19E]))
-#define MCF_USB_EP3INACR (*(volatile uint8_t *)(&__MBAR[0xB1A9]))
-#define MCF_USB_EP3INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1AA]))
-#define MCF_USB_EP3INIFR (*(volatile uint8_t *)(&__MBAR[0xB1AC]))
-#define MCF_USB_EP3INSR (*(volatile uint8_t *)(&__MBAR[0xB1AD]))
-#define MCF_USB_EP3INSFR (*(volatile uint16_t*)(&__MBAR[0xB1B6]))
-#define MCF_USB_EP4OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1C1]))
-#define MCF_USB_EP4OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1C2]))
-#define MCF_USB_EP4OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1C4]))
-#define MCF_USB_EP4OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1C5]))
-#define MCF_USB_EP4OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1CE]))
-#define MCF_USB_EP4INACR (*(volatile uint8_t *)(&__MBAR[0xB1D9]))
-#define MCF_USB_EP4INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1DA]))
-#define MCF_USB_EP4INIFR (*(volatile uint8_t *)(&__MBAR[0xB1DC]))
-#define MCF_USB_EP4INSR (*(volatile uint8_t *)(&__MBAR[0xB1DD]))
-#define MCF_USB_EP4INSFR (*(volatile uint16_t*)(&__MBAR[0xB1E6]))
-#define MCF_USB_EP5OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1F1]))
-#define MCF_USB_EP5OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1F2]))
-#define MCF_USB_EP5OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1F4]))
-#define MCF_USB_EP5OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1F5]))
-#define MCF_USB_EP5OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1FE]))
-#define MCF_USB_EP5INACR (*(volatile uint8_t *)(&__MBAR[0xB209]))
-#define MCF_USB_EP5INMPSR (*(volatile uint16_t*)(&__MBAR[0xB20A]))
-#define MCF_USB_EP5INIFR (*(volatile uint8_t *)(&__MBAR[0xB20C]))
-#define MCF_USB_EP5INSR (*(volatile uint8_t *)(&__MBAR[0xB20D]))
-#define MCF_USB_EP5INSFR (*(volatile uint16_t*)(&__MBAR[0xB216]))
-#define MCF_USB_EP6OUTACR (*(volatile uint8_t *)(&__MBAR[0xB221]))
-#define MCF_USB_EP6OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB222]))
-#define MCF_USB_EP6OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB224]))
-#define MCF_USB_EP6OUTSR (*(volatile uint8_t *)(&__MBAR[0xB225]))
-#define MCF_USB_EP6OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB22E]))
-#define MCF_USB_EP6INACR (*(volatile uint8_t *)(&__MBAR[0xB239]))
-#define MCF_USB_EP6INMPSR (*(volatile uint16_t*)(&__MBAR[0xB23A]))
-#define MCF_USB_EP6INIFR (*(volatile uint8_t *)(&__MBAR[0xB23C]))
-#define MCF_USB_EP6INSR (*(volatile uint8_t *)(&__MBAR[0xB23D]))
-#define MCF_USB_EP6INSFR (*(volatile uint16_t*)(&__MBAR[0xB246]))
-#define MCF_USB_USBSR (*(volatile uint32_t*)(&__MBAR[0xB400]))
-#define MCF_USB_USBCR (*(volatile uint32_t*)(&__MBAR[0xB404]))
-#define MCF_USB_DRAMCR (*(volatile uint32_t*)(&__MBAR[0xB408]))
-#define MCF_USB_DRAMDR (*(volatile uint32_t*)(&__MBAR[0xB40C]))
-#define MCF_USB_USBISR (*(volatile uint32_t*)(&__MBAR[0xB410]))
-#define MCF_USB_USBIMR (*(volatile uint32_t*)(&__MBAR[0xB414]))
-#define MCF_USB_EP0STAT (*(volatile uint32_t*)(&__MBAR[0xB440]))
-#define MCF_USB_EP0ISR (*(volatile uint32_t*)(&__MBAR[0xB444]))
-#define MCF_USB_EP0IMR (*(volatile uint32_t*)(&__MBAR[0xB448]))
-#define MCF_USB_EP0FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB44C]))
-#define MCF_USB_EP0FDR (*(volatile uint32_t*)(&__MBAR[0xB450]))
-#define MCF_USB_EP0FSR (*(volatile uint32_t*)(&__MBAR[0xB454]))
-#define MCF_USB_EP0FCR (*(volatile uint32_t*)(&__MBAR[0xB458]))
-#define MCF_USB_EP0FAR (*(volatile uint32_t*)(&__MBAR[0xB45C]))
-#define MCF_USB_EP0FRP (*(volatile uint32_t*)(&__MBAR[0xB460]))
-#define MCF_USB_EP0FWP (*(volatile uint32_t*)(&__MBAR[0xB464]))
-#define MCF_USB_EP0LRFP (*(volatile uint32_t*)(&__MBAR[0xB468]))
-#define MCF_USB_EP0LWFP (*(volatile uint32_t*)(&__MBAR[0xB46C]))
-#define MCF_USB_EP1STAT (*(volatile uint32_t*)(&__MBAR[0xB470]))
-#define MCF_USB_EP1ISR (*(volatile uint32_t*)(&__MBAR[0xB474]))
-#define MCF_USB_EP1IMR (*(volatile uint32_t*)(&__MBAR[0xB478]))
-#define MCF_USB_EP1FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB47C]))
-#define MCF_USB_EP1FDR (*(volatile uint32_t*)(&__MBAR[0xB480]))
-#define MCF_USB_EP1FSR (*(volatile uint32_t*)(&__MBAR[0xB484]))
-#define MCF_USB_EP1FCR (*(volatile uint32_t*)(&__MBAR[0xB488]))
-#define MCF_USB_EP1FAR (*(volatile uint32_t*)(&__MBAR[0xB48C]))
-#define MCF_USB_EP1FRP (*(volatile uint32_t*)(&__MBAR[0xB490]))
-#define MCF_USB_EP1FWP (*(volatile uint32_t*)(&__MBAR[0xB494]))
-#define MCF_USB_EP1LRFP (*(volatile uint32_t*)(&__MBAR[0xB498]))
-#define MCF_USB_EP1LWFP (*(volatile uint32_t*)(&__MBAR[0xB49C]))
-#define MCF_USB_EP2STAT (*(volatile uint32_t*)(&__MBAR[0xB4A0]))
-#define MCF_USB_EP2ISR (*(volatile uint32_t*)(&__MBAR[0xB4A4]))
-#define MCF_USB_EP2IMR (*(volatile uint32_t*)(&__MBAR[0xB4A8]))
-#define MCF_USB_EP2FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4AC]))
-#define MCF_USB_EP2FDR (*(volatile uint32_t*)(&__MBAR[0xB4B0]))
-#define MCF_USB_EP2FSR (*(volatile uint32_t*)(&__MBAR[0xB4B4]))
-#define MCF_USB_EP2FCR (*(volatile uint32_t*)(&__MBAR[0xB4B8]))
-#define MCF_USB_EP2FAR (*(volatile uint32_t*)(&__MBAR[0xB4BC]))
-#define MCF_USB_EP2FRP (*(volatile uint32_t*)(&__MBAR[0xB4C0]))
-#define MCF_USB_EP2FWP (*(volatile uint32_t*)(&__MBAR[0xB4C4]))
-#define MCF_USB_EP2LRFP (*(volatile uint32_t*)(&__MBAR[0xB4C8]))
-#define MCF_USB_EP2LWFP (*(volatile uint32_t*)(&__MBAR[0xB4CC]))
-#define MCF_USB_EP3STAT (*(volatile uint32_t*)(&__MBAR[0xB4D0]))
-#define MCF_USB_EP3ISR (*(volatile uint32_t*)(&__MBAR[0xB4D4]))
-#define MCF_USB_EP3IMR (*(volatile uint32_t*)(&__MBAR[0xB4D8]))
-#define MCF_USB_EP3FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4DC]))
-#define MCF_USB_EP3FDR (*(volatile uint32_t*)(&__MBAR[0xB4E0]))
-#define MCF_USB_EP3FSR (*(volatile uint32_t*)(&__MBAR[0xB4E4]))
-#define MCF_USB_EP3FCR (*(volatile uint32_t*)(&__MBAR[0xB4E8]))
-#define MCF_USB_EP3FAR (*(volatile uint32_t*)(&__MBAR[0xB4EC]))
-#define MCF_USB_EP3FRP (*(volatile uint32_t*)(&__MBAR[0xB4F0]))
-#define MCF_USB_EP3FWP (*(volatile uint32_t*)(&__MBAR[0xB4F4]))
-#define MCF_USB_EP3LRFP (*(volatile uint32_t*)(&__MBAR[0xB4F8]))
-#define MCF_USB_EP3LWFP (*(volatile uint32_t*)(&__MBAR[0xB4FC]))
-#define MCF_USB_EP4STAT (*(volatile uint32_t*)(&__MBAR[0xB500]))
-#define MCF_USB_EP4ISR (*(volatile uint32_t*)(&__MBAR[0xB504]))
-#define MCF_USB_EP4IMR (*(volatile uint32_t*)(&__MBAR[0xB508]))
-#define MCF_USB_EP4FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB50C]))
-#define MCF_USB_EP4FDR (*(volatile uint32_t*)(&__MBAR[0xB510]))
-#define MCF_USB_EP4FSR (*(volatile uint32_t*)(&__MBAR[0xB514]))
-#define MCF_USB_EP4FCR (*(volatile uint32_t*)(&__MBAR[0xB518]))
-#define MCF_USB_EP4FAR (*(volatile uint32_t*)(&__MBAR[0xB51C]))
-#define MCF_USB_EP4FRP (*(volatile uint32_t*)(&__MBAR[0xB520]))
-#define MCF_USB_EP4FWP (*(volatile uint32_t*)(&__MBAR[0xB524]))
-#define MCF_USB_EP4LRFP (*(volatile uint32_t*)(&__MBAR[0xB528]))
-#define MCF_USB_EP4LWFP (*(volatile uint32_t*)(&__MBAR[0xB52C]))
-#define MCF_USB_EP5STAT (*(volatile uint32_t*)(&__MBAR[0xB530]))
-#define MCF_USB_EP5ISR (*(volatile uint32_t*)(&__MBAR[0xB534]))
-#define MCF_USB_EP5IMR (*(volatile uint32_t*)(&__MBAR[0xB538]))
-#define MCF_USB_EP5FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB53C]))
-#define MCF_USB_EP5FDR (*(volatile uint32_t*)(&__MBAR[0xB540]))
-#define MCF_USB_EP5FSR (*(volatile uint32_t*)(&__MBAR[0xB544]))
-#define MCF_USB_EP5FCR (*(volatile uint32_t*)(&__MBAR[0xB548]))
-#define MCF_USB_EP5FAR (*(volatile uint32_t*)(&__MBAR[0xB54C]))
-#define MCF_USB_EP5FRP (*(volatile uint32_t*)(&__MBAR[0xB550]))
-#define MCF_USB_EP5FWP (*(volatile uint32_t*)(&__MBAR[0xB554]))
-#define MCF_USB_EP5LRFP (*(volatile uint32_t*)(&__MBAR[0xB558]))
-#define MCF_USB_EP5LWFP (*(volatile uint32_t*)(&__MBAR[0xB55C]))
-#define MCF_USB_EP6STAT (*(volatile uint32_t*)(&__MBAR[0xB560]))
-#define MCF_USB_EP6ISR (*(volatile uint32_t*)(&__MBAR[0xB564]))
-#define MCF_USB_EP6IMR (*(volatile uint32_t*)(&__MBAR[0xB568]))
-#define MCF_USB_EP6FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB56C]))
-#define MCF_USB_EP6FDR (*(volatile uint32_t*)(&__MBAR[0xB570]))
-#define MCF_USB_EP6FSR (*(volatile uint32_t*)(&__MBAR[0xB574]))
-#define MCF_USB_EP6FCR (*(volatile uint32_t*)(&__MBAR[0xB578]))
-#define MCF_USB_EP6FAR (*(volatile uint32_t*)(&__MBAR[0xB57C]))
-#define MCF_USB_EP6FRP (*(volatile uint32_t*)(&__MBAR[0xB580]))
-#define MCF_USB_EP6FWP (*(volatile uint32_t*)(&__MBAR[0xB584]))
-#define MCF_USB_EP6LRFP (*(volatile uint32_t*)(&__MBAR[0xB588]))
-#define MCF_USB_EP6LWFP (*(volatile uint32_t*)(&__MBAR[0xB58C]))
-#define MCF_USB_IFR(x) (*(volatile uint16_t*)(&__MBAR[0xB040 + ((x)*0x2)]))
-#define MCF_USB_EPOUTACR(x) (*(volatile uint8_t *)(&__MBAR[0xB131 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB132 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB134 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSR(x) (*(volatile uint8_t *)(&__MBAR[0xB135 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB13E + ((x-1)*0x30)]))
-#define MCF_USB_EPINACR(x) (*(volatile uint8_t *)(&__MBAR[0xB149 + ((x-1)*0x30)]))
-#define MCF_USB_EPINMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB14A + ((x-1)*0x30)]))
-#define MCF_USB_EPINIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB14C + ((x-1)*0x30)]))
-#define MCF_USB_EPINSR(x) (*(volatile uint8_t *)(&__MBAR[0xB14D + ((x-1)*0x30)]))
-#define MCF_USB_EPINSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB156 + ((x-1)*0x30)]))
-#define MCF_USB_EPSTAT(x) (*(volatile uint32_t*)(&__MBAR[0xB440 + ((x)*0x30)]))
-#define MCF_USB_EPISR(x) (*(volatile uint32_t*)(&__MBAR[0xB444 + ((x)*0x30)]))
-#define MCF_USB_EPIMR(x) (*(volatile uint32_t*)(&__MBAR[0xB448 + ((x)*0x30)]))
-#define MCF_USB_EPFRCFGR(x) (*(volatile uint32_t*)(&__MBAR[0xB44C + ((x)*0x30)]))
-#define MCF_USB_EPFDR(x) (*(volatile uint32_t*)(&__MBAR[0xB450 + ((x)*0x30)]))
-#define MCF_USB_EPFSR(x) (*(volatile uint32_t*)(&__MBAR[0xB454 + ((x)*0x30)]))
-#define MCF_USB_EPFCR(x) (*(volatile uint32_t*)(&__MBAR[0xB458 + ((x)*0x30)]))
-#define MCF_USB_EPFAR(x) (*(volatile uint32_t*)(&__MBAR[0xB45C + ((x)*0x30)]))
-#define MCF_USB_EPFRP(x) (*(volatile uint32_t*)(&__MBAR[0xB460 + ((x)*0x30)]))
-#define MCF_USB_EPFWP(x) (*(volatile uint32_t*)(&__MBAR[0xB464 + ((x)*0x30)]))
-#define MCF_USB_EPLRFP(x) (*(volatile uint32_t*)(&__MBAR[0xB468 + ((x)*0x30)]))
-#define MCF_USB_EPLWFP(x) (*(volatile uint32_t*)(&__MBAR[0xB46C + ((x)*0x30)]))
-
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x1)
-#define MCF_USB_USBAISR_IN (0x2)
-#define MCF_USB_USBAISR_OUT (0x4)
-#define MCF_USB_USBAISR_EPHALT (0x8)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x1)
-#define MCF_USB_USBAIMR_INEN (0x2)
-#define MCF_USB_USBAIMR_OUTEN (0x4)
-#define MCF_USB_USBAIMR_EPHALTEN (0x8)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x1)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x7)<<0x1)
-
-/* Bit definitions and macros for MCF_USB_CFGR */
-#define MCF_USB_CFGR_Configuration_Value(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_SPEED(x) (((x)&0x3)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x3)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x3)<<0x2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x3)<<0x4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x3)<<0x6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x3)<<0x8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x3)<<0xA)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (0x1)
-#define MCF_USB_EPTNR_EPnT3 (0x2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_IFR */
-#define MCF_USB_IFR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_PPCNT */
-#define MCF_USB_PPCNT_PPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_DPCNT */
-#define MCF_USB_DPCNT_DPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CRCECNT */
-#define MCF_USB_CRCECNT_CRCECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_BSECNT */
-#define MCF_USB_BSECNT_BSECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_PIDECNT */
-#define MCF_USB_PIDECNT_PIDECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMECNT */
-#define MCF_USB_FRMECNT_FRMECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_TXPCNT */
-#define MCF_USB_TXPCNT_TXPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x1)
-#define MCF_USB_CNTOVR_DPCNT (0x2)
-#define MCF_USB_CNTOVR_CRCECNT (0x4)
-#define MCF_USB_CNTOVR_BSECNT (0x8)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (0x2)
-#define MCF_USB_EP0ACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EP0IFR */
-#define MCF_USB_EP0IFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x1)
-#define MCF_USB_EP0SR_ACTIVE (0x2)
-#define MCF_USB_EP0SR_PSTALL (0x4)
-#define MCF_USB_EP0SR_CCOMP (0x8)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_REC(x) (((x)&0x1F)<<0)
-#define MCF_USB_BMRTR_REC_DEVICE (0)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x1)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x2)
-#define MCF_USB_BMRTR_REC_OTHER (0x3)
-#define MCF_USB_BMRTR_TYPE(x) (((x)&0x3)<<0x5)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_DIR (0x80)
-
-/* Bit definitions and macros for MCF_USB_BRTR */
-#define MCF_USB_BRTR_BREQ(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WVALUER */
-#define MCF_USB_WVALUER_WVALUE(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WINDEXR */
-#define MCF_USB_WINDEXR_WINDEX(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WLENGTHR */
-#define MCF_USB_WLENGTHR_WLENGTH(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTACR */
-#define MCF_USB_EPOUTACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPOUTACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPOUTACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPOUTACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPOUTMPSR */
-#define MCF_USB_EPOUTMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPOUTMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPOUTIFR */
-#define MCF_USB_EPOUTIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSR */
-#define MCF_USB_EPOUTSR_HALT (0x1)
-#define MCF_USB_EPOUTSR_ACTIVE (0x2)
-#define MCF_USB_EPOUTSR_PSTALL (0x4)
-#define MCF_USB_EPOUTSR_CCOMP (0x8)
-#define MCF_USB_EPOUTSR_TXZERO (0x20)
-#define MCF_USB_EPOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSFR */
-#define MCF_USB_EPOUTSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINACR */
-#define MCF_USB_EPINACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPINACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPINACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPINACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPINMPSR */
-#define MCF_USB_EPINMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPINMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPINIFR */
-#define MCF_USB_EPINIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINSR */
-#define MCF_USB_EPINSR_HALT (0x1)
-#define MCF_USB_EPINSR_ACTIVE (0x2)
-#define MCF_USB_EPINSR_PSTALL (0x4)
-#define MCF_USB_EPINSR_CCOMP (0x8)
-#define MCF_USB_EPINSR_TXZERO (0x20)
-#define MCF_USB_EPINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINSFR */
-#define MCF_USB_EPINSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_ISOERREP(x) (((x)&0xF)<<0)
-#define MCF_USB_USBSR_SUSP (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x1)
-#define MCF_USB_USBCR_APPLOCK (0x2)
-#define MCF_USB_USBCR_RST (0x4)
-#define MCF_USB_USBCR_RAMEN (0x8)
-#define MCF_USB_USBCR_RAMSPLIT (0x20)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x3FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x7FF)<<0x10)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x1)
-#define MCF_USB_USBISR_FTUNLCK (0x2)
-#define MCF_USB_USBISR_SUSP (0x4)
-#define MCF_USB_USBISR_RES (0x8)
-#define MCF_USB_USBISR_UPDSOF (0x10)
-#define MCF_USB_USBISR_RSTSTOP (0x20)
-#define MCF_USB_USBISR_SOF (0x40)
-#define MCF_USB_USBISR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x1)
-#define MCF_USB_USBIMR_FTUNLCK (0x2)
-#define MCF_USB_USBIMR_SUSP (0x4)
-#define MCF_USB_USBIMR_RES (0x8)
-#define MCF_USB_USBIMR_UPDSOF (0x10)
-#define MCF_USB_USBIMR_RSTSTOP (0x20)
-#define MCF_USB_USBIMR_SOF (0x40)
-#define MCF_USB_USBIMR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPSTAT */
-#define MCF_USB_EPSTAT_RST (0x1)
-#define MCF_USB_EPSTAT_FLUSH (0x2)
-#define MCF_USB_EPSTAT_DIR (0x80)
-#define MCF_USB_EPSTAT_BYTECNT(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPISR */
-#define MCF_USB_EPISR_EOF (0x1)
-#define MCF_USB_EPISR_EOT (0x4)
-#define MCF_USB_EPISR_FIFOLO (0x10)
-#define MCF_USB_EPISR_FIFOHI (0x20)
-#define MCF_USB_EPISR_ERR (0x40)
-#define MCF_USB_EPISR_EMT (0x80)
-#define MCF_USB_EPISR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPIMR */
-#define MCF_USB_EPIMR_EOF (0x1)
-#define MCF_USB_EPIMR_EOT (0x4)
-#define MCF_USB_EPIMR_FIFOLO (0x10)
-#define MCF_USB_EPIMR_FIFOHI (0x20)
-#define MCF_USB_EPIMR_ERR (0x40)
-#define MCF_USB_EPIMR_EMT (0x80)
-#define MCF_USB_EPIMR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPFRCFGR */
-#define MCF_USB_EPFRCFGR_DEPTH(x) (((x)&0x1FFF)<<0)
-#define MCF_USB_EPFRCFGR_BASE(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPFDR */
-#define MCF_USB_EPFDR_RX_TXDATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFSR */
-#define MCF_USB_EPFSR_EMT (0x10000)
-#define MCF_USB_EPFSR_ALRM (0x20000)
-#define MCF_USB_EPFSR_FU (0x40000)
-#define MCF_USB_EPFSR_FR (0x80000)
-#define MCF_USB_EPFSR_OF (0x100000)
-#define MCF_USB_EPFSR_UF (0x200000)
-#define MCF_USB_EPFSR_RXW (0x400000)
-#define MCF_USB_EPFSR_FAE (0x800000)
-#define MCF_USB_EPFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_USB_EPFSR_TXW (0x40000000)
-#define MCF_USB_EPFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFCR */
-#define MCF_USB_EPFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_USB_EPFCR_TXWMSK (0x40000)
-#define MCF_USB_EPFCR_OFMSK (0x80000)
-#define MCF_USB_EPFCR_UFMSK (0x100000)
-#define MCF_USB_EPFCR_RXWMSK (0x200000)
-#define MCF_USB_EPFCR_FAEMSK (0x400000)
-#define MCF_USB_EPFCR_IPMSK (0x800000)
-#define MCF_USB_EPFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_USB_EPFCR_FRM (0x8000000)
-#define MCF_USB_EPFCR_TMR (0x10000000)
-#define MCF_USB_EPFCR_WFR (0x20000000)
-#define MCF_USB_EPFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFAR */
-#define MCF_USB_EPFAR_ALRMP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFRP */
-#define MCF_USB_EPFRP_RP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFWP */
-#define MCF_USB_EPFWP_WP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLRFP */
-#define MCF_USB_EPLRFP_LRFP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLWFP */
-#define MCF_USB_EPLWFP_LWFP(x) (((x)&0xFFF)<<0)
-
-
-#endif /* __MCF5475_USB_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/MCF5475_XLB.h b/BaS_gcc/tos/jtagwait/include/MCF5475_XLB.h
deleted file mode 100644
index af25ae7..0000000
--- a/BaS_gcc/tos/jtagwait/include/MCF5475_XLB.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_XLB_H__
-#define __MCF5475_XLB_H__
-
-
-/*********************************************************************
-*
-* XL Bus Arbiter (XLB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_XLB_XARB_CFG (*(volatile uint32_t*)(&_MBAR[0x240]))
-#define MCF_XLB_XARB_VER (*(volatile uint32_t*)(&_MBAR[0x244]))
-#define MCF_XLB_XARB_SR (*(volatile uint32_t*)(&_MBAR[0x248]))
-#define MCF_XLB_XARB_IMR (*(volatile uint32_t*)(&_MBAR[0x24C]))
-#define MCF_XLB_XARB_ADRCAP (*(volatile uint32_t*)(&_MBAR[0x250]))
-#define MCF_XLB_XARB_SIGCAP (*(volatile uint32_t*)(&_MBAR[0x254]))
-#define MCF_XLB_XARB_ADRTO (*(volatile uint32_t*)(&_MBAR[0x258]))
-#define MCF_XLB_XARB_DATTO (*(volatile uint32_t*)(&_MBAR[0x25C]))
-#define MCF_XLB_XARB_BUSTO (*(volatile uint32_t*)(&_MBAR[0x260]))
-#define MCF_XLB_XARB_PRIEN (*(volatile uint32_t*)(&_MBAR[0x264]))
-#define MCF_XLB_XARB_PRI (*(volatile uint32_t*)(&_MBAR[0x268]))
-
-
-/* Bit definitions and macros for MCF_XLB_XARB_CFG */
-#define MCF_XLB_XARB_CFG_AT (0x2)
-#define MCF_XLB_XARB_CFG_DT (0x4)
-#define MCF_XLB_XARB_CFG_BA (0x8)
-#define MCF_XLB_XARB_CFG_PM(x) (((x)&0x3)<<0x5)
-#define MCF_XLB_XARB_CFG_SP(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_CFG_PLDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_XLB_XARB_VER */
-#define MCF_XLB_XARB_VER_VER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SR */
-#define MCF_XLB_XARB_SR_AT (0x1)
-#define MCF_XLB_XARB_SR_DT (0x2)
-#define MCF_XLB_XARB_SR_BA (0x4)
-#define MCF_XLB_XARB_SR_TTM (0x8)
-#define MCF_XLB_XARB_SR_ECW (0x10)
-#define MCF_XLB_XARB_SR_TTR (0x20)
-#define MCF_XLB_XARB_SR_TTA (0x40)
-#define MCF_XLB_XARB_SR_MM (0x80)
-#define MCF_XLB_XARB_SR_SEA (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_IMR */
-#define MCF_XLB_XARB_IMR_ATE (0x1)
-#define MCF_XLB_XARB_IMR_DTE (0x2)
-#define MCF_XLB_XARB_IMR_BAE (0x4)
-#define MCF_XLB_XARB_IMR_TTME (0x8)
-#define MCF_XLB_XARB_IMR_ECWE (0x10)
-#define MCF_XLB_XARB_IMR_TTRE (0x20)
-#define MCF_XLB_XARB_IMR_TTAE (0x40)
-#define MCF_XLB_XARB_IMR_MME (0x80)
-#define MCF_XLB_XARB_IMR_SEAE (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRCAP */
-#define MCF_XLB_XARB_ADRCAP_ADRCAP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SIGCAP */
-#define MCF_XLB_XARB_SIGCAP_TT(x) (((x)&0x1F)<<0)
-#define MCF_XLB_XARB_SIGCAP_TBST (0x20)
-#define MCF_XLB_XARB_SIGCAP_TSIZ(x) (((x)&0x7)<<0x7)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRTO */
-#define MCF_XLB_XARB_ADRTO_ADRTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_DATTO */
-#define MCF_XLB_XARB_DATTO_DATTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_BUSTO */
-#define MCF_XLB_XARB_BUSTO_BUSTO(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRIEN */
-#define MCF_XLB_XARB_PRIEN_M0 (0x1)
-#define MCF_XLB_XARB_PRIEN_M2 (0x4)
-#define MCF_XLB_XARB_PRIEN_M3 (0x8)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRI */
-#define MCF_XLB_XARB_PRI_M0P(x) (((x)&0x7)<<0)
-#define MCF_XLB_XARB_PRI_M2P(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_PRI_M3P(x) (((x)&0x7)<<0xC)
-
-
-#endif /* __MCF5475_XLB_H__ */
diff --git a/BaS_gcc/tos/jtagwait/include/bas_printf.h b/BaS_gcc/tos/jtagwait/include/bas_printf.h
deleted file mode 100644
index 5b42c28..0000000
--- a/BaS_gcc/tos/jtagwait/include/bas_printf.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- */
-
-#ifndef _BAS_PRINTF_H_
-#define _BAS_PRINTF_H_
-#include
-#include
-
-extern void xvsnprintf(char *str, size_t size, const char *fmt, va_list va);
-extern void xvprintf(const char *fmt, va_list va);
-extern void xprintf(const char *fmt, ...);
-extern void xsnprintf(char *str, size_t size, const char *fmt, ...);
-extern void xputchar(int c);
-extern int sprintf(char *str, const char *format, ...);
-
-
-extern void display_progress(void);
-extern void hexdump(uint8_t buffer[], int size);
-#endif /* _BAS_PRINTF_H_ */
diff --git a/BaS_gcc/tos/jtagwait/include/bas_string.h b/BaS_gcc/tos/jtagwait/include/bas_string.h
deleted file mode 100644
index c743c95..0000000
--- a/BaS_gcc/tos/jtagwait/include/bas_string.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * bas_string.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef BAS_STRING_H_
-#define BAS_STRING_H_
-
-#include
-
-extern int strncmp(const char *s1, const char *s2, size_t max);
-extern char *strcpy(char *dst, const char *src);
-char *strncpy(char *dst, const char *src, size_t max);
-extern int strcmp(const char *s1, const char *s2);
-extern size_t strlen(const char *str);
-extern char *strcat(char *dst, const char *src);
-extern char *strncat(char *dst, const char *src, size_t max);
-extern int atoi(const char *c);
-extern void *memcpy(void *dst, const void *src, size_t n);
-extern void *memset(void *s, int c, size_t n);
-extern int memcmp(const void *s1, const void *s2, size_t max);
-extern void bzero(void *s, size_t n);
-
-#define isdigit(c) (((c) >= '0') && ((c) <= '9'))
-#define isupper(c) ((c) >= 'A' && ((c) <= 'Z'))
-#define islower(c) ((c) >= 'a' && ((c) <= 'z'))
-#define isalpha(c) (isupper((c)) || islower(c))
-#define tolower(c) (isupper(c) ? ((c) + 'a' - 'A') : (c))
-
-#endif /* BAS_STRING_H_ */
diff --git a/BaS_gcc/tos/jtagwait/include/driver_vec.h b/BaS_gcc/tos/jtagwait/include/driver_vec.h
deleted file mode 100644
index 8b9352a..0000000
--- a/BaS_gcc/tos/jtagwait/include/driver_vec.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * driver_vec.h
- *
- * Interface for exposure of BaS drivers to the OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DRIVER_VEC_H_
-#define _DRIVER_VEC_H_
-
-
-enum driver_type
-{
- END_OF_DRIVERS, /* marks end of driver list */
- BLOCKDEV_DRIVER,
- CHARDEV_DRIVER,
- VIDEO_DRIVER,
- XHDI_DRIVER,
- MCD_DRIVER,
-};
-
-struct generic_driver_interface
-{
- uint32_t (*init)(void);
- uint32_t (*read)(void *buf, size_t count);
- uint32_t (*write)(const void *buf, size_t count);
- uint32_t (*ioctl)(uint32_t request, ...);
-};
-
-
-/* Chained buffer descriptor */
-typedef volatile struct MCD_bufDesc_struct MCD_bufDesc;
-struct MCD_bufDesc_struct {
- uint32_t flags; /* flags describing the DMA */
- uint32_t csumResult; /* checksum from checksumming performed since last checksum reset */
- int8_t *srcAddr; /* the address to move data from */
- int8_t *destAddr; /* the address to move data to */
- int8_t *lastDestAddr; /* the last address written to */
- uint32_t dmaSize; /* the number of bytes to transfer independent of the transfer size */
- MCD_bufDesc *next; /* next buffer descriptor in chain */
- uint32_t info; /* private information about this descriptor; DMA does not affect it */
-};
-
-/* Progress Query struct */
-typedef volatile struct MCD_XferProg_struct {
- int8_t *lastSrcAddr; /* the most-recent or last, post-increment source address */
- int8_t *lastDestAddr; /* the most-recent or last, post-increment destination address */
- uint32_t dmaSize; /* the amount of data transferred for the current buffer */
- MCD_bufDesc *currBufDesc;/* pointer to the current buffer descriptor being DMAed */
-} MCD_XferProg;
-
-struct dma_driver_interface
-{
- int32_t version;
- int32_t magic;
- int32_t (*dma_set_initiator)(int initiator);
- uint32_t (*dma_get_initiator)(int requestor);
- void (*dma_free_initiator)(int requestor);
- int32_t (*dma_set_channel)(int requestor, void (*handler)(void));
- int (*dma_get_channel)(int requestor);
- void (*dma_free_channel)(int requestor);
- void (*dma_clear_channel)(int channel);
- int (*MCD_startDma)(int channel, int8_t *srcAddr, int16_t srcIncr, int8_t *destAddr, int16_t destIncr,
- uint32_t dmaSize, uint32_t xferSize, uint32_t initiator, int32_t priority, uint32_t flags,
- uint32_t funcDesc);
- int (*MCD_dmaStatus)(int channel);
- int (*MCD_XferProgrQuery)(int channel, MCD_XferProg *progRep);
- int (*MCD_killDma)(int channel);
- int (*MCD_continDma)(int channel);
- int (*MCD_pauseDma)(int channel);
- int (*MCD_resumeDma)(int channel);
- int (*MCD_csumQuery)(int channel, uint32_t *csum);
- void *(*dma_malloc)(long amount);
- int (*dma_free)(void *addr);
-};
-
-struct xhdi_driver_interface
-{
- uint32_t (*xhdivec)();
-};
-
-union interface
-{
- struct generic_driver_interface *gdi;
- struct xhdi_driver_interface *xhdi;
- struct dma_driver_interface *dma;
-};
-
-struct generic_interface
-{
- enum driver_type type;
- char name[16];
- char description[64];
- int version;
- int revision;
- union interface interface;
-};
-
-struct driver_table
-{
- uint32_t bas_version;
- uint32_t bas_revision;
- uint32_t (*remove_handler)(); /* calling this will disable the BaS' hook into trap #0 */
- struct generic_interface *interfaces;
-};
-
-
-#endif /* _DRIVER_VEC_H_ */
diff --git a/BaS_gcc/tos/jtagwait/jtagwait.config b/BaS_gcc/tos/jtagwait/jtagwait.config
deleted file mode 100644
index 8cec188..0000000
--- a/BaS_gcc/tos/jtagwait/jtagwait.config
+++ /dev/null
@@ -1 +0,0 @@
-// ADD PREDEFINED MACROS HERE!
diff --git a/BaS_gcc/tos/jtagwait/jtagwait.creator b/BaS_gcc/tos/jtagwait/jtagwait.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/tos/jtagwait/jtagwait.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/tos/jtagwait/jtagwait.creator.user b/BaS_gcc/tos/jtagwait/jtagwait.creator.user
deleted file mode 100644
index 6304715..0000000
--- a/BaS_gcc/tos/jtagwait/jtagwait.creator.user
+++ /dev/null
@@ -1,186 +0,0 @@
-
-
-
-
-
- ProjectExplorer.Project.ActiveTarget
- 0
-
-
- ProjectExplorer.Project.EditorSettings
-
- true
- false
- true
-
- Cpp
-
- CppGlobal
-
-
-
- QmlJS
-
- QmlJSGlobal
-
-
- 2
- UTF-8
- false
- 4
- false
- true
- 1
- true
- 0
- true
- 0
- 8
- true
- 1
- true
- true
- true
- true
-
-
-
- ProjectExplorer.Project.PluginSettings
-
-
-
- ProjectExplorer.Project.Target.0
-
- Desktop
- Desktop
- {8a828d48-5359-4872-acb6-81070c6b7c12}
- 0
- 0
- 0
-
- /home/mfro/Dokumente/Development/workspace/jtagwait
-
-
-
- all
-
- false
-
-
- true
- Make
-
- GenericProjectManager.GenericMakeStep
-
- 1
- Build
-
- ProjectExplorer.BuildSteps.Build
-
-
-
-
- clean
-
- true
-
-
- true
- Make
-
- GenericProjectManager.GenericMakeStep
-
- 1
- Clean
-
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- Default
- Default
- GenericProjectManager.GenericBuildConfiguration
-
- 1
-
-
- 0
- Deploy
-
- ProjectExplorer.BuildSteps.Deploy
-
- 1
- Deploy locally
-
- ProjectExplorer.DefaultDeployConfiguration
-
- 1
-
-
-
- false
- false
- false
- false
- true
- 0.01
- 10
- true
- 1
- 25
-
- 1
- true
- false
- true
- valgrind
-
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
-
- 2
-
-
-
- false
- %{buildDir}
- Custom Executable
-
- ProjectExplorer.CustomExecutableRunConfiguration
- 3768
- true
- false
- false
- false
- true
-
- 1
-
-
-
- ProjectExplorer.Project.TargetCount
- 1
-
-
- ProjectExplorer.Project.Updater.EnvironmentId
- {d01d0a15-4efd-4fa2-8e2c-f26845794427}
-
-
- ProjectExplorer.Project.Updater.FileVersion
- 15
-
-
diff --git a/BaS_gcc/tos/jtagwait/jtagwait.files b/BaS_gcc/tos/jtagwait/jtagwait.files
deleted file mode 100644
index 198470f..0000000
--- a/BaS_gcc/tos/jtagwait/jtagwait.files
+++ /dev/null
@@ -1,3 +0,0 @@
-include/driver_vec.h
-sources/jtagwait.c
-Makefile
diff --git a/BaS_gcc/tos/jtagwait/jtagwait.includes b/BaS_gcc/tos/jtagwait/jtagwait.includes
deleted file mode 100644
index 2996fba..0000000
--- a/BaS_gcc/tos/jtagwait/jtagwait.includes
+++ /dev/null
@@ -1 +0,0 @@
-include
\ No newline at end of file
diff --git a/BaS_gcc/tos/jtagwait/sources/bas_printf.c b/BaS_gcc/tos/jtagwait/sources/bas_printf.c
deleted file mode 100644
index ea87bdf..0000000
--- a/BaS_gcc/tos/jtagwait/sources/bas_printf.c
+++ /dev/null
@@ -1,460 +0,0 @@
-/*
- * tc.printf.c: A public-domain, minimal printf/sprintf routine that prints
- * through the putchar() routine. Feel free to use for
- * anything... -- 7/17/87 Paul Placeway
- */
-/*-
- * Copyright (c) 1980, 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include
-#include "MCF5475.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-/*
- * Lexical definitions.
- *
- * All lexical space is allocated dynamically.
- * The eighth/sixteenth bit of characters is used to prevent recognition,
- * and eventually stripped.
- */
-#define META 0200
-#define ASCII 0177
-#define QUOTE ((char) 0200) /* Eighth char bit used for 'ing */
-#define TRIM 0177 /* Mask to strip quote bit */
-#define UNDER 0000000 /* No extra bits to do both */
-#define BOLD 0000000 /* Bold flag */
-#define STANDOUT META /* Standout flag */
-#define LITERAL 0000000 /* Literal character flag */
-#define ATTRIBUTES 0200 /* The bits used for attributes */
-#define CHAR 0000177 /* Mask to mask out the character */
-
-#define INF 32766 /* should be bigger than any field to print */
-
-static char snil[] = "(nil)";
-
-void xputchar(int c)
-{
- __asm__ __volatile__
- (
- " .extern printf_helper\n\t"
- " move.b %0,d0\n\t"
- " bsr printf_helper\n\t"
- /* output */:
- /* input */: "r" (c)
- /* clobber */: "d0","d2","a0","memory"
- );
-}
-
-static void doprnt(void (*addchar)(int), const char *sfmt, va_list ap)
-{
- char buf[128];
- char *bp;
- const char *f;
- float flt;
- long l;
- unsigned long u;
- int i;
- int fmt;
- unsigned char pad = ' ';
- int flush_left = 0;
- int f_width = 0;
- int prec = INF;
- int hash = 0;
- int do_long = 0;
- int sign = 0;
- int attributes = 0;
-
- f = sfmt;
- for (; *f; f++)
- {
- if (*f != '%')
- {
- /* then just out the char */
- (*addchar)((int) (((unsigned char) *f) | attributes));
- }
- else
- {
- f++; /* skip the % */
-
- if (*f == '-')
- {
- /* minus: flush left */
- flush_left = 1;
- f++;
- }
-
- if (*f == '0' || *f == '.')
- {
- /* padding with 0 rather than blank */
- pad = '0';
- f++;
- }
- if (*f == '*')
- {
- /* field width */
-
- f_width = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char) *f))
- {
- f_width = atoi(f);
- while (isdigit((unsigned char) *f))
- f++; /* skip the digits */
- }
-
- if (*f == '.')
- { /* precision */
- f++;
- if (*f == '*')
- {
- prec = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- prec = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
- }
-
- if (*f == '#')
- { /* alternate form */
- hash = 1;
- f++;
- }
-
- if (*f == 'l')
- { /* long format */
- do_long++;
- f++;
- if (*f == 'l')
- {
- do_long++;
- f++;
- }
- }
-
- fmt = (unsigned char) *f;
- if (fmt != 'S' && fmt != 'Q' && isupper(fmt))
- {
- do_long = 1;
- fmt = tolower(fmt);
- }
- bp = buf;
- switch (fmt)
- { /* do the format */
- case 'd':
- switch (do_long)
- {
- case 0:
- l = (long) (va_arg(ap, int));
- break;
- case 1:
- default:
- l = va_arg(ap, long);
- break;
- }
-
- if (l < 0)
- {
- sign = 1;
- l = -l;
- }
- do
- {
- *bp++ = (char) (l % 10) + '0';
- } while ((l /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'f':
- /* this is actually more than stupid, but does work for now */
- flt = (float) (va_arg(ap, double)); /* beware: va_arg() extends float to double! */
- if (flt < 0)
- {
- sign = 1;
- flt = -flt;
- }
- {
- int quotient, remainder;
-
- quotient = (int) flt;
- remainder = (flt - quotient) * 10E5;
-
- for (i = 0; i < 6; i++)
- {
- *bp++ = (char) (remainder % 10) + '0';
- remainder /= 10;
- }
- *bp++ = '.';
- do
- {
- *bp++ = (char) (quotient % 10) + '0';
- } while ((quotient /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- }
- break;
-
- case 'p':
- do_long = 1;
- hash = 1;
- fmt = 'x';
- /* no break */
- case 'o':
- case 'x':
- case 'u':
- switch (do_long)
- {
- case 0:
- u = (unsigned long) (va_arg(ap, unsigned int));
- break;
- case 1:
- default:
- u = va_arg(ap, unsigned long);
- break;
- }
- if (fmt == 'u')
- { /* unsigned decimal */
- do
- {
- *bp++ = (char) (u % 10) + '0';
- } while ((u /= 10) > 0);
- }
- else if (fmt == 'o')
- { /* octal */
- do
- {
- *bp++ = (char) (u % 8) + '0';
- } while ((u /= 8) > 0);
- if (hash)
- *bp++ = '0';
- }
- else if (fmt == 'x')
- { /* hex */
- do
- {
- i = (int) (u % 16);
- if (i < 10)
- *bp++ = i + '0';
- else
- *bp++ = i - 10 + 'a';
- } while ((u /= 16) > 0);
- if (hash)
- {
- *bp++ = 'x';
- *bp++ = '0';
- }
- }
- i = f_width - (int) (bp - buf);
- if (!flush_left)
- while (i-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (i-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'c':
- i = va_arg(ap, int);
- (*addchar)((int) (i | attributes));
- break;
-
- case 'S':
- case 'Q':
- case 's':
- case 'q':
- bp = va_arg(ap, char *);
- if (!bp)
- bp = snil;
- f_width = f_width - strlen((char *) bp);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (i = 0; *bp && i < prec; i++)
- {
- if (fmt == 'q' && (*bp & QUOTE))
- (*addchar)((int) ('\\' | attributes));
- (*addchar)(
- (int) (((unsigned char) *bp & TRIM) | attributes));
- bp++;
- }
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'a':
- attributes = va_arg(ap, int);
- break;
-
- case '%':
- (*addchar)((int) ('%' | attributes));
- break;
-
- default:
- break;
- }
- flush_left = 0, f_width = 0, prec = INF, hash = 0, do_long = 0;
- sign = 0;
- pad = ' ';
- }
- }
-}
-
-static char *xstring, *xestring;
-
-void xaddchar(int c)
-{
- if (xestring == xstring)
- *xstring = '\0';
- else
- *xstring++ = (char) c;
-}
-
-int sprintf(char *str, const char *format, ...)
-{
- va_list va;
- va_start(va, format);
-
- xstring = str;
-
- doprnt(xaddchar, format, va);
- va_end(va);
- *xstring++ = '\0';
-
- return 0;
-}
-
-void xsnprintf(char *str, size_t size, const char *fmt, ...)
-{
- va_list va;
-
- va_start(va, fmt);
-
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- va_end(va);
- *xstring++ = '\0';
-}
-
-void xprintf(const char *fmt, ...)
-{
- va_list va;
-
- va_start(va, fmt);
- doprnt(xputchar, fmt, va);
- va_end(va);
-}
-
-void xvprintf(const char *fmt, va_list va)
-{
- doprnt(xputchar, fmt, va);
-}
-
-void xvsnprintf(char *str, size_t size, const char *fmt, va_list va)
-{
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- *xstring++ = '\0';
-}
-
-
-void display_progress()
-{
- static int _progress_index;
- char progress_char[] = "|/-\\";
-
- xputchar(progress_char[_progress_index++ % strlen(progress_char)]);
- xputchar('\r');
-}
-
-void hexdump(uint8_t buffer[], int size)
-{
- int i;
- int line = 0;
- uint8_t *bp = buffer;
-
- while (bp < buffer + size) {
- uint8_t *lbp = bp;
-
- xprintf("%08x ", line);
-
- for (i = 0; i < 16; i++) {
- if (bp + i > buffer + size) {
- break;
- }
- xprintf("%02x ", (uint8_t) *lbp++);
- }
-
- lbp = bp;
- for (i = 0; i < 16; i++) {
- int8_t c = *lbp++;
-
- if (bp + i > buffer + size) {
- break;
- }
- if (c > ' ' && c < '~') {
- xprintf("%c", c);
- } else {
- xprintf(".");
- }
- }
- xprintf("\r\n");
-
- bp += 16;
- line += 16;
- }
-}
diff --git a/BaS_gcc/tos/jtagwait/sources/bas_string.c b/BaS_gcc/tos/jtagwait/sources/bas_string.c
deleted file mode 100644
index 3960638..0000000
--- a/BaS_gcc/tos/jtagwait/sources/bas_string.c
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * bas_string.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include "bas_types.h"
-#include
-#include "bas_string.h"
-
-void *memcpy(void *dst, const void *src, size_t n)
-{
- uint8_t *to = dst;
-
- while (to < (uint8_t *) dst + n)
- *to++ = * (uint8_t *) src++;
-
- return dst;
-}
-
-void bzero(void *s, size_t n)
-{
- size_t i;
-
- for (i = 0; i < n; i++)
- ((unsigned char *) s)[i] = '\0';
-}
-
-void *memset(void *s, int c, size_t n)
-{
- uint8_t *dst = s;
-
- do
- {
- *dst++ = c;
- } while ((dst - (uint8_t *) s) < n);
-
- return s;
-}
-
-
-int memcmp(const void *s1, const void *s2, size_t max)
-{
- int i;
- int cmp;
-
- for (i = 0; i < max; i++)
- {
- cmp = (* (const char *) s1 - * (const char *) s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strcmp(const char *s1, const char *s2)
-{
- int i;
- int cmp;
-
- for (i = 0; *s1++ && *s2++; i++)
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strncmp(const char *s1, const char *s2, size_t max)
-{
- int i;
- int cmp;
-
- for (i = 0; i < max && *s1++ && *s2++; i++);
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-char *strcpy(char *dst, const char *src)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0');
- return ptr;
-}
-
-char *strncpy(char *dst, const char *src, size_t max)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0' && max-- >= 0);
- return ptr;
-}
-
-int atoi(const char *c)
-{
- int value = 0;
- while (isdigit(*c))
- {
- value *= 10;
- value += (int) (*c - '0');
- c++;
- }
- return value;
-}
-
-size_t strlen(const char *s)
-{
- const char *start = s;
-
- while (*s++);
-
- return s - start - 1;
-}
-
-
-char *strcat(char *dst, const char *src)
-{
- char *ret = dst;
- dst = &dst[strlen(dst)];
- while ((*dst++ = *src++) != '\0');
- return ret;
-}
-
-char *strncat(char *dst, const char *src, size_t max)
-{
- size_t i;
- char *ret = dst;
-
- dst = &dst[strlen(dst)];
- for (i = 0; i < max && *src; i++)
- {
- *dst++ = *src++;
- }
- *dst++ = '\0';
-
- return ret;
-}
diff --git a/BaS_gcc/tos/jtagwait/sources/jtagwait.c b/BaS_gcc/tos/jtagwait/sources/jtagwait.c
deleted file mode 100644
index cf946ae..0000000
--- a/BaS_gcc/tos/jtagwait/sources/jtagwait.c
+++ /dev/null
@@ -1,123 +0,0 @@
-#include
-#include
-#include
-#include
-
-#include "bas_printf.h"
-#include "MCF5475.h"
-#include "driver_vec.h"
-
-extern uint32_t _FPGA_JTAG_LOADED;
-extern uint32_t _FPGA_JTAG_VALID;
-
-#define VALID_JTAG 0xaffeaffe
-
-#define FPGA_CONFIG (1 << 2)
-#define FPGA_CONF_DONE (1 << 5)
-
-#define SRAM1_START 0xff101000
-#define SRAM1_END SRAM1_START + 0x1000
-#define SAFE_STACK SRAM1_END - 4
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-long bas_start = 0xe0000000;
-
-
-void wait_for_jtag(void)
-{
- int i;
-
- /* set supervisor stack to end of SRAM1 */
- __asm__ __volatile__ (
- " move #0x2700,sr\n\t" /* disable interrupts */
- " move.l %[stack],d0\n\t" /* 4KB on-chip core SRAM1 */
- " move.l d0,sp\n\t" /* set stack pointer */
- :
- : [stack] "i" (SAFE_STACK)
- : "d0", "cc" /* clobber */
- );
-
- MCF_EPORT_EPIER = 0x0; /* disable EPORT interrupts */
- MCF_INTC_IMRL = 0xffffffff;
- MCF_INTC_IMRH = 0xffffffff; /* disable interrupt controller */
-
- MCF_MMU_MMUCR &= ~MCF_MMU_MMUCR_EN; /* disable MMU */
-
- xprintf("relocated supervisor stack, disabled interrupts and disabled MMU\r\n");
-
- /*
- * configure FEC1L port directions to enable external JTAG configuration download to FPGA
- */
- MCF_GPIO_PDDR_FEC1L = 0 |
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4; /* bit 4 = LED => output */
- /* all other bits = input */
-
- /*
- * configure DSPI_CS3 as GPIO input to avoid the MCU driving against the FPGA blink
- */
- MCF_PAD_PAR_DSPI &= ~MCF_PAD_PAR_DSPI_PAR_CS3(MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3);
- /*
- * now that GPIO ports have been switched to input, we can poll for FPGA config
- * started from the JTAG interface (CONF_DONE goes low) and finish (CONF_DONE goes high)
- */
- xprintf("waiting for JTAG configuration start\r\n");
- while ((MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load started */
-
- xprintf("waiting for JTAG configuration to finish\r\n");
- while (!(MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load finished */
-
- xprintf("JTAG configuration finished.\r\n");
- _FPGA_JTAG_LOADED = 1; /* indicate jtag loaded FPGA config to BaS */
- _FPGA_JTAG_VALID = VALID_JTAG; /* set magic word to indicate _FPGA_JTAG_LOADED is valid */
-
- /* wait */
- xprintf("wait a little to let things settle...\r\n");
- for (i = 0; i < 100000; i++);
- xprintf("reset and restart...");
-
- __asm__ __volatile__(
- " jmp (%[bas_start])\n\t"
- : /* no output */
- : [bas_start] "a" (bas_start)
- : /* clobber not needed */
- );
-}
-
-int main(int argc, char *argv[])
-{
- printf("\033E\r\nFPGA JTAG configuration support\r\n");
- printf("\xbd 2014 M. Froeschle\r\n");
-
- printf("You may now savely load a new FPGA configuration through the JTAG interface\r\n"
- "and your Firebee will reboot once finished using that new configuration.\r\n");
- if (argc == 2)
- {
- /*
- * we got an argument. This is supposed to be the address that we need to jump to after JTAG
- * configuration has been finished. Meant to support BaS in RAM testing
- */
- char *addr_str = argv[1];
- char *addr = NULL;
- char *end = NULL;
-
- addr = (char *) strtol(addr_str, &end, 16);
- if (addr != NULL && addr <= (char *) 0xe0000000 && addr >= (char *) 0x10000000)
- {
- /*
- * seems to be a valid address
- */
- bas_start = (long) addr;
-
- printf("BaS start address set to %p\r\n", (void *) bas_start);
- }
- else
- {
- printf("\r\nNote: BaS start address %p not valid. Stick to %p.\r\n", addr, (void *) bas_start);
- }
- }
- Supexec(wait_for_jtag);
-
- return 0; /* just to make the compiler happy, we will never return */
-}
-
diff --git a/BaS_gcc/tos/jtagwait/sources/printf_helper.S b/BaS_gcc/tos/jtagwait/sources/printf_helper.S
deleted file mode 100644
index 7d8eec1..0000000
--- a/BaS_gcc/tos/jtagwait/sources/printf_helper.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * printf_helper.S
- *
- * assembler trampoline to let printf (compiled -mpcrel) indirectly reference __MBAR
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- */
-
-
- .global printf_helper
-printf_helper:
- .extern __MBAR
-.wait_txready:
- move.w __MBAR+0x8604,d2 // PSCSCR0 status register
- btst #10,d2 // space left in TX fifo?
- beq.s .wait_txready // no, loop
- lea __MBAR+0x860C,a0 // PSCSTB0 transmitter buffer register
- move.b d0,(a0) // send byte
- rts
-
-// vim: set syntax=asm68k :
diff --git a/BaS_gcc/tos/pci_mem/Makefile b/BaS_gcc/tos/pci_mem/Makefile
deleted file mode 100755
index d0862c3..0000000
--- a/BaS_gcc/tos/pci_mem/Makefile
+++ /dev/null
@@ -1,105 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR = ../..
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include -nostdlib
-LIBS=-lcmini -nostdlib -lgcc
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=pci_mem.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -O0\
- -g\
- -Wl,-Map,mapfile\
- -Wl,--defsym -Wl,__MBAR=0xff000000\
- -Wl,--defsym -Wl,__MMUBAR=0xff040000\
- -Wl,--defsym -Wl,__FPGA_JTAG_LOADED=0xff101000\
- -Wl,--defsym -Wl,__FPGA_JTAG_VALID=0xff101004\
- -Wl,--defsym -Wl,__VRAM=0x60000000\
- -Wall
-
-SRCDIR=sources
-INCDIR=include
-INCLUDE+=-I$(INCDIR)
-
-CSRCS=\
- $(SRCDIR)/pci_mem.c
-
-ASRCS=
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=./m5475 ./m5475/mshort
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-m5475/$(APP):CFLAGS += -mcpu=5475
-m5475/mshort/$(APP): CFLAGS += -mcpu=5475 -mshort
-
-all:$(patsubst %,%/$(APP),$(TRGTDIRS))
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- $(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- $(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- $(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/$(1)/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/$(1) $(LIBS)
- $(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- -rm -f $(DEPEND)
- for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475.h b/BaS_gcc/tos/pci_mem/include/MCF5475.h
deleted file mode 100644
index 5ab1750..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_H__
-#define __MCF5475_H__
-
-#include
-/***
- * MCF5475 Derivative Memory map definitions from linker command files:
- * __MBAR, __MMUBAR, __RAMBAR0, __RAMBAR0_SIZE, __RAMBAR1, __RAMBAR1_SIZE
- * linker symbols must be defined in the linker command file.
- */
-
-typedef uint32_t __attribute__((__may_alias__)) uint32_t_a; /* a type to avoid gcc's complaints about pointer aliasing */
-
-extern uint8_t _MBAR[];
-extern uint8_t _MMUBAR[];
-extern uint8_t _RAMBAR0[];
-extern uint8_t _RAMBAR0_SIZE[];
-extern uint8_t _RAMBAR1[];
-extern uint8_t _RAMBAR1_SIZE[];
-
-#define MBAR_ADDRESS (uint32_t)_MBAR
-#define MMUBAR_ADDRESS (uint32_t)_MMUBAR
-#define RAMBAR0_ADDRESS (uint32_t)_RAMBAR0
-#define RAMBAR0_SIZE (uint32_t)_RAMBAR0_SIZE
-#define RAMBAR1_ADDRESS (uint32_t)_RAMBAR1
-#define RAMBAR1_SIZE (uint32_t)_RAMBAR1_SIZE
-
-
-#include "MCF5475_SIU.h"
-#include "MCF5475_MMU.h"
-#include "MCF5475_SDRAMC.h"
-#include "MCF5475_XLB.h"
-#include "MCF5475_CLOCK.h"
-#include "MCF5475_FBCS.h"
-#include "MCF5475_INTC.h"
-#include "MCF5475_GPT.h"
-#include "MCF5475_SLT.h"
-#include "MCF5475_GPIO.h"
-#include "MCF5475_PAD.h"
-#include "MCF5475_PCI.h"
-#include "MCF5475_PCIARB.h"
-#include "MCF5475_EPORT.h"
-#include "MCF5475_CTM.h"
-#include "MCF5475_DMA.h"
-#include "MCF5475_PSC.h"
-#include "MCF5475_DSPI.h"
-#include "MCF5475_I2C.h"
-#include "MCF5475_FEC.h"
-#include "MCF5475_USB.h"
-#include "MCF5475_SRAM.h"
-#include "MCF5475_SEC.h"
-
-#endif /* __MCF5475_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_CLOCK.h b/BaS_gcc/tos/pci_mem/include/MCF5475_CLOCK.h
deleted file mode 100644
index 4603098..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_CLOCK.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CLOCK_H__
-#define __MCF5475_CLOCK_H__
-
-
-/*********************************************************************
-*
-* Clock Module (CLOCK)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CLOCK_SPCR (*(volatile uint32_t*)(&_MBAR[0x300]))
-
-
-/* Bit definitions and macros for MCF_CLOCK_SPCR */
-#define MCF_CLOCK_SPCR_MEMEN (0x1)
-#define MCF_CLOCK_SPCR_PCIEN (0x2)
-#define MCF_CLOCK_SPCR_FBEN (0x4)
-#define MCF_CLOCK_SPCR_CAN0EN (0x8)
-#define MCF_CLOCK_SPCR_DMAEN (0x10)
-#define MCF_CLOCK_SPCR_FEC0EN (0x20)
-#define MCF_CLOCK_SPCR_FEC1EN (0x40)
-#define MCF_CLOCK_SPCR_USBEN (0x80)
-#define MCF_CLOCK_SPCR_PSCEN (0x200)
-#define MCF_CLOCK_SPCR_CAN1EN (0x800)
-#define MCF_CLOCK_SPCR_CRYENA (0x1000)
-#define MCF_CLOCK_SPCR_CRYENB (0x2000)
-#define MCF_CLOCK_SPCR_COREN (0x4000)
-#define MCF_CLOCK_SPCR_PLLK (0x80000000)
-
-
-#endif /* __MCF5475_CLOCK_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_CTM.h b/BaS_gcc/tos/pci_mem/include/MCF5475_CTM.h
deleted file mode 100644
index 5ba86e4..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_CTM.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CTM_H__
-#define __MCF5475_CTM_H__
-
-
-/*********************************************************************
-*
-* Comm Timer Module (CTM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CTM_CTCR0 (*(volatile uint32_t*)(&_MBAR[0x7F00]))
-#define MCF_CTM_CTCR1 (*(volatile uint32_t*)(&_MBAR[0x7F04]))
-#define MCF_CTM_CTCR2 (*(volatile uint32_t*)(&_MBAR[0x7F08]))
-#define MCF_CTM_CTCR3 (*(volatile uint32_t*)(&_MBAR[0x7F0C]))
-#define MCF_CTM_CTCR4 (*(volatile uint32_t*)(&_MBAR[0x7F10]))
-#define MCF_CTM_CTCR5 (*(volatile uint32_t*)(&_MBAR[0x7F14]))
-#define MCF_CTM_CTCR6 (*(volatile uint32_t*)(&_MBAR[0x7F18]))
-#define MCF_CTM_CTCR7 (*(volatile uint32_t*)(&_MBAR[0x7F1C]))
-#define MCF_CTM_CTCRF(x) (*(volatile uint32_t*)(&_MBAR[0x7F00 + ((x)*0x4)]))
-#define MCF_CTM_CTCRV(x) (*(volatile uint32_t*)(&_MBAR[0x7F10 + ((x-4)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_CTM_CTCRF */
-#define MCF_CTM_CTCRF_CRV(x) (((x)&0xFFFF)<<0)
-#define MCF_CTM_CTCRF_S(x) (((x)&0xF)<<0x10)
-#define MCF_CTM_CTCRF_S_CLK_1 (0)
-#define MCF_CTM_CTCRF_S_CLK_2 (0x10000)
-#define MCF_CTM_CTCRF_S_CLK_4 (0x20000)
-#define MCF_CTM_CTCRF_S_CLK_8 (0x30000)
-#define MCF_CTM_CTCRF_S_CLK_16 (0x40000)
-#define MCF_CTM_CTCRF_S_CLK_32 (0x50000)
-#define MCF_CTM_CTCRF_S_CLK_64 (0x60000)
-#define MCF_CTM_CTCRF_S_CLK_128 (0x70000)
-#define MCF_CTM_CTCRF_S_CLK_256 (0x80000)
-#define MCF_CTM_CTCRF_S_CLK_EXT (0x90000)
-#define MCF_CTM_CTCRF_PCT(x) (((x)&0x7)<<0x14)
-#define MCF_CTM_CTCRF_PCT_100 (0)
-#define MCF_CTM_CTCRF_PCT_50 (0x100000)
-#define MCF_CTM_CTCRF_PCT_25 (0x200000)
-#define MCF_CTM_CTCRF_PCT_12p5 (0x300000)
-#define MCF_CTM_CTCRF_PCT_6p25 (0x400000)
-#define MCF_CTM_CTCRF_PCT_OFF (0x500000)
-#define MCF_CTM_CTCRF_M (0x800000)
-#define MCF_CTM_CTCRF_IM (0x1000000)
-#define MCF_CTM_CTCRF_I (0x80000000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRV */
-#define MCF_CTM_CTCRV_CRV(x) (((x)&0xFFFFFF)<<0)
-#define MCF_CTM_CTCRV_PCT(x) (((x)&0x7)<<0x18)
-#define MCF_CTM_CTCRV_PCT_100 (0)
-#define MCF_CTM_CTCRV_PCT_50 (0x1000000)
-#define MCF_CTM_CTCRV_PCT_25 (0x2000000)
-#define MCF_CTM_CTCRV_PCT_12p5 (0x3000000)
-#define MCF_CTM_CTCRV_PCT_6p25 (0x4000000)
-#define MCF_CTM_CTCRV_PCT_OFF (0x5000000)
-#define MCF_CTM_CTCRV_M (0x8000000)
-#define MCF_CTM_CTCRV_S (0x10000000)
-
-
-#endif /* __MCF5475_CTM_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_DMA.h b/BaS_gcc/tos/pci_mem/include/MCF5475_DMA.h
deleted file mode 100644
index 4e6f916..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_DMA.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DMA_H__
-#define __MCF5475_DMA_H__
-
-
-/*********************************************************************
-*
-* Multichannel DMA (DMA)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DMA_TASKBAR (*(volatile uint32_t*)(&_MBAR[0x8000]))
-#define MCF_DMA_CP (*(volatile uint32_t*)(&_MBAR[0x8004]))
-#define MCF_DMA_EP (*(volatile uint32_t*)(&_MBAR[0x8008]))
-#define MCF_DMA_VP (*(volatile uint32_t*)(&_MBAR[0x800C]))
-#define MCF_DMA_PTD (*(volatile uint32_t*)(&_MBAR[0x8010]))
-#define MCF_DMA_DIPR (*(volatile uint32_t*)(&_MBAR[0x8014]))
-#define MCF_DMA_DIMR (*(volatile uint32_t*)(&_MBAR[0x8018]))
-#define MCF_DMA_TCR0 (*(volatile uint16_t*)(&_MBAR[0x801C]))
-#define MCF_DMA_TCR1 (*(volatile uint16_t*)(&_MBAR[0x801E]))
-#define MCF_DMA_TCR2 (*(volatile uint16_t*)(&_MBAR[0x8020]))
-#define MCF_DMA_TCR3 (*(volatile uint16_t*)(&_MBAR[0x8022]))
-#define MCF_DMA_TCR4 (*(volatile uint16_t*)(&_MBAR[0x8024]))
-#define MCF_DMA_TCR5 (*(volatile uint16_t*)(&_MBAR[0x8026]))
-#define MCF_DMA_TCR6 (*(volatile uint16_t*)(&_MBAR[0x8028]))
-#define MCF_DMA_TCR7 (*(volatile uint16_t*)(&_MBAR[0x802A]))
-#define MCF_DMA_TCR8 (*(volatile uint16_t*)(&_MBAR[0x802C]))
-#define MCF_DMA_TCR9 (*(volatile uint16_t*)(&_MBAR[0x802E]))
-#define MCF_DMA_TCR10 (*(volatile uint16_t*)(&_MBAR[0x8030]))
-#define MCF_DMA_TCR11 (*(volatile uint16_t*)(&_MBAR[0x8032]))
-#define MCF_DMA_TCR12 (*(volatile uint16_t*)(&_MBAR[0x8034]))
-#define MCF_DMA_TCR13 (*(volatile uint16_t*)(&_MBAR[0x8036]))
-#define MCF_DMA_TCR14 (*(volatile uint16_t*)(&_MBAR[0x8038]))
-#define MCF_DMA_TCR15 (*(volatile uint16_t*)(&_MBAR[0x803A]))
-#define MCF_DMA_PRIOR0 (*(volatile uint8_t *)(&_MBAR[0x803C]))
-#define MCF_DMA_PRIOR1 (*(volatile uint8_t *)(&_MBAR[0x803D]))
-#define MCF_DMA_PRIOR2 (*(volatile uint8_t *)(&_MBAR[0x803E]))
-#define MCF_DMA_PRIOR3 (*(volatile uint8_t *)(&_MBAR[0x803F]))
-#define MCF_DMA_PRIOR4 (*(volatile uint8_t *)(&_MBAR[0x8040]))
-#define MCF_DMA_PRIOR5 (*(volatile uint8_t *)(&_MBAR[0x8041]))
-#define MCF_DMA_PRIOR6 (*(volatile uint8_t *)(&_MBAR[0x8042]))
-#define MCF_DMA_PRIOR7 (*(volatile uint8_t *)(&_MBAR[0x8043]))
-#define MCF_DMA_PRIOR8 (*(volatile uint8_t *)(&_MBAR[0x8044]))
-#define MCF_DMA_PRIOR9 (*(volatile uint8_t *)(&_MBAR[0x8045]))
-#define MCF_DMA_PRIOR10 (*(volatile uint8_t *)(&_MBAR[0x8046]))
-#define MCF_DMA_PRIOR11 (*(volatile uint8_t *)(&_MBAR[0x8047]))
-#define MCF_DMA_PRIOR12 (*(volatile uint8_t *)(&_MBAR[0x8048]))
-#define MCF_DMA_PRIOR13 (*(volatile uint8_t *)(&_MBAR[0x8049]))
-#define MCF_DMA_PRIOR14 (*(volatile uint8_t *)(&_MBAR[0x804A]))
-#define MCF_DMA_PRIOR15 (*(volatile uint8_t *)(&_MBAR[0x804B]))
-#define MCF_DMA_PRIOR16 (*(volatile uint8_t *)(&_MBAR[0x804C]))
-#define MCF_DMA_PRIOR17 (*(volatile uint8_t *)(&_MBAR[0x804D]))
-#define MCF_DMA_PRIOR18 (*(volatile uint8_t *)(&_MBAR[0x804E]))
-#define MCF_DMA_PRIOR19 (*(volatile uint8_t *)(&_MBAR[0x804F]))
-#define MCF_DMA_PRIOR20 (*(volatile uint8_t *)(&_MBAR[0x8050]))
-#define MCF_DMA_PRIOR21 (*(volatile uint8_t *)(&_MBAR[0x8051]))
-#define MCF_DMA_PRIOR22 (*(volatile uint8_t *)(&_MBAR[0x8052]))
-#define MCF_DMA_PRIOR23 (*(volatile uint8_t *)(&_MBAR[0x8053]))
-#define MCF_DMA_PRIOR24 (*(volatile uint8_t *)(&_MBAR[0x8054]))
-#define MCF_DMA_PRIOR25 (*(volatile uint8_t *)(&_MBAR[0x8055]))
-#define MCF_DMA_PRIOR26 (*(volatile uint8_t *)(&_MBAR[0x8056]))
-#define MCF_DMA_PRIOR27 (*(volatile uint8_t *)(&_MBAR[0x8057]))
-#define MCF_DMA_PRIOR28 (*(volatile uint8_t *)(&_MBAR[0x8058]))
-#define MCF_DMA_PRIOR29 (*(volatile uint8_t *)(&_MBAR[0x8059]))
-#define MCF_DMA_PRIOR30 (*(volatile uint8_t *)(&_MBAR[0x805A]))
-#define MCF_DMA_PRIOR31 (*(volatile uint8_t *)(&_MBAR[0x805B]))
-#define MCF_DMA_IMCR (*(volatile uint32_t*)(&_MBAR[0x805C]))
-#define MCF_DMA_TSKSZ0 (*(volatile uint32_t*)(&_MBAR[0x8060]))
-#define MCF_DMA_TSKSZ1 (*(volatile uint32_t*)(&_MBAR[0x8064]))
-#define MCF_DMA_DBGCOMP0 (*(volatile uint32_t*)(&_MBAR[0x8070]))
-#define MCF_DMA_DBGCOMP2 (*(volatile uint32_t*)(&_MBAR[0x8074]))
-#define MCF_DMA_DBGCTL (*(volatile uint32_t*)(&_MBAR[0x8078]))
-#define MCF_DMA_TCR(x) (*(volatile uint16_t*)(&_MBAR[0x801C + ((x)*0x2)]))
-#define MCF_DMA_PRIOR(x) (*(volatile uint8_t *)(&_MBAR[0x803C + ((x)*0x1)]))
-
-
-/* Bit definitions and macros for MCF_DMA_TASKBAR */
-#define MCF_DMA_TASKBAR_TASK_BASE_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_CP */
-#define MCF_DMA_CP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_EP */
-#define MCF_DMA_EP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_VP */
-#define MCF_DMA_VP_VARIABLE_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_PTD */
-#define MCF_DMA_PTD_PCTL0 (0x1)
-#define MCF_DMA_PTD_PCTL1 (0x2)
-#define MCF_DMA_PTD_PCTL13 (0x2000)
-#define MCF_DMA_PTD_PCTL14 (0x4000)
-#define MCF_DMA_PTD_PCTL15 (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_TCR */
-#define MCF_DMA_TCR_ASTSKNUM(x) (((x)&0xF)<<0)
-#define MCF_DMA_TCR_HLDINITNUM (0x20)
-#define MCF_DMA_TCR_HIPRITSKEN (0x40)
-#define MCF_DMA_TCR_ASTRT (0x80)
-#define MCF_DMA_TCR_INITNUM(x) (((x)&0x1F)<<0x8)
-#define MCF_DMA_TCR_ALWINIT (0x2000)
-#define MCF_DMA_TCR_V (0x4000)
-#define MCF_DMA_TCR_EN (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_PRIOR */
-#define MCF_DMA_PRIOR_PRI(x) (((x)&0x7)<<0)
-#define MCF_DMA_PRIOR_HLD (0x80)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_IMC16(x) (((x)&0x3)<<0)
-#define MCF_DMA_IMCR_IMC17(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_IMCR_IMC18(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_IMCR_IMC19(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_IMCR_IMC20(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_IMCR_IMC21(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_IMCR_IMC22(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_IMCR_IMC23(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_IMCR_IMC24(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_IMCR_IMC25(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_IMCR_IMC26(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_IMCR_IMC27(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_IMCR_IMC28(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_IMCR_IMC29(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_IMCR_IMC30(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_IMCR_IMC31(x) (((x)&0x3)<<0x1E)
-
-
-#define MCF_DMA_IMCR_IMC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_IMC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_IMC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_IMC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_IMC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_IMC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_IMC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_IMC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_IMC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_IMC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_IMC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_IMC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_IMC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_IMC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_IMC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_IMC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_IMC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_IMC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_IMC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_IMC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_IMC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_IMC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_IMC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_IMC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_IMC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_IMC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_IMC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_IMC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_IMC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_IMC31_PSC3TX (0xC0000000)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ0 */
-#define MCF_DMA_TSKSZ0_DSTSZ7(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ0_SRCSZ7(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ0_DSTSZ6(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ0_SRCSZ6(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ0_DSTSZ5(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ0_SRCSZ5(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ0_DSTSZ4(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ0_SRCSZ4(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ0_DSTSZ3(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ0_SRCSZ3(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ0_DSTSZ2(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ0_SRCSZ2(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ0_DSTSZ1(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ0_SRCSZ1(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ0_DSTSZ0(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ0_SRCSZ0(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ1 */
-#define MCF_DMA_TSKSZ1_DSTSZ15(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ1_SRCSZ15(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ1_DSTSZ14(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ1_SRCSZ14(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ1_DSTSZ13(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ1_SRCSZ13(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ1_DSTSZ12(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ1_SRCSZ12(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ1_DSTSZ11(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ1_SRCSZ11(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ1_DSTSZ10(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ1_SRCSZ10(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ1_DSTSZ9(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ1_SRCSZ9(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ1_DSTSZ8(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ1_SRCSZ8(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP0 */
-#define MCF_DMA_DBGCOMP0_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP2 */
-#define MCF_DMA_DBGCOMP2_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCTL */
-#define MCF_DMA_DBGCTL_I (0x2)
-#define MCF_DMA_DBGCTL_E (0x4)
-#define MCF_DMA_DBGCTL_AND_OR (0x80)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_2(x) (((x)&0x7)<<0x8)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_1(x) (((x)&0x7)<<0xB)
-#define MCF_DMA_DBGCTL_B (0x4000)
-#define MCF_DMA_DBGCTL_AA (0x8000)
-#define MCF_DMA_DBGCTL_BLOCK_TASKS(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_DMA_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_DSPI.h b/BaS_gcc/tos/pci_mem/include/MCF5475_DSPI.h
deleted file mode 100644
index 76cac28..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_DSPI.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DSPI_H__
-#define __MCF5475_DSPI_H__
-
-
-/*********************************************************************
-*
-* DMA Serial Peripheral Interface (DSPI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(volatile uint32_t*)(&_MBAR[0x8A00]))
-#define MCF_DSPI_DTCR (*(volatile uint32_t*)(&_MBAR[0x8A08]))
-#define MCF_DSPI_DCTAR0 (*(volatile uint32_t*)(&_MBAR[0x8A0C]))
-#define MCF_DSPI_DCTAR1 (*(volatile uint32_t*)(&_MBAR[0x8A10]))
-#define MCF_DSPI_DCTAR2 (*(volatile uint32_t*)(&_MBAR[0x8A14]))
-#define MCF_DSPI_DCTAR3 (*(volatile uint32_t*)(&_MBAR[0x8A18]))
-#define MCF_DSPI_DCTAR4 (*(volatile uint32_t*)(&_MBAR[0x8A1C]))
-#define MCF_DSPI_DCTAR5 (*(volatile uint32_t*)(&_MBAR[0x8A20]))
-#define MCF_DSPI_DCTAR6 (*(volatile uint32_t*)(&_MBAR[0x8A24]))
-#define MCF_DSPI_DCTAR7 (*(volatile uint32_t*)(&_MBAR[0x8A28]))
-#define MCF_DSPI_DSR (*(volatile uint32_t*)(&_MBAR[0x8A2C]))
-#define MCF_DSPI_DIRSR (*(volatile uint32_t*)(&_MBAR[0x8A30]))
-#define MCF_DSPI_DTFR (*(volatile uint32_t*)(&_MBAR[0x8A34]))
-#define MCF_DSPI_DRFR (*(volatile uint32_t*)(&_MBAR[0x8A38]))
-#define MCF_DSPI_DTFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A3C]))
-#define MCF_DSPI_DTFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A40]))
-#define MCF_DSPI_DTFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A44]))
-#define MCF_DSPI_DTFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A48]))
-#define MCF_DSPI_DRFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A7C]))
-#define MCF_DSPI_DRFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A80]))
-#define MCF_DSPI_DRFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A84]))
-#define MCF_DSPI_DRFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A88]))
-#define MCF_DSPI_DCTAR(x) (*(volatile uint32_t*)(&_MBAR[0x8A0C + ((x)*0x4)]))
-#define MCF_DSPI_DTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A3C + ((x)*0x4)]))
-#define MCF_DSPI_DRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A7C + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x1)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x3)<<0x8)
-#define MCF_DSPI_DMCR_SMPL_PT_0CLK (0)
-#define MCF_DSPI_DMCR_SMPL_PT_1CLK (0x100)
-#define MCF_DSPI_DMCR_SMPL_PT_2CLK (0x200)
-#define MCF_DSPI_DMCR_CRXF (0x400)
-#define MCF_DSPI_DMCR_CTXF (0x800)
-#define MCF_DSPI_DMCR_DRXF (0x1000)
-#define MCF_DSPI_DMCR_DTXF (0x2000)
-#define MCF_DSPI_DMCR_CSIS0 (0x10000)
-#define MCF_DSPI_DMCR_CSIS2 (0x40000)
-#define MCF_DSPI_DMCR_CSIS3 (0x80000)
-#define MCF_DSPI_DMCR_CSIS5 (0x200000)
-#define MCF_DSPI_DMCR_ROOE (0x1000000)
-#define MCF_DSPI_DMCR_PCSSE (0x2000000)
-#define MCF_DSPI_DMCR_MTFE (0x4000000)
-#define MCF_DSPI_DMCR_FRZ (0x8000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x3)<<0x1C)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DCTAR */
-#define MCF_DSPI_DCTAR_BR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DCTAR_DT(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DCTAR_ASC(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DCTAR_CSSCK(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DCTAR_PBR(x) (((x)&0x3)<<0x10)
-#define MCF_DSPI_DCTAR_PBR_1CLK (0)
-#define MCF_DSPI_DCTAR_PBR_3CLK (0x10000)
-#define MCF_DSPI_DCTAR_PBR_5CLK (0x20000)
-#define MCF_DSPI_DCTAR_PBR_7CLK (0x30000)
-#define MCF_DSPI_DCTAR_PDT(x) (((x)&0x3)<<0x12)
-#define MCF_DSPI_DCTAR_PDT_1CLK (0)
-#define MCF_DSPI_DCTAR_PDT_3CLK (0x40000)
-#define MCF_DSPI_DCTAR_PDT_5CLK (0x80000)
-#define MCF_DSPI_DCTAR_PDT_7CLK (0xC0000)
-#define MCF_DSPI_DCTAR_PASC(x) (((x)&0x3)<<0x14)
-#define MCF_DSPI_DCTAR_PASC_1CLK (0)
-#define MCF_DSPI_DCTAR_PASC_3CLK (0x100000)
-#define MCF_DSPI_DCTAR_PASC_5CLK (0x200000)
-#define MCF_DSPI_DCTAR_PASC_7CLK (0x300000)
-#define MCF_DSPI_DCTAR_PCSSCK(x) (((x)&0x3)<<0x16)
-#define MCF_DSPI_DCTAR_LSBFE (0x1000000)
-#define MCF_DSPI_DCTAR_CPHA (0x2000000)
-#define MCF_DSPI_DCTAR_CPOL (0x4000000)
-#define MCF_DSPI_DCTAR_TRSZ(x) (((x)&0xF)<<0x1B)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DSR_RFDF (0x20000)
-#define MCF_DSPI_DSR_RFOF (0x80000)
-#define MCF_DSPI_DSR_TFFF (0x2000000)
-#define MCF_DSPI_DSR_TFUF (0x8000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x10000)
-#define MCF_DSPI_DIRSR_RFDFE (0x20000)
-#define MCF_DSPI_DIRSR_RFOFE (0x80000)
-#define MCF_DSPI_DIRSR_TFFFS (0x1000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x2000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x8000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x10000)
-#define MCF_DSPI_DTFR_CS2 (0x40000)
-#define MCF_DSPI_DTFR_CS3 (0x80000)
-#define MCF_DSPI_DTFR_CS5 (0x200000)
-#define MCF_DSPI_DTFR_CTCNT (0x4000000)
-#define MCF_DSPI_DTFR_EOQ (0x8000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x7)<<0x1C)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDR */
-#define MCF_DSPI_DTFDR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFDR_TXCMD(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDR */
-#define MCF_DSPI_DRFDR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-
-#endif /* __MCF5475_DSPI_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_EPORT.h b/BaS_gcc/tos/pci_mem/include/MCF5475_EPORT.h
deleted file mode 100644
index 6506196..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_EPORT.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_EPORT_H__
-#define __MCF5475_EPORT_H__
-
-
-/*********************************************************************
-*
-* Edge Port Module (EPORT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(volatile uint16_t*)(&_MBAR[0xF00]))
-#define MCF_EPORT_EPDDR (*(volatile uint8_t *)(&_MBAR[0xF04]))
-#define MCF_EPORT_EPIER (*(volatile uint8_t *)(&_MBAR[0xF05]))
-#define MCF_EPORT_EPDR (*(volatile uint8_t *)(&_MBAR[0xF08]))
-#define MCF_EPORT_EPPDR (*(volatile uint8_t *)(&_MBAR[0xF09]))
-#define MCF_EPORT_EPFR (*(volatile uint8_t *)(&_MBAR[0xF0C]))
-
-
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x3)<<0x2)
-#define MCF_EPORT_EPPAR_EPPA1_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA1_RISING (0x4)
-#define MCF_EPORT_EPPAR_EPPA1_FALLING (0x8)
-#define MCF_EPORT_EPPAR_EPPA1_BOTH (0xC)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x3)<<0x4)
-#define MCF_EPORT_EPPAR_EPPA2_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA2_RISING (0x10)
-#define MCF_EPORT_EPPAR_EPPA2_FALLING (0x20)
-#define MCF_EPORT_EPPAR_EPPA2_BOTH (0x30)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x3)<<0x6)
-#define MCF_EPORT_EPPAR_EPPA3_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA3_RISING (0x40)
-#define MCF_EPORT_EPPAR_EPPA3_FALLING (0x80)
-#define MCF_EPORT_EPPAR_EPPA3_BOTH (0xC0)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x3)<<0x8)
-#define MCF_EPORT_EPPAR_EPPA4_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA4_RISING (0x100)
-#define MCF_EPORT_EPPAR_EPPA4_FALLING (0x200)
-#define MCF_EPORT_EPPAR_EPPA4_BOTH (0x300)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x3)<<0xA)
-#define MCF_EPORT_EPPAR_EPPA5_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA5_RISING (0x400)
-#define MCF_EPORT_EPPAR_EPPA5_FALLING (0x800)
-#define MCF_EPORT_EPPAR_EPPA5_BOTH (0xC00)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x3)<<0xC)
-#define MCF_EPORT_EPPAR_EPPA6_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA6_RISING (0x1000)
-#define MCF_EPORT_EPPAR_EPPA6_FALLING (0x2000)
-#define MCF_EPORT_EPPAR_EPPA6_BOTH (0x3000)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x3)<<0xE)
-#define MCF_EPORT_EPPAR_EPPA7_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA7_RISING (0x4000)
-#define MCF_EPORT_EPPAR_EPPA7_FALLING (0x8000)
-#define MCF_EPORT_EPPAR_EPPA7_BOTH (0xC000)
-#define MCF_EPORT_EPPAR_LEVEL (0)
-#define MCF_EPORT_EPPAR_RISING (0x1)
-#define MCF_EPORT_EPPAR_FALLING (0x2)
-#define MCF_EPORT_EPPAR_BOTH (0x3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x2)
-#define MCF_EPORT_EPDDR_EPDD2 (0x4)
-#define MCF_EPORT_EPDDR_EPDD3 (0x8)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x2)
-#define MCF_EPORT_EPIER_EPIE2 (0x4)
-#define MCF_EPORT_EPIER_EPIE3 (0x8)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x2)
-#define MCF_EPORT_EPDR_EPD2 (0x4)
-#define MCF_EPORT_EPDR_EPD3 (0x8)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x2)
-#define MCF_EPORT_EPPDR_EPPD2 (0x4)
-#define MCF_EPORT_EPPDR_EPPD3 (0x8)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x2)
-#define MCF_EPORT_EPFR_EPF2 (0x4)
-#define MCF_EPORT_EPFR_EPF3 (0x8)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-
-#endif /* __MCF5475_EPORT_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_FBCS.h b/BaS_gcc/tos/pci_mem/include/MCF5475_FBCS.h
deleted file mode 100644
index 37daf00..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_FBCS.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FBCS_H__
-#define __MCF5475_FBCS_H__
-
-
-/*********************************************************************
-*
-* FlexBus Chip Select Module (FBCS)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FBCS0_CSAR (*(volatile uint32_t*)(&_MBAR[0x500]))
-#define MCF_FBCS0_CSMR (*(volatile uint32_t*)(&_MBAR[0x504]))
-#define MCF_FBCS0_CSCR (*(volatile uint32_t*)(&_MBAR[0x508]))
-
-#define MCF_FBCS1_CSAR (*(volatile uint32_t*)(&_MBAR[0x50C]))
-#define MCF_FBCS1_CSMR (*(volatile uint32_t*)(&_MBAR[0x510]))
-#define MCF_FBCS1_CSCR (*(volatile uint32_t*)(&_MBAR[0x514]))
-
-#define MCF_FBCS2_CSAR (*(volatile uint32_t*)(&_MBAR[0x518]))
-#define MCF_FBCS2_CSMR (*(volatile uint32_t*)(&_MBAR[0x51C]))
-#define MCF_FBCS2_CSCR (*(volatile uint32_t*)(&_MBAR[0x520]))
-
-#define MCF_FBCS3_CSAR (*(volatile uint32_t*)(&_MBAR[0x524]))
-#define MCF_FBCS3_CSMR (*(volatile uint32_t*)(&_MBAR[0x528]))
-#define MCF_FBCS3_CSCR (*(volatile uint32_t*)(&_MBAR[0x52C]))
-
-#define MCF_FBCS4_CSAR (*(volatile uint32_t*)(&_MBAR[0x530]))
-#define MCF_FBCS4_CSMR (*(volatile uint32_t*)(&_MBAR[0x534]))
-#define MCF_FBCS4_CSCR (*(volatile uint32_t*)(&_MBAR[0x538]))
-
-#define MCF_FBCS5_CSAR (*(volatile uint32_t*)(&_MBAR[0x53C]))
-#define MCF_FBCS5_CSMR (*(volatile uint32_t*)(&_MBAR[0x540]))
-#define MCF_FBCS5_CSCR (*(volatile uint32_t*)(&_MBAR[0x544]))
-
-#define MCF_FBCS_CSAR(x) (*(volatile uint32_t*)(&_MBAR[0x500 + ((x)*0xC)]))
-#define MCF_FBCS_CSMR(x) (*(volatile uint32_t*)(&_MBAR[0x504 + ((x)*0xC)]))
-#define MCF_FBCS_CSCR(x) (*(volatile uint32_t*)(&_MBAR[0x508 + ((x)*0xC)]))
-
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x1)
-#define MCF_FBCS_CSMR_WP (0x100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0xFFFF)<<0x10)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0xFFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x7FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x3FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x1FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0xFF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x7F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x3F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x1F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0xF0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0xF0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x70000)
-#define MCF_FBCS_CSMR_BAM_256K (0x30000)
-#define MCF_FBCS_CSMR_BAM_128K (0x10000)
-#define MCF_FBCS_CSMR_BAM_64K (0)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x8)
-#define MCF_FBCS_CSCR_BSTR (0x10)
-#define MCF_FBCS_CSCR_BEM (0x20)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x3)<<0x6)
-#define MCF_FBCS_CSCR_PS_32 (0)
-#define MCF_FBCS_CSCR_PS_8 (0x40)
-#define MCF_FBCS_CSCR_PS_16 (0x80)
-#define MCF_FBCS_CSCR_AA (0x100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x3F)<<0xA)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x3)<<0x10)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x3)<<0x12)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x3)<<0x14)
-#define MCF_FBCS_CSCR_SWSEN (0x800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x3F)<<0x1A)
-
-
-#endif /* __MCF5475_FBCS_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_FEC.h b/BaS_gcc/tos/pci_mem/include/MCF5475_FEC.h
deleted file mode 100644
index fdd9403..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_FEC.h
+++ /dev/null
@@ -1,680 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FEC_H__
-#define __MCF5475_FEC_H__
-
-
-/*********************************************************************
-*
-* Fast Ethernet Controller(FEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FEC0_EIR (*(volatile uint32_t*)(&_MBAR[0x9004]))
-#define MCF_FEC0_EIMR (*(volatile uint32_t*)(&_MBAR[0x9008]))
-#define MCF_FEC0_ECR (*(volatile uint32_t*)(&_MBAR[0x9024]))
-#define MCF_FEC0_MMFR (*(volatile uint32_t*)(&_MBAR[0x9040]))
-#define MCF_FEC0_MSCR (*(volatile uint32_t*)(&_MBAR[0x9044]))
-#define MCF_FEC0_MIBC (*(volatile uint32_t*)(&_MBAR[0x9064]))
-#define MCF_FEC0_RCR (*(volatile uint32_t*)(&_MBAR[0x9084]))
-#define MCF_FEC0_RHR (*(volatile uint32_t*)(&_MBAR[0x9088]))
-#define MCF_FEC0_TCR (*(volatile uint32_t*)(&_MBAR[0x90C4]))
-#define MCF_FEC0_PALR (*(volatile uint32_t*)(&_MBAR[0x90E4]))
-#define MCF_FEC0_PAHR (*(volatile uint32_t*)(&_MBAR[0x90E8]))
-#define MCF_FEC0_OPD (*(volatile uint32_t*)(&_MBAR[0x90EC]))
-#define MCF_FEC0_IAUR (*(volatile uint32_t*)(&_MBAR[0x9118]))
-#define MCF_FEC0_IALR (*(volatile uint32_t*)(&_MBAR[0x911C]))
-#define MCF_FEC0_GAUR (*(volatile uint32_t*)(&_MBAR[0x9120]))
-#define MCF_FEC0_GALR (*(volatile uint32_t*)(&_MBAR[0x9124]))
-#define MCF_FEC0_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9144]))
-#define MCF_FEC0_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9184]))
-#define MCF_FEC0_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9188]))
-#define MCF_FEC0_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x918C]))
-#define MCF_FEC0_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9190]))
-#define MCF_FEC0_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9194]))
-#define MCF_FEC0_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9198]))
-#define MCF_FEC0_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x919C]))
-#define MCF_FEC0_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x91A0]))
-#define MCF_FEC0_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x91A4]))
-#define MCF_FEC0_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x91A8]))
-#define MCF_FEC0_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x91AC]))
-#define MCF_FEC0_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x91B0]))
-#define MCF_FEC0_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x91B4]))
-#define MCF_FEC0_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x91B8]))
-#define MCF_FEC0_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x91BC]))
-#define MCF_FEC0_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x91C0]))
-#define MCF_FEC0_FECFRST (*(volatile uint32_t*)(&_MBAR[0x91C4]))
-#define MCF_FEC0_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x91C8]))
-#define MCF_FEC0_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9200]))
-#define MCF_FEC0_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9204]))
-#define MCF_FEC0_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9208]))
-#define MCF_FEC0_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x920C]))
-#define MCF_FEC0_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9210]))
-#define MCF_FEC0_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9214]))
-#define MCF_FEC0_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9218]))
-#define MCF_FEC0_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x921C]))
-#define MCF_FEC0_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9220]))
-#define MCF_FEC0_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9224]))
-#define MCF_FEC0_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9228]))
-#define MCF_FEC0_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x922C]))
-#define MCF_FEC0_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9230]))
-#define MCF_FEC0_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9234]))
-#define MCF_FEC0_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9238]))
-#define MCF_FEC0_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x923C]))
-#define MCF_FEC0_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9240]))
-#define MCF_FEC0_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9244]))
-#define MCF_FEC0_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9248]))
-#define MCF_FEC0_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x924C]))
-#define MCF_FEC0_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9250]))
-#define MCF_FEC0_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9254]))
-#define MCF_FEC0_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9258]))
-#define MCF_FEC0_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x925C]))
-#define MCF_FEC0_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9260]))
-#define MCF_FEC0_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9264]))
-#define MCF_FEC0_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9268]))
-#define MCF_FEC0_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x926C]))
-#define MCF_FEC0_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9270]))
-#define MCF_FEC0_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9274]))
-#define MCF_FEC0_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9280]))
-#define MCF_FEC0_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9284]))
-#define MCF_FEC0_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9288]))
-#define MCF_FEC0_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x928C]))
-#define MCF_FEC0_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9290]))
-#define MCF_FEC0_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9294]))
-#define MCF_FEC0_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9298]))
-#define MCF_FEC0_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x929C]))
-#define MCF_FEC0_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x92A0]))
-#define MCF_FEC0_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x92A4]))
-#define MCF_FEC0_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x92A8]))
-#define MCF_FEC0_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x92AC]))
-#define MCF_FEC0_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x92B0]))
-#define MCF_FEC0_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x92B4]))
-#define MCF_FEC0_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x92B8]))
-#define MCF_FEC0_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x92BC]))
-#define MCF_FEC0_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x92C0]))
-#define MCF_FEC0_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x92C4]))
-#define MCF_FEC0_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x92C8]))
-#define MCF_FEC0_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x92CC]))
-#define MCF_FEC0_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x92D0]))
-#define MCF_FEC0_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x92D4]))
-#define MCF_FEC0_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x92D8]))
-#define MCF_FEC0_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x92DC]))
-#define MCF_FEC0_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x92E0]))
-
-#define MCF_FEC1_EIR (*(volatile uint32_t*)(&_MBAR[0x9804]))
-#define MCF_FEC1_EIMR (*(volatile uint32_t*)(&_MBAR[0x9808]))
-#define MCF_FEC1_ECR (*(volatile uint32_t*)(&_MBAR[0x9824]))
-#define MCF_FEC1_MMFR (*(volatile uint32_t*)(&_MBAR[0x9840]))
-#define MCF_FEC1_MSCR (*(volatile uint32_t*)(&_MBAR[0x9844]))
-#define MCF_FEC1_MIBC (*(volatile uint32_t*)(&_MBAR[0x9864]))
-#define MCF_FEC1_RCR (*(volatile uint32_t*)(&_MBAR[0x9884]))
-#define MCF_FEC1_RHR (*(volatile uint32_t*)(&_MBAR[0x9888]))
-#define MCF_FEC1_TCR (*(volatile uint32_t*)(&_MBAR[0x98C4]))
-#define MCF_FEC1_PALR (*(volatile uint32_t*)(&_MBAR[0x98E4]))
-#define MCF_FEC1_PAHR (*(volatile uint32_t*)(&_MBAR[0x98E8]))
-#define MCF_FEC1_OPD (*(volatile uint32_t*)(&_MBAR[0x98EC]))
-#define MCF_FEC1_IAUR (*(volatile uint32_t*)(&_MBAR[0x9918]))
-#define MCF_FEC1_IALR (*(volatile uint32_t*)(&_MBAR[0x991C]))
-#define MCF_FEC1_GAUR (*(volatile uint32_t*)(&_MBAR[0x9920]))
-#define MCF_FEC1_GALR (*(volatile uint32_t*)(&_MBAR[0x9924]))
-#define MCF_FEC1_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9944]))
-#define MCF_FEC1_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9984]))
-#define MCF_FEC1_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9988]))
-#define MCF_FEC1_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x998C]))
-#define MCF_FEC1_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9990]))
-#define MCF_FEC1_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9994]))
-#define MCF_FEC1_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9998]))
-#define MCF_FEC1_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x999C]))
-#define MCF_FEC1_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x99A0]))
-#define MCF_FEC1_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x99A4]))
-#define MCF_FEC1_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x99A8]))
-#define MCF_FEC1_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x99AC]))
-#define MCF_FEC1_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x99B0]))
-#define MCF_FEC1_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x99B4]))
-#define MCF_FEC1_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x99B8]))
-#define MCF_FEC1_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x99BC]))
-#define MCF_FEC1_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x99C0]))
-#define MCF_FEC1_FECFRST (*(volatile uint32_t*)(&_MBAR[0x99C4]))
-#define MCF_FEC1_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x99C8]))
-#define MCF_FEC1_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A00]))
-#define MCF_FEC1_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A04]))
-#define MCF_FEC1_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A08]))
-#define MCF_FEC1_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A0C]))
-#define MCF_FEC1_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A10]))
-#define MCF_FEC1_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A14]))
-#define MCF_FEC1_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A18]))
-#define MCF_FEC1_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A1C]))
-#define MCF_FEC1_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9A20]))
-#define MCF_FEC1_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9A24]))
-#define MCF_FEC1_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9A28]))
-#define MCF_FEC1_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9A2C]))
-#define MCF_FEC1_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9A30]))
-#define MCF_FEC1_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9A34]))
-#define MCF_FEC1_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9A38]))
-#define MCF_FEC1_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9A3C]))
-#define MCF_FEC1_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9A40]))
-#define MCF_FEC1_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9A44]))
-#define MCF_FEC1_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A48]))
-#define MCF_FEC1_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9A4C]))
-#define MCF_FEC1_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9A50]))
-#define MCF_FEC1_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9A54]))
-#define MCF_FEC1_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9A58]))
-#define MCF_FEC1_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x9A5C]))
-#define MCF_FEC1_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9A60]))
-#define MCF_FEC1_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9A64]))
-#define MCF_FEC1_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9A68]))
-#define MCF_FEC1_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x9A6C]))
-#define MCF_FEC1_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9A70]))
-#define MCF_FEC1_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9A74]))
-#define MCF_FEC1_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9A80]))
-#define MCF_FEC1_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A84]))
-#define MCF_FEC1_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A88]))
-#define MCF_FEC1_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A8C]))
-#define MCF_FEC1_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A90]))
-#define MCF_FEC1_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A94]))
-#define MCF_FEC1_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A98]))
-#define MCF_FEC1_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A9C]))
-#define MCF_FEC1_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x9AA0]))
-#define MCF_FEC1_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x9AA4]))
-#define MCF_FEC1_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x9AA8]))
-#define MCF_FEC1_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9AAC]))
-#define MCF_FEC1_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9AB0]))
-#define MCF_FEC1_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9AB4]))
-#define MCF_FEC1_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9AB8]))
-#define MCF_FEC1_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9ABC]))
-#define MCF_FEC1_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9AC0]))
-#define MCF_FEC1_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9AC4]))
-#define MCF_FEC1_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9AC8]))
-#define MCF_FEC1_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9ACC]))
-#define MCF_FEC1_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x9AD0]))
-#define MCF_FEC1_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9AD4]))
-#define MCF_FEC1_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x9AD8]))
-#define MCF_FEC1_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9ADC]))
-#define MCF_FEC1_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9AE0]))
-
-#define MCF_FEC_EIR(x) (*(volatile uint32_t*)(&_MBAR[0x9004 + ((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(volatile uint32_t*)(&_MBAR[0x9008 + ((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(volatile uint32_t*)(&_MBAR[0x9024 + ((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(volatile uint32_t*)(&_MBAR[0x9040 + ((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(volatile uint32_t*)(&_MBAR[0x9044 + ((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(volatile uint32_t*)(&_MBAR[0x9064 + ((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(volatile uint32_t*)(&_MBAR[0x9084 + ((x)*0x800)]))
-#define MCF_FEC_RHR(x) (*(volatile uint32_t*)(&_MBAR[0x9088 + ((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(volatile uint32_t*)(&_MBAR[0x90C4 + ((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(volatile uint32_t*)(&_MBAR[0x90E4 + ((x)*0x800)]))
-#define MCF_FEC_PAHR(x) (*(volatile uint32_t*)(&_MBAR[0x90E8 + ((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(volatile uint32_t*)(&_MBAR[0x90EC + ((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9118 + ((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(volatile uint32_t*)(&_MBAR[0x911C + ((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9120 + ((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(volatile uint32_t*)(&_MBAR[0x9124 + ((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(volatile uint32_t*)(&_MBAR[0x9144 + ((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x9184 + ((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(volatile uint32_t*)(&_MBAR[0x9188 + ((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x918C + ((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x9190 + ((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x9194 + ((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(volatile uint32_t*)(&_MBAR[0x9198 + ((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(volatile uint32_t*)(&_MBAR[0x919C + ((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91A0 + ((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x91A4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(volatile uint32_t*)(&_MBAR[0x91A8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x91AC + ((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B0 + ((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(volatile uint32_t*)(&_MBAR[0x91B8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(volatile uint32_t*)(&_MBAR[0x91BC + ((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91C0 + ((x)*0x800)]))
-#define MCF_FEC_FECFRST(x) (*(volatile uint32_t*)(&_MBAR[0x91C4 + ((x)*0x800)]))
-#define MCF_FEC_FECCTCWR(x) (*(volatile uint32_t*)(&_MBAR[0x91C8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9200 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9204 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9208 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x920C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9210 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9214 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9218 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x921C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x9220 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(volatile uint32_t*)(&_MBAR[0x9224 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(volatile uint32_t*)(&_MBAR[0x9228 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x922C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x9230 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x9234 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x9238 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x923C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x9240 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x9244 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9248 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x924C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(volatile uint32_t*)(&_MBAR[0x9250 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9254 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(volatile uint32_t*)(&_MBAR[0x9258 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(volatile uint32_t*)(&_MBAR[0x925C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9260 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x9264 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(volatile uint32_t*)(&_MBAR[0x9268 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(volatile uint32_t*)(&_MBAR[0x926C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x9270 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x9274 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9280 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9284 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9288 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x928C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9290 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9294 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9298 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x929C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x92A0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(volatile uint32_t*)(&_MBAR[0x92A4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(volatile uint32_t*)(&_MBAR[0x92A8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x92AC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x92B0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x92B4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x92B8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x92BC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x92C0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x92C4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x92C8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92CC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(volatile uint32_t*)(&_MBAR[0x92D0 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x92D4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x92D8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x92DC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92E0 + ((x)*0x800)]))
-
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x20000)
-#define MCF_FEC_EIR_XFERR (0x40000)
-#define MCF_FEC_EIR_XFUN (0x80000)
-#define MCF_FEC_EIR_RL (0x100000)
-#define MCF_FEC_EIR_LC (0x200000)
-#define MCF_FEC_EIR_MII (0x800000)
-#define MCF_FEC_EIR_TXF (0x8000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x20000)
-#define MCF_FEC_EIMR_XFERR (0x40000)
-#define MCF_FEC_EIMR_XFUN (0x80000)
-#define MCF_FEC_EIMR_RL (0x100000)
-#define MCF_FEC_EIMR_LC (0x200000)
-#define MCF_FEC_EIMR_MII (0x800000)
-#define MCF_FEC_EIMR_TXF (0x8000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x1)
-#define MCF_FEC_ECR_ETHER_EN (0x2)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x3)<<0x10)
-#define MCF_FEC_MMFR_TA_10 (0x20000)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x1F)<<0x12)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x1F)<<0x17)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x3)<<0x1C)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x3)<<0x1E)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x3F)<<0x1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x80)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<0x1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x1)
-#define MCF_FEC_RCR_DRT (0x2)
-#define MCF_FEC_RCR_MII_MODE (0x4)
-#define MCF_FEC_RCR_PROM (0x8)
-#define MCF_FEC_RCR_BC_REJ (0x10)
-#define MCF_FEC_RCR_FCE (0x20)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x7FF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_RHR */
-#define MCF_FEC_RHR_HASH(x) (((x)&0x3F)<<0x18)
-#define MCF_FEC_RHR_MULTCAST (0x40000000)
-#define MCF_FEC_RHR_FCE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x1)
-#define MCF_FEC_TCR_HBC (0x2)
-#define MCF_FEC_TCR_FDEN (0x4)
-#define MCF_FEC_TCR_TFC_PAUSE (0x8)
-#define MCF_FEC_TCR_RFC_PAUSE (0x10)
-
-/* Bit definitions and macros for MCF_FEC_PALR */
-#define MCF_FEC_PALR_PADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_PAHR */
-#define MCF_FEC_PAHR_TYPE(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_PAHR_PADDR2(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_PAUSE_DUR(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_IAUR */
-#define MCF_FEC_IAUR_IADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IALR */
-#define MCF_FEC_IALR_IADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GAUR */
-#define MCF_FEC_GAUR_GADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GALR */
-#define MCF_FEC_GALR_GADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0xF)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x1)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x2)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x3)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x4)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x5)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x6)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x7)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x8)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x9)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0xA)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0xB)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0xC)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0xD)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0xE)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0xF)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x10000)
-#define MCF_FEC_FECRFSR_ALARM (0x20000)
-#define MCF_FEC_FECRFSR_FU (0x40000)
-#define MCF_FEC_FECRFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECRFSR_OF (0x100000)
-#define MCF_FEC_FECRFSR_UF (0x200000)
-#define MCF_FEC_FECRFSR_RXW (0x400000)
-#define MCF_FEC_FECRFSR_FAE (0x800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x80000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_FEC_FECRFCR_FRMEN (0x8000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x10000)
-#define MCF_FEC_FECTFSR_ALARM (0x20000)
-#define MCF_FEC_FECTFSR_FU (0x40000)
-#define MCF_FEC_FECTFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECTFSR_OF (0x100000)
-#define MCF_FEC_FECTFSR_UF (0x200000)
-#define MCF_FEC_FECTFSR_FAE (0x800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0xFFFF)<<0|0x200000)
-#define MCF_FEC_FECTFCR_TXW_MASK (0x240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0xA00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x7)<<0x18|0x200000)
-#define MCF_FEC_FECTFCR_FRMEN (0x8200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECFRST */
-#define MCF_FEC_FECFRST_RST_CTL (0x1000000)
-#define MCF_FEC_FECFRST_SW_RST (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_FECCTCWR */
-#define MCF_FEC_FECCTCWR_TFCW (0x1000000)
-#define MCF_FEC_FECCTCWR_CRC (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_DROP */
-#define MCF_FEC_RMON_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_PACKETS */
-#define MCF_FEC_RMON_T_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_BC_PKT */
-#define MCF_FEC_RMON_T_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_MC_PKT */
-#define MCF_FEC_RMON_T_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_CRC_ALIGN */
-#define MCF_FEC_RMON_T_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_UNDERSIZE */
-#define MCF_FEC_RMON_T_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OVERSIZE */
-#define MCF_FEC_RMON_T_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_FRAG */
-#define MCF_FEC_RMON_T_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_JAB */
-#define MCF_FEC_RMON_T_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_COL */
-#define MCF_FEC_RMON_T_COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P64 */
-#define MCF_FEC_RMON_T_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P65TO127 */
-#define MCF_FEC_RMON_T_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P128TO255 */
-#define MCF_FEC_RMON_T_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P256TO511 */
-#define MCF_FEC_RMON_T_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P512TO1023 */
-#define MCF_FEC_RMON_T_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P1024TO2047 */
-#define MCF_FEC_RMON_T_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P_GTE2048 */
-#define MCF_FEC_RMON_T_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OCTETS */
-#define MCF_FEC_RMON_T_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DROP */
-#define MCF_FEC_IEEE_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FRAME_OK */
-#define MCF_FEC_IEEE_T_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_1COL */
-#define MCF_FEC_IEEE_T_1COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MCOL */
-#define MCF_FEC_IEEE_T_MCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DEF */
-#define MCF_FEC_IEEE_T_DEF_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_LCOL */
-#define MCF_FEC_IEEE_T_LCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_EXCOL */
-#define MCF_FEC_IEEE_T_EXCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MACERR */
-#define MCF_FEC_IEEE_T_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_CSERR */
-#define MCF_FEC_IEEE_T_CSERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_SQE */
-#define MCF_FEC_IEEE_T_SQE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FDXFC */
-#define MCF_FEC_IEEE_T_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_OCTETS_OK */
-#define MCF_FEC_IEEE_T_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_DROP */
-#define MCF_FEC_RMON_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_PACKETS */
-#define MCF_FEC_RMON_R_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_BC_PKT */
-#define MCF_FEC_RMON_R_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_MC_PKT */
-#define MCF_FEC_RMON_R_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_CRC_ALIGN */
-#define MCF_FEC_RMON_R_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_UNDERSIZE */
-#define MCF_FEC_RMON_R_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OVERSIZE */
-#define MCF_FEC_RMON_R_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_FRAG */
-#define MCF_FEC_RMON_R_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_JAB */
-#define MCF_FEC_RMON_R_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_RESVD_0 */
-#define MCF_FEC_RMON_R_RESVD_0_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P64 */
-#define MCF_FEC_RMON_R_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P65TO127 */
-#define MCF_FEC_RMON_R_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P128TO255 */
-#define MCF_FEC_RMON_R_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P256TO511 */
-#define MCF_FEC_RMON_R_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P512TO1023 */
-#define MCF_FEC_RMON_R_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P1024TO2047 */
-#define MCF_FEC_RMON_R_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P_GTE2048 */
-#define MCF_FEC_RMON_R_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OCTETS */
-#define MCF_FEC_RMON_R_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_DROP */
-#define MCF_FEC_IEEE_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FRAME_OK */
-#define MCF_FEC_IEEE_R_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_CRC */
-#define MCF_FEC_IEEE_R_CRC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_ALIGN */
-#define MCF_FEC_IEEE_R_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_MACERR */
-#define MCF_FEC_IEEE_R_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FDXFC */
-#define MCF_FEC_IEEE_R_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_OCTETS_OK */
-#define MCF_FEC_IEEE_R_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-
-#endif /* __MCF5475_FEC_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_GPIO.h b/BaS_gcc/tos/pci_mem/include/MCF5475_GPIO.h
deleted file mode 100644
index 5dd2583..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_GPIO.h
+++ /dev/null
@@ -1,543 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPIO_H__
-#define __MCF5475_GPIO_H__
-
-
-/*********************************************************************
-*
-* General Purpose I/O (GPIO)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA00]))
-#define MCF_GPIO_PDDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA10]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA20]))
-#define MCF_GPIO_PCLRR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA30]))
-
-#define MCF_GPIO_PODR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA01]))
-#define MCF_GPIO_PDDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA11]))
-#define MCF_GPIO_PPDSDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA21]))
-#define MCF_GPIO_PCLRR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA31]))
-
-#define MCF_GPIO_PODR_DMA (*(volatile uint8_t *)(&_MBAR[0xA02]))
-#define MCF_GPIO_PDDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA12]))
-#define MCF_GPIO_PPDSDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA22]))
-#define MCF_GPIO_PCLRR_DMA (*(volatile uint8_t *)(&_MBAR[0xA32]))
-
-#define MCF_GPIO_PODR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA04]))
-#define MCF_GPIO_PDDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA14]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA24]))
-#define MCF_GPIO_PCLRR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA34]))
-
-#define MCF_GPIO_PODR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA05]))
-#define MCF_GPIO_PDDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA15]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA25]))
-#define MCF_GPIO_PCLRR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA35]))
-
-#define MCF_GPIO_PODR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA06]))
-#define MCF_GPIO_PDDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA16]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA26]))
-#define MCF_GPIO_PCLRR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA36]))
-
-#define MCF_GPIO_PODR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA07]))
-#define MCF_GPIO_PDDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA17]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA27]))
-#define MCF_GPIO_PCLRR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA37]))
-
-#define MCF_GPIO_PODR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA08]))
-#define MCF_GPIO_PDDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA18]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA28]))
-#define MCF_GPIO_PCLRR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA38]))
-
-#define MCF_GPIO_PODR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA09]))
-#define MCF_GPIO_PDDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA19]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA29]))
-#define MCF_GPIO_PCLRR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA39]))
-
-#define MCF_GPIO_PODR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA0A]))
-#define MCF_GPIO_PDDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA1A]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA2A]))
-#define MCF_GPIO_PCLRR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA3A]))
-
-#define MCF_GPIO2_PODR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA0C]))
-#define MCF_GPIO2_PDDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA1C]))
-#define MCF_GPIO2_PPDSDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define MCF_GPIO2_PCLRR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA3C]))
-
-#define MCF_GPIO0_PODR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA0D]))
-#define MCF_GPIO0_PDDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA1D]))
-#define MCF_GPIO0_PPDSDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA2D]))
-#define MCF_GPIO0_PCLRR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA3D]))
-
-#define MCF_GPIO_PODR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA0E]))
-#define MCF_GPIO_PDDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA1E]))
-#define MCF_GPIO_PPDSDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA2E]))
-#define MCF_GPIO_PCLRR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA3E]))
-
-
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x1)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x2)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x4)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x8)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x1)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x2)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x4)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x8)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x1)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x1)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x2)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x4)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x8)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x2)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x4)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x8)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x2)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x4)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x8)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x2)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x4)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x8)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x1)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x2)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x4)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x1)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x2)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x4)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x1)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x2)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x4)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x1)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x2)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x4)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x1)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x2)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x4)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x8)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x1)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x2)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x4)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x8)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x1)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x2)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x4)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x8)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x1)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x2)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x4)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x8)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x1)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x2)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x4)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x8)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x1)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x2)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x4)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x8)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x1)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x2)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x4)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x8)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x1)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x2)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x4)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x8)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x1)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x2)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x4)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x1)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x2)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x4)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x1)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x2)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x4)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x1)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x2)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C2 (0x4)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x1)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x2)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x4)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x8)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x1)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x2)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x4)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x8)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x1)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x2)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x4)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x8)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x1)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x2)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x4)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x8)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC */
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC */
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC */
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC */
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC */
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC */
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC */
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC */
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x1)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x2)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x4)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x8)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x1)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x2)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x4)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x8)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x1)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x2)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x4)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x8)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x1)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x2)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x4)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x8)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-
-#endif /* __MCF5475_GPIO_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_GPT.h b/BaS_gcc/tos/pci_mem/include/MCF5475_GPT.h
deleted file mode 100644
index f9fbc98..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_GPT.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPT_H__
-#define __MCF5475_GPT_H__
-
-
-/*********************************************************************
-*
-* General Purpose Timers (GPT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPT0_GMS (*(volatile uint32_t*)(&_MBAR[0x800]))
-#define MCF_GPT0_GCIR (*(volatile uint32_t*)(&_MBAR[0x804]))
-#define MCF_GPT0_GPWM (*(volatile uint32_t*)(&_MBAR[0x808]))
-#define MCF_GPT0_GSR (*(volatile uint32_t*)(&_MBAR[0x80C]))
-
-#define MCF_GPT1_GMS (*(volatile uint32_t*)(&_MBAR[0x810]))
-#define MCF_GPT1_GCIR (*(volatile uint32_t*)(&_MBAR[0x814]))
-#define MCF_GPT1_GPWM (*(volatile uint32_t*)(&_MBAR[0x818]))
-#define MCF_GPT1_GSR (*(volatile uint32_t*)(&_MBAR[0x81C]))
-
-#define MCF_GPT2_GMS (*(volatile uint32_t*)(&_MBAR[0x820]))
-#define MCF_GPT2_GCIR (*(volatile uint32_t*)(&_MBAR[0x824]))
-#define MCF_GPT2_GPWM (*(volatile uint32_t*)(&_MBAR[0x828]))
-#define MCF_GPT2_GSR (*(volatile uint32_t*)(&_MBAR[0x82C]))
-
-#define MCF_GPT3_GMS (*(volatile uint32_t*)(&_MBAR[0x830]))
-#define MCF_GPT3_GCIR (*(volatile uint32_t*)(&_MBAR[0x834]))
-#define MCF_GPT3_GPWM (*(volatile uint32_t*)(&_MBAR[0x838]))
-#define MCF_GPT3_GSR (*(volatile uint32_t*)(&_MBAR[0x83C]))
-
-#define MCF_GPT_GMS(x) (*(volatile uint32_t*)(&_MBAR[0x800 + ((x)*0x10)]))
-#define MCF_GPT_GCIR(x) (*(volatile uint32_t*)(&_MBAR[0x804 + ((x)*0x10)]))
-#define MCF_GPT_GPWM(x) (*(volatile uint32_t*)(&_MBAR[0x808 + ((x)*0x10)]))
-#define MCF_GPT_GSR(x) (*(volatile uint32_t*)(&_MBAR[0x80C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x7)<<0)
-#define MCF_GPT_GMS_TMS_DISABLE (0)
-#define MCF_GPT_GMS_TMS_INCAPT (0x1)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x2)
-#define MCF_GPT_GMS_TMS_PWM (0x3)
-#define MCF_GPT_GMS_TMS_GPIO (0x4)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x3)<<0x4)
-#define MCF_GPT_GMS_GPIO_INPUT (0)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x20)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x30)
-#define MCF_GPT_GMS_IEN (0x100)
-#define MCF_GPT_GMS_OD (0x200)
-#define MCF_GPT_GMS_SC (0x400)
-#define MCF_GPT_GMS_CE (0x1000)
-#define MCF_GPT_GMS_WDEN (0x8000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x3)<<0x10)
-#define MCF_GPT_GMS_ICT_ANY (0)
-#define MCF_GPT_GMS_ICT_RISE (0x10000)
-#define MCF_GPT_GMS_ICT_FALL (0x20000)
-#define MCF_GPT_GMS_ICT_PULSE (0x30000)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x3)<<0x14)
-#define MCF_GPT_GMS_OCT_FRCLOW (0)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x300000)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0xFFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x1)
-#define MCF_GPT_GPWM_PWMOP (0x100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x1)
-#define MCF_GPT_GSR_COMP (0x2)
-#define MCF_GPT_GSR_PWMP (0x4)
-#define MCF_GPT_GSR_TEXP (0x8)
-#define MCF_GPT_GSR_PIN (0x100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x7)<<0xC)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_GPT_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_I2C.h b/BaS_gcc/tos/pci_mem/include/MCF5475_I2C.h
deleted file mode 100644
index 1e8a85b..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_I2C.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_I2C_H__
-#define __MCF5475_I2C_H__
-
-
-/*********************************************************************
-*
-* I2C Module (I2C)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_I2C_I2ADR (*(volatile uint8_t *)(&_MBAR[0x8F00]))
-#define MCF_I2C_I2FDR (*(volatile uint8_t *)(&_MBAR[0x8F04]))
-#define MCF_I2C_I2CR (*(volatile uint8_t *)(&_MBAR[0x8F08]))
-#define MCF_I2C_I2SR (*(volatile uint8_t *)(&_MBAR[0x8F0C]))
-#define MCF_I2C_I2DR (*(volatile uint8_t *)(&_MBAR[0x8F10]))
-#define MCF_I2C_I2ICR (*(volatile uint8_t *)(&_MBAR[0x8F20]))
-
-
-
-/* Bit definitions and macros for MCF_I2C_I2ADR */
-#define MCF_I2C_I2ADR_ADR(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x4)
-#define MCF_I2C_I2CR_TXAK (0x8)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x1)
-#define MCF_I2C_I2SR_IIF (0x2)
-#define MCF_I2C_I2SR_SRW (0x4)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2DR */
-#define MCF_I2C_I2DR_DATA(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x1)
-#define MCF_I2C_I2ICR_RE (0x2)
-#define MCF_I2C_I2ICR_TE (0x4)
-#define MCF_I2C_I2ICR_BNBE (0x8)
-
-
-#endif /* __MCF5475_I2C_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_INTC.h b/BaS_gcc/tos/pci_mem/include/MCF5475_INTC.h
deleted file mode 100644
index 61265ed..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_INTC.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_INTC_H__
-#define __MCF5475_INTC_H__
-
-
-/*********************************************************************
-*
-* Interrupt Controller (INTC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(volatile uint32_t*)(&_MBAR[0x700]))
-#define MCF_INTC_IPRL (*(volatile uint32_t*)(&_MBAR[0x704]))
-#define MCF_INTC_IMRH (*(volatile uint32_t*)(&_MBAR[0x708]))
-#define MCF_INTC_IMRL (*(volatile uint32_t*)(&_MBAR[0x70C]))
-#define MCF_INTC_INTFRCH (*(volatile uint32_t*)(&_MBAR[0x710]))
-#define MCF_INTC_INTFRCL (*(volatile uint32_t*)(&_MBAR[0x714]))
-#define MCF_INTC_IRLR (*(volatile uint8_t *)(&_MBAR[0x718]))
-#define MCF_INTC_IACKLPR (*(volatile uint8_t *)(&_MBAR[0x719]))
-#define MCF_INTC_ICR01 (*(volatile uint8_t *)(&_MBAR[0x741]))
-#define MCF_INTC_ICR02 (*(volatile uint8_t *)(&_MBAR[0x742]))
-#define MCF_INTC_ICR03 (*(volatile uint8_t *)(&_MBAR[0x743]))
-#define MCF_INTC_ICR04 (*(volatile uint8_t *)(&_MBAR[0x744]))
-#define MCF_INTC_ICR05 (*(volatile uint8_t *)(&_MBAR[0x745]))
-#define MCF_INTC_ICR06 (*(volatile uint8_t *)(&_MBAR[0x746]))
-#define MCF_INTC_ICR07 (*(volatile uint8_t *)(&_MBAR[0x747]))
-#define MCF_INTC_ICR08 (*(volatile uint8_t *)(&_MBAR[0x748]))
-#define MCF_INTC_ICR09 (*(volatile uint8_t *)(&_MBAR[0x749]))
-#define MCF_INTC_ICR10 (*(volatile uint8_t *)(&_MBAR[0x74A]))
-#define MCF_INTC_ICR11 (*(volatile uint8_t *)(&_MBAR[0x74B]))
-#define MCF_INTC_ICR12 (*(volatile uint8_t *)(&_MBAR[0x74C]))
-#define MCF_INTC_ICR13 (*(volatile uint8_t *)(&_MBAR[0x74D]))
-#define MCF_INTC_ICR14 (*(volatile uint8_t *)(&_MBAR[0x74E]))
-#define MCF_INTC_ICR15 (*(volatile uint8_t *)(&_MBAR[0x74F]))
-#define MCF_INTC_ICR16 (*(volatile uint8_t *)(&_MBAR[0x750]))
-#define MCF_INTC_ICR17 (*(volatile uint8_t *)(&_MBAR[0x751]))
-#define MCF_INTC_ICR18 (*(volatile uint8_t *)(&_MBAR[0x752]))
-#define MCF_INTC_ICR19 (*(volatile uint8_t *)(&_MBAR[0x753]))
-#define MCF_INTC_ICR20 (*(volatile uint8_t *)(&_MBAR[0x754]))
-#define MCF_INTC_ICR21 (*(volatile uint8_t *)(&_MBAR[0x755]))
-#define MCF_INTC_ICR22 (*(volatile uint8_t *)(&_MBAR[0x756]))
-#define MCF_INTC_ICR23 (*(volatile uint8_t *)(&_MBAR[0x757]))
-#define MCF_INTC_ICR24 (*(volatile uint8_t *)(&_MBAR[0x758]))
-#define MCF_INTC_ICR25 (*(volatile uint8_t *)(&_MBAR[0x759]))
-#define MCF_INTC_ICR26 (*(volatile uint8_t *)(&_MBAR[0x75A]))
-#define MCF_INTC_ICR27 (*(volatile uint8_t *)(&_MBAR[0x75B]))
-#define MCF_INTC_ICR28 (*(volatile uint8_t *)(&_MBAR[0x75C]))
-#define MCF_INTC_ICR29 (*(volatile uint8_t *)(&_MBAR[0x75D]))
-#define MCF_INTC_ICR30 (*(volatile uint8_t *)(&_MBAR[0x75E]))
-#define MCF_INTC_ICR31 (*(volatile uint8_t *)(&_MBAR[0x75F]))
-#define MCF_INTC_ICR32 (*(volatile uint8_t *)(&_MBAR[0x760]))
-#define MCF_INTC_ICR33 (*(volatile uint8_t *)(&_MBAR[0x761]))
-#define MCF_INTC_ICR34 (*(volatile uint8_t *)(&_MBAR[0x762]))
-#define MCF_INTC_ICR35 (*(volatile uint8_t *)(&_MBAR[0x763]))
-#define MCF_INTC_ICR36 (*(volatile uint8_t *)(&_MBAR[0x764]))
-#define MCF_INTC_ICR37 (*(volatile uint8_t *)(&_MBAR[0x765]))
-#define MCF_INTC_ICR38 (*(volatile uint8_t *)(&_MBAR[0x766]))
-#define MCF_INTC_ICR39 (*(volatile uint8_t *)(&_MBAR[0x767]))
-#define MCF_INTC_ICR40 (*(volatile uint8_t *)(&_MBAR[0x768]))
-#define MCF_INTC_ICR41 (*(volatile uint8_t *)(&_MBAR[0x769]))
-#define MCF_INTC_ICR42 (*(volatile uint8_t *)(&_MBAR[0x76A]))
-#define MCF_INTC_ICR43 (*(volatile uint8_t *)(&_MBAR[0x76B]))
-#define MCF_INTC_ICR44 (*(volatile uint8_t *)(&_MBAR[0x76C]))
-#define MCF_INTC_ICR45 (*(volatile uint8_t *)(&_MBAR[0x76D]))
-#define MCF_INTC_ICR46 (*(volatile uint8_t *)(&_MBAR[0x76E]))
-#define MCF_INTC_ICR47 (*(volatile uint8_t *)(&_MBAR[0x76F]))
-#define MCF_INTC_ICR48 (*(volatile uint8_t *)(&_MBAR[0x770]))
-#define MCF_INTC_ICR49 (*(volatile uint8_t *)(&_MBAR[0x771]))
-#define MCF_INTC_ICR50 (*(volatile uint8_t *)(&_MBAR[0x772]))
-#define MCF_INTC_ICR51 (*(volatile uint8_t *)(&_MBAR[0x773]))
-#define MCF_INTC_ICR52 (*(volatile uint8_t *)(&_MBAR[0x774]))
-#define MCF_INTC_ICR53 (*(volatile uint8_t *)(&_MBAR[0x775]))
-#define MCF_INTC_ICR54 (*(volatile uint8_t *)(&_MBAR[0x776]))
-#define MCF_INTC_ICR55 (*(volatile uint8_t *)(&_MBAR[0x777]))
-#define MCF_INTC_ICR56 (*(volatile uint8_t *)(&_MBAR[0x778]))
-#define MCF_INTC_ICR57 (*(volatile uint8_t *)(&_MBAR[0x779]))
-#define MCF_INTC_ICR58 (*(volatile uint8_t *)(&_MBAR[0x77A]))
-#define MCF_INTC_ICR59 (*(volatile uint8_t *)(&_MBAR[0x77B]))
-#define MCF_INTC_ICR60 (*(volatile uint8_t *)(&_MBAR[0x77C]))
-#define MCF_INTC_ICR61 (*(volatile uint8_t *)(&_MBAR[0x77D]))
-#define MCF_INTC_ICR62 (*(volatile uint8_t *)(&_MBAR[0x77E]))
-#define MCF_INTC_ICR63 (*(volatile uint8_t *)(&_MBAR[0x77F]))
-#define MCF_INTC_SWIACK (*(volatile uint8_t *)(&_MBAR[0x7E0]))
-#define MCF_INTC_L1IACK (*(volatile uint8_t *)(&_MBAR[0x7E4]))
-#define MCF_INTC_L2IACK (*(volatile uint8_t *)(&_MBAR[0x7E8]))
-#define MCF_INTC_L3IACK (*(volatile uint8_t *)(&_MBAR[0x7EC]))
-#define MCF_INTC_L4IACK (*(volatile uint8_t *)(&_MBAR[0x7F0]))
-#define MCF_INTC_L5IACK (*(volatile uint8_t *)(&_MBAR[0x7F4]))
-#define MCF_INTC_L6IACK (*(volatile uint8_t *)(&_MBAR[0x7F8]))
-#define MCF_INTC_L7IACK (*(volatile uint8_t *)(&_MBAR[0x7FC]))
-#define MCF_INTC_ICR(x) (*(volatile uint8_t *)(&_MBAR[0x741 + ((x-1)*0x1)]))
-#define MCF_INTC_LIACK(x) (*(volatile uint8_t *)(&_MBAR[0x7E4 + ((x-1)*0x4)]))
-
-
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x1)
-#define MCF_INTC_IPRH_INT33 (0x2)
-#define MCF_INTC_IPRH_INT34 (0x4)
-#define MCF_INTC_IPRH_INT35 (0x8)
-#define MCF_INTC_IPRH_INT36 (0x10)
-#define MCF_INTC_IPRH_INT37 (0x20)
-#define MCF_INTC_IPRH_INT38 (0x40)
-#define MCF_INTC_IPRH_INT39 (0x80)
-#define MCF_INTC_IPRH_INT40 (0x100)
-#define MCF_INTC_IPRH_INT41 (0x200)
-#define MCF_INTC_IPRH_INT42 (0x400)
-#define MCF_INTC_IPRH_INT43 (0x800)
-#define MCF_INTC_IPRH_INT44 (0x1000)
-#define MCF_INTC_IPRH_INT45 (0x2000)
-#define MCF_INTC_IPRH_INT46 (0x4000)
-#define MCF_INTC_IPRH_INT47 (0x8000)
-#define MCF_INTC_IPRH_INT48 (0x10000)
-#define MCF_INTC_IPRH_INT49 (0x20000)
-#define MCF_INTC_IPRH_INT50 (0x40000)
-#define MCF_INTC_IPRH_INT51 (0x80000)
-#define MCF_INTC_IPRH_INT52 (0x100000)
-#define MCF_INTC_IPRH_INT53 (0x200000)
-#define MCF_INTC_IPRH_INT54 (0x400000)
-#define MCF_INTC_IPRH_INT55 (0x800000)
-#define MCF_INTC_IPRH_INT56 (0x1000000)
-#define MCF_INTC_IPRH_INT57 (0x2000000)
-#define MCF_INTC_IPRH_INT58 (0x4000000)
-#define MCF_INTC_IPRH_INT59 (0x8000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x2)
-#define MCF_INTC_IPRL_INT2 (0x4)
-#define MCF_INTC_IPRL_INT3 (0x8)
-#define MCF_INTC_IPRL_INT4 (0x10)
-#define MCF_INTC_IPRL_INT5 (0x20)
-#define MCF_INTC_IPRL_INT6 (0x40)
-#define MCF_INTC_IPRL_INT7 (0x80)
-#define MCF_INTC_IPRL_INT8 (0x100)
-#define MCF_INTC_IPRL_INT9 (0x200)
-#define MCF_INTC_IPRL_INT10 (0x400)
-#define MCF_INTC_IPRL_INT11 (0x800)
-#define MCF_INTC_IPRL_INT12 (0x1000)
-#define MCF_INTC_IPRL_INT13 (0x2000)
-#define MCF_INTC_IPRL_INT14 (0x4000)
-#define MCF_INTC_IPRL_INT15 (0x8000)
-#define MCF_INTC_IPRL_INT16 (0x10000)
-#define MCF_INTC_IPRL_INT17 (0x20000)
-#define MCF_INTC_IPRL_INT18 (0x40000)
-#define MCF_INTC_IPRL_INT19 (0x80000)
-#define MCF_INTC_IPRL_INT20 (0x100000)
-#define MCF_INTC_IPRL_INT21 (0x200000)
-#define MCF_INTC_IPRL_INT22 (0x400000)
-#define MCF_INTC_IPRL_INT23 (0x800000)
-#define MCF_INTC_IPRL_INT24 (0x1000000)
-#define MCF_INTC_IPRL_INT25 (0x2000000)
-#define MCF_INTC_IPRL_INT26 (0x4000000)
-#define MCF_INTC_IPRL_INT27 (0x8000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x1)
-#define MCF_INTC_IMRH_INT_MASK33 (0x2)
-#define MCF_INTC_IMRH_INT_MASK34 (0x4)
-#define MCF_INTC_IMRH_INT_MASK35 (0x8)
-#define MCF_INTC_IMRH_INT_MASK36 (0x10)
-#define MCF_INTC_IMRH_INT_MASK37 (0x20)
-#define MCF_INTC_IMRH_INT_MASK38 (0x40)
-#define MCF_INTC_IMRH_INT_MASK39 (0x80)
-#define MCF_INTC_IMRH_INT_MASK40 (0x100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x1000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x2000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x4000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x8000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x10000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x20000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x40000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x80000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x1)
-#define MCF_INTC_IMRL_INT_MASK1 (0x2)
-#define MCF_INTC_IMRL_INT_MASK2 (0x4)
-#define MCF_INTC_IMRL_INT_MASK3 (0x8)
-#define MCF_INTC_IMRL_INT_MASK4 (0x10)
-#define MCF_INTC_IMRL_INT_MASK5 (0x20)
-#define MCF_INTC_IMRL_INT_MASK6 (0x40)
-#define MCF_INTC_IMRL_INT_MASK7 (0x80)
-#define MCF_INTC_IMRL_INT_MASK8 (0x100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x1000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x2000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x4000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x8000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x10000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x20000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x40000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x80000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x1)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x2)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x4)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x8)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x10)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x20)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x40)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x80)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x2)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x4)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x8)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x10)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x20)
-#define MCF_INTC_INTFRCL_INTFRC6 (0x40)
-#define MCF_INTC_INTFRCL_INTFRC7 (0x80)
-#define MCF_INTC_INTFRCL_INTFRC8 (0x100)
-#define MCF_INTC_INTFRCL_INTFRC9 (0x200)
-#define MCF_INTC_INTFRCL_INTFRC10 (0x400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
-#define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
-
-/* Bit definitions and macros for MCF_INTC_ICR */
-#define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
-#define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
-
-/* Bit definitions and macros for MCF_INTC_SWIACK */
-#define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_INTC_LIACK */
-#define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-
-#endif /* __MCF5475_INTC_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_MMU.h b/BaS_gcc/tos/pci_mem/include/MCF5475_MMU.h
deleted file mode 100644
index 334ad28..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_MMU.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_MMU_H__
-#define __MCF5475_MMU_H__
-
-
-/*********************************************************************
-*
-* Memory Management Unit (MMU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-
-/* note the uint32_t_a - this is to avoid gcc warnings about pointer aliasing */
-#define MCF_MMU_MMUCR (*(volatile uint32_t_a*)(&_MMUBAR[0]))
-#define MCF_MMU_MMUOR (*(volatile uint32_t_a*)(&_MMUBAR[0x4]))
-#define MCF_MMU_MMUSR (*(volatile uint32_t_a*)(&_MMUBAR[0x8]))
-#define MCF_MMU_MMUAR (*(volatile uint32_t_a*)(&_MMUBAR[0x10]))
-#define MCF_MMU_MMUTR (*(volatile uint32_t_a*)(&_MMUBAR[0x14]))
-#define MCF_MMU_MMUDR (*(volatile uint32_t_a*)(&_MMUBAR[0x18]))
-
-
-/* Bit definitions and macros for MCF_MMU_MMUCR */
-#define MCF_MMU_MMUCR_EN (0x1)
-#define MCF_MMU_MMUCR_ASM (0x2)
-
-/* Bit definitions and macros for MCF_MMU_MMUOR */
-#define MCF_MMU_MMUOR_UAA (0x1)
-#define MCF_MMU_MMUOR_ACC (0x2)
-#define MCF_MMU_MMUOR_RW (0x4)
-#define MCF_MMU_MMUOR_ADR (0x8)
-#define MCF_MMU_MMUOR_ITLB (0x10)
-#define MCF_MMU_MMUOR_CAS (0x20)
-#define MCF_MMU_MMUOR_CNL (0x40)
-#define MCF_MMU_MMUOR_CA (0x80)
-#define MCF_MMU_MMUOR_STLB (0x100)
-#define MCF_MMU_MMUOR_AA(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_MMU_MMUSR */
-#define MCF_MMU_MMUSR_HIT (0x2)
-#define MCF_MMU_MMUSR_WF (0x8)
-#define MCF_MMU_MMUSR_RF (0x10)
-#define MCF_MMU_MMUSR_SPF (0x20)
-
-/* Bit definitions and macros for MCF_MMU_MMUAR */
-#define MCF_MMU_MMUAR_FA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_MMU_MMUTR */
-#define MCF_MMU_MMUTR_V (0x1)
-#define MCF_MMU_MMUTR_SG (0x2)
-#define MCF_MMU_MMUTR_ID(x) (((x)&0xFF)<<0x2)
-#define MCF_MMU_MMUTR_VA(x) (((x)&0x3FFFFF)<<0xA)
-
-/* Bit definitions and macros for MCF_MMU_MMUDR */
-#define MCF_MMU_MMUDR_LK (0x2)
-#define MCF_MMU_MMUDR_X (0x4)
-#define MCF_MMU_MMUDR_W (0x8)
-#define MCF_MMU_MMUDR_R (0x10)
-#define MCF_MMU_MMUDR_SP (0x20)
-#define MCF_MMU_MMUDR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_MMU_MMUDR_SZ(x) (((x)&0x3)<<0x8)
-#define MCF_MMU_MMUDR_PA(x) (((x)&0x3FFFFF)<<0xA)
-
-
-#endif /* __MCF5475_MMU_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_PAD.h b/BaS_gcc/tos/pci_mem/include/MCF5475_PAD.h
deleted file mode 100644
index 1d87e2e..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_PAD.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PAD_H__
-#define __MCF5475_PAD_H__
-
-
-/*********************************************************************
-*
-* Common GPIO
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PAD_PAR_FBCTL (*(volatile uint16_t*)(&_MBAR[0xA40]))
-#define MCF_PAD_PAR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA42]))
-#define MCF_PAD_PAR_DMA (*(volatile uint8_t *)(&_MBAR[0xA43]))
-#define MCF_PAD_PAR_FECI2CIRQ (*(volatile uint16_t*)(&_MBAR[0xA44]))
-#define MCF_PAD_PAR_PCIBG (*(volatile uint16_t*)(&_MBAR[0xA48]))
-#define MCF_PAD_PAR_PCIBR (*(volatile uint16_t*)(&_MBAR[0xA4A]))
-#define MCF_PAD_PAR_PSC3 (*(volatile uint8_t *)(&_MBAR[0xA4C]))
-#define MCF_PAD_PAR_PSC2 (*(volatile uint8_t *)(&_MBAR[0xA4D]))
-#define MCF_PAD_PAR_PSC1 (*(volatile uint8_t *)(&_MBAR[0xA4E]))
-#define MCF_PAD_PAR_PSC0 (*(volatile uint8_t *)(&_MBAR[0xA4F]))
-#define MCF_PAD_PAR_DSPI (*(volatile uint16_t*)(&_MBAR[0xA50]))
-#define MCF_PAD_PAR_TIMER (*(volatile uint8_t *)(&_MBAR[0xA52]))
-
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCTL */
-#define MCF_PAD_PAR_FBCTL_PAR_ALE(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_TBST (0x2)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_ALE (0x3)
-#define MCF_PAD_PAR_FBCTL_PAR_TA (0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_TBST (0x20)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_RW (0x30)
-#define MCF_PAD_PAR_FBCTL_PAR_OE (0x40)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE0 (0x100)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE1 (0x400)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE3 (0x4000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCS */
-#define MCF_PAD_PAR_FBCS_PAR_CS1 (0x2)
-#define MCF_PAD_PAR_FBCS_PAR_CS2 (0x4)
-#define MCF_PAD_PAR_FBCS_PAR_CS3 (0x8)
-#define MCF_PAD_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_PAD_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DMA */
-#define MCF_PAD_PAR_DMA_PAR_DREQ0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_TIN0 (0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_DREQ0 (0x3)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_IRQ1 (0x4)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_TIN1 (0x8)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_DREQ1 (0xC)
-#define MCF_PAD_PAR_DMA_PAR_DACK0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_TOUT0 (0x20)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_DACK0 (0x30)
-#define MCF_PAD_PAR_DMA_PAR_DACK1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_TOUT1 (0x80)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_DACK1 (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FECI2CIRQ */
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5 (0x1)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 (0x2)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SCL (0x4)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SDA (0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x80)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC (0xC0)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x200)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO (0x300)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII (0x400)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E17 (0x800)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBG */
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_TOUT0 (0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 (0x3)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_TOUT1 (0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 (0xC)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_TOUT2 (0x20)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 (0x30)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_TOUT3 (0x80)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 (0xC0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST (0x200)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBR */
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_TIN0 (0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 (0x3)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_TIN1 (0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 (0xC)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_TIN2 (0x20)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 (0x30)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_TIN3 (0x80)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 (0xC0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 (0x200)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC3 */
-#define MCF_PAD_PAR_PSC3_PAR_TXD3 (0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RXD3 (0x8)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC2 */
-#define MCF_PAD_PAR_PSC2_PAR_TXD2 (0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RXD2 (0x8)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_RTS (0x30)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC1 */
-#define MCF_PAD_PAR_PSC1_PAR_TXD1 (0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RXD1 (0x8)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_RTS (0x30)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC0 */
-#define MCF_PAD_PAR_PSC0_PAR_TXD0 (0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RXD0 (0x8)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_RTS (0x30)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DSPI */
-#define MCF_PAD_PAR_DSPI_PAR_SOUT(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_TXD (0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT (0x3)
-#define MCF_PAD_PAR_DSPI_PAR_SIN(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_RXD (0x8)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_SIN (0xC)
-#define MCF_PAD_PAR_DSPI_PAR_SCK(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_BCLK (0x10)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_CTS (0x20)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_SCK (0x30)
-#define MCF_PAD_PAR_DSPI_PAR_CS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_FSYNC (0x40)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_RTS (0x80)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0 (0xC0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_TOUT2 (0x200)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2 (0x300)
-#define MCF_PAD_PAR_DSPI_PAR_CS3(x) (((x)&0x3)<<0xA)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_TOUT3 (0x800)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3 (0xC00)
-#define MCF_PAD_PAR_DSPI_PAR_CS5 (0x1000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_TIMER */
-#define MCF_PAD_PAR_TIMER_PAR_TOUT2 (0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2(x) (((x)&0x3)<<0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2 (0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_TIN2 (0x6)
-#define MCF_PAD_PAR_TIMER_PAR_TOUT3 (0x8)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3 (0x20)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_TIN3 (0x30)
-
-
-#endif /* __MCF5475_PAD_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_PCI.h b/BaS_gcc/tos/pci_mem/include/MCF5475_PCI.h
deleted file mode 100644
index 3eb3341..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_PCI.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCI_H__
-#define __MCF5475_PCI_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Controller (PCI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCI_PCIIDR (*(volatile uint32_t*)(&_MBAR[0xB00]))
-#define MCF_PCI_PCISCR (*(volatile uint32_t*)(&_MBAR[0xB04]))
-#define MCF_PCI_PCICCRIR (*(volatile uint32_t*)(&_MBAR[0xB08]))
-#define MCF_PCI_PCICR1 (*(volatile uint32_t*)(&_MBAR[0xB0C]))
-#define MCF_PCI_PCIBAR0 (*(volatile uint32_t*)(&_MBAR[0xB10]))
-#define MCF_PCI_PCIBAR1 (*(volatile uint32_t*)(&_MBAR[0xB14]))
-#define MCF_PCI_PCICCPR (*(volatile uint32_t*)(&_MBAR[0xB28]))
-#define MCF_PCI_PCISID (*(volatile uint32_t*)(&_MBAR[0xB2C]))
-#define MCF_PCI_PCICR2 (*(volatile uint32_t*)(&_MBAR[0xB3C]))
-#define MCF_PCI_PCIGSCR (*(volatile uint32_t*)(&_MBAR[0xB60]))
-#define MCF_PCI_PCITBATR0 (*(volatile uint32_t*)(&_MBAR[0xB64]))
-#define MCF_PCI_PCITBATR1 (*(volatile uint32_t*)(&_MBAR[0xB68]))
-#define MCF_PCI_PCITCR (*(volatile uint32_t*)(&_MBAR[0xB6C]))
-#define MCF_PCI_PCIIW0BTAR (*(volatile uint32_t*)(&_MBAR[0xB70]))
-#define MCF_PCI_PCIIW1BTAR (*(volatile uint32_t*)(&_MBAR[0xB74]))
-#define MCF_PCI_PCIIW2BTAR (*(volatile uint32_t*)(&_MBAR[0xB78]))
-#define MCF_PCI_PCIIWCR (*(volatile uint32_t*)(&_MBAR[0xB80]))
-#define MCF_PCI_PCIICR (*(volatile uint32_t*)(&_MBAR[0xB84]))
-#define MCF_PCI_PCIISR (*(volatile uint32_t*)(&_MBAR[0xB88]))
-#define MCF_PCI_PCICAR (*(volatile uint32_t*)(&_MBAR[0xBF8]))
-#define MCF_PCI_PCITPSR (*(volatile uint32_t*)(&_MBAR[0x8400]))
-#define MCF_PCI_PCITSAR (*(volatile uint32_t*)(&_MBAR[0x8404]))
-#define MCF_PCI_PCITTCR (*(volatile uint32_t*)(&_MBAR[0x8408]))
-#define MCF_PCI_PCITER (*(volatile uint32_t*)(&_MBAR[0x840C]))
-#define MCF_PCI_PCITNAR (*(volatile uint32_t*)(&_MBAR[0x8410]))
-#define MCF_PCI_PCITLWR (*(volatile uint32_t*)(&_MBAR[0x8414]))
-#define MCF_PCI_PCITDCR (*(volatile uint32_t*)(&_MBAR[0x8418]))
-#define MCF_PCI_PCITSR (*(volatile uint32_t*)(&_MBAR[0x841C]))
-#define MCF_PCI_PCITFDR (*(volatile uint32_t*)(&_MBAR[0x8440]))
-#define MCF_PCI_PCITFSR (*(volatile uint32_t*)(&_MBAR[0x8444]))
-#define MCF_PCI_PCITFCR (*(volatile uint32_t*)(&_MBAR[0x8448]))
-#define MCF_PCI_PCITFAR (*(volatile uint32_t*)(&_MBAR[0x844C]))
-#define MCF_PCI_PCITFRPR (*(volatile uint32_t*)(&_MBAR[0x8450]))
-#define MCF_PCI_PCITFWPR (*(volatile uint32_t*)(&_MBAR[0x8454]))
-#define MCF_PCI_PCIRPSR (*(volatile uint32_t*)(&_MBAR[0x8480]))
-#define MCF_PCI_PCIRSAR (*(volatile uint32_t*)(&_MBAR[0x8484]))
-#define MCF_PCI_PCIRTCR (*(volatile uint32_t*)(&_MBAR[0x8488]))
-#define MCF_PCI_PCIRER (*(volatile uint32_t*)(&_MBAR[0x848C]))
-#define MCF_PCI_PCIRNAR (*(volatile uint32_t*)(&_MBAR[0x8490]))
-#define MCF_PCI_PCIRDCR (*(volatile uint32_t*)(&_MBAR[0x8498]))
-#define MCF_PCI_PCIRSR (*(volatile uint32_t*)(&_MBAR[0x849C]))
-#define MCF_PCI_PCIRFDR (*(volatile uint32_t*)(&_MBAR[0x84C0]))
-#define MCF_PCI_PCIRFSR (*(volatile uint32_t*)(&_MBAR[0x84C4]))
-#define MCF_PCI_PCIRFCR (*(volatile uint32_t*)(&_MBAR[0x84C8]))
-#define MCF_PCI_PCIRFAR (*(volatile uint32_t*)(&_MBAR[0x84CC]))
-#define MCF_PCI_PCIRFRPR (*(volatile uint32_t*)(&_MBAR[0x84D0]))
-#define MCF_PCI_PCIRFWPR (*(volatile uint32_t*)(&_MBAR[0x84D4]))
-
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_IO (0x1)
-#define MCF_PCI_PCISCR_M (0x2)
-#define MCF_PCI_PCISCR_B (0x4)
-#define MCF_PCI_PCISCR_SP (0x8)
-#define MCF_PCI_PCISCR_MW (0x10)
-#define MCF_PCI_PCISCR_V (0x20)
-#define MCF_PCI_PCISCR_PER (0x40)
-#define MCF_PCI_PCISCR_ST (0x80)
-#define MCF_PCI_PCISCR_S (0x100)
-#define MCF_PCI_PCISCR_F (0x200)
-#define MCF_PCI_PCISCR_C (0x100000)
-#define MCF_PCI_PCISCR_66M (0x200000)
-#define MCF_PCI_PCISCR_R (0x400000)
-#define MCF_PCI_PCISCR_FC (0x800000)
-#define MCF_PCI_PCISCR_DP (0x1000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCISCR_TS (0x8000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVISIONID(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0xFFFFFF)<<0x8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IOM (0x1)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR0_PREF (0x8)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IOM (0x1)
-#define MCF_PCI_PCIBAR1_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR1_PREF (0x8)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCICCPR */
-#define MCF_PCI_PCICCPR_PCICCP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCISID */
-#define MCF_PCI_PCISID_VENDORID(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x1)
-#define MCF_PCI_PCIGSCR_SEE (0x1000)
-#define MCF_PCI_PCIGSCR_PEE (0x2000)
-#define MCF_PCI_PCIGSCR_CLKINRESERVED(x) (((x)&0x7)<<0x10)
-#define MCF_PCI_PCIGSCR_XLB2CLKIN(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x1)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x1)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x10000)
-#define MCF_PCI_PCITCR_LD (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2_E (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_PRC(x) (((x)&0x3)<<0x9)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IOM (0x800)
-#define MCF_PCI_PCIIWCR_WINCTRL1_E (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_PRC(x) (((x)&0x3)<<0x11)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IOM (0x80000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_E (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_PRC(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IOM (0x8000000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x900)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x30000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x50000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x90000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x3000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x5000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x9000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x1000000)
-#define MCF_PCI_PCIICR_IAE (0x2000000)
-#define MCF_PCI_PCIICR_REE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x1000000)
-#define MCF_PCI_PCIISR_IA (0x2000000)
-#define MCF_PCI_PCIISR_RE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x3F)<<0x2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x1F)<<0xB)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSAR */
-#define MCF_PCI_PCITSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x1)
-#define MCF_PCI_PCITTCR_W (0x10)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x10000)
-#define MCF_PCI_PCITER_IAE (0x20000)
-#define MCF_PCI_PCITER_TAE (0x40000)
-#define MCF_PCI_PCITER_RE (0x80000)
-#define MCF_PCI_PCITER_SE (0x100000)
-#define MCF_PCI_PCITER_FEE (0x200000)
-#define MCF_PCI_PCITER_ME (0x1000000)
-#define MCF_PCI_PCITER_BE (0x8000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITNAR */
-#define MCF_PCI_PCITNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITLWR */
-#define MCF_PCI_PCITLWR_LASTWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x10000)
-#define MCF_PCI_PCITSR_TA (0x20000)
-#define MCF_PCI_PCITSR_RE (0x40000)
-#define MCF_PCI_PCITSR_SE (0x80000)
-#define MCF_PCI_PCITSR_FE (0x100000)
-#define MCF_PCI_PCITSR_BE1 (0x200000)
-#define MCF_PCI_PCITSR_BE2 (0x400000)
-#define MCF_PCI_PCITSR_BE3 (0x800000)
-#define MCF_PCI_PCITSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFDR */
-#define MCF_PCI_PCITFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMPTY (0x10000)
-#define MCF_PCI_PCITFSR_ALARM (0x20000)
-#define MCF_PCI_PCITFSR_FULL (0x40000)
-#define MCF_PCI_PCITFSR_FR (0x80000)
-#define MCF_PCI_PCITFSR_OF (0x100000)
-#define MCF_PCI_PCITFSR_UF (0x200000)
-#define MCF_PCI_PCITFSR_RXW (0x400000)
-#define MCF_PCI_PCITFSR_FAE (0x800000)
-#define MCF_PCI_PCITFSR_TXW (0x40000000)
-#define MCF_PCI_PCITFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCITFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCITFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCITFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCITFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCITFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCITFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSAR */
-#define MCF_PCI_PCIRSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x1)
-#define MCF_PCI_PCIRTCR_W (0x10)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCIRTCR_FB (0x1000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x10000)
-#define MCF_PCI_PCIRER_IAE (0x20000)
-#define MCF_PCI_PCIRER_TAE (0x40000)
-#define MCF_PCI_PCIRER_RE (0x80000)
-#define MCF_PCI_PCIRER_SE (0x100000)
-#define MCF_PCI_PCIRER_FEE (0x200000)
-#define MCF_PCI_PCIRER_ME (0x1000000)
-#define MCF_PCI_PCIRER_BE (0x8000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRNAR */
-#define MCF_PCI_PCIRNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x10000)
-#define MCF_PCI_PCIRSR_TA (0x20000)
-#define MCF_PCI_PCIRSR_RE (0x40000)
-#define MCF_PCI_PCIRSR_SE (0x80000)
-#define MCF_PCI_PCIRSR_FE (0x100000)
-#define MCF_PCI_PCIRSR_BE1 (0x200000)
-#define MCF_PCI_PCIRSR_BE2 (0x400000)
-#define MCF_PCI_PCIRSR_BE3 (0x800000)
-#define MCF_PCI_PCIRSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFDR */
-#define MCF_PCI_PCIRFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMPTY (0x10000)
-#define MCF_PCI_PCIRFSR_ALARM (0x20000)
-#define MCF_PCI_PCIRFSR_FULL (0x40000)
-#define MCF_PCI_PCIRFSR_FR (0x80000)
-#define MCF_PCI_PCIRFSR_OF (0x100000)
-#define MCF_PCI_PCIRFSR_UF (0x200000)
-#define MCF_PCI_PCIRFSR_RXW (0x400000)
-#define MCF_PCI_PCIRFSR_FAE (0x800000)
-#define MCF_PCI_PCIRFSR_TXW (0x40000000)
-#define MCF_PCI_PCIRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCIRFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCIRFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCIRFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCIRFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCIRFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIRFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-
-#endif /* __MCF5475_PCI_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_PCIARB.h b/BaS_gcc/tos/pci_mem/include/MCF5475_PCIARB.h
deleted file mode 100644
index 9e8c05b..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_PCIARB.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCIARB_H__
-#define __MCF5475_PCIARB_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Arbiter Module (PCIARB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(volatile uint32_t*)(&_MBAR[0xC00]))
-#define MCF_PCIARB_PASR (*(volatile uint32_t*)(&_MBAR[0xC04]))
-
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x1)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x1F)<<0x1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x10000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x1F)<<0x11)
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x10000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x1F)<<0x11)
-
-
-#endif /* __MCF5475_PCIARB_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_PSC.h b/BaS_gcc/tos/pci_mem/include/MCF5475_PSC.h
deleted file mode 100644
index ffa9f3e..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_PSC.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PSC_H__
-#define __MCF5475_PSC_H__
-
-
-/*********************************************************************
-*
-* Programmable Serial Controller (PSC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PSC0_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8608]))
-#define MCF_PSC0_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8618]))
-#define MCF_PSC0_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x861C]))
-#define MCF_PSC0_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8634]))
-#define MCF_PSC0_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8638]))
-#define MCF_PSC0_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x863C]))
-#define MCF_PSC0_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8640]))
-#define MCF_PSC0_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8644]))
-#define MCF_PSC0_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8648]))
-#define MCF_PSC0_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x864C]))
-#define MCF_PSC0_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8650]))
-#define MCF_PSC0_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8654]))
-#define MCF_PSC0_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8658]))
-#define MCF_PSC0_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x865C]))
-#define MCF_PSC0_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8660]))
-#define MCF_PSC0_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8664]))
-#define MCF_PSC0_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8668]))
-#define MCF_PSC0_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x866E]))
-#define MCF_PSC0_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8672]))
-#define MCF_PSC0_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8676]))
-#define MCF_PSC0_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x867A]))
-#define MCF_PSC0_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x867E]))
-#define MCF_PSC0_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8680]))
-#define MCF_PSC0_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8684]))
-#define MCF_PSC0_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8688]))
-#define MCF_PSC0_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x868E]))
-#define MCF_PSC0_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8692]))
-#define MCF_PSC0_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8696]))
-#define MCF_PSC0_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x869A]))
-#define MCF_PSC0_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x869E]))
-
-#define MCF_PSC1_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8708]))
-#define MCF_PSC1_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8718]))
-#define MCF_PSC1_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x871C]))
-#define MCF_PSC1_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8734]))
-#define MCF_PSC1_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8738]))
-#define MCF_PSC1_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x873C]))
-#define MCF_PSC1_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8740]))
-#define MCF_PSC1_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8744]))
-#define MCF_PSC1_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8748]))
-#define MCF_PSC1_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x874C]))
-#define MCF_PSC1_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8750]))
-#define MCF_PSC1_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8754]))
-#define MCF_PSC1_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8758]))
-#define MCF_PSC1_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x875C]))
-#define MCF_PSC1_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8760]))
-#define MCF_PSC1_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8764]))
-#define MCF_PSC1_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8768]))
-#define MCF_PSC1_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x876E]))
-#define MCF_PSC1_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8772]))
-#define MCF_PSC1_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8776]))
-#define MCF_PSC1_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x877A]))
-#define MCF_PSC1_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x877E]))
-#define MCF_PSC1_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8780]))
-#define MCF_PSC1_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8784]))
-#define MCF_PSC1_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8788]))
-#define MCF_PSC1_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x878E]))
-#define MCF_PSC1_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8792]))
-#define MCF_PSC1_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8796]))
-#define MCF_PSC1_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x879A]))
-#define MCF_PSC1_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x879E]))
-
-#define MCF_PSC2_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8808]))
-#define MCF_PSC2_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8818]))
-#define MCF_PSC2_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x881C]))
-#define MCF_PSC2_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8834]))
-#define MCF_PSC2_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8838]))
-#define MCF_PSC2_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x883C]))
-#define MCF_PSC2_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8840]))
-#define MCF_PSC2_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8844]))
-#define MCF_PSC2_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8848]))
-#define MCF_PSC2_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x884C]))
-#define MCF_PSC2_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8850]))
-#define MCF_PSC2_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8854]))
-#define MCF_PSC2_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8858]))
-#define MCF_PSC2_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x885C]))
-#define MCF_PSC2_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8860]))
-#define MCF_PSC2_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8864]))
-#define MCF_PSC2_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8868]))
-#define MCF_PSC2_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x886E]))
-#define MCF_PSC2_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8872]))
-#define MCF_PSC2_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8876]))
-#define MCF_PSC2_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x887A]))
-#define MCF_PSC2_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x887E]))
-#define MCF_PSC2_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8880]))
-#define MCF_PSC2_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8884]))
-#define MCF_PSC2_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8888]))
-#define MCF_PSC2_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x888E]))
-#define MCF_PSC2_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8892]))
-#define MCF_PSC2_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8896]))
-#define MCF_PSC2_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x889A]))
-#define MCF_PSC2_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x889E]))
-
-#define MCF_PSC3_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8908]))
-#define MCF_PSC3_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8918]))
-#define MCF_PSC3_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x891C]))
-#define MCF_PSC3_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8934]))
-#define MCF_PSC3_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8938]))
-#define MCF_PSC3_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x893C]))
-#define MCF_PSC3_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8940]))
-#define MCF_PSC3_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8944]))
-#define MCF_PSC3_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8948]))
-#define MCF_PSC3_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x894C]))
-#define MCF_PSC3_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8950]))
-#define MCF_PSC3_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8954]))
-#define MCF_PSC3_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8958]))
-#define MCF_PSC3_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x895C]))
-#define MCF_PSC3_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8960]))
-#define MCF_PSC3_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8964]))
-#define MCF_PSC3_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8968]))
-#define MCF_PSC3_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x896E]))
-#define MCF_PSC3_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8972]))
-#define MCF_PSC3_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8976]))
-#define MCF_PSC3_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x897A]))
-#define MCF_PSC3_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x897E]))
-#define MCF_PSC3_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8980]))
-#define MCF_PSC3_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8984]))
-#define MCF_PSC3_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8988]))
-#define MCF_PSC3_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x898E]))
-#define MCF_PSC3_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8992]))
-#define MCF_PSC3_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8996]))
-#define MCF_PSC3_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x899A]))
-#define MCF_PSC3_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x899E]))
-
-#define MCF_PSC_PSCMR(x) (*(volatile uint8_t *)(&_MBAR[0x8600 + ((x)*0x100)]))
-#define MCF_PSC_PSCCSR(x) (*(volatile uint8_t *)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCSR(x) (*(volatile uint16_t*)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCCR(x) (*(volatile uint8_t *)(&_MBAR[0x8608 + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCIPCR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCACR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCIMR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCISR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTUR(x) (*(volatile uint8_t *)(&_MBAR[0x8618 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTLR(x) (*(volatile uint8_t *)(&_MBAR[0x861C + ((x)*0x100)]))
-#define MCF_PSC_PSCIP(x) (*(volatile uint8_t *)(&_MBAR[0x8634 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPSET(x) (*(volatile uint8_t *)(&_MBAR[0x8638 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPRESET(x) (*(volatile uint8_t *)(&_MBAR[0x863C + ((x)*0x100)]))
-#define MCF_PSC_PSCSICR(x) (*(volatile uint8_t *)(&_MBAR[0x8640 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR1(x) (*(volatile uint8_t *)(&_MBAR[0x8644 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR2(x) (*(volatile uint8_t *)(&_MBAR[0x8648 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRSDR(x) (*(volatile uint8_t *)(&_MBAR[0x864C + ((x)*0x100)]))
-#define MCF_PSC_PSCIRMDR(x) (*(volatile uint8_t *)(&_MBAR[0x8650 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRFDR(x) (*(volatile uint8_t *)(&_MBAR[0x8654 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x8658 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x865C + ((x)*0x100)]))
-#define MCF_PSC_PSCRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8660 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8664 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8668 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFAR(x) (*(volatile uint16_t*)(&_MBAR[0x866E + ((x)*0x100)]))
-#define MCF_PSC_PSCRFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8672 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8676 + ((x)*0x100)]))
-#define MCF_PSC_PSCRLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x867A + ((x)*0x100)]))
-#define MCF_PSC_PSCRLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x867E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8680 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8684 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8688 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFAR(x) (*(volatile uint16_t*)(&_MBAR[0x868E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8692 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8696 + ((x)*0x100)]))
-#define MCF_PSC_PSCTLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x869A + ((x)*0x100)]))
-#define MCF_PSC_PSCTLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x869E + ((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_PSCMR */
-#define MCF_PSC_PSCMR_SB(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCMR_TXCTS (0x10)
-#define MCF_PSC_PSCMR_TXRTS (0x20)
-#define MCF_PSC_PSCMR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_PSC_PSCMR_CM_NORMAL (0)
-#define MCF_PSC_PSCMR_CM_ECHO (0x40)
-#define MCF_PSC_PSCMR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_PSCMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_1 (0x7)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_15 (0x8)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_2 (0xF)
-#define MCF_PSC_PSCMR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_PSCMR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_PSCMR_PM_NONE (0x10)
-#define MCF_PSC_PSCMR_PM_FORCE_HI (0xC)
-#define MCF_PSC_PSCMR_PM_FORCE_LO (0x8)
-#define MCF_PSC_PSCMR_PM_ODD (0x4)
-#define MCF_PSC_PSCMR_PM_EVEN (0)
-#define MCF_PSC_PSCMR_BC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCMR_BC_5 (0)
-#define MCF_PSC_PSCMR_BC_6 (0x1)
-#define MCF_PSC_PSCMR_BC_7 (0x2)
-#define MCF_PSC_PSCMR_BC_8 (0x3)
-#define MCF_PSC_PSCMR_PT (0x4)
-#define MCF_PSC_PSCMR_PM(x) (((x)&0x3)<<0x3)
-#define MCF_PSC_PSCMR_ERR (0x20)
-#define MCF_PSC_PSCMR_RXIRQ_FU (0x40)
-#define MCF_PSC_PSCMR_RXRTS (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCCSR */
-#define MCF_PSC_PSCCSR_TCSEL(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCCSR_RCSEL(x) (((x)&0xF)<<0x4)
-#define MCF_PSC_PSCCSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_PSCCSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_PSCCSR_TCSEL_CTM (0x0F)
-#define MCF_PSC_PSCCSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM (0xF0)
-
-/* Bit definitions and macros for MCF_PSC_PSCSR */
-#define MCF_PSC_PSCSR_ERR (0x40)
-#define MCF_PSC_PSCSR_CDE_DEOF (0x80)
-#define MCF_PSC_PSCSR_RXRDY (0x100)
-#define MCF_PSC_PSCSR_FU (0x200)
-#define MCF_PSC_PSCSR_TXRDY (0x400)
-#define MCF_PSC_PSCSR_TXEMP_URERR (0x800)
-#define MCF_PSC_PSCSR_OE (0x1000)
-#define MCF_PSC_PSCSR_PE_CRCERR (0x2000)
-#define MCF_PSC_PSCSR_FE_PHYERR (0x4000)
-#define MCF_PSC_PSCSR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCR */
-#define MCF_PSC_PSCCR_RXC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCCR_RX_ENABLED (0x1)
-#define MCF_PSC_PSCCR_RX_DISABLED (0x2)
-#define MCF_PSC_PSCCR_TXC(x) (((x)&0x3)<<0x2)
-#define MCF_PSC_PSCCR_TX_ENABLED (0x4)
-#define MCF_PSC_PSCCR_TX_DISABLED (0x8)
-#define MCF_PSC_PSCCR_MISC(x) (((x)&0x7)<<0x4)
-#define MCF_PSC_PSCCR_NONE (0)
-#define MCF_PSC_PSCCR_RESET_MR (0x10)
-#define MCF_PSC_PSCCR_RESET_RX (0x20)
-#define MCF_PSC_PSCCR_RESET_TX (0x30)
-#define MCF_PSC_PSCCR_RESET_ERROR (0x40)
-#define MCF_PSC_PSCCR_RESET_BKCHGINT (0x50)
-#define MCF_PSC_PSCCR_START_BREAK (0x60)
-#define MCF_PSC_PSCCR_STOP_BREAK (0x70)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_8BIT */
-#define MCF_PSC_PSCRB_8BIT_RB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCRB_8BIT_RB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCRB_8BIT_RB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCRB_8BIT_RB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_8BIT */
-#define MCF_PSC_PSCTB_8BIT_TB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCTB_8BIT_TB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCTB_8BIT_TB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCTB_8BIT_TB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_16BIT */
-#define MCF_PSC_PSCRB_16BIT_RB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRB_16BIT_RB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_16BIT */
-#define MCF_PSC_PSCTB_16BIT_TB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTB_16BIT_TB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_AC97 */
-#define MCF_PSC_PSCRB_AC97_SOF (0x800)
-#define MCF_PSC_PSCRB_AC97_RB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_AC97 */
-#define MCF_PSC_PSCTB_AC97_TB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCIPCR */
-#define MCF_PSC_PSCIPCR_RESERVED (0xC)
-#define MCF_PSC_PSCIPCR_CTS (0xD)
-#define MCF_PSC_PSCIPCR_D_CTS (0x1C)
-#define MCF_PSC_PSCIPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_PSCACR */
-#define MCF_PSC_PSCACR_IEC0 (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCIMR */
-#define MCF_PSC_PSCIMR_ERR (0x40)
-#define MCF_PSC_PSCIMR_DEOF (0x80)
-#define MCF_PSC_PSCIMR_TXRDY (0x100)
-#define MCF_PSC_PSCIMR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCIMR_DB (0x400)
-#define MCF_PSC_PSCIMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCISR */
-#define MCF_PSC_PSCISR_ERR (0x40)
-#define MCF_PSC_PSCISR_DEOF (0x80)
-#define MCF_PSC_PSCISR_TXRDY (0x100)
-#define MCF_PSC_PSCISR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCISR_DB (0x400)
-#define MCF_PSC_PSCISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTUR */
-#define MCF_PSC_PSCCTUR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTLR */
-#define MCF_PSC_PSCCTLR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIP */
-#define MCF_PSC_PSCIP_CTS (0x1)
-#define MCF_PSC_PSCIP_TGL (0x40)
-#define MCF_PSC_PSCIP_LPWR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPSET */
-#define MCF_PSC_PSCOPSET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPRESET */
-#define MCF_PSC_PSCOPRESET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCSICR */
-#define MCF_PSC_PSCSICR_SIM(x) (((x)&0x7)<<0)
-#define MCF_PSC_PSCSICR_SIM_UART (0)
-#define MCF_PSC_PSCSICR_SIM_MODEM8 (0x1)
-#define MCF_PSC_PSCSICR_SIM_MODEM16 (0x2)
-#define MCF_PSC_PSCSICR_SIM_AC97 (0x3)
-#define MCF_PSC_PSCSICR_SIM_SIR (0x4)
-#define MCF_PSC_PSCSICR_SIM_MIR (0x5)
-#define MCF_PSC_PSCSICR_SIM_FIR (0x6)
-#define MCF_PSC_PSCSICR_SHDIR (0x10)
-#define MCF_PSC_PSCSICR_DTS1 (0x20)
-#define MCF_PSC_PSCSICR_AWR (0x40)
-#define MCF_PSC_PSCSICR_ACRB (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR1 */
-#define MCF_PSC_PSCIRCR1_SPUL (0x1)
-#define MCF_PSC_PSCIRCR1_SIPEN (0x2)
-#define MCF_PSC_PSCIRCR1_FD (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR2 */
-#define MCF_PSC_PSCIRCR2_NXTEOF (0x1)
-#define MCF_PSC_PSCIRCR2_ABORT (0x2)
-#define MCF_PSC_PSCIRCR2_SIPREQ (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRSDR */
-#define MCF_PSC_PSCIRSDR_IRSTIM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRMDR */
-#define MCF_PSC_PSCIRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_PSCIRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRFDR */
-#define MCF_PSC_PSCIRFDR_F_FDIV(x) (((x)&0xF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCNT */
-#define MCF_PSC_PSCRFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCNT */
-#define MCF_PSC_PSCTFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFDR */
-#define MCF_PSC_PSCRFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFSR */
-#define MCF_PSC_PSCRFSR_EMT (0x1)
-#define MCF_PSC_PSCRFSR_ALARM (0x2)
-#define MCF_PSC_PSCRFSR_FU (0x4)
-#define MCF_PSC_PSCRFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCRFSR_OF (0x10)
-#define MCF_PSC_PSCRFSR_UF (0x20)
-#define MCF_PSC_PSCRFSR_RXW (0x40)
-#define MCF_PSC_PSCRFSR_FAE (0x80)
-#define MCF_PSC_PSCRFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCRFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCRFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCRFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCRFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCRFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCRFSR_TXW (0x4000)
-#define MCF_PSC_PSCRFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCR */
-#define MCF_PSC_PSCRFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCRFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCRFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCRFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCRFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCRFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCRFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFAR */
-#define MCF_PSC_PSCRFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFRP */
-#define MCF_PSC_PSCRFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFWP */
-#define MCF_PSC_PSCRFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLRFP */
-#define MCF_PSC_PSCRLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLWFP */
-#define MCF_PSC_PSCRLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFDR */
-#define MCF_PSC_PSCTFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFSR */
-#define MCF_PSC_PSCTFSR_EMT (0x1)
-#define MCF_PSC_PSCTFSR_ALARM (0x2)
-#define MCF_PSC_PSCTFSR_FU (0x4)
-#define MCF_PSC_PSCTFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCTFSR_OF (0x10)
-#define MCF_PSC_PSCTFSR_UF (0x20)
-#define MCF_PSC_PSCTFSR_RXW (0x40)
-#define MCF_PSC_PSCTFSR_FAE (0x80)
-#define MCF_PSC_PSCTFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCTFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCTFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCTFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCTFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCTFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCTFSR_TXW (0x4000)
-#define MCF_PSC_PSCTFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCR */
-#define MCF_PSC_PSCTFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCTFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCTFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCTFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCTFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCTFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCTFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCTFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCTFCR_TIMER (0x10000000)
-#define MCF_PSC_PSCTFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFAR */
-#define MCF_PSC_PSCTFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFRP */
-#define MCF_PSC_PSCTFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFWP */
-#define MCF_PSC_PSCTFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLRFP */
-#define MCF_PSC_PSCTLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLWFP */
-#define MCF_PSC_PSCTLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-
-#endif /* __MCF5475_PSC_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_SDRAMC.h b/BaS_gcc/tos/pci_mem/include/MCF5475_SDRAMC.h
deleted file mode 100644
index 6cdbd68..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_SDRAMC.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SDRAMC_H__
-#define __MCF5475_SDRAMC_H__
-
-
-/*********************************************************************
-*
-* Synchronous DRAM Controller (SDRAMC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(volatile uint32_t*)(&_MBAR[0x4]))
-#define MCF_SDRAMC_CS0CFG (*(volatile uint32_t*)(&_MBAR[0x20]))
-#define MCF_SDRAMC_CS1CFG (*(volatile uint32_t*)(&_MBAR[0x24]))
-#define MCF_SDRAMC_CS2CFG (*(volatile uint32_t*)(&_MBAR[0x28]))
-#define MCF_SDRAMC_CS3CFG (*(volatile uint32_t*)(&_MBAR[0x2C]))
-#define MCF_SDRAMC_SDMR (*(volatile uint32_t*)(&_MBAR[0x100]))
-#define MCF_SDRAMC_SDCR (*(volatile uint32_t*)(&_MBAR[0x104]))
-#define MCF_SDRAMC_SDCFG1 (*(volatile uint32_t*)(&_MBAR[0x108]))
-#define MCF_SDRAMC_SDCFG2 (*(volatile uint32_t*)(&_MBAR[0x10C]))
-#define MCF_SDRAMC_CSCFG(x) (*(volatile uint32_t*)(&_MBAR[0x20 + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x3)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x3)<<0x2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x3)<<0x4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x3)<<0x6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x3)<<0x8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x1)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x2)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x3)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSCFG */
-#define MCF_SDRAMC_CSCFG_CSSZ(x) (((x)&0x1F)<<0)
-#define MCF_SDRAMC_CSCFG_CSSZ_DISABLED (0)
-#define MCF_SDRAMC_CSCFG_CSSZ_1MBYTE (0x13)
-#define MCF_SDRAMC_CSCFG_CSSZ_2MBYTE (0x14)
-#define MCF_SDRAMC_CSCFG_CSSZ_4MBYTE (0x15)
-#define MCF_SDRAMC_CSCFG_CSSZ_8MBYTE (0x16)
-#define MCF_SDRAMC_CSCFG_CSSZ_16MBYTE (0x17)
-#define MCF_SDRAMC_CSCFG_CSSZ_32MBYTE (0x18)
-#define MCF_SDRAMC_CSCFG_CSSZ_64MBYTE (0x19)
-#define MCF_SDRAMC_CSCFG_CSSZ_128MBYTE (0x1A)
-#define MCF_SDRAMC_CSCFG_CSSZ_256MBYTE (0x1B)
-#define MCF_SDRAMC_CSCFG_CSSZ_512MBYTE (0x1C)
-#define MCF_SDRAMC_CSCFG_CSSZ_1GBYTE (0x1D)
-#define MCF_SDRAMC_CSCFG_CSSZ_2GBYTE (0x1E)
-#define MCF_SDRAMC_CSCFG_CSSZ_4GBYTE (0x1F)
-#define MCF_SDRAMC_CSCFG_CSBA(x) (((x)&0xFFF)<<0x14)
-#define MCF_SDRAMC_CSCFG_BA(x) ((x)&0xFFF00000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x10000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0xFFF)<<0x12)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x3)<<0x1E)
-#define MCF_SDRAMC_SDMR_BK_LMR (0)
-#define MCF_SDRAMC_SDMR_BK_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x2)
-#define MCF_SDRAMC_SDCR_IREF (0x4)
-#define MCF_SDRAMC_SDCR_BUFF (0x10)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x3F)<<0x10)
-#define MCF_SDRAMC_SDCR_DRIVE (0x400000)
-#define MCF_SDRAMC_SDCR_AP (0x800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x3)<<0x18)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x7)<<0x4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x7)<<0xC)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x7)<<0x10)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x7)<<0x18)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0xF)<<0x1C)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0xF)<<0x10)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0xF)<<0x18)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0xF)<<0x1C)
-
-
-#endif /* __MCF5475_SDRAMC_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_SEC.h b/BaS_gcc/tos/pci_mem/include/MCF5475_SEC.h
deleted file mode 100644
index 8deff0b..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_SEC.h
+++ /dev/null
@@ -1,398 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SEC_H__
-#define __MCF5475_SEC_H__
-
-
-/*********************************************************************
-*
-* Integrated Security Engine (SEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(volatile uint32_t*)(&_MBAR[0x21000]))
-#define MCF_SEC_EUACRL (*(volatile uint32_t*)(&_MBAR[0x21004]))
-#define MCF_SEC_SIMRH (*(volatile uint32_t*)(&_MBAR[0x21008]))
-#define MCF_SEC_SIMRL (*(volatile uint32_t*)(&_MBAR[0x2100C]))
-#define MCF_SEC_SISRH (*(volatile uint32_t*)(&_MBAR[0x21010]))
-#define MCF_SEC_SISRL (*(volatile uint32_t*)(&_MBAR[0x21014]))
-#define MCF_SEC_SICRH (*(volatile uint32_t*)(&_MBAR[0x21018]))
-#define MCF_SEC_SICRL (*(volatile uint32_t*)(&_MBAR[0x2101C]))
-#define MCF_SEC_SIDR (*(volatile uint32_t*)(&_MBAR[0x21020]))
-#define MCF_SEC_EUASRH (*(volatile uint32_t*)(&_MBAR[0x21028]))
-#define MCF_SEC_EUASRL (*(volatile uint32_t*)(&_MBAR[0x2102C]))
-#define MCF_SEC_SMCR (*(volatile uint32_t*)(&_MBAR[0x21030]))
-#define MCF_SEC_MEAR (*(volatile uint32_t*)(&_MBAR[0x21038]))
-#define MCF_SEC_CCCR0 (*(volatile uint32_t*)(&_MBAR[0x2200C]))
-#define MCF_SEC_CCPSRH0 (*(volatile uint32_t*)(&_MBAR[0x22010]))
-#define MCF_SEC_CCPSRL0 (*(volatile uint32_t*)(&_MBAR[0x22014]))
-#define MCF_SEC_CDPR0 (*(volatile uint32_t*)(&_MBAR[0x22044]))
-#define MCF_SEC_FR0 (*(volatile uint32_t*)(&_MBAR[0x2204C]))
-#define MCF_SEC_CCCR1 (*(volatile uint32_t*)(&_MBAR[0x2300C]))
-#define MCF_SEC_CCPSRH1 (*(volatile uint32_t*)(&_MBAR[0x23010]))
-#define MCF_SEC_CCPSRL1 (*(volatile uint32_t*)(&_MBAR[0x23014]))
-#define MCF_SEC_CDPR1 (*(volatile uint32_t*)(&_MBAR[0x23044]))
-#define MCF_SEC_FR1 (*(volatile uint32_t*)(&_MBAR[0x2304C]))
-#define MCF_SEC_AFRCR (*(volatile uint32_t*)(&_MBAR[0x28018]))
-#define MCF_SEC_AFSR (*(volatile uint32_t*)(&_MBAR[0x28028]))
-#define MCF_SEC_AFISR (*(volatile uint32_t*)(&_MBAR[0x28030]))
-#define MCF_SEC_AFIMR (*(volatile uint32_t*)(&_MBAR[0x28038]))
-#define MCF_SEC_DRCR (*(volatile uint32_t*)(&_MBAR[0x2A018]))
-#define MCF_SEC_DSR (*(volatile uint32_t*)(&_MBAR[0x2A028]))
-#define MCF_SEC_DISR (*(volatile uint32_t*)(&_MBAR[0x2A030]))
-#define MCF_SEC_DIMR (*(volatile uint32_t*)(&_MBAR[0x2A038]))
-#define MCF_SEC_MDRCR (*(volatile uint32_t*)(&_MBAR[0x2C018]))
-#define MCF_SEC_MDSR (*(volatile uint32_t*)(&_MBAR[0x2C028]))
-#define MCF_SEC_MDISR (*(volatile uint32_t*)(&_MBAR[0x2C030]))
-#define MCF_SEC_MDIMR (*(volatile uint32_t*)(&_MBAR[0x2C038]))
-#define MCF_SEC_RNGRCR (*(volatile uint32_t*)(&_MBAR[0x2E018]))
-#define MCF_SEC_RNGSR (*(volatile uint32_t*)(&_MBAR[0x2E028]))
-#define MCF_SEC_RNGISR (*(volatile uint32_t*)(&_MBAR[0x2E030]))
-#define MCF_SEC_RNGIMR (*(volatile uint32_t*)(&_MBAR[0x2E038]))
-#define MCF_SEC_AESRCR (*(volatile uint32_t*)(&_MBAR[0x32018]))
-#define MCF_SEC_AESSR (*(volatile uint32_t*)(&_MBAR[0x32028]))
-#define MCF_SEC_AESISR (*(volatile uint32_t*)(&_MBAR[0x32030]))
-#define MCF_SEC_AESIMR (*(volatile uint32_t*)(&_MBAR[0x32038]))
-#define MCF_SEC_CCCRn(x) (*(volatile uint32_t*)(&_MBAR[0x2200C + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRHn(x) (*(volatile uint32_t*)(&_MBAR[0x22010 + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRLn(x) (*(volatile uint32_t*)(&_MBAR[0x22014 + ((x)*0x1000)]))
-#define MCF_SEC_CDPRn(x) (*(volatile uint32_t*)(&_MBAR[0x22044 + ((x)*0x1000)]))
-#define MCF_SEC_FRn(x) (*(volatile uint32_t*)(&_MBAR[0x2204C + ((x)*0x1000)]))
-
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUACRH_AFFEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_AFFEU_CHA0 (0x1)
-#define MCF_SEC_EUACRH_AFFEU_CHA1 (0x2)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x200)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0xF)<<0x18)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x1000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x10000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x20000)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x8000000)
-#define MCF_SEC_SIMRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x40)
-#define MCF_SEC_SIMRL_DEU_DN (0x100)
-#define MCF_SEC_SIMRL_DEU_ERR (0x200)
-#define MCF_SEC_SIMRL_AESU_DN (0x1000)
-#define MCF_SEC_SIMRL_AESU_ERR (0x2000)
-#define MCF_SEC_SIMRL_MDEU_DN (0x10000)
-#define MCF_SEC_SIMRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SIMRL_AFEU_DN (0x100000)
-#define MCF_SEC_SIMRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SIMRL_RNG_DN (0x1000000)
-#define MCF_SEC_SIMRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x8000000)
-#define MCF_SEC_SISRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SISRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SISRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x40)
-#define MCF_SEC_SISRL_DEU_DN (0x100)
-#define MCF_SEC_SISRL_DEU_ERR (0x200)
-#define MCF_SEC_SISRL_AESU_DN (0x1000)
-#define MCF_SEC_SISRL_AESU_ERR (0x2000)
-#define MCF_SEC_SISRL_MDEU_DN (0x10000)
-#define MCF_SEC_SISRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SISRL_AFEU_DN (0x100000)
-#define MCF_SEC_SISRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SISRL_RNG_DN (0x1000000)
-#define MCF_SEC_SISRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x8000000)
-#define MCF_SEC_SICRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SICRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SICRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x40)
-#define MCF_SEC_SICRL_DEU_DN (0x100)
-#define MCF_SEC_SICRL_DEU_ERR (0x200)
-#define MCF_SEC_SICRL_AESU_DN (0x1000)
-#define MCF_SEC_SICRL_AESU_ERR (0x2000)
-#define MCF_SEC_SICRL_MDEU_DN (0x10000)
-#define MCF_SEC_SICRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SICRL_AFEU_DN (0x100000)
-#define MCF_SEC_SICRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SICRL_RNG_DN (0x1000000)
-#define MCF_SEC_SICRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SIDR */
-#define MCF_SEC_SIDR_VERSION(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0xF)<<0x4)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x10)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x20)
-#define MCF_SEC_SMCR_SWR (0x1000000)
-
-/* Bit definitions and macros for MCF_SEC_MEAR */
-#define MCF_SEC_MEAR_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x1)
-#define MCF_SEC_CCCRn_CDIE (0x2)
-#define MCF_SEC_CCCRn_NT (0x4)
-#define MCF_SEC_CCCRn_NE (0x8)
-#define MCF_SEC_CCCRn_WE (0x10)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x7)<<0x8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0xFF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x100)
-#define MCF_SEC_CCPSRLn_SERR (0x200)
-#define MCF_SEC_CCPSRLn_DERR (0x400)
-#define MCF_SEC_CCPSRLn_PERR (0x1000)
-#define MCF_SEC_CCPSRLn_TEA (0x2000)
-#define MCF_SEC_CCPSRLn_SD (0x10000)
-#define MCF_SEC_CCPSRLn_PD (0x20000)
-#define MCF_SEC_CCPSRLn_SRD (0x40000)
-#define MCF_SEC_CCPSRLn_PRD (0x80000)
-#define MCF_SEC_CCPSRLn_SG (0x100000)
-#define MCF_SEC_CCPSRLn_PG (0x200000)
-#define MCF_SEC_CCPSRLn_SR (0x400000)
-#define MCF_SEC_CCPSRLn_PR (0x800000)
-#define MCF_SEC_CCPSRLn_MO (0x1000000)
-#define MCF_SEC_CCPSRLn_MI (0x2000000)
-#define MCF_SEC_CCPSRLn_STAT (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_CDPRn */
-#define MCF_SEC_CDPRn_CDP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_FRn */
-#define MCF_SEC_FRn_FETCH_ADDR(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x1000000)
-#define MCF_SEC_AFRCR_MI (0x2000000)
-#define MCF_SEC_AFRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x1000000)
-#define MCF_SEC_AFSR_ID (0x2000000)
-#define MCF_SEC_AFSR_IE (0x4000000)
-#define MCF_SEC_AFSR_OFR (0x8000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x10000)
-#define MCF_SEC_AFISR_KSE (0x20000)
-#define MCF_SEC_AFISR_CE (0x40000)
-#define MCF_SEC_AFISR_ERE (0x80000)
-#define MCF_SEC_AFISR_IE (0x100000)
-#define MCF_SEC_AFISR_OFU (0x2000000)
-#define MCF_SEC_AFISR_IFO (0x4000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x10000)
-#define MCF_SEC_AFIMR_KSE (0x20000)
-#define MCF_SEC_AFIMR_CE (0x40000)
-#define MCF_SEC_AFIMR_ERE (0x80000)
-#define MCF_SEC_AFIMR_IE (0x100000)
-#define MCF_SEC_AFIMR_OFU (0x2000000)
-#define MCF_SEC_AFIMR_IFO (0x4000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x1000000)
-#define MCF_SEC_DRCR_MI (0x2000000)
-#define MCF_SEC_DRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x1000000)
-#define MCF_SEC_DSR_ID (0x2000000)
-#define MCF_SEC_DSR_IE (0x4000000)
-#define MCF_SEC_DSR_OFR (0x8000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x10000)
-#define MCF_SEC_DISR_KSE (0x20000)
-#define MCF_SEC_DISR_CE (0x40000)
-#define MCF_SEC_DISR_ERE (0x80000)
-#define MCF_SEC_DISR_IE (0x100000)
-#define MCF_SEC_DISR_KPE (0x200000)
-#define MCF_SEC_DISR_OFU (0x2000000)
-#define MCF_SEC_DISR_IFO (0x4000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x10000)
-#define MCF_SEC_DIMR_KSE (0x20000)
-#define MCF_SEC_DIMR_CE (0x40000)
-#define MCF_SEC_DIMR_ERE (0x80000)
-#define MCF_SEC_DIMR_IE (0x100000)
-#define MCF_SEC_DIMR_KPE (0x200000)
-#define MCF_SEC_DIMR_OFU (0x2000000)
-#define MCF_SEC_DIMR_IFO (0x4000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x1000000)
-#define MCF_SEC_MDRCR_MI (0x2000000)
-#define MCF_SEC_MDRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x1000000)
-#define MCF_SEC_MDSR_ID (0x2000000)
-#define MCF_SEC_MDSR_IE (0x4000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x10000)
-#define MCF_SEC_MDISR_KSE (0x20000)
-#define MCF_SEC_MDISR_CE (0x40000)
-#define MCF_SEC_MDISR_ERE (0x80000)
-#define MCF_SEC_MDISR_IE (0x100000)
-#define MCF_SEC_MDISR_IFO (0x4000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x10000)
-#define MCF_SEC_MDIMR_KSE (0x20000)
-#define MCF_SEC_MDIMR_CE (0x40000)
-#define MCF_SEC_MDIMR_ERE (0x80000)
-#define MCF_SEC_MDIMR_IE (0x100000)
-#define MCF_SEC_MDIMR_IFO (0x4000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x1000000)
-#define MCF_SEC_RNGRCR_MI (0x2000000)
-#define MCF_SEC_RNGRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x1000000)
-#define MCF_SEC_RNGSR_IE (0x4000000)
-#define MCF_SEC_RNGSR_OFR (0x8000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x100000)
-#define MCF_SEC_RNGISR_OFU (0x2000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x100000)
-#define MCF_SEC_RNGIMR_OFU (0x2000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x1000000)
-#define MCF_SEC_AESRCR_MI (0x2000000)
-#define MCF_SEC_AESRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x1000000)
-#define MCF_SEC_AESSR_ID (0x2000000)
-#define MCF_SEC_AESSR_IE (0x4000000)
-#define MCF_SEC_AESSR_OFR (0x8000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x10000)
-#define MCF_SEC_AESISR_KSE (0x20000)
-#define MCF_SEC_AESISR_CE (0x40000)
-#define MCF_SEC_AESISR_ERE (0x80000)
-#define MCF_SEC_AESISR_IE (0x100000)
-#define MCF_SEC_AESISR_OFU (0x2000000)
-#define MCF_SEC_AESISR_IFO (0x4000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x10000)
-#define MCF_SEC_AESIMR_KSE (0x20000)
-#define MCF_SEC_AESIMR_CE (0x40000)
-#define MCF_SEC_AESIMR_ERE (0x80000)
-#define MCF_SEC_AESIMR_IE (0x100000)
-#define MCF_SEC_AESIMR_OFU (0x2000000)
-#define MCF_SEC_AESIMR_IFO (0x4000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-
-#endif /* __MCF5475_SEC_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_SIU.h b/BaS_gcc/tos/pci_mem/include/MCF5475_SIU.h
deleted file mode 100644
index efb2896..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_SIU.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SIU_H__
-#define __MCF5475_SIU_H__
-
-
-/*********************************************************************
-*
-* System Integration Unit (SIU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(volatile uint32_t*)(&_MBAR[0x10]))
-#define MCF_SIU_SECSACR (*(volatile uint32_t*)(&_MBAR[0x38]))
-#define MCF_SIU_RSR (*(volatile uint32_t*)(&_MBAR[0x44]))
-#define MCF_SIU_JTAGID (*(volatile uint32_t*)(&_MBAR[0x50]))
-
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x8000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x1)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x1)
-#define MCF_SIU_RSR_RSTWD (0x2)
-#define MCF_SIU_RSR_RSTJTG (0x8)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_JTAGID(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF5475_SIU_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_SLT.h b/BaS_gcc/tos/pci_mem/include/MCF5475_SLT.h
deleted file mode 100644
index 20e8558..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_SLT.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SLT_H__
-#define __MCF5475_SLT_H__
-
-
-/*********************************************************************
-*
-* Slice Timers (SLT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SLT0_STCNT (*(volatile uint32_t*)(&_MBAR[0x900]))
-#define MCF_SLT0_SCR (*(volatile uint32_t*)(&_MBAR[0x904]))
-#define MCF_SLT0_SCNT (*(volatile uint32_t*)(&_MBAR[0x908]))
-#define MCF_SLT0_SSR (*(volatile uint32_t*)(&_MBAR[0x90C]))
-
-#define MCF_SLT1_STCNT (*(volatile uint32_t*)(&_MBAR[0x910]))
-#define MCF_SLT1_SCR (*(volatile uint32_t*)(&_MBAR[0x914]))
-#define MCF_SLT1_SCNT (*(volatile uint32_t*)(&_MBAR[0x918]))
-#define MCF_SLT1_SSR (*(volatile uint32_t*)(&_MBAR[0x91C]))
-
-#define MCF_SLT_STCNT(x) (*(volatile uint32_t*)(&_MBAR[0x900 + ((x)*0x10)]))
-#define MCF_SLT_SCR(x) (*(volatile uint32_t*)(&_MBAR[0x904 + ((x)*0x10)]))
-#define MCF_SLT_SCNT(x) (*(volatile int32_t*)(&_MBAR[0x908 + ((x)*0x10)]))
-#define MCF_SLT_SSR(x) (*(volatile uint32_t*)(&_MBAR[0x90C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_SLT_STCNT */
-#define MCF_SLT_STCNT_TC(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x1000000)
-#define MCF_SLT_SCR_IEN (0x2000000)
-#define MCF_SLT_SCR_RUN (0x4000000)
-
-/* Bit definitions and macros for MCF_SLT_SCNT */
-#define MCF_SLT_SCNT_CNT(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x1000000)
-#define MCF_SLT_SSR_BE (0x2000000)
-
-
-#endif /* __MCF5475_SLT_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_SRAM.h b/BaS_gcc/tos/pci_mem/include/MCF5475_SRAM.h
deleted file mode 100644
index d111f13..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_SRAM.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SRAM_H__
-#define __MCF5475_SRAM_H__
-
-
-/*********************************************************************
-*
-* System SRAM Module (SRAM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(volatile uint32_t*)(&__MBAR[0x1FFC0]))
-#define MCF_SRAM_TCCR (*(volatile uint32_t*)(&__MBAR[0x1FFC4]))
-#define MCF_SRAM_TCCRDR (*(volatile uint32_t*)(&__MBAR[0x1FFC8]))
-#define MCF_SRAM_TCCRDW (*(volatile uint32_t*)(&__MBAR[0x1FFCC]))
-#define MCF_SRAM_TCCRSEC (*(volatile uint32_t*)(&__MBAR[0x1FFD0]))
-
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x10000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-
-#endif /* __MCF5475_SRAM_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_USB.h b/BaS_gcc/tos/pci_mem/include/MCF5475_USB.h
deleted file mode 100644
index c60273c..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_USB.h
+++ /dev/null
@@ -1,554 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_USB_H__
-#define __MCF5475_USB_H__
-
-
-/*********************************************************************
-*
-* Universal Serial Bus Interface (USB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(volatile uint8_t *)(&__MBAR[0xB000]))
-#define MCF_USB_USBAIMR (*(volatile uint8_t *)(&__MBAR[0xB001]))
-#define MCF_USB_EPINFO (*(volatile uint8_t *)(&__MBAR[0xB003]))
-#define MCF_USB_CFGR (*(volatile uint8_t *)(&__MBAR[0xB004]))
-#define MCF_USB_CFGAR (*(volatile uint8_t *)(&__MBAR[0xB005]))
-#define MCF_USB_SPEEDR (*(volatile uint8_t *)(&__MBAR[0xB006]))
-#define MCF_USB_FRMNUMR (*(volatile uint16_t*)(&__MBAR[0xB00E]))
-#define MCF_USB_EPTNR (*(volatile uint16_t*)(&__MBAR[0xB010]))
-#define MCF_USB_IFUR (*(volatile uint16_t*)(&__MBAR[0xB014]))
-#define MCF_USB_IFR0 (*(volatile uint16_t*)(&__MBAR[0xB040]))
-#define MCF_USB_IFR1 (*(volatile uint16_t*)(&__MBAR[0xB042]))
-#define MCF_USB_IFR2 (*(volatile uint16_t*)(&__MBAR[0xB044]))
-#define MCF_USB_IFR3 (*(volatile uint16_t*)(&__MBAR[0xB046]))
-#define MCF_USB_IFR4 (*(volatile uint16_t*)(&__MBAR[0xB048]))
-#define MCF_USB_IFR5 (*(volatile uint16_t*)(&__MBAR[0xB04A]))
-#define MCF_USB_IFR6 (*(volatile uint16_t*)(&__MBAR[0xB04C]))
-#define MCF_USB_IFR7 (*(volatile uint16_t*)(&__MBAR[0xB04E]))
-#define MCF_USB_IFR8 (*(volatile uint16_t*)(&__MBAR[0xB050]))
-#define MCF_USB_IFR9 (*(volatile uint16_t*)(&__MBAR[0xB052]))
-#define MCF_USB_IFR10 (*(volatile uint16_t*)(&__MBAR[0xB054]))
-#define MCF_USB_IFR11 (*(volatile uint16_t*)(&__MBAR[0xB056]))
-#define MCF_USB_IFR12 (*(volatile uint16_t*)(&__MBAR[0xB058]))
-#define MCF_USB_IFR13 (*(volatile uint16_t*)(&__MBAR[0xB05A]))
-#define MCF_USB_IFR14 (*(volatile uint16_t*)(&__MBAR[0xB05C]))
-#define MCF_USB_IFR15 (*(volatile uint16_t*)(&__MBAR[0xB05E]))
-#define MCF_USB_IFR16 (*(volatile uint16_t*)(&__MBAR[0xB060]))
-#define MCF_USB_IFR17 (*(volatile uint16_t*)(&__MBAR[0xB062]))
-#define MCF_USB_IFR18 (*(volatile uint16_t*)(&__MBAR[0xB064]))
-#define MCF_USB_IFR19 (*(volatile uint16_t*)(&__MBAR[0xB066]))
-#define MCF_USB_IFR20 (*(volatile uint16_t*)(&__MBAR[0xB068]))
-#define MCF_USB_IFR21 (*(volatile uint16_t*)(&__MBAR[0xB06A]))
-#define MCF_USB_IFR22 (*(volatile uint16_t*)(&__MBAR[0xB06C]))
-#define MCF_USB_IFR23 (*(volatile uint16_t*)(&__MBAR[0xB06E]))
-#define MCF_USB_IFR24 (*(volatile uint16_t*)(&__MBAR[0xB070]))
-#define MCF_USB_IFR25 (*(volatile uint16_t*)(&__MBAR[0xB072]))
-#define MCF_USB_IFR26 (*(volatile uint16_t*)(&__MBAR[0xB074]))
-#define MCF_USB_IFR27 (*(volatile uint16_t*)(&__MBAR[0xB076]))
-#define MCF_USB_IFR28 (*(volatile uint16_t*)(&__MBAR[0xB078]))
-#define MCF_USB_IFR29 (*(volatile uint16_t*)(&__MBAR[0xB07A]))
-#define MCF_USB_IFR30 (*(volatile uint16_t*)(&__MBAR[0xB07C]))
-#define MCF_USB_IFR31 (*(volatile uint16_t*)(&__MBAR[0xB07E]))
-#define MCF_USB_PPCNT (*(volatile uint16_t*)(&__MBAR[0xB080]))
-#define MCF_USB_DPCNT (*(volatile uint16_t*)(&__MBAR[0xB082]))
-#define MCF_USB_CRCECNT (*(volatile uint16_t*)(&__MBAR[0xB084]))
-#define MCF_USB_BSECNT (*(volatile uint16_t*)(&__MBAR[0xB086]))
-#define MCF_USB_PIDECNT (*(volatile uint16_t*)(&__MBAR[0xB088]))
-#define MCF_USB_FRMECNT (*(volatile uint16_t*)(&__MBAR[0xB08A]))
-#define MCF_USB_TXPCNT (*(volatile uint16_t*)(&__MBAR[0xB08C]))
-#define MCF_USB_CNTOVR (*(volatile uint8_t *)(&__MBAR[0xB08E]))
-#define MCF_USB_EP0ACR (*(volatile uint8_t *)(&__MBAR[0xB101]))
-#define MCF_USB_EP0MPSR (*(volatile uint16_t*)(&__MBAR[0xB102]))
-#define MCF_USB_EP0IFR (*(volatile uint8_t *)(&__MBAR[0xB104]))
-#define MCF_USB_EP0SR (*(volatile uint8_t *)(&__MBAR[0xB105]))
-#define MCF_USB_BMRTR (*(volatile uint8_t *)(&__MBAR[0xB106]))
-#define MCF_USB_BRTR (*(volatile uint8_t *)(&__MBAR[0xB107]))
-#define MCF_USB_WVALUER (*(volatile uint16_t*)(&__MBAR[0xB108]))
-#define MCF_USB_WINDEXR (*(volatile uint16_t*)(&__MBAR[0xB10A]))
-#define MCF_USB_WLENGTHR (*(volatile uint16_t*)(&__MBAR[0xB10C]))
-#define MCF_USB_EP1OUTACR (*(volatile uint8_t *)(&__MBAR[0xB131]))
-#define MCF_USB_EP1OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB132]))
-#define MCF_USB_EP1OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB134]))
-#define MCF_USB_EP1OUTSR (*(volatile uint8_t *)(&__MBAR[0xB135]))
-#define MCF_USB_EP1OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB13E]))
-#define MCF_USB_EP1INACR (*(volatile uint8_t *)(&__MBAR[0xB149]))
-#define MCF_USB_EP1INMPSR (*(volatile uint16_t*)(&__MBAR[0xB14A]))
-#define MCF_USB_EP1INIFR (*(volatile uint8_t *)(&__MBAR[0xB14C]))
-#define MCF_USB_EP1INSR (*(volatile uint8_t *)(&__MBAR[0xB14D]))
-#define MCF_USB_EP1INSFR (*(volatile uint16_t*)(&__MBAR[0xB156]))
-#define MCF_USB_EP2OUTACR (*(volatile uint8_t *)(&__MBAR[0xB161]))
-#define MCF_USB_EP2OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB162]))
-#define MCF_USB_EP2OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB164]))
-#define MCF_USB_EP2OUTSR (*(volatile uint8_t *)(&__MBAR[0xB165]))
-#define MCF_USB_EP2OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB16E]))
-#define MCF_USB_EP2INACR (*(volatile uint8_t *)(&__MBAR[0xB179]))
-#define MCF_USB_EP2INMPSR (*(volatile uint16_t*)(&__MBAR[0xB17A]))
-#define MCF_USB_EP2INIFR (*(volatile uint8_t *)(&__MBAR[0xB17C]))
-#define MCF_USB_EP2INSR (*(volatile uint8_t *)(&__MBAR[0xB17D]))
-#define MCF_USB_EP2INSFR (*(volatile uint16_t*)(&__MBAR[0xB186]))
-#define MCF_USB_EP3OUTACR (*(volatile uint8_t *)(&__MBAR[0xB191]))
-#define MCF_USB_EP3OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB192]))
-#define MCF_USB_EP3OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB194]))
-#define MCF_USB_EP3OUTSR (*(volatile uint8_t *)(&__MBAR[0xB195]))
-#define MCF_USB_EP3OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB19E]))
-#define MCF_USB_EP3INACR (*(volatile uint8_t *)(&__MBAR[0xB1A9]))
-#define MCF_USB_EP3INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1AA]))
-#define MCF_USB_EP3INIFR (*(volatile uint8_t *)(&__MBAR[0xB1AC]))
-#define MCF_USB_EP3INSR (*(volatile uint8_t *)(&__MBAR[0xB1AD]))
-#define MCF_USB_EP3INSFR (*(volatile uint16_t*)(&__MBAR[0xB1B6]))
-#define MCF_USB_EP4OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1C1]))
-#define MCF_USB_EP4OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1C2]))
-#define MCF_USB_EP4OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1C4]))
-#define MCF_USB_EP4OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1C5]))
-#define MCF_USB_EP4OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1CE]))
-#define MCF_USB_EP4INACR (*(volatile uint8_t *)(&__MBAR[0xB1D9]))
-#define MCF_USB_EP4INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1DA]))
-#define MCF_USB_EP4INIFR (*(volatile uint8_t *)(&__MBAR[0xB1DC]))
-#define MCF_USB_EP4INSR (*(volatile uint8_t *)(&__MBAR[0xB1DD]))
-#define MCF_USB_EP4INSFR (*(volatile uint16_t*)(&__MBAR[0xB1E6]))
-#define MCF_USB_EP5OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1F1]))
-#define MCF_USB_EP5OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1F2]))
-#define MCF_USB_EP5OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1F4]))
-#define MCF_USB_EP5OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1F5]))
-#define MCF_USB_EP5OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1FE]))
-#define MCF_USB_EP5INACR (*(volatile uint8_t *)(&__MBAR[0xB209]))
-#define MCF_USB_EP5INMPSR (*(volatile uint16_t*)(&__MBAR[0xB20A]))
-#define MCF_USB_EP5INIFR (*(volatile uint8_t *)(&__MBAR[0xB20C]))
-#define MCF_USB_EP5INSR (*(volatile uint8_t *)(&__MBAR[0xB20D]))
-#define MCF_USB_EP5INSFR (*(volatile uint16_t*)(&__MBAR[0xB216]))
-#define MCF_USB_EP6OUTACR (*(volatile uint8_t *)(&__MBAR[0xB221]))
-#define MCF_USB_EP6OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB222]))
-#define MCF_USB_EP6OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB224]))
-#define MCF_USB_EP6OUTSR (*(volatile uint8_t *)(&__MBAR[0xB225]))
-#define MCF_USB_EP6OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB22E]))
-#define MCF_USB_EP6INACR (*(volatile uint8_t *)(&__MBAR[0xB239]))
-#define MCF_USB_EP6INMPSR (*(volatile uint16_t*)(&__MBAR[0xB23A]))
-#define MCF_USB_EP6INIFR (*(volatile uint8_t *)(&__MBAR[0xB23C]))
-#define MCF_USB_EP6INSR (*(volatile uint8_t *)(&__MBAR[0xB23D]))
-#define MCF_USB_EP6INSFR (*(volatile uint16_t*)(&__MBAR[0xB246]))
-#define MCF_USB_USBSR (*(volatile uint32_t*)(&__MBAR[0xB400]))
-#define MCF_USB_USBCR (*(volatile uint32_t*)(&__MBAR[0xB404]))
-#define MCF_USB_DRAMCR (*(volatile uint32_t*)(&__MBAR[0xB408]))
-#define MCF_USB_DRAMDR (*(volatile uint32_t*)(&__MBAR[0xB40C]))
-#define MCF_USB_USBISR (*(volatile uint32_t*)(&__MBAR[0xB410]))
-#define MCF_USB_USBIMR (*(volatile uint32_t*)(&__MBAR[0xB414]))
-#define MCF_USB_EP0STAT (*(volatile uint32_t*)(&__MBAR[0xB440]))
-#define MCF_USB_EP0ISR (*(volatile uint32_t*)(&__MBAR[0xB444]))
-#define MCF_USB_EP0IMR (*(volatile uint32_t*)(&__MBAR[0xB448]))
-#define MCF_USB_EP0FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB44C]))
-#define MCF_USB_EP0FDR (*(volatile uint32_t*)(&__MBAR[0xB450]))
-#define MCF_USB_EP0FSR (*(volatile uint32_t*)(&__MBAR[0xB454]))
-#define MCF_USB_EP0FCR (*(volatile uint32_t*)(&__MBAR[0xB458]))
-#define MCF_USB_EP0FAR (*(volatile uint32_t*)(&__MBAR[0xB45C]))
-#define MCF_USB_EP0FRP (*(volatile uint32_t*)(&__MBAR[0xB460]))
-#define MCF_USB_EP0FWP (*(volatile uint32_t*)(&__MBAR[0xB464]))
-#define MCF_USB_EP0LRFP (*(volatile uint32_t*)(&__MBAR[0xB468]))
-#define MCF_USB_EP0LWFP (*(volatile uint32_t*)(&__MBAR[0xB46C]))
-#define MCF_USB_EP1STAT (*(volatile uint32_t*)(&__MBAR[0xB470]))
-#define MCF_USB_EP1ISR (*(volatile uint32_t*)(&__MBAR[0xB474]))
-#define MCF_USB_EP1IMR (*(volatile uint32_t*)(&__MBAR[0xB478]))
-#define MCF_USB_EP1FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB47C]))
-#define MCF_USB_EP1FDR (*(volatile uint32_t*)(&__MBAR[0xB480]))
-#define MCF_USB_EP1FSR (*(volatile uint32_t*)(&__MBAR[0xB484]))
-#define MCF_USB_EP1FCR (*(volatile uint32_t*)(&__MBAR[0xB488]))
-#define MCF_USB_EP1FAR (*(volatile uint32_t*)(&__MBAR[0xB48C]))
-#define MCF_USB_EP1FRP (*(volatile uint32_t*)(&__MBAR[0xB490]))
-#define MCF_USB_EP1FWP (*(volatile uint32_t*)(&__MBAR[0xB494]))
-#define MCF_USB_EP1LRFP (*(volatile uint32_t*)(&__MBAR[0xB498]))
-#define MCF_USB_EP1LWFP (*(volatile uint32_t*)(&__MBAR[0xB49C]))
-#define MCF_USB_EP2STAT (*(volatile uint32_t*)(&__MBAR[0xB4A0]))
-#define MCF_USB_EP2ISR (*(volatile uint32_t*)(&__MBAR[0xB4A4]))
-#define MCF_USB_EP2IMR (*(volatile uint32_t*)(&__MBAR[0xB4A8]))
-#define MCF_USB_EP2FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4AC]))
-#define MCF_USB_EP2FDR (*(volatile uint32_t*)(&__MBAR[0xB4B0]))
-#define MCF_USB_EP2FSR (*(volatile uint32_t*)(&__MBAR[0xB4B4]))
-#define MCF_USB_EP2FCR (*(volatile uint32_t*)(&__MBAR[0xB4B8]))
-#define MCF_USB_EP2FAR (*(volatile uint32_t*)(&__MBAR[0xB4BC]))
-#define MCF_USB_EP2FRP (*(volatile uint32_t*)(&__MBAR[0xB4C0]))
-#define MCF_USB_EP2FWP (*(volatile uint32_t*)(&__MBAR[0xB4C4]))
-#define MCF_USB_EP2LRFP (*(volatile uint32_t*)(&__MBAR[0xB4C8]))
-#define MCF_USB_EP2LWFP (*(volatile uint32_t*)(&__MBAR[0xB4CC]))
-#define MCF_USB_EP3STAT (*(volatile uint32_t*)(&__MBAR[0xB4D0]))
-#define MCF_USB_EP3ISR (*(volatile uint32_t*)(&__MBAR[0xB4D4]))
-#define MCF_USB_EP3IMR (*(volatile uint32_t*)(&__MBAR[0xB4D8]))
-#define MCF_USB_EP3FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4DC]))
-#define MCF_USB_EP3FDR (*(volatile uint32_t*)(&__MBAR[0xB4E0]))
-#define MCF_USB_EP3FSR (*(volatile uint32_t*)(&__MBAR[0xB4E4]))
-#define MCF_USB_EP3FCR (*(volatile uint32_t*)(&__MBAR[0xB4E8]))
-#define MCF_USB_EP3FAR (*(volatile uint32_t*)(&__MBAR[0xB4EC]))
-#define MCF_USB_EP3FRP (*(volatile uint32_t*)(&__MBAR[0xB4F0]))
-#define MCF_USB_EP3FWP (*(volatile uint32_t*)(&__MBAR[0xB4F4]))
-#define MCF_USB_EP3LRFP (*(volatile uint32_t*)(&__MBAR[0xB4F8]))
-#define MCF_USB_EP3LWFP (*(volatile uint32_t*)(&__MBAR[0xB4FC]))
-#define MCF_USB_EP4STAT (*(volatile uint32_t*)(&__MBAR[0xB500]))
-#define MCF_USB_EP4ISR (*(volatile uint32_t*)(&__MBAR[0xB504]))
-#define MCF_USB_EP4IMR (*(volatile uint32_t*)(&__MBAR[0xB508]))
-#define MCF_USB_EP4FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB50C]))
-#define MCF_USB_EP4FDR (*(volatile uint32_t*)(&__MBAR[0xB510]))
-#define MCF_USB_EP4FSR (*(volatile uint32_t*)(&__MBAR[0xB514]))
-#define MCF_USB_EP4FCR (*(volatile uint32_t*)(&__MBAR[0xB518]))
-#define MCF_USB_EP4FAR (*(volatile uint32_t*)(&__MBAR[0xB51C]))
-#define MCF_USB_EP4FRP (*(volatile uint32_t*)(&__MBAR[0xB520]))
-#define MCF_USB_EP4FWP (*(volatile uint32_t*)(&__MBAR[0xB524]))
-#define MCF_USB_EP4LRFP (*(volatile uint32_t*)(&__MBAR[0xB528]))
-#define MCF_USB_EP4LWFP (*(volatile uint32_t*)(&__MBAR[0xB52C]))
-#define MCF_USB_EP5STAT (*(volatile uint32_t*)(&__MBAR[0xB530]))
-#define MCF_USB_EP5ISR (*(volatile uint32_t*)(&__MBAR[0xB534]))
-#define MCF_USB_EP5IMR (*(volatile uint32_t*)(&__MBAR[0xB538]))
-#define MCF_USB_EP5FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB53C]))
-#define MCF_USB_EP5FDR (*(volatile uint32_t*)(&__MBAR[0xB540]))
-#define MCF_USB_EP5FSR (*(volatile uint32_t*)(&__MBAR[0xB544]))
-#define MCF_USB_EP5FCR (*(volatile uint32_t*)(&__MBAR[0xB548]))
-#define MCF_USB_EP5FAR (*(volatile uint32_t*)(&__MBAR[0xB54C]))
-#define MCF_USB_EP5FRP (*(volatile uint32_t*)(&__MBAR[0xB550]))
-#define MCF_USB_EP5FWP (*(volatile uint32_t*)(&__MBAR[0xB554]))
-#define MCF_USB_EP5LRFP (*(volatile uint32_t*)(&__MBAR[0xB558]))
-#define MCF_USB_EP5LWFP (*(volatile uint32_t*)(&__MBAR[0xB55C]))
-#define MCF_USB_EP6STAT (*(volatile uint32_t*)(&__MBAR[0xB560]))
-#define MCF_USB_EP6ISR (*(volatile uint32_t*)(&__MBAR[0xB564]))
-#define MCF_USB_EP6IMR (*(volatile uint32_t*)(&__MBAR[0xB568]))
-#define MCF_USB_EP6FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB56C]))
-#define MCF_USB_EP6FDR (*(volatile uint32_t*)(&__MBAR[0xB570]))
-#define MCF_USB_EP6FSR (*(volatile uint32_t*)(&__MBAR[0xB574]))
-#define MCF_USB_EP6FCR (*(volatile uint32_t*)(&__MBAR[0xB578]))
-#define MCF_USB_EP6FAR (*(volatile uint32_t*)(&__MBAR[0xB57C]))
-#define MCF_USB_EP6FRP (*(volatile uint32_t*)(&__MBAR[0xB580]))
-#define MCF_USB_EP6FWP (*(volatile uint32_t*)(&__MBAR[0xB584]))
-#define MCF_USB_EP6LRFP (*(volatile uint32_t*)(&__MBAR[0xB588]))
-#define MCF_USB_EP6LWFP (*(volatile uint32_t*)(&__MBAR[0xB58C]))
-#define MCF_USB_IFR(x) (*(volatile uint16_t*)(&__MBAR[0xB040 + ((x)*0x2)]))
-#define MCF_USB_EPOUTACR(x) (*(volatile uint8_t *)(&__MBAR[0xB131 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB132 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB134 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSR(x) (*(volatile uint8_t *)(&__MBAR[0xB135 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB13E + ((x-1)*0x30)]))
-#define MCF_USB_EPINACR(x) (*(volatile uint8_t *)(&__MBAR[0xB149 + ((x-1)*0x30)]))
-#define MCF_USB_EPINMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB14A + ((x-1)*0x30)]))
-#define MCF_USB_EPINIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB14C + ((x-1)*0x30)]))
-#define MCF_USB_EPINSR(x) (*(volatile uint8_t *)(&__MBAR[0xB14D + ((x-1)*0x30)]))
-#define MCF_USB_EPINSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB156 + ((x-1)*0x30)]))
-#define MCF_USB_EPSTAT(x) (*(volatile uint32_t*)(&__MBAR[0xB440 + ((x)*0x30)]))
-#define MCF_USB_EPISR(x) (*(volatile uint32_t*)(&__MBAR[0xB444 + ((x)*0x30)]))
-#define MCF_USB_EPIMR(x) (*(volatile uint32_t*)(&__MBAR[0xB448 + ((x)*0x30)]))
-#define MCF_USB_EPFRCFGR(x) (*(volatile uint32_t*)(&__MBAR[0xB44C + ((x)*0x30)]))
-#define MCF_USB_EPFDR(x) (*(volatile uint32_t*)(&__MBAR[0xB450 + ((x)*0x30)]))
-#define MCF_USB_EPFSR(x) (*(volatile uint32_t*)(&__MBAR[0xB454 + ((x)*0x30)]))
-#define MCF_USB_EPFCR(x) (*(volatile uint32_t*)(&__MBAR[0xB458 + ((x)*0x30)]))
-#define MCF_USB_EPFAR(x) (*(volatile uint32_t*)(&__MBAR[0xB45C + ((x)*0x30)]))
-#define MCF_USB_EPFRP(x) (*(volatile uint32_t*)(&__MBAR[0xB460 + ((x)*0x30)]))
-#define MCF_USB_EPFWP(x) (*(volatile uint32_t*)(&__MBAR[0xB464 + ((x)*0x30)]))
-#define MCF_USB_EPLRFP(x) (*(volatile uint32_t*)(&__MBAR[0xB468 + ((x)*0x30)]))
-#define MCF_USB_EPLWFP(x) (*(volatile uint32_t*)(&__MBAR[0xB46C + ((x)*0x30)]))
-
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x1)
-#define MCF_USB_USBAISR_IN (0x2)
-#define MCF_USB_USBAISR_OUT (0x4)
-#define MCF_USB_USBAISR_EPHALT (0x8)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x1)
-#define MCF_USB_USBAIMR_INEN (0x2)
-#define MCF_USB_USBAIMR_OUTEN (0x4)
-#define MCF_USB_USBAIMR_EPHALTEN (0x8)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x1)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x7)<<0x1)
-
-/* Bit definitions and macros for MCF_USB_CFGR */
-#define MCF_USB_CFGR_Configuration_Value(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_SPEED(x) (((x)&0x3)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x3)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x3)<<0x2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x3)<<0x4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x3)<<0x6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x3)<<0x8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x3)<<0xA)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (0x1)
-#define MCF_USB_EPTNR_EPnT3 (0x2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_IFR */
-#define MCF_USB_IFR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_PPCNT */
-#define MCF_USB_PPCNT_PPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_DPCNT */
-#define MCF_USB_DPCNT_DPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CRCECNT */
-#define MCF_USB_CRCECNT_CRCECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_BSECNT */
-#define MCF_USB_BSECNT_BSECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_PIDECNT */
-#define MCF_USB_PIDECNT_PIDECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMECNT */
-#define MCF_USB_FRMECNT_FRMECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_TXPCNT */
-#define MCF_USB_TXPCNT_TXPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x1)
-#define MCF_USB_CNTOVR_DPCNT (0x2)
-#define MCF_USB_CNTOVR_CRCECNT (0x4)
-#define MCF_USB_CNTOVR_BSECNT (0x8)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (0x2)
-#define MCF_USB_EP0ACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EP0IFR */
-#define MCF_USB_EP0IFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x1)
-#define MCF_USB_EP0SR_ACTIVE (0x2)
-#define MCF_USB_EP0SR_PSTALL (0x4)
-#define MCF_USB_EP0SR_CCOMP (0x8)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_REC(x) (((x)&0x1F)<<0)
-#define MCF_USB_BMRTR_REC_DEVICE (0)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x1)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x2)
-#define MCF_USB_BMRTR_REC_OTHER (0x3)
-#define MCF_USB_BMRTR_TYPE(x) (((x)&0x3)<<0x5)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_DIR (0x80)
-
-/* Bit definitions and macros for MCF_USB_BRTR */
-#define MCF_USB_BRTR_BREQ(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WVALUER */
-#define MCF_USB_WVALUER_WVALUE(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WINDEXR */
-#define MCF_USB_WINDEXR_WINDEX(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WLENGTHR */
-#define MCF_USB_WLENGTHR_WLENGTH(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTACR */
-#define MCF_USB_EPOUTACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPOUTACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPOUTACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPOUTACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPOUTMPSR */
-#define MCF_USB_EPOUTMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPOUTMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPOUTIFR */
-#define MCF_USB_EPOUTIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSR */
-#define MCF_USB_EPOUTSR_HALT (0x1)
-#define MCF_USB_EPOUTSR_ACTIVE (0x2)
-#define MCF_USB_EPOUTSR_PSTALL (0x4)
-#define MCF_USB_EPOUTSR_CCOMP (0x8)
-#define MCF_USB_EPOUTSR_TXZERO (0x20)
-#define MCF_USB_EPOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSFR */
-#define MCF_USB_EPOUTSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINACR */
-#define MCF_USB_EPINACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPINACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPINACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPINACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPINMPSR */
-#define MCF_USB_EPINMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPINMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPINIFR */
-#define MCF_USB_EPINIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINSR */
-#define MCF_USB_EPINSR_HALT (0x1)
-#define MCF_USB_EPINSR_ACTIVE (0x2)
-#define MCF_USB_EPINSR_PSTALL (0x4)
-#define MCF_USB_EPINSR_CCOMP (0x8)
-#define MCF_USB_EPINSR_TXZERO (0x20)
-#define MCF_USB_EPINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINSFR */
-#define MCF_USB_EPINSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_ISOERREP(x) (((x)&0xF)<<0)
-#define MCF_USB_USBSR_SUSP (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x1)
-#define MCF_USB_USBCR_APPLOCK (0x2)
-#define MCF_USB_USBCR_RST (0x4)
-#define MCF_USB_USBCR_RAMEN (0x8)
-#define MCF_USB_USBCR_RAMSPLIT (0x20)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x3FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x7FF)<<0x10)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x1)
-#define MCF_USB_USBISR_FTUNLCK (0x2)
-#define MCF_USB_USBISR_SUSP (0x4)
-#define MCF_USB_USBISR_RES (0x8)
-#define MCF_USB_USBISR_UPDSOF (0x10)
-#define MCF_USB_USBISR_RSTSTOP (0x20)
-#define MCF_USB_USBISR_SOF (0x40)
-#define MCF_USB_USBISR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x1)
-#define MCF_USB_USBIMR_FTUNLCK (0x2)
-#define MCF_USB_USBIMR_SUSP (0x4)
-#define MCF_USB_USBIMR_RES (0x8)
-#define MCF_USB_USBIMR_UPDSOF (0x10)
-#define MCF_USB_USBIMR_RSTSTOP (0x20)
-#define MCF_USB_USBIMR_SOF (0x40)
-#define MCF_USB_USBIMR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPSTAT */
-#define MCF_USB_EPSTAT_RST (0x1)
-#define MCF_USB_EPSTAT_FLUSH (0x2)
-#define MCF_USB_EPSTAT_DIR (0x80)
-#define MCF_USB_EPSTAT_BYTECNT(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPISR */
-#define MCF_USB_EPISR_EOF (0x1)
-#define MCF_USB_EPISR_EOT (0x4)
-#define MCF_USB_EPISR_FIFOLO (0x10)
-#define MCF_USB_EPISR_FIFOHI (0x20)
-#define MCF_USB_EPISR_ERR (0x40)
-#define MCF_USB_EPISR_EMT (0x80)
-#define MCF_USB_EPISR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPIMR */
-#define MCF_USB_EPIMR_EOF (0x1)
-#define MCF_USB_EPIMR_EOT (0x4)
-#define MCF_USB_EPIMR_FIFOLO (0x10)
-#define MCF_USB_EPIMR_FIFOHI (0x20)
-#define MCF_USB_EPIMR_ERR (0x40)
-#define MCF_USB_EPIMR_EMT (0x80)
-#define MCF_USB_EPIMR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPFRCFGR */
-#define MCF_USB_EPFRCFGR_DEPTH(x) (((x)&0x1FFF)<<0)
-#define MCF_USB_EPFRCFGR_BASE(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPFDR */
-#define MCF_USB_EPFDR_RX_TXDATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFSR */
-#define MCF_USB_EPFSR_EMT (0x10000)
-#define MCF_USB_EPFSR_ALRM (0x20000)
-#define MCF_USB_EPFSR_FU (0x40000)
-#define MCF_USB_EPFSR_FR (0x80000)
-#define MCF_USB_EPFSR_OF (0x100000)
-#define MCF_USB_EPFSR_UF (0x200000)
-#define MCF_USB_EPFSR_RXW (0x400000)
-#define MCF_USB_EPFSR_FAE (0x800000)
-#define MCF_USB_EPFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_USB_EPFSR_TXW (0x40000000)
-#define MCF_USB_EPFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFCR */
-#define MCF_USB_EPFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_USB_EPFCR_TXWMSK (0x40000)
-#define MCF_USB_EPFCR_OFMSK (0x80000)
-#define MCF_USB_EPFCR_UFMSK (0x100000)
-#define MCF_USB_EPFCR_RXWMSK (0x200000)
-#define MCF_USB_EPFCR_FAEMSK (0x400000)
-#define MCF_USB_EPFCR_IPMSK (0x800000)
-#define MCF_USB_EPFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_USB_EPFCR_FRM (0x8000000)
-#define MCF_USB_EPFCR_TMR (0x10000000)
-#define MCF_USB_EPFCR_WFR (0x20000000)
-#define MCF_USB_EPFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFAR */
-#define MCF_USB_EPFAR_ALRMP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFRP */
-#define MCF_USB_EPFRP_RP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFWP */
-#define MCF_USB_EPFWP_WP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLRFP */
-#define MCF_USB_EPLRFP_LRFP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLWFP */
-#define MCF_USB_EPLWFP_LWFP(x) (((x)&0xFFF)<<0)
-
-
-#endif /* __MCF5475_USB_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/MCF5475_XLB.h b/BaS_gcc/tos/pci_mem/include/MCF5475_XLB.h
deleted file mode 100644
index af25ae7..0000000
--- a/BaS_gcc/tos/pci_mem/include/MCF5475_XLB.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_XLB_H__
-#define __MCF5475_XLB_H__
-
-
-/*********************************************************************
-*
-* XL Bus Arbiter (XLB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_XLB_XARB_CFG (*(volatile uint32_t*)(&_MBAR[0x240]))
-#define MCF_XLB_XARB_VER (*(volatile uint32_t*)(&_MBAR[0x244]))
-#define MCF_XLB_XARB_SR (*(volatile uint32_t*)(&_MBAR[0x248]))
-#define MCF_XLB_XARB_IMR (*(volatile uint32_t*)(&_MBAR[0x24C]))
-#define MCF_XLB_XARB_ADRCAP (*(volatile uint32_t*)(&_MBAR[0x250]))
-#define MCF_XLB_XARB_SIGCAP (*(volatile uint32_t*)(&_MBAR[0x254]))
-#define MCF_XLB_XARB_ADRTO (*(volatile uint32_t*)(&_MBAR[0x258]))
-#define MCF_XLB_XARB_DATTO (*(volatile uint32_t*)(&_MBAR[0x25C]))
-#define MCF_XLB_XARB_BUSTO (*(volatile uint32_t*)(&_MBAR[0x260]))
-#define MCF_XLB_XARB_PRIEN (*(volatile uint32_t*)(&_MBAR[0x264]))
-#define MCF_XLB_XARB_PRI (*(volatile uint32_t*)(&_MBAR[0x268]))
-
-
-/* Bit definitions and macros for MCF_XLB_XARB_CFG */
-#define MCF_XLB_XARB_CFG_AT (0x2)
-#define MCF_XLB_XARB_CFG_DT (0x4)
-#define MCF_XLB_XARB_CFG_BA (0x8)
-#define MCF_XLB_XARB_CFG_PM(x) (((x)&0x3)<<0x5)
-#define MCF_XLB_XARB_CFG_SP(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_CFG_PLDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_XLB_XARB_VER */
-#define MCF_XLB_XARB_VER_VER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SR */
-#define MCF_XLB_XARB_SR_AT (0x1)
-#define MCF_XLB_XARB_SR_DT (0x2)
-#define MCF_XLB_XARB_SR_BA (0x4)
-#define MCF_XLB_XARB_SR_TTM (0x8)
-#define MCF_XLB_XARB_SR_ECW (0x10)
-#define MCF_XLB_XARB_SR_TTR (0x20)
-#define MCF_XLB_XARB_SR_TTA (0x40)
-#define MCF_XLB_XARB_SR_MM (0x80)
-#define MCF_XLB_XARB_SR_SEA (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_IMR */
-#define MCF_XLB_XARB_IMR_ATE (0x1)
-#define MCF_XLB_XARB_IMR_DTE (0x2)
-#define MCF_XLB_XARB_IMR_BAE (0x4)
-#define MCF_XLB_XARB_IMR_TTME (0x8)
-#define MCF_XLB_XARB_IMR_ECWE (0x10)
-#define MCF_XLB_XARB_IMR_TTRE (0x20)
-#define MCF_XLB_XARB_IMR_TTAE (0x40)
-#define MCF_XLB_XARB_IMR_MME (0x80)
-#define MCF_XLB_XARB_IMR_SEAE (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRCAP */
-#define MCF_XLB_XARB_ADRCAP_ADRCAP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SIGCAP */
-#define MCF_XLB_XARB_SIGCAP_TT(x) (((x)&0x1F)<<0)
-#define MCF_XLB_XARB_SIGCAP_TBST (0x20)
-#define MCF_XLB_XARB_SIGCAP_TSIZ(x) (((x)&0x7)<<0x7)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRTO */
-#define MCF_XLB_XARB_ADRTO_ADRTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_DATTO */
-#define MCF_XLB_XARB_DATTO_DATTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_BUSTO */
-#define MCF_XLB_XARB_BUSTO_BUSTO(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRIEN */
-#define MCF_XLB_XARB_PRIEN_M0 (0x1)
-#define MCF_XLB_XARB_PRIEN_M2 (0x4)
-#define MCF_XLB_XARB_PRIEN_M3 (0x8)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRI */
-#define MCF_XLB_XARB_PRI_M0P(x) (((x)&0x7)<<0)
-#define MCF_XLB_XARB_PRI_M2P(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_PRI_M3P(x) (((x)&0x7)<<0xC)
-
-
-#endif /* __MCF5475_XLB_H__ */
diff --git a/BaS_gcc/tos/pci_mem/include/bas_string.h b/BaS_gcc/tos/pci_mem/include/bas_string.h
deleted file mode 100644
index c743c95..0000000
--- a/BaS_gcc/tos/pci_mem/include/bas_string.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * bas_string.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef BAS_STRING_H_
-#define BAS_STRING_H_
-
-#include
-
-extern int strncmp(const char *s1, const char *s2, size_t max);
-extern char *strcpy(char *dst, const char *src);
-char *strncpy(char *dst, const char *src, size_t max);
-extern int strcmp(const char *s1, const char *s2);
-extern size_t strlen(const char *str);
-extern char *strcat(char *dst, const char *src);
-extern char *strncat(char *dst, const char *src, size_t max);
-extern int atoi(const char *c);
-extern void *memcpy(void *dst, const void *src, size_t n);
-extern void *memset(void *s, int c, size_t n);
-extern int memcmp(const void *s1, const void *s2, size_t max);
-extern void bzero(void *s, size_t n);
-
-#define isdigit(c) (((c) >= '0') && ((c) <= '9'))
-#define isupper(c) ((c) >= 'A' && ((c) <= 'Z'))
-#define islower(c) ((c) >= 'a' && ((c) <= 'z'))
-#define isalpha(c) (isupper((c)) || islower(c))
-#define tolower(c) (isupper(c) ? ((c) + 'a' - 'A') : (c))
-
-#endif /* BAS_STRING_H_ */
diff --git a/BaS_gcc/tos/pci_mem/include/bas_types.h b/BaS_gcc/tos/pci_mem/include/bas_types.h
deleted file mode 100644
index 4f692a1..0000000
--- a/BaS_gcc/tos/pci_mem/include/bas_types.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * bas_types.h
- *
- * Created on: 17.11.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef BAS_TYPES_H_
-#define BAS_TYPES_H_
-
-#include
-#include
-#include /* for sizeof() etc. */
-
-#endif /* BAS_TYPES_H_ */
diff --git a/BaS_gcc/tos/pci_mem/include/driver_vec.h b/BaS_gcc/tos/pci_mem/include/driver_vec.h
deleted file mode 100644
index 06220ef..0000000
--- a/BaS_gcc/tos/pci_mem/include/driver_vec.h
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * driver_vec.h
- *
- * Interface for exposure of BaS drivers to the OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DRIVER_VEC_H_
-#define _DRIVER_VEC_H_
-
-#include "pci.h"
-
-enum driver_type
-{
- BLOCKDEV_DRIVER,
- CHARDEV_DRIVER,
- XHDI_DRIVER,
- MCD_DRIVER,
- VIDEO_DRIVER,
- PCI_DRIVER,
- MMU_DRIVER,
- PCI_NATIVE_DRIVER,
- END_OF_DRIVERS = 0xffffffffL, /* marks end of driver list */
-};
-
-struct generic_driver_interface
-{
- uint32_t (*init)(void);
- uint32_t (*read)(void *buf, size_t count);
- uint32_t (*write)(const void *buf, size_t count);
- uint32_t (*ioctl)(uint32_t request, ...);
-};
-
-struct dma_driver_interface
-{
- int32_t version;
- int32_t magic;
- int (*dma_set_initiator)(int initiator);
- uint32_t (*dma_get_initiator)(int requestor);
- void (*dma_free_initiator)(int requestor);
- int (*dma_set_channel)(int requestor, void (*handler)(void));
- int (*dma_get_channel)(int requestor);
- void (*dma_free_channel)(int requestor);
- void (*dma_clear_channel)(int channel);
- int (*MCD_startDma)(long channel,
- int8_t *srcAddr, unsigned int srcIncr, int8_t *destAddr, unsigned int destIncr,
- unsigned int dmaSize, unsigned int xferSize, unsigned int initiator, int priority,
- unsigned int flags, unsigned int funcDesc);
- int32_t (*MCD_dmaStatus)(int32_t channel);
- int32_t (*MCD_XferProgrQuery)(int32_t channel, /* MCD_XferProg */ void *progRep);
- int32_t (*MCD_killDma)(int32_t channel);
- int32_t (*MCD_continDma)(int32_t channel);
- int32_t (*MCD_pauseDma)(int32_t channel);
- int32_t (*MCD_resumeDma)(int32_t channel);
- int32_t (*MCD_csumQuery)(int32_t channel, uint32_t *csum);
- void *(*dma_malloc)(uint32_t amount);
- int32_t (*dma_free)(void *addr);
-};
-
-struct xhdi_driver_interface
-{
- uint32_t (*xhdivec)();
-};
-
-/*
- * Interpretation of offset for color fields: All offsets are from the right,
- * inside a "pixel" value, which is exactly 'bits_per_pixel' wide (means: you
- * can use the offset as right argument to <<). A pixel afterwards is a bit
- * stream and is written to video memory as that unmodified. This implies
- * big-endian byte order if bits_per_pixel is greater than 8.
- */
-struct fb_bitfield
-{
- unsigned long offset; /* beginning of bitfield */
- unsigned long length; /* length of bitfield */
- unsigned long msb_right; /* != 0 : Most significant bit is */
- /* right */
-};
-
-/*
- * the following structures define the interface to the BaS-builtin-framebuffer video driver
- */
-struct fb_var_screeninfo
-{
- unsigned long xres; /* visible resolution */
- unsigned long yres;
- unsigned long xres_virtual; /* virtual resolution */
- unsigned long yres_virtual;
- unsigned long xoffset; /* offset from virtual to visible */
- unsigned long yoffset; /* resolution */
-
- unsigned long bits_per_pixel; /* guess what */
- unsigned long grayscale; /* != 0 Graylevels instead of colors */
-
- struct fb_bitfield red; /* bitfield in fb mem if true color, */
- struct fb_bitfield green; /* else only length is significant */
- struct fb_bitfield blue;
- struct fb_bitfield transp; /* transparency */
-
- unsigned long nonstd; /* != 0 Non standard pixel format */
-
- unsigned long activate; /* see FB_ACTIVATE_* */
-
- unsigned long height; /* height of picture in mm */
- unsigned long width; /* width of picture in mm */
-
- unsigned long accel_flags; /* (OBSOLETE) see fb_info.flags */
-
- /* Timing: All values in pixclocks, except pixclock (of course) */
- unsigned long pixclock; /* pixel clock in ps (pico seconds) */
- unsigned long left_margin; /* time from sync to picture */
- unsigned long right_margin; /* time from picture to sync */
- unsigned long upper_margin; /* time from sync to picture */
- unsigned long lower_margin;
- unsigned long hsync_len; /* length of horizontal sync */
- unsigned long vsync_len; /* length of vertical sync */
- unsigned long sync; /* see FB_SYNC_* */
- unsigned long vmode; /* see FB_VMODE_* */
- unsigned long rotate; /* angle we rotate counter clockwise */
- unsigned long refresh;
- unsigned long reserved[4]; /* Reserved for future compatibility */
-};
-
-struct fb_fix_screeninfo
-{
- char id[16]; /* identification string eg "TT Builtin" */
- unsigned long smem_start; /* Start of frame buffer mem */
- /* (physical address) */
- unsigned long smem_len; /* Length of frame buffer mem */
- unsigned long type; /* see FB_TYPE_* */
- unsigned long type_aux; /* Interleave for interleaved Planes */
- unsigned long visual; /* see FB_VISUAL_* */
- unsigned short xpanstep; /* zero if no hardware panning */
- unsigned short ypanstep; /* zero if no hardware panning */
- unsigned short ywrapstep; /* zero if no hardware ywrap */
- unsigned long line_length; /* length of a line in bytes */
- unsigned long mmio_start; /* Start of Memory Mapped I/O */
- /* (physical address) */
- unsigned long mmio_len; /* Length of Memory Mapped I/O */
- unsigned long accel; /* Indicate to driver which */
- /* specific chip/card we have */
- unsigned short reserved[3]; /* Reserved for future compatibility */
-};
-
-struct fb_chroma
-{
- unsigned long redx; /* in fraction of 1024 */
- unsigned long greenx;
- unsigned long bluex;
- unsigned long whitex;
- unsigned long redy;
- unsigned long greeny;
- unsigned long bluey;
- unsigned long whitey;
-};
-
-struct fb_monspecs
-{
- struct fb_chroma chroma;
- struct fb_videomode *modedb; /* mode database */
- unsigned char manufacturer[4]; /* Manufacturer */
- unsigned char monitor[14]; /* Monitor String */
- unsigned char serial_no[14]; /* Serial Number */
- unsigned char ascii[14]; /* ? */
- unsigned long modedb_len; /* mode database length */
- unsigned long model; /* Monitor Model */
- unsigned long serial; /* Serial Number - Integer */
- unsigned long year; /* Year manufactured */
- unsigned long week; /* Week Manufactured */
- unsigned long hfmin; /* hfreq lower limit (Hz) */
- unsigned long hfmax; /* hfreq upper limit (Hz) */
- unsigned long dclkmin; /* pixelclock lower limit (Hz) */
- unsigned long dclkmax; /* pixelclock upper limit (Hz) */
- unsigned short input; /* display type - see FB_DISP_* */
- unsigned short dpms; /* DPMS support - see FB_DPMS_ */
- unsigned short signal; /* Signal Type - see FB_SIGNAL_* */
- unsigned short vfmin; /* vfreq lower limit (Hz) */
- unsigned short vfmax; /* vfreq upper limit (Hz) */
- unsigned short gamma; /* Gamma - in fractions of 100 */
- unsigned short gtf : 1; /* supports GTF */
- unsigned short misc; /* Misc flags - see FB_MISC_* */
- unsigned char version; /* EDID version... */
- unsigned char revision; /* ...and revision */
- unsigned char max_x; /* Maximum horizontal size (cm) */
- unsigned char max_y; /* Maximum vertical size (cm) */
-};
-
-struct framebuffer_driver_interface
-{
- struct fb_info **framebuffer_info; /* pointer to an fb_info struct (defined in include/fb.h) */
-};
-
-
-struct pci_bios_interface
-{
- uint32_t subjar;
- uint32_t version;
- /* Although we declare this functions as standard gcc functions (cdecl),
- * they expect parameters inside registers (fastcall) unsupported by gcc m68k.
- * Caller will take care of parameters passing convention.
- */
- int32_t (*find_pci_device)(uint32_t id, uint16_t index);
- int32_t (*find_pci_classcode)(uint32_t class, uint16_t index);
- int32_t (*read_config_byte)(int32_t handle, uint16_t reg, uint8_t *address);
- int32_t (*read_config_word)(int32_t handle, uint16_t reg, uint16_t *address);
- int32_t (*read_config_longword)(int32_t handle, uint16_t reg, uint32_t *address);
- uint8_t (*fast_read_config_byte)(int32_t handle, uint16_t reg);
- uint16_t (*fast_read_config_word)(int32_t handle, uint16_t reg);
- uint32_t (*fast_read_config_longword)(int32_t handle, uint16_t reg);
- int32_t (*write_config_byte)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_word)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_longword)(int32_t handle, uint16_t reg, uint32_t val);
- int32_t (*hook_interrupt)(int32_t handle, uint32_t *routine, uint32_t *parameter);
- int32_t (*unhook_interrupt)(int32_t handle);
- int32_t (*special_cycle)(uint16_t bus, uint32_t data);
- int32_t (*get_routing)(int32_t handle);
- int32_t (*set_interrupt)(int32_t handle);
- int32_t (*get_resource)(int32_t handle);
- int32_t (*get_card_used)(int32_t handle, uint32_t *address);
- int32_t (*set_card_used)(int32_t handle, uint32_t *callback);
- int32_t (*read_mem_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_mem_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_mem_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_mem_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_mem_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_mem_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_mem_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*read_io_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_io_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_io_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_io_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_io_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_io_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_io_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*get_machine_id)(void);
- int32_t (*get_pagesize)(void);
- int32_t (*virt_to_bus)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*bus_to_virt)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*virt_to_phys)(uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*phys_to_virt)(uint32_t address, PCI_CONV_ADR *pointer);
- // int32_t reserved[2];
-};
-
-struct mmu_driver_interface
-{
- int32_t (*map_page_locked)(uint32_t address, uint32_t length, int asid);
- int32_t (*unlock_page)(uint32_t address, uint32_t length, int asid);
- int32_t (*report_locked_pages)(uint32_t *num_itlb, uint32_t *num_dtlb);
- uint32_t (*report_pagesize)(void);
-};
-
-struct pci_native_driver_interface
-{
- uint32_t (*pci_read_config_longword)(int32_t handle, int offset);
- uint16_t (*pci_read_config_word)(int32_t handle, int offset);
- uint8_t (*pci_read_config_byte)(int32_t handle, int offset);
-
- int32_t (*pci_write_config_longword)(int32_t handle, int offset, uint32_t value);
- int32_t (*pci_write_config_word)(int32_t handle, int offset, uint16_t value);
- int32_t (*pci_write_config_byte)(int32_t handle, int offset, uint8_t value);
- int32_t (*pci_hook_interrupt)(int32_t handle, void *handler, void *parameter);
- int32_t (*pci_unhook_interrupt)(int32_t handle);
- int32_t (*pci_find_device)(uint16_t device_id, uint16_t vendor_id, int index);
- int32_t (*pci_find_classcode)(uint32_t classcode, int index);
- struct pci_rd * (*pci_get_resource)(int32_t handle);
-};
-
-union interface
-{
- struct generic_driver_interface *gdi;
- struct xhdi_driver_interface *xhdi;
- struct dma_driver_interface *dma;
- struct framebuffer_driver_interface *fb;
- struct pci_bios_interface *pci;
- struct mmu_driver_interface *mmu;
- struct pci_native_driver_interface *pci_native;
-};
-
-struct generic_interface
-{
- enum driver_type type;
- char name[16];
- char description[64];
- int version;
- int revision;
- union interface interface;
-};
-
-struct driver_table
-{
- uint32_t bas_version;
- uint32_t bas_revision;
- void (*remove_handler)(void); /* calling this will disable the BaS' hook into trap #0 */
- struct generic_interface *interfaces;
-};
-
-
-#endif /* _DRIVER_VEC_H_ */
diff --git a/BaS_gcc/tos/pci_mem/include/pci.h b/BaS_gcc/tos/pci_mem/include/pci.h
deleted file mode 100644
index b912dd6..0000000
--- a/BaS_gcc/tos/pci_mem/include/pci.h
+++ /dev/null
@@ -1,360 +0,0 @@
-#ifndef _PCI_H_
-#define _PCI_H_
-
-/*
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "util.h" /* for swpX() */
-
-#define PCI_MEMORY_OFFSET 0x80000000
-#define PCI_MEMORY_SIZE 0x40000000 /* 1 GByte PCI memory window */
-#define PCI_IO_OFFSET 0xD0000000
-#define PCI_IO_SIZE 0x10000000 /* 256 MByte PCI I/O window */
-
-#define PCI_LANESWAP_B(x) (x ^ 3)
-#define PCI_LANESWAP_W(x) (x ^ 2)
-#define PCI_LANESWAP_L(x) (x) /* for completeness only */
-/*
- * Note: the byte offsets are in little endian format, so for pci_xxx_config_byte()
- * accesses to hit the right offset, you'll need to wrap them into PCI_LANESWAP_B()
- * and for pci_xxx_config_word() into PCI_LANESWAP_W()
- */
-#define PCIIDR 0x00 /* PCI Configuration ID Register */
-#define PCICSR 0x04 /* PCI Command/Status Register */
-#define PCICR 0x06 /* PCI Command Register */
-#define PCISR 0x04 /* PCI Status Register */
-#define PCIREV 0x0B /* PCI Revision ID Register */
-#define PCICCR 0x08 /* PCI Class Code Register */
-#define PCICLSR 0x0F /* PCI Cache Line Size Register */
-#define PCILTR 0x0E /* PCI Latency Timer Register */
-#define PCIHTR 0x0D /* PCI Header Type Register */
-#define PCIBISTR 0x0C /* PCI Build-In Self Test Register */
-
-#define PCIBAR0 0x10 /* PCI Base Address Register for Memory
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR1 0x14 /* PCI Base Address Register for I/O
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR2 0x18 /* PCI Base Address Register for Memory
- Accesses to Local Address Space 0 */
-#define PCIBAR3 0x1C /* PCI Base Address Register for Memory
- Accesses to Local Address Space 1 */
-#define PCIBAR4 0x20 /* PCI Base Address Register, reserved */
-#define PCIBAR5 0x24 /* PCI Base Address Register, reserved */
-#define PCICIS 0x28 /* PCI Cardbus CIS Pointer, not support*/
-#define PCISVID 0x2E /* PCI Subsystem Vendor ID */
-#define PCISID 0x2D /* PCI Subsystem ID */
-#define PCIERBAR 0x30 /* PCI Expansion ROM Base Register */
-#define CAP_PTR 0x34 /* New Capability Pointer */
-#define PCIILR 0x3F /* PCI Interrupt Line Register */
-#define PCIIPR 0x3E /* PCI Interrupt Pin Register */
-#define PCIMGR 0x3D /* PCI Min_Gnt Register */
-#define PCIMLR 0x3C /* PCI Max_Lat Register */
-#define PMCAPID 0x40 /* Power Management Capability ID */
-#define PMNEXT 0x41 /* Power Management Next Capability
- Pointer */
-#define PMC 0x42 /* Power Management Capabilities */
-#define PMCSR 0x44 /* Power Management Control/Status */
-#define PMCSR_BSE 0x46 /* PMCSR Bridge Support Extensions */
-#define PMDATA 0x47 /* Power Management Data */
-#define HS_CNTL 0x48 /* Hot Swap Control */
-#define HS_NEXT 0x49 /* Hot Swap Next Capability Pointer */
-#define HS_CSR 0x4A /* Hot Swap Control/Status */
-#define PVPDCNTL 0x4C /* PCI Vital Product Data Control */
-#define PVPD_NEXT 0x4D /* PCI Vital Product Data Next
- Capability Pointer */
-#define PVPDAD 0x4E /* PCI Vital Product Data Address */
-#define PVPDATA 0x50 /* PCI VPD Data */
-
-/*
- * bit definitions for PCICSR lower half (Command Register)
- */
-#define PCICR_IO (1 << 0) /* if set: device responds to I/O space accesses */
-#define PCICR_MEMORY (1 << 1) /* if set: device responds to memory space accesses */
-#define PCICR_MASTER (1 << 2) /* if set: device is master */
-#define PCICR_SPECIAL (1 << 3) /* if set: device reacts on special cycles */
-#define PCICR_MEMWI (1 << 4) /* if set: device deals with memory write and invalidate */
-#define PCICR_VGA_SNOOP (1 << 5) /* if set: capable of palette snoop */
-#define PCICR_PERR (1 << 6) /* if set: reacts to parity errors */
-#define PCICR_STEPPING (1 << 7) /* if set: stepping enabled */
-#define PCICR_SERR (1 << 8) /* if set: SERR pin enabled */
-#define PCICR_FAST_BTOB_E (1 << 9) /* if set: fast back-to-back enabled */
-#define PCICR_INT_DISABLE (1 << 10) /* if set: disable interrupts from this device */
-/*
- * bit definitions for PCICSR upper half (Status Register)
- */
-#define PCISR_INTERRUPT (1 << 3) /* device requested interrupt */
-#define PCISR_CAPABILITIES (1 << 4) /* if set, capabilities pointer is valid */
-#define PCISR_66MHZ (1 << 5) /* 66 MHz capable */
-#define PCISR_UDF (1 << 6) /* UDF supported */
-#define PCISR_FAST_BTOB (1 << 7) /* Fast back-to-back enabled */
-#define PCISR_DPARITY_ERROR (1 << 8) /* data parity error detected */
-
-#define PCISR_T_ABORT_S (1 << 11) /* target abort signaled */
-#define PCISR_T_ABORT_R (1 << 12) /* target abort received */
-#define PCISR_M_ABORT_R (1 << 13) /* master abort received */
-#define PCISR_S_ERROR_S (1 << 14) /* system error signaled */
-#define PCISR_PARITY_ERR (1 << 15) /* data parity error */
-
-/* Header type 1 (PCI-to-PCI bridges) */
-#define PCI_PRIMARY_BUS 0x1B /* Primary bus number */
-#define PCI_SECONDARY_BUS 0x1A /* Secondary bus number */
-#define PCI_SUBORDINATE_BUS 0x19 /* Highest bus number behind the bridge */
-#define PCI_SEC_LATENCY_TIMER 0x18 /* Latency timer for secondary interface */
-#define PCI_IO_BASE 0x1C /* I/O range behind the bridge */
-#define PCI_IO_LIMIT 0x1D
-#define PCI_SEC_STATUS 0x1C /* Secondary status register, only bit 14 used */
-#define PCI_MEMORY_BASE 0x20 /* Memory range behind */
-#define PCI_MEMORY_LIMIT 0x22
-#define PCI_PREF_MEMORY_BASE 0x24 /* Prefetchable memory range behind */
-#define PCI_PREF_MEMORY_LIMIT 0x26
-#define PCI_PREF_BASE_UPPER32 0x28 /* Upper half of prefetchable memory range */
-#define PCI_PREF_LIMIT_UPPER32 0x2C
-#define PCI_IO_BASE_UPPER16 0x30 /* Upper half of I/O addresses */
-#define PCI_IO_LIMIT_UPPER16 0x32
-#define PCI_BRIDGE_CONTROL 0x3E /* Bridge Control */
-
-struct pci_rd /* structure of resource descriptor */
-{
- unsigned short next; /* length of the following structure */
- unsigned short flags; /* type of resource and misc. flags */
- unsigned long start; /* start-address of resource */
- unsigned long length; /* length of resource */
- unsigned long offset; /* offset PCI to phys. CPU Address */
- unsigned long dmaoffset; /* offset for DMA-transfers */
-};
-
-typedef struct /* structure of address conversion */
-{
- unsigned long adr; /* calculated address (CPU<->PCI) */
- unsigned long len; /* length of memory range */
-} PCI_CONV_ADR;
-
-/******************************************************************************/
-/* PCI-BIOS Error Codes */
-/******************************************************************************/
-#define PCI_SUCCESSFUL 0 /* everything's fine */
-#define PCI_FUNC_NOT_SUPPORTED -2 /* function not supported */
-#define PCI_BAD_VENDOR_ID -3 /* wrong Vendor ID */
-#define PCI_DEVICE_NOT_FOUND -4 /* PCI-Device not found */
-#define PCI_BAD_REGISTER_NUMBER -5 /* wrong register number */
-#define PCI_SET_FAILED -6 /* reserved for later use */
-#define PCI_BUFFER_TOO_SMALL -7 /* reserved for later use */
-#define PCI_GENERAL_ERROR -8 /* general BIOS error code */
-#define PCI_BAD_HANDLE -9 /* wrong/unknown PCI-handle */
-
-/******************************************************************************/
-/* Flags used in Resource-Descriptor */
-/******************************************************************************/
-#define FLG_IO 0x4000 /* Ressource in IO range */
-#define FLG_ROM 0x2000 /* Expansion ROM */
-#define FLG_LAST 0x8000 /* last ressource */
-#define FLG_8BIT 0x0100 /* 8 bit accesses allowed */
-#define FLG_16BIT 0x0200 /* 16 bit accesses allowed */
-#define FLG_32BIT 0x0400 /* 32 bit accesses allowed */
-#define FLG_ENDMASK 0x000F /* mask for byte ordering */
-
-/******************************************************************************/
-/* Values used in FLG_ENDMASK for Byte Ordering */
-/******************************************************************************/
-#define ORD_MOTOROLA 0 /* Motorola (big endian) */
-#define ORD_INTEL_AS 1 /* Intel (little endian), addr.swapped */
-#define ORD_INTEL_LS 2 /* Intel (little endian), lane swapped */
-#define ORD_UNKNOWN 15 /* unknown (BIOS-calls allowed only) */
-
-/******************************************************************************/
-/* Status Info used in Device-Descriptor */
-/******************************************************************************/
-#define DEVICE_FREE 0 /* Device is not used */
-#define DEVICE_USED 1 /* Device is used by another driver */
-#define DEVICE_CALLBACK 2 /* used, but driver can be cancelled */
-#define DEVICE_AVAILABLE 3 /* used, not available */
-#define NO_DEVICE -1 /* no device detected */
-
-/* PCI configuration space macros */
-
-/* register 0x00 macros */
-#define PCI_DEVICE_ID(i) (uint16_t)(((i) & 0xffff0000) >> 16)
-#define PCI_VENDOR_ID(i) (uint16_t) ((i) & 0xffff)
-
-/* register 0x04 macros */
-#define PCI_STATUS(i) ((i) & 0xffff)
-#define PCI_COMMAND(i) (((i) >> 16) & 0xffff)
-
-/* register 0x08 macros */
-#define PCI_CLASS_CODE(i) (((i) & 0xff000000) >> 24)
-#define PCI_SUBCLASS(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_PROG_IF(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_REVISION_ID(i) (((i) & 0x000000ff))
-
-/* register 0x0c macros */
-#define PCI_BIST(i) (((i) & 0xff000000) >> 24)
-#define PCI_HEADER_TYPE(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_LAT_TIMER(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_CACHELINE_SIZE(i) (((i) & 0x000000ff))
-
-/* register 0x2c macros */
-#define PCI_SUBSYS_ID(i) ((i) & 0xffff0000) >> 16)
-#define PCI_SUBSYS_VID(i) ((i) & 0xffff))
-
-/* register 0x34 macros */
-#define PCI_CAPABILITIES(i) ((i) & 0xff)
-
-/* register 0x3c macros */
-#define PCI_MAX_LATENCY(i) (((i) & 0xff000000) >> 24)
-#define PCI_MIN_GRANT(i) (((i) & 0xff0000) >> 16)
-#define PCI_INTERRUPT_PIN(i) (((i) & 0xff00) >> 8)
-#define PCI_INTERRUPT_LINE(i) (((i)) & 0xff)
-
-#define IS_PCI_MEM_BAR(i) ((i) & 1) == 0
-#define IS_PCI_IO_BAR(i) ((i) & 1) == 1
-#define PCI_MEMBAR_TYPE(i) (((i) & 0x6) >> 1)
-#define PCI_IOBAR_ADR(i) (((i) & 0xfffffffc))
-#define PCI_MEMBAR_ADR(i) (((i) & 0xfffffff0))
-
-extern void init_eport(void);
-extern void init_xlbus_arbiter(void);
-extern void init_pci(void);
-extern int pci_handle2index(int32_t handle);
-
-extern int32_t pci_find_device(uint16_t device_id, uint16_t vendor_id, int index);
-extern int32_t pci_find_classcode(uint32_t classcode, int index);
-
-extern int32_t pci_get_interrupt_cause(void);
-extern int32_t pci_call_interrupt_chain(int32_t handle, int32_t data);
-
-/*
- * match bits for pci_find_classcode()
- */
-#define PCI_FIND_BASE_CLASS (1 << 26)
-#define PCI_FIND_SUB_CLASS (1 << 25)
-#define PCI_FIND_PROG_IF (1 << 24)
-
-extern uint32_t pci_read_config_longword(int32_t handle, int offset);
-extern uint16_t pci_read_config_word(int32_t handle, int offset);
-extern uint8_t pci_read_config_byte(int32_t handle, int offset);
-
-extern int32_t pci_write_config_longword(int32_t handle, int offset, uint32_t value);
-extern int32_t pci_write_config_word(int32_t handle, int offset, uint16_t value);
-extern int32_t pci_write_config_byte(int32_t handle, int offset, uint8_t value);
-
-typedef int (*pci_interrupt_handler)(int param);
-
-extern int32_t pci_hook_interrupt(int32_t handle, void *handler, void *parameter);
-extern int32_t pci_unhook_interrupt(int32_t handle);
-
-extern struct pci_rd *pci_get_resource(int32_t handle);
-
-/*
- * Not implemented PCI_BIOS functions
- */
-extern uint8_t pci_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t pci_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t pci_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t pci_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t pci_get_routing(int32_t handle);
-extern int32_t pci_set_interrupt(int32_t handle);
-extern int32_t pci_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t pci_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t pci_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_get_machine_id(void);
-extern int32_t pci_get_pagesize(void);
-extern int32_t pci_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-/*
- * prototypes for PCI wrapper routines
- */
-extern int32_t wrapper_find_pci_device(uint32_t id, uint16_t index);
-extern int32_t wrapper_find_pci_classcode(uint32_t class, uint16_t index);
-extern int32_t wrapper_read_config_byte(int32_t handle, uint16_t reg, uint8_t *address);
-extern int32_t wrapper_read_config_word(int32_t handle, uint16_t reg, uint16_t *address);
-extern int32_t wrapper_read_config_longword(int32_t handle, uint16_t reg, uint32_t *address);
-extern uint8_t wrapper_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t wrapper_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t wrapper_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t wrapper_write_config_byte(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_word(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_longword(int32_t handle, uint16_t reg, uint32_t val);
-extern int32_t wrapper_hook_interrupt(int32_t handle, uint32_t *routine, uint32_t *parameter);
-extern int32_t wrapper_unhook_interrupt(int32_t handle);
-extern int32_t wrapper_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t wrapper_get_routing(int32_t handle);
-extern int32_t wrapper_set_interrupt(int32_t handle);
-extern int32_t wrapper_get_resource(int32_t handle);
-extern int32_t wrapper_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t wrapper_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t wrapper_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_get_machine_id(void);
-extern int32_t wrapper_get_pagesize(void);
-extern int32_t wrapper_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-#define PCI_MK_CONF_ADDR(bus, device, function) (MCF_PCI_PCICAR_E | \
- ((bus) << 16) | \
- ((device << 8) | \
- (function))
-
-#define PCI_HANDLE(bus, slot, function) (0 | ((bus & 0xff) << 10 | (slot & 0x1f) << 3 | (function & 7)))
-#define PCI_BUS_FROM_HANDLE(h) (((h) & 0xff00) >> 10)
-#define PCI_DEVICE_FROM_HANDLE(h) (((h) & 0xf8) >> 3)
-#define PCI_FUNCTION_FROM_HANDLE(h) (((h) & 0x7))
-
-extern void pci_dump_registers(int32_t handle);
-
-#endif /* _PCI_H_ */
diff --git a/BaS_gcc/tos/pci_mem/include/util.h b/BaS_gcc/tos/pci_mem/include/util.h
deleted file mode 100644
index 355c1ac..0000000
--- a/BaS_gcc/tos/pci_mem/include/util.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * util.h
- *
- * Byteswapping macros lend from EmuTOS sources
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 27.10.2013
- * Author: mfro
- */
-
-#ifndef UTIL_H_
-#define UTIL_H_
-
-#include
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-/*
- * uint16_t swpw(uint16_t val);
- * swap endianess of val, 16 bits only.
- */
-static inline uint16_t swpw(uint16_t w)
-{
- return (w << 8) | (w >> 8);
-}
-
-/*
- * uint32_t swpl(uint32_t val);
- * swap endianess of val, 32 bits only.
- * e.g. ABCD => DCBA
- */
-static inline uint32_t swpl(uint32_t l)
-{
- return ((l & 0xff000000) >> 24) | ((l & 0x00ff0000) >> 8) |
- ((l & 0x0000ff00) << 8) | (l << 24);
-}
-
-
-/*
- * WORD swpw2(ULONG val);
- * swap endianness of val, treated as two 16-bit words.
- * e.g. ABCD => BADC
- */
-
-#define swpw2(a) \
- __extension__ \
- ({unsigned long _tmp; \
- __asm__ __volatile__ \
- ("move.b (%1),%0\n\t" \
- "move.b 1(%1),(%1)\n\t" \
- "move.b %0,1(%1)\n\t" \
- "move.b 2(%1),%0\n\t" \
- "move.b 3(%1),2(%1)\n\t" \
- "move.b %0,3(%1)" \
- : "=d"(_tmp) /* outputs */ \
- : "a"(&a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- })
-
-/*
- * WORD set_sr(WORD new);
- * sets sr to the new value, and return the old sr value
- */
-
-#define set_sr(a) \
-__extension__ \
-({short _r, _a = (a); \
- __asm__ __volatile__ \
- ("move.w sr,%0\n\t" \
- "move.w %1,sr" \
- : "=&d"(_r) /* outputs */ \
- : "nd"(_a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-/*
- * WORD get_sr(void);
- * returns the current value of sr.
- */
-
-#define get_sr() \
-__extension__ \
-({short _r; \
- __asm__ volatile \
- ("move.w sr,%0" \
- : "=dm"(_r) /* outputs */ \
- : /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-
-/*
- * void regsafe_call(void *addr)
- * Saves all registers to the stack, calls the function
- * that addr points to, and restores the registers afterwards.
- */
-#define regsafe_call(addr) \
-__extension__ \
-({__asm__ volatile ("lea -60(sp),sp\n\t" \
- "movem.l d0-d7/a0-a6,(sp)"); \
- ((void (*) (void)) addr)(); \
- __asm__ volatile ("movem.l (sp),d0-d7/a0-a6\n\t" \
- "lea 60(sp),sp"); \
-})
-
-
-#endif /* UTIL_H_ */
diff --git a/BaS_gcc/tos/pci_mem/pci_mem.config b/BaS_gcc/tos/pci_mem/pci_mem.config
deleted file mode 100644
index 8cec188..0000000
--- a/BaS_gcc/tos/pci_mem/pci_mem.config
+++ /dev/null
@@ -1 +0,0 @@
-// ADD PREDEFINED MACROS HERE!
diff --git a/BaS_gcc/tos/pci_mem/pci_mem.creator b/BaS_gcc/tos/pci_mem/pci_mem.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/tos/pci_mem/pci_mem.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/tos/pci_mem/pci_mem.files b/BaS_gcc/tos/pci_mem/pci_mem.files
deleted file mode 100644
index 893c36e..0000000
--- a/BaS_gcc/tos/pci_mem/pci_mem.files
+++ /dev/null
@@ -1,6 +0,0 @@
-include/driver_vec.h
-Makefile
-sources/bas_printf.c
-sources/bas_string.c
-sources/printf_helper.S
-sources/pci_mem.c
diff --git a/BaS_gcc/tos/pci_mem/pci_mem.includes b/BaS_gcc/tos/pci_mem/pci_mem.includes
deleted file mode 100644
index 0e46827..0000000
--- a/BaS_gcc/tos/pci_mem/pci_mem.includes
+++ /dev/null
@@ -1,2 +0,0 @@
-include
-/usr/m68k-atari-mint/include
diff --git a/BaS_gcc/tos/pci_mem/sources/pci_mem.c b/BaS_gcc/tos/pci_mem/sources/pci_mem.c
deleted file mode 100644
index 7bfea44..0000000
--- a/BaS_gcc/tos/pci_mem/sources/pci_mem.c
+++ /dev/null
@@ -1,181 +0,0 @@
-#include
-#include
-#include
-#include
-#include
-
-#include "MCF5475.h"
-#include "driver_vec.h"
-#include "pci.h"
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-#define SYSCLK 132000
-
-
-int i;
-
-void add_mem(struct pci_native_driver_interface *pci)
-{
- int32_t handle;
- int16_t index = 0;
-
-#define PCI_READ_CONFIG_LONGWORD(a, b) (*pci->pci_read_config_longword)(a, b)
-#define PCI_WRITE_CONFIG_LONGWORD(a, b) (*pci->pci_write_config_longword)(a, b)
-#define PCI_FIND_DEVICE(a, b, c) (*pci->pci_find_device)(a, b, c)
-#define PCI_GET_RESOURCE(a) (*pci->pci_get_resource)(a)
-
- printf("find ATI graphics card\r\n");
-
- handle = PCI_FIND_DEVICE(0x5159, 0x1002, index);
- if (handle > 0)
- {
- struct pci_rd *rd;
-
- printf("ATI device with handle 0x%02x found\r\n", (unsigned int) handle);
- rd = PCI_GET_RESOURCE(handle); /* get resource descriptor for ATI graphics card */
- printf("rd=%p\r\n", rd);
- printf("start=%lx, length=%lx, flags=%x\r\n", rd->start, rd->length, rd->flags);
-
- if (rd != NULL)
- {
- if (rd->start != 0L && rd->length > 0x04000000 &&
- !(rd->flags & FLG_IO) && !(rd->flags & FLG_ROM))
- {
- int32_t err;
-
- if ((err = Maddalt(0x04000000 /* rd->start + 0x7C000000UL */, rd->length)) > 0)
- {
- printf("%ld MBytes of additional memory added to system at %p\r\n",
- (long) (rd->length / 1024 / 1024), (void *) 0x04000000 /* rd->start + 0x7C000000 */);
- return;
- }
- else
- {
- fprintf(stderr, "Maddalt() returned error code %ld\r\n", (long) err);
- exit(1);
- }
- }
- }
- else
- {
- fprintf(stderr, "no resource descriptor for handle 0x%02x found", (unsigned int) handle);
- exit(1);
- }
- }
- else
- {
- fprintf(stderr, "no ATI graphics card found\r\n");
- exit(1);
- }
-
-}
-
-/*
- * temporarily replace the trap 0 handler with this so we can avoid
- * getting caught by BaS versions that don't understand the driver interface
- * exposure call.
- * If we get here, we have a BaS version that doesn't support the trap 0 interface
- */
-static void __attribute__((interrupt)) trap0_catcher(void)
-{
- __asm__ __volatile__(
- " clr.l d0 \n\t" // return 0 to indicate not supported
- :
- :
- :
- );
-}
-
-struct driver_table *get_bas_drivers(void)
-{
- struct driver_table *ret = NULL;
- void *old_vector;
-
- old_vector = Setexc(0x20, trap0_catcher); /* set our own temporarily */
-
- __asm__ __volatile__(
- " bra.s do_trap \n\t"
- " .dc.l 0x5f424153 \n\t" // '_BAS'
- "do_trap: trap #0 \n\t"
- " move.l d0,%[ret] \n\t"
- : [ret] "=m" (ret) /* output */
- : /* no inputs */
- : /* clobbered */
- );
- (void) Setexc(0x20, old_vector); /* restore original vector */
-
- return ret;
-}
-
-void pci_mem(void)
-{
- struct driver_table *bas_drivers;
- struct generic_interface *ifc;
- bool pci_driver_found = false;
- struct pci_native_driver_interface *pci_driver = NULL;
-
- bas_drivers = get_bas_drivers();
-
- /*
- * trap0_catcher should return 0L on failure, for some reason FireTOS
- * returns -1L on a trap #0. Anyway, ...
- */
- if (bas_drivers != NULL && bas_drivers != (void *) -1L)
- {
- printf("BaS driver vector: %p\r\n", bas_drivers);
- printf("BaS version: %ld.%02ld\r\n", (long) bas_drivers->bas_version, (long) bas_drivers->bas_revision);
- }
- else
- {
- printf("BaS driver retrieval not supported\r\n");
- printf("(old BaS version or FireTOS?)\r\n");
- exit(1);
- }
-
- ifc = bas_drivers->interfaces;
-
- do {
- struct generic_interface *pci_driver_interface = NULL;
-
- printf("interface type: %ld\r\n", (long) ifc[i].type);
- printf("interface version: %ld.%02ld\r\n", (long) ifc[i].version, (long) ifc[i].revision);
- printf("interface name: %s\r\n", ifc[i].name);
- printf("interface description: %s\r\n", ifc[i].description);
-
- if (ifc[i].type == PCI_NATIVE_DRIVER)
- {
- pci_driver_found = true;
-
- if (!pci_driver_interface || (ifc[i].version > pci_driver_interface->version ||
- (ifc[i].version == pci_driver_interface->version && ifc[i].revision > pci_driver_interface->revision)))
- {
- /*
- * either no PCI driver interface found yet or with lower version or with lower version and higher revision
- *
- * replace it
- */
- pci_driver = ifc[i].interface.pci_native;
- pci_driver_interface = &ifc[i];
- printf("PCI native driver interface v%d.%02d found\r\n", pci_driver_interface->version, pci_driver_interface->revision);
- printf("replaced old with newer driver version\r\n");
- }
- }
- } while (ifc[++i].type != END_OF_DRIVERS);
-
- if (pci_driver_found)
- {
- add_mem(pci_driver);
- }
-}
-
-int main(int argc, char *argv[])
-{
- printf("PCI Memory Adder\r\n");
- printf("\xbd 2016 M. Fr\x94schle\r\n");
-
- Supexec(pci_mem);
-
- return 0; /* just to make the compiler happy, we will never return */
-}
-
diff --git a/BaS_gcc/tos/pci_test/Makefile b/BaS_gcc/tos/pci_test/Makefile
deleted file mode 100755
index fb8b857..0000000
--- a/BaS_gcc/tos/pci_test/Makefile
+++ /dev/null
@@ -1,109 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR = ../..
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include -nostdlib
-LIBS=-lcmini -nostdlib -lgcc
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=pci_test.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -O2\
- -fomit-frame-pointer \
- -g\
- -Wl,-Map,mapfile\
- -Wl,--defsym -Wl,__MBAR=0xff000000\
- -Wl,--defsym -Wl,__MMUBAR=0xff040000\
- -Wl,--defsym -Wl,__FPGA_JTAG_LOADED=0xff101000\
- -Wl,--defsym -Wl,__FPGA_JTAG_VALID=0xff101004\
- -Wl,--defsym -Wl,__VRAM=0x60000000\
- -Wall
-
-SRCDIR=sources
-INCDIR=include
-INCLUDE+=-I$(INCDIR)
-
-CSRCS=\
- $(SRCDIR)/pci_test.c
-
-ASRCS=
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=./m5475 ./m5475/mshort
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-m5475/$(APP):CFLAGS += -mcpu=5475
-m5475/mshort/$(APP): CFLAGS += -mcpu=5475 -mshort
-
-all:$(patsubst %,%/$(APP),$(TRGTDIRS))
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- @echo CC $$@
- @$(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/$(1)/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/$(1) $(LIBS)
- #@$(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- @-rm -f $(DEPEND)
- @for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475.h b/BaS_gcc/tos/pci_test/include/MCF5475.h
deleted file mode 100644
index 5ab1750..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_H__
-#define __MCF5475_H__
-
-#include
-/***
- * MCF5475 Derivative Memory map definitions from linker command files:
- * __MBAR, __MMUBAR, __RAMBAR0, __RAMBAR0_SIZE, __RAMBAR1, __RAMBAR1_SIZE
- * linker symbols must be defined in the linker command file.
- */
-
-typedef uint32_t __attribute__((__may_alias__)) uint32_t_a; /* a type to avoid gcc's complaints about pointer aliasing */
-
-extern uint8_t _MBAR[];
-extern uint8_t _MMUBAR[];
-extern uint8_t _RAMBAR0[];
-extern uint8_t _RAMBAR0_SIZE[];
-extern uint8_t _RAMBAR1[];
-extern uint8_t _RAMBAR1_SIZE[];
-
-#define MBAR_ADDRESS (uint32_t)_MBAR
-#define MMUBAR_ADDRESS (uint32_t)_MMUBAR
-#define RAMBAR0_ADDRESS (uint32_t)_RAMBAR0
-#define RAMBAR0_SIZE (uint32_t)_RAMBAR0_SIZE
-#define RAMBAR1_ADDRESS (uint32_t)_RAMBAR1
-#define RAMBAR1_SIZE (uint32_t)_RAMBAR1_SIZE
-
-
-#include "MCF5475_SIU.h"
-#include "MCF5475_MMU.h"
-#include "MCF5475_SDRAMC.h"
-#include "MCF5475_XLB.h"
-#include "MCF5475_CLOCK.h"
-#include "MCF5475_FBCS.h"
-#include "MCF5475_INTC.h"
-#include "MCF5475_GPT.h"
-#include "MCF5475_SLT.h"
-#include "MCF5475_GPIO.h"
-#include "MCF5475_PAD.h"
-#include "MCF5475_PCI.h"
-#include "MCF5475_PCIARB.h"
-#include "MCF5475_EPORT.h"
-#include "MCF5475_CTM.h"
-#include "MCF5475_DMA.h"
-#include "MCF5475_PSC.h"
-#include "MCF5475_DSPI.h"
-#include "MCF5475_I2C.h"
-#include "MCF5475_FEC.h"
-#include "MCF5475_USB.h"
-#include "MCF5475_SRAM.h"
-#include "MCF5475_SEC.h"
-
-#endif /* __MCF5475_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_CLOCK.h b/BaS_gcc/tos/pci_test/include/MCF5475_CLOCK.h
deleted file mode 100644
index 4603098..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_CLOCK.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CLOCK_H__
-#define __MCF5475_CLOCK_H__
-
-
-/*********************************************************************
-*
-* Clock Module (CLOCK)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CLOCK_SPCR (*(volatile uint32_t*)(&_MBAR[0x300]))
-
-
-/* Bit definitions and macros for MCF_CLOCK_SPCR */
-#define MCF_CLOCK_SPCR_MEMEN (0x1)
-#define MCF_CLOCK_SPCR_PCIEN (0x2)
-#define MCF_CLOCK_SPCR_FBEN (0x4)
-#define MCF_CLOCK_SPCR_CAN0EN (0x8)
-#define MCF_CLOCK_SPCR_DMAEN (0x10)
-#define MCF_CLOCK_SPCR_FEC0EN (0x20)
-#define MCF_CLOCK_SPCR_FEC1EN (0x40)
-#define MCF_CLOCK_SPCR_USBEN (0x80)
-#define MCF_CLOCK_SPCR_PSCEN (0x200)
-#define MCF_CLOCK_SPCR_CAN1EN (0x800)
-#define MCF_CLOCK_SPCR_CRYENA (0x1000)
-#define MCF_CLOCK_SPCR_CRYENB (0x2000)
-#define MCF_CLOCK_SPCR_COREN (0x4000)
-#define MCF_CLOCK_SPCR_PLLK (0x80000000)
-
-
-#endif /* __MCF5475_CLOCK_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_CTM.h b/BaS_gcc/tos/pci_test/include/MCF5475_CTM.h
deleted file mode 100644
index 5ba86e4..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_CTM.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CTM_H__
-#define __MCF5475_CTM_H__
-
-
-/*********************************************************************
-*
-* Comm Timer Module (CTM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CTM_CTCR0 (*(volatile uint32_t*)(&_MBAR[0x7F00]))
-#define MCF_CTM_CTCR1 (*(volatile uint32_t*)(&_MBAR[0x7F04]))
-#define MCF_CTM_CTCR2 (*(volatile uint32_t*)(&_MBAR[0x7F08]))
-#define MCF_CTM_CTCR3 (*(volatile uint32_t*)(&_MBAR[0x7F0C]))
-#define MCF_CTM_CTCR4 (*(volatile uint32_t*)(&_MBAR[0x7F10]))
-#define MCF_CTM_CTCR5 (*(volatile uint32_t*)(&_MBAR[0x7F14]))
-#define MCF_CTM_CTCR6 (*(volatile uint32_t*)(&_MBAR[0x7F18]))
-#define MCF_CTM_CTCR7 (*(volatile uint32_t*)(&_MBAR[0x7F1C]))
-#define MCF_CTM_CTCRF(x) (*(volatile uint32_t*)(&_MBAR[0x7F00 + ((x)*0x4)]))
-#define MCF_CTM_CTCRV(x) (*(volatile uint32_t*)(&_MBAR[0x7F10 + ((x-4)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_CTM_CTCRF */
-#define MCF_CTM_CTCRF_CRV(x) (((x)&0xFFFF)<<0)
-#define MCF_CTM_CTCRF_S(x) (((x)&0xF)<<0x10)
-#define MCF_CTM_CTCRF_S_CLK_1 (0)
-#define MCF_CTM_CTCRF_S_CLK_2 (0x10000)
-#define MCF_CTM_CTCRF_S_CLK_4 (0x20000)
-#define MCF_CTM_CTCRF_S_CLK_8 (0x30000)
-#define MCF_CTM_CTCRF_S_CLK_16 (0x40000)
-#define MCF_CTM_CTCRF_S_CLK_32 (0x50000)
-#define MCF_CTM_CTCRF_S_CLK_64 (0x60000)
-#define MCF_CTM_CTCRF_S_CLK_128 (0x70000)
-#define MCF_CTM_CTCRF_S_CLK_256 (0x80000)
-#define MCF_CTM_CTCRF_S_CLK_EXT (0x90000)
-#define MCF_CTM_CTCRF_PCT(x) (((x)&0x7)<<0x14)
-#define MCF_CTM_CTCRF_PCT_100 (0)
-#define MCF_CTM_CTCRF_PCT_50 (0x100000)
-#define MCF_CTM_CTCRF_PCT_25 (0x200000)
-#define MCF_CTM_CTCRF_PCT_12p5 (0x300000)
-#define MCF_CTM_CTCRF_PCT_6p25 (0x400000)
-#define MCF_CTM_CTCRF_PCT_OFF (0x500000)
-#define MCF_CTM_CTCRF_M (0x800000)
-#define MCF_CTM_CTCRF_IM (0x1000000)
-#define MCF_CTM_CTCRF_I (0x80000000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRV */
-#define MCF_CTM_CTCRV_CRV(x) (((x)&0xFFFFFF)<<0)
-#define MCF_CTM_CTCRV_PCT(x) (((x)&0x7)<<0x18)
-#define MCF_CTM_CTCRV_PCT_100 (0)
-#define MCF_CTM_CTCRV_PCT_50 (0x1000000)
-#define MCF_CTM_CTCRV_PCT_25 (0x2000000)
-#define MCF_CTM_CTCRV_PCT_12p5 (0x3000000)
-#define MCF_CTM_CTCRV_PCT_6p25 (0x4000000)
-#define MCF_CTM_CTCRV_PCT_OFF (0x5000000)
-#define MCF_CTM_CTCRV_M (0x8000000)
-#define MCF_CTM_CTCRV_S (0x10000000)
-
-
-#endif /* __MCF5475_CTM_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_DMA.h b/BaS_gcc/tos/pci_test/include/MCF5475_DMA.h
deleted file mode 100644
index 4e6f916..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_DMA.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DMA_H__
-#define __MCF5475_DMA_H__
-
-
-/*********************************************************************
-*
-* Multichannel DMA (DMA)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DMA_TASKBAR (*(volatile uint32_t*)(&_MBAR[0x8000]))
-#define MCF_DMA_CP (*(volatile uint32_t*)(&_MBAR[0x8004]))
-#define MCF_DMA_EP (*(volatile uint32_t*)(&_MBAR[0x8008]))
-#define MCF_DMA_VP (*(volatile uint32_t*)(&_MBAR[0x800C]))
-#define MCF_DMA_PTD (*(volatile uint32_t*)(&_MBAR[0x8010]))
-#define MCF_DMA_DIPR (*(volatile uint32_t*)(&_MBAR[0x8014]))
-#define MCF_DMA_DIMR (*(volatile uint32_t*)(&_MBAR[0x8018]))
-#define MCF_DMA_TCR0 (*(volatile uint16_t*)(&_MBAR[0x801C]))
-#define MCF_DMA_TCR1 (*(volatile uint16_t*)(&_MBAR[0x801E]))
-#define MCF_DMA_TCR2 (*(volatile uint16_t*)(&_MBAR[0x8020]))
-#define MCF_DMA_TCR3 (*(volatile uint16_t*)(&_MBAR[0x8022]))
-#define MCF_DMA_TCR4 (*(volatile uint16_t*)(&_MBAR[0x8024]))
-#define MCF_DMA_TCR5 (*(volatile uint16_t*)(&_MBAR[0x8026]))
-#define MCF_DMA_TCR6 (*(volatile uint16_t*)(&_MBAR[0x8028]))
-#define MCF_DMA_TCR7 (*(volatile uint16_t*)(&_MBAR[0x802A]))
-#define MCF_DMA_TCR8 (*(volatile uint16_t*)(&_MBAR[0x802C]))
-#define MCF_DMA_TCR9 (*(volatile uint16_t*)(&_MBAR[0x802E]))
-#define MCF_DMA_TCR10 (*(volatile uint16_t*)(&_MBAR[0x8030]))
-#define MCF_DMA_TCR11 (*(volatile uint16_t*)(&_MBAR[0x8032]))
-#define MCF_DMA_TCR12 (*(volatile uint16_t*)(&_MBAR[0x8034]))
-#define MCF_DMA_TCR13 (*(volatile uint16_t*)(&_MBAR[0x8036]))
-#define MCF_DMA_TCR14 (*(volatile uint16_t*)(&_MBAR[0x8038]))
-#define MCF_DMA_TCR15 (*(volatile uint16_t*)(&_MBAR[0x803A]))
-#define MCF_DMA_PRIOR0 (*(volatile uint8_t *)(&_MBAR[0x803C]))
-#define MCF_DMA_PRIOR1 (*(volatile uint8_t *)(&_MBAR[0x803D]))
-#define MCF_DMA_PRIOR2 (*(volatile uint8_t *)(&_MBAR[0x803E]))
-#define MCF_DMA_PRIOR3 (*(volatile uint8_t *)(&_MBAR[0x803F]))
-#define MCF_DMA_PRIOR4 (*(volatile uint8_t *)(&_MBAR[0x8040]))
-#define MCF_DMA_PRIOR5 (*(volatile uint8_t *)(&_MBAR[0x8041]))
-#define MCF_DMA_PRIOR6 (*(volatile uint8_t *)(&_MBAR[0x8042]))
-#define MCF_DMA_PRIOR7 (*(volatile uint8_t *)(&_MBAR[0x8043]))
-#define MCF_DMA_PRIOR8 (*(volatile uint8_t *)(&_MBAR[0x8044]))
-#define MCF_DMA_PRIOR9 (*(volatile uint8_t *)(&_MBAR[0x8045]))
-#define MCF_DMA_PRIOR10 (*(volatile uint8_t *)(&_MBAR[0x8046]))
-#define MCF_DMA_PRIOR11 (*(volatile uint8_t *)(&_MBAR[0x8047]))
-#define MCF_DMA_PRIOR12 (*(volatile uint8_t *)(&_MBAR[0x8048]))
-#define MCF_DMA_PRIOR13 (*(volatile uint8_t *)(&_MBAR[0x8049]))
-#define MCF_DMA_PRIOR14 (*(volatile uint8_t *)(&_MBAR[0x804A]))
-#define MCF_DMA_PRIOR15 (*(volatile uint8_t *)(&_MBAR[0x804B]))
-#define MCF_DMA_PRIOR16 (*(volatile uint8_t *)(&_MBAR[0x804C]))
-#define MCF_DMA_PRIOR17 (*(volatile uint8_t *)(&_MBAR[0x804D]))
-#define MCF_DMA_PRIOR18 (*(volatile uint8_t *)(&_MBAR[0x804E]))
-#define MCF_DMA_PRIOR19 (*(volatile uint8_t *)(&_MBAR[0x804F]))
-#define MCF_DMA_PRIOR20 (*(volatile uint8_t *)(&_MBAR[0x8050]))
-#define MCF_DMA_PRIOR21 (*(volatile uint8_t *)(&_MBAR[0x8051]))
-#define MCF_DMA_PRIOR22 (*(volatile uint8_t *)(&_MBAR[0x8052]))
-#define MCF_DMA_PRIOR23 (*(volatile uint8_t *)(&_MBAR[0x8053]))
-#define MCF_DMA_PRIOR24 (*(volatile uint8_t *)(&_MBAR[0x8054]))
-#define MCF_DMA_PRIOR25 (*(volatile uint8_t *)(&_MBAR[0x8055]))
-#define MCF_DMA_PRIOR26 (*(volatile uint8_t *)(&_MBAR[0x8056]))
-#define MCF_DMA_PRIOR27 (*(volatile uint8_t *)(&_MBAR[0x8057]))
-#define MCF_DMA_PRIOR28 (*(volatile uint8_t *)(&_MBAR[0x8058]))
-#define MCF_DMA_PRIOR29 (*(volatile uint8_t *)(&_MBAR[0x8059]))
-#define MCF_DMA_PRIOR30 (*(volatile uint8_t *)(&_MBAR[0x805A]))
-#define MCF_DMA_PRIOR31 (*(volatile uint8_t *)(&_MBAR[0x805B]))
-#define MCF_DMA_IMCR (*(volatile uint32_t*)(&_MBAR[0x805C]))
-#define MCF_DMA_TSKSZ0 (*(volatile uint32_t*)(&_MBAR[0x8060]))
-#define MCF_DMA_TSKSZ1 (*(volatile uint32_t*)(&_MBAR[0x8064]))
-#define MCF_DMA_DBGCOMP0 (*(volatile uint32_t*)(&_MBAR[0x8070]))
-#define MCF_DMA_DBGCOMP2 (*(volatile uint32_t*)(&_MBAR[0x8074]))
-#define MCF_DMA_DBGCTL (*(volatile uint32_t*)(&_MBAR[0x8078]))
-#define MCF_DMA_TCR(x) (*(volatile uint16_t*)(&_MBAR[0x801C + ((x)*0x2)]))
-#define MCF_DMA_PRIOR(x) (*(volatile uint8_t *)(&_MBAR[0x803C + ((x)*0x1)]))
-
-
-/* Bit definitions and macros for MCF_DMA_TASKBAR */
-#define MCF_DMA_TASKBAR_TASK_BASE_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_CP */
-#define MCF_DMA_CP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_EP */
-#define MCF_DMA_EP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_VP */
-#define MCF_DMA_VP_VARIABLE_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_PTD */
-#define MCF_DMA_PTD_PCTL0 (0x1)
-#define MCF_DMA_PTD_PCTL1 (0x2)
-#define MCF_DMA_PTD_PCTL13 (0x2000)
-#define MCF_DMA_PTD_PCTL14 (0x4000)
-#define MCF_DMA_PTD_PCTL15 (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_TCR */
-#define MCF_DMA_TCR_ASTSKNUM(x) (((x)&0xF)<<0)
-#define MCF_DMA_TCR_HLDINITNUM (0x20)
-#define MCF_DMA_TCR_HIPRITSKEN (0x40)
-#define MCF_DMA_TCR_ASTRT (0x80)
-#define MCF_DMA_TCR_INITNUM(x) (((x)&0x1F)<<0x8)
-#define MCF_DMA_TCR_ALWINIT (0x2000)
-#define MCF_DMA_TCR_V (0x4000)
-#define MCF_DMA_TCR_EN (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_PRIOR */
-#define MCF_DMA_PRIOR_PRI(x) (((x)&0x7)<<0)
-#define MCF_DMA_PRIOR_HLD (0x80)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_IMC16(x) (((x)&0x3)<<0)
-#define MCF_DMA_IMCR_IMC17(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_IMCR_IMC18(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_IMCR_IMC19(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_IMCR_IMC20(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_IMCR_IMC21(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_IMCR_IMC22(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_IMCR_IMC23(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_IMCR_IMC24(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_IMCR_IMC25(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_IMCR_IMC26(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_IMCR_IMC27(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_IMCR_IMC28(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_IMCR_IMC29(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_IMCR_IMC30(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_IMCR_IMC31(x) (((x)&0x3)<<0x1E)
-
-
-#define MCF_DMA_IMCR_IMC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_IMC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_IMC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_IMC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_IMC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_IMC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_IMC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_IMC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_IMC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_IMC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_IMC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_IMC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_IMC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_IMC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_IMC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_IMC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_IMC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_IMC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_IMC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_IMC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_IMC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_IMC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_IMC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_IMC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_IMC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_IMC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_IMC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_IMC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_IMC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_IMC31_PSC3TX (0xC0000000)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ0 */
-#define MCF_DMA_TSKSZ0_DSTSZ7(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ0_SRCSZ7(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ0_DSTSZ6(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ0_SRCSZ6(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ0_DSTSZ5(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ0_SRCSZ5(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ0_DSTSZ4(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ0_SRCSZ4(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ0_DSTSZ3(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ0_SRCSZ3(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ0_DSTSZ2(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ0_SRCSZ2(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ0_DSTSZ1(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ0_SRCSZ1(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ0_DSTSZ0(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ0_SRCSZ0(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ1 */
-#define MCF_DMA_TSKSZ1_DSTSZ15(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ1_SRCSZ15(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ1_DSTSZ14(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ1_SRCSZ14(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ1_DSTSZ13(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ1_SRCSZ13(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ1_DSTSZ12(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ1_SRCSZ12(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ1_DSTSZ11(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ1_SRCSZ11(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ1_DSTSZ10(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ1_SRCSZ10(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ1_DSTSZ9(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ1_SRCSZ9(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ1_DSTSZ8(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ1_SRCSZ8(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP0 */
-#define MCF_DMA_DBGCOMP0_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP2 */
-#define MCF_DMA_DBGCOMP2_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCTL */
-#define MCF_DMA_DBGCTL_I (0x2)
-#define MCF_DMA_DBGCTL_E (0x4)
-#define MCF_DMA_DBGCTL_AND_OR (0x80)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_2(x) (((x)&0x7)<<0x8)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_1(x) (((x)&0x7)<<0xB)
-#define MCF_DMA_DBGCTL_B (0x4000)
-#define MCF_DMA_DBGCTL_AA (0x8000)
-#define MCF_DMA_DBGCTL_BLOCK_TASKS(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_DMA_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_DSPI.h b/BaS_gcc/tos/pci_test/include/MCF5475_DSPI.h
deleted file mode 100644
index 76cac28..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_DSPI.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DSPI_H__
-#define __MCF5475_DSPI_H__
-
-
-/*********************************************************************
-*
-* DMA Serial Peripheral Interface (DSPI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(volatile uint32_t*)(&_MBAR[0x8A00]))
-#define MCF_DSPI_DTCR (*(volatile uint32_t*)(&_MBAR[0x8A08]))
-#define MCF_DSPI_DCTAR0 (*(volatile uint32_t*)(&_MBAR[0x8A0C]))
-#define MCF_DSPI_DCTAR1 (*(volatile uint32_t*)(&_MBAR[0x8A10]))
-#define MCF_DSPI_DCTAR2 (*(volatile uint32_t*)(&_MBAR[0x8A14]))
-#define MCF_DSPI_DCTAR3 (*(volatile uint32_t*)(&_MBAR[0x8A18]))
-#define MCF_DSPI_DCTAR4 (*(volatile uint32_t*)(&_MBAR[0x8A1C]))
-#define MCF_DSPI_DCTAR5 (*(volatile uint32_t*)(&_MBAR[0x8A20]))
-#define MCF_DSPI_DCTAR6 (*(volatile uint32_t*)(&_MBAR[0x8A24]))
-#define MCF_DSPI_DCTAR7 (*(volatile uint32_t*)(&_MBAR[0x8A28]))
-#define MCF_DSPI_DSR (*(volatile uint32_t*)(&_MBAR[0x8A2C]))
-#define MCF_DSPI_DIRSR (*(volatile uint32_t*)(&_MBAR[0x8A30]))
-#define MCF_DSPI_DTFR (*(volatile uint32_t*)(&_MBAR[0x8A34]))
-#define MCF_DSPI_DRFR (*(volatile uint32_t*)(&_MBAR[0x8A38]))
-#define MCF_DSPI_DTFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A3C]))
-#define MCF_DSPI_DTFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A40]))
-#define MCF_DSPI_DTFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A44]))
-#define MCF_DSPI_DTFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A48]))
-#define MCF_DSPI_DRFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A7C]))
-#define MCF_DSPI_DRFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A80]))
-#define MCF_DSPI_DRFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A84]))
-#define MCF_DSPI_DRFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A88]))
-#define MCF_DSPI_DCTAR(x) (*(volatile uint32_t*)(&_MBAR[0x8A0C + ((x)*0x4)]))
-#define MCF_DSPI_DTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A3C + ((x)*0x4)]))
-#define MCF_DSPI_DRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A7C + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x1)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x3)<<0x8)
-#define MCF_DSPI_DMCR_SMPL_PT_0CLK (0)
-#define MCF_DSPI_DMCR_SMPL_PT_1CLK (0x100)
-#define MCF_DSPI_DMCR_SMPL_PT_2CLK (0x200)
-#define MCF_DSPI_DMCR_CRXF (0x400)
-#define MCF_DSPI_DMCR_CTXF (0x800)
-#define MCF_DSPI_DMCR_DRXF (0x1000)
-#define MCF_DSPI_DMCR_DTXF (0x2000)
-#define MCF_DSPI_DMCR_CSIS0 (0x10000)
-#define MCF_DSPI_DMCR_CSIS2 (0x40000)
-#define MCF_DSPI_DMCR_CSIS3 (0x80000)
-#define MCF_DSPI_DMCR_CSIS5 (0x200000)
-#define MCF_DSPI_DMCR_ROOE (0x1000000)
-#define MCF_DSPI_DMCR_PCSSE (0x2000000)
-#define MCF_DSPI_DMCR_MTFE (0x4000000)
-#define MCF_DSPI_DMCR_FRZ (0x8000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x3)<<0x1C)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DCTAR */
-#define MCF_DSPI_DCTAR_BR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DCTAR_DT(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DCTAR_ASC(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DCTAR_CSSCK(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DCTAR_PBR(x) (((x)&0x3)<<0x10)
-#define MCF_DSPI_DCTAR_PBR_1CLK (0)
-#define MCF_DSPI_DCTAR_PBR_3CLK (0x10000)
-#define MCF_DSPI_DCTAR_PBR_5CLK (0x20000)
-#define MCF_DSPI_DCTAR_PBR_7CLK (0x30000)
-#define MCF_DSPI_DCTAR_PDT(x) (((x)&0x3)<<0x12)
-#define MCF_DSPI_DCTAR_PDT_1CLK (0)
-#define MCF_DSPI_DCTAR_PDT_3CLK (0x40000)
-#define MCF_DSPI_DCTAR_PDT_5CLK (0x80000)
-#define MCF_DSPI_DCTAR_PDT_7CLK (0xC0000)
-#define MCF_DSPI_DCTAR_PASC(x) (((x)&0x3)<<0x14)
-#define MCF_DSPI_DCTAR_PASC_1CLK (0)
-#define MCF_DSPI_DCTAR_PASC_3CLK (0x100000)
-#define MCF_DSPI_DCTAR_PASC_5CLK (0x200000)
-#define MCF_DSPI_DCTAR_PASC_7CLK (0x300000)
-#define MCF_DSPI_DCTAR_PCSSCK(x) (((x)&0x3)<<0x16)
-#define MCF_DSPI_DCTAR_LSBFE (0x1000000)
-#define MCF_DSPI_DCTAR_CPHA (0x2000000)
-#define MCF_DSPI_DCTAR_CPOL (0x4000000)
-#define MCF_DSPI_DCTAR_TRSZ(x) (((x)&0xF)<<0x1B)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DSR_RFDF (0x20000)
-#define MCF_DSPI_DSR_RFOF (0x80000)
-#define MCF_DSPI_DSR_TFFF (0x2000000)
-#define MCF_DSPI_DSR_TFUF (0x8000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x10000)
-#define MCF_DSPI_DIRSR_RFDFE (0x20000)
-#define MCF_DSPI_DIRSR_RFOFE (0x80000)
-#define MCF_DSPI_DIRSR_TFFFS (0x1000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x2000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x8000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x10000)
-#define MCF_DSPI_DTFR_CS2 (0x40000)
-#define MCF_DSPI_DTFR_CS3 (0x80000)
-#define MCF_DSPI_DTFR_CS5 (0x200000)
-#define MCF_DSPI_DTFR_CTCNT (0x4000000)
-#define MCF_DSPI_DTFR_EOQ (0x8000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x7)<<0x1C)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDR */
-#define MCF_DSPI_DTFDR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFDR_TXCMD(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDR */
-#define MCF_DSPI_DRFDR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-
-#endif /* __MCF5475_DSPI_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_EPORT.h b/BaS_gcc/tos/pci_test/include/MCF5475_EPORT.h
deleted file mode 100644
index 6506196..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_EPORT.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_EPORT_H__
-#define __MCF5475_EPORT_H__
-
-
-/*********************************************************************
-*
-* Edge Port Module (EPORT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(volatile uint16_t*)(&_MBAR[0xF00]))
-#define MCF_EPORT_EPDDR (*(volatile uint8_t *)(&_MBAR[0xF04]))
-#define MCF_EPORT_EPIER (*(volatile uint8_t *)(&_MBAR[0xF05]))
-#define MCF_EPORT_EPDR (*(volatile uint8_t *)(&_MBAR[0xF08]))
-#define MCF_EPORT_EPPDR (*(volatile uint8_t *)(&_MBAR[0xF09]))
-#define MCF_EPORT_EPFR (*(volatile uint8_t *)(&_MBAR[0xF0C]))
-
-
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x3)<<0x2)
-#define MCF_EPORT_EPPAR_EPPA1_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA1_RISING (0x4)
-#define MCF_EPORT_EPPAR_EPPA1_FALLING (0x8)
-#define MCF_EPORT_EPPAR_EPPA1_BOTH (0xC)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x3)<<0x4)
-#define MCF_EPORT_EPPAR_EPPA2_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA2_RISING (0x10)
-#define MCF_EPORT_EPPAR_EPPA2_FALLING (0x20)
-#define MCF_EPORT_EPPAR_EPPA2_BOTH (0x30)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x3)<<0x6)
-#define MCF_EPORT_EPPAR_EPPA3_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA3_RISING (0x40)
-#define MCF_EPORT_EPPAR_EPPA3_FALLING (0x80)
-#define MCF_EPORT_EPPAR_EPPA3_BOTH (0xC0)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x3)<<0x8)
-#define MCF_EPORT_EPPAR_EPPA4_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA4_RISING (0x100)
-#define MCF_EPORT_EPPAR_EPPA4_FALLING (0x200)
-#define MCF_EPORT_EPPAR_EPPA4_BOTH (0x300)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x3)<<0xA)
-#define MCF_EPORT_EPPAR_EPPA5_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA5_RISING (0x400)
-#define MCF_EPORT_EPPAR_EPPA5_FALLING (0x800)
-#define MCF_EPORT_EPPAR_EPPA5_BOTH (0xC00)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x3)<<0xC)
-#define MCF_EPORT_EPPAR_EPPA6_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA6_RISING (0x1000)
-#define MCF_EPORT_EPPAR_EPPA6_FALLING (0x2000)
-#define MCF_EPORT_EPPAR_EPPA6_BOTH (0x3000)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x3)<<0xE)
-#define MCF_EPORT_EPPAR_EPPA7_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA7_RISING (0x4000)
-#define MCF_EPORT_EPPAR_EPPA7_FALLING (0x8000)
-#define MCF_EPORT_EPPAR_EPPA7_BOTH (0xC000)
-#define MCF_EPORT_EPPAR_LEVEL (0)
-#define MCF_EPORT_EPPAR_RISING (0x1)
-#define MCF_EPORT_EPPAR_FALLING (0x2)
-#define MCF_EPORT_EPPAR_BOTH (0x3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x2)
-#define MCF_EPORT_EPDDR_EPDD2 (0x4)
-#define MCF_EPORT_EPDDR_EPDD3 (0x8)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x2)
-#define MCF_EPORT_EPIER_EPIE2 (0x4)
-#define MCF_EPORT_EPIER_EPIE3 (0x8)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x2)
-#define MCF_EPORT_EPDR_EPD2 (0x4)
-#define MCF_EPORT_EPDR_EPD3 (0x8)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x2)
-#define MCF_EPORT_EPPDR_EPPD2 (0x4)
-#define MCF_EPORT_EPPDR_EPPD3 (0x8)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x2)
-#define MCF_EPORT_EPFR_EPF2 (0x4)
-#define MCF_EPORT_EPFR_EPF3 (0x8)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-
-#endif /* __MCF5475_EPORT_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_FBCS.h b/BaS_gcc/tos/pci_test/include/MCF5475_FBCS.h
deleted file mode 100644
index 37daf00..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_FBCS.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FBCS_H__
-#define __MCF5475_FBCS_H__
-
-
-/*********************************************************************
-*
-* FlexBus Chip Select Module (FBCS)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FBCS0_CSAR (*(volatile uint32_t*)(&_MBAR[0x500]))
-#define MCF_FBCS0_CSMR (*(volatile uint32_t*)(&_MBAR[0x504]))
-#define MCF_FBCS0_CSCR (*(volatile uint32_t*)(&_MBAR[0x508]))
-
-#define MCF_FBCS1_CSAR (*(volatile uint32_t*)(&_MBAR[0x50C]))
-#define MCF_FBCS1_CSMR (*(volatile uint32_t*)(&_MBAR[0x510]))
-#define MCF_FBCS1_CSCR (*(volatile uint32_t*)(&_MBAR[0x514]))
-
-#define MCF_FBCS2_CSAR (*(volatile uint32_t*)(&_MBAR[0x518]))
-#define MCF_FBCS2_CSMR (*(volatile uint32_t*)(&_MBAR[0x51C]))
-#define MCF_FBCS2_CSCR (*(volatile uint32_t*)(&_MBAR[0x520]))
-
-#define MCF_FBCS3_CSAR (*(volatile uint32_t*)(&_MBAR[0x524]))
-#define MCF_FBCS3_CSMR (*(volatile uint32_t*)(&_MBAR[0x528]))
-#define MCF_FBCS3_CSCR (*(volatile uint32_t*)(&_MBAR[0x52C]))
-
-#define MCF_FBCS4_CSAR (*(volatile uint32_t*)(&_MBAR[0x530]))
-#define MCF_FBCS4_CSMR (*(volatile uint32_t*)(&_MBAR[0x534]))
-#define MCF_FBCS4_CSCR (*(volatile uint32_t*)(&_MBAR[0x538]))
-
-#define MCF_FBCS5_CSAR (*(volatile uint32_t*)(&_MBAR[0x53C]))
-#define MCF_FBCS5_CSMR (*(volatile uint32_t*)(&_MBAR[0x540]))
-#define MCF_FBCS5_CSCR (*(volatile uint32_t*)(&_MBAR[0x544]))
-
-#define MCF_FBCS_CSAR(x) (*(volatile uint32_t*)(&_MBAR[0x500 + ((x)*0xC)]))
-#define MCF_FBCS_CSMR(x) (*(volatile uint32_t*)(&_MBAR[0x504 + ((x)*0xC)]))
-#define MCF_FBCS_CSCR(x) (*(volatile uint32_t*)(&_MBAR[0x508 + ((x)*0xC)]))
-
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x1)
-#define MCF_FBCS_CSMR_WP (0x100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0xFFFF)<<0x10)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0xFFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x7FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x3FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x1FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0xFF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x7F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x3F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x1F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0xF0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0xF0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x70000)
-#define MCF_FBCS_CSMR_BAM_256K (0x30000)
-#define MCF_FBCS_CSMR_BAM_128K (0x10000)
-#define MCF_FBCS_CSMR_BAM_64K (0)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x8)
-#define MCF_FBCS_CSCR_BSTR (0x10)
-#define MCF_FBCS_CSCR_BEM (0x20)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x3)<<0x6)
-#define MCF_FBCS_CSCR_PS_32 (0)
-#define MCF_FBCS_CSCR_PS_8 (0x40)
-#define MCF_FBCS_CSCR_PS_16 (0x80)
-#define MCF_FBCS_CSCR_AA (0x100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x3F)<<0xA)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x3)<<0x10)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x3)<<0x12)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x3)<<0x14)
-#define MCF_FBCS_CSCR_SWSEN (0x800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x3F)<<0x1A)
-
-
-#endif /* __MCF5475_FBCS_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_FEC.h b/BaS_gcc/tos/pci_test/include/MCF5475_FEC.h
deleted file mode 100644
index fdd9403..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_FEC.h
+++ /dev/null
@@ -1,680 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FEC_H__
-#define __MCF5475_FEC_H__
-
-
-/*********************************************************************
-*
-* Fast Ethernet Controller(FEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FEC0_EIR (*(volatile uint32_t*)(&_MBAR[0x9004]))
-#define MCF_FEC0_EIMR (*(volatile uint32_t*)(&_MBAR[0x9008]))
-#define MCF_FEC0_ECR (*(volatile uint32_t*)(&_MBAR[0x9024]))
-#define MCF_FEC0_MMFR (*(volatile uint32_t*)(&_MBAR[0x9040]))
-#define MCF_FEC0_MSCR (*(volatile uint32_t*)(&_MBAR[0x9044]))
-#define MCF_FEC0_MIBC (*(volatile uint32_t*)(&_MBAR[0x9064]))
-#define MCF_FEC0_RCR (*(volatile uint32_t*)(&_MBAR[0x9084]))
-#define MCF_FEC0_RHR (*(volatile uint32_t*)(&_MBAR[0x9088]))
-#define MCF_FEC0_TCR (*(volatile uint32_t*)(&_MBAR[0x90C4]))
-#define MCF_FEC0_PALR (*(volatile uint32_t*)(&_MBAR[0x90E4]))
-#define MCF_FEC0_PAHR (*(volatile uint32_t*)(&_MBAR[0x90E8]))
-#define MCF_FEC0_OPD (*(volatile uint32_t*)(&_MBAR[0x90EC]))
-#define MCF_FEC0_IAUR (*(volatile uint32_t*)(&_MBAR[0x9118]))
-#define MCF_FEC0_IALR (*(volatile uint32_t*)(&_MBAR[0x911C]))
-#define MCF_FEC0_GAUR (*(volatile uint32_t*)(&_MBAR[0x9120]))
-#define MCF_FEC0_GALR (*(volatile uint32_t*)(&_MBAR[0x9124]))
-#define MCF_FEC0_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9144]))
-#define MCF_FEC0_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9184]))
-#define MCF_FEC0_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9188]))
-#define MCF_FEC0_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x918C]))
-#define MCF_FEC0_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9190]))
-#define MCF_FEC0_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9194]))
-#define MCF_FEC0_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9198]))
-#define MCF_FEC0_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x919C]))
-#define MCF_FEC0_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x91A0]))
-#define MCF_FEC0_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x91A4]))
-#define MCF_FEC0_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x91A8]))
-#define MCF_FEC0_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x91AC]))
-#define MCF_FEC0_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x91B0]))
-#define MCF_FEC0_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x91B4]))
-#define MCF_FEC0_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x91B8]))
-#define MCF_FEC0_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x91BC]))
-#define MCF_FEC0_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x91C0]))
-#define MCF_FEC0_FECFRST (*(volatile uint32_t*)(&_MBAR[0x91C4]))
-#define MCF_FEC0_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x91C8]))
-#define MCF_FEC0_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9200]))
-#define MCF_FEC0_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9204]))
-#define MCF_FEC0_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9208]))
-#define MCF_FEC0_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x920C]))
-#define MCF_FEC0_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9210]))
-#define MCF_FEC0_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9214]))
-#define MCF_FEC0_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9218]))
-#define MCF_FEC0_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x921C]))
-#define MCF_FEC0_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9220]))
-#define MCF_FEC0_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9224]))
-#define MCF_FEC0_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9228]))
-#define MCF_FEC0_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x922C]))
-#define MCF_FEC0_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9230]))
-#define MCF_FEC0_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9234]))
-#define MCF_FEC0_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9238]))
-#define MCF_FEC0_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x923C]))
-#define MCF_FEC0_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9240]))
-#define MCF_FEC0_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9244]))
-#define MCF_FEC0_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9248]))
-#define MCF_FEC0_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x924C]))
-#define MCF_FEC0_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9250]))
-#define MCF_FEC0_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9254]))
-#define MCF_FEC0_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9258]))
-#define MCF_FEC0_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x925C]))
-#define MCF_FEC0_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9260]))
-#define MCF_FEC0_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9264]))
-#define MCF_FEC0_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9268]))
-#define MCF_FEC0_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x926C]))
-#define MCF_FEC0_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9270]))
-#define MCF_FEC0_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9274]))
-#define MCF_FEC0_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9280]))
-#define MCF_FEC0_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9284]))
-#define MCF_FEC0_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9288]))
-#define MCF_FEC0_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x928C]))
-#define MCF_FEC0_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9290]))
-#define MCF_FEC0_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9294]))
-#define MCF_FEC0_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9298]))
-#define MCF_FEC0_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x929C]))
-#define MCF_FEC0_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x92A0]))
-#define MCF_FEC0_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x92A4]))
-#define MCF_FEC0_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x92A8]))
-#define MCF_FEC0_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x92AC]))
-#define MCF_FEC0_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x92B0]))
-#define MCF_FEC0_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x92B4]))
-#define MCF_FEC0_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x92B8]))
-#define MCF_FEC0_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x92BC]))
-#define MCF_FEC0_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x92C0]))
-#define MCF_FEC0_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x92C4]))
-#define MCF_FEC0_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x92C8]))
-#define MCF_FEC0_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x92CC]))
-#define MCF_FEC0_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x92D0]))
-#define MCF_FEC0_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x92D4]))
-#define MCF_FEC0_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x92D8]))
-#define MCF_FEC0_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x92DC]))
-#define MCF_FEC0_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x92E0]))
-
-#define MCF_FEC1_EIR (*(volatile uint32_t*)(&_MBAR[0x9804]))
-#define MCF_FEC1_EIMR (*(volatile uint32_t*)(&_MBAR[0x9808]))
-#define MCF_FEC1_ECR (*(volatile uint32_t*)(&_MBAR[0x9824]))
-#define MCF_FEC1_MMFR (*(volatile uint32_t*)(&_MBAR[0x9840]))
-#define MCF_FEC1_MSCR (*(volatile uint32_t*)(&_MBAR[0x9844]))
-#define MCF_FEC1_MIBC (*(volatile uint32_t*)(&_MBAR[0x9864]))
-#define MCF_FEC1_RCR (*(volatile uint32_t*)(&_MBAR[0x9884]))
-#define MCF_FEC1_RHR (*(volatile uint32_t*)(&_MBAR[0x9888]))
-#define MCF_FEC1_TCR (*(volatile uint32_t*)(&_MBAR[0x98C4]))
-#define MCF_FEC1_PALR (*(volatile uint32_t*)(&_MBAR[0x98E4]))
-#define MCF_FEC1_PAHR (*(volatile uint32_t*)(&_MBAR[0x98E8]))
-#define MCF_FEC1_OPD (*(volatile uint32_t*)(&_MBAR[0x98EC]))
-#define MCF_FEC1_IAUR (*(volatile uint32_t*)(&_MBAR[0x9918]))
-#define MCF_FEC1_IALR (*(volatile uint32_t*)(&_MBAR[0x991C]))
-#define MCF_FEC1_GAUR (*(volatile uint32_t*)(&_MBAR[0x9920]))
-#define MCF_FEC1_GALR (*(volatile uint32_t*)(&_MBAR[0x9924]))
-#define MCF_FEC1_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9944]))
-#define MCF_FEC1_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9984]))
-#define MCF_FEC1_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9988]))
-#define MCF_FEC1_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x998C]))
-#define MCF_FEC1_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9990]))
-#define MCF_FEC1_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9994]))
-#define MCF_FEC1_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9998]))
-#define MCF_FEC1_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x999C]))
-#define MCF_FEC1_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x99A0]))
-#define MCF_FEC1_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x99A4]))
-#define MCF_FEC1_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x99A8]))
-#define MCF_FEC1_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x99AC]))
-#define MCF_FEC1_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x99B0]))
-#define MCF_FEC1_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x99B4]))
-#define MCF_FEC1_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x99B8]))
-#define MCF_FEC1_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x99BC]))
-#define MCF_FEC1_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x99C0]))
-#define MCF_FEC1_FECFRST (*(volatile uint32_t*)(&_MBAR[0x99C4]))
-#define MCF_FEC1_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x99C8]))
-#define MCF_FEC1_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A00]))
-#define MCF_FEC1_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A04]))
-#define MCF_FEC1_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A08]))
-#define MCF_FEC1_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A0C]))
-#define MCF_FEC1_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A10]))
-#define MCF_FEC1_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A14]))
-#define MCF_FEC1_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A18]))
-#define MCF_FEC1_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A1C]))
-#define MCF_FEC1_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9A20]))
-#define MCF_FEC1_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9A24]))
-#define MCF_FEC1_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9A28]))
-#define MCF_FEC1_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9A2C]))
-#define MCF_FEC1_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9A30]))
-#define MCF_FEC1_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9A34]))
-#define MCF_FEC1_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9A38]))
-#define MCF_FEC1_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9A3C]))
-#define MCF_FEC1_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9A40]))
-#define MCF_FEC1_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9A44]))
-#define MCF_FEC1_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A48]))
-#define MCF_FEC1_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9A4C]))
-#define MCF_FEC1_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9A50]))
-#define MCF_FEC1_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9A54]))
-#define MCF_FEC1_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9A58]))
-#define MCF_FEC1_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x9A5C]))
-#define MCF_FEC1_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9A60]))
-#define MCF_FEC1_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9A64]))
-#define MCF_FEC1_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9A68]))
-#define MCF_FEC1_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x9A6C]))
-#define MCF_FEC1_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9A70]))
-#define MCF_FEC1_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9A74]))
-#define MCF_FEC1_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9A80]))
-#define MCF_FEC1_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A84]))
-#define MCF_FEC1_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A88]))
-#define MCF_FEC1_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A8C]))
-#define MCF_FEC1_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A90]))
-#define MCF_FEC1_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A94]))
-#define MCF_FEC1_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A98]))
-#define MCF_FEC1_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A9C]))
-#define MCF_FEC1_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x9AA0]))
-#define MCF_FEC1_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x9AA4]))
-#define MCF_FEC1_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x9AA8]))
-#define MCF_FEC1_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9AAC]))
-#define MCF_FEC1_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9AB0]))
-#define MCF_FEC1_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9AB4]))
-#define MCF_FEC1_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9AB8]))
-#define MCF_FEC1_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9ABC]))
-#define MCF_FEC1_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9AC0]))
-#define MCF_FEC1_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9AC4]))
-#define MCF_FEC1_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9AC8]))
-#define MCF_FEC1_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9ACC]))
-#define MCF_FEC1_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x9AD0]))
-#define MCF_FEC1_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9AD4]))
-#define MCF_FEC1_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x9AD8]))
-#define MCF_FEC1_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9ADC]))
-#define MCF_FEC1_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9AE0]))
-
-#define MCF_FEC_EIR(x) (*(volatile uint32_t*)(&_MBAR[0x9004 + ((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(volatile uint32_t*)(&_MBAR[0x9008 + ((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(volatile uint32_t*)(&_MBAR[0x9024 + ((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(volatile uint32_t*)(&_MBAR[0x9040 + ((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(volatile uint32_t*)(&_MBAR[0x9044 + ((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(volatile uint32_t*)(&_MBAR[0x9064 + ((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(volatile uint32_t*)(&_MBAR[0x9084 + ((x)*0x800)]))
-#define MCF_FEC_RHR(x) (*(volatile uint32_t*)(&_MBAR[0x9088 + ((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(volatile uint32_t*)(&_MBAR[0x90C4 + ((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(volatile uint32_t*)(&_MBAR[0x90E4 + ((x)*0x800)]))
-#define MCF_FEC_PAHR(x) (*(volatile uint32_t*)(&_MBAR[0x90E8 + ((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(volatile uint32_t*)(&_MBAR[0x90EC + ((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9118 + ((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(volatile uint32_t*)(&_MBAR[0x911C + ((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9120 + ((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(volatile uint32_t*)(&_MBAR[0x9124 + ((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(volatile uint32_t*)(&_MBAR[0x9144 + ((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x9184 + ((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(volatile uint32_t*)(&_MBAR[0x9188 + ((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x918C + ((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x9190 + ((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x9194 + ((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(volatile uint32_t*)(&_MBAR[0x9198 + ((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(volatile uint32_t*)(&_MBAR[0x919C + ((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91A0 + ((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x91A4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(volatile uint32_t*)(&_MBAR[0x91A8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x91AC + ((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B0 + ((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(volatile uint32_t*)(&_MBAR[0x91B8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(volatile uint32_t*)(&_MBAR[0x91BC + ((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91C0 + ((x)*0x800)]))
-#define MCF_FEC_FECFRST(x) (*(volatile uint32_t*)(&_MBAR[0x91C4 + ((x)*0x800)]))
-#define MCF_FEC_FECCTCWR(x) (*(volatile uint32_t*)(&_MBAR[0x91C8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9200 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9204 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9208 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x920C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9210 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9214 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9218 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x921C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x9220 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(volatile uint32_t*)(&_MBAR[0x9224 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(volatile uint32_t*)(&_MBAR[0x9228 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x922C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x9230 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x9234 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x9238 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x923C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x9240 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x9244 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9248 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x924C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(volatile uint32_t*)(&_MBAR[0x9250 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9254 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(volatile uint32_t*)(&_MBAR[0x9258 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(volatile uint32_t*)(&_MBAR[0x925C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9260 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x9264 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(volatile uint32_t*)(&_MBAR[0x9268 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(volatile uint32_t*)(&_MBAR[0x926C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x9270 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x9274 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9280 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9284 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9288 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x928C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9290 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9294 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9298 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x929C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x92A0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(volatile uint32_t*)(&_MBAR[0x92A4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(volatile uint32_t*)(&_MBAR[0x92A8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x92AC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x92B0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x92B4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x92B8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x92BC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x92C0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x92C4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x92C8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92CC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(volatile uint32_t*)(&_MBAR[0x92D0 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x92D4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x92D8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x92DC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92E0 + ((x)*0x800)]))
-
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x20000)
-#define MCF_FEC_EIR_XFERR (0x40000)
-#define MCF_FEC_EIR_XFUN (0x80000)
-#define MCF_FEC_EIR_RL (0x100000)
-#define MCF_FEC_EIR_LC (0x200000)
-#define MCF_FEC_EIR_MII (0x800000)
-#define MCF_FEC_EIR_TXF (0x8000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x20000)
-#define MCF_FEC_EIMR_XFERR (0x40000)
-#define MCF_FEC_EIMR_XFUN (0x80000)
-#define MCF_FEC_EIMR_RL (0x100000)
-#define MCF_FEC_EIMR_LC (0x200000)
-#define MCF_FEC_EIMR_MII (0x800000)
-#define MCF_FEC_EIMR_TXF (0x8000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x1)
-#define MCF_FEC_ECR_ETHER_EN (0x2)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x3)<<0x10)
-#define MCF_FEC_MMFR_TA_10 (0x20000)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x1F)<<0x12)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x1F)<<0x17)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x3)<<0x1C)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x3)<<0x1E)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x3F)<<0x1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x80)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<0x1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x1)
-#define MCF_FEC_RCR_DRT (0x2)
-#define MCF_FEC_RCR_MII_MODE (0x4)
-#define MCF_FEC_RCR_PROM (0x8)
-#define MCF_FEC_RCR_BC_REJ (0x10)
-#define MCF_FEC_RCR_FCE (0x20)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x7FF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_RHR */
-#define MCF_FEC_RHR_HASH(x) (((x)&0x3F)<<0x18)
-#define MCF_FEC_RHR_MULTCAST (0x40000000)
-#define MCF_FEC_RHR_FCE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x1)
-#define MCF_FEC_TCR_HBC (0x2)
-#define MCF_FEC_TCR_FDEN (0x4)
-#define MCF_FEC_TCR_TFC_PAUSE (0x8)
-#define MCF_FEC_TCR_RFC_PAUSE (0x10)
-
-/* Bit definitions and macros for MCF_FEC_PALR */
-#define MCF_FEC_PALR_PADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_PAHR */
-#define MCF_FEC_PAHR_TYPE(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_PAHR_PADDR2(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_PAUSE_DUR(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_IAUR */
-#define MCF_FEC_IAUR_IADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IALR */
-#define MCF_FEC_IALR_IADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GAUR */
-#define MCF_FEC_GAUR_GADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GALR */
-#define MCF_FEC_GALR_GADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0xF)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x1)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x2)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x3)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x4)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x5)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x6)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x7)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x8)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x9)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0xA)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0xB)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0xC)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0xD)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0xE)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0xF)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x10000)
-#define MCF_FEC_FECRFSR_ALARM (0x20000)
-#define MCF_FEC_FECRFSR_FU (0x40000)
-#define MCF_FEC_FECRFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECRFSR_OF (0x100000)
-#define MCF_FEC_FECRFSR_UF (0x200000)
-#define MCF_FEC_FECRFSR_RXW (0x400000)
-#define MCF_FEC_FECRFSR_FAE (0x800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x80000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_FEC_FECRFCR_FRMEN (0x8000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x10000)
-#define MCF_FEC_FECTFSR_ALARM (0x20000)
-#define MCF_FEC_FECTFSR_FU (0x40000)
-#define MCF_FEC_FECTFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECTFSR_OF (0x100000)
-#define MCF_FEC_FECTFSR_UF (0x200000)
-#define MCF_FEC_FECTFSR_FAE (0x800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0xFFFF)<<0|0x200000)
-#define MCF_FEC_FECTFCR_TXW_MASK (0x240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0xA00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x7)<<0x18|0x200000)
-#define MCF_FEC_FECTFCR_FRMEN (0x8200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECFRST */
-#define MCF_FEC_FECFRST_RST_CTL (0x1000000)
-#define MCF_FEC_FECFRST_SW_RST (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_FECCTCWR */
-#define MCF_FEC_FECCTCWR_TFCW (0x1000000)
-#define MCF_FEC_FECCTCWR_CRC (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_DROP */
-#define MCF_FEC_RMON_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_PACKETS */
-#define MCF_FEC_RMON_T_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_BC_PKT */
-#define MCF_FEC_RMON_T_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_MC_PKT */
-#define MCF_FEC_RMON_T_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_CRC_ALIGN */
-#define MCF_FEC_RMON_T_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_UNDERSIZE */
-#define MCF_FEC_RMON_T_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OVERSIZE */
-#define MCF_FEC_RMON_T_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_FRAG */
-#define MCF_FEC_RMON_T_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_JAB */
-#define MCF_FEC_RMON_T_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_COL */
-#define MCF_FEC_RMON_T_COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P64 */
-#define MCF_FEC_RMON_T_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P65TO127 */
-#define MCF_FEC_RMON_T_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P128TO255 */
-#define MCF_FEC_RMON_T_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P256TO511 */
-#define MCF_FEC_RMON_T_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P512TO1023 */
-#define MCF_FEC_RMON_T_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P1024TO2047 */
-#define MCF_FEC_RMON_T_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P_GTE2048 */
-#define MCF_FEC_RMON_T_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OCTETS */
-#define MCF_FEC_RMON_T_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DROP */
-#define MCF_FEC_IEEE_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FRAME_OK */
-#define MCF_FEC_IEEE_T_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_1COL */
-#define MCF_FEC_IEEE_T_1COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MCOL */
-#define MCF_FEC_IEEE_T_MCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DEF */
-#define MCF_FEC_IEEE_T_DEF_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_LCOL */
-#define MCF_FEC_IEEE_T_LCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_EXCOL */
-#define MCF_FEC_IEEE_T_EXCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MACERR */
-#define MCF_FEC_IEEE_T_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_CSERR */
-#define MCF_FEC_IEEE_T_CSERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_SQE */
-#define MCF_FEC_IEEE_T_SQE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FDXFC */
-#define MCF_FEC_IEEE_T_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_OCTETS_OK */
-#define MCF_FEC_IEEE_T_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_DROP */
-#define MCF_FEC_RMON_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_PACKETS */
-#define MCF_FEC_RMON_R_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_BC_PKT */
-#define MCF_FEC_RMON_R_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_MC_PKT */
-#define MCF_FEC_RMON_R_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_CRC_ALIGN */
-#define MCF_FEC_RMON_R_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_UNDERSIZE */
-#define MCF_FEC_RMON_R_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OVERSIZE */
-#define MCF_FEC_RMON_R_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_FRAG */
-#define MCF_FEC_RMON_R_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_JAB */
-#define MCF_FEC_RMON_R_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_RESVD_0 */
-#define MCF_FEC_RMON_R_RESVD_0_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P64 */
-#define MCF_FEC_RMON_R_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P65TO127 */
-#define MCF_FEC_RMON_R_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P128TO255 */
-#define MCF_FEC_RMON_R_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P256TO511 */
-#define MCF_FEC_RMON_R_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P512TO1023 */
-#define MCF_FEC_RMON_R_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P1024TO2047 */
-#define MCF_FEC_RMON_R_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P_GTE2048 */
-#define MCF_FEC_RMON_R_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OCTETS */
-#define MCF_FEC_RMON_R_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_DROP */
-#define MCF_FEC_IEEE_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FRAME_OK */
-#define MCF_FEC_IEEE_R_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_CRC */
-#define MCF_FEC_IEEE_R_CRC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_ALIGN */
-#define MCF_FEC_IEEE_R_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_MACERR */
-#define MCF_FEC_IEEE_R_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FDXFC */
-#define MCF_FEC_IEEE_R_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_OCTETS_OK */
-#define MCF_FEC_IEEE_R_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-
-#endif /* __MCF5475_FEC_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_GPIO.h b/BaS_gcc/tos/pci_test/include/MCF5475_GPIO.h
deleted file mode 100644
index 5dd2583..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_GPIO.h
+++ /dev/null
@@ -1,543 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPIO_H__
-#define __MCF5475_GPIO_H__
-
-
-/*********************************************************************
-*
-* General Purpose I/O (GPIO)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA00]))
-#define MCF_GPIO_PDDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA10]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA20]))
-#define MCF_GPIO_PCLRR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA30]))
-
-#define MCF_GPIO_PODR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA01]))
-#define MCF_GPIO_PDDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA11]))
-#define MCF_GPIO_PPDSDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA21]))
-#define MCF_GPIO_PCLRR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA31]))
-
-#define MCF_GPIO_PODR_DMA (*(volatile uint8_t *)(&_MBAR[0xA02]))
-#define MCF_GPIO_PDDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA12]))
-#define MCF_GPIO_PPDSDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA22]))
-#define MCF_GPIO_PCLRR_DMA (*(volatile uint8_t *)(&_MBAR[0xA32]))
-
-#define MCF_GPIO_PODR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA04]))
-#define MCF_GPIO_PDDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA14]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA24]))
-#define MCF_GPIO_PCLRR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA34]))
-
-#define MCF_GPIO_PODR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA05]))
-#define MCF_GPIO_PDDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA15]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA25]))
-#define MCF_GPIO_PCLRR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA35]))
-
-#define MCF_GPIO_PODR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA06]))
-#define MCF_GPIO_PDDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA16]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA26]))
-#define MCF_GPIO_PCLRR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA36]))
-
-#define MCF_GPIO_PODR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA07]))
-#define MCF_GPIO_PDDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA17]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA27]))
-#define MCF_GPIO_PCLRR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA37]))
-
-#define MCF_GPIO_PODR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA08]))
-#define MCF_GPIO_PDDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA18]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA28]))
-#define MCF_GPIO_PCLRR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA38]))
-
-#define MCF_GPIO_PODR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA09]))
-#define MCF_GPIO_PDDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA19]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA29]))
-#define MCF_GPIO_PCLRR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA39]))
-
-#define MCF_GPIO_PODR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA0A]))
-#define MCF_GPIO_PDDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA1A]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA2A]))
-#define MCF_GPIO_PCLRR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA3A]))
-
-#define MCF_GPIO2_PODR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA0C]))
-#define MCF_GPIO2_PDDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA1C]))
-#define MCF_GPIO2_PPDSDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define MCF_GPIO2_PCLRR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA3C]))
-
-#define MCF_GPIO0_PODR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA0D]))
-#define MCF_GPIO0_PDDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA1D]))
-#define MCF_GPIO0_PPDSDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA2D]))
-#define MCF_GPIO0_PCLRR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA3D]))
-
-#define MCF_GPIO_PODR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA0E]))
-#define MCF_GPIO_PDDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA1E]))
-#define MCF_GPIO_PPDSDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA2E]))
-#define MCF_GPIO_PCLRR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA3E]))
-
-
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x1)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x2)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x4)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x8)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x1)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x2)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x4)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x8)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x1)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x1)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x2)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x4)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x8)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x2)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x4)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x8)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x2)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x4)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x8)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x2)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x4)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x8)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x1)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x2)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x4)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x1)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x2)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x4)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x1)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x2)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x4)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x1)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x2)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x4)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x1)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x2)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x4)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x8)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x1)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x2)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x4)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x8)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x1)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x2)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x4)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x8)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x1)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x2)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x4)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x8)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x1)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x2)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x4)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x8)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x1)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x2)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x4)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x8)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x1)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x2)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x4)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x8)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x1)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x2)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x4)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x8)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x1)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x2)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x4)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x1)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x2)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x4)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x1)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x2)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x4)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x1)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x2)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C2 (0x4)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x1)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x2)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x4)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x8)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x1)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x2)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x4)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x8)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x1)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x2)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x4)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x8)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x1)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x2)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x4)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x8)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC */
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC */
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC */
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC */
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC */
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC */
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC */
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC */
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x1)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x2)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x4)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x8)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x1)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x2)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x4)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x8)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x1)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x2)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x4)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x8)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x1)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x2)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x4)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x8)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-
-#endif /* __MCF5475_GPIO_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_GPT.h b/BaS_gcc/tos/pci_test/include/MCF5475_GPT.h
deleted file mode 100644
index f9fbc98..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_GPT.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPT_H__
-#define __MCF5475_GPT_H__
-
-
-/*********************************************************************
-*
-* General Purpose Timers (GPT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPT0_GMS (*(volatile uint32_t*)(&_MBAR[0x800]))
-#define MCF_GPT0_GCIR (*(volatile uint32_t*)(&_MBAR[0x804]))
-#define MCF_GPT0_GPWM (*(volatile uint32_t*)(&_MBAR[0x808]))
-#define MCF_GPT0_GSR (*(volatile uint32_t*)(&_MBAR[0x80C]))
-
-#define MCF_GPT1_GMS (*(volatile uint32_t*)(&_MBAR[0x810]))
-#define MCF_GPT1_GCIR (*(volatile uint32_t*)(&_MBAR[0x814]))
-#define MCF_GPT1_GPWM (*(volatile uint32_t*)(&_MBAR[0x818]))
-#define MCF_GPT1_GSR (*(volatile uint32_t*)(&_MBAR[0x81C]))
-
-#define MCF_GPT2_GMS (*(volatile uint32_t*)(&_MBAR[0x820]))
-#define MCF_GPT2_GCIR (*(volatile uint32_t*)(&_MBAR[0x824]))
-#define MCF_GPT2_GPWM (*(volatile uint32_t*)(&_MBAR[0x828]))
-#define MCF_GPT2_GSR (*(volatile uint32_t*)(&_MBAR[0x82C]))
-
-#define MCF_GPT3_GMS (*(volatile uint32_t*)(&_MBAR[0x830]))
-#define MCF_GPT3_GCIR (*(volatile uint32_t*)(&_MBAR[0x834]))
-#define MCF_GPT3_GPWM (*(volatile uint32_t*)(&_MBAR[0x838]))
-#define MCF_GPT3_GSR (*(volatile uint32_t*)(&_MBAR[0x83C]))
-
-#define MCF_GPT_GMS(x) (*(volatile uint32_t*)(&_MBAR[0x800 + ((x)*0x10)]))
-#define MCF_GPT_GCIR(x) (*(volatile uint32_t*)(&_MBAR[0x804 + ((x)*0x10)]))
-#define MCF_GPT_GPWM(x) (*(volatile uint32_t*)(&_MBAR[0x808 + ((x)*0x10)]))
-#define MCF_GPT_GSR(x) (*(volatile uint32_t*)(&_MBAR[0x80C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x7)<<0)
-#define MCF_GPT_GMS_TMS_DISABLE (0)
-#define MCF_GPT_GMS_TMS_INCAPT (0x1)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x2)
-#define MCF_GPT_GMS_TMS_PWM (0x3)
-#define MCF_GPT_GMS_TMS_GPIO (0x4)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x3)<<0x4)
-#define MCF_GPT_GMS_GPIO_INPUT (0)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x20)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x30)
-#define MCF_GPT_GMS_IEN (0x100)
-#define MCF_GPT_GMS_OD (0x200)
-#define MCF_GPT_GMS_SC (0x400)
-#define MCF_GPT_GMS_CE (0x1000)
-#define MCF_GPT_GMS_WDEN (0x8000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x3)<<0x10)
-#define MCF_GPT_GMS_ICT_ANY (0)
-#define MCF_GPT_GMS_ICT_RISE (0x10000)
-#define MCF_GPT_GMS_ICT_FALL (0x20000)
-#define MCF_GPT_GMS_ICT_PULSE (0x30000)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x3)<<0x14)
-#define MCF_GPT_GMS_OCT_FRCLOW (0)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x300000)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0xFFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x1)
-#define MCF_GPT_GPWM_PWMOP (0x100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x1)
-#define MCF_GPT_GSR_COMP (0x2)
-#define MCF_GPT_GSR_PWMP (0x4)
-#define MCF_GPT_GSR_TEXP (0x8)
-#define MCF_GPT_GSR_PIN (0x100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x7)<<0xC)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_GPT_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_I2C.h b/BaS_gcc/tos/pci_test/include/MCF5475_I2C.h
deleted file mode 100644
index 1e8a85b..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_I2C.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_I2C_H__
-#define __MCF5475_I2C_H__
-
-
-/*********************************************************************
-*
-* I2C Module (I2C)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_I2C_I2ADR (*(volatile uint8_t *)(&_MBAR[0x8F00]))
-#define MCF_I2C_I2FDR (*(volatile uint8_t *)(&_MBAR[0x8F04]))
-#define MCF_I2C_I2CR (*(volatile uint8_t *)(&_MBAR[0x8F08]))
-#define MCF_I2C_I2SR (*(volatile uint8_t *)(&_MBAR[0x8F0C]))
-#define MCF_I2C_I2DR (*(volatile uint8_t *)(&_MBAR[0x8F10]))
-#define MCF_I2C_I2ICR (*(volatile uint8_t *)(&_MBAR[0x8F20]))
-
-
-
-/* Bit definitions and macros for MCF_I2C_I2ADR */
-#define MCF_I2C_I2ADR_ADR(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x4)
-#define MCF_I2C_I2CR_TXAK (0x8)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x1)
-#define MCF_I2C_I2SR_IIF (0x2)
-#define MCF_I2C_I2SR_SRW (0x4)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2DR */
-#define MCF_I2C_I2DR_DATA(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x1)
-#define MCF_I2C_I2ICR_RE (0x2)
-#define MCF_I2C_I2ICR_TE (0x4)
-#define MCF_I2C_I2ICR_BNBE (0x8)
-
-
-#endif /* __MCF5475_I2C_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_INTC.h b/BaS_gcc/tos/pci_test/include/MCF5475_INTC.h
deleted file mode 100644
index 61265ed..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_INTC.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_INTC_H__
-#define __MCF5475_INTC_H__
-
-
-/*********************************************************************
-*
-* Interrupt Controller (INTC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(volatile uint32_t*)(&_MBAR[0x700]))
-#define MCF_INTC_IPRL (*(volatile uint32_t*)(&_MBAR[0x704]))
-#define MCF_INTC_IMRH (*(volatile uint32_t*)(&_MBAR[0x708]))
-#define MCF_INTC_IMRL (*(volatile uint32_t*)(&_MBAR[0x70C]))
-#define MCF_INTC_INTFRCH (*(volatile uint32_t*)(&_MBAR[0x710]))
-#define MCF_INTC_INTFRCL (*(volatile uint32_t*)(&_MBAR[0x714]))
-#define MCF_INTC_IRLR (*(volatile uint8_t *)(&_MBAR[0x718]))
-#define MCF_INTC_IACKLPR (*(volatile uint8_t *)(&_MBAR[0x719]))
-#define MCF_INTC_ICR01 (*(volatile uint8_t *)(&_MBAR[0x741]))
-#define MCF_INTC_ICR02 (*(volatile uint8_t *)(&_MBAR[0x742]))
-#define MCF_INTC_ICR03 (*(volatile uint8_t *)(&_MBAR[0x743]))
-#define MCF_INTC_ICR04 (*(volatile uint8_t *)(&_MBAR[0x744]))
-#define MCF_INTC_ICR05 (*(volatile uint8_t *)(&_MBAR[0x745]))
-#define MCF_INTC_ICR06 (*(volatile uint8_t *)(&_MBAR[0x746]))
-#define MCF_INTC_ICR07 (*(volatile uint8_t *)(&_MBAR[0x747]))
-#define MCF_INTC_ICR08 (*(volatile uint8_t *)(&_MBAR[0x748]))
-#define MCF_INTC_ICR09 (*(volatile uint8_t *)(&_MBAR[0x749]))
-#define MCF_INTC_ICR10 (*(volatile uint8_t *)(&_MBAR[0x74A]))
-#define MCF_INTC_ICR11 (*(volatile uint8_t *)(&_MBAR[0x74B]))
-#define MCF_INTC_ICR12 (*(volatile uint8_t *)(&_MBAR[0x74C]))
-#define MCF_INTC_ICR13 (*(volatile uint8_t *)(&_MBAR[0x74D]))
-#define MCF_INTC_ICR14 (*(volatile uint8_t *)(&_MBAR[0x74E]))
-#define MCF_INTC_ICR15 (*(volatile uint8_t *)(&_MBAR[0x74F]))
-#define MCF_INTC_ICR16 (*(volatile uint8_t *)(&_MBAR[0x750]))
-#define MCF_INTC_ICR17 (*(volatile uint8_t *)(&_MBAR[0x751]))
-#define MCF_INTC_ICR18 (*(volatile uint8_t *)(&_MBAR[0x752]))
-#define MCF_INTC_ICR19 (*(volatile uint8_t *)(&_MBAR[0x753]))
-#define MCF_INTC_ICR20 (*(volatile uint8_t *)(&_MBAR[0x754]))
-#define MCF_INTC_ICR21 (*(volatile uint8_t *)(&_MBAR[0x755]))
-#define MCF_INTC_ICR22 (*(volatile uint8_t *)(&_MBAR[0x756]))
-#define MCF_INTC_ICR23 (*(volatile uint8_t *)(&_MBAR[0x757]))
-#define MCF_INTC_ICR24 (*(volatile uint8_t *)(&_MBAR[0x758]))
-#define MCF_INTC_ICR25 (*(volatile uint8_t *)(&_MBAR[0x759]))
-#define MCF_INTC_ICR26 (*(volatile uint8_t *)(&_MBAR[0x75A]))
-#define MCF_INTC_ICR27 (*(volatile uint8_t *)(&_MBAR[0x75B]))
-#define MCF_INTC_ICR28 (*(volatile uint8_t *)(&_MBAR[0x75C]))
-#define MCF_INTC_ICR29 (*(volatile uint8_t *)(&_MBAR[0x75D]))
-#define MCF_INTC_ICR30 (*(volatile uint8_t *)(&_MBAR[0x75E]))
-#define MCF_INTC_ICR31 (*(volatile uint8_t *)(&_MBAR[0x75F]))
-#define MCF_INTC_ICR32 (*(volatile uint8_t *)(&_MBAR[0x760]))
-#define MCF_INTC_ICR33 (*(volatile uint8_t *)(&_MBAR[0x761]))
-#define MCF_INTC_ICR34 (*(volatile uint8_t *)(&_MBAR[0x762]))
-#define MCF_INTC_ICR35 (*(volatile uint8_t *)(&_MBAR[0x763]))
-#define MCF_INTC_ICR36 (*(volatile uint8_t *)(&_MBAR[0x764]))
-#define MCF_INTC_ICR37 (*(volatile uint8_t *)(&_MBAR[0x765]))
-#define MCF_INTC_ICR38 (*(volatile uint8_t *)(&_MBAR[0x766]))
-#define MCF_INTC_ICR39 (*(volatile uint8_t *)(&_MBAR[0x767]))
-#define MCF_INTC_ICR40 (*(volatile uint8_t *)(&_MBAR[0x768]))
-#define MCF_INTC_ICR41 (*(volatile uint8_t *)(&_MBAR[0x769]))
-#define MCF_INTC_ICR42 (*(volatile uint8_t *)(&_MBAR[0x76A]))
-#define MCF_INTC_ICR43 (*(volatile uint8_t *)(&_MBAR[0x76B]))
-#define MCF_INTC_ICR44 (*(volatile uint8_t *)(&_MBAR[0x76C]))
-#define MCF_INTC_ICR45 (*(volatile uint8_t *)(&_MBAR[0x76D]))
-#define MCF_INTC_ICR46 (*(volatile uint8_t *)(&_MBAR[0x76E]))
-#define MCF_INTC_ICR47 (*(volatile uint8_t *)(&_MBAR[0x76F]))
-#define MCF_INTC_ICR48 (*(volatile uint8_t *)(&_MBAR[0x770]))
-#define MCF_INTC_ICR49 (*(volatile uint8_t *)(&_MBAR[0x771]))
-#define MCF_INTC_ICR50 (*(volatile uint8_t *)(&_MBAR[0x772]))
-#define MCF_INTC_ICR51 (*(volatile uint8_t *)(&_MBAR[0x773]))
-#define MCF_INTC_ICR52 (*(volatile uint8_t *)(&_MBAR[0x774]))
-#define MCF_INTC_ICR53 (*(volatile uint8_t *)(&_MBAR[0x775]))
-#define MCF_INTC_ICR54 (*(volatile uint8_t *)(&_MBAR[0x776]))
-#define MCF_INTC_ICR55 (*(volatile uint8_t *)(&_MBAR[0x777]))
-#define MCF_INTC_ICR56 (*(volatile uint8_t *)(&_MBAR[0x778]))
-#define MCF_INTC_ICR57 (*(volatile uint8_t *)(&_MBAR[0x779]))
-#define MCF_INTC_ICR58 (*(volatile uint8_t *)(&_MBAR[0x77A]))
-#define MCF_INTC_ICR59 (*(volatile uint8_t *)(&_MBAR[0x77B]))
-#define MCF_INTC_ICR60 (*(volatile uint8_t *)(&_MBAR[0x77C]))
-#define MCF_INTC_ICR61 (*(volatile uint8_t *)(&_MBAR[0x77D]))
-#define MCF_INTC_ICR62 (*(volatile uint8_t *)(&_MBAR[0x77E]))
-#define MCF_INTC_ICR63 (*(volatile uint8_t *)(&_MBAR[0x77F]))
-#define MCF_INTC_SWIACK (*(volatile uint8_t *)(&_MBAR[0x7E0]))
-#define MCF_INTC_L1IACK (*(volatile uint8_t *)(&_MBAR[0x7E4]))
-#define MCF_INTC_L2IACK (*(volatile uint8_t *)(&_MBAR[0x7E8]))
-#define MCF_INTC_L3IACK (*(volatile uint8_t *)(&_MBAR[0x7EC]))
-#define MCF_INTC_L4IACK (*(volatile uint8_t *)(&_MBAR[0x7F0]))
-#define MCF_INTC_L5IACK (*(volatile uint8_t *)(&_MBAR[0x7F4]))
-#define MCF_INTC_L6IACK (*(volatile uint8_t *)(&_MBAR[0x7F8]))
-#define MCF_INTC_L7IACK (*(volatile uint8_t *)(&_MBAR[0x7FC]))
-#define MCF_INTC_ICR(x) (*(volatile uint8_t *)(&_MBAR[0x741 + ((x-1)*0x1)]))
-#define MCF_INTC_LIACK(x) (*(volatile uint8_t *)(&_MBAR[0x7E4 + ((x-1)*0x4)]))
-
-
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x1)
-#define MCF_INTC_IPRH_INT33 (0x2)
-#define MCF_INTC_IPRH_INT34 (0x4)
-#define MCF_INTC_IPRH_INT35 (0x8)
-#define MCF_INTC_IPRH_INT36 (0x10)
-#define MCF_INTC_IPRH_INT37 (0x20)
-#define MCF_INTC_IPRH_INT38 (0x40)
-#define MCF_INTC_IPRH_INT39 (0x80)
-#define MCF_INTC_IPRH_INT40 (0x100)
-#define MCF_INTC_IPRH_INT41 (0x200)
-#define MCF_INTC_IPRH_INT42 (0x400)
-#define MCF_INTC_IPRH_INT43 (0x800)
-#define MCF_INTC_IPRH_INT44 (0x1000)
-#define MCF_INTC_IPRH_INT45 (0x2000)
-#define MCF_INTC_IPRH_INT46 (0x4000)
-#define MCF_INTC_IPRH_INT47 (0x8000)
-#define MCF_INTC_IPRH_INT48 (0x10000)
-#define MCF_INTC_IPRH_INT49 (0x20000)
-#define MCF_INTC_IPRH_INT50 (0x40000)
-#define MCF_INTC_IPRH_INT51 (0x80000)
-#define MCF_INTC_IPRH_INT52 (0x100000)
-#define MCF_INTC_IPRH_INT53 (0x200000)
-#define MCF_INTC_IPRH_INT54 (0x400000)
-#define MCF_INTC_IPRH_INT55 (0x800000)
-#define MCF_INTC_IPRH_INT56 (0x1000000)
-#define MCF_INTC_IPRH_INT57 (0x2000000)
-#define MCF_INTC_IPRH_INT58 (0x4000000)
-#define MCF_INTC_IPRH_INT59 (0x8000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x2)
-#define MCF_INTC_IPRL_INT2 (0x4)
-#define MCF_INTC_IPRL_INT3 (0x8)
-#define MCF_INTC_IPRL_INT4 (0x10)
-#define MCF_INTC_IPRL_INT5 (0x20)
-#define MCF_INTC_IPRL_INT6 (0x40)
-#define MCF_INTC_IPRL_INT7 (0x80)
-#define MCF_INTC_IPRL_INT8 (0x100)
-#define MCF_INTC_IPRL_INT9 (0x200)
-#define MCF_INTC_IPRL_INT10 (0x400)
-#define MCF_INTC_IPRL_INT11 (0x800)
-#define MCF_INTC_IPRL_INT12 (0x1000)
-#define MCF_INTC_IPRL_INT13 (0x2000)
-#define MCF_INTC_IPRL_INT14 (0x4000)
-#define MCF_INTC_IPRL_INT15 (0x8000)
-#define MCF_INTC_IPRL_INT16 (0x10000)
-#define MCF_INTC_IPRL_INT17 (0x20000)
-#define MCF_INTC_IPRL_INT18 (0x40000)
-#define MCF_INTC_IPRL_INT19 (0x80000)
-#define MCF_INTC_IPRL_INT20 (0x100000)
-#define MCF_INTC_IPRL_INT21 (0x200000)
-#define MCF_INTC_IPRL_INT22 (0x400000)
-#define MCF_INTC_IPRL_INT23 (0x800000)
-#define MCF_INTC_IPRL_INT24 (0x1000000)
-#define MCF_INTC_IPRL_INT25 (0x2000000)
-#define MCF_INTC_IPRL_INT26 (0x4000000)
-#define MCF_INTC_IPRL_INT27 (0x8000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x1)
-#define MCF_INTC_IMRH_INT_MASK33 (0x2)
-#define MCF_INTC_IMRH_INT_MASK34 (0x4)
-#define MCF_INTC_IMRH_INT_MASK35 (0x8)
-#define MCF_INTC_IMRH_INT_MASK36 (0x10)
-#define MCF_INTC_IMRH_INT_MASK37 (0x20)
-#define MCF_INTC_IMRH_INT_MASK38 (0x40)
-#define MCF_INTC_IMRH_INT_MASK39 (0x80)
-#define MCF_INTC_IMRH_INT_MASK40 (0x100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x1000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x2000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x4000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x8000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x10000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x20000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x40000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x80000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x1)
-#define MCF_INTC_IMRL_INT_MASK1 (0x2)
-#define MCF_INTC_IMRL_INT_MASK2 (0x4)
-#define MCF_INTC_IMRL_INT_MASK3 (0x8)
-#define MCF_INTC_IMRL_INT_MASK4 (0x10)
-#define MCF_INTC_IMRL_INT_MASK5 (0x20)
-#define MCF_INTC_IMRL_INT_MASK6 (0x40)
-#define MCF_INTC_IMRL_INT_MASK7 (0x80)
-#define MCF_INTC_IMRL_INT_MASK8 (0x100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x1000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x2000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x4000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x8000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x10000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x20000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x40000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x80000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x1)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x2)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x4)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x8)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x10)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x20)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x40)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x80)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x2)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x4)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x8)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x10)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x20)
-#define MCF_INTC_INTFRCL_INTFRC6 (0x40)
-#define MCF_INTC_INTFRCL_INTFRC7 (0x80)
-#define MCF_INTC_INTFRCL_INTFRC8 (0x100)
-#define MCF_INTC_INTFRCL_INTFRC9 (0x200)
-#define MCF_INTC_INTFRCL_INTFRC10 (0x400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
-#define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
-
-/* Bit definitions and macros for MCF_INTC_ICR */
-#define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
-#define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
-
-/* Bit definitions and macros for MCF_INTC_SWIACK */
-#define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_INTC_LIACK */
-#define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-
-#endif /* __MCF5475_INTC_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_MMU.h b/BaS_gcc/tos/pci_test/include/MCF5475_MMU.h
deleted file mode 100644
index 334ad28..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_MMU.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_MMU_H__
-#define __MCF5475_MMU_H__
-
-
-/*********************************************************************
-*
-* Memory Management Unit (MMU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-
-/* note the uint32_t_a - this is to avoid gcc warnings about pointer aliasing */
-#define MCF_MMU_MMUCR (*(volatile uint32_t_a*)(&_MMUBAR[0]))
-#define MCF_MMU_MMUOR (*(volatile uint32_t_a*)(&_MMUBAR[0x4]))
-#define MCF_MMU_MMUSR (*(volatile uint32_t_a*)(&_MMUBAR[0x8]))
-#define MCF_MMU_MMUAR (*(volatile uint32_t_a*)(&_MMUBAR[0x10]))
-#define MCF_MMU_MMUTR (*(volatile uint32_t_a*)(&_MMUBAR[0x14]))
-#define MCF_MMU_MMUDR (*(volatile uint32_t_a*)(&_MMUBAR[0x18]))
-
-
-/* Bit definitions and macros for MCF_MMU_MMUCR */
-#define MCF_MMU_MMUCR_EN (0x1)
-#define MCF_MMU_MMUCR_ASM (0x2)
-
-/* Bit definitions and macros for MCF_MMU_MMUOR */
-#define MCF_MMU_MMUOR_UAA (0x1)
-#define MCF_MMU_MMUOR_ACC (0x2)
-#define MCF_MMU_MMUOR_RW (0x4)
-#define MCF_MMU_MMUOR_ADR (0x8)
-#define MCF_MMU_MMUOR_ITLB (0x10)
-#define MCF_MMU_MMUOR_CAS (0x20)
-#define MCF_MMU_MMUOR_CNL (0x40)
-#define MCF_MMU_MMUOR_CA (0x80)
-#define MCF_MMU_MMUOR_STLB (0x100)
-#define MCF_MMU_MMUOR_AA(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_MMU_MMUSR */
-#define MCF_MMU_MMUSR_HIT (0x2)
-#define MCF_MMU_MMUSR_WF (0x8)
-#define MCF_MMU_MMUSR_RF (0x10)
-#define MCF_MMU_MMUSR_SPF (0x20)
-
-/* Bit definitions and macros for MCF_MMU_MMUAR */
-#define MCF_MMU_MMUAR_FA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_MMU_MMUTR */
-#define MCF_MMU_MMUTR_V (0x1)
-#define MCF_MMU_MMUTR_SG (0x2)
-#define MCF_MMU_MMUTR_ID(x) (((x)&0xFF)<<0x2)
-#define MCF_MMU_MMUTR_VA(x) (((x)&0x3FFFFF)<<0xA)
-
-/* Bit definitions and macros for MCF_MMU_MMUDR */
-#define MCF_MMU_MMUDR_LK (0x2)
-#define MCF_MMU_MMUDR_X (0x4)
-#define MCF_MMU_MMUDR_W (0x8)
-#define MCF_MMU_MMUDR_R (0x10)
-#define MCF_MMU_MMUDR_SP (0x20)
-#define MCF_MMU_MMUDR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_MMU_MMUDR_SZ(x) (((x)&0x3)<<0x8)
-#define MCF_MMU_MMUDR_PA(x) (((x)&0x3FFFFF)<<0xA)
-
-
-#endif /* __MCF5475_MMU_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_PAD.h b/BaS_gcc/tos/pci_test/include/MCF5475_PAD.h
deleted file mode 100644
index 1d87e2e..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_PAD.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PAD_H__
-#define __MCF5475_PAD_H__
-
-
-/*********************************************************************
-*
-* Common GPIO
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PAD_PAR_FBCTL (*(volatile uint16_t*)(&_MBAR[0xA40]))
-#define MCF_PAD_PAR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA42]))
-#define MCF_PAD_PAR_DMA (*(volatile uint8_t *)(&_MBAR[0xA43]))
-#define MCF_PAD_PAR_FECI2CIRQ (*(volatile uint16_t*)(&_MBAR[0xA44]))
-#define MCF_PAD_PAR_PCIBG (*(volatile uint16_t*)(&_MBAR[0xA48]))
-#define MCF_PAD_PAR_PCIBR (*(volatile uint16_t*)(&_MBAR[0xA4A]))
-#define MCF_PAD_PAR_PSC3 (*(volatile uint8_t *)(&_MBAR[0xA4C]))
-#define MCF_PAD_PAR_PSC2 (*(volatile uint8_t *)(&_MBAR[0xA4D]))
-#define MCF_PAD_PAR_PSC1 (*(volatile uint8_t *)(&_MBAR[0xA4E]))
-#define MCF_PAD_PAR_PSC0 (*(volatile uint8_t *)(&_MBAR[0xA4F]))
-#define MCF_PAD_PAR_DSPI (*(volatile uint16_t*)(&_MBAR[0xA50]))
-#define MCF_PAD_PAR_TIMER (*(volatile uint8_t *)(&_MBAR[0xA52]))
-
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCTL */
-#define MCF_PAD_PAR_FBCTL_PAR_ALE(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_TBST (0x2)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_ALE (0x3)
-#define MCF_PAD_PAR_FBCTL_PAR_TA (0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_TBST (0x20)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_RW (0x30)
-#define MCF_PAD_PAR_FBCTL_PAR_OE (0x40)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE0 (0x100)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE1 (0x400)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE3 (0x4000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCS */
-#define MCF_PAD_PAR_FBCS_PAR_CS1 (0x2)
-#define MCF_PAD_PAR_FBCS_PAR_CS2 (0x4)
-#define MCF_PAD_PAR_FBCS_PAR_CS3 (0x8)
-#define MCF_PAD_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_PAD_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DMA */
-#define MCF_PAD_PAR_DMA_PAR_DREQ0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_TIN0 (0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_DREQ0 (0x3)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_IRQ1 (0x4)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_TIN1 (0x8)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_DREQ1 (0xC)
-#define MCF_PAD_PAR_DMA_PAR_DACK0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_TOUT0 (0x20)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_DACK0 (0x30)
-#define MCF_PAD_PAR_DMA_PAR_DACK1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_TOUT1 (0x80)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_DACK1 (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FECI2CIRQ */
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5 (0x1)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 (0x2)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SCL (0x4)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SDA (0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x80)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC (0xC0)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x200)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO (0x300)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII (0x400)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E17 (0x800)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBG */
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_TOUT0 (0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 (0x3)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_TOUT1 (0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 (0xC)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_TOUT2 (0x20)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 (0x30)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_TOUT3 (0x80)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 (0xC0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST (0x200)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBR */
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_TIN0 (0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 (0x3)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_TIN1 (0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 (0xC)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_TIN2 (0x20)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 (0x30)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_TIN3 (0x80)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 (0xC0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 (0x200)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC3 */
-#define MCF_PAD_PAR_PSC3_PAR_TXD3 (0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RXD3 (0x8)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC2 */
-#define MCF_PAD_PAR_PSC2_PAR_TXD2 (0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RXD2 (0x8)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_RTS (0x30)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC1 */
-#define MCF_PAD_PAR_PSC1_PAR_TXD1 (0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RXD1 (0x8)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_RTS (0x30)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC0 */
-#define MCF_PAD_PAR_PSC0_PAR_TXD0 (0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RXD0 (0x8)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_RTS (0x30)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DSPI */
-#define MCF_PAD_PAR_DSPI_PAR_SOUT(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_TXD (0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT (0x3)
-#define MCF_PAD_PAR_DSPI_PAR_SIN(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_RXD (0x8)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_SIN (0xC)
-#define MCF_PAD_PAR_DSPI_PAR_SCK(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_BCLK (0x10)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_CTS (0x20)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_SCK (0x30)
-#define MCF_PAD_PAR_DSPI_PAR_CS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_FSYNC (0x40)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_RTS (0x80)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0 (0xC0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_TOUT2 (0x200)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2 (0x300)
-#define MCF_PAD_PAR_DSPI_PAR_CS3(x) (((x)&0x3)<<0xA)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_TOUT3 (0x800)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3 (0xC00)
-#define MCF_PAD_PAR_DSPI_PAR_CS5 (0x1000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_TIMER */
-#define MCF_PAD_PAR_TIMER_PAR_TOUT2 (0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2(x) (((x)&0x3)<<0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2 (0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_TIN2 (0x6)
-#define MCF_PAD_PAR_TIMER_PAR_TOUT3 (0x8)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3 (0x20)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_TIN3 (0x30)
-
-
-#endif /* __MCF5475_PAD_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_PCI.h b/BaS_gcc/tos/pci_test/include/MCF5475_PCI.h
deleted file mode 100644
index 3eb3341..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_PCI.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCI_H__
-#define __MCF5475_PCI_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Controller (PCI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCI_PCIIDR (*(volatile uint32_t*)(&_MBAR[0xB00]))
-#define MCF_PCI_PCISCR (*(volatile uint32_t*)(&_MBAR[0xB04]))
-#define MCF_PCI_PCICCRIR (*(volatile uint32_t*)(&_MBAR[0xB08]))
-#define MCF_PCI_PCICR1 (*(volatile uint32_t*)(&_MBAR[0xB0C]))
-#define MCF_PCI_PCIBAR0 (*(volatile uint32_t*)(&_MBAR[0xB10]))
-#define MCF_PCI_PCIBAR1 (*(volatile uint32_t*)(&_MBAR[0xB14]))
-#define MCF_PCI_PCICCPR (*(volatile uint32_t*)(&_MBAR[0xB28]))
-#define MCF_PCI_PCISID (*(volatile uint32_t*)(&_MBAR[0xB2C]))
-#define MCF_PCI_PCICR2 (*(volatile uint32_t*)(&_MBAR[0xB3C]))
-#define MCF_PCI_PCIGSCR (*(volatile uint32_t*)(&_MBAR[0xB60]))
-#define MCF_PCI_PCITBATR0 (*(volatile uint32_t*)(&_MBAR[0xB64]))
-#define MCF_PCI_PCITBATR1 (*(volatile uint32_t*)(&_MBAR[0xB68]))
-#define MCF_PCI_PCITCR (*(volatile uint32_t*)(&_MBAR[0xB6C]))
-#define MCF_PCI_PCIIW0BTAR (*(volatile uint32_t*)(&_MBAR[0xB70]))
-#define MCF_PCI_PCIIW1BTAR (*(volatile uint32_t*)(&_MBAR[0xB74]))
-#define MCF_PCI_PCIIW2BTAR (*(volatile uint32_t*)(&_MBAR[0xB78]))
-#define MCF_PCI_PCIIWCR (*(volatile uint32_t*)(&_MBAR[0xB80]))
-#define MCF_PCI_PCIICR (*(volatile uint32_t*)(&_MBAR[0xB84]))
-#define MCF_PCI_PCIISR (*(volatile uint32_t*)(&_MBAR[0xB88]))
-#define MCF_PCI_PCICAR (*(volatile uint32_t*)(&_MBAR[0xBF8]))
-#define MCF_PCI_PCITPSR (*(volatile uint32_t*)(&_MBAR[0x8400]))
-#define MCF_PCI_PCITSAR (*(volatile uint32_t*)(&_MBAR[0x8404]))
-#define MCF_PCI_PCITTCR (*(volatile uint32_t*)(&_MBAR[0x8408]))
-#define MCF_PCI_PCITER (*(volatile uint32_t*)(&_MBAR[0x840C]))
-#define MCF_PCI_PCITNAR (*(volatile uint32_t*)(&_MBAR[0x8410]))
-#define MCF_PCI_PCITLWR (*(volatile uint32_t*)(&_MBAR[0x8414]))
-#define MCF_PCI_PCITDCR (*(volatile uint32_t*)(&_MBAR[0x8418]))
-#define MCF_PCI_PCITSR (*(volatile uint32_t*)(&_MBAR[0x841C]))
-#define MCF_PCI_PCITFDR (*(volatile uint32_t*)(&_MBAR[0x8440]))
-#define MCF_PCI_PCITFSR (*(volatile uint32_t*)(&_MBAR[0x8444]))
-#define MCF_PCI_PCITFCR (*(volatile uint32_t*)(&_MBAR[0x8448]))
-#define MCF_PCI_PCITFAR (*(volatile uint32_t*)(&_MBAR[0x844C]))
-#define MCF_PCI_PCITFRPR (*(volatile uint32_t*)(&_MBAR[0x8450]))
-#define MCF_PCI_PCITFWPR (*(volatile uint32_t*)(&_MBAR[0x8454]))
-#define MCF_PCI_PCIRPSR (*(volatile uint32_t*)(&_MBAR[0x8480]))
-#define MCF_PCI_PCIRSAR (*(volatile uint32_t*)(&_MBAR[0x8484]))
-#define MCF_PCI_PCIRTCR (*(volatile uint32_t*)(&_MBAR[0x8488]))
-#define MCF_PCI_PCIRER (*(volatile uint32_t*)(&_MBAR[0x848C]))
-#define MCF_PCI_PCIRNAR (*(volatile uint32_t*)(&_MBAR[0x8490]))
-#define MCF_PCI_PCIRDCR (*(volatile uint32_t*)(&_MBAR[0x8498]))
-#define MCF_PCI_PCIRSR (*(volatile uint32_t*)(&_MBAR[0x849C]))
-#define MCF_PCI_PCIRFDR (*(volatile uint32_t*)(&_MBAR[0x84C0]))
-#define MCF_PCI_PCIRFSR (*(volatile uint32_t*)(&_MBAR[0x84C4]))
-#define MCF_PCI_PCIRFCR (*(volatile uint32_t*)(&_MBAR[0x84C8]))
-#define MCF_PCI_PCIRFAR (*(volatile uint32_t*)(&_MBAR[0x84CC]))
-#define MCF_PCI_PCIRFRPR (*(volatile uint32_t*)(&_MBAR[0x84D0]))
-#define MCF_PCI_PCIRFWPR (*(volatile uint32_t*)(&_MBAR[0x84D4]))
-
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_IO (0x1)
-#define MCF_PCI_PCISCR_M (0x2)
-#define MCF_PCI_PCISCR_B (0x4)
-#define MCF_PCI_PCISCR_SP (0x8)
-#define MCF_PCI_PCISCR_MW (0x10)
-#define MCF_PCI_PCISCR_V (0x20)
-#define MCF_PCI_PCISCR_PER (0x40)
-#define MCF_PCI_PCISCR_ST (0x80)
-#define MCF_PCI_PCISCR_S (0x100)
-#define MCF_PCI_PCISCR_F (0x200)
-#define MCF_PCI_PCISCR_C (0x100000)
-#define MCF_PCI_PCISCR_66M (0x200000)
-#define MCF_PCI_PCISCR_R (0x400000)
-#define MCF_PCI_PCISCR_FC (0x800000)
-#define MCF_PCI_PCISCR_DP (0x1000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCISCR_TS (0x8000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVISIONID(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0xFFFFFF)<<0x8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IOM (0x1)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR0_PREF (0x8)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IOM (0x1)
-#define MCF_PCI_PCIBAR1_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR1_PREF (0x8)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCICCPR */
-#define MCF_PCI_PCICCPR_PCICCP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCISID */
-#define MCF_PCI_PCISID_VENDORID(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x1)
-#define MCF_PCI_PCIGSCR_SEE (0x1000)
-#define MCF_PCI_PCIGSCR_PEE (0x2000)
-#define MCF_PCI_PCIGSCR_CLKINRESERVED(x) (((x)&0x7)<<0x10)
-#define MCF_PCI_PCIGSCR_XLB2CLKIN(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x1)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x1)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x10000)
-#define MCF_PCI_PCITCR_LD (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2_E (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_PRC(x) (((x)&0x3)<<0x9)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IOM (0x800)
-#define MCF_PCI_PCIIWCR_WINCTRL1_E (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_PRC(x) (((x)&0x3)<<0x11)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IOM (0x80000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_E (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_PRC(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IOM (0x8000000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x900)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x30000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x50000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x90000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x3000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x5000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x9000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x1000000)
-#define MCF_PCI_PCIICR_IAE (0x2000000)
-#define MCF_PCI_PCIICR_REE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x1000000)
-#define MCF_PCI_PCIISR_IA (0x2000000)
-#define MCF_PCI_PCIISR_RE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x3F)<<0x2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x1F)<<0xB)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSAR */
-#define MCF_PCI_PCITSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x1)
-#define MCF_PCI_PCITTCR_W (0x10)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x10000)
-#define MCF_PCI_PCITER_IAE (0x20000)
-#define MCF_PCI_PCITER_TAE (0x40000)
-#define MCF_PCI_PCITER_RE (0x80000)
-#define MCF_PCI_PCITER_SE (0x100000)
-#define MCF_PCI_PCITER_FEE (0x200000)
-#define MCF_PCI_PCITER_ME (0x1000000)
-#define MCF_PCI_PCITER_BE (0x8000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITNAR */
-#define MCF_PCI_PCITNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITLWR */
-#define MCF_PCI_PCITLWR_LASTWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x10000)
-#define MCF_PCI_PCITSR_TA (0x20000)
-#define MCF_PCI_PCITSR_RE (0x40000)
-#define MCF_PCI_PCITSR_SE (0x80000)
-#define MCF_PCI_PCITSR_FE (0x100000)
-#define MCF_PCI_PCITSR_BE1 (0x200000)
-#define MCF_PCI_PCITSR_BE2 (0x400000)
-#define MCF_PCI_PCITSR_BE3 (0x800000)
-#define MCF_PCI_PCITSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFDR */
-#define MCF_PCI_PCITFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMPTY (0x10000)
-#define MCF_PCI_PCITFSR_ALARM (0x20000)
-#define MCF_PCI_PCITFSR_FULL (0x40000)
-#define MCF_PCI_PCITFSR_FR (0x80000)
-#define MCF_PCI_PCITFSR_OF (0x100000)
-#define MCF_PCI_PCITFSR_UF (0x200000)
-#define MCF_PCI_PCITFSR_RXW (0x400000)
-#define MCF_PCI_PCITFSR_FAE (0x800000)
-#define MCF_PCI_PCITFSR_TXW (0x40000000)
-#define MCF_PCI_PCITFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCITFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCITFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCITFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCITFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCITFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCITFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSAR */
-#define MCF_PCI_PCIRSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x1)
-#define MCF_PCI_PCIRTCR_W (0x10)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCIRTCR_FB (0x1000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x10000)
-#define MCF_PCI_PCIRER_IAE (0x20000)
-#define MCF_PCI_PCIRER_TAE (0x40000)
-#define MCF_PCI_PCIRER_RE (0x80000)
-#define MCF_PCI_PCIRER_SE (0x100000)
-#define MCF_PCI_PCIRER_FEE (0x200000)
-#define MCF_PCI_PCIRER_ME (0x1000000)
-#define MCF_PCI_PCIRER_BE (0x8000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRNAR */
-#define MCF_PCI_PCIRNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x10000)
-#define MCF_PCI_PCIRSR_TA (0x20000)
-#define MCF_PCI_PCIRSR_RE (0x40000)
-#define MCF_PCI_PCIRSR_SE (0x80000)
-#define MCF_PCI_PCIRSR_FE (0x100000)
-#define MCF_PCI_PCIRSR_BE1 (0x200000)
-#define MCF_PCI_PCIRSR_BE2 (0x400000)
-#define MCF_PCI_PCIRSR_BE3 (0x800000)
-#define MCF_PCI_PCIRSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFDR */
-#define MCF_PCI_PCIRFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMPTY (0x10000)
-#define MCF_PCI_PCIRFSR_ALARM (0x20000)
-#define MCF_PCI_PCIRFSR_FULL (0x40000)
-#define MCF_PCI_PCIRFSR_FR (0x80000)
-#define MCF_PCI_PCIRFSR_OF (0x100000)
-#define MCF_PCI_PCIRFSR_UF (0x200000)
-#define MCF_PCI_PCIRFSR_RXW (0x400000)
-#define MCF_PCI_PCIRFSR_FAE (0x800000)
-#define MCF_PCI_PCIRFSR_TXW (0x40000000)
-#define MCF_PCI_PCIRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCIRFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCIRFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCIRFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCIRFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCIRFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIRFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-
-#endif /* __MCF5475_PCI_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_PCIARB.h b/BaS_gcc/tos/pci_test/include/MCF5475_PCIARB.h
deleted file mode 100644
index 9e8c05b..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_PCIARB.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCIARB_H__
-#define __MCF5475_PCIARB_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Arbiter Module (PCIARB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(volatile uint32_t*)(&_MBAR[0xC00]))
-#define MCF_PCIARB_PASR (*(volatile uint32_t*)(&_MBAR[0xC04]))
-
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x1)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x1F)<<0x1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x10000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x1F)<<0x11)
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x10000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x1F)<<0x11)
-
-
-#endif /* __MCF5475_PCIARB_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_PSC.h b/BaS_gcc/tos/pci_test/include/MCF5475_PSC.h
deleted file mode 100644
index ffa9f3e..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_PSC.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PSC_H__
-#define __MCF5475_PSC_H__
-
-
-/*********************************************************************
-*
-* Programmable Serial Controller (PSC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PSC0_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8608]))
-#define MCF_PSC0_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8618]))
-#define MCF_PSC0_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x861C]))
-#define MCF_PSC0_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8634]))
-#define MCF_PSC0_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8638]))
-#define MCF_PSC0_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x863C]))
-#define MCF_PSC0_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8640]))
-#define MCF_PSC0_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8644]))
-#define MCF_PSC0_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8648]))
-#define MCF_PSC0_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x864C]))
-#define MCF_PSC0_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8650]))
-#define MCF_PSC0_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8654]))
-#define MCF_PSC0_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8658]))
-#define MCF_PSC0_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x865C]))
-#define MCF_PSC0_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8660]))
-#define MCF_PSC0_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8664]))
-#define MCF_PSC0_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8668]))
-#define MCF_PSC0_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x866E]))
-#define MCF_PSC0_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8672]))
-#define MCF_PSC0_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8676]))
-#define MCF_PSC0_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x867A]))
-#define MCF_PSC0_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x867E]))
-#define MCF_PSC0_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8680]))
-#define MCF_PSC0_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8684]))
-#define MCF_PSC0_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8688]))
-#define MCF_PSC0_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x868E]))
-#define MCF_PSC0_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8692]))
-#define MCF_PSC0_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8696]))
-#define MCF_PSC0_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x869A]))
-#define MCF_PSC0_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x869E]))
-
-#define MCF_PSC1_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8708]))
-#define MCF_PSC1_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8718]))
-#define MCF_PSC1_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x871C]))
-#define MCF_PSC1_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8734]))
-#define MCF_PSC1_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8738]))
-#define MCF_PSC1_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x873C]))
-#define MCF_PSC1_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8740]))
-#define MCF_PSC1_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8744]))
-#define MCF_PSC1_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8748]))
-#define MCF_PSC1_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x874C]))
-#define MCF_PSC1_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8750]))
-#define MCF_PSC1_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8754]))
-#define MCF_PSC1_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8758]))
-#define MCF_PSC1_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x875C]))
-#define MCF_PSC1_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8760]))
-#define MCF_PSC1_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8764]))
-#define MCF_PSC1_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8768]))
-#define MCF_PSC1_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x876E]))
-#define MCF_PSC1_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8772]))
-#define MCF_PSC1_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8776]))
-#define MCF_PSC1_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x877A]))
-#define MCF_PSC1_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x877E]))
-#define MCF_PSC1_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8780]))
-#define MCF_PSC1_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8784]))
-#define MCF_PSC1_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8788]))
-#define MCF_PSC1_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x878E]))
-#define MCF_PSC1_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8792]))
-#define MCF_PSC1_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8796]))
-#define MCF_PSC1_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x879A]))
-#define MCF_PSC1_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x879E]))
-
-#define MCF_PSC2_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8808]))
-#define MCF_PSC2_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8818]))
-#define MCF_PSC2_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x881C]))
-#define MCF_PSC2_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8834]))
-#define MCF_PSC2_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8838]))
-#define MCF_PSC2_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x883C]))
-#define MCF_PSC2_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8840]))
-#define MCF_PSC2_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8844]))
-#define MCF_PSC2_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8848]))
-#define MCF_PSC2_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x884C]))
-#define MCF_PSC2_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8850]))
-#define MCF_PSC2_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8854]))
-#define MCF_PSC2_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8858]))
-#define MCF_PSC2_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x885C]))
-#define MCF_PSC2_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8860]))
-#define MCF_PSC2_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8864]))
-#define MCF_PSC2_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8868]))
-#define MCF_PSC2_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x886E]))
-#define MCF_PSC2_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8872]))
-#define MCF_PSC2_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8876]))
-#define MCF_PSC2_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x887A]))
-#define MCF_PSC2_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x887E]))
-#define MCF_PSC2_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8880]))
-#define MCF_PSC2_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8884]))
-#define MCF_PSC2_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8888]))
-#define MCF_PSC2_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x888E]))
-#define MCF_PSC2_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8892]))
-#define MCF_PSC2_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8896]))
-#define MCF_PSC2_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x889A]))
-#define MCF_PSC2_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x889E]))
-
-#define MCF_PSC3_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8908]))
-#define MCF_PSC3_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8918]))
-#define MCF_PSC3_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x891C]))
-#define MCF_PSC3_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8934]))
-#define MCF_PSC3_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8938]))
-#define MCF_PSC3_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x893C]))
-#define MCF_PSC3_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8940]))
-#define MCF_PSC3_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8944]))
-#define MCF_PSC3_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8948]))
-#define MCF_PSC3_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x894C]))
-#define MCF_PSC3_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8950]))
-#define MCF_PSC3_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8954]))
-#define MCF_PSC3_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8958]))
-#define MCF_PSC3_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x895C]))
-#define MCF_PSC3_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8960]))
-#define MCF_PSC3_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8964]))
-#define MCF_PSC3_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8968]))
-#define MCF_PSC3_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x896E]))
-#define MCF_PSC3_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8972]))
-#define MCF_PSC3_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8976]))
-#define MCF_PSC3_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x897A]))
-#define MCF_PSC3_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x897E]))
-#define MCF_PSC3_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8980]))
-#define MCF_PSC3_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8984]))
-#define MCF_PSC3_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8988]))
-#define MCF_PSC3_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x898E]))
-#define MCF_PSC3_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8992]))
-#define MCF_PSC3_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8996]))
-#define MCF_PSC3_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x899A]))
-#define MCF_PSC3_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x899E]))
-
-#define MCF_PSC_PSCMR(x) (*(volatile uint8_t *)(&_MBAR[0x8600 + ((x)*0x100)]))
-#define MCF_PSC_PSCCSR(x) (*(volatile uint8_t *)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCSR(x) (*(volatile uint16_t*)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCCR(x) (*(volatile uint8_t *)(&_MBAR[0x8608 + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCIPCR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCACR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCIMR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCISR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTUR(x) (*(volatile uint8_t *)(&_MBAR[0x8618 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTLR(x) (*(volatile uint8_t *)(&_MBAR[0x861C + ((x)*0x100)]))
-#define MCF_PSC_PSCIP(x) (*(volatile uint8_t *)(&_MBAR[0x8634 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPSET(x) (*(volatile uint8_t *)(&_MBAR[0x8638 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPRESET(x) (*(volatile uint8_t *)(&_MBAR[0x863C + ((x)*0x100)]))
-#define MCF_PSC_PSCSICR(x) (*(volatile uint8_t *)(&_MBAR[0x8640 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR1(x) (*(volatile uint8_t *)(&_MBAR[0x8644 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR2(x) (*(volatile uint8_t *)(&_MBAR[0x8648 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRSDR(x) (*(volatile uint8_t *)(&_MBAR[0x864C + ((x)*0x100)]))
-#define MCF_PSC_PSCIRMDR(x) (*(volatile uint8_t *)(&_MBAR[0x8650 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRFDR(x) (*(volatile uint8_t *)(&_MBAR[0x8654 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x8658 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x865C + ((x)*0x100)]))
-#define MCF_PSC_PSCRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8660 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8664 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8668 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFAR(x) (*(volatile uint16_t*)(&_MBAR[0x866E + ((x)*0x100)]))
-#define MCF_PSC_PSCRFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8672 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8676 + ((x)*0x100)]))
-#define MCF_PSC_PSCRLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x867A + ((x)*0x100)]))
-#define MCF_PSC_PSCRLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x867E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8680 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8684 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8688 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFAR(x) (*(volatile uint16_t*)(&_MBAR[0x868E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8692 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8696 + ((x)*0x100)]))
-#define MCF_PSC_PSCTLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x869A + ((x)*0x100)]))
-#define MCF_PSC_PSCTLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x869E + ((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_PSCMR */
-#define MCF_PSC_PSCMR_SB(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCMR_TXCTS (0x10)
-#define MCF_PSC_PSCMR_TXRTS (0x20)
-#define MCF_PSC_PSCMR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_PSC_PSCMR_CM_NORMAL (0)
-#define MCF_PSC_PSCMR_CM_ECHO (0x40)
-#define MCF_PSC_PSCMR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_PSCMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_1 (0x7)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_15 (0x8)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_2 (0xF)
-#define MCF_PSC_PSCMR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_PSCMR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_PSCMR_PM_NONE (0x10)
-#define MCF_PSC_PSCMR_PM_FORCE_HI (0xC)
-#define MCF_PSC_PSCMR_PM_FORCE_LO (0x8)
-#define MCF_PSC_PSCMR_PM_ODD (0x4)
-#define MCF_PSC_PSCMR_PM_EVEN (0)
-#define MCF_PSC_PSCMR_BC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCMR_BC_5 (0)
-#define MCF_PSC_PSCMR_BC_6 (0x1)
-#define MCF_PSC_PSCMR_BC_7 (0x2)
-#define MCF_PSC_PSCMR_BC_8 (0x3)
-#define MCF_PSC_PSCMR_PT (0x4)
-#define MCF_PSC_PSCMR_PM(x) (((x)&0x3)<<0x3)
-#define MCF_PSC_PSCMR_ERR (0x20)
-#define MCF_PSC_PSCMR_RXIRQ_FU (0x40)
-#define MCF_PSC_PSCMR_RXRTS (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCCSR */
-#define MCF_PSC_PSCCSR_TCSEL(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCCSR_RCSEL(x) (((x)&0xF)<<0x4)
-#define MCF_PSC_PSCCSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_PSCCSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_PSCCSR_TCSEL_CTM (0x0F)
-#define MCF_PSC_PSCCSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM (0xF0)
-
-/* Bit definitions and macros for MCF_PSC_PSCSR */
-#define MCF_PSC_PSCSR_ERR (0x40)
-#define MCF_PSC_PSCSR_CDE_DEOF (0x80)
-#define MCF_PSC_PSCSR_RXRDY (0x100)
-#define MCF_PSC_PSCSR_FU (0x200)
-#define MCF_PSC_PSCSR_TXRDY (0x400)
-#define MCF_PSC_PSCSR_TXEMP_URERR (0x800)
-#define MCF_PSC_PSCSR_OE (0x1000)
-#define MCF_PSC_PSCSR_PE_CRCERR (0x2000)
-#define MCF_PSC_PSCSR_FE_PHYERR (0x4000)
-#define MCF_PSC_PSCSR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCR */
-#define MCF_PSC_PSCCR_RXC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCCR_RX_ENABLED (0x1)
-#define MCF_PSC_PSCCR_RX_DISABLED (0x2)
-#define MCF_PSC_PSCCR_TXC(x) (((x)&0x3)<<0x2)
-#define MCF_PSC_PSCCR_TX_ENABLED (0x4)
-#define MCF_PSC_PSCCR_TX_DISABLED (0x8)
-#define MCF_PSC_PSCCR_MISC(x) (((x)&0x7)<<0x4)
-#define MCF_PSC_PSCCR_NONE (0)
-#define MCF_PSC_PSCCR_RESET_MR (0x10)
-#define MCF_PSC_PSCCR_RESET_RX (0x20)
-#define MCF_PSC_PSCCR_RESET_TX (0x30)
-#define MCF_PSC_PSCCR_RESET_ERROR (0x40)
-#define MCF_PSC_PSCCR_RESET_BKCHGINT (0x50)
-#define MCF_PSC_PSCCR_START_BREAK (0x60)
-#define MCF_PSC_PSCCR_STOP_BREAK (0x70)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_8BIT */
-#define MCF_PSC_PSCRB_8BIT_RB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCRB_8BIT_RB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCRB_8BIT_RB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCRB_8BIT_RB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_8BIT */
-#define MCF_PSC_PSCTB_8BIT_TB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCTB_8BIT_TB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCTB_8BIT_TB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCTB_8BIT_TB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_16BIT */
-#define MCF_PSC_PSCRB_16BIT_RB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRB_16BIT_RB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_16BIT */
-#define MCF_PSC_PSCTB_16BIT_TB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTB_16BIT_TB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_AC97 */
-#define MCF_PSC_PSCRB_AC97_SOF (0x800)
-#define MCF_PSC_PSCRB_AC97_RB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_AC97 */
-#define MCF_PSC_PSCTB_AC97_TB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCIPCR */
-#define MCF_PSC_PSCIPCR_RESERVED (0xC)
-#define MCF_PSC_PSCIPCR_CTS (0xD)
-#define MCF_PSC_PSCIPCR_D_CTS (0x1C)
-#define MCF_PSC_PSCIPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_PSCACR */
-#define MCF_PSC_PSCACR_IEC0 (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCIMR */
-#define MCF_PSC_PSCIMR_ERR (0x40)
-#define MCF_PSC_PSCIMR_DEOF (0x80)
-#define MCF_PSC_PSCIMR_TXRDY (0x100)
-#define MCF_PSC_PSCIMR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCIMR_DB (0x400)
-#define MCF_PSC_PSCIMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCISR */
-#define MCF_PSC_PSCISR_ERR (0x40)
-#define MCF_PSC_PSCISR_DEOF (0x80)
-#define MCF_PSC_PSCISR_TXRDY (0x100)
-#define MCF_PSC_PSCISR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCISR_DB (0x400)
-#define MCF_PSC_PSCISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTUR */
-#define MCF_PSC_PSCCTUR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTLR */
-#define MCF_PSC_PSCCTLR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIP */
-#define MCF_PSC_PSCIP_CTS (0x1)
-#define MCF_PSC_PSCIP_TGL (0x40)
-#define MCF_PSC_PSCIP_LPWR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPSET */
-#define MCF_PSC_PSCOPSET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPRESET */
-#define MCF_PSC_PSCOPRESET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCSICR */
-#define MCF_PSC_PSCSICR_SIM(x) (((x)&0x7)<<0)
-#define MCF_PSC_PSCSICR_SIM_UART (0)
-#define MCF_PSC_PSCSICR_SIM_MODEM8 (0x1)
-#define MCF_PSC_PSCSICR_SIM_MODEM16 (0x2)
-#define MCF_PSC_PSCSICR_SIM_AC97 (0x3)
-#define MCF_PSC_PSCSICR_SIM_SIR (0x4)
-#define MCF_PSC_PSCSICR_SIM_MIR (0x5)
-#define MCF_PSC_PSCSICR_SIM_FIR (0x6)
-#define MCF_PSC_PSCSICR_SHDIR (0x10)
-#define MCF_PSC_PSCSICR_DTS1 (0x20)
-#define MCF_PSC_PSCSICR_AWR (0x40)
-#define MCF_PSC_PSCSICR_ACRB (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR1 */
-#define MCF_PSC_PSCIRCR1_SPUL (0x1)
-#define MCF_PSC_PSCIRCR1_SIPEN (0x2)
-#define MCF_PSC_PSCIRCR1_FD (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR2 */
-#define MCF_PSC_PSCIRCR2_NXTEOF (0x1)
-#define MCF_PSC_PSCIRCR2_ABORT (0x2)
-#define MCF_PSC_PSCIRCR2_SIPREQ (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRSDR */
-#define MCF_PSC_PSCIRSDR_IRSTIM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRMDR */
-#define MCF_PSC_PSCIRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_PSCIRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRFDR */
-#define MCF_PSC_PSCIRFDR_F_FDIV(x) (((x)&0xF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCNT */
-#define MCF_PSC_PSCRFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCNT */
-#define MCF_PSC_PSCTFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFDR */
-#define MCF_PSC_PSCRFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFSR */
-#define MCF_PSC_PSCRFSR_EMT (0x1)
-#define MCF_PSC_PSCRFSR_ALARM (0x2)
-#define MCF_PSC_PSCRFSR_FU (0x4)
-#define MCF_PSC_PSCRFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCRFSR_OF (0x10)
-#define MCF_PSC_PSCRFSR_UF (0x20)
-#define MCF_PSC_PSCRFSR_RXW (0x40)
-#define MCF_PSC_PSCRFSR_FAE (0x80)
-#define MCF_PSC_PSCRFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCRFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCRFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCRFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCRFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCRFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCRFSR_TXW (0x4000)
-#define MCF_PSC_PSCRFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCR */
-#define MCF_PSC_PSCRFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCRFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCRFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCRFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCRFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCRFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCRFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFAR */
-#define MCF_PSC_PSCRFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFRP */
-#define MCF_PSC_PSCRFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFWP */
-#define MCF_PSC_PSCRFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLRFP */
-#define MCF_PSC_PSCRLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLWFP */
-#define MCF_PSC_PSCRLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFDR */
-#define MCF_PSC_PSCTFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFSR */
-#define MCF_PSC_PSCTFSR_EMT (0x1)
-#define MCF_PSC_PSCTFSR_ALARM (0x2)
-#define MCF_PSC_PSCTFSR_FU (0x4)
-#define MCF_PSC_PSCTFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCTFSR_OF (0x10)
-#define MCF_PSC_PSCTFSR_UF (0x20)
-#define MCF_PSC_PSCTFSR_RXW (0x40)
-#define MCF_PSC_PSCTFSR_FAE (0x80)
-#define MCF_PSC_PSCTFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCTFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCTFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCTFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCTFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCTFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCTFSR_TXW (0x4000)
-#define MCF_PSC_PSCTFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCR */
-#define MCF_PSC_PSCTFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCTFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCTFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCTFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCTFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCTFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCTFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCTFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCTFCR_TIMER (0x10000000)
-#define MCF_PSC_PSCTFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFAR */
-#define MCF_PSC_PSCTFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFRP */
-#define MCF_PSC_PSCTFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFWP */
-#define MCF_PSC_PSCTFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLRFP */
-#define MCF_PSC_PSCTLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLWFP */
-#define MCF_PSC_PSCTLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-
-#endif /* __MCF5475_PSC_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_SDRAMC.h b/BaS_gcc/tos/pci_test/include/MCF5475_SDRAMC.h
deleted file mode 100644
index 6cdbd68..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_SDRAMC.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SDRAMC_H__
-#define __MCF5475_SDRAMC_H__
-
-
-/*********************************************************************
-*
-* Synchronous DRAM Controller (SDRAMC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(volatile uint32_t*)(&_MBAR[0x4]))
-#define MCF_SDRAMC_CS0CFG (*(volatile uint32_t*)(&_MBAR[0x20]))
-#define MCF_SDRAMC_CS1CFG (*(volatile uint32_t*)(&_MBAR[0x24]))
-#define MCF_SDRAMC_CS2CFG (*(volatile uint32_t*)(&_MBAR[0x28]))
-#define MCF_SDRAMC_CS3CFG (*(volatile uint32_t*)(&_MBAR[0x2C]))
-#define MCF_SDRAMC_SDMR (*(volatile uint32_t*)(&_MBAR[0x100]))
-#define MCF_SDRAMC_SDCR (*(volatile uint32_t*)(&_MBAR[0x104]))
-#define MCF_SDRAMC_SDCFG1 (*(volatile uint32_t*)(&_MBAR[0x108]))
-#define MCF_SDRAMC_SDCFG2 (*(volatile uint32_t*)(&_MBAR[0x10C]))
-#define MCF_SDRAMC_CSCFG(x) (*(volatile uint32_t*)(&_MBAR[0x20 + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x3)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x3)<<0x2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x3)<<0x4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x3)<<0x6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x3)<<0x8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x1)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x2)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x3)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSCFG */
-#define MCF_SDRAMC_CSCFG_CSSZ(x) (((x)&0x1F)<<0)
-#define MCF_SDRAMC_CSCFG_CSSZ_DISABLED (0)
-#define MCF_SDRAMC_CSCFG_CSSZ_1MBYTE (0x13)
-#define MCF_SDRAMC_CSCFG_CSSZ_2MBYTE (0x14)
-#define MCF_SDRAMC_CSCFG_CSSZ_4MBYTE (0x15)
-#define MCF_SDRAMC_CSCFG_CSSZ_8MBYTE (0x16)
-#define MCF_SDRAMC_CSCFG_CSSZ_16MBYTE (0x17)
-#define MCF_SDRAMC_CSCFG_CSSZ_32MBYTE (0x18)
-#define MCF_SDRAMC_CSCFG_CSSZ_64MBYTE (0x19)
-#define MCF_SDRAMC_CSCFG_CSSZ_128MBYTE (0x1A)
-#define MCF_SDRAMC_CSCFG_CSSZ_256MBYTE (0x1B)
-#define MCF_SDRAMC_CSCFG_CSSZ_512MBYTE (0x1C)
-#define MCF_SDRAMC_CSCFG_CSSZ_1GBYTE (0x1D)
-#define MCF_SDRAMC_CSCFG_CSSZ_2GBYTE (0x1E)
-#define MCF_SDRAMC_CSCFG_CSSZ_4GBYTE (0x1F)
-#define MCF_SDRAMC_CSCFG_CSBA(x) (((x)&0xFFF)<<0x14)
-#define MCF_SDRAMC_CSCFG_BA(x) ((x)&0xFFF00000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x10000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0xFFF)<<0x12)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x3)<<0x1E)
-#define MCF_SDRAMC_SDMR_BK_LMR (0)
-#define MCF_SDRAMC_SDMR_BK_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x2)
-#define MCF_SDRAMC_SDCR_IREF (0x4)
-#define MCF_SDRAMC_SDCR_BUFF (0x10)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x3F)<<0x10)
-#define MCF_SDRAMC_SDCR_DRIVE (0x400000)
-#define MCF_SDRAMC_SDCR_AP (0x800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x3)<<0x18)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x7)<<0x4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x7)<<0xC)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x7)<<0x10)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x7)<<0x18)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0xF)<<0x1C)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0xF)<<0x10)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0xF)<<0x18)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0xF)<<0x1C)
-
-
-#endif /* __MCF5475_SDRAMC_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_SEC.h b/BaS_gcc/tos/pci_test/include/MCF5475_SEC.h
deleted file mode 100644
index 8deff0b..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_SEC.h
+++ /dev/null
@@ -1,398 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SEC_H__
-#define __MCF5475_SEC_H__
-
-
-/*********************************************************************
-*
-* Integrated Security Engine (SEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(volatile uint32_t*)(&_MBAR[0x21000]))
-#define MCF_SEC_EUACRL (*(volatile uint32_t*)(&_MBAR[0x21004]))
-#define MCF_SEC_SIMRH (*(volatile uint32_t*)(&_MBAR[0x21008]))
-#define MCF_SEC_SIMRL (*(volatile uint32_t*)(&_MBAR[0x2100C]))
-#define MCF_SEC_SISRH (*(volatile uint32_t*)(&_MBAR[0x21010]))
-#define MCF_SEC_SISRL (*(volatile uint32_t*)(&_MBAR[0x21014]))
-#define MCF_SEC_SICRH (*(volatile uint32_t*)(&_MBAR[0x21018]))
-#define MCF_SEC_SICRL (*(volatile uint32_t*)(&_MBAR[0x2101C]))
-#define MCF_SEC_SIDR (*(volatile uint32_t*)(&_MBAR[0x21020]))
-#define MCF_SEC_EUASRH (*(volatile uint32_t*)(&_MBAR[0x21028]))
-#define MCF_SEC_EUASRL (*(volatile uint32_t*)(&_MBAR[0x2102C]))
-#define MCF_SEC_SMCR (*(volatile uint32_t*)(&_MBAR[0x21030]))
-#define MCF_SEC_MEAR (*(volatile uint32_t*)(&_MBAR[0x21038]))
-#define MCF_SEC_CCCR0 (*(volatile uint32_t*)(&_MBAR[0x2200C]))
-#define MCF_SEC_CCPSRH0 (*(volatile uint32_t*)(&_MBAR[0x22010]))
-#define MCF_SEC_CCPSRL0 (*(volatile uint32_t*)(&_MBAR[0x22014]))
-#define MCF_SEC_CDPR0 (*(volatile uint32_t*)(&_MBAR[0x22044]))
-#define MCF_SEC_FR0 (*(volatile uint32_t*)(&_MBAR[0x2204C]))
-#define MCF_SEC_CCCR1 (*(volatile uint32_t*)(&_MBAR[0x2300C]))
-#define MCF_SEC_CCPSRH1 (*(volatile uint32_t*)(&_MBAR[0x23010]))
-#define MCF_SEC_CCPSRL1 (*(volatile uint32_t*)(&_MBAR[0x23014]))
-#define MCF_SEC_CDPR1 (*(volatile uint32_t*)(&_MBAR[0x23044]))
-#define MCF_SEC_FR1 (*(volatile uint32_t*)(&_MBAR[0x2304C]))
-#define MCF_SEC_AFRCR (*(volatile uint32_t*)(&_MBAR[0x28018]))
-#define MCF_SEC_AFSR (*(volatile uint32_t*)(&_MBAR[0x28028]))
-#define MCF_SEC_AFISR (*(volatile uint32_t*)(&_MBAR[0x28030]))
-#define MCF_SEC_AFIMR (*(volatile uint32_t*)(&_MBAR[0x28038]))
-#define MCF_SEC_DRCR (*(volatile uint32_t*)(&_MBAR[0x2A018]))
-#define MCF_SEC_DSR (*(volatile uint32_t*)(&_MBAR[0x2A028]))
-#define MCF_SEC_DISR (*(volatile uint32_t*)(&_MBAR[0x2A030]))
-#define MCF_SEC_DIMR (*(volatile uint32_t*)(&_MBAR[0x2A038]))
-#define MCF_SEC_MDRCR (*(volatile uint32_t*)(&_MBAR[0x2C018]))
-#define MCF_SEC_MDSR (*(volatile uint32_t*)(&_MBAR[0x2C028]))
-#define MCF_SEC_MDISR (*(volatile uint32_t*)(&_MBAR[0x2C030]))
-#define MCF_SEC_MDIMR (*(volatile uint32_t*)(&_MBAR[0x2C038]))
-#define MCF_SEC_RNGRCR (*(volatile uint32_t*)(&_MBAR[0x2E018]))
-#define MCF_SEC_RNGSR (*(volatile uint32_t*)(&_MBAR[0x2E028]))
-#define MCF_SEC_RNGISR (*(volatile uint32_t*)(&_MBAR[0x2E030]))
-#define MCF_SEC_RNGIMR (*(volatile uint32_t*)(&_MBAR[0x2E038]))
-#define MCF_SEC_AESRCR (*(volatile uint32_t*)(&_MBAR[0x32018]))
-#define MCF_SEC_AESSR (*(volatile uint32_t*)(&_MBAR[0x32028]))
-#define MCF_SEC_AESISR (*(volatile uint32_t*)(&_MBAR[0x32030]))
-#define MCF_SEC_AESIMR (*(volatile uint32_t*)(&_MBAR[0x32038]))
-#define MCF_SEC_CCCRn(x) (*(volatile uint32_t*)(&_MBAR[0x2200C + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRHn(x) (*(volatile uint32_t*)(&_MBAR[0x22010 + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRLn(x) (*(volatile uint32_t*)(&_MBAR[0x22014 + ((x)*0x1000)]))
-#define MCF_SEC_CDPRn(x) (*(volatile uint32_t*)(&_MBAR[0x22044 + ((x)*0x1000)]))
-#define MCF_SEC_FRn(x) (*(volatile uint32_t*)(&_MBAR[0x2204C + ((x)*0x1000)]))
-
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUACRH_AFFEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_AFFEU_CHA0 (0x1)
-#define MCF_SEC_EUACRH_AFFEU_CHA1 (0x2)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x200)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0xF)<<0x18)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x1000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x10000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x20000)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x8000000)
-#define MCF_SEC_SIMRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x40)
-#define MCF_SEC_SIMRL_DEU_DN (0x100)
-#define MCF_SEC_SIMRL_DEU_ERR (0x200)
-#define MCF_SEC_SIMRL_AESU_DN (0x1000)
-#define MCF_SEC_SIMRL_AESU_ERR (0x2000)
-#define MCF_SEC_SIMRL_MDEU_DN (0x10000)
-#define MCF_SEC_SIMRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SIMRL_AFEU_DN (0x100000)
-#define MCF_SEC_SIMRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SIMRL_RNG_DN (0x1000000)
-#define MCF_SEC_SIMRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x8000000)
-#define MCF_SEC_SISRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SISRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SISRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x40)
-#define MCF_SEC_SISRL_DEU_DN (0x100)
-#define MCF_SEC_SISRL_DEU_ERR (0x200)
-#define MCF_SEC_SISRL_AESU_DN (0x1000)
-#define MCF_SEC_SISRL_AESU_ERR (0x2000)
-#define MCF_SEC_SISRL_MDEU_DN (0x10000)
-#define MCF_SEC_SISRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SISRL_AFEU_DN (0x100000)
-#define MCF_SEC_SISRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SISRL_RNG_DN (0x1000000)
-#define MCF_SEC_SISRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x8000000)
-#define MCF_SEC_SICRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SICRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SICRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x40)
-#define MCF_SEC_SICRL_DEU_DN (0x100)
-#define MCF_SEC_SICRL_DEU_ERR (0x200)
-#define MCF_SEC_SICRL_AESU_DN (0x1000)
-#define MCF_SEC_SICRL_AESU_ERR (0x2000)
-#define MCF_SEC_SICRL_MDEU_DN (0x10000)
-#define MCF_SEC_SICRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SICRL_AFEU_DN (0x100000)
-#define MCF_SEC_SICRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SICRL_RNG_DN (0x1000000)
-#define MCF_SEC_SICRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SIDR */
-#define MCF_SEC_SIDR_VERSION(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0xF)<<0x4)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x10)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x20)
-#define MCF_SEC_SMCR_SWR (0x1000000)
-
-/* Bit definitions and macros for MCF_SEC_MEAR */
-#define MCF_SEC_MEAR_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x1)
-#define MCF_SEC_CCCRn_CDIE (0x2)
-#define MCF_SEC_CCCRn_NT (0x4)
-#define MCF_SEC_CCCRn_NE (0x8)
-#define MCF_SEC_CCCRn_WE (0x10)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x7)<<0x8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0xFF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x100)
-#define MCF_SEC_CCPSRLn_SERR (0x200)
-#define MCF_SEC_CCPSRLn_DERR (0x400)
-#define MCF_SEC_CCPSRLn_PERR (0x1000)
-#define MCF_SEC_CCPSRLn_TEA (0x2000)
-#define MCF_SEC_CCPSRLn_SD (0x10000)
-#define MCF_SEC_CCPSRLn_PD (0x20000)
-#define MCF_SEC_CCPSRLn_SRD (0x40000)
-#define MCF_SEC_CCPSRLn_PRD (0x80000)
-#define MCF_SEC_CCPSRLn_SG (0x100000)
-#define MCF_SEC_CCPSRLn_PG (0x200000)
-#define MCF_SEC_CCPSRLn_SR (0x400000)
-#define MCF_SEC_CCPSRLn_PR (0x800000)
-#define MCF_SEC_CCPSRLn_MO (0x1000000)
-#define MCF_SEC_CCPSRLn_MI (0x2000000)
-#define MCF_SEC_CCPSRLn_STAT (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_CDPRn */
-#define MCF_SEC_CDPRn_CDP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_FRn */
-#define MCF_SEC_FRn_FETCH_ADDR(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x1000000)
-#define MCF_SEC_AFRCR_MI (0x2000000)
-#define MCF_SEC_AFRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x1000000)
-#define MCF_SEC_AFSR_ID (0x2000000)
-#define MCF_SEC_AFSR_IE (0x4000000)
-#define MCF_SEC_AFSR_OFR (0x8000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x10000)
-#define MCF_SEC_AFISR_KSE (0x20000)
-#define MCF_SEC_AFISR_CE (0x40000)
-#define MCF_SEC_AFISR_ERE (0x80000)
-#define MCF_SEC_AFISR_IE (0x100000)
-#define MCF_SEC_AFISR_OFU (0x2000000)
-#define MCF_SEC_AFISR_IFO (0x4000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x10000)
-#define MCF_SEC_AFIMR_KSE (0x20000)
-#define MCF_SEC_AFIMR_CE (0x40000)
-#define MCF_SEC_AFIMR_ERE (0x80000)
-#define MCF_SEC_AFIMR_IE (0x100000)
-#define MCF_SEC_AFIMR_OFU (0x2000000)
-#define MCF_SEC_AFIMR_IFO (0x4000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x1000000)
-#define MCF_SEC_DRCR_MI (0x2000000)
-#define MCF_SEC_DRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x1000000)
-#define MCF_SEC_DSR_ID (0x2000000)
-#define MCF_SEC_DSR_IE (0x4000000)
-#define MCF_SEC_DSR_OFR (0x8000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x10000)
-#define MCF_SEC_DISR_KSE (0x20000)
-#define MCF_SEC_DISR_CE (0x40000)
-#define MCF_SEC_DISR_ERE (0x80000)
-#define MCF_SEC_DISR_IE (0x100000)
-#define MCF_SEC_DISR_KPE (0x200000)
-#define MCF_SEC_DISR_OFU (0x2000000)
-#define MCF_SEC_DISR_IFO (0x4000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x10000)
-#define MCF_SEC_DIMR_KSE (0x20000)
-#define MCF_SEC_DIMR_CE (0x40000)
-#define MCF_SEC_DIMR_ERE (0x80000)
-#define MCF_SEC_DIMR_IE (0x100000)
-#define MCF_SEC_DIMR_KPE (0x200000)
-#define MCF_SEC_DIMR_OFU (0x2000000)
-#define MCF_SEC_DIMR_IFO (0x4000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x1000000)
-#define MCF_SEC_MDRCR_MI (0x2000000)
-#define MCF_SEC_MDRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x1000000)
-#define MCF_SEC_MDSR_ID (0x2000000)
-#define MCF_SEC_MDSR_IE (0x4000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x10000)
-#define MCF_SEC_MDISR_KSE (0x20000)
-#define MCF_SEC_MDISR_CE (0x40000)
-#define MCF_SEC_MDISR_ERE (0x80000)
-#define MCF_SEC_MDISR_IE (0x100000)
-#define MCF_SEC_MDISR_IFO (0x4000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x10000)
-#define MCF_SEC_MDIMR_KSE (0x20000)
-#define MCF_SEC_MDIMR_CE (0x40000)
-#define MCF_SEC_MDIMR_ERE (0x80000)
-#define MCF_SEC_MDIMR_IE (0x100000)
-#define MCF_SEC_MDIMR_IFO (0x4000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x1000000)
-#define MCF_SEC_RNGRCR_MI (0x2000000)
-#define MCF_SEC_RNGRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x1000000)
-#define MCF_SEC_RNGSR_IE (0x4000000)
-#define MCF_SEC_RNGSR_OFR (0x8000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x100000)
-#define MCF_SEC_RNGISR_OFU (0x2000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x100000)
-#define MCF_SEC_RNGIMR_OFU (0x2000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x1000000)
-#define MCF_SEC_AESRCR_MI (0x2000000)
-#define MCF_SEC_AESRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x1000000)
-#define MCF_SEC_AESSR_ID (0x2000000)
-#define MCF_SEC_AESSR_IE (0x4000000)
-#define MCF_SEC_AESSR_OFR (0x8000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x10000)
-#define MCF_SEC_AESISR_KSE (0x20000)
-#define MCF_SEC_AESISR_CE (0x40000)
-#define MCF_SEC_AESISR_ERE (0x80000)
-#define MCF_SEC_AESISR_IE (0x100000)
-#define MCF_SEC_AESISR_OFU (0x2000000)
-#define MCF_SEC_AESISR_IFO (0x4000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x10000)
-#define MCF_SEC_AESIMR_KSE (0x20000)
-#define MCF_SEC_AESIMR_CE (0x40000)
-#define MCF_SEC_AESIMR_ERE (0x80000)
-#define MCF_SEC_AESIMR_IE (0x100000)
-#define MCF_SEC_AESIMR_OFU (0x2000000)
-#define MCF_SEC_AESIMR_IFO (0x4000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-
-#endif /* __MCF5475_SEC_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_SIU.h b/BaS_gcc/tos/pci_test/include/MCF5475_SIU.h
deleted file mode 100644
index efb2896..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_SIU.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SIU_H__
-#define __MCF5475_SIU_H__
-
-
-/*********************************************************************
-*
-* System Integration Unit (SIU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(volatile uint32_t*)(&_MBAR[0x10]))
-#define MCF_SIU_SECSACR (*(volatile uint32_t*)(&_MBAR[0x38]))
-#define MCF_SIU_RSR (*(volatile uint32_t*)(&_MBAR[0x44]))
-#define MCF_SIU_JTAGID (*(volatile uint32_t*)(&_MBAR[0x50]))
-
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x8000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x1)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x1)
-#define MCF_SIU_RSR_RSTWD (0x2)
-#define MCF_SIU_RSR_RSTJTG (0x8)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_JTAGID(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF5475_SIU_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_SLT.h b/BaS_gcc/tos/pci_test/include/MCF5475_SLT.h
deleted file mode 100644
index 20e8558..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_SLT.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SLT_H__
-#define __MCF5475_SLT_H__
-
-
-/*********************************************************************
-*
-* Slice Timers (SLT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SLT0_STCNT (*(volatile uint32_t*)(&_MBAR[0x900]))
-#define MCF_SLT0_SCR (*(volatile uint32_t*)(&_MBAR[0x904]))
-#define MCF_SLT0_SCNT (*(volatile uint32_t*)(&_MBAR[0x908]))
-#define MCF_SLT0_SSR (*(volatile uint32_t*)(&_MBAR[0x90C]))
-
-#define MCF_SLT1_STCNT (*(volatile uint32_t*)(&_MBAR[0x910]))
-#define MCF_SLT1_SCR (*(volatile uint32_t*)(&_MBAR[0x914]))
-#define MCF_SLT1_SCNT (*(volatile uint32_t*)(&_MBAR[0x918]))
-#define MCF_SLT1_SSR (*(volatile uint32_t*)(&_MBAR[0x91C]))
-
-#define MCF_SLT_STCNT(x) (*(volatile uint32_t*)(&_MBAR[0x900 + ((x)*0x10)]))
-#define MCF_SLT_SCR(x) (*(volatile uint32_t*)(&_MBAR[0x904 + ((x)*0x10)]))
-#define MCF_SLT_SCNT(x) (*(volatile int32_t*)(&_MBAR[0x908 + ((x)*0x10)]))
-#define MCF_SLT_SSR(x) (*(volatile uint32_t*)(&_MBAR[0x90C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_SLT_STCNT */
-#define MCF_SLT_STCNT_TC(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x1000000)
-#define MCF_SLT_SCR_IEN (0x2000000)
-#define MCF_SLT_SCR_RUN (0x4000000)
-
-/* Bit definitions and macros for MCF_SLT_SCNT */
-#define MCF_SLT_SCNT_CNT(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x1000000)
-#define MCF_SLT_SSR_BE (0x2000000)
-
-
-#endif /* __MCF5475_SLT_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_SRAM.h b/BaS_gcc/tos/pci_test/include/MCF5475_SRAM.h
deleted file mode 100644
index d111f13..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_SRAM.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SRAM_H__
-#define __MCF5475_SRAM_H__
-
-
-/*********************************************************************
-*
-* System SRAM Module (SRAM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(volatile uint32_t*)(&__MBAR[0x1FFC0]))
-#define MCF_SRAM_TCCR (*(volatile uint32_t*)(&__MBAR[0x1FFC4]))
-#define MCF_SRAM_TCCRDR (*(volatile uint32_t*)(&__MBAR[0x1FFC8]))
-#define MCF_SRAM_TCCRDW (*(volatile uint32_t*)(&__MBAR[0x1FFCC]))
-#define MCF_SRAM_TCCRSEC (*(volatile uint32_t*)(&__MBAR[0x1FFD0]))
-
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x10000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-
-#endif /* __MCF5475_SRAM_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_USB.h b/BaS_gcc/tos/pci_test/include/MCF5475_USB.h
deleted file mode 100644
index c60273c..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_USB.h
+++ /dev/null
@@ -1,554 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_USB_H__
-#define __MCF5475_USB_H__
-
-
-/*********************************************************************
-*
-* Universal Serial Bus Interface (USB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(volatile uint8_t *)(&__MBAR[0xB000]))
-#define MCF_USB_USBAIMR (*(volatile uint8_t *)(&__MBAR[0xB001]))
-#define MCF_USB_EPINFO (*(volatile uint8_t *)(&__MBAR[0xB003]))
-#define MCF_USB_CFGR (*(volatile uint8_t *)(&__MBAR[0xB004]))
-#define MCF_USB_CFGAR (*(volatile uint8_t *)(&__MBAR[0xB005]))
-#define MCF_USB_SPEEDR (*(volatile uint8_t *)(&__MBAR[0xB006]))
-#define MCF_USB_FRMNUMR (*(volatile uint16_t*)(&__MBAR[0xB00E]))
-#define MCF_USB_EPTNR (*(volatile uint16_t*)(&__MBAR[0xB010]))
-#define MCF_USB_IFUR (*(volatile uint16_t*)(&__MBAR[0xB014]))
-#define MCF_USB_IFR0 (*(volatile uint16_t*)(&__MBAR[0xB040]))
-#define MCF_USB_IFR1 (*(volatile uint16_t*)(&__MBAR[0xB042]))
-#define MCF_USB_IFR2 (*(volatile uint16_t*)(&__MBAR[0xB044]))
-#define MCF_USB_IFR3 (*(volatile uint16_t*)(&__MBAR[0xB046]))
-#define MCF_USB_IFR4 (*(volatile uint16_t*)(&__MBAR[0xB048]))
-#define MCF_USB_IFR5 (*(volatile uint16_t*)(&__MBAR[0xB04A]))
-#define MCF_USB_IFR6 (*(volatile uint16_t*)(&__MBAR[0xB04C]))
-#define MCF_USB_IFR7 (*(volatile uint16_t*)(&__MBAR[0xB04E]))
-#define MCF_USB_IFR8 (*(volatile uint16_t*)(&__MBAR[0xB050]))
-#define MCF_USB_IFR9 (*(volatile uint16_t*)(&__MBAR[0xB052]))
-#define MCF_USB_IFR10 (*(volatile uint16_t*)(&__MBAR[0xB054]))
-#define MCF_USB_IFR11 (*(volatile uint16_t*)(&__MBAR[0xB056]))
-#define MCF_USB_IFR12 (*(volatile uint16_t*)(&__MBAR[0xB058]))
-#define MCF_USB_IFR13 (*(volatile uint16_t*)(&__MBAR[0xB05A]))
-#define MCF_USB_IFR14 (*(volatile uint16_t*)(&__MBAR[0xB05C]))
-#define MCF_USB_IFR15 (*(volatile uint16_t*)(&__MBAR[0xB05E]))
-#define MCF_USB_IFR16 (*(volatile uint16_t*)(&__MBAR[0xB060]))
-#define MCF_USB_IFR17 (*(volatile uint16_t*)(&__MBAR[0xB062]))
-#define MCF_USB_IFR18 (*(volatile uint16_t*)(&__MBAR[0xB064]))
-#define MCF_USB_IFR19 (*(volatile uint16_t*)(&__MBAR[0xB066]))
-#define MCF_USB_IFR20 (*(volatile uint16_t*)(&__MBAR[0xB068]))
-#define MCF_USB_IFR21 (*(volatile uint16_t*)(&__MBAR[0xB06A]))
-#define MCF_USB_IFR22 (*(volatile uint16_t*)(&__MBAR[0xB06C]))
-#define MCF_USB_IFR23 (*(volatile uint16_t*)(&__MBAR[0xB06E]))
-#define MCF_USB_IFR24 (*(volatile uint16_t*)(&__MBAR[0xB070]))
-#define MCF_USB_IFR25 (*(volatile uint16_t*)(&__MBAR[0xB072]))
-#define MCF_USB_IFR26 (*(volatile uint16_t*)(&__MBAR[0xB074]))
-#define MCF_USB_IFR27 (*(volatile uint16_t*)(&__MBAR[0xB076]))
-#define MCF_USB_IFR28 (*(volatile uint16_t*)(&__MBAR[0xB078]))
-#define MCF_USB_IFR29 (*(volatile uint16_t*)(&__MBAR[0xB07A]))
-#define MCF_USB_IFR30 (*(volatile uint16_t*)(&__MBAR[0xB07C]))
-#define MCF_USB_IFR31 (*(volatile uint16_t*)(&__MBAR[0xB07E]))
-#define MCF_USB_PPCNT (*(volatile uint16_t*)(&__MBAR[0xB080]))
-#define MCF_USB_DPCNT (*(volatile uint16_t*)(&__MBAR[0xB082]))
-#define MCF_USB_CRCECNT (*(volatile uint16_t*)(&__MBAR[0xB084]))
-#define MCF_USB_BSECNT (*(volatile uint16_t*)(&__MBAR[0xB086]))
-#define MCF_USB_PIDECNT (*(volatile uint16_t*)(&__MBAR[0xB088]))
-#define MCF_USB_FRMECNT (*(volatile uint16_t*)(&__MBAR[0xB08A]))
-#define MCF_USB_TXPCNT (*(volatile uint16_t*)(&__MBAR[0xB08C]))
-#define MCF_USB_CNTOVR (*(volatile uint8_t *)(&__MBAR[0xB08E]))
-#define MCF_USB_EP0ACR (*(volatile uint8_t *)(&__MBAR[0xB101]))
-#define MCF_USB_EP0MPSR (*(volatile uint16_t*)(&__MBAR[0xB102]))
-#define MCF_USB_EP0IFR (*(volatile uint8_t *)(&__MBAR[0xB104]))
-#define MCF_USB_EP0SR (*(volatile uint8_t *)(&__MBAR[0xB105]))
-#define MCF_USB_BMRTR (*(volatile uint8_t *)(&__MBAR[0xB106]))
-#define MCF_USB_BRTR (*(volatile uint8_t *)(&__MBAR[0xB107]))
-#define MCF_USB_WVALUER (*(volatile uint16_t*)(&__MBAR[0xB108]))
-#define MCF_USB_WINDEXR (*(volatile uint16_t*)(&__MBAR[0xB10A]))
-#define MCF_USB_WLENGTHR (*(volatile uint16_t*)(&__MBAR[0xB10C]))
-#define MCF_USB_EP1OUTACR (*(volatile uint8_t *)(&__MBAR[0xB131]))
-#define MCF_USB_EP1OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB132]))
-#define MCF_USB_EP1OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB134]))
-#define MCF_USB_EP1OUTSR (*(volatile uint8_t *)(&__MBAR[0xB135]))
-#define MCF_USB_EP1OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB13E]))
-#define MCF_USB_EP1INACR (*(volatile uint8_t *)(&__MBAR[0xB149]))
-#define MCF_USB_EP1INMPSR (*(volatile uint16_t*)(&__MBAR[0xB14A]))
-#define MCF_USB_EP1INIFR (*(volatile uint8_t *)(&__MBAR[0xB14C]))
-#define MCF_USB_EP1INSR (*(volatile uint8_t *)(&__MBAR[0xB14D]))
-#define MCF_USB_EP1INSFR (*(volatile uint16_t*)(&__MBAR[0xB156]))
-#define MCF_USB_EP2OUTACR (*(volatile uint8_t *)(&__MBAR[0xB161]))
-#define MCF_USB_EP2OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB162]))
-#define MCF_USB_EP2OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB164]))
-#define MCF_USB_EP2OUTSR (*(volatile uint8_t *)(&__MBAR[0xB165]))
-#define MCF_USB_EP2OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB16E]))
-#define MCF_USB_EP2INACR (*(volatile uint8_t *)(&__MBAR[0xB179]))
-#define MCF_USB_EP2INMPSR (*(volatile uint16_t*)(&__MBAR[0xB17A]))
-#define MCF_USB_EP2INIFR (*(volatile uint8_t *)(&__MBAR[0xB17C]))
-#define MCF_USB_EP2INSR (*(volatile uint8_t *)(&__MBAR[0xB17D]))
-#define MCF_USB_EP2INSFR (*(volatile uint16_t*)(&__MBAR[0xB186]))
-#define MCF_USB_EP3OUTACR (*(volatile uint8_t *)(&__MBAR[0xB191]))
-#define MCF_USB_EP3OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB192]))
-#define MCF_USB_EP3OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB194]))
-#define MCF_USB_EP3OUTSR (*(volatile uint8_t *)(&__MBAR[0xB195]))
-#define MCF_USB_EP3OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB19E]))
-#define MCF_USB_EP3INACR (*(volatile uint8_t *)(&__MBAR[0xB1A9]))
-#define MCF_USB_EP3INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1AA]))
-#define MCF_USB_EP3INIFR (*(volatile uint8_t *)(&__MBAR[0xB1AC]))
-#define MCF_USB_EP3INSR (*(volatile uint8_t *)(&__MBAR[0xB1AD]))
-#define MCF_USB_EP3INSFR (*(volatile uint16_t*)(&__MBAR[0xB1B6]))
-#define MCF_USB_EP4OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1C1]))
-#define MCF_USB_EP4OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1C2]))
-#define MCF_USB_EP4OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1C4]))
-#define MCF_USB_EP4OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1C5]))
-#define MCF_USB_EP4OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1CE]))
-#define MCF_USB_EP4INACR (*(volatile uint8_t *)(&__MBAR[0xB1D9]))
-#define MCF_USB_EP4INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1DA]))
-#define MCF_USB_EP4INIFR (*(volatile uint8_t *)(&__MBAR[0xB1DC]))
-#define MCF_USB_EP4INSR (*(volatile uint8_t *)(&__MBAR[0xB1DD]))
-#define MCF_USB_EP4INSFR (*(volatile uint16_t*)(&__MBAR[0xB1E6]))
-#define MCF_USB_EP5OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1F1]))
-#define MCF_USB_EP5OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1F2]))
-#define MCF_USB_EP5OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1F4]))
-#define MCF_USB_EP5OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1F5]))
-#define MCF_USB_EP5OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1FE]))
-#define MCF_USB_EP5INACR (*(volatile uint8_t *)(&__MBAR[0xB209]))
-#define MCF_USB_EP5INMPSR (*(volatile uint16_t*)(&__MBAR[0xB20A]))
-#define MCF_USB_EP5INIFR (*(volatile uint8_t *)(&__MBAR[0xB20C]))
-#define MCF_USB_EP5INSR (*(volatile uint8_t *)(&__MBAR[0xB20D]))
-#define MCF_USB_EP5INSFR (*(volatile uint16_t*)(&__MBAR[0xB216]))
-#define MCF_USB_EP6OUTACR (*(volatile uint8_t *)(&__MBAR[0xB221]))
-#define MCF_USB_EP6OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB222]))
-#define MCF_USB_EP6OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB224]))
-#define MCF_USB_EP6OUTSR (*(volatile uint8_t *)(&__MBAR[0xB225]))
-#define MCF_USB_EP6OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB22E]))
-#define MCF_USB_EP6INACR (*(volatile uint8_t *)(&__MBAR[0xB239]))
-#define MCF_USB_EP6INMPSR (*(volatile uint16_t*)(&__MBAR[0xB23A]))
-#define MCF_USB_EP6INIFR (*(volatile uint8_t *)(&__MBAR[0xB23C]))
-#define MCF_USB_EP6INSR (*(volatile uint8_t *)(&__MBAR[0xB23D]))
-#define MCF_USB_EP6INSFR (*(volatile uint16_t*)(&__MBAR[0xB246]))
-#define MCF_USB_USBSR (*(volatile uint32_t*)(&__MBAR[0xB400]))
-#define MCF_USB_USBCR (*(volatile uint32_t*)(&__MBAR[0xB404]))
-#define MCF_USB_DRAMCR (*(volatile uint32_t*)(&__MBAR[0xB408]))
-#define MCF_USB_DRAMDR (*(volatile uint32_t*)(&__MBAR[0xB40C]))
-#define MCF_USB_USBISR (*(volatile uint32_t*)(&__MBAR[0xB410]))
-#define MCF_USB_USBIMR (*(volatile uint32_t*)(&__MBAR[0xB414]))
-#define MCF_USB_EP0STAT (*(volatile uint32_t*)(&__MBAR[0xB440]))
-#define MCF_USB_EP0ISR (*(volatile uint32_t*)(&__MBAR[0xB444]))
-#define MCF_USB_EP0IMR (*(volatile uint32_t*)(&__MBAR[0xB448]))
-#define MCF_USB_EP0FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB44C]))
-#define MCF_USB_EP0FDR (*(volatile uint32_t*)(&__MBAR[0xB450]))
-#define MCF_USB_EP0FSR (*(volatile uint32_t*)(&__MBAR[0xB454]))
-#define MCF_USB_EP0FCR (*(volatile uint32_t*)(&__MBAR[0xB458]))
-#define MCF_USB_EP0FAR (*(volatile uint32_t*)(&__MBAR[0xB45C]))
-#define MCF_USB_EP0FRP (*(volatile uint32_t*)(&__MBAR[0xB460]))
-#define MCF_USB_EP0FWP (*(volatile uint32_t*)(&__MBAR[0xB464]))
-#define MCF_USB_EP0LRFP (*(volatile uint32_t*)(&__MBAR[0xB468]))
-#define MCF_USB_EP0LWFP (*(volatile uint32_t*)(&__MBAR[0xB46C]))
-#define MCF_USB_EP1STAT (*(volatile uint32_t*)(&__MBAR[0xB470]))
-#define MCF_USB_EP1ISR (*(volatile uint32_t*)(&__MBAR[0xB474]))
-#define MCF_USB_EP1IMR (*(volatile uint32_t*)(&__MBAR[0xB478]))
-#define MCF_USB_EP1FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB47C]))
-#define MCF_USB_EP1FDR (*(volatile uint32_t*)(&__MBAR[0xB480]))
-#define MCF_USB_EP1FSR (*(volatile uint32_t*)(&__MBAR[0xB484]))
-#define MCF_USB_EP1FCR (*(volatile uint32_t*)(&__MBAR[0xB488]))
-#define MCF_USB_EP1FAR (*(volatile uint32_t*)(&__MBAR[0xB48C]))
-#define MCF_USB_EP1FRP (*(volatile uint32_t*)(&__MBAR[0xB490]))
-#define MCF_USB_EP1FWP (*(volatile uint32_t*)(&__MBAR[0xB494]))
-#define MCF_USB_EP1LRFP (*(volatile uint32_t*)(&__MBAR[0xB498]))
-#define MCF_USB_EP1LWFP (*(volatile uint32_t*)(&__MBAR[0xB49C]))
-#define MCF_USB_EP2STAT (*(volatile uint32_t*)(&__MBAR[0xB4A0]))
-#define MCF_USB_EP2ISR (*(volatile uint32_t*)(&__MBAR[0xB4A4]))
-#define MCF_USB_EP2IMR (*(volatile uint32_t*)(&__MBAR[0xB4A8]))
-#define MCF_USB_EP2FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4AC]))
-#define MCF_USB_EP2FDR (*(volatile uint32_t*)(&__MBAR[0xB4B0]))
-#define MCF_USB_EP2FSR (*(volatile uint32_t*)(&__MBAR[0xB4B4]))
-#define MCF_USB_EP2FCR (*(volatile uint32_t*)(&__MBAR[0xB4B8]))
-#define MCF_USB_EP2FAR (*(volatile uint32_t*)(&__MBAR[0xB4BC]))
-#define MCF_USB_EP2FRP (*(volatile uint32_t*)(&__MBAR[0xB4C0]))
-#define MCF_USB_EP2FWP (*(volatile uint32_t*)(&__MBAR[0xB4C4]))
-#define MCF_USB_EP2LRFP (*(volatile uint32_t*)(&__MBAR[0xB4C8]))
-#define MCF_USB_EP2LWFP (*(volatile uint32_t*)(&__MBAR[0xB4CC]))
-#define MCF_USB_EP3STAT (*(volatile uint32_t*)(&__MBAR[0xB4D0]))
-#define MCF_USB_EP3ISR (*(volatile uint32_t*)(&__MBAR[0xB4D4]))
-#define MCF_USB_EP3IMR (*(volatile uint32_t*)(&__MBAR[0xB4D8]))
-#define MCF_USB_EP3FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4DC]))
-#define MCF_USB_EP3FDR (*(volatile uint32_t*)(&__MBAR[0xB4E0]))
-#define MCF_USB_EP3FSR (*(volatile uint32_t*)(&__MBAR[0xB4E4]))
-#define MCF_USB_EP3FCR (*(volatile uint32_t*)(&__MBAR[0xB4E8]))
-#define MCF_USB_EP3FAR (*(volatile uint32_t*)(&__MBAR[0xB4EC]))
-#define MCF_USB_EP3FRP (*(volatile uint32_t*)(&__MBAR[0xB4F0]))
-#define MCF_USB_EP3FWP (*(volatile uint32_t*)(&__MBAR[0xB4F4]))
-#define MCF_USB_EP3LRFP (*(volatile uint32_t*)(&__MBAR[0xB4F8]))
-#define MCF_USB_EP3LWFP (*(volatile uint32_t*)(&__MBAR[0xB4FC]))
-#define MCF_USB_EP4STAT (*(volatile uint32_t*)(&__MBAR[0xB500]))
-#define MCF_USB_EP4ISR (*(volatile uint32_t*)(&__MBAR[0xB504]))
-#define MCF_USB_EP4IMR (*(volatile uint32_t*)(&__MBAR[0xB508]))
-#define MCF_USB_EP4FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB50C]))
-#define MCF_USB_EP4FDR (*(volatile uint32_t*)(&__MBAR[0xB510]))
-#define MCF_USB_EP4FSR (*(volatile uint32_t*)(&__MBAR[0xB514]))
-#define MCF_USB_EP4FCR (*(volatile uint32_t*)(&__MBAR[0xB518]))
-#define MCF_USB_EP4FAR (*(volatile uint32_t*)(&__MBAR[0xB51C]))
-#define MCF_USB_EP4FRP (*(volatile uint32_t*)(&__MBAR[0xB520]))
-#define MCF_USB_EP4FWP (*(volatile uint32_t*)(&__MBAR[0xB524]))
-#define MCF_USB_EP4LRFP (*(volatile uint32_t*)(&__MBAR[0xB528]))
-#define MCF_USB_EP4LWFP (*(volatile uint32_t*)(&__MBAR[0xB52C]))
-#define MCF_USB_EP5STAT (*(volatile uint32_t*)(&__MBAR[0xB530]))
-#define MCF_USB_EP5ISR (*(volatile uint32_t*)(&__MBAR[0xB534]))
-#define MCF_USB_EP5IMR (*(volatile uint32_t*)(&__MBAR[0xB538]))
-#define MCF_USB_EP5FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB53C]))
-#define MCF_USB_EP5FDR (*(volatile uint32_t*)(&__MBAR[0xB540]))
-#define MCF_USB_EP5FSR (*(volatile uint32_t*)(&__MBAR[0xB544]))
-#define MCF_USB_EP5FCR (*(volatile uint32_t*)(&__MBAR[0xB548]))
-#define MCF_USB_EP5FAR (*(volatile uint32_t*)(&__MBAR[0xB54C]))
-#define MCF_USB_EP5FRP (*(volatile uint32_t*)(&__MBAR[0xB550]))
-#define MCF_USB_EP5FWP (*(volatile uint32_t*)(&__MBAR[0xB554]))
-#define MCF_USB_EP5LRFP (*(volatile uint32_t*)(&__MBAR[0xB558]))
-#define MCF_USB_EP5LWFP (*(volatile uint32_t*)(&__MBAR[0xB55C]))
-#define MCF_USB_EP6STAT (*(volatile uint32_t*)(&__MBAR[0xB560]))
-#define MCF_USB_EP6ISR (*(volatile uint32_t*)(&__MBAR[0xB564]))
-#define MCF_USB_EP6IMR (*(volatile uint32_t*)(&__MBAR[0xB568]))
-#define MCF_USB_EP6FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB56C]))
-#define MCF_USB_EP6FDR (*(volatile uint32_t*)(&__MBAR[0xB570]))
-#define MCF_USB_EP6FSR (*(volatile uint32_t*)(&__MBAR[0xB574]))
-#define MCF_USB_EP6FCR (*(volatile uint32_t*)(&__MBAR[0xB578]))
-#define MCF_USB_EP6FAR (*(volatile uint32_t*)(&__MBAR[0xB57C]))
-#define MCF_USB_EP6FRP (*(volatile uint32_t*)(&__MBAR[0xB580]))
-#define MCF_USB_EP6FWP (*(volatile uint32_t*)(&__MBAR[0xB584]))
-#define MCF_USB_EP6LRFP (*(volatile uint32_t*)(&__MBAR[0xB588]))
-#define MCF_USB_EP6LWFP (*(volatile uint32_t*)(&__MBAR[0xB58C]))
-#define MCF_USB_IFR(x) (*(volatile uint16_t*)(&__MBAR[0xB040 + ((x)*0x2)]))
-#define MCF_USB_EPOUTACR(x) (*(volatile uint8_t *)(&__MBAR[0xB131 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB132 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB134 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSR(x) (*(volatile uint8_t *)(&__MBAR[0xB135 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB13E + ((x-1)*0x30)]))
-#define MCF_USB_EPINACR(x) (*(volatile uint8_t *)(&__MBAR[0xB149 + ((x-1)*0x30)]))
-#define MCF_USB_EPINMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB14A + ((x-1)*0x30)]))
-#define MCF_USB_EPINIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB14C + ((x-1)*0x30)]))
-#define MCF_USB_EPINSR(x) (*(volatile uint8_t *)(&__MBAR[0xB14D + ((x-1)*0x30)]))
-#define MCF_USB_EPINSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB156 + ((x-1)*0x30)]))
-#define MCF_USB_EPSTAT(x) (*(volatile uint32_t*)(&__MBAR[0xB440 + ((x)*0x30)]))
-#define MCF_USB_EPISR(x) (*(volatile uint32_t*)(&__MBAR[0xB444 + ((x)*0x30)]))
-#define MCF_USB_EPIMR(x) (*(volatile uint32_t*)(&__MBAR[0xB448 + ((x)*0x30)]))
-#define MCF_USB_EPFRCFGR(x) (*(volatile uint32_t*)(&__MBAR[0xB44C + ((x)*0x30)]))
-#define MCF_USB_EPFDR(x) (*(volatile uint32_t*)(&__MBAR[0xB450 + ((x)*0x30)]))
-#define MCF_USB_EPFSR(x) (*(volatile uint32_t*)(&__MBAR[0xB454 + ((x)*0x30)]))
-#define MCF_USB_EPFCR(x) (*(volatile uint32_t*)(&__MBAR[0xB458 + ((x)*0x30)]))
-#define MCF_USB_EPFAR(x) (*(volatile uint32_t*)(&__MBAR[0xB45C + ((x)*0x30)]))
-#define MCF_USB_EPFRP(x) (*(volatile uint32_t*)(&__MBAR[0xB460 + ((x)*0x30)]))
-#define MCF_USB_EPFWP(x) (*(volatile uint32_t*)(&__MBAR[0xB464 + ((x)*0x30)]))
-#define MCF_USB_EPLRFP(x) (*(volatile uint32_t*)(&__MBAR[0xB468 + ((x)*0x30)]))
-#define MCF_USB_EPLWFP(x) (*(volatile uint32_t*)(&__MBAR[0xB46C + ((x)*0x30)]))
-
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x1)
-#define MCF_USB_USBAISR_IN (0x2)
-#define MCF_USB_USBAISR_OUT (0x4)
-#define MCF_USB_USBAISR_EPHALT (0x8)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x1)
-#define MCF_USB_USBAIMR_INEN (0x2)
-#define MCF_USB_USBAIMR_OUTEN (0x4)
-#define MCF_USB_USBAIMR_EPHALTEN (0x8)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x1)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x7)<<0x1)
-
-/* Bit definitions and macros for MCF_USB_CFGR */
-#define MCF_USB_CFGR_Configuration_Value(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_SPEED(x) (((x)&0x3)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x3)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x3)<<0x2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x3)<<0x4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x3)<<0x6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x3)<<0x8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x3)<<0xA)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (0x1)
-#define MCF_USB_EPTNR_EPnT3 (0x2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_IFR */
-#define MCF_USB_IFR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_PPCNT */
-#define MCF_USB_PPCNT_PPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_DPCNT */
-#define MCF_USB_DPCNT_DPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CRCECNT */
-#define MCF_USB_CRCECNT_CRCECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_BSECNT */
-#define MCF_USB_BSECNT_BSECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_PIDECNT */
-#define MCF_USB_PIDECNT_PIDECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMECNT */
-#define MCF_USB_FRMECNT_FRMECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_TXPCNT */
-#define MCF_USB_TXPCNT_TXPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x1)
-#define MCF_USB_CNTOVR_DPCNT (0x2)
-#define MCF_USB_CNTOVR_CRCECNT (0x4)
-#define MCF_USB_CNTOVR_BSECNT (0x8)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (0x2)
-#define MCF_USB_EP0ACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EP0IFR */
-#define MCF_USB_EP0IFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x1)
-#define MCF_USB_EP0SR_ACTIVE (0x2)
-#define MCF_USB_EP0SR_PSTALL (0x4)
-#define MCF_USB_EP0SR_CCOMP (0x8)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_REC(x) (((x)&0x1F)<<0)
-#define MCF_USB_BMRTR_REC_DEVICE (0)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x1)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x2)
-#define MCF_USB_BMRTR_REC_OTHER (0x3)
-#define MCF_USB_BMRTR_TYPE(x) (((x)&0x3)<<0x5)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_DIR (0x80)
-
-/* Bit definitions and macros for MCF_USB_BRTR */
-#define MCF_USB_BRTR_BREQ(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WVALUER */
-#define MCF_USB_WVALUER_WVALUE(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WINDEXR */
-#define MCF_USB_WINDEXR_WINDEX(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WLENGTHR */
-#define MCF_USB_WLENGTHR_WLENGTH(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTACR */
-#define MCF_USB_EPOUTACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPOUTACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPOUTACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPOUTACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPOUTMPSR */
-#define MCF_USB_EPOUTMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPOUTMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPOUTIFR */
-#define MCF_USB_EPOUTIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSR */
-#define MCF_USB_EPOUTSR_HALT (0x1)
-#define MCF_USB_EPOUTSR_ACTIVE (0x2)
-#define MCF_USB_EPOUTSR_PSTALL (0x4)
-#define MCF_USB_EPOUTSR_CCOMP (0x8)
-#define MCF_USB_EPOUTSR_TXZERO (0x20)
-#define MCF_USB_EPOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSFR */
-#define MCF_USB_EPOUTSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINACR */
-#define MCF_USB_EPINACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPINACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPINACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPINACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPINMPSR */
-#define MCF_USB_EPINMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPINMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPINIFR */
-#define MCF_USB_EPINIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINSR */
-#define MCF_USB_EPINSR_HALT (0x1)
-#define MCF_USB_EPINSR_ACTIVE (0x2)
-#define MCF_USB_EPINSR_PSTALL (0x4)
-#define MCF_USB_EPINSR_CCOMP (0x8)
-#define MCF_USB_EPINSR_TXZERO (0x20)
-#define MCF_USB_EPINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINSFR */
-#define MCF_USB_EPINSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_ISOERREP(x) (((x)&0xF)<<0)
-#define MCF_USB_USBSR_SUSP (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x1)
-#define MCF_USB_USBCR_APPLOCK (0x2)
-#define MCF_USB_USBCR_RST (0x4)
-#define MCF_USB_USBCR_RAMEN (0x8)
-#define MCF_USB_USBCR_RAMSPLIT (0x20)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x3FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x7FF)<<0x10)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x1)
-#define MCF_USB_USBISR_FTUNLCK (0x2)
-#define MCF_USB_USBISR_SUSP (0x4)
-#define MCF_USB_USBISR_RES (0x8)
-#define MCF_USB_USBISR_UPDSOF (0x10)
-#define MCF_USB_USBISR_RSTSTOP (0x20)
-#define MCF_USB_USBISR_SOF (0x40)
-#define MCF_USB_USBISR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x1)
-#define MCF_USB_USBIMR_FTUNLCK (0x2)
-#define MCF_USB_USBIMR_SUSP (0x4)
-#define MCF_USB_USBIMR_RES (0x8)
-#define MCF_USB_USBIMR_UPDSOF (0x10)
-#define MCF_USB_USBIMR_RSTSTOP (0x20)
-#define MCF_USB_USBIMR_SOF (0x40)
-#define MCF_USB_USBIMR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPSTAT */
-#define MCF_USB_EPSTAT_RST (0x1)
-#define MCF_USB_EPSTAT_FLUSH (0x2)
-#define MCF_USB_EPSTAT_DIR (0x80)
-#define MCF_USB_EPSTAT_BYTECNT(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPISR */
-#define MCF_USB_EPISR_EOF (0x1)
-#define MCF_USB_EPISR_EOT (0x4)
-#define MCF_USB_EPISR_FIFOLO (0x10)
-#define MCF_USB_EPISR_FIFOHI (0x20)
-#define MCF_USB_EPISR_ERR (0x40)
-#define MCF_USB_EPISR_EMT (0x80)
-#define MCF_USB_EPISR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPIMR */
-#define MCF_USB_EPIMR_EOF (0x1)
-#define MCF_USB_EPIMR_EOT (0x4)
-#define MCF_USB_EPIMR_FIFOLO (0x10)
-#define MCF_USB_EPIMR_FIFOHI (0x20)
-#define MCF_USB_EPIMR_ERR (0x40)
-#define MCF_USB_EPIMR_EMT (0x80)
-#define MCF_USB_EPIMR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPFRCFGR */
-#define MCF_USB_EPFRCFGR_DEPTH(x) (((x)&0x1FFF)<<0)
-#define MCF_USB_EPFRCFGR_BASE(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPFDR */
-#define MCF_USB_EPFDR_RX_TXDATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFSR */
-#define MCF_USB_EPFSR_EMT (0x10000)
-#define MCF_USB_EPFSR_ALRM (0x20000)
-#define MCF_USB_EPFSR_FU (0x40000)
-#define MCF_USB_EPFSR_FR (0x80000)
-#define MCF_USB_EPFSR_OF (0x100000)
-#define MCF_USB_EPFSR_UF (0x200000)
-#define MCF_USB_EPFSR_RXW (0x400000)
-#define MCF_USB_EPFSR_FAE (0x800000)
-#define MCF_USB_EPFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_USB_EPFSR_TXW (0x40000000)
-#define MCF_USB_EPFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFCR */
-#define MCF_USB_EPFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_USB_EPFCR_TXWMSK (0x40000)
-#define MCF_USB_EPFCR_OFMSK (0x80000)
-#define MCF_USB_EPFCR_UFMSK (0x100000)
-#define MCF_USB_EPFCR_RXWMSK (0x200000)
-#define MCF_USB_EPFCR_FAEMSK (0x400000)
-#define MCF_USB_EPFCR_IPMSK (0x800000)
-#define MCF_USB_EPFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_USB_EPFCR_FRM (0x8000000)
-#define MCF_USB_EPFCR_TMR (0x10000000)
-#define MCF_USB_EPFCR_WFR (0x20000000)
-#define MCF_USB_EPFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFAR */
-#define MCF_USB_EPFAR_ALRMP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFRP */
-#define MCF_USB_EPFRP_RP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFWP */
-#define MCF_USB_EPFWP_WP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLRFP */
-#define MCF_USB_EPLRFP_LRFP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLWFP */
-#define MCF_USB_EPLWFP_LWFP(x) (((x)&0xFFF)<<0)
-
-
-#endif /* __MCF5475_USB_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/MCF5475_XLB.h b/BaS_gcc/tos/pci_test/include/MCF5475_XLB.h
deleted file mode 100644
index af25ae7..0000000
--- a/BaS_gcc/tos/pci_test/include/MCF5475_XLB.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_XLB_H__
-#define __MCF5475_XLB_H__
-
-
-/*********************************************************************
-*
-* XL Bus Arbiter (XLB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_XLB_XARB_CFG (*(volatile uint32_t*)(&_MBAR[0x240]))
-#define MCF_XLB_XARB_VER (*(volatile uint32_t*)(&_MBAR[0x244]))
-#define MCF_XLB_XARB_SR (*(volatile uint32_t*)(&_MBAR[0x248]))
-#define MCF_XLB_XARB_IMR (*(volatile uint32_t*)(&_MBAR[0x24C]))
-#define MCF_XLB_XARB_ADRCAP (*(volatile uint32_t*)(&_MBAR[0x250]))
-#define MCF_XLB_XARB_SIGCAP (*(volatile uint32_t*)(&_MBAR[0x254]))
-#define MCF_XLB_XARB_ADRTO (*(volatile uint32_t*)(&_MBAR[0x258]))
-#define MCF_XLB_XARB_DATTO (*(volatile uint32_t*)(&_MBAR[0x25C]))
-#define MCF_XLB_XARB_BUSTO (*(volatile uint32_t*)(&_MBAR[0x260]))
-#define MCF_XLB_XARB_PRIEN (*(volatile uint32_t*)(&_MBAR[0x264]))
-#define MCF_XLB_XARB_PRI (*(volatile uint32_t*)(&_MBAR[0x268]))
-
-
-/* Bit definitions and macros for MCF_XLB_XARB_CFG */
-#define MCF_XLB_XARB_CFG_AT (0x2)
-#define MCF_XLB_XARB_CFG_DT (0x4)
-#define MCF_XLB_XARB_CFG_BA (0x8)
-#define MCF_XLB_XARB_CFG_PM(x) (((x)&0x3)<<0x5)
-#define MCF_XLB_XARB_CFG_SP(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_CFG_PLDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_XLB_XARB_VER */
-#define MCF_XLB_XARB_VER_VER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SR */
-#define MCF_XLB_XARB_SR_AT (0x1)
-#define MCF_XLB_XARB_SR_DT (0x2)
-#define MCF_XLB_XARB_SR_BA (0x4)
-#define MCF_XLB_XARB_SR_TTM (0x8)
-#define MCF_XLB_XARB_SR_ECW (0x10)
-#define MCF_XLB_XARB_SR_TTR (0x20)
-#define MCF_XLB_XARB_SR_TTA (0x40)
-#define MCF_XLB_XARB_SR_MM (0x80)
-#define MCF_XLB_XARB_SR_SEA (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_IMR */
-#define MCF_XLB_XARB_IMR_ATE (0x1)
-#define MCF_XLB_XARB_IMR_DTE (0x2)
-#define MCF_XLB_XARB_IMR_BAE (0x4)
-#define MCF_XLB_XARB_IMR_TTME (0x8)
-#define MCF_XLB_XARB_IMR_ECWE (0x10)
-#define MCF_XLB_XARB_IMR_TTRE (0x20)
-#define MCF_XLB_XARB_IMR_TTAE (0x40)
-#define MCF_XLB_XARB_IMR_MME (0x80)
-#define MCF_XLB_XARB_IMR_SEAE (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRCAP */
-#define MCF_XLB_XARB_ADRCAP_ADRCAP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SIGCAP */
-#define MCF_XLB_XARB_SIGCAP_TT(x) (((x)&0x1F)<<0)
-#define MCF_XLB_XARB_SIGCAP_TBST (0x20)
-#define MCF_XLB_XARB_SIGCAP_TSIZ(x) (((x)&0x7)<<0x7)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRTO */
-#define MCF_XLB_XARB_ADRTO_ADRTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_DATTO */
-#define MCF_XLB_XARB_DATTO_DATTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_BUSTO */
-#define MCF_XLB_XARB_BUSTO_BUSTO(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRIEN */
-#define MCF_XLB_XARB_PRIEN_M0 (0x1)
-#define MCF_XLB_XARB_PRIEN_M2 (0x4)
-#define MCF_XLB_XARB_PRIEN_M3 (0x8)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRI */
-#define MCF_XLB_XARB_PRI_M0P(x) (((x)&0x7)<<0)
-#define MCF_XLB_XARB_PRI_M2P(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_PRI_M3P(x) (((x)&0x7)<<0xC)
-
-
-#endif /* __MCF5475_XLB_H__ */
diff --git a/BaS_gcc/tos/pci_test/include/bas_string.h b/BaS_gcc/tos/pci_test/include/bas_string.h
deleted file mode 100644
index c743c95..0000000
--- a/BaS_gcc/tos/pci_test/include/bas_string.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * bas_string.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef BAS_STRING_H_
-#define BAS_STRING_H_
-
-#include
-
-extern int strncmp(const char *s1, const char *s2, size_t max);
-extern char *strcpy(char *dst, const char *src);
-char *strncpy(char *dst, const char *src, size_t max);
-extern int strcmp(const char *s1, const char *s2);
-extern size_t strlen(const char *str);
-extern char *strcat(char *dst, const char *src);
-extern char *strncat(char *dst, const char *src, size_t max);
-extern int atoi(const char *c);
-extern void *memcpy(void *dst, const void *src, size_t n);
-extern void *memset(void *s, int c, size_t n);
-extern int memcmp(const void *s1, const void *s2, size_t max);
-extern void bzero(void *s, size_t n);
-
-#define isdigit(c) (((c) >= '0') && ((c) <= '9'))
-#define isupper(c) ((c) >= 'A' && ((c) <= 'Z'))
-#define islower(c) ((c) >= 'a' && ((c) <= 'z'))
-#define isalpha(c) (isupper((c)) || islower(c))
-#define tolower(c) (isupper(c) ? ((c) + 'a' - 'A') : (c))
-
-#endif /* BAS_STRING_H_ */
diff --git a/BaS_gcc/tos/pci_test/include/bas_types.h b/BaS_gcc/tos/pci_test/include/bas_types.h
deleted file mode 100644
index 4f692a1..0000000
--- a/BaS_gcc/tos/pci_test/include/bas_types.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * bas_types.h
- *
- * Created on: 17.11.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#ifndef BAS_TYPES_H_
-#define BAS_TYPES_H_
-
-#include
-#include
-#include /* for sizeof() etc. */
-
-#endif /* BAS_TYPES_H_ */
diff --git a/BaS_gcc/tos/pci_test/include/driver_vec.h b/BaS_gcc/tos/pci_test/include/driver_vec.h
deleted file mode 100644
index 06220ef..0000000
--- a/BaS_gcc/tos/pci_test/include/driver_vec.h
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * driver_vec.h
- *
- * Interface for exposure of BaS drivers to the OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DRIVER_VEC_H_
-#define _DRIVER_VEC_H_
-
-#include "pci.h"
-
-enum driver_type
-{
- BLOCKDEV_DRIVER,
- CHARDEV_DRIVER,
- XHDI_DRIVER,
- MCD_DRIVER,
- VIDEO_DRIVER,
- PCI_DRIVER,
- MMU_DRIVER,
- PCI_NATIVE_DRIVER,
- END_OF_DRIVERS = 0xffffffffL, /* marks end of driver list */
-};
-
-struct generic_driver_interface
-{
- uint32_t (*init)(void);
- uint32_t (*read)(void *buf, size_t count);
- uint32_t (*write)(const void *buf, size_t count);
- uint32_t (*ioctl)(uint32_t request, ...);
-};
-
-struct dma_driver_interface
-{
- int32_t version;
- int32_t magic;
- int (*dma_set_initiator)(int initiator);
- uint32_t (*dma_get_initiator)(int requestor);
- void (*dma_free_initiator)(int requestor);
- int (*dma_set_channel)(int requestor, void (*handler)(void));
- int (*dma_get_channel)(int requestor);
- void (*dma_free_channel)(int requestor);
- void (*dma_clear_channel)(int channel);
- int (*MCD_startDma)(long channel,
- int8_t *srcAddr, unsigned int srcIncr, int8_t *destAddr, unsigned int destIncr,
- unsigned int dmaSize, unsigned int xferSize, unsigned int initiator, int priority,
- unsigned int flags, unsigned int funcDesc);
- int32_t (*MCD_dmaStatus)(int32_t channel);
- int32_t (*MCD_XferProgrQuery)(int32_t channel, /* MCD_XferProg */ void *progRep);
- int32_t (*MCD_killDma)(int32_t channel);
- int32_t (*MCD_continDma)(int32_t channel);
- int32_t (*MCD_pauseDma)(int32_t channel);
- int32_t (*MCD_resumeDma)(int32_t channel);
- int32_t (*MCD_csumQuery)(int32_t channel, uint32_t *csum);
- void *(*dma_malloc)(uint32_t amount);
- int32_t (*dma_free)(void *addr);
-};
-
-struct xhdi_driver_interface
-{
- uint32_t (*xhdivec)();
-};
-
-/*
- * Interpretation of offset for color fields: All offsets are from the right,
- * inside a "pixel" value, which is exactly 'bits_per_pixel' wide (means: you
- * can use the offset as right argument to <<). A pixel afterwards is a bit
- * stream and is written to video memory as that unmodified. This implies
- * big-endian byte order if bits_per_pixel is greater than 8.
- */
-struct fb_bitfield
-{
- unsigned long offset; /* beginning of bitfield */
- unsigned long length; /* length of bitfield */
- unsigned long msb_right; /* != 0 : Most significant bit is */
- /* right */
-};
-
-/*
- * the following structures define the interface to the BaS-builtin-framebuffer video driver
- */
-struct fb_var_screeninfo
-{
- unsigned long xres; /* visible resolution */
- unsigned long yres;
- unsigned long xres_virtual; /* virtual resolution */
- unsigned long yres_virtual;
- unsigned long xoffset; /* offset from virtual to visible */
- unsigned long yoffset; /* resolution */
-
- unsigned long bits_per_pixel; /* guess what */
- unsigned long grayscale; /* != 0 Graylevels instead of colors */
-
- struct fb_bitfield red; /* bitfield in fb mem if true color, */
- struct fb_bitfield green; /* else only length is significant */
- struct fb_bitfield blue;
- struct fb_bitfield transp; /* transparency */
-
- unsigned long nonstd; /* != 0 Non standard pixel format */
-
- unsigned long activate; /* see FB_ACTIVATE_* */
-
- unsigned long height; /* height of picture in mm */
- unsigned long width; /* width of picture in mm */
-
- unsigned long accel_flags; /* (OBSOLETE) see fb_info.flags */
-
- /* Timing: All values in pixclocks, except pixclock (of course) */
- unsigned long pixclock; /* pixel clock in ps (pico seconds) */
- unsigned long left_margin; /* time from sync to picture */
- unsigned long right_margin; /* time from picture to sync */
- unsigned long upper_margin; /* time from sync to picture */
- unsigned long lower_margin;
- unsigned long hsync_len; /* length of horizontal sync */
- unsigned long vsync_len; /* length of vertical sync */
- unsigned long sync; /* see FB_SYNC_* */
- unsigned long vmode; /* see FB_VMODE_* */
- unsigned long rotate; /* angle we rotate counter clockwise */
- unsigned long refresh;
- unsigned long reserved[4]; /* Reserved for future compatibility */
-};
-
-struct fb_fix_screeninfo
-{
- char id[16]; /* identification string eg "TT Builtin" */
- unsigned long smem_start; /* Start of frame buffer mem */
- /* (physical address) */
- unsigned long smem_len; /* Length of frame buffer mem */
- unsigned long type; /* see FB_TYPE_* */
- unsigned long type_aux; /* Interleave for interleaved Planes */
- unsigned long visual; /* see FB_VISUAL_* */
- unsigned short xpanstep; /* zero if no hardware panning */
- unsigned short ypanstep; /* zero if no hardware panning */
- unsigned short ywrapstep; /* zero if no hardware ywrap */
- unsigned long line_length; /* length of a line in bytes */
- unsigned long mmio_start; /* Start of Memory Mapped I/O */
- /* (physical address) */
- unsigned long mmio_len; /* Length of Memory Mapped I/O */
- unsigned long accel; /* Indicate to driver which */
- /* specific chip/card we have */
- unsigned short reserved[3]; /* Reserved for future compatibility */
-};
-
-struct fb_chroma
-{
- unsigned long redx; /* in fraction of 1024 */
- unsigned long greenx;
- unsigned long bluex;
- unsigned long whitex;
- unsigned long redy;
- unsigned long greeny;
- unsigned long bluey;
- unsigned long whitey;
-};
-
-struct fb_monspecs
-{
- struct fb_chroma chroma;
- struct fb_videomode *modedb; /* mode database */
- unsigned char manufacturer[4]; /* Manufacturer */
- unsigned char monitor[14]; /* Monitor String */
- unsigned char serial_no[14]; /* Serial Number */
- unsigned char ascii[14]; /* ? */
- unsigned long modedb_len; /* mode database length */
- unsigned long model; /* Monitor Model */
- unsigned long serial; /* Serial Number - Integer */
- unsigned long year; /* Year manufactured */
- unsigned long week; /* Week Manufactured */
- unsigned long hfmin; /* hfreq lower limit (Hz) */
- unsigned long hfmax; /* hfreq upper limit (Hz) */
- unsigned long dclkmin; /* pixelclock lower limit (Hz) */
- unsigned long dclkmax; /* pixelclock upper limit (Hz) */
- unsigned short input; /* display type - see FB_DISP_* */
- unsigned short dpms; /* DPMS support - see FB_DPMS_ */
- unsigned short signal; /* Signal Type - see FB_SIGNAL_* */
- unsigned short vfmin; /* vfreq lower limit (Hz) */
- unsigned short vfmax; /* vfreq upper limit (Hz) */
- unsigned short gamma; /* Gamma - in fractions of 100 */
- unsigned short gtf : 1; /* supports GTF */
- unsigned short misc; /* Misc flags - see FB_MISC_* */
- unsigned char version; /* EDID version... */
- unsigned char revision; /* ...and revision */
- unsigned char max_x; /* Maximum horizontal size (cm) */
- unsigned char max_y; /* Maximum vertical size (cm) */
-};
-
-struct framebuffer_driver_interface
-{
- struct fb_info **framebuffer_info; /* pointer to an fb_info struct (defined in include/fb.h) */
-};
-
-
-struct pci_bios_interface
-{
- uint32_t subjar;
- uint32_t version;
- /* Although we declare this functions as standard gcc functions (cdecl),
- * they expect parameters inside registers (fastcall) unsupported by gcc m68k.
- * Caller will take care of parameters passing convention.
- */
- int32_t (*find_pci_device)(uint32_t id, uint16_t index);
- int32_t (*find_pci_classcode)(uint32_t class, uint16_t index);
- int32_t (*read_config_byte)(int32_t handle, uint16_t reg, uint8_t *address);
- int32_t (*read_config_word)(int32_t handle, uint16_t reg, uint16_t *address);
- int32_t (*read_config_longword)(int32_t handle, uint16_t reg, uint32_t *address);
- uint8_t (*fast_read_config_byte)(int32_t handle, uint16_t reg);
- uint16_t (*fast_read_config_word)(int32_t handle, uint16_t reg);
- uint32_t (*fast_read_config_longword)(int32_t handle, uint16_t reg);
- int32_t (*write_config_byte)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_word)(int32_t handle, uint16_t reg, uint16_t val);
- int32_t (*write_config_longword)(int32_t handle, uint16_t reg, uint32_t val);
- int32_t (*hook_interrupt)(int32_t handle, uint32_t *routine, uint32_t *parameter);
- int32_t (*unhook_interrupt)(int32_t handle);
- int32_t (*special_cycle)(uint16_t bus, uint32_t data);
- int32_t (*get_routing)(int32_t handle);
- int32_t (*set_interrupt)(int32_t handle);
- int32_t (*get_resource)(int32_t handle);
- int32_t (*get_card_used)(int32_t handle, uint32_t *address);
- int32_t (*set_card_used)(int32_t handle, uint32_t *callback);
- int32_t (*read_mem_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_mem_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_mem_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_mem_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_mem_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_mem_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_mem_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_mem_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*read_io_byte)(int32_t handle, uint32_t offset, uint8_t *address);
- int32_t (*read_io_word)(int32_t handle, uint32_t offset, uint16_t *address);
- int32_t (*read_io_longword)(int32_t handle, uint32_t offset, uint32_t *address);
- uint8_t (*fast_read_io_byte)(int32_t handle, uint32_t offset);
- uint16_t (*fast_read_io_word)(int32_t handle, uint32_t offset);
- uint32_t (*fast_read_io_longword)(int32_t handle, uint32_t offset);
- int32_t (*write_io_byte)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_word)(int32_t handle, uint32_t offset, uint16_t val);
- int32_t (*write_io_longword)(int32_t handle, uint32_t offset, uint32_t val);
- int32_t (*get_machine_id)(void);
- int32_t (*get_pagesize)(void);
- int32_t (*virt_to_bus)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*bus_to_virt)(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*virt_to_phys)(uint32_t address, PCI_CONV_ADR *pointer);
- int32_t (*phys_to_virt)(uint32_t address, PCI_CONV_ADR *pointer);
- // int32_t reserved[2];
-};
-
-struct mmu_driver_interface
-{
- int32_t (*map_page_locked)(uint32_t address, uint32_t length, int asid);
- int32_t (*unlock_page)(uint32_t address, uint32_t length, int asid);
- int32_t (*report_locked_pages)(uint32_t *num_itlb, uint32_t *num_dtlb);
- uint32_t (*report_pagesize)(void);
-};
-
-struct pci_native_driver_interface
-{
- uint32_t (*pci_read_config_longword)(int32_t handle, int offset);
- uint16_t (*pci_read_config_word)(int32_t handle, int offset);
- uint8_t (*pci_read_config_byte)(int32_t handle, int offset);
-
- int32_t (*pci_write_config_longword)(int32_t handle, int offset, uint32_t value);
- int32_t (*pci_write_config_word)(int32_t handle, int offset, uint16_t value);
- int32_t (*pci_write_config_byte)(int32_t handle, int offset, uint8_t value);
- int32_t (*pci_hook_interrupt)(int32_t handle, void *handler, void *parameter);
- int32_t (*pci_unhook_interrupt)(int32_t handle);
- int32_t (*pci_find_device)(uint16_t device_id, uint16_t vendor_id, int index);
- int32_t (*pci_find_classcode)(uint32_t classcode, int index);
- struct pci_rd * (*pci_get_resource)(int32_t handle);
-};
-
-union interface
-{
- struct generic_driver_interface *gdi;
- struct xhdi_driver_interface *xhdi;
- struct dma_driver_interface *dma;
- struct framebuffer_driver_interface *fb;
- struct pci_bios_interface *pci;
- struct mmu_driver_interface *mmu;
- struct pci_native_driver_interface *pci_native;
-};
-
-struct generic_interface
-{
- enum driver_type type;
- char name[16];
- char description[64];
- int version;
- int revision;
- union interface interface;
-};
-
-struct driver_table
-{
- uint32_t bas_version;
- uint32_t bas_revision;
- void (*remove_handler)(void); /* calling this will disable the BaS' hook into trap #0 */
- struct generic_interface *interfaces;
-};
-
-
-#endif /* _DRIVER_VEC_H_ */
diff --git a/BaS_gcc/tos/pci_test/include/pci.h b/BaS_gcc/tos/pci_test/include/pci.h
deleted file mode 100644
index b912dd6..0000000
--- a/BaS_gcc/tos/pci_test/include/pci.h
+++ /dev/null
@@ -1,360 +0,0 @@
-#ifndef _PCI_H_
-#define _PCI_H_
-
-/*
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include
-#include "util.h" /* for swpX() */
-
-#define PCI_MEMORY_OFFSET 0x80000000
-#define PCI_MEMORY_SIZE 0x40000000 /* 1 GByte PCI memory window */
-#define PCI_IO_OFFSET 0xD0000000
-#define PCI_IO_SIZE 0x10000000 /* 256 MByte PCI I/O window */
-
-#define PCI_LANESWAP_B(x) (x ^ 3)
-#define PCI_LANESWAP_W(x) (x ^ 2)
-#define PCI_LANESWAP_L(x) (x) /* for completeness only */
-/*
- * Note: the byte offsets are in little endian format, so for pci_xxx_config_byte()
- * accesses to hit the right offset, you'll need to wrap them into PCI_LANESWAP_B()
- * and for pci_xxx_config_word() into PCI_LANESWAP_W()
- */
-#define PCIIDR 0x00 /* PCI Configuration ID Register */
-#define PCICSR 0x04 /* PCI Command/Status Register */
-#define PCICR 0x06 /* PCI Command Register */
-#define PCISR 0x04 /* PCI Status Register */
-#define PCIREV 0x0B /* PCI Revision ID Register */
-#define PCICCR 0x08 /* PCI Class Code Register */
-#define PCICLSR 0x0F /* PCI Cache Line Size Register */
-#define PCILTR 0x0E /* PCI Latency Timer Register */
-#define PCIHTR 0x0D /* PCI Header Type Register */
-#define PCIBISTR 0x0C /* PCI Build-In Self Test Register */
-
-#define PCIBAR0 0x10 /* PCI Base Address Register for Memory
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR1 0x14 /* PCI Base Address Register for I/O
- Accesses to Local, Runtime, and DMA */
-#define PCIBAR2 0x18 /* PCI Base Address Register for Memory
- Accesses to Local Address Space 0 */
-#define PCIBAR3 0x1C /* PCI Base Address Register for Memory
- Accesses to Local Address Space 1 */
-#define PCIBAR4 0x20 /* PCI Base Address Register, reserved */
-#define PCIBAR5 0x24 /* PCI Base Address Register, reserved */
-#define PCICIS 0x28 /* PCI Cardbus CIS Pointer, not support*/
-#define PCISVID 0x2E /* PCI Subsystem Vendor ID */
-#define PCISID 0x2D /* PCI Subsystem ID */
-#define PCIERBAR 0x30 /* PCI Expansion ROM Base Register */
-#define CAP_PTR 0x34 /* New Capability Pointer */
-#define PCIILR 0x3F /* PCI Interrupt Line Register */
-#define PCIIPR 0x3E /* PCI Interrupt Pin Register */
-#define PCIMGR 0x3D /* PCI Min_Gnt Register */
-#define PCIMLR 0x3C /* PCI Max_Lat Register */
-#define PMCAPID 0x40 /* Power Management Capability ID */
-#define PMNEXT 0x41 /* Power Management Next Capability
- Pointer */
-#define PMC 0x42 /* Power Management Capabilities */
-#define PMCSR 0x44 /* Power Management Control/Status */
-#define PMCSR_BSE 0x46 /* PMCSR Bridge Support Extensions */
-#define PMDATA 0x47 /* Power Management Data */
-#define HS_CNTL 0x48 /* Hot Swap Control */
-#define HS_NEXT 0x49 /* Hot Swap Next Capability Pointer */
-#define HS_CSR 0x4A /* Hot Swap Control/Status */
-#define PVPDCNTL 0x4C /* PCI Vital Product Data Control */
-#define PVPD_NEXT 0x4D /* PCI Vital Product Data Next
- Capability Pointer */
-#define PVPDAD 0x4E /* PCI Vital Product Data Address */
-#define PVPDATA 0x50 /* PCI VPD Data */
-
-/*
- * bit definitions for PCICSR lower half (Command Register)
- */
-#define PCICR_IO (1 << 0) /* if set: device responds to I/O space accesses */
-#define PCICR_MEMORY (1 << 1) /* if set: device responds to memory space accesses */
-#define PCICR_MASTER (1 << 2) /* if set: device is master */
-#define PCICR_SPECIAL (1 << 3) /* if set: device reacts on special cycles */
-#define PCICR_MEMWI (1 << 4) /* if set: device deals with memory write and invalidate */
-#define PCICR_VGA_SNOOP (1 << 5) /* if set: capable of palette snoop */
-#define PCICR_PERR (1 << 6) /* if set: reacts to parity errors */
-#define PCICR_STEPPING (1 << 7) /* if set: stepping enabled */
-#define PCICR_SERR (1 << 8) /* if set: SERR pin enabled */
-#define PCICR_FAST_BTOB_E (1 << 9) /* if set: fast back-to-back enabled */
-#define PCICR_INT_DISABLE (1 << 10) /* if set: disable interrupts from this device */
-/*
- * bit definitions for PCICSR upper half (Status Register)
- */
-#define PCISR_INTERRUPT (1 << 3) /* device requested interrupt */
-#define PCISR_CAPABILITIES (1 << 4) /* if set, capabilities pointer is valid */
-#define PCISR_66MHZ (1 << 5) /* 66 MHz capable */
-#define PCISR_UDF (1 << 6) /* UDF supported */
-#define PCISR_FAST_BTOB (1 << 7) /* Fast back-to-back enabled */
-#define PCISR_DPARITY_ERROR (1 << 8) /* data parity error detected */
-
-#define PCISR_T_ABORT_S (1 << 11) /* target abort signaled */
-#define PCISR_T_ABORT_R (1 << 12) /* target abort received */
-#define PCISR_M_ABORT_R (1 << 13) /* master abort received */
-#define PCISR_S_ERROR_S (1 << 14) /* system error signaled */
-#define PCISR_PARITY_ERR (1 << 15) /* data parity error */
-
-/* Header type 1 (PCI-to-PCI bridges) */
-#define PCI_PRIMARY_BUS 0x1B /* Primary bus number */
-#define PCI_SECONDARY_BUS 0x1A /* Secondary bus number */
-#define PCI_SUBORDINATE_BUS 0x19 /* Highest bus number behind the bridge */
-#define PCI_SEC_LATENCY_TIMER 0x18 /* Latency timer for secondary interface */
-#define PCI_IO_BASE 0x1C /* I/O range behind the bridge */
-#define PCI_IO_LIMIT 0x1D
-#define PCI_SEC_STATUS 0x1C /* Secondary status register, only bit 14 used */
-#define PCI_MEMORY_BASE 0x20 /* Memory range behind */
-#define PCI_MEMORY_LIMIT 0x22
-#define PCI_PREF_MEMORY_BASE 0x24 /* Prefetchable memory range behind */
-#define PCI_PREF_MEMORY_LIMIT 0x26
-#define PCI_PREF_BASE_UPPER32 0x28 /* Upper half of prefetchable memory range */
-#define PCI_PREF_LIMIT_UPPER32 0x2C
-#define PCI_IO_BASE_UPPER16 0x30 /* Upper half of I/O addresses */
-#define PCI_IO_LIMIT_UPPER16 0x32
-#define PCI_BRIDGE_CONTROL 0x3E /* Bridge Control */
-
-struct pci_rd /* structure of resource descriptor */
-{
- unsigned short next; /* length of the following structure */
- unsigned short flags; /* type of resource and misc. flags */
- unsigned long start; /* start-address of resource */
- unsigned long length; /* length of resource */
- unsigned long offset; /* offset PCI to phys. CPU Address */
- unsigned long dmaoffset; /* offset for DMA-transfers */
-};
-
-typedef struct /* structure of address conversion */
-{
- unsigned long adr; /* calculated address (CPU<->PCI) */
- unsigned long len; /* length of memory range */
-} PCI_CONV_ADR;
-
-/******************************************************************************/
-/* PCI-BIOS Error Codes */
-/******************************************************************************/
-#define PCI_SUCCESSFUL 0 /* everything's fine */
-#define PCI_FUNC_NOT_SUPPORTED -2 /* function not supported */
-#define PCI_BAD_VENDOR_ID -3 /* wrong Vendor ID */
-#define PCI_DEVICE_NOT_FOUND -4 /* PCI-Device not found */
-#define PCI_BAD_REGISTER_NUMBER -5 /* wrong register number */
-#define PCI_SET_FAILED -6 /* reserved for later use */
-#define PCI_BUFFER_TOO_SMALL -7 /* reserved for later use */
-#define PCI_GENERAL_ERROR -8 /* general BIOS error code */
-#define PCI_BAD_HANDLE -9 /* wrong/unknown PCI-handle */
-
-/******************************************************************************/
-/* Flags used in Resource-Descriptor */
-/******************************************************************************/
-#define FLG_IO 0x4000 /* Ressource in IO range */
-#define FLG_ROM 0x2000 /* Expansion ROM */
-#define FLG_LAST 0x8000 /* last ressource */
-#define FLG_8BIT 0x0100 /* 8 bit accesses allowed */
-#define FLG_16BIT 0x0200 /* 16 bit accesses allowed */
-#define FLG_32BIT 0x0400 /* 32 bit accesses allowed */
-#define FLG_ENDMASK 0x000F /* mask for byte ordering */
-
-/******************************************************************************/
-/* Values used in FLG_ENDMASK for Byte Ordering */
-/******************************************************************************/
-#define ORD_MOTOROLA 0 /* Motorola (big endian) */
-#define ORD_INTEL_AS 1 /* Intel (little endian), addr.swapped */
-#define ORD_INTEL_LS 2 /* Intel (little endian), lane swapped */
-#define ORD_UNKNOWN 15 /* unknown (BIOS-calls allowed only) */
-
-/******************************************************************************/
-/* Status Info used in Device-Descriptor */
-/******************************************************************************/
-#define DEVICE_FREE 0 /* Device is not used */
-#define DEVICE_USED 1 /* Device is used by another driver */
-#define DEVICE_CALLBACK 2 /* used, but driver can be cancelled */
-#define DEVICE_AVAILABLE 3 /* used, not available */
-#define NO_DEVICE -1 /* no device detected */
-
-/* PCI configuration space macros */
-
-/* register 0x00 macros */
-#define PCI_DEVICE_ID(i) (uint16_t)(((i) & 0xffff0000) >> 16)
-#define PCI_VENDOR_ID(i) (uint16_t) ((i) & 0xffff)
-
-/* register 0x04 macros */
-#define PCI_STATUS(i) ((i) & 0xffff)
-#define PCI_COMMAND(i) (((i) >> 16) & 0xffff)
-
-/* register 0x08 macros */
-#define PCI_CLASS_CODE(i) (((i) & 0xff000000) >> 24)
-#define PCI_SUBCLASS(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_PROG_IF(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_REVISION_ID(i) (((i) & 0x000000ff))
-
-/* register 0x0c macros */
-#define PCI_BIST(i) (((i) & 0xff000000) >> 24)
-#define PCI_HEADER_TYPE(i) (((i) & 0x00ff0000) >> 16)
-#define PCI_LAT_TIMER(i) (((i) & 0x0000ff00) >> 8)
-#define PCI_CACHELINE_SIZE(i) (((i) & 0x000000ff))
-
-/* register 0x2c macros */
-#define PCI_SUBSYS_ID(i) ((i) & 0xffff0000) >> 16)
-#define PCI_SUBSYS_VID(i) ((i) & 0xffff))
-
-/* register 0x34 macros */
-#define PCI_CAPABILITIES(i) ((i) & 0xff)
-
-/* register 0x3c macros */
-#define PCI_MAX_LATENCY(i) (((i) & 0xff000000) >> 24)
-#define PCI_MIN_GRANT(i) (((i) & 0xff0000) >> 16)
-#define PCI_INTERRUPT_PIN(i) (((i) & 0xff00) >> 8)
-#define PCI_INTERRUPT_LINE(i) (((i)) & 0xff)
-
-#define IS_PCI_MEM_BAR(i) ((i) & 1) == 0
-#define IS_PCI_IO_BAR(i) ((i) & 1) == 1
-#define PCI_MEMBAR_TYPE(i) (((i) & 0x6) >> 1)
-#define PCI_IOBAR_ADR(i) (((i) & 0xfffffffc))
-#define PCI_MEMBAR_ADR(i) (((i) & 0xfffffff0))
-
-extern void init_eport(void);
-extern void init_xlbus_arbiter(void);
-extern void init_pci(void);
-extern int pci_handle2index(int32_t handle);
-
-extern int32_t pci_find_device(uint16_t device_id, uint16_t vendor_id, int index);
-extern int32_t pci_find_classcode(uint32_t classcode, int index);
-
-extern int32_t pci_get_interrupt_cause(void);
-extern int32_t pci_call_interrupt_chain(int32_t handle, int32_t data);
-
-/*
- * match bits for pci_find_classcode()
- */
-#define PCI_FIND_BASE_CLASS (1 << 26)
-#define PCI_FIND_SUB_CLASS (1 << 25)
-#define PCI_FIND_PROG_IF (1 << 24)
-
-extern uint32_t pci_read_config_longword(int32_t handle, int offset);
-extern uint16_t pci_read_config_word(int32_t handle, int offset);
-extern uint8_t pci_read_config_byte(int32_t handle, int offset);
-
-extern int32_t pci_write_config_longword(int32_t handle, int offset, uint32_t value);
-extern int32_t pci_write_config_word(int32_t handle, int offset, uint16_t value);
-extern int32_t pci_write_config_byte(int32_t handle, int offset, uint8_t value);
-
-typedef int (*pci_interrupt_handler)(int param);
-
-extern int32_t pci_hook_interrupt(int32_t handle, void *handler, void *parameter);
-extern int32_t pci_unhook_interrupt(int32_t handle);
-
-extern struct pci_rd *pci_get_resource(int32_t handle);
-
-/*
- * Not implemented PCI_BIOS functions
- */
-extern uint8_t pci_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t pci_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t pci_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t pci_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t pci_get_routing(int32_t handle);
-extern int32_t pci_set_interrupt(int32_t handle);
-extern int32_t pci_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t pci_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t pci_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t pci_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t pci_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t pci_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t pci_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t pci_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t pci_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t pci_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t pci_get_machine_id(void);
-extern int32_t pci_get_pagesize(void);
-extern int32_t pci_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t pci_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-/*
- * prototypes for PCI wrapper routines
- */
-extern int32_t wrapper_find_pci_device(uint32_t id, uint16_t index);
-extern int32_t wrapper_find_pci_classcode(uint32_t class, uint16_t index);
-extern int32_t wrapper_read_config_byte(int32_t handle, uint16_t reg, uint8_t *address);
-extern int32_t wrapper_read_config_word(int32_t handle, uint16_t reg, uint16_t *address);
-extern int32_t wrapper_read_config_longword(int32_t handle, uint16_t reg, uint32_t *address);
-extern uint8_t wrapper_fast_read_config_byte(int32_t handle, uint16_t reg);
-extern uint16_t wrapper_fast_read_config_word(int32_t handle, uint16_t reg);
-extern uint32_t wrapper_fast_read_config_longword(int32_t handle, uint16_t reg);
-extern int32_t wrapper_write_config_byte(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_word(int32_t handle, uint16_t reg, uint16_t val);
-extern int32_t wrapper_write_config_longword(int32_t handle, uint16_t reg, uint32_t val);
-extern int32_t wrapper_hook_interrupt(int32_t handle, uint32_t *routine, uint32_t *parameter);
-extern int32_t wrapper_unhook_interrupt(int32_t handle);
-extern int32_t wrapper_special_cycle(uint16_t bus, uint32_t data);
-extern int32_t wrapper_get_routing(int32_t handle);
-extern int32_t wrapper_set_interrupt(int32_t handle);
-extern int32_t wrapper_get_resource(int32_t handle);
-extern int32_t wrapper_get_card_used(int32_t handle, uint32_t *address);
-extern int32_t wrapper_set_card_used(int32_t handle, uint32_t *callback);
-extern int32_t wrapper_read_mem_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_mem_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_mem_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_mem_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_mem_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_mem_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_mem_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_mem_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_read_io_byte(int32_t handle, uint32_t offset, uint8_t *address);
-extern int32_t wrapper_read_io_word(int32_t handle, uint32_t offset, uint16_t *address);
-extern int32_t wrapper_read_io_longword(int32_t handle, uint32_t offset, uint32_t *address);
-extern uint8_t wrapper_fast_read_io_byte(int32_t handle, uint32_t offset);
-extern uint16_t wrapper_fast_read_io_word(int32_t handle, uint32_t offset);
-extern uint32_t wrapper_fast_read_io_longword(int32_t handle, uint32_t offset);
-extern int32_t wrapper_write_io_byte(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_word(int32_t handle, uint32_t offset, uint16_t val);
-extern int32_t wrapper_write_io_longword(int32_t handle, uint32_t offset, uint32_t val);
-extern int32_t wrapper_get_machine_id(void);
-extern int32_t wrapper_get_pagesize(void);
-extern int32_t wrapper_virt_to_bus(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_bus_to_virt(int32_t handle, uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_virt_to_phys(uint32_t address, PCI_CONV_ADR *pointer);
-extern int32_t wrapper_phys_to_virt(uint32_t address, PCI_CONV_ADR *pointer);
-
-#define PCI_MK_CONF_ADDR(bus, device, function) (MCF_PCI_PCICAR_E | \
- ((bus) << 16) | \
- ((device << 8) | \
- (function))
-
-#define PCI_HANDLE(bus, slot, function) (0 | ((bus & 0xff) << 10 | (slot & 0x1f) << 3 | (function & 7)))
-#define PCI_BUS_FROM_HANDLE(h) (((h) & 0xff00) >> 10)
-#define PCI_DEVICE_FROM_HANDLE(h) (((h) & 0xf8) >> 3)
-#define PCI_FUNCTION_FROM_HANDLE(h) (((h) & 0x7))
-
-extern void pci_dump_registers(int32_t handle);
-
-#endif /* _PCI_H_ */
diff --git a/BaS_gcc/tos/pci_test/include/util.h b/BaS_gcc/tos/pci_test/include/util.h
deleted file mode 100644
index 355c1ac..0000000
--- a/BaS_gcc/tos/pci_test/include/util.h
+++ /dev/null
@@ -1,128 +0,0 @@
-/*
- * util.h
- *
- * Byteswapping macros lend from EmuTOS sources
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 27.10.2013
- * Author: mfro
- */
-
-#ifndef UTIL_H_
-#define UTIL_H_
-
-#include
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-/*
- * uint16_t swpw(uint16_t val);
- * swap endianess of val, 16 bits only.
- */
-static inline uint16_t swpw(uint16_t w)
-{
- return (w << 8) | (w >> 8);
-}
-
-/*
- * uint32_t swpl(uint32_t val);
- * swap endianess of val, 32 bits only.
- * e.g. ABCD => DCBA
- */
-static inline uint32_t swpl(uint32_t l)
-{
- return ((l & 0xff000000) >> 24) | ((l & 0x00ff0000) >> 8) |
- ((l & 0x0000ff00) << 8) | (l << 24);
-}
-
-
-/*
- * WORD swpw2(ULONG val);
- * swap endianness of val, treated as two 16-bit words.
- * e.g. ABCD => BADC
- */
-
-#define swpw2(a) \
- __extension__ \
- ({unsigned long _tmp; \
- __asm__ __volatile__ \
- ("move.b (%1),%0\n\t" \
- "move.b 1(%1),(%1)\n\t" \
- "move.b %0,1(%1)\n\t" \
- "move.b 2(%1),%0\n\t" \
- "move.b 3(%1),2(%1)\n\t" \
- "move.b %0,3(%1)" \
- : "=d"(_tmp) /* outputs */ \
- : "a"(&a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- })
-
-/*
- * WORD set_sr(WORD new);
- * sets sr to the new value, and return the old sr value
- */
-
-#define set_sr(a) \
-__extension__ \
-({short _r, _a = (a); \
- __asm__ __volatile__ \
- ("move.w sr,%0\n\t" \
- "move.w %1,sr" \
- : "=&d"(_r) /* outputs */ \
- : "nd"(_a) /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-/*
- * WORD get_sr(void);
- * returns the current value of sr.
- */
-
-#define get_sr() \
-__extension__ \
-({short _r; \
- __asm__ volatile \
- ("move.w sr,%0" \
- : "=dm"(_r) /* outputs */ \
- : /* inputs */ \
- : "cc", "memory" /* clobbered */ \
- ); \
- _r; \
-})
-
-
-
-/*
- * void regsafe_call(void *addr)
- * Saves all registers to the stack, calls the function
- * that addr points to, and restores the registers afterwards.
- */
-#define regsafe_call(addr) \
-__extension__ \
-({__asm__ volatile ("lea -60(sp),sp\n\t" \
- "movem.l d0-d7/a0-a6,(sp)"); \
- ((void (*) (void)) addr)(); \
- __asm__ volatile ("movem.l (sp),d0-d7/a0-a6\n\t" \
- "lea 60(sp),sp"); \
-})
-
-
-#endif /* UTIL_H_ */
diff --git a/BaS_gcc/tos/pci_test/pci_test.config b/BaS_gcc/tos/pci_test/pci_test.config
deleted file mode 100644
index 8cec188..0000000
--- a/BaS_gcc/tos/pci_test/pci_test.config
+++ /dev/null
@@ -1 +0,0 @@
-// ADD PREDEFINED MACROS HERE!
diff --git a/BaS_gcc/tos/pci_test/pci_test.creator b/BaS_gcc/tos/pci_test/pci_test.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/tos/pci_test/pci_test.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/tos/pci_test/pci_test.files b/BaS_gcc/tos/pci_test/pci_test.files
deleted file mode 100644
index e5b8568..0000000
--- a/BaS_gcc/tos/pci_test/pci_test.files
+++ /dev/null
@@ -1,6 +0,0 @@
-include/driver_vec.h
-Makefile
-sources/bas_printf.c
-sources/bas_string.c
-sources/printf_helper.S
-sources/pci_test.c
diff --git a/BaS_gcc/tos/pci_test/pci_test.includes b/BaS_gcc/tos/pci_test/pci_test.includes
deleted file mode 100644
index 0e46827..0000000
--- a/BaS_gcc/tos/pci_test/pci_test.includes
+++ /dev/null
@@ -1,2 +0,0 @@
-include
-/usr/m68k-atari-mint/include
diff --git a/BaS_gcc/tos/pci_test/sources/pci_test.c b/BaS_gcc/tos/pci_test/sources/pci_test.c
deleted file mode 100644
index 916a240..0000000
--- a/BaS_gcc/tos/pci_test/sources/pci_test.c
+++ /dev/null
@@ -1,321 +0,0 @@
-#include
-#include
-#include
-#include
-#include
-
-#include "MCF5475.h"
-#include "driver_vec.h"
-#include "pci.h"
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-#define SYSCLK 132000
-
-#define KB 1024UL
-#define MB (KB * KB)
-
-volatile int32_t time, start, end;
-int i;
-
-/*
- * PCI device class descriptions displayed during PCI bus scan
- */
-static struct pci_class
-{
- int classcode;
- char *description;
-} pci_classes[] =
-{
- { 0x00, "device was built prior definition of the class code field" },
- { 0x01, "Mass Storage Controller" },
- { 0x02, "Network Controller" },
- { 0x03, "Display Controller" },
- { 0x04, "Multimedia Controller" },
- { 0x05, "Memory Controller" },
- { 0x06, "Bridge Device" },
- { 0x07, "Simple Communication Controller" },
- { 0x08, "Base System Peripherial" },
- { 0x09, "Input Device" },
- { 0x0a, "Docking Station" },
- { 0x0b, "Processor" },
- { 0x0c, "Serial Bus Controller" },
- { 0x0d, "Wireless Controller" },
- { 0x0e, "Intelligent I/O Controller" },
- { 0x0f, "Satellite Communication Controller" },
- { 0x10, "Encryption/Decryption Controller" },
- { 0x11, "Data Acquisition and Signal Processing Controller" },
- { 0xff, "Device does not fit any defined class" },
-};
-static int num_pci_classes = sizeof(pci_classes) / sizeof(struct pci_class);
-
-/*
- * retrieve device class (in cleartext) for a PCI classcode
- */
-static char *device_class(int classcode)
-{
- int i;
-
- for (i = 0; i < num_pci_classes; i++)
- {
- if (pci_classes[i].classcode == classcode)
- {
- return pci_classes[i].description;
- }
- }
- return "unknown device class";
-}
-
-void hexdump(uint8_t buffer[], int size)
-{
- int i;
- int line = 0;
- uint8_t *bp = buffer;
-
- while (bp < buffer + size)
- {
- uint8_t *lbp = bp;
-
- printf("%08lx ", (long) buffer + line);
-
- for (i = 0; i < 16; i++)
- {
- if (bp + i > buffer + size)
- {
- break;
- }
- printf("%02x ", (uint8_t) *lbp++);
- }
-
- lbp = bp;
- for (i = 0; i < 16; i++)
- {
- int8_t c = *lbp++;
-
- if (bp + i > buffer + size)
- {
- break;
- }
- if (c > ' ' && c < '~')
- {
- printf("%c", c);
- }
- else
- {
- printf(".");
- }
- }
- printf("\r\n");
-
- bp += 16;
- line += 16;
- }
-}
-
-void do_tests(struct pci_native_driver_interface *pci)
-{
-#define PCI_READ_CONFIG_LONGWORD(a, b) pci->pci_read_config_longword(a, b)
-#define PCI_WRITE_CONFIG_LONGWORD(a, b) pci->pci_write_config_longword(a, b)
-
-
- printf("enumerate PCI devices\r\n");
-
- int16_t handle;
- int16_t index = 0;
-
- printf("\r\nPCI bus scan...\r\n\r\n");
- printf(" Bus| Dev|Func|Vndr|D-ID|Hndl|\r\n");
- printf("----+----+----+----+----+----+\r\n");
-
- handle = (*pci->pci_find_device)(0x0, 0xFFFF, index);
-
- while (handle > 0)
- {
- uint32_t value;
-
- value = swpl((*pci->pci_read_config_longword)(handle, PCIIDR));
-
- printf(" %02x | %02x | %02x |%04x|%04x|%04x| %s (0x%02x, 0x%04x)\r\n",
- PCI_BUS_FROM_HANDLE(handle),
- PCI_DEVICE_FROM_HANDLE(handle),
- PCI_FUNCTION_FROM_HANDLE(handle),
- PCI_VENDOR_ID(value), PCI_DEVICE_ID(value),
- handle,
- device_class((*pci->pci_read_config_byte)(handle, PCI_LANESWAP_B(PCICCR))),
- (*pci->pci_read_config_byte)(handle, PCI_LANESWAP_B(PCICCR)),
- (*pci->pci_read_config_word)(handle, PCI_LANESWAP_W(PCICCR)));
-
- handle = (*pci->pci_find_device)(0x0, 0xFFFF, ++index);
- }
-
- struct pci_rd *rd;
- int flags;
-
- /*
- * look for an ATI Radeon video card
- */
-
- // handle = 0xd8;
- handle = (*pci->pci_find_device)(0x5159, 0x1002, 0);
- if (handle > 0)
- {
- rd = (*pci->pci_get_resource)(handle); /* get resource descriptor for ATI graphics card */
- if (rd != NULL)
- {
- do
- {
- flags = rd->flags;
-
- printf("Start address: 0x%08lx\r\n", rd->start);
- printf("Length: 0x%08lx\r\n", rd->length);
- printf("Offset: 0x%08lx\r\n", rd->offset);
- printf("DMA offset: 0x%08lx\r\n", rd->dmaoffset);
- printf("FLAGS: %s%s%s%s%s%s%s\r\n",
- flags & FLG_IO ? "FLG_IO, " : "",
- flags & FLG_ROM ? "FLG_ROM, " : "",
- flags & FLG_8BIT ? "FLG_8BIT, " : "",
- flags & FLG_16BIT ? "FLG_16BIT, " : "",
- flags & FLG_32BIT ? "FLG_32BIT, " : "",
- (flags & FLG_ENDMASK) == ORD_MOTOROLA ? "ORD_MOTOROLA" :
- (flags & FLG_ENDMASK) == ORD_INTEL_AS ? "ORD_INTEL_AS" :
- (flags & FLG_ENDMASK) == ORD_INTEL_LS ? "ORD_INTEL_LS" :
- (flags & FLG_ENDMASK) == ORD_UNKNOWN ? "ORD_UNKNOWN" :
- "", "");
- printf("\r\n");
-
- if (rd->start != 0L && rd->start == 0x80000000)
- {
- hexdump((uint8_t *) rd->start + rd->offset, 64);
-
- memset((uint8_t *) rd-> start + rd->offset, 0, 64 * MB);
-
- printf("memory cleared\r\n");
- hexdump((uint8_t *) rd->start + rd->offset, 64);
-
- memset((uint8_t *) rd->start + rd->offset, 0xaa, 64 * MB);
- hexdump((uint8_t *) rd->start + rd->offset, 64);
- }
-
- rd = (struct pci_rd *) (((uintptr_t) rd) + (uintptr_t) rd->next);
- } while (!(flags & FLG_LAST));
- }
- else
- {
- printf("resource descriptor for handle 0x%02x not found\r\n", handle);
- }
- }
- else
- fprintf(stderr, "card not found\r\n");
-
- printf("\r\n...finished\r\n");
-}
-
-/*
- * temporarily replace the trap 0 handler with this so we can avoid
- * getting caught by BaS versions that don't understand the driver interface
- * exposure call.
- * If we get here, we have a BaS version that doesn't support the trap 0 interface
- */
-static void __attribute__((interrupt)) trap0_catcher(void)
-{
- __asm__ __volatile__(
- " clr.l d0 \n\t" // return 0 to indicate not supported
- :
- :
- :
- );
-}
-
-struct driver_table *get_bas_drivers(void)
-{
- struct driver_table *ret = NULL;
- void *old_vector;
-
- old_vector = Setexc(0x20, trap0_catcher); /* set our own temporarily */
-
- __asm__ __volatile__(
- " bra.s do_trap \n\t"
- " .dc.l 0x5f424153 \n\t" // '_BAS'
- "do_trap: trap #0 \n\t"
- " move.l d0,%[ret] \n\t"
- : [ret] "=m" (ret) /* output */
- : /* no inputs */
- : /* clobbered */
- );
- (void) Setexc(0x20, old_vector); /* restore original vector */
-
- return ret;
-}
-
-void pci_test(void)
-{
- struct driver_table *bas_drivers;
- struct generic_interface *ifc;
- bool pci_driver_found = false;
- struct pci_native_driver_interface *pci_driver = NULL;
-
- bas_drivers = get_bas_drivers();
-
- /*
- * trap0_catcher should return 0L on failure, for some reason FireTOS
- * returns -1L on a trap #0. Anyway, ...
- */
- if (bas_drivers != NULL && bas_drivers != (void *) -1L)
- {
- printf("BaS driver vector: %p\r\n", bas_drivers);
- printf("BaS version: %ld.%02ld\r\n", (long) bas_drivers->bas_version, (long) bas_drivers->bas_revision);
- }
- else
- {
- printf("BaS driver retrieval not supported\r\n");
- printf("(old BaS version or FireTOS?)\r\n");
- exit(1);
- }
-
- ifc = bas_drivers->interfaces;
-
- do
- {
- struct generic_interface *pci_driver_interface = NULL;
-
- printf("interface type: %ld\r\n", (long) ifc[i].type);
- printf("interface version: %ld.%02ld\r\n", (long) ifc[i].version, (long) ifc[i].revision);
- printf("interface name: %s\r\n", ifc[i].name);
- printf("interface description: %s\r\n", ifc[i].description);
-
- if (ifc[i].type == PCI_NATIVE_DRIVER)
- {
- pci_driver_found = true;
-
- if (!pci_driver_interface || (ifc[i].version > pci_driver_interface->version ||
- (ifc[i].version == pci_driver_interface->version && ifc[i].revision > pci_driver_interface->revision)))
- {
- /*
- * either no PCI driver interface found yet or with lower version or with lower version and higher revision
- *
- * replace it
- */
- pci_driver = ifc[i].interface.pci_native;
- pci_driver_interface = &ifc[i];
- printf("PCI native driver interface v%d.%02d found\r\n", pci_driver_interface->version, pci_driver_interface->revision);
- printf("replaced old with newer driver version\r\n");
- }
- }
- } while (ifc[++i].type != END_OF_DRIVERS);
-
- if (pci_driver_found)
- {
- do_tests(pci_driver);
- }
-}
-
-int main(int argc, char *argv[])
-{
- printf("PCI test routines\r\n");
- printf("\xbd 2014 M. Fr\x94schle\r\n");
-
- Supexec(pci_test);
-
- return 0; /* just to make the compiler happy, we will never return */
-}
-
diff --git a/BaS_gcc/tos/pci_test/sources/printf_helper.S b/BaS_gcc/tos/pci_test/sources/printf_helper.S
deleted file mode 100644
index e0b5c10..0000000
--- a/BaS_gcc/tos/pci_test/sources/printf_helper.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * printf_helper.S
- *
- * assembler trampoline to let printf (compiled -mpcrel) indirectly reference __MBAR
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 - 2025 M. Froeschle
- */
-
-
- .globl printf_helper
-
-printf_helper:
- .extern __MBAR
-
-.wait_txready:
- move.w __MBAR+0x8604,d2 // PSCSCR0 status register
- btst #10,d2 // space left in TX fifo?
- beq.s .wait_txready // no, loop
- lea __MBAR+0x860C,a0 // PSCSTB0 transmitter buffer register
- move.b d0,(a0) // send byte
- rts
diff --git a/BaS_gcc/tos/vmem_test/Makefile b/BaS_gcc/tos/vmem_test/Makefile
deleted file mode 100755
index 2668436..0000000
--- a/BaS_gcc/tos/vmem_test/Makefile
+++ /dev/null
@@ -1,109 +0,0 @@
-CROSS=Y
-
-CROSSBINDIR_IS_Y=m68k-atari-mint-
-CROSSBINDIR_IS_N=
-
-CROSSBINDIR=$(CROSSBINDIR_IS_$(CROSS))
-
-UNAME := $(shell uname)
-ifeq ($(CROSS), Y)
-ifeq ($(UNAME),Linux)
-PREFIX=m68k-atari-mint
-HATARI=hatari
-else
-PREFIX=m68k-atari-mint
-HATARI=/usr/local/bin/hatari
-endif
-else
-PREFIX=/usr
-endif
-
-DEPEND=depend
-TOPDIR = ../..
-
-LIBCMINI=$(TOPDIR)/../libcmini/libcmini
-
-INCLUDE=-I$(LIBCMINI)/include -nostdlib
-LIBS=-lcmini -nostdlib -lgcc
-CC=$(PREFIX)/bin/gcc
-
-CC=$(CROSSBINDIR)gcc
-STRIP=$(CROSSBINDIR)strip
-STACK=$(CROSSBINDIR)stack
-
-APP=vmem_test.prg
-TEST_APP=$(APP)
-
-CFLAGS=\
- -O0\
- -g\
- -Wl,-Map,mapfile\
- -Wl,--defsym -Wl,__MBAR=0xff000000\
- -Wl,--defsym -Wl,__MMUBAR=0xff040000\
- -Wl,--defsym -Wl,__FPGA_JTAG_LOADED=0xff101000\
- -Wl,--defsym -Wl,__FPGA_JTAG_VALID=0xff101004\
- -Wl,--defsym -Wl,__VRAM=0x60000000\
- -Wall
-
-SRCDIR=sources
-INCDIR=include
-INCLUDE+=-I$(INCDIR)
-
-CSRCS=\
- $(SRCDIR)/vmem_test.c \
- $(SRCDIR)/bas_printf.c
-
-ASRCS=$(SRCDIR)/printf_helper.S
-
-COBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.c,%.o,$(CSRCS)))
-AOBJS=$(patsubst $(SRCDIR)/%.o,%.o,$(patsubst %.S,%.o,$(ASRCS)))
-OBJS=$(COBJS) $(AOBJS)
-
-TRGTDIRS=./m5475 ./m5475/mshort
-OBJDIRS=$(patsubst %,%/objs,$(TRGTDIRS))
-
-#
-# multilib flags. These must match m68k-atari-mint-gcc -print-multi-lib output
-#
-m5475/$(APP):CFLAGS += -mcpu=5475
-m5475/mshort/$(APP): CFLAGS += -mcpu=5475 -mshort
-
-all:$(patsubst %,%/$(APP),$(TRGTDIRS))
-#
-# generate pattern rules for multilib object files.
-#
-define CC_TEMPLATE
-$(1)/objs/%.o:$(SRCDIR)/%.c
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)/objs/%.o:$(SRCDIR)/%.S
- @echo CC $$<
- @$(CC) $$(CFLAGS) $(INCLUDE) -c $$< -o $$@
-
-$(1)_OBJS=$(patsubst %,$(1)/objs/%,$(OBJS))
-$(1)/$(APP): $$($(1)_OBJS)
- @echo CC $$@
- @$(CC) $$(CFLAGS) -o $$@ $(LIBCMINI)/$(1)/startup.o $$($(1)_OBJS) -L$(LIBCMINI)/$(1) $(LIBS)
- @$(STRIP) $$@
-endef
-$(foreach DIR,$(TRGTDIRS),$(eval $(call CC_TEMPLATE,$(DIR))))
-
-$(DEPEND): $(ASRCS) $(CSRCS)
- @-rm -f $(DEPEND)
- @for d in $(TRGTDIRS);\
- do $(CC) $(CFLAGS) $(INCLUDE) -M $(ASRCS) $(CSRCS) | sed -e "s#^\(.*\).o:#$$d/objs/\1.o:#" >> $(DEPEND); \
- done
-
-
-clean:
- @rm -f $(patsubst %,%/objs/*.o,$(TRGTDIRS)) $(patsubst %,%/$(APP),$(TRGTDIRS))
- @rm -f $(DEPEND) mapfile
-
-.PHONY: printvars
-printvars:
- @$(foreach V,$(.VARIABLES), $(if $(filter-out environment% default automatic, $(origin $V)),$(warning $V=$($V))))
-
-ifneq (clean,$(MAKECMDGOALS))
--include $(DEPEND)
-endif
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475.h b/BaS_gcc/tos/vmem_test/include/MCF5475.h
deleted file mode 100644
index 5ab1750..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_H__
-#define __MCF5475_H__
-
-#include
-/***
- * MCF5475 Derivative Memory map definitions from linker command files:
- * __MBAR, __MMUBAR, __RAMBAR0, __RAMBAR0_SIZE, __RAMBAR1, __RAMBAR1_SIZE
- * linker symbols must be defined in the linker command file.
- */
-
-typedef uint32_t __attribute__((__may_alias__)) uint32_t_a; /* a type to avoid gcc's complaints about pointer aliasing */
-
-extern uint8_t _MBAR[];
-extern uint8_t _MMUBAR[];
-extern uint8_t _RAMBAR0[];
-extern uint8_t _RAMBAR0_SIZE[];
-extern uint8_t _RAMBAR1[];
-extern uint8_t _RAMBAR1_SIZE[];
-
-#define MBAR_ADDRESS (uint32_t)_MBAR
-#define MMUBAR_ADDRESS (uint32_t)_MMUBAR
-#define RAMBAR0_ADDRESS (uint32_t)_RAMBAR0
-#define RAMBAR0_SIZE (uint32_t)_RAMBAR0_SIZE
-#define RAMBAR1_ADDRESS (uint32_t)_RAMBAR1
-#define RAMBAR1_SIZE (uint32_t)_RAMBAR1_SIZE
-
-
-#include "MCF5475_SIU.h"
-#include "MCF5475_MMU.h"
-#include "MCF5475_SDRAMC.h"
-#include "MCF5475_XLB.h"
-#include "MCF5475_CLOCK.h"
-#include "MCF5475_FBCS.h"
-#include "MCF5475_INTC.h"
-#include "MCF5475_GPT.h"
-#include "MCF5475_SLT.h"
-#include "MCF5475_GPIO.h"
-#include "MCF5475_PAD.h"
-#include "MCF5475_PCI.h"
-#include "MCF5475_PCIARB.h"
-#include "MCF5475_EPORT.h"
-#include "MCF5475_CTM.h"
-#include "MCF5475_DMA.h"
-#include "MCF5475_PSC.h"
-#include "MCF5475_DSPI.h"
-#include "MCF5475_I2C.h"
-#include "MCF5475_FEC.h"
-#include "MCF5475_USB.h"
-#include "MCF5475_SRAM.h"
-#include "MCF5475_SEC.h"
-
-#endif /* __MCF5475_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_CLOCK.h b/BaS_gcc/tos/vmem_test/include/MCF5475_CLOCK.h
deleted file mode 100644
index 4603098..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_CLOCK.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CLOCK_H__
-#define __MCF5475_CLOCK_H__
-
-
-/*********************************************************************
-*
-* Clock Module (CLOCK)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CLOCK_SPCR (*(volatile uint32_t*)(&_MBAR[0x300]))
-
-
-/* Bit definitions and macros for MCF_CLOCK_SPCR */
-#define MCF_CLOCK_SPCR_MEMEN (0x1)
-#define MCF_CLOCK_SPCR_PCIEN (0x2)
-#define MCF_CLOCK_SPCR_FBEN (0x4)
-#define MCF_CLOCK_SPCR_CAN0EN (0x8)
-#define MCF_CLOCK_SPCR_DMAEN (0x10)
-#define MCF_CLOCK_SPCR_FEC0EN (0x20)
-#define MCF_CLOCK_SPCR_FEC1EN (0x40)
-#define MCF_CLOCK_SPCR_USBEN (0x80)
-#define MCF_CLOCK_SPCR_PSCEN (0x200)
-#define MCF_CLOCK_SPCR_CAN1EN (0x800)
-#define MCF_CLOCK_SPCR_CRYENA (0x1000)
-#define MCF_CLOCK_SPCR_CRYENB (0x2000)
-#define MCF_CLOCK_SPCR_COREN (0x4000)
-#define MCF_CLOCK_SPCR_PLLK (0x80000000)
-
-
-#endif /* __MCF5475_CLOCK_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_CTM.h b/BaS_gcc/tos/vmem_test/include/MCF5475_CTM.h
deleted file mode 100644
index 5ba86e4..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_CTM.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_CTM_H__
-#define __MCF5475_CTM_H__
-
-
-/*********************************************************************
-*
-* Comm Timer Module (CTM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_CTM_CTCR0 (*(volatile uint32_t*)(&_MBAR[0x7F00]))
-#define MCF_CTM_CTCR1 (*(volatile uint32_t*)(&_MBAR[0x7F04]))
-#define MCF_CTM_CTCR2 (*(volatile uint32_t*)(&_MBAR[0x7F08]))
-#define MCF_CTM_CTCR3 (*(volatile uint32_t*)(&_MBAR[0x7F0C]))
-#define MCF_CTM_CTCR4 (*(volatile uint32_t*)(&_MBAR[0x7F10]))
-#define MCF_CTM_CTCR5 (*(volatile uint32_t*)(&_MBAR[0x7F14]))
-#define MCF_CTM_CTCR6 (*(volatile uint32_t*)(&_MBAR[0x7F18]))
-#define MCF_CTM_CTCR7 (*(volatile uint32_t*)(&_MBAR[0x7F1C]))
-#define MCF_CTM_CTCRF(x) (*(volatile uint32_t*)(&_MBAR[0x7F00 + ((x)*0x4)]))
-#define MCF_CTM_CTCRV(x) (*(volatile uint32_t*)(&_MBAR[0x7F10 + ((x-4)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_CTM_CTCRF */
-#define MCF_CTM_CTCRF_CRV(x) (((x)&0xFFFF)<<0)
-#define MCF_CTM_CTCRF_S(x) (((x)&0xF)<<0x10)
-#define MCF_CTM_CTCRF_S_CLK_1 (0)
-#define MCF_CTM_CTCRF_S_CLK_2 (0x10000)
-#define MCF_CTM_CTCRF_S_CLK_4 (0x20000)
-#define MCF_CTM_CTCRF_S_CLK_8 (0x30000)
-#define MCF_CTM_CTCRF_S_CLK_16 (0x40000)
-#define MCF_CTM_CTCRF_S_CLK_32 (0x50000)
-#define MCF_CTM_CTCRF_S_CLK_64 (0x60000)
-#define MCF_CTM_CTCRF_S_CLK_128 (0x70000)
-#define MCF_CTM_CTCRF_S_CLK_256 (0x80000)
-#define MCF_CTM_CTCRF_S_CLK_EXT (0x90000)
-#define MCF_CTM_CTCRF_PCT(x) (((x)&0x7)<<0x14)
-#define MCF_CTM_CTCRF_PCT_100 (0)
-#define MCF_CTM_CTCRF_PCT_50 (0x100000)
-#define MCF_CTM_CTCRF_PCT_25 (0x200000)
-#define MCF_CTM_CTCRF_PCT_12p5 (0x300000)
-#define MCF_CTM_CTCRF_PCT_6p25 (0x400000)
-#define MCF_CTM_CTCRF_PCT_OFF (0x500000)
-#define MCF_CTM_CTCRF_M (0x800000)
-#define MCF_CTM_CTCRF_IM (0x1000000)
-#define MCF_CTM_CTCRF_I (0x80000000)
-
-/* Bit definitions and macros for MCF_CTM_CTCRV */
-#define MCF_CTM_CTCRV_CRV(x) (((x)&0xFFFFFF)<<0)
-#define MCF_CTM_CTCRV_PCT(x) (((x)&0x7)<<0x18)
-#define MCF_CTM_CTCRV_PCT_100 (0)
-#define MCF_CTM_CTCRV_PCT_50 (0x1000000)
-#define MCF_CTM_CTCRV_PCT_25 (0x2000000)
-#define MCF_CTM_CTCRV_PCT_12p5 (0x3000000)
-#define MCF_CTM_CTCRV_PCT_6p25 (0x4000000)
-#define MCF_CTM_CTCRV_PCT_OFF (0x5000000)
-#define MCF_CTM_CTCRV_M (0x8000000)
-#define MCF_CTM_CTCRV_S (0x10000000)
-
-
-#endif /* __MCF5475_CTM_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_DMA.h b/BaS_gcc/tos/vmem_test/include/MCF5475_DMA.h
deleted file mode 100644
index 4e6f916..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_DMA.h
+++ /dev/null
@@ -1,234 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DMA_H__
-#define __MCF5475_DMA_H__
-
-
-/*********************************************************************
-*
-* Multichannel DMA (DMA)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DMA_TASKBAR (*(volatile uint32_t*)(&_MBAR[0x8000]))
-#define MCF_DMA_CP (*(volatile uint32_t*)(&_MBAR[0x8004]))
-#define MCF_DMA_EP (*(volatile uint32_t*)(&_MBAR[0x8008]))
-#define MCF_DMA_VP (*(volatile uint32_t*)(&_MBAR[0x800C]))
-#define MCF_DMA_PTD (*(volatile uint32_t*)(&_MBAR[0x8010]))
-#define MCF_DMA_DIPR (*(volatile uint32_t*)(&_MBAR[0x8014]))
-#define MCF_DMA_DIMR (*(volatile uint32_t*)(&_MBAR[0x8018]))
-#define MCF_DMA_TCR0 (*(volatile uint16_t*)(&_MBAR[0x801C]))
-#define MCF_DMA_TCR1 (*(volatile uint16_t*)(&_MBAR[0x801E]))
-#define MCF_DMA_TCR2 (*(volatile uint16_t*)(&_MBAR[0x8020]))
-#define MCF_DMA_TCR3 (*(volatile uint16_t*)(&_MBAR[0x8022]))
-#define MCF_DMA_TCR4 (*(volatile uint16_t*)(&_MBAR[0x8024]))
-#define MCF_DMA_TCR5 (*(volatile uint16_t*)(&_MBAR[0x8026]))
-#define MCF_DMA_TCR6 (*(volatile uint16_t*)(&_MBAR[0x8028]))
-#define MCF_DMA_TCR7 (*(volatile uint16_t*)(&_MBAR[0x802A]))
-#define MCF_DMA_TCR8 (*(volatile uint16_t*)(&_MBAR[0x802C]))
-#define MCF_DMA_TCR9 (*(volatile uint16_t*)(&_MBAR[0x802E]))
-#define MCF_DMA_TCR10 (*(volatile uint16_t*)(&_MBAR[0x8030]))
-#define MCF_DMA_TCR11 (*(volatile uint16_t*)(&_MBAR[0x8032]))
-#define MCF_DMA_TCR12 (*(volatile uint16_t*)(&_MBAR[0x8034]))
-#define MCF_DMA_TCR13 (*(volatile uint16_t*)(&_MBAR[0x8036]))
-#define MCF_DMA_TCR14 (*(volatile uint16_t*)(&_MBAR[0x8038]))
-#define MCF_DMA_TCR15 (*(volatile uint16_t*)(&_MBAR[0x803A]))
-#define MCF_DMA_PRIOR0 (*(volatile uint8_t *)(&_MBAR[0x803C]))
-#define MCF_DMA_PRIOR1 (*(volatile uint8_t *)(&_MBAR[0x803D]))
-#define MCF_DMA_PRIOR2 (*(volatile uint8_t *)(&_MBAR[0x803E]))
-#define MCF_DMA_PRIOR3 (*(volatile uint8_t *)(&_MBAR[0x803F]))
-#define MCF_DMA_PRIOR4 (*(volatile uint8_t *)(&_MBAR[0x8040]))
-#define MCF_DMA_PRIOR5 (*(volatile uint8_t *)(&_MBAR[0x8041]))
-#define MCF_DMA_PRIOR6 (*(volatile uint8_t *)(&_MBAR[0x8042]))
-#define MCF_DMA_PRIOR7 (*(volatile uint8_t *)(&_MBAR[0x8043]))
-#define MCF_DMA_PRIOR8 (*(volatile uint8_t *)(&_MBAR[0x8044]))
-#define MCF_DMA_PRIOR9 (*(volatile uint8_t *)(&_MBAR[0x8045]))
-#define MCF_DMA_PRIOR10 (*(volatile uint8_t *)(&_MBAR[0x8046]))
-#define MCF_DMA_PRIOR11 (*(volatile uint8_t *)(&_MBAR[0x8047]))
-#define MCF_DMA_PRIOR12 (*(volatile uint8_t *)(&_MBAR[0x8048]))
-#define MCF_DMA_PRIOR13 (*(volatile uint8_t *)(&_MBAR[0x8049]))
-#define MCF_DMA_PRIOR14 (*(volatile uint8_t *)(&_MBAR[0x804A]))
-#define MCF_DMA_PRIOR15 (*(volatile uint8_t *)(&_MBAR[0x804B]))
-#define MCF_DMA_PRIOR16 (*(volatile uint8_t *)(&_MBAR[0x804C]))
-#define MCF_DMA_PRIOR17 (*(volatile uint8_t *)(&_MBAR[0x804D]))
-#define MCF_DMA_PRIOR18 (*(volatile uint8_t *)(&_MBAR[0x804E]))
-#define MCF_DMA_PRIOR19 (*(volatile uint8_t *)(&_MBAR[0x804F]))
-#define MCF_DMA_PRIOR20 (*(volatile uint8_t *)(&_MBAR[0x8050]))
-#define MCF_DMA_PRIOR21 (*(volatile uint8_t *)(&_MBAR[0x8051]))
-#define MCF_DMA_PRIOR22 (*(volatile uint8_t *)(&_MBAR[0x8052]))
-#define MCF_DMA_PRIOR23 (*(volatile uint8_t *)(&_MBAR[0x8053]))
-#define MCF_DMA_PRIOR24 (*(volatile uint8_t *)(&_MBAR[0x8054]))
-#define MCF_DMA_PRIOR25 (*(volatile uint8_t *)(&_MBAR[0x8055]))
-#define MCF_DMA_PRIOR26 (*(volatile uint8_t *)(&_MBAR[0x8056]))
-#define MCF_DMA_PRIOR27 (*(volatile uint8_t *)(&_MBAR[0x8057]))
-#define MCF_DMA_PRIOR28 (*(volatile uint8_t *)(&_MBAR[0x8058]))
-#define MCF_DMA_PRIOR29 (*(volatile uint8_t *)(&_MBAR[0x8059]))
-#define MCF_DMA_PRIOR30 (*(volatile uint8_t *)(&_MBAR[0x805A]))
-#define MCF_DMA_PRIOR31 (*(volatile uint8_t *)(&_MBAR[0x805B]))
-#define MCF_DMA_IMCR (*(volatile uint32_t*)(&_MBAR[0x805C]))
-#define MCF_DMA_TSKSZ0 (*(volatile uint32_t*)(&_MBAR[0x8060]))
-#define MCF_DMA_TSKSZ1 (*(volatile uint32_t*)(&_MBAR[0x8064]))
-#define MCF_DMA_DBGCOMP0 (*(volatile uint32_t*)(&_MBAR[0x8070]))
-#define MCF_DMA_DBGCOMP2 (*(volatile uint32_t*)(&_MBAR[0x8074]))
-#define MCF_DMA_DBGCTL (*(volatile uint32_t*)(&_MBAR[0x8078]))
-#define MCF_DMA_TCR(x) (*(volatile uint16_t*)(&_MBAR[0x801C + ((x)*0x2)]))
-#define MCF_DMA_PRIOR(x) (*(volatile uint8_t *)(&_MBAR[0x803C + ((x)*0x1)]))
-
-
-/* Bit definitions and macros for MCF_DMA_TASKBAR */
-#define MCF_DMA_TASKBAR_TASK_BASE_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_CP */
-#define MCF_DMA_CP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_EP */
-#define MCF_DMA_EP_DESCRIPTOR_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_VP */
-#define MCF_DMA_VP_VARIABLE_POINTER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_PTD */
-#define MCF_DMA_PTD_PCTL0 (0x1)
-#define MCF_DMA_PTD_PCTL1 (0x2)
-#define MCF_DMA_PTD_PCTL13 (0x2000)
-#define MCF_DMA_PTD_PCTL14 (0x4000)
-#define MCF_DMA_PTD_PCTL15 (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_DIPR */
-#define MCF_DMA_DIPR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DIMR */
-#define MCF_DMA_DIMR_TASK(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_TCR */
-#define MCF_DMA_TCR_ASTSKNUM(x) (((x)&0xF)<<0)
-#define MCF_DMA_TCR_HLDINITNUM (0x20)
-#define MCF_DMA_TCR_HIPRITSKEN (0x40)
-#define MCF_DMA_TCR_ASTRT (0x80)
-#define MCF_DMA_TCR_INITNUM(x) (((x)&0x1F)<<0x8)
-#define MCF_DMA_TCR_ALWINIT (0x2000)
-#define MCF_DMA_TCR_V (0x4000)
-#define MCF_DMA_TCR_EN (0x8000)
-
-/* Bit definitions and macros for MCF_DMA_PRIOR */
-#define MCF_DMA_PRIOR_PRI(x) (((x)&0x7)<<0)
-#define MCF_DMA_PRIOR_HLD (0x80)
-
-/* Bit definitions and macros for MCF_DMA_IMCR */
-#define MCF_DMA_IMCR_IMC16(x) (((x)&0x3)<<0)
-#define MCF_DMA_IMCR_IMC17(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_IMCR_IMC18(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_IMCR_IMC19(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_IMCR_IMC20(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_IMCR_IMC21(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_IMCR_IMC22(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_IMCR_IMC23(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_IMCR_IMC24(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_IMCR_IMC25(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_IMCR_IMC26(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_IMCR_IMC27(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_IMCR_IMC28(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_IMCR_IMC29(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_IMCR_IMC30(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_IMCR_IMC31(x) (((x)&0x3)<<0x1E)
-
-
-#define MCF_DMA_IMCR_IMC16_FEC0RX (0x00000000)
-#define MCF_DMA_IMCR_IMC17_FEC0TX (0x00000000)
-#define MCF_DMA_IMCR_IMC18_FEC0RX (0x00000020)
-#define MCF_DMA_IMCR_IMC19_FEC0TX (0x00000080)
-#define MCF_DMA_IMCR_IMC20_FEC1RX (0x00000100)
-#define MCF_DMA_IMCR_IMC21_DREQ1 (0x00000000)
-#define MCF_DMA_IMCR_IMC21_FEC1TX (0x00000400)
-#define MCF_DMA_IMCR_IMC22_FEC0RX (0x00001000)
-#define MCF_DMA_IMCR_IMC23_FEC0TX (0x00004000)
-#define MCF_DMA_IMCR_IMC24_CTM0 (0x00010000)
-#define MCF_DMA_IMCR_IMC24_FEC1RX (0x00020000)
-#define MCF_DMA_IMCR_IMC25_CTM1 (0x00040000)
-#define MCF_DMA_IMCR_IMC25_FEC1TX (0x00080000)
-#define MCF_DMA_IMCR_IMC26_USBEP4 (0x00000000)
-#define MCF_DMA_IMCR_IMC26_CTM2 (0x00200000)
-#define MCF_DMA_IMCR_IMC27_USBEP5 (0x00000000)
-#define MCF_DMA_IMCR_IMC27_CTM3 (0x00800000)
-#define MCF_DMA_IMCR_IMC28_USBEP6 (0x00000000)
-#define MCF_DMA_IMCR_IMC28_CTM4 (0x01000000)
-#define MCF_DMA_IMCR_IMC28_DREQ1 (0x02000000)
-#define MCF_DMA_IMCR_IMC28_PSC2RX (0x03000000)
-#define MCF_DMA_IMCR_IMC29_DREQ1 (0x04000000)
-#define MCF_DMA_IMCR_IMC29_CTM5 (0x08000000)
-#define MCF_DMA_IMCR_IMC29_PSC2TX (0x0C000000)
-#define MCF_DMA_IMCR_IMC30_FEC1RX (0x00000000)
-#define MCF_DMA_IMCR_IMC30_CTM6 (0x10000000)
-#define MCF_DMA_IMCR_IMC30_PSC3RX (0x30000000)
-#define MCF_DMA_IMCR_IMC31_FEC1TX (0x00000000)
-#define MCF_DMA_IMCR_IMC31_CTM7 (0x80000000)
-#define MCF_DMA_IMCR_IMC31_PSC3TX (0xC0000000)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ0 */
-#define MCF_DMA_TSKSZ0_DSTSZ7(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ0_SRCSZ7(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ0_DSTSZ6(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ0_SRCSZ6(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ0_DSTSZ5(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ0_SRCSZ5(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ0_DSTSZ4(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ0_SRCSZ4(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ0_DSTSZ3(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ0_SRCSZ3(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ0_DSTSZ2(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ0_SRCSZ2(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ0_DSTSZ1(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ0_SRCSZ1(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ0_DSTSZ0(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ0_SRCSZ0(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_TSKSZ1 */
-#define MCF_DMA_TSKSZ1_DSTSZ15(x) (((x)&0x3)<<0)
-#define MCF_DMA_TSKSZ1_SRCSZ15(x) (((x)&0x3)<<0x2)
-#define MCF_DMA_TSKSZ1_DSTSZ14(x) (((x)&0x3)<<0x4)
-#define MCF_DMA_TSKSZ1_SRCSZ14(x) (((x)&0x3)<<0x6)
-#define MCF_DMA_TSKSZ1_DSTSZ13(x) (((x)&0x3)<<0x8)
-#define MCF_DMA_TSKSZ1_SRCSZ13(x) (((x)&0x3)<<0xA)
-#define MCF_DMA_TSKSZ1_DSTSZ12(x) (((x)&0x3)<<0xC)
-#define MCF_DMA_TSKSZ1_SRCSZ12(x) (((x)&0x3)<<0xE)
-#define MCF_DMA_TSKSZ1_DSTSZ11(x) (((x)&0x3)<<0x10)
-#define MCF_DMA_TSKSZ1_SRCSZ11(x) (((x)&0x3)<<0x12)
-#define MCF_DMA_TSKSZ1_DSTSZ10(x) (((x)&0x3)<<0x14)
-#define MCF_DMA_TSKSZ1_SRCSZ10(x) (((x)&0x3)<<0x16)
-#define MCF_DMA_TSKSZ1_DSTSZ9(x) (((x)&0x3)<<0x18)
-#define MCF_DMA_TSKSZ1_SRCSZ9(x) (((x)&0x3)<<0x1A)
-#define MCF_DMA_TSKSZ1_DSTSZ8(x) (((x)&0x3)<<0x1C)
-#define MCF_DMA_TSKSZ1_SRCSZ8(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP0 */
-#define MCF_DMA_DBGCOMP0_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCOMP2 */
-#define MCF_DMA_DBGCOMP2_COMPARATOR_VALUE(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DMA_DBGCTL */
-#define MCF_DMA_DBGCTL_I (0x2)
-#define MCF_DMA_DBGCTL_E (0x4)
-#define MCF_DMA_DBGCTL_AND_OR (0x80)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_2(x) (((x)&0x7)<<0x8)
-#define MCF_DMA_DBGCTL_COMPARATOR_TYPE_1(x) (((x)&0x7)<<0xB)
-#define MCF_DMA_DBGCTL_B (0x4000)
-#define MCF_DMA_DBGCTL_AA (0x8000)
-#define MCF_DMA_DBGCTL_BLOCK_TASKS(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_DMA_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_DSPI.h b/BaS_gcc/tos/vmem_test/include/MCF5475_DSPI.h
deleted file mode 100644
index 76cac28..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_DSPI.h
+++ /dev/null
@@ -1,150 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_DSPI_H__
-#define __MCF5475_DSPI_H__
-
-
-/*********************************************************************
-*
-* DMA Serial Peripheral Interface (DSPI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_DSPI_DMCR (*(volatile uint32_t*)(&_MBAR[0x8A00]))
-#define MCF_DSPI_DTCR (*(volatile uint32_t*)(&_MBAR[0x8A08]))
-#define MCF_DSPI_DCTAR0 (*(volatile uint32_t*)(&_MBAR[0x8A0C]))
-#define MCF_DSPI_DCTAR1 (*(volatile uint32_t*)(&_MBAR[0x8A10]))
-#define MCF_DSPI_DCTAR2 (*(volatile uint32_t*)(&_MBAR[0x8A14]))
-#define MCF_DSPI_DCTAR3 (*(volatile uint32_t*)(&_MBAR[0x8A18]))
-#define MCF_DSPI_DCTAR4 (*(volatile uint32_t*)(&_MBAR[0x8A1C]))
-#define MCF_DSPI_DCTAR5 (*(volatile uint32_t*)(&_MBAR[0x8A20]))
-#define MCF_DSPI_DCTAR6 (*(volatile uint32_t*)(&_MBAR[0x8A24]))
-#define MCF_DSPI_DCTAR7 (*(volatile uint32_t*)(&_MBAR[0x8A28]))
-#define MCF_DSPI_DSR (*(volatile uint32_t*)(&_MBAR[0x8A2C]))
-#define MCF_DSPI_DIRSR (*(volatile uint32_t*)(&_MBAR[0x8A30]))
-#define MCF_DSPI_DTFR (*(volatile uint32_t*)(&_MBAR[0x8A34]))
-#define MCF_DSPI_DRFR (*(volatile uint32_t*)(&_MBAR[0x8A38]))
-#define MCF_DSPI_DTFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A3C]))
-#define MCF_DSPI_DTFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A40]))
-#define MCF_DSPI_DTFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A44]))
-#define MCF_DSPI_DTFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A48]))
-#define MCF_DSPI_DRFDR0 (*(volatile uint32_t*)(&_MBAR[0x8A7C]))
-#define MCF_DSPI_DRFDR1 (*(volatile uint32_t*)(&_MBAR[0x8A80]))
-#define MCF_DSPI_DRFDR2 (*(volatile uint32_t*)(&_MBAR[0x8A84]))
-#define MCF_DSPI_DRFDR3 (*(volatile uint32_t*)(&_MBAR[0x8A88]))
-#define MCF_DSPI_DCTAR(x) (*(volatile uint32_t*)(&_MBAR[0x8A0C + ((x)*0x4)]))
-#define MCF_DSPI_DTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A3C + ((x)*0x4)]))
-#define MCF_DSPI_DRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8A7C + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_DSPI_DMCR */
-#define MCF_DSPI_DMCR_HALT (0x1)
-#define MCF_DSPI_DMCR_SMPL_PT(x) (((x)&0x3)<<0x8)
-#define MCF_DSPI_DMCR_SMPL_PT_0CLK (0)
-#define MCF_DSPI_DMCR_SMPL_PT_1CLK (0x100)
-#define MCF_DSPI_DMCR_SMPL_PT_2CLK (0x200)
-#define MCF_DSPI_DMCR_CRXF (0x400)
-#define MCF_DSPI_DMCR_CTXF (0x800)
-#define MCF_DSPI_DMCR_DRXF (0x1000)
-#define MCF_DSPI_DMCR_DTXF (0x2000)
-#define MCF_DSPI_DMCR_CSIS0 (0x10000)
-#define MCF_DSPI_DMCR_CSIS2 (0x40000)
-#define MCF_DSPI_DMCR_CSIS3 (0x80000)
-#define MCF_DSPI_DMCR_CSIS5 (0x200000)
-#define MCF_DSPI_DMCR_ROOE (0x1000000)
-#define MCF_DSPI_DMCR_PCSSE (0x2000000)
-#define MCF_DSPI_DMCR_MTFE (0x4000000)
-#define MCF_DSPI_DMCR_FRZ (0x8000000)
-#define MCF_DSPI_DMCR_DCONF(x) (((x)&0x3)<<0x1C)
-#define MCF_DSPI_DMCR_CSCK (0x40000000)
-#define MCF_DSPI_DMCR_MSTR (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTCR */
-#define MCF_DSPI_DTCR_SPI_TCNT(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DCTAR */
-#define MCF_DSPI_DCTAR_BR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DCTAR_DT(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DCTAR_ASC(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DCTAR_CSSCK(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DCTAR_PBR(x) (((x)&0x3)<<0x10)
-#define MCF_DSPI_DCTAR_PBR_1CLK (0)
-#define MCF_DSPI_DCTAR_PBR_3CLK (0x10000)
-#define MCF_DSPI_DCTAR_PBR_5CLK (0x20000)
-#define MCF_DSPI_DCTAR_PBR_7CLK (0x30000)
-#define MCF_DSPI_DCTAR_PDT(x) (((x)&0x3)<<0x12)
-#define MCF_DSPI_DCTAR_PDT_1CLK (0)
-#define MCF_DSPI_DCTAR_PDT_3CLK (0x40000)
-#define MCF_DSPI_DCTAR_PDT_5CLK (0x80000)
-#define MCF_DSPI_DCTAR_PDT_7CLK (0xC0000)
-#define MCF_DSPI_DCTAR_PASC(x) (((x)&0x3)<<0x14)
-#define MCF_DSPI_DCTAR_PASC_1CLK (0)
-#define MCF_DSPI_DCTAR_PASC_3CLK (0x100000)
-#define MCF_DSPI_DCTAR_PASC_5CLK (0x200000)
-#define MCF_DSPI_DCTAR_PASC_7CLK (0x300000)
-#define MCF_DSPI_DCTAR_PCSSCK(x) (((x)&0x3)<<0x16)
-#define MCF_DSPI_DCTAR_LSBFE (0x1000000)
-#define MCF_DSPI_DCTAR_CPHA (0x2000000)
-#define MCF_DSPI_DCTAR_CPOL (0x4000000)
-#define MCF_DSPI_DCTAR_TRSZ(x) (((x)&0xF)<<0x1B)
-
-/* Bit definitions and macros for MCF_DSPI_DSR */
-#define MCF_DSPI_DSR_RXPTR(x) (((x)&0xF)<<0)
-#define MCF_DSPI_DSR_RXCTR(x) (((x)&0xF)<<0x4)
-#define MCF_DSPI_DSR_TXPTR(x) (((x)&0xF)<<0x8)
-#define MCF_DSPI_DSR_TXCTR(x) (((x)&0xF)<<0xC)
-#define MCF_DSPI_DSR_RFDF (0x20000)
-#define MCF_DSPI_DSR_RFOF (0x80000)
-#define MCF_DSPI_DSR_TFFF (0x2000000)
-#define MCF_DSPI_DSR_TFUF (0x8000000)
-#define MCF_DSPI_DSR_EOQF (0x10000000)
-#define MCF_DSPI_DSR_TXRXS (0x40000000)
-#define MCF_DSPI_DSR_TCF (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DIRSR */
-#define MCF_DSPI_DIRSR_RFDFS (0x10000)
-#define MCF_DSPI_DIRSR_RFDFE (0x20000)
-#define MCF_DSPI_DIRSR_RFOFE (0x80000)
-#define MCF_DSPI_DIRSR_TFFFS (0x1000000)
-#define MCF_DSPI_DIRSR_TFFFE (0x2000000)
-#define MCF_DSPI_DIRSR_TFUFE (0x8000000)
-#define MCF_DSPI_DIRSR_EOQFE (0x10000000)
-#define MCF_DSPI_DIRSR_TCFE (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DTFR */
-#define MCF_DSPI_DTFR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFR_CS0 (0x10000)
-#define MCF_DSPI_DTFR_CS2 (0x40000)
-#define MCF_DSPI_DTFR_CS3 (0x80000)
-#define MCF_DSPI_DTFR_CS5 (0x200000)
-#define MCF_DSPI_DTFR_CTCNT (0x4000000)
-#define MCF_DSPI_DTFR_EOQ (0x8000000)
-#define MCF_DSPI_DTFR_CTAS(x) (((x)&0x7)<<0x1C)
-#define MCF_DSPI_DTFR_CONT (0x80000000)
-
-/* Bit definitions and macros for MCF_DSPI_DRFR */
-#define MCF_DSPI_DRFR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_DSPI_DTFDR */
-#define MCF_DSPI_DTFDR_TXDATA(x) (((x)&0xFFFF)<<0)
-#define MCF_DSPI_DTFDR_TXCMD(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_DSPI_DRFDR */
-#define MCF_DSPI_DRFDR_RXDATA(x) (((x)&0xFFFF)<<0)
-
-
-#endif /* __MCF5475_DSPI_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_EPORT.h b/BaS_gcc/tos/vmem_test/include/MCF5475_EPORT.h
deleted file mode 100644
index 6506196..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_EPORT.h
+++ /dev/null
@@ -1,123 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_EPORT_H__
-#define __MCF5475_EPORT_H__
-
-
-/*********************************************************************
-*
-* Edge Port Module (EPORT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_EPORT_EPPAR (*(volatile uint16_t*)(&_MBAR[0xF00]))
-#define MCF_EPORT_EPDDR (*(volatile uint8_t *)(&_MBAR[0xF04]))
-#define MCF_EPORT_EPIER (*(volatile uint8_t *)(&_MBAR[0xF05]))
-#define MCF_EPORT_EPDR (*(volatile uint8_t *)(&_MBAR[0xF08]))
-#define MCF_EPORT_EPPDR (*(volatile uint8_t *)(&_MBAR[0xF09]))
-#define MCF_EPORT_EPFR (*(volatile uint8_t *)(&_MBAR[0xF0C]))
-
-
-
-/* Bit definitions and macros for MCF_EPORT_EPPAR */
-#define MCF_EPORT_EPPAR_EPPA1(x) (((x)&0x3)<<0x2)
-#define MCF_EPORT_EPPAR_EPPA1_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA1_RISING (0x4)
-#define MCF_EPORT_EPPAR_EPPA1_FALLING (0x8)
-#define MCF_EPORT_EPPAR_EPPA1_BOTH (0xC)
-#define MCF_EPORT_EPPAR_EPPA2(x) (((x)&0x3)<<0x4)
-#define MCF_EPORT_EPPAR_EPPA2_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA2_RISING (0x10)
-#define MCF_EPORT_EPPAR_EPPA2_FALLING (0x20)
-#define MCF_EPORT_EPPAR_EPPA2_BOTH (0x30)
-#define MCF_EPORT_EPPAR_EPPA3(x) (((x)&0x3)<<0x6)
-#define MCF_EPORT_EPPAR_EPPA3_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA3_RISING (0x40)
-#define MCF_EPORT_EPPAR_EPPA3_FALLING (0x80)
-#define MCF_EPORT_EPPAR_EPPA3_BOTH (0xC0)
-#define MCF_EPORT_EPPAR_EPPA4(x) (((x)&0x3)<<0x8)
-#define MCF_EPORT_EPPAR_EPPA4_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA4_RISING (0x100)
-#define MCF_EPORT_EPPAR_EPPA4_FALLING (0x200)
-#define MCF_EPORT_EPPAR_EPPA4_BOTH (0x300)
-#define MCF_EPORT_EPPAR_EPPA5(x) (((x)&0x3)<<0xA)
-#define MCF_EPORT_EPPAR_EPPA5_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA5_RISING (0x400)
-#define MCF_EPORT_EPPAR_EPPA5_FALLING (0x800)
-#define MCF_EPORT_EPPAR_EPPA5_BOTH (0xC00)
-#define MCF_EPORT_EPPAR_EPPA6(x) (((x)&0x3)<<0xC)
-#define MCF_EPORT_EPPAR_EPPA6_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA6_RISING (0x1000)
-#define MCF_EPORT_EPPAR_EPPA6_FALLING (0x2000)
-#define MCF_EPORT_EPPAR_EPPA6_BOTH (0x3000)
-#define MCF_EPORT_EPPAR_EPPA7(x) (((x)&0x3)<<0xE)
-#define MCF_EPORT_EPPAR_EPPA7_LEVEL (0)
-#define MCF_EPORT_EPPAR_EPPA7_RISING (0x4000)
-#define MCF_EPORT_EPPAR_EPPA7_FALLING (0x8000)
-#define MCF_EPORT_EPPAR_EPPA7_BOTH (0xC000)
-#define MCF_EPORT_EPPAR_LEVEL (0)
-#define MCF_EPORT_EPPAR_RISING (0x1)
-#define MCF_EPORT_EPPAR_FALLING (0x2)
-#define MCF_EPORT_EPPAR_BOTH (0x3)
-
-/* Bit definitions and macros for MCF_EPORT_EPDDR */
-#define MCF_EPORT_EPDDR_EPDD1 (0x2)
-#define MCF_EPORT_EPDDR_EPDD2 (0x4)
-#define MCF_EPORT_EPDDR_EPDD3 (0x8)
-#define MCF_EPORT_EPDDR_EPDD4 (0x10)
-#define MCF_EPORT_EPDDR_EPDD5 (0x20)
-#define MCF_EPORT_EPDDR_EPDD6 (0x40)
-#define MCF_EPORT_EPDDR_EPDD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPIER */
-#define MCF_EPORT_EPIER_EPIE1 (0x2)
-#define MCF_EPORT_EPIER_EPIE2 (0x4)
-#define MCF_EPORT_EPIER_EPIE3 (0x8)
-#define MCF_EPORT_EPIER_EPIE4 (0x10)
-#define MCF_EPORT_EPIER_EPIE5 (0x20)
-#define MCF_EPORT_EPIER_EPIE6 (0x40)
-#define MCF_EPORT_EPIER_EPIE7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPDR */
-#define MCF_EPORT_EPDR_EPD1 (0x2)
-#define MCF_EPORT_EPDR_EPD2 (0x4)
-#define MCF_EPORT_EPDR_EPD3 (0x8)
-#define MCF_EPORT_EPDR_EPD4 (0x10)
-#define MCF_EPORT_EPDR_EPD5 (0x20)
-#define MCF_EPORT_EPDR_EPD6 (0x40)
-#define MCF_EPORT_EPDR_EPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPPDR */
-#define MCF_EPORT_EPPDR_EPPD1 (0x2)
-#define MCF_EPORT_EPPDR_EPPD2 (0x4)
-#define MCF_EPORT_EPPDR_EPPD3 (0x8)
-#define MCF_EPORT_EPPDR_EPPD4 (0x10)
-#define MCF_EPORT_EPPDR_EPPD5 (0x20)
-#define MCF_EPORT_EPPDR_EPPD6 (0x40)
-#define MCF_EPORT_EPPDR_EPPD7 (0x80)
-
-/* Bit definitions and macros for MCF_EPORT_EPFR */
-#define MCF_EPORT_EPFR_EPF1 (0x2)
-#define MCF_EPORT_EPFR_EPF2 (0x4)
-#define MCF_EPORT_EPFR_EPF3 (0x8)
-#define MCF_EPORT_EPFR_EPF4 (0x10)
-#define MCF_EPORT_EPFR_EPF5 (0x20)
-#define MCF_EPORT_EPFR_EPF6 (0x40)
-#define MCF_EPORT_EPFR_EPF7 (0x80)
-
-
-#endif /* __MCF5475_EPORT_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_FBCS.h b/BaS_gcc/tos/vmem_test/include/MCF5475_FBCS.h
deleted file mode 100644
index 37daf00..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_FBCS.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FBCS_H__
-#define __MCF5475_FBCS_H__
-
-
-/*********************************************************************
-*
-* FlexBus Chip Select Module (FBCS)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FBCS0_CSAR (*(volatile uint32_t*)(&_MBAR[0x500]))
-#define MCF_FBCS0_CSMR (*(volatile uint32_t*)(&_MBAR[0x504]))
-#define MCF_FBCS0_CSCR (*(volatile uint32_t*)(&_MBAR[0x508]))
-
-#define MCF_FBCS1_CSAR (*(volatile uint32_t*)(&_MBAR[0x50C]))
-#define MCF_FBCS1_CSMR (*(volatile uint32_t*)(&_MBAR[0x510]))
-#define MCF_FBCS1_CSCR (*(volatile uint32_t*)(&_MBAR[0x514]))
-
-#define MCF_FBCS2_CSAR (*(volatile uint32_t*)(&_MBAR[0x518]))
-#define MCF_FBCS2_CSMR (*(volatile uint32_t*)(&_MBAR[0x51C]))
-#define MCF_FBCS2_CSCR (*(volatile uint32_t*)(&_MBAR[0x520]))
-
-#define MCF_FBCS3_CSAR (*(volatile uint32_t*)(&_MBAR[0x524]))
-#define MCF_FBCS3_CSMR (*(volatile uint32_t*)(&_MBAR[0x528]))
-#define MCF_FBCS3_CSCR (*(volatile uint32_t*)(&_MBAR[0x52C]))
-
-#define MCF_FBCS4_CSAR (*(volatile uint32_t*)(&_MBAR[0x530]))
-#define MCF_FBCS4_CSMR (*(volatile uint32_t*)(&_MBAR[0x534]))
-#define MCF_FBCS4_CSCR (*(volatile uint32_t*)(&_MBAR[0x538]))
-
-#define MCF_FBCS5_CSAR (*(volatile uint32_t*)(&_MBAR[0x53C]))
-#define MCF_FBCS5_CSMR (*(volatile uint32_t*)(&_MBAR[0x540]))
-#define MCF_FBCS5_CSCR (*(volatile uint32_t*)(&_MBAR[0x544]))
-
-#define MCF_FBCS_CSAR(x) (*(volatile uint32_t*)(&_MBAR[0x500 + ((x)*0xC)]))
-#define MCF_FBCS_CSMR(x) (*(volatile uint32_t*)(&_MBAR[0x504 + ((x)*0xC)]))
-#define MCF_FBCS_CSCR(x) (*(volatile uint32_t*)(&_MBAR[0x508 + ((x)*0xC)]))
-
-
-/* Bit definitions and macros for MCF_FBCS_CSAR */
-#define MCF_FBCS_CSAR_BA(x) ((x)&0xFFFF0000)
-
-/* Bit definitions and macros for MCF_FBCS_CSMR */
-#define MCF_FBCS_CSMR_V (0x1)
-#define MCF_FBCS_CSMR_WP (0x100)
-#define MCF_FBCS_CSMR_BAM(x) (((x)&0xFFFF)<<0x10)
-#define MCF_FBCS_CSMR_BAM_4G (0xFFFF0000)
-#define MCF_FBCS_CSMR_BAM_2G (0x7FFF0000)
-#define MCF_FBCS_CSMR_BAM_1G (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_1024M (0x3FFF0000)
-#define MCF_FBCS_CSMR_BAM_512M (0x1FFF0000)
-#define MCF_FBCS_CSMR_BAM_256M (0xFFF0000)
-#define MCF_FBCS_CSMR_BAM_128M (0x7FF0000)
-#define MCF_FBCS_CSMR_BAM_64M (0x3FF0000)
-#define MCF_FBCS_CSMR_BAM_32M (0x1FF0000)
-#define MCF_FBCS_CSMR_BAM_16M (0xFF0000)
-#define MCF_FBCS_CSMR_BAM_8M (0x7F0000)
-#define MCF_FBCS_CSMR_BAM_4M (0x3F0000)
-#define MCF_FBCS_CSMR_BAM_2M (0x1F0000)
-#define MCF_FBCS_CSMR_BAM_1M (0xF0000)
-#define MCF_FBCS_CSMR_BAM_1024K (0xF0000)
-#define MCF_FBCS_CSMR_BAM_512K (0x70000)
-#define MCF_FBCS_CSMR_BAM_256K (0x30000)
-#define MCF_FBCS_CSMR_BAM_128K (0x10000)
-#define MCF_FBCS_CSMR_BAM_64K (0)
-
-/* Bit definitions and macros for MCF_FBCS_CSCR */
-#define MCF_FBCS_CSCR_BSTW (0x8)
-#define MCF_FBCS_CSCR_BSTR (0x10)
-#define MCF_FBCS_CSCR_BEM (0x20)
-#define MCF_FBCS_CSCR_PS(x) (((x)&0x3)<<0x6)
-#define MCF_FBCS_CSCR_PS_32 (0)
-#define MCF_FBCS_CSCR_PS_8 (0x40)
-#define MCF_FBCS_CSCR_PS_16 (0x80)
-#define MCF_FBCS_CSCR_AA (0x100)
-#define MCF_FBCS_CSCR_WS(x) (((x)&0x3F)<<0xA)
-#define MCF_FBCS_CSCR_WRAH(x) (((x)&0x3)<<0x10)
-#define MCF_FBCS_CSCR_RDAH(x) (((x)&0x3)<<0x12)
-#define MCF_FBCS_CSCR_ASET(x) (((x)&0x3)<<0x14)
-#define MCF_FBCS_CSCR_SWSEN (0x800000)
-#define MCF_FBCS_CSCR_SWS(x) (((x)&0x3F)<<0x1A)
-
-
-#endif /* __MCF5475_FBCS_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_FEC.h b/BaS_gcc/tos/vmem_test/include/MCF5475_FEC.h
deleted file mode 100644
index fdd9403..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_FEC.h
+++ /dev/null
@@ -1,680 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_FEC_H__
-#define __MCF5475_FEC_H__
-
-
-/*********************************************************************
-*
-* Fast Ethernet Controller(FEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_FEC0_EIR (*(volatile uint32_t*)(&_MBAR[0x9004]))
-#define MCF_FEC0_EIMR (*(volatile uint32_t*)(&_MBAR[0x9008]))
-#define MCF_FEC0_ECR (*(volatile uint32_t*)(&_MBAR[0x9024]))
-#define MCF_FEC0_MMFR (*(volatile uint32_t*)(&_MBAR[0x9040]))
-#define MCF_FEC0_MSCR (*(volatile uint32_t*)(&_MBAR[0x9044]))
-#define MCF_FEC0_MIBC (*(volatile uint32_t*)(&_MBAR[0x9064]))
-#define MCF_FEC0_RCR (*(volatile uint32_t*)(&_MBAR[0x9084]))
-#define MCF_FEC0_RHR (*(volatile uint32_t*)(&_MBAR[0x9088]))
-#define MCF_FEC0_TCR (*(volatile uint32_t*)(&_MBAR[0x90C4]))
-#define MCF_FEC0_PALR (*(volatile uint32_t*)(&_MBAR[0x90E4]))
-#define MCF_FEC0_PAHR (*(volatile uint32_t*)(&_MBAR[0x90E8]))
-#define MCF_FEC0_OPD (*(volatile uint32_t*)(&_MBAR[0x90EC]))
-#define MCF_FEC0_IAUR (*(volatile uint32_t*)(&_MBAR[0x9118]))
-#define MCF_FEC0_IALR (*(volatile uint32_t*)(&_MBAR[0x911C]))
-#define MCF_FEC0_GAUR (*(volatile uint32_t*)(&_MBAR[0x9120]))
-#define MCF_FEC0_GALR (*(volatile uint32_t*)(&_MBAR[0x9124]))
-#define MCF_FEC0_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9144]))
-#define MCF_FEC0_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9184]))
-#define MCF_FEC0_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9188]))
-#define MCF_FEC0_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x918C]))
-#define MCF_FEC0_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9190]))
-#define MCF_FEC0_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9194]))
-#define MCF_FEC0_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9198]))
-#define MCF_FEC0_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x919C]))
-#define MCF_FEC0_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x91A0]))
-#define MCF_FEC0_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x91A4]))
-#define MCF_FEC0_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x91A8]))
-#define MCF_FEC0_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x91AC]))
-#define MCF_FEC0_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x91B0]))
-#define MCF_FEC0_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x91B4]))
-#define MCF_FEC0_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x91B8]))
-#define MCF_FEC0_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x91BC]))
-#define MCF_FEC0_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x91C0]))
-#define MCF_FEC0_FECFRST (*(volatile uint32_t*)(&_MBAR[0x91C4]))
-#define MCF_FEC0_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x91C8]))
-#define MCF_FEC0_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9200]))
-#define MCF_FEC0_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9204]))
-#define MCF_FEC0_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9208]))
-#define MCF_FEC0_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x920C]))
-#define MCF_FEC0_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9210]))
-#define MCF_FEC0_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9214]))
-#define MCF_FEC0_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9218]))
-#define MCF_FEC0_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x921C]))
-#define MCF_FEC0_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9220]))
-#define MCF_FEC0_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9224]))
-#define MCF_FEC0_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9228]))
-#define MCF_FEC0_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x922C]))
-#define MCF_FEC0_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9230]))
-#define MCF_FEC0_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9234]))
-#define MCF_FEC0_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9238]))
-#define MCF_FEC0_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x923C]))
-#define MCF_FEC0_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9240]))
-#define MCF_FEC0_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9244]))
-#define MCF_FEC0_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9248]))
-#define MCF_FEC0_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x924C]))
-#define MCF_FEC0_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9250]))
-#define MCF_FEC0_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9254]))
-#define MCF_FEC0_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9258]))
-#define MCF_FEC0_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x925C]))
-#define MCF_FEC0_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9260]))
-#define MCF_FEC0_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9264]))
-#define MCF_FEC0_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9268]))
-#define MCF_FEC0_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x926C]))
-#define MCF_FEC0_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9270]))
-#define MCF_FEC0_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9274]))
-#define MCF_FEC0_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9280]))
-#define MCF_FEC0_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9284]))
-#define MCF_FEC0_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9288]))
-#define MCF_FEC0_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x928C]))
-#define MCF_FEC0_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9290]))
-#define MCF_FEC0_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9294]))
-#define MCF_FEC0_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9298]))
-#define MCF_FEC0_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x929C]))
-#define MCF_FEC0_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x92A0]))
-#define MCF_FEC0_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x92A4]))
-#define MCF_FEC0_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x92A8]))
-#define MCF_FEC0_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x92AC]))
-#define MCF_FEC0_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x92B0]))
-#define MCF_FEC0_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x92B4]))
-#define MCF_FEC0_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x92B8]))
-#define MCF_FEC0_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x92BC]))
-#define MCF_FEC0_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x92C0]))
-#define MCF_FEC0_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x92C4]))
-#define MCF_FEC0_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x92C8]))
-#define MCF_FEC0_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x92CC]))
-#define MCF_FEC0_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x92D0]))
-#define MCF_FEC0_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x92D4]))
-#define MCF_FEC0_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x92D8]))
-#define MCF_FEC0_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x92DC]))
-#define MCF_FEC0_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x92E0]))
-
-#define MCF_FEC1_EIR (*(volatile uint32_t*)(&_MBAR[0x9804]))
-#define MCF_FEC1_EIMR (*(volatile uint32_t*)(&_MBAR[0x9808]))
-#define MCF_FEC1_ECR (*(volatile uint32_t*)(&_MBAR[0x9824]))
-#define MCF_FEC1_MMFR (*(volatile uint32_t*)(&_MBAR[0x9840]))
-#define MCF_FEC1_MSCR (*(volatile uint32_t*)(&_MBAR[0x9844]))
-#define MCF_FEC1_MIBC (*(volatile uint32_t*)(&_MBAR[0x9864]))
-#define MCF_FEC1_RCR (*(volatile uint32_t*)(&_MBAR[0x9884]))
-#define MCF_FEC1_RHR (*(volatile uint32_t*)(&_MBAR[0x9888]))
-#define MCF_FEC1_TCR (*(volatile uint32_t*)(&_MBAR[0x98C4]))
-#define MCF_FEC1_PALR (*(volatile uint32_t*)(&_MBAR[0x98E4]))
-#define MCF_FEC1_PAHR (*(volatile uint32_t*)(&_MBAR[0x98E8]))
-#define MCF_FEC1_OPD (*(volatile uint32_t*)(&_MBAR[0x98EC]))
-#define MCF_FEC1_IAUR (*(volatile uint32_t*)(&_MBAR[0x9918]))
-#define MCF_FEC1_IALR (*(volatile uint32_t*)(&_MBAR[0x991C]))
-#define MCF_FEC1_GAUR (*(volatile uint32_t*)(&_MBAR[0x9920]))
-#define MCF_FEC1_GALR (*(volatile uint32_t*)(&_MBAR[0x9924]))
-#define MCF_FEC1_FECTFWR (*(volatile uint32_t*)(&_MBAR[0x9944]))
-#define MCF_FEC1_FECRFDR (*(volatile uint32_t*)(&_MBAR[0x9984]))
-#define MCF_FEC1_FECRFSR (*(volatile uint32_t*)(&_MBAR[0x9988]))
-#define MCF_FEC1_FECRFCR (*(volatile uint32_t*)(&_MBAR[0x998C]))
-#define MCF_FEC1_FECRLRFP (*(volatile uint32_t*)(&_MBAR[0x9990]))
-#define MCF_FEC1_FECRLWFP (*(volatile uint32_t*)(&_MBAR[0x9994]))
-#define MCF_FEC1_FECRFAR (*(volatile uint32_t*)(&_MBAR[0x9998]))
-#define MCF_FEC1_FECRFRP (*(volatile uint32_t*)(&_MBAR[0x999C]))
-#define MCF_FEC1_FECRFWP (*(volatile uint32_t*)(&_MBAR[0x99A0]))
-#define MCF_FEC1_FECTFDR (*(volatile uint32_t*)(&_MBAR[0x99A4]))
-#define MCF_FEC1_FECTFSR (*(volatile uint32_t*)(&_MBAR[0x99A8]))
-#define MCF_FEC1_FECTFCR (*(volatile uint32_t*)(&_MBAR[0x99AC]))
-#define MCF_FEC1_FECTLRFP (*(volatile uint32_t*)(&_MBAR[0x99B0]))
-#define MCF_FEC1_FECTLWFP (*(volatile uint32_t*)(&_MBAR[0x99B4]))
-#define MCF_FEC1_FECTFAR (*(volatile uint32_t*)(&_MBAR[0x99B8]))
-#define MCF_FEC1_FECTFRP (*(volatile uint32_t*)(&_MBAR[0x99BC]))
-#define MCF_FEC1_FECTFWP (*(volatile uint32_t*)(&_MBAR[0x99C0]))
-#define MCF_FEC1_FECFRST (*(volatile uint32_t*)(&_MBAR[0x99C4]))
-#define MCF_FEC1_FECCTCWR (*(volatile uint32_t*)(&_MBAR[0x99C8]))
-#define MCF_FEC1_RMON_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A00]))
-#define MCF_FEC1_RMON_T_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A04]))
-#define MCF_FEC1_RMON_T_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A08]))
-#define MCF_FEC1_RMON_T_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A0C]))
-#define MCF_FEC1_RMON_T_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A10]))
-#define MCF_FEC1_RMON_T_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A14]))
-#define MCF_FEC1_RMON_T_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A18]))
-#define MCF_FEC1_RMON_T_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A1C]))
-#define MCF_FEC1_RMON_T_JAB (*(volatile uint32_t*)(&_MBAR[0x9A20]))
-#define MCF_FEC1_RMON_T_COL (*(volatile uint32_t*)(&_MBAR[0x9A24]))
-#define MCF_FEC1_RMON_T_P64 (*(volatile uint32_t*)(&_MBAR[0x9A28]))
-#define MCF_FEC1_RMON_T_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9A2C]))
-#define MCF_FEC1_RMON_T_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9A30]))
-#define MCF_FEC1_RMON_T_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9A34]))
-#define MCF_FEC1_RMON_T_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9A38]))
-#define MCF_FEC1_RMON_T_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9A3C]))
-#define MCF_FEC1_RMON_T_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9A40]))
-#define MCF_FEC1_RMON_T_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9A44]))
-#define MCF_FEC1_IEEE_T_DROP (*(volatile uint32_t*)(&_MBAR[0x9A48]))
-#define MCF_FEC1_IEEE_T_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9A4C]))
-#define MCF_FEC1_IEEE_T_1COL (*(volatile uint32_t*)(&_MBAR[0x9A50]))
-#define MCF_FEC1_IEEE_T_MCOL (*(volatile uint32_t*)(&_MBAR[0x9A54]))
-#define MCF_FEC1_IEEE_T_DEF (*(volatile uint32_t*)(&_MBAR[0x9A58]))
-#define MCF_FEC1_IEEE_T_LCOL (*(volatile uint32_t*)(&_MBAR[0x9A5C]))
-#define MCF_FEC1_IEEE_T_EXCOL (*(volatile uint32_t*)(&_MBAR[0x9A60]))
-#define MCF_FEC1_IEEE_T_MACERR (*(volatile uint32_t*)(&_MBAR[0x9A64]))
-#define MCF_FEC1_IEEE_T_CSERR (*(volatile uint32_t*)(&_MBAR[0x9A68]))
-#define MCF_FEC1_IEEE_T_SQE (*(volatile uint32_t*)(&_MBAR[0x9A6C]))
-#define MCF_FEC1_IEEE_T_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9A70]))
-#define MCF_FEC1_IEEE_T_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9A74]))
-#define MCF_FEC1_RMON_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9A80]))
-#define MCF_FEC1_RMON_R_PACKETS (*(volatile uint32_t*)(&_MBAR[0x9A84]))
-#define MCF_FEC1_RMON_R_BC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A88]))
-#define MCF_FEC1_RMON_R_MC_PKT (*(volatile uint32_t*)(&_MBAR[0x9A8C]))
-#define MCF_FEC1_RMON_R_CRC_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9A90]))
-#define MCF_FEC1_RMON_R_UNDERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A94]))
-#define MCF_FEC1_RMON_R_OVERSIZE (*(volatile uint32_t*)(&_MBAR[0x9A98]))
-#define MCF_FEC1_RMON_R_FRAG (*(volatile uint32_t*)(&_MBAR[0x9A9C]))
-#define MCF_FEC1_RMON_R_JAB (*(volatile uint32_t*)(&_MBAR[0x9AA0]))
-#define MCF_FEC1_RMON_R_RESVD_0 (*(volatile uint32_t*)(&_MBAR[0x9AA4]))
-#define MCF_FEC1_RMON_R_P64 (*(volatile uint32_t*)(&_MBAR[0x9AA8]))
-#define MCF_FEC1_RMON_R_P65TO127 (*(volatile uint32_t*)(&_MBAR[0x9AAC]))
-#define MCF_FEC1_RMON_R_P128TO255 (*(volatile uint32_t*)(&_MBAR[0x9AB0]))
-#define MCF_FEC1_RMON_R_P256TO511 (*(volatile uint32_t*)(&_MBAR[0x9AB4]))
-#define MCF_FEC1_RMON_R_P512TO1023 (*(volatile uint32_t*)(&_MBAR[0x9AB8]))
-#define MCF_FEC1_RMON_R_P1024TO2047 (*(volatile uint32_t*)(&_MBAR[0x9ABC]))
-#define MCF_FEC1_RMON_R_P_GTE2048 (*(volatile uint32_t*)(&_MBAR[0x9AC0]))
-#define MCF_FEC1_RMON_R_OCTETS (*(volatile uint32_t*)(&_MBAR[0x9AC4]))
-#define MCF_FEC1_IEEE_R_DROP (*(volatile uint32_t*)(&_MBAR[0x9AC8]))
-#define MCF_FEC1_IEEE_R_FRAME_OK (*(volatile uint32_t*)(&_MBAR[0x9ACC]))
-#define MCF_FEC1_IEEE_R_CRC (*(volatile uint32_t*)(&_MBAR[0x9AD0]))
-#define MCF_FEC1_IEEE_R_ALIGN (*(volatile uint32_t*)(&_MBAR[0x9AD4]))
-#define MCF_FEC1_IEEE_R_MACERR (*(volatile uint32_t*)(&_MBAR[0x9AD8]))
-#define MCF_FEC1_IEEE_R_FDXFC (*(volatile uint32_t*)(&_MBAR[0x9ADC]))
-#define MCF_FEC1_IEEE_R_OCTETS_OK (*(volatile uint32_t*)(&_MBAR[0x9AE0]))
-
-#define MCF_FEC_EIR(x) (*(volatile uint32_t*)(&_MBAR[0x9004 + ((x)*0x800)]))
-#define MCF_FEC_EIMR(x) (*(volatile uint32_t*)(&_MBAR[0x9008 + ((x)*0x800)]))
-#define MCF_FEC_ECR(x) (*(volatile uint32_t*)(&_MBAR[0x9024 + ((x)*0x800)]))
-#define MCF_FEC_MMFR(x) (*(volatile uint32_t*)(&_MBAR[0x9040 + ((x)*0x800)]))
-#define MCF_FEC_MSCR(x) (*(volatile uint32_t*)(&_MBAR[0x9044 + ((x)*0x800)]))
-#define MCF_FEC_MIBC(x) (*(volatile uint32_t*)(&_MBAR[0x9064 + ((x)*0x800)]))
-#define MCF_FEC_RCR(x) (*(volatile uint32_t*)(&_MBAR[0x9084 + ((x)*0x800)]))
-#define MCF_FEC_RHR(x) (*(volatile uint32_t*)(&_MBAR[0x9088 + ((x)*0x800)]))
-#define MCF_FEC_TCR(x) (*(volatile uint32_t*)(&_MBAR[0x90C4 + ((x)*0x800)]))
-#define MCF_FEC_PALR(x) (*(volatile uint32_t*)(&_MBAR[0x90E4 + ((x)*0x800)]))
-#define MCF_FEC_PAHR(x) (*(volatile uint32_t*)(&_MBAR[0x90E8 + ((x)*0x800)]))
-#define MCF_FEC_OPD(x) (*(volatile uint32_t*)(&_MBAR[0x90EC + ((x)*0x800)]))
-#define MCF_FEC_IAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9118 + ((x)*0x800)]))
-#define MCF_FEC_IALR(x) (*(volatile uint32_t*)(&_MBAR[0x911C + ((x)*0x800)]))
-#define MCF_FEC_GAUR(x) (*(volatile uint32_t*)(&_MBAR[0x9120 + ((x)*0x800)]))
-#define MCF_FEC_GALR(x) (*(volatile uint32_t*)(&_MBAR[0x9124 + ((x)*0x800)]))
-#define MCF_FEC_FECTFWR(x) (*(volatile uint32_t*)(&_MBAR[0x9144 + ((x)*0x800)]))
-#define MCF_FEC_FECRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x9184 + ((x)*0x800)]))
-#define MCF_FEC_FECRFSR(x) (*(volatile uint32_t*)(&_MBAR[0x9188 + ((x)*0x800)]))
-#define MCF_FEC_FECRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x918C + ((x)*0x800)]))
-#define MCF_FEC_FECRLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x9190 + ((x)*0x800)]))
-#define MCF_FEC_FECRLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x9194 + ((x)*0x800)]))
-#define MCF_FEC_FECRFAR(x) (*(volatile uint32_t*)(&_MBAR[0x9198 + ((x)*0x800)]))
-#define MCF_FEC_FECRFRP(x) (*(volatile uint32_t*)(&_MBAR[0x919C + ((x)*0x800)]))
-#define MCF_FEC_FECRFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91A0 + ((x)*0x800)]))
-#define MCF_FEC_FECTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x91A4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFSR(x) (*(volatile uint32_t*)(&_MBAR[0x91A8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x91AC + ((x)*0x800)]))
-#define MCF_FEC_FECTLRFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B0 + ((x)*0x800)]))
-#define MCF_FEC_FECTLWFP(x) (*(volatile uint32_t*)(&_MBAR[0x91B4 + ((x)*0x800)]))
-#define MCF_FEC_FECTFAR(x) (*(volatile uint32_t*)(&_MBAR[0x91B8 + ((x)*0x800)]))
-#define MCF_FEC_FECTFRP(x) (*(volatile uint32_t*)(&_MBAR[0x91BC + ((x)*0x800)]))
-#define MCF_FEC_FECTFWP(x) (*(volatile uint32_t*)(&_MBAR[0x91C0 + ((x)*0x800)]))
-#define MCF_FEC_FECFRST(x) (*(volatile uint32_t*)(&_MBAR[0x91C4 + ((x)*0x800)]))
-#define MCF_FEC_FECCTCWR(x) (*(volatile uint32_t*)(&_MBAR[0x91C8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9200 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9204 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9208 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x920C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9210 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9214 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9218 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x921C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x9220 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_COL(x) (*(volatile uint32_t*)(&_MBAR[0x9224 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P64(x) (*(volatile uint32_t*)(&_MBAR[0x9228 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x922C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x9230 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x9234 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x9238 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x923C + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x9240 + ((x)*0x800)]))
-#define MCF_FEC_RMON_T_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x9244 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9248 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x924C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_1COL(x) (*(volatile uint32_t*)(&_MBAR[0x9250 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9254 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_DEF(x) (*(volatile uint32_t*)(&_MBAR[0x9258 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_LCOL(x) (*(volatile uint32_t*)(&_MBAR[0x925C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_EXCOL(x) (*(volatile uint32_t*)(&_MBAR[0x9260 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x9264 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_CSERR(x) (*(volatile uint32_t*)(&_MBAR[0x9268 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_SQE(x) (*(volatile uint32_t*)(&_MBAR[0x926C + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x9270 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_T_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x9274 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x9280 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_PACKETS(x) (*(volatile uint32_t*)(&_MBAR[0x9284 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_BC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x9288 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_MC_PKT(x) (*(volatile uint32_t*)(&_MBAR[0x928C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_CRC_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x9290 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_UNDERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9294 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OVERSIZE(x) (*(volatile uint32_t*)(&_MBAR[0x9298 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_FRAG(x) (*(volatile uint32_t*)(&_MBAR[0x929C + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_JAB(x) (*(volatile uint32_t*)(&_MBAR[0x92A0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_RESVD_0(x) (*(volatile uint32_t*)(&_MBAR[0x92A4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P64(x) (*(volatile uint32_t*)(&_MBAR[0x92A8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P65TO127(x) (*(volatile uint32_t*)(&_MBAR[0x92AC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P128TO255(x) (*(volatile uint32_t*)(&_MBAR[0x92B0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P256TO511(x) (*(volatile uint32_t*)(&_MBAR[0x92B4 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P512TO1023(x) (*(volatile uint32_t*)(&_MBAR[0x92B8 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P1024TO2047(x) (*(volatile uint32_t*)(&_MBAR[0x92BC + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_P_GTE2048(x) (*(volatile uint32_t*)(&_MBAR[0x92C0 + ((x)*0x800)]))
-#define MCF_FEC_RMON_R_OCTETS(x) (*(volatile uint32_t*)(&_MBAR[0x92C4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_DROP(x) (*(volatile uint32_t*)(&_MBAR[0x92C8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FRAME_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92CC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_CRC(x) (*(volatile uint32_t*)(&_MBAR[0x92D0 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_ALIGN(x) (*(volatile uint32_t*)(&_MBAR[0x92D4 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_MACERR(x) (*(volatile uint32_t*)(&_MBAR[0x92D8 + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_FDXFC(x) (*(volatile uint32_t*)(&_MBAR[0x92DC + ((x)*0x800)]))
-#define MCF_FEC_IEEE_R_OCTETS_OK(x) (*(volatile uint32_t*)(&_MBAR[0x92E0 + ((x)*0x800)]))
-
-
-/* Bit definitions and macros for MCF_FEC_EIR */
-#define MCF_FEC_EIR_RFERR (0x20000)
-#define MCF_FEC_EIR_XFERR (0x40000)
-#define MCF_FEC_EIR_XFUN (0x80000)
-#define MCF_FEC_EIR_RL (0x100000)
-#define MCF_FEC_EIR_LC (0x200000)
-#define MCF_FEC_EIR_MII (0x800000)
-#define MCF_FEC_EIR_TXF (0x8000000)
-#define MCF_FEC_EIR_GRA (0x10000000)
-#define MCF_FEC_EIR_BABT (0x20000000)
-#define MCF_FEC_EIR_BABR (0x40000000)
-#define MCF_FEC_EIR_HBERR (0x80000000)
-#define MCF_FEC_EIR_CLEAR_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_EIMR */
-#define MCF_FEC_EIMR_RFERR (0x20000)
-#define MCF_FEC_EIMR_XFERR (0x40000)
-#define MCF_FEC_EIMR_XFUN (0x80000)
-#define MCF_FEC_EIMR_RL (0x100000)
-#define MCF_FEC_EIMR_LC (0x200000)
-#define MCF_FEC_EIMR_MII (0x800000)
-#define MCF_FEC_EIMR_TXF (0x8000000)
-#define MCF_FEC_EIMR_GRA (0x10000000)
-#define MCF_FEC_EIMR_BABT (0x20000000)
-#define MCF_FEC_EIMR_BABR (0x40000000)
-#define MCF_FEC_EIMR_HBERR (0x80000000)
-#define MCF_FEC_EIMR_MASK_ALL (0)
-#define MCF_FEC_EIMR_UNMASK_ALL (0xFFFFFFFF)
-
-/* Bit definitions and macros for MCF_FEC_ECR */
-#define MCF_FEC_ECR_RESET (0x1)
-#define MCF_FEC_ECR_ETHER_EN (0x2)
-
-/* Bit definitions and macros for MCF_FEC_MMFR */
-#define MCF_FEC_MMFR_DATA(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_MMFR_TA(x) (((x)&0x3)<<0x10)
-#define MCF_FEC_MMFR_TA_10 (0x20000)
-#define MCF_FEC_MMFR_RA(x) (((x)&0x1F)<<0x12)
-#define MCF_FEC_MMFR_PA(x) (((x)&0x1F)<<0x17)
-#define MCF_FEC_MMFR_OP(x) (((x)&0x3)<<0x1C)
-#define MCF_FEC_MMFR_OP_READ (0x20000000)
-#define MCF_FEC_MMFR_OP_WRITE (0x10000000)
-#define MCF_FEC_MMFR_ST(x) (((x)&0x3)<<0x1E)
-#define MCF_FEC_MMFR_ST_01 (0x40000000)
-
-/* Bit definitions and macros for MCF_FEC_MSCR */
-#define MCF_FEC_MSCR_MII_SPEED(x) (((x)&0x3F)<<0x1)
-#define MCF_FEC_MSCR_DIS_PREAMBLE (0x80)
-#define MCF_FEC_MSCR_MII_SPEED_133 (0x1B<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_120 (0x18<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_66 (0xE<<0x1)
-#define MCF_FEC_MSCR_MII_SPEED_60 (0xC<<0x1)
-
-/* Bit definitions and macros for MCF_FEC_MIBC */
-#define MCF_FEC_MIBC_MIB_IDLE (0x40000000)
-#define MCF_FEC_MIBC_MIB_DISABLE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_RCR */
-#define MCF_FEC_RCR_LOOP (0x1)
-#define MCF_FEC_RCR_DRT (0x2)
-#define MCF_FEC_RCR_MII_MODE (0x4)
-#define MCF_FEC_RCR_PROM (0x8)
-#define MCF_FEC_RCR_BC_REJ (0x10)
-#define MCF_FEC_RCR_FCE (0x20)
-#define MCF_FEC_RCR_MAX_FL(x) (((x)&0x7FF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_RHR */
-#define MCF_FEC_RHR_HASH(x) (((x)&0x3F)<<0x18)
-#define MCF_FEC_RHR_MULTCAST (0x40000000)
-#define MCF_FEC_RHR_FCE (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_TCR */
-#define MCF_FEC_TCR_GTS (0x1)
-#define MCF_FEC_TCR_HBC (0x2)
-#define MCF_FEC_TCR_FDEN (0x4)
-#define MCF_FEC_TCR_TFC_PAUSE (0x8)
-#define MCF_FEC_TCR_RFC_PAUSE (0x10)
-
-/* Bit definitions and macros for MCF_FEC_PALR */
-#define MCF_FEC_PALR_PADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_PAHR */
-#define MCF_FEC_PAHR_TYPE(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_PAHR_PADDR2(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_OPD */
-#define MCF_FEC_OPD_PAUSE_DUR(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_OPD_OPCODE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_FEC_IAUR */
-#define MCF_FEC_IAUR_IADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IALR */
-#define MCF_FEC_IALR_IADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GAUR */
-#define MCF_FEC_GAUR_GADDR1(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_GALR */
-#define MCF_FEC_GALR_GADDR2(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWR */
-#define MCF_FEC_FECTFWR_X_WMRK(x) (((x)&0xF)<<0)
-#define MCF_FEC_FECTFWR_X_WMRK_64 (0)
-#define MCF_FEC_FECTFWR_X_WMRK_128 (0x1)
-#define MCF_FEC_FECTFWR_X_WMRK_192 (0x2)
-#define MCF_FEC_FECTFWR_X_WMRK_256 (0x3)
-#define MCF_FEC_FECTFWR_X_WMRK_320 (0x4)
-#define MCF_FEC_FECTFWR_X_WMRK_384 (0x5)
-#define MCF_FEC_FECTFWR_X_WMRK_448 (0x6)
-#define MCF_FEC_FECTFWR_X_WMRK_512 (0x7)
-#define MCF_FEC_FECTFWR_X_WMRK_576 (0x8)
-#define MCF_FEC_FECTFWR_X_WMRK_640 (0x9)
-#define MCF_FEC_FECTFWR_X_WMRK_704 (0xA)
-#define MCF_FEC_FECTFWR_X_WMRK_768 (0xB)
-#define MCF_FEC_FECTFWR_X_WMRK_832 (0xC)
-#define MCF_FEC_FECTFWR_X_WMRK_896 (0xD)
-#define MCF_FEC_FECTFWR_X_WMRK_960 (0xE)
-#define MCF_FEC_FECTFWR_X_WMRK_1024 (0xF)
-
-/* Bit definitions and macros for MCF_FEC_FECRFDR */
-#define MCF_FEC_FECRFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFSR */
-#define MCF_FEC_FECRFSR_EMT (0x10000)
-#define MCF_FEC_FECRFSR_ALARM (0x20000)
-#define MCF_FEC_FECRFSR_FU (0x40000)
-#define MCF_FEC_FECRFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECRFSR_OF (0x100000)
-#define MCF_FEC_FECRFSR_UF (0x200000)
-#define MCF_FEC_FECRFSR_RXW (0x400000)
-#define MCF_FEC_FECRFSR_FAE (0x800000)
-#define MCF_FEC_FECRFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRFCR */
-#define MCF_FEC_FECRFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_FEC_FECRFCR_OF_MSK (0x80000)
-#define MCF_FEC_FECRFCR_UF_MSK (0x100000)
-#define MCF_FEC_FECRFCR_RXW_MSK (0x200000)
-#define MCF_FEC_FECRFCR_FAE_MSK (0x400000)
-#define MCF_FEC_FECRFCR_IP_MSK (0x800000)
-#define MCF_FEC_FECRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_FEC_FECRFCR_FRMEN (0x8000000)
-#define MCF_FEC_FECRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_FEC_FECRLRFP */
-#define MCF_FEC_FECRLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRLWFP */
-#define MCF_FEC_FECRLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFAR */
-#define MCF_FEC_FECRFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFRP */
-#define MCF_FEC_FECRFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECRFWP */
-#define MCF_FEC_FECRFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFDR */
-#define MCF_FEC_FECTFDR_FIFO_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFSR */
-#define MCF_FEC_FECTFSR_EMT (0x10000)
-#define MCF_FEC_FECTFSR_ALARM (0x20000)
-#define MCF_FEC_FECTFSR_FU (0x40000)
-#define MCF_FEC_FECTFSR_FRMRDY (0x80000)
-#define MCF_FEC_FECTFSR_OF (0x100000)
-#define MCF_FEC_FECTFSR_UF (0x200000)
-#define MCF_FEC_FECTFSR_FAE (0x800000)
-#define MCF_FEC_FECTFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_FEC_FECTFSR_TXW (0x40000000)
-#define MCF_FEC_FECTFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_FEC_FECTFCR */
-#define MCF_FEC_FECTFCR_RESERVED (0x200000)
-#define MCF_FEC_FECTFCR_COUNTER(x) (((x)&0xFFFF)<<0|0x200000)
-#define MCF_FEC_FECTFCR_TXW_MASK (0x240000)
-#define MCF_FEC_FECTFCR_OF_MSK (0x280000)
-#define MCF_FEC_FECTFCR_UF_MSK (0x300000)
-#define MCF_FEC_FECTFCR_FAE_MSK (0x600000)
-#define MCF_FEC_FECTFCR_IP_MSK (0xA00000)
-#define MCF_FEC_FECTFCR_GR(x) (((x)&0x7)<<0x18|0x200000)
-#define MCF_FEC_FECTFCR_FRMEN (0x8200000)
-#define MCF_FEC_FECTFCR_TIMER (0x10200000)
-#define MCF_FEC_FECTFCR_WFR (0x20200000)
-#define MCF_FEC_FECTFCR_WCTL (0x40200000)
-
-/* Bit definitions and macros for MCF_FEC_FECTLRFP */
-#define MCF_FEC_FECTLRFP_LRFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTLWFP */
-#define MCF_FEC_FECTLWFP_LWFP(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFAR */
-#define MCF_FEC_FECTFAR_ALARM(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFRP */
-#define MCF_FEC_FECTFRP_READ(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECTFWP */
-#define MCF_FEC_FECTFWP_WRITE(x) (((x)&0x3FF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_FECFRST */
-#define MCF_FEC_FECFRST_RST_CTL (0x1000000)
-#define MCF_FEC_FECFRST_SW_RST (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_FECCTCWR */
-#define MCF_FEC_FECCTCWR_TFCW (0x1000000)
-#define MCF_FEC_FECCTCWR_CRC (0x2000000)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_DROP */
-#define MCF_FEC_RMON_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_PACKETS */
-#define MCF_FEC_RMON_T_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_BC_PKT */
-#define MCF_FEC_RMON_T_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_MC_PKT */
-#define MCF_FEC_RMON_T_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_CRC_ALIGN */
-#define MCF_FEC_RMON_T_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_UNDERSIZE */
-#define MCF_FEC_RMON_T_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OVERSIZE */
-#define MCF_FEC_RMON_T_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_FRAG */
-#define MCF_FEC_RMON_T_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_JAB */
-#define MCF_FEC_RMON_T_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_COL */
-#define MCF_FEC_RMON_T_COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P64 */
-#define MCF_FEC_RMON_T_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P65TO127 */
-#define MCF_FEC_RMON_T_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P128TO255 */
-#define MCF_FEC_RMON_T_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P256TO511 */
-#define MCF_FEC_RMON_T_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P512TO1023 */
-#define MCF_FEC_RMON_T_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P1024TO2047 */
-#define MCF_FEC_RMON_T_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_P_GTE2048 */
-#define MCF_FEC_RMON_T_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_T_OCTETS */
-#define MCF_FEC_RMON_T_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DROP */
-#define MCF_FEC_IEEE_T_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FRAME_OK */
-#define MCF_FEC_IEEE_T_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_1COL */
-#define MCF_FEC_IEEE_T_1COL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MCOL */
-#define MCF_FEC_IEEE_T_MCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_DEF */
-#define MCF_FEC_IEEE_T_DEF_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_LCOL */
-#define MCF_FEC_IEEE_T_LCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_EXCOL */
-#define MCF_FEC_IEEE_T_EXCOL_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_MACERR */
-#define MCF_FEC_IEEE_T_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_CSERR */
-#define MCF_FEC_IEEE_T_CSERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_SQE */
-#define MCF_FEC_IEEE_T_SQE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_FDXFC */
-#define MCF_FEC_IEEE_T_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_T_OCTETS_OK */
-#define MCF_FEC_IEEE_T_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_DROP */
-#define MCF_FEC_RMON_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_PACKETS */
-#define MCF_FEC_RMON_R_PACKETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_BC_PKT */
-#define MCF_FEC_RMON_R_BC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_MC_PKT */
-#define MCF_FEC_RMON_R_MC_PKT_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_CRC_ALIGN */
-#define MCF_FEC_RMON_R_CRC_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_UNDERSIZE */
-#define MCF_FEC_RMON_R_UNDERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OVERSIZE */
-#define MCF_FEC_RMON_R_OVERSIZE_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_FRAG */
-#define MCF_FEC_RMON_R_FRAG_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_JAB */
-#define MCF_FEC_RMON_R_JAB_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_RESVD_0 */
-#define MCF_FEC_RMON_R_RESVD_0_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P64 */
-#define MCF_FEC_RMON_R_P64_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P65TO127 */
-#define MCF_FEC_RMON_R_P65TO127_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P128TO255 */
-#define MCF_FEC_RMON_R_P128TO255_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P256TO511 */
-#define MCF_FEC_RMON_R_P256TO511_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P512TO1023 */
-#define MCF_FEC_RMON_R_P512TO1023_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P1024TO2047 */
-#define MCF_FEC_RMON_R_P1024TO2047_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_P_GTE2048 */
-#define MCF_FEC_RMON_R_P_GTE2048_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_RMON_R_OCTETS */
-#define MCF_FEC_RMON_R_OCTETS_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_DROP */
-#define MCF_FEC_IEEE_R_DROP_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FRAME_OK */
-#define MCF_FEC_IEEE_R_FRAME_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_CRC */
-#define MCF_FEC_IEEE_R_CRC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_ALIGN */
-#define MCF_FEC_IEEE_R_ALIGN_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_MACERR */
-#define MCF_FEC_IEEE_R_MACERR_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_FDXFC */
-#define MCF_FEC_IEEE_R_FDXFC_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_FEC_IEEE_R_OCTETS_OK */
-#define MCF_FEC_IEEE_R_OCTETS_OK_Value(x) (((x)&0xFFFFFFFF)<<0)
-
-
-#endif /* __MCF5475_FEC_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_GPIO.h b/BaS_gcc/tos/vmem_test/include/MCF5475_GPIO.h
deleted file mode 100644
index 5dd2583..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_GPIO.h
+++ /dev/null
@@ -1,543 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPIO_H__
-#define __MCF5475_GPIO_H__
-
-
-/*********************************************************************
-*
-* General Purpose I/O (GPIO)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPIO_PODR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA00]))
-#define MCF_GPIO_PDDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA10]))
-#define MCF_GPIO_PPDSDR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA20]))
-#define MCF_GPIO_PCLRR_FBCTL (*(volatile uint8_t *)(&_MBAR[0xA30]))
-
-#define MCF_GPIO_PODR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA01]))
-#define MCF_GPIO_PDDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA11]))
-#define MCF_GPIO_PPDSDR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA21]))
-#define MCF_GPIO_PCLRR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA31]))
-
-#define MCF_GPIO_PODR_DMA (*(volatile uint8_t *)(&_MBAR[0xA02]))
-#define MCF_GPIO_PDDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA12]))
-#define MCF_GPIO_PPDSDR_DMA (*(volatile uint8_t *)(&_MBAR[0xA22]))
-#define MCF_GPIO_PCLRR_DMA (*(volatile uint8_t *)(&_MBAR[0xA32]))
-
-#define MCF_GPIO_PODR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA04]))
-#define MCF_GPIO_PDDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA14]))
-#define MCF_GPIO_PPDSDR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA24]))
-#define MCF_GPIO_PCLRR_FEC0H (*(volatile uint8_t *)(&_MBAR[0xA34]))
-
-#define MCF_GPIO_PODR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA05]))
-#define MCF_GPIO_PDDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA15]))
-#define MCF_GPIO_PPDSDR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA25]))
-#define MCF_GPIO_PCLRR_FEC0L (*(volatile uint8_t *)(&_MBAR[0xA35]))
-
-#define MCF_GPIO_PODR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA06]))
-#define MCF_GPIO_PDDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA16]))
-#define MCF_GPIO_PPDSDR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA26]))
-#define MCF_GPIO_PCLRR_FEC1H (*(volatile uint8_t *)(&_MBAR[0xA36]))
-
-#define MCF_GPIO_PODR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA07]))
-#define MCF_GPIO_PDDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA17]))
-#define MCF_GPIO_PPDSDR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA27]))
-#define MCF_GPIO_PCLRR_FEC1L (*(volatile uint8_t *)(&_MBAR[0xA37]))
-
-#define MCF_GPIO_PODR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA08]))
-#define MCF_GPIO_PDDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA18]))
-#define MCF_GPIO_PPDSDR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA28]))
-#define MCF_GPIO_PCLRR_FECI2C (*(volatile uint8_t *)(&_MBAR[0xA38]))
-
-#define MCF_GPIO_PODR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA09]))
-#define MCF_GPIO_PDDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA19]))
-#define MCF_GPIO_PPDSDR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA29]))
-#define MCF_GPIO_PCLRR_PCIBG (*(volatile uint8_t *)(&_MBAR[0xA39]))
-
-#define MCF_GPIO_PODR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA0A]))
-#define MCF_GPIO_PDDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA1A]))
-#define MCF_GPIO_PPDSDR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA2A]))
-#define MCF_GPIO_PCLRR_PCIBR (*(volatile uint8_t *)(&_MBAR[0xA3A]))
-
-#define MCF_GPIO2_PODR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA0C]))
-#define MCF_GPIO2_PDDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA1C]))
-#define MCF_GPIO2_PPDSDR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA2C]))
-#define MCF_GPIO2_PCLRR_PSC3PSC (*(volatile uint8_t *)(&_MBAR[0xA3C]))
-
-#define MCF_GPIO0_PODR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA0D]))
-#define MCF_GPIO0_PDDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA1D]))
-#define MCF_GPIO0_PPDSDR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA2D]))
-#define MCF_GPIO0_PCLRR_PSC1PSC (*(volatile uint8_t *)(&_MBAR[0xA3D]))
-
-#define MCF_GPIO_PODR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA0E]))
-#define MCF_GPIO_PDDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA1E]))
-#define MCF_GPIO_PPDSDR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA2E]))
-#define MCF_GPIO_PCLRR_DSPI (*(volatile uint8_t *)(&_MBAR[0xA3E]))
-
-
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCTL */
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL0 (0x1)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL1 (0x2)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL2 (0x4)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL3 (0x8)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL4 (0x10)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL5 (0x20)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL6 (0x40)
-#define MCF_GPIO_PODR_FBCTL_PODR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCTL */
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL0 (0x1)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL1 (0x2)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL2 (0x4)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL3 (0x8)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL4 (0x10)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL5 (0x20)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL6 (0x40)
-#define MCF_GPIO_PDDR_FBCTL_PDDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCTL */
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL0 (0x1)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL5 (0x20)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL6 (0x40)
-#define MCF_GPIO_PPDSDR_FBCTL_PPDSDR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCTL */
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL0 (0x1)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL1 (0x2)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL2 (0x4)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL3 (0x8)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL4 (0x10)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL5 (0x20)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL6 (0x40)
-#define MCF_GPIO_PCLRR_FBCTL_PCLRR_FBCTL7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FBCS */
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS1 (0x2)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS2 (0x4)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS3 (0x8)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS4 (0x10)
-#define MCF_GPIO_PODR_FBCS_PODR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FBCS */
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS1 (0x2)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS2 (0x4)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS3 (0x8)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS4 (0x10)
-#define MCF_GPIO_PDDR_FBCS_PDDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FBCS */
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS1 (0x2)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS2 (0x4)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS3 (0x8)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS4 (0x10)
-#define MCF_GPIO_PPDSDR_FBCS_PPDSDR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FBCS */
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS1 (0x2)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS2 (0x4)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS3 (0x8)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS4 (0x10)
-#define MCF_GPIO_PCLRR_FBCS_PCLRR_FBCS5 (0x20)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DMA */
-#define MCF_GPIO_PODR_DMA_PODR_DMA0 (0x1)
-#define MCF_GPIO_PODR_DMA_PODR_DMA1 (0x2)
-#define MCF_GPIO_PODR_DMA_PODR_DMA2 (0x4)
-#define MCF_GPIO_PODR_DMA_PODR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DMA */
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA0 (0x1)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA1 (0x2)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA2 (0x4)
-#define MCF_GPIO_PDDR_DMA_PDDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DMA */
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA0 (0x1)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA1 (0x2)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA2 (0x4)
-#define MCF_GPIO_PPDSDR_DMA_PPDSDR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DMA */
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA0 (0x1)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA1 (0x2)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA2 (0x4)
-#define MCF_GPIO_PCLRR_DMA_PCLRR_DMA3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0H */
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H0 (0x1)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H1 (0x2)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H2 (0x4)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H3 (0x8)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H4 (0x10)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H5 (0x20)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H6 (0x40)
-#define MCF_GPIO_PODR_FEC0H_PODR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0H */
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H0 (0x1)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H1 (0x2)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H2 (0x4)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H3 (0x8)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H4 (0x10)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H5 (0x20)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H6 (0x40)
-#define MCF_GPIO_PDDR_FEC0H_PDDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0H */
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0H_PPDSDR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0H */
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0H_PCLRR_FEC0H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC0L */
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L0 (0x1)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L1 (0x2)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L2 (0x4)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L3 (0x8)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L4 (0x10)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L5 (0x20)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L6 (0x40)
-#define MCF_GPIO_PODR_FEC0L_PODR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC0L */
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L0 (0x1)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L1 (0x2)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L2 (0x4)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L3 (0x8)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L4 (0x10)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L5 (0x20)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L6 (0x40)
-#define MCF_GPIO_PDDR_FEC0L_PDDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC0L */
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC0L_PPDSDR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC0L */
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC0L_PCLRR_FEC0L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1H */
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H0 (0x1)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H1 (0x2)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H2 (0x4)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H3 (0x8)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H4 (0x10)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H5 (0x20)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H6 (0x40)
-#define MCF_GPIO_PODR_FEC1H_PODR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1H */
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H0 (0x1)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H1 (0x2)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H2 (0x4)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H3 (0x8)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H4 (0x10)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H5 (0x20)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H6 (0x40)
-#define MCF_GPIO_PDDR_FEC1H_PDDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1H */
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1H_PPDSDR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1H */
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1H_PCLRR_FEC1H7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FEC1L */
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L0 (0x1)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L1 (0x2)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L2 (0x4)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L3 (0x8)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L4 (0x10)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L5 (0x20)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L6 (0x40)
-#define MCF_GPIO_PODR_FEC1L_PODR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FEC1L */
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L0 (0x1)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L1 (0x2)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L2 (0x4)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L3 (0x8)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4 (0x10)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L5 (0x20)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L6 (0x40)
-#define MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FEC1L */
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L0 (0x1)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L1 (0x2)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L2 (0x4)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L3 (0x8)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L4 (0x10)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L5 (0x20)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L6 (0x40)
-#define MCF_GPIO_PPDSDR_FEC1L_PPDSDR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FEC1L */
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L0 (0x1)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L1 (0x2)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L2 (0x4)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L3 (0x8)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L4 (0x10)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L5 (0x20)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L6 (0x40)
-#define MCF_GPIO_PCLRR_FEC1L_PCLRR_FEC1L7 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_FECI2C */
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C0 (0x1)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C1 (0x2)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C2 (0x4)
-#define MCF_GPIO_PODR_FECI2C_PODR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_FECI2C */
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C0 (0x1)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C1 (0x2)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C2 (0x4)
-#define MCF_GPIO_PDDR_FECI2C_PDDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_FECI2C */
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C0 (0x1)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C1 (0x2)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C2 (0x4)
-#define MCF_GPIO_PPDSDR_FECI2C_PPDSDR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_FECI2C */
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C0 (0x1)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C1 (0x2)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C2 (0x4)
-#define MCF_GPIO_PCLRR_FECI2C_PCLRR_FECI2C3 (0x8)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBG */
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG0 (0x1)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG1 (0x2)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG2 (0x4)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG3 (0x8)
-#define MCF_GPIO_PODR_PCIBG_PODR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBG */
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG0 (0x1)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG1 (0x2)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG2 (0x4)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG3 (0x8)
-#define MCF_GPIO_PDDR_PCIBG_PDDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBG */
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBG_PPDSDR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBG */
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBG_PCLRR_PCIBG4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PCIBR */
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR0 (0x1)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR1 (0x2)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR2 (0x4)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR3 (0x8)
-#define MCF_GPIO_PODR_PCIBR_PODR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PCIBR */
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR0 (0x1)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR1 (0x2)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR2 (0x4)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR3 (0x8)
-#define MCF_GPIO_PDDR_PCIBR_PDDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PCIBR */
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR0 (0x1)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR1 (0x2)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR2 (0x4)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR3 (0x8)
-#define MCF_GPIO_PPDSDR_PCIBR_PPDSDR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PCIBR */
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR0 (0x1)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR1 (0x2)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR2 (0x4)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR3 (0x8)
-#define MCF_GPIO_PCLRR_PCIBR_PCLRR_PCIBR4 (0x10)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC3PSC */
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PODR_PSC3PSC_PODR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC3PSC */
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PDDR_PSC3PSC_PDDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC3PSC */
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PPDSDR_PSC3PSC_PPDSDR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC3PSC */
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC20 (0x1)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC21 (0x2)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC22 (0x4)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC23 (0x8)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC24 (0x10)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC25 (0x20)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC26 (0x40)
-#define MCF_GPIO_PCLRR_PSC3PSC_PCLRR_PSC3PSC27 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_PSC1PSC */
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PODR_PSC1PSC_PODR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_PSC1PSC */
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PDDR_PSC1PSC_PDDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_PSC1PSC */
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PPDSDR_PSC1PSC_PPDSDR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_PSC1PSC */
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC00 (0x1)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC01 (0x2)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC02 (0x4)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC03 (0x8)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC04 (0x10)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC05 (0x20)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC06 (0x40)
-#define MCF_GPIO_PCLRR_PSC1PSC_PCLRR_PSC1PSC07 (0x80)
-
-/* Bit definitions and macros for MCF_GPIO_PODR_DSPI */
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI0 (0x1)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI1 (0x2)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI2 (0x4)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI3 (0x8)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI4 (0x10)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI5 (0x20)
-#define MCF_GPIO_PODR_DSPI_PODR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PDDR_DSPI */
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI0 (0x1)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI1 (0x2)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI2 (0x4)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI3 (0x8)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI4 (0x10)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI5 (0x20)
-#define MCF_GPIO_PDDR_DSPI_PDDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PPDSDR_DSPI */
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI0 (0x1)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI1 (0x2)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI2 (0x4)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI3 (0x8)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI4 (0x10)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI5 (0x20)
-#define MCF_GPIO_PPDSDR_DSPI_PPDSDR_DSPI6 (0x40)
-
-/* Bit definitions and macros for MCF_GPIO_PCLRR_DSPI */
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI0 (0x1)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI1 (0x2)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI2 (0x4)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI3 (0x8)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI4 (0x10)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI5 (0x20)
-#define MCF_GPIO_PCLRR_DSPI_PCLRR_DSPI6 (0x40)
-
-
-#endif /* __MCF5475_GPIO_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_GPT.h b/BaS_gcc/tos/vmem_test/include/MCF5475_GPT.h
deleted file mode 100644
index f9fbc98..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_GPT.h
+++ /dev/null
@@ -1,100 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_GPT_H__
-#define __MCF5475_GPT_H__
-
-
-/*********************************************************************
-*
-* General Purpose Timers (GPT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_GPT0_GMS (*(volatile uint32_t*)(&_MBAR[0x800]))
-#define MCF_GPT0_GCIR (*(volatile uint32_t*)(&_MBAR[0x804]))
-#define MCF_GPT0_GPWM (*(volatile uint32_t*)(&_MBAR[0x808]))
-#define MCF_GPT0_GSR (*(volatile uint32_t*)(&_MBAR[0x80C]))
-
-#define MCF_GPT1_GMS (*(volatile uint32_t*)(&_MBAR[0x810]))
-#define MCF_GPT1_GCIR (*(volatile uint32_t*)(&_MBAR[0x814]))
-#define MCF_GPT1_GPWM (*(volatile uint32_t*)(&_MBAR[0x818]))
-#define MCF_GPT1_GSR (*(volatile uint32_t*)(&_MBAR[0x81C]))
-
-#define MCF_GPT2_GMS (*(volatile uint32_t*)(&_MBAR[0x820]))
-#define MCF_GPT2_GCIR (*(volatile uint32_t*)(&_MBAR[0x824]))
-#define MCF_GPT2_GPWM (*(volatile uint32_t*)(&_MBAR[0x828]))
-#define MCF_GPT2_GSR (*(volatile uint32_t*)(&_MBAR[0x82C]))
-
-#define MCF_GPT3_GMS (*(volatile uint32_t*)(&_MBAR[0x830]))
-#define MCF_GPT3_GCIR (*(volatile uint32_t*)(&_MBAR[0x834]))
-#define MCF_GPT3_GPWM (*(volatile uint32_t*)(&_MBAR[0x838]))
-#define MCF_GPT3_GSR (*(volatile uint32_t*)(&_MBAR[0x83C]))
-
-#define MCF_GPT_GMS(x) (*(volatile uint32_t*)(&_MBAR[0x800 + ((x)*0x10)]))
-#define MCF_GPT_GCIR(x) (*(volatile uint32_t*)(&_MBAR[0x804 + ((x)*0x10)]))
-#define MCF_GPT_GPWM(x) (*(volatile uint32_t*)(&_MBAR[0x808 + ((x)*0x10)]))
-#define MCF_GPT_GSR(x) (*(volatile uint32_t*)(&_MBAR[0x80C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_GPT_GMS */
-#define MCF_GPT_GMS_TMS(x) (((x)&0x7)<<0)
-#define MCF_GPT_GMS_TMS_DISABLE (0)
-#define MCF_GPT_GMS_TMS_INCAPT (0x1)
-#define MCF_GPT_GMS_TMS_OUTCAPT (0x2)
-#define MCF_GPT_GMS_TMS_PWM (0x3)
-#define MCF_GPT_GMS_TMS_GPIO (0x4)
-#define MCF_GPT_GMS_GPIO(x) (((x)&0x3)<<0x4)
-#define MCF_GPT_GMS_GPIO_INPUT (0)
-#define MCF_GPT_GMS_GPIO_OUTLO (0x20)
-#define MCF_GPT_GMS_GPIO_OUTHI (0x30)
-#define MCF_GPT_GMS_IEN (0x100)
-#define MCF_GPT_GMS_OD (0x200)
-#define MCF_GPT_GMS_SC (0x400)
-#define MCF_GPT_GMS_CE (0x1000)
-#define MCF_GPT_GMS_WDEN (0x8000)
-#define MCF_GPT_GMS_ICT(x) (((x)&0x3)<<0x10)
-#define MCF_GPT_GMS_ICT_ANY (0)
-#define MCF_GPT_GMS_ICT_RISE (0x10000)
-#define MCF_GPT_GMS_ICT_FALL (0x20000)
-#define MCF_GPT_GMS_ICT_PULSE (0x30000)
-#define MCF_GPT_GMS_OCT(x) (((x)&0x3)<<0x14)
-#define MCF_GPT_GMS_OCT_FRCLOW (0)
-#define MCF_GPT_GMS_OCT_PULSEHI (0x100000)
-#define MCF_GPT_GMS_OCT_PULSELO (0x200000)
-#define MCF_GPT_GMS_OCT_TOGGLE (0x300000)
-#define MCF_GPT_GMS_OCPW(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_GPT_GCIR */
-#define MCF_GPT_GCIR_CNT(x) (((x)&0xFFFF)<<0)
-#define MCF_GPT_GCIR_PRE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GPWM */
-#define MCF_GPT_GPWM_LOAD (0x1)
-#define MCF_GPT_GPWM_PWMOP (0x100)
-#define MCF_GPT_GPWM_WIDTH(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_GPT_GSR */
-#define MCF_GPT_GSR_CAPT (0x1)
-#define MCF_GPT_GSR_COMP (0x2)
-#define MCF_GPT_GSR_PWMP (0x4)
-#define MCF_GPT_GSR_TEXP (0x8)
-#define MCF_GPT_GSR_PIN (0x100)
-#define MCF_GPT_GSR_OVF(x) (((x)&0x7)<<0xC)
-#define MCF_GPT_GSR_CAPTURE(x) (((x)&0xFFFF)<<0x10)
-
-
-#endif /* __MCF5475_GPT_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_I2C.h b/BaS_gcc/tos/vmem_test/include/MCF5475_I2C.h
deleted file mode 100644
index 1e8a85b..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_I2C.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_I2C_H__
-#define __MCF5475_I2C_H__
-
-
-/*********************************************************************
-*
-* I2C Module (I2C)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_I2C_I2ADR (*(volatile uint8_t *)(&_MBAR[0x8F00]))
-#define MCF_I2C_I2FDR (*(volatile uint8_t *)(&_MBAR[0x8F04]))
-#define MCF_I2C_I2CR (*(volatile uint8_t *)(&_MBAR[0x8F08]))
-#define MCF_I2C_I2SR (*(volatile uint8_t *)(&_MBAR[0x8F0C]))
-#define MCF_I2C_I2DR (*(volatile uint8_t *)(&_MBAR[0x8F10]))
-#define MCF_I2C_I2ICR (*(volatile uint8_t *)(&_MBAR[0x8F20]))
-
-
-
-/* Bit definitions and macros for MCF_I2C_I2ADR */
-#define MCF_I2C_I2ADR_ADR(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_I2C_I2FDR */
-#define MCF_I2C_I2FDR_IC(x) (((x)&0x3F)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2CR */
-#define MCF_I2C_I2CR_RSTA (0x4)
-#define MCF_I2C_I2CR_TXAK (0x8)
-#define MCF_I2C_I2CR_MTX (0x10)
-#define MCF_I2C_I2CR_MSTA (0x20)
-#define MCF_I2C_I2CR_IIEN (0x40)
-#define MCF_I2C_I2CR_IEN (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2SR */
-#define MCF_I2C_I2SR_RXAK (0x1)
-#define MCF_I2C_I2SR_IIF (0x2)
-#define MCF_I2C_I2SR_SRW (0x4)
-#define MCF_I2C_I2SR_IAL (0x10)
-#define MCF_I2C_I2SR_IBB (0x20)
-#define MCF_I2C_I2SR_IAAS (0x40)
-#define MCF_I2C_I2SR_ICF (0x80)
-
-/* Bit definitions and macros for MCF_I2C_I2DR */
-#define MCF_I2C_I2DR_DATA(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_I2C_I2ICR */
-#define MCF_I2C_I2ICR_IE (0x1)
-#define MCF_I2C_I2ICR_RE (0x2)
-#define MCF_I2C_I2ICR_TE (0x4)
-#define MCF_I2C_I2ICR_BNBE (0x8)
-
-
-#endif /* __MCF5475_I2C_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_INTC.h b/BaS_gcc/tos/vmem_test/include/MCF5475_INTC.h
deleted file mode 100644
index 61265ed..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_INTC.h
+++ /dev/null
@@ -1,331 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_INTC_H__
-#define __MCF5475_INTC_H__
-
-
-/*********************************************************************
-*
-* Interrupt Controller (INTC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_INTC_IPRH (*(volatile uint32_t*)(&_MBAR[0x700]))
-#define MCF_INTC_IPRL (*(volatile uint32_t*)(&_MBAR[0x704]))
-#define MCF_INTC_IMRH (*(volatile uint32_t*)(&_MBAR[0x708]))
-#define MCF_INTC_IMRL (*(volatile uint32_t*)(&_MBAR[0x70C]))
-#define MCF_INTC_INTFRCH (*(volatile uint32_t*)(&_MBAR[0x710]))
-#define MCF_INTC_INTFRCL (*(volatile uint32_t*)(&_MBAR[0x714]))
-#define MCF_INTC_IRLR (*(volatile uint8_t *)(&_MBAR[0x718]))
-#define MCF_INTC_IACKLPR (*(volatile uint8_t *)(&_MBAR[0x719]))
-#define MCF_INTC_ICR01 (*(volatile uint8_t *)(&_MBAR[0x741]))
-#define MCF_INTC_ICR02 (*(volatile uint8_t *)(&_MBAR[0x742]))
-#define MCF_INTC_ICR03 (*(volatile uint8_t *)(&_MBAR[0x743]))
-#define MCF_INTC_ICR04 (*(volatile uint8_t *)(&_MBAR[0x744]))
-#define MCF_INTC_ICR05 (*(volatile uint8_t *)(&_MBAR[0x745]))
-#define MCF_INTC_ICR06 (*(volatile uint8_t *)(&_MBAR[0x746]))
-#define MCF_INTC_ICR07 (*(volatile uint8_t *)(&_MBAR[0x747]))
-#define MCF_INTC_ICR08 (*(volatile uint8_t *)(&_MBAR[0x748]))
-#define MCF_INTC_ICR09 (*(volatile uint8_t *)(&_MBAR[0x749]))
-#define MCF_INTC_ICR10 (*(volatile uint8_t *)(&_MBAR[0x74A]))
-#define MCF_INTC_ICR11 (*(volatile uint8_t *)(&_MBAR[0x74B]))
-#define MCF_INTC_ICR12 (*(volatile uint8_t *)(&_MBAR[0x74C]))
-#define MCF_INTC_ICR13 (*(volatile uint8_t *)(&_MBAR[0x74D]))
-#define MCF_INTC_ICR14 (*(volatile uint8_t *)(&_MBAR[0x74E]))
-#define MCF_INTC_ICR15 (*(volatile uint8_t *)(&_MBAR[0x74F]))
-#define MCF_INTC_ICR16 (*(volatile uint8_t *)(&_MBAR[0x750]))
-#define MCF_INTC_ICR17 (*(volatile uint8_t *)(&_MBAR[0x751]))
-#define MCF_INTC_ICR18 (*(volatile uint8_t *)(&_MBAR[0x752]))
-#define MCF_INTC_ICR19 (*(volatile uint8_t *)(&_MBAR[0x753]))
-#define MCF_INTC_ICR20 (*(volatile uint8_t *)(&_MBAR[0x754]))
-#define MCF_INTC_ICR21 (*(volatile uint8_t *)(&_MBAR[0x755]))
-#define MCF_INTC_ICR22 (*(volatile uint8_t *)(&_MBAR[0x756]))
-#define MCF_INTC_ICR23 (*(volatile uint8_t *)(&_MBAR[0x757]))
-#define MCF_INTC_ICR24 (*(volatile uint8_t *)(&_MBAR[0x758]))
-#define MCF_INTC_ICR25 (*(volatile uint8_t *)(&_MBAR[0x759]))
-#define MCF_INTC_ICR26 (*(volatile uint8_t *)(&_MBAR[0x75A]))
-#define MCF_INTC_ICR27 (*(volatile uint8_t *)(&_MBAR[0x75B]))
-#define MCF_INTC_ICR28 (*(volatile uint8_t *)(&_MBAR[0x75C]))
-#define MCF_INTC_ICR29 (*(volatile uint8_t *)(&_MBAR[0x75D]))
-#define MCF_INTC_ICR30 (*(volatile uint8_t *)(&_MBAR[0x75E]))
-#define MCF_INTC_ICR31 (*(volatile uint8_t *)(&_MBAR[0x75F]))
-#define MCF_INTC_ICR32 (*(volatile uint8_t *)(&_MBAR[0x760]))
-#define MCF_INTC_ICR33 (*(volatile uint8_t *)(&_MBAR[0x761]))
-#define MCF_INTC_ICR34 (*(volatile uint8_t *)(&_MBAR[0x762]))
-#define MCF_INTC_ICR35 (*(volatile uint8_t *)(&_MBAR[0x763]))
-#define MCF_INTC_ICR36 (*(volatile uint8_t *)(&_MBAR[0x764]))
-#define MCF_INTC_ICR37 (*(volatile uint8_t *)(&_MBAR[0x765]))
-#define MCF_INTC_ICR38 (*(volatile uint8_t *)(&_MBAR[0x766]))
-#define MCF_INTC_ICR39 (*(volatile uint8_t *)(&_MBAR[0x767]))
-#define MCF_INTC_ICR40 (*(volatile uint8_t *)(&_MBAR[0x768]))
-#define MCF_INTC_ICR41 (*(volatile uint8_t *)(&_MBAR[0x769]))
-#define MCF_INTC_ICR42 (*(volatile uint8_t *)(&_MBAR[0x76A]))
-#define MCF_INTC_ICR43 (*(volatile uint8_t *)(&_MBAR[0x76B]))
-#define MCF_INTC_ICR44 (*(volatile uint8_t *)(&_MBAR[0x76C]))
-#define MCF_INTC_ICR45 (*(volatile uint8_t *)(&_MBAR[0x76D]))
-#define MCF_INTC_ICR46 (*(volatile uint8_t *)(&_MBAR[0x76E]))
-#define MCF_INTC_ICR47 (*(volatile uint8_t *)(&_MBAR[0x76F]))
-#define MCF_INTC_ICR48 (*(volatile uint8_t *)(&_MBAR[0x770]))
-#define MCF_INTC_ICR49 (*(volatile uint8_t *)(&_MBAR[0x771]))
-#define MCF_INTC_ICR50 (*(volatile uint8_t *)(&_MBAR[0x772]))
-#define MCF_INTC_ICR51 (*(volatile uint8_t *)(&_MBAR[0x773]))
-#define MCF_INTC_ICR52 (*(volatile uint8_t *)(&_MBAR[0x774]))
-#define MCF_INTC_ICR53 (*(volatile uint8_t *)(&_MBAR[0x775]))
-#define MCF_INTC_ICR54 (*(volatile uint8_t *)(&_MBAR[0x776]))
-#define MCF_INTC_ICR55 (*(volatile uint8_t *)(&_MBAR[0x777]))
-#define MCF_INTC_ICR56 (*(volatile uint8_t *)(&_MBAR[0x778]))
-#define MCF_INTC_ICR57 (*(volatile uint8_t *)(&_MBAR[0x779]))
-#define MCF_INTC_ICR58 (*(volatile uint8_t *)(&_MBAR[0x77A]))
-#define MCF_INTC_ICR59 (*(volatile uint8_t *)(&_MBAR[0x77B]))
-#define MCF_INTC_ICR60 (*(volatile uint8_t *)(&_MBAR[0x77C]))
-#define MCF_INTC_ICR61 (*(volatile uint8_t *)(&_MBAR[0x77D]))
-#define MCF_INTC_ICR62 (*(volatile uint8_t *)(&_MBAR[0x77E]))
-#define MCF_INTC_ICR63 (*(volatile uint8_t *)(&_MBAR[0x77F]))
-#define MCF_INTC_SWIACK (*(volatile uint8_t *)(&_MBAR[0x7E0]))
-#define MCF_INTC_L1IACK (*(volatile uint8_t *)(&_MBAR[0x7E4]))
-#define MCF_INTC_L2IACK (*(volatile uint8_t *)(&_MBAR[0x7E8]))
-#define MCF_INTC_L3IACK (*(volatile uint8_t *)(&_MBAR[0x7EC]))
-#define MCF_INTC_L4IACK (*(volatile uint8_t *)(&_MBAR[0x7F0]))
-#define MCF_INTC_L5IACK (*(volatile uint8_t *)(&_MBAR[0x7F4]))
-#define MCF_INTC_L6IACK (*(volatile uint8_t *)(&_MBAR[0x7F8]))
-#define MCF_INTC_L7IACK (*(volatile uint8_t *)(&_MBAR[0x7FC]))
-#define MCF_INTC_ICR(x) (*(volatile uint8_t *)(&_MBAR[0x741 + ((x-1)*0x1)]))
-#define MCF_INTC_LIACK(x) (*(volatile uint8_t *)(&_MBAR[0x7E4 + ((x-1)*0x4)]))
-
-
-
-/* Bit definitions and macros for MCF_INTC_IPRH */
-#define MCF_INTC_IPRH_INT32 (0x1)
-#define MCF_INTC_IPRH_INT33 (0x2)
-#define MCF_INTC_IPRH_INT34 (0x4)
-#define MCF_INTC_IPRH_INT35 (0x8)
-#define MCF_INTC_IPRH_INT36 (0x10)
-#define MCF_INTC_IPRH_INT37 (0x20)
-#define MCF_INTC_IPRH_INT38 (0x40)
-#define MCF_INTC_IPRH_INT39 (0x80)
-#define MCF_INTC_IPRH_INT40 (0x100)
-#define MCF_INTC_IPRH_INT41 (0x200)
-#define MCF_INTC_IPRH_INT42 (0x400)
-#define MCF_INTC_IPRH_INT43 (0x800)
-#define MCF_INTC_IPRH_INT44 (0x1000)
-#define MCF_INTC_IPRH_INT45 (0x2000)
-#define MCF_INTC_IPRH_INT46 (0x4000)
-#define MCF_INTC_IPRH_INT47 (0x8000)
-#define MCF_INTC_IPRH_INT48 (0x10000)
-#define MCF_INTC_IPRH_INT49 (0x20000)
-#define MCF_INTC_IPRH_INT50 (0x40000)
-#define MCF_INTC_IPRH_INT51 (0x80000)
-#define MCF_INTC_IPRH_INT52 (0x100000)
-#define MCF_INTC_IPRH_INT53 (0x200000)
-#define MCF_INTC_IPRH_INT54 (0x400000)
-#define MCF_INTC_IPRH_INT55 (0x800000)
-#define MCF_INTC_IPRH_INT56 (0x1000000)
-#define MCF_INTC_IPRH_INT57 (0x2000000)
-#define MCF_INTC_IPRH_INT58 (0x4000000)
-#define MCF_INTC_IPRH_INT59 (0x8000000)
-#define MCF_INTC_IPRH_INT60 (0x10000000)
-#define MCF_INTC_IPRH_INT61 (0x20000000)
-#define MCF_INTC_IPRH_INT62 (0x40000000)
-#define MCF_INTC_IPRH_INT63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IPRL */
-#define MCF_INTC_IPRL_INT1 (0x2)
-#define MCF_INTC_IPRL_INT2 (0x4)
-#define MCF_INTC_IPRL_INT3 (0x8)
-#define MCF_INTC_IPRL_INT4 (0x10)
-#define MCF_INTC_IPRL_INT5 (0x20)
-#define MCF_INTC_IPRL_INT6 (0x40)
-#define MCF_INTC_IPRL_INT7 (0x80)
-#define MCF_INTC_IPRL_INT8 (0x100)
-#define MCF_INTC_IPRL_INT9 (0x200)
-#define MCF_INTC_IPRL_INT10 (0x400)
-#define MCF_INTC_IPRL_INT11 (0x800)
-#define MCF_INTC_IPRL_INT12 (0x1000)
-#define MCF_INTC_IPRL_INT13 (0x2000)
-#define MCF_INTC_IPRL_INT14 (0x4000)
-#define MCF_INTC_IPRL_INT15 (0x8000)
-#define MCF_INTC_IPRL_INT16 (0x10000)
-#define MCF_INTC_IPRL_INT17 (0x20000)
-#define MCF_INTC_IPRL_INT18 (0x40000)
-#define MCF_INTC_IPRL_INT19 (0x80000)
-#define MCF_INTC_IPRL_INT20 (0x100000)
-#define MCF_INTC_IPRL_INT21 (0x200000)
-#define MCF_INTC_IPRL_INT22 (0x400000)
-#define MCF_INTC_IPRL_INT23 (0x800000)
-#define MCF_INTC_IPRL_INT24 (0x1000000)
-#define MCF_INTC_IPRL_INT25 (0x2000000)
-#define MCF_INTC_IPRL_INT26 (0x4000000)
-#define MCF_INTC_IPRL_INT27 (0x8000000)
-#define MCF_INTC_IPRL_INT28 (0x10000000)
-#define MCF_INTC_IPRL_INT29 (0x20000000)
-#define MCF_INTC_IPRL_INT30 (0x40000000)
-#define MCF_INTC_IPRL_INT31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRH */
-#define MCF_INTC_IMRH_INT_MASK32 (0x1)
-#define MCF_INTC_IMRH_INT_MASK33 (0x2)
-#define MCF_INTC_IMRH_INT_MASK34 (0x4)
-#define MCF_INTC_IMRH_INT_MASK35 (0x8)
-#define MCF_INTC_IMRH_INT_MASK36 (0x10)
-#define MCF_INTC_IMRH_INT_MASK37 (0x20)
-#define MCF_INTC_IMRH_INT_MASK38 (0x40)
-#define MCF_INTC_IMRH_INT_MASK39 (0x80)
-#define MCF_INTC_IMRH_INT_MASK40 (0x100)
-#define MCF_INTC_IMRH_INT_MASK41 (0x200)
-#define MCF_INTC_IMRH_INT_MASK42 (0x400)
-#define MCF_INTC_IMRH_INT_MASK43 (0x800)
-#define MCF_INTC_IMRH_INT_MASK44 (0x1000)
-#define MCF_INTC_IMRH_INT_MASK45 (0x2000)
-#define MCF_INTC_IMRH_INT_MASK46 (0x4000)
-#define MCF_INTC_IMRH_INT_MASK47 (0x8000)
-#define MCF_INTC_IMRH_INT_MASK48 (0x10000)
-#define MCF_INTC_IMRH_INT_MASK49 (0x20000)
-#define MCF_INTC_IMRH_INT_MASK50 (0x40000)
-#define MCF_INTC_IMRH_INT_MASK51 (0x80000)
-#define MCF_INTC_IMRH_INT_MASK52 (0x100000)
-#define MCF_INTC_IMRH_INT_MASK53 (0x200000)
-#define MCF_INTC_IMRH_INT_MASK54 (0x400000)
-#define MCF_INTC_IMRH_INT_MASK55 (0x800000)
-#define MCF_INTC_IMRH_INT_MASK56 (0x1000000)
-#define MCF_INTC_IMRH_INT_MASK57 (0x2000000)
-#define MCF_INTC_IMRH_INT_MASK58 (0x4000000)
-#define MCF_INTC_IMRH_INT_MASK59 (0x8000000)
-#define MCF_INTC_IMRH_INT_MASK60 (0x10000000)
-#define MCF_INTC_IMRH_INT_MASK61 (0x20000000)
-#define MCF_INTC_IMRH_INT_MASK62 (0x40000000)
-#define MCF_INTC_IMRH_INT_MASK63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IMRL */
-#define MCF_INTC_IMRL_MASKALL (0x1)
-#define MCF_INTC_IMRL_INT_MASK1 (0x2)
-#define MCF_INTC_IMRL_INT_MASK2 (0x4)
-#define MCF_INTC_IMRL_INT_MASK3 (0x8)
-#define MCF_INTC_IMRL_INT_MASK4 (0x10)
-#define MCF_INTC_IMRL_INT_MASK5 (0x20)
-#define MCF_INTC_IMRL_INT_MASK6 (0x40)
-#define MCF_INTC_IMRL_INT_MASK7 (0x80)
-#define MCF_INTC_IMRL_INT_MASK8 (0x100)
-#define MCF_INTC_IMRL_INT_MASK9 (0x200)
-#define MCF_INTC_IMRL_INT_MASK10 (0x400)
-#define MCF_INTC_IMRL_INT_MASK11 (0x800)
-#define MCF_INTC_IMRL_INT_MASK12 (0x1000)
-#define MCF_INTC_IMRL_INT_MASK13 (0x2000)
-#define MCF_INTC_IMRL_INT_MASK14 (0x4000)
-#define MCF_INTC_IMRL_INT_MASK15 (0x8000)
-#define MCF_INTC_IMRL_INT_MASK16 (0x10000)
-#define MCF_INTC_IMRL_INT_MASK17 (0x20000)
-#define MCF_INTC_IMRL_INT_MASK18 (0x40000)
-#define MCF_INTC_IMRL_INT_MASK19 (0x80000)
-#define MCF_INTC_IMRL_INT_MASK20 (0x100000)
-#define MCF_INTC_IMRL_INT_MASK21 (0x200000)
-#define MCF_INTC_IMRL_INT_MASK22 (0x400000)
-#define MCF_INTC_IMRL_INT_MASK23 (0x800000)
-#define MCF_INTC_IMRL_INT_MASK24 (0x1000000)
-#define MCF_INTC_IMRL_INT_MASK25 (0x2000000)
-#define MCF_INTC_IMRL_INT_MASK26 (0x4000000)
-#define MCF_INTC_IMRL_INT_MASK27 (0x8000000)
-#define MCF_INTC_IMRL_INT_MASK28 (0x10000000)
-#define MCF_INTC_IMRL_INT_MASK29 (0x20000000)
-#define MCF_INTC_IMRL_INT_MASK30 (0x40000000)
-#define MCF_INTC_IMRL_INT_MASK31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCH */
-#define MCF_INTC_INTFRCH_INTFRC32 (0x1)
-#define MCF_INTC_INTFRCH_INTFRC33 (0x2)
-#define MCF_INTC_INTFRCH_INTFRC34 (0x4)
-#define MCF_INTC_INTFRCH_INTFRC35 (0x8)
-#define MCF_INTC_INTFRCH_INTFRC36 (0x10)
-#define MCF_INTC_INTFRCH_INTFRC37 (0x20)
-#define MCF_INTC_INTFRCH_INTFRC38 (0x40)
-#define MCF_INTC_INTFRCH_INTFRC39 (0x80)
-#define MCF_INTC_INTFRCH_INTFRC40 (0x100)
-#define MCF_INTC_INTFRCH_INTFRC41 (0x200)
-#define MCF_INTC_INTFRCH_INTFRC42 (0x400)
-#define MCF_INTC_INTFRCH_INTFRC43 (0x800)
-#define MCF_INTC_INTFRCH_INTFRC44 (0x1000)
-#define MCF_INTC_INTFRCH_INTFRC45 (0x2000)
-#define MCF_INTC_INTFRCH_INTFRC46 (0x4000)
-#define MCF_INTC_INTFRCH_INTFRC47 (0x8000)
-#define MCF_INTC_INTFRCH_INTFRC48 (0x10000)
-#define MCF_INTC_INTFRCH_INTFRC49 (0x20000)
-#define MCF_INTC_INTFRCH_INTFRC50 (0x40000)
-#define MCF_INTC_INTFRCH_INTFRC51 (0x80000)
-#define MCF_INTC_INTFRCH_INTFRC52 (0x100000)
-#define MCF_INTC_INTFRCH_INTFRC53 (0x200000)
-#define MCF_INTC_INTFRCH_INTFRC54 (0x400000)
-#define MCF_INTC_INTFRCH_INTFRC55 (0x800000)
-#define MCF_INTC_INTFRCH_INTFRC56 (0x1000000)
-#define MCF_INTC_INTFRCH_INTFRC57 (0x2000000)
-#define MCF_INTC_INTFRCH_INTFRC58 (0x4000000)
-#define MCF_INTC_INTFRCH_INTFRC59 (0x8000000)
-#define MCF_INTC_INTFRCH_INTFRC60 (0x10000000)
-#define MCF_INTC_INTFRCH_INTFRC61 (0x20000000)
-#define MCF_INTC_INTFRCH_INTFRC62 (0x40000000)
-#define MCF_INTC_INTFRCH_INTFRC63 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_INTFRCL */
-#define MCF_INTC_INTFRCL_INTFRC1 (0x2)
-#define MCF_INTC_INTFRCL_INTFRC2 (0x4)
-#define MCF_INTC_INTFRCL_INTFRC3 (0x8)
-#define MCF_INTC_INTFRCL_INTFRC4 (0x10)
-#define MCF_INTC_INTFRCL_INTFRC5 (0x20)
-#define MCF_INTC_INTFRCL_INTFRC6 (0x40)
-#define MCF_INTC_INTFRCL_INTFRC7 (0x80)
-#define MCF_INTC_INTFRCL_INTFRC8 (0x100)
-#define MCF_INTC_INTFRCL_INTFRC9 (0x200)
-#define MCF_INTC_INTFRCL_INTFRC10 (0x400)
-#define MCF_INTC_INTFRCL_INTFRC11 (0x800)
-#define MCF_INTC_INTFRCL_INTFRC12 (0x1000)
-#define MCF_INTC_INTFRCL_INTFRC13 (0x2000)
-#define MCF_INTC_INTFRCL_INTFRC14 (0x4000)
-#define MCF_INTC_INTFRCL_INTFRC15 (0x8000)
-#define MCF_INTC_INTFRCL_INTFRC16 (0x10000)
-#define MCF_INTC_INTFRCL_INTFRC17 (0x20000)
-#define MCF_INTC_INTFRCL_INTFRC18 (0x40000)
-#define MCF_INTC_INTFRCL_INTFRC19 (0x80000)
-#define MCF_INTC_INTFRCL_INTFRC20 (0x100000)
-#define MCF_INTC_INTFRCL_INTFRC21 (0x200000)
-#define MCF_INTC_INTFRCL_INTFRC22 (0x400000)
-#define MCF_INTC_INTFRCL_INTFRC23 (0x800000)
-#define MCF_INTC_INTFRCL_INTFRC24 (0x1000000)
-#define MCF_INTC_INTFRCL_INTFRC25 (0x2000000)
-#define MCF_INTC_INTFRCL_INTFRC26 (0x4000000)
-#define MCF_INTC_INTFRCL_INTFRC27 (0x8000000)
-#define MCF_INTC_INTFRCL_INTFRC28 (0x10000000)
-#define MCF_INTC_INTFRCL_INTFRC29 (0x20000000)
-#define MCF_INTC_INTFRCL_INTFRC30 (0x40000000)
-#define MCF_INTC_INTFRCL_INTFRC31 (0x80000000)
-
-/* Bit definitions and macros for MCF_INTC_IRLR */
-#define MCF_INTC_IRLR_IRQ(x) (((x)&0x7F)<<0x1)
-
-/* Bit definitions and macros for MCF_INTC_IACKLPR */
-#define MCF_INTC_IACKLPR_PRI(x) (((x)&0xF)<<0)
-#define MCF_INTC_IACKLPR_LEVEL(x) (((x)&0x7)<<0x4)
-
-/* Bit definitions and macros for MCF_INTC_ICR */
-#define MCF_INTC_ICR_IP(x) (((x)&0x7)<<0)
-#define MCF_INTC_ICR_IL(x) (((x)&0x7)<<0x3)
-
-/* Bit definitions and macros for MCF_INTC_SWIACK */
-#define MCF_INTC_SWIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_INTC_LIACK */
-#define MCF_INTC_LIACK_VECTOR(x) (((x)&0xFF)<<0)
-
-
-#endif /* __MCF5475_INTC_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_MMU.h b/BaS_gcc/tos/vmem_test/include/MCF5475_MMU.h
deleted file mode 100644
index 334ad28..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_MMU.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_MMU_H__
-#define __MCF5475_MMU_H__
-
-
-/*********************************************************************
-*
-* Memory Management Unit (MMU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-
-/* note the uint32_t_a - this is to avoid gcc warnings about pointer aliasing */
-#define MCF_MMU_MMUCR (*(volatile uint32_t_a*)(&_MMUBAR[0]))
-#define MCF_MMU_MMUOR (*(volatile uint32_t_a*)(&_MMUBAR[0x4]))
-#define MCF_MMU_MMUSR (*(volatile uint32_t_a*)(&_MMUBAR[0x8]))
-#define MCF_MMU_MMUAR (*(volatile uint32_t_a*)(&_MMUBAR[0x10]))
-#define MCF_MMU_MMUTR (*(volatile uint32_t_a*)(&_MMUBAR[0x14]))
-#define MCF_MMU_MMUDR (*(volatile uint32_t_a*)(&_MMUBAR[0x18]))
-
-
-/* Bit definitions and macros for MCF_MMU_MMUCR */
-#define MCF_MMU_MMUCR_EN (0x1)
-#define MCF_MMU_MMUCR_ASM (0x2)
-
-/* Bit definitions and macros for MCF_MMU_MMUOR */
-#define MCF_MMU_MMUOR_UAA (0x1)
-#define MCF_MMU_MMUOR_ACC (0x2)
-#define MCF_MMU_MMUOR_RW (0x4)
-#define MCF_MMU_MMUOR_ADR (0x8)
-#define MCF_MMU_MMUOR_ITLB (0x10)
-#define MCF_MMU_MMUOR_CAS (0x20)
-#define MCF_MMU_MMUOR_CNL (0x40)
-#define MCF_MMU_MMUOR_CA (0x80)
-#define MCF_MMU_MMUOR_STLB (0x100)
-#define MCF_MMU_MMUOR_AA(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_MMU_MMUSR */
-#define MCF_MMU_MMUSR_HIT (0x2)
-#define MCF_MMU_MMUSR_WF (0x8)
-#define MCF_MMU_MMUSR_RF (0x10)
-#define MCF_MMU_MMUSR_SPF (0x20)
-
-/* Bit definitions and macros for MCF_MMU_MMUAR */
-#define MCF_MMU_MMUAR_FA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_MMU_MMUTR */
-#define MCF_MMU_MMUTR_V (0x1)
-#define MCF_MMU_MMUTR_SG (0x2)
-#define MCF_MMU_MMUTR_ID(x) (((x)&0xFF)<<0x2)
-#define MCF_MMU_MMUTR_VA(x) (((x)&0x3FFFFF)<<0xA)
-
-/* Bit definitions and macros for MCF_MMU_MMUDR */
-#define MCF_MMU_MMUDR_LK (0x2)
-#define MCF_MMU_MMUDR_X (0x4)
-#define MCF_MMU_MMUDR_W (0x8)
-#define MCF_MMU_MMUDR_R (0x10)
-#define MCF_MMU_MMUDR_SP (0x20)
-#define MCF_MMU_MMUDR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_MMU_MMUDR_SZ(x) (((x)&0x3)<<0x8)
-#define MCF_MMU_MMUDR_PA(x) (((x)&0x3FFFFF)<<0xA)
-
-
-#endif /* __MCF5475_MMU_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_PAD.h b/BaS_gcc/tos/vmem_test/include/MCF5475_PAD.h
deleted file mode 100644
index 1d87e2e..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_PAD.h
+++ /dev/null
@@ -1,233 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PAD_H__
-#define __MCF5475_PAD_H__
-
-
-/*********************************************************************
-*
-* Common GPIO
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PAD_PAR_FBCTL (*(volatile uint16_t*)(&_MBAR[0xA40]))
-#define MCF_PAD_PAR_FBCS (*(volatile uint8_t *)(&_MBAR[0xA42]))
-#define MCF_PAD_PAR_DMA (*(volatile uint8_t *)(&_MBAR[0xA43]))
-#define MCF_PAD_PAR_FECI2CIRQ (*(volatile uint16_t*)(&_MBAR[0xA44]))
-#define MCF_PAD_PAR_PCIBG (*(volatile uint16_t*)(&_MBAR[0xA48]))
-#define MCF_PAD_PAR_PCIBR (*(volatile uint16_t*)(&_MBAR[0xA4A]))
-#define MCF_PAD_PAR_PSC3 (*(volatile uint8_t *)(&_MBAR[0xA4C]))
-#define MCF_PAD_PAR_PSC2 (*(volatile uint8_t *)(&_MBAR[0xA4D]))
-#define MCF_PAD_PAR_PSC1 (*(volatile uint8_t *)(&_MBAR[0xA4E]))
-#define MCF_PAD_PAR_PSC0 (*(volatile uint8_t *)(&_MBAR[0xA4F]))
-#define MCF_PAD_PAR_DSPI (*(volatile uint16_t*)(&_MBAR[0xA50]))
-#define MCF_PAD_PAR_TIMER (*(volatile uint8_t *)(&_MBAR[0xA52]))
-
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCTL */
-#define MCF_PAD_PAR_FBCTL_PAR_ALE(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_TBST (0x2)
-#define MCF_PAD_PAR_FBCTL_PAR_ALE_ALE (0x3)
-#define MCF_PAD_PAR_FBCTL_PAR_TA (0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_GPIO (0)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_TBST (0x20)
-#define MCF_PAD_PAR_FBCTL_PAR_RWB_RW (0x30)
-#define MCF_PAD_PAR_FBCTL_PAR_OE (0x40)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE0 (0x100)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE1 (0x400)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE2 (0x1000)
-#define MCF_PAD_PAR_FBCTL_PAR_BWE3 (0x4000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FBCS */
-#define MCF_PAD_PAR_FBCS_PAR_CS1 (0x2)
-#define MCF_PAD_PAR_FBCS_PAR_CS2 (0x4)
-#define MCF_PAD_PAR_FBCS_PAR_CS3 (0x8)
-#define MCF_PAD_PAR_FBCS_PAR_CS4 (0x10)
-#define MCF_PAD_PAR_FBCS_PAR_CS5 (0x20)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DMA */
-#define MCF_PAD_PAR_DMA_PAR_DREQ0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_TIN0 (0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ0_DREQ0 (0x3)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_IRQ1 (0x4)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_TIN1 (0x8)
-#define MCF_PAD_PAR_DMA_PAR_DREQ1_DREQ1 (0xC)
-#define MCF_PAD_PAR_DMA_PAR_DACK0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_TOUT0 (0x20)
-#define MCF_PAD_PAR_DMA_PAR_DACK0_DACK0 (0x30)
-#define MCF_PAD_PAR_DMA_PAR_DACK1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_GPIO (0)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_TOUT1 (0x80)
-#define MCF_PAD_PAR_DMA_PAR_DACK1_DACK1 (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_FECI2CIRQ */
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ5 (0x1)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_IRQ6 (0x2)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SCL (0x4)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_SDA (0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_SCL (0x80)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDC_E1MDC (0xC0)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_SDA (0x200)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MDIO_E1MDIO (0x300)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E1MII (0x400)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E17 (0x800)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDC (0x1000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MDIO (0x2000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E0MII (0x4000)
-#define MCF_PAD_PAR_FECI2CIRQ_PAR_E07 (0x8000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBG */
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_TOUT0 (0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG0_PCIBG0 (0x3)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_TOUT1 (0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG1_PCIBG1 (0xC)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_TOUT2 (0x20)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG2_PCIBG2 (0x30)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_TOUT3 (0x80)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG3_PCIBG3 (0xC0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_GPIO (0)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_TBST (0x200)
-#define MCF_PAD_PAR_PCIBG_PAR_PCIBG4_PCIBG4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PCIBR */
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_TIN0 (0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR0_PCIBR0 (0x3)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_TIN1 (0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR1_PCIBR1 (0xC)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_TIN2 (0x20)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR2_PCIBR2 (0x30)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_TIN3 (0x80)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR3_PCIBR3 (0xC0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_GPIO (0)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_IRQ4 (0x200)
-#define MCF_PAD_PAR_PCIBR_PAR_PCIBR4_PCIBR4 (0x300)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC3 */
-#define MCF_PAD_PAR_PSC3_PAR_TXD3 (0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RXD3 (0x8)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC3_PAR_RTS3_RTS (0x30)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_GPIO (0)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_BCLK (0x80)
-#define MCF_PAD_PAR_PSC3_PAR_CTS3_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC2 */
-#define MCF_PAD_PAR_PSC2_PAR_TXD2 (0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RXD2 (0x8)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC2_PAR_RTS2_RTS (0x30)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_GPIO (0)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_BCLK (0x80)
-#define MCF_PAD_PAR_PSC2_PAR_CTS2_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC1 */
-#define MCF_PAD_PAR_PSC1_PAR_TXD1 (0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RXD1 (0x8)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC1_PAR_RTS1_RTS (0x30)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_GPIO (0)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_BCLK (0x80)
-#define MCF_PAD_PAR_PSC1_PAR_CTS1_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_PSC0 */
-#define MCF_PAD_PAR_PSC0_PAR_TXD0 (0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RXD0 (0x8)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_FSYNC (0x20)
-#define MCF_PAD_PAR_PSC0_PAR_RTS0_RTS (0x30)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_GPIO (0)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_BCLK (0x80)
-#define MCF_PAD_PAR_PSC0_PAR_CTS0_CTS (0xC0)
-
-/* Bit definitions and macros for MCF_PAD_PAR_DSPI */
-#define MCF_PAD_PAR_DSPI_PAR_SOUT(x) (((x)&0x3)<<0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_TXD (0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SOUT_SOUT (0x3)
-#define MCF_PAD_PAR_DSPI_PAR_SIN(x) (((x)&0x3)<<0x2)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_RXD (0x8)
-#define MCF_PAD_PAR_DSPI_PAR_SIN_SIN (0xC)
-#define MCF_PAD_PAR_DSPI_PAR_SCK(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_BCLK (0x10)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_CTS (0x20)
-#define MCF_PAD_PAR_DSPI_PAR_SCK_SCK (0x30)
-#define MCF_PAD_PAR_DSPI_PAR_CS0(x) (((x)&0x3)<<0x6)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_FSYNC (0x40)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_RTS (0x80)
-#define MCF_PAD_PAR_DSPI_PAR_CS0_DSPICS0 (0xC0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2(x) (((x)&0x3)<<0x8)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_TOUT2 (0x200)
-#define MCF_PAD_PAR_DSPI_PAR_CS2_DSPICS2 (0x300)
-#define MCF_PAD_PAR_DSPI_PAR_CS3(x) (((x)&0x3)<<0xA)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_GPIO (0)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_TOUT3 (0x800)
-#define MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3 (0xC00)
-#define MCF_PAD_PAR_DSPI_PAR_CS5 (0x1000)
-
-/* Bit definitions and macros for MCF_PAD_PAR_TIMER */
-#define MCF_PAD_PAR_TIMER_PAR_TOUT2 (0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2(x) (((x)&0x3)<<0x1)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_IRQ2 (0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN2_TIN2 (0x6)
-#define MCF_PAD_PAR_TIMER_PAR_TOUT3 (0x8)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3(x) (((x)&0x3)<<0x4)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_IRQ3 (0x20)
-#define MCF_PAD_PAR_TIMER_PAR_TIN3_TIN3 (0x30)
-
-
-#endif /* __MCF5475_PAD_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_PCI.h b/BaS_gcc/tos/vmem_test/include/MCF5475_PCI.h
deleted file mode 100644
index 3eb3341..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_PCI.h
+++ /dev/null
@@ -1,376 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCI_H__
-#define __MCF5475_PCI_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Controller (PCI)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCI_PCIIDR (*(volatile uint32_t*)(&_MBAR[0xB00]))
-#define MCF_PCI_PCISCR (*(volatile uint32_t*)(&_MBAR[0xB04]))
-#define MCF_PCI_PCICCRIR (*(volatile uint32_t*)(&_MBAR[0xB08]))
-#define MCF_PCI_PCICR1 (*(volatile uint32_t*)(&_MBAR[0xB0C]))
-#define MCF_PCI_PCIBAR0 (*(volatile uint32_t*)(&_MBAR[0xB10]))
-#define MCF_PCI_PCIBAR1 (*(volatile uint32_t*)(&_MBAR[0xB14]))
-#define MCF_PCI_PCICCPR (*(volatile uint32_t*)(&_MBAR[0xB28]))
-#define MCF_PCI_PCISID (*(volatile uint32_t*)(&_MBAR[0xB2C]))
-#define MCF_PCI_PCICR2 (*(volatile uint32_t*)(&_MBAR[0xB3C]))
-#define MCF_PCI_PCIGSCR (*(volatile uint32_t*)(&_MBAR[0xB60]))
-#define MCF_PCI_PCITBATR0 (*(volatile uint32_t*)(&_MBAR[0xB64]))
-#define MCF_PCI_PCITBATR1 (*(volatile uint32_t*)(&_MBAR[0xB68]))
-#define MCF_PCI_PCITCR (*(volatile uint32_t*)(&_MBAR[0xB6C]))
-#define MCF_PCI_PCIIW0BTAR (*(volatile uint32_t*)(&_MBAR[0xB70]))
-#define MCF_PCI_PCIIW1BTAR (*(volatile uint32_t*)(&_MBAR[0xB74]))
-#define MCF_PCI_PCIIW2BTAR (*(volatile uint32_t*)(&_MBAR[0xB78]))
-#define MCF_PCI_PCIIWCR (*(volatile uint32_t*)(&_MBAR[0xB80]))
-#define MCF_PCI_PCIICR (*(volatile uint32_t*)(&_MBAR[0xB84]))
-#define MCF_PCI_PCIISR (*(volatile uint32_t*)(&_MBAR[0xB88]))
-#define MCF_PCI_PCICAR (*(volatile uint32_t*)(&_MBAR[0xBF8]))
-#define MCF_PCI_PCITPSR (*(volatile uint32_t*)(&_MBAR[0x8400]))
-#define MCF_PCI_PCITSAR (*(volatile uint32_t*)(&_MBAR[0x8404]))
-#define MCF_PCI_PCITTCR (*(volatile uint32_t*)(&_MBAR[0x8408]))
-#define MCF_PCI_PCITER (*(volatile uint32_t*)(&_MBAR[0x840C]))
-#define MCF_PCI_PCITNAR (*(volatile uint32_t*)(&_MBAR[0x8410]))
-#define MCF_PCI_PCITLWR (*(volatile uint32_t*)(&_MBAR[0x8414]))
-#define MCF_PCI_PCITDCR (*(volatile uint32_t*)(&_MBAR[0x8418]))
-#define MCF_PCI_PCITSR (*(volatile uint32_t*)(&_MBAR[0x841C]))
-#define MCF_PCI_PCITFDR (*(volatile uint32_t*)(&_MBAR[0x8440]))
-#define MCF_PCI_PCITFSR (*(volatile uint32_t*)(&_MBAR[0x8444]))
-#define MCF_PCI_PCITFCR (*(volatile uint32_t*)(&_MBAR[0x8448]))
-#define MCF_PCI_PCITFAR (*(volatile uint32_t*)(&_MBAR[0x844C]))
-#define MCF_PCI_PCITFRPR (*(volatile uint32_t*)(&_MBAR[0x8450]))
-#define MCF_PCI_PCITFWPR (*(volatile uint32_t*)(&_MBAR[0x8454]))
-#define MCF_PCI_PCIRPSR (*(volatile uint32_t*)(&_MBAR[0x8480]))
-#define MCF_PCI_PCIRSAR (*(volatile uint32_t*)(&_MBAR[0x8484]))
-#define MCF_PCI_PCIRTCR (*(volatile uint32_t*)(&_MBAR[0x8488]))
-#define MCF_PCI_PCIRER (*(volatile uint32_t*)(&_MBAR[0x848C]))
-#define MCF_PCI_PCIRNAR (*(volatile uint32_t*)(&_MBAR[0x8490]))
-#define MCF_PCI_PCIRDCR (*(volatile uint32_t*)(&_MBAR[0x8498]))
-#define MCF_PCI_PCIRSR (*(volatile uint32_t*)(&_MBAR[0x849C]))
-#define MCF_PCI_PCIRFDR (*(volatile uint32_t*)(&_MBAR[0x84C0]))
-#define MCF_PCI_PCIRFSR (*(volatile uint32_t*)(&_MBAR[0x84C4]))
-#define MCF_PCI_PCIRFCR (*(volatile uint32_t*)(&_MBAR[0x84C8]))
-#define MCF_PCI_PCIRFAR (*(volatile uint32_t*)(&_MBAR[0x84CC]))
-#define MCF_PCI_PCIRFRPR (*(volatile uint32_t*)(&_MBAR[0x84D0]))
-#define MCF_PCI_PCIRFWPR (*(volatile uint32_t*)(&_MBAR[0x84D4]))
-
-
-/* Bit definitions and macros for MCF_PCI_PCIIDR */
-#define MCF_PCI_PCIIDR_VENDORID(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIIDR_DEVICEID(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCISCR */
-#define MCF_PCI_PCISCR_IO (0x1)
-#define MCF_PCI_PCISCR_M (0x2)
-#define MCF_PCI_PCISCR_B (0x4)
-#define MCF_PCI_PCISCR_SP (0x8)
-#define MCF_PCI_PCISCR_MW (0x10)
-#define MCF_PCI_PCISCR_V (0x20)
-#define MCF_PCI_PCISCR_PER (0x40)
-#define MCF_PCI_PCISCR_ST (0x80)
-#define MCF_PCI_PCISCR_S (0x100)
-#define MCF_PCI_PCISCR_F (0x200)
-#define MCF_PCI_PCISCR_C (0x100000)
-#define MCF_PCI_PCISCR_66M (0x200000)
-#define MCF_PCI_PCISCR_R (0x400000)
-#define MCF_PCI_PCISCR_FC (0x800000)
-#define MCF_PCI_PCISCR_DP (0x1000000)
-#define MCF_PCI_PCISCR_DT(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCISCR_TS (0x8000000)
-#define MCF_PCI_PCISCR_TR (0x10000000)
-#define MCF_PCI_PCISCR_MA (0x20000000)
-#define MCF_PCI_PCISCR_SE (0x40000000)
-#define MCF_PCI_PCISCR_PE (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICCRIR */
-#define MCF_PCI_PCICCRIR_REVISIONID(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICCRIR_CLASSCODE(x) (((x)&0xFFFFFF)<<0x8)
-
-/* Bit definitions and macros for MCF_PCI_PCICR1 */
-#define MCF_PCI_PCICR1_CACHELINESIZE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR1_LATTIMER(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR1_HEADERTYPE(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR1_BIST(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR0 */
-#define MCF_PCI_PCIBAR0_IOM (0x1)
-#define MCF_PCI_PCIBAR0_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR0_PREF (0x8)
-#define MCF_PCI_PCIBAR0_BAR0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCIBAR1 */
-#define MCF_PCI_PCIBAR1_IOM (0x1)
-#define MCF_PCI_PCIBAR1_RANGE(x) (((x)&0x3)<<0x1)
-#define MCF_PCI_PCIBAR1_PREF (0x8)
-#define MCF_PCI_PCIBAR1_BAR1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCICCPR */
-#define MCF_PCI_PCICCPR_PCICCP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCISID */
-#define MCF_PCI_PCISID_VENDORID(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCICR2 */
-#define MCF_PCI_PCICR2_INTLINE(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCICR2_INTPIN(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCICR2_MINGNT(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICR2_MAXLAT(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIGSCR */
-#define MCF_PCI_PCIGSCR_PR (0x1)
-#define MCF_PCI_PCIGSCR_SEE (0x1000)
-#define MCF_PCI_PCIGSCR_PEE (0x2000)
-#define MCF_PCI_PCIGSCR_CLKINRESERVED(x) (((x)&0x7)<<0x10)
-#define MCF_PCI_PCIGSCR_XLB2CLKIN(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIGSCR_SE (0x10000000)
-#define MCF_PCI_PCIGSCR_PE (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR0 */
-#define MCF_PCI_PCITBATR0_EN (0x1)
-#define MCF_PCI_PCITBATR0_BAT0(x) (((x)&0x3FFF)<<0x12)
-
-/* Bit definitions and macros for MCF_PCI_PCITBATR1 */
-#define MCF_PCI_PCITBATR1_EN (0x1)
-#define MCF_PCI_PCITBATR1_BAT1(x) (((x)&0x3)<<0x1E)
-
-/* Bit definitions and macros for MCF_PCI_PCITCR */
-#define MCF_PCI_PCITCR_P (0x10000)
-#define MCF_PCI_PCITCR_LD (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW0BTAR */
-#define MCF_PCI_PCIIW0BTAR_WTA0(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW0BTAR_WAM0(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW0BTAR_WBA0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW1BTAR */
-#define MCF_PCI_PCIIW1BTAR_WTA1(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW1BTAR_WAM1(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW1BTAR_WBA1(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIW2BTAR */
-#define MCF_PCI_PCIIW2BTAR_WTA2(x) (((x)&0xFF)<<0x8)
-#define MCF_PCI_PCIIW2BTAR_WAM2(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIIW2BTAR_WBA2(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIIWCR */
-#define MCF_PCI_PCIIWCR_WINCTRL2_E (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_PRC(x) (((x)&0x3)<<0x9)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IOM (0x800)
-#define MCF_PCI_PCIIWCR_WINCTRL1_E (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_PRC(x) (((x)&0x3)<<0x11)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IOM (0x80000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_E (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_PRC(x) (((x)&0x3)<<0x19)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IOM (0x8000000)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMREAD (0x100)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDLINE (0x300)
-#define MCF_PCI_PCIIWCR_WINCTRL2_MEMRDMUL (0x500)
-#define MCF_PCI_PCIIWCR_WINCTRL2_IO (0x900)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMREAD (0x10000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDLINE (0x30000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_MEMRDMUL (0x50000)
-#define MCF_PCI_PCIIWCR_WINCTRL1_IO (0x90000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMREAD (0x1000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDLINE (0x3000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_MEMRDMUL (0x5000000)
-#define MCF_PCI_PCIIWCR_WINCTRL0_IO (0x9000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIICR */
-#define MCF_PCI_PCIICR_MAXRETRY(x) (((x)&0xFF)<<0)
-#define MCF_PCI_PCIICR_TAE (0x1000000)
-#define MCF_PCI_PCIICR_IAE (0x2000000)
-#define MCF_PCI_PCIICR_REE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIISR */
-#define MCF_PCI_PCIISR_TA (0x1000000)
-#define MCF_PCI_PCIISR_IA (0x2000000)
-#define MCF_PCI_PCIISR_RE (0x4000000)
-
-/* Bit definitions and macros for MCF_PCI_PCICAR */
-#define MCF_PCI_PCICAR_DWORD(x) (((x)&0x3F)<<0x2)
-#define MCF_PCI_PCICAR_FUNCNUM(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCICAR_DEVNUM(x) (((x)&0x1F)<<0xB)
-#define MCF_PCI_PCICAR_BUSNUM(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCICAR_E (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITPSR */
-#define MCF_PCI_PCITPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSAR */
-#define MCF_PCI_PCITSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITTCR */
-#define MCF_PCI_PCITTCR_DI (0x1)
-#define MCF_PCI_PCITTCR_W (0x10)
-#define MCF_PCI_PCITTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCITTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCITTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCITER */
-#define MCF_PCI_PCITER_NE (0x10000)
-#define MCF_PCI_PCITER_IAE (0x20000)
-#define MCF_PCI_PCITER_TAE (0x40000)
-#define MCF_PCI_PCITER_RE (0x80000)
-#define MCF_PCI_PCITER_SE (0x100000)
-#define MCF_PCI_PCITER_FEE (0x200000)
-#define MCF_PCI_PCITER_ME (0x1000000)
-#define MCF_PCI_PCITER_BE (0x8000000)
-#define MCF_PCI_PCITER_CM (0x10000000)
-#define MCF_PCI_PCITER_RF (0x40000000)
-#define MCF_PCI_PCITER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITNAR */
-#define MCF_PCI_PCITNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITLWR */
-#define MCF_PCI_PCITLWR_LASTWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITDCR */
-#define MCF_PCI_PCITDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCITDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCITSR */
-#define MCF_PCI_PCITSR_IA (0x10000)
-#define MCF_PCI_PCITSR_TA (0x20000)
-#define MCF_PCI_PCITSR_RE (0x40000)
-#define MCF_PCI_PCITSR_SE (0x80000)
-#define MCF_PCI_PCITSR_FE (0x100000)
-#define MCF_PCI_PCITSR_BE1 (0x200000)
-#define MCF_PCI_PCITSR_BE2 (0x400000)
-#define MCF_PCI_PCITSR_BE3 (0x800000)
-#define MCF_PCI_PCITSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFDR */
-#define MCF_PCI_PCITFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFSR */
-#define MCF_PCI_PCITFSR_EMPTY (0x10000)
-#define MCF_PCI_PCITFSR_ALARM (0x20000)
-#define MCF_PCI_PCITFSR_FULL (0x40000)
-#define MCF_PCI_PCITFSR_FR (0x80000)
-#define MCF_PCI_PCITFSR_OF (0x100000)
-#define MCF_PCI_PCITFSR_UF (0x200000)
-#define MCF_PCI_PCITFSR_RXW (0x400000)
-#define MCF_PCI_PCITFSR_FAE (0x800000)
-#define MCF_PCI_PCITFSR_TXW (0x40000000)
-#define MCF_PCI_PCITFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFCR */
-#define MCF_PCI_PCITFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCITFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCITFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCITFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCITFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCITFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCITFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCITFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCITFAR */
-#define MCF_PCI_PCITFAR_ALARM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFRPR */
-#define MCF_PCI_PCITFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCITFWPR */
-#define MCF_PCI_PCITFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRPSR */
-#define MCF_PCI_PCIRPSR_PKTSIZE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSAR */
-#define MCF_PCI_PCIRSAR_STARTADD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRTCR */
-#define MCF_PCI_PCIRTCR_DI (0x1)
-#define MCF_PCI_PCIRTCR_W (0x10)
-#define MCF_PCI_PCIRTCR_MAXBEATS(x) (((x)&0x7)<<0x8)
-#define MCF_PCI_PCIRTCR_FB (0x1000)
-#define MCF_PCI_PCIRTCR_MAXRETRY(x) (((x)&0xFF)<<0x10)
-#define MCF_PCI_PCIRTCR_PCICMD(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_PCI_PCIRER */
-#define MCF_PCI_PCIRER_NE (0x10000)
-#define MCF_PCI_PCIRER_IAE (0x20000)
-#define MCF_PCI_PCIRER_TAE (0x40000)
-#define MCF_PCI_PCIRER_RE (0x80000)
-#define MCF_PCI_PCIRER_SE (0x100000)
-#define MCF_PCI_PCIRER_FEE (0x200000)
-#define MCF_PCI_PCIRER_ME (0x1000000)
-#define MCF_PCI_PCIRER_BE (0x8000000)
-#define MCF_PCI_PCIRER_CM (0x10000000)
-#define MCF_PCI_PCIRER_FE (0x20000000)
-#define MCF_PCI_PCIRER_RF (0x40000000)
-#define MCF_PCI_PCIRER_RC (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRNAR */
-#define MCF_PCI_PCIRNAR_NEXTADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRDCR */
-#define MCF_PCI_PCIRDCR_PKTSDONE(x) (((x)&0xFFFF)<<0)
-#define MCF_PCI_PCIRDCR_BYTESDONE(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PCI_PCIRSR */
-#define MCF_PCI_PCIRSR_IA (0x10000)
-#define MCF_PCI_PCIRSR_TA (0x20000)
-#define MCF_PCI_PCIRSR_RE (0x40000)
-#define MCF_PCI_PCIRSR_SE (0x80000)
-#define MCF_PCI_PCIRSR_FE (0x100000)
-#define MCF_PCI_PCIRSR_BE1 (0x200000)
-#define MCF_PCI_PCIRSR_BE2 (0x400000)
-#define MCF_PCI_PCIRSR_BE3 (0x800000)
-#define MCF_PCI_PCIRSR_NT (0x1000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFDR */
-#define MCF_PCI_PCIRFDR_FIFODATAWORD(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFSR */
-#define MCF_PCI_PCIRFSR_EMPTY (0x10000)
-#define MCF_PCI_PCIRFSR_ALARM (0x20000)
-#define MCF_PCI_PCIRFSR_FULL (0x40000)
-#define MCF_PCI_PCIRFSR_FR (0x80000)
-#define MCF_PCI_PCIRFSR_OF (0x100000)
-#define MCF_PCI_PCIRFSR_UF (0x200000)
-#define MCF_PCI_PCIRFSR_RXW (0x400000)
-#define MCF_PCI_PCIRFSR_FAE (0x800000)
-#define MCF_PCI_PCIRFSR_TXW (0x40000000)
-#define MCF_PCI_PCIRFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFCR */
-#define MCF_PCI_PCIRFCR_TXW_MASK (0x40000)
-#define MCF_PCI_PCIRFCR_OF_MASK (0x80000)
-#define MCF_PCI_PCIRFCR_UF_MASK (0x100000)
-#define MCF_PCI_PCIRFCR_RXW_MASK (0x200000)
-#define MCF_PCI_PCIRFCR_FAE_MASK (0x400000)
-#define MCF_PCI_PCIRFCR_IP_MASK (0x800000)
-#define MCF_PCI_PCIRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PCI_PCIRFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFAR */
-#define MCF_PCI_PCIRFAR_ALARM(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFRPR */
-#define MCF_PCI_PCIRFRPR_READPTR(x) (((x)&0x7F)<<0)
-
-/* Bit definitions and macros for MCF_PCI_PCIRFWPR */
-#define MCF_PCI_PCIRFWPR_WRITEPTR(x) (((x)&0x7F)<<0)
-
-
-#endif /* __MCF5475_PCI_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_PCIARB.h b/BaS_gcc/tos/vmem_test/include/MCF5475_PCIARB.h
deleted file mode 100644
index 9e8c05b..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_PCIARB.h
+++ /dev/null
@@ -1,43 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PCIARB_H__
-#define __MCF5475_PCIARB_H__
-
-
-/*********************************************************************
-*
-* PCI Bus Arbiter Module (PCIARB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PCIARB_PACR (*(volatile uint32_t*)(&_MBAR[0xC00]))
-#define MCF_PCIARB_PASR (*(volatile uint32_t*)(&_MBAR[0xC04]))
-
-
-/* Bit definitions and macros for MCF_PCIARB_PACR */
-#define MCF_PCIARB_PACR_INTMPRI (0x1)
-#define MCF_PCIARB_PACR_EXTMPRI(x) (((x)&0x1F)<<0x1)
-#define MCF_PCIARB_PACR_INTMINTEN (0x10000)
-#define MCF_PCIARB_PACR_EXTMINTEN(x) (((x)&0x1F)<<0x11)
-#define MCF_PCIARB_PACR_DS (0x80000000)
-
-/* Bit definitions and macros for MCF_PCIARB_PASR */
-#define MCF_PCIARB_PASR_ITLMBK (0x10000)
-#define MCF_PCIARB_PASR_EXTMBK(x) (((x)&0x1F)<<0x11)
-
-
-#endif /* __MCF5475_PCIARB_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_PSC.h b/BaS_gcc/tos/vmem_test/include/MCF5475_PSC.h
deleted file mode 100644
index ffa9f3e..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_PSC.h
+++ /dev/null
@@ -1,527 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_PSC_H__
-#define __MCF5475_PSC_H__
-
-
-/*********************************************************************
-*
-* Programmable Serial Controller (PSC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_PSC0_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8600]))
-#define MCF_PSC0_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8604]))
-#define MCF_PSC0_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8608]))
-#define MCF_PSC0_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x860C]))
-#define MCF_PSC0_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8610]))
-#define MCF_PSC0_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8614]))
-#define MCF_PSC0_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8618]))
-#define MCF_PSC0_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x861C]))
-#define MCF_PSC0_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8634]))
-#define MCF_PSC0_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8638]))
-#define MCF_PSC0_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x863C]))
-#define MCF_PSC0_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8640]))
-#define MCF_PSC0_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8644]))
-#define MCF_PSC0_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8648]))
-#define MCF_PSC0_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x864C]))
-#define MCF_PSC0_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8650]))
-#define MCF_PSC0_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8654]))
-#define MCF_PSC0_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8658]))
-#define MCF_PSC0_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x865C]))
-#define MCF_PSC0_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8660]))
-#define MCF_PSC0_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8664]))
-#define MCF_PSC0_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8668]))
-#define MCF_PSC0_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x866E]))
-#define MCF_PSC0_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8672]))
-#define MCF_PSC0_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8676]))
-#define MCF_PSC0_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x867A]))
-#define MCF_PSC0_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x867E]))
-#define MCF_PSC0_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8680]))
-#define MCF_PSC0_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8684]))
-#define MCF_PSC0_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8688]))
-#define MCF_PSC0_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x868E]))
-#define MCF_PSC0_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8692]))
-#define MCF_PSC0_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8696]))
-#define MCF_PSC0_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x869A]))
-#define MCF_PSC0_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x869E]))
-
-#define MCF_PSC1_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8700]))
-#define MCF_PSC1_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8704]))
-#define MCF_PSC1_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8708]))
-#define MCF_PSC1_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x870C]))
-#define MCF_PSC1_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8710]))
-#define MCF_PSC1_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8714]))
-#define MCF_PSC1_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8718]))
-#define MCF_PSC1_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x871C]))
-#define MCF_PSC1_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8734]))
-#define MCF_PSC1_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8738]))
-#define MCF_PSC1_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x873C]))
-#define MCF_PSC1_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8740]))
-#define MCF_PSC1_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8744]))
-#define MCF_PSC1_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8748]))
-#define MCF_PSC1_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x874C]))
-#define MCF_PSC1_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8750]))
-#define MCF_PSC1_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8754]))
-#define MCF_PSC1_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8758]))
-#define MCF_PSC1_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x875C]))
-#define MCF_PSC1_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8760]))
-#define MCF_PSC1_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8764]))
-#define MCF_PSC1_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8768]))
-#define MCF_PSC1_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x876E]))
-#define MCF_PSC1_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8772]))
-#define MCF_PSC1_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8776]))
-#define MCF_PSC1_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x877A]))
-#define MCF_PSC1_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x877E]))
-#define MCF_PSC1_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8780]))
-#define MCF_PSC1_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8784]))
-#define MCF_PSC1_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8788]))
-#define MCF_PSC1_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x878E]))
-#define MCF_PSC1_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8792]))
-#define MCF_PSC1_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8796]))
-#define MCF_PSC1_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x879A]))
-#define MCF_PSC1_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x879E]))
-
-#define MCF_PSC2_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8800]))
-#define MCF_PSC2_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8804]))
-#define MCF_PSC2_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8808]))
-#define MCF_PSC2_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x880C]))
-#define MCF_PSC2_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8810]))
-#define MCF_PSC2_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8814]))
-#define MCF_PSC2_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8818]))
-#define MCF_PSC2_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x881C]))
-#define MCF_PSC2_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8834]))
-#define MCF_PSC2_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8838]))
-#define MCF_PSC2_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x883C]))
-#define MCF_PSC2_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8840]))
-#define MCF_PSC2_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8844]))
-#define MCF_PSC2_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8848]))
-#define MCF_PSC2_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x884C]))
-#define MCF_PSC2_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8850]))
-#define MCF_PSC2_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8854]))
-#define MCF_PSC2_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8858]))
-#define MCF_PSC2_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x885C]))
-#define MCF_PSC2_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8860]))
-#define MCF_PSC2_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8864]))
-#define MCF_PSC2_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8868]))
-#define MCF_PSC2_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x886E]))
-#define MCF_PSC2_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8872]))
-#define MCF_PSC2_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8876]))
-#define MCF_PSC2_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x887A]))
-#define MCF_PSC2_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x887E]))
-#define MCF_PSC2_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8880]))
-#define MCF_PSC2_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8884]))
-#define MCF_PSC2_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8888]))
-#define MCF_PSC2_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x888E]))
-#define MCF_PSC2_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8892]))
-#define MCF_PSC2_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8896]))
-#define MCF_PSC2_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x889A]))
-#define MCF_PSC2_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x889E]))
-
-#define MCF_PSC3_PSCMR2 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCMR1 (*(volatile uint8_t *)(&_MBAR[0x8900]))
-#define MCF_PSC3_PSCCSR (*(volatile uint8_t *)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCSR (*(volatile uint16_t*)(&_MBAR[0x8904]))
-#define MCF_PSC3_PSCCR (*(volatile uint8_t *)(&_MBAR[0x8908]))
-#define MCF_PSC3_PSCRB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_8BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_16BIT (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCRB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCTB_AC97 (*(volatile uint32_t*)(&_MBAR[0x890C]))
-#define MCF_PSC3_PSCIPCR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCACR (*(volatile uint8_t *)(&_MBAR[0x8910]))
-#define MCF_PSC3_PSCIMR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCISR (*(volatile uint16_t*)(&_MBAR[0x8914]))
-#define MCF_PSC3_PSCCTUR (*(volatile uint8_t *)(&_MBAR[0x8918]))
-#define MCF_PSC3_PSCCTLR (*(volatile uint8_t *)(&_MBAR[0x891C]))
-#define MCF_PSC3_PSCIP (*(volatile uint8_t *)(&_MBAR[0x8934]))
-#define MCF_PSC3_PSCOPSET (*(volatile uint8_t *)(&_MBAR[0x8938]))
-#define MCF_PSC3_PSCOPRESET (*(volatile uint8_t *)(&_MBAR[0x893C]))
-#define MCF_PSC3_PSCSICR (*(volatile uint8_t *)(&_MBAR[0x8940]))
-#define MCF_PSC3_PSCIRCR1 (*(volatile uint8_t *)(&_MBAR[0x8944]))
-#define MCF_PSC3_PSCIRCR2 (*(volatile uint8_t *)(&_MBAR[0x8948]))
-#define MCF_PSC3_PSCIRSDR (*(volatile uint8_t *)(&_MBAR[0x894C]))
-#define MCF_PSC3_PSCIRMDR (*(volatile uint8_t *)(&_MBAR[0x8950]))
-#define MCF_PSC3_PSCIRFDR (*(volatile uint8_t *)(&_MBAR[0x8954]))
-#define MCF_PSC3_PSCRFCNT (*(volatile uint16_t*)(&_MBAR[0x8958]))
-#define MCF_PSC3_PSCTFCNT (*(volatile uint16_t*)(&_MBAR[0x895C]))
-#define MCF_PSC3_PSCRFDR (*(volatile uint32_t*)(&_MBAR[0x8960]))
-#define MCF_PSC3_PSCRFSR (*(volatile uint16_t*)(&_MBAR[0x8964]))
-#define MCF_PSC3_PSCRFCR (*(volatile uint32_t*)(&_MBAR[0x8968]))
-#define MCF_PSC3_PSCRFAR (*(volatile uint16_t*)(&_MBAR[0x896E]))
-#define MCF_PSC3_PSCRFRP (*(volatile uint16_t*)(&_MBAR[0x8972]))
-#define MCF_PSC3_PSCRFWP (*(volatile uint16_t*)(&_MBAR[0x8976]))
-#define MCF_PSC3_PSCRLRFP (*(volatile uint16_t*)(&_MBAR[0x897A]))
-#define MCF_PSC3_PSCRLWFP (*(volatile uint16_t*)(&_MBAR[0x897E]))
-#define MCF_PSC3_PSCTFDR (*(volatile uint32_t*)(&_MBAR[0x8980]))
-#define MCF_PSC3_PSCTFSR (*(volatile uint16_t*)(&_MBAR[0x8984]))
-#define MCF_PSC3_PSCTFCR (*(volatile uint32_t*)(&_MBAR[0x8988]))
-#define MCF_PSC3_PSCTFAR (*(volatile uint16_t*)(&_MBAR[0x898E]))
-#define MCF_PSC3_PSCTFRP (*(volatile uint16_t*)(&_MBAR[0x8992]))
-#define MCF_PSC3_PSCTFWP (*(volatile uint16_t*)(&_MBAR[0x8996]))
-#define MCF_PSC3_PSCTLRFP (*(volatile uint16_t*)(&_MBAR[0x899A]))
-#define MCF_PSC3_PSCTLWFP (*(volatile uint16_t*)(&_MBAR[0x899E]))
-
-#define MCF_PSC_PSCMR(x) (*(volatile uint8_t *)(&_MBAR[0x8600 + ((x)*0x100)]))
-#define MCF_PSC_PSCCSR(x) (*(volatile uint8_t *)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCSR(x) (*(volatile uint16_t*)(&_MBAR[0x8604 + ((x)*0x100)]))
-#define MCF_PSC_PSCCR(x) (*(volatile uint8_t *)(&_MBAR[0x8608 + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_8BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_16BIT(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCRB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCTB_AC97(x) (*(volatile uint32_t*)(&_MBAR[0x860C + ((x)*0x100)]))
-#define MCF_PSC_PSCIPCR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCACR(x) (*(volatile uint8_t *)(&_MBAR[0x8610 + ((x)*0x100)]))
-#define MCF_PSC_PSCIMR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCISR(x) (*(volatile uint16_t*)(&_MBAR[0x8614 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTUR(x) (*(volatile uint8_t *)(&_MBAR[0x8618 + ((x)*0x100)]))
-#define MCF_PSC_PSCCTLR(x) (*(volatile uint8_t *)(&_MBAR[0x861C + ((x)*0x100)]))
-#define MCF_PSC_PSCIP(x) (*(volatile uint8_t *)(&_MBAR[0x8634 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPSET(x) (*(volatile uint8_t *)(&_MBAR[0x8638 + ((x)*0x100)]))
-#define MCF_PSC_PSCOPRESET(x) (*(volatile uint8_t *)(&_MBAR[0x863C + ((x)*0x100)]))
-#define MCF_PSC_PSCSICR(x) (*(volatile uint8_t *)(&_MBAR[0x8640 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR1(x) (*(volatile uint8_t *)(&_MBAR[0x8644 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRCR2(x) (*(volatile uint8_t *)(&_MBAR[0x8648 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRSDR(x) (*(volatile uint8_t *)(&_MBAR[0x864C + ((x)*0x100)]))
-#define MCF_PSC_PSCIRMDR(x) (*(volatile uint8_t *)(&_MBAR[0x8650 + ((x)*0x100)]))
-#define MCF_PSC_PSCIRFDR(x) (*(volatile uint8_t *)(&_MBAR[0x8654 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x8658 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCNT(x) (*(volatile uint16_t*)(&_MBAR[0x865C + ((x)*0x100)]))
-#define MCF_PSC_PSCRFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8660 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8664 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8668 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFAR(x) (*(volatile uint16_t*)(&_MBAR[0x866E + ((x)*0x100)]))
-#define MCF_PSC_PSCRFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8672 + ((x)*0x100)]))
-#define MCF_PSC_PSCRFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8676 + ((x)*0x100)]))
-#define MCF_PSC_PSCRLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x867A + ((x)*0x100)]))
-#define MCF_PSC_PSCRLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x867E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFDR(x) (*(volatile uint32_t*)(&_MBAR[0x8680 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFSR(x) (*(volatile uint16_t*)(&_MBAR[0x8684 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFCR(x) (*(volatile uint32_t*)(&_MBAR[0x8688 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFAR(x) (*(volatile uint16_t*)(&_MBAR[0x868E + ((x)*0x100)]))
-#define MCF_PSC_PSCTFRP(x) (*(volatile uint16_t*)(&_MBAR[0x8692 + ((x)*0x100)]))
-#define MCF_PSC_PSCTFWP(x) (*(volatile uint16_t*)(&_MBAR[0x8696 + ((x)*0x100)]))
-#define MCF_PSC_PSCTLRFP(x) (*(volatile uint16_t*)(&_MBAR[0x869A + ((x)*0x100)]))
-#define MCF_PSC_PSCTLWFP(x) (*(volatile uint16_t*)(&_MBAR[0x869E + ((x)*0x100)]))
-
-/* Bit definitions and macros for MCF_PSC_PSCMR */
-#define MCF_PSC_PSCMR_SB(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCMR_TXCTS (0x10)
-#define MCF_PSC_PSCMR_TXRTS (0x20)
-#define MCF_PSC_PSCMR_CM(x) (((x)&0x3)<<0x6)
-#define MCF_PSC_PSCMR_CM_NORMAL (0)
-#define MCF_PSC_PSCMR_CM_ECHO (0x40)
-#define MCF_PSC_PSCMR_CM_LOCAL_LOOP (0x80)
-#define MCF_PSC_PSCMR_CM_REMOTE_LOOP (0xC0)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_1 (0x7)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_15 (0x8)
-#define MCF_PSC_PSCMR_SB_STOP_BITS_2 (0xF)
-#define MCF_PSC_PSCMR_PM_MULTI_ADDR (0x1C)
-#define MCF_PSC_PSCMR_PM_MULTI_DATA (0x18)
-#define MCF_PSC_PSCMR_PM_NONE (0x10)
-#define MCF_PSC_PSCMR_PM_FORCE_HI (0xC)
-#define MCF_PSC_PSCMR_PM_FORCE_LO (0x8)
-#define MCF_PSC_PSCMR_PM_ODD (0x4)
-#define MCF_PSC_PSCMR_PM_EVEN (0)
-#define MCF_PSC_PSCMR_BC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCMR_BC_5 (0)
-#define MCF_PSC_PSCMR_BC_6 (0x1)
-#define MCF_PSC_PSCMR_BC_7 (0x2)
-#define MCF_PSC_PSCMR_BC_8 (0x3)
-#define MCF_PSC_PSCMR_PT (0x4)
-#define MCF_PSC_PSCMR_PM(x) (((x)&0x3)<<0x3)
-#define MCF_PSC_PSCMR_ERR (0x20)
-#define MCF_PSC_PSCMR_RXIRQ_FU (0x40)
-#define MCF_PSC_PSCMR_RXRTS (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCCSR */
-#define MCF_PSC_PSCCSR_TCSEL(x) (((x)&0xF)<<0)
-#define MCF_PSC_PSCCSR_RCSEL(x) (((x)&0xF)<<0x4)
-#define MCF_PSC_PSCCSR_TCSEL_SYS_CLK (0x0D)
-#define MCF_PSC_PSCCSR_TCSEL_CTM16 (0x0E)
-#define MCF_PSC_PSCCSR_TCSEL_CTM (0x0F)
-#define MCF_PSC_PSCCSR_RCSEL_SYS_CLK (0xD0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM16 (0xE0)
-#define MCF_PSC_PSCCSR_RCSEL_CTM (0xF0)
-
-/* Bit definitions and macros for MCF_PSC_PSCSR */
-#define MCF_PSC_PSCSR_ERR (0x40)
-#define MCF_PSC_PSCSR_CDE_DEOF (0x80)
-#define MCF_PSC_PSCSR_RXRDY (0x100)
-#define MCF_PSC_PSCSR_FU (0x200)
-#define MCF_PSC_PSCSR_TXRDY (0x400)
-#define MCF_PSC_PSCSR_TXEMP_URERR (0x800)
-#define MCF_PSC_PSCSR_OE (0x1000)
-#define MCF_PSC_PSCSR_PE_CRCERR (0x2000)
-#define MCF_PSC_PSCSR_FE_PHYERR (0x4000)
-#define MCF_PSC_PSCSR_RB_NEOF (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCR */
-#define MCF_PSC_PSCCR_RXC(x) (((x)&0x3)<<0)
-#define MCF_PSC_PSCCR_RX_ENABLED (0x1)
-#define MCF_PSC_PSCCR_RX_DISABLED (0x2)
-#define MCF_PSC_PSCCR_TXC(x) (((x)&0x3)<<0x2)
-#define MCF_PSC_PSCCR_TX_ENABLED (0x4)
-#define MCF_PSC_PSCCR_TX_DISABLED (0x8)
-#define MCF_PSC_PSCCR_MISC(x) (((x)&0x7)<<0x4)
-#define MCF_PSC_PSCCR_NONE (0)
-#define MCF_PSC_PSCCR_RESET_MR (0x10)
-#define MCF_PSC_PSCCR_RESET_RX (0x20)
-#define MCF_PSC_PSCCR_RESET_TX (0x30)
-#define MCF_PSC_PSCCR_RESET_ERROR (0x40)
-#define MCF_PSC_PSCCR_RESET_BKCHGINT (0x50)
-#define MCF_PSC_PSCCR_START_BREAK (0x60)
-#define MCF_PSC_PSCCR_STOP_BREAK (0x70)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_8BIT */
-#define MCF_PSC_PSCRB_8BIT_RB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCRB_8BIT_RB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCRB_8BIT_RB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCRB_8BIT_RB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_8BIT */
-#define MCF_PSC_PSCTB_8BIT_TB3(x) (((x)&0xFF)<<0)
-#define MCF_PSC_PSCTB_8BIT_TB2(x) (((x)&0xFF)<<0x8)
-#define MCF_PSC_PSCTB_8BIT_TB1(x) (((x)&0xFF)<<0x10)
-#define MCF_PSC_PSCTB_8BIT_TB0(x) (((x)&0xFF)<<0x18)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_16BIT */
-#define MCF_PSC_PSCRB_16BIT_RB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRB_16BIT_RB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_16BIT */
-#define MCF_PSC_PSCTB_16BIT_TB1(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTB_16BIT_TB0(x) (((x)&0xFFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_PSC_PSCRB_AC97 */
-#define MCF_PSC_PSCRB_AC97_SOF (0x800)
-#define MCF_PSC_PSCRB_AC97_RB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCTB_AC97 */
-#define MCF_PSC_PSCTB_AC97_TB(x) (((x)&0xFFFFF)<<0xC)
-
-/* Bit definitions and macros for MCF_PSC_PSCIPCR */
-#define MCF_PSC_PSCIPCR_RESERVED (0xC)
-#define MCF_PSC_PSCIPCR_CTS (0xD)
-#define MCF_PSC_PSCIPCR_D_CTS (0x1C)
-#define MCF_PSC_PSCIPCR_SYNC (0x8C)
-
-/* Bit definitions and macros for MCF_PSC_PSCACR */
-#define MCF_PSC_PSCACR_IEC0 (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCIMR */
-#define MCF_PSC_PSCIMR_ERR (0x40)
-#define MCF_PSC_PSCIMR_DEOF (0x80)
-#define MCF_PSC_PSCIMR_TXRDY (0x100)
-#define MCF_PSC_PSCIMR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCIMR_DB (0x400)
-#define MCF_PSC_PSCIMR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCISR */
-#define MCF_PSC_PSCISR_ERR (0x40)
-#define MCF_PSC_PSCISR_DEOF (0x80)
-#define MCF_PSC_PSCISR_TXRDY (0x100)
-#define MCF_PSC_PSCISR_RXRDY_FU (0x200)
-#define MCF_PSC_PSCISR_DB (0x400)
-#define MCF_PSC_PSCISR_IPC (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTUR */
-#define MCF_PSC_PSCCTUR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCCTLR */
-#define MCF_PSC_PSCCTLR_CT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIP */
-#define MCF_PSC_PSCIP_CTS (0x1)
-#define MCF_PSC_PSCIP_TGL (0x40)
-#define MCF_PSC_PSCIP_LPWR_B (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPSET */
-#define MCF_PSC_PSCOPSET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCOPRESET */
-#define MCF_PSC_PSCOPRESET_RTS (0x1)
-
-/* Bit definitions and macros for MCF_PSC_PSCSICR */
-#define MCF_PSC_PSCSICR_SIM(x) (((x)&0x7)<<0)
-#define MCF_PSC_PSCSICR_SIM_UART (0)
-#define MCF_PSC_PSCSICR_SIM_MODEM8 (0x1)
-#define MCF_PSC_PSCSICR_SIM_MODEM16 (0x2)
-#define MCF_PSC_PSCSICR_SIM_AC97 (0x3)
-#define MCF_PSC_PSCSICR_SIM_SIR (0x4)
-#define MCF_PSC_PSCSICR_SIM_MIR (0x5)
-#define MCF_PSC_PSCSICR_SIM_FIR (0x6)
-#define MCF_PSC_PSCSICR_SHDIR (0x10)
-#define MCF_PSC_PSCSICR_DTS1 (0x20)
-#define MCF_PSC_PSCSICR_AWR (0x40)
-#define MCF_PSC_PSCSICR_ACRB (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR1 */
-#define MCF_PSC_PSCIRCR1_SPUL (0x1)
-#define MCF_PSC_PSCIRCR1_SIPEN (0x2)
-#define MCF_PSC_PSCIRCR1_FD (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRCR2 */
-#define MCF_PSC_PSCIRCR2_NXTEOF (0x1)
-#define MCF_PSC_PSCIRCR2_ABORT (0x2)
-#define MCF_PSC_PSCIRCR2_SIPREQ (0x4)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRSDR */
-#define MCF_PSC_PSCIRSDR_IRSTIM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRMDR */
-#define MCF_PSC_PSCIRMDR_M_FDIV(x) (((x)&0x7F)<<0)
-#define MCF_PSC_PSCIRMDR_FREQ (0x80)
-
-/* Bit definitions and macros for MCF_PSC_PSCIRFDR */
-#define MCF_PSC_PSCIRFDR_F_FDIV(x) (((x)&0xF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCNT */
-#define MCF_PSC_PSCRFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCNT */
-#define MCF_PSC_PSCTFCNT_CNT(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFDR */
-#define MCF_PSC_PSCRFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFSR */
-#define MCF_PSC_PSCRFSR_EMT (0x1)
-#define MCF_PSC_PSCRFSR_ALARM (0x2)
-#define MCF_PSC_PSCRFSR_FU (0x4)
-#define MCF_PSC_PSCRFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCRFSR_OF (0x10)
-#define MCF_PSC_PSCRFSR_UF (0x20)
-#define MCF_PSC_PSCRFSR_RXW (0x40)
-#define MCF_PSC_PSCRFSR_FAE (0x80)
-#define MCF_PSC_PSCRFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCRFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCRFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCRFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCRFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCRFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCRFSR_TXW (0x4000)
-#define MCF_PSC_PSCRFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFCR */
-#define MCF_PSC_PSCRFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCRFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCRFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCRFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCRFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCRFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCRFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCRFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCRFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCRFCR_TIMER (0x10000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFAR */
-#define MCF_PSC_PSCRFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFRP */
-#define MCF_PSC_PSCRFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRFWP */
-#define MCF_PSC_PSCRFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLRFP */
-#define MCF_PSC_PSCRLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCRLWFP */
-#define MCF_PSC_PSCRLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFDR */
-#define MCF_PSC_PSCTFDR_DATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFSR */
-#define MCF_PSC_PSCTFSR_EMT (0x1)
-#define MCF_PSC_PSCTFSR_ALARM (0x2)
-#define MCF_PSC_PSCTFSR_FU (0x4)
-#define MCF_PSC_PSCTFSR_FRMRDY (0x8)
-#define MCF_PSC_PSCTFSR_OF (0x10)
-#define MCF_PSC_PSCTFSR_UF (0x20)
-#define MCF_PSC_PSCTFSR_RXW (0x40)
-#define MCF_PSC_PSCTFSR_FAE (0x80)
-#define MCF_PSC_PSCTFSR_FRM(x) (((x)&0xF)<<0x8)
-#define MCF_PSC_PSCTFSR_FRM_BYTE0 (0x800)
-#define MCF_PSC_PSCTFSR_FRM_BYTE1 (0x400)
-#define MCF_PSC_PSCTFSR_FRM_BYTE2 (0x200)
-#define MCF_PSC_PSCTFSR_FRM_BYTE3 (0x100)
-#define MCF_PSC_PSCTFSR_TAG(x) (((x)&0x3)<<0xC)
-#define MCF_PSC_PSCTFSR_TXW (0x4000)
-#define MCF_PSC_PSCTFSR_IP (0x8000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFCR */
-#define MCF_PSC_PSCTFCR_CNTR(x) (((x)&0xFFFF)<<0)
-#define MCF_PSC_PSCTFCR_TXW_MSK (0x40000)
-#define MCF_PSC_PSCTFCR_OF_MSK (0x80000)
-#define MCF_PSC_PSCTFCR_UF_MSK (0x100000)
-#define MCF_PSC_PSCTFCR_RXW_MSK (0x200000)
-#define MCF_PSC_PSCTFCR_FAE_MSK (0x400000)
-#define MCF_PSC_PSCTFCR_IP_MSK (0x800000)
-#define MCF_PSC_PSCTFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_PSC_PSCTFCR_FRMEN (0x8000000)
-#define MCF_PSC_PSCTFCR_TIMER (0x10000000)
-#define MCF_PSC_PSCTFCR_WFR (0x20000000)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFAR */
-#define MCF_PSC_PSCTFAR_ALARM(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFRP */
-#define MCF_PSC_PSCTFRP_READ(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTFWP */
-#define MCF_PSC_PSCTFWP_WRITE(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLRFP */
-#define MCF_PSC_PSCTLRFP_LRFP(x) (((x)&0x1FF)<<0)
-
-/* Bit definitions and macros for MCF_PSC_PSCTLWFP */
-#define MCF_PSC_PSCTLWFP_LWFP(x) (((x)&0x1FF)<<0)
-
-
-#endif /* __MCF5475_PSC_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_SDRAMC.h b/BaS_gcc/tos/vmem_test/include/MCF5475_SDRAMC.h
deleted file mode 100644
index 6cdbd68..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_SDRAMC.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SDRAMC_H__
-#define __MCF5475_SDRAMC_H__
-
-
-/*********************************************************************
-*
-* Synchronous DRAM Controller (SDRAMC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SDRAMC_SDRAMDS (*(volatile uint32_t*)(&_MBAR[0x4]))
-#define MCF_SDRAMC_CS0CFG (*(volatile uint32_t*)(&_MBAR[0x20]))
-#define MCF_SDRAMC_CS1CFG (*(volatile uint32_t*)(&_MBAR[0x24]))
-#define MCF_SDRAMC_CS2CFG (*(volatile uint32_t*)(&_MBAR[0x28]))
-#define MCF_SDRAMC_CS3CFG (*(volatile uint32_t*)(&_MBAR[0x2C]))
-#define MCF_SDRAMC_SDMR (*(volatile uint32_t*)(&_MBAR[0x100]))
-#define MCF_SDRAMC_SDCR (*(volatile uint32_t*)(&_MBAR[0x104]))
-#define MCF_SDRAMC_SDCFG1 (*(volatile uint32_t*)(&_MBAR[0x108]))
-#define MCF_SDRAMC_SDCFG2 (*(volatile uint32_t*)(&_MBAR[0x10C]))
-#define MCF_SDRAMC_CSCFG(x) (*(volatile uint32_t*)(&_MBAR[0x20 + ((x)*0x4)]))
-
-
-/* Bit definitions and macros for MCF_SDRAMC_SDRAMDS */
-#define MCF_SDRAMC_SDRAMDS_SB_D(x) (((x)&0x3)<<0)
-#define MCF_SDRAMC_SDRAMDS_SB_S(x) (((x)&0x3)<<0x2)
-#define MCF_SDRAMC_SDRAMDS_SB_A(x) (((x)&0x3)<<0x4)
-#define MCF_SDRAMC_SDRAMDS_SB_C(x) (((x)&0x3)<<0x6)
-#define MCF_SDRAMC_SDRAMDS_SB_E(x) (((x)&0x3)<<0x8)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_24MA (0)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_16MA (0x1)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_8MA (0x2)
-#define MCF_SDRAMC_SDRAMDS_DRIVE_NONE (0x3)
-
-/* Bit definitions and macros for MCF_SDRAMC_CSCFG */
-#define MCF_SDRAMC_CSCFG_CSSZ(x) (((x)&0x1F)<<0)
-#define MCF_SDRAMC_CSCFG_CSSZ_DISABLED (0)
-#define MCF_SDRAMC_CSCFG_CSSZ_1MBYTE (0x13)
-#define MCF_SDRAMC_CSCFG_CSSZ_2MBYTE (0x14)
-#define MCF_SDRAMC_CSCFG_CSSZ_4MBYTE (0x15)
-#define MCF_SDRAMC_CSCFG_CSSZ_8MBYTE (0x16)
-#define MCF_SDRAMC_CSCFG_CSSZ_16MBYTE (0x17)
-#define MCF_SDRAMC_CSCFG_CSSZ_32MBYTE (0x18)
-#define MCF_SDRAMC_CSCFG_CSSZ_64MBYTE (0x19)
-#define MCF_SDRAMC_CSCFG_CSSZ_128MBYTE (0x1A)
-#define MCF_SDRAMC_CSCFG_CSSZ_256MBYTE (0x1B)
-#define MCF_SDRAMC_CSCFG_CSSZ_512MBYTE (0x1C)
-#define MCF_SDRAMC_CSCFG_CSSZ_1GBYTE (0x1D)
-#define MCF_SDRAMC_CSCFG_CSSZ_2GBYTE (0x1E)
-#define MCF_SDRAMC_CSCFG_CSSZ_4GBYTE (0x1F)
-#define MCF_SDRAMC_CSCFG_CSBA(x) (((x)&0xFFF)<<0x14)
-#define MCF_SDRAMC_CSCFG_BA(x) ((x)&0xFFF00000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDMR */
-#define MCF_SDRAMC_SDMR_CMD (0x10000)
-#define MCF_SDRAMC_SDMR_AD(x) (((x)&0xFFF)<<0x12)
-#define MCF_SDRAMC_SDMR_BNKAD(x) (((x)&0x3)<<0x1E)
-#define MCF_SDRAMC_SDMR_BK_LMR (0)
-#define MCF_SDRAMC_SDMR_BK_LEMR (0x40000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCR */
-#define MCF_SDRAMC_SDCR_IPALL (0x2)
-#define MCF_SDRAMC_SDCR_IREF (0x4)
-#define MCF_SDRAMC_SDCR_BUFF (0x10)
-#define MCF_SDRAMC_SDCR_DQS_OE(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCR_RCNT(x) (((x)&0x3F)<<0x10)
-#define MCF_SDRAMC_SDCR_DRIVE (0x400000)
-#define MCF_SDRAMC_SDCR_AP (0x800000)
-#define MCF_SDRAMC_SDCR_MUX(x) (((x)&0x3)<<0x18)
-#define MCF_SDRAMC_SDCR_REF (0x10000000)
-#define MCF_SDRAMC_SDCR_DDR (0x20000000)
-#define MCF_SDRAMC_SDCR_CKE (0x40000000)
-#define MCF_SDRAMC_SDCR_MODE_EN (0x80000000)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG1 */
-#define MCF_SDRAMC_SDCFG1_WTLAT(x) (((x)&0x7)<<0x4)
-#define MCF_SDRAMC_SDCFG1_REF2ACT(x) (((x)&0xF)<<0x8)
-#define MCF_SDRAMC_SDCFG1_PRE2ACT(x) (((x)&0x7)<<0xC)
-#define MCF_SDRAMC_SDCFG1_ACT2RW(x) (((x)&0x7)<<0x10)
-#define MCF_SDRAMC_SDCFG1_RDLAT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG1_SWT2RD(x) (((x)&0x7)<<0x18)
-#define MCF_SDRAMC_SDCFG1_SRD2RW(x) (((x)&0xF)<<0x1C)
-
-/* Bit definitions and macros for MCF_SDRAMC_SDCFG2 */
-#define MCF_SDRAMC_SDCFG2_BL(x) (((x)&0xF)<<0x10)
-#define MCF_SDRAMC_SDCFG2_BRD2WT(x) (((x)&0xF)<<0x14)
-#define MCF_SDRAMC_SDCFG2_BWT2RW(x) (((x)&0xF)<<0x18)
-#define MCF_SDRAMC_SDCFG2_BRD2PRE(x) (((x)&0xF)<<0x1C)
-
-
-#endif /* __MCF5475_SDRAMC_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_SEC.h b/BaS_gcc/tos/vmem_test/include/MCF5475_SEC.h
deleted file mode 100644
index 8deff0b..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_SEC.h
+++ /dev/null
@@ -1,398 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SEC_H__
-#define __MCF5475_SEC_H__
-
-
-/*********************************************************************
-*
-* Integrated Security Engine (SEC)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SEC_EUACRH (*(volatile uint32_t*)(&_MBAR[0x21000]))
-#define MCF_SEC_EUACRL (*(volatile uint32_t*)(&_MBAR[0x21004]))
-#define MCF_SEC_SIMRH (*(volatile uint32_t*)(&_MBAR[0x21008]))
-#define MCF_SEC_SIMRL (*(volatile uint32_t*)(&_MBAR[0x2100C]))
-#define MCF_SEC_SISRH (*(volatile uint32_t*)(&_MBAR[0x21010]))
-#define MCF_SEC_SISRL (*(volatile uint32_t*)(&_MBAR[0x21014]))
-#define MCF_SEC_SICRH (*(volatile uint32_t*)(&_MBAR[0x21018]))
-#define MCF_SEC_SICRL (*(volatile uint32_t*)(&_MBAR[0x2101C]))
-#define MCF_SEC_SIDR (*(volatile uint32_t*)(&_MBAR[0x21020]))
-#define MCF_SEC_EUASRH (*(volatile uint32_t*)(&_MBAR[0x21028]))
-#define MCF_SEC_EUASRL (*(volatile uint32_t*)(&_MBAR[0x2102C]))
-#define MCF_SEC_SMCR (*(volatile uint32_t*)(&_MBAR[0x21030]))
-#define MCF_SEC_MEAR (*(volatile uint32_t*)(&_MBAR[0x21038]))
-#define MCF_SEC_CCCR0 (*(volatile uint32_t*)(&_MBAR[0x2200C]))
-#define MCF_SEC_CCPSRH0 (*(volatile uint32_t*)(&_MBAR[0x22010]))
-#define MCF_SEC_CCPSRL0 (*(volatile uint32_t*)(&_MBAR[0x22014]))
-#define MCF_SEC_CDPR0 (*(volatile uint32_t*)(&_MBAR[0x22044]))
-#define MCF_SEC_FR0 (*(volatile uint32_t*)(&_MBAR[0x2204C]))
-#define MCF_SEC_CCCR1 (*(volatile uint32_t*)(&_MBAR[0x2300C]))
-#define MCF_SEC_CCPSRH1 (*(volatile uint32_t*)(&_MBAR[0x23010]))
-#define MCF_SEC_CCPSRL1 (*(volatile uint32_t*)(&_MBAR[0x23014]))
-#define MCF_SEC_CDPR1 (*(volatile uint32_t*)(&_MBAR[0x23044]))
-#define MCF_SEC_FR1 (*(volatile uint32_t*)(&_MBAR[0x2304C]))
-#define MCF_SEC_AFRCR (*(volatile uint32_t*)(&_MBAR[0x28018]))
-#define MCF_SEC_AFSR (*(volatile uint32_t*)(&_MBAR[0x28028]))
-#define MCF_SEC_AFISR (*(volatile uint32_t*)(&_MBAR[0x28030]))
-#define MCF_SEC_AFIMR (*(volatile uint32_t*)(&_MBAR[0x28038]))
-#define MCF_SEC_DRCR (*(volatile uint32_t*)(&_MBAR[0x2A018]))
-#define MCF_SEC_DSR (*(volatile uint32_t*)(&_MBAR[0x2A028]))
-#define MCF_SEC_DISR (*(volatile uint32_t*)(&_MBAR[0x2A030]))
-#define MCF_SEC_DIMR (*(volatile uint32_t*)(&_MBAR[0x2A038]))
-#define MCF_SEC_MDRCR (*(volatile uint32_t*)(&_MBAR[0x2C018]))
-#define MCF_SEC_MDSR (*(volatile uint32_t*)(&_MBAR[0x2C028]))
-#define MCF_SEC_MDISR (*(volatile uint32_t*)(&_MBAR[0x2C030]))
-#define MCF_SEC_MDIMR (*(volatile uint32_t*)(&_MBAR[0x2C038]))
-#define MCF_SEC_RNGRCR (*(volatile uint32_t*)(&_MBAR[0x2E018]))
-#define MCF_SEC_RNGSR (*(volatile uint32_t*)(&_MBAR[0x2E028]))
-#define MCF_SEC_RNGISR (*(volatile uint32_t*)(&_MBAR[0x2E030]))
-#define MCF_SEC_RNGIMR (*(volatile uint32_t*)(&_MBAR[0x2E038]))
-#define MCF_SEC_AESRCR (*(volatile uint32_t*)(&_MBAR[0x32018]))
-#define MCF_SEC_AESSR (*(volatile uint32_t*)(&_MBAR[0x32028]))
-#define MCF_SEC_AESISR (*(volatile uint32_t*)(&_MBAR[0x32030]))
-#define MCF_SEC_AESIMR (*(volatile uint32_t*)(&_MBAR[0x32038]))
-#define MCF_SEC_CCCRn(x) (*(volatile uint32_t*)(&_MBAR[0x2200C + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRHn(x) (*(volatile uint32_t*)(&_MBAR[0x22010 + ((x)*0x1000)]))
-#define MCF_SEC_CCPSRLn(x) (*(volatile uint32_t*)(&_MBAR[0x22014 + ((x)*0x1000)]))
-#define MCF_SEC_CDPRn(x) (*(volatile uint32_t*)(&_MBAR[0x22044 + ((x)*0x1000)]))
-#define MCF_SEC_FRn(x) (*(volatile uint32_t*)(&_MBAR[0x2204C + ((x)*0x1000)]))
-
-
-/* Bit definitions and macros for MCF_SEC_EUACRH */
-#define MCF_SEC_EUACRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUACRH_AFFEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_AFFEU_CHA0 (0x1)
-#define MCF_SEC_EUACRH_AFFEU_CHA1 (0x2)
-#define MCF_SEC_EUACRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUACRH_MDEU_NOASSIGN (0)
-#define MCF_SEC_EUACRH_MDEU_CHA0 (0x100)
-#define MCF_SEC_EUACRH_MDEU_CHA1 (0x200)
-#define MCF_SEC_EUACRH_RNG(x) (((x)&0xF)<<0x18)
-#define MCF_SEC_EUACRH_RNG_NOASSIGN (0)
-#define MCF_SEC_EUACRH_RNG_CHA0 (0x1000000)
-#define MCF_SEC_EUACRH_RNG_CHA1 (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_EUACRL */
-#define MCF_SEC_EUACRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUACRL_AESU_NOASSIGN (0)
-#define MCF_SEC_EUACRL_AESU_CHA0 (0x10000)
-#define MCF_SEC_EUACRL_AESU_CHA1 (0x20000)
-#define MCF_SEC_EUACRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SIMRH */
-#define MCF_SEC_SIMRH_AERR (0x8000000)
-#define MCF_SEC_SIMRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SIMRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SIMRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SIMRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SIMRL */
-#define MCF_SEC_SIMRL_TEA (0x40)
-#define MCF_SEC_SIMRL_DEU_DN (0x100)
-#define MCF_SEC_SIMRL_DEU_ERR (0x200)
-#define MCF_SEC_SIMRL_AESU_DN (0x1000)
-#define MCF_SEC_SIMRL_AESU_ERR (0x2000)
-#define MCF_SEC_SIMRL_MDEU_DN (0x10000)
-#define MCF_SEC_SIMRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SIMRL_AFEU_DN (0x100000)
-#define MCF_SEC_SIMRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SIMRL_RNG_DN (0x1000000)
-#define MCF_SEC_SIMRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRH */
-#define MCF_SEC_SISRH_AERR (0x8000000)
-#define MCF_SEC_SISRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SISRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SISRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SISRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SISRL */
-#define MCF_SEC_SISRL_TEA (0x40)
-#define MCF_SEC_SISRL_DEU_DN (0x100)
-#define MCF_SEC_SISRL_DEU_ERR (0x200)
-#define MCF_SEC_SISRL_AESU_DN (0x1000)
-#define MCF_SEC_SISRL_AESU_ERR (0x2000)
-#define MCF_SEC_SISRL_MDEU_DN (0x10000)
-#define MCF_SEC_SISRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SISRL_AFEU_DN (0x100000)
-#define MCF_SEC_SISRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SISRL_RNG_DN (0x1000000)
-#define MCF_SEC_SISRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRH */
-#define MCF_SEC_SICRH_AERR (0x8000000)
-#define MCF_SEC_SICRH_CHA_0_DN (0x10000000)
-#define MCF_SEC_SICRH_CHA_0_ERR (0x20000000)
-#define MCF_SEC_SICRH_CHA_1_DN (0x40000000)
-#define MCF_SEC_SICRH_CHA_1_ERR (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_SICRL */
-#define MCF_SEC_SICRL_TEA (0x40)
-#define MCF_SEC_SICRL_DEU_DN (0x100)
-#define MCF_SEC_SICRL_DEU_ERR (0x200)
-#define MCF_SEC_SICRL_AESU_DN (0x1000)
-#define MCF_SEC_SICRL_AESU_ERR (0x2000)
-#define MCF_SEC_SICRL_MDEU_DN (0x10000)
-#define MCF_SEC_SICRL_MDEU_ERR (0x20000)
-#define MCF_SEC_SICRL_AFEU_DN (0x100000)
-#define MCF_SEC_SICRL_AFEU_ERR (0x200000)
-#define MCF_SEC_SICRL_RNG_DN (0x1000000)
-#define MCF_SEC_SICRL_RNG_ERR (0x2000000)
-
-/* Bit definitions and macros for MCF_SEC_SIDR */
-#define MCF_SEC_SIDR_VERSION(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_EUASRH */
-#define MCF_SEC_EUASRH_AFEU(x) (((x)&0xF)<<0)
-#define MCF_SEC_EUASRH_MDEU(x) (((x)&0xF)<<0x8)
-#define MCF_SEC_EUASRH_RNG(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_EUASRL */
-#define MCF_SEC_EUASRL_AESU(x) (((x)&0xF)<<0x10)
-#define MCF_SEC_EUASRL_DEU(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SEC_SMCR */
-#define MCF_SEC_SMCR_CURR_CHAN(x) (((x)&0xF)<<0x4)
-#define MCF_SEC_SMCR_CURR_CHAN_1 (0x10)
-#define MCF_SEC_SMCR_CURR_CHAN_2 (0x20)
-#define MCF_SEC_SMCR_SWR (0x1000000)
-
-/* Bit definitions and macros for MCF_SEC_MEAR */
-#define MCF_SEC_MEAR_ADDRESS(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCCRn */
-#define MCF_SEC_CCCRn_RST (0x1)
-#define MCF_SEC_CCCRn_CDIE (0x2)
-#define MCF_SEC_CCCRn_NT (0x4)
-#define MCF_SEC_CCCRn_NE (0x8)
-#define MCF_SEC_CCCRn_WE (0x10)
-#define MCF_SEC_CCCRn_BURST_SIZE(x) (((x)&0x7)<<0x8)
-#define MCF_SEC_CCCRn_BURST_SIZE_2 (0)
-#define MCF_SEC_CCCRn_BURST_SIZE_8 (0x100)
-#define MCF_SEC_CCCRn_BURST_SIZE_16 (0x200)
-#define MCF_SEC_CCCRn_BURST_SIZE_24 (0x300)
-#define MCF_SEC_CCCRn_BURST_SIZE_32 (0x400)
-#define MCF_SEC_CCCRn_BURST_SIZE_40 (0x500)
-#define MCF_SEC_CCCRn_BURST_SIZE_48 (0x600)
-#define MCF_SEC_CCCRn_BURST_SIZE_56 (0x700)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRHn */
-#define MCF_SEC_CCPSRHn_STATE(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_CCPSRLn */
-#define MCF_SEC_CCPSRLn_PAIR_PTR(x) (((x)&0xFF)<<0)
-#define MCF_SEC_CCPSRLn_EUERR (0x100)
-#define MCF_SEC_CCPSRLn_SERR (0x200)
-#define MCF_SEC_CCPSRLn_DERR (0x400)
-#define MCF_SEC_CCPSRLn_PERR (0x1000)
-#define MCF_SEC_CCPSRLn_TEA (0x2000)
-#define MCF_SEC_CCPSRLn_SD (0x10000)
-#define MCF_SEC_CCPSRLn_PD (0x20000)
-#define MCF_SEC_CCPSRLn_SRD (0x40000)
-#define MCF_SEC_CCPSRLn_PRD (0x80000)
-#define MCF_SEC_CCPSRLn_SG (0x100000)
-#define MCF_SEC_CCPSRLn_PG (0x200000)
-#define MCF_SEC_CCPSRLn_SR (0x400000)
-#define MCF_SEC_CCPSRLn_PR (0x800000)
-#define MCF_SEC_CCPSRLn_MO (0x1000000)
-#define MCF_SEC_CCPSRLn_MI (0x2000000)
-#define MCF_SEC_CCPSRLn_STAT (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_CDPRn */
-#define MCF_SEC_CDPRn_CDP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_FRn */
-#define MCF_SEC_FRn_FETCH_ADDR(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SEC_AFRCR */
-#define MCF_SEC_AFRCR_SR (0x1000000)
-#define MCF_SEC_AFRCR_MI (0x2000000)
-#define MCF_SEC_AFRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AFSR */
-#define MCF_SEC_AFSR_RD (0x1000000)
-#define MCF_SEC_AFSR_ID (0x2000000)
-#define MCF_SEC_AFSR_IE (0x4000000)
-#define MCF_SEC_AFSR_OFR (0x8000000)
-#define MCF_SEC_AFSR_IFW (0x10000000)
-#define MCF_SEC_AFSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AFISR */
-#define MCF_SEC_AFISR_DSE (0x10000)
-#define MCF_SEC_AFISR_KSE (0x20000)
-#define MCF_SEC_AFISR_CE (0x40000)
-#define MCF_SEC_AFISR_ERE (0x80000)
-#define MCF_SEC_AFISR_IE (0x100000)
-#define MCF_SEC_AFISR_OFU (0x2000000)
-#define MCF_SEC_AFISR_IFO (0x4000000)
-#define MCF_SEC_AFISR_IFE (0x10000000)
-#define MCF_SEC_AFISR_OFE (0x20000000)
-#define MCF_SEC_AFISR_AE (0x40000000)
-#define MCF_SEC_AFISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AFIMR */
-#define MCF_SEC_AFIMR_DSE (0x10000)
-#define MCF_SEC_AFIMR_KSE (0x20000)
-#define MCF_SEC_AFIMR_CE (0x40000)
-#define MCF_SEC_AFIMR_ERE (0x80000)
-#define MCF_SEC_AFIMR_IE (0x100000)
-#define MCF_SEC_AFIMR_OFU (0x2000000)
-#define MCF_SEC_AFIMR_IFO (0x4000000)
-#define MCF_SEC_AFIMR_IFE (0x10000000)
-#define MCF_SEC_AFIMR_OFE (0x20000000)
-#define MCF_SEC_AFIMR_AE (0x40000000)
-#define MCF_SEC_AFIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DRCR */
-#define MCF_SEC_DRCR_SR (0x1000000)
-#define MCF_SEC_DRCR_MI (0x2000000)
-#define MCF_SEC_DRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_DSR */
-#define MCF_SEC_DSR_RD (0x1000000)
-#define MCF_SEC_DSR_ID (0x2000000)
-#define MCF_SEC_DSR_IE (0x4000000)
-#define MCF_SEC_DSR_OFR (0x8000000)
-#define MCF_SEC_DSR_IFW (0x10000000)
-#define MCF_SEC_DSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_DISR */
-#define MCF_SEC_DISR_DSE (0x10000)
-#define MCF_SEC_DISR_KSE (0x20000)
-#define MCF_SEC_DISR_CE (0x40000)
-#define MCF_SEC_DISR_ERE (0x80000)
-#define MCF_SEC_DISR_IE (0x100000)
-#define MCF_SEC_DISR_KPE (0x200000)
-#define MCF_SEC_DISR_OFU (0x2000000)
-#define MCF_SEC_DISR_IFO (0x4000000)
-#define MCF_SEC_DISR_IFE (0x10000000)
-#define MCF_SEC_DISR_OFE (0x20000000)
-#define MCF_SEC_DISR_AE (0x40000000)
-#define MCF_SEC_DISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_DIMR */
-#define MCF_SEC_DIMR_DSE (0x10000)
-#define MCF_SEC_DIMR_KSE (0x20000)
-#define MCF_SEC_DIMR_CE (0x40000)
-#define MCF_SEC_DIMR_ERE (0x80000)
-#define MCF_SEC_DIMR_IE (0x100000)
-#define MCF_SEC_DIMR_KPE (0x200000)
-#define MCF_SEC_DIMR_OFU (0x2000000)
-#define MCF_SEC_DIMR_IFO (0x4000000)
-#define MCF_SEC_DIMR_IFE (0x10000000)
-#define MCF_SEC_DIMR_OFE (0x20000000)
-#define MCF_SEC_DIMR_AE (0x40000000)
-#define MCF_SEC_DIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDRCR */
-#define MCF_SEC_MDRCR_SR (0x1000000)
-#define MCF_SEC_MDRCR_MI (0x2000000)
-#define MCF_SEC_MDRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_MDSR */
-#define MCF_SEC_MDSR_RD (0x1000000)
-#define MCF_SEC_MDSR_ID (0x2000000)
-#define MCF_SEC_MDSR_IE (0x4000000)
-#define MCF_SEC_MDSR_IFW (0x10000000)
-#define MCF_SEC_MDSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_MDISR */
-#define MCF_SEC_MDISR_DSE (0x10000)
-#define MCF_SEC_MDISR_KSE (0x20000)
-#define MCF_SEC_MDISR_CE (0x40000)
-#define MCF_SEC_MDISR_ERE (0x80000)
-#define MCF_SEC_MDISR_IE (0x100000)
-#define MCF_SEC_MDISR_IFO (0x4000000)
-#define MCF_SEC_MDISR_AE (0x40000000)
-#define MCF_SEC_MDISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_MDIMR */
-#define MCF_SEC_MDIMR_DSE (0x10000)
-#define MCF_SEC_MDIMR_KSE (0x20000)
-#define MCF_SEC_MDIMR_CE (0x40000)
-#define MCF_SEC_MDIMR_ERE (0x80000)
-#define MCF_SEC_MDIMR_IE (0x100000)
-#define MCF_SEC_MDIMR_IFO (0x4000000)
-#define MCF_SEC_MDIMR_AE (0x40000000)
-#define MCF_SEC_MDIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGRCR */
-#define MCF_SEC_RNGRCR_SR (0x1000000)
-#define MCF_SEC_RNGRCR_MI (0x2000000)
-#define MCF_SEC_RNGRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGSR */
-#define MCF_SEC_RNGSR_RD (0x1000000)
-#define MCF_SEC_RNGSR_IE (0x4000000)
-#define MCF_SEC_RNGSR_OFR (0x8000000)
-#define MCF_SEC_RNGSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGISR */
-#define MCF_SEC_RNGISR_IE (0x100000)
-#define MCF_SEC_RNGISR_OFU (0x2000000)
-#define MCF_SEC_RNGISR_AE (0x40000000)
-#define MCF_SEC_RNGISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_RNGIMR */
-#define MCF_SEC_RNGIMR_IE (0x100000)
-#define MCF_SEC_RNGIMR_OFU (0x2000000)
-#define MCF_SEC_RNGIMR_AE (0x40000000)
-#define MCF_SEC_RNGIMR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESRCR */
-#define MCF_SEC_AESRCR_SR (0x1000000)
-#define MCF_SEC_AESRCR_MI (0x2000000)
-#define MCF_SEC_AESRCR_RI (0x4000000)
-
-/* Bit definitions and macros for MCF_SEC_AESSR */
-#define MCF_SEC_AESSR_RD (0x1000000)
-#define MCF_SEC_AESSR_ID (0x2000000)
-#define MCF_SEC_AESSR_IE (0x4000000)
-#define MCF_SEC_AESSR_OFR (0x8000000)
-#define MCF_SEC_AESSR_IFW (0x10000000)
-#define MCF_SEC_AESSR_HALT (0x20000000)
-
-/* Bit definitions and macros for MCF_SEC_AESISR */
-#define MCF_SEC_AESISR_DSE (0x10000)
-#define MCF_SEC_AESISR_KSE (0x20000)
-#define MCF_SEC_AESISR_CE (0x40000)
-#define MCF_SEC_AESISR_ERE (0x80000)
-#define MCF_SEC_AESISR_IE (0x100000)
-#define MCF_SEC_AESISR_OFU (0x2000000)
-#define MCF_SEC_AESISR_IFO (0x4000000)
-#define MCF_SEC_AESISR_IFE (0x10000000)
-#define MCF_SEC_AESISR_OFE (0x20000000)
-#define MCF_SEC_AESISR_AE (0x40000000)
-#define MCF_SEC_AESISR_ME (0x80000000)
-
-/* Bit definitions and macros for MCF_SEC_AESIMR */
-#define MCF_SEC_AESIMR_DSE (0x10000)
-#define MCF_SEC_AESIMR_KSE (0x20000)
-#define MCF_SEC_AESIMR_CE (0x40000)
-#define MCF_SEC_AESIMR_ERE (0x80000)
-#define MCF_SEC_AESIMR_IE (0x100000)
-#define MCF_SEC_AESIMR_OFU (0x2000000)
-#define MCF_SEC_AESIMR_IFO (0x4000000)
-#define MCF_SEC_AESIMR_IFE (0x10000000)
-#define MCF_SEC_AESIMR_OFE (0x20000000)
-#define MCF_SEC_AESIMR_AE (0x40000000)
-#define MCF_SEC_AESIMR_ME (0x80000000)
-
-
-#endif /* __MCF5475_SEC_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_SIU.h b/BaS_gcc/tos/vmem_test/include/MCF5475_SIU.h
deleted file mode 100644
index efb2896..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_SIU.h
+++ /dev/null
@@ -1,67 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SIU_H__
-#define __MCF5475_SIU_H__
-
-
-/*********************************************************************
-*
-* System Integration Unit (SIU)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SIU_SBCR (*(volatile uint32_t*)(&_MBAR[0x10]))
-#define MCF_SIU_SECSACR (*(volatile uint32_t*)(&_MBAR[0x38]))
-#define MCF_SIU_RSR (*(volatile uint32_t*)(&_MBAR[0x44]))
-#define MCF_SIU_JTAGID (*(volatile uint32_t*)(&_MBAR[0x50]))
-
-
-/* Bit definitions and macros for MCF_SIU_SBCR */
-#define MCF_SIU_SBCR_PIN2DSPI (0x8000000)
-#define MCF_SIU_SBCR_DMA2CPU (0x10000000)
-#define MCF_SIU_SBCR_CPU2DMA (0x20000000)
-#define MCF_SIU_SBCR_PIN2DMA (0x40000000)
-#define MCF_SIU_SBCR_PIN2CPU (0x80000000)
-
-/* Bit definitions and macros for MCF_SIU_SECSACR */
-#define MCF_SIU_SECSACR_SEQEN (0x1)
-
-/* Bit definitions and macros for MCF_SIU_RSR */
-#define MCF_SIU_RSR_RST (0x1)
-#define MCF_SIU_RSR_RSTWD (0x2)
-#define MCF_SIU_RSR_RSTJTG (0x8)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_JTAGID(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SIU_JTAGID */
-#define MCF_SIU_JTAGID_REV (0xF0000000)
-#define MCF_SIU_JTAGID_PROCESSOR (0x0FFFFFFF)
-#define MCF_SIU_JTAGID_MCF5485 (0x0800C01D)
-#define MCF_SIU_JTAGID_MCF5484 (0x0800D01D)
-#define MCF_SIU_JTAGID_MCF5483 (0x0800E01D)
-#define MCF_SIU_JTAGID_MCF5482 (0x0800F01D)
-#define MCF_SIU_JTAGID_MCF5481 (0x0801001D)
-#define MCF_SIU_JTAGID_MCF5480 (0x0801101D)
-#define MCF_SIU_JTAGID_MCF5475 (0x0801201D)
-#define MCF_SIU_JTAGID_MCF5474 (0x0801301D)
-#define MCF_SIU_JTAGID_MCF5473 (0x0801401D)
-#define MCF_SIU_JTAGID_MCF5472 (0x0801501D)
-#define MCF_SIU_JTAGID_MCF5471 (0x0801601D)
-#define MCF_SIU_JTAGID_MCF5470 (0x0801701D)
-
-#endif /* __MCF5475_SIU_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_SLT.h b/BaS_gcc/tos/vmem_test/include/MCF5475_SLT.h
deleted file mode 100644
index 20e8558..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_SLT.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SLT_H__
-#define __MCF5475_SLT_H__
-
-
-/*********************************************************************
-*
-* Slice Timers (SLT)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SLT0_STCNT (*(volatile uint32_t*)(&_MBAR[0x900]))
-#define MCF_SLT0_SCR (*(volatile uint32_t*)(&_MBAR[0x904]))
-#define MCF_SLT0_SCNT (*(volatile uint32_t*)(&_MBAR[0x908]))
-#define MCF_SLT0_SSR (*(volatile uint32_t*)(&_MBAR[0x90C]))
-
-#define MCF_SLT1_STCNT (*(volatile uint32_t*)(&_MBAR[0x910]))
-#define MCF_SLT1_SCR (*(volatile uint32_t*)(&_MBAR[0x914]))
-#define MCF_SLT1_SCNT (*(volatile uint32_t*)(&_MBAR[0x918]))
-#define MCF_SLT1_SSR (*(volatile uint32_t*)(&_MBAR[0x91C]))
-
-#define MCF_SLT_STCNT(x) (*(volatile uint32_t*)(&_MBAR[0x900 + ((x)*0x10)]))
-#define MCF_SLT_SCR(x) (*(volatile uint32_t*)(&_MBAR[0x904 + ((x)*0x10)]))
-#define MCF_SLT_SCNT(x) (*(volatile int32_t*)(&_MBAR[0x908 + ((x)*0x10)]))
-#define MCF_SLT_SSR(x) (*(volatile uint32_t*)(&_MBAR[0x90C + ((x)*0x10)]))
-
-
-/* Bit definitions and macros for MCF_SLT_STCNT */
-#define MCF_SLT_STCNT_TC(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SCR */
-#define MCF_SLT_SCR_TEN (0x1000000)
-#define MCF_SLT_SCR_IEN (0x2000000)
-#define MCF_SLT_SCR_RUN (0x4000000)
-
-/* Bit definitions and macros for MCF_SLT_SCNT */
-#define MCF_SLT_SCNT_CNT(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_SLT_SSR */
-#define MCF_SLT_SSR_ST (0x1000000)
-#define MCF_SLT_SSR_BE (0x2000000)
-
-
-#endif /* __MCF5475_SLT_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_SRAM.h b/BaS_gcc/tos/vmem_test/include/MCF5475_SRAM.h
deleted file mode 100644
index d111f13..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_SRAM.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_SRAM_H__
-#define __MCF5475_SRAM_H__
-
-
-/*********************************************************************
-*
-* System SRAM Module (SRAM)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_SRAM_SSCR (*(volatile uint32_t*)(&__MBAR[0x1FFC0]))
-#define MCF_SRAM_TCCR (*(volatile uint32_t*)(&__MBAR[0x1FFC4]))
-#define MCF_SRAM_TCCRDR (*(volatile uint32_t*)(&__MBAR[0x1FFC8]))
-#define MCF_SRAM_TCCRDW (*(volatile uint32_t*)(&__MBAR[0x1FFCC]))
-#define MCF_SRAM_TCCRSEC (*(volatile uint32_t*)(&__MBAR[0x1FFD0]))
-
-
-/* Bit definitions and macros for MCF_SRAM_SSCR */
-#define MCF_SRAM_SSCR_INLV (0x10000)
-
-/* Bit definitions and macros for MCF_SRAM_TCCR */
-#define MCF_SRAM_TCCR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDR */
-#define MCF_SRAM_TCCRDR_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDR_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDR_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDR_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRDW */
-#define MCF_SRAM_TCCRDW_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRDW_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRDW_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRDW_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-/* Bit definitions and macros for MCF_SRAM_TCCRSEC */
-#define MCF_SRAM_TCCRSEC_BANK0_TC(x) (((x)&0xF)<<0)
-#define MCF_SRAM_TCCRSEC_BANK1_TC(x) (((x)&0xF)<<0x8)
-#define MCF_SRAM_TCCRSEC_BANK2_TC(x) (((x)&0xF)<<0x10)
-#define MCF_SRAM_TCCRSEC_BANK3_TC(x) (((x)&0xF)<<0x18)
-
-
-#endif /* __MCF5475_SRAM_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_USB.h b/BaS_gcc/tos/vmem_test/include/MCF5475_USB.h
deleted file mode 100644
index c60273c..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_USB.h
+++ /dev/null
@@ -1,554 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_USB_H__
-#define __MCF5475_USB_H__
-
-
-/*********************************************************************
-*
-* Universal Serial Bus Interface (USB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_USB_USBAISR (*(volatile uint8_t *)(&__MBAR[0xB000]))
-#define MCF_USB_USBAIMR (*(volatile uint8_t *)(&__MBAR[0xB001]))
-#define MCF_USB_EPINFO (*(volatile uint8_t *)(&__MBAR[0xB003]))
-#define MCF_USB_CFGR (*(volatile uint8_t *)(&__MBAR[0xB004]))
-#define MCF_USB_CFGAR (*(volatile uint8_t *)(&__MBAR[0xB005]))
-#define MCF_USB_SPEEDR (*(volatile uint8_t *)(&__MBAR[0xB006]))
-#define MCF_USB_FRMNUMR (*(volatile uint16_t*)(&__MBAR[0xB00E]))
-#define MCF_USB_EPTNR (*(volatile uint16_t*)(&__MBAR[0xB010]))
-#define MCF_USB_IFUR (*(volatile uint16_t*)(&__MBAR[0xB014]))
-#define MCF_USB_IFR0 (*(volatile uint16_t*)(&__MBAR[0xB040]))
-#define MCF_USB_IFR1 (*(volatile uint16_t*)(&__MBAR[0xB042]))
-#define MCF_USB_IFR2 (*(volatile uint16_t*)(&__MBAR[0xB044]))
-#define MCF_USB_IFR3 (*(volatile uint16_t*)(&__MBAR[0xB046]))
-#define MCF_USB_IFR4 (*(volatile uint16_t*)(&__MBAR[0xB048]))
-#define MCF_USB_IFR5 (*(volatile uint16_t*)(&__MBAR[0xB04A]))
-#define MCF_USB_IFR6 (*(volatile uint16_t*)(&__MBAR[0xB04C]))
-#define MCF_USB_IFR7 (*(volatile uint16_t*)(&__MBAR[0xB04E]))
-#define MCF_USB_IFR8 (*(volatile uint16_t*)(&__MBAR[0xB050]))
-#define MCF_USB_IFR9 (*(volatile uint16_t*)(&__MBAR[0xB052]))
-#define MCF_USB_IFR10 (*(volatile uint16_t*)(&__MBAR[0xB054]))
-#define MCF_USB_IFR11 (*(volatile uint16_t*)(&__MBAR[0xB056]))
-#define MCF_USB_IFR12 (*(volatile uint16_t*)(&__MBAR[0xB058]))
-#define MCF_USB_IFR13 (*(volatile uint16_t*)(&__MBAR[0xB05A]))
-#define MCF_USB_IFR14 (*(volatile uint16_t*)(&__MBAR[0xB05C]))
-#define MCF_USB_IFR15 (*(volatile uint16_t*)(&__MBAR[0xB05E]))
-#define MCF_USB_IFR16 (*(volatile uint16_t*)(&__MBAR[0xB060]))
-#define MCF_USB_IFR17 (*(volatile uint16_t*)(&__MBAR[0xB062]))
-#define MCF_USB_IFR18 (*(volatile uint16_t*)(&__MBAR[0xB064]))
-#define MCF_USB_IFR19 (*(volatile uint16_t*)(&__MBAR[0xB066]))
-#define MCF_USB_IFR20 (*(volatile uint16_t*)(&__MBAR[0xB068]))
-#define MCF_USB_IFR21 (*(volatile uint16_t*)(&__MBAR[0xB06A]))
-#define MCF_USB_IFR22 (*(volatile uint16_t*)(&__MBAR[0xB06C]))
-#define MCF_USB_IFR23 (*(volatile uint16_t*)(&__MBAR[0xB06E]))
-#define MCF_USB_IFR24 (*(volatile uint16_t*)(&__MBAR[0xB070]))
-#define MCF_USB_IFR25 (*(volatile uint16_t*)(&__MBAR[0xB072]))
-#define MCF_USB_IFR26 (*(volatile uint16_t*)(&__MBAR[0xB074]))
-#define MCF_USB_IFR27 (*(volatile uint16_t*)(&__MBAR[0xB076]))
-#define MCF_USB_IFR28 (*(volatile uint16_t*)(&__MBAR[0xB078]))
-#define MCF_USB_IFR29 (*(volatile uint16_t*)(&__MBAR[0xB07A]))
-#define MCF_USB_IFR30 (*(volatile uint16_t*)(&__MBAR[0xB07C]))
-#define MCF_USB_IFR31 (*(volatile uint16_t*)(&__MBAR[0xB07E]))
-#define MCF_USB_PPCNT (*(volatile uint16_t*)(&__MBAR[0xB080]))
-#define MCF_USB_DPCNT (*(volatile uint16_t*)(&__MBAR[0xB082]))
-#define MCF_USB_CRCECNT (*(volatile uint16_t*)(&__MBAR[0xB084]))
-#define MCF_USB_BSECNT (*(volatile uint16_t*)(&__MBAR[0xB086]))
-#define MCF_USB_PIDECNT (*(volatile uint16_t*)(&__MBAR[0xB088]))
-#define MCF_USB_FRMECNT (*(volatile uint16_t*)(&__MBAR[0xB08A]))
-#define MCF_USB_TXPCNT (*(volatile uint16_t*)(&__MBAR[0xB08C]))
-#define MCF_USB_CNTOVR (*(volatile uint8_t *)(&__MBAR[0xB08E]))
-#define MCF_USB_EP0ACR (*(volatile uint8_t *)(&__MBAR[0xB101]))
-#define MCF_USB_EP0MPSR (*(volatile uint16_t*)(&__MBAR[0xB102]))
-#define MCF_USB_EP0IFR (*(volatile uint8_t *)(&__MBAR[0xB104]))
-#define MCF_USB_EP0SR (*(volatile uint8_t *)(&__MBAR[0xB105]))
-#define MCF_USB_BMRTR (*(volatile uint8_t *)(&__MBAR[0xB106]))
-#define MCF_USB_BRTR (*(volatile uint8_t *)(&__MBAR[0xB107]))
-#define MCF_USB_WVALUER (*(volatile uint16_t*)(&__MBAR[0xB108]))
-#define MCF_USB_WINDEXR (*(volatile uint16_t*)(&__MBAR[0xB10A]))
-#define MCF_USB_WLENGTHR (*(volatile uint16_t*)(&__MBAR[0xB10C]))
-#define MCF_USB_EP1OUTACR (*(volatile uint8_t *)(&__MBAR[0xB131]))
-#define MCF_USB_EP1OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB132]))
-#define MCF_USB_EP1OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB134]))
-#define MCF_USB_EP1OUTSR (*(volatile uint8_t *)(&__MBAR[0xB135]))
-#define MCF_USB_EP1OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB13E]))
-#define MCF_USB_EP1INACR (*(volatile uint8_t *)(&__MBAR[0xB149]))
-#define MCF_USB_EP1INMPSR (*(volatile uint16_t*)(&__MBAR[0xB14A]))
-#define MCF_USB_EP1INIFR (*(volatile uint8_t *)(&__MBAR[0xB14C]))
-#define MCF_USB_EP1INSR (*(volatile uint8_t *)(&__MBAR[0xB14D]))
-#define MCF_USB_EP1INSFR (*(volatile uint16_t*)(&__MBAR[0xB156]))
-#define MCF_USB_EP2OUTACR (*(volatile uint8_t *)(&__MBAR[0xB161]))
-#define MCF_USB_EP2OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB162]))
-#define MCF_USB_EP2OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB164]))
-#define MCF_USB_EP2OUTSR (*(volatile uint8_t *)(&__MBAR[0xB165]))
-#define MCF_USB_EP2OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB16E]))
-#define MCF_USB_EP2INACR (*(volatile uint8_t *)(&__MBAR[0xB179]))
-#define MCF_USB_EP2INMPSR (*(volatile uint16_t*)(&__MBAR[0xB17A]))
-#define MCF_USB_EP2INIFR (*(volatile uint8_t *)(&__MBAR[0xB17C]))
-#define MCF_USB_EP2INSR (*(volatile uint8_t *)(&__MBAR[0xB17D]))
-#define MCF_USB_EP2INSFR (*(volatile uint16_t*)(&__MBAR[0xB186]))
-#define MCF_USB_EP3OUTACR (*(volatile uint8_t *)(&__MBAR[0xB191]))
-#define MCF_USB_EP3OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB192]))
-#define MCF_USB_EP3OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB194]))
-#define MCF_USB_EP3OUTSR (*(volatile uint8_t *)(&__MBAR[0xB195]))
-#define MCF_USB_EP3OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB19E]))
-#define MCF_USB_EP3INACR (*(volatile uint8_t *)(&__MBAR[0xB1A9]))
-#define MCF_USB_EP3INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1AA]))
-#define MCF_USB_EP3INIFR (*(volatile uint8_t *)(&__MBAR[0xB1AC]))
-#define MCF_USB_EP3INSR (*(volatile uint8_t *)(&__MBAR[0xB1AD]))
-#define MCF_USB_EP3INSFR (*(volatile uint16_t*)(&__MBAR[0xB1B6]))
-#define MCF_USB_EP4OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1C1]))
-#define MCF_USB_EP4OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1C2]))
-#define MCF_USB_EP4OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1C4]))
-#define MCF_USB_EP4OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1C5]))
-#define MCF_USB_EP4OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1CE]))
-#define MCF_USB_EP4INACR (*(volatile uint8_t *)(&__MBAR[0xB1D9]))
-#define MCF_USB_EP4INMPSR (*(volatile uint16_t*)(&__MBAR[0xB1DA]))
-#define MCF_USB_EP4INIFR (*(volatile uint8_t *)(&__MBAR[0xB1DC]))
-#define MCF_USB_EP4INSR (*(volatile uint8_t *)(&__MBAR[0xB1DD]))
-#define MCF_USB_EP4INSFR (*(volatile uint16_t*)(&__MBAR[0xB1E6]))
-#define MCF_USB_EP5OUTACR (*(volatile uint8_t *)(&__MBAR[0xB1F1]))
-#define MCF_USB_EP5OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB1F2]))
-#define MCF_USB_EP5OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB1F4]))
-#define MCF_USB_EP5OUTSR (*(volatile uint8_t *)(&__MBAR[0xB1F5]))
-#define MCF_USB_EP5OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB1FE]))
-#define MCF_USB_EP5INACR (*(volatile uint8_t *)(&__MBAR[0xB209]))
-#define MCF_USB_EP5INMPSR (*(volatile uint16_t*)(&__MBAR[0xB20A]))
-#define MCF_USB_EP5INIFR (*(volatile uint8_t *)(&__MBAR[0xB20C]))
-#define MCF_USB_EP5INSR (*(volatile uint8_t *)(&__MBAR[0xB20D]))
-#define MCF_USB_EP5INSFR (*(volatile uint16_t*)(&__MBAR[0xB216]))
-#define MCF_USB_EP6OUTACR (*(volatile uint8_t *)(&__MBAR[0xB221]))
-#define MCF_USB_EP6OUTMPSR (*(volatile uint16_t*)(&__MBAR[0xB222]))
-#define MCF_USB_EP6OUTIFR (*(volatile uint8_t *)(&__MBAR[0xB224]))
-#define MCF_USB_EP6OUTSR (*(volatile uint8_t *)(&__MBAR[0xB225]))
-#define MCF_USB_EP6OUTSFR (*(volatile uint16_t*)(&__MBAR[0xB22E]))
-#define MCF_USB_EP6INACR (*(volatile uint8_t *)(&__MBAR[0xB239]))
-#define MCF_USB_EP6INMPSR (*(volatile uint16_t*)(&__MBAR[0xB23A]))
-#define MCF_USB_EP6INIFR (*(volatile uint8_t *)(&__MBAR[0xB23C]))
-#define MCF_USB_EP6INSR (*(volatile uint8_t *)(&__MBAR[0xB23D]))
-#define MCF_USB_EP6INSFR (*(volatile uint16_t*)(&__MBAR[0xB246]))
-#define MCF_USB_USBSR (*(volatile uint32_t*)(&__MBAR[0xB400]))
-#define MCF_USB_USBCR (*(volatile uint32_t*)(&__MBAR[0xB404]))
-#define MCF_USB_DRAMCR (*(volatile uint32_t*)(&__MBAR[0xB408]))
-#define MCF_USB_DRAMDR (*(volatile uint32_t*)(&__MBAR[0xB40C]))
-#define MCF_USB_USBISR (*(volatile uint32_t*)(&__MBAR[0xB410]))
-#define MCF_USB_USBIMR (*(volatile uint32_t*)(&__MBAR[0xB414]))
-#define MCF_USB_EP0STAT (*(volatile uint32_t*)(&__MBAR[0xB440]))
-#define MCF_USB_EP0ISR (*(volatile uint32_t*)(&__MBAR[0xB444]))
-#define MCF_USB_EP0IMR (*(volatile uint32_t*)(&__MBAR[0xB448]))
-#define MCF_USB_EP0FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB44C]))
-#define MCF_USB_EP0FDR (*(volatile uint32_t*)(&__MBAR[0xB450]))
-#define MCF_USB_EP0FSR (*(volatile uint32_t*)(&__MBAR[0xB454]))
-#define MCF_USB_EP0FCR (*(volatile uint32_t*)(&__MBAR[0xB458]))
-#define MCF_USB_EP0FAR (*(volatile uint32_t*)(&__MBAR[0xB45C]))
-#define MCF_USB_EP0FRP (*(volatile uint32_t*)(&__MBAR[0xB460]))
-#define MCF_USB_EP0FWP (*(volatile uint32_t*)(&__MBAR[0xB464]))
-#define MCF_USB_EP0LRFP (*(volatile uint32_t*)(&__MBAR[0xB468]))
-#define MCF_USB_EP0LWFP (*(volatile uint32_t*)(&__MBAR[0xB46C]))
-#define MCF_USB_EP1STAT (*(volatile uint32_t*)(&__MBAR[0xB470]))
-#define MCF_USB_EP1ISR (*(volatile uint32_t*)(&__MBAR[0xB474]))
-#define MCF_USB_EP1IMR (*(volatile uint32_t*)(&__MBAR[0xB478]))
-#define MCF_USB_EP1FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB47C]))
-#define MCF_USB_EP1FDR (*(volatile uint32_t*)(&__MBAR[0xB480]))
-#define MCF_USB_EP1FSR (*(volatile uint32_t*)(&__MBAR[0xB484]))
-#define MCF_USB_EP1FCR (*(volatile uint32_t*)(&__MBAR[0xB488]))
-#define MCF_USB_EP1FAR (*(volatile uint32_t*)(&__MBAR[0xB48C]))
-#define MCF_USB_EP1FRP (*(volatile uint32_t*)(&__MBAR[0xB490]))
-#define MCF_USB_EP1FWP (*(volatile uint32_t*)(&__MBAR[0xB494]))
-#define MCF_USB_EP1LRFP (*(volatile uint32_t*)(&__MBAR[0xB498]))
-#define MCF_USB_EP1LWFP (*(volatile uint32_t*)(&__MBAR[0xB49C]))
-#define MCF_USB_EP2STAT (*(volatile uint32_t*)(&__MBAR[0xB4A0]))
-#define MCF_USB_EP2ISR (*(volatile uint32_t*)(&__MBAR[0xB4A4]))
-#define MCF_USB_EP2IMR (*(volatile uint32_t*)(&__MBAR[0xB4A8]))
-#define MCF_USB_EP2FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4AC]))
-#define MCF_USB_EP2FDR (*(volatile uint32_t*)(&__MBAR[0xB4B0]))
-#define MCF_USB_EP2FSR (*(volatile uint32_t*)(&__MBAR[0xB4B4]))
-#define MCF_USB_EP2FCR (*(volatile uint32_t*)(&__MBAR[0xB4B8]))
-#define MCF_USB_EP2FAR (*(volatile uint32_t*)(&__MBAR[0xB4BC]))
-#define MCF_USB_EP2FRP (*(volatile uint32_t*)(&__MBAR[0xB4C0]))
-#define MCF_USB_EP2FWP (*(volatile uint32_t*)(&__MBAR[0xB4C4]))
-#define MCF_USB_EP2LRFP (*(volatile uint32_t*)(&__MBAR[0xB4C8]))
-#define MCF_USB_EP2LWFP (*(volatile uint32_t*)(&__MBAR[0xB4CC]))
-#define MCF_USB_EP3STAT (*(volatile uint32_t*)(&__MBAR[0xB4D0]))
-#define MCF_USB_EP3ISR (*(volatile uint32_t*)(&__MBAR[0xB4D4]))
-#define MCF_USB_EP3IMR (*(volatile uint32_t*)(&__MBAR[0xB4D8]))
-#define MCF_USB_EP3FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB4DC]))
-#define MCF_USB_EP3FDR (*(volatile uint32_t*)(&__MBAR[0xB4E0]))
-#define MCF_USB_EP3FSR (*(volatile uint32_t*)(&__MBAR[0xB4E4]))
-#define MCF_USB_EP3FCR (*(volatile uint32_t*)(&__MBAR[0xB4E8]))
-#define MCF_USB_EP3FAR (*(volatile uint32_t*)(&__MBAR[0xB4EC]))
-#define MCF_USB_EP3FRP (*(volatile uint32_t*)(&__MBAR[0xB4F0]))
-#define MCF_USB_EP3FWP (*(volatile uint32_t*)(&__MBAR[0xB4F4]))
-#define MCF_USB_EP3LRFP (*(volatile uint32_t*)(&__MBAR[0xB4F8]))
-#define MCF_USB_EP3LWFP (*(volatile uint32_t*)(&__MBAR[0xB4FC]))
-#define MCF_USB_EP4STAT (*(volatile uint32_t*)(&__MBAR[0xB500]))
-#define MCF_USB_EP4ISR (*(volatile uint32_t*)(&__MBAR[0xB504]))
-#define MCF_USB_EP4IMR (*(volatile uint32_t*)(&__MBAR[0xB508]))
-#define MCF_USB_EP4FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB50C]))
-#define MCF_USB_EP4FDR (*(volatile uint32_t*)(&__MBAR[0xB510]))
-#define MCF_USB_EP4FSR (*(volatile uint32_t*)(&__MBAR[0xB514]))
-#define MCF_USB_EP4FCR (*(volatile uint32_t*)(&__MBAR[0xB518]))
-#define MCF_USB_EP4FAR (*(volatile uint32_t*)(&__MBAR[0xB51C]))
-#define MCF_USB_EP4FRP (*(volatile uint32_t*)(&__MBAR[0xB520]))
-#define MCF_USB_EP4FWP (*(volatile uint32_t*)(&__MBAR[0xB524]))
-#define MCF_USB_EP4LRFP (*(volatile uint32_t*)(&__MBAR[0xB528]))
-#define MCF_USB_EP4LWFP (*(volatile uint32_t*)(&__MBAR[0xB52C]))
-#define MCF_USB_EP5STAT (*(volatile uint32_t*)(&__MBAR[0xB530]))
-#define MCF_USB_EP5ISR (*(volatile uint32_t*)(&__MBAR[0xB534]))
-#define MCF_USB_EP5IMR (*(volatile uint32_t*)(&__MBAR[0xB538]))
-#define MCF_USB_EP5FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB53C]))
-#define MCF_USB_EP5FDR (*(volatile uint32_t*)(&__MBAR[0xB540]))
-#define MCF_USB_EP5FSR (*(volatile uint32_t*)(&__MBAR[0xB544]))
-#define MCF_USB_EP5FCR (*(volatile uint32_t*)(&__MBAR[0xB548]))
-#define MCF_USB_EP5FAR (*(volatile uint32_t*)(&__MBAR[0xB54C]))
-#define MCF_USB_EP5FRP (*(volatile uint32_t*)(&__MBAR[0xB550]))
-#define MCF_USB_EP5FWP (*(volatile uint32_t*)(&__MBAR[0xB554]))
-#define MCF_USB_EP5LRFP (*(volatile uint32_t*)(&__MBAR[0xB558]))
-#define MCF_USB_EP5LWFP (*(volatile uint32_t*)(&__MBAR[0xB55C]))
-#define MCF_USB_EP6STAT (*(volatile uint32_t*)(&__MBAR[0xB560]))
-#define MCF_USB_EP6ISR (*(volatile uint32_t*)(&__MBAR[0xB564]))
-#define MCF_USB_EP6IMR (*(volatile uint32_t*)(&__MBAR[0xB568]))
-#define MCF_USB_EP6FRCFGR (*(volatile uint32_t*)(&__MBAR[0xB56C]))
-#define MCF_USB_EP6FDR (*(volatile uint32_t*)(&__MBAR[0xB570]))
-#define MCF_USB_EP6FSR (*(volatile uint32_t*)(&__MBAR[0xB574]))
-#define MCF_USB_EP6FCR (*(volatile uint32_t*)(&__MBAR[0xB578]))
-#define MCF_USB_EP6FAR (*(volatile uint32_t*)(&__MBAR[0xB57C]))
-#define MCF_USB_EP6FRP (*(volatile uint32_t*)(&__MBAR[0xB580]))
-#define MCF_USB_EP6FWP (*(volatile uint32_t*)(&__MBAR[0xB584]))
-#define MCF_USB_EP6LRFP (*(volatile uint32_t*)(&__MBAR[0xB588]))
-#define MCF_USB_EP6LWFP (*(volatile uint32_t*)(&__MBAR[0xB58C]))
-#define MCF_USB_IFR(x) (*(volatile uint16_t*)(&__MBAR[0xB040 + ((x)*0x2)]))
-#define MCF_USB_EPOUTACR(x) (*(volatile uint8_t *)(&__MBAR[0xB131 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB132 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB134 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSR(x) (*(volatile uint8_t *)(&__MBAR[0xB135 + ((x-1)*0x30)]))
-#define MCF_USB_EPOUTSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB13E + ((x-1)*0x30)]))
-#define MCF_USB_EPINACR(x) (*(volatile uint8_t *)(&__MBAR[0xB149 + ((x-1)*0x30)]))
-#define MCF_USB_EPINMPSR(x) (*(volatile uint16_t*)(&__MBAR[0xB14A + ((x-1)*0x30)]))
-#define MCF_USB_EPINIFR(x) (*(volatile uint8_t *)(&__MBAR[0xB14C + ((x-1)*0x30)]))
-#define MCF_USB_EPINSR(x) (*(volatile uint8_t *)(&__MBAR[0xB14D + ((x-1)*0x30)]))
-#define MCF_USB_EPINSFR(x) (*(volatile uint16_t*)(&__MBAR[0xB156 + ((x-1)*0x30)]))
-#define MCF_USB_EPSTAT(x) (*(volatile uint32_t*)(&__MBAR[0xB440 + ((x)*0x30)]))
-#define MCF_USB_EPISR(x) (*(volatile uint32_t*)(&__MBAR[0xB444 + ((x)*0x30)]))
-#define MCF_USB_EPIMR(x) (*(volatile uint32_t*)(&__MBAR[0xB448 + ((x)*0x30)]))
-#define MCF_USB_EPFRCFGR(x) (*(volatile uint32_t*)(&__MBAR[0xB44C + ((x)*0x30)]))
-#define MCF_USB_EPFDR(x) (*(volatile uint32_t*)(&__MBAR[0xB450 + ((x)*0x30)]))
-#define MCF_USB_EPFSR(x) (*(volatile uint32_t*)(&__MBAR[0xB454 + ((x)*0x30)]))
-#define MCF_USB_EPFCR(x) (*(volatile uint32_t*)(&__MBAR[0xB458 + ((x)*0x30)]))
-#define MCF_USB_EPFAR(x) (*(volatile uint32_t*)(&__MBAR[0xB45C + ((x)*0x30)]))
-#define MCF_USB_EPFRP(x) (*(volatile uint32_t*)(&__MBAR[0xB460 + ((x)*0x30)]))
-#define MCF_USB_EPFWP(x) (*(volatile uint32_t*)(&__MBAR[0xB464 + ((x)*0x30)]))
-#define MCF_USB_EPLRFP(x) (*(volatile uint32_t*)(&__MBAR[0xB468 + ((x)*0x30)]))
-#define MCF_USB_EPLWFP(x) (*(volatile uint32_t*)(&__MBAR[0xB46C + ((x)*0x30)]))
-
-
-/* Bit definitions and macros for MCF_USB_USBAISR */
-#define MCF_USB_USBAISR_SETUP (0x1)
-#define MCF_USB_USBAISR_IN (0x2)
-#define MCF_USB_USBAISR_OUT (0x4)
-#define MCF_USB_USBAISR_EPHALT (0x8)
-#define MCF_USB_USBAISR_TRANSERR (0x10)
-#define MCF_USB_USBAISR_ACK (0x20)
-#define MCF_USB_USBAISR_CTROVFL (0x40)
-#define MCF_USB_USBAISR_EPSTALL (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBAIMR */
-#define MCF_USB_USBAIMR_SETUPEN (0x1)
-#define MCF_USB_USBAIMR_INEN (0x2)
-#define MCF_USB_USBAIMR_OUTEN (0x4)
-#define MCF_USB_USBAIMR_EPHALTEN (0x8)
-#define MCF_USB_USBAIMR_TRANSERREN (0x10)
-#define MCF_USB_USBAIMR_ACKEN (0x20)
-#define MCF_USB_USBAIMR_CTROVFLEN (0x40)
-#define MCF_USB_USBAIMR_EPSTALLEN (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINFO */
-#define MCF_USB_EPINFO_EPDIR (0x1)
-#define MCF_USB_EPINFO_EPNUM(x) (((x)&0x7)<<0x1)
-
-/* Bit definitions and macros for MCF_USB_CFGR */
-#define MCF_USB_CFGR_Configuration_Value(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CFGAR */
-#define MCF_USB_CFGAR_RESERVED (0xA0)
-#define MCF_USB_CFGAR_RMTWKEUP (0xE0)
-
-/* Bit definitions and macros for MCF_USB_SPEEDR */
-#define MCF_USB_SPEEDR_SPEED(x) (((x)&0x3)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMNUMR */
-#define MCF_USB_FRMNUMR_FRMNUM(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPTNR */
-#define MCF_USB_EPTNR_EP1T(x) (((x)&0x3)<<0)
-#define MCF_USB_EPTNR_EP2T(x) (((x)&0x3)<<0x2)
-#define MCF_USB_EPTNR_EP3T(x) (((x)&0x3)<<0x4)
-#define MCF_USB_EPTNR_EP4T(x) (((x)&0x3)<<0x6)
-#define MCF_USB_EPTNR_EP5T(x) (((x)&0x3)<<0x8)
-#define MCF_USB_EPTNR_EP6T(x) (((x)&0x3)<<0xA)
-#define MCF_USB_EPTNR_EPnT1 (0)
-#define MCF_USB_EPTNR_EPnT2 (0x1)
-#define MCF_USB_EPTNR_EPnT3 (0x2)
-
-/* Bit definitions and macros for MCF_USB_IFUR */
-#define MCF_USB_IFUR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFUR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_IFR */
-#define MCF_USB_IFR_ALTSET(x) (((x)&0xFF)<<0)
-#define MCF_USB_IFR_IFNUM(x) (((x)&0xFF)<<0x8)
-
-/* Bit definitions and macros for MCF_USB_PPCNT */
-#define MCF_USB_PPCNT_PPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_DPCNT */
-#define MCF_USB_DPCNT_DPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CRCECNT */
-#define MCF_USB_CRCECNT_CRCECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_BSECNT */
-#define MCF_USB_BSECNT_BSECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_PIDECNT */
-#define MCF_USB_PIDECNT_PIDECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_FRMECNT */
-#define MCF_USB_FRMECNT_FRMECNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_TXPCNT */
-#define MCF_USB_TXPCNT_TXPCNT(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_CNTOVR */
-#define MCF_USB_CNTOVR_PPCNT (0x1)
-#define MCF_USB_CNTOVR_DPCNT (0x2)
-#define MCF_USB_CNTOVR_CRCECNT (0x4)
-#define MCF_USB_CNTOVR_BSECNT (0x8)
-#define MCF_USB_CNTOVR_PIDECNT (0x10)
-#define MCF_USB_CNTOVR_FRMECNT (0x20)
-#define MCF_USB_CNTOVR_TXPCNT (0x40)
-
-/* Bit definitions and macros for MCF_USB_EP0ACR */
-#define MCF_USB_EP0ACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EP0ACR_TTYPE_CTRL (0)
-#define MCF_USB_EP0ACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EP0ACR_TTYPE_BULK (0x2)
-#define MCF_USB_EP0ACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EP0MPSR */
-#define MCF_USB_EP0MPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EP0MPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EP0IFR */
-#define MCF_USB_EP0IFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EP0SR */
-#define MCF_USB_EP0SR_HALT (0x1)
-#define MCF_USB_EP0SR_ACTIVE (0x2)
-#define MCF_USB_EP0SR_PSTALL (0x4)
-#define MCF_USB_EP0SR_CCOMP (0x8)
-#define MCF_USB_EP0SR_TXZERO (0x20)
-#define MCF_USB_EP0SR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_BMRTR */
-#define MCF_USB_BMRTR_REC(x) (((x)&0x1F)<<0)
-#define MCF_USB_BMRTR_REC_DEVICE (0)
-#define MCF_USB_BMRTR_REC_INTERFACE (0x1)
-#define MCF_USB_BMRTR_REC_ENDPOINT (0x2)
-#define MCF_USB_BMRTR_REC_OTHER (0x3)
-#define MCF_USB_BMRTR_TYPE(x) (((x)&0x3)<<0x5)
-#define MCF_USB_BMRTR_TYPE_STANDARD (0)
-#define MCF_USB_BMRTR_TYPE_CLASS (0x20)
-#define MCF_USB_BMRTR_TYPE_VENDOR (0x40)
-#define MCF_USB_BMRTR_DIR (0x80)
-
-/* Bit definitions and macros for MCF_USB_BRTR */
-#define MCF_USB_BRTR_BREQ(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WVALUER */
-#define MCF_USB_WVALUER_WVALUE(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WINDEXR */
-#define MCF_USB_WINDEXR_WINDEX(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_WLENGTHR */
-#define MCF_USB_WLENGTHR_WLENGTH(x) (((x)&0xFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTACR */
-#define MCF_USB_EPOUTACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPOUTACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPOUTACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPOUTACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPOUTMPSR */
-#define MCF_USB_EPOUTMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPOUTMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPOUTIFR */
-#define MCF_USB_EPOUTIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSR */
-#define MCF_USB_EPOUTSR_HALT (0x1)
-#define MCF_USB_EPOUTSR_ACTIVE (0x2)
-#define MCF_USB_EPOUTSR_PSTALL (0x4)
-#define MCF_USB_EPOUTSR_CCOMP (0x8)
-#define MCF_USB_EPOUTSR_TXZERO (0x20)
-#define MCF_USB_EPOUTSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPOUTSFR */
-#define MCF_USB_EPOUTSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINACR */
-#define MCF_USB_EPINACR_TTYPE(x) (((x)&0x3)<<0)
-#define MCF_USB_EPINACR_TTYPE_ISOC (0x1)
-#define MCF_USB_EPINACR_TTYPE_BULK (0x2)
-#define MCF_USB_EPINACR_TTYPE_INT (0x3)
-
-/* Bit definitions and macros for MCF_USB_EPINMPSR */
-#define MCF_USB_EPINMPSR_MAXPKTSZ(x) (((x)&0x7FF)<<0)
-#define MCF_USB_EPINMPSR_ADDTRANS(x) (((x)&0x3)<<0xB)
-
-/* Bit definitions and macros for MCF_USB_EPINIFR */
-#define MCF_USB_EPINIFR_IFNUM(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPINSR */
-#define MCF_USB_EPINSR_HALT (0x1)
-#define MCF_USB_EPINSR_ACTIVE (0x2)
-#define MCF_USB_EPINSR_PSTALL (0x4)
-#define MCF_USB_EPINSR_CCOMP (0x8)
-#define MCF_USB_EPINSR_TXZERO (0x20)
-#define MCF_USB_EPINSR_INT (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPINSFR */
-#define MCF_USB_EPINSFR_FRMNUM(x) (((x)&0x7FF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBSR */
-#define MCF_USB_USBSR_ISOERREP(x) (((x)&0xF)<<0)
-#define MCF_USB_USBSR_SUSP (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBCR */
-#define MCF_USB_USBCR_RESUME (0x1)
-#define MCF_USB_USBCR_APPLOCK (0x2)
-#define MCF_USB_USBCR_RST (0x4)
-#define MCF_USB_USBCR_RAMEN (0x8)
-#define MCF_USB_USBCR_RAMSPLIT (0x20)
-
-/* Bit definitions and macros for MCF_USB_DRAMCR */
-#define MCF_USB_DRAMCR_DADR(x) (((x)&0x3FF)<<0)
-#define MCF_USB_DRAMCR_DSIZE(x) (((x)&0x7FF)<<0x10)
-#define MCF_USB_DRAMCR_BSY (0x40000000)
-#define MCF_USB_DRAMCR_START (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_DRAMDR */
-#define MCF_USB_DRAMDR_DDAT(x) (((x)&0xFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_USBISR */
-#define MCF_USB_USBISR_ISOERR (0x1)
-#define MCF_USB_USBISR_FTUNLCK (0x2)
-#define MCF_USB_USBISR_SUSP (0x4)
-#define MCF_USB_USBISR_RES (0x8)
-#define MCF_USB_USBISR_UPDSOF (0x10)
-#define MCF_USB_USBISR_RSTSTOP (0x20)
-#define MCF_USB_USBISR_SOF (0x40)
-#define MCF_USB_USBISR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_USBIMR */
-#define MCF_USB_USBIMR_ISOERR (0x1)
-#define MCF_USB_USBIMR_FTUNLCK (0x2)
-#define MCF_USB_USBIMR_SUSP (0x4)
-#define MCF_USB_USBIMR_RES (0x8)
-#define MCF_USB_USBIMR_UPDSOF (0x10)
-#define MCF_USB_USBIMR_RSTSTOP (0x20)
-#define MCF_USB_USBIMR_SOF (0x40)
-#define MCF_USB_USBIMR_MSOF (0x80)
-
-/* Bit definitions and macros for MCF_USB_EPSTAT */
-#define MCF_USB_EPSTAT_RST (0x1)
-#define MCF_USB_EPSTAT_FLUSH (0x2)
-#define MCF_USB_EPSTAT_DIR (0x80)
-#define MCF_USB_EPSTAT_BYTECNT(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPISR */
-#define MCF_USB_EPISR_EOF (0x1)
-#define MCF_USB_EPISR_EOT (0x4)
-#define MCF_USB_EPISR_FIFOLO (0x10)
-#define MCF_USB_EPISR_FIFOHI (0x20)
-#define MCF_USB_EPISR_ERR (0x40)
-#define MCF_USB_EPISR_EMT (0x80)
-#define MCF_USB_EPISR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPIMR */
-#define MCF_USB_EPIMR_EOF (0x1)
-#define MCF_USB_EPIMR_EOT (0x4)
-#define MCF_USB_EPIMR_FIFOLO (0x10)
-#define MCF_USB_EPIMR_FIFOHI (0x20)
-#define MCF_USB_EPIMR_ERR (0x40)
-#define MCF_USB_EPIMR_EMT (0x80)
-#define MCF_USB_EPIMR_FU (0x100)
-
-/* Bit definitions and macros for MCF_USB_EPFRCFGR */
-#define MCF_USB_EPFRCFGR_DEPTH(x) (((x)&0x1FFF)<<0)
-#define MCF_USB_EPFRCFGR_BASE(x) (((x)&0xFFF)<<0x10)
-
-/* Bit definitions and macros for MCF_USB_EPFDR */
-#define MCF_USB_EPFDR_RX_TXDATA(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFSR */
-#define MCF_USB_EPFSR_EMT (0x10000)
-#define MCF_USB_EPFSR_ALRM (0x20000)
-#define MCF_USB_EPFSR_FU (0x40000)
-#define MCF_USB_EPFSR_FR (0x80000)
-#define MCF_USB_EPFSR_OF (0x100000)
-#define MCF_USB_EPFSR_UF (0x200000)
-#define MCF_USB_EPFSR_RXW (0x400000)
-#define MCF_USB_EPFSR_FAE (0x800000)
-#define MCF_USB_EPFSR_FRM(x) (((x)&0xF)<<0x18)
-#define MCF_USB_EPFSR_TXW (0x40000000)
-#define MCF_USB_EPFSR_IP (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFCR */
-#define MCF_USB_EPFCR_COUNTER(x) (((x)&0xFFFF)<<0)
-#define MCF_USB_EPFCR_TXWMSK (0x40000)
-#define MCF_USB_EPFCR_OFMSK (0x80000)
-#define MCF_USB_EPFCR_UFMSK (0x100000)
-#define MCF_USB_EPFCR_RXWMSK (0x200000)
-#define MCF_USB_EPFCR_FAEMSK (0x400000)
-#define MCF_USB_EPFCR_IPMSK (0x800000)
-#define MCF_USB_EPFCR_GR(x) (((x)&0x7)<<0x18)
-#define MCF_USB_EPFCR_FRM (0x8000000)
-#define MCF_USB_EPFCR_TMR (0x10000000)
-#define MCF_USB_EPFCR_WFR (0x20000000)
-#define MCF_USB_EPFCR_SHAD (0x80000000)
-
-/* Bit definitions and macros for MCF_USB_EPFAR */
-#define MCF_USB_EPFAR_ALRMP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFRP */
-#define MCF_USB_EPFRP_RP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPFWP */
-#define MCF_USB_EPFWP_WP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLRFP */
-#define MCF_USB_EPLRFP_LRFP(x) (((x)&0xFFF)<<0)
-
-/* Bit definitions and macros for MCF_USB_EPLWFP */
-#define MCF_USB_EPLWFP_LWFP(x) (((x)&0xFFF)<<0)
-
-
-#endif /* __MCF5475_USB_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/MCF5475_XLB.h b/BaS_gcc/tos/vmem_test/include/MCF5475_XLB.h
deleted file mode 100644
index af25ae7..0000000
--- a/BaS_gcc/tos/vmem_test/include/MCF5475_XLB.h
+++ /dev/null
@@ -1,101 +0,0 @@
-/* Coldfire C Header File
- * Copyright Freescale Semiconductor Inc
- * All rights reserved.
- *
- * 2008/05/23 Revision: 0.81
- *
- * (c) Copyright UNIS, a.s. 1997-2008
- * UNIS, a.s.
- * Jundrovska 33
- * 624 00 Brno
- * Czech Republic
- * http : www.processorexpert.com
- * mail : info@processorexpert.com
- */
-
-#ifndef __MCF5475_XLB_H__
-#define __MCF5475_XLB_H__
-
-
-/*********************************************************************
-*
-* XL Bus Arbiter (XLB)
-*
-*********************************************************************/
-
-/* Register read/write macros */
-#define MCF_XLB_XARB_CFG (*(volatile uint32_t*)(&_MBAR[0x240]))
-#define MCF_XLB_XARB_VER (*(volatile uint32_t*)(&_MBAR[0x244]))
-#define MCF_XLB_XARB_SR (*(volatile uint32_t*)(&_MBAR[0x248]))
-#define MCF_XLB_XARB_IMR (*(volatile uint32_t*)(&_MBAR[0x24C]))
-#define MCF_XLB_XARB_ADRCAP (*(volatile uint32_t*)(&_MBAR[0x250]))
-#define MCF_XLB_XARB_SIGCAP (*(volatile uint32_t*)(&_MBAR[0x254]))
-#define MCF_XLB_XARB_ADRTO (*(volatile uint32_t*)(&_MBAR[0x258]))
-#define MCF_XLB_XARB_DATTO (*(volatile uint32_t*)(&_MBAR[0x25C]))
-#define MCF_XLB_XARB_BUSTO (*(volatile uint32_t*)(&_MBAR[0x260]))
-#define MCF_XLB_XARB_PRIEN (*(volatile uint32_t*)(&_MBAR[0x264]))
-#define MCF_XLB_XARB_PRI (*(volatile uint32_t*)(&_MBAR[0x268]))
-
-
-/* Bit definitions and macros for MCF_XLB_XARB_CFG */
-#define MCF_XLB_XARB_CFG_AT (0x2)
-#define MCF_XLB_XARB_CFG_DT (0x4)
-#define MCF_XLB_XARB_CFG_BA (0x8)
-#define MCF_XLB_XARB_CFG_PM(x) (((x)&0x3)<<0x5)
-#define MCF_XLB_XARB_CFG_SP(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_CFG_PLDIS (0x80000000)
-
-/* Bit definitions and macros for MCF_XLB_XARB_VER */
-#define MCF_XLB_XARB_VER_VER(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SR */
-#define MCF_XLB_XARB_SR_AT (0x1)
-#define MCF_XLB_XARB_SR_DT (0x2)
-#define MCF_XLB_XARB_SR_BA (0x4)
-#define MCF_XLB_XARB_SR_TTM (0x8)
-#define MCF_XLB_XARB_SR_ECW (0x10)
-#define MCF_XLB_XARB_SR_TTR (0x20)
-#define MCF_XLB_XARB_SR_TTA (0x40)
-#define MCF_XLB_XARB_SR_MM (0x80)
-#define MCF_XLB_XARB_SR_SEA (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_IMR */
-#define MCF_XLB_XARB_IMR_ATE (0x1)
-#define MCF_XLB_XARB_IMR_DTE (0x2)
-#define MCF_XLB_XARB_IMR_BAE (0x4)
-#define MCF_XLB_XARB_IMR_TTME (0x8)
-#define MCF_XLB_XARB_IMR_ECWE (0x10)
-#define MCF_XLB_XARB_IMR_TTRE (0x20)
-#define MCF_XLB_XARB_IMR_TTAE (0x40)
-#define MCF_XLB_XARB_IMR_MME (0x80)
-#define MCF_XLB_XARB_IMR_SEAE (0x100)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRCAP */
-#define MCF_XLB_XARB_ADRCAP_ADRCAP(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_SIGCAP */
-#define MCF_XLB_XARB_SIGCAP_TT(x) (((x)&0x1F)<<0)
-#define MCF_XLB_XARB_SIGCAP_TBST (0x20)
-#define MCF_XLB_XARB_SIGCAP_TSIZ(x) (((x)&0x7)<<0x7)
-
-/* Bit definitions and macros for MCF_XLB_XARB_ADRTO */
-#define MCF_XLB_XARB_ADRTO_ADRTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_DATTO */
-#define MCF_XLB_XARB_DATTO_DATTO(x) (((x)&0xFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_BUSTO */
-#define MCF_XLB_XARB_BUSTO_BUSTO(x) (((x)&0xFFFFFFFF)<<0)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRIEN */
-#define MCF_XLB_XARB_PRIEN_M0 (0x1)
-#define MCF_XLB_XARB_PRIEN_M2 (0x4)
-#define MCF_XLB_XARB_PRIEN_M3 (0x8)
-
-/* Bit definitions and macros for MCF_XLB_XARB_PRI */
-#define MCF_XLB_XARB_PRI_M0P(x) (((x)&0x7)<<0)
-#define MCF_XLB_XARB_PRI_M2P(x) (((x)&0x7)<<0x8)
-#define MCF_XLB_XARB_PRI_M3P(x) (((x)&0x7)<<0xC)
-
-
-#endif /* __MCF5475_XLB_H__ */
diff --git a/BaS_gcc/tos/vmem_test/include/bas_printf.h b/BaS_gcc/tos/vmem_test/include/bas_printf.h
deleted file mode 100644
index ac44849..0000000
--- a/BaS_gcc/tos/vmem_test/include/bas_printf.h
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- */
-
-#ifndef _BAS_PRINTF_H_
-#define _BAS_PRINTF_H_
-#include
-#include
-
-extern void xvsnprintf(char *str, size_t size, const char *fmt, va_list va);
-extern void xvprintf(const char *fmt, va_list va);
-extern void xprintf(const char *fmt, ...);
-extern void xsnprintf(char *str, size_t size, const char *fmt, ...);
-extern void xputchar(int c);
-extern int sprintf(char *str, const char *format, ...);
-
-
-extern void display_progress(void);
-extern void hexdump(volatile uint8_t buffer[], int size);
-#endif /* _BAS_PRINTF_H_ */
diff --git a/BaS_gcc/tos/vmem_test/include/bas_string.h b/BaS_gcc/tos/vmem_test/include/bas_string.h
deleted file mode 100644
index c743c95..0000000
--- a/BaS_gcc/tos/vmem_test/include/bas_string.h
+++ /dev/null
@@ -1,47 +0,0 @@
-/*
- * bas_string.h
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#ifndef BAS_STRING_H_
-#define BAS_STRING_H_
-
-#include
-
-extern int strncmp(const char *s1, const char *s2, size_t max);
-extern char *strcpy(char *dst, const char *src);
-char *strncpy(char *dst, const char *src, size_t max);
-extern int strcmp(const char *s1, const char *s2);
-extern size_t strlen(const char *str);
-extern char *strcat(char *dst, const char *src);
-extern char *strncat(char *dst, const char *src, size_t max);
-extern int atoi(const char *c);
-extern void *memcpy(void *dst, const void *src, size_t n);
-extern void *memset(void *s, int c, size_t n);
-extern int memcmp(const void *s1, const void *s2, size_t max);
-extern void bzero(void *s, size_t n);
-
-#define isdigit(c) (((c) >= '0') && ((c) <= '9'))
-#define isupper(c) ((c) >= 'A' && ((c) <= 'Z'))
-#define islower(c) ((c) >= 'a' && ((c) <= 'z'))
-#define isalpha(c) (isupper((c)) || islower(c))
-#define tolower(c) (isupper(c) ? ((c) + 'a' - 'A') : (c))
-
-#endif /* BAS_STRING_H_ */
diff --git a/BaS_gcc/tos/vmem_test/include/driver_vec.h b/BaS_gcc/tos/vmem_test/include/driver_vec.h
deleted file mode 100644
index 8b9352a..0000000
--- a/BaS_gcc/tos/vmem_test/include/driver_vec.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/*
- * driver_vec.h
- *
- * Interface for exposure of BaS drivers to the OS
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 24.10.2013
- * Author: Markus Fröschle
- */
-
-#ifndef _DRIVER_VEC_H_
-#define _DRIVER_VEC_H_
-
-
-enum driver_type
-{
- END_OF_DRIVERS, /* marks end of driver list */
- BLOCKDEV_DRIVER,
- CHARDEV_DRIVER,
- VIDEO_DRIVER,
- XHDI_DRIVER,
- MCD_DRIVER,
-};
-
-struct generic_driver_interface
-{
- uint32_t (*init)(void);
- uint32_t (*read)(void *buf, size_t count);
- uint32_t (*write)(const void *buf, size_t count);
- uint32_t (*ioctl)(uint32_t request, ...);
-};
-
-
-/* Chained buffer descriptor */
-typedef volatile struct MCD_bufDesc_struct MCD_bufDesc;
-struct MCD_bufDesc_struct {
- uint32_t flags; /* flags describing the DMA */
- uint32_t csumResult; /* checksum from checksumming performed since last checksum reset */
- int8_t *srcAddr; /* the address to move data from */
- int8_t *destAddr; /* the address to move data to */
- int8_t *lastDestAddr; /* the last address written to */
- uint32_t dmaSize; /* the number of bytes to transfer independent of the transfer size */
- MCD_bufDesc *next; /* next buffer descriptor in chain */
- uint32_t info; /* private information about this descriptor; DMA does not affect it */
-};
-
-/* Progress Query struct */
-typedef volatile struct MCD_XferProg_struct {
- int8_t *lastSrcAddr; /* the most-recent or last, post-increment source address */
- int8_t *lastDestAddr; /* the most-recent or last, post-increment destination address */
- uint32_t dmaSize; /* the amount of data transferred for the current buffer */
- MCD_bufDesc *currBufDesc;/* pointer to the current buffer descriptor being DMAed */
-} MCD_XferProg;
-
-struct dma_driver_interface
-{
- int32_t version;
- int32_t magic;
- int32_t (*dma_set_initiator)(int initiator);
- uint32_t (*dma_get_initiator)(int requestor);
- void (*dma_free_initiator)(int requestor);
- int32_t (*dma_set_channel)(int requestor, void (*handler)(void));
- int (*dma_get_channel)(int requestor);
- void (*dma_free_channel)(int requestor);
- void (*dma_clear_channel)(int channel);
- int (*MCD_startDma)(int channel, int8_t *srcAddr, int16_t srcIncr, int8_t *destAddr, int16_t destIncr,
- uint32_t dmaSize, uint32_t xferSize, uint32_t initiator, int32_t priority, uint32_t flags,
- uint32_t funcDesc);
- int (*MCD_dmaStatus)(int channel);
- int (*MCD_XferProgrQuery)(int channel, MCD_XferProg *progRep);
- int (*MCD_killDma)(int channel);
- int (*MCD_continDma)(int channel);
- int (*MCD_pauseDma)(int channel);
- int (*MCD_resumeDma)(int channel);
- int (*MCD_csumQuery)(int channel, uint32_t *csum);
- void *(*dma_malloc)(long amount);
- int (*dma_free)(void *addr);
-};
-
-struct xhdi_driver_interface
-{
- uint32_t (*xhdivec)();
-};
-
-union interface
-{
- struct generic_driver_interface *gdi;
- struct xhdi_driver_interface *xhdi;
- struct dma_driver_interface *dma;
-};
-
-struct generic_interface
-{
- enum driver_type type;
- char name[16];
- char description[64];
- int version;
- int revision;
- union interface interface;
-};
-
-struct driver_table
-{
- uint32_t bas_version;
- uint32_t bas_revision;
- uint32_t (*remove_handler)(); /* calling this will disable the BaS' hook into trap #0 */
- struct generic_interface *interfaces;
-};
-
-
-#endif /* _DRIVER_VEC_H_ */
diff --git a/BaS_gcc/tos/vmem_test/sources/bas_printf.c b/BaS_gcc/tos/vmem_test/sources/bas_printf.c
deleted file mode 100644
index 31691ce..0000000
--- a/BaS_gcc/tos/vmem_test/sources/bas_printf.c
+++ /dev/null
@@ -1,457 +0,0 @@
-/*
- * tc.printf.c: A public-domain, minimal printf/sprintf routine that prints
- * through the putchar() routine. Feel free to use for
- * anything... -- 7/17/87 Paul Placeway
- */
-/*-
- * Copyright (c) 1980, 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include
-#include "MCF5475.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-/*
- * Lexical definitions.
- *
- * All lexical space is allocated dynamically.
- * The eighth/sixteenth bit of characters is used to prevent recognition,
- * and eventually stripped.
- */
-#define META 0200
-#define ASCII 0177
-#define QUOTE ((char) 0200) /* Eighth char bit used for 'ing */
-#define TRIM 0177 /* Mask to strip quote bit */
-#define UNDER 0000000 /* No extra bits to do both */
-#define BOLD 0000000 /* Bold flag */
-#define STANDOUT META /* Standout flag */
-#define LITERAL 0000000 /* Literal character flag */
-#define ATTRIBUTES 0200 /* The bits used for attributes */
-#define CHAR 0000177 /* Mask to mask out the character */
-
-#define INF 32766 /* should be bigger than any field to print */
-
-static char snil[] = "(nil)";
-
-void xputchar(int c)
-{
- __asm__ __volatile__
- (
- ".extern printf_helper\n\t"
- "move.b %0,d0\n\t"
- "bsr printf_helper\n\t"
- /* output */:
- /* input */: "r" (c)
- /* clobber */: "d0","d2","a0","memory"
- );
-}
-
-static void doprnt(void (*addchar)(int), const char *sfmt, va_list ap)
-{
- char buf[128];
- char *bp;
- const char *f;
- float flt;
- long l;
- unsigned long u;
- int i;
- int fmt;
- unsigned char pad = ' ';
- int flush_left = 0;
- int f_width = 0;
- int prec = INF;
- int hash = 0;
- int do_long = 0;
- int sign = 0;
- int attributes = 0;
-
- f = sfmt;
- for (; *f; f++)
- {
- if (*f != '%')
- {
- /* then just out the char */
- (*addchar)((int) (((unsigned char) *f) | attributes));
- }
- else
- {
- f++; /* skip the % */
-
- if (*f == '-')
- { /* minus: flush left */
- flush_left = 1;
- f++;
- }
-
- if (*f == '0' || *f == '.')
- {
- /* padding with 0 rather than blank */
- pad = '0';
- f++;
- }
- if (*f == '*')
- {
- /* field width */
- f_width = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- f_width = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
-
- if (*f == '.')
- { /* precision */
- f++;
- if (*f == '*')
- {
- prec = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- prec = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
- }
-
- if (*f == '#')
- { /* alternate form */
- hash = 1;
- f++;
- }
-
- if (*f == 'l')
- { /* long format */
- do_long++;
- f++;
- if (*f == 'l')
- {
- do_long++;
- f++;
- }
- }
-
- fmt = (unsigned char) *f;
- if (fmt != 'S' && fmt != 'Q' && isupper(fmt))
- {
- do_long = 1;
- fmt = tolower(fmt);
- }
- bp = buf;
- switch (fmt)
- { /* do the format */
- case 'd':
- switch (do_long)
- {
- case 0:
- l = (long) (va_arg(ap, int));
- break;
- case 1:
- default:
- l = va_arg(ap, long);
- break;
- }
-
- if (l < 0)
- {
- sign = 1;
- l = -l;
- }
- do
- {
- *bp++ = (char) (l % 10) + '0';
- } while ((l /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'f':
- /* this is actually more than stupid, but does work for now */
- flt = (float) (va_arg(ap, double)); /* beware: va_arg() extends float to double! */
- if (flt < 0)
- {
- sign = 1;
- flt = -flt;
- }
- {
- int quotient, remainder;
-
- quotient = (int) flt;
- remainder = (flt - quotient) * 10E5;
-
- for (i = 0; i < 6; i++)
- {
- *bp++ = (char) (remainder % 10) + '0';
- remainder /= 10;
- }
- *bp++ = '.';
- do
- {
- *bp++ = (char) (quotient % 10) + '0';
- } while ((quotient /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- }
- break;
-
- case 'p':
- do_long = 1;
- hash = 1;
- fmt = 'x';
- /* no break */
- case 'o':
- case 'x':
- case 'u':
- switch (do_long)
- {
- case 0:
- u = (unsigned long) (va_arg(ap, unsigned int));
- break;
- case 1:
- default:
- u = va_arg(ap, unsigned long);
- break;
- }
- if (fmt == 'u')
- { /* unsigned decimal */
- do
- {
- *bp++ = (char) (u % 10) + '0';
- } while ((u /= 10) > 0);
- }
- else if (fmt == 'o')
- { /* octal */
- do
- {
- *bp++ = (char) (u % 8) + '0';
- } while ((u /= 8) > 0);
- if (hash)
- *bp++ = '0';
- }
- else if (fmt == 'x')
- { /* hex */
- do
- {
- i = (int) (u % 16);
- if (i < 10)
- *bp++ = i + '0';
- else
- *bp++ = i - 10 + 'a';
- } while ((u /= 16) > 0);
- if (hash)
- {
- *bp++ = 'x';
- *bp++ = '0';
- }
- }
- i = f_width - (int) (bp - buf);
- if (!flush_left)
- while (i-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (i-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'c':
- i = va_arg(ap, int);
- (*addchar)((int) (i | attributes));
- break;
-
- case 'S':
- case 'Q':
- case 's':
- case 'q':
- bp = va_arg(ap, char *);
- if (!bp)
- bp = snil;
- f_width = f_width - strlen((char *) bp);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (i = 0; *bp && i < prec; i++)
- {
- if (fmt == 'q' && (*bp & QUOTE))
- (*addchar)((int) ('\\' | attributes));
- (*addchar)(
- (int) (((unsigned char) *bp & TRIM) | attributes));
- bp++;
- }
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'a':
- attributes = va_arg(ap, int);
- break;
-
- case '%':
- (*addchar)((int) ('%' | attributes));
- break;
-
- default:
- break;
- }
- flush_left = 0, f_width = 0, prec = INF, hash = 0, do_long = 0;
- sign = 0;
- pad = ' ';
- }
- }
-}
-
-static char *xstring, *xestring;
-
-void xaddchar(int c)
-{
- if (xestring == xstring)
- *xstring = '\0';
- else
- *xstring++ = (char) c;
-}
-
-int sprintf(char *str, const char *format, ...)
-{
- va_list va;
- va_start(va, format);
-
- xstring = str;
-
- doprnt(xaddchar, format, va);
- va_end(va);
- *xstring++ = '\0';
-
- return 0;
-}
-
-void xsnprintf(char *str, size_t size, const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
-
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- va_end(va);
- *xstring++ = '\0';
-}
-
-void xprintf(const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
- doprnt(xputchar, fmt, va);
- va_end(va);
-}
-
-void xvprintf(const char *fmt, va_list va)
-{
- doprnt(xputchar, fmt, va);
-}
-
-void xvsnprintf(char *str, size_t size, const char *fmt, va_list va)
-{
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- *xstring++ = '\0';
-}
-
-
-void display_progress()
-{
- static int _progress_index;
- char progress_char[] = "|/-\\";
-
- xputchar(progress_char[_progress_index++ % strlen(progress_char)]);
- xputchar('\r');
-}
-
-void hexdump(volatile uint8_t buffer[], int size)
-{
- int i;
- int line = 0;
- volatile uint8_t *bp = buffer;
-
- while (bp < buffer + size) {
- volatile uint8_t *lbp = bp;
-
- xprintf("%08x ", line);
-
- for (i = 0; i < 16; i++) {
- uint8_t c = *lbp++;
- if (bp + i > buffer + size) {
- break;
- }
- xprintf("%02x ", c);
- }
-
- lbp = bp;
- for (i = 0; i < 16; i++) {
- volatile int8_t c = *lbp++;
-
- if (bp + i > buffer + size) {
- break;
- }
- if (c > ' ' && c < '~') {
- xprintf("%c", c);
- } else {
- xprintf(".");
- }
- }
- xprintf("\r\n");
-
- bp += 16;
- line += 16;
- }
-}
diff --git a/BaS_gcc/tos/vmem_test/sources/bas_string.c b/BaS_gcc/tos/vmem_test/sources/bas_string.c
deleted file mode 100644
index b8d6a0f..0000000
--- a/BaS_gcc/tos/vmem_test/sources/bas_string.c
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * bas_string.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include "bas_types.h"
-#include
-#include "bas_string.h"
-
-void *memcpy(void *dst, const void *src, size_t n)
-{
- uint8_t *to = dst;
-
- while (to < (uint8_t *) dst + n)
- *to++ = * (uint8_t *) src++;
-
- return dst;
-}
-
-void bzero(void *s, size_t n)
-{
- size_t i;
-
- for (i = 0; i < n; i++)
- ((unsigned char *) s)[i] = '\0';
-}
-
-void *memset(void *s, int c, size_t n)
-{
- uint8_t *dst = s;
-
- do
- {
- *dst++ = c;
- } while ((dst - (uint8_t *) s) < n);
-
- return s;
-}
-
-
-int memcmp(const void *s1, const void *s2, size_t max)
-{
- int i;
- int cmp;
-
- for (i = 0; i < max; i++)
- {
- cmp = (* (const char *) s1 - * (const char *) s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strcmp(const char *s1, const char *s2)
-{
- int i;
- int cmp;
-
- for (i = 0; *s1++ && *s2++; i++)
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strncmp(const char *s1, const char *s2, size_t max)
-{
- int i;
- int cmp;
-
- for (i = 0; i < max && *s1++ && *s2++; i++);
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-char *strcpy(char *dst, const char *src)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0');
- return ptr;
-}
-
-char *strncpy(char *dst, const char *src, size_t max)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0' && max-- >= 0);
- return ptr;
-}
-
-int atoi(const char *c)
-{
- int value = 0;
- while (isdigit(*c))
- {
- value *= 10;
- value += (int) (*c - '0');
- c++;
- }
- return value;
-}
-
-size_t strlen(const char *s)
-{
- const char *start = s;
-
- while (*s++);
-
- return s - start - 1;
-}
-
-
-char *strcat(char *dst, const char *src)
-{
- char *ret = dst;
- dst = &dst[strlen(dst)];
- while ((*dst++ = *src++) != '\0');
- return ret;
-}
-
-char *strncat(char *dst, const char *src, size_t max)
-{
- size_t i;
- char *ret = dst;
-
- dst = &dst[strlen(dst)];
- for (i = 0; i < max && *src; i++)
- {
- *dst++ = *src++;
- }
- *dst++ = '\0';
-
- return ret;
-}
diff --git a/BaS_gcc/tos/vmem_test/sources/printf_helper.S b/BaS_gcc/tos/vmem_test/sources/printf_helper.S
deleted file mode 100644
index e0b5c10..0000000
--- a/BaS_gcc/tos/vmem_test/sources/printf_helper.S
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * printf_helper.S
- *
- * assembler trampoline to let printf (compiled -mpcrel) indirectly reference __MBAR
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 - 2025 M. Froeschle
- */
-
-
- .globl printf_helper
-
-printf_helper:
- .extern __MBAR
-
-.wait_txready:
- move.w __MBAR+0x8604,d2 // PSCSCR0 status register
- btst #10,d2 // space left in TX fifo?
- beq.s .wait_txready // no, loop
- lea __MBAR+0x860C,a0 // PSCSTB0 transmitter buffer register
- move.b d0,(a0) // send byte
- rts
diff --git a/BaS_gcc/tos/vmem_test/sources/vmem_test.c b/BaS_gcc/tos/vmem_test/sources/vmem_test.c
deleted file mode 100644
index 2730d07..0000000
--- a/BaS_gcc/tos/vmem_test/sources/vmem_test.c
+++ /dev/null
@@ -1,390 +0,0 @@
-#include
-#include
-#include
-#include
-
-#include "bas_printf.h"
-#include "MCF5475.h"
-#include "driver_vec.h"
-
-#define FPGA_CONFIG (1 << 2)
-#define FPGA_CONF_DONE (1 << 5)
-
-#define SRAM1_START 0xff101000
-#define SRAM1_END SRAM1_START + 0x1000
-#define SAFE_STACK SRAM1_END - 4
-
-#define NOP() __asm__ __volatile__("nop\n\t" : : : "memory")
-
-#define SYSCLK 132000
-
-long bas_start = 0xe0000000;
-extern volatile uint32_t _VRAM[];
-
-volatile int32_t time, start, end;
-int i;
-
-static void wait_pll(void)
-{
- int32_t trgt = MCF_SLT0_SCNT - 100000;
- do
- {
- ;
- } while ((* (volatile int16_t *) 0xf0000800 < 0) && MCF_SLT0_SCNT > trgt);
-}
-
-static volatile uint8_t *pll_base = (volatile uint8_t *) 0xf0000600;
-
-static void init_pll(void)
-{
- xprintf("FPGA PLL initialization: ");
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x48) = 27; /* loopfilter r */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x08) = 1; /* charge pump 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x00) = 12; /* N counter high = 12 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x40) = 12; /* N counter low = 12 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x114) = 1; /* ck1 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x118) = 1; /* ck2 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x11c) = 1; /* ck3 bypass */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x10) = 1; /* ck0 high = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x50) = 1; /* ck0 low = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x144) = 1; /* M odd division */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x44) = 1; /* M low = 1 */
-
- wait_pll();
- * (volatile uint16_t *) (pll_base + 0x04) = 145; /* M high = 145 = 146 MHz */
-
- wait_pll();
-
- * (volatile uint8_t *) 0xf0000800 = 0; /* set */
-
- xprintf("finished\r\n");
-}
-
-/*
- * INIT VIDEO DDR RAM
- */
-static void init_video_ddr(void)
-{
- xprintf("init video RAM: ");
-
- * (volatile uint16_t *) 0xf0000400 = 0xb; /* set cke = 1, cs=1, config = 1 */
- NOP();
-
- _VRAM[0] = 0x00050400; /* IPALL */
- NOP();
-
- _VRAM[0] = 0x00072000; /* load EMR pll on */
- NOP();
-
- _VRAM[0] = 0x00070122; /* load MR: reset pll, cl=2, burst=4lw */
- NOP();
-
- _VRAM[0] = 0x00050400; /* IPALL */
- NOP();
-
- _VRAM[0] = 0x00060000; /* auto refresh */
- NOP();
-
- _VRAM[0] = 0x00060000; /* auto refresh */
- NOP();
-
- /* FIXME: what's this? */
- _VRAM[0] = 0000070022; /* load MR dll on */
- NOP();
-
- * (uint32_t *) 0xf0000400 = 0x01070002; /* fifo on, refresh on, ddrcs und cke on, video dac on */
-
- xprintf("sys_ctr = 0x%08x\r\n", * (uint32_t *) 0xf0000400);
- xprintf("finished\r\n");
-}
-
-void memmove_b(uint8_t *dst, volatile uint8_t *src, size_t size)
-{
- while (--size)
- {
- *dst++ = *src++;
- }
-}
-
-void memmove_w(uint16_t *dst, volatile uint16_t *src, size_t size)
-{
- size >>= 1;
-
- while (--size)
- {
- *dst++ = *src++;
- }
-}
-
-void memmove_l(uint32_t *dst, volatile uint32_t *src, size_t size)
-{
- size >>= 2;
-
- while (--size)
- {
- *dst++ = *src++;
- }
-}
-
-
-void do_tests(void)
-{
- // uint32_t version;
- const int buffer_size = 64;
- uint8_t buffer[buffer_size * 4];
-
- xprintf("initialize Firebee video PLL\r\n");
- init_pll();
- xprintf("finished\r\n");
-
- xprintf("initialize video ddr memory\r\n");
- init_video_ddr();
- xprintf("finished\r\n");
-
-#ifdef _NOT_USED_
- xprintf("try to read Configware version (only works on later configs)\r\n");
- version = * (uint32_t *) 0xffffffff;
-
- xprintf("version = 0x%08lx\r\n", version);
-#endif /* _NOT_USED_ */
-
- xprintf("try to access Firebee FPGA memory\r\n");
-
- xprintf("write\r\n");
- start = MCF_SLT0_SCNT;
-
- /*
- * fill 4 lines of video memory with 64 consecutive byte values
- */
- for (i = 0; i < 64; i++)
- {
- ((uint8_t *) _VRAM)[i] = (uint32_t) i;
- }
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
-
- xprintf("finished (took %f seconds).\r\n", time / 1000.0);
-
-
- /*
- * read back video memory into local fast ram buffer
- */
-
- xprintf("read\r\n");
- start = MCF_SLT0_SCNT;
-
- /*
- * read byte-wise
- */
- xprintf("byte read\r\n");
- memmove_b(buffer, (uint8_t *) _VRAM, buffer_size);
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
-
- xprintf("finished (took %f seconds).\r\n", time / 1000.0);
-
- hexdump(buffer, 64);
-
-
- /*
- * read word-wise
- */
- xprintf("word read\r\n");
- memmove_w((uint16_t *) buffer, (uint16_t *) _VRAM, buffer_size);
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
-
- xprintf("finished (took %f seconds).\r\n", time / 1000.0);
-
- hexdump(buffer, 64);
-
- /*
- * read longword-wise
- */
- xprintf("longword read\r\n");
- memmove_l((uint32_t *) buffer, (uint32_t *) _VRAM, buffer_size);
- end = MCF_SLT0_SCNT;
- time = (start - end) / (SYSCLK / 1000) / 1000;
-
- xprintf("finished (took %f seconds).\r\n", time / 1000.0);
-
- hexdump(buffer, 64);
-
- /*
- * do some Firebee register tests
- */
-
- volatile uint8_t *dbasef = (volatile uint8_t *) 0xffff8200;
-
- xprintf("dbasef = 0x%02x\r\n", *dbasef);
- *dbasef = 0x0;
- xprintf("dbasef after clearing it = 0x%02x\r\n", *dbasef);
-
- volatile uint8_t *dbaseh = (volatile uint8_t *) 0xffff8201;
-
- xprintf("dbaseh = 0x%02x\r\n", *dbaseh);
- *dbaseh = 0x0;
- xprintf("dbaseh after clearing it = 0x%02x\r\n", *dbaseh);
-
- volatile uint8_t *dbasel = (volatile uint8_t *) 0xffff8203;
- xprintf("dbasel = 0x%02x\r\n", *dbasel);
- *dbasel = 0x0;
- xprintf("dbasel after clearing it = 0x%02x\r\n", *dbasel);
-
- volatile uint8_t *dbaselow = (volatile uint8_t *) 0xffff820d;
- xprintf("dbaselow = 0x%02x\r\n", *dbaselow);
- *dbaselow = 0x0;
- xprintf("dbaselow after clearing it = 0x%02x\r\n", *dbaselow);
-
- volatile uint16_t *linewidth = (volatile uint16_t *) 0xffff820e;
- xprintf("linewidth = 0x%04x\r\n", *linewidth);
- *linewidth = 0x0;
- xprintf("linewidth after clearing it = 0x%04x\r\n", *linewidth);
- *linewidth = 0x1234;
- xprintf("linewidth after setting it to 0x1234 = 0x%04x\r\n", *linewidth);
-
- volatile uint16_t *vwrap = (volatile uint16_t *) 0xffff8210;
- xprintf("VWRAP = 0x%04x\r\n", *vwrap);
- *vwrap = 0;
- xprintf("VWRAP after clearing it = 0x%04x\r\n", *vwrap);
- *vwrap = 0x1234;
- xprintf("VWRAP after setting it to 0x1234 = 0x%04x\r\n", *vwrap);
-}
-
-
-
-void wait_for_jtag(void)
-{
- long i;
-
- /* set supervisor stack to end of SRAM1 */
- __asm__ __volatile__ (
- " move #0x2700,sr\n\t" /* disable interrupts */
- " move.l %[stack],d0\n\t" /* 4KB on-chip core SRAM1 */
- " move.l d0,sp\n\t" /* set stack pointer */
- :
- : [stack] "i" (SAFE_STACK)
- : "d0", "cc" /* clobber */
- );
-
- MCF_EPORT_EPIER = 0x0; /* disable EPORT interrupts */
- MCF_INTC_IMRL = 0xffffffff;
- MCF_INTC_IMRH = 0xffffffff; /* disable interrupt controller */
-
- MCF_MMU_MMUCR &= ~MCF_MMU_MMUCR_EN; /* disable MMU */
-
- xprintf("relocated supervisor stack, disabled interrupts and disabled MMU\r\n");
-
- /*
- * configure FEC1L port directions to enable external JTAG configuration download to FPGA
- */
- MCF_GPIO_PDDR_FEC1L = 0 |
- MCF_GPIO_PDDR_FEC1L_PDDR_FEC1L4; /* bit 4 = LED => output */
- /* all other bits = input */
-
- /*
- * configure DSPI_CS3 as GPIO input to avoid the MCU driving against the FPGA blink
- */
- MCF_PAD_PAR_DSPI &= ~MCF_PAD_PAR_DSPI_PAR_CS3(MCF_PAD_PAR_DSPI_PAR_CS3_DSPICS3);
- /*
- * now that GPIO ports have been switched to input, we can poll for FPGA config
- * started from the JTAG interface (CONF_DONE goes low) and finish (CONF_DONE goes high)
- */
- xprintf("waiting for JTAG configuration start\r\n");
- while ((MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load started */
-
- xprintf("waiting for JTAG configuration to finish\r\n");
- while (!(MCF_GPIO_PPDSDR_FEC1L & FPGA_CONF_DONE)); /* wait for JTAG config load finished */
-
- xprintf("JTAG configuration finished.\r\n");
-
- /* wait */
- xprintf("wait a little to let things settle...\r\n");
- for (i = 0; i < 100000L; i++);
-
- xprintf("disable caches\r\n");
- __asm__ __volatile(
- "move.l #0x01000000,d0 \r\n"
- "movec d0,CACR \r\n"
- : /* no output */
- : /* no input */
- : "d0", "memory");
-
- xprintf("init FPGA PLLs\r\n");
- init_pll();
-
- xprintf("init video DDR RAM\r\n");
- init_video_ddr();
-
- /* begin of tests */
-
- do_tests();
-
- xprintf("wait a little to let things settle...\r\n");
- for (i = 0; i < 100000L; i++);
-
- xprintf("INFO: endless loop now. Press reset to reboot\r\n");
- while (1)
- ;
-}
-
-int main(int argc, char *argv[])
-{
- printf("FPGA JTAG configuration support\r\n");
- printf("test FPGA DDR RAM controller\r\n");
- printf("\xbd 2014 M. F\x94schle\r\n");
-
- printf("You may now savely load a new FPGA configuration through the JTAG interface\r\n"
- "and your Firebee will reboot once finished using that new configuration.\r\n");
- if (argc == 2)
- {
- /*
- * we got an argument. This is supposed to be the address that we need to jump to after JTAG
- * configuration has been finished. Meant to support BaS in RAM testing
- */
- char *addr_str = argv[1];
- char *addr = NULL;
- char *end = NULL;
-
- addr = (char *) strtol(addr_str, &end, 16);
- if (addr != NULL && addr <= (char *) 0xe0000000 && addr >= (char *) 0x10000000)
- {
- /*
- * seems to be a valid address
- */
- bas_start = (long) addr;
-
- printf("BaS start address set to %p\r\n", (void *) bas_start);
- }
- else
- {
- printf("\r\nNote: BaS start address %p not valid. Stick to %p.\r\n", addr, (void *) bas_start);
- }
- }
- Supexec(wait_for_jtag);
-
- return 0; /* just to make the compiler happy, we will never return */
-}
-
diff --git a/BaS_gcc/tos/vmem_test/vmem_test.config b/BaS_gcc/tos/vmem_test/vmem_test.config
deleted file mode 100644
index 8cec188..0000000
--- a/BaS_gcc/tos/vmem_test/vmem_test.config
+++ /dev/null
@@ -1 +0,0 @@
-// ADD PREDEFINED MACROS HERE!
diff --git a/BaS_gcc/tos/vmem_test/vmem_test.creator b/BaS_gcc/tos/vmem_test/vmem_test.creator
deleted file mode 100644
index e94cbbd..0000000
--- a/BaS_gcc/tos/vmem_test/vmem_test.creator
+++ /dev/null
@@ -1 +0,0 @@
-[General]
diff --git a/BaS_gcc/tos/vmem_test/vmem_test.files b/BaS_gcc/tos/vmem_test/vmem_test.files
deleted file mode 100644
index d4c5c1a..0000000
--- a/BaS_gcc/tos/vmem_test/vmem_test.files
+++ /dev/null
@@ -1,7 +0,0 @@
-include/driver_vec.h
-sources/jtagwait.c
-Makefile
-sources/bas_printf.c
-sources/bas_string.c
-sources/printf_helper.S
-sources/vmem_test.c
diff --git a/BaS_gcc/tos/vmem_test/vmem_test.includes b/BaS_gcc/tos/vmem_test/vmem_test.includes
deleted file mode 100644
index 0e46827..0000000
--- a/BaS_gcc/tos/vmem_test/vmem_test.includes
+++ /dev/null
@@ -1,2 +0,0 @@
-include
-/usr/m68k-atari-mint/include
diff --git a/BaS_gcc/usb/usb.c b/BaS_gcc/usb/usb.c
deleted file mode 100644
index c947bc4..0000000
--- a/BaS_gcc/usb/usb.c
+++ /dev/null
@@ -1,1353 +0,0 @@
-/*
- *
- * Most of this source has been derived from the Linux USB
- * project:
- * (C) Copyright Linus Torvalds 1999
- * (C) Copyright Johannes Erdfelt 1999-2001
- * (C) Copyright Andreas Gal 1999
- * (C) Copyright Gregory P. Smith 1999
- * (C) Copyright Deti Fliegl 1999 (new USB architecture)
- * (C) Copyright Randy Dunlap 2000
- * (C) Copyright David Brownell 2000 (kernel hotplug, usb_device_id)
- * (C) Copyright Yggdrasil Computing, Inc. 2000
- * (usb_device_id matching changes by Adam J. Richter)
- *
- * Adapted for U-Boot:
- * (C) Copyright 2001 Denis Peter, MPL AG Switzerland
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- */
-
-/*
- * How it works:
- *
- * Since this is a bootloader, the devices will not be automatic
- * (re)configured on hotplug, but after a restart of the USB the
- * device should work.
- *
- * For each transfer (except "Interrupt") we wait for completion.
- */
-
-#include
-#include "bas_string.h"
-#include "bas_printf.h"
-#include "util.h" /* for byte swap funcs */
-#include "wait.h"
-#include
-#include "usb.h"
-#include "usb_hub.h"
-
-// #define DEBUG
-#include "debug.h"
-
-struct hci
-{
- /* ------- common part -------- */
- long handle; /* PCI BIOS */
- const struct pci_device_id *ent;
- int usbnum;
- /* ---- end of common part ---- */
-};
-
-static struct usb_device *usb_dev;
-int bus_index;
-static int dev_index[USB_MAX_BUS];
-static struct hci *controller_priv[USB_MAX_BUS];
-static int asynch_allowed;
-static struct devrequest *setup_packet;
-
-char usb_started; /* flag for the started/stopped USB status */
-
-
-/*
- * some forward declarations...
- */
-void usb_scan_devices(void *priv);
-
-/*
- * Init USB device controller
- */
-int usb_init(int32_t handle, const struct pci_device_id *ent)
-{
- struct hci *priv;
- int res = 0;
-
- bus_index = 0;
- if (bus_index >= USB_MAX_BUS)
- {
- dbg("bus_index >= USB_MAX_BUS");
- return -1;
- }
-
- dev_index[bus_index] = 0;
- asynch_allowed = 1;
-
- if (handle && (ent != NULL))
- {
- if (driver_mem_init())
- {
- usb_started = 0;
- dbg("driver_mem_init failed\r\n");
-
- return -1; /* out of memory */
- }
-
- if (usb_dev == NULL)
- {
- usb_dev = (struct usb_device *) driver_mem_alloc(sizeof(struct usb_device) * USB_MAX_BUS * USB_MAX_DEVICE);
- }
-
- if (usb_dev == NULL)
- {
- usb_started = 0;
-
- dbg("could not allocate memory\r\n");
-
- return -1; /* out of memory */
- }
- }
- else /* restart */
- {
- int i;
-
- res = 0;
- for (i = 0; i < USB_MAX_BUS; i++)
- {
- if (controller_priv[i] != NULL)
- {
- long hdl = controller_priv[i]->handle;
-
- if (hdl)
- {
- res |= usb_init(handle, NULL); /* FIXME: recursive call!? */
- }
- }
- }
- return res;
- }
-
- usb_hub_reset(bus_index);
-
- /* init low_level USB */
-
- switch(ent->class)
- {
- case PCI_CLASS_SERIAL_USB_UHCI:
- //res = uhci_usb_lowlevel_init(handle, ent, &priv);
- dbg("sorry, no uhci driver available\r\n");
- break;
-
- case PCI_CLASS_SERIAL_USB_OHCI:
- dbg("initialize ohci host controller interface\r\n");
- res = ohci_usb_lowlevel_init(handle, ent, (void *) &priv);
- break;
-
- case PCI_CLASS_SERIAL_USB_EHCI:
- dbg("initialize ehci host controller interface\r\n");
- res = ehci_usb_lowlevel_init(handle, ent, (void *) &priv);
- break;
-
- default:
- res = -1;
- break;
- }
-
- if (!res)
- {
- /*
- * if lowlevel init is OK, scan the bus for devices
- * i.e. search HUBs and configure them
- */
- if (setup_packet == NULL)
- {
- setup_packet = driver_mem_alloc(sizeof(struct devrequest));
- if (setup_packet == NULL)
- {
- usb_started = 0;
-
- dbg("could not allocate memory\r\n");
-
- return -1; /* no memory, no USB */
- }
- }
-
- xprintf("Scanning bus for devices... ");
-
- controller_priv[bus_index] = priv;
- controller_priv[bus_index]->usbnum = bus_index;
-
- usb_scan_devices(priv);
- bus_index++;
- usb_started = 1;
-
- xprintf("done.\r\n");
-
- return 0;
- }
- else
- {
- xprintf("\r\nError, couldn't init Lowlevel part\r\n");
- usb_started = 0;
-
- return -1;
- }
-}
-
-/*
- * Stop USB. This stops the LowLevel Part and deregisters USB devices.
- */
-int usb_stop(void)
-{
- int i;
- int res = 0;
-
- if (usb_started)
- {
- asynch_allowed = 1;
- usb_started = 0;
- usb_hub_reset(bus_index);
- driver_mem_free(setup_packet);
- for (i = 0; i < USB_MAX_BUS; i++)
- {
- struct hci *priv = controller_priv[i];
- if (priv != NULL)
- {
- switch(priv->ent->class)
- {
-#ifdef CONFIG_USB_UHCI
- case PCI_CLASS_SERIAL_USB_UHCI:
- res |= uhci_usb_lowlevel_stop(priv);
- break;
-#endif
-#ifdef CONFIG_USB_OHCI
- case PCI_CLASS_SERIAL_USB_OHCI:
- res |= ohci_usb_lowlevel_stop(priv);
- break;
-#endif
-#ifdef CONFIG_USB_EHCI
- case PCI_CLASS_SERIAL_USB_EHCI:
- res |= ehci_usb_lowlevel_stop(priv);
- break;
-#endif
- }
- }
- }
- bus_index = 0;
- driver_mem_release(); /* release all driver mem */
- }
- return res;
-}
-
-
-void usb_enable_interrupt(int enable)
-{
- ohci_usb_enable_interrupt(enable);
- ehci_usb_enable_interrupt(enable);
-}
-
-
-/*
- * disables the asynch behaviour of the control message. This is used for data
- * transfers that uses the exclusiv access to the control and bulk messages.
- */
-void usb_disable_asynch(int disable)
-{
- asynch_allowed = !disable;
-}
-
-/*
- * Message wrappers.
- *
- */
-
-/*
- * submits an Interrupt Message
- */
-int usb_submit_int_msg(struct usb_device *dev, uint32_t pipe, void *buffer, int transfer_len, int interval)
-{
- struct hci *priv = (struct hci *) dev->priv_hcd;
- int ret = 0;
-
- switch(priv->ent->class)
- {
- case PCI_CLASS_SERIAL_USB_OHCI:
- ret = ohci_submit_int_msg(dev, pipe, buffer, transfer_len, interval);
- break;
-
- case PCI_CLASS_SERIAL_USB_EHCI:
- ret = ehci_submit_int_msg(dev, pipe, buffer, transfer_len, interval);
- break;
-
- default:
- ret = -1;
- break;
- }
- return ret;
-}
-
-/*
- * submits a control message and waits for completion (at least timeout * 1ms)
- * If timeout is 0, we don't wait for completion (used for example to set and
- * clear keyboards LEDs). For data transfers, (storage transfers) we don't
- * allow control messages with 0 timeout, by previousely resetting the flag
- * asynch_allowed (usb_disable_asynch(1)).
- * returns the transfered length if OK or -1 if error. The transfered length
- * and the current status are stored in the dev->act_len and dev->status.
- */
-int usb_control_msg(struct usb_device *dev, unsigned int pipe,
- unsigned char request, unsigned char requesttype,
- unsigned short value, unsigned short index,
- void *data, unsigned short size, int timeout)
-{
- struct hci *priv = (struct hci *) dev->priv_hcd;
-
- if ((timeout == 0) && (!asynch_allowed))
- {
- /* request for a asynch control pipe is not allowed */
-
- err("request for an async control pipe is not allowed\r\n");
- return -1;
- }
-
- /* set setup command */
- setup_packet->requesttype = requesttype;
- setup_packet->request = request;
- setup_packet->value = swpw(value);
- setup_packet->index = swpw(index);
- setup_packet->length = swpw(size);
-
- dbg("request: 0x%X, requesttype: 0x%X, value 0x%X index 0x%X length 0x%X\r\n", request, requesttype, value, index, size);
-
- switch (priv->ent->class)
- {
- case PCI_CLASS_SERIAL_USB_OHCI:
- dev->status = USB_ST_NOT_PROC; /* not yet processed */
- ohci_submit_control_msg(dev, pipe, data, size, setup_packet);
- break;
-
- case PCI_CLASS_SERIAL_USB_EHCI:
- dev->status = USB_ST_NOT_PROC; /* not yet processed */
- ehci_submit_control_msg(dev, pipe, data, size, setup_packet);
- break;
-
- default:
- return -1;
- }
-
- if (timeout == 0)
- {
- return (int) size;
- }
-
- if (dev->status != 0)
- {
- /*
- * Let's wait a while for the timeout to elapse.
- * It has no real use, but it keeps the interface happy.
- */
- return -1;
- }
- return dev->act_len;
-}
-
-/*
- * submits bulk message, and waits for completion. returns 0 if Ok or
- * -1 if Error.
- * synchronous behavior
- */
-int usb_bulk_msg(struct usb_device *dev, unsigned int pipe, void *data, int len, int *actual_length, int timeout)
-{
- struct hci *priv = (struct hci *) dev->priv_hcd;
-
- if (len < 0)
- {
- return -1;
- }
-
- switch(priv->ent->class)
- {
- case PCI_CLASS_SERIAL_USB_OHCI:
- dev->status = USB_ST_NOT_PROC; /* not yet processed */
- ohci_submit_bulk_msg(dev, pipe, data, len);
- break;
-
- case PCI_CLASS_SERIAL_USB_EHCI:
- dev->status = USB_ST_NOT_PROC; /* not yet processed */
- ehci_submit_bulk_msg(dev, pipe, data, len);
- break;
-
- default:
- return -1;
- }
-
- while (timeout--)
- {
- if (!((volatile uint32_t) dev->status & USB_ST_NOT_PROC)) /* FIXME: this volatile does nothing! */
- break;
- wait(1);
- }
-
- *actual_length = dev->act_len;
-
- if (dev->status == 0)
- {
- return 0;
- }
- else
- {
- return -1;
- }
-}
-
-
-/*
- * Max Packet stuff
- */
-
-/*
- * returns the max packet size, depending on the pipe direction and
- * the configurations values
- */
-int usb_maxpacket(struct usb_device *dev, uint32_t pipe)
-{
- /* direction is out -> use emaxpacket out */
- if ((pipe & USB_DIR_IN) == 0)
- {
- return dev->epmaxpacketout[((pipe >> 15) & 0xf)];
- }
- else
- {
- return dev->epmaxpacketin[((pipe >> 15) & 0xf)];
- }
-}
-
-/*
- * The routine usb_set_maxpacket_ep() is extracted from the loop of routine
- * usb_set_maxpacket(), because the optimizer of GCC 4.x chokes on this routine
- * when it is inlined in 1 single routine. What happens is that the register r3
- * is used as loop-count 'i', but gets overwritten later on.
- * This is clearly a compiler bug, but it is easier to workaround it here than
- * to update the compiler (Occurs with at least several GCC 4.{1,2},x
- * CodeSourcery compilers like e.g. 2007q3, 2008q1, 2008q3 lite editions on ARM)
- *
- * We probably do not need that for Coldfire - at least I hope so.
- */
-static void usb_set_maxpacket_ep(struct usb_device *dev, struct usb_endpoint_descriptor *ep)
-{
- int b;
-
- b = ep->bEndpointAddress & USB_ENDPOINT_NUMBER_MASK;
-
- if ((ep->bmAttributes & USB_ENDPOINT_XFERTYPE_MASK) == USB_ENDPOINT_XFER_CONTROL)
- {
- /* Control => bidirectional */
- dev->epmaxpacketout[b] = ep->wMaxPacketSize;
- dev->epmaxpacketin[b] = ep->wMaxPacketSize;
- dbg("##Control EP epmaxpacketout/in[%d] = %d\r\n", b, dev->epmaxpacketin[b]);
- }
- else
- {
- if ((ep->bEndpointAddress & 0x80) == 0)
- {
- /* OUT Endpoint */
- if (ep->wMaxPacketSize > dev->epmaxpacketout[b])
- {
- dev->epmaxpacketout[b] = ep->wMaxPacketSize;
- dbg("##EP epmaxpacketout[%d] = %d\r\n", b, dev->epmaxpacketout[b]);
- }
- }
- else
- {
- /* IN Endpoint */
- if (ep->wMaxPacketSize > dev->epmaxpacketin[b])
- {
- dev->epmaxpacketin[b] = ep->wMaxPacketSize;
- dbg("##EP epmaxpacketin[%d] = %d\r\n", b, dev->epmaxpacketin[b]);
- }
- } /* if out */
- } /* if control */
-}
-
-/*
- * set the max packed value of all endpoints in the given configuration
- */
-int usb_set_maxpacket(struct usb_device *dev)
-{
- int i;
- int ii;
-
- for (i = 0; i < dev->config.bNumInterfaces; i++)
- {
- for (ii = 0; ii < dev->config.if_desc[i].bNumEndpoints; ii++)
- {
- usb_set_maxpacket_ep(dev,&dev->config.if_desc[i].ep_desc[ii]);
- }
- }
- return 0;
-}
-
-/*
- * Parse the config, located in buffer, and fills the dev->config structure.
- * Note that all little/big endian swapping are done automatically.
- */
-int usb_parse_config(struct usb_device *dev, unsigned char *buffer, int cfgno)
-{
- struct usb_descriptor_header *head;
- int index;
- int ifno;
- int epno;
- int curr_if_num;
-
- ifno = -1;
- epno = -1;
- curr_if_num = -1;
- dev->configno = cfgno;
- head = (struct usb_descriptor_header *) &buffer[0];
-
- if (head->bDescriptorType != USB_DT_CONFIG)
- {
- dbg(" ERROR: NOT USB_CONFIG_DESC (0x%x instead of 0x%x)\r\n", head->bDescriptorType, USB_DT_CONFIG);
- return -1;
- }
- memcpy(&dev->config, buffer, buffer[0]);
- dev->config.wTotalLength = swpw(dev->config.wTotalLength);
- dev->config.no_of_if = 0;
- index = dev->config.bLength;
-
- /*
- * Ok the first entry must be a configuration entry,
- * now process the others
- */
- head = (struct usb_descriptor_header *) &buffer[index];
-
- while (index + 1 < dev->config.wTotalLength)
- {
- switch (head->bDescriptorType)
- {
- case USB_DT_INTERFACE:
- if (((struct usb_interface_descriptor *) &buffer[index])->bInterfaceNumber != curr_if_num)
- {
- /* this is a new interface, copy new desc */
- ifno = dev->config.no_of_if;
- dev->config.no_of_if++;
- memcpy(&dev->config.if_desc[ifno], &buffer[index], buffer[index]);
- dev->config.if_desc[ifno].no_of_ep = 0;
- dev->config.if_desc[ifno].num_altsetting = 1;
- curr_if_num = dev->config.if_desc[ifno].bInterfaceNumber;
- }
- else
- {
- /* found alternate setting for the interface */
- dev->config.if_desc[ifno].num_altsetting++;
- }
- break;
-
- case USB_DT_ENDPOINT:
- epno = dev->config.if_desc[ifno].no_of_ep;
- /* found an endpoint */
- dev->config.if_desc[ifno].no_of_ep++;
- memcpy(&dev->config.if_desc[ifno].ep_desc[epno], &buffer[index], buffer[index]);
- dev->config.if_desc[ifno].ep_desc[epno].wMaxPacketSize = swpw(dev->config.if_desc[ifno].ep_desc[epno].wMaxPacketSize);
- dbg("if %d, ep %d\r\n", ifno, epno);
- break;
-
- default:
- if (head->bLength == 0)
- return 1;
- dbg("unknown Descriptor Type : %x\r\n", head->bDescriptorType);
-#ifdef USB_DEBUG
- {
- unsigned char *ch;
- int i;
-
- ch = (unsigned char *) head;
- for (i = 0; i < head->bLength; i++)
- {
- dbg(" %02X", *ch++);
- }
- dbg("\r\n");
- }
-#endif /* USB_DEBUG */
- break;
- }
- index += head->bLength;
- head = (struct usb_descriptor_header *) &buffer[index];
- }
- return 1;
-}
-
-/*
- * Clears an endpoint
- * endp: endpoint number in bits 0-3;
- * direction flag in bit 7 (1 = IN, 0 = OUT)
- */
-int usb_clear_halt(struct usb_device *dev, int pipe)
-{
- int result;
- int endp = usb_pipeendpoint(pipe) | (usb_pipein(pipe) << 7);
-
- result = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_CLEAR_FEATURE, USB_RECIP_ENDPOINT, 0, endp, NULL, 0, USB_CNTL_TIMEOUT * 3);
-
- /* don't clear if failed */
- if (result < 0)
- {
- return result;
- }
-
- /*
- * NOTE: we do not get status and verify reset was successful
- * as some devices are reported to lock up upon this check..
- */
- usb_endpoint_running(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe));
-
- /* toggle is reset on clear */
- usb_settoggle(dev, usb_pipeendpoint(pipe), usb_pipeout(pipe), 0);
-
- return 0;
-}
-
-/*
- * get_descriptor type
- */
-int usb_get_descriptor(struct usb_device *dev, unsigned char type, unsigned char index, void *buf, int size)
-{
- int res;
-
- dbg("dev=%d type=%d, index=%d\r\n", dev->devnum, type, index);
- res = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_DESCRIPTOR, USB_DIR_IN, (type << 8) + index, 0, buf, size, USB_CNTL_TIMEOUT);
- return res;
-}
-
-/*
- * gets configuration cfgno and store it in the buffer
- */
-int usb_get_configuration_no(struct usb_device *dev, unsigned char *buffer, int cfgno)
-{
- int result;
- unsigned int tmp;
- struct usb_config_descriptor *config;
-
- config = (struct usb_config_descriptor *) &buffer[0];
- result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno, buffer, 9);
-
- if (result < 9)
- {
- if (result < 0)
- {
- dbg("unable to get descriptor, error %lX\r\n", dev->status);
- }
- else
- {
- dbg("config descriptor too short (expected %i, got %i)\n", 9, result);
- }
- return -1;
- }
-
- tmp = swpw(config->wTotalLength);
-
- if (tmp > USB_BUFSIZ)
- {
- dbg("usb_get_configuration_no: failed to get descriptor - too long: %d\r\n", tmp);
- return -1;
- }
- result = usb_get_descriptor(dev, USB_DT_CONFIG, cfgno, buffer, tmp);
- dbg("get_conf_no %d Result %d, wLength %d\r\n", cfgno, result, tmp);
-
- return result;
-}
-
-/*
- * set address of a device to the value in dev->devnum.
- * This can only be done by addressing the device via the default address (0)
- */
-int usb_set_address(struct usb_device *dev)
-{
- int res;
-
- dbg("set address %d\r\n", dev->devnum);
- res = usb_control_msg(dev, usb_snddefctrl(dev), USB_REQ_SET_ADDRESS, 0, (dev->devnum), 0, NULL, 0, USB_CNTL_TIMEOUT);
- return res;
-}
-
-/*
- * set interface number to interface
- */
-int usb_set_interface(struct usb_device *dev, int interface, int alternate)
-{
- struct usb_interface_descriptor *if_face = NULL;
- int ret, i;
-
- dbg("set interface number=%d (alternate=%d)\r\n", interface, alternate);
-
- for (i = 0; i < dev->config.bNumInterfaces; i++)
- {
- if (dev->config.if_desc[i].bInterfaceNumber == interface)
- {
- if_face = &dev->config.if_desc[i];
-
- break;
- }
- }
-
- if (!if_face)
- {
- dbg("selecting invalid interface %d", interface);
-
- return -1;
- }
-
- /*
- * We should return now for devices with only one alternate setting.
- * According to 9.4.10 of the Universal Serial Bus Specification
- * Revision 2.0 such devices can return with a STALL. This results in
- * some USB sticks timeouting during initialization and then being
- * unusable in U-Boot.
- */
- if (if_face->num_altsetting == 1)
- {
- return 0;
- }
-
- ret = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_INTERFACE, USB_RECIP_INTERFACE, alternate, interface, NULL, 0, USB_CNTL_TIMEOUT * 5);
- if (ret < 0)
- {
- return ret;
- }
-
- return 0;
-}
-
-/*
- * set configuration number to configuration
- */
-int usb_set_configuration(struct usb_device *dev, int configuration)
-{
- int res;
-
- dbg("set configuration %d\r\n", configuration);
- /* set setup command */
- res = usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_CONFIGURATION, 0, configuration, 0, NULL, 0, USB_CNTL_TIMEOUT);
- if (res == 0)
- {
- dev->toggle[0] = 0;
- dev->toggle[1] = 0;
-
- return 0;
- }
- else
- {
- return -1;
- }
-}
-
-/*
- * set protocol to protocol
- */
-int usb_set_protocol(struct usb_device *dev, int ifnum, int protocol)
-{
- dbg("set protocol %d on interface %d\r\n", protocol, ifnum);
-
- return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_PROTOCOL, USB_TYPE_CLASS | USB_RECIP_INTERFACE,
- protocol, ifnum, NULL, 0, USB_CNTL_TIMEOUT);
-}
-
-/*
- * set idle
- */
-int usb_set_idle(struct usb_device *dev, int ifnum, int duration, int report_id)
-{
- dbg("set if %d idle for %d (report id %d)\r\n", ifnum, duration, report_id);
-
- return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_IDLE, USB_TYPE_CLASS | USB_RECIP_INTERFACE,
- (duration << 8) | report_id, ifnum, NULL, 0, USB_CNTL_TIMEOUT);
-}
-
-/*
- * get report
- */
-int usb_get_report(struct usb_device *dev, int ifnum, unsigned char type,
- unsigned char id, void *buf, int size)
-{
- dbg("get report on if %d, type %d, id %d\r\n", ifnum, type, id);
-
- return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_REPORT, USB_DIR_IN | USB_TYPE_CLASS | USB_RECIP_INTERFACE,
- (type << 8) + id, ifnum, buf, size, USB_CNTL_TIMEOUT);
-}
-
-/*
- * get class descriptor
- */
-int usb_get_class_descriptor(struct usb_device *dev, int ifnum,
- unsigned char type, unsigned char id, void *buf, int size)
-{
- dbg("get class descriptor of if %d, type %d, id %d\r\n", ifnum, type, id);
-
- return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_DESCRIPTOR, USB_RECIP_INTERFACE | USB_DIR_IN,
- (type << 8) + id, ifnum, buf, size, USB_CNTL_TIMEOUT);
-}
-
-/*
- * get string index in buffer
- */
-int usb_get_string(struct usb_device *dev, unsigned short langid, unsigned char index, void *buf, int size)
-{
- int i;
- int result;
-
- for (i = 0; i < 3; ++i)
- {
- /* some devices are flaky */
- result = usb_control_msg(dev, usb_rcvctrlpipe(dev, 0), USB_REQ_GET_DESCRIPTOR, USB_DIR_IN,
- (USB_DT_STRING << 8) + index, langid, buf, size, USB_CNTL_TIMEOUT);
- if (result > 0)
- {
- break;
- }
- }
- return result;
-}
-
-static void usb_try_string_workarounds(unsigned char *buf, int *length)
-{
- int newlength;
- int oldlength = *length;
-
- for (newlength = 2; newlength + 1 < oldlength; newlength += 2)
- {
- char c = buf[newlength];
-
- if ((c < ' ') || (c >= 127) || buf[newlength + 1])
- break;
- }
-
- if (newlength > 2)
- {
- buf[0] = newlength;
- *length = newlength;
- }
-}
-
-static int usb_string_sub(struct usb_device *dev, unsigned int langid, unsigned int index, unsigned char *buf)
-{
- int rc;
-
- /*
- * Try to read the string descriptor by asking for the maximum
- * possible number of bytes
- */
- rc = usb_get_string(dev, langid, index, buf, 255);
-
- /*
- * If that failed try to read the descriptor length, then
- * ask for just that many bytes
- */
- if (rc < 2)
- {
- rc = usb_get_string(dev, langid, index, buf, 2);
- if (rc == 2)
- {
- rc = usb_get_string(dev, langid, index, buf, buf[0]);
- }
- }
-
- if (rc >= 2)
- {
- if (!buf[0] && !buf[1])
- {
- usb_try_string_workarounds(buf, &rc);
- }
-
- /* There might be extra junk at the end of the descriptor */
- if (buf[0] < rc)
- {
- rc = buf[0];
- }
- rc = rc - (rc & 1); /* force a multiple of two */
- }
-
- if (rc < 2)
- {
- rc = -1;
- }
-
- return rc;
-}
-
-/*
- * usb_string:
- * Get string index and translate it to ascii.
- * returns string length (> 0) or error (< 0)
- */
-int usb_string(struct usb_device *dev, int index, char *buf, size_t size)
-{
- unsigned char *tbuf;
- int error;
- unsigned int u, idx;
-
- if (size <= 0 || !buf || !index)
- {
- return -1;
- }
-
- buf[0] = 0;
- tbuf = (unsigned char *) driver_mem_alloc(USB_BUFSIZ);
-
- if (tbuf == NULL)
- {
- dbg("usb_string: malloc failure\r\n");
- return -1;
- }
-
- /* get langid for strings if it's not yet known */
- if (!dev->have_langid)
- {
- error = usb_string_sub(dev, 0, 0, tbuf);
- if (error < 0)
- {
- err("error getting string descriptor 0 (error=%lx)\r\n", dev->status);
- driver_mem_free(tbuf);
- return -1;
- }
- else if (tbuf[0] < 4)
- {
- err("string descriptor 0 too short\r\n");
- driver_mem_free(tbuf);
- return -1;
- }
- else
- {
- dev->have_langid = -1;
- dev->string_langid = tbuf[2] | (tbuf[3] << 8);
- /* always use the first langid listed */
- dbg("USB device number %d default language ID 0x%x\r\n", dev->devnum, dev->string_langid);
- }
- }
- error = usb_string_sub(dev, dev->string_langid, index, tbuf);
- if (error < 0)
- {
- err("failed to get lang id\r\n");
- driver_mem_free(tbuf);
- return error;
- }
-
- size--; /* leave room for trailing NULL char in output buffer */
- for (idx = 0, u = 2; u < error; u += 2)
- {
- if (idx >= size)
- {
- break;
- }
- if (tbuf[u + 1]) /* high byte */
- {
- buf[idx++] = '?'; /* non-ASCII character */
- }
- else
- {
- buf[idx++] = tbuf[u];
- }
- }
- buf[idx] = 0;
- error = idx;
- driver_mem_free(tbuf);
- return error;
-}
-
-/*
- * USB device handling:
- * the USB device are static allocated [USB_MAX_DEVICE].
- */
-
-/*
- * Something got disconnected. Get rid of it, and all of its children.
- */
-void usb_disconnect(struct usb_device **pdev)
-{
- struct usb_device *dev = *pdev;
- if (dev != NULL)
- {
- int i;
-
- dbg("USB %d disconnect on device %d\r\n", dev->parent->usbnum, dev->parent->devnum);
- dbg("USB %d disconnected, device number %d\r\n", dev->usbnum, dev->devnum);
-
- if (dev->deregister != NULL)
- {
- dev->deregister(dev);
- }
-
- /* Free up all the children.. */
- for (i = 0; i < USB_MAXCHILDREN; i++)
- {
- if (dev->children[i] != NULL)
- {
- dbg("USB %d, disconnect children %d\r\n", dev->usbnum, dev->children[i]->devnum);
- usb_disconnect(&dev->children[i]);
- dev->children[i] = NULL;
- }
- }
-
- /* Free up the device itself, including its device number */
- if (dev->devnum > 0)
- {
- dev_index[dev->usbnum]--;
- memset(dev, 0, sizeof(struct usb_device));
- dev->devnum = -1;
- }
- *pdev = NULL;
- }
-}
-
-/*
- * returns a pointer to the device with the index [index].
- * if the device is not assigned (dev->devnum==-1) returns NULL
- */
-struct usb_device *usb_get_dev_index(int index, int index_bus)
-{
- struct usb_device *dev;
-
- if ((index_bus >= USB_MAX_BUS) || (index_bus < 0)
- || (index >= USB_MAX_DEVICE) || (index < 0))
- {
- return NULL;
- }
-
- dev = &usb_dev[(index_bus * USB_MAX_DEVICE) + index];
-
- if ((controller_priv[index_bus] == NULL) || (dev->devnum == -1))
- {
- return NULL;
- }
-
- return dev;
-}
-
-/*
- * returns a pointer of a new device structure or NULL, if
- * no device struct is available
- */
-struct usb_device *usb_alloc_new_device(int bus, void *priv)
-{
- int i;
- int index = dev_index[bus];
- struct usb_device *dev;
-
- dbg("USB %d new device %d\r\n", bus, index);
- if (index >= USB_MAX_DEVICE)
- {
- dbg("ERROR, too many USB Devices, max=%d\r\n", USB_MAX_DEVICE);
- return NULL;
- }
-
- /* default Address is 0, real addresses start with 1 */
- dev = &usb_dev[(bus * USB_MAX_DEVICE) + index];
- dev->devnum = index + 1;
- dev->maxchild = 0;
-
- for (i = 0; i < USB_MAXCHILDREN; dev->children[i++] = NULL)
- ;
-
- dev->parent = NULL;
- dev->priv_hcd = priv;
- dev->usbnum = bus;
- dev_index[bus]++;
-
- return dev;
-}
-
-// #define CONFIG_LEGACY_USB_INIT_SEQ
-/*
- * By the time we get here, the device has gotten a new device ID
- * and is in the default state. We need to identify the thing and
- * get the ball rolling..
- *
- * Returns 0 for success, != 0 for error.
- */
-int usb_new_device(struct usb_device *dev)
-{
- int addr;
- int error;
- int tmp;
- unsigned char *tmpbuf;
-
-#ifndef CONFIG_LEGACY_USB_INIT_SEQ
- struct usb_device_descriptor *desc;
- int port = -1;
- struct usb_device *parent = dev->parent;
- unsigned short portstatus;
-#endif
-
- if (dev == NULL)
- {
- err("called with NULL device\r\n");
- return 1;
- }
-
- /* We still haven't set the Address yet */
- addr = dev->devnum;
- dev->devnum = 0;
-
- tmpbuf = (unsigned char *) driver_mem_alloc(USB_BUFSIZ);
- if (tmpbuf == NULL)
- {
- err("malloc failure\r\n");
- return 1;
- }
-
-//#define CONFIG_LEGACY_USB_INIT_SEQ
-#ifdef CONFIG_LEGACY_USB_INIT_SEQ
- /*
- * this is the old and known way of initializing devices, it is
- * different than what Windows and Linux are doing. Windows and Linux
- * both retrieve 64 bytes while reading the device descriptor
- * Several USB stick devices report ERR: CTL_TIMEOUT, caused by an
- * invalid header while reading 8 bytes as device descriptor.
- */
- dev->descriptor.bMaxPacketSize0 = 8; /* Start off at 8 bytes */
- dev->maxpacketsize = PACKET_SIZE_8;
- dev->epmaxpacketin[0] = 8;
- dev->epmaxpacketout[0] = 8;
- error = usb_get_descriptor(dev, USB_DT_DEVICE, 0, &dev->descriptor, 8);
- if (err < 8)
- {
- err("\r\nUSB device not responding, giving up (status=%lX)\r\n", dev->status);
- driver_mem_free(tmpbuf);
- return 1;
- }
-#else
- /*
- * This is a Windows scheme of initialization sequence, with double
- * reset of the device (Linux uses the same sequence)
- * Some equipment is said to work only with such init sequence; this
- * patch is based on the work by Alan Stern:
- * http://sourceforge.net/mailarchive/forum.php?
- * thread_id=5729457&forum_id=5398
- */
-
- /*
- * send 64-byte GET-DEVICE-DESCRIPTOR request. Since the descriptor is
- * only 18 bytes long, this will terminate with a short packet. But if
- * the maxpacket size is 8 or 16 the device may be waiting to transmit
- * some more, or keeps on retransmitting the 8 byte header.
- */
- desc = (struct usb_device_descriptor *) tmpbuf;
- dev->descriptor.bMaxPacketSize0 = 64; /* Start off at 64 bytes */
-
- /* Default to 64 byte max packet size */
- dev->maxpacketsize = PACKET_SIZE_64;
- dev->epmaxpacketin[0] = 64;
- dev->epmaxpacketout[0] = 64;
- error = usb_get_descriptor(dev, USB_DT_DEVICE, 0, desc, 64);
-
- if (error < 0)
- {
- err("usb_new_device: usb_get_descriptor() failed\r\n");
- driver_mem_free(tmpbuf);
- return 1;
- }
- dev->descriptor.bMaxPacketSize0 = desc->bMaxPacketSize0;
-
- /* find the port number we're at */
- if (parent)
- {
- int j;
- for (j = 0; j < parent->maxchild; j++)
- {
- if (parent->children[j] == dev)
- {
- port = j;
- break;
- }
- }
- dbg("port = %d\r\n", port);
-
- if (port < 0)
- {
- err("usb_new_device: cannot locate device's port.\r\n");
- driver_mem_free(tmpbuf);
-
- return 1;
- }
-
- /* reset the port for the second time */
- error = hub_port_reset(dev->parent, port, &portstatus);
- if (error < 0)
- {
- err("\r\nCouldn't reset port %d\r\n", port);
- driver_mem_free(tmpbuf);
-
- return 1;
- }
- }
-#endif
- dev->epmaxpacketin[0] = dev->descriptor.bMaxPacketSize0;
- dev->epmaxpacketout[0] = dev->descriptor.bMaxPacketSize0;
-
- switch (dev->descriptor.bMaxPacketSize0)
- {
- case 8: dev->maxpacketsize = PACKET_SIZE_8; break;
- case 16: dev->maxpacketsize = PACKET_SIZE_16; break;
- case 32: dev->maxpacketsize = PACKET_SIZE_32; break;
- case 64: dev->maxpacketsize = PACKET_SIZE_64; break;
- }
-
- dev->devnum = addr;
- error = usb_set_address(dev); /* set address */
-
- if (error < 0)
- {
- err("\r\nUSB device not accepting new address (error=%lX)\r\n", dev->status);
- driver_mem_free(tmpbuf);
-
- return 1;
- }
-
- wait_us(10); /* Let the SET_ADDRESS settle */
- tmp = sizeof(dev->descriptor);
- error = usb_get_descriptor(dev, USB_DT_DEVICE, 0, &dev->descriptor, sizeof(dev->descriptor));
- if (error < tmp)
- {
- if (error < 0)
- {
- err("unable to get device descriptor (error=%d)\r\n", error);
- }
- else
- {
- err("USB device descriptor short read (expected %i, got %i)\r\n", tmp, error);
- }
- driver_mem_free(tmpbuf);
-
- return 1;
- }
-
- /* correct values */
- dev->descriptor.bcdUSB = swpw(dev->descriptor.bcdUSB);
- dev->descriptor.idVendor = swpw(dev->descriptor.idVendor);
- dev->descriptor.idProduct = swpw(dev->descriptor.idProduct);
- dev->descriptor.bcdDevice = swpw(dev->descriptor.bcdDevice);
-
- dbg("vendor: 0x%x, prod: 0x%x, dev: 0x%x\r\n",
- dev->descriptor.idVendor, dev->descriptor.idProduct, dev->descriptor.bcdDevice);
-
- /* only support for one config for now */
- usb_get_configuration_no(dev, &tmpbuf[0], 0);
- usb_parse_config(dev, &tmpbuf[0], 0);
- usb_set_maxpacket(dev);
-
- /* we set the default configuration here */
- if (usb_set_configuration(dev, dev->config.bConfigurationValue))
- {
- dbg("failed to set default configuration len %d, status %lX\r\n", dev->act_len, dev->status);
- driver_mem_free(tmpbuf);
-
- return -1;
- }
- dbg("new device strings: Manufacturer=%d, Product=%d, SerialNumber=%d\r\n",
- dev->descriptor.iManufacturer, dev->descriptor.iProduct,
- dev->descriptor.iSerialNumber);
-
- memset(dev->mf, 0, sizeof(dev->mf));
- memset(dev->prod, 0, sizeof(dev->prod));
- memset(dev->serial, 0, sizeof(dev->serial));
-
- if (dev->descriptor.iManufacturer)
- {
- usb_string(dev, dev->descriptor.iManufacturer, dev->mf, sizeof(dev->mf));
- }
- if (dev->descriptor.iProduct)
- {
- usb_string(dev, dev->descriptor.iProduct, dev->prod, sizeof(dev->prod));
- }
- if (dev->descriptor.iSerialNumber)
- {
- usb_string(dev, dev->descriptor.iSerialNumber, dev->serial, sizeof(dev->serial));
- }
- inf("Manufacturer %s\r\n", dev->mf);
- inf("Product %s\r\n", dev->prod);
- inf("SerialNumber %s\r\n", dev->serial);
-
- /* now probe if the device is a hub */
- usb_hub_probe(dev, 0);
- driver_mem_free(tmpbuf);
-
- return 0;
-}
-
-/*
- * build device Tree
- */
-void usb_scan_devices(void *priv)
-{
- int i;
- struct usb_device *dev;
-
- /* first make all devices unknown */
- for (i = 0; i < USB_MAX_DEVICE; i++)
- {
- memset(&usb_dev[(bus_index * USB_MAX_DEVICE) + i], 0, sizeof(struct usb_device));
- usb_dev[(bus_index * USB_MAX_DEVICE) + i].devnum = -1;
- }
- dev_index[bus_index] = 0;
-
- /*
- * device 0 is always present (root hub, so let it analyze)
- */
- dev = usb_alloc_new_device(bus_index, priv);
- if (usb_new_device(dev))
- {
- xprintf("No USB Device found\r\n");
- if (dev != NULL)
- {
- dev_index[bus_index]--;
- }
- }
- else
- {
- xprintf("%d USB Device(s) found\r\n", dev_index[bus_index]);
- }
-
- /* insert "driver" if possible */
- if (drv_usb_kbd_init() < 0)
- {
- xprintf("No USB keyboard found\r\n");
- }
- else
- {
- xprintf("USB HID keyboard driver installed\r\n");
- }
-
- if (drv_usb_mouse_init() < 0)
- {
- xprintf("No USB mouse found\r\n");
- }
- else
- {
- xprintf("USB HID mouse driver installed\r\n");
- }
- xprintf("Scan end\r\n");
-}
-
diff --git a/BaS_gcc/usb/usb_hub.c b/BaS_gcc/usb/usb_hub.c
deleted file mode 100644
index 851805e..0000000
--- a/BaS_gcc/usb/usb_hub.c
+++ /dev/null
@@ -1,624 +0,0 @@
-/*
- * HUB "Driver"
- * Probes device for being a hub and configure it
- */
-
-#include
-#include "bas_string.h"
-#include "bas_printf.h"
-#include "util.h" /* for byte swap funcs */
-#include "wait.h"
-#include
-#include "usb.h"
-#include "usb_hub.h"
-
-// // #define DEBUG
-#include "debug.h"
-
-static struct usb_hub_device hub_dev[USB_MAX_BUS][USB_MAX_HUB];
-static int usb_hub_index[USB_MAX_BUS];
-
-int usb_get_hub_descriptor(struct usb_device *dev, void *data, int size)
-{
- return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_DESCRIPTOR, USB_DIR_IN | USB_RT_HUB, USB_DT_HUB << 8, 0, data, size, USB_CNTL_TIMEOUT);
-}
-
-int usb_clear_hub_feature(struct usb_device *dev, int feature)
-{
- return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_CLEAR_FEATURE, USB_RT_HUB, feature, 0, NULL, 0, USB_CNTL_TIMEOUT);
-}
-
-int usb_clear_port_feature(struct usb_device *dev, int port, int feature)
-{
- return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_CLEAR_FEATURE, USB_RT_PORT, feature, port, NULL, 0, USB_CNTL_TIMEOUT);
-}
-
-int usb_set_port_feature(struct usb_device *dev, int port, int feature)
-{
- return usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_FEATURE, USB_RT_PORT, feature, port, NULL, 0, USB_CNTL_TIMEOUT);
-}
-
-int usb_get_hub_status(struct usb_device *dev, void *data)
-{
- return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_STATUS, USB_DIR_IN | USB_RT_HUB, 0, 0, data, sizeof(struct usb_hub_status), USB_CNTL_TIMEOUT);
-}
-
-int usb_get_port_status(struct usb_device *dev, int port, void *data)
-{
- return usb_control_msg(dev, usb_rcvctrlpipe(dev, 0),
- USB_REQ_GET_STATUS, USB_DIR_IN | USB_RT_PORT, 0, port, data, sizeof(struct usb_hub_status), USB_CNTL_TIMEOUT);
-}
-
-static void usb_hub_power_on(struct usb_hub_device *hub)
-{
- int i;
- struct usb_device *dev;
-
- dev = hub->pusb_dev;
- /* Enable power to the ports */
- dbg("enabling power on all ports\r\n");
- for (i = 0; i < dev->maxchild; i++)
- {
- usb_set_port_feature(dev, i + 1, USB_PORT_FEAT_POWER);
- dbg("port %d returns %lx\r\n", i + 1, dev->status);
- wait(hub->desc.bPwrOn2PwrGood * 2 * 1000);
- }
-}
-
-void usb_hub_reset(int bus_index)
-{
- usb_hub_index[bus_index] = 0;
-}
-
-struct usb_hub_device *usb_hub_allocate(void)
-{
- if (usb_hub_index[bus_index] < USB_MAX_HUB)
- {
- return &hub_dev[bus_index][usb_hub_index[bus_index]++];
- }
-
- dbg("ERROR: USB_MAX_HUB (%d) reached\r\n", USB_MAX_HUB);
-
- return NULL;
-}
-
-#define MAX_TRIES 5
-
-static inline char *portspeed(int portstatus)
-{
- if (portstatus & (1 << USB_PORT_FEAT_HIGHSPEED))
- {
- return "480 Mb/s";
- }
- else if (portstatus & (1 << USB_PORT_FEAT_LOWSPEED))
- {
- return "1.5 Mb/s";
- }
- else
- {
- return "12 Mb/s";
- }
-}
-
-int hub_port_reset(struct usb_device *dev, int port, unsigned short *portstat)
-{
- int tries;
- struct usb_port_status portsts;
- unsigned short portstatus, portchange;
-
- dbg("");
- dbg("hub_port_reset: resetting port %d...\r\n", port + 1);
-
- for (tries = 0; tries < MAX_TRIES; tries++)
- {
- usb_set_port_feature(dev, port + 1, USB_PORT_FEAT_RESET);
-
-#ifdef USB_POLL_HUB
- if (pxCurrentTCB != NULL)
- vTaskDelay((200 * configTICK_RATE_HZ) / 1000);
- else
-#endif
- wait(10 * 1000);
- if (usb_get_port_status(dev, port + 1, &portsts) < 0)
- {
- dbg("get_port_status failed status %lX\r\n", dev->status);
- return -1;
- }
-
- portstatus = swpw(portsts.wPortStatus);
- portchange = swpw(portsts.wPortChange);
-
- dbg("USB %d portstatus 0x%x, change 0x%x, %s\r\n", dev->usbnum, portstatus, portchange, portspeed(portstatus));
- dbg("STAT_C_CONNECTION = %d STAT_CONNECTION = %d USB_PORT_STAT_ENABLE = %d\r\n",
- (portchange & USB_PORT_STAT_C_CONNECTION) ? 1 : 0,
- (portstatus & USB_PORT_STAT_CONNECTION) ? 1 : 0,
- (portstatus & USB_PORT_STAT_ENABLE) ? 1 : 0);
-
- if ((portchange & USB_PORT_STAT_C_CONNECTION) || !(portstatus & USB_PORT_STAT_CONNECTION))
- {
- return -1;
- }
-
- if (portstatus & USB_PORT_STAT_ENABLE)
- {
- break;
- }
-
-#ifdef USB_POLL_HUB
- if (pxCurrentTCB != NULL)
- vTaskDelay((200*configTICK_RATE_HZ)/1000);
- else
-#endif
- wait(20 * 1000);
- }
-
- if (tries == MAX_TRIES)
- {
- dbg("USB %d, cannot enable port %d after %d retries, disabling port.\r\n", dev->usbnum, port + 1, MAX_TRIES);
- dbg("Maybe the USB cable is bad?\r\n");
-
- return -1;
- }
- usb_clear_port_feature(dev, port + 1, USB_PORT_FEAT_C_RESET);
-
- *portstat = portstatus;
-
- return 0;
-}
-
-void usb_hub_port_connect_change(struct usb_device *dev, int port)
-{
- struct usb_device *usb;
- struct usb_port_status portsts;
- unsigned short portstatus;
-
- /* Check status */
- if (usb_get_port_status(dev, port + 1, &portsts) < 0)
- {
- dbg("USB %d get_port_status failed\r\n", dev->usbnum);
-
- return;
- }
-
- portstatus = swpw(portsts.wPortStatus);
-#ifdef USB_DEBUG
- {
- unsigned short portchange;
-
- portchange = swpw(portsts.wPortChange);
- dbg("USB %d, portstatus %x, change %x, %s\r\n", dev->usbnum, portstatus, portchange, portspeed(portstatus));
- }
-#endif /* USB_DEBUG */
-
- /* Clear the connection change status */
- usb_clear_port_feature(dev, port + 1, USB_PORT_FEAT_C_CONNECTION);
-
- /* Disconnect any existing devices under this port */
-
- if (((!(portstatus & USB_PORT_STAT_CONNECTION))
- && (!(portstatus & USB_PORT_STAT_ENABLE))) || (dev->children[port]))
- {
- dbg("USB %d port %i disconnected\r\n", dev->usbnum, port + 1);
- usb_disconnect(&dev->children[port]);
-
- /* Return now if nothing is connected */
- if (!(portstatus & USB_PORT_STAT_CONNECTION))
- {
- return;
- }
- }
-#ifdef USB_POLL_HUB
- if (pxCurrentTCB != NULL)
- vTaskDelay((200*configTICK_RATE_HZ)/1000);
- else
-#endif
- wait(2000);
- /* Reset the port */
- if (hub_port_reset(dev, port, &portstatus) < 0)
- {
- dbg("USB %d cannot reset port %i!?\r\n", dev->usbnum, port + 1);
-
- return;
- }
-#ifdef USB_POLL_HUB
- if (pxCurrentTCB != NULL)
- vTaskDelay((200*configTICK_RATE_HZ)/1000);
- else
-#endif
- wait(2000);
-
- /* Allocate a new device struct for it */
- usb = usb_alloc_new_device(dev->usbnum, dev->priv_hcd);
-
- if (portstatus & USB_PORT_STAT_HIGH_SPEED)
- {
- usb->speed = USB_SPEED_HIGH;
- }
- else if (portstatus & USB_PORT_STAT_LOW_SPEED)
- {
- usb->speed = USB_SPEED_LOW;
- }
- else
- {
- usb->speed = USB_SPEED_FULL;
- }
-
- dbg("usb device = %p\r\n", usb);
- dev->children[port] = usb;
- usb->parent = dev;
-
- /* Run it through the hoops (find a driver, etc) */
- if (usb_new_device(usb))
- {
- /* Woops, disable the port */
- dbg("USB %d hub: disabling port %d\r\n", dev->usbnum, port + 1);
- usb_clear_port_feature(dev, port + 1, USB_PORT_FEAT_ENABLE);
- }
-
-#ifdef USB_POLL_HUB
- else if (pxCurrentTCB != NULL)
- {
- usb_kbd_register(usb);
- usb_mouse_register(usb);
-#ifdef CONFIG_USB_STORAGE
- usb_stor_register(usb);
-#endif /* CONFIG_USB_STORAGE */
- }
-#endif
-}
-
-static void usb_hub_events(struct usb_device *dev)
-{
- int i;
- struct usb_hub_device *hub = dev->hub;
-
- if (hub == NULL)
- {
- return;
- }
-
- for (i = 0; i < dev->maxchild; i++)
- {
- struct usb_port_status portsts;
- unsigned short portstatus, portchange;
-
- if (usb_get_port_status(dev, i + 1, &portsts) < 0)
- {
- dbg("get_port_status failed\r\n");
-
- continue;
- }
- portstatus = swpw(portsts.wPortStatus);
- portchange = swpw(portsts.wPortChange);
-
- dbg("USB %d Port %d Status %X Change %X\r\n", dev->usbnum, i + 1, portstatus, portchange);
-
- if (portchange & USB_PORT_STAT_C_CONNECTION)
- {
- dbg("USB %d port %d connection change\r\n", dev->usbnum, i + 1);
- usb_hub_port_connect_change(dev, i);
- }
-
- if (portchange & USB_PORT_STAT_C_ENABLE)
- {
- dbg("USB %d port %d enable change, status %x\r\n", dev->usbnum, i + 1, portstatus);
- usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_C_ENABLE);
-
- /*
- * EM interference sometimes causes bad shielded USB
- * devices to be shutdown by the hub, this hack enables
- * them again. Works at least with mouse driver
- */
- if (!(portstatus & USB_PORT_STAT_ENABLE) && (portstatus & USB_PORT_STAT_CONNECTION) && ((dev->children[i])))
- {
- dbg("USB %d already running port %i disabled by hub (EMI?), re-enabling...\r\n", dev->usbnum, i + 1);
- usb_hub_port_connect_change(dev, i);
- }
- }
-
- if (portstatus & USB_PORT_STAT_SUSPEND)
- {
- dbg("USB %d port %d suspend change\r\n", dev->usbnum, i + 1);
- usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_SUSPEND);
- }
-
- if (portchange & USB_PORT_STAT_C_OVERCURRENT)
- {
- dbg("USB %d port %d over-current change\r\n", dev->usbnum, i + 1);
- usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_C_OVER_CURRENT);
- usb_hub_power_on(hub);
- }
-
- if (portchange & USB_PORT_STAT_C_RESET)
- {
- dbg("USB %d port %d reset change\r\n", dev->usbnum, i + 1);
- usb_clear_port_feature(dev, i + 1, USB_PORT_FEAT_C_RESET);
- }
- } /* end for i all ports */
-}
-
-#ifdef USB_POLL_HUB
-void usb_poll_hub_task(void *pvParameters)
-{
- int index_bus = 0;
- portTickType timeout = configTICK_RATE_HZ/10;
- if (pvParameters);
- while(1)
- {
- if (xQueueAltReceive(queue_poll_hub, &index_bus, timeout) == pdPASS)
- {
- if ((index_bus >= 0) && (index_bus < USB_MAX_BUS) && (controller_priv[index_bus] != NULL))
- {
- dbg("USB %d event change\r\n", index_bus);
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- *vblsem = 0;
-#endif
- usb_hub_events(&usb_dev[index_bus * USB_MAX_DEVICE]);
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- *vblsem = 1;
-#endif
- }
- }
- else /* timeout */
- {
- int i;
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- *vblsem = 0;
-#endif
- for (i = 0; i < USB_MAX_BUS ; i++)
- {
- if (controller_priv[i] != NULL)
- usb_hub_events(&usb_dev[i * USB_MAX_DEVICE]);
- }
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- *vblsem = 1;
-#endif
- }
- timeout = portMAX_DELAY;
- }
-}
-#endif /* USB_POLL_HUB */
-
-int usb_hub_configure(struct usb_device *dev)
-{
- unsigned char *buffer;
- unsigned char *bitmap;
- struct usb_hub_descriptor *descriptor;
- int i;
- struct usb_hub_device *hub;
-
- /* "allocate" Hub device */
- hub = usb_hub_allocate();
- dev->hub = hub;
-
- if (hub == NULL)
- {
- dbg("could not allocate hub\r\n");
-
- return -1;
- }
-
- hub->pusb_dev = dev;
- buffer = (unsigned char *) driver_mem_alloc(USB_BUFSIZ);
-
- if (buffer == NULL)
- {
- dbg("driver_mem_alloc() failure\r\n");
- return -1;
- }
-
- /* Get the the hub descriptor */
- if (usb_get_hub_descriptor(dev, buffer, 4) < 0)
- {
- dbg("failed to get hub descriptor, giving up %lX\r\n", dev->status);
- driver_mem_free(buffer);
- return -1;
- }
-
- dbg("bLength:0x%02X bDescriptorType:0x%02X bNbrPorts:0x%02X\r\n", buffer[0], buffer[1], buffer[2]);
- descriptor = (struct usb_hub_descriptor *)buffer;
-
- /* silence compiler warning if USB_BUFSIZ is > 256 [= sizeof(char)] */
- i = descriptor->bLength;
-
- if (i > USB_BUFSIZ)
- {
- dbg("failed to get hub descriptor - too long: %d\r\n", descriptor->bLength);
- driver_mem_free(buffer);
-
- return -1;
- }
-
- if (usb_get_hub_descriptor(dev, buffer, descriptor->bLength) < 0)
- {
- dbg("failed to get hub descriptor 2nd giving up %lX\r\n", dev->status);
- driver_mem_free(buffer);
-
- return -1;
- }
-
- memcpy((unsigned char *) &hub->desc, buffer, descriptor->bLength);
-
- /* adjust 16bit values */
- hub->desc.wHubCharacteristics = swpw(descriptor->wHubCharacteristics);
-
- /* set the bitmap */
- bitmap = (unsigned char *) &hub->desc.DeviceRemovable[0];
-
- /* devices not removable by default */
-
- memset(bitmap, 0xff, (USB_MAXCHILDREN + 1 + 7) / 8);
- bitmap = (unsigned char *) &hub->desc.PortPowerCtrlMask[0];
- memset(bitmap, 0xff, (USB_MAXCHILDREN + 1 + 7) / 8); /* PowerMask = 1B */
-
- for (i = 0; i < ((hub->desc.bNbrPorts + 1 + 7) / 8); i++)
- {
- hub->desc.DeviceRemovable[i] = descriptor->DeviceRemovable[i];
- }
-
- for (i = 0; i < ((hub->desc.bNbrPorts + 1 + 7) / 8); i++)
- {
- hub->desc.DeviceRemovable[i] = descriptor->PortPowerCtrlMask[i];
- }
-
- dev->maxchild = descriptor->bNbrPorts;
- dbg("USB %d, %d ports detected\r\n", dev->usbnum, dev->maxchild);
- if (dev->maxchild >= 10)
- {
- dev->maxchild = 10;
- }
-
- switch(hub->desc.wHubCharacteristics & HUB_CHAR_LPSM)
- {
- case 0x00: dbg("ganged power switching\r\n"); break;
- case 0x01: dbg("individual port power switching\r\n"); break;
- case 0x02:
- case 0x03: dbg("unknown reserved power switching mode\r\n"); break;
- }
-
- if (hub->desc.wHubCharacteristics & HUB_CHAR_COMPOUND)
- {
- dbg("part of a compound device\r\n");
- }
- else
- {
- dbg("standalone hub\r\n");
- }
-
- switch(hub->desc.wHubCharacteristics & HUB_CHAR_OCPM)
- {
- case 0x00: dbg("global over-current protection\r\n"); break;
- case 0x08: dbg("individual port over-current protection\r\n"); break;
- case 0x10:
- case 0x18: dbg("no over-current protection\r\n"); break;
- }
-
- dbg("power on to power good time: %dms\r\n", descriptor->bPwrOn2PwrGood * 2);
- dbg("hub controller current requirement: %dmA\r\n", descriptor->bHubContrCurrent);
-
- for (i = 0; i < dev->maxchild; i++)
- {
- dbg("USB %d port %d is%s removable\r\n",
- dev->usbnum, i + 1,
- hub->desc.DeviceRemovable[(i + 1) / 8] & (1 << ((i + 1) % 8)) ? " not" : "");
- }
-
- if (sizeof(struct usb_hub_status) > USB_BUFSIZ)
- {
- dbg("usb_hub_configure: failed to get Status - too long: %d\r\n", descriptor->bLength);
- driver_mem_free(buffer);
-
- return -1;
- }
-
- if (usb_get_hub_status(dev, buffer) < 0)
- {
- dbg("usb_hub_configure: failed to get Status %lX\r\n", dev->status);
- driver_mem_free(buffer);
-
- return -1;
- }
-
-#ifdef DEBUG_HUB
- {
- struct usb_hub_status *hubsts;
-
- hubsts = (struct usb_hub_status *) buffer;
- dbg("get_hub_status returned status %X, change %X\r\n",
- swpw(hubsts->wHubStatus), swpw(hubsts->wHubChange));
- dbg("local power source is %s\r\n",
- (swpw(hubsts->wHubStatus) & HUB_STATUS_LOCAL_POWER) ? "lost (inactive)" : "good");
- dbg("%sover-current condition exists\r\n",
- (swpw(hubsts->wHubStatus) & HUB_STATUS_OVERCURRENT) ? "" : "no ");
- }
-#endif /* USB_DEBUG */
-
- usb_hub_power_on(hub);
-
-#ifdef USB_POLL_HUB
- if ((queue_poll_hub == NULL) && (pxCurrentTCB != NULL))
- {
- queue_poll_hub = xQueueCreate(64, sizeof(int));
- if (queue_poll_hub != NULL)
- {
- /* Create poll/event task */
- if (xTaskCreate(usb_poll_hub_task, (void *)"USBHub", configMINIMAL_STACK_SIZE, NULL, 16, NULL) != pdPASS)
- {
- vQueueDelete(queue_poll_hub);
- queue_poll_hub = NULL;
- }
- }
- vTaskDelay(configTICK_RATE_HZ);
- }
- if (queue_poll_hub == NULL)
-#endif
-
- usb_hub_events(dev);
- driver_mem_free(buffer);
-
- return 0;
-}
-
-int usb_hub_probe(struct usb_device *dev, int ifnum)
-{
- struct usb_interface_descriptor *iface;
- struct usb_endpoint_descriptor *ep;
- int ret;
-
- iface = &dev->config.if_desc[ifnum];
-
- /* Is it a hub? */
- if (iface->bInterfaceClass != USB_CLASS_HUB)
- {
- dbg("iface->bInterfaceClass != USB_CLASS_HUB (%d), %d instead\r\n", USB_CLASS_HUB, iface->bInterfaceClass);
- return 0;
- }
-
- /*
- * Some hubs have a subclass of 1, which AFAICT according to the
- * specs is not defined, but it works
- */
- if ((iface->bInterfaceSubClass != 0) && (iface->bInterfaceSubClass != 1))
- {
- dbg("iface->bInterfaceSubClass != {0, 1} (%d instead)\r\n", iface->bInterfaceSubClass);
-
- return 0;
- }
-
- /* Multiple endpoints? What kind of mutant ninja-hub is this? */
- if (iface->bNumEndpoints != 1)
- {
- dbg("iface->bNumEndpoints != 1 (%d instead)\r\n", iface->bNumEndpoints);
- return 0;
- }
-
- ep = &iface->ep_desc[0];
-
- /* Output endpoint? Curiousier and curiousier.. */
- if (!(ep->bEndpointAddress & USB_DIR_IN))
- {
- dbg("!(ep->bEndpointAddress != USB_DIR_IN (0x%x instead)\r\n", ep->bEndpointAddress);
-
- return 0;
- }
-
- /* If it's not an interrupt endpoint, we'd better punt! */
- if ((ep->bmAttributes & 3) != 3)
- {
- return 0;
- }
-
- /* We found a hub */
- dbg("USB %d hub found\r\n", dev->usbnum);
-
- ret = usb_hub_configure(dev);
-
- return ret;
-}
-
-
diff --git a/BaS_gcc/usb/usb_kbd.c b/BaS_gcc/usb/usb_kbd.c
deleted file mode 100644
index 251dc48..0000000
--- a/BaS_gcc/usb/usb_kbd.c
+++ /dev/null
@@ -1,1386 +0,0 @@
-/*
- * (C) Copyright 2001
- * Denis Peter, MPL AG Switzerland
- *
- * Part of this source has been derived from the Linux USB
- * project.
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- */
-
-#include "usb.h"
-#include "exceptions.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#ifdef USE_COUNTRYCODE
-static int usb_kbd_get_hid_desc(struct usb_device *dev);
-#endif
-
-/* under TOS Repeat keys are build by timer C so infinite (0) or 1000 is a good value */
-#define REPEAT_RATE 0 // 40 /* 40msec -> 25cps */
-
-#define MAX_VALUE_LOOKUP 0x90
-#define MAX_VALUE_ATARI 0x75
-
-#define NUM_LOCK 0x53
-#define CAPS_LOCK 0x39
-#define SCROLL_LOCK 0x47
-
-/* Modifier bits */
-#define LEFT_CNTR 0
-#define LEFT_SHIFT 1
-#define LEFT_ALT 2
-#define LEFT_GUI 3
-#define RIGHT_CNTR 4
-#define RIGHT_SHIFT 5
-#define RIGHT_ALT 6
-#define RIGHT_GUI 7
-
-/* HID bCountryCode */
-#define CC_NOT 0
-#define CC_ISO 13
-#define CC_USA 33
-#define CC_FRG 9
-#define CC_FRA 8
-#define CC_UK 32
-#define CC_SPA 25
-#define CC_ITA 14
-#define CC_SWE 29
-#define CC_SWF 27
-#define CC_SWG 28
-
-/* Language cookie */
-#define USA 0 /* English */
-#define FRG 1 /* German */
-#define FRA 2 /* French */
-#define UK 3 /* English */
-#define SPA 4 /* Spanish */
-#define ITA 5 /* Italian */
-#define SWE 6 /* Swiss */
-#define SWF 7 /* Swiss French */
-#define SWG 8 /* Swiss German */
-
-//extern _IOREC *iorec;
-//extern void (**ikbdvec)();
-
-static unsigned char *new_packet;
-static unsigned char old_packet[8];
-static unsigned char num_lock;
-static unsigned char caps_lock;
-static unsigned char scroll_lock;
-static unsigned char old_modifier;
-static union
-{
- struct
- {
- unsigned reserved1:3;
- unsigned force_alt_shift:1;
- unsigned right_shift_host:1;
- unsigned left_shift_host:1;
- unsigned alt_host:1;
- unsigned ctrl_host:1;
- unsigned key_forced:1;
- unsigned reserved2:3;
- unsigned altgr_usb:1;
- unsigned shift_usb:1;
- unsigned altgr_usb_break:1;
- unsigned shift_usb_break:1;
- } b;
- unsigned short s;
-} flags;
-
-static unsigned char *leds;
-static int kbd_installed;
-
-static unsigned char usb_kbd_to_atari_scancode[] =
-{
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x1E, 0x30, 0x2E, 0x20,
- // E F G H I J K L
- 0x12, 0x21, 0x22, 0x23, 0x17, 0x24, 0x25, 0x26,
- // M(,) N O P Q(A) R S T
- 0x32, 0x31, 0x18, 0x19, 0x10, 0x13, 0x1F, 0x14,
- // U V W(Z) X Y Z(W) 1 2
- 0x16, 0x2F, 0x11, 0x2D, 0x15, 0x2C, 0x02, 0x03,
- // 3 4 5 6 7 8 9 0
- 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x1C, 0x01, 0x0E, 0x0F, 0x39, 0x0C, 0x0D, 0x1A,
- // ]($) \(*) EUR1 ;(M) ' ` ,(;) .(:)
- 0x1B, 0x2B, 0x2B, 0x27, 0x28, 0x5B, 0x33, 0x34,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x35, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x41, 0x42, 0x43, 0x44, 0x62, 0x61, 0x49, 0x4C,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x4F, 0x52, 0x47, 0x45, 0x53, 0x55, 0x46, 0x4D,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x4B, 0x50, 0x48, 0x54, 0x65, 0x66, 0x4A, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x72, 0x6D, 0x6E, 0x6F, 0x6A, 0x6B, 0x6C, 0x67,
- // KP8 KP9 KP0 KP. >< APP POWER KP=
- 0x68, 0x69, 0x70, 0x71, 0x60, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x60, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x1D, 0x2A, 0x38, 0x56, 0x1D, 0x36, 0x38, 0x57 // virtual codes
-};
-
-static unsigned char usb_kbd_to_atari_fr_modifier[] =
-{
- /* This table can change host SHIFT & ALT states for each scancode, values */
- /* are in hexa : bit 7: 1 for a valid entry */
- /* bit 6: 1 for force CTRL */
- /* bit 5: ALT, bit 4: SHIFT states for the AltGR table */
- /* bit 3: ALT, bit 2: SHIFT states for the Shift table */
- /* bit 1: ALT, bit 0: SHIFT states for the Unshift table */
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // E F G H I J K L
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // M(,) N O P Q(A) R S T
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // U V W(Z) X Y Z(W) 1 2
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB4,
- // 3 4 5 6 7 8 9 0
- 0x00, 0xB4, 0xA4, 0x94, 0x00, 0xA5, 0x84, 0xA4,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xA4, 0xB4, 0x00,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xAA, 0x00,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x00, 0x00, 0x00, 0x95, 0x00, 0x95, 0x95, 0x00,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // KP8 KP9 KP0 KP. >< APP POWER KP=
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xEA
-};
-
-static unsigned char usb_kbd_to_atari_fr_unshift[] =
-{
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x1E, 0x30, 0x2E, 0x20,
- // E F G H I J K L
- 0x12, 0x21, 0x22, 0x23, 0x17, 0x24, 0x25, 0x26,
- // M(,) N O P Q(A) R S T
- 0x32, 0x31, 0x18, 0x19, 0x10, 0x13, 0x1F, 0x14,
- // U V W(Z) X Y Z(W) 1 2
- 0x16, 0x2F, 0x11, 0x2D, 0x15, 0x2C, 0x02, 0x03,
- // 3 4 5 6 7 8 9 0
- 0x04, 0x05, 0x06, 0x0D, 0x08, 0x0D, 0x0A, 0x0B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x1C, 0x01, 0x0E, 0x0F, 0x39, 0x0C, 0x35, 0x1A,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x1B, 0x1B, 0x00, 0x27, 0x28, 0x00, 0x33, 0x34,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x09, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x41, 0x42, 0x43, 0x44, 0x62, 0x61, 0x62, 0x4C,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x4F, 0x52, 0x47, 0x45, 0x53, 0x47, 0x46, 0x4D,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x4B, 0x50, 0x48, 0x00, 0x65, 0x66, 0x4A, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x72, 0x6D, 0x6E, 0x6F, 0x6A, 0x6B, 0x6C, 0x67,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0x68, 0x69, 0x70, 0x71, 0x60, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x60, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x1D, 0x2A, 0x38, 0x0F, 0x1D, 0x36, 0x00, 0x0F
-};
-
-static unsigned char usb_kbd_to_atari_fr_shift[] =
-{
- /* Hexa values, 00: unused => use the Unshift table */
- /* FF: invalid => no scancode */
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x1E, 0x30, 0x2E, 0x20,
- // E F G H I J K L
- 0x12, 0x21, 0x22, 0x23, 0x17, 0x24, 0x25, 0x26,
- // M(,) N O P Q(A) R S T
- 0x32, 0x31, 0x18, 0x19, 0x10, 0x13, 0x1F, 0x14,
- // U V W(Z) X Y Z(W) 1 2
- 0x16, 0x2F, 0x11, 0x2D, 0x15, 0x2C, 0x02, 0x03,
- // 3 4 5 6 7 8 9 0
- 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x1C, 0x01, 0x0E, 0x0F, 0x39, 0x0C, 0x35, 0x1A,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x29, 0xFF, 0x00, 0x27, 0x28, 0x00, 0x33, 0x34,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x07, 0x3A, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x5A, 0x5B, 0x5C, 0x5D, 0x62, 0x61, 0x62, 0x4C,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x4F, 0x52, 0x47, 0x48, 0x53, 0x47, 0x50, 0x4D,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x4B, 0x50, 0x48, 0x00, 0x65, 0x66, 0x4A, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x72, 0x6D, 0x6E, 0x6F, 0x6A, 0x6B, 0x6C, 0x67,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0x68, 0x69, 0x70, 0x71, 0x60, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x60, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x1D, 0x2A, 0x38, 0x0F, 0x1D, 0x36, 0x00, 0x0F
-};
-
-static unsigned char usb_kbd_to_atari_fr_altgr[] =
-{
- /* Hexa values, 00: unused => use the Unshift table */
- /* FF: invalid => no scancode */
- // A(Q) B C D
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // E F G H I J K L
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // M(,) N O P Q(A) R S T
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // U V W(Z) X Y Z(W) 1 2
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x2B,
- // 3 4 5 6 7 8 9 0
- 0x2B, 0x1A, 0x1A, 0x2B, 0x29, 0x28, 0x1A, 0x2B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1B, 0x1B, 0xFF,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x62, 0xFF, 0xFF,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0xFF, 0xFF, 0x61, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //VolUp Vold_packetn
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF
-};
-
-static unsigned char usb_kbd_to_atari_de_modifier[] =
-{
- /* This table can change host SHIFT & ALT states for each scancode, values */
- /* are in hexa : bit 7: 1 for a valid entry */
- /* bit 6: 1 for force CTRL */
- /* bit 5: ALT, bit 4: SHIFT states for the AltGR table */
- /* bit 3: ALT, bit 2: SHIFT states for the Shift table */
- /* bit 1: ALT, bit 0: SHIFT states for the Unshift table */
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // E F G H I J K L
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // M(,) N O P Q(A) R S T
- 0x00, 0x00, 0x00, 0x00, 0xA4, 0x00, 0x00, 0x00,
- // U V W(Z) X Y Z(W) 1 2
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // 3 4 5 6 7 8 9 0
- 0x00, 0x00, 0x00, 0x00, 0xB4, 0xA4, 0xA4, 0xB4,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x00, 0x00, 0x00, 0x00, 0x00, 0xB4, 0x00, 0x00,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x00, 0x80, 0x00, 0x00, 0x00, 0x91, 0x00, 0x00,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x00, 0x00, 0x00, 0x81, 0x00, 0x95, 0x81, 0x00,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // KP8 KP9 KP0 KP. >< APP POWER KP=
- 0x00, 0x00, 0x00, 0x00, 0x94, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x00, 0x00, 0x00, 0xEA, 0x00, 0x00, 0x00, 0xEA
-};
-
-static unsigned char usb_kbd_to_atari_de_unshift[] =
-{
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x1E, 0x30, 0x2E, 0x20,
- // E F G H I J K L
- 0x12, 0x21, 0x22, 0x23, 0x17, 0x24, 0x25, 0x26,
- // M(,) N O P Q(A) R S T
- 0x32, 0x31, 0x18, 0x19, 0x10, 0x13, 0x1F, 0x14,
- // U V W(Z) X Y Z(W) 1 2
- 0x16, 0x2F, 0x11, 0x2D, 0x15, 0x2C, 0x02, 0x03,
- // 3 4 5 6 7 8 9 0
- 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x1C, 0x01, 0x0E, 0x0F, 0x39, 0x0C, 0x0D, 0x1A,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x1B, 0x29, 0x00, 0x27, 0x28, 0x29, 0x33, 0x34,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x35, 0x3A, 0x3B, 0x3C, 0x3D, 0x3E, 0x3F, 0x40,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x41, 0x42, 0x43, 0x44, 0x63, 0x64, 0x62, 0x50,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x61, 0x52, 0x47, 0x48, 0x53, 0x47, 0x50, 0x4D,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x4B, 0x50, 0x48, 0x54, 0x65, 0x66, 0x4A, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x72, 0x6D, 0x6E, 0x6F, 0x6A, 0x6B, 0x6C, 0x67,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0x68, 0x69, 0x70, 0x71, 0x60, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x60, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x1D, 0x2A, 0x38, 0x0F, 0x1D, 0x36, 0x00, 0x0F
-};
-
-static unsigned char usb_kbd_to_atari_de_shift[] =
-{
- /* Hexa values, 00: unused => use the Unshift table */
- /* FF: invalid => no scancode */
- // A(Q) B C D
- 0x00, 0x00, 0x00, 0x00, 0x1E, 0x30, 0x2E, 0x20,
- // E F G H I J K L
- 0x12, 0x21, 0x22, 0x23, 0x17, 0x24, 0x25, 0x26,
- // M(,) N O P Q(A) R S T
- 0x32, 0x31, 0x18, 0x19, 0x10, 0x13, 0x1F, 0x14,
- // U V W(Z) X Y Z(W) 1 2
- 0x16, 0x2F, 0x11, 0x2D, 0x15, 0x2C, 0x02, 0x03,
- // 3 4 5 6 7 8 9 0
- 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0x1C, 0x01, 0x0E, 0x0F, 0x39, 0x0C, 0x0D, 0x1A,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x1B, 0x0D, 0x00, 0x27, 0x28, 0x34, 0x33, 0x34,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0x35, 0x3A, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0x5A, 0x5B, 0x5C, 0x5D, 0x63, 0x64, 0x62, 0x50,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0x61, 0x52, 0x47, 0x48, 0x53, 0x47, 0x50, 0x4D,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0x4B, 0x50, 0x48, 0x54, 0x65, 0x66, 0x4A, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0x72, 0x6D, 0x6E, 0x6F, 0x6A, 0x6B, 0x6C, 0x67,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0x68, 0x69, 0x70, 0x71, 0x60, 0x00, 0x00, 0x00,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x62, 0x60, 0x00,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0x00, 0x00, 0x61, 0x00, 0x00, 0x00, 0x00, 0x00,
- //VolUp Vold_packetn
- 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x1D, 0x2A, 0x38, 0x0F, 0x1D, 0x36, 0x00, 0x0F
-};
-
-static unsigned char usb_kbd_to_atari_de_altgr[] =
-{
- /* Hexa values, 00: unused => use the Unshift table */
- /* FF: invalid => no scancode */
- // A(Q) B C D
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // E F G H I J K L
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // M(,) N O P Q(A) R S T
- 0xFF, 0xFF, 0xFF, 0xFF, 0x1A, 0xFF, 0xFF, 0xFF,
- // U V W(Z) X Y Z(W) 1 2
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // 3 4 5 6 7 8 9 0
- 0xFF, 0xFF, 0xFF, 0xFF, 0x27, 0x27, 0x28, 0x28,
- // RET ESC BACK TAB SPACE -()) = [(^)
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1A, 0x2B, 0xFF,
- // ]($) \(*) ;(M) ' ` ,(;) .(:)
- 0x2B, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // /(!) CAPS F1 F2 F3 F4 F5 F6
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // F7 F8 F9 F10 F11 F12 PrtSc ScLoc
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //PAUSE INS HOME PgUp DEL END PgDn ->
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // <- DOWN UP NuLoc KP/ KP* KP- KP+
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x4E,
- // ENT KP1 KP2 KP3 KP4 KP5 KP6 KP7
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // KP8 KP9 KP0 KP. >< APP KP=
- 0xFF, 0xFF, 0xFF, 0xFF, 0x2B, 0xFF, 0xFF, 0xFF,
- // F13, F14, F15 F16 F17 F18 F19 F20
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- // F21 F22 F23 F24 EXEC HELP MENU SEL
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x62, 0xFF, 0xFF,
- // STOP AGAIN UNDO CUT COPY PASTE FIND MUTE
- 0xFF, 0xFF, 0x61, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //VolUp Vold_packetn
- 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
- //LCTRL LSHFT LALT LGUI RCTRL RSHFT RALT RGUI
- 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, 0xFF
-};
-
-static void *memscan(void *addr, int c, int size)
-{
- unsigned char *p = (unsigned char *) addr;
-
- while (size)
- {
- if (*p == (char) c)
- return (void *) p;
- p++;
- size--;
- }
- return (void *) p;
-}
-
-static int usb_kbd_probe(struct usb_device *dev, unsigned int ifnum);
-
-/*
- * deregistering the keyboard
- */
-int usb_kbd_deregister(struct usb_device *dev)
-{
- dev->irq_handle = NULL;
-
- if (new_packet != NULL)
- {
- driver_mem_free(new_packet);
- new_packet = NULL;
- }
-
- if (leds != NULL)
- {
- driver_mem_free(leds);
- leds = NULL;
- }
- kbd_installed = 0;
-
- dbg("USB KBD deregistered\r\n");
-
- return 1;
-}
-
-/* registering the keyboard */
-int usb_kbd_register(struct usb_device *dev)
-{
- if(!kbd_installed && (dev->devnum != -1) && (usb_kbd_probe(dev, 0) == 1))
- { /* Ok, we found a keyboard */
- dbg("USB KBD found (USB: %d, devnum: %d)\r\n", dev->usbnum, dev->devnum);
- num_lock = caps_lock = scroll_lock = old_modifier = 0;
- flags.s = 0;
- kbd_installed = 1;
- dev->deregister = usb_kbd_deregister;
- return 1;
- }
- /* no USB Keyboard found */
- return -1;
-}
-
-/* search for keyboard and register it if found */
-int drv_usb_kbd_init(void)
-{
- int i, j;
- if(kbd_installed)
- return -1;
- /* scan all USB Devices */
- for(j = 0; j < USB_MAX_BUS; j++)
- {
- for(i = 0; i < USB_MAX_DEVICE; i++)
- {
- struct usb_device *dev = usb_get_dev_index(i, j); /* get device */
- if(dev == NULL)
- break;
- if(usb_kbd_register(dev) > 0)
- return 1;
- }
- }
- /* no USB Keyboard found */
- return -1;
-}
-
-/**************************************************************************
- * Low Level drivers
- */
-
-/* set the LEDs. Since this is used in the irq routine, the control job
- is issued with a timeout of 0. This means, that the job is queued without
- waiting for job completion */
-
-static void usb_kbd_setled(struct usb_device *dev)
-{
- struct usb_interface_descriptor *iface = &dev->config.if_desc[0];
- unsigned char *pleds = (unsigned char *)(((unsigned long)leds + 3) & ~3);
- if(scroll_lock != 0)
- *pleds = 4;
- else
- *pleds = 0;
- if(caps_lock != 0)
- *pleds |= 2;
- if(num_lock != 0)
- *pleds |= 1;
- usb_control_msg(dev, usb_sndctrlpipe(dev, 0),
- USB_REQ_SET_REPORT, USB_TYPE_CLASS | USB_RECIP_INTERFACE, 0x200, iface->bInterfaceNumber, pleds, 1, 0);
-}
-
-static void usb_kbd_send_code(unsigned char code)
-{
- //if((iorec != NULL) && (ikbdvec != NULL))
- // call_ikbdvec(code, iorec, ikbdvec);
-}
-
-/*
- * Translate the scancode
- */
-static int usb_kbd_translate(unsigned char scancode, unsigned char modifier, int pressed)
-{
- unsigned char keycode = 0;
- unsigned char atari_modifier = 0;
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- int level;
-#endif
-
- int type = USA;
-
- (void) type; /* TODO: just for now - avoid compiler warning */
- dbg("USB KBD scancode: 0x%02x, modifier:0x%02x, pressed: %d\r\n", scancode, modifier, pressed);
- flags.b.force_alt_shift = 0;
-
- if(scancode > MAX_VALUE_LOOKUP)
- {
- keycode = 0;
- }
- else
- {
- if(scancode == 0x8A) /* LEFT ALT */
- {
- keycode = 0x38; /* Alt Atari */
- }
- else
- {
- unsigned char *unshift_table = NULL;
- unsigned char *shift_table = NULL;
- unsigned char *altgr_table = NULL;
- unsigned char *modifier_table = NULL;
- unsigned long lang = USA;
-
- //USB_COOKIE *p = usb_get_cookie('_AKP');
- //if(p != NULL)
- // lang = (p->v.l >> 8) & 0xFF;
-
-#ifdef USE_COUNTRYCODE
- switch(usb_kbd_hid_desc.bCountryCode)
- {
- case CC_USA: lang = USA; break;
- case CC_FRG: lang = FRG; break;
- case CC_FRA: lang = FRA; break;
- case CC_UK: lang = UK; break;
- case CC_SPA: lang = SPA; break;
- case CC_ITA: lang = ITA; break;
- case CC_SWE: lang = SWE; break;
- case CC_SWF: lang = SWF; break;
- case CC_SWG: lang = SWG; break;
- }
-#endif
- switch(lang)
- {
- case FRA:
- case SWF:
- unshift_table = usb_kbd_to_atari_fr_unshift;
- shift_table = usb_kbd_to_atari_fr_shift;
- altgr_table = usb_kbd_to_atari_fr_altgr;
- modifier_table = usb_kbd_to_atari_fr_modifier;
- type = FRA;
- break;
-
- case FRG:
- case SWG:
- unshift_table = usb_kbd_to_atari_de_unshift;
- shift_table = usb_kbd_to_atari_de_shift;
- altgr_table = usb_kbd_to_atari_de_altgr;
- modifier_table = usb_kbd_to_atari_de_modifier;
- type = FRG;
- break;
-
- default:
- unshift_table = usb_kbd_to_atari_scancode;
- break;
- }
-
- if (modifier != old_modifier)
- {
- if (((modifier & (1 << LEFT_SHIFT)) != 0) || ((modifier & (1 << RIGHT_SHIFT)) != 0))
- {
- if (!flags.b.shift_usb)
- {
- flags.b.shift_usb = 1;
- flags.b.shift_usb_break = 1;
- }
- }
- else
- {
- flags.b.shift_usb = 0;
- }
-
- if ((modifier & (1 << RIGHT_ALT)) != 0)
- {
- if (!flags.b.altgr_usb)
- {
- flags.b.altgr_usb = 1;
- flags.b.altgr_usb_break = 1;
- }
- }
- else
- {
- flags.b.altgr_usb = 0;
- }
- old_modifier = modifier;
- }
- else if (pressed)
- {
- if (!flags.b.altgr_usb)
- {
- flags.b.altgr_usb_break = 0;
- }
- if (!flags.b.shift_usb)
- {
- flags.b.shift_usb_break = 0;
- }
- }
- keycode = unshift_table[scancode];
-
- if ((modifier & (1 << LEFT_ALT)) == 0)
- {
- /*
- * This modifier table can change host SHIFT & ALT states for each scancode, values
- * are in hexa : bit 7: 1 for a valid entry
- * bit 6: 1 for force CTRL
- * bit 5: ALT, bit 4: SHIFT states for the AltGR table
- * bit 3: ALT, bit 2: SHIFT states for the Shift table
- * bit 1: ALT, bit 0: SHIFT states for the Unshift table
- */
- if (modifier_table != NULL)
- {
- atari_modifier = modifier_table[scancode];
- }
- else
- {
- atari_modifier = 0;
- }
-
- if ((atari_modifier & (1 << 7)) != 0)
- {
- flags.b.force_alt_shift = 1;
- }
- else
- {
- atari_modifier = 0;
- }
-
- if (flags.b.altgr_usb_break)
- {
- if (altgr_table[scancode])
- {
- keycode = altgr_table[scancode];
- if ((atari_modifier & (1 << 6)) != 0)
- {
- atari_modifier = (atari_modifier >> 4) | (atari_modifier & (1 << 6));
- }
- else
- {
- atari_modifier >>= 4;
- }
- }
- }
- else if (flags.b.shift_usb_break)
- {
- if (shift_table[scancode])
- {
- keycode = shift_table[scancode];
- if ((atari_modifier & (1 << 6)) != 0)
- {
- atari_modifier = (atari_modifier >> 2) | (atari_modifier & (1 << 6));
- }
- else
- {
- atari_modifier >>= 2;
- }
- }
- }
- }
- }
- }
- dbg("USB KBD atari-%s keycode:0x%02x, modifier:0x%02x, flags:0x%04x\r\n", (type == FRA) ? "fr" : (type == FRG) ? "de" : "us", keycode, atari_modifier, flags.s);
-
- if (keycode == 0x1D) /* CTRL */
- {
- if(pressed)
- flags.b.ctrl_host = 1;
- else
- flags.b.ctrl_host = 0;
- }
- if(keycode == 0x36) /* RSHIFT */
- {
- if(pressed)
- flags.b.right_shift_host = 1;
- else
- flags.b.right_shift_host = 0;
- }
- if(keycode == 0x2A) /* LSHIFT */
- {
- if(pressed)
- flags.b.left_shift_host = 1;
- else
- flags.b.left_shift_host = 0;
- }
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- level = set_ipl(7); /* mask interrupts for use call_ikbdvec() */
-#endif
- if(pressed && (flags.b.force_alt_shift))
- {
- flags.b.key_forced = 1;
- if(((atari_modifier & (1 << 6)) != 0) && flags.b.ctrl_host)
- usb_kbd_send_code(0x1D); /* CTRL */
- if((atari_modifier & (1 << 0)) == 0)
- {
- if(flags.b.left_shift_host)
- usb_kbd_send_code(0xAA); /* !LSHIFT */
- if(flags.b.right_shift_host)
- usb_kbd_send_code(0xB6); /* !RSHIFT */
- }
- else
- {
- if(!flags.b.left_shift_host)
- usb_kbd_send_code(0x2A); /* LSHIFT */
- if(!flags.b.right_shift_host && (keycode != 0x60)) /* < */
- usb_kbd_send_code(0x36); /* RSHIFT */
- }
- if((atari_modifier & (1 << 1)) == 0)
- {
- if(flags.b.alt_host)
- usb_kbd_send_code(0xB8); /* !ALT */
- }
- else
- {
- if(!flags.b.alt_host)
- usb_kbd_send_code(0x38); /* ALT */
- }
- }
- if ((keycode !=0) && (keycode <= MAX_VALUE_ATARI))
- usb_kbd_send_code(pressed ? keycode : keycode | 0x80);
- if(!pressed && (flags.b.force_alt_shift))
- {
- flags.b.key_forced = 0;
- if(((atari_modifier & (1 << 6)) != 0) && flags.b.ctrl_host)
- usb_kbd_send_code(0x9D); /* !CTRL */
- if((atari_modifier & (1 << 0)) == 0)
- {
- if(flags.b.left_shift_host)
- usb_kbd_send_code(0x2A); /* LSHIFT */
- if(flags.b.right_shift_host)
- usb_kbd_send_code(0x36); /* RSHIFT */
- }
- else
- {
- if(!flags.b.left_shift_host)
- usb_kbd_send_code(0xAA); /* !LSHIFT */
- if(!flags.b.right_shift_host)
- usb_kbd_send_code(0xB6); /* !RSHIFT */
- }
- if((atari_modifier & (1 << 1)) == 0)
- {
- if(flags.b.alt_host)
- usb_kbd_send_code(0x38); /* ALT */
- }
- else
- {
- if(!flags.b.alt_host)
- usb_kbd_send_code(0xB8); /* !ALT */
- }
- }
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- set_ipl(level);
-#endif
- if (pressed == 1)
- {
- if(scancode == NUM_LOCK)
- {
- num_lock = ~num_lock;
- return 1;
- }
- if(scancode == CAPS_LOCK)
- {
- caps_lock = ~caps_lock;
- return 1;
- }
- if(scancode == SCROLL_LOCK)
- {
- scroll_lock = ~scroll_lock;
- return 1;
- }
- }
- return 0;
-}
-
-/* Interrupt service routine */
-static int usb_kbd_irq(struct usb_device *dev)
-{
- int i,res;
- if((dev->irq_status != 0) || (dev->irq_act_len != 8))
- {
- dbg("USB KBD error %lX, len %d\r\n",dev->irq_status,dev->irq_act_len);
- return 1;
- }
- res = 0;
- for(i = 2; i < 8; i++)
- {
- if(old_packet[i] > 3 && memscan(&new_packet[2], old_packet[i], 6) == &new_packet[8])
- {
- res |= usb_kbd_translate(old_packet[i], new_packet[0], 0);
- old_packet[0] = new_packet[0];
- }
- if(new_packet[i] > 3 && memscan(&old_packet[2], new_packet[i], 6) == &old_packet[8])
- {
- res |= usb_kbd_translate(new_packet[i], new_packet[0], 1);
- old_packet[0] = new_packet[0];
- }
- }
- if(new_packet[0] != old_packet[0]) /* modifier change */
- {
- unsigned char modifier_change = new_packet[0] ^ old_packet[0];
- if(modifier_change & (1 << LEFT_CNTR))
- res |= usb_kbd_translate(0x88, new_packet[0], (new_packet[0] & (1 << LEFT_CNTR)) ? 1 : 0);
- if(modifier_change & (1 << LEFT_SHIFT))
- res |= usb_kbd_translate(0x89, new_packet[0], (new_packet[0] & (1 << LEFT_SHIFT)) ? 1 : 0);
- if(modifier_change & (1 << LEFT_ALT))
- res |= usb_kbd_translate(0x8A, new_packet[0], (new_packet[0] & (1 << LEFT_ALT)) ? 1 : 0);
- if(modifier_change & (1 << LEFT_GUI))
- res |= usb_kbd_translate(0x8B, new_packet[0], (new_packet[0] & (1 << LEFT_GUI)) ? 1 : 0);
- if(modifier_change & (1 << RIGHT_CNTR))
- res |= usb_kbd_translate(0x8C, new_packet[0], (new_packet[0] & (1 << RIGHT_CNTR)) ? 1 : 0);
- if(modifier_change & (1 << RIGHT_SHIFT))
- res |= usb_kbd_translate(0x8D, new_packet[0], (new_packet[0] & (1 << RIGHT_SHIFT)) ? 1 : 0);
- if(modifier_change & (1 << RIGHT_ALT))
- res |= usb_kbd_translate(0x8E, new_packet[0], (new_packet[0] & (1 << RIGHT_ALT)) ? 1 : 0);
- if(modifier_change & (1 << RIGHT_GUI))
- res |= usb_kbd_translate(0x8F, new_packet[0], (new_packet[0] & (1 << RIGHT_GUI)) ? 1 : 0);
- }
- if(res == 1)
- usb_kbd_setled(dev);
- memcpy(&old_packet[0], &new_packet[0], 8);
- return 1; /* install IRQ Handler again */
-}
-
-/*
- * probes the USB device dev for keyboard type
- */
-static int usb_kbd_probe(struct usb_device *dev, unsigned int ifnum)
-{
- struct usb_interface_descriptor *iface;
- struct usb_endpoint_descriptor *ep;
- int pipe;
- int maxp;
-
- if (dev->descriptor.bNumConfigurations != 1)
- {
- dbg("device has more than one single configuration\r\n");
-
- return 0;
- }
-
- iface = &dev->config.if_desc[ifnum];
-
- if (iface->bInterfaceClass != USB_CLASS_HID)
- {
- dbg("device is not a HID device\r\n");
-
- return 0;
- }
-
- if(iface->bInterfaceSubClass != 1)
- {
- dbg("device interface subclass != USB_SUB_HID_BOOT\r\n");
-
- return 0;
- }
-
- if (iface->bInterfaceProtocol != USB_PROT_HID_KEYBOARD)
- {
- dbg("device is not a keyboard\r\n");
-
- return 0;
- }
-
- if (iface->bNumEndpoints != 1)
- {
- dbg("device has %d endpoints instead of 1\r\n", iface->bNumEndpoints);
-
- return 0;
- }
-
- ep = &iface->ep_desc[0];
-
- if (!(ep->bEndpointAddress & 0x80))
- {
- dbg("ep->bEndpointAddress & 0x80 = 0x%x\r\n", ep->bEndpointAddress & 0x80);
-
- return 0;
- }
-
- if ((ep->bmAttributes & 3) != 3)
- {
- dbg("ep->bmAttributes & 3 != 3 (%d)\r\n", ep->bmAttributes & 3);
-
- return 0;
- }
-
- leds = (unsigned char *) driver_mem_alloc(8);
-
- if (leds == NULL)
- {
- dbg("could not allocate memory for leds\r\n");
-
- return 0;
- }
-
- new_packet = (unsigned char *) driver_mem_alloc(8);
- if (new_packet == NULL)
- {
- dbg("could not allocate memory for new_packed\r\n");
-
- driver_mem_free(leds);
-
- return 0;
- }
-
- dbg("USB KBD found, set protocol...\r\n");
-
- /* ok, we found a USB Keyboard, install it */
-#ifdef USE_COUNTRYCODE
- if(usb_kbd_get_hid_desc(dev) < 0)
- usb_kbd_hid_desc.bCountryCode = CC_NOT;
-#endif
-
- usb_set_protocol(dev, iface->bInterfaceNumber, 0);
-
- dbg("USB KBD found, set idle...\r\n");
- usb_set_idle(dev, iface->bInterfaceNumber, REPEAT_RATE, 0);
-
- memset(&new_packet[0], 0, 8);
- memset(&old_packet[0], 0, 8);
-
- pipe = usb_rcvintpipe(dev, ep->bEndpointAddress);
-
- maxp = usb_maxpacket(dev, pipe);
-
- dev->irq_handle = usb_kbd_irq;
-
- dbg("USB KBD enable interrupt pipe (maxp: %d)...\r\n", maxp);
- usb_submit_int_msg(dev, pipe, &new_packet[0], maxp > 8 ? 8 : maxp, ep->bInterval);
-
- return 1;
-}
-
-#ifdef USE_COUNTRYCODE
-
-/*
- * We parse each description item into this structure. Short items data
- * values are expanded to 32-bit signed int, long items contain a pointer
- * into the data area.
- */
-
-struct hid_item
-{
- unsigned char format;
- unsigned char size;
- unsigned char type;
- unsigned char tag;
- union
- {
- unsigned char u_8;
- char s_8;
- unsigned short u_16;
- short s_16;
- unsigned long u_32;
- long s_32;
- unsigned char *longdata;
- } data;
-};
-
-/* HID report item format */
-#define HID_ITEM_FORMAT_SHORT 0
-#define HID_ITEM_FORMAT_LONG 1
-
-/* Special tag indicating long items */
-#define HID_ITEM_TAG_LONG 15
-
-#ifdef USB_KBD_DEBUG
-
-void usb_kbd_display_hid(struct usb_hid_descriptor *hid)
-{
- board_printf("USB_HID_DESC:\r\n");
- board_printf(" bLenght 0x%x\r\n",hid->bLength);
- board_printf(" bcdHID 0x%x\r\n",hid->bcdHID);
- board_printf(" bCountryCode %d\r\n",hid->bCountryCode);
- board_printf(" bNumDescriptors 0x%x\r\n",hid->bNumDescriptors);
- board_printf(" bReportDescriptorType 0x%x\r\n",hid->bReportDescriptorType);
- board_printf(" wDescriptorLength 0x%x\r\n",hid->wDescriptorLength);
-}
-
-/*
- * Fetch a report description item from the data stream. We support long
- * items, though they are not used yet.
- */
-
-static int fetch_item(unsigned char *start, unsigned char *end, struct hid_item *item)
-{
- if((end - start) > 0)
- {
- unsigned char b = *start++;
- item->type = (b >> 2) & 3;
- item->tag = (b >> 4) & 15;
- if(item->tag == HID_ITEM_TAG_LONG)
- {
- item->format = HID_ITEM_FORMAT_LONG;
- if((end - start) >= 2)
- {
- item->size = *start++;
- item->tag = *start++;
- if((end - start) >= item->size)
- {
- item->data.longdata = start;
- start += item->size;
- return item->size;
- }
- }
- }
- else
- {
- item->format = HID_ITEM_FORMAT_SHORT;
- item->size = b & 3;
- switch(item->size)
- {
- case 0:
- return item->size;
- case 1:
- if((end - start) >= 1)
- {
- item->data.u_8 = *start++;
- return item->size;
- }
- break;
- case 2:
- if((end - start) >= 2)
- {
- item->data.u_16 = le16_to_cpu(*(unsigned short *)start);
- start+=2;
- return item->size;
- }
- case 3:
- item->size++;
- if((end - start) >= 4)
- {
- item->data.u_32 = le32_to_cpu(*(unsigned long *)start);
- start+=4;
- return item->size;
- }
- }
- }
- }
- return -1;
-}
-
-#endif /* USB_KBD_DEBUG */
-
-/*
- * HID report descriptor item type (prefix bit 2,3)
- */
-
-#define HID_ITEM_TYPE_MAIN 0
-#define HID_ITEM_TYPE_GLOBAL 1
-#define HID_ITEM_TYPE_LOCAL 2
-#define HID_ITEM_TYPE_RESERVED 3
-/*
- * HID report descriptor main item tags
- */
-
-#define HID_MAIN_ITEM_TAG_INPUT 8
-#define HID_MAIN_ITEM_TAG_OUTPUT 9
-#define HID_MAIN_ITEM_TAG_FEATURE 11
-#define HID_MAIN_ITEM_TAG_BEGIN_COLLECTION 10
-#define HID_MAIN_ITEM_TAG_END_COLLECTION 12
-/*
- * HID report descriptor main item contents
- */
-
-#define HID_MAIN_ITEM_CONSTANT 0x001
-#define HID_MAIN_ITEM_VARIABLE 0x002
-#define HID_MAIN_ITEM_RELATIVE 0x004
-#define HID_MAIN_ITEM_WRAP 0x008
-#define HID_MAIN_ITEM_NONLINEAR 0x010
-#define HID_MAIN_ITEM_NO_PREFERRED 0x020
-#define HID_MAIN_ITEM_NULL_STATE 0x040
-#define HID_MAIN_ITEM_VOLATILE 0x080
-#define HID_MAIN_ITEM_BUFFERED_BYTE 0x100
-
-/*
- * HID report descriptor collection item types
- */
-
-#define HID_COLLECTION_PHYSICAL 0
-#define HID_COLLECTION_APPLICATION 1
-#define HID_COLLECTION_LOGICAL 2
-/*
- * HID report descriptor global item tags
- */
-
-#define HID_GLOBAL_ITEM_TAG_USAGE_PAGE 0
-#define HID_GLOBAL_ITEM_TAG_LOGICAL_MINIMUM 1
-#define HID_GLOBAL_ITEM_TAG_LOGICAL_MAXIMUM 2
-#define HID_GLOBAL_ITEM_TAG_PHYSICAL_MINIMUM 3
-#define HID_GLOBAL_ITEM_TAG_PHYSICAL_MAXIMUM 4
-#define HID_GLOBAL_ITEM_TAG_UNIT_EXPONENT 5
-#define HID_GLOBAL_ITEM_TAG_UNIT 6
-#define HID_GLOBAL_ITEM_TAG_REPORT_SIZE 7
-#define HID_GLOBAL_ITEM_TAG_REPORT_ID 8
-#define HID_GLOBAL_ITEM_TAG_REPORT_COUNT 9
-#define HID_GLOBAL_ITEM_TAG_PUSH 10
-#define HID_GLOBAL_ITEM_TAG_POP 11
-
-/*
- * HID report descriptor local item tags
- */
-
-#define HID_LOCAL_ITEM_TAG_USAGE 0
-#define HID_LOCAL_ITEM_TAG_USAGE_MINIMUM 1
-#define HID_LOCAL_ITEM_TAG_USAGE_MAXIMUM 2
-#define HID_LOCAL_ITEM_TAG_DESIGNATOR_INDEX 3
-#define HID_LOCAL_ITEM_TAG_DESIGNATOR_MINIMUM 4
-#define HID_LOCAL_ITEM_TAG_DESIGNATOR_MAXIMUM 5
-#define HID_LOCAL_ITEM_TAG_STRING_INDEX 7
-#define HID_LOCAL_ITEM_TAG_STRING_MINIMUM 8
-#define HID_LOCAL_ITEM_TAG_STRING_MAXIMUM 9
-#define HID_LOCAL_ITEM_TAG_DELIMITER 10
-
-#ifdef USB_KBD_DEBUG
-static void usb_kbd_show_item(struct hid_item *item)
-{
- switch(item->type)
- {
- case HID_ITEM_TYPE_MAIN:
- switch(item->tag)
- {
- case HID_MAIN_ITEM_TAG_INPUT: board_printf("Main Input"); break;
- case HID_MAIN_ITEM_TAG_OUTPUT: board_printf("Main Output"); break;
- case HID_MAIN_ITEM_TAG_FEATURE: board_printf("Main Feature"); break;
- case HID_MAIN_ITEM_TAG_BEGIN_COLLECTION: board_printf("Main Begin Collection"); break;
- case HID_MAIN_ITEM_TAG_END_COLLECTION: board_printf("Main End Collection"); break;
- default: board_printf("Main reserved %d",item->tag); break;
- }
- break;
- case HID_ITEM_TYPE_GLOBAL:
- switch(item->tag)
- {
- case HID_GLOBAL_ITEM_TAG_USAGE_PAGE: board_printf("- Global Usage Page"); break;
- case HID_GLOBAL_ITEM_TAG_LOGICAL_MINIMUM: board_printf("- Global Logical Minimum"); break;
- case HID_GLOBAL_ITEM_TAG_LOGICAL_MAXIMUM: board_printf("- Global Logical Maximum"); break;
- case HID_GLOBAL_ITEM_TAG_PHYSICAL_MINIMUM: board_printf("- Global physical Minimum"); break;
- case HID_GLOBAL_ITEM_TAG_PHYSICAL_MAXIMUM: board_printf("- Global physical Maximum"); break;
- case HID_GLOBAL_ITEM_TAG_UNIT_EXPONENT: board_printf("- Global Unit Exponent"); break;
- case HID_GLOBAL_ITEM_TAG_UNIT: board_printf("- Global Unit"); break;
- case HID_GLOBAL_ITEM_TAG_REPORT_SIZE: board_printf("- Global Report Size"); break;
- case HID_GLOBAL_ITEM_TAG_REPORT_ID: board_printf("- Global Report ID"); break;
- case HID_GLOBAL_ITEM_TAG_REPORT_COUNT: board_printf("- Global Report Count"); break;
- case HID_GLOBAL_ITEM_TAG_PUSH: board_printf("- Global Push"); break;
- case HID_GLOBAL_ITEM_TAG_POP: board_printf("- Global Pop"); break;
- default: board_printf("- Global reserved %d",item->tag); break;
- }
- break;
- case HID_ITEM_TYPE_LOCAL:
- switch(item->tag)
- {
- case HID_LOCAL_ITEM_TAG_USAGE: board_printf("-- Local Usage"); break;
- case HID_LOCAL_ITEM_TAG_USAGE_MINIMUM: board_printf("-- Local Usage Minimum"); break;
- case HID_LOCAL_ITEM_TAG_USAGE_MAXIMUM: board_printf("-- Local Usage Maximum"); break;
- case HID_LOCAL_ITEM_TAG_DESIGNATOR_INDEX: board_printf("-- Local Designator Index"); break;
- case HID_LOCAL_ITEM_TAG_DESIGNATOR_MINIMUM: board_printf("-- Local Designator Minimum"); break;
- case HID_LOCAL_ITEM_TAG_DESIGNATOR_MAXIMUM: board_printf("-- Local Designator Maximum"); break;
- case HID_LOCAL_ITEM_TAG_STRING_INDEX: board_printf("-- Local String Index"); break;
- case HID_LOCAL_ITEM_TAG_STRING_MINIMUM: board_printf("-- Local String Minimum"); break;
- case HID_LOCAL_ITEM_TAG_STRING_MAXIMUM: board_printf("-- Local String Maximum"); break;
- case HID_LOCAL_ITEM_TAG_DELIMITER: board_printf("-- Local Delimiter"); break;
- default: board_printf("-- Local reserved %d",item->tag); break;
- }
- break;
- default:
- board_printf("--- reserved %d",item->type);
- break;
- }
- board_printf(" ");
- switch(item->size)
- {
- case 1: board_printf("%d",item->data.u_8); break;
- case 2: board_printf("%d",item->data.u_16); break;
- case 4: board_printf("%ld",item->data.u_32); break;
- }
- board_printf("\r\n");
-}
-#endif /* USB_KBD_DEBUG */
-
-static int usb_kbd_get_hid_desc(struct usb_device *dev)
-{
- unsigned char *buffer = (unsigned char *)driver_mem_alloc(256);
- struct usb_descriptor_header *head;
- struct usb_config_descriptor *config;
- int index, len;
-#ifdef USB_KBD_DEBUG
- int i;
- unsigned char *start, *end;
- struct hid_item item;
-#endif
- if(buffer == NULL)
- return -1;
- if(usb_get_configuration_no(dev, &buffer[0], 0) == -1)
- {
- driver_mem_free(buffer);
- return -1;
- }
- head = (struct usb_descriptor_header *)&buffer[0];
- if(head->bDescriptorType!=USB_DT_CONFIG)
- {
- dbg(" ERROR: NOT USB_CONFIG_DESC %x\r\n",head->bDescriptorType);
- driver_mem_free(buffer);
- return -1;
- }
- index = head->bLength;
- config = (struct usb_config_descriptor *)&buffer[0];
- len = le16_to_cpu(config->wTotalLength);
- /* Ok the first entry must be a configuration entry, now process the others */
- head = (struct usb_descriptor_header *)&buffer[index];
- while(index+1 < len)
- {
- if(head->bDescriptorType == USB_DT_HID)
- {
- dbg("HID desc found\r\n");
- memcpy(&usb_kbd_hid_desc, &buffer[index],buffer[index]);
- le16_to_cpus(&usb_kbd_hid_desc.bcdHID);
- le16_to_cpus(&usb_kbd_hid_desc.wDescriptorLength);
-#ifdef USB_KBD_DEBUG
- usb_kbd_display_hid(&usb_kbd_hid_desc);
-#endif
- len = 0;
- break;
- }
- index += head->bLength;
- head = (struct usb_descriptor_header *)&buffer[index];
- }
- if(len > 0)
- {
- driver_mem_free(buffer);
- return -1;
- }
-#ifdef USB_KBD_DEBUG
- len = usb_kbd_hid_desc.wDescriptorLength;
- if((index = usb_get_class_descriptor(dev, 0, USB_DT_REPORT, 0, &buffer[0], len)) < 0)
- {
- dbg("reading report descriptor failed\r\n");
- driver_mem_free(buffer);
- return -1;
- }
- dbg(" report descriptor (size %u, read %d)\r\n", len, index);
- start = &buffer[0];
- end = &buffer[len];
- i = 0;
- do
- {
- index = fetch_item(start, end, &item);
- i += index;
- i++;
- if(index >= 0)
- usb_kbd_show_item(&item);
- start += index;
- start++;
- }
- while(index >= 0);
-#endif /* USB_KBD_DEBUG */
- driver_mem_free(buffer);
- return 0;
-}
-
-#endif /* USE_COUNTRYCODE */
-
-/*
- usb_get_report(dev, 0, 0, 1, &new_packet[0], 8);
-*/
-
diff --git a/BaS_gcc/usb/usb_mouse.c b/BaS_gcc/usb/usb_mouse.c
deleted file mode 100644
index 89ae9d7..0000000
--- a/BaS_gcc/usb/usb_mouse.c
+++ /dev/null
@@ -1,296 +0,0 @@
-/*
- *
- * See file CREDITS for list of people who contributed to this
- * project.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License as
- * published by the Free Software Foundation; either version 2 of
- * the License, or (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
- * MA 02111-1307 USA
- *
- */
-
-#include
-#include "bas_printf.h"
-#include "usb.h"
-#include "exceptions.h"
-#include "driver_mem.h"
-
-// // #define DEBUG
-#include "debug.h"
-
-extern void ltoa(char *buf, long n, unsigned long base);
-extern void call_mousevec(unsigned char *data, void (**mousevec)(void *));
-//extern void call_ikbdvec(unsigned char code, _IOREC *iorec, void (**ikbdvec)());
-
-static unsigned char *new;
-static unsigned char old[8];
-static int mouse_installed;
-
-/* forward declaration */
-static int usb_mouse_probe(struct usb_device *dev, unsigned int ifnum);
-
-/* deregistering the mouse */
-int usb_mouse_deregister(struct usb_device *dev)
-{
- dev->irq_handle = NULL;
- if (new != NULL)
- {
- driver_mem_free(new);
- new = NULL;
- }
- mouse_installed = 0;
- dbg("USB MOUSE deregister\r\n");
- return 1;
-}
-
-/* registering the mouse */
-int usb_mouse_register(struct usb_device *dev)
-{
- if (!mouse_installed && (dev->devnum != -1) && (usb_mouse_probe(dev, 0) == 1))
- {
- /* Ok, we found a mouse */
- dbg("USB MOUSE found (USB: %d, devnum: %d)\r\n", dev->usbnum, dev->devnum);
- mouse_installed = 1;
- dev->deregister = usb_mouse_deregister;
- return 1;
- }
- /* no USB Mouse found */
- return -1;
-}
-
-/* search for mouse and register it if found */
-int drv_usb_mouse_init(void)
-{
- int i;
- int j;
-
- /*
- * check if mouse is already initialized
- */
- if (mouse_installed)
- {
- xprintf("USB mouse already initialized\r\n");
-
- return -1;
- }
-
- /* scan all USB Devices */
- for (j = 0; j < USB_MAX_BUS; j++)
- {
- for (i = 0; i < USB_MAX_DEVICE; i++)
- {
- struct usb_device *dev = usb_get_dev_index(i, j); /* get device */
-
- if (dev == NULL)
- {
- break;
- }
-
- xprintf("Try to register usb device %d,%d as mouse\r\n", i, j);
- if (usb_mouse_register(dev) > 0)
- return 1;
- }
- }
- /* no USB Mouse found */
- return -1;
-}
-
-/**************************************************************************
- * Low Level drivers
- */
-static void usb_kbd_send_code(unsigned char code)
-{
- dbg("FIXME: usb_kbd_send_code 0x%x not implemented\r\n", code);
-}
-
-/* Interrupt service routine */
-static int usb_mouse_irq(struct usb_device *dev)
-{
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- int level;
-#endif
- int i, change = 0;
- if ((dev->irq_status != 0) || (dev->irq_act_len < 3) || (dev->irq_act_len > 8))
- {
- dbg("USB MOUSE error %lX, len %d\r\n", dev->irq_status, dev->irq_act_len);
- return 1;
- }
- for (i = 0; i < dev->irq_act_len; i++)
- {
- if (new[i] != old[i])
- {
- change = 1;
- break;
- }
- }
- if (change)
- {
- char wheel = 0, buttons, old_buttons;
- dbg("USB MOUSE len:%d %02X %02X %02X %02X %02X %02X\r\n", dev->irq_act_len, new[0], new[1], new[2], new[3], new[4], new[5]);
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- level = set_ipl(7); /* mask interrupts */
-#endif
- if ((dev->irq_act_len >= 6) && (new[0] == 1)) /* report-ID */
- {
- buttons = new[1];
- old_buttons = old[1];
- new[0] = ((new[1] & 1) << 1) + ((new[1] & 2) >> 1) + 0xF8;
- new[1] = new[2];
- new[2] = new[3];
- wheel = new[4];
- }
- else /* boot report */
- {
- buttons = new[0];
- old_buttons = old[0];
- new[0] = ((new[0] & 1) << 1) + ((new[0] & 2) >> 1) + 0xF8;
- if (dev->irq_act_len >= 3)
- wheel = new[3];
- }
- if ((buttons ^ old_buttons) & 4) /* 3rd button */
- {
- if (buttons & 4)
- {
- usb_kbd_send_code(0x72); /* ENTER */
- usb_kbd_send_code(0xF2);
- }
- }
- if (wheel != 0) /* actually like Eiffel */
- {
-#define REPEAT_WHEEL 3
- int i;
- if (wheel > 0)
- {
- for (i = 0; i < REPEAT_WHEEL; i++)
- {
- usb_kbd_send_code(0x48); /* UP */
- usb_kbd_send_code(0xC8);
- }
- }
- else
- {
- for (i = 0; i < REPEAT_WHEEL; i++)
- {
- usb_kbd_send_code(0x50); /* DOWN */
- usb_kbd_send_code(0xD0);
- }
- }
- }
- xprintf("FIXME: call_mousevec(new, mousevec) not implemented\r\n");
- //if(mousevec != NULL)
- //call_mousevec(new, mousevec);
-#ifdef CONFIG_USB_INTERRUPT_POLLING
- set_ipl(level);
-#endif
- old[0] = new[0];
- old[1] = new[1];
- old[2] = new[2];
- old[3] = new[3];
- old[4] = new[4];
- old[5] = new[5];
- }
- return 1; /* install IRQ Handler again */
-}
-
-/* probes the USB device dev for mouse type */
-static int usb_mouse_probe(struct usb_device *dev, unsigned int ifnum)
-{
- struct usb_interface_descriptor *iface;
- struct usb_endpoint_descriptor *ep;
- int pipe;
- int maxp;
-
-#ifdef _NOT_USED_
- if (dev->descriptor.bNumConfigurations != 1)
- {
- dbg("dev->descriptor.bNumConfigurations != 1\r\n");
-
- return 0;
- }
-#endif
-
- iface = &dev->config.if_desc[ifnum];
-
- if (iface->bInterfaceClass != USB_CLASS_HID)
- {
- dbg("iface->bInterfaceClass != USB_CLASS_HID (%d instead)\r\n", iface->bInterfaceClass);
-
- return 0;
- }
-
-
- if (iface->bInterfaceSubClass != USB_SUB_HID_BOOT)
- {
- dbg("iface->bInterfaceSubClass != USB_SUB_HID_BOOT (%d instead)\r\n", iface->bInterfaceSubClass);
-
- return 0;
- }
-
- if (iface->bInterfaceProtocol != USB_PROT_HID_MOUSE)
- {
- dbg("iface->bInterfaceProtocol != USB_PROT_HID_MOUSE (%d)\r\n", iface->bInterfaceProtocol);
-
- return 0;
- }
-
- if (iface->bNumEndpoints != 1)
- {
- dbg("iface->bNumEndpoints != 1\r\n");
-
- return 0;
- }
-
- ep = &iface->ep_desc[0];
-
- if (!(ep->bEndpointAddress & 0x80))
- {
- dbg("! ep->bEndpointAddress & 0x80\r\n");
-
- return 0;
- }
-
- if ((ep->bmAttributes & 3) != 3)
- {
- dbg("ep->bmAttributes & 3 != 3\r\n");
-
- return 0;
- }
-
- new = (unsigned char *) driver_mem_alloc(8);
- if (new == NULL)
- {
- dbg("new == NULL\r\n");
-
- return 0;
- }
-
- dbg("USB MOUSE found set protocol...\r\n");
-
- /* ok, we found a USB Mouse, install it */
- pipe = usb_rcvintpipe(dev, ep->bEndpointAddress);
- maxp = usb_maxpacket(dev, pipe);
-// if(maxp < 6)
-// usb_set_protocol(dev, iface->bInterfaceNumber, 0); /* boot */
-// else
- usb_set_protocol(dev, iface->bInterfaceNumber, 1); /* report */
- dbg("USB MOUSE found set idle...\r\n");
- usb_set_idle(dev, iface->bInterfaceNumber, 0, 0); /* report infinite */
- memset(&new[0], 0, 8);
- memset(&old[0], 0, 8);
- dev->irq_handle = usb_mouse_irq;
- dbg("USB MOUSE enable interrupt pipe (maxp: %d)...\r\n", maxp);
- usb_submit_int_msg(dev, pipe, &new[0], maxp > 8 ? 8 : maxp, ep->bInterval);
- return 1;
-}
-
diff --git a/BaS_gcc/util/bas_printf.c b/BaS_gcc/util/bas_printf.c
deleted file mode 100644
index 35afd81..0000000
--- a/BaS_gcc/util/bas_printf.c
+++ /dev/null
@@ -1,479 +0,0 @@
-/*
- * tc.printf.c: A public-domain, minimal printf/sprintf routine that prints
- * through the putchar() routine. Feel free to use for
- * anything... -- 7/17/87 Paul Placeway
- */
-/*-
- * Copyright (c) 1980, 1991 The Regents of the University of California.
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. Neither the name of the University nor the names of its contributors
- * may be used to endorse or promote products derived from this software
- * without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- */
-
-#include
-#include
-#include "MCF5475.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-/*
- * Lexical definitions.
- *
- * All lexical space is allocated dynamically.
- * The eighth/sixteenth bit of characters is used to prevent recognition,
- * and eventually stripped.
- */
-#define META 0200
-#define ASCII 0177
-#define QUOTE ((char) 0200) /* Eighth char bit used for 'ing */
-#define TRIM 0177 /* Mask to strip quote bit */
-#define UNDER 0000000 /* No extra bits to do both */
-#define BOLD 0000000 /* Bold flag */
-#define STANDOUT META /* Standout flag */
-#define LITERAL 0000000 /* Literal character flag */
-#define ATTRIBUTES 0200 /* The bits used for attributes */
-#define CHAR 0000177 /* Mask to mask out the character */
-
-#define INF 32766 /* should be bigger than any field to print */
-
-static char snil[] = "(nil)";
-
-bool conoutstat(void)
-{
- bool stat;
-
- stat = MCF_PSC0_PSCSR & MCF_PSC_PSCSR_TXRDY; /* TX FIFO can take data */
-
- return stat;
-}
-
-bool coninstat(void)
-{
- bool stat;
-
- stat = MCF_PSC0_PSCSR & MCF_PSC_PSCSR_RXRDY; /* RX FIFO has data available */
-
- return stat;
-}
-
-void xputchar(int c)
-{
- do { ; } while (!conoutstat());
- MCF_PSC_PSCRB_8BIT(0) = (char) c;
-}
-
-char xgetchar(void)
-{
- char c;
-
- do { ; } while (!coninstat());
- c = MCF_PSC_PSCTB_8BIT(0);
-
- return c;
-}
-
-static void doprnt(void (*addchar)(int), const char *sfmt, va_list ap)
-{
- char buf[128];
- char *bp;
- const char *f;
- float flt;
- long l;
- unsigned long u;
- int i;
- int fmt;
- unsigned char pad = ' ';
- int flush_left = 0;
- int f_width = 0;
- int prec = INF;
- int hash = 0;
- int do_long = 0;
- int sign = 0;
- int attributes = 0;
-
- f = sfmt;
- for (; *f; f++)
- {
- if (*f != '%')
- {
- /* then just out the char */
- (*addchar)((int) (((unsigned char) *f) | attributes));
- }
- else
- {
- f++; /* skip the % */
-
- if (*f == '-')
- { /* minus: flush left */
- flush_left = 1;
- f++;
- }
-
- if (*f == '0' || *f == '.')
- {
- /* padding with 0 rather than blank */
- pad = '0';
- f++;
- }
- if (*f == '*')
- {
- /* field width */
- f_width = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- f_width = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
-
- if (*f == '.')
- { /* precision */
- f++;
- if (*f == '*')
- {
- prec = va_arg(ap, int);
- f++;
- }
- else if (isdigit((unsigned char)*f))
- {
- prec = atoi(f);
- while (isdigit((unsigned char)*f))
- f++; /* skip the digits */
- }
- }
-
- if (*f == '#')
- { /* alternate form */
- hash = 1;
- f++;
- }
-
- if (*f == 'l')
- { /* long format */
- do_long++;
- f++;
- if (*f == 'l')
- {
- do_long++;
- f++;
- }
- }
-
- fmt = (unsigned char) *f;
- if (fmt != 'S' && fmt != 'Q' && isupper(fmt))
- {
- do_long = 1;
- fmt = tolower(fmt);
- }
- bp = buf;
- switch (fmt)
- { /* do the format */
- case 'd':
- switch (do_long)
- {
- case 0:
- l = (long) (va_arg(ap, int));
- break;
- case 1:
- default:
- l = va_arg(ap, long);
- break;
- }
-
- if (l < 0)
- {
- sign = 1;
- l = -l;
- }
- do
- {
- *bp++ = (char) (l % 10) + '0';
- } while ((l /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'f':
- /* this is actually more than stupid, but does work for now */
- flt = (float) (va_arg(ap, double)); /* beware: va_arg() extends float to double! */
- if (flt < 0)
- {
- sign = 1;
- flt = -flt;
- }
- {
- int quotient, remainder;
-
- quotient = (int) flt;
- remainder = (flt - quotient) * 10E5;
-
- for (i = 0; i < 6; i++)
- {
- *bp++ = (char) (remainder % 10) + '0';
- remainder /= 10;
- }
- *bp++ = '.';
- do
- {
- *bp++ = (char) (quotient % 10) + '0';
- } while ((quotient /= 10) > 0);
- if (sign)
- *bp++ = '-';
- f_width = f_width - (int) (bp - buf);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- }
- break;
-
- case 'p':
- do_long = 1;
- hash = 1;
- fmt = 'x';
- /* no break */
- case 'o':
- case 'x':
- case 'u':
- switch (do_long)
- {
- case 0:
- u = (unsigned long) (va_arg(ap, unsigned int));
- break;
- case 1:
- default:
- u = va_arg(ap, unsigned long);
- break;
- }
- if (fmt == 'u')
- { /* unsigned decimal */
- do
- {
- *bp++ = (char) (u % 10) + '0';
- } while ((u /= 10) > 0);
- }
- else if (fmt == 'o')
- { /* octal */
- do
- {
- *bp++ = (char) (u % 8) + '0';
- } while ((u /= 8) > 0);
- if (hash)
- *bp++ = '0';
- }
- else if (fmt == 'x')
- { /* hex */
- do
- {
- i = (int) (u % 16);
- if (i < 10)
- *bp++ = i + '0';
- else
- *bp++ = i - 10 + 'a';
- } while ((u /= 16) > 0);
- if (hash)
- {
- *bp++ = 'x';
- *bp++ = '0';
- }
- }
- i = f_width - (int) (bp - buf);
- if (!flush_left)
- while (i-- > 0)
- (*addchar)((int) (pad | attributes));
- for (bp--; bp >= buf; bp--)
- (*addchar)((int) (((unsigned char) *bp) | attributes));
- if (flush_left)
- while (i-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'c':
- i = va_arg(ap, int);
- (*addchar)((int) (i | attributes));
- break;
-
- case 'S':
- case 'Q':
- case 's':
- case 'q':
- bp = va_arg(ap, char *);
- if (!bp)
- bp = snil;
- f_width = f_width - strlen((char *) bp);
- if (!flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (pad | attributes));
- for (i = 0; *bp && i < prec; i++)
- {
- if (fmt == 'q' && (*bp & QUOTE))
- (*addchar)((int) ('\\' | attributes));
- (*addchar)(
- (int) (((unsigned char) *bp & TRIM) | attributes));
- bp++;
- }
- if (flush_left)
- while (f_width-- > 0)
- (*addchar)((int) (' ' | attributes));
- break;
-
- case 'a':
- attributes = va_arg(ap, int);
- break;
-
- case '%':
- (*addchar)((int) ('%' | attributes));
- break;
-
- default:
- break;
- }
- flush_left = 0, f_width = 0, prec = INF, hash = 0, do_long = 0;
- sign = 0;
- pad = ' ';
- }
- }
-}
-
-static char *xstring, *xestring;
-
-void xaddchar(int c)
-{
- if (xestring == xstring)
- *xstring = '\0';
- else
- *xstring++ = (char) c;
-}
-
-int sprintf(char *str, const char *format, ...)
-{
- va_list va;
- va_start(va, format);
-
- xstring = str;
-
- doprnt(xaddchar, format, va);
- va_end(va);
- *xstring++ = '\0';
-
- return 0;
-}
-
-void xsnprintf(char *str, size_t size, const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
-
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- va_end(va);
- *xstring++ = '\0';
-}
-
-void xprintf(const char *fmt, ...)
-{
- va_list va;
- va_start(va, fmt);
- doprnt(xputchar, fmt, va);
- va_end(va);
-}
-
-void xvprintf(const char *fmt, va_list va)
-{
- doprnt(xputchar, fmt, va);
-}
-
-void xvsnprintf(char *str, size_t size, const char *fmt, va_list va)
-{
- xstring = str;
- xestring = str + size - 1;
- doprnt(xaddchar, fmt, va);
- *xstring++ = '\0';
-}
-
-
-void display_progress()
-{
- static int _progress_index;
- char progress_char[] = "|/-\\";
-
- xputchar(progress_char[_progress_index++ % strlen(progress_char)]);
- xputchar('\r');
-}
-
-void hexdump(uint8_t buffer[], int size)
-{
- int i;
- int line = 0;
- volatile uint8_t *bp = buffer;
-
- while (bp < buffer + size) {
- volatile uint8_t *lbp = bp;
-
- xprintf("%08x ", line);
-
- for (i = 0; i < 16; i++) {
- uint8_t c = *lbp++;
- if (bp + i > buffer + size) {
- break;
- }
- xprintf("%02x ", c);
- }
-
- lbp = bp;
- for (i = 0; i < 16; i++) {
- volatile int8_t c = *lbp++;
-
- if (bp + i > buffer + size) {
- break;
- }
- if (c > ' ' && c < '~') {
- xprintf("%c", c);
- } else {
- xprintf(".");
- }
- }
- xprintf("\r\n");
-
- bp += 16;
- line += 16;
- }
-}
diff --git a/BaS_gcc/util/bas_string.c b/BaS_gcc/util/bas_string.c
deleted file mode 100644
index 64bbe07..0000000
--- a/BaS_gcc/util/bas_string.c
+++ /dev/null
@@ -1,166 +0,0 @@
-/*
- * bas_string.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-#include "bas_types.h"
-#include
-#include "bas_string.h"
-
-void *memcpy(void *dst, const void *src, size_t n)
-{
- uint8_t *to = dst;
-
- while (to < (uint8_t *) dst + n)
- *to++ = * (uint8_t *) src++;
-
- return dst;
-}
-
-void *memmove(void *dst, const void *src, size_t n)
-{
- uint8_t *to = dst;
-
- while (to < (uint8_t *) dst + n)
- *to++ = * (uint8_t *) src++;
-
- return dst;
-}
-
-void bzero(void *s, size_t n)
-{
- size_t i;
-
- for (i = 0; i < n; i++)
- ((unsigned char *) s)[i] = '\0';
-}
-
-void *memset(void *s, int c, size_t n)
-{
- uint8_t *dst = s;
-
- do
- {
- *dst++ = c;
- } while ((dst - (uint8_t *) s) < n);
-
- return s;
-}
-
-
-int memcmp(const void *s1, const void *s2, size_t max)
-{
- int i;
- int cmp = 0;
-
- for (i = 0; i < max; i++)
- {
- cmp = (* (const char *) s1 - * (const char *) s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strcmp(const char *s1, const char *s2)
-{
- int i;
- int cmp;
-
- for (i = 0; *s1++ && *s2++; i++)
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-int strncmp(const char *s1, const char *s2, size_t max)
-{
- int i;
- int cmp = 0;
-
- for (i = 0; i < max && *s1++ && *s2++; i++)
- {
- cmp = (*s1 - *s2);
- if (cmp != 0) return cmp;
- }
- return cmp;
-}
-
-char *strcpy(char *dst, const char *src)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0');
- return ptr;
-}
-
-char *strncpy(char *dst, const char *src, size_t max)
-{
- char *ptr = dst;
-
- while ((*dst++ = *src++) != '\0' && max-- >= 0);
- return ptr;
-}
-
-int atoi(const char *c)
-{
- int value = 0;
- while (isdigit(*c))
- {
- value *= 10;
- value += (int) (*c - '0');
- c++;
- }
- return value;
-}
-
-size_t strlen(const char *s)
-{
- const char *start = s;
-
- while (*s++);
-
- return s - start - 1;
-}
-
-
-char *strcat(char *dst, const char *src)
-{
- char *ret = dst;
- dst = &dst[strlen(dst)];
- while ((*dst++ = *src++) != '\0');
- return ret;
-}
-
-char *strncat(char *dst, const char *src, size_t max)
-{
- size_t i;
- char *ret = dst;
-
- dst = &dst[strlen(dst)];
- for (i = 0; i < max && *src; i++)
- {
- *dst++ = *src++;
- }
- *dst++ = '\0';
-
- return ret;
-}
diff --git a/BaS_gcc/util/conout.c b/BaS_gcc/util/conout.c
deleted file mode 100755
index 8b307dd..0000000
--- a/BaS_gcc/util/conout.c
+++ /dev/null
@@ -1,576 +0,0 @@
-/*
- * conout.c - lowlevel color model dependent screen handling routines
- *
- *
- * Copyright (C) 2004 by Authors (see below)
- * Copyright (C) 2016 The EmuTOS development team
- *
- * Authors:
- * MAD Martin Doering
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-#include "conout.h"
-#include "video.h"
-#include "font.h"
-#include "fb.h"
-#include "bas_string.h"
-
-#define plane_offset 2 /* interleaved planes */
-
-#define v_fnt_st fnt->first_ade
-#define v_fnt_nd fnt->last_ade
-#define v_off_ad fnt->off_table
-#define v_bas_ad ((uint8_t *) info_fb->screen_base)
-
-uint8_t *v_cur_ad; /* cursor address */
-int8_t v_stat_0; /* console status byte */
-uint16_t v_cur_cx;
-uint16_t v_cur_cy;
-int8_t v_cur_tim;
-uint16_t v_cel_mx;
-uint16_t v_cel_my;
-uint16_t v_cel_wr;
-int16_t v_cur_of;
-uint16_t v_cel_ht;
-int8_t v_period;
-const uint16_t *v_fnt_ad;
-int16_t v_fbt_wr;
-int16_t v_col_bg;
-int16_t v_col_fg;
-uint16_t v_fnt_wr;
-
-
-#define v_planes (info_fb->var.bits_per_pixel)
-extern struct fb_info *info_fb;
-#define v_lin_wr (info_fb->var.width / 2) /* length of a screen line in words */
-
-/*
- * internal prototypes
- */
-static void neg_cell(uint8_t *);
-static uint8_t * cell_addr(int, int);
-static void cell_xfer(uint8_t *, uint8_t *);
-static bool next_cell(void);
-
-
-/*
- * char_addr - retrieve the address of the source cell
- *
- *
- * Given an offset value.
- *
- * in:
- * ch - source cell code
- *
- * out:
- * pointer to first byte of source cell if code was valid
- */
-
-static uint8_t *char_addr(int16_t ch)
-{
- uint16_t offs;
-
- /* test against limits */
- if (ch >= v_fnt_st)
- {
- if (ch <= v_fnt_nd)
- {
- /* getch offset from offset table */
- offs = v_off_ad[ch];
- offs >>= 3; /* convert from pixels to bytes. */
-
- /* return valid address */
- return (uint8_t*) v_fnt_ad + offs;
- }
- }
-
- /* invalid code. no address returned */
- return NULL;
-}
-
-
-
-/*
- * ascii_out - prints an ascii character on the screen
- *
- * in:
- *
- * ch.w ascii code for character
- */
-
-void ascii_out(int ch)
-{
- uint8_t * src, * dst;
- bool visible; /* was the cursor visible? */
-
- src = char_addr(ch); /* a0 -> get character source */
- if (src == NULL)
- return; /* no valid character */
-
- dst = v_cur_ad; /* a1 -> get destination */
-
- visible = v_stat_0 & M_CVIS; /* test visibility bit */
- if ( visible ) {
- neg_cell(v_cur_ad); /* delete cursor. */
- v_stat_0 &= ~M_CVIS; /* start of critical section */
- }
-
- /* put the cell out (this covers the cursor) */
- cell_xfer(src, dst);
-
- /* advance the cursor and update cursor address and coordinates */
- if (next_cell())
- {
- uint8_t * cell;
-
- int y = v_cur_cy;
-
- /* perform cell carriage return. */
- cell = v_bas_ad + (uint32_t) v_cel_wr * y;
- v_cur_cx = 0; /* set X to first cell in line */
-
- /* perform cell line feed. */
- if ( y < v_cel_my )
- {
- cell += v_cel_wr; /* move down one cell */
- v_cur_cy = y + 1; /* update cursor's y coordinate */
- }
- else {
- scroll_up(0); /* scroll from top of screen */
- }
- v_cur_ad = cell; /* update cursor address */
- }
-
- /* if visible */
- if ( visible ) {
- neg_cell(v_cur_ad); /* display cursor. */
- v_stat_0 |= M_CSTATE; /* set state flag (cursor on). */
- v_stat_0 |= M_CVIS; /* end of critical section. */
-
- /* do not flash the cursor when it moves */
- if (v_stat_0 & M_CFLASH) {
- v_cur_tim = v_period; /* reset the timer. */
- }
- }
-}
-
-
-
-
-/*
- * blank_out - Fills region with the background color.
- *
- * Fills a cell-word aligned region with the background color.
- *
- * The rectangular region is specified by a top/left cell x,y and a
- * bottom/right cell x,y, inclusive. Routine assumes top/left x is
- * even and bottom/right x is odd for cell-word alignment. This is,
- * because this routine is heavily optimized for speed, by always
- * blanking as much space as possible in one go.
- *
- * in:
- * topx - top/left cell x position (must be even)
- * topy - top/left cell y position
- * botx - bottom/right cell x position (must be odd)
- * boty - bottom/right cell y position
- */
-
-void blank_out(int topx, int topy, int botx, int boty)
-{
-
-}
-
-
-
-/*
- * cell_addr - convert cell X,Y to a screen address.
- *
- *
- * convert cell X,Y to a screen address. also clip cartesian coordinates
- * to the limits of the current screen.
- *
- * latest update:
- *
- * 18-sep-84
- * in:
- *
- * d0.w cell X
- * d1.w cell Y
- *
- * out:
- * a1 points to first byte of cell
- */
-
-static uint8_t *cell_addr(int x, int y)
-{
- int32_t disx, disy;
-
- /* check bounds against screen limits */
- if ( x >= v_cel_mx )
- x = v_cel_mx; /* clipped x */
-
- if ( y >= v_cel_my )
- y = v_cel_my; /* clipped y */
-
- /* X displacement = even(X) * v_planes + Xmod2 */
- disx = (int32_t)v_planes * (x & ~1);
- if ( x & 1 ) { /* Xmod2 = 0 ? */
- disx++; /* Xmod2 = 1 */
- }
-
- /* Y displacement = Y // cell conversion factor */
- disy = (int32_t)v_cel_wr * y;
-
- /*
- * cell address = screen base address + Y displacement
- * + X displacement + offset from screen-begin (fix)
- */
- return v_bas_ad + disy + disx + v_cur_of;
-}
-
-
-
-/*
- * cell_xfer - Performs a byte aligned block transfer.
- *
- *
- * This routine performs a byte aligned block transfer for the purpose of
- * manipulating monospaced byte-wide text. the routine maps a single-plane,
- * arbitrarily-long byte-wide image to a multi-plane bit map.
- * all transfers are byte aligned.
- *
- * in:
- * a0.l points to contiguous source block (1 byte wide)
- * a1.l points to destination (1st plane, top of block)
- *
- * out:
- * a4 points to byte below this cell's bottom
- */
-
-static void cell_xfer(uint8_t * src, uint8_t * dst)
-{
- uint8_t * src_sav, * dst_sav;
- uint16_t fg;
- uint16_t bg;
- int fnt_wr, line_wr;
- int plane;
-
- fnt_wr = v_fnt_wr;
- line_wr = v_lin_wr;
-
- /* check for reversed foreground and background colors */
- if ( v_stat_0 & M_REVID)
- {
- fg = v_col_bg;
- bg = v_col_fg;
- }
- else
- {
- fg = v_col_fg;
- bg = v_col_bg;
- }
-
- src_sav = src;
- dst_sav = dst;
-
- for (plane = v_planes; plane--;)
- {
- int i;
-
- src = src_sav; /* reload src */
- dst = dst_sav; /* reload dst */
-
- if (bg & 0x0001)
- {
- if (fg & 0x0001)
- {
- /* back:1 fore:1 => all ones */
- for (i = v_cel_ht; i--;)
- {
- *dst = 0xff; /* inject a block */
- dst += line_wr;
- }
- }
- else
- {
- /* back:1 fore:0 => invert block */
- for (i = v_cel_ht; i--; )
- {
- /* inject the inverted source block */
- *dst = ~*src;
- dst += line_wr;
- src += fnt_wr;
- }
- }
- }
- else {
- if (fg & 0x0001)
- {
- /* back:0 fore:1 => direct substitution */
- for (i = v_cel_ht; i--;)
- {
- *dst = *src;
- dst += line_wr;
- src += fnt_wr;
- }
- }
- else
- {
- /* back:0 fore:0 => all zeros */
- for (i = v_cel_ht; i--; )
- {
- *dst = 0x00; /* inject a block */
- dst += line_wr;
- }
- }
- }
-
- bg >>= 1; /* next background color bit */
- fg >>= 1; /* next foreground color bit */
- dst_sav += plane_offset; /* top of block in next plane */
- }
-}
-
-
-
-/*
- * move_cursor - move the cursor.
- *
- * move the cursor and update global parameters
- * erase the old cursor (if necessary) and draw new cursor (if necessary)
- *
- * in:
- * d0.w new cell X coordinate
- * d1.w new cell Y coordinate
- */
-
-void move_cursor(int x, int y)
-{
- /* update cell position */
-
- /* clamp x,y to valid ranges */
- if (x < 0)
- x = 0;
- else if (x > v_cel_mx)
- x = v_cel_mx;
-
- if (y < 0)
- y = 0;
- else if (y > v_cel_my)
- y = v_cel_my;
-
- v_cur_cx = x;
- v_cur_cy = y;
-
- /* is cursor visible? */
- if ( !(v_stat_0 & M_CVIS) ) {
- /* not visible */
- v_cur_ad = cell_addr(x, y); /* just set new coordinates */
- return; /* and quit */
- }
-
- /* is cursor flashing? */
- if ( v_stat_0 & M_CFLASH ) {
- v_stat_0 &= ~M_CVIS; /* yes, make invisible...semaphore. */
-
- /* is cursor presently displayed ? */
- if ( !(v_stat_0 & M_CSTATE )) {
- /* not displayed */
- v_cur_ad = cell_addr(x, y); /* just set new coordinates */
-
- /* show the cursor when it moves */
- neg_cell(v_cur_ad); /* complement cursor. */
- v_stat_0 |= M_CSTATE;
- v_cur_tim = v_period; /* reset the timer. */
-
- v_stat_0 |= M_CVIS; /* end of critical section. */
- return;
- }
- }
-
- /* move the cursor after all special checks failed */
- neg_cell(v_cur_ad); /* erase present cursor */
-
- v_cur_ad = cell_addr(x, y); /* fetch x and y coords. */
- neg_cell(v_cur_ad); /* complement cursor. */
-
- /* do not flash the cursor when it moves */
- v_cur_tim = v_period; /* reset the timer. */
-
- v_stat_0 |= M_CVIS; /* end of critical section. */
-}
-
-
-
-/*
- * neg_cell - negates
- *
- * This routine negates the contents of an arbitrarily-tall byte-wide cell
- * composed of an arbitrary number of (Atari-style) bit-planes.
- * Cursor display can be accomplished via this procedure. Since a second
- * negation restores the original cell condition, there is no need to save
- * the contents beneath the cursor block.
- *
- * in:
- * a1.l points to destination (1st plane, top of block)
- *
- * out:
- */
-
-static void neg_cell(uint8_t * cell)
-{
- int plane, len;
- int cell_len = v_cel_ht;
-
- v_stat_0 |= M_CRIT; /* start of critical section. */
-
- for (plane = v_planes; plane--; ) {
- uint8_t * addr = cell; /* top of current dest plane */
-
- /* reset cell length counter */
- for (len = cell_len; len--; ) {
- *addr = ~*addr;
- addr += v_lin_wr;
- }
- cell += plane_offset; /* a1 -> top of block in next plane */
- }
- v_stat_0 &= ~M_CRIT; /* end of critical section. */
-}
-
-
-
-/*
- * invert_cell - negates the cells bits
- *
- * This routine negates the contents of an arbitrarily-tall byte-wide cell
- * composed of an arbitrary number of (Atari-style) bit-planes.
- *
- * Wrapper for neg_cell().
- *
- * in:
- * x - cell X coordinate
- * y - cell Y coordinate
- */
-
-void invert_cell(int x, int y)
-{
- /* fetch x and y coords and invert cursor. */
- neg_cell(cell_addr(x, y));
-}
-
-
-
-/*
- * next_cell - Return the next cell address.
- *
- * sets next cell address given the current position and screen constraints
- *
- * returns:
- * false - no wrap condition exists
- * true - CR LF required (position has not been updated)
- */
-
-static bool next_cell(void)
-{
- /* check bounds against screen limits */
- if (v_cur_cx == v_cel_mx)
- {
- /* increment cell ptr */
- if (!(v_stat_0 & M_CEOL))
- {
- /* overwrite in effect */
- return 0; /* no wrap condition exists */
- /* don't change cell parameters */
- }
-
- /* call carriage return routine */
- /* call line feed routine */
- return 1; /* indicate that CR LF is required */
- }
-
- v_cur_cx += 1; /* next cell to right */
-
- /* if X is even, move to next word in the plane */
- if (v_cur_cx & 1)
- {
- /* x is odd */
- v_cur_ad += 1; /* a1 -> new cell */
- return 0; /* indicate no wrap needed */
- }
-
- /* new cell (1st plane), added offset to next word in plane */
- v_cur_ad += (v_planes << 1) - 1;
-
- return 0; /* indicate no wrap needed */
-}
-
-
-/*
- * scroll_up - Scroll upwards
- *
- *
- * Scroll copies a source region as wide as the screen to an overlapping
- * destination region on a one cell-height offset basis. Two entry points
- * are provided: Partial-lower scroll-up, partial-lower scroll-down.
- * Partial-lower screen operations require the cell y # indicating the
- * top line where scrolling will take place.
- *
- * After the copy is performed, any non-overlapping area of the previous
- * source region is "erased" by calling blank_out which fills the area
- * with the background color.
- *
- * in:
- * top_line - cell y of cell line to be used as top line in scroll
- */
-
-void scroll_up(int top_line)
-{
- uint32_t count;
- uint8_t * src, * dst;
-
- /* screen base addr + cell y nbr * cell wrap */
- dst = v_bas_ad + (uint32_t) top_line * v_cel_wr;
-
- /* form source address from cell wrap + base address */
- src = dst + v_cel_wr;
-
- /* form # of bytes to move */
- count = (uint32_t) v_cel_wr * (v_cel_my - top_line);
-
- /* move BYTEs of memory*/
- memmove(dst, src, count);
-
- /* exit thru blank out, bottom line cell address y to top/left cell */
- blank_out(0, v_cel_my , v_cel_mx, v_cel_my );
-}
-
-
-
-/*
- * scroll_down - Scroll (partially) downwards
- */
-
-void scroll_down(int start_line)
-{
- uint32_t count;
- uint8_t * src, * dst;
-
- /* screen base addr + offset of start line */
- src = v_bas_ad + (uint32_t) start_line * v_cel_wr;
-
- /* form destination from source + cell wrap */
- dst = src + v_cel_wr;
-
- /* form # of bytes to move */
- count = (uint32_t) v_cel_wr * (v_cel_my - start_line);
-
- /* move BYTEs of memory*/
- memmove(dst, src, count);
-
- /* exit thru blank out */
- blank_out(0, start_line , v_cel_mx, start_line);
-}
-
diff --git a/BaS_gcc/util/libgcc_helper.S b/BaS_gcc/util/libgcc_helper.S
deleted file mode 100644
index 3f06506..0000000
--- a/BaS_gcc/util/libgcc_helper.S
+++ /dev/null
@@ -1,70 +0,0 @@
-//
-// needed for ELF compilation of x86emu which uses 64 bit multiplication and division. This
-// is implemented in libgcc.a. However, the ELF compiler emits leading underscores and libgcc
-// is not compiled like that - we must reimplement the symbols.
-//
-// FIXME: This is a quirk and should be replaced by BaS' own implementation later
-//
- .global ___divdi3
- .extern __divdi3
-___divdi3: jmp __divdi3
-
- .global ___muldi3
- .extern __muldi3
-___muldi3: jmp __muldi3
-
- .global ___moddi3
- .extern __moddi3
-___moddi3: jmp __moddi3
-
- .global ___udivdi3
- .extern __udivdi3
-___udivdi3: jmp __udivdi3
-
- .global ___umoddi3
- .extern __umoddi3
-___umoddi3: jmp __umoddi3
-
- .global ___divdf3
- .extern __divdf3
-___divdf3: jmp __divdf3
-
- .global ___muldf3
- .extern __muldf3
-___muldf3: jmp __muldf3
-
- .global ___subsf3
- .extern __subsf3
-___subsf3: jmp __subsf3
-
- .global ___floatsidf
- .extern __floatsidf
-___floatsidf: jmp __floatsidf
-
- .global ___floatsisf
- .extern __floatsisf
-___floatsisf: jmp __floatsisf
-
- .global ___extendsfdf2
- .extern __extendsfdf2
-___extendsfdf2: jmp __extendsfdf2
-
- .global ___floatunsidf
- .extern __floatunsidf
-___floatunsidf: jmp __floatunsidf
-
- .global ___truncdfsf2
- .extern __truncdfsf2
-___truncdfsf2: jmp __truncdfsf2
-
- .global ___ltsf2
- .extern __ltsf2
-___ltsf2: jmp __ltsf2
-
- .global ___fixdfsi
- .extern __fixdfsi
-___fixdfsi: jmp __fixdfsi
-
- .global ___fixsfsi
- .extern __fixsfsi
-___fixsfsi: jmp __fixsfsi
diff --git a/BaS_gcc/util/setjmp.S b/BaS_gcc/util/setjmp.S
deleted file mode 100644
index cfb9787..0000000
--- a/BaS_gcc/util/setjmp.S
+++ /dev/null
@@ -1,16 +0,0 @@
- .globl _setjmp
- .globl _longjmp
-
-_setjmp: move.l 4(sp),a0 // address of jmp_buf[]
- move.l (sp),(a0) // save return address
- movem.l d2-d7/a2-a7,4(a0) // save registers to jmp_buf
- clr.l d0
- rts
-
-_longjmp: move.l 4(sp),a0 // address of jmp_buf[]
- move.l 8(sp),d0 // value to return
- jne not_0 // value may not be 0
- moveq.l #1,d0
-not_0: movem.l 4(a0),d2-d7/a2-a7 // restore registers
- move.l (a0),(sp) // restore saved return address
- rts
diff --git a/BaS_gcc/util/wait.c b/BaS_gcc/util/wait.c
deleted file mode 100644
index e655251..0000000
--- a/BaS_gcc/util/wait.c
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * wait.c
- *
- * Created on: 10.12.2012
- * Author: mfro
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Copyright 2010 - 2012 F. Aschwanden
- * Copyright 2011 - 2012 V. Riviere
- * Copyright 2012 M. Froeschle
- *
- */
-
-#include
-#include
-#include
-
-uint32_t get_timer(void)
-{
- return MCF_SLT_SCNT(0);
-}
-
-static uint32_t timer_value;
-
-void start_timeout(void)
-{
- timer_value = get_timer();
-}
-
-bool end_timeout(uint32_t msec)
-{
- msec *= SYSCLK;
-
- return (get_timer() - timer_value) < msec ? false : true;
-}
-
-/*
- * wait for the specified number of us on slice timer 0. Replaces the original routines that had
- * the number of useconds to wait for hardcoded in their name.
- */
-void wait(uint32_t us)
-{
- int32_t target = MCF_SLT_SCNT(0) - (us * (SYSCLK / 1000));
-
- while (MCF_SLT_SCNT(0) - target > 0);
-}
-void wait_us() __attribute__ ((weak, alias("wait")));
-
-/*
- * same as above, but with milliseconds wait time
- */
-void wait_ms(uint32_t ms)
-{
- wait(ms * 1000);
-}
-/*
- * the same as above, with a checker function which gets called while
- * busy waiting and allows for an early return if it returns true
- */
-bool waitfor(uint32_t us, checker_func condition)
-{
- int32_t target = MCF_SLT_SCNT(0) - (us * (SYSCLK / 1000));
- bool res;
-
- do
- {
- if ((res = (*condition)()))
- return res;
- } while (MCF_SLT_SCNT(0) - target > 0);
- return false;
-}
diff --git a/BaS_gcc/video/fbmem.c b/BaS_gcc/video/fbmem.c
deleted file mode 100644
index 922eb53..0000000
--- a/BaS_gcc/video/fbmem.c
+++ /dev/null
@@ -1,203 +0,0 @@
-/*
- * fbmem.c
- *
- * Copyright (C) 1994 Martin Schaller
- *
- * 2001 - Documented with DocBook
- * - Brad Douglas
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive
- * for more details.
- */
-
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "fb.h"
-#include "radeonfb.h"
-#include "driver_mem.h"
-#include "bas_string.h"
-
-// #define DEBUG
-#include "debug.h"
-
-
-/*
- * Frame buffer device initialization and setup routines
- */
-
-
-int fb_pan_display(struct fb_info *info, struct fb_var_screeninfo *var)
-{
- int32_t xoffset = var->xoffset;
- int32_t yoffset = var->yoffset;
- int32_t err;
-
- dbg("\r\n");
- if ((xoffset < 0) || (yoffset < 0)
- || ((xoffset + info->var.xres) > info->var.xres_virtual))
- {
- dbg("xoffset=%d, yoffset=%d, xres=%d, xres_virtual = %d\r\n",
- xoffset, yoffset, info->var.xres, info->var.xres_virtual);
- return -1; //-EINVAL;
- }
-
- if ((err = info->fbops->fb_pan_display(var, info)))
- {
- dbg("fb_pan_display returned %d\r\n", err);
-
- return err;
- }
-
- info->var.xoffset = var->xoffset;
- info->var.yoffset = var->yoffset;
- if (var->vmode & FB_VMODE_YWRAP)
- info->var.vmode |= FB_VMODE_YWRAP;
- else
- info->var.vmode &= ~FB_VMODE_YWRAP;
-
- return 0;
-}
-
-int fb_set_var(struct fb_info *info, struct fb_var_screeninfo *var)
-{
- int32_t err;
-
- dbg("var->activate = 0x%x\r\n", var->activate);
-
- if (var->activate & FB_ACTIVATE_INV_MODE)
- {
- dbg("invalid mode\r\n");
-
- return !memcmp((char *) &info->var, (char *) var, sizeof(struct fb_var_screeninfo));
- }
-
- if ((var->activate & FB_ACTIVATE_FORCE)
- || memcmp((char *) &info->var, (char *) var, sizeof(struct fb_var_screeninfo)))
- {
- if ((err = info->fbops->fb_check_var(var, info)))
- {
- dbg("fb_check_var failed\r\n");
-
- return err;
- }
-
- if ((var->activate & FB_ACTIVATE_MASK) == FB_ACTIVATE_NOW)
- {
- memcpy(&info->var, var, sizeof(struct fb_var_screeninfo));
- dbg("fb_set_par() = %p\r\n", info->fbops->fb_set_par);
- info->fbops->fb_set_par(info);
- fb_pan_display(info, &info->var);
- }
- }
-
- return 0;
-}
-
-int fb_blank(struct fb_info *info, int blank)
-{
- dbg("\r\n");
- if (blank > FB_BLANK_POWERDOWN)
- blank = FB_BLANK_POWERDOWN;
-
- return info->fbops->fb_blank(blank, info);
-}
-
-int fb_ioctl(struct fb_info *info, uint32_t cmd, uint32_t arg)
-{
- struct fb_var_screeninfo var;
- struct fb_fix_screeninfo fix;
- void *argp = (void *) arg;
- int32_t i;
-
- dbg("\r\n");
- switch(cmd)
- {
- case FBIOGET_VSCREENINFO:
- memcpy(argp, &info->var, sizeof(var));
-
- return 0;
-
- case FBIOPUT_VSCREENINFO:
- memcpy(&var, argp, sizeof(var));
- i = fb_set_var(info, &var);
- if (i)
- return i;
- memcpy(argp, &var, sizeof(var));
-
- return 0;
-
- case FBIOGET_FSCREENINFO:
- memcpy(argp, &info->fix, sizeof(fix));
-
- return 0;
-
- case FBIOPAN_DISPLAY:
- memcpy(&var, argp, sizeof(var));
- i = fb_pan_display(info, &var);
- if (i)
- return i;
- memcpy(argp, &var, sizeof(var));
-
- return 0;
-
- case FBIOBLANK:
- i = fb_blank(info, arg);
- return i;
-
- case FBIO_ALLOC:
- return offscreen_alloc(info, arg);
-
- case FBIO_FREE:
- return offscreen_free(info, (void *) arg);
-
- default:
- return info->fbops->fb_ioctl(cmd, arg, info);
- }
-}
-
-
-/**
- * framebuffer_alloc - creates a new frame buffer info structure
- *
- * @size: size of driver private data, can be zero
- * @dev: pointer to the device for this fb, this can be NULL
- *
- * Creates a new frame buffer info structure. Also reserves @size bytes
- * for driver private data (info->par). info->par (if any) will be
- * aligned to sizeof(long).
- *
- * Returns the new structure, or NULL if an error occured.
- *
- */
-struct fb_info *framebuffer_alloc(uint32_t size)
-{
- /* changed for BaS_gcc:
- * we do not allocate anything here anymore, info_fb is statically allocated in video.c
- * This leads to the (not really existing) limitation that we only support one Radeon
- * card in the system
- */
- extern struct fb_info *info_fb;
-
- dbg("\r\n");
-
- return info_fb;
-}
-
-/**
- * framebuffer_release - marks the structure available for freeing
- *
- * @info: frame buffer info structure
- *
- * Drop the reference count of the class_device embedded in the
- * framebuffer info structure.
- *
- */
-void framebuffer_release(struct fb_info *info)
-{
- dbg("\r\n");
-
- driver_mem_free(info->par);
-}
-
diff --git a/BaS_gcc/video/fbmodedb.c b/BaS_gcc/video/fbmodedb.c
deleted file mode 100644
index bbd6493..0000000
--- a/BaS_gcc/video/fbmodedb.c
+++ /dev/null
@@ -1,605 +0,0 @@
-/*
- * fb_modedb.c -- Standard video mode database management
- *
- * Copyright (C) 1999 Geert Uytterhoeven
- *
- * 2001 - Documented with DocBook
- * - Brad Douglas
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive for
- * more details.
- */
-
-#include "fb.h"
-#include "bas_types.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#define name_matches(v, s, l) \
- ((v).name && !strncmp((s), (v).name, (l)) && strlen((v).name) == (l))
-#define res_matches(v, x, y) \
- ((v).xres == (x) && (v).yres == (y))
-
-/*
- * Standard video mode definitions (taken from XFree86)
- */
-
-#define DEFAULT_MODEDB_INDEX 0
-
-const struct fb_videomode modedb[] =
-{
- {
- /* 640x400 @ 70 Hz, 31.5 kHz hsync */
- 70, 640, 400, 39721, 40, 24, 39, 9, 96, 2,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 640x480 @ 60 Hz, 31.5 kHz hsync */
- 60, 640, 480, 39721, 40, 24, 32, 11, 96, 2,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 800x600 @ 56 Hz, 35.15 kHz hsync */
- 56, 800, 600, 27777, 128, 24, 22, 1, 72, 2,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 87 Hz interlaced, 35.5 kHz hsync */
- 87, 1024, 768, 22271, 56, 24, 33, 8, 160, 8,
- 0, FB_VMODE_INTERLACED
- },
- {
- /* 640x400 @ 85 Hz, 37.86 kHz hsync */
- 85, 640, 400, 31746, 96, 32, 41, 1, 64, 3,
- FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 640x480 @ 72 Hz, 36.5 kHz hsync */
- 72, 640, 480, 31746, 144, 40, 30, 8, 40, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 640x480 @ 75 Hz, 37.50 kHz hsync */
- 75, 640, 480, 31746, 120, 16, 16, 1, 64, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 800x600 @ 60 Hz, 37.8 kHz hsync */
- 60, 800, 600, 25000, 88, 40, 23, 1, 128, 4,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 640x480 @ 85 Hz, 43.27 kHz hsync */
- 85, 640, 480, 27777, 80, 56, 25, 1, 56, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 89 Hz interlaced, 44 kHz hsync */
- 69, 1152, 864, 15384, 96, 16, 110, 1, 216, 10,
- 0, FB_VMODE_INTERLACED
- },
- {
- /* 800x600 @ 72 Hz, 48.0 kHz hsync */
- 72, 800, 600, 20000, 64, 56, 23, 37, 120, 6,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 60 Hz, 48.4 kHz hsync */
- 60, 1024, 768, 15384, 168, 8, 29, 3, 144, 6,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 640x480 @ 100 Hz, 53.01 kHz hsync */
- 100, 640, 480, 21834, 96, 32, 36, 8, 96, 6,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 60 Hz, 53.5 kHz hsync */
- 60, 1152, 864, 11123, 208, 64, 16, 4, 256, 8,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 800x600 @ 85 Hz, 55.84 kHz hsync */
- 85, 800, 600, 16460, 160, 64, 36, 16, 64, 5,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 70 Hz, 56.5 kHz hsync */
- 70, 1024, 768, 13333, 144, 24, 29, 3, 136, 6,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 87 Hz interlaced, 51 kHz hsync */
- 87, 1280, 1024, 12500, 56, 16, 128, 1, 216, 12,
- 0, FB_VMODE_INTERLACED
- },
- {
- /* 800x600 @ 100 Hz, 64.02 kHz hsync */
- 100, 800, 600, 14357, 160, 64, 30, 4, 64, 6,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 76 Hz, 62.5 kHz hsync */
- 76, 1024, 768, 11764, 208, 8, 36, 16, 120, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 70 Hz, 62.4 kHz hsync */
- 70, 1152, 864, 10869, 106, 56, 20, 1, 160, 10,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 61 Hz, 64.2 kHz hsync */
- 61, 1280, 1024, 9090, 200, 48, 26, 1, 184, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1400x1050 @ 60Hz, 63.9 kHz hsync */
- 68, 1400, 1050, 9259, 136, 40, 13, 1, 112, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1400x1050 @ 75,107 Hz, 82,392 kHz +hsync +vsync*/
- 75, 1400, 1050, 9271, 120, 56, 13, 0, 112, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1400x1050 @ 60 Hz, ? kHz +hsync +vsync*/
- 60, 1400, 1050, 9259, 128, 40, 12, 0, 112, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 85 Hz, 70.24 kHz hsync */
- 85, 1024, 768, 10111, 192, 32, 34, 14, 160, 6,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 78 Hz, 70.8 kHz hsync */
- 78, 1152, 864, 9090, 228, 88, 32, 0, 84, 12,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 70 Hz, 74.59 kHz hsync */
- 70, 1280, 1024, 7905, 224, 32, 28, 8, 160, 8,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1600x1200 @ 60Hz, 75.00 kHz hsync */
- 60, 1600, 1200, 6172, 304, 64, 46, 1, 192, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 84 Hz, 76.0 kHz hsync */
- 84, 1152, 864, 7407, 184, 312, 32, 0, 128, 12,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 74 Hz, 78.85 kHz hsync */
- 74, 1280, 1024, 7407, 256, 32, 34, 3, 144, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1024x768 @ 100Hz, 80.21 kHz hsync */
- 100, 1024, 768, 8658, 192, 32, 21, 3, 192, 10,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 76 Hz, 81.13 kHz hsync */
- 76, 1280, 1024, 7407, 248, 32, 34, 3, 104, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1600x1200 @ 70 Hz, 87.50 kHz hsync */
- 70, 1600, 1200, 5291, 304, 64, 46, 1, 192, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x864 @ 100 Hz, 89.62 kHz hsync */
- 100, 1152, 864, 7264, 224, 32, 17, 2, 128, 19,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 85 Hz, 91.15 kHz hsync */
- 85, 1280, 1024, 6349, 224, 64, 44, 1, 160, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1600x1200 @ 75 Hz, 93.75 kHz hsync */
- 75, 1600, 1200, 4938, 304, 64, 46, 1, 192, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1600x1200 @ 85 Hz, 105.77 kHz hsync */
- 85, 1600, 1200, 4545, 272, 16, 37, 4, 192, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x1024 @ 100 Hz, 107.16 kHz hsync */
- 100, 1280, 1024, 5502, 256, 32, 26, 7, 128, 15,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1800x1440 @ 64Hz, 96.15 kHz hsync */
- 64, 1800, 1440, 4347, 304, 96, 46, 1, 192, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1800x1440 @ 70Hz, 104.52 kHz hsync */
- 70, 1800, 1440, 4000, 304, 96, 46, 1, 192, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 512x384 @ 78 Hz, 31.50 kHz hsync */
- 78, 512, 384, 49603, 48, 16, 16, 1, 64, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 512x384 @ 85 Hz, 34.38 kHz hsync */
- 85, 512, 384, 45454, 48, 16, 16, 1, 64, 3,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 320x200 @ 70 Hz, 31.5 kHz hsync, 8:5 aspect ratio */
- 70, 320, 200, 79440, 16, 16, 20, 4, 48, 1,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 320x240 @ 60 Hz, 31.5 kHz hsync, 4:3 aspect ratio */
- 60, 320, 240, 79440, 16, 16, 16, 5, 48, 1,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 320x240 @ 72 Hz, 36.5 kHz hsync */
- 72, 320, 240, 63492, 16, 16, 16, 4, 48, 2,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 400x300 @ 56 Hz, 35.2 kHz hsync, 4:3 aspect ratio */
- 56, 400, 300, 55555, 64, 16, 10, 1, 32, 1,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 400x300 @ 60 Hz, 37.8 kHz hsync */
- 60, 400, 300, 50000, 48, 16, 11, 1, 64, 2,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 400x300 @ 72 Hz, 48.0 kHz hsync */
- 72, 400, 300, 40000, 32, 24, 11, 19, 64, 3,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 480x300 @ 56 Hz, 35.2 kHz hsync, 8:5 aspect ratio */
- 56, 480, 300, 46176, 80, 16, 10, 1, 40, 1,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 480x300 @ 60 Hz, 37.8 kHz hsync */
- 60, 480, 300, 41858, 56, 16, 11, 1, 80, 2,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 480x300 @ 63 Hz, 39.6 kHz hsync */
- 63, 480, 300, 40000, 56, 16, 11, 1, 80, 2,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 480x300 @ 72 Hz, 48.0 kHz hsync */
- 72, 480, 300, 33386, 40, 24, 11, 19, 80, 3,
- 0, FB_VMODE_DOUBLE
- },
- {
- /* 1920x1200 @ 60 Hz, 74.5 Khz hsync */
- 60, 1920, 1200, 5177, 128, 336, 1, 38, 208, 3,
- FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT,
- FB_VMODE_NONINTERLACED
- },
- {
- /* 1152x768, 60 Hz, PowerBook G4 Titanium I and II */
- 60, 1152, 768, 14047, 158, 26, 29, 3, 136, 6,
- FB_SYNC_HOR_HIGH_ACT|FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED
- },
- {
- /* 1920x1080, 60 Hz, 1080pf */
- 60, 1920, 1080, 6741, 148, 44, 36, 4, 88, 5,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1366x768, 60 Hz, 47.403 kHz hsync, WXGA 16:9 aspect ratio */
- 60, 1366, 768, 13806, 120, 10, 14, 3, 32, 5,
- 0, FB_VMODE_NONINTERLACED
- },
- {
- /* 1280x800, 60 Hz, 47.403 kHz hsync, WXGA 16:10 aspect ratio */
- 60, 1280, 800, 12048, 200, 64, 24, 1, 136, 3,
- 0, FB_VMODE_NONINTERLACED
- },
-};
-
-long total_modedb = sizeof(modedb) / sizeof(*modedb);
-
-const struct fb_videomode vesa_modes[] =
-{
- /* 0 640x350-85 VESA */
- { 85, 640, 350, 31746, 96, 32, 60, 32, 64, 3, FB_SYNC_HOR_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA},
- /* 1 640x400-85 VESA */
- { 85, 640, 400, 31746, 96, 32, 41, 01, 64, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 2 720x400-85 VESA */
- { 85, 721, 400, 28169, 108, 36, 42, 01, 72, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 3 640x480-60 VESA */
- { 60, 640, 480, 39682, 48, 16, 33, 10, 96, 2, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 4 640x480-72 VESA */
- { 72, 640, 480, 31746, 128, 24, 29, 9, 40, 2, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 5 640x480-75 VESA */
- { 75, 640, 480, 31746, 120, 16, 16, 01, 64, 3, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 6 640x480-85 VESA */
- { 85, 640, 480, 27777, 80, 56, 25, 01, 56, 3, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 7 800x600-56 VESA */
- { 56, 800, 600, 27777, 128, 24, 22, 01, 72, 2, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 8 800x600-60 VESA */
- { 60, 800, 600, 25000, 88, 40, 23, 01, 128, 4, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 9 800x600-72 VESA */
- { 72, 800, 600, 20000, 64, 56, 23, 37, 120, 6, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 10 800x600-75 VESA */
- { 75, 800, 600, 20202, 160, 16, 21, 01, 80, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 11 800x600-85 VESA */
- { 85, 800, 600, 17761, 152, 32, 27, 01, 64, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 12 1024x768i-43 VESA */
- { 53, 1024, 768, 22271, 56, 8, 41, 0, 176, 8, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_INTERLACED, FB_MODE_IS_VESA },
- /* 13 1024x768-60 VESA */
- { 60, 1024, 768, 15384, 160, 24, 29, 3, 136, 6, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 14 1024x768-70 VESA */
- { 70, 1024, 768, 13333, 144, 24, 29, 3, 136, 6, 0, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 15 1024x768-75 VESA */
- { 75, 1024, 768, 12690, 176, 16, 28, 1, 96, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 16 1024x768-85 VESA */
- { 85, 1024, 768, 10582, 208, 48, 36, 1, 96, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 17 1152x864-75 VESA */
- { 75, 1153, 864, 9259, 256, 64, 32, 1, 128, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 18 1280x960-60 VESA */
- { 60, 1280, 960, 9259, 312, 96, 36, 1, 112, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 19 1280x960-85 VESA */
- { 85, 1280, 960, 6734, 224, 64, 47, 1, 160, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 20 1280x1024-60 VESA */
- { 60, 1280, 1024, 9259, 248, 48, 38, 1, 112, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 21 1280x1024-75 VESA */
- { 75, 1280, 1024, 7407, 248, 16, 38, 1, 144, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 22 1280x1024-85 VESA */
- { 85, 1280, 1024, 6349, 224, 64, 44, 1, 160, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 23 1600x1200-60 VESA */
- { 60, 1600, 1200, 6172, 304, 64, 46, 1, 192, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 24 1600x1200-65 VESA */
- { 65, 1600, 1200, 5698, 304, 64, 46, 1, 192, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 25 1600x1200-70 VESA */
- { 70, 1600, 1200, 5291, 304, 64, 46, 1, 192, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 26 1600x1200-75 VESA */
- { 75, 1600, 1200, 4938, 304, 64, 46, 1, 192, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 27 1600x1200-85 VESA */
- { 85, 1600, 1200, 4357, 304, 64, 46, 1, 192, 3, FB_SYNC_HOR_HIGH_ACT | FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 28 1792x1344-60 VESA */
- { 60, 1792, 1344, 4882, 328, 128, 46, 1, 200, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 29 1792x1344-75 VESA */
- { 75, 1792, 1344, 3831, 352, 96, 69, 1, 216, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 30 1856x1392-60 VESA */
- { 60, 1856, 1392, 4580, 352, 96, 43, 1, 224, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 31 1856x1392-75 VESA */
- { 75, 1856, 1392, 3472, 352, 128, 104, 1, 224, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 32 1920x1440-60 VESA */
- { 60, 1920, 1440, 4273, 344, 128, 56, 1, 200, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
- /* 33 1920x1440-75 VESA */
- { 60, 1920, 1440, 3367, 352, 144, 56, 1, 224, 3, FB_SYNC_VERT_HIGH_ACT, FB_VMODE_NONINTERLACED, FB_MODE_IS_VESA },
-};
-
-/**
- * fb_try_mode - test a video mode
- * @var: frame buffer user defined part of display
- * @info: frame buffer info structure
- * @mode: frame buffer video mode structure
- * @bpp: color depth in bits per pixel
- *
- * Tries a video mode to test it's validity for device @info.
- *
- * Returns 1 on success.
- *
- */
-
-static int32_t fb_try_mode(struct fb_var_screeninfo *var, struct fb_info *info,
- const struct fb_videomode *mode, uint32_t bpp)
-{
- int32_t err = 0;
-
- dbg("Trying mode %d x %d - %d @ %d\r\n", mode->xres, mode->yres, bpp, mode->refresh);
- var->xres = mode->xres;
- var->yres = mode->yres;
- var->xres_virtual = mode->xres;
- var->yres_virtual = mode->yres;
- var->xoffset = 0;
- var->yoffset = 0;
- var->bits_per_pixel = bpp;
- var->activate |= FB_ACTIVATE_TEST;
- var->pixclock = mode->pixclock;
- var->left_margin = mode->left_margin;
- var->right_margin = mode->right_margin;
- var->upper_margin = mode->upper_margin;
- var->lower_margin = mode->lower_margin;
- var->hsync_len = mode->hsync_len;
- var->vsync_len = mode->vsync_len;
- var->sync = mode->sync;
- var->vmode = mode->vmode;
- var->refresh = mode->refresh;
- err = info->fbops->fb_check_var(var, info);
-
- var->activate &= ~FB_ACTIVATE_TEST;
-
- return err;
-}
-
-/**
- * fb_find_mode - finds a valid video mode
- * @var: frame buffer user defined part of display
- * @info: frame buffer info structure
- * @resolution: fVDI structure mode_option
- * @db: video mode database
- * @dbsize: size of @db
- * @default_mode: default video mode to fall back to
- * @default_bpp: default color depth in bits per pixel
- *
- * Finds a suitable video mode, starting with the specified mode
- * in @resolution with fallback to @default_mode. If
- * @default_mode fails, all modes in the video mode database will
- * be tried.
- *
- * Valid mode specifiers for @resolution:
- *
- * x[-][@] or
- * [-][@]
- *
- * with , , and decimal numbers and
- * a string.
- *
- * NOTE: The passed struct @var is _not_ cleared! This allows you
- * to supply values for e.g. the grayscale and accel_flags fields.
- *
- * Returns zero for failure, 1 if using specified @resolution,
- * 2 if using specified @resolution with an ignored refresh rate,
- * 3 if default mode is used, 4 if fall back to any valid mode.
- *
- */
-
-int fb_find_mode(struct fb_var_screeninfo *var,
- struct fb_info *info, struct mode_option *resolution ,
- const struct fb_videomode *db, unsigned int dbsize,
- const struct fb_videomode *default_mode,
- unsigned int default_bpp)
-{
- int i;
- int abs;
- int res_specified = 0;
- int bpp_specified = 0;
- int refresh_specified = 0;
- unsigned int xres = 0;
- unsigned int yres = 0;
- unsigned int bpp = default_bpp;
- unsigned int refresh = 0;
- int yres_specified = 0;
- unsigned long best;
- unsigned long diff;
-
- dbg("fb_find_mode\r\n");
-
- /*
- * FIXME: temporarily use unused variables here to make compiler happy
- */
- (void) yres_specified;
- (void) bpp_specified;
-
- /* Set up defaults */
- if (!db)
- {
- dbg("fb_find_mode, use default modedb\r\n");
- if (resolution->used && (resolution->flags & MODE_VESA_FLAG))
- {
- db = vesa_modes;
- dbsize = sizeof(vesa_modes)/sizeof(*vesa_modes);
- }
- else
- {
- db = modedb;
- dbsize = sizeof(modedb)/sizeof(*modedb);
- }
- }
- if (!default_mode)
- default_mode = &modedb[DEFAULT_MODEDB_INDEX];
- if (!default_bpp)
- default_bpp = 8;
-
- /* Did the user specify a video mode? */
- if (resolution->used) /* fVDI mode */
- {
- refresh = resolution->freq;
- if (refresh)
- refresh_specified = 1;
- bpp = resolution->bpp;
- if (resolution->flags & MODE_EMUL_MONO_FLAG)
- bpp = 8;
- if (bpp)
- bpp_specified = 1;
- yres = resolution->height;
- if (yres)
- yres_specified = 1;
- xres = resolution->width;
- if (xres)
- res_specified = 1;
- }
- dbg("Trying specified video mode %d x %d\r\n", xres, yres);
-
- diff = refresh;
- best = -1;
- for (i = 0; i < dbsize; i++)
- {
- if (res_specified && res_matches(db[i], xres, yres))
- {
- if (!fb_try_mode(var, info, &db[i], bpp))
- {
- if (!refresh_specified || db[i].refresh == refresh)
- return 1;
- else
- {
- abs = db[i].refresh - refresh;
- if (abs < 0)
- abs = -abs;
- if (diff > abs)
- {
- diff = abs;
- best = i;
- }
- }
- }
- }
- }
-
- if (best != -1)
- {
- fb_try_mode(var, info, &db[best], bpp);
- return 2;
- }
- diff = xres + yres;
- dbg("Trying best-fit modes\r\n");
- best = -1;
- for (i = 0; i < dbsize; i++)
- {
- if (xres <= db[i].xres && yres <= db[i].yres)
- {
- dbg("Trying %d x %d\r\n", db[i].xres, db[i].yres);
-
- if (!fb_try_mode(var, info, &db[i], bpp))
- {
- if (diff > (db[i].xres - xres) + (db[i].yres - yres))
- {
- diff = (db[i].xres - xres) + (db[i].yres - yres);
- best = i;
- }
- }
- }
- }
- if (best != -1)
- {
- fb_try_mode(var, info, &db[best], bpp);
- return 5;
- }
- dbg("Trying default video mode\r\n");
- if (!fb_try_mode(var, info, default_mode, default_bpp))
- return 3;
- dbg("Trying all modes\r\n");
- for (i = 0; i < dbsize; i++)
- {
- if (!fb_try_mode(var, info, &db[i], default_bpp))
- return 4;
- }
- dbg("No valid mode found\r\n");
- return 0;
-}
diff --git a/BaS_gcc/video/fbmon.c b/BaS_gcc/video/fbmon.c
deleted file mode 100644
index edfc2e7..0000000
--- a/BaS_gcc/video/fbmon.c
+++ /dev/null
@@ -1,1407 +0,0 @@
-/*
- * fbmon.c
- *
- * Copyright (C) 2002 James Simmons
- *
- * Credits:
- *
- * The EDID Parser is a conglomeration from the following sources:
- *
- * 1. SciTech SNAP Graphics Architecture
- * Copyright (C) 1991-2002 SciTech Software, Inc. All rights reserved.
- *
- * 2. XFree86 4.3.0, interpret_edid.c
- * Copyright 1998 by Egbert Eich
- *
- * 3. John Fremlin and
- * Ani Joshi
- *
- * Generalized Timing Formula is derived from:
- *
- * GTF Spreadsheet by Andy Morrish (1/5/97)
- * available at http://www.vesa.org
- *
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file COPYING in the main directory of this archive
- * for more details.
- *
- */
-
-#include "bas_string.h"
-#include "fb.h"
-#include "edid.h"
-
-// #define DEBUG
-#include "debug.h"
-
-/*
- * EDID parser
- */
-
-#define FBMON_FIX_HEADER 1
-#define FBMON_FIX_INPUT 2
-
-struct broken_edid
-{
- unsigned char manufacturer[4];
- unsigned long model;
- unsigned long fix;
-};
-
-static struct broken_edid brokendb[] =
-{
- /* DEC FR-PCXAV-YZ */
- {
- .manufacturer = "DEC",
- .model = 0x073a,
- .fix = FBMON_FIX_HEADER,
- },
- /* ViewSonic PF775a */
- {
- .manufacturer = "VSC",
- .model = 0x5a44,
- .fix = FBMON_FIX_INPUT,
- },
-};
-
-static const unsigned char edid_v1_header[] =
-{
- 0x00, 0xff, 0xff, 0xff,
- 0xff, 0xff, 0xff, 0x00
-};
-
-static void copy_string(unsigned char *c, unsigned char *s)
-{
- int32_t i;
- c = c + 5;
- for (i = 0; (i < 13 && *c != 0x0A); i++)
- *(s++) = *(c++);
- *s = 0;
-
- while (i-- && (*--s == 0x20))
- *s = 0;
-}
-
-static int32_t check_edid(unsigned char *edid)
-{
- unsigned char *block = edid + ID_MANUFACTURER_NAME;
- unsigned char manufacturer[4];
- unsigned char *b;
- unsigned long model;
- int32_t i, fix = 0, ret = 0;
-
- manufacturer[0] = ((block[0] & 0x7c) >> 2) + '@';
- manufacturer[1] = ((block[0] & 0x03) << 3) + ((block[1] & 0xe0) >> 5) + '@';
- manufacturer[2] = (block[1] & 0x1f) + '@';
- manufacturer[3] = 0;
- model = block[2] + (block[3] << 8);
-
- for (i = 0; i < sizeof(brokendb)/sizeof(*brokendb); i++)
- {
- if (manufacturer[0] == brokendb[i].manufacturer[0] &&
- manufacturer[1] == brokendb[i].manufacturer[1] &&
- manufacturer[2] == brokendb[i].manufacturer[2] &&
- manufacturer[3] == brokendb[i].manufacturer[3] &&
- brokendb[i].model == model)
- {
- fix = brokendb[i].fix;
- break;
- }
- }
-
- switch (fix)
- {
- case FBMON_FIX_HEADER:
- for (i = 0; i < 8; i++)
- {
- if(edid[i] != edid_v1_header[i])
- ret = fix;
- }
- break;
-
- case FBMON_FIX_INPUT:
- b = edid + EDID_STRUCT_DISPLAY;
- /* Only if display is GTF capable will
- the input type be reset to analog */
- if (b[4] & 0x01 && b[0] & 0x80)
- ret = fix;
- break;
- }
-
- return ret;
-}
-
-static void fix_edid(unsigned char *edid, int32_t fix)
-{
- unsigned char *b;
-
- switch (fix)
- {
- case FBMON_FIX_HEADER:
- memcpy(edid, edid_v1_header, 8);
- break;
-
- case FBMON_FIX_INPUT:
- b = edid + EDID_STRUCT_DISPLAY;
- b[0] &= ~0x80;
- edid[127] += 0x80;
- break;
- }
-}
-
-static int32_t edid_checksum(unsigned char *edid)
-{
- unsigned char i, csum = 0, all_null = 0;
- int err = 0;
- int fix = check_edid(edid);
-
- if (fix)
- fix_edid(edid, fix);
-
- for (i = 0; i < EDID_LENGTH; i++)
- {
- csum += edid[i];
- all_null |= edid[i];
- }
-
- if ((csum == 0x00) && all_null)
- /* checksum passed, everything's good */
- err = 1;
-
- if (!err)
- dbg("edid bad checksum\r\n");
-
- return err;
-}
-
-static int32_t edid_check_header(unsigned char *edid)
-{
- int i;
- int err = 1;
- int fix = check_edid(edid);
-
- if (fix)
- fix_edid(edid, fix);
-
- for (i = 0; i < 8; i++)
- {
- if (edid[i] != edid_v1_header[i])
- err = 0;
- }
-
- if (!err)
- dbg("edid bad header\r\n");
-
- return err;
-}
-
-static void parse_vendor_block(unsigned char *block, struct fb_monspecs *specs)
-{
- specs->manufacturer[0] = ((block[0] & 0x7c) >> 2) + '@';
- specs->manufacturer[1] = ((block[0] & 0x03) << 3) + ((block[1] & 0xe0) >> 5) + '@';
- specs->manufacturer[2] = (block[1] & 0x1f) + '@';
- specs->manufacturer[3] = 0;
- specs->model = block[2] + (block[3] << 8);
- specs->serial = block[4] + (block[5] << 8) + (block[6] << 16) + (block[7] << 24);
- specs->year = block[9] + 1990;
- specs->week = block[8];
- dbg(" Manufacturer: %s\r\n", specs->manufacturer);
- dbg(" Model: %s\r\n", specs->model);
- dbg(" Serial#: %d\r\n", specs->serial);
- dbg(" Year: %d\r\n", specs->year);
- dbg(" Week %d\r\n", specs->week);
-}
-
-static void get_dpms_capabilities(unsigned char flags, struct fb_monspecs *specs)
-{
- specs->dpms = 0;
-
- if (flags & DPMS_ACTIVE_OFF)
- specs->dpms |= FB_DPMS_ACTIVE_OFF;
-
- if (flags & DPMS_SUSPEND)
- specs->dpms |= FB_DPMS_SUSPEND;
-
- if (flags & DPMS_STANDBY)
- specs->dpms |= FB_DPMS_STANDBY;
-
- dbg(" DPMS: Active %s\r\n", (flags & DPMS_ACTIVE_OFF) ? "yes" : "no");
- dbg(" Suspend: %s\r\n", (flags & DPMS_SUSPEND) ? "yes" : "no");
- dbg(" Standby %s\r\n", (flags & DPMS_STANDBY) ? "yes\r\n" : "no\r\n");
-}
-
-static void get_chroma(unsigned char *block, struct fb_monspecs *specs)
-{
- int tmp;
-
- /* Chromaticity data */
- tmp = ((block[5] & (3 << 6)) >> 6) | (block[0x7] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.redx = tmp/1024;
-
- dbg(" Chroma\r\n");
- dbg(" RedX: %d\r\n", specs->chroma.redx / 10);
- tmp = ((block[5] & (3 << 4)) >> 4) | (block[0x8] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.redy = tmp/1024;
-
- dbg(" RedY: %d\r\n", specs->chroma.redy / 10);
- tmp = ((block[5] & (3 << 2)) >> 2) | (block[0x9] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.greenx = tmp/1024;
-
- dbg(" GreenX: %d\r\n", specs->chroma.greenx / 10);
-
- tmp = (block[5] & 3) | (block[0xa] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.greeny = tmp / 1024;
- dbg(" GreenY: %d\r\n", specs->chroma.greeny / 10);
- tmp = ((block[6] & (3 << 6)) >> 6) | (block[0xb] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.bluex = tmp/1024;
- dbg(" BlueX: %d\r\n", specs->chroma.bluex / 10);
- tmp = ((block[6] & (3 << 4)) >> 4) | (block[0xc] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.bluey = tmp/1024;
-
- dbg(" BlueY: %d\r\n", specs->chroma.bluey / 10);
- tmp = ((block[6] & (3 << 2)) >> 2) | (block[0xd] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.whitex = tmp/1024;
- dbg(" WhiteX: %d\r\n", specs->chroma.whitex / 10);
-
- tmp = (block[6] & 3) | (block[0xe] << 2);
- tmp *= 1000;
- tmp += 512;
- specs->chroma.whitey = tmp/1024;
- dbg(" WhiteY: %d\r\n", specs->chroma.whitey / 10);
-}
-
-static int edid_is_serial_block(unsigned char *block)
-{
- if ((block[0] == 0x00) && (block[1] == 0x00)
- && (block[2] == 0x00) && (block[3] == 0xff) && (block[4] == 0x00))
- return 1;
- else
- return 0;
-}
-
-static int edid_is_ascii_block(unsigned char *block)
-{
- if ((block[0] == 0x00) && (block[1] == 0x00)
- && (block[2] == 0x00) && (block[3] == 0xfe) && (block[4] == 0x00))
- return 1;
- else
- return 0;
-}
-
-static int edid_is_limits_block(unsigned char *block)
-{
- if ((block[0] == 0x00) && (block[1] == 0x00)
- && (block[2] == 0x00) && (block[3] == 0xfd) && (block[4] == 0x00))
- return 1;
- else
- return 0;
-}
-
-static int edid_is_monitor_block(unsigned char *block)
-{
- if ((block[0] == 0x00) && (block[1] == 0x00)
- && (block[2] == 0x00) && (block[3] == 0xfc) && (block[4] == 0x00))
- return 1;
- else
- return 0;
-}
-
-static void calc_mode_timings(int32_t xres, int32_t yres, int32_t refresh, struct fb_videomode *mode)
-{
- struct fb_var_screeninfo var;
- struct fb_info info;
-
- var.xres = xres;
- var.yres = yres;
- fb_get_mode(FB_VSYNCTIMINGS | FB_IGNOREMON, refresh, &var, &info);
- mode->xres = xres;
- mode->yres = yres;
- mode->pixclock = var.pixclock;
- mode->refresh = refresh;
- mode->left_margin = var.left_margin;
- mode->right_margin = var.right_margin;
- mode->upper_margin = var.upper_margin;
- mode->lower_margin = var.lower_margin;
- mode->hsync_len = var.hsync_len;
- mode->vsync_len = var.vsync_len;
- mode->vmode = 0;
- mode->sync = 0;
-}
-
-static int get_est_timing(unsigned char *block, struct fb_videomode *mode)
-{
- int num = 0;
- unsigned char c;
-
- c = block[0];
-
- if (c & 0x80)
- {
- calc_mode_timings(720, 400, 70, &mode[num]);
- mode[num++].flag = FB_MODE_IS_CALCULATED;
- dbg(" 720x400@70Hz\r\n");
- }
-
- if (c & 0x40)
- {
- calc_mode_timings(720, 400, 88, &mode[num]);
- mode[num++].flag = FB_MODE_IS_CALCULATED;
- dbg(" 720x400@88Hz\r\n");
- }
-
- if (c & 0x20)
- {
- mode[num++] = vesa_modes[3];
- dbg(" 640x480@60Hz\r\n");
- }
-
- if (c & 0x10)
- {
- calc_mode_timings(640, 480, 67, &mode[num]);
- mode[num++].flag = FB_MODE_IS_CALCULATED;
- dbg(" 640x480@67Hz\r\n");
- }
-
- if (c & 0x08)
- {
- mode[num++] = vesa_modes[4];
- dbg(" 640x480@72Hz\r\n");
- }
-
- if (c & 0x04)
- {
- mode[num++] = vesa_modes[5];
- dbg(" 640x480@75Hz\r\n");
- }
-
- if (c & 0x02)
- {
- mode[num++] = vesa_modes[7];
- dbg(" 800x600@56Hz\r\n");
- }
-
- if (c & 0x01)
- {
- mode[num++] = vesa_modes[8];
- dbg(" 800x600@60Hz\r\n");
- }
-
- c = block[1];
-
- if (c & 0x80)
- {
- mode[num++] = vesa_modes[9];
- dbg(" 800x600@72Hz\r\n");
- }
-
- if (c & 0x40)
- {
- mode[num++] = vesa_modes[10];
- dbg(" 800x600@75Hz\r\n");
- }
-
- if (c & 0x20)
- {
- calc_mode_timings(832, 624, 75, &mode[num]);
- mode[num++].flag = FB_MODE_IS_CALCULATED;
- dbg(" 832x624@75Hz\r\n");
- }
-
- if (c & 0x10)
- {
- mode[num++] = vesa_modes[12];
- dbg(" 1024x768@87Hz Interlaced\r\n");
- }
-
- if (c & 0x08)
- {
- mode[num++] = vesa_modes[13];
- dbg(" 1024x768@60Hz\r\n");
- }
-
- if (c & 0x04)
- {
- mode[num++] = vesa_modes[14];
- dbg(" 1024x768@70Hz\r\n");
- }
-
- if (c & 0x02)
- {
- mode[num++] = vesa_modes[15];
- dbg(" 1024x768@75Hz\r\n");
- }
-
- if (c & 0x01)
- {
- mode[num++] = vesa_modes[21];
- dbg(" 1280x1024@75Hz\r\n");
- }
-
- c = block[2];
-
- if (c & 0x80)
- {
- mode[num++] = vesa_modes[17];
- dbg(" 1152x870@75Hz\r\n");
- }
- dbg(" Manufacturer's mask: 0x%02x\r\n", c & 0x7F);
-
- return num;
-}
-
-static int get_std_timing(unsigned char *block, struct fb_videomode *mode)
-{
- int xres;
- int yres = 0;
- int refresh;
- int ratio;
- int i;
-
- xres = (block[0] + 31) * 8;
-
- if (xres <= 256)
- return 0;
-
- ratio = (block[1] & 0xc0) >> 6;
-
- switch(ratio)
- {
- case 0:
- yres = xres;
- break;
-
- case 1:
- yres = (xres * 3) / 4;
- break;
-
- case 2:
- yres = (xres * 4) / 5;
- break;
-
- case 3:
- yres = (xres * 9) / 16;
- break;
- }
- refresh = (block[1] & 0x3f) + 60;
- dbg("%dx%d@ Hz\r\n",xres, yres, refresh);
-
- for (i = 0; i < VESA_MODEDB_SIZE; i++)
- {
- if (vesa_modes[i].xres == xres && vesa_modes[i].yres == yres &&
- vesa_modes[i].refresh == refresh)
- {
- *mode = vesa_modes[i];
- mode->flag |= FB_MODE_IS_STANDARD;
- return 1;
- }
- }
- calc_mode_timings(xres, yres, refresh, mode);
-
- return 1;
-}
-
-static int get_dst_timing(unsigned char *block, struct fb_videomode *mode)
-{
- int j;
- int num = 0;
-
- for (j = 0; j < 6; j++, block+= STD_TIMING_DESCRIPTION_SIZE)
- num += get_std_timing(block, &mode[num]);
-
- return num;
-}
-
-static void get_detailed_timing(unsigned char *block, struct fb_videomode *mode)
-{
- mode->xres = H_ACTIVE;
- mode->yres = V_ACTIVE;
- mode->pixclock = PIXEL_CLOCK;
- mode->pixclock /= 1000;
- mode->pixclock = KHZ2PICOS(mode->pixclock);
- mode->right_margin = H_SYNC_OFFSET;
- mode->left_margin = (H_ACTIVE + H_BLANKING) - (H_ACTIVE + H_SYNC_OFFSET + H_SYNC_WIDTH);
- mode->upper_margin = V_BLANKING - V_SYNC_OFFSET - V_SYNC_WIDTH;
- mode->lower_margin = V_SYNC_OFFSET;
- mode->hsync_len = H_SYNC_WIDTH;
- mode->vsync_len = V_SYNC_WIDTH;
-
- if (HSYNC_POSITIVE)
- mode->sync |= FB_SYNC_HOR_HIGH_ACT;
-
- if (VSYNC_POSITIVE)
- mode->sync |= FB_SYNC_VERT_HIGH_ACT;
-
- mode->refresh = PIXEL_CLOCK / ((H_ACTIVE + H_BLANKING) * (V_ACTIVE + V_BLANKING));
- mode->vmode = 0;
- mode->flag = FB_MODE_IS_DETAILED;
- dbg("%d MHz 0x%04x 0x%04x 0x%04x 0x%04x 0x%04x 0x%04x 0x%04x\r\n",
- PIXEL_CLOCK / 1000000,
- H_ACTIVE,
- H_ACTIVE + H_SYNC_OFFSET,
- H_ACTIVE + H_SYNC_OFFSET + H_SYNC_WIDTH,
- H_ACTIVE + H_BLANKING,
- V_ACTIVE,
- V_ACTIVE + V_SYNC_OFFSET,
- V_ACTIVE + V_SYNC_OFFSET + V_SYNC_WIDTH,
- V_ACTIVE + V_BLANKING);
- dbg("Hsync %s Vsync %s\r\n",
- (HSYNC_POSITIVE) ? " +" : " -",
- (VSYNC_POSITIVE) ? "+" : "-");
-}
-
-#define MAX_DB_ALLOC 100
-static struct fb_videomode tab_db[MAX_DB_ALLOC];
-static struct fb_videomode *db_used[MAX_DB_ALLOC];
-
-static struct fb_videomode *alloc_db(int num)
-{
- int i = 0;
-
- if (!num)
- return NULL;
-
- while (i < MAX_DB_ALLOC)
- {
- if ((db_used[i] == NULL) && ((i + num) <= MAX_DB_ALLOC))
- {
- int32_t j; /* search contiguous num db free */
-
- for (j = 0; j < num; j++)
- {
- if (db_used[i + j] != NULL)
- break; /* already used */
- }
- if (j >= num)
- {
- struct fb_videomode *p = &tab_db[i];
-
- for (j = 0; j < num; db_used[i+j] = p, j++);
-
- return p;
- }
- }
- i++;
- }
- return NULL;
-}
-
-static void free_db(struct fb_videomode *db)
-{
- int32_t i;
-
- for (i = 0; i < MAX_DB_ALLOC; i++)
- {
- if (db_used[i] == db)
- db_used[i] = NULL;
- }
-}
-
-/**
- * fb_destroy_modedb - destroys mode database
- * @modedb: mode database to destroy
- *
- * DESCRIPTION:
- * Destroy mode database created by fb_create_modedb
- */
-void fb_destroy_modedb(struct fb_videomode *modedb)
-{
- // Funcs_free(modedb);
- free_db(modedb);
-}
-
-/**
- * fb_create_modedb - create video mode database
- * @edid: EDID data
- * @dbsize: database size
- *
- * RETURNS: struct fb_videomode, @dbsize contains length of database
- *
- * DESCRIPTION:
- * This function builds a mode database using the contents of the EDID
- * data
- */
-static struct fb_videomode *fb_create_modedb(unsigned char *edid, int *dbsize)
-{
- struct fb_videomode *mode;
- struct fb_videomode *m;
- unsigned char *block;
- int num = 0;
- int i;
-
- // mode = Funcs_malloc(50 * sizeof(struct fb_videomode), 3);
- mode = alloc_db(50);
-
- if (mode == NULL)
- return NULL;
-
- memset(mode, 0, 50 * sizeof(struct fb_videomode));
-
- if (edid == NULL || !edid_checksum(edid) || !edid_check_header(edid))
- {
- fb_destroy_modedb(mode);
-
- return NULL;
- }
- *dbsize = 0;
- dbg(" Supported VESA Modes\r\n");
- block = edid + ESTABLISHED_TIMING_1;
- num += get_est_timing(block, &mode[num]);
- dbg(" Standard Timings\r\n");
- block = edid + STD_TIMING_DESCRIPTIONS_START;
- for (i = 0; i < STD_TIMING; i++, block += STD_TIMING_DESCRIPTION_SIZE)
- num += get_std_timing(block, &mode[num]);
- dbg(" Detailed Timings\r\n");
- block = edid + DETAILED_TIMING_DESCRIPTIONS_START;
- for (i = 0; i < 4; i++, block+= DETAILED_TIMING_DESCRIPTION_SIZE)
- {
- int first = 1;
-
- if (block[0] == 0x00 && block[1] == 0x00)
- {
- if (block[3] == 0xfa)
- num += get_dst_timing(block + 5, &mode[num]);
- }
- else
- {
- get_detailed_timing(block, &mode[num]);
- if (first)
- {
- mode[num].flag |= FB_MODE_IS_FIRST;
- first = 0;
- }
- num++;
- }
- }
-
- /* Yikes, EDID data is totally useless */
- if (!num)
- {
- fb_destroy_modedb(mode);
-
- return NULL;
- }
- *dbsize = num;
- // m = Funcs_malloc(num * sizeof(struct fb_videomode), 3);
- m = alloc_db(num);
- if (!m)
- return mode;
- memcpy(m, mode, num * sizeof(struct fb_videomode));
- fb_destroy_modedb(mode);
-
- return m;
-}
-
-static int fb_get_monitor_limits(unsigned char *edid, struct fb_monspecs *specs)
-{
- int i;
- int retval = 1;
- unsigned char *block;
-
- block = edid + DETAILED_TIMING_DESCRIPTIONS_START;
- dbg(" Monitor Operating Limits: ");
- for (i = 0; i < 4; i++, block += DETAILED_TIMING_DESCRIPTION_SIZE)
- {
- if (edid_is_limits_block(block))
- {
- specs->hfmin = H_MIN_RATE * 1000;
- specs->hfmax = H_MAX_RATE * 1000;
- specs->vfmin = V_MIN_RATE;
- specs->vfmax = V_MAX_RATE;
- specs->dclkmax = MAX_PIXEL_CLOCK * 1000000;
- specs->gtf = (GTF_SUPPORT) ? 1 : 0;
- retval = 0;
- dbg("From EDID\r\n");
- break;
- }
- }
-
- /* estimate monitor limits based on modes supported */
- if (retval)
- {
- struct fb_videomode *modes;
- int num_modes;
- int i;
- int hz;
- int hscan;
- int pixclock;
-
- modes = fb_create_modedb(edid, &num_modes);
- if (!modes)
- {
- dbg("None Available\r\n");
-
- return 1;
- }
- retval = 0;
- for (i = 0; i < num_modes; i++)
- {
- hz = modes[i].refresh;
- pixclock = PICOS2KHZ(modes[i].pixclock) * 1000;
- hscan = (modes[i].yres * 105 * hz + 5000)/100;
- if (specs->dclkmax == 0 || specs->dclkmax < pixclock)
- specs->dclkmax = pixclock;
- if (specs->dclkmin == 0 || specs->dclkmin > pixclock)
- specs->dclkmin = pixclock;
- if (specs->hfmax == 0 || specs->hfmax < hscan)
- specs->hfmax = hscan;
- if (specs->hfmin == 0 || specs->hfmin > hscan)
- specs->hfmin = hscan;
- if (specs->vfmax == 0 || specs->vfmax < hz)
- specs->vfmax = hz;
- if (specs->vfmin == 0 || specs->vfmin > hz)
- specs->vfmin = hz;
- }
- dbg("Extrapolated\r\n");
- fb_destroy_modedb(modes);
- }
- dbg(" H: %d - %d kHz V: %d - %d kHz, DCLK: %d MHz\r\n",
- specs->hfmin / 1000,
- specs->hfmax / 1000,
- specs->vfmin,
- specs->vfmax,
- specs->dclkmax / 1000000);
-
- return retval;
-}
-
-static void get_monspecs(unsigned char *edid, struct fb_monspecs *specs)
-{
- unsigned char c, *block;
-
- block = edid + EDID_STRUCT_DISPLAY;
- fb_get_monitor_limits(edid, specs);
- c = block[0] & 0x80;
- specs->input = 0;
-
- if (c)
- {
- specs->input |= FB_DISP_DDI;
- dbg(" Digital Display Input");
- }
- else
- {
- switch ((block[0] & 0x60) >> 5)
- {
- case 0:
- //dbg(" Analog Display Input: Input Voltage - 0.700V/0.300V");
- specs->input |= FB_DISP_ANA_700_300;
- break;
-
- case 1:
- //dbg("0.714V/0.286V");
- specs->input |= FB_DISP_ANA_714_286;
- break;
-
- case 2:
- //dbg("1.000V/0.400V");
- specs->input |= FB_DISP_ANA_1000_400;
- break;
-
- case 3:
- //dbg("0.700V/0.000V");
- specs->input |= FB_DISP_ANA_700_000;
- break;
- }
- }
-
- // dbg("Sync: ");
- c = block[0] & 0x10;
-
- if (c)
- {
- dbg(" Configurable signal level\r\n");
- }
-
- c = block[0] & 0x0f;
- specs->signal = 0;
-
- if (c & 0x10)
- {
- //DPRINT("Blank to Blank ");
- specs->signal |= FB_SIGNAL_BLANK_BLANK;
- }
-
- if (c & 0x08)
- {
- //DPRINT("Separate ");
- specs->signal |= FB_SIGNAL_SEPARATE;
- }
-
- if (c & 0x04)
- {
- //DPRINT("Composite ");
- specs->signal |= FB_SIGNAL_COMPOSITE;
- }
-
- if (c & 0x02)
- {
- //DPRINT("Sync on Green ");
- specs->signal |= FB_SIGNAL_SYNC_ON_GREEN;
- }
-
- if (c & 0x01)
- {
- // DPRINT("Serration on ");
- specs->signal |= FB_SIGNAL_SERRATION_ON;
- }
- specs->max_x = block[1];
- specs->max_y = block[2];
-
- c = block[3];
-
- specs->gamma = c+100;
- dbg(" Gamma %d\r\n: ",specs->gamma / 100);
- get_dpms_capabilities(block[4], specs);
-
- switch ((block[4] & 0x18) >> 3)
- {
- case 0:
- dbg(" Monochrome/Grayscale\r\n");
- specs->input |= FB_DISP_MONO;
- break;
-
- case 1:
- dbg(" RGB Color Display\r\n");
- specs->input |= FB_DISP_RGB;
- break;
-
- case 2:
- dbg(" Non-RGB Multicolor Display\r\n");
- specs->input |= FB_DISP_MULTI;
- break;
-
- default:
- dbg(" Unknown\r\n");
- specs->input |= FB_DISP_UNKNOWN;
- break;
- }
- get_chroma(block, specs);
- specs->misc = 0;
- c = block[4] & 0x7;
- if (c & 0x04)
- {
- dbg(" Default color format is primary\r\n");
- specs->misc |= FB_MISC_PRIM_COLOR;
- }
- if (c & 0x02)
- {
- dbg(" First DETAILED Timing is preferred\r\n");
- specs->misc |= FB_MISC_1ST_DETAIL;
- }
- if (c & 0x01)
- {
- dbg(" Display is GTF capable\r\n");
- specs->gtf = 1;
- }
-}
-
-static int edid_is_timing_block(unsigned char *block)
-{
- if ((block[0] != 0x00) || (block[1] != 0x00)
- || (block[2] != 0x00) || (block[4] != 0x00))
- return 1;
- else
- return 0;
-}
-
-int fb_parse_edid(unsigned char *edid, struct fb_var_screeninfo *var)
-{
- int32_t i;
- unsigned char *block;
-
- if (edid == NULL || var == NULL)
- return 1;
- if (!(edid_checksum(edid)))
- return 1;
- if (!(edid_check_header(edid)))
- return 1;
- block = edid + DETAILED_TIMING_DESCRIPTIONS_START;
- for (i = 0; i < 4; i++, block += DETAILED_TIMING_DESCRIPTION_SIZE)
- {
- if (edid_is_timing_block(block))
- {
- var->xres = var->xres_virtual = H_ACTIVE;
- var->yres = var->yres_virtual = V_ACTIVE;
- var->height = var->width = -1;
- var->right_margin = H_SYNC_OFFSET;
- var->left_margin = (H_ACTIVE + H_BLANKING) - (H_ACTIVE + H_SYNC_OFFSET + H_SYNC_WIDTH);
- var->upper_margin = V_BLANKING - V_SYNC_OFFSET - V_SYNC_WIDTH;
- var->lower_margin = V_SYNC_OFFSET;
- var->hsync_len = H_SYNC_WIDTH;
- var->vsync_len = V_SYNC_WIDTH;
- var->pixclock = PIXEL_CLOCK;
- var->pixclock /= 1000;
- var->pixclock = KHZ2PICOS(var->pixclock);
- if (HSYNC_POSITIVE)
- var->sync |= FB_SYNC_HOR_HIGH_ACT;
- if (VSYNC_POSITIVE)
- var->sync |= FB_SYNC_VERT_HIGH_ACT;
- return 0;
- }
- }
- dbg("edid no timing block\r\n");
-
- return 1;
-}
-
-void fb_edid_to_monspecs(unsigned char *edid, struct fb_monspecs *specs)
-{
- unsigned char *block;
- int i;
-
- if (edid == NULL)
- return;
-
- if (!(edid_checksum(edid)))
- return;
-
- if (!(edid_check_header(edid)))
- return;
-
- if (specs->modedb != NULL)
- fb_destroy_modedb(specs->modedb);
-
- memset(specs, 0, sizeof(struct fb_monspecs));
- specs->version = edid[EDID_STRUCT_VERSION];
- specs->revision = edid[EDID_STRUCT_REVISION];
- dbg("========================================\r\n");
- dbg("Display Information (EDID)\r\n");
- dbg("========================================\r\n");
- dbg(" EDID Version %d.%d\r\n", specs->version, specs->revision);
-
- parse_vendor_block(edid + ID_MANUFACTURER_NAME, specs);
- block = edid + DETAILED_TIMING_DESCRIPTIONS_START;
- for (i = 0; i < 4; i++, block += DETAILED_TIMING_DESCRIPTION_SIZE)
- {
- if (edid_is_serial_block(block))
- {
- copy_string(block, specs->serial_no);
- dbg(" Serial Number: %d\r\n", specs->serial_no);
- }
- else if (edid_is_ascii_block(block))
- {
- copy_string(block, specs->ascii);
- //DPRINT(" ASCII Block: ");
- //DPRINT((void *)specs->ascii);
- //DPRINT("\r\n");
- }
- else if (edid_is_monitor_block(block))
- {
- copy_string(block, specs->monitor);
- //DPRINT(" Monitor Name: ");
- //DPRINT((void *)specs->monitor);
- //DPRINT("\r\n");
- }
- }
- //DPRINT(" Display Characteristics:\r\n");
- get_monspecs(edid, specs);
- specs->modedb = fb_create_modedb(edid, (int *) &specs->modedb_len);
- dbg("========================================\r\n");
-}
-
-/*
- * VESA Generalized Timing Formula (GTF)
- */
-
-#define FLYBACK 550
-#define V_FRONTPORCH 1
-#define H_OFFSET 40
-#define H_SCALEFACTOR 20
-#define H_BLANKSCALE 128
-#define H_GRADIENT 600
-#define C_VAL 30
-#define M_VAL 300
-
-struct __fb_timings
-{
- unsigned long dclk;
- unsigned long hfreq;
- unsigned long vfreq;
- unsigned long hactive;
- unsigned long vactive;
- unsigned long hblank;
- unsigned long vblank;
- unsigned long htotal;
- unsigned long vtotal;
-};
-
-/**
- * fb_get_vblank - get vertical blank time
- * @hfreq: horizontal freq
- *
- * DESCRIPTION:
- * vblank = right_margin + vsync_len + left_margin
- *
- * given: right_margin = 1 (V_FRONTPORCH)
- * vsync_len = 3
- * flyback = 550
- *
- * flyback * hfreq
- * left_margin = --------------- - vsync_len
- * 1000000
- */
-static unsigned long fb_get_vblank(unsigned long hfreq)
-{
- unsigned long vblank;
-
- vblank = (hfreq * FLYBACK)/1000;
- vblank = (vblank + 500)/1000;
- return vblank + V_FRONTPORCH;
-}
-
-/**
- * fb_get_hblank_by_freq - get horizontal blank time given hfreq
- * @hfreq: horizontal freq
- * @xres: horizontal resolution in pixels
- *
- * DESCRIPTION:
- *
- * xres * duty_cycle
- * hblank = ------------------
- * 100 - duty_cycle
- *
- * duty cycle = percent of htotal assigned to inactive display
- * duty cycle = C - (M/Hfreq)
- *
- * where: C = ((offset - scale factor) * blank_scale)
- * -------------------------------------- + scale factor
- * 256
- * M = blank_scale * gradient
- *
- */
-static unsigned long fb_get_hblank_by_hfreq(unsigned long hfreq, unsigned long xres)
-{
- unsigned long c_val, m_val, duty_cycle, hblank;
-
- c_val = (((H_OFFSET - H_SCALEFACTOR) * H_BLANKSCALE)/256 + H_SCALEFACTOR) * 1000;
- m_val = (H_BLANKSCALE * H_GRADIENT)/256;
- m_val = (m_val * 1000000)/hfreq;
- duty_cycle = c_val - m_val;
- hblank = (xres * duty_cycle)/(100000 - duty_cycle);
-
- return hblank;
-}
-
-/* Quick integer square root using binomial theorem (from Dr. Dobbs journal) */
-static int32_t int32_t_sqrt(int32_t N)
-{
- unsigned long l2, u, v, u2, n;
-
- if (N < 2)
- return N;
- u = N;
- l2 = 0;
- /* 1/2 * log_2 N = highest bit in the result */
- while ((u >>= 2))
- l2++;
- u = 1L << l2;
- v = u;
- u2 = u << l2;
-
- while (l2--)
- {
- v >>= 1;
- n = (u + u + v) << l2;
- n += u2;
- if (n <= N)
- {
- u += v;
- u2 = n;
- }
- }
- return u;
-}
-
-/**
- * fb_get_hblank_by_dclk - get horizontal blank time given pixelclock
- * @dclk: pixelclock in Hz
- * @xres: horizontal resolution in pixels
- *
- * DESCRIPTION:
- *
- * xres * duty_cycle
- * hblank = ------------------
- * 100 - duty_cycle
- *
- * duty cycle = percent of htotal assigned to inactive display
- * duty cycle = C - (M * h_period)
- *
- * where: h_period = SQRT(100 - C + (0.4 * xres * M)/dclk) + C - 100
- * -----------------------------------------------
- * 2 * M
- * M = 300;
- * C = 30;
-
- */
-static unsigned long fb_get_hblank_by_dclk(unsigned long dclk, unsigned long xres)
-{
- unsigned long duty_cycle, h_period, hblank;
-
- dclk /= 1000;
- h_period = 100 - C_VAL;
- h_period *= h_period;
- h_period += (M_VAL * xres * 2 * 1000)/(5 * dclk);
- h_period *=10000;
- h_period = int32_t_sqrt(h_period);
- h_period -= (100 - C_VAL) * 100;
- h_period *= 1000;
- h_period /= 2 * M_VAL;
- duty_cycle = C_VAL * 1000 - (M_VAL * h_period)/100;
- hblank = (xres * duty_cycle)/(100000 - duty_cycle) + 8;
- hblank &= ~15;
-
- return hblank;
-}
-
-/**
- * fb_get_hfreq - estimate hsync
- * @vfreq: vertical refresh rate
- * @yres: vertical resolution
- *
- * DESCRIPTION:
- *
- * (yres + front_port) * vfreq * 1000000
- * hfreq = -------------------------------------
- * (1000000 - (vfreq * FLYBACK)
- *
- */
-
-static unsigned long fb_get_hfreq(unsigned long vfreq, unsigned long yres)
-{
- unsigned long divisor, hfreq;
-
- divisor = (1000000 - (vfreq * FLYBACK))/1000;
- hfreq = (yres + V_FRONTPORCH) * vfreq * 1000;
-
- return hfreq / divisor;
-}
-
-static void fb_timings_vfreq(struct __fb_timings *timings)
-{
- timings->hfreq = fb_get_hfreq(timings->vfreq, timings->vactive);
- timings->vblank = fb_get_vblank(timings->hfreq);
- timings->vtotal = timings->vactive + timings->vblank;
- timings->hblank = fb_get_hblank_by_hfreq(timings->hfreq,
- timings->hactive);
- timings->htotal = timings->hactive + timings->hblank;
- timings->dclk = timings->htotal * timings->hfreq;
-}
-
-static void fb_timings_hfreq(struct __fb_timings *timings)
-{
- timings->vblank = fb_get_vblank(timings->hfreq);
- timings->vtotal = timings->vactive + timings->vblank;
- timings->vfreq = timings->hfreq/timings->vtotal;
- timings->hblank = fb_get_hblank_by_hfreq(timings->hfreq, timings->hactive);
- timings->htotal = timings->hactive + timings->hblank;
- timings->dclk = timings->htotal * timings->hfreq;
-}
-
-static void fb_timings_dclk(struct __fb_timings *timings)
-{
- timings->hblank = fb_get_hblank_by_dclk(timings->dclk, timings->hactive);
- timings->htotal = timings->hactive + timings->hblank;
- timings->hfreq = timings->dclk/timings->htotal;
- timings->vblank = fb_get_vblank(timings->hfreq);
- timings->vtotal = timings->vactive + timings->vblank;
- timings->vfreq = timings->hfreq/timings->vtotal;
-}
-
-/*
- * fb_get_mode - calculates video mode using VESA GTF
- * @flags: if: 0 - maximize vertical refresh rate
- * 1 - vrefresh-driven calculation;
- * 2 - hscan-driven calculation;
- * 3 - pixelclock-driven calculation;
- * @val: depending on @flags, ignored, vrefresh, hsync or pixelclock
- * @var: pointer to fb_var_screeninfo
- * @info: pointer to fb_info
- *
- * DESCRIPTION:
- * Calculates video mode based on monitor specs using VESA GTF.
- * The GTF is best for VESA GTF compliant monitors but is
- * specifically formulated to work for older monitors as well.
- *
- * If @flag==0, the function will attempt to maximize the
- * refresh rate. Otherwise, it will calculate timings based on
- * the flag and accompanying value.
- *
- * If FB_IGNOREMON bit is set in @flags, monitor specs will be
- * ignored and @var will be filled with the calculated timings.
- *
- * All calculations are based on the VESA GTF Spreadsheet
- * available at VESA's public ftp (http://www.vesa.org).
- *
- * NOTES:
- * The timings generated by the GTF will be different from VESA
- * DMT. It might be a good idea to keep a table of standard
- * VESA modes as well. The GTF may also not work for some displays,
- * such as, and especially, analog TV.
- *
- * REQUIRES:
- * A valid info->monspecs, otherwise 'safe numbers' will be used.
- */
-int32_t fb_get_mode(int32_t flags, uint32_t val, struct fb_var_screeninfo *var, struct fb_info *info)
-{
- struct __fb_timings timings;
- unsigned long interlace = 1, dscan = 1;
- unsigned long hfmin, hfmax, vfmin, vfmax, dclkmin, dclkmax;
-
- /*
- * If monspecs are invalid, use values that are enough
- * for 640x480@60
- */
- if (!info->monspecs.hfmax || !info->monspecs.vfmax
- || !info->monspecs.dclkmax || info->monspecs.hfmax < info->monspecs.hfmin
- || info->monspecs.vfmax < info->monspecs.vfmin || info->monspecs.dclkmax < info->monspecs.dclkmin)
- {
- hfmin = 29000; hfmax = 30000;
- vfmin = 60; vfmax = 60;
- dclkmin = 0; dclkmax = 25000000;
- }
- else
- {
- hfmin = info->monspecs.hfmin;
- hfmax = info->monspecs.hfmax;
- vfmin = info->monspecs.vfmin;
- vfmax = info->monspecs.vfmax;
- dclkmin = info->monspecs.dclkmin;
- dclkmax = info->monspecs.dclkmax;
- }
- memset(&timings, 0, sizeof(struct __fb_timings));
- timings.hactive = var->xres;
- timings.vactive = var->yres;
-
- if (var->vmode & FB_VMODE_INTERLACED)
- {
- timings.vactive /= 2;
- interlace = 2;
- }
-
- if (var->vmode & FB_VMODE_DOUBLE)
- {
- timings.vactive *= 2;
- dscan = 2;
- }
-
- switch (flags & ~FB_IGNOREMON)
- {
- case FB_MAXTIMINGS: /* maximize refresh rate */
- timings.hfreq = hfmax;
- fb_timings_hfreq(&timings);
- if (timings.vfreq > vfmax)
- {
- timings.vfreq = vfmax;
- fb_timings_vfreq(&timings);
- }
-
- if (timings.dclk > dclkmax)
- {
- timings.dclk = dclkmax;
- fb_timings_dclk(&timings);
- }
- break;
-
- case FB_VSYNCTIMINGS: /* vrefresh driven */
- timings.vfreq = val;
- fb_timings_vfreq(&timings);
- break;
-
- case FB_HSYNCTIMINGS: /* hsync driven */
- timings.hfreq = val;
- fb_timings_hfreq(&timings);
- break;
-
- case FB_DCLKTIMINGS: /* pixelclock driven */
- timings.dclk = PICOS2KHZ(val) * 1000;
- fb_timings_dclk(&timings);
- break;
-
- default:
- return -1; // -EINVAL;
- }
- if (!(flags & FB_IGNOREMON)
- && (timings.vfreq < vfmin || timings.vfreq > vfmax
- || timings.hfreq < hfmin || timings.hfreq > hfmax
- || timings.dclk < dclkmin || timings.dclk > dclkmax))
- return -1; //-EINVAL;
-
- var->pixclock = KHZ2PICOS(timings.dclk/1000);
- var->hsync_len = (timings.htotal * 8)/100;
- var->right_margin = (timings.hblank/2) - var->hsync_len;
- var->left_margin = timings.hblank - var->right_margin - var->hsync_len;
- var->vsync_len = (3 * interlace)/dscan;
- var->lower_margin = (1 * interlace)/dscan;
- var->upper_margin = (timings.vblank * interlace)/dscan - (var->vsync_len + var->lower_margin);
-
- return 0;
-}
-
-/*
- * fb_validate_mode - validates var against monitor capabilities
- * @var: pointer to fb_var_screeninfo
- * @info: pointer to fb_info
- *
- * DESCRIPTION:
- * Validates video mode against monitor capabilities specified in
- * info->monspecs.
- *
- * REQUIRES:
- * A valid info->monspecs.
- */
-int32_t fb_validate_mode(const struct fb_var_screeninfo *var, struct fb_info *info)
-{
- unsigned long hfreq, vfreq, htotal, vtotal, pixclock;
- unsigned long hfmin, hfmax, vfmin, vfmax, dclkmin, dclkmax;
- /*
- * If monspecs are invalid, use values that are enough
- * for 640x480@60
- */
- if (!info->monspecs.hfmax || !info->monspecs.vfmax || !info->monspecs.dclkmax
- || info->monspecs.hfmax < info->monspecs.hfmin
- || info->monspecs.vfmax < info->monspecs.vfmin
- || info->monspecs.dclkmax < info->monspecs.dclkmin)
- {
- hfmin = 29000; hfmax = 30000;
- vfmin = 60; vfmax = 60;
- dclkmin = 0; dclkmax = 25000000;
- }
- else
- {
- hfmin = info->monspecs.hfmin;
- hfmax = info->monspecs.hfmax;
- vfmin = info->monspecs.vfmin;
- vfmax = info->monspecs.vfmax;
- dclkmin = info->monspecs.dclkmin;
- dclkmax = info->monspecs.dclkmax;
- }
- if (!var->pixclock)
- return -1; // -EINVAL;
-
- pixclock = PICOS2KHZ(var->pixclock) * 1000;
- htotal = var->xres + var->right_margin + var->hsync_len + var->left_margin;
- vtotal = var->yres + var->lower_margin + var->vsync_len + var->upper_margin;
- if (var->vmode & FB_VMODE_INTERLACED)
- vtotal /= 2;
- if (var->vmode & FB_VMODE_DOUBLE)
- vtotal *= 2;
- hfreq = pixclock/htotal;
- vfreq = hfreq/vtotal;
- return (vfreq < vfmin || vfreq > vfmax || hfreq < hfmin || hfreq > hfmax
- || pixclock < dclkmin || pixclock > dclkmax) ? -1 /* -EINVAL */ : 0;
-}
-
diff --git a/BaS_gcc/video/fnt_st_8x16.c b/BaS_gcc/video/fnt_st_8x16.c
deleted file mode 100644
index 1896aed..0000000
--- a/BaS_gcc/video/fnt_st_8x16.c
+++ /dev/null
@@ -1,339 +0,0 @@
-/*
- * fnt-8x16.c - 8x16 font for Atari ST encoding
- *
- * Copyright (C) 2001-2002 The EmuTOS development team
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-#include "bas_types.h"
-#include "font.h"
-
-static const uint16_t off_table[] =
-{
- 0x0000, 0x0008, 0x0010, 0x0018, 0x0020, 0x0028, 0x0030, 0x0038,
- 0x0040, 0x0048, 0x0050, 0x0058, 0x0060, 0x0068, 0x0070, 0x0078,
- 0x0080, 0x0088, 0x0090, 0x0098, 0x00a0, 0x00a8, 0x00b0, 0x00b8,
- 0x00c0, 0x00c8, 0x00d0, 0x00d8, 0x00e0, 0x00e8, 0x00f0, 0x00f8,
- 0x0100, 0x0108, 0x0110, 0x0118, 0x0120, 0x0128, 0x0130, 0x0138,
- 0x0140, 0x0148, 0x0150, 0x0158, 0x0160, 0x0168, 0x0170, 0x0178,
- 0x0180, 0x0188, 0x0190, 0x0198, 0x01a0, 0x01a8, 0x01b0, 0x01b8,
- 0x01c0, 0x01c8, 0x01d0, 0x01d8, 0x01e0, 0x01e8, 0x01f0, 0x01f8,
- 0x0200, 0x0208, 0x0210, 0x0218, 0x0220, 0x0228, 0x0230, 0x0238,
- 0x0240, 0x0248, 0x0250, 0x0258, 0x0260, 0x0268, 0x0270, 0x0278,
- 0x0280, 0x0288, 0x0290, 0x0298, 0x02a0, 0x02a8, 0x02b0, 0x02b8,
- 0x02c0, 0x02c8, 0x02d0, 0x02d8, 0x02e0, 0x02e8, 0x02f0, 0x02f8,
- 0x0300, 0x0308, 0x0310, 0x0318, 0x0320, 0x0328, 0x0330, 0x0338,
- 0x0340, 0x0348, 0x0350, 0x0358, 0x0360, 0x0368, 0x0370, 0x0378,
- 0x0380, 0x0388, 0x0390, 0x0398, 0x03a0, 0x03a8, 0x03b0, 0x03b8,
- 0x03c0, 0x03c8, 0x03d0, 0x03d8, 0x03e0, 0x03e8, 0x03f0, 0x03f8,
- 0x0400, 0x0408, 0x0410, 0x0418, 0x0420, 0x0428, 0x0430, 0x0438,
- 0x0440, 0x0448, 0x0450, 0x0458, 0x0460, 0x0468, 0x0470, 0x0478,
- 0x0480, 0x0488, 0x0490, 0x0498, 0x04a0, 0x04a8, 0x04b0, 0x04b8,
- 0x04c0, 0x04c8, 0x04d0, 0x04d8, 0x04e0, 0x04e8, 0x04f0, 0x04f8,
- 0x0500, 0x0508, 0x0510, 0x0518, 0x0520, 0x0528, 0x0530, 0x0538,
- 0x0540, 0x0548, 0x0550, 0x0558, 0x0560, 0x0568, 0x0570, 0x0578,
- 0x0580, 0x0588, 0x0590, 0x0598, 0x05a0, 0x05a8, 0x05b0, 0x05b8,
- 0x05c0, 0x05c8, 0x05d0, 0x05d8, 0x05e0, 0x05e8, 0x05f0, 0x05f8,
- 0x0600, 0x0608, 0x0610, 0x0618, 0x0620, 0x0628, 0x0630, 0x0638,
- 0x0640, 0x0648, 0x0650, 0x0658, 0x0660, 0x0668, 0x0670, 0x0678,
- 0x0680, 0x0688, 0x0690, 0x0698, 0x06a0, 0x06a8, 0x06b0, 0x06b8,
- 0x06c0, 0x06c8, 0x06d0, 0x06d8, 0x06e0, 0x06e8, 0x06f0, 0x06f8,
- 0x0700, 0x0708, 0x0710, 0x0718, 0x0720, 0x0728, 0x0730, 0x0738,
- 0x0740, 0x0748, 0x0750, 0x0758, 0x0760, 0x0768, 0x0770, 0x0778,
- 0x0780, 0x0788, 0x0790, 0x0798, 0x07a0, 0x07a8, 0x07b0, 0x07b8,
- 0x07c0, 0x07c8, 0x07d0, 0x07d8, 0x07e0, 0x07e8, 0x07f0, 0x07f8,
- 0x0800,
-};
-
-static const uint16_t dat_table[] =
-{
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1104,
- 0x0000, 0x0000, 0x1800, 0x3800, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x4000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x003c,
- 0x0600, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x6032, 0x3200, 0x0000, 0x0000, 0x00f1,
- 0x00f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0060, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0018, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x05a0,
- 0x7c00, 0x7c7c, 0x007c, 0x7c7c, 0x7c7c, 0x0000, 0x0000, 0x0b28,
- 0x0000, 0x0000, 0x1800, 0x7c00, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1000,
- 0x6000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x000e, 0x18e0, 0x0000,
- 0x0000, 0x0618, 0x0060, 0x1c00, 0x1800, 0x6000, 0x1860, 0x6666,
- 0x0c00, 0x3e18, 0x0060, 0x1860, 0x0066, 0x6600, 0x0e00, 0x0000,
- 0x0606, 0x0606, 0x3232, 0x0000, 0x0000, 0x0060, 0x6000, 0x0000,
- 0x3232, 0x0100, 0x0000, 0x307a, 0x7a66, 0x0610, 0x0000, 0x005b,
- 0x66f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0060, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x7c00, 0x001e, 0x0e00, 0x0000,
- 0x0000, 0x0000, 0x0018, 0x0000, 0x3838, 0x0000, 0x0000, 0x00fe,
- 0x0000, 0x0030, 0x0c7c, 0xfeee, 0x0100, 0x0008, 0x7838, 0x05a0,
- 0xba02, 0x3a3a, 0x82b8, 0xb8ba, 0xbaba, 0x0078, 0x0000, 0x0dd8,
- 0x0018, 0x6666, 0x3e66, 0x6c18, 0x0660, 0x6600, 0x0000, 0x0006,
- 0x3c18, 0x3c7e, 0x0c7e, 0x1c7e, 0x3c3c, 0x0000, 0x0000, 0x003c,
- 0x3818, 0x7c3c, 0x787e, 0x7e3e, 0x667e, 0x06cc, 0x60c6, 0x663c,
- 0x7c3c, 0xf83e, 0x7e66, 0x66c6, 0x6666, 0x7e1e, 0x6078, 0x1000,
- 0x7000, 0x6000, 0x0600, 0x0e00, 0x6018, 0x0cc0, 0x3800, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0018, 0x1830, 0x0000,
- 0x3c66, 0x0c3c, 0x6630, 0x3600, 0x3c66, 0x3066, 0x3c30, 0x663c,
- 0x1800, 0x7e3c, 0x6630, 0x3c30, 0x6666, 0x6618, 0x1e66, 0x180e,
- 0x0c0c, 0x0c0c, 0x7a7a, 0x0000, 0x1800, 0x0020, 0x2000, 0x0000,
- 0x7a7a, 0x3d00, 0x007e, 0x184c, 0x4c66, 0x0c7c, 0x7a7c, 0x7c5f,
- 0x6666, 0x667c, 0x1e7e, 0x7e38, 0x1e7e, 0x6e3c, 0x3c7e, 0x6c1c,
- 0xfe36, 0x7e6e, 0x3e7c, 0xd67e, 0x387e, 0x7e7e, 0x6e1c, 0x0000,
- 0x0018, 0xfe00, 0xfe00, 0x0000, 0x103c, 0x383e, 0x1e10, 0x3e7c,
- 0x0000, 0x6006, 0x0e18, 0x0000, 0x6c7c, 0x0000, 0x3030, 0x78fe,
- 0x0018, 0x3c38, 0x1c38, 0xfec6, 0x013c, 0x000e, 0x4040, 0x05a0,
- 0xc606, 0x0606, 0xc6c0, 0xc0c6, 0xc6c6, 0x0040, 0x0000, 0x0628,
- 0x0018, 0x6666, 0x7e66, 0x6c18, 0x0c30, 0x6618, 0x0000, 0x0006,
- 0x7e18, 0x7e7e, 0x0c7e, 0x3c7e, 0x7e7e, 0x0000, 0x0e00, 0xe07e,
- 0x7c3c, 0x7e7e, 0x7c7e, 0x7e7e, 0x667e, 0x06cc, 0x60c6, 0x667e,
- 0x7e7e, 0xfc7e, 0x7e66, 0x66c6, 0x6666, 0x7e1e, 0x6078, 0x3800,
- 0x3800, 0x6000, 0x0600, 0x1e00, 0x6018, 0x0cc0, 0x3800, 0x0000,
- 0x0000, 0x0000, 0x1800, 0x0000, 0x0000, 0x0018, 0x1830, 0x0000,
- 0x7e66, 0x1866, 0x6618, 0x1c00, 0x6666, 0x1866, 0x6618, 0x1818,
- 0x7e00, 0xf866, 0x6618, 0x6618, 0x6600, 0x0018, 0x3866, 0x3c1e,
- 0x1818, 0x1818, 0x4c4c, 0x0000, 0x1800, 0x0020, 0x2018, 0x0000,
- 0x4c4c, 0x7e00, 0x00fe, 0x0000, 0x0000, 0x1810, 0xcac6, 0xc655,
- 0x0066, 0x767c, 0x1e7e, 0x7e38, 0x1e7e, 0x6e3c, 0x3e7e, 0x6e1c,
- 0xfe36, 0x7e6e, 0x3e7e, 0xd67e, 0x387e, 0x3e7e, 0x6e36, 0x0000,
- 0x003c, 0x7e00, 0xfe00, 0x0002, 0x107e, 0x6c20, 0x1010, 0x7efe,
- 0x0018, 0x700e, 0x1918, 0x1802, 0x447c, 0x0000, 0x7848, 0x1800,
- 0x003c, 0x242c, 0x34ba, 0xfed6, 0x0366, 0x180f, 0x7040, 0x05a0,
- 0xc606, 0x0606, 0xc6c0, 0xc0c6, 0xc6c6, 0x0070, 0x0000, 0x07d0,
- 0x0018, 0x66ff, 0x606c, 0x3818, 0x1c38, 0x3c18, 0x0000, 0x0006,
- 0x6638, 0x660c, 0x1c60, 0x7006, 0x6666, 0x1818, 0x1c7e, 0x7066,
- 0xe67e, 0x6666, 0x6e60, 0x6060, 0x6618, 0x06d8, 0x60ee, 0x6666,
- 0x6666, 0xcc60, 0x1866, 0x66c6, 0x6666, 0x0c18, 0x6018, 0x3800,
- 0x1c00, 0x6000, 0x0600, 0x1800, 0x6000, 0x00c0, 0x1800, 0x0000,
- 0x0000, 0x0000, 0x1800, 0x0000, 0x0000, 0x0018, 0x1830, 0x0000,
- 0x6600, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3c3c,
- 0x7e00, 0xd800, 0x0000, 0x0000, 0x003c, 0x663c, 0x3066, 0x6618,
- 0x0000, 0x0000, 0x0000, 0x3c3c, 0x0000, 0x0023, 0x2318, 0x0000,
- 0x0000, 0x6601, 0x00d8, 0x3c3c, 0x3c00, 0x0010, 0xca82, 0x8251,
- 0xe666, 0x760c, 0x060c, 0x0618, 0x0466, 0x660c, 0x0606, 0x3e0c,
- 0xfe36, 0x6666, 0x3e06, 0xd666, 0x1806, 0x3666, 0x6632, 0x0066,
- 0x6266, 0x6202, 0x601e, 0x007e, 0x7c66, 0xc630, 0x7c7c, 0xe0c6,
- 0x7e18, 0x381c, 0x1b18, 0x183e, 0x6c7c, 0x0000, 0x4818, 0x3000,
- 0x0066, 0x24e6, 0x6792, 0xfc92, 0x03c3, 0x3c09, 0x4040, 0x0db0,
- 0xc606, 0x0606, 0xc6c0, 0xc0c6, 0xc6c6, 0x7c40, 0x0000, 0x2e10,
- 0x0018, 0x66ff, 0x600c, 0x3818, 0x1818, 0x3c18, 0x0000, 0x000c,
- 0x6638, 0x660c, 0x1c60, 0x6006, 0x6666, 0x1818, 0x387e, 0x3866,
- 0xc266, 0x6666, 0x6660, 0x6060, 0x6618, 0x06d8, 0x60ee, 0x7666,
- 0x6666, 0xcc60, 0x1866, 0x66c6, 0x3c66, 0x0c18, 0x3018, 0x6c00,
- 0x0c3c, 0x7c3c, 0x3e3c, 0x183e, 0x7c38, 0x0ccc, 0x186c, 0x3c3c,
- 0x7c3e, 0x7c3e, 0x7e66, 0x66c6, 0x6666, 0x7e18, 0x1830, 0x6218,
- 0x6666, 0x3c3c, 0x3c3c, 0x3c3c, 0x3c3c, 0x3c38, 0x3838, 0x7e7e,
- 0x6076, 0xd83c, 0x3c3c, 0x6666, 0x667e, 0x667e, 0x3066, 0x6618,
- 0x3c38, 0x3c66, 0x3c66, 0x3e7e, 0x1800, 0x0026, 0x2600, 0x0000,
- 0x3c3c, 0x663d, 0x7ed8, 0x7e7e, 0x7e00, 0x0010, 0xcaba, 0xba00,
- 0x6666, 0x3e0c, 0x060c, 0x6618, 0x0c66, 0x660c, 0x0606, 0x360c,
- 0xc636, 0x6636, 0x0606, 0xd666, 0x1806, 0x3666, 0x7618, 0x10f7,
- 0xf666, 0x607e, 0x3038, 0x66fc, 0xc642, 0xc618, 0xd6d6, 0xc0c6,
- 0x7e18, 0x1c38, 0x1b18, 0x007c, 0x3838, 0x001f, 0x4830, 0x1800,
- 0x00c3, 0x2483, 0xc1d6, 0xfcba, 0x0691, 0x3c08, 0x4038, 0x0db0,
- 0x8202, 0x3a3a, 0xbab8, 0xb882, 0xbaba, 0x7e78, 0x0000, 0x39e0,
- 0x0018, 0x6666, 0x7c18, 0x7018, 0x1818, 0xff7e, 0x007e, 0x000c,
- 0x6618, 0x0c18, 0x3c7c, 0x600c, 0x3c7e, 0x1818, 0x7000, 0x1c0c,
- 0xda66, 0x7e60, 0x667c, 0x7c6e, 0x7e18, 0x06f0, 0x60fe, 0x7666,
- 0x6666, 0xcc70, 0x1866, 0x66c6, 0x3c3c, 0x1818, 0x3018, 0x6c00,
- 0x043e, 0x7e7c, 0x7e7e, 0x7e7e, 0x7e38, 0x0cdc, 0x18fe, 0x7e7e,
- 0x7e7e, 0x7e7e, 0x7e66, 0x66c6, 0x6666, 0x7e38, 0x1838, 0xf218,
- 0x6066, 0x7e3e, 0x3e3e, 0x3e7c, 0x7e7e, 0x7e38, 0x3838, 0x6666,
- 0x607f, 0xde7e, 0x7e7e, 0x6666, 0x6666, 0x6666, 0x307e, 0x6618,
- 0x3e38, 0x7e66, 0x7e66, 0x0666, 0x1800, 0x002c, 0x2c18, 0x1ab0,
- 0x3e7e, 0x6e7e, 0xffde, 0x6666, 0x6600, 0x0010, 0xcaa2, 0xaa00,
- 0x6666, 0x3c0c, 0x0e0c, 0x6618, 0x0c66, 0x6600, 0x0606, 0x660c,
- 0xc636, 0x763e, 0x0606, 0xf666, 0x1806, 0x3676, 0x3e3c, 0x1099,
- 0xdc66, 0x60fc, 0x186c, 0x6690, 0x8242, 0xc63c, 0x9292, 0xc0c6,
- 0x007e, 0x0e70, 0x1818, 0x7e40, 0x0000, 0x0010, 0x4860, 0x4800,
- 0x0081, 0xe783, 0xc1c6, 0xf838, 0x0691, 0x3c08, 0x0000, 0x1db8,
- 0x0000, 0x7c7c, 0x7c7c, 0x7c00, 0x7c7c, 0x0600, 0x0000, 0x3800,
- 0x0018, 0x6666, 0x3e18, 0x7018, 0x1818, 0xff7e, 0x007e, 0x0018,
- 0x6e18, 0x0c18, 0x3c7e, 0x7c0c, 0x3c3e, 0x1818, 0xe000, 0x0e0c,
- 0xd666, 0x7c60, 0x667c, 0x7c6e, 0x7e18, 0x06f0, 0x60d6, 0x7e66,
- 0x6666, 0xfc38, 0x1866, 0x66d6, 0x183c, 0x1818, 0x1818, 0xc600,
- 0x0006, 0x6660, 0x6666, 0x7e66, 0x6618, 0x0cf8, 0x18fe, 0x6666,
- 0x6666, 0x6660, 0x1866, 0x66d6, 0x3c66, 0x0cf0, 0x181e, 0xbe3c,
- 0x6066, 0x6606, 0x0606, 0x0660, 0x6666, 0x6618, 0x1818, 0x6666,
- 0x7c1b, 0xde66, 0x6666, 0x6666, 0x6666, 0x6660, 0x303c, 0x7c7e,
- 0x0618, 0x6666, 0x6676, 0x3e66, 0x1800, 0x0018, 0x1818, 0x36d8,
- 0x0666, 0x6e66, 0xdbde, 0x6666, 0x6600, 0x0010, 0xcaa2, 0xb200,
- 0x6666, 0x3c0c, 0x1e0c, 0x6618, 0x0c66, 0x6600, 0x060e, 0x660c,
- 0xc636, 0x7618, 0x3606, 0xf666, 0x1806, 0x3676, 0x0e66, 0x3899,
- 0x887c, 0x60a8, 0x0cc6, 0x6630, 0x827e, 0xc666, 0x9292, 0xfcc6,
- 0x7e7e, 0x1c38, 0x1818, 0x7e02, 0x0000, 0x00d0, 0x4878, 0x3000,
- 0x00e7, 0x81e6, 0x67d6, 0xfaba, 0x8c9d, 0x3c78, 0x1e1c, 0x399c,
- 0x8202, 0xb83a, 0x3a3a, 0xba02, 0xba3a, 0x060e, 0x07f0, 0x0000,
- 0x0018, 0x00ff, 0x0630, 0xde00, 0x1818, 0x3c18, 0x0000, 0x0018,
- 0x7618, 0x180c, 0x6c06, 0x7e18, 0x6606, 0x0000, 0x707e, 0x1c18,
- 0xd67e, 0x6660, 0x6660, 0x6066, 0x6618, 0x06d8, 0x60d6, 0x7e66,
- 0x7e66, 0xf81c, 0x1866, 0x66d6, 0x1818, 0x3018, 0x1818, 0xc600,
- 0x003e, 0x6660, 0x6666, 0x1866, 0x6618, 0x0cf0, 0x18d6, 0x6666,
- 0x6666, 0x6070, 0x1866, 0x66d6, 0x3c66, 0x18f0, 0x181e, 0x9c24,
- 0x6066, 0x663e, 0x3e3e, 0x3e60, 0x6666, 0x6618, 0x1818, 0x7e7e,
- 0x7c7b, 0xf866, 0x6666, 0x6666, 0x6666, 0x6660, 0xfe18, 0x6618,
- 0x3e18, 0x6666, 0x667e, 0x7e66, 0x3000, 0x0030, 0x3218, 0x6c6c,
- 0x3e66, 0x766e, 0xdbd8, 0x7e7e, 0x6600, 0x0000, 0x7aa2, 0xba00,
- 0x6666, 0x6e0c, 0x360c, 0x6618, 0x0c66, 0x6600, 0x061c, 0x660c,
- 0xc636, 0x061c, 0x3606, 0xc666, 0x1806, 0x3606, 0x0666, 0x38ef,
- 0x8866, 0x6028, 0x0cc6, 0x6630, 0x8242, 0x6c42, 0x9292, 0xfcc6,
- 0x7e18, 0x381c, 0x1818, 0x003e, 0x0000, 0x00d0, 0x0000, 0x0000,
- 0x0024, 0xc32c, 0x3492, 0xf292, 0x8c81, 0x3cf8, 0x1012, 0x799e,
- 0xc606, 0xc006, 0x0606, 0xc606, 0xc606, 0x7e10, 0x0ff8, 0x0000,
- 0x0018, 0x00ff, 0x0636, 0xde00, 0x1818, 0x3c18, 0x0000, 0x0030,
- 0x6618, 0x180c, 0x6c06, 0x6618, 0x6606, 0x0000, 0x387e, 0x3818,
- 0xdc7e, 0x6660, 0x6660, 0x6066, 0x6618, 0x06d8, 0x60c6, 0x6e66,
- 0x7c66, 0xd80e, 0x1866, 0x66fe, 0x3c18, 0x3018, 0x0c18, 0x0000,
- 0x007e, 0x6660, 0x667e, 0x1866, 0x6618, 0x0cf8, 0x18d6, 0x6666,
- 0x6666, 0x603c, 0x1866, 0x66fe, 0x1866, 0x1838, 0x1838, 0x0066,
- 0x6066, 0x7e7e, 0x7e7e, 0x7e60, 0x7e7e, 0x7e18, 0x1818, 0x7e7e,
- 0x60ff, 0xf866, 0x6666, 0x6666, 0x6666, 0x6666, 0x307e, 0x6618,
- 0x7e18, 0x6666, 0x667e, 0x6666, 0x307e, 0x7e6e, 0x6618, 0xd836,
- 0x7e66, 0x767e, 0xdfd8, 0x7e7e, 0x6600, 0x0000, 0x0aba, 0xaa00,
- 0x6666, 0x6e0c, 0x360c, 0x6618, 0x0c66, 0x6600, 0x0630, 0x6e0c,
- 0xc636, 0x7e0e, 0x3606, 0xc666, 0x1806, 0x3606, 0x063c, 0x6c66,
- 0xdc66, 0x6028, 0x18c6, 0x6630, 0x8242, 0x2842, 0x9292, 0xc0c6,
- 0x0018, 0x700e, 0x1818, 0x187c, 0x0000, 0x1850, 0x0000, 0x0000,
- 0x0024, 0x6638, 0x1cba, 0xf6d6, 0xd8c3, 0x7e70, 0x1c1c, 0x718e,
- 0xc606, 0xc006, 0x0606, 0xc606, 0xc606, 0x660c, 0x1fec, 0x0000,
- 0x0000, 0x0066, 0x7e66, 0xcc00, 0x1818, 0x6618, 0x1800, 0x1830,
- 0x6618, 0x3066, 0x7e06, 0x6630, 0x6606, 0x1818, 0x1c00, 0x7018,
- 0xc066, 0x6666, 0x6660, 0x6066, 0x6618, 0x66cc, 0x60c6, 0x6e66,
- 0x6066, 0xcc06, 0x1866, 0x3cfe, 0x3c18, 0x6018, 0x0c18, 0x0000,
- 0x0066, 0x6660, 0x6660, 0x1866, 0x6618, 0x0cd8, 0x18d6, 0x6666,
- 0x6666, 0x600e, 0x1866, 0x3cfe, 0x3c66, 0x3018, 0x1830, 0x0042,
- 0x6666, 0x6066, 0x6666, 0x6660, 0x6060, 0x6018, 0x1818, 0x6666,
- 0x60d8, 0xd866, 0x6666, 0x6666, 0x6666, 0x667e, 0x3018, 0x6618,
- 0x6618, 0x6666, 0x666e, 0x6666, 0x667e, 0x7ed3, 0xce18, 0x6c6c,
- 0x6666, 0x6676, 0xd8d8, 0x6666, 0x6600, 0x0000, 0x0a82, 0x8200,
- 0x6666, 0x667e, 0x360c, 0x6618, 0x0c66, 0x7e00, 0x3e30, 0x6e7c,
- 0xfe7e, 0x7e7e, 0x3606, 0xfee6, 0x1806, 0x3e06, 0x0618, 0x6c00,
- 0xf666, 0x6028, 0x30c6, 0x6630, 0xc666, 0xaa66, 0xd6d6, 0xc0c6,
- 0x7e18, 0x6006, 0x18d8, 0x1840, 0x0000, 0x3c70, 0x0000, 0x0000,
- 0x0024, 0x3c30, 0x0c38, 0xe6c6, 0x5866, 0xff00, 0x1014, 0x718e,
- 0xc606, 0xc006, 0x0606, 0xc606, 0xc606, 0x6602, 0x1804, 0x0000,
- 0x0000, 0x0066, 0x7c66, 0xcc00, 0x1c38, 0x6600, 0x1800, 0x1860,
- 0x6618, 0x3066, 0x7e66, 0x6630, 0x660e, 0x1818, 0x0e00, 0xe000,
- 0xe266, 0x6666, 0x6e60, 0x6066, 0x6618, 0x66cc, 0x60c6, 0x6666,
- 0x606a, 0xcc06, 0x1866, 0x3cee, 0x6618, 0x6018, 0x0618, 0x0000,
- 0x0066, 0x6660, 0x6660, 0x187e, 0x6618, 0x0ccc, 0x18c6, 0x6666,
- 0x6666, 0x6006, 0x1866, 0x3cee, 0x3c7e, 0x3018, 0x1830, 0x00c3,
- 0x6666, 0x6066, 0x6666, 0x6660, 0x6060, 0x6018, 0x1818, 0x6666,
- 0x60d8, 0xd866, 0x6666, 0x6666, 0x7e66, 0x663c, 0x3018, 0x7c18,
- 0x6618, 0x6666, 0x6666, 0x7e7e, 0x6660, 0x0606, 0x1a18, 0x36d8,
- 0x6666, 0x6666, 0xd8d8, 0x6666, 0x6600, 0x0000, 0x0ac6, 0xc600,
- 0x66f6, 0x627e, 0x360c, 0x6618, 0x0466, 0x7e00, 0x3c30, 0x6e7c,
- 0x7c7e, 0x7e7e, 0x3606, 0xfee6, 0x1806, 0x3e06, 0x064c, 0xc600,
- 0x627c, 0x6028, 0x606c, 0x7f20, 0x7c7e, 0xee7e, 0x7c7c, 0xe0c6,
- 0x7e00, 0x0000, 0x18d8, 0x0000, 0x0000, 0x3c20, 0x0000, 0x0000,
- 0x003c, 0x1800, 0x007c, 0xeeee, 0x703c, 0x1000, 0x1012, 0x6186,
- 0xba02, 0xb83a, 0x023a, 0xba02, 0xba3a, 0x7e1c, 0x1804, 0x0000,
- 0x0018, 0x0000, 0x1800, 0xfe00, 0x0c30, 0x0000, 0x1800, 0x1860,
- 0x7e7e, 0x7e7e, 0x0c7e, 0x7e30, 0x7e3c, 0x1818, 0x0000, 0x0018,
- 0x7e66, 0x7e7e, 0x7c7e, 0x607e, 0x667e, 0x7ec6, 0x7ec6, 0x667e,
- 0x607c, 0xc67e, 0x187e, 0x18c6, 0x6618, 0x7e1e, 0x0678, 0x00fe,
- 0x007e, 0x7e7e, 0x7e7e, 0x183e, 0x663c, 0x0cce, 0x3cc6, 0x667e,
- 0x7e7e, 0x607e, 0x1e7e, 0x18c6, 0x663e, 0x7e18, 0x1830, 0x00ff,
- 0x7e7e, 0x7e7e, 0x7e7e, 0x7e7e, 0x7e7e, 0x7e3c, 0x3c3c, 0x6666,
- 0x7eff, 0xde7e, 0x7e7e, 0x7e7e, 0x3e7e, 0x7e18, 0x7f18, 0x6c18,
- 0x7e3c, 0x7e7e, 0x6666, 0x3e3c, 0x7e60, 0x060c, 0x3218, 0x1ab0,
- 0x7e7e, 0x7e7e, 0xfffe, 0x6666, 0x7e00, 0x0000, 0x0a7c, 0x7c00,
- 0xf6f6, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x3000, 0x0000, 0x1806, 0x0006, 0x066c, 0xc600,
- 0x006c, 0x6000, 0xfe38, 0x5d00, 0x103c, 0x6c3c, 0x1010, 0x7ec6,
- 0x007e, 0x7e7e, 0x1898, 0x0000, 0x0000, 0x1800, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x3000, 0x3800, 0x0000, 0x4182,
- 0x7c00, 0x7c7c, 0x007c, 0x7c00, 0x7c7c, 0x3c00, 0x1004, 0x0000,
- 0x0018, 0x0000, 0x1800, 0x7600, 0x0660, 0x0000, 0x1800, 0x1860,
- 0x3c7e, 0x7e3c, 0x0c3c, 0x3c30, 0x3c38, 0x1818, 0x0000, 0x0018,
- 0x3c66, 0x7c3c, 0x787e, 0x603c, 0x667e, 0x3cc6, 0x7ec6, 0x663c,
- 0x6036, 0xc67c, 0x183c, 0x1882, 0x6618, 0x7e1e, 0x0678, 0x00fe,
- 0x003e, 0x7c3e, 0x3e3e, 0x1806, 0x663c, 0x0cc6, 0x3cc6, 0x663c,
- 0x7c3e, 0x607c, 0x0e3e, 0x1882, 0x6606, 0x7e18, 0x1830, 0x0000,
- 0x3c3e, 0x3e3e, 0x3e3e, 0x3e3e, 0x3e3e, 0x3e3c, 0x3c3c, 0x6666,
- 0x7e7f, 0xde3c, 0x3c3c, 0x3e3e, 0x063c, 0x3c18, 0xff18, 0x6070,
- 0x3e3c, 0x3c3e, 0x6666, 0x0000, 0x3c60, 0x0618, 0x3f18, 0x0000,
- 0x3e3c, 0xbcbc, 0x7f7e, 0x6666, 0x3c00, 0x0000, 0x0a00, 0x0000,
- 0x0e0e, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x3000, 0x0000, 0x1806, 0x0006, 0x0638, 0x0000,
- 0x0060, 0xf000, 0xfe00, 0xc000, 0x1000, 0x0000, 0xf010, 0x3ec6,
- 0x007e, 0x7e7e, 0x1870, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x1000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1e3c, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x3000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0030, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x007e, 0x0000, 0x7c00, 0x0000, 0x0000,
- 0x6006, 0x0000, 0x0000, 0x0000, 0x007e, 0x000e, 0x18e0, 0x0000,
- 0x0c00, 0x0000, 0x0000, 0x000c, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x7e00, 0x0000, 0x0000, 0x4060,
- 0x0000, 0x0000, 0x0000, 0x7e7e, 0x0000, 0x001f, 0x0218, 0x0000,
- 0x0000, 0x8080, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3c7c, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x3000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0040, 0x0000, 0x0000, 0x8000, 0x7c00, 0x0000, 0xe000, 0x0000,
- 0x0000, 0x0000, 0x1800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x1754, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x2000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0020, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x007c, 0x0000, 0x7800, 0x0000, 0x0000,
- 0x6006, 0x0000, 0x0000, 0x0000, 0x007c, 0x0000, 0x0000, 0x0000,
- 0x3800, 0x0000, 0x0000, 0x0038, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x7c00, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x3878, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x1800, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
-};
-
-static struct font_head fnt_st_8x16 = {
- 1, /* WORD font_id */
- 10, /* WORD point */
- "8x16 system font", /* BYTE name[32] */
- 0, /* WORD first_ade */
- 255, /* WORD last_ade */
- 13, /* UWORD top */
- 11, /* UWORD ascent */
- 8, /* UWORD half */
- 2, /* UWORD descent */
- 2, /* UWORD bottom */
- 7, /* UWORD max_char_width */
- 8, /* UWORD max_cell_width */
- 1, /* UWORD left_offset */
- 7, /* UWORD right_offset */
- 1, /* UWORD thicken */
- 1, /* UWORD ul_size */
- 0x5555, /* UWORD lighten */
- 0x5555, /* UWORD skew */
- F_STDFORM | F_MONOSPACE | F_DEFAULT, /* UWORD flags */
- 0, /* UBYTE *hor_table */
- off_table, /* UWORD *off_table */
- dat_table, /* UWORD *dat_table */
- 256, /* UWORD form_width */
- 16, /* UWORD form_height */
- 0, /* struct font * next_font */
- 0 /* UWORD next_seg */
-};
-
-struct font_head *fnt = &fnt_st_8x16;
diff --git a/BaS_gcc/video/offscreen.c b/BaS_gcc/video/offscreen.c
deleted file mode 100644
index 7a86a7a..0000000
--- a/BaS_gcc/video/offscreen.c
+++ /dev/null
@@ -1,289 +0,0 @@
-/*
- * offscreen.c
- *
- * based from Emutos / BDOS
- *
- * Copyright (c) 2001 Lineo, Inc.
- *
- * Authors: Karl T. Braun, Martin Doering, Laurent Vogel
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version.
- */
-
-#include "bas_types.h"
-#include "bas_string.h"
-#include "fb.h"
-
-// #define DEBUG
-#include "debug.h"
-
-/* MD - Memory Descriptor */
-
-#define MD struct _md_
-
-MD
-{
- MD *m_link;
- long m_start;
- long m_length;
- void *m_own;
-};
-
-/* MPB - Memory Partition Block */
-
-#define MPB struct _mpb
-
-MPB
-{
- MD *mp_mfl;
- MD *mp_mal;
- MD *mp_rover;
-};
-
-#define MAXMD 256
-
-static MD tab_md[MAXMD];
-static MPB pmd;
-static long wrap;
-
-static void *xmgetblk(void)
-{
- int i;
- for (i = 0; i < MAXMD; i++)
- {
- if(tab_md[i].m_own == NULL)
- {
- tab_md[i].m_own = (void*)1L;
- return(&tab_md[i]);
- }
- }
- return(NULL);
-}
-
-static void xmfreblk(void *m)
-{
- int i = (int)(((long)m - (long)tab_md) / sizeof(MD));
- if((i > 0) && (i < MAXMD))
- tab_md[i].m_own = NULL;
-}
-
-static MD *ffit(long amount, MPB *mp)
-{
- MD *p;
- MD *q;
- MD *p1; /* free list is composed of MD's */
- int maxflg;
- long maxval;
- if(amount != -1)
- {
-#if 1
- amount += (wrap - 1);
- amount /= wrap;
- amount *= wrap; /* screen line alignment */
-#else
- amount += 15; /* 16 bytes alignment */
- amount &= 0xFFFFFFF0;
-#endif
- }
- if ((q = mp->mp_rover) == 0) /* get rotating pointer */
- return(0) ;
- maxval = 0;
- maxflg = ((amount == -1) ? true : false) ;
- p = q->m_link; /* start with next MD */
- do /* search the list for an MD with enough space */
- {
- if (p == NULL)
- {
- /* at end of list, wrap back to start */
- q = (MD *) &mp->mp_mfl; /* q => mfl field */
- p = q->m_link; /* p => 1st MD */
- }
- if ((!maxflg) && (p->m_length >= amount))
- {
- /* big enough */
- if (p->m_length == amount)
- q->m_link = p->m_link; /* take the whole thing */
- else
- {
- /*
- * break it up - 1st allocate a new
- * MD to describe the remainder
- */
- p1 = xmgetblk();
- if (p1 == NULL)
- return NULL;
-
- /*
- * init new MD
- */
- p1->m_length = p->m_length - amount;
- p1->m_start = p->m_start + amount;
- p1->m_link = p->m_link;
- p->m_length = amount; /* adjust allocated block */
- q->m_link = p1;
- }
-
- /*
- * link allocated block into allocated list,
- * mark owner of block, & adjust rover
- */
- p->m_link = mp->mp_mal;
- mp->mp_mal = p;
- mp->mp_rover = (q == (MD *) &mp->mp_mfl ? q->m_link : q);
- return p; /* got some */
- }
- else if (p->m_length > maxval)
- maxval = p->m_length;
- p = (q = p)->m_link;
- }
-
- while (q != mp->mp_rover);
-
- /*
- * return either the max, or 0 (error)
- */
- if (maxflg)
- {
- maxval -= 15; /* 16 bytes alignment */
- if (maxval < 0)
- maxval = 0;
- else
- maxval &= 0xFFFFFFF0;
- }
- return maxflg ? (MD *) maxval : 0;
-}
-
-static void freeit(MD *m, MPB *mp)
-{
- MD *p;
- MD *q = NULL;
-
- for (p = mp->mp_mfl; p; p = (q = p) -> m_link)
- {
- if (m->m_start <= p->m_start)
- break;
- }
- m->m_link = p;
- if (q)
- q->m_link = m;
- else
- mp->mp_mfl = m;
- if (!mp->mp_rover)
- mp->mp_rover = m;
- if (p)
- {
- if (m->m_start + m->m_length == p->m_start)
- {
- /*
- * join to higher neighbor
- */
- m->m_length += p->m_length;
- m->m_link = p->m_link;
- if (p == mp->mp_rover)
- mp->mp_rover = m;
- xmfreblk(p);
- }
- }
- if (q)
- {
- if (q->m_start + q->m_length == m->m_start)
- {
- /* join to lower neighbor */
- q->m_length += m->m_length;
- q->m_link = m->m_link;
- if (m == mp->mp_rover)
- mp->mp_rover = q;
- xmfreblk(m);
- }
- }
-}
-
-long offscreen_free(struct fb_info *info, void *addr)
-{
- MD *p;
- MD **q;
- MPB *mpb;
-
- dbg("%p\r\n", addr);
-
- //*vblsem = 0;
- mpb = &pmd;
- for (p = *(q = &mpb->mp_mal); p; p = *(q = &p->m_link))
- {
- if (addr == (void *) p->m_start)
- break;
- }
- if(!p)
- {
- // *vblsem = 1;
- return -1; //(EFAULT);
- }
- *q = p->m_link;
- freeit(p,mpb);
- //*vblsem = 1;
- return 0;
-}
-
-long offscreen_alloc(struct fb_info *info, long amount)
-{
- long ret;
- MD *m;
-
-
- // *vblsem = 0;
- if (amount == -1L)
- {
- ret = (long) ffit(-1L, &pmd);
- // *vblsem = 1;
- return ret;
- }
- if (amount <= 0 )
- {
- // *vblsem = 1;
- return(0);
- }
- if ((amount & 1))
- amount++;
- m = ffit(amount, &pmd);
- if (m == NULL)
- {
- return(0);
- }
- ret = (long)m->m_start;
- // *vblsem = 1;
- return(ret);
-}
-
-long offscren_reserved(struct fb_info *info)
-{
- return (long) info->ram_base + (long) info->ram_size;
-}
-
-void offscreen_init(struct fb_info *info)
-{
- long size_screen;
- long max_offscreen_size;
-
- wrap = (long) info->var.xres_virtual * (long) (info->var.bits_per_pixel / 8);
- size_screen = (long) info->var.yres_virtual * wrap;
- if (!size_screen)
- size_screen = (long) info->screen_size;
-
- pmd.mp_mfl = pmd.mp_rover = &tab_md[0];
- tab_md[0].m_link = (MD *) NULL;
- tab_md[0].m_start = (long)((unsigned long) info->ram_base + (unsigned long) size_screen);
- tab_md[0].m_length = (long) info->ram_size - size_screen;
- tab_md[0].m_own = (void *)1L;
-
- max_offscreen_size = ((long) info->var.xres_virtual * 8192L * (long)(info->var.bits_per_pixel / 8)) - size_screen;
- if (max_offscreen_size < 0)
- max_offscreen_size = 0;
- if (tab_md[0].m_length > max_offscreen_size)
- tab_md[0].m_length = max_offscreen_size;
-
- dbg("offscreen_init start %p, length %ld, ram size %ld\r\n",
- tab_md[0].m_start, tab_md[0].m_length, (long) info->ram_size);
- pmd.mp_mal = (MD *) NULL;
-}
-
diff --git a/BaS_gcc/video/vdi_fill.c b/BaS_gcc/video/vdi_fill.c
deleted file mode 100644
index 6b789a9..0000000
--- a/BaS_gcc/video/vdi_fill.c
+++ /dev/null
@@ -1,1112 +0,0 @@
-/*
- *
- *
- * Copyright 1982 by Digital Research Inc. All rights reserved.
- * Copyright 1999 by Caldera, Inc. and Authors:
- * Copyright 2002-2013 The EmuTOS development team
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-
-
-#include "config.h"
-#include "portab.h"
-#include "vdi_defs.h"
-#include "tosvars.h"
-#include "lineavars.h"
-
-#define EMPTY 0xffff
-#define DOWN_FLAG 0x8000
-#define QSIZE 200
-#define QMAX QSIZE-1
-
-
-
-#define ABS(v) (v & 0x7FFF)
-
-
-
-/* prototypes */
-static void crunch_queue(void);
-static BOOL clipbox(Vwk * vwk, Rect * rect);
-
-
-
-/* Global variables */
-static UWORD search_color; /* the color of the border */
-
-
-/* some kind of stack for the segments to fill */
-static WORD queue[QSIZE]; /* storage for the seed points */
-static WORD qbottom; /* the bottom of the queue (zero) */
-static WORD qtop; /* points top seed +3 */
-static WORD qptr; /* points to the active point */
-static WORD qtmp;
-static WORD qhole; /* an empty space in the queue */
-
-
-/* the storage for the used defined fill pattern */
-const UWORD ROM_UD_PATRN[16] = {
- 0x07E0, 0x0FF0, 0x1FD8, 0x1808, 0x1808, 0x1008, 0x1E78, 0x1348,
- 0x1108, 0x0810, 0x0B70, 0x0650, 0x07A0, 0x1E20, 0x1BC0, 0x1800
-};
-
-static const UWORD OEMMSKPAT = 7;
-static const UWORD OEMPAT[128] = {
- /* Brick */
- 0xFFFF, 0x8080, 0x8080, 0x8080, 0xFFFF, 0x0808, 0x0808, 0x0808,
- /* Diagonal Bricks */
- 0x2020, 0x4040, 0x8080, 0x4141, 0x2222, 0x1414, 0x0808, 0x1010,
- /* Grass */
- 0x0000, 0x0000, 0x1010, 0x2828, 0x0000, 0x0000, 0x0101, 0x8282,
- /* Trees */
- 0x0202, 0x0202, 0xAAAA, 0x5050, 0x2020, 0x2020, 0xAAAA, 0x0505,
- /* Dashed x's */
- 0x4040, 0x8080, 0x0000, 0x0808, 0x0404, 0x0202, 0x0000, 0x2020,
- /* Cobble Stones */
- 0x6606, 0xC6C6, 0xD8D8, 0x1818, 0x8181, 0x8DB1, 0x0C33, 0x6000,
- /* Sand */
- 0x0000, 0x0000, 0x0400, 0x0000, 0x0010, 0x0000, 0x8000, 0x0000,
- /* Rough Weave */
- 0xF8F8, 0x6C6C, 0xC6C6, 0x8F8F, 0x1F1F, 0x3636, 0x6363, 0xF1F1,
- /* Quilt */
- 0xAAAA, 0x0000, 0x8888, 0x1414, 0x2222, 0x4141, 0x8888, 0x0000,
- /* Paterned Cross */
- 0x0808, 0x0000, 0xAAAA, 0x0000, 0x0808, 0x0000, 0x8888, 0x0000,
- /* Balls */
- 0x7777, 0x9898, 0xF8F8, 0xF8F8, 0x7777, 0x8989, 0x8F8F, 0x8F8F,
- /* Verticle Scales */
- 0x8080, 0x8080, 0x4141, 0x3E3E, 0x0808, 0x0808, 0x1414, 0xE3E3,
- /* Diagonal scales */
- 0x8181, 0x4242, 0x2424, 0x1818, 0x0606, 0x0101, 0x8080, 0x8080,
- /* Checker Board */
- 0xF0F0, 0xF0F0, 0xF0F0, 0xF0F0, 0x0F0F, 0x0F0F, 0x0F0F, 0x0F0F,
- /* Filled Diamond */
- 0x0808, 0x1C1C, 0x3E3E, 0x7F7F, 0xFFFF, 0x7F7F, 0x3E3E, 0x1C1C,
- /* Herringbone */
- 0x1111, 0x2222, 0x4444, 0xFFFF, 0x8888, 0x4444, 0x2222, 0xFFFF
-};
-
-static const UWORD DITHRMSK = 3; /* mask off all but four scans */
-static const UWORD DITHER[32] = {
- 0x0000, 0x4444, 0x0000, 0x1111, /* intensity level 2 */
- 0x0000, 0x5555, 0x0000, 0x5555, /* intensity level 4 */
- 0x8888, 0x5555, 0x2222, 0x5555, /* intensity level 6 */
- 0xAAAA, 0x5555, 0xAAAA, 0x5555, /* intensity level 8 */
- 0xAAAA, 0xDDDD, 0xAAAA, 0x7777, /* intensity level 10 */
- 0xAAAA, 0xFFFF, 0xAAAA, 0xFFFF, /* intensity level 12 */
- 0xEEEE, 0xFFFF, 0xBBBB, 0xFFFF, /* intensity level 14 */
- 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF /* intensity level 16 */
-};
-
-static const UWORD HAT_0_MSK = 7;
-static const UWORD HATCH0[48] = {
- /* narrow spaced + 45 */
- 0x0101, 0x0202, 0x0404, 0x0808, 0x1010, 0x2020, 0x4040, 0x8080,
- /* medium spaced thick 45 deg */
- 0x6060, 0xC0C0, 0x8181, 0x0303, 0x0606, 0x0C0C, 0x1818, 0x3030,
- /* medium +-45 deg */
- 0x4242, 0x8181, 0x8181, 0x4242, 0x2424, 0x1818, 0x1818, 0x2424,
- /* medium spaced vertical */
- 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080,
- /* medium spaced horizontal */
- 0xFFFF, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- /* medium spaced cross */
- 0xFFFF, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080
-};
-
-static const UWORD HAT_1_MSK = 0xF;
-static const UWORD HATCH1[96] = {
- /* wide +45 deg */
- 0x0001, 0x0002, 0x0004, 0x0008, 0x0010, 0x0020, 0x0040, 0x0080,
- 0x0100, 0x0200, 0x0400, 0x0800, 0x1000, 0x2000, 0x4000, 0x8000,
- /* widely spaced thick 45 deg */
- 0x8003, 0x0007, 0x000E, 0x001C, 0x0038, 0x0070, 0x00E0, 0x01C0,
- 0x0380, 0x0700, 0x0E00, 0x1C00, 0x3800, 0x7000, 0x0E000, 0x0C001,
- /* widely +- 45 deg */
- 0x8001, 0x4002, 0x2004, 0x1008, 0x0810, 0x0420, 0x0240, 0x0180,
- 0x0180, 0x0240, 0x0420, 0x0810, 0x1008, 0x2004, 0x4002, 0x8001,
- /* widely spaced vertical */
- 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000,
- 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000, 0x8000,
- /* widely spaced horizontal */
- 0xFFFF, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000, 0x0000,
- /* widely spaced horizontal/vert cross */
- 0xFFFF, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080,
- 0xFFFF, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080, 0x8080,
-};
-
-const UWORD HOLLOW = 0;
-const UWORD SOLID = 0xFFFF;
-
-
-
-/*
- * dsf_udpat - Update pattern
- */
-
-void
-dsf_udpat(Vwk * vwk)
-{
- WORD *sp, *dp, i, count;
-
- count = CONTRL[3];
-
- if (count == 16)
- vwk->multifill = 0; /* Single Plane Pattern */
- else if (count == (INQ_TAB[4] * 16))
- vwk->multifill = 1; /* Valid Multi-plane pattern */
- else
- return; /* Invalid pattern, return */
-
- sp = INTIN;
- dp = &vwk->ud_patrn[0];
- for (i = 0; i < count; i++)
- *dp++ = *sp++;
-}
-
-
-
-/*
- * _vsf_interior - Set fill style
- */
-
-void
-_vsf_interior(Vwk * vwk)
-{
- WORD fs;
-
- CONTRL[4] = 1;
- fs = *INTIN;
- if ((fs > MX_FIL_STYLE) || (fs < 0))
- fs = 0;
- *INTOUT = vwk->fill_style = fs;
- st_fl_ptr(vwk);
-}
-
-
-
-/* S_FILL_INDEX: */
-void
-_vsf_style(Vwk * vwk)
-{
- WORD fi;
-
- CONTRL[4] = 1;
- fi = *INTIN;
-
- if (vwk->fill_style == 2) {
- if ((fi > MX_FIL_PAT_INDEX) || (fi < 1))
- fi = 1;
- } else {
- if ((fi > MX_FIL_HAT_INDEX) || (fi < 1))
- fi = 1;
- }
- vwk->fill_index = (*INTOUT = fi) - 1;
- st_fl_ptr(vwk);
-}
-
-
-
-/* S_FILL_COLOR: */
-void
-_vsf_color(Vwk * vwk)
-{
- WORD fc;
-
- *(CONTRL + 4) = 1;
- fc = *INTIN;
- if ((fc >= DEV_TAB[13]) || (fc < 0))
- fc = 1;
-
- *INTOUT = fc;
- vwk->fill_color = MAP_COL[fc];
-}
-
-
-
-/* ST_FILLPERIMETER: */
-void
-_vsf_perimeter(Vwk * vwk)
-{
- WORD *int_out;
-
- int_out = INTOUT;
-
- if (*INTIN == 0) {
- *int_out = 0;
- vwk->fill_per = FALSE;
- } else {
- *(int_out) = 1;
- vwk->fill_per = TRUE;
- }
- CONTRL[4] = 1;
-}
-
-
-/*
- * dr_recfl - draw filled rectangle
- */
-
-void
-dr_recfl(Vwk * vwk)
-{
- Rect * rect = (Rect*)PTSIN;
-
- if (vwk->clip)
- if (!clipbox(vwk, rect))
- return;
-
- /* do the real work... */
- draw_rect(vwk, rect, vwk->fill_color);
-}
-
-
-
-/*
- * _v_cellarray - Draw a square of sqares (just color devices)
- */
-void
-_v_cellarray(Vwk * vwk)
-{
- /* not implemented */
-}
-
-
-
-/*
- * _vq_cellarray -
- */
-void
-_vq_cellarray(Vwk * vwk)
-{
- /* not implemented */
-}
-
-
-
-/*
- * vql_attr - Inquire current fill area attributes
- */
-
-void
-vqf_attr(Vwk * vwk)
-{
- WORD *pointer;
-
- pointer = INTOUT;
- *pointer++ = vwk->fill_style;
- *pointer++ = REV_MAP_COL[vwk->fill_color];
- *pointer++ = vwk->fill_index + 1;
- *pointer++ = vwk->wrt_mode + 1;
- *pointer = vwk->fill_per;
-
- CONTRL[4] = 5;
-}
-
-
-
-/*
- * st_fl_ptr - set fill pattern?
- */
-
-void
-st_fl_ptr(Vwk * vwk)
-{
- WORD fi, pm;
- const UWORD *pp = NULL;
-
- fi = vwk->fill_index;
- pm = 0;
- switch (vwk->fill_style) {
- case 0:
- pp = &HOLLOW;
- break;
-
- case 1:
- pp = &SOLID;
- break;
-
- case 2:
- if (fi < 8) {
- pm = DITHRMSK;
- pp = &DITHER[fi * (pm + 1)];
- } else {
- pm = OEMMSKPAT;
- pp = &OEMPAT[(fi - 8) * (pm + 1)];
- }
- break;
- case 3:
- if (fi < 6) {
- pm = HAT_0_MSK;
- pp = &HATCH0[fi * (pm + 1)];
- } else {
- pm = HAT_1_MSK;
- pp = &HATCH1[(fi - 6) * (pm + 1)];
- }
- break;
- case 4:
- pm = 0x000f;
- pp = (UWORD *)&vwk->ud_patrn[0];
- break;
- }
- vwk->patptr = (UWORD *)pp;
- vwk->patmsk = pm;
-}
-
-
-
-/*
- * bub_sort - sorts an array of words
- *
- * This routine bubble-sorts an array of words into ascending order.
- *
- * input:
- * buf - ptr to start of array.
- * count - number of words in array.
- */
-
-static void
-bub_sort (WORD * buf, WORD count)
-{
- int i, j;
-
- for (i = count-1; i > 0; i--) {
- WORD * ptr = buf; /* reset pointer to the array */
- for (j = 0; j < i; j++) {
- WORD val = *ptr++; /* word */ /* get next value */
- if ( val > *ptr ) { /* yes - do nothing */
- *(ptr-1) = *ptr; /* word */ /* nope - swap them */
- *ptr = val; /* word */
- }
- }
- }
-}
-
-
-
-/*
- * clc_flit - draw a filled polygon
- *
- * (Sutherland and Hodgman Polygon Clipping Algorithm)
- *
- * For each non-horizontal scanline crossing poly, do:
- * - find intersection points of scan line with poly edges.
- * - Sort intersections left to right
- * - Draw pixels between each pair of points (x coords) on the scan line
- */
-/*
- * the buffer used by clc_flit() has been temporarily moved from the
- * stack to a local static area. this avoids some cases of stack
- * overflow when the VDI is called from the AES (and the stack is the
- * small one located in the UDA). this fix allows GemAmigo to run.
- *
- * this change restores the situation that existed in the original
- * DRI code, when clc_flit() was written in assembler; the buffer
- * was moved to the stack when clc_flit() was re-implemented in C.
- */
-#define MAX_INTERSECTIONS 256
-static WORD fill_buffer[MAX_INTERSECTIONS];
-
-void
-clc_flit (const VwkAttrib * attr, const VwkClip * clipper, const Point * point, WORD y, int vectors)
-{
-// WORD fill_buffer[256]; /* must be 256 words or it will fail */
- WORD * bufptr; /* point to array of x-values. */
- int intersections; /* count of intersections */
- int i;
-
- /* Initialize the pointers and counters. */
- intersections = 0; /* reset counter */
- bufptr = fill_buffer;
-
- /* find intersection points of scan line with poly edges. */
- for (i = vectors - 1; i >= 0; i--) {
- WORD x1, x2, y1, y2, dy;
-
- x1 = point->x; /* fetch x-value of 1st endpoint. */
- y1 = point->y; /* fetch y-value of 1st endpoint. */
- point++;
- x2 = point->x; /* fetch x-value of 2nd endpoint. */
- y2 = point->y; /* fetch y-value of 2nd endpoint. */
-
- /* if the current vector is horizontal, ignore it. */
- dy = y2 - y1;
- if ( dy ) {
- LONG dy1, dy2;
-
- /* fetch scan-line y. */
- dy1 = y - y1; /* d4 - delta y1. */
- dy2 = y - y2; /* d3 - delta y2. */
-
- /*
- * Determine whether the current vector intersects with the scan
- * line we wish to draw. This test is performed by computing the
- * y-deltas of the two endpoints from the scan line.
- * If both deltas have the same sign, then the line does
- * not intersect and can be ignored. The origin for this
- * test is found in Newman and Sproull.
- */
- if ((dy1 < 0) != (dy2 < 0)) {
- int dx = (x2 - x1) << 1; /* so we can round by adding 1 below */
- if (++intersections > MAX_INTERSECTIONS)
- break;
- /* fill edge buffer with x-values */
- if ( dx < 0 ) {
- *bufptr++ = ((dy2 * dx / dy + 1) >> 1) + x2;
- }
- else {
- *bufptr++ = ((dy1 * dx / dy + 1) >> 1) + x1;
- }
- }
- }
- }
-
- /*
- * All of the points of intersection have now been found. If there
- * were none then there is nothing more to do. Otherwise, sort the
- * list of points of intersection in ascending order.
- * (The list contains only the x-coordinates of the points.)
- */
-
- /* anything to do? */
- if (intersections == 0)
- return;
-
- /* bubblesort the intersections, if it makes sense */
- if ( intersections > 1 )
- bub_sort(fill_buffer, intersections);
-
- if (attr->clip) {
- /* Clipping is in force. Once the endpoints of the line segment have */
- /* been adjusted for the border, clip them to the left and right sides */
- /* of the clipping rectangle. */
-
- /* The x-coordinates of each line segment are adjusted so that the */
- /* border of the figure will not be drawn with the fill pattern. */
-
- /* loop through buffered points */
- WORD * ptr = fill_buffer;
- for (i = intersections / 2 - 1; i >= 0; i--) {
- WORD x1, x2;
- Rect rect;
-
- /* grab a pair of adjusted intersections */
- x1 = *ptr++ + 1;
- x2 = *ptr++ - 1;
-
- /* do nothing, if starting point greater than ending point */
- if ( x1 > x2 )
- continue;
-
- if ( x1 < clipper->xmn_clip ) {
- if ( x2 < clipper->xmn_clip )
- continue; /* entire segment clipped left */
- x1 = clipper->xmn_clip; /* clip left end of line */
- }
-
- if ( x2 > clipper->xmx_clip ) {
- if ( x1 > clipper->xmx_clip )
- continue; /* entire segment clippped */
- x2 = clipper->xmx_clip; /* clip right end of line */
- }
- rect.x1 = x1;
- rect.y1 = y;
- rect.x2 = x2;
- rect.y2 = y;
-
- /* rectangle fill routine draws horizontal line */
- draw_rect_common(attr, &rect);
- }
- }
- else {
- /* Clipping is not in force. Draw from point to point. */
-
- /* This code has been modified from the version in the screen driver. */
- /* The x-coordinates of each line segment are adjusted so that the */
- /* border of the figure will not be drawn with the fill pattern. If */
- /* the starting point is greater than the ending point then nothing is */
- /* done. */
-
- /* loop through buffered points */
- WORD * ptr = fill_buffer;
- for (i = intersections / 2 - 1; i >= 0; i--) {
- WORD x1, x2;
- Rect rect;
-
- /* grab a pair of adjusted endpoints */
- x1 = *ptr++ + 1 ; /* word */
- x2 = *ptr++ - 1 ; /* word */
-
- /* If starting point greater than ending point, nothing is done. */ /* is start still to left of end? */
- if ( x1 <= x2 ) {
- rect.x1 = x1;
- rect.y1 = y;
- rect.x2 = x2;
- rect.y2 = y;
-
- /* rectangle fill routine draws horizontal line */
- draw_rect_common(attr, &rect);
- }
- }
- }
-}
-
-
-/*
- * polygon - draw a filled polygon
- */
-
-void
-polygon(Vwk * vwk, Point * ptsin, int count)
-{
- WORD i, k, y;
- WORD fill_maxy, fill_miny;
- Point * point, * ptsget, * ptsput;
- VwkClip *clipper;
- VwkAttrib attr;
-
- LSTLIN = FALSE;
-
- /* find out the total min and max y values */
- point = ptsin;
- fill_maxy = fill_miny = point->y;
- for (i = count - 1; i > 0; i--) {
- point++;
- k = point->y;
-
- if (k < fill_miny)
- fill_miny = k;
- else
- if (k > fill_maxy)
- fill_maxy = k;
- }
-
- if (vwk->clip) {
- if (fill_miny < vwk->ymn_clip) {
- if (fill_maxy >= vwk->ymn_clip) {
- /* polygon starts before clip */
- fill_miny = vwk->ymn_clip - 1; /* polygon partial overlap */
- if (fill_miny < 1)
- fill_miny = 1;
- } else
- return; /* polygon entirely before clip */
- }
- if (fill_maxy > vwk->ymx_clip) {
- if (fill_miny <= vwk->ymx_clip) /* polygon ends after clip */
- fill_maxy = vwk->ymx_clip; /* polygon partial overlap */
- else
- return; /* polygon entirely after clip */
- }
- }
-
- /* close the polygon, connect last and first point */
- ptsget = ptsin;
- ptsput = ptsin + count;
- ptsput->x = ptsget->x;
- ptsput->y = ptsget->y;
-
- /* cast structure needed by clc_flit */
- clipper = VDI_CLIP(vwk);
- /* copy data needed by clc_flit -> draw_rect_common */
- Vwk2Attrib(vwk, &attr, vwk->fill_color);
-
- /* really draw it */
- for (y = fill_maxy; y > fill_miny; y--) {
- clc_flit(&attr, clipper, ptsin, y, count);
- }
- if (vwk->fill_per == TRUE) {
- LN_MASK = 0xffff;
- polyline(vwk, ptsin, count+1, vwk->fill_color);
- }
-}
-
-
-
-/*
- * _v_fillarea - Fill an area
- */
-
-void
-_v_fillarea(Vwk * vwk)
-{
- Point * point = (Point*)PTSIN;
- int count = CONTRL[1];
-
-#if 0
-#if HAVE_BEZIER
- /* check, if we want to draw a filled bezier curve */
- if (CONTRL[5] == 13 && vwk->bez_qual )
- v_bez_fill(vwk, point, count);
- else
-#endif
-#endif
- polygon(vwk, point, count);
-}
-
-
-
-/*
- * clipbox - Just clips and copies the inputs for use by "rectfill"
- *
- * input:
- * X1 = x coord of upper left corner.
- * Y1 = y coord of upper left corner.
- * X2 = x coord of lower right corner.
- * Y2 = y coord of lower right corner.
- * vwk->clip = clipping flag. (0 => no clipping.)
- * vwk->xmn_clip = x clipping minimum.
- * vwk->xmx_clip = x clipping maximum.
- * vwk->ymn_clip = y clipping minimum.
- * vwk->ymx_clip = y clipping maximum.
- *
- * output:
- * X1 = x coord of upper left corner.
- * Y1 = y coord of upper left corner.
- * X2 = x coord of lower right corner.
- * Y2 = y coord of lower right corner.
- */
-
-static BOOL
-clipbox(Vwk * vwk, Rect * rect)
-{
- WORD x1, y1, x2, y2;
-
- x1 = rect->x1;
- y1 = rect->y1;
- x2 = rect->x2;
- y2 = rect->y2;
-
- /* clip x coordinates */
- if ( x1 < vwk->xmn_clip) {
- if (x2 < vwk->xmn_clip) {
- return(FALSE); /* clipped box is null */
- }
- rect->x1 = vwk->xmn_clip;
- }
- if ( x2 > vwk->xmx_clip) {
- if (x1 > vwk->xmx_clip) {
- return(FALSE); /* clipped box is null */
- }
- rect->x2 = vwk->xmx_clip;
- }
- /* clip y coordinates */
- if ( y1 < vwk->ymn_clip) {
- if (y2 < vwk->ymn_clip) {
- return(FALSE); /* clipped box is null */
- }
- rect->y1 = vwk->ymn_clip;
- }
- if ( y2 > vwk->ymx_clip) {
- if (y1 > vwk->ymx_clip) {
- return(FALSE); /* clipped box is null */
- }
- rect->y2 = vwk->ymx_clip;
- }
- return (TRUE);
-}
-
-
-/*
- * get_color - Get color value of requested pixel.
- */
-static UWORD
-get_color (UWORD mask, UWORD * addr)
-{
- UWORD color = 0; /* clear the pixel value accumulator. */
- WORD plane = v_planes;
-
- while(1) {
- /* test the bit. */
- if ( *--addr & mask )
- color |= 1; /* if 1, set color accumulator bit. */
-
- if ( --plane == 0 )
- break;
-
- color <<= 1; /* shift accumulator for next bit_plane. */
- }
-
- return color; /* this is the color we are searching for */
-}
-
-/*
- * pixelread - gets a pixel's color index value
- *
- * input:
- * PTSIN(0) = x coordinate.
- * PTSIN(1) = y coordinate.
- * output:
- * pixel value
- */
-
-static UWORD
-pixelread(const WORD x, const WORD y)
-{
- UWORD *addr;
- UWORD mask;
-
- /* convert x,y to start adress and bit mask */
- addr = get_start_addr(x, y);
- addr += v_planes; /* start at highest-order bit_plane */
- mask = 0x8000 >> (x&0xf); /* initial bit position in WORD */
-
- return get_color(mask, addr); /* return the composed color value */
-}
-
-static UWORD
-search_to_right (Vwk * vwk, WORD x, UWORD mask, const UWORD search_col, UWORD * addr)
-{
- /* is x coord < x resolution ? */
- while( x++ < vwk->xmx_clip ) {
- UWORD color;
-
- /* need to jump over interleaved bit_plane? */
- mask = mask >> 1 | mask << 15; /* roll right */
- if ( mask & 0x8000 )
- addr += v_planes;
-
- /* search, while pixel color != search color */
- color = get_color(mask, addr);
- if ( search_col != color ) {
- break;
- }
-
- }
-
- return x - 1; /* output x coord -1 to endxright. */
-}
-
-static UWORD
-search_to_left (Vwk * vwk, WORD x, UWORD mask, const UWORD search_col, UWORD * addr)
-{
- /* Now, search to the left. */
- while (x-- > vwk->xmn_clip) {
- UWORD color;
-
- /* need to jump over interleaved bit_plane? */
- mask = mask >> 15 | mask << 1; /* roll left */
- if ( mask & 0x0001 )
- addr -= v_planes;
-
- /* search, while pixel color != search color */
- color = get_color(mask, addr);
- if ( search_col != color )
- break;
-
- }
-
- return x + 1; /* output x coord + 1 to endxleft. */
-}
-
-/*
- * end_pts - find the endpoints of a section of solid color
- *
- * (for the _seed_fill routine.)
- *
- * input: 4(sp) = xstart.
- * 6(sp) = ystart.
- * 8(sp) = ptr to endxleft.
- * C(sp) = ptr to endxright.
- *
- * output: endxleft := left endpoint of solid color.
- * endxright := right endpoint of solid color.
- * d0 := success flag.
- * 0 => no endpoints or xstart on edge.
- * 1 => endpoints found.
- * seed_type indicates the type of fill
- */
-
-static WORD
-end_pts(Vwk * vwk, WORD x, WORD y, WORD *xleftout, WORD *xrightout,
- BOOL seed_type)
-{
- UWORD color;
- UWORD * addr;
- UWORD mask;
-
- /* see, if we are in the y clipping range */
- if ( y < vwk->ymn_clip || y > vwk->ymx_clip)
- return 0;
-
- /* convert x,y to start adress and bit mask */
- addr = get_start_addr(x, y);
- addr += v_planes; /* start at highest-order bit_plane */
- mask = 0x8000 >> (x & 0x000f); /* fetch the pixel mask. */
-
- /* get search color and the left and right end */
- color = get_color (mask, addr);
- *xrightout = search_to_right (vwk, x, mask, color, addr);
- *xleftout = search_to_left (vwk, x, mask, color, addr);
-
- /* see, if the whole found segment is of search color? */
- if ( color != search_color ) {
- return seed_type ^ 1; /* return segment not of search color */
- }
- return seed_type ^ 0; /* return segment is of search color */
-}
-
-/* Prototypes local to this module */
-static WORD
-get_seed(Vwk * vwk, WORD xin, WORD yin, WORD *xleftout, WORD *xrightout,
- BOOL seed_type);
-
-
-void
-d_contourfill(Vwk * vwk)
-{
- WORD newxleft; /* ends of line at oldy + */
- WORD newxright; /* the current direction */
- WORD oldxleft; /* left end of line at oldy */
- WORD oldxright; /* right end */
- WORD oldy; /* the previous scan line */
- WORD xleft; /* temporary endpoints */
- WORD xright; /* */
- WORD direction; /* is next scan line up or down */
- BOOL notdone; /* does seedpoint==search_color */
- BOOL gotseed; /* a seed was put in the Q */
- BOOL seed_type; /* indicates the type of fill */
-
- xleft = PTSIN[0];
- oldy = PTSIN[1];
-
- if (xleft < vwk->xmn_clip || xleft > vwk->xmx_clip ||
- oldy < vwk->ymn_clip || oldy > vwk->ymx_clip)
- return;
-
- search_color = INTIN[0];
-
- if ((WORD)search_color < 0) {
- search_color = pixelread(xleft,oldy);
- seed_type = 1;
- } else {
- const WORD plane_mask[] = { 1, 3, 7, 15 };
-
- /* Range check the color and convert the index to a pixel value */
- if (search_color >= DEV_TAB[13])
- return;
-
- /*
- * We mandate that white is all bits on. Since this yields 15
- * in rom, we must limit it to how many planes there really are.
- * Anding with the mask is only necessary when the driver supports
- * move than one resolution.
- */
- search_color =
- (MAP_COL[search_color] & plane_mask[INQ_TAB[4] - 1]);
- seed_type = 0;
- }
-
- /* Initialize the line drawing parameters */
- LSTLIN = FALSE;
-
- notdone = end_pts(vwk, xleft, oldy, &oldxleft, &oldxright, seed_type);
-
- qptr = qbottom = 0;
- qtop = 3; /* one above highest seed point */
- queue[0] = (oldy | DOWN_FLAG);
- queue[1] = oldxleft;
- queue[2] = oldxright; /* stuff a point going down into the Q */
-
- if (notdone) {
- /* couldn't get point out of Q or draw it */
- while (1) {
- Rect rect;
-
- direction = (oldy & DOWN_FLAG) ? 1 : -1;
- gotseed = get_seed(vwk, oldxleft, (oldy + direction),
- &newxleft, &newxright, seed_type);
-
- if ((newxleft < (oldxleft - 1)) && gotseed) {
- xleft = oldxleft;
- while (xleft > newxleft) {
- --xleft;
- get_seed(vwk, xleft, oldy ^ DOWN_FLAG,
- &xleft, &xright, seed_type);
- }
- }
- while (newxright < oldxright) {
- ++newxright;
- gotseed = get_seed(vwk, newxright, oldy + direction,
- &xleft, &newxright, seed_type);
- }
- if ((newxright > (oldxright + 1)) && gotseed) {
- xright = oldxright;
- while (xright < newxright) {
- ++xright;
- get_seed(vwk, xright, oldy ^ DOWN_FLAG,
- &xleft, &xright, seed_type);
- }
- }
-
- /* Eventually jump out here */
- if (qtop == qbottom)
- break;
-
- while (queue[qptr] == EMPTY) {
- qptr += 3;
- if (qptr == qtop)
- qptr = qbottom;
- }
-
- oldy = queue[qptr];
- queue[qptr++] = EMPTY;
- oldxleft = queue[qptr++];
- oldxright = queue[qptr++];
- if (qptr == qtop)
- crunch_queue();
-
- rect.x1 = oldxleft;
- rect.y1 = ABS(oldy);
- rect.x2 = oldxright;
- rect.y2 = ABS(oldy);
-
- /* rectangle fill routine draws horizontal line */
- draw_rect(vwk, &rect, vwk->fill_color);
- }
- }
-} /* end of fill() */
-
-/*
- * crunch_queue - move qtop down to remove unused seeds
- */
-static void
-crunch_queue(void)
-{
- while ((queue[qtop - 3] == EMPTY) && (qtop > qbottom))
- qtop -= 3;
- if (qptr >= qtop)
- qptr = qbottom;
-}
-
-/*
- * get_seed - put seeds into Q, if (xin,yin) is not of search_color
- */
-static WORD
-get_seed(Vwk * vwk, WORD xin, WORD yin, WORD *xleftout, WORD *xrightout,
- BOOL seed_type)
-{
- if (end_pts(vwk, xin, ABS(yin), xleftout, xrightout, seed_type)) {
- /* false if of search_color */
- for (qtmp = qbottom, qhole = EMPTY; qtmp < qtop; qtmp += 3) {
- /* see, if we ran into another seed */
- if ( ((queue[qtmp] ^ DOWN_FLAG) == yin) && (queue[qtmp] != EMPTY) &&
- (queue[qtmp + 1] == *xleftout) )
-
- {
- /* we ran into another seed so remove it and fill the line */
- Rect rect;
-
- rect.x1 = *xleftout;
- rect.y1 = ABS(yin);
- rect.x2 = *xrightout;
- rect.y2 = ABS(yin);
-
- /* rectangle fill routine draws horizontal line */
- draw_rect(vwk, &rect, vwk->fill_color);
-
- queue[qtmp] = EMPTY;
- if ((qtmp + 3) == qtop)
- crunch_queue();
- return 0;
- }
- if ((queue[qtmp] == EMPTY) && (qhole == EMPTY))
- qhole = qtmp;
- }
-
- if (qhole == EMPTY) {
- if ((qtop += 3) > QMAX) {
- qtmp = qbottom;
- qtop -= 3;
- }
- } else
- qtmp = qhole;
-
- queue[qtmp++] = yin; /* put the y and endpoints in the Q */
- queue[qtmp++] = *xleftout;
- queue[qtmp] = *xrightout;
- return 1; /* we put a seed in the Q */
- }
-
- return 0; /* we didnt put a seed in the Q */
-}
-
-
-
-void
-_v_get_pixel(Vwk * vwk)
-{
- WORD pel;
- WORD *int_out;
- const WORD x = PTSIN[0]; /* fetch x coord. */
- const WORD y = PTSIN[1]; /* fetch y coord. */
-
- /* Get the requested pixel */
- pel = (WORD)pixelread(x,y);
-
- int_out = INTOUT;
- *int_out++ = pel;
-
- *int_out = REV_MAP_COL[pel];
- CONTRL[4] = 2;
-}
-
-
-
-/*
- * get_pix - gets a pixel (just for linea!)
- *
- * input:
- * PTSIN(0) = x coordinate.
- * PTSIN(1) = y coordinate.
- * output:
- * pixel value
- */
-WORD
-get_pix(void)
-{
- /* return the composed color value */
- return pixelread(PTSIN[0], PTSIN[1]);
-}
-
-/*
- * put_pix - plot a pixel (just for linea!)
- *
- * input:
- * INTIN(0) = pixel value.
- * PTSIN(0) = x coordinate.
- * PTSIN(1) = y coordinate.
- */
-void
-put_pix(void)
-{
- UWORD *addr;
- UWORD color;
- UWORD mask;
- int plane;
-
- const WORD x = PTSIN[0];
- const WORD y = PTSIN[1];
-
- /* convert x,y to start adress */
- addr = get_start_addr(x, y);
- /* co-ordinates can wrap, but cannot write outside screen,
- * alternatively this could check against v_bas_ad+vram_size()
- */
- if (addr < (UWORD*)v_bas_ad || addr >= get_start_addr(v_hz_rez, v_vt_rez)) {
- return;
- }
- color = INTIN[0]; /* device dependent encoded color bits */
- mask = 0x8000 >> (x&0xf); /* initial bit position in WORD */
-
- for (plane = v_planes-1; plane >= 0; plane-- ) {
- color = color >> 1| color << 15; /* rotate color bits */
- if (color&0x8000)
- *addr++ |= mask;
- else
- *addr++ &= ~mask;
- }
-}
diff --git a/BaS_gcc/video/videl.c b/BaS_gcc/video/videl.c
deleted file mode 100644
index 5a6d69e..0000000
--- a/BaS_gcc/video/videl.c
+++ /dev/null
@@ -1,895 +0,0 @@
-/*
- * videl.c - Falcon VIDEL support
- *
- * Copyright (c) 2013 The EmuTOS development team
- *
- * Authors:
- * PES Petr Stehlik
- * RFB Roger Burrows
- *
- * This file is distributed under the GPL, version 2 or at your
- * option any later version. See doc/license.txt for details.
- */
-
-// #define DBG_VIDEL
-#ifdef DBG_VIDEL
-#define dbg(format, arg...) do { xprintf("DEBUG: %s(): " format, __FUNCTION__, ##arg); } while (0)
-#else
-#define dbg(format, arg...) do { ; } while (0)
-#endif /* DBG_VIDEL */
-
-#include
-#include
-#include
-#include "bas_printf.h"
-#include "screen.h"
-#include "videl.h"
-
-uint16_t *colorptr;
-
-static const int32_t videl_dflt_palette[] =
-{
- FRGB_WHITE, FRGB_RED, FRGB_GREEN, FRGB_YELLOW,
- FRGB_BLUE, FRGB_MAGENTA, FRGB_CYAN, FRGB_LTGRAY,
- FRGB_GRAY, FRGB_LTRED, FRGB_LTGREEN, FRGB_LTYELLOW,
- FRGB_LTBLUE, FRGB_LTMAGENTA, FRGB_LTCYAN, FRGB_BLACK,
- 0xffff00ff, 0xeded00ed, 0xdddd00dd, 0xcccc00cc,
- 0xbaba00ba, 0xaaaa00aa, 0x99990099, 0x87870087,
- 0x77770077, 0x66660066, 0x54540054, 0x44440044,
- 0x33330033, 0x21210021, 0x11110011, 0x00000000,
- 0xff000000, 0xff000011, 0xff000021, 0xff000033,
- 0xff000044, 0xff000054, 0xff000066, 0xff000077,
- 0xff000087, 0xff000099, 0xff0000aa, 0xff0000ba,
- 0xff0000cc, 0xff0000dd, 0xff0000ed, 0xff0000ff,
- 0xed0000ff, 0xdd0000ff, 0xcc0000ff, 0xba0000ff,
- 0xaa0000ff, 0x990000ff, 0x870000ff, 0x770000ff,
- 0x660000ff, 0x540000ff, 0x440000ff, 0x330000ff,
- 0x210000ff, 0x110000ff, 0x000000ff, 0x001100ff,
- 0x002100ff, 0x003300ff, 0x004400ff, 0x005400ff,
- 0x006600ff, 0x007700ff, 0x008700ff, 0x009900ff,
- 0x00aa00ff, 0x00ba00ff, 0x00cc00ff, 0x00dd00ff,
- 0x00ed00ff, 0x00ff00ff, 0x00ff00ed, 0x00ff00dd,
- 0x00ff00cc, 0x00ff00ba, 0x00ff00aa, 0x00ff0099,
- 0x00ff0087, 0x00ff0077, 0x00ff0066, 0x00ff0054,
- 0x00ff0044, 0x00ff0033, 0x00ff0021, 0x00ff0011,
- 0x00ff0000, 0x11ff0000, 0x21ff0000, 0x33ff0000,
- 0x44ff0000, 0x54ff0000, 0x66ff0000, 0x77ff0000,
- 0x87ff0000, 0x99ff0000, 0xaaff0000, 0xbaff0000,
- 0xccff0000, 0xddff0000, 0xedff0000, 0xffff0000,
- 0xffed0000, 0xffdd0000, 0xffcc0000, 0xffba0000,
- 0xffaa0000, 0xff990000, 0xff870000, 0xff770000,
- 0xff660000, 0xff540000, 0xff440000, 0xff330000,
- 0xff210000, 0xff110000, 0xba000000, 0xba000011,
- 0xba000021, 0xba000033, 0xba000044, 0xba000054,
- 0xba000066, 0xba000077, 0xba000087, 0xba000099,
- 0xba0000aa, 0xba0000ba, 0xaa0000ba, 0x990000ba,
- 0x870000ba, 0x770000ba, 0x660000ba, 0x540000ba,
- 0x440000ba, 0x330000ba, 0x210000ba, 0x110000ba,
- 0x000000ba, 0x001100ba, 0x002100ba, 0x003300ba,
- 0x004400ba, 0x005400ba, 0x006600ba, 0x007700ba,
- 0x008700ba, 0x009900ba, 0x00aa00ba, 0x00ba00ba,
- 0x00ba00aa, 0x00ba0099, 0x00ba0087, 0x00ba0077,
- 0x00ba0066, 0x00ba0054, 0x00ba0044, 0x00ba0033,
- 0x00ba0021, 0x00ba0011, 0x00ba0000, 0x11ba0000,
- 0x21ba0000, 0x33ba0000, 0x44ba0000, 0x54ba0000,
- 0x66ba0000, 0x77ba0000, 0x87ba0000, 0x99ba0000,
- 0xaaba0000, 0xbaba0000, 0xbaaa0000, 0xba990000,
- 0xba870000, 0xba770000, 0xba660000, 0xba540000,
- 0xba440000, 0xba330000, 0xba210000, 0xba110000,
- 0x77000000, 0x77000011, 0x77000021, 0x77000033,
- 0x77000044, 0x77000054, 0x77000066, 0x77000077,
- 0x66000077, 0x54000077, 0x44000077, 0x33000077,
- 0x21000077, 0x11000077, 0x00000077, 0x00110077,
- 0x00210077, 0x00330077, 0x00440077, 0x00540077,
- 0x00660077, 0x00770077, 0x00770066, 0x00770054,
- 0x00770044, 0x00770033, 0x00770021, 0x00770011,
- 0x00770000, 0x11770000, 0x21770000, 0x33770000,
- 0x44770000, 0x54770000, 0x66770000, 0x77770000,
- 0x77660000, 0x77540000, 0x77440000, 0x77330000,
- 0x77210000, 0x77110000, 0x44000000, 0x44000011,
- 0x44000021, 0x44000033, 0x44000044, 0x33000044,
- 0x21000044, 0x11000044, 0x00000044, 0x00110044,
- 0x00210044, 0x00330044, 0x00440044, 0x00440033,
- 0x00440021, 0x00440011, 0x00440000, 0x11440000,
- 0x21440000, 0x33440000, 0x44440000, 0x44330000,
- 0x44210000, 0x44110000, FRGB_WHITE, FRGB_BLACK
-};
-
-uint32_t falcon_shadow_palette[256]; /* real Falcon does this, used by vectors.S */
-static uint16_t ste_shadow_palette[16];
-
-#define MON_ALL -1 /* code used in VMODE_ENTRY for match on mode only */
-
-/*
- * tables that cover all(?) valid Falcon modes
- * note:
- * . 256-colour and Truecolor modes are not currently supported by the VDI
- */
-static const VMODE_ENTRY vga_init_table[] =
-{
- /* the entries in this table are for VGA/NTSC (i.e. VGA 60Hz) and VGA/PAL
- * (i.e. VGA 50Hz). in *this* table, each entry applies to four video modes:
- * mode, mode|VIDEL_VERTICAL, mode|VIDEL_PAL, mode|VIDEL_VERTICAL|VIDEL_PAL
- */
- { 0x0011, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020a, 0x0009, 0x0011, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0012, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x028a, 0x006b, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0013, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x029a, 0x007b, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0014, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02ac, 0x0091, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0018, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x0273, 0x0050, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0019, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x001a, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02a3, 0x007c, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x001b, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02ab, 0x0084, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0092, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { 0x0098, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x0273, 0x0050, 0x0096, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { 0x0099, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
-};
-
-static const VMODE_ENTRY nonvga_init_table[] =
-{
- /* the remaining entries are for TV+NTSC, TV+PAL, TV+NTSC+overscan, TV+PAL+overscan */
- { 0x0001, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0002, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x000c, 0x006d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0003, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x001c, 0x007d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0004, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x002e, 0x008f, 0x00d8, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0008, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0009, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0002, 0x0020, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x000a, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x004d, 0x00fd, 0x01b4, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x000b, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x005d, 0x010d, 0x01b4, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0021, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0022, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x000c, 0x006d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0023, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x001c, 0x007d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0024, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x002e, 0x008f, 0x00d8, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0028, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0029, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0002, 0x0020, 0x0034, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x002a, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x004d, 0x00fe, 0x01b2, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x002b, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x005d, 0x010e, 0x01b2, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x0041, MON_VGA, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0041, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0232, 0x001b, 0x0034, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0042, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x000c, 0x006d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0042, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x02ec, 0x008d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0043, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x001c, 0x007d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0043, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x02fc, 0x009d, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0044, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x002e, 0x008f, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0044, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x000e, 0x00af, 0x00d8, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0048, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0048, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03b0, 0x00df, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0049, MON_VGA, 0x003e, 0x0030, 0x0008, 0x023b, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0049, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0237, 0x0020, 0x0034, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x004a, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x004d, 0x00fd, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x004a, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x000d, 0x013d, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x004b, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x005d, 0x010d, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x004b, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x001d, 0x014d, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x0061, MON_VGA, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0061, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0232, 0x001b, 0x0034, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0062, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x000c, 0x006d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0062, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x02ec, 0x008d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0063, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x001c, 0x007d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0063, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x02fc, 0x009d, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0064, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x002e, 0x008f, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0064, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x000e, 0x00af, 0x00d8, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0068, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0068, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03af, 0x00e0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0069, MON_VGA, 0x003e, 0x0030, 0x0008, 0x023b, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0069, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0237, 0x0020, 0x0034, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x006a, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x004d, 0x00fe, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x006a, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x000d, 0x013e, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x006b, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x005d, 0x010e, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x006b, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x001d, 0x014e, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x0082, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0088, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x0088, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0089, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x00a2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x00a8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x00a8, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x007f, 0x020f, 0x026b },
- { 0x00a9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x00c2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x00c8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x00c8, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x00c8, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03b0, 0x00df, 0x01b4, 0x020d, 0x0201, 0x0016, 0x0025, 0x0205, 0x0207 },
- { 0x00c9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x00e2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x00e8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x00e8, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x00e8, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03af, 0x00e0, 0x01b2, 0x0271, 0x0265, 0x002f, 0x0057, 0x0237, 0x026b },
- { 0x00e9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x0101, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0102, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x000c, 0x006d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0103, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x001c, 0x007d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0104, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x002e, 0x008f, 0x00d8, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0108, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0109, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0002, 0x0020, 0x0034, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x010a, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x004d, 0x00fd, 0x01b4, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x010b, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x005d, 0x010d, 0x01b4, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0121, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0122, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x000c, 0x006d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0123, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x001c, 0x007d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0124, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x002e, 0x008f, 0x00d8, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0128, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0129, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0002, 0x0020, 0x0034, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x012a, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x004d, 0x00fe, 0x01b2, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x012b, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x005d, 0x010e, 0x01b2, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x0141, MON_VGA, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0141, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0232, 0x001b, 0x0034, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0142, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x000c, 0x006d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0142, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x02ec, 0x008d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0143, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x001c, 0x007d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0143, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x02fc, 0x009d, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0144, MON_VGA, 0x00fe, 0x00c9, 0x0027, 0x002e, 0x008f, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0144, MON_ALL, 0x00fe, 0x00c9, 0x0027, 0x000e, 0x00af, 0x00d8, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0148, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0148, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03b0, 0x00df, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0149, MON_VGA, 0x003e, 0x0030, 0x0008, 0x023b, 0x001c, 0x0034, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0149, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0237, 0x0020, 0x0034, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x014a, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x004d, 0x00fd, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x014a, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x000d, 0x013d, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x014b, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x005d, 0x010d, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x014b, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x001d, 0x014d, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x0161, MON_VGA, 0x003e, 0x0030, 0x0008, 0x0239, 0x0012, 0x0034, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0161, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0232, 0x001b, 0x0034, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0162, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x000c, 0x006d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0162, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x02ec, 0x008d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0163, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x001c, 0x007d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0163, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x02fc, 0x009d, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0164, MON_VGA, 0x00fe, 0x00cb, 0x0027, 0x002e, 0x008f, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0164, MON_ALL, 0x00fe, 0x00cb, 0x0027, 0x000e, 0x00af, 0x00d8, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0168, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0168, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03af, 0x00e0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0169, MON_VGA, 0x003e, 0x0030, 0x0008, 0x023b, 0x001c, 0x0034, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0169, MON_ALL, 0x003e, 0x0030, 0x0008, 0x0237, 0x0020, 0x0034, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x016a, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x004d, 0x00fe, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x016a, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x000d, 0x013e, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x016b, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x005d, 0x010e, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x016b, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x001d, 0x014e, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x0182, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x0188, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x0188, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020c, 0x0201, 0x0016, 0x004c, 0x01dc, 0x0207 },
- { 0x0189, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x01a2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x01a8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x01a8, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x007e, 0x020e, 0x026b },
- { 0x01a9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x01c2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x01c8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x01c8, MON_VGA, 0x01ff, 0x0197, 0x0050, 0x03f0, 0x009f, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x01c8, MON_ALL, 0x01ff, 0x0197, 0x0050, 0x03b0, 0x00df, 0x01b4, 0x020c, 0x0201, 0x0016, 0x0024, 0x0204, 0x0207 },
- { 0x01c9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x020d, 0x0201, 0x0016, 0x004d, 0x01dd, 0x0207 },
- { 0x01e2, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { 0x01e8, MON_MONO, 0x001a, 0x0000, 0x0000, 0x020f, 0x000c, 0x0014, 0x03e9, 0x0000, 0x0000, 0x0043, 0x0363, 0x03e7 },
- { 0x01e8, MON_VGA, 0x01fe, 0x0199, 0x0050, 0x03ef, 0x00a0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x01e8, MON_ALL, 0x01fe, 0x0199, 0x0050, 0x03af, 0x00e0, 0x01b2, 0x0270, 0x0265, 0x002f, 0x0056, 0x0236, 0x026b },
- { 0x01e9, MON_ALL, 0x003e, 0x0032, 0x0009, 0x023f, 0x001c, 0x0034, 0x0271, 0x0265, 0x002f, 0x006f, 0x01ff, 0x026b },
- { -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
-};
-
-void set_palette(uint16_t *colorptr)
-{
- uint16_t *palette_regs = (uint16_t *) 0xffff9800;
-
- do
- {
- *palette_regs++ = *colorptr++;
- } while (palette_regs < (uint16_t *) 0xffff9600 + 16);
-}
-
-/*
- * functions for VIDEL programming
- */
-
-static uint16_t get_videl_bpp(void)
-{
- uint16_t f_shift = *(volatile uint16_t *)SPSHIFT;
- uint8_t st_shift = *(volatile uint8_t *)ST_SHIFTER;
- /* to get bpp, we must examine f_shift and st_shift.
- * f_shift is valid if any of bits no. 10, 8 or 4
- * is set. Priority in f_shift is: 10 ">" 8 ">" 4, i.e.
- * if bit 10 set then bit 8 and bit 4 don't care...
- * If all these bits are 0 get display depth from st_shift
- * (as for ST and STe)
- */
- int bits_per_pixel = 1;
- if (f_shift & 0x400) /* 2 colors */
- bits_per_pixel = 1;
- else if (f_shift & 0x100) /* hicolor */
- bits_per_pixel = 16;
- else if (f_shift & 0x010) /* 8 bitplanes */
- bits_per_pixel = 8;
- else if (st_shift == 0)
- bits_per_pixel = 4;
- else if (st_shift == 0x1)
- bits_per_pixel = 2;
- else /* if (st_shift == 0x2) */
- bits_per_pixel = 1;
-
- return bits_per_pixel;
-}
-
-static uint16_t get_videl_width(void)
-{
- return ( * (volatile uint16_t *) 0xffff8210) * 16 / get_videl_bpp();
-}
-
-static uint16_t get_videl_height(void)
-{
- uint16_t vdb = * (volatile uint16_t *) 0xffff82a8;
- uint16_t vde = * (volatile uint16_t *) 0xffff82aa;
- uint16_t vmode = * (volatile uint16_t *) 0xffff82c2;
-
- /* visible y resolution:
- * Graphics display starts at line VDB and ends at line
- * VDE. If interlace mode off unit of VC-registers is
- * half lines, else lines.
- */
- uint16_t yres = vde - vdb;
- if (!(vmode & 0x02)) /* interlace */
- yres >>= 1;
- if (vmode & 0x01) /* double */
- yres >>= 1;
-
- return yres;
-}
-
-
-/*
- * lookup videl initialisation data for specified mode/monitor
- * returns NULL if mode/monitor combination is invalid
- */
-const VMODE_ENTRY *lookup_videl_mode(int16_t mode,int16_t monitor)
-{
- const VMODE_ENTRY *vmode_init_table, *p;
-
- if (mode&VIDEL_VGA)
- {
- vmode_init_table = vga_init_table;
- /* ignore bits that don't affect initialisation data */
- mode &= ~(VIDEL_VERTICAL|VIDEL_PAL);
- }
- else
- {
- vmode_init_table = nonvga_init_table;
- }
-
- for (p = vmode_init_table; p->vmode >= 0; p++)
- if (p->vmode == mode)
- if ((p->monitor == MON_ALL) || (p->monitor == monitor))
- return p;
-
- return NULL;
-}
-
-
-/*
- * determine scanline width based on video mode
- */
-static int16_t determine_width(int16_t mode)
-{
- int16_t linewidth;
-
- linewidth = (mode&VIDEL_80COL) ? 40 : 20;
- linewidth <<= (mode & VIDEL_BPPMASK);
- if (mode&VIDEL_OVERSCAN)
- linewidth = linewidth * 12 / 10; /* multiply by 1.2 */
-
- return linewidth;
-}
-
-
-/*
- * determine vctl based on video mode and monitor type
- */
-static int16_t determine_vctl(int16_t mode, int16_t monitor)
-{
- int16_t vctl;
-
- if (mode & VIDEL_VGA)
- {
- vctl = (mode & VIDEL_80COL) ? 0x08 : 0x04;
- if (mode & VIDEL_VERTICAL)
- vctl |= 0x01;
- }
- else
- {
- vctl = (mode & VIDEL_80COL) ? 0x04 : 0x00;
- if (mode & VIDEL_VERTICAL)
- vctl |= 0x02;
- }
-
- if (!(mode & VIDEL_COMPAT))
- return vctl;
-
- switch (mode & VIDEL_BPPMASK)
- {
- case VIDEL_1BPP:
- if (!(mode & VIDEL_VGA) && (monitor == MON_MONO))
- vctl = 0x08;
- break;
- case VIDEL_2BPP:
- vctl = (mode & VIDEL_VGA)? 0x09 : 0x04;
- break;
- case VIDEL_4BPP:
- vctl = (mode & VIDEL_VGA)? 0x05 : 0x00;
- break;
- }
-
- return vctl;
-}
-
-
-/*
- * determine regc0 based on video mode & monitor type
- */
-static int16_t determine_regc0(int16_t mode,int16_t monitor)
-{
- if (mode & VIDEL_VGA)
- return 0x0186;
-
- if (!(mode & VIDEL_COMPAT))
- return (monitor == MON_TV) ? 0x0183 : 0x0181;
-
- /* handle ST-compatible modes */
- if ((mode & (VIDEL_80COL | VIDEL_BPPMASK)) == (VIDEL_80COL | VIDEL_1BPP))
- {
- /* 80-column, 2-colour */
- switch(monitor)
- {
- case MON_MONO:
- return 0x0080;
- case MON_TV:
- return 0x0183;
- default:
- return 0x0181;
- }
- }
-
- return (monitor == MON_TV) ? 0x0083 : 0x0081;
-}
-
-
-/*
- * this routine can set VIDEL to 1,2,4 or 8 bitplanes mode on VGA
- */
-static int set_videl_vga(int16_t mode)
-{
- volatile char *videlregs = (char *)0xffff8200;
-#define videlword(n) (*(volatile uint16_t *)(videlregs+(n)))
- const VMODE_ENTRY *p;
- int16_t linewidth, monitor, vctl;
-
- monitor = vmontype();
-
- p = lookup_videl_mode(mode,monitor);/* validate mode */
- if (!p)
- return -1;
-
- videlregs[0x0a] = (mode & VIDEL_PAL) ? 2 : 0; /* video sync to 50Hz if PAL */
-
- // FIXME: vsync() can't work if the screen is initially turned off
- //vsync(); /* wait for vbl so we're not interrupted :-) */
-
- videlword(0x82) = p->hht; /* H hold timer */
- videlword(0x84) = p->hbb; /* H border begin */
- videlword(0x86) = p->hbe; /* H border end */
- videlword(0x88) = p->hdb; /* H display begin */
- videlword(0x8a) = p->hde; /* H display end */
- videlword(0x8c) = p->hss; /* H SS */
-
- videlword(0xa2) = p->vft; /* V freq timer */
- videlword(0xa4) = p->vbb; /* V border begin */
- videlword(0xa6) = p->vbe; /* V border end */
- videlword(0xa8) = p->vdb; /* V display begin */
- videlword(0xaa) = p->vde; /* V display end */
- videlword(0xac) = p->vss; /* V SS */
-
- videlregs[0x60] = 0x00; /* clear ST shift for safety */
-
- videlword(0x0e) = 0; /* offset */
-
- linewidth = determine_width(mode);
- vctl = determine_vctl(mode,monitor);
-
- videlword(0x10) = linewidth; /* scanline width */
- videlword(0xc2) = vctl; /* video control */
- videlword(0xc0) = determine_regc0(mode,monitor);
- videlword(0x66) = 0x0000; /* clear SPSHIFT */
-
- switch(mode & VIDEL_BPPMASK)
- {
- /* set SPSHIFT / ST shift */
- case VIDEL_1BPP: /* 2 colours (mono) */
- if (monitor == MON_MONO)
- videlregs[0x60] = 0x02;
- else videlword(0x66) = 0x0400;
- break;
- case VIDEL_2BPP: /* 4 colours */
- videlregs[0x60] = 0x01;
- videlword(0x10) = linewidth; /* writing to the ST shifter has */
- videlword(0xc2) = vctl; /* just overwritten these registers */
- break;
- case VIDEL_4BPP: /* 16 colours */
- /* if not ST-compatible, SPSHIFT was already set correctly above */
- if (mode & VIDEL_COMPAT)
- videlregs[0x60] = 0x00; /* else set ST shifter */
- break;
- case VIDEL_8BPP: /* 256 colours */
- videlword(0x66) = 0x0010;
- break;
- case VIDEL_TRUECOLOR: /* 65536 colours (Truecolor) */
- videlword(0x66) = 0x0100;
- break;
- }
-
- return 0;
-}
-
-/*
- * the current Falcon video mode; used by vsetmode() & vfixmode()
- */
-int16_t current_video_mode;
-
-/*
- * Set Falcon video mode
- */
-int16_t vsetmode(int16_t mode)
-{
- int16_t ret;
-
- if (mode == -1)
- return current_video_mode;
-
-#ifdef DBG_VIDEL
- xprintf("vsetmode(0x%04x)\n", mode);
-#endif
-
- if (set_videl_vga(mode) < 0) /* invalid mode */
- return current_video_mode;
-
- ret = current_video_mode;
- current_video_mode = mode;
-
- return ret;
-}
-
-/*
- * Get Videl monitor type
- */
-int16_t vmontype(void)
-{
- return ((*(volatile uint8_t *)0xffff8006) >> 6) & 3;
-}
-
-/*
- * Set external video sync mode
- */
-int16_t vsetsync(int16_t external)
-{
- uint16_t spshift;
-
- if (external & 0x01) /* external clock wanted? */
- *(volatile int8_t *)SYNCMODE |= 0x01;
- else *(volatile int8_t *)SYNCMODE &= 0xfe;
-
- spshift = *(volatile uint16_t *)SPSHIFT;
-
- if (external&0x02) /* external vertical sync wanted? */
- spshift |= 0x0020;
- else spshift &= 0xffdf;
-
- if (external&0x04) /* external horizontal sync wanted? */
- spshift |= 0x0040;
- else spshift &= 0xffbf;
-
- *(volatile uint16_t *)SPSHIFT = spshift;
-
- return 0; /* OK */
-}
-
-/*
- * get video ram size according to mode
- */
-int32_t vgetsize(int16_t mode)
-{
- const VMODE_ENTRY *p;
- int height;
- int16_t vctl, monitor;
-
- monitor = vmontype();
-
- mode &= VIDEL_VALID; /* ignore invalid bits */
- if ((mode & VIDEL_BPPMASK) > VIDEL_TRUECOLOR)
- {
- /* fixup invalid bpp */
- mode &= ~VIDEL_BPPMASK;
- mode |= VIDEL_TRUECOLOR;
- }
-
- p = lookup_videl_mode(mode, monitor);
- if (!p)
- {
- /* invalid mode */
- if (mode & VIDEL_COMPAT)
- return ST_VRAM_SIZE;
- mode &= ~(VIDEL_OVERSCAN|VIDEL_PAL);/* ignore less-important bits */
- p = lookup_videl_mode(mode, monitor);/* & try again */
- if (!p) /* "can't happen" */
- return FALCON_VRAM_SIZE;
- }
-
- vctl = determine_vctl(mode, monitor);
- height = p->vde - p->vdb;
- if (!(vctl & 0x02))
- height >>= 1;
- if (vctl & 0x01)
- height >>= 1;
-
- return (int32_t)determine_width(mode) * 2 * height;
-}
-
-/*
- * convert from Falcon palette format to STe palette format
- */
-#define falc2ste(a) ((((a) >> 1) & 0x08) | (((a) >> 5) & 0x07))
-
-static void convert2ste(uint16_t *ste, uint32_t *falcon)
-{
- union
- {
- int32_t l;
- uint8_t b[4];
- } u;
- int i;
-
- for (i = 0; i < 16; i++)
- {
- u.l = *falcon++;
- *ste++ = (falc2ste(u.b[0]) << 8) | (falc2ste(u.b[1]) << 4) | falc2ste(u.b[3]);
- }
-}
-
-/*
- * determine whether to update STe or Falcon h/w palette registers
- * returns true if we need to update the STe h/w palette
- */
-static int use_ste_palette(int16_t videomode)
-{
- if (vmontype() == MON_MONO) /* always for ST mono monitor */
- return true;
-
- if ((videomode & VIDEL_BPPMASK) == VIDEL_2BPP) /* always for 4-colour modes */
- return true;
-
- if ((videomode & VIDEL_COMPAT) && ((videomode & VIDEL_BPPMASK) == VIDEL_4BPP))
- return true; /* and for ST low */
-
- return false;
-}
-
-/*
- * set palette registers
- *
- * note that the actual update of the hardware registers is done by the
- * VBL interrupt handler, according to the setting of 'colorptr'. since
- * the address in colorptr must be even, we use bit 0 as a flag.
- *
- * colorptr contents VBL interrupt handler action
- * ----------------- ----------------------------
- * 0 do nothing
- * address load STe palette regs from address
- * address | 0x01 load first 16 Falcon palette regs from address
- * 0 | 0x01 load 256 Falcon palette regs from falcon_shadow_palette[]
- */
-int16_t vsetrgb(int16_t index, int16_t count, uint32_t *rgb)
-{
- uint32_t *shadow, *source;
- union
- {
- int32_t l;
- uint8_t b[4];
- } u;
- int16_t limit;
-
- if ((index < 0) || (count <= 0))
- return -1; /* Generic error */
-
- limit = (get_videl_bpp() <= 4) ? 16 : 256;
- if ((index + count) > limit)
- return -1; /* Generic error */
-
- /*
- * we always update the Falcon shadow palette, since that's
- * what we'll return for VgetRGB()
- */
- shadow = falcon_shadow_palette + index;
- source = rgb;
- while (count--)
- {
- u.l = *source++;
- u.b[0] = u.b[1]; /* shift R & G */
- u.b[1] = u.b[2];
- u.b[2] = 0x00;
- *shadow++ = u.l;
- }
-
- /*
- * for ST low or 4-colour modes, we need to convert the
- * Falcon shadow registers to STe palette register format, and
- * request the VBL interrupt handler to update the STe palette
- * registers rather than the Falcon registers
- */
- if (use_ste_palette(vsetmode(-1)))
- {
- convert2ste(ste_shadow_palette, falcon_shadow_palette);
- colorptr = ste_shadow_palette;
-
-
- return 0; /* OK */
- }
-
- colorptr = (limit == 256) ? (uint16_t *) 0x01L : (uint16_t *) ((uint32_t) falcon_shadow_palette|0x01L);
-
- set_palette(colorptr);
- return 0; /* OK */
-}
-
-/*
- * get palette registers
- */
-int16_t vgetrgb(int16_t index, int16_t count, uint32_t *rgb)
-{
- uint32_t *shadow;
- union
- {
- int32_t l;
- uint8_t b[4];
- } u;
- int16_t limit;
-
- if ((index < 0) || (count <= 0))
- return -1; /* Generic error */
-
- limit = (get_videl_bpp() <= 4) ? 16 : 256;
- if ((index + count) > limit)
- return -1; /* Generic error */
-
- shadow = falcon_shadow_palette + index;
- while (count--)
- {
- u.l = *shadow++;
- u.b[2] = u.b[1]; /* shift R & G right*/
- u.b[1] = u.b[0];
- u.b[0] = 0x00;
- *rgb++ = u.l;
- }
-
- return 0; /* OK */
-}
-
-/*
- * Fix Videl mode
- *
- * This converts an (assumed legal) input mode into the
- * corresponding output mode for the current monitor type
- */
-int16_t vfixmode(int16_t mode)
-{
- int16_t monitor, currentmode;
-
- monitor = vmontype();
- if (monitor == MON_MONO)
- return FALCON_ST_HIGH;
-
- currentmode = vsetmode(-1);
- if (currentmode & VIDEL_PAL) /* set PAL bit per current value */
- mode |= VIDEL_PAL;
- else mode &= ~VIDEL_PAL;
-
- /* handle VGA monitor */
- if (monitor == MON_VGA)
- {
- mode &= ~VIDEL_OVERSCAN; /* turn off overscan (not used with VGA) */
- if (!(mode & VIDEL_VGA)) /* if mode doesn't have VGA set, */
- mode ^= (VIDEL_VERTICAL | VIDEL_VGA); /* set it & flip vertical */
- if (mode & VIDEL_COMPAT)
- {
- if ((mode&VIDEL_BPPMASK) == VIDEL_1BPP)
- mode &= ~VIDEL_VERTICAL; /* clear vertical for ST high */
- else mode |= VIDEL_VERTICAL; /* set it for ST medium, low */
- }
- return mode;
- }
-
- /* handle RGB or TV */
- if (mode & VIDEL_VGA) /* if mode has VGA set, */
- mode ^= (VIDEL_VERTICAL | VIDEL_VGA); /* clear it & flip vertical */
- if (mode & VIDEL_COMPAT)
- {
- if ((mode & VIDEL_BPPMASK) == VIDEL_1BPP)
- mode |= VIDEL_VERTICAL; /* set vertical for ST high */
- else mode &= ~VIDEL_VERTICAL; /* clear it for ST medium, low */
- }
-
- return mode;
-}
-
-int16_t videl_check_moderez(int16_t moderez)
-{
- int16_t current_mode, return_mode;
-
- if (moderez < 0) /* ignore rez values */
- return 0;
-
- current_mode = get_videl_mode();
- return_mode = vfixmode(moderez);/* adjust */
- return (return_mode == current_mode) ? 0 : return_mode;
-}
-
-uint32_t videl_vram_size(void)
-{
- return get_videl_width() / 8L * get_videl_height() * get_videl_bpp();
-}
-
-void videl_get_current_mode_info(uint16_t *planes, uint16_t *hz_rez, uint16_t *vt_rez)
-{
- *planes = get_videl_bpp();
- *hz_rez = get_videl_width();
- *vt_rez = get_videl_height();
-}
-
-/*
- * Initialise Falcon palette
- */
-void initialise_falcon_palette(int16_t mode)
-{
- volatile int16_t *col_regs = (int16_t *) ST_PALETTE_REGS;
- volatile int32_t *fcol_regs = (int32_t *) FALCON_PALETTE_REGS;
- int i, limit;
-
- /* first, set up Falcon shadow palette and real registers */
- for (i = 0; i < 256; i++)
- falcon_shadow_palette[i] = videl_dflt_palette[i];
-
- switch(mode&VIDEL_BPPMASK)
- {
- case VIDEL_1BPP: /* 2-colour mode */
- falcon_shadow_palette[1] = falcon_shadow_palette[15];
- break;
-
- case VIDEL_2BPP: /* 4-colour mode */
- falcon_shadow_palette[3] = falcon_shadow_palette[15];
- break;
- }
-
- /* a 'feature' of the Falcon hardware: if we're in a mode with less
- * than 256 colours, and we attempt to set the Falcon hardware
- * palette registers for colours 16 & above, it will screw up the
- * values in the first 16 hardware palette registers, resulting in
- * a messed-up display ...
- * NOTE: what happens in the Truecolor case is yet to be determined,
- * although it is probably not important since we don't use those
- * registers.
- */
- limit = ((mode & VIDEL_BPPMASK) == VIDEL_8BPP) ? 256 : 16;
- for (i = 0; i < limit; i++)
- fcol_regs[i] = falcon_shadow_palette[i];
-
- /*
- * if appropriate, set up the STe shadow & real palette registers
- */
- if (use_ste_palette(mode))
- {
- convert2ste(ste_shadow_palette, falcon_shadow_palette);
- for (i = 0; i < 16; i++)
- col_regs[i] = ste_shadow_palette[i];
- }
-}
-
-/*
- * Get videl mode
- * This is the same as vsetmode(-1) except that it returns
- * zero when there is no videl. Used by app_save().
- */
-int16_t get_videl_mode(void)
-{
- return vsetmode(-1);
-}
-
diff --git a/BaS_gcc/video/video.c b/BaS_gcc/video/video.c
deleted file mode 100644
index ab53148..0000000
--- a/BaS_gcc/video/video.c
+++ /dev/null
@@ -1,419 +0,0 @@
-#include "video.h"
-#include "videl.h"
-#include "screen.h"
-#include "pci.h"
-#include "pci_ids.h"
-#include "mod_devicetable.h"
-#include "fb.h"
-#include "radeonfb.h"
-
-// #define DEBUG
-#include "debug.h"
-
-#ifdef _USE_VIDEL_
-#define MON_ALL -1 /* code used in VMODE_ENTRY for match on mode only */
-
-/*
- * tables that cover all(?) valid Falcon modes
- * note:
- * . 256-colour and Truecolor modes are not currently supported by the VDI
- */
-static const VMODE_ENTRY vga_init_table[] = {
- /* the entries in this table are for VGA/NTSC (i.e. VGA 60Hz) and VGA/PAL
- * (i.e. VGA 50Hz). in *this* table, each entry applies to four video modes:
- * mode, mode|VIDEL_VERTICAL, mode|VIDEL_PAL, mode|VIDEL_VERTICAL|VIDEL_PAL
- */
- { 0x0011, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020a, 0x0009, 0x0011, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0012, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x028a, 0x006b, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0013, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x029a, 0x007b, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0014, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02ac, 0x0091, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0018, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x0273, 0x0050, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0019, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x001a, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02a3, 0x007c, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x001b, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x02ab, 0x0084, 0x0096, 0x0419, 0x03ff, 0x003f, 0x003f, 0x03ff, 0x0415 },
- { 0x0092, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { 0x0098, MON_ALL, 0x00c6, 0x008d, 0x0015, 0x0273, 0x0050, 0x0096, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { 0x0099, MON_ALL, 0x0017, 0x0012, 0x0001, 0x020e, 0x000d, 0x0011, 0x0419, 0x03af, 0x008f, 0x008f, 0x03af, 0x0415 },
- { -1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }
-};
-
-/*
- * Initialise palette registers
- * This routine is also used by resolution change
- */
-void initialise_palette_registers(int16_t rez,int16_t mode)
-{
- initialise_falcon_palette(mode);
-}
-
-
-/*
- * determine regc0 based on video mode & monitor type
- */
-static int16_t determine_regc0(int16_t mode, int16_t monitor)
-{
- if (mode&VIDEL_VGA)
- return 0x0186;
-
- if (!(mode&VIDEL_COMPAT))
- return (monitor==MON_TV)?0x0183:0x0181;
-
- /* handle ST-compatible modes */
- if ((mode&(VIDEL_80COL|VIDEL_BPPMASK)) == (VIDEL_80COL|VIDEL_1BPP)) { /* 80-column, 2-colour */
- switch(monitor) {
- case MON_MONO:
- return 0x0080;
- case MON_TV:
- return 0x0183;
- default:
- return 0x0181;
- }
- }
-
- return (monitor==MON_TV)?0x0083:0x0081;
-}
-
-/*
- * determine vctl based on video mode and monitor type
- */
-static int16_t determine_vctl(int16_t mode,int16_t monitor)
-{
- int16_t vctl;
-
- if (mode&VIDEL_VGA) {
- vctl = (mode&VIDEL_80COL) ? 0x08 : 0x04;
- if (mode&VIDEL_VERTICAL)
- vctl |= 0x01;
- } else {
- vctl = (mode&VIDEL_80COL) ? 0x04 : 0x00;
- if (mode&VIDEL_VERTICAL)
- vctl |= 0x02;
- }
-
- if (!(mode&VIDEL_COMPAT))
- return vctl;
-
- switch(mode&VIDEL_BPPMASK) {
- case VIDEL_1BPP:
- if (!(mode&VIDEL_VGA) && (monitor == MON_MONO))
- vctl = 0x08;
- break;
- case VIDEL_2BPP:
- vctl = (mode&VIDEL_VGA)? 0x09 : 0x04;
- break;
- case VIDEL_4BPP:
- vctl = (mode&VIDEL_VGA)? 0x05 : 0x00;
- break;
- }
-
- return vctl;
-}
-
-
-/*
- * determine scanline width based on video mode
- */
-static int16_t determine_width(int16_t mode)
-{
- int16_t linewidth;
-
- linewidth = (mode&VIDEL_80COL) ? 40 : 20;
- linewidth <<= (mode & VIDEL_BPPMASK);
- if (mode&VIDEL_OVERSCAN)
- linewidth = linewidth * 12 / 10; /* multiply by 1.2 */
-
- return linewidth;
-}
-
-static int set_videl_vga(int16_t mode)
-{
- volatile char *videlregs = (char *)0xffff8200;
-#define videlword(n) (*(volatile uint16_t *)(videlregs+(n)))
- const VMODE_ENTRY *p;
- int16_t linewidth, monitor, vctl;
-
- monitor = vmontype();
-
- p = lookup_videl_mode(mode,monitor);/* validate mode */
- if (!p)
- return -1;
-
- videlregs[0x0a] = (mode&VIDEL_PAL) ? 2 : 0; /* video sync to 50Hz if PAL */
-
- // FIXME: vsync() can't work if the screen is initially turned off
- //vsync(); /* wait for vbl so we're not interrupted :-) */
-
- videlword(0x82) = p->hht; /* H hold timer */
- videlword(0x84) = p->hbb; /* H border begin */
- videlword(0x86) = p->hbe; /* H border end */
- videlword(0x88) = p->hdb; /* H display begin */
- videlword(0x8a) = p->hde; /* H display end */
- videlword(0x8c) = p->hss; /* H SS */
-
- videlword(0xa2) = p->vft; /* V freq timer */
- videlword(0xa4) = p->vbb; /* V border begin */
- videlword(0xa6) = p->vbe; /* V border end */
- videlword(0xa8) = p->vdb; /* V display begin */
- videlword(0xaa) = p->vde; /* V display end */
- videlword(0xac) = p->vss; /* V SS */
-
- videlregs[0x60] = 0x00; /* clear ST shift for safety */
-
- videlword(0x0e) = 0; /* offset */
-
- linewidth = determine_width(mode);
- vctl = determine_vctl(mode,monitor);
-
- videlword(0x10) = linewidth; /* scanline width */
- videlword(0xc2) = vctl; /* video control */
- videlword(0xc0) = determine_regc0(mode,monitor);
- videlword(0x66) = 0x0000; /* clear SPSHIFT */
-
- switch(mode&VIDEL_BPPMASK) { /* set SPSHIFT / ST shift */
- case VIDEL_1BPP: /* 2 colours (mono) */
- if (monitor == MON_MONO)
- videlregs[0x60] = 0x02;
- else videlword(0x66) = 0x0400;
- break;
- case VIDEL_2BPP: /* 4 colours */
- videlregs[0x60] = 0x01;
- videlword(0x10) = linewidth; /* writing to the ST shifter has */
- videlword(0xc2) = vctl; /* just overwritten these registers */
- break;
- case VIDEL_4BPP: /* 16 colours */
- /* if not ST-compatible, SPSHIFT was already set correctly above */
- if (mode&VIDEL_COMPAT)
- videlregs[0x60] = 0x00; /* else set ST shifter */
- break;
- case VIDEL_8BPP: /* 256 colours */
- videlword(0x66) = 0x0010;
- break;
- case VIDEL_TRUECOLOR: /* 65536 colours (Truecolor) */
- videlword(0x66) = 0x0100;
- break;
- }
-
- return 0;
-}
-
-int16_t current_video_mode;
-
-/* Set physical screen address */
-
-static void setphys(int32_t addr,int checkaddr)
-{
- *(volatile uint8_t *) VIDEOBASE_ADDR_HI = ((uint32_t) addr) >> 16;
- *(volatile uint8_t *) VIDEOBASE_ADDR_MID = ((uint32_t) addr) >> 8;
- *(volatile uint8_t *) VIDEOBASE_ADDR_LOW = ((uint32_t) addr);
-}
-
-/*
- * In the original TOS there used to be an early screen init,
- * before memory configuration. This is not used here, and all is
- * done at the same time from C.
- */
-
-void videl_screen_init(void)
-{
- uint32_t screen_start;
- uint16_t boot_resolution = FALCON_DEFAULT_BOOT;
- int16_t monitor_type, sync_mode;
- int16_t rez = 0; /* avoid 'may be uninitialized' warning */
-
- /* Initialize the interrupt handlers.
- * It is important to do this first because the initialization code below
- * may call vsync(), which temporarily enables the interrupts. */
-
- /* TODO: VEC_HBL = int_hbl; */
- /* TODO: VEC_VBL = int_vbl; */
-
- /*
- * first, see what we're connected to, and set the
- * resolution / video mode appropriately
- */
- monitor_type = MON_COLOR;
- xprintf("monitor_type = %d\r\n", monitor_type);
-
- /* reset VIDEL on boot-up */
- /* first set the physbase to a safe memory */
- setphys(0xd00000, 0);
-
- if (!lookup_videl_mode(boot_resolution, monitor_type)) /* mode isn't in table */
- {
- xprintf("Invalid video mode 0x%04x changed to 0x%04x\r\n",
- boot_resolution, FALCON_DEFAULT_BOOT);
- boot_resolution = FALCON_DEFAULT_BOOT; /* so pick one that is */
- }
-
- if (!VALID_VDI_BPP(boot_resolution)) /* mustn't confuse VDI */
- {
- xprintf("VDI doesn't support video mode 0x%04x, changed to 0x%04x\r\n",
- boot_resolution, FALCON_DEFAULT_BOOT);
- boot_resolution = FALCON_DEFAULT_BOOT; /* so use default */
- }
-
- vsetmode(boot_resolution);
- rez = FALCON_REZ; /* fake value indicates Falcon/Videl */
- sync_mode = (boot_resolution & VIDEL_PAL) ? 0x02 : 0x00;
- *(volatile uint8_t *) SYNCMODE = sync_mode;
-
- /*
- * next, set up the palette(s)
- */
- initialise_palette_registers(rez, boot_resolution);
- /* FIXME: sshiftmod = rez; */
-
- /* videoram is placed just below the phystop */
- screen_start = 0xd00000;
-
- /* correct physical address */
- setphys(screen_start, 1);
-}
-
-#endif /* _USE_VIDEL_ */
-
-static uint8_t mon1_EDID[40];
-static uint8_t mon2_EDID[40];
-
-static struct radeonfb_info rfb =
-{
- .mon1_EDID = mon1_EDID,
- .mon2_EDID = mon2_EDID,
-};
-
-static struct fb_var_screeninfo default_fb =
-{
- .xres = 640,
- .yres = 480,
- .xres_virtual = 640 * 2,
- .yres_virtual = 480 * 2, /* ensure we have accel offscreen space */
- .bits_per_pixel = 8,
- .grayscale = 0,
- .red = { .length = 8 },
- .green = { .length = 8 },
- .blue = { .length = 8 },
- .activate = FB_ACTIVATE_NOW,
- .height = -1,
- .width = -1,
- .pixclock = 39721,
- .left_margin = 40,
- .right_margin = 24,
- .upper_margin = 32,
- .lower_margin = 11,
- .hsync_len = 96,
- .vsync_len = 2,
- .vmode = FB_VMODE_NONINTERLACED,
- .activate = FB_ACTIVATE_ALL | FB_ACTIVATE_FORCE | FB_ACTIVATE_NOW
-};
-
-static struct fb_info fb =
-{
- .par = &rfb,
-
- .fix =
- {
- .id = "ATI Radeon",
- .smem_start = 0x80000000,
- .smem_len = 0x00800000,
- .type = FB_TYPE_PLANES,
- .type_aux = 0,
- .visual = FB_VISUAL_PSEUDOCOLOR,
- .xpanstep = 1,
- .ypanstep = 1,
- .ywrapstep = 1,
- .line_length = 640,
- .mmio_len = 0x88000000,
- .accel = 0x4000,
- .reserved = { 0, 0, 0 },
- },
-};
-
-struct fb_info *info_fb = &fb;
-
-const char monitor_layout[1024] = "\0";
-int16_t ignore_edid;
-
-struct mode_option resolution =
-{
- .used = 0,
- .width = 640,
- .height = 480,
- .bpp = 8,
- .freq = 60,
- .flags = 0,
-};
-
-int16_t force_measure_pll = 0;
-
-void install_vbl_timer(void *func, int32_t remove)
-{
- dbg("not implemented\r\n");
-}
-
-/*
- * detect and initialise PCI graphics cards
- */
-void video_init(void)
-{
- /*
- * detect PCI video card
- */
-
- int index = 0;
- int32_t handle;
- struct pci_device_id *board;
- int32_t id;
- bool radeon_found = false;
-
- do
- {
- /*
- * scan PCI bus for graphics cards
- */
- handle = pci_find_classcode(PCI_BASE_CLASS_DISPLAY | PCI_FIND_BASE_CLASS, index);
- dbg("handle=%d\r\n", handle);
- if (handle > 0) /* found a display device */
- {
- dbg("handle = 0x%x\r\n", handle);
-
- id = swpl(pci_read_config_longword(handle, PCIIDR)); /* get vendor + device id */
- dbg("PCIIDR=0x%x\r\n", id);
-
- board = &radeonfb_pci_table[0];
-
- do
- {
- /* check it against elements of table */
- dbg("check %x %x against %08x\r\n", board->device, board->vendor, id);
- if ((board->device == (id >> 16)) && (board->vendor == (id & 0xffff)))
- {
- radeon_found = true;
-
- dbg("matched\r\n");
-
- xprintf("registering RADEON card with PCI handle 0x%02x\r\n", handle);
-
- if (radeonfb_pci_register(handle, board) >= 0)
- {
- info_fb->fbops->fb_check_modes(info_fb, &resolution);
-
-
- fb_set_var(info_fb, &default_fb);
- inf("RADEON video card found and registered\r\n");
- }
- else
- {
- err("failed to register RADEON PCI video card\r\n");
- }
- return;
- }
- board++;
- } while (board->vendor);
- }
- index++;
- } while (handle > 0);
- inf("RADEON video card %sfound and %sregistered\r\n",
- (radeon_found ? "" : "not "), (radeon_found ? "" : "not "));
-}
-
-
diff --git a/BaS_gcc/x86emu/x86biosemu.c b/BaS_gcc/x86emu/x86biosemu.c
deleted file mode 100644
index fd0fc87..0000000
--- a/BaS_gcc/x86emu/x86biosemu.c
+++ /dev/null
@@ -1,436 +0,0 @@
-#define RINFO_ONLY
-#include "radeonfb.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "util.h"
-#include "driver_mem.h"
-#include "x86emu.h"
-#include "x86emu_regs.h"
-#include "pci.h"
-#include "pci_ids.h"
-#include "x86pcibios.h"
-
-// #define DEBUG
-#include "debug.h"
-
-struct rom_header
-{
- uint16_t signature;
- uint8_t size;
- uint8_t init[3];
- uint8_t reserved[0x12];
- uint16_t data;
-};
-
-struct pci_data
-{
- uint32_t signature;
- uint16_t vendor;
- uint16_t device;
- uint16_t reserved_1;
- uint16_t dlen;
- uint8_t drevision;
- uint8_t class_lo;
- uint16_t class_hi;
- uint16_t ilen;
- uint16_t irevision;
- uint8_t type;
- uint8_t indicator;
- uint16_t reserved_2;
-};
-
-static struct radeonfb_info *rinfo_biosemu;
-uint16_t offset_port;
-uint32_t offset_mem;
-static uint32_t offset_io;
-static uint32_t config_address_reg;
-
-
-/* general software interrupt handler */
-static uint32_t getIntVect(struct X86EMU *emu, int num)
-{
- return MEM_RW(num << 2) + (MEM_RW((num << 2) + 2) << 4);
-}
-
-/* FixME: There is already a push_word() in the emulator */
-static void pushw(struct X86EMU *emu, uint16_t val)
-{
- emu->x86.R_ESP -= 2;
- MEM_WW(((uint32_t) emu->x86.R_SS << 4) + emu->x86.R_SP, val);
-}
-
-static int run_bios_int(struct X86EMU *emu, int num)
-{
- uint32_t eflags;
-
- eflags = emu->x86.R_EFLG;
- pushw(emu, eflags);
- pushw(emu, emu->x86.R_CS);
- pushw(emu, emu->x86.R_IP);
- emu->x86.R_CS = MEM_RW((num << 2) + 2);
- emu->x86.R_IP = MEM_RW(num << 2);
-
- return 1;
-}
-
-static uint8_t inb(struct X86EMU *emu, uint16_t port)
-{
- uint8_t val = 0;
-
- if ((port >= offset_port) && (port <= offset_port + 0xff))
- {
- val = * (volatile uint8_t *) (offset_io + (uint32_t) port);
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-
- return val;
-}
-
-static uint16_t inw(struct X86EMU *emu, uint16_t port)
-{
- uint16_t val = 0;
-
- if ((port >= offset_port) && (port <= offset_port + 0xFF))
- {
- val = swpw(*(volatile uint16_t *)(offset_io + (uint32_t) port));
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-
- return val;
-}
-
-#define PC_PCI_INDEX_PORT 0xcf8
-#define PC_PCI_DATA_PORT 0xcfc
-
-static uint32_t inl(struct X86EMU *emu, uint16_t port)
-{
- uint32_t val = 0;
-
- if ((port >= offset_port) && (port <= offset_port + 0xFF))
- {
- val = swpl(*(volatile uint32_t *)(offset_io + (uint32_t) port));
- }
- else if (port == PC_PCI_INDEX_PORT)
- {
- val = config_address_reg;
- }
- else if ((port == PC_PCI_DATA_PORT) && ((config_address_reg & 0x80000000) != 0))
- {
- switch (config_address_reg & 0xFC)
- {
- case PCIIDR:
- val = ((uint32_t) rinfo_biosemu->chipset << 16) + PCI_VENDOR_ID_ATI;
- break;
-
- case PCIBAR1:
- val = (uint32_t) offset_port + 1;
- break;
-
- default:
- val = pci_read_config_longword(rinfo_biosemu->handle, config_address_reg & 0xFC);
- break;
- }
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-
- return val;
-}
-
-static void outb(struct X86EMU *emu, uint16_t port, uint8_t val)
-{
- if ((port >= offset_port) && (port <= offset_port + 0xFF))
- {
- *(volatile uint8_t *)(offset_io + (uint32_t) port) = val;
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-}
-
-static void outw(struct X86EMU *emu, uint16_t port, uint16_t val)
-{
- if ((port >= offset_port) && (port <= offset_port + 0xFF))
- {
- *(volatile uint16_t *)(offset_io + (uint32_t) port) = swpw(val);
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-}
-
-static void outl(struct X86EMU *emu, uint16_t port, uint32_t val)
-{
- if ((port >= offset_port) && (port <= offset_port + 0xFF))
- {
- *(volatile uint32_t *)(offset_io + (uint32_t) port) = swpl(val);
- }
- else if (port == PC_PCI_INDEX_PORT)
- {
- config_address_reg = val;
- }
- else if ((port == PC_PCI_DATA_PORT) && ((config_address_reg & 0x80000000) !=0))
- {
- dbg("(0x%x, 0x%x) to PCI config space\r\n", port, val);
- if ((config_address_reg & 0xFC) == PCIBAR1)
- {
- offset_port = (uint16_t) val & 0xFFFC;
- }
- else
- {
- pci_write_config_longword(rinfo_biosemu->handle, config_address_reg & 0xFC, val);
- }
- }
- else
- dbg("illegal port 0x%x\r\n", port);
-}
-
-/*
- * Interrupt multiplexer
- */
-
-static void do_int(struct X86EMU *emu, int num)
-{
- int ret = 0;
-
- switch (num)
- {
- case 0x10:
- /* video interrupt */
- /* fall through intentional */
-
- case 0x42:
- /* video interrupt */
- /* fall through intentional */
-
- case 0x6d:
- /* VGA internal interrupt */
-
- dbg("int %02xh, AH=0x%02x, AL=0x%02x\r\n", num,
- emu->x86.register_a.I8_reg.h_reg,
- emu->x86.register_a.I8_reg.l_reg);
-
- if (emu->x86.register_a.I8_reg.h_reg == 0x13) /* VGA write string */
- {
- int num_chars = emu->x86.register_c.I16_reg.x_reg;
- int seg = emu->x86.register_es;
- int off = emu->x86.register_bp.I16_reg.x_reg;
- int str = (seg << 4) + off;
- int i;
-
- dbg("string to output at 0x%04x:0x%04x length=0x%04x\r\n", seg, off, num_chars);
-
- /*
- * output VGA BIOS version string
- */
- for (i = 0; i < num_chars; i++)
- xprintf("%c", * (char *)(BIOS_MEM + str + i));
- }
-
- if (getIntVect(emu, num) == 0x0000)
- err("uninitialised int vector\r\n");
-
- if (getIntVect(emu, num) == 0xFF065)
- {
- ret = 1;
- }
- break;
-
- case 0x15:
- ret = 1;
- break;
-
- case 0x16:
- ret = 0;
- break;
-
- case 0x1a:
- ret = x86_pcibios_handler(emu);
- ret = 1;
- break;
-
- case 0xe6:
- ret = 0;
- break;
-
- default:
- dbg("unhandled interrupt 0x%x\r\n", num);
- break;
- }
-
- if (!ret)
- {
- ret = run_bios_int(emu, num);
- }
-}
-
-static int setup_system_bios(void *base_addr)
-{
- char *base = (char *) base_addr;
- int i;
-
- /*
- * we trap the "industry standard entry points" to the BIOS
- * and all other locations by filling them with "hlt"
- * TODO: implement hlt-handler for these
- */
-
- for (i = 0; i < SIZE_EMU + 4; base[i++] = 0xf4);
-
- return 1;
-}
-
-void run_bios(struct radeonfb_info *rinfo)
-{
- long i;
- long j;
- unsigned char *ptr;
- struct rom_header *rom_header;
- struct pci_data *rom_data;
- unsigned long rom_size = 0;
- unsigned long image_size = 0;
- unsigned long addr;
- unsigned short initialcs;
- unsigned short initialip;
- unsigned short devfn = (unsigned short) rinfo->handle;
-
- struct X86EMU emu = { 0 };
-
- X86EMU_init_default(&emu);
- emu.emu_inb = inb;
- emu.emu_inw = inw;
- emu.emu_inl = inl;
-
- emu.emu_outb = outb;
- emu.emu_outw = outw;
- emu.emu_outl = outl;
-
-
- if ((rinfo->mmio_base == NULL) || (rinfo->io_base == NULL))
- {
- dbg("rinfo->mmio_base = %p, rinfo->io_base = %p\r\n", rinfo->mmio_base, rinfo->io_base);
- return;
- }
-
- rinfo_biosemu = rinfo;
- config_address_reg = 0;
- offset_port = 0x300;
- offset_io = (uint32_t) rinfo->io_base - (uint32_t) offset_port;
- offset_mem = (uint32_t) rinfo->fb_base - 0xa0000;
-
- rom_header = NULL;
-
- do
- {
- rom_header = (struct rom_header *) ((uintptr_t) rom_header + image_size); // get next image
- rom_data = (struct pci_data *) ((uintptr_t) rom_header + (uintptr_t) BIOS_IN16((long) &rom_header->data));
- image_size = (size_t) BIOS_IN16((long) &rom_data->ilen) * 512;
- } while ((BIOS_IN8((long) &rom_data->type) != 0) && (BIOS_IN8((long) &rom_data->indicator) != 0)); // make sure we got x86 version
-
- if (BIOS_IN8((long) &rom_data->type) != 0)
- {
- dbg("unknown ROM data type = 0x%x\r\n", BIOS_IN8((long) &rom_data->type));
- return;
- }
-
- rom_size = (size_t) BIOS_IN8((uintptr_t) &rom_header->size) * 512;
- dbg("ROM size = 0x%lx\r\n", rom_size);
-
- if (PCI_CLASS_DISPLAY_VGA == BIOS_IN16((long) &rom_data->class_hi))
- {
- memset((char *) BIOS_MEM, 0, SIZE_EMU);
- setup_system_bios((char *) BIOS_MEM);
-
- dbg("Copy VGA ROM Image from %p to %p (0x%lx bytes)\r\n",
- (uintptr_t) rinfo->bios_seg + (uintptr_t) rom_header,
- BIOS_MEM + PCI_VGA_RAM_IMAGE_START, rom_size);
- {
- long bytes_align = (uintptr_t) rom_header & 3;
-
- ptr = (uint8_t *) BIOS_MEM;
- i = (long) rom_header;
- j = PCI_VGA_RAM_IMAGE_START;
-
- if (bytes_align)
- {
- for (; i < 4 - bytes_align; ptr[j++] = BIOS_IN8(i++));
- }
-
- for (; i < (long) rom_header + rom_size; i += 4, j += 4)
- {
- *((uintptr_t *) &ptr[j]) = swpl(BIOS_IN32(i));
- }
- }
- addr = PCI_VGA_RAM_IMAGE_START;
- }
- else
- {
- memset((uint8_t *) BIOS_MEM, 0, SIZE_EMU);
- setup_system_bios((char *) BIOS_MEM);
-
- dbg("Copy non-VGA ROM Image from %p to %p (0x%lx bytes)\r\n",
- (uintptr_t) rinfo->bios_seg + (uintptr_t) rom_header,
- BIOS_MEM + PCI_RAM_IMAGE_START,
- rom_size);
- ptr = (uint8_t *) BIOS_MEM;
- for (i = (long) rom_header, j = PCI_RAM_IMAGE_START; i < (long) rom_header + rom_size; ptr[j++] = BIOS_IN8(i++));
- addr = PCI_RAM_IMAGE_START;
- }
-
- initialcs = (addr & 0xf0000) >> 4;
- initialip = (addr + 3) & 0xffff;
- dbg("initial CS=0x%x, initial IP=0x%x\r\n", initialcs, initialip);
-
- /*
- * set emulator memory
- */
- emu.mem_base = (void *) BIOS_MEM;
- emu.mem_size = SIZE_EMU;
-
- for (i = 0; i < 256; i++)
- {
- emu._X86EMU_intrTab[i] = do_int;
- }
-
- char *date = "01/01/99";
-
- for (i = 0; date[i]; i++)
- {
- emu.emu_wrb(&emu, 0xffff5 + i, date[i]);
- }
- emu.emu_wrb(&emu, 0xffff7, '/');
- emu.emu_wrb(&emu, 0xffffa, '/');
-
- /* cpu setup */
- emu.x86.R_AX = devfn ? devfn : 0xff;
- emu.x86.R_DX = 0x80;
- emu.x86.R_IP = initialip;
- emu.x86.R_CS = initialcs;
-
- /* Initialize stack and data segment */
- emu.x86.R_SS = initialcs;
- emu.x86.R_SP = 0xfffe;
- emu.x86.R_DS = 0x0040;
- emu.x86.R_ES = 0x0000;
-
- /*
- * We need a sane way to return from bios
- * execution. A hlt instruction and a pointer
- * to it, both kept on the stack, will do.
- */
- pushw(&emu, 0xf4f4); /* hlt; hlt */
-
- pushw(&emu, emu.x86.R_SS);
- pushw(&emu, emu.x86.R_SP + 2);
-
- dbg("X86EMU entering emulator\r\n");
-
- X86EMU_exec(&emu);
-
- dbg("X86EMU halted\r\n");
-
- /*
- * clear emulator memory once we are finished
- */
- memset((char *) BIOS_MEM, 0, SIZE_EMU);
-}
diff --git a/BaS_gcc/x86emu/x86emu.c b/BaS_gcc/x86emu/x86emu.c
deleted file mode 100644
index acc2cf3..0000000
--- a/BaS_gcc/x86emu/x86emu.c
+++ /dev/null
@@ -1,8164 +0,0 @@
-/* $NetBSD: x86emu.c,v 1.10 2014/08/04 21:41:44 joerg Exp $ */
-
-/****************************************************************************
-*
-* Realmode X86 Emulator Library
-*
-* Copyright (C) 1996-1999 SciTech Software, Inc.
-* Copyright (C) David Mosberger-Tang
-* Copyright (C) 1999 Egbert Eich
-* Copyright (C) 2007 Joerg Sonnenberger
-*
-* ========================================================================
-*
-* Permission to use, copy, modify, distribute, and sell this software and
-* its documentation for any purpose is hereby granted without fee,
-* provided that the above copyright notice appear in all copies and that
-* both that copyright notice and this permission notice appear in
-* supporting documentation, and that the name of the authors not be used
-* in advertising or publicity pertaining to distribution of the software
-* without specific, written prior permission. The authors makes no
-* representations about the suitability of this software for any purpose.
-* It is provided "as is" without express or implied warranty.
-*
-* THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-* EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
-* USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-* PERFORMANCE OF THIS SOFTWARE.
-*
-****************************************************************************/
-
-#include
-#include
-#include
-#include "setjmp.h"
-#include "debug.h"
-
-static void x86emu_intr_raise (struct X86EMU *, uint8_t type);
-
-static void X86EMU_exec_one_byte(struct X86EMU *);
-static void X86EMU_exec_two_byte(struct X86EMU *);
-
-static void fetch_decode_modrm (struct X86EMU *);
-static uint8_t fetch_byte_imm (struct X86EMU *);
-static uint16_t fetch_word_imm (struct X86EMU *);
-static uint32_t fetch_long_imm (struct X86EMU *);
-static uint8_t fetch_data_byte (struct X86EMU *, uint32_t offset);
-static uint8_t fetch_byte (struct X86EMU *, uint32_t segment, uint32_t offset);
-static uint16_t fetch_data_word (struct X86EMU *, uint32_t offset);
-static uint16_t fetch_word (struct X86EMU *, uint32_t segment, uint32_t offset);
-static uint32_t fetch_data_long (struct X86EMU *, uint32_t offset);
-static uint32_t fetch_long (struct X86EMU *, uint32_t segment, uint32_t offset);
-static void store_data_byte (struct X86EMU *, uint32_t offset, uint8_t val);
-static void store_byte (struct X86EMU *, uint32_t segment, uint32_t offset, uint8_t val);
-static void store_data_word (struct X86EMU *, uint32_t offset, uint16_t val);
-static void store_word (struct X86EMU *, uint32_t segment, uint32_t offset, uint16_t val);
-static void store_data_long (struct X86EMU *, uint32_t offset, uint32_t val);
-static void store_long (struct X86EMU *, uint32_t segment, uint32_t offset, uint32_t val);
-static uint8_t *decode_rl_byte_register(struct X86EMU *);
-static uint16_t *decode_rl_word_register(struct X86EMU *);
-static uint32_t *decode_rl_long_register(struct X86EMU *);
-static uint8_t *decode_rh_byte_register(struct X86EMU *);
-static uint16_t *decode_rh_word_register(struct X86EMU *);
-static uint32_t *decode_rh_long_register(struct X86EMU *);
-static uint16_t *decode_rh_seg_register(struct X86EMU *);
-static uint32_t decode_rl_address(struct X86EMU *);
-
-static uint8_t decode_and_fetch_byte(struct X86EMU *);
-static uint16_t decode_and_fetch_word(struct X86EMU *);
-static uint32_t decode_and_fetch_long(struct X86EMU *);
-
-static uint8_t decode_and_fetch_byte_imm8(struct X86EMU *, uint8_t *);
-static uint16_t decode_and_fetch_word_imm8(struct X86EMU *, uint8_t *);
-static uint32_t decode_and_fetch_long_imm8(struct X86EMU *, uint8_t *);
-
-static uint16_t decode_and_fetch_word_disp(struct X86EMU *, int16_t);
-static uint32_t decode_and_fetch_long_disp(struct X86EMU *, int16_t);
-
-static void write_back_byte(struct X86EMU *, uint8_t);
-static void write_back_word(struct X86EMU *, uint16_t);
-static void write_back_long(struct X86EMU *, uint32_t);
-
-static uint16_t aaa_word (struct X86EMU *, uint16_t d);
-static uint16_t aas_word (struct X86EMU *, uint16_t d);
-static uint16_t aad_word (struct X86EMU *, uint16_t d);
-static uint16_t aam_word (struct X86EMU *, uint8_t d);
-static uint8_t adc_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t adc_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t adc_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t add_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t add_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t add_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t and_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t and_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t and_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t cmp_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t cmp_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t cmp_long (struct X86EMU *, uint32_t d, uint32_t s);
-static void cmp_byte_no_return (struct X86EMU *, uint8_t d, uint8_t s);
-static void cmp_word_no_return (struct X86EMU *, uint16_t d, uint16_t s);
-static void cmp_long_no_return (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t daa_byte (struct X86EMU *, uint8_t d);
-static uint8_t das_byte (struct X86EMU *, uint8_t d);
-static uint8_t dec_byte (struct X86EMU *, uint8_t d);
-static uint16_t dec_word (struct X86EMU *, uint16_t d);
-static uint32_t dec_long (struct X86EMU *, uint32_t d);
-static uint8_t inc_byte (struct X86EMU *, uint8_t d);
-static uint16_t inc_word (struct X86EMU *, uint16_t d);
-static uint32_t inc_long (struct X86EMU *, uint32_t d);
-static uint8_t or_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t or_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t or_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t neg_byte (struct X86EMU *, uint8_t s);
-static uint16_t neg_word (struct X86EMU *, uint16_t s);
-static uint32_t neg_long (struct X86EMU *, uint32_t s);
-static uint8_t rcl_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t rcl_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t rcl_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t rcr_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t rcr_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t rcr_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t rol_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t rol_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t rol_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t ror_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t ror_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t ror_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t shl_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t shl_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t shl_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t shr_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t shr_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t shr_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint8_t sar_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t sar_word (struct X86EMU *, uint16_t d, uint8_t s);
-static uint32_t sar_long (struct X86EMU *, uint32_t d, uint8_t s);
-static uint16_t shld_word (struct X86EMU *, uint16_t d, uint16_t fill, uint8_t s);
-static uint32_t shld_long (struct X86EMU *, uint32_t d, uint32_t fill, uint8_t s);
-static uint16_t shrd_word (struct X86EMU *, uint16_t d, uint16_t fill, uint8_t s);
-static uint32_t shrd_long (struct X86EMU *, uint32_t d, uint32_t fill, uint8_t s);
-static uint8_t sbb_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t sbb_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t sbb_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t sub_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t sub_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t sub_long (struct X86EMU *, uint32_t d, uint32_t s);
-static void test_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static void test_word (struct X86EMU *, uint16_t d, uint16_t s);
-static void test_long (struct X86EMU *, uint32_t d, uint32_t s);
-static uint8_t xor_byte (struct X86EMU *, uint8_t d, uint8_t s);
-static uint16_t xor_word (struct X86EMU *, uint16_t d, uint16_t s);
-static uint32_t xor_long (struct X86EMU *, uint32_t d, uint32_t s);
-static void imul_byte (struct X86EMU *, uint8_t s);
-static void imul_word (struct X86EMU *, uint16_t s);
-static void imul_long (struct X86EMU *, uint32_t s);
-static void mul_byte (struct X86EMU *, uint8_t s);
-static void mul_word (struct X86EMU *, uint16_t s);
-static void mul_long (struct X86EMU *, uint32_t s);
-static void idiv_byte (struct X86EMU *, uint8_t s);
-static void idiv_word (struct X86EMU *, uint16_t s);
-static void idiv_long (struct X86EMU *, uint32_t s);
-static void div_byte (struct X86EMU *, uint8_t s);
-static void div_word (struct X86EMU *, uint16_t s);
-static void div_long (struct X86EMU *, uint32_t s);
-static void ins (struct X86EMU *, int size);
-static void outs (struct X86EMU *, int size);
-static void push_word (struct X86EMU *, uint16_t w);
-static void push_long (struct X86EMU *, uint32_t w);
-static uint16_t pop_word (struct X86EMU *);
-static uint32_t pop_long (struct X86EMU *);
-
-
-/****************************************************************************
-REMARKS:
-Handles any pending asychronous interrupts.
-****************************************************************************/
-static void x86emu_intr_dispatch(struct X86EMU *emu, uint8_t intno)
-{
- if (emu->_X86EMU_intrTab[intno])
- {
- (*emu->_X86EMU_intrTab[intno]) (emu, intno);
- }
- else
- {
- push_word(emu, (uint16_t) emu->x86.R_FLG);
- CLEAR_FLAG(F_IF);
- CLEAR_FLAG(F_TF);
- push_word(emu, emu->x86.R_CS);
- emu->x86.R_CS = fetch_word(emu, 0, intno * 4 + 2);
- push_word(emu, emu->x86.R_IP);
- emu->x86.R_IP = fetch_word(emu, 0, intno * 4);
- }
-}
-
-static void x86emu_intr_handle(struct X86EMU *emu)
-{
- uint8_t intno;
-
- if (emu->x86.intr & INTR_SYNCH)
- {
- intno = emu->x86.intno;
- emu->x86.intr = 0;
- x86emu_intr_dispatch(emu, intno);
- }
-}
-
-/****************************************************************************
-PARAMETERS:
-intrnum - Interrupt number to raise
-
-REMARKS:
-Raise the specified interrupt to be handled before the execution of the
-next instruction.
-****************************************************************************/
-void x86emu_intr_raise(struct X86EMU *emu, uint8_t intrnum)
-{
- emu->x86.intno = intrnum;
- emu->x86.intr |= INTR_SYNCH;
-}
-
-/****************************************************************************
-REMARKS:
-Main execution loop for the emulator. We return from here when the system
-halts, which is normally caused by a stack fault when we return from the
-original real mode call.
-****************************************************************************/
-void X86EMU_exec(struct X86EMU *emu)
-{
- emu->x86.intr = 0;
-
- if (setjmp(emu->exec_state))
- return;
-
- for (;;) {
- if (emu->x86.intr) {
- if (((emu->x86.intr & INTR_SYNCH) && (emu->x86.intno == 0 || emu->x86.intno == 2)) ||
- !ACCESS_FLAG(F_IF)) {
- x86emu_intr_handle(emu);
- }
- }
- if (emu->x86.R_CS == 0 && emu->x86.R_IP == 0)
- return;
- X86EMU_exec_one_byte(emu);
- ++emu->cur_cycles;
- }
-}
-
-void
-X86EMU_exec_call(struct X86EMU *emu, uint16_t seg, uint16_t off)
-{
- push_word(emu, 0);
- push_word(emu, 0);
- emu->x86.R_CS = seg;
- emu->x86.R_IP = off;
-
- X86EMU_exec(emu);
-}
-
-void
-X86EMU_exec_intr(struct X86EMU *emu, uint8_t intr)
-{
- push_word(emu, emu->x86.R_FLG);
- CLEAR_FLAG(F_IF);
- CLEAR_FLAG(F_TF);
- push_word(emu, 0);
- push_word(emu, 0);
- emu->x86.R_CS = (*emu->emu_rdw)(emu, intr * 4 + 2);
- emu->x86.R_IP = (*emu->emu_rdw)(emu, intr * 4);
- emu->x86.intr = 0;
-
- X86EMU_exec(emu);
-}
-/****************************************************************************
-REMARKS:
-Halts the system by setting the halted system flag.
-****************************************************************************/
-void
-X86EMU_halt_sys(struct X86EMU *emu)
-{
- dbg("\r\n");
-
-#ifdef _KERNEL
- longjmp(&emu->exec_state);
-#else
- longjmp(emu->exec_state, 1);
-#endif
-}
-/****************************************************************************
-PARAMETERS:
-mod - Mod value from decoded byte
-regh - Reg h value from decoded byte
-regl - Reg l value from decoded byte
-
-REMARKS:
-Raise the specified interrupt to be handled before the execution of the
-next instruction.
-
-NOTE: Do not inline this function, as (*emu->emu_rdb) is already inline!
-****************************************************************************/
-static void
-fetch_decode_modrm(struct X86EMU *emu)
-{
- int fetched;
-
- fetched = fetch_byte_imm(emu);
- emu->cur_mod = (fetched >> 6) & 0x03;
- emu->cur_rh = (fetched >> 3) & 0x07;
- emu->cur_rl = (fetched >> 0) & 0x07;
-}
-/****************************************************************************
-RETURNS:
-Immediate byte value read from instruction queue
-
-REMARKS:
-This function returns the immediate byte from the instruction queue, and
-moves the instruction pointer to the next value.
-
-NOTE: Do not inline this function, as (*emu->emu_rdb) is already inline!
-****************************************************************************/
-static uint8_t
-fetch_byte_imm(struct X86EMU *emu)
-{
- uint8_t fetched;
-
- fetched = fetch_byte(emu, emu->x86.R_CS, emu->x86.R_IP);
- emu->x86.R_IP++;
- return fetched;
-}
-/****************************************************************************
-RETURNS:
-Immediate word value read from instruction queue
-
-REMARKS:
-This function returns the immediate byte from the instruction queue, and
-moves the instruction pointer to the next value.
-
-NOTE: Do not inline this function, as (*emu->emu_rdw) is already inline!
-****************************************************************************/
-static uint16_t
-fetch_word_imm(struct X86EMU *emu)
-{
- uint16_t fetched;
-
- fetched = fetch_word(emu, emu->x86.R_CS, emu->x86.R_IP);
- emu->x86.R_IP += 2;
- return fetched;
-}
-/****************************************************************************
-RETURNS:
-Immediate long value read from instruction queue
-
-REMARKS:
-This function returns the immediate byte from the instruction queue, and
-moves the instruction pointer to the next value.
-
-NOTE: Do not inline this function, as (*emu->emu_rdw) is already inline!
-****************************************************************************/
-static uint32_t
-fetch_long_imm(struct X86EMU *emu)
-{
- uint32_t fetched;
-
- fetched = fetch_long(emu, emu->x86.R_CS, emu->x86.R_IP);
- emu->x86.R_IP += 4;
- return fetched;
-}
-/****************************************************************************
-RETURNS:
-Value of the default data segment
-
-REMARKS:
-Inline function that returns the default data segment for the current
-instruction.
-
-On the x86 processor, the default segment is not always DS if there is
-no segment override. Address modes such as -3[BP] or 10[BP+SI] all refer to
-addresses relative to SS (ie: on the stack). So, at the minimum, all
-decodings of addressing modes would have to set/clear a bit describing
-whether the access is relative to DS or SS. That is the function of the
-cpu-state-varible emu->x86.mode. There are several potential states:
-
- repe prefix seen (handled elsewhere)
- repne prefix seen (ditto)
-
- cs segment override
- ds segment override
- es segment override
- fs segment override
- gs segment override
- ss segment override
-
- ds/ss select (in absense of override)
-
-Each of the above 7 items are handled with a bit in the mode field.
-****************************************************************************/
-static uint32_t
-get_data_segment(struct X86EMU *emu)
-{
- switch (emu->x86.mode & SYSMODE_SEGMASK) {
- case 0: /* default case: use ds register */
- case SYSMODE_SEGOVR_DS:
- case SYSMODE_SEGOVR_DS | SYSMODE_SEG_DS_SS:
- return emu->x86.R_DS;
- case SYSMODE_SEG_DS_SS:/* non-overridden, use ss register */
- return emu->x86.R_SS;
- case SYSMODE_SEGOVR_CS:
- case SYSMODE_SEGOVR_CS | SYSMODE_SEG_DS_SS:
- return emu->x86.R_CS;
- case SYSMODE_SEGOVR_ES:
- case SYSMODE_SEGOVR_ES | SYSMODE_SEG_DS_SS:
- return emu->x86.R_ES;
- case SYSMODE_SEGOVR_FS:
- case SYSMODE_SEGOVR_FS | SYSMODE_SEG_DS_SS:
- return emu->x86.R_FS;
- case SYSMODE_SEGOVR_GS:
- case SYSMODE_SEGOVR_GS | SYSMODE_SEG_DS_SS:
- return emu->x86.R_GS;
- case SYSMODE_SEGOVR_SS:
- case SYSMODE_SEGOVR_SS | SYSMODE_SEG_DS_SS:
- return emu->x86.R_SS;
- }
- dbg("unexpected SYSMODE_SEGMASK. Halting.\r\n", emu->x86.mode & SYSMODE_SEGMASK);
- X86EMU_halt_sys(emu);
- return 0L;
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to load data from
-
-RETURNS:
-Byte value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint8_t
-fetch_data_byte(struct X86EMU *emu, uint32_t offset)
-{
- return fetch_byte(emu, get_data_segment(emu), offset);
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to load data from
-
-RETURNS:
-Word value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint16_t
-fetch_data_word(struct X86EMU *emu, uint32_t offset)
-{
- return fetch_word(emu, get_data_segment(emu), offset);
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to load data from
-
-RETURNS:
-Long value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint32_t
-fetch_data_long(struct X86EMU *emu, uint32_t offset)
-{
- return fetch_long(emu, get_data_segment(emu), offset);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to load data from
-offset - Offset to load data from
-
-RETURNS:
-Byte value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint8_t
-fetch_byte(struct X86EMU *emu, uint32_t segment, uint32_t offset)
-{
- return (*emu->emu_rdb) (emu, ((uint32_t) segment << 4) + offset);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to load data from
-offset - Offset to load data from
-
-RETURNS:
-Word value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint16_t
-fetch_word(struct X86EMU *emu, uint32_t segment, uint32_t offset)
-{
- return (*emu->emu_rdw) (emu, ((uint32_t) segment << 4) + offset);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to load data from
-offset - Offset to load data from
-
-RETURNS:
-Long value read from the absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint32_t
-fetch_long(struct X86EMU *emu, uint32_t segment, uint32_t offset)
-{
- return (*emu->emu_rdl) (emu, ((uint32_t) segment << 4) + offset);
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a word value to an segmented memory location. The segment used is
-the current 'default' segment, which may have been overridden.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_data_byte(struct X86EMU *emu, uint32_t offset, uint8_t val)
-{
- store_byte(emu, get_data_segment(emu), offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a word value to an segmented memory location. The segment used is
-the current 'default' segment, which may have been overridden.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_data_word(struct X86EMU *emu, uint32_t offset, uint16_t val)
-{
- store_word(emu, get_data_segment(emu), offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a long value to an segmented memory location. The segment used is
-the current 'default' segment, which may have been overridden.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_data_long(struct X86EMU *emu, uint32_t offset, uint32_t val)
-{
- store_long(emu, get_data_segment(emu), offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to store data at
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a byte value to an absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_byte(struct X86EMU *emu, uint32_t segment, uint32_t offset, uint8_t val)
-{
- (*emu->emu_wrb) (emu, ((uint32_t) segment << 4) + offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to store data at
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a word value to an absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_word(struct X86EMU *emu, uint32_t segment, uint32_t offset, uint16_t val)
-{
- (*emu->emu_wrw) (emu, ((uint32_t) segment << 4) + offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-segment - Segment to store data at
-offset - Offset to store data at
-val - Value to store
-
-REMARKS:
-Writes a long value to an absolute memory location.
-
-NOTE: Do not inline this function as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-store_long(struct X86EMU *emu, uint32_t segment, uint32_t offset, uint32_t val)
-{
- (*emu->emu_wrl) (emu, ((uint32_t) segment << 4) + offset, val);
-}
-/****************************************************************************
-PARAMETERS:
-reg - Register to decode
-
-RETURNS:
-Pointer to the appropriate register
-
-REMARKS:
-Return a pointer to the register given by the R/RM field of the
-modrm byte, for byte operands. Also enables the decoding of instructions.
-****************************************************************************/
-static uint8_t *
-decode_rm_byte_register(struct X86EMU *emu, int reg)
-{
- switch (reg) {
- case 0:
- return &emu->x86.R_AL;
- case 1:
- return &emu->x86.R_CL;
- case 2:
- return &emu->x86.R_DL;
- case 3:
- return &emu->x86.R_BL;
- case 4:
- return &emu->x86.R_AH;
- case 5:
- return &emu->x86.R_CH;
- case 6:
- return &emu->x86.R_DH;
- case 7:
- return &emu->x86.R_BH;
- default:
- dbg("unexpected register %d\r\n", reg);
- X86EMU_halt_sys(emu);
- }
- return 0L;
-}
-
-static uint8_t *
-decode_rl_byte_register(struct X86EMU *emu)
-{
- return decode_rm_byte_register(emu, emu->cur_rl);
-}
-
-static uint8_t *
-decode_rh_byte_register(struct X86EMU *emu)
-{
- return decode_rm_byte_register(emu, emu->cur_rh);
-}
-/****************************************************************************
-PARAMETERS:
-reg - Register to decode
-
-RETURNS:
-Pointer to the appropriate register
-
-REMARKS:
-Return a pointer to the register given by the R/RM field of the
-modrm byte, for word operands. Also enables the decoding of instructions.
-****************************************************************************/
-static uint16_t *
-decode_rm_word_register(struct X86EMU *emu, int reg)
-{
- switch (reg) {
- case 0:
- return &emu->x86.R_AX;
- case 1:
- return &emu->x86.R_CX;
- case 2:
- return &emu->x86.R_DX;
- case 3:
- return &emu->x86.R_BX;
- case 4:
- return &emu->x86.R_SP;
- case 5:
- return &emu->x86.R_BP;
- case 6:
- return &emu->x86.R_SI;
- case 7:
- return &emu->x86.R_DI;
- default:
- dbg("unexpected register %d\r\n", reg);
- X86EMU_halt_sys(emu);
- }
- return 0;
-}
-
-static uint16_t *
-decode_rl_word_register(struct X86EMU *emu)
-{
- return decode_rm_word_register(emu, emu->cur_rl);
-}
-
-static uint16_t *
-decode_rh_word_register(struct X86EMU *emu)
-{
- return decode_rm_word_register(emu, emu->cur_rh);
-}
-/****************************************************************************
-PARAMETERS:
-reg - Register to decode
-
-RETURNS:
-Pointer to the appropriate register
-
-REMARKS:
-Return a pointer to the register given by the R/RM field of the
-modrm byte, for dword operands. Also enables the decoding of instructions.
-****************************************************************************/
-static uint32_t *
-decode_rm_long_register(struct X86EMU *emu, int reg)
-{
- switch (reg) {
- case 0:
- return &emu->x86.R_EAX;
- case 1:
- return &emu->x86.R_ECX;
- case 2:
- return &emu->x86.R_EDX;
- case 3:
- return &emu->x86.R_EBX;
- case 4:
- return &emu->x86.R_ESP;
- case 5:
- return &emu->x86.R_EBP;
- case 6:
- return &emu->x86.R_ESI;
- case 7:
- return &emu->x86.R_EDI;
- default:
- dbg("unexpected register %d\r\n", reg);
- X86EMU_halt_sys(emu);
- }
- return 0L;
-}
-
-static uint32_t *
-decode_rl_long_register(struct X86EMU *emu)
-{
- return decode_rm_long_register(emu, emu->cur_rl);
-}
-
-static uint32_t *
-decode_rh_long_register(struct X86EMU *emu)
-{
- return decode_rm_long_register(emu, emu->cur_rh);
-}
-
-/****************************************************************************
-PARAMETERS:
-reg - Register to decode
-
-RETURNS:
-Pointer to the appropriate register
-
-REMARKS:
-Return a pointer to the register given by the R/RM field of the
-modrm byte, for word operands, modified from above for the weirdo
-special case of segreg operands. Also enables the decoding of instructions.
-****************************************************************************/
-static uint16_t *
-decode_rh_seg_register(struct X86EMU *emu)
-{
- switch (emu->cur_rh) {
- case 0:
- return &emu->x86.R_ES;
- case 1:
- return &emu->x86.R_CS;
- case 2:
- return &emu->x86.R_SS;
- case 3:
- return &emu->x86.R_DS;
- case 4:
- return &emu->x86.R_FS;
- case 5:
- return &emu->x86.R_GS;
- default:
- dbg("unexpected register %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
- return 0;
-}
-/*
- *
- * return offset from the SIB Byte
- */
-static uint32_t
-decode_sib_address(struct X86EMU *emu, int sib, int mod)
-{
- uint32_t base = 0, i = 0, scale = 1;
-
- switch (sib & 0x07) {
- case 0:
- base = emu->x86.R_EAX;
- break;
- case 1:
- base = emu->x86.R_ECX;
- break;
- case 2:
- base = emu->x86.R_EDX;
- break;
- case 3:
- base = emu->x86.R_EBX;
- break;
- case 4:
- base = emu->x86.R_ESP;
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- break;
- case 5:
- if (mod == 0) {
- base = fetch_long_imm(emu);
- } else {
- base = emu->x86.R_EBP;
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- }
- break;
- case 6:
- base = emu->x86.R_ESI;
- break;
- case 7:
- base = emu->x86.R_EDI;
- break;
- }
- switch ((sib >> 3) & 0x07) {
- case 0:
- i = emu->x86.R_EAX;
- break;
- case 1:
- i = emu->x86.R_ECX;
- break;
- case 2:
- i = emu->x86.R_EDX;
- break;
- case 3:
- i = emu->x86.R_EBX;
- break;
- case 4:
- i = 0;
- break;
- case 5:
- i = emu->x86.R_EBP;
- break;
- case 6:
- i = emu->x86.R_ESI;
- break;
- case 7:
- i = emu->x86.R_EDI;
- break;
- }
- scale = 1 << ((sib >> 6) & 0x03);
- return base + (i * scale);
-}
-/****************************************************************************
-PARAMETERS:
-rm - RM value to decode
-
-RETURNS:
-Offset in memory for the address decoding
-
-REMARKS:
-Return the offset given by mod=00, mod=01 or mod=10 addressing.
-Also enables the decoding of instructions.
-****************************************************************************/
-static uint32_t
-decode_rl_address(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_ADDR) {
- uint32_t offset, sib;
- /* 32-bit addressing */
- switch (emu->cur_rl) {
- case 0:
- offset = emu->x86.R_EAX;
- break;
- case 1:
- offset = emu->x86.R_ECX;
- break;
- case 2:
- offset = emu->x86.R_EDX;
- break;
- case 3:
- offset = emu->x86.R_EBX;
- break;
- case 4:
- sib = fetch_byte_imm(emu);
- offset = decode_sib_address(emu, sib, 0);
- break;
- case 5:
- if (emu->cur_mod == 0) {
- offset = fetch_long_imm(emu);
- } else {
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- offset = emu->x86.R_EBP;
- }
- break;
- case 6:
- offset = emu->x86.R_ESI;
- break;
- case 7:
- offset = emu->x86.R_EDI;
- break;
- default:
- dbg("unexpected mode %d\r\n", emu->x86.mode & SYSMODE_PREFIX_ADDR);
- X86EMU_halt_sys(emu);
- }
- if (emu->cur_mod == 1)
- offset += (int8_t)fetch_byte_imm(emu);
- else if (emu->cur_mod == 2)
- offset += fetch_long_imm(emu);
- return offset;
- } else {
- uint16_t offset;
-
- /* 16-bit addressing */
- switch (emu->cur_rl) {
- case 0:
- offset = emu->x86.R_BX + emu->x86.R_SI;
- break;
- case 1:
- offset = emu->x86.R_BX + emu->x86.R_DI;
- break;
- case 2:
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- offset = emu->x86.R_BP + emu->x86.R_SI;
- break;
- case 3:
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- offset = emu->x86.R_BP + emu->x86.R_DI;
- break;
- case 4:
- offset = emu->x86.R_SI;
- break;
- case 5:
- offset = emu->x86.R_DI;
- break;
- case 6:
- if (emu->cur_mod == 0) {
- offset = fetch_word_imm(emu);
- } else {
- emu->x86.mode |= SYSMODE_SEG_DS_SS;
- offset = emu->x86.R_BP;
- }
- break;
- case 7:
- offset = emu->x86.R_BX;
- break;
- default:
- dbg("unexpected register %d\r\n", emu->cur_rl);
- X86EMU_halt_sys(emu);
- }
- if (emu->cur_mod == 1)
- offset += (int8_t)fetch_byte_imm(emu);
- else if (emu->cur_mod == 2)
- offset += fetch_word_imm(emu);
- return offset;
- }
-}
-
-static uint8_t
-decode_and_fetch_byte(struct X86EMU *emu)
-{
- if (emu->cur_mod != 3) {
- emu->cur_offset = decode_rl_address(emu);
- return fetch_data_byte(emu, emu->cur_offset);
- } else {
- return *decode_rl_byte_register(emu);
- }
-}
-
-static uint16_t
-decode_and_fetch_word_disp(struct X86EMU *emu, int16_t disp)
-{
- if (emu->cur_mod != 3) {
- /* TODO: A20 gate emulation */
- emu->cur_offset = decode_rl_address(emu) + disp;
- if ((emu->x86.mode & SYSMODE_PREFIX_ADDR) == 0)
- emu->cur_offset &= 0xffff;
- return fetch_data_word(emu, emu->cur_offset);
- } else {
- return *decode_rl_word_register(emu);
- }
-}
-
-static uint32_t
-decode_and_fetch_long_disp(struct X86EMU *emu, int16_t disp)
-{
- if (emu->cur_mod != 3) {
- /* TODO: A20 gate emulation */
- emu->cur_offset = decode_rl_address(emu) + disp;
- if ((emu->x86.mode & SYSMODE_PREFIX_ADDR) == 0)
- emu->cur_offset &= 0xffff;
- return fetch_data_long(emu, emu->cur_offset);
- } else {
- return *decode_rl_long_register(emu);
- }
-}
-
-uint16_t
-decode_and_fetch_word(struct X86EMU *emu)
-{
- return decode_and_fetch_word_disp(emu, 0);
-}
-
-uint32_t
-decode_and_fetch_long(struct X86EMU *emu)
-{
- return decode_and_fetch_long_disp(emu, 0);
-}
-
-uint8_t
-decode_and_fetch_byte_imm8(struct X86EMU *emu, uint8_t *imm)
-{
- if (emu->cur_mod != 3) {
- emu->cur_offset = decode_rl_address(emu);
- *imm = fetch_byte_imm(emu);
- return fetch_data_byte(emu, emu->cur_offset);
- } else {
- *imm = fetch_byte_imm(emu);
- return *decode_rl_byte_register(emu);
- }
-}
-
-static uint16_t
-decode_and_fetch_word_imm8(struct X86EMU *emu, uint8_t *imm)
-{
- if (emu->cur_mod != 3) {
- emu->cur_offset = decode_rl_address(emu);
- *imm = fetch_byte_imm(emu);
- return fetch_data_word(emu, emu->cur_offset);
- } else {
- *imm = fetch_byte_imm(emu);
- return *decode_rl_word_register(emu);
- }
-}
-
-static uint32_t
-decode_and_fetch_long_imm8(struct X86EMU *emu, uint8_t *imm)
-{
- if (emu->cur_mod != 3) {
- emu->cur_offset = decode_rl_address(emu);
- *imm = fetch_byte_imm(emu);
- return fetch_data_long(emu, emu->cur_offset);
- } else {
- *imm = fetch_byte_imm(emu);
- return *decode_rl_long_register(emu);
- }
-}
-
-static void
-write_back_byte(struct X86EMU *emu, uint8_t val)
-{
- if (emu->cur_mod != 3)
- store_data_byte(emu, emu->cur_offset, val);
- else
- *decode_rl_byte_register(emu) = val;
-}
-
-static void
-write_back_word(struct X86EMU *emu, uint16_t val)
-{
- if (emu->cur_mod != 3)
- store_data_word(emu, emu->cur_offset, val);
- else
- *decode_rl_word_register(emu) = val;
-}
-
-static void
-write_back_long(struct X86EMU *emu, uint32_t val)
-{
- if (emu->cur_mod != 3)
- store_data_long(emu, emu->cur_offset, val);
- else
- *decode_rl_long_register(emu) = val;
-}
-
-static void
-common_inc_word_long(struct X86EMU *emu, union X86EMU_register *reg)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- reg->I32_reg.e_reg = inc_long(emu, reg->I32_reg.e_reg);
- else
- reg->I16_reg.x_reg = inc_word(emu, reg->I16_reg.x_reg);
-}
-
-static void
-common_dec_word_long(struct X86EMU *emu, union X86EMU_register *reg)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- reg->I32_reg.e_reg = dec_long(emu, reg->I32_reg.e_reg);
- else
- reg->I16_reg.x_reg = dec_word(emu, reg->I16_reg.x_reg);
-}
-
-static void
-common_binop_byte_rm_r(struct X86EMU *emu, uint8_t (*binop)(struct X86EMU *, uint8_t, uint8_t))
-{
- uint32_t destoffset;
- uint8_t *destreg, srcval;
- uint8_t destval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_byte_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_byte(emu, destoffset);
- destval = (*binop)(emu, destval, srcval);
- store_data_byte(emu, destoffset, destval);
- } else {
- destreg = decode_rl_byte_register(emu);
- *destreg = (*binop)(emu, *destreg, srcval);
- }
-}
-
-static void
-common_binop_ns_byte_rm_r(struct X86EMU *emu, void (*binop)(struct X86EMU *, uint8_t, uint8_t))
-{
- uint32_t destoffset;
- uint8_t destval, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_byte_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_byte(emu, destoffset);
- } else {
- destval = *decode_rl_byte_register(emu);
- }
- (*binop)(emu, destval, srcval);
-}
-
-static void
-common_binop_word_rm_r(struct X86EMU *emu, uint16_t (*binop)(struct X86EMU *, uint16_t, uint16_t))
-{
- uint32_t destoffset;
- uint16_t destval, *destreg, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_word_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_word(emu, destoffset);
- destval = (*binop)(emu, destval, srcval);
- store_data_word(emu, destoffset, destval);
- } else {
- destreg = decode_rl_word_register(emu);
- *destreg = (*binop)(emu, *destreg, srcval);
- }
-}
-
-static void
-common_binop_byte_r_rm(struct X86EMU *emu, uint8_t (*binop)(struct X86EMU *, uint8_t, uint8_t))
-{
- uint8_t *destreg, srcval;
- uint32_t srcoffset;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_byte_register(emu);
- if (emu->cur_mod != 3) {
- srcoffset = decode_rl_address(emu);
- srcval = fetch_data_byte(emu, srcoffset);
- } else {
- srcval = *decode_rl_byte_register(emu);
- }
- *destreg = (*binop)(emu, *destreg, srcval);
-}
-
-static void
-common_binop_long_rm_r(struct X86EMU *emu, uint32_t (*binop)(struct X86EMU *, uint32_t, uint32_t))
-{
- uint32_t destoffset;
- uint32_t destval, *destreg, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_long_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_long(emu, destoffset);
- destval = (*binop)(emu, destval, srcval);
- store_data_long(emu, destoffset, destval);
- } else {
- destreg = decode_rl_long_register(emu);
- *destreg = (*binop)(emu, *destreg, srcval);
- }
-}
-
-static void
-common_binop_word_long_rm_r(struct X86EMU *emu,
- uint16_t (*binop16)(struct X86EMU *, uint16_t, uint16_t), uint32_t (*binop32)(struct X86EMU *, uint32_t, uint32_t))
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_binop_long_rm_r(emu, binop32);
- else
- common_binop_word_rm_r(emu, binop16);
-}
-
-static void
-common_binop_ns_word_rm_r(struct X86EMU *emu, void (*binop)(struct X86EMU *, uint16_t, uint16_t))
-{
- uint32_t destoffset;
- uint16_t destval, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_word_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_word(emu, destoffset);
- } else {
- destval = *decode_rl_word_register(emu);
- }
- (*binop)(emu, destval, srcval);
-}
-
-
-static void
-common_binop_ns_long_rm_r(struct X86EMU *emu, void (*binop)(struct X86EMU *, uint32_t, uint32_t))
-{
- uint32_t destoffset;
- uint32_t destval, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_long_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_long(emu, destoffset);
- } else {
- destval = *decode_rl_long_register(emu);
- }
- (*binop)(emu, destval, srcval);
-}
-
-static void
-common_binop_ns_word_long_rm_r(struct X86EMU *emu,
- void (*binop16)(struct X86EMU *, uint16_t, uint16_t), void (*binop32)(struct X86EMU *, uint32_t, uint32_t))
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_binop_ns_long_rm_r(emu, binop32);
- else
- common_binop_ns_word_rm_r(emu, binop16);
-}
-
-static void
-common_binop_long_r_rm(struct X86EMU *emu, uint32_t (*binop)(struct X86EMU *, uint32_t, uint32_t))
-{
- uint32_t srcoffset;
- uint32_t *destreg, srcval;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- if (emu->cur_mod != 3) {
- srcoffset = decode_rl_address(emu);
- srcval = fetch_data_long(emu, srcoffset);
- } else {
- srcval = *decode_rl_long_register(emu);
- }
- *destreg = (*binop)(emu, *destreg, srcval);
-}
-
-static void
-common_binop_word_r_rm(struct X86EMU *emu, uint16_t (*binop)(struct X86EMU *, uint16_t, uint16_t))
-{
- uint32_t srcoffset;
- uint16_t *destreg, srcval;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- if (emu->cur_mod != 3) {
- srcoffset = decode_rl_address(emu);
- srcval = fetch_data_word(emu, srcoffset);
- } else {
- srcval = *decode_rl_word_register(emu);
- }
- *destreg = (*binop)(emu, *destreg, srcval);
-}
-
-static void
-common_binop_word_long_r_rm(struct X86EMU *emu,
- uint16_t (*binop16)(struct X86EMU *, uint16_t, uint16_t), uint32_t (*binop32)(struct X86EMU *, uint32_t, uint32_t))
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_binop_long_r_rm(emu, binop32);
- else
- common_binop_word_r_rm(emu, binop16);
-}
-
-static void
-common_binop_byte_imm(struct X86EMU *emu, uint8_t (*binop)(struct X86EMU *, uint8_t, uint8_t))
-{
- uint8_t srcval;
-
- srcval = fetch_byte_imm(emu);
- emu->x86.R_AL = (*binop)(emu, emu->x86.R_AL, srcval);
-}
-
-static void
-common_binop_word_long_imm(struct X86EMU *emu,
- uint16_t (*binop16)(struct X86EMU *, uint16_t, uint16_t), uint32_t (*binop32)(struct X86EMU *, uint32_t, uint32_t))
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t srcval;
-
- srcval = fetch_long_imm(emu);
- emu->x86.R_EAX = (*binop32)(emu, emu->x86.R_EAX, srcval);
- } else {
- uint16_t srcval;
-
- srcval = fetch_word_imm(emu);
- emu->x86.R_AX = (*binop16)(emu, emu->x86.R_AX, srcval);
- }
-}
-
-static void
-common_push_word_long(struct X86EMU *emu, union X86EMU_register *reg)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- push_long(emu, reg->I32_reg.e_reg);
- else
- push_word(emu, reg->I16_reg.x_reg);
-}
-
-static void
-common_pop_word_long(struct X86EMU *emu, union X86EMU_register *reg)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- reg->I32_reg.e_reg = pop_long(emu);
- else
- reg->I16_reg.x_reg = pop_word(emu);
-}
-
-static void
-common_imul_long_IMM(struct X86EMU *emu, bool byte_imm)
-{
- uint32_t srcoffset;
- uint32_t *destreg, srcval;
- int32_t imm;
- uint64_t res;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- if (emu->cur_mod != 3) {
- srcoffset = decode_rl_address(emu);
- srcval = fetch_data_long(emu, srcoffset);
- } else {
- srcval = *decode_rl_long_register(emu);
- }
-
- if (byte_imm)
- imm = (int8_t)fetch_byte_imm(emu);
- else
- imm = fetch_long_imm(emu);
- res = (int32_t)srcval * imm;
-
- if (res > 0xffffffff) {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- }
- *destreg = (uint32_t)res;
-}
-
-static void
-common_imul_word_IMM(struct X86EMU *emu, bool byte_imm)
-{
- uint32_t srcoffset;
- uint16_t *destreg, srcval;
- int16_t imm;
- uint32_t res;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- if (emu->cur_mod != 3) {
- srcoffset = decode_rl_address(emu);
- srcval = fetch_data_word(emu, srcoffset);
- } else {
- srcval = *decode_rl_word_register(emu);
- }
-
- if (byte_imm)
- imm = (int8_t)fetch_byte_imm(emu);
- else
- imm = fetch_word_imm(emu);
- res = (int16_t)srcval * imm;
-
- if (res > 0xffff) {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- }
- *destreg = (uint16_t) res;
-}
-
-static void
-common_imul_imm(struct X86EMU *emu, bool byte_imm)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_imul_long_IMM(emu, byte_imm);
- else
- common_imul_word_IMM(emu, byte_imm);
-}
-
-static void
-common_jmp_near(struct X86EMU *emu, bool cond)
-{
- int8_t offset;
- uint16_t target;
-
- offset = (int8_t) fetch_byte_imm(emu);
- target = (uint16_t) (emu->x86.R_IP + (int16_t) offset);
- if (cond)
- emu->x86.R_IP = target;
-}
-
-static void
-common_load_far_pointer(struct X86EMU *emu, uint16_t *seg)
-{
- uint16_t *dstreg;
- uint32_t srcoffset;
-
- fetch_decode_modrm(emu);
- if (emu->cur_mod == 3)
- {
- dbg("unexpected mode %d\r\n", emu->cur_mod);
- X86EMU_halt_sys(emu);
- }
-
- dstreg = decode_rh_word_register(emu);
- srcoffset = decode_rl_address(emu);
- *dstreg = fetch_data_word(emu, srcoffset);
- *seg = fetch_data_word(emu, srcoffset + 2);
-}
-
-/*----------------------------- Implementation ----------------------------*/
-/****************************************************************************
-REMARKS:
-Handles opcode 0x3a
-****************************************************************************/
-static void
-x86emuOp_cmp_byte_R_RM(struct X86EMU *emu)
-{
- uint8_t *destreg, srcval;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_byte_register(emu);
- srcval = decode_and_fetch_byte(emu);
- cmp_byte(emu, *destreg, srcval);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x3b
-****************************************************************************/
-static void
-x86emuOp32_cmp_word_R_RM(struct X86EMU *emu)
-{
- uint32_t srcval, *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- srcval = decode_and_fetch_long(emu);
- cmp_long(emu, *destreg, srcval);
-}
-
-static void
-x86emuOp16_cmp_word_R_RM(struct X86EMU *emu)
-{
- uint16_t srcval, *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- srcval = decode_and_fetch_word(emu);
- cmp_word(emu, *destreg, srcval);
-}
-
-static void
-x86emuOp_cmp_word_R_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_cmp_word_R_RM(emu);
- else
- x86emuOp16_cmp_word_R_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x3c
-****************************************************************************/
-static void
-x86emuOp_cmp_byte_AL_IMM(struct X86EMU *emu)
-{
- uint8_t srcval;
-
- srcval = fetch_byte_imm(emu);
- cmp_byte(emu, emu->x86.R_AL, srcval);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x3d
-****************************************************************************/
-static void
-x86emuOp32_cmp_word_AX_IMM(struct X86EMU *emu)
-{
- uint32_t srcval;
-
- srcval = fetch_long_imm(emu);
- cmp_long(emu, emu->x86.R_EAX, srcval);
-}
-
-static void
-x86emuOp16_cmp_word_AX_IMM(struct X86EMU *emu)
-{
- uint16_t srcval;
-
- srcval = fetch_word_imm(emu);
- cmp_word(emu, emu->x86.R_AX, srcval);
-}
-
-static void
-x86emuOp_cmp_word_AX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_cmp_word_AX_IMM(emu);
- else
- x86emuOp16_cmp_word_AX_IMM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x60
-****************************************************************************/
-static void
-x86emuOp_push_all(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t old_sp = emu->x86.R_ESP;
-
- push_long(emu, emu->x86.R_EAX);
- push_long(emu, emu->x86.R_ECX);
- push_long(emu, emu->x86.R_EDX);
- push_long(emu, emu->x86.R_EBX);
- push_long(emu, old_sp);
- push_long(emu, emu->x86.R_EBP);
- push_long(emu, emu->x86.R_ESI);
- push_long(emu, emu->x86.R_EDI);
- } else {
- uint16_t old_sp = emu->x86.R_SP;
-
- push_word(emu, emu->x86.R_AX);
- push_word(emu, emu->x86.R_CX);
- push_word(emu, emu->x86.R_DX);
- push_word(emu, emu->x86.R_BX);
- push_word(emu, old_sp);
- push_word(emu, emu->x86.R_BP);
- push_word(emu, emu->x86.R_SI);
- push_word(emu, emu->x86.R_DI);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x61
-****************************************************************************/
-static void
-x86emuOp_pop_all(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EDI = pop_long(emu);
- emu->x86.R_ESI = pop_long(emu);
- emu->x86.R_EBP = pop_long(emu);
- emu->x86.R_ESP += 4; /* skip ESP */
- emu->x86.R_EBX = pop_long(emu);
- emu->x86.R_EDX = pop_long(emu);
- emu->x86.R_ECX = pop_long(emu);
- emu->x86.R_EAX = pop_long(emu);
- } else {
- emu->x86.R_DI = pop_word(emu);
- emu->x86.R_SI = pop_word(emu);
- emu->x86.R_BP = pop_word(emu);
- emu->x86.R_SP += 2;/* skip SP */
- emu->x86.R_BX = pop_word(emu);
- emu->x86.R_DX = pop_word(emu);
- emu->x86.R_CX = pop_word(emu);
- emu->x86.R_AX = pop_word(emu);
- }
-}
-/*opcode 0x62 ILLEGAL OP, calls x86emuOp_illegal_op() */
-/*opcode 0x63 ILLEGAL OP, calls x86emuOp_illegal_op() */
-
-/****************************************************************************
-REMARKS:
-Handles opcode 0x68
-****************************************************************************/
-static void
-x86emuOp_push_word_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t imm;
-
- imm = fetch_long_imm(emu);
- push_long(emu, imm);
- } else {
- uint16_t imm;
-
- imm = fetch_word_imm(emu);
- push_word(emu, imm);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x6a
-****************************************************************************/
-static void
-x86emuOp_push_byte_IMM(struct X86EMU *emu)
-{
- int16_t imm;
-
- imm = (int8_t) fetch_byte_imm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- push_long(emu, (int32_t) imm);
- } else {
- push_word(emu, imm);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x6c
-****************************************************************************/
-/****************************************************************************
-REMARKS:
-Handles opcode 0x6d
-****************************************************************************/
-static void
-x86emuOp_ins_word(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- ins(emu, 4);
- } else {
- ins(emu, 2);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x6f
-****************************************************************************/
-static void
-x86emuOp_outs_word(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- outs(emu, 4);
- } else {
- outs(emu, 2);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x7c
-****************************************************************************/
-static void
-x86emuOp_jump_near_L(struct X86EMU *emu)
-{
- bool sf, of;
-
- sf = ACCESS_FLAG(F_SF) != 0;
- of = ACCESS_FLAG(F_OF) != 0;
-
- common_jmp_near(emu, sf != of);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x7d
-****************************************************************************/
-static void
-x86emuOp_jump_near_NL(struct X86EMU *emu)
-{
- bool sf, of;
-
- sf = ACCESS_FLAG(F_SF) != 0;
- of = ACCESS_FLAG(F_OF) != 0;
-
- common_jmp_near(emu, sf == of);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x7e
-****************************************************************************/
-static void
-x86emuOp_jump_near_LE(struct X86EMU *emu)
-{
- bool sf, of;
-
- sf = ACCESS_FLAG(F_SF) != 0;
- of = ACCESS_FLAG(F_OF) != 0;
-
- common_jmp_near(emu, sf != of || ACCESS_FLAG(F_ZF));
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x7f
-****************************************************************************/
-static void
-x86emuOp_jump_near_NLE(struct X86EMU *emu)
-{
- bool sf, of;
-
- sf = ACCESS_FLAG(F_SF) != 0;
- of = ACCESS_FLAG(F_OF) != 0;
-
- common_jmp_near(emu, sf == of && !ACCESS_FLAG(F_ZF));
-}
-
-static
-uint8_t(*const opc80_byte_operation[]) (struct X86EMU *, uint8_t d, uint8_t s) =
-{
- add_byte, /* 00 */
- or_byte, /* 01 */
- adc_byte, /* 02 */
- sbb_byte, /* 03 */
- and_byte, /* 04 */
- sub_byte, /* 05 */
- xor_byte, /* 06 */
- cmp_byte, /* 07 */
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0x80
-****************************************************************************/
-static void
-x86emuOp_opc80_byte_RM_IMM(struct X86EMU *emu)
-{
- uint8_t imm, destval;
-
- /*
- * Weirdo special case instruction format. Part of the opcode
- * held below in "RH". Doubly nested case would result, except
- * that the decoded instruction
- */
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_byte(emu);
- imm = fetch_byte_imm(emu);
- destval = (*opc80_byte_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_byte(emu, destval);
-}
-
-static
-uint16_t(* const opc81_word_operation[]) (struct X86EMU *, uint16_t d, uint16_t s) =
-{
- add_word, /* 00 */
- or_word, /* 01 */
- adc_word, /* 02 */
- sbb_word, /* 03 */
- and_word, /* 04 */
- sub_word, /* 05 */
- xor_word, /* 06 */
- cmp_word, /* 07 */
- };
-
-static
-uint32_t(* const opc81_long_operation[]) (struct X86EMU *, uint32_t d, uint32_t s) =
-{
- add_long, /* 00 */
- or_long, /* 01 */
- adc_long, /* 02 */
- sbb_long, /* 03 */
- and_long, /* 04 */
- sub_long, /* 05 */
- xor_long, /* 06 */
- cmp_long, /* 07 */
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0x81
-****************************************************************************/
-static void
-x86emuOp32_opc81_word_RM_IMM(struct X86EMU *emu)
-{
- uint32_t destval, imm;
-
- /*
- * Weirdo special case instruction format. Part of the opcode
- * held below in "RH". Doubly nested case would result, except
- * that the decoded instruction
- */
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_long(emu);
- imm = fetch_long_imm(emu);
- destval = (*opc81_long_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_long(emu, destval);
-}
-
-static void
-x86emuOp16_opc81_word_RM_IMM(struct X86EMU *emu)
-{
- uint16_t destval, imm;
-
- /*
- * Weirdo special case instruction format. Part of the opcode
- * held below in "RH". Doubly nested case would result, except
- * that the decoded instruction
- */
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_word(emu);
- imm = fetch_word_imm(emu);
- destval = (*opc81_word_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_word(emu, destval);
-}
-
-static void
-x86emuOp_opc81_word_RM_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_opc81_word_RM_IMM(emu);
- else
- x86emuOp16_opc81_word_RM_IMM(emu);
-}
-
-static
-uint8_t(* const opc82_byte_operation[]) (struct X86EMU *, uint8_t s, uint8_t d) =
-{
- add_byte, /* 00 */
- or_byte, /* 01 *//* YYY UNUSED ???? */
- adc_byte, /* 02 */
- sbb_byte, /* 03 */
- and_byte, /* 04 *//* YYY UNUSED ???? */
- sub_byte, /* 05 */
- xor_byte, /* 06 *//* YYY UNUSED ???? */
- cmp_byte, /* 07 */
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0x82
-****************************************************************************/
-static void
-x86emuOp_opc82_byte_RM_IMM(struct X86EMU *emu)
-{
- uint8_t imm, destval;
-
- /*
- * Weirdo special case instruction format. Part of the opcode
- * held below in "RH". Doubly nested case would result, except
- * that the decoded instruction Similar to opcode 81, except that
- * the immediate byte is sign extended to a word length.
- */
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_byte(emu);
- imm = fetch_byte_imm(emu);
- destval = (*opc82_byte_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_byte(emu, destval);
-}
-
-static
-uint16_t(* const opc83_word_operation[]) (struct X86EMU *, uint16_t s, uint16_t d) =
-{
- add_word, /* 00 */
- or_word, /* 01 *//* YYY UNUSED ???? */
- adc_word, /* 02 */
- sbb_word, /* 03 */
- and_word, /* 04 *//* YYY UNUSED ???? */
- sub_word, /* 05 */
- xor_word, /* 06 *//* YYY UNUSED ???? */
- cmp_word, /* 07 */
- };
-
-static
-uint32_t(* const opc83_long_operation[]) (struct X86EMU *, uint32_t s, uint32_t d) =
-{
- add_long, /* 00 */
- or_long, /* 01 *//* YYY UNUSED ???? */
- adc_long, /* 02 */
- sbb_long, /* 03 */
- and_long, /* 04 *//* YYY UNUSED ???? */
- sub_long, /* 05 */
- xor_long, /* 06 *//* YYY UNUSED ???? */
- cmp_long, /* 07 */
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0x83
-****************************************************************************/
-static void
-x86emuOp32_opc83_word_RM_IMM(struct X86EMU *emu)
-{
- uint32_t destval, imm;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_long(emu);
- imm = (int8_t) fetch_byte_imm(emu);
- destval = (*opc83_long_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_long(emu, destval);
-}
-
-static void
-x86emuOp16_opc83_word_RM_IMM(struct X86EMU *emu)
-{
- uint16_t destval, imm;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_word(emu);
- imm = (int8_t) fetch_byte_imm(emu);
- destval = (*opc83_word_operation[emu->cur_rh]) (emu, destval, imm);
- if (emu->cur_rh != 7)
- write_back_word(emu, destval);
-}
-
-static void
-x86emuOp_opc83_word_RM_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_opc83_word_RM_IMM(emu);
- else
- x86emuOp16_opc83_word_RM_IMM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x86
-****************************************************************************/
-static void
-x86emuOp_xchg_byte_RM_R(struct X86EMU *emu)
-{
- uint8_t *srcreg, destval, tmp;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_byte(emu);
- srcreg = decode_rh_byte_register(emu);
- tmp = destval;
- destval = *srcreg;
- *srcreg = tmp;
- write_back_byte(emu, destval);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x87
-****************************************************************************/
-static void
-x86emuOp32_xchg_word_RM_R(struct X86EMU *emu)
-{
- uint32_t *srcreg, destval, tmp;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_long(emu);
- srcreg = decode_rh_long_register(emu);
- tmp = destval;
- destval = *srcreg;
- *srcreg = tmp;
- write_back_long(emu, destval);
-}
-
-static void
-x86emuOp16_xchg_word_RM_R(struct X86EMU *emu)
-{
- uint16_t *srcreg, destval, tmp;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_word(emu);
- srcreg = decode_rh_word_register(emu);
- tmp = destval;
- destval = *srcreg;
- *srcreg = tmp;
- write_back_word(emu, destval);
-}
-
-static void
-x86emuOp_xchg_word_RM_R(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_xchg_word_RM_R(emu);
- else
- x86emuOp16_xchg_word_RM_R(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x88
-****************************************************************************/
-static void
-x86emuOp_mov_byte_RM_R(struct X86EMU *emu)
-{
- uint8_t *destreg, *srcreg;
- uint32_t destoffset;
-
- fetch_decode_modrm(emu);
- srcreg = decode_rh_byte_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- store_data_byte(emu, destoffset, *srcreg);
- } else {
- destreg = decode_rl_byte_register(emu);
- *destreg = *srcreg;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x89
-****************************************************************************/
-static void
-x86emuOp32_mov_word_RM_R(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint32_t *destreg, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_long_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- store_data_long(emu, destoffset, srcval);
- } else {
- destreg = decode_rl_long_register(emu);
- *destreg = srcval;
- }
-}
-
-static void
-x86emuOp16_mov_word_RM_R(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint16_t *destreg, srcval;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_word_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- store_data_word(emu, destoffset, srcval);
- } else {
- destreg = decode_rl_word_register(emu);
- *destreg = srcval;
- }
-}
-
-static void
-x86emuOp_mov_word_RM_R(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_mov_word_RM_R(emu);
- else
- x86emuOp16_mov_word_RM_R(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8a
-****************************************************************************/
-static void
-x86emuOp_mov_byte_R_RM(struct X86EMU *emu)
-{
- uint8_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_byte_register(emu);
- *destreg = decode_and_fetch_byte(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8b
-****************************************************************************/
-static void
-x86emuOp_mov_word_R_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- *destreg = decode_and_fetch_long(emu);
- } else {
- uint16_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- *destreg = decode_and_fetch_word(emu);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8c
-****************************************************************************/
-static void
-x86emuOp_mov_word_RM_SR(struct X86EMU *emu)
-{
- uint16_t *destreg, srcval;
- uint32_t destoffset;
-
- fetch_decode_modrm(emu);
- srcval = *decode_rh_seg_register(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- store_data_word(emu, destoffset, srcval);
- } else {
- destreg = decode_rl_word_register(emu);
- *destreg = srcval;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8d
-****************************************************************************/
-static void
-x86emuOp_lea_word_R_M(struct X86EMU *emu)
-{
- uint32_t destoffset;
-
- fetch_decode_modrm(emu);
- if (emu->cur_mod == 3)
- {
- dbg("unexpected mode %d\r\n", emu->cur_mod);
- X86EMU_halt_sys(emu);
- }
-
- destoffset = decode_rl_address(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_ADDR) {
- uint32_t *srcreg;
-
- srcreg = decode_rh_long_register(emu);
- *srcreg = (uint32_t) destoffset;
- } else {
- uint16_t *srcreg;
-
- srcreg = decode_rh_word_register(emu);
- *srcreg = (uint16_t) destoffset;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8e
-****************************************************************************/
-static void
-x86emuOp_mov_word_SR_RM(struct X86EMU *emu)
-{
- uint16_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_seg_register(emu);
- *destreg = decode_and_fetch_word(emu);
- /*
- * Clean up, and reset all the R_xSP pointers to the correct
- * locations. This is about 3x too much overhead (doing all the
- * segreg ptrs when only one is needed, but this instruction
- * *cannot* be that common, and this isn't too much work anyway.
- */
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x8f
-****************************************************************************/
-static void
-x86emuOp32_pop_RM(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint32_t destval, *destreg;
-
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = pop_long(emu);
- store_data_long(emu, destoffset, destval);
- } else {
- destreg = decode_rl_long_register(emu);
- *destreg = pop_long(emu);
- }
-}
-
-static void
-x86emuOp16_pop_RM(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint16_t destval, *destreg;
-
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = pop_word(emu);
- store_data_word(emu, destoffset, destval);
- } else {
- destreg = decode_rl_word_register(emu);
- *destreg = pop_word(emu);
- }
-}
-
-static void
-x86emuOp_pop_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_pop_RM(emu);
- else
- x86emuOp16_pop_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x91
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_CX(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_ECX;
- emu->x86.R_ECX = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_CX;
- emu->x86.R_CX = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x92
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_DX(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_EDX;
- emu->x86.R_EDX = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_DX;
- emu->x86.R_DX = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x93
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_BX(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_EBX;
- emu->x86.R_EBX = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_BX;
- emu->x86.R_BX = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x94
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_SP(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_ESP;
- emu->x86.R_ESP = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_SP;
- emu->x86.R_SP = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x95
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_BP(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_EBP;
- emu->x86.R_EBP = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_BP;
- emu->x86.R_BP = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x96
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_SI(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_ESI;
- emu->x86.R_ESI = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_SI;
- emu->x86.R_SI = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x97
-****************************************************************************/
-static void
-x86emuOp_xchg_word_AX_DI(struct X86EMU *emu)
-{
- uint32_t tmp;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- tmp = emu->x86.R_EAX;
- emu->x86.R_EAX = emu->x86.R_EDI;
- emu->x86.R_EDI = tmp;
- } else {
- tmp = emu->x86.R_AX;
- emu->x86.R_AX = emu->x86.R_DI;
- emu->x86.R_DI = (uint16_t) tmp;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x98
-****************************************************************************/
-static void
-x86emuOp_cbw(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- if (emu->x86.R_AX & 0x8000) {
- emu->x86.R_EAX |= 0xffff0000;
- } else {
- emu->x86.R_EAX &= 0x0000ffff;
- }
- } else {
- if (emu->x86.R_AL & 0x80) {
- emu->x86.R_AH = 0xff;
- } else {
- emu->x86.R_AH = 0x0;
- }
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x99
-****************************************************************************/
-static void
-x86emuOp_cwd(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- if (emu->x86.R_EAX & 0x80000000) {
- emu->x86.R_EDX = 0xffffffff;
- } else {
- emu->x86.R_EDX = 0x0;
- }
- } else {
- if (emu->x86.R_AX & 0x8000) {
- emu->x86.R_DX = 0xffff;
- } else {
- emu->x86.R_DX = 0x0;
- }
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x9a
-****************************************************************************/
-static void
-x86emuOp_call_far_IMM(struct X86EMU *emu)
-{
- uint16_t farseg, faroff;
-
- faroff = fetch_word_imm(emu);
- farseg = fetch_word_imm(emu);
- /* XXX
- *
- * Hooked interrupt vectors calling into our "BIOS" will cause problems
- * unless all intersegment stuff is checked for BIOS access. Check
- * needed here. For moment, let it alone. */
- push_word(emu, emu->x86.R_CS);
- emu->x86.R_CS = farseg;
- push_word(emu, emu->x86.R_IP);
- emu->x86.R_IP = faroff;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x9c
-****************************************************************************/
-static void
-x86emuOp_pushf_word(struct X86EMU *emu)
-{
- uint32_t flags;
-
- /* clear out *all* bits not representing flags, and turn on real bits */
- flags = (emu->x86.R_EFLG & F_MSK) | F_ALWAYS_ON;
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- push_long(emu, flags);
- } else {
- push_word(emu, (uint16_t) flags);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x9d
-****************************************************************************/
-static void
-x86emuOp_popf_word(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EFLG = pop_long(emu);
- } else {
- emu->x86.R_FLG = pop_word(emu);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x9e
-****************************************************************************/
-static void
-x86emuOp_sahf(struct X86EMU *emu)
-{
- /* clear the lower bits of the flag register */
- emu->x86.R_FLG &= 0xffffff00;
- /* or in the AH register into the flags register */
- emu->x86.R_FLG |= emu->x86.R_AH;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x9f
-****************************************************************************/
-static void
-x86emuOp_lahf(struct X86EMU *emu)
-{
- emu->x86.R_AH = (uint8_t) (emu->x86.R_FLG & 0xff);
- /* undocumented TC++ behavior??? Nope. It's documented, but you have
- * too look real hard to notice it. */
- emu->x86.R_AH |= 0x2;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa0
-****************************************************************************/
-static void
-x86emuOp_mov_AL_M_IMM(struct X86EMU *emu)
-{
- uint16_t offset;
-
- offset = fetch_word_imm(emu);
- emu->x86.R_AL = fetch_data_byte(emu, offset);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa1
-****************************************************************************/
-static void
-x86emuOp_mov_AX_M_IMM(struct X86EMU *emu)
-{
- uint16_t offset;
-
- offset = fetch_word_imm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EAX = fetch_data_long(emu, offset);
- } else {
- emu->x86.R_AX = fetch_data_word(emu, offset);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa2
-****************************************************************************/
-static void
-x86emuOp_mov_M_AL_IMM(struct X86EMU *emu)
-{
- uint16_t offset;
-
- offset = fetch_word_imm(emu);
- store_data_byte(emu, offset, emu->x86.R_AL);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa3
-****************************************************************************/
-static void
-x86emuOp_mov_M_AX_IMM(struct X86EMU *emu)
-{
- uint16_t offset;
-
- offset = fetch_word_imm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- store_data_long(emu, offset, emu->x86.R_EAX);
- } else {
- store_data_word(emu, offset, emu->x86.R_AX);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa4
-****************************************************************************/
-static void
-x86emuOp_movs_byte(struct X86EMU *emu)
-{
- uint8_t val;
- uint32_t count;
- int inc;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -1;
- else
- inc = 1;
- count = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- count = emu->x86.R_CX;
- emu->x86.R_CX = 0;
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- }
- while (count--) {
- val = fetch_data_byte(emu, emu->x86.R_SI);
- store_byte(emu, emu->x86.R_ES, emu->x86.R_DI, val);
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa5
-****************************************************************************/
-static void
-x86emuOp_movs_word(struct X86EMU *emu)
-{
- uint32_t val;
- int inc;
- uint32_t count;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- inc = 4;
- else
- inc = 2;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -inc;
-
- count = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- count = emu->x86.R_CX;
- emu->x86.R_CX = 0;
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- }
- while (count--) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val = fetch_data_long(emu, emu->x86.R_SI);
- store_long(emu, emu->x86.R_ES, emu->x86.R_DI, val);
- } else {
- val = fetch_data_word(emu, emu->x86.R_SI);
- store_word(emu, emu->x86.R_ES, emu->x86.R_DI, (uint16_t) val);
- }
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa6
-****************************************************************************/
-static void
-x86emuOp_cmps_byte(struct X86EMU *emu)
-{
- int8_t val1, val2;
- int inc;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -1;
- else
- inc = 1;
-
- if (emu->x86.mode & SYSMODE_PREFIX_REPE) {
- /* REPE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- val1 = fetch_data_byte(emu, emu->x86.R_SI);
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, val1, val2);
- emu->x86.R_CX -= 1;
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF) == 0)
- break;
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPE;
- } else if (emu->x86.mode & SYSMODE_PREFIX_REPNE) {
- /* REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- val1 = fetch_data_byte(emu, emu->x86.R_SI);
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, val1, val2);
- emu->x86.R_CX -= 1;
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF))
- break; /* zero flag set means equal */
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPNE;
- } else {
- val1 = fetch_data_byte(emu, emu->x86.R_SI);
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, val1, val2);
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa7
-****************************************************************************/
-static void
-x86emuOp_cmps_word(struct X86EMU *emu)
-{
- uint32_t val1, val2;
- int inc;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -4;
- else
- inc = 4;
- } else {
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -2;
- else
- inc = 2;
- }
- if (emu->x86.mode & SYSMODE_PREFIX_REPE) {
- /* REPE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val1 = fetch_data_long(emu, emu->x86.R_SI);
- val2 = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, val1, val2);
- } else {
- val1 = fetch_data_word(emu, emu->x86.R_SI);
- val2 = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, (uint16_t) val1, (uint16_t) val2);
- }
- emu->x86.R_CX -= 1;
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF) == 0)
- break;
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPE;
- } else if (emu->x86.mode & SYSMODE_PREFIX_REPNE) {
- /* REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val1 = fetch_data_long(emu, emu->x86.R_SI);
- val2 = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, val1, val2);
- } else {
- val1 = fetch_data_word(emu, emu->x86.R_SI);
- val2 = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, (uint16_t) val1, (uint16_t) val2);
- }
- emu->x86.R_CX -= 1;
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF))
- break; /* zero flag set means equal */
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPNE;
- } else {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val1 = fetch_data_long(emu, emu->x86.R_SI);
- val2 = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, val1, val2);
- } else {
- val1 = fetch_data_word(emu, emu->x86.R_SI);
- val2 = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, (uint16_t) val1, (uint16_t) val2);
- }
- emu->x86.R_SI += inc;
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xa9
-****************************************************************************/
-static void
-x86emuOp_test_AX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- test_long(emu, emu->x86.R_EAX, fetch_long_imm(emu));
- } else {
- test_word(emu, emu->x86.R_AX, fetch_word_imm(emu));
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xaa
-****************************************************************************/
-static void
-x86emuOp_stos_byte(struct X86EMU *emu)
-{
- int inc;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -1;
- else
- inc = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- store_byte(emu, emu->x86.R_ES, emu->x86.R_DI, emu->x86.R_AL);
- emu->x86.R_CX -= 1;
- emu->x86.R_DI += inc;
- }
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- } else {
- store_byte(emu, emu->x86.R_ES, emu->x86.R_DI, emu->x86.R_AL);
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xab
-****************************************************************************/
-static void
-x86emuOp_stos_word(struct X86EMU *emu)
-{
- int inc;
- uint32_t count;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- inc = 4;
- else
- inc = 2;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -inc;
-
- count = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- count = emu->x86.R_CX;
- emu->x86.R_CX = 0;
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- }
- while (count--) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- store_long(emu, emu->x86.R_ES, emu->x86.R_DI, emu->x86.R_EAX);
- } else {
- store_word(emu, emu->x86.R_ES, emu->x86.R_DI, emu->x86.R_AX);
- }
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xac
-****************************************************************************/
-static void
-x86emuOp_lods_byte(struct X86EMU *emu)
-{
- int inc;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -1;
- else
- inc = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- emu->x86.R_AL = fetch_data_byte(emu, emu->x86.R_SI);
- emu->x86.R_CX -= 1;
- emu->x86.R_SI += inc;
- }
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- } else {
- emu->x86.R_AL = fetch_data_byte(emu, emu->x86.R_SI);
- emu->x86.R_SI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xad
-****************************************************************************/
-static void
-x86emuOp_lods_word(struct X86EMU *emu)
-{
- int inc;
- uint32_t count;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- inc = 4;
- else
- inc = 2;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -inc;
-
- count = 1;
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* move them until CX is ZERO. */
- count = emu->x86.R_CX;
- emu->x86.R_CX = 0;
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- }
- while (count--) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EAX = fetch_data_long(emu, emu->x86.R_SI);
- } else {
- emu->x86.R_AX = fetch_data_word(emu, emu->x86.R_SI);
- }
- emu->x86.R_SI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xae
-****************************************************************************/
-static void
-x86emuOp_scas_byte(struct X86EMU *emu)
-{
- int8_t val2;
- int inc;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -1;
- else
- inc = 1;
- if (emu->x86.mode & SYSMODE_PREFIX_REPE) {
- /* REPE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, emu->x86.R_AL, val2);
- emu->x86.R_CX -= 1;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF) == 0)
- break;
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPE;
- } else if (emu->x86.mode & SYSMODE_PREFIX_REPNE) {
- /* REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, emu->x86.R_AL, val2);
- emu->x86.R_CX -= 1;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF))
- break; /* zero flag set means equal */
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPNE;
- } else {
- val2 = fetch_byte(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_byte(emu, emu->x86.R_AL, val2);
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xaf
-****************************************************************************/
-static void
-x86emuOp_scas_word(struct X86EMU *emu)
-{
- int inc;
- uint32_t val;
-
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- inc = 4;
- else
- inc = 2;
-
- if (ACCESS_FLAG(F_DF)) /* down */
- inc = -inc;
-
- if (emu->x86.mode & SYSMODE_PREFIX_REPE) {
- /* REPE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, emu->x86.R_EAX, val);
- } else {
- val = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, emu->x86.R_AX, (uint16_t) val);
- }
- emu->x86.R_CX -= 1;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF) == 0)
- break;
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPE;
- } else if (emu->x86.mode & SYSMODE_PREFIX_REPNE) {
- /* REPNE */
- /* move them until CX is ZERO. */
- while (emu->x86.R_CX != 0) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, emu->x86.R_EAX, val);
- } else {
- val = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, emu->x86.R_AX, (uint16_t) val);
- }
- emu->x86.R_CX -= 1;
- emu->x86.R_DI += inc;
- if (ACCESS_FLAG(F_ZF))
- break; /* zero flag set means equal */
- }
- emu->x86.mode &= ~SYSMODE_PREFIX_REPNE;
- } else {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- val = fetch_long(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_long(emu, emu->x86.R_EAX, val);
- } else {
- val = fetch_word(emu, emu->x86.R_ES, emu->x86.R_DI);
- cmp_word(emu, emu->x86.R_AX, (uint16_t) val);
- }
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xb8
-****************************************************************************/
-static void
-x86emuOp_mov_word_AX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_EAX = fetch_long_imm(emu);
- else
- emu->x86.R_AX = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xb9
-****************************************************************************/
-static void
-x86emuOp_mov_word_CX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_ECX = fetch_long_imm(emu);
- else
- emu->x86.R_CX = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xba
-****************************************************************************/
-static void
-x86emuOp_mov_word_DX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_EDX = fetch_long_imm(emu);
- else
- emu->x86.R_DX = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xbb
-****************************************************************************/
-static void
-x86emuOp_mov_word_BX_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_EBX = fetch_long_imm(emu);
- else
- emu->x86.R_BX = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xbc
-****************************************************************************/
-static void
-x86emuOp_mov_word_SP_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_ESP = fetch_long_imm(emu);
- else
- emu->x86.R_SP = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xbd
-****************************************************************************/
-static void
-x86emuOp_mov_word_BP_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_EBP = fetch_long_imm(emu);
- else
- emu->x86.R_BP = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xbe
-****************************************************************************/
-static void
-x86emuOp_mov_word_SI_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_ESI = fetch_long_imm(emu);
- else
- emu->x86.R_SI = fetch_word_imm(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xbf
-****************************************************************************/
-static void
-x86emuOp_mov_word_DI_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- emu->x86.R_EDI = fetch_long_imm(emu);
- else
- emu->x86.R_DI = fetch_word_imm(emu);
-}
-/* used by opcodes c0, d0, and d2. */
-static
-uint8_t(* const opcD0_byte_operation[]) (struct X86EMU *, uint8_t d, uint8_t s) =
-{
- rol_byte,
- ror_byte,
- rcl_byte,
- rcr_byte,
- shl_byte,
- shr_byte,
- shl_byte, /* sal_byte === shl_byte by definition */
- sar_byte,
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc0
-****************************************************************************/
-static void
-x86emuOp_opcC0_byte_RM_MEM(struct X86EMU *emu)
-{
- uint8_t destval, amt;
-
- /*
- * Yet another weirdo special case instruction format. Part of
- * the opcode held below in "RH". Doubly nested case would
- * result, except that the decoded instruction
- */
- fetch_decode_modrm(emu);
- /* know operation, decode the mod byte to find the addressing mode. */
- destval = decode_and_fetch_byte_imm8(emu, &amt);
- destval = (*opcD0_byte_operation[emu->cur_rh]) (emu, destval, amt);
- write_back_byte(emu, destval);
-}
-/* used by opcodes c1, d1, and d3. */
-static
-uint16_t(* const opcD1_word_operation[]) (struct X86EMU *, uint16_t s, uint8_t d) =
-{
- rol_word,
- ror_word,
- rcl_word,
- rcr_word,
- shl_word,
- shr_word,
- shl_word, /* sal_byte === shl_byte by definition */
- sar_word,
- };
-/* used by opcodes c1, d1, and d3. */
-static
-uint32_t(* const opcD1_long_operation[]) (struct X86EMU *, uint32_t s, uint8_t d) =
-{
- rol_long,
- ror_long,
- rcl_long,
- rcr_long,
- shl_long,
- shr_long,
- shl_long, /* sal_byte === shl_byte by definition */
- sar_long,
- };
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc1
-****************************************************************************/
-static void
-x86emuOp_opcC1_word_RM_MEM(struct X86EMU *emu)
-{
- uint8_t amt;
-
- /*
- * Yet another weirdo special case instruction format. Part of
- * the opcode held below in "RH". Doubly nested case would
- * result, except that the decoded instruction
- */
- fetch_decode_modrm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t destval;
-
- destval = decode_and_fetch_long_imm8(emu, &amt);
- destval = (*opcD1_long_operation[emu->cur_rh]) (emu, destval, amt);
- write_back_long(emu, destval);
- } else {
- uint16_t destval;
-
- destval = decode_and_fetch_word_imm8(emu, &amt);
- destval = (*opcD1_word_operation[emu->cur_rh]) (emu, destval, amt);
- write_back_word(emu, destval);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc2
-****************************************************************************/
-static void
-x86emuOp_ret_near_IMM(struct X86EMU *emu)
-{
- uint16_t imm;
-
- imm = fetch_word_imm(emu);
- emu->x86.R_IP = pop_word(emu);
- emu->x86.R_SP += imm;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc6
-****************************************************************************/
-static void
-x86emuOp_mov_byte_RM_IMM(struct X86EMU *emu)
-{
- uint8_t *destreg;
- uint32_t destoffset;
- uint8_t imm;
-
- fetch_decode_modrm(emu);
- if (emu->cur_rh != 0)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- imm = fetch_byte_imm(emu);
- store_data_byte(emu, destoffset, imm);
- } else {
- destreg = decode_rl_byte_register(emu);
- imm = fetch_byte_imm(emu);
- *destreg = imm;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc7
-****************************************************************************/
-static void
-x86emuOp32_mov_word_RM_IMM(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint32_t imm, *destreg;
-
- fetch_decode_modrm(emu);
- if (emu->cur_rh != 0)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- imm = fetch_long_imm(emu);
- store_data_long(emu, destoffset, imm);
- } else {
- destreg = decode_rl_long_register(emu);
- imm = fetch_long_imm(emu);
- *destreg = imm;
- }
-}
-
-static void
-x86emuOp16_mov_word_RM_IMM(struct X86EMU *emu)
-{
- uint32_t destoffset;
- uint16_t imm, *destreg;
-
- fetch_decode_modrm(emu);
- if (emu->cur_rh != 0)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- imm = fetch_word_imm(emu);
- store_data_word(emu, destoffset, imm);
- } else {
- destreg = decode_rl_word_register(emu);
- imm = fetch_word_imm(emu);
- *destreg = imm;
- }
-}
-
-static void
-x86emuOp_mov_word_RM_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_mov_word_RM_IMM(emu);
- else
- x86emuOp16_mov_word_RM_IMM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc8
-****************************************************************************/
-static void
-x86emuOp_enter(struct X86EMU *emu)
-{
- uint16_t local, frame_pointer;
- uint8_t nesting;
- int i;
-
- local = fetch_word_imm(emu);
- nesting = fetch_byte_imm(emu);
- push_word(emu, emu->x86.R_BP);
- frame_pointer = emu->x86.R_SP;
- if (nesting > 0) {
- for (i = 1; i < nesting; i++) {
- emu->x86.R_BP -= 2;
- push_word(emu, fetch_word(emu, emu->x86.R_SS, emu->x86.R_BP));
- }
- push_word(emu, frame_pointer);
- }
- emu->x86.R_BP = frame_pointer;
- emu->x86.R_SP = (uint16_t) (emu->x86.R_SP - local);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xc9
-****************************************************************************/
-static void
-x86emuOp_leave(struct X86EMU *emu)
-{
- emu->x86.R_SP = emu->x86.R_BP;
- emu->x86.R_BP = pop_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xca
-****************************************************************************/
-static void
-x86emuOp_ret_far_IMM(struct X86EMU *emu)
-{
- uint16_t imm;
-
- imm = fetch_word_imm(emu);
- emu->x86.R_IP = pop_word(emu);
- emu->x86.R_CS = pop_word(emu);
- emu->x86.R_SP += imm;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xcb
-****************************************************************************/
-static void
-x86emuOp_ret_far(struct X86EMU *emu)
-{
- emu->x86.R_IP = pop_word(emu);
- emu->x86.R_CS = pop_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xcc
-****************************************************************************/
-static void
-x86emuOp_int3(struct X86EMU *emu)
-{
- x86emu_intr_dispatch(emu, 3);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xcd
-****************************************************************************/
-static void
-x86emuOp_int_IMM(struct X86EMU *emu)
-{
- uint8_t intnum;
-
- intnum = fetch_byte_imm(emu);
- x86emu_intr_dispatch(emu, intnum);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xce
-****************************************************************************/
-static void
-x86emuOp_into(struct X86EMU *emu)
-{
- if (ACCESS_FLAG(F_OF))
- x86emu_intr_dispatch(emu, 4);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xcf
-****************************************************************************/
-static void
-x86emuOp_iret(struct X86EMU *emu)
-{
- emu->x86.R_IP = pop_word(emu);
- emu->x86.R_CS = pop_word(emu);
- emu->x86.R_FLG = pop_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd0
-****************************************************************************/
-static void
-x86emuOp_opcD0_byte_RM_1(struct X86EMU *emu)
-{
- uint8_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_byte(emu);
- destval = (*opcD0_byte_operation[emu->cur_rh]) (emu, destval, 1);
- write_back_byte(emu, destval);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd1
-****************************************************************************/
-static void
-x86emuOp_opcD1_word_RM_1(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_long(emu);
- destval = (*opcD1_long_operation[emu->cur_rh]) (emu, destval, 1);
- write_back_long(emu, destval);
- } else {
- uint16_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_word(emu);
- destval = (*opcD1_word_operation[emu->cur_rh]) (emu, destval, 1);
- write_back_word(emu, destval);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd2
-****************************************************************************/
-static void
-x86emuOp_opcD2_byte_RM_CL(struct X86EMU *emu)
-{
- uint8_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_byte(emu);
- destval = (*opcD0_byte_operation[emu->cur_rh]) (emu, destval, emu->x86.R_CL);
- write_back_byte(emu, destval);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd3
-****************************************************************************/
-static void
-x86emuOp_opcD3_word_RM_CL(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- uint32_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_long(emu);
- destval = (*opcD1_long_operation[emu->cur_rh]) (emu, destval, emu->x86.R_CL);
- write_back_long(emu, destval);
- } else {
- uint16_t destval;
-
- fetch_decode_modrm(emu);
- destval = decode_and_fetch_word(emu);
- destval = (*opcD1_word_operation[emu->cur_rh]) (emu, destval, emu->x86.R_CL);
- write_back_word(emu, destval);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd4
-****************************************************************************/
-static void
-x86emuOp_aam(struct X86EMU *emu)
-{
- uint8_t a;
-
- a = fetch_byte_imm(emu); /* this is a stupid encoding. */
- if (a != 10) {
- /* fix: add base decoding aam_word(uint8_t val, int base a) */
- dbg("unexpected encoding %d\r\n", a);
- X86EMU_halt_sys(emu);
- }
- /* note the type change here --- returning AL and AH in AX. */
- emu->x86.R_AX = aam_word(emu, emu->x86.R_AL);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd5
-****************************************************************************/
-static void
-x86emuOp_aad(struct X86EMU *emu)
-{
- uint8_t a;
-
- a = fetch_byte_imm(emu);
- if (a != 10) {
- /* fix: add base decoding aad_word(uint16_t val, int base a) */
- dbg("unexpected encoding %d\r\n", a);
- X86EMU_halt_sys(emu);
- }
- emu->x86.R_AX = aad_word(emu, emu->x86.R_AX);
-}
-/* opcode 0xd6 ILLEGAL OPCODE */
-
-/****************************************************************************
-REMARKS:
-Handles opcode 0xd7
-****************************************************************************/
-static void
-x86emuOp_xlat(struct X86EMU *emu)
-{
- uint16_t addr;
-
- addr = (uint16_t) (emu->x86.R_BX + (uint8_t) emu->x86.R_AL);
- emu->x86.R_AL = fetch_data_byte(emu, addr);
-}
-
-/* opcode=0xd8 */
-static void
-x86emuOp_esc_coprocess_d8(struct X86EMU *emu)
-{
-}
-/* opcode=0xd9 */
-static void
-x86emuOp_esc_coprocess_d9(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xda */
-static void
-x86emuOp_esc_coprocess_da(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xdb */
-static void
-x86emuOp_esc_coprocess_db(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xdc */
-static void
-x86emuOp_esc_coprocess_dc(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xdd */
-static void
-x86emuOp_esc_coprocess_dd(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xde */
-static void
-x86emuOp_esc_coprocess_de(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-/* opcode=0xdf */
-static void
-x86emuOp_esc_coprocess_df(struct X86EMU *emu)
-{
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3)
- decode_rl_address(emu);
-}
-
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe0
-****************************************************************************/
-static void
-x86emuOp_loopne(struct X86EMU *emu)
-{
- int16_t ip;
-
- ip = (int8_t) fetch_byte_imm(emu);
- ip += (int16_t) emu->x86.R_IP;
- emu->x86.R_CX -= 1;
- if (emu->x86.R_CX != 0 && !ACCESS_FLAG(F_ZF)) /* CX != 0 and !ZF */
- emu->x86.R_IP = ip;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe1
-****************************************************************************/
-static void
-x86emuOp_loope(struct X86EMU *emu)
-{
- int16_t ip;
-
- ip = (int8_t) fetch_byte_imm(emu);
- ip += (int16_t) emu->x86.R_IP;
- emu->x86.R_CX -= 1;
- if (emu->x86.R_CX != 0 && ACCESS_FLAG(F_ZF)) /* CX != 0 and ZF */
- emu->x86.R_IP = ip;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe2
-****************************************************************************/
-static void
-x86emuOp_loop(struct X86EMU *emu)
-{
- int16_t ip;
-
- ip = (int8_t) fetch_byte_imm(emu);
- ip += (int16_t) emu->x86.R_IP;
- emu->x86.R_CX -= 1;
- if (emu->x86.R_CX != 0)
- emu->x86.R_IP = ip;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe3
-****************************************************************************/
-static void
-x86emuOp_jcxz(struct X86EMU *emu)
-{
- uint16_t target;
- int8_t offset;
-
- /* jump to byte offset if overflow flag is set */
- offset = (int8_t) fetch_byte_imm(emu);
- target = (uint16_t) (emu->x86.R_IP + offset);
- if (emu->x86.R_CX == 0)
- emu->x86.R_IP = target;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe4
-****************************************************************************/
-static void
-x86emuOp_in_byte_AL_IMM(struct X86EMU *emu)
-{
- uint8_t port;
-
- port = (uint8_t) fetch_byte_imm(emu);
- emu->x86.R_AL = (*emu->emu_inb) (emu, port);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe5
-****************************************************************************/
-static void
-x86emuOp_in_word_AX_IMM(struct X86EMU *emu)
-{
- uint8_t port;
-
- port = (uint8_t) fetch_byte_imm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EAX = (*emu->emu_inl) (emu, port);
- } else {
- emu->x86.R_AX = (*emu->emu_inw) (emu, port);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe6
-****************************************************************************/
-static void
-x86emuOp_out_byte_IMM_AL(struct X86EMU *emu)
-{
- uint8_t port;
-
- port = (uint8_t) fetch_byte_imm(emu);
- (*emu->emu_outb) (emu, port, emu->x86.R_AL);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe7
-****************************************************************************/
-static void
-x86emuOp_out_word_IMM_AX(struct X86EMU *emu)
-{
- uint8_t port;
-
- port = (uint8_t) fetch_byte_imm(emu);
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- (*emu->emu_outl) (emu, port, emu->x86.R_EAX);
- } else {
- (*emu->emu_outw) (emu, port, emu->x86.R_AX);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe8
-****************************************************************************/
-static void
-x86emuOp_call_near_IMM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- int32_t ip;
- ip = (int32_t) fetch_long_imm(emu);
- ip += (int32_t) emu->x86.R_EIP;
- push_long(emu, emu->x86.R_EIP);
- emu->x86.R_EIP = ip;
- } else {
- int16_t ip;
- ip = (int16_t) fetch_word_imm(emu);
- ip += (int16_t) emu->x86.R_IP; /* CHECK SIGN */
- push_word(emu, emu->x86.R_IP);
- emu->x86.R_IP = ip;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xe9
-****************************************************************************/
-static void
-x86emuOp_jump_near_IMM(struct X86EMU *emu)
-{
- int ip;
-
- ip = (int16_t) fetch_word_imm(emu);
- ip += (int16_t) emu->x86.R_IP;
- emu->x86.R_IP = (uint16_t) ip;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xea
-****************************************************************************/
-static void
-x86emuOp_jump_far_IMM(struct X86EMU *emu)
-{
- uint16_t cs, ip;
-
- ip = fetch_word_imm(emu);
- cs = fetch_word_imm(emu);
- emu->x86.R_IP = ip;
- emu->x86.R_CS = cs;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xeb
-****************************************************************************/
-static void
-x86emuOp_jump_byte_IMM(struct X86EMU *emu)
-{
- uint16_t target;
- int8_t offset;
-
- offset = (int8_t) fetch_byte_imm(emu);
- target = (uint16_t) (emu->x86.R_IP + offset);
- emu->x86.R_IP = target;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xec
-****************************************************************************/
-static void
-x86emuOp_in_byte_AL_DX(struct X86EMU *emu)
-{
- emu->x86.R_AL = (*emu->emu_inb) (emu, emu->x86.R_DX);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xed
-****************************************************************************/
-static void
-x86emuOp_in_word_AX_DX(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_EAX = (*emu->emu_inl) (emu, emu->x86.R_DX);
- } else {
- emu->x86.R_AX = (*emu->emu_inw) (emu, emu->x86.R_DX);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xee
-****************************************************************************/
-static void
-x86emuOp_out_byte_DX_AL(struct X86EMU *emu)
-{
- (*emu->emu_outb) (emu, emu->x86.R_DX, emu->x86.R_AL);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xef
-****************************************************************************/
-static void
-x86emuOp_out_word_DX_AX(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- (*emu->emu_outl) (emu, emu->x86.R_DX, emu->x86.R_EAX);
- } else {
- (*emu->emu_outw) (emu, emu->x86.R_DX, emu->x86.R_AX);
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xf0
-****************************************************************************/
-static void
-x86emuOp_lock(struct X86EMU *emu)
-{
-}
-/*opcode 0xf1 ILLEGAL OPERATION */
-
-/****************************************************************************
-REMARKS:
-Handles opcode 0xf5
-****************************************************************************/
-static void
-x86emuOp_cmc(struct X86EMU *emu)
-{
- if (ACCESS_FLAG(F_CF))
- CLEAR_FLAG(F_CF);
- else
- SET_FLAG(F_CF);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xf6
-****************************************************************************/
-static void
-x86emuOp_opcF6_byte_RM(struct X86EMU *emu)
-{
- uint8_t destval, srcval;
-
- /* long, drawn out code follows. Double switch for a total of 32
- * cases. */
- fetch_decode_modrm(emu);
- if (emu->cur_rh == 1)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- if (emu->cur_rh == 0) {
- destval = decode_and_fetch_byte_imm8(emu, &srcval);
- test_byte(emu, destval, srcval);
- return;
- }
- destval = decode_and_fetch_byte(emu);
- switch (emu->cur_rh) {
- case 2:
- destval = ~destval;
- write_back_byte(emu, destval);
- break;
- case 3:
- destval = neg_byte(emu, destval);
- write_back_byte(emu, destval);
- break;
- case 4:
- mul_byte(emu, destval);
- break;
- case 5:
- imul_byte(emu, destval);
- break;
- case 6:
- div_byte(emu, destval);
- break;
- case 7:
- idiv_byte(emu, destval);
- break;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xf7
-****************************************************************************/
-static void
-x86emuOp32_opcF7_word_RM(struct X86EMU *emu)
-{
- uint32_t destval, srcval;
-
- /* long, drawn out code follows. Double switch for a total of 32
- * cases. */
- fetch_decode_modrm(emu);
- if (emu->cur_rh == 1)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- if (emu->cur_rh == 0) {
- if (emu->cur_mod != 3) {
- uint32_t destoffset;
-
- destoffset = decode_rl_address(emu);
- srcval = fetch_long_imm(emu);
- destval = fetch_data_long(emu, destoffset);
- } else {
- srcval = fetch_long_imm(emu);
- destval = *decode_rl_long_register(emu);
- }
- test_long(emu, destval, srcval);
- return;
- }
- destval = decode_and_fetch_long(emu);
- switch (emu->cur_rh) {
- case 2:
- destval = ~destval;
- write_back_long(emu, destval);
- break;
- case 3:
- destval = neg_long(emu, destval);
- write_back_long(emu, destval);
- break;
- case 4:
- mul_long(emu, destval);
- break;
- case 5:
- imul_long(emu, destval);
- break;
- case 6:
- div_long(emu, destval);
- break;
- case 7:
- idiv_long(emu, destval);
- break;
- }
-}
-static void
-x86emuOp16_opcF7_word_RM(struct X86EMU *emu)
-{
- uint16_t destval, srcval;
-
- /* long, drawn out code follows. Double switch for a total of 32
- * cases. */
- fetch_decode_modrm(emu);
- if (emu->cur_rh == 1)
- {
- dbg("unexpected encoding %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- if (emu->cur_rh == 0) {
- if (emu->cur_mod != 3) {
- uint32_t destoffset;
-
- destoffset = decode_rl_address(emu);
- srcval = fetch_word_imm(emu);
- destval = fetch_data_word(emu, destoffset);
- } else {
- srcval = fetch_word_imm(emu);
- destval = *decode_rl_word_register(emu);
- }
- test_word(emu, destval, srcval);
- return;
- }
- destval = decode_and_fetch_word(emu);
- switch (emu->cur_rh) {
- case 2:
- destval = ~destval;
- write_back_word(emu, destval);
- break;
- case 3:
- destval = neg_word(emu, destval);
- write_back_word(emu, destval);
- break;
- case 4:
- mul_word(emu, destval);
- break;
- case 5:
- imul_word(emu, destval);
- break;
- case 6:
- div_word(emu, destval);
- break;
- case 7:
- idiv_word(emu, destval);
- break;
- }
-}
-static void
-x86emuOp_opcF7_word_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_opcF7_word_RM(emu);
- else
- x86emuOp16_opcF7_word_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xfe
-****************************************************************************/
-static void
-x86emuOp_opcFE_byte_RM(struct X86EMU *emu)
-{
- uint8_t destval;
- uint32_t destoffset;
- uint8_t *destreg;
-
- /* Yet another special case instruction. */
- fetch_decode_modrm(emu);
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- switch (emu->cur_rh) {
- case 0: /* inc word ptr ... */
- destval = fetch_data_byte(emu, destoffset);
- destval = inc_byte(emu, destval);
- store_data_byte(emu, destoffset, destval);
- break;
- case 1: /* dec word ptr ... */
- destval = fetch_data_byte(emu, destoffset);
- destval = dec_byte(emu, destval);
- store_data_byte(emu, destoffset, destval);
- break;
- }
- } else {
- destreg = decode_rl_byte_register(emu);
- switch (emu->cur_rh) {
- case 0:
- *destreg = inc_byte(emu, *destreg);
- break;
- case 1:
- *destreg = dec_byte(emu, *destreg);
- break;
- }
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0xff
-****************************************************************************/
-static void
-x86emuOp32_opcFF_word_RM(struct X86EMU *emu)
-{
- uint32_t destoffset = 0;
- uint32_t destval, *destreg;
-
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_long(emu, destoffset);
- switch (emu->cur_rh) {
- case 0: /* inc word ptr ... */
- destval = inc_long(emu, destval);
- store_data_long(emu, destoffset, destval);
- break;
- case 1: /* dec word ptr ... */
- destval = dec_long(emu, destval);
- store_data_long(emu, destoffset, destval);
- break;
- case 6: /* push word ptr ... */
- push_long(emu, destval);
- break;
- }
- } else {
- destreg = decode_rl_long_register(emu);
- switch (emu->cur_rh) {
- case 0:
- *destreg = inc_long(emu, *destreg);
- break;
- case 1:
- *destreg = dec_long(emu, *destreg);
- break;
- case 6:
- push_long(emu, *destreg);
- break;
- }
- }
-}
-
-static void
-x86emuOp16_opcFF_word_RM(struct X86EMU *emu)
-{
- uint32_t destoffset = 0;
- uint16_t *destreg;
- uint16_t destval;
-
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_word(emu, destoffset);
- switch (emu->cur_rh) {
- case 0:
- destval = inc_word(emu, destval);
- store_data_word(emu, destoffset, destval);
- break;
- case 1: /* dec word ptr ... */
- destval = dec_word(emu, destval);
- store_data_word(emu, destoffset, destval);
- break;
- case 6: /* push word ptr ... */
- push_word(emu, destval);
- break;
- }
- } else {
- destreg = decode_rl_word_register(emu);
- switch (emu->cur_rh) {
- case 0:
- *destreg = inc_word(emu, *destreg);
- break;
- case 1:
- *destreg = dec_word(emu, *destreg);
- break;
- case 6:
- push_word(emu, *destreg);
- break;
- }
- }
-}
-
-static void
-x86emuOp_opcFF_word_RM(struct X86EMU *emu)
-{
- uint32_t destoffset = 0;
- uint16_t destval, destval2;
-
- /* Yet another special case instruction. */
- fetch_decode_modrm(emu);
- if ((emu->cur_mod == 3 && (emu->cur_rh == 3 || emu->cur_rh == 5)) || emu->cur_rh == 7)
- {
- dbg("unexpected mode %d, %d\r\n", emu->cur_mod, emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
- if (emu->cur_rh == 0 || emu->cur_rh == 1 || emu->cur_rh == 6) {
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp32_opcFF_word_RM(emu);
- else
- x86emuOp16_opcFF_word_RM(emu);
- return;
- }
-
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- destval = fetch_data_word(emu, destoffset);
- switch (emu->cur_rh) {
- case 3: /* call far ptr ... */
- destval2 = fetch_data_word(emu, destoffset + 2);
- push_word(emu, emu->x86.R_CS);
- emu->x86.R_CS = destval2;
- push_word(emu, emu->x86.R_IP);
- emu->x86.R_IP = destval;
- break;
- case 5: /* jmp far ptr ... */
- destval2 = fetch_data_word(emu, destoffset + 2);
- emu->x86.R_IP = destval;
- emu->x86.R_CS = destval2;
- break;
- }
- } else {
- destval = *decode_rl_word_register(emu);
- }
-
- switch (emu->cur_rh) {
- case 2: /* call word ptr */
- push_word(emu, emu->x86.R_IP);
- emu->x86.R_IP = destval;
- break;
- case 4: /* jmp */
- emu->x86.R_IP = destval;
- break;
- }
-}
-/***************************************************************************
- * Single byte operation code table:
- **************************************************************************/
-static void
-X86EMU_exec_one_byte(struct X86EMU * emu)
-{
- uint8_t op1;
-
- op1 = fetch_byte_imm(emu);
-
- switch (op1) {
- case 0x00:
- common_binop_byte_rm_r(emu, add_byte);
- break;
- case 0x01:
- common_binop_word_long_rm_r(emu, add_word, add_long);
- break;
- case 0x02:
- common_binop_byte_r_rm(emu, add_byte);
- break;
- case 0x03:
- common_binop_word_long_r_rm(emu, add_word, add_long);
- break;
- case 0x04:
- common_binop_byte_imm(emu, add_byte);
- break;
- case 0x05:
- common_binop_word_long_imm(emu, add_word, add_long);
- break;
- case 0x06:
- push_word(emu, emu->x86.R_ES);
- break;
- case 0x07:
- emu->x86.R_ES = pop_word(emu);
- break;
-
- case 0x08:
- common_binop_byte_rm_r(emu, or_byte);
- break;
- case 0x09:
- common_binop_word_long_rm_r(emu, or_word, or_long);
- break;
- case 0x0a:
- common_binop_byte_r_rm(emu, or_byte);
- break;
- case 0x0b:
- common_binop_word_long_r_rm(emu, or_word, or_long);
- break;
- case 0x0c:
- common_binop_byte_imm(emu, or_byte);
- break;
- case 0x0d:
- common_binop_word_long_imm(emu, or_word, or_long);
- break;
- case 0x0e:
- push_word(emu, emu->x86.R_CS);
- break;
- case 0x0f:
- X86EMU_exec_two_byte(emu);
- break;
-
- case 0x10:
- common_binop_byte_rm_r(emu, adc_byte);
- break;
- case 0x11:
- common_binop_word_long_rm_r(emu, adc_word, adc_long);
- break;
- case 0x12:
- common_binop_byte_r_rm(emu, adc_byte);
- break;
- case 0x13:
- common_binop_word_long_r_rm(emu, adc_word, adc_long);
- break;
- case 0x14:
- common_binop_byte_imm(emu, adc_byte);
- break;
- case 0x15:
- common_binop_word_long_imm(emu, adc_word, adc_long);
- break;
- case 0x16:
- push_word(emu, emu->x86.R_SS);
- break;
- case 0x17:
- emu->x86.R_SS = pop_word(emu);
- break;
-
- case 0x18:
- common_binop_byte_rm_r(emu, sbb_byte);
- break;
- case 0x19:
- common_binop_word_long_rm_r(emu, sbb_word, sbb_long);
- break;
- case 0x1a:
- common_binop_byte_r_rm(emu, sbb_byte);
- break;
- case 0x1b:
- common_binop_word_long_r_rm(emu, sbb_word, sbb_long);
- break;
- case 0x1c:
- common_binop_byte_imm(emu, sbb_byte);
- break;
- case 0x1d:
- common_binop_word_long_imm(emu, sbb_word, sbb_long);
- break;
- case 0x1e:
- push_word(emu, emu->x86.R_DS);
- break;
- case 0x1f:
- emu->x86.R_DS = pop_word(emu);
- break;
-
- case 0x20:
- common_binop_byte_rm_r(emu, and_byte);
- break;
- case 0x21:
- common_binop_word_long_rm_r(emu, and_word, and_long);
- break;
- case 0x22:
- common_binop_byte_r_rm(emu, and_byte);
- break;
- case 0x23:
- common_binop_word_long_r_rm(emu, and_word, and_long);
- break;
- case 0x24:
- common_binop_byte_imm(emu, and_byte);
- break;
- case 0x25:
- common_binop_word_long_imm(emu, and_word, and_long);
- break;
- case 0x26:
- emu->x86.mode |= SYSMODE_SEGOVR_ES;
- break;
- case 0x27:
- emu->x86.R_AL = daa_byte(emu, emu->x86.R_AL);
- break;
-
- case 0x28:
- common_binop_byte_rm_r(emu, sub_byte);
- break;
- case 0x29:
- common_binop_word_long_rm_r(emu, sub_word, sub_long);
- break;
- case 0x2a:
- common_binop_byte_r_rm(emu, sub_byte);
- break;
- case 0x2b:
- common_binop_word_long_r_rm(emu, sub_word, sub_long);
- break;
- case 0x2c:
- common_binop_byte_imm(emu, sub_byte);
- break;
- case 0x2d:
- common_binop_word_long_imm(emu, sub_word, sub_long);
- break;
- case 0x2e:
- emu->x86.mode |= SYSMODE_SEGOVR_CS;
- break;
- case 0x2f:
- emu->x86.R_AL = das_byte(emu, emu->x86.R_AL);
- break;
-
- case 0x30:
- common_binop_byte_rm_r(emu, xor_byte);
- break;
- case 0x31:
- common_binop_word_long_rm_r(emu, xor_word, xor_long);
- break;
- case 0x32:
- common_binop_byte_r_rm(emu, xor_byte);
- break;
- case 0x33:
- common_binop_word_long_r_rm(emu, xor_word, xor_long);
- break;
- case 0x34:
- common_binop_byte_imm(emu, xor_byte);
- break;
- case 0x35:
- common_binop_word_long_imm(emu, xor_word, xor_long);
- break;
- case 0x36:
- emu->x86.mode |= SYSMODE_SEGOVR_SS;
- break;
- case 0x37:
- emu->x86.R_AX = aaa_word(emu, emu->x86.R_AX);
- break;
-
- case 0x38:
- common_binop_ns_byte_rm_r(emu, cmp_byte_no_return);
- break;
- case 0x39:
- common_binop_ns_word_long_rm_r(emu, cmp_word_no_return,
- cmp_long_no_return);
- break;
- case 0x3a:
- x86emuOp_cmp_byte_R_RM(emu);
- break;
- case 0x3b:
- x86emuOp_cmp_word_R_RM(emu);
- break;
- case 0x3c:
- x86emuOp_cmp_byte_AL_IMM(emu);
- break;
- case 0x3d:
- x86emuOp_cmp_word_AX_IMM(emu);
- break;
- case 0x3e:
- emu->x86.mode |= SYSMODE_SEGOVR_DS;
- break;
- case 0x3f:
- emu->x86.R_AX = aas_word(emu, emu->x86.R_AX);
- break;
-
- case 0x40:
- common_inc_word_long(emu, &emu->x86.register_a);
- break;
- case 0x41:
- common_inc_word_long(emu, &emu->x86.register_c);
- break;
- case 0x42:
- common_inc_word_long(emu, &emu->x86.register_d);
- break;
- case 0x43:
- common_inc_word_long(emu, &emu->x86.register_b);
- break;
- case 0x44:
- common_inc_word_long(emu, &emu->x86.register_sp);
- break;
- case 0x45:
- common_inc_word_long(emu, &emu->x86.register_bp);
- break;
- case 0x46:
- common_inc_word_long(emu, &emu->x86.register_si);
- break;
- case 0x47:
- common_inc_word_long(emu, &emu->x86.register_di);
- break;
-
- case 0x48:
- common_dec_word_long(emu, &emu->x86.register_a);
- break;
- case 0x49:
- common_dec_word_long(emu, &emu->x86.register_c);
- break;
- case 0x4a:
- common_dec_word_long(emu, &emu->x86.register_d);
- break;
- case 0x4b:
- common_dec_word_long(emu, &emu->x86.register_b);
- break;
- case 0x4c:
- common_dec_word_long(emu, &emu->x86.register_sp);
- break;
- case 0x4d:
- common_dec_word_long(emu, &emu->x86.register_bp);
- break;
- case 0x4e:
- common_dec_word_long(emu, &emu->x86.register_si);
- break;
- case 0x4f:
- common_dec_word_long(emu, &emu->x86.register_di);
- break;
-
- case 0x50:
- common_push_word_long(emu, &emu->x86.register_a);
- break;
- case 0x51:
- common_push_word_long(emu, &emu->x86.register_c);
- break;
- case 0x52:
- common_push_word_long(emu, &emu->x86.register_d);
- break;
- case 0x53:
- common_push_word_long(emu, &emu->x86.register_b);
- break;
- case 0x54:
- common_push_word_long(emu, &emu->x86.register_sp);
- break;
- case 0x55:
- common_push_word_long(emu, &emu->x86.register_bp);
- break;
- case 0x56:
- common_push_word_long(emu, &emu->x86.register_si);
- break;
- case 0x57:
- common_push_word_long(emu, &emu->x86.register_di);
- break;
-
- case 0x58:
- common_pop_word_long(emu, &emu->x86.register_a);
- break;
- case 0x59:
- common_pop_word_long(emu, &emu->x86.register_c);
- break;
- case 0x5a:
- common_pop_word_long(emu, &emu->x86.register_d);
- break;
- case 0x5b:
- common_pop_word_long(emu, &emu->x86.register_b);
- break;
- case 0x5c:
- common_pop_word_long(emu, &emu->x86.register_sp);
- break;
- case 0x5d:
- common_pop_word_long(emu, &emu->x86.register_bp);
- break;
- case 0x5e:
- common_pop_word_long(emu, &emu->x86.register_si);
- break;
- case 0x5f:
- common_pop_word_long(emu, &emu->x86.register_di);
- break;
-
- case 0x60:
- x86emuOp_push_all(emu);
- break;
- case 0x61:
- x86emuOp_pop_all(emu);
- break;
- /* 0x62 bound */
- /* 0x63 arpl */
- case 0x64:
- emu->x86.mode |= SYSMODE_SEGOVR_FS;
- break;
- case 0x65:
- emu->x86.mode |= SYSMODE_SEGOVR_GS;
- break;
- case 0x66:
- emu->x86.mode |= SYSMODE_PREFIX_DATA;
- break;
- case 0x67:
- emu->x86.mode |= SYSMODE_PREFIX_ADDR;
- break;
-
- case 0x68:
- x86emuOp_push_word_IMM(emu);
- break;
- case 0x69:
- common_imul_imm(emu, false);
- break;
- case 0x6a:
- x86emuOp_push_byte_IMM(emu);
- break;
- case 0x6b:
- common_imul_imm(emu, true);
- break;
- case 0x6c:
- ins(emu, 1);
- break;
- case 0x6d:
- x86emuOp_ins_word(emu);
- break;
- case 0x6e:
- outs(emu, 1);
- break;
- case 0x6f:
- x86emuOp_outs_word(emu);
- break;
-
- case 0x70:
- common_jmp_near(emu, ACCESS_FLAG(F_OF));
- break;
- case 0x71:
- common_jmp_near(emu, !ACCESS_FLAG(F_OF));
- break;
- case 0x72:
- common_jmp_near(emu, ACCESS_FLAG(F_CF));
- break;
- case 0x73:
- common_jmp_near(emu, !ACCESS_FLAG(F_CF));
- break;
- case 0x74:
- common_jmp_near(emu, ACCESS_FLAG(F_ZF));
- break;
- case 0x75:
- common_jmp_near(emu, !ACCESS_FLAG(F_ZF));
- break;
- case 0x76:
- common_jmp_near(emu, ACCESS_FLAG(F_CF) || ACCESS_FLAG(F_ZF));
- break;
- case 0x77:
- common_jmp_near(emu, !ACCESS_FLAG(F_CF) && !ACCESS_FLAG(F_ZF));
- break;
-
- case 0x78:
- common_jmp_near(emu, ACCESS_FLAG(F_SF));
- break;
- case 0x79:
- common_jmp_near(emu, !ACCESS_FLAG(F_SF));
- break;
- case 0x7a:
- common_jmp_near(emu, ACCESS_FLAG(F_PF));
- break;
- case 0x7b:
- common_jmp_near(emu, !ACCESS_FLAG(F_PF));
- break;
- case 0x7c:
- x86emuOp_jump_near_L(emu);
- break;
- case 0x7d:
- x86emuOp_jump_near_NL(emu);
- break;
- case 0x7e:
- x86emuOp_jump_near_LE(emu);
- break;
- case 0x7f:
- x86emuOp_jump_near_NLE(emu);
- break;
-
- case 0x80:
- x86emuOp_opc80_byte_RM_IMM(emu);
- break;
- case 0x81:
- x86emuOp_opc81_word_RM_IMM(emu);
- break;
- case 0x82:
- x86emuOp_opc82_byte_RM_IMM(emu);
- break;
- case 0x83:
- x86emuOp_opc83_word_RM_IMM(emu);
- break;
- case 0x84:
- common_binop_ns_byte_rm_r(emu, test_byte);
- break;
- case 0x85:
- common_binop_ns_word_long_rm_r(emu, test_word, test_long);
- break;
- case 0x86:
- x86emuOp_xchg_byte_RM_R(emu);
- break;
- case 0x87:
- x86emuOp_xchg_word_RM_R(emu);
- break;
-
- case 0x88:
- x86emuOp_mov_byte_RM_R(emu);
- break;
- case 0x89:
- x86emuOp_mov_word_RM_R(emu);
- break;
- case 0x8a:
- x86emuOp_mov_byte_R_RM(emu);
- break;
- case 0x8b:
- x86emuOp_mov_word_R_RM(emu);
- break;
- case 0x8c:
- x86emuOp_mov_word_RM_SR(emu);
- break;
- case 0x8d:
- x86emuOp_lea_word_R_M(emu);
- break;
- case 0x8e:
- x86emuOp_mov_word_SR_RM(emu);
- break;
- case 0x8f:
- x86emuOp_pop_RM(emu);
- break;
-
- case 0x90:
- /* nop */
- break;
- case 0x91:
- x86emuOp_xchg_word_AX_CX(emu);
- break;
- case 0x92:
- x86emuOp_xchg_word_AX_DX(emu);
- break;
- case 0x93:
- x86emuOp_xchg_word_AX_BX(emu);
- break;
- case 0x94:
- x86emuOp_xchg_word_AX_SP(emu);
- break;
- case 0x95:
- x86emuOp_xchg_word_AX_BP(emu);
- break;
- case 0x96:
- x86emuOp_xchg_word_AX_SI(emu);
- break;
- case 0x97:
- x86emuOp_xchg_word_AX_DI(emu);
- break;
-
- case 0x98:
- x86emuOp_cbw(emu);
- break;
- case 0x99:
- x86emuOp_cwd(emu);
- break;
- case 0x9a:
- x86emuOp_call_far_IMM(emu);
- break;
- case 0x9b:
- /* wait */
- break;
- case 0x9c:
- x86emuOp_pushf_word(emu);
- break;
- case 0x9d:
- x86emuOp_popf_word(emu);
- break;
- case 0x9e:
- x86emuOp_sahf(emu);
- break;
- case 0x9f:
- x86emuOp_lahf(emu);
- break;
-
- case 0xa0:
- x86emuOp_mov_AL_M_IMM(emu);
- break;
- case 0xa1:
- x86emuOp_mov_AX_M_IMM(emu);
- break;
- case 0xa2:
- x86emuOp_mov_M_AL_IMM(emu);
- break;
- case 0xa3:
- x86emuOp_mov_M_AX_IMM(emu);
- break;
- case 0xa4:
- x86emuOp_movs_byte(emu);
- break;
- case 0xa5:
- x86emuOp_movs_word(emu);
- break;
- case 0xa6:
- x86emuOp_cmps_byte(emu);
- break;
- case 0xa7:
- x86emuOp_cmps_word(emu);
- break;
-
- case 0xa8:
- test_byte(emu, emu->x86.R_AL, fetch_byte_imm(emu));
- break;
- case 0xa9:
- x86emuOp_test_AX_IMM(emu);
- break;
- case 0xaa:
- x86emuOp_stos_byte(emu);
- break;
- case 0xab:
- x86emuOp_stos_word(emu);
- break;
- case 0xac:
- x86emuOp_lods_byte(emu);
- break;
- case 0xad:
- x86emuOp_lods_word(emu);
- break;
- case 0xae:
- x86emuOp_scas_byte(emu);
- break;
- case 0xaf:
- x86emuOp_scas_word(emu);
- break;
-
- case 0xb0:
- emu->x86.R_AL = fetch_byte_imm(emu);
- break;
- case 0xb1:
- emu->x86.R_CL = fetch_byte_imm(emu);
- break;
- case 0xb2:
- emu->x86.R_DL = fetch_byte_imm(emu);
- break;
- case 0xb3:
- emu->x86.R_BL = fetch_byte_imm(emu);
- break;
- case 0xb4:
- emu->x86.R_AH = fetch_byte_imm(emu);
- break;
- case 0xb5:
- emu->x86.R_CH = fetch_byte_imm(emu);
- break;
- case 0xb6:
- emu->x86.R_DH = fetch_byte_imm(emu);
- break;
- case 0xb7:
- emu->x86.R_BH = fetch_byte_imm(emu);
- break;
-
- case 0xb8:
- x86emuOp_mov_word_AX_IMM(emu);
- break;
- case 0xb9:
- x86emuOp_mov_word_CX_IMM(emu);
- break;
- case 0xba:
- x86emuOp_mov_word_DX_IMM(emu);
- break;
- case 0xbb:
- x86emuOp_mov_word_BX_IMM(emu);
- break;
- case 0xbc:
- x86emuOp_mov_word_SP_IMM(emu);
- break;
- case 0xbd:
- x86emuOp_mov_word_BP_IMM(emu);
- break;
- case 0xbe:
- x86emuOp_mov_word_SI_IMM(emu);
- break;
- case 0xbf:
- x86emuOp_mov_word_DI_IMM(emu);
- break;
-
- case 0xc0:
- x86emuOp_opcC0_byte_RM_MEM(emu);
- break;
- case 0xc1:
- x86emuOp_opcC1_word_RM_MEM(emu);
- break;
- case 0xc2:
- x86emuOp_ret_near_IMM(emu);
- break;
- case 0xc3:
- emu->x86.R_IP = pop_word(emu);
- break;
- case 0xc4:
- common_load_far_pointer(emu, &emu->x86.R_ES);
- break;
- case 0xc5:
- common_load_far_pointer(emu, &emu->x86.R_DS);
- break;
- case 0xc6:
- x86emuOp_mov_byte_RM_IMM(emu);
- break;
- case 0xc7:
- x86emuOp_mov_word_RM_IMM(emu);
- break;
- case 0xc8:
- x86emuOp_enter(emu);
- break;
- case 0xc9:
- x86emuOp_leave(emu);
- break;
- case 0xca:
- x86emuOp_ret_far_IMM(emu);
- break;
- case 0xcb:
- x86emuOp_ret_far(emu);
- break;
- case 0xcc:
- x86emuOp_int3(emu);
- break;
- case 0xcd:
- x86emuOp_int_IMM(emu);
- break;
- case 0xce:
- x86emuOp_into(emu);
- break;
- case 0xcf:
- x86emuOp_iret(emu);
- break;
-
- case 0xd0:
- x86emuOp_opcD0_byte_RM_1(emu);
- break;
- case 0xd1:
- x86emuOp_opcD1_word_RM_1(emu);
- break;
- case 0xd2:
- x86emuOp_opcD2_byte_RM_CL(emu);
- break;
- case 0xd3:
- x86emuOp_opcD3_word_RM_CL(emu);
- break;
- case 0xd4:
- x86emuOp_aam(emu);
- break;
- case 0xd5:
- x86emuOp_aad(emu);
- break;
- /* 0xd6 Undocumented SETALC instruction */
- case 0xd7:
- x86emuOp_xlat(emu);
- break;
- case 0xd8:
- x86emuOp_esc_coprocess_d8(emu);
- break;
- case 0xd9:
- x86emuOp_esc_coprocess_d9(emu);
- break;
- case 0xda:
- x86emuOp_esc_coprocess_da(emu);
- break;
- case 0xdb:
- x86emuOp_esc_coprocess_db(emu);
- break;
- case 0xdc:
- x86emuOp_esc_coprocess_dc(emu);
- break;
- case 0xdd:
- x86emuOp_esc_coprocess_dd(emu);
- break;
- case 0xde:
- x86emuOp_esc_coprocess_de(emu);
- break;
- case 0xdf:
- x86emuOp_esc_coprocess_df(emu);
- break;
-
- case 0xe0:
- x86emuOp_loopne(emu);
- break;
- case 0xe1:
- x86emuOp_loope(emu);
- break;
- case 0xe2:
- x86emuOp_loop(emu);
- break;
- case 0xe3:
- x86emuOp_jcxz(emu);
- break;
- case 0xe4:
- x86emuOp_in_byte_AL_IMM(emu);
- break;
- case 0xe5:
- x86emuOp_in_word_AX_IMM(emu);
- break;
- case 0xe6:
- x86emuOp_out_byte_IMM_AL(emu);
- break;
- case 0xe7:
- x86emuOp_out_word_IMM_AX(emu);
- break;
-
- case 0xe8:
- x86emuOp_call_near_IMM(emu);
- break;
- case 0xe9:
- x86emuOp_jump_near_IMM(emu);
- break;
- case 0xea:
- x86emuOp_jump_far_IMM(emu);
- break;
- case 0xeb:
- x86emuOp_jump_byte_IMM(emu);
- break;
- case 0xec:
- x86emuOp_in_byte_AL_DX(emu);
- break;
- case 0xed:
- x86emuOp_in_word_AX_DX(emu);
- break;
- case 0xee:
- x86emuOp_out_byte_DX_AL(emu);
- break;
- case 0xef:
- x86emuOp_out_word_DX_AX(emu);
- break;
-
- case 0xf0:
- x86emuOp_lock(emu);
- break;
- case 0xf2:
- emu->x86.mode |= SYSMODE_PREFIX_REPNE;
- break;
- case 0xf3:
- emu->x86.mode |= SYSMODE_PREFIX_REPE;
- break;
- case 0xf4:
- dbg("unexpected op1\r\n");
- X86EMU_halt_sys(emu);
- break;
- case 0xf5:
- x86emuOp_cmc(emu);
- break;
- case 0xf6:
- x86emuOp_opcF6_byte_RM(emu);
- break;
- case 0xf7:
- x86emuOp_opcF7_word_RM(emu);
- break;
-
- case 0xf8:
- CLEAR_FLAG(F_CF);
- break;
- case 0xf9:
- SET_FLAG(F_CF);
- break;
- case 0xfa:
- CLEAR_FLAG(F_IF);
- break;
- case 0xfb:
- SET_FLAG(F_IF);
- break;
- case 0xfc:
- CLEAR_FLAG(F_DF);
- break;
- case 0xfd:
- SET_FLAG(F_DF);
- break;
- case 0xfe:
- x86emuOp_opcFE_byte_RM(emu);
- break;
- case 0xff:
- x86emuOp_opcFF_word_RM(emu);
- break;
- default:
- dbg("unexpected op1 %d\r\n", op1);
- X86EMU_halt_sys(emu);
- break;
- }
- if (op1 != 0x26 && op1 != 0x2e && op1 != 0x36 && op1 != 0x3e &&
- (op1 | 3) != 0x67)
- emu->x86.mode &= ~SYSMODE_CLRMASK;
-}
-
-static void
-common_jmp_long(struct X86EMU *emu, bool cond)
-{
- int16_t target;
-
- target = (int16_t) fetch_word_imm(emu);
- target += (int16_t) emu->x86.R_IP;
- if (cond)
- emu->x86.R_IP = (uint16_t) target;
-}
-
-static void
-common_set_byte(struct X86EMU *emu, bool cond)
-{
- uint32_t destoffset;
- uint8_t *destreg, destval;
-
- fetch_decode_modrm(emu);
- destval = cond ? 0x01 : 0x00;
- if (emu->cur_mod != 3) {
- destoffset = decode_rl_address(emu);
- store_data_byte(emu, destoffset, destval);
- } else {
- destreg = decode_rl_byte_register(emu);
- *destreg = destval;
- }
-}
-
-static void
-common_bitstring32(struct X86EMU *emu, int op)
-{
- int bit;
- uint32_t srcval, *shiftreg, mask;
-
- fetch_decode_modrm(emu);
- shiftreg = decode_rh_long_register(emu);
- srcval = decode_and_fetch_long_disp(emu, (int16_t) *shiftreg >> 5);
- bit = *shiftreg & 0x1F;
- mask = 0x1 << bit;
- CONDITIONAL_SET_FLAG(srcval & mask, F_CF);
-
- switch (op) {
- case 0:
- break;
- case 1:
- write_back_long(emu, srcval | mask);
- break;
- case 2:
- write_back_long(emu, srcval & ~mask);
- break;
- case 3:
- write_back_long(emu, srcval ^ mask);
- break;
- }
-}
-
-static void
-common_bitstring16(struct X86EMU *emu, int op)
-{
- int bit;
- uint16_t srcval, *shiftreg, mask;
-
- fetch_decode_modrm(emu);
- shiftreg = decode_rh_word_register(emu);
- srcval = decode_and_fetch_word_disp(emu, (int16_t) *shiftreg >> 4);
- bit = *shiftreg & 0xF;
- mask = 0x1 << bit;
- CONDITIONAL_SET_FLAG(srcval & mask, F_CF);
-
- switch (op) {
- case 0:
- break;
- case 1:
- write_back_word(emu, srcval | mask);
- break;
- case 2:
- write_back_word(emu, srcval & ~mask);
- break;
- case 3:
- write_back_word(emu, srcval ^ mask);
- break;
- }
-}
-
-static void
-common_bitstring(struct X86EMU *emu, int op)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_bitstring32(emu, op);
- else
- common_bitstring16(emu, op);
-}
-
-static void
-common_bitsearch32(struct X86EMU *emu, int diff)
-{
- uint32_t srcval, *dstreg;
-
- fetch_decode_modrm(emu);
- dstreg = decode_rh_long_register(emu);
- srcval = decode_and_fetch_long(emu);
- CONDITIONAL_SET_FLAG(srcval == 0, F_ZF);
- for (*dstreg = 0; *dstreg < 32; *dstreg += diff) {
- if ((srcval >> *dstreg) & 1)
- break;
- }
-}
-
-static void
-common_bitsearch16(struct X86EMU *emu, int diff)
-{
- uint16_t srcval, *dstreg;
-
- fetch_decode_modrm(emu);
- dstreg = decode_rh_word_register(emu);
- srcval = decode_and_fetch_word(emu);
- CONDITIONAL_SET_FLAG(srcval == 0, F_ZF);
- for (*dstreg = 0; *dstreg < 16; *dstreg += diff) {
- if ((srcval >> *dstreg) & 1)
- break;
- }
-}
-
-static void
-common_bitsearch(struct X86EMU *emu, int diff)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_bitsearch32(emu, diff);
- else
- common_bitsearch16(emu, diff);
-}
-
-static void
-common_shift32(struct X86EMU *emu, bool shift_left, bool use_cl)
-{
- uint8_t shift;
- uint32_t destval, *shiftreg;
-
- fetch_decode_modrm(emu);
- shiftreg = decode_rh_long_register(emu);
- if (use_cl) {
- destval = decode_and_fetch_long(emu);
- shift = emu->x86.R_CL;
- } else {
- destval = decode_and_fetch_long_imm8(emu, &shift);
- }
- if (shift_left)
- destval = shld_long(emu, destval, *shiftreg, shift);
- else
- destval = shrd_long(emu, destval, *shiftreg, shift);
- write_back_long(emu, destval);
-}
-
-static void
-common_shift16(struct X86EMU *emu, bool shift_left, bool use_cl)
-{
- uint8_t shift;
- uint16_t destval, *shiftreg;
-
- fetch_decode_modrm(emu);
- shiftreg = decode_rh_word_register(emu);
- if (use_cl) {
- destval = decode_and_fetch_word(emu);
- shift = emu->x86.R_CL;
- } else {
- destval = decode_and_fetch_word_imm8(emu, &shift);
- }
- if (shift_left)
- destval = shld_word(emu, destval, *shiftreg, shift);
- else
- destval = shrd_word(emu, destval, *shiftreg, shift);
- write_back_word(emu, destval);
-}
-
-static void
-common_shift(struct X86EMU *emu, bool shift_left, bool use_cl)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- common_shift32(emu, shift_left, use_cl);
- else
- common_shift16(emu, shift_left, use_cl);
-}
-
-/*----------------------------- Implementation ----------------------------*/
-#define xorl(a,b) ((a) && !(b)) || (!(a) && (b))
-
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0x31
-****************************************************************************/
-static void
-x86emuOp2_rdtsc(struct X86EMU *emu)
-{
- emu->x86.R_EAX = emu->cur_cycles & 0xffffffff;
- emu->x86.R_EDX = emu->cur_cycles >> 32;
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa0
-****************************************************************************/
-static void
-x86emuOp2_push_FS(struct X86EMU *emu)
-{
- push_word(emu, emu->x86.R_FS);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa1
-****************************************************************************/
-static void
-x86emuOp2_pop_FS(struct X86EMU *emu)
-{
- emu->x86.R_FS = pop_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa1
-****************************************************************************/
-#if defined(__i386__) || defined(__amd64__)
-static void
-hw_cpuid(uint32_t *a, uint32_t *b, uint32_t *c, uint32_t *d)
-{
- __asm__ __volatile__("cpuid"
- : "=a" (*a), "=b" (*b),
- "=c" (*c), "=d" (*d)
- : "a" (*a), "c" (*c)
- : "cc");
-}
-#endif
-static void
-x86emuOp2_cpuid(struct X86EMU *emu)
-{
-#if defined(__i386__) || defined(__amd64__)
- hw_cpuid(&emu->x86.R_EAX, &emu->x86.R_EBX, &emu->x86.R_ECX,
- &emu->x86.R_EDX);
-#endif
- switch (emu->x86.R_EAX) {
- case 0:
- emu->x86.R_EAX = 1;
-#if !defined(__i386__) && !defined(__amd64__)
- /* "GenuineIntel" */
- emu->x86.R_EBX = 0x756e6547;
- emu->x86.R_EDX = 0x49656e69;
- emu->x86.R_ECX = 0x6c65746e;
-#endif
- break;
- case 1:
-#if !defined(__i386__) && !defined(__amd64__)
- emu->x86.R_EAX = 0x00000480;
- emu->x86.R_EBX = emu->x86.R_ECX = 0;
- emu->x86.R_EDX = 0x00000002;
-#else
- emu->x86.R_EDX &= 0x00000012;
-#endif
- break;
- default:
- emu->x86.R_EAX = emu->x86.R_EBX = emu->x86.R_ECX =
- emu->x86.R_EDX = 0;
- break;
- }
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa3
-****************************************************************************/
-static void
-x86emuOp2_bt_R(struct X86EMU *emu)
-{
- common_bitstring(emu, 0);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa4
-****************************************************************************/
-static void
-x86emuOp2_shld_IMM(struct X86EMU *emu)
-{
- common_shift(emu, true, false);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa5
-****************************************************************************/
-static void
-x86emuOp2_shld_CL(struct X86EMU *emu)
-{
- common_shift(emu, true, true);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa8
-****************************************************************************/
-static void
-x86emuOp2_push_GS(struct X86EMU *emu)
-{
- push_word(emu, emu->x86.R_GS);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xa9
-****************************************************************************/
-static void
-x86emuOp2_pop_GS(struct X86EMU *emu)
-{
- emu->x86.R_GS = pop_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xab
-****************************************************************************/
-static void
-x86emuOp2_bts_R(struct X86EMU *emu)
-{
- common_bitstring(emu, 1);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xac
-****************************************************************************/
-static void
-x86emuOp2_shrd_IMM(struct X86EMU *emu)
-{
- common_shift(emu, false, false);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xad
-****************************************************************************/
-static void
-x86emuOp2_shrd_CL(struct X86EMU *emu)
-{
- common_shift(emu, false, true);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xaf
-****************************************************************************/
-static void
-x86emuOp2_32_imul_R_RM(struct X86EMU *emu)
-{
- uint32_t *destreg, srcval;
- uint64_t res;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- srcval = decode_and_fetch_long(emu);
- res = (int32_t) *destreg * (int32_t)srcval;
- if (res > 0xffffffff) {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- }
- *destreg = (uint32_t) res;
-}
-
-static void
-x86emuOp2_16_imul_R_RM(struct X86EMU *emu)
-{
- uint16_t *destreg, srcval;
- uint32_t res;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- srcval = decode_and_fetch_word(emu);
- res = (int16_t) * destreg * (int16_t)srcval;
- if (res > 0xFFFF) {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- }
- *destreg = (uint16_t) res;
-}
-
-static void
-x86emuOp2_imul_R_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp2_32_imul_R_RM(emu);
- else
- x86emuOp2_16_imul_R_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb2
-****************************************************************************/
-static void
-x86emuOp2_lss_R_IMM(struct X86EMU *emu)
-{
- common_load_far_pointer(emu, &emu->x86.R_SS);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb3
-****************************************************************************/
-static void
-x86emuOp2_btr_R(struct X86EMU *emu)
-{
- common_bitstring(emu, 2);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb4
-****************************************************************************/
-static void
-x86emuOp2_lfs_R_IMM(struct X86EMU *emu)
-{
- common_load_far_pointer(emu, &emu->x86.R_FS);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb5
-****************************************************************************/
-static void
-x86emuOp2_lgs_R_IMM(struct X86EMU *emu)
-{
- common_load_far_pointer(emu, &emu->x86.R_GS);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb6
-****************************************************************************/
-static void
-x86emuOp2_32_movzx_byte_R_RM(struct X86EMU *emu)
-{
- uint32_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- *destreg = decode_and_fetch_byte(emu);
-}
-
-static void
-x86emuOp2_16_movzx_byte_R_RM(struct X86EMU *emu)
-{
- uint16_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- *destreg = decode_and_fetch_byte(emu);
-}
-
-static void
-x86emuOp2_movzx_byte_R_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp2_32_movzx_byte_R_RM(emu);
- else
- x86emuOp2_16_movzx_byte_R_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xb7
-****************************************************************************/
-static void
-x86emuOp2_movzx_word_R_RM(struct X86EMU *emu)
-{
- uint32_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- *destreg = decode_and_fetch_word(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xba
-****************************************************************************/
-static void
-x86emuOp2_32_btX_I(struct X86EMU *emu)
-{
- int bit;
- uint32_t srcval, mask;
- uint8_t shift;
-
- fetch_decode_modrm(emu);
- if (emu->cur_rh < 4)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- srcval = decode_and_fetch_long_imm8(emu, &shift);
- bit = shift & 0x1F;
- mask = (0x1 << bit);
-
- switch (emu->cur_rh) {
- case 5:
- write_back_long(emu, srcval | mask);
- break;
- case 6:
- write_back_long(emu, srcval & ~mask);
- break;
- case 7:
- write_back_long(emu, srcval ^ mask);
- break;
- }
- CONDITIONAL_SET_FLAG(srcval & mask, F_CF);
-}
-
-static void
-x86emuOp2_16_btX_I(struct X86EMU *emu)
-{
- int bit;
-
- uint16_t srcval, mask;
- uint8_t shift;
-
- fetch_decode_modrm(emu);
- if (emu->cur_rh < 4)
- {
- dbg("unexpected mode %d\r\n", emu->cur_rh);
- X86EMU_halt_sys(emu);
- }
-
- srcval = decode_and_fetch_word_imm8(emu, &shift);
- bit = shift & 0xF;
- mask = (0x1 << bit);
- switch (emu->cur_rh) {
- case 5:
- write_back_word(emu, srcval | mask);
- break;
- case 6:
- write_back_word(emu, srcval & ~mask);
- break;
- case 7:
- write_back_word(emu, srcval ^ mask);
- break;
- }
- CONDITIONAL_SET_FLAG(srcval & mask, F_CF);
-}
-
-static void
-x86emuOp2_btX_I(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp2_32_btX_I(emu);
- else
- x86emuOp2_16_btX_I(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xbb
-****************************************************************************/
-static void
-x86emuOp2_btc_R(struct X86EMU *emu)
-{
- common_bitstring(emu, 3);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xbc
-****************************************************************************/
-static void
-x86emuOp2_bsf(struct X86EMU *emu)
-{
- common_bitsearch(emu, +1);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xbd
-****************************************************************************/
-static void
-x86emuOp2_bsr(struct X86EMU *emu)
-{
- common_bitsearch(emu, -1);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xbe
-****************************************************************************/
-static void
-x86emuOp2_32_movsx_byte_R_RM(struct X86EMU *emu)
-{
- uint32_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- *destreg = (int32_t)(int8_t)decode_and_fetch_byte(emu);
-}
-
-static void
-x86emuOp2_16_movsx_byte_R_RM(struct X86EMU *emu)
-{
- uint16_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_word_register(emu);
- *destreg = (int16_t)(int8_t)decode_and_fetch_byte(emu);
-}
-
-static void
-x86emuOp2_movsx_byte_R_RM(struct X86EMU *emu)
-{
- if (emu->x86.mode & SYSMODE_PREFIX_DATA)
- x86emuOp2_32_movsx_byte_R_RM(emu);
- else
- x86emuOp2_16_movsx_byte_R_RM(emu);
-}
-/****************************************************************************
-REMARKS:
-Handles opcode 0x0f,0xbf
-****************************************************************************/
-static void
-x86emuOp2_movsx_word_R_RM(struct X86EMU *emu)
-{
- uint32_t *destreg;
-
- fetch_decode_modrm(emu);
- destreg = decode_rh_long_register(emu);
- *destreg = (int32_t)(int16_t)decode_and_fetch_word(emu);
-}
-
-static void
-X86EMU_exec_two_byte(struct X86EMU * emu)
-{
- uint8_t op2;
-
- op2 = fetch_byte_imm(emu);
-
- switch (op2) {
- /* 0x00 Group F (ring 0 PM) */
- /* 0x01 Group G (ring 0 PM) */
- /* 0x02 lar (ring 0 PM) */
- /* 0x03 lsl (ring 0 PM) */
- /* 0x05 loadall (undocumented) */
- /* 0x06 clts (ring 0 PM) */
- /* 0x07 loadall (undocumented) */
- /* 0x08 invd (ring 0 PM) */
- /* 0x09 wbinvd (ring 0 PM) */
-
- /* 0x20 mov reg32(op2); break;creg (ring 0 PM) */
- /* 0x21 mov reg32(op2); break;dreg (ring 0 PM) */
- /* 0x22 mov creg(op2); break;reg32 (ring 0 PM) */
- /* 0x23 mov dreg(op2); break;reg32 (ring 0 PM) */
- /* 0x24 mov reg32(op2); break;treg (ring 0 PM) */
- /* 0x26 mov treg(op2); break;reg32 (ring 0 PM) */
-
- case 0x31:
- x86emuOp2_rdtsc(emu);
- break;
-
- case 0x80:
- common_jmp_long(emu, ACCESS_FLAG(F_OF));
- break;
- case 0x81:
- common_jmp_long(emu, !ACCESS_FLAG(F_OF));
- break;
- case 0x82:
- common_jmp_long(emu, ACCESS_FLAG(F_CF));
- break;
- case 0x83:
- common_jmp_long(emu, !ACCESS_FLAG(F_CF));
- break;
- case 0x84:
- common_jmp_long(emu, ACCESS_FLAG(F_ZF));
- break;
- case 0x85:
- common_jmp_long(emu, !ACCESS_FLAG(F_ZF));
- break;
- case 0x86:
- common_jmp_long(emu, ACCESS_FLAG(F_CF) || ACCESS_FLAG(F_ZF));
- break;
- case 0x87:
- common_jmp_long(emu, !(ACCESS_FLAG(F_CF) || ACCESS_FLAG(F_ZF)));
- break;
- case 0x88:
- common_jmp_long(emu, ACCESS_FLAG(F_SF));
- break;
- case 0x89:
- common_jmp_long(emu, !ACCESS_FLAG(F_SF));
- break;
- case 0x8a:
- common_jmp_long(emu, ACCESS_FLAG(F_PF));
- break;
- case 0x8b:
- common_jmp_long(emu, !ACCESS_FLAG(F_PF));
- break;
- case 0x8c:
- common_jmp_long(emu, xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)));
- break;
- case 0x8d:
- common_jmp_long(emu, !(xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF))));
- break;
- case 0x8e:
- common_jmp_long(emu,
- (xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) || ACCESS_FLAG(F_ZF)));
- break;
- case 0x8f:
- common_jmp_long(emu,
- !(xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) || ACCESS_FLAG(F_ZF)));
- break;
-
- case 0x90:
- common_set_byte(emu, ACCESS_FLAG(F_OF));
- break;
- case 0x91:
- common_set_byte(emu, !ACCESS_FLAG(F_OF));
- break;
- case 0x92:
- common_set_byte(emu, ACCESS_FLAG(F_CF));
- break;
- case 0x93:
- common_set_byte(emu, !ACCESS_FLAG(F_CF));
- break;
- case 0x94:
- common_set_byte(emu, ACCESS_FLAG(F_ZF));
- break;
- case 0x95:
- common_set_byte(emu, !ACCESS_FLAG(F_ZF));
- break;
- case 0x96:
- common_set_byte(emu, ACCESS_FLAG(F_CF) || ACCESS_FLAG(F_ZF));
- break;
- case 0x97:
- common_set_byte(emu, !(ACCESS_FLAG(F_CF) || ACCESS_FLAG(F_ZF)));
- break;
- case 0x98:
- common_set_byte(emu, ACCESS_FLAG(F_SF));
- break;
- case 0x99:
- common_set_byte(emu, !ACCESS_FLAG(F_SF));
- break;
- case 0x9a:
- common_set_byte(emu, ACCESS_FLAG(F_PF));
- break;
- case 0x9b:
- common_set_byte(emu, !ACCESS_FLAG(F_PF));
- break;
- case 0x9c:
- common_set_byte(emu, xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)));
- break;
- case 0x9d:
- common_set_byte(emu, xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)));
- break;
- case 0x9e:
- common_set_byte(emu,
- (xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) ||
- ACCESS_FLAG(F_ZF)));
- break;
- case 0x9f:
- common_set_byte(emu,
- !(xorl(ACCESS_FLAG(F_SF), ACCESS_FLAG(F_OF)) ||
- ACCESS_FLAG(F_ZF)));
- break;
-
- case 0xa0:
- x86emuOp2_push_FS(emu);
- break;
- case 0xa1:
- x86emuOp2_pop_FS(emu);
- break;
- case 0xa2:
- x86emuOp2_cpuid(emu);
- break;
- case 0xa3:
- x86emuOp2_bt_R(emu);
- break;
- case 0xa4:
- x86emuOp2_shld_IMM(emu);
- break;
- case 0xa5:
- x86emuOp2_shld_CL(emu);
- break;
- case 0xa8:
- x86emuOp2_push_GS(emu);
- break;
- case 0xa9:
- x86emuOp2_pop_GS(emu);
- break;
- case 0xab:
- x86emuOp2_bts_R(emu);
- break;
- case 0xac:
- x86emuOp2_shrd_IMM(emu);
- break;
- case 0xad:
- x86emuOp2_shrd_CL(emu);
- break;
- case 0xaf:
- x86emuOp2_imul_R_RM(emu);
- break;
-
- /* 0xb0 TODO: cmpxchg */
- /* 0xb1 TODO: cmpxchg */
- case 0xb2:
- x86emuOp2_lss_R_IMM(emu);
- break;
- case 0xb3:
- x86emuOp2_btr_R(emu);
- break;
- case 0xb4:
- x86emuOp2_lfs_R_IMM(emu);
- break;
- case 0xb5:
- x86emuOp2_lgs_R_IMM(emu);
- break;
- case 0xb6:
- x86emuOp2_movzx_byte_R_RM(emu);
- break;
- case 0xb7:
- x86emuOp2_movzx_word_R_RM(emu);
- break;
- case 0xba:
- x86emuOp2_btX_I(emu);
- break;
- case 0xbb:
- x86emuOp2_btc_R(emu);
- break;
- case 0xbc:
- x86emuOp2_bsf(emu);
- break;
- case 0xbd:
- x86emuOp2_bsr(emu);
- break;
- case 0xbe:
- x86emuOp2_movsx_byte_R_RM(emu);
- break;
- case 0xbf:
- x86emuOp2_movsx_word_R_RM(emu);
- break;
-
- /* 0xc0 TODO: xadd */
- /* 0xc1 TODO: xadd */
- /* 0xc8 TODO: bswap */
- /* 0xc9 TODO: bswap */
- /* 0xca TODO: bswap */
- /* 0xcb TODO: bswap */
- /* 0xcc TODO: bswap */
- /* 0xcd TODO: bswap */
- /* 0xce TODO: bswap */
- /* 0xcf TODO: bswap */
-
- default:
- dbg("unexpected op2 %d\r\n", op2);
- X86EMU_halt_sys(emu);
- break;
- }
-}
-
-/*
-* Carry Chain Calculation
-*
-* This represents a somewhat expensive calculation which is
-* apparently required to emulate the setting of the OF and AF flag.
-* The latter is not so important, but the former is. The overflow
-* flag is the XOR of the top two bits of the carry chain for an
-* addition (similar for subtraction). Since we do not want to
-* simulate the addition in a bitwise manner, we try to calculate the
-* carry chain given the two operands and the result.
-*
-* So, given the following table, which represents the addition of two
-* bits, we can derive a formula for the carry chain.
-*
-* a b cin r cout
-* 0 0 0 0 0
-* 0 0 1 1 0
-* 0 1 0 1 0
-* 0 1 1 0 1
-* 1 0 0 1 0
-* 1 0 1 0 1
-* 1 1 0 0 1
-* 1 1 1 1 1
-*
-* Construction of table for cout:
-*
-* ab
-* r \ 00 01 11 10
-* |------------------
-* 0 | 0 1 1 1
-* 1 | 0 0 1 0
-*
-* By inspection, one gets: cc = ab + r'(a + b)
-*
-* That represents alot of operations, but NO CHOICE....
-*
-* Borrow Chain Calculation.
-*
-* The following table represents the subtraction of two bits, from
-* which we can derive a formula for the borrow chain.
-*
-* a b bin r bout
-* 0 0 0 0 0
-* 0 0 1 1 1
-* 0 1 0 1 1
-* 0 1 1 0 1
-* 1 0 0 1 0
-* 1 0 1 0 0
-* 1 1 0 0 0
-* 1 1 1 1 1
-*
-* Construction of table for cout:
-*
-* ab
-* r \ 00 01 11 10
-* |------------------
-* 0 | 0 1 0 0
-* 1 | 1 1 1 0
-*
-* By inspection, one gets: bc = a'b + r(a' + b)
-*
-****************************************************************************/
-
-/*------------------------- Global Variables ------------------------------*/
-
-static uint32_t x86emu_parity_tab[8] =
-{
- 0x96696996,
- 0x69969669,
- 0x69969669,
- 0x96696996,
- 0x69969669,
- 0x96696996,
- 0x96696996,
- 0x69969669,
-};
-#define PARITY(x) (((x86emu_parity_tab[(x) / 32] >> ((x) % 32)) & 1) == 0)
-#define XOR2(x) (((x) ^ ((x)>>1)) & 0x1)
-
-/****************************************************************************
-REMARKS:
-Implements the AAA instruction and side effects.
-****************************************************************************/
-static uint16_t
-aaa_word(struct X86EMU *emu, uint16_t d)
-{
- uint16_t res;
- if ((d & 0xf) > 0x9 || ACCESS_FLAG(F_AF)) {
- d += 0x6;
- d += 0x100;
- SET_FLAG(F_AF);
- SET_FLAG(F_CF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- }
- res = (uint16_t) (d & 0xFF0F);
- CLEAR_FLAG(F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the AAA instruction and side effects.
-****************************************************************************/
-static uint16_t
-aas_word(struct X86EMU *emu, uint16_t d)
-{
- uint16_t res;
- if ((d & 0xf) > 0x9 || ACCESS_FLAG(F_AF)) {
- d -= 0x6;
- d -= 0x100;
- SET_FLAG(F_AF);
- SET_FLAG(F_CF);
- } else {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- }
- res = (uint16_t) (d & 0xFF0F);
- CLEAR_FLAG(F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the AAD instruction and side effects.
-****************************************************************************/
-static uint16_t
-aad_word(struct X86EMU *emu, uint16_t d)
-{
- uint16_t l;
- uint8_t hb, lb;
-
- hb = (uint8_t) ((d >> 8) & 0xff);
- lb = (uint8_t) ((d & 0xff));
- l = (uint16_t) ((lb + 10 * hb) & 0xFF);
-
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(l & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(l == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(l & 0xff), F_PF);
- return l;
-}
-/****************************************************************************
-REMARKS:
-Implements the AAM instruction and side effects.
-****************************************************************************/
-static uint16_t
-aam_word(struct X86EMU *emu, uint8_t d)
-{
- uint16_t h, l;
-
- h = (uint16_t) (d / 10);
- l = (uint16_t) (d % 10);
- l |= (uint16_t) (h << 8);
-
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(l & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(l == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(l & 0xff), F_PF);
- return l;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADC instruction and side effects.
-****************************************************************************/
-static uint8_t
-adc_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- if (ACCESS_FLAG(F_CF))
- res = 1 + d + s;
- else
- res = d + s;
-
- CONDITIONAL_SET_FLAG(res & 0x100, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADC instruction and side effects.
-****************************************************************************/
-static uint16_t
-adc_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- if (ACCESS_FLAG(F_CF))
- res = 1 + d + s;
- else
- res = d + s;
-
- CONDITIONAL_SET_FLAG(res & 0x10000, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADC instruction and side effects.
-****************************************************************************/
-static uint32_t
-adc_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t lo; /* all operands in native machine order */
- uint32_t hi;
- uint32_t res;
- uint32_t cc;
-
- if (ACCESS_FLAG(F_CF)) {
- lo = 1 + (d & 0xFFFF) + (s & 0xFFFF);
- res = 1 + d + s;
- } else {
- lo = (d & 0xFFFF) + (s & 0xFFFF);
- res = d + s;
- }
- hi = (lo >> 16) + (d >> 16) + (s >> 16);
-
- CONDITIONAL_SET_FLAG(hi & 0x10000, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADD instruction and side effects.
-****************************************************************************/
-static uint8_t
-add_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- res = d + s;
- CONDITIONAL_SET_FLAG(res & 0x100, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADD instruction and side effects.
-****************************************************************************/
-static uint16_t
-add_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- res = d + s;
- CONDITIONAL_SET_FLAG(res & 0x10000, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ADD instruction and side effects.
-****************************************************************************/
-static uint32_t
-add_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t lo; /* all operands in native machine order */
- uint32_t hi;
- uint32_t res;
- uint32_t cc;
-
- lo = (d & 0xFFFF) + (s & 0xFFFF);
- res = d + s;
- hi = (lo >> 16) + (d >> 16) + (s >> 16);
-
- CONDITIONAL_SET_FLAG(hi & 0x10000, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (s & d) | ((~res) & (s | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
-
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the AND instruction and side effects.
-****************************************************************************/
-static uint8_t
-and_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint8_t res; /* all operands in native machine order */
-
- res = d & s;
-
- /* set the flags */
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the AND instruction and side effects.
-****************************************************************************/
-static uint16_t
-and_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint16_t res; /* all operands in native machine order */
-
- res = d & s;
-
- /* set the flags */
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the AND instruction and side effects.
-****************************************************************************/
-static uint32_t
-and_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d & s;
-
- /* set the flags */
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the CMP instruction and side effects.
-****************************************************************************/
-static uint8_t
-cmp_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CLEAR_FLAG(F_CF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return d;
-}
-
-static void
-cmp_byte_no_return(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- cmp_byte(emu, d, s);
-}
-/****************************************************************************
-REMARKS:
-Implements the CMP instruction and side effects.
-****************************************************************************/
-static uint16_t
-cmp_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x8000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return d;
-}
-
-static void
-cmp_word_no_return(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- cmp_word(emu, d, s);
-}
-/****************************************************************************
-REMARKS:
-Implements the CMP instruction and side effects.
-****************************************************************************/
-static uint32_t
-cmp_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80000000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return d;
-}
-
-static void
-cmp_long_no_return(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- cmp_long(emu, d, s);
-}
-/****************************************************************************
-REMARKS:
-Implements the DAA instruction and side effects.
-****************************************************************************/
-static uint8_t
-daa_byte(struct X86EMU *emu, uint8_t d)
-{
- uint32_t res = d;
- if ((d & 0xf) > 9 || ACCESS_FLAG(F_AF)) {
- res += 6;
- SET_FLAG(F_AF);
- }
- if (res > 0x9F || ACCESS_FLAG(F_CF)) {
- res += 0x60;
- SET_FLAG(F_CF);
- }
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xFF) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the DAS instruction and side effects.
-****************************************************************************/
-static uint8_t
-das_byte(struct X86EMU *emu, uint8_t d)
-{
- if ((d & 0xf) > 9 || ACCESS_FLAG(F_AF)) {
- d -= 6;
- SET_FLAG(F_AF);
- }
- if (d > 0x9F || ACCESS_FLAG(F_CF)) {
- d -= 0x60;
- SET_FLAG(F_CF);
- }
- CONDITIONAL_SET_FLAG(d & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(d == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(d & 0xff), F_PF);
- return d;
-}
-/****************************************************************************
-REMARKS:
-Implements the DEC instruction and side effects.
-****************************************************************************/
-static uint8_t
-dec_byte(struct X86EMU *emu, uint8_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - 1;
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- /* based on sub_byte, uses s==1. */
- bc = (res & (~d | 1)) | (~d & 1);
- /* carry flag unchanged */
- CONDITIONAL_SET_FLAG(XOR2(bc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the DEC instruction and side effects.
-****************************************************************************/
-static uint16_t
-dec_word(struct X86EMU *emu, uint16_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - 1;
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- /* based on the sub_byte routine, with s==1 */
- bc = (res & (~d | 1)) | (~d & 1);
- /* carry flag unchanged */
- CONDITIONAL_SET_FLAG(XOR2(bc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the DEC instruction and side effects.
-****************************************************************************/
-static uint32_t
-dec_long(struct X86EMU *emu, uint32_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - 1;
-
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | 1)) | (~d & 1);
- /* carry flag unchanged */
- CONDITIONAL_SET_FLAG(XOR2(bc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the INC instruction and side effects.
-****************************************************************************/
-static uint8_t
-inc_byte(struct X86EMU *emu, uint8_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- res = d + 1;
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = ((1 & d) | (~res)) & (1 | d);
- CONDITIONAL_SET_FLAG(XOR2(cc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the INC instruction and side effects.
-****************************************************************************/
-static uint16_t
-inc_word(struct X86EMU *emu, uint16_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- res = d + 1;
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (1 & d) | ((~res) & (1 | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the INC instruction and side effects.
-****************************************************************************/
-static uint32_t
-inc_long(struct X86EMU *emu, uint32_t d)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t cc;
-
- res = d + 1;
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the carry chain SEE NOTE AT TOP. */
- cc = (1 & d) | ((~res) & (1 | d));
- CONDITIONAL_SET_FLAG(XOR2(cc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(cc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint8_t
-or_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint8_t res; /* all operands in native machine order */
-
- res = d | s;
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint16_t
-or_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint16_t res; /* all operands in native machine order */
-
- res = d | s;
- /* set the carry flag to be bit 8 */
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint32_t
-or_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d | s;
-
- /* set the carry flag to be bit 8 */
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint8_t
-neg_byte(struct X86EMU *emu, uint8_t s)
-{
- uint8_t res;
- uint8_t bc;
-
- CONDITIONAL_SET_FLAG(s != 0, F_CF);
- res = (uint8_t) - s;
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res), F_PF);
- /* calculate the borrow chain --- modified such that d=0.
- * substitutiing d=0 into bc= res&(~d|s)|(~d&s); (the one used for
- * sub) and simplifying, since ~d=0xff..., ~d|s == 0xffff..., and
- * res&0xfff... == res. Similarly ~d&s == s. So the simplified
- * result is: */
- bc = res | s;
- CONDITIONAL_SET_FLAG(XOR2(bc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint16_t
-neg_word(struct X86EMU *emu, uint16_t s)
-{
- uint16_t res;
- uint16_t bc;
-
- CONDITIONAL_SET_FLAG(s != 0, F_CF);
- res = (uint16_t) - s;
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain --- modified such that d=0.
- * substitutiing d=0 into bc= res&(~d|s)|(~d&s); (the one used for
- * sub) and simplifying, since ~d=0xff..., ~d|s == 0xffff..., and
- * res&0xfff... == res. Similarly ~d&s == s. So the simplified
- * result is: */
- bc = res | s;
- CONDITIONAL_SET_FLAG(XOR2(bc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the OR instruction and side effects.
-****************************************************************************/
-static uint32_t
-neg_long(struct X86EMU *emu, uint32_t s)
-{
- uint32_t res;
- uint32_t bc;
-
- CONDITIONAL_SET_FLAG(s != 0, F_CF);
- res = (uint32_t) - s;
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain --- modified such that d=0.
- * substitutiing d=0 into bc= res&(~d|s)|(~d&s); (the one used for
- * sub) and simplifying, since ~d=0xff..., ~d|s == 0xffff..., and
- * res&0xfff... == res. Similarly ~d&s == s. So the simplified
- * result is: */
- bc = res | s;
- CONDITIONAL_SET_FLAG(XOR2(bc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCL instruction and side effects.
-****************************************************************************/
-static uint8_t
-rcl_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int res, cnt, mask, cf;
-
- /* s is the rotate distance. It varies from 0 - 8. */
- /* have
- *
- * CF B_7 B_6 B_5 B_4 B_3 B_2 B_1 B_0
- *
- * want to rotate through the carry by "s" bits. We could loop, but
- * that's inefficient. So the width is 9, and we split into three
- * parts:
- *
- * The new carry flag (was B_n) the stuff in B_n-1 .. B_0 the stuff in
- * B_7 .. B_n+1
- *
- * The new rotate is done mod 9, and given this, for a rotation of n bits
- * (mod 9) the new carry flag is then located n bits from the MSB.
- * The low part is then shifted up cnt bits, and the high part is or'd
- * in. Using CAPS for new values, and lowercase for the original
- * values, this can be expressed as:
- *
- * IF n > 0 1) CF <- b_(8-n) 2) B_(7) .. B_(n) <- b_(8-(n+1)) .. b_0
- * 3) B_(n-1) <- cf 4) B_(n-2) .. B_0 <- b_7 .. b_(8-(n-1)) */
- res = d;
- if ((cnt = s % 9) != 0) {
- /* extract the new CARRY FLAG. */
- /* CF <- b_(8-n) */
- cf = (d >> (8 - cnt)) & 0x1;
-
- /* get the low stuff which rotated into the range B_7 .. B_cnt */
- /* B_(7) .. B_(n) <- b_(8-(n+1)) .. b_0 */
- /* note that the right hand side done by the mask */
- res = (d << cnt) & 0xff;
-
- /* now the high stuff which rotated around into the positions
- * B_cnt-2 .. B_0 */
- /* B_(n-2) .. B_0 <- b_7 .. b_(8-(n-1)) */
- /* shift it downward, 7-(n-2) = 9-n positions. and mask off
- * the result before or'ing in. */
- mask = (1 << (cnt - 1)) - 1;
- res |= (d >> (9 - cnt)) & mask;
-
- /* if the carry flag was set, or it in. */
- if (ACCESS_FLAG(F_CF)) { /* carry flag is set */
- /* B_(n-1) <- cf */
- res |= 1 << (cnt - 1);
- }
- /* set the new carry flag, based on the variable "cf" */
- CONDITIONAL_SET_FLAG(cf, F_CF);
- /* OVERFLOW is set *IFF* cnt==1, then it is the xor of CF and
- * the most significant bit. Blecck. */
- /* parenthesized this expression since it appears to be
- * causing OF to be misset */
- CONDITIONAL_SET_FLAG(cnt == 1 && XOR2(cf + ((res >> 6) & 0x2)),
- F_OF);
-
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCL instruction and side effects.
-****************************************************************************/
-static uint16_t
-rcl_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int res, cnt, mask, cf;
-
- res = d;
- if ((cnt = s % 17) != 0) {
- cf = (d >> (16 - cnt)) & 0x1;
- res = (d << cnt) & 0xffff;
- mask = (1 << (cnt - 1)) - 1;
- res |= (d >> (17 - cnt)) & mask;
- if (ACCESS_FLAG(F_CF)) {
- res |= 1 << (cnt - 1);
- }
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG(cnt == 1 && XOR2(cf + ((res >> 14) & 0x2)),
- F_OF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCL instruction and side effects.
-****************************************************************************/
-static uint32_t
-rcl_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- uint32_t res, cnt, mask, cf;
-
- res = d;
- if ((cnt = s % 33) != 0) {
- cf = (d >> (32 - cnt)) & 0x1;
- res = (d << cnt) & 0xffffffff;
- mask = (1 << (cnt - 1)) - 1;
- res |= (d >> (33 - cnt)) & mask;
- if (ACCESS_FLAG(F_CF)) { /* carry flag is set */
- res |= 1 << (cnt - 1);
- }
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG(cnt == 1 && XOR2(cf + ((res >> 30) & 0x2)),
- F_OF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCR instruction and side effects.
-****************************************************************************/
-static uint8_t
-rcr_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res, cnt;
- uint32_t mask, cf, ocf = 0;
-
- /* rotate right through carry */
- /* s is the rotate distance. It varies from 0 - 8. d is the byte
- * object rotated.
- *
- * have
- *
- * CF B_7 B_6 B_5 B_4 B_3 B_2 B_1 B_0
- *
- * The new rotate is done mod 9, and given this, for a rotation of n bits
- * (mod 9) the new carry flag is then located n bits from the LSB.
- * The low part is then shifted up cnt bits, and the high part is or'd
- * in. Using CAPS for new values, and lowercase for the original
- * values, this can be expressed as:
- *
- * IF n > 0 1) CF <- b_(n-1) 2) B_(8-(n+1)) .. B_(0) <- b_(7) .. b_(n)
- * 3) B_(8-n) <- cf 4) B_(7) .. B_(8-(n-1)) <- b_(n-2) .. b_(0) */
- res = d;
- if ((cnt = s % 9) != 0) {
- /* extract the new CARRY FLAG. */
- /* CF <- b_(n-1) */
- if (cnt == 1) {
- cf = d & 0x1;
- /* note hackery here. Access_flag(..) evaluates to
- * either 0 if flag not set non-zero if flag is set.
- * doing access_flag(..) != 0 casts that into either
- * 0..1 in any representation of the flags register
- * (i.e. packed bit array or unpacked.) */
- ocf = ACCESS_FLAG(F_CF) != 0;
- } else
- cf = (d >> (cnt - 1)) & 0x1;
-
- /* B_(8-(n+1)) .. B_(0) <- b_(7) .. b_n */
- /* note that the right hand side done by the mask This is
- * effectively done by shifting the object to the right. The
- * result must be masked, in case the object came in and was
- * treated as a negative number. Needed??? */
-
- mask = (1 << (8 - cnt)) - 1;
- res = (d >> cnt) & mask;
-
- /* now the high stuff which rotated around into the positions
- * B_cnt-2 .. B_0 */
- /* B_(7) .. B_(8-(n-1)) <- b_(n-2) .. b_(0) */
- /* shift it downward, 7-(n-2) = 9-n positions. and mask off
- * the result before or'ing in. */
- res |= (d << (9 - cnt));
-
- /* if the carry flag was set, or it in. */
- if (ACCESS_FLAG(F_CF)) { /* carry flag is set */
- /* B_(8-n) <- cf */
- res |= 1 << (8 - cnt);
- }
- /* set the new carry flag, based on the variable "cf" */
- CONDITIONAL_SET_FLAG(cf, F_CF);
- /* OVERFLOW is set *IFF* cnt==1, then it is the xor of CF and
- * the most significant bit. Blecck. */
- /* parenthesized... */
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(ocf + ((d >> 6) & 0x2)),
- F_OF);
- }
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCR instruction and side effects.
-****************************************************************************/
-static uint16_t
-rcr_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- uint32_t res, cnt;
- uint32_t mask, cf, ocf = 0;
-
- /* rotate right through carry */
- res = d;
- if ((cnt = s % 17) != 0) {
- if (cnt == 1) {
- cf = d & 0x1;
- ocf = ACCESS_FLAG(F_CF) != 0;
- } else
- cf = (d >> (cnt - 1)) & 0x1;
- mask = (1 << (16 - cnt)) - 1;
- res = (d >> cnt) & mask;
- res |= (d << (17 - cnt));
- if (ACCESS_FLAG(F_CF)) {
- res |= 1 << (16 - cnt);
- }
- CONDITIONAL_SET_FLAG(cf, F_CF);
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(ocf + ((d >> 14) & 0x2)),
- F_OF);
- }
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the RCR instruction and side effects.
-****************************************************************************/
-static uint32_t
-rcr_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- uint32_t res, cnt;
- uint32_t mask, cf, ocf = 0;
-
- /* rotate right through carry */
- res = d;
- if ((cnt = s % 33) != 0) {
- if (cnt == 1) {
- cf = d & 0x1;
- ocf = ACCESS_FLAG(F_CF) != 0;
- } else
- cf = (d >> (cnt - 1)) & 0x1;
- mask = (1 << (32 - cnt)) - 1;
- res = (d >> cnt) & mask;
- if (cnt != 1)
- res |= (d << (33 - cnt));
- if (ACCESS_FLAG(F_CF)) { /* carry flag is set */
- res |= 1 << (32 - cnt);
- }
- CONDITIONAL_SET_FLAG(cf, F_CF);
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(ocf + ((d >> 30) & 0x2)),
- F_OF);
- }
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROL instruction and side effects.
-****************************************************************************/
-static uint8_t
-rol_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int res, cnt, mask;
-
- /* rotate left */
- /* s is the rotate distance. It varies from 0 - 8. d is the byte
- * object rotated.
- *
- * have
- *
- * CF B_7 ... B_0
- *
- * The new rotate is done mod 8. Much simpler than the "rcl" or "rcr"
- * operations.
- *
- * IF n > 0 1) B_(7) .. B_(n) <- b_(8-(n+1)) .. b_(0) 2) B_(n-1) ..
- * B_(0) <- b_(7) .. b_(8-n) */
- res = d;
- if ((cnt = s % 8) != 0) {
- /* B_(7) .. B_(n) <- b_(8-(n+1)) .. b_(0) */
- res = (d << cnt);
-
- /* B_(n-1) .. B_(0) <- b_(7) .. b_(8-n) */
- mask = (1 << cnt) - 1;
- res |= (d >> (8 - cnt)) & mask;
-
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- /* OVERFLOW is set *IFF* s==1, then it is the xor of CF and
- * the most significant bit. Blecck. */
- CONDITIONAL_SET_FLAG(s == 1 &&
- XOR2((res & 0x1) + ((res >> 6) & 0x2)),
- F_OF);
- } if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROL instruction and side effects.
-****************************************************************************/
-static uint16_t
-rol_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int res, cnt, mask;
-
- res = d;
- if ((cnt = s % 16) != 0) {
- res = (d << cnt);
- mask = (1 << cnt) - 1;
- res |= (d >> (16 - cnt)) & mask;
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- CONDITIONAL_SET_FLAG(s == 1 &&
- XOR2((res & 0x1) + ((res >> 14) & 0x2)),
- F_OF);
- } if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROL instruction and side effects.
-****************************************************************************/
-static uint32_t
-rol_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- uint32_t res, cnt, mask;
-
- res = d;
- if ((cnt = s % 32) != 0) {
- res = (d << cnt);
- mask = (1 << cnt) - 1;
- res |= (d >> (32 - cnt)) & mask;
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- CONDITIONAL_SET_FLAG(s == 1 &&
- XOR2((res & 0x1) + ((res >> 30) & 0x2)),
- F_OF);
- } if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x1, F_CF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROR instruction and side effects.
-****************************************************************************/
-static uint8_t
-ror_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int res, cnt, mask;
-
- /* rotate right */
- /* s is the rotate distance. It varies from 0 - 8. d is the byte
- * object rotated.
- *
- * have
- *
- * B_7 ... B_0
- *
- * The rotate is done mod 8.
- *
- * IF n > 0 1) B_(8-(n+1)) .. B_(0) <- b_(7) .. b_(n) 2) B_(7) ..
- * B_(8-n) <- b_(n-1) .. b_(0) */
- res = d;
- if ((cnt = s % 8) != 0) { /* not a typo, do nada if cnt==0 */
- /* B_(7) .. B_(8-n) <- b_(n-1) .. b_(0) */
- res = (d << (8 - cnt));
-
- /* B_(8-(n+1)) .. B_(0) <- b_(7) .. b_(n) */
- mask = (1 << (8 - cnt)) - 1;
- res |= (d >> (cnt)) & mask;
-
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x80, F_CF);
- /* OVERFLOW is set *IFF* s==1, then it is the xor of the two
- * most significant bits. Blecck. */
- CONDITIONAL_SET_FLAG(s == 1 && XOR2(res >> 6), F_OF);
- } else if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x80, F_CF);
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROR instruction and side effects.
-****************************************************************************/
-static uint16_t
-ror_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int res, cnt, mask;
-
- res = d;
- if ((cnt = s % 16) != 0) {
- res = (d << (16 - cnt));
- mask = (1 << (16 - cnt)) - 1;
- res |= (d >> (cnt)) & mask;
- CONDITIONAL_SET_FLAG(res & 0x8000, F_CF);
- CONDITIONAL_SET_FLAG(s == 1 && XOR2(res >> 14), F_OF);
- } else if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x8000, F_CF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the ROR instruction and side effects.
-****************************************************************************/
-static uint32_t
-ror_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- uint32_t res, cnt, mask;
-
- res = d;
- if ((cnt = s % 32) != 0) {
- res = (d << (32 - cnt));
- mask = (1 << (32 - cnt)) - 1;
- res |= (d >> (cnt)) & mask;
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_CF);
- CONDITIONAL_SET_FLAG(s == 1 && XOR2(res >> 30), F_OF);
- } else if (s != 0) {
- /* set the new carry flag, Note that it is the low order bit
- * of the result!!! */
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_CF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHL instruction and side effects.
-****************************************************************************/
-static uint8_t
-shl_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 8) {
- cnt = s % 8;
-
- /* last bit shifted out goes into carry flag */
- if (cnt > 0) {
- res = d << cnt;
- cf = d & (1 << (8 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = (uint8_t) d;
- }
-
- if (cnt == 1) {
- /* Needs simplification. */
- CONDITIONAL_SET_FLAG(
- (((res & 0x80) == 0x80) ^
- (ACCESS_FLAG(F_CF) != 0)),
- /* was (emu->x86.R_FLG&F_CF)==F_CF)), */
- F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d << (s - 1)) & 0x80, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHL instruction and side effects.
-****************************************************************************/
-static uint16_t
-shl_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 16) {
- cnt = s % 16;
- if (cnt > 0) {
- res = d << cnt;
- cf = d & (1 << (16 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = (uint16_t) d;
- }
-
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(
- (((res & 0x8000) == 0x8000) ^
- (ACCESS_FLAG(F_CF) != 0)),
- F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d << (s - 1)) & 0x8000, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHL instruction and side effects.
-****************************************************************************/
-static uint32_t
-shl_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 32) {
- cnt = s % 32;
- if (cnt > 0) {
- res = d << cnt;
- cf = d & (1 << (32 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG((((res & 0x80000000) == 0x80000000) ^
- (ACCESS_FLAG(F_CF) != 0)), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d << (s - 1)) & 0x80000000, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHR instruction and side effects.
-****************************************************************************/
-static uint8_t
-shr_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 8) {
- cnt = s % 8;
- if (cnt > 0) {
- cf = d & (1 << (cnt - 1));
- res = d >> cnt;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = (uint8_t) d;
- }
-
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(res >> 6), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d >> (s - 1)) & 0x1, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHR instruction and side effects.
-****************************************************************************/
-static uint16_t
-shr_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 16) {
- cnt = s % 16;
- if (cnt > 0) {
- cf = d & (1 << (cnt - 1));
- res = d >> cnt;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
-
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(res >> 14), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHR instruction and side effects.
-****************************************************************************/
-static uint32_t
-shr_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 32) {
- cnt = s % 32;
- if (cnt > 0) {
- cf = d & (1 << (cnt - 1));
- res = d >> cnt;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(res >> 30), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SAR instruction and side effects.
-****************************************************************************/
-static uint8_t
-sar_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- unsigned int cnt, res, cf, mask, sf;
-
- res = d;
- sf = d & 0x80;
- cnt = s % 8;
- if (cnt > 0 && cnt < 8) {
- mask = (1 << (8 - cnt)) - 1;
- cf = d & (1 << (cnt - 1));
- res = (d >> cnt) & mask;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- if (sf) {
- res |= ~mask;
- }
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- } else if (cnt >= 8) {
- if (sf) {
- res = 0xff;
- SET_FLAG(F_CF);
- CLEAR_FLAG(F_ZF);
- SET_FLAG(F_SF);
- SET_FLAG(F_PF);
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- }
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SAR instruction and side effects.
-****************************************************************************/
-static uint16_t
-sar_word(struct X86EMU *emu, uint16_t d, uint8_t s)
-{
- unsigned int cnt, res, cf, mask, sf;
-
- sf = d & 0x8000;
- cnt = s % 16;
- res = d;
- if (cnt > 0 && cnt < 16) {
- mask = (1 << (16 - cnt)) - 1;
- cf = d & (1 << (cnt - 1));
- res = (d >> cnt) & mask;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- if (sf) {
- res |= ~mask;
- }
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else if (cnt >= 16) {
- if (sf) {
- res = 0xffff;
- SET_FLAG(F_CF);
- CLEAR_FLAG(F_ZF);
- SET_FLAG(F_SF);
- SET_FLAG(F_PF);
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SAR instruction and side effects.
-****************************************************************************/
-static uint32_t
-sar_long(struct X86EMU *emu, uint32_t d, uint8_t s)
-{
- uint32_t cnt, res, cf, mask, sf;
-
- sf = d & 0x80000000;
- cnt = s % 32;
- res = d;
- if (cnt > 0 && cnt < 32) {
- mask = (1 << (32 - cnt)) - 1;
- cf = d & (1 << (cnt - 1));
- res = (d >> cnt) & mask;
- CONDITIONAL_SET_FLAG(cf, F_CF);
- if (sf) {
- res |= ~mask;
- }
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else if (cnt >= 32) {
- if (sf) {
- res = 0xffffffff;
- SET_FLAG(F_CF);
- CLEAR_FLAG(F_ZF);
- SET_FLAG(F_SF);
- SET_FLAG(F_PF);
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHLD instruction and side effects.
-****************************************************************************/
-static uint16_t
-shld_word(struct X86EMU *emu, uint16_t d, uint16_t fill, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 16) {
- cnt = s % 16;
- if (cnt > 0) {
- res = (d << cnt) | (fill >> (16 - cnt));
- cf = d & (1 << (16 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG((((res & 0x8000) == 0x8000) ^
- (ACCESS_FLAG(F_CF) != 0)), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d << (s - 1)) & 0x8000, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHLD instruction and side effects.
-****************************************************************************/
-static uint32_t
-shld_long(struct X86EMU *emu, uint32_t d, uint32_t fill, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 32) {
- cnt = s % 32;
- if (cnt > 0) {
- res = (d << cnt) | (fill >> (32 - cnt));
- cf = d & (1 << (32 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG((((res & 0x80000000) == 0x80000000) ^
- (ACCESS_FLAG(F_CF) != 0)), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CONDITIONAL_SET_FLAG((d << (s - 1)) & 0x80000000, F_CF);
- CLEAR_FLAG(F_OF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_PF);
- SET_FLAG(F_ZF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHRD instruction and side effects.
-****************************************************************************/
-static uint16_t
-shrd_word(struct X86EMU *emu, uint16_t d, uint16_t fill, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 16) {
- cnt = s % 16;
- if (cnt > 0) {
- cf = d & (1 << (cnt - 1));
- res = (d >> cnt) | (fill << (16 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
-
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(res >> 14), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SHRD instruction and side effects.
-****************************************************************************/
-static uint32_t
-shrd_long(struct X86EMU *emu, uint32_t d, uint32_t fill, uint8_t s)
-{
- unsigned int cnt, res, cf;
-
- if (s < 32) {
- cnt = s % 32;
- if (cnt > 0) {
- cf = d & (1 << (cnt - 1));
- res = (d >> cnt) | (fill << (32 - cnt));
- CONDITIONAL_SET_FLAG(cf, F_CF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- } else {
- res = d;
- }
- if (cnt == 1) {
- CONDITIONAL_SET_FLAG(XOR2(res >> 30), F_OF);
- } else {
- CLEAR_FLAG(F_OF);
- }
- } else {
- res = 0;
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- SET_FLAG(F_ZF);
- CLEAR_FLAG(F_SF);
- CLEAR_FLAG(F_PF);
- }
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SBB instruction and side effects.
-****************************************************************************/
-static uint8_t
-sbb_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- if (ACCESS_FLAG(F_CF))
- res = d - s - 1;
- else
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SBB instruction and side effects.
-****************************************************************************/
-static uint16_t
-sbb_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- if (ACCESS_FLAG(F_CF))
- res = d - s - 1;
- else
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x8000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SBB instruction and side effects.
-****************************************************************************/
-static uint32_t
-sbb_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- if (ACCESS_FLAG(F_CF))
- res = d - s - 1;
- else
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80000000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SUB instruction and side effects.
-****************************************************************************/
-static uint8_t
-sub_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 6), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint8_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SUB instruction and side effects.
-****************************************************************************/
-static uint16_t
-sub_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x8000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 14), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return (uint16_t) res;
-}
-/****************************************************************************
-REMARKS:
-Implements the SUB instruction and side effects.
-****************************************************************************/
-static uint32_t
-sub_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
- uint32_t bc;
-
- res = d - s;
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG((res & 0xffffffff) == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
-
- /* calculate the borrow chain. See note at top */
- bc = (res & (~d | s)) | (~d & s);
- CONDITIONAL_SET_FLAG(bc & 0x80000000, F_CF);
- CONDITIONAL_SET_FLAG(XOR2(bc >> 30), F_OF);
- CONDITIONAL_SET_FLAG(bc & 0x8, F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the TEST instruction and side effects.
-****************************************************************************/
-static void
-test_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d & s;
-
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- /* AF == dont care */
- CLEAR_FLAG(F_CF);
-}
-/****************************************************************************
-REMARKS:
-Implements the TEST instruction and side effects.
-****************************************************************************/
-static void
-test_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d & s;
-
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- /* AF == dont care */
- CLEAR_FLAG(F_CF);
-}
-/****************************************************************************
-REMARKS:
-Implements the TEST instruction and side effects.
-****************************************************************************/
-static void
-test_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d & s;
-
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- /* AF == dont care */
- CLEAR_FLAG(F_CF);
-}
-/****************************************************************************
-REMARKS:
-Implements the XOR instruction and side effects.
-****************************************************************************/
-static uint8_t
-xor_byte(struct X86EMU *emu, uint8_t d, uint8_t s)
-{
- uint8_t res; /* all operands in native machine order */
-
- res = d ^ s;
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x80, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res), F_PF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the XOR instruction and side effects.
-****************************************************************************/
-static uint16_t
-xor_word(struct X86EMU *emu, uint16_t d, uint16_t s)
-{
- uint16_t res; /* all operands in native machine order */
-
- res = d ^ s;
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x8000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the XOR instruction and side effects.
-****************************************************************************/
-static uint32_t
-xor_long(struct X86EMU *emu, uint32_t d, uint32_t s)
-{
- uint32_t res; /* all operands in native machine order */
-
- res = d ^ s;
- CLEAR_FLAG(F_OF);
- CONDITIONAL_SET_FLAG(res & 0x80000000, F_SF);
- CONDITIONAL_SET_FLAG(res == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(res & 0xff), F_PF);
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- return res;
-}
-/****************************************************************************
-REMARKS:
-Implements the IMUL instruction and side effects.
-****************************************************************************/
-static void
-imul_byte(struct X86EMU *emu, uint8_t s)
-{
- int16_t res = (int16_t) ((int8_t) emu->x86.R_AL * (int8_t) s);
-
- emu->x86.R_AX = res;
- if (((emu->x86.R_AL & 0x80) == 0 && emu->x86.R_AH == 0x00) ||
- ((emu->x86.R_AL & 0x80) != 0 && emu->x86.R_AH == 0xFF)) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the IMUL instruction and side effects.
-****************************************************************************/
-static void
-imul_word(struct X86EMU *emu, uint16_t s)
-{
- int32_t res = (int16_t) emu->x86.R_AX * (int16_t) s;
-
- emu->x86.R_AX = (uint16_t) res;
- emu->x86.R_DX = (uint16_t) (res >> 16);
- if (((emu->x86.R_AX & 0x8000) == 0 && emu->x86.R_DX == 0x00) ||
- ((emu->x86.R_AX & 0x8000) != 0 && emu->x86.R_DX == 0xFF)) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the IMUL instruction and side effects.
-****************************************************************************/
-static void
-imul_long(struct X86EMU *emu, uint32_t s)
-{
- int64_t res;
-
- res = (int64_t)(int32_t)emu->x86.R_EAX * (int32_t)s;
- emu->x86.R_EAX = (uint32_t)res;
- emu->x86.R_EDX = ((uint64_t)res) >> 32;
- if (((emu->x86.R_EAX & 0x80000000) == 0 && emu->x86.R_EDX == 0x00) ||
- ((emu->x86.R_EAX & 0x80000000) != 0 && emu->x86.R_EDX == 0xFF)) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the MUL instruction and side effects.
-****************************************************************************/
-static void
-mul_byte(struct X86EMU *emu, uint8_t s)
-{
- uint16_t res = (uint16_t) (emu->x86.R_AL * s);
-
- emu->x86.R_AX = res;
- if (emu->x86.R_AH == 0) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the MUL instruction and side effects.
-****************************************************************************/
-static void
-mul_word(struct X86EMU *emu, uint16_t s)
-{
- uint32_t res = emu->x86.R_AX * s;
-
- emu->x86.R_AX = (uint16_t) res;
- emu->x86.R_DX = (uint16_t) (res >> 16);
- if (emu->x86.R_DX == 0) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the MUL instruction and side effects.
-****************************************************************************/
-static void
-mul_long(struct X86EMU *emu, uint32_t s)
-{
- uint64_t res = (uint64_t) emu->x86.R_EAX * s;
-
- emu->x86.R_EAX = (uint32_t) res;
- emu->x86.R_EDX = (uint32_t) (res >> 32);
-
- if (emu->x86.R_EDX == 0) {
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_OF);
- } else {
- SET_FLAG(F_CF);
- SET_FLAG(F_OF);
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the IDIV instruction and side effects.
-****************************************************************************/
-static void
-idiv_byte(struct X86EMU *emu, uint8_t s)
-{
- int32_t dvd, div, mod;
-
- dvd = (int16_t) emu->x86.R_AX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (int8_t) s;
- mod = dvd % (int8_t) s;
- if (div > 0x7f || div < -0x7f) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- emu->x86.R_AL = (int8_t) div;
- emu->x86.R_AH = (int8_t) mod;
-}
-/****************************************************************************
-REMARKS:
-Implements the IDIV instruction and side effects.
-****************************************************************************/
-static void
-idiv_word(struct X86EMU *emu, uint16_t s)
-{
- int32_t dvd, div, mod;
-
- dvd = (((int32_t) emu->x86.R_DX) << 16) | emu->x86.R_AX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (int16_t) s;
- mod = dvd % (int16_t) s;
- if (div > 0x7fff || div < -0x7fff) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_SF);
- CONDITIONAL_SET_FLAG(div == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(mod & 0xff), F_PF);
-
- emu->x86.R_AX = (uint16_t) div;
- emu->x86.R_DX = (uint16_t) mod;
-}
-
-
-/****************************************************************************
-REMARKS:
-Implements the IDIV instruction and side effects.
-****************************************************************************/
-static void
-idiv_long(struct X86EMU *emu, uint32_t s)
-{
- int64_t dvd, div, mod;
-
- dvd = (((int64_t) emu->x86.R_EDX) << 32) | emu->x86.R_EAX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (int32_t) s;
- mod = dvd % (int32_t) s;
- if (div > 0x7fffffff || div < -0x7fffffff) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(mod & 0xff), F_PF);
-
- emu->x86.R_EAX = (uint32_t) div;
- emu->x86.R_EDX = (uint32_t) mod;
-}
-/****************************************************************************
-REMARKS:
-Implements the DIV instruction and side effects.
-****************************************************************************/
-static void
-div_byte(struct X86EMU *emu, uint8_t s)
-{
- uint32_t dvd, div, mod;
-
- dvd = emu->x86.R_AX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (uint8_t) s;
- mod = dvd % (uint8_t) s;
- if (div > 0xff) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- emu->x86.R_AL = (uint8_t) div;
- emu->x86.R_AH = (uint8_t) mod;
-}
-/****************************************************************************
-REMARKS:
-Implements the DIV instruction and side effects.
-****************************************************************************/
-static void
-div_word(struct X86EMU *emu, uint16_t s)
-{
- uint32_t dvd, div, mod;
-
- dvd = (((uint32_t) emu->x86.R_DX) << 16) | emu->x86.R_AX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (uint16_t) s;
- mod = dvd % (uint16_t) s;
- if (div > 0xffff) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_SF);
- CONDITIONAL_SET_FLAG(div == 0, F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(mod & 0xff), F_PF);
-
- emu->x86.R_AX = (uint16_t) div;
- emu->x86.R_DX = (uint16_t) mod;
-}
-/****************************************************************************
-REMARKS:
-Implements the DIV instruction and side effects.
-****************************************************************************/
-static void
-div_long(struct X86EMU *emu, uint32_t s)
-{
- uint64_t dvd, div, mod;
-
- dvd = (((uint64_t) emu->x86.R_EDX) << 32) | emu->x86.R_EAX;
- if (s == 0) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- div = dvd / (uint32_t) s;
- mod = dvd % (uint32_t) s;
- if (div > 0xffffffff) {
- x86emu_intr_raise(emu, 8);
- return;
- }
- CLEAR_FLAG(F_CF);
- CLEAR_FLAG(F_AF);
- CLEAR_FLAG(F_SF);
- SET_FLAG(F_ZF);
- CONDITIONAL_SET_FLAG(PARITY(mod & 0xff), F_PF);
-
- emu->x86.R_EAX = (uint32_t) div;
- emu->x86.R_EDX = (uint32_t) mod;
-}
-/****************************************************************************
-REMARKS:
-Implements the IN string instruction and side effects.
-****************************************************************************/
-static void
-ins(struct X86EMU *emu, int size)
-{
- int inc = size;
-
- if (ACCESS_FLAG(F_DF)) {
- inc = -size;
- }
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* in until CX is ZERO. */
- uint32_t count = ((emu->x86.mode & SYSMODE_PREFIX_DATA) ?
- emu->x86.R_ECX : emu->x86.R_CX);
- switch (size) {
- case 1:
- while (count--) {
- store_byte(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inb) (emu, emu->x86.R_DX));
- emu->x86.R_DI += inc;
- }
- break;
-
- case 2:
- while (count--) {
- store_word(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inw) (emu, emu->x86.R_DX));
- emu->x86.R_DI += inc;
- }
- break;
- case 4:
- while (count--) {
- store_long(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inl) (emu, emu->x86.R_DX));
- emu->x86.R_DI += inc;
- break;
- }
- }
- emu->x86.R_CX = 0;
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_ECX = 0;
- }
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- } else {
- switch (size) {
- case 1:
- store_byte(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inb) (emu, emu->x86.R_DX));
- break;
- case 2:
- store_word(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inw) (emu, emu->x86.R_DX));
- break;
- case 4:
- store_long(emu, emu->x86.R_ES, emu->x86.R_DI,
- (*emu->emu_inl) (emu, emu->x86.R_DX));
- break;
- }
- emu->x86.R_DI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Implements the OUT string instruction and side effects.
-****************************************************************************/
-static void
-outs(struct X86EMU *emu, int size)
-{
- int inc = size;
-
- if (ACCESS_FLAG(F_DF)) {
- inc = -size;
- }
- if (emu->x86.mode & (SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE)) {
- /* dont care whether REPE or REPNE */
- /* out until CX is ZERO. */
- uint32_t count = ((emu->x86.mode & SYSMODE_PREFIX_DATA) ?
- emu->x86.R_ECX : emu->x86.R_CX);
- switch (size) {
- case 1:
- while (count--) {
- (*emu->emu_outb) (emu, emu->x86.R_DX,
- fetch_byte(emu, emu->x86.R_ES, emu->x86.R_SI));
- emu->x86.R_SI += inc;
- }
- break;
-
- case 2:
- while (count--) {
- (*emu->emu_outw) (emu, emu->x86.R_DX,
- fetch_word(emu, emu->x86.R_ES, emu->x86.R_SI));
- emu->x86.R_SI += inc;
- }
- break;
- case 4:
- while (count--) {
- (*emu->emu_outl) (emu, emu->x86.R_DX,
- fetch_long(emu, emu->x86.R_ES, emu->x86.R_SI));
- emu->x86.R_SI += inc;
- break;
- }
- }
- emu->x86.R_CX = 0;
- if (emu->x86.mode & SYSMODE_PREFIX_DATA) {
- emu->x86.R_ECX = 0;
- }
- emu->x86.mode &= ~(SYSMODE_PREFIX_REPE | SYSMODE_PREFIX_REPNE);
- } else {
- switch (size) {
- case 1:
- (*emu->emu_outb) (emu, emu->x86.R_DX,
- fetch_byte(emu, emu->x86.R_ES, emu->x86.R_SI));
- break;
- case 2:
- (*emu->emu_outw) (emu, emu->x86.R_DX,
- fetch_word(emu, emu->x86.R_ES, emu->x86.R_SI));
- break;
- case 4:
- (*emu->emu_outl) (emu, emu->x86.R_DX,
- fetch_long(emu, emu->x86.R_ES, emu->x86.R_SI));
- break;
- }
- emu->x86.R_SI += inc;
- }
-}
-/****************************************************************************
-REMARKS:
-Pushes a word onto the stack.
-
-NOTE: Do not inline this, as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-push_word(struct X86EMU *emu, uint16_t w)
-{
- emu->x86.R_SP -= 2;
- store_word(emu, emu->x86.R_SS, emu->x86.R_SP, w);
-}
-/****************************************************************************
-REMARKS:
-Pushes a long onto the stack.
-
-NOTE: Do not inline this, as (*emu->emu_wrX) is already inline!
-****************************************************************************/
-static void
-push_long(struct X86EMU *emu, uint32_t w)
-{
- emu->x86.R_SP -= 4;
- store_long(emu, emu->x86.R_SS, emu->x86.R_SP, w);
-}
-/****************************************************************************
-REMARKS:
-Pops a word from the stack.
-
-NOTE: Do not inline this, as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint16_t
-pop_word(struct X86EMU *emu)
-{
- uint16_t res;
-
- res = fetch_word(emu, emu->x86.R_SS, emu->x86.R_SP);
- emu->x86.R_SP += 2;
- return res;
-}
-/****************************************************************************
-REMARKS:
-Pops a long from the stack.
-
-NOTE: Do not inline this, as (*emu->emu_rdX) is already inline!
-****************************************************************************/
-static uint32_t
-pop_long(struct X86EMU *emu)
-{
- uint32_t res;
-
- res = fetch_long(emu, emu->x86.R_SS, emu->x86.R_SP);
- emu->x86.R_SP += 4;
- return res;
-}
diff --git a/BaS_gcc/x86emu/x86emu_util.c b/BaS_gcc/x86emu/x86emu_util.c
deleted file mode 100644
index a0e5f86..0000000
--- a/BaS_gcc/x86emu/x86emu_util.c
+++ /dev/null
@@ -1,201 +0,0 @@
-/* $NetBSD: x86emu_util.c,v 1.1 2007/11/30 20:02:50 joerg Exp $ */
-
-/****************************************************************************
-*
-* Realmode X86 Emulator Library
-*
-* Copyright (C) 1996-1999 SciTech Software, Inc.
-* Copyright (C) David Mosberger-Tang
-* Copyright (C) 1999 Egbert Eich
-* Copyright (C) 2007 Joerg Sonnenberger
-*
-* ========================================================================
-*
-* Permission to use, copy, modify, distribute, and sell this software and
-* its documentation for any purpose is hereby granted without fee,
-* provided that the above copyright notice appear in all copies and that
-* both that copyright notice and this permission notice appear in
-* supporting documentation, and that the name of the authors not be used
-* in advertising or publicity pertaining to distribution of the software
-* without specific, written prior permission. The authors makes no
-* representations about the suitability of this software for any purpose.
-* It is provided "as is" without express or implied warranty.
-*
-* THE AUTHORS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
-* INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
-* EVENT SHALL THE AUTHORS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
-* CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
-* USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
-* OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-* PERFORMANCE OF THIS SOFTWARE.
-*
-****************************************************************************/
-
-#include "x86emu.h"
-#include "x86emu_regs.h"
-
-// #define DEBUG
-#include "debug.h"
-
-static __inline uint16_t le16dec(const void *buf)
-{
- const uint8_t *p = (uint8_t *) buf;
-
- return ((p[1] << 8) | p[0]);
-}
-
-static __inline uint32_t le32dec(const void *buf)
-{
- const uint8_t *p = (uint8_t *) buf;
-
- return ((p[3] << 24) | (p[2] << 16) | (p[1] << 8) | p[0]);
-}
-
-static __inline void le16enc(void *buf, uint16_t u)
-{
- uint8_t *p = buf;
-
- p[0] = u & 0xff;
- p[1] = ((unsigned) u >> 8) & 0xff;
-}
-
-static __inline void le32enc(void *buf, uint32_t u)
-{
- uint8_t *p = buf;
-
- p[0] = u & 0xff;
- p[1] = (u >> 8) & 0xff;
- p[2] = (u >> 16) & 0xff;
- p[3] = (u >> 24) & 0xff;
-}
-
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to read
-
-RETURNS:
-Byte value read from emulator memory.
-
-REMARKS:
-Reads a byte value from the emulator memory.
-****************************************************************************/
-static uint8_t rdb(struct X86EMU *emu, uint32_t addr)
-{
- if (addr > emu->mem_size - 1)
- {
- dbg("attempted read outside system memory: 0x%lx. Halt emulator.\r\n", addr);
- X86EMU_halt_sys(emu);
- }
- return emu->mem_base[addr];
-}
-
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to read
-
-RETURNS:
-Word value read from emulator memory.
-
-REMARKS:
-Reads a word value from the emulator memory.
-****************************************************************************/
-static uint16_t rdw(struct X86EMU *emu, uint32_t addr)
-{
- if (addr > emu->mem_size - 2)
- {
- dbg("attempted read outside system memory: 0x%lx. Halt emulator.\r\n", addr);
- X86EMU_halt_sys(emu);
- }
- return le16dec(emu->mem_base + addr);
-}
-
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to read
-
-RETURNS:
-Long value read from emulator memory.
-REMARKS:
-Reads a long value from the emulator memory.
-****************************************************************************/
-static uint32_t rdl(struct X86EMU *emu, uint32_t addr)
-{
- if (addr > emu->mem_size - 4)
- {
- dbg("attempted read outside system memory: 0x%lx. Halt emulator.\r\n", addr);
- X86EMU_halt_sys(emu);
- }
- return le32dec(emu->mem_base + addr);
-}
-
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to read
-val - Value to store
-
-REMARKS:
-Writes a byte value to emulator memory.
-****************************************************************************/
-static void wrb(struct X86EMU *emu, uint32_t addr, uint8_t val)
-{
- if (addr > emu->mem_size - 1)
- {
- dbg("attempted write outside system memory: 0x%lx (0x%02x). Halt emulator.\r\n", addr, val);
- X86EMU_halt_sys(emu);
- }
- emu->mem_base[addr] = val;
-}
-
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to read
-val - Value to store
-
-REMARKS:
-Writes a word value to emulator memory.
-****************************************************************************/
-static void wrw(struct X86EMU *emu, uint32_t addr, uint16_t val)
-{
- if (addr > emu->mem_size - 2)
- {
- dbg("attempted write outside system memory: 0x%lx (0x%04x). Halt emulator\r\n", addr, val);
- X86EMU_halt_sys(emu);
- }
- le16enc(emu->mem_base + addr, val);
-}
-/****************************************************************************
-PARAMETERS:
-addr - Emulator memory address to write
-val - Value to store
-
-REMARKS:
-Writes a long value to emulator memory.
-****************************************************************************/
-static void wrl(struct X86EMU *emu, uint32_t addr, uint32_t val)
-{
- if (addr > emu->mem_size - 4)
- {
- dbg("attempted write outside system memory: 0x%lx (0x%08x)\r\n", addr, val);
- X86EMU_halt_sys(emu);
- }
- le32enc(emu->mem_base + addr, val);
-}
-
-/*----------------------------- Setup -------------------------------------*/
-
-void X86EMU_init_default(struct X86EMU *emu)
-{
- int i;
-
- emu->emu_rdb = rdb;
- emu->emu_rdw = rdw;
- emu->emu_rdl = rdl;
- emu->emu_wrb = wrb;
- emu->emu_wrw = wrw;
- emu->emu_wrl = wrl;
-
- for (i = 0; i < 256; i++)
- {
- emu->_X86EMU_intrTab[i] = NULL;
- }
-}
diff --git a/BaS_gcc/x86emu/x86pcibios.c b/BaS_gcc/x86emu/x86pcibios.c
deleted file mode 100644
index 6042fdf..0000000
--- a/BaS_gcc/x86emu/x86pcibios.c
+++ /dev/null
@@ -1,171 +0,0 @@
-#include "radeonfb.h"
-#include "pci.h"
-#include "x86emu.h"
-#include "x86pcibios.h"
-#include "x86emu_regs.h"
-#include "bas_printf.h"
-
-extern unsigned short offset_port;
-
-// #define DEBUG
-#include "debug.h"
-
-int x86_pcibios_handler(struct X86EMU *emu)
-{
- int ret = 0;
- unsigned long dev;
-
- switch (emu->x86.R_AX)
- {
- case PCI_BIOS_PRESENT:
- dbg("PCI_BIOS_PRESENT\r\n");
- emu->x86.R_AH = 0x00; /* no config space/special cycle support */
- emu->x86.R_AL = 0x01; /* config mechanism 1 */
- emu->x86.R_EDX = 'P' | 'C' << 8 | 'I' << 16 | ' ' << 24;
- emu->x86.R_EBX = 0x0210; /* Version 2.10 */
- emu->x86.R_ECX = 0xFF00; /* FixME: Max bus number */
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case FIND_PCI_DEVICE:
- dbg("FIND_PCI_DEVICE vendor = %04x, device = %04x\r\n", emu->x86.R_DX, emu->x86.R_CX);
- dev = pci_find_device((uintptr_t) emu->x86.R_DX, ((unsigned long) emu->x86.R_CX), 0);
-
- if (dev != 0)
- {
- dbg("dev = %d\r\n", dev);
- emu->x86.R_BH = PCI_BUS_FROM_HANDLE(dev);
- //X86_BH = (char)(dev >> 16) / PCI_MAX_FUNCTION); // dev->bus->secondary;
- emu->x86.R_BL = PCI_DEVICE_FROM_HANDLE(dev) << 3 | PCI_FUNCTION_FROM_HANDLE(dev);
- //X86_BL = (char)dev; // dev->path.u.pci.devfn;
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- }
- else
- {
- dbg("device not found\r\n");
- emu->x86.R_AH = DEVICE_NOT_FOUND;
- emu->x86.R_EFLG |= FB_CF; /* set carry flag */
- ret = 0;
- }
- break;
-
- case FIND_PCI_CLASS_CODE:
- /* FixME: support SI != 0 */
- dbg("FIND_PCI_CLASS_CODE %x", emu->x86.R_ECX);
- dev = pci_find_classcode(emu->x86.R_ECX, 0);
- if (dev != 0) {
- dbg(" ...OK\r\n");
- emu->x86.R_BH = PCI_BUS_FROM_HANDLE(dev);
- emu->x86.R_BL = PCI_DEVICE_FROM_HANDLE(dev) << 3 | PCI_FUNCTION_FROM_HANDLE(dev);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- }
- else
- {
- dbg(" ... error\r\n");
- emu->x86.R_AH = DEVICE_NOT_FOUND;
- emu->x86.R_EFLG |= FB_CF; /* set carry flag */
- ret = 0;
- }
- break;
-
- case READ_CONFIG_BYTE:
- // bus, devfn
- dbg("READ_CONFIG_BYTE bus = %x, devfn = %x, reg = %x\r\n", emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI);
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- emu->x86.R_CL = pci_read_config_byte(dev, emu->x86.R_DI);
- dbg("dev=0x%04x value = 0x%04x\r\n", emu->x86.R_CL);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case READ_CONFIG_WORD:
- // bus, devfn
- dbg("READ_CONFIG_WORD bus = %x, devfn = %x, reg = %x\r\n", emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI);
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- if (emu->x86.R_DI == PCIBAR1)
- emu->x86.R_CX = offset_port + 1;
- else
- emu->x86.R_CX = pci_read_config_word(dev, emu->x86.R_DI);
- dbg("offset_port=0x%04x dev=0x%04x, value = %x\r\n", offset_port, dev, emu->x86.R_CX);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case READ_CONFIG_DWORD:
- // bus, devfn
- dbg("READ_CONFIG_DWORD bus = %x, devfn = %x, reg = %x\r\n", emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI);
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- if (emu->x86.R_DI == PCIBAR1)
- emu->x86.R_CX = (unsigned long) offset_port + 1;
- else
- emu->x86.R_ECX = pci_read_config_longword(dev, emu->x86.R_DI);
- dbg("value = %x\r\n", emu->x86.R_ECX);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case WRITE_CONFIG_BYTE:
- // bus, devfn
- dbg("READ_CONFIG_BYTE bus = %x, devfn = %x, reg = %x, value = %x\r\n",
- emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI, emu->x86.R_CL);
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- pci_write_config_byte(dev, emu->x86.R_DI, emu->x86.R_CL);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case WRITE_CONFIG_WORD:
- // bus, devfn
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- dbg("WRITE_CONFIG_WORD bus = %x, devfn = %x, reg = %x, value = %x\r\n", emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI, emu->x86.R_CX);
- if (emu->x86.R_DI == PCIBAR1)
- {
- offset_port = emu->x86.R_CX;
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
- }
- pci_write_config_word(dev, emu->x86.R_DI, emu->x86.R_CX);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- case WRITE_CONFIG_DWORD:
- // bus, devfn
- dev = PCI_HANDLE(emu->x86.R_BH, emu->x86.R_BL >> 3, emu->x86.R_BL & 7);
- dbg("WRITE_CONFIG_DWORD bus = %x, devfn = %x, value = %x\r\n",
- emu->x86.R_BH, emu->x86.R_BL, emu->x86.R_DI, emu->x86.R_ECX);
- if (emu->x86.R_DI == PCIBAR1)
- {
- offset_port = (unsigned short) emu->x86.R_ECX & 0xFFFC;
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
- }
- pci_write_config_longword(dev, emu->x86.R_DI, emu->x86.R_ECX);
- emu->x86.R_AH = SUCCESSFUL;
- emu->x86.R_EFLG &= ~FB_CF; /* clear carry flag */
- ret = 1;
- break;
-
- default:
- dbg("PCI_BIOS FUNC_NOT_SUPPORTED\r\n");
- emu->x86.R_AH = FUNC_NOT_SUPPORTED;
- emu->x86.R_EFLG |= FB_CF;
- break;
- }
-
- return ret;
-}
diff --git a/BaS_gcc/xhdi/xhdi_interface.c b/BaS_gcc/xhdi/xhdi_interface.c
deleted file mode 100644
index 3b41f8e..0000000
--- a/BaS_gcc/xhdi/xhdi_interface.c
+++ /dev/null
@@ -1,314 +0,0 @@
-/*
- * xhdi_sd.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 01.05.2013
- * Copyright 2012: M. Fröschle
- */
-
-#include
-#include
-
-#include "xhdi_sd.h"
-#include "bas_printf.h"
-
-
-uint32_t xhdi_call(uint16_t *stack)
-{
- uint16_t opcode = *stack;
-
- switch (opcode)
- {
- case XHDI_VERSION:
- return xhdi_version();
- break;
-
- case XHDI_INQUIRE_TARGET:
- {
- struct XHINQTARGET_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint32_t *blocksize;
- uint32_t *deviceflags;
- char *productname;
- } *args = (struct XHINQTARGET_args *) stack;
-
- return xhdi_inquire_target(args->major, args->minor, args->blocksize,
- args->deviceflags, args->productname);
- }
- break;
-
- case XHDI_RESERVE:
- {
- struct XHRESERVE_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint16_t do_reserve;
- uint16_t key;
- } *args = (struct XHRESERVE_args *) stack;
-
- return xhdi_reserve(args->major, args->minor, args->do_reserve, args->key);
- }
-
- case XHDI_LOCK:
- {
- struct XHLOCK_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint16_t do_lock;
- uint16_t key;
- } *args = (struct XHLOCK_args *) stack;
-
- return xhdi_lock(args->major, args->minor, args->do_lock, args->key);
- }
-
- case XHDI_STOP:
- {
- struct XHSTOP_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint16_t do_stop;
- uint16_t key;
- } *args = (struct XHSTOP_args *) stack;
-
- return xhdi_stop(args->major, args->minor, args->do_stop, args->key);
- }
-
- case XHDI_EJECT:
- {
- struct XHEJECT_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint16_t do_eject;
- uint16_t key;
- } *args = (struct XHEJECT_args *) stack;
-
- return xhdi_eject(args->major, args->minor, args->do_eject, args->key);
- }
-
- case XHDI_DRIVEMAP:
- {
- return xhdi_drivemap();
- }
-
- case XHDI_INQUIRE_DEVICE:
- {
- struct XHINQDEV_args
- {
- uint16_t opcode;
- uint16_t drv;
- uint16_t *major;
- uint16_t *minor;
- uint32_t *start;
- BPB *bpb;
- } *args = (struct XHINQDEV_args *) stack;
-
- return xhdi_inquire_device(args->drv, args->major, args->minor, args->start,
- args->bpb);
- }
-
- case XHDI_INQUIRE_DRIVER:
- {
- struct XHINQDRIVER_args
- {
- uint16_t opcode;
- uint16_t dev;
- char *name;
- char *version;
- char *company;
- uint16_t *ahdi_version;
- uint16_t *maxIPL;
- } *args = (struct XHINQDRIVER_args *) stack;
-
- return xhdi_inquire_driver(args->dev, args->name, args->version, args->company,
- args->ahdi_version, args->maxIPL);
- }
-
- case XHDI_NEW_COOKIE:
- {
- struct XHNEWCOOKIE_args
- {
- uint16_t opcode;
- uint32_t newcookie;
- } *args = (struct XHNEWCOOKIE_args *) stack;
-
- return xhdi_new_cookie(args->newcookie);
- }
-
- case XHDI_READ_WRITE:
- {
- struct XHREADWRITE_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint16_t rw;
- uint32_t sector;
- uint16_t count;
- void *buf;
- } *args = (struct XHREADWRITE_args *) stack;
-
- return xhdi_read_write(args->major, args->minor,
- args->rw, args->sector,
- args->count, args->buf);
- }
-
- case XHDI_INQUIRE_TARGET2:
- {
- struct XHINQTARGET2_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint32_t *blocksize;
- uint32_t *deviceflags;
- char *productname;
- uint16_t stringlen;
- } *args = (struct XHINQTARGET2_args *) stack;
-
- return xhdi_inquire_target2(args->major, args->minor, args->blocksize,
- args->deviceflags, args->productname, args->stringlen);
- }
-
- case XHDI_INQUIRE_DEVICE2:
- {
- struct XHINQDEV2_args
- {
- uint16_t opcode;
- uint16_t drv;
- uint16_t *major;
- uint16_t *minor;
- uint32_t *start;
- BPB *bpb;
- uint32_t *blocks;
- char *partid;
- } *args = (struct XHINQDEV2_args *) stack;
-
- return xhdi_inquire_device2(args->drv, args->major, args->minor, args->start,
- args->bpb, args->blocks, args->partid);
- }
-
- case XHDI_DRIVER_SPECIAL:
- {
- struct XHDRIVERSPECIAL_args
- {
- uint16_t opcode;
- uint32_t key1;
- uint32_t key2;
- uint16_t subopcode;
- void *data;
- } *args = (struct XHDRIVERSPECIAL_args *) stack;
-
- return xhdi_driver_special(args->key1, args->key2, args->subopcode,
- args->data);
- }
-
- case XHDI_GET_CAPACITY:
- {
- struct XHGETCAPACITY_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint32_t *blocks;
- uint32_t *blocksize;
- } *args = (struct XHGETCAPACITY_args *) stack;
-
- return xhdi_get_capacity(args->major, args->minor, args->blocks,
- args->blocksize);
- }
-
- case XHDI_MEDIUM_CHANGED:
- {
- struct XHMEDIUMCHANGED_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- } *args = (struct XHMEDIUMCHANGED_args *) stack;
-
- return xhdi_medium_changed(args->major, args->minor);
- }
-
- case XHDI_MINT_INFO:
- {
- struct XHMINTINFO_args
- {
- uint16_t opcode;
- uint16_t subopcode;
- void *data;
- } *args = (struct XHMINTINFO_args *) stack;
-
- return xhdi_mint_info(args->subopcode, args->data);
- }
-
- case XHDI_DOS_LIMITS:
- {
- struct XHDOSLIMITS_args
- {
- uint16_t opcode;
- uint16_t which;
- uint32_t limit;
- } *args = (struct XHDOSLIMITS_args *) stack;
-
- return xhdi_dos_limits(args->which, args->limit);
- }
-
- case XHDI_LAST_ACCESS:
- {
- struct XHLASTACCESS_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- uint32_t *ms;
- } *args = (struct XHLASTACCESS_args *) stack;
-
- return xhdi_last_access(args->major, args->minor, args->ms);
- }
-
- case XHDI_REACCESS:
- {
- struct XHREACCESS_args
- {
- uint16_t opcode;
- uint16_t major;
- uint16_t minor;
- } *args = (struct XHREACCESS_args *) stack;
-
- return xhdi_reaccess(args->major, args->minor);
- }
-
- default:
- {
- xprintf("unknown XHDI function 0x%x\r\n", opcode);
- return EINVFN;
- break;
- }
- }
-}
-
diff --git a/BaS_gcc/xhdi/xhdi_sd.c b/BaS_gcc/xhdi/xhdi_sd.c
deleted file mode 100644
index a16567f..0000000
--- a/BaS_gcc/xhdi/xhdi_sd.c
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * xhdi_sd.c
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 01.05.2013
- * Copyright 2012 M. Fröschle
- */
-
-#include
-#include
-
-#include "xhdi_sd.h"
-#include "bas_printf.h"
-#include "bas_string.h"
-#include "diskio.h"
-
-#define DRIVER_VERSION 0x130
-
-#define MY_MAJOR 7
-#define MY_MINOR 0
-
-uint16_t xhdi_version(void)
-{
- return DRIVER_VERSION;
-}
-
-uint32_t xhdi_inquire_target(uint16_t major, uint16_t minor, uint32_t *block_size, uint32_t *flags,
- char *product_name)
-{
- return xhdi_inquire_target2(major, minor, block_size, flags, product_name, 33);
-}
-
-uint32_t xhdi_reserve(uint16_t major, uint16_t minor, uint16_t do_reserve, uint16_t key)
-{
- if (major == MY_MAJOR)
- return ERROR; /* device cannot be reserved */
-
- return EUNDEV;
-}
-
-uint32_t xhdi_lock(uint16_t major, uint16_t minor, uint16_t do_lock, uint16_t key)
-{
- if (major == MY_MAJOR)
- return ERROR; /* device cannot be locked */
-
- return EUNDEV;
-}
-
-uint32_t xhdi_stop(uint16_t major, uint16_t minor, uint16_t do_stop, uint16_t key)
-{
- if (major == MY_MAJOR)
- return ERROR; /* device cannot be locked */
-
- return EUNDEV;
-}
-
-uint32_t xhdi_eject(uint16_t major, uint16_t minor, uint16_t do_eject, uint16_t key)
-{
- if (major == MY_MAJOR)
- return ERROR; /* device cannot be ejected */
-
- return EUNDEV;
-}
-
-uint32_t xhdi_drivemap(void)
-{
- long map = (1 << ('S' - 'A'));
-
- return map;
-}
-
-uint32_t xhdi_inquire_device(uint16_t bios_device, uint16_t *major, uint16_t *minor,
- uint32_t *start_sector, /* BPB */ void *bpb)
-{
- if (major != NULL) *major = MY_MAJOR;
- if (minor != NULL) *minor = MY_MINOR;
- if (start_sector != NULL) *start_sector = 0;
-
- return E_OK;
-}
-
-uint32_t xhdi_inquire_driver(uint16_t bios_device, char *name, char *version,
- char *company, uint16_t *ahdi_version, uint16_t *maxIPL)
-{
- if (bios_device == 'S' - 'A')
- {
- if (name != NULL) strcpy(name, "BaS SD-card driver");
- if (version != NULL) strcpy(version, "0.1");
- if (company != NULL) strcpy(company, "Markus Fröschle");
- if (ahdi_version != NULL) *ahdi_version = 300;
- if (maxIPL != NULL) *maxIPL = 7;
-
- return E_OK;
- }
- return EUNDEV;
-}
-
-uint32_t xhdi_new_cookie(uint32_t newcookie)
-{
- return EUNDEV;
-}
-
-uint32_t xhdi_read_write(uint16_t major, uint16_t minor, uint16_t rwflag,
- uint32_t recno, uint16_t count, void *buf)
-{
- int ret;
- uint16_t num_sectors;
- int16_t s_count = count;
- uint16_t retries;
- const uint16_t max_retries = 3;
-
- if (major == MY_MAJOR)
- {
- do {
- num_sectors = ((s_count > 63) ? 63 : s_count);
-
- retries = 0;
- do {
- ret = ((rwflag & 1) ? disk_write(0, buf, recno, num_sectors) : disk_read(0, buf, recno, num_sectors));
- if (ret != RES_OK)
- {
- disk_reset(0);
- retries++;
- if (retries < max_retries) continue;
-
- xprintf("SD card %s error at sector %lx: %d\r\n", (rwflag & 1) ? "write" : "read", recno, ret);
- return ERROR;
- }
- } while (retries < max_retries && ret != RES_OK);
-
- buf += num_sectors * 512;
- recno += num_sectors;
- s_count -= num_sectors;
- } while (s_count > 0);
-
- return E_OK;
- }
- return EUNDEV;
-}
-
-uint32_t xhdi_inquire_target2(uint16_t major, uint16_t minor, uint32_t *block_size,
- uint32_t *device_flags, char *product_name, uint16_t stringlen)
-{
- if (major == MY_MAJOR)
- {
- if (block_size != NULL) *block_size = 512;
- if (device_flags != NULL) *device_flags = XH_TARGET_REMOVABLE;
- if (product_name != NULL) strncpy(product_name, "BaS SD driver", stringlen);
-
- return E_OK;
-
- }
- return EUNDEV;
-}
-
-uint32_t xhdi_inquire_device2(uint16_t bios_device, uint16_t *major, uint16_t *minor,
- uint32_t *start_sector, BPB *bpb, uint32_t *blocks, char *partid)
-{
-
- if (bios_device == 'S' - 'A')
- {
- return E_OK;
- }
- return EUNDEV;
-}
-
-uint32_t xhdi_driver_special(uint32_t key1, uint32_t key2, uint16_t subopcode, void *data)
-{
- return EUNDEV;
-}
-
-uint32_t xhdi_get_capacity(uint16_t major, uint16_t minor, uint32_t *blocks, uint32_t *bs)
-{
- if (major == MY_MAJOR)
- {
- if (blocks != 0)
- {
- if (disk_ioctl(0, GET_SECTOR_COUNT, blocks) != RES_OK)
- {
- xprintf("disk_ioctl(0, GET_SECTOR_COUNT, %p) failed at %s:%d\r\n", blocks, __FILE__, __LINE__);
-
- return ERROR;
- }
- //xprintf("%s:%d: determined sector count to %ld\r\n", __FILE__, __LINE__, *blocks);
- }
-
- if (bs != 0)
- {
- if (disk_ioctl(0, GET_SECTOR_SIZE, bs) != RES_OK)
- {
- xprintf("disk_ioctl(0, GET_SECTOR_SIZE, %p) failed at %s:%dr\n", bs, __FILE__, __LINE__);
-
- return ERROR;
- }
- //xprintf("%s:%d: determined sector size to %ld\r\n", __FILE__, __LINE__, *bs);
- }
- return E_OK;
- }
- return EUNDEV;
-}
-
-uint32_t xhdi_medium_changed(uint16_t major, uint16_t minor)
-{
- if (major == MY_MAJOR)
- return 1; /* may have changed */
-
- return EUNDEV;
-}
-
-uint32_t xhdi_mint_info(uint16_t opcode, void *data)
-{
- return EUNDEV;
-}
-
-uint32_t xhdi_dos_limits(uint16_t which, uint32_t limit)
-{
- return EUNDEV;
-}
-
-uint32_t xhdi_last_access(uint16_t major, uint16_t minor, uint32_t *ms)
-{
- return EUNDEV;
-}
-
-uint32_t xhdi_reaccess(uint16_t major, uint16_t minor)
-{
- return EUNDEV;
-}
diff --git a/BaS_gcc/xhdi/xhdi_vec.S b/BaS_gcc/xhdi/xhdi_vec.S
deleted file mode 100644
index e04c437..0000000
--- a/BaS_gcc/xhdi/xhdi_vec.S
+++ /dev/null
@@ -1,65 +0,0 @@
-/*
- * xhdi_vec.S
- *
- * XHDI entry point for EmuTOS into BaS' SD-card driver
- *
- * This file is part of BaS_gcc.
- *
- * BaS_gcc is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * BaS_gcc is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with BaS_gcc. If not, see .
- *
- * Created on: 26.02.2013
- * Author: Markus Fröschle
- */
-
-//
-// XHDI entry point
-//
- .extern _xhdi_call
-
- .globl _xhdi_vec
- .globl _xhdi_sd_install
-
-//
-// this is where the XHDI cookie points to:
-//
-
- .text
- .byte 'B','A','S','_'
-_xhdi_vec:
- lea -12(sp),sp // save all used registers according to XHDI spec
- movem.l d1/a0-a1,(sp)
-
- pea 16(sp) // forward address of parameters on stack
- jsr _xhdi_call // to internal routine
- addq.l #4,sp // correct stack
-
- movem.l (sp),d1/a0-a1 // restore registers
- lea 12(sp),sp
- rts
-
- .bss
-_old_vector:
- .long 1
-
- .text
-
-//
-// trap #0 handler to bring the address of the disk routines into TOS
-//
-_xhdi_sd_install:
- move.l 4(sp),d0 // address of the old XHDI vector
- move.l d0,_old_vector // save it - just in case we need it later
- move.l #_xhdi_vec,d0 // return our BaS vector to TOS
- move.l d0,a0 //
- rte
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..8000a6f
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,504 @@
+ GNU LESSER GENERAL PUBLIC LICENSE
+ Version 2.1, February 1999
+
+ Copyright (C) 1991, 1999 Free Software Foundation, Inc.
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+[This is the first released version of the Lesser GPL. It also counts
+ as the successor of the GNU Library Public License, version 2, hence
+ the version number 2.1.]
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+Licenses are intended to guarantee your freedom to share and change
+free software--to make sure the software is free for all its users.
+
+ This license, the Lesser General Public License, applies to some
+specially designated software packages--typically libraries--of the
+Free Software Foundation and other authors who decide to use it. You
+can use it too, but we suggest you first think carefully about whether
+this license or the ordinary General Public License is the better
+strategy to use in any particular case, based on the explanations below.
+
+ When we speak of free software, we are referring to freedom of use,
+not price. Our General Public Licenses are designed to make sure that
+you have the freedom to distribute copies of free software (and charge
+for this service if you wish); that you receive source code or can get
+it if you want it; that you can change the software and use pieces of
+it in new free programs; and that you are informed that you can do
+these things.
+
+ To protect your rights, we need to make restrictions that forbid
+distributors to deny you these rights or to ask you to surrender these
+rights. These restrictions translate to certain responsibilities for
+you if you distribute copies of the library or if you modify it.
+
+ For example, if you distribute copies of the library, whether gratis
+or for a fee, you must give the recipients all the rights that we gave
+you. You must make sure that they, too, receive or can get the source
+code. If you link other code with the library, you must provide
+complete object files to the recipients, so that they can relink them
+with the library after making changes to the library and recompiling
+it. And you must show them these terms so they know their rights.
+
+ We protect your rights with a two-step method: (1) we copyright the
+library, and (2) we offer you this license, which gives you legal
+permission to copy, distribute and/or modify the library.
+
+ To protect each distributor, we want to make it very clear that
+there is no warranty for the free library. Also, if the library is
+modified by someone else and passed on, the recipients should know
+that what they have is not the original version, so that the original
+author's reputation will not be affected by problems that might be
+introduced by others.
+
+ Finally, software patents pose a constant threat to the existence of
+any free program. We wish to make sure that a company cannot
+effectively restrict the users of a free program by obtaining a
+restrictive license from a patent holder. Therefore, we insist that
+any patent license obtained for a version of the library must be
+consistent with the full freedom of use specified in this license.
+
+ Most GNU software, including some libraries, is covered by the
+ordinary GNU General Public License. This license, the GNU Lesser
+General Public License, applies to certain designated libraries, and
+is quite different from the ordinary General Public License. We use
+this license for certain libraries in order to permit linking those
+libraries into non-free programs.
+
+ When a program is linked with a library, whether statically or using
+a shared library, the combination of the two is legally speaking a
+combined work, a derivative of the original library. The ordinary
+General Public License therefore permits such linking only if the
+entire combination fits its criteria of freedom. The Lesser General
+Public License permits more lax criteria for linking other code with
+the library.
+
+ We call this license the "Lesser" General Public License because it
+does Less to protect the user's freedom than the ordinary General
+Public License. It also provides other free software developers Less
+of an advantage over competing non-free programs. These disadvantages
+are the reason we use the ordinary General Public License for many
+libraries. However, the Lesser license provides advantages in certain
+special circumstances.
+
+ For example, on rare occasions, there may be a special need to
+encourage the widest possible use of a certain library, so that it becomes
+a de-facto standard. To achieve this, non-free programs must be
+allowed to use the library. A more frequent case is that a free
+library does the same job as widely used non-free libraries. In this
+case, there is little to gain by limiting the free library to free
+software only, so we use the Lesser General Public License.
+
+ In other cases, permission to use a particular library in non-free
+programs enables a greater number of people to use a large body of
+free software. For example, permission to use the GNU C Library in
+non-free programs enables many more people to use the whole GNU
+operating system, as well as its variant, the GNU/Linux operating
+system.
+
+ Although the Lesser General Public License is Less protective of the
+users' freedom, it does ensure that the user of a program that is
+linked with the Library has the freedom and the wherewithal to run
+that program using a modified version of the Library.
+
+ The precise terms and conditions for copying, distribution and
+modification follow. Pay close attention to the difference between a
+"work based on the library" and a "work that uses the library". The
+former contains code derived from the library, whereas the latter must
+be combined with the library in order to run.
+
+ GNU LESSER GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License Agreement applies to any software library or other
+program which contains a notice placed by the copyright holder or
+other authorized party saying it may be distributed under the terms of
+this Lesser General Public License (also called "this License").
+Each licensee is addressed as "you".
+
+ A "library" means a collection of software functions and/or data
+prepared so as to be conveniently linked with application programs
+(which use some of those functions and data) to form executables.
+
+ The "Library", below, refers to any such software library or work
+which has been distributed under these terms. A "work based on the
+Library" means either the Library or any derivative work under
+copyright law: that is to say, a work containing the Library or a
+portion of it, either verbatim or with modifications and/or translated
+straightforwardly into another language. (Hereinafter, translation is
+included without limitation in the term "modification".)
+
+ "Source code" for a work means the preferred form of the work for
+making modifications to it. For a library, complete source code means
+all the source code for all modules it contains, plus any associated
+interface definition files, plus the scripts used to control compilation
+and installation of the library.
+
+ Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running a program using the Library is not restricted, and output from
+such a program is covered only if its contents constitute a work based
+on the Library (independent of the use of the Library in a tool for
+writing it). Whether that is true depends on what the Library does
+and what the program that uses the Library does.
+
+ 1. You may copy and distribute verbatim copies of the Library's
+complete source code as you receive it, in any medium, provided that
+you conspicuously and appropriately publish on each copy an
+appropriate copyright notice and disclaimer of warranty; keep intact
+all the notices that refer to this License and to the absence of any
+warranty; and distribute a copy of this License along with the
+Library.
+
+ You may charge a fee for the physical act of transferring a copy,
+and you may at your option offer warranty protection in exchange for a
+fee.
+
+ 2. You may modify your copy or copies of the Library or any portion
+of it, thus forming a work based on the Library, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) The modified work must itself be a software library.
+
+ b) You must cause the files modified to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ c) You must cause the whole of the work to be licensed at no
+ charge to all third parties under the terms of this License.
+
+ d) If a facility in the modified Library refers to a function or a
+ table of data to be supplied by an application program that uses
+ the facility, other than as an argument passed when the facility
+ is invoked, then you must make a good faith effort to ensure that,
+ in the event an application does not supply such function or
+ table, the facility still operates, and performs whatever part of
+ its purpose remains meaningful.
+
+ (For example, a function in a library to compute square roots has
+ a purpose that is entirely well-defined independent of the
+ application. Therefore, Subsection 2d requires that any
+ application-supplied function or table used by this function must
+ be optional: if the application does not supply it, the square
+ root function must still compute square roots.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Library,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Library, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote
+it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Library.
+
+In addition, mere aggregation of another work not based on the Library
+with the Library (or with a work based on the Library) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may opt to apply the terms of the ordinary GNU General Public
+License instead of this License to a given copy of the Library. To do
+this, you must alter all the notices that refer to this License, so
+that they refer to the ordinary GNU General Public License, version 2,
+instead of to this License. (If a newer version than version 2 of the
+ordinary GNU General Public License has appeared, then you can specify
+that version instead if you wish.) Do not make any other change in
+these notices.
+
+ Once this change is made in a given copy, it is irreversible for
+that copy, so the ordinary GNU General Public License applies to all
+subsequent copies and derivative works made from that copy.
+
+ This option is useful when you wish to copy part of the code of
+the Library into a program that is not a library.
+
+ 4. You may copy and distribute the Library (or a portion or
+derivative of it, under Section 2) in object code or executable form
+under the terms of Sections 1 and 2 above provided that you accompany
+it with the complete corresponding machine-readable source code, which
+must be distributed under the terms of Sections 1 and 2 above on a
+medium customarily used for software interchange.
+
+ If distribution of object code is made by offering access to copy
+from a designated place, then offering equivalent access to copy the
+source code from the same place satisfies the requirement to
+distribute the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 5. A program that contains no derivative of any portion of the
+Library, but is designed to work with the Library by being compiled or
+linked with it, is called a "work that uses the Library". Such a
+work, in isolation, is not a derivative work of the Library, and
+therefore falls outside the scope of this License.
+
+ However, linking a "work that uses the Library" with the Library
+creates an executable that is a derivative of the Library (because it
+contains portions of the Library), rather than a "work that uses the
+library". The executable is therefore covered by this License.
+Section 6 states terms for distribution of such executables.
+
+ When a "work that uses the Library" uses material from a header file
+that is part of the Library, the object code for the work may be a
+derivative work of the Library even though the source code is not.
+Whether this is true is especially significant if the work can be
+linked without the Library, or if the work is itself a library. The
+threshold for this to be true is not precisely defined by law.
+
+ If such an object file uses only numerical parameters, data
+structure layouts and accessors, and small macros and small inline
+functions (ten lines or less in length), then the use of the object
+file is unrestricted, regardless of whether it is legally a derivative
+work. (Executables containing this object code plus portions of the
+Library will still fall under Section 6.)
+
+ Otherwise, if the work is a derivative of the Library, you may
+distribute the object code for the work under the terms of Section 6.
+Any executables containing that work also fall under Section 6,
+whether or not they are linked directly with the Library itself.
+
+ 6. As an exception to the Sections above, you may also combine or
+link a "work that uses the Library" with the Library to produce a
+work containing portions of the Library, and distribute that work
+under terms of your choice, provided that the terms permit
+modification of the work for the customer's own use and reverse
+engineering for debugging such modifications.
+
+ You must give prominent notice with each copy of the work that the
+Library is used in it and that the Library and its use are covered by
+this License. You must supply a copy of this License. If the work
+during execution displays copyright notices, you must include the
+copyright notice for the Library among them, as well as a reference
+directing the user to the copy of this License. Also, you must do one
+of these things:
+
+ a) Accompany the work with the complete corresponding
+ machine-readable source code for the Library including whatever
+ changes were used in the work (which must be distributed under
+ Sections 1 and 2 above); and, if the work is an executable linked
+ with the Library, with the complete machine-readable "work that
+ uses the Library", as object code and/or source code, so that the
+ user can modify the Library and then relink to produce a modified
+ executable containing the modified Library. (It is understood
+ that the user who changes the contents of definitions files in the
+ Library will not necessarily be able to recompile the application
+ to use the modified definitions.)
+
+ b) Use a suitable shared library mechanism for linking with the
+ Library. A suitable mechanism is one that (1) uses at run time a
+ copy of the library already present on the user's computer system,
+ rather than copying library functions into the executable, and (2)
+ will operate properly with a modified version of the library, if
+ the user installs one, as long as the modified version is
+ interface-compatible with the version that the work was made with.
+
+ c) Accompany the work with a written offer, valid for at
+ least three years, to give the same user the materials
+ specified in Subsection 6a, above, for a charge no more
+ than the cost of performing this distribution.
+
+ d) If distribution of the work is made by offering access to copy
+ from a designated place, offer equivalent access to copy the above
+ specified materials from the same place.
+
+ e) Verify that the user has already received a copy of these
+ materials or that you have already sent this user a copy.
+
+ For an executable, the required form of the "work that uses the
+Library" must include any data and utility programs needed for
+reproducing the executable from it. However, as a special exception,
+the materials to be distributed need not include anything that is
+normally distributed (in either source or binary form) with the major
+components (compiler, kernel, and so on) of the operating system on
+which the executable runs, unless that component itself accompanies
+the executable.
+
+ It may happen that this requirement contradicts the license
+restrictions of other proprietary libraries that do not normally
+accompany the operating system. Such a contradiction means you cannot
+use both them and the Library together in an executable that you
+distribute.
+
+ 7. You may place library facilities that are a work based on the
+Library side-by-side in a single library together with other library
+facilities not covered by this License, and distribute such a combined
+library, provided that the separate distribution of the work based on
+the Library and of the other library facilities is otherwise
+permitted, and provided that you do these two things:
+
+ a) Accompany the combined library with a copy of the same work
+ based on the Library, uncombined with any other library
+ facilities. This must be distributed under the terms of the
+ Sections above.
+
+ b) Give prominent notice with the combined library of the fact
+ that part of it is a work based on the Library, and explaining
+ where to find the accompanying uncombined form of the same work.
+
+ 8. You may not copy, modify, sublicense, link with, or distribute
+the Library except as expressly provided under this License. Any
+attempt otherwise to copy, modify, sublicense, link with, or
+distribute the Library is void, and will automatically terminate your
+rights under this License. However, parties who have received copies,
+or rights, from you under this License will not have their licenses
+terminated so long as such parties remain in full compliance.
+
+ 9. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Library or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Library (or any work based on the
+Library), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Library or works based on it.
+
+ 10. Each time you redistribute the Library (or any work based on the
+Library), the recipient automatically receives a license from the
+original licensor to copy, distribute, link with or modify the Library
+subject to these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties with
+this License.
+
+ 11. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Library at all. For example, if a patent
+license would not permit royalty-free redistribution of the Library by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Library.
+
+If any portion of this section is held invalid or unenforceable under any
+particular circumstance, the balance of the section is intended to apply,
+and the section as a whole is intended to apply in other circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 12. If the distribution and/or use of the Library is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Library under this License may add
+an explicit geographical distribution limitation excluding those countries,
+so that distribution is permitted only in or among countries not thus
+excluded. In such case, this License incorporates the limitation as if
+written in the body of this License.
+
+ 13. The Free Software Foundation may publish revised and/or new
+versions of the Lesser General Public License from time to time.
+Such new versions will be similar in spirit to the present version,
+but may differ in detail to address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Library
+specifies a version number of this License which applies to it and
+"any later version", you have the option of following the terms and
+conditions either of that version or of any later version published by
+the Free Software Foundation. If the Library does not specify a
+license version number, you may choose any version ever published by
+the Free Software Foundation.
+
+ 14. If you wish to incorporate parts of the Library into other free
+programs whose distribution conditions are incompatible with these,
+write to the author to ask for permission. For software which is
+copyrighted by the Free Software Foundation, write to the Free
+Software Foundation; we sometimes make exceptions for this. Our
+decision will be guided by the two goals of preserving the free status
+of all derivatives of our free software and of promoting the sharing
+and reuse of software generally.
+
+ NO WARRANTY
+
+ 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO
+WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW.
+EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR
+OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY
+KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE
+LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME
+THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
+
+ 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
+WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
+AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU
+FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
+CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
+LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
+RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
+FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
+SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
+DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Libraries
+
+ If you develop a new library, and you want it to be of the greatest
+possible use to the public, we recommend making it free software that
+everyone can redistribute and change. You can do so by permitting
+redistribution under these terms (or, alternatively, under the terms of the
+ordinary General Public License).
+
+ To apply these terms, attach the following notices to the library. It is
+safest to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least the
+"copyright" line and a pointer to where the full notice is found.
+
+
+ Copyright (C)
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ USA
+
+Also add information on how to contact you by electronic and paper mail.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the library, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the
+ library `Frob' (a library for tweaking knobs) written by James Random
+ Hacker.
+
+ , 1 April 1990
+ Ty Coon, President of Vice
+
+That's all there is to it!