You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

TestSSTRecord.java 83KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499
  1. /* ====================================================================
  2. Licensed to the Apache Software Foundation (ASF) under one or more
  3. contributor license agreements. See the NOTICE file distributed with
  4. this work for additional information regarding copyright ownership.
  5. The ASF licenses this file to You under the Apache License, Version 2.0
  6. (the "License"); you may not use this file except in compliance with
  7. the License. You may obtain a copy of the License at
  8. http://www.apache.org/licenses/LICENSE-2.0
  9. Unless required by applicable law or agreed to in writing, software
  10. distributed under the License is distributed on an "AS IS" BASIS,
  11. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. See the License for the specific language governing permissions and
  13. limitations under the License.
  14. ==================================================================== */
  15. package org.apache.poi.hssf.record;
  16. import java.io.BufferedReader;
  17. import java.io.ByteArrayInputStream;
  18. import java.io.ByteArrayOutputStream;
  19. import java.io.IOException;
  20. import java.io.InputStream;
  21. import java.io.InputStreamReader;
  22. import java.util.Arrays;
  23. import java.util.Iterator;
  24. import junit.framework.AssertionFailedError;
  25. import junit.framework.TestCase;
  26. import org.apache.poi.hssf.HSSFTestDataSamples;
  27. import org.apache.poi.hssf.record.common.UnicodeString;
  28. import org.apache.poi.hssf.usermodel.HSSFSheet;
  29. import org.apache.poi.hssf.usermodel.HSSFWorkbook;
  30. import org.apache.poi.util.HexRead;
  31. import org.apache.poi.util.LittleEndian;
  32. /**
  33. * @author Marc Johnson (mjohnson at apache dot org)
  34. * @author Glen Stampoultzis (glens at apache.org)
  35. */
  36. public final class TestSSTRecord extends TestCase {
  37. /**
  38. * decodes hexdump files and concatenates the results
  39. * @param hexDumpFileNames names of sample files in the hssf test data directory
  40. */
  41. private static byte[] concatHexDumps(String... hexDumpFileNames) {
  42. int nFiles = hexDumpFileNames.length;
  43. ByteArrayOutputStream baos = new ByteArrayOutputStream(nFiles * 8228);
  44. for (int i = 0; i < nFiles; i++) {
  45. String sampleFileName = hexDumpFileNames[i];
  46. InputStream is = HSSFTestDataSamples.openSampleFileStream(sampleFileName);
  47. BufferedReader br = new BufferedReader(new InputStreamReader(is));
  48. try {
  49. while (true) {
  50. String line = br.readLine();
  51. if (line == null) {
  52. break;
  53. }
  54. baos.write(HexRead.readFromString(line));
  55. }
  56. is.close();
  57. } catch (IOException e) {
  58. throw new RuntimeException(e);
  59. }
  60. }
  61. return baos.toByteArray();
  62. }
  63. /**
  64. * @param rawData serialization of one {@link SSTRecord} and zero or more {@link ContinueRecord}s
  65. */
  66. private static SSTRecord createSSTFromRawData(byte[] rawData) {
  67. RecordInputStream in = new RecordInputStream(new ByteArrayInputStream(rawData));
  68. in.nextRecord();
  69. SSTRecord result = new SSTRecord(in);
  70. assertEquals(0, in.remaining());
  71. assertTrue(!in.hasNextRecord());
  72. return result;
  73. }
  74. /**
  75. * SST is often split over several {@link ContinueRecord}s
  76. */
  77. public void testContinuedRecord() {
  78. byte[] origData;
  79. SSTRecord record;
  80. byte[] ser_output;
  81. origData = concatHexDumps("BigSSTRecord", "BigSSTRecordCR");
  82. record = createSSTFromRawData(origData);
  83. assertEquals( 1464, record.getNumStrings() );
  84. assertEquals( 688, record.getNumUniqueStrings() );
  85. assertEquals( 688, record.countStrings() );
  86. ser_output = record.serialize();
  87. assertTrue(Arrays.equals(origData, ser_output));
  88. // testing based on new bug report
  89. origData = concatHexDumps("BigSSTRecord2", "BigSSTRecord2CR1", "BigSSTRecord2CR2", "BigSSTRecord2CR3",
  90. "BigSSTRecord2CR4", "BigSSTRecord2CR5", "BigSSTRecord2CR6", "BigSSTRecord2CR7");
  91. record = createSSTFromRawData(origData);
  92. assertEquals( 158642, record.getNumStrings() );
  93. assertEquals( 5249, record.getNumUniqueStrings() );
  94. assertEquals( 5249, record.countStrings() );
  95. ser_output = record.serialize();
  96. if (false) { // set true to observe make sure areSameSSTs() is working
  97. ser_output[11000] = 'X';
  98. }
  99. SSTRecord rec2 = createSSTFromRawData(ser_output);
  100. if (!areSameSSTs(record, rec2)) {
  101. throw new AssertionFailedError("large SST re-serialized incorrectly");
  102. }
  103. if (false) {
  104. // TODO - trivial differences in ContinueRecord break locations
  105. // Sample data should be checked against what most recent Excel version produces.
  106. // maybe tweaks are required in ContinuableRecordOutput
  107. assertTrue(Arrays.equals(origData, ser_output));
  108. }
  109. }
  110. private boolean areSameSSTs(SSTRecord a, SSTRecord b) {
  111. if (a.getNumStrings() != b.getNumStrings()) {
  112. return false;
  113. }
  114. int nElems = a.getNumUniqueStrings();
  115. if (nElems != b.getNumUniqueStrings()) {
  116. return false;
  117. }
  118. for(int i=0; i<nElems; i++) {
  119. if (!a.getString(i).equals(b.getString(i))) {
  120. return false;
  121. }
  122. }
  123. return true;
  124. }
  125. /**
  126. * Test capability of handling mondo big strings
  127. *
  128. * @exception IOException
  129. */
  130. public void testHugeStrings() {
  131. SSTRecord record = new SSTRecord();
  132. byte[][] bstrings =
  133. {
  134. new byte[9000], new byte[7433], new byte[9002],
  135. new byte[16998]
  136. };
  137. UnicodeString[] strings = new UnicodeString[bstrings.length];
  138. int total_length = 0;
  139. for ( int k = 0; k < bstrings.length; k++ )
  140. {
  141. Arrays.fill( bstrings[k], (byte) ( 'a' + k ) );
  142. strings[k] = new UnicodeString( new String(bstrings[k]) );
  143. record.addString( strings[k] );
  144. total_length += 3 + bstrings[k].length;
  145. }
  146. // add overhead of SST record
  147. total_length += 8;
  148. // add overhead of broken strings
  149. total_length += 4;
  150. // add overhead of six records
  151. total_length += ( 6 * 4 );
  152. byte[] content = new byte[record.getRecordSize()];
  153. record.serialize( 0, content );
  154. assertEquals( total_length, content.length );
  155. //Deserialize the record.
  156. RecordInputStream recStream = new RecordInputStream(new ByteArrayInputStream(content));
  157. recStream.nextRecord();
  158. record = new SSTRecord(recStream);
  159. assertEquals( strings.length, record.getNumStrings() );
  160. assertEquals( strings.length, record.getNumUniqueStrings() );
  161. assertEquals( strings.length, record.countStrings() );
  162. for ( int k = 0; k < strings.length; k++ )
  163. {
  164. assertEquals( strings[k], record.getString( k ) );
  165. }
  166. record = new SSTRecord();
  167. bstrings[1] = new byte[bstrings[1].length - 1];
  168. for ( int k = 0; k < bstrings.length; k++ )
  169. {
  170. if ( ( bstrings[k].length % 2 ) == 1 )
  171. {
  172. Arrays.fill( bstrings[k], (byte) ( 'a' + k ) );
  173. strings[k] = new UnicodeString( new String(bstrings[k]) );
  174. }
  175. else
  176. {
  177. char[] data = new char[bstrings[k].length / 2];
  178. Arrays.fill( data, (char) ( '\u2122' + k ) );
  179. strings[k] = new UnicodeString(new String( data ));
  180. }
  181. record.addString( strings[k] );
  182. }
  183. content = new byte[record.getRecordSize()];
  184. record.serialize( 0, content );
  185. total_length--;
  186. assertEquals( total_length, content.length );
  187. recStream = new RecordInputStream(new ByteArrayInputStream(content));
  188. recStream.nextRecord();
  189. record = new SSTRecord(recStream);
  190. assertEquals( strings.length, record.getNumStrings() );
  191. assertEquals( strings.length, record.getNumUniqueStrings() );
  192. assertEquals( strings.length, record.countStrings() );
  193. for ( int k = 0; k < strings.length; k++ )
  194. {
  195. assertEquals( strings[k], record.getString( k ) );
  196. }
  197. }
  198. /**
  199. * test SSTRecord boundary conditions
  200. */
  201. public void testSSTRecordBug() {
  202. // create an SSTRecord and write a certain pattern of strings
  203. // to it ... then serialize it and verify the content
  204. SSTRecord record = new SSTRecord();
  205. // the record will start with two integers, then this string
  206. // ... that will eat up 16 of the 8224 bytes that the record
  207. // can hold
  208. record.addString( new UnicodeString("Hello") );
  209. // now we have an additional 8208 bytes, which is an exact
  210. // multiple of 16 bytes
  211. long testvalue = 1000000000000L;
  212. for ( int k = 0; k < 2000; k++ )
  213. {
  214. record.addString( new UnicodeString(String.valueOf( testvalue++ )) );
  215. }
  216. byte[] content = new byte[record.getRecordSize()];
  217. record.serialize( 0, content );
  218. assertEquals(8224, LittleEndian.getShort(content, 2));
  219. assertEquals(ContinueRecord.sid, LittleEndian.getShort(content, 8228));
  220. assertEquals(8224, LittleEndian.getShort(content, 8228+2));
  221. assertEquals( (byte) 13, content[4 + 8228] );
  222. assertEquals(ContinueRecord.sid, LittleEndian.getShort(content, 2*8228));
  223. assertEquals(8224, LittleEndian.getShort(content, 8228*2+2));
  224. assertEquals( (byte) 13, content[4 + 8228 * 2] );
  225. assertEquals(ContinueRecord.sid, LittleEndian.getShort(content, 3*8228));
  226. assertEquals( (byte) 13, content[4 + 8228 * 3] );
  227. }
  228. /**
  229. * test simple addString
  230. */
  231. public void testSimpleAddString() {
  232. SSTRecord record = new SSTRecord();
  233. UnicodeString s1 = new UnicodeString("Hello world");
  234. // \u2122 is the encoding of the trademark symbol ...
  235. UnicodeString s2 = new UnicodeString("Hello world\u2122");
  236. assertEquals( 0, record.addString( s1 ) );
  237. assertEquals( s1, record.getString( 0 ) );
  238. assertEquals( 1, record.countStrings() );
  239. assertEquals( 1, record.getNumStrings() );
  240. assertEquals( 1, record.getNumUniqueStrings() );
  241. assertEquals( 0, record.addString( s1 ) );
  242. assertEquals( s1, record.getString( 0 ) );
  243. assertEquals( 1, record.countStrings() );
  244. assertEquals( 2, record.getNumStrings() );
  245. assertEquals( 1, record.getNumUniqueStrings() );
  246. assertEquals( 1, record.addString( s2 ) );
  247. assertEquals( s2, record.getString( 1 ) );
  248. assertEquals( 2, record.countStrings() );
  249. assertEquals( 3, record.getNumStrings() );
  250. assertEquals( 2, record.getNumUniqueStrings() );
  251. Iterator iter = record.getStrings();
  252. while ( iter.hasNext() )
  253. {
  254. UnicodeString ucs = (UnicodeString) iter.next();
  255. if ( ucs.equals( s1 ) )
  256. {
  257. assertEquals( (byte) 0, ucs.getOptionFlags() );
  258. }
  259. else if ( ucs.equals( s2 ) )
  260. {
  261. assertEquals( (byte) 1, ucs.getOptionFlags() );
  262. }
  263. else
  264. {
  265. fail( "cannot match string: " + ucs.getString() );
  266. }
  267. }
  268. }
  269. /**
  270. * test simple constructor
  271. */
  272. public void testSimpleConstructor() {
  273. SSTRecord record = new SSTRecord();
  274. assertEquals( 0, record.getNumStrings() );
  275. assertEquals( 0, record.getNumUniqueStrings() );
  276. assertEquals( 0, record.countStrings() );
  277. byte[] output = record.serialize();
  278. byte[] expected =
  279. {
  280. (byte) record.getSid(), (byte) ( record.getSid() >> 8 ),
  281. (byte) 8, (byte) 0, (byte) 0, (byte) 0, (byte) 0,
  282. (byte) 0, (byte) 0, (byte) 0, (byte) 0, (byte) 0
  283. };
  284. assertEquals( expected.length, output.length );
  285. for ( int k = 0; k < expected.length; k++ )
  286. {
  287. assertEquals( String.valueOf( k ), expected[k], output[k] );
  288. }
  289. }
  290. /**
  291. * Tests that workbooks with rich text that duplicates a non rich text cell can be read and written.
  292. */
  293. public void testReadWriteDuplicatedRichText1() {
  294. HSSFWorkbook wb = HSSFTestDataSamples.openSampleWorkbook("duprich1.xls");
  295. HSSFSheet sheet = wb.getSheetAt( 1 );
  296. assertEquals( "01/05 (Wed)", sheet.getRow( 0 ).getCell(8 ).getStringCellValue() );
  297. assertEquals( "01/05 (Wed)", sheet.getRow( 1 ).getCell(8 ).getStringCellValue() );
  298. HSSFTestDataSamples.writeOutAndReadBack(wb);
  299. // test the second file.
  300. wb = HSSFTestDataSamples.openSampleWorkbook("duprich2.xls");
  301. sheet = wb.getSheetAt( 0 );
  302. int row = 0;
  303. assertEquals( "Testing", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  304. assertEquals( "rich", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  305. assertEquals( "text", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  306. assertEquals( "strings", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  307. assertEquals( "Testing", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  308. assertEquals( "Testing", sheet.getRow( row++ ).getCell(0 ).getStringCellValue() );
  309. HSSFTestDataSamples.writeOutAndReadBack(wb);
  310. }
  311. /**
  312. * hex dump from UnicodeStringFailCase1.xls atatched to Bugzilla 50779
  313. */
  314. private static final String data_50779_1 =
  315. //Offset=0x00000612(1554) recno=71 sid=0x00FC size=0x2020(8224)
  316. " FC 00 20 20 51 00 00 00 51 00 00 00 32 00" +
  317. "05 10 00 00 00 42 30 44 30 46 30 48 30 4A 30 4B" +
  318. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  319. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  320. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  321. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  322. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  323. "30 30 00 30 00 30 00 31 00 01 00 0C 00 05 00 35" +
  324. "00 00 00 00 00 00 00 4B 30 32 00 01 42 30 44 30" +
  325. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  326. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  327. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  328. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  329. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  330. "8D 30 8F 30 92 30 93 30 30 00 30 00 30 00 32 00" +
  331. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  332. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  333. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  334. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  335. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  336. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  337. "00 30 00 30 00 33 00 32 00 01 42 30 44 30 46 30" +
  338. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  339. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  340. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  341. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  342. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  343. "8F 30 92 30 93 30 30 00 30 00 30 00 34 00 32 00" +
  344. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  345. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  346. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  347. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  348. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  349. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  350. "00 30 00 35 00 32 00 01 42 30 44 30 46 30 48 30" +
  351. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  352. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  353. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  354. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  355. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  356. "92 30 93 30 30 00 30 00 30 00 36 00 32 00 01 42" +
  357. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  358. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  359. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  360. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  361. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  362. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 30" +
  363. "00 37 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  364. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  365. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  366. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  367. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  368. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  369. "93 30 30 00 30 00 30 00 38 00 32 00 01 42 30 44" +
  370. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  371. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  372. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  373. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  374. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  375. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 30 00 39" +
  376. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  377. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  378. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  379. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  380. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  381. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  382. "30 00 30 00 31 00 30 00 32 00 01 42 30 44 30 46" +
  383. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  384. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  385. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  386. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  387. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  388. "30 8F 30 92 30 93 30 30 00 30 00 31 00 31 00 32" +
  389. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  390. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  391. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  392. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  393. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  394. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  395. "30 00 31 00 32 00 32 00 01 42 30 44 30 46 30 48" +
  396. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  397. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  398. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  399. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  400. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  401. "30 92 30 93 30 30 00 30 00 31 00 33 00 32 00 01" +
  402. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  403. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  404. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  405. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  406. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  407. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  408. "31 00 34 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  409. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  410. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  411. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  412. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  413. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  414. "30 93 30 30 00 30 00 31 00 35 00 32 00 01 42 30" +
  415. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  416. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  417. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  418. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  419. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  420. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 31 00" +
  421. "36 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  422. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  423. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  424. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  425. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  426. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  427. "30 30 00 30 00 31 00 37 00 32 00 01 42 30 44 30" +
  428. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  429. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  430. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  431. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  432. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  433. "8D 30 8F 30 92 30 93 30 30 00 30 00 31 00 38 00" +
  434. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  435. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  436. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  437. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  438. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  439. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  440. "00 30 00 31 00 39 00 32 00 01 42 30 44 30 46 30" +
  441. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  442. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  443. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  444. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  445. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  446. "8F 30 92 30 93 30 30 00 30 00 32 00 30 00 32 00" +
  447. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  448. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  449. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  450. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  451. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  452. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  453. "00 32 00 31 00 32 00 01 42 30 44 30 46 30 48 30" +
  454. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  455. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  456. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  457. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  458. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  459. "92 30 93 30 30 00 30 00 32 00 32 00 32 00 01 42" +
  460. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  461. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  462. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  463. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  464. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  465. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 32" +
  466. "00 33 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  467. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  468. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  469. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  470. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  471. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  472. "93 30 30 00 30 00 32 00 34 00 32 00 01 42 30 44" +
  473. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  474. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  475. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  476. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  477. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  478. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 32 00 35" +
  479. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  480. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  481. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  482. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  483. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  484. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  485. "30 00 30 00 32 00 36 00 32 00 01 42 30 44 30 46" +
  486. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  487. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  488. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  489. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  490. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  491. "30 8F 30 92 30 93 30 30 00 30 00 32 00 37 00 32" +
  492. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  493. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  494. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  495. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  496. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  497. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  498. "30 00 32 00 38 00 32 00 01 42 30 44 30 46 30 48" +
  499. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  500. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  501. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  502. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  503. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  504. "30 92 30 93 30 30 00 30 00 32 00 39 00 32 00 01" +
  505. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  506. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  507. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  508. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  509. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  510. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  511. "33 00 30 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  512. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  513. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  514. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  515. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  516. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  517. "30 93 30 30 00 30 00 33 00 31 00 32 00 01 42 30" +
  518. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  519. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  520. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  521. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  522. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  523. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 33 00" +
  524. "32 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  525. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  526. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  527. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  528. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  529. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  530. "30 30 00 30 00 33 00 33 00 32 00 01 42 30 44 30" +
  531. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  532. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  533. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  534. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  535. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  536. "8D 30 8F 30 92 30 93 30 30 00 30 00 33 00 34 00" +
  537. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  538. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  539. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  540. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  541. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  542. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  543. "00 30 00 33 00 35 00 32 00 01 42 30 44 30 46 30" +
  544. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  545. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  546. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  547. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  548. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  549. "8F 30 92 30 93 30 30 00 30 00 33 00 36 00 32 00" +
  550. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  551. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  552. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  553. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  554. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  555. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  556. "00 33 00 37 00 32 00 01 42 30 44 30 46 30 48 30" +
  557. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  558. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  559. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  560. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  561. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  562. "92 30 93 30 30 00 30 00 33 00 38 00 32 00 01 42" +
  563. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  564. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  565. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  566. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  567. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  568. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 33" +
  569. "00 39 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  570. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  571. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  572. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  573. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  574. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  575. "93 30 30 00 30 00 34 00 30 00 32 00 01 42 30 44" +
  576. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  577. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  578. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  579. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  580. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  581. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 34 00 31" +
  582. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  583. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  584. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  585. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  586. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  587. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  588. "30 00 30 00 34 00 32 00 32 00 01 42 30 44 30 46" +
  589. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  590. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  591. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  592. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  593. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  594. "30 8F 30 92 30 93 30 30 00 30 00 34 00 33 00 32" +
  595. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  596. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  597. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  598. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  599. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  600. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  601. "30 00 34 00 34 00 32 00 01 42 30 44 30 46 30 48" +
  602. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  603. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  604. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  605. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  606. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  607. "30 92 30 93 30 30 00 30 00 34 00 35 00 32 00 01" +
  608. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  609. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  610. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  611. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  612. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  613. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  614. "34 00 36 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  615. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  616. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  617. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  618. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  619. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  620. "30 93 30 30 00 30 00 34 00 37 00 32 00 01 42 30" +
  621. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  622. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  623. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  624. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  625. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  626. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 34 00" +
  627. "38 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  628. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  629. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  630. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  631. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  632. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  633. "30 30 00 30 00 34 00 39 00 32 00 01 42 30 44 30" +
  634. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  635. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  636. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  637. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  638. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  639. "8D 30 8F 30 92 30 93 30 30 00 30 00 35 00 30 00" +
  640. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  641. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  642. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  643. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  644. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  645. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  646. "00 30 00 35 00 31 00 32 00 01 42 30 44 30 46 30" +
  647. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  648. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  649. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  650. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  651. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  652. "8F 30 92 30 93 30 30 00 30 00 35 00 32 00 32 00" +
  653. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  654. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  655. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  656. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  657. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  658. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  659. "00 35 00 33 00 32 00 01 42 30 44 30 46 30 48 30" +
  660. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  661. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  662. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  663. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  664. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  665. "92 30 93 30 30 00 30 00 35 00 34 00 32 00 01 42" +
  666. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  667. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  668. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  669. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  670. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  671. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 35" +
  672. "00 35 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  673. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  674. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  675. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  676. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  677. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  678. "93 30 30 00 30 00 35 00 36 00 32 00 01 42 30 44" +
  679. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  680. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  681. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  682. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  683. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  684. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 35 00 37" +
  685. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  686. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  687. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  688. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  689. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  690. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  691. "30 00 30 00 35 00 38 00 32 00 01 42 30 44 30 46" +
  692. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  693. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  694. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  695. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  696. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  697. "30 8F 30 92 30 93 30 30 00 30 00 35 00 39 00 32" +
  698. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  699. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  700. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  701. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  702. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  703. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  704. "30 00 36 00 30 00 32 00 01 42 30 44 30 46 30 48" +
  705. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  706. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  707. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  708. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  709. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  710. "30 92 30 93 30 30 00 30 00 36 00 31 00 32 00 01" +
  711. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  712. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  713. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  714. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  715. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  716. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  717. "36 00 32 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  718. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  719. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  720. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  721. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  722. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  723. "30 93 30 30 00 30 00 36 00 33 00 32 00 01 42 30" +
  724. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  725. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  726. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  727. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  728. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  729. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 36 00" +
  730. "34 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  731. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  732. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  733. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  734. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  735. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  736. "30 30 00 30 00 36 00 35 00 32 00 01 42 30 44 30" +
  737. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  738. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  739. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  740. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  741. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  742. "8D 30 8F 30 92 30 93 30 30 00 30 00 36 00 36 00" +
  743. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  744. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  745. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  746. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  747. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  748. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  749. "00 30 00 36 00 37 00 32 00 01 42 30 44 30 46 30" +
  750. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  751. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  752. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  753. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  754. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  755. "8F 30 92 30 93 30 30 00 30 00 36 00 38 00 32 00" +
  756. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  757. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  758. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  759. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  760. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  761. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  762. "00 36 00 39 00 32 00 01 42 30 44 30 46 30 48 30" +
  763. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  764. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  765. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  766. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  767. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  768. "92 30 93 30 30 00 30 00 37 00 30 00 32 00 01 42" +
  769. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  770. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  771. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  772. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  773. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  774. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 37" +
  775. "00 31 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  776. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  777. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  778. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  779. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  780. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  781. "93 30 30 00 30 00 37 00 32 00 32 00 01 42 30 44" +
  782. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  783. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  784. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  785. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  786. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  787. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 37 00 33" +
  788. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  789. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  790. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  791. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  792. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  793. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  794. "30 00 30 00 37 00 34 00 32 00 01 42 30 44 30 46" +
  795. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  796. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  797. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  798. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  799. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  800. "30 8F 30 92 30 93 30 30 00 30 00 37 00 35 00 32" +
  801. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  802. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  803. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  804. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  805. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  806. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  807. "30 00 37 00 36 00 32 00 01 42 30 44 30 46 30 48" +
  808. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  809. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  810. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  811. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  812. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  813. "30 92 30 93 30 30 00 30 00 37 00 37 00 32 00 01" +
  814. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  815. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  816. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  817. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  818. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  819. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  820. "37 00 38 00 1F 00 05 B8 00 00 00 17 53 77 6D 53" +
  821. "90 52 97 EE 68 0C 77 A9 5C 4B 62 0C 77 8F 79 F6" +
  822. "5C 0C 77 03 68 28 67 0C 77 FC 57 89 73 0C 77 71" +
  823. "67 AC 4E FD 90 43 53 49 84 0C 77 5E 79 48 59 DD" +
  824. "5D 0C 77 77 95 CE 91 0C 77 01 00 B4 00 05 00 35" +
  825. "00 0A 00 37 00 37 00 DB 30 C3 30 AB 30 A4 30 C9" +
  826. "30 A6 30 A2 30 AA 30 E2 30 EA 30 B1 30 F3 30 A4" +
  827. "30 EF 30 C6 30 B1 30 F3 30 D5 30 AF 30 B7 30 DE" +
  828. "30 B1 30 F3 30 C8 30 C1 30 AE 30 B1 30 F3 30 B5" +
  829. "30 A4 30 BF 30 DE 30 B1 30 F3 30 C8 30 A6 30 AD" +
  830. "30 E7 30 A6 30 C8 " +
  831. // Offset=0x00002636(9782) recno=72 sid=0x003C size=0x0151(337)
  832. " 3C 00 51 01 30 C1 30 D0 30 B1" +
  833. "30 F3 30 AB 30 CA 30 AC 30 EF 30 B1 30 F3 30 CA" +
  834. "30 AC 30 CE 30 B1 30 F3 30 00 00 00 00 03 00 06" +
  835. "00 03 00 03 00 0C 00 06 00 03 00 11 00 09 00 03" +
  836. "00 17 00 0C 00 03 00 1C 00 0F 00 03 00 22 00 12" +
  837. "00 03 00 28 00 15 00 03 00 2C 00 18 00 04 00 32" +
  838. "00 1C 00 03 00 32 00 05 10 00 00 00 42 30 44 30" +
  839. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  840. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  841. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  842. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  843. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  844. "8D 30 8F 30 92 30 93 30 30 00 30 00 37 00 39 00" +
  845. "01 00 0C 00 05 00 35 00 00 00 00 00 00 00 00 00" +
  846. "32 00 05 10 00 00 00 42 30 44 30 46 30 48 30 4A" +
  847. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  848. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  849. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  850. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  851. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  852. "30 93 30 30 00 30 00 38 00 30 00 01 00 0C 00 05" +
  853. "00 35 00 00 00 00 00 00 00 4B 30 ";
  854. /**
  855. * hex dump from UnicodeStringFailCase2.xls atatched to Bugzilla 50779
  856. */
  857. private static final String data_50779_2 =
  858. //"Offset=0x00000612(1554) recno=71 sid=0x00FC size=0x2020(8224)\n" +
  859. " FC 00 20 20 51 00 00 00 51 00 00 00 32 00" +
  860. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  861. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  862. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  863. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  864. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  865. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  866. "00 30 00 31 00 32 00 01 42 30 44 30 46 30 48 30" +
  867. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  868. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  869. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  870. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  871. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  872. "92 30 93 30 30 00 30 00 30 00 32 00 32 00 01 42" +
  873. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  874. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  875. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  876. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  877. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  878. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 30" +
  879. "00 33 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  880. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  881. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  882. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  883. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  884. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  885. "93 30 30 00 30 00 30 00 34 00 32 00 01 42 30 44" +
  886. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  887. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  888. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  889. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  890. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  891. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 30 00 35" +
  892. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  893. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  894. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  895. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  896. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  897. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  898. "30 00 30 00 30 00 36 00 32 00 01 42 30 44 30 46" +
  899. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  900. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  901. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  902. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  903. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  904. "30 8F 30 92 30 93 30 30 00 30 00 30 00 37 00 32" +
  905. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  906. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  907. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  908. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  909. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  910. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  911. "30 00 30 00 38 00 32 00 01 42 30 44 30 46 30 48" +
  912. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  913. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  914. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  915. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  916. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  917. "30 92 30 93 30 30 00 30 00 30 00 39 00 32 00 01" +
  918. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  919. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  920. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  921. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  922. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  923. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  924. "31 00 30 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  925. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  926. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  927. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  928. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  929. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  930. "30 93 30 30 00 30 00 31 00 31 00 32 00 01 42 30" +
  931. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  932. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  933. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  934. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  935. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  936. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 31 00" +
  937. "32 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  938. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  939. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  940. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  941. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  942. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  943. "30 30 00 30 00 31 00 33 00 32 00 01 42 30 44 30" +
  944. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  945. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  946. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  947. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  948. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  949. "8D 30 8F 30 92 30 93 30 30 00 30 00 31 00 34 00" +
  950. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  951. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  952. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  953. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  954. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  955. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  956. "00 30 00 31 00 35 00 32 00 01 42 30 44 30 46 30" +
  957. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  958. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  959. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  960. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  961. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  962. "8F 30 92 30 93 30 30 00 30 00 31 00 36 00 32 00" +
  963. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  964. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  965. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  966. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  967. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  968. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  969. "00 31 00 37 00 32 00 01 42 30 44 30 46 30 48 30" +
  970. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  971. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  972. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  973. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  974. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  975. "92 30 93 30 30 00 30 00 31 00 38 00 32 00 01 42" +
  976. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  977. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  978. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  979. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  980. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  981. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 31" +
  982. "00 39 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  983. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  984. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  985. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  986. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  987. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  988. "93 30 30 00 30 00 32 00 30 00 32 00 01 42 30 44" +
  989. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  990. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  991. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  992. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  993. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  994. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 32 00 31" +
  995. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  996. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  997. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  998. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  999. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  1000. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  1001. "30 00 30 00 32 00 32 00 32 00 01 42 30 44 30 46" +
  1002. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  1003. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  1004. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  1005. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  1006. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  1007. "30 8F 30 92 30 93 30 30 00 30 00 32 00 33 00 32" +
  1008. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  1009. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  1010. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  1011. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  1012. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  1013. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  1014. "30 00 32 00 34 00 32 00 01 42 30 44 30 46 30 48" +
  1015. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  1016. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  1017. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  1018. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  1019. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  1020. "30 92 30 93 30 30 00 30 00 32 00 35 00 32 00 01" +
  1021. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  1022. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  1023. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  1024. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  1025. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  1026. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  1027. "32 00 36 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  1028. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  1029. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  1030. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  1031. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  1032. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  1033. "30 93 30 30 00 30 00 32 00 37 00 32 00 01 42 30" +
  1034. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  1035. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  1036. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  1037. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  1038. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  1039. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 32 00" +
  1040. "38 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  1041. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  1042. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  1043. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  1044. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  1045. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  1046. "30 30 00 30 00 32 00 39 00 32 00 01 42 30 44 30" +
  1047. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  1048. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  1049. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  1050. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  1051. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  1052. "8D 30 8F 30 92 30 93 30 30 00 30 00 33 00 30 00" +
  1053. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  1054. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  1055. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  1056. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  1057. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  1058. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  1059. "00 30 00 33 00 31 00 32 00 01 42 30 44 30 46 30" +
  1060. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  1061. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  1062. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  1063. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  1064. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  1065. "8F 30 92 30 93 30 30 00 30 00 33 00 32 00 32 00" +
  1066. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  1067. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  1068. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  1069. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  1070. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  1071. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  1072. "00 33 00 33 00 32 00 01 42 30 44 30 46 30 48 30" +
  1073. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  1074. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  1075. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  1076. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  1077. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  1078. "92 30 93 30 30 00 30 00 33 00 34 00 32 00 01 42" +
  1079. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  1080. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  1081. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  1082. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  1083. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  1084. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 33" +
  1085. "00 35 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  1086. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  1087. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  1088. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  1089. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  1090. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  1091. "93 30 30 00 30 00 33 00 36 00 32 00 01 42 30 44" +
  1092. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  1093. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  1094. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  1095. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  1096. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  1097. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 33 00 37" +
  1098. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  1099. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  1100. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  1101. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  1102. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  1103. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  1104. "30 00 30 00 33 00 38 00 32 00 01 42 30 44 30 46" +
  1105. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  1106. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  1107. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  1108. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  1109. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  1110. "30 8F 30 92 30 93 30 30 00 30 00 33 00 39 00 32" +
  1111. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  1112. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  1113. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  1114. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  1115. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  1116. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  1117. "30 00 34 00 30 00 32 00 01 42 30 44 30 46 30 48" +
  1118. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  1119. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  1120. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  1121. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  1122. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  1123. "30 92 30 93 30 30 00 30 00 34 00 31 00 32 00 01" +
  1124. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  1125. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  1126. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  1127. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  1128. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  1129. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  1130. "34 00 32 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  1131. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  1132. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  1133. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  1134. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  1135. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  1136. "30 93 30 30 00 30 00 34 00 33 00 32 00 01 42 30" +
  1137. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  1138. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  1139. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  1140. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  1141. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  1142. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 34 00" +
  1143. "34 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  1144. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  1145. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  1146. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  1147. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  1148. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  1149. "30 30 00 30 00 34 00 35 00 32 00 01 42 30 44 30" +
  1150. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  1151. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  1152. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  1153. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  1154. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  1155. "8D 30 8F 30 92 30 93 30 30 00 30 00 34 00 36 00" +
  1156. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  1157. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  1158. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  1159. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  1160. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  1161. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  1162. "00 30 00 34 00 37 00 32 00 01 42 30 44 30 46 30" +
  1163. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  1164. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  1165. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  1166. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  1167. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  1168. "8F 30 92 30 93 30 30 00 30 00 34 00 38 00 32 00" +
  1169. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  1170. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  1171. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  1172. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  1173. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  1174. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  1175. "00 34 00 39 00 32 00 01 42 30 44 30 46 30 48 30" +
  1176. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  1177. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  1178. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  1179. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  1180. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  1181. "92 30 93 30 30 00 30 00 35 00 30 00 32 00 01 42" +
  1182. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  1183. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  1184. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  1185. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  1186. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  1187. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 35" +
  1188. "00 31 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  1189. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  1190. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  1191. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  1192. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  1193. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  1194. "93 30 30 00 30 00 35 00 32 00 32 00 01 42 30 44" +
  1195. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  1196. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  1197. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  1198. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  1199. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  1200. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 35 00 33" +
  1201. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  1202. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  1203. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  1204. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  1205. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  1206. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  1207. "30 00 30 00 35 00 34 00 32 00 01 42 30 44 30 46" +
  1208. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  1209. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  1210. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  1211. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  1212. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  1213. "30 8F 30 92 30 93 30 30 00 30 00 35 00 35 00 32" +
  1214. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  1215. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  1216. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  1217. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  1218. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  1219. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  1220. "30 00 35 00 36 00 32 00 01 42 30 44 30 46 30 48" +
  1221. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  1222. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  1223. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  1224. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  1225. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  1226. "30 92 30 93 30 30 00 30 00 35 00 37 00 32 00 01" +
  1227. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  1228. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  1229. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  1230. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  1231. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  1232. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  1233. "35 00 38 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  1234. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  1235. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  1236. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  1237. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  1238. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  1239. "30 93 30 30 00 30 00 35 00 39 00 32 00 01 42 30" +
  1240. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  1241. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  1242. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  1243. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  1244. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  1245. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 36 00" +
  1246. "30 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  1247. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  1248. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  1249. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  1250. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  1251. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  1252. "30 30 00 30 00 36 00 31 00 32 00 01 42 30 44 30" +
  1253. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  1254. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  1255. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  1256. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  1257. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  1258. "8D 30 8F 30 92 30 93 30 30 00 30 00 36 00 32 00" +
  1259. "32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  1260. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  1261. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  1262. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  1263. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  1264. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  1265. "00 30 00 36 00 33 00 32 00 01 42 30 44 30 46 30" +
  1266. "48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30" +
  1267. "57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30" +
  1268. "68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30" +
  1269. "75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30" +
  1270. "84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30" +
  1271. "8F 30 92 30 93 30 30 00 30 00 36 00 34 00 32 00" +
  1272. "01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F" +
  1273. "30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F" +
  1274. "30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D" +
  1275. "30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F" +
  1276. "30 80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A" +
  1277. "30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30" +
  1278. "00 36 00 35 00 32 00 01 42 30 44 30 46 30 48 30" +
  1279. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  1280. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  1281. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  1282. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  1283. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  1284. "92 30 93 30 30 00 30 00 36 00 36 00 32 00 01 42" +
  1285. "30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51" +
  1286. "30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61" +
  1287. "30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E" +
  1288. "30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80" +
  1289. "30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B" +
  1290. "30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 36" +
  1291. "00 37 00 32 00 01 42 30 44 30 46 30 48 30 4A 30" +
  1292. "4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30" +
  1293. "5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30" +
  1294. "6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30" +
  1295. "7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30" +
  1296. "88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30" +
  1297. "93 30 30 00 30 00 36 00 38 00 32 00 01 42 30 44" +
  1298. "30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53" +
  1299. "30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64" +
  1300. "30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F" +
  1301. "30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81" +
  1302. "30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C" +
  1303. "30 8D 30 8F 30 92 30 93 30 30 00 30 00 36 00 39" +
  1304. "00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B 30" +
  1305. "4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30" +
  1306. "5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30" +
  1307. "6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30" +
  1308. "7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30" +
  1309. "89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30" +
  1310. "30 00 30 00 37 00 30 00 32 00 01 42 30 44 30 46" +
  1311. "30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55" +
  1312. "30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66" +
  1313. "30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72" +
  1314. "30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82" +
  1315. "30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D" +
  1316. "30 8F 30 92 30 93 30 30 00 30 00 37 00 31 00 32" +
  1317. "00 01 42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30" +
  1318. "4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D 30" +
  1319. "5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30" +
  1320. "6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30" +
  1321. "7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89 30" +
  1322. "8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00" +
  1323. "30 00 37 00 32 00 32 00 01 42 30 44 30 46 30 48" +
  1324. "30 4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57" +
  1325. "30 59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68" +
  1326. "30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75" +
  1327. "30 78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84" +
  1328. "30 86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F" +
  1329. "30 92 30 93 30 30 00 30 00 37 00 33 00 32 00 01" +
  1330. "42 30 44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30" +
  1331. "51 30 53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30" +
  1332. "61 30 64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30" +
  1333. "6E 30 6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30" +
  1334. "80 30 81 30 82 30 84 30 86 30 88 30 89 30 8A 30" +
  1335. "8B 30 8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00" +
  1336. "37 00 34 00 32 00 01 42 30 44 30 46 30 48 30 4A" +
  1337. "30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30 59" +
  1338. "30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A" +
  1339. "30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78" +
  1340. "30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30 86" +
  1341. "30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92" +
  1342. "30 93 30 30 00 30 00 37 00 35 00 32 00 01 42 30" +
  1343. "44 30 46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30" +
  1344. "53 30 55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30" +
  1345. "64 30 66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30" +
  1346. "6F 30 72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30" +
  1347. "81 30 82 30 84 30 86 30 88 30 89 30 8A 30 8B 30" +
  1348. "8C 30 8D 30 8F 30 92 30 93 30 30 00 30 00 37 00" +
  1349. "36 00 32 00 01 42 30 44 30 46 30 48 30 4A 30 4B" +
  1350. "30 4D 30 4F 30 51 30 53 30 55 30 57 30 59 30 5B" +
  1351. "30 5D 30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B" +
  1352. "30 6C 30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B" +
  1353. "30 7E 30 7F 30 80 30 81 30 82 30 84 30 86 30 88" +
  1354. "30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93" +
  1355. "30 30 00 30 00 37 00 37 00 32 00 01 42 30 44 30" +
  1356. "46 30 48 30 4A 30 4B 30 4D 30 4F 30 51 30 53 30" +
  1357. "55 30 57 30 59 30 5B 30 5D 30 5F 30 61 30 64 30" +
  1358. "66 30 68 30 6A 30 6B 30 6C 30 6D 30 6E 30 6F 30" +
  1359. "72 30 75 30 78 30 7B 30 7E 30 7F 30 80 30 81 30" +
  1360. "82 30 84 30 86 30 88 30 89 30 8A 30 8B 30 8C 30" +
  1361. "8D 30 8F 30 92 30 93 30 30 00 30 00 37 00 38 00" +
  1362. "18 00 05 96 00 00 00 17 53 77 6D 53 90 52 97 EE" +
  1363. "68 0C 77 A9 5C 4B 62 0C 77 8F 79 F6 5C 0C 77 03" +
  1364. "68 28 67 0C 77 FC 57 89 73 0C 77 71 67 AC 4E FD" +
  1365. "90 43 53 49 84 0C 77 01 00 92 00 05 00 35 00 08" +
  1366. "00 2C 00 2C 00 DB 30 C3 30 AB 30 A4 30 C9 30 A6" +
  1367. "30 A2 30 AA 30 E2 30 EA 30 B1 30 F3 30 A4 30 EF" +
  1368. "30 C6 30 B1 30 F3 30 D5 30 AF 30 B7 30 DE 30 B1" +
  1369. "30 F3 30 C8 30 C1 30 AE 30 B1 30 F3 30 B5 30 A4" +
  1370. "30 BF 30 DE 30 B1 30 F3 30 C8 30 A6 30 AD 30 E7" +
  1371. "30 A6 30 C8 30 C1 30 D0 30 B1 30 F3 30 00 00 00" +
  1372. "00 03 00 06 00 03 00 03 00 0C 00 06 00 03 00 11" +
  1373. "00 09 00 03 00 17 " +
  1374. //Offset=0x00002636(9782) recno=72 sid=0x003C size=0x010D(269)
  1375. " 3C 00 0D 01 00 0C 00 03 00 1C" +
  1376. "00 0F 00 03 00 22 00 12 00 03 00 28 00 15 00 03" +
  1377. "00 32 00 05 10 00 00 00 42 30 44 30 46 30 48 30" +
  1378. "4A 30 4B 30 4D 30 4F 30 51 30 53 30 55 30 57 30" +
  1379. "59 30 5B 30 5D 30 5F 30 61 30 64 30 66 30 68 30" +
  1380. "6A 30 6B 30 6C 30 6D 30 6E 30 6F 30 72 30 75 30" +
  1381. "78 30 7B 30 7E 30 7F 30 80 30 81 30 82 30 84 30" +
  1382. "86 30 88 30 89 30 8A 30 8B 30 8C 30 8D 30 8F 30" +
  1383. "92 30 93 30 30 00 30 00 37 00 39 00 01 00 0C 00" +
  1384. "05 00 35 00 00 00 00 00 00 00 00 00 32 00 05 10" +
  1385. "00 00 00 42 30 44 30 46 30 48 30 4A 30 4B 30 4D" +
  1386. "30 4F 30 51 30 53 30 55 30 57 30 59 30 5B 30 5D" +
  1387. "30 5F 30 61 30 64 30 66 30 68 30 6A 30 6B 30 6C" +
  1388. "30 6D 30 6E 30 6F 30 72 30 75 30 78 30 7B 30 7E" +
  1389. "30 7F 30 80 30 81 30 82 30 84 30 86 30 88 30 89" +
  1390. "30 8A 30 8B 30 8C 30 8D 30 8F 30 92 30 93 30 30" +
  1391. "00 30 00 38 00 30 00 01 00 0C 00 05 00 35 00 00" +
  1392. "00 00 00 00 00 4B 30 ";
  1393. /**
  1394. * deep comparison of two SST records
  1395. */
  1396. public static void assertEquals(SSTRecord expected, SSTRecord actual){
  1397. assertEquals("number of strings", expected.getNumStrings(), actual.getNumStrings());
  1398. assertEquals("number of unique strings", expected.getNumUniqueStrings(), actual.getNumUniqueStrings());
  1399. assertEquals("count of strings", expected.countStrings(), actual.countStrings());
  1400. for ( int k = 0; k < expected.countStrings(); k++ ) {
  1401. org.apache.poi.hssf.record.common.UnicodeString us1 = expected.getString(k);
  1402. org.apache.poi.hssf.record.common.UnicodeString us2 = actual.getString(k);
  1403. assertTrue("String at idx=" + k, us1.equals(us2));
  1404. }
  1405. }
  1406. public void test50779_1(){
  1407. byte[] bytes = HexRead.readFromString(data_50779_1);
  1408. RecordInputStream in = TestcaseRecordInputStream.create(bytes);
  1409. assertEquals(SSTRecord.sid, in.getSid());
  1410. SSTRecord src = new SSTRecord(in);
  1411. assertEquals(81, src.getNumStrings());
  1412. byte[] serialized = src.serialize();
  1413. in = TestcaseRecordInputStream.create(serialized);
  1414. assertEquals(SSTRecord.sid, in.getSid());
  1415. SSTRecord dst = new SSTRecord(in);
  1416. assertEquals(81, dst.getNumStrings());
  1417. assertEquals(src, dst);
  1418. }
  1419. public void test50779_2() {
  1420. byte[] bytes = HexRead.readFromString(data_50779_2);
  1421. RecordInputStream in = TestcaseRecordInputStream.create(bytes);
  1422. assertEquals(SSTRecord.sid, in.getSid());
  1423. SSTRecord src = new SSTRecord(in);
  1424. assertEquals(81, src.getNumStrings());
  1425. byte[] serialized = src.serialize();
  1426. in = TestcaseRecordInputStream.create(serialized);
  1427. assertEquals(SSTRecord.sid, in.getSid());
  1428. SSTRecord dst = new SSTRecord(in);
  1429. assertEquals(81, dst.getNumStrings());
  1430. assertEquals(src, dst);
  1431. }
  1432. }