]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.25/patches.drivers/0007-Staging-add-sxg-network-driver.patch
Revert "Disable build of xen kernel."
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.25 / patches.drivers / 0007-Staging-add-sxg-network-driver.patch
1 From 5db6b777f68603bf5a9eab891d83413ad894a074 Mon Sep 17 00:00:00 2001
2 From: Greg Kroah-Hartman <gregkh@suse.de>
3 Date: Thu, 21 Aug 2008 14:04:55 -0700
4 Subject: [PATCH 07/23] Staging: add sxg network driver
5 Patch-mainline: 2.6.28
6
7 This is the first rough cut at a driver for the Alacritech SLIC
8 Technology Non-Accelerated 10Gbe network driver
9
10 TODO:
11 - lindent the code
12 - remove typedefs
13 - remove wrappers
14 - checkpatch.pl cleanups
15 - new functionality that the card needs
16
17 Cc: Christopher Harrer <charrer@alacritech.com>
18 Cc: Michael Miles <mmiles@alacritech.com>
19 Cc: Christopher Harrer <charrer@alacritech.com>
20 Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
21 ---
22 drivers/staging/Kconfig | 2
23 drivers/staging/Makefile | 1
24 drivers/staging/sxg/Kconfig | 10
25 drivers/staging/sxg/Makefile | 1
26 drivers/staging/sxg/README | 13
27 drivers/staging/sxg/saharadbgdownload.h | 4854 ++++++++++++++++++++++++++++++++
28 drivers/staging/sxg/sxg.c | 3608 +++++++++++++++++++++++
29 drivers/staging/sxg/sxg.h | 773 +++++
30 drivers/staging/sxg/sxg_os.h | 154 +
31 drivers/staging/sxg/sxgdbg.h | 190 +
32 drivers/staging/sxg/sxghif.h | 861 +++++
33 drivers/staging/sxg/sxghw.h | 734 ++++
34 drivers/staging/sxg/sxgphycode.h | 349 ++
35 13 files changed, 11550 insertions(+)
36 create mode 100644 drivers/staging/sxg/Kconfig
37 create mode 100644 drivers/staging/sxg/Makefile
38 create mode 100644 drivers/staging/sxg/README
39 create mode 100644 drivers/staging/sxg/saharadbgdownload.h
40 create mode 100644 drivers/staging/sxg/sxg.c
41 create mode 100644 drivers/staging/sxg/sxg.h
42 create mode 100644 drivers/staging/sxg/sxg_os.h
43 create mode 100644 drivers/staging/sxg/sxgdbg.h
44 create mode 100644 drivers/staging/sxg/sxghif.h
45 create mode 100644 drivers/staging/sxg/sxghw.h
46 create mode 100644 drivers/staging/sxg/sxgphycode.h
47
48 --- a/drivers/staging/Kconfig
49 +++ b/drivers/staging/Kconfig
50 @@ -27,4 +27,6 @@ source "drivers/staging/et131x/Kconfig"
51
52 source "drivers/staging/slicoss/Kconfig"
53
54 +source "drivers/staging/sxg/Kconfig"
55 +
56 endif # STAGING
57 --- a/drivers/staging/Makefile
58 +++ b/drivers/staging/Makefile
59 @@ -2,3 +2,4 @@
60
61 obj-$(CONFIG_ET131X) += et131x/
62 obj-$(CONFIG_SLICOSS) += slicoss/
63 +obj-$(CONFIG_SXG) += sxg/
64 --- /dev/null
65 +++ b/drivers/staging/sxg/Kconfig
66 @@ -0,0 +1,10 @@
67 +config SXG
68 + tristate "Alacritech SLIC Technology Non-Accelerated 10Gbe support"
69 + depends on PCI && NETDEV_10000
70 + default n
71 + help
72 + This driver supports the Alacritech SLIC Technology Non-Accelerated
73 + 10Gbe network cards.
74 +
75 + To compile this driver as a module, choose
76 + M here: the module will be called sxg.
77 --- /dev/null
78 +++ b/drivers/staging/sxg/Makefile
79 @@ -0,0 +1 @@
80 +obj-$(CONFIG_SXG) += sxg.o
81 --- /dev/null
82 +++ b/drivers/staging/sxg/README
83 @@ -0,0 +1,13 @@
84 +This is the rough cut at a driver for the Alacritech SLIC Technology
85 +Non-Accelerated 10Gbe network driver.
86 +
87 +TODO:
88 + - lindent the code
89 + - remove typedefs
90 + - remove wrappers
91 + - checkpatch.pl cleanups
92 + - new functionality that the card needs
93 +
94 +Please send patches to:
95 + Greg Kroah-Hartman <gregkh@suse.de>
96 +for any cleanups that you do to this driver.
97 --- /dev/null
98 +++ b/drivers/staging/sxg/saharadbgdownload.h
99 @@ -0,0 +1,4854 @@
100 +#define SAHARA_UCODE_VERS_STRING "$Revision: 1.1 $"
101 +#define SAHARA_UCODE_VERS_DATE "$Date: 2008/06/27 12:58:27 $"
102 +#define SAHARA_UCODE_HOSTIF_ID 3
103 +
104 +static u32 SNumSections = 0x2;
105 +static u32 SSectionSize[] =
106 +{
107 + 0x0000e274, 0x0000000c,
108 +};
109 +
110 +static u32 SSectionStart[] =
111 +{
112 + 0x00000000, 0x00001fff,
113 +};
114 +
115 +static unsigned char SaharaUCode[2][57972] =
116 +{
117 +{
118 + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0x4d, 0x29, 0x3a,
119 + 0x00, 0x00, 0xb2, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
120 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
121 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
122 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
123 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
124 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
125 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
126 + 0x00, 0x00, 0x09, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
127 + 0xfe, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x02, 0x00, 0x36, 0x32,
128 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0x92,
129 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
130 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
131 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
132 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
133 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
134 + 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
135 + 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
136 + 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
137 + 0x00, 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x40, 0x2b, 0x92,
138 + 0x00, 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
139 + 0x00, 0x00, 0x25, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
140 + 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
141 + 0x00, 0x00, 0x27, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
142 + 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
143 + 0x00, 0x00, 0x29, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
144 + 0x00, 0x00, 0x2a, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
145 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x98, 0x1e, 0x80, 0xe9, 0x9a,
146 + 0x00, 0x00, 0x2c, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
147 + 0x00, 0x00, 0x2d, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
148 + 0x00, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
149 + 0x00, 0x00, 0x2f, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x0f, 0x80, 0x28, 0x92,
150 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x00, 0x00, 0x92,
151 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x40, 0x00, 0x92,
152 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x80, 0x00, 0x92,
153 + 0x00, 0x00, 0x34, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0xc0, 0x00, 0x92,
154 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x00, 0x01, 0x92,
155 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x40, 0x01, 0x92,
156 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x80, 0x01, 0x92,
157 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0xc0, 0x01, 0x92,
158 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x00, 0x02, 0x92,
159 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x40, 0x02, 0x92,
160 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x80, 0x02, 0x92,
161 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
162 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x00, 0x03, 0x92,
163 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x40, 0x03, 0x92,
164 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0x80, 0x03, 0x92,
165 + 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x0f, 0xc0, 0x03, 0x92,
166 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x5f, 0x3f, 0x00, 0x34,
167 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x42, 0xff, 0xfc, 0xb0,
168 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x80, 0xfd, 0x3a,
169 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
170 + 0x8a, 0x11, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0x8d, 0xfd, 0xbc,
171 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x80, 0xfd, 0x3a,
172 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0xc0, 0x01, 0x32,
173 + 0x38, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x84, 0x82, 0x4d, 0x28, 0x1a,
174 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x60, 0x5f, 0x0a, 0xf6, 0x94,
175 + 0x00, 0x00, 0x4b, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x92,
176 + 0x00, 0x00, 0x62, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x92,
177 + 0x00, 0x00, 0x49, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0e, 0x80, 0x18, 0x92,
178 + 0x00, 0x00, 0xd2, 0x02, 0x00, 0x00, 0x00, 0x00, 0x08, 0xc0, 0x20, 0x92,
179 + 0x00, 0x00, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x21, 0x92,
180 + 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x21, 0x92,
181 + 0x00, 0x00, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x85, 0x21, 0x90,
182 + 0x00, 0x00, 0x4b, 0x03, 0x00, 0x00, 0x00, 0xec, 0x02, 0xc0, 0x22, 0x92,
183 + 0x00, 0x00, 0x43, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
184 + 0x00, 0x00, 0x51, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x40, 0x18, 0x9d,
185 + 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x92,
186 + 0x00, 0x00, 0x8b, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
187 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
188 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
189 + 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0xc0, 0x21, 0x92,
190 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xe8, 0x02, 0x00, 0x90, 0x72,
191 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xb2, 0x00, 0xe9, 0xb6,
192 + 0x00, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0x7c, 0x1e, 0xc0, 0xe7, 0x9a,
193 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x13, 0x40, 0x01, 0x39,
194 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0x08, 0xb8, 0x01, 0x00, 0x94,
195 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb3, 0x40, 0x01, 0x39,
196 + 0x00, 0x00, 0xb0, 0x03, 0xb2, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
197 + 0x00, 0x00, 0x8a, 0x11, 0x17, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
198 + 0x00, 0x00, 0x69, 0x05, 0x00, 0x10, 0x01, 0xf8, 0x02, 0x00, 0x6e, 0x92,
199 + 0x00, 0x00, 0x8a, 0x11, 0x0a, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00, 0xb2,
200 + 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
201 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x18, 0xd2,
202 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x01, 0x00, 0x2b, 0x32,
203 + 0x00, 0x00, 0x57, 0x00, 0x80, 0x01, 0x00, 0x80, 0x12, 0x81, 0xfc, 0xb6,
204 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x2b, 0xbc,
205 + 0x02, 0x00, 0x57, 0x00, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
206 + 0x00, 0x00, 0x5a, 0x00, 0x04, 0x01, 0x00, 0x80, 0x02, 0xc0, 0xb0, 0xbc,
207 + 0x00, 0x00, 0x60, 0x00, 0xa0, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
208 + 0x00, 0x00, 0x5c, 0x00, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x4a, 0xd0, 0xb6,
209 + 0x00, 0x00, 0x60, 0x00, 0xa0, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
210 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x34,
211 + 0x00, 0x00, 0xfa, 0x0f, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xd2,
212 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
213 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
214 + 0x00, 0x00, 0x54, 0x00, 0x03, 0x01, 0x00, 0xb0, 0x02, 0x40, 0x18, 0xbd,
215 + 0x08, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0xf8, 0xa3, 0x40, 0x01, 0x99,
216 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x16, 0x32,
217 + 0x00, 0x00, 0x67, 0x00, 0x03, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x80, 0xbd,
218 + 0x00, 0x00, 0x76, 0x00, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
219 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0x39,
220 + 0x76, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
221 + 0x00, 0x00, 0x6b, 0x00, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x22, 0xb2,
222 + 0x00, 0x00, 0x65, 0x00, 0x04, 0x01, 0x00, 0x80, 0x82, 0x85, 0x80, 0xbc,
223 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
224 + 0x63, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
225 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x68, 0x8b, 0x80, 0x35,
226 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xb8, 0xff, 0x85, 0x30,
227 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x21, 0xff, 0x38,
228 + 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x4d, 0x80, 0x3a,
229 + 0x2c, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x0d, 0x80, 0x3a,
230 + 0x00, 0xc4, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
231 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x54, 0xf2, 0xc1, 0x38, 0xb4,
232 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x12, 0x80, 0x2d, 0x37,
233 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x48, 0x41, 0x80, 0x3a,
234 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x86, 0x98, 0x67, 0xc0, 0x82, 0x3a,
235 + 0x00, 0x00, 0x63, 0x00, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
236 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x62, 0x8b, 0x80, 0xb6,
237 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x12, 0x80, 0x2d, 0x37,
238 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x08, 0x80, 0x70, 0x32,
239 + 0x00, 0x00, 0x7c, 0x00, 0x90, 0x99, 0x86, 0x2c, 0x28, 0xde, 0x82, 0xba,
240 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x18, 0xc0, 0x82, 0x3a,
241 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x08, 0xc5, 0x82, 0x30,
242 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0xc5, 0x82, 0xbc,
243 + 0x00, 0x00, 0x63, 0x00, 0x00, 0x00, 0x00, 0x08, 0x68, 0x8b, 0x80, 0x94,
244 + 0x08, 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x40, 0x01, 0x99,
245 + 0x08, 0x00, 0x38, 0x03, 0x0c, 0x00, 0x00, 0xf8, 0x53, 0x40, 0x01, 0xb9,
246 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x05, 0x80, 0x30,
247 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
248 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x3d, 0x32,
249 + 0x00, 0x00, 0x7e, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
250 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00, 0x32,
251 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
252 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x59, 0x00, 0x80, 0xd7,
253 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x62, 0x80, 0x2f, 0xb6,
254 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0x3a, 0x80, 0xbc,
255 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0x3a, 0x80, 0xbc,
256 + 0x00, 0x90, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x0d, 0x80, 0xb0,
257 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
258 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x32,
259 + 0x02, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0x0d, 0x80, 0x32,
260 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x54, 0x02, 0xa4, 0x38, 0xb2,
261 + 0x00, 0x02, 0x00, 0x80, 0x00, 0x00, 0x00, 0x2c, 0x08, 0x00, 0x37, 0x32,
262 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
263 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x04, 0x08, 0x80, 0x72, 0x32,
264 + 0x00, 0x00, 0x96, 0x00, 0x9f, 0x00, 0x00, 0x5c, 0x08, 0x00, 0x72, 0xb2,
265 + 0x87, 0x00, 0x95, 0x00, 0x80, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x85, 0xb0,
266 + 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xd8, 0xc1, 0x82, 0x94,
267 + 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x88, 0xc1, 0x82, 0x94,
268 + 0x00, 0x00, 0x9e, 0x00, 0x06, 0x00, 0x00, 0x80, 0x52, 0x7d, 0x80, 0xbc,
269 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
270 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0x05, 0x80, 0xb0,
271 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x3a,
272 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
273 + 0x00, 0x00, 0xa4, 0x03, 0x04, 0x00, 0x00, 0xdc, 0x43, 0x60, 0x3d, 0xb3,
274 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
275 + 0x9a, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
276 + 0x00, 0x0f, 0x97, 0x00, 0x04, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x85, 0xb0,
277 + 0x10, 0x00, 0xa5, 0x00, 0x87, 0x00, 0x00, 0x78, 0x79, 0x21, 0x16, 0xb8,
278 + 0x01, 0x00, 0xa5, 0x00, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
279 + 0x87, 0x00, 0xaf, 0x00, 0x87, 0x00, 0x00, 0x78, 0x89, 0xcd, 0x85, 0xb0,
280 + 0x00, 0x00, 0xa4, 0x00, 0x04, 0x01, 0x00, 0x80, 0x12, 0x80, 0x97, 0xbc,
281 + 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xd8, 0xc1, 0x82, 0x94,
282 + 0x00, 0x00, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x88, 0xc1, 0x82, 0x94,
283 + 0x00, 0x00, 0xaf, 0x00, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc0, 0x85, 0xb6,
284 + 0x00, 0x00, 0xaf, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x98, 0xc1, 0x82, 0x94,
285 + 0x00, 0x00, 0xad, 0x00, 0x80, 0x01, 0x00, 0x80, 0xd2, 0xc1, 0x82, 0xb6,
286 + 0x00, 0x00, 0xaf, 0x00, 0x80, 0x01, 0x00, 0x80, 0x72, 0x80, 0xfc, 0xb6,
287 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0xa8, 0x42, 0x3d, 0x72, 0x30,
288 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x18, 0x99, 0xb1, 0xf2, 0xc0, 0x7c, 0x30,
289 + 0x00, 0x00, 0xd6, 0x00, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
290 + 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
291 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0xc1, 0x82, 0xb6,
292 + 0x00, 0x00, 0xa9, 0x00, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0xfc, 0xb6,
293 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
294 + 0x80, 0x00, 0x80, 0x20, 0x00, 0x00, 0x00, 0x80, 0xc2, 0xcd, 0x85, 0x30,
295 + 0x00, 0x00, 0xc6, 0x00, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
296 + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0xcd, 0x85, 0x30,
297 + 0x80, 0x00, 0xc6, 0x00, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
298 + 0xa0, 0x00, 0xc6, 0x00, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
299 + 0x00, 0x00, 0xbd, 0x00, 0x80, 0x01, 0x00, 0x80, 0x62, 0x80, 0xfc, 0xb6,
300 + 0x87, 0x00, 0xbd, 0x00, 0x87, 0x00, 0x00, 0x78, 0x89, 0xcd, 0x85, 0xb0,
301 + 0x00, 0x00, 0xb9, 0x00, 0x04, 0x00, 0x00, 0x80, 0x12, 0x80, 0x97, 0xbc,
302 + 0x00, 0x00, 0xbd, 0x00, 0x04, 0x01, 0x00, 0x80, 0x22, 0x80, 0x97, 0xbc,
303 + 0x00, 0x00, 0xbd, 0x00, 0x80, 0x01, 0x00, 0x80, 0x72, 0xc1, 0x85, 0xb6,
304 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x61, 0x16, 0x38,
305 + 0x00, 0x00, 0xc4, 0x00, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
306 + 0x00, 0x00, 0xd6, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xb8, 0xc1, 0x82, 0x94,
307 + 0x00, 0x00, 0xc4, 0x00, 0x80, 0x01, 0x00, 0x80, 0x52, 0x80, 0xfc, 0xb6,
308 + 0x00, 0x00, 0xc4, 0x00, 0x80, 0x00, 0x00, 0x80, 0x72, 0xc1, 0x85, 0xb6,
309 + 0x00, 0x00, 0xc4, 0x00, 0x80, 0x01, 0x00, 0x80, 0x02, 0xc1, 0x85, 0xb6,
310 + 0x00, 0x00, 0xc4, 0x00, 0x80, 0x01, 0x00, 0x80, 0xd2, 0xc1, 0x85, 0xb6,
311 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0xe1, 0x16, 0x38,
312 + 0x00, 0x00, 0xc4, 0x00, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
313 + 0x00, 0x00, 0xd6, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xc8, 0xc1, 0x82, 0x94,
314 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x08, 0x00, 0x04, 0x32,
315 + 0x00, 0x00, 0xd6, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xa8, 0xc1, 0x82, 0x94,
316 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x21, 0x17, 0x38,
317 + 0x00, 0x00, 0xd6, 0x00, 0x04, 0x00, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
318 + 0x00, 0x00, 0xd6, 0x00, 0x04, 0x01, 0x00, 0x80, 0x22, 0x80, 0x97, 0xbc,
319 + 0x1f, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x08, 0x89, 0x8d, 0x72, 0x30,
320 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x00, 0x00, 0xa9, 0xdc, 0x17, 0x38,
321 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x22, 0x00, 0x90, 0x37,
322 + 0x00, 0x00, 0xd6, 0x00, 0x80, 0x00, 0x86, 0x80, 0x22, 0x24, 0x7c, 0xb6,
323 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x05, 0x80, 0x30,
324 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
325 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
326 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
327 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0x05, 0x80, 0xb0,
328 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
329 + 0x00, 0x00, 0xa4, 0x03, 0x04, 0x00, 0x00, 0xdc, 0x43, 0x60, 0x3d, 0xb3,
330 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
331 + 0xd2, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
332 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
333 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x59, 0x00, 0x80, 0xd7,
334 + 0x00, 0x00, 0xdd, 0x00, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
335 + 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
336 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
337 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
338 + 0x00, 0x00, 0xcd, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x9a,
339 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
340 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
341 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
342 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
343 + 0x00, 0x00, 0xe4, 0x00, 0x04, 0x00, 0x00, 0xdc, 0x43, 0x60, 0x3d, 0xb3,
344 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
345 + 0xe0, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
346 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x32,
347 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
348 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x32,
349 + 0x00, 0xc0, 0xf4, 0x00, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
350 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
351 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x3a,
352 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
353 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0x32,
354 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0x32,
355 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x02, 0x00, 0x86, 0x32,
356 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x05, 0x80, 0x30,
357 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
358 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
359 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
360 + 0x00, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x68, 0x02, 0x05, 0x80, 0xb0,
361 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
362 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x78, 0x09, 0x00, 0x72, 0x32,
363 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0x00, 0x29, 0xc1, 0x72, 0x3c,
364 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x81, 0x32,
365 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x07, 0x00, 0x82, 0x32,
366 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x07, 0x80, 0x97, 0x32,
367 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x17, 0x20, 0x90, 0x39,
368 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x07, 0xc0, 0x82, 0x32,
369 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
370 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
371 + 0x00, 0x00, 0xff, 0x00, 0x80, 0x01, 0x00, 0x80, 0xa2, 0xc1, 0x82, 0xb6,
372 + 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x00, 0x00, 0x57, 0x00, 0x80, 0x97,
373 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0xa0, 0x04, 0x39,
374 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x40, 0x82, 0xb2,
375 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x86, 0x32,
376 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
377 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
378 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0x05, 0x80, 0xb0,
379 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
380 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x05, 0x80, 0x30,
381 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
382 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
383 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
384 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0x08, 0xe8, 0x81, 0x80, 0x34,
385 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
386 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x45, 0x90, 0x30,
387 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x12, 0x00, 0x28, 0xbc,
388 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
389 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
390 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
391 + 0x00, 0x00, 0x11, 0x01, 0xf0, 0x01, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
392 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x59, 0xc0, 0x6e, 0x37,
393 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x78, 0x19, 0xc0, 0x6e, 0x3a,
394 + 0x00, 0x00, 0x00, 0x00, 0x4e, 0x04, 0x01, 0xec, 0x06, 0xbd, 0x97, 0x30,
395 + 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0xf4, 0x1e, 0x40, 0xef, 0x3a,
396 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x09, 0x32,
397 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x36, 0xbc,
398 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x77, 0xc0, 0x29, 0x37,
399 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x17, 0x3d, 0x90, 0xba,
400 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0xf4, 0x32,
401 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
402 + 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
403 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x83, 0xd2,
404 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x72, 0x00, 0x2b, 0x30,
405 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x3d, 0x32,
406 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
407 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x32,
408 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
409 + 0x00, 0x00, 0xa4, 0x01, 0x80, 0x38, 0x00, 0x80, 0x22, 0xc0, 0x72, 0xb6,
410 + 0x00, 0x00, 0x27, 0x01, 0x12, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
411 + 0x00, 0x00, 0x2c, 0x01, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
412 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x02, 0x80, 0x2c, 0xb2,
413 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x1f, 0x80, 0xff, 0x3a,
414 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x72, 0x00, 0x85, 0x30,
415 + 0x00, 0x00, 0x89, 0x01, 0x04, 0x00, 0x00, 0xdc, 0x43, 0x60, 0x3d, 0xb3,
416 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
417 + 0x28, 0x01, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
418 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xcd, 0x85, 0x37,
419 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, 0x72, 0x32,
420 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x24, 0x08, 0x00, 0x72, 0x32,
421 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x6c, 0x08, 0x00, 0x72, 0xb2,
422 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x72, 0x32,
423 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x00, 0x18, 0x08, 0x00, 0x72, 0xb2,
424 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x28, 0x08, 0x00, 0x72, 0x32,
425 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x80, 0x52, 0xbd, 0x82, 0xbc,
426 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x30, 0x08, 0x00, 0x72, 0x32,
427 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x08, 0x80, 0x82, 0x32,
428 + 0x00, 0x00, 0x3d, 0x01, 0x06, 0x00, 0x00, 0x80, 0x62, 0xa0, 0x82, 0xbc,
429 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x3c, 0x00, 0x14, 0x28, 0x80, 0x72, 0xbc,
430 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x06, 0x32,
431 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x77, 0x4a, 0x09, 0x39,
432 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x00, 0x82, 0xb2,
433 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x19, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
434 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
435 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
436 + 0x00, 0x00, 0x64, 0x01, 0x04, 0x38, 0x00, 0x78, 0xd9, 0xc5, 0x72, 0xb0,
437 + 0x00, 0x00, 0x41, 0x01, 0x80, 0x01, 0x00, 0x80, 0x02, 0x80, 0x97, 0xb6,
438 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x82, 0x80, 0x2f, 0x34,
439 + 0x00, 0x00, 0x43, 0x01, 0x80, 0x01, 0x00, 0x80, 0x12, 0x80, 0x97, 0xb6,
440 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x92, 0x80, 0x2f, 0x34,
441 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
442 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x3c, 0xb8, 0x1c, 0x17, 0x38,
443 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x28, 0xc0, 0x83, 0x37,
444 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x2c, 0x08, 0xc0, 0x72, 0x32,
445 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xb8, 0xe0, 0x83, 0x3a,
446 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x29, 0x00, 0x20, 0x07, 0x00, 0x00, 0x32,
447 + 0x00, 0x00, 0x63, 0x01, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x81, 0xbc,
448 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x78, 0xa0, 0x81, 0x3e,
449 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xd8, 0xe0, 0x81, 0x3c,
450 + 0x00, 0x00, 0x51, 0x01, 0x06, 0x3a, 0x00, 0x80, 0xb2, 0x5c, 0x83, 0xbc,
451 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x00, 0x89, 0xc1, 0x72, 0x37,
452 + 0x07, 0x00, 0x50, 0x01, 0x2b, 0x01, 0x00, 0x04, 0x79, 0x0a, 0x04, 0xb9,
453 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x00, 0x00, 0x04, 0x19, 0x41, 0x90, 0x34,
454 + 0x00, 0x00, 0x54, 0x01, 0x00, 0x3a, 0x00, 0x2c, 0x07, 0x00, 0x00, 0x92,
455 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3a, 0x00, 0x2c, 0xd7, 0xe0, 0x72, 0x3c,
456 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
457 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x00, 0x00, 0x32,
458 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x64, 0x83, 0x32,
459 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
460 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0xb2,
461 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
462 + 0x00, 0x00, 0x73, 0x01, 0x04, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0xbc,
463 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
464 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x20, 0x80, 0x3a,
465 + 0x00, 0x00, 0x5e, 0x01, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
466 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
467 + 0x00, 0x00, 0x5f, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
468 + 0x00, 0x00, 0xd7, 0x10, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x41, 0x90, 0xf4,
469 + 0x00, 0x00, 0x61, 0x01, 0x04, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0xbc,
470 + 0x00, 0x00, 0x49, 0x01, 0x00, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0x9a,
471 + 0x00, 0x00, 0x84, 0x10, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
472 + 0x00, 0x00, 0x49, 0x01, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x92,
473 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x19, 0x00, 0x20, 0x07, 0x00, 0x00, 0x32,
474 + 0x07, 0x00, 0x66, 0x01, 0x2b, 0x01, 0x00, 0x04, 0x79, 0x0a, 0x02, 0xb9,
475 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x00, 0x00, 0x04, 0x19, 0x41, 0x90, 0x34,
476 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0xa7, 0xa0, 0x81, 0x3e,
477 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
478 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0xb2,
479 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
480 + 0x00, 0x00, 0x73, 0x01, 0x04, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0xbc,
481 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x62, 0x60, 0x83, 0xbc,
482 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x20, 0x80, 0x3a,
483 + 0x00, 0x00, 0x70, 0x01, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
484 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
485 + 0x00, 0x00, 0x71, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
486 + 0x00, 0x00, 0xd7, 0x10, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x41, 0x90, 0xf4,
487 + 0x00, 0x00, 0x84, 0x10, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
488 + 0x00, 0x00, 0x64, 0x01, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x92,
489 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
490 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x41, 0x90, 0x34,
491 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
492 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
493 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
494 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x04, 0x09, 0x80, 0x73, 0x32,
495 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x08, 0x89, 0x80, 0x73, 0x37,
496 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x07, 0x00, 0x86, 0x32,
497 + 0x41, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x8c, 0x07, 0x00, 0x36, 0x32,
498 + 0x00, 0x00, 0x7f, 0x01, 0x29, 0x08, 0x00, 0x80, 0x07, 0xc0, 0x85, 0xb2,
499 + 0x00, 0x00, 0x82, 0x01, 0x28, 0x10, 0x00, 0x8c, 0x07, 0x00, 0x00, 0xb2,
500 + 0x00, 0x00, 0x83, 0x01, 0x00, 0x12, 0x00, 0x84, 0x07, 0x00, 0x00, 0x92,
501 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x8c, 0xf7, 0xe0, 0x82, 0x3a,
502 + 0x00, 0x00, 0x82, 0x01, 0x28, 0x18, 0x00, 0x80, 0x07, 0x40, 0x90, 0xb2,
503 + 0x00, 0x00, 0x83, 0x01, 0x00, 0x12, 0x00, 0x84, 0x07, 0x00, 0x00, 0x92,
504 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x84, 0x27, 0xe4, 0x82, 0x32,
505 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x72, 0x00, 0x85, 0x30,
506 + 0x00, 0x00, 0x87, 0x01, 0x04, 0x00, 0x00, 0xdc, 0x43, 0x60, 0x3d, 0xb3,
507 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
508 + 0x83, 0x01, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
509 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x32,
510 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x52, 0x81, 0x2c, 0xb4,
511 + 0x00, 0x00, 0x89, 0x01, 0xf2, 0x01, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xb4,
512 + 0x00, 0x00, 0x8a, 0x01, 0xf0, 0x01, 0x00, 0x08, 0x38, 0x81, 0x80, 0xb4,
513 + 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0xf4, 0x1e, 0x40, 0xef, 0x3c,
514 + 0x00, 0x00, 0x93, 0x01, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
515 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x3b, 0x32,
516 + 0x00, 0x00, 0x8e, 0x01, 0xb9, 0x00, 0x00, 0x78, 0xc9, 0x3b, 0x3a, 0xbc,
517 + 0x00, 0x00, 0x92, 0x01, 0x02, 0x00, 0x00, 0x80, 0x82, 0x80, 0x97, 0xbc,
518 + 0x00, 0x00, 0x00, 0x00, 0xa9, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x32,
519 + 0x00, 0x00, 0xa4, 0x03, 0xe2, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
520 + 0x00, 0x00, 0x00, 0x00, 0xa9, 0x00, 0x00, 0xf0, 0x0e, 0x00, 0x3a, 0x32,
521 + 0x00, 0x00, 0x00, 0x00, 0xe2, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
522 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xba, 0x83, 0x3c,
523 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xbd, 0x97, 0x30,
524 + 0x00, 0x00, 0x8a, 0x11, 0x03, 0x00, 0x00, 0x00, 0x09, 0x00, 0xf4, 0xbd,
525 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x97, 0xb6,
526 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0e, 0x80, 0x83, 0x32,
527 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x22, 0x7a, 0xe8, 0xba,
528 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0xe8, 0x32,
529 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79, 0xc0, 0x29, 0x37,
530 + 0x60, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x0d, 0x90, 0x3a,
531 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x3a,
532 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x01, 0x32,
533 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x90, 0x32,
534 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0xe8, 0x32,
535 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0xe8, 0x32,
536 + 0x00, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0xb4,
537 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
538 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
539 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
540 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2f, 0xb6,
541 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x78, 0x08, 0x80, 0x72, 0x32,
542 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x54, 0xa8, 0x5c, 0x16, 0x38,
543 + 0x0b, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x2c, 0xa8, 0xdc, 0x16, 0x38,
544 + 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x88, 0x4d, 0x85, 0x3a,
545 + 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
546 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x38, 0x00, 0x14, 0xa9, 0x9c, 0x87, 0xd9,
547 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0x00, 0x72, 0x32,
548 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x24, 0x08, 0x00, 0x72, 0x32,
549 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x6c, 0x08, 0x00, 0x72, 0x32,
550 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x72, 0x32,
551 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x00, 0x18, 0x08, 0x00, 0x72, 0xb2,
552 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x30, 0x08, 0x00, 0x72, 0x32,
553 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x3c, 0x00, 0x14, 0x18, 0x80, 0x72, 0xbc,
554 + 0x00, 0x00, 0xbb, 0x01, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x81, 0xbc,
555 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3c,
556 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x06, 0x32,
557 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x77, 0x4a, 0x09, 0x39,
558 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x00, 0x82, 0xb2,
559 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x19, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
560 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
561 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
562 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x78, 0xc0, 0x29, 0x37,
563 + 0x02, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x88, 0x4d, 0x86, 0x3a,
564 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x08, 0x00, 0x00, 0x32,
565 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, 0x00, 0x32,
566 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x77, 0xa0, 0x81, 0x3e,
567 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x40, 0x86, 0x32,
568 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0xb2,
569 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
570 + 0x00, 0x00, 0xd6, 0x01, 0x04, 0x00, 0x00, 0x1c, 0xd8, 0xe0, 0x81, 0xbc,
571 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
572 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0xd8, 0x60, 0x86, 0x3a,
573 + 0x00, 0x00, 0xca, 0x01, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
574 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0x02, 0xc0, 0x38, 0xb2,
575 + 0x00, 0x00, 0xd2, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
576 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
577 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
578 + 0x00, 0x00, 0xd0, 0x01, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
579 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
580 + 0x00, 0x00, 0xcb, 0x01, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
581 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
582 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
583 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
584 + 0x00, 0x00, 0xd4, 0x01, 0x04, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0xbc,
585 + 0x00, 0x00, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0x9a,
586 + 0x00, 0x00, 0x32, 0x0f, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
587 + 0x00, 0x00, 0xc0, 0x01, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x92,
588 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
589 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
590 + 0x00, 0x00, 0xdc, 0x01, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
591 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
592 + 0x00, 0x00, 0xd7, 0x01, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
593 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
594 + 0x00, 0x00, 0xe8, 0x01, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x84, 0xbc,
595 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x40, 0x00, 0x32,
596 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x22, 0x40, 0x85, 0x3a,
597 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x40, 0x88, 0xcd, 0x74, 0x36,
598 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x28, 0x00, 0x84, 0x37,
599 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x32,
600 + 0x14, 0x00, 0xe8, 0x01, 0x04, 0x00, 0x00, 0x1c, 0x88, 0x0d, 0x84, 0xbc,
601 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
602 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x61, 0x85, 0x3a,
603 + 0x80, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
604 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0xd8, 0x60, 0x86, 0x3a,
605 + 0x00, 0x00, 0xd2, 0x01, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x92,
606 + 0x00, 0x00, 0xea, 0x01, 0x04, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0xbc,
607 + 0x00, 0x00, 0xec, 0x01, 0x00, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0x9a,
608 + 0x00, 0x00, 0x32, 0x0f, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
609 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x32,
610 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x40, 0x00, 0x32,
611 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x22, 0xc0, 0x82, 0x3a,
612 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xb8, 0x60, 0x85, 0x3c,
613 + 0x04, 0x00, 0xf2, 0x01, 0x81, 0x00, 0x00, 0x60, 0x88, 0xcd, 0x74, 0xb6,
614 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x28, 0xf8, 0xa0, 0x75, 0x3c,
615 + 0x00, 0x00, 0xf3, 0x01, 0x00, 0x08, 0x00, 0x74, 0x08, 0x80, 0x75, 0x92,
616 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x28, 0xf8, 0xa0, 0x75, 0x3c,
617 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x08, 0xa1, 0x82, 0x3c,
618 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0xf2, 0x60, 0x2a, 0x3a,
619 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x48, 0x08, 0x00, 0x75, 0x32,
620 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x7c, 0x08, 0x80, 0x75, 0x32,
621 + 0x09, 0x00, 0xf9, 0x01, 0x04, 0x1a, 0x00, 0x70, 0x88, 0xcd, 0x74, 0xb0,
622 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x4c, 0x87, 0xcd, 0x74, 0x31,
623 + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x88, 0x4d, 0x86, 0x31,
624 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x28, 0x40, 0x86, 0x3a,
625 + 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
626 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x82, 0xd2,
627 + 0x00, 0x00, 0x00, 0x02, 0x12, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
628 + 0x00, 0x00, 0x01, 0x02, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
629 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x02, 0x80, 0x2c, 0xb2,
630 + 0x00, 0x00, 0x27, 0x01, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x92,
631 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x40, 0x00, 0x32,
632 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xcd, 0x85, 0x37,
633 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xe8, 0xa1, 0x82, 0x3e,
634 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x22, 0xc0, 0x82, 0x3a,
635 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x08, 0xe1, 0x81, 0x3a,
636 + 0x00, 0x00, 0x0b, 0x02, 0x04, 0x01, 0x00, 0x80, 0x42, 0x00, 0x86, 0xbc,
637 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x58, 0x07, 0x40, 0x87, 0x32,
638 + 0x00, 0x00, 0x0a, 0x02, 0x8f, 0x01, 0x00, 0x74, 0x18, 0x40, 0x87, 0xba,
639 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x08, 0x00, 0x00, 0x32,
640 + 0x00, 0x00, 0x0d, 0x02, 0x00, 0x04, 0x00, 0x58, 0xf7, 0xa0, 0x86, 0x9a,
641 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf9, 0xa0, 0x86, 0x3a,
642 + 0x28, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x58, 0x87, 0x8d, 0x97, 0x3c,
643 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x22, 0x40, 0x85, 0x3a,
644 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x50, 0x07, 0x80, 0x84, 0x32,
645 + 0x00, 0x00, 0x11, 0x02, 0x04, 0x01, 0x00, 0x80, 0x72, 0xa0, 0x82, 0xbc,
646 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x4c, 0xc7, 0xe1, 0x74, 0x32,
647 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x78, 0xa0, 0x84, 0x3a,
648 + 0x00, 0x00, 0x14, 0x02, 0x90, 0x01, 0x00, 0x78, 0xf9, 0xa1, 0x86, 0xba,
649 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x19, 0x80, 0x97, 0x3a,
650 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x58, 0x07, 0x80, 0x97, 0x32,
651 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x58, 0xa1, 0x86, 0x3a,
652 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
653 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb7, 0x60, 0x85, 0x39,
654 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
655 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x86, 0x32,
656 + 0x00, 0x00, 0x1a, 0x02, 0x12, 0x00, 0x00, 0x4c, 0x02, 0xc0, 0x38, 0xb2,
657 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x00, 0x32,
658 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x84, 0x32,
659 + 0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, 0x00, 0x57, 0x21, 0x80, 0x3a,
660 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x57, 0x61, 0x86, 0x3a,
661 + 0x00, 0x00, 0x1f, 0x02, 0x12, 0x00, 0x00, 0x4c, 0xf2, 0xc1, 0x38, 0xb4,
662 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x08, 0x80, 0x00, 0x32,
663 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0xc0, 0x00, 0x32,
664 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x32,
665 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x19, 0x00, 0x20, 0x07, 0x00, 0x00, 0x32,
666 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x21, 0x80, 0x3a,
667 + 0x07, 0x00, 0x27, 0x02, 0x2b, 0x01, 0x00, 0x04, 0x79, 0x0a, 0x02, 0xb9,
668 + 0x00, 0x00, 0x00, 0x00, 0xcb, 0x00, 0x00, 0x04, 0x19, 0x41, 0x90, 0x34,
669 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x77, 0xa0, 0x81, 0x3e,
670 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
671 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0xb2,
672 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
673 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0x3c,
674 + 0x00, 0x00, 0x41, 0x02, 0x04, 0x00, 0x00, 0x1c, 0xd8, 0xe0, 0x81, 0xbc,
675 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x62, 0x60, 0x83, 0xbc,
676 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x20, 0x80, 0x3a,
677 + 0x00, 0x00, 0x32, 0x02, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
678 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
679 + 0x00, 0x00, 0x3f, 0x02, 0x00, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
680 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x41, 0x90, 0x34,
681 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
682 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
683 + 0x00, 0x00, 0x3d, 0x02, 0x06, 0x01, 0x00, 0x80, 0x22, 0x80, 0x2d, 0xbc,
684 + 0x00, 0x00, 0x3a, 0x02, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
685 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
686 + 0x00, 0x00, 0x34, 0x02, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
687 + 0x00, 0x00, 0x35, 0x02, 0x00, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0x92,
688 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x22, 0x80, 0x2d, 0xbc,
689 + 0x00, 0x00, 0x34, 0x02, 0x67, 0x00, 0x00, 0x80, 0x18, 0x00, 0x88, 0xbc,
690 + 0x00, 0x00, 0x35, 0x02, 0x00, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0x92,
691 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
692 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0xc0, 0x00, 0x32,
693 + 0x00, 0x00, 0x32, 0x0f, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
694 + 0x00, 0x00, 0x25, 0x02, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x92,
695 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xf9, 0x41, 0x90, 0x34,
696 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
697 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
698 + 0x00, 0x00, 0x48, 0x02, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
699 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
700 + 0x00, 0x00, 0x43, 0x02, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
701 + 0x00, 0x00, 0x44, 0x02, 0x00, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0x92,
702 + 0x00, 0x00, 0x4b, 0x02, 0x04, 0x00, 0x00, 0x80, 0x18, 0x00, 0x88, 0xbc,
703 + 0x00, 0x00, 0x43, 0x02, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
704 + 0x00, 0x00, 0x44, 0x02, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
705 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
706 + 0x00, 0x00, 0x4f, 0x02, 0x04, 0x01, 0x00, 0x80, 0x42, 0x00, 0x86, 0xbc,
707 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
708 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x89, 0x80, 0x71, 0x37,
709 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x00, 0x32,
710 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x80, 0x71, 0x32,
711 + 0x00, 0x00, 0x53, 0x02, 0x90, 0x19, 0x00, 0x04, 0xe9, 0x5c, 0x90, 0xba,
712 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x19, 0x40, 0x90, 0x3a,
713 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x07, 0x80, 0x86, 0x32,
714 + 0x41, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x8c, 0x07, 0x00, 0x36, 0x32,
715 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x80, 0x07, 0xc0, 0x85, 0x32,
716 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x8c, 0x07, 0x40, 0x85, 0x32,
717 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x80, 0x07, 0x45, 0x90, 0x30,
718 + 0x00, 0x00, 0x5a, 0x02, 0x04, 0x01, 0x00, 0x80, 0x42, 0x00, 0x86, 0xbc,
719 + 0x00, 0x00, 0x5b, 0x02, 0x00, 0x12, 0x00, 0x84, 0x27, 0xe4, 0x82, 0x92,
720 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x00, 0x84, 0x07, 0x00, 0x00, 0x32,
721 + 0x00, 0x00, 0x5f, 0x02, 0x27, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0xb2,
722 + 0x00, 0x00, 0x5f, 0x02, 0x04, 0x00, 0x00, 0x80, 0x42, 0x60, 0x3d, 0xb3,
723 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
724 + 0x5b, 0x02, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
725 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x80, 0x2f, 0x34,
726 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x52, 0x81, 0x2c, 0xb4,
727 + 0x00, 0x00, 0x64, 0x02, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x82, 0xbc,
728 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x03, 0x00, 0x00, 0x32,
729 + 0x00, 0x00, 0x89, 0x01, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x92,
730 + 0x00, 0x00, 0x67, 0x02, 0x04, 0x01, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0xbc,
731 + 0x00, 0x00, 0x32, 0x0f, 0x00, 0x00, 0x00, 0x44, 0x08, 0x80, 0x2d, 0xf2,
732 + 0x00, 0x00, 0xfd, 0x01, 0x00, 0x00, 0x00, 0x30, 0x08, 0x00, 0x00, 0x92,
733 + 0x00, 0x00, 0xfd, 0x01, 0x00, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0x9a,
734 + 0x08, 0x00, 0x00, 0x00, 0xc6, 0x01, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
735 + 0x19, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
736 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x81, 0xd2,
737 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x08, 0x45, 0x81, 0x30,
738 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
739 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
740 + 0x00, 0x00, 0xa4, 0x03, 0x80, 0x01, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
741 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x38, 0xf2,
742 + 0x00, 0x00, 0x72, 0x02, 0x04, 0x06, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
743 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x06, 0x01, 0xec, 0x56, 0xe0, 0x6e, 0x9a,
744 + 0x00, 0x00, 0x00, 0x00, 0xc4, 0x07, 0x01, 0xec, 0x56, 0xe0, 0x6e, 0x3a,
745 + 0x08, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
746 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
747 + 0x00, 0x00, 0x8a, 0x11, 0x03, 0xb8, 0x00, 0x00, 0x09, 0xc0, 0x6e, 0xbd,
748 + 0x77, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0x0d, 0x90, 0x3a,
749 + 0x2e, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
750 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
751 + 0x2b, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
752 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
753 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
754 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
755 + 0x37, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
756 + 0x38, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
757 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
758 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
759 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
760 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
761 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x38, 0xf2,
762 + 0x00, 0x00, 0x86, 0x02, 0x04, 0x00, 0x00, 0x80, 0x52, 0x40, 0x82, 0xbc,
763 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x62, 0x40, 0x82, 0xbc,
764 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x05, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
765 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x34,
766 + 0x08, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
767 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
768 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
769 + 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
770 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x04, 0x01, 0x14, 0x59, 0xc0, 0x6e, 0xd7,
771 + 0x02, 0x00, 0x8f, 0x02, 0x04, 0xb8, 0x00, 0x80, 0x82, 0xcd, 0x6e, 0xbc,
772 + 0x08, 0x00, 0x8a, 0x11, 0x04, 0xb9, 0x00, 0x80, 0x82, 0xcd, 0x6e, 0xbc,
773 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
774 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0xec, 0x06, 0x40, 0x00, 0x32,
775 + 0x00, 0x00, 0x91, 0x02, 0xb5, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
776 + 0x00, 0x00, 0x00, 0x00, 0xa5, 0x00, 0x80, 0xa0, 0x36, 0x0b, 0x6a, 0x34,
777 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x01, 0xe8, 0x06, 0xc0, 0x2c, 0x32,
778 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
779 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x82, 0x85, 0x2f, 0x30,
780 + 0x00, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
781 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
782 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
783 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
784 + 0x60, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0xb0,
785 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
786 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x81, 0xd2,
787 + 0x00, 0x00, 0xa1, 0x02, 0x80, 0x00, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
788 + 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
789 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0xb8, 0x00, 0x14, 0x09, 0xc0, 0x6e, 0xd2,
790 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
791 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x38, 0x03, 0x00, 0x38, 0xf2,
792 + 0x00, 0x00, 0xa4, 0x02, 0x04, 0x02, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
793 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x02, 0x01, 0xec, 0x56, 0xe0, 0x6e, 0x9a,
794 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x03, 0x01, 0xec, 0x56, 0xe0, 0x6e, 0x3a,
795 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2f, 0xb6,
796 + 0x00, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
797 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
798 + 0x20, 0x00, 0x8a, 0x11, 0x04, 0x39, 0x00, 0x80, 0x82, 0xcd, 0x6e, 0xbc,
799 + 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
800 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x30, 0x00, 0x14, 0x09, 0x00, 0x6e, 0xd2,
801 + 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
802 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x20, 0x01, 0x14, 0x09, 0x00, 0x6e, 0xd2,
803 + 0x1b, 0x00, 0xaf, 0x02, 0x38, 0x01, 0x00, 0x10, 0x09, 0x00, 0x36, 0xb2,
804 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x30, 0x01, 0x14, 0x09, 0x00, 0x6e, 0xd2,
805 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
806 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x79, 0x0b, 0x14, 0x38,
807 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x50, 0x01, 0x14, 0xa9, 0x5b, 0x91, 0xd9,
808 + 0x00, 0x00, 0xbe, 0x02, 0x38, 0x28, 0x00, 0x18, 0x09, 0x00, 0x6e, 0xb2,
809 + 0x00, 0x00, 0xb6, 0x02, 0x04, 0x21, 0x01, 0x08, 0x69, 0x24, 0x6e, 0xbc,
810 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
811 + 0x03, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
812 + 0x00, 0x00, 0xba, 0x02, 0x02, 0x30, 0x00, 0x80, 0x82, 0x9b, 0x90, 0xbc,
813 + 0x00, 0x00, 0xb9, 0x02, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
814 + 0x04, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
815 + 0x05, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
816 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x30, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xb2,
817 + 0x00, 0x00, 0xbd, 0x02, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
818 + 0x0a, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
819 + 0x0b, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
820 + 0x00, 0x00, 0xc1, 0x02, 0x04, 0x21, 0x01, 0x08, 0x69, 0x24, 0x6e, 0xbc,
821 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
822 + 0x03, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
823 + 0x00, 0x00, 0xc3, 0x02, 0x02, 0x30, 0x00, 0x80, 0x82, 0x9b, 0x90, 0xbc,
824 + 0x04, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
825 + 0x00, 0x00, 0xc5, 0x02, 0x9f, 0x31, 0x01, 0x0c, 0x69, 0x24, 0x6e, 0xbc,
826 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x09, 0x00, 0x00, 0x32,
827 + 0x00, 0x00, 0xc9, 0x02, 0x04, 0x31, 0x00, 0x80, 0x82, 0x9b, 0x90, 0xbc,
828 + 0x00, 0x00, 0xc8, 0x02, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
829 + 0x20, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
830 + 0x21, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
831 + 0x00, 0x00, 0xcd, 0x02, 0x04, 0x00, 0x00, 0x80, 0x32, 0xa4, 0x90, 0xbc,
832 + 0x00, 0x00, 0xcc, 0x02, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
833 + 0x22, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
834 + 0x23, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
835 + 0x00, 0x00, 0xcf, 0x02, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
836 + 0x20, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
837 + 0x21, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
838 + 0x08, 0x00, 0x8a, 0x11, 0x0c, 0x00, 0x00, 0xf8, 0x63, 0x40, 0x01, 0xb9,
839 + 0x10, 0x00, 0xd4, 0x02, 0xc5, 0x01, 0x00, 0xcc, 0x02, 0x20, 0x15, 0x98,
840 + 0x08, 0x00, 0x38, 0x03, 0x0c, 0x00, 0x00, 0xf8, 0x43, 0x40, 0x01, 0xb9,
841 + 0x10, 0x00, 0x00, 0x00, 0xc5, 0x01, 0x00, 0xcc, 0x02, 0x20, 0x15, 0x38,
842 + 0x00, 0x00, 0x7e, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
843 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
844 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x59, 0x00, 0x80, 0xd7,
845 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
846 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x38, 0xf2,
847 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x08, 0x05, 0x80, 0x30,
848 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
849 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xfa, 0x85, 0xbc,
850 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xfa, 0x85, 0xbc,
851 + 0x00, 0x00, 0xdf, 0x02, 0x36, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
852 + 0x0e, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
853 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x02, 0x00, 0xa9, 0xdb, 0x85, 0x39,
854 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x54, 0x02, 0xa4, 0x38, 0xb2,
855 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x8c, 0x08, 0xc0, 0x6e, 0x32,
856 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x01, 0x94, 0x08, 0xc0, 0x6e, 0x32,
857 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x98, 0x28, 0x80, 0x6e, 0x37,
858 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x38, 0x22, 0x14, 0x37,
859 + 0x00, 0x00, 0xeb, 0x02, 0x04, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0xb2,
860 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xb2,
861 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
862 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
863 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x14, 0x08, 0x80, 0x6e, 0x32,
864 + 0x05, 0x00, 0xee, 0x02, 0x00, 0x30, 0x02, 0x00, 0x78, 0xe1, 0x6e, 0x99,
865 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
866 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x78, 0x09, 0xc0, 0x6e, 0x32,
867 + 0x05, 0x00, 0x00, 0x00, 0x68, 0x08, 0x00, 0x00, 0x77, 0xa1, 0x97, 0x39,
868 + 0x00, 0x00, 0xf0, 0x02, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
869 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
870 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
871 + 0x14, 0x10, 0xf4, 0x02, 0x04, 0x00, 0x00, 0x80, 0xa2, 0x0d, 0x72, 0xb0,
872 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0x02, 0xf2,
873 + 0x0d, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
874 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x09, 0x00, 0x80, 0x52, 0xbd, 0x72, 0xbc,
875 + 0x00, 0x00, 0xfb, 0x02, 0x33, 0x15, 0x00, 0xa4, 0x02, 0xc0, 0x72, 0xb2,
876 + 0x00, 0x00, 0x33, 0x03, 0x80, 0x01, 0x00, 0x80, 0xb2, 0x01, 0x72, 0xb6,
877 + 0x01, 0x01, 0x08, 0x0a, 0x00, 0x28, 0x00, 0x80, 0xc2, 0x0d, 0x74, 0x3c,
878 + 0x00, 0x00, 0x33, 0x03, 0x0b, 0x31, 0x00, 0x7c, 0x08, 0x00, 0x75, 0xb2,
879 + 0x00, 0x00, 0x33, 0x03, 0x9f, 0xf0, 0x01, 0x80, 0x82, 0xdb, 0x87, 0xbc,
880 + 0x00, 0x00, 0xfc, 0x02, 0x00, 0x38, 0x00, 0x88, 0x18, 0x00, 0x75, 0x9c,
881 + 0x00, 0x00, 0x33, 0x03, 0x80, 0x00, 0x00, 0x80, 0xb2, 0x01, 0x72, 0xb6,
882 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x48, 0x08, 0x00, 0x75, 0x32,
883 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x70, 0x08, 0x00, 0x75, 0x32,
884 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x74, 0x38, 0xa2, 0x75, 0x37,
885 + 0x00, 0x00, 0x01, 0x03, 0x83, 0x1b, 0x00, 0x78, 0x08, 0xc0, 0x74, 0xb2,
886 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xc2, 0x80, 0x2f, 0x34,
887 + 0x00, 0x00, 0xf2, 0x02, 0x80, 0x01, 0x00, 0x80, 0x42, 0x80, 0x87, 0xb6,
888 + 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
889 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x84, 0xd2,
890 + 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
891 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x87, 0xd2,
892 + 0x00, 0x00, 0x15, 0x03, 0x9f, 0x78, 0x01, 0x80, 0xc2, 0x21, 0x6e, 0xbc,
893 + 0x00, 0x00, 0x0a, 0x03, 0x9f, 0x99, 0x01, 0x64, 0x88, 0x1b, 0x87, 0xbc,
894 + 0x00, 0x00, 0x16, 0x03, 0x9f, 0x68, 0x01, 0x64, 0x88, 0x5b, 0x86, 0xba,
895 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x08, 0x00, 0x00, 0x32,
896 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x00, 0xa4, 0x02, 0xc0, 0x72, 0x32,
897 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x02, 0xa4, 0xb2, 0x5b, 0x2a, 0x3a,
898 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0x02, 0x78, 0x09, 0xc0, 0x6e, 0x32,
899 + 0x00, 0x00, 0x17, 0x03, 0x08, 0x01, 0x00, 0x04, 0xe8, 0xa5, 0x75, 0xbc,
900 + 0x0f, 0x00, 0x33, 0x03, 0x0b, 0x01, 0x00, 0x1c, 0x08, 0x00, 0x36, 0xb2,
901 + 0x00, 0x00, 0x15, 0x03, 0x04, 0xa1, 0x01, 0x80, 0x82, 0x9b, 0x84, 0xbc,
902 + 0x00, 0x00, 0x9d, 0x05, 0x9f, 0x98, 0x01, 0x80, 0xc2, 0x21, 0x6e, 0xbc,
903 + 0x00, 0x00, 0x9d, 0x05, 0x06, 0xb1, 0x01, 0x80, 0x82, 0x5b, 0x87, 0xbc,
904 + 0x00, 0x00, 0x32, 0x03, 0x0b, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
905 + 0x00, 0x00, 0x30, 0x03, 0x02, 0xd4, 0x01, 0x80, 0x92, 0xfb, 0x6e, 0xbc,
906 + 0x15, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
907 + 0x16, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
908 + 0x1c, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
909 + 0x08, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x28, 0x72, 0x61, 0x80, 0xb9,
910 + 0x00, 0x00, 0x1a, 0x03, 0x04, 0xa1, 0x01, 0x80, 0x82, 0x9b, 0x84, 0xbc,
911 + 0x00, 0x00, 0x21, 0x03, 0x06, 0xa8, 0x01, 0x80, 0x82, 0x5b, 0x80, 0xbc,
912 + 0x00, 0x00, 0x1e, 0x03, 0x04, 0xa9, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
913 + 0x00, 0x00, 0x31, 0x03, 0x04, 0xa9, 0x01, 0x80, 0x82, 0x9b, 0x84, 0xbc,
914 + 0x00, 0x00, 0x31, 0x03, 0x04, 0x01, 0x00, 0x80, 0x12, 0x40, 0x80, 0xbc,
915 + 0x13, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
916 + 0x00, 0x00, 0x31, 0x03, 0x9f, 0xa0, 0x01, 0x78, 0x29, 0x21, 0x6e, 0xbc,
917 + 0x00, 0x00, 0x31, 0x03, 0x02, 0x01, 0x00, 0x80, 0x12, 0xa0, 0x97, 0xbc,
918 + 0x00, 0x00, 0x15, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
919 + 0x00, 0x00, 0x2c, 0x03, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x82, 0xbc,
920 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x02, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
921 + 0x00, 0x00, 0x27, 0x03, 0x02, 0x00, 0x00, 0x80, 0xa2, 0x60, 0x80, 0xbc,
922 + 0x06, 0x00, 0x9d, 0x05, 0x2c, 0x01, 0x00, 0x1c, 0x08, 0x00, 0x36, 0xb2,
923 + 0x00, 0xc0, 0x29, 0x03, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0xb0,
924 + 0x06, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
925 + 0x00, 0x00, 0x29, 0x03, 0x04, 0x00, 0x00, 0x80, 0xa2, 0x60, 0x80, 0xbc,
926 + 0x09, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
927 + 0x00, 0x00, 0x2b, 0x03, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
928 + 0x07, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
929 + 0x08, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
930 + 0x02, 0x00, 0x9d, 0x05, 0x38, 0x01, 0x00, 0x1c, 0x08, 0x00, 0x36, 0xb2,
931 + 0x00, 0x00, 0x2f, 0x03, 0x02, 0x0c, 0x02, 0x80, 0xa2, 0x5b, 0x80, 0xbc,
932 + 0x1f, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
933 + 0x1e, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
934 + 0x00, 0x00, 0x34, 0x03, 0x00, 0x00, 0x00, 0x28, 0x09, 0x40, 0x00, 0x92,
935 + 0x00, 0x00, 0x34, 0x03, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x00, 0x92,
936 + 0x00, 0x00, 0x34, 0x03, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0x00, 0x92,
937 + 0x00, 0x00, 0x34, 0x03, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x01, 0x92,
938 + 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
939 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x92, 0xd2,
940 + 0x0d, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0xf2,
941 + 0x00, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
942 + 0x10, 0x00, 0x8a, 0x11, 0x2a, 0x00, 0x00, 0xcc, 0x02, 0x20, 0x15, 0xb8,
943 + 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
944 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
945 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
946 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
947 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
948 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
949 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
950 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
951 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
952 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
953 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
954 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
955 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x3c, 0x03, 0x00, 0x38, 0xf2,
956 + 0x1d, 0x00, 0x49, 0x03, 0x80, 0x01, 0x00, 0x78, 0x09, 0xe0, 0x00, 0xb8,
957 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
958 + 0x1d, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
959 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x22, 0x80, 0x97, 0xbc,
960 + 0x14, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
961 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xa8, 0x05, 0x28, 0x30,
962 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x2c, 0xbc,
963 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
964 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
965 + 0x60, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0xb0,
966 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x83, 0x40, 0x01, 0x39,
967 + 0x35, 0x00, 0x54, 0x03, 0x04, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
968 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
969 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x81, 0xd2,
970 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x38, 0x03, 0x00, 0x38, 0xf2,
971 + 0x2b, 0x00, 0x9d, 0x05, 0x02, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
972 + 0x00, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
973 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
974 + 0x00, 0x00, 0x5a, 0x03, 0x1d, 0x41, 0x02, 0x5c, 0xf8, 0x01, 0x68, 0xb4,
975 + 0x41, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0x91,
976 + 0x35, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
977 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x59, 0xc0, 0x85, 0xd7,
978 + 0x10, 0x00, 0x00, 0x00, 0xd0, 0x2c, 0x02, 0x00, 0xa9, 0xdb, 0x85, 0x39,
979 + 0x00, 0x00, 0xe1, 0x02, 0x12, 0x01, 0x00, 0x54, 0x02, 0xa4, 0x38, 0xb2,
980 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
981 + 0x00, 0x00, 0x64, 0x03, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
982 + 0x00, 0x00, 0x60, 0x11, 0x00, 0x78, 0x01, 0x60, 0x08, 0x00, 0x6e, 0xf2,
983 + 0x2f, 0x00, 0x93, 0x05, 0xd7, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
984 + 0x00, 0x00, 0x65, 0x03, 0x06, 0xa9, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xb2,
985 + 0x00, 0x00, 0x6d, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
986 + 0x00, 0x00, 0x70, 0x03, 0x04, 0xa8, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xb2,
987 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0x08, 0x89, 0x9b, 0x90, 0x3e,
988 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x01, 0x08, 0x89, 0x9b, 0x90, 0x3a,
989 + 0x00, 0x00, 0x70, 0x03, 0x9f, 0x88, 0x01, 0x08, 0x89, 0x9b, 0x90, 0xbc,
990 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x04, 0xf9, 0xba, 0x6e, 0x37,
991 + 0x00, 0x00, 0x6c, 0x03, 0x02, 0x00, 0x00, 0x80, 0x12, 0xa4, 0x90, 0xbc,
992 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x19, 0x80, 0x90, 0x37,
993 + 0x00, 0x00, 0x70, 0x03, 0x02, 0x01, 0x02, 0x80, 0x82, 0x9b, 0x90, 0xbc,
994 + 0x30, 0x00, 0x93, 0x05, 0xd7, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
995 + 0x00, 0x00, 0x70, 0x03, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
996 + 0x00, 0x12, 0x70, 0x03, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0xb0,
997 + 0x31, 0x00, 0x93, 0x05, 0xd7, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
998 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x95,
999 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x34,
1000 + 0x08, 0xc0, 0x74, 0x02, 0x12, 0x01, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
1001 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1002 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1003 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
1004 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x81, 0xd2,
1005 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x2c, 0xbc,
1006 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
1007 + 0x60, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0xb0,
1008 + 0x00, 0x00, 0xb0, 0x03, 0x80, 0x01, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
1009 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x90, 0x32,
1010 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x38, 0x03, 0x00, 0x38, 0xf2,
1011 + 0x2b, 0x00, 0x9d, 0x05, 0x02, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
1012 + 0x00, 0x00, 0x93, 0x05, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1013 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1014 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
1015 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x89, 0x4d, 0x81, 0xd7,
1016 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x2c, 0xbc,
1017 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
1018 + 0x60, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0xb0,
1019 + 0x00, 0x00, 0xb0, 0x03, 0x80, 0x01, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
1020 + 0x00, 0x00, 0xdc, 0x0e, 0x00, 0x00, 0x00, 0x38, 0x03, 0x00, 0x38, 0xf2,
1021 + 0x00, 0x00, 0x8a, 0x03, 0x04, 0x20, 0x01, 0x80, 0x52, 0x20, 0x6e, 0xbc,
1022 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
1023 + 0x25, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
1024 + 0x24, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
1025 + 0x00, 0x00, 0x93, 0x03, 0x04, 0x01, 0x00, 0xd8, 0x1e, 0x80, 0xed, 0xbc,
1026 + 0x00, 0x00, 0x8c, 0x03, 0xb7, 0x00, 0x00, 0xd8, 0x0e, 0xc0, 0xed, 0xb2,
1027 + 0x00, 0x00, 0x8f, 0x03, 0x04, 0x01, 0x00, 0x80, 0x42, 0x3b, 0xee, 0xbc,
1028 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x1e, 0x00, 0xee, 0x3a,
1029 + 0x00, 0x00, 0x00, 0x00, 0xa7, 0x00, 0x00, 0xd0, 0x0e, 0x00, 0xee, 0x32,
1030 + 0x00, 0x00, 0x93, 0x03, 0x80, 0x01, 0x00, 0x80, 0x92, 0x80, 0xfc, 0xb6,
1031 + 0x00, 0x00, 0x93, 0x03, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0xfc, 0xb6,
1032 + 0x00, 0x00, 0x93, 0x03, 0x04, 0x01, 0x00, 0xb0, 0x1e, 0x00, 0xeb, 0xbc,
1033 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x86, 0xcc, 0x02, 0x80, 0x6c, 0x32,
1034 + 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x36, 0x32,
1035 + 0x00, 0x00, 0x97, 0x03, 0x80, 0x01, 0x80, 0x80, 0x32, 0x0b, 0x6a, 0xb6,
1036 + 0x35, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
1037 + 0x00, 0x00, 0x99, 0x03, 0x04, 0x01, 0x00, 0x80, 0x42, 0xc5, 0x2c, 0xbc,
1038 + 0x00, 0x00, 0x9a, 0x03, 0x00, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00, 0x92,
1039 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x12, 0xc0, 0x2c, 0x3a,
1040 + 0x00, 0x00, 0x95, 0x03, 0x04, 0x01, 0x00, 0x00, 0x19, 0x00, 0x90, 0xbc,
1041 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x74, 0x86, 0xc8, 0x06, 0xc0, 0x2c, 0x32,
1042 + 0x08, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0xf8, 0xc3, 0x40, 0x01, 0x99,
1043 + 0x00, 0x00, 0x9f, 0x03, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
1044 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x55, 0x01, 0x80, 0xb2, 0x1b, 0x2b, 0xbc,
1045 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0x09, 0x00, 0x00, 0xf2,
1046 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1047 + 0x00, 0x00, 0xa3, 0x03, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
1048 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x55, 0x01, 0x80, 0xb2, 0x1b, 0x2b, 0xbc,
1049 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
1050 + 0x00, 0x00, 0xad, 0x03, 0x04, 0x00, 0x00, 0x28, 0x09, 0x80, 0x80, 0xb2,
1051 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
1052 + 0x00, 0x00, 0xef, 0x0f, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0xd2,
1053 + 0x00, 0x00, 0xad, 0x03, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
1054 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1055 + 0x00, 0x00, 0xb0, 0x03, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
1056 + 0x00, 0x00, 0xb0, 0x03, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
1057 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0x39,
1058 + 0xb0, 0x03, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
1059 + 0x00, 0x00, 0xb0, 0x03, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
1060 + 0x00, 0x00, 0xb0, 0x03, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
1061 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1062 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x00, 0x00, 0x32,
1063 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x02, 0x99,
1064 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1065 + 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1066 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1067 + 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1068 + 0xaa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1069 + 0x09, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1070 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x0f, 0x00, 0x00, 0x32,
1071 + 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1072 + 0x06, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1073 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1074 + 0x08, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1075 + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1076 + 0x05, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1077 + 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1078 + 0x07, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1079 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, 0x32,
1080 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x00, 0x00, 0x32,
1081 + 0x00, 0x00, 0xc2, 0x03, 0x8b, 0x01, 0x00, 0xa0, 0x12, 0x00, 0x2a, 0xba,
1082 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0x32,
1083 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x00, 0x32,
1084 + 0x00, 0x00, 0xc5, 0x03, 0x06, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2a, 0xbc,
1085 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
1086 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x32,
1087 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00, 0x32,
1088 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
1089 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x32,
1090 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0x02, 0x00, 0x00, 0x32,
1091 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x00, 0x00, 0x32,
1092 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x00, 0x32,
1093 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x02, 0x00, 0x00, 0x32,
1094 + 0x00, 0x00, 0xc8, 0x03, 0x85, 0x01, 0x00, 0x9c, 0x12, 0xc0, 0x29, 0xba,
1095 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1096 + 0x0b, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1097 + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1098 + 0x13, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1099 + 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1100 + 0x0c, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1101 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x06, 0x32,
1102 + 0x0f, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1103 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1104 + 0x0d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1105 + 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1106 + 0x14, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1107 + 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1108 + 0x15, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1109 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1110 + 0x18, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1111 + 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1112 + 0x1d, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1113 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x04, 0x32,
1114 + 0x1e, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1115 + 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1116 + 0x1f, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1117 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x00, 0x32,
1118 + 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1119 + 0xe0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1120 + 0x17, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1121 + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1122 + 0x1b, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1123 + 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1124 + 0x1c, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1125 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x00, 0x32,
1126 + 0x16, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1127 + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1128 + 0x1a, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1129 + 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1130 + 0x19, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1131 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1132 + 0x0b, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1133 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1134 + 0x0c, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1135 + 0xfe, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x02, 0x00, 0x36, 0x32,
1136 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
1137 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0x64, 0x02, 0x39,
1138 + 0x00, 0x00, 0xfb, 0x03, 0x85, 0x01, 0x00, 0x00, 0x19, 0x00, 0x90, 0xba,
1139 + 0x25, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1140 + 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1141 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x0f, 0x00, 0x00, 0x32,
1142 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf3, 0x40, 0x01, 0x39,
1143 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xe3, 0x40, 0x01, 0x39,
1144 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xc3, 0x40, 0x01, 0x39,
1145 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb3, 0x40, 0x01, 0x39,
1146 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa3, 0x40, 0x01, 0x39,
1147 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1148 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x83, 0x40, 0x01, 0x39,
1149 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x40, 0x01, 0x39,
1150 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x63, 0x40, 0x01, 0x39,
1151 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x53, 0x40, 0x01, 0x39,
1152 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x43, 0x40, 0x01, 0x39,
1153 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x33, 0x40, 0x01, 0x39,
1154 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x13, 0x40, 0x01, 0x39,
1155 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x23, 0x40, 0x01, 0x39,
1156 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0x80, 0x00, 0x32,
1157 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x3f, 0x80, 0xfc, 0x35,
1158 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
1159 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x32,
1160 + 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x36, 0x32,
1161 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x03, 0x40, 0x38, 0x32,
1162 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xd2, 0x01, 0x30, 0xb6,
1163 + 0x00, 0x00, 0x13, 0x04, 0x04, 0x01, 0x00, 0xd0, 0x12, 0x00, 0x2d, 0xbc,
1164 + 0x50, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1165 + 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1166 + 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x32,
1167 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
1168 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0xe4, 0x06, 0x00, 0x00, 0x32,
1169 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
1170 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
1171 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x12, 0x00, 0x2d, 0x3a,
1172 + 0x4c, 0x00, 0x1a, 0x04, 0x02, 0x01, 0x00, 0x80, 0x82, 0x0d, 0x2d, 0xbc,
1173 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0xae, 0x0d, 0x02, 0x32,
1174 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0x32,
1175 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x88, 0x86, 0xcc, 0x07, 0x00, 0x36, 0x32,
1176 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x8a, 0x86, 0xcc, 0x07, 0x80, 0x00, 0x3a,
1177 + 0x00, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x80, 0x36, 0x32,
1178 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x64, 0x02, 0x40, 0x90, 0xb2,
1179 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x29, 0x40, 0x90, 0x3a,
1180 + 0x00, 0x00, 0x26, 0x04, 0x12, 0x00, 0x00, 0x78, 0x09, 0xc0, 0x20, 0xb2,
1181 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x81, 0x97, 0xb6,
1182 + 0x1d, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x78, 0xe9, 0xe5, 0x00, 0xb8,
1183 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x45, 0x90, 0x30,
1184 + 0x00, 0x00, 0x24, 0x04, 0x02, 0x01, 0x00, 0x80, 0xc2, 0x82, 0x97, 0xbc,
1185 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x02, 0x00, 0x00, 0x32,
1186 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x03, 0x00, 0x00, 0x32,
1187 + 0x00, 0x00, 0x2c, 0x04, 0x8e, 0x01, 0x00, 0x80, 0x02, 0x40, 0x28, 0xb2,
1188 + 0x00, 0x00, 0x26, 0x0f, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xd2,
1189 + 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x0e, 0x00, 0x36, 0x32,
1190 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xb9, 0x05, 0x36, 0x30,
1191 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x73, 0x80, 0x97, 0x34,
1192 + 0x09, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1193 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x00, 0x32,
1194 + 0x0a, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1195 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x73, 0x80, 0x97, 0x34,
1196 + 0x09, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1197 + 0xfe, 0xca, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x36, 0x32,
1198 + 0x0a, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1199 + 0x00, 0x00, 0x3b, 0x04, 0x12, 0x01, 0x00, 0x00, 0x09, 0x40, 0x20, 0xb2,
1200 + 0x00, 0x00, 0x39, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1201 + 0x00, 0x00, 0x3b, 0x04, 0x12, 0x00, 0x00, 0x04, 0x09, 0x40, 0x20, 0xb2,
1202 + 0x00, 0x00, 0x3e, 0x04, 0x9f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1203 + 0x00, 0x00, 0x3d, 0x04, 0x12, 0x00, 0x00, 0x08, 0x09, 0x40, 0x20, 0xb2,
1204 + 0x02, 0x00, 0x39, 0x04, 0x04, 0x01, 0x00, 0x78, 0x09, 0x24, 0x17, 0xb8,
1205 + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x64, 0x16, 0x38,
1206 + 0x00, 0x00, 0x39, 0x04, 0x04, 0x01, 0x00, 0x80, 0x02, 0x81, 0x97, 0xbc,
1207 + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x03, 0x00, 0x36, 0x32,
1208 + 0xfe, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x48, 0x03, 0x00, 0x36, 0x92,
1209 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x00, 0x09, 0x40, 0x20, 0xb2,
1210 + 0x00, 0x00, 0x44, 0x04, 0x12, 0x00, 0x00, 0x04, 0x09, 0x40, 0x20, 0xb2,
1211 + 0x00, 0x00, 0x47, 0x04, 0x9f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1212 + 0x00, 0x00, 0x46, 0x04, 0x12, 0x00, 0x00, 0x08, 0x09, 0x40, 0x20, 0xb2,
1213 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x02, 0x00, 0x90, 0x32,
1214 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1215 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1216 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1217 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1218 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1219 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1220 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1221 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1222 + 0x06, 0x00, 0x59, 0x04, 0x00, 0x00, 0x00, 0x0c, 0x09, 0x64, 0x16, 0x98,
1223 + 0x00, 0x00, 0x68, 0x02, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x90, 0x92,
1224 + 0x00, 0x00, 0x97, 0x02, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x90, 0x92,
1225 + 0x33, 0x00, 0x74, 0x03, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
1226 + 0x11, 0x00, 0x74, 0x03, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
1227 + 0x39, 0x00, 0x74, 0x03, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
1228 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1229 + 0x00, 0x00, 0x7f, 0x02, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x90, 0x92,
1230 + 0x00, 0x00, 0x7f, 0x03, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x90, 0x92,
1231 + 0x5a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0xcd, 0x90, 0x3a,
1232 + 0x0d, 0x00, 0x7c, 0x04, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x98,
1233 + 0x0d, 0x00, 0x8e, 0x04, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x98,
1234 + 0x0d, 0x00, 0x97, 0x04, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x98,
1235 + 0x00, 0x00, 0xa3, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1236 + 0x00, 0x00, 0xad, 0x04, 0x00, 0x00, 0x00, 0x00, 0x09, 0x40, 0x90, 0x9d,
1237 + 0x00, 0x00, 0xb3, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1238 + 0x00, 0x00, 0xbd, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1239 + 0x00, 0x00, 0xc7, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1240 + 0x00, 0x00, 0xd1, 0x04, 0x00, 0x00, 0x00, 0x00, 0x09, 0x40, 0x90, 0x9d,
1241 + 0x00, 0x00, 0xd8, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1242 + 0x00, 0x00, 0xe1, 0x04, 0x00, 0x00, 0x00, 0x00, 0x09, 0x40, 0x90, 0x9d,
1243 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1244 + 0x00, 0x00, 0xf3, 0x04, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x92,
1245 + 0x00, 0x00, 0xf3, 0x04, 0x00, 0x00, 0x00, 0x00, 0x09, 0x40, 0x00, 0x92,
1246 + 0xd8, 0x00, 0xf5, 0x04, 0x00, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x36, 0x92,
1247 + 0x00, 0x00, 0xff, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1248 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1249 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xdc, 0x0f, 0x40, 0x90, 0x92,
1250 + 0x00, 0x00, 0xe8, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1251 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1252 + 0x00, 0x00, 0xed, 0x04, 0x00, 0x00, 0x00, 0x78, 0x39, 0x40, 0x90, 0x97,
1253 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xec, 0x0e, 0x40, 0x90, 0x92,
1254 + 0x00, 0x00, 0xef, 0x04, 0x00, 0x00, 0x00, 0xe8, 0x0e, 0x40, 0x90, 0x92,
1255 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xd4, 0x0e, 0x40, 0x90, 0x92,
1256 + 0x00, 0x00, 0xf0, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1257 + 0x00, 0x00, 0x85, 0x05, 0x00, 0x00, 0x00, 0xdc, 0x0e, 0x40, 0x90, 0x92,
1258 + 0x00, 0x00, 0x10, 0x05, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1259 + 0x08, 0x00, 0x15, 0x05, 0x00, 0x00, 0x00, 0x50, 0x1f, 0x24, 0x16, 0x98,
1260 + 0x00, 0x00, 0x27, 0x05, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x92,
1261 + 0x0d, 0x00, 0x32, 0x05, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x98,
1262 + 0x00, 0x00, 0x33, 0x05, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x92,
1263 + 0x00, 0x00, 0x0c, 0x01, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x92,
1264 + 0x00, 0x00, 0x89, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1265 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1266 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1267 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x45, 0x90, 0x30,
1268 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x22, 0x80, 0x97, 0xbc,
1269 + 0x3f, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x0d, 0x00, 0xb0,
1270 + 0x02, 0x00, 0x80, 0x04, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
1271 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0x6b, 0x41, 0x90, 0x34,
1272 + 0x00, 0x00, 0xb0, 0x03, 0x80, 0x01, 0x00, 0x80, 0x02, 0x40, 0xb0, 0xb6,
1273 + 0x00, 0x00, 0xb0, 0x03, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0xb0, 0xbc,
1274 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
1275 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x22, 0x00, 0x2b, 0x37,
1276 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x01, 0x00, 0x34,
1277 + 0x00, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x2a, 0x3a,
1278 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x00, 0xb0, 0xb2,
1279 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0xd0, 0x32,
1280 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0xb4,
1281 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0x39,
1282 + 0xb0, 0x03, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
1283 + 0x08, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x99,
1284 + 0x00, 0x00, 0x91, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1285 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1286 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1287 + 0x02, 0x00, 0x91, 0x04, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
1288 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x80, 0x90, 0x32,
1289 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x40, 0x90, 0x32,
1290 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0x3b, 0x40, 0xb0, 0x31,
1291 + 0x00, 0x00, 0x8d, 0x04, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0x2b, 0xbc,
1292 + 0xf1, 0x0f, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x8c, 0x0e, 0x00, 0x36, 0x92,
1293 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1294 + 0x02, 0x00, 0x98, 0x04, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
1295 + 0x00, 0x00, 0x9b, 0x04, 0x80, 0x01, 0x00, 0x80, 0x12, 0x40, 0xb0, 0xb6,
1296 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3b, 0x40, 0xb0, 0x33,
1297 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x35,
1298 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0b, 0x00, 0x00, 0x32,
1299 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x0c, 0x1b, 0xe4, 0xb0, 0x32,
1300 + 0x00, 0x00, 0xb0, 0x03, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
1301 + 0x00, 0x00, 0xa1, 0x04, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x90, 0xb2,
1302 + 0x1f, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x11, 0x40, 0x00, 0x99,
1303 + 0x00, 0x00, 0xa0, 0x04, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0xf8, 0xbc,
1304 + 0x00, 0x00, 0xb0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x01, 0x00, 0xf8, 0x92,
1305 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0xfc, 0xb6,
1306 + 0x00, 0x00, 0xa7, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1307 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1308 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1309 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x85, 0x90, 0xb0,
1310 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x80, 0x90, 0x32,
1311 + 0x09, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1312 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x90, 0x32,
1313 + 0x0a, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1314 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xc8, 0x0f, 0x81, 0xfc, 0x94,
1315 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x72, 0x42, 0x90, 0xbc,
1316 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0xe2, 0x42, 0x90, 0xbc,
1317 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x78, 0x09, 0x64, 0x90, 0xb5,
1318 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x73, 0x00, 0x90, 0x3c,
1319 + 0x10, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1320 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1321 + 0x00, 0x00, 0xb6, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1322 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1323 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1324 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x85, 0x90, 0xb0,
1325 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x80, 0x90, 0x32,
1326 + 0x01, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1327 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x0f, 0x80, 0x90, 0x32,
1328 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x90, 0x32,
1329 + 0x02, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1330 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xe4, 0x0f, 0x40, 0x90, 0x92,
1331 + 0x00, 0x00, 0xc0, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1332 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1333 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1334 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x85, 0x90, 0xb0,
1335 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x80, 0x90, 0x32,
1336 + 0x03, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1337 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x0e, 0x80, 0x90, 0x32,
1338 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x90, 0x32,
1339 + 0x04, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1340 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xac, 0x0e, 0x40, 0x90, 0x92,
1341 + 0x00, 0x00, 0xca, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1342 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1343 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1344 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x85, 0x90, 0xb0,
1345 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x80, 0x90, 0x32,
1346 + 0x05, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1347 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x90, 0x32,
1348 + 0x06, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1349 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x0f, 0x80, 0x90, 0x32,
1350 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x48, 0x0f, 0x40, 0x90, 0x92,
1351 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x82, 0x42, 0x90, 0xbc,
1352 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x78, 0x09, 0x64, 0x90, 0xb5,
1353 + 0x00, 0x00, 0xd5, 0x04, 0x04, 0x01, 0x00, 0x80, 0x82, 0x42, 0x90, 0xbc,
1354 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
1355 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x90, 0x32,
1356 + 0x12, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1357 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x40, 0x1f, 0x40, 0x90, 0x9c,
1358 + 0x00, 0x00, 0xdb, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1359 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1360 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1361 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x85, 0x90, 0xb0,
1362 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x80, 0x90, 0x32,
1363 + 0x07, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1364 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x40, 0x90, 0x32,
1365 + 0x08, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1366 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1367 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x82, 0x42, 0x90, 0xbc,
1368 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x78, 0x09, 0x64, 0x90, 0xb5,
1369 + 0x00, 0x00, 0xe5, 0x04, 0x04, 0x01, 0x00, 0x80, 0x82, 0x42, 0x90, 0xbc,
1370 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
1371 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x90, 0x32,
1372 + 0x11, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1373 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xfc, 0x1f, 0x40, 0x90, 0x9c,
1374 + 0x00, 0x00, 0xeb, 0x04, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1375 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1376 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1377 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x0e, 0x80, 0x90, 0x32,
1378 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x88, 0x0e, 0x40, 0x90, 0x92,
1379 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x40, 0x90, 0x37,
1380 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x0f, 0xa4, 0x97, 0x9a,
1381 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xbc, 0x0e, 0x80, 0xee, 0x9d,
1382 + 0x00, 0x00, 0xf2, 0x04, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x90, 0xbc,
1383 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0x00, 0x32,
1384 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xe4, 0x1e, 0x40, 0x90, 0x9c,
1385 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x22, 0x00, 0x90, 0x37,
1386 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x86, 0xc0, 0x07, 0x40, 0x90, 0x92,
1387 + 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x38,
1388 + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x36, 0x32,
1389 + 0x00, 0x00, 0xfa, 0x04, 0x04, 0x00, 0x00, 0x80, 0x02, 0x24, 0xf6, 0xbc,
1390 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x3f, 0x80, 0xfc, 0x34,
1391 + 0x40, 0x80, 0xfc, 0x04, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x36, 0x92,
1392 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x0f, 0x00, 0x00, 0x32,
1393 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x79, 0x01, 0x00, 0x34,
1394 + 0x02, 0x00, 0xfc, 0x04, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
1395 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x0c, 0xab, 0xe4, 0xb0, 0x32,
1396 + 0x1f, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x11, 0x40, 0x00, 0x99,
1397 + 0xea, 0x05, 0x05, 0x05, 0x04, 0x01, 0x00, 0x80, 0x82, 0x4d, 0x90, 0xbc,
1398 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x0f, 0x00, 0x15, 0x32,
1399 + 0x00, 0xfe, 0x1f, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x0f, 0x00, 0x37, 0x32,
1400 + 0xf0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x0f, 0x00, 0x36, 0x32,
1401 + 0x98, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0x0f, 0x00, 0x36, 0x32,
1402 + 0x00, 0x00, 0x0b, 0x05, 0x00, 0x00, 0x00, 0xc8, 0x4f, 0x80, 0xfc, 0x95,
1403 + 0x36, 0x23, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x4d, 0x90, 0xbc,
1404 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0x0f, 0x80, 0x14, 0x32,
1405 + 0x00, 0xf8, 0x1f, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x0f, 0x00, 0x37, 0x32,
1406 + 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x0f, 0x00, 0x36, 0x32,
1407 + 0x98, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0x0f, 0x00, 0x36, 0x32,
1408 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x4f, 0x80, 0xfc, 0x34,
1409 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x8f, 0x4d, 0x90, 0x3a,
1410 + 0x00, 0x00, 0x8a, 0x11, 0x60, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
1411 + 0x00, 0x00, 0x8a, 0x11, 0x7a, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
1412 + 0x00, 0x00, 0xa9, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
1413 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1414 + 0x00, 0x00, 0x12, 0x05, 0x80, 0x01, 0x00, 0x80, 0x02, 0x40, 0x90, 0xb6,
1415 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x6f, 0x80, 0xfc, 0x34,
1416 + 0x00, 0x00, 0x14, 0x05, 0x80, 0x01, 0x00, 0x80, 0x12, 0x40, 0x90, 0xb6,
1417 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x5f, 0x80, 0xfc, 0x34,
1418 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1419 + 0x00, 0x00, 0x17, 0x05, 0x04, 0x01, 0x00, 0x80, 0x32, 0x40, 0x90, 0xb0,
1420 + 0x80, 0x01, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xc8, 0x8f, 0x8d, 0xfc, 0x91,
1421 + 0x00, 0x00, 0x19, 0x05, 0x80, 0x00, 0x00, 0x80, 0x12, 0x40, 0x90, 0xb6,
1422 + 0x00, 0x00, 0x1a, 0x05, 0x00, 0x00, 0x00, 0xc8, 0x7f, 0x80, 0xfc, 0x95,
1423 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x7f, 0x80, 0xfc, 0x34,
1424 + 0x00, 0x00, 0x1c, 0x05, 0x80, 0x00, 0x00, 0x80, 0x02, 0x40, 0x90, 0xb6,
1425 + 0x00, 0x00, 0x1d, 0x05, 0x00, 0x00, 0x00, 0xc8, 0x8f, 0x80, 0xfc, 0x95,
1426 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x8f, 0x80, 0xfc, 0x34,
1427 + 0x00, 0x00, 0x20, 0x05, 0x80, 0x00, 0x00, 0x80, 0x22, 0x40, 0x90, 0xb6,
1428 + 0xf1, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x0e, 0x00, 0x36, 0x32,
1429 + 0x00, 0x00, 0x22, 0x05, 0x00, 0x00, 0x00, 0xc8, 0x1f, 0x81, 0xfc, 0x95,
1430 + 0x0e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0x0e, 0x00, 0x36, 0x32,
1431 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x1f, 0x81, 0xfc, 0x34,
1432 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x82, 0x02, 0xf5, 0xbc,
1433 + 0x00, 0x00, 0x8a, 0x11, 0x03, 0x00, 0x00, 0x78, 0x09, 0x00, 0xf5, 0xbd,
1434 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xe2, 0x25, 0xf5, 0xb5,
1435 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x1f, 0x24, 0x16, 0x38,
1436 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x50, 0x1f, 0x00, 0xf5, 0x9c,
1437 + 0x80, 0x01, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0xfc, 0xb0,
1438 + 0x00, 0x00, 0x2b, 0x05, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
1439 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0x90, 0x32,
1440 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0xfd, 0x32,
1441 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0xf5, 0x3a,
1442 + 0x8c, 0xcc, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
1443 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x80, 0x90, 0xb2,
1444 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0x90, 0x32,
1445 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
1446 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1447 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1448 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xec, 0x03, 0x40, 0x90, 0x92,
1449 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x90, 0xbc,
1450 + 0x00, 0x00, 0x34, 0x05, 0xb2, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
1451 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0xec, 0x16, 0xe4, 0x6e, 0x3a,
1452 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
1453 + 0x00, 0x00, 0x69, 0x05, 0x17, 0x10, 0x01, 0xf8, 0x02, 0x00, 0x6e, 0xb2,
1454 + 0x06, 0x00, 0x3f, 0x05, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0xb0,
1455 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0x32,
1456 + 0x00, 0xc0, 0xd3, 0x0e, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x36, 0xd2,
1457 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0x3c,
1458 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x32,
1459 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1460 + 0x00, 0x00, 0x40, 0x05, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x92,
1461 + 0x00, 0x00, 0x46, 0x05, 0x04, 0x19, 0x86, 0x80, 0x02, 0x80, 0x6c, 0xbc,
1462 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x12, 0x80, 0x2f, 0xb6,
1463 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x6e, 0x32,
1464 + 0x00, 0x00, 0x00, 0x00, 0xc1, 0x08, 0x00, 0x04, 0x09, 0x00, 0x6e, 0x32,
1465 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x15, 0x86, 0x2c, 0x09, 0xc0, 0x6c, 0x32,
1466 + 0x00, 0x00, 0x4c, 0x05, 0x22, 0x1d, 0x86, 0xc8, 0x06, 0xc0, 0x92, 0xb2,
1467 + 0x00, 0x00, 0x4c, 0x05, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x40, 0x00, 0x92,
1468 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x22, 0x80, 0x2f, 0xb6,
1469 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x09, 0x00, 0x6e, 0x32,
1470 + 0x00, 0x00, 0x00, 0x00, 0xc2, 0x48, 0x00, 0x04, 0x09, 0x00, 0x6e, 0x32,
1471 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x16, 0x86, 0x2c, 0x09, 0xc0, 0x6c, 0x32,
1472 + 0x00, 0x00, 0x4c, 0x05, 0x21, 0x1d, 0x86, 0xc8, 0x06, 0xc0, 0x92, 0xb2,
1473 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x32,
1474 + 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x36, 0x32,
1475 + 0x00, 0x00, 0x54, 0x05, 0x04, 0x02, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
1476 + 0x00, 0x00, 0xd3, 0x0e, 0x00, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xdc,
1477 + 0x00, 0x00, 0x52, 0x05, 0x80, 0x00, 0x00, 0x80, 0x02, 0x80, 0x2f, 0xb6,
1478 + 0x00, 0x00, 0x54, 0x05, 0x81, 0x00, 0x00, 0xf8, 0x22, 0x80, 0x2f, 0xb4,
1479 + 0x00, 0x00, 0x54, 0x05, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x40, 0x00, 0x92,
1480 + 0x00, 0x00, 0x54, 0x05, 0x82, 0x00, 0x00, 0xf8, 0x12, 0x80, 0x2f, 0xb4,
1481 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x32,
1482 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x2d, 0xbc,
1483 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
1484 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x32,
1485 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xc0, 0x0a, 0x32,
1486 + 0x00, 0x38, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
1487 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x00, 0x07, 0x00, 0x90, 0xb2,
1488 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0x90, 0x32,
1489 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
1490 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1491 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
1492 + 0x00, 0x00, 0x00, 0x00, 0x17, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
1493 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x32,
1494 + 0x00, 0xc0, 0x69, 0x05, 0x18, 0x00, 0x00, 0x00, 0xa9, 0xcd, 0x3e, 0xb2,
1495 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x86, 0x04, 0x19, 0x80, 0x6c, 0x3a,
1496 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x07, 0x00, 0x00, 0x32,
1497 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0x00, 0x00, 0x32,
1498 + 0x00, 0x01, 0x00, 0x80, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
1499 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0x0c, 0xf7, 0x7f, 0x90, 0x30,
1500 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0x00, 0x90, 0xb2,
1501 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
1502 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1503 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x10, 0x86, 0x80, 0x72, 0x82, 0x6c, 0xbc,
1504 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x86, 0xa8, 0x42, 0x80, 0x6c, 0x37,
1505 + 0x00, 0x00, 0x78, 0x05, 0x12, 0x00, 0x70, 0x38, 0x02, 0x00, 0x7c, 0xb2,
1506 + 0x00, 0x00, 0x8a, 0x11, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
1507 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xe0, 0x07, 0x00, 0x00, 0x32,
1508 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
1509 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x3c, 0x02, 0x00, 0x7e, 0x32,
1510 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x30, 0x02, 0x00, 0x7e, 0x32,
1511 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x34, 0x02, 0x00, 0x7e, 0x32,
1512 + 0x00, 0x00, 0x6b, 0x05, 0x02, 0x01, 0x00, 0x80, 0xb2, 0x82, 0x2a, 0xbc,
1513 + 0x00, 0x00, 0x00, 0x00, 0x17, 0x00, 0x00, 0xd0, 0x02, 0x00, 0x00, 0x32,
1514 + 0x06, 0x00, 0x3f, 0x05, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0xb0,
1515 + 0x00, 0x00, 0x39, 0x05, 0x04, 0x03, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
1516 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xe0, 0x06, 0x80, 0x2f, 0x32,
1517 + 0x00, 0x00, 0xa4, 0x03, 0xa2, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x92,
1518 + 0x00, 0x00, 0x7a, 0x05, 0x04, 0x03, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
1519 + 0x00, 0x00, 0x83, 0x05, 0x00, 0x10, 0x86, 0xc8, 0x46, 0x80, 0x2a, 0x96,
1520 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x86, 0xc8, 0x46, 0x80, 0x2a, 0x36,
1521 + 0x00, 0x00, 0x7e, 0x05, 0x80, 0x00, 0x00, 0x80, 0x12, 0x80, 0x2f, 0xb6,
1522 + 0x03, 0x00, 0x80, 0x05, 0x22, 0x00, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0xb2,
1523 + 0x00, 0x00, 0x80, 0x05, 0x00, 0x18, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x92,
1524 + 0x00, 0x00, 0x83, 0x05, 0x80, 0x00, 0x00, 0x80, 0x22, 0x80, 0x2f, 0xb6,
1525 + 0x00, 0x00, 0x00, 0x00, 0xc2, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x35,
1526 + 0x00, 0xc0, 0xd3, 0x0e, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x36, 0xd2,
1527 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0x3c,
1528 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
1529 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xe0, 0x06, 0x80, 0x2f, 0x32,
1530 + 0x00, 0x00, 0xa4, 0x03, 0xa2, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x92,
1531 + 0x00, 0x00, 0x8a, 0x05, 0x04, 0x01, 0x00, 0x80, 0xa2, 0xc0, 0xed, 0xbc,
1532 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0e, 0x80, 0x02, 0x32,
1533 + 0x40, 0x7e, 0x05, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x0e, 0x00, 0x37, 0x32,
1534 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x0e, 0x80, 0x07, 0x32,
1535 + 0x64, 0x00, 0x8f, 0x05, 0x00, 0x00, 0x00, 0xcc, 0x0e, 0x00, 0x36, 0x92,
1536 + 0x64, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xed, 0xbc,
1537 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0e, 0x40, 0x00, 0x32,
1538 + 0xa0, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x0e, 0x00, 0x36, 0x32,
1539 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x0e, 0xc0, 0x00, 0x32,
1540 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x0e, 0x80, 0x02, 0x32,
1541 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x33, 0x7b, 0xec, 0x39,
1542 + 0x1e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
1543 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x6e, 0xc0, 0xec, 0x37,
1544 + 0x00, 0x00, 0x8d, 0x04, 0x00, 0x00, 0x00, 0xd8, 0x0e, 0xc0, 0xed, 0x92,
1545 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x65, 0x01, 0x80, 0xa2, 0xdb, 0x2c, 0xbc,
1546 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xb2,
1547 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x1c, 0x01, 0x80, 0x52, 0xc0, 0x6e, 0xbc,
1548 + 0x2b, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
1549 + 0x3d, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
1550 + 0x35, 0x00, 0x9c, 0x05, 0x04, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
1551 + 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
1552 + 0x2b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x89, 0xcd, 0x81, 0x3c,
1553 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x1c, 0x01, 0x14, 0x59, 0xe4, 0x6e, 0xd9,
1554 + 0xa4, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0xcd, 0x81, 0x3a,
1555 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xb2,
1556 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x65, 0x01, 0x80, 0xa2, 0xdb, 0x2c, 0xbc,
1557 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x18, 0x01, 0x80, 0x92, 0xc0, 0x6e, 0xbc,
1558 + 0x2b, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
1559 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
1560 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x18, 0x01, 0x14, 0x79, 0xe0, 0x6e, 0xd9,
1561 + 0xa4, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0xcd, 0x81, 0x3a,
1562 + 0xe1, 0x05, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1563 + 0xea, 0x05, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1564 + 0xf3, 0x05, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1565 + 0xfc, 0x05, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1566 + 0x05, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1567 + 0x0e, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1568 + 0x17, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1569 + 0x20, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1570 + 0x29, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1571 + 0x32, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1572 + 0x3b, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1573 + 0x44, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1574 + 0x4d, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1575 + 0x56, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1576 + 0x5f, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1577 + 0x68, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1578 + 0x71, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1579 + 0x7a, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1580 + 0x83, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1581 + 0x8c, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1582 + 0x95, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1583 + 0x9e, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1584 + 0xa7, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1585 + 0xb0, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1586 + 0xb9, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1587 + 0xc2, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1588 + 0xcb, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1589 + 0xd4, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1590 + 0xdd, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1591 + 0xe6, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1592 + 0xef, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1593 + 0xf8, 0x06, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1594 + 0x01, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1595 + 0x0a, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1596 + 0x13, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1597 + 0x1c, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1598 + 0x25, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1599 + 0x2e, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1600 + 0x37, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1601 + 0x40, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1602 + 0x49, 0x07, 0x00, 0x00, 0x00, 0x18, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1603 + 0x00, 0x00, 0x57, 0x03, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x92,
1604 + 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1605 + 0x52, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1606 + 0x57, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1607 + 0x5c, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1608 + 0x61, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1609 + 0x66, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1610 + 0x6b, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1611 + 0x70, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1612 + 0x75, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1613 + 0x7a, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1614 + 0x7f, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1615 + 0x84, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1616 + 0x89, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1617 + 0x8e, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1618 + 0x93, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1619 + 0x98, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1620 + 0x9d, 0x07, 0x00, 0x00, 0x00, 0x1c, 0x01, 0x88, 0x82, 0xcd, 0x6e, 0x3a,
1621 + 0x00, 0x00, 0x5f, 0x03, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x92,
1622 + 0x00, 0x00, 0x71, 0x03, 0x00, 0x00, 0x00, 0xd4, 0x02, 0x00, 0x00, 0x92,
1623 + 0x00, 0x00, 0x3b, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x01, 0x92,
1624 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1625 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1626 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1627 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1628 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1629 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1630 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1631 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1632 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1633 + 0x00, 0x00, 0x79, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1634 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1635 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1636 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1637 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1638 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1639 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1640 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1641 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1642 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1643 + 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1644 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1645 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1646 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1647 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1648 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1649 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1650 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1651 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1652 + 0x00, 0x00, 0xda, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1653 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1654 + 0x00, 0x00, 0xda, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1655 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1656 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1657 + 0x00, 0x00, 0xda, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1658 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1659 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1660 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1661 + 0x00, 0x00, 0xea, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1662 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1663 + 0x00, 0x00, 0xea, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1664 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1665 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1666 + 0x00, 0x00, 0xea, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1667 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1668 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1669 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1670 + 0x00, 0x00, 0xe8, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1671 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1672 + 0x00, 0x00, 0xe8, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1673 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1674 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1675 + 0x00, 0x00, 0xe8, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1676 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1677 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1678 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1679 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1680 + 0x00, 0x00, 0x86, 0x0a, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1681 + 0x00, 0x00, 0xd7, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1682 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1683 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1684 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1685 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1686 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1687 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1688 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1689 + 0x00, 0x00, 0x7d, 0x0a, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1690 + 0x00, 0x00, 0xd7, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1691 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1692 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1693 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1694 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1695 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1696 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1697 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1698 + 0x00, 0x00, 0x7d, 0x0a, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1699 + 0x00, 0x00, 0xd7, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1700 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1701 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1702 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1703 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1704 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1705 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1706 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1707 + 0x00, 0x00, 0x0c, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1708 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1709 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1710 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1711 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1712 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1713 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1714 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1715 + 0x00, 0x00, 0xe9, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1716 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1717 + 0x00, 0x00, 0xe9, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1718 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1719 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1720 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1721 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1722 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1723 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1724 + 0x00, 0x00, 0xe9, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1725 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1726 + 0x00, 0x00, 0xe9, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1727 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1728 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1729 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1730 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1731 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1732 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1733 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1734 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1735 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1736 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1737 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1738 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1739 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1740 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1741 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1742 + 0x00, 0x00, 0xc1, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1743 + 0x00, 0x00, 0xb8, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1744 + 0x00, 0x00, 0xc1, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1745 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1746 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1747 + 0x00, 0x00, 0xc1, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1748 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1749 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1750 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x00, 0x92,
1751 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1752 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1753 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1754 + 0x00, 0x00, 0x86, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1755 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x01, 0x92,
1756 + 0x00, 0x00, 0x81, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1757 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1758 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1759 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1760 + 0x00, 0x00, 0x76, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1761 + 0x00, 0x00, 0x76, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1762 + 0x00, 0x00, 0x76, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1763 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1764 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1765 + 0x00, 0x00, 0x76, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1766 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1767 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1768 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1769 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1770 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1771 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1772 + 0x00, 0x00, 0xc9, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1773 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1774 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1775 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1776 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1777 + 0x00, 0x00, 0x47, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1778 + 0x00, 0x00, 0x4b, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1779 + 0x00, 0x00, 0xb0, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1780 + 0x00, 0x00, 0x4b, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1781 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1782 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1783 + 0x00, 0x00, 0x4b, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1784 + 0x00, 0x00, 0xa3, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x02, 0x92,
1785 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1786 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1787 + 0x00, 0x00, 0x4c, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1788 + 0x00, 0x00, 0xb0, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1789 + 0x00, 0x00, 0x4c, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1790 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1791 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1792 + 0x00, 0x00, 0x4c, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1793 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1794 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1795 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1796 + 0x00, 0x00, 0x51, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1797 + 0x00, 0x00, 0x51, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1798 + 0x00, 0x00, 0x51, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1799 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1800 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1801 + 0x00, 0x00, 0x51, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1802 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1803 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1804 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1805 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1806 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1807 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1808 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1809 + 0x00, 0x00, 0x68, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x00, 0x92,
1810 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1811 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1812 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1813 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1814 + 0x00, 0x00, 0x64, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1815 + 0x00, 0x00, 0x64, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1816 + 0x00, 0x00, 0x64, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1817 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1818 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1819 + 0x00, 0x00, 0x64, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1820 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1821 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1822 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1823 + 0x00, 0x00, 0x7e, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1824 + 0x00, 0x00, 0x7e, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1825 + 0x00, 0x00, 0x7e, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1826 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1827 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1828 + 0x00, 0x00, 0x7e, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1829 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1830 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x00, 0x92,
1831 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1832 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1833 + 0x00, 0x00, 0x8f, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1834 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1835 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1836 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1837 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1838 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1839 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1840 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1841 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1842 + 0x00, 0x00, 0xa0, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1843 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1844 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1845 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1846 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1847 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1848 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1849 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1850 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1851 + 0x00, 0x00, 0xa0, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1852 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1853 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1854 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1855 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1856 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1857 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1858 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1859 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1860 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1861 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1862 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1863 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1864 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1865 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1866 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1867 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1868 + 0x00, 0x00, 0xb5, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1869 + 0x00, 0x00, 0xb5, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1870 + 0x00, 0x00, 0xb5, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1871 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1872 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1873 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1874 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1875 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1876 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1877 + 0x00, 0x00, 0x75, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1878 + 0x00, 0x00, 0x75, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
1879 + 0x00, 0x00, 0x75, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1880 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1881 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1882 + 0x00, 0x00, 0x75, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1883 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1884 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1885 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1886 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1887 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1888 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1889 + 0x00, 0x00, 0xcc, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x02, 0x92,
1890 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1891 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1892 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1893 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1894 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1895 + 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1896 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1897 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1898 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1899 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1900 + 0x00, 0x00, 0xc4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1901 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1902 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1903 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1904 + 0x00, 0x00, 0x88, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1905 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1906 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1907 + 0x00, 0x00, 0xd4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1908 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1909 + 0x00, 0x00, 0xc4, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1910 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1911 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1912 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1913 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1914 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1915 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1916 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1917 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1918 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1919 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1920 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1921 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1922 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1923 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1924 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1925 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1926 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1927 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1928 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1929 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1930 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1931 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1932 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1933 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1934 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1935 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1936 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1937 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1938 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1939 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1940 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1941 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1942 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1943 + 0x00, 0x00, 0xa2, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1944 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1945 + 0x00, 0x00, 0xa8, 0x0b, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
1946 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1947 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1948 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1949 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1950 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1951 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1952 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1953 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1954 + 0x00, 0x00, 0x2a, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1955 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1956 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1957 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1958 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1959 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1960 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1961 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1962 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1963 + 0x00, 0x00, 0x2a, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1964 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1965 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1966 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1967 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1968 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1969 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1970 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1971 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1972 + 0x00, 0x00, 0x34, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x01, 0x92,
1973 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1974 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1975 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1976 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1977 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1978 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1979 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1980 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1981 + 0x00, 0x00, 0x34, 0x0c, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1982 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1983 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1984 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1985 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1986 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1987 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1988 + 0x00, 0x00, 0x31, 0x0d, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x01, 0x92,
1989 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1990 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1991 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1992 + 0x00, 0x00, 0xab, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x00, 0x92,
1993 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1994 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1995 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1996 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1997 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
1998 + 0x00, 0x00, 0xf3, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
1999 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2000 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2001 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2002 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2003 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2004 + 0x00, 0x00, 0xb6, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2005 + 0x00, 0x00, 0xb6, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2006 + 0x00, 0x00, 0xb6, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2007 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2008 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2009 + 0x00, 0x00, 0x0a, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2010 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2011 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2012 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2013 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2014 + 0x00, 0x00, 0x1a, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2015 + 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2016 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2017 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2018 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2019 + 0x00, 0x00, 0xc3, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2020 + 0x00, 0x00, 0xc3, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2021 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2022 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2023 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2024 + 0x00, 0x00, 0xe5, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2025 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2026 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2027 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2028 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2029 + 0x00, 0x00, 0xe8, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2030 + 0x00, 0x00, 0xe8, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2031 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2032 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2033 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2034 + 0x00, 0x00, 0xea, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2035 + 0x00, 0x00, 0xea, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2036 + 0x00, 0x00, 0xea, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2037 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2038 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x00, 0x92,
2039 + 0x00, 0x00, 0xc2, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2040 + 0x00, 0x00, 0xc2, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2041 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2042 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x00, 0x92,
2043 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x40, 0x00, 0x92,
2044 + 0x00, 0x00, 0xf8, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2045 + 0x00, 0x00, 0xf8, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2046 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2047 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2048 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2049 + 0x00, 0x00, 0x2e, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2050 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2051 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2052 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2053 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2054 + 0x00, 0x00, 0x0f, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2055 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2056 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2057 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2058 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2059 + 0x00, 0x00, 0x07, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2060 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2061 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2062 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2063 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2064 + 0x00, 0x00, 0x22, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2065 + 0x00, 0x00, 0x22, 0x09, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2066 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2067 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2068 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2069 + 0x00, 0x00, 0xef, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0x80, 0x00, 0x92,
2070 + 0x00, 0x00, 0xef, 0x08, 0x00, 0x00, 0x00, 0x10, 0x08, 0xc0, 0x00, 0x92,
2071 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x01, 0x92,
2072 + 0x08, 0x00, 0xa1, 0x03, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x99,
2073 + 0x08, 0x00, 0x9d, 0x03, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x99,
2074 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2075 + 0x08, 0x00, 0xa7, 0x07, 0x1d, 0x19, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xb9,
2076 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2077 + 0x00, 0x00, 0xa1, 0x03, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2078 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2079 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x94,
2080 + 0x08, 0x00, 0xa1, 0x03, 0x00, 0x1c, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x99,
2081 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x0f, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xb6,
2082 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2083 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0xec, 0x06, 0xc0, 0x6e, 0x35,
2084 + 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
2085 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
2086 + 0xb4, 0xcc, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
2087 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0xc0, 0x2c, 0x37,
2088 + 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x8d, 0x97, 0x3a,
2089 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x10, 0x00, 0x00, 0x87, 0xbf, 0x97, 0xba,
2090 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0xfe, 0x32,
2091 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
2092 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x78, 0x09, 0x00, 0x6e, 0x32,
2093 + 0x00, 0x00, 0xb7, 0x07, 0xb7, 0x10, 0x02, 0xe0, 0x06, 0x80, 0x97, 0xb2,
2094 + 0x00, 0x00, 0xba, 0x07, 0x80, 0x00, 0x00, 0x80, 0xf2, 0x80, 0xfc, 0xb6,
2095 + 0x00, 0x00, 0xbb, 0x07, 0x00, 0x00, 0x00, 0xc8, 0xff, 0x80, 0xfc, 0x94,
2096 + 0x00, 0x00, 0xbc, 0x07, 0x9f, 0x99, 0x00, 0x80, 0x82, 0x1b, 0xee, 0xbc,
2097 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0xe0, 0x0e, 0x00, 0x6e, 0x32,
2098 + 0x00, 0x00, 0x00, 0x00, 0xa7, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
2099 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2100 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x1c, 0x09, 0x00, 0x6e, 0x32,
2101 + 0x40, 0x00, 0xc1, 0x07, 0x06, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x91, 0xbc,
2102 + 0x00, 0x40, 0xc2, 0x07, 0x00, 0x18, 0x02, 0xe0, 0xa6, 0xcd, 0x2c, 0x92,
2103 + 0x00, 0x60, 0x00, 0x00, 0x00, 0x18, 0x02, 0xe0, 0xa6, 0xcd, 0x2c, 0x32,
2104 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x09, 0x80, 0x03, 0x32,
2105 + 0x00, 0x00, 0xc5, 0x07, 0x80, 0xd7, 0x01, 0x80, 0x32, 0xc0, 0x6e, 0xb6,
2106 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x49, 0x00, 0x92, 0x3a,
2107 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x01, 0x18, 0x09, 0x00, 0x6e, 0x32,
2108 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x02, 0x24, 0x09, 0xc0, 0x6e, 0x32,
2109 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x28, 0x09, 0x80, 0x6e, 0x32,
2110 + 0x00, 0x00, 0xd3, 0x07, 0x80, 0x0e, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xb6,
2111 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x34, 0x02, 0xec, 0x06, 0x00, 0x36, 0x32,
2112 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x01, 0x92, 0x3a,
2113 + 0x00, 0x00, 0xcf, 0x07, 0x80, 0xd6, 0x01, 0x80, 0x42, 0xc0, 0x6e, 0xb6,
2114 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x10, 0x02, 0xe0, 0xa6, 0xcd, 0x91, 0x32,
2115 + 0x00, 0xa0, 0x00, 0x00, 0x00, 0x2c, 0x02, 0xe8, 0x06, 0x00, 0x36, 0x32,
2116 + 0x28, 0x00, 0xdd, 0x07, 0x00, 0x32, 0x02, 0xec, 0x06, 0x00, 0x36, 0x92,
2117 + 0x00, 0x00, 0x00, 0x00, 0xd3, 0x01, 0x00, 0x1c, 0xd9, 0xc1, 0x91, 0x34,
2118 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x10, 0x02, 0xe0, 0xa6, 0xcd, 0x91, 0x32,
2119 + 0x00, 0xa0, 0x00, 0x00, 0x00, 0x2c, 0x02, 0xe8, 0x06, 0x00, 0x36, 0x32,
2120 + 0x34, 0x00, 0xdd, 0x07, 0x00, 0x32, 0x02, 0xec, 0x06, 0x00, 0x36, 0x92,
2121 + 0x04, 0x00, 0x00, 0x00, 0x00, 0x34, 0x02, 0xec, 0x06, 0x00, 0x36, 0x32,
2122 + 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x0d, 0x92, 0x3a,
2123 + 0x00, 0x00, 0xd9, 0x07, 0x80, 0xd6, 0x01, 0x80, 0x42, 0xc0, 0x6e, 0xb6,
2124 + 0x00, 0x86, 0x00, 0x00, 0x00, 0x10, 0x02, 0xe0, 0xa6, 0xcd, 0x91, 0x32,
2125 + 0x04, 0xa0, 0x00, 0x00, 0x00, 0x2c, 0x02, 0xe8, 0x06, 0x00, 0x36, 0x32,
2126 + 0x14, 0x00, 0xdd, 0x07, 0x00, 0x32, 0x02, 0xec, 0x06, 0x00, 0x36, 0x92,
2127 + 0x00, 0x00, 0x00, 0x00, 0xd3, 0x01, 0x00, 0x1c, 0xd9, 0xc1, 0x91, 0x34,
2128 + 0x00, 0x86, 0x00, 0x00, 0x00, 0x10, 0x02, 0xe0, 0xa6, 0xcd, 0x91, 0x32,
2129 + 0x04, 0xa0, 0x00, 0x00, 0x00, 0x2c, 0x02, 0xe8, 0x06, 0x00, 0x36, 0x32,
2130 + 0x20, 0x00, 0xdd, 0x07, 0x00, 0x32, 0x02, 0xec, 0x06, 0x00, 0x36, 0x92,
2131 + 0x12, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0xec, 0x86, 0xcd, 0x91, 0x3a,
2132 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x28, 0x02, 0xe8, 0x86, 0x24, 0x90, 0x39,
2133 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x02, 0xe0, 0x96, 0x24, 0x14, 0x37,
2134 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0xe0, 0x06, 0x80, 0x91, 0x32,
2135 + 0x00, 0x00, 0xe3, 0x07, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
2136 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
2137 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
2138 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
2139 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
2140 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
2141 + 0x00, 0xcd, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
2142 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0xc0, 0x2c, 0x37,
2143 + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x8d, 0x97, 0x3a,
2144 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x10, 0x00, 0x00, 0x87, 0xbf, 0x97, 0xba,
2145 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0xfe, 0x32,
2146 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0xb4,
2147 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2148 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2149 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xc9, 0x01, 0x80, 0x02, 0x80, 0x6e, 0xbc,
2150 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0xec, 0x06, 0x80, 0x83, 0x32,
2151 + 0x01, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2152 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2153 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
2154 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2155 + 0x00, 0xc0, 0xf9, 0x07, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2156 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
2157 + 0x2c, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2158 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2159 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2160 + 0x00, 0x08, 0x00, 0x80, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
2161 + 0x00, 0x00, 0x50, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
2162 + 0x00, 0x00, 0xff, 0x07, 0x80, 0xd7, 0x01, 0x2c, 0x09, 0xc0, 0x6e, 0xb2,
2163 + 0x00, 0x00, 0x00, 0x00, 0xda, 0xd7, 0x01, 0xec, 0x06, 0xc0, 0x6e, 0x35,
2164 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5a, 0x01, 0xec, 0x06, 0x40, 0xed, 0x32,
2165 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x01, 0xec, 0x06, 0x80, 0xee, 0x32,
2166 + 0x00, 0x00, 0x02, 0x08, 0x80, 0x01, 0x00, 0x80, 0x62, 0xc0, 0x92, 0xb6,
2167 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x82, 0x81, 0x2f, 0x34,
2168 + 0x00, 0x00, 0xaa, 0x07, 0x04, 0x06, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2169 + 0x00, 0x00, 0xaa, 0x07, 0x80, 0x00, 0x00, 0x80, 0x72, 0x81, 0x2f, 0xb6,
2170 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x34,
2171 + 0x3b, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2172 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2173 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x07, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
2174 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xb2, 0x81, 0x2f, 0xb6,
2175 + 0x00, 0x00, 0x0a, 0x08, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x81, 0x2f, 0x94,
2176 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xa0, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2177 + 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2178 + 0x00, 0x00, 0x60, 0x11, 0x00, 0x78, 0x01, 0x60, 0x08, 0x00, 0x6e, 0xf2,
2179 + 0x00, 0x00, 0x0f, 0x08, 0x12, 0x01, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
2180 + 0x00, 0x00, 0x12, 0x08, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2181 + 0x00, 0x00, 0x1e, 0x08, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
2182 + 0x00, 0x00, 0x12, 0x08, 0x12, 0x01, 0x00, 0x60, 0x02, 0x80, 0x2c, 0xb2,
2183 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2184 + 0x00, 0x00, 0x14, 0x08, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x80, 0xbc,
2185 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x1f, 0x80, 0xff, 0x3a,
2186 + 0x00, 0x00, 0x17, 0x08, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2187 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2188 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
2189 + 0x00, 0x00, 0xaa, 0x07, 0x80, 0x00, 0x00, 0x80, 0x72, 0x81, 0x2f, 0xb6,
2190 + 0x3b, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2191 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x94,
2192 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x00, 0x14, 0x08, 0x80, 0x6e, 0x32,
2193 + 0x00, 0x00, 0x12, 0x08, 0x12, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
2194 + 0x00, 0x00, 0x10, 0x08, 0x12, 0x00, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
2195 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xa0, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2196 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
2197 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x00, 0x78, 0xe1, 0x6e, 0x39,
2198 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x20, 0x07, 0x00, 0x00, 0x32,
2199 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x78, 0xca, 0xe9, 0x39,
2200 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x08, 0x40, 0x80, 0x32,
2201 + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x21, 0x2f, 0x39,
2202 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x02, 0x44, 0xe2, 0x25, 0x6e, 0x32,
2203 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x90, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xb2,
2204 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2205 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2206 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x3e,
2207 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
2208 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0x32,
2209 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
2210 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0x3c,
2211 + 0x00, 0x00, 0x82, 0x08, 0x04, 0xb0, 0x00, 0xe0, 0xd6, 0x20, 0x6e, 0xbc,
2212 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2213 + 0x00, 0x00, 0x50, 0x08, 0x04, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0xbc,
2214 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
2215 + 0x00, 0x00, 0x34, 0x08, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
2216 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0xe2, 0xe0, 0x38, 0xb2,
2217 + 0x00, 0x00, 0x41, 0x08, 0x51, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
2218 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf9, 0x81, 0x83, 0x34,
2219 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0xe2, 0xe5, 0x38, 0xb2,
2220 + 0x00, 0x00, 0x39, 0x08, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2221 + 0x00, 0x00, 0x5c, 0x10, 0x00, 0xa0, 0x01, 0x50, 0x08, 0x00, 0x6e, 0xf2,
2222 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x01, 0xe0, 0x06, 0x00, 0x85, 0x32,
2223 + 0x00, 0x00, 0x3b, 0x08, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2224 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2225 + 0x00, 0x00, 0x3f, 0x08, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
2226 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2227 + 0x00, 0x00, 0x3a, 0x08, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
2228 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2229 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
2230 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2231 + 0x00, 0x00, 0x46, 0x08, 0x2a, 0x01, 0x00, 0x00, 0xd8, 0x20, 0x80, 0xba,
2232 + 0x00, 0x00, 0x45, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2233 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2234 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
2235 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2236 + 0x00, 0x00, 0x00, 0x00, 0xca, 0xe0, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0x32,
2237 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2238 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xf0, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2239 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x18, 0x81, 0x83, 0x35,
2240 + 0x00, 0x00, 0x28, 0x08, 0x04, 0xb0, 0x00, 0x80, 0x82, 0x9b, 0x81, 0xbc,
2241 + 0x00, 0x00, 0x8a, 0x11, 0x0d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2242 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2243 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x35,
2244 + 0x08, 0xa0, 0x28, 0x08, 0x12, 0x01, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
2245 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2246 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf9, 0x81, 0x83, 0x34,
2247 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0xe2, 0xe5, 0x38, 0xb2,
2248 + 0x00, 0x00, 0x58, 0x08, 0x28, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0xba,
2249 + 0x00, 0x00, 0x5b, 0x10, 0x00, 0xa0, 0x01, 0x50, 0x08, 0x00, 0x6e, 0xf2,
2250 + 0x00, 0x00, 0x58, 0x08, 0x1d, 0xf8, 0x01, 0xe0, 0x06, 0x00, 0x85, 0xb2,
2251 + 0x00, 0x00, 0x58, 0x08, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2252 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2253 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2254 + 0x00, 0x00, 0x5c, 0x08, 0x04, 0xa0, 0x00, 0xe0, 0x06, 0x80, 0x81, 0xb2,
2255 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
2256 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x90, 0x00, 0xe0, 0x06, 0xc0, 0x86, 0xb2,
2257 + 0x00, 0x00, 0x6e, 0x08, 0x00, 0x98, 0x00, 0xe0, 0x06, 0xc0, 0x84, 0x92,
2258 + 0x00, 0x00, 0x62, 0x08, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2259 + 0x00, 0x00, 0x5f, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2260 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2261 + 0x1d, 0x00, 0x62, 0x08, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2262 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2263 + 0x00, 0x00, 0x5e, 0x08, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x80, 0x2f, 0x94,
2264 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xe0, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xb2,
2265 + 0x00, 0x00, 0x00, 0x00, 0xca, 0xe8, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2266 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xf0, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2267 + 0x00, 0x00, 0x6a, 0x08, 0x04, 0xb0, 0x00, 0x80, 0x82, 0x9b, 0x81, 0xbc,
2268 + 0x00, 0x00, 0x8a, 0x11, 0x0d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2269 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2270 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x35,
2271 + 0x08, 0xa0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
2272 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0xe0, 0x06, 0x80, 0x81, 0x32,
2273 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x00, 0xe0, 0x06, 0xc0, 0x84, 0x32,
2274 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x90, 0x00, 0xe0, 0x06, 0xc0, 0x86, 0xb2,
2275 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
2276 + 0x00, 0x00, 0x74, 0x08, 0x2a, 0x5d, 0x01, 0xec, 0x06, 0x80, 0xee, 0xb2,
2277 + 0x00, 0x00, 0x71, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2278 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2279 + 0x1d, 0x00, 0x74, 0x08, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2280 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2281 + 0x00, 0x00, 0x70, 0x08, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x80, 0x2f, 0x94,
2282 + 0x10, 0x04, 0x77, 0x08, 0x37, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0xb1,
2283 + 0x3b, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2284 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x34,
2285 + 0x08, 0x00, 0x00, 0x00, 0xca, 0x1c, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x39,
2286 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
2287 + 0x00, 0x00, 0x7d, 0x08, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2288 + 0x00, 0x00, 0x7c, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2289 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2290 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2291 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2292 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xc2, 0x00, 0x03, 0xbc,
2293 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x80, 0x67, 0xa1, 0x73, 0x39,
2294 + 0x30, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x5c, 0xa2, 0x8d, 0x2c, 0xb2,
2295 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2296 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xd2, 0xe0, 0x83, 0xbc,
2297 + 0x00, 0x00, 0x8a, 0x11, 0x2a, 0x00, 0x00, 0x78, 0xf9, 0x81, 0x83, 0xb4,
2298 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0xe2, 0xe5, 0x38, 0xb2,
2299 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2300 + 0x00, 0x00, 0x8a, 0x08, 0x1d, 0x00, 0x00, 0x38, 0x18, 0x81, 0x83, 0xb5,
2301 + 0x00, 0x00, 0x8a, 0x08, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2302 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2303 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2304 + 0x00, 0x00, 0x8d, 0x08, 0x04, 0x06, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2305 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x34,
2306 + 0x08, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0xb2,
2307 + 0x00, 0x00, 0x90, 0x08, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2308 + 0x00, 0x00, 0x5c, 0x10, 0x00, 0xa0, 0x01, 0x50, 0x08, 0x00, 0x6e, 0xf2,
2309 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x01, 0xe0, 0x06, 0x00, 0x85, 0x32,
2310 + 0x00, 0x00, 0x92, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2311 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2312 + 0x00, 0x00, 0xae, 0x08, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2313 + 0x00, 0x00, 0x95, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2314 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2315 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0x35,
2316 + 0x00, 0x00, 0xac, 0x08, 0x04, 0x00, 0x00, 0x80, 0x02, 0x61, 0x80, 0xbc,
2317 + 0x00, 0x00, 0xa4, 0x08, 0x80, 0xb8, 0x00, 0x00, 0x09, 0xc0, 0x6e, 0xb2,
2318 + 0x40, 0x00, 0x9c, 0x08, 0x04, 0x00, 0x00, 0x80, 0x82, 0x0d, 0x90, 0xbc,
2319 + 0x80, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x0d, 0x90, 0xbc,
2320 + 0x00, 0x00, 0x9c, 0x08, 0x02, 0xb0, 0x00, 0x80, 0x82, 0x1b, 0x84, 0xbc,
2321 + 0x00, 0x00, 0xa4, 0x08, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x81, 0x2f, 0x94,
2322 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x07, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
2323 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xb2, 0x81, 0x2f, 0xb6,
2324 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0xd6, 0x01, 0x80, 0x52, 0xc0, 0x6e, 0xb6,
2325 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0xec, 0x56, 0xc0, 0x6e, 0x34,
2326 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x18, 0x00, 0x86, 0x3a,
2327 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xb7, 0x01, 0x78, 0x34,
2328 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x01, 0xe0, 0x06, 0x00, 0x86, 0x32,
2329 + 0x40, 0x00, 0xae, 0x08, 0x04, 0x00, 0x00, 0x80, 0x82, 0x0d, 0x90, 0xbc,
2330 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xa0, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2331 + 0x00, 0x00, 0x01, 0x11, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x20, 0x80, 0xfa,
2332 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x00, 0x00, 0x3c, 0x18, 0x20, 0x84, 0xbc,
2333 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xb0, 0x00, 0x3c, 0x88, 0xdb, 0x83, 0xbe,
2334 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x01, 0x78, 0xb6,
2335 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf7, 0x20, 0x78, 0x3a,
2336 + 0x00, 0x00, 0x00, 0x00, 0x58, 0x78, 0x01, 0xe0, 0xf6, 0x20, 0x86, 0x3a,
2337 + 0x00, 0x00, 0x25, 0x08, 0x00, 0x00, 0x00, 0x04, 0xf8, 0x60, 0x80, 0x9a,
2338 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x81, 0x2f, 0xb6,
2339 + 0x2e, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2340 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2341 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xc2, 0x00, 0x03, 0xbc,
2342 + 0x10, 0x00, 0x00, 0x00, 0xd4, 0x18, 0x00, 0x80, 0x67, 0xa1, 0x73, 0x39,
2343 + 0x00, 0x00, 0x00, 0x00, 0xda, 0x5c, 0x01, 0xec, 0x06, 0x80, 0xee, 0x32,
2344 + 0x30, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x5c, 0xa2, 0x8d, 0x2c, 0xb2,
2345 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2346 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x81, 0x2f, 0xb6,
2347 + 0x00, 0x00, 0x1a, 0x08, 0x00, 0x00, 0x00, 0xf8, 0xc2, 0x81, 0x2f, 0x95,
2348 + 0x00, 0x00, 0xb8, 0x08, 0x80, 0x00, 0x00, 0x80, 0xc2, 0x81, 0x2f, 0xb6,
2349 + 0x00, 0x00, 0xbb, 0x08, 0x00, 0xd0, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x92,
2350 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xc2, 0x81, 0x2f, 0x35,
2351 + 0x00, 0x00, 0xbb, 0x08, 0x04, 0xd1, 0x01, 0x80, 0x02, 0x80, 0x6e, 0xbc,
2352 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0xec, 0x26, 0xc0, 0x6e, 0x34,
2353 + 0x00, 0x00, 0xbd, 0x08, 0x80, 0x00, 0x00, 0x80, 0x92, 0x81, 0x2f, 0xb6,
2354 + 0x00, 0x00, 0xc0, 0x08, 0x00, 0xc8, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x92,
2355 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x92, 0x81, 0x2f, 0x35,
2356 + 0x00, 0x00, 0xc0, 0x08, 0x04, 0xc9, 0x01, 0x80, 0x02, 0x80, 0x6e, 0xbc,
2357 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0x34,
2358 + 0x10, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2359 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2360 + 0x00, 0x00, 0xaa, 0x07, 0x9a, 0x01, 0x00, 0xf8, 0x42, 0x81, 0x2f, 0xb5,
2361 + 0x00, 0x00, 0xaa, 0x07, 0x12, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
2362 + 0x00, 0x00, 0xc7, 0x08, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
2363 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x02, 0x80, 0x2c, 0xb2,
2364 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x1f, 0x80, 0xff, 0x9a,
2365 + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x21, 0x2f, 0x39,
2366 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf9, 0x81, 0x97, 0x34,
2367 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x02, 0x44, 0xe2, 0x25, 0x6e, 0x32,
2368 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x01, 0x50, 0x08, 0x00, 0x6e, 0x32,
2369 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x01, 0x60, 0x08, 0x00, 0x6e, 0x32,
2370 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x0c, 0x09, 0x00, 0x6e, 0x32,
2371 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x01, 0x1c, 0x09, 0x00, 0x6e, 0x32,
2372 + 0x00, 0x00, 0x77, 0x10, 0x00, 0xa8, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xf2,
2373 + 0x00, 0x00, 0x00, 0x00, 0xd4, 0xf8, 0x01, 0xe0, 0x06, 0x00, 0x85, 0x32,
2374 + 0x00, 0x00, 0x00, 0x00, 0xda, 0x5c, 0x01, 0xec, 0x06, 0x80, 0xee, 0x32,
2375 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2376 + 0x00, 0x00, 0xd4, 0x08, 0x23, 0x29, 0x02, 0x04, 0x09, 0x80, 0x6e, 0xb2,
2377 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2378 + 0x08, 0x00, 0xd8, 0x08, 0x1d, 0x1c, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xb9,
2379 + 0x00, 0x00, 0xd8, 0x08, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2380 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2381 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2382 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
2383 + 0x00, 0x00, 0xdc, 0x08, 0x9d, 0x01, 0x00, 0x80, 0x07, 0xc0, 0x90, 0xb2,
2384 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x80, 0x07, 0xc0, 0x91, 0x32,
2385 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x80, 0x07, 0x00, 0xee, 0x32,
2386 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x80, 0x07, 0xc0, 0x85, 0x32,
2387 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x80, 0x07, 0x40, 0x90, 0x32,
2388 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x80, 0x87, 0x8d, 0x85, 0x37,
2389 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x07, 0x00, 0x86, 0x32,
2390 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x80, 0x07, 0x00, 0x85, 0x32,
2391 + 0x00, 0x00, 0xe3, 0x08, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2392 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2393 + 0x30, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x5c, 0xa2, 0x8d, 0x2c, 0xb2,
2394 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2395 + 0x00, 0x12, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0xb0,
2396 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x01, 0x78, 0x09, 0x80, 0x6e, 0x32,
2397 + 0x00, 0x00, 0xaa, 0x07, 0xdc, 0xd1, 0x01, 0xe8, 0x06, 0x80, 0x97, 0x92,
2398 + 0x12, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2399 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2400 + 0x00, 0x00, 0x4f, 0x0e, 0x00, 0x00, 0x00, 0x18, 0x09, 0x40, 0x81, 0xf2,
2401 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0xa8, 0x01, 0x20, 0x09, 0x00, 0x6e, 0xf2,
2402 + 0x00, 0x00, 0xaa, 0x07, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x80, 0x2f, 0xb6,
2403 + 0x30, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2404 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x42, 0x81, 0x2f, 0x94,
2405 + 0x00, 0x00, 0xaa, 0x07, 0x35, 0x01, 0x00, 0xf8, 0x12, 0x81, 0x2f, 0xb5,
2406 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2407 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
2408 + 0x00, 0xc0, 0xf6, 0x08, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2409 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
2410 + 0x00, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
2411 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2412 + 0x00, 0x00, 0x47, 0x10, 0x00, 0x98, 0x01, 0x28, 0x09, 0x00, 0x6e, 0xf2,
2413 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2414 + 0x00, 0x00, 0xff, 0x08, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x81, 0x2f, 0xb6,
2415 + 0x00, 0x00, 0xff, 0x08, 0x80, 0x00, 0x00, 0x80, 0x42, 0x81, 0x2f, 0xb6,
2416 + 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
2417 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x2f, 0xd2,
2418 + 0x00, 0x00, 0xff, 0x08, 0x08, 0x5b, 0x01, 0xec, 0x06, 0xfb, 0x6e, 0xbc,
2419 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5a, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
2420 + 0x34, 0x00, 0x00, 0x00, 0xd4, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0x32,
2421 + 0x00, 0x00, 0x06, 0x09, 0x80, 0x01, 0x00, 0x80, 0x92, 0x81, 0x2f, 0xb6,
2422 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xc2, 0x81, 0x2f, 0xb6,
2423 + 0x00, 0x00, 0x0d, 0x09, 0x08, 0xc9, 0x01, 0xe8, 0x06, 0xbb, 0x6e, 0xbc,
2424 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
2425 + 0x32, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2426 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x01, 0xf2,
2427 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2428 + 0x00, 0x00, 0x0d, 0x09, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x81, 0x2f, 0xb6,
2429 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x92, 0x81, 0x2f, 0xb6,
2430 + 0x00, 0x00, 0x0d, 0x09, 0x08, 0xd1, 0x01, 0xe8, 0x06, 0xbb, 0x6e, 0xbc,
2431 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
2432 + 0x32, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2433 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0x01, 0xf2,
2434 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2435 + 0x00, 0x00, 0xaa, 0x07, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
2436 + 0x17, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0x92,
2437 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x07, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
2438 + 0x00, 0x00, 0x13, 0x09, 0x12, 0x00, 0x00, 0xc8, 0x02, 0x00, 0x20, 0xb2,
2439 + 0x00, 0x00, 0x16, 0x09, 0x12, 0x01, 0x00, 0x5c, 0x08, 0x80, 0x20, 0xb2,
2440 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x02, 0x80, 0x2c, 0xb2,
2441 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x1f, 0x80, 0xff, 0x3a,
2442 + 0x00, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
2443 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2444 + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x79, 0x21, 0x2f, 0x39,
2445 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf9, 0x81, 0x97, 0x34,
2446 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x02, 0x44, 0xe2, 0x25, 0x6e, 0x32,
2447 + 0x00, 0x00, 0x00, 0x00, 0xd4, 0xa0, 0x01, 0x50, 0x08, 0x00, 0x6e, 0x32,
2448 + 0x00, 0x00, 0x00, 0x00, 0xdb, 0x79, 0x01, 0x60, 0x08, 0x00, 0x6e, 0x32,
2449 + 0x00, 0x00, 0x5c, 0x10, 0x00, 0x00, 0x00, 0x04, 0x08, 0x00, 0x00, 0xf2,
2450 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x01, 0xe0, 0x06, 0x00, 0x85, 0x32,
2451 + 0x00, 0x00, 0x1f, 0x09, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2452 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2453 + 0x30, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0xa2, 0x8d, 0x2c, 0xb2,
2454 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x07, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2455 + 0x00, 0x00, 0xaa, 0x07, 0xda, 0x5c, 0x01, 0xec, 0x06, 0x80, 0xee, 0x92,
2456 + 0x00, 0x00, 0xaa, 0x07, 0x9f, 0x41, 0x01, 0x80, 0x52, 0x20, 0x6e, 0xbc,
2457 + 0x00, 0x00, 0x2d, 0x09, 0x9f, 0x98, 0x01, 0x80, 0x52, 0x20, 0x6e, 0xbc,
2458 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2459 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
2460 + 0x00, 0xc0, 0x2b, 0x09, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2461 + 0x20, 0x80, 0xaa, 0x07, 0x31, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xb2,
2462 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x12, 0x81, 0x2f, 0x34,
2463 + 0x3a, 0x00, 0xaa, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2464 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2465 + 0x00, 0x00, 0x47, 0x10, 0x00, 0x98, 0x01, 0x28, 0x09, 0x00, 0x6e, 0xf2,
2466 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2467 + 0x00, 0x00, 0xaa, 0x07, 0xd5, 0x41, 0x01, 0xe0, 0x06, 0x40, 0x81, 0x92,
2468 + 0x00, 0x00, 0xaa, 0x07, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
2469 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x01, 0x00, 0x08, 0x00, 0x6e, 0x32,
2470 + 0x00, 0x00, 0x60, 0x11, 0x00, 0x78, 0x01, 0x60, 0x08, 0x00, 0x6e, 0xf2,
2471 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2472 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x78, 0x09, 0x80, 0x6e, 0x32,
2473 + 0x00, 0x00, 0x35, 0x09, 0x04, 0xd4, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
2474 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x19, 0x80, 0x97, 0x37,
2475 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x01, 0xe0, 0xe6, 0x25, 0x6e, 0x3a,
2476 + 0x00, 0x00, 0x60, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2477 + 0x00, 0x00, 0x39, 0x09, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2478 + 0x00, 0x00, 0xaa, 0x07, 0x00, 0x90, 0x01, 0xe0, 0x06, 0x00, 0x80, 0x92,
2479 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x01, 0xe0, 0x06, 0x00, 0x80, 0x32,
2480 + 0x00, 0x00, 0x1a, 0x08, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2481 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x00, 0x6e, 0x32,
2482 + 0x02, 0x00, 0x3f, 0x09, 0x04, 0xb9, 0x00, 0x80, 0x82, 0xcd, 0x6e, 0xbc,
2483 + 0x00, 0x00, 0x41, 0x09, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0xfc, 0xb6,
2484 + 0x00, 0x00, 0x44, 0x09, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x92,
2485 + 0x00, 0x00, 0x41, 0x09, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0xfc, 0xb6,
2486 + 0x00, 0x00, 0x44, 0x09, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x92,
2487 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0xf5, 0xbc,
2488 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x42, 0xbd, 0x97, 0x30,
2489 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x99, 0xb1, 0xf2, 0xc0, 0x7c, 0x30,
2490 + 0x00, 0xc0, 0x48, 0x09, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2491 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
2492 + 0x00, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2493 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2494 + 0x00, 0x08, 0x00, 0x80, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
2495 + 0x00, 0x00, 0x50, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
2496 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x07, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2497 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xa2, 0x00, 0x2d, 0x37,
2498 + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x00, 0x36, 0x32,
2499 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x99, 0xe1, 0x07, 0x00, 0x00, 0x32,
2500 + 0x00, 0x00, 0x4d, 0x09, 0x04, 0x01, 0x00, 0x78, 0x19, 0x80, 0x97, 0xbc,
2501 + 0x02, 0x00, 0x59, 0x09, 0x04, 0xb9, 0x00, 0x80, 0x82, 0xcd, 0x6e, 0xbc,
2502 + 0x00, 0x00, 0x00, 0x48, 0xd6, 0x01, 0x00, 0x78, 0xc9, 0xcd, 0x2c, 0x32,
2503 + 0x00, 0x00, 0x51, 0x09, 0xb6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2504 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x64, 0x02, 0x80, 0x97, 0xb2,
2505 + 0x00, 0x00, 0x53, 0x09, 0x12, 0x08, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2506 + 0x00, 0x00, 0x54, 0x09, 0x12, 0x18, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2507 + 0x00, 0x00, 0x55, 0x09, 0x12, 0x10, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2508 + 0x00, 0x00, 0x00, 0x00, 0xa6, 0x54, 0x01, 0xec, 0x06, 0x00, 0x2b, 0x32,
2509 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x01, 0xe8, 0x06, 0xc0, 0x2c, 0x32,
2510 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x0e, 0x01, 0xec, 0x06, 0x00, 0x00, 0x94,
2511 + 0x00, 0x20, 0x00, 0x4c, 0xd6, 0x01, 0x00, 0x78, 0xc9, 0xcd, 0x2c, 0x32,
2512 + 0x00, 0x00, 0x5a, 0x09, 0xb6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2513 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x64, 0x02, 0x80, 0x97, 0xb2,
2514 + 0x00, 0x00, 0x5c, 0x09, 0x12, 0x08, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2515 + 0x00, 0x00, 0x5d, 0x09, 0x12, 0x30, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2516 + 0x00, 0x00, 0x5e, 0x09, 0x12, 0x38, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2517 + 0x00, 0x00, 0x5f, 0x09, 0x12, 0x40, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2518 + 0x00, 0x00, 0x60, 0x09, 0x12, 0x48, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2519 + 0x00, 0x00, 0x61, 0x09, 0x12, 0x10, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2520 + 0x00, 0x00, 0x62, 0x09, 0x12, 0x18, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2521 + 0x00, 0x00, 0x63, 0x09, 0x12, 0x20, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2522 + 0x00, 0x00, 0x64, 0x09, 0x12, 0x28, 0x00, 0x64, 0x02, 0x00, 0x6e, 0xb2,
2523 + 0x00, 0x00, 0x00, 0x00, 0xa6, 0x54, 0x01, 0xec, 0x06, 0x00, 0x2b, 0x32,
2524 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x64, 0x01, 0xe8, 0x06, 0xc0, 0x2c, 0x32,
2525 + 0x03, 0x00, 0xa2, 0x07, 0x00, 0x0e, 0x01, 0xec, 0x06, 0x00, 0x36, 0x92,
2526 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
2527 + 0x00, 0x00, 0x6b, 0x09, 0x00, 0x00, 0x00, 0x14, 0x08, 0x80, 0x3d, 0x92,
2528 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x02, 0x32,
2529 + 0x00, 0x00, 0x6e, 0x09, 0x04, 0x00, 0x00, 0xdc, 0x53, 0x60, 0x3d, 0xb3,
2530 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x03, 0x39,
2531 + 0x6a, 0x09, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
2532 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
2533 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2534 + 0x00, 0xc0, 0x74, 0x09, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2535 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
2536 + 0x14, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2537 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2538 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x07, 0x00, 0x00, 0x32,
2539 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
2540 + 0x00, 0x10, 0x00, 0x82, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
2541 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
2542 + 0x00, 0x00, 0xa2, 0x07, 0xca, 0x01, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x94,
2543 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x62, 0x81, 0x2f, 0xb6,
2544 + 0x2c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2545 + 0x00, 0x00, 0x7d, 0x09, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2546 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2547 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2548 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2549 + 0x29, 0x00, 0xa2, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2550 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2551 + 0x00, 0x00, 0x2c, 0x10, 0x00, 0x00, 0x00, 0x2c, 0x09, 0xc0, 0x85, 0xd2,
2552 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2553 + 0x00, 0x00, 0xa1, 0x03, 0x23, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
2554 + 0x3c, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2555 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2556 + 0x00, 0x00, 0x2c, 0x10, 0x00, 0x00, 0x00, 0x2c, 0x09, 0xc0, 0x85, 0xd2,
2557 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0x94,
2558 + 0x00, 0x00, 0x8c, 0x09, 0x38, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xb2,
2559 + 0x00, 0x00, 0x8c, 0x09, 0x1e, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2560 + 0x00, 0x00, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2561 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2562 + 0x00, 0x00, 0x8f, 0x09, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
2563 + 0x00, 0x82, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
2564 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2565 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
2566 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
2567 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
2568 + 0x00, 0xc0, 0x99, 0x09, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2569 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
2570 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0xb2,
2571 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0xb2,
2572 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x34, 0x02, 0x00, 0x86, 0xb2,
2573 + 0x20, 0x80, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
2574 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2575 + 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2576 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
2577 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
2578 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x86, 0x32,
2579 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
2580 + 0x00, 0x00, 0x01, 0x0e, 0x00, 0x30, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0xfa,
2581 + 0x00, 0x00, 0xa2, 0x09, 0x38, 0x01, 0x00, 0x2c, 0xf8, 0x01, 0x0b, 0xb4,
2582 + 0x00, 0x00, 0xa2, 0x09, 0x02, 0x0d, 0x02, 0x80, 0xa2, 0x5b, 0x80, 0xbc,
2583 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xc8, 0xc1, 0x82, 0x34,
2584 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0xa8, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0xbc,
2585 + 0x00, 0x00, 0x3b, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2586 + 0x00, 0x00, 0xa7, 0x09, 0x27, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xb2,
2587 + 0x00, 0x00, 0x00, 0x00, 0xc7, 0x00, 0x00, 0x2c, 0xe8, 0xc0, 0x82, 0x34,
2588 + 0x00, 0x00, 0x00, 0x00, 0xd5, 0x40, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x32,
2589 + 0x08, 0x00, 0xb0, 0x10, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xf9,
2590 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2591 + 0x00, 0x00, 0xab, 0x09, 0x23, 0x19, 0x00, 0x00, 0x07, 0x80, 0x81, 0xb2,
2592 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2593 + 0x00, 0x00, 0xad, 0x09, 0x1d, 0x21, 0x00, 0x00, 0x07, 0x00, 0x82, 0xb2,
2594 + 0x00, 0x00, 0xb0, 0x09, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2595 + 0x00, 0x00, 0xb0, 0x09, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2596 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2597 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2598 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2599 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
2600 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x62, 0x80, 0x2d, 0xbc,
2601 + 0x10, 0x00, 0xb6, 0x09, 0x2c, 0x30, 0x00, 0x00, 0x17, 0xe0, 0x2c, 0xb9,
2602 + 0x00, 0x00, 0xb8, 0x09, 0x8e, 0x39, 0x00, 0x00, 0x07, 0xc0, 0x82, 0xb2,
2603 + 0x00, 0x00, 0xb8, 0x09, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x87, 0x92,
2604 + 0x00, 0x00, 0xb8, 0x09, 0x8e, 0x39, 0x00, 0x00, 0xb7, 0xc1, 0x82, 0xb4,
2605 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x87, 0x32,
2606 + 0x00, 0x00, 0xba, 0x09, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2607 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2608 + 0x00, 0x00, 0xc0, 0x09, 0x04, 0x01, 0x00, 0x80, 0x12, 0x80, 0x2d, 0xbc,
2609 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
2610 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
2611 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
2612 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
2613 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
2614 + 0x00, 0x00, 0xb8, 0x09, 0x9f, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2615 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
2616 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
2617 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
2618 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
2619 + 0x00, 0x00, 0xc8, 0x09, 0x1e, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2620 + 0x00, 0x00, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2621 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2622 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0xa8, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0xbc,
2623 + 0x00, 0x00, 0x01, 0x0e, 0x00, 0x00, 0x00, 0x14, 0x08, 0x00, 0x00, 0xf2,
2624 + 0x00, 0x00, 0x3b, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2625 + 0x00, 0x00, 0xa4, 0x07, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x81, 0xbc,
2626 + 0x00, 0x00, 0xce, 0x09, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2627 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2628 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
2629 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
2630 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
2631 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
2632 + 0x00, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
2633 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2634 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x00, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
2635 + 0x00, 0x00, 0x8a, 0x11, 0x1c, 0x40, 0x02, 0x80, 0x06, 0xc0, 0x85, 0xb2,
2636 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0x94,
2637 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x00, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
2638 + 0x00, 0x00, 0x2c, 0x10, 0xd6, 0x01, 0x00, 0x2c, 0x09, 0xc0, 0x85, 0xd2,
2639 + 0x00, 0x00, 0xa1, 0x03, 0xd2, 0x01, 0x00, 0x94, 0x1e, 0x40, 0xe9, 0x9a,
2640 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2641 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
2642 + 0x00, 0x00, 0xee, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2643 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
2644 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x51, 0x01, 0x80, 0x02, 0x80, 0x6e, 0xbc,
2645 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x21, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
2646 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
2647 + 0x00, 0x00, 0xe4, 0x09, 0x1f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2648 + 0x00, 0x00, 0xe1, 0x09, 0x9e, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0xb2,
2649 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2650 + 0x00, 0x00, 0xa4, 0x07, 0x2a, 0x31, 0x01, 0xe0, 0x06, 0x00, 0x00, 0xb2,
2651 + 0x18, 0x00, 0x00, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0x39,
2652 + 0xa4, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x32,
2653 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2654 + 0x0c, 0x00, 0xeb, 0x09, 0x00, 0x00, 0x00, 0x58, 0x08, 0x00, 0x36, 0x92,
2655 + 0x00, 0x00, 0xeb, 0x09, 0x00, 0x00, 0x00, 0x58, 0x08, 0x00, 0x00, 0x92,
2656 + 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x08, 0x00, 0x36, 0x32,
2657 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
2658 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
2659 + 0x00, 0x00, 0xee, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2660 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0xb2,
2661 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
2662 + 0x00, 0x00, 0x25, 0x0a, 0x38, 0x00, 0x00, 0xa4, 0x08, 0x80, 0x82, 0xb2,
2663 + 0x00, 0x00, 0x25, 0x0a, 0x04, 0x28, 0x01, 0x04, 0x08, 0x00, 0x6e, 0xb2,
2664 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x50, 0x01, 0x04, 0xa8, 0x5b, 0x80, 0xbc,
2665 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x20, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0xbc,
2666 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
2667 + 0x00, 0x00, 0x0a, 0x0a, 0x08, 0x01, 0x00, 0x28, 0x18, 0xa0, 0x82, 0xbc,
2668 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xe0, 0xa6, 0x20, 0x00, 0x3c,
2669 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2670 + 0x00, 0xc0, 0xfb, 0x09, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2671 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
2672 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2673 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2674 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
2675 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x78, 0x09, 0x00, 0x6e, 0x32,
2676 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2677 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x80, 0x97, 0x32,
2678 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x97, 0x32,
2679 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
2680 + 0x00, 0x20, 0x00, 0x80, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
2681 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x3d, 0x00, 0x0c, 0x07, 0x80, 0x83, 0x32,
2682 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x08, 0x40, 0x00, 0x32,
2683 + 0x00, 0x00, 0x08, 0x0a, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2684 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3a,
2685 + 0x00, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
2686 + 0x00, 0x00, 0x66, 0x0a, 0x12, 0x01, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
2687 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2688 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x6c, 0x18, 0x20, 0x6e, 0x3a,
2689 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2690 + 0x00, 0x00, 0x0f, 0x0a, 0x00, 0x38, 0x01, 0xe0, 0x06, 0x40, 0x80, 0x92,
2691 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x6c, 0x18, 0x20, 0x6e, 0x3a,
2692 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2693 + 0x00, 0x00, 0x11, 0x0a, 0x9f, 0x01, 0x00, 0x04, 0x68, 0x60, 0x80, 0xbc,
2694 + 0x00, 0x00, 0x1a, 0x0a, 0x00, 0x00, 0x00, 0x18, 0x18, 0x20, 0x00, 0x9c,
2695 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2696 + 0x00, 0x00, 0x14, 0x0a, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2697 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2698 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x70, 0x00, 0x18, 0x08, 0x00, 0x6e, 0x32,
2699 + 0x00, 0x00, 0x0d, 0x0a, 0x02, 0x01, 0x00, 0x80, 0x62, 0x60, 0x80, 0xbc,
2700 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2701 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x35,
2702 + 0x00, 0xa0, 0x0d, 0x0a, 0x12, 0x01, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
2703 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2704 + 0x00, 0x00, 0x1f, 0x0a, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2705 + 0x00, 0x00, 0x1f, 0x0a, 0x04, 0x00, 0x00, 0x80, 0xa2, 0xa0, 0x81, 0xbc,
2706 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2707 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x35,
2708 + 0x00, 0xa0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
2709 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
2710 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
2711 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0xe0, 0x06, 0x80, 0x82, 0x32,
2712 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xe0, 0x06, 0x80, 0x81, 0x32,
2713 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0xe0, 0x06, 0xc0, 0x86, 0xb2,
2714 + 0x00, 0x00, 0x27, 0x0a, 0x00, 0x18, 0x00, 0xe0, 0x06, 0xc0, 0x84, 0x92,
2715 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xb2,
2716 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
2717 + 0x00, 0x00, 0xa3, 0x0e, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xf2,
2718 + 0x00, 0x00, 0x2a, 0x0a, 0x00, 0x50, 0x01, 0x3c, 0xa8, 0x5b, 0x80, 0x9c,
2719 + 0x00, 0x00, 0xa4, 0x07, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x92,
2720 + 0x00, 0x00, 0x2f, 0x0a, 0x3e, 0x51, 0x01, 0x00, 0xa8, 0x1b, 0x80, 0xba,
2721 + 0x00, 0x00, 0x00, 0x00, 0xde, 0x00, 0x00, 0xf8, 0xf2, 0x81, 0x2f, 0x34,
2722 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x01, 0xec, 0x06, 0xc0, 0xee, 0x32,
2723 + 0x00, 0x00, 0x2f, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x87, 0xb6,
2724 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x80, 0x2f, 0x34,
2725 + 0x00, 0x00, 0x4c, 0x0f, 0x60, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0xf2,
2726 + 0x00, 0x00, 0x7b, 0x0a, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
2727 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
2728 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x08, 0x00, 0x00, 0x32,
2729 + 0x00, 0x00, 0x3a, 0x0a, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2730 + 0x00, 0x00, 0x00, 0x00, 0xc9, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3a,
2731 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2732 + 0x00, 0x00, 0x00, 0x00, 0xdf, 0x00, 0x00, 0xa4, 0xa8, 0x60, 0x8a, 0x3c,
2733 + 0x00, 0x00, 0x8a, 0x11, 0x0f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2734 + 0x00, 0xc0, 0x3e, 0x0a, 0x12, 0x01, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
2735 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2736 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
2737 + 0x00, 0x00, 0x00, 0x00, 0xdf, 0x00, 0x00, 0xa4, 0xa8, 0x60, 0x8a, 0x3c,
2738 + 0x00, 0x00, 0x8a, 0x11, 0x0f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2739 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2740 + 0x00, 0x00, 0x00, 0x00, 0xde, 0xa8, 0x01, 0x20, 0x99, 0x22, 0x6e, 0x3a,
2741 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x02, 0x80, 0x82, 0x1b, 0x92, 0xbc,
2742 + 0x00, 0x00, 0x42, 0x0a, 0x2f, 0x20, 0x01, 0xe0, 0x96, 0x22, 0x6e, 0xbc,
2743 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2744 + 0x00, 0x00, 0x4a, 0x0a, 0x1f, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0xb2,
2745 + 0x00, 0x00, 0x45, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x83, 0xbc,
2746 + 0x00, 0x00, 0x4a, 0x0a, 0x00, 0x50, 0x01, 0xe8, 0xf6, 0x60, 0x80, 0x9c,
2747 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x78, 0x39, 0x9a, 0xfe, 0x38,
2748 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
2749 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
2750 + 0x08, 0x00, 0x73, 0x11, 0x00, 0x40, 0x02, 0x14, 0x39, 0x9a, 0xfe, 0xd8,
2751 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x68, 0x12, 0x9a, 0xfe, 0x38,
2752 + 0x00, 0x00, 0x4f, 0x0a, 0x2a, 0xa9, 0x01, 0xe0, 0x06, 0x00, 0x92, 0xb2,
2753 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2754 + 0x1d, 0x00, 0x4f, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2755 + 0x00, 0x00, 0x4b, 0x0a, 0x04, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2756 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2757 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2758 + 0x00, 0x00, 0x52, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x2f, 0xb6,
2759 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2760 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2761 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x32,
2762 + 0x00, 0xc0, 0x61, 0x0a, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2763 + 0x18, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x82, 0xb6,
2764 + 0x00, 0x00, 0x58, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x81, 0xbc,
2765 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2766 + 0x18, 0x00, 0x5a, 0x0a, 0x2e, 0x49, 0x01, 0xe0, 0xe6, 0xa0, 0x82, 0xb9,
2767 + 0x00, 0x00, 0x5b, 0x0a, 0x00, 0x5e, 0x01, 0xec, 0x76, 0x00, 0x00, 0x94,
2768 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
2769 + 0x20, 0x80, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
2770 + 0x1b, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2771 + 0x0c, 0x00, 0xa1, 0x03, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x85, 0xbc,
2772 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x30, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
2773 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2774 + 0x00, 0x00, 0x9e, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x80, 0x85, 0x92,
2775 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2f, 0xb6,
2776 + 0x00, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
2777 + 0x00, 0x00, 0xcb, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
2778 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
2779 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3a,
2780 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2781 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2782 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2783 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
2784 + 0x00, 0x00, 0x67, 0x0a, 0x0b, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2785 + 0x00, 0x00, 0x6e, 0x0a, 0x3d, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0xb2,
2786 + 0x00, 0x00, 0x6e, 0x0a, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
2787 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
2788 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2789 + 0x00, 0x00, 0x72, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x92, 0x80, 0x2f, 0xb6,
2790 + 0x2a, 0x00, 0x78, 0x0a, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2791 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2792 + 0x00, 0x00, 0x75, 0x0a, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2793 + 0x00, 0x00, 0x78, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x62, 0x81, 0x2f, 0xb6,
2794 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2795 + 0x00, 0x00, 0x78, 0x0a, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2796 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2797 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2798 + 0x00, 0x00, 0xa2, 0x07, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x85, 0xbc,
2799 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2800 + 0x00, 0x00, 0x9e, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x80, 0x85, 0x92,
2801 + 0x00, 0x00, 0xa4, 0x07, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2802 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2803 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2804 + 0x00, 0x00, 0x80, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
2805 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x31, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
2806 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x31, 0x00, 0x80, 0x82, 0x9b, 0x82, 0xbc,
2807 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x12, 0xa0, 0x82, 0xbc,
2808 + 0x00, 0x00, 0x00, 0x00, 0xce, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2809 + 0x00, 0xc0, 0x86, 0x0a, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2810 + 0x20, 0x80, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
2811 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2812 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2813 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2814 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x82, 0xbc,
2815 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2816 + 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2817 + 0x00, 0x00, 0x8f, 0x0a, 0x3f, 0x00, 0x00, 0x3c, 0x08, 0x40, 0x80, 0xb2,
2818 + 0x00, 0x00, 0x8f, 0x0a, 0x80, 0x01, 0x00, 0x80, 0xe2, 0x81, 0x2f, 0xb6,
2819 + 0x00, 0x00, 0x00, 0x00, 0xde, 0x00, 0x00, 0xf8, 0xf2, 0x81, 0x2f, 0x34,
2820 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x01, 0xec, 0x06, 0xc0, 0xee, 0x32,
2821 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x3e,
2822 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
2823 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0x32,
2824 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
2825 + 0x00, 0x00, 0xda, 0x0a, 0x04, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0xbc,
2826 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2827 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0x3c,
2828 + 0x00, 0x00, 0xb0, 0x0a, 0x04, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0xbc,
2829 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
2830 + 0x00, 0x00, 0x9b, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
2831 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0x02, 0xc0, 0x38, 0xb2,
2832 + 0x00, 0x00, 0xae, 0x0a, 0x51, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
2833 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
2834 + 0x00, 0x00, 0xa7, 0x0a, 0x28, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
2835 + 0x00, 0x00, 0xa5, 0x0a, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
2836 + 0x00, 0x00, 0xa1, 0x0a, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
2837 + 0x00, 0x00, 0xa5, 0x0a, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
2838 + 0x00, 0x00, 0xa5, 0x0a, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2839 + 0x00, 0x00, 0xa3, 0x0a, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2840 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
2841 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
2842 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2843 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0xe0, 0x16, 0x20, 0x6e, 0x3c,
2844 + 0x00, 0x00, 0x3c, 0x0e, 0xda, 0x5b, 0x01, 0xec, 0x06, 0x40, 0xed, 0xf2,
2845 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2846 + 0x00, 0x00, 0xac, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
2847 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2848 + 0x00, 0x00, 0xa7, 0x0a, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
2849 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
2850 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
2851 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
2852 + 0x00, 0x00, 0xaf, 0x0e, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x20, 0x80, 0xfa,
2853 + 0x00, 0x00, 0x90, 0x0a, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x9e,
2854 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
2855 + 0x00, 0x00, 0xbc, 0x0a, 0x28, 0x00, 0x00, 0x80, 0x08, 0x40, 0x00, 0xb2,
2856 + 0x00, 0x00, 0xba, 0x0a, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
2857 + 0x00, 0x00, 0xb6, 0x0a, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
2858 + 0x00, 0x00, 0xba, 0x0a, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
2859 + 0x00, 0x00, 0xba, 0x0a, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2860 + 0x00, 0x00, 0xb8, 0x0a, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2861 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
2862 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
2863 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2864 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0xe0, 0x16, 0x20, 0x6e, 0x3c,
2865 + 0x00, 0x00, 0x3c, 0x0e, 0xda, 0x5b, 0x01, 0xec, 0x06, 0x40, 0xed, 0xf2,
2866 + 0x00, 0x00, 0xe0, 0x0a, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2867 + 0x00, 0x00, 0xc0, 0x0a, 0x04, 0x21, 0x00, 0xe0, 0x06, 0x80, 0x81, 0xb2,
2868 + 0x00, 0x00, 0xaf, 0x0e, 0x00, 0x00, 0x00, 0x34, 0x08, 0x00, 0x00, 0xf2,
2869 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xe0, 0x06, 0x80, 0x81, 0x32,
2870 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
2871 + 0x00, 0x00, 0xc6, 0x0a, 0x2a, 0x11, 0x00, 0xe0, 0xd6, 0xe0, 0x86, 0xba,
2872 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2873 + 0x1d, 0x00, 0xc6, 0x0a, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2874 + 0x00, 0x00, 0xc2, 0x0a, 0x9f, 0x01, 0x00, 0x80, 0x18, 0x00, 0x88, 0xbc,
2875 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2876 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2877 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2878 + 0x08, 0x00, 0xca, 0x0a, 0x23, 0x19, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xb9,
2879 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2880 + 0x00, 0x00, 0xce, 0x0a, 0x1d, 0x18, 0x00, 0xe0, 0x06, 0xc0, 0x84, 0xb2,
2881 + 0x00, 0x00, 0xce, 0x0a, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2882 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2883 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
2884 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
2885 + 0x00, 0x00, 0xd3, 0x0a, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0x88, 0xbc,
2886 + 0x00, 0x00, 0xd2, 0x0a, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2887 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2888 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2889 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
2890 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
2891 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
2892 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
2893 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
2894 + 0x00, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
2895 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2896 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x78, 0x19, 0x20, 0x6e, 0x3c,
2897 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xe2, 0xa5, 0x82, 0xbc,
2898 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2899 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x88, 0xbc,
2900 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
2901 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
2902 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
2903 + 0x00, 0x00, 0xe4, 0x0a, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2904 + 0x00, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
2905 + 0x00, 0x00, 0xe5, 0x0a, 0xc9, 0x01, 0x00, 0x14, 0x08, 0x00, 0x00, 0x92,
2906 + 0x00, 0x00, 0x00, 0x00, 0x45, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
2907 + 0x00, 0x00, 0xef, 0x0a, 0x28, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xb4,
2908 + 0x00, 0x00, 0xee, 0x0a, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
2909 + 0x00, 0x00, 0xea, 0x0a, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
2910 + 0x00, 0x00, 0xee, 0x0a, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
2911 + 0x00, 0x00, 0xee, 0x0a, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
2912 + 0x00, 0x00, 0xec, 0x0a, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2913 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
2914 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
2915 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2916 + 0x00, 0x00, 0x3c, 0x0e, 0xda, 0x5b, 0x01, 0xec, 0x06, 0x40, 0xed, 0xf2,
2917 + 0x00, 0x20, 0x00, 0x80, 0xdf, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
2918 + 0x00, 0x00, 0xf3, 0x0a, 0x3d, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xb2,
2919 + 0x00, 0x00, 0xf3, 0x0a, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
2920 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
2921 + 0x00, 0x00, 0xcb, 0x10, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x81, 0x2f, 0xf5,
2922 + 0x08, 0x00, 0xb0, 0x10, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xf9,
2923 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2924 + 0x00, 0x00, 0xf8, 0x0a, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x2f, 0xb6,
2925 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2926 + 0x00, 0x00, 0xfd, 0x0a, 0x29, 0x08, 0x01, 0xe4, 0x06, 0xc0, 0x2d, 0xb2,
2927 + 0x00, 0x00, 0x02, 0x0b, 0x1d, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2928 + 0x00, 0x00, 0x02, 0x0b, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
2929 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2930 + 0x00, 0x00, 0x02, 0x0b, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x94,
2931 + 0x00, 0x00, 0xff, 0x0a, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2932 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2933 + 0x1d, 0x00, 0x01, 0x0b, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
2934 + 0x00, 0x00, 0xfe, 0x0a, 0x00, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0x9c,
2935 + 0x2a, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2936 + 0x00, 0x00, 0xc7, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
2937 + 0x00, 0x00, 0x05, 0x0b, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x81, 0xbc,
2938 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2939 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
2940 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
2941 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
2942 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
2943 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
2944 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
2945 + 0x00, 0x00, 0xa4, 0x03, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
2946 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2947 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x31, 0x00, 0x80, 0x82, 0x9b, 0x82, 0xbc,
2948 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x80, 0x12, 0xa0, 0x82, 0xbc,
2949 + 0x25, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
2950 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0xa9, 0x60, 0x80, 0xd9,
2951 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2952 + 0x00, 0xc0, 0x15, 0x0b, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
2953 + 0x20, 0x80, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
2954 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2955 + 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0x31,
2956 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x81, 0x32,
2957 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
2958 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0x32,
2959 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
2960 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
2961 + 0x00, 0x00, 0x20, 0x0b, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
2962 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0xa8, 0x60, 0x80, 0x3c,
2963 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x08, 0x40, 0x80, 0x32,
2964 + 0x00, 0x00, 0x3b, 0x0e, 0x00, 0x00, 0x00, 0x04, 0x08, 0x80, 0x82, 0xf2,
2965 + 0x00, 0x00, 0x21, 0x0b, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
2966 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2967 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x20, 0x80, 0x3a,
2968 + 0x00, 0x00, 0x26, 0x0b, 0x04, 0x00, 0x00, 0x28, 0x68, 0xa0, 0x82, 0xbc,
2969 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
2970 + 0x00, 0x00, 0xaf, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2971 + 0x00, 0x00, 0x17, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x81, 0x92,
2972 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
2973 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
2974 + 0x00, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
2975 + 0x00, 0x00, 0xc7, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
2976 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2977 + 0x00, 0x00, 0x2e, 0x0b, 0x3d, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0xb2,
2978 + 0x00, 0x00, 0x2e, 0x0b, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
2979 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
2980 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x04, 0x08, 0x80, 0x86, 0xb2,
2981 + 0x00, 0x00, 0x3c, 0x0b, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
2982 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x28, 0x09, 0x80, 0x80, 0xb2,
2983 + 0x00, 0x00, 0xef, 0x0f, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xd2,
2984 + 0x00, 0x00, 0x34, 0x0b, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
2985 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
2986 + 0x00, 0x00, 0x3a, 0x10, 0x00, 0x00, 0x00, 0x78, 0x38, 0x80, 0x87, 0xf5,
2987 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0xf2,
2988 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
2989 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
2990 + 0x00, 0x00, 0xa5, 0x02, 0x23, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0xb4,
2991 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x32, 0x80, 0x2f, 0x35,
2992 + 0x3c, 0x00, 0xa5, 0x02, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
2993 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
2994 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
2995 + 0x00, 0x00, 0x3f, 0x0b, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
2996 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x31, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
2997 + 0x00, 0x00, 0x41, 0x0b, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
2998 + 0x00, 0x82, 0x4b, 0x0b, 0x00, 0x00, 0x00, 0x08, 0xa8, 0x8d, 0x80, 0x92,
2999 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
3000 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
3001 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
3002 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3003 + 0x00, 0xc0, 0x5c, 0x0b, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3004 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xa8, 0x8d, 0x80, 0x32,
3005 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
3006 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0xb2,
3007 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0xb2,
3008 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x34, 0x02, 0x00, 0x86, 0xb2,
3009 + 0x00, 0x00, 0x53, 0x0b, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3010 + 0x00, 0x00, 0x4f, 0x0b, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3011 + 0x00, 0x00, 0x53, 0x0b, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3012 + 0x00, 0x00, 0x53, 0x0b, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3013 + 0x00, 0x00, 0x51, 0x0b, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3014 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3015 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3016 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3017 + 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3018 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
3019 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3020 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3021 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3022 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3023 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3024 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x3a,
3025 + 0x00, 0x00, 0xa4, 0x07, 0x00, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x92,
3026 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3027 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
3028 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
3029 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
3030 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x86, 0x32,
3031 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3032 + 0x00, 0x00, 0x39, 0x10, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xf2,
3033 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x81, 0x32,
3034 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x17, 0xe0, 0x2c, 0x39,
3035 + 0x00, 0x10, 0x00, 0x80, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
3036 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0xf2,
3037 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
3038 + 0x00, 0x00, 0x6a, 0x0b, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x2f, 0xb6,
3039 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3040 + 0x00, 0x00, 0xc3, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3041 + 0x00, 0x00, 0x6e, 0x0b, 0x1d, 0x21, 0x00, 0x00, 0x07, 0x00, 0x82, 0xb2,
3042 + 0x00, 0x00, 0x71, 0x0b, 0x80, 0x01, 0x00, 0x80, 0x62, 0x81, 0x2f, 0xb6,
3043 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3044 + 0x00, 0x00, 0x71, 0x0b, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3045 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3046 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
3047 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
3048 + 0x00, 0x00, 0x74, 0x0b, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
3049 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3050 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3051 + 0x00, 0x00, 0xa4, 0x03, 0xca, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
3052 + 0x00, 0x00, 0x7e, 0x0b, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3053 + 0x00, 0x00, 0x7a, 0x0b, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3054 + 0x00, 0x00, 0x7e, 0x0b, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3055 + 0x00, 0x00, 0x7e, 0x0b, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3056 + 0x00, 0x00, 0x7c, 0x0b, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3057 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3058 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3059 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3060 + 0x00, 0x00, 0x80, 0x0b, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x86, 0xbc,
3061 + 0x00, 0x00, 0x0a, 0x11, 0x00, 0x90, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xf2,
3062 + 0x00, 0x00, 0x3f, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3063 + 0x00, 0x00, 0x87, 0x0b, 0x33, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xb2,
3064 + 0x00, 0x00, 0x87, 0x0b, 0x80, 0x01, 0x00, 0x80, 0xb2, 0x01, 0x72, 0xb6,
3065 + 0x00, 0x00, 0x87, 0x0b, 0x9f, 0xf0, 0x01, 0x80, 0x82, 0xdb, 0x87, 0xbc,
3066 + 0x00, 0x00, 0x87, 0x0b, 0x9f, 0xf8, 0x01, 0x80, 0x22, 0x21, 0x6e, 0xbc,
3067 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x01, 0xe0, 0x06, 0x00, 0xee, 0x32,
3068 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x01, 0xe0, 0x06, 0xc0, 0x87, 0x32,
3069 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x39,
3070 + 0x00, 0x00, 0x8d, 0x0b, 0x80, 0x01, 0x00, 0x80, 0xd2, 0x80, 0x2f, 0xb6,
3071 + 0x00, 0x00, 0x8d, 0x0b, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3072 + 0x00, 0x00, 0x00, 0x00, 0xcd, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x34,
3073 + 0x3b, 0x00, 0x8d, 0x0b, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3074 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3075 + 0x00, 0x00, 0x9d, 0x0b, 0x27, 0x09, 0x01, 0xe4, 0x06, 0xc0, 0x2d, 0xb2,
3076 + 0x00, 0xc0, 0x95, 0x0b, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3077 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3078 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3079 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3080 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3081 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3082 + 0x20, 0x80, 0xa4, 0x07, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x92,
3083 + 0x2c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3084 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x98, 0x01, 0x14, 0x09, 0x00, 0x6e, 0xd2,
3085 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0xe0, 0x06, 0x40, 0x88, 0x32,
3086 + 0x00, 0x00, 0x00, 0x00, 0xd5, 0x08, 0x00, 0x00, 0x07, 0x40, 0x88, 0x32,
3087 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
3088 + 0x00, 0x40, 0x00, 0x80, 0xca, 0x39, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
3089 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3090 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
3091 + 0x00, 0x00, 0xa1, 0x0b, 0x1d, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3092 + 0x00, 0x00, 0xa1, 0x0b, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3093 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3094 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
3095 + 0x00, 0x00, 0xc7, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
3096 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3097 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3098 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3099 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3100 + 0x00, 0x00, 0xa4, 0x03, 0x12, 0x01, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3101 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3102 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3103 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3104 + 0x00, 0xc0, 0xae, 0x0b, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3105 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3106 + 0x00, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
3107 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3108 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3109 + 0x00, 0x00, 0xee, 0x10, 0x00, 0x20, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xf2,
3110 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0xb2,
3111 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x08, 0x80, 0x82, 0x32,
3112 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xb2,
3113 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x18, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0xf2,
3114 + 0x00, 0x00, 0xb6, 0x0b, 0x00, 0x50, 0x01, 0x3c, 0xa8, 0x5b, 0x80, 0x9c,
3115 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3116 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0xa8, 0x1b, 0x80, 0x3a,
3117 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x08, 0x00, 0x00, 0x32,
3118 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3119 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x3e,
3120 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
3121 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0x32,
3122 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
3123 + 0x00, 0x00, 0xee, 0x0b, 0x04, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0xbc,
3124 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3125 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0x3c,
3126 + 0x00, 0x00, 0xd4, 0x0b, 0x04, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0xbc,
3127 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
3128 + 0x00, 0x00, 0xc5, 0x0b, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
3129 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0x02, 0xc0, 0x38, 0xb2,
3130 + 0x00, 0x00, 0xcd, 0x0b, 0x51, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
3131 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3132 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3133 + 0x00, 0x00, 0xcb, 0x0b, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
3134 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3135 + 0x00, 0x00, 0xc6, 0x0b, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
3136 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
3137 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
3138 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3139 + 0x00, 0x00, 0xd2, 0x0b, 0x2a, 0x01, 0x00, 0x00, 0xd8, 0x20, 0x80, 0xba,
3140 + 0x00, 0x00, 0xd1, 0x0b, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
3141 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3142 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
3143 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3144 + 0x00, 0x00, 0xb7, 0x0e, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xf2,
3145 + 0x00, 0x00, 0xba, 0x0b, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x9e,
3146 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3147 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3148 + 0x1d, 0x00, 0xdb, 0x0b, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3149 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3150 + 0x00, 0x00, 0xd5, 0x0b, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
3151 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
3152 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3153 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x78, 0x39, 0x9a, 0xfe, 0x38,
3154 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3155 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3156 + 0x08, 0x00, 0x73, 0x11, 0x00, 0x40, 0x02, 0x14, 0x39, 0x9a, 0xfe, 0xd8,
3157 + 0x08, 0x00, 0x8a, 0x11, 0x12, 0x40, 0x02, 0x68, 0x12, 0x9a, 0xfe, 0xb8,
3158 + 0x00, 0x00, 0x8a, 0x11, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3159 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
3160 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0xba,
3161 + 0x00, 0x00, 0xa3, 0x0e, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xf2,
3162 + 0x00, 0x00, 0xe6, 0x0b, 0x00, 0x00, 0x00, 0x3c, 0x08, 0x40, 0x80, 0x92,
3163 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3164 + 0x00, 0x00, 0xb9, 0x0b, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
3165 + 0x00, 0x00, 0xec, 0x0b, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3166 + 0x00, 0x00, 0xeb, 0x0b, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
3167 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3168 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
3169 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3170 + 0x00, 0x00, 0xb7, 0x0e, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xf2,
3171 + 0x00, 0x00, 0xba, 0x0b, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x9e,
3172 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3173 + 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
3174 + 0x00, 0x00, 0x00, 0x00, 0x45, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
3175 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3176 + 0x00, 0x00, 0xf6, 0x0b, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
3177 + 0x00, 0x00, 0x00, 0x00, 0xc9, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3a,
3178 + 0x00, 0xc0, 0xf7, 0x0b, 0x12, 0x01, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
3179 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3180 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
3181 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0x20, 0x99, 0x22, 0x6e, 0x3a,
3182 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x02, 0x80, 0x82, 0x1b, 0x92, 0xbc,
3183 + 0x00, 0x00, 0xfb, 0x0b, 0x2f, 0x20, 0x01, 0xe0, 0x96, 0x22, 0x6e, 0xbc,
3184 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3185 + 0x00, 0x00, 0xff, 0x0b, 0x04, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0xbc,
3186 + 0x00, 0x00, 0xfe, 0x0b, 0x9f, 0x31, 0x01, 0xe0, 0x96, 0x22, 0x6e, 0xbc,
3187 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
3188 + 0x00, 0x00, 0x07, 0x0c, 0x00, 0x50, 0x01, 0xe8, 0xf6, 0x60, 0x80, 0x9c,
3189 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x78, 0x39, 0x9a, 0xfe, 0x38,
3190 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3191 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3192 + 0x08, 0x00, 0x73, 0x11, 0x00, 0x40, 0x02, 0x14, 0x39, 0x9a, 0xfe, 0xd8,
3193 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x68, 0x12, 0x9a, 0xfe, 0x38,
3194 + 0x00, 0x00, 0x06, 0x0c, 0x9f, 0x31, 0x01, 0xe0, 0x96, 0x22, 0x6e, 0xbc,
3195 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
3196 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
3197 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x06, 0x00, 0x92, 0x32,
3198 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3199 + 0x1d, 0x00, 0x0c, 0x0c, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3200 + 0x00, 0x00, 0x08, 0x0c, 0x04, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
3201 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3202 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2f, 0xb6,
3203 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3204 + 0x00, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
3205 + 0x00, 0x00, 0xcb, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
3206 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3207 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
3208 + 0x00, 0x00, 0x14, 0x0c, 0x23, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0xba,
3209 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3210 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3211 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3212 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3213 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
3214 + 0x00, 0x00, 0x15, 0x0c, 0x0b, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3215 + 0x00, 0x00, 0x1c, 0x0c, 0x3d, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0xb2,
3216 + 0x00, 0x00, 0x1c, 0x0c, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
3217 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
3218 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3219 + 0x00, 0x00, 0x20, 0x0c, 0x29, 0x31, 0x01, 0x0c, 0x09, 0x00, 0x6e, 0xb2,
3220 + 0x2a, 0x00, 0xa2, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3221 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3222 + 0x00, 0x00, 0x27, 0x0e, 0x00, 0x0c, 0x02, 0x00, 0x09, 0x80, 0x6e, 0xf2,
3223 + 0x00, 0x00, 0x24, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3224 + 0x00, 0x00, 0xa2, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x02, 0xe4, 0x2e, 0xb2,
3225 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3226 + 0x00, 0x00, 0x27, 0x0c, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3227 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x01, 0x00, 0x80, 0x62, 0x81, 0x2f, 0xb6,
3228 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3229 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3230 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3231 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x94,
3232 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3233 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x18, 0x09, 0x40, 0x81, 0xb2,
3234 + 0x00, 0x00, 0x4f, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3235 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0xa8, 0x01, 0x20, 0x09, 0x00, 0x6e, 0xf2,
3236 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0x0c, 0x09, 0x00, 0x6e, 0x32,
3237 + 0x00, 0x00, 0x27, 0x0e, 0x00, 0x0c, 0x02, 0x00, 0x09, 0x80, 0x6e, 0xf2,
3238 + 0x00, 0x00, 0xa4, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3239 + 0x00, 0x00, 0xb0, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3240 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3241 + 0x00, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x90, 0x92,
3242 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3243 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3244 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x78, 0x0b, 0x16, 0x38,
3245 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x78, 0x0b, 0x16, 0x38,
3246 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0xa8, 0x00, 0x2d, 0x37,
3247 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x88, 0x0d, 0x8b, 0x3a,
3248 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xb4, 0x08, 0x80, 0x6e, 0x32,
3249 + 0x00, 0x00, 0x45, 0x0c, 0x04, 0x31, 0x01, 0x90, 0x08, 0x00, 0x6e, 0xb2,
3250 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0x8d, 0x8a, 0x37,
3251 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xc2, 0xa2, 0x2c, 0x3a,
3252 + 0x18, 0x00, 0x43, 0x0c, 0x86, 0x41, 0x02, 0x78, 0x88, 0x0d, 0x78, 0xb6,
3253 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0xa2, 0xe2, 0x8a, 0xbc,
3254 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x41, 0x02, 0x80, 0xb2, 0x3f, 0x78, 0xb0,
3255 + 0x00, 0x00, 0x3c, 0x0c, 0x9f, 0x01, 0x00, 0xa8, 0x18, 0x80, 0x8a, 0xbc,
3256 + 0xb7, 0x00, 0x3c, 0x0c, 0x00, 0x00, 0x00, 0xa8, 0x08, 0x00, 0x36, 0x92,
3257 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x04, 0xb8, 0x3f, 0x78, 0x30,
3258 + 0x00, 0x00, 0x58, 0x0c, 0x00, 0x00, 0x00, 0x04, 0xd8, 0x62, 0x80, 0x9c,
3259 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x0c, 0x02, 0x80, 0xa2, 0x1b, 0x89, 0xbc,
3260 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x80, 0x2f, 0xb6,
3261 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0x8d, 0x8a, 0x37,
3262 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xc2, 0xa2, 0x2c, 0x3a,
3263 + 0x18, 0x00, 0x4e, 0x0c, 0x86, 0x41, 0x02, 0x78, 0x88, 0x0d, 0x78, 0xb6,
3264 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0xa2, 0xe2, 0x8a, 0xbc,
3265 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x41, 0x02, 0x80, 0xb2, 0x3f, 0x78, 0xb0,
3266 + 0x00, 0x00, 0x47, 0x0c, 0x9f, 0x01, 0x00, 0xa8, 0x18, 0x80, 0x8a, 0xbc,
3267 + 0xb7, 0x00, 0x47, 0x0c, 0x00, 0x00, 0x00, 0xa8, 0x08, 0x00, 0x36, 0x92,
3268 + 0x00, 0x00, 0x51, 0x0c, 0x28, 0x40, 0x02, 0x04, 0xb8, 0x3f, 0x78, 0xb0,
3269 + 0x00, 0x00, 0x00, 0x00, 0xc8, 0x01, 0x00, 0x04, 0xd8, 0x62, 0x80, 0x3c,
3270 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x40, 0x80, 0xb2,
3271 + 0x00, 0x00, 0x55, 0x0c, 0x02, 0x01, 0x00, 0x90, 0x18, 0x20, 0x89, 0xbc,
3272 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x08, 0x00, 0x00, 0x32,
3273 + 0x00, 0x00, 0x47, 0x0c, 0x9f, 0x01, 0x00, 0xa8, 0x18, 0x80, 0x8a, 0xbc,
3274 + 0xb7, 0x00, 0x47, 0x0c, 0x00, 0x00, 0x00, 0xa8, 0x08, 0x00, 0x36, 0x92,
3275 + 0x00, 0x00, 0x58, 0x0c, 0x04, 0x00, 0x00, 0x90, 0x18, 0x20, 0x89, 0xba,
3276 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x04, 0x48, 0x62, 0x80, 0xbc,
3277 + 0x00, 0x00, 0x8a, 0x11, 0x90, 0x00, 0x00, 0xb4, 0x48, 0x62, 0x8b, 0xba,
3278 + 0x03, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x00, 0x08, 0x1e, 0xff, 0xb8,
3279 + 0x00, 0x00, 0x60, 0x0c, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x22, 0x80, 0x9a,
3280 + 0x00, 0x00, 0x89, 0x0c, 0x04, 0x00, 0x00, 0x80, 0xa2, 0xe2, 0x8a, 0xbc,
3281 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0x8d, 0x8a, 0x37,
3282 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xc2, 0xa2, 0x2c, 0x3a,
3283 + 0x18, 0x00, 0x87, 0x0c, 0x86, 0x40, 0x02, 0x78, 0x88, 0x0d, 0x78, 0xb6,
3284 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x04, 0xb8, 0x3f, 0x78, 0xb0,
3285 + 0x03, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x00, 0x08, 0x1e, 0xff, 0xb8,
3286 + 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3287 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
3288 + 0x00, 0x00, 0x67, 0x0c, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
3289 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3290 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3291 + 0x00, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
3292 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3293 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
3294 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
3295 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
3296 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3297 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3298 + 0x00, 0xc0, 0x72, 0x0c, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3299 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
3300 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0xb2,
3301 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0xb2,
3302 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x34, 0x02, 0x00, 0x86, 0xb2,
3303 + 0x20, 0x80, 0x64, 0x0c, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x92,
3304 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3305 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x00, 0xb8, 0x1b, 0x80, 0x3a,
3306 + 0x00, 0x00, 0x00, 0x00, 0x64, 0x30, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
3307 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
3308 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
3309 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
3310 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x86, 0x32,
3311 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3312 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3313 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x81, 0x32,
3314 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x07, 0x00, 0x82, 0x32,
3315 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x17, 0xe0, 0x2c, 0x39,
3316 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0xf7, 0x01, 0x0b, 0x34,
3317 + 0x00, 0x00, 0x81, 0x0c, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x87, 0xb6,
3318 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0xb7, 0x01, 0x70, 0x34,
3319 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
3320 + 0x00, 0x00, 0x93, 0x0c, 0x02, 0x0c, 0x02, 0x80, 0xa2, 0x1b, 0x89, 0xbc,
3321 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3322 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
3323 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3324 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3325 + 0x00, 0x00, 0x5a, 0x0c, 0x9f, 0x01, 0x00, 0xa8, 0x18, 0x80, 0x8a, 0xbc,
3326 + 0xb7, 0x00, 0x5a, 0x0c, 0x00, 0x00, 0x00, 0xa8, 0x08, 0x00, 0x36, 0x92,
3327 + 0x27, 0x00, 0x8c, 0x0c, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0x81, 0xbc,
3328 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0x78, 0x09, 0x00, 0x6e, 0x32,
3329 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0xa2, 0x97, 0xbc,
3330 + 0x00, 0x00, 0x8e, 0x0c, 0x23, 0x55, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0xb2,
3331 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3332 + 0x00, 0x00, 0x90, 0x0c, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3333 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3334 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3335 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3336 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x94,
3337 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0xc7, 0x01, 0x70, 0x34,
3338 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
3339 + 0x08, 0x00, 0x97, 0x0c, 0x23, 0x19, 0x01, 0xe8, 0x76, 0x20, 0x81, 0xb9,
3340 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3341 + 0x00, 0x00, 0x99, 0x0c, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3342 + 0x00, 0x00, 0x9c, 0x0c, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3343 + 0x00, 0x00, 0x9c, 0x0c, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3344 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3345 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x34,
3346 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3347 + 0x00, 0x00, 0xc6, 0x0e, 0x00, 0x00, 0x00, 0x2c, 0xf9, 0x01, 0x00, 0xf4,
3348 + 0x00, 0x00, 0xa0, 0x0c, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
3349 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3350 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3351 + 0x00, 0x00, 0xa4, 0x03, 0xca, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
3352 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3353 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0x32,
3354 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3355 + 0x00, 0xc0, 0xad, 0x0c, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3356 + 0x18, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x82, 0xb6,
3357 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3358 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0x32,
3359 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x01, 0xec, 0x66, 0x00, 0x00, 0x34,
3360 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x48, 0x01, 0xe0, 0xe6, 0xa0, 0x82, 0x39,
3361 + 0x1b, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3362 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3363 + 0x00, 0x20, 0x00, 0x84, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
3364 + 0x00, 0x00, 0xc7, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
3365 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3366 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3367 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3368 + 0x00, 0xc0, 0xb6, 0x0c, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3369 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3370 + 0x00, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
3371 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3372 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x02, 0xf2,
3373 + 0x00, 0x00, 0xbd, 0x0c, 0x00, 0x00, 0x00, 0x5c, 0x08, 0x00, 0x00, 0x92,
3374 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3375 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3376 + 0x00, 0xc0, 0xbd, 0x0c, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3377 + 0x20, 0x80, 0x9c, 0x10, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0xf2,
3378 + 0x00, 0x00, 0xa1, 0x03, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3379 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0x32,
3380 + 0x00, 0x20, 0x00, 0x84, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
3381 + 0x00, 0x00, 0xc7, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
3382 + 0x00, 0x00, 0xc2, 0x0c, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
3383 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x32,
3384 + 0x00, 0x00, 0xc6, 0x0c, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x85, 0xb2,
3385 + 0x00, 0x00, 0xc6, 0x0c, 0x80, 0x00, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3386 + 0x00, 0x00, 0x00, 0x00, 0xd2, 0x41, 0x02, 0x80, 0x06, 0xc0, 0x85, 0x32,
3387 + 0x00, 0x00, 0x8a, 0x11, 0x1c, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3388 + 0x00, 0x00, 0x4c, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3389 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3390 + 0x00, 0x00, 0x4c, 0x0d, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x85, 0x92,
3391 + 0x00, 0x00, 0x1a, 0x0d, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3392 + 0x00, 0x00, 0x22, 0x0d, 0x1f, 0x20, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xb2,
3393 + 0x00, 0x00, 0x1a, 0x0d, 0x04, 0x30, 0x01, 0x08, 0x89, 0x9b, 0x90, 0xbc,
3394 + 0x00, 0x00, 0xd2, 0x0c, 0x04, 0x31, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3395 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3396 + 0x00, 0x00, 0xd0, 0x0c, 0x00, 0x50, 0x01, 0x48, 0x08, 0x80, 0x6e, 0x92,
3397 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3398 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x28, 0x61, 0x80, 0x3c,
3399 + 0x00, 0x00, 0xeb, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x28, 0x21, 0x80, 0x9a,
3400 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x80, 0x90, 0xb2,
3401 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x30, 0x01, 0x48, 0x08, 0x00, 0x6e, 0xf2,
3402 + 0x00, 0x00, 0xd6, 0x0c, 0x00, 0x50, 0x01, 0x04, 0xa8, 0x5b, 0x80, 0x9c,
3403 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3404 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0xa8, 0x1b, 0x80, 0x3a,
3405 + 0x00, 0x00, 0xe8, 0x0c, 0x07, 0x00, 0x00, 0x48, 0x18, 0xa0, 0x84, 0xbc,
3406 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3407 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa0, 0xfe, 0x38,
3408 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3409 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3410 + 0x05, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xa0, 0xfe, 0xd8,
3411 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x02, 0xa0, 0xfe, 0x38,
3412 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3413 + 0x00, 0x00, 0xe1, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3414 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3415 + 0x00, 0x00, 0xe8, 0x0c, 0x07, 0x00, 0x00, 0x48, 0x18, 0xa0, 0x84, 0xbc,
3416 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3417 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa0, 0xfe, 0x38,
3418 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3419 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3420 + 0x05, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xa0, 0xfe, 0xd8,
3421 + 0x05, 0x00, 0xde, 0x0c, 0x00, 0x00, 0x00, 0x68, 0x02, 0xa0, 0xfe, 0x98,
3422 + 0x00, 0x00, 0xeb, 0x0c, 0x04, 0x00, 0x00, 0x48, 0x18, 0xa0, 0x84, 0xba,
3423 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x04, 0x28, 0x61, 0x80, 0xbc,
3424 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x21, 0x80, 0x3a,
3425 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3426 + 0x00, 0x00, 0xf4, 0x0c, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
3427 + 0x03, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x00, 0x38, 0x1a, 0xff, 0xb8,
3428 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x60, 0x80, 0x39,
3429 + 0x18, 0x00, 0x00, 0x00, 0xd2, 0x41, 0x02, 0x8c, 0xe6, 0xa1, 0x97, 0x39,
3430 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x80, 0x84, 0x32,
3431 + 0x00, 0x82, 0x00, 0x00, 0xd6, 0x01, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3432 + 0x28, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3433 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3434 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
3435 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
3436 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
3437 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3438 + 0x00, 0xc0, 0xfe, 0x0c, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3439 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
3440 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0xb2,
3441 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0xb2,
3442 + 0x00, 0x00, 0xed, 0x0c, 0x12, 0x01, 0x00, 0x34, 0x02, 0x00, 0x86, 0xb2,
3443 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3444 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3445 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x08, 0x00, 0x00, 0x32,
3446 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3447 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
3448 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
3449 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
3450 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x86, 0x32,
3451 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
3452 + 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3453 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x81, 0x32,
3454 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x07, 0x00, 0x82, 0x32,
3455 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x17, 0xe0, 0x2c, 0x39,
3456 + 0x00, 0x00, 0x0d, 0x0d, 0x80, 0x00, 0x00, 0x80, 0x32, 0x80, 0x87, 0xb6,
3457 + 0x00, 0x10, 0x00, 0x80, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
3458 + 0x00, 0x00, 0x0e, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3459 + 0x00, 0x10, 0x00, 0x88, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
3460 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3461 + 0x05, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xa0, 0xfe, 0xd8,
3462 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x02, 0xa0, 0xfe, 0x38,
3463 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa0, 0xfe, 0x38,
3464 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3465 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3466 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x34,
3467 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3468 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3469 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3470 + 0x00, 0x00, 0xeb, 0x0c, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3471 + 0x00, 0x00, 0x22, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3472 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3473 + 0x05, 0x00, 0x1d, 0x0d, 0x00, 0x00, 0x00, 0x68, 0x02, 0xa0, 0xfe, 0x98,
3474 + 0x00, 0x00, 0x22, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3475 + 0x05, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xa0, 0xfe, 0xd8,
3476 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa0, 0xfe, 0x38,
3477 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3478 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3479 + 0x00, 0x00, 0x1a, 0x0d, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x92,
3480 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
3481 + 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
3482 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
3483 + 0xb4, 0xcc, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
3484 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0xc0, 0x2c, 0x37,
3485 + 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x8d, 0x97, 0x3a,
3486 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x10, 0x00, 0x00, 0x87, 0xbf, 0x97, 0xba,
3487 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0xfe, 0x32,
3488 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0xb4,
3489 + 0x00, 0x00, 0x2b, 0x0d, 0xb6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3490 + 0x00, 0x20, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x64, 0xa2, 0xcd, 0x2c, 0xb2,
3491 + 0x00, 0x00, 0x00, 0x00, 0xa6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
3492 + 0x00, 0x00, 0x30, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3493 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3494 + 0x00, 0x00, 0xa2, 0x07, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x92,
3495 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x62, 0x81, 0x2f, 0xb6,
3496 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3497 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3498 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3499 + 0x00, 0x00, 0x39, 0x0d, 0x12, 0x01, 0x00, 0x60, 0x08, 0x40, 0x23, 0xb2,
3500 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3501 + 0x28, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3502 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3503 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x24, 0x08, 0x00, 0x23, 0xb2,
3504 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x20, 0x08, 0xc0, 0x23, 0xb2,
3505 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x18, 0x08, 0x80, 0x23, 0xb2,
3506 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3507 + 0x00, 0xc0, 0x43, 0x0d, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3508 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x38, 0x02, 0x80, 0x81, 0xb2,
3509 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x3c, 0x02, 0x00, 0x82, 0xb2,
3510 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x30, 0x02, 0x40, 0x82, 0xb2,
3511 + 0x00, 0x00, 0xed, 0x0c, 0x12, 0x01, 0x00, 0x34, 0x02, 0x00, 0x86, 0xb2,
3512 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3513 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x00, 0x00, 0x48, 0x08, 0x00, 0x00, 0xf2,
3514 + 0x00, 0x00, 0x46, 0x0d, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x92,
3515 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3516 + 0x00, 0x00, 0x00, 0x0d, 0x00, 0x50, 0x01, 0x00, 0xa8, 0x1b, 0x80, 0x9a,
3517 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3518 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3519 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0x80, 0x02, 0xf2,
3520 + 0x00, 0x00, 0x2b, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3521 + 0x00, 0x00, 0x58, 0x10, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x02, 0xf2,
3522 + 0x00, 0x00, 0x4f, 0x0d, 0x9a, 0x01, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0xb4,
3523 + 0x10, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0x31,
3524 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0xec, 0x06, 0xc0, 0x6e, 0x34,
3525 + 0x2d, 0x00, 0xa2, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3526 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3527 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xa9, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xb2,
3528 + 0x00, 0x00, 0x5a, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3529 + 0x00, 0x00, 0x56, 0x0d, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3530 + 0x00, 0x00, 0x5a, 0x0d, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3531 + 0x00, 0x00, 0x5a, 0x0d, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3532 + 0x00, 0x00, 0x58, 0x0d, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3533 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3534 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3535 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3536 + 0x00, 0x00, 0x5c, 0x0d, 0x04, 0x98, 0x01, 0x64, 0x88, 0x1b, 0x87, 0xbc,
3537 + 0x00, 0x00, 0x0a, 0x11, 0x00, 0x90, 0x01, 0x08, 0x09, 0x80, 0x6e, 0xf2,
3538 + 0x00, 0x00, 0x3f, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
3539 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3540 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3541 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3542 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3543 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3544 + 0x30, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3545 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3546 + 0x00, 0x00, 0x6c, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3547 + 0x00, 0x00, 0x68, 0x0d, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3548 + 0x00, 0x00, 0x6c, 0x0d, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3549 + 0x00, 0x00, 0x6c, 0x0d, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3550 + 0x00, 0x00, 0x6a, 0x0d, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3551 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3552 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3553 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3554 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0x3a,
3555 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3556 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3557 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3558 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3559 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3560 + 0x00, 0x00, 0xa4, 0x07, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3561 + 0x36, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3562 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3563 + 0x00, 0x00, 0x7d, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3564 + 0x00, 0x00, 0x79, 0x0d, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3565 + 0x00, 0x00, 0x7d, 0x0d, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3566 + 0x00, 0x00, 0x7d, 0x0d, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3567 + 0x00, 0x00, 0x7b, 0x0d, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3568 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3569 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3570 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3571 + 0x00, 0x00, 0x88, 0x0d, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3572 + 0x00, 0x00, 0x86, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3573 + 0x00, 0x00, 0x82, 0x0d, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
3574 + 0x00, 0x00, 0x86, 0x0d, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
3575 + 0x00, 0x00, 0x86, 0x0d, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
3576 + 0x00, 0x00, 0x84, 0x0d, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3577 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
3578 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
3579 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3580 + 0x30, 0x00, 0x88, 0x0d, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3581 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3582 + 0x00, 0x00, 0x00, 0x00, 0xd4, 0xd5, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
3583 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
3584 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3585 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3586 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
3587 + 0x00, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
3588 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3589 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
3590 + 0x00, 0x00, 0xa2, 0x07, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x81, 0x2f, 0xb6,
3591 + 0x00, 0x00, 0x93, 0x0d, 0x80, 0x00, 0x00, 0x80, 0x02, 0x81, 0x2f, 0xb6,
3592 + 0x00, 0x00, 0x8a, 0x11, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3593 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x58, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
3594 + 0x00, 0x00, 0xa2, 0x07, 0x08, 0x59, 0x01, 0xec, 0x06, 0xfb, 0x6e, 0xbc,
3595 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3596 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3597 + 0x00, 0xc0, 0x9c, 0x0d, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3598 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x01, 0xec, 0x06, 0xfb, 0x6e, 0x3a,
3599 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3600 + 0x00, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
3601 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3602 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x81, 0x2f, 0xf4,
3603 + 0x00, 0x00, 0x9f, 0x0d, 0x06, 0x03, 0x01, 0x80, 0x12, 0xc0, 0x6e, 0xbc,
3604 + 0x18, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
3605 + 0x19, 0x00, 0x9d, 0x05, 0x00, 0x00, 0x00, 0x1c, 0x08, 0x00, 0x36, 0x92,
3606 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
3607 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xe2, 0x81, 0x2f, 0xb6,
3608 + 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0x31,
3609 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3610 + 0x00, 0x20, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
3611 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x28, 0x08, 0x00, 0x6e, 0x32,
3612 + 0x00, 0x00, 0x00, 0x00, 0x45, 0x30, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x32,
3613 + 0x00, 0x00, 0xc7, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
3614 + 0x00, 0x00, 0xad, 0x0d, 0x04, 0x02, 0x01, 0xec, 0x16, 0xc0, 0x6e, 0xbc,
3615 + 0x00, 0x00, 0x00, 0x00, 0xc9, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3a,
3616 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x34,
3617 + 0x00, 0xc0, 0xad, 0x0d, 0x12, 0x01, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
3618 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3619 + 0x18, 0x00, 0x36, 0x00, 0xca, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3620 + 0x00, 0x00, 0xad, 0x0d, 0x9f, 0x01, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
3621 + 0x00, 0x00, 0xb2, 0x0d, 0x3d, 0x01, 0x00, 0xb0, 0x02, 0x00, 0x85, 0xb2,
3622 + 0x00, 0x00, 0xb2, 0x0d, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
3623 + 0x34, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3624 + 0x00, 0x00, 0xa4, 0x07, 0x80, 0x01, 0x00, 0x80, 0x92, 0x80, 0x2f, 0xb6,
3625 + 0x2a, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3626 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3627 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2f, 0xb6,
3628 + 0x00, 0x00, 0x00, 0x00, 0x54, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3629 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3630 + 0x00, 0xc0, 0xbc, 0x0d, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3631 + 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3632 + 0x00, 0x00, 0x9d, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x72, 0xe0, 0x2e, 0xb2,
3633 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3634 + 0x00, 0x20, 0x00, 0x80, 0xdf, 0x00, 0x00, 0x28, 0x09, 0x00, 0x37, 0x32,
3635 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x48, 0x01, 0x38, 0x88, 0x1b, 0x16, 0x38,
3636 + 0x00, 0x00, 0x00, 0x00, 0xde, 0x48, 0x01, 0x28, 0x88, 0x04, 0x6e, 0x30,
3637 + 0x00, 0x00, 0xc1, 0x0d, 0x80, 0x5f, 0x01, 0x80, 0x72, 0xc0, 0x6e, 0xb6,
3638 + 0x00, 0x00, 0xc3, 0x0d, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x80, 0x2f, 0x94,
3639 + 0x00, 0x00, 0xc3, 0x0d, 0x80, 0x5f, 0x01, 0x80, 0x62, 0xc0, 0x6e, 0xb6,
3640 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xa9, 0x81, 0x92, 0x34,
3641 + 0x00, 0x00, 0xcb, 0x10, 0x00, 0x00, 0x00, 0x08, 0xe8, 0x01, 0x00, 0xf4,
3642 + 0x00, 0x00, 0xc6, 0x0d, 0x12, 0x01, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3643 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3644 + 0x00, 0x00, 0xc9, 0x0d, 0x80, 0x01, 0x00, 0x80, 0xd2, 0x81, 0x2f, 0xb6,
3645 + 0x00, 0x00, 0xc9, 0x0d, 0x34, 0x00, 0x00, 0xf8, 0xd2, 0x81, 0x2f, 0xb5,
3646 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
3647 + 0x00, 0x00, 0xa4, 0x07, 0x04, 0x30, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3648 + 0x2a, 0x00, 0xa4, 0x07, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3649 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3650 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0xd8, 0x02, 0x80, 0x01, 0xb2,
3651 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3652 + 0x00, 0xc0, 0xd2, 0x0d, 0x18, 0x01, 0x00, 0x0c, 0xa8, 0xcd, 0x3e, 0xb2,
3653 + 0x00, 0x82, 0x00, 0x00, 0xd6, 0x01, 0x00, 0x08, 0x08, 0x80, 0x36, 0x32,
3654 + 0x1d, 0x00, 0xa1, 0x03, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
3655 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3656 + 0x00, 0x00, 0xc2, 0x10, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0xf2,
3657 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x80, 0x01, 0x32,
3658 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x01, 0x78, 0x09, 0xc0, 0x6e, 0x32,
3659 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
3660 + 0x00, 0x10, 0x00, 0xa0, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
3661 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x07, 0x00, 0xee, 0x32,
3662 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x0c, 0x07, 0x80, 0x97, 0x32,
3663 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
3664 + 0x00, 0xf0, 0xe1, 0x0d, 0x1d, 0x40, 0x02, 0x00, 0xa8, 0x0d, 0x68, 0xb1,
3665 + 0x00, 0x00, 0x8a, 0x11, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3666 + 0x00, 0x00, 0x8a, 0x11, 0x1e, 0x40, 0x02, 0x84, 0x06, 0x00, 0x00, 0xb2,
3667 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x80, 0xd0,
3668 + 0x00, 0x00, 0xde, 0x0d, 0xb6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3669 + 0x00, 0xc0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x64, 0xa2, 0x0d, 0x80, 0xb2,
3670 + 0x00, 0x00, 0xda, 0x0d, 0xa6, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3671 + 0x00, 0x00, 0xe1, 0x0d, 0xb5, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3672 + 0x00, 0x00, 0x00, 0x00, 0xa5, 0x00, 0x80, 0xa0, 0x36, 0x0b, 0x6a, 0x35,
3673 + 0x00, 0x00, 0xe6, 0x0d, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
3674 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3675 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
3676 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x80, 0xbc,
3677 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xe9, 0x01, 0x00, 0x34,
3678 + 0x00, 0x00, 0xef, 0x0f, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xd2,
3679 + 0x00, 0x00, 0xeb, 0x0d, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
3680 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3681 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x39, 0x0b, 0x2e, 0x32,
3682 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xf3, 0x81, 0x97, 0x34,
3683 + 0x00, 0x00, 0xf1, 0x0d, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
3684 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3685 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x05, 0x30, 0x30,
3686 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0xa4, 0x03, 0x39,
3687 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x33, 0x0b, 0x2f, 0x32,
3688 + 0x00, 0x00, 0xa4, 0x03, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
3689 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3690 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xb9, 0x05, 0x30, 0x30,
3691 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x00, 0x00, 0x32,
3692 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x02, 0x39,
3693 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x80, 0x97, 0x32,
3694 + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3695 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x29, 0xd2,
3696 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x32,
3697 + 0x00, 0x00, 0xff, 0x0d, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x2f, 0xbc,
3698 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x00, 0x2c, 0x32,
3699 + 0xd9, 0x02, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
3700 + 0x46, 0x03, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x97, 0xbc,
3701 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3702 + 0x00, 0x00, 0xf1, 0x0d, 0x00, 0x00, 0x00, 0xf4, 0x02, 0x00, 0x00, 0x92,
3703 + 0x00, 0x00, 0x18, 0x0e, 0x02, 0x00, 0x00, 0x80, 0xa2, 0x42, 0x80, 0xbc,
3704 + 0x00, 0x00, 0x18, 0x0e, 0x80, 0x00, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
3705 + 0x00, 0x00, 0x18, 0x0e, 0x1f, 0x40, 0x02, 0x08, 0xb9, 0xbf, 0x68, 0xb0,
3706 + 0x00, 0x00, 0x08, 0x0e, 0x80, 0x41, 0x02, 0x80, 0xe2, 0x81, 0x68, 0xb6,
3707 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x79, 0x61, 0x80, 0x39,
3708 + 0x00, 0x00, 0x00, 0x00, 0xd2, 0x21, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
3709 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x41, 0x02, 0x88, 0xe6, 0x21, 0x91, 0x79,
3710 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x19, 0xa0, 0x90, 0x3a,
3711 + 0x00, 0x00, 0x18, 0x0e, 0x06, 0x01, 0x00, 0x80, 0xd2, 0xff, 0x90, 0xbc,
3712 + 0x00, 0x00, 0x0c, 0x0e, 0x2c, 0x41, 0x02, 0x78, 0xf9, 0x81, 0x68, 0xb4,
3713 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xb9, 0x81, 0x97, 0x34,
3714 + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3715 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x59, 0xc0, 0x85, 0xd7,
3716 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x00, 0x29, 0x1a, 0xff, 0x38,
3717 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x00, 0xb9, 0x1b, 0x90, 0x3a,
3718 + 0x00, 0x00, 0x00, 0x00, 0xd2, 0x41, 0x02, 0x88, 0x16, 0xa0, 0x97, 0x3a,
3719 + 0x00, 0x00, 0x00, 0x00, 0x45, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
3720 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
3721 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x40, 0x80, 0x32,
3722 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x27, 0x24, 0x90, 0x3a,
3723 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0x8a, 0x32,
3724 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x58, 0xf2, 0xc1, 0x38, 0x74,
3725 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3726 + 0x08, 0x00, 0x23, 0x0e, 0x1e, 0x01, 0x00, 0x34, 0x79, 0x61, 0x80, 0xb9,
3727 + 0x00, 0x00, 0x8a, 0x11, 0x38, 0x00, 0x00, 0x54, 0x1f, 0x40, 0xf5, 0xba,
3728 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x40, 0x02, 0x00, 0x09, 0x40, 0x68, 0xb2,
3729 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xb9, 0x3f, 0x90, 0x30,
3730 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xe0, 0x26, 0x24, 0x6e, 0x3a,
3731 + 0x08, 0x00, 0x8a, 0x11, 0x1e, 0x00, 0x00, 0x00, 0x09, 0xa4, 0xfe, 0xb8,
3732 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x05, 0x90, 0xd0,
3733 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0x05, 0x90, 0xb0,
3734 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x05, 0x90, 0x30,
3735 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3736 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3737 + 0x00, 0x00, 0x00, 0x00, 0xd2, 0x21, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
3738 + 0x18, 0x00, 0x00, 0x00, 0x1e, 0x41, 0x02, 0x84, 0xe6, 0x61, 0x93, 0x79,
3739 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3740 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3741 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x20, 0x01, 0x80, 0x82, 0xdb, 0x90, 0x7c,
3742 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x20, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3743 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3744 + 0x00, 0x00, 0x00, 0x00, 0x02, 0x0c, 0x02, 0x80, 0xa2, 0xdb, 0x90, 0x7c,
3745 + 0x00, 0x00, 0x2d, 0x0e, 0x06, 0x21, 0x01, 0x80, 0x82, 0x1b, 0x90, 0xbc,
3746 + 0x26, 0x00, 0x2e, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x36, 0x92,
3747 + 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x36, 0x32,
3748 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x00, 0x2c, 0x3a,
3749 + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3750 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x92, 0xd2,
3751 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0x92, 0xbc,
3752 + 0x00, 0x00, 0x00, 0x00, 0x2f, 0xa0, 0x01, 0x78, 0x89, 0x1b, 0x92, 0x7a,
3753 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x01, 0x78, 0x89, 0x9b, 0x97, 0x3c,
3754 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x00, 0xf9, 0xba, 0x6e, 0x37,
3755 + 0x00, 0x00, 0x39, 0x0e, 0x02, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x97, 0xbc,
3756 + 0x00, 0x00, 0x39, 0x0e, 0x02, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3757 + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x8d, 0x97, 0x37,
3758 + 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x02, 0x80, 0x82, 0x9b, 0x97, 0x7c,
3759 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0xf2, 0x80, 0x2f, 0x74,
3760 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3761 + 0x00, 0x00, 0x00, 0x00, 0xda, 0x5b, 0x01, 0xec, 0x06, 0x40, 0xed, 0x32,
3762 + 0x2d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3763 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x89, 0xd2,
3764 + 0x00, 0x00, 0x42, 0x0e, 0x08, 0x5d, 0x01, 0xec, 0x16, 0x40, 0x89, 0xbc,
3765 + 0x00, 0x00, 0x42, 0x0e, 0x0b, 0x5d, 0x01, 0xec, 0x06, 0x00, 0x00, 0xb2,
3766 + 0x00, 0x00, 0x42, 0x0e, 0x80, 0x00, 0x00, 0x80, 0x42, 0x81, 0x2f, 0xb6,
3767 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xb2, 0x80, 0x2f, 0x34,
3768 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
3769 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x01, 0x78, 0x89, 0x1b, 0x87, 0x3c,
3770 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x92, 0xa1, 0x97, 0xbc,
3771 + 0x00, 0x00, 0x47, 0x0e, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x86, 0xbc,
3772 + 0x00, 0x00, 0x0a, 0x11, 0x00, 0x90, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xf2,
3773 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
3774 + 0x00, 0x00, 0x3f, 0x11, 0x33, 0x01, 0x00, 0xf8, 0x82, 0x80, 0x2f, 0xb4,
3775 + 0x00, 0x00, 0x3f, 0x11, 0x9f, 0xf0, 0x01, 0x80, 0x82, 0xdb, 0x87, 0xbc,
3776 + 0x00, 0x00, 0x3f, 0x11, 0x9f, 0xf8, 0x01, 0x80, 0x22, 0x21, 0x6e, 0xbc,
3777 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0x01, 0xe0, 0x06, 0x00, 0xee, 0x32,
3778 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x01, 0xe0, 0x06, 0xc0, 0x87, 0x32,
3779 + 0x00, 0x00, 0x3f, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3780 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3781 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x00, 0x00, 0x80, 0x02, 0x80, 0x91, 0xbc,
3782 + 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3783 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x50, 0x01, 0x14, 0xa9, 0x9b, 0x91, 0xd9,
3784 + 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3785 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0x14, 0x89, 0x0d, 0x6e, 0x37,
3786 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x30, 0x01, 0x14, 0x89, 0x5b, 0x91, 0xd2,
3787 + 0x1a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3788 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x2d, 0xd2,
3789 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x21, 0x01, 0x80, 0x82, 0x9b, 0x91, 0xbc,
3790 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0x78, 0x09, 0x00, 0x6e, 0x32,
3791 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x02, 0x80, 0x82, 0x9b, 0x97, 0xbc,
3792 + 0x00, 0x00, 0x71, 0x0e, 0x04, 0x21, 0x01, 0x30, 0x69, 0x24, 0x6e, 0xbc,
3793 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0x00, 0xa9, 0x9b, 0x91, 0x3a,
3794 + 0x00, 0x00, 0x66, 0x0e, 0x1f, 0x40, 0x02, 0x24, 0x09, 0x40, 0x68, 0xb2,
3795 + 0x00, 0x00, 0x5c, 0x0e, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x41, 0x92, 0xb6,
3796 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xb9, 0x7f, 0x92, 0x30,
3797 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0x24, 0x90, 0x3c,
3798 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0xa4, 0xfe, 0x38,
3799 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3800 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3801 + 0x08, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x99, 0xa4, 0xfe, 0xd8,
3802 + 0x08, 0x00, 0x5c, 0x0e, 0x12, 0x01, 0x00, 0x68, 0x92, 0xa4, 0xfe, 0xb8,
3803 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3804 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xbc,
3805 + 0x00, 0x00, 0x6b, 0x0e, 0x38, 0x50, 0x01, 0x78, 0x09, 0x80, 0x6e, 0xb2,
3806 + 0x00, 0x00, 0x6b, 0x0e, 0x04, 0x28, 0x01, 0x80, 0x02, 0x00, 0x6e, 0xbc,
3807 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x28, 0x01, 0x78, 0xe9, 0x25, 0x6e, 0xbc,
3808 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x01, 0x00, 0x78, 0x69, 0xa4, 0x97, 0xbc,
3809 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x66, 0x24, 0x6e, 0x3a,
3810 + 0x00, 0x00, 0x6e, 0x0e, 0x38, 0x20, 0x01, 0xe0, 0x06, 0x00, 0x93, 0xb2,
3811 + 0x00, 0x00, 0x6f, 0x0e, 0x00, 0x28, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x92,
3812 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
3813 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
3814 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
3815 + 0x00, 0x00, 0x77, 0x0e, 0x38, 0x51, 0x01, 0x00, 0xa9, 0x9b, 0x91, 0xba,
3816 + 0x00, 0x00, 0x75, 0x0e, 0x04, 0x41, 0x02, 0x08, 0xb9, 0xff, 0x68, 0xb0,
3817 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x41, 0x02, 0x80, 0xe2, 0xc1, 0x68, 0xb6,
3818 + 0x00, 0x00, 0x72, 0x0e, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x92,
3819 + 0x00, 0x00, 0x84, 0x0e, 0x9f, 0x31, 0x01, 0xe0, 0x66, 0x24, 0x6e, 0xbc,
3820 + 0x00, 0x00, 0x84, 0x0e, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x92,
3821 + 0x00, 0x00, 0x81, 0x0e, 0x04, 0x28, 0x01, 0x04, 0x09, 0x00, 0x6e, 0xb2,
3822 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x50, 0x01, 0x80, 0xa2, 0x5b, 0x90, 0xbc,
3823 + 0x00, 0x00, 0x7f, 0x0e, 0x9f, 0x01, 0x00, 0x00, 0x19, 0x24, 0x90, 0xbc,
3824 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x66, 0x24, 0x6e, 0x3a,
3825 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xe0, 0x06, 0x24, 0x00, 0x3c,
3826 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
3827 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0xe0, 0x06, 0x00, 0x93, 0x32,
3828 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
3829 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
3830 + 0x00, 0x00, 0x8e, 0x0e, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xbc,
3831 + 0x00, 0x00, 0x84, 0x0e, 0x04, 0x41, 0x02, 0x08, 0xb9, 0xff, 0x68, 0xb0,
3832 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x41, 0x02, 0x80, 0xe2, 0xc1, 0x68, 0xb6,
3833 + 0x00, 0x00, 0x81, 0x0e, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x92,
3834 + 0x00, 0x00, 0x88, 0x0e, 0x02, 0x00, 0x00, 0x80, 0x22, 0x24, 0x90, 0xbc,
3835 + 0x00, 0x00, 0x8e, 0x0e, 0x80, 0x40, 0x02, 0x80, 0xf2, 0xc1, 0x68, 0xb6,
3836 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x8c, 0xb6, 0xc1, 0x68, 0x35,
3837 + 0x00, 0x00, 0x8e, 0x0e, 0x00, 0x00, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0x94,
3838 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x78, 0x39, 0x9a, 0xfe, 0x38,
3839 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
3840 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
3841 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x97, 0xd2,
3842 + 0x08, 0x00, 0x8a, 0x11, 0x12, 0x40, 0x02, 0x68, 0x12, 0x9a, 0xfe, 0xb8,
3843 + 0x00, 0x00, 0x81, 0x0e, 0x04, 0x01, 0x00, 0x00, 0x29, 0x24, 0x90, 0xbc,
3844 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x00, 0x00, 0x32,
3845 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x79, 0x0b, 0x16, 0x38,
3846 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x79, 0x0b, 0x16, 0x38,
3847 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x42, 0xe4, 0x90, 0xbc,
3848 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xa9, 0x00, 0x2d, 0x37,
3849 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x89, 0x4d, 0x90, 0x3a,
3850 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x82, 0x0d, 0x91, 0x37,
3851 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x12, 0xa4, 0x2a, 0x3a,
3852 + 0x00, 0x00, 0x99, 0x0e, 0x80, 0x40, 0x02, 0x80, 0xe2, 0x01, 0x7c, 0xb6,
3853 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x78, 0xb9, 0x3f, 0x7c, 0xb0,
3854 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe9, 0xa5, 0x90, 0x3a,
3855 + 0x00, 0x00, 0x9b, 0x0e, 0x9f, 0x01, 0x00, 0x10, 0x19, 0x00, 0x91, 0xbc,
3856 + 0xb7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3857 + 0x00, 0x00, 0x94, 0x0e, 0x04, 0x01, 0x00, 0x80, 0x42, 0xe4, 0x90, 0xbc,
3858 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xc9, 0x24, 0x90, 0x3a,
3859 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x22, 0xa4, 0x97, 0xbc,
3860 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x66, 0x24, 0x6e, 0x3a,
3861 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x90, 0x32,
3862 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0xe0, 0x06, 0x00, 0x93, 0x32,
3863 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
3864 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3865 + 0x18, 0x00, 0xa5, 0x0e, 0x1f, 0x41, 0x02, 0x78, 0x88, 0xcd, 0x68, 0xb6,
3866 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x00, 0x2c, 0x3a,
3867 + 0x00, 0x00, 0xa8, 0x0e, 0x80, 0x01, 0x00, 0x80, 0x62, 0x80, 0x87, 0xb6,
3868 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x41, 0x02, 0x80, 0xb2, 0xff, 0x68, 0xb0,
3869 + 0x00, 0x00, 0xa3, 0x0e, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x92,
3870 + 0x03, 0x00, 0x8a, 0x11, 0x04, 0x40, 0x02, 0x00, 0x38, 0x1a, 0xff, 0xb8,
3871 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x40, 0x02, 0x04, 0xb8, 0xff, 0x68, 0xb0,
3872 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x02, 0x00, 0xb8, 0x1b, 0x80, 0x3a,
3873 + 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3874 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x00, 0x80, 0xd2,
3875 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
3876 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3877 + 0x00, 0x00, 0xb6, 0x0e, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
3878 + 0x00, 0x00, 0xb3, 0x0e, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
3879 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3880 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
3881 + 0x1d, 0x00, 0xb6, 0x0e, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
3882 + 0x00, 0x00, 0xb0, 0x0e, 0x9f, 0x01, 0x00, 0x80, 0x18, 0x00, 0x88, 0xbc,
3883 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3884 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0x32,
3885 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x68, 0x00, 0x4c, 0x08, 0x00, 0x6e, 0x32,
3886 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x70, 0x00, 0x18, 0x08, 0x00, 0x6e, 0xb2,
3887 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
3888 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0xa9, 0x60, 0x81, 0xd9,
3889 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0xa2, 0xa0, 0x81, 0x7c,
3890 + 0x00, 0x00, 0x8a, 0x11, 0x0d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3891 + 0x00, 0x00, 0xc1, 0x0e, 0x80, 0x01, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
3892 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
3893 + 0x00, 0x00, 0xc1, 0x0e, 0x1b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3894 + 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x80, 0x62, 0xe0, 0x83, 0x7c,
3895 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
3896 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x35,
3897 + 0x00, 0xa0, 0x00, 0x00, 0x12, 0x01, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0x72,
3898 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3899 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3900 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0xe4, 0x06, 0xc0, 0x2d, 0x32,
3901 + 0xee, 0xff, 0x00, 0x00, 0x00, 0x10, 0x01, 0xe0, 0x86, 0x8d, 0x2f, 0x31,
3902 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xb3, 0xe4, 0x39, 0x32,
3903 + 0x00, 0x00, 0xcd, 0x0e, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
3904 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3905 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xb9, 0x05, 0x30, 0x30,
3906 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xe3, 0xa5, 0x03, 0x39,
3907 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x33, 0x0b, 0x2f, 0x32,
3908 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0x76,
3909 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3910 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xb9, 0x05, 0x30, 0x30,
3911 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0xe3, 0xa5, 0x03, 0x79,
3912 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3913 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x2d, 0xbc,
3914 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
3915 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0x02, 0x00, 0x00, 0x32,
3916 + 0x00, 0x00, 0xd8, 0x0e, 0x20, 0x00, 0x01, 0x2c, 0x09, 0xc0, 0x6e, 0xb2,
3917 + 0x00, 0x00, 0xd9, 0x0e, 0x00, 0x16, 0x86, 0xcc, 0x06, 0xc0, 0x92, 0x92,
3918 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x86, 0xcc, 0x06, 0xc0, 0x92, 0x32,
3919 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x40, 0x62, 0x8e, 0x92, 0x52,
3920 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3921 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3922 + 0x00, 0x00, 0xdf, 0x0e, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
3923 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x42, 0x80, 0x97, 0xbc,
3924 + 0xdf, 0x0e, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
3925 + 0x60, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0xb1,
3926 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x03, 0x00, 0x38, 0x32,
3927 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x02, 0x00, 0x30, 0x32,
3928 + 0x00, 0x00, 0x22, 0x0f, 0x04, 0x00, 0x00, 0x24, 0xd8, 0x01, 0x30, 0xb6,
3929 + 0xe4, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0x4d, 0x82, 0x3a,
3930 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3931 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3932 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3933 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3934 + 0xdf, 0x0e, 0x36, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x02, 0x00, 0x36, 0x92,
3935 + 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3936 + 0x00, 0x00, 0xec, 0x0e, 0x00, 0x00, 0x00, 0x20, 0x48, 0x05, 0x30, 0x90,
3937 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3938 + 0x00, 0x00, 0xf7, 0x0e, 0x32, 0x0f, 0x01, 0xbc, 0x08, 0xc0, 0x6e, 0xb2,
3939 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0xdc, 0x02, 0x40, 0x6e, 0x32,
3940 + 0x00, 0x00, 0xf0, 0x0e, 0x1f, 0x01, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
3941 + 0x00, 0x00, 0xf6, 0x0e, 0x1d, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
3942 + 0xe0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
3943 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
3944 + 0x20, 0xcd, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
3945 + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x87, 0xa0, 0xea, 0x39,
3946 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0xea, 0x32,
3947 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x38, 0xb2,
3948 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xe0, 0x26, 0x01, 0x6e, 0x35,
3949 + 0x00, 0x00, 0xfb, 0x0e, 0x80, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x8b, 0xb6,
3950 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x0e, 0x82, 0x32,
3951 + 0x00, 0xe0, 0x03, 0x0f, 0x12, 0x01, 0x00, 0x48, 0xa2, 0x0d, 0x90, 0xb2,
3952 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3953 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x32,
3954 + 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
3955 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
3956 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
3957 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0x00, 0x82, 0x37,
3958 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x10, 0x00, 0x00, 0x87, 0xbf, 0x97, 0xba,
3959 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x40, 0xfe, 0x32,
3960 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0xb4,
3961 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3962 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x89, 0x60, 0x38, 0x32,
3963 + 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa4, 0x17, 0x38,
3964 + 0x00, 0x00, 0x09, 0x0f, 0x80, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x8b, 0xb6,
3965 + 0x00, 0x00, 0x0a, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3966 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3967 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x97, 0xbc,
3968 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf3, 0x41, 0x90, 0x34,
3969 + 0x00, 0x00, 0x0f, 0x0f, 0x04, 0x00, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
3970 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3971 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x05, 0x30, 0x30,
3972 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0xa4, 0x03, 0x39,
3973 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0xce, 0x2c, 0x32,
3974 + 0x00, 0xe0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x0d, 0x90, 0xb2,
3975 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3976 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0xdc, 0x02, 0x40, 0x6e, 0x32,
3977 + 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xa4, 0x17, 0x38,
3978 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x32, 0x80, 0x97, 0xbc,
3979 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x10, 0x01, 0x80, 0x22, 0x01, 0x6e, 0xb6,
3980 + 0x00, 0x00, 0x18, 0x0f, 0x1f, 0x01, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xb2,
3981 + 0x00, 0x00, 0x20, 0x0f, 0x1d, 0x10, 0x01, 0xf8, 0x02, 0x00, 0x6e, 0xb2,
3982 + 0xe0, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
3983 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x00, 0x2d, 0x37,
3984 + 0x20, 0xcd, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x97, 0x3a,
3985 + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x37, 0x8b, 0xea, 0x39,
3986 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0xea, 0x32,
3987 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
3988 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
3989 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xf8, 0x02, 0x00, 0x6e, 0x32,
3990 + 0xee, 0xff, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0xb0,
3991 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
3992 + 0xee, 0xff, 0x8a, 0x11, 0x04, 0x11, 0x01, 0x80, 0x82, 0x0d, 0x6e, 0xb0,
3993 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0xf8, 0x02, 0x00, 0x6e, 0x32,
3994 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x01, 0xdc, 0x02, 0x40, 0x6e, 0x72,
3995 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
3996 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
3997 + 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x89, 0x4d, 0x0d, 0x36,
3998 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x80, 0x0b, 0x32,
3999 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x90, 0x32,
4000 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0x36, 0x32,
4001 + 0x00, 0x00, 0x2b, 0x0f, 0x12, 0x00, 0x00, 0x4c, 0xf2, 0xc1, 0x38, 0xb4,
4002 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
4003 + 0x00, 0x00, 0x2c, 0x0f, 0x12, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x21, 0xb2,
4004 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x02, 0x90, 0x3a,
4005 + 0x00, 0x00, 0x28, 0x0f, 0x04, 0x01, 0x00, 0x04, 0x19, 0x40, 0x90, 0xbc,
4006 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4007 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4008 + 0x00, 0x00, 0x3b, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4009 + 0x00, 0x00, 0x35, 0x0f, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
4010 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4011 + 0x00, 0x00, 0x3a, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
4012 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x22, 0x80, 0x2d, 0xbc,
4013 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x80, 0x18, 0x00, 0x88, 0xbc,
4014 + 0x00, 0x00, 0x35, 0x0f, 0x12, 0x01, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
4015 + 0x00, 0x00, 0x34, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4016 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
4017 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
4018 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
4019 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x6c, 0x88, 0x1c, 0x83, 0x3a,
4020 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x4c, 0x08, 0x00, 0x72, 0x32,
4021 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x50, 0x00, 0x18, 0xc8, 0x20, 0x72, 0xbc,
4022 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x81, 0x7c,
4023 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0x3c,
4024 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x20, 0x88, 0x01, 0x82, 0xba,
4025 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4026 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x06, 0x32,
4027 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x36, 0xbc,
4028 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x77, 0x4a, 0x09, 0x39,
4029 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0x82, 0x32,
4030 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x19, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
4031 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
4032 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x72,
4033 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4034 + 0x00, 0x00, 0x00, 0x00, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x3e,
4035 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x00, 0x80, 0x32,
4036 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0xc0, 0x86, 0x32,
4037 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0xc0, 0x84, 0x32,
4038 + 0x00, 0x00, 0xa3, 0x0f, 0x04, 0x00, 0x00, 0x28, 0xd8, 0xa0, 0x82, 0xbc,
4039 + 0x00, 0x00, 0x8a, 0x11, 0x09, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4040 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xd8, 0xa0, 0x81, 0x3c,
4041 + 0x00, 0x00, 0x67, 0x0f, 0x04, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0xbc,
4042 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
4043 + 0x00, 0x00, 0x58, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
4044 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0x02, 0xc0, 0x38, 0xb2,
4045 + 0x00, 0x00, 0x60, 0x0f, 0x51, 0x00, 0x00, 0xd8, 0x12, 0x80, 0x2d, 0x9a,
4046 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
4047 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4048 + 0x00, 0x00, 0x5e, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
4049 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4050 + 0x00, 0x00, 0x59, 0x0f, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
4051 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
4052 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
4053 + 0x00, 0x00, 0x00, 0x00, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4054 + 0x00, 0x00, 0x65, 0x0f, 0x2a, 0x01, 0x00, 0x00, 0xd8, 0x20, 0x80, 0xba,
4055 + 0x00, 0x00, 0x64, 0x0f, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
4056 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4057 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
4058 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4059 + 0x00, 0x00, 0xb7, 0x0e, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xf2,
4060 + 0x00, 0x00, 0x4d, 0x0f, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x9e,
4061 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
4062 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4063 + 0x1d, 0x00, 0x6e, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4064 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4065 + 0x00, 0x00, 0x68, 0x0f, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
4066 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
4067 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4068 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x78, 0x39, 0x9a, 0xfe, 0x38,
4069 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
4070 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
4071 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x97, 0xd2,
4072 + 0x08, 0x00, 0x8a, 0x11, 0x12, 0x40, 0x02, 0x68, 0x12, 0x9a, 0xfe, 0xb8,
4073 + 0x00, 0x00, 0x8a, 0x11, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4074 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
4075 + 0x00, 0x00, 0x86, 0x0f, 0x1f, 0x00, 0x00, 0x6c, 0xd8, 0xe0, 0x86, 0xba,
4076 + 0x00, 0x00, 0xa3, 0x0e, 0x51, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0xf2,
4077 + 0x00, 0x00, 0x79, 0x0f, 0x00, 0x00, 0x00, 0x3c, 0x08, 0x40, 0x80, 0x92,
4078 + 0x00, 0x00, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4079 + 0x00, 0x00, 0x7e, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x81, 0x2f, 0xb6,
4080 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
4081 + 0x00, 0x00, 0x7e, 0x0f, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
4082 + 0x00, 0x00, 0x7e, 0x0f, 0x80, 0x01, 0x00, 0x80, 0x32, 0x80, 0x87, 0xb6,
4083 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xe2, 0x80, 0x2f, 0x34,
4084 + 0x00, 0x00, 0x4c, 0x0f, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x81, 0xbc,
4085 + 0x00, 0x00, 0x84, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4086 + 0x00, 0x00, 0x83, 0x0f, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
4087 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4088 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
4089 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4090 + 0x00, 0x00, 0xb7, 0x0e, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xf2,
4091 + 0x00, 0x00, 0x4d, 0x0f, 0x4d, 0x00, 0x00, 0x00, 0x67, 0xe0, 0x83, 0x9e,
4092 + 0x00, 0x00, 0x89, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
4093 + 0x00, 0x00, 0xa7, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4094 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4095 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0xa8, 0x60, 0x8a, 0x3c,
4096 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x21, 0x01, 0x80, 0x82, 0x5b, 0x8a, 0xbc,
4097 + 0x00, 0x00, 0x8d, 0x0f, 0x2f, 0xa8, 0x01, 0x20, 0x99, 0x22, 0x6e, 0xba,
4098 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
4099 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x02, 0x80, 0x82, 0x1b, 0x92, 0xbc,
4100 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x06, 0x00, 0x92, 0x32,
4101 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x01, 0xe8, 0x06, 0x00, 0x00, 0x32,
4102 + 0x00, 0x00, 0x92, 0x0f, 0x23, 0x21, 0x01, 0xe0, 0x06, 0x00, 0x00, 0xb2,
4103 + 0x3c, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4104 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x30, 0x00, 0xe0, 0x06, 0x80, 0x82, 0xb2,
4105 + 0x00, 0x00, 0x9c, 0x0f, 0x04, 0x21, 0x00, 0xe0, 0x06, 0x80, 0x81, 0xb2,
4106 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xe2, 0x80, 0x2f, 0xb6,
4107 + 0x00, 0x00, 0x9a, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4108 + 0x00, 0x00, 0x99, 0x0f, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
4109 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4110 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x32,
4111 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4112 + 0x00, 0x00, 0xb7, 0x0e, 0x00, 0x60, 0x00, 0x6c, 0x08, 0x00, 0x6e, 0xf2,
4113 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0xe0, 0x06, 0x80, 0x81, 0x32,
4114 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x00, 0xe8, 0x06, 0x40, 0x81, 0x32,
4115 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x10, 0x00, 0xe0, 0x06, 0xc0, 0x86, 0xb2,
4116 + 0x00, 0x00, 0x00, 0x00, 0x2a, 0x19, 0x00, 0xe0, 0x06, 0xc0, 0x84, 0x72,
4117 + 0x00, 0x00, 0xa1, 0x0f, 0x12, 0x01, 0x00, 0x00, 0x09, 0xc0, 0x21, 0xb2,
4118 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4119 + 0x1d, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xa4, 0x17, 0xb8,
4120 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0x75,
4121 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xd8, 0xe0, 0x83, 0x3c,
4122 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0xc1, 0x38, 0xb4,
4123 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4124 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0x34,
4125 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x00, 0x2c, 0x3a,
4126 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4127 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x32,
4128 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0x00, 0x00, 0x32,
4129 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0x32,
4130 + 0xee, 0x05, 0xaf, 0x0f, 0x04, 0x01, 0x00, 0x80, 0x82, 0x4d, 0xf5, 0xbc,
4131 + 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x00, 0x36, 0x32,
4132 + 0x00, 0x00, 0xb1, 0x0f, 0x00, 0x00, 0x00, 0x04, 0x09, 0xc0, 0x09, 0x92,
4133 + 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x00, 0x36, 0x32,
4134 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x80, 0x09, 0x32,
4135 + 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc0, 0x87, 0xcd, 0x00, 0x37,
4136 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x60, 0xc0, 0x07, 0x80, 0x97, 0x32,
4137 + 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x8d, 0x2a, 0x3a,
4138 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x52, 0x81, 0x97, 0xb4,
4139 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0x24, 0x90, 0x3a,
4140 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x0d, 0x90, 0x36,
4141 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x19, 0x40, 0x90, 0x3c,
4142 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x52, 0x82, 0x2a, 0x3a,
4143 + 0x00, 0x08, 0xb1, 0x0f, 0x02, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2a, 0xbc,
4144 + 0x00, 0x00, 0xc2, 0x0f, 0x06, 0x00, 0x00, 0x80, 0x02, 0x40, 0x90, 0xbc,
4145 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x20, 0xb2,
4146 + 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x87, 0xcd, 0x00, 0x37,
4147 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0xc0, 0x07, 0x80, 0x97, 0x32,
4148 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x5c, 0x52, 0x81, 0x2a, 0xb4,
4149 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0x24, 0x90, 0x3a,
4150 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x0d, 0x90, 0x36,
4151 + 0x00, 0x00, 0xbb, 0x0f, 0x04, 0x01, 0x00, 0x04, 0x19, 0x40, 0x90, 0xbc,
4152 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x89, 0x0d, 0x90, 0x36,
4153 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0e, 0x80, 0x97, 0x32,
4154 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0x80, 0x97, 0xb2,
4155 + 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x89, 0x0d, 0x90, 0x36,
4156 + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x89, 0x4d, 0x92, 0x3c,
4157 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0x4d, 0x92, 0x36,
4158 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x89, 0x4d, 0x92, 0x30,
4159 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x18, 0x9b, 0x81, 0xb2, 0xe4, 0x78, 0xb6,
4160 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x9b, 0x8d, 0xb7, 0xe4, 0x78, 0x34,
4161 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0e, 0x80, 0x97, 0x32,
4162 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0x24, 0x90, 0x3a,
4163 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x59, 0x00, 0x90, 0x36,
4164 + 0x00, 0x00, 0xc4, 0x0f, 0x95, 0x01, 0x00, 0x80, 0x22, 0x24, 0x90, 0xba,
4165 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4166 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4167 + 0x00, 0x00, 0xec, 0x0f, 0x04, 0x01, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
4168 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0x29, 0x32,
4169 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0xb2, 0x45, 0x28, 0x30,
4170 + 0x00, 0x00, 0xdd, 0x0f, 0x86, 0x01, 0x00, 0x08, 0x09, 0x80, 0x2f, 0xb2,
4171 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x09, 0x40, 0x81, 0x32,
4172 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x00, 0x00, 0x32,
4173 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0x02, 0x00, 0x00, 0x32,
4174 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x02, 0x39,
4175 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x80, 0x92, 0x32,
4176 + 0x00, 0x00, 0xdc, 0x0f, 0x04, 0x07, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0xbc,
4177 + 0x00, 0x00, 0xe7, 0x0f, 0xc3, 0x07, 0x01, 0xec, 0xb6, 0xe4, 0x6e, 0x9a,
4178 + 0x00, 0x00, 0xe7, 0x0f, 0x00, 0x06, 0x01, 0xec, 0xb6, 0xe4, 0x6e, 0x9a,
4179 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x52, 0x80, 0x90, 0xb6,
4180 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x09, 0x05, 0x80, 0x30,
4181 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x02, 0x00, 0x00, 0x32,
4182 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0x02, 0x00, 0x00, 0x32,
4183 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x02, 0x39,
4184 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x80, 0x92, 0x32,
4185 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xf2, 0xc1, 0x92, 0xb6,
4186 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xfa, 0x92, 0xbc,
4187 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xfa, 0x92, 0xbc,
4188 + 0x44, 0x00, 0x2c, 0x10, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x8d, 0x2f, 0xd2,
4189 + 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4190 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x92, 0xd2,
4191 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0x32,
4192 + 0x00, 0x00, 0xec, 0x0f, 0x04, 0x01, 0x00, 0x78, 0xd9, 0x01, 0x30, 0xb6,
4193 + 0x00, 0x00, 0xd4, 0x0f, 0x00, 0x00, 0x00, 0x9c, 0xb2, 0x45, 0x28, 0x90,
4194 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x22, 0x80, 0x97, 0x7c,
4195 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4196 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4197 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0xe8, 0xbc,
4198 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x02, 0xc0, 0xe8, 0x32,
4199 + 0x02, 0x00, 0xf1, 0x0f, 0xb0, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0xb9,
4200 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xab, 0xe4, 0xb0, 0x32,
4201 + 0x00, 0x00, 0xf6, 0x0f, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x4a, 0xd0, 0xb6,
4202 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x28, 0x09, 0x00, 0x00, 0x32,
4203 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4204 + 0x00, 0x00, 0xf9, 0x0f, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0xf8, 0xbc,
4205 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x80, 0x01, 0x00, 0xf8, 0x32,
4206 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x09, 0x00, 0x00, 0x52,
4207 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x34,
4208 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x4a, 0xd0, 0xb6,
4209 + 0x00, 0x00, 0x00, 0x10, 0x04, 0x01, 0x00, 0x28, 0x09, 0x34, 0xb0, 0xba,
4210 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xc2, 0x4a, 0xd0, 0xb6,
4211 + 0x00, 0x00, 0xfd, 0x0f, 0xb0, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4212 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x35,
4213 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x09, 0x00, 0x00, 0x52,
4214 + 0x00, 0x00, 0x00, 0x10, 0xb0, 0x00, 0x00, 0xa8, 0x22, 0x00, 0x2b, 0xb7,
4215 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x84, 0xc0, 0x37, 0xac, 0xb0, 0xb2,
4216 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x0c, 0x0b, 0x00, 0x00, 0x32,
4217 + 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x4d, 0xb0, 0x30,
4218 + 0x00, 0x00, 0x08, 0x10, 0x80, 0x00, 0x00, 0x80, 0x02, 0x40, 0xb0, 0xb6,
4219 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x12, 0x40, 0xb0, 0xb6,
4220 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x69, 0x81, 0x97, 0x35,
4221 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x08, 0x0b, 0x00, 0x7c, 0x32,
4222 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x25, 0x01, 0x32,
4223 + 0x00, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x2a, 0x3a,
4224 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0xb0, 0x32,
4225 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0xd0, 0x32,
4226 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0x54,
4227 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4228 + 0x00, 0x00, 0x0e, 0x10, 0xb0, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, 0xb2,
4229 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xab, 0xe4, 0xb0, 0x32,
4230 + 0x00, 0x00, 0x13, 0x10, 0x80, 0x01, 0x00, 0x80, 0x02, 0x40, 0xd0, 0xb6,
4231 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x28, 0x09, 0x00, 0x00, 0x32,
4232 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4233 + 0x00, 0x00, 0x16, 0x10, 0x04, 0x00, 0x00, 0x80, 0x02, 0x00, 0xf8, 0xbc,
4234 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x80, 0x01, 0x00, 0xf8, 0x32,
4235 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x09, 0x00, 0x00, 0x52,
4236 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0x0d, 0x40, 0xd0, 0x34,
4237 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x02, 0x40, 0xd0, 0xb6,
4238 + 0x00, 0x00, 0x1d, 0x10, 0x04, 0x01, 0x00, 0x28, 0x09, 0x34, 0xb0, 0xba,
4239 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x02, 0x40, 0xd0, 0xb6,
4240 + 0x00, 0x00, 0x1a, 0x10, 0xb0, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4241 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x04, 0x0d, 0x40, 0xd0, 0x35,
4242 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x09, 0x00, 0x00, 0x52,
4243 + 0x00, 0x00, 0x1d, 0x10, 0xb0, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x00, 0xb2,
4244 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x84, 0xc0, 0x37, 0xac, 0xb0, 0xb2,
4245 + 0x00, 0x00, 0x00, 0x00, 0xa0, 0x00, 0x00, 0x0c, 0x0b, 0x00, 0x00, 0x32,
4246 + 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x4d, 0xb0, 0x30,
4247 + 0x00, 0x00, 0x25, 0x10, 0x80, 0x00, 0x00, 0x80, 0x02, 0x40, 0xb0, 0xb6,
4248 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x12, 0x40, 0xb0, 0xb6,
4249 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x69, 0x81, 0x97, 0x35,
4250 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x08, 0x0b, 0x00, 0x7c, 0x32,
4251 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x25, 0x01, 0x32,
4252 + 0x00, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x2a, 0x3a,
4253 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0xb0, 0x32,
4254 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0xd0, 0x32,
4255 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0x54,
4256 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4257 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4258 + 0x00, 0x00, 0x00, 0x00, 0x1c, 0x41, 0x02, 0x80, 0x06, 0xc0, 0x92, 0x52,
4259 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x92, 0x30,
4260 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
4261 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
4262 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x97, 0xd2,
4263 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x92, 0xb0,
4264 + 0x00, 0x00, 0x8a, 0x11, 0x0b, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4265 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x3a,
4266 + 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4267 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x92, 0xd2,
4268 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x01, 0xb0, 0x02, 0xc0, 0x6e, 0x32,
4269 + 0x00, 0x82, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0x08, 0x80, 0x36, 0x52,
4270 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4271 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x38, 0x80, 0x87, 0x35,
4272 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x80, 0x87, 0xb6,
4273 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3a,
4274 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
4275 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x01, 0xe0, 0x16, 0x20, 0x6e, 0x3c,
4276 + 0x08, 0x00, 0x00, 0x00, 0xd2, 0x01, 0x00, 0x78, 0xe9, 0xe5, 0x83, 0x39,
4277 + 0x18, 0x00, 0x8a, 0x11, 0x1f, 0x41, 0x02, 0x84, 0xe6, 0xa1, 0x97, 0xb9,
4278 + 0x00, 0x00, 0x43, 0x10, 0x36, 0x51, 0x01, 0xe8, 0x16, 0xe0, 0x83, 0xbc,
4279 + 0x00, 0x00, 0x43, 0x10, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4280 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
4281 + 0x00, 0x00, 0x45, 0x10, 0x38, 0x21, 0x01, 0xe0, 0x06, 0x40, 0x80, 0xb2,
4282 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x01, 0xe0, 0x06, 0x40, 0x80, 0x32,
4283 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x31, 0x00, 0xe0, 0x06, 0x00, 0x00, 0x72,
4284 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4285 + 0x2c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4286 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x92, 0xd2,
4287 + 0x00, 0x00, 0x00, 0x00, 0xd5, 0x08, 0x00, 0x00, 0x07, 0x80, 0x92, 0x32,
4288 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
4289 + 0x00, 0x40, 0x00, 0x80, 0x00, 0x38, 0x00, 0x00, 0x07, 0x00, 0x37, 0x32,
4290 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x41, 0x01, 0xe0, 0x06, 0x80, 0x92, 0x32,
4291 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x48, 0x02, 0xc0, 0x80, 0xb2,
4292 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x08, 0xe8, 0x01, 0x00, 0x74,
4293 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4294 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4295 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x62, 0x80, 0x2d, 0xbc,
4296 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x07, 0x80, 0x92, 0x32,
4297 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0x32,
4298 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x3d, 0x00, 0x0c, 0x07, 0x80, 0x83, 0x32,
4299 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x48, 0x02, 0xc0, 0x80, 0x72,
4300 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4301 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4302 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x57, 0x01, 0x80, 0x02, 0xc0, 0x6e, 0x7c,
4303 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x57, 0x01, 0xec, 0x06, 0x80, 0x92, 0x72,
4304 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4305 + 0x00, 0x00, 0xd1, 0x0f, 0x00, 0x00, 0x00, 0x30, 0x03, 0x00, 0x38, 0xf2,
4306 + 0x33, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4307 + 0x10, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x19, 0xa0, 0x2c, 0xd9,
4308 + 0x00, 0x00, 0x60, 0x10, 0x9d, 0x11, 0x02, 0x0c, 0x09, 0x00, 0x6e, 0xb2,
4309 + 0x00, 0x00, 0x61, 0x10, 0x00, 0xf0, 0x01, 0x1c, 0x09, 0x00, 0x6e, 0x92,
4310 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x01, 0x1c, 0x09, 0x00, 0x6e, 0x32,
4311 + 0x00, 0x00, 0x63, 0x10, 0x2c, 0xcd, 0x01, 0x18, 0x09, 0x80, 0x6e, 0xb2,
4312 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xc9, 0xc1, 0x90, 0x34,
4313 + 0x00, 0x00, 0x67, 0x10, 0x3b, 0x29, 0x02, 0x04, 0x09, 0x80, 0x6e, 0xb2,
4314 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0xd6, 0x01, 0x80, 0x52, 0xc0, 0x6e, 0xb6,
4315 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd6, 0x01, 0xec, 0x56, 0xc0, 0x6e, 0x34,
4316 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xb9, 0xc1, 0x90, 0x34,
4317 + 0x00, 0x00, 0x77, 0x10, 0x00, 0xa8, 0x01, 0x08, 0x09, 0x00, 0x6e, 0xf2,
4318 + 0x00, 0x00, 0x6b, 0x10, 0x9d, 0x01, 0x00, 0x80, 0x17, 0xe0, 0x90, 0xba,
4319 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x80, 0x07, 0xc0, 0x91, 0x32,
4320 + 0x00, 0x00, 0x6e, 0x10, 0x00, 0x38, 0x00, 0x80, 0x07, 0x00, 0xee, 0x92,
4321 + 0x00, 0x00, 0x6e, 0x10, 0x04, 0x01, 0x00, 0x80, 0x02, 0xc0, 0x91, 0xbc,
4322 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x01, 0xe0, 0x06, 0x00, 0xee, 0x32,
4323 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x01, 0xe0, 0x06, 0x00, 0x86, 0x32,
4324 + 0x00, 0x00, 0x71, 0x10, 0x39, 0x08, 0x00, 0x80, 0x07, 0xc0, 0x85, 0xb2,
4325 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xc2, 0x81, 0x2f, 0xb6,
4326 + 0x00, 0x00, 0x00, 0x00, 0xd9, 0xc9, 0x01, 0xe8, 0x06, 0x80, 0x91, 0x32,
4327 + 0x00, 0x00, 0x00, 0x00, 0xc8, 0x11, 0x00, 0x80, 0x07, 0x40, 0x90, 0x32,
4328 + 0x00, 0x00, 0x74, 0x10, 0x3b, 0x21, 0x00, 0x80, 0x07, 0x00, 0x86, 0xb2,
4329 + 0x00, 0x00, 0x00, 0x00, 0xdb, 0x00, 0x00, 0x60, 0x18, 0x00, 0x86, 0x3a,
4330 + 0x00, 0x00, 0x00, 0x00, 0x58, 0x78, 0x01, 0xe0, 0x16, 0x20, 0x86, 0x3a,
4331 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x29, 0x00, 0x80, 0x07, 0x00, 0x85, 0x72,
4332 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4333 + 0x00, 0x00, 0x7b, 0x10, 0x02, 0x0c, 0x02, 0x80, 0xa2, 0x9b, 0x90, 0xbc,
4334 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x78, 0x29, 0x00, 0x6e, 0x36,
4335 + 0x00, 0x00, 0x7b, 0x10, 0x02, 0x00, 0x00, 0x80, 0xe2, 0xa5, 0x90, 0xbc,
4336 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x00, 0x00, 0x32,
4337 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x01, 0x78, 0x49, 0x21, 0x6e, 0x3c,
4338 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe9, 0xa5, 0x90, 0x3f,
4339 + 0x00, 0x00, 0x82, 0x10, 0x04, 0x20, 0x02, 0x08, 0x89, 0x9b, 0x90, 0xbe,
4340 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x02, 0x58, 0xb8, 0x9b, 0x90, 0x36,
4341 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x49, 0xa1, 0x90, 0x3a,
4342 + 0x00, 0x00, 0x00, 0x00, 0x9f, 0x88, 0x01, 0x80, 0x82, 0x9b, 0x97, 0x7c,
4343 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x01, 0xe0, 0x06, 0x80, 0x97, 0x72,
4344 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x02, 0x58, 0xb8, 0x9b, 0x90, 0x76,
4345 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4346 + 0x00, 0x00, 0x8b, 0x10, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4347 + 0x00, 0x00, 0x89, 0x10, 0x12, 0x01, 0x00, 0x78, 0x09, 0xc0, 0x21, 0xb2,
4348 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4349 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
4350 + 0x00, 0x00, 0x8b, 0x10, 0xca, 0x00, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x92,
4351 + 0x15, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x78, 0xe9, 0x65, 0x17, 0xb8,
4352 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0x35,
4353 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0x2d, 0xbc,
4354 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
4355 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x6c, 0x88, 0x1c, 0x83, 0x3a,
4356 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x00, 0x4c, 0x08, 0x00, 0x72, 0x32,
4357 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x50, 0x00, 0x18, 0xc8, 0x20, 0x72, 0xbc,
4358 + 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x80, 0x62, 0xa0, 0x82, 0x7c,
4359 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x00, 0x00, 0x14, 0x18, 0x40, 0x81, 0xbc,
4360 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x00, 0x00, 0x20, 0x88, 0x01, 0x82, 0xba,
4361 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4362 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x06, 0x32,
4363 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x02, 0x00, 0x36, 0xbc,
4364 + 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x77, 0x4a, 0x09, 0x39,
4365 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0x82, 0x32,
4366 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x19, 0x00, 0x00, 0x07, 0x40, 0x82, 0x32,
4367 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0xc1, 0x38, 0xb4,
4368 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd8, 0x02, 0x40, 0x84, 0x72,
4369 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4370 + 0x2b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4371 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x85, 0xd2,
4372 + 0x00, 0x00, 0xa6, 0x10, 0x80, 0x01, 0x00, 0x80, 0xf2, 0xc1, 0x85, 0xb6,
4373 + 0x00, 0x00, 0xa2, 0x10, 0x1f, 0x40, 0x02, 0x84, 0xe6, 0x01, 0x00, 0xb4,
4374 + 0x00, 0x00, 0xa6, 0x10, 0x1d, 0x01, 0x00, 0xf8, 0x22, 0x81, 0x2f, 0xb4,
4375 + 0x00, 0x00, 0xa6, 0x10, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x95,
4376 + 0x00, 0x00, 0xa4, 0x10, 0x1d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4377 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x62, 0x81, 0x2f, 0x35,
4378 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x02, 0x80, 0x02, 0x40, 0x68, 0x32,
4379 + 0x00, 0x00, 0x8a, 0x11, 0x1f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4380 + 0x00, 0x00, 0x73, 0x11, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc5, 0x85, 0xd0,
4381 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x68, 0x02, 0xc5, 0x85, 0xb0,
4382 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x09, 0xc5, 0x85, 0x30,
4383 + 0x00, 0x00, 0x8a, 0x11, 0x02, 0x01, 0x00, 0x80, 0x82, 0xba, 0x97, 0xbc,
4384 + 0x00, 0x00, 0x8a, 0x11, 0x06, 0x01, 0x00, 0x80, 0x92, 0xba, 0x97, 0xbc,
4385 + 0x00, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x5c, 0x1f, 0xc0, 0xf5, 0x7a,
4386 + 0x01, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0x70,
4387 + 0x29, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4388 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x02, 0x81, 0x2f, 0x74,
4389 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4390 + 0x80, 0xa8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0x70,
4391 + 0x00, 0x00, 0xb7, 0x10, 0x80, 0x01, 0x00, 0x80, 0xd2, 0x80, 0x2f, 0xb6,
4392 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x72, 0x81, 0x2f, 0xb6,
4393 + 0x00, 0x00, 0xba, 0x10, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
4394 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x72, 0x81, 0x2f, 0x34,
4395 + 0x3b, 0x00, 0xba, 0x10, 0x12, 0x01, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4396 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4397 + 0x00, 0x00, 0xba, 0x10, 0x80, 0x01, 0x00, 0x80, 0xf2, 0x80, 0x2f, 0xb6,
4398 + 0x30, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4399 + 0x00, 0x00, 0xbd, 0x10, 0x00, 0x00, 0x00, 0xf8, 0x42, 0x81, 0x2f, 0x94,
4400 + 0x00, 0x00, 0xbd, 0x10, 0x80, 0x01, 0x00, 0x80, 0xb2, 0x80, 0x2f, 0xb6,
4401 + 0x34, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4402 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x42, 0x81, 0x2f, 0x34,
4403 + 0x80, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x80, 0x82, 0x8d, 0x2f, 0x70,
4404 + 0x02, 0x00, 0x00, 0x00, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0x70,
4405 + 0x3a, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x2c, 0x82, 0xcd, 0x2e, 0xb2,
4406 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x12, 0x81, 0x2f, 0x74,
4407 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4408 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4409 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x65, 0x01, 0x80, 0xa2, 0xdb, 0x2c, 0xbc,
4410 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x18, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x39,
4411 + 0xee, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0x71,
4412 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4413 + 0x00, 0x00, 0xcb, 0x10, 0x00, 0x00, 0x01, 0x38, 0x08, 0xc0, 0x6e, 0xf2,
4414 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x48, 0x02, 0xc0, 0x80, 0x72,
4415 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4416 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4417 + 0x00, 0x00, 0xcd, 0x10, 0x04, 0x38, 0x01, 0x78, 0x09, 0x00, 0x6e, 0xb2,
4418 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x32,
4419 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4420 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x11, 0x00, 0x00, 0x07, 0x80, 0x82, 0x32,
4421 + 0x00, 0x00, 0xd1, 0x10, 0x2e, 0x19, 0x00, 0x00, 0x07, 0x80, 0x97, 0xb2,
4422 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xe9, 0x81, 0x92, 0x34,
4423 + 0x00, 0x00, 0xd5, 0x10, 0x27, 0x31, 0x00, 0x00, 0x07, 0xc0, 0x2c, 0xb2,
4424 + 0x00, 0x00, 0x00, 0x00, 0xd5, 0x08, 0x00, 0x00, 0x07, 0x00, 0x87, 0x32,
4425 + 0x00, 0x00, 0x00, 0x00, 0xc7, 0x00, 0x00, 0x28, 0xe9, 0x80, 0x92, 0x34,
4426 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x32,
4427 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x39, 0x00, 0x00, 0xe7, 0xa0, 0x92, 0x79,
4428 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4429 + 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4430 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x90, 0xd2,
4431 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x44, 0x12, 0xe4, 0x38, 0xb2,
4432 + 0x18, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x03, 0xf9,
4433 + 0x00, 0x00, 0xdf, 0x10, 0x04, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2d, 0xbc,
4434 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4435 + 0x00, 0x00, 0xda, 0x10, 0x67, 0x00, 0x00, 0xf8, 0xa2, 0x80, 0x2f, 0xb5,
4436 + 0x00, 0x00, 0x8a, 0x11, 0x12, 0x00, 0x00, 0xe8, 0x02, 0xc0, 0x21, 0xb2,
4437 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0x72, 0x80, 0x2d, 0xbc,
4438 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd8, 0x02, 0x40, 0x00, 0x72,
4439 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4440 + 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x79, 0x0a, 0x91, 0x39,
4441 + 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x39, 0x0b, 0x91, 0x39,
4442 + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x59, 0x0a, 0x91, 0x39,
4443 + 0x09, 0x00, 0xe5, 0x10, 0xf1, 0x01, 0x00, 0x10, 0x69, 0x0b, 0x91, 0xb9,
4444 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x24, 0x86, 0xa8, 0x82, 0x8d, 0x6c, 0x37,
4445 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xe0, 0x07, 0x00, 0x91, 0x32,
4446 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xe0, 0x07, 0x40, 0x91, 0x32,
4447 + 0x00, 0x80, 0xeb, 0x10, 0x02, 0x01, 0x00, 0x80, 0x82, 0x8d, 0x2a, 0xbc,
4448 + 0x00, 0x00, 0xec, 0x10, 0xe1, 0x24, 0x86, 0xc8, 0x06, 0x00, 0x00, 0x92,
4449 + 0x03, 0x00, 0x00, 0x00, 0xe1, 0x24, 0x86, 0xc8, 0x86, 0x8d, 0x2a, 0x36,
4450 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4451 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4452 + 0x00, 0x00, 0xf4, 0x10, 0x04, 0x30, 0x00, 0x80, 0x82, 0x9b, 0x81, 0xbc,
4453 + 0x00, 0x00, 0x8a, 0x11, 0x0d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4454 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0x3c, 0x00, 0x14, 0x28, 0x80, 0x6e, 0xbc,
4455 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4456 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x02, 0x80, 0x2f, 0x35,
4457 + 0x00, 0xa0, 0x8a, 0x11, 0x12, 0x00, 0x00, 0x40, 0xa2, 0x8d, 0x39, 0xb2,
4458 + 0x00, 0x00, 0xf6, 0x10, 0x80, 0x39, 0x00, 0x80, 0xe2, 0x80, 0x6e, 0xb6,
4459 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x38, 0x00, 0x80, 0xf2, 0x80, 0x6e, 0xb6,
4460 + 0x00, 0xe0, 0x8a, 0x11, 0x04, 0x01, 0x00, 0x80, 0xa2, 0x8d, 0x2f, 0xb0,
4461 + 0x00, 0xe0, 0xfd, 0x10, 0x04, 0x38, 0x00, 0x78, 0x89, 0x8d, 0x6e, 0xb0,
4462 + 0x10, 0x00, 0xfd, 0x10, 0x9f, 0x01, 0x00, 0xf8, 0xe2, 0xa5, 0x2f, 0xb9,
4463 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0xee, 0xbc,
4464 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0x82, 0x81, 0x2f, 0xb6,
4465 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x58, 0x01, 0xec, 0x06, 0xc0, 0xee, 0x32,
4466 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
4467 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x28, 0x00, 0x18, 0x09, 0x00, 0x6e, 0x72,
4468 + 0x00, 0x00, 0x4f, 0x0e, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xf0,
4469 + 0x00, 0x00, 0x2f, 0x0e, 0x00, 0xa8, 0x01, 0x20, 0x09, 0x00, 0x6e, 0x92,
4470 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4471 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xa9, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
4472 + 0x00, 0x00, 0x00, 0x00, 0x04, 0xb0, 0x00, 0x80, 0x82, 0x9b, 0x81, 0x7c,
4473 + 0x00, 0x00, 0x8a, 0x11, 0x0d, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4474 + 0x00, 0x00, 0x8a, 0x11, 0x9f, 0xbc, 0x00, 0x14, 0x28, 0x80, 0x6e, 0xbc,
4475 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4476 + 0x00, 0x00, 0x00, 0x00, 0xca, 0x01, 0x00, 0xf8, 0x42, 0x80, 0x2f, 0x35,
4477 + 0x08, 0xa0, 0x00, 0x00, 0x12, 0x01, 0x00, 0x40, 0xa2, 0xcd, 0x39, 0x72,
4478 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4479 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4480 + 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4481 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x80, 0x90, 0xd2,
4482 + 0x00, 0x00, 0x0f, 0x11, 0x33, 0xcd, 0x01, 0xbc, 0x08, 0x80, 0x6e, 0xb2,
4483 + 0x00, 0x00, 0x4e, 0x11, 0x00, 0x00, 0x00, 0x28, 0x29, 0x22, 0xee, 0xdc,
4484 + 0x00, 0x00, 0x14, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4485 + 0x00, 0x00, 0x14, 0x11, 0x04, 0xb8, 0x01, 0x28, 0x09, 0x00, 0x6e, 0xb2,
4486 + 0x00, 0x00, 0x14, 0x11, 0x9f, 0x71, 0x01, 0x80, 0xc2, 0x21, 0x6e, 0xbc,
4487 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xa9, 0x24, 0xee, 0x3c,
4488 + 0x00, 0x00, 0x4e, 0x11, 0x00, 0x00, 0x00, 0x28, 0x19, 0x80, 0x92, 0xdf,
4489 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
4490 + 0x00, 0x00, 0x28, 0x11, 0x06, 0x80, 0x01, 0x80, 0x82, 0x9b, 0x90, 0xbc,
4491 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x90, 0xbc,
4492 + 0xee, 0x05, 0x20, 0x11, 0x06, 0x0c, 0x02, 0x80, 0x82, 0x8d, 0x6e, 0xbc,
4493 + 0x00, 0x90, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x84, 0x02, 0x00, 0x37, 0x32,
4494 + 0x00, 0x00, 0x1a, 0x11, 0xb8, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4495 + 0x00, 0x00, 0x18, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4496 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x03, 0x80, 0x90, 0x32,
4497 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x01, 0xe0, 0x96, 0x21, 0x6e, 0x3c,
4498 + 0x00, 0x00, 0x00, 0x00, 0x61, 0x98, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x32,
4499 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
4500 + 0x00, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x78, 0x49, 0x40, 0x3c, 0x37,
4501 + 0x00, 0x00, 0x2d, 0x11, 0x00, 0x00, 0x00, 0x08, 0xe9, 0xa5, 0x90, 0x9a,
4502 + 0x60, 0x89, 0x20, 0x00, 0x00, 0x00, 0x00, 0x84, 0x02, 0x00, 0x37, 0x32,
4503 + 0x00, 0x00, 0x23, 0x11, 0xb8, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0xb0,
4504 + 0x00, 0x00, 0x21, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4505 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x03, 0x80, 0x90, 0x32,
4506 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x01, 0xe0, 0x96, 0x21, 0x6e, 0x3c,
4507 + 0x00, 0x00, 0x00, 0x00, 0x61, 0x98, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x32,
4508 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
4509 + 0x00, 0x00, 0x2d, 0x11, 0xa8, 0x00, 0x00, 0x08, 0x19, 0x8f, 0x90, 0x9a,
4510 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x99, 0xa1, 0x89, 0x3e,
4511 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe9, 0xa5, 0x90, 0x3a,
4512 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x01, 0xe0, 0x96, 0x21, 0x6e, 0x3c,
4513 + 0x00, 0x00, 0x00, 0x00, 0x61, 0x98, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x32,
4514 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0x01, 0xec, 0x06, 0x00, 0x00, 0x32,
4515 + 0x00, 0x00, 0x30, 0x11, 0x06, 0x00, 0x00, 0x80, 0x72, 0xa2, 0x90, 0xbc,
4516 + 0x00, 0xc0, 0xff, 0x3f, 0x00, 0x80, 0x01, 0xe0, 0x06, 0x00, 0x37, 0x32,
4517 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0xc0, 0x89, 0x32,
4518 + 0x00, 0x00, 0x36, 0x11, 0x04, 0x79, 0x01, 0x80, 0x82, 0x1b, 0x87, 0xbc,
4519 + 0x00, 0x00, 0x34, 0x11, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xbc,
4520 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x01, 0xe0, 0x06, 0x80, 0x90, 0x32,
4521 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x92, 0x81, 0x2f, 0x75,
4522 + 0x00, 0x00, 0x3c, 0x11, 0x80, 0x00, 0x00, 0x80, 0x52, 0x81, 0x2f, 0xb6,
4523 + 0x00, 0x00, 0x3c, 0x11, 0xd5, 0x41, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x92,
4524 + 0x00, 0x00, 0x39, 0x11, 0x3c, 0x90, 0x01, 0xe0, 0x06, 0x80, 0x90, 0xb2,
4525 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x01, 0x00, 0x80, 0x92, 0x81, 0x2f, 0xb6,
4526 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x01, 0xe8, 0x06, 0xc0, 0x8b, 0x32,
4527 + 0x00, 0x00, 0x00, 0x00, 0x95, 0x01, 0x00, 0x80, 0x02, 0x80, 0x2f, 0x72,
4528 + 0x00, 0x00, 0x3d, 0x11, 0x9f, 0x41, 0x01, 0x80, 0x82, 0x1b, 0x87, 0xbc,
4529 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
4530 + 0x00, 0x00, 0x00, 0x00, 0xd9, 0x90, 0x01, 0xe0, 0x06, 0x80, 0x90, 0x32,
4531 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x72, 0x80, 0x2f, 0x74,
4532 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4533 + 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4534 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0x40, 0x87, 0xd2,
4535 + 0x00, 0x00, 0x47, 0x11, 0x9f, 0xd8, 0x01, 0x80, 0x22, 0x21, 0x6e, 0xbc,
4536 + 0x00, 0x00, 0x00, 0x00, 0x0b, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
4537 + 0x00, 0x00, 0x47, 0x11, 0x9f, 0xe0, 0x01, 0x80, 0xc2, 0x21, 0x6e, 0xbc,
4538 + 0x00, 0x00, 0x00, 0x00, 0x0b, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
4539 + 0x00, 0x00, 0x47, 0x11, 0x9f, 0xb0, 0x01, 0x80, 0xd2, 0x21, 0x6e, 0xbc,
4540 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x70,
4541 + 0x00, 0x00, 0x49, 0x11, 0x06, 0x68, 0x01, 0x80, 0x82, 0x5b, 0x87, 0xbc,
4542 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x01, 0xe0, 0x06, 0x40, 0x87, 0x32,
4543 + 0x00, 0x00, 0x4b, 0x11, 0x37, 0xb0, 0x01, 0xe0, 0x06, 0x40, 0x87, 0xb2,
4544 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xd2, 0x80, 0x2f, 0x34,
4545 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x01, 0xe0, 0x06, 0x80, 0x84, 0x32,
4546 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0x01, 0xe0, 0x06, 0x00, 0x87, 0x72,
4547 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4548 + 0x00, 0x00, 0x8a, 0x11, 0x08, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xbc,
4549 + 0x00, 0x00, 0x5b, 0x11, 0x04, 0xc1, 0x01, 0x84, 0x02, 0x00, 0x6e, 0xb2,
4550 + 0x05, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0xe8, 0x86, 0x8d, 0x92, 0x37,
4551 + 0x03, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x01, 0xe8, 0x86, 0x8d, 0x92, 0x37,
4552 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x30,
4553 + 0x03, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0x2c, 0x89, 0x8d, 0x6e, 0x36,
4554 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x01, 0x2c, 0xa9, 0xdb, 0x92, 0x3a,
4555 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x29, 0xc0, 0x92, 0x36,
4556 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x19, 0xfb, 0x92, 0x3f,
4557 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x29, 0x80, 0x92, 0x3a,
4558 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0xa9, 0xe4, 0x92, 0x3f,
4559 + 0x00, 0x00, 0x00, 0x00, 0x6f, 0xcc, 0x01, 0xe8, 0x26, 0xfb, 0x92, 0x3e,
4560 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x52,
4561 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x02, 0x80, 0x92, 0x32,
4562 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x01, 0xe0, 0x06, 0x40, 0x28, 0x32,
4563 + 0x10, 0x00, 0x00, 0x00, 0x6f, 0xcc, 0x01, 0xe8, 0x86, 0xcd, 0x2a, 0x36,
4564 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb9, 0x01, 0xe0, 0x06, 0x00, 0x00, 0x52,
4565 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4566 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0xb0, 0x00, 0x80, 0x02, 0x00, 0x6e, 0xb2,
4567 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x01, 0xbc, 0x08, 0x00, 0x6e, 0x32,
4568 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x01, 0xbc, 0x88, 0xdb, 0x8b, 0x3e,
4569 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x01, 0xbc, 0x88, 0xdb, 0x8b, 0x3a,
4570 + 0x00, 0x00, 0x6a, 0x11, 0x9f, 0x00, 0x00, 0xbc, 0x88, 0xe1, 0x8b, 0xbc,
4571 + 0x00, 0x00, 0x6a, 0x11, 0x04, 0x0c, 0x02, 0x40, 0xa8, 0xdb, 0x8b, 0xbe,
4572 + 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x00, 0x04, 0x88, 0x1b, 0x84, 0x3e,
4573 + 0x00, 0x00, 0x69, 0x11, 0x04, 0xb1, 0x00, 0x80, 0x82, 0x5b, 0x80, 0xbc,
4574 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0xc2, 0x80, 0x2f, 0x74,
4575 + 0x00, 0x00, 0x00, 0x00, 0x04, 0x0c, 0x02, 0x80, 0xa2, 0x5b, 0x80, 0x7c,
4576 + 0x29, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0x32,
4577 + 0x00, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x14, 0x09, 0xc0, 0x8b, 0xd2,
4578 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x12, 0x00, 0x2c, 0x3a,
4579 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4580 + 0x00, 0x00, 0x8a, 0x11, 0x04, 0x65, 0x01, 0x80, 0xa2, 0xdb, 0x2c, 0xbc,
4581 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x00, 0x00, 0x80, 0xa2, 0x80, 0x2f, 0xb6,
4582 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x01, 0xe8, 0x76, 0x20, 0x81, 0x39,
4583 + 0xee, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0xf8, 0x82, 0x8d, 0x2f, 0x71,
4584 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4585 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0xd9, 0x4a, 0x91, 0x39,
4586 + 0x39, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0xd2,
4587 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x09, 0x45, 0x91, 0x30,
4588 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x89, 0x4d, 0x91, 0x36,
4589 + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x89, 0xcd, 0x93, 0x3c,
4590 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0xcd, 0x93, 0x36,
4591 + 0x07, 0x00, 0x79, 0x11, 0xf3, 0x01, 0x00, 0x40, 0x89, 0xcd, 0x93, 0xb0,
4592 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x18, 0x9b, 0x81, 0x02, 0xe5, 0x78, 0xb6,
4593 + 0x00, 0x00, 0x00, 0x00, 0xe3, 0x18, 0x9b, 0x8d, 0x07, 0xe5, 0x78, 0x34,
4594 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4595 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4596 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0xd9, 0x4a, 0x91, 0x39,
4597 + 0x3a, 0x00, 0xe2, 0x10, 0x00, 0x00, 0x00, 0x10, 0x09, 0x00, 0x36, 0xd2,
4598 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x09, 0x45, 0x91, 0x30,
4599 + 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x89, 0x4d, 0x91, 0x36,
4600 + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0x89, 0xcd, 0x93, 0x3c,
4601 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0x82, 0xcd, 0x93, 0x36,
4602 + 0x07, 0x00, 0x84, 0x11, 0xf3, 0x01, 0x00, 0x40, 0x89, 0xcd, 0x93, 0xb0,
4603 + 0x00, 0x00, 0x8a, 0x11, 0x80, 0x19, 0x9b, 0x81, 0x02, 0xe5, 0x78, 0xb6,
4604 + 0x00, 0x00, 0x00, 0x00, 0xe3, 0x18, 0x9b, 0x8d, 0x07, 0xe5, 0x78, 0x35,
4605 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4606 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4607 + 0x00, 0x00, 0x8a, 0x11, 0x00, 0x00, 0x00, 0xb4, 0x0f, 0x40, 0xfb, 0x94,
4608 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x0f, 0x40, 0x2b, 0x32,
4609 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0f, 0x00, 0x28, 0x32,
4610 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x0f, 0x00, 0x29, 0x32,
4611 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0x0f, 0x40, 0x18, 0x32,
4612 + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x36, 0x32,
4613 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x5f, 0xca, 0xf9, 0x35,
4614 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x03, 0xc0, 0xf9, 0x32,
4615 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x00, 0x32,
4616 + 0x41, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
4617 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0x00, 0x00, 0x32,
4618 + 0x40, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
4619 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x0f, 0x80, 0x2a, 0x32,
4620 + 0x4c, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4621 + 0x98, 0x11, 0x97, 0x12, 0x00, 0x00, 0x00, 0xb0, 0x0f, 0x00, 0x36, 0x92,
4622 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4623 + 0x00, 0x01, 0x84, 0x12, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x36, 0xd2,
4624 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x80, 0x2a, 0x32,
4625 + 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4626 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x7e, 0x32,
4627 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0x00, 0x7e, 0x32,
4628 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0x00, 0x7e, 0x32,
4629 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x0f, 0x00, 0x7e, 0x32,
4630 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0xc0, 0xfa, 0x32,
4631 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0xf9, 0x32,
4632 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0xfa, 0x32,
4633 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0xfa, 0x32,
4634 + 0x00, 0x00, 0xac, 0x11, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0xfa, 0xd2,
4635 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0xfb, 0x32,
4636 + 0x01, 0x00, 0xcf, 0x11, 0x04, 0x01, 0x00, 0xb4, 0x8f, 0x4d, 0xfb, 0xb0,
4637 + 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xab, 0xcd, 0xb0, 0x32,
4638 + 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x5b, 0xca, 0xb0, 0x39,
4639 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x2b, 0xfe, 0xb0, 0x32,
4640 + 0x00, 0x00, 0xaa, 0x11, 0x12, 0x01, 0x00, 0x80, 0x02, 0x40, 0x20, 0xb2,
4641 + 0x00, 0x00, 0xbe, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4642 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x03, 0x00, 0x01, 0x32,
4643 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xe0, 0x07, 0x80, 0x3f, 0x52,
4644 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x8a, 0x02, 0x39,
4645 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x53, 0x0a, 0x16, 0x35,
4646 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x90, 0x32,
4647 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0x40, 0x90, 0x32,
4648 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0x80, 0x90, 0x32,
4649 + 0xa2, 0x60, 0x03, 0x00, 0x00, 0x00, 0x00, 0x58, 0x03, 0x00, 0x37, 0x32,
4650 + 0xb9, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x03, 0x00, 0x36, 0x32,
4651 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x83, 0x0d, 0x00, 0x34,
4652 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x83, 0x0d, 0x00, 0x34,
4653 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x53, 0x0a, 0x00, 0x34,
4654 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4655 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0xc0, 0xf9, 0x32,
4656 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x09, 0x00, 0xfa, 0x32,
4657 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x09, 0x40, 0xfa, 0x32,
4658 + 0x00, 0x00, 0xc9, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4659 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0x39,
4660 + 0x00, 0x00, 0xc0, 0x11, 0x80, 0x01, 0x00, 0x80, 0x12, 0x40, 0xb0, 0xb6,
4661 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3b, 0x40, 0xb0, 0x33,
4662 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x35,
4663 + 0x00, 0x00, 0xc4, 0x11, 0x00, 0x00, 0x00, 0x0c, 0x0b, 0x40, 0x90, 0x92,
4664 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0x39,
4665 + 0x00, 0x00, 0xc4, 0x11, 0x00, 0x00, 0x00, 0x04, 0x6b, 0x41, 0x90, 0x94,
4666 + 0x00, 0x00, 0xc4, 0x11, 0x12, 0x00, 0x00, 0x00, 0x09, 0x40, 0x20, 0xb2,
4667 + 0x00, 0x00, 0xc5, 0x11, 0x12, 0x00, 0x00, 0x04, 0x09, 0x40, 0x20, 0xb2,
4668 + 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0xe4, 0x16, 0x38,
4669 + 0x00, 0x00, 0xc9, 0x11, 0x9f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
4670 + 0x00, 0x00, 0xc8, 0x11, 0x12, 0x00, 0x00, 0x08, 0x09, 0x40, 0x20, 0xb2,
4671 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4672 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4673 + 0x02, 0x00, 0xc4, 0x11, 0x04, 0x01, 0x00, 0xbc, 0x0f, 0x24, 0x17, 0xb8,
4674 + 0x06, 0x00, 0xc2, 0x11, 0x04, 0x00, 0x00, 0xbc, 0x0f, 0x64, 0x16, 0xb8,
4675 + 0x00, 0x00, 0xbd, 0x11, 0x04, 0x00, 0x00, 0x80, 0x22, 0xc0, 0xfb, 0xbc,
4676 + 0x20, 0x00, 0xc4, 0x11, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xfb, 0xbc,
4677 + 0x00, 0x00, 0xd7, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4678 + 0xd1, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x82, 0xcd, 0xf9, 0x3a,
4679 + 0x00, 0x00, 0xb7, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4680 + 0x00, 0x00, 0xf7, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4681 + 0x00, 0x00, 0xf8, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4682 + 0x00, 0x00, 0xfc, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4683 + 0x00, 0x00, 0x04, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4684 + 0x00, 0x00, 0x5d, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4685 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x03, 0x32,
4686 + 0x40, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4687 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x80, 0x2a, 0x32,
4688 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x40, 0x90, 0x32,
4689 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0x00, 0x32,
4690 + 0x00, 0x00, 0xde, 0x11, 0x9f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
4691 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x80, 0x90, 0x32,
4692 + 0x00, 0x00, 0xde, 0x11, 0x12, 0x00, 0x00, 0x40, 0xf2, 0x01, 0x00, 0xb4,
4693 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0x32,
4694 + 0x00, 0x00, 0xe0, 0x11, 0x12, 0x00, 0x00, 0x9c, 0x0f, 0xc0, 0x21, 0xb2,
4695 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x7e, 0x32,
4696 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0x00, 0x7e, 0x32,
4697 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0x00, 0x7e, 0x32,
4698 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x07, 0x00, 0xfa, 0x52,
4699 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4700 + 0x4c, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4701 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x80, 0x2a, 0x32,
4702 + 0x00, 0x00, 0xad, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4703 + 0x00, 0x00, 0xb3, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4704 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xcb, 0xc1, 0xb0, 0x34,
4705 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4706 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4707 + 0x00, 0x00, 0xef, 0x0f, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0xb0, 0xd2,
4708 + 0x00, 0x00, 0xeb, 0x11, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xb2,
4709 + 0x00, 0x00, 0xef, 0x11, 0x12, 0x00, 0x00, 0x9c, 0x0f, 0xc0, 0x21, 0xb2,
4710 + 0x02, 0x00, 0xf2, 0x11, 0x04, 0x01, 0x00, 0xb4, 0x8f, 0x4d, 0xfb, 0xb0,
4711 + 0x00, 0x00, 0xc4, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4712 + 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x93, 0x40, 0x01, 0x39,
4713 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x1f, 0x40, 0xfb, 0x35,
4714 + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x03, 0x00, 0x36, 0x32,
4715 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x03, 0x00, 0x00, 0x34,
4716 + 0x00, 0x00, 0xeb, 0x11, 0x00, 0x00, 0x00, 0x0c, 0x8b, 0xc1, 0xb0, 0x94,
4717 + 0x00, 0x00, 0xbb, 0x12, 0x00, 0x08, 0x00, 0x00, 0x07, 0x40, 0xfa, 0x92,
4718 + 0x00, 0x00, 0xad, 0x12, 0x00, 0x08, 0x00, 0x00, 0x07, 0x40, 0xfa, 0xd2,
4719 + 0x00, 0x00, 0xf9, 0x11, 0x12, 0x00, 0x00, 0x50, 0xf2, 0x01, 0x00, 0xb4,
4720 + 0x00, 0x00, 0xb4, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4721 + 0x00, 0x00, 0xbd, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4722 + 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x36, 0x32,
4723 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4724 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x02, 0x00, 0x00, 0x32,
4725 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0xb0, 0x32,
4726 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x12, 0x00, 0x2a, 0x3a,
4727 + 0x00, 0x00, 0xff, 0x11, 0x04, 0x01, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0xbc,
4728 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4729 + 0x00, 0x00, 0xba, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4730 + 0x00, 0x00, 0x0c, 0x12, 0x04, 0x01, 0x00, 0x80, 0x02, 0x40, 0xfa, 0xb2,
4731 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4732 + 0x00, 0x00, 0x0e, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4733 + 0x00, 0x00, 0x1b, 0x12, 0x00, 0x00, 0x00, 0x84, 0x02, 0x00, 0x00, 0xd2,
4734 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x3c, 0x32,
4735 + 0x00, 0x00, 0x08, 0x12, 0x8e, 0x01, 0x00, 0x80, 0x02, 0x40, 0x28, 0xb2,
4736 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0x00, 0x36, 0x32,
4737 + 0x00, 0x00, 0xf7, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4738 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x8f, 0x4d, 0xfa, 0x3a,
4739 + 0x00, 0x00, 0xf7, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4740 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x00, 0x32,
4741 + 0x10, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x37, 0x32,
4742 + 0x00, 0x00, 0x20, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4743 + 0x08, 0x00, 0x10, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xf9, 0xbc,
4744 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x00, 0x32,
4745 + 0x0e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x37, 0x32,
4746 + 0x00, 0x00, 0x20, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4747 + 0x0b, 0x00, 0x14, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xf9, 0xbc,
4748 + 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x36, 0x32,
4749 + 0x0f, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x37, 0x32,
4750 + 0x00, 0x00, 0x20, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4751 + 0x27, 0x00, 0x18, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xf9, 0xbc,
4752 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4753 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x00, 0x32,
4754 + 0x0f, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x37, 0x32,
4755 + 0x00, 0x00, 0x20, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4756 + 0x20, 0x00, 0x1d, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xf9, 0xbc,
4757 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4758 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0x03, 0xc0, 0xf9, 0x32,
4759 + 0x0d, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0xe0, 0x03, 0x00, 0x37, 0x32,
4760 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0xc0, 0xfa, 0x32,
4761 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x3e, 0x32,
4762 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0x5a,
4763 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x03, 0xc0, 0xf9, 0x32,
4764 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x3e, 0x32,
4765 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0x3a,
4766 + 0xff, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xac, 0x8f, 0xcd, 0xf9, 0x50,
4767 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x2b, 0x32,
4768 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
4769 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x3e, 0x32,
4770 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x12, 0x00, 0x2b, 0x3a,
4771 + 0x0f, 0x00, 0x2b, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0x0d, 0x2b, 0xbc,
4772 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x3e, 0x32,
4773 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xb0, 0x02, 0xc0, 0xf9, 0x52,
4774 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x3a, 0x32,
4775 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x3a, 0x32,
4776 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x3a, 0x32,
4777 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x3a, 0x32,
4778 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x2b, 0x32,
4779 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
4780 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x3d, 0x32,
4781 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x3d, 0x32,
4782 + 0x00, 0x00, 0x36, 0x12, 0x84, 0x01, 0x00, 0xb0, 0x12, 0x00, 0x2b, 0xba,
4783 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xb0, 0x02, 0xc0, 0xf9, 0x52,
4784 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x00, 0x32,
4785 + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x73, 0x3e, 0x00, 0x39,
4786 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x30, 0x32,
4787 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0x3a,
4788 + 0x70, 0x00, 0x3b, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xf9, 0xbc,
4789 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x03, 0x00, 0x00, 0x32,
4790 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x30, 0x32,
4791 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x03, 0x00, 0x00, 0x32,
4792 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x30, 0x32,
4793 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x00, 0x32,
4794 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0xc0, 0x29, 0x32,
4795 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0xc0, 0xf9, 0x32,
4796 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0xc0, 0x2c, 0x32,
4797 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0xfa, 0x32,
4798 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x73, 0x7e, 0xfa, 0x39,
4799 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x30, 0x32,
4800 + 0x00, 0x00, 0x44, 0x12, 0x85, 0x01, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0xba,
4801 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4802 + 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x37, 0x32,
4803 + 0x00, 0x00, 0x25, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4804 + 0x0e, 0x00, 0x53, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xfa, 0xbc,
4805 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x00, 0x32,
4806 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x00, 0x32,
4807 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x00, 0x32,
4808 + 0x00, 0x00, 0x4d, 0x12, 0x00, 0x00, 0x00, 0x9c, 0x3f, 0xc0, 0xf9, 0x9a,
4809 + 0x1c, 0x00, 0x4d, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xfa, 0xbc,
4810 + 0x02, 0x00, 0x25, 0x12, 0x00, 0x00, 0x00, 0x9c, 0x8f, 0xcd, 0xf9, 0xda,
4811 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4812 + 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x37, 0x32,
4813 + 0x00, 0x00, 0x25, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4814 + 0x0e, 0x00, 0x5b, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xfa, 0xbc,
4815 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x00, 0x32,
4816 + 0x00, 0x00, 0x57, 0x12, 0x00, 0x00, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0x9a,
4817 + 0x26, 0x00, 0x57, 0x12, 0x04, 0x01, 0x00, 0x80, 0x82, 0xcd, 0xfa, 0xbc,
4818 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4819 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x0f, 0x40, 0x29, 0x32,
4820 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4821 + 0x00, 0x00, 0x4c, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4822 + 0x00, 0x00, 0x56, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4823 + 0x00, 0x00, 0x29, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4824 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x18, 0x32,
4825 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x0f, 0x00, 0x00, 0x32,
4826 + 0xa2, 0x60, 0x03, 0x00, 0x00, 0x00, 0x00, 0x58, 0x03, 0x00, 0x37, 0x32,
4827 + 0x6b, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x03, 0x00, 0x36, 0x32,
4828 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x80, 0x2a, 0x32,
4829 + 0x00, 0x00, 0x6b, 0x12, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x29, 0xb2,
4830 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x83, 0x3e, 0x00, 0x34,
4831 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x83, 0x3e, 0x00, 0x34,
4832 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x53, 0x0a, 0x00, 0x34,
4833 + 0x00, 0x00, 0x6c, 0x12, 0x00, 0x00, 0x00, 0x88, 0x0f, 0x40, 0x2b, 0x92,
4834 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x0f, 0x00, 0x28, 0x32,
4835 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x94, 0x0f, 0x00, 0x29, 0x32,
4836 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0x0f, 0x80, 0x2a, 0x32,
4837 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0xc0, 0xf9, 0x32,
4838 + 0x71, 0x12, 0x97, 0x12, 0x00, 0x00, 0x00, 0xb0, 0x0f, 0x00, 0x36, 0x92,
4839 + 0x07, 0x00, 0x74, 0x12, 0x04, 0x00, 0x00, 0x80, 0x82, 0x4d, 0x29, 0xbc,
4840 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x1f, 0x00, 0xfa, 0x3a,
4841 + 0x00, 0x00, 0x68, 0x12, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x80, 0x2a, 0x92,
4842 + 0xc0, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x0f, 0x00, 0x36, 0x32,
4843 + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x36, 0x32,
4844 + 0x00, 0x00, 0x84, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4845 + 0x1f, 0x00, 0x7a, 0x12, 0x04, 0x00, 0x00, 0x80, 0x82, 0xcd, 0x29, 0xbc,
4846 + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xac, 0x8f, 0xcd, 0xfa, 0x3a,
4847 + 0x00, 0x00, 0x76, 0x12, 0x00, 0x00, 0x00, 0x9c, 0x12, 0xc0, 0x29, 0x9a,
4848 + 0x00, 0x00, 0x3a, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4849 + 0x00, 0x00, 0x30, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4850 + 0x00, 0x00, 0x82, 0x12, 0x04, 0x00, 0x00, 0x80, 0x52, 0x8a, 0xfa, 0xbc,
4851 + 0xa2, 0x60, 0x03, 0x00, 0x00, 0x00, 0x00, 0x58, 0x03, 0x00, 0x37, 0x32,
4852 + 0x82, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5c, 0x03, 0x00, 0x36, 0x32,
4853 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xa3, 0x3e, 0x00, 0x34,
4854 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0xa3, 0x3e, 0x00, 0x34,
4855 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x53, 0x0a, 0x00, 0x34,
4856 + 0x00, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0x0f, 0x00, 0x36, 0x32,
4857 + 0x00, 0x00, 0xf7, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4858 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x02, 0xc0, 0xfa, 0x32,
4859 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x36, 0x32,
4860 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x0f, 0x40, 0x2f, 0x32,
4861 + 0x00, 0x00, 0x8b, 0x12, 0x04, 0x00, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0xbc,
4862 + 0x00, 0x00, 0x8a, 0x12, 0x04, 0x00, 0x00, 0x80, 0x02, 0x40, 0x2f, 0xb2,
4863 + 0x00, 0x00, 0x87, 0x12, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x2c, 0x92,
4864 + 0x00, 0x00, 0x87, 0x12, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x36, 0x92,
4865 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x2c, 0x32,
4866 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x2c, 0x32,
4867 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x2c, 0x32,
4868 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x2d, 0x32,
4869 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x2d, 0x32,
4870 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x2d, 0x32,
4871 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x2d, 0x32,
4872 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0xfb, 0x32,
4873 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x2f, 0x32,
4874 + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x73, 0x0a, 0x02, 0x39,
4875 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xe0, 0x07, 0x80, 0x3f, 0x52,
4876 + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x03, 0x00, 0x36, 0x32,
4877 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0xf9, 0x32,
4878 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x28, 0x32,
4879 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0xf8, 0x32,
4880 + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x0f, 0x00, 0x36, 0x32,
4881 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x0f, 0xc0, 0x2b, 0x32,
4882 + 0x00, 0x00, 0xa0, 0x12, 0x04, 0x00, 0x00, 0x9c, 0x1f, 0xc0, 0xf9, 0xbc,
4883 + 0x00, 0x00, 0x9f, 0x12, 0x04, 0x00, 0x00, 0x80, 0x02, 0xc0, 0x2b, 0xb2,
4884 + 0x00, 0x00, 0x9c, 0x12, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x28, 0x92,
4885 + 0x00, 0x00, 0x9c, 0x12, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x36, 0x92,
4886 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0xf9, 0x32,
4887 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x29, 0x32,
4888 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x29, 0x32,
4889 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x29, 0x32,
4890 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x2a, 0x32,
4891 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x2a, 0x32,
4892 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0xf9, 0x32,
4893 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0x2a, 0x32,
4894 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x00, 0x2b, 0x32,
4895 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x40, 0x2b, 0x32,
4896 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0x80, 0x2b, 0x32,
4897 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x07, 0xc0, 0xfb, 0x32,
4898 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x02, 0x00, 0xfb, 0x32,
4899 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4900 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4901 + 0x00, 0x00, 0xb1, 0x12, 0x9f, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
4902 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x07, 0x40, 0x90, 0x52,
4903 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x80, 0x90, 0x32,
4904 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x00, 0x00, 0x07, 0x40, 0x90, 0x52,
4905 + 0x00, 0x00, 0xb3, 0x12, 0x12, 0x00, 0x00, 0x48, 0xf2, 0x01, 0x00, 0xb4,
4906 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x90, 0x32,
4907 + 0x00, 0x00, 0xb5, 0x12, 0x12, 0x00, 0x00, 0x9c, 0x0f, 0xc0, 0x21, 0xb2,
4908 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x02, 0x00, 0x00, 0x50,
4909 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb4, 0x0f, 0x40, 0xfb, 0x35,
4910 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4911 + 0x4c, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x02, 0x00, 0x36, 0x32,
4912 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x07, 0x80, 0x2a, 0x32,
4913 + 0x00, 0x00, 0xad, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4914 + 0x00, 0x00, 0xb3, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0xd0,
4915 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xcb, 0xc1, 0xb0, 0x34,
4916 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9c, 0x02, 0x00, 0x00, 0x32,
4917 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0x02, 0x00, 0x00, 0x32,
4918 + 0x00, 0x00, 0xc4, 0x12, 0x00, 0x00, 0x00, 0x28, 0x09, 0xc0, 0xb0, 0xd2,
4919 + 0x00, 0x00, 0xbe, 0x12, 0x04, 0x00, 0x00, 0x80, 0x02, 0x80, 0x92, 0xb2,
4920 + 0x00, 0x00, 0xc2, 0x12, 0x12, 0x00, 0x00, 0x9c, 0x0f, 0xc0, 0x21, 0xb2,
4921 + 0x00, 0x00, 0xc4, 0x11, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4922 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x02, 0x00, 0x00, 0x32,
4923 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0x39,
4924 + 0x00, 0x00, 0xc8, 0x12, 0x04, 0x01, 0x00, 0x28, 0x09, 0x34, 0xb0, 0xba,
4925 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x28, 0x09, 0x00, 0x00, 0x52,
4926 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x22, 0x00, 0x2b, 0x37,
4927 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0xc0, 0x37, 0xac, 0xb0, 0x32,
4928 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0b, 0x00, 0x00, 0x32,
4929 + 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xa9, 0x4d, 0xb0, 0x30,
4930 + 0x00, 0x00, 0xd8, 0x12, 0x80, 0x00, 0x00, 0x80, 0x02, 0x40, 0xb0, 0xb6,
4931 + 0x00, 0x00, 0xcd, 0x12, 0x12, 0x00, 0x00, 0x00, 0x09, 0x40, 0x20, 0xb2,
4932 + 0x00, 0x00, 0xce, 0x12, 0x12, 0x00, 0x00, 0x04, 0x09, 0x40, 0x20, 0xb2,
4933 + 0x00, 0x00, 0xd1, 0x12, 0x9f, 0x01, 0x00, 0x80, 0x02, 0x00, 0x90, 0xb2,
4934 + 0x00, 0x00, 0xd0, 0x12, 0x12, 0x00, 0x00, 0x08, 0x09, 0x40, 0x20, 0xb2,
4935 + 0x0d, 0x00, 0xcd, 0x12, 0x04, 0x01, 0x00, 0x80, 0x02, 0xe4, 0x16, 0xb8,
4936 + 0x02, 0x00, 0xcd, 0x12, 0x04, 0x01, 0x00, 0xbc, 0x0f, 0x24, 0x17, 0xb8,
4937 + 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0x0f, 0x64, 0x16, 0x38,
4938 + 0x00, 0x00, 0xcd, 0x12, 0x04, 0x01, 0x00, 0x80, 0x22, 0xc0, 0xfb, 0xbc,
4939 + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc2, 0x0a, 0x00, 0x39,
4940 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3b, 0x40, 0xb0, 0x33,
4941 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xcd, 0x4a, 0xd0, 0x35,
4942 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x25, 0x01, 0x32,
4943 + 0x00, 0x42, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x87, 0x8d, 0x2a, 0x3a,
4944 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x07, 0x00, 0xb0, 0x32,
4945 + 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x07, 0x00, 0xd0, 0x32,
4946 + 0x00, 0x00, 0x00, 0x00, 0x12, 0x01, 0x00, 0x48, 0xf2, 0xc1, 0x38, 0x54,
4947 + 0x00, 0x00, 0xdc, 0x12, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4948 + 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4949 +},
4950 +{
4951 + 0x00, 0x00, 0x36, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x00, 0x00, 0x90,
4952 +},
4953 +};
4954 --- /dev/null
4955 +++ b/drivers/staging/sxg/sxg.c
4956 @@ -0,0 +1,3608 @@
4957 +/**************************************************************************
4958 + *
4959 + * Copyright (C) 2000-2008 Alacritech, Inc. All rights reserved.
4960 + *
4961 + * Redistribution and use in source and binary forms, with or without
4962 + * modification, are permitted provided that the following conditions
4963 + * are met:
4964 + *
4965 + * 1. Redistributions of source code must retain the above copyright
4966 + * notice, this list of conditions and the following disclaimer.
4967 + * 2. Redistributions in binary form must reproduce the above
4968 + * copyright notice, this list of conditions and the following
4969 + * disclaimer in the documentation and/or other materials provided
4970 + * with the distribution.
4971 + *
4972 + * THIS SOFTWARE IS PROVIDED BY ALACRITECH, INC. ``AS IS'' AND ANY
4973 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
4974 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
4975 + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ALACRITECH, INC. OR
4976 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
4977 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
4978 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
4979 + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
4980 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
4981 + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
4982 + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
4983 + * SUCH DAMAGE.
4984 + *
4985 + * The views and conclusions contained in the software and documentation
4986 + * are those of the authors and should not be interpreted as representing
4987 + * official policies, either expressed or implied, of Alacritech, Inc.
4988 + *
4989 + **************************************************************************/
4990 +
4991 +/*
4992 + * FILENAME: sxg.c
4993 + *
4994 + * The SXG driver for Alacritech's 10Gbe products.
4995 + *
4996 + * NOTE: This is the standard, non-accelerated version of Alacritech's
4997 + * IS-NIC driver.
4998 + */
4999 +
5000 +#include <linux/kernel.h>
5001 +#include <linux/string.h>
5002 +#include <linux/errno.h>
5003 +#include <linux/module.h>
5004 +#include <linux/moduleparam.h>
5005 +#include <linux/ioport.h>
5006 +#include <linux/slab.h>
5007 +#include <linux/interrupt.h>
5008 +#include <linux/timer.h>
5009 +#include <linux/pci.h>
5010 +#include <linux/spinlock.h>
5011 +#include <linux/init.h>
5012 +#include <linux/netdevice.h>
5013 +#include <linux/etherdevice.h>
5014 +#include <linux/ethtool.h>
5015 +#include <linux/skbuff.h>
5016 +#include <linux/delay.h>
5017 +#include <linux/types.h>
5018 +#include <linux/dma-mapping.h>
5019 +#include <linux/mii.h>
5020 +
5021 +#define SLIC_DUMP_ENABLED 0
5022 +#define SLIC_GET_STATS_ENABLED 0
5023 +#define LINUX_FREES_ADAPTER_RESOURCES 1
5024 +#define SXG_OFFLOAD_IP_CHECKSUM 0
5025 +#define SXG_POWER_MANAGEMENT_ENABLED 0
5026 +#define VPCI 0
5027 +#define DBG 1
5028 +#define ATK_DEBUG 1
5029 +
5030 +#include "sxg_os.h"
5031 +#include "sxghw.h"
5032 +#include "sxghif.h"
5033 +#include "sxg.h"
5034 +#include "sxgdbg.h"
5035 +
5036 +#include "sxgphycode.h"
5037 +#include "saharadbgdownload.h"
5038 +
5039 +static int sxg_allocate_buffer_memory(p_adapter_t adapter, u32 Size, SXG_BUFFER_TYPE BufferType);
5040 +static void sxg_allocate_rcvblock_complete(p_adapter_t adapter, void * RcvBlock, dma_addr_t PhysicalAddress, u32 Length);
5041 +static void sxg_allocate_sgl_buffer_complete(p_adapter_t adapter, PSXG_SCATTER_GATHER SxgSgl, dma_addr_t PhysicalAddress, u32 Length);
5042 +
5043 +static void sxg_mcast_init_crc32(void);
5044 +
5045 +static int sxg_entry_open(p_net_device dev);
5046 +static int sxg_entry_halt(p_net_device dev);
5047 +static int sxg_ioctl(p_net_device dev, struct ifreq *rq, int cmd);
5048 +static int sxg_send_packets(struct sk_buff *skb, p_net_device dev);
5049 +static int sxg_transmit_packet(p_adapter_t adapter, struct sk_buff *skb);
5050 +static void sxg_dumb_sgl(PSCATTER_GATHER_LIST pSgl, PSXG_SCATTER_GATHER SxgSgl);
5051 +
5052 +static void sxg_handle_interrupt(p_adapter_t adapter);
5053 +static int sxg_process_isr(p_adapter_t adapter, u32 MessageId);
5054 +static u32 sxg_process_event_queue(p_adapter_t adapter, u32 RssId);
5055 +static void sxg_complete_slow_send(p_adapter_t adapter);
5056 +static struct sk_buff *sxg_slow_receive(p_adapter_t adapter, PSXG_EVENT Event);
5057 +static void sxg_process_rcv_error(p_adapter_t adapter, u32 ErrorStatus);
5058 +static bool sxg_mac_filter(p_adapter_t adapter,
5059 + p_ether_header EtherHdr, ushort length);
5060 +
5061 +#if SLIC_GET_STATS_ENABLED
5062 +static struct net_device_stats *sxg_get_stats(p_net_device dev);
5063 +#endif
5064 +
5065 +static int sxg_mac_set_address(p_net_device dev, void * ptr);
5066 +
5067 +static void sxg_adapter_set_hwaddr(p_adapter_t adapter);
5068 +
5069 +static void sxg_unmap_mmio_space(p_adapter_t adapter);
5070 +static void sxg_mcast_set_mask(p_adapter_t adapter);
5071 +
5072 +static int sxg_initialize_adapter(p_adapter_t adapter);
5073 +static void sxg_stock_rcv_buffers(p_adapter_t adapter);
5074 +static void sxg_complete_descriptor_blocks(p_adapter_t adapter, unsigned char Index);
5075 +static int sxg_initialize_link(p_adapter_t adapter);
5076 +static int sxg_phy_init(p_adapter_t adapter);
5077 +static void sxg_link_event(p_adapter_t adapter);
5078 +static SXG_LINK_STATE sxg_get_link_state(p_adapter_t adapter);
5079 +static void sxg_link_state(p_adapter_t adapter, SXG_LINK_STATE LinkState);
5080 +static int sxg_write_mdio_reg(p_adapter_t adapter,
5081 + u32 DevAddr, u32 RegAddr, u32 Value);
5082 +static int sxg_read_mdio_reg(p_adapter_t adapter,
5083 + u32 DevAddr, u32 RegAddr, u32 * pValue);
5084 +static void sxg_mcast_set_list(p_net_device dev);
5085 +
5086 +
5087 +
5088 +#define XXXTODO 0
5089 +
5090 +static unsigned int sxg_first_init = 1;
5091 +static char *sxg_banner =
5092 + "Alacritech SLIC Technology(tm) Server and Storage 10Gbe Accelerator (Non-Accelerated)\n";
5093 +
5094 +static int sxg_debug = 1;
5095 +static int debug = -1;
5096 +static p_net_device head_netdevice = NULL;
5097 +
5098 +static sxgbase_driver_t sxg_global = {
5099 + .dynamic_intagg = 1,
5100 +};
5101 +static int intagg_delay = 100;
5102 +static u32 dynamic_intagg = 0;
5103 +
5104 +#define DRV_NAME "sxg"
5105 +#define DRV_VERSION "1.0.1"
5106 +#define DRV_AUTHOR "Alacritech, Inc. Engineering"
5107 +#define DRV_DESCRIPTION "Alacritech SLIC Techonology(tm) Non-Accelerated 10Gbe Driver"
5108 +#define DRV_COPYRIGHT "Copyright 2000-2008 Alacritech, Inc. All rights reserved."
5109 +
5110 +MODULE_AUTHOR(DRV_AUTHOR);
5111 +MODULE_DESCRIPTION(DRV_DESCRIPTION);
5112 +MODULE_LICENSE("GPL");
5113 +
5114 +module_param(dynamic_intagg, int, 0);
5115 +MODULE_PARM_DESC(dynamic_intagg, "Dynamic Interrupt Aggregation Setting");
5116 +module_param(intagg_delay, int, 0);
5117 +MODULE_PARM_DESC(intagg_delay, "uSec Interrupt Aggregation Delay");
5118 +
5119 +static struct pci_device_id sxg_pci_tbl[] __devinitdata = {
5120 + {PCI_DEVICE(SXG_VENDOR_ID, SXG_DEVICE_ID)},
5121 + {0,}
5122 +};
5123 +MODULE_DEVICE_TABLE(pci, sxg_pci_tbl);
5124 +
5125 +/***********************************************************************
5126 +************************************************************************
5127 +************************************************************************
5128 +************************************************************************
5129 +************************************************************************/
5130 +
5131 +static inline void sxg_reg32_write(void __iomem *reg, u32 value, bool flush)
5132 +{
5133 + writel(value, reg);
5134 + if (flush)
5135 + mb();
5136 +}
5137 +
5138 +static inline void sxg_reg64_write(p_adapter_t adapter, void __iomem *reg,
5139 + u64 value, u32 cpu)
5140 +{
5141 + u32 value_high = (u32) (value >> 32);
5142 + u32 value_low = (u32) (value & 0x00000000FFFFFFFF);
5143 + unsigned long flags;
5144 +
5145 + spin_lock_irqsave(&adapter->Bit64RegLock, flags);
5146 + writel(value_high, (void __iomem *)(&adapter->UcodeRegs[cpu].Upper));
5147 + writel(value_low, reg);
5148 + spin_unlock_irqrestore(&adapter->Bit64RegLock, flags);
5149 +}
5150 +
5151 +static void sxg_init_driver(void)
5152 +{
5153 + if (sxg_first_init) {
5154 + DBG_ERROR("sxg: %s sxg_first_init set jiffies[%lx]\n",
5155 + __FUNCTION__, jiffies);
5156 + sxg_first_init = 0;
5157 + spin_lock_init(&sxg_global.driver_lock);
5158 + }
5159 +}
5160 +
5161 +static void sxg_dbg_macaddrs(p_adapter_t adapter)
5162 +{
5163 + DBG_ERROR(" (%s) curr %2.2X:%2.2X:%2.2X:%2.2X:%2.2X:%2.2X\n",
5164 + adapter->netdev->name, adapter->currmacaddr[0],
5165 + adapter->currmacaddr[1], adapter->currmacaddr[2],
5166 + adapter->currmacaddr[3], adapter->currmacaddr[4],
5167 + adapter->currmacaddr[5]);
5168 + DBG_ERROR(" (%s) mac %2.2X:%2.2X:%2.2X:%2.2X:%2.2X:%2.2X\n",
5169 + adapter->netdev->name, adapter->macaddr[0],
5170 + adapter->macaddr[1], adapter->macaddr[2],
5171 + adapter->macaddr[3], adapter->macaddr[4],
5172 + adapter->macaddr[5]);
5173 + return;
5174 +}
5175 +
5176 +// SXG Globals
5177 +static SXG_DRIVER SxgDriver;
5178 +
5179 +#ifdef ATKDBG
5180 +static sxg_trace_buffer_t LSxgTraceBuffer;
5181 +#endif /* ATKDBG */
5182 +static sxg_trace_buffer_t *SxgTraceBuffer = NULL;
5183 +
5184 +/*
5185 + * sxg_download_microcode
5186 + *
5187 + * Download Microcode to Sahara adapter
5188 + *
5189 + * Arguments -
5190 + * adapter - A pointer to our adapter structure
5191 + * UcodeSel - microcode file selection
5192 + *
5193 + * Return
5194 + * int
5195 + */
5196 +static bool sxg_download_microcode(p_adapter_t adapter, SXG_UCODE_SEL UcodeSel)
5197 +{
5198 + PSXG_HW_REGS HwRegs = adapter->HwRegs;
5199 + u32 Section;
5200 + u32 ThisSectionSize;
5201 + u32 * Instruction = NULL;
5202 + u32 BaseAddress, AddressOffset, Address;
5203 +// u32 Failure;
5204 + u32 ValueRead;
5205 + u32 i;
5206 + u32 numSections = 0;
5207 + u32 sectionSize[16];
5208 + u32 sectionStart[16];
5209 +
5210 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DnldUcod",
5211 + adapter, 0, 0, 0);
5212 + DBG_ERROR("sxg: %s ENTER\n", __FUNCTION__);
5213 +
5214 + switch (UcodeSel) {
5215 + case SXG_UCODE_SAHARA: // Sahara operational ucode
5216 + numSections = SNumSections;
5217 + for (i = 0; i < numSections; i++) {
5218 + sectionSize[i] = SSectionSize[i];
5219 + sectionStart[i] = SSectionStart[i];
5220 + }
5221 + break;
5222 + default:
5223 + printk(KERN_ERR KBUILD_MODNAME
5224 + ": Woah, big error with the microcode!\n");
5225 + break;
5226 + }
5227 +
5228 + DBG_ERROR("sxg: RESET THE CARD\n");
5229 + // First, reset the card
5230 + WRITE_REG(HwRegs->Reset, 0xDEAD, FLUSH);
5231 +
5232 + // Download each section of the microcode as specified in
5233 + // its download file. The *download.c file is generated using
5234 + // the saharaobjtoc facility which converts the metastep .obj
5235 + // file to a .c file which contains a two dimentional array.
5236 + for (Section = 0; Section < numSections; Section++) {
5237 + DBG_ERROR("sxg: SECTION # %d\n", Section);
5238 + switch (UcodeSel) {
5239 + case SXG_UCODE_SAHARA:
5240 + Instruction = (u32 *) & SaharaUCode[Section][0];
5241 + break;
5242 + default:
5243 + ASSERT(0);
5244 + break;
5245 + }
5246 + BaseAddress = sectionStart[Section];
5247 + ThisSectionSize = sectionSize[Section] / 12; // Size in instructions
5248 + for (AddressOffset = 0; AddressOffset < ThisSectionSize;
5249 + AddressOffset++) {
5250 + Address = BaseAddress + AddressOffset;
5251 + ASSERT((Address & ~MICROCODE_ADDRESS_MASK) == 0);
5252 + // Write instruction bits 31 - 0
5253 + WRITE_REG(HwRegs->UcodeDataLow, *Instruction, FLUSH);
5254 + // Write instruction bits 63-32
5255 + WRITE_REG(HwRegs->UcodeDataMiddle, *(Instruction + 1),
5256 + FLUSH);
5257 + // Write instruction bits 95-64
5258 + WRITE_REG(HwRegs->UcodeDataHigh, *(Instruction + 2),
5259 + FLUSH);
5260 + // Write instruction address with the WRITE bit set
5261 + WRITE_REG(HwRegs->UcodeAddr,
5262 + (Address | MICROCODE_ADDRESS_WRITE), FLUSH);
5263 + // Sahara bug in the ucode download logic - the write to DataLow
5264 + // for the next instruction could get corrupted. To avoid this,
5265 + // write to DataLow again for this instruction (which may get
5266 + // corrupted, but it doesn't matter), then increment the address
5267 + // and write the data for the next instruction to DataLow. That
5268 + // write should succeed.
5269 + WRITE_REG(HwRegs->UcodeDataLow, *Instruction, TRUE);
5270 + // Advance 3 u32S to start of next instruction
5271 + Instruction += 3;
5272 + }
5273 + }
5274 + // Now repeat the entire operation reading the instruction back and
5275 + // checking for parity errors
5276 + for (Section = 0; Section < numSections; Section++) {
5277 + DBG_ERROR("sxg: check SECTION # %d\n", Section);
5278 + switch (UcodeSel) {
5279 + case SXG_UCODE_SAHARA:
5280 + Instruction = (u32 *) & SaharaUCode[Section][0];
5281 + break;
5282 + default:
5283 + ASSERT(0);
5284 + break;
5285 + }
5286 + BaseAddress = sectionStart[Section];
5287 + ThisSectionSize = sectionSize[Section] / 12; // Size in instructions
5288 + for (AddressOffset = 0; AddressOffset < ThisSectionSize;
5289 + AddressOffset++) {
5290 + Address = BaseAddress + AddressOffset;
5291 + // Write the address with the READ bit set
5292 + WRITE_REG(HwRegs->UcodeAddr,
5293 + (Address | MICROCODE_ADDRESS_READ), FLUSH);
5294 + // Read it back and check parity bit.
5295 + READ_REG(HwRegs->UcodeAddr, ValueRead);
5296 + if (ValueRead & MICROCODE_ADDRESS_PARITY) {
5297 + DBG_ERROR("sxg: %s PARITY ERROR\n",
5298 + __FUNCTION__);
5299 +
5300 + return (FALSE); // Parity error
5301 + }
5302 + ASSERT((ValueRead & MICROCODE_ADDRESS_MASK) == Address);
5303 + // Read the instruction back and compare
5304 + READ_REG(HwRegs->UcodeDataLow, ValueRead);
5305 + if (ValueRead != *Instruction) {
5306 + DBG_ERROR("sxg: %s MISCOMPARE LOW\n",
5307 + __FUNCTION__);
5308 + return (FALSE); // Miscompare
5309 + }
5310 + READ_REG(HwRegs->UcodeDataMiddle, ValueRead);
5311 + if (ValueRead != *(Instruction + 1)) {
5312 + DBG_ERROR("sxg: %s MISCOMPARE MIDDLE\n",
5313 + __FUNCTION__);
5314 + return (FALSE); // Miscompare
5315 + }
5316 + READ_REG(HwRegs->UcodeDataHigh, ValueRead);
5317 + if (ValueRead != *(Instruction + 2)) {
5318 + DBG_ERROR("sxg: %s MISCOMPARE HIGH\n",
5319 + __FUNCTION__);
5320 + return (FALSE); // Miscompare
5321 + }
5322 + // Advance 3 u32S to start of next instruction
5323 + Instruction += 3;
5324 + }
5325 + }
5326 +
5327 + // Everything OK, Go.
5328 + WRITE_REG(HwRegs->UcodeAddr, MICROCODE_ADDRESS_GO, FLUSH);
5329 +
5330 + // Poll the CardUp register to wait for microcode to initialize
5331 + // Give up after 10,000 attemps (500ms).
5332 + for (i = 0; i < 10000; i++) {
5333 + udelay(50);
5334 + READ_REG(adapter->UcodeRegs[0].CardUp, ValueRead);
5335 + if (ValueRead == 0xCAFE) {
5336 + DBG_ERROR("sxg: %s BOO YA 0xCAFE\n", __FUNCTION__);
5337 + break;
5338 + }
5339 + }
5340 + if (i == 10000) {
5341 + DBG_ERROR("sxg: %s TIMEOUT\n", __FUNCTION__);
5342 +
5343 + return (FALSE); // Timeout
5344 + }
5345 + // Now write the LoadSync register. This is used to
5346 + // synchronize with the card so it can scribble on the memory
5347 + // that contained 0xCAFE from the "CardUp" step above
5348 + if (UcodeSel == SXG_UCODE_SAHARA) {
5349 + WRITE_REG(adapter->UcodeRegs[0].LoadSync, 0, FLUSH);
5350 + }
5351 +
5352 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XDnldUcd",
5353 + adapter, 0, 0, 0);
5354 + DBG_ERROR("sxg: %s EXIT\n", __FUNCTION__);
5355 +
5356 + return (TRUE);
5357 +}
5358 +
5359 +/*
5360 + * sxg_allocate_resources - Allocate memory and locks
5361 + *
5362 + * Arguments -
5363 + * adapter - A pointer to our adapter structure
5364 + *
5365 + * Return
5366 + * int
5367 + */
5368 +static int sxg_allocate_resources(p_adapter_t adapter)
5369 +{
5370 + int status;
5371 + u32 i;
5372 + u32 RssIds, IsrCount;
5373 +// PSXG_XMT_RING XmtRing;
5374 +// PSXG_RCV_RING RcvRing;
5375 +
5376 + DBG_ERROR("%s ENTER\n", __FUNCTION__);
5377 +
5378 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AllocRes",
5379 + adapter, 0, 0, 0);
5380 +
5381 + // Windows tells us how many CPUs it plans to use for
5382 + // RSS
5383 + RssIds = SXG_RSS_CPU_COUNT(adapter);
5384 + IsrCount = adapter->MsiEnabled ? RssIds : 1;
5385 +
5386 + DBG_ERROR("%s Setup the spinlocks\n", __FUNCTION__);
5387 +
5388 + // Allocate spinlocks and initialize listheads first.
5389 + spin_lock_init(&adapter->RcvQLock);
5390 + spin_lock_init(&adapter->SglQLock);
5391 + spin_lock_init(&adapter->XmtZeroLock);
5392 + spin_lock_init(&adapter->Bit64RegLock);
5393 + spin_lock_init(&adapter->AdapterLock);
5394 +
5395 + DBG_ERROR("%s Setup the lists\n", __FUNCTION__);
5396 +
5397 + InitializeListHead(&adapter->FreeRcvBuffers);
5398 + InitializeListHead(&adapter->FreeRcvBlocks);
5399 + InitializeListHead(&adapter->AllRcvBlocks);
5400 + InitializeListHead(&adapter->FreeSglBuffers);
5401 + InitializeListHead(&adapter->AllSglBuffers);
5402 +
5403 + // Mark these basic allocations done. This flags essentially
5404 + // tells the SxgFreeResources routine that it can grab spinlocks
5405 + // and reference listheads.
5406 + adapter->BasicAllocations = TRUE;
5407 + // Main allocation loop. Start with the maximum supported by
5408 + // the microcode and back off if memory allocation
5409 + // fails. If we hit a minimum, fail.
5410 +
5411 + for (;;) {
5412 + DBG_ERROR("%s Allocate XmtRings size[%x]\n", __FUNCTION__,
5413 + (sizeof(SXG_XMT_RING) * 1));
5414 +
5415 + // Start with big items first - receive and transmit rings. At the moment
5416 + // I'm going to keep the ring size fixed and adjust the number of
5417 + // TCBs if we fail. Later we might consider reducing the ring size as well..
5418 + adapter->XmtRings = pci_alloc_consistent(adapter->pcidev,
5419 + sizeof(SXG_XMT_RING) *
5420 + 1,
5421 + &adapter->PXmtRings);
5422 + DBG_ERROR("%s XmtRings[%p]\n", __FUNCTION__, adapter->XmtRings);
5423 +
5424 + if (!adapter->XmtRings) {
5425 + goto per_tcb_allocation_failed;
5426 + }
5427 + memset(adapter->XmtRings, 0, sizeof(SXG_XMT_RING) * 1);
5428 +
5429 + DBG_ERROR("%s Allocate RcvRings size[%x]\n", __FUNCTION__,
5430 + (sizeof(SXG_RCV_RING) * 1));
5431 + adapter->RcvRings =
5432 + pci_alloc_consistent(adapter->pcidev,
5433 + sizeof(SXG_RCV_RING) * 1,
5434 + &adapter->PRcvRings);
5435 + DBG_ERROR("%s RcvRings[%p]\n", __FUNCTION__, adapter->RcvRings);
5436 + if (!adapter->RcvRings) {
5437 + goto per_tcb_allocation_failed;
5438 + }
5439 + memset(adapter->RcvRings, 0, sizeof(SXG_RCV_RING) * 1);
5440 + break;
5441 +
5442 + per_tcb_allocation_failed:
5443 + // an allocation failed. Free any successful allocations.
5444 + if (adapter->XmtRings) {
5445 + pci_free_consistent(adapter->pcidev,
5446 + sizeof(SXG_XMT_RING) * 4096,
5447 + adapter->XmtRings,
5448 + adapter->PXmtRings);
5449 + adapter->XmtRings = NULL;
5450 + }
5451 + if (adapter->RcvRings) {
5452 + pci_free_consistent(adapter->pcidev,
5453 + sizeof(SXG_RCV_RING) * 4096,
5454 + adapter->RcvRings,
5455 + adapter->PRcvRings);
5456 + adapter->RcvRings = NULL;
5457 + }
5458 + // Loop around and try again....
5459 + }
5460 +
5461 + DBG_ERROR("%s Initialize RCV ZERO and XMT ZERO rings\n", __FUNCTION__);
5462 + // Initialize rcv zero and xmt zero rings
5463 + SXG_INITIALIZE_RING(adapter->RcvRingZeroInfo, SXG_RCV_RING_SIZE);
5464 + SXG_INITIALIZE_RING(adapter->XmtRingZeroInfo, SXG_XMT_RING_SIZE);
5465 +
5466 + // Sanity check receive data structure format
5467 + ASSERT((adapter->ReceiveBufferSize == SXG_RCV_DATA_BUFFER_SIZE) ||
5468 + (adapter->ReceiveBufferSize == SXG_RCV_JUMBO_BUFFER_SIZE));
5469 + ASSERT(sizeof(SXG_RCV_DESCRIPTOR_BLOCK) ==
5470 + SXG_RCV_DESCRIPTOR_BLOCK_SIZE);
5471 +
5472 + // Allocate receive data buffers. We allocate a block of buffers and
5473 + // a corresponding descriptor block at once. See sxghw.h:SXG_RCV_BLOCK
5474 + for (i = 0; i < SXG_INITIAL_RCV_DATA_BUFFERS;
5475 + i += SXG_RCV_DESCRIPTORS_PER_BLOCK) {
5476 + sxg_allocate_buffer_memory(adapter,
5477 + SXG_RCV_BLOCK_SIZE(adapter->
5478 + ReceiveBufferSize),
5479 + SXG_BUFFER_TYPE_RCV);
5480 + }
5481 + // NBL resource allocation can fail in the 'AllocateComplete' routine, which
5482 + // doesn't return status. Make sure we got the number of buffers we requested
5483 + if (adapter->FreeRcvBufferCount < SXG_INITIAL_RCV_DATA_BUFFERS) {
5484 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAResF6",
5485 + adapter, adapter->FreeRcvBufferCount, SXG_MAX_ENTRIES,
5486 + 0);
5487 + return (STATUS_RESOURCES);
5488 + }
5489 +
5490 + DBG_ERROR("%s Allocate EventRings size[%x]\n", __FUNCTION__,
5491 + (sizeof(SXG_EVENT_RING) * RssIds));
5492 +
5493 + // Allocate event queues.
5494 + adapter->EventRings = pci_alloc_consistent(adapter->pcidev,
5495 + sizeof(SXG_EVENT_RING) *
5496 + RssIds,
5497 + &adapter->PEventRings);
5498 +
5499 + if (!adapter->EventRings) {
5500 + // Caller will call SxgFreeAdapter to clean up above allocations
5501 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAResF8",
5502 + adapter, SXG_MAX_ENTRIES, 0, 0);
5503 + status = STATUS_RESOURCES;
5504 + goto per_tcb_allocation_failed;
5505 + }
5506 + memset(adapter->EventRings, 0, sizeof(SXG_EVENT_RING) * RssIds);
5507 +
5508 + DBG_ERROR("%s Allocate ISR size[%x]\n", __FUNCTION__, IsrCount);
5509 + // Allocate ISR
5510 + adapter->Isr = pci_alloc_consistent(adapter->pcidev,
5511 + IsrCount, &adapter->PIsr);
5512 + if (!adapter->Isr) {
5513 + // Caller will call SxgFreeAdapter to clean up above allocations
5514 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAResF9",
5515 + adapter, SXG_MAX_ENTRIES, 0, 0);
5516 + status = STATUS_RESOURCES;
5517 + goto per_tcb_allocation_failed;
5518 + }
5519 + memset(adapter->Isr, 0, sizeof(u32) * IsrCount);
5520 +
5521 + DBG_ERROR("%s Allocate shared XMT ring zero index location size[%x]\n",
5522 + __FUNCTION__, sizeof(u32));
5523 +
5524 + // Allocate shared XMT ring zero index location
5525 + adapter->XmtRingZeroIndex = pci_alloc_consistent(adapter->pcidev,
5526 + sizeof(u32),
5527 + &adapter->
5528 + PXmtRingZeroIndex);
5529 + if (!adapter->XmtRingZeroIndex) {
5530 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAResF10",
5531 + adapter, SXG_MAX_ENTRIES, 0, 0);
5532 + status = STATUS_RESOURCES;
5533 + goto per_tcb_allocation_failed;
5534 + }
5535 + memset(adapter->XmtRingZeroIndex, 0, sizeof(u32));
5536 +
5537 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAlcResS",
5538 + adapter, SXG_MAX_ENTRIES, 0, 0);
5539 +
5540 + DBG_ERROR("%s EXIT\n", __FUNCTION__);
5541 + return (STATUS_SUCCESS);
5542 +}
5543 +
5544 +/*
5545 + * sxg_config_pci -
5546 + *
5547 + * Set up PCI Configuration space
5548 + *
5549 + * Arguments -
5550 + * pcidev - A pointer to our adapter structure
5551 + *
5552 + */
5553 +static void sxg_config_pci(struct pci_dev *pcidev)
5554 +{
5555 + u16 pci_command;
5556 + u16 new_command;
5557 +
5558 + pci_read_config_word(pcidev, PCI_COMMAND, &pci_command);
5559 + DBG_ERROR("sxg: %s PCI command[%4.4x]\n", __FUNCTION__, pci_command);
5560 + // Set the command register
5561 + new_command = pci_command | (PCI_COMMAND_MEMORY | // Memory Space Enable
5562 + PCI_COMMAND_MASTER | // Bus master enable
5563 + PCI_COMMAND_INVALIDATE | // Memory write and invalidate
5564 + PCI_COMMAND_PARITY | // Parity error response
5565 + PCI_COMMAND_SERR | // System ERR
5566 + PCI_COMMAND_FAST_BACK); // Fast back-to-back
5567 + if (pci_command != new_command) {
5568 + DBG_ERROR("%s -- Updating PCI COMMAND register %4.4x->%4.4x.\n",
5569 + __FUNCTION__, pci_command, new_command);
5570 + pci_write_config_word(pcidev, PCI_COMMAND, new_command);
5571 + }
5572 +}
5573 +
5574 +static int sxg_entry_probe(struct pci_dev *pcidev,
5575 + const struct pci_device_id *pci_tbl_entry)
5576 +{
5577 + static int did_version = 0;
5578 + int err;
5579 + struct net_device *netdev;
5580 + p_adapter_t adapter;
5581 + void __iomem *memmapped_ioaddr;
5582 + u32 status = 0;
5583 + ulong mmio_start = 0;
5584 + ulong mmio_len = 0;
5585 +
5586 + DBG_ERROR("sxg: %s 2.6 VERSION ENTER jiffies[%lx] cpu %d\n",
5587 + __FUNCTION__, jiffies, smp_processor_id());
5588 +
5589 + // Initialize trace buffer
5590 +#ifdef ATKDBG
5591 + SxgTraceBuffer = &LSxgTraceBuffer;
5592 + SXG_TRACE_INIT(SxgTraceBuffer, TRACE_NOISY);
5593 +#endif
5594 +
5595 + sxg_global.dynamic_intagg = dynamic_intagg;
5596 +
5597 + err = pci_enable_device(pcidev);
5598 +
5599 + DBG_ERROR("Call pci_enable_device(%p) status[%x]\n", pcidev, err);
5600 + if (err) {
5601 + return err;
5602 + }
5603 +
5604 + if (sxg_debug > 0 && did_version++ == 0) {
5605 + printk(KERN_INFO "%s\n", sxg_banner);
5606 + printk(KERN_INFO "%s\n", DRV_VERSION);
5607 + }
5608 +
5609 + if (!(err = pci_set_dma_mask(pcidev, DMA_64BIT_MASK))) {
5610 + DBG_ERROR("pci_set_dma_mask(DMA_64BIT_MASK) successful\n");
5611 + } else {
5612 + if ((err = pci_set_dma_mask(pcidev, DMA_32BIT_MASK))) {
5613 + DBG_ERROR
5614 + ("No usable DMA configuration, aborting err[%x]\n",
5615 + err);
5616 + return err;
5617 + }
5618 + DBG_ERROR("pci_set_dma_mask(DMA_32BIT_MASK) successful\n");
5619 + }
5620 +
5621 + DBG_ERROR("Call pci_request_regions\n");
5622 +
5623 + err = pci_request_regions(pcidev, DRV_NAME);
5624 + if (err) {
5625 + DBG_ERROR("pci_request_regions FAILED err[%x]\n", err);
5626 + return err;
5627 + }
5628 +
5629 + DBG_ERROR("call pci_set_master\n");
5630 + pci_set_master(pcidev);
5631 +
5632 + DBG_ERROR("call alloc_etherdev\n");
5633 + netdev = alloc_etherdev(sizeof(adapter_t));
5634 + if (!netdev) {
5635 + err = -ENOMEM;
5636 + goto err_out_exit_sxg_probe;
5637 + }
5638 + DBG_ERROR("alloc_etherdev for slic netdev[%p]\n", netdev);
5639 +
5640 + SET_NETDEV_DEV(netdev, &pcidev->dev);
5641 +
5642 + pci_set_drvdata(pcidev, netdev);
5643 + adapter = netdev_priv(netdev);
5644 + adapter->netdev = netdev;
5645 + adapter->pcidev = pcidev;
5646 +
5647 + mmio_start = pci_resource_start(pcidev, 0);
5648 + mmio_len = pci_resource_len(pcidev, 0);
5649 +
5650 + DBG_ERROR("sxg: call ioremap(mmio_start[%lx], mmio_len[%lx])\n",
5651 + mmio_start, mmio_len);
5652 +
5653 + memmapped_ioaddr = ioremap(mmio_start, mmio_len);
5654 + DBG_ERROR("sxg: %s MEMMAPPED_IOADDR [%p]\n", __FUNCTION__, memmapped_ioaddr);
5655 + if (!memmapped_ioaddr) {
5656 + DBG_ERROR("%s cannot remap MMIO region %lx @ %lx\n",
5657 + __FUNCTION__, mmio_len, mmio_start);
5658 + goto err_out_free_mmio_region;
5659 + }
5660 +
5661 + DBG_ERROR("sxg: %s found Alacritech SXG PCI, MMIO at %p, start[%lx] len[%lx], IRQ %d.\n",
5662 + __func__, memmapped_ioaddr, mmio_start, mmio_len, pcidev->irq);
5663 +
5664 + adapter->HwRegs = (void *) memmapped_ioaddr;
5665 + adapter->base_addr = memmapped_ioaddr;
5666 +
5667 + mmio_start = pci_resource_start(pcidev, 2);
5668 + mmio_len = pci_resource_len(pcidev, 2);
5669 +
5670 + DBG_ERROR("sxg: call ioremap(mmio_start[%lx], mmio_len[%lx])\n",
5671 + mmio_start, mmio_len);
5672 +
5673 + memmapped_ioaddr = ioremap(mmio_start, mmio_len);
5674 + DBG_ERROR("sxg: %s MEMMAPPED_IOADDR [%p]\n", __func__, memmapped_ioaddr);
5675 + if (!memmapped_ioaddr) {
5676 + DBG_ERROR("%s cannot remap MMIO region %lx @ %lx\n",
5677 + __FUNCTION__, mmio_len, mmio_start);
5678 + goto err_out_free_mmio_region;
5679 + }
5680 +
5681 + DBG_ERROR("sxg: %s found Alacritech SXG PCI, MMIO at %p, "
5682 + "start[%lx] len[%lx], IRQ %d.\n", __func__,
5683 + memmapped_ioaddr, mmio_start, mmio_len, pcidev->irq);
5684 +
5685 + adapter->UcodeRegs = (void *)memmapped_ioaddr;
5686 +
5687 + adapter->State = SXG_STATE_INITIALIZING;
5688 + // Maintain a list of all adapters anchored by
5689 + // the global SxgDriver structure.
5690 + adapter->Next = SxgDriver.Adapters;
5691 + SxgDriver.Adapters = adapter;
5692 + adapter->AdapterID = ++SxgDriver.AdapterID;
5693 +
5694 + // Initialize CRC table used to determine multicast hash
5695 + sxg_mcast_init_crc32();
5696 +
5697 + adapter->JumboEnabled = FALSE;
5698 + adapter->RssEnabled = FALSE;
5699 + if (adapter->JumboEnabled) {
5700 + adapter->FrameSize = JUMBOMAXFRAME;
5701 + adapter->ReceiveBufferSize = SXG_RCV_JUMBO_BUFFER_SIZE;
5702 + } else {
5703 + adapter->FrameSize = ETHERMAXFRAME;
5704 + adapter->ReceiveBufferSize = SXG_RCV_DATA_BUFFER_SIZE;
5705 + }
5706 +
5707 +// status = SXG_READ_EEPROM(adapter);
5708 +// if (!status) {
5709 +// goto sxg_init_bad;
5710 +// }
5711 +
5712 + DBG_ERROR("sxg: %s ENTER sxg_config_pci\n", __FUNCTION__);
5713 + sxg_config_pci(pcidev);
5714 + DBG_ERROR("sxg: %s EXIT sxg_config_pci\n", __FUNCTION__);
5715 +
5716 + DBG_ERROR("sxg: %s ENTER sxg_init_driver\n", __FUNCTION__);
5717 + sxg_init_driver();
5718 + DBG_ERROR("sxg: %s EXIT sxg_init_driver\n", __FUNCTION__);
5719 +
5720 + adapter->vendid = pci_tbl_entry->vendor;
5721 + adapter->devid = pci_tbl_entry->device;
5722 + adapter->subsysid = pci_tbl_entry->subdevice;
5723 + adapter->busnumber = pcidev->bus->number;
5724 + adapter->slotnumber = ((pcidev->devfn >> 3) & 0x1F);
5725 + adapter->functionnumber = (pcidev->devfn & 0x7);
5726 + adapter->memorylength = pci_resource_len(pcidev, 0);
5727 + adapter->irq = pcidev->irq;
5728 + adapter->next_netdevice = head_netdevice;
5729 + head_netdevice = netdev;
5730 +// adapter->chipid = chip_idx;
5731 + adapter->port = 0; //adapter->functionnumber;
5732 + adapter->cardindex = adapter->port;
5733 +
5734 + // Allocate memory and other resources
5735 + DBG_ERROR("sxg: %s ENTER sxg_allocate_resources\n", __FUNCTION__);
5736 + status = sxg_allocate_resources(adapter);
5737 + DBG_ERROR("sxg: %s EXIT sxg_allocate_resources status %x\n",
5738 + __FUNCTION__, status);
5739 + if (status != STATUS_SUCCESS) {
5740 + goto err_out_unmap;
5741 + }
5742 +
5743 + DBG_ERROR("sxg: %s ENTER sxg_download_microcode\n", __FUNCTION__);
5744 + if (sxg_download_microcode(adapter, SXG_UCODE_SAHARA)) {
5745 + DBG_ERROR("sxg: %s ENTER sxg_adapter_set_hwaddr\n",
5746 + __FUNCTION__);
5747 + sxg_adapter_set_hwaddr(adapter);
5748 + } else {
5749 + adapter->state = ADAPT_FAIL;
5750 + adapter->linkstate = LINK_DOWN;
5751 + DBG_ERROR("sxg_download_microcode FAILED status[%x]\n", status);
5752 + }
5753 +
5754 + netdev->base_addr = (unsigned long)adapter->base_addr;
5755 + netdev->irq = adapter->irq;
5756 + netdev->open = sxg_entry_open;
5757 + netdev->stop = sxg_entry_halt;
5758 + netdev->hard_start_xmit = sxg_send_packets;
5759 + netdev->do_ioctl = sxg_ioctl;
5760 +#if XXXTODO
5761 + netdev->set_mac_address = sxg_mac_set_address;
5762 +#if SLIC_GET_STATS_ENABLED
5763 + netdev->get_stats = sxg_get_stats;
5764 +#endif
5765 + netdev->set_multicast_list = sxg_mcast_set_list;
5766 +#endif
5767 +
5768 + strcpy(netdev->name, "eth%d");
5769 +// strcpy(netdev->name, pci_name(pcidev));
5770 + if ((err = register_netdev(netdev))) {
5771 + DBG_ERROR("Cannot register net device, aborting. %s\n",
5772 + netdev->name);
5773 + goto err_out_unmap;
5774 + }
5775 +
5776 + DBG_ERROR
5777 + ("sxg: %s addr 0x%lx, irq %d, MAC addr %02X:%02X:%02X:%02X:%02X:%02X\n",
5778 + netdev->name, netdev->base_addr, pcidev->irq, netdev->dev_addr[0],
5779 + netdev->dev_addr[1], netdev->dev_addr[2], netdev->dev_addr[3],
5780 + netdev->dev_addr[4], netdev->dev_addr[5]);
5781 +
5782 +//sxg_init_bad:
5783 + ASSERT(status == FALSE);
5784 +// sxg_free_adapter(adapter);
5785 +
5786 + DBG_ERROR("sxg: %s EXIT status[%x] jiffies[%lx] cpu %d\n", __FUNCTION__,
5787 + status, jiffies, smp_processor_id());
5788 + return status;
5789 +
5790 + err_out_unmap:
5791 + iounmap((void *)memmapped_ioaddr);
5792 +
5793 + err_out_free_mmio_region:
5794 + release_mem_region(mmio_start, mmio_len);
5795 +
5796 + err_out_exit_sxg_probe:
5797 +
5798 + DBG_ERROR("%s EXIT jiffies[%lx] cpu %d\n", __FUNCTION__, jiffies,
5799 + smp_processor_id());
5800 +
5801 + return -ENODEV;
5802 +}
5803 +
5804 +
5805 +/***********************************************************************
5806 + * LINE BASE Interrupt routines..
5807 + ***********************************************************************/
5808 +/*
5809 + *
5810 + * sxg_disable_interrupt
5811 + *
5812 + * DisableInterrupt Handler
5813 + *
5814 + * Arguments:
5815 + *
5816 + * adapter: Our adapter structure
5817 + *
5818 + * Return Value:
5819 + * None.
5820 + */
5821 +static void sxg_disable_interrupt(p_adapter_t adapter)
5822 +{
5823 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DisIntr",
5824 + adapter, adapter->InterruptsEnabled, 0, 0);
5825 + // For now, RSS is disabled with line based interrupts
5826 + ASSERT(adapter->RssEnabled == FALSE);
5827 + ASSERT(adapter->MsiEnabled == FALSE);
5828 + //
5829 + // Turn off interrupts by writing to the icr register.
5830 + //
5831 + WRITE_REG(adapter->UcodeRegs[0].Icr, SXG_ICR(0, SXG_ICR_DISABLE), TRUE);
5832 +
5833 + adapter->InterruptsEnabled = 0;
5834 +
5835 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XDisIntr",
5836 + adapter, adapter->InterruptsEnabled, 0, 0);
5837 +}
5838 +
5839 +/*
5840 + *
5841 + * sxg_enable_interrupt
5842 + *
5843 + * EnableInterrupt Handler
5844 + *
5845 + * Arguments:
5846 + *
5847 + * adapter: Our adapter structure
5848 + *
5849 + * Return Value:
5850 + * None.
5851 + */
5852 +static void sxg_enable_interrupt(p_adapter_t adapter)
5853 +{
5854 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "EnIntr",
5855 + adapter, adapter->InterruptsEnabled, 0, 0);
5856 + // For now, RSS is disabled with line based interrupts
5857 + ASSERT(adapter->RssEnabled == FALSE);
5858 + ASSERT(adapter->MsiEnabled == FALSE);
5859 + //
5860 + // Turn on interrupts by writing to the icr register.
5861 + //
5862 + WRITE_REG(adapter->UcodeRegs[0].Icr, SXG_ICR(0, SXG_ICR_ENABLE), TRUE);
5863 +
5864 + adapter->InterruptsEnabled = 1;
5865 +
5866 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XEnIntr",
5867 + adapter, 0, 0, 0);
5868 +}
5869 +
5870 +/*
5871 + *
5872 + * sxg_isr - Process an line-based interrupt
5873 + *
5874 + * Arguments:
5875 + * Context - Our adapter structure
5876 + * QueueDefault - Output parameter to queue to default CPU
5877 + * TargetCpus - Output bitmap to schedule DPC's
5878 + *
5879 + * Return Value:
5880 + * TRUE if our interrupt
5881 + */
5882 +static irqreturn_t sxg_isr(int irq, void *dev_id)
5883 +{
5884 + p_net_device dev = (p_net_device) dev_id;
5885 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
5886 +// u32 CpuMask = 0, i;
5887 +
5888 + adapter->Stats.NumInts++;
5889 + if (adapter->Isr[0] == 0) {
5890 + // The SLIC driver used to experience a number of spurious interrupts
5891 + // due to the delay associated with the masking of the interrupt
5892 + // (we'd bounce back in here). If we see that again with Sahara,
5893 + // add a READ_REG of the Icr register after the WRITE_REG below.
5894 + adapter->Stats.FalseInts++;
5895 + return IRQ_NONE;
5896 + }
5897 + //
5898 + // Move the Isr contents and clear the value in
5899 + // shared memory, and mask interrupts
5900 + //
5901 + adapter->IsrCopy[0] = adapter->Isr[0];
5902 + adapter->Isr[0] = 0;
5903 + WRITE_REG(adapter->UcodeRegs[0].Icr, SXG_ICR(0, SXG_ICR_MASK), TRUE);
5904 +// ASSERT(adapter->IsrDpcsPending == 0);
5905 +#if XXXTODO // RSS Stuff
5906 + // If RSS is enabled and the ISR specifies
5907 + // SXG_ISR_EVENT, then schedule DPC's
5908 + // based on event queues.
5909 + if (adapter->RssEnabled && (adapter->IsrCopy[0] & SXG_ISR_EVENT)) {
5910 + for (i = 0;
5911 + i < adapter->RssSystemInfo->ProcessorInfo.RssCpuCount;
5912 + i++) {
5913 + PSXG_EVENT_RING EventRing = &adapter->EventRings[i];
5914 + PSXG_EVENT Event =
5915 + &EventRing->Ring[adapter->NextEvent[i]];
5916 + unsigned char Cpu = adapter->RssSystemInfo->RssIdToCpu[i];
5917 + if (Event->Status & EVENT_STATUS_VALID) {
5918 + adapter->IsrDpcsPending++;
5919 + CpuMask |= (1 << Cpu);
5920 + }
5921 + }
5922 + }
5923 + // Now, either schedule the CPUs specified by the CpuMask,
5924 + // or queue default
5925 + if (CpuMask) {
5926 + *QueueDefault = FALSE;
5927 + } else {
5928 + adapter->IsrDpcsPending = 1;
5929 + *QueueDefault = TRUE;
5930 + }
5931 + *TargetCpus = CpuMask;
5932 +#endif
5933 + //
5934 + // There are no DPCs in Linux, so call the handler now
5935 + //
5936 + sxg_handle_interrupt(adapter);
5937 +
5938 + return IRQ_HANDLED;
5939 +}
5940 +
5941 +static void sxg_handle_interrupt(p_adapter_t adapter)
5942 +{
5943 +// unsigned char RssId = 0;
5944 + u32 NewIsr;
5945 +
5946 + if (adapter->Stats.RcvNoBuffer < 5) {
5947 + DBG_ERROR("Enter sxg_handle_interrupt ISR[%x]\n",
5948 + adapter->IsrCopy[0]);
5949 + }
5950 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "HndlIntr",
5951 + adapter, adapter->IsrCopy[0], 0, 0);
5952 + // For now, RSS is disabled with line based interrupts
5953 + ASSERT(adapter->RssEnabled == FALSE);
5954 + ASSERT(adapter->MsiEnabled == FALSE);
5955 + ASSERT(adapter->IsrCopy[0]);
5956 +/////////////////////////////
5957 +
5958 + // Always process the event queue.
5959 + sxg_process_event_queue(adapter,
5960 + (adapter->RssEnabled ? /*RssId */ 0 : 0));
5961 +
5962 +#if XXXTODO // RSS stuff
5963 + if (--adapter->IsrDpcsPending) {
5964 + // We're done.
5965 + ASSERT(adapter->RssEnabled);
5966 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DPCsPend",
5967 + adapter, 0, 0, 0);
5968 + return;
5969 + }
5970 +#endif
5971 + //
5972 + // Last (or only) DPC processes the ISR and clears the interrupt.
5973 + //
5974 + NewIsr = sxg_process_isr(adapter, 0);
5975 + //
5976 + // Reenable interrupts
5977 + //
5978 + adapter->IsrCopy[0] = 0;
5979 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "ClearIsr",
5980 + adapter, NewIsr, 0, 0);
5981 +
5982 + if (adapter->Stats.RcvNoBuffer < 5) {
5983 + DBG_ERROR
5984 + ("Exit sxg_handle_interrupt2 after enabling interrupt\n");
5985 + }
5986 +
5987 + WRITE_REG(adapter->UcodeRegs[0].Isr, NewIsr, TRUE);
5988 +
5989 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XHndlInt",
5990 + adapter, 0, 0, 0);
5991 +}
5992 +
5993 +/*
5994 + *
5995 + * sxg_process_isr - Process an interrupt. Called from the line-based and
5996 + * message based interrupt DPC routines
5997 + *
5998 + * Arguments:
5999 + * adapter - Our adapter structure
6000 + * Queue - The ISR that needs processing
6001 + *
6002 + * Return Value:
6003 + * None
6004 + */
6005 +static int sxg_process_isr(p_adapter_t adapter, u32 MessageId)
6006 +{
6007 + u32 Isr = adapter->IsrCopy[MessageId];
6008 + u32 NewIsr = 0;
6009 +
6010 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "ProcIsr",
6011 + adapter, Isr, 0, 0);
6012 +
6013 + // Error
6014 + if (Isr & SXG_ISR_ERR) {
6015 + if (Isr & SXG_ISR_PDQF) {
6016 + adapter->Stats.PdqFull++;
6017 + DBG_ERROR("%s: SXG_ISR_ERR PDQF!!\n", __FUNCTION__);
6018 + }
6019 + // No host buffer
6020 + if (Isr & SXG_ISR_RMISS) {
6021 + // There is a bunch of code in the SLIC driver which
6022 + // attempts to process more receive events per DPC
6023 + // if we start to fall behind. We'll probably
6024 + // need to do something similar here, but hold
6025 + // off for now. I don't want to make the code more
6026 + // complicated than strictly needed.
6027 + adapter->Stats.RcvNoBuffer++;
6028 + if (adapter->Stats.RcvNoBuffer < 5) {
6029 + DBG_ERROR("%s: SXG_ISR_ERR RMISS!!\n",
6030 + __FUNCTION__);
6031 + }
6032 + }
6033 + // Card crash
6034 + if (Isr & SXG_ISR_DEAD) {
6035 + // Set aside the crash info and set the adapter state to RESET
6036 + adapter->CrashCpu =
6037 + (unsigned char) ((Isr & SXG_ISR_CPU) >> SXG_ISR_CPU_SHIFT);
6038 + adapter->CrashLocation = (ushort) (Isr & SXG_ISR_CRASH);
6039 + adapter->Dead = TRUE;
6040 + DBG_ERROR("%s: ISR_DEAD %x, CPU: %d\n", __FUNCTION__,
6041 + adapter->CrashLocation, adapter->CrashCpu);
6042 + }
6043 + // Event ring full
6044 + if (Isr & SXG_ISR_ERFULL) {
6045 + // Same issue as RMISS, really. This means the
6046 + // host is falling behind the card. Need to increase
6047 + // event ring size, process more events per interrupt,
6048 + // and/or reduce/remove interrupt aggregation.
6049 + adapter->Stats.EventRingFull++;
6050 + DBG_ERROR("%s: SXG_ISR_ERR EVENT RING FULL!!\n",
6051 + __FUNCTION__);
6052 + }
6053 + // Transmit drop - no DRAM buffers or XMT error
6054 + if (Isr & SXG_ISR_XDROP) {
6055 + adapter->Stats.XmtDrops++;
6056 + adapter->Stats.XmtErrors++;
6057 + DBG_ERROR("%s: SXG_ISR_ERR XDROP!!\n", __FUNCTION__);
6058 + }
6059 + }
6060 + // Slowpath send completions
6061 + if (Isr & SXG_ISR_SPSEND) {
6062 + sxg_complete_slow_send(adapter);
6063 + }
6064 + // Dump
6065 + if (Isr & SXG_ISR_UPC) {
6066 + ASSERT(adapter->DumpCmdRunning); // Maybe change when debug is added..
6067 + adapter->DumpCmdRunning = FALSE;
6068 + }
6069 + // Link event
6070 + if (Isr & SXG_ISR_LINK) {
6071 + sxg_link_event(adapter);
6072 + }
6073 + // Debug - breakpoint hit
6074 + if (Isr & SXG_ISR_BREAK) {
6075 + // At the moment AGDB isn't written to support interactive
6076 + // debug sessions. When it is, this interrupt will be used
6077 + // to signal AGDB that it has hit a breakpoint. For now, ASSERT.
6078 + ASSERT(0);
6079 + }
6080 + // Heartbeat response
6081 + if (Isr & SXG_ISR_PING) {
6082 + adapter->PingOutstanding = FALSE;
6083 + }
6084 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XProcIsr",
6085 + adapter, Isr, NewIsr, 0);
6086 +
6087 + return (NewIsr);
6088 +}
6089 +
6090 +/*
6091 + *
6092 + * sxg_process_event_queue - Process our event queue
6093 + *
6094 + * Arguments:
6095 + * - adapter - Adapter structure
6096 + * - RssId - The event queue requiring processing
6097 + *
6098 + * Return Value:
6099 + * None.
6100 + */
6101 +static u32 sxg_process_event_queue(p_adapter_t adapter, u32 RssId)
6102 +{
6103 + PSXG_EVENT_RING EventRing = &adapter->EventRings[RssId];
6104 + PSXG_EVENT Event = &EventRing->Ring[adapter->NextEvent[RssId]];
6105 + u32 EventsProcessed = 0, Batches = 0;
6106 + u32 num_skbs = 0;
6107 + struct sk_buff *skb;
6108 +#ifdef LINUX_HANDLES_RCV_INDICATION_LISTS
6109 + struct sk_buff *prev_skb = NULL;
6110 + struct sk_buff *IndicationList[SXG_RCV_ARRAYSIZE];
6111 + u32 Index;
6112 + PSXG_RCV_DATA_BUFFER_HDR RcvDataBufferHdr;
6113 +#endif
6114 + u32 ReturnStatus = 0;
6115 +
6116 + ASSERT((adapter->State == SXG_STATE_RUNNING) ||
6117 + (adapter->State == SXG_STATE_PAUSING) ||
6118 + (adapter->State == SXG_STATE_PAUSED) ||
6119 + (adapter->State == SXG_STATE_HALTING));
6120 + // We may still have unprocessed events on the queue if
6121 + // the card crashed. Don't process them.
6122 + if (adapter->Dead) {
6123 + return (0);
6124 + }
6125 + // In theory there should only be a single processor that
6126 + // accesses this queue, and only at interrupt-DPC time. So
6127 + // we shouldn't need a lock for any of this.
6128 + while (Event->Status & EVENT_STATUS_VALID) {
6129 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "Event",
6130 + Event, Event->Code, Event->Status,
6131 + adapter->NextEvent);
6132 + switch (Event->Code) {
6133 + case EVENT_CODE_BUFFERS:
6134 + ASSERT(!(Event->CommandIndex & 0xFF00)); // SXG_RING_INFO Head & Tail == unsigned char
6135 + //
6136 + sxg_complete_descriptor_blocks(adapter,
6137 + Event->CommandIndex);
6138 + //
6139 + break;
6140 + case EVENT_CODE_SLOWRCV:
6141 + --adapter->RcvBuffersOnCard;
6142 + if ((skb = sxg_slow_receive(adapter, Event))) {
6143 + u32 rx_bytes;
6144 +#ifdef LINUX_HANDLES_RCV_INDICATION_LISTS
6145 + // Add it to our indication list
6146 + SXG_ADD_RCV_PACKET(adapter, skb, prev_skb,
6147 + IndicationList, num_skbs);
6148 + // In Linux, we just pass up each skb to the protocol above at this point,
6149 + // there is no capability of an indication list.
6150 +#else
6151 +// CHECK skb_pull(skb, INIC_RCVBUF_HEADSIZE);
6152 + rx_bytes = Event->Length; // (rcvbuf->length & IRHDDR_FLEN_MSK);
6153 + skb_put(skb, rx_bytes);
6154 + adapter->stats.rx_packets++;
6155 + adapter->stats.rx_bytes += rx_bytes;
6156 +#if SXG_OFFLOAD_IP_CHECKSUM
6157 + skb->ip_summed = CHECKSUM_UNNECESSARY;
6158 +#endif
6159 + skb->dev = adapter->netdev;
6160 + skb->protocol = eth_type_trans(skb, skb->dev);
6161 + netif_rx(skb);
6162 +#endif
6163 + }
6164 + break;
6165 + default:
6166 + DBG_ERROR("%s: ERROR Invalid EventCode %d\n",
6167 + __FUNCTION__, Event->Code);
6168 +// ASSERT(0);
6169 + }
6170 + // See if we need to restock card receive buffers.
6171 + // There are two things to note here:
6172 + // First - This test is not SMP safe. The
6173 + // adapter->BuffersOnCard field is protected via atomic interlocked calls, but
6174 + // we do not protect it with respect to these tests. The only way to do that
6175 + // is with a lock, and I don't want to grab a lock every time we adjust the
6176 + // BuffersOnCard count. Instead, we allow the buffer replenishment to be off
6177 + // once in a while. The worst that can happen is the card is given one
6178 + // more-or-less descriptor block than the arbitrary value we've chosen.
6179 + // No big deal
6180 + // In short DO NOT ADD A LOCK HERE, OR WHERE RcvBuffersOnCard is adjusted.
6181 + // Second - We expect this test to rarely evaluate to true. We attempt to
6182 + // refill descriptor blocks as they are returned to us
6183 + // (sxg_complete_descriptor_blocks), so The only time this should evaluate
6184 + // to true is when sxg_complete_descriptor_blocks failed to allocate
6185 + // receive buffers.
6186 + if (adapter->RcvBuffersOnCard < SXG_RCV_DATA_BUFFERS) {
6187 + sxg_stock_rcv_buffers(adapter);
6188 + }
6189 + // It's more efficient to just set this to zero.
6190 + // But clearing the top bit saves potential debug info...
6191 + Event->Status &= ~EVENT_STATUS_VALID;
6192 + // Advanct to the next event
6193 + SXG_ADVANCE_INDEX(adapter->NextEvent[RssId], EVENT_RING_SIZE);
6194 + Event = &EventRing->Ring[adapter->NextEvent[RssId]];
6195 + EventsProcessed++;
6196 + if (EventsProcessed == EVENT_RING_BATCH) {
6197 + // Release a batch of events back to the card
6198 + WRITE_REG(adapter->UcodeRegs[RssId].EventRelease,
6199 + EVENT_RING_BATCH, FALSE);
6200 + EventsProcessed = 0;
6201 + // If we've processed our batch limit, break out of the
6202 + // loop and return SXG_ISR_EVENT to arrange for us to
6203 + // be called again
6204 + if (Batches++ == EVENT_BATCH_LIMIT) {
6205 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer,
6206 + TRACE_NOISY, "EvtLimit", Batches,
6207 + adapter->NextEvent, 0, 0);
6208 + ReturnStatus = SXG_ISR_EVENT;
6209 + break;
6210 + }
6211 + }
6212 + }
6213 +#ifdef LINUX_HANDLES_RCV_INDICATION_LISTS
6214 + //
6215 + // Indicate any received dumb-nic frames
6216 + //
6217 + SXG_INDICATE_PACKETS(adapter, IndicationList, num_skbs);
6218 +#endif
6219 + //
6220 + // Release events back to the card.
6221 + //
6222 + if (EventsProcessed) {
6223 + WRITE_REG(adapter->UcodeRegs[RssId].EventRelease,
6224 + EventsProcessed, FALSE);
6225 + }
6226 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XPrcEvnt",
6227 + Batches, EventsProcessed, adapter->NextEvent, num_skbs);
6228 +
6229 + return (ReturnStatus);
6230 +}
6231 +
6232 +/*
6233 + * sxg_complete_slow_send - Complete slowpath or dumb-nic sends
6234 + *
6235 + * Arguments -
6236 + * adapter - A pointer to our adapter structure
6237 +
6238 + * Return
6239 + * None
6240 + */
6241 +static void sxg_complete_slow_send(p_adapter_t adapter)
6242 +{
6243 + PSXG_XMT_RING XmtRing = &adapter->XmtRings[0];
6244 + PSXG_RING_INFO XmtRingInfo = &adapter->XmtRingZeroInfo;
6245 + u32 * ContextType;
6246 + PSXG_CMD XmtCmd;
6247 +
6248 + // NOTE - This lock is dropped and regrabbed in this loop.
6249 + // This means two different processors can both be running
6250 + // through this loop. Be *very* careful.
6251 + spin_lock(&adapter->XmtZeroLock);
6252 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "CmpSnds",
6253 + adapter, XmtRingInfo->Head, XmtRingInfo->Tail, 0);
6254 +
6255 + while (XmtRingInfo->Tail != *adapter->XmtRingZeroIndex) {
6256 + // Locate the current Cmd (ring descriptor entry), and
6257 + // associated SGL, and advance the tail
6258 + SXG_RETURN_CMD(XmtRing, XmtRingInfo, XmtCmd, ContextType);
6259 + ASSERT(ContextType);
6260 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "CmpSnd",
6261 + XmtRingInfo->Head, XmtRingInfo->Tail, XmtCmd, 0);
6262 + // Clear the SGL field.
6263 + XmtCmd->Sgl = 0;
6264 +
6265 + switch (*ContextType) {
6266 + case SXG_SGL_DUMB:
6267 + {
6268 + struct sk_buff *skb;
6269 + // Dumb-nic send. Command context is the dumb-nic SGL
6270 + skb = (struct sk_buff *)ContextType;
6271 + // Complete the send
6272 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer,
6273 + TRACE_IMPORTANT, "DmSndCmp", skb, 0,
6274 + 0, 0);
6275 + ASSERT(adapter->Stats.XmtQLen);
6276 + adapter->Stats.XmtQLen--; // within XmtZeroLock
6277 + adapter->Stats.XmtOk++;
6278 + // Now drop the lock and complete the send back to
6279 + // Microsoft. We need to drop the lock because
6280 + // Microsoft can come back with a chimney send, which
6281 + // results in a double trip in SxgTcpOuput
6282 + spin_unlock(&adapter->XmtZeroLock);
6283 + SXG_COMPLETE_DUMB_SEND(adapter, skb);
6284 + // and reacquire..
6285 + spin_lock(&adapter->XmtZeroLock);
6286 + }
6287 + break;
6288 + default:
6289 + ASSERT(0);
6290 + }
6291 + }
6292 + spin_unlock(&adapter->XmtZeroLock);
6293 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "CmpSnd",
6294 + adapter, XmtRingInfo->Head, XmtRingInfo->Tail, 0);
6295 +}
6296 +
6297 +/*
6298 + * sxg_slow_receive
6299 + *
6300 + * Arguments -
6301 + * adapter - A pointer to our adapter structure
6302 + * Event - Receive event
6303 + *
6304 + * Return
6305 + * skb
6306 + */
6307 +static struct sk_buff *sxg_slow_receive(p_adapter_t adapter, PSXG_EVENT Event)
6308 +{
6309 + PSXG_RCV_DATA_BUFFER_HDR RcvDataBufferHdr;
6310 + struct sk_buff *Packet;
6311 +
6312 + RcvDataBufferHdr = (PSXG_RCV_DATA_BUFFER_HDR) Event->HostHandle;
6313 + ASSERT(RcvDataBufferHdr);
6314 + ASSERT(RcvDataBufferHdr->State == SXG_BUFFER_ONCARD);
6315 + ASSERT(SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr) ==
6316 + RcvDataBufferHdr->VirtualAddress);
6317 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_IMPORTANT, "SlowRcv", Event,
6318 + RcvDataBufferHdr, RcvDataBufferHdr->State,
6319 + RcvDataBufferHdr->VirtualAddress);
6320 + // Drop rcv frames in non-running state
6321 + switch (adapter->State) {
6322 + case SXG_STATE_RUNNING:
6323 + break;
6324 + case SXG_STATE_PAUSING:
6325 + case SXG_STATE_PAUSED:
6326 + case SXG_STATE_HALTING:
6327 + goto drop;
6328 + default:
6329 + ASSERT(0);
6330 + goto drop;
6331 + }
6332 +
6333 + // Change buffer state to UPSTREAM
6334 + RcvDataBufferHdr->State = SXG_BUFFER_UPSTREAM;
6335 + if (Event->Status & EVENT_STATUS_RCVERR) {
6336 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "RcvError",
6337 + Event, Event->Status, Event->HostHandle, 0);
6338 + // XXXTODO - Remove this print later
6339 + DBG_ERROR("SXG: Receive error %x\n",
6340 + *(u32 *)
6341 + SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr));
6342 + sxg_process_rcv_error(adapter,
6343 + *(u32 *)
6344 + SXG_RECEIVE_DATA_LOCATION
6345 + (RcvDataBufferHdr));
6346 + goto drop;
6347 + }
6348 +#if XXXTODO // VLAN stuff
6349 + // If there's a VLAN tag, extract it and validate it
6350 + if (((p_ether_header) (SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr)))->
6351 + EtherType == ETHERTYPE_VLAN) {
6352 + if (SxgExtractVlanHeader(adapter, RcvDataBufferHdr, Event) !=
6353 + STATUS_SUCCESS) {
6354 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY,
6355 + "BadVlan", Event,
6356 + SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr),
6357 + Event->Length, 0);
6358 + goto drop;
6359 + }
6360 + }
6361 +#endif
6362 + //
6363 + // Dumb-nic frame. See if it passes our mac filter and update stats
6364 + //
6365 + if (!sxg_mac_filter(adapter,
6366 + (p_ether_header)
6367 + SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr),
6368 + Event->Length)) {
6369 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "RcvFiltr",
6370 + Event, SXG_RECEIVE_DATA_LOCATION(RcvDataBufferHdr),
6371 + Event->Length, 0);
6372 + goto drop;
6373 + }
6374 +
6375 + Packet = RcvDataBufferHdr->SxgDumbRcvPacket;
6376 +
6377 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_IMPORTANT, "DumbRcv",
6378 + RcvDataBufferHdr, Packet, Event->Length, 0);
6379 + //
6380 + // Lastly adjust the receive packet length.
6381 + //
6382 + SXG_ADJUST_RCV_PACKET(Packet, RcvDataBufferHdr, Event);
6383 +
6384 + return (Packet);
6385 +
6386 + drop:
6387 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DropRcv",
6388 + RcvDataBufferHdr, Event->Length, 0, 0);
6389 + adapter->Stats.RcvDiscards++;
6390 + spin_lock(&adapter->RcvQLock);
6391 + SXG_FREE_RCV_DATA_BUFFER(adapter, RcvDataBufferHdr);
6392 + spin_unlock(&adapter->RcvQLock);
6393 + return (NULL);
6394 +}
6395 +
6396 +/*
6397 + * sxg_process_rcv_error - process receive error and update
6398 + * stats
6399 + *
6400 + * Arguments:
6401 + * adapter - Adapter structure
6402 + * ErrorStatus - 4-byte receive error status
6403 + *
6404 + * Return Value:
6405 + * None
6406 + */
6407 +static void sxg_process_rcv_error(p_adapter_t adapter, u32 ErrorStatus)
6408 +{
6409 + u32 Error;
6410 +
6411 + adapter->Stats.RcvErrors++;
6412 +
6413 + if (ErrorStatus & SXG_RCV_STATUS_TRANSPORT_ERROR) {
6414 + Error = ErrorStatus & SXG_RCV_STATUS_TRANSPORT_MASK;
6415 + switch (Error) {
6416 + case SXG_RCV_STATUS_TRANSPORT_CSUM:
6417 + adapter->Stats.TransportCsum++;
6418 + break;
6419 + case SXG_RCV_STATUS_TRANSPORT_UFLOW:
6420 + adapter->Stats.TransportUflow++;
6421 + break;
6422 + case SXG_RCV_STATUS_TRANSPORT_HDRLEN:
6423 + adapter->Stats.TransportHdrLen++;
6424 + break;
6425 + }
6426 + }
6427 + if (ErrorStatus & SXG_RCV_STATUS_NETWORK_ERROR) {
6428 + Error = ErrorStatus & SXG_RCV_STATUS_NETWORK_MASK;
6429 + switch (Error) {
6430 + case SXG_RCV_STATUS_NETWORK_CSUM:
6431 + adapter->Stats.NetworkCsum++;
6432 + break;
6433 + case SXG_RCV_STATUS_NETWORK_UFLOW:
6434 + adapter->Stats.NetworkUflow++;
6435 + break;
6436 + case SXG_RCV_STATUS_NETWORK_HDRLEN:
6437 + adapter->Stats.NetworkHdrLen++;
6438 + break;
6439 + }
6440 + }
6441 + if (ErrorStatus & SXG_RCV_STATUS_PARITY) {
6442 + adapter->Stats.Parity++;
6443 + }
6444 + if (ErrorStatus & SXG_RCV_STATUS_LINK_ERROR) {
6445 + Error = ErrorStatus & SXG_RCV_STATUS_LINK_MASK;
6446 + switch (Error) {
6447 + case SXG_RCV_STATUS_LINK_PARITY:
6448 + adapter->Stats.LinkParity++;
6449 + break;
6450 + case SXG_RCV_STATUS_LINK_EARLY:
6451 + adapter->Stats.LinkEarly++;
6452 + break;
6453 + case SXG_RCV_STATUS_LINK_BUFOFLOW:
6454 + adapter->Stats.LinkBufOflow++;
6455 + break;
6456 + case SXG_RCV_STATUS_LINK_CODE:
6457 + adapter->Stats.LinkCode++;
6458 + break;
6459 + case SXG_RCV_STATUS_LINK_DRIBBLE:
6460 + adapter->Stats.LinkDribble++;
6461 + break;
6462 + case SXG_RCV_STATUS_LINK_CRC:
6463 + adapter->Stats.LinkCrc++;
6464 + break;
6465 + case SXG_RCV_STATUS_LINK_OFLOW:
6466 + adapter->Stats.LinkOflow++;
6467 + break;
6468 + case SXG_RCV_STATUS_LINK_UFLOW:
6469 + adapter->Stats.LinkUflow++;
6470 + break;
6471 + }
6472 + }
6473 +}
6474 +
6475 +/*
6476 + * sxg_mac_filter
6477 + *
6478 + * Arguments:
6479 + * adapter - Adapter structure
6480 + * pether - Ethernet header
6481 + * length - Frame length
6482 + *
6483 + * Return Value:
6484 + * TRUE if the frame is to be allowed
6485 + */
6486 +static bool sxg_mac_filter(p_adapter_t adapter, p_ether_header EtherHdr, ushort length)
6487 +{
6488 + bool EqualAddr;
6489 +
6490 + if (SXG_MULTICAST_PACKET(EtherHdr)) {
6491 + if (SXG_BROADCAST_PACKET(EtherHdr)) {
6492 + // broadcast
6493 + if (adapter->MacFilter & MAC_BCAST) {
6494 + adapter->Stats.DumbRcvBcastPkts++;
6495 + adapter->Stats.DumbRcvBcastBytes += length;
6496 + adapter->Stats.DumbRcvPkts++;
6497 + adapter->Stats.DumbRcvBytes += length;
6498 + return (TRUE);
6499 + }
6500 + } else {
6501 + // multicast
6502 + if (adapter->MacFilter & MAC_ALLMCAST) {
6503 + adapter->Stats.DumbRcvMcastPkts++;
6504 + adapter->Stats.DumbRcvMcastBytes += length;
6505 + adapter->Stats.DumbRcvPkts++;
6506 + adapter->Stats.DumbRcvBytes += length;
6507 + return (TRUE);
6508 + }
6509 + if (adapter->MacFilter & MAC_MCAST) {
6510 + PSXG_MULTICAST_ADDRESS MulticastAddrs =
6511 + adapter->MulticastAddrs;
6512 + while (MulticastAddrs) {
6513 + ETHER_EQ_ADDR(MulticastAddrs->Address,
6514 + EtherHdr->ether_dhost,
6515 + EqualAddr);
6516 + if (EqualAddr) {
6517 + adapter->Stats.
6518 + DumbRcvMcastPkts++;
6519 + adapter->Stats.
6520 + DumbRcvMcastBytes += length;
6521 + adapter->Stats.DumbRcvPkts++;
6522 + adapter->Stats.DumbRcvBytes +=
6523 + length;
6524 + return (TRUE);
6525 + }
6526 + MulticastAddrs = MulticastAddrs->Next;
6527 + }
6528 + }
6529 + }
6530 + } else if (adapter->MacFilter & MAC_DIRECTED) {
6531 + // Not broadcast or multicast. Must be directed at us or
6532 + // the card is in promiscuous mode. Either way, consider it
6533 + // ours if MAC_DIRECTED is set
6534 + adapter->Stats.DumbRcvUcastPkts++;
6535 + adapter->Stats.DumbRcvUcastBytes += length;
6536 + adapter->Stats.DumbRcvPkts++;
6537 + adapter->Stats.DumbRcvBytes += length;
6538 + return (TRUE);
6539 + }
6540 + if (adapter->MacFilter & MAC_PROMISC) {
6541 + // Whatever it is, keep it.
6542 + adapter->Stats.DumbRcvPkts++;
6543 + adapter->Stats.DumbRcvBytes += length;
6544 + return (TRUE);
6545 + }
6546 + adapter->Stats.RcvDiscards++;
6547 + return (FALSE);
6548 +}
6549 +
6550 +static int sxg_register_interrupt(p_adapter_t adapter)
6551 +{
6552 + if (!adapter->intrregistered) {
6553 + int retval;
6554 +
6555 + DBG_ERROR
6556 + ("sxg: %s AllocAdaptRsrcs adapter[%p] dev->irq[%x] %x\n",
6557 + __FUNCTION__, adapter, adapter->netdev->irq, NR_IRQS);
6558 +
6559 + spin_unlock_irqrestore(&sxg_global.driver_lock, sxg_global.flags);
6560 +
6561 + retval = request_irq(adapter->netdev->irq,
6562 + &sxg_isr,
6563 + IRQF_SHARED,
6564 + adapter->netdev->name, adapter->netdev);
6565 +
6566 + spin_lock_irqsave(&sxg_global.driver_lock, sxg_global.flags);
6567 +
6568 + if (retval) {
6569 + DBG_ERROR("sxg: request_irq (%s) FAILED [%x]\n",
6570 + adapter->netdev->name, retval);
6571 + return (retval);
6572 + }
6573 + adapter->intrregistered = 1;
6574 + adapter->IntRegistered = TRUE;
6575 + // Disable RSS with line-based interrupts
6576 + adapter->MsiEnabled = FALSE;
6577 + adapter->RssEnabled = FALSE;
6578 + DBG_ERROR("sxg: %s AllocAdaptRsrcs adapter[%p] dev->irq[%x]\n",
6579 + __FUNCTION__, adapter, adapter->netdev->irq);
6580 + }
6581 + return (STATUS_SUCCESS);
6582 +}
6583 +
6584 +static void sxg_deregister_interrupt(p_adapter_t adapter)
6585 +{
6586 + DBG_ERROR("sxg: %s ENTER adapter[%p]\n", __FUNCTION__, adapter);
6587 +#if XXXTODO
6588 + slic_init_cleanup(adapter);
6589 +#endif
6590 + memset(&adapter->stats, 0, sizeof(struct net_device_stats));
6591 + adapter->error_interrupts = 0;
6592 + adapter->rcv_interrupts = 0;
6593 + adapter->xmit_interrupts = 0;
6594 + adapter->linkevent_interrupts = 0;
6595 + adapter->upr_interrupts = 0;
6596 + adapter->num_isrs = 0;
6597 + adapter->xmit_completes = 0;
6598 + adapter->rcv_broadcasts = 0;
6599 + adapter->rcv_multicasts = 0;
6600 + adapter->rcv_unicasts = 0;
6601 + DBG_ERROR("sxg: %s EXIT\n", __FUNCTION__);
6602 +}
6603 +
6604 +/*
6605 + * sxg_if_init
6606 + *
6607 + * Perform initialization of our slic interface.
6608 + *
6609 + */
6610 +static int sxg_if_init(p_adapter_t adapter)
6611 +{
6612 + p_net_device dev = adapter->netdev;
6613 + int status = 0;
6614 +
6615 + DBG_ERROR("sxg: %s (%s) ENTER states[%d:%d:%d] flags[%x]\n",
6616 + __FUNCTION__, adapter->netdev->name,
6617 + adapter->queues_initialized, adapter->state,
6618 + adapter->linkstate, dev->flags);
6619 +
6620 + /* adapter should be down at this point */
6621 + if (adapter->state != ADAPT_DOWN) {
6622 + DBG_ERROR("sxg_if_init adapter->state != ADAPT_DOWN\n");
6623 + return (-EIO);
6624 + }
6625 + ASSERT(adapter->linkstate == LINK_DOWN);
6626 +
6627 + adapter->devflags_prev = dev->flags;
6628 + adapter->macopts = MAC_DIRECTED;
6629 + if (dev->flags) {
6630 + DBG_ERROR("sxg: %s (%s) Set MAC options: ", __FUNCTION__,
6631 + adapter->netdev->name);
6632 + if (dev->flags & IFF_BROADCAST) {
6633 + adapter->macopts |= MAC_BCAST;
6634 + DBG_ERROR("BCAST ");
6635 + }
6636 + if (dev->flags & IFF_PROMISC) {
6637 + adapter->macopts |= MAC_PROMISC;
6638 + DBG_ERROR("PROMISC ");
6639 + }
6640 + if (dev->flags & IFF_ALLMULTI) {
6641 + adapter->macopts |= MAC_ALLMCAST;
6642 + DBG_ERROR("ALL_MCAST ");
6643 + }
6644 + if (dev->flags & IFF_MULTICAST) {
6645 + adapter->macopts |= MAC_MCAST;
6646 + DBG_ERROR("MCAST ");
6647 + }
6648 + DBG_ERROR("\n");
6649 + }
6650 + status = sxg_register_interrupt(adapter);
6651 + if (status != STATUS_SUCCESS) {
6652 + DBG_ERROR("sxg_if_init: sxg_register_interrupt FAILED %x\n",
6653 + status);
6654 + sxg_deregister_interrupt(adapter);
6655 + return (status);
6656 + }
6657 +
6658 + adapter->state = ADAPT_UP;
6659 +
6660 + /*
6661 + * clear any pending events, then enable interrupts
6662 + */
6663 + DBG_ERROR("sxg: %s ENABLE interrupts(slic)\n", __FUNCTION__);
6664 +
6665 + return (STATUS_SUCCESS);
6666 +}
6667 +
6668 +static int sxg_entry_open(p_net_device dev)
6669 +{
6670 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
6671 + int status;
6672 +
6673 + ASSERT(adapter);
6674 + DBG_ERROR("sxg: %s adapter->activated[%d]\n", __FUNCTION__,
6675 + adapter->activated);
6676 + DBG_ERROR
6677 + ("sxg: %s (%s): [jiffies[%lx] cpu %d] dev[%p] adapt[%p] port[%d]\n",
6678 + __FUNCTION__, adapter->netdev->name, jiffies, smp_processor_id(),
6679 + adapter->netdev, adapter, adapter->port);
6680 +
6681 + netif_stop_queue(adapter->netdev);
6682 +
6683 + spin_lock_irqsave(&sxg_global.driver_lock, sxg_global.flags);
6684 + if (!adapter->activated) {
6685 + sxg_global.num_sxg_ports_active++;
6686 + adapter->activated = 1;
6687 + }
6688 +
6689 + // Initialize the adapter
6690 + DBG_ERROR("sxg: %s ENTER sxg_initialize_adapter\n", __FUNCTION__);
6691 + status = sxg_initialize_adapter(adapter);
6692 + DBG_ERROR("sxg: %s EXIT sxg_initialize_adapter status[%x]\n",
6693 + __FUNCTION__, status);
6694 +
6695 + if (status == STATUS_SUCCESS) {
6696 + DBG_ERROR("sxg: %s ENTER sxg_if_init\n", __FUNCTION__);
6697 + status = sxg_if_init(adapter);
6698 + DBG_ERROR("sxg: %s EXIT sxg_if_init status[%x]\n", __FUNCTION__,
6699 + status);
6700 + }
6701 +
6702 + if (status != STATUS_SUCCESS) {
6703 + if (adapter->activated) {
6704 + sxg_global.num_sxg_ports_active--;
6705 + adapter->activated = 0;
6706 + }
6707 + spin_unlock_irqrestore(&sxg_global.driver_lock,
6708 + sxg_global.flags);
6709 + return (status);
6710 + }
6711 + DBG_ERROR("sxg: %s ENABLE ALL INTERRUPTS\n", __FUNCTION__);
6712 +
6713 + // Enable interrupts
6714 + SXG_ENABLE_ALL_INTERRUPTS(adapter);
6715 +
6716 + DBG_ERROR("sxg: %s EXIT\n", __FUNCTION__);
6717 +
6718 + spin_unlock_irqrestore(&sxg_global.driver_lock, sxg_global.flags);
6719 + return STATUS_SUCCESS;
6720 +}
6721 +
6722 +static void __devexit sxg_entry_remove(struct pci_dev *pcidev)
6723 +{
6724 + p_net_device dev = pci_get_drvdata(pcidev);
6725 + u32 mmio_start = 0;
6726 + unsigned int mmio_len = 0;
6727 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
6728 +
6729 + ASSERT(adapter);
6730 + DBG_ERROR("sxg: %s ENTER dev[%p] adapter[%p]\n", __FUNCTION__, dev,
6731 + adapter);
6732 + sxg_deregister_interrupt(adapter);
6733 + sxg_unmap_mmio_space(adapter);
6734 + DBG_ERROR("sxg: %s unregister_netdev\n", __FUNCTION__);
6735 + unregister_netdev(dev);
6736 +
6737 + mmio_start = pci_resource_start(pcidev, 0);
6738 + mmio_len = pci_resource_len(pcidev, 0);
6739 +
6740 + DBG_ERROR("sxg: %s rel_region(0) start[%x] len[%x]\n", __FUNCTION__,
6741 + mmio_start, mmio_len);
6742 + release_mem_region(mmio_start, mmio_len);
6743 +
6744 + DBG_ERROR("sxg: %s iounmap dev->base_addr[%x]\n", __FUNCTION__,
6745 + (unsigned int) dev->base_addr);
6746 + iounmap((char *)dev->base_addr);
6747 +
6748 + DBG_ERROR("sxg: %s deallocate device\n", __FUNCTION__);
6749 + kfree(dev);
6750 + DBG_ERROR("sxg: %s EXIT\n", __FUNCTION__);
6751 +}
6752 +
6753 +static int sxg_entry_halt(p_net_device dev)
6754 +{
6755 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
6756 +
6757 + spin_lock_irqsave(&sxg_global.driver_lock, sxg_global.flags);
6758 + DBG_ERROR("sxg: %s (%s) ENTER\n", __FUNCTION__, dev->name);
6759 +
6760 + netif_stop_queue(adapter->netdev);
6761 + adapter->state = ADAPT_DOWN;
6762 + adapter->linkstate = LINK_DOWN;
6763 + adapter->devflags_prev = 0;
6764 + DBG_ERROR("sxg: %s (%s) set adapter[%p] state to ADAPT_DOWN(%d)\n",
6765 + __FUNCTION__, dev->name, adapter, adapter->state);
6766 +
6767 + DBG_ERROR("sxg: %s (%s) EXIT\n", __FUNCTION__, dev->name);
6768 + DBG_ERROR("sxg: %s EXIT\n", __FUNCTION__);
6769 + spin_unlock_irqrestore(&sxg_global.driver_lock, sxg_global.flags);
6770 + return (STATUS_SUCCESS);
6771 +}
6772 +
6773 +static int sxg_ioctl(p_net_device dev, struct ifreq *rq, int cmd)
6774 +{
6775 + ASSERT(rq);
6776 +// DBG_ERROR("sxg: %s cmd[%x] rq[%p] dev[%p]\n", __FUNCTION__, cmd, rq, dev);
6777 + switch (cmd) {
6778 + case SIOCSLICSETINTAGG:
6779 + {
6780 +// p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
6781 + u32 data[7];
6782 + u32 intagg;
6783 +
6784 + if (copy_from_user(data, rq->ifr_data, 28)) {
6785 + DBG_ERROR
6786 + ("copy_from_user FAILED getting initial params\n");
6787 + return -EFAULT;
6788 + }
6789 + intagg = data[0];
6790 + printk(KERN_EMERG
6791 + "%s: set interrupt aggregation to %d\n",
6792 + __FUNCTION__, intagg);
6793 + return 0;
6794 + }
6795 +
6796 + default:
6797 +// DBG_ERROR("sxg: %s UNSUPPORTED[%x]\n", __FUNCTION__, cmd);
6798 + return -EOPNOTSUPP;
6799 + }
6800 + return 0;
6801 +}
6802 +
6803 +#define NORMAL_ETHFRAME 0
6804 +
6805 +/*
6806 + *
6807 + * sxg_send_packets - Send a skb packet
6808 + *
6809 + * Arguments:
6810 + * skb - The packet to send
6811 + * dev - Our linux net device that refs our adapter
6812 + *
6813 + * Return:
6814 + * 0 regardless of outcome XXXTODO refer to e1000 driver
6815 + */
6816 +static int sxg_send_packets(struct sk_buff *skb, p_net_device dev)
6817 +{
6818 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
6819 + u32 status = STATUS_SUCCESS;
6820 +
6821 + DBG_ERROR("sxg: %s ENTER sxg_send_packets skb[%p]\n", __FUNCTION__,
6822 + skb);
6823 + // Check the adapter state
6824 + switch (adapter->State) {
6825 + case SXG_STATE_INITIALIZING:
6826 + case SXG_STATE_HALTED:
6827 + case SXG_STATE_SHUTDOWN:
6828 + ASSERT(0); // unexpected
6829 + // fall through
6830 + case SXG_STATE_RESETTING:
6831 + case SXG_STATE_SLEEP:
6832 + case SXG_STATE_BOOTDIAG:
6833 + case SXG_STATE_DIAG:
6834 + case SXG_STATE_HALTING:
6835 + status = STATUS_FAILURE;
6836 + break;
6837 + case SXG_STATE_RUNNING:
6838 + if (adapter->LinkState != SXG_LINK_UP) {
6839 + status = STATUS_FAILURE;
6840 + }
6841 + break;
6842 + default:
6843 + ASSERT(0);
6844 + status = STATUS_FAILURE;
6845 + }
6846 + if (status != STATUS_SUCCESS) {
6847 + goto xmit_fail;
6848 + }
6849 + // send a packet
6850 + status = sxg_transmit_packet(adapter, skb);
6851 + if (status == STATUS_SUCCESS) {
6852 + goto xmit_done;
6853 + }
6854 +
6855 + xmit_fail:
6856 + // reject & complete all the packets if they cant be sent
6857 + if (status != STATUS_SUCCESS) {
6858 +#if XXXTODO
6859 +// sxg_send_packets_fail(adapter, skb, status);
6860 +#else
6861 + SXG_DROP_DUMB_SEND(adapter, skb);
6862 + adapter->stats.tx_dropped++;
6863 +#endif
6864 + }
6865 + DBG_ERROR("sxg: %s EXIT sxg_send_packets status[%x]\n", __FUNCTION__,
6866 + status);
6867 +
6868 + xmit_done:
6869 + return 0;
6870 +}
6871 +
6872 +/*
6873 + * sxg_transmit_packet
6874 + *
6875 + * This function transmits a single packet.
6876 + *
6877 + * Arguments -
6878 + * adapter - Pointer to our adapter structure
6879 + * skb - The packet to be sent
6880 + *
6881 + * Return -
6882 + * STATUS of send
6883 + */
6884 +static int sxg_transmit_packet(p_adapter_t adapter, struct sk_buff *skb)
6885 +{
6886 + PSCATTER_GATHER_LIST pSgl;
6887 + PSXG_SCATTER_GATHER SxgSgl;
6888 + void * SglBuffer;
6889 + u32 SglBufferLength;
6890 +
6891 + // The vast majority of work is done in the shared
6892 + // sxg_dumb_sgl routine.
6893 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DumbSend",
6894 + adapter, skb, 0, 0);
6895 +
6896 + // Allocate a SGL buffer
6897 + SXG_GET_SGL_BUFFER(adapter, SxgSgl);
6898 + if (!SxgSgl) {
6899 + adapter->Stats.NoSglBuf++;
6900 + adapter->Stats.XmtErrors++;
6901 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "SndPktF1",
6902 + adapter, skb, 0, 0);
6903 + return (STATUS_RESOURCES);
6904 + }
6905 + ASSERT(SxgSgl->adapter == adapter);
6906 + SglBuffer = SXG_SGL_BUFFER(SxgSgl);
6907 + SglBufferLength = SXG_SGL_BUF_SIZE;
6908 + SxgSgl->VlanTag.VlanTci = 0;
6909 + SxgSgl->VlanTag.VlanTpid = 0;
6910 + SxgSgl->Type = SXG_SGL_DUMB;
6911 + SxgSgl->DumbPacket = skb;
6912 + pSgl = NULL;
6913 +
6914 + // Call the common sxg_dumb_sgl routine to complete the send.
6915 + sxg_dumb_sgl(pSgl, SxgSgl);
6916 + // Return success sxg_dumb_sgl (or something later) will complete it.
6917 + return (STATUS_SUCCESS);
6918 +}
6919 +
6920 +/*
6921 + * sxg_dumb_sgl
6922 + *
6923 + * Arguments:
6924 + * pSgl -
6925 + * SxgSgl - SXG_SCATTER_GATHER
6926 + *
6927 + * Return Value:
6928 + * None.
6929 + */
6930 +static void sxg_dumb_sgl(PSCATTER_GATHER_LIST pSgl, PSXG_SCATTER_GATHER SxgSgl)
6931 +{
6932 + p_adapter_t adapter = SxgSgl->adapter;
6933 + struct sk_buff *skb = SxgSgl->DumbPacket;
6934 + // For now, all dumb-nic sends go on RSS queue zero
6935 + PSXG_XMT_RING XmtRing = &adapter->XmtRings[0];
6936 + PSXG_RING_INFO XmtRingInfo = &adapter->XmtRingZeroInfo;
6937 + PSXG_CMD XmtCmd = NULL;
6938 +// u32 Index = 0;
6939 + u32 DataLength = skb->len;
6940 +// unsigned int BufLen;
6941 +// u32 SglOffset;
6942 + u64 phys_addr;
6943 +
6944 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DumbSgl",
6945 + pSgl, SxgSgl, 0, 0);
6946 +
6947 + // Set aside a pointer to the sgl
6948 + SxgSgl->pSgl = pSgl;
6949 +
6950 + // Sanity check that our SGL format is as we expect.
6951 + ASSERT(sizeof(SXG_X64_SGE) == sizeof(SCATTER_GATHER_ELEMENT));
6952 + // Shouldn't be a vlan tag on this frame
6953 + ASSERT(SxgSgl->VlanTag.VlanTci == 0);
6954 + ASSERT(SxgSgl->VlanTag.VlanTpid == 0);
6955 +
6956 + // From here below we work with the SGL placed in our
6957 + // buffer.
6958 +
6959 + SxgSgl->Sgl.NumberOfElements = 1;
6960 +
6961 + // Grab the spinlock and acquire a command
6962 + spin_lock(&adapter->XmtZeroLock);
6963 + SXG_GET_CMD(XmtRing, XmtRingInfo, XmtCmd, SxgSgl);
6964 + if (XmtCmd == NULL) {
6965 + // Call sxg_complete_slow_send to see if we can
6966 + // free up any XmtRingZero entries and then try again
6967 + spin_unlock(&adapter->XmtZeroLock);
6968 + sxg_complete_slow_send(adapter);
6969 + spin_lock(&adapter->XmtZeroLock);
6970 + SXG_GET_CMD(XmtRing, XmtRingInfo, XmtCmd, SxgSgl);
6971 + if (XmtCmd == NULL) {
6972 + adapter->Stats.XmtZeroFull++;
6973 + goto abortcmd;
6974 + }
6975 + }
6976 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DumbCmd",
6977 + XmtCmd, XmtRingInfo->Head, XmtRingInfo->Tail, 0);
6978 + // Update stats
6979 + adapter->Stats.DumbXmtPkts++;
6980 + adapter->Stats.DumbXmtBytes += DataLength;
6981 +#if XXXTODO // Stats stuff
6982 + if (SXG_MULTICAST_PACKET(EtherHdr)) {
6983 + if (SXG_BROADCAST_PACKET(EtherHdr)) {
6984 + adapter->Stats.DumbXmtBcastPkts++;
6985 + adapter->Stats.DumbXmtBcastBytes += DataLength;
6986 + } else {
6987 + adapter->Stats.DumbXmtMcastPkts++;
6988 + adapter->Stats.DumbXmtMcastBytes += DataLength;
6989 + }
6990 + } else {
6991 + adapter->Stats.DumbXmtUcastPkts++;
6992 + adapter->Stats.DumbXmtUcastBytes += DataLength;
6993 + }
6994 +#endif
6995 + // Fill in the command
6996 + // Copy out the first SGE to the command and adjust for offset
6997 + phys_addr = pci_map_single(adapter->pcidev, skb->data, skb->len, PCI_DMA_TODEVICE);
6998 + XmtCmd->Buffer.FirstSgeAddress = SXG_GET_ADDR_HIGH(phys_addr);
6999 + XmtCmd->Buffer.FirstSgeAddress = XmtCmd->Buffer.FirstSgeAddress << 32;
7000 + XmtCmd->Buffer.FirstSgeAddress =
7001 + XmtCmd->Buffer.FirstSgeAddress | SXG_GET_ADDR_LOW(phys_addr);
7002 +// XmtCmd->Buffer.FirstSgeAddress = SxgSgl->Sgl.Elements[Index].Address;
7003 +// XmtCmd->Buffer.FirstSgeAddress.LowPart += MdlOffset;
7004 + XmtCmd->Buffer.FirstSgeLength = DataLength;
7005 + // Set a pointer to the remaining SGL entries
7006 +// XmtCmd->Sgl = SxgSgl->PhysicalAddress;
7007 + // Advance the physical address of the SxgSgl structure to
7008 + // the second SGE
7009 +// SglOffset = (u32)((u32 *)(&SxgSgl->Sgl.Elements[Index+1]) -
7010 +// (u32 *)SxgSgl);
7011 +// XmtCmd->Sgl.LowPart += SglOffset;
7012 + XmtCmd->Buffer.SgeOffset = 0;
7013 + // Note - TotalLength might be overwritten with MSS below..
7014 + XmtCmd->Buffer.TotalLength = DataLength;
7015 + XmtCmd->SgEntries = 1; //(ushort)(SxgSgl->Sgl.NumberOfElements - Index);
7016 + XmtCmd->Flags = 0;
7017 + //
7018 + // Advance transmit cmd descripter by 1.
7019 + // NOTE - See comments in SxgTcpOutput where we write
7020 + // to the XmtCmd register regarding CPU ID values and/or
7021 + // multiple commands.
7022 + //
7023 + //
7024 + WRITE_REG(adapter->UcodeRegs[0].XmtCmd, 1, TRUE);
7025 + //
7026 + //
7027 + adapter->Stats.XmtQLen++; // Stats within lock
7028 + spin_unlock(&adapter->XmtZeroLock);
7029 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XDumSgl2",
7030 + XmtCmd, pSgl, SxgSgl, 0);
7031 + return;
7032 +
7033 + abortcmd:
7034 + // NOTE - Only jump to this label AFTER grabbing the
7035 + // XmtZeroLock, and DO NOT DROP IT between the
7036 + // command allocation and the following abort.
7037 + if (XmtCmd) {
7038 + SXG_ABORT_CMD(XmtRingInfo);
7039 + }
7040 + spin_unlock(&adapter->XmtZeroLock);
7041 +
7042 +// failsgl:
7043 + // Jump to this label if failure occurs before the
7044 + // XmtZeroLock is grabbed
7045 + adapter->Stats.XmtErrors++;
7046 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_IMPORTANT, "DumSGFal",
7047 + pSgl, SxgSgl, XmtRingInfo->Head, XmtRingInfo->Tail);
7048 +
7049 + SXG_COMPLETE_DUMB_SEND(adapter, SxgSgl->DumbPacket); // SxgSgl->DumbPacket is the skb
7050 +}
7051 +
7052 +/***************************************************************
7053 + * Link management functions
7054 + ***************************************************************/
7055 +
7056 +/*
7057 + * sxg_initialize_link - Initialize the link stuff
7058 + *
7059 + * Arguments -
7060 + * adapter - A pointer to our adapter structure
7061 + *
7062 + * Return
7063 + * status
7064 + */
7065 +static int sxg_initialize_link(p_adapter_t adapter)
7066 +{
7067 + PSXG_HW_REGS HwRegs = adapter->HwRegs;
7068 + u32 Value;
7069 + u32 ConfigData;
7070 + u32 MaxFrame;
7071 + int status;
7072 +
7073 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "InitLink",
7074 + adapter, 0, 0, 0);
7075 +
7076 + // Reset PHY and XGXS module
7077 + WRITE_REG(HwRegs->LinkStatus, LS_SERDES_POWER_DOWN, TRUE);
7078 +
7079 + // Reset transmit configuration register
7080 + WRITE_REG(HwRegs->XmtConfig, XMT_CONFIG_RESET, TRUE);
7081 +
7082 + // Reset receive configuration register
7083 + WRITE_REG(HwRegs->RcvConfig, RCV_CONFIG_RESET, TRUE);
7084 +
7085 + // Reset all MAC modules
7086 + WRITE_REG(HwRegs->MacConfig0, AXGMAC_CFG0_SUB_RESET, TRUE);
7087 +
7088 + // Link address 0
7089 + // XXXTODO - This assumes the MAC address (0a:0b:0c:0d:0e:0f)
7090 + // is stored with the first nibble (0a) in the byte 0
7091 + // of the Mac address. Possibly reverse?
7092 + Value = *(u32 *) adapter->MacAddr;
7093 + WRITE_REG(HwRegs->LinkAddress0Low, Value, TRUE);
7094 + // also write the MAC address to the MAC. Endian is reversed.
7095 + WRITE_REG(HwRegs->MacAddressLow, ntohl(Value), TRUE);
7096 + Value = (*(u16 *) & adapter->MacAddr[4] & 0x0000FFFF);
7097 + WRITE_REG(HwRegs->LinkAddress0High, Value | LINK_ADDRESS_ENABLE, TRUE);
7098 + // endian swap for the MAC (put high bytes in bits [31:16], swapped)
7099 + Value = ntohl(Value);
7100 + WRITE_REG(HwRegs->MacAddressHigh, Value, TRUE);
7101 + // Link address 1
7102 + WRITE_REG(HwRegs->LinkAddress1Low, 0, TRUE);
7103 + WRITE_REG(HwRegs->LinkAddress1High, 0, TRUE);
7104 + // Link address 2
7105 + WRITE_REG(HwRegs->LinkAddress2Low, 0, TRUE);
7106 + WRITE_REG(HwRegs->LinkAddress2High, 0, TRUE);
7107 + // Link address 3
7108 + WRITE_REG(HwRegs->LinkAddress3Low, 0, TRUE);
7109 + WRITE_REG(HwRegs->LinkAddress3High, 0, TRUE);
7110 +
7111 + // Enable MAC modules
7112 + WRITE_REG(HwRegs->MacConfig0, 0, TRUE);
7113 +
7114 + // Configure MAC
7115 + WRITE_REG(HwRegs->MacConfig1, (AXGMAC_CFG1_XMT_PAUSE | // Allow sending of pause
7116 + AXGMAC_CFG1_XMT_EN | // Enable XMT
7117 + AXGMAC_CFG1_RCV_PAUSE | // Enable detection of pause
7118 + AXGMAC_CFG1_RCV_EN | // Enable receive
7119 + AXGMAC_CFG1_SHORT_ASSERT | // short frame detection
7120 + AXGMAC_CFG1_CHECK_LEN | // Verify frame length
7121 + AXGMAC_CFG1_GEN_FCS | // Generate FCS
7122 + AXGMAC_CFG1_PAD_64), // Pad frames to 64 bytes
7123 + TRUE);
7124 +
7125 + // Set AXGMAC max frame length if jumbo. Not needed for standard MTU
7126 + if (adapter->JumboEnabled) {
7127 + WRITE_REG(HwRegs->MacMaxFrameLen, AXGMAC_MAXFRAME_JUMBO, TRUE);
7128 + }
7129 + // AMIIM Configuration Register -
7130 + // The value placed in the AXGMAC_AMIIM_CFG_HALF_CLOCK portion
7131 + // (bottom bits) of this register is used to determine the
7132 + // MDC frequency as specified in the A-XGMAC Design Document.
7133 + // This value must not be zero. The following value (62 or 0x3E)
7134 + // is based on our MAC transmit clock frequency (MTCLK) of 312.5 MHz.
7135 + // Given a maximum MDIO clock frequency of 2.5 MHz (see the PHY spec),
7136 + // we get: 312.5/(2*(X+1)) < 2.5 ==> X = 62.
7137 + // This value happens to be the default value for this register,
7138 + // so we really don't have to do this.
7139 + WRITE_REG(HwRegs->MacAmiimConfig, 0x0000003E, TRUE);
7140 +
7141 + // Power up and enable PHY and XAUI/XGXS/Serdes logic
7142 + WRITE_REG(HwRegs->LinkStatus,
7143 + (LS_PHY_CLR_RESET |
7144 + LS_XGXS_ENABLE |
7145 + LS_XGXS_CTL | LS_PHY_CLK_EN | LS_ATTN_ALARM), TRUE);
7146 + DBG_ERROR("After Power Up and enable PHY in sxg_initialize_link\n");
7147 +
7148 + // Per information given by Aeluros, wait 100 ms after removing reset.
7149 + // It's not enough to wait for the self-clearing reset bit in reg 0 to clear.
7150 + mdelay(100);
7151 +
7152 + // Verify the PHY has come up by checking that the Reset bit has cleared.
7153 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7154 + PHY_PMA_CONTROL1, // PMA/PMD control register
7155 + &Value);
7156 + if (status != STATUS_SUCCESS)
7157 + return (STATUS_FAILURE);
7158 + if (Value & PMA_CONTROL1_RESET) // reset complete if bit is 0
7159 + return (STATUS_FAILURE);
7160 +
7161 + // The SERDES should be initialized by now - confirm
7162 + READ_REG(HwRegs->LinkStatus, Value);
7163 + if (Value & LS_SERDES_DOWN) // verify SERDES is initialized
7164 + return (STATUS_FAILURE);
7165 +
7166 + // The XAUI link should also be up - confirm
7167 + if (!(Value & LS_XAUI_LINK_UP)) // verify XAUI link is up
7168 + return (STATUS_FAILURE);
7169 +
7170 + // Initialize the PHY
7171 + status = sxg_phy_init(adapter);
7172 + if (status != STATUS_SUCCESS)
7173 + return (STATUS_FAILURE);
7174 +
7175 + // Enable the Link Alarm
7176 + status = sxg_write_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7177 + LASI_CONTROL, // LASI control register
7178 + LASI_CTL_LS_ALARM_ENABLE); // enable link alarm bit
7179 + if (status != STATUS_SUCCESS)
7180 + return (STATUS_FAILURE);
7181 +
7182 + // XXXTODO - temporary - verify bit is set
7183 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7184 + LASI_CONTROL, // LASI control register
7185 + &Value);
7186 + if (status != STATUS_SUCCESS)
7187 + return (STATUS_FAILURE);
7188 + if (!(Value & LASI_CTL_LS_ALARM_ENABLE)) {
7189 + DBG_ERROR("Error! LASI Control Alarm Enable bit not set!\n");
7190 + }
7191 + // Enable receive
7192 + MaxFrame = adapter->JumboEnabled ? JUMBOMAXFRAME : ETHERMAXFRAME;
7193 + ConfigData = (RCV_CONFIG_ENABLE |
7194 + RCV_CONFIG_ENPARSE |
7195 + RCV_CONFIG_RCVBAD |
7196 + RCV_CONFIG_RCVPAUSE |
7197 + RCV_CONFIG_TZIPV6 |
7198 + RCV_CONFIG_TZIPV4 |
7199 + RCV_CONFIG_HASH_16 |
7200 + RCV_CONFIG_SOCKET | RCV_CONFIG_BUFSIZE(MaxFrame));
7201 + WRITE_REG(HwRegs->RcvConfig, ConfigData, TRUE);
7202 +
7203 + WRITE_REG(HwRegs->XmtConfig, XMT_CONFIG_ENABLE, TRUE);
7204 +
7205 + // Mark the link as down. We'll get a link event when it comes up.
7206 + sxg_link_state(adapter, SXG_LINK_DOWN);
7207 +
7208 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XInitLnk",
7209 + adapter, 0, 0, 0);
7210 + return (STATUS_SUCCESS);
7211 +}
7212 +
7213 +/*
7214 + * sxg_phy_init - Initialize the PHY
7215 + *
7216 + * Arguments -
7217 + * adapter - A pointer to our adapter structure
7218 + *
7219 + * Return
7220 + * status
7221 + */
7222 +static int sxg_phy_init(p_adapter_t adapter)
7223 +{
7224 + u32 Value;
7225 + PPHY_UCODE p;
7226 + int status;
7227 +
7228 + DBG_ERROR("ENTER %s\n", __FUNCTION__);
7229 +
7230 + // Read a register to identify the PHY type
7231 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7232 + 0xC205, // PHY ID register (?)
7233 + &Value); // XXXTODO - add def
7234 + if (status != STATUS_SUCCESS)
7235 + return (STATUS_FAILURE);
7236 +
7237 + if (Value == 0x0012) { // 0x0012 == AEL2005C PHY(?) - XXXTODO - add def
7238 + DBG_ERROR
7239 + ("AEL2005C PHY detected. Downloading PHY microcode.\n");
7240 +
7241 + // Initialize AEL2005C PHY and download PHY microcode
7242 + for (p = PhyUcode; p->Addr != 0xFFFF; p++) {
7243 + if (p->Addr == 0) {
7244 + // if address == 0, data == sleep time in ms
7245 + mdelay(p->Data);
7246 + } else {
7247 + // write the given data to the specified address
7248 + status = sxg_write_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7249 + p->Addr, // PHY address
7250 + p->Data); // PHY data
7251 + if (status != STATUS_SUCCESS)
7252 + return (STATUS_FAILURE);
7253 + }
7254 + }
7255 + }
7256 + DBG_ERROR("EXIT %s\n", __FUNCTION__);
7257 +
7258 + return (STATUS_SUCCESS);
7259 +}
7260 +
7261 +/*
7262 + * sxg_link_event - Process a link event notification from the card
7263 + *
7264 + * Arguments -
7265 + * adapter - A pointer to our adapter structure
7266 + *
7267 + * Return
7268 + * None
7269 + */
7270 +static void sxg_link_event(p_adapter_t adapter)
7271 +{
7272 + PSXG_HW_REGS HwRegs = adapter->HwRegs;
7273 + SXG_LINK_STATE LinkState;
7274 + int status;
7275 + u32 Value;
7276 +
7277 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "LinkEvnt",
7278 + adapter, 0, 0, 0);
7279 + DBG_ERROR("ENTER %s\n", __FUNCTION__);
7280 +
7281 + // Check the Link Status register. We should have a Link Alarm.
7282 + READ_REG(HwRegs->LinkStatus, Value);
7283 + if (Value & LS_LINK_ALARM) {
7284 + // We got a Link Status alarm. First, pause to let the
7285 + // link state settle (it can bounce a number of times)
7286 + mdelay(10);
7287 +
7288 + // Now clear the alarm by reading the LASI status register.
7289 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7290 + LASI_STATUS, // LASI status register
7291 + &Value);
7292 + if (status != STATUS_SUCCESS) {
7293 + DBG_ERROR("Error reading LASI Status MDIO register!\n");
7294 + sxg_link_state(adapter, SXG_LINK_DOWN);
7295 +// ASSERT(0);
7296 + }
7297 + ASSERT(Value & LASI_STATUS_LS_ALARM);
7298 +
7299 + // Now get and set the link state
7300 + LinkState = sxg_get_link_state(adapter);
7301 + sxg_link_state(adapter, LinkState);
7302 + DBG_ERROR("SXG: Link Alarm occurred. Link is %s\n",
7303 + ((LinkState == SXG_LINK_UP) ? "UP" : "DOWN"));
7304 + } else {
7305 + // XXXTODO - Assuming Link Attention is only being generated for the
7306 + // Link Alarm pin (and not for a XAUI Link Status change), then it's
7307 + // impossible to get here. Yet we've gotten here twice (under extreme
7308 + // conditions - bouncing the link up and down many times a second).
7309 + // Needs further investigation.
7310 + DBG_ERROR("SXG: sxg_link_event: Can't get here!\n");
7311 + DBG_ERROR("SXG: Link Status == 0x%08X.\n", Value);
7312 +// ASSERT(0);
7313 + }
7314 + DBG_ERROR("EXIT %s\n", __FUNCTION__);
7315 +
7316 +}
7317 +
7318 +/*
7319 + * sxg_get_link_state - Determine if the link is up or down
7320 + *
7321 + * Arguments -
7322 + * adapter - A pointer to our adapter structure
7323 + *
7324 + * Return
7325 + * Link State
7326 + */
7327 +static SXG_LINK_STATE sxg_get_link_state(p_adapter_t adapter)
7328 +{
7329 + int status;
7330 + u32 Value;
7331 +
7332 + DBG_ERROR("ENTER %s\n", __FUNCTION__);
7333 +
7334 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "GetLink",
7335 + adapter, 0, 0, 0);
7336 +
7337 + // Per the Xenpak spec (and the IEEE 10Gb spec?), the link is up if
7338 + // the following 3 bits (from 3 different MDIO registers) are all true.
7339 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PMA, // PHY PMA/PMD module
7340 + PHY_PMA_RCV_DET, // PMA/PMD Receive Signal Detect register
7341 + &Value);
7342 + if (status != STATUS_SUCCESS)
7343 + goto bad;
7344 +
7345 + // If PMA/PMD receive signal detect is 0, then the link is down
7346 + if (!(Value & PMA_RCV_DETECT))
7347 + return (SXG_LINK_DOWN);
7348 +
7349 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_PCS, // PHY PCS module
7350 + PHY_PCS_10G_STATUS1, // PCS 10GBASE-R Status 1 register
7351 + &Value);
7352 + if (status != STATUS_SUCCESS)
7353 + goto bad;
7354 +
7355 + // If PCS is not locked to receive blocks, then the link is down
7356 + if (!(Value & PCS_10B_BLOCK_LOCK))
7357 + return (SXG_LINK_DOWN);
7358 +
7359 + status = sxg_read_mdio_reg(adapter, MIIM_DEV_PHY_XS, // PHY XS module
7360 + PHY_XS_LANE_STATUS, // XS Lane Status register
7361 + &Value);
7362 + if (status != STATUS_SUCCESS)
7363 + goto bad;
7364 +
7365 + // If XS transmit lanes are not aligned, then the link is down
7366 + if (!(Value & XS_LANE_ALIGN))
7367 + return (SXG_LINK_DOWN);
7368 +
7369 + // All 3 bits are true, so the link is up
7370 + DBG_ERROR("EXIT %s\n", __FUNCTION__);
7371 +
7372 + return (SXG_LINK_UP);
7373 +
7374 + bad:
7375 + // An error occurred reading an MDIO register. This shouldn't happen.
7376 + DBG_ERROR("Error reading an MDIO register!\n");
7377 + ASSERT(0);
7378 + return (SXG_LINK_DOWN);
7379 +}
7380 +
7381 +static void sxg_indicate_link_state(p_adapter_t adapter, SXG_LINK_STATE LinkState)
7382 +{
7383 + if (adapter->LinkState == SXG_LINK_UP) {
7384 + DBG_ERROR("%s: LINK now UP, call netif_start_queue\n",
7385 + __FUNCTION__);
7386 + netif_start_queue(adapter->netdev);
7387 + } else {
7388 + DBG_ERROR("%s: LINK now DOWN, call netif_stop_queue\n",
7389 + __FUNCTION__);
7390 + netif_stop_queue(adapter->netdev);
7391 + }
7392 +}
7393 +
7394 +/*
7395 + * sxg_link_state - Set the link state and if necessary, indicate.
7396 + * This routine the central point of processing for all link state changes.
7397 + * Nothing else in the driver should alter the link state or perform
7398 + * link state indications
7399 + *
7400 + * Arguments -
7401 + * adapter - A pointer to our adapter structure
7402 + * LinkState - The link state
7403 + *
7404 + * Return
7405 + * None
7406 + */
7407 +static void sxg_link_state(p_adapter_t adapter, SXG_LINK_STATE LinkState)
7408 +{
7409 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_IMPORTANT, "LnkINDCT",
7410 + adapter, LinkState, adapter->LinkState, adapter->State);
7411 +
7412 + DBG_ERROR("ENTER %s\n", __FUNCTION__);
7413 +
7414 + // Hold the adapter lock during this routine. Maybe move
7415 + // the lock to the caller.
7416 + spin_lock(&adapter->AdapterLock);
7417 + if (LinkState == adapter->LinkState) {
7418 + // Nothing changed..
7419 + spin_unlock(&adapter->AdapterLock);
7420 + DBG_ERROR("EXIT #0 %s\n", __FUNCTION__);
7421 + return;
7422 + }
7423 + // Save the adapter state
7424 + adapter->LinkState = LinkState;
7425 +
7426 + // Drop the lock and indicate link state
7427 + spin_unlock(&adapter->AdapterLock);
7428 + DBG_ERROR("EXIT #1 %s\n", __FUNCTION__);
7429 +
7430 + sxg_indicate_link_state(adapter, LinkState);
7431 +}
7432 +
7433 +/*
7434 + * sxg_write_mdio_reg - Write to a register on the MDIO bus
7435 + *
7436 + * Arguments -
7437 + * adapter - A pointer to our adapter structure
7438 + * DevAddr - MDIO device number being addressed
7439 + * RegAddr - register address for the specified MDIO device
7440 + * Value - value to write to the MDIO register
7441 + *
7442 + * Return
7443 + * status
7444 + */
7445 +static int sxg_write_mdio_reg(p_adapter_t adapter,
7446 + u32 DevAddr, u32 RegAddr, u32 Value)
7447 +{
7448 + PSXG_HW_REGS HwRegs = adapter->HwRegs;
7449 + u32 AddrOp; // Address operation (written to MIIM field reg)
7450 + u32 WriteOp; // Write operation (written to MIIM field reg)
7451 + u32 Cmd; // Command (written to MIIM command reg)
7452 + u32 ValueRead;
7453 + u32 Timeout;
7454 +
7455 +// DBG_ERROR("ENTER %s\n", __FUNCTION__);
7456 +
7457 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "WrtMDIO",
7458 + adapter, 0, 0, 0);
7459 +
7460 + // Ensure values don't exceed field width
7461 + DevAddr &= 0x001F; // 5-bit field
7462 + RegAddr &= 0xFFFF; // 16-bit field
7463 + Value &= 0xFFFF; // 16-bit field
7464 +
7465 + // Set MIIM field register bits for an MIIM address operation
7466 + AddrOp = (MIIM_PORT_NUM << AXGMAC_AMIIM_FIELD_PORT_SHIFT) |
7467 + (DevAddr << AXGMAC_AMIIM_FIELD_DEV_SHIFT) |
7468 + (MIIM_TA_10GB << AXGMAC_AMIIM_FIELD_TA_SHIFT) |
7469 + (MIIM_OP_ADDR << AXGMAC_AMIIM_FIELD_OP_SHIFT) | RegAddr;
7470 +
7471 + // Set MIIM field register bits for an MIIM write operation
7472 + WriteOp = (MIIM_PORT_NUM << AXGMAC_AMIIM_FIELD_PORT_SHIFT) |
7473 + (DevAddr << AXGMAC_AMIIM_FIELD_DEV_SHIFT) |
7474 + (MIIM_TA_10GB << AXGMAC_AMIIM_FIELD_TA_SHIFT) |
7475 + (MIIM_OP_WRITE << AXGMAC_AMIIM_FIELD_OP_SHIFT) | Value;
7476 +
7477 + // Set MIIM command register bits to execute an MIIM command
7478 + Cmd = AXGMAC_AMIIM_CMD_START | AXGMAC_AMIIM_CMD_10G_OPERATION;
7479 +
7480 + // Reset the command register command bit (in case it's not 0)
7481 + WRITE_REG(HwRegs->MacAmiimCmd, 0, TRUE);
7482 +
7483 + // MIIM write to set the address of the specified MDIO register
7484 + WRITE_REG(HwRegs->MacAmiimField, AddrOp, TRUE);
7485 +
7486 + // Write to MIIM Command Register to execute to address operation
7487 + WRITE_REG(HwRegs->MacAmiimCmd, Cmd, TRUE);
7488 +
7489 + // Poll AMIIM Indicator register to wait for completion
7490 + Timeout = SXG_LINK_TIMEOUT;
7491 + do {
7492 + udelay(100); // Timeout in 100us units
7493 + READ_REG(HwRegs->MacAmiimIndicator, ValueRead);
7494 + if (--Timeout == 0) {
7495 + return (STATUS_FAILURE);
7496 + }
7497 + } while (ValueRead & AXGMAC_AMIIM_INDC_BUSY);
7498 +
7499 + // Reset the command register command bit
7500 + WRITE_REG(HwRegs->MacAmiimCmd, 0, TRUE);
7501 +
7502 + // MIIM write to set up an MDIO write operation
7503 + WRITE_REG(HwRegs->MacAmiimField, WriteOp, TRUE);
7504 +
7505 + // Write to MIIM Command Register to execute the write operation
7506 + WRITE_REG(HwRegs->MacAmiimCmd, Cmd, TRUE);
7507 +
7508 + // Poll AMIIM Indicator register to wait for completion
7509 + Timeout = SXG_LINK_TIMEOUT;
7510 + do {
7511 + udelay(100); // Timeout in 100us units
7512 + READ_REG(HwRegs->MacAmiimIndicator, ValueRead);
7513 + if (--Timeout == 0) {
7514 + return (STATUS_FAILURE);
7515 + }
7516 + } while (ValueRead & AXGMAC_AMIIM_INDC_BUSY);
7517 +
7518 +// DBG_ERROR("EXIT %s\n", __FUNCTION__);
7519 +
7520 + return (STATUS_SUCCESS);
7521 +}
7522 +
7523 +/*
7524 + * sxg_read_mdio_reg - Read a register on the MDIO bus
7525 + *
7526 + * Arguments -
7527 + * adapter - A pointer to our adapter structure
7528 + * DevAddr - MDIO device number being addressed
7529 + * RegAddr - register address for the specified MDIO device
7530 + * pValue - pointer to where to put data read from the MDIO register
7531 + *
7532 + * Return
7533 + * status
7534 + */
7535 +static int sxg_read_mdio_reg(p_adapter_t adapter,
7536 + u32 DevAddr, u32 RegAddr, u32 * pValue)
7537 +{
7538 + PSXG_HW_REGS HwRegs = adapter->HwRegs;
7539 + u32 AddrOp; // Address operation (written to MIIM field reg)
7540 + u32 ReadOp; // Read operation (written to MIIM field reg)
7541 + u32 Cmd; // Command (written to MIIM command reg)
7542 + u32 ValueRead;
7543 + u32 Timeout;
7544 +
7545 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "WrtMDIO",
7546 + adapter, 0, 0, 0);
7547 +// DBG_ERROR("ENTER %s\n", __FUNCTION__);
7548 +
7549 + // Ensure values don't exceed field width
7550 + DevAddr &= 0x001F; // 5-bit field
7551 + RegAddr &= 0xFFFF; // 16-bit field
7552 +
7553 + // Set MIIM field register bits for an MIIM address operation
7554 + AddrOp = (MIIM_PORT_NUM << AXGMAC_AMIIM_FIELD_PORT_SHIFT) |
7555 + (DevAddr << AXGMAC_AMIIM_FIELD_DEV_SHIFT) |
7556 + (MIIM_TA_10GB << AXGMAC_AMIIM_FIELD_TA_SHIFT) |
7557 + (MIIM_OP_ADDR << AXGMAC_AMIIM_FIELD_OP_SHIFT) | RegAddr;
7558 +
7559 + // Set MIIM field register bits for an MIIM read operation
7560 + ReadOp = (MIIM_PORT_NUM << AXGMAC_AMIIM_FIELD_PORT_SHIFT) |
7561 + (DevAddr << AXGMAC_AMIIM_FIELD_DEV_SHIFT) |
7562 + (MIIM_TA_10GB << AXGMAC_AMIIM_FIELD_TA_SHIFT) |
7563 + (MIIM_OP_READ << AXGMAC_AMIIM_FIELD_OP_SHIFT);
7564 +
7565 + // Set MIIM command register bits to execute an MIIM command
7566 + Cmd = AXGMAC_AMIIM_CMD_START | AXGMAC_AMIIM_CMD_10G_OPERATION;
7567 +
7568 + // Reset the command register command bit (in case it's not 0)
7569 + WRITE_REG(HwRegs->MacAmiimCmd, 0, TRUE);
7570 +
7571 + // MIIM write to set the address of the specified MDIO register
7572 + WRITE_REG(HwRegs->MacAmiimField, AddrOp, TRUE);
7573 +
7574 + // Write to MIIM Command Register to execute to address operation
7575 + WRITE_REG(HwRegs->MacAmiimCmd, Cmd, TRUE);
7576 +
7577 + // Poll AMIIM Indicator register to wait for completion
7578 + Timeout = SXG_LINK_TIMEOUT;
7579 + do {
7580 + udelay(100); // Timeout in 100us units
7581 + READ_REG(HwRegs->MacAmiimIndicator, ValueRead);
7582 + if (--Timeout == 0) {
7583 + return (STATUS_FAILURE);
7584 + }
7585 + } while (ValueRead & AXGMAC_AMIIM_INDC_BUSY);
7586 +
7587 + // Reset the command register command bit
7588 + WRITE_REG(HwRegs->MacAmiimCmd, 0, TRUE);
7589 +
7590 + // MIIM write to set up an MDIO register read operation
7591 + WRITE_REG(HwRegs->MacAmiimField, ReadOp, TRUE);
7592 +
7593 + // Write to MIIM Command Register to execute the read operation
7594 + WRITE_REG(HwRegs->MacAmiimCmd, Cmd, TRUE);
7595 +
7596 + // Poll AMIIM Indicator register to wait for completion
7597 + Timeout = SXG_LINK_TIMEOUT;
7598 + do {
7599 + udelay(100); // Timeout in 100us units
7600 + READ_REG(HwRegs->MacAmiimIndicator, ValueRead);
7601 + if (--Timeout == 0) {
7602 + return (STATUS_FAILURE);
7603 + }
7604 + } while (ValueRead & AXGMAC_AMIIM_INDC_BUSY);
7605 +
7606 + // Read the MDIO register data back from the field register
7607 + READ_REG(HwRegs->MacAmiimField, *pValue);
7608 + *pValue &= 0xFFFF; // data is in the lower 16 bits
7609 +
7610 +// DBG_ERROR("EXIT %s\n", __FUNCTION__);
7611 +
7612 + return (STATUS_SUCCESS);
7613 +}
7614 +
7615 +/*
7616 + * Allocate a mcast_address structure to hold the multicast address.
7617 + * Link it in.
7618 + */
7619 +static int sxg_mcast_add_list(p_adapter_t adapter, char *address)
7620 +{
7621 + p_mcast_address_t mcaddr, mlist;
7622 + bool equaladdr;
7623 +
7624 + /* Check to see if it already exists */
7625 + mlist = adapter->mcastaddrs;
7626 + while (mlist) {
7627 + ETHER_EQ_ADDR(mlist->address, address, equaladdr);
7628 + if (equaladdr) {
7629 + return (STATUS_SUCCESS);
7630 + }
7631 + mlist = mlist->next;
7632 + }
7633 +
7634 + /* Doesn't already exist. Allocate a structure to hold it */
7635 + mcaddr = kmalloc(sizeof(mcast_address_t), GFP_ATOMIC);
7636 + if (mcaddr == NULL)
7637 + return 1;
7638 +
7639 + memcpy(mcaddr->address, address, 6);
7640 +
7641 + mcaddr->next = adapter->mcastaddrs;
7642 + adapter->mcastaddrs = mcaddr;
7643 +
7644 + return (STATUS_SUCCESS);
7645 +}
7646 +
7647 +/*
7648 + * Functions to obtain the CRC corresponding to the destination mac address.
7649 + * This is a standard ethernet CRC in that it is a 32-bit, reflected CRC using
7650 + * the polynomial:
7651 + * x^32 + x^26 + x^23 + x^22 + x^16 + x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x^1.
7652 + *
7653 + * After the CRC for the 6 bytes is generated (but before the value is complemented),
7654 + * we must then transpose the value and return bits 30-23.
7655 + *
7656 + */
7657 +static u32 sxg_crc_table[256]; /* Table of CRC's for all possible byte values */
7658 +static u32 sxg_crc_init; /* Is table initialized */
7659 +
7660 +/*
7661 + * Contruct the CRC32 table
7662 + */
7663 +static void sxg_mcast_init_crc32(void)
7664 +{
7665 + u32 c; /* CRC shit reg */
7666 + u32 e = 0; /* Poly X-or pattern */
7667 + int i; /* counter */
7668 + int k; /* byte being shifted into crc */
7669 +
7670 + static int p[] = { 0, 1, 2, 4, 5, 7, 8, 10, 11, 12, 16, 22, 23, 26 };
7671 +
7672 + for (i = 0; i < sizeof(p) / sizeof(int); i++) {
7673 + e |= 1L << (31 - p[i]);
7674 + }
7675 +
7676 + for (i = 1; i < 256; i++) {
7677 + c = i;
7678 + for (k = 8; k; k--) {
7679 + c = c & 1 ? (c >> 1) ^ e : c >> 1;
7680 + }
7681 + sxg_crc_table[i] = c;
7682 + }
7683 +}
7684 +
7685 +/*
7686 + * Return the MAC hast as described above.
7687 + */
7688 +static unsigned char sxg_mcast_get_mac_hash(char *macaddr)
7689 +{
7690 + u32 crc;
7691 + char *p;
7692 + int i;
7693 + unsigned char machash = 0;
7694 +
7695 + if (!sxg_crc_init) {
7696 + sxg_mcast_init_crc32();
7697 + sxg_crc_init = 1;
7698 + }
7699 +
7700 + crc = 0xFFFFFFFF; /* Preload shift register, per crc-32 spec */
7701 + for (i = 0, p = macaddr; i < 6; ++p, ++i) {
7702 + crc = (crc >> 8) ^ sxg_crc_table[(crc ^ *p) & 0xFF];
7703 + }
7704 +
7705 + /* Return bits 1-8, transposed */
7706 + for (i = 1; i < 9; i++) {
7707 + machash |= (((crc >> i) & 1) << (8 - i));
7708 + }
7709 +
7710 + return (machash);
7711 +}
7712 +
7713 +static void sxg_mcast_set_bit(p_adapter_t adapter, char *address)
7714 +{
7715 + unsigned char crcpoly;
7716 +
7717 + /* Get the CRC polynomial for the mac address */
7718 + crcpoly = sxg_mcast_get_mac_hash(address);
7719 +
7720 + /* We only have space on the SLIC for 64 entries. Lop
7721 + * off the top two bits. (2^6 = 64)
7722 + */
7723 + crcpoly &= 0x3F;
7724 +
7725 + /* OR in the new bit into our 64 bit mask. */
7726 + adapter->MulticastMask |= (u64) 1 << crcpoly;
7727 +}
7728 +
7729 +static void sxg_mcast_set_list(p_net_device dev)
7730 +{
7731 +#if XXXTODO
7732 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
7733 + int status = STATUS_SUCCESS;
7734 + int i;
7735 + char *addresses;
7736 + struct dev_mc_list *mc_list = dev->mc_list;
7737 + int mc_count = dev->mc_count;
7738 +
7739 + ASSERT(adapter);
7740 +
7741 + for (i = 1; i <= mc_count; i++) {
7742 + addresses = (char *) & mc_list->dmi_addr;
7743 + if (mc_list->dmi_addrlen == 6) {
7744 + status = sxg_mcast_add_list(adapter, addresses);
7745 + if (status != STATUS_SUCCESS) {
7746 + break;
7747 + }
7748 + } else {
7749 + status = -EINVAL;
7750 + break;
7751 + }
7752 + sxg_mcast_set_bit(adapter, addresses);
7753 + mc_list = mc_list->next;
7754 + }
7755 +
7756 + DBG_ERROR("%s a->devflags_prev[%x] dev->flags[%x] status[%x]\n",
7757 + __FUNCTION__, adapter->devflags_prev, dev->flags, status);
7758 + if (adapter->devflags_prev != dev->flags) {
7759 + adapter->macopts = MAC_DIRECTED;
7760 + if (dev->flags) {
7761 + if (dev->flags & IFF_BROADCAST) {
7762 + adapter->macopts |= MAC_BCAST;
7763 + }
7764 + if (dev->flags & IFF_PROMISC) {
7765 + adapter->macopts |= MAC_PROMISC;
7766 + }
7767 + if (dev->flags & IFF_ALLMULTI) {
7768 + adapter->macopts |= MAC_ALLMCAST;
7769 + }
7770 + if (dev->flags & IFF_MULTICAST) {
7771 + adapter->macopts |= MAC_MCAST;
7772 + }
7773 + }
7774 + adapter->devflags_prev = dev->flags;
7775 + DBG_ERROR("%s call sxg_config_set adapter->macopts[%x]\n",
7776 + __FUNCTION__, adapter->macopts);
7777 + sxg_config_set(adapter, TRUE);
7778 + } else {
7779 + if (status == STATUS_SUCCESS) {
7780 + sxg_mcast_set_mask(adapter);
7781 + }
7782 + }
7783 +#endif
7784 + return;
7785 +}
7786 +
7787 +static void sxg_mcast_set_mask(p_adapter_t adapter)
7788 +{
7789 + PSXG_UCODE_REGS sxg_regs = adapter->UcodeRegs;
7790 +
7791 + DBG_ERROR("%s ENTER (%s) macopts[%x] mask[%llx]\n", __FUNCTION__,
7792 + adapter->netdev->name, (unsigned int) adapter->MacFilter,
7793 + adapter->MulticastMask);
7794 +
7795 + if (adapter->MacFilter & (MAC_ALLMCAST | MAC_PROMISC)) {
7796 + /* Turn on all multicast addresses. We have to do this for promiscuous
7797 + * mode as well as ALLMCAST mode. It saves the Microcode from having
7798 + * to keep state about the MAC configuration.
7799 + */
7800 +// DBG_ERROR("sxg: %s macopts = MAC_ALLMCAST | MAC_PROMISC\n SLUT MODE!!!\n",__FUNCTION__);
7801 + WRITE_REG(sxg_regs->McastLow, 0xFFFFFFFF, FLUSH);
7802 + WRITE_REG(sxg_regs->McastHigh, 0xFFFFFFFF, FLUSH);
7803 +// DBG_ERROR("%s (%s) WRITE to slic_regs slic_mcastlow&high 0xFFFFFFFF\n",__FUNCTION__, adapter->netdev->name);
7804 +
7805 + } else {
7806 + /* Commit our multicast mast to the SLIC by writing to the multicast
7807 + * address mask registers
7808 + */
7809 + DBG_ERROR("%s (%s) WRITE mcastlow[%lx] mcasthigh[%lx]\n",
7810 + __FUNCTION__, adapter->netdev->name,
7811 + ((ulong) (adapter->MulticastMask & 0xFFFFFFFF)),
7812 + ((ulong)
7813 + ((adapter->MulticastMask >> 32) & 0xFFFFFFFF)));
7814 +
7815 + WRITE_REG(sxg_regs->McastLow,
7816 + (u32) (adapter->MulticastMask & 0xFFFFFFFF),
7817 + FLUSH);
7818 + WRITE_REG(sxg_regs->McastHigh,
7819 + (u32) ((adapter->
7820 + MulticastMask >> 32) & 0xFFFFFFFF),
7821 + FLUSH);
7822 + }
7823 +}
7824 +
7825 +static void sxg_unmap_mmio_space(p_adapter_t adapter)
7826 +{
7827 +#if LINUX_FREES_ADAPTER_RESOURCES
7828 +// if (adapter->Regs) {
7829 +// iounmap(adapter->Regs);
7830 +// }
7831 +// adapter->slic_regs = NULL;
7832 +#endif
7833 +}
7834 +
7835 +#if XXXTODO
7836 +/*
7837 + * SxgFreeResources - Free everything allocated in SxgAllocateResources
7838 + *
7839 + * Arguments -
7840 + * adapter - A pointer to our adapter structure
7841 + *
7842 + * Return
7843 + * none
7844 + */
7845 +void SxgFreeResources(p_adapter_t adapter)
7846 +{
7847 + u32 RssIds, IsrCount;
7848 + PTCP_OBJECT TcpObject;
7849 + u32 i;
7850 + BOOLEAN TimerCancelled;
7851 +
7852 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "FreeRes",
7853 + adapter, adapter->MaxTcbs, 0, 0);
7854 +
7855 + RssIds = SXG_RSS_CPU_COUNT(adapter);
7856 + IsrCount = adapter->MsiEnabled ? RssIds : 1;
7857 +
7858 + if (adapter->BasicAllocations == FALSE) {
7859 + // No allocations have been made, including spinlocks,
7860 + // or listhead initializations. Return.
7861 + return;
7862 + }
7863 +
7864 + if (!(IsListEmpty(&adapter->AllRcvBlocks))) {
7865 + SxgFreeRcvBlocks(adapter);
7866 + }
7867 + if (!(IsListEmpty(&adapter->AllSglBuffers))) {
7868 + SxgFreeSglBuffers(adapter);
7869 + }
7870 + // Free event queues.
7871 + if (adapter->EventRings) {
7872 + pci_free_consistent(adapter->pcidev,
7873 + sizeof(SXG_EVENT_RING) * RssIds,
7874 + adapter->EventRings, adapter->PEventRings);
7875 + }
7876 + if (adapter->Isr) {
7877 + pci_free_consistent(adapter->pcidev,
7878 + sizeof(u32) * IsrCount,
7879 + adapter->Isr, adapter->PIsr);
7880 + }
7881 + if (adapter->XmtRingZeroIndex) {
7882 + pci_free_consistent(adapter->pcidev,
7883 + sizeof(u32),
7884 + adapter->XmtRingZeroIndex,
7885 + adapter->PXmtRingZeroIndex);
7886 + }
7887 + if (adapter->IndirectionTable) {
7888 + pci_free_consistent(adapter->pcidev,
7889 + SXG_MAX_RSS_TABLE_SIZE,
7890 + adapter->IndirectionTable,
7891 + adapter->PIndirectionTable);
7892 + }
7893 +
7894 + SXG_FREE_PACKET_POOL(adapter->PacketPoolHandle);
7895 + SXG_FREE_BUFFER_POOL(adapter->BufferPoolHandle);
7896 +
7897 + // Unmap register spaces
7898 + SxgUnmapResources(adapter);
7899 +
7900 + // Deregister DMA
7901 + if (adapter->DmaHandle) {
7902 + SXG_DEREGISTER_DMA(adapter->DmaHandle);
7903 + }
7904 + // Deregister interrupt
7905 + SxgDeregisterInterrupt(adapter);
7906 +
7907 + // Possibly free system info (5.2 only)
7908 + SXG_RELEASE_SYSTEM_INFO(adapter);
7909 +
7910 + SxgDiagFreeResources(adapter);
7911 +
7912 + SxgFreeMCastAddrs(adapter);
7913 +
7914 + if (SXG_TIMER_ALLOCATED(adapter->ResetTimer)) {
7915 + SXG_CANCEL_TIMER(adapter->ResetTimer, TimerCancelled);
7916 + SXG_FREE_TIMER(adapter->ResetTimer);
7917 + }
7918 + if (SXG_TIMER_ALLOCATED(adapter->RssTimer)) {
7919 + SXG_CANCEL_TIMER(adapter->RssTimer, TimerCancelled);
7920 + SXG_FREE_TIMER(adapter->RssTimer);
7921 + }
7922 + if (SXG_TIMER_ALLOCATED(adapter->OffloadTimer)) {
7923 + SXG_CANCEL_TIMER(adapter->OffloadTimer, TimerCancelled);
7924 + SXG_FREE_TIMER(adapter->OffloadTimer);
7925 + }
7926 +
7927 + adapter->BasicAllocations = FALSE;
7928 +
7929 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XFreeRes",
7930 + adapter, adapter->MaxTcbs, 0, 0);
7931 +}
7932 +#endif
7933 +
7934 +/*
7935 + * sxg_allocate_complete -
7936 + *
7937 + * This routine is called when a memory allocation has completed.
7938 + *
7939 + * Arguments -
7940 + * p_adapter_t - Our adapter structure
7941 + * VirtualAddress - Memory virtual address
7942 + * PhysicalAddress - Memory physical address
7943 + * Length - Length of memory allocated (or 0)
7944 + * Context - The type of buffer allocated
7945 + *
7946 + * Return
7947 + * None.
7948 + */
7949 +static void sxg_allocate_complete(p_adapter_t adapter,
7950 + void *VirtualAddress,
7951 + dma_addr_t PhysicalAddress,
7952 + u32 Length, SXG_BUFFER_TYPE Context)
7953 +{
7954 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AllocCmp",
7955 + adapter, VirtualAddress, Length, Context);
7956 + ASSERT(adapter->AllocationsPending);
7957 + --adapter->AllocationsPending;
7958 +
7959 + switch (Context) {
7960 +
7961 + case SXG_BUFFER_TYPE_RCV:
7962 + sxg_allocate_rcvblock_complete(adapter,
7963 + VirtualAddress,
7964 + PhysicalAddress, Length);
7965 + break;
7966 + case SXG_BUFFER_TYPE_SGL:
7967 + sxg_allocate_sgl_buffer_complete(adapter,
7968 + (PSXG_SCATTER_GATHER)
7969 + VirtualAddress,
7970 + PhysicalAddress, Length);
7971 + break;
7972 + }
7973 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAlocCmp",
7974 + adapter, VirtualAddress, Length, Context);
7975 +}
7976 +
7977 +/*
7978 + * sxg_allocate_buffer_memory - Shared memory allocation routine used for
7979 + * synchronous and asynchronous buffer allocations
7980 + *
7981 + * Arguments -
7982 + * adapter - A pointer to our adapter structure
7983 + * Size - block size to allocate
7984 + * BufferType - Type of buffer to allocate
7985 + *
7986 + * Return
7987 + * int
7988 + */
7989 +static int sxg_allocate_buffer_memory(p_adapter_t adapter,
7990 + u32 Size, SXG_BUFFER_TYPE BufferType)
7991 +{
7992 + int status;
7993 + void * Buffer;
7994 + dma_addr_t pBuffer;
7995 +
7996 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AllocMem",
7997 + adapter, Size, BufferType, 0);
7998 + // Grab the adapter lock and check the state.
7999 + // If we're in anything other than INITIALIZING or
8000 + // RUNNING state, fail. This is to prevent
8001 + // allocations in an improper driver state
8002 + spin_lock(&adapter->AdapterLock);
8003 +
8004 + // Increment the AllocationsPending count while holding
8005 + // the lock. Pause processing relies on this
8006 + ++adapter->AllocationsPending;
8007 + spin_unlock(&adapter->AdapterLock);
8008 +
8009 + // At initialization time allocate resources synchronously.
8010 + Buffer = pci_alloc_consistent(adapter->pcidev, Size, &pBuffer);
8011 + if (Buffer == NULL) {
8012 + spin_lock(&adapter->AdapterLock);
8013 + // Decrement the AllocationsPending count while holding
8014 + // the lock. Pause processing relies on this
8015 + --adapter->AllocationsPending;
8016 + spin_unlock(&adapter->AdapterLock);
8017 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AlcMemF1",
8018 + adapter, Size, BufferType, 0);
8019 + return (STATUS_RESOURCES);
8020 + }
8021 + sxg_allocate_complete(adapter, Buffer, pBuffer, Size, BufferType);
8022 + status = STATUS_SUCCESS;
8023 +
8024 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAlocMem",
8025 + adapter, Size, BufferType, status);
8026 + return (status);
8027 +}
8028 +
8029 +/*
8030 + * sxg_allocate_rcvblock_complete - Complete a receive descriptor block allocation
8031 + *
8032 + * Arguments -
8033 + * adapter - A pointer to our adapter structure
8034 + * RcvBlock - receive block virtual address
8035 + * PhysicalAddress - Physical address
8036 + * Length - Memory length
8037 + *
8038 + * Return
8039 + *
8040 + */
8041 +static void sxg_allocate_rcvblock_complete(p_adapter_t adapter,
8042 + void * RcvBlock,
8043 + dma_addr_t PhysicalAddress, u32 Length)
8044 +{
8045 + u32 i;
8046 + u32 BufferSize = adapter->ReceiveBufferSize;
8047 + u64 Paddr;
8048 + PSXG_RCV_BLOCK_HDR RcvBlockHdr;
8049 + unsigned char *RcvDataBuffer;
8050 + PSXG_RCV_DATA_BUFFER_HDR RcvDataBufferHdr;
8051 + PSXG_RCV_DESCRIPTOR_BLOCK RcvDescriptorBlock;
8052 + PSXG_RCV_DESCRIPTOR_BLOCK_HDR RcvDescriptorBlockHdr;
8053 +
8054 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AlRcvBlk",
8055 + adapter, RcvBlock, Length, 0);
8056 + if (RcvBlock == NULL) {
8057 + goto fail;
8058 + }
8059 + memset(RcvBlock, 0, Length);
8060 + ASSERT((BufferSize == SXG_RCV_DATA_BUFFER_SIZE) ||
8061 + (BufferSize == SXG_RCV_JUMBO_BUFFER_SIZE));
8062 + ASSERT(Length == SXG_RCV_BLOCK_SIZE(BufferSize));
8063 + // First, initialize the contained pool of receive data
8064 + // buffers. This initialization requires NBL/NB/MDL allocations,
8065 + // If any of them fail, free the block and return without
8066 + // queueing the shared memory
8067 + RcvDataBuffer = RcvBlock;
8068 +#if 0
8069 + for (i = 0, Paddr = *PhysicalAddress;
8070 + i < SXG_RCV_DESCRIPTORS_PER_BLOCK;
8071 + i++, Paddr.LowPart += BufferSize, RcvDataBuffer += BufferSize)
8072 +#endif
8073 + for (i = 0, Paddr = PhysicalAddress;
8074 + i < SXG_RCV_DESCRIPTORS_PER_BLOCK;
8075 + i++, Paddr += BufferSize, RcvDataBuffer += BufferSize) {
8076 + //
8077 + RcvDataBufferHdr =
8078 + (PSXG_RCV_DATA_BUFFER_HDR) (RcvDataBuffer +
8079 + SXG_RCV_DATA_BUFFER_HDR_OFFSET
8080 + (BufferSize));
8081 + RcvDataBufferHdr->VirtualAddress = RcvDataBuffer;
8082 + RcvDataBufferHdr->PhysicalAddress = Paddr;
8083 + RcvDataBufferHdr->State = SXG_BUFFER_UPSTREAM; // For FREE macro assertion
8084 + RcvDataBufferHdr->Size =
8085 + SXG_RCV_BUFFER_DATA_SIZE(BufferSize);
8086 +
8087 + SXG_ALLOCATE_RCV_PACKET(adapter, RcvDataBufferHdr);
8088 + if (RcvDataBufferHdr->SxgDumbRcvPacket == NULL)
8089 + goto fail;
8090 +
8091 + }
8092 +
8093 + // Place this entire block of memory on the AllRcvBlocks queue so it can be
8094 + // free later
8095 + RcvBlockHdr =
8096 + (PSXG_RCV_BLOCK_HDR) ((unsigned char *)RcvBlock +
8097 + SXG_RCV_BLOCK_HDR_OFFSET(BufferSize));
8098 + RcvBlockHdr->VirtualAddress = RcvBlock;
8099 + RcvBlockHdr->PhysicalAddress = PhysicalAddress;
8100 + spin_lock(&adapter->RcvQLock);
8101 + adapter->AllRcvBlockCount++;
8102 + InsertTailList(&adapter->AllRcvBlocks, &RcvBlockHdr->AllList);
8103 + spin_unlock(&adapter->RcvQLock);
8104 +
8105 + // Now free the contained receive data buffers that we initialized above
8106 + RcvDataBuffer = RcvBlock;
8107 + for (i = 0, Paddr = PhysicalAddress;
8108 + i < SXG_RCV_DESCRIPTORS_PER_BLOCK;
8109 + i++, Paddr += BufferSize, RcvDataBuffer += BufferSize) {
8110 + RcvDataBufferHdr = (PSXG_RCV_DATA_BUFFER_HDR) (RcvDataBuffer +
8111 + SXG_RCV_DATA_BUFFER_HDR_OFFSET
8112 + (BufferSize));
8113 + spin_lock(&adapter->RcvQLock);
8114 + SXG_FREE_RCV_DATA_BUFFER(adapter, RcvDataBufferHdr);
8115 + spin_unlock(&adapter->RcvQLock);
8116 + }
8117 +
8118 + // Locate the descriptor block and put it on a separate free queue
8119 + RcvDescriptorBlock = (PSXG_RCV_DESCRIPTOR_BLOCK) ((unsigned char *)RcvBlock +
8120 + SXG_RCV_DESCRIPTOR_BLOCK_OFFSET
8121 + (BufferSize));
8122 + RcvDescriptorBlockHdr =
8123 + (PSXG_RCV_DESCRIPTOR_BLOCK_HDR) ((unsigned char *)RcvBlock +
8124 + SXG_RCV_DESCRIPTOR_BLOCK_HDR_OFFSET
8125 + (BufferSize));
8126 + RcvDescriptorBlockHdr->VirtualAddress = RcvDescriptorBlock;
8127 + RcvDescriptorBlockHdr->PhysicalAddress = Paddr;
8128 + spin_lock(&adapter->RcvQLock);
8129 + SXG_FREE_RCV_DESCRIPTOR_BLOCK(adapter, RcvDescriptorBlockHdr);
8130 + spin_unlock(&adapter->RcvQLock);
8131 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAlRBlk",
8132 + adapter, RcvBlock, Length, 0);
8133 + return;
8134 + fail:
8135 + // Free any allocated resources
8136 + if (RcvBlock) {
8137 + RcvDataBuffer = RcvBlock;
8138 + for (i = 0; i < SXG_RCV_DESCRIPTORS_PER_BLOCK;
8139 + i++, RcvDataBuffer += BufferSize) {
8140 + RcvDataBufferHdr =
8141 + (PSXG_RCV_DATA_BUFFER_HDR) (RcvDataBuffer +
8142 + SXG_RCV_DATA_BUFFER_HDR_OFFSET
8143 + (BufferSize));
8144 + SXG_FREE_RCV_PACKET(RcvDataBufferHdr);
8145 + }
8146 + pci_free_consistent(adapter->pcidev,
8147 + Length, RcvBlock, PhysicalAddress);
8148 + }
8149 + DBG_ERROR("%s: OUT OF RESOURCES\n", __FUNCTION__);
8150 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_IMPORTANT, "RcvAFail",
8151 + adapter, adapter->FreeRcvBufferCount,
8152 + adapter->FreeRcvBlockCount, adapter->AllRcvBlockCount);
8153 + adapter->Stats.NoMem++;
8154 +}
8155 +
8156 +/*
8157 + * sxg_allocate_sgl_buffer_complete - Complete a SGL buffer allocation
8158 + *
8159 + * Arguments -
8160 + * adapter - A pointer to our adapter structure
8161 + * SxgSgl - SXG_SCATTER_GATHER buffer
8162 + * PhysicalAddress - Physical address
8163 + * Length - Memory length
8164 + *
8165 + * Return
8166 + *
8167 + */
8168 +static void sxg_allocate_sgl_buffer_complete(p_adapter_t adapter,
8169 + PSXG_SCATTER_GATHER SxgSgl,
8170 + dma_addr_t PhysicalAddress, u32 Length)
8171 +{
8172 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "AlSglCmp",
8173 + adapter, SxgSgl, Length, 0);
8174 + spin_lock(&adapter->SglQLock);
8175 + adapter->AllSglBufferCount++;
8176 + memset(SxgSgl, 0, sizeof(SXG_SCATTER_GATHER));
8177 + SxgSgl->PhysicalAddress = PhysicalAddress; /* *PhysicalAddress; */
8178 + SxgSgl->adapter = adapter; // Initialize backpointer once
8179 + InsertTailList(&adapter->AllSglBuffers, &SxgSgl->AllList);
8180 + spin_unlock(&adapter->SglQLock);
8181 + SxgSgl->State = SXG_BUFFER_BUSY;
8182 + SXG_FREE_SGL_BUFFER(adapter, SxgSgl, NULL);
8183 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XAlSgl",
8184 + adapter, SxgSgl, Length, 0);
8185 +}
8186 +
8187 +static unsigned char temp_mac_address[6] = { 0x00, 0xab, 0xcd, 0xef, 0x12, 0x69 };
8188 +
8189 +static void sxg_adapter_set_hwaddr(p_adapter_t adapter)
8190 +{
8191 +// DBG_ERROR ("%s ENTER card->config_set[%x] port[%d] physport[%d] funct#[%d]\n", __FUNCTION__,
8192 +// card->config_set, adapter->port, adapter->physport, adapter->functionnumber);
8193 +//
8194 +// sxg_dbg_macaddrs(adapter);
8195 +
8196 + memcpy(adapter->macaddr, temp_mac_address, sizeof(SXG_CONFIG_MAC));
8197 +// DBG_ERROR ("%s AFTER copying from config.macinfo into currmacaddr\n", __FUNCTION__);
8198 +// sxg_dbg_macaddrs(adapter);
8199 + if (!(adapter->currmacaddr[0] ||
8200 + adapter->currmacaddr[1] ||
8201 + adapter->currmacaddr[2] ||
8202 + adapter->currmacaddr[3] ||
8203 + adapter->currmacaddr[4] || adapter->currmacaddr[5])) {
8204 + memcpy(adapter->currmacaddr, adapter->macaddr, 6);
8205 + }
8206 + if (adapter->netdev) {
8207 + memcpy(adapter->netdev->dev_addr, adapter->currmacaddr, 6);
8208 + }
8209 +// DBG_ERROR ("%s EXIT port %d\n", __FUNCTION__, adapter->port);
8210 + sxg_dbg_macaddrs(adapter);
8211 +
8212 +}
8213 +
8214 +static int sxg_mac_set_address(p_net_device dev, void * ptr)
8215 +{
8216 +#if XXXTODO
8217 + p_adapter_t adapter = (p_adapter_t) netdev_priv(dev);
8218 + struct sockaddr *addr = ptr;
8219 +
8220 + DBG_ERROR("%s ENTER (%s)\n", __FUNCTION__, adapter->netdev->name);
8221 +
8222 + if (netif_running(dev)) {
8223 + return -EBUSY;
8224 + }
8225 + if (!adapter) {
8226 + return -EBUSY;
8227 + }
8228 + DBG_ERROR("sxg: %s (%s) curr %2.2X:%2.2X:%2.2X:%2.2X:%2.2X:%2.2X\n",
8229 + __FUNCTION__, adapter->netdev->name, adapter->currmacaddr[0],
8230 + adapter->currmacaddr[1], adapter->currmacaddr[2],
8231 + adapter->currmacaddr[3], adapter->currmacaddr[4],
8232 + adapter->currmacaddr[5]);
8233 + memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
8234 + memcpy(adapter->currmacaddr, addr->sa_data, dev->addr_len);
8235 + DBG_ERROR("sxg: %s (%s) new %2.2X:%2.2X:%2.2X:%2.2X:%2.2X:%2.2X\n",
8236 + __FUNCTION__, adapter->netdev->name, adapter->currmacaddr[0],
8237 + adapter->currmacaddr[1], adapter->currmacaddr[2],
8238 + adapter->currmacaddr[3], adapter->currmacaddr[4],
8239 + adapter->currmacaddr[5]);
8240 +
8241 + sxg_config_set(adapter, TRUE);
8242 +#endif
8243 + return 0;
8244 +}
8245 +
8246 +/*****************************************************************************/
8247 +/************* SXG DRIVER FUNCTIONS (below) ********************************/
8248 +/*****************************************************************************/
8249 +
8250 +/*
8251 + * sxg_initialize_adapter - Initialize adapter
8252 + *
8253 + * Arguments -
8254 + * adapter - A pointer to our adapter structure
8255 + *
8256 + * Return
8257 + * int
8258 + */
8259 +static int sxg_initialize_adapter(p_adapter_t adapter)
8260 +{
8261 + u32 RssIds, IsrCount;
8262 + u32 i;
8263 + int status;
8264 +
8265 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "InitAdpt",
8266 + adapter, 0, 0, 0);
8267 +
8268 + RssIds = 1; // XXXTODO SXG_RSS_CPU_COUNT(adapter);
8269 + IsrCount = adapter->MsiEnabled ? RssIds : 1;
8270 +
8271 + // Sanity check SXG_UCODE_REGS structure definition to
8272 + // make sure the length is correct
8273 + ASSERT(sizeof(SXG_UCODE_REGS) == SXG_REGISTER_SIZE_PER_CPU);
8274 +
8275 + // Disable interrupts
8276 + SXG_DISABLE_ALL_INTERRUPTS(adapter);
8277 +
8278 + // Set MTU
8279 + ASSERT((adapter->FrameSize == ETHERMAXFRAME) ||
8280 + (adapter->FrameSize == JUMBOMAXFRAME));
8281 + WRITE_REG(adapter->UcodeRegs[0].LinkMtu, adapter->FrameSize, TRUE);
8282 +
8283 + // Set event ring base address and size
8284 + WRITE_REG64(adapter,
8285 + adapter->UcodeRegs[0].EventBase, adapter->PEventRings, 0);
8286 + WRITE_REG(adapter->UcodeRegs[0].EventSize, EVENT_RING_SIZE, TRUE);
8287 +
8288 + // Per-ISR initialization
8289 + for (i = 0; i < IsrCount; i++) {
8290 + u64 Addr;
8291 + // Set interrupt status pointer
8292 + Addr = adapter->PIsr + (i * sizeof(u32));
8293 + WRITE_REG64(adapter, adapter->UcodeRegs[i].Isp, Addr, i);
8294 + }
8295 +
8296 + // XMT ring zero index
8297 + WRITE_REG64(adapter,
8298 + adapter->UcodeRegs[0].SPSendIndex,
8299 + adapter->PXmtRingZeroIndex, 0);
8300 +
8301 + // Per-RSS initialization
8302 + for (i = 0; i < RssIds; i++) {
8303 + // Release all event ring entries to the Microcode
8304 + WRITE_REG(adapter->UcodeRegs[i].EventRelease, EVENT_RING_SIZE,
8305 + TRUE);
8306 + }
8307 +
8308 + // Transmit ring base and size
8309 + WRITE_REG64(adapter,
8310 + adapter->UcodeRegs[0].XmtBase, adapter->PXmtRings, 0);
8311 + WRITE_REG(adapter->UcodeRegs[0].XmtSize, SXG_XMT_RING_SIZE, TRUE);
8312 +
8313 + // Receive ring base and size
8314 + WRITE_REG64(adapter,
8315 + adapter->UcodeRegs[0].RcvBase, adapter->PRcvRings, 0);
8316 + WRITE_REG(adapter->UcodeRegs[0].RcvSize, SXG_RCV_RING_SIZE, TRUE);
8317 +
8318 + // Populate the card with receive buffers
8319 + sxg_stock_rcv_buffers(adapter);
8320 +
8321 + // Initialize checksum offload capabilities. At the moment
8322 + // we always enable IP and TCP receive checksums on the card.
8323 + // Depending on the checksum configuration specified by the
8324 + // user, we can choose to report or ignore the checksum
8325 + // information provided by the card.
8326 + WRITE_REG(adapter->UcodeRegs[0].ReceiveChecksum,
8327 + SXG_RCV_TCP_CSUM_ENABLED | SXG_RCV_IP_CSUM_ENABLED, TRUE);
8328 +
8329 + // Initialize the MAC, XAUI
8330 + DBG_ERROR("sxg: %s ENTER sxg_initialize_link\n", __FUNCTION__);
8331 + status = sxg_initialize_link(adapter);
8332 + DBG_ERROR("sxg: %s EXIT sxg_initialize_link status[%x]\n", __FUNCTION__,
8333 + status);
8334 + if (status != STATUS_SUCCESS) {
8335 + return (status);
8336 + }
8337 + // Initialize Dead to FALSE.
8338 + // SlicCheckForHang or SlicDumpThread will take it from here.
8339 + adapter->Dead = FALSE;
8340 + adapter->PingOutstanding = FALSE;
8341 +
8342 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XInit",
8343 + adapter, 0, 0, 0);
8344 + return (STATUS_SUCCESS);
8345 +}
8346 +
8347 +/*
8348 + * sxg_fill_descriptor_block - Populate a descriptor block and give it to
8349 + * the card. The caller should hold the RcvQLock
8350 + *
8351 + * Arguments -
8352 + * adapter - A pointer to our adapter structure
8353 + * RcvDescriptorBlockHdr - Descriptor block to fill
8354 + *
8355 + * Return
8356 + * status
8357 + */
8358 +static int sxg_fill_descriptor_block(p_adapter_t adapter,
8359 + PSXG_RCV_DESCRIPTOR_BLOCK_HDR RcvDescriptorBlockHdr)
8360 +{
8361 + u32 i;
8362 + PSXG_RING_INFO RcvRingInfo = &adapter->RcvRingZeroInfo;
8363 + PSXG_RCV_DATA_BUFFER_HDR RcvDataBufferHdr;
8364 + PSXG_RCV_DESCRIPTOR_BLOCK RcvDescriptorBlock;
8365 + PSXG_CMD RingDescriptorCmd;
8366 + PSXG_RCV_RING RingZero = &adapter->RcvRings[0];
8367 +
8368 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "FilBlk",
8369 + adapter, adapter->RcvBuffersOnCard,
8370 + adapter->FreeRcvBufferCount, adapter->AllRcvBlockCount);
8371 +
8372 + ASSERT(RcvDescriptorBlockHdr);
8373 +
8374 + // If we don't have the resources to fill the descriptor block,
8375 + // return failure
8376 + if ((adapter->FreeRcvBufferCount < SXG_RCV_DESCRIPTORS_PER_BLOCK) ||
8377 + SXG_RING_FULL(RcvRingInfo)) {
8378 + adapter->Stats.NoMem++;
8379 + return (STATUS_FAILURE);
8380 + }
8381 + // Get a ring descriptor command
8382 + SXG_GET_CMD(RingZero,
8383 + RcvRingInfo, RingDescriptorCmd, RcvDescriptorBlockHdr);
8384 + ASSERT(RingDescriptorCmd);
8385 + RcvDescriptorBlockHdr->State = SXG_BUFFER_ONCARD;
8386 + RcvDescriptorBlock =
8387 + (PSXG_RCV_DESCRIPTOR_BLOCK) RcvDescriptorBlockHdr->VirtualAddress;
8388 +
8389 + // Fill in the descriptor block
8390 + for (i = 0; i < SXG_RCV_DESCRIPTORS_PER_BLOCK; i++) {
8391 + SXG_GET_RCV_DATA_BUFFER(adapter, RcvDataBufferHdr);
8392 + ASSERT(RcvDataBufferHdr);
8393 + SXG_REINIATIALIZE_PACKET(RcvDataBufferHdr->SxgDumbRcvPacket);
8394 + RcvDataBufferHdr->State = SXG_BUFFER_ONCARD;
8395 + RcvDescriptorBlock->Descriptors[i].VirtualAddress = (void *)RcvDataBufferHdr;
8396 + RcvDescriptorBlock->Descriptors[i].PhysicalAddress =
8397 + RcvDataBufferHdr->PhysicalAddress;
8398 + }
8399 + // Add the descriptor block to receive descriptor ring 0
8400 + RingDescriptorCmd->Sgl = RcvDescriptorBlockHdr->PhysicalAddress;
8401 +
8402 + // RcvBuffersOnCard is not protected via the receive lock (see
8403 + // sxg_process_event_queue) We don't want to grap a lock every time a
8404 + // buffer is returned to us, so we use atomic interlocked functions
8405 + // instead.
8406 + adapter->RcvBuffersOnCard += SXG_RCV_DESCRIPTORS_PER_BLOCK;
8407 +
8408 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DscBlk",
8409 + RcvDescriptorBlockHdr,
8410 + RingDescriptorCmd, RcvRingInfo->Head, RcvRingInfo->Tail);
8411 +
8412 + WRITE_REG(adapter->UcodeRegs[0].RcvCmd, 1, true);
8413 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XFilBlk",
8414 + adapter, adapter->RcvBuffersOnCard,
8415 + adapter->FreeRcvBufferCount, adapter->AllRcvBlockCount);
8416 + return (STATUS_SUCCESS);
8417 +}
8418 +
8419 +/*
8420 + * sxg_stock_rcv_buffers - Stock the card with receive buffers
8421 + *
8422 + * Arguments -
8423 + * adapter - A pointer to our adapter structure
8424 + *
8425 + * Return
8426 + * None
8427 + */
8428 +static void sxg_stock_rcv_buffers(p_adapter_t adapter)
8429 +{
8430 + PSXG_RCV_DESCRIPTOR_BLOCK_HDR RcvDescriptorBlockHdr;
8431 +
8432 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "StockBuf",
8433 + adapter, adapter->RcvBuffersOnCard,
8434 + adapter->FreeRcvBufferCount, adapter->AllRcvBlockCount);
8435 + // First, see if we've got less than our minimum threshold of
8436 + // receive buffers, there isn't an allocation in progress, and
8437 + // we haven't exceeded our maximum.. get another block of buffers
8438 + // None of this needs to be SMP safe. It's round numbers.
8439 + if ((adapter->FreeRcvBufferCount < SXG_MIN_RCV_DATA_BUFFERS) &&
8440 + (adapter->AllRcvBlockCount < SXG_MAX_RCV_BLOCKS) &&
8441 + (adapter->AllocationsPending == 0)) {
8442 + sxg_allocate_buffer_memory(adapter,
8443 + SXG_RCV_BLOCK_SIZE(adapter->
8444 + ReceiveBufferSize),
8445 + SXG_BUFFER_TYPE_RCV);
8446 + }
8447 + // Now grab the RcvQLock lock and proceed
8448 + spin_lock(&adapter->RcvQLock);
8449 + while (adapter->RcvBuffersOnCard < SXG_RCV_DATA_BUFFERS) {
8450 + PLIST_ENTRY _ple;
8451 +
8452 + // Get a descriptor block
8453 + RcvDescriptorBlockHdr = NULL;
8454 + if (adapter->FreeRcvBlockCount) {
8455 + _ple = RemoveHeadList(&adapter->FreeRcvBlocks);
8456 + RcvDescriptorBlockHdr = container_of(_ple, SXG_RCV_DESCRIPTOR_BLOCK_HDR, FreeList);
8457 + adapter->FreeRcvBlockCount--;
8458 + RcvDescriptorBlockHdr->State = SXG_BUFFER_BUSY;
8459 + }
8460 +
8461 + if (RcvDescriptorBlockHdr == NULL) {
8462 + // Bail out..
8463 + adapter->Stats.NoMem++;
8464 + break;
8465 + }
8466 + // Fill in the descriptor block and give it to the card
8467 + if (sxg_fill_descriptor_block(adapter, RcvDescriptorBlockHdr) ==
8468 + STATUS_FAILURE) {
8469 + // Free the descriptor block
8470 + SXG_FREE_RCV_DESCRIPTOR_BLOCK(adapter,
8471 + RcvDescriptorBlockHdr);
8472 + break;
8473 + }
8474 + }
8475 + spin_unlock(&adapter->RcvQLock);
8476 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XFilBlks",
8477 + adapter, adapter->RcvBuffersOnCard,
8478 + adapter->FreeRcvBufferCount, adapter->AllRcvBlockCount);
8479 +}
8480 +
8481 +/*
8482 + * sxg_complete_descriptor_blocks - Return descriptor blocks that have been
8483 + * completed by the microcode
8484 + *
8485 + * Arguments -
8486 + * adapter - A pointer to our adapter structure
8487 + * Index - Where the microcode is up to
8488 + *
8489 + * Return
8490 + * None
8491 + */
8492 +static void sxg_complete_descriptor_blocks(p_adapter_t adapter, unsigned char Index)
8493 +{
8494 + PSXG_RCV_RING RingZero = &adapter->RcvRings[0];
8495 + PSXG_RING_INFO RcvRingInfo = &adapter->RcvRingZeroInfo;
8496 + PSXG_RCV_DESCRIPTOR_BLOCK_HDR RcvDescriptorBlockHdr;
8497 + PSXG_CMD RingDescriptorCmd;
8498 +
8499 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "CmpRBlks",
8500 + adapter, Index, RcvRingInfo->Head, RcvRingInfo->Tail);
8501 +
8502 + // Now grab the RcvQLock lock and proceed
8503 + spin_lock(&adapter->RcvQLock);
8504 + ASSERT(Index != RcvRingInfo->Tail);
8505 + while (RcvRingInfo->Tail != Index) {
8506 + //
8507 + // Locate the current Cmd (ring descriptor entry), and
8508 + // associated receive descriptor block, and advance
8509 + // the tail
8510 + //
8511 + SXG_RETURN_CMD(RingZero,
8512 + RcvRingInfo,
8513 + RingDescriptorCmd, RcvDescriptorBlockHdr);
8514 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "CmpRBlk",
8515 + RcvRingInfo->Head, RcvRingInfo->Tail,
8516 + RingDescriptorCmd, RcvDescriptorBlockHdr);
8517 +
8518 + // Clear the SGL field
8519 + RingDescriptorCmd->Sgl = 0;
8520 + // Attempt to refill it and hand it right back to the
8521 + // card. If we fail to refill it, free the descriptor block
8522 + // header. The card will be restocked later via the
8523 + // RcvBuffersOnCard test
8524 + if (sxg_fill_descriptor_block(adapter, RcvDescriptorBlockHdr) ==
8525 + STATUS_FAILURE) {
8526 + SXG_FREE_RCV_DESCRIPTOR_BLOCK(adapter,
8527 + RcvDescriptorBlockHdr);
8528 + }
8529 + }
8530 + spin_unlock(&adapter->RcvQLock);
8531 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "XCRBlks",
8532 + adapter, Index, RcvRingInfo->Head, RcvRingInfo->Tail);
8533 +}
8534 +
8535 +
8536 +static struct pci_driver sxg_driver = {
8537 + .name = DRV_NAME,
8538 + .id_table = sxg_pci_tbl,
8539 + .probe = sxg_entry_probe,
8540 + .remove = sxg_entry_remove,
8541 +#if SXG_POWER_MANAGEMENT_ENABLED
8542 + .suspend = sxgpm_suspend,
8543 + .resume = sxgpm_resume,
8544 +#endif
8545 +/* .shutdown = slic_shutdown, MOOK_INVESTIGATE */
8546 +};
8547 +
8548 +static int __init sxg_module_init(void)
8549 +{
8550 + sxg_init_driver();
8551 +
8552 + if (debug >= 0)
8553 + sxg_debug = debug;
8554 +
8555 + return pci_register_driver(&sxg_driver);
8556 +}
8557 +
8558 +static void __exit sxg_module_cleanup(void)
8559 +{
8560 + pci_unregister_driver(&sxg_driver);
8561 +}
8562 +
8563 +module_init(sxg_module_init);
8564 +module_exit(sxg_module_cleanup);
8565 --- /dev/null
8566 +++ b/drivers/staging/sxg/sxgdbg.h
8567 @@ -0,0 +1,190 @@
8568 +/**************************************************************************
8569 + *
8570 + * Copyright © 2000-2008 Alacritech, Inc. All rights reserved.
8571 + *
8572 + * $Id: sxgdbg.h,v 1.1 2008/06/27 12:49:28 mook Exp $
8573 + *
8574 + * Redistribution and use in source and binary forms, with or without
8575 + * modification, are permitted provided that the following conditions
8576 + * are met:
8577 + *
8578 + * 1. Redistributions of source code must retain the above copyright
8579 + * notice, this list of conditions and the following disclaimer.
8580 + * 2. Redistributions in binary form must reproduce the above
8581 + * copyright notice, this list of conditions and the following
8582 + * disclaimer in the documentation and/or other materials provided
8583 + * with the distribution.
8584 + *
8585 + * THIS SOFTWARE IS PROVIDED BY ALACRITECH, INC. ``AS IS'' AND ANY
8586 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
8587 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
8588 + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ALACRITECH, INC. OR
8589 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
8590 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
8591 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
8592 + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
8593 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
8594 + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
8595 + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
8596 + * SUCH DAMAGE.
8597 + *
8598 + * The views and conclusions contained in the software and documentation
8599 + * are those of the authors and should not be interpreted as representing
8600 + * official policies, either expressed or implied, of Alacritech, Inc.
8601 + *
8602 + **************************************************************************/
8603 +
8604 +/*
8605 + * FILENAME: sxgdbg.h
8606 + *
8607 + * All debug and assertion-based definitions and macros are included
8608 + * in this file for the SXGOSS driver.
8609 + */
8610 +#ifndef _SXG_DEBUG_H_
8611 +#define _SXG_DEBUG_H_
8612 +
8613 +#define ATKDBG 1
8614 +#define ATK_TRACE_ENABLED 1
8615 +
8616 +#define DBG_ERROR(n, args...) printk(KERN_EMERG n, ##args)
8617 +
8618 +#ifdef ASSERT
8619 +#undef ASSERT
8620 +#endif
8621 +
8622 +#ifdef SXG_ASSERT_ENABLED
8623 +#ifndef ASSERT
8624 +#define ASSERT(a) \
8625 + { \
8626 + if (!(a)) { \
8627 + DBG_ERROR("ASSERT() Failure: file %s, function %s line %d\n",\
8628 + __FILE__, __FUNCTION__, __LINE__); \
8629 + } \
8630 + }
8631 +#endif
8632 +#else
8633 +#ifndef ASSERT
8634 +#define ASSERT(a)
8635 +#endif
8636 +#endif /* SXG_ASSERT_ENABLED */
8637 +
8638 +
8639 +#ifdef ATKDBG
8640 +/*
8641 + * Global for timer granularity; every driver must have an instance
8642 + * of this initialized to 0
8643 + */
8644 +
8645 +extern ulong ATKTimerDiv;
8646 +
8647 +/*
8648 + * trace_entry_t -
8649 + *
8650 + * This structure defines an entry in the trace buffer. The
8651 + * first few fields mean the same from entry to entry, while
8652 + * the meaning of last several fields change to suit the
8653 + * needs of the trace entry. Typically they are function call
8654 + * parameters.
8655 + */
8656 +typedef struct _trace_entry_s {
8657 + char name[8]; /* 8 character name - like 's'i'm'b'a'r'c'v' */
8658 + u32 time; /* Current clock tic */
8659 + unsigned char cpu; /* Current CPU */
8660 + unsigned char irql; /* Current IRQL */
8661 + unsigned char driver; /* The driver which added the trace call */
8662 + unsigned char pad2; /* pad to 4 byte boundary - will probably get used */
8663 + u32 arg1; /* Caller arg1 */
8664 + u32 arg2; /* Caller arg2 */
8665 + u32 arg3; /* Caller arg3 */
8666 + u32 arg4; /* Caller arg4 */
8667 +} trace_entry_t, *ptrace_entry_t;
8668 +
8669 +/*
8670 + * Driver types for driver field in trace_entry_t
8671 + */
8672 +#define TRACE_SXG 1
8673 +#define TRACE_VPCI 2
8674 +#define TRACE_SLIC 3
8675 +
8676 +#define TRACE_ENTRIES 1024
8677 +
8678 +typedef struct _sxg_trace_buffer_t
8679 +{
8680 + unsigned int size; /* aid for windbg extension */
8681 + unsigned int in; /* Where to add */
8682 + unsigned int level; /* Current Trace level */
8683 + spinlock_t lock; /* For MP tracing */
8684 + trace_entry_t entries[TRACE_ENTRIES];/* The circular buffer */
8685 +} sxg_trace_buffer_t;
8686 +
8687 +/*
8688 + * The trace levels
8689 + *
8690 + * XXX At the moment I am only defining critical, important, and noisy.
8691 + * I am leaving room for more if anyone wants them.
8692 + */
8693 +#define TRACE_NONE 0 /* For trace level - if no tracing wanted */
8694 +#define TRACE_CRITICAL 1 /* minimal tracing - only critical stuff */
8695 +#define TRACE_IMPORTANT 5 /* more tracing - anything important */
8696 +#define TRACE_NOISY 10 /* Everything in the world */
8697 +
8698 +
8699 +/**********************************************************************
8700 + *
8701 + * The macros themselves -
8702 + *
8703 + *********************************************************************/
8704 +#if ATK_TRACE_ENABLED
8705 +#define SXG_TRACE_INIT(buffer, tlevel) \
8706 +{ \
8707 + memset((buffer), 0, sizeof(sxg_trace_buffer_t)); \
8708 + (buffer)->level = (tlevel); \
8709 + (buffer)->size = TRACE_ENTRIES; \
8710 + spin_lock_init(&(buffer)->lock); \
8711 +}
8712 +#else
8713 +#define SXG_TRACE_INIT(buffer, tlevel)
8714 +#endif
8715 +
8716 +/*
8717 + * The trace macro. This is active only if ATK_TRACE_ENABLED is set.
8718 + */
8719 +#if ATK_TRACE_ENABLED
8720 +#define SXG_TRACE(tdriver, buffer, tlevel, tname, a1, a2, a3, a4) { \
8721 + if ((buffer) && ((buffer)->level >= (tlevel))) { \
8722 + unsigned int trace_irql = 0; /* ?????? FIX THIS */ \
8723 + unsigned int trace_len; \
8724 + ptrace_entry_t trace_entry; \
8725 + struct timeval timev; \
8726 + \
8727 + spin_lock(&(buffer)->lock); \
8728 + trace_entry = &(buffer)->entries[(buffer)->in]; \
8729 + do_gettimeofday(&timev); \
8730 + \
8731 + memset(trace_entry->name, 0, 8); \
8732 + trace_len = strlen(tname); \
8733 + trace_len = trace_len > 8 ? 8 : trace_len; \
8734 + memcpy(trace_entry->name, (tname), trace_len); \
8735 + trace_entry->time = timev.tv_usec; \
8736 + trace_entry->cpu = (unsigned char)(smp_processor_id() & 0xFF); \
8737 + trace_entry->driver = (tdriver); \
8738 + trace_entry->irql = trace_irql; \
8739 + trace_entry->arg1 = (ulong)(a1); \
8740 + trace_entry->arg2 = (ulong)(a2); \
8741 + trace_entry->arg3 = (ulong)(a3); \
8742 + trace_entry->arg4 = (ulong)(a4); \
8743 + \
8744 + (buffer)->in++; \
8745 + if ((buffer)->in == TRACE_ENTRIES) \
8746 + (buffer)->in = 0; \
8747 + \
8748 + spin_unlock(&(buffer)->lock); \
8749 + } \
8750 +}
8751 +#else
8752 +#define SXG_TRACE(tdriver, buffer, tlevel, tname, a1, a2, a3, a4)
8753 +#endif
8754 +
8755 +#endif
8756 +
8757 +#endif /* _SXG_DEBUG_H_ */
8758 --- /dev/null
8759 +++ b/drivers/staging/sxg/sxg.h
8760 @@ -0,0 +1,773 @@
8761 +/**************************************************************************
8762 + *
8763 + * Copyright © 2000-2008 Alacritech, Inc. All rights reserved.
8764 + *
8765 + * $Id: sxg.h,v 1.3 2008/07/24 17:25:08 chris Exp $
8766 + *
8767 + * Redistribution and use in source and binary forms, with or without
8768 + * modification, are permitted provided that the following conditions
8769 + * are met:
8770 + *
8771 + * 1. Redistributions of source code must retain the above copyright
8772 + * notice, this list of conditions and the following disclaimer.
8773 + * 2. Redistributions in binary form must reproduce the above
8774 + * copyright notice, this list of conditions and the following
8775 + * disclaimer in the documentation and/or other materials provided
8776 + * with the distribution.
8777 + *
8778 + * THIS SOFTWARE IS PROVIDED BY ALACRITECH, INC. ``AS IS'' AND ANY
8779 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
8780 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
8781 + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ALACRITECH, INC. OR
8782 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
8783 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
8784 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
8785 + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
8786 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
8787 + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
8788 + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
8789 + * SUCH DAMAGE.
8790 + *
8791 + * The views and conclusions contained in the software and documentation
8792 + * are those of the authors and should not be interpreted as representing
8793 + * official policies, either expressed or implied, of Alacritech, Inc.
8794 + *
8795 + **************************************************************************/
8796 +
8797 +/*
8798 + * FILENAME: sxg.h
8799 + *
8800 + * This is the base set of header definitions for the SXG driver.
8801 + */
8802 +#ifndef __SXG_DRIVER_H__
8803 +#define __SXG_DRIVER_H__
8804 +
8805 +#define p_net_device struct net_device *
8806 +// SXG_STATS - Probably move these to someplace where
8807 +// the slicstat (sxgstat?) program can get them.
8808 +typedef struct _SXG_STATS {
8809 + // Xmt
8810 + u32 XmtNBL; // Offload send NBL count
8811 + u64 DumbXmtBytes; // Dumbnic send bytes
8812 + u64 SlowXmtBytes; // Slowpath send bytes
8813 + u64 FastXmtBytes; // Fastpath send bytes
8814 + u64 DumbXmtPkts; // Dumbnic send packets
8815 + u64 SlowXmtPkts; // Slowpath send packets
8816 + u64 FastXmtPkts; // Fastpath send packets
8817 + u64 DumbXmtUcastPkts; // directed packets
8818 + u64 DumbXmtMcastPkts; // Multicast packets
8819 + u64 DumbXmtBcastPkts; // OID_GEN_BROADCAST_FRAMES_RCV
8820 + u64 DumbXmtUcastBytes; // OID_GEN_DIRECTED_BYTES_XMIT
8821 + u64 DumbXmtMcastBytes; // OID_GEN_MULTICAST_BYTES_XMIT
8822 + u64 DumbXmtBcastBytes; // OID_GEN_BROADCAST_BYTES_XMIT
8823 + u64 XmtErrors; // OID_GEN_XMIT_ERROR
8824 + u64 XmtDiscards; // OID_GEN_XMIT_DISCARDS
8825 + u64 XmtOk; // OID_GEN_XMIT_OK
8826 + u64 XmtQLen; // OID_GEN_TRANSMIT_QUEUE_LENGTH
8827 + u64 XmtZeroFull; // Transmit ring zero full
8828 + // Rcv
8829 + u32 RcvNBL; // Offload recieve NBL count
8830 + u64 DumbRcvBytes; // dumbnic recv bytes
8831 + u64 DumbRcvUcastBytes; // OID_GEN_DIRECTED_BYTES_RCV
8832 + u64 DumbRcvMcastBytes; // OID_GEN_MULTICAST_BYTES_RCV
8833 + u64 DumbRcvBcastBytes; // OID_GEN_BROADCAST_BYTES_RCV
8834 + u64 SlowRcvBytes; // Slowpath recv bytes
8835 + u64 FastRcvBytes; // Fastpath recv bytes
8836 + u64 DumbRcvPkts; // OID_GEN_DIRECTED_FRAMES_RCV
8837 + u64 DumbRcvTcpPkts; // See SxgCollectStats
8838 + u64 DumbRcvUcastPkts; // directed packets
8839 + u64 DumbRcvMcastPkts; // Multicast packets
8840 + u64 DumbRcvBcastPkts; // OID_GEN_BROADCAST_FRAMES_RCV
8841 + u64 SlowRcvPkts; // OID_GEN_DIRECTED_FRAMES_RCV
8842 + u64 RcvErrors; // OID_GEN_RCV_ERROR
8843 + u64 RcvDiscards; // OID_GEN_RCV_DISCARDS
8844 + u64 RcvNoBuffer; // OID_GEN_RCV_NO_BUFFER
8845 + u64 PdqFull; // Processed Data Queue Full
8846 + u64 EventRingFull; // Event ring full
8847 + // Verbose stats
8848 + u64 MaxSends; // Max sends outstanding
8849 + u64 NoSglBuf; // SGL buffer allocation failure
8850 + u64 SglFail; // NDIS SGL failure
8851 + u64 SglAsync; // NDIS SGL failure
8852 + u64 NoMem; // Memory allocation failure
8853 + u64 NumInts; // Interrupts
8854 + u64 FalseInts; // Interrupt with ISR == 0
8855 + u64 XmtDrops; // No sahara DRAM buffer for xmt
8856 + // Sahara receive status
8857 + u64 TransportCsum; // SXG_RCV_STATUS_TRANSPORT_CSUM
8858 + u64 TransportUflow; // SXG_RCV_STATUS_TRANSPORT_UFLOW
8859 + u64 TransportHdrLen; // SXG_RCV_STATUS_TRANSPORT_HDRLEN
8860 + u64 NetworkCsum; // SXG_RCV_STATUS_NETWORK_CSUM:
8861 + u64 NetworkUflow; // SXG_RCV_STATUS_NETWORK_UFLOW:
8862 + u64 NetworkHdrLen; // SXG_RCV_STATUS_NETWORK_HDRLEN:
8863 + u64 Parity; // SXG_RCV_STATUS_PARITY
8864 + u64 LinkParity; // SXG_RCV_STATUS_LINK_PARITY:
8865 + u64 LinkEarly; // SXG_RCV_STATUS_LINK_EARLY:
8866 + u64 LinkBufOflow; // SXG_RCV_STATUS_LINK_BUFOFLOW:
8867 + u64 LinkCode; // SXG_RCV_STATUS_LINK_CODE:
8868 + u64 LinkDribble; // SXG_RCV_STATUS_LINK_DRIBBLE:
8869 + u64 LinkCrc; // SXG_RCV_STATUS_LINK_CRC:
8870 + u64 LinkOflow; // SXG_RCV_STATUS_LINK_OFLOW:
8871 + u64 LinkUflow; // SXG_RCV_STATUS_LINK_UFLOW:
8872 +} SXG_STATS, *PSXG_STATS;
8873 +
8874 +
8875 +/****************************************************************************
8876 + * DUMB-NIC Send path definitions
8877 + ****************************************************************************/
8878 +
8879 +#define SXG_COMPLETE_DUMB_SEND(_pAdapt, _skb) { \
8880 + ASSERT(_skb); \
8881 + dev_kfree_skb_irq(_skb); \
8882 +}
8883 +
8884 +#define SXG_DROP_DUMB_SEND(_pAdapt, _skb) { \
8885 + ASSERT(_skb); \
8886 + dev_kfree_skb(_skb); \
8887 +}
8888 +
8889 +// Locate current receive header buffer location. Use this
8890 +// instead of RcvDataHdr->VirtualAddress since the data
8891 +// may have been offset by SXG_ADVANCE_MDL_OFFSET
8892 +#define SXG_RECEIVE_DATA_LOCATION(_RcvDataHdr) (_RcvDataHdr)->skb->data
8893 +
8894 +/************************************************************************
8895 + * Dumb-NIC receive processing
8896 + ************************************************************************/
8897 +// Define an SXG_PACKET as an NDIS_PACKET
8898 +#define PSXG_PACKET struct sk_buff *
8899 +// Indications array size
8900 +#define SXG_RCV_ARRAYSIZE 64
8901 +
8902 +#define SXG_ALLOCATE_RCV_PACKET(_pAdapt, _RcvDataBufferHdr) { \
8903 + struct sk_buff * skb; \
8904 + skb = alloc_skb(2048, GFP_ATOMIC); \
8905 + if (skb) { \
8906 + (_RcvDataBufferHdr)->skb = skb; \
8907 + skb->next = NULL; \
8908 + } else { \
8909 + (_RcvDataBufferHdr)->skb = NULL; \
8910 + } \
8911 +}
8912 +
8913 +#define SXG_FREE_RCV_PACKET(_RcvDataBufferHdr) { \
8914 + if((_RcvDataBufferHdr)->skb) { \
8915 + dev_kfree_skb((_RcvDataBufferHdr)->skb); \
8916 + } \
8917 +}
8918 +
8919 +// Macro to add a NDIS_PACKET to an indication array
8920 +// If we fill up our array of packet pointers, then indicate this
8921 +// block up now and start on a new one.
8922 +#define SXG_ADD_RCV_PACKET(_pAdapt, _Packet, _PrevPacket, _IndicationList, _NumPackets) { \
8923 + (_IndicationList)[_NumPackets] = (_Packet); \
8924 + (_NumPackets)++; \
8925 + if((_NumPackets) == SXG_RCV_ARRAYSIZE) { \
8926 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "IndicRcv", \
8927 + (_NumPackets), 0, 0, 0); \
8928 + netif_rx((_IndicationList),(_NumPackets)); \
8929 + (_NumPackets) = 0; \
8930 + } \
8931 +}
8932 +
8933 +#define SXG_INDICATE_PACKETS(_pAdapt, _IndicationList, _NumPackets) { \
8934 + if(_NumPackets) { \
8935 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "IndicRcv", \
8936 + (_NumPackets), 0, 0, 0); \
8937 + netif_rx((_IndicationList),(_NumPackets)); \
8938 + (_NumPackets) = 0; \
8939 + } \
8940 +}
8941 +
8942 +#define SXG_REINIATIALIZE_PACKET(_Packet) \
8943 + {} /*_NdisReinitializePacket(_Packet)*/ /* this is not necessary with an skb */
8944 +
8945 +// Definitions to initialize Dumb-nic Receive NBLs
8946 +#define SXG_RCV_PACKET_BUFFER_HDR(_Packet) (((PSXG_RCV_NBL_RESERVED)((_Packet)->MiniportReservedEx))->RcvDataBufferHdr)
8947 +
8948 +#define SXG_RCV_SET_CHECKSUM_INFO(_Packet, _Cpi) \
8949 + NDIS_PER_PACKET_INFO_FROM_PACKET((_Packet), TcpIpChecksumPacketInfo) = (PVOID)(_Cpi)
8950 +
8951 +#define SXG_RCV_SET_TOEPLITZ(_Packet, _Toeplitz, _Type, _Function) { \
8952 + NDIS_PACKET_SET_HASH_VALUE((_Packet), (_Toeplitz)); \
8953 + NDIS_PACKET_SET_HASH_TYPE((_Packet), (_Type)); \
8954 + NDIS_PACKET_SET_HASH_FUNCTION((_Packet), (_Function)); \
8955 +}
8956 +
8957 +#define SXG_RCV_SET_VLAN_INFO(_Packet, _VlanId, _Priority) { \
8958 + NDIS_PACKET_8021Q_INFO _Packet8021qInfo; \
8959 + _Packet8021qInfo.TagHeader.VlanId = (_VlanId); \
8960 + _Packet8021qInfo.TagHeader.UserPriority = (_Priority); \
8961 + NDIS_PER_PACKET_INFO_FROM_PACKET((_Packet), Ieee8021QNetBufferListInfo) = \
8962 + _Packet8021qInfo.Value; \
8963 +}
8964 +
8965 +#define SXG_ADJUST_RCV_PACKET(_Packet, _RcvDataBufferHdr, _Event) { \
8966 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "DumbRcv", \
8967 + (_RcvDataBufferHdr), (_Packet), \
8968 + (_Event)->Status, 0); \
8969 + ASSERT((_Event)->Length <= (_RcvDataBufferHdr)->Size); \
8970 + Packet->len = (_Event)->Length; \
8971 +}
8972 +
8973 +///////////////////////////////////////////////////////////////////////////////
8974 +// Macros to free a receive data buffer and receive data descriptor block
8975 +///////////////////////////////////////////////////////////////////////////////
8976 +// NOTE - Lock must be held with RCV macros
8977 +#define SXG_GET_RCV_DATA_BUFFER(_pAdapt, _Hdr) { \
8978 + PLIST_ENTRY _ple; \
8979 + _Hdr = NULL; \
8980 + if((_pAdapt)->FreeRcvBufferCount) { \
8981 + ASSERT(!(IsListEmpty(&(_pAdapt)->FreeRcvBuffers))); \
8982 + _ple = RemoveHeadList(&(_pAdapt)->FreeRcvBuffers); \
8983 + (_Hdr) = container_of(_ple, SXG_RCV_DATA_BUFFER_HDR, FreeList); \
8984 + (_pAdapt)->FreeRcvBufferCount--; \
8985 + ASSERT((_Hdr)->State == SXG_BUFFER_FREE); \
8986 + } \
8987 +}
8988 +
8989 +#define SXG_FREE_RCV_DATA_BUFFER(_pAdapt, _Hdr) { \
8990 + SXG_TRACE(TRACE_SXG, SxgTraceBuffer, TRACE_NOISY, "RtnDHdr", \
8991 + (_Hdr), (_pAdapt)->FreeRcvBufferCount, \
8992 + (_Hdr)->State, (_Hdr)->VirtualAddress); \
8993 +/* SXG_RESTORE_MDL_OFFSET(_Hdr); */ \
8994 + (_pAdapt)->FreeRcvBufferCount++; \
8995 + ASSERT(((_pAdapt)->AllRcvBlockCount * SXG_RCV_DESCRIPTORS_PER_BLOCK) >= (_pAdapt)->FreeRcvBufferCount); \
8996 + ASSERT((_Hdr)->State != SXG_BUFFER_FREE); \
8997 + (_Hdr)->State = SXG_BUFFER_FREE; \
8998 + InsertTailList(&(_pAdapt)->FreeRcvBuffers, &((_Hdr)->FreeList)); \
8999 +}
9000 +
9001 +#define SXG_FREE_RCV_DESCRIPTOR_BLOCK(_pAdapt, _Hdr) { \
9002 + ASSERT((_Hdr)->State != SXG_BUFFER_FREE); \
9003 + (_Hdr)->State = SXG_BUFFER_FREE; \
9004 + (_pAdapt)->FreeRcvBlockCount++; \
9005 + ASSERT((_pAdapt)->AllRcvBlockCount >= (_pAdapt)->FreeRcvBlockCount); \
9006 + InsertTailList(&(_pAdapt)->FreeRcvBlocks, &(_Hdr)->FreeList); \
9007 +}
9008 +
9009 +// SGL macros
9010 +#define SXG_FREE_SGL_BUFFER(_pAdapt, _Sgl, _NB) { \
9011 + spin_lock(&(_pAdapt)->SglQLock); \
9012 + (_pAdapt)->FreeSglBufferCount++; \
9013 + ASSERT((_pAdapt)->AllSglBufferCount >= (_pAdapt)->FreeSglBufferCount);\
9014 + ASSERT(!((_Sgl)->State & SXG_BUFFER_FREE)); \
9015 + (_Sgl)->State = SXG_BUFFER_FREE; \
9016 + InsertTailList(&(_pAdapt)->FreeSglBuffers, &(_Sgl)->FreeList); \
9017 + spin_unlock(&(_pAdapt)->SglQLock); \
9018 +}
9019 +
9020 +// Get an SGL buffer from the free queue. The first part of this macro
9021 +// attempts to keep ahead of buffer depletion by allocating more when
9022 +// we hit a minimum threshold. Note that we don't grab the lock
9023 +// until after that. We're dealing with round numbers here, so we don't need to,
9024 +// and not grabbing it avoids a possible double-trip.
9025 +#define SXG_GET_SGL_BUFFER(_pAdapt, _Sgl) { \
9026 + PLIST_ENTRY _ple; \
9027 + if ((_pAdapt->FreeSglBufferCount < SXG_MIN_SGL_BUFFERS) && \
9028 + (_pAdapt->AllSglBufferCount < SXG_MAX_SGL_BUFFERS) && \
9029 + (_pAdapt->AllocationsPending == 0)) { \
9030 + sxg_allocate_buffer_memory(_pAdapt, \
9031 + (sizeof(SXG_SCATTER_GATHER) + SXG_SGL_BUF_SIZE),\
9032 + SXG_BUFFER_TYPE_SGL); \
9033 + } \
9034 + _Sgl = NULL; \
9035 + spin_lock(&(_pAdapt)->SglQLock); \
9036 + if((_pAdapt)->FreeSglBufferCount) { \
9037 + ASSERT(!(IsListEmpty(&(_pAdapt)->FreeSglBuffers))); \
9038 + _ple = RemoveHeadList(&(_pAdapt)->FreeSglBuffers); \
9039 + (_Sgl) = container_of(_ple, SXG_SCATTER_GATHER, FreeList); \
9040 + (_pAdapt)->FreeSglBufferCount--; \
9041 + ASSERT((_Sgl)->State == SXG_BUFFER_FREE); \
9042 + (_Sgl)->State = SXG_BUFFER_BUSY; \
9043 + (_Sgl)->pSgl = NULL; \
9044 + } \
9045 + spin_unlock(&(_pAdapt)->SglQLock); \
9046 +}
9047 +
9048 +//
9049 +// SXG_MULTICAST_ADDRESS
9050 +//
9051 +// Linked list of multicast addresses.
9052 +typedef struct _SXG_MULTICAST_ADDRESS {
9053 + unsigned char Address[6];
9054 + struct _SXG_MULTICAST_ADDRESS *Next;
9055 +} SXG_MULTICAST_ADDRESS, *PSXG_MULTICAST_ADDRESS;
9056 +
9057 +// Structure to maintain chimney send and receive buffer queues.
9058 +// This structure maintains NET_BUFFER_LIST queues that are
9059 +// given to us via the Chimney MiniportTcpOffloadSend and
9060 +// MiniportTcpOffloadReceive routines. This structure DOES NOT
9061 +// manage our data buffer queue
9062 +typedef struct _SXG_BUFFER_QUEUE {
9063 + u32 Type; // Slow or fast - See below
9064 + u32 Direction; // Xmt or Rcv
9065 + u32 Bytes; // Byte count
9066 + u32 * Head; // Send queue head
9067 + u32 * Tail; // Send queue tail
9068 +// PNET_BUFFER_LIST NextNBL; // Short cut - next NBL
9069 +// PNET_BUFFER NextNB; // Short cut - next NB
9070 +} SXG_BUFFER_QUEUE, *PSXG_BUFFER_QUEUE;
9071 +
9072 +#define SXG_SLOW_SEND_BUFFER 0
9073 +#define SXG_FAST_SEND_BUFFER 1
9074 +#define SXG_RECEIVE_BUFFER 2
9075 +
9076 +#define SXG_INIT_BUFFER(_Buffer, _Type) { \
9077 + (_Buffer)->Type = (_Type); \
9078 + if((_Type) == SXG_RECEIVE_BUFFER) { \
9079 + (_Buffer)->Direction = 0; \
9080 + } else { \
9081 + (_Buffer)->Direction = NDIS_SG_LIST_WRITE_TO_DEVICE; \
9082 + } \
9083 + (_Buffer)->Bytes = 0; \
9084 + (_Buffer)->Head = NULL; \
9085 + (_Buffer)->Tail = NULL; \
9086 +}
9087 +
9088 +
9089 +#define SXG_RSS_CPU_COUNT(_pAdapt) \
9090 + ((_pAdapt)->RssEnabled ? NR_CPUS : 1)
9091 +
9092 +/****************************************************************************
9093 + * DRIVER and ADAPTER structures
9094 + ****************************************************************************/
9095 +
9096 +// Adapter states - These states closely match the adapter states
9097 +// documented in the DDK (with a few exceptions).
9098 +typedef enum _SXG_STATE {
9099 + SXG_STATE_INITIALIZING, // Initializing
9100 + SXG_STATE_BOOTDIAG, // Boot-Diagnostic mode
9101 + SXG_STATE_PAUSING, // Pausing
9102 + SXG_STATE_PAUSED, // Paused
9103 + SXG_STATE_RUNNING, // Running
9104 + SXG_STATE_RESETTING, // Reset in progress
9105 + SXG_STATE_SLEEP, // Sleeping
9106 + SXG_STATE_DIAG, // Diagnostic mode
9107 + SXG_STATE_HALTING, // Halting
9108 + SXG_STATE_HALTED, // Down or not-initialized
9109 + SXG_STATE_SHUTDOWN // shutdown
9110 +} SXG_STATE, *PSXG_STATE;
9111 +
9112 +// Link state
9113 +typedef enum _SXG_LINK_STATE {
9114 + SXG_LINK_DOWN,
9115 + SXG_LINK_UP
9116 +} SXG_LINK_STATE, *PSXG_LINK_STATE;
9117 +
9118 +// Link initialization timeout in 100us units
9119 +#define SXG_LINK_TIMEOUT 100000 // 10 Seconds - REDUCE!
9120 +
9121 +
9122 +// Microcode file selection codes
9123 +typedef enum _SXG_UCODE_SEL {
9124 + SXG_UCODE_SAHARA, // Sahara ucode
9125 + SXG_UCODE_SDIAGCPU, // Sahara CPU diagnostic ucode
9126 + SXG_UCODE_SDIAGSYS // Sahara system diagnostic ucode
9127 +} SXG_UCODE_SEL;
9128 +
9129 +
9130 +#define SXG_DISABLE_ALL_INTERRUPTS(_padapt) sxg_disable_interrupt(_padapt)
9131 +#define SXG_ENABLE_ALL_INTERRUPTS(_padapt) sxg_enable_interrupt(_padapt)
9132 +
9133 +// This probably lives in a proto.h file. Move later
9134 +#define SXG_MULTICAST_PACKET(_pether) ((_pether)->ether_dhost[0] & 0x01)
9135 +#define SXG_BROADCAST_PACKET(_pether) ((*(u32 *)(_pether)->ether_dhost == 0xFFFFFFFF) && \
9136 + (*(u16 *)&(_pether)->ether_dhost[4] == 0xFFFF))
9137 +
9138 +// For DbgPrints
9139 +#define SXG_ID DPFLTR_IHVNETWORK_ID
9140 +#define SXG_ERROR DPFLTR_ERROR_LEVEL
9141 +
9142 +//
9143 +// SXG_DRIVER structure -
9144 +//
9145 +// contains information about the sxg driver. There is only
9146 +// one of these, and it is defined as a global.
9147 +typedef struct _SXG_DRIVER {
9148 + struct _adapter_t *Adapters; // Linked list of adapters
9149 + ushort AdapterID; // Maintain unique adapter ID
9150 +} SXG_DRIVER, *PSXG_DRIVER;
9151 +
9152 +#ifdef STATUS_SUCCESS
9153 +#undef STATUS_SUCCESS
9154 +#endif
9155 +
9156 +#define STATUS_SUCCESS 0
9157 +#define STATUS_PENDING 0
9158 +#define STATUS_FAILURE -1
9159 +#define STATUS_ERROR -2
9160 +#define STATUS_NOT_SUPPORTED -3
9161 +#define STATUS_BUFFER_TOO_SHORT -4
9162 +#define STATUS_RESOURCES -5
9163 +
9164 +#define SLIC_MAX_CARDS 32
9165 +#define SLIC_MAX_PORTS 4 /* Max # of ports per card */
9166 +#if SLIC_DUMP_ENABLED
9167 +// Dump buffer size
9168 +//
9169 +// This cannot be bigger than the max DMA size the card supports,
9170 +// given the current code structure in the host and ucode.
9171 +// Mojave supports 16K, Oasis supports 16K-1, so
9172 +// just set this at 15K, shouldnt make that much of a diff.
9173 +#define DUMP_BUF_SIZE 0x3C00
9174 +#endif
9175 +
9176 +#define MIN(a, b) ((u32)(a) < (u32)(b) ? (a) : (b))
9177 +#define MAX(a, b) ((u32)(a) > (u32)(b) ? (a) : (b))
9178 +
9179 +typedef struct _mcast_address_t
9180 +{
9181 + unsigned char address[6];
9182 + struct _mcast_address_t *next;
9183 +} mcast_address_t, *p_mcast_address_t;
9184 +
9185 +#define CARD_DOWN 0x00000000
9186 +#define CARD_UP 0x00000001
9187 +#define CARD_FAIL 0x00000002
9188 +#define CARD_DIAG 0x00000003
9189 +#define CARD_SLEEP 0x00000004
9190 +
9191 +#define ADAPT_DOWN 0x00
9192 +#define ADAPT_UP 0x01
9193 +#define ADAPT_FAIL 0x02
9194 +#define ADAPT_RESET 0x03
9195 +#define ADAPT_SLEEP 0x04
9196 +
9197 +#define ADAPT_FLAGS_BOOTTIME 0x0001
9198 +#define ADAPT_FLAGS_IS64BIT 0x0002
9199 +#define ADAPT_FLAGS_PENDINGLINKDOWN 0x0004
9200 +#define ADAPT_FLAGS_FIBERMEDIA 0x0008
9201 +#define ADAPT_FLAGS_LOCKS_ALLOCED 0x0010
9202 +#define ADAPT_FLAGS_INT_REGISTERED 0x0020
9203 +#define ADAPT_FLAGS_LOAD_TIMER_SET 0x0040
9204 +#define ADAPT_FLAGS_STATS_TIMER_SET 0x0080
9205 +#define ADAPT_FLAGS_RESET_TIMER_SET 0x0100
9206 +
9207 +#define LINK_DOWN 0x00
9208 +#define LINK_CONFIG 0x01
9209 +#define LINK_UP 0x02
9210 +
9211 +#define LINK_10MB 0x00
9212 +#define LINK_100MB 0x01
9213 +#define LINK_AUTOSPEED 0x02
9214 +#define LINK_1000MB 0x03
9215 +#define LINK_10000MB 0x04
9216 +
9217 +#define LINK_HALFD 0x00
9218 +#define LINK_FULLD 0x01
9219 +#define LINK_AUTOD 0x02
9220 +
9221 +#define MAC_DIRECTED 0x00000001
9222 +#define MAC_BCAST 0x00000002
9223 +#define MAC_MCAST 0x00000004
9224 +#define MAC_PROMISC 0x00000008
9225 +#define MAC_LOOPBACK 0x00000010
9226 +#define MAC_ALLMCAST 0x00000020
9227 +
9228 +#define SLIC_DUPLEX(x) ((x==LINK_FULLD) ? "FDX" : "HDX")
9229 +#define SLIC_SPEED(x) ((x==LINK_100MB) ? "100Mb" : ((x==LINK_1000MB) ? "1000Mb" : " 10Mb"))
9230 +#define SLIC_LINKSTATE(x) ((x==LINK_DOWN) ? "Down" : "Up ")
9231 +#define SLIC_ADAPTER_STATE(x) ((x==ADAPT_UP) ? "UP" : "Down")
9232 +#define SLIC_CARD_STATE(x) ((x==CARD_UP) ? "UP" : "Down")
9233 +
9234 +
9235 +typedef struct _ether_header
9236 +{
9237 + unsigned char ether_dhost[6];
9238 + unsigned char ether_shost[6];
9239 + ushort ether_type;
9240 +} ether_header, *p_ether_header;
9241 +
9242 +
9243 +#define NUM_CFG_SPACES 2
9244 +#define NUM_CFG_REGS 64
9245 +
9246 +typedef struct _physcard_t
9247 +{
9248 + struct _adapter_t *adapter[SLIC_MAX_PORTS];
9249 + struct _physcard_t *next;
9250 + unsigned int adapters_allocd;
9251 +} physcard_t, *p_physcard_t;
9252 +
9253 +typedef struct _sxgbase_driver
9254 +{
9255 + spinlock_t driver_lock;
9256 + unsigned long flags; /* irqsave for spinlock */
9257 + u32 num_sxg_cards;
9258 + u32 num_sxg_ports;
9259 + u32 num_sxg_ports_active;
9260 + u32 dynamic_intagg;
9261 + p_physcard_t phys_card;
9262 +} sxgbase_driver_t;
9263 +
9264 +
9265 +typedef struct _adapter_t
9266 +{
9267 + void * ifp;
9268 + unsigned int port;
9269 + p_physcard_t physcard;
9270 + unsigned int physport;
9271 + unsigned int cardindex;
9272 + unsigned int card_size;
9273 + unsigned int chipid;
9274 + unsigned int busnumber;
9275 + unsigned int slotnumber;
9276 + unsigned int functionnumber;
9277 + ushort vendid;
9278 + ushort devid;
9279 + ushort subsysid;
9280 + u32 irq;
9281 +
9282 + void * sxg_adapter;
9283 + u32 nBusySend;
9284 +
9285 + void __iomem * base_addr;
9286 + u32 memorylength;
9287 + u32 drambase;
9288 + u32 dramlength;
9289 + unsigned int queues_initialized;
9290 + unsigned int allocated;
9291 + unsigned int activated;
9292 + u32 intrregistered;
9293 + unsigned int isp_initialized;
9294 + unsigned int gennumber;
9295 + u32 curaddrupper;
9296 + u32 isrcopy;
9297 + unsigned char state;
9298 + unsigned char linkstate;
9299 + unsigned char linkspeed;
9300 + unsigned char linkduplex;
9301 + unsigned int flags;
9302 + unsigned char macaddr[6];
9303 + unsigned char currmacaddr[6];
9304 + u32 macopts;
9305 + ushort devflags_prev;
9306 + u64 mcastmask;
9307 + p_mcast_address_t mcastaddrs;
9308 + struct timer_list pingtimer;
9309 + u32 pingtimerset;
9310 + struct timer_list statstimer;
9311 + u32 statstimerset;
9312 + struct timer_list vpci_timer;
9313 + u32 vpci_timerset;
9314 + struct timer_list loadtimer;
9315 + u32 loadtimerset;
9316 +
9317 + u32 xmitq_full;
9318 + u32 all_reg_writes;
9319 + u32 icr_reg_writes;
9320 + u32 isr_reg_writes;
9321 + u32 error_interrupts;
9322 + u32 error_rmiss_interrupts;
9323 + u32 rx_errors;
9324 + u32 rcv_drops;
9325 + u32 rcv_interrupts;
9326 + u32 xmit_interrupts;
9327 + u32 linkevent_interrupts;
9328 + u32 upr_interrupts;
9329 + u32 num_isrs;
9330 + u32 false_interrupts;
9331 + u32 tx_packets;
9332 + u32 xmit_completes;
9333 + u32 tx_drops;
9334 + u32 rcv_broadcasts;
9335 + u32 rcv_multicasts;
9336 + u32 rcv_unicasts;
9337 + u32 max_isr_rcvs;
9338 + u32 max_isr_xmits;
9339 + u32 rcv_interrupt_yields;
9340 + u32 intagg_period;
9341 + struct net_device_stats stats;
9342 + u32 * MiniportHandle; // Our miniport handle
9343 + SXG_STATE State; // Adapter state
9344 + SXG_LINK_STATE LinkState; // Link state
9345 + u64 LinkSpeed; // Link Speed
9346 + u32 PowerState; // NDIS power state
9347 + struct _adapter_t *Next; // Linked list
9348 + ushort AdapterID; // 1..n
9349 + unsigned char MacAddr[6]; // Our permanent HW mac address
9350 + unsigned char CurrMacAddr[6]; // Our Current mac address
9351 + p_net_device netdev;
9352 + p_net_device next_netdevice;
9353 + struct pci_dev * pcidev;
9354 +
9355 + PSXG_MULTICAST_ADDRESS MulticastAddrs; // Multicast list
9356 + u64 MulticastMask; // Multicast mask
9357 + u32 * InterruptHandle; // Register Interrupt handle
9358 + u32 InterruptLevel; // From Resource list
9359 + u32 InterruptVector; // From Resource list
9360 + spinlock_t AdapterLock; /* Serialize access adapter routines */
9361 + spinlock_t Bit64RegLock; /* For writing 64-bit addresses */
9362 + PSXG_HW_REGS HwRegs; // Sahara HW Register Memory (BAR0/1)
9363 + PSXG_UCODE_REGS UcodeRegs; // Microcode Register Memory (BAR2/3)
9364 + PSXG_TCB_REGS TcbRegs; // Same as Ucode regs - See sxghw.h
9365 + ushort ResetDpcCount; // For timeout
9366 + ushort RssDpcCount; // For timeout
9367 + ushort VendorID; // Vendor ID
9368 + ushort DeviceID; // Device ID
9369 + ushort SubSystemID; // Sub-System ID
9370 + ushort FrameSize; // Maximum frame size
9371 + u32 * DmaHandle; // NDIS DMA handle
9372 + u32 * PacketPoolHandle; // Used with NDIS 5.2 only. Don't ifdef out
9373 + u32 * BufferPoolHandle; // Used with NDIS 5.2 only. Don't ifdef out
9374 + u32 MacFilter; // NDIS MAC Filter
9375 + ushort IpId; // For slowpath
9376 + PSXG_EVENT_RING EventRings; // Host event rings. 1/CPU to 16 max
9377 + dma_addr_t PEventRings; // Physical address
9378 + u32 NextEvent[SXG_MAX_RSS]; // Current location in ring
9379 + dma_addr_t PTcbBuffers; // TCB Buffers - physical address
9380 + dma_addr_t PTcbCompBuffers; // TCB Composite Buffers - phys addr
9381 + PSXG_XMT_RING XmtRings; // Transmit rings
9382 + dma_addr_t PXmtRings; // Transmit rings - physical address
9383 + SXG_RING_INFO XmtRingZeroInfo; // Transmit ring 0 info
9384 + spinlock_t XmtZeroLock; /* Transmit ring 0 lock */
9385 + u32 * XmtRingZeroIndex; // Shared XMT ring 0 index
9386 + dma_addr_t PXmtRingZeroIndex; // Shared XMT ring 0 index - physical
9387 + LIST_ENTRY FreeProtocolHeaders;// Free protocol headers
9388 + u32 FreeProtoHdrCount; // Count
9389 + void * ProtocolHeaders; // Block of protocol header
9390 + dma_addr_t PProtocolHeaders; // Block of protocol headers - phys
9391 +
9392 + PSXG_RCV_RING RcvRings; // Receive rings
9393 + dma_addr_t PRcvRings; // Receive rings - physical address
9394 + SXG_RING_INFO RcvRingZeroInfo; // Receive ring 0 info
9395 +
9396 + u32 * Isr; // Interrupt status register
9397 + dma_addr_t PIsr; // ISR - physical address
9398 + u32 IsrCopy[SXG_MAX_RSS]; // Copy of ISR
9399 + ushort InterruptsEnabled; // Bitmask of enabled vectors
9400 + unsigned char * IndirectionTable; // RSS indirection table
9401 + dma_addr_t PIndirectionTable; // Physical address
9402 + ushort RssTableSize; // From NDIS_RECEIVE_SCALE_PARAMETERS
9403 + ushort HashKeySize; // From NDIS_RECEIVE_SCALE_PARAMETERS
9404 + unsigned char HashSecretKey[40]; // rss key
9405 + u32 HashInformation;
9406 + // Receive buffer queues
9407 + spinlock_t RcvQLock; /* Receive Queue Lock */
9408 + LIST_ENTRY FreeRcvBuffers; // Free SXG_DATA_BUFFER queue
9409 + LIST_ENTRY FreeRcvBlocks; // Free SXG_RCV_DESCRIPTOR_BLOCK Q
9410 + LIST_ENTRY AllRcvBlocks; // All SXG_RCV_BLOCKs
9411 + ushort FreeRcvBufferCount; // Number of free rcv data buffers
9412 + ushort FreeRcvBlockCount; // # of free rcv descriptor blocks
9413 + ushort AllRcvBlockCount; // Number of total receive blocks
9414 + ushort ReceiveBufferSize; // SXG_RCV_DATA/JUMBO_BUFFER_SIZE only
9415 + u32 AllocationsPending; // Receive allocation pending
9416 + u32 RcvBuffersOnCard; // SXG_DATA_BUFFERS owned by card
9417 + // SGL buffers
9418 + spinlock_t SglQLock; /* SGL Queue Lock */
9419 + LIST_ENTRY FreeSglBuffers; // Free SXG_SCATTER_GATHER
9420 + LIST_ENTRY AllSglBuffers; // All SXG_SCATTER_GATHER
9421 + ushort FreeSglBufferCount; // Number of free SGL buffers
9422 + ushort AllSglBufferCount; // Number of total SGL buffers
9423 + u32 CurrentTime; // Tick count
9424 + u32 FastpathConnections;// # of fastpath connections
9425 + // Various single-bit flags:
9426 + u32 BasicAllocations:1; // Locks and listheads
9427 + u32 IntRegistered:1; // Interrupt registered
9428 + u32 PingOutstanding:1; // Ping outstanding to card
9429 + u32 Dead:1; // Card dead
9430 + u32 DumpDriver:1; // OID_SLIC_DRIVER_DUMP request
9431 + u32 DumpCard:1; // OID_SLIC_CARD_DUMP request
9432 + u32 DumpCmdRunning:1; // Dump command in progress
9433 + u32 DebugRunning:1; // AGDB debug in progress
9434 + u32 JumboEnabled:1; // Jumbo frames enabled
9435 + u32 MsiEnabled:1; // MSI interrupt enabled
9436 + u32 RssEnabled:1; // RSS Enabled
9437 + u32 FailOnBadEeprom:1; // Fail on Bad Eeprom
9438 + u32 DiagStart:1; // Init adapter for diagnostic start
9439 + // Stats
9440 + u32 PendingRcvCount; // Outstanding rcv indications
9441 + u32 PendingXmtCount; // Outstanding send requests
9442 + SXG_STATS Stats; // Statistics
9443 + u32 ReassBufs; // Number of reassembly buffers
9444 + // Card Crash Info
9445 + ushort CrashLocation; // Microcode crash location
9446 + unsigned char CrashCpu; // Sahara CPU ID
9447 + // Diagnostics
9448 + // PDIAG_CMD DiagCmds; // List of free diagnostic commands
9449 + // PDIAG_BUFFER DiagBuffers; // List of free diagnostic buffers
9450 + // PDIAG_REQ DiagReqQ; // List of outstanding (asynchronous) diag requests
9451 + // u32 DiagCmdTimeout; // Time out for diag cmds (seconds) XXXTODO - replace with SXG_PARAM var?
9452 + // unsigned char DiagDmaDesc[DMA_CPU_CTXS]; // Free DMA descriptors bit field (32 CPU ctx * 8 DMA ctx)
9453 +
9454 + /////////////////////////////////////////////////////////////////////
9455 + // Put preprocessor-conditional fields at the end so we don't
9456 + // have to recompile sxgdbg everytime we reconfigure the driver
9457 + /////////////////////////////////////////////////////////////////////
9458 + void * PendingSetRss; // Pending RSS parameter change
9459 + u32 IPv4HdrSize; // Shared 5.2/6.0 encap param
9460 + unsigned char * InterruptInfo; // Allocated by us during AddDevice
9461 +#if defined(CONFIG_X86)
9462 + u32 AddrUpper; // Upper 32 bits of 64-bit register
9463 +#endif
9464 + //#if SXG_FAILURE_DUMP
9465 + // NDIS_EVENT DumpThreadEvent; // syncronize dump thread
9466 + // BOOLEAN DumpThreadRunning; // termination flag
9467 + // PSXG_DUMP_CMD DumpBuffer; // 68k - Cmd and Buffer
9468 + // dma_addr_t PDumpBuffer; // Physical address
9469 + //#endif // SXG_FAILURE_DUMP
9470 +
9471 +} adapter_t, *p_adapter_t;
9472 +
9473 +#if SLIC_DUMP_ENABLED
9474 +#define SLIC_DUMP_REQUESTED 1
9475 +#define SLIC_DUMP_IN_PROGRESS 2
9476 +#define SLIC_DUMP_DONE 3
9477 +
9478 +/****************************************************************************
9479 + *
9480 + * Microcode crash information structure. This
9481 + * structure is written out to the card's SRAM when the microcode panic's.
9482 + *
9483 + ****************************************************************************/
9484 +typedef struct _slic_crash_info {
9485 + ushort cpu_id;
9486 + ushort crash_pc;
9487 +} slic_crash_info, *p_slic_crash_info;
9488 +
9489 +#define CRASH_INFO_OFFSET 0x155C
9490 +
9491 +#endif
9492 +
9493 +#define UPDATE_STATS(largestat, newstat, oldstat) \
9494 +{ \
9495 + if ((newstat) < (oldstat)) \
9496 + (largestat) += ((newstat) + (0xFFFFFFFF - oldstat + 1)); \
9497 + else \
9498 + (largestat) += ((newstat) - (oldstat)); \
9499 +}
9500 +
9501 +#define UPDATE_STATS_GB(largestat, newstat, oldstat) \
9502 +{ \
9503 + (largestat) += ((newstat) - (oldstat)); \
9504 +}
9505 +
9506 +#define ETHER_EQ_ADDR(_AddrA, _AddrB, _Result) \
9507 +{ \
9508 + _Result = TRUE; \
9509 + if (*(u32 *)(_AddrA) != *(u32 *)(_AddrB)) \
9510 + _Result = FALSE; \
9511 + if (*(u16 *)(&((_AddrA)[4])) != *(u16 *)(&((_AddrB)[4]))) \
9512 + _Result = FALSE; \
9513 +}
9514 +
9515 +#define ETHERMAXFRAME 1514
9516 +#define JUMBOMAXFRAME 9014
9517 +
9518 +#if defined(CONFIG_X86_64) || defined(CONFIG_IA64)
9519 +#define SXG_GET_ADDR_LOW(_addr) (u32)((u64)(_addr) & 0x00000000FFFFFFFF)
9520 +#define SXG_GET_ADDR_HIGH(_addr) (u32)(((u64)(_addr) >> 32) & 0x00000000FFFFFFFF)
9521 +#else
9522 +#define SXG_GET_ADDR_LOW(_addr) (u32)_addr
9523 +#define SXG_GET_ADDR_HIGH(_addr) (u32)0
9524 +#endif
9525 +
9526 +#define FLUSH TRUE
9527 +#define DONT_FLUSH FALSE
9528 +
9529 +#define SIOCSLICDUMPCARD SIOCDEVPRIVATE+9
9530 +#define SIOCSLICSETINTAGG SIOCDEVPRIVATE+10
9531 +#define SIOCSLICTRACEDUMP SIOCDEVPRIVATE+11
9532 +
9533 +#endif /* __SXG_DRIVER_H__ */
9534 --- /dev/null
9535 +++ b/drivers/staging/sxg/sxghif.h
9536 @@ -0,0 +1,861 @@
9537 +/*
9538 + * Copyright © 1997-2007 Alacritech, Inc. All rights reserved
9539 + *
9540 + * $Id: sxghif.h,v 1.5 2008/07/24 19:18:22 chris Exp $
9541 + *
9542 + * sxghif.h:
9543 + *
9544 + * This file contains structures and definitions for the
9545 + * Alacritech Sahara host interface
9546 + */
9547 +
9548 +/*******************************************************************************
9549 + * UCODE Registers
9550 + *******************************************************************************/
9551 +typedef struct _SXG_UCODE_REGS {
9552 + // Address 0 - 0x3F = Command codes 0-15 for TCB 0. Excode 0
9553 + u32 Icr; // Code = 0 (extended), ExCode = 0 - Int control
9554 + u32 RsvdReg1; // Code = 1 - TOE -NA
9555 + u32 RsvdReg2; // Code = 2 - TOE -NA
9556 + u32 RsvdReg3; // Code = 3 - TOE -NA
9557 + u32 RsvdReg4; // Code = 4 - TOE -NA
9558 + u32 RsvdReg5; // Code = 5 - TOE -NA
9559 + u32 CardUp; // Code = 6 - Microcode initialized when 1
9560 + u32 RsvdReg7; // Code = 7 - TOE -NA
9561 + u32 CodeNotUsed[8]; // Codes 8-15 not used. ExCode = 0
9562 + // This brings us to ExCode 1 at address 0x40 = Interrupt status pointer
9563 + u32 Isp; // Code = 0 (extended), ExCode = 1
9564 + u32 PadEx1[15]; // Codes 1-15 not used with extended codes
9565 + // ExCode 2 = Interrupt Status Register
9566 + u32 Isr; // Code = 0 (extended), ExCode = 2
9567 + u32 PadEx2[15];
9568 + // ExCode 3 = Event base register. Location of event rings
9569 + u32 EventBase; // Code = 0 (extended), ExCode = 3
9570 + u32 PadEx3[15];
9571 + // ExCode 4 = Event ring size
9572 + u32 EventSize; // Code = 0 (extended), ExCode = 4
9573 + u32 PadEx4[15];
9574 + // ExCode 5 = TCB Buffers base address
9575 + u32 TcbBase; // Code = 0 (extended), ExCode = 5
9576 + u32 PadEx5[15];
9577 + // ExCode 6 = TCB Composite Buffers base address
9578 + u32 TcbCompBase; // Code = 0 (extended), ExCode = 6
9579 + u32 PadEx6[15];
9580 + // ExCode 7 = Transmit ring base address
9581 + u32 XmtBase; // Code = 0 (extended), ExCode = 7
9582 + u32 PadEx7[15];
9583 + // ExCode 8 = Transmit ring size
9584 + u32 XmtSize; // Code = 0 (extended), ExCode = 8
9585 + u32 PadEx8[15];
9586 + // ExCode 9 = Receive ring base address
9587 + u32 RcvBase; // Code = 0 (extended), ExCode = 9
9588 + u32 PadEx9[15];
9589 + // ExCode 10 = Receive ring size
9590 + u32 RcvSize; // Code = 0 (extended), ExCode = 10
9591 + u32 PadEx10[15];
9592 + // ExCode 11 = Read EEPROM Config
9593 + u32 Config; // Code = 0 (extended), ExCode = 11
9594 + u32 PadEx11[15];
9595 + // ExCode 12 = Multicast bits 31:0
9596 + u32 McastLow; // Code = 0 (extended), ExCode = 12
9597 + u32 PadEx12[15];
9598 + // ExCode 13 = Multicast bits 63:32
9599 + u32 McastHigh; // Code = 0 (extended), ExCode = 13
9600 + u32 PadEx13[15];
9601 + // ExCode 14 = Ping
9602 + u32 Ping; // Code = 0 (extended), ExCode = 14
9603 + u32 PadEx14[15];
9604 + // ExCode 15 = Link MTU
9605 + u32 LinkMtu; // Code = 0 (extended), ExCode = 15
9606 + u32 PadEx15[15];
9607 + // ExCode 16 = Download synchronization
9608 + u32 LoadSync; // Code = 0 (extended), ExCode = 16
9609 + u32 PadEx16[15];
9610 + // ExCode 17 = Upper DRAM address bits on 32-bit systems
9611 + u32 Upper; // Code = 0 (extended), ExCode = 17
9612 + u32 PadEx17[15];
9613 + // ExCode 18 = Slowpath Send Index Address
9614 + u32 SPSendIndex; // Code = 0 (extended), ExCode = 18
9615 + u32 PadEx18[15];
9616 + u32 RsvdXF; // Code = 0 (extended), ExCode = 19
9617 + u32 PadEx19[15];
9618 + // ExCode 20 = Aggregation
9619 + u32 Aggregation; // Code = 0 (extended), ExCode = 20
9620 + u32 PadEx20[15];
9621 + // ExCode 21 = Receive MDL push timer
9622 + u32 PushTicks; // Code = 0 (extended), ExCode = 21
9623 + u32 PadEx21[15];
9624 + // ExCode 22 = TOE NA
9625 + u32 AckFrequency; // Code = 0 (extended), ExCode = 22
9626 + u32 PadEx22[15];
9627 + // ExCode 23 = TOE NA
9628 + u32 RsvdReg23;
9629 + u32 PadEx23[15];
9630 + // ExCode 24 = TOE NA
9631 + u32 RsvdReg24;
9632 + u32 PadEx24[15];
9633 + // ExCode 25 = TOE NA
9634 + u32 RsvdReg25; // Code = 0 (extended), ExCode = 25
9635 + u32 PadEx25[15];
9636 + // ExCode 26 = Receive checksum requirements
9637 + u32 ReceiveChecksum; // Code = 0 (extended), ExCode = 26
9638 + u32 PadEx26[15];
9639 + // ExCode 27 = RSS Requirements
9640 + u32 Rss; // Code = 0 (extended), ExCode = 27
9641 + u32 PadEx27[15];
9642 + // ExCode 28 = RSS Table
9643 + u32 RssTable; // Code = 0 (extended), ExCode = 28
9644 + u32 PadEx28[15];
9645 + // ExCode 29 = Event ring release entries
9646 + u32 EventRelease; // Code = 0 (extended), ExCode = 29
9647 + u32 PadEx29[15];
9648 + // ExCode 30 = Number of receive bufferlist commands on ring 0
9649 + u32 RcvCmd; // Code = 0 (extended), ExCode = 30
9650 + u32 PadEx30[15];
9651 + // ExCode 31 = slowpath transmit command - Data[31:0] = 1
9652 + u32 XmtCmd; // Code = 0 (extended), ExCode = 31
9653 + u32 PadEx31[15];
9654 + // ExCode 32 = Dump command
9655 + u32 DumpCmd; // Code = 0 (extended), ExCode = 32
9656 + u32 PadEx32[15];
9657 + // ExCode 33 = Debug command
9658 + u32 DebugCmd; // Code = 0 (extended), ExCode = 33
9659 + u32 PadEx33[15];
9660 + // There are 128 possible extended commands - each of account for 16
9661 + // words (including the non-relevent base command codes 1-15).
9662 + // Pad for the remainder of these here to bring us to the next CPU
9663 + // base. As extended codes are added, reduce the first array value in
9664 + // the following field
9665 + u32 PadToNextCpu[94][16]; // 94 = 128 - 34 (34 = Excodes 0 - 33)
9666 +} SXG_UCODE_REGS, *PSXG_UCODE_REGS;
9667 +
9668 +// Interrupt control register (0) values
9669 +#define SXG_ICR_DISABLE 0x00000000
9670 +#define SXG_ICR_ENABLE 0x00000001
9671 +#define SXG_ICR_MASK 0x00000002
9672 +#define SXG_ICR_MSGID_MASK 0xFFFF0000
9673 +#define SXG_ICR_MSGID_SHIFT 16
9674 +#define SXG_ICR(_MessageId, _Data) \
9675 + ((((_MessageId) << SXG_ICR_MSGID_SHIFT) & \
9676 + SXG_ICR_MSGID_MASK) | (_Data))
9677 +
9678 +// The Microcode supports up to 16 RSS queues
9679 +#define SXG_MAX_RSS 16
9680 +#define SXG_MAX_RSS_TABLE_SIZE 256 // 256-byte max
9681 +
9682 +#define SXG_RSS_TCP6 0x00000001 // RSS TCP over IPv6
9683 +#define SXG_RSS_TCP4 0x00000002 // RSS TCP over IPv4
9684 +#define SXG_RSS_LEGACY 0x00000004 // Line-base interrupts
9685 +#define SXG_RSS_TABLE_SIZE 0x0000FF00 // Table size mask
9686 +#define SXG_RSS_TABLE_SHIFT 8
9687 +#define SXG_RSS_BASE_CPU 0x00FF0000 // Base CPU (not used)
9688 +#define SXG_RSS_BASE_SHIFT 16
9689 +
9690 +#define SXG_RCV_IP_CSUM_ENABLED 0x00000001 // ExCode 26 (ReceiveChecksum)
9691 +#define SXG_RCV_TCP_CSUM_ENABLED 0x00000002 // ExCode 26 (ReceiveChecksum)
9692 +
9693 +#define SXG_XMT_CPUID_SHIFT 16
9694 +
9695 +#if VPCI
9696 +#define SXG_CHECK_FOR_HANG_TIME 3000
9697 +#else
9698 +#define SXG_CHECK_FOR_HANG_TIME 5
9699 +#endif
9700 +
9701 +/*
9702 + * TCB registers - This is really the same register memory area as UCODE_REGS
9703 + * above, but defined differently. Bits 17:06 of the address define the TCB,
9704 + * which means each TCB area occupies 0x40 (64) bytes, or 16 u32S. What really
9705 + * is happening is that these registers occupy the "PadEx[15]" areas in the
9706 + * SXG_UCODE_REGS definition above
9707 + */
9708 +typedef struct _SXG_TCB_REGS {
9709 + u32 ExCode; /* Extended codes - see SXG_UCODE_REGS */
9710 + u32 Xmt; /* Code = 1 - # of Xmt descriptors added to ring */
9711 + u32 Rcv; /* Code = 2 - # of Rcv descriptors added to ring */
9712 + u32 Rsvd1; /* Code = 3 - TOE NA */
9713 + u32 Rsvd2; /* Code = 4 - TOE NA */
9714 + u32 Rsvd3; /* Code = 5 - TOE NA */
9715 + u32 Invalid; /* Code = 6 - Reserved for "CardUp" see above */
9716 + u32 Rsvd4; /* Code = 7 - TOE NA */
9717 + u32 Rsvd5; /* Code = 8 - TOE NA */
9718 + u32 Pad[7]; /* Codes 8-15 - Not used. */
9719 +} SXG_TCB_REGS, *PSXG_TCB_REGS;
9720 +
9721 +/***************************************************************************
9722 + * ISR Format
9723 + * 31 0
9724 + * _______________________________________
9725 + * | | | | | | | | |
9726 + * |____|____|____|____|____|____|____|____|
9727 + * ^^^^ ^^^^ ^^^^ ^^^^ \ /
9728 + * ERR --|||| |||| |||| |||| -----------------
9729 + * EVENT ---||| |||| |||| |||| |
9730 + * ----|| |||| |||| |||| |-- Crash Address
9731 + * UPC -----| |||| |||| ||||
9732 + * LEVENT -------|||| |||| ||||
9733 + * PDQF --------||| |||| ||||
9734 + * RMISS ---------|| |||| ||||
9735 + * BREAK ----------| |||| ||||
9736 + * HBEATOK ------------|||| ||||
9737 + * NOHBEAT -------------||| ||||
9738 + * ERFULL --------------|| ||||
9739 + * XDROP ---------------| ||||
9740 + * -----------------||||
9741 + * -----------------||||--\
9742 + * ||---|-CpuId of crash
9743 + * |----/
9744 + ***************************************************************************/
9745 +#define SXG_ISR_ERR 0x80000000 // Error
9746 +#define SXG_ISR_EVENT 0x40000000 // Event ring event
9747 +#define SXG_ISR_NONE1 0x20000000 // Not used
9748 +#define SXG_ISR_UPC 0x10000000 // Dump/debug command complete
9749 +#define SXG_ISR_LINK 0x08000000 // Link event
9750 +#define SXG_ISR_PDQF 0x04000000 // Processed data queue full
9751 +#define SXG_ISR_RMISS 0x02000000 // Drop - no host buf
9752 +#define SXG_ISR_BREAK 0x01000000 // Breakpoint hit
9753 +#define SXG_ISR_PING 0x00800000 // Heartbeat response
9754 +#define SXG_ISR_DEAD 0x00400000 // Card crash
9755 +#define SXG_ISR_ERFULL 0x00200000 // Event ring full
9756 +#define SXG_ISR_XDROP 0x00100000 // XMT Drop - no DRAM bufs or XMT err
9757 +#define SXG_ISR_SPSEND 0x00080000 // Slow send complete
9758 +#define SXG_ISR_CPU 0x00070000 // Dead CPU mask
9759 +#define SXG_ISR_CPU_SHIFT 16 // Dead CPU shift
9760 +#define SXG_ISR_CRASH 0x0000FFFF // Crash address mask
9761 +
9762 +/***************************************************************************
9763 + *
9764 + * Event Ring entry
9765 + *
9766 + ***************************************************************************/
9767 +/*
9768 + * 31 15 0
9769 + * .___________________.___________________.
9770 + * |<------------ Pad 0 ------------>|
9771 + * |_________|_________|_________|_________|0 0x00
9772 + * |<------------ Pad 1 ------------>|
9773 + * |_________|_________|_________|_________|4 0x04
9774 + * |<------------ Pad 2 ------------>|
9775 + * |_________|_________|_________|_________|8 0x08
9776 + * |<----------- Event Word 0 ------------>|
9777 + * |_________|_________|_________|_________|12 0x0c
9778 + * |<----------- Event Word 1 ------------>|
9779 + * |_________|_________|_________|_________|16 0x10
9780 + * |<------------- Toeplitz ------------>|
9781 + * |_________|_________|_________|_________|20 0x14
9782 + * |<----- Length ---->|<------ TCB Id --->|
9783 + * |_________|_________|_________|_________|24 0x18
9784 + * |<----- Status ---->|Evnt Code|Flsh Code|
9785 + * |_________|_________|_________|_________|28 0x1c
9786 + * ^ ^^^^ ^^^^
9787 + * |- VALID |||| ||||- RBUFC
9788 + * |||| |||-- SLOWR
9789 + * |||| ||--- UNUSED
9790 + * |||| |---- FASTC
9791 + * ||||------ FASTR
9792 + * |||-------
9793 + * ||--------
9794 + * |---------
9795 + *
9796 + * Slowpath status:
9797 + * _______________________________________
9798 + * |<----- Status ---->|Evnt Code|Flsh Code|
9799 + * |_________|Cmd Index|_________|_________|28 0x1c
9800 + * ^^^ ^^^^
9801 + * ||| ||||- ISTCPIP6
9802 + * ||| |||-- IPONLY
9803 + * ||| ||--- RCVERR
9804 + * ||| |---- IPCBAD
9805 + * |||------ TCPCBAD
9806 + * ||------- ISTCPIP
9807 + * |-------- SCERR
9808 + *
9809 + */
9810 +#pragma pack(push, 1)
9811 +typedef struct _SXG_EVENT {
9812 + u32 Pad[1]; // not used
9813 + u32 SndUna; // SndUna value
9814 + u32 Resid; // receive MDL resid
9815 + union {
9816 + void * HostHandle; // Receive host handle
9817 + u32 Rsvd1; // TOE NA
9818 + struct {
9819 + u32 NotUsed;
9820 + u32 Rsvd2; // TOE NA
9821 + } Flush;
9822 + };
9823 + u32 Toeplitz; // RSS Toeplitz hash
9824 + union {
9825 + ushort Rsvd3; // TOE NA
9826 + ushort HdrOffset; // Slowpath
9827 + };
9828 + ushort Length; //
9829 + unsigned char Rsvd4; // TOE NA
9830 + unsigned char Code; // Event code
9831 + unsigned char CommandIndex; // New ring index
9832 + unsigned char Status; // Event status
9833 +} SXG_EVENT, *PSXG_EVENT;
9834 +#pragma pack(pop)
9835 +
9836 +// Event code definitions
9837 +#define EVENT_CODE_BUFFERS 0x01 // Receive buffer list command (ring 0)
9838 +#define EVENT_CODE_SLOWRCV 0x02 // Slowpath receive
9839 +#define EVENT_CODE_UNUSED 0x04 // Was slowpath commands complete
9840 +
9841 +// Status values
9842 +#define EVENT_STATUS_VALID 0x80 // Entry valid
9843 +
9844 +// Slowpath status
9845 +#define EVENT_STATUS_ERROR 0x40 // Completed with error. Index in next byte
9846 +#define EVENT_STATUS_TCPIP4 0x20 // TCPIPv4 frame
9847 +#define EVENT_STATUS_TCPBAD 0x10 // Bad TCP checksum
9848 +#define EVENT_STATUS_IPBAD 0x08 // Bad IP checksum
9849 +#define EVENT_STATUS_RCVERR 0x04 // Slowpath receive error
9850 +#define EVENT_STATUS_IPONLY 0x02 // IP frame
9851 +#define EVENT_STATUS_TCPIP6 0x01 // TCPIPv6 frame
9852 +#define EVENT_STATUS_TCPIP 0x21 // Combination of v4 and v6
9853 +
9854 +// Event ring
9855 +// Size must be power of 2, between 128 and 16k
9856 +#define EVENT_RING_SIZE 4096 // ??
9857 +#define EVENT_RING_BATCH 16 // Hand entries back 16 at a time.
9858 +#define EVENT_BATCH_LIMIT 256 // Stop processing events after 256 (16 * 16)
9859 +
9860 +typedef struct _SXG_EVENT_RING {
9861 + SXG_EVENT Ring[EVENT_RING_SIZE];
9862 +}SXG_EVENT_RING, *PSXG_EVENT_RING;
9863 +
9864 +/***************************************************************************
9865 + *
9866 + * TCB Buffers
9867 + *
9868 + ***************************************************************************/
9869 +// Maximum number of TCBS supported by hardware/microcode
9870 +#define SXG_MAX_TCB 4096
9871 +// Minimum TCBs before we fail initialization
9872 +#define SXG_MIN_TCB 512
9873 +// TCB Hash
9874 +// The bucket is determined by bits 11:4 of the toeplitz if we support 4k
9875 +// offloaded connections, 10:4 if we support 2k and so on.
9876 +#define SXG_TCB_BUCKET_SHIFT 4
9877 +#define SXG_TCB_PER_BUCKET 16
9878 +#define SXG_TCB_BUCKET_MASK 0xFF0 // Bucket portion of TCB ID
9879 +#define SXG_TCB_ELEMENT_MASK 0x00F // Element within bucket
9880 +#define SXG_TCB_BUCKETS 256 // 256 * 16 = 4k
9881 +
9882 +#define SXG_TCB_BUFFER_SIZE 512 // ASSERT format is correct
9883 +
9884 +#define SXG_TCB_RCVQ_SIZE 736
9885 +
9886 +#define SXG_TCB_COMPOSITE_BUFFER_SIZE 1024
9887 +
9888 +#define SXG_LOCATE_TCP_FRAME_HDR(_TcpObject, _IPv6) \
9889 + (((_TcpObject)->VlanId) ? \
9890 + ((_IPv6) ? /* Vlan frame header = yes */ \
9891 + &(_TcpObject)->CompBuffer->Frame.HasVlan.TcpIp6.SxgTcp : \
9892 + &(_TcpObject)->CompBuffer->Frame.HasVlan.TcpIp.SxgTcp) : \
9893 + ((_IPv6) ? /* Vlan frame header = No */ \
9894 + &(_TcpObject)->CompBuffer->Frame.NoVlan.TcpIp6.SxgTcp : \
9895 + &(_TcpObject)->CompBuffer->Frame.NoVlan.TcpIp.SxgTcp))
9896 +
9897 +#define SXG_LOCATE_IP_FRAME_HDR(_TcpObject) \
9898 + (_TcpObject)->VlanId ? \
9899 + &(_TcpObject)->CompBuffer->Frame.HasVlan.TcpIp.Ip : \
9900 + &(_TcpObject)->CompBuffer->Frame.NoVlan.TcpIp.Ip
9901 +
9902 +#define SXG_LOCATE_IP6_FRAME_HDR(_TcpObject) \
9903 + (_TcpObject)->VlanId ? \
9904 + &(_TcpObject)->CompBuffer->Frame.HasVlan.TcpIp6.Ip : \
9905 + &(_TcpObject)->CompBuffer->Frame.NoVlan.TcpIp6.Ip
9906 +
9907 +
9908 +#if DBG
9909 +// Horrible kludge to distinguish dumb-nic, slowpath, and
9910 +// fastpath traffic. Decrement the HopLimit by one
9911 +// for slowpath, two for fastpath. This assumes the limit is measurably
9912 +// greater than two, which I think is reasonable.
9913 +// Obviously this is DBG only. Maybe remove later, or #if 0 so we
9914 +// can set it when needed
9915 +#define SXG_DBG_HOP_LIMIT(_TcpObject, _FastPath) { \
9916 + PIPV6_HDR _Ip6FrameHdr; \
9917 + if((_TcpObject)->IPv6) { \
9918 + _Ip6FrameHdr = SXG_LOCATE_IP6_FRAME_HDR((_TcpObject)); \
9919 + if(_FastPath) { \
9920 + _Ip6FrameHdr->HopLimit = (_TcpObject)->Cached.TtlOrHopLimit - 2; \
9921 + } else { \
9922 + _Ip6FrameHdr->HopLimit = (_TcpObject)->Cached.TtlOrHopLimit - 1; \
9923 + } \
9924 + } \
9925 +}
9926 +#else
9927 +// Do nothing with free build
9928 +#define SXG_DBG_HOP_LIMIT(_TcpObject, _FastPath)
9929 +#endif
9930 +
9931 +/***************************************************************************
9932 + * Receive and transmit rings
9933 + ***************************************************************************/
9934 +#define SXG_MAX_RING_SIZE 256
9935 +#define SXG_XMT_RING_SIZE 128 // Start with 128
9936 +#define SXG_RCV_RING_SIZE 128 // Start with 128
9937 +#define SXG_MAX_ENTRIES 4096
9938 +
9939 +// Structure and macros to manage a ring
9940 +typedef struct _SXG_RING_INFO {
9941 + unsigned char Head; // Where we add entries - Note unsigned char:RING_SIZE
9942 + unsigned char Tail; // Where we pull off completed entries
9943 + ushort Size; // Ring size - Must be multiple of 2
9944 + void * Context[SXG_MAX_RING_SIZE]; // Shadow ring
9945 +} SXG_RING_INFO, *PSXG_RING_INFO;
9946 +
9947 +#define SXG_INITIALIZE_RING(_ring, _size) { \
9948 + (_ring).Head = 0; \
9949 + (_ring).Tail = 0; \
9950 + (_ring).Size = (_size); \
9951 +}
9952 +#define SXG_ADVANCE_INDEX(_index, _size) ((_index) = ((_index) + 1) & ((_size) - 1))
9953 +#define SXG_PREVIOUS_INDEX(_index, _size) (((_index) - 1) &((_size) - 1))
9954 +#define SXG_RING_EMPTY(_ring) ((_ring)->Head == (_ring)->Tail)
9955 +#define SXG_RING_FULL(_ring) ((((_ring)->Head + 1) & ((_ring)->Size - 1)) == (_ring)->Tail)
9956 +#define SXG_RING_ADVANCE_HEAD(_ring) SXG_ADVANCE_INDEX((_ring)->Head, ((_ring)->Size))
9957 +#define SXG_RING_RETREAT_HEAD(_ring) ((_ring)->Head = \
9958 + SXG_PREVIOUS_INDEX((_ring)->Head, (_ring)->Size))
9959 +#define SXG_RING_ADVANCE_TAIL(_ring) { \
9960 + ASSERT((_ring)->Tail != (_ring)->Head); \
9961 + SXG_ADVANCE_INDEX((_ring)->Tail, ((_ring)->Size)); \
9962 +}
9963 +// Set cmd to the next available ring entry, set the shadow context
9964 +// entry and advance the ring.
9965 +// The appropriate lock must be held when calling this macro
9966 +#define SXG_GET_CMD(_ring, _ringinfo, _cmd, _context) { \
9967 + if(SXG_RING_FULL(_ringinfo)) { \
9968 + (_cmd) = NULL; \
9969 + } else { \
9970 + (_cmd) = &(_ring)->Descriptors[(_ringinfo)->Head]; \
9971 + (_ringinfo)->Context[(_ringinfo)->Head] = (void *)(_context);\
9972 + SXG_RING_ADVANCE_HEAD(_ringinfo); \
9973 + } \
9974 +}
9975 +
9976 +// Abort the previously allocated command by retreating the head.
9977 +// NOTE - The appopriate lock MUST NOT BE DROPPED between the SXG_GET_CMD
9978 +// and SXG_ABORT_CMD calls.
9979 +#define SXG_ABORT_CMD(_ringinfo) { \
9980 + ASSERT(!(SXG_RING_EMPTY(_ringinfo))); \
9981 + SXG_RING_RETREAT_HEAD(_ringinfo); \
9982 + (_ringinfo)->Context[(_ringinfo)->Head] = NULL; \
9983 +}
9984 +
9985 +// For the given ring, return a pointer to the tail cmd and context,
9986 +// clear the context and advance the tail
9987 +#define SXG_RETURN_CMD(_ring, _ringinfo, _cmd, _context) { \
9988 + (_cmd) = &(_ring)->Descriptors[(_ringinfo)->Tail]; \
9989 + (_context) = (_ringinfo)->Context[(_ringinfo)->Tail]; \
9990 + (_ringinfo)->Context[(_ringinfo)->Tail] = NULL; \
9991 + SXG_RING_ADVANCE_TAIL(_ringinfo); \
9992 +}
9993 +
9994 +/***************************************************************************
9995 + *
9996 + * Host Command Buffer - commands to INIC via the Cmd Rings
9997 + *
9998 + ***************************************************************************/
9999 +/*
10000 + * 31 15 0
10001 + * .___________________.___________________.
10002 + * |<-------------- Sgl Low -------------->|
10003 + * |_________|_________|_________|_________|0 0x00
10004 + * |<-------------- Sgl High ------------->|
10005 + * |_________|_________|_________|_________|4 0x04
10006 + * |<------------- Sge 0 Low ----------->|
10007 + * |_________|_________|_________|_________|8 0x08
10008 + * |<------------- Sge 0 High ----------->|
10009 + * |_________|_________|_________|_________|12 0x0c
10010 + * |<------------ Sge 0 Length ---------->|
10011 + * |_________|_________|_________|_________|16 0x10
10012 + * |<----------- Window Update ----------->|
10013 + * |<-------- SP 1st SGE offset ---------->|
10014 + * |_________|_________|_________|_________|20 0x14
10015 + * |<----------- Total Length ------------>|
10016 + * |_________|_________|_________|_________|24 0x18
10017 + * |<----- LCnt ------>|<----- Flags ----->|
10018 + * |_________|_________|_________|_________|28 0x1c
10019 + */
10020 +#pragma pack(push, 1)
10021 +typedef struct _SXG_CMD {
10022 + dma_addr_t Sgl; // Physical address of SGL
10023 + union {
10024 + struct {
10025 + dma64_addr_t FirstSgeAddress;// Address of first SGE
10026 + u32 FirstSgeLength; // Length of first SGE
10027 + union {
10028 + u32 Rsvd1; // TOE NA
10029 + u32 SgeOffset; // Slowpath - 2nd SGE offset
10030 + u32 Resid; // MDL completion - clobbers update
10031 + };
10032 + union {
10033 + u32 TotalLength; // Total transfer length
10034 + u32 Mss; // LSO MSS
10035 + };
10036 + } Buffer;
10037 + };
10038 + union {
10039 + struct {
10040 + unsigned char Flags:4; // slowpath flags
10041 + unsigned char IpHl:4; // Ip header length (>>2)
10042 + unsigned char MacLen; // Mac header len
10043 + } CsumFlags;
10044 + struct {
10045 + ushort Flags:4; // slowpath flags
10046 + ushort TcpHdrOff:7; // TCP
10047 + ushort MacLen:5; // Mac header len
10048 + } LsoFlags;
10049 + ushort Flags; // flags
10050 + };
10051 + union {
10052 + ushort SgEntries; // SG entry count including first sge
10053 + struct {
10054 + unsigned char Status; // Copied from event status
10055 + unsigned char NotUsed;
10056 + } Status;
10057 + };
10058 +} SXG_CMD, *PSXG_CMD;
10059 +#pragma pack(pop)
10060 +
10061 +#pragma pack(push, 1)
10062 +typedef struct _VLAN_HDR {
10063 + ushort VlanTci;
10064 + ushort VlanTpid;
10065 +} VLAN_HDR, *PVLAN_HDR;
10066 +#pragma pack(pop)
10067 +
10068 +/*
10069 + * Slowpath Flags:
10070 + *
10071 + *
10072 + * LSS Flags:
10073 + * .---
10074 + * /.--- TCP Large segment send
10075 + * //.---
10076 + * ///.---
10077 + * 3 1 1 ////
10078 + * 1 5 0 ||||
10079 + * .___________________.____________vvvv.
10080 + * | |MAC | TCP | |
10081 + * | LCnt |hlen|hdroff|Flgs|
10082 + * |___________________|||||||||||||____|
10083 + *
10084 + *
10085 + * Checksum Flags
10086 + *
10087 + * .---
10088 + * /.---
10089 + * //.--- Checksum TCP
10090 + * ///.--- Checksum IP
10091 + * 3 1 //// No bits - normal send
10092 + * 1 5 7 ||||
10093 + * .___________________._______________vvvv.
10094 + * | | Offload | IP | |
10095 + * | LCnt |MAC hlen |Hlen|Flgs|
10096 + * |___________________|____|____|____|____|
10097 + *
10098 + */
10099 +// Slowpath CMD flags
10100 +#define SXG_SLOWCMD_CSUM_IP 0x01 // Checksum IP
10101 +#define SXG_SLOWCMD_CSUM_TCP 0x02 // Checksum TCP
10102 +#define SXG_SLOWCMD_LSO 0x04 // Large segment send
10103 +
10104 +typedef struct _SXG_XMT_RING {
10105 + SXG_CMD Descriptors[SXG_XMT_RING_SIZE];
10106 +} SXG_XMT_RING, *PSXG_XMT_RING;
10107 +
10108 +typedef struct _SXG_RCV_RING {
10109 + SXG_CMD Descriptors[SXG_RCV_RING_SIZE];
10110 +} SXG_RCV_RING, *PSXG_RCV_RING;
10111 +
10112 +/***************************************************************************
10113 + * Share memory buffer types - Used to identify asynchronous
10114 + * shared memory allocation
10115 + ***************************************************************************/
10116 +typedef enum {
10117 + SXG_BUFFER_TYPE_RCV, // Receive buffer
10118 + SXG_BUFFER_TYPE_SGL // SGL buffer
10119 +} SXG_BUFFER_TYPE;
10120 +
10121 +// State for SXG buffers
10122 +#define SXG_BUFFER_FREE 0x01
10123 +#define SXG_BUFFER_BUSY 0x02
10124 +#define SXG_BUFFER_ONCARD 0x04
10125 +#define SXG_BUFFER_UPSTREAM 0x08
10126 +
10127 +/***************************************************************************
10128 + * Receive data buffers
10129 + *
10130 + * Receive data buffers are given to the Sahara card 128 at a time.
10131 + * This is accomplished by filling in a "receive descriptor block"
10132 + * with 128 "receive descriptors". Each descriptor consists of
10133 + * a physical address, which the card uses as the address to
10134 + * DMA data into, and a virtual address, which is given back
10135 + * to the host in the "HostHandle" portion of an event.
10136 + * The receive descriptor data structure is defined below
10137 + * as SXG_RCV_DATA_DESCRIPTOR, and the corresponding block
10138 + * is defined as SXG_RCV_DESCRIPTOR_BLOCK.
10139 + *
10140 + * This receive descriptor block is given to the card by filling
10141 + * in the Sgl field of a SXG_CMD entry from pAdapt->RcvRings[0]
10142 + * with the physical address of the receive descriptor block.
10143 + *
10144 + * Both the receive buffers and the receive descriptor blocks
10145 + * require additional data structures to maintain them
10146 + * on a free queue and contain other information associated with them.
10147 + * Those data structures are defined as the SXG_RCV_DATA_BUFFER_HDR
10148 + * and SXG_RCV_DESCRIPTOR_BLOCK_HDR respectively.
10149 + *
10150 + * Since both the receive buffers and the receive descriptor block
10151 + * must be accessible by the card, both must be allocated out of
10152 + * shared memory. To ensure that we always have a descriptor
10153 + * block available for every 128 buffers, we allocate all of
10154 + * these resources together in a single block. This entire
10155 + * block is managed by a SXG_RCV_BLOCK_HDR, who's sole purpose
10156 + * is to maintain address information so that the entire block
10157 + * can be free later.
10158 + *
10159 + * Further complicating matters is the fact that the receive
10160 + * buffers must be variable in length in order to accomodate
10161 + * jumbo frame configurations. We configure the buffer
10162 + * length so that the buffer and it's corresponding SXG_RCV_DATA_BUFFER_HDR
10163 + * structure add up to an even boundary. Then we place the
10164 + * remaining data structures after 128 of them as shown in
10165 + * the following diagram:
10166 + *
10167 + * _________________________________________
10168 + * | |
10169 + * | Variable length receive buffer #1 |
10170 + * |_________________________________________|
10171 + * | |
10172 + * | SXG_RCV_DATA_BUFFER_HDR #1 |
10173 + * |_________________________________________| <== Even 2k or 10k boundary
10174 + * | |
10175 + * | ... repeat 2-128 .. |
10176 + * |_________________________________________|
10177 + * | |
10178 + * | SXG_RCV_DESCRIPTOR_BLOCK |
10179 + * | Contains SXG_RCV_DATA_DESCRIPTOR * 128 |
10180 + * |_________________________________________|
10181 + * | |
10182 + * | SXG_RCV_DESCRIPTOR_BLOCK_HDR |
10183 + * |_________________________________________|
10184 + * | |
10185 + * | SXG_RCV_BLOCK_HDR |
10186 + * |_________________________________________|
10187 + *
10188 + * Memory consumption:
10189 + * Non-jumbo:
10190 + * Buffers and SXG_RCV_DATA_BUFFER_HDR = 2k * 128 = 256k
10191 + * + SXG_RCV_DESCRIPTOR_BLOCK = 2k
10192 + * + SXG_RCV_DESCRIPTOR_BLOCK_HDR = ~32
10193 + * + SXG_RCV_BLOCK_HDR = ~32
10194 + * => Total = ~258k/block
10195 + *
10196 + * Jumbo:
10197 + * Buffers and SXG_RCV_DATA_BUFFER_HDR = 10k * 128 = 1280k
10198 + * + SXG_RCV_DESCRIPTOR_BLOCK = 2k
10199 + * + SXG_RCV_DESCRIPTOR_BLOCK_HDR = ~32
10200 + * + SXG_RCV_BLOCK_HDR = ~32
10201 + * => Total = ~1282k/block
10202 + *
10203 + ***************************************************************************/
10204 +#define SXG_RCV_DATA_BUFFERS 4096 // Amount to give to the card
10205 +#define SXG_INITIAL_RCV_DATA_BUFFERS 8192 // Initial pool of buffers
10206 +#define SXG_MIN_RCV_DATA_BUFFERS 2048 // Minimum amount and when to get more
10207 +#define SXG_MAX_RCV_BLOCKS 128 // = 16384 receive buffers
10208 +
10209 +// Receive buffer header
10210 +typedef struct _SXG_RCV_DATA_BUFFER_HDR {
10211 + dma_addr_t PhysicalAddress; // Buffer physical address
10212 + // Note - DO NOT USE the VirtualAddress field to locate data.
10213 + // Use the sxg.h:SXG_RECEIVE_DATA_LOCATION macro instead.
10214 + void *VirtualAddress; // Start of buffer
10215 + LIST_ENTRY FreeList; // Free queue of buffers
10216 + struct _SXG_RCV_DATA_BUFFER_HDR *Next; // Fastpath data buffer queue
10217 + u32 Size; // Buffer size
10218 + u32 ByteOffset; // See SXG_RESTORE_MDL_OFFSET
10219 + unsigned char State; // See SXG_BUFFER state above
10220 + unsigned char Status; // Event status (to log PUSH)
10221 + struct sk_buff * skb; // Double mapped (nbl and pkt)
10222 +} SXG_RCV_DATA_BUFFER_HDR, *PSXG_RCV_DATA_BUFFER_HDR;
10223 +
10224 +// SxgSlowReceive uses the PACKET (skb) contained
10225 +// in the SXG_RCV_DATA_BUFFER_HDR when indicating dumb-nic data
10226 +#define SxgDumbRcvPacket skb
10227 +
10228 +#define SXG_RCV_DATA_HDR_SIZE 256 // Space for SXG_RCV_DATA_BUFFER_HDR
10229 +#define SXG_RCV_DATA_BUFFER_SIZE 2048 // Non jumbo = 2k including HDR
10230 +#define SXG_RCV_JUMBO_BUFFER_SIZE 10240 // jumbo = 10k including HDR
10231 +
10232 +// Receive data descriptor
10233 +typedef struct _SXG_RCV_DATA_DESCRIPTOR {
10234 + union {
10235 + struct sk_buff * VirtualAddress; // Host handle
10236 + u64 ForceTo8Bytes; // Force x86 to 8-byte boundary
10237 + };
10238 + dma_addr_t PhysicalAddress;
10239 +} SXG_RCV_DATA_DESCRIPTOR, *PSXG_RCV_DATA_DESCRIPTOR;
10240 +
10241 +// Receive descriptor block
10242 +#define SXG_RCV_DESCRIPTORS_PER_BLOCK 128
10243 +#define SXG_RCV_DESCRIPTOR_BLOCK_SIZE 2048 // For sanity check
10244 +typedef struct _SXG_RCV_DESCRIPTOR_BLOCK {
10245 + SXG_RCV_DATA_DESCRIPTOR Descriptors[SXG_RCV_DESCRIPTORS_PER_BLOCK];
10246 +} SXG_RCV_DESCRIPTOR_BLOCK, *PSXG_RCV_DESCRIPTOR_BLOCK;
10247 +
10248 +// Receive descriptor block header
10249 +typedef struct _SXG_RCV_DESCRIPTOR_BLOCK_HDR {
10250 + void * VirtualAddress; // Start of 2k buffer
10251 + dma_addr_t PhysicalAddress; // ..and it's physical address
10252 + LIST_ENTRY FreeList; // Free queue of descriptor blocks
10253 + unsigned char State; // See SXG_BUFFER state above
10254 +} SXG_RCV_DESCRIPTOR_BLOCK_HDR, *PSXG_RCV_DESCRIPTOR_BLOCK_HDR;
10255 +
10256 +// Receive block header
10257 +typedef struct _SXG_RCV_BLOCK_HDR {
10258 + void * VirtualAddress; // Start of virtual memory
10259 + dma_addr_t PhysicalAddress; // ..and it's physical address
10260 + LIST_ENTRY AllList; // Queue of all SXG_RCV_BLOCKS
10261 +} SXG_RCV_BLOCK_HDR, *PSXG_RCV_BLOCK_HDR;
10262 +
10263 +// Macros to determine data structure offsets into receive block
10264 +#define SXG_RCV_BLOCK_SIZE(_Buffersize) \
10265 + (((_Buffersize) * SXG_RCV_DESCRIPTORS_PER_BLOCK) + \
10266 + (sizeof(SXG_RCV_DESCRIPTOR_BLOCK)) + \
10267 + (sizeof(SXG_RCV_DESCRIPTOR_BLOCK_HDR)) + \
10268 + (sizeof(SXG_RCV_BLOCK_HDR)))
10269 +#define SXG_RCV_BUFFER_DATA_SIZE(_Buffersize) \
10270 + ((_Buffersize) - SXG_RCV_DATA_HDR_SIZE)
10271 +#define SXG_RCV_DATA_BUFFER_HDR_OFFSET(_Buffersize) \
10272 + ((_Buffersize) - SXG_RCV_DATA_HDR_SIZE)
10273 +#define SXG_RCV_DESCRIPTOR_BLOCK_OFFSET(_Buffersize) \
10274 + ((_Buffersize) * SXG_RCV_DESCRIPTORS_PER_BLOCK)
10275 +#define SXG_RCV_DESCRIPTOR_BLOCK_HDR_OFFSET(_Buffersize) \
10276 + (((_Buffersize) * SXG_RCV_DESCRIPTORS_PER_BLOCK) + \
10277 + (sizeof(SXG_RCV_DESCRIPTOR_BLOCK)))
10278 +#define SXG_RCV_BLOCK_HDR_OFFSET(_Buffersize) \
10279 + (((_Buffersize) * SXG_RCV_DESCRIPTORS_PER_BLOCK) + \
10280 + (sizeof(SXG_RCV_DESCRIPTOR_BLOCK)) + \
10281 + (sizeof(SXG_RCV_DESCRIPTOR_BLOCK_HDR)))
10282 +
10283 +// Use the miniport reserved portion of the NBL to locate
10284 +// our SXG_RCV_DATA_BUFFER_HDR structure.
10285 +typedef struct _SXG_RCV_NBL_RESERVED {
10286 + PSXG_RCV_DATA_BUFFER_HDR RcvDataBufferHdr;
10287 + void * Available;
10288 +} SXG_RCV_NBL_RESERVED, *PSXG_RCV_NBL_RESERVED;
10289 +
10290 +#define SXG_RCV_NBL_BUFFER_HDR(_NBL) (((PSXG_RCV_NBL_RESERVED)NET_BUFFER_LIST_MINIPORT_RESERVED(_NBL))->RcvDataBufferHdr)
10291 +
10292 +/***************************************************************************
10293 + * Scatter gather list buffer
10294 + ***************************************************************************/
10295 +#define SXG_INITIAL_SGL_BUFFERS 8192 // Initial pool of SGL buffers
10296 +#define SXG_MIN_SGL_BUFFERS 2048 // Minimum amount and when to get more
10297 +#define SXG_MAX_SGL_BUFFERS 16384 // Maximum to allocate (note ADAPT:ushort)
10298 +
10299 +
10300 +// Self identifying structure type
10301 +typedef enum _SXG_SGL_TYPE {
10302 + SXG_SGL_DUMB, // Dumb NIC SGL
10303 + SXG_SGL_SLOW, // Slowpath protocol header - see below
10304 + SXG_SGL_CHIMNEY // Chimney offload SGL
10305 +} SXG_SGL_TYPE, PSXG_SGL_TYPE;
10306 +
10307 +// Note - the description below is Microsoft specific
10308 +//
10309 +// The following definition specifies the amount of shared memory to allocate
10310 +// for the SCATTER_GATHER_LIST portion of the SXG_SCATTER_GATHER data structure.
10311 +// The following considerations apply when setting this value:
10312 +// - First, the Sahara card is designed to read the Microsoft SGL structure
10313 +// straight out of host memory. This means that the SGL must reside in
10314 +// shared memory. If the length here is smaller than the SGL for the
10315 +// NET_BUFFER, then NDIS will allocate its own buffer. The buffer
10316 +// that NDIS allocates is not in shared memory, so when this happens,
10317 +// the SGL will need to be copied to a set of SXG_SCATTER_GATHER buffers.
10318 +// In other words.. we don't want this value to be too small.
10319 +// - On the other hand.. we're allocating up to 16k of these things. If
10320 +// we make this too big, we start to consume a ton of memory..
10321 +// At the moment, I'm going to limit the number of SG entries to 150.
10322 +// If each entry maps roughly 4k, then this should cover roughly 600kB
10323 +// NET_BUFFERs. Furthermore, since each entry is 24 bytes, the total
10324 +// SGE portion of the structure consumes 3600 bytes, which should allow
10325 +// the entire SXG_SCATTER_GATHER structure to reside comfortably within
10326 +// a 4k block, providing the remaining fields stay under 500 bytes.
10327 +//
10328 +// So with 150 entries, the SXG_SCATTER_GATHER structure becomes roughly
10329 +// 4k. At 16k of them, that amounts to 64M of shared memory. A ton, but
10330 +// manageable.
10331 +#define SXG_SGL_ENTRIES 150
10332 +
10333 +// The ucode expects an NDIS SGL structure that
10334 +// is formatted for an x64 system. When running
10335 +// on an x64 system, we can simply hand the NDIS SGL
10336 +// to the card directly. For x86 systems we must reconstruct
10337 +// the SGL. The following structure defines an x64
10338 +// formatted SGL entry
10339 +typedef struct _SXG_X64_SGE {
10340 + dma64_addr_t Address; // same as wdm.h
10341 + u32 Length; // same as wdm.h
10342 + u32 CompilerPad;// The compiler pads to 8-bytes
10343 + u64 Reserved; // u32 * in wdm.h. Force to 8 bytes
10344 +} SXG_X64_SGE, *PSXG_X64_SGE;
10345 +
10346 +typedef struct _SCATTER_GATHER_ELEMENT {
10347 + dma64_addr_t Address; // same as wdm.h
10348 + u32 Length; // same as wdm.h
10349 + u32 CompilerPad;// The compiler pads to 8-bytes
10350 + u64 Reserved; // u32 * in wdm.h. Force to 8 bytes
10351 +} SCATTER_GATHER_ELEMENT, *PSCATTER_GATHER_ELEMENT;
10352 +
10353 +
10354 +typedef struct _SCATTER_GATHER_LIST {
10355 + u32 NumberOfElements;
10356 + u32 * Reserved;
10357 + SCATTER_GATHER_ELEMENT Elements[];
10358 +} SCATTER_GATHER_LIST, *PSCATTER_GATHER_LIST;
10359 +
10360 +// The card doesn't care about anything except elements, so
10361 +// we can leave the u32 * reserved field alone in the following
10362 +// SGL structure. But redefine from wdm.h:SCATTER_GATHER_LIST so
10363 +// we can specify SXG_X64_SGE and define a fixed number of elements
10364 +typedef struct _SXG_X64_SGL {
10365 + u32 NumberOfElements;
10366 + u32 * Reserved;
10367 + SXG_X64_SGE Elements[SXG_SGL_ENTRIES];
10368 +} SXG_X64_SGL, *PSXG_X64_SGL;
10369 +
10370 +typedef struct _SXG_SCATTER_GATHER {
10371 + SXG_SGL_TYPE Type; // FIRST! Dumb-nic or offload
10372 + void * adapter; // Back pointer to adapter
10373 + LIST_ENTRY FreeList; // Free SXG_SCATTER_GATHER blocks
10374 + LIST_ENTRY AllList; // All SXG_SCATTER_GATHER blocks
10375 + dma_addr_t PhysicalAddress;// physical address
10376 + unsigned char State; // See SXG_BUFFER state above
10377 + unsigned char CmdIndex; // Command ring index
10378 + struct sk_buff * DumbPacket; // Associated Packet
10379 + u32 Direction; // For asynchronous completions
10380 + u32 CurOffset; // Current SGL offset
10381 + u32 SglRef; // SGL reference count
10382 + VLAN_HDR VlanTag; // VLAN tag to be inserted into SGL
10383 + PSCATTER_GATHER_LIST pSgl; // SGL Addr. Possibly &Sgl
10384 + SXG_X64_SGL Sgl; // SGL handed to card
10385 +} SXG_SCATTER_GATHER, *PSXG_SCATTER_GATHER;
10386 +
10387 +#if defined(CONFIG_X86_64)
10388 +#define SXG_SGL_BUFFER(_SxgSgl) (&_SxgSgl->Sgl)
10389 +#define SXG_SGL_BUF_SIZE sizeof(SXG_X64_SGL)
10390 +#elif defined(CONFIG_X86)
10391 +// Force NDIS to give us it's own buffer so we can reformat to our own
10392 +#define SXG_SGL_BUFFER(_SxgSgl) NULL
10393 +#define SXG_SGL_BUF_SIZE 0
10394 +#else
10395 + Stop Compilation;
10396 +#endif
10397 +
10398 --- /dev/null
10399 +++ b/drivers/staging/sxg/sxghw.h
10400 @@ -0,0 +1,734 @@
10401 +/*
10402 + * Copyright © 1997-2007 Alacritech, Inc. All rights reserved
10403 + *
10404 + * $Id: sxghw.h,v 1.2 2008/07/24 17:24:23 chris Exp $
10405 + *
10406 + * sxghw.h:
10407 + *
10408 + * This file contains structures and definitions for the
10409 + * Alacritech Sahara hardware
10410 + */
10411 +
10412 +
10413 +/*******************************************************************************
10414 + * Configuration space
10415 + *******************************************************************************/
10416 +// PCI Vendor ID
10417 +#define SXG_VENDOR_ID 0x139A // Alacritech's Vendor ID
10418 +
10419 +// PCI Device ID
10420 +#define SXG_DEVICE_ID 0x0009 // Sahara Device ID
10421 +
10422 +//
10423 +// Subsystem IDs.
10424 +//
10425 +// The subsystem ID value is broken into bit fields as follows:
10426 +// Bits [15:12] - Function
10427 +// Bits [11:8] - OEM and/or operating system.
10428 +// Bits [7:0] - Base SID.
10429 +//
10430 +// SSID field (bit) masks
10431 +#define SSID_BASE_MASK 0x00FF // Base subsystem ID mask
10432 +#define SSID_OEM_MASK 0x0F00 // Subsystem OEM mask
10433 +#define SSID_FUNC_MASK 0xF000 // Subsystem function mask
10434 +
10435 +// Base SSID's
10436 +#define SSID_SAHARA_PROTO 0x0018 // 100022 Sahara prototype (XenPak) board
10437 +#define SSID_SAHARA_FIBER 0x0019 // 100023 Sahara 1-port fiber board
10438 +#define SSID_SAHARA_COPPER 0x001A // 100024 Sahara 1-port copper board
10439 +
10440 +// Useful SSID macros
10441 +#define SSID_BASE(ssid) ((ssid) & SSID_BASE_MASK) // isolate base SSID bits
10442 +#define SSID_OEM(ssid) ((ssid) & SSID_OEM_MASK) // isolate SSID OEM bits
10443 +#define SSID_FUNC(ssid) ((ssid) & SSID_FUNC_MASK) // isolate SSID function bits
10444 +
10445 +/*******************************************************************************
10446 + * HW Register Space
10447 + *******************************************************************************/
10448 +#define SXG_HWREG_MEMSIZE 0x4000 // 16k
10449 +
10450 +#pragma pack(push, 1)
10451 +typedef struct _SXG_HW_REGS {
10452 + u32 Reset; // Write 0xdead to invoke soft reset
10453 + u32 Pad1; // No register defined at offset 4
10454 + u32 InterruptMask0; // Deassert legacy interrupt on function 0
10455 + u32 InterruptMask1; // Deassert legacy interrupt on function 1
10456 + u32 UcodeDataLow; // Store microcode instruction bits 31-0
10457 + u32 UcodeDataMiddle; // Store microcode instruction bits 63-32
10458 + u32 UcodeDataHigh; // Store microcode instruction bits 95-64
10459 + u32 UcodeAddr; // Store microcode address - See flags below
10460 + u32 PadTo0x80[24]; // Pad to Xcv configuration registers
10461 + u32 MacConfig0; // 0x80 - AXGMAC Configuration Register 0
10462 + u32 MacConfig1; // 0x84 - AXGMAC Configuration Register 1
10463 + u32 MacConfig2; // 0x88 - AXGMAC Configuration Register 2
10464 + u32 MacConfig3; // 0x8C - AXGMAC Configuration Register 3
10465 + u32 MacAddressLow; // 0x90 - AXGMAC MAC Station Address - octets 1-4
10466 + u32 MacAddressHigh; // 0x94 - AXGMAC MAC Station Address - octets 5-6
10467 + u32 MacReserved1[2]; // 0x98 - AXGMAC Reserved
10468 + u32 MacMaxFrameLen; // 0xA0 - AXGMAC Maximum Frame Length
10469 + u32 MacReserved2[2]; // 0xA4 - AXGMAC Reserved
10470 + u32 MacRevision; // 0xAC - AXGMAC Revision Level Register
10471 + u32 MacReserved3[4]; // 0xB0 - AXGMAC Reserved
10472 + u32 MacAmiimCmd; // 0xC0 - AXGMAC AMIIM Command Register
10473 + u32 MacAmiimField; // 0xC4 - AXGMAC AMIIM Field Register
10474 + u32 MacAmiimConfig; // 0xC8 - AXGMAC AMIIM Configuration Register
10475 + u32 MacAmiimLink; // 0xCC - AXGMAC AMIIM Link Fail Vector Register
10476 + u32 MacAmiimIndicator; // 0xD0 - AXGMAC AMIIM Indicator Registor
10477 + u32 PadTo0x100[11]; // 0xD4 - 0x100 - Pad
10478 + u32 XmtConfig; // 0x100 - Transmit Configuration Register
10479 + u32 RcvConfig; // 0x104 - Receive Configuration Register 1
10480 + u32 LinkAddress0Low; // 0x108 - Link address 0
10481 + u32 LinkAddress0High; // 0x10C - Link address 0
10482 + u32 LinkAddress1Low; // 0x110 - Link address 1
10483 + u32 LinkAddress1High; // 0x114 - Link address 1
10484 + u32 LinkAddress2Low; // 0x118 - Link address 2
10485 + u32 LinkAddress2High; // 0x11C - Link address 2
10486 + u32 LinkAddress3Low; // 0x120 - Link address 3
10487 + u32 LinkAddress3High; // 0x124 - Link address 3
10488 + u32 ToeplitzKey[10]; // 0x128 - 0x150 - Toeplitz key
10489 + u32 SocketKey[10]; // 0x150 - 0x178 - Socket Key
10490 + u32 LinkStatus; // 0x178 - Link status
10491 + u32 ClearStats; // 0x17C - Clear Stats
10492 + u32 XmtErrorsLow; // 0x180 - Transmit stats - errors
10493 + u32 XmtErrorsHigh; // 0x184 - Transmit stats - errors
10494 + u32 XmtFramesLow; // 0x188 - Transmit stats - frame count
10495 + u32 XmtFramesHigh; // 0x18C - Transmit stats - frame count
10496 + u32 XmtBytesLow; // 0x190 - Transmit stats - byte count
10497 + u32 XmtBytesHigh; // 0x194 - Transmit stats - byte count
10498 + u32 XmtTcpSegmentsLow; // 0x198 - Transmit stats - TCP segments
10499 + u32 XmtTcpSegmentsHigh; // 0x19C - Transmit stats - TCP segments
10500 + u32 XmtTcpBytesLow; // 0x1A0 - Transmit stats - TCP bytes
10501 + u32 XmtTcpBytesHigh; // 0x1A4 - Transmit stats - TCP bytes
10502 + u32 RcvErrorsLow; // 0x1A8 - Receive stats - errors
10503 + u32 RcvErrorsHigh; // 0x1AC - Receive stats - errors
10504 + u32 RcvFramesLow; // 0x1B0 - Receive stats - frame count
10505 + u32 RcvFramesHigh; // 0x1B4 - Receive stats - frame count
10506 + u32 RcvBytesLow; // 0x1B8 - Receive stats - byte count
10507 + u32 RcvBytesHigh; // 0x1BC - Receive stats - byte count
10508 + u32 RcvTcpSegmentsLow; // 0x1C0 - Receive stats - TCP segments
10509 + u32 RcvTcpSegmentsHigh; // 0x1C4 - Receive stats - TCP segments
10510 + u32 RcvTcpBytesLow; // 0x1C8 - Receive stats - TCP bytes
10511 + u32 RcvTcpBytesHigh; // 0x1CC - Receive stats - TCP bytes
10512 + u32 PadTo0x200[12]; // 0x1D0 - 0x200 - Pad
10513 + u32 Software[1920]; // 0x200 - 0x2000 - Software defined (not used)
10514 + u32 MsixTable[1024]; // 0x2000 - 0x3000 - MSIX Table
10515 + u32 MsixBitArray[1024]; // 0x3000 - 0x4000 - MSIX Pending Bit Array
10516 +} SXG_HW_REGS, *PSXG_HW_REGS;
10517 +#pragma pack(pop)
10518 +
10519 +// Microcode Address Flags
10520 +#define MICROCODE_ADDRESS_GO 0x80000000 // Start microcode
10521 +#define MICROCODE_ADDRESS_WRITE 0x40000000 // Store microcode
10522 +#define MICROCODE_ADDRESS_READ 0x20000000 // Read microcode
10523 +#define MICROCODE_ADDRESS_PARITY 0x10000000 // Parity error detected
10524 +#define MICROCODE_ADDRESS_MASK 0x00001FFF // Address bits
10525 +
10526 +// Link Address Registers
10527 +#define LINK_ADDRESS_ENABLE 0x80000000 // Applied to link address high
10528 +
10529 +// Microsoft register space size
10530 +#define SXG_UCODEREG_MEMSIZE 0x40000 // 256k
10531 +
10532 +// Sahara microcode register address format. The command code,
10533 +// extended command code, and associated processor are encoded in
10534 +// the address bits as follows
10535 +#define SXG_ADDRESS_CODE_SHIFT 2 // Base command code
10536 +#define SXG_ADDRESS_CODE_MASK 0x0000003C
10537 +#define SXG_ADDRESS_EXCODE_SHIFT 6 // Extended (or sub) command code
10538 +#define SXG_ADDRESS_EXCODE_MASK 0x00001FC0
10539 +#define SXG_ADDRESS_CPUID_SHIFT 13 // CPU
10540 +#define SXG_ADDRESS_CPUID_MASK 0x0003E000
10541 +#define SXG_REGISTER_SIZE_PER_CPU 0x00002000 // Used to sanity check UCODE_REGS structure
10542 +
10543 +// Sahara receive sequencer status values
10544 +#define SXG_RCV_STATUS_ATTN 0x80000000 // Attention
10545 +#define SXG_RCV_STATUS_TRANSPORT_MASK 0x3F000000 // Transport mask
10546 +#define SXG_RCV_STATUS_TRANSPORT_ERROR 0x20000000 // Transport error
10547 +#define SXG_RCV_STATUS_TRANSPORT_CSUM 0x23000000 // Transport cksum error
10548 +#define SXG_RCV_STATUS_TRANSPORT_UFLOW 0x22000000 // Transport underflow
10549 +#define SXG_RCV_STATUS_TRANSPORT_HDRLEN 0x20000000 // Transport header length
10550 +#define SXG_RCV_STATUS_TRANSPORT_FLAGS 0x10000000 // Transport flags detected
10551 +#define SXG_RCV_STATUS_TRANSPORT_OPTS 0x08000000 // Transport options detected
10552 +#define SXG_RCV_STATUS_TRANSPORT_SESS_MASK 0x07000000 // Transport DDP
10553 +#define SXG_RCV_STATUS_TRANSPORT_DDP 0x06000000 // Transport DDP
10554 +#define SXG_RCV_STATUS_TRANSPORT_iSCSI 0x05000000 // Transport iSCSI
10555 +#define SXG_RCV_STATUS_TRANSPORT_NFS 0x04000000 // Transport NFS
10556 +#define SXG_RCV_STATUS_TRANSPORT_FTP 0x03000000 // Transport FTP
10557 +#define SXG_RCV_STATUS_TRANSPORT_HTTP 0x02000000 // Transport HTTP
10558 +#define SXG_RCV_STATUS_TRANSPORT_SMB 0x01000000 // Transport SMB
10559 +#define SXG_RCV_STATUS_NETWORK_MASK 0x00FF0000 // Network mask
10560 +#define SXG_RCV_STATUS_NETWORK_ERROR 0x00800000 // Network error
10561 +#define SXG_RCV_STATUS_NETWORK_CSUM 0x00830000 // Network cksum error
10562 +#define SXG_RCV_STATUS_NETWORK_UFLOW 0x00820000 // Network underflow error
10563 +#define SXG_RCV_STATUS_NETWORK_HDRLEN 0x00800000 // Network header length
10564 +#define SXG_RCV_STATUS_NETWORK_OFLOW 0x00400000 // Network overflow detected
10565 +#define SXG_RCV_STATUS_NETWORK_MCAST 0x00200000 // Network multicast detected
10566 +#define SXG_RCV_STATUS_NETWORK_OPTIONS 0x00100000 // Network options detected
10567 +#define SXG_RCV_STATUS_NETWORK_OFFSET 0x00080000 // Network offset detected
10568 +#define SXG_RCV_STATUS_NETWORK_FRAGMENT 0x00040000 // Network fragment detected
10569 +#define SXG_RCV_STATUS_NETWORK_TRANS_MASK 0x00030000 // Network transport type mask
10570 +#define SXG_RCV_STATUS_NETWORK_UDP 0x00020000 // UDP
10571 +#define SXG_RCV_STATUS_NETWORK_TCP 0x00010000 // TCP
10572 +#define SXG_RCV_STATUS_IPONLY 0x00008000 // IP-only not TCP
10573 +#define SXG_RCV_STATUS_PKT_PRI 0x00006000 // Receive priority
10574 +#define SXG_RCV_STATUS_PKT_PRI_SHFT 13 // Receive priority shift
10575 +#define SXG_RCV_STATUS_PARITY 0x00001000 // MAC Receive RAM parity error
10576 +#define SXG_RCV_STATUS_ADDRESS_MASK 0x00000F00 // Link address detection mask
10577 +#define SXG_RCV_STATUS_ADDRESS_D 0x00000B00 // Link address D
10578 +#define SXG_RCV_STATUS_ADDRESS_C 0x00000A00 // Link address C
10579 +#define SXG_RCV_STATUS_ADDRESS_B 0x00000900 // Link address B
10580 +#define SXG_RCV_STATUS_ADDRESS_A 0x00000800 // Link address A
10581 +#define SXG_RCV_STATUS_ADDRESS_BCAST 0x00000300 // Link address broadcast
10582 +#define SXG_RCV_STATUS_ADDRESS_MCAST 0x00000200 // Link address multicast
10583 +#define SXG_RCV_STATUS_ADDRESS_CMCAST 0x00000100 // Link control multicast
10584 +#define SXG_RCV_STATUS_LINK_MASK 0x000000FF // Link status mask
10585 +#define SXG_RCV_STATUS_LINK_ERROR 0x00000080 // Link error
10586 +#define SXG_RCV_STATUS_LINK_MASK 0x000000FF // Link status mask
10587 +#define SXG_RCV_STATUS_LINK_PARITY 0x00000087 // RcvMacQ parity error
10588 +#define SXG_RCV_STATUS_LINK_EARLY 0x00000086 // Data early
10589 +#define SXG_RCV_STATUS_LINK_BUFOFLOW 0x00000085 // Buffer overflow
10590 +#define SXG_RCV_STATUS_LINK_CODE 0x00000084 // Link code error
10591 +#define SXG_RCV_STATUS_LINK_DRIBBLE 0x00000083 // Dribble nibble
10592 +#define SXG_RCV_STATUS_LINK_CRC 0x00000082 // CRC error
10593 +#define SXG_RCV_STATUS_LINK_OFLOW 0x00000081 // Link overflow
10594 +#define SXG_RCV_STATUS_LINK_UFLOW 0x00000080 // Link underflow
10595 +#define SXG_RCV_STATUS_LINK_8023 0x00000020 // 802.3
10596 +#define SXG_RCV_STATUS_LINK_SNAP 0x00000010 // Snap
10597 +#define SXG_RCV_STATUS_LINK_VLAN 0x00000008 // VLAN
10598 +#define SXG_RCV_STATUS_LINK_TYPE_MASK 0x00000007 // Network type mask
10599 +#define SXG_RCV_STATUS_LINK_CONTROL 0x00000003 // Control packet
10600 +#define SXG_RCV_STATUS_LINK_IPV6 0x00000002 // IPv6 packet
10601 +#define SXG_RCV_STATUS_LINK_IPV4 0x00000001 // IPv4 packet
10602 +
10603 +/***************************************************************************
10604 + * Sahara receive and transmit configuration registers
10605 + ***************************************************************************/
10606 +#define RCV_CONFIG_RESET 0x80000000 // RcvConfig register reset
10607 +#define RCV_CONFIG_ENABLE 0x40000000 // Enable the receive logic
10608 +#define RCV_CONFIG_ENPARSE 0x20000000 // Enable the receive parser
10609 +#define RCV_CONFIG_SOCKET 0x10000000 // Enable the socket detector
10610 +#define RCV_CONFIG_RCVBAD 0x08000000 // Receive all bad frames
10611 +#define RCV_CONFIG_CONTROL 0x04000000 // Receive all control frames
10612 +#define RCV_CONFIG_RCVPAUSE 0x02000000 // Enable pause transmit when attn
10613 +#define RCV_CONFIG_TZIPV6 0x01000000 // Include TCP port w/ IPv6 toeplitz
10614 +#define RCV_CONFIG_TZIPV4 0x00800000 // Include TCP port w/ IPv4 toeplitz
10615 +#define RCV_CONFIG_FLUSH 0x00400000 // Flush buffers
10616 +#define RCV_CONFIG_PRIORITY_MASK 0x00300000 // Priority level
10617 +#define RCV_CONFIG_HASH_MASK 0x00030000 // Hash depth
10618 +#define RCV_CONFIG_HASH_8 0x00000000 // Hash depth 8
10619 +#define RCV_CONFIG_HASH_16 0x00010000 // Hash depth 16
10620 +#define RCV_CONFIG_HASH_4 0x00020000 // Hash depth 4
10621 +#define RCV_CONFIG_HASH_2 0x00030000 // Hash depth 2
10622 +#define RCV_CONFIG_BUFLEN_MASK 0x0000FFF0 // Buffer length bits 15:4. ie multiple of 16.
10623 +#define RCV_CONFIG_SKT_DIS 0x00000008 // Disable socket detection on attn
10624 +// Macro to determine RCV_CONFIG_BUFLEN based on maximum frame size.
10625 +// We add 18 bytes for Sahara receive status and padding, plus 4 bytes for CRC,
10626 +// and round up to nearest 16 byte boundary
10627 +#define RCV_CONFIG_BUFSIZE(_MaxFrame) ((((_MaxFrame) + 22) + 15) & RCV_CONFIG_BUFLEN_MASK)
10628 +
10629 +#define XMT_CONFIG_RESET 0x80000000 // XmtConfig register reset
10630 +#define XMT_CONFIG_ENABLE 0x40000000 // Enable transmit logic
10631 +#define XMT_CONFIG_MAC_PARITY 0x20000000 // Inhibit MAC RAM parity error
10632 +#define XMT_CONFIG_BUF_PARITY 0x10000000 // Inhibit D2F buffer parity error
10633 +#define XMT_CONFIG_MEM_PARITY 0x08000000 // Inhibit 1T SRAM parity error
10634 +#define XMT_CONFIG_INVERT_PARITY 0x04000000 // Invert MAC RAM parity
10635 +#define XMT_CONFIG_INITIAL_IPID 0x0000FFFF // Initial IPID
10636 +
10637 +/***************************************************************************
10638 + * A-XGMAC Registers - Occupy 0x80 - 0xD4 of the SXG_HW_REGS
10639 + *
10640 + * Full register descriptions can be found in axgmac.pdf
10641 + ***************************************************************************/
10642 +// A-XGMAC Configuration Register 0
10643 +#define AXGMAC_CFG0_SUB_RESET 0x80000000 // Sub module reset
10644 +#define AXGMAC_CFG0_RCNTRL_RESET 0x00400000 // Receive control reset
10645 +#define AXGMAC_CFG0_RFUNC_RESET 0x00200000 // Receive function reset
10646 +#define AXGMAC_CFG0_TCNTRL_RESET 0x00040000 // Transmit control reset
10647 +#define AXGMAC_CFG0_TFUNC_RESET 0x00020000 // Transmit function reset
10648 +#define AXGMAC_CFG0_MII_RESET 0x00010000 // MII Management reset
10649 +
10650 +// A-XGMAC Configuration Register 1
10651 +#define AXGMAC_CFG1_XMT_PAUSE 0x80000000 // Allow the sending of Pause frames
10652 +#define AXGMAC_CFG1_XMT_EN 0x40000000 // Enable transmit
10653 +#define AXGMAC_CFG1_RCV_PAUSE 0x20000000 // Allow the detection of Pause frames
10654 +#define AXGMAC_CFG1_RCV_EN 0x10000000 // Enable receive
10655 +#define AXGMAC_CFG1_XMT_STATE 0x04000000 // Current transmit state - READ ONLY
10656 +#define AXGMAC_CFG1_RCV_STATE 0x01000000 // Current receive state - READ ONLY
10657 +#define AXGMAC_CFG1_XOFF_SHORT 0x00001000 // Only pause for 64 slot on XOFF
10658 +#define AXGMAC_CFG1_XMG_FCS1 0x00000400 // Delay transmit FCS 1 4-byte word
10659 +#define AXGMAC_CFG1_XMG_FCS2 0x00000800 // Delay transmit FCS 2 4-byte words
10660 +#define AXGMAC_CFG1_XMG_FCS3 0x00000C00 // Delay transmit FCS 3 4-byte words
10661 +#define AXGMAC_CFG1_RCV_FCS1 0x00000100 // Delay receive FCS 1 4-byte word
10662 +#define AXGMAC_CFG1_RCV_FCS2 0x00000200 // Delay receive FCS 2 4-byte words
10663 +#define AXGMAC_CFG1_RCV_FCS3 0x00000300 // Delay receive FCS 3 4-byte words
10664 +#define AXGMAC_CFG1_PKT_OVERRIDE 0x00000080 // Per-packet override enable
10665 +#define AXGMAC_CFG1_SWAP 0x00000040 // Byte swap enable
10666 +#define AXGMAC_CFG1_SHORT_ASSERT 0x00000020 // ASSERT srdrpfrm on short frame (<64)
10667 +#define AXGMAC_CFG1_RCV_STRICT 0x00000010 // RCV only 802.3AE when CLEAR
10668 +#define AXGMAC_CFG1_CHECK_LEN 0x00000008 // Verify frame length
10669 +#define AXGMAC_CFG1_GEN_FCS 0x00000004 // Generate FCS
10670 +#define AXGMAC_CFG1_PAD_MASK 0x00000003 // Mask for pad bits
10671 +#define AXGMAC_CFG1_PAD_64 0x00000001 // Pad frames to 64 bytes
10672 +#define AXGMAC_CFG1_PAD_VLAN 0x00000002 // Detect VLAN and pad to 68 bytes
10673 +#define AXGMAC_CFG1_PAD_68 0x00000003 // Pad to 68 bytes
10674 +
10675 +// A-XGMAC Configuration Register 2
10676 +#define AXGMAC_CFG2_GEN_PAUSE 0x80000000 // Generate single pause frame (test)
10677 +#define AXGMAC_CFG2_LF_MANUAL 0x08000000 // Manual link fault sequence
10678 +#define AXGMAC_CFG2_LF_AUTO 0x04000000 // Auto link fault sequence
10679 +#define AXGMAC_CFG2_LF_REMOTE 0x02000000 // Remote link fault (READ ONLY)
10680 +#define AXGMAC_CFG2_LF_LOCAL 0x01000000 // Local link fault (READ ONLY)
10681 +#define AXGMAC_CFG2_IPG_MASK 0x001F0000 // Inter packet gap
10682 +#define AXGMAC_CFG2_IPG_SHIFT 16
10683 +#define AXGMAC_CFG2_PAUSE_XMT 0x00008000 // Pause transmit module
10684 +#define AXGMAC_CFG2_IPG_EXTEN 0x00000020 // Enable IPG extension algorithm
10685 +#define AXGMAC_CFG2_IPGEX_MASK 0x0000001F // IPG extension
10686 +
10687 +// A-XGMAC Configuration Register 3
10688 +#define AXGMAC_CFG3_RCV_DROP 0xFFFF0000 // Receive frame drop filter
10689 +#define AXGMAC_CFG3_RCV_DONT_CARE 0x0000FFFF // Receive frame don't care filter
10690 +
10691 +// A-XGMAC Station Address Register - Octets 1-4
10692 +#define AXGMAC_SARLOW_OCTET_ONE 0xFF000000 // First octet
10693 +#define AXGMAC_SARLOW_OCTET_TWO 0x00FF0000 // Second octet
10694 +#define AXGMAC_SARLOW_OCTET_THREE 0x0000FF00 // Third octet
10695 +#define AXGMAC_SARLOW_OCTET_FOUR 0x000000FF // Fourth octet
10696 +
10697 +// A-XGMAC Station Address Register - Octets 5-6
10698 +#define AXGMAC_SARHIGH_OCTET_FIVE 0xFF000000 // Fifth octet
10699 +#define AXGMAC_SARHIGH_OCTET_SIX 0x00FF0000 // Sixth octet
10700 +
10701 +// A-XGMAC Maximum frame length register
10702 +#define AXGMAC_MAXFRAME_XMT 0x3FFF0000 // Maximum transmit frame length
10703 +#define AXGMAC_MAXFRAME_XMT_SHIFT 16
10704 +#define AXGMAC_MAXFRAME_RCV 0x0000FFFF // Maximum receive frame length
10705 +// This register doesn't need to be written for standard MTU.
10706 +// For jumbo, I'll just statically define the value here. This
10707 +// value sets the receive byte count to 9036 (0x234C) and the
10708 +// transmit WORD count to 2259 (0x8D3). These values include 22
10709 +// bytes of padding beyond the jumbo MTU of 9014
10710 +#define AXGMAC_MAXFRAME_JUMBO 0x08D3234C
10711 +
10712 +// A-XGMAC Revision level
10713 +#define AXGMAC_REVISION_MASK 0x0000FFFF // Revision level
10714 +
10715 +// A-XGMAC AMIIM Command Register
10716 +#define AXGMAC_AMIIM_CMD_START 0x00000008 // Command start
10717 +#define AXGMAC_AMIIM_CMD_MASK 0x00000007 // Command
10718 +#define AXGMAC_AMIIM_CMD_LEGACY_WRITE 1 // 10/100/1000 Mbps Phy Write
10719 +#define AXGMAC_AMIIM_CMD_LEGACY_READ 2 // 10/100/1000 Mbps Phy Read
10720 +#define AXGMAC_AMIIM_CMD_MONITOR_SINGLE 3 // Monitor single PHY
10721 +#define AXGMAC_AMIIM_CMD_MONITOR_MULTIPLE 4 // Monitor multiple contiguous PHYs
10722 +#define AXGMAC_AMIIM_CMD_10G_OPERATION 5 // Present AMIIM Field Reg
10723 +#define AXGMAC_AMIIM_CMD_CLEAR_LINK_FAIL 6 // Clear Link Fail Bit in MIIM
10724 +
10725 +// A-XGMAC AMIIM Field Register
10726 +#define AXGMAC_AMIIM_FIELD_ST 0xC0000000 // 2-bit ST field
10727 +#define AXGMAC_AMIIM_FIELD_ST_SHIFT 30
10728 +#define AXGMAC_AMIIM_FIELD_OP 0x30000000 // 2-bit OP field
10729 +#define AXGMAC_AMIIM_FIELD_OP_SHIFT 28
10730 +#define AXGMAC_AMIIM_FIELD_PORT_ADDR 0x0F800000 // Port address field (hstphyadx in spec)
10731 +#define AXGMAC_AMIIM_FIELD_PORT_SHIFT 23
10732 +#define AXGMAC_AMIIM_FIELD_DEV_ADDR 0x007C0000 // Device address field (hstregadx in spec)
10733 +#define AXGMAC_AMIIM_FIELD_DEV_SHIFT 18
10734 +#define AXGMAC_AMIIM_FIELD_TA 0x00030000 // 2-bit TA field
10735 +#define AXGMAC_AMIIM_FIELD_TA_SHIFT 16
10736 +#define AXGMAC_AMIIM_FIELD_DATA 0x0000FFFF // Data field
10737 +
10738 +// Values for the AXGMAC_AMIIM_FIELD_OP field in the A-XGMAC AMIIM Field Register
10739 +#define MIIM_OP_ADDR 0 // MIIM Address set operation
10740 +#define MIIM_OP_WRITE 1 // MIIM Write register operation
10741 +#define MIIM_OP_READ 2 // MIIM Read register operation
10742 +#define MIIM_OP_ADDR_SHIFT (MIIM_OP_ADDR << AXGMAC_AMIIM_FIELD_OP_SHIFT)
10743 +
10744 +// Values for the AXGMAC_AMIIM_FIELD_PORT_ADDR field in the A-XGMAC AMIIM Field Register
10745 +#define MIIM_PORT_NUM 1 // All Sahara MIIM modules use port 1
10746 +
10747 +// Values for the AXGMAC_AMIIM_FIELD_DEV_ADDR field in the A-XGMAC AMIIM Field Register
10748 +#define MIIM_DEV_PHY_PMA 1 // PHY PMA/PMD module MIIM device number
10749 +#define MIIM_DEV_PHY_PCS 3 // PHY PCS module MIIM device number
10750 +#define MIIM_DEV_PHY_XS 4 // PHY XS module MIIM device number
10751 +#define MIIM_DEV_XGXS 5 // XGXS MIIM device number
10752 +
10753 +// Values for the AXGMAC_AMIIM_FIELD_TA field in the A-XGMAC AMIIM Field Register
10754 +#define MIIM_TA_10GB 2 // set to 2 for 10 GB operation
10755 +
10756 +// A-XGMAC AMIIM Configuration Register
10757 +#define AXGMAC_AMIIM_CFG_NOPREAM 0x00000080 // Bypass preamble of mngmt frame
10758 +#define AXGMAC_AMIIM_CFG_HALF_CLOCK 0x0000007F // half-clock duration of MDC output
10759 +
10760 +// A-XGMAC AMIIM Indicator Register
10761 +#define AXGMAC_AMIIM_INDC_LINK 0x00000010 // Link status from legacy PHY or MMD
10762 +#define AXGMAC_AMIIM_INDC_MPHY 0x00000008 // Multiple phy operation in progress
10763 +#define AXGMAC_AMIIM_INDC_SPHY 0x00000004 // Single phy operation in progress
10764 +#define AXGMAC_AMIIM_INDC_MON 0x00000002 // Single or multiple monitor cmd
10765 +#define AXGMAC_AMIIM_INDC_BUSY 0x00000001 // Set until cmd operation complete
10766 +
10767 +// Link Status and Control Register
10768 +#define LS_PHY_CLR_RESET 0x80000000 // Clear reset signal to PHY
10769 +#define LS_SERDES_POWER_DOWN 0x40000000 // Power down the Sahara Serdes
10770 +#define LS_XGXS_ENABLE 0x20000000 // Enable the XAUI XGXS logic
10771 +#define LS_XGXS_CTL 0x10000000 // Hold XAUI XGXS logic reset until Serdes is up
10772 +#define LS_SERDES_DOWN 0x08000000 // When 0, XAUI Serdes is up and initialization is complete
10773 +#define LS_TRACE_DOWN 0x04000000 // When 0, Trace Serdes is up and initialization is complete
10774 +#define LS_PHY_CLK_25MHZ 0x02000000 // Set PHY clock to 25 MHz (else 156.125 MHz)
10775 +#define LS_PHY_CLK_EN 0x01000000 // Enable clock to PHY
10776 +#define LS_XAUI_LINK_UP 0x00000010 // XAUI link is up
10777 +#define LS_XAUI_LINK_CHNG 0x00000008 // XAUI link status has changed
10778 +#define LS_LINK_ALARM 0x00000004 // Link alarm pin
10779 +#define LS_ATTN_CTRL_MASK 0x00000003 // Mask link attention control bits
10780 +#define LS_ATTN_ALARM 0x00000000 // 00 => Attn on link alarm
10781 +#define LS_ATTN_ALARM_OR_STAT_CHNG 0x00000001 // 01 => Attn on link alarm or status change
10782 +#define LS_ATTN_STAT_CHNG 0x00000002 // 10 => Attn on link status change
10783 +#define LS_ATTN_NONE 0x00000003 // 11 => no Attn
10784 +
10785 +// Link Address High Registers
10786 +#define LINK_ADDR_ENABLE 0x80000000 // Enable this link address
10787 +
10788 +
10789 +/***************************************************************************
10790 + * XGXS XAUI XGMII Extender registers
10791 + *
10792 + * Full register descriptions can be found in mxgxs.pdf
10793 + ***************************************************************************/
10794 +// XGXS Register Map
10795 +#define XGXS_ADDRESS_CONTROL1 0x0000 // XS Control 1
10796 +#define XGXS_ADDRESS_STATUS1 0x0001 // XS Status 1
10797 +#define XGXS_ADDRESS_DEVID_LOW 0x0002 // XS Device ID (low)
10798 +#define XGXS_ADDRESS_DEVID_HIGH 0x0003 // XS Device ID (high)
10799 +#define XGXS_ADDRESS_SPEED 0x0004 // XS Speed ability
10800 +#define XGXS_ADDRESS_DEV_LOW 0x0005 // XS Devices in package
10801 +#define XGXS_ADDRESS_DEV_HIGH 0x0006 // XS Devices in package
10802 +#define XGXS_ADDRESS_STATUS2 0x0008 // XS Status 2
10803 +#define XGXS_ADDRESS_PKGID_lOW 0x000E // XS Package Identifier
10804 +#define XGXS_ADDRESS_PKGID_HIGH 0x000F // XS Package Identifier
10805 +#define XGXS_ADDRESS_LANE_STATUS 0x0018 // 10G XGXS Lane Status
10806 +#define XGXS_ADDRESS_TEST_CTRL 0x0019 // 10G XGXS Test Control
10807 +#define XGXS_ADDRESS_RESET_LO1 0x8000 // Vendor-Specific Reset Lo 1
10808 +#define XGXS_ADDRESS_RESET_LO2 0x8001 // Vendor-Specific Reset Lo 2
10809 +#define XGXS_ADDRESS_RESET_HI1 0x8002 // Vendor-Specific Reset Hi 1
10810 +#define XGXS_ADDRESS_RESET_HI2 0x8003 // Vendor-Specific Reset Hi 2
10811 +
10812 +// XS Control 1 register bit definitions
10813 +#define XGXS_CONTROL1_RESET 0x8000 // Reset - self clearing
10814 +#define XGXS_CONTROL1_LOOPBACK 0x4000 // Enable loopback
10815 +#define XGXS_CONTROL1_SPEED1 0x2000 // 0 = unspecified, 1 = 10Gb+
10816 +#define XGXS_CONTROL1_LOWPOWER 0x0400 // 1 = Low power mode
10817 +#define XGXS_CONTROL1_SPEED2 0x0040 // Same as SPEED1 (?)
10818 +#define XGXS_CONTROL1_SPEED 0x003C // Everything reserved except zero (?)
10819 +
10820 +// XS Status 1 register bit definitions
10821 +#define XGXS_STATUS1_FAULT 0x0080 // Fault detected
10822 +#define XGXS_STATUS1_LINK 0x0004 // 1 = Link up
10823 +#define XGXS_STATUS1_LOWPOWER 0x0002 // 1 = Low power supported
10824 +
10825 +// XS Speed register bit definitions
10826 +#define XGXS_SPEED_10G 0x0001 // 1 = 10G capable
10827 +
10828 +// XS Devices register bit definitions
10829 +#define XGXS_DEVICES_DTE 0x0020 // DTE XS Present
10830 +#define XGXS_DEVICES_PHY 0x0010 // PHY XS Present
10831 +#define XGXS_DEVICES_PCS 0x0008 // PCS Present
10832 +#define XGXS_DEVICES_WIS 0x0004 // WIS Present
10833 +#define XGXS_DEVICES_PMD 0x0002 // PMD/PMA Present
10834 +#define XGXS_DEVICES_CLAUSE22 0x0001 // Clause 22 registers present
10835 +
10836 +// XS Devices High register bit definitions
10837 +#define XGXS_DEVICES_VENDOR2 0x8000 // Vendor specific device 2
10838 +#define XGXS_DEVICES_VENDOR1 0x4000 // Vendor specific device 1
10839 +
10840 +// XS Status 2 register bit definitions
10841 +#define XGXS_STATUS2_DEV_MASK 0xC000 // Device present mask
10842 +#define XGXS_STATUS2_DEV_RESPOND 0x8000 // Device responding
10843 +#define XGXS_STATUS2_XMT_FAULT 0x0800 // Transmit fault
10844 +#define XGXS_STATUS2_RCV_FAULT 0x0400 // Receive fault
10845 +
10846 +// XS Package ID High register bit definitions
10847 +#define XGXS_PKGID_HIGH_ORG 0xFC00 // Organizationally Unique
10848 +#define XGXS_PKGID_HIGH_MFG 0x03F0 // Manufacturer Model
10849 +#define XGXS_PKGID_HIGH_REV 0x000F // Revision Number
10850 +
10851 +// XS Lane Status register bit definitions
10852 +#define XGXS_LANE_PHY 0x1000 // PHY/DTE lane alignment status
10853 +#define XGXS_LANE_PATTERN 0x0800 // Pattern testing ability
10854 +#define XGXS_LANE_LOOPBACK 0x0400 // PHY loopback ability
10855 +#define XGXS_LANE_SYNC3 0x0008 // Lane 3 sync
10856 +#define XGXS_LANE_SYNC2 0x0004 // Lane 2 sync
10857 +#define XGXS_LANE_SYNC1 0x0002 // Lane 1 sync
10858 +#define XGXS_LANE_SYNC0 0x0001 // Lane 0 sync
10859 +
10860 +// XS Test Control register bit definitions
10861 +#define XGXS_TEST_PATTERN_ENABLE 0x0004 // Test pattern enabled
10862 +#define XGXS_TEST_PATTERN_MASK 0x0003 // Test patterns
10863 +#define XGXS_TEST_PATTERN_RSVD 0x0003 // Test pattern - reserved
10864 +#define XGXS_TEST_PATTERN_MIX 0x0002 // Test pattern - mixed
10865 +#define XGXS_TEST_PATTERN_LOW 0x0001 // Test pattern - low
10866 +#define XGXS_TEST_PATTERN_HIGH 0x0001 // Test pattern - high
10867 +
10868 +/***************************************************************************
10869 + * External MDIO Bus Registers
10870 + *
10871 + * Full register descriptions can be found in PHY/XENPAK/IEEE specs
10872 + ***************************************************************************/
10873 +// LASI (Link Alarm Status Interrupt) Registers (located in MIIM_DEV_PHY_PMA device)
10874 +#define LASI_RX_ALARM_CONTROL 0x9000 // LASI RX_ALARM Control
10875 +#define LASI_TX_ALARM_CONTROL 0x9001 // LASI TX_ALARM Control
10876 +#define LASI_CONTROL 0x9002 // LASI Control
10877 +#define LASI_RX_ALARM_STATUS 0x9003 // LASI RX_ALARM Status
10878 +#define LASI_TX_ALARM_STATUS 0x9004 // LASI TX_ALARM Status
10879 +#define LASI_STATUS 0x9005 // LASI Status
10880 +
10881 +// LASI_CONTROL bit definitions
10882 +#define LASI_CTL_RX_ALARM_ENABLE 0x0004 // Enable RX_ALARM interrupts
10883 +#define LASI_CTL_TX_ALARM_ENABLE 0x0002 // Enable TX_ALARM interrupts
10884 +#define LASI_CTL_LS_ALARM_ENABLE 0x0001 // Enable Link Status interrupts
10885 +
10886 +// LASI_STATUS bit definitions
10887 +#define LASI_STATUS_RX_ALARM 0x0004 // RX_ALARM status
10888 +#define LASI_STATUS_TX_ALARM 0x0002 // TX_ALARM status
10889 +#define LASI_STATUS_LS_ALARM 0x0001 // Link Status
10890 +
10891 +// PHY registers - PMA/PMD (device 1)
10892 +#define PHY_PMA_CONTROL1 0x0000 // PMA/PMD Control 1
10893 +#define PHY_PMA_STATUS1 0x0001 // PMA/PMD Status 1
10894 +#define PHY_PMA_RCV_DET 0x000A // PMA/PMD Receive Signal Detect
10895 + // other PMA/PMD registers exist and can be defined as needed
10896 +
10897 +// PHY registers - PCS (device 3)
10898 +#define PHY_PCS_CONTROL1 0x0000 // PCS Control 1
10899 +#define PHY_PCS_STATUS1 0x0001 // PCS Status 1
10900 +#define PHY_PCS_10G_STATUS1 0x0020 // PCS 10GBASE-R Status 1
10901 + // other PCS registers exist and can be defined as needed
10902 +
10903 +// PHY registers - XS (device 4)
10904 +#define PHY_XS_CONTROL1 0x0000 // XS Control 1
10905 +#define PHY_XS_STATUS1 0x0001 // XS Status 1
10906 +#define PHY_XS_LANE_STATUS 0x0018 // XS Lane Status
10907 + // other XS registers exist and can be defined as needed
10908 +
10909 +// PHY_PMA_CONTROL1 register bit definitions
10910 +#define PMA_CONTROL1_RESET 0x8000 // PMA/PMD reset
10911 +
10912 +// PHY_PMA_RCV_DET register bit definitions
10913 +#define PMA_RCV_DETECT 0x0001 // PMA/PMD receive signal detect
10914 +
10915 +// PHY_PCS_10G_STATUS1 register bit definitions
10916 +#define PCS_10B_BLOCK_LOCK 0x0001 // PCS 10GBASE-R locked to receive blocks
10917 +
10918 +// PHY_XS_LANE_STATUS register bit definitions
10919 +#define XS_LANE_ALIGN 0x1000 // XS transmit lanes aligned
10920 +
10921 +// PHY Microcode download data structure
10922 +typedef struct _PHY_UCODE {
10923 + ushort Addr;
10924 + ushort Data;
10925 +} PHY_UCODE, *PPHY_UCODE;
10926 +
10927 +
10928 +/*****************************************************************************
10929 + * Transmit Sequencer Command Descriptor definitions
10930 + *****************************************************************************/
10931 +
10932 +// This descriptor must be placed in GRAM. The address of this descriptor
10933 +// (along with a couple of control bits) is pushed onto the PxhCmdQ or PxlCmdQ
10934 +// (Proxy high or low command queue). This data is read by the Proxy Sequencer,
10935 +// which pushes it onto the XmtCmdQ, which is (eventually) read by the Transmit
10936 +// Sequencer, causing a packet to be transmitted. Not all fields are valid for
10937 +// all commands - see the Sahara spec for details. Note that this structure is
10938 +// only valid when compiled on a little endian machine.
10939 +#pragma pack(push, 1)
10940 +typedef struct _XMT_DESC {
10941 + ushort XmtLen; // word 0, bits [15:0] - transmit length
10942 + unsigned char XmtCtl; // word 0, bits [23:16] - transmit control byte
10943 + unsigned char Cmd; // word 0, bits [31:24] - transmit command plus misc.
10944 + u32 XmtBufId; // word 1, bits [31:0] - transmit buffer ID
10945 + unsigned char TcpStrt; // word 2, bits [7:0] - byte address of TCP header
10946 + unsigned char IpStrt; // word 2, bits [15:8] - byte address of IP header
10947 + ushort IpCkSum; // word 2, bits [31:16] - partial IP checksum
10948 + ushort TcpCkSum; // word 3, bits [15:0] - partial TCP checksum
10949 + ushort Rsvd1; // word 3, bits [31:16] - PAD
10950 + u32 Rsvd2; // word 4, bits [31:0] - PAD
10951 + u32 Rsvd3; // word 5, bits [31:0] - PAD
10952 + u32 Rsvd4; // word 6, bits [31:0] - PAD
10953 + u32 Rsvd5; // word 7, bits [31:0] - PAD
10954 +} XMT_DESC, *PXMT_DESC;
10955 +#pragma pack(pop)
10956 +
10957 +// XMT_DESC Cmd byte definitions
10958 + // command codes
10959 +#define XMT_DESC_CMD_RAW_SEND 0 // raw send descriptor
10960 +#define XMT_DESC_CMD_CSUM_INSERT 1 // checksum insert descriptor
10961 +#define XMT_DESC_CMD_FORMAT 2 // format descriptor
10962 +#define XMT_DESC_CMD_PRIME 3 // prime descriptor
10963 +#define XMT_DESC_CMD_CODE_SHFT 6 // comand code shift (shift to bits [31:30] in word 0)
10964 + // shifted command codes
10965 +#define XMT_RAW_SEND (XMT_DESC_CMD_RAW_SEND << XMT_DESC_CMD_CODE_SHFT)
10966 +#define XMT_CSUM_INSERT (XMT_DESC_CMD_CSUM_INSERT << XMT_DESC_CMD_CODE_SHFT)
10967 +#define XMT_FORMAT (XMT_DESC_CMD_FORMAT << XMT_DESC_CMD_CODE_SHFT)
10968 +#define XMT_PRIME (XMT_DESC_CMD_PRIME << XMT_DESC_CMD_CODE_SHFT)
10969 +
10970 +// XMT_DESC Control Byte (XmtCtl) definitions
10971 +// NOTE: These bits do not work on Sahara (Rev A)!
10972 +#define XMT_CTL_PAUSE_FRAME 0x80 // current frame is a pause control frame (for statistics)
10973 +#define XMT_CTL_CONTROL_FRAME 0x40 // current frame is a control frame (for statistics)
10974 +#define XMT_CTL_PER_PKT_QUAL 0x20 // per packet qualifier
10975 +#define XMT_CTL_PAD_MODE_NONE 0x00 // do not pad frame
10976 +#define XMT_CTL_PAD_MODE_64 0x08 // pad frame to 64 bytes
10977 +#define XMT_CTL_PAD_MODE_VLAN_68 0x10 // pad frame to 64 bytes, and VLAN frames to 68 bytes
10978 +#define XMT_CTL_PAD_MODE_68 0x18 // pad frame to 68 bytes
10979 +#define XMT_CTL_GEN_FCS 0x04 // generate FCS (CRC) for this frame
10980 +#define XMT_CTL_DELAY_FCS_0 0x00 // do not delay FCS calcution
10981 +#define XMT_CTL_DELAY_FCS_1 0x01 // delay FCS calculation by 1 (4-byte) word
10982 +#define XMT_CTL_DELAY_FCS_2 0x02 // delay FCS calculation by 2 (4-byte) words
10983 +#define XMT_CTL_DELAY_FCS_3 0x03 // delay FCS calculation by 3 (4-byte) words
10984 +
10985 +// XMT_DESC XmtBufId definition
10986 +#define XMT_BUF_ID_SHFT 8 // The Xmt buffer ID is formed by dividing
10987 + // the buffer (DRAM) address by 256 (or << 8)
10988 +
10989 +/*****************************************************************************
10990 + * Receiver Sequencer Definitions
10991 + *****************************************************************************/
10992 +
10993 +// Receive Event Queue (queues 3 - 6) bit definitions
10994 +#define RCV_EVTQ_RBFID_MASK 0x0000FFFF // bit mask for the Receive Buffer ID
10995 +
10996 +// Receive Buffer ID definition
10997 +#define RCV_BUF_ID_SHFT 5 // The Rcv buffer ID is formed by dividing
10998 + // the buffer (DRAM) address by 32 (or << 5)
10999 +
11000 +// Format of the 18 byte Receive Buffer returned by the
11001 +// Receive Sequencer for received packets
11002 +#pragma pack(push, 1)
11003 +typedef struct _RCV_BUF_HDR {
11004 + u32 Status; // Status word from Rcv Seq Parser
11005 + ushort Length; // Rcv packet byte count
11006 + union {
11007 + ushort TcpCsum; // TCP checksum
11008 + struct {
11009 + unsigned char TcpCsumL; // lower 8 bits of the TCP checksum
11010 + unsigned char LinkHash; // Link hash (multicast frames only)
11011 + };
11012 + };
11013 + ushort SktHash; // Socket hash
11014 + unsigned char TcpHdrOffset; // TCP header offset into packet
11015 + unsigned char IpHdrOffset; // IP header offset into packet
11016 + u32 TpzHash; // Toeplitz hash
11017 + ushort Reserved; // Reserved
11018 +} RCV_BUF_HDR, *PRCV_BUF_HDR;
11019 +#pragma pack(pop)
11020 +
11021 +
11022 +/*****************************************************************************
11023 + * Queue definitions
11024 + *****************************************************************************/
11025 +
11026 +// Ingress (read only) queue numbers
11027 +#define PXY_BUF_Q 0 // Proxy Buffer Queue
11028 +#define HST_EVT_Q 1 // Host Event Queue
11029 +#define XMT_BUF_Q 2 // Transmit Buffer Queue
11030 +#define SKT_EVL_Q 3 // RcvSqr Socket Event Low Priority Queue
11031 +#define RCV_EVL_Q 4 // RcvSqr Rcv Event Low Priority Queue
11032 +#define SKT_EVH_Q 5 // RcvSqr Socket Event High Priority Queue
11033 +#define RCV_EVH_Q 6 // RcvSqr Rcv Event High Priority Queue
11034 +#define DMA_RSP_Q 7 // Dma Response Queue - one per CPU context
11035 +// Local (read/write) queue numbers
11036 +#define LOCAL_A_Q 8 // Spare local Queue
11037 +#define LOCAL_B_Q 9 // Spare local Queue
11038 +#define LOCAL_C_Q 10 // Spare local Queue
11039 +#define FSM_EVT_Q 11 // Finite-State-Machine Event Queue
11040 +#define SBF_PAL_Q 12 // System Buffer Physical Address (low) Queue
11041 +#define SBF_PAH_Q 13 // System Buffer Physical Address (high) Queue
11042 +#define SBF_VAL_Q 14 // System Buffer Virtual Address (low) Queue
11043 +#define SBF_VAH_Q 15 // System Buffer Virtual Address (high) Queue
11044 +// Egress (write only) queue numbers
11045 +#define H2G_CMD_Q 16 // Host to GlbRam DMA Command Queue
11046 +#define H2D_CMD_Q 17 // Host to DRAM DMA Command Queue
11047 +#define G2H_CMD_Q 18 // GlbRam to Host DMA Command Queue
11048 +#define G2D_CMD_Q 19 // GlbRam to DRAM DMA Command Queue
11049 +#define D2H_CMD_Q 20 // DRAM to Host DMA Command Queue
11050 +#define D2G_CMD_Q 21 // DRAM to GlbRam DMA Command Queue
11051 +#define D2D_CMD_Q 22 // DRAM to DRAM DMA Command Queue
11052 +#define PXL_CMD_Q 23 // Low Priority Proxy Command Queue
11053 +#define PXH_CMD_Q 24 // High Priority Proxy Command Queue
11054 +#define RSQ_CMD_Q 25 // Receive Sequencer Command Queue
11055 +#define RCV_BUF_Q 26 // Receive Buffer Queue
11056 +
11057 +// Bit definitions for the Proxy Command queues (PXL_CMD_Q and PXH_CMD_Q)
11058 +#define PXY_COPY_EN 0x00200000 // enable copy of xmt descriptor to xmt command queue
11059 +#define PXY_SIZE_16 0x00000000 // copy 16 bytes
11060 +#define PXY_SIZE_32 0x00100000 // copy 32 bytes
11061 +
11062 +/*****************************************************************************
11063 + * SXG EEPROM/Flash Configuration Definitions
11064 + *****************************************************************************/
11065 +#pragma pack(push, 1)
11066 +
11067 +//
11068 +typedef struct _HW_CFG_DATA {
11069 + ushort Addr;
11070 + union {
11071 + ushort Data;
11072 + ushort Checksum;
11073 + };
11074 +} HW_CFG_DATA, *PHW_CFG_DATA;
11075 +
11076 +//
11077 +#define NUM_HW_CFG_ENTRIES ((128/sizeof(HW_CFG_DATA)) - 4)
11078 +
11079 +// MAC address
11080 +typedef struct _SXG_CONFIG_MAC {
11081 + unsigned char MacAddr[6]; // MAC Address
11082 +} SXG_CONFIG_MAC, *PSXG_CONFIG_MAC;
11083 +
11084 +//
11085 +typedef struct _ATK_FRU {
11086 + unsigned char PartNum[6];
11087 + unsigned char Revision[2];
11088 + unsigned char Serial[14];
11089 +} ATK_FRU, *PATK_FRU;
11090 +
11091 +// OEM FRU Format types
11092 +#define ATK_FRU_FORMAT 0x0000
11093 +#define CPQ_FRU_FORMAT 0x0001
11094 +#define DELL_FRU_FORMAT 0x0002
11095 +#define HP_FRU_FORMAT 0x0003
11096 +#define IBM_FRU_FORMAT 0x0004
11097 +#define EMC_FRU_FORMAT 0x0005
11098 +#define NO_FRU_FORMAT 0xFFFF
11099 +
11100 +// EEPROM/Flash Format
11101 +typedef struct _SXG_CONFIG {
11102 + //
11103 + // Section 1 (128 bytes)
11104 + //
11105 + ushort MagicWord; // EEPROM/FLASH Magic code 'A5A5'
11106 + ushort SpiClks; // SPI bus clock dividers
11107 + HW_CFG_DATA HwCfg[NUM_HW_CFG_ENTRIES];
11108 + //
11109 + //
11110 + //
11111 + ushort Version; // EEPROM format version
11112 + SXG_CONFIG_MAC MacAddr[4]; // space for 4 MAC addresses
11113 + ATK_FRU AtkFru; // FRU information
11114 + ushort OemFruFormat; // OEM FRU format type
11115 + unsigned char OemFru[76]; // OEM FRU information (optional)
11116 + ushort Checksum; // Checksum of section 2
11117 + // CS info XXXTODO
11118 +} SXG_CONFIG, *PSXG_CONFIG;
11119 +#pragma pack(pop)
11120 +
11121 +/*****************************************************************************
11122 + * Miscellaneous Hardware definitions
11123 + *****************************************************************************/
11124 +
11125 +// Sahara (ASIC level) defines
11126 +#define SAHARA_GRAM_SIZE 0x020000 // GRAM size - 128 KB
11127 +#define SAHARA_DRAM_SIZE 0x200000 // DRAM size - 2 MB
11128 +#define SAHARA_QRAM_SIZE 0x004000 // QRAM size - 16K entries (64 KB)
11129 +#define SAHARA_WCS_SIZE 0x002000 // WCS - 8K instructions (x 108 bits)
11130 +
11131 +// Arabia (board level) defines
11132 +#define FLASH_SIZE 0x080000 // 512 KB (4 Mb)
11133 +#define EEPROM_SIZE_XFMR 512 // true EEPROM size (bytes), including xfmr area
11134 +#define EEPROM_SIZE_NO_XFMR 256 // EEPROM size excluding xfmr area
11135 --- /dev/null
11136 +++ b/drivers/staging/sxg/sxg_os.h
11137 @@ -0,0 +1,154 @@
11138 +/**************************************************************************
11139 + *
11140 + * Copyright (C) 2000-2008 Alacritech, Inc. All rights reserved.
11141 + *
11142 + * Redistribution and use in source and binary forms, with or without
11143 + * modification, are permitted provided that the following conditions
11144 + * are met:
11145 + *
11146 + * 1. Redistributions of source code must retain the above copyright
11147 + * notice, this list of conditions and the following disclaimer.
11148 + * 2. Redistributions in binary form must reproduce the above
11149 + * copyright notice, this list of conditions and the following
11150 + * disclaimer in the documentation and/or other materials provided
11151 + * with the distribution.
11152 + *
11153 + * THIS SOFTWARE IS PROVIDED BY ALACRITECH, INC. ``AS IS'' AND ANY
11154 + * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
11155 + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
11156 + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ALACRITECH, INC. OR
11157 + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
11158 + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
11159 + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
11160 + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
11161 + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
11162 + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
11163 + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
11164 + * SUCH DAMAGE.
11165 + *
11166 + * The views and conclusions contained in the software and documentation
11167 + * are those of the authors and should not be interpreted as representing
11168 + * official policies, either expressed or implied, of Alacritech, Inc.
11169 + *
11170 + **************************************************************************/
11171 +
11172 +/*
11173 + * FILENAME: sxg_os.h
11174 + *
11175 + * These are the Linux-specific definitions required for the SLICOSS
11176 + * driver, which should allow for greater portability to other OSes.
11177 + */
11178 +#ifndef _SLIC_OS_SPECIFIC_H_
11179 +#define _SLIC_OS_SPECIFIC_H_
11180 +
11181 +#define FALSE (0)
11182 +#define TRUE (1)
11183 +
11184 +
11185 +typedef struct _LIST_ENTRY {
11186 + struct _LIST_ENTRY *nle_flink;
11187 + struct _LIST_ENTRY *nle_blink;
11188 +} list_entry, LIST_ENTRY, *PLIST_ENTRY;
11189 +
11190 +#define InitializeListHead(l) \
11191 + (l)->nle_flink = (l)->nle_blink = (l)
11192 +
11193 +#define IsListEmpty(h) \
11194 + ((h)->nle_flink == (h))
11195 +
11196 +#define RemoveEntryList(e) \
11197 + do { \
11198 + list_entry *b; \
11199 + list_entry *f; \
11200 + \
11201 + f = (e)->nle_flink; \
11202 + b = (e)->nle_blink; \
11203 + b->nle_flink = f; \
11204 + f->nle_blink = b; \
11205 + } while (0)
11206 +
11207 +/* These two have to be inlined since they return things. */
11208 +
11209 +static __inline PLIST_ENTRY
11210 +RemoveHeadList(list_entry *l)
11211 +{
11212 + list_entry *f;
11213 + list_entry *e;
11214 +
11215 + e = l->nle_flink;
11216 + f = e->nle_flink;
11217 + l->nle_flink = f;
11218 + f->nle_blink = l;
11219 +
11220 + return (e);
11221 +}
11222 +
11223 +static __inline PLIST_ENTRY
11224 +RemoveTailList(list_entry *l)
11225 +{
11226 + list_entry *b;
11227 + list_entry *e;
11228 +
11229 + e = l->nle_blink;
11230 + b = e->nle_blink;
11231 + l->nle_blink = b;
11232 + b->nle_flink = l;
11233 +
11234 + return (e);
11235 +}
11236 +
11237 +
11238 +#define InsertTailList(l, e) \
11239 + do { \
11240 + list_entry *b; \
11241 + \
11242 + b = (l)->nle_blink; \
11243 + (e)->nle_flink = (l); \
11244 + (e)->nle_blink = b; \
11245 + b->nle_flink = (e); \
11246 + (l)->nle_blink = (e); \
11247 + } while (0)
11248 +
11249 +#define InsertHeadList(l, e) \
11250 + do { \
11251 + list_entry *f; \
11252 + \
11253 + f = (l)->nle_flink; \
11254 + (e)->nle_flink = f; \
11255 + (e)->nle_blink = l; \
11256 + f->nle_blink = (e); \
11257 + (l)->nle_flink = (e); \
11258 + } while (0)
11259 +
11260 +
11261 +#define ATK_DEBUG 1
11262 +
11263 +#if ATK_DEBUG
11264 +#define SLIC_TIMESTAMP(value) { \
11265 + struct timeval timev; \
11266 + do_gettimeofday(&timev); \
11267 + value = timev.tv_sec*1000000 + timev.tv_usec; \
11268 +}
11269 +#else
11270 +#define SLIC_TIMESTAMP(value)
11271 +#endif
11272 +
11273 +
11274 +/****************** SXG DEFINES *****************************************/
11275 +
11276 +#ifdef ATKDBG
11277 +#define SXG_TIMESTAMP(value) { \
11278 + struct timeval timev; \
11279 + do_gettimeofday(&timev); \
11280 + value = timev.tv_sec*1000000 + timev.tv_usec; \
11281 +}
11282 +#else
11283 +#define SXG_TIMESTAMP(value)
11284 +#endif
11285 +
11286 +#define WRITE_REG(reg,value,flush) sxg_reg32_write((&reg), (value), (flush))
11287 +#define WRITE_REG64(a,reg,value,cpu) sxg_reg64_write((a),(&reg),(value),(cpu))
11288 +#define READ_REG(reg,value) (value) = readl((void __iomem *)(&reg))
11289 +
11290 +#endif /* _SLIC_OS_SPECIFIC_H_ */
11291 +
11292 --- /dev/null
11293 +++ b/drivers/staging/sxg/sxgphycode.h
11294 @@ -0,0 +1,349 @@
11295 +/*
11296 + * Copyright (C) 1997-2008 Alacritech, Inc. All rights reserved
11297 + *
11298 + * sxgphycode.h:
11299 + *
11300 + * This file PHY microcode and register initialization data.
11301 + */
11302 +
11303 +/**********************************************************************
11304 + * PHY Microcode
11305 + *
11306 + * The following contains both PHY microcode and PHY register
11307 + * initialization data. It is specific to both the PHY and the
11308 + * type of transceiver.
11309 + *
11310 + **********************************************************************/
11311 +
11312 +/*
11313 + * Download for AEL2005C PHY with SR/LR transceiver (10GBASE-SR or 10GBASE-LR)
11314 + */
11315 +static PHY_UCODE PhyUcode[] = {
11316 + /*
11317 + * NOTE: An address of 0 is a special case. When the download routine
11318 + * sees an address of 0, it does not write to the PHY. Instead, it
11319 + * delays the download. The length of the delay (in ms) is given in
11320 + * the data field.
11321 + *
11322 + * Delays are required at certain points.
11323 + */
11324 +
11325 + /*
11326 + * Platform-specific MDIO Patches:
11327 + * (include patches for 10G RX polarity flip, 50Mhz Synth, etc)
11328 + */
11329 + /* Addr, Data */
11330 + {0xc017, 0xfeb0}, /* flip RX_LOS polarity (mandatory */
11331 + /* patch for SFP+ applications) */
11332 + {0xC001, 0x0428}, /* flip RX serial polarity */
11333 +
11334 + {0xc013, 0xf341}, /* invert lxmit clock (mandatory patch) */
11335 + {0xc210, 0x8000}, /* reset datapath (mandatory patch) */
11336 + {0xc210, 0x8100}, /* reset datapath (mandatory patch) */
11337 + {0xc210, 0x8000}, /* reset datapath (mandatory patch) */
11338 + {0xc210, 0x0000}, /* reset datapath (mandatory patch) */
11339 + {0x0000, 0x0032}, /* wait for 50ms for datapath reset to */
11340 + /* complete. (mandatory patch) */
11341 +
11342 + /* Configure the LED's */
11343 + {0xc214, 0x0099}, /* configure the LED drivers */
11344 + {0xc216, 0x5f5f}, /* configure the Activity LED */
11345 + {0xc217, 0x33ff}, /* configure the Link LED */
11346 +
11347 + /* Transceiver-specific MDIO Patches: */
11348 + {0xc010, 0x448a}, /* (bit 14) mask out high BER input from the */
11349 + /* LOS signal in 1.000A */
11350 + /* (mandatory patch for SR code)*/
11351 + {0xc003, 0x0181}, /* (bit 7) enable the CDR inc setting in */
11352 + /* 1.C005 (mandatory patch for SR code) */
11353 +
11354 + /* Transceiver-specific Microcontroller Initialization: */
11355 + {0xc04a, 0x5200}, /* activate microcontroller and pause */
11356 + {0x0000, 0x0032}, /* wait 50ms for microcontroller before */
11357 + /* writing in code. */
11358 +
11359 + /* code block starts here: */
11360 + {0xcc00, 0x2009},
11361 + {0xcc01, 0x3009},
11362 + {0xcc02, 0x27ff},
11363 + {0xcc03, 0x300f},
11364 + {0xcc04, 0x200c},
11365 + {0xcc05, 0x300c},
11366 + {0xcc06, 0x20c4},
11367 + {0xcc07, 0x3c04},
11368 + {0xcc08, 0x6437},
11369 + {0xcc09, 0x20c4},
11370 + {0xcc0a, 0x3c04},
11371 + {0xcc0b, 0x6437},
11372 + {0xcc0c, 0x25c4},
11373 + {0xcc0d, 0x3c54},
11374 + {0xcc0e, 0x6724},
11375 + {0xcc0f, 0x25c4},
11376 + {0xcc10, 0x3c54},
11377 + {0xcc11, 0x6724},
11378 + {0xcc12, 0x2042},
11379 + {0xcc13, 0x3012},
11380 + {0xcc14, 0x1002},
11381 + {0xcc15, 0x2482},
11382 + {0xcc16, 0x3012},
11383 + {0xcc17, 0x1002},
11384 + {0xcc18, 0x2a32},
11385 + {0xcc19, 0x3002},
11386 + {0xcc1a, 0x1002},
11387 + {0xcc1b, 0x200d},
11388 + {0xcc1c, 0x304d},
11389 + {0xcc1d, 0x2862},
11390 + {0xcc1e, 0x3012},
11391 + {0xcc1f, 0x1002},
11392 + {0xcc20, 0x2982},
11393 + {0xcc21, 0x3002},
11394 + {0xcc22, 0x1002},
11395 + {0xcc23, 0x628f},
11396 + {0xcc24, 0x20a4},
11397 + {0xcc25, 0x3004},
11398 + {0xcc26, 0x6438},
11399 + {0xcc27, 0x20a4},
11400 + {0xcc28, 0x3004},
11401 + {0xcc29, 0x6438},
11402 + {0xcc2a, 0x2015},
11403 + {0xcc2b, 0x3005},
11404 + {0xcc2c, 0x5853},
11405 + {0xcc2d, 0x2bd2},
11406 + {0xcc2e, 0x3002},
11407 + {0xcc2f, 0x1342},
11408 + {0xcc30, 0x200c},
11409 + {0xcc31, 0x300c},
11410 + {0xcc32, 0x2ff7},
11411 + {0xcc33, 0x30f7},
11412 + {0xcc34, 0x20c4},
11413 + {0xcc35, 0x3c04},
11414 + {0xcc36, 0x6724},
11415 + {0xcc37, 0x20c4},
11416 + {0xcc38, 0x3c04},
11417 + {0xcc39, 0x6724},
11418 + {0xcc3a, 0x2d32},
11419 + {0xcc3b, 0x3002},
11420 + {0xcc3c, 0x1002},
11421 + {0xcc3d, 0x2008},
11422 + {0xcc3e, 0x3008},
11423 + {0xcc3f, 0x5c83},
11424 + {0xcc40, 0x2d52},
11425 + {0xcc41, 0x3002},
11426 + {0xcc42, 0x1352},
11427 + {0xcc43, 0x2008},
11428 + {0xcc44, 0x3008},
11429 + {0xcc45, 0x5c83},
11430 + {0xcc46, 0x2d32},
11431 + {0xcc47, 0x3002},
11432 + {0xcc48, 0x1352},
11433 + {0xcc49, 0x201c},
11434 + {0xcc4a, 0x300c},
11435 + {0xcc4b, 0x200d},
11436 + {0xcc4c, 0x310d},
11437 + {0xcc4d, 0x2862},
11438 + {0xcc4e, 0x3012},
11439 + {0xcc4f, 0x1002},
11440 + {0xcc50, 0x2ed2},
11441 + {0xcc51, 0x3002},
11442 + {0xcc52, 0x1342},
11443 + {0xcc53, 0x6f72},
11444 + {0xcc54, 0x1002},
11445 + {0xcc55, 0x628f},
11446 + {0xcc56, 0x2514},
11447 + {0xcc57, 0x3c64},
11448 + {0xcc58, 0x6436},
11449 + {0xcc59, 0x2514},
11450 + {0xcc5a, 0x3c64},
11451 + {0xcc5b, 0x6436},
11452 + {0xcc5c, 0x2fa4},
11453 + {0xcc5d, 0x3cd4},
11454 + {0xcc5e, 0x6624},
11455 + {0xcc5f, 0x2fa4},
11456 + {0xcc60, 0x3cd4},
11457 + {0xcc61, 0x6624},
11458 + {0xcc62, 0x2f45},
11459 + {0xcc63, 0x3015},
11460 + {0xcc64, 0x5653},
11461 + {0xcc65, 0x2eb2},
11462 + {0xcc66, 0x3002},
11463 + {0xcc67, 0x13d2},
11464 + {0xcc68, 0x2ed2},
11465 + {0xcc69, 0x3002},
11466 + {0xcc6a, 0x1002},
11467 + {0xcc6b, 0x6f72},
11468 + {0xcc6c, 0x1002},
11469 + {0xcc6d, 0x628f},
11470 + {0xcc6e, 0x2602},
11471 + {0xcc6f, 0x3012},
11472 + {0xcc70, 0x1002},
11473 + {0xcc71, 0x200d},
11474 + {0xcc72, 0x320d},
11475 + {0xcc73, 0x2862},
11476 + {0xcc74, 0x3012},
11477 + {0xcc75, 0x1002},
11478 + {0xcc76, 0x25c4},
11479 + {0xcc77, 0x3c54},
11480 + {0xcc78, 0x6437},
11481 + {0xcc79, 0x25c4},
11482 + {0xcc7a, 0x3c54},
11483 + {0xcc7b, 0x6437},
11484 + {0xcc7c, 0x20c4},
11485 + {0xcc7d, 0x3c04},
11486 + {0xcc7e, 0x6724},
11487 + {0xcc7f, 0x20c4},
11488 + {0xcc80, 0x3c04},
11489 + {0xcc81, 0x6724},
11490 + {0xcc82, 0x6f72},
11491 + {0xcc83, 0x1002},
11492 + {0xcc84, 0x628f},
11493 + {0xcc85, 0x26f2},
11494 + {0xcc86, 0x3012},
11495 + {0xcc87, 0x1002},
11496 + {0xcc88, 0xc503},
11497 + {0xcc89, 0xd5d5},
11498 + {0xcc8a, 0xc600},
11499 + {0xcc8b, 0x2a6d},
11500 + {0xcc8c, 0xc601},
11501 + {0xcc8d, 0x2a4c},
11502 + {0xcc8e, 0xc602},
11503 + {0xcc8f, 0x0111},
11504 + {0xcc90, 0xc60c},
11505 + {0xcc91, 0x5900},
11506 + {0xcc92, 0xc710},
11507 + {0xcc93, 0x0700},
11508 + {0xcc94, 0xc718},
11509 + {0xcc95, 0x0700},
11510 + {0xcc96, 0xc720},
11511 + {0xcc97, 0x4700},
11512 + {0xcc98, 0xc801},
11513 + {0xcc99, 0x7f50},
11514 + {0xcc9a, 0xc802},
11515 + {0xcc9b, 0x7760},
11516 + {0xcc9c, 0xc803},
11517 + {0xcc9d, 0x7fce},
11518 + {0xcc9e, 0xc804},
11519 + {0xcc9f, 0x5700},
11520 + {0xcca0, 0xc805},
11521 + {0xcca1, 0x5f11},
11522 + {0xcca2, 0xc806},
11523 + {0xcca3, 0x4751},
11524 + {0xcca4, 0xc807},
11525 + {0xcca5, 0x57e1},
11526 + {0xcca6, 0xc808},
11527 + {0xcca7, 0x2700},
11528 + {0xcca8, 0xc809},
11529 + {0xcca9, 0x0000},
11530 + {0xccaa, 0xc821},
11531 + {0xccab, 0x0002},
11532 + {0xccac, 0xc822},
11533 + {0xccad, 0x0014},
11534 + {0xccae, 0xc832},
11535 + {0xccaf, 0x1186},
11536 + {0xccb0, 0xc847},
11537 + {0xccb1, 0x1e02},
11538 + {0xccb2, 0xc013},
11539 + {0xccb3, 0xf341},
11540 + {0xccb4, 0xc01a},
11541 + {0xccb5, 0x0446},
11542 + {0xccb6, 0xc024},
11543 + {0xccb7, 0x1000},
11544 + {0xccb8, 0xc025},
11545 + {0xccb9, 0x0a00},
11546 + {0xccba, 0xc026},
11547 + {0xccbb, 0x0c0c},
11548 + {0xccbc, 0xc027},
11549 + {0xccbd, 0x0c0c},
11550 + {0xccbe, 0xc029},
11551 + {0xccbf, 0x00a0},
11552 + {0xccc0, 0xc030},
11553 + {0xccc1, 0x0a00},
11554 + {0xccc2, 0xc03c},
11555 + {0xccc3, 0x001c},
11556 + {0xccc4, 0xc005},
11557 + {0xccc5, 0x7a06},
11558 + {0xccc6, 0x0000},
11559 + {0xccc7, 0x0000},
11560 + {0xccc8, 0x628f},
11561 + {0xccc9, 0x26f2},
11562 + {0xccca, 0x3012},
11563 + {0xcccb, 0x1002},
11564 + {0xcccc, 0xc620},
11565 + {0xcccd, 0x0000},
11566 + {0xccce, 0xc621},
11567 + {0xcccf, 0x003f},
11568 + {0xccd0, 0xc622},
11569 + {0xccd1, 0x0000},
11570 + {0xccd2, 0xc623},
11571 + {0xccd3, 0x0000},
11572 + {0xccd4, 0xc624},
11573 + {0xccd5, 0x0000},
11574 + {0xccd6, 0xc625},
11575 + {0xccd7, 0x0000},
11576 + {0xccd8, 0xc627},
11577 + {0xccd9, 0x0000},
11578 + {0xccda, 0xc628},
11579 + {0xccdb, 0x0000},
11580 + {0xccdc, 0xc62c},
11581 + {0xccdd, 0x0000},
11582 + {0xccde, 0x0000},
11583 + {0xccdf, 0x0000},
11584 + {0xcce0, 0x628f},
11585 + {0xcce1, 0xd019},
11586 + {0xcce2, 0x26f2},
11587 + {0xcce3, 0x3012},
11588 + {0xcce4, 0x1002},
11589 + {0xcce5, 0xc210},
11590 + {0xcce6, 0x8000},
11591 + {0xcce7, 0xc210},
11592 + {0xcce8, 0x8010},
11593 + {0xcce9, 0xc210},
11594 + {0xccea, 0x8000},
11595 + {0xcceb, 0xc210},
11596 + {0xccec, 0x0000},
11597 + {0xcced, 0x0000},
11598 + {0xccee, 0x0000},
11599 + {0xccef, 0x8221},
11600 + {0xccf0, 0x2752},
11601 + {0xccf1, 0x3012},
11602 + {0xccf2, 0x1002},
11603 + {0xccf3, 0x6f72},
11604 + {0xccf4, 0x1002},
11605 + {0xccf5, 0x2806},
11606 + {0xccf6, 0x3006},
11607 + {0xccf7, 0x2007},
11608 + {0xccf8, 0x3cc7},
11609 + {0xccf9, 0xe161},
11610 + {0xccfa, 0xc171},
11611 + {0xccfb, 0x6134},
11612 + {0xccfc, 0x6135},
11613 + {0xccfd, 0x5453},
11614 + {0xccfe, 0x2858},
11615 + {0xccff, 0x3018},
11616 + {0xcd00, 0x1348},
11617 + {0xcd01, 0x6524},
11618 + {0xcd02, 0x27b8},
11619 + {0xcd03, 0x3018},
11620 + {0xcd04, 0x1008},
11621 + {0xcd05, 0x1002},
11622 + {0xcd06, 0x628f},
11623 + {0xcd07, 0x5dd3},
11624 + {0xcd08, 0x2906},
11625 + {0xcd09, 0x3016},
11626 + {0xcd0a, 0x1306},
11627 + {0xcd0b, 0x2ff7},
11628 + {0xcd0c, 0x30f7},
11629 + {0xcd0d, 0x60b7},
11630 + {0xcd0e, 0xdffd},
11631 + {0xcd0f, 0x0008},
11632 + {0xcd10, 0x6f72},
11633 + {0xcd11, 0x1002},
11634 + {0xcd12, 0x0000},
11635 + {0xcdff, 0x0a01},
11636 + /* end of code block */
11637 +
11638 + /* Unpause the microcontroller to start program */
11639 + {0xca00, 0x0080},
11640 + {0xca12, 0x0000},
11641 + {0x0000, 0x000A}, /* wait 10ms just to be safe */
11642 + {0xffff, 0xffff} /* table terminator */
11643 +};