diff options
| author | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 18:38:57 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@athlon.transmeta.com> | 2002-02-04 18:38:57 -0800 |
| commit | a5287abe398b74df9040d6dcd8356cf53a174e84 (patch) | |
| tree | 181a6ce3feb61fabc1dd3ca2d452074a419df431 /include | |
| parent | 4fdbe71c852f4b44203913c93a5d3a8a12041167 (diff) | |
v2.4.5.2 -> v2.4.5.3
- remember to increment the version number
- Chris Mason: reiserfs mark_journal_new and bh leak fix
- Richard Gooch: devfs update
- Alexander Viro: further FS cleanup (superblock list)
- David Woodhouse: MTD update
- Kai Germaschewski: ISDN update (stanford checker fixes etc)
- Rich Baum: gcc-3.0 warning fixes
- Jeff Garzik: network driver updates
- Geert Uytterhoeven: m68k fbdev logo merge glitch fix
- Andrea Arcangeli: fix signal return path
- David Miller: Sparc updates
- Johannes Erdfelt: USB update
- Carsten Otte, Andries Brouwer: don't clear blk_size unconditionally
on partition check
- Martin Frey: alpha Sable irq fix
- Paul Mackerras: PPC softirq update
- Patrick Mochel: PCI power management infrastructure
- Robert Siemer: miroSOUND driver update
- Neil Brown: knfsd updates, including ability to export ReiserFS filesystems
- Trond Myklebust: NFS readdir fixup, don't update atime on client
- Andrew Morton: truncate_inode_pages speedup
- Paul Menage: make inode quota count all inodes..
Diffstat (limited to 'include')
31 files changed, 1566 insertions, 1060 deletions
diff --git a/include/asm-alpha/delay.h b/include/asm-alpha/delay.h index 5d3329f4dcce..ed2e38b81c00 100644 --- a/include/asm-alpha/delay.h +++ b/include/asm-alpha/delay.h @@ -40,6 +40,7 @@ __udelay(unsigned long usecs, unsigned long lpj) } #ifdef CONFIG_SMP +#include <linux/sched.h> /* for smp_processor_id */ #define udelay(u) __udelay((u), cpu_data[smp_processor_id()].loops_per_jiffy) #else #define udelay(u) __udelay((u), loops_per_jiffy) diff --git a/include/asm-i386/mca_dma.h b/include/asm-i386/mca_dma.h index a9e780cc4345..4b3b526c5a3f 100644 --- a/include/asm-i386/mca_dma.h +++ b/include/asm-i386/mca_dma.h @@ -199,4 +199,4 @@ static __inline__ void mca_set_dma_mode(unsigned int dmanr, unsigned int mode) outb(mode, MCA_DMA_REG_EXE); } -#endif MCA_DMA_H +#endif /* MCA_DMA_H */ diff --git a/include/asm-m68k/linux_logo.h b/include/asm-m68k/linux_logo.h index 7cc75c94af38..61a2d0f387b3 100644 --- a/include/asm-m68k/linux_logo.h +++ b/include/asm-m68k/linux_logo.h @@ -26,880 +26,899 @@ #ifdef CONFIG_MAC -#define LINUX_LOGO_COLORS 95 +#define __HAVE_ARCH_LINUX_LOGO + +#define LINUX_LOGO_COLORS 185 #ifdef INCLUDE_LINUX_LOGO_DATA unsigned char linux_logo_red[] __initdata = { - 0x02, 0x82, 0xEA, 0x42, 0xC2, 0x82, 0xE2, 0xA2, - 0xDA, 0xC2, 0x22, 0x62, 0xB2, 0x92, 0xD2, 0x8A, - 0xB2, 0xFA, 0xDA, 0x32, 0x72, 0x12, 0xF2, 0x52, - 0xF2, 0xEA, 0xFA, 0xAA, 0xCA, 0x9A, 0xE2, 0xAA, - 0x8A, 0xEA, 0xD2, 0x92, 0xEA, 0xDA, 0x2A, 0x6A, - 0xDA, 0xBA, 0xD2, 0x52, 0x7A, 0x2A, 0x5A, 0x0A, - 0x6A, 0xEA, 0xE2, 0xC6, 0x96, 0xF2, 0x3A, 0x1A, - 0xB2, 0xBA, 0xF2, 0xDA, 0x0A, 0x86, 0x4A, 0xCA, - 0x8A, 0xE2, 0xA6, 0xDA, 0x66, 0xBA, 0x92, 0xDA, - 0xA2, 0xB6, 0x76, 0x12, 0xF2, 0xFA, 0xEA, 0xAE, - 0xCE, 0x9E, 0xB2, 0x8E, 0xF2, 0xD2, 0xA2, 0x6E, - 0xBE, 0xD6, 0x7E, 0x5E, 0xC2, 0xFA, 0x3A + 0x00, 0x06, 0x0a, 0x0e, 0x16, 0x1a, 0x1e, 0x22, + 0x12, 0x00, 0x2a, 0x36, 0x42, 0x4e, 0x4a, 0x56, + 0x26, 0x46, 0x2e, 0x32, 0x52, 0x3a, 0x02, 0xfa, + 0xf2, 0xf6, 0xe7, 0x74, 0x65, 0x7b, 0xea, 0xdd, + 0xd6, 0x5e, 0xbe, 0x5a, 0xe2, 0xda, 0xee, 0xb6, + 0xce, 0x65, 0x6e, 0x6a, 0xd2, 0xc6, 0x90, 0xca, + 0x9e, 0xbb, 0xb2, 0x8a, 0xa2, 0x9a, 0x86, 0xc3, + 0xfd, 0xae, 0x3e, 0xaa, 0x95, 0x80, 0x76, 0x79, + 0x62, 0x36, 0x9a, 0xe2, 0xec, 0xe1, 0xb8, 0xd7, + 0xaf, 0x25, 0xbc, 0xc0, 0xef, 0xea, 0xe8, 0xe8, + 0xf5, 0xf1, 0xda, 0xd3, 0x79, 0xdb, 0xf4, 0xf6, + 0xf6, 0xf6, 0xe2, 0x3d, 0xb4, 0xce, 0xe6, 0xee, + 0xf6, 0xa6, 0x68, 0xd8, 0xec, 0xf5, 0xc6, 0xc8, + 0x9c, 0x89, 0xd2, 0xee, 0xcb, 0xb9, 0xd2, 0x66, + 0x5e, 0x8b, 0xbe, 0xa8, 0xd5, 0xca, 0xb6, 0xae, + 0x9c, 0xc5, 0x8d, 0xbe, 0xbe, 0xb2, 0x9a, 0xa8, + 0x16, 0x12, 0x4a, 0x8e, 0xf2, 0xf6, 0xe4, 0xf1, + 0x26, 0x9a, 0xea, 0xf6, 0xe0, 0xd2, 0x9a, 0x2e, + 0x70, 0xd6, 0x46, 0x7c, 0xb4, 0x62, 0xd6, 0xa3, + 0x74, 0xa7, 0xa2, 0xca, 0xe0, 0xae, 0xbe, 0xce, + 0xa3, 0x8e, 0x6d, 0x8e, 0x32, 0xaf, 0x50, 0x9e, + 0x5b, 0x8a, 0x98, 0x82, 0x7a, 0x82, 0x56, 0x7c, + 0x8a, 0x56, 0x5e, 0x86, 0x6a, 0x52, 0x59, 0x64, + 0x5e, }; unsigned char linux_logo_green[] __initdata = { - 0x02, 0x82, 0xC2, 0x42, 0x8A, 0x56, 0xE2, 0xA2, - 0xAA, 0xC2, 0x22, 0x62, 0x86, 0x92, 0x9E, 0x6E, - 0xB2, 0xB2, 0xD2, 0x32, 0x72, 0x12, 0xD2, 0x52, - 0xF2, 0xB2, 0xC2, 0xAA, 0xCA, 0x9A, 0xA2, 0x7E, - 0x8A, 0xCA, 0x92, 0x66, 0xEA, 0xB2, 0x2A, 0x6A, - 0xA2, 0xBA, 0xD2, 0x36, 0x7A, 0x1A, 0x5A, 0x0A, - 0x4A, 0xE6, 0xAE, 0xC6, 0x96, 0xBA, 0x3A, 0x1A, - 0xAA, 0x7A, 0xCA, 0xDA, 0x02, 0x86, 0x4A, 0x8A, - 0x5E, 0xE2, 0xA6, 0xAE, 0x66, 0x82, 0x92, 0x9A, - 0x72, 0xB6, 0x76, 0x12, 0xD2, 0xFA, 0xB2, 0xAE, - 0xCE, 0x9E, 0x7A, 0x8E, 0xCA, 0x92, 0x6A, 0x6E, - 0xBE, 0xD6, 0x7E, 0x5E, 0xC6, 0xBA, 0x3E + 0x00, 0x06, 0x0a, 0x0e, 0x16, 0x1a, 0x1e, 0x22, + 0x12, 0x00, 0x2a, 0x36, 0x42, 0x4e, 0x4a, 0x56, + 0x26, 0x46, 0x2e, 0x32, 0x52, 0x3a, 0x02, 0xfa, + 0xf2, 0xf6, 0xe7, 0x74, 0x65, 0x7b, 0xea, 0xdd, + 0xd6, 0x5e, 0xbe, 0x5a, 0xe2, 0xda, 0xee, 0xb6, + 0xce, 0x62, 0x6e, 0x6a, 0xd2, 0xc6, 0x90, 0xca, + 0x9e, 0xbb, 0xb2, 0x8a, 0xa2, 0x9a, 0x86, 0xc3, + 0xfd, 0xae, 0x3e, 0xaa, 0x95, 0x80, 0x62, 0x5c, + 0x4e, 0x26, 0x72, 0xaa, 0xba, 0xaf, 0x90, 0xae, + 0x92, 0x1a, 0xa4, 0x85, 0xb6, 0xbe, 0xc3, 0xc8, + 0xcf, 0xd0, 0xc2, 0xce, 0x57, 0xa2, 0xd6, 0xda, + 0xda, 0xd7, 0xb8, 0x2a, 0x7b, 0x91, 0xae, 0xca, + 0xda, 0xa6, 0x45, 0x9e, 0xb2, 0xd7, 0x9b, 0x90, + 0x76, 0x5c, 0xa2, 0xbe, 0xa6, 0x85, 0x96, 0x4e, + 0x46, 0x66, 0x92, 0x7a, 0x9a, 0x96, 0x9d, 0x9a, + 0x6b, 0x8a, 0x8d, 0x8e, 0xb2, 0xa6, 0x79, 0x7c, + 0x12, 0x0e, 0x36, 0x86, 0xba, 0xbe, 0xb8, 0xc4, + 0x1e, 0x8e, 0xae, 0xba, 0xb2, 0xa6, 0x7a, 0x20, + 0x64, 0xaa, 0x2f, 0x70, 0x85, 0x46, 0xa6, 0x6e, + 0x51, 0x72, 0x92, 0xa2, 0xa6, 0x87, 0x96, 0xa2, + 0x85, 0x7a, 0x6a, 0x6e, 0x22, 0x76, 0x36, 0x76, + 0x3c, 0x6e, 0x63, 0x53, 0x66, 0x62, 0x42, 0x50, + 0x56, 0x42, 0x56, 0x56, 0x56, 0x3e, 0x51, 0x52, + 0x56, }; unsigned char linux_logo_blue[] __initdata = { - 0x04, 0x84, 0x04, 0x44, 0x04, 0x04, 0xDC, 0xA4, - 0x0C, 0xC4, 0x1C, 0x64, 0x04, 0x8C, 0x04, 0x34, - 0xB4, 0x0C, 0xAC, 0x34, 0x74, 0x04, 0x0C, 0x4C, - 0xF4, 0x0C, 0x0C, 0xAC, 0xCC, 0x9C, 0x0C, 0x04, - 0x8C, 0x0C, 0x04, 0x04, 0xEC, 0x2C, 0x2C, 0x6C, - 0x04, 0xBC, 0xD4, 0x04, 0x7C, 0x04, 0x5C, 0x0C, - 0x04, 0xEC, 0x04, 0xC4, 0x94, 0x14, 0x3C, 0x1C, - 0xA4, 0x04, 0x24, 0xDC, 0x04, 0x84, 0x4C, 0x0C, - 0x04, 0xE4, 0xA4, 0x04, 0x64, 0x04, 0x94, 0x14, - 0x0C, 0xB4, 0x74, 0x14, 0x24, 0xFC, 0x14, 0xAC, - 0xCC, 0x9C, 0x0C, 0x8C, 0x14, 0x14, 0x04, 0x6C, - 0xBC, 0xD4, 0x7C, 0x5C, 0xD4, 0x14, 0x3C + 0x00, 0x06, 0x0a, 0x0e, 0x16, 0x1a, 0x1e, 0x22, + 0x12, 0x01, 0x2a, 0x36, 0x42, 0x4e, 0x4a, 0x56, + 0x26, 0x46, 0x2e, 0x32, 0x52, 0x3a, 0x06, 0xfa, + 0xf2, 0xf6, 0xe7, 0x74, 0x65, 0x7b, 0xea, 0xdd, + 0xd6, 0x5e, 0xbe, 0x5a, 0xe2, 0xda, 0xee, 0xb6, + 0xce, 0x59, 0x6e, 0x6a, 0xd2, 0xc6, 0x90, 0xca, + 0x9e, 0xbb, 0xb2, 0x8a, 0xa2, 0x9a, 0x86, 0xc3, + 0xfd, 0xae, 0x3e, 0xaa, 0x95, 0x80, 0x2e, 0x08, + 0x0a, 0x06, 0x0a, 0x0b, 0x0b, 0x0f, 0x0c, 0x0f, + 0x3d, 0x09, 0x73, 0x09, 0x0d, 0x0a, 0x10, 0x1e, + 0x2d, 0x13, 0x86, 0xba, 0x19, 0x0a, 0x36, 0x3c, + 0x26, 0x14, 0x0d, 0x06, 0x07, 0x0a, 0x0b, 0x0f, + 0x4a, 0xa6, 0x06, 0x0a, 0x0c, 0x2b, 0x0a, 0x0b, + 0x0a, 0x06, 0x0a, 0x0a, 0x11, 0x0b, 0x0a, 0x0a, + 0x1e, 0x0f, 0x0d, 0x0a, 0x0b, 0x22, 0x6a, 0x72, + 0x0b, 0x0b, 0x8d, 0x22, 0x90, 0x92, 0x3c, 0x2c, + 0x06, 0x06, 0x0e, 0x6a, 0x0e, 0x0e, 0x3e, 0x0e, + 0x0a, 0x5a, 0x0d, 0x0e, 0x3e, 0x0a, 0x2e, 0x06, + 0x4e, 0x36, 0x06, 0x58, 0x24, 0x06, 0x3a, 0x08, + 0x08, 0x07, 0x5e, 0x45, 0x0a, 0x32, 0x2e, 0x2a, + 0x43, 0x48, 0x5f, 0x2e, 0x06, 0x06, 0x07, 0x24, + 0x06, 0x32, 0x06, 0x06, 0x46, 0x2e, 0x22, 0x06, + 0x06, 0x1e, 0x4c, 0x06, 0x3a, 0x22, 0x42, 0x34, + 0x42, }; unsigned char linux_logo[] __initdata = { - 0x53, 0x3D, 0x40, 0x73, 0x71, 0x3B, 0x3B, 0x71, - 0x3D, 0x54, 0x73, 0x40, 0x73, 0x3D, 0x27, 0x71, - 0x40, 0x6A, 0x7A, 0x3D, 0x3B, 0x30, 0x30, 0x62, - 0x40, 0x6A, 0x21, 0x62, 0x78, 0x29, 0x49, 0x30, - 0x6F, 0x27, 0x54, 0x3D, 0x62, 0x27, 0x54, 0x66, - 0x71, 0x6F, 0x6F, 0x6F, 0x78, 0x53, 0x29, 0x29, - 0x53, 0x70, 0x53, 0x3D, 0x40, 0x73, 0x71, 0x3B, - 0x3B, 0x71, 0x3D, 0x54, 0x73, 0x40, 0x73, 0x3D, - 0x27, 0x71, 0x40, 0x6A, 0x7A, 0x3D, 0x3B, 0x30, - 0x30, 0x62, 0x40, 0x6A, 0x21, 0x62, 0x78, 0x29, - 0x71, 0x4C, 0x6A, 0x40, 0x71, 0x62, 0x27, 0x71, - 0x54, 0x66, 0x73, 0x40, 0x73, 0x3D, 0x3D, 0x40, - 0x6A, 0x77, 0x7A, 0x71, 0x30, 0x69, 0x6F, 0x71, - 0x54, 0x73, 0x3D, 0x30, 0x49, 0x30, 0x3B, 0x62, - 0x27, 0x3D, 0x54, 0x3D, 0x71, 0x71, 0x27, 0x62, - 0x62, 0x3B, 0x62, 0x27, 0x3B, 0x69, 0x69, 0x69, - 0x69, 0x30, 0x71, 0x4C, 0x6A, 0x40, 0x71, 0x62, - 0x27, 0x71, 0x54, 0x66, 0x73, 0x40, 0x73, 0x3D, - 0x3D, 0x40, 0x6A, 0x77, 0x7A, 0x71, 0x30, 0x69, - 0x6F, 0x71, 0x54, 0x73, 0x3D, 0x30, 0x49, 0x30, - 0x40, 0x34, 0x34, 0x40, 0x27, 0x6F, 0x62, 0x3D, - 0x54, 0x66, 0x40, 0x73, 0x66, 0x66, 0x2D, 0x5D, - 0x7A, 0x5D, 0x3D, 0x6F, 0x69, 0x69, 0x30, 0x27, - 0x27, 0x27, 0x62, 0x6F, 0x30, 0x3B, 0x62, 0x27, - 0x3D, 0x54, 0x2D, 0x54, 0x27, 0x71, 0x3D, 0x27, - 0x62, 0x62, 0x62, 0x62, 0x3B, 0x30, 0x6F, 0x6F, - 0x6F, 0x71, 0x40, 0x34, 0x34, 0x40, 0x27, 0x6F, - 0x62, 0x3D, 0x54, 0x66, 0x40, 0x73, 0x66, 0x66, - 0x2D, 0x5D, 0x7A, 0x5D, 0x3D, 0x6F, 0x69, 0x69, - 0x30, 0x27, 0x27, 0x27, 0x62, 0x6F, 0x30, 0x6F, - 0x4C, 0x77, 0x6A, 0x2D, 0x3B, 0x6F, 0x3B, 0x71, - 0x54, 0x66, 0x2D, 0x73, 0x66, 0x54, 0x73, 0x73, - 0x73, 0x3D, 0x62, 0x6F, 0x69, 0x30, 0x6F, 0x27, - 0x3D, 0x3D, 0x27, 0x62, 0x62, 0x62, 0x27, 0x71, - 0x54, 0x73, 0x73, 0x54, 0x3D, 0x3D, 0x20, 0x20, - 0x20, 0x20, 0x3B, 0x62, 0x3B, 0x62, 0x71, 0x71, - 0x3D, 0x2D, 0x4C, 0x77, 0x6A, 0x66, 0x3B, 0x6F, - 0x3B, 0x71, 0x54, 0x66, 0x2D, 0x73, 0x66, 0x54, - 0x73, 0x73, 0x73, 0x3D, 0x62, 0x6F, 0x69, 0x30, - 0x6F, 0x27, 0x3D, 0x3D, 0x27, 0x62, 0x62, 0x27, - 0x4C, 0x4C, 0x5D, 0x71, 0x30, 0x30, 0x3B, 0x27, - 0x54, 0x66, 0x73, 0x66, 0x66, 0x54, 0x54, 0x3D, - 0x27, 0x62, 0x6F, 0x30, 0x30, 0x6F, 0x27, 0x3D, - 0x54, 0x54, 0x3D, 0x71, 0x3D, 0x71, 0x3D, 0x3D, - 0x66, 0x73, 0x66, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x71, 0x3D, - 0x66, 0x40, 0x4C, 0x4C, 0x5D, 0x71, 0x30, 0x30, - 0x3B, 0x27, 0x54, 0x66, 0x73, 0x66, 0x66, 0x54, - 0x54, 0x3D, 0x27, 0x62, 0x6F, 0x30, 0x30, 0x6F, - 0x27, 0x3D, 0x54, 0x54, 0x3D, 0x71, 0x71, 0x71, - 0x5D, 0x5D, 0x54, 0x62, 0x69, 0x69, 0x3B, 0x3D, - 0x66, 0x40, 0x73, 0x66, 0x54, 0x54, 0x71, 0x62, - 0x3B, 0x6F, 0x6F, 0x6F, 0x3B, 0x27, 0x3D, 0x2D, - 0x66, 0x54, 0x71, 0x71, 0x27, 0x71, 0x71, 0x3D, - 0x3D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x54, - 0x73, 0x40, 0x5D, 0x5D, 0x54, 0x62, 0x69, 0x69, - 0x3B, 0x3D, 0x66, 0x40, 0x73, 0x66, 0x54, 0x54, - 0x71, 0x62, 0x3B, 0x6F, 0x6F, 0x6F, 0x3B, 0x27, - 0x3D, 0x66, 0x66, 0x54, 0x71, 0x71, 0x27, 0x71, - 0x66, 0x73, 0x3D, 0x27, 0x6F, 0x6F, 0x62, 0x54, - 0x40, 0x21, 0x5D, 0x73, 0x3D, 0x27, 0x62, 0x6F, - 0x6F, 0x3B, 0x3B, 0x62, 0x27, 0x71, 0x3D, 0x3D, - 0x3D, 0x71, 0x62, 0x62, 0x62, 0x27, 0x27, 0x71, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x4F, 0x46, 0x2A, 0x20, 0x20, - 0x20, 0x73, 0x66, 0x73, 0x3D, 0x27, 0x6F, 0x6F, - 0x62, 0x54, 0x40, 0x21, 0x5D, 0x73, 0x3D, 0x27, - 0x62, 0x6F, 0x6F, 0x3B, 0x3B, 0x62, 0x27, 0x71, - 0x3D, 0x3D, 0x3D, 0x71, 0x62, 0x27, 0x62, 0x27, - 0x3D, 0x40, 0x66, 0x27, 0x3B, 0x3B, 0x71, 0x66, - 0x7A, 0x21, 0x40, 0x54, 0x27, 0x3B, 0x6F, 0x3B, - 0x62, 0x62, 0x27, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x38, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x38, - 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x6F, 0x3B, 0x62, 0x62, 0x27, 0x27, 0x27, 0x27, - 0x71, 0x3D, 0x71, 0x71, 0x71, 0x71, 0x3D, 0x3D, - 0x27, 0x40, 0x54, 0x62, 0x30, 0x30, 0x27, 0x40, - 0x7A, 0x5D, 0x54, 0x3D, 0x62, 0x30, 0x30, 0x3B, - 0x71, 0x3D, 0x71, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x30, 0x3B, 0x71, 0x3D, 0x71, 0x27, 0x71, 0x71, - 0x3D, 0x66, 0x73, 0x40, 0x73, 0x66, 0x2D, 0x66, - 0x30, 0x66, 0x71, 0x6F, 0x69, 0x6F, 0x54, 0x21, - 0x7A, 0x66, 0x3D, 0x3B, 0x6F, 0x6F, 0x3B, 0x71, - 0x54, 0x66, 0x3D, 0x4C, 0x44, 0x51, 0x44, 0x44, - 0x44, 0x38, 0x44, 0x38, 0x44, 0x38, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x38, 0x51, - 0x3B, 0x71, 0x54, 0x66, 0x3D, 0x3D, 0x3D, 0x2D, - 0x40, 0x40, 0x5D, 0x40, 0x73, 0x66, 0x66, 0x3D, - 0x69, 0x27, 0x3B, 0x30, 0x69, 0x3B, 0x73, 0x7A, - 0x21, 0x3D, 0x62, 0x3B, 0x6F, 0x3B, 0x27, 0x66, - 0x73, 0x73, 0x54, 0x4E, 0x44, 0x26, 0x26, 0x5B, - 0x26, 0x44, 0x44, 0x44, 0x44, 0x44, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x38, 0x38, 0x38, 0x38, 0x38, - 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x6D, 0x26, - 0x27, 0x66, 0x73, 0x73, 0x66, 0x2D, 0x66, 0x2D, - 0x66, 0x54, 0x54, 0x71, 0x27, 0x27, 0x27, 0x62, - 0x69, 0x3B, 0x6F, 0x6F, 0x62, 0x54, 0x40, 0x21, - 0x73, 0x27, 0x3B, 0x3B, 0x71, 0x54, 0x66, 0x66, - 0x73, 0x73, 0x2D, 0x37, 0x44, 0x51, 0x38, 0x38, - 0x44, 0x6D, 0x38, 0x6D, 0x38, 0x38, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x38, 0x6D, 0x38, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x38, 0x6D, 0x70, - 0x2D, 0x66, 0x73, 0x66, 0x66, 0x54, 0x54, 0x54, - 0x27, 0x62, 0x6F, 0x6F, 0x6F, 0x6F, 0x3B, 0x62, - 0x3B, 0x27, 0x27, 0x27, 0x3D, 0x40, 0x21, 0x40, - 0x54, 0x62, 0x3B, 0x71, 0x73, 0x5D, 0x40, 0x73, - 0x66, 0x66, 0x2D, 0x33, 0x6D, 0x26, 0x44, 0x4F, - 0x5E, 0x5E, 0x37, 0x5E, 0x37, 0x46, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x44, 0x26, 0x26, 0x44, - 0x70, 0x38, 0x26, 0x38, 0x38, 0x44, 0x6D, 0x53, - 0x40, 0x73, 0x66, 0x2D, 0x66, 0x73, 0x66, 0x54, - 0x27, 0x6F, 0x30, 0x69, 0x30, 0x6F, 0x62, 0x62, - 0x62, 0x71, 0x3D, 0x54, 0x73, 0x5D, 0x5D, 0x66, - 0x27, 0x62, 0x71, 0x54, 0x5D, 0x5D, 0x66, 0x3D, - 0x3D, 0x73, 0x40, 0x37, 0x44, 0x44, 0x51, 0x20, - 0x6F, 0x6F, 0x62, 0x27, 0x27, 0x20, 0x20, 0x20, - 0x4F, 0x20, 0x2A, 0x2A, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x77, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x71, 0x3D, 0x73, 0x5D, - 0x40, 0x54, 0x27, 0x3B, 0x2D, 0x6D, 0x38, 0x3C, - 0x66, 0x3D, 0x54, 0x66, 0x40, 0x40, 0x73, 0x54, - 0x62, 0x6F, 0x30, 0x6F, 0x62, 0x71, 0x71, 0x71, - 0x62, 0x3D, 0x66, 0x73, 0x40, 0x5D, 0x73, 0x71, - 0x62, 0x27, 0x54, 0x73, 0x5D, 0x73, 0x27, 0x62, - 0x71, 0x40, 0x21, 0x37, 0x26, 0x51, 0x44, 0x4E, - 0x3B, 0x71, 0x2D, 0x73, 0x2D, 0x20, 0x20, 0x20, - 0x35, 0x73, 0x77, 0x4F, 0x6B, 0x20, 0x20, 0x4F, - 0x20, 0x73, 0x73, 0x73, 0x58, 0x20, 0x77, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x2D, 0x40, 0x40, 0x5D, - 0x73, 0x71, 0x62, 0x27, 0x71, 0x38, 0x44, 0x49, - 0x27, 0x62, 0x3D, 0x40, 0x21, 0x40, 0x54, 0x27, - 0x3B, 0x6F, 0x3B, 0x71, 0x54, 0x66, 0x66, 0x3D, - 0x62, 0x54, 0x40, 0x21, 0x7A, 0x40, 0x3D, 0x62, - 0x62, 0x71, 0x66, 0x40, 0x66, 0x71, 0x62, 0x3B, - 0x54, 0x5D, 0x73, 0x23, 0x51, 0x26, 0x26, 0x30, - 0x3B, 0x3D, 0x66, 0x73, 0x66, 0x20, 0x20, 0x4F, - 0x58, 0x7C, 0x62, 0x34, 0x57, 0x20, 0x20, 0x20, - 0x73, 0x58, 0x49, 0x7C, 0x79, 0x73, 0x20, 0x4F, - 0x20, 0x20, 0x20, 0x20, 0x40, 0x21, 0x7A, 0x40, - 0x3D, 0x27, 0x62, 0x71, 0x49, 0x44, 0x6D, 0x78, - 0x62, 0x3B, 0x3D, 0x5D, 0x40, 0x3D, 0x3B, 0x69, - 0x49, 0x49, 0x3B, 0x71, 0x66, 0x73, 0x66, 0x54, - 0x27, 0x66, 0x5D, 0x7A, 0x21, 0x73, 0x71, 0x62, - 0x27, 0x54, 0x73, 0x66, 0x3D, 0x27, 0x62, 0x62, - 0x54, 0x73, 0x71, 0x37, 0x26, 0x5B, 0x44, 0x5B, - 0x27, 0x54, 0x40, 0x2D, 0x54, 0x20, 0x20, 0x77, - 0x78, 0x6D, 0x6D, 0x6D, 0x20, 0x20, 0x20, 0x20, - 0x79, 0x38, 0x38, 0x6D, 0x6D, 0x69, 0x2D, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7A, 0x7A, 0x40, - 0x71, 0x62, 0x27, 0x54, 0x79, 0x26, 0x38, 0x49, - 0x3B, 0x27, 0x54, 0x2D, 0x71, 0x6F, 0x49, 0x53, - 0x78, 0x30, 0x27, 0x54, 0x40, 0x73, 0x54, 0x3D, - 0x71, 0x66, 0x5D, 0x7A, 0x21, 0x66, 0x27, 0x3B, - 0x27, 0x66, 0x73, 0x54, 0x27, 0x27, 0x27, 0x3D, - 0x3D, 0x71, 0x6F, 0x5E, 0x26, 0x79, 0x26, 0x78, - 0x5D, 0x4C, 0x4C, 0x21, 0x73, 0x20, 0x20, 0x2D, - 0x35, 0x5C, 0x46, 0x38, 0x77, 0x20, 0x4F, 0x20, - 0x51, 0x6D, 0x20, 0x2D, 0x20, 0x6D, 0x6D, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x7A, 0x21, 0x54, - 0x62, 0x3B, 0x27, 0x2D, 0x29, 0x26, 0x44, 0x70, - 0x27, 0x3D, 0x3D, 0x71, 0x6F, 0x78, 0x53, 0x29, - 0x69, 0x3D, 0x21, 0x4C, 0x4C, 0x5D, 0x66, 0x54, - 0x54, 0x73, 0x21, 0x6A, 0x21, 0x3D, 0x3B, 0x3B, - 0x71, 0x66, 0x66, 0x3D, 0x27, 0x27, 0x71, 0x3D, - 0x27, 0x6F, 0x49, 0x7E, 0x61, 0x5B, 0x44, 0x26, - 0x34, 0x34, 0x6A, 0x21, 0x73, 0x66, 0x20, 0x32, - 0x20, 0x20, 0x2D, 0x6D, 0x77, 0x2A, 0x37, 0x20, - 0x6D, 0x20, 0x20, 0x20, 0x7E, 0x38, 0x38, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x4C, 0x21, 0x3D, - 0x3B, 0x3B, 0x71, 0x73, 0x69, 0x44, 0x38, 0x71, - 0x27, 0x3D, 0x71, 0x3B, 0x49, 0x29, 0x29, 0x6F, - 0x54, 0x7A, 0x34, 0x77, 0x6A, 0x21, 0x66, 0x66, - 0x4C, 0x7A, 0x21, 0x4C, 0x21, 0x71, 0x3B, 0x3B, - 0x54, 0x73, 0x3D, 0x62, 0x3B, 0x62, 0x62, 0x62, - 0x62, 0x69, 0x29, 0x2B, 0x79, 0x79, 0x26, 0x38, - 0x47, 0x6A, 0x5D, 0x54, 0x27, 0x3D, 0x20, 0x29, - 0x57, 0x20, 0x2D, 0x61, 0x37, 0x5C, 0x20, 0x20, - 0x29, 0x20, 0x20, 0x20, 0x20, 0x29, 0x6D, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x6A, 0x21, 0x3D, - 0x3B, 0x3B, 0x54, 0x66, 0x78, 0x26, 0x26, 0x30, - 0x62, 0x62, 0x3B, 0x69, 0x78, 0x78, 0x6F, 0x66, - 0x6A, 0x64, 0x47, 0x4C, 0x5D, 0x54, 0x71, 0x71, - 0x4C, 0x5D, 0x5D, 0x21, 0x5D, 0x71, 0x3B, 0x62, - 0x54, 0x66, 0x27, 0x3B, 0x6F, 0x6F, 0x3B, 0x3B, - 0x6F, 0x49, 0x78, 0x23, 0x4A, 0x79, 0x4A, 0x6D, - 0x34, 0x21, 0x66, 0x3D, 0x62, 0x27, 0x20, 0x20, - 0x38, 0x20, 0x20, 0x52, 0x3A, 0x52, 0x63, 0x36, - 0x48, 0x4D, 0x20, 0x20, 0x20, 0x6D, 0x38, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x5D, 0x3D, - 0x3B, 0x62, 0x2D, 0x66, 0x79, 0x26, 0x51, 0x54, - 0x3B, 0x62, 0x6F, 0x49, 0x78, 0x30, 0x66, 0x34, - 0x2B, 0x2B, 0x34, 0x21, 0x66, 0x71, 0x62, 0x62, - 0x3D, 0x3D, 0x54, 0x5D, 0x40, 0x71, 0x3B, 0x3B, - 0x54, 0x54, 0x3B, 0x69, 0x30, 0x6F, 0x3B, 0x27, - 0x6F, 0x78, 0x78, 0x46, 0x26, 0x5B, 0x4A, 0x51, - 0x5D, 0x54, 0x71, 0x62, 0x3B, 0x3B, 0x20, 0x20, - 0x6D, 0x20, 0x72, 0x55, 0x3A, 0x74, 0x41, 0x39, - 0x45, 0x5A, 0x24, 0x2F, 0x6D, 0x38, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x5D, 0x40, 0x27, - 0x3B, 0x62, 0x3D, 0x54, 0x30, 0x5B, 0x26, 0x27, - 0x3B, 0x62, 0x6F, 0x78, 0x78, 0x3B, 0x21, 0x64, - 0x7B, 0x77, 0x5D, 0x54, 0x71, 0x62, 0x62, 0x3B, - 0x53, 0x62, 0x71, 0x73, 0x73, 0x27, 0x6F, 0x3B, - 0x3D, 0x3D, 0x3B, 0x49, 0x30, 0x62, 0x27, 0x27, - 0x6F, 0x78, 0x49, 0x46, 0x79, 0x53, 0x4A, 0x38, - 0x2D, 0x71, 0x62, 0x6F, 0x6F, 0x6F, 0x20, 0x20, - 0x20, 0x24, 0x52, 0x3A, 0x22, 0x41, 0x5A, 0x45, - 0x45, 0x63, 0x41, 0x22, 0x36, 0x28, 0x4D, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x73, 0x27, - 0x6F, 0x3B, 0x3D, 0x3D, 0x49, 0x51, 0x61, 0x69, - 0x27, 0x27, 0x30, 0x78, 0x69, 0x71, 0x4C, 0x64, - 0x34, 0x5D, 0x66, 0x71, 0x62, 0x6F, 0x6F, 0x6F, - 0x79, 0x27, 0x66, 0x73, 0x66, 0x62, 0x6F, 0x6F, - 0x3D, 0x3D, 0x3B, 0x30, 0x30, 0x62, 0x3D, 0x71, - 0x6F, 0x69, 0x6F, 0x23, 0x5B, 0x4A, 0x4A, 0x38, - 0x66, 0x3D, 0x3B, 0x6F, 0x6F, 0x3B, 0x20, 0x4D, - 0x43, 0x48, 0x39, 0x55, 0x22, 0x22, 0x41, 0x45, - 0x45, 0x45, 0x45, 0x41, 0x22, 0x45, 0x5A, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x2D, 0x62, - 0x30, 0x3B, 0x3D, 0x3D, 0x27, 0x26, 0x61, 0x27, - 0x3D, 0x27, 0x6F, 0x69, 0x6F, 0x54, 0x4C, 0x34, - 0x7A, 0x40, 0x66, 0x54, 0x62, 0x30, 0x6F, 0x3B, - 0x53, 0x7A, 0x7A, 0x73, 0x54, 0x62, 0x30, 0x3B, - 0x3D, 0x3D, 0x62, 0x30, 0x30, 0x3B, 0x71, 0x62, - 0x30, 0x30, 0x27, 0x7E, 0x70, 0x70, 0x3C, 0x6D, - 0x21, 0x66, 0x3B, 0x69, 0x3B, 0x71, 0x20, 0x72, - 0x24, 0x67, 0x22, 0x22, 0x36, 0x36, 0x45, 0x45, - 0x45, 0x22, 0x41, 0x41, 0x3F, 0x42, 0x52, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x73, 0x54, 0x62, - 0x30, 0x3B, 0x3D, 0x54, 0x62, 0x26, 0x79, 0x3B, - 0x71, 0x27, 0x30, 0x30, 0x27, 0x5D, 0x4C, 0x6A, - 0x7A, 0x7A, 0x5D, 0x54, 0x3B, 0x30, 0x6F, 0x71, - 0x27, 0x64, 0x77, 0x40, 0x71, 0x62, 0x3B, 0x62, - 0x3D, 0x54, 0x27, 0x3B, 0x6F, 0x3B, 0x27, 0x27, - 0x62, 0x3B, 0x3D, 0x23, 0x26, 0x5B, 0x3C, 0x38, - 0x5D, 0x71, 0x69, 0x69, 0x62, 0x54, 0x20, 0x50, - 0x5F, 0x48, 0x3A, 0x55, 0x41, 0x63, 0x70, 0x22, - 0x22, 0x45, 0x3F, 0x42, 0x48, 0x48, 0x45, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x71, 0x62, - 0x3B, 0x62, 0x3D, 0x54, 0x30, 0x26, 0x61, 0x71, - 0x27, 0x27, 0x62, 0x62, 0x54, 0x5D, 0x7A, 0x4C, - 0x4C, 0x4C, 0x5D, 0x71, 0x30, 0x69, 0x62, 0x54, - 0x7A, 0x64, 0x34, 0x73, 0x71, 0x27, 0x62, 0x62, - 0x71, 0x54, 0x71, 0x3B, 0x6F, 0x3B, 0x71, 0x3D, - 0x3D, 0x71, 0x2D, 0x7E, 0x79, 0x53, 0x3C, 0x38, - 0x3D, 0x6F, 0x78, 0x49, 0x71, 0x73, 0x20, 0x20, - 0x25, 0x3F, 0x3A, 0x41, 0x5A, 0x45, 0x41, 0x45, - 0x3F, 0x50, 0x24, 0x28, 0x28, 0x3F, 0x4D, 0x20, - 0x20, 0x77, 0x77, 0x20, 0x20, 0x20, 0x71, 0x27, - 0x62, 0x62, 0x71, 0x54, 0x78, 0x79, 0x38, 0x71, - 0x71, 0x3D, 0x71, 0x71, 0x66, 0x5D, 0x5D, 0x21, - 0x21, 0x21, 0x54, 0x30, 0x78, 0x69, 0x27, 0x66, - 0x7A, 0x4C, 0x40, 0x3D, 0x27, 0x62, 0x62, 0x3B, - 0x62, 0x71, 0x62, 0x30, 0x69, 0x6F, 0x71, 0x54, - 0x3D, 0x3D, 0x54, 0x23, 0x4A, 0x3C, 0x3C, 0x38, - 0x6F, 0x29, 0x53, 0x30, 0x54, 0x66, 0x20, 0x57, - 0x7C, 0x25, 0x4B, 0x3F, 0x43, 0x4B, 0x4B, 0x2C, - 0x2E, 0x2E, 0x2E, 0x24, 0x58, 0x58, 0x78, 0x20, - 0x20, 0x20, 0x34, 0x77, 0x20, 0x20, 0x20, 0x62, - 0x62, 0x3B, 0x62, 0x71, 0x29, 0x79, 0x61, 0x27, - 0x27, 0x54, 0x54, 0x71, 0x54, 0x54, 0x66, 0x54, - 0x66, 0x71, 0x6F, 0x78, 0x53, 0x69, 0x54, 0x73, - 0x73, 0x73, 0x3D, 0x27, 0x27, 0x27, 0x62, 0x3B, - 0x62, 0x71, 0x71, 0x3B, 0x6F, 0x3B, 0x27, 0x54, - 0x66, 0x3D, 0x3D, 0x37, 0x53, 0x78, 0x49, 0x38, - 0x78, 0x29, 0x78, 0x3B, 0x66, 0x73, 0x20, 0x20, - 0x7C, 0x69, 0x68, 0x68, 0x52, 0x2E, 0x42, 0x67, - 0x5F, 0x45, 0x2C, 0x69, 0x78, 0x32, 0x78, 0x78, - 0x20, 0x20, 0x34, 0x77, 0x35, 0x20, 0x20, 0x27, - 0x62, 0x3B, 0x62, 0x71, 0x30, 0x26, 0x61, 0x73, - 0x27, 0x3D, 0x66, 0x3D, 0x3D, 0x27, 0x27, 0x62, - 0x62, 0x6F, 0x78, 0x53, 0x78, 0x62, 0x54, 0x66, - 0x27, 0x71, 0x3D, 0x71, 0x62, 0x62, 0x27, 0x3B, - 0x62, 0x71, 0x71, 0x27, 0x27, 0x27, 0x27, 0x3D, - 0x54, 0x3D, 0x27, 0x7E, 0x29, 0x29, 0x29, 0x6D, - 0x49, 0x49, 0x6F, 0x54, 0x73, 0x54, 0x20, 0x20, - 0x29, 0x7C, 0x69, 0x43, 0x76, 0x72, 0x2C, 0x76, - 0x68, 0x62, 0x78, 0x29, 0x6D, 0x38, 0x6D, 0x32, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x62, - 0x27, 0x3B, 0x62, 0x71, 0x78, 0x61, 0x6D, 0x3C, - 0x27, 0x3D, 0x54, 0x3D, 0x27, 0x62, 0x3B, 0x6F, - 0x6F, 0x69, 0x49, 0x49, 0x6F, 0x3D, 0x73, 0x66, - 0x3D, 0x3D, 0x3D, 0x3D, 0x71, 0x27, 0x71, 0x62, - 0x62, 0x71, 0x3D, 0x71, 0x71, 0x71, 0x27, 0x71, - 0x54, 0x3D, 0x27, 0x46, 0x49, 0x78, 0x49, 0x6D, - 0x6F, 0x27, 0x54, 0x73, 0x40, 0x20, 0x20, 0x20, - 0x44, 0x32, 0x29, 0x49, 0x77, 0x2F, 0x73, 0x62, - 0x29, 0x32, 0x29, 0x51, 0x6D, 0x38, 0x6D, 0x38, - 0x56, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x71, 0x62, 0x62, 0x71, 0x6F, 0x70, 0x38, 0x71, - 0x27, 0x71, 0x54, 0x3D, 0x62, 0x3B, 0x3B, 0x6F, - 0x6F, 0x6F, 0x3B, 0x27, 0x54, 0x40, 0x73, 0x66, - 0x40, 0x40, 0x66, 0x3D, 0x71, 0x3D, 0x71, 0x71, - 0x27, 0x27, 0x3D, 0x54, 0x3D, 0x3D, 0x71, 0x54, - 0x73, 0x73, 0x3D, 0x46, 0x78, 0x49, 0x78, 0x44, - 0x66, 0x73, 0x5D, 0x5D, 0x35, 0x20, 0x20, 0x78, - 0x6D, 0x51, 0x78, 0x49, 0x58, 0x29, 0x29, 0x49, - 0x29, 0x79, 0x38, 0x38, 0x6D, 0x6D, 0x38, 0x6D, - 0x6D, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x6B, 0x71, 0x27, 0x27, 0x29, 0x3C, 0x44, 0x40, - 0x3D, 0x54, 0x73, 0x73, 0x54, 0x71, 0x71, 0x3D, - 0x3D, 0x3D, 0x66, 0x40, 0x5D, 0x5D, 0x5D, 0x40, - 0x21, 0x5D, 0x73, 0x66, 0x3D, 0x3D, 0x71, 0x71, - 0x27, 0x27, 0x3D, 0x54, 0x54, 0x66, 0x54, 0x73, - 0x5D, 0x21, 0x40, 0x33, 0x69, 0x49, 0x30, 0x38, - 0x7A, 0x7A, 0x7A, 0x21, 0x6B, 0x20, 0x20, 0x6D, - 0x38, 0x6D, 0x38, 0x7C, 0x49, 0x29, 0x69, 0x78, - 0x38, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x37, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x71, 0x27, 0x71, 0x78, 0x3C, 0x26, 0x30, - 0x66, 0x66, 0x5D, 0x21, 0x5D, 0x73, 0x73, 0x40, - 0x5D, 0x21, 0x7A, 0x4C, 0x21, 0x5D, 0x21, 0x21, - 0x5D, 0x54, 0x54, 0x54, 0x3D, 0x71, 0x3D, 0x71, - 0x27, 0x27, 0x71, 0x54, 0x66, 0x54, 0x66, 0x66, - 0x5D, 0x21, 0x5D, 0x7E, 0x29, 0x69, 0x49, 0x6D, - 0x4C, 0x7A, 0x5D, 0x20, 0x20, 0x20, 0x51, 0x38, - 0x6D, 0x6D, 0x6D, 0x44, 0x69, 0x78, 0x5B, 0x6D, - 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x38, 0x38, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x62, 0x27, 0x3C, 0x69, 0x38, 0x71, - 0x54, 0x73, 0x5D, 0x21, 0x40, 0x73, 0x66, 0x73, - 0x21, 0x4C, 0x4C, 0x7A, 0x5D, 0x5D, 0x5D, 0x4C, - 0x66, 0x62, 0x62, 0x27, 0x71, 0x71, 0x71, 0x27, - 0x27, 0x27, 0x71, 0x3D, 0x54, 0x54, 0x54, 0x54, - 0x73, 0x73, 0x3D, 0x57, 0x29, 0x69, 0x30, 0x38, - 0x73, 0x73, 0x20, 0x20, 0x20, 0x2D, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x38, 0x6D, 0x6D, - 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x6D, 0x38, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x27, 0x5B, 0x53, 0x6D, 0x73, - 0x54, 0x54, 0x73, 0x73, 0x3D, 0x27, 0x27, 0x71, - 0x66, 0x40, 0x73, 0x40, 0x66, 0x73, 0x40, 0x21, - 0x62, 0x30, 0x6F, 0x62, 0x27, 0x71, 0x3D, 0x71, - 0x27, 0x71, 0x71, 0x71, 0x3D, 0x3D, 0x3D, 0x3D, - 0x3D, 0x27, 0x58, 0x46, 0x69, 0x30, 0x6F, 0x6D, - 0x3D, 0x71, 0x20, 0x20, 0x20, 0x44, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, - 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, - 0x6D, 0x6D, 0x2F, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x70, 0x53, 0x38, 0x27, - 0x3D, 0x3D, 0x3D, 0x71, 0x3B, 0x30, 0x62, 0x3D, - 0x66, 0x54, 0x3D, 0x71, 0x3D, 0x3D, 0x66, 0x66, - 0x3B, 0x69, 0x69, 0x6F, 0x62, 0x27, 0x3D, 0x71, - 0x27, 0x27, 0x27, 0x27, 0x71, 0x3D, 0x3D, 0x3D, - 0x3D, 0x27, 0x3B, 0x46, 0x62, 0x3B, 0x49, 0x38, - 0x3D, 0x20, 0x20, 0x20, 0x34, 0x44, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, - 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, - 0x38, 0x6D, 0x26, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x21, 0x49, 0x79, 0x51, 0x5D, - 0x3D, 0x3D, 0x71, 0x27, 0x62, 0x62, 0x3D, 0x73, - 0x40, 0x66, 0x3D, 0x3D, 0x54, 0x3D, 0x3D, 0x71, - 0x78, 0x49, 0x69, 0x30, 0x3B, 0x62, 0x27, 0x27, - 0x27, 0x27, 0x27, 0x71, 0x71, 0x71, 0x3D, 0x3D, - 0x3D, 0x27, 0x3D, 0x33, 0x49, 0x69, 0x62, 0x44, - 0x20, 0x20, 0x20, 0x20, 0x2D, 0x32, 0x6D, 0x38, - 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x38, 0x6D, 0x6D, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x38, 0x51, - 0x26, 0x61, 0x44, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x6A, 0x70, 0x6F, 0x6D, 0x21, - 0x71, 0x3D, 0x3D, 0x71, 0x3D, 0x66, 0x40, 0x5D, - 0x40, 0x73, 0x66, 0x73, 0x66, 0x54, 0x3D, 0x71, - 0x70, 0x78, 0x49, 0x30, 0x6F, 0x6F, 0x62, 0x62, - 0x62, 0x27, 0x71, 0x3D, 0x54, 0x54, 0x54, 0x3D, - 0x3D, 0x71, 0x3D, 0x2A, 0x30, 0x2D, 0x3B, 0x26, - 0x38, 0x20, 0x20, 0x20, 0x2D, 0x62, 0x32, 0x26, - 0x38, 0x6D, 0x6D, 0x38, 0x5B, 0x38, 0x6D, 0x38, - 0x6D, 0x6D, 0x6D, 0x26, 0x32, 0x29, 0x29, 0x29, - 0x53, 0x29, 0x61, 0x6D, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x44, 0x3D, 0x3C, 0x62, 0x79, 0x7A, - 0x54, 0x54, 0x71, 0x27, 0x3D, 0x66, 0x73, 0x40, - 0x73, 0x66, 0x66, 0x73, 0x2D, 0x54, 0x71, 0x71, - 0x4A, 0x3B, 0x62, 0x3B, 0x3B, 0x3B, 0x3B, 0x27, - 0x27, 0x27, 0x71, 0x3D, 0x2D, 0x73, 0x73, 0x54, - 0x3D, 0x71, 0x71, 0x33, 0x30, 0x71, 0x5D, 0x38, - 0x6D, 0x6D, 0x38, 0x38, 0x38, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x44, 0x38, 0x6F, 0x7A, 0x64, 0x64, - 0x23, 0x23, 0x56, 0x23, 0x23, 0x7B, 0x47, 0x64, - 0x54, 0x29, 0x44, 0x38, 0x38, 0x6D, 0x38, 0x38, - 0x6D, 0x38, 0x38, 0x6D, 0x53, 0x49, 0x6D, 0x34, - 0x73, 0x54, 0x3D, 0x71, 0x71, 0x3D, 0x54, 0x3D, - 0x3D, 0x54, 0x66, 0x66, 0x66, 0x54, 0x54, 0x3D, - 0x49, 0x3D, 0x54, 0x54, 0x3D, 0x71, 0x27, 0x27, - 0x71, 0x71, 0x71, 0x3D, 0x54, 0x54, 0x54, 0x3D, - 0x3D, 0x71, 0x71, 0x33, 0x29, 0x3D, 0x3D, 0x6D, - 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x38, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, - 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x38, 0x6D, 0x44, - 0x6D, 0x38, 0x38, 0x6D, 0x69, 0x78, 0x61, 0x73, - 0x54, 0x3D, 0x3D, 0x71, 0x71, 0x3D, 0x3D, 0x3D, - 0x71, 0x3D, 0x3D, 0x3D, 0x3D, 0x54, 0x3D, 0x71, - 0x3B, 0x66, 0x73, 0x73, 0x2D, 0x2D, 0x54, 0x3D, - 0x71, 0x71, 0x3D, 0x71, 0x71, 0x71, 0x27, 0x27, - 0x27, 0x71, 0x71, 0x33, 0x3B, 0x62, 0x27, 0x3D, - 0x27, 0x3B, 0x3B, 0x27, 0x62, 0x3B, 0x3D, 0x3D, - 0x30, 0x27, 0x62, 0x62, 0x62, 0x71, 0x30, 0x27, - 0x3B, 0x6F, 0x30, 0x30, 0x3B, 0x30, 0x3B, 0x62, - 0x3B, 0x69, 0x49, 0x30, 0x29, 0x29, 0x29, 0x29, - 0x49, 0x29, 0x30, 0x29, 0x29, 0x29, 0x51, 0x21, - 0x27, 0x27, 0x71, 0x71, 0x71, 0x3D, 0x3D, 0x71, - 0x71, 0x71, 0x71, 0x3D, 0x71, 0x71, 0x71, 0x62, - 0x3B, 0x54, 0x66, 0x66, 0x66, 0x54, 0x3D, 0x54, - 0x66, 0x54, 0x3D, 0x27, 0x62, 0x62, 0x3B, 0x3B, - 0x3B, 0x62, 0x27, 0x33, 0x30, 0x6F, 0x71, 0x3B, - 0x62, 0x3B, 0x62, 0x27, 0x27, 0x30, 0x62, 0x27, - 0x62, 0x27, 0x3B, 0x49, 0x3B, 0x30, 0x29, 0x3B, - 0x3B, 0x30, 0x30, 0x69, 0x30, 0x6F, 0x30, 0x49, - 0x3B, 0x6F, 0x49, 0x29, 0x49, 0x49, 0x3C, 0x29, - 0x49, 0x49, 0x69, 0x70, 0x70, 0x29, 0x51, 0x27, - 0x3B, 0x3B, 0x3B, 0x62, 0x27, 0x27, 0x27, 0x27, - 0x27, 0x3D, 0x3D, 0x3D, 0x71, 0x27, 0x27, 0x27, - 0x69, 0x71, 0x3D, 0x54, 0x71, 0x62, 0x27, 0x71, - 0x54, 0x2D, 0x3D, 0x27, 0x62, 0x3B, 0x3B, 0x3B, - 0x3B, 0x62, 0x62, 0x33, 0x27, 0x27, 0x3B, 0x71, - 0x27, 0x71, 0x27, 0x62, 0x71, 0x6F, 0x27, 0x71, - 0x3B, 0x62, 0x62, 0x6F, 0x62, 0x6F, 0x6F, 0x6F, - 0x6F, 0x69, 0x62, 0x49, 0x69, 0x49, 0x6F, 0x62, - 0x62, 0x49, 0x69, 0x71, 0x6F, 0x6F, 0x6F, 0x69, - 0x69, 0x69, 0x30, 0x29, 0x30, 0x69, 0x44, 0x7B, - 0x3B, 0x3B, 0x3B, 0x62, 0x62, 0x62, 0x62, 0x62, - 0x27, 0x3D, 0x3D, 0x54, 0x71, 0x3D, 0x3D, 0x54, - 0x69, 0x71, 0x3D, 0x71, 0x62, 0x3B, 0x3B, 0x27, - 0x54, 0x54, 0x3D, 0x71, 0x71, 0x71, 0x27, 0x62, - 0x62, 0x62, 0x27, 0x2A, 0x3D, 0x71, 0x3D, 0x71, - 0x3D, 0x62, 0x27, 0x30, 0x30, 0x62, 0x3B, 0x71, - 0x3B, 0x30, 0x30, 0x49, 0x29, 0x30, 0x30, 0x30, - 0x27, 0x49, 0x62, 0x30, 0x6F, 0x30, 0x3B, 0x3B, - 0x6F, 0x3B, 0x49, 0x30, 0x30, 0x3C, 0x3B, 0x49, - 0x30, 0x69, 0x6F, 0x78, 0x30, 0x62, 0x44, 0x7B, - 0x27, 0x62, 0x62, 0x62, 0x71, 0x71, 0x3D, 0x54, - 0x3D, 0x73, 0x66, 0x73, 0x66, 0x73, 0x73, 0x66, - 0x62, 0x66, 0x66, 0x3D, 0x27, 0x3B, 0x3B, 0x71, - 0x3D, 0x3D, 0x3D, 0x54, 0x54, 0x71, 0x3D, 0x3D, - 0x54, 0x73, 0x5D, 0x33, 0x62, 0x27, 0x54, 0x27, - 0x71, 0x3B, 0x71, 0x71, 0x62, 0x3B, 0x54, 0x3B, - 0x71, 0x6F, 0x62, 0x62, 0x62, 0x62, 0x69, 0x71, - 0x71, 0x6F, 0x3B, 0x71, 0x30, 0x62, 0x71, 0x6F, - 0x3B, 0x62, 0x6F, 0x62, 0x6F, 0x69, 0x6F, 0x69, - 0x6F, 0x30, 0x49, 0x3C, 0x69, 0x3B, 0x79, 0x21, - 0x20, 0x3D, 0x54, 0x73, 0x5D, 0x5D, 0x5D, 0x40, - 0x40, 0x73, 0x73, 0x73, 0x2D, 0x66, 0x66, 0x3D, - 0x3D, 0x54, 0x54, 0x3D, 0x71, 0x27, 0x62, 0x27, - 0x71, 0x71, 0x3D, 0x54, 0x54, 0x3D, 0x3D, 0x54, - 0x5D, 0x6A, 0x77, 0x46, 0x71, 0x2D, 0x54, 0x27, - 0x54, 0x3B, 0x3B, 0x3B, 0x6F, 0x3B, 0x71, 0x27, - 0x3B, 0x27, 0x3B, 0x3B, 0x27, 0x27, 0x3B, 0x3B, - 0x3B, 0x62, 0x3D, 0x62, 0x3D, 0x27, 0x3B, 0x54, - 0x3B, 0x2D, 0x49, 0x3B, 0x3B, 0x29, 0x49, 0x3C, - 0x53, 0x69, 0x53, 0x3C, 0x78, 0x3D, 0x78, 0x5D, - 0x20, 0x66, 0x5D, 0x6A, 0x47, 0x77, 0x4C, 0x5D, - 0x66, 0x3D, 0x3D, 0x66, 0x73, 0x66, 0x3D, 0x62, - 0x62, 0x62, 0x71, 0x3D, 0x71, 0x27, 0x27, 0x27, - 0x71, 0x71, 0x71, 0x3D, 0x3D, 0x71, 0x71, 0x73, - 0x7A, 0x77, 0x47, 0x46, 0x27, 0x73, 0x27, 0x54, - 0x3D, 0x71, 0x62, 0x6F, 0x27, 0x71, 0x27, 0x71, - 0x71, 0x71, 0x62, 0x62, 0x71, 0x71, 0x71, 0x62, - 0x62, 0x3B, 0x69, 0x49, 0x62, 0x6F, 0x62, 0x3D, - 0x6F, 0x6F, 0x62, 0x78, 0x2A, 0x20, 0x6B, 0x20, - 0x2A, 0x20, 0x20, 0x2A, 0x3B, 0x6F, 0x3C, 0x4C, - 0x20, 0x20, 0x7A, 0x77, 0x47, 0x6A, 0x5D, 0x54, - 0x27, 0x6F, 0x3B, 0x54, 0x40, 0x2D, 0x71, 0x6F, - 0x49, 0x6F, 0x27, 0x3D, 0x71, 0x62, 0x62, 0x3B, - 0x62, 0x27, 0x71, 0x3D, 0x3D, 0x71, 0x71, 0x66, - 0x7A, 0x34, 0x6A, 0x46, 0x27, 0x5D, 0x3D, 0x54, - 0x3D, 0x3D, 0x3D, 0x62, 0x27, 0x71, 0x27, 0x3D, - 0x3B, 0x3D, 0x30, 0x27, 0x27, 0x3B, 0x27, 0x3D, - 0x20, 0x20, 0x2A, 0x46, 0x46, 0x2A, 0x35, 0x2A, - 0x46, 0x46, 0x23, 0x2A, 0x7A, 0x4F, 0x4F, 0x6B, - 0x6B, 0x4F, 0x4F, 0x62, 0x3B, 0x62, 0x78, 0x20, - 0x20, 0x20, 0x7A, 0x34, 0x34, 0x40, 0x54, 0x71, - 0x3B, 0x69, 0x6F, 0x40, 0x7A, 0x66, 0x62, 0x69, - 0x3C, 0x3B, 0x71, 0x3D, 0x27, 0x3B, 0x6F, 0x27, - 0x71, 0x3D, 0x3D, 0x66, 0x2D, 0x3D, 0x62, 0x27, - 0x2D, 0x4C, 0x7A, 0x33, 0x27, 0x3D, 0x54, 0x2D, - 0x54, 0x62, 0x54, 0x27, 0x54, 0x27, 0x54, 0x71, - 0x62, 0x71, 0x71, 0x62, 0x62, 0x54, 0x71, 0x62, - 0x7A, 0x6B, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x35, 0x57, - 0x6B, 0x20, 0x20, 0x30, 0x6F, 0x27, 0x29, 0x20, - 0x20, 0x20, 0x66, 0x4C, 0x7A, 0x54, 0x62, 0x3B, - 0x6F, 0x30, 0x71, 0x7A, 0x4C, 0x3D, 0x69, 0x78, - 0x53, 0x3D, 0x73, 0x2D, 0x71, 0x62, 0x3B, 0x71, - 0x3D, 0x2D, 0x2D, 0x40, 0x73, 0x3D, 0x27, 0x71, - 0x40, 0x6A, 0x20, 0x20, 0x71, 0x2D, 0x62, 0x2D, - 0x3D, 0x3B, 0x71, 0x27, 0x54, 0x27, 0x3D, 0x3D, - 0x27, 0x2D, 0x27, 0x3D, 0x3B, 0x2D, 0x3D, 0x3B, - 0x34, 0x2D, 0x77, 0x6A, 0x77, 0x2D, 0x6A, 0x7A, - 0x5D, 0x6A, 0x5D, 0x54, 0x71, 0x44, 0x6D, 0x6D, - 0x6D, 0x38, 0x26, 0x30, 0x54, 0x62, 0x20, 0x20, - 0x20, 0x20, 0x40, 0x6A, 0x4C, 0x54, 0x6F, 0x69, - 0x30, 0x62, 0x40, 0x6A, 0x21, 0x62, 0x49, 0x29, - 0x71, 0x4C, 0x34, 0x5D, 0x71, 0x3B, 0x27, 0x71, - 0x54, 0x54, 0x40, 0x40, 0x73, 0x3D, 0x3D, 0x40, - 0x6A, 0x20, 0x20, 0x33, 0x2D, 0x73, 0x40, 0x4E, - 0x77, 0x7A, 0x3D, 0x54, 0x2D, 0x54, 0x71, 0x54, - 0x62, 0x71, 0x71, 0x62, 0x71, 0x71, 0x71, 0x71, - 0x2D, 0x3B, 0x27, 0x3B, 0x49, 0x6F, 0x3B, 0x3B, - 0x27, 0x3B, 0x3B, 0x30, 0x49, 0x53, 0x6F, 0x6F, - 0x69, 0x3B, 0x6F, 0x53, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x6A, 0x77, 0x21, 0x27, 0x30, 0x30, - 0x6F, 0x71, 0x66, 0x73, 0x3D, 0x30, 0x49, 0x30, - 0x5D, 0x34, 0x34, 0x40, 0x27, 0x6F, 0x62, 0x3D, - 0x54, 0x66, 0x40, 0x73, 0x2D, 0x66, 0x2D, 0x5D, - 0x7A, 0x20, 0x20, 0x56, 0x20, 0x54, 0x5D, 0x5E, - 0x33, 0x71, 0x3D, 0x62, 0x27, 0x3B, 0x27, 0x30, - 0x3B, 0x3D, 0x27, 0x3D, 0x3D, 0x3D, 0x3B, 0x73, - 0x54, 0x62, 0x62, 0x62, 0x30, 0x6F, 0x71, 0x6F, - 0x6F, 0x6F, 0x6F, 0x71, 0x62, 0x3B, 0x3B, 0x49, - 0x3B, 0x3B, 0x3B, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x7A, 0x21, 0x54, 0x3B, 0x69, 0x69, - 0x30, 0x62, 0x27, 0x71, 0x62, 0x30, 0x30, 0x6F, - 0x4C, 0x77, 0x6A, 0x66, 0x62, 0x6F, 0x62, 0x71, - 0x54, 0x66, 0x2D, 0x73, 0x66, 0x54, 0x73, 0x73, - 0x73, 0x20, 0x20, 0x7E, 0x20, 0x3D, 0x27, 0x6B, - 0x35, 0x21, 0x54, 0x3D, 0x71, 0x71, 0x54, 0x62, - 0x62, 0x71, 0x71, 0x69, 0x71, 0x54, 0x54, 0x30, - 0x27, 0x3B, 0x3B, 0x3B, 0x6F, 0x30, 0x3B, 0x30, - 0x3B, 0x30, 0x30, 0x27, 0x30, 0x6F, 0x62, 0x69, - 0x6F, 0x6F, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x73, 0x3D, 0x62, 0x6F, 0x69, 0x69, - 0x6F, 0x71, 0x3D, 0x71, 0x27, 0x62, 0x62, 0x27, - 0x4C, 0x4C, 0x5D, 0x71, 0x30, 0x69, 0x3B, 0x71, - 0x54, 0x66, 0x73, 0x66, 0x66, 0x66, 0x54, 0x3D, - 0x71, 0x20, 0x20, 0x7E, 0x20, 0x20, 0x21, 0x62, - 0x69, 0x27, 0x5D, 0x3D, 0x3D, 0x3D, 0x3D, 0x3B, - 0x3D, 0x3D, 0x27, 0x3B, 0x27, 0x3D, 0x71, 0x6F, - 0x54, 0x62, 0x6F, 0x30, 0x6F, 0x6F, 0x62, 0x6F, - 0x62, 0x62, 0x62, 0x62, 0x3B, 0x3B, 0x27, 0x3B, - 0x30, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x27, 0x3B, 0x6F, 0x30, 0x6F, 0x6F, - 0x62, 0x3D, 0x66, 0x54, 0x54, 0x71, 0x71, 0x71, - 0x5D, 0x5D, 0x54, 0x3B, 0x69, 0x69, 0x3B, 0x71, - 0x54, 0x40, 0x73, 0x66, 0x54, 0x3D, 0x71, 0x62, - 0x6F, 0x20, 0x20, 0x39, 0x20, 0x20, 0x20, 0x2D, - 0x2D, 0x73, 0x40, 0x54, 0x54, 0x54, 0x71, 0x73, - 0x54, 0x73, 0x71, 0x54, 0x54, 0x54, 0x27, 0x3B, - 0x3D, 0x3B, 0x27, 0x62, 0x3B, 0x3B, 0x3B, 0x27, - 0x27, 0x3B, 0x3B, 0x27, 0x62, 0x62, 0x71, 0x62, - 0x71, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3B, 0x6F, 0x30, 0x6F, 0x3B, 0x27, - 0x3D, 0x66, 0x66, 0x54, 0x71, 0x71, 0x27, 0x71, - 0x66, 0x73, 0x54, 0x27, 0x6F, 0x6F, 0x27, 0x54, - 0x40, 0x21, 0x5D, 0x73, 0x3D, 0x27, 0x62, 0x3B, - 0x3B, 0x42, 0x74, 0x52, 0x52, 0x6E, 0x20, 0x20, - 0x40, 0x54, 0x3D, 0x3D, 0x3D, 0x40, 0x27, 0x3B, - 0x30, 0x40, 0x27, 0x27, 0x27, 0x71, 0x54, 0x6F, - 0x5D, 0x6F, 0x3B, 0x71, 0x71, 0x6F, 0x73, 0x6F, - 0x54, 0x6F, 0x54, 0x27, 0x39, 0x6E, 0x6E, 0x3B, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x3B, 0x3B, 0x3B, 0x62, 0x27, 0x71, - 0x3D, 0x3D, 0x3D, 0x27, 0x62, 0x27, 0x62, 0x27, - 0x3D, 0x40, 0x54, 0x27, 0x3B, 0x3B, 0x27, 0x73, - 0x7A, 0x21, 0x40, 0x54, 0x71, 0x62, 0x6F, 0x6F, - 0x3B, 0x67, 0x3A, 0x3A, 0x5A, 0x48, 0x3A, 0x20, - 0x20, 0x53, 0x6D, 0x38, 0x38, 0x6D, 0x38, 0x38, - 0x6D, 0x38, 0x79, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x67, 0x52, 0x41, 0x22, 0x2F, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4F, 0x6B, - 0x43, 0x3A, 0x3B, 0x27, 0x27, 0x62, 0x27, 0x71, - 0x71, 0x71, 0x71, 0x3D, 0x71, 0x71, 0x3D, 0x3D, - 0x27, 0x40, 0x54, 0x27, 0x30, 0x30, 0x27, 0x40, - 0x7A, 0x5D, 0x54, 0x71, 0x3B, 0x30, 0x30, 0x3B, - 0x42, 0x67, 0x67, 0x3E, 0x3A, 0x48, 0x22, 0x5A, - 0x4F, 0x20, 0x2D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x6D, 0x26, 0x6D, 0x38, 0x6D, 0x38, 0x6D, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x38, 0x6D, 0x38, - 0x6D, 0x38, 0x38, 0x3E, 0x55, 0x6C, 0x22, 0x73, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x4D, - 0x5A, 0x45, 0x36, 0x3D, 0x71, 0x27, 0x27, 0x71, - 0x54, 0x66, 0x73, 0x40, 0x73, 0x66, 0x2D, 0x66, - 0x30, 0x66, 0x71, 0x30, 0x69, 0x6F, 0x3D, 0x21, - 0x7A, 0x66, 0x3D, 0x62, 0x3B, 0x6F, 0x3B, 0x28, - 0x67, 0x52, 0x5A, 0x74, 0x41, 0x3A, 0x74, 0x3A, - 0x52, 0x20, 0x20, 0x7E, 0x38, 0x6D, 0x6D, 0x6D, - 0x6D, 0x38, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, - 0x6D, 0x6D, 0x6D, 0x2F, 0x52, 0x22, 0x28, 0x50, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x2E, - 0x41, 0x5A, 0x5A, 0x66, 0x54, 0x3D, 0x54, 0x66, - 0x73, 0x40, 0x40, 0x40, 0x73, 0x66, 0x66, 0x3D, - 0x69, 0x27, 0x3B, 0x30, 0x30, 0x62, 0x73, 0x7A, - 0x21, 0x3D, 0x3B, 0x6F, 0x6F, 0x62, 0x2F, 0x75, - 0x28, 0x55, 0x22, 0x3A, 0x31, 0x3A, 0x41, 0x3A, - 0x5A, 0x2E, 0x20, 0x4F, 0x20, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x6D, 0x78, 0x2F, 0x31, 0x55, 0x2E, 0x3F, - 0x50, 0x20, 0x20, 0x20, 0x20, 0x4D, 0x24, 0x52, - 0x22, 0x22, 0x31, 0x2D, 0x66, 0x54, 0x66, 0x66, - 0x66, 0x66, 0x54, 0x71, 0x27, 0x27, 0x27, 0x62, - 0x30, 0x3B, 0x3B, 0x6F, 0x3B, 0x3D, 0x40, 0x21, - 0x73, 0x71, 0x5F, 0x6E, 0x2E, 0x2E, 0x67, 0x52, - 0x52, 0x31, 0x7D, 0x48, 0x3A, 0x3A, 0x74, 0x74, - 0x55, 0x39, 0x20, 0x20, 0x20, 0x20, 0x38, 0x6D, - 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x6D, 0x29, 0x29, 0x2F, 0x55, 0x52, 0x2E, 0x24, - 0x72, 0x68, 0x25, 0x76, 0x68, 0x3F, 0x2E, 0x39, - 0x52, 0x74, 0x3A, 0x73, 0x66, 0x66, 0x54, 0x54, - 0x27, 0x3B, 0x6F, 0x6F, 0x6F, 0x6F, 0x3B, 0x62, - 0x3B, 0x62, 0x27, 0x71, 0x54, 0x40, 0x21, 0x40, - 0x3D, 0x2E, 0x48, 0x6E, 0x55, 0x55, 0x6E, 0x55, - 0x3A, 0x74, 0x3E, 0x55, 0x74, 0x5A, 0x22, 0x3A, - 0x3A, 0x36, 0x2E, 0x20, 0x20, 0x20, 0x20, 0x38, - 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x38, 0x6D, 0x38, 0x38, 0x6D, 0x38, 0x6D, 0x38, - 0x6D, 0x32, 0x78, 0x62, 0x3E, 0x52, 0x28, 0x42, - 0x65, 0x24, 0x5F, 0x24, 0x5F, 0x2E, 0x55, 0x22, - 0x3A, 0x41, 0x74, 0x31, 0x54, 0x73, 0x66, 0x54, - 0x27, 0x6F, 0x30, 0x69, 0x30, 0x6F, 0x62, 0x62, - 0x62, 0x71, 0x3D, 0x54, 0x73, 0x5D, 0x5D, 0x66, - 0x71, 0x2E, 0x22, 0x31, 0x55, 0x3A, 0x31, 0x5A, - 0x3A, 0x3A, 0x74, 0x5A, 0x74, 0x3E, 0x31, 0x3A, - 0x55, 0x22, 0x22, 0x35, 0x20, 0x20, 0x20, 0x20, - 0x34, 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x38, 0x6D, - 0x6D, 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x38, 0x79, 0x29, 0x2F, 0x42, 0x52, 0x28, 0x48, - 0x48, 0x2E, 0x2E, 0x48, 0x3E, 0x52, 0x3A, 0x74, - 0x7D, 0x3A, 0x3A, 0x3E, 0x40, 0x40, 0x40, 0x54, - 0x27, 0x6F, 0x30, 0x6F, 0x62, 0x71, 0x71, 0x71, - 0x62, 0x3D, 0x66, 0x73, 0x40, 0x5D, 0x73, 0x71, - 0x62, 0x28, 0x55, 0x5A, 0x5A, 0x55, 0x3A, 0x41, - 0x55, 0x3A, 0x3A, 0x31, 0x55, 0x55, 0x5A, 0x74, - 0x3A, 0x31, 0x22, 0x48, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, - 0x6D, 0x6D, 0x29, 0x2F, 0x24, 0x28, 0x28, 0x52, - 0x52, 0x48, 0x48, 0x28, 0x39, 0x52, 0x74, 0x48, - 0x74, 0x55, 0x22, 0x41, 0x5A, 0x40, 0x54, 0x27, - 0x3B, 0x6F, 0x3B, 0x71, 0x54, 0x66, 0x66, 0x3D, - 0x62, 0x54, 0x40, 0x21, 0x7A, 0x40, 0x3D, 0x62, - 0x62, 0x48, 0x52, 0x55, 0x6C, 0x5A, 0x31, 0x31, - 0x5A, 0x41, 0x31, 0x3A, 0x3A, 0x7D, 0x31, 0x3A, - 0x41, 0x41, 0x22, 0x36, 0x42, 0x20, 0x20, 0x20, - 0x20, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x6D, 0x6D, 0x29, 0x25, 0x59, 0x2E, 0x39, 0x39, - 0x55, 0x39, 0x39, 0x39, 0x31, 0x22, 0x3A, 0x74, - 0x5A, 0x3E, 0x6C, 0x3E, 0x31, 0x3E, 0x3A, 0x69, - 0x49, 0x49, 0x3B, 0x71, 0x66, 0x73, 0x66, 0x54, - 0x27, 0x66, 0x5D, 0x7A, 0x21, 0x73, 0x71, 0x62, - 0x27, 0x75, 0x39, 0x41, 0x3A, 0x36, 0x7D, 0x74, - 0x74, 0x41, 0x55, 0x55, 0x3A, 0x3A, 0x3A, 0x3A, - 0x31, 0x31, 0x5A, 0x22, 0x52, 0x20, 0x20, 0x20, - 0x26, 0x38, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x38, - 0x6D, 0x38, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, - 0x38, 0x6D, 0x20, 0x60, 0x24, 0x48, 0x39, 0x3A, - 0x55, 0x55, 0x31, 0x55, 0x41, 0x74, 0x41, 0x22, - 0x7D, 0x3A, 0x22, 0x3E, 0x41, 0x5A, 0x3A, 0x74, - 0x78, 0x30, 0x27, 0x54, 0x40, 0x73, 0x54, 0x3D, - 0x71, 0x54, 0x5D, 0x7A, 0x21, 0x66, 0x62, 0x3B, - 0x71, 0x5F, 0x52, 0x3E, 0x41, 0x5A, 0x5A, 0x22, - 0x3E, 0x3A, 0x74, 0x3E, 0x55, 0x55, 0x3A, 0x31, - 0x41, 0x3A, 0x48, 0x55, 0x41, 0x42, 0x6D, 0x38, - 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, - 0x38, 0x6D, 0x6D, 0x38, 0x6D, 0x38, 0x6D, 0x6D, - 0x6D, 0x20, 0x20, 0x25, 0x24, 0x28, 0x52, 0x3A, - 0x5A, 0x5A, 0x5A, 0x5A, 0x74, 0x74, 0x7D, 0x74, - 0x3A, 0x74, 0x3A, 0x41, 0x7D, 0x41, 0x3A, 0x3A, - 0x69, 0x3D, 0x21, 0x4C, 0x4C, 0x5D, 0x66, 0x54, - 0x66, 0x73, 0x21, 0x6A, 0x21, 0x3D, 0x3B, 0x6F, - 0x71, 0x75, 0x48, 0x31, 0x5A, 0x3A, 0x3E, 0x48, - 0x74, 0x7D, 0x3A, 0x7D, 0x3A, 0x3A, 0x55, 0x74, - 0x5A, 0x3A, 0x41, 0x55, 0x22, 0x22, 0x3F, 0x6D, - 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x38, - 0x20, 0x20, 0x20, 0x60, 0x42, 0x28, 0x39, 0x3A, - 0x3A, 0x31, 0x41, 0x3A, 0x22, 0x55, 0x74, 0x55, - 0x74, 0x74, 0x74, 0x3A, 0x3A, 0x74, 0x3A, 0x67, - 0x54, 0x7A, 0x34, 0x77, 0x6A, 0x21, 0x66, 0x66, - 0x7A, 0x21, 0x21, 0x4C, 0x21, 0x3D, 0x3B, 0x62, - 0x66, 0x67, 0x28, 0x55, 0x41, 0x31, 0x55, 0x3A, - 0x74, 0x41, 0x31, 0x3A, 0x3A, 0x41, 0x3A, 0x36, - 0x5A, 0x5A, 0x31, 0x31, 0x39, 0x22, 0x24, 0x43, - 0x6D, 0x6D, 0x6D, 0x6D, 0x6D, 0x38, 0x6D, 0x6D, - 0x6D, 0x38, 0x6D, 0x6D, 0x6D, 0x38, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x60, 0x24, 0x63, 0x39, 0x55, - 0x31, 0x5A, 0x3A, 0x74, 0x3A, 0x31, 0x3A, 0x31, - 0x5A, 0x48, 0x3A, 0x7D, 0x48, 0x41, 0x31, 0x3E, - 0x6A, 0x64, 0x47, 0x4C, 0x5D, 0x54, 0x71, 0x71, - 0x6A, 0x5D, 0x5D, 0x21, 0x5D, 0x3D, 0x3B, 0x62, - 0x66, 0x42, 0x39, 0x3A, 0x41, 0x3A, 0x31, 0x3A, - 0x7D, 0x3A, 0x74, 0x41, 0x31, 0x31, 0x3E, 0x41, - 0x5A, 0x41, 0x3A, 0x31, 0x39, 0x52, 0x48, 0x25, - 0x62, 0x6D, 0x38, 0x38, 0x6D, 0x38, 0x6D, 0x6D, - 0x6D, 0x6D, 0x6D, 0x6D, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x4D, 0x43, 0x5F, 0x28, 0x52, 0x3E, - 0x22, 0x31, 0x3A, 0x3A, 0x55, 0x3A, 0x3E, 0x31, - 0x74, 0x67, 0x3E, 0x3A, 0x3E, 0x67, 0x54, 0x34, - 0x2B, 0x2B, 0x34, 0x21, 0x66, 0x71, 0x62, 0x62, - 0x3D, 0x3D, 0x54, 0x5D, 0x40, 0x27, 0x6F, 0x3B, - 0x67, 0x48, 0x48, 0x39, 0x52, 0x7D, 0x7D, 0x22, - 0x74, 0x3A, 0x5A, 0x5A, 0x3A, 0x55, 0x31, 0x3A, - 0x41, 0x7D, 0x3A, 0x22, 0x55, 0x48, 0x42, 0x76, - 0x4B, 0x20, 0x37, 0x6D, 0x6D, 0x6D, 0x38, 0x78, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x4D, 0x76, 0x42, 0x48, 0x55, 0x74, - 0x41, 0x6C, 0x48, 0x31, 0x31, 0x3A, 0x5A, 0x74, - 0x31, 0x6C, 0x22, 0x3E, 0x67, 0x62, 0x7A, 0x64, - 0x7B, 0x77, 0x5D, 0x54, 0x71, 0x62, 0x62, 0x3B, - 0x53, 0x62, 0x71, 0x73, 0x73, 0x27, 0x6F, 0x3B, - 0x67, 0x2E, 0x5F, 0x48, 0x48, 0x52, 0x52, 0x52, - 0x52, 0x52, 0x31, 0x41, 0x74, 0x41, 0x74, 0x31, - 0x74, 0x3A, 0x74, 0x74, 0x48, 0x48, 0x42, 0x72, - 0x4B, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x4B, 0x68, 0x42, 0x28, 0x55, 0x74, - 0x5A, 0x3A, 0x48, 0x55, 0x5A, 0x31, 0x55, 0x55, - 0x39, 0x67, 0x2F, 0x49, 0x69, 0x27, 0x4C, 0x64, - 0x34, 0x5D, 0x66, 0x71, 0x62, 0x6F, 0x6F, 0x6F, - 0x79, 0x27, 0x66, 0x73, 0x66, 0x27, 0x6F, 0x3B, - 0x54, 0x24, 0x5F, 0x59, 0x24, 0x24, 0x42, 0x2E, - 0x48, 0x67, 0x28, 0x39, 0x52, 0x39, 0x31, 0x3E, - 0x55, 0x3A, 0x3A, 0x31, 0x39, 0x48, 0x24, 0x76, - 0x50, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x4B, 0x76, 0x24, 0x42, 0x52, 0x55, - 0x41, 0x31, 0x31, 0x39, 0x52, 0x52, 0x48, 0x67, - 0x72, 0x71, 0x6F, 0x69, 0x58, 0x2D, 0x4C, 0x34, - 0x7A, 0x40, 0x66, 0x54, 0x62, 0x30, 0x6F, 0x3B, - 0x53, 0x7A, 0x7A, 0x73, 0x3D, 0x62, 0x30, 0x6F, - 0x3D, 0x3D, 0x3B, 0x60, 0x2F, 0x76, 0x59, 0x59, - 0x59, 0x24, 0x24, 0x5F, 0x42, 0x2E, 0x28, 0x55, - 0x3A, 0x39, 0x39, 0x48, 0x48, 0x65, 0x68, 0x25, - 0x4B, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, - 0x20, 0x20, 0x4B, 0x25, 0x72, 0x65, 0x2E, 0x28, - 0x52, 0x28, 0x48, 0x48, 0x2E, 0x24, 0x3F, 0x4B, - 0x71, 0x27, 0x30, 0x30, 0x27, 0x5D, 0x4C, 0x6A, - 0x7A, 0x7A, 0x5D, 0x54, 0x3B, 0x30, 0x6F, 0x71, - 0x27, 0x64, 0x34, 0x40, 0x3D, 0x62, 0x3B, 0x27, - 0x3D, 0x54, 0x71, 0x3B, 0x3B, 0x62, 0x71, 0x4B, - 0x43, 0x43, 0x76, 0x76, 0x72, 0x59, 0x24, 0x24, - 0x42, 0x2E, 0x42, 0x24, 0x2C, 0x76, 0x60, 0x50, - 0x4D, 0x20, 0x20, 0x20, 0x20, 0x62, 0x27, 0x3D, - 0x3D, 0x27, 0x62, 0x62, 0x27, 0x27, 0x62, 0x30, - 0x20, 0x20, 0x4B, 0x25, 0x76, 0x59, 0x24, 0x24, - 0x42, 0x42, 0x42, 0x65, 0x3F, 0x60, 0x6F, 0x62, - 0x27, 0x27, 0x62, 0x3B, 0x3D, 0x5D, 0x7A, 0x4C, - 0x4C, 0x4C, 0x5D, 0x71, 0x30, 0x69, 0x62, 0x54, - 0x7A, 0x2B, 0x34, 0x2D, 0x71, 0x27, 0x58, 0x62, - 0x71, 0x3D, 0x71, 0x6F, 0x30, 0x6F, 0x27, 0x54, - 0x3D, 0x71, 0x66, 0x4B, 0x25, 0x60, 0x76, 0x76, - 0x72, 0x72, 0x3F, 0x76, 0x76, 0x60, 0x50, 0x4B, - 0x20, 0x73, 0x3D, 0x62, 0x3B, 0x27, 0x71, 0x3D, - 0x3D, 0x71, 0x27, 0x62, 0x62, 0x27, 0x62, 0x3B, - 0x30, 0x27, 0x4D, 0x4B, 0x25, 0x76, 0x72, 0x2C, - 0x59, 0x2C, 0x3F, 0x76, 0x25, 0x62, 0x30, 0x3B, - 0x71, 0x3D, 0x71, 0x71, 0x66, 0x5D, 0x5D, 0x21, - 0x21, 0x21, 0x54, 0x30, 0x78, 0x69, 0x27, 0x66, - 0x7A, 0x4C, 0x5D, 0x3D, 0x27, 0x62, 0x62, 0x3B, - 0x62, 0x3D, 0x27, 0x6F, 0x30, 0x3B, 0x71, 0x54, - 0x3D, 0x3D, 0x54, 0x66, 0x66, 0x66, 0x4B, 0x25, - 0x25, 0x25, 0x25, 0x60, 0x25, 0x50, 0x4B, 0x71, - 0x54, 0x54, 0x71, 0x27, 0x3D, 0x54, 0x54, 0x3D, - 0x3D, 0x71, 0x3B, 0x3B, 0x62, 0x3B, 0x62, 0x3B, - 0x27, 0x54, 0x4C, 0x4D, 0x4B, 0x25, 0x76, 0x76, - 0x68, 0x43, 0x25, 0x50, 0x27, 0x30, 0x30, 0x58, - 0x27, 0x54, 0x54, 0x3D, 0x54, 0x54, 0x66, 0x54, - 0x66, 0x71, 0x6F, 0x78, 0x53, 0x69, 0x54, 0x73, - 0x66, 0x66, 0x54, 0x27, 0x27, 0x27, 0x62, 0x3B, - 0x3B, 0x27, 0x27, 0x3B, 0x6F, 0x62, 0x27, 0x54, - 0x66, 0x3D, 0x3D, 0x27, 0x27, 0x27, 0x62, 0x6F, - 0x78, 0x53, 0x78, 0x62, 0x66, 0x73, 0x3D, 0x3D, - 0x66, 0x2D, 0x54, 0x54, 0x73, 0x73, 0x54, 0x71, - 0x71, 0x27, 0x3B, 0x6F, 0x3B, 0x3B, 0x62, 0x3B, - 0x3B, 0x71, 0x73, 0x73, 0x54, 0x71, 0x62, 0x27, - 0x27, 0x58, 0x62, 0x71, 0x71, 0x6F, 0x6F, 0x62, - 0x27, 0x54, 0x66, 0x3D, 0x3D, 0x27, 0x27, 0x62, - 0x62, 0x6F, 0x78, 0x53, 0x78, 0x62, 0x54, 0x66, - 0x71, 0x3D, 0x71, 0x71, 0x62, 0x27, 0x27, 0x62, - 0x62, 0x71, 0x3D, 0x27, 0x27, 0x62, 0x27, 0x3D, - 0x54, 0x3D, 0x27, 0x62, 0x3B, 0x6F, 0x6F, 0x69, - 0x78, 0x78, 0x6F, 0x54, 0x73, 0x66, 0x54, 0x54, - 0x40, 0x5D, 0x40, 0x40, 0x40, 0x66, 0x3D, 0x71, - 0x27, 0x27, 0x3B, 0x30, 0x6F, 0x3B, 0x3B, 0x62, - 0x3B, 0x3B, 0x27, 0x71, 0x71, 0x27, 0x62, 0x62, - 0x62, 0x62, 0x62, 0x71, 0x71, 0x71, 0x62, 0x62, - 0x27, 0x71, 0x54, 0x3D, 0x27, 0x62, 0x3B, 0x6F, - 0x6F, 0x69, 0x49, 0x49, 0x6F, 0x3D, 0x73, 0x66 + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x21, 0x21, 0x22, 0x22, + 0x22, 0x21, 0x21, 0x21, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, + 0x26, 0x26, 0x25, 0x28, 0x23, 0x22, 0x21, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x21, 0x23, 0x25, 0x2a, 0x2b, 0x2c, 0x2d, 0x2d, + 0x2d, 0x2e, 0x2c, 0x2b, 0x2a, 0x25, 0x28, 0x22, + 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x24, 0x2a, 0x2c, 0x2f, 0x2c, 0x30, 0x30, 0x24, + 0x25, 0x27, 0x2b, 0x2c, 0x2f, 0x31, 0x32, 0x25, + 0x23, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, 0x25, + 0x33, 0x34, 0x35, 0x21, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x21, 0x2b, 0x2f, 0x2c, + 0x30, 0x28, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x24, 0x33, + 0x2d, 0x27, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x21, 0x31, + 0x2d, 0x32, 0x24, 0x21, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x37, 0x37, 0x37, 0x37, 0x38, + 0x37, 0x37, 0x39, 0x37, 0x39, 0x38, 0x39, 0x3a, + 0x32, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x23, 0x32, 0x27, 0x21, 0x36, + 0x34, 0x38, 0x38, 0x39, 0x38, 0x37, 0x38, 0x39, + 0x38, 0x37, 0x38, 0x37, 0x37, 0x37, 0x37, 0x37, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x38, 0x37, 0x37, 0x37, 0x37, + 0x38, 0x39, 0x37, 0x37, 0x37, 0x37, 0x38, 0x3b, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x25, 0x2f, 0x3c, 0x32, 0x22, + 0x36, 0x3d, 0x38, 0x37, 0x39, 0x37, 0x38, 0x37, + 0x39, 0x37, 0x38, 0x37, 0x38, 0x37, 0x37, 0x37, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x3d, 0x3e, 0x3a, 0x3e, 0x3e, + 0x3e, 0x3f, 0x3e, 0x3a, 0x3e, 0x3e, 0x40, 0x22, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x26, 0x41, 0x41, 0x35, 0x25, + 0x36, 0x22, 0x42, 0x38, 0x38, 0x37, 0x37, 0x38, + 0x39, 0x37, 0x37, 0x38, 0x37, 0x38, 0x38, 0x3a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x43, 0x3e, 0x44, 0x44, 0x45, + 0x44, 0x40, 0x3a, 0x3f, 0x3a, 0x3f, 0x3b, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x25, 0x2b, 0x30, 0x28, 0x22, + 0x36, 0x36, 0x35, 0x38, 0x38, 0x38, 0x38, 0x38, + 0x38, 0x38, 0x38, 0x38, 0x38, 0x38, 0x37, 0x44, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x34, 0x3e, 0x3a, 0x38, 0x38, + 0x3e, 0x3e, 0x46, 0x3e, 0x46, 0x46, 0x33, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x22, 0x22, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x47, 0x38, 0x37, 0x37, 0x37, + 0x38, 0x37, 0x37, 0x37, 0x38, 0x38, 0x37, 0x48, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x37, 0x44, 0x3e, 0x22, + 0x2d, 0x2c, 0x49, 0x43, 0x4a, 0x4b, 0x22, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x49, 0x4c, 0x46, 0x44, 0x46, + 0x4c, 0x38, 0x44, 0x38, 0x38, 0x3e, 0x37, 0x4d, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x34, 0x3e, 0x3e, 0x3a, 0x36, + 0x20, 0x20, 0x20, 0x23, 0x2a, 0x34, 0x36, 0x36, + 0x36, 0x21, 0x22, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x21, 0x23, 0x22, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x28, 0x34, 0x27, 0x22, 0x20, + 0x21, 0x20, 0x20, 0x20, 0x4e, 0x37, 0x38, 0x4f, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x34, 0x44, 0x3a, 0x3e, 0x43, + 0x20, 0x20, 0x20, 0x23, 0x32, 0x2f, 0x36, 0x36, + 0x21, 0x21, 0x24, 0x27, 0x21, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x28, 0x27, 0x22, 0x33, 0x24, 0x36, + 0x36, 0x36, 0x36, 0x22, 0x2f, 0x2a, 0x23, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x50, 0x38, 0x3e, 0x51, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2c, 0x3a, 0x44, 0x44, 0x52, + 0x20, 0x20, 0x20, 0x23, 0x32, 0x2f, 0x36, 0x36, + 0x30, 0x3b, 0x41, 0x24, 0x24, 0x36, 0x36, 0x36, + 0x23, 0x2f, 0x53, 0x54, 0x55, 0x30, 0x25, 0x21, + 0x36, 0x36, 0x36, 0x36, 0x2f, 0x32, 0x23, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x51, 0x3e, 0x37, 0x42, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x34, 0x44, 0x45, 0x3e, 0x45, + 0x20, 0x20, 0x20, 0x23, 0x32, 0x2f, 0x36, 0x23, + 0x56, 0x4d, 0x57, 0x3b, 0x22, 0x36, 0x36, 0x21, + 0x49, 0x51, 0x4c, 0x45, 0x40, 0x56, 0x23, 0x21, + 0x36, 0x36, 0x36, 0x36, 0x2f, 0x33, 0x28, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x40, 0x44, 0x38, 0x51, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x29, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2e, 0x44, 0x40, 0x44, 0x42, + 0x20, 0x20, 0x20, 0x23, 0x32, 0x2f, 0x36, 0x2b, + 0x45, 0x57, 0x44, 0x39, 0x35, 0x36, 0x36, 0x26, + 0x4c, 0x58, 0x59, 0x3d, 0x3f, 0x3e, 0x2e, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x31, 0x35, 0x24, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x57, 0x44, 0x3e, 0x48, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5a, 0x44, 0x45, 0x3e, 0x44, + 0x20, 0x20, 0x20, 0x23, 0x32, 0x34, 0x36, 0x4b, + 0x5b, 0x25, 0x2f, 0x44, 0x3d, 0x22, 0x23, 0x32, + 0x3a, 0x42, 0x21, 0x31, 0x43, 0x46, 0x50, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x31, 0x35, 0x24, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x47, 0x3e, 0x38, 0x50, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x29, 0x20, 0x29, 0x29, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x49, 0x40, 0x40, 0x44, 0x38, + 0x20, 0x20, 0x20, 0x23, 0x2a, 0x2f, 0x21, 0x3b, + 0x4b, 0x21, 0x31, 0x5c, 0x5d, 0x28, 0x30, 0x2b, + 0x3f, 0x4b, 0x36, 0x23, 0x32, 0x42, 0x4d, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x2e, 0x5a, 0x24, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x42, 0x44, 0x44, 0x52, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x29, 0x20, 0x29, 0x20, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2c, 0x4c, 0x40, 0x4c, 0x37, + 0x20, 0x20, 0x20, 0x23, 0x2a, 0x41, 0x23, 0x3c, + 0x5d, 0x36, 0x28, 0x3b, 0x5e, 0x5f, 0x5f, 0x60, + 0x54, 0x4b, 0x36, 0x36, 0x36, 0x57, 0x57, 0x21, + 0x36, 0x36, 0x36, 0x36, 0x2e, 0x5a, 0x24, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x40, 0x44, 0x3a, 0x5c, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x29, 0x29, 0x29, 0x20, 0x29, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x44, 0x45, 0x4c, 0x3a, + 0x20, 0x20, 0x20, 0x22, 0x30, 0x43, 0x23, 0x35, + 0x4c, 0x25, 0x61, 0x62, 0x63, 0x64, 0x65, 0x66, + 0x67, 0x68, 0x69, 0x36, 0x31, 0x39, 0x53, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x31, 0x2c, 0x25, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x52, 0x45, 0x44, 0x54, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x40, 0x4d, 0x4c, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x30, 0x2f, 0x23, 0x22, + 0x57, 0x6a, 0x6b, 0x65, 0x6c, 0x6d, 0x6e, 0x6f, + 0x70, 0x71, 0x6e, 0x66, 0x72, 0x73, 0x2a, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x33, 0x2e, 0x26, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x51, 0x3a, 0x44, 0x47, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2c, 0x45, 0x4c, 0x4c, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x27, 0x2f, 0x23, 0x36, + 0x74, 0x6b, 0x75, 0x6c, 0x64, 0x6e, 0x71, 0x76, + 0x77, 0x78, 0x79, 0x71, 0x71, 0x7a, 0x74, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x33, 0x34, 0x27, 0x22, + 0x20, 0x20, 0x20, 0x20, 0x54, 0x44, 0x44, 0x54, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5a, 0x48, 0x48, 0x4f, 0x37, + 0x20, 0x20, 0x20, 0x22, 0x27, 0x34, 0x26, 0x7b, + 0x7c, 0x7d, 0x7e, 0x6c, 0x6d, 0x7f, 0x71, 0x80, + 0x78, 0x79, 0x79, 0x79, 0x7a, 0x67, 0x66, 0x21, + 0x36, 0x36, 0x36, 0x36, 0x25, 0x41, 0x2a, 0x23, + 0x20, 0x20, 0x20, 0x20, 0x81, 0x44, 0x40, 0x5b, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2c, 0x44, 0x45, 0x4f, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x2d, 0x33, 0x82, + 0x6b, 0x83, 0x84, 0x64, 0x6e, 0x71, 0x76, 0x85, + 0x79, 0x79, 0x71, 0x86, 0x87, 0x83, 0x88, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x21, 0x43, 0x2b, 0x28, + 0x21, 0x20, 0x20, 0x20, 0x52, 0x44, 0x44, 0x50, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5a, 0x40, 0x4d, 0x4f, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x26, 0x2d, 0x32, 0x24, + 0x89, 0x8a, 0x6c, 0x8b, 0x7f, 0x71, 0x79, 0x79, + 0x71, 0x8c, 0x8d, 0x8e, 0x83, 0x8e, 0x8f, 0x36, + 0x21, 0x2b, 0x23, 0x36, 0x36, 0x5a, 0x2e, 0x26, + 0x22, 0x20, 0x20, 0x20, 0x42, 0x40, 0x38, 0x50, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2c, 0x4c, 0x4f, 0x4f, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x27, 0x2d, 0x33, 0x21, + 0x90, 0x91, 0x92, 0x7a, 0x6f, 0x6e, 0x67, 0x92, + 0x93, 0x6b, 0x8e, 0x94, 0x95, 0x96, 0x49, 0x36, + 0x36, 0x2d, 0x3b, 0x35, 0x36, 0x24, 0x43, 0x32, + 0x28, 0x21, 0x20, 0x20, 0x57, 0x40, 0x44, 0x54, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x34, 0x4d, 0x42, 0x51, 0x38, + 0x20, 0x20, 0x20, 0x22, 0x30, 0x2f, 0x33, 0x21, + 0x5d, 0x97, 0x98, 0x93, 0x86, 0x66, 0x99, 0x87, + 0x7d, 0x7d, 0x99, 0x6a, 0x57, 0x4d, 0x59, 0x23, + 0x36, 0x24, 0x3b, 0x3b, 0x24, 0x36, 0x2e, 0x31, + 0x26, 0x22, 0x20, 0x20, 0x52, 0x44, 0x44, 0x9a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5a, 0x57, 0x57, 0x57, 0x37, + 0x20, 0x20, 0x21, 0x28, 0x33, 0x3c, 0x25, 0x22, + 0x53, 0x42, 0x97, 0x98, 0x99, 0x87, 0x99, 0x6b, + 0x7c, 0x9b, 0x9c, 0x51, 0x4f, 0x3f, 0x40, 0x2c, + 0x36, 0x36, 0x33, 0x5a, 0x21, 0x36, 0x22, 0x43, + 0x33, 0x28, 0x21, 0x20, 0x42, 0x44, 0x37, 0x4f, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x51, 0x42, 0x51, 0x37, + 0x20, 0x20, 0x22, 0x27, 0x2e, 0x2e, 0x36, 0x21, + 0x4e, 0x4d, 0x42, 0x9d, 0x9e, 0x98, 0x98, 0x9f, + 0x97, 0x51, 0x42, 0x4c, 0x39, 0x58, 0x58, 0x47, + 0x21, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x5a, + 0x2e, 0x27, 0x23, 0x20, 0x59, 0x48, 0x38, 0x50, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x42, 0x51, 0x42, 0x3e, + 0x20, 0x22, 0x24, 0x2b, 0x41, 0x28, 0x36, 0x32, + 0x3e, 0x3f, 0x42, 0x42, 0x42, 0x51, 0x51, 0x42, + 0x42, 0x57, 0x40, 0x38, 0x58, 0x58, 0x58, 0x58, + 0x34, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x23, + 0x2f, 0x2b, 0x24, 0x21, 0x57, 0x4f, 0x3e, 0x53, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x47, 0x51, 0x52, 0x38, + 0x21, 0x28, 0x32, 0x43, 0x32, 0x28, 0x21, 0x47, + 0x58, 0x39, 0x48, 0x42, 0x42, 0x42, 0x42, 0x42, + 0x48, 0x3a, 0x37, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x4f, 0x23, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x2a, 0x2f, 0x2a, 0x28, 0x42, 0x4f, 0x44, 0x52, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x5a, 0x57, 0x47, 0x51, 0x37, + 0x23, 0x30, 0x2e, 0x2c, 0x36, 0x21, 0x43, 0x37, + 0x58, 0x58, 0x46, 0x4d, 0x42, 0x42, 0x57, 0x3f, + 0x39, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x34, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x2d, 0x31, 0x27, 0x4f, 0x47, 0x38, 0x50, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x25, 0x57, 0x47, 0x52, 0x38, + 0x27, 0x2c, 0x2d, 0x21, 0x36, 0x28, 0x45, 0x58, + 0x58, 0x58, 0x58, 0x39, 0x44, 0x3a, 0x39, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x52, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x28, 0x43, 0x5a, 0x45, 0x4d, 0x37, 0x9a, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x47, 0x52, 0x59, 0x37, + 0x35, 0x43, 0x28, 0x36, 0x36, 0x4a, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x37, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x3a, 0x28, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x28, 0x41, 0x48, 0x4d, 0x38, 0x54, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x2a, 0x81, 0x5b, 0x51, 0x38, + 0x43, 0x25, 0x36, 0x36, 0x23, 0x57, 0x37, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x37, 0x38, 0x2b, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x30, 0x51, 0x40, 0x3a, 0x56, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x51, 0x47, 0x81, 0x3e, + 0x27, 0x36, 0x36, 0x36, 0x2a, 0x57, 0x39, 0x58, + 0x58, 0x58, 0x58, 0x37, 0x38, 0x38, 0x37, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x37, 0x39, 0x46, + 0x44, 0x3a, 0x3c, 0x21, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x48, 0x59, 0x37, 0x5d, + 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x27, 0x52, 0x4e, 0x5b, 0x44, + 0x36, 0x36, 0x36, 0x21, 0x31, 0x5b, 0x48, 0x3e, + 0x39, 0x37, 0x37, 0x46, 0x44, 0x3a, 0x46, 0x37, + 0x37, 0x37, 0x39, 0x3a, 0x40, 0x48, 0x4f, 0x4f, + 0x4d, 0x4f, 0x47, 0x28, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x4f, 0x81, 0x40, 0x5d, + 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x52, 0x50, 0x56, 0x38, + 0x36, 0x36, 0x36, 0x22, 0x41, 0x47, 0x45, 0x38, + 0x37, 0x58, 0x58, 0x37, 0x3e, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x39, 0x46, 0x44, 0x4c, 0x4f, + 0x57, 0x57, 0x4c, 0x50, 0x21, 0x23, 0x33, 0x23, + 0x36, 0x36, 0x36, 0x36, 0x4d, 0x51, 0x39, 0x3b, + 0x28, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x57, 0x55, 0x55, 0x37, + 0x37, 0x37, 0x38, 0x38, 0x38, 0x37, 0x37, 0x37, + 0x37, 0x37, 0x38, 0x37, 0x37, 0x37, 0x38, 0x37, + 0x37, 0x37, 0x37, 0x39, 0x3e, 0x37, 0x38, 0x38, + 0x38, 0x37, 0x38, 0x38, 0x38, 0x37, 0x38, 0x38, + 0x37, 0x38, 0x38, 0x37, 0x47, 0x42, 0x48, 0x9a, + 0x25, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x5b, 0x81, 0x5d, 0x37, + 0x38, 0x37, 0x37, 0x38, 0x37, 0x38, 0x38, 0x37, + 0x38, 0x37, 0x37, 0x37, 0x37, 0x37, 0x38, 0x37, + 0x38, 0x37, 0x38, 0x37, 0x37, 0x38, 0x37, 0x37, + 0x38, 0x37, 0x37, 0x37, 0x38, 0x38, 0x37, 0x3e, + 0x37, 0x38, 0x38, 0x37, 0x57, 0x57, 0x48, 0x5d, + 0x2a, 0x23, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x33, 0x52, 0x59, 0x50, 0x5b, + 0x54, 0x5b, 0x5b, 0x54, 0x81, 0x5b, 0x55, 0x55, + 0x52, 0x54, 0x81, 0x81, 0x81, 0x50, 0x52, 0x54, + 0x5b, 0x59, 0x52, 0x52, 0x5b, 0x52, 0x5b, 0x81, + 0x5b, 0x47, 0x51, 0x52, 0x57, 0x57, 0x57, 0x57, + 0x51, 0x57, 0x52, 0x57, 0x48, 0x57, 0x4c, 0x3b, + 0x35, 0x24, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x21, 0x33, 0x54, 0x54, 0x5b, 0x50, + 0x54, 0x50, 0x54, 0x81, 0x50, 0x59, 0x54, 0x50, + 0x5b, 0x81, 0x81, 0x59, 0x81, 0x59, 0x59, 0x59, + 0x59, 0x47, 0x81, 0x51, 0x47, 0x51, 0x59, 0x81, + 0x81, 0x51, 0x47, 0x50, 0x59, 0x59, 0x59, 0x47, + 0x47, 0x47, 0x52, 0x57, 0x52, 0x47, 0x59, 0x26, + 0x2d, 0x26, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x22, 0x27, 0x55, 0x50, 0x55, 0x50, + 0x55, 0x81, 0x54, 0x52, 0x52, 0x81, 0x5b, 0x50, + 0x5b, 0x52, 0x52, 0x51, 0x57, 0x52, 0x52, 0x52, + 0x54, 0x51, 0x81, 0x52, 0x59, 0x52, 0x5b, 0x5b, + 0x59, 0x5b, 0x51, 0x52, 0x52, 0x4f, 0x5b, 0x51, + 0x52, 0x47, 0x59, 0x42, 0x47, 0x81, 0x5c, 0x21, + 0x2f, 0x32, 0x23, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x23, 0x33, 0x81, 0x54, 0x5c, 0x54, + 0x50, 0x5b, 0x50, 0x50, 0x81, 0x5b, 0x5c, 0x5b, + 0x50, 0x59, 0x81, 0x81, 0x81, 0x81, 0x47, 0x50, + 0x50, 0x59, 0x5b, 0x50, 0x52, 0x81, 0x50, 0x59, + 0x5b, 0x81, 0x59, 0x81, 0x59, 0x47, 0x59, 0x47, + 0x59, 0x52, 0x51, 0x48, 0x51, 0x52, 0x5d, 0x36, + 0x2e, 0x35, 0x24, 0x21, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x22, 0x25, 0x2a, 0x50, 0x4e, 0x5c, 0x54, + 0x5c, 0x5b, 0x5b, 0x5b, 0x59, 0x5b, 0x50, 0x54, + 0x5b, 0x54, 0x5b, 0x5b, 0x54, 0x54, 0x5b, 0x5b, + 0x5b, 0x81, 0x55, 0x81, 0x55, 0x54, 0x5b, 0x5c, + 0x5b, 0x4e, 0x51, 0x5b, 0x5b, 0x57, 0x51, 0x4f, + 0x4d, 0x47, 0x4f, 0x4c, 0x51, 0x52, 0x4b, 0x36, + 0x2a, 0x2e, 0x26, 0x22, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x21, 0x23, 0x2a, 0x2a, 0x50, 0x9a, 0x54, 0x5c, + 0x55, 0x50, 0x81, 0x59, 0x54, 0x50, 0x54, 0x50, + 0x50, 0x50, 0x81, 0x81, 0x50, 0x50, 0x50, 0x81, + 0x81, 0x5b, 0x47, 0x51, 0x81, 0x59, 0x81, 0x55, + 0x59, 0x59, 0x81, 0x42, 0x27, 0x36, 0x28, 0x36, + 0x27, 0x36, 0x28, 0x2d, 0x47, 0x52, 0x2d, 0x36, + 0x22, 0x2f, 0x30, 0x22, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x22, 0x25, 0x2c, 0x26, 0x53, 0x4e, 0x55, 0x5c, + 0x55, 0x55, 0x55, 0x81, 0x54, 0x50, 0x54, 0x55, + 0x5b, 0x55, 0x52, 0x54, 0x54, 0x5b, 0x54, 0x55, + 0x36, 0x36, 0x27, 0x2a, 0x2a, 0x27, 0xa0, 0x27, + 0x2a, 0x2a, 0x2c, 0x27, 0x5d, 0x22, 0x22, 0x28, + 0x28, 0x22, 0x25, 0x59, 0x51, 0x53, 0x27, 0x36, + 0x21, 0x2f, 0x32, 0x23, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x28, 0x32, 0x2f, 0x21, 0x4a, 0x54, 0x5c, 0x4e, + 0x5c, 0x81, 0x5c, 0x54, 0x5c, 0x54, 0x5c, 0x50, + 0x81, 0x50, 0x50, 0x81, 0x81, 0x5c, 0x50, 0x81, + 0x5d, 0x28, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0xa0, 0x25, + 0x28, 0x21, 0x28, 0x81, 0x59, 0x4a, 0x28, 0x36, + 0x36, 0x34, 0x2b, 0x28, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x25, 0x2c, 0x5a, 0x36, 0x32, 0x9a, 0x81, 0x4e, + 0x55, 0x5b, 0x50, 0x54, 0x5c, 0x54, 0x55, 0x55, + 0x54, 0x4e, 0x54, 0x55, 0x5b, 0x4e, 0x55, 0x5b, + 0x3b, 0x4e, 0x4a, 0x3b, 0x4a, 0x4e, 0x3b, 0x5d, + 0x56, 0x3b, 0x56, 0x5c, 0x50, 0x3a, 0x3e, 0x40, + 0x4f, 0x57, 0x81, 0x4e, 0x4e, 0x27, 0x36, 0x36, + 0x36, 0x2c, 0x35, 0x24, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x30, 0x2d, 0x21, 0x36, 0x23, 0x3d, 0x53, 0x43, + 0x4a, 0x5d, 0x55, 0x5c, 0x4e, 0x5c, 0x50, 0x5c, + 0x81, 0x50, 0x50, 0x81, 0x50, 0x50, 0x50, 0x50, + 0x4e, 0x5b, 0x54, 0x5b, 0x51, 0x59, 0x5b, 0x5b, + 0x54, 0x5b, 0x5b, 0x52, 0x51, 0x42, 0x5b, 0x5c, + 0x5c, 0x53, 0x5b, 0x3b, 0x28, 0x36, 0x36, 0x36, + 0x36, 0x2c, 0x5a, 0x24, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x28, + 0x33, 0x2e, 0x36, 0x36, 0x23, 0x41, 0x56, 0x2e, + 0x33, 0x50, 0x55, 0x81, 0x54, 0x5b, 0x54, 0x52, + 0x5b, 0x55, 0x54, 0x55, 0x55, 0x55, 0x5b, 0x9a, + 0x5c, 0x81, 0x81, 0x81, 0x52, 0x59, 0x50, 0x59, + 0x59, 0x59, 0x59, 0x50, 0x81, 0x81, 0x5b, 0x5b, + 0x5b, 0x54, 0x34, 0x22, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x2c, 0x5a, 0x24, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x28, + 0x2b, 0x5a, 0x36, 0x36, 0x36, 0x27, 0x3d, 0x28, + 0xa0, 0x5d, 0x5c, 0x55, 0x50, 0x50, 0x5c, 0x81, + 0x81, 0x50, 0x50, 0x47, 0x50, 0x5c, 0x5c, 0x52, + 0x54, 0x5b, 0x5b, 0x5b, 0x59, 0x52, 0x5b, 0x52, + 0x5b, 0x52, 0x52, 0x54, 0x59, 0x5b, 0x81, 0x81, + 0x9a, 0x33, 0x26, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x2c, 0x35, 0x24, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x24, + 0x35, 0x5a, 0x36, 0x36, 0x36, 0x36, 0x30, 0x4e, + 0x52, 0x54, 0x56, 0x55, 0x55, 0x55, 0x55, 0x5b, + 0x55, 0x55, 0x54, 0x5b, 0x54, 0x55, 0x50, 0x59, + 0x5c, 0x81, 0x59, 0x52, 0x59, 0x59, 0x81, 0x59, + 0x81, 0x81, 0x81, 0x81, 0x5b, 0x5b, 0x81, 0x53, + 0x2a, 0x27, 0xa1, 0x24, 0x25, 0x28, 0x21, 0x36, + 0x36, 0x34, 0x2b, 0x28, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x25, + 0x5a, 0x4b, 0xa2, 0x8d, 0x8a, 0x5f, 0x21, 0x2d, + 0x55, 0x5c, 0x9a, 0x5c, 0x5c, 0x5c, 0x50, 0x9a, + 0x5c, 0x9a, 0x50, 0x5c, 0x5c, 0x5c, 0x54, 0x5b, + 0x55, 0x5b, 0x54, 0x81, 0x5b, 0x5b, 0x5b, 0x54, + 0x54, 0x5b, 0x5b, 0x5b, 0x5b, 0x54, 0x54, 0x30, + 0x23, 0x36, 0x36, 0x36, 0x21, 0x28, 0x2c, 0x30, + 0x21, 0x41, 0x33, 0x28, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x21, 0x22, 0x22, 0x28, 0x30, + 0x2d, 0xa3, 0x83, 0xa4, 0xa5, 0xa5, 0x88, 0x22, + 0x3b, 0x47, 0x53, 0x55, 0x55, 0x53, 0x54, 0x5b, + 0x52, 0x53, 0x54, 0x54, 0x54, 0x50, 0x5c, 0x59, + 0x56, 0x59, 0x5b, 0x50, 0x50, 0x59, 0x9a, 0x59, + 0x5c, 0x81, 0x50, 0x59, 0x9a, 0x52, 0x68, 0x69, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x30, 0x32, + 0x25, 0x4b, 0x2b, 0x28, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x23, 0x24, 0x26, 0x30, 0x33, 0x31, + 0x4b, 0x9b, 0x63, 0xa4, 0xa5, 0xa5, 0xa5, 0x62, + 0x21, 0x2e, 0x44, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x3a, 0x37, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0xa6, 0xa7, 0x71, 0x6e, 0xa8, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x21, 0x26, 0x25, + 0x8c, 0xa9, 0x2c, 0x25, 0x21, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x21, 0x28, 0x30, 0x35, 0x2d, 0x2f, 0x3c, 0x3d, + 0x68, 0x8e, 0xaa, 0xab, 0xa5, 0xa5, 0xa5, 0x8b, + 0x8f, 0x36, 0x32, 0x4d, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x3e, 0x38, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0xac, 0xa4, 0xa7, 0xad, 0xa0, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x21, 0x5f, + 0x7f, 0x6e, 0x34, 0x27, 0x22, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x23, 0x30, 0x31, 0xae, 0x9b, 0x87, 0x99, 0x99, + 0x94, 0x63, 0xa4, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0x65, 0xaf, 0x36, 0x24, 0x50, 0x37, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x37, 0x38, 0xac, 0x6c, 0x64, 0x94, 0xaf, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x7b, 0x65, + 0x8b, 0x64, 0xb0, 0x2a, 0x23, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x24, 0x2b, 0xae, 0x94, 0x63, 0x7e, 0x63, 0x63, + 0x84, 0xa4, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa7, 0x66, 0x22, 0x36, 0x21, 0x3b, 0x38, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x3a, 0x4d, 0xb1, 0x84, 0x84, 0x8e, 0x89, + 0xa1, 0x36, 0x36, 0x36, 0x21, 0xb2, 0x87, 0x84, + 0x6c, 0x6c, 0xb3, 0x35, 0x24, 0x21, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x31, 0xb4, 0x63, 0x6c, 0xa4, 0xa4, 0xab, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0x6e, 0xb5, 0x36, 0x36, 0x36, 0x2c, 0x3f, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x48, 0x4d, 0xb6, 0x7e, 0x7e, 0x83, 0x6b, + 0xb7, 0xb8, 0x8f, 0xb8, 0xb9, 0x99, 0x63, 0x6c, + 0xa4, 0xa4, 0xba, 0x2d, 0x27, 0x23, 0x21, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x26, 0x2d, 0x9b, 0x63, 0x6c, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa7, 0x8c, 0xa0, 0x36, 0x36, 0x36, 0x30, + 0x45, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x37, 0x48, 0x4d, 0xbb, 0x63, 0x84, 0xbc, 0x8e, + 0x87, 0x99, 0x6b, 0x99, 0x8e, 0x63, 0xa4, 0xa5, + 0xa5, 0xab, 0x65, 0xb3, 0x5a, 0x26, 0x23, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x2d, 0xbd, 0xbc, 0x6c, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa7, 0x91, 0x36, 0x36, 0x36, 0x36, + 0x2d, 0x37, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x37, 0x40, 0x4d, 0xbe, 0x75, 0x84, 0xaa, 0xbc, + 0x83, 0x94, 0x94, 0x83, 0x63, 0x6c, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa4, 0xbf, 0x3c, 0x35, 0x26, 0x23, + 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x2e, 0xbd, 0x83, 0x84, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa7, 0x7a, 0x7b, 0x36, 0x36, 0x36, + 0x24, 0x46, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x44, 0x51, 0xb4, 0x83, 0x84, 0x6c, 0x84, + 0x7e, 0x63, 0x63, 0x7e, 0x84, 0xa4, 0xa5, 0xa5, + 0xa5, 0xa5, 0xab, 0x6c, 0xbf, 0x4b, 0x2c, 0x27, + 0x23, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x25, 0x31, 0xc0, 0x94, 0x84, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa7, 0x92, 0xa1, 0x36, 0x36, + 0x32, 0x39, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x3f, 0x2f, 0x98, 0x83, 0x84, 0xa4, 0xab, + 0xa4, 0x6c, 0x6c, 0xa4, 0xa4, 0xab, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa4, 0x65, 0xc1, 0x2c, + 0x26, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x25, 0x31, 0xc0, 0x8e, 0x84, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0x6e, 0x5f, 0x27, 0x4b, + 0x3f, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x38, 0x34, 0xa1, 0xb7, 0x83, 0x84, 0xa4, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa4, 0xc0, + 0x32, 0x28, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x22, + 0x26, 0x2d, 0xc0, 0x8e, 0x84, 0xab, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa7, 0x67, 0x9c, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x45, + 0x35, 0x36, 0xa0, 0xb9, 0x83, 0x84, 0xab, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xab, 0xa4, 0xbe, + 0x2b, 0x24, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x30, 0x2f, 0xb4, 0x94, 0x84, 0xab, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0x6e, 0x92, 0x40, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x58, 0x37, 0x5b, 0x25, + 0x36, 0x36, 0x69, 0xb7, 0x75, 0x6c, 0xab, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xab, 0x84, 0xbc, 0xc1, + 0x32, 0x28, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x28, + 0x33, 0xc2, 0x6b, 0xbc, 0xa4, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa4, 0x7a, 0x8a, 0xc3, + 0x44, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, 0x58, + 0x58, 0x58, 0x58, 0x58, 0x4d, 0x2c, 0x36, 0x36, + 0x36, 0x36, 0xc4, 0x98, 0x75, 0x6c, 0xab, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa4, 0xaa, 0x94, 0xae, 0x2c, + 0x26, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x24, + 0x35, 0x9e, 0x7d, 0xaa, 0xa4, 0xab, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xab, 0x84, 0x8a, 0xb7, + 0x7b, 0x53, 0x45, 0x37, 0x58, 0x58, 0x58, 0x37, + 0x38, 0x4c, 0x4e, 0x2c, 0x21, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x7b, 0xb7, 0x83, 0x84, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0x6c, 0x7e, 0x83, 0x9b, 0xb3, 0x31, 0x30, + 0x28, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x24, + 0x5a, 0x9f, 0x7d, 0xbc, 0x84, 0x6c, 0xa4, 0xa4, + 0xab, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0x84, 0x83, 0xc5, + 0xc6, 0x36, 0x21, 0x26, 0x2b, 0x5a, 0x33, 0x30, + 0x23, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x21, 0xc6, 0xb9, 0x94, 0x84, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xa5, 0xa4, 0x6c, 0x6c, + 0x7e, 0x8e, 0xbd, 0xb3, 0x34, 0x2b, 0x27, 0x28, + 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x28, + 0x33, 0xc7, 0x6b, 0x87, 0x83, 0x75, 0xbc, 0x63, + 0x7e, 0x84, 0x6c, 0x6c, 0xa4, 0xab, 0xa5, 0xa5, + 0xa5, 0xa5, 0xa5, 0xa5, 0xab, 0x7e, 0x8e, 0xb7, + 0x82, 0x22, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x21, 0xc8, 0xb9, 0x7d, 0x7e, 0xa4, 0xa5, + 0xa5, 0xa5, 0xab, 0xa4, 0x6c, 0x7e, 0xbc, 0x94, + 0xb4, 0xb3, 0x2f, 0x35, 0x30, 0x24, 0x22, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x23, + 0x27, 0x31, 0xc9, 0xc7, 0xb9, 0x7c, 0x6b, 0x99, + 0x87, 0x7d, 0x94, 0x75, 0xbc, 0x7e, 0x6c, 0xa4, + 0xab, 0xab, 0xab, 0xab, 0x6c, 0x83, 0x8d, 0xca, + 0x82, 0xa1, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, 0x36, + 0x36, 0x21, 0xc6, 0xca, 0x6b, 0x75, 0x84, 0x6c, + 0xab, 0xa4, 0x6c, 0x84, 0xbc, 0x7d, 0x6b, 0x9e, + 0x41, 0x5a, 0x2a, 0x24, 0x23, 0x21, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x28, 0x27, 0x35, 0x2d, 0x49, 0xb3, 0xc3, 0x98, + 0xb7, 0xb9, 0xc5, 0x7c, 0x8d, 0x99, 0x8e, 0x75, + 0x63, 0x84, 0x84, 0xaa, 0x75, 0x99, 0xb7, 0xcb, + 0xc8, 0x22, 0x36, 0x36, 0x28, 0x30, 0x30, 0x30, + 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x25, 0x36, + 0x36, 0x21, 0xb2, 0x89, 0xc5, 0x87, 0x75, 0x7e, + 0xaa, 0x7e, 0x75, 0x8e, 0x6b, 0xb7, 0xb3, 0x34, + 0x33, 0x26, 0x23, 0x21, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x21, 0x23, 0x24, 0x27, 0x2a, 0x35, 0x2e, 0x2f, + 0x49, 0xcc, 0xcd, 0x74, 0x89, 0xca, 0xb7, 0x7c, + 0x8d, 0x99, 0x7d, 0x87, 0x7c, 0x98, 0xcb, 0x82, + 0xc4, 0x2b, 0x4a, 0x49, 0x2f, 0x34, 0x2d, 0x2d, + 0x2d, 0x2d, 0x2d, 0x2d, 0x2d, 0x34, 0x2f, 0x41, + 0x4b, 0x3c, 0xce, 0xcf, 0x98, 0x7c, 0x6b, 0x87, + 0x7d, 0x87, 0x6b, 0xc5, 0x91, 0xc2, 0x31, 0x2a, + 0x24, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x21, 0x22, 0x23, 0x24, 0x26, 0x30, + 0x33, 0x5a, 0x2e, 0x43, 0x49, 0xb0, 0x74, 0xcf, + 0x89, 0xca, 0xca, 0xca, 0xd0, 0xcf, 0xb5, 0xd1, + 0x49, 0x34, 0x35, 0x32, 0x30, 0x27, 0x27, 0x27, + 0x27, 0x27, 0x27, 0x27, 0x27, 0x27, 0x30, 0x2a, + 0x2b, 0x34, 0xd2, 0xc8, 0xd3, 0x98, 0xb9, 0xc5, + 0xc5, 0xb9, 0xca, 0x74, 0x49, 0x5a, 0x27, 0x28, + 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, 0x21, 0x22, + 0x28, 0x24, 0x26, 0x2a, 0x33, 0x2c, 0x2f, 0x49, + 0xd4, 0xb5, 0x82, 0x82, 0x82, 0xc8, 0xd5, 0x43, + 0x5a, 0x30, 0x24, 0x23, 0x22, 0x22, 0x22, 0x22, + 0x22, 0x22, 0x21, 0x22, 0x22, 0x22, 0x22, 0x23, + 0x24, 0x2a, 0x31, 0xd6, 0xc6, 0x82, 0xcf, 0x89, + 0xd3, 0xb8, 0xd7, 0x2f, 0x35, 0x26, 0x23, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x22, 0x23, 0x28, 0x25, 0x30, 0x2b, + 0x31, 0x2f, 0xd2, 0xd6, 0xd6, 0x2f, 0x2e, 0x33, + 0x26, 0x23, 0x21, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x21, 0x28, 0x27, 0x35, 0x34, 0xd6, 0xd6, 0xd6, + 0xd8, 0xd2, 0x2e, 0x33, 0x25, 0x23, 0x21, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x21, 0x21, 0x23, 0x28, + 0x26, 0x30, 0x32, 0x2b, 0x33, 0x2a, 0x26, 0x28, + 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x21, 0x23, 0x25, 0x30, 0x33, 0x35, 0x35, + 0x2b, 0x2a, 0x26, 0x28, 0x22, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x21, + 0x21, 0x22, 0x23, 0x28, 0x28, 0x23, 0x22, 0x21, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x21, 0x23, 0x28, 0x24, 0x24, + 0x28, 0x23, 0x22, 0x21, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, }; -#endif - -#else +#endif /* !INCLUDE_LINUX_LOGO_DATA */ -#define LINUX_LOGO_COLORS 214 +#endif /* CONFIG_MAC */ -#endif - -#ifdef INCLUDE_LINUX_LOGO_DATA - -#define INCLUDE_LINUX_LOGOBW -#define INCLUDE_LINUX_LOGO16 #include <linux/linux_logo.h> -#else - -/* prototypes only */ -extern unsigned char linux_logo_red[]; -extern unsigned char linux_logo_green[]; -extern unsigned char linux_logo_blue[]; -extern unsigned char linux_logo[]; -extern unsigned char linux_logo_bw[]; -extern unsigned char linux_logo16[]; - -#endif diff --git a/include/asm-ppc/hardirq.h b/include/asm-ppc/hardirq.h index 23b2ae64a9bb..152dc842d2cd 100644 --- a/include/asm-ppc/hardirq.h +++ b/include/asm-ppc/hardirq.h @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.hardirq.h 1.7 05/17/01 18:14:24 cort + * BK Id: SCCS/s.hardirq.h 1.10 06/09/01 22:16:38 paulus */ #ifdef __KERNEL__ #ifndef __ASM_HARDIRQ_H @@ -15,8 +15,7 @@ * for uniformity. */ typedef struct { - unsigned int __softirq_active; - unsigned int __softirq_mask; + unsigned long __softirq_pending; /* set_bit is used on this */ unsigned int __local_irq_count; unsigned int __local_bh_count; unsigned int __syscall_count; diff --git a/include/asm-ppc/softirq.h b/include/asm-ppc/softirq.h index d4ec98ae741a..9280f0baa923 100644 --- a/include/asm-ppc/softirq.h +++ b/include/asm-ppc/softirq.h @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.softirq.h 1.8 06/06/01 22:33:09 paulus + * BK Id: SCCS/s.softirq.h 1.10 06/09/01 22:16:38 paulus */ #ifdef __KERNEL__ #ifndef __ASM_SOFTIRQ_H @@ -29,6 +29,9 @@ do { \ } \ } while (0) +#define __cpu_raise_softirq(cpu, nr) set_bit((nr), &softirq_pending(cpu)); +#define raise_softirq(nr) __cpu_raise_softirq(smp_processor_id(), (nr)) + #define in_softirq() (local_bh_count(smp_processor_id()) != 0) #endif /* __ASM_SOFTIRQ_H */ diff --git a/include/asm-sparc/hardirq.h b/include/asm-sparc/hardirq.h index 00205d6ef017..ac828721c7e0 100644 --- a/include/asm-sparc/hardirq.h +++ b/include/asm-sparc/hardirq.h @@ -14,8 +14,8 @@ /* entry.S is sensitive to the offsets of these fields */ typedef struct { - unsigned int __softirq_active; - unsigned int __softirq_mask; + unsigned int __softirq_pending; + unsigned int __unused_1; #ifndef CONFIG_SMP unsigned int __local_irq_count; #else diff --git a/include/asm-sparc/linux_logo.h b/include/asm-sparc/linux_logo.h index 72c9c07ebd5d..88b42adaab00 100644 --- a/include/asm-sparc/linux_logo.h +++ b/include/asm-sparc/linux_logo.h @@ -1,4 +1,4 @@ -/* $Id: linux_logo.h,v 1.6 1998/08/20 04:44:39 ecd Exp $ +/* $Id: linux_logo.h,v 1.7 2001/06/08 23:01:58 davem Exp $ * include/asm-sparc/linux_logo.h: This is a linux logo * to be displayed on boot. * diff --git a/include/asm-sparc/softirq.h b/include/asm-sparc/softirq.h index 92dde254b189..f63dea3a743c 100644 --- a/include/asm-sparc/softirq.h +++ b/include/asm-sparc/softirq.h @@ -14,8 +14,21 @@ #include <asm/hardirq.h> #define local_bh_disable() (local_bh_count(smp_processor_id())++) -#define local_bh_enable() (local_bh_count(smp_processor_id())--) - +#define __local_bh_enable() (local_bh_count(smp_processor_id())--) +#define local_bh_enable() \ +do { if (!--local_bh_count(smp_processor_id()) && \ + softirq_pending(smp_processor_id())) { \ + do_softirq(); \ + __sti(); \ + } \ +} while (0) +#define __cpu_raise_softirq(cpu, nr) (softirq_pending(cpu) |= (1<<nr)) +#define raise_softirq(nr) \ +do { unsigned long flags; \ + local_irq_save(flags); \ + __cpu_raise_softirq(smp_processor_id(), nr); \ + local_irq_restore(flags); \ +} while (0) #define in_softirq() (local_bh_count(smp_processor_id()) != 0) #endif /* __SPARC_SOFTIRQ_H */ diff --git a/include/asm-sparc64/hardirq.h b/include/asm-sparc64/hardirq.h index 02d05c96d1fd..6693f13f8cba 100644 --- a/include/asm-sparc64/hardirq.h +++ b/include/asm-sparc64/hardirq.h @@ -13,8 +13,8 @@ /* entry.S is sensitive to the offsets of these fields */ typedef struct { - unsigned int __softirq_active; - unsigned int __softirq_mask; + unsigned int __softirq_pending; + unsigned int __unused_1; #ifndef CONFIG_SMP unsigned int __local_irq_count; #else diff --git a/include/asm-sparc64/linux_logo.h b/include/asm-sparc64/linux_logo.h index eb6fbeb8fa58..daaa9665f1e3 100644 --- a/include/asm-sparc64/linux_logo.h +++ b/include/asm-sparc64/linux_logo.h @@ -1,4 +1,4 @@ -/* $Id: linux_logo.h,v 1.6 1998/07/30 16:30:48 jj Exp $ +/* $Id: linux_logo.h,v 1.7 2001/06/08 23:01:58 davem Exp $ * include/asm-sparc64/linux_logo.h: This is a linux logo * to be displayed on boot. * diff --git a/include/asm-sparc64/softirq.h b/include/asm-sparc64/softirq.h index cce84e900890..eeb8cfc64bd4 100644 --- a/include/asm-sparc64/softirq.h +++ b/include/asm-sparc64/softirq.h @@ -11,8 +11,21 @@ #include <asm/system.h> /* for membar() */ #define local_bh_disable() (local_bh_count(smp_processor_id())++) -#define local_bh_enable() (local_bh_count(smp_processor_id())--) - +#define __local_bh_enable() (local_bh_count(smp_processor_id())--) +#define local_bh_enable() \ +do { if (!--local_bh_count(smp_processor_id()) && \ + softirq_pending(smp_processor_id())) { \ + do_softirq(); \ + __sti(); \ + } \ +} while (0) +#define __cpu_raise_softirq(cpu, nr) (softirq_pending(cpu) |= (1<<nr)) +#define raise_softirq(nr) \ +do { unsigned long flags; \ + local_irq_save(flags); \ + __cpu_raise_softirq(smp_processor_id(), nr); \ + local_irq_restore(flags); \ +} while (0) #define in_softirq() (local_bh_count(smp_processor_id()) != 0) #endif /* !(__SPARC64_SOFTIRQ_H) */ diff --git a/include/asm-sparc64/string.h b/include/asm-sparc64/string.h index 330b9c482043..5aa023f91395 100644 --- a/include/asm-sparc64/string.h +++ b/include/asm-sparc64/string.h @@ -1,4 +1,4 @@ -/* $Id: string.h,v 1.18 2000/10/30 21:01:41 davem Exp $ +/* $Id: string.h,v 1.19 2001/06/05 20:56:33 davem Exp $ * string.h: External definitions for optimized assembly string * routines for the Linux Kernel. * @@ -105,6 +105,7 @@ static inline void *__constant_memset(void *s, int c, __kernel_size_t count) }) #define __HAVE_ARCH_MEMCMP +extern int memcmp(const void *,const void *,__kernel_size_t); /* Now the str*() stuff... */ #define __HAVE_ARCH_STRLEN diff --git a/include/linux/coda_cache.h b/include/linux/coda_cache.h index 95b593d14eec..c5087185d378 100644 --- a/include/linux/coda_cache.h +++ b/include/linux/coda_cache.h @@ -19,4 +19,4 @@ int coda_cache_check(struct inode *inode, int mask); /* for downcalls and attributes and lookups */ void coda_flag_inode_children(struct inode *inode, int flag); -#endif _CFSNC_HEADER_ +#endif /* _CFSNC_HEADER_ */ diff --git a/include/linux/devfs_fs_kernel.h b/include/linux/devfs_fs_kernel.h index 268ea6352663..53d5de682e47 100644 --- a/include/linux/devfs_fs_kernel.h +++ b/include/linux/devfs_fs_kernel.h @@ -163,7 +163,7 @@ static inline int devfs_set_file_size (devfs_handle_t de, unsigned long size) { return -ENOSYS; } -static inline void *devfs_get_info (devfs_handle_t de, unsigned long size) +static inline void *devfs_get_info (devfs_handle_t de) { return NULL; } diff --git a/include/linux/fs.h b/include/linux/fs.h index 1f4321848a11..29deb173f565 100644 --- a/include/linux/fs.h +++ b/include/linux/fs.h @@ -842,6 +842,31 @@ struct super_operations { int (*remount_fs) (struct super_block *, int *, char *); void (*clear_inode) (struct inode *); void (*umount_begin) (struct super_block *); + + /* Following are for knfsd to interact with "interesting" filesystems + * Currently just reiserfs, but possibly FAT and others later + * + * fh_to_dentry is given a filehandle fragement with length, and a type flag + * and must return a dentry for the referenced object or, if "parent" is + * set, a dentry for the parent of the object. + * If a dentry cannot be found, a "root" dentry should be created and + * flaged as DCACHE_NFSD_DISCONNECTED. nfsd_iget is an example implementation. + * + * dentry_to_fh is given a dentry and must generate the filesys specific + * part of the file handle. Available length is passed in *lenp and used + * length should be returned therein. + * If need_parent is set, then dentry_to_fh should encode sufficient information + * to find the (current) parent. + * dentry_to_fh should return a 1byte "type" which will be passed back in + * the fhtype arguement to fh_to_dentry. Type of 0 is reserved. + * If filesystem was exportable before the introduction of fh_to_dentry, + * types 1 and 2 should be used is that same way as the generic code. + * Type 255 means error. + * + * Lengths are in units of 4bytes, not bytes. + */ + struct dentry * (*fh_to_dentry)(struct super_block *sb, __u32 *fh, int len, int fhtype, int parent); + int (*dentry_to_fh)(struct dentry *, __u32 *fh, int *lenp, int need_parent); }; /* Inode state bits.. */ @@ -1319,7 +1344,6 @@ extern int dcache_readdir(struct file *, void *, filldir_t); extern struct file_system_type *get_fs_type(const char *name); extern struct super_block *get_super(kdev_t); -extern void put_super(kdev_t); static inline int is_mounted(kdev_t dev) { struct super_block *sb = get_super(dev); diff --git a/include/linux/kernel.h b/include/linux/kernel.h index 67e6f0e25e53..c915687b8b65 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h @@ -125,6 +125,7 @@ struct sysinfo { unsigned long totalswap; /* Total swap space size */ unsigned long freeswap; /* swap space still available */ unsigned short procs; /* Number of current processes */ + unsigned short pad; /* explicit padding for m68k */ unsigned long totalhigh; /* Total high memory size */ unsigned long freehigh; /* Available high memory size */ unsigned int mem_unit; /* Memory unit size in bytes */ diff --git a/include/linux/mtd/cfi.h b/include/linux/mtd/cfi.h index 4ce69eee899a..bda9f0ae74b6 100644 --- a/include/linux/mtd/cfi.h +++ b/include/linux/mtd/cfi.h @@ -1,14 +1,160 @@ /* Common Flash Interface structures * See http://support.intel.com/design/flash/technote/index.htm - * $Id: cfi.h,v 1.6 2000/07/03 13:29:16 dwmw2 Exp $ + * $Id: cfi.h,v 1.21 2001/06/03 01:32:57 nico Exp $ */ #ifndef __MTD_CFI_H__ #define __MTD_CFI_H__ +#include <linux/config.h> +#include <linux/delay.h> #include <linux/types.h> #include <linux/mtd/flashchip.h> +#include <linux/mtd/cfi_endian.h> + +/* + * You can optimize the code size and performance by defining only + * the geometry(ies) available on your hardware. + * CFIDEV_INTERLEAVE_n, where represents the interleave (number of chips to fill the bus width) + * CFIDEV_BUSWIDTH_n, where n is the bus width in bytes (1, 2 or 4 bytes) + * + * By default, all (known) geometries are supported. + */ + +#ifndef CONFIG_MTD_CFI_GEOMETRY + +#define CFIDEV_INTERLEAVE_1 (1) +#define CFIDEV_INTERLEAVE_2 (2) +#define CFIDEV_INTERLEAVE_4 (4) + +#define CFIDEV_BUSWIDTH_1 (1) +#define CFIDEV_BUSWIDTH_2 (2) +#define CFIDEV_BUSWIDTH_4 (4) + +#else + +#ifdef CONFIG_MTD_CFI_I1 +#define CFIDEV_INTERLEAVE_1 (1) +#endif +#ifdef CONFIG_MTD_CFI_I2 +#define CFIDEV_INTERLEAVE_2 (2) +#endif +#ifdef CONFIG_MTD_CFI_I4 +#define CFIDEV_INTERLEAVE_4 (4) +#endif + +#ifdef CONFIG_MTD_CFI_B1 +#define CFIDEV_BUSWIDTH_1 (1) +#endif +#ifdef CONFIG_MTD_CFI_B2 +#define CFIDEV_BUSWIDTH_2 (2) +#endif +#ifdef CONFIG_MTD_CFI_B4 +#define CFIDEV_BUSWIDTH_4 (4) +#endif + +#endif + +/* + * The following macros are used to select the code to execute: + * cfi_buswidth_is_*() + * cfi_interleave_is_*() + * [where * is either 1, 2 or 4] + * Those macros should be used with 'if' statements. If only one of few + * geometry arrangements are selected, they expand to constants thus allowing + * the compiler (most of them being 0) to optimize away all the unneeded code, + * while still validating the syntax (which is not possible with embedded + * #if ... #endif constructs). + */ + +#ifdef CFIDEV_INTERLEAVE_1 +# ifdef CFIDEV_INTERLEAVE +# undef CFIDEV_INTERLEAVE +# define CFIDEV_INTERLEAVE (cfi->interleave) +# else +# define CFIDEV_INTERLEAVE CFIDEV_INTERLEAVE_1 +# endif +# define cfi_interleave_is_1() (CFIDEV_INTERLEAVE == CFIDEV_INTERLEAVE_1) +#else +# define cfi_interleave_is_1() (0) +#endif + +#ifdef CFIDEV_INTERLEAVE_2 +# ifdef CFIDEV_INTERLEAVE +# undef CFIDEV_INTERLEAVE +# define CFIDEV_INTERLEAVE (cfi->interleave) +# else +# define CFIDEV_INTERLEAVE CFIDEV_INTERLEAVE_2 +# endif +# define cfi_interleave_is_2() (CFIDEV_INTERLEAVE == CFIDEV_INTERLEAVE_2) +#else +# define cfi_interleave_is_2() (0) +#endif + +#ifdef CFIDEV_INTERLEAVE_4 +# ifdef CFIDEV_INTERLEAVE +# undef CFIDEV_INTERLEAVE +# define CFIDEV_INTERLEAVE (cfi->interleave) +# else +# define CFIDEV_INTERLEAVE CFIDEV_INTERLEAVE_4 +# endif +# define cfi_interleave_is_4() (CFIDEV_INTERLEAVE == CFIDEV_INTERLEAVE_4) +#else +# define cfi_interleave_is_4() (0) +#endif + +#ifndef CFIDEV_INTERLEAVE +#error You must define at least one interleave to support! +#endif + +#ifdef CFIDEV_BUSWIDTH_1 +# ifdef CFIDEV_BUSWIDTH +# undef CFIDEV_BUSWIDTH +# define CFIDEV_BUSWIDTH (map->buswidth) +# else +# define CFIDEV_BUSWIDTH CFIDEV_BUSWIDTH_1 +# endif +# define cfi_buswidth_is_1() (CFIDEV_BUSWIDTH == CFIDEV_BUSWIDTH_1) +#else +# define cfi_buswidth_is_1() (0) +#endif + +#ifdef CFIDEV_BUSWIDTH_2 +# ifdef CFIDEV_BUSWIDTH +# undef CFIDEV_BUSWIDTH +# define CFIDEV_BUSWIDTH (map->buswidth) +# else +# define CFIDEV_BUSWIDTH CFIDEV_BUSWIDTH_2 +# endif +# define cfi_buswidth_is_2() (CFIDEV_BUSWIDTH == CFIDEV_BUSWIDTH_2) +#else +# define cfi_buswidth_is_2() (0) +#endif + +#ifdef CFIDEV_BUSWIDTH_4 +# ifdef CFIDEV_BUSWIDTH +# undef CFIDEV_BUSWIDTH +# define CFIDEV_BUSWIDTH (map->buswidth) +# else +# define CFIDEV_BUSWIDTH CFIDEV_BUSWIDTH_4 +# endif +# define cfi_buswidth_is_4() (CFIDEV_BUSWIDTH == CFIDEV_BUSWIDTH_4) +#else +# define cfi_buswidth_is_4() (0) +#endif + +#ifndef CFIDEV_BUSWIDTH +#error You must define at least one bus width to support! +#endif + +/* NB: these values must represents the number of bytes needed to meet the + * device type (x8, x16, x32). Eg. a 32 bit device is 4 x 8 bytes. + * These numbers are used in calculations. + */ +#define CFI_DEVICETYPE_X8 (8 / 8) +#define CFI_DEVICETYPE_X16 (16 / 8) +#define CFI_DEVICETYPE_X32 (32 / 8) /* NB: We keep these structures in memory in HOST byteorder, except * where individually noted. @@ -37,7 +183,7 @@ struct cfi_ident { __u16 InterfaceDesc; __u16 MaxBufWriteSize; __u8 NumEraseRegions; - __u32 EraseRegionInfo[1]; /* Not host ordered */ + __u32 EraseRegionInfo[0]; /* Not host ordered */ } __attribute__((packed)); /* Extended Query Structure for both PRI and ALT */ @@ -82,20 +228,164 @@ struct cfi_bri_query { #define P_ID_RESERVED 65535 +#define CFI_MODE_CFI 0 +#define CFI_MODE_JEDEC 1 + struct cfi_private { __u16 cmdset; void *cmdset_priv; int interleave; + int device_type; + int cfi_mode; /* Are we a JEDEC device pretending to be CFI? */ + int addr_unlock1; + int addr_unlock2; + int fast_prog; struct mtd_info *(*cmdset_setup)(struct map_info *); - struct cfi_ident cfiq; /* For now only one. We insist that all devs + struct cfi_ident *cfiq; /* For now only one. We insist that all devs must be of the same type. */ + __u8 mfr, id; int numchips; unsigned long chipshift; /* Because they're of the same type */ const char *im_name; /* inter_module name for cmdset_setup */ struct flchip chips[0]; /* per-chip data structure for each chip */ - /* do not add extra fields after "chips" */ }; #define MAX_CFI_CHIPS 8 /* Entirely arbitrary to avoid realloc() */ +/* + * Returns the command address according to the given geometry. + */ +static inline __u32 cfi_build_cmd_addr(__u32 cmd_ofs, int interleave, int type) +{ + return (cmd_ofs * type) * interleave; +} + +/* + * Transforms the CFI command for the given geometry (bus width & interleave. + */ +static inline __u32 cfi_build_cmd(u_char cmd, struct map_info *map, struct cfi_private *cfi) +{ + __u32 val = 0; + + if (cfi_buswidth_is_1()) { + /* 1 x8 device */ + val = cmd; + } else if (cfi_buswidth_is_2()) { + if (cfi_interleave_is_1()) { + /* 1 x16 device in x16 mode */ + val = cpu_to_cfi16(cmd); + } else if (cfi_interleave_is_2()) { + /* 2 (x8, x16 or x32) devices in x8 mode */ + val = cpu_to_cfi16((cmd << 8) | cmd); + } + } else if (cfi_buswidth_is_4()) { + if (cfi_interleave_is_1()) { + /* 1 x32 device in x32 mode */ + val = cpu_to_cfi32(cmd); + } else if (cfi_interleave_is_2()) { + /* 2 x16 device in x16 mode */ + val = cpu_to_cfi32((cmd << 16) | cmd); + } else if (cfi_interleave_is_4()) { + /* 4 (x8, x16 or x32) devices in x8 mode */ + val = (cmd << 16) | cmd; + val = cpu_to_cfi32((val << 8) | val); + } + } + return val; +} +#define CMD(x) cfi_build_cmd((x), map, cfi) + +/* + * Read a value according to the bus width. + */ + +static inline __u32 cfi_read(struct map_info *map, __u32 addr) +{ + if (cfi_buswidth_is_1()) { + return map->read8(map, addr); + } else if (cfi_buswidth_is_2()) { + return map->read16(map, addr); + } else if (cfi_buswidth_is_4()) { + return map->read32(map, addr); + } else { + return 0; + } +} + +/* + * Write a value according to the bus width. + */ + +static inline void cfi_write(struct map_info *map, __u32 val, __u32 addr) +{ + if (cfi_buswidth_is_1()) { + map->write8(map, val, addr); + } else if (cfi_buswidth_is_2()) { + map->write16(map, val, addr); + } else if (cfi_buswidth_is_4()) { + map->write32(map, val, addr); + } +} + +/* + * Sends a CFI command to a bank of flash for the given geometry. + * + * Returns the offset in flash where the command was written. + * If prev_val is non-null, it will be set to the value at the command address, + * before the command was written. + */ +static inline __u32 cfi_send_gen_cmd(u_char cmd, __u32 cmd_addr, __u32 base, + struct map_info *map, struct cfi_private *cfi, + int type, __u32 *prev_val) +{ + __u32 val; + __u32 addr = base + cfi_build_cmd_addr(cmd_addr, CFIDEV_INTERLEAVE, type); + + val = cfi_build_cmd(cmd, map, cfi); + + if (prev_val) + *prev_val = cfi_read(map, addr); + + cfi_write(map, val, addr); + + return addr - base; +} + +static inline __u8 cfi_read_query(struct map_info *map, __u32 addr) +{ + if (cfi_buswidth_is_1()) { + return map->read8(map, addr); + } else if (cfi_buswidth_is_2()) { + return cfi16_to_cpu(map->read16(map, addr)); + } else if (cfi_buswidth_is_4()) { + return cfi32_to_cpu(map->read32(map, addr)); + } else { + return 0; + } +} + +#ifndef min +#define min(x,y) ( (x)<(y)?(x):(y) ) +#endif + +static inline void cfi_udelay(int us) +{ +#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,2,0) + if (current->need_resched) + schedule(); + else +#endif + udelay(us); +} +static inline void cfi_spin_lock(spinlock_t *mutex) +{ + spin_lock_bh(mutex); +} + +static inline void cfi_spin_unlock(spinlock_t *mutex) +{ + spin_unlock_bh(mutex); +} + + #endif /* __MTD_CFI_H__ */ diff --git a/include/linux/mtd/cfi_endian.h b/include/linux/mtd/cfi_endian.h new file mode 100644 index 000000000000..052139bf210d --- /dev/null +++ b/include/linux/mtd/cfi_endian.h @@ -0,0 +1,141 @@ +/* + * $Id: cfi_endian.h,v 1.9 2001/04/23 21:19:11 nico Exp $ + * + * It seems that some helpful people decided to make life easier + * for software engineers who aren't capable of dealing with the + * concept of byteswapping, and advise engineers to swap the bytes + * by wiring the data lines up to flash chips from BE hosts backwards. + * + * So we have ugly stuff here to disable the byteswapping where necessary. + * I'm not going to try to do this dynamically. + * + * At first I thought these guys were on crack, but then I discovered the + * LART. + * + */ + +#include <asm/byteorder.h> + +#ifndef CONFIG_MTD_CFI_ADV_OPTIONS + +#define CFI_HOST_ENDIAN + +#else + +#ifdef CONFIG_MTD_CFI_NOSWAP +#define CFI_HOST_ENDIAN +#endif + +#ifdef CONFIG_MTD_CFI_LE_BYTE_SWAP +#define CFI_LITTLE_ENDIAN +#endif + +#ifdef CONFIG_MTD_CFI_BE_BYTE_SWAP +#define CFI_BIG_ENDIAN +#endif + +#ifdef CONFIG_MTD_CFI_LART_BIT_SWAP +#define CFI_LART_ENDIAN +#endif + +#endif + +#if defined(CFI_LITTLE_ENDIAN) +#define cpu_to_cfi8(x) (x) +#define cfi8_to_cpu(x) (x) +#define cpu_to_cfi16(x) cpu_to_le16(x) +#define cpu_to_cfi32(x) cpu_to_le32(x) +#define cfi16_to_cpu(x) le16_to_cpu(x) +#define cfi32_to_cpu(x) le32_to_cpu(x) +#elif defined (CFI_BIG_ENDIAN) +#define cpu_to_cfi8(x) (x) +#define cfi8_to_cpu(x) (x) +#define cpu_to_cfi16(x) cpu_to_be16(x) +#define cpu_to_cfi32(x) cpu_to_be32(x) +#define cfi16_to_cpu(x) be16_to_cpu(x) +#define cfi32_to_cpu(x) be32_to_cpu(x) +#elif defined (CFI_HOST_ENDIAN) +#define cpu_to_cfi8(x) (x) +#define cfi8_to_cpu(x) (x) +#define cpu_to_cfi16(x) (x) +#define cpu_to_cfi32(x) (x) +#define cfi16_to_cpu(x) (x) +#define cfi32_to_cpu(x) (x) +#elif defined (CFI_LART_ENDIAN) +/* + Fuck me backwards. The data line mapping on LART is as follows: + + U2 CPU | U3 CPU + 0 20 | 0 12 + 1 22 | 1 14 + 2 19 | 2 11 + 3 17 | 3 9 + 4 24 | 4 0 + 5 26 | 5 2 + 6 31 | 6 7 + 7 29 | 7 5 + 8 21 | 8 13 + 9 23 | 9 15 + 10 18 | 10 10 + 11 16 | 11 8 + 12 25 | 12 1 + 13 27 | 13 3 + 14 30 | 14 6 + 15 28 | 15 4 + + For historical reference: the reason why the LART has this strange + mapping is that the designer of the board wanted address lines to + be as short as possible. Why? Because in that way you don't need + drivers in the address lines so the memory access time can be held + short. -- Erik Mouw <J.A.K.Mouw@its.tudelft.nl> +*/ +/* cpu_to_cfi16() and cfi16_to_cpu() are not needed because the LART + * only has 32 bit wide Flash memory. -- Erik + */ +#define cpu_to_cfi16(x) (x) +#define cfi16_to_cpu(x) (x) +static inline __u32 cfi32_to_cpu(__u32 x) +{ + __u32 ret; + + ret = (x & 0x08009000) >> 11; + ret |= (x & 0x00002000) >> 10; + ret |= (x & 0x04004000) >> 8; + ret |= (x & 0x00000010) >> 4; + ret |= (x & 0x91000820) >> 3; + ret |= (x & 0x22080080) >> 2; + ret |= (x & 0x40000400); + ret |= (x & 0x00040040) << 1; + ret |= (x & 0x00110000) << 4; + ret |= (x & 0x00220100) << 5; + ret |= (x & 0x00800208) << 6; + ret |= (x & 0x00400004) << 9; + ret |= (x & 0x00000001) << 12; + ret |= (x & 0x00000002) << 13; + + return ret; +} +static inline __u32 cpu_to_cfi32(__u32 x) +{ + __u32 ret; + + ret = (x & 0x00010012) << 11; + ret |= (x & 0x00000008) << 10; + ret |= (x & 0x00040040) << 8; + ret |= (x & 0x00000001) << 4; + ret |= (x & 0x12200104) << 3; + ret |= (x & 0x08820020) << 2; + ret |= (x & 0x40000400); + ret |= (x & 0x00080080) >> 1; + ret |= (x & 0x01100000) >> 4; + ret |= (x & 0x04402000) >> 5; + ret |= (x & 0x20008200) >> 6; + ret |= (x & 0x80000800) >> 9; + ret |= (x & 0x00001000) >> 12; + ret |= (x & 0x00004000) >> 13; + + return ret; +} +#else +#error No CFI endianness defined +#endif diff --git a/include/linux/mtd/doc2000.h b/include/linux/mtd/doc2000.h index 696938aa1853..c8e143a1f723 100644 --- a/include/linux/mtd/doc2000.h +++ b/include/linux/mtd/doc2000.h @@ -2,7 +2,7 @@ /* Linux driver for Disk-On-Chip 2000 */ /* (c) 1999 Machine Vision Holdings, Inc. */ /* Author: David Woodhouse <dwmw2@mvhi.com> */ -/* $Id: doc2000.h,v 1.12 2000/11/03 12:43:43 dwmw2 Exp $ */ +/* $Id: doc2000.h,v 1.13 2001/05/29 12:03:45 dwmw2 Exp $ */ #ifndef __MTD_DOC2000_H__ #define __MTD_DOC2000_H__ @@ -43,15 +43,19 @@ * On PPC, it's mmap'd and 16-bit wide. * Others use readb/writeb */ -#if defined(__arm__) -#define ReadDOC_(adr, reg) ((unsigned char)(*(__u32 *)(((unsigned long)adr)+(reg<<2)))) -#define WriteDOC_(d, adr, reg) do{ *(__u32 *)(((unsigned long)adr)+(reg<<2)) = (__u32)d} while(0) +#if defined(__arm__) +#define ReadDOC_(adr, reg) ((unsigned char)(*(__u32 *)(((unsigned long)adr)+((reg)<<2)))) +#define WriteDOC_(d, adr, reg) do{ *(__u32 *)(((unsigned long)adr)+((reg)<<2)) = (__u32)d; wmb();} while(0) +#define DOC_IOREMAP_LEN 0x8000 #elif defined(__ppc__) -#define ReadDOC_(adr, reg) ((unsigned char)(*(__u16 *)(((unsigned long)adr)+(reg<<1)))) -#define WriteDOC_(d, adr, reg) do{ *(__u16 *)(((unsigned long)adr)+(reg<<1)) = (__u16)d} while(0) +#define ReadDOC_(adr, reg) ((unsigned char)(*(__u16 *)(((unsigned long)adr)+((reg)<<1)))) +#define WriteDOC_(d, adr, reg) do{ *(__u16 *)(((unsigned long)adr)+((reg)<<1)) = (__u16)d; wmb();} while(0) +#define DOC_IOREMAP_LEN 0x4000 #else -#define ReadDOC_(adr, reg) readb(((unsigned long)adr) + reg) -#define WriteDOC_(d, adr, reg) writeb(d, ((unsigned long)adr) + reg) +#define ReadDOC_(adr, reg) readb(((unsigned long)adr) + (reg)) +#define WriteDOC_(d, adr, reg) writeb(d, ((unsigned long)adr) + (reg)) +#define DOC_IOREMAP_LEN 0x2000 + #endif #if defined(__i386__) diff --git a/include/linux/mtd/flashchip.h b/include/linux/mtd/flashchip.h index 17c7cec2ccd2..4cdccad20abe 100644 --- a/include/linux/mtd/flashchip.h +++ b/include/linux/mtd/flashchip.h @@ -6,7 +6,7 @@ * * (C) 2000 Red Hat. GPLd. * - * $Id: flashchip.h,v 1.4 2000/07/03 12:58:41 dwmw2 Exp $ + * $Id: flashchip.h,v 1.7 2001/01/18 03:52:36 nico Exp $ * */ @@ -25,12 +25,17 @@ typedef enum { FL_CFI_QUERY, FL_JEDEC_QUERY, FL_ERASING, + FL_ERASE_SUSPENDING, FL_ERASE_SUSPENDED, FL_WRITING, + FL_WRITING_TO_BUFFER, + FL_WRITE_SUSPENDING, FL_WRITE_SUSPENDED, FL_PM_SUSPENDED, FL_SYNCING, FL_UNLOADING, + FL_LOCKING, + FL_UNLOCKING, FL_UNKNOWN } flstate_t; diff --git a/include/linux/mtd/map.h b/include/linux/mtd/map.h index 71fc46b1a7fa..84553406e6b1 100644 --- a/include/linux/mtd/map.h +++ b/include/linux/mtd/map.h @@ -1,6 +1,6 @@ /* Overhauled routines for dealing with different mmap regions of flash */ -/* $Id: map.h,v 1.10.2.2 2001/01/09 00:44:51 dwmw2 Exp $ */ +/* $Id: map.h,v 1.24 2001/06/09 19:53:16 dwmw2 Exp $ */ #ifndef __LINUX_MTD_MAP_H__ #define __LINUX_MTD_MAP_H__ @@ -53,47 +53,23 @@ struct map_info { unsigned long map_priv_1; unsigned long map_priv_2; void *fldrv_priv; - void (*fldrv_destroy)(struct mtd_info *); - const char *im_name; + struct mtd_chip_driver *fldrv; }; -#ifdef CONFIG_MODULES -/* - * Probe for the contents of a map device and make an MTD structure - * if anything is recognised. Doesn't register it because the calling - * map driver needs to set the 'module' field first. - */ -static inline struct mtd_info *do_map_probe(struct map_info *map, const char *funcname, const char *modname) -{ - struct mtd_info *(*probe_p)(struct map_info *); - struct mtd_info *mtd = NULL; - if ((probe_p = inter_module_get_request(modname, funcname))) - mtd = (*probe_p)(map); /* map->im_name is set by probe */ - - return mtd; -} +struct mtd_chip_driver { + struct mtd_info *(*probe)(struct map_info *map); + void (*destroy)(struct mtd_info *); + struct module *module; + char *name; + struct list_head list; +}; +void register_mtd_chip_driver(struct mtd_chip_driver *); +void unregister_mtd_chip_driver(struct mtd_chip_driver *); -/* - * Commonly-used probe functions for different types of chip. - */ -#define do_cfi_probe(x) do_map_probe(x, "cfi_probe", "cfi_probe") -#define do_jedec_probe(x) do_map_probe(x, "jedec_probe", "jedec_probe") -#define do_ram_probe(x) do_map_probe(x, "map_ram_probe", "map_ram") -#define do_rom_probe(x) do_map_probe(x, "map_rom_probe", "map_rom") -#else - /* without module support, call probe function directly */ -extern struct mtd_info *cfi_probe(struct map_info *); -extern struct mtd_info *jedec_probe(struct map_info *); -extern struct mtd_info *map_ram_probe(struct map_info *); -extern struct mtd_info *map_rom_probe(struct map_info *); +struct mtd_info *do_map_probe(char *name, struct map_info *map); -#define do_cfi_probe(x) cfi_probe(x) -#define do_jedec_probe(x) jedec_probe(x) -#define do_ram_probe(x) map_ram_probe(x) -#define do_rom_probe(x) map_rom_probe(x) -#endif /* * Destroy an MTD device which was created for a map device. @@ -103,8 +79,11 @@ static inline void map_destroy(struct mtd_info *mtd) { struct map_info *map = mtd->priv; - map->fldrv_destroy(mtd); - inter_module_put(map->im_name); + map->fldrv->destroy(mtd); +#ifdef CONFIG_MODULES + if (map->fldrv->module) + __MOD_DEC_USE_COUNT(map->fldrv->module); +#endif kfree(mtd); } diff --git a/include/linux/mtd/mapped.h b/include/linux/mtd/mapped.h deleted file mode 100644 index 81668b71e916..000000000000 --- a/include/linux/mtd/mapped.h +++ /dev/null @@ -1,92 +0,0 @@ -// -*- mode: cpp; mode: fold -*- -// Description /*{{{*/ -// $Id: mapped.h,v 1.2 2000/03/14 17:13:12 dwmw2 Exp $ -/* ###################################################################### - - Memory Mapped MTD Routines - - These routines are support routines for memory mapped chips, with - routines to support common sorts of flash. For devices that are based - on a memory mapped interface these routines provide everything necessary, - only a window changing function is required by the low level implementation. - - The entry point to setup and register a memory mapped MTD device, - mtd_mapped_setup will perform a detection sequence that can determine - the type size and configuration of many sorts of chip setups. - - ROMs and RAMs are detected and passed off to very simple routines, Flash - writing and erasing is handled as well. - - ##################################################################### */ - /*}}}*/ -#ifndef __MTD_FLASH_H__ -#define __MTD_FLASH_H__ - -#include <linux/types.h> -#include <linux/mtd/mtd.h> - -// MTD flags for ordinary flash -struct JEDECTable -{ - u_short jedec; - char *name; - u_long size; - u_long sectorsize; - u_long capabilities; -}; - -// JEDEC being 0 is the end of the chip array -struct flash_chip -{ - u_short jedec; - u_long size; - u_long sectorsize; - u_long base; - u_long capabilities; - - // These markers are filled in by the flash_chip_scan function - u_long start; - u_long length; -}; - -struct mapped_mtd_info -{ - struct mtd_info mtd; - u_long pagesize; // Size of the memory window - u_long maxsize; // Maximum MTD size in pages - u_char mfr,id; - char part[100]; // Part Catalogue number if available - int *lock; - // Multiple chip support, only used if this is type MTD_FLASH - u_char interleve; // Address chip interleve (0 = concatination) - struct flash_chip chips[5]; - - // Operations - unsigned long (*page)(struct mapped_mtd_info *map,unsigned long page); - int (*jedec_sense)(struct mapped_mtd_info *map); -}; - -extern struct JEDECTable mtd_JEDEC_table[]; - -// Automatic configurators -extern int mtd_mapped_setup(struct mapped_mtd_info *map); -extern int mtd_mapped_remove(struct mapped_mtd_info *map); - -// Generic functions -extern int flash_jedec(struct mapped_mtd_info *map); -extern int flash_erase(struct mtd_info *map, struct erase_info *instr); -extern int flash_write(struct mtd_info *map, loff_t start, size_t len, - size_t *retlen, const u_char *buf); -extern int rom_read(struct mtd_info *map, loff_t start, size_t len, - size_t *retlen, u_char *buf); -extern int ram_write(struct mtd_info *map, loff_t start, size_t len, - size_t *retlen, const u_char *buf); - -// Helpers -extern int page_jump(struct mapped_mtd_info *map,unsigned long start, - unsigned long len,unsigned long *buffer, - unsigned long *size); -extern void flash_chip_scan(struct mapped_mtd_info *map,unsigned long start, - unsigned long len); - -#endif /* __MTD_FLASH_H__ */ diff --git a/include/linux/mtd/mtd.h b/include/linux/mtd/mtd.h index a703b853e56a..ae5bfe3e10fb 100644 --- a/include/linux/mtd/mtd.h +++ b/include/linux/mtd/mtd.h @@ -1,5 +1,5 @@ -/* $Id: mtd.h,v 1.26 2000/10/30 17:18:04 sjhill Exp $ */ +/* $Id: mtd.h,v 1.33 2001/06/09 00:08:59 dwmw2 Exp $ */ #ifndef __MTD_MTD_H__ #define __MTD_MTD_H__ @@ -16,13 +16,13 @@ #endif /* __KERNEL__ */ struct erase_info_user { - unsigned long start; - unsigned long length; + u_int32_t start; + u_int32_t length; }; struct mtd_oob_buf { - loff_t start; - ssize_t length; + u_int32_t start; + u_int32_t length; unsigned char *ptr; }; @@ -68,13 +68,21 @@ struct mtd_oob_buf { struct mtd_info_user { u_char type; - u_long flags; - u_long size; // Total size of the MTD - u_long erasesize; - u_long oobblock; // Size of OOB blocks (e.g. 512) - u_long oobsize; // Amount of OOB data per block (e.g. 16) - u_long ecctype; - u_long eccsize; + u_int32_t flags; + u_int32_t size; // Total size of the MTD + u_int32_t erasesize; + u_int32_t oobblock; // Size of OOB blocks (e.g. 512) + u_int32_t oobsize; // Amount of OOB data per block (e.g. 16) + u_int32_t ecctype; + u_int32_t eccsize; +}; + +struct region_info_user { + u_int32_t offset; /* At which this region starts, + * from the beginning of the MTD */ + u_int32_t erasesize; /* For this region */ + u_int32_t numblocks; /* Number of blocks in this region */ + u_int32_t regionindex; }; #define MEMGETINFO _IOR('M', 1, struct mtd_info_user) @@ -83,11 +91,14 @@ struct mtd_info_user { #define MEMREADOOB _IOWR('M', 4, struct mtd_oob_buf) #define MEMLOCK _IOW('M', 5, struct erase_info_user) #define MEMUNLOCK _IOW('M', 6, struct erase_info_user) +#define MEMGETREGIONCOUNT _IOR('M', 7, int) +#define MEMGETREGIONINFO _IOWR('M', 8, struct region_info_user) #ifndef __KERNEL__ typedef struct mtd_info_user mtd_info_t; typedef struct erase_info_user erase_info_t; +typedef struct region_info_user region_info_t; /* User-space ioctl definitions */ @@ -103,8 +114,8 @@ typedef struct erase_info_user erase_info_t; struct erase_info { struct mtd_info *mtd; - u_long addr; - u_long len; + u_int32_t addr; + u_int32_t len; u_long time; u_long retries; u_int dev; @@ -115,22 +126,40 @@ struct erase_info { struct erase_info *next; }; +struct mtd_erase_region_info { + u_int32_t offset; /* At which this region starts, from the beginning of the MTD */ + u_int32_t erasesize; /* For this region */ + u_int32_t numblocks; /* Number of blocks of erasesize in this region */ +}; struct mtd_info { u_char type; - u_long flags; - u_long size; // Total size of the MTD - u_long erasesize; - u_long oobblock; // Size of OOB blocks (e.g. 512) - u_long oobsize; // Amount of OOB data per block (e.g. 16) - u_long ecctype; - u_long eccsize; + u_int32_t flags; + u_int32_t size; // Total size of the MTD + + /* "Major" erase size for the device. Naïve users may take this + * to be the only erase size available, or may use the more detailed + * information below if they desire + */ + u_int32_t erasesize; + + u_int32_t oobblock; // Size of OOB blocks (e.g. 512) + u_int32_t oobsize; // Amount of OOB data per block (e.g. 16) + u_int32_t ecctype; + u_int32_t eccsize; // Kernel-only stuff starts here. char *name; int index; - u_long bank_size; + /* Data for variable erase regions. If numeraseregions is zero, + * it means that the whole device has erasesize as given above. + */ + int numeraseregions; + struct mtd_erase_region_info *eraseregions; + + /* This really shouldn't be here. It can go away in 2.5 */ + u_int32_t bank_size; struct module *module; int (*erase) (struct mtd_info *mtd, struct erase_info *instr); diff --git a/include/linux/mtd/nand_ecc.h b/include/linux/mtd/nand_ecc.h new file mode 100644 index 000000000000..f3f1d7e0f6aa --- /dev/null +++ b/include/linux/mtd/nand_ecc.h @@ -0,0 +1,28 @@ +/* + * drivers/mtd/nand_ecc.h + * + * Copyright (C) 2000 Steven J. Hill (sjhill@cotw.com) + * + * $Id: nand_ecc.h,v 1.1 2000/10/12 00:57:15 sjhill Exp $ + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + * + * This file is the header for the ECC algorithm. + */ + +/* + * Creates non-inverted ECC code from line parity + */ +void nand_trans_result(u_char reg2, u_char reg3, u_char *ecc_code); + +/* + * Calculate 3 byte ECC code for 256 byte block + */ +void nand_calculate_ecc (const u_char *dat, u_char *ecc_code); + +/* + * Detect and correct a 1 bit error for 256 byte block + */ +int nand_correct_data (u_char *dat, u_char *read_ecc, u_char *calc_ecc); diff --git a/include/linux/mtd/nftl.h b/include/linux/mtd/nftl.h index ae00ceb0ba2a..3483a8c4022d 100644 --- a/include/linux/mtd/nftl.h +++ b/include/linux/mtd/nftl.h @@ -2,7 +2,7 @@ /* Defines for NAND Flash Translation Layer */ /* (c) 1999 Machine Vision Holdings, Inc. */ /* Author: David Woodhouse <dwmw2@mvhi.com> */ -/* $Id: nftl.h,v 1.9 2000/11/07 05:48:49 ollie Exp $ */ +/* $Id: nftl.h,v 1.10 2000/12/29 00:25:38 dwmw2 Exp $ */ #ifndef __MTD_NFTL_H__ #define __MTD_NFTL_H__ @@ -115,6 +115,7 @@ int NFTL_formatblock(struct NFTLrecord *s, int block); #define MAX_NFTLS 16 #define MAX_SECTORS_PER_UNIT 32 +#define NFTL_PARTN_BITS 4 #endif /* __KERNEL__ */ diff --git a/include/linux/mtd/partitions.h b/include/linux/mtd/partitions.h index a92023886008..1d3351cc1eca 100644 --- a/include/linux/mtd/partitions.h +++ b/include/linux/mtd/partitions.h @@ -5,7 +5,7 @@ * * This code is GPL * - * $Id: partitions.h,v 1.3 2000/11/10 23:35:12 nico Exp $ + * $Id: partitions.h,v 1.6 2001/03/17 17:10:21 dwmw2 Exp $ */ #ifndef MTD_PARTITIONS_H @@ -22,10 +22,11 @@ * * For each partition, these fields are available: * name: string that will be used to label the partition's MTD device. - * size: the partition size; if 0, the partition will extend to the end of the - * master MTD device. - * offset: absolute starting position within the master MTD device; if 0, - * partition will start where the previous one ended. + * size: the partition size; if defined as MTDPART_SIZ_FULL, the partition + * will extend to the end of the master MTD device. + * offset: absolute starting position within the master MTD device; if + * defined as MTDPART_OFS_APPEND, the partition will start where the + * previous one ended. * mask_flags: contains flags that have to be masked (removed) from the * master MTD flag set for the corresponding MTD partition. * For example, to force a read-only partition, simply adding @@ -37,11 +38,14 @@ struct mtd_partition { char *name; /* identifier string */ - u_long size; /* partition size */ - u_long offset; /* offset within the master MTD space */ - u_long mask_flags; /* master MTD flags to mask out for this partition */ + u_int32_t size; /* partition size */ + u_int32_t offset; /* offset within the master MTD space */ + u_int32_t mask_flags; /* master MTD flags to mask out for this partition */ }; +#define MTDPART_OFS_APPEND (-1) +#define MTDPART_SIZ_FULL (0) + int add_mtd_partitions(struct mtd_info *, struct mtd_partition *, int); int del_mtd_partitions(struct mtd_info *); diff --git a/include/linux/pci.h b/include/linux/pci.h index d69cc5182cd8..aa3aacf0dd70 100644 --- a/include/linux/pci.h +++ b/include/linux/pci.h @@ -327,6 +327,9 @@ enum pci_mmap_state { #define pci_for_each_dev_reverse(dev) \ for(dev = pci_dev_g(pci_devices.prev); dev != pci_dev_g(&pci_devices); dev = pci_dev_g(dev->global_list.prev)) +#define pci_for_each_bus(bus) \ +for(bus = pci_bus_b(pci_root_buses.next); bus != pci_bus_b(&pci_root_buses); bus = pci_bus_b(bus->node.next)) + /* * The pci_dev structure is used to describe both PCI and ISAPnP devices. */ @@ -356,6 +359,10 @@ struct pci_dev { this if your device has broken DMA or supports 64-bit transfers. */ + u32 current_state; /* Current operating state. In ACPI-speak, + this is D0-D3, D0 being fully functional, + and D3 being off. */ + /* device is compatible with these IDs */ unsigned short vendor_compatible[DEVICE_COUNT_COMPATIBLE]; unsigned short device_compatible[DEVICE_COUNT_COMPATIBLE]; @@ -469,10 +476,11 @@ struct pci_driver { struct list_head node; char *name; const struct pci_device_id *id_table; /* NULL if wants all devices */ - int (*probe)(struct pci_dev *dev, const struct pci_device_id *id); /* New device inserted */ - void (*remove)(struct pci_dev *dev); /* Device removed (NULL if not a hot-plug capable driver) */ - void (*suspend)(struct pci_dev *dev); /* Device suspended */ - void (*resume)(struct pci_dev *dev); /* Device woken up */ + int (*probe) (struct pci_dev *dev, const struct pci_device_id *id); /* New device inserted */ + void (*remove) (struct pci_dev *dev); /* Device removed (NULL if not a hot-plug capable driver) */ + int (*suspend)(struct pci_dev *dev, u32 state); /* Device suspended */ + int (*resume) (struct pci_dev *dev); /* Device woken up */ + int (*enable_wake) (struct pci_dev *dev, u32 state, int enable); /* Enable wake event */ }; @@ -547,14 +555,18 @@ int pci_write_config_byte(struct pci_dev *dev, int where, u8 val); int pci_write_config_word(struct pci_dev *dev, int where, u16 val); int pci_write_config_dword(struct pci_dev *dev, int where, u32 val); -#define HAVE_PCI_DISABLE_DEVICE int pci_enable_device(struct pci_dev *dev); void pci_disable_device(struct pci_dev *dev); void pci_set_master(struct pci_dev *dev); int pci_set_dma_mask(struct pci_dev *dev, dma_addr_t mask); -int pci_set_power_state(struct pci_dev *dev, int state); int pci_assign_resource(struct pci_dev *dev, int i); +/* Power management related routines */ +int pci_save_state(struct pci_dev *dev, u32 *buffer); +int pci_restore_state(struct pci_dev *dev, u32 *buffer); +int pci_set_power_state(struct pci_dev *dev, int state); +int pci_enable_wake(struct pci_dev *dev, u32 state, int enable); + /* Helper functions for low-level code (drivers/pci/setup-[bus,res].c) */ int pci_claim_resource(struct pci_dev *, int); diff --git a/include/linux/pci_ids.h b/include/linux/pci_ids.h index 5599f65984cb..a5cb21c2f302 100644 --- a/include/linux/pci_ids.h +++ b/include/linux/pci_ids.h @@ -160,20 +160,37 @@ #define PCI_DEVICE_ID_NCR_YELLOWFIN 0x0701 #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_215LG 0x4c47 -#define PCI_DEVICE_ID_ATI_264LT 0x4c54 +#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 Pro GL */ #define PCI_DEVICE_ID_ATI_Rage128_PA 0x5041 #define PCI_DEVICE_ID_ATI_Rage128_PB 0x5042 @@ -1135,6 +1152,7 @@ #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_C2 0x1100 #define PCI_DEVICE_ID_AVM_T1 0x1200 #define PCI_VENDOR_ID_DIPIX 0x1246 diff --git a/include/linux/quotaops.h b/include/linux/quotaops.h index 8dea93d1aae0..dff8588a2bfe 100644 --- a/include/linux/quotaops.h +++ b/include/linux/quotaops.h @@ -21,7 +21,6 @@ */ extern void dquot_initialize(struct inode *inode, short type); extern void dquot_drop(struct inode *inode); -extern void invalidate_dquots(kdev_t dev, short type); extern int quota_off(struct super_block *sb, short type); extern int sync_dquots(kdev_t dev, short type); diff --git a/include/linux/reiserfs_fs.h b/include/linux/reiserfs_fs.h index d02476de1485..f46154e9fdac 100644 --- a/include/linux/reiserfs_fs.h +++ b/include/linux/reiserfs_fs.h @@ -1806,6 +1806,10 @@ void reiserfs_delete_inode (struct inode * inode); extern int reiserfs_notify_change(struct dentry * dentry, struct iattr * attr); void reiserfs_write_inode (struct inode * inode, int) ; +/* nfsd support functions */ +struct dentry *reiserfs_fh_to_dentry(struct super_block *sb, __u32 *fh, int len, int fhtype, int parent); +int reiserfs_dentry_to_fh(struct dentry *, __u32 *fh, int *lenp, int need_parent); + /* we don't mark inodes dirty, we just log them */ void reiserfs_dirty_inode (struct inode * inode) ; diff --git a/include/linux/swap.h b/include/linux/swap.h index d43f5d981d7c..71ad9d7f3773 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h @@ -205,6 +205,16 @@ extern spinlock_t pagemap_lru_lock; page->zone->inactive_dirty_pages++; \ } +/* Like the above, but add us after the bookmark. */ +#define add_page_to_inactive_dirty_list_marker(page) { \ + DEBUG_ADD_PAGE \ + ZERO_PAGE_BUG \ + SetPageInactiveDirty(page); \ + list_add(&(page)->lru, marker_lru); \ + nr_inactive_dirty_pages++; \ + page->zone->inactive_dirty_pages++; \ +} + #define add_page_to_inactive_clean_list(page) { \ DEBUG_ADD_PAGE \ ZERO_PAGE_BUG \ |
