Fix bug in using nor flash storage without SD
[SCSI2SD.git] / software / SCSI2SD / v5.2 / SCSI2SD.cydsn / Generated_Source / PSoC5 / cyfitter_cfg.c
1
2 /*******************************************************************************
3 * File Name: cyfitter_cfg.c
4
5 * PSoC Creator  4.4
6 *
7 * Description:
8 * This file contains device initialization code.
9 * Except for the user defined sections in CyClockStartupError(), this file should not be modified.
10 * This file is automatically generated by PSoC Creator.
11 *
12 ********************************************************************************
13 * Copyright (c) 2007-2020 Cypress Semiconductor.  All rights reserved.
14 * You may use this file only in accordance with the license, terms, conditions, 
15 * disclaimers, and limitations in the end user license agreement accompanying 
16 * the software package with which this file was provided.
17 ********************************************************************************/
18
19 #include <string.h>
20 #include "cytypes.h"
21 #include "cydevice_trm.h"
22 #include "cyfitter.h"
23 #include "CyLib.h"
24 #include "cyfitter_cfg.h"
25
26 #define CY_NEED_CYCLOCKSTARTUPERROR 1
27
28
29 #if defined(__GNUC__) || defined(__ARMCC_VERSION)
30     #define CYPACKED 
31     #define CYPACKED_ATTR __attribute__ ((packed))
32     #define CYALIGNED __attribute__ ((aligned))
33     #define CY_CFG_UNUSED __attribute__ ((unused))
34     #ifndef CY_CFG_SECTION
35         #define CY_CFG_SECTION __attribute__ ((section(".psocinit")))
36     #endif
37     
38     #if defined(__ARMCC_VERSION)
39         #define CY_CFG_MEMORY_BARRIER() __memory_changed()
40     #else
41         #define CY_CFG_MEMORY_BARRIER() __sync_synchronize()
42     #endif
43     
44 #elif defined(__ICCARM__)
45     #include <intrinsics.h>
46
47     #define CYPACKED __packed
48     #define CYPACKED_ATTR 
49     #define CYALIGNED _Pragma("data_alignment=4")
50     #define CY_CFG_UNUSED _Pragma("diag_suppress=Pe177")
51     #define CY_CFG_SECTION _Pragma("location=\".psocinit\"")
52     
53     #define CY_CFG_MEMORY_BARRIER() __DMB()
54     
55 #else
56     #error Unsupported toolchain
57 #endif
58
59 #ifndef CYCODE
60     #define CYCODE
61 #endif
62 #ifndef CYDATA
63     #define CYDATA
64 #endif
65 #ifndef CYFAR
66     #define CYFAR
67 #endif
68 #ifndef CYXDATA
69     #define CYXDATA
70 #endif
71
72
73 CY_CFG_UNUSED
74 static void CYMEMZERO(void *s, size_t n);
75 CY_CFG_UNUSED
76 static void CYMEMZERO(void *s, size_t n)
77 {
78         (void)memset(s, 0, n);
79 }
80 CY_CFG_UNUSED
81 static void CYCONFIGCPY(void *dest, const void *src, size_t n);
82 CY_CFG_UNUSED
83 static void CYCONFIGCPY(void *dest, const void *src, size_t n)
84 {
85         (void)memcpy(dest, src, n);
86 }
87 CY_CFG_UNUSED
88 static void CYCONFIGCPYCODE(void *dest, const void *src, size_t n);
89 CY_CFG_UNUSED
90 static void CYCONFIGCPYCODE(void *dest, const void *src, size_t n)
91 {
92         (void)memcpy(dest, src, n);
93 }
94
95
96
97
98 /* Clock startup error codes                                                   */
99 #define CYCLOCKSTART_NO_ERROR    0u
100 #define CYCLOCKSTART_XTAL_ERROR  1u
101 #define CYCLOCKSTART_32KHZ_ERROR 2u
102 #define CYCLOCKSTART_PLL_ERROR   3u
103 #define CYCLOCKSTART_FLL_ERROR   4u
104 #define CYCLOCKSTART_WCO_ERROR   5u
105
106
107 #ifdef CY_NEED_CYCLOCKSTARTUPERROR
108 /*******************************************************************************
109 * Function Name: CyClockStartupError
110 ********************************************************************************
111 * Summary:
112 *  If an error is encountered during clock configuration (crystal startup error,
113 *  PLL lock error, etc.), the system will end up here.  Unless reimplemented by
114 *  the customer, this function will stop in an infinite loop.
115 *
116 * Parameters:
117 *   void
118 *
119 * Return:
120 *   void
121 *
122 *******************************************************************************/
123 CY_CFG_UNUSED
124 static void CyClockStartupError(uint8 errorCode);
125 CY_CFG_UNUSED
126 static void CyClockStartupError(uint8 errorCode)
127 {
128     /* To remove the compiler warning if errorCode not used.                */
129     errorCode = errorCode;
130
131     /* If we have a clock startup error (bad MHz crystal, PLL lock, etc.),  */
132     /* we will end up here to allow the customer to implement something to  */
133     /* deal with the clock condition.                                       */
134
135 #ifdef CY_CFG_CLOCK_STARTUP_ERROR_CALLBACK
136     CY_CFG_Clock_Startup_ErrorCallback();
137 #else
138     /*  If not using CY_CFG_CLOCK_STARTUP_ERROR_CALLBACK, place your clock startup code here. */
139     /* `#START CyClockStartupError` */
140
141     /* If we have a clock startup error (bad MHz crystal, PLL lock, etc.),  */
142     /* we will end up here to allow the customer to implement something to  */
143     /* deal with the clock condition.                                       */
144
145     /* `#END` */
146
147     while(1) {}
148 #endif /* CY_CFG_CLOCK_STARTUP_ERROR_CALLBACK */
149 }
150 #endif
151
152 #define CY_CFG_BASE_ADDR_COUNT 43u
153 CYPACKED typedef struct
154 {
155         uint8 offset;
156         uint8 value;
157 } CYPACKED_ATTR cy_cfg_addrvalue_t;
158
159
160
161 /*******************************************************************************
162 * Function Name: cfg_write_bytes32
163 ********************************************************************************
164 * Summary:
165 *  This function is used for setting up the chip configuration areas that
166 *  contain relatively sparse data.
167 *
168 * Parameters:
169 *   void
170 *
171 * Return:
172 *   void
173 *
174 *******************************************************************************/
175 static void cfg_write_bytes32(const uint32 addr_table[], const cy_cfg_addrvalue_t data_table[]);
176 static void cfg_write_bytes32(const uint32 addr_table[], const cy_cfg_addrvalue_t data_table[])
177 {
178         /* For 32-bit little-endian architectures */
179         uint32 i, j = 0u;
180         for (i = 0u; i < CY_CFG_BASE_ADDR_COUNT; i++)
181         {
182                 uint32 baseAddr = addr_table[i];
183                 uint8 count = (uint8)baseAddr;
184                 baseAddr &= 0xFFFFFF00u;
185                 while (count != 0u)
186                 {
187                         CY_SET_REG8((void *)(baseAddr + data_table[j].offset), data_table[j].value);
188                         j++;
189                         count--;
190                 }
191         }
192 }
193
194 /*******************************************************************************
195 * Function Name: ClockSetup
196 ********************************************************************************
197 *
198 * Summary:
199 *  Performs the initialization of all of the clocks in the device based on the
200 *  settings in the Clock tab of the DWR.  This includes enabling the requested
201 *  clocks and setting the necessary dividers to produce the desired frequency. 
202 *
203 * Parameters:
204 *  void
205 *
206 * Return:
207 *  void
208 *
209 *******************************************************************************/
210 static void ClockSetup(void);
211 static void ClockSetup(void)
212 {
213         uint32 timeout;
214         uint8 pllLock;
215
216
217         /* Configure Digital Clocks based on settings from Clock DWR */
218         CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0), 0x0000u);
219         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG0_CFG0 + 0x2u), 0x58u);
220         CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0), 0x0000u);
221         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG1_CFG0 + 0x2u), 0x58u);
222         CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG2_CFG0), 0x0001u);
223         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG2_CFG0 + 0x2u), 0x18u);
224         CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_DCFG3_CFG0), 0x0031u);
225         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_DCFG3_CFG0 + 0x2u), 0x18u);
226
227         /* Configure ILO based on settings from Clock DWR */
228         CY_SET_XTND_REG8((void CYFAR *)(CYREG_SLOWCLK_ILO_CR0), 0x06u);
229
230         /* Configure IMO based on settings from Clock DWR */
231         CY_SET_XTND_REG8((void CYFAR *)(CYREG_FASTCLK_IMO_CR), 0x52u);
232         CY_SET_XTND_REG8((void CYFAR *)(CYREG_IMO_TR1), (CY_GET_XTND_REG8((void CYFAR *)CYREG_FLSHID_CUST_TABLES_IMO_USB)));
233
234         /* Configure PLL based on settings from Clock DWR */
235         CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_P), 0x0B19u);
236         CY_SET_XTND_REG16((void CYFAR *)(CYREG_FASTCLK_PLL_CFG0), 0x1251u);
237         /* Wait up to 250us for the PLL to lock */
238         pllLock = 0u;
239         for (timeout = 250u / 10u; (timeout > 0u) && (pllLock != 0x03u); timeout--)
240         { 
241                 pllLock = 0x03u & ((uint8)((uint8)pllLock << 1) | ((CY_GET_XTND_REG8((void CYFAR *)CYREG_FASTCLK_PLL_SR) & 0x01u) >> 0));
242                 CyDelayCycles(10u * 48u); /* Delay 10us based on 48MHz clock */
243         }
244         /* If we ran out of time the PLL didn't lock so go to the error function */
245         if (timeout == 0u)
246         {
247                 CyClockStartupError(CYCLOCKSTART_PLL_ERROR);
248         }
249
250         /* Configure Bus/Master Clock based on settings from Clock DWR */
251         CY_SET_XTND_REG16((void CYFAR *)(CYREG_CLKDIST_MSTR0), 0x0100u);
252         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_MSTR0), 0x07u);
253         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_BCFG0), 0x00u);
254         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_BCFG2), 0x48u);
255         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_MSTR0), 0x00u);
256
257         /* Configure USB Clock based on settings from Clock DWR */
258         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_UCFG), 0x00u);
259         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CLKDIST_LD), 0x02u);
260
261         CY_SET_XTND_REG8((void CYFAR *)(CYREG_PM_ACT_CFG2), ((CY_GET_XTND_REG8((void CYFAR *)CYREG_PM_ACT_CFG2) | 0x0Fu)));
262 }
263
264
265 /* Analog API Functions */
266
267
268 /*******************************************************************************
269 * Function Name: AnalogSetDefault
270 ********************************************************************************
271 *
272 * Summary:
273 *  Sets up the analog portions of the chip to default values based on chip
274 *  configuration options from the project.
275 *
276 * Parameters:
277 *  void
278 *
279 * Return:
280 *  void
281 *
282 *******************************************************************************/
283 static void AnalogSetDefault(void);
284 static void AnalogSetDefault(void)
285 {
286         uint8 bg_xover_inl_trim = CY_GET_XTND_REG8((void CYFAR *)(CYREG_FLSHID_MFG_CFG_BG_XOVER_INL_TRIM + 1u));
287         CY_SET_XTND_REG8((void CYFAR *)(CYREG_BG_DFT0), (bg_xover_inl_trim & 0x07u));
288         CY_SET_XTND_REG8((void CYFAR *)(CYREG_BG_DFT1), ((bg_xover_inl_trim >> 4) & 0x0Fu));
289         CY_SET_XTND_REG8((void CYFAR *)CYREG_PUMP_CR0, 0x44u);
290 }
291
292
293 /*******************************************************************************
294 * Function Name: SetAnalogRoutingPumps
295 ********************************************************************************
296 *
297 * Summary:
298 * Enables or disables the analog pumps feeding analog routing switches.
299 * Intended to be called at startup, based on the Vdda system configuration;
300 * may be called during operation when the user informs us that the Vdda voltage
301 * crossed the pump threshold.
302 *
303 * Parameters:
304 *  enabled - 1 to enable the pumps, 0 to disable the pumps
305 *
306 * Return:
307 *  void
308 *
309 *******************************************************************************/
310 void SetAnalogRoutingPumps(uint8 enabled)
311 {
312         uint8 regValue = CY_GET_XTND_REG8((void CYFAR *)CYREG_PUMP_CR0);
313         if (enabled != 0u)
314         {
315                 regValue |= 0x00u;
316         }
317         else
318         {
319                 regValue &= (uint8)~0x00u;
320         }
321         CY_SET_XTND_REG8((void CYFAR *)CYREG_PUMP_CR0, regValue);
322 }
323
324
325
326
327 /*******************************************************************************
328 * Function Name: cyfitter_cfg
329 ********************************************************************************
330 * Summary:
331 *  This function is called by the start-up code for the selected device. It
332 *  performs all of the necessary device configuration based on the design
333 *  settings.  This includes settings from the Design Wide Resources (DWR) such
334 *  as Clocks and Pins as well as any component configuration that is necessary.
335 *
336 * Parameters:
337 *   void
338 *
339 * Return:
340 *   void
341 *
342 *******************************************************************************/
343
344 void cyfitter_cfg(void)
345 {
346         /* IOPINS0_0 Address: CYREG_PRT0_DM0 Size (bytes): 8 */
347         static const uint8 CYCODE BS_IOPINS0_0_VAL[] = {
348                 0x44u, 0xAAu, 0xAAu, 0x00u, 0x22u, 0x00u, 0x00u, 0x01u};
349
350         /* IOPINS0_7 Address: CYREG_PRT12_DR Size (bytes): 10 */
351         static const uint8 CYCODE BS_IOPINS0_7_VAL[] = {
352                 0x04u, 0x00u, 0x10u, 0x22u, 0x2Eu, 0x0Cu, 0x22u, 0x00u, 0x00u, 0x0Cu};
353
354         /* IOPINS1_7 Address: CYREG_PRT12_DR + 0x0000000Bu Size (bytes): 5 */
355         static const uint8 CYCODE BS_IOPINS1_7_VAL[] = {
356                 0x00u, 0x00u, 0x00u, 0x00u, 0x10u};
357
358         /* IOPINS0_8 Address: CYREG_PRT15_DR Size (bytes): 10 */
359         static const uint8 CYCODE BS_IOPINS0_8_VAL[] = {
360                 0x40u, 0x00u, 0x04u, 0x28u, 0x28u, 0x08u, 0x20u, 0x00u, 0xC0u, 0x00u};
361
362         /* IOPINS0_1 Address: CYREG_PRT1_DM0 Size (bytes): 8 */
363         static const uint8 CYCODE BS_IOPINS0_1_VAL[] = {
364                 0x00u, 0x0Bu, 0x0Bu, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u};
365
366         /* IOPINS0_2 Address: CYREG_PRT2_DM0 Size (bytes): 8 */
367         static const uint8 CYCODE BS_IOPINS0_2_VAL[] = {
368                 0x55u, 0xAAu, 0xAAu, 0x00u, 0xAAu, 0x00u, 0x00u, 0x01u};
369
370         /* IOPINS0_3 Address: CYREG_PRT3_DR Size (bytes): 10 */
371         static const uint8 CYCODE BS_IOPINS0_3_VAL[] = {
372                 0x08u, 0x00u, 0x01u, 0xFEu, 0xFEu, 0x02u, 0xC6u, 0x00u, 0x00u, 0x01u};
373
374         /* IOPINS0_4 Address: CYREG_PRT4_DM0 Size (bytes): 8 */
375         static const uint8 CYCODE BS_IOPINS0_4_VAL[] = {
376                 0xA8u, 0x43u, 0x43u, 0x00u, 0x03u, 0x00u, 0x00u, 0x01u};
377
378         /* IOPINS0_6 Address: CYREG_PRT6_DM0 Size (bytes): 8 */
379         static const uint8 CYCODE BS_IOPINS0_6_VAL[] = {
380                 0x5Au, 0xA4u, 0xA4u, 0x00u, 0xA4u, 0x00u, 0x00u, 0x01u};
381
382         /* PHUB_CFGMEM1 Address: CYREG_PHUB_CFGMEM1_CFG0 Size (bytes): 4 */
383         static const uint8 CYCODE BS_PHUB_CFGMEM1_VAL[] = {
384                 0x00u, 0x01u, 0x00u, 0x00u};
385
386         /* PHUB_CFGMEM2 Address: CYREG_PHUB_CFGMEM2_CFG0 Size (bytes): 4 */
387         static const uint8 CYCODE BS_PHUB_CFGMEM2_VAL[] = {
388                 0x00u, 0x02u, 0x00u, 0x00u};
389
390         /* PHUB_CFGMEM3 Address: CYREG_PHUB_CFGMEM3_CFG0 Size (bytes): 4 */
391         static const uint8 CYCODE BS_PHUB_CFGMEM3_VAL[] = {
392                 0x00u, 0x03u, 0x00u, 0x00u};
393
394         /* PHUB_CFGMEM4 Address: CYREG_PHUB_CFGMEM4_CFG0 Size (bytes): 4 */
395         static const uint8 CYCODE BS_PHUB_CFGMEM4_VAL[] = {
396                 0x00u, 0x04u, 0x00u, 0x00u};
397
398         /* PHUB_CFGMEM5 Address: CYREG_PHUB_CFGMEM5_CFG0 Size (bytes): 4 */
399         static const uint8 CYCODE BS_PHUB_CFGMEM5_VAL[] = {
400                 0x00u, 0x05u, 0x00u, 0x00u};
401
402 #ifdef CYGlobalIntDisable
403         /* Disable interrupts by default. Let user enable if/when they want. */
404         CYGlobalIntDisable
405 #endif
406
407
408         /* Set Flash Cycles based on max possible frequency in case a glitch occurs during ClockSetup(). */
409         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CACHE_CC_CTL), (((CYDEV_INSTRUCT_CACHE_ENABLED) != 0) ? 0x61u : 0x60u));
410         /* Setup clocks based on selections from Clock DWR */
411         ClockSetup();
412         /* Set Flash Cycles based on newly configured 50.00MHz Bus Clock. */
413         CY_SET_XTND_REG8((void CYFAR *)(CYREG_CACHE_CC_CTL), (((CYDEV_INSTRUCT_CACHE_ENABLED) != 0) ? 0xC1u : 0xC0u));
414         /* Enable/Disable Debug functionality based on settings from System DWR */
415         CY_SET_XTND_REG8((void CYFAR *)CYREG_MLOGIC_DEBUG, (CY_GET_XTND_REG8((void CYFAR *)CYREG_MLOGIC_DEBUG) | 0x04u));
416
417         {
418                 static const uint32 CYCODE cy_cfg_addr_table[] = {
419                         0x40004501u, /* Base address: 0x40004500 Count: 1 */
420                         0x40004F02u, /* Base address: 0x40004F00 Count: 2 */
421                         0x4000520Cu, /* Base address: 0x40005200 Count: 12 */
422                         0x40006402u, /* Base address: 0x40006400 Count: 2 */
423                         0x40006501u, /* Base address: 0x40006500 Count: 1 */
424                         0x4001003Du, /* Base address: 0x40010000 Count: 61 */
425                         0x4001013Fu, /* Base address: 0x40010100 Count: 63 */
426                         0x4001025Au, /* Base address: 0x40010200 Count: 90 */
427                         0x40010354u, /* Base address: 0x40010300 Count: 84 */
428                         0x40010419u, /* Base address: 0x40010400 Count: 25 */
429                         0x40010556u, /* Base address: 0x40010500 Count: 86 */
430                         0x40010653u, /* Base address: 0x40010600 Count: 83 */
431                         0x40010759u, /* Base address: 0x40010700 Count: 89 */
432                         0x4001084Eu, /* Base address: 0x40010800 Count: 78 */
433                         0x4001095Eu, /* Base address: 0x40010900 Count: 94 */
434                         0x40010A41u, /* Base address: 0x40010A00 Count: 65 */
435                         0x40010B5Cu, /* Base address: 0x40010B00 Count: 92 */
436                         0x40010C4Fu, /* Base address: 0x40010C00 Count: 79 */
437                         0x40010D61u, /* Base address: 0x40010D00 Count: 97 */
438                         0x40010E4Fu, /* Base address: 0x40010E00 Count: 79 */
439                         0x40010F41u, /* Base address: 0x40010F00 Count: 65 */
440                         0x40011411u, /* Base address: 0x40011400 Count: 17 */
441                         0x40011550u, /* Base address: 0x40011500 Count: 80 */
442                         0x40011650u, /* Base address: 0x40011600 Count: 80 */
443                         0x40011754u, /* Base address: 0x40011700 Count: 84 */
444                         0x40011848u, /* Base address: 0x40011800 Count: 72 */
445                         0x40011954u, /* Base address: 0x40011900 Count: 84 */
446                         0x40011A4Eu, /* Base address: 0x40011A00 Count: 78 */
447                         0x40011B48u, /* Base address: 0x40011B00 Count: 72 */
448                         0x4001401Cu, /* Base address: 0x40014000 Count: 28 */
449                         0x4001411Fu, /* Base address: 0x40014100 Count: 31 */
450                         0x40014218u, /* Base address: 0x40014200 Count: 24 */
451                         0x40014312u, /* Base address: 0x40014300 Count: 18 */
452                         0x40014412u, /* Base address: 0x40014400 Count: 18 */
453                         0x40014515u, /* Base address: 0x40014500 Count: 21 */
454                         0x4001460Du, /* Base address: 0x40014600 Count: 13 */
455                         0x4001470Eu, /* Base address: 0x40014700 Count: 14 */
456                         0x40014817u, /* Base address: 0x40014800 Count: 23 */
457                         0x40014914u, /* Base address: 0x40014900 Count: 20 */
458                         0x40014C04u, /* Base address: 0x40014C00 Count: 4 */
459                         0x40014D07u, /* Base address: 0x40014D00 Count: 7 */
460                         0x40015006u, /* Base address: 0x40015000 Count: 6 */
461                         0x40015102u, /* Base address: 0x40015100 Count: 2 */
462                 };
463
464                 static const cy_cfg_addrvalue_t CYCODE cy_cfg_data_table[] = {
465                         {0x7Eu, 0x02u},
466                         {0x01u, 0x30u},
467                         {0x0Au, 0x36u},
468                         {0x00u, 0x22u},
469                         {0x10u, 0x0Au},
470                         {0x11u, 0x88u},
471                         {0x18u, 0xC2u},
472                         {0x19u, 0x44u},
473                         {0x1Cu, 0x08u},
474                         {0x20u, 0x01u},
475                         {0x31u, 0x84u},
476                         {0x60u, 0x20u},
477                         {0x61u, 0x22u},
478                         {0x78u, 0x20u},
479                         {0x7Cu, 0x40u},
480                         {0x20u, 0x01u},
481                         {0x84u, 0x0Fu},
482                         {0x84u, 0x0Fu},
483                         {0x01u, 0x06u},
484                         {0x02u, 0x03u},
485                         {0x05u, 0x02u},
486                         {0x06u, 0x04u},
487                         {0x07u, 0x01u},
488                         {0x0Du, 0x01u},
489                         {0x0Eu, 0x24u},
490                         {0x0Fu, 0x04u},
491                         {0x10u, 0x24u},
492                         {0x11u, 0x08u},
493                         {0x12u, 0x09u},
494                         {0x19u, 0x08u},
495                         {0x1Au, 0x18u},
496                         {0x28u, 0x24u},
497                         {0x29u, 0x10u},
498                         {0x2Au, 0x12u},
499                         {0x2Du, 0x01u},
500                         {0x2Eu, 0x20u},
501                         {0x2Fu, 0x02u},
502                         {0x30u, 0x07u},
503                         {0x31u, 0x07u},
504                         {0x33u, 0x10u},
505                         {0x34u, 0x38u},
506                         {0x35u, 0x08u},
507                         {0x39u, 0x22u},
508                         {0x3Fu, 0x04u},
509                         {0x40u, 0x46u},
510                         {0x41u, 0x02u},
511                         {0x42u, 0x50u},
512                         {0x45u, 0xDCu},
513                         {0x46u, 0x2Fu},
514                         {0x47u, 0x0Eu},
515                         {0x48u, 0x1Fu},
516                         {0x49u, 0xFFu},
517                         {0x4Au, 0xFFu},
518                         {0x4Bu, 0xFFu},
519                         {0x4Fu, 0x2Cu},
520                         {0x56u, 0x01u},
521                         {0x58u, 0x04u},
522                         {0x59u, 0x04u},
523                         {0x5Au, 0x04u},
524                         {0x5Bu, 0x04u},
525                         {0x5Cu, 0x02u},
526                         {0x5Du, 0x02u},
527                         {0x5Fu, 0x01u},
528                         {0x60u, 0x08u},
529                         {0x62u, 0xC8u},
530                         {0x66u, 0x80u},
531                         {0x68u, 0x40u},
532                         {0x69u, 0x40u},
533                         {0x6Eu, 0x08u},
534                         {0x96u, 0x01u},
535                         {0x97u, 0x01u},
536                         {0xAAu, 0x02u},
537                         {0xB2u, 0x01u},
538                         {0xB3u, 0x01u},
539                         {0xB4u, 0x02u},
540                         {0xD8u, 0x04u},
541                         {0xD9u, 0x04u},
542                         {0xDCu, 0x22u},
543                         {0xDFu, 0x01u},
544                         {0x01u, 0x06u},
545                         {0x03u, 0x02u},
546                         {0x08u, 0x20u},
547                         {0x0Au, 0x44u},
548                         {0x0Eu, 0x20u},
549                         {0x11u, 0x40u},
550                         {0x12u, 0x08u},
551                         {0x17u, 0x10u},
552                         {0x19u, 0x02u},
553                         {0x1Au, 0x04u},
554                         {0x1Eu, 0x10u},
555                         {0x1Fu, 0x10u},
556                         {0x21u, 0x11u},
557                         {0x22u, 0x02u},
558                         {0x23u, 0x20u},
559                         {0x25u, 0x04u},
560                         {0x27u, 0x10u},
561                         {0x29u, 0x20u},
562                         {0x2Bu, 0x01u},
563                         {0x31u, 0x22u},
564                         {0x36u, 0x04u},
565                         {0x39u, 0x02u},
566                         {0x3Bu, 0x44u},
567                         {0x40u, 0x04u},
568                         {0x43u, 0x02u},
569                         {0x48u, 0x04u},
570                         {0x49u, 0x84u},
571                         {0x4Au, 0x88u},
572                         {0x52u, 0x10u},
573                         {0x53u, 0x68u},
574                         {0x58u, 0x12u},
575                         {0x59u, 0x08u},
576                         {0x5Au, 0x80u},
577                         {0x60u, 0x80u},
578                         {0x62u, 0x20u},
579                         {0x63u, 0x21u},
580                         {0x68u, 0x80u},
581                         {0x69u, 0x44u},
582                         {0x6Bu, 0x08u},
583                         {0x70u, 0x08u},
584                         {0x72u, 0x0Au},
585                         {0x73u, 0x80u},
586                         {0x81u, 0x04u},
587                         {0x84u, 0x02u},
588                         {0x86u, 0x88u},
589                         {0x87u, 0x80u},
590                         {0x8Au, 0x02u},
591                         {0x8Bu, 0x40u},
592                         {0x8Fu, 0x01u},
593                         {0xC0u, 0x0Du},
594                         {0xC2u, 0x2Au},
595                         {0xC4u, 0x43u},
596                         {0xCAu, 0x0Cu},
597                         {0xCCu, 0x45u},
598                         {0xCEu, 0x0Bu},
599                         {0xD0u, 0x05u},
600                         {0xD2u, 0x0Cu},
601                         {0xD6u, 0x0Fu},
602                         {0xD8u, 0x0Fu},
603                         {0xE0u, 0x02u},
604                         {0xE2u, 0x08u},
605                         {0xE4u, 0x09u},
606                         {0xE6u, 0x82u},
607                         {0x01u, 0x1Cu},
608                         {0x04u, 0x01u},
609                         {0x05u, 0x14u},
610                         {0x06u, 0x02u},
611                         {0x07u, 0x08u},
612                         {0x08u, 0x02u},
613                         {0x09u, 0x24u},
614                         {0x0Au, 0x01u},
615                         {0x0Bu, 0x10u},
616                         {0x0Du, 0x30u},
617                         {0x0Fu, 0x0Fu},
618                         {0x11u, 0x0Cu},
619                         {0x13u, 0x10u},
620                         {0x14u, 0x02u},
621                         {0x15u, 0x21u},
622                         {0x16u, 0x01u},
623                         {0x17u, 0x1Eu},
624                         {0x19u, 0x11u},
625                         {0x1Bu, 0x22u},
626                         {0x1Cu, 0x02u},
627                         {0x1Eu, 0x05u},
628                         {0x20u, 0x02u},
629                         {0x21u, 0x1Cu},
630                         {0x22u, 0x09u},
631                         {0x29u, 0x10u},
632                         {0x2Bu, 0x0Cu},
633                         {0x2Du, 0x08u},
634                         {0x32u, 0x04u},
635                         {0x33u, 0x0Fu},
636                         {0x34u, 0x03u},
637                         {0x35u, 0x30u},
638                         {0x36u, 0x08u},
639                         {0x3Au, 0x20u},
640                         {0x3Bu, 0x20u},
641                         {0x56u, 0x08u},
642                         {0x58u, 0x04u},
643                         {0x59u, 0x04u},
644                         {0x5Bu, 0x04u},
645                         {0x5Cu, 0x12u},
646                         {0x5Du, 0x90u},
647                         {0x5Fu, 0x01u},
648                         {0x81u, 0xC0u},
649                         {0x83u, 0x02u},
650                         {0x85u, 0x7Fu},
651                         {0x87u, 0x80u},
652                         {0x88u, 0x50u},
653                         {0x8Au, 0x0Cu},
654                         {0x8Bu, 0x60u},
655                         {0x8Cu, 0x5Cu},
656                         {0x8Fu, 0xFFu},
657                         {0x90u, 0x21u},
658                         {0x91u, 0x90u},
659                         {0x92u, 0x1Eu},
660                         {0x93u, 0x40u},
661                         {0x94u, 0x24u},
662                         {0x95u, 0xC0u},
663                         {0x96u, 0x10u},
664                         {0x97u, 0x08u},
665                         {0x98u, 0x30u},
666                         {0x99u, 0xC0u},
667                         {0x9Au, 0x0Fu},
668                         {0x9Bu, 0x04u},
669                         {0x9Cu, 0x5Cu},
670                         {0x9Du, 0xC0u},
671                         {0x9Fu, 0x01u},
672                         {0xA0u, 0x11u},
673                         {0xA2u, 0x22u},
674                         {0xA3u, 0x9Fu},
675                         {0xA4u, 0x54u},
676                         {0xA5u, 0x80u},
677                         {0xA6u, 0x08u},
678                         {0xA8u, 0x08u},
679                         {0xACu, 0x0Cu},
680                         {0xADu, 0x1Fu},
681                         {0xAEu, 0x50u},
682                         {0xAFu, 0x20u},
683                         {0xB0u, 0x0Fu},
684                         {0xB2u, 0x30u},
685                         {0xB4u, 0x40u},
686                         {0xB5u, 0xFFu},
687                         {0xB6u, 0x40u},
688                         {0xBAu, 0x08u},
689                         {0xBEu, 0x50u},
690                         {0xBFu, 0x10u},
691                         {0xD6u, 0x08u},
692                         {0xD8u, 0x04u},
693                         {0xD9u, 0x04u},
694                         {0xDBu, 0x04u},
695                         {0xDDu, 0x90u},
696                         {0xDFu, 0x01u},
697                         {0x00u, 0x80u},
698                         {0x03u, 0x04u},
699                         {0x04u, 0x14u},
700                         {0x06u, 0x20u},
701                         {0x09u, 0x80u},
702                         {0x0Au, 0x20u},
703                         {0x0Bu, 0x44u},
704                         {0x0Eu, 0x12u},
705                         {0x10u, 0x22u},
706                         {0x12u, 0x44u},
707                         {0x16u, 0x80u},
708                         {0x18u, 0x40u},
709                         {0x19u, 0x14u},
710                         {0x1Au, 0x22u},
711                         {0x1Bu, 0x05u},
712                         {0x1Cu, 0x14u},
713                         {0x1Eu, 0x22u},
714                         {0x21u, 0x20u},
715                         {0x24u, 0x08u},
716                         {0x25u, 0x18u},
717                         {0x27u, 0x20u},
718                         {0x29u, 0x05u},
719                         {0x2Au, 0x40u},
720                         {0x2Bu, 0x01u},
721                         {0x2Du, 0x11u},
722                         {0x2Fu, 0x01u},
723                         {0x30u, 0x22u},
724                         {0x31u, 0x80u},
725                         {0x33u, 0x04u},
726                         {0x34u, 0x04u},
727                         {0x37u, 0x21u},
728                         {0x39u, 0x22u},
729                         {0x3Bu, 0x44u},
730                         {0x3Du, 0x20u},
731                         {0x3Eu, 0x46u},
732                         {0x58u, 0x40u},
733                         {0x5Du, 0x40u},
734                         {0x60u, 0x02u},
735                         {0x66u, 0x80u},
736                         {0x82u, 0x20u},
737                         {0x89u, 0x02u},
738                         {0x8Bu, 0x08u},
739                         {0x8Cu, 0x02u},
740                         {0x8Eu, 0x08u},
741                         {0x8Fu, 0x02u},
742                         {0x91u, 0x20u},
743                         {0x92u, 0x10u},
744                         {0x93u, 0xA0u},
745                         {0x96u, 0x80u},
746                         {0x97u, 0x44u},
747                         {0x98u, 0x61u},
748                         {0x99u, 0x02u},
749                         {0x9Au, 0x18u},
750                         {0x9Du, 0xA0u},
751                         {0xA0u, 0x84u},
752                         {0xA1u, 0x04u},
753                         {0xA2u, 0x80u},
754                         {0xA3u, 0x08u},
755                         {0xA5u, 0x22u},
756                         {0xA6u, 0x34u},
757                         {0xA7u, 0x13u},
758                         {0xA8u, 0x80u},
759                         {0xA9u, 0x08u},
760                         {0xABu, 0x20u},
761                         {0xACu, 0x08u},
762                         {0xAFu, 0x08u},
763                         {0xB0u, 0x51u},
764                         {0xB2u, 0x02u},
765                         {0xB4u, 0x04u},
766                         {0xB6u, 0x40u},
767                         {0xB7u, 0x28u},
768                         {0xC0u, 0x63u},
769                         {0xC2u, 0xAFu},
770                         {0xC4u, 0x1Fu},
771                         {0xCAu, 0xBBu},
772                         {0xCCu, 0xEFu},
773                         {0xCEu, 0xFFu},
774                         {0xD6u, 0x18u},
775                         {0xD8u, 0x18u},
776                         {0xE0u, 0x04u},
777                         {0xE4u, 0x04u},
778                         {0xE8u, 0x0Au},
779                         {0xEAu, 0x10u},
780                         {0xEEu, 0x05u},
781                         {0x85u, 0x02u},
782                         {0x87u, 0x01u},
783                         {0x8Du, 0x01u},
784                         {0x8Fu, 0x02u},
785                         {0x95u, 0x02u},
786                         {0x97u, 0x01u},
787                         {0xA2u, 0x02u},
788                         {0xA5u, 0x02u},
789                         {0xA7u, 0x01u},
790                         {0xACu, 0x01u},
791                         {0xADu, 0x02u},
792                         {0xAFu, 0x05u},
793                         {0xB0u, 0x01u},
794                         {0xB2u, 0x02u},
795                         {0xB3u, 0x04u},
796                         {0xB7u, 0x03u},
797                         {0xBBu, 0x80u},
798                         {0xBEu, 0x01u},
799                         {0xD6u, 0x08u},
800                         {0xD8u, 0x04u},
801                         {0xD9u, 0x04u},
802                         {0xDBu, 0x04u},
803                         {0xDCu, 0x22u},
804                         {0xDDu, 0x90u},
805                         {0xDFu, 0x01u},
806                         {0x00u, 0x0Au},
807                         {0x01u, 0xA0u},
808                         {0x08u, 0x42u},
809                         {0x0Bu, 0x08u},
810                         {0x12u, 0x99u},
811                         {0x14u, 0x01u},
812                         {0x17u, 0x02u},
813                         {0x19u, 0xA0u},
814                         {0x1Au, 0x80u},
815                         {0x1Eu, 0x80u},
816                         {0x1Fu, 0x08u},
817                         {0x20u, 0x20u},
818                         {0x21u, 0x04u},
819                         {0x22u, 0x20u},
820                         {0x25u, 0x40u},
821                         {0x26u, 0x04u},
822                         {0x28u, 0x04u},
823                         {0x2Eu, 0x80u},
824                         {0x2Fu, 0x10u},
825                         {0x30u, 0x40u},
826                         {0x31u, 0x08u},
827                         {0x32u, 0x60u},
828                         {0x36u, 0x04u},
829                         {0x38u, 0x80u},
830                         {0x39u, 0x08u},
831                         {0x3Du, 0x88u},
832                         {0x40u, 0x44u},
833                         {0x42u, 0x20u},
834                         {0x49u, 0x15u},
835                         {0x4Bu, 0x40u},
836                         {0x50u, 0x01u},
837                         {0x51u, 0x20u},
838                         {0x52u, 0x04u},
839                         {0x53u, 0x80u},
840                         {0x5Cu, 0x80u},
841                         {0x62u, 0x20u},
842                         {0x66u, 0x80u},
843                         {0x69u, 0x51u},
844                         {0x6Au, 0x04u},
845                         {0x6Bu, 0x51u},
846                         {0x72u, 0x03u},
847                         {0x73u, 0x01u},
848                         {0x8Au, 0x60u},
849                         {0x8Cu, 0x01u},
850                         {0x90u, 0x48u},
851                         {0x91u, 0x20u},
852                         {0x92u, 0x02u},
853                         {0x93u, 0xB0u},
854                         {0x95u, 0x13u},
855                         {0x96u, 0xC4u},
856                         {0x97u, 0x46u},
857                         {0x98u, 0x23u},
858                         {0x99u, 0x12u},
859                         {0x9Au, 0x10u},
860                         {0x9Bu, 0x20u},
861                         {0x9Cu, 0x04u},
862                         {0x9Du, 0xA1u},
863                         {0x9Eu, 0x06u},
864                         {0x9Fu, 0x05u},
865                         {0xA0u, 0x84u},
866                         {0xA1u, 0x0Cu},
867                         {0xA2u, 0x88u},
868                         {0xA3u, 0x05u},
869                         {0xA4u, 0x62u},
870                         {0xA5u, 0x82u},
871                         {0xA6u, 0x04u},
872                         {0xA7u, 0x10u},
873                         {0xAEu, 0x20u},
874                         {0xAFu, 0x10u},
875                         {0xB5u, 0x40u},
876                         {0xB6u, 0x08u},
877                         {0xB7u, 0x20u},
878                         {0xC0u, 0x0Fu},
879                         {0xC2u, 0x0Bu},
880                         {0xC4u, 0x9Fu},
881                         {0xCAu, 0x54u},
882                         {0xCCu, 0x46u},
883                         {0xCEu, 0x5Au},
884                         {0xD0u, 0x07u},
885                         {0xD2u, 0x0Cu},
886                         {0xD6u, 0x10u},
887                         {0xD8u, 0x14u},
888                         {0xE2u, 0x21u},
889                         {0xE4u, 0x80u},
890                         {0xE8u, 0x40u},
891                         {0xEEu, 0x02u},
892                         {0x00u, 0x04u},
893                         {0x02u, 0x02u},
894                         {0x0Du, 0x02u},
895                         {0x0Fu, 0x01u},
896                         {0x11u, 0x02u},
897                         {0x13u, 0x09u},
898                         {0x14u, 0x02u},
899                         {0x15u, 0x02u},
900                         {0x16u, 0x04u},
901                         {0x17u, 0x01u},
902                         {0x18u, 0x04u},
903                         {0x19u, 0x01u},
904                         {0x1Au, 0x0Au},
905                         {0x1Bu, 0x02u},
906                         {0x1Cu, 0x04u},
907                         {0x1Eu, 0x03u},
908                         {0x24u, 0x04u},
909                         {0x26u, 0x12u},
910                         {0x29u, 0x02u},
911                         {0x2Bu, 0x05u},
912                         {0x30u, 0x01u},
913                         {0x32u, 0x06u},
914                         {0x33u, 0x04u},
915                         {0x34u, 0x10u},
916                         {0x35u, 0x03u},
917                         {0x36u, 0x08u},
918                         {0x37u, 0x08u},
919                         {0x3Au, 0x08u},
920                         {0x3Bu, 0x20u},
921                         {0x56u, 0x08u},
922                         {0x58u, 0x04u},
923                         {0x59u, 0x04u},
924                         {0x5Bu, 0x04u},
925                         {0x5Cu, 0x22u},
926                         {0x5Du, 0x90u},
927                         {0x5Fu, 0x01u},
928                         {0x80u, 0xC6u},
929                         {0x81u, 0x10u},
930                         {0x84u, 0x42u},
931                         {0x85u, 0x22u},
932                         {0x87u, 0x08u},
933                         {0x88u, 0x39u},
934                         {0x89u, 0x04u},
935                         {0x8Au, 0x06u},
936                         {0x8Cu, 0x01u},
937                         {0x8Du, 0x08u},
938                         {0x8Eu, 0x5Eu},
939                         {0x8Fu, 0x21u},
940                         {0x91u, 0x01u},
941                         {0x94u, 0x77u},
942                         {0x96u, 0x08u},
943                         {0x98u, 0xC2u},
944                         {0x99u, 0x01u},
945                         {0x9Au, 0x04u},
946                         {0x9Cu, 0x04u},
947                         {0x9Du, 0x01u},
948                         {0x9Eu, 0x20u},
949                         {0xA0u, 0xC6u},
950                         {0xA1u, 0x01u},
951                         {0xA8u, 0x80u},
952                         {0xA9u, 0x01u},
953                         {0xAAu, 0x46u},
954                         {0xACu, 0x46u},
955                         {0xADu, 0x07u},
956                         {0xAEu, 0x80u},
957                         {0xAFu, 0x18u},
958                         {0xB0u, 0x70u},
959                         {0xB1u, 0x3Fu},
960                         {0xB4u, 0x0Fu},
961                         {0xB6u, 0x80u},
962                         {0xB7u, 0x08u},
963                         {0xB8u, 0x20u},
964                         {0xB9u, 0x02u},
965                         {0xBAu, 0x03u},
966                         {0xBEu, 0x40u},
967                         {0xBFu, 0x41u},
968                         {0xD4u, 0x09u},
969                         {0xD6u, 0x04u},
970                         {0xD8u, 0x04u},
971                         {0xD9u, 0x04u},
972                         {0xDBu, 0x04u},
973                         {0xDCu, 0x01u},
974                         {0xDFu, 0x01u},
975                         {0x00u, 0x40u},
976                         {0x01u, 0x20u},
977                         {0x02u, 0x10u},
978                         {0x03u, 0x40u},
979                         {0x04u, 0x08u},
980                         {0x05u, 0x01u},
981                         {0x06u, 0x10u},
982                         {0x09u, 0x08u},
983                         {0x0Au, 0x04u},
984                         {0x0Bu, 0x02u},
985                         {0x0Eu, 0x2Au},
986                         {0x11u, 0x50u},
987                         {0x13u, 0x01u},
988                         {0x16u, 0x20u},
989                         {0x18u, 0xC0u},
990                         {0x19u, 0x60u},
991                         {0x1Au, 0x48u},
992                         {0x1Du, 0x01u},
993                         {0x1Eu, 0x2Au},
994                         {0x1Fu, 0x04u},
995                         {0x21u, 0x02u},
996                         {0x22u, 0x40u},
997                         {0x25u, 0x40u},
998                         {0x26u, 0x28u},
999                         {0x27u, 0x0Au},
1000                         {0x28u, 0x10u},
1001                         {0x2Au, 0x44u},
1002                         {0x2Bu, 0x47u},
1003                         {0x2Fu, 0x08u},
1004                         {0x30u, 0x26u},
1005                         {0x31u, 0x80u},
1006                         {0x32u, 0x04u},
1007                         {0x34u, 0x02u},
1008                         {0x36u, 0x28u},
1009                         {0x38u, 0x02u},
1010                         {0x39u, 0x20u},
1011                         {0x3Bu, 0x44u},
1012                         {0x3Du, 0x80u},
1013                         {0x58u, 0x10u},
1014                         {0x59u, 0x04u},
1015                         {0x5Au, 0x82u},
1016                         {0x5Du, 0x80u},
1017                         {0x5Fu, 0x10u},
1018                         {0x60u, 0x80u},
1019                         {0x62u, 0x80u},
1020                         {0x64u, 0x02u},
1021                         {0x66u, 0x20u},
1022                         {0x84u, 0x80u},
1023                         {0x85u, 0x40u},
1024                         {0x90u, 0x0Au},
1025                         {0x91u, 0x70u},
1026                         {0x92u, 0x07u},
1027                         {0x93u, 0x11u},
1028                         {0x94u, 0x84u},
1029                         {0x95u, 0x02u},
1030                         {0x96u, 0x40u},
1031                         {0x97u, 0x4Eu},
1032                         {0x98u, 0x20u},
1033                         {0x99u, 0x06u},
1034                         {0x9Au, 0x06u},
1035                         {0x9Bu, 0x71u},
1036                         {0x9Cu, 0x04u},
1037                         {0x9Fu, 0x06u},
1038                         {0xA0u, 0x10u},
1039                         {0xA1u, 0x28u},
1040                         {0xA3u, 0x8Du},
1041                         {0xA4u, 0x62u},
1042                         {0xA5u, 0x82u},
1043                         {0xAAu, 0x01u},
1044                         {0xABu, 0x10u},
1045                         {0xACu, 0x81u},
1046                         {0xAFu, 0x40u},
1047                         {0xB1u, 0x40u},
1048                         {0xB3u, 0x01u},
1049                         {0xB4u, 0x80u},
1050                         {0xC0u, 0x1Fu},
1051                         {0xC2u, 0xE7u},
1052                         {0xC4u, 0x2Bu},
1053                         {0xCAu, 0x2Du},
1054                         {0xCCu, 0xEDu},
1055                         {0xCEu, 0x1Fu},
1056                         {0xD6u, 0x3Fu},
1057                         {0xD8u, 0x39u},
1058                         {0xE2u, 0x04u},
1059                         {0xE4u, 0x08u},
1060                         {0xE6u, 0x04u},
1061                         {0xE8u, 0x08u},
1062                         {0xEAu, 0x05u},
1063                         {0xEEu, 0x09u},
1064                         {0x00u, 0x04u},
1065                         {0x01u, 0x01u},
1066                         {0x03u, 0x02u},
1067                         {0x05u, 0x04u},
1068                         {0x06u, 0x20u},
1069                         {0x07u, 0x08u},
1070                         {0x09u, 0x10u},
1071                         {0x0Au, 0x07u},
1072                         {0x0Bu, 0x8Fu},
1073                         {0x0Cu, 0x01u},
1074                         {0x0Du, 0x0Fu},
1075                         {0x0Fu, 0x80u},
1076                         {0x11u, 0x01u},
1077                         {0x13u, 0x02u},
1078                         {0x15u, 0x20u},
1079                         {0x16u, 0x18u},
1080                         {0x17u, 0x0Fu},
1081                         {0x18u, 0x07u},
1082                         {0x19u, 0x04u},
1083                         {0x1Bu, 0x08u},
1084                         {0x1Eu, 0x20u},
1085                         {0x20u, 0x20u},
1086                         {0x21u, 0x4Fu},
1087                         {0x22u, 0x10u},
1088                         {0x23u, 0x80u},
1089                         {0x26u, 0x02u},
1090                         {0x27u, 0x10u},
1091                         {0x28u, 0x20u},
1092                         {0x29u, 0x50u},
1093                         {0x2Au, 0x08u},
1094                         {0x2Bu, 0x8Fu},
1095                         {0x31u, 0x03u},
1096                         {0x32u, 0x38u},
1097                         {0x33u, 0xF0u},
1098                         {0x34u, 0x07u},
1099                         {0x35u, 0x0Cu},
1100                         {0x39u, 0x08u},
1101                         {0x3Bu, 0x22u},
1102                         {0x3Eu, 0x10u},
1103                         {0x58u, 0x04u},
1104                         {0x59u, 0x04u},
1105                         {0x5Bu, 0x04u},
1106                         {0x5Cu, 0x22u},
1107                         {0x5Fu, 0x01u},
1108                         {0x80u, 0x05u},
1109                         {0x82u, 0x0Au},
1110                         {0x85u, 0x08u},
1111                         {0x88u, 0x06u},
1112                         {0x89u, 0x20u},
1113                         {0x8Au, 0x09u},
1114                         {0x8Cu, 0x0Fu},
1115                         {0x8Eu, 0xF0u},
1116                         {0x90u, 0x30u},
1117                         {0x91u, 0x10u},
1118                         {0x92u, 0xC0u},
1119                         {0x94u, 0x03u},
1120                         {0x95u, 0x04u},
1121                         {0x96u, 0x0Cu},
1122                         {0x9Du, 0x01u},
1123                         {0xA4u, 0x60u},
1124                         {0xA6u, 0x90u},
1125                         {0xA8u, 0x50u},
1126                         {0xA9u, 0x02u},
1127                         {0xAAu, 0xA0u},
1128                         {0xADu, 0x15u},
1129                         {0xAFu, 0x2Au},
1130                         {0xB1u, 0x30u},
1131                         {0xB3u, 0x0Cu},
1132                         {0xB5u, 0x03u},
1133                         {0xB6u, 0xFFu},
1134                         {0xBEu, 0x40u},
1135                         {0xBFu, 0x15u},
1136                         {0xD4u, 0x01u},
1137                         {0xD8u, 0x04u},
1138                         {0xD9u, 0x04u},
1139                         {0xDBu, 0x04u},
1140                         {0xDDu, 0x20u},
1141                         {0xDFu, 0x01u},
1142                         {0x00u, 0x02u},
1143                         {0x02u, 0x80u},
1144                         {0x03u, 0x0Au},
1145                         {0x05u, 0x10u},
1146                         {0x06u, 0xA2u},
1147                         {0x0Au, 0x20u},
1148                         {0x0Bu, 0x40u},
1149                         {0x0Du, 0x10u},
1150                         {0x0Eu, 0x22u},
1151                         {0x10u, 0x04u},
1152                         {0x13u, 0x14u},
1153                         {0x14u, 0x20u},
1154                         {0x15u, 0x01u},
1155                         {0x17u, 0x10u},
1156                         {0x1Bu, 0x80u},
1157                         {0x1Eu, 0x20u},
1158                         {0x1Fu, 0x18u},
1159                         {0x20u, 0x08u},
1160                         {0x21u, 0x06u},
1161                         {0x24u, 0x20u},
1162                         {0x26u, 0x2Au},
1163                         {0x27u, 0x10u},
1164                         {0x28u, 0x04u},
1165                         {0x2Bu, 0x02u},
1166                         {0x2Cu, 0x28u},
1167                         {0x2Du, 0x01u},
1168                         {0x2Fu, 0x20u},
1169                         {0x32u, 0x81u},
1170                         {0x33u, 0x08u},
1171                         {0x34u, 0x08u},
1172                         {0x36u, 0x22u},
1173                         {0x39u, 0x10u},
1174                         {0x3Bu, 0x04u},
1175                         {0x3Du, 0x80u},
1176                         {0x3Eu, 0x20u},
1177                         {0x3Fu, 0x0Au},
1178                         {0x44u, 0x08u},
1179                         {0x46u, 0x04u},
1180                         {0x48u, 0x08u},
1181                         {0x4Au, 0x08u},
1182                         {0x58u, 0x60u},
1183                         {0x59u, 0x20u},
1184                         {0x5Cu, 0x04u},
1185                         {0x5Eu, 0x40u},
1186                         {0x5Fu, 0x21u},
1187                         {0x64u, 0x40u},
1188                         {0x65u, 0x81u},
1189                         {0x6Fu, 0x02u},
1190                         {0x85u, 0x02u},
1191                         {0x89u, 0x02u},
1192                         {0x8Eu, 0x04u},
1193                         {0x8Fu, 0x01u},
1194                         {0x91u, 0xA1u},
1195                         {0x92u, 0x62u},
1196                         {0x93u, 0x08u},
1197                         {0x94u, 0xA8u},
1198                         {0x95u, 0x1Cu},
1199                         {0x97u, 0x40u},
1200                         {0x98u, 0x80u},
1201                         {0x99u, 0x01u},
1202                         {0x9Au, 0x32u},
1203                         {0x9Bu, 0x28u},
1204                         {0x9Du, 0x08u},
1205                         {0x9Eu, 0x04u},
1206                         {0xA0u, 0x23u},
1207                         {0xA1u, 0x40u},
1208                         {0xA2u, 0x05u},
1209                         {0xA3u, 0x45u},
1210                         {0xA4u, 0x54u},
1211                         {0xA5u, 0x01u},
1212                         {0xA6u, 0x2Au},
1213                         {0xA7u, 0x82u},
1214                         {0xAAu, 0x28u},
1215                         {0xACu, 0x10u},
1216                         {0xADu, 0x08u},
1217                         {0xAEu, 0x80u},
1218                         {0xAFu, 0x10u},
1219                         {0xB2u, 0x02u},
1220                         {0xB3u, 0x20u},
1221                         {0xB7u, 0x40u},
1222                         {0xC0u, 0xFBu},
1223                         {0xC2u, 0xECu},
1224                         {0xC4u, 0x76u},
1225                         {0xCAu, 0xECu},
1226                         {0xCCu, 0xEBu},
1227                         {0xCEu, 0xF6u},
1228                         {0xD6u, 0xF8u},
1229                         {0xD8u, 0x10u},
1230                         {0xE2u, 0x04u},
1231                         {0xE6u, 0x04u},
1232                         {0xE8u, 0x82u},
1233                         {0xEAu, 0x01u},
1234                         {0xECu, 0x60u},
1235                         {0xEEu, 0x02u},
1236                         {0x01u, 0x04u},
1237                         {0x02u, 0x40u},
1238                         {0x03u, 0x02u},
1239                         {0x06u, 0x30u},
1240                         {0x0Bu, 0x04u},
1241                         {0x0Du, 0x10u},
1242                         {0x10u, 0x48u},
1243                         {0x11u, 0x08u},
1244                         {0x12u, 0x24u},
1245                         {0x13u, 0x10u},
1246                         {0x16u, 0x48u},
1247                         {0x17u, 0x04u},
1248                         {0x19u, 0x08u},
1249                         {0x1Au, 0x01u},
1250                         {0x1Bu, 0x03u},
1251                         {0x1Eu, 0x06u},
1252                         {0x22u, 0x08u},
1253                         {0x28u, 0x48u},
1254                         {0x29u, 0x04u},
1255                         {0x2Au, 0x12u},
1256                         {0x2Bu, 0x01u},
1257                         {0x30u, 0x01u},
1258                         {0x33u, 0x18u},
1259                         {0x34u, 0x70u},
1260                         {0x35u, 0x07u},
1261                         {0x36u, 0x0Eu},
1262                         {0x3Fu, 0x04u},
1263                         {0x56u, 0x08u},
1264                         {0x58u, 0x04u},
1265                         {0x59u, 0x04u},
1266                         {0x5Bu, 0x04u},
1267                         {0x5Cu, 0x22u},
1268                         {0x5Du, 0x90u},
1269                         {0x5Fu, 0x01u},
1270                         {0x82u, 0x70u},
1271                         {0x84u, 0xC0u},
1272                         {0x86u, 0x1Fu},
1273                         {0x88u, 0x90u},
1274                         {0x8Au, 0x2Fu},
1275                         {0x8Cu, 0x06u},
1276                         {0x8Eu, 0x09u},
1277                         {0x8Fu, 0x04u},
1278                         {0x94u, 0x03u},
1279                         {0x96u, 0x0Cu},
1280                         {0x97u, 0x02u},
1281                         {0x98u, 0x0Fu},
1282                         {0x9Cu, 0xA0u},
1283                         {0x9Eu, 0x4Fu},
1284                         {0xA0u, 0x05u},
1285                         {0xA2u, 0x0Au},
1286                         {0xA6u, 0x80u},
1287                         {0xA9u, 0x01u},
1288                         {0xADu, 0x02u},
1289                         {0xAFu, 0x04u},
1290                         {0xB0u, 0x7Fu},
1291                         {0xB5u, 0x01u},
1292                         {0xB6u, 0x80u},
1293                         {0xB7u, 0x06u},
1294                         {0xBEu, 0x40u},
1295                         {0xBFu, 0x50u},
1296                         {0xD8u, 0x04u},
1297                         {0xD9u, 0x04u},
1298                         {0xDBu, 0x04u},
1299                         {0xDCu, 0x02u},
1300                         {0xDFu, 0x01u},
1301                         {0x00u, 0x04u},
1302                         {0x01u, 0x02u},
1303                         {0x02u, 0x10u},
1304                         {0x04u, 0xA0u},
1305                         {0x05u, 0x01u},
1306                         {0x06u, 0x20u},
1307                         {0x09u, 0x04u},
1308                         {0x0Au, 0x0Au},
1309                         {0x0Bu, 0x80u},
1310                         {0x0Cu, 0x60u},
1311                         {0x0Eu, 0x20u},
1312                         {0x10u, 0x80u},
1313                         {0x12u, 0x08u},
1314                         {0x15u, 0x02u},
1315                         {0x17u, 0x04u},
1316                         {0x18u, 0x04u},
1317                         {0x1Au, 0x82u},
1318                         {0x1Du, 0x41u},
1319                         {0x21u, 0x08u},
1320                         {0x22u, 0x10u},
1321                         {0x25u, 0x50u},
1322                         {0x26u, 0x80u},
1323                         {0x27u, 0x01u},
1324                         {0x29u, 0x10u},
1325                         {0x2Cu, 0x40u},
1326                         {0x2Du, 0x41u},
1327                         {0x2Fu, 0x08u},
1328                         {0x30u, 0x08u},
1329                         {0x32u, 0x10u},
1330                         {0x33u, 0x02u},
1331                         {0x37u, 0x08u},
1332                         {0x39u, 0x01u},
1333                         {0x3Au, 0x20u},
1334                         {0x3Bu, 0x40u},
1335                         {0x3Eu, 0x80u},
1336                         {0x49u, 0x10u},
1337                         {0x4Au, 0x08u},
1338                         {0x58u, 0x18u},
1339                         {0x59u, 0x80u},
1340                         {0x5Bu, 0x04u},
1341                         {0x5Cu, 0x08u},
1342                         {0x5Eu, 0x81u},
1343                         {0x5Fu, 0x10u},
1344                         {0x63u, 0x0Au},
1345                         {0x65u, 0x40u},
1346                         {0x69u, 0x40u},
1347                         {0x6Cu, 0x22u},
1348                         {0x6Fu, 0x18u},
1349                         {0x80u, 0x04u},
1350                         {0x81u, 0x10u},
1351                         {0x84u, 0x04u},
1352                         {0x85u, 0x04u},
1353                         {0x8Eu, 0x04u},
1354                         {0x91u, 0xA3u},
1355                         {0x92u, 0x49u},
1356                         {0x93u, 0x88u},
1357                         {0x94u, 0x20u},
1358                         {0x95u, 0x14u},
1359                         {0x96u, 0x82u},
1360                         {0x98u, 0x80u},
1361                         {0x99u, 0x82u},
1362                         {0x9Au, 0xA0u},
1363                         {0x9Bu, 0x0Cu},
1364                         {0x9Du, 0x08u},
1365                         {0x9Eu, 0x04u},
1366                         {0x9Fu, 0x11u},
1367                         {0xA0u, 0x89u},
1368                         {0xA1u, 0x04u},
1369                         {0xA2u, 0x51u},
1370                         {0xA4u, 0x70u},
1371                         {0xA5u, 0x01u},
1372                         {0xA6u, 0x0Au},
1373                         {0xA7u, 0x83u},
1374                         {0xA8u, 0x82u},
1375                         {0xADu, 0x60u},
1376                         {0xAFu, 0x02u},
1377                         {0xB5u, 0x41u},
1378                         {0xB6u, 0x09u},
1379                         {0xC0u, 0xFCu},
1380                         {0xC2u, 0xEFu},
1381                         {0xC4u, 0x3Au},
1382                         {0xCAu, 0x34u},
1383                         {0xCCu, 0x47u},
1384                         {0xCEu, 0x1Du},
1385                         {0xD6u, 0xFCu},
1386                         {0xD8u, 0x1Cu},
1387                         {0xE0u, 0x48u},
1388                         {0xE4u, 0x03u},
1389                         {0xE8u, 0x10u},
1390                         {0xEAu, 0x04u},
1391                         {0xECu, 0x10u},
1392                         {0xEEu, 0x09u},
1393                         {0x01u, 0x02u},
1394                         {0x02u, 0xFFu},
1395                         {0x05u, 0x20u},
1396                         {0x06u, 0xFFu},
1397                         {0x07u, 0x40u},
1398                         {0x08u, 0x0Fu},
1399                         {0x09u, 0x01u},
1400                         {0x0Au, 0xF0u},
1401                         {0x0Bu, 0x6Eu},
1402                         {0x11u, 0x64u},
1403                         {0x14u, 0x33u},
1404                         {0x15u, 0x03u},
1405                         {0x16u, 0xCCu},
1406                         {0x17u, 0x74u},
1407                         {0x1Bu, 0x01u},
1408                         {0x1Cu, 0xFFu},
1409                         {0x20u, 0xFFu},
1410                         {0x21u, 0x78u},
1411                         {0x23u, 0x03u},
1412                         {0x26u, 0xFFu},
1413                         {0x27u, 0x7Fu},
1414                         {0x28u, 0x69u},
1415                         {0x29u, 0x20u},
1416                         {0x2Au, 0x96u},
1417                         {0x2Bu, 0x40u},
1418                         {0x2Cu, 0x55u},
1419                         {0x2Eu, 0xAAu},
1420                         {0x2Fu, 0x08u},
1421                         {0x32u, 0xFFu},
1422                         {0x33u, 0x1Fu},
1423                         {0x37u, 0x60u},
1424                         {0x3Au, 0x08u},
1425                         {0x3Bu, 0x80u},
1426                         {0x56u, 0x08u},
1427                         {0x58u, 0x04u},
1428                         {0x59u, 0x04u},
1429                         {0x5Bu, 0x04u},
1430                         {0x5Cu, 0x22u},
1431                         {0x5Du, 0x90u},
1432                         {0x5Fu, 0x01u},
1433                         {0x80u, 0x0Fu},
1434                         {0x81u, 0x0Fu},
1435                         {0x82u, 0xF0u},
1436                         {0x83u, 0xF0u},
1437                         {0x84u, 0x44u},
1438                         {0x86u, 0x88u},
1439                         {0x8Bu, 0xFFu},
1440                         {0x8Cu, 0x33u},
1441                         {0x8Du, 0x33u},
1442                         {0x8Eu, 0xCCu},
1443                         {0x8Fu, 0xCCu},
1444                         {0x91u, 0xFFu},
1445                         {0x92u, 0xFFu},
1446                         {0x96u, 0xFFu},
1447                         {0x97u, 0xFFu},
1448                         {0x98u, 0x11u},
1449                         {0x9Au, 0x22u},
1450                         {0x9Cu, 0x21u},
1451                         {0x9Du, 0xFFu},
1452                         {0x9Eu, 0x12u},
1453                         {0xA7u, 0xFFu},
1454                         {0xA8u, 0x84u},
1455                         {0xA9u, 0x69u},
1456                         {0xAAu, 0x48u},
1457                         {0xABu, 0x96u},
1458                         {0xACu, 0xFFu},
1459                         {0xADu, 0x55u},
1460                         {0xAFu, 0xAAu},
1461                         {0xB1u, 0xFFu},
1462                         {0xB4u, 0xFFu},
1463                         {0xBBu, 0x02u},
1464                         {0xBEu, 0x10u},
1465                         {0xD6u, 0x08u},
1466                         {0xD8u, 0x04u},
1467                         {0xD9u, 0x04u},
1468                         {0xDBu, 0x04u},
1469                         {0xDCu, 0x20u},
1470                         {0xDDu, 0x90u},
1471                         {0xDFu, 0x01u},
1472                         {0x01u, 0x04u},
1473                         {0x03u, 0x82u},
1474                         {0x04u, 0x10u},
1475                         {0x05u, 0x05u},
1476                         {0x08u, 0x28u},
1477                         {0x09u, 0x01u},
1478                         {0x0Au, 0x02u},
1479                         {0x0Du, 0x80u},
1480                         {0x0Fu, 0x20u},
1481                         {0x10u, 0x02u},
1482                         {0x11u, 0x10u},
1483                         {0x14u, 0x06u},
1484                         {0x16u, 0x20u},
1485                         {0x17u, 0x01u},
1486                         {0x1Au, 0x04u},
1487                         {0x1Cu, 0x10u},
1488                         {0x1Eu, 0x20u},
1489                         {0x21u, 0x01u},
1490                         {0x25u, 0x04u},
1491                         {0x26u, 0x04u},
1492                         {0x27u, 0x02u},
1493                         {0x29u, 0x04u},
1494                         {0x2Au, 0x0Cu},
1495                         {0x2Bu, 0x05u},
1496                         {0x2Du, 0x60u},
1497                         {0x2Eu, 0x08u},
1498                         {0x2Fu, 0x40u},
1499                         {0x31u, 0x80u},
1500                         {0x32u, 0x08u},
1501                         {0x33u, 0x01u},
1502                         {0x36u, 0x04u},
1503                         {0x37u, 0x11u},
1504                         {0x39u, 0x02u},
1505                         {0x3Au, 0x60u},
1506                         {0x3Eu, 0x03u},
1507                         {0x3Fu, 0x18u},
1508                         {0x40u, 0x08u},
1509                         {0x43u, 0x10u},
1510                         {0x4Au, 0x08u},
1511                         {0x4Bu, 0x10u},
1512                         {0x59u, 0x40u},
1513                         {0x5Au, 0x20u},
1514                         {0x5Cu, 0x40u},
1515                         {0x5Eu, 0x10u},
1516                         {0x62u, 0x40u},
1517                         {0x63u, 0x08u},
1518                         {0x66u, 0x80u},
1519                         {0x67u, 0x08u},
1520                         {0x80u, 0x40u},
1521                         {0x82u, 0x50u},
1522                         {0x88u, 0x20u},
1523                         {0x89u, 0x80u},
1524                         {0x8Au, 0x40u},
1525                         {0x8Du, 0x04u},
1526                         {0x8Eu, 0x31u},
1527                         {0x8Fu, 0x10u},
1528                         {0x91u, 0x61u},
1529                         {0x92u, 0x08u},
1530                         {0x93u, 0x80u},
1531                         {0x94u, 0x20u},
1532                         {0x96u, 0x84u},
1533                         {0x97u, 0x08u},
1534                         {0x98u, 0x06u},
1535                         {0x99u, 0x02u},
1536                         {0x9Au, 0x02u},
1537                         {0x9Bu, 0x0Cu},
1538                         {0x9Du, 0x08u},
1539                         {0x9Eu, 0xC5u},
1540                         {0x9Fu, 0x01u},
1541                         {0xA0u, 0x89u},
1542                         {0xA1u, 0x80u},
1543                         {0xA4u, 0x70u},
1544                         {0xA5u, 0x04u},
1545                         {0xA6u, 0x02u},
1546                         {0xAAu, 0x24u},
1547                         {0xACu, 0x80u},
1548                         {0xADu, 0x08u},
1549                         {0xB1u, 0x10u},
1550                         {0xB2u, 0x40u},
1551                         {0xB4u, 0x12u},
1552                         {0xB5u, 0x40u},
1553                         {0xB7u, 0x40u},
1554                         {0xC0u, 0x7Du},
1555                         {0xC2u, 0xAFu},
1556                         {0xC4u, 0xF3u},
1557                         {0xCAu, 0xFEu},
1558                         {0xCCu, 0xEBu},
1559                         {0xCEu, 0xEDu},
1560                         {0xD6u, 0x3Cu},
1561                         {0xD8u, 0x3Cu},
1562                         {0xE0u, 0xB0u},
1563                         {0xE2u, 0x01u},
1564                         {0xE6u, 0x40u},
1565                         {0xE8u, 0x40u},
1566                         {0xEAu, 0xA0u},
1567                         {0xECu, 0x20u},
1568                         {0xEEu, 0x40u},
1569                         {0x01u, 0x20u},
1570                         {0x03u, 0x10u},
1571                         {0x04u, 0x02u},
1572                         {0x08u, 0x02u},
1573                         {0x09u, 0x04u},
1574                         {0x0Bu, 0x02u},
1575                         {0x0Cu, 0x02u},
1576                         {0x0Fu, 0x18u},
1577                         {0x11u, 0x20u},
1578                         {0x12u, 0x01u},
1579                         {0x13u, 0x08u},
1580                         {0x17u, 0x20u},
1581                         {0x18u, 0x02u},
1582                         {0x19u, 0x02u},
1583                         {0x1Bu, 0x04u},
1584                         {0x1Du, 0x04u},
1585                         {0x1Fu, 0x02u},
1586                         {0x23u, 0x20u},
1587                         {0x29u, 0x04u},
1588                         {0x2Bu, 0x02u},
1589                         {0x2Du, 0x04u},
1590                         {0x2Fu, 0x03u},
1591                         {0x32u, 0x02u},
1592                         {0x33u, 0x01u},
1593                         {0x34u, 0x01u},
1594                         {0x35u, 0x06u},
1595                         {0x37u, 0x38u},
1596                         {0x3Bu, 0x20u},
1597                         {0x3Eu, 0x04u},
1598                         {0x58u, 0x04u},
1599                         {0x59u, 0x04u},
1600                         {0x5Cu, 0x22u},
1601                         {0x5Fu, 0x01u},
1602                         {0x80u, 0x40u},
1603                         {0x82u, 0x80u},
1604                         {0x84u, 0x40u},
1605                         {0x86u, 0x80u},
1606                         {0x87u, 0x3Fu},
1607                         {0x88u, 0x06u},
1608                         {0x89u, 0x10u},
1609                         {0x8Bu, 0x20u},
1610                         {0x8Eu, 0x10u},
1611                         {0x8Fu, 0x3Fu},
1612                         {0x90u, 0x0Bu},
1613                         {0x91u, 0x3Fu},
1614                         {0x92u, 0xF4u},
1615                         {0x95u, 0x01u},
1616                         {0x97u, 0x02u},
1617                         {0x98u, 0x01u},
1618                         {0x99u, 0x01u},
1619                         {0x9Bu, 0x02u},
1620                         {0x9Cu, 0xCAu},
1621                         {0x9Du, 0x04u},
1622                         {0x9Eu, 0x15u},
1623                         {0x9Fu, 0x08u},
1624                         {0xA0u, 0xE0u},
1625                         {0xA1u, 0x3Fu},
1626                         {0xA7u, 0x3Fu},
1627                         {0xA9u, 0x10u},
1628                         {0xAAu, 0xFFu},
1629                         {0xABu, 0x20u},
1630                         {0xACu, 0x11u},
1631                         {0xADu, 0x04u},
1632                         {0xAEu, 0xECu},
1633                         {0xAFu, 0x08u},
1634                         {0xB3u, 0x03u},
1635                         {0xB4u, 0xC0u},
1636                         {0xB5u, 0x30u},
1637                         {0xB6u, 0x3Fu},
1638                         {0xB7u, 0x0Cu},
1639                         {0xBAu, 0x20u},
1640                         {0xBBu, 0xA8u},
1641                         {0xD6u, 0x08u},
1642                         {0xD8u, 0x04u},
1643                         {0xD9u, 0x04u},
1644                         {0xDBu, 0x04u},
1645                         {0xDCu, 0x22u},
1646                         {0xDDu, 0x90u},
1647                         {0xDFu, 0x01u},
1648                         {0x00u, 0xA0u},
1649                         {0x01u, 0x08u},
1650                         {0x04u, 0x04u},
1651                         {0x05u, 0x20u},
1652                         {0x06u, 0x42u},
1653                         {0x07u, 0x04u},
1654                         {0x0Au, 0x84u},
1655                         {0x0Cu, 0x20u},
1656                         {0x0Du, 0x80u},
1657                         {0x0Fu, 0x80u},
1658                         {0x16u, 0x0Du},
1659                         {0x17u, 0x01u},
1660                         {0x19u, 0x10u},
1661                         {0x1Au, 0x20u},
1662                         {0x1Cu, 0x04u},
1663                         {0x1Du, 0x80u},
1664                         {0x1Fu, 0x50u},
1665                         {0x20u, 0x12u},
1666                         {0x21u, 0x60u},
1667                         {0x22u, 0x04u},
1668                         {0x23u, 0x08u},
1669                         {0x25u, 0x10u},
1670                         {0x26u, 0x64u},
1671                         {0x27u, 0x10u},
1672                         {0x29u, 0x10u},
1673                         {0x2Au, 0x81u},
1674                         {0x2Cu, 0x01u},
1675                         {0x2Eu, 0x08u},
1676                         {0x2Fu, 0x44u},
1677                         {0x30u, 0x02u},
1678                         {0x31u, 0x28u},
1679                         {0x32u, 0x40u},
1680                         {0x34u, 0x04u},
1681                         {0x36u, 0x40u},
1682                         {0x37u, 0x11u},
1683                         {0x38u, 0x10u},
1684                         {0x39u, 0x81u},
1685                         {0x3Du, 0x28u},
1686                         {0x3Fu, 0x80u},
1687                         {0x5Cu, 0x40u},
1688                         {0x5Fu, 0x20u},
1689                         {0x64u, 0x07u},
1690                         {0x7Du, 0x01u},
1691                         {0x7Fu, 0x40u},
1692                         {0x81u, 0x20u},
1693                         {0x82u, 0x10u},
1694                         {0x83u, 0x20u},
1695                         {0x84u, 0x08u},
1696                         {0x86u, 0x02u},
1697                         {0x87u, 0x50u},
1698                         {0x89u, 0x02u},
1699                         {0x8Cu, 0x40u},
1700                         {0x8Eu, 0x02u},
1701                         {0xC0u, 0xF7u},
1702                         {0xC2u, 0xDAu},
1703                         {0xC4u, 0xD0u},
1704                         {0xCAu, 0xFDu},
1705                         {0xCCu, 0xFFu},
1706                         {0xCEu, 0x7Du},
1707                         {0xD6u, 0x30u},
1708                         {0xD8u, 0x30u},
1709                         {0xE0u, 0x80u},
1710                         {0xE2u, 0x01u},
1711                         {0xE4u, 0x04u},
1712                         {0xE6u, 0x10u},
1713                         {0x89u, 0x07u},
1714                         {0x97u, 0x07u},
1715                         {0x98u, 0x01u},
1716                         {0x99u, 0x01u},
1717                         {0x9Bu, 0x18u},
1718                         {0x9Fu, 0x08u},
1719                         {0xABu, 0x2Au},
1720                         {0xADu, 0x34u},
1721                         {0xB0u, 0x01u},
1722                         {0xB5u, 0x07u},
1723                         {0xB7u, 0x38u},
1724                         {0xBEu, 0x01u},
1725                         {0xBFu, 0x10u},
1726                         {0xD8u, 0x04u},
1727                         {0xD9u, 0x04u},
1728                         {0xDCu, 0x10u},
1729                         {0xDFu, 0x01u},
1730                         {0x01u, 0xA0u},
1731                         {0x03u, 0x50u},
1732                         {0x0Au, 0x41u},
1733                         {0x0Bu, 0x14u},
1734                         {0x0Cu, 0x03u},
1735                         {0x0Fu, 0x08u},
1736                         {0x11u, 0x40u},
1737                         {0x12u, 0x60u},
1738                         {0x13u, 0x20u},
1739                         {0x19u, 0x80u},
1740                         {0x1Bu, 0x01u},
1741                         {0x1Fu, 0x02u},
1742                         {0x23u, 0x10u},
1743                         {0x26u, 0x40u},
1744                         {0x27u, 0x08u},
1745                         {0x29u, 0x24u},
1746                         {0x2Au, 0x42u},
1747                         {0x2Bu, 0x01u},
1748                         {0x2Du, 0x20u},
1749                         {0x2Eu, 0x40u},
1750                         {0x31u, 0x08u},
1751                         {0x33u, 0x51u},
1752                         {0x36u, 0x48u},
1753                         {0x37u, 0x20u},
1754                         {0x38u, 0x88u},
1755                         {0x39u, 0x10u},
1756                         {0x3Bu, 0x04u},
1757                         {0x3Cu, 0x20u},
1758                         {0x41u, 0x08u},
1759                         {0x42u, 0x44u},
1760                         {0x49u, 0x64u},
1761                         {0x4Au, 0xA0u},
1762                         {0x4Bu, 0x02u},
1763                         {0x51u, 0x04u},
1764                         {0x52u, 0x12u},
1765                         {0x61u, 0x10u},
1766                         {0x68u, 0x62u},
1767                         {0x69u, 0x02u},
1768                         {0x6Au, 0x20u},
1769                         {0x6Bu, 0x04u},
1770                         {0x71u, 0x80u},
1771                         {0x79u, 0x02u},
1772                         {0x7Bu, 0x40u},
1773                         {0x83u, 0x0Cu},
1774                         {0x86u, 0x44u},
1775                         {0x8Au, 0xAAu},
1776                         {0x8Fu, 0x02u},
1777                         {0x90u, 0x88u},
1778                         {0x91u, 0x50u},
1779                         {0x92u, 0x41u},
1780                         {0x95u, 0x0Au},
1781                         {0x96u, 0x20u},
1782                         {0x97u, 0x02u},
1783                         {0x99u, 0x70u},
1784                         {0x9Au, 0x02u},
1785                         {0x9Bu, 0x71u},
1786                         {0x9Cu, 0x01u},
1787                         {0x9Eu, 0x10u},
1788                         {0x9Fu, 0x04u},
1789                         {0xA0u, 0x10u},
1790                         {0xA1u, 0x08u},
1791                         {0xA4u, 0x62u},
1792                         {0xA5u, 0x80u},
1793                         {0xA7u, 0x40u},
1794                         {0xACu, 0x20u},
1795                         {0xADu, 0x84u},
1796                         {0xB3u, 0x44u},
1797                         {0xB6u, 0x20u},
1798                         {0xC0u, 0x0Fu},
1799                         {0xC2u, 0x4Fu},
1800                         {0xC4u, 0x0Fu},
1801                         {0xCAu, 0x3Fu},
1802                         {0xCCu, 0x7Fu},
1803                         {0xCEu, 0x2Eu},
1804                         {0xD0u, 0x07u},
1805                         {0xD2u, 0x0Cu},
1806                         {0xD8u, 0x04u},
1807                         {0xE6u, 0x44u},
1808                         {0xEAu, 0x10u},
1809                         {0xECu, 0x08u},
1810                         {0x00u, 0x1Du},
1811                         {0x04u, 0x1Du},
1812                         {0x08u, 0x02u},
1813                         {0x0Au, 0x04u},
1814                         {0x10u, 0x02u},
1815                         {0x12u, 0x08u},
1816                         {0x14u, 0x02u},
1817                         {0x15u, 0x02u},
1818                         {0x16u, 0x0Du},
1819                         {0x18u, 0x01u},
1820                         {0x1Au, 0x02u},
1821                         {0x20u, 0x0Du},
1822                         {0x22u, 0x10u},
1823                         {0x26u, 0x10u},
1824                         {0x28u, 0x1Du},
1825                         {0x29u, 0x01u},
1826                         {0x2Cu, 0x1Du},
1827                         {0x31u, 0x02u},
1828                         {0x32u, 0x0Fu},
1829                         {0x34u, 0x10u},
1830                         {0x35u, 0x01u},
1831                         {0x3Au, 0x08u},
1832                         {0x3Eu, 0x10u},
1833                         {0x54u, 0x40u},
1834                         {0x56u, 0x04u},
1835                         {0x58u, 0x04u},
1836                         {0x59u, 0x04u},
1837                         {0x5Bu, 0x04u},
1838                         {0x5Cu, 0x91u},
1839                         {0x5Du, 0x10u},
1840                         {0x5Fu, 0x01u},
1841                         {0x80u, 0x11u},
1842                         {0x81u, 0xC6u},
1843                         {0x82u, 0x62u},
1844                         {0x84u, 0x52u},
1845                         {0x85u, 0x01u},
1846                         {0x86u, 0x28u},
1847                         {0x87u, 0x5Eu},
1848                         {0x8Cu, 0x02u},
1849                         {0x8Du, 0x39u},
1850                         {0x8Eu, 0x0Du},
1851                         {0x8Fu, 0x06u},
1852                         {0x90u, 0x0Du},
1853                         {0x91u, 0x77u},
1854                         {0x93u, 0x08u},
1855                         {0x94u, 0x0Du},
1856                         {0x95u, 0x80u},
1857                         {0x97u, 0x46u},
1858                         {0x98u, 0x40u},
1859                         {0x99u, 0xC2u},
1860                         {0x9Au, 0x30u},
1861                         {0x9Bu, 0x04u},
1862                         {0x9Cu, 0x0Du},
1863                         {0x9Du, 0xC6u},
1864                         {0xA0u, 0x0Du},
1865                         {0xA3u, 0x80u},
1866                         {0xA4u, 0x0Du},
1867                         {0xA5u, 0x04u},
1868                         {0xA7u, 0x20u},
1869                         {0xA9u, 0x42u},
1870                         {0xACu, 0x32u},
1871                         {0xADu, 0x46u},
1872                         {0xAEu, 0x44u},
1873                         {0xAFu, 0x80u},
1874                         {0xB0u, 0x0Fu},
1875                         {0xB1u, 0x0Fu},
1876                         {0xB3u, 0x80u},
1877                         {0xB4u, 0x70u},
1878                         {0xB5u, 0x70u},
1879                         {0xB7u, 0x01u},
1880                         {0xB9u, 0x02u},
1881                         {0xBAu, 0x22u},
1882                         {0xBBu, 0x30u},
1883                         {0xBFu, 0x44u},
1884                         {0xD4u, 0x40u},
1885                         {0xD6u, 0x04u},
1886                         {0xD8u, 0x04u},
1887                         {0xD9u, 0x04u},
1888                         {0xDBu, 0x04u},
1889                         {0xDFu, 0x01u},
1890                         {0x00u, 0x44u},
1891                         {0x02u, 0x40u},
1892                         {0x05u, 0x20u},
1893                         {0x07u, 0x50u},
1894                         {0x08u, 0x01u},
1895                         {0x09u, 0x80u},
1896                         {0x0Au, 0x28u},
1897                         {0x0Cu, 0x10u},
1898                         {0x0Eu, 0x60u},
1899                         {0x10u, 0x20u},
1900                         {0x11u, 0x01u},
1901                         {0x13u, 0x40u},
1902                         {0x15u, 0x18u},
1903                         {0x16u, 0x02u},
1904                         {0x17u, 0x01u},
1905                         {0x18u, 0x40u},
1906                         {0x19u, 0x10u},
1907                         {0x1Au, 0x08u},
1908                         {0x1Eu, 0x20u},
1909                         {0x1Fu, 0x10u},
1910                         {0x20u, 0x04u},
1911                         {0x22u, 0x88u},
1912                         {0x23u, 0x44u},
1913                         {0x26u, 0x21u},
1914                         {0x28u, 0x01u},
1915                         {0x2Au, 0x04u},
1916                         {0x2Bu, 0x84u},
1917                         {0x2Fu, 0x04u},
1918                         {0x30u, 0x20u},
1919                         {0x31u, 0x80u},
1920                         {0x33u, 0x06u},
1921                         {0x37u, 0x08u},
1922                         {0x38u, 0x04u},
1923                         {0x39u, 0x03u},
1924                         {0x3Bu, 0x40u},
1925                         {0x40u, 0x02u},
1926                         {0x43u, 0x80u},
1927                         {0x44u, 0x10u},
1928                         {0x45u, 0x08u},
1929                         {0x60u, 0x02u},
1930                         {0x61u, 0x20u},
1931                         {0x62u, 0x0Au},
1932                         {0x65u, 0x81u},
1933                         {0x66u, 0x10u},
1934                         {0x67u, 0x20u},
1935                         {0x81u, 0x03u},
1936                         {0x82u, 0x01u},
1937                         {0x86u, 0x02u},
1938                         {0x90u, 0x88u},
1939                         {0x91u, 0x50u},
1940                         {0x92u, 0x41u},
1941                         {0x93u, 0x08u},
1942                         {0x94u, 0x04u},
1943                         {0x95u, 0x02u},
1944                         {0x97u, 0x46u},
1945                         {0x98u, 0x20u},
1946                         {0x99u, 0x62u},
1947                         {0x9Au, 0x46u},
1948                         {0x9Bu, 0x79u},
1949                         {0x9Fu, 0x04u},
1950                         {0xA0u, 0x10u},
1951                         {0xA1u, 0x28u},
1952                         {0xA3u, 0x86u},
1953                         {0xA4u, 0x62u},
1954                         {0xA5u, 0x80u},
1955                         {0xA6u, 0x80u},
1956                         {0xA7u, 0x40u},
1957                         {0xB1u, 0xA0u},
1958                         {0xB3u, 0x04u},
1959                         {0xB4u, 0x40u},
1960                         {0xB7u, 0x08u},
1961                         {0xC0u, 0x7Du},
1962                         {0xC2u, 0x7Fu},
1963                         {0xC4u, 0xFDu},
1964                         {0xCAu, 0x2Fu},
1965                         {0xCCu, 0x4Fu},
1966                         {0xCEu, 0x0Bu},
1967                         {0xD8u, 0xFFu},
1968                         {0xE2u, 0x01u},
1969                         {0xE4u, 0x04u},
1970                         {0xE6u, 0x32u},
1971                         {0xEAu, 0x08u},
1972                         {0xECu, 0x80u},
1973                         {0xEEu, 0x02u},
1974                         {0x01u, 0x96u},
1975                         {0x03u, 0x69u},
1976                         {0x05u, 0x33u},
1977                         {0x06u, 0x0Cu},
1978                         {0x07u, 0xCCu},
1979                         {0x08u, 0x04u},
1980                         {0x0Au, 0xA3u},
1981                         {0x0Bu, 0xFFu},
1982                         {0x0Du, 0xFFu},
1983                         {0x16u, 0x20u},
1984                         {0x17u, 0xFFu},
1985                         {0x1Au, 0x12u},
1986                         {0x1Bu, 0xFFu},
1987                         {0x1Du, 0x0Fu},
1988                         {0x1Eu, 0x01u},
1989                         {0x1Fu, 0xF0u},
1990                         {0x21u, 0xFFu},
1991                         {0x28u, 0xC8u},
1992                         {0x29u, 0x55u},
1993                         {0x2Au, 0x03u},
1994                         {0x2Bu, 0xAAu},
1995                         {0x2Cu, 0x01u},
1996                         {0x2Eu, 0x62u},
1997                         {0x31u, 0xFFu},
1998                         {0x32u, 0xE0u},
1999                         {0x34u, 0x0Fu},
2000                         {0x36u, 0x10u},
2001                         {0x3Bu, 0x02u},
2002                         {0x58u, 0x04u},
2003                         {0x59u, 0x04u},
2004                         {0x5Cu, 0x20u},
2005                         {0x5Fu, 0x01u},
2006                         {0x84u, 0x80u},
2007                         {0x85u, 0x44u},
2008                         {0x87u, 0x88u},
2009                         {0x89u, 0x48u},
2010                         {0x8Bu, 0x84u},
2011                         {0x8Cu, 0x4Du},
2012                         {0x8Du, 0x33u},
2013                         {0x8Eu, 0xB2u},
2014                         {0x8Fu, 0xCCu},
2015                         {0x91u, 0x12u},
2016                         {0x93u, 0x21u},
2017                         {0x98u, 0x40u},
2018                         {0x99u, 0x11u},
2019                         {0x9Bu, 0x22u},
2020                         {0x9Cu, 0x20u},
2021                         {0x9Du, 0xFFu},
2022                         {0x9Eu, 0x10u},
2023                         {0xA0u, 0x12u},
2024                         {0xA1u, 0x0Fu},
2025                         {0xA2u, 0x20u},
2026                         {0xA3u, 0xF0u},
2027                         {0xA4u, 0x05u},
2028                         {0xA6u, 0x08u},
2029                         {0xA7u, 0xFFu},
2030                         {0xA8u, 0x08u},
2031                         {0xAAu, 0x04u},
2032                         {0xADu, 0xFFu},
2033                         {0xB0u, 0x3Cu},
2034                         {0xB2u, 0xC0u},
2035                         {0xB3u, 0xFFu},
2036                         {0xB4u, 0x03u},
2037                         {0xB9u, 0x02u},
2038                         {0xBEu, 0x15u},
2039                         {0xBFu, 0x05u},
2040                         {0xD6u, 0x08u},
2041                         {0xD8u, 0x04u},
2042                         {0xD9u, 0x04u},
2043                         {0xDBu, 0x04u},
2044                         {0xDDu, 0x90u},
2045                         {0xDFu, 0x01u},
2046                         {0x01u, 0x44u},
2047                         {0x03u, 0x02u},
2048                         {0x04u, 0x04u},
2049                         {0x05u, 0x20u},
2050                         {0x08u, 0x20u},
2051                         {0x0Au, 0x01u},
2052                         {0x0Du, 0x80u},
2053                         {0x0Eu, 0x18u},
2054                         {0x12u, 0x10u},
2055                         {0x13u, 0x21u},
2056                         {0x15u, 0x20u},
2057                         {0x16u, 0x02u},
2058                         {0x18u, 0x08u},
2059                         {0x1Au, 0x80u},
2060                         {0x1Bu, 0x08u},
2061                         {0x1Cu, 0x04u},
2062                         {0x1Du, 0x90u},
2063                         {0x1Eu, 0x10u},
2064                         {0x20u, 0x20u},
2065                         {0x22u, 0x02u},
2066                         {0x24u, 0x80u},
2067                         {0x27u, 0x80u},
2068                         {0x29u, 0x80u},
2069                         {0x2Bu, 0xA0u},
2070                         {0x2Du, 0x01u},
2071                         {0x2Fu, 0x04u},
2072                         {0x32u, 0x51u},
2073                         {0x34u, 0x08u},
2074                         {0x37u, 0x90u},
2075                         {0x39u, 0x54u},
2076                         {0x3Du, 0x80u},
2077                         {0x3Eu, 0x20u},
2078                         {0x3Fu, 0x0Au},
2079                         {0x48u, 0x04u},
2080                         {0x4Au, 0x08u},
2081                         {0x58u, 0x80u},
2082                         {0x63u, 0x02u},
2083                         {0x69u, 0x14u},
2084                         {0x6Au, 0x01u},
2085                         {0x6Bu, 0x01u},
2086                         {0x73u, 0x55u},
2087                         {0x80u, 0x20u},
2088                         {0x81u, 0x87u},
2089                         {0x82u, 0x50u},
2090                         {0x87u, 0x10u},
2091                         {0x8Au, 0x02u},
2092                         {0x8Eu, 0x10u},
2093                         {0x91u, 0x81u},
2094                         {0x92u, 0x02u},
2095                         {0x93u, 0x28u},
2096                         {0x94u, 0x88u},
2097                         {0x95u, 0x14u},
2098                         {0x97u, 0xD4u},
2099                         {0x98u, 0x98u},
2100                         {0x99u, 0x02u},
2101                         {0x9Au, 0x32u},
2102                         {0x9Bu, 0x14u},
2103                         {0x9Du, 0x38u},
2104                         {0x9Eu, 0x80u},
2105                         {0xA0u, 0x02u},
2106                         {0xA1u, 0x40u},
2107                         {0xA2u, 0x0Cu},
2108                         {0xA3u, 0xE6u},
2109                         {0xA4u, 0x50u},
2110                         {0xA5u, 0x01u},
2111                         {0xA9u, 0x80u},
2112                         {0xABu, 0x08u},
2113                         {0xAFu, 0x40u},
2114                         {0xB0u, 0x18u},
2115                         {0xB4u, 0x04u},
2116                         {0xB7u, 0x04u},
2117                         {0xC0u, 0x65u},
2118                         {0xC2u, 0xE3u},
2119                         {0xC4u, 0xCEu},
2120                         {0xCAu, 0xABu},
2121                         {0xCCu, 0x7Du},
2122                         {0xCEu, 0xFEu},
2123                         {0xD6u, 0x08u},
2124                         {0xD8u, 0x08u},
2125                         {0xE0u, 0x04u},
2126                         {0xE6u, 0x30u},
2127                         {0xE8u, 0xA0u},
2128                         {0xECu, 0x50u},
2129                         {0xEEu, 0x02u},
2130                         {0x00u, 0x0Fu},
2131                         {0x02u, 0xF0u},
2132                         {0x05u, 0x44u},
2133                         {0x06u, 0xFFu},
2134                         {0x07u, 0x88u},
2135                         {0x09u, 0x84u},
2136                         {0x0Bu, 0x48u},
2137                         {0x0Cu, 0x33u},
2138                         {0x0Eu, 0xCCu},
2139                         {0x11u, 0x21u},
2140                         {0x12u, 0xFFu},
2141                         {0x13u, 0x12u},
2142                         {0x16u, 0xFFu},
2143                         {0x17u, 0xFFu},
2144                         {0x18u, 0x11u},
2145                         {0x1Au, 0x22u},
2146                         {0x1Bu, 0xFFu},
2147                         {0x1Cu, 0x12u},
2148                         {0x1Du, 0xFFu},
2149                         {0x1Eu, 0x21u},
2150                         {0x21u, 0x0Fu},
2151                         {0x23u, 0xF0u},
2152                         {0x24u, 0x44u},
2153                         {0x25u, 0x11u},
2154                         {0x26u, 0x88u},
2155                         {0x27u, 0x22u},
2156                         {0x28u, 0x48u},
2157                         {0x2Au, 0x84u},
2158                         {0x2Du, 0x33u},
2159                         {0x2Fu, 0xCCu},
2160                         {0x31u, 0xFFu},
2161                         {0x32u, 0xFFu},
2162                         {0x3Eu, 0x04u},
2163                         {0x3Fu, 0x01u},
2164                         {0x58u, 0x04u},
2165                         {0x59u, 0x04u},
2166                         {0x5Fu, 0x01u},
2167                         {0x81u, 0x10u},
2168                         {0x85u, 0x04u},
2169                         {0x87u, 0x01u},
2170                         {0x88u, 0x18u},
2171                         {0x8Au, 0x23u},
2172                         {0x8Bu, 0x04u},
2173                         {0x8Fu, 0x04u},
2174                         {0x91u, 0x40u},
2175                         {0x95u, 0x28u},
2176                         {0x96u, 0x0Cu},
2177                         {0x97u, 0x50u},
2178                         {0x99u, 0x08u},
2179                         {0x9Au, 0x01u},
2180                         {0x9Bu, 0x03u},
2181                         {0x9Cu, 0x11u},
2182                         {0x9Du, 0x20u},
2183                         {0x9Eu, 0x22u},
2184                         {0xA1u, 0x04u},
2185                         {0xA2u, 0x42u},
2186                         {0xA3u, 0x02u},
2187                         {0xA4u, 0x34u},
2188                         {0xA6u, 0x03u},
2189                         {0xADu, 0x80u},
2190                         {0xB0u, 0x20u},
2191                         {0xB1u, 0x80u},
2192                         {0xB2u, 0x0Fu},
2193                         {0xB3u, 0x60u},
2194                         {0xB4u, 0x40u},
2195                         {0xB5u, 0x07u},
2196                         {0xB6u, 0x10u},
2197                         {0xB7u, 0x18u},
2198                         {0xBEu, 0x41u},
2199                         {0xBFu, 0x45u},
2200                         {0xD4u, 0x09u},
2201                         {0xD6u, 0x04u},
2202                         {0xD8u, 0x04u},
2203                         {0xD9u, 0x04u},
2204                         {0xDBu, 0x04u},
2205                         {0xDCu, 0x21u},
2206                         {0xDDu, 0x10u},
2207                         {0xDFu, 0x01u},
2208                         {0x03u, 0xA2u},
2209                         {0x07u, 0x04u},
2210                         {0x08u, 0x20u},
2211                         {0x09u, 0x04u},
2212                         {0x0Au, 0x82u},
2213                         {0x0Du, 0x40u},
2214                         {0x0Eu, 0x18u},
2215                         {0x11u, 0x14u},
2216                         {0x14u, 0x10u},
2217                         {0x15u, 0x02u},
2218                         {0x19u, 0x08u},
2219                         {0x1Cu, 0x20u},
2220                         {0x1Du, 0x40u},
2221                         {0x1Eu, 0x58u},
2222                         {0x20u, 0x80u},
2223                         {0x24u, 0x02u},
2224                         {0x25u, 0x0Eu},
2225                         {0x26u, 0x20u},
2226                         {0x28u, 0x20u},
2227                         {0x2Bu, 0x82u},
2228                         {0x2Cu, 0x02u},
2229                         {0x2Du, 0x01u},
2230                         {0x31u, 0x08u},
2231                         {0x32u, 0x41u},
2232                         {0x33u, 0x20u},
2233                         {0x36u, 0xA8u},
2234                         {0x37u, 0x21u},
2235                         {0x39u, 0x14u},
2236                         {0x3Cu, 0x08u},
2237                         {0x3Eu, 0x21u},
2238                         {0x3Fu, 0x80u},
2239                         {0x5Du, 0x02u},
2240                         {0x5Eu, 0x64u},
2241                         {0x65u, 0x40u},
2242                         {0x67u, 0x80u},
2243                         {0x82u, 0x08u},
2244                         {0x83u, 0x22u},
2245                         {0x88u, 0x10u},
2246                         {0x89u, 0x01u},
2247                         {0x8Au, 0x14u},
2248                         {0x8Cu, 0x01u},
2249                         {0x91u, 0x95u},
2250                         {0x92u, 0x83u},
2251                         {0x97u, 0x80u},
2252                         {0x98u, 0x30u},
2253                         {0x99u, 0x02u},
2254                         {0x9Au, 0x20u},
2255                         {0x9Bu, 0x05u},
2256                         {0x9Du, 0x08u},
2257                         {0x9Fu, 0x20u},
2258                         {0xA0u, 0x06u},
2259                         {0xA2u, 0x80u},
2260                         {0xA3u, 0xE2u},
2261                         {0xA4u, 0x40u},
2262                         {0xA5u, 0x06u},
2263                         {0xAEu, 0x80u},
2264                         {0xAFu, 0x08u},
2265                         {0xB1u, 0x30u},
2266                         {0xB2u, 0x80u},
2267                         {0xC0u, 0x4Du},
2268                         {0xC2u, 0xEFu},
2269                         {0xC4u, 0x36u},
2270                         {0xCAu, 0x9Bu},
2271                         {0xCCu, 0xFFu},
2272                         {0xCEu, 0xF6u},
2273                         {0xD6u, 0xF0u},
2274                         {0xD8u, 0x90u},
2275                         {0xE0u, 0xA0u},
2276                         {0xE4u, 0x20u},
2277                         {0xE6u, 0x80u},
2278                         {0xE8u, 0x20u},
2279                         {0xECu, 0x22u},
2280                         {0x04u, 0x40u},
2281                         {0x0Eu, 0x08u},
2282                         {0x0Fu, 0x40u},
2283                         {0x12u, 0x20u},
2284                         {0x13u, 0x10u},
2285                         {0x17u, 0x81u},
2286                         {0x19u, 0x01u},
2287                         {0x1Du, 0x04u},
2288                         {0x30u, 0x10u},
2289                         {0x33u, 0x01u},
2290                         {0x36u, 0x20u},
2291                         {0x37u, 0x02u},
2292                         {0x39u, 0x04u},
2293                         {0x3Bu, 0x10u},
2294                         {0x3Du, 0x01u},
2295                         {0x3Eu, 0x80u},
2296                         {0x42u, 0x08u},
2297                         {0x50u, 0x20u},
2298                         {0x56u, 0x20u},
2299                         {0x89u, 0x01u},
2300                         {0xC0u, 0x80u},
2301                         {0xC2u, 0xA0u},
2302                         {0xC4u, 0xF0u},
2303                         {0xC6u, 0x30u},
2304                         {0xCCu, 0xF0u},
2305                         {0xCEu, 0xF0u},
2306                         {0xD0u, 0x10u},
2307                         {0xD4u, 0x60u},
2308                         {0x03u, 0x02u},
2309                         {0x0Au, 0x01u},
2310                         {0x31u, 0x01u},
2311                         {0x32u, 0x40u},
2312                         {0x35u, 0x04u},
2313                         {0x37u, 0x80u},
2314                         {0x39u, 0x08u},
2315                         {0x3Bu, 0x20u},
2316                         {0x3Fu, 0x80u},
2317                         {0x54u, 0x08u},
2318                         {0x5Fu, 0x01u},
2319                         {0x80u, 0x40u},
2320                         {0x90u, 0x40u},
2321                         {0x93u, 0x40u},
2322                         {0x95u, 0x04u},
2323                         {0x99u, 0x05u},
2324                         {0x9Bu, 0x80u},
2325                         {0x9Cu, 0x10u},
2326                         {0x9Eu, 0xA0u},
2327                         {0x9Fu, 0x02u},
2328                         {0xA2u, 0x04u},
2329                         {0xA8u, 0x20u},
2330                         {0xB6u, 0x08u},
2331                         {0xC0u, 0x40u},
2332                         {0xC2u, 0x40u},
2333                         {0xCCu, 0xF0u},
2334                         {0xCEu, 0x70u},
2335                         {0xD4u, 0x40u},
2336                         {0xD6u, 0x80u},
2337                         {0xE4u, 0x20u},
2338                         {0xEAu, 0x80u},
2339                         {0x10u, 0x10u},
2340                         {0x33u, 0x10u},
2341                         {0x34u, 0x08u},
2342                         {0x37u, 0x80u},
2343                         {0x52u, 0x20u},
2344                         {0x80u, 0x08u},
2345                         {0x8Au, 0x28u},
2346                         {0x93u, 0x40u},
2347                         {0x95u, 0x0Cu},
2348                         {0x96u, 0x80u},
2349                         {0x97u, 0x21u},
2350                         {0x9Cu, 0x10u},
2351                         {0x9Eu, 0xA0u},
2352                         {0x9Fu, 0x02u},
2353                         {0xA3u, 0x02u},
2354                         {0xA4u, 0x08u},
2355                         {0xA7u, 0x40u},
2356                         {0xAEu, 0x01u},
2357                         {0xB6u, 0x04u},
2358                         {0xC4u, 0x10u},
2359                         {0xCCu, 0xB0u},
2360                         {0xD4u, 0x20u},
2361                         {0xE2u, 0x80u},
2362                         {0xE8u, 0x10u},
2363                         {0x80u, 0x08u},
2364                         {0x83u, 0x10u},
2365                         {0x85u, 0x04u},
2366                         {0x95u, 0x0Cu},
2367                         {0x96u, 0x80u},
2368                         {0x97u, 0x21u},
2369                         {0x9Cu, 0x08u},
2370                         {0x9Eu, 0xA0u},
2371                         {0x9Fu, 0x12u},
2372                         {0xA3u, 0x02u},
2373                         {0xA6u, 0x08u},
2374                         {0xA7u, 0x40u},
2375                         {0xABu, 0x80u},
2376                         {0xAFu, 0x40u},
2377                         {0xE2u, 0x20u},
2378                         {0xE6u, 0x60u},
2379                         {0xEAu, 0x80u},
2380                         {0xECu, 0x40u},
2381                         {0x04u, 0x80u},
2382                         {0x05u, 0x04u},
2383                         {0x08u, 0x40u},
2384                         {0x0Au, 0x20u},
2385                         {0x10u, 0x20u},
2386                         {0x53u, 0x01u},
2387                         {0x58u, 0x01u},
2388                         {0x60u, 0x04u},
2389                         {0x80u, 0x20u},
2390                         {0x83u, 0x01u},
2391                         {0x8Eu, 0x10u},
2392                         {0xC0u, 0x05u},
2393                         {0xC2u, 0x0Au},
2394                         {0xC4u, 0x08u},
2395                         {0xD4u, 0x01u},
2396                         {0xD6u, 0x02u},
2397                         {0xD8u, 0x02u},
2398                         {0xE2u, 0x02u},
2399                         {0x00u, 0x48u},
2400                         {0x08u, 0x40u},
2401                         {0x0Bu, 0x10u},
2402                         {0x57u, 0x0Au},
2403                         {0x61u, 0x90u},
2404                         {0x80u, 0x40u},
2405                         {0x8Bu, 0x10u},
2406                         {0x8Cu, 0x40u},
2407                         {0x90u, 0x80u},
2408                         {0x94u, 0x04u},
2409                         {0x99u, 0x04u},
2410                         {0x9Cu, 0x01u},
2411                         {0xB0u, 0x40u},
2412                         {0xC0u, 0x0Au},
2413                         {0xC2u, 0x0Au},
2414                         {0xD4u, 0x02u},
2415                         {0xD6u, 0x06u},
2416                         {0xD8u, 0x02u},
2417                         {0xE2u, 0x02u},
2418                         {0xE6u, 0x01u},
2419                         {0xEAu, 0x01u},
2420                         {0x56u, 0x80u},
2421                         {0x81u, 0x80u},
2422                         {0x87u, 0x0Au},
2423                         {0x94u, 0x04u},
2424                         {0x9Cu, 0x01u},
2425                         {0x9Du, 0x10u},
2426                         {0xA0u, 0x04u},
2427                         {0xA5u, 0x80u},
2428                         {0xA7u, 0x0Au},
2429                         {0xA8u, 0x04u},
2430                         {0xA9u, 0x04u},
2431                         {0xACu, 0x40u},
2432                         {0xD4u, 0x02u},
2433                         {0x09u, 0x10u},
2434                         {0x0Bu, 0x40u},
2435                         {0x0Fu, 0x88u},
2436                         {0x83u, 0x44u},
2437                         {0x88u, 0x01u},
2438                         {0x94u, 0x04u},
2439                         {0x9Cu, 0x01u},
2440                         {0x9Du, 0x10u},
2441                         {0xA5u, 0x10u},
2442                         {0xA9u, 0x10u},
2443                         {0xACu, 0x04u},
2444                         {0xAEu, 0x80u},
2445                         {0xC2u, 0x0Fu},
2446                         {0xE4u, 0x04u},
2447                         {0x02u, 0x08u},
2448                         {0x66u, 0x10u},
2449                         {0x82u, 0x40u},
2450                         {0x83u, 0x41u},
2451                         {0x86u, 0x80u},
2452                         {0x87u, 0x10u},
2453                         {0x8Au, 0x10u},
2454                         {0x8Cu, 0x01u},
2455                         {0x96u, 0x80u},
2456                         {0x97u, 0x01u},
2457                         {0x9Eu, 0xA0u},
2458                         {0x9Fu, 0x02u},
2459                         {0xA6u, 0x08u},
2460                         {0xA7u, 0x40u},
2461                         {0xADu, 0x04u},
2462                         {0xAFu, 0x10u},
2463                         {0xB3u, 0x02u},
2464                         {0xC0u, 0x40u},
2465                         {0xD8u, 0x80u},
2466                         {0xE2u, 0xE0u},
2467                         {0xE6u, 0xC0u},
2468                         {0xEAu, 0x10u},
2469                         {0xEEu, 0x40u},
2470                         {0x02u, 0x10u},
2471                         {0x57u, 0x08u},
2472                         {0x5Au, 0x40u},
2473                         {0x5Cu, 0x01u},
2474                         {0x67u, 0x20u},
2475                         {0x82u, 0x40u},
2476                         {0x86u, 0x10u},
2477                         {0x87u, 0x08u},
2478                         {0x8Eu, 0x20u},
2479                         {0x90u, 0x01u},
2480                         {0x93u, 0x20u},
2481                         {0x9Eu, 0x20u},
2482                         {0xB7u, 0x02u},
2483                         {0xC0u, 0x10u},
2484                         {0xD4u, 0xC0u},
2485                         {0xD6u, 0x80u},
2486                         {0xD8u, 0x80u},
2487                         {0xE0u, 0x40u},
2488                         {0xE2u, 0x20u},
2489                         {0xE6u, 0x40u},
2490                         {0x80u, 0x04u},
2491                         {0x94u, 0x04u},
2492                         {0x9Du, 0x10u},
2493                         {0xAFu, 0x40u},
2494                         {0x74u, 0x04u},
2495                         {0x8Du, 0x10u},
2496                         {0x9Du, 0x10u},
2497                         {0xA0u, 0x04u},
2498                         {0xACu, 0x04u},
2499                         {0xDEu, 0x04u},
2500                         {0xE0u, 0x02u},
2501                         {0x10u, 0x07u},
2502                         {0x11u, 0x01u},
2503                         {0x1Au, 0x03u},
2504                         {0x1Bu, 0x01u},
2505                         {0x1Cu, 0x07u},
2506                         {0x1Du, 0x01u},
2507                         {0x10u, 0x59u},
2508                         {0x11u, 0x09u},
2509                 };
2510
2511
2512
2513                 CYPACKED typedef struct {
2514                         void CYFAR *address;
2515                         uint16 size;
2516                 } CYPACKED_ATTR cfg_memset_t;
2517
2518
2519                 CYPACKED typedef struct {
2520                         void CYFAR *dest;
2521                         const void CYCODE *src;
2522                         uint16 size;
2523                 } CYPACKED_ATTR cfg_memcpy_t;
2524
2525                 static const cfg_memset_t CYCODE cfg_memset_list[] = {
2526                         /* address, size */
2527                         {(void CYFAR *)(CYREG_TMR0_CFG0), 12u},
2528                         {(void CYFAR *)(CYREG_PRT5_DR), 16u},
2529                         {(void CYFAR *)(CYDEV_UCFG_B0_P0_U0_BASE), 1024u},
2530                         {(void CYFAR *)(CYDEV_UCFG_B0_P2_U1_BASE), 2944u},
2531                         {(void CYFAR *)(CYDEV_UCFG_B1_P2_U1_BASE), 1920u},
2532                         {(void CYFAR *)(CYDEV_UCFG_DSI0_BASE), 2560u},
2533                         {(void CYFAR *)(CYDEV_UCFG_DSI12_BASE), 512u},
2534                         {(void CYFAR *)(CYREG_BCTL1_MDCLK_EN), 16u},
2535                 };
2536
2537                 /* IDMUX_IRQ Address: CYREG_IDMUX_IRQ_CTL0 Size (bytes): 8 */
2538                 static const uint8 CYCODE BS_IDMUX_IRQ_VAL[] = {
2539                         0xFFu, 0xFFu, 0xABu, 0x08u, 0x00u, 0x00u, 0x00u, 0x00u};
2540
2541                 /* UDB_1_3_0_CONFIG Address: CYDEV_UCFG_B0_P2_U0_BASE Size (bytes): 128 */
2542                 static const uint8 CYCODE BS_UDB_1_3_0_CONFIG_VAL[] = {
2543                         0x34u, 0x00u, 0x40u, 0x00u, 0x3Du, 0x30u, 0x42u, 0x00u, 0x03u, 0x00u, 0x0Cu, 0x00u, 0x40u, 0x15u, 0x80u, 0x0Au, 
2544                         0x10u, 0x00u, 0x20u, 0x00u, 0x00u, 0x09u, 0x00u, 0x16u, 0x00u, 0x04u, 0x77u, 0x03u, 0x10u, 0x00u, 0x20u, 0x00u, 
2545                         0x02u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x01u, 0x00u, 0x8Bu, 0x0Bu, 0x74u, 0x24u, 0x88u, 0x00u, 0x77u, 0x00u, 
2546                         0x30u, 0x00u, 0x00u, 0x38u, 0x0Fu, 0x07u, 0xC0u, 0x00u, 0x00u, 0x08u, 0xA2u, 0x20u, 0x00u, 0x00u, 0x00u, 0x00u, 
2547                         0x52u, 0x04u, 0x60u, 0x00u, 0x03u, 0xBEu, 0xFDu, 0xBCu, 0x3Fu, 0xFFu, 0xFFu, 0xFFu, 0x22u, 0x00u, 0xF0u, 0x08u, 
2548                         0x04u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x02u, 0x24u, 0x04u, 0x04u, 0x04u, 0x04u, 0x12u, 0x10u, 0x00u, 0x01u, 
2549                         0x00u, 0x00u, 0xC0u, 0x00u, 0x40u, 0x01u, 0x10u, 0x11u, 0xC0u, 0x01u, 0x00u, 0x11u, 0x40u, 0x01u, 0x40u, 0x01u, 
2550                         0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u};
2551
2552                 /* UDB_1_0_0_CONFIG Address: CYDEV_UCFG_B1_P2_U0_BASE Size (bytes): 128 */
2553                 static const uint8 CYCODE BS_UDB_1_0_0_CONFIG_VAL[] = {
2554                         0x02u, 0x00u, 0x00u, 0x00u, 0x02u, 0x80u, 0x00u, 0x00u, 0x10u, 0xC0u, 0x42u, 0x08u, 0x01u, 0x7Fu, 0x00u, 0x80u, 
2555                         0x44u, 0x90u, 0x10u, 0x40u, 0x01u, 0x1Fu, 0x00u, 0x20u, 0x02u, 0xC0u, 0x00u, 0x04u, 0x02u, 0xC0u, 0x00u, 0x02u, 
2556                         0x08u, 0xC0u, 0x00u, 0x01u, 0x20u, 0x00u, 0x00u, 0x9Fu, 0x0Eu, 0x00u, 0x30u, 0xFFu, 0x02u, 0x00u, 0x00u, 0x60u, 
2557                         0x01u, 0x00u, 0x00u, 0xFFu, 0x00u, 0x00u, 0x7Eu, 0x00u, 0x82u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x40u, 0x04u, 
2558                         0x64u, 0x03u, 0x50u, 0x00u, 0x02u, 0xCBu, 0xF0u, 0xEDu, 0x3Bu, 0xFFu, 0xFFu, 0xFFu, 0x22u, 0x00u, 0xF0u, 0x08u, 
2559                         0x04u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x02u, 0x24u, 0x04u, 0x04u, 0x04u, 0x04u, 0x01u, 0x01u, 0x00u, 0x01u, 
2560                         0x00u, 0x00u, 0xC0u, 0x00u, 0x40u, 0x01u, 0x10u, 0x11u, 0xC0u, 0x01u, 0x00u, 0x11u, 0x40u, 0x01u, 0x40u, 0x01u, 
2561                         0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u};
2562
2563                 /* UCFG_BCTL0 Address: CYREG_BCTL0_MDCLK_EN Size (bytes): 16 */
2564                 static const uint8 CYCODE BS_UCFG_BCTL0_VAL[] = {
2565                         0x07u, 0x01u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x00u, 0x07u, 0x01u, 0x07u, 0x01u, 0x04u, 0x01u, 0x04u, 0x01u};
2566
2567                 static const cfg_memcpy_t CYCODE cfg_memcpy_list [] = {
2568                         /* dest, src, size */
2569                         {(void CYFAR *)(CYREG_IDMUX_IRQ_CTL0), BS_IDMUX_IRQ_VAL, 8u},
2570                         {(void CYFAR *)(CYDEV_UCFG_B0_P2_U0_BASE), BS_UDB_1_3_0_CONFIG_VAL, 128u},
2571                         {(void CYFAR *)(CYDEV_UCFG_B1_P2_U0_BASE), BS_UDB_1_0_0_CONFIG_VAL, 128u},
2572                         {(void CYFAR *)(CYREG_BCTL0_MDCLK_EN), BS_UCFG_BCTL0_VAL, 16u},
2573                 };
2574
2575                 uint8 CYDATA i;
2576
2577                 /* Zero out critical memory blocks before beginning configuration */
2578                 for (i = 0u; i < (sizeof(cfg_memset_list)/sizeof(cfg_memset_list[0])); i++)
2579                 {
2580                         const cfg_memset_t CYCODE * CYDATA ms = &cfg_memset_list[i];
2581                         CYMEMZERO(ms->address, (size_t)(uint32)(ms->size));
2582                 }
2583
2584                 /* Copy device configuration data into registers */
2585                 for (i = 0u; i < (sizeof(cfg_memcpy_list)/sizeof(cfg_memcpy_list[0])); i++)
2586                 {
2587                         const cfg_memcpy_t CYCODE * CYDATA mc = &cfg_memcpy_list[i];
2588                         void * CYDATA destPtr = mc->dest;
2589                         const void CYCODE * CYDATA srcPtr = mc->src;
2590                         uint16 CYDATA numBytes = mc->size;
2591                         CYCONFIGCPYCODE(destPtr, srcPtr, numBytes);
2592                 }
2593
2594                 cfg_write_bytes32(cy_cfg_addr_table, cy_cfg_data_table);
2595
2596                 /* Perform normal device configuration. Order is not critical for these items. */
2597                 CYMEMZERO((void CYFAR *)(CYREG_PHUB_CFGMEM0_CFG0), 4u);
2598                 CYCONFIGCPYCODE((void CYFAR *)(CYREG_PHUB_CFGMEM1_CFG0), (const void CYCODE *)(BS_PHUB_CFGMEM1_VAL), 4u);
2599                 CYCONFIGCPYCODE((void CYFAR *)(CYREG_PHUB_CFGMEM2_CFG0), (const void CYCODE *)(BS_PHUB_CFGMEM2_VAL), 4u);
2600                 CYCONFIGCPYCODE((void CYFAR *)(CYREG_PHUB_CFGMEM3_CFG0), (const void CYCODE *)(BS_PHUB_CFGMEM3_VAL), 4u);
2601                 CYCONFIGCPYCODE((void CYFAR *)(CYREG_PHUB_CFGMEM4_CFG0), (const void CYCODE *)(BS_PHUB_CFGMEM4_VAL), 4u);
2602                 CYCONFIGCPYCODE((void CYFAR *)(CYREG_PHUB_CFGMEM5_CFG0), (const void CYCODE *)(BS_PHUB_CFGMEM5_VAL), 4u);
2603
2604                 /* Enable digital routing */
2605                 CY_SET_XTND_REG8((void CYFAR *)CYREG_BCTL0_BANK_CTL, CY_GET_XTND_REG8((void CYFAR *)CYREG_BCTL0_BANK_CTL) | 0x02u);
2606                 CY_SET_XTND_REG8((void CYFAR *)CYREG_BCTL1_BANK_CTL, CY_GET_XTND_REG8((void CYFAR *)CYREG_BCTL1_BANK_CTL) | 0x02u);
2607
2608                 /* Enable UDB array */
2609                 CY_SET_XTND_REG8((void CYFAR *)CYREG_PM_ACT_CFG0, CY_GET_XTND_REG8((void CYFAR *)CYREG_PM_ACT_CFG0) | 0x40u);
2610                 CY_SET_XTND_REG8((void CYFAR *)CYREG_PM_AVAIL_CR2, CY_GET_XTND_REG8((void CYFAR *)CYREG_PM_AVAIL_CR2) | 0x10u);
2611         }
2612
2613
2614         /* Perform second pass device configuration. These items must be configured in specific order after the regular configuration is done. */
2615         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT0_DM0), (const void CYCODE *)(BS_IOPINS0_0_VAL), 8u);
2616         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT12_DR), (const void CYCODE *)(BS_IOPINS0_7_VAL), 10u);
2617         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT12_DR + 0x0000000Bu), (const void CYCODE *)(BS_IOPINS1_7_VAL), 5u);
2618         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT15_DR), (const void CYCODE *)(BS_IOPINS0_8_VAL), 10u);
2619         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT1_DM0), (const void CYCODE *)(BS_IOPINS0_1_VAL), 8u);
2620         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT2_DM0), (const void CYCODE *)(BS_IOPINS0_2_VAL), 8u);
2621         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT3_DR), (const void CYCODE *)(BS_IOPINS0_3_VAL), 10u);
2622         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT4_DM0), (const void CYCODE *)(BS_IOPINS0_4_VAL), 8u);
2623         CYCONFIGCPYCODE((void CYFAR *)(CYREG_PRT6_DM0), (const void CYCODE *)(BS_IOPINS0_6_VAL), 8u);
2624         /* Switch Boost to the precision bandgap reference from its internal reference */
2625         CY_SET_REG8((void CYXDATA *)CYREG_BOOST_CR2, (CY_GET_REG8((void CYXDATA *)CYREG_BOOST_CR2) | 0x08u));
2626
2627         /* Perform basic analog initialization to defaults */
2628         AnalogSetDefault();
2629
2630         /* Configure alternate active mode */
2631         CYCONFIGCPY((void CYFAR *)CYDEV_PM_STBY_BASE, (const void CYFAR *)CYDEV_PM_ACT_BASE, 14u);
2632 }