├── LICENSE.md ├── README.md ├── command_gw.c ├── command_gw.h ├── gw_magic.bin ├── gw_magic_sc.bin ├── protocol_gw.c └── protocol_gw.h /LICENSE.md: -------------------------------------------------------------------------------- 1 | The GNU General Public License, Version 2, June 1991 (GPLv2) 2 | ============================================================ 3 | 4 | > Copyright (C) 1989, 1991 Free Software Foundation, Inc. 5 | > 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA 6 | 7 | Everyone is permitted to copy and distribute verbatim copies of this license 8 | document, but changing it is not allowed. 9 | 10 | 11 | Preamble 12 | -------- 13 | 14 | The licenses for most software are designed to take away your freedom to share 15 | and change it. By contrast, the GNU General Public License is intended to 16 | guarantee your freedom to share and change free software--to make sure the 17 | software is free for all its users. This General Public License applies to most 18 | of the Free Software Foundation's software and to any other program whose 19 | authors commit to using it. (Some other Free Software Foundation software is 20 | covered by the GNU Lesser General Public License instead.) You can apply it to 21 | your programs, too. 22 | 23 | When we speak of free software, we are referring to freedom, not price. Our 24 | General Public Licenses are designed to make sure that you have the freedom to 25 | distribute copies of free software (and charge for this service if you wish), 26 | that you receive source code or can get it if you want it, that you can change 27 | the software or use pieces of it in new free programs; and that you know you can 28 | do these things. 29 | 30 | To protect your rights, we need to make restrictions that forbid anyone to deny 31 | you these rights or to ask you to surrender the rights. These restrictions 32 | translate to certain responsibilities for you if you distribute copies of the 33 | software, or if you modify it. 34 | 35 | For example, if you distribute copies of such a program, whether gratis or for a 36 | fee, you must give the recipients all the rights that you have. You must make 37 | sure that they, too, receive or can get the source code. And you must show them 38 | these terms so they know their rights. 39 | 40 | We protect your rights with two steps: (1) copyright the software, and (2) offer 41 | you this license which gives you legal permission to copy, distribute and/or 42 | modify the software. 43 | 44 | Also, for each author's protection and ours, we want to make certain that 45 | everyone understands that there is no warranty for this free software. If the 46 | software is modified by someone else and passed on, we want its recipients to 47 | know that what they have is not the original, so that any problems introduced by 48 | others will not reflect on the original authors' reputations. 49 | 50 | Finally, any free program is threatened constantly by software patents. We wish 51 | to avoid the danger that redistributors of a free program will individually 52 | obtain patent licenses, in effect making the program proprietary. To prevent 53 | this, we have made it clear that any patent must be licensed for everyone's free 54 | use or not licensed at all. 55 | 56 | The precise terms and conditions for copying, distribution and modification 57 | follow. 58 | 59 | 60 | Terms And Conditions For Copying, Distribution And Modification 61 | --------------------------------------------------------------- 62 | 63 | **0.** This License applies to any program or other work which contains a notice 64 | placed by the copyright holder saying it may be distributed under the terms of 65 | this General Public License. The "Program", below, refers to any such program or 66 | work, and a "work based on the Program" means either the Program or any 67 | derivative work under copyright law: that is to say, a work containing the 68 | Program or a portion of it, either verbatim or with modifications and/or 69 | translated into another language. (Hereinafter, translation is included without 70 | limitation in the term "modification".) Each licensee is addressed as "you". 71 | 72 | Activities other than copying, distribution and modification are not covered by 73 | this License; they are outside its scope. The act of running the Program is not 74 | restricted, and the output from the Program is covered only if its contents 75 | constitute a work based on the Program (independent of having been made by 76 | running the Program). Whether that is true depends on what the Program does. 77 | 78 | **1.** You may copy and distribute verbatim copies of the Program's source code 79 | as you receive it, in any medium, provided that you conspicuously and 80 | appropriately publish on each copy an appropriate copyright notice and 81 | disclaimer of warranty; keep intact all the notices that refer to this License 82 | and to the absence of any warranty; and give any other recipients of the Program 83 | a copy of this License along with the Program. 84 | 85 | You may charge a fee for the physical act of transferring a copy, and you may at 86 | your option offer warranty protection in exchange for a fee. 87 | 88 | **2.** You may modify your copy or copies of the Program or any portion of it, 89 | thus forming a work based on the Program, and copy and distribute such 90 | modifications or work under the terms of Section 1 above, provided that you also 91 | meet all of these conditions: 92 | 93 | * **a)** You must cause the modified files to carry prominent notices stating 94 | that you changed the files and the date of any change. 95 | 96 | * **b)** You must cause any work that you distribute or publish, that in whole 97 | or in part contains or is derived from the Program or any part thereof, to 98 | be licensed as a whole at no charge to all third parties under the terms of 99 | this License. 100 | 101 | * **c)** If the modified program normally reads commands interactively when 102 | run, you must cause it, when started running for such interactive use in the 103 | most ordinary way, to print or display an announcement including an 104 | appropriate copyright notice and a notice that there is no warranty (or 105 | else, saying that you provide a warranty) and that users may redistribute 106 | the program under these conditions, and telling the user how to view a copy 107 | of this License. (Exception: if the Program itself is interactive but does 108 | not normally print such an announcement, your work based on the Program is 109 | not required to print an announcement.) 110 | 111 | These requirements apply to the modified work as a whole. If identifiable 112 | sections of that work are not derived from the Program, and can be reasonably 113 | considered independent and separate works in themselves, then this License, and 114 | its terms, do not apply to those sections when you distribute them as separate 115 | works. But when you distribute the same sections as part of a whole which is a 116 | work based on the Program, the distribution of the whole must be on the terms of 117 | this License, whose permissions for other licensees extend to the entire whole, 118 | and thus to each and every part regardless of who wrote it. 119 | 120 | Thus, it is not the intent of this section to claim rights or contest your 121 | rights to work written entirely by you; rather, the intent is to exercise the 122 | right to control the distribution of derivative or collective works based on the 123 | Program. 124 | 125 | In addition, mere aggregation of another work not based on the Program with the 126 | Program (or with a work based on the Program) on a volume of a storage or 127 | distribution medium does not bring the other work under the scope of this 128 | License. 129 | 130 | **3.** You may copy and distribute the Program (or a work based on it, under 131 | Section 2) in object code or executable form under the terms of Sections 1 and 2 132 | above provided that you also do one of the following: 133 | 134 | * **a)** Accompany it with the complete corresponding machine-readable source 135 | code, which must be distributed under the terms of Sections 1 and 2 above on 136 | a medium customarily used for software interchange; or, 137 | 138 | * **b)** Accompany it with a written offer, valid for at least three years, to 139 | give any third party, for a charge no more than your cost of physically 140 | performing source distribution, a complete machine-readable copy of the 141 | corresponding source code, to be distributed under the terms of Sections 1 142 | and 2 above on a medium customarily used for software interchange; or, 143 | 144 | * **c)** Accompany it with the information you received as to the offer to 145 | distribute corresponding source code. (This alternative is allowed only for 146 | noncommercial distribution and only if you received the program in object 147 | code or executable form with such an offer, in accord with Subsection b 148 | above.) 149 | 150 | The source code for a work means the preferred form of the work for making 151 | modifications to it. For an executable work, complete source code means all the 152 | source code for all modules it contains, plus any associated interface 153 | definition files, plus the scripts used to control compilation and installation 154 | of the executable. However, as a special exception, the source code distributed 155 | need not include anything that is normally distributed (in either source or 156 | binary form) with the major components (compiler, kernel, and so on) of the 157 | operating system on which the executable runs, unless that component itself 158 | accompanies the executable. 159 | 160 | If distribution of executable or object code is made by offering access to copy 161 | from a designated place, then offering equivalent access to copy the source code 162 | from the same place counts as distribution of the source code, even though third 163 | parties are not compelled to copy the source along with the object code. 164 | 165 | **4.** You may not copy, modify, sublicense, or distribute the Program except as 166 | expressly provided under this License. Any attempt otherwise to copy, modify, 167 | sublicense or distribute the Program is void, and will automatically terminate 168 | your rights under this License. However, parties who have received copies, or 169 | rights, from you under this License will not have their licenses terminated so 170 | long as such parties remain in full compliance. 171 | 172 | **5.** You are not required to accept this License, since you have not signed 173 | it. However, nothing else grants you permission to modify or distribute the 174 | Program or its derivative works. These actions are prohibited by law if you do 175 | not accept this License. Therefore, by modifying or distributing the Program (or 176 | any work based on the Program), you indicate your acceptance of this License to 177 | do so, and all its terms and conditions for copying, distributing or modifying 178 | the Program or works based on it. 179 | 180 | **6.** Each time you redistribute the Program (or any work based on the 181 | Program), the recipient automatically receives a license from the original 182 | licensor to copy, distribute or modify the Program subject to these terms and 183 | conditions. You may not impose any further restrictions on the recipients' 184 | exercise of the rights granted herein. You are not responsible for enforcing 185 | compliance by third parties to this License. 186 | 187 | **7.** If, as a consequence of a court judgment or allegation of patent 188 | infringement or for any other reason (not limited to patent issues), conditions 189 | are imposed on you (whether by court order, agreement or otherwise) that 190 | contradict the conditions of this License, they do not excuse you from the 191 | conditions of this License. If you cannot distribute so as to satisfy 192 | simultaneously your obligations under this License and any other pertinent 193 | obligations, then as a consequence you may not distribute the Program at all. 194 | For example, if a patent license would not permit royalty-free redistribution of 195 | the Program by all those who receive copies directly or indirectly through you, 196 | then the only way you could satisfy both it and this License would be to refrain 197 | entirely from distribution of the Program. 198 | 199 | If any portion of this section is held invalid or unenforceable under any 200 | particular circumstance, the balance of the section is intended to apply and the 201 | section as a whole is intended to apply in other circumstances. 202 | 203 | It is not the purpose of this section to induce you to infringe any patents or 204 | other property right claims or to contest validity of any such claims; this 205 | section has the sole purpose of protecting the integrity of the free software 206 | distribution system, which is implemented by public license practices. Many 207 | people have made generous contributions to the wide range of software 208 | distributed through that system in reliance on consistent application of that 209 | system; it is up to the author/donor to decide if he or she is willing to 210 | distribute software through any other system and a licensee cannot impose that 211 | choice. 212 | 213 | This section is intended to make thoroughly clear what is believed to be a 214 | consequence of the rest of this License. 215 | 216 | **8.** If the distribution and/or use of the Program is restricted in certain 217 | countries either by patents or by copyrighted interfaces, the original copyright 218 | holder who places the Program under this License may add an explicit 219 | geographical distribution limitation excluding those countries, so that 220 | distribution is permitted only in or among countries not thus excluded. In such 221 | case, this License incorporates the limitation as if written in the body of this 222 | License. 223 | 224 | **9.** The Free Software Foundation may publish revised and/or new versions of 225 | the General Public License from time to time. Such new versions will be similar 226 | in spirit to the present version, but may differ in detail to address new 227 | problems or concerns. 228 | 229 | Each version is given a distinguishing version number. If the Program specifies 230 | a version number of this License which applies to it and "any later version", 231 | you have the option of following the terms and conditions either of that version 232 | or of any later version published by the Free Software Foundation. If the 233 | Program does not specify a version number of this License, you may choose any 234 | version ever published by the Free Software Foundation. 235 | 236 | **10.** If you wish to incorporate parts of the Program into other free programs 237 | whose distribution conditions are different, write to the author to ask for 238 | permission. For software which is copyrighted by the Free Software Foundation, 239 | write to the Free Software Foundation; we sometimes make exceptions for this. 240 | Our decision will be guided by the two goals of preserving the free status of 241 | all derivatives of our free software and of promoting the sharing and reuse of 242 | software generally. 243 | 244 | 245 | No Warranty 246 | ----------- 247 | 248 | **11.** BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR 249 | THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE 250 | STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM 251 | "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, 252 | BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A 253 | PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE 254 | PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF 255 | ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 256 | 257 | **12.** IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING 258 | WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE 259 | THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY 260 | GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR 261 | INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA 262 | BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A 263 | FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER 264 | OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 265 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # gwcard 2 | 3 | This repository contains source files for initializing and utilizing protocol in Gateway 3DS cartridges, and by derivation, Supercard DSTWO+ and possibly other clones. 4 | -------------------------------------------------------------------------------- /command_gw.c: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015-2020, SALT. 3 | * This file is licensed under GPLv2 or later 4 | * See LICENSE.md for terms of use. 5 | */ 6 | 7 | #include "command_gw.h" 8 | 9 | #include "draw.h" 10 | #include "utils.h" 11 | 12 | u32 read_count = 0; 13 | 14 | void gwcard_cmd_c5() 15 | { 16 | static const u32 c5_cmd[4] = {0xC5000000, 0x00000000, 0x00000000, 0x00000000}; 17 | ctrcard_send_command(c5_cmd, 0, 1, 0x100002C, NULL); 18 | } 19 | 20 | void gwcard_cmd_led(u32 color) 21 | { 22 | const u32 led_cmd[4] = {0x72000000 | (color & 0xFFFFFF), 0x00000000, 0x00000000, 0x00000000}; 23 | ctrcard_send_command(led_cmd, 0x200, 1, 0x100822C, NULL); 24 | } 25 | 26 | void gwcard_cmd_read(u32 sector, u32 length, u32 blocks, void* buffer) 27 | { 28 | if(read_count++ > 10000) 29 | { 30 | gwcard_cmd_c5(); 31 | read_count = 0; 32 | } 33 | 34 | gwcard_cmd_led(BLACK); 35 | const u32 read_cmd[4] = { 36 | (0xBF000000 | (u32)(sector >> 23)), 37 | (u32)((sector << 9) & 0xFFFFFFFF), 38 | 0x00000000, 0x00000000 39 | }; 40 | 41 | ctrcard_send_command(read_cmd, length, blocks, 0x100822C, buffer); 42 | gwcard_cmd_led(PURPLE); 43 | } 44 | 45 | void gwcard_cmd_write(u32 sector, u32 blocks, void* buffer) 46 | { 47 | void *cur_buff = buffer; 48 | u32 cur_sector = sector; 49 | u32 cur_blocks = blocks; 50 | 51 | gwcard_cmd_led(RED); 52 | gwcard_cmd_c3(cur_sector, cur_buff); 53 | gwcard_cmd_led(PURPLE); 54 | gwcard_cmd_c7(cur_sector); 55 | 56 | 57 | while(1) 58 | { 59 | cur_sector++; 60 | cur_buff += 0x200; 61 | cur_blocks--; 62 | 63 | if(cur_blocks == 0) 64 | break; 65 | 66 | gwcard_cmd_led(RED); 67 | gwcard_cmd_c4(cur_sector, cur_buff); 68 | gwcard_cmd_led(PURPLE); 69 | gwcard_cmd_c7(cur_sector); 70 | } 71 | } 72 | 73 | u32 gwcard_cmd_c7(u32 sector) 74 | { 75 | u32 out = 0; 76 | const u32 c7_cmd[4] = { 77 | (0xC7000000 | (u32)(sector >> 23)), 78 | (u32)((sector << 9) & 0xFFFFFFFF), 79 | 0x00000000, 0x00000000 80 | }; 81 | ctrcard_send_command(c7_cmd, 4, 1, 0x100002C, &out); 82 | return out; 83 | } 84 | 85 | void gwcard_cmd_c3(u32 sector, void* buffer) 86 | { 87 | const u32 c3_cmd[4] = { 88 | (0xC3000000 | (u32)(sector >> 23)), 89 | (u32)((sector << 9) & 0xFFFFFFFF), 90 | 0x00000000, 0x00000000 91 | }; 92 | ctrcard_send_command(c3_cmd, 0x200, 0xC80001, 0x2100800C, buffer); 93 | } 94 | 95 | void gwcard_cmd_c4(u32 sector, void* buffer) 96 | { 97 | const u32 c4_cmd[4] = { 98 | (0xC4000000 | (u32)(sector >> 23)), 99 | (u32)((sector << 9) & 0xFFFFFFFF), 100 | 0x00000000, 0x00000000 101 | }; 102 | ctrcard_send_command(c4_cmd, 0x200, 0x140001, 0x2100800C, buffer); 103 | } 104 | -------------------------------------------------------------------------------- /command_gw.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015-2020, SALT. 3 | * This file is licensed under GPLv2 or later 4 | * See LICENSE.md for terms of use. 5 | */ 6 | 7 | #ifndef _COMMAND_GW_H 8 | #define _COMMAND_GW_H 9 | 10 | #include "common.h" 11 | 12 | #include "protocol.h" 13 | #include "protocol_ctr.h" 14 | 15 | void gwcard_cmd_led(u32 color); 16 | void gwcard_cmd_read(u32 sector, u32 length, u32 blocks, void* buffer); 17 | void gwcard_cmd_write(u32 sector, u32 blocks, void* buffer); 18 | u32 gwcard_cmd_c7(u32 sector); 19 | void gwcard_cmd_c3(u32 sector, void* buffer); 20 | void gwcard_cmd_c4(u32 sector, void* buffer); 21 | void gwcard_cmd_c5(); 22 | 23 | #endif 24 | -------------------------------------------------------------------------------- /gw_magic.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shinyquagsire23/gwcard/0cb09bb8d3430f94abadffa96373acda955b355b/gw_magic.bin -------------------------------------------------------------------------------- /gw_magic_sc.bin: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/shinyquagsire23/gwcard/0cb09bb8d3430f94abadffa96373acda955b355b/gw_magic_sc.bin -------------------------------------------------------------------------------- /protocol_gw.c: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015-2020, SALT. 3 | * This file is licensed under GPLv2 or later 4 | * See LICENSE.md for terms of use. 5 | */ 6 | 7 | #include "protocol_gw.h" 8 | 9 | #include "fs.h" 10 | #include "hid.h" 11 | #include "draw.h" 12 | #include "utils.h" 13 | 14 | #include "config.h" 15 | #include "command_gw.h" 16 | 17 | bool gwcard_status = false; 18 | 19 | bool gwcard_init() 20 | { 21 | if(gwcard_init_status()) 22 | return true; 23 | 24 | u8* gw_data_out = malloc(gw_magic_size); 25 | 26 | //Give the cart 8 maximum tries to respond properly. 27 | for(int tries = 0; tries < 8; tries++) 28 | { 29 | reset_card_slot(); 30 | 31 | REG_CTRCARDSECCNT &= 0xFFFFFFFB; 32 | ioDelay(0x4000); 33 | 34 | switch_to_ntrcard(); 35 | ioDelay(0x4000); 36 | 37 | REG_NTRCARDROMCNT = 0; 38 | REG_NTRCARDMCNT &= 0xFF; 39 | ioDelay(0x4000); 40 | 41 | REG_NTRCARDMCNT |= (NTRCARD_CR1_ENABLE | NTRCARD_CR1_IRQ); 42 | REG_NTRCARDROMCNT = NTRCARD_nRESET | NTRCARD_SEC_SEED; 43 | while (REG_NTRCARDROMCNT & NTRCARD_BUSY); 44 | 45 | // Reset and check card id 46 | ntrcard_cmd_reset(); 47 | if(ntrcard_cmd_get_card_id() != 0xFFFFFFFF) 48 | { 49 | free(gw_data_out); 50 | if(card_is_ctrcard()) 51 | ctrcard_init(); 52 | return false; 53 | } 54 | 55 | //Mystery SPI upload 56 | REG_NTRCARDMCNT = /*E*/0x8000 | /*SEL*/0x2000 | /*MODE*/0x40; 57 | while (REG_NTRCARDMCNT & CARD_SPI_BUSY); 58 | 59 | for(int i = 0; i < gw_magic_size; i++) 60 | { 61 | REG_NTRCARDMDATA = gw_magic[i]; 62 | while (REG_NTRCARDMCNT & CARD_SPI_BUSY); 63 | gw_data_out[i] = REG_NTRCARDMDATA; 64 | 65 | if(i == 0x4) 66 | { 67 | //It's not returning proper data, abort. 68 | if((gw_data_out[i] & 0xFC) != 0xA0) 69 | { 70 | free(gw_data_out); 71 | return false; 72 | } 73 | } 74 | } 75 | 76 | //Keep pinging the cart with A0 commands until it returns 0 77 | int a0_response = -1; 78 | int j = 0; 79 | for(j = 0; j < 0x100; j++) 80 | { 81 | u32 unknowna0_cmd[2] = {0xA0000000, 0x00000000}; 82 | ntrcard_send_command(unknowna0_cmd, 0x4, 0, &a0_response); 83 | if(!a0_response) 84 | break; 85 | } 86 | 87 | ntrcard_cmd_get_card_id(); 88 | 89 | //It either maxed out or it's not a GW cart 90 | if((j == 0x100 && tries == 7) || (j == 0 && tries == 0)) 91 | { 92 | free(gw_data_out); 93 | if(card_is_ctrcard()) 94 | ctrcard_init(); 95 | return false; 96 | } 97 | else if(j == 0x100 && tries != 7) 98 | continue; 99 | 100 | break; 101 | } 102 | free(gw_data_out); 103 | 104 | //Mystery BC command stuff 105 | REG_NTRCARDROMCNT = NTRCARD_ACTIVATE | NTRCARD_WR | NTRCARD_nRESET | NTRCARD_CLK_SLOW | NTRCARD_BLK_SIZE(1) | NTRCARD_DELAY2(0x18); 106 | ntrcard_write_command((u8*)((u32[2]){0xBC000000, 0xFFFFFFFF})); 107 | REG_NTRCARDFIFO = 0xFFFFFFFF; 108 | for(int i = 0; i < 127; i++) 109 | { 110 | while (!(REG_NTRCARDROMCNT & NTRCARD_DATA_READY)); 111 | REG_NTRCARDFIFO = 0x0; 112 | } 113 | 114 | ntrcard_cmd_enter_16byte_mode(); 115 | switch_to_ctrcard(); 116 | ioDelay(0xF000); 117 | 118 | REG_CTRCARDBLKCNT = 0; 119 | gwcard_status = true; 120 | return true; 121 | } 122 | 123 | void gwcard_deinit() 124 | { 125 | gwcard_status = false; 126 | } 127 | 128 | bool gwcard_init_status() 129 | { 130 | if(gwcard_status) 131 | gwcard_status = (REG_CFG_CARDCONF2 & 0x8) == 0x8; 132 | 133 | return gwcard_status; 134 | } 135 | 136 | //GW SPI magic data 137 | const long int gw_magic_size = 0x1001; 138 | const unsigned char gw_magic[0x1001] = { 139 | 0xAE, 0xBD, 0x3A, 0xC1, 0xAE, 0xB8, 0xA9, 0x88, 0xAE, 0xEC, 0xEF, 0xE1, 0xAE, 0x9B, 0x39, 0x5E, 140 | 0xAE, 0x75, 0x47, 0xB5, 0xAE, 0xD9, 0x29, 0x51, 0xAE, 0x0C, 0x64, 0xCC, 0xAE, 0x6C, 0xDB, 0x13, 141 | 0xAE, 0x05, 0x21, 0x9B, 0xAE, 0x3F, 0x8A, 0xC5, 0xAE, 0xB1, 0xE9, 0x74, 0xAE, 0xC8, 0x4E, 0x1F, 142 | 0xAE, 0xA1, 0x1B, 0xB1, 0xAE, 0x42, 0x98, 0x7E, 0xAE, 0x31, 0x54, 0xEF, 0xAE, 0xB8, 0x83, 0xC8, 143 | 0xAE, 0xA3, 0x01, 0x12, 0xAE, 0xC7, 0x5B, 0x05, 0xAE, 0x09, 0x56, 0xE2, 0xAE, 0x0C, 0x72, 0x04, 144 | 0xAE, 0x94, 0x52, 0x1F, 0xAE, 0xAF, 0x98, 0xF7, 0xAE, 0x63, 0x8D, 0x78, 0xAE, 0x2B, 0xF1, 0x50, 145 | 0xAE, 0x42, 0xA0, 0xE0, 0xAE, 0x0D, 0xD7, 0x26, 0xAE, 0xA5, 0x5E, 0x0B, 0xAE, 0x3A, 0xDB, 0xBE, 146 | 0xAE, 0x71, 0x20, 0x6F, 0xAE, 0x09, 0x4E, 0x81, 0xAE, 0x38, 0xE0, 0x2E, 0xAE, 0x5A, 0x50, 0x69, 147 | 0xAE, 0xD8, 0x58, 0xF5, 0xAE, 0x72, 0x4C, 0x92, 0xAE, 0xD8, 0xFC, 0x31, 0xAE, 0xDD, 0xDA, 0xF4, 148 | 0xAE, 0x23, 0x5A, 0x4D, 0xAE, 0x27, 0xC0, 0x87, 0xAE, 0xC0, 0x75, 0x26, 0xAE, 0x27, 0x3C, 0xEC, 149 | 0xAE, 0xF0, 0xBD, 0xE6, 0xAE, 0x6A, 0xA5, 0xD2, 0xAE, 0x59, 0xB0, 0xAD, 0xAE, 0x11, 0xC9, 0xB2, 150 | 0xAE, 0x13, 0xD1, 0xC7, 0xAE, 0x1B, 0xF7, 0x66, 0xAE, 0xE7, 0x51, 0x57, 0xAE, 0xCE, 0xA2, 0xB1, 151 | 0xAE, 0x09, 0x0D, 0xAE, 0xAE, 0xEC, 0x39, 0xC6, 0xAE, 0x70, 0xFB, 0x32, 0xAE, 0x00, 0xB9, 0xF3, 152 | 0xAE, 0x2D, 0x49, 0x6E, 0xAE, 0xC2, 0xD6, 0xA3, 0xAE, 0x67, 0xF4, 0x72, 0xAE, 0xB4, 0xC8, 0x9F, 153 | 0xAE, 0x5C, 0xF9, 0x4D, 0xAE, 0xCC, 0x98, 0xC7, 0xAE, 0x9C, 0xF4, 0x53, 0xAE, 0xF0, 0xAF, 0x53, 154 | 0xAE, 0xF5, 0xDC, 0x6A, 0xAE, 0x2C, 0x00, 0x50, 0xAE, 0x37, 0x0F, 0x6A, 0xAE, 0x0D, 0x9A, 0xFA, 155 | 0xAE, 0x4B, 0x7C, 0xB8, 0xAE, 0x58, 0x63, 0x44, 0xAE, 0xAE, 0x6D, 0x5F, 0xAE, 0x88, 0x68, 0x32, 156 | 0xAE, 0xEB, 0xA6, 0xB7, 0xAE, 0x0E, 0x31, 0xEE, 0xAE, 0x1B, 0x30, 0x69, 0xAE, 0xFE, 0x0D, 0xD5, 157 | 0xAE, 0x6B, 0xDC, 0x60, 0xAE, 0xC3, 0x1D, 0x1C, 0xAE, 0xB7, 0xB2, 0xBB, 0xAE, 0x6C, 0x8C, 0xDB, 158 | 0xAE, 0xB7, 0x97, 0x55, 0xAE, 0xF8, 0x1C, 0x42, 0xAE, 0xCE, 0xF2, 0xAD, 0xAE, 0x1D, 0x8F, 0x9F, 159 | 0xAE, 0x6B, 0x06, 0x4E, 0xAE, 0xC5, 0x94, 0xF9, 0xAE, 0x8F, 0x6F, 0x10, 0xAE, 0xB4, 0x4E, 0xB3, 160 | 0xAE, 0x8A, 0xA5, 0xCE, 0xAE, 0x52, 0xD8, 0x93, 0xAE, 0x73, 0x2A, 0xD7, 0xAE, 0x22, 0x8B, 0x2F, 161 | 0xAE, 0xF7, 0x96, 0x14, 0xAE, 0xCA, 0x70, 0xB7, 0xAE, 0x42, 0x75, 0x2F, 0xAE, 0x58, 0x5A, 0xB2, 162 | 0xAE, 0x53, 0xF2, 0x59, 0xAE, 0x18, 0xE1, 0x29, 0xAE, 0x58, 0x47, 0x49, 0xAE, 0x10, 0x1F, 0xEA, 163 | 0xAE, 0xD6, 0x14, 0x7B, 0xAE, 0x42, 0xEE, 0xBD, 0xAE, 0x9A, 0x1C, 0xC4, 0xAE, 0x2F, 0xA8, 0xEB, 164 | 0xAE, 0x7A, 0x8D, 0x84, 0xAE, 0x46, 0x68, 0xDA, 0xAE, 0xA4, 0x75, 0xE5, 0xAE, 0x3E, 0x5D, 0x06, 165 | 0xAE, 0xBC, 0x2F, 0xE7, 0xAE, 0x49, 0xB8, 0xF7, 0xAE, 0x47, 0xA8, 0xB6, 0xAE, 0x27, 0x5A, 0x34, 166 | 0xAE, 0xB4, 0x4A, 0x5E, 0xAE, 0xD4, 0x11, 0xE8, 0xAE, 0x60, 0x87, 0x25, 0xAE, 0xAF, 0xA6, 0x71, 167 | 0xAE, 0x64, 0xEA, 0xE0, 0xAE, 0x35, 0xC8, 0xCF, 0xAE, 0x87, 0xA1, 0xC1, 0xAE, 0x14, 0xEB, 0x35, 168 | 0xAE, 0x61, 0x02, 0xED, 0xAE, 0xB9, 0xAB, 0x62, 0xAE, 0x37, 0x00, 0xA5, 0xAE, 0x93, 0x2A, 0xFA, 169 | 0xAE, 0xDE, 0xA8, 0x2D, 0xAE, 0x30, 0xE9, 0x31, 0xAE, 0xAA, 0x20, 0xCC, 0xAE, 0x4F, 0x46, 0x44, 170 | 0xAE, 0x44, 0x31, 0xB5, 0xAE, 0x99, 0x10, 0x38, 0xAE, 0xD7, 0xCA, 0x5D, 0xAE, 0xCA, 0x1A, 0xBC, 171 | 0xAE, 0xC4, 0x9C, 0x90, 0xAE, 0x34, 0x86, 0xC4, 0xAE, 0x37, 0x58, 0x78, 0xAE, 0x5C, 0x99, 0xDE, 172 | 0xAE, 0xE1, 0x89, 0xFA, 0xAE, 0x30, 0x5A, 0x03, 0xAE, 0x02, 0xE3, 0xEC, 0xAE, 0xC5, 0x6D, 0x6A, 173 | 0xAE, 0x04, 0x6A, 0x03, 0xAE, 0x5A, 0xAA, 0xBE, 0xAE, 0x5A, 0x7F, 0xD7, 0xAE, 0xCB, 0x10, 0x25, 174 | 0xAE, 0x6F, 0x9A, 0x0C, 0xAE, 0x2D, 0xDB, 0x9D, 0xAE, 0x0C, 0x4F, 0x96, 0xAE, 0x39, 0x3F, 0xB3, 175 | 0xAE, 0xC2, 0x77, 0x2F, 0xAE, 0xE4, 0xBC, 0x19, 0xAE, 0x5F, 0x0A, 0xDA, 0xAE, 0x74, 0xFA, 0x17, 176 | 0xAE, 0xFD, 0x76, 0x86, 0xAE, 0x7F, 0x3B, 0xF7, 0xAE, 0x9C, 0x3D, 0xD7, 0xAE, 0x6C, 0xBA, 0x28, 177 | 0xAE, 0x0F, 0x4D, 0xE0, 0xAE, 0x7E, 0x3B, 0x50, 0xAE, 0x1F, 0x51, 0xC0, 0xAE, 0xC7, 0x27, 0x8B, 178 | 0xAE, 0xC1, 0x68, 0xBE, 0xAE, 0x27, 0xEB, 0x8D, 0xAE, 0x6A, 0x23, 0x8E, 0xAE, 0x5E, 0xD8, 0x52, 179 | 0xAE, 0xD4, 0x33, 0x7F, 0xAE, 0x61, 0x9E, 0x97, 0xAE, 0xC2, 0x73, 0x55, 0xAE, 0xE0, 0xBF, 0x47, 180 | 0xAE, 0xBF, 0xA5, 0x04, 0xAE, 0xDC, 0x5D, 0xAC, 0xAE, 0xC3, 0x0D, 0x23, 0xAE, 0xB3, 0xCE, 0x16, 181 | 0xAE, 0x96, 0x9F, 0x59, 0xAE, 0x3D, 0xFD, 0xC3, 0xAE, 0x77, 0x78, 0x61, 0xAE, 0x5E, 0x05, 0x04, 182 | 0xAE, 0x48, 0x76, 0xE8, 0xAE, 0x81, 0xBF, 0x69, 0xAE, 0x84, 0x2D, 0xA9, 0xAE, 0x32, 0xD3, 0x44, 183 | 0xAE, 0x99, 0x45, 0xC1, 0xAE, 0x2F, 0x3F, 0x64, 0xAE, 0xFB, 0xC7, 0x78, 0xAE, 0xEC, 0xA9, 0x10, 184 | 0xAE, 0x30, 0x9B, 0x71, 0xAE, 0xB2, 0x89, 0x64, 0xAE, 0x43, 0xB7, 0x43, 0xAE, 0xB7, 0xEA, 0x49, 185 | 0xAE, 0xBD, 0xDA, 0xDB, 0xAE, 0x69, 0xD1, 0x1E, 0xAE, 0xEF, 0x06, 0xDC, 0xAE, 0x44, 0xE7, 0x36, 186 | 0xAE, 0x99, 0x36, 0xCB, 0xAE, 0x88, 0x37, 0xEF, 0xAE, 0x1E, 0x1D, 0x9F, 0xAE, 0x2C, 0x5A, 0xB3, 187 | 0xAE, 0xF0, 0xD3, 0x91, 0xAE, 0xA7, 0xBC, 0x55, 0xAE, 0xA3, 0xF9, 0xEE, 0xAE, 0x59, 0x20, 0x65, 188 | 0xAE, 0x56, 0xB8, 0x78, 0xAE, 0xC8, 0xC0, 0x81, 0xAE, 0xF7, 0x88, 0xF9, 0xAE, 0xD3, 0xB4, 0xFD, 189 | 0xAE, 0x8A, 0x5E, 0xA2, 0xAE, 0xCC, 0x7E, 0xAE, 0xAE, 0xB4, 0x90, 0x3D, 0xAE, 0x6C, 0xDD, 0x5B, 190 | 0xAE, 0x2C, 0xC7, 0xE9, 0xAE, 0xAD, 0x81, 0xEE, 0xAE, 0xBE, 0x7B, 0x98, 0xAE, 0x8B, 0xD2, 0x1A, 191 | 0xAE, 0xAE, 0x0D, 0x7C, 0xAE, 0x0F, 0xD1, 0x2F, 0xAE, 0x18, 0xE6, 0xB3, 0xAE, 0x58, 0x17, 0x74, 192 | 0xAE, 0x79, 0x42, 0xA8, 0xAE, 0xC4, 0x6F, 0xEF, 0xAE, 0x8C, 0x88, 0x67, 0xAE, 0x0A, 0x7D, 0x01, 193 | 0xAE, 0xF0, 0x0A, 0x01, 0xAE, 0xA4, 0x7F, 0x8D, 0xAE, 0x8A, 0x4A, 0x42, 0xAE, 0x08, 0x4A, 0xFB, 194 | 0xAE, 0x87, 0x49, 0xE7, 0xAE, 0x79, 0x1B, 0xF2, 0xAE, 0xA9, 0x3F, 0xAE, 0xAE, 0x1F, 0xDB, 0xB6, 195 | 0xAE, 0x0C, 0x4C, 0x0E, 0xAE, 0x91, 0x77, 0x83, 0xAE, 0xF6, 0xB8, 0x2A, 0xAE, 0x4A, 0xF6, 0x9B, 196 | 0xAE, 0x03, 0xEE, 0x15, 0xAE, 0x8D, 0x3F, 0x88, 0xAE, 0xBC, 0x04, 0x48, 0xAE, 0x58, 0x7C, 0xFD, 197 | 0xAE, 0x6D, 0x40, 0x29, 0xAE, 0xDB, 0x8A, 0x8E, 0xAE, 0xFA, 0xE5, 0x7F, 0xAE, 0x8B, 0xB0, 0x68, 198 | 0xAE, 0xD9, 0x00, 0xFD, 0xAE, 0xFE, 0x49, 0x7B, 0xAE, 0xF6, 0xB6, 0x5F, 0xAE, 0xC7, 0xE4, 0xBC, 199 | 0xAE, 0x19, 0x3F, 0xE9, 0xAE, 0xC9, 0xF5, 0x17, 0xAE, 0xBD, 0x80, 0xD8, 0xAE, 0x53, 0x92, 0x7A, 200 | 0xAE, 0x5A, 0x65, 0x4F, 0xAE, 0x30, 0xCD, 0xFC, 0xAE, 0xCD, 0x4C, 0xE4, 0xAE, 0x0F, 0xFA, 0x0D, 201 | 0xAE, 0xAF, 0x17, 0x99, 0xAE, 0xF6, 0x60, 0x9F, 0xAE, 0x1C, 0x29, 0x08, 0xAE, 0xDD, 0xE0, 0xF8, 202 | 0xAE, 0x7C, 0x36, 0x05, 0xAE, 0xAA, 0x94, 0x94, 0xAE, 0x67, 0xE9, 0xB3, 0xAE, 0xCD, 0x6A, 0xD1, 203 | 0xAE, 0xEE, 0xC5, 0x14, 0xAE, 0xCC, 0x9A, 0xBD, 0xAE, 0x19, 0xB4, 0x15, 0xAE, 0xDE, 0xC5, 0xCC, 204 | 0xAE, 0x1C, 0xF5, 0xFE, 0xAE, 0x55, 0x04, 0x4F, 0xAE, 0xC7, 0x37, 0x15, 0xAE, 0x38, 0xF5, 0xF8, 205 | 0xAE, 0xA3, 0x6B, 0xC2, 0xAE, 0xC0, 0x8F, 0xA9, 0xAE, 0x4D, 0x47, 0xD0, 0xAE, 0xED, 0x6C, 0x74, 206 | 0xAE, 0x77, 0xC6, 0x2D, 0xAE, 0xF8, 0x14, 0x22, 0xAE, 0x2F, 0xF0, 0xF0, 0xAE, 0x1D, 0xF6, 0x41, 207 | 0xAE, 0xF4, 0xE8, 0x47, 0xAE, 0x95, 0x80, 0x09, 0xAE, 0xF4, 0x79, 0x31, 0xAE, 0xE2, 0x72, 0x07, 208 | 0xAE, 0xBC, 0xAC, 0x9D, 0xAE, 0xBA, 0x5B, 0x72, 0xAE, 0x89, 0x2F, 0x37, 0xAE, 0xF7, 0x9C, 0xE1, 209 | 0xAE, 0x7F, 0x19, 0x84, 0xAE, 0xA4, 0x9C, 0xAD, 0xAE, 0xD6, 0x4F, 0xF3, 0xAE, 0x98, 0x00, 0xFC, 210 | 0xAE, 0xFA, 0x09, 0x91, 0xAE, 0xC5, 0x7D, 0x39, 0xAE, 0xBE, 0xBD, 0xCA, 0xAE, 0x69, 0x88, 0x38, 211 | 0xAE, 0x93, 0xF4, 0x3E, 0xAE, 0xDB, 0xF9, 0xD4, 0xAE, 0x5B, 0x41, 0x5D, 0xAE, 0x39, 0xBE, 0xED, 212 | 0xAE, 0x93, 0x19, 0x41, 0xAE, 0x44, 0xC6, 0xB7, 0xAE, 0x35, 0x56, 0xC9, 0xAE, 0x10, 0x29, 0x85, 213 | 0xAE, 0xAE, 0xD1, 0xAC, 0xAE, 0xD0, 0x6A, 0x14, 0xAE, 0xDC, 0xB4, 0x68, 0xAE, 0x66, 0x08, 0xA7, 214 | 0xAE, 0xE1, 0xC0, 0x7F, 0xAE, 0xB3, 0x27, 0x71, 0xAE, 0x55, 0xF5, 0x18, 0xAE, 0xE0, 0x8B, 0x94, 215 | 0xAE, 0x7C, 0xE9, 0x7F, 0xAE, 0xEC, 0x48, 0x7A, 0xAE, 0x5D, 0xD3, 0xF5, 0xAE, 0xDA, 0x17, 0x42, 216 | 0xAE, 0x86, 0x18, 0x87, 0xAE, 0x7A, 0x3A, 0x59, 0xAE, 0x21, 0x2A, 0x85, 0xAE, 0xE9, 0x0A, 0xF3, 217 | 0xAE, 0xA5, 0xFF, 0xC7, 0xAE, 0x80, 0x80, 0xB8, 0xAE, 0x08, 0x3C, 0x21, 0xAE, 0xAF, 0x64, 0x42, 218 | 0xAE, 0x37, 0xF8, 0x44, 0xAE, 0xAC, 0x89, 0xB1, 0xAE, 0x3F, 0xCE, 0xBE, 0xAE, 0x80, 0xD1, 0x61, 219 | 0xAE, 0xF4, 0x91, 0x51, 0xAE, 0xB7, 0x9E, 0xC6, 0xAE, 0x4F, 0x75, 0xB0, 0xAE, 0x84, 0x10, 0xD8, 220 | 0xAE, 0x73, 0x86, 0x50, 0xAE, 0xF8, 0x3B, 0x75, 0xAE, 0x0F, 0xBC, 0xFA, 0xAE, 0x1D, 0x2F, 0x53, 221 | 0xAE, 0x6A, 0xEA, 0x91, 0xAE, 0xB8, 0xEE, 0xB9, 0xAE, 0x42, 0x67, 0x6D, 0xAE, 0x74, 0x11, 0xBA, 222 | 0xAE, 0x3B, 0xB4, 0x59, 0xAE, 0x68, 0xE9, 0xE7, 0xAE, 0x61, 0xD9, 0xB3, 0xAE, 0x8E, 0x47, 0x36, 223 | 0xAE, 0x9F, 0x35, 0x3F, 0xAE, 0x8E, 0xBF, 0xFC, 0xAE, 0xD5, 0x5E, 0xAC, 0xAE, 0x46, 0xD9, 0xB1, 224 | 0xAE, 0x01, 0x2F, 0x11, 0xAE, 0x7F, 0xD9, 0x6B, 0xAE, 0xB6, 0x8A, 0xB2, 0xAE, 0xB8, 0xF8, 0x78, 225 | 0xAE, 0xB4, 0xCD, 0xCC, 0xAE, 0xC0, 0xD3, 0x3C, 0xAE, 0xE5, 0x80, 0xD4, 0xAE, 0x06, 0x72, 0x11, 226 | 0xAE, 0xD2, 0x70, 0xDD, 0xAE, 0x52, 0x9A, 0xB4, 0xAE, 0x83, 0x97, 0x6B, 0xAE, 0xD0, 0xA9, 0x50, 227 | 0xAE, 0x52, 0x92, 0x6A, 0xAE, 0xE8, 0x15, 0x67, 0xAE, 0xE0, 0xAE, 0xB4, 0xAE, 0xE8, 0xB1, 0x5E, 228 | 0xAE, 0xF8, 0xCA, 0xBE, 0xAE, 0xCA, 0xD7, 0xDE, 0xAE, 0x00, 0x32, 0x2F, 0xAE, 0xF7, 0x6A, 0xCB, 229 | 0xAE, 0x3A, 0x3A, 0x6E, 0xAE, 0x8C, 0x80, 0xE8, 0xAE, 0xFF, 0x91, 0x53, 0xAE, 0xB0, 0x92, 0x37, 230 | 0xAE, 0x46, 0x49, 0x63, 0xAE, 0xD8, 0x06, 0x00, 0xAE, 0xC8, 0x93, 0x99, 0xAE, 0x76, 0x5B, 0xDC, 231 | 0xAE, 0xEB, 0x70, 0x00, 0xAE, 0x78, 0xCB, 0x8C, 0xAE, 0x48, 0xE6, 0x4A, 0xAE, 0x71, 0xA6, 0x8E, 232 | 0xAE, 0xB2, 0x82, 0x65, 0xAE, 0x87, 0xE6, 0x9B, 0xAE, 0x99, 0xC9, 0xCB, 0xAE, 0xF6, 0x90, 0x87, 233 | 0xAE, 0xB1, 0xAC, 0x74, 0xAE, 0xF1, 0xDB, 0xF2, 0xAE, 0x84, 0x88, 0x0A, 0xAE, 0x62, 0x0D, 0xE4, 234 | 0xAE, 0x62, 0x2E, 0xF5, 0xAE, 0xCA, 0x98, 0xBF, 0xAE, 0x34, 0xED, 0xA4, 0xAE, 0x51, 0x81, 0x89, 235 | 0xAE, 0x72, 0x83, 0xEC, 0xAE, 0x83, 0x92, 0x5B, 0xAE, 0xF0, 0x51, 0x91, 0xAE, 0xEB, 0x24, 0x64, 236 | 0xAE, 0xDE, 0x6C, 0x00, 0xAE, 0x76, 0x44, 0x0B, 0xAE, 0x10, 0x07, 0x69, 0xAE, 0x34, 0x62, 0xDB, 237 | 0xAE, 0xFC, 0x4E, 0x43, 0xAE, 0x77, 0x6F, 0x40, 0xAE, 0x5B, 0x38, 0x71, 0xAE, 0x44, 0x91, 0xF0, 238 | 0xAE, 0xB0, 0x30, 0x86, 0xAE, 0xBE, 0x2E, 0x24, 0xAE, 0xB0, 0xEC, 0x40, 0xAE, 0x65, 0xF0, 0x53, 239 | 0xAE, 0xB5, 0xE0, 0xD3, 0xAE, 0xE0, 0xAA, 0x3A, 0xAE, 0x9A, 0x68, 0xBC, 0xAE, 0x72, 0x27, 0xE2, 240 | 0xAE, 0x9A, 0xFB, 0xDD, 0xAE, 0xC3, 0xA6, 0xD8, 0xAE, 0x42, 0x1C, 0x56, 0xAE, 0xA0, 0x19, 0xC5, 241 | 0xAE, 0x46, 0x68, 0xF6, 0xAE, 0xBF, 0x32, 0xC1, 0xAE, 0xE0, 0x63, 0xAE, 0xAE, 0xFD, 0xF0, 0xC6, 242 | 0xAE, 0x0B, 0x5C, 0x84, 0xAE, 0xDF, 0xDF, 0x3D, 0xAE, 0x11, 0x23, 0xCF, 0xAE, 0xAC, 0x91, 0x4C, 243 | 0xAE, 0xD9, 0x17, 0x80, 0xAE, 0xFB, 0x10, 0xF1, 0xAE, 0x55, 0xA3, 0x58, 0xAE, 0x2E, 0x33, 0x34, 244 | 0xAE, 0x0F, 0xA0, 0x6F, 0xAE, 0x10, 0xCB, 0x85, 0xAE, 0xCC, 0x7D, 0xE3, 0xAE, 0x4A, 0x4D, 0x8E, 245 | 0xAE, 0x6B, 0x55, 0x58, 0xAE, 0x7B, 0xE3, 0x93, 0xAE, 0x68, 0xBE, 0x52, 0xAE, 0x29, 0x17, 0x1F, 246 | 0xAE, 0xCE, 0xCC, 0xF6, 0xAE, 0xA9, 0x3D, 0xCC, 0xAE, 0xD9, 0xB0, 0xE6, 0xAE, 0x6A, 0x39, 0x40, 247 | 0xAE, 0x3E, 0xB6, 0xFF, 0xAE, 0x1C, 0x2A, 0x43, 0xAE, 0xAA, 0x19, 0xA7, 0xAE, 0xDF, 0x21, 0x2A, 248 | 0xAE, 0x0C, 0x7B, 0xDE, 0xAE, 0x35, 0x68, 0xAF, 0xAE, 0x1C, 0x13, 0x25, 0xAE, 0x9F, 0xD7, 0x74, 249 | 0xAE, 0xB1, 0x5E, 0x30, 0xAE, 0x76, 0xDD, 0x69, 0xAE, 0x99, 0xA4, 0x17, 0xAE, 0xC1, 0xA1, 0x91, 250 | 0xAE, 0xBA, 0xA5, 0xC9, 0xAE, 0xF7, 0xDE, 0xAD, 0xAE, 0x21, 0xD1, 0xDB, 0xAE, 0x67, 0xAF, 0xFF, 251 | 0xAE, 0xAC, 0xF4, 0x71, 0xAE, 0x97, 0xB2, 0x6B, 0xAE, 0x89, 0x7B, 0x86, 0xAE, 0x96, 0x9C, 0x37, 252 | 0xAE, 0x03, 0xFB, 0x8C, 0xAE, 0x7B, 0xB0, 0x4B, 0xAE, 0xF2, 0x31, 0xD7, 0xAE, 0x4D, 0x6F, 0xF0, 253 | 0xAE, 0x80, 0x70, 0xB5, 0xAE, 0x2A, 0xEE, 0x5D, 0xAE, 0xD3, 0x57, 0xB5, 0xAE, 0x33, 0x9C, 0xD1, 254 | 0xAE, 0xF0, 0xAD, 0x83, 0xAE, 0x65, 0x9E, 0x74, 0xAE, 0x43, 0xF2, 0x89, 0xAE, 0x89, 0xF2, 0x95, 255 | 0xAE, 0xCA, 0xD0, 0x7E, 0xAE, 0xE8, 0x9D, 0x74, 0xAE, 0x7B, 0xB9, 0x74, 0xAE, 0xEF, 0x10, 0x45, 256 | 0xAE, 0x0F, 0xB7, 0x4E, 0xAE, 0x5D, 0xEA, 0x73, 0xAE, 0xDD, 0x46, 0x4D, 0xAE, 0xC1, 0xA5, 0x13, 257 | 0xAE, 0xBB, 0x3A, 0xDD, 0xAE, 0x93, 0xD3, 0x87, 0xAE, 0xB1, 0xF7, 0x01, 0xAE, 0xA4, 0x2C, 0x8D, 258 | 0xAE, 0x58, 0x83, 0x6C, 0xAE, 0x7F, 0x5E, 0xB8, 0xAE, 0x4A, 0xAB, 0x1A, 0xAE, 0xBC, 0x75, 0x40, 259 | 0xAE, 0xDD, 0x25, 0x83, 0xAE, 0x46, 0x4E, 0x81, 0xAE, 0xB2, 0x27, 0xCF, 0xAE, 0xA1, 0xFB, 0x68, 260 | 0xAE, 0xF0, 0xCB, 0x39, 0xAE, 0x70, 0xB6, 0x40, 0xAE, 0x3D, 0xB9, 0x04, 0xAE, 0x7A, 0x61, 0x7E, 261 | 0xAE, 0xC4, 0xDF, 0x32, 0xAE, 0x95, 0xF5, 0x2E, 0xAE, 0xC1, 0xA3, 0x54, 0xAE, 0x87, 0x71, 0x05, 262 | 0xAE, 0x42, 0xBE, 0xFC, 0xAE, 0x86, 0x01, 0x63, 0xAE, 0x97, 0xAD, 0xFF, 0xAE, 0xA6, 0x00, 0x3D, 263 | 0xAE, 0xFA, 0xF3, 0x4B, 0xAE, 0x0E, 0xB9, 0x0B, 0xAE, 0x91, 0xB8, 0x1C, 0xAE, 0x29, 0x57, 0x48, 264 | 0xAE, 0xCB, 0x99, 0xBB, 0xAE, 0xF3, 0x25, 0xEA, 0xAE, 0xF2, 0x02, 0x34, 0xAE, 0xA4, 0xB8, 0x11, 265 | 0xAE, 0x5D, 0x49, 0xB6, 0xAE, 0x4B, 0x87, 0x9D, 0xAE, 0xAE, 0xEB, 0xBF, 0xAE, 0x07, 0xCD, 0x49, 266 | 0xAE, 0x94, 0x54, 0x9E, 0xAE, 0xB8, 0x9E, 0xC5, 0xAE, 0x71, 0x12, 0x6E, 0xAE, 0x89, 0xE3, 0x76, 267 | 0xAE, 0x88, 0x14, 0x35, 0xAE, 0x30, 0x0F, 0x09, 0xAE, 0x50, 0x31, 0x3C, 0xAE, 0x39, 0xAE, 0x3E, 268 | 0xAE, 0x75, 0x4D, 0xDD, 0xAE, 0xF2, 0x2F, 0xE3, 0xAE, 0xC6, 0x4C, 0x9F, 0xAE, 0x09, 0xB7, 0x55, 269 | 0xAE, 0x7D, 0x52, 0xE9, 0xAE, 0x78, 0x82, 0x24, 0xAE, 0x99, 0x68, 0x96, 0xAE, 0x3A, 0x39, 0x1E, 270 | 0xAE, 0x53, 0xB2, 0xCD, 0xAE, 0x46, 0xB0, 0x13, 0xAE, 0xF3, 0x10, 0x7B, 0xAE, 0x78, 0xCB, 0x07, 271 | 0xAE, 0x04, 0x09, 0xC8, 0xAE, 0xB3, 0x5A, 0x0F, 0xAE, 0x01, 0x55, 0x7C, 0xAE, 0x43, 0x9C, 0xB5, 272 | 0xAE, 0x6F, 0x99, 0x8C, 0xAE, 0x2B, 0x9B, 0xA9, 0xAE, 0xD1, 0x37, 0x3A, 0xAE, 0xCF, 0x7E, 0x64, 273 | 0xAE, 0x2D, 0x09, 0x24, 0xAE, 0x8E, 0x27, 0x3E, 0xAE, 0x7A, 0x4F, 0xBE, 0xAE, 0xF4, 0xB5, 0x5A, 274 | 0xAE, 0xB6, 0x55, 0x80, 0xAE, 0x55, 0xCB, 0x73, 0xAE, 0x74, 0x59, 0xDF, 0xAE, 0x64, 0xB1, 0xA8, 275 | 0xAE, 0xEF, 0x10, 0xA1, 0xAE, 0x85, 0x5A, 0x05, 0xAE, 0x2C, 0x13, 0x93, 0xAE, 0x77, 0xB7, 0x51, 276 | 0xAE, 0xDB, 0x04, 0x3B, 0xAE, 0xC6, 0xED, 0xE7, 0xAE, 0xD8, 0xDA, 0xC0, 0xAE, 0x83, 0x7F, 0xAA, 277 | 0xAE, 0xD6, 0x28, 0xA4, 0xAE, 0x89, 0xC6, 0x48, 0xAE, 0x0D, 0x4A, 0x78, 0xAE, 0x3C, 0xDA, 0x0F, 278 | 0xAE, 0xCF, 0x2E, 0x56, 0xAE, 0x6C, 0xA5, 0xE9, 0xAE, 0x71, 0xA3, 0x6B, 0xAE, 0x8A, 0xC0, 0xF4, 279 | 0xAE, 0xE2, 0xF3, 0x6A, 0xAE, 0xAF, 0x63, 0x21, 0xAE, 0xF5, 0xA3, 0x5A, 0xAE, 0xA7, 0xF0, 0xE0, 280 | 0xAE, 0xEB, 0xB7, 0xEF, 0xAE, 0xB3, 0x67, 0xC2, 0xAE, 0xC3, 0x14, 0xDC, 0xAE, 0xD5, 0xB3, 0xA2, 281 | 0xAE, 0x0F, 0x15, 0x62, 0xAE, 0x00, 0xEA, 0x43, 0xAE, 0x89, 0x24, 0x94, 0xAE, 0xBA, 0x15, 0xC4, 282 | 0xAE, 0xC6, 0x19, 0x37, 0xAE, 0x65, 0xB1, 0x99, 0xAE, 0xBF, 0x93, 0x2D, 0xAE, 0xDC, 0x0A, 0x63, 283 | 0xAE, 0x9E, 0x73, 0x62, 0xAE, 0x9D, 0xE7, 0x73, 0xAE, 0xDC, 0xD6, 0x22, 0xAE, 0xF0, 0x97, 0x8E, 284 | 0xAE, 0x9D, 0x37, 0x1D, 0xAE, 0xE7, 0xCA, 0x81, 0xAE, 0xA2, 0xB8, 0x3D, 0xAE, 0x74, 0xA3, 0x72, 285 | 0xAE, 0x7A, 0xB3, 0x2E, 0xAE, 0x00, 0x5A, 0xA9, 0xAE, 0x3C, 0x16, 0xF9, 0xAE, 0xF6, 0x45, 0x12, 286 | 0xAE, 0x52, 0x81, 0x1C, 0xAE, 0xD1, 0x82, 0xEB, 0xAE, 0xB4, 0x48, 0x9F, 0xAE, 0x73, 0xA6, 0x1F, 287 | 0xAE, 0xA0, 0x71, 0x97, 0xAE, 0xE8, 0x0F, 0x37, 0xAE, 0x3A, 0x5D, 0xA4, 0xAE, 0x5D, 0x09, 0x65, 288 | 0xAE, 0xDF, 0x45, 0x9D, 0xAE, 0x61, 0x30, 0x23, 0xAE, 0x3B, 0xD2, 0xA8, 0xAE, 0x48, 0x6A, 0x84, 289 | 0xAE, 0xC6, 0xC5, 0xE6, 0xAE, 0x8E, 0xA9, 0xA5, 0xAE, 0x02, 0x5E, 0x0A, 0xAE, 0x04, 0x72, 0x87, 290 | 0xAE, 0x67, 0xF6, 0xED, 0xAE, 0x67, 0x59, 0x83, 0xAE, 0x4F, 0x5D, 0xC5, 0xAE, 0x46, 0xF1, 0x6C, 291 | 0xAE, 0x7A, 0x63, 0x35, 0xAE, 0x2A, 0x33, 0x34, 0xAE, 0x4A, 0x98, 0x03, 0xAE, 0x7E, 0x1A, 0xF3, 292 | 0xAE, 0x3F, 0x7C, 0xE1, 0xAE, 0xE2, 0xDD, 0x39, 0xAE, 0x59, 0xF0, 0x28, 0xAE, 0x62, 0x30, 0xD0, 293 | 0xAE, 0xEE, 0xD1, 0x56, 0xAE, 0x57, 0xAE, 0x6A, 0xAE, 0x4B, 0x58, 0xC5, 0xAE, 0x44, 0x2B, 0x1D, 294 | 0xAE, 0x41, 0xA4, 0x47, 0xAE, 0xE5, 0x8C, 0xBE, 0xAE, 0x8C, 0xD7, 0x0D, 0xAE, 0xCF, 0xF9, 0x00, 295 | 0xAE, 0xC0, 0x16, 0xAD, 0xAE, 0xA4, 0xCA, 0x0C, 0xAE, 0xCA, 0x31, 0xD6, 0xAE, 0x2D, 0x08, 0xB9, 296 | 0xAE, 0x8B, 0x29, 0x35, 0xAE, 0xBE, 0x63, 0x41, 0xAE, 0x34, 0x99, 0x43, 0xAE, 0x91, 0x23, 0x07, 297 | 0xAE, 0x25, 0x11, 0x77, 0xAE, 0xB1, 0x98, 0x0F, 0xAE, 0xC7, 0xDA, 0x2A, 0xAE, 0xFB, 0x62, 0x53, 298 | 0xAE, 0xD8, 0x36, 0xA5, 0xAE, 0x44, 0x73, 0xEB, 0xAE, 0x12, 0xAF, 0x4E, 0xAE, 0x42, 0xDF, 0xE3, 299 | 0xAE, 0x7D, 0x0F, 0xBC, 0xAE, 0x72, 0xF7, 0x34, 0xAE, 0x48, 0xD6, 0x2F, 0xAE, 0x33, 0x39, 0x9D, 300 | 0xAE, 0xB1, 0x3E, 0x23, 0xAE, 0xFC, 0xF0, 0x55, 0xAE, 0x52, 0x6D, 0xED, 0xAE, 0xDF, 0x72, 0xCB, 301 | 0xAE, 0x47, 0x09, 0xE7, 0xAE, 0x22, 0xED, 0x87, 0xAE, 0x2E, 0xE7, 0x85, 0xAE, 0x07, 0x6A, 0x24, 302 | 0xAE, 0xD5, 0x06, 0x6F, 0xAE, 0xBD, 0x68, 0x3C, 0xAE, 0x38, 0x1F, 0x5F, 0xAE, 0xC8, 0x4E, 0xEA, 303 | 0xAE, 0x2B, 0x0A, 0x69, 0xAE, 0x8E, 0x5C, 0x96, 0xAE, 0xEB, 0xC1, 0xAF, 0xAE, 0x97, 0x42, 0x74, 304 | 0xAE, 0xF9, 0x3C, 0x85, 0xAE, 0x9C, 0xF4, 0x64, 0xAE, 0x6A, 0xE4, 0x63, 0xAE, 0x7B, 0x1D, 0xCB, 305 | 0xAE, 0x81, 0x3F, 0x6C, 0xAE, 0x7E, 0xC0, 0x1F, 0xAE, 0x3F, 0xF0, 0x3E, 0xAE, 0xB4, 0x6F, 0x6E, 306 | 0xAE, 0x22, 0x65, 0x4E, 0xAE, 0xD9, 0xA3, 0x5F, 0xAE, 0x30, 0xAD, 0x4A, 0xAE, 0x42, 0x34, 0x43, 307 | 0xAE, 0xE4, 0x1D, 0x20, 0xAE, 0x9A, 0xAB, 0x6F, 0xAE, 0x9D, 0x08, 0x9D, 0xAE, 0x08, 0xDC, 0x44, 308 | 0xAE, 0xC1, 0x10, 0xE4, 0xAE, 0x2B, 0x50, 0xCE, 0xAE, 0x7D, 0xBA, 0x4A, 0xAE, 0xD8, 0xA3, 0x26, 309 | 0xAE, 0x9C, 0x83, 0x5A, 0xAE, 0x67, 0x1B, 0x43, 0xAE, 0x23, 0x20, 0x50, 0xAE, 0xD1, 0x26, 0x51, 310 | 0xAE, 0xEB, 0x59, 0x09, 0xAE, 0x38, 0x8E, 0xFA, 0xAE, 0xDE, 0xE9, 0x07, 0xAE, 0x42, 0x1F, 0xC7, 311 | 0xAE, 0x85, 0x57, 0xB8, 0xAE, 0x43, 0xA5, 0xD4, 0xAE, 0x53, 0x45, 0x0C, 0xAE, 0x85, 0xCA, 0x52, 312 | 0xAE, 0xD9, 0xD6, 0x5E, 0xAE, 0x70, 0x50, 0x6A, 0xAE, 0x84, 0x61, 0xB6, 0xAE, 0x49, 0xC9, 0xD1, 313 | 0xAE, 0x8F, 0x38, 0xC1, 0xAE, 0x97, 0xF9, 0xC3, 0xAE, 0xEB, 0xDB, 0x48, 0xAE, 0xD1, 0xB9, 0xEF, 314 | 0xAE, 0x2B, 0xFD, 0x67, 0xAE, 0xDB, 0xF4, 0x55, 0xAE, 0x2D, 0x7C, 0x92, 0xAE, 0x19, 0x72, 0xFE, 315 | 0xAE, 0x41, 0x6B, 0x8A, 0xAE, 0x86, 0x74, 0x6F, 0xAE, 0xD8, 0x8A, 0xC8, 0xAE, 0x55, 0xFB, 0x9B, 316 | 0xAE, 0xF9, 0xE6, 0x01, 0xAE, 0xE0, 0x6A, 0xD9, 0xAE, 0xA5, 0x99, 0x40, 0xAE, 0xA2, 0xB8, 0xE6, 317 | 0xAE, 0x4B, 0x19, 0x25, 0xAE, 0x3E, 0x99, 0x59, 0xAE, 0x78, 0x46, 0xBE, 0xAE, 0x4B, 0xD2, 0x53, 318 | 0xAE, 0xFA, 0xDF, 0xBE, 0xAE, 0xA7, 0x1C, 0xD4, 0xAE, 0x0E, 0xA0, 0x1F, 0xAE, 0xF9, 0x2B, 0x45, 319 | 0xAE, 0x3F, 0x66, 0x4D, 0xAE, 0xBB, 0xB1, 0x2A, 0xAE, 0x6E, 0xEF, 0xDA, 0xAE, 0x8A, 0x4B, 0x9D, 320 | 0xAE, 0xC8, 0x58, 0x3F, 0xAE, 0x33, 0x04, 0x68, 0xAE, 0x67, 0xE6, 0x69, 0xAE, 0x70, 0x99, 0x7B, 321 | 0xAE, 0x19, 0x58, 0x0D, 0xAE, 0xA0, 0x58, 0x5F, 0xAE, 0xF1, 0xFE, 0xAA, 0xAE, 0x96, 0xE8, 0xBD, 322 | 0xAE, 0x3D, 0x88, 0xA4, 0xAE, 0xEE, 0x21, 0xBB, 0xAE, 0x97, 0xB2, 0x79, 0xAE, 0xEB, 0xDC, 0x0A, 323 | 0xAE, 0x06, 0x93, 0x2D, 0xAE, 0x6C, 0xB0, 0xCE, 0xAE, 0x12, 0x9C, 0x78, 0xAE, 0x80, 0x0C, 0xCF, 324 | 0xAE, 0x87, 0x15, 0x5D, 0xAE, 0x43, 0x21, 0x58, 0xAE, 0xD0, 0xEA, 0xED, 0xAE, 0x36, 0x07, 0x46, 325 | 0xAE, 0x65, 0x2F, 0xDD, 0xAE, 0x88, 0x23, 0xEE, 0xAE, 0xC8, 0x5B, 0xE5, 0xAE, 0x2D, 0x40, 0x64, 326 | 0xAE, 0x90, 0xF1, 0x8E, 0xAE, 0x8F, 0xA2, 0x3C, 0xAE, 0x31, 0xC1, 0x83, 0xAE, 0xFF, 0xC0, 0x38, 327 | 0xAE, 0xA9, 0x88, 0xEC, 0xAE, 0xC4, 0x6A, 0x54, 0xAE, 0x23, 0xD6, 0x8E, 0xAE, 0xE8, 0xDA, 0x56, 328 | 0xAE, 0x50, 0xC4, 0x8F, 0xAE, 0xC8, 0x1A, 0xC3, 0xAE, 0x35, 0xA5, 0x4C, 0xAE, 0x19, 0xA6, 0x1E, 329 | 0xAE, 0x5B, 0x1F, 0x6B, 0xAE, 0xE2, 0x0E, 0x5B, 0xAE, 0x45, 0x63, 0x19, 0xAE, 0xE3, 0x94, 0x54, 330 | 0xAE, 0xA4, 0xC7, 0x65, 0xAE, 0x0B, 0xAC, 0x14, 0xAE, 0x8E, 0xE2, 0x8F, 0xAE, 0x17, 0x91, 0xA7, 331 | 0xAE, 0x95, 0xA4, 0x0B, 0xAE, 0x92, 0xB7, 0xA6, 0xAE, 0x09, 0xEE, 0xDB, 0xAE, 0x06, 0x28, 0x85, 332 | 0xAE, 0xE8, 0x03, 0x00, 0xAE, 0x92, 0xA4, 0x67, 0xAE, 0xE8, 0x76, 0xAD, 0xAE, 0x35, 0x9E, 0xB9, 333 | 0xAE, 0xEB, 0x25, 0x15, 0xAE, 0x96, 0xF5, 0x0C, 0xAE, 0xC0, 0xA1, 0x95, 0xAE, 0x1C, 0xD8, 0x14, 334 | 0xAE, 0xB0, 0xDD, 0x4F, 0xAE, 0xE9, 0xE0, 0xC6, 0xAE, 0x77, 0xF7, 0xE6, 0xAE, 0x85, 0x78, 0x93, 335 | 0xAE, 0x1A, 0x77, 0x7E, 0xAE, 0xBA, 0xC0, 0x43, 0xAE, 0x17, 0xCD, 0x6D, 0xAE, 0x5A, 0x4C, 0x6E, 336 | 0xAE, 0x3D, 0x27, 0xB3, 0xAE, 0x0E, 0x55, 0x0E, 0xAE, 0x5E, 0x51, 0x04, 0xAE, 0xF8, 0x4C, 0xAA, 337 | 0xAE, 0xED, 0xE1, 0x60, 0xAE, 0xEF, 0x3F, 0x0F, 0xAE, 0xF0, 0x52, 0x9A, 0xAE, 0x26, 0xA1, 0x2C, 338 | 0xAE, 0x4D, 0x2F, 0x07, 0xAE, 0x57, 0xA2, 0xA7, 0xAE, 0x47, 0xBB, 0x57, 0xAE, 0xA0, 0xF5, 0x7E, 339 | 0xAE, 0x57, 0x92, 0xA2, 0xAE, 0x3C, 0xDC, 0x72, 0xAE, 0x41, 0x17, 0x9D, 0xAE, 0x11, 0xD0, 0x3F, 340 | 0xAE, 0xED, 0x35, 0x93, 0xAE, 0x73, 0xEC, 0xD9, 0xAE, 0x35, 0xC5, 0xCA, 0xAE, 0xCD, 0xBF, 0x75, 341 | 0xAE, 0x6E, 0x8A, 0x23, 0xAE, 0x40, 0xE8, 0xFC, 0xAE, 0x28, 0x19, 0x64, 0xAE, 0x0E, 0x09, 0x7D, 342 | 0xAE, 0xAC, 0x61, 0x93, 0xAE, 0x6B, 0x38, 0x7B, 0xAE, 0xBC, 0xB8, 0xF7, 0xAE, 0x80, 0x79, 0x55, 343 | 0xAE, 0x96, 0x85, 0x7B, 0xAE, 0xA8, 0x27, 0x1B, 0xAE, 0x65, 0x81, 0x75, 0xAE, 0x04, 0xE8, 0x6C, 344 | 0xAE, 0x7D, 0x98, 0x34, 0xAE, 0x0E, 0xA2, 0x4A, 0xAE, 0xF5, 0x2F, 0xCE, 0xAE, 0x2B, 0x98, 0x80, 345 | 0xAE, 0xC0, 0x40, 0x62, 0xAE, 0x1F, 0x5A, 0xA6, 0xAE, 0x50, 0x4F, 0xD5, 0xAE, 0x7B, 0x16, 0xB3, 346 | 0xAE, 0x46, 0x37, 0xED, 0xAE, 0xDB, 0x5B, 0x81, 0xAE, 0x6F, 0x03, 0x86, 0xAE, 0x69, 0x20, 0xDA, 347 | 0xAE, 0xB8, 0xAF, 0x0A, 0xAE, 0x13, 0x3C, 0x38, 0xAE, 0x59, 0xD3, 0xFD, 0xAE, 0x81, 0xF6, 0x00, 348 | 0xAE, 0x7E, 0x00, 0x16, 0xAE, 0x96, 0x79, 0xC9, 0xAE, 0xD7, 0x62, 0xA4, 0xAE, 0x64, 0x15, 0x9B, 349 | 0xAE, 0x94, 0xF4, 0x8A, 0xAE, 0xB4, 0x0F, 0x5F, 0xAE, 0x70, 0x3A, 0x8E, 0xAE, 0x2B, 0xA5, 0x64, 350 | 0xAE, 0x3D, 0x50, 0x1B, 0xAE, 0xC4, 0x9C, 0xE3, 0xAE, 0x76, 0x3D, 0x4B, 0xAE, 0x38, 0xAC, 0x3B, 351 | 0xAE, 0x3E, 0x32, 0xA5, 0xAE, 0x48, 0xE6, 0xDD, 0xAE, 0xD6, 0x53, 0x05, 0xAE, 0x9B, 0xA0, 0x4E, 352 | 0xAE, 0x1D, 0xAD, 0xF1, 0xAE, 0x6A, 0xF7, 0x7B, 0xAE, 0x37, 0x54, 0xCF, 0xAE, 0x1D, 0x32, 0x3B, 353 | 0xAE, 0xDD, 0xF2, 0xD1, 0xAE, 0xFD, 0x0F, 0x00, 0xAE, 0xAD, 0x59, 0x83, 0xAE, 0x7C, 0xA1, 0x2A, 354 | 0xAE, 0xE6, 0x8C, 0xA7, 0xAE, 0xD2, 0xDD, 0x44, 0xAE, 0xB5, 0xDC, 0xBD, 0xAE, 0x82, 0xC3, 0x2A, 355 | 0xAE, 0x39, 0x41, 0x9C, 0xAE, 0xCD, 0x1A, 0xBF, 0xAE, 0x1C, 0xFC, 0x58, 0xAE, 0x0E, 0xC3, 0x8B, 356 | 0xAE, 0x48, 0xE7, 0x33, 0xAE, 0x13, 0x4F, 0x6C, 0xAE, 0x68, 0xBF, 0x8E, 0xAE, 0x83, 0x1A, 0x8B, 357 | 0xAE, 0x51, 0x51, 0x09, 0xAE, 0xF8, 0x4A, 0xC8, 0xAE, 0x04, 0xA9, 0xBD, 0xAE, 0xDB, 0xA2, 0x63, 358 | 0xAE, 0x00, 0x8A, 0x55, 0xAE, 0x02, 0xCF, 0x9C, 0xAE, 0x9F, 0xD8, 0x3F, 0xAE, 0xFA, 0x4A, 0x66, 359 | 0xAE, 0x75, 0x96, 0x9A, 0xAE, 0x37, 0x76, 0x60, 0xAE, 0xC9, 0x49, 0x68, 0xAE, 0xDD, 0x0E, 0x8A, 360 | 0xAE, 0x13, 0xEB, 0x7C, 0xAE, 0x97, 0x25, 0x15, 0xAE, 0x80, 0x2C, 0x4D, 0xAE, 0xF7, 0x79, 0xCD, 361 | 0xAE, 0x20, 0x75, 0xFF, 0xAE, 0xD6, 0x99, 0x62, 0xAE, 0x2F, 0xBD, 0x92, 0xAE, 0xD1, 0xA3, 0x09, 362 | 0xAE, 0xAA, 0x0D, 0xEA, 0xAE, 0x5B, 0xD2, 0x8C, 0xAE, 0xE7, 0x9E, 0xDE, 0xAE, 0x04, 0x1B, 0x5E, 363 | 0xAE, 0xE1, 0xE6, 0xF7, 0xAE, 0x4C, 0x7A, 0x2A, 0xAE, 0x13, 0xDB, 0x00, 0xAE, 0xEA, 0x18, 0xE1, 364 | 0xAE, 0x00, 0x6C, 0xA9, 0xAE, 0x67, 0x50, 0xAC, 0xAE, 0x4A, 0x7C, 0x3A, 0xAE, 0x93, 0x86, 0xD2, 365 | 0xAE, 0x47, 0x0B, 0x11, 0xAE, 0xC0, 0xBC, 0x6E, 0xAE, 0x1D, 0x5C, 0xD4, 0xAE, 0x4D, 0xD2, 0x06, 366 | 0xAE, 0xB7, 0xDB, 0xE0, 0xAE, 0x98, 0x00, 0x62, 0xAE, 0x0E, 0xAD, 0x68, 0xAE, 0x6A, 0x0E, 0xFA, 367 | 0xAE, 0xB4, 0x8D, 0x6E, 0xAE, 0x66, 0xCF, 0x89, 0xAE, 0xAE, 0x91, 0x60, 0xAE, 0x50, 0xFF, 0x84, 368 | 0xAE, 0xB7, 0xD8, 0x95, 0xAE, 0x71, 0x15, 0xCC, 0xAE, 0x24, 0x78, 0x38, 0xAE, 0xAC, 0x3B, 0x03, 369 | 0xAE, 0x80, 0xB8, 0x03, 0xAE, 0xF0, 0x00, 0x5A, 0xAE, 0xE4, 0x63, 0x7D, 0xAE, 0x4C, 0x93, 0xAE, 370 | 0xAE, 0xD0, 0x87, 0x57, 0xAE, 0x5D, 0x1E, 0xA2, 0xAE, 0xA8, 0xFC, 0x76, 0xAE, 0xC0, 0x75, 0x8C, 371 | 0xAE, 0xD9, 0x48, 0x56, 0xAE, 0x62, 0xA0, 0xE3, 0xAE, 0xF5, 0x90, 0x63, 0xAE, 0xB3, 0x9A, 0xA6, 372 | 0xAE, 0x63, 0x94, 0x74, 0xAE, 0x67, 0xED, 0xAA, 0xAE, 0x65, 0xDB, 0x3E, 0xAE, 0xA4, 0xB4, 0x73, 373 | 0xAE, 0x6C, 0x67, 0xC8, 0xAE, 0x14, 0xCF, 0xBB, 0xAE, 0x55, 0xC4, 0x50, 0xAE, 0xBE, 0x9B, 0x42, 374 | 0xAE, 0x3A, 0x87, 0xBB, 0xAE, 0x70, 0xF2, 0xD0, 0xAE, 0x70, 0x5F, 0x87, 0xAE, 0x55, 0x99, 0x89, 375 | 0xAE, 0xF6, 0xE9, 0xDA, 0xAE, 0x84, 0xB1, 0x92, 0xAE, 0xF5, 0x73, 0x69, 0xAE, 0x69, 0x7C, 0x50, 376 | 0xAE, 0xCD, 0xFA, 0x54, 0xAE, 0x32, 0x84, 0x3E, 0xAE, 0x4D, 0xA4, 0xB8, 0xAE, 0xFF, 0x5F, 0x8F, 377 | 0xAE, 0x0C, 0x60, 0xD2, 0xAE, 0xA7, 0x9E, 0x1A, 0xAE, 0x71, 0x69, 0xCA, 0xAE, 0x31, 0xD1, 0xC1, 378 | 0xAE, 0x84, 0x6D, 0x32, 0xAE, 0x52, 0x54, 0x1E, 0xAE, 0xC3, 0xA6, 0x46, 0xAE, 0xFD, 0x57, 0x23, 379 | 0xAE, 0x45, 0xF6, 0x77, 0xAE, 0xDF, 0xD5, 0xF5, 0xAE, 0x5C, 0x5F, 0xD7, 0xAE, 0x9F, 0xBF, 0x07, 380 | 0xAE, 0xCD, 0x66, 0x69, 0xAE, 0xDC, 0xA9, 0x2E, 0xAE, 0xBE, 0x25, 0x03, 0xAE, 0xEB, 0x52, 0x53, 381 | 0xAE, 0xA7, 0x41, 0xD1, 0xAE, 0x79, 0x76, 0x11, 0xAE, 0x2C, 0xCA, 0x2D, 0xAE, 0x07, 0xF5, 0x71, 382 | 0xAE, 0xE4, 0x3D, 0x7E, 0xAE, 0x5C, 0x41, 0x3F, 0xAE, 0x25, 0x22, 0x2F, 0xAE, 0x45, 0xFA, 0x4D, 383 | 0xAE, 0xD5, 0xC7, 0x1A, 0xAE, 0x25, 0x12, 0x24, 0xAE, 0xB6, 0xF4, 0x90, 0xAE, 0x84, 0x09, 0x78, 384 | 0xAE, 0x07, 0x65, 0x3C, 0xAE, 0xD9, 0xC0, 0x4E, 0xAE, 0x16, 0xE1, 0x57, 0xAE, 0xB9, 0x90, 0x81, 385 | 0xAE, 0x9C, 0x85, 0xF8, 0xAE, 0x20, 0x92, 0xDA, 0xAE, 0x68, 0x8A, 0x4A, 0xAE, 0x39, 0x40, 0xE6, 386 | 0xAE, 0x2D, 0xA3, 0xA6, 0xAE, 0x8C, 0xE6, 0xC3, 0xAE, 0x07, 0xC9, 0x7C, 0xAE, 0x7A, 0xBB, 0x2C, 387 | 0xAE, 0xB1, 0xDD, 0x66, 0xAE, 0xC1, 0x91, 0xE8, 0xAE, 0x03, 0x0F, 0xFC, 0xAE, 0x45, 0x4B, 0x69, 388 | 0xAE, 0x0D, 0x41, 0xE8, 0xAE, 0xA9, 0x4F, 0x5C, 0xAE, 0x4D, 0xC7, 0x36, 0xAE, 0xBD, 0xB4, 0x50, 389 | 0xAE, 0x0B, 0xC0, 0x05, 0xAE, 0xEE, 0xDB, 0x2A, 0xAE, 0xF3, 0x49, 0xBC, 0xAE, 0x88, 0x61, 0xE2, 390 | 0xAE, 0xDE, 0xF7, 0x7F, 0xAE, 0xEC, 0x1F, 0x1F, 0xAE, 0xFE, 0x06, 0xC5, 0xAE, 0x1D, 0x82, 0x24, 391 | 0xAE, 0xD2, 0x3D, 0x94, 0xAE, 0xA0, 0xD0, 0x95, 0xAE, 0x3B, 0x77, 0x28, 0xAE, 0x54, 0xE0, 0x2B, 392 | 0xAE, 0x01, 0x8B, 0x1C, 0xAE, 0xBA, 0x44, 0x8A, 0xAE, 0xAF, 0x8B, 0x80, 0xAE, 0x9E, 0x42, 0x33, 393 | 0xAE, 0xE4, 0x55, 0x6C, 0xAE, 0x88, 0x16, 0x9E, 0xAE, 0x5B, 0x02, 0xCB, 0xAE, 0x4D, 0x78, 0xD9, 394 | 0xAE, 0x2A, 0xE9, 0xCC, 0xAE, 0xE8, 0x8F, 0x04, 0xAE, 0xE8, 0x16, 0x28, 0xAE, 0xA1, 0xCD, 0x72, 395 | 0xFF 396 | }; 397 | 398 | //Supercard DSTWO+ variant 399 | const long int gw_magic_sc_size = 0x1001; 400 | const unsigned char gw_magic_sc[0x1001] = { 401 | 0xAE, 0xAD, 0x3A, 0x01, 0xAE, 0xA8, 0xA9, 0x88, 0xAE, 0xFC, 0xEF, 0xE1, 0xAE, 0x8B, 0x39, 0x5E, 402 | 0xAE, 0x65, 0x47, 0xB5, 0xAE, 0xC9, 0x29, 0x51, 0xAE, 0x1C, 0x64, 0xCC, 0xAE, 0x7C, 0xDB, 0x13, 403 | 0xAE, 0x15, 0x21, 0x9B, 0xAE, 0x2F, 0x8A, 0xC5, 0xAE, 0xA1, 0xE9, 0x74, 0xAE, 0xD8, 0x4E, 0x1F, 404 | 0xAE, 0xB1, 0x1B, 0xB1, 0xAE, 0x52, 0x98, 0x7E, 0xAE, 0x21, 0x54, 0xEF, 0xAE, 0xA8, 0x83, 0xC8, 405 | 0xAE, 0xB3, 0x01, 0x12, 0xAE, 0xD7, 0x5B, 0x05, 0xAE, 0x19, 0x56, 0xE2, 0xAE, 0x1C, 0x72, 0x04, 406 | 0xAE, 0x84, 0x52, 0x1F, 0xAE, 0xBF, 0x98, 0xF7, 0xAE, 0x73, 0x8D, 0x78, 0xAE, 0x3B, 0xF1, 0x50, 407 | 0xAE, 0x52, 0xA0, 0xE0, 0xAE, 0x1D, 0xD7, 0x26, 0xAE, 0xB5, 0x5E, 0x0B, 0xAE, 0x2A, 0xDB, 0xBE, 408 | 0xAE, 0x61, 0x20, 0x6F, 0xAE, 0x19, 0x4E, 0x81, 0xAE, 0x28, 0xE0, 0x2E, 0xAE, 0x4A, 0x50, 0x69, 409 | 0xAE, 0xC8, 0x58, 0xF5, 0xAE, 0x62, 0x4C, 0x92, 0xAE, 0xC8, 0xFC, 0x31, 0xAE, 0xCD, 0xDA, 0xF4, 410 | 0xAE, 0x33, 0x5A, 0x4D, 0xAE, 0x37, 0xC0, 0x87, 0xAE, 0xD0, 0x75, 0x26, 0xAE, 0x37, 0x3C, 0xEC, 411 | 0xAE, 0xE0, 0xBD, 0xE6, 0xAE, 0x7A, 0xA5, 0xD2, 0xAE, 0x49, 0xB0, 0xAD, 0xAE, 0x01, 0xC9, 0xB2, 412 | 0xAE, 0x03, 0xD1, 0xC7, 0xAE, 0x0B, 0xF7, 0x66, 0xAE, 0xF7, 0x51, 0x57, 0xAE, 0xDE, 0xA2, 0xB1, 413 | 0xAE, 0x19, 0x0D, 0xAE, 0xAE, 0xFC, 0x39, 0xC6, 0xAE, 0x60, 0xFB, 0x32, 0xAE, 0x10, 0xB9, 0xF3, 414 | 0xAE, 0x3D, 0x49, 0x6E, 0xAE, 0xD2, 0xD6, 0xA3, 0xAE, 0x77, 0xF4, 0x72, 0xAE, 0xA4, 0xC8, 0x9F, 415 | 0xAE, 0x4C, 0xF9, 0x4D, 0xAE, 0xDC, 0x98, 0xC7, 0xAE, 0x8C, 0xF4, 0x53, 0xAE, 0xE0, 0xAF, 0x53, 416 | 0xAE, 0xE5, 0xDC, 0x6A, 0xAE, 0x3C, 0x00, 0x50, 0xAE, 0x27, 0x0F, 0x6A, 0xAE, 0x1D, 0x9A, 0xFA, 417 | 0xAE, 0x5B, 0x7C, 0xB8, 0xAE, 0x48, 0x63, 0x44, 0xAE, 0xBE, 0x6D, 0x5F, 0xAE, 0x98, 0x68, 0x32, 418 | 0xAE, 0xFB, 0xA6, 0xB7, 0xAE, 0x1E, 0x31, 0xEE, 0xAE, 0x0B, 0x30, 0x69, 0xAE, 0xEE, 0x0D, 0xD5, 419 | 0xAE, 0x7B, 0xDC, 0x60, 0xAE, 0xD3, 0x1D, 0x1C, 0xAE, 0xA7, 0xB2, 0xBB, 0xAE, 0x7C, 0x8C, 0xDB, 420 | 0xAE, 0xA7, 0x97, 0x55, 0xAE, 0xE8, 0x1C, 0x42, 0xAE, 0xDE, 0xF2, 0xAD, 0xAE, 0x0D, 0x8F, 0x9F, 421 | 0xAE, 0x7B, 0x06, 0x4E, 0xAE, 0xD5, 0x94, 0xF9, 0xAE, 0x9F, 0x6F, 0x10, 0xAE, 0xA4, 0x4E, 0xB3, 422 | 0xAE, 0x9A, 0xA5, 0xCE, 0xAE, 0x42, 0xD8, 0x93, 0xAE, 0x63, 0x2A, 0xD7, 0xAE, 0x32, 0x8B, 0x2F, 423 | 0xAE, 0xE7, 0x96, 0x14, 0xAE, 0xDA, 0x70, 0xB7, 0xAE, 0x52, 0x75, 0x2F, 0xAE, 0x48, 0x7A, 0xB2, 424 | 0xAE, 0x43, 0xF2, 0x59, 0xAE, 0x08, 0xE1, 0x29, 0xAE, 0x48, 0x47, 0x49, 0xAE, 0x00, 0x1F, 0xEA, 425 | 0xAE, 0xC6, 0x14, 0x7B, 0xAE, 0x52, 0xEE, 0xBD, 0xAE, 0x8A, 0x1C, 0xC4, 0xAE, 0x3F, 0xA8, 0xEB, 426 | 0xAE, 0x6A, 0x8D, 0x84, 0xAE, 0x56, 0x68, 0xDA, 0xAE, 0xB4, 0x75, 0xE5, 0xAE, 0x2E, 0x5D, 0x06, 427 | 0xAE, 0xAC, 0x2F, 0xE7, 0xAE, 0x59, 0xB8, 0xF7, 0xAE, 0x57, 0xA8, 0xB6, 0xAE, 0x37, 0x5A, 0x34, 428 | 0xAE, 0xA4, 0x4A, 0x5E, 0xAE, 0xC4, 0x11, 0xE8, 0xAE, 0x70, 0x87, 0x25, 0xAE, 0xBF, 0xA6, 0x71, 429 | 0xAE, 0x74, 0xEA, 0xE0, 0xAE, 0x25, 0xC8, 0xCF, 0xAE, 0x97, 0xA1, 0xC1, 0xAE, 0x04, 0xEB, 0x35, 430 | 0xAE, 0x71, 0x02, 0xED, 0xAE, 0xA9, 0xAB, 0x62, 0xAE, 0x27, 0x00, 0xA5, 0xAE, 0x83, 0x2A, 0xFA, 431 | 0xAE, 0xCE, 0xA8, 0x2D, 0xAE, 0x20, 0xE9, 0x31, 0xAE, 0xBA, 0x20, 0xCC, 0xAE, 0x5F, 0x46, 0x44, 432 | 0xAE, 0x54, 0x31, 0xB5, 0xAE, 0x89, 0x10, 0x38, 0xAE, 0xC7, 0xCA, 0x5D, 0xAE, 0xDA, 0x1A, 0xBC, 433 | 0xAE, 0xD4, 0x9C, 0x90, 0xAE, 0x24, 0x86, 0xC4, 0xAE, 0x27, 0x58, 0x78, 0xAE, 0x4C, 0x99, 0xDE, 434 | 0xAE, 0xF1, 0x89, 0xFA, 0xAE, 0x20, 0x5A, 0x03, 0xAE, 0x12, 0xE3, 0xEC, 0xAE, 0xD5, 0x6D, 0x6A, 435 | 0xAE, 0x14, 0x6A, 0x03, 0xAE, 0x4A, 0xAA, 0xBE, 0xAE, 0x4A, 0x7F, 0xD7, 0xAE, 0xDB, 0x10, 0x25, 436 | 0xAE, 0x7F, 0x9A, 0x0C, 0xAE, 0x3D, 0xDB, 0x9D, 0xAE, 0x1C, 0x4F, 0x96, 0xAE, 0x29, 0x3F, 0xB3, 437 | 0xAE, 0xD2, 0x77, 0x2F, 0xAE, 0xF4, 0xBC, 0x19, 0xAE, 0x4F, 0x0A, 0xDA, 0xAE, 0x64, 0xFA, 0x17, 438 | 0xAE, 0xED, 0x76, 0x86, 0xAE, 0x6F, 0x3B, 0xF7, 0xAE, 0x8C, 0x3D, 0xD7, 0xAE, 0x7C, 0xBA, 0x28, 439 | 0xAE, 0x1F, 0x4D, 0xE0, 0xAE, 0x6E, 0x3B, 0x50, 0xAE, 0x0F, 0x51, 0xC0, 0xAE, 0xD7, 0x27, 0x8B, 440 | 0xAE, 0xD1, 0x68, 0xBE, 0xAE, 0x37, 0xEB, 0x8D, 0xAE, 0x7A, 0x23, 0x8E, 0xAE, 0x4E, 0xD8, 0x52, 441 | 0xAE, 0xC4, 0x33, 0x7F, 0xAE, 0x71, 0x9E, 0x97, 0xAE, 0xD2, 0x73, 0x55, 0xAE, 0xF0, 0xBF, 0x47, 442 | 0xAE, 0xAF, 0xA5, 0x04, 0xAE, 0xCC, 0x5D, 0xAC, 0xAE, 0xD3, 0x0D, 0x23, 0xAE, 0xA3, 0xCE, 0x16, 443 | 0xAE, 0x86, 0x9F, 0x59, 0xAE, 0x2D, 0xFD, 0xC3, 0xAE, 0x67, 0x78, 0x61, 0xAE, 0x4E, 0x05, 0x04, 444 | 0xAE, 0x5C, 0x7A, 0xAA, 0xAE, 0x91, 0x33, 0x49, 0xAE, 0x96, 0x7A, 0xCD, 0xAE, 0x24, 0xB0, 0xB2, 445 | 0xAE, 0x8F, 0xD1, 0xC3, 0xAE, 0x3F, 0x17, 0x64, 0xAE, 0xEC, 0x18, 0xF8, 0xAE, 0xFD, 0x56, 0x9A, 446 | 0xAE, 0x21, 0x6A, 0xF3, 0xAE, 0xA1, 0x5E, 0xE8, 0xAE, 0x57, 0xB6, 0xC9, 0xAE, 0xA1, 0xFA, 0xA9, 447 | 0xAE, 0xA9, 0x97, 0x77, 0xAE, 0x7B, 0xF8, 0x9C, 0xAE, 0xFA, 0xF9, 0x8A, 0xAE, 0x57, 0x10, 0x74, 448 | 0xAE, 0x8C, 0x82, 0x79, 0xAE, 0x9F, 0xF9, 0xD3, 0xAE, 0x0F, 0x03, 0x97, 0xAE, 0x38, 0x12, 0xB1, 449 | 0xAE, 0xE0, 0xD3, 0xA5, 0xAE, 0xB7, 0xF4, 0x57, 0xAE, 0xB7, 0xC3, 0xCE, 0xAE, 0x4D, 0x81, 0x67, 450 | 0xAE, 0x44, 0xE4, 0x02, 0xAE, 0xDE, 0xA4, 0x89, 0xAE, 0xE1, 0xEB, 0x0F, 0xAE, 0xC1, 0xCE, 0x89, 451 | 0xAE, 0x9E, 0x43, 0x2E, 0xAE, 0xDA, 0x15, 0x58, 0xAE, 0xA4, 0xDB, 0xC1, 0xAE, 0x78, 0x88, 0xC9, 452 | 0xAE, 0x3C, 0xD6, 0x61, 0xAE, 0xB9, 0x8C, 0xEA, 0xAE, 0xAC, 0x3D, 0x22, 0xAE, 0x9F, 0x08, 0xE0, 453 | 0xAE, 0xBC, 0x9A, 0x76, 0xAE, 0x18, 0xB5, 0xBD, 0xAE, 0x0A, 0xA2, 0x01, 0xAE, 0x48, 0x16, 0x8A, 454 | 0xAE, 0x6F, 0x25, 0x48, 0xAE, 0xD2, 0xFB, 0x2F, 0xAE, 0x98, 0x05, 0xA7, 0xAE, 0x1C, 0x65, 0xC9, 455 | 0xAE, 0xE4, 0xB7, 0xED, 0xAE, 0xB5, 0x90, 0x89, 0xAE, 0x9A, 0x4B, 0x46, 0xAE, 0x1A, 0x63, 0xCF, 456 | 0xAE, 0x93, 0x48, 0xEF, 0xAE, 0x6F, 0x08, 0xA6, 0xAE, 0xBF, 0x96, 0x14, 0xAE, 0x0B, 0x45, 0x4C, 457 | 0xAE, 0x1C, 0x48, 0x4A, 0xAE, 0x81, 0x3F, 0x83, 0xAE, 0xE2, 0x85, 0xEC, 0xAE, 0x59, 0x25, 0x93, 458 | 0xAE, 0x16, 0xAC, 0xE1, 0xAE, 0x9F, 0x7C, 0xCC, 0xAE, 0xAC, 0x64, 0x70, 0xAE, 0x4A, 0x4C, 0x43, 459 | 0xAE, 0x7B, 0xD8, 0x9F, 0xAE, 0xCF, 0xAE, 0x70, 0xAE, 0xEE, 0x74, 0xFB, 0xAE, 0x9D, 0xAA, 0xBC, 460 | 0xAE, 0xCA, 0x79, 0xC9, 0xAE, 0xEC, 0x41, 0x41, 0xAE, 0xE0, 0x36, 0x1B, 0xAE, 0xD5, 0x4D, 0xA6, 461 | 0xAE, 0x0D, 0x3E, 0xED, 0xAE, 0xDF, 0xED, 0xF9, 0xAE, 0xA9, 0x0D, 0x52, 0xAE, 0x41, 0x1B, 0x7C, 462 | 0xAE, 0x4C, 0x82, 0xF1, 0xAE, 0x20, 0x4B, 0xFE, 0xAE, 0xDD, 0x4C, 0xAE, 0xAE, 0x19, 0xF3, 0xBD, 463 | 0xAE, 0xBB, 0x59, 0x69, 0xAE, 0xE2, 0x58, 0x19, 0xAE, 0x08, 0xF9, 0xF2, 0xAE, 0xCD, 0xDC, 0xE8, 464 | 0xAE, 0x6C, 0x7D, 0xF9, 0xAE, 0xBE, 0xA9, 0x60, 0xAE, 0x76, 0x85, 0xBF, 0xAE, 0xDC, 0x66, 0x99, 465 | 0xAE, 0xFE, 0xC5, 0x14, 0xAE, 0xDE, 0x39, 0x81, 0xAE, 0x0D, 0xBC, 0x57, 0xAE, 0xCE, 0xD4, 0x9E, 466 | 0xAE, 0x0E, 0x36, 0xBE, 0xAE, 0x41, 0x0D, 0x8D, 0xAE, 0xD7, 0x25, 0xBB, 0xAE, 0x2A, 0x54, 0xC4, 467 | 0xAE, 0xB7, 0x6A, 0x44, 0xAE, 0xD2, 0x82, 0xE5, 0xAE, 0x5D, 0xC7, 0xD8, 0xAE, 0xFD, 0x6C, 0x30, 468 | 0xAE, 0x61, 0xCF, 0x9F, 0xAE, 0xE8, 0xB4, 0x2C, 0xAE, 0x3F, 0xF0, 0xB8, 0xAE, 0x0B, 0xFF, 0xF7, 469 | 0xAE, 0xE2, 0x67, 0xF9, 0xAE, 0x85, 0x80, 0x0D, 0xAE, 0xE6, 0x3E, 0x71, 0xAE, 0xF0, 0x35, 0xE7, 470 | 0xAE, 0xAE, 0x94, 0xB5, 0xAE, 0xAC, 0x70, 0x94, 0xAE, 0x9F, 0x3F, 0x61, 0xAE, 0xE5, 0xCE, 0xCB, 471 | 0xAE, 0x6F, 0x23, 0xF2, 0xAE, 0xB4, 0x0D, 0xB3, 0xAE, 0xC4, 0x6E, 0xAD, 0xAE, 0x8A, 0x0B, 0xB8, 472 | 0xAE, 0xEE, 0xC0, 0x55, 0xAE, 0xD3, 0x4F, 0x15, 0xAE, 0xAC, 0xF3, 0x90, 0xAE, 0x7F, 0x5C, 0x0A, 473 | 0xAE, 0x87, 0xBB, 0xF6, 0xAE, 0xCB, 0xCA, 0x5E, 0xAE, 0x4F, 0x8A, 0xD1, 0xAE, 0x2F, 0x84, 0x95, 474 | 0xAE, 0x87, 0x5E, 0xB5, 0xAE, 0x52, 0xF9, 0x3D, 0xAE, 0x21, 0x11, 0x49, 0xAE, 0x00, 0x1D, 0x0B, 475 | 0xAE, 0xBA, 0x37, 0x2C, 0xAE, 0xC6, 0x54, 0x64, 0xAE, 0xC8, 0xF3, 0x1E, 0xAE, 0x76, 0x3B, 0xCF, 476 | 0xAE, 0xF5, 0x87, 0x41, 0xAE, 0xA1, 0x53, 0x49, 0xAE, 0x47, 0xBB, 0x86, 0xAE, 0xF4, 0x99, 0x76, 477 | 0xAE, 0x6C, 0xAF, 0xC1, 0xAE, 0xFC, 0x61, 0x10, 0xAE, 0x4B, 0xBD, 0x57, 0xAE, 0xC8, 0x2C, 0x2C, 478 | 0xAE, 0x94, 0x44, 0x95, 0xAE, 0x6C, 0x09, 0x21, 0xAE, 0x33, 0x64, 0xAF, 0xAE, 0xFF, 0x33, 0xBF, 479 | 0xAE, 0xB3, 0x95, 0xA9, 0xAE, 0x92, 0xB8, 0x00, 0xAE, 0x18, 0x3D, 0xEF, 0xAE, 0xBF, 0x62, 0x88, 480 | 0xAE, 0x27, 0xF9, 0xA8, 0xAE, 0xBC, 0x8F, 0x47, 0xAE, 0x2F, 0xCF, 0x2E, 0xAE, 0x90, 0xD0, 0xB7, 481 | 0xAE, 0xE4, 0x90, 0xC5, 0xAE, 0xA7, 0x98, 0xC0, 0xAE, 0x5D, 0x37, 0x0E, 0xAE, 0x96, 0x65, 0xF8, 482 | 0xAE, 0x61, 0xC8, 0xF2, 0xAE, 0xEE, 0x27, 0x4F, 0xAE, 0x1D, 0xF9, 0x80, 0xAE, 0x0F, 0x5C, 0x2D, 483 | 0xAE, 0x78, 0xA4, 0x8B, 0xAE, 0xAA, 0x9D, 0xA5, 0xAE, 0x54, 0x11, 0x0B, 0xAE, 0x66, 0xAE, 0x98, 484 | 0xAE, 0x2D, 0x66, 0xE7, 0xAE, 0x7A, 0x9A, 0xD3, 0xAE, 0x73, 0xAD, 0x9B, 0xAE, 0x98, 0x6C, 0x5A, 485 | 0xAE, 0x8D, 0x77, 0xC7, 0xAE, 0x9C, 0xCC, 0x74, 0xAE, 0xC7, 0x10, 0xBA, 0xAE, 0x52, 0xC9, 0xDB, 486 | 0xAE, 0x10, 0x6A, 0x9B, 0xAE, 0x6D, 0xAA, 0xEB, 0xAE, 0xA4, 0xC4, 0xC2, 0xAE, 0xAE, 0xD4, 0x3C, 487 | 0xAE, 0xA6, 0x8E, 0x80, 0xAE, 0xD2, 0xA6, 0x30, 0xAE, 0xF7, 0xCF, 0xB8, 0xAE, 0x14, 0xC5, 0xE1, 488 | 0xAE, 0xC2, 0x78, 0x27, 0xAE, 0x42, 0xA8, 0x56, 0xAE, 0x97, 0xD3, 0x31, 0xAE, 0xC2, 0xDC, 0x7A, 489 | 0xAE, 0x42, 0x9F, 0x48, 0xAE, 0xFC, 0x4A, 0x91, 0xAE, 0xF0, 0xA2, 0x96, 0xAE, 0xFC, 0xDF, 0xB6, 490 | 0xAE, 0xE8, 0xC1, 0xE4, 0xAE, 0xDC, 0xB4, 0x24, 0xAE, 0x12, 0x7B, 0xB1, 0xAE, 0xE7, 0x6D, 0xA5, 491 | 0xAE, 0x2A, 0x46, 0x70, 0xAE, 0x9A, 0x2F, 0x14, 0xAE, 0xE9, 0x44, 0x91, 0xAE, 0xA0, 0x93, 0xF3, 492 | 0xAE, 0x52, 0x37, 0xB1, 0xAE, 0xCA, 0x3A, 0x10, 0xAE, 0xDA, 0xD7, 0x59, 0xAE, 0x66, 0x5C, 0x72, 493 | 0xAE, 0xFF, 0x34, 0x64, 0xAE, 0x68, 0xCB, 0x96, 0xAE, 0x59, 0xA4, 0x4A, 0xAE, 0x61, 0xA0, 0xB2, 494 | 0xAE, 0xA6, 0xC6, 0x61, 0xAE, 0x93, 0x7A, 0x7D, 0xAE, 0x8B, 0x83, 0x15, 0xAE, 0xE4, 0xD7, 0x59, 495 | 0xAE, 0xA7, 0xA7, 0x52, 0xAE, 0xE1, 0x18, 0xE0, 0xAE, 0x96, 0xCF, 0xF6, 0xAE, 0x74, 0x15, 0xCC, 496 | 0xAE, 0x74, 0x29, 0xF1, 0xAE, 0xDA, 0x98, 0xBD, 0xAE, 0x24, 0xED, 0xD8, 0xAE, 0x41, 0x99, 0x89, 497 | 0xAE, 0x61, 0x8A, 0x52, 0xAE, 0x91, 0xD1, 0xF5, 0xAE, 0xE0, 0x55, 0x31, 0xAE, 0xFF, 0x1B, 0x68, 498 | 0xAE, 0xCC, 0x21, 0x6C, 0xAE, 0x64, 0x0F, 0x9B, 0xAE, 0x04, 0x47, 0x37, 0xAE, 0x20, 0x46, 0xA5, 499 | 0xAE, 0xE8, 0x0D, 0xBB, 0xAE, 0x65, 0x2E, 0x04, 0xAE, 0x4B, 0x5C, 0x6B, 0xAE, 0x52, 0xBD, 0xE4, 500 | 0xAE, 0xA2, 0x6A, 0x54, 0xAE, 0xAC, 0x6A, 0xDE, 0xAE, 0xA4, 0xAC, 0x84, 0xAE, 0x71, 0xCF, 0x7D, 501 | 0xAE, 0xA7, 0xA9, 0x9F, 0xAE, 0xF2, 0xEF, 0x74, 0xAE, 0x8E, 0x28, 0xE4, 0xAE, 0x60, 0xA8, 0x1E, 502 | 0xAE, 0x8E, 0xB2, 0x3B, 0xAE, 0xD3, 0xAD, 0xF6, 0xAE, 0x54, 0x17, 0xA2, 0xAE, 0xB2, 0x52, 0x6D, 503 | 0xAE, 0x50, 0x40, 0xFE, 0xAE, 0xA9, 0x21, 0xE7, 0xAE, 0xF0, 0x6E, 0xC6, 0xAE, 0xED, 0xF0, 0xDC, 504 | 0xAE, 0x1F, 0x64, 0xB4, 0xAE, 0xCB, 0x56, 0xD7, 0xAE, 0x05, 0xA6, 0x97, 0xAE, 0xBD, 0xD5, 0x8C, 505 | 0xAE, 0xCD, 0x08, 0xB8, 0xAE, 0xEF, 0x01, 0x1B, 0xAE, 0x45, 0xBC, 0x52, 0xAE, 0x3D, 0x37, 0x12, 506 | 0xAE, 0x1D, 0x21, 0xD3, 0xAE, 0x04, 0xF4, 0x81, 0xAE, 0xDE, 0x73, 0x93, 0xAE, 0x5A, 0x55, 0x94, 507 | 0xAE, 0x79, 0xD4, 0x00, 0xAE, 0x6F, 0x63, 0xFF, 0xAE, 0x7E, 0xBF, 0x24, 0xAE, 0x39, 0x17, 0xCB, 508 | 0xAE, 0xD8, 0xAB, 0x0E, 0xAE, 0xBF, 0x09, 0xDC, 0xAE, 0xCB, 0x2A, 0x68, 0xAE, 0x7E, 0xBC, 0xF6, 509 | 0xAE, 0x2C, 0xF3, 0x41, 0xAE, 0x0C, 0x0A, 0x75, 0xAE, 0xB8, 0x9E, 0xEB, 0xAE, 0xCB, 0xA4, 0xB4, 510 | 0xAE, 0x1A, 0x66, 0x90, 0xAE, 0x25, 0x6F, 0xBF, 0xAE, 0x0A, 0x1D, 0x75, 0xAE, 0x89, 0xD4, 0x32, 511 | 0xAE, 0xA7, 0x56, 0x92, 0xAE, 0x60, 0xD8, 0x3D, 0xAE, 0x89, 0x84, 0x13, 0xAE, 0xD7, 0xB2, 0xF3, 512 | 0xAE, 0xAA, 0xA5, 0xA5, 0xAE, 0xE5, 0xF0, 0x79, 0xAE, 0x33, 0xD4, 0x65, 0xAE, 0x73, 0xED, 0xEF, 513 | 0xAE, 0xBE, 0x8F, 0xAD, 0xAE, 0x83, 0x92, 0x25, 0xAE, 0x99, 0x34, 0x7C, 0xAE, 0x82, 0xB7, 0xB9, 514 | 0xAE, 0x17, 0x78, 0x5C, 0xAE, 0x69, 0x21, 0x73, 0xAE, 0xE6, 0x78, 0xBF, 0xAE, 0x5B, 0x59, 0x1A, 515 | 0xAE, 0x96, 0x12, 0xD9, 0xAE, 0x3C, 0xC6, 0x4B, 0xAE, 0xC1, 0x48, 0x65, 0xAE, 0x20, 0x8E, 0x6B, 516 | 0xAE, 0xE5, 0x55, 0xBD, 0xAE, 0x72, 0x73, 0xD8, 0xAE, 0x56, 0x44, 0xB5, 0xAE, 0x9F, 0xC7, 0x2D, 517 | 0xAE, 0xDA, 0xD3, 0xB8, 0xAE, 0xF8, 0x81, 0x06, 0xAE, 0x6B, 0x39, 0x74, 0xAE, 0xFF, 0x96, 0x93, 518 | 0xAE, 0x1F, 0xFA, 0xB0, 0xAE, 0x4D, 0xCA, 0x73, 0xAE, 0xC9, 0xF4, 0x67, 0xAE, 0xD3, 0xDA, 0xBF, 519 | 0xAE, 0xAF, 0x71, 0x13, 0xAE, 0x85, 0xB0, 0x6B, 0xAE, 0xA3, 0xC7, 0x4F, 0xAE, 0xB6, 0x26, 0xA7, 520 | 0xAE, 0x48, 0xCA, 0x90, 0xAE, 0x6B, 0x7D, 0x66, 0xAE, 0x5A, 0x62, 0xE6, 0xAE, 0xA8, 0x76, 0x9C, 521 | 0xAE, 0xCF, 0xA9, 0xC1, 0xAE, 0x54, 0xC2, 0xBD, 0xAE, 0xA2, 0x23, 0x8B, 0xAE, 0xB7, 0xFB, 0x36, 522 | 0xAE, 0xE0, 0xF4, 0x29, 0xAE, 0x66, 0xBA, 0xA8, 0xAE, 0x29, 0x86, 0xBE, 0xAE, 0x68, 0xEE, 0x12, 523 | 0xAE, 0xD2, 0xDC, 0xF4, 0xAE, 0x87, 0x7D, 0x5C, 0xAE, 0xD7, 0xC0, 0xDE, 0xAE, 0x95, 0xFA, 0x9B, 524 | 0xAE, 0x54, 0x7F, 0x08, 0xAE, 0x94, 0x45, 0x1F, 0xAE, 0x85, 0x81, 0xCB, 0xAE, 0xB6, 0x48, 0x3D, 525 | 0xAE, 0xEE, 0xCC, 0xC3, 0xAE, 0x1B, 0x97, 0xA1, 0xAE, 0x87, 0xB5, 0x32, 0xAE, 0x3F, 0x5A, 0xE8, 526 | 0xAE, 0xDD, 0x94, 0x7D, 0xAE, 0xE0, 0x25, 0xF8, 0xAE, 0xE2, 0x0C, 0x3C, 0xAE, 0xB4, 0x88, 0x53, 527 | 0xAE, 0x4B, 0xF5, 0x0E, 0xAE, 0x5D, 0x95, 0x27, 0xAE, 0xBE, 0xEE, 0x8B, 0xAE, 0x11, 0xCE, 0xAD, 528 | 0xAE, 0x82, 0x57, 0xC2, 0xAE, 0xAA, 0x01, 0x95, 0xAE, 0x65, 0x10, 0xD2, 0xAE, 0x9B, 0x67, 0xCE, 529 | 0xAE, 0x9A, 0x15, 0x53, 0xAE, 0x24, 0x0E, 0xFB, 0xAE, 0x44, 0x14, 0xEE, 0xAE, 0x2F, 0x86, 0x02, 530 | 0xAE, 0x67, 0x59, 0xDB, 0xAE, 0xE0, 0x7F, 0xD3, 0xAE, 0xD2, 0x69, 0x2F, 0xAE, 0x1B, 0xA3, 0x4B, 531 | 0xAE, 0x69, 0x52, 0x53, 0xAE, 0x6E, 0xE1, 0xE4, 0xAE, 0x8B, 0x5C, 0x98, 0xAE, 0x2C, 0x3B, 0x36, 532 | 0xAE, 0x41, 0xF7, 0x43, 0xAE, 0x52, 0x9B, 0xF7, 0xAE, 0xE7, 0x59, 0x17, 0xAE, 0x6A, 0xE3, 0x35, 533 | 0xAE, 0x10, 0x09, 0xE0, 0xAE, 0xA1, 0x02, 0x17, 0xAE, 0x17, 0x2D, 0x62, 0xAE, 0x55, 0x37, 0x43, 534 | 0xAE, 0x79, 0x46, 0x12, 0xAE, 0x39, 0xE4, 0x71, 0xAE, 0xC5, 0x2B, 0x16, 0xAE, 0xDD, 0x76, 0x30, 535 | 0xAE, 0x3F, 0x5A, 0xF0, 0xAE, 0x9A, 0x15, 0x5E, 0xAE, 0x6A, 0x41, 0xBE, 0xAE, 0xE4, 0xB5, 0x5A, 536 | 0xAE, 0xA4, 0x19, 0xC0, 0xAE, 0x41, 0xD7, 0x59, 0xAE, 0x60, 0x6F, 0xDF, 0xAE, 0x72, 0x6D, 0x82, 537 | 0xAE, 0xF8, 0x54, 0xB1, 0xAE, 0x93, 0x3A, 0x2F, 0xAE, 0x3C, 0xDD, 0x97, 0xAE, 0x60, 0xCF, 0x71, 538 | 0xAE, 0xCC, 0x80, 0x11, 0xAE, 0xD0, 0x21, 0xC7, 0xAE, 0xCC, 0x86, 0xDC, 0xAE, 0x91, 0x31, 0x6A, 539 | 0xAE, 0xC2, 0x14, 0xF6, 0xAE, 0x99, 0xC9, 0xB6, 0xAE, 0x1D, 0x52, 0x2E, 0xAE, 0x2C, 0x5D, 0xF1, 540 | 0xAE, 0xDB, 0xA6, 0x6A, 0xAE, 0x7E, 0x1D, 0xA5, 0xAE, 0x65, 0x0B, 0x7B, 0xAE, 0x99, 0xC0, 0x86, 541 | 0xAE, 0xF0, 0x37, 0x3C, 0xAE, 0xBF, 0x60, 0xC9, 0xAE, 0xE3, 0xDC, 0xA4, 0xAE, 0xB1, 0x45, 0x7E, 542 | 0xAE, 0xFD, 0x3E, 0x01, 0xAE, 0xA5, 0x0B, 0xC0, 0xAE, 0xD1, 0xA1, 0x46, 0xAE, 0xC5, 0xF8, 0x5C, 543 | 0xAE, 0x1F, 0x49, 0x74, 0xAE, 0x16, 0xCE, 0x33, 0xAE, 0x9D, 0x0D, 0xEE, 0xAE, 0xA8, 0x5D, 0x12, 544 | 0xAE, 0xD0, 0x2D, 0xA9, 0xAE, 0x75, 0xB0, 0x87, 0xAE, 0xAB, 0xDC, 0xC7, 0xAE, 0xCE, 0x3A, 0x7D, 545 | 0xAE, 0x8A, 0xE2, 0x88, 0xAE, 0x89, 0xD2, 0x5D, 0xAE, 0xC8, 0x5C, 0x36, 0xAE, 0xE4, 0x02, 0xBC, 546 | 0xAE, 0x89, 0x7B, 0x0B, 0xAE, 0xF5, 0xB1, 0x0D, 0xAE, 0xB4, 0xB1, 0x51, 0xAE, 0x65, 0xEB, 0x72, 547 | 0xAE, 0x6E, 0xA3, 0x30, 0xAE, 0x10, 0x17, 0x57, 0xAE, 0x2A, 0xCA, 0xA1, 0xAE, 0xE6, 0x46, 0xEE, 548 | 0xAE, 0x46, 0x81, 0xEC, 0xAE, 0xC1, 0xCD, 0x15, 0xAE, 0xA4, 0x44, 0x8D, 0xAE, 0x63, 0x24, 0x1F, 549 | 0xAE, 0xB6, 0xAB, 0x55, 0xAE, 0xFE, 0xDD, 0x57, 0xAE, 0x2A, 0x7D, 0xAE, 0xAE, 0x4C, 0x45, 0x77, 550 | 0xAE, 0xCF, 0x51, 0x01, 0xAE, 0x71, 0x33, 0xCB, 0xAE, 0x2D, 0x36, 0xBA, 0xAE, 0x58, 0xE5, 0x78, 551 | 0xAE, 0xD0, 0x9A, 0x18, 0xAE, 0x98, 0x9B, 0xC5, 0xAE, 0x10, 0x4B, 0x58, 0xAE, 0x14, 0xFE, 0x85, 552 | 0xAE, 0x73, 0x16, 0x21, 0xAE, 0x77, 0x9A, 0x3D, 0xAE, 0x5B, 0x41, 0x67, 0xAE, 0x54, 0xD2, 0x92, 553 | 0xAE, 0x6C, 0x3F, 0xF7, 0xAE, 0x3C, 0x01, 0x54, 0xAE, 0x58, 0x8D, 0x41, 0xAE, 0x68, 0x76, 0xF1, 554 | 0xAE, 0x2D, 0xC9, 0xA3, 0xAE, 0xF2, 0x9A, 0xC3, 0xAE, 0x4D, 0xC4, 0xE8, 0xAE, 0x72, 0x35, 0x2E, 555 | 0xAE, 0xFA, 0xF9, 0x7A, 0xAE, 0x47, 0xE3, 0x90, 0xAE, 0x5B, 0x70, 0xD3, 0xAE, 0x54, 0x2B, 0x17, 556 | 0xAE, 0x51, 0x94, 0x49, 0xAE, 0xF5, 0xA9, 0x80, 0xAE, 0x9A, 0xD3, 0x19, 0xAE, 0xDD, 0xB5, 0x46, 557 | 0xAE, 0xD0, 0x1E, 0xDD, 0xAE, 0xB4, 0xC7, 0xAA, 0xAE, 0xDA, 0x34, 0xDC, 0xAE, 0x3B, 0x0C, 0xAD, 558 | 0xAE, 0x99, 0x66, 0xD7, 0xAE, 0xAE, 0x6B, 0x21, 0xAE, 0x26, 0xD4, 0xD3, 0xAE, 0x81, 0x2B, 0x77, 559 | 0xAE, 0x35, 0x1C, 0x3F, 0xAE, 0xA5, 0xB4, 0x13, 0xAE, 0xD5, 0xD9, 0xD4, 0xAE, 0xEF, 0x6E, 0x07, 560 | 0xAE, 0xCB, 0x3A, 0x67, 0xAE, 0x50, 0x5F, 0xEB, 0xAE, 0x00, 0xAE, 0xB0, 0xAE, 0x52, 0xC2, 0xE1, 561 | 0xAE, 0x6E, 0x03, 0xCC, 0xAE, 0x62, 0xFA, 0x88, 0xAE, 0x58, 0xC3, 0x3D, 0xAE, 0x23, 0x34, 0x13, 562 | 0xAE, 0xA1, 0x3B, 0x21, 0xAE, 0xEC, 0xFD, 0xE9, 0xAE, 0x42, 0x78, 0xF7, 0xAE, 0xCF, 0x7A, 0x79, 563 | 0xAE, 0x57, 0x04, 0x69, 0xAE, 0x32, 0xE0, 0xDD, 0xAE, 0x38, 0x54, 0x81, 0xAE, 0x11, 0x6B, 0x66, 564 | 0xAE, 0xC5, 0x0E, 0xD5, 0xAE, 0xA9, 0x44, 0x68, 0xAE, 0x2A, 0x1C, 0xA1, 0xAE, 0xDA, 0xC2, 0xE8, 565 | 0xAE, 0x39, 0x02, 0x69, 0xAE, 0x9A, 0x50, 0xC2, 0xAE, 0xFB, 0xC8, 0xC9, 0xAE, 0x83, 0x6E, 0x20, 566 | 0xAE, 0xEB, 0x3D, 0x7B, 0xAE, 0x8C, 0xE6, 0x08, 0xAE, 0x7A, 0xEC, 0xD1, 0xAE, 0x6B, 0x1F, 0xA7, 567 | 0xAE, 0x93, 0xB0, 0x92, 0xAE, 0x6A, 0x48, 0x0F, 0xAE, 0x2F, 0xF5, 0x00, 0xAE, 0xA0, 0x47, 0x76, 568 | 0xAE, 0x30, 0x65, 0x5E, 0xAE, 0xC9, 0xB6, 0x69, 0xAE, 0x20, 0x8D, 0x4A, 0xAE, 0x52, 0x39, 0x75, 569 | 0xAE, 0xF2, 0x15, 0x34, 0xAE, 0x8A, 0xA9, 0x03, 0xAE, 0x8D, 0x05, 0xAB, 0xAE, 0x18, 0xDE, 0x28, 570 | 0xAE, 0xD3, 0x5C, 0xEC, 0xAE, 0x39, 0x1B, 0x30, 0xAE, 0x69, 0x8E, 0x4E, 0xAE, 0xCA, 0x20, 0xD8, 571 | 0xAE, 0x88, 0xB7, 0x58, 0xAE, 0x75, 0x9F, 0x43, 0xAE, 0x37, 0xB4, 0x30, 0xAE, 0xC1, 0x13, 0x1B, 572 | 0xAE, 0xFB, 0x79, 0x09, 0xAE, 0x2B, 0x8A, 0xF2, 0xAE, 0xCC, 0x25, 0x07, 0xAE, 0x50, 0x53, 0xCF, 573 | 0xAE, 0x97, 0x1C, 0x46, 0xAE, 0x57, 0x91, 0xB4, 0xAE, 0x41, 0x44, 0xF2, 0xAE, 0x91, 0xEE, 0x52, 574 | 0xAE, 0xCB, 0x57, 0xA0, 0xAE, 0x62, 0x94, 0x6A, 0xAE, 0x90, 0xB5, 0xB0, 0xAE, 0x59, 0xFC, 0xB1, 575 | 0xAE, 0x9B, 0x14, 0x85, 0xAE, 0x85, 0xB9, 0x43, 0xAE, 0xFB, 0xEE, 0xC2, 0xAE, 0xC7, 0xB8, 0xE1, 576 | 0xAE, 0x39, 0xB2, 0x9D, 0xAE, 0xCF, 0xC4, 0x5B, 0xAE, 0x3F, 0xFD, 0x6C, 0xAE, 0x0D, 0x42, 0xEE, 577 | 0xAE, 0x53, 0xE3, 0x8A, 0xAE, 0x92, 0xE4, 0x63, 0xAE, 0xCA, 0xC2, 0xCA, 0xAE, 0x45, 0xCE, 0xE1, 578 | 0xAE, 0xEF, 0xE7, 0x0D, 0xAE, 0xF3, 0x6D, 0x21, 0xAE, 0xB5, 0xB9, 0x40, 0xAE, 0xB0, 0x74, 0xE6, 579 | 0xAE, 0x59, 0x55, 0x2D, 0xAE, 0x2C, 0xD2, 0xA7, 0xAE, 0x6C, 0x72, 0xDE, 0xAE, 0x59, 0xD3, 0xAD, 580 | 0xAE, 0xEE, 0xFB, 0xBE, 0xAE, 0xB5, 0x9D, 0x2A, 0xAE, 0x1C, 0x68, 0x1F, 0xAE, 0xED, 0xFF, 0x25, 581 | 0xAE, 0x2F, 0x53, 0xDF, 0xAE, 0xA8, 0xB5, 0x3A, 0xAE, 0x7E, 0xCF, 0xDA, 0xAE, 0x98, 0x07, 0x95, 582 | 0xAE, 0xDA, 0x94, 0x3F, 0xAE, 0x21, 0x88, 0x6A, 0xAE, 0x75, 0xAD, 0x97, 0xAE, 0x64, 0xAD, 0x1B, 583 | 0xAE, 0x0B, 0x59, 0xF3, 0xAE, 0xB2, 0x9C, 0x5F, 0xAE, 0xE5, 0x2A, 0xCA, 0xAE, 0x84, 0x64, 0xBD, 584 | 0xAE, 0x2D, 0xBD, 0x08, 0xAE, 0xFE, 0x01, 0xBB, 0xAE, 0x85, 0xFE, 0x79, 0xAE, 0xFF, 0xE8, 0x6A, 585 | 0xAE, 0x14, 0x92, 0xD3, 0xAE, 0x78, 0x94, 0xCE, 0xAE, 0x00, 0x1D, 0x86, 0xAE, 0x92, 0x04, 0xCF, 586 | 0xAE, 0x97, 0x08, 0x93, 0xAE, 0x51, 0x27, 0x58, 0xAE, 0xC0, 0xCA, 0xED, 0xAE, 0x24, 0x4C, 0xBC, 587 | 0xAE, 0x75, 0x12, 0x0B, 0xAE, 0x9A, 0x6B, 0xE6, 0xAE, 0xD8, 0x5E, 0x5B, 0xAE, 0x3D, 0x60, 0x64, 588 | 0xAE, 0x82, 0xBD, 0x8A, 0xAE, 0x9D, 0x6E, 0x3C, 0xAE, 0x23, 0x4D, 0x81, 0xAE, 0xEB, 0xF4, 0x5E, 589 | 0xAE, 0xBB, 0x89, 0x12, 0xAE, 0xD6, 0xAE, 0x54, 0xAE, 0x37, 0x02, 0xE8, 0xAE, 0xFA, 0x56, 0x56, 590 | 0xAE, 0x42, 0x8F, 0x71, 0xAE, 0xD8, 0x2F, 0x1D, 0xAE, 0x25, 0x85, 0x4C, 0xAE, 0x0B, 0xEA, 0x1E, 591 | 0xAE, 0x4F, 0x3B, 0x6B, 0xAE, 0xF0, 0x0F, 0xA7, 0xAE, 0x57, 0x25, 0x1D, 0xAE, 0xF3, 0xB4, 0x54, 592 | 0xAE, 0xB4, 0xC7, 0x65, 0xAE, 0x1B, 0xAC, 0x14, 0xAE, 0x9E, 0xE2, 0x8F, 0xAE, 0x07, 0x91, 0xA7, 593 | 0xAE, 0x85, 0xA4, 0x0B, 0xAE, 0x82, 0xB7, 0xA6, 0xAE, 0x19, 0xEE, 0xDB, 0xAE, 0x16, 0x28, 0x85, 594 | 0xAE, 0xF8, 0x03, 0x00, 0xAE, 0x82, 0xA4, 0x67, 0xAE, 0xF8, 0x76, 0xAD, 0xAE, 0x25, 0x9E, 0xB9, 595 | 0xAE, 0xFB, 0x25, 0x15, 0xAE, 0x86, 0xF5, 0x0C, 0xAE, 0xD0, 0xA1, 0x95, 0xAE, 0x0C, 0xD8, 0x14, 596 | 0xAE, 0xA0, 0xDD, 0x4F, 0xAE, 0xF9, 0xE0, 0xC6, 0xAE, 0x67, 0xF7, 0xE6, 0xAE, 0x95, 0x78, 0x93, 597 | 0xAE, 0x0A, 0x77, 0x7E, 0xAE, 0xAA, 0xC0, 0x43, 0xAE, 0x07, 0xCD, 0x6D, 0xAE, 0x4A, 0x4C, 0x6E, 598 | 0xAE, 0x2D, 0x27, 0xB3, 0xAE, 0x1E, 0x55, 0x0E, 0xAE, 0x4E, 0x51, 0x04, 0xAE, 0xE8, 0x4C, 0xAA, 599 | 0xAE, 0xFD, 0xE1, 0x60, 0xAE, 0xFF, 0x3F, 0x0F, 0xAE, 0xE0, 0x52, 0x9A, 0xAE, 0x36, 0xA1, 0x2C, 600 | 0xAE, 0x5D, 0x2F, 0x07, 0xAE, 0x47, 0xA2, 0xA7, 0xAE, 0x57, 0xBB, 0x57, 0xAE, 0xB0, 0xF5, 0x7E, 601 | 0xAE, 0x47, 0x92, 0xA2, 0xAE, 0x2C, 0xDC, 0x72, 0xAE, 0x51, 0x17, 0x9D, 0xAE, 0x01, 0xD0, 0x3F, 602 | 0xAE, 0xFD, 0x35, 0x93, 0xAE, 0x63, 0xEC, 0xD9, 0xAE, 0x25, 0xC5, 0xCA, 0xAE, 0xDD, 0xBF, 0x75, 603 | 0xAE, 0x7E, 0x8A, 0x23, 0xAE, 0x50, 0xE8, 0xFC, 0xAE, 0x38, 0x19, 0x64, 0xAE, 0x1E, 0x09, 0x7D, 604 | 0xAE, 0xBC, 0x61, 0x93, 0xAE, 0x7B, 0x38, 0x7B, 0xAE, 0xAC, 0xB8, 0xF7, 0xAE, 0x90, 0x79, 0x55, 605 | 0xAE, 0x86, 0x85, 0x7B, 0xAE, 0xB8, 0x27, 0x1B, 0xAE, 0x75, 0x81, 0x75, 0xAE, 0x14, 0xE8, 0x6C, 606 | 0xAE, 0x6D, 0x98, 0x34, 0xAE, 0x1E, 0xA2, 0x4A, 0xAE, 0xE5, 0x2F, 0xCE, 0xAE, 0x3B, 0x98, 0x80, 607 | 0xAE, 0xD0, 0x40, 0x62, 0xAE, 0x0F, 0x5A, 0xA6, 0xAE, 0x40, 0x4F, 0xD5, 0xAE, 0x6B, 0x16, 0xB3, 608 | 0xAE, 0x56, 0x37, 0xED, 0xAE, 0xCB, 0x5B, 0x81, 0xAE, 0x7F, 0x03, 0x86, 0xAE, 0x79, 0x20, 0xDA, 609 | 0xAE, 0xA8, 0xAF, 0x0A, 0xAE, 0x03, 0x3C, 0x38, 0xAE, 0x49, 0xD3, 0xFD, 0xAE, 0x91, 0xF6, 0x00, 610 | 0xAE, 0x6E, 0x00, 0x16, 0xAE, 0x86, 0x79, 0xC9, 0xAE, 0xC7, 0x62, 0xA4, 0xAE, 0x74, 0x15, 0x9B, 611 | 0xAE, 0x84, 0xF4, 0x8A, 0xAE, 0xA4, 0x0F, 0x5F, 0xAE, 0x60, 0x3A, 0x8E, 0xAE, 0x3B, 0xA5, 0x64, 612 | 0xAE, 0x2D, 0x50, 0x1B, 0xAE, 0xD4, 0x9C, 0xE3, 0xAE, 0x66, 0x3D, 0x4B, 0xAE, 0x28, 0xAC, 0x3B, 613 | 0xAE, 0x2E, 0x32, 0xA5, 0xAE, 0x58, 0xE6, 0xDD, 0xAE, 0xC6, 0x53, 0x05, 0xAE, 0x8B, 0xA0, 0x4E, 614 | 0xAE, 0x0D, 0xAD, 0xF1, 0xAE, 0x7A, 0xF7, 0x7B, 0xAE, 0x27, 0x54, 0xCF, 0xAE, 0x0D, 0x32, 0x3B, 615 | 0xAE, 0xCD, 0xF2, 0xD1, 0xAE, 0xED, 0x0F, 0x00, 0xAE, 0xBD, 0x59, 0x83, 0xAE, 0x6C, 0xA1, 0x2A, 616 | 0xAE, 0xF6, 0x8C, 0xA7, 0xAE, 0xC2, 0xDD, 0x44, 0xAE, 0xA5, 0xDC, 0xBD, 0xAE, 0x92, 0xC3, 0x2A, 617 | 0xAE, 0x29, 0x41, 0x9C, 0xAE, 0xDD, 0x1A, 0xBF, 0xAE, 0x0C, 0xFC, 0x58, 0xAE, 0x1E, 0xC3, 0x8B, 618 | 0xAE, 0x58, 0xE7, 0x33, 0xAE, 0x03, 0x4F, 0x6C, 0xAE, 0x78, 0xBF, 0x8E, 0xAE, 0x93, 0x1A, 0x8B, 619 | 0xAE, 0x41, 0x51, 0x09, 0xAE, 0xE8, 0x4A, 0xC8, 0xAE, 0x14, 0xA9, 0xBD, 0xAE, 0xCB, 0xA2, 0x63, 620 | 0xAE, 0x10, 0x8A, 0x55, 0xAE, 0x12, 0xCF, 0x9C, 0xAE, 0x8F, 0xD8, 0x3F, 0xAE, 0xEA, 0x4A, 0x66, 621 | 0xAE, 0x65, 0x96, 0x9A, 0xAE, 0x27, 0x76, 0x60, 0xAE, 0xD9, 0x49, 0x68, 0xAE, 0xCD, 0x0E, 0x8A, 622 | 0xAE, 0x03, 0xEB, 0x7C, 0xAE, 0x87, 0x25, 0x15, 0xAE, 0x90, 0x2C, 0x4D, 0xAE, 0xE7, 0x79, 0xCD, 623 | 0xAE, 0x30, 0x75, 0xFF, 0xAE, 0xC6, 0x99, 0x62, 0xAE, 0x3F, 0xBD, 0x92, 0xAE, 0xC1, 0xA3, 0x09, 624 | 0xAE, 0xBA, 0x0D, 0xEA, 0xAE, 0x4B, 0xD2, 0x8C, 0xAE, 0xF7, 0x9E, 0xDE, 0xAE, 0x14, 0x1B, 0x5E, 625 | 0xAE, 0xF1, 0xE6, 0xF7, 0xAE, 0x5C, 0x7A, 0x2A, 0xAE, 0x03, 0xDB, 0x00, 0xAE, 0xFA, 0x18, 0xE1, 626 | 0xAE, 0x10, 0x6C, 0xA9, 0xAE, 0x77, 0x50, 0xAC, 0xAE, 0x5A, 0x7C, 0x3A, 0xAE, 0x83, 0x86, 0xD2, 627 | 0xAE, 0x57, 0x0B, 0x11, 0xAE, 0xD0, 0xBC, 0x6E, 0xAE, 0x0D, 0x5C, 0xD4, 0xAE, 0x5D, 0xD2, 0x06, 628 | 0xAE, 0xA7, 0xDB, 0xE0, 0xAE, 0x88, 0x00, 0x62, 0xAE, 0x1E, 0xAD, 0x68, 0xAE, 0x7A, 0x0E, 0xFA, 629 | 0xAE, 0xA4, 0x8D, 0x6E, 0xAE, 0x76, 0xCF, 0x89, 0xAE, 0xBE, 0x91, 0x60, 0xAE, 0x40, 0xFF, 0x84, 630 | 0xAE, 0xA7, 0xD8, 0x95, 0xAE, 0x61, 0x15, 0xCC, 0xAE, 0x34, 0x78, 0x38, 0xAE, 0xBC, 0x3B, 0x03, 631 | 0xAE, 0x90, 0xB8, 0x03, 0xAE, 0xE0, 0x00, 0x5A, 0xAE, 0xF4, 0x63, 0x7D, 0xAE, 0x5C, 0x93, 0xAE, 632 | 0xAE, 0xC0, 0x87, 0x57, 0xAE, 0x4D, 0x1E, 0xA2, 0xAE, 0xB8, 0xFC, 0x76, 0xAE, 0xD0, 0x75, 0x8C, 633 | 0xAE, 0xC9, 0x48, 0x56, 0xAE, 0x72, 0xA0, 0xE3, 0xAE, 0xE5, 0x90, 0x63, 0xAE, 0xA3, 0x9A, 0xA6, 634 | 0xAE, 0x73, 0x94, 0x74, 0xAE, 0x77, 0xED, 0xAA, 0xAE, 0x75, 0xDB, 0x3E, 0xAE, 0xB4, 0xB4, 0x73, 635 | 0xAE, 0x7C, 0x67, 0xC8, 0xAE, 0x04, 0xCF, 0xBB, 0xAE, 0x45, 0xC4, 0x50, 0xAE, 0xAE, 0x9B, 0x42, 636 | 0xAE, 0x2A, 0x87, 0xBB, 0xAE, 0x60, 0xF2, 0xD0, 0xAE, 0x60, 0x5F, 0x87, 0xAE, 0x45, 0x99, 0x89, 637 | 0xAE, 0xE6, 0xE9, 0xDA, 0xAE, 0x94, 0xB1, 0x92, 0xAE, 0xE5, 0x73, 0x69, 0xAE, 0x79, 0x7C, 0x50, 638 | 0xAE, 0xDD, 0xFA, 0x54, 0xAE, 0x22, 0x84, 0x3E, 0xAE, 0x5D, 0xA4, 0xB8, 0xAE, 0xEF, 0x5F, 0x8F, 639 | 0xAE, 0x1C, 0x60, 0xD2, 0xAE, 0xB7, 0x9E, 0x1A, 0xAE, 0x61, 0x69, 0xCA, 0xAE, 0x21, 0xD1, 0xC1, 640 | 0xAE, 0x94, 0x6D, 0x32, 0xAE, 0x42, 0x54, 0x1E, 0xAE, 0xD3, 0xA6, 0x46, 0xAE, 0xED, 0x57, 0x23, 641 | 0xAE, 0x55, 0xF6, 0x77, 0xAE, 0xCF, 0xD5, 0xF5, 0xAE, 0x4C, 0x5F, 0xD7, 0xAE, 0x8F, 0xBF, 0x07, 642 | 0xAE, 0xDD, 0x66, 0x69, 0xAE, 0xCC, 0xA9, 0x2E, 0xAE, 0xAE, 0x25, 0x03, 0xAE, 0xFB, 0x52, 0x53, 643 | 0xAE, 0xB7, 0x41, 0xD1, 0xAE, 0x69, 0x76, 0x11, 0xAE, 0x3C, 0xCA, 0x2D, 0xAE, 0x17, 0xF5, 0x71, 644 | 0xAE, 0xF4, 0x3D, 0x7E, 0xAE, 0x4C, 0x41, 0x3F, 0xAE, 0x35, 0x22, 0x2F, 0xAE, 0x55, 0xFA, 0x4D, 645 | 0xAE, 0xC5, 0xC7, 0x1A, 0xAE, 0x35, 0x12, 0x24, 0xAE, 0xA6, 0xF4, 0x90, 0xAE, 0x94, 0x09, 0x78, 646 | 0xAE, 0x17, 0x65, 0x3C, 0xAE, 0xC9, 0xC0, 0x4E, 0xAE, 0x06, 0xE1, 0x57, 0xAE, 0xA9, 0x90, 0x81, 647 | 0xAE, 0x8C, 0x85, 0xF8, 0xAE, 0x30, 0x92, 0xDA, 0xAE, 0x78, 0x8A, 0x4A, 0xAE, 0x29, 0x40, 0xE6, 648 | 0xAE, 0x3D, 0xA3, 0xA6, 0xAE, 0x9C, 0xE6, 0xC3, 0xAE, 0x17, 0xC9, 0x7C, 0xAE, 0x6A, 0xBB, 0x2C, 649 | 0xAE, 0xA1, 0xDD, 0x66, 0xAE, 0xD1, 0x91, 0xE8, 0xAE, 0x13, 0x0F, 0xFC, 0xAE, 0x55, 0x4B, 0x69, 650 | 0xAE, 0x1D, 0x41, 0xE8, 0xAE, 0xB9, 0x4F, 0x5C, 0xAE, 0x5D, 0xC7, 0x36, 0xAE, 0xAD, 0xB4, 0x50, 651 | 0xAE, 0x1B, 0xC0, 0x05, 0xAE, 0xFE, 0xDB, 0x2A, 0xAE, 0xE3, 0x49, 0xBC, 0xAE, 0x98, 0x61, 0xE2, 652 | 0xAE, 0xCE, 0xF7, 0x7F, 0xAE, 0xFC, 0x1F, 0x1F, 0xAE, 0xEE, 0x06, 0xC5, 0xAE, 0x0D, 0x82, 0x24, 653 | 0xAE, 0xC2, 0x3D, 0x94, 0xAE, 0xB0, 0xD0, 0x95, 0xAE, 0x2B, 0x77, 0x28, 0xAE, 0x44, 0xE0, 0x2B, 654 | 0xAE, 0x11, 0x8B, 0x1C, 0xAE, 0xAA, 0x44, 0x8A, 0xAE, 0xBF, 0x8B, 0x80, 0xAE, 0x8E, 0x42, 0x33, 655 | 0xAE, 0xF4, 0x55, 0x6C, 0xAE, 0x98, 0x16, 0x9E, 0xAE, 0x4B, 0x02, 0xCB, 0xAE, 0x5D, 0x78, 0xD9, 656 | 0xAE, 0x3A, 0xE9, 0xCC, 0xAE, 0xF8, 0x8F, 0x04, 0xAE, 0xF8, 0x16, 0x28, 0xAE, 0xB1, 0xCD, 0x72, 657 | 0xFF 658 | }; 659 | -------------------------------------------------------------------------------- /protocol_gw.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (c) 2015-2020, SALT. 3 | * This file is licensed under GPLv2 or later 4 | * See LICENSE.md for terms of use. 5 | */ 6 | 7 | #ifndef _PROTOCOL_GW_H 8 | #define _PROTOCOL_GW_H 9 | 10 | #include "common.h" 11 | 12 | #include "protocol_ntr.h" 13 | #include "command_ntr.h" 14 | 15 | bool gwcard_init(); 16 | void gwcard_deinit(); 17 | bool gwcard_init_status(); 18 | 19 | //Gateway SPI magic data 20 | const long int gw_magic_size; 21 | const unsigned char gw_magic[0x1001]; 22 | 23 | //Supercard DSTWO+ variant 24 | const long int gw_magic_sc_size; 25 | const unsigned char gw_magic_sc[0x1001]; 26 | 27 | #endif 28 | --------------------------------------------------------------------------------