-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtests.cpp
More file actions
911 lines (848 loc) · 235 KB
/
tests.cpp
File metadata and controls
911 lines (848 loc) · 235 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
#include "doctest.h"
#include <vector>
#include "hexfile.h"
#include <algorithm> //std::remove
#define FLASH_HEX_FILE "/home/yoctouser/mcbootflash-cpp/mcbootflash/tests/testcases/flash/test.hex"
#define FLASH_HEX_FILE_VITIAPP "/home/yoctouser/mcbootflash-cpp/mcbootflash/tests/testcases/flash/VitiAppDelivery.X.production.hex"
#define FLASH_HEX_FILE_INERTIEL "/home/yoctouser/mcbootflash-cpp/mcbootflash/tests/testcases/flash/VR_Inertiel_PIC24FJ64GP202_V100.X.production.hex"
#define FLASH_HEX_FILE_UMTS "/home/yoctouser/mcbootflash-cpp/mcbootflash/tests/testcases/flash/VR_UMTS_pic24fj64gp202.X.production.hex"
#define FLASH_HEX_FILE_XDB_UMTS "/home/yoctouser/mcbootflash-cpp/mcbootflash/tests/testcases/flash/xdbVR_UMTS_pic24fj64gp202.X.production.hex"
BootAttrs defaultBootAttrsForTest()
{
BootAttrs bootattrs;
bootattrs.version = 258,
bootattrs.max_packet_length = 256,
bootattrs.device_id = 13398,
bootattrs.erase_size = 2048,
bootattrs.write_size = 8,
bootattrs.memory_start = 6144;
bootattrs.memory_end = 174080;
bootattrs.has_checksum = true;
return bootattrs;
}
std::vector<Segment> debugSegmentsFromPython()
{
return std::vector<Segment>{
Segment(0, 16, hexStringToBytes("e01a040000000000041a0000081a0000"), 1),
Segment(16, 32, hexStringToBytes("0c1a0000101a0000141a0000181a0000"), 1),
Segment(32, 48, hexStringToBytes("1c1a0000001a0000201a0000241a0000"), 1),
Segment(48, 64, hexStringToBytes("281a00002c1a0000301a0000341a0000"), 1),
Segment(64, 80, hexStringToBytes("381a00003c1a0000401a0000441a0000"), 1),
Segment(80, 96, hexStringToBytes("481a00004c1a0000501a0000541a0000"), 1),
Segment(96, 112, hexStringToBytes("581a0000001a00005c1a0000601a0000"), 1),
Segment(112, 128, hexStringToBytes("641a0000681a00006c1a0000001a0000"), 1),
Segment(128, 144, hexStringToBytes("001a0000001a0000701a0000741a0000"), 1),
Segment(144, 160, hexStringToBytes("781a00007c1a0000801a0000841a0000"), 1),
Segment(160, 176, hexStringToBytes("881a00008c1a0000901a0000941a0000"), 1),
Segment(176, 192, hexStringToBytes("001a0000001a0000981a00009c1a0000"), 1),
Segment(192, 208, hexStringToBytes("a01a0000001a0000001a0000001a0000"), 1),
Segment(208, 224, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(224, 240, hexStringToBytes("001a0000001a0000001a0000a41a0000"), 1),
Segment(240, 256, hexStringToBytes("a81a0000001a0000001a0000001a0000"), 1),
Segment(256, 272, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(272, 288, hexStringToBytes("ac1a0000001a0000001a0000001a0000"), 1),
Segment(288, 304, hexStringToBytes("001a0000001a0000001a0000b01a0000"), 1),
Segment(304, 320, hexStringToBytes("b41a0000b81a0000001a0000001a0000"), 1),
Segment(320, 336, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(336, 352, hexStringToBytes("001a0000001a0000001a0000bc1a0000"), 1),
Segment(352, 368, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(368, 384, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(384, 400, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(400, 416, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(416, 432, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(432, 448, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(448, 464, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(464, 480, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(480, 496, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(496, 512, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(512, 528, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(528, 544, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(544, 560, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(560, 576, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(576, 592, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(592, 608, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(608, 624, hexStringToBytes("c01a0000c41a0000001a0000c81a0000"), 1),
Segment(624, 640, hexStringToBytes("cc1a0000d01a0000d41a0000d81a0000"), 1),
Segment(640, 656, hexStringToBytes("dc1a0000001a0000001a0000001a0000"), 1),
Segment(656, 672, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(672, 688, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(688, 704, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(704, 720, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(720, 736, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(736, 752, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(752, 768, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(768, 784, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(784, 800, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(800, 816, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(816, 832, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(832, 848, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(848, 864, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(864, 880, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(880, 896, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(896, 912, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(912, 928, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(928, 944, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(944, 960, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(960, 976, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(976, 992, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(992, 1008, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(1008, 1024, hexStringToBytes("001a0000001a0000001a0000001a0000"), 1),
Segment(12288, 12304, hexStringToBytes("e01a0400000000000200fa00000f7800"), 1),
Segment(12304, 12320, hexStringToBytes("1e00780000407800674060000080fb00"), 1),
Segment(12320, 12336, hexStringToBytes("670060004a00dd00020a8000f13f2e00"), 1),
Segment(12336, 12352, hexStringToBytes("8100610001007000000a88000080fa00"), 1),
Segment(12352, 12368, hexStringToBytes("000006000200fa00000f78001e007800"), 1),
Segment(12368, 12384, hexStringToBytes("00407800674060000080fb0067006000"), 1),
Segment(12384, 12400, hexStringToBytes("020a800081ff2f008100610001007000"), 1),
Segment(12400, 12416, hexStringToBytes("000a88000080fa00000006000000fa00"), 1),
Segment(12416, 12432, hexStringToBytes("4301a8000080fa00000006000000fa00"), 1),
Segment(12432, 12448, hexStringToBytes("0028a9000080fa00000006000200fa00"), 1),
Segment(12448, 12464, hexStringToBytes("000f78001e0078000040780067406000"), 1),
Segment(12464, 12480, hexStringToBytes("0080fb00670060004a00dd00420a8000"), 1),
Segment(12480, 12496, hexStringToBytes("f13f2e008100610001007000400a8800"), 1),
Segment(12496, 12512, hexStringToBytes("0080fa00000006000200fa00000f7800"), 1),
Segment(12512, 12528, hexStringToBytes("1e00780000407800674060000080fb00"), 1),
Segment(12528, 12544, hexStringToBytes("67006000420a800081ff2f0081006100"), 1),
Segment(12544, 12560, hexStringToBytes("01007000400a88000080fa0000000600"), 1),
Segment(12560, 12576, hexStringToBytes("0000fa004b01a8000080fa0000000600"), 1),
Segment(12576, 12592, hexStringToBytes("0200fa00000f78001e00780000407800"), 1),
Segment(12592, 12608, hexStringToBytes("674060000080fb00670060004a00dd00"), 1),
Segment(12608, 12624, hexStringToBytes("820a8000f13f2e008100610001007000"), 1),
Segment(12624, 12640, hexStringToBytes("800a88000080fa00000006000200fa00"), 1),
Segment(12640, 12656, hexStringToBytes("000f78001e0078000040780067406000"), 1),
Segment(12656, 12672, hexStringToBytes("0080fb0067006000820a800081ff2f00"), 1),
Segment(12672, 12688, hexStringToBytes("8100610001007000800a88000080fa00"), 1),
Segment(12688, 12704, hexStringToBytes("000006000000fa005301a8000080fa00"), 1),
Segment(12704, 12720, hexStringToBytes("000006000000fa0004a8a9000080fa00"), 1),
Segment(12720, 12736, hexStringToBytes("000006000200fa00000f78001e007800"), 1),
Segment(12736, 12752, hexStringToBytes("00407800674060000080fb0067006000"), 1),
Segment(12752, 12768, hexStringToBytes("4a00dd00c20a8000f13f2e0081006100"), 1),
Segment(12768, 12784, hexStringToBytes("01007000c00a88000080fa0000000600"), 1),
Segment(12784, 12800, hexStringToBytes("0200fa00000f78001e00780000407800"), 1),
Segment(12800, 12816, hexStringToBytes("674060000080fb0067006000c20a8000"), 1),
Segment(12816, 12832, hexStringToBytes("81ff2f008100610001007000c00a8800"), 1),
Segment(12832, 12848, hexStringToBytes("0080fa00000006000000fa005b01a800"), 1),
Segment(12848, 12864, hexStringToBytes("0080fa00000006000600fa00004f7800"), 1),
Segment(12864, 12880, hexStringToBytes("1147980012079800230798001e80fb00"), 1),
Segment(12880, 12896, hexStringToBytes("a1b9260000804000104078000074a100"), 1),
Segment(12896, 12912, hexStringToBytes("8080fb00f00720000080600072358000"), 1),
Segment(12912, 12928, hexStringToBytes("01f82f00810061000100700070358800"), 1),
Segment(12928, 12944, hexStringToBytes("1e4090000080fb00a1b9260000804000"), 1),
Segment(12944, 12960, hexStringToBytes("104078000074a1008080fb00f0072000"), 1),
Segment(12960, 12976, hexStringToBytes("008060008235800001f82f0081006100"), 1),
Segment(12976, 12992, hexStringToBytes("01007000803588003048070093480700"), 1),
Segment(12992, 13008, hexStringToBytes("f648070060470700700020004eff0700"), 1),
Segment(13008, 13024, hexStringToBytes("7000200071ff07007000200090ff0700"), 1),
Segment(13024, 13040, hexStringToBytes("70002000b3ff070064ff070088ff0700"), 1),
Segment(13040, 13056, hexStringToBytes("a8ff0700ccff070064ff0700a9ff0700"), 1),
Segment(13056, 13072, hexStringToBytes("1e0090004fff07001e00900072ff0700"), 1),
Segment(13072, 13088, hexStringToBytes("2e00900091ff07002e009000b4ff0700"), 1),
Segment(13088, 13104, hexStringToBytes("50480700b34807001649070080470700"), 1),
Segment(13104, 13120, hexStringToBytes("0080fa00000006000200fa00fb420700"), 1),
Segment(13120, 13136, hexStringToBytes("004f7800054d07001021a8001e407800"), 1),
Segment(13136, 13152, hexStringToBytes("e44f500002003a00b24b070016410700"), 1),
Segment(13152, 13168, hexStringToBytes("1e80fb00a1b926000080400010407800"), 1),
Segment(13168, 13184, hexStringToBytes("0074a1008080fb00f007200000806000"), 1),
Segment(13184, 13200, hexStringToBytes("3235800001f82f008100610001007000"), 1),
Segment(13200, 13216, hexStringToBytes("303588000b4d070010c0b3000080fa00"), 1),
Segment(13216, 13232, hexStringToBytes("000006000000fa00024d070006430700"), 1),
Segment(13232, 13248, hexStringToBytes("10c0b3000080fa0000000600f03fb100"), 1),
Segment(13248, 13264, hexStringToBytes("0180b10006003500ee03090000000000"), 1),
Segment(13264, 13280, hexStringToBytes("403fb1000180b100fbff3d001000b000"), 1),
Segment(13280, 13296, hexStringToBytes("203fb000020035000080090000000000"), 1),
Segment(13296, 13304, hexStringToBytes("00000600ffff3700"), 1)};
}
std::vector<Segment> chunkSegmentsVitiAppFromPython()
{
return std::vector<Segment>{
Segment(16384, 16624, hexStringToBytes("16200400000000000000000002000000000000000200000002000000040000000000000000000000000000004f8220000e7f22000e01880000000000000020000000e00002003200000120002002880014000700e40007000000e00003003a00403f220001002000020037000000200001002000810f70000100320014000700000020000000e000020032000000020000000000f6210200000000000040da000000fe004440a900200020000000e0000300320010002000900188004440a800000006008a1f78008b1f780000000600a1028800800478000000eb001f003700e284440054a0b4009905ba00e2844400"), 2),
Segment(16624, 16864, hexStringToBytes("54a0b4009906ba00e284440054a0b4000006eb00476fde00fd07b200ae018800636ce10003003a00eaff07000000eb000e003700606ce10008003a00004deb000a05e800020039003420ec000af0a0008b05e900f9ff3e00040037006168e100010032000086eb000b00070019c7ba001905ba000e04e00003003a000a00e000dbff3a0000000600fe07b200ae0288008a047800f5ff37000cd0a300e20f4d001c00390089027800354dba000a05e800020039003420ec000af0a0008b05e9000f003200254dba000a05e800020039003420ec000af0a0008b05e900080032000c00e0000600320015cdba000a05e800"), 2),
Segment(16864, 17104, hexStringToBytes("020039003420ec000af0a0008b05e9008984e80054a0b4000b00e000e2ff3a00000006009902ba00055d78008b05e900f7ff3200c82ade00055d78008b05e900f3ff32000c00e000f1ff320019ddba00eeff37003600f800809fbe00829fbe00849fbe00869fbe000000fa008020a9000000eb00580107000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa004f0107008040a90010002000470107000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00"), 2),
Segment(17104, 17344, hexStringToBytes("8060a90020002000370107000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008080a90030002000270107000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008600a90070002000170107000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa0085e0a90080002000070107000080fa004f03be004f02be004f01be004f00be003600f90000400600801f78000000fa00"), 2),
Segment(17344, 17584, hexStringToBytes("50048000680060000000e000010032008a60a9000080fa004f007800004006000040da000000fe00000005000000fa00100107009d000700feff3700ffff3700f0210400000000000000fa0080002000c01c88009a23ef0070062000001d880099e3a8009b43a8000080fa00000006000000fa0000000000d01c8000610060000000e000fcff3200d01c8000620060000000e000010032009a23a900f01c8000004078000080fa00000006000200fa00004f780000000000d11c800000202000008060000000e000fbff3a001e80fb00e01c88000080fa00000006000000fa00d01c800000407800614060000080fb00"), 2),
Segment(17584, 17824, hexStringToBytes("00f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00d11c800000202000008060000000e00007003a00d11c800000402000008060000000e0000200320010002000010037000000eb00004078000080fa00000006000000fa00d01c80004800de00614060000080fb0000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00d01c80000080fa00000006000000fa0099e3a8009b43a8000080fa00000006000000fa0099e3a9009b43a9000080fa00000006000000fa006626ef0000402200d033880070f9270010338800f0bd2f00b03388007426ef008826ef00"), 2),
Segment(17824, 18064, hexStringToBytes("7226ef008626ef007426ef008826ef0000002100903388008626ef006826ef007c26ef007000200050338800c0212f00f033880001088000f00b200000816000600420007105200003102000804978008149780082497800a13d800000fc2f00008060000030a000a03d8800f13e800000f82f00008060003000b300f03e880000088000000178000260a0006004200071052000031020008049780081497800824978000080fa00000006000000fa007aa6a8000080fa00000006000000fa007aa6a9000080fa00000006000000fa0000202100a10720004100070002c8bf000004e0001b003200f0ff070080062000"), 2),
Segment(18064, 18304, hexStringToBytes("76ff07005006200074ff0700c006200072ff0700c006200070ff0700f00620006eff0700000220006cff0700300620006aff07001006200068ff07002007200066ff0700c006200064ff0700a000200062ff0700d000200060ff07000268ef0003003700d9ff070010c0b30002e8b7000080fa00000006000000fa0000002300100888000621ef006821ef006a21ef000c21ef000e21ef007821ef007c21ef007e21ef008021ef008421ef008621ef000001eb0080072000a1092000131020008049780081497800824978000001eb006004200071052000031020008049780081497800824978000080fa0000000600"), 2),
Segment(18304, 18544, hexStringToBytes("f03fb1000180b10006003500ee03090000000000403fb1000180b100fbff3d001000b000203fb000020035000080090000000000000006000200fa00000f78009e00780001408800ffff37000000fa004080200080077800c0812000000188000080fa0000000600040800002000000080000000000800000200000082000000ffff0000020800000200000080000000000000000000fa0081058000f0ff28000080600000c0a000800588000080fa00000006000000fa004fff0700f5ff0700b1ff0700f0fe07000080fa0000000600"), 2),
Segment(89600, 89840, hexStringToBytes("ffffff0000000000"), 2),
Segment(89632, 89872, hexStringToBytes("ffffff0000000000"), 2),
Segment(89648, 89888, hexStringToBytes("78ffff0000000000"), 2),
Segment(89656, 89896, hexStringToBytes("b7ffff0000000000"), 2),
Segment(89664, 89904, hexStringToBytes("9fffff0000000000"), 2),
Segment(89672, 89912, hexStringToBytes("ffffff0000000000"), 2),
Segment(89680, 89920, hexStringToBytes("dfffff0000000000"), 2),
Segment(89688, 89928, hexStringToBytes("0000ff0000000000"), 2),
Segment(89696, 89936, hexStringToBytes("0000ff0000000000"), 2),
Segment(89704, 89944, hexStringToBytes("0000ff0000000000"), 2),
Segment(89712, 89952, hexStringToBytes("0000ff0000000000"), 2),
Segment(89720, 89960, hexStringToBytes("ffffff0000000000"), 2),
Segment(89728, 89968, hexStringToBytes("ffffff0000000000"), 2)};
}
std::vector<Segment> chunkSegmentsInertielFromPython()
{
return std::vector<Segment>{
Segment(16384, 16624, hexStringToBytes("f0220400000000000000000002000000000000000200000002000000040000000000000000000000000000000400fa00204798000040eb00004f78002e419000518220008248780025c8bf000041eb0071c0b3006a07070025c8bf000041eb00d1c3b3006607070025c8bf008040eb008707070021e8b700118220009140780000cab30080cf5000020032000040eb000a00370010c0b30020e8b70009000700004f78001e4078000004e0000200320020c0b3000100370010c0b3000080fa00000006000200fa005182200091407800014f7800f46aef0011c0b3001e4078006b070700e54f400003003a00f4cabf00"), 2),
Segment(16624, 16864, hexStringToBytes("0040e800f4eab70021c0b3001e4078006307070021c3b300814f500003003a00f4cabf0000c0e800f4eab70031c0b3001e4078005a070700ef4f500003003a00f4cabf0064404000f4eab700f4cabf00e74f500002003200f4cabf00260037000041eb00e1c3b3001e407800280707000041eb00b1c3b3001e4078002407070012c0b30071c0b3001e4078002007070042c0b30081c0b3001e4078001c07070022c2b300a1c0b3001e407800180707000041eb00b1c0b3001e40780014070700c2c1b30091c0b3001e407800100707000041eb0071c0b3001e4078000c07070072c0b300d1c3b3001e40780008070700"), 2),
Segment(16864, 17104, hexStringToBytes("0060fe000040eb000080fa00000006000000fa00881f7800d706070025c8bf008040eb00f206070080c0b300e4060700d706070025c8bf0011c0b300ec06070010c0b300050707000044780010c0b3000207070013c0b300084178008040780080822000ce19070010c0b300fb0607000044780010c0b300f806070013c0b300084178008040780020842000c419070010c0b300f10607000044780010c0b300ee06070013c0b3000841780080407800c0852000ba19070010c0b300e70607000044780010c0b300e406070013c0b3000841780080407800408f2000b019070010c0b300dd0607000044780010c0b300"), 2),
Segment(17104, 17344, hexStringToBytes("da06070013c0b3000841780080407800e0902000a619070010c0b300d30607000044780010c0b300d006070013c0b3000841780080407800809220009c19070010c0b300c90607000044780010c0b300c606070013c0b3000841780080407800e08820009219070010c0b300bf0607000044780010c0b300bc06070013c0b3000841780080407800808a20008819070010c0b300b5060700004478000040eb00b206070013c0b3000841780080407800208c20007e1907007f0607007206070025c8bf008040eb008d06070040c3b3007f0607007206070025c8bf0011c0b300870607000040eb00a006070013c0b300"), 2),
Segment(17344, 17584, hexStringToBytes("004178008040eb00c09620006c1907006d0607004f0478000080fa00000006000000fa006105800080ff2f00008060000000a000600588000080fa0000000600742504000000000000240400000000004224040000000000822404000000000020240400000000006224040000000000a224040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000c224040000000000002204000000000000220400000000002825040000000000f2240400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17584, 17824, hexStringToBytes("002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17824, 18064, hexStringToBytes("00220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000efaf20000e7f22000e01880000000000000020000000e00002003200000120002002880014000700390107000000e00003003a0080f1250001002000020037000000200001002000810f70000100320014000700000020000000e0000200320000000200000000009a4a0200000000000040da000000fe004440a900200020000000e0000300320010002000900188004440a800000006008a1f78008b1f780000000600a1028800800478000000eb00"), 2),
Segment(18064, 18304, hexStringToBytes("1f003700e284440054a0b4009905ba00e284440054a0b4009906ba00e284440054a0b4000006eb00476fde00fd07b200ae018800636ce10003003a00eaff07000000eb000e003700606ce10008003a00004deb000a05e800020039003420ec000af0a0008b05e900f9ff3e00040037006168e100010032000086eb000b00070019c7ba001905ba000e04e00003003a000a00e000dbff3a0000000600fe07b200ae0288008a047800f5ff37000cd0a300e20f4d001c00390089027800354dba000a05e800020039003420ec000af0a0008b05e9000f003200254dba000a05e800020039003420ec000af0a0008b05e900"), 2),
Segment(18304, 18544, hexStringToBytes("080032000c00e0000600320015cdba000a05e800020039003420ec000af0a0008b05e9008984e80054a0b4000b00e000e2ff3a00000006009902ba00055d78008b05e900f7ff3200c82ade00055d78008b05e900f3ff32000c00e000f1ff320019ddba00eeff37000000000000000000000000000000000000000000000000003600f800809fbe00829fbe00849fbe00869fbe000000fa008020a9000000eb00141e07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa000b1e07008040a90010002000031e07000080fa004f03be00"), 2),
Segment(18544, 18784, hexStringToBytes("4f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008060a90020002000f31d07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008080a90030002000e31d07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008600a90070002000d31d07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa0085e0a900"), 2),
Segment(18784, 19024, hexStringToBytes("80002000c31d07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00605780000000e000020032006057800000000100efcabf000040e800efeab70010c0b300eeeab7008900a9000080fa004f03be004f02be004f01be004f00be003600f90000400600809fbe000000fa00f6cabf00ff4f50000800340000000000d11c800000102000008060000000e000fbff32009b43a9000a003700f6cabf008000fb00009b200000804000104078000080fb00e01c8800f6cabf000040e800f6eab7008980a9000080fa004f00be0000400600"), 2),
Segment(19024, 19264, hexStringToBytes("809fbe000400fa00d01c8000620060000000e000020032009a23a9001a003700d01c8000680060000000e00003003200f01c800020479800130037000000eb00000f7800080037009e00e80020ae2000008040009040780020ae20001e004000014878001e0fe8001e007800e70f5000f5ff3400f01c800000407800eaeab70010c0b300f7eab7008960a9000080fa004f00be00004006000040da000000fe0000000500839f68000100e00002003d0060001000e08018000300e00002003d0060011100e0811900420007004f00e00002003b0060001000e08018000000060014002000a0033700f4ff2f009e033700"), 2),
Segment(19264, 19504, hexStringToBytes("0001be00220007000470a70003f0a1006509b100160032000d0035006828e10006003500f0ff2f00f1ff27000300e00013003b00010028000000050000004000818048008502e900fcff3a0008003700f88f420002003c008000eb00000005008100d1000080d3008502e800fcff3a000300e00002003b0060001000e0801800000006004f89de008201780095033700c70ade00f107b200f50fb20008003200e1cf4200020032000170a00024000500810f7000010032000408050044000500810f700002003a00140005008502e9000000400081c04800fcff3b000170a000240005006022b800060220000000d000"), 2),
Segment(19504, 19744, hexStringToBytes("8180d2000482d2008582d2000000a0000202520083825a00030031000202420083824a000000a1000603e900f3ff3a000000060007f82700078361000638e10004003a00f7072000878361008703710001003a0003f0a200889fbe008a9fbe008c9fbe00470ade000480a100c71ade000580a100070028000785600087856100f70f20000720e1009e0032000728e1009c003200010678000400e000b4003200f7072000878060000170a0000500e000c0003200f7072000878161000370a000050652000f003a000b50e1000b0032000308e10002003a000200e1007e0032000204500083845800040031000001fd00"), 2),
Segment(19744, 19984, hexStringToBytes("8101fd008402fd008a05fd006044b800210037000520e10005003d000001fd008101fd008402fd008a05fd00050652007a60e100050035000170a1004722dd00848070008a807000630037006044b800ef02660007ff2f00070666000500e00006003400f08312008714dd000511de00071bdd00060171008519de007060e100050035000904780082047800030178008001eb00700656000b50e10003003a0002004000838048000400370060041400e0841c0002005800838058000188a300060032008100d1000080d3008984d3000884d3000402e800270037000178a30025003a000100e000030032008186cf00"), 2),
Segment(19984, 20224, hexStringToBytes("698656000a0037008c0020000000e00004003a0009007800880478000004eb00700252008086cf000d0646000c06e9007060e100060035008000780009007800880478000004eb0070065600700252000c00e0000c0034008c08dd00f00316000703de00868070000c00dd00074bde00060070008c4cdd000743de00868474000c44dd000c0252006120e10020003500610160000700280087816400f7ff270087836400070374000300e0000600320082037300040032000000e800e08048000188a3000e003a00f70f20000720e1004a003d000170a1004722dd00810072008a8070000000be004f06be004f05be00"), 2),
Segment(20224, 20464, hexStringToBytes("4f04be00000006006000b800faff37008100d1000080d3000402e800eeff37000401780089017400a10107008a807000f1ff3700f7010700070278000001fd008101fd00f301070087027800850372000778a300040032000001fd008101fd0006020700e4ff3700850362000768a300080032000b50e10003003200f0ff2f00f1ff2700dcff37000001fd008101fd00d9ff37000468a300d7ff3200faff3700f8ff2700888360000b003a000000e00009003a008303640082837300020032000200be00ccff37000b50e100ceff3a000200be00c8ff370014002000810064003eff3700f8ff27008883610004003a00"), 2),
Segment(20464, 20704, hexStringToBytes("0200e00002003a008c007800beff3700150020008301640039ff370001f827000000200081007500b7ff3700889fbe008a9fbe008c9fbe001b0020000202be000586680006002800060666004709de00f20fb200820032000243e80080003200c729de00f30fb2007d0032000343e8007b003200f107b2000170a000f507b2000570a000c708dd004903de00868070004700dd00c72add004923de00868272004722dd000305510004035000858358000300310000004000818048000a05e9008c1f78008a9fbe0004005000858058000402420085824a0000004000818048000005eb000004be006033b8000406be00"), 2),
Segment(20704, 20944, hexStringToBytes("0d48e10056003100110009004dccd8000c01b8000d02b8008481410060824a008283530003045c0084845c0060055d000a00e00025003a00800578000d40e100490031008800780007007800110009004d88d8000c01b8000d02b8008481410060824a006003110083835b0004045c00e0845c000900e00021003a004f01be000300e0002b003200e3016000070673008c81710001003200640070004200de004e5edd000c007000c258de0001e0a00083010700cf017800818071004f06be004f05be004f04be00000006008c8343000d044c00e0844c0060054d000000e9000a00e000d4ff32008c8343000d044c00"), 2),
Segment(20944, 21184, hexStringToBytes("e0844c0060054d000000e900ceff37000c0343008d834b0060044c00e0844c000000e9000900e000d8ff32000c0343008d834b0060044c00e0844c000000e900d2ff37004200de004e5edd000c007000c258de0001e0a000cf0178000300e000daff320060001000e0801800d7ff3700f0ff2f00aaff3700f0ff2f00b9ff37000404be002f010700870678000004fd008104fd002b010700078366000678a300030032000960a7000800be002c0037000d78a300020032000800be00280037000778a30026003a0001f0a10009f0a1000668a30003003200f1ff2700f0ff2f00baff37000d68a300030032000800be00"), 2),
Segment(21184, 21424, hexStringToBytes("8c807000b5ff37000768a30007003a000648a30003003200f1ff2700f0ff2f00aeff37000d48a300030032006000b8008c807000a9ff37000748a3000400320001f82700000020008c807000a3ff3700760107000004fd008104fd0002057800720107000802be008a01780059ff37000160a00012022000c257880097ff37000100e000120032000500e00010003200889fbe008a9fbe008c9fbe000006eb0001f8a3000300320060001000e08018000cf0a00005f8a3000300320060021200e0821a000cf0a2008005eb0041ff37006000b80002000500038368000700280007036300470ade000480a100c71ade00"), 2),
Segment(21424, 21664, hexStringToBytes("0580a100f70f20000720e100420032000728e10040003200889fbe008a9fbe008c1f7800f107b200f307b2000400e000640032000170a0000500e000680032000370a00085054200eb07b1000204b8000302b8008484440060854a00020ab800848444000a854a00030ab80004054500040033000804d0008984d2000a85d2008b05e9006158e1003d00350002102000090161000308200089816100f70720008783640008867300c84cde00c853dd00878474004855de000300e0000600320082037600040032008904e80060054d000a88a3000c003a00f70f20000758e10044003d000a70a100c75ddd000a857500"), 2),
Segment(21664, 21904, hexStringToBytes("8a007300090078004f0678004f05be004f04be00000006000a05d1008984d3008b05e800f0ff3700881f78000604780090000700070278000001fd008101fd008c00070087027800850372000778a300050032000001fd008101fd009f0007004f04780000000600850372000748a30003003200f0ff2f00f1ff2700f8ff37000000200001f8270088807000f4ff3700880178004848dd00808171004848de00c850dd0001007000c850de00060478000b0178001600070088807000d2ff37000500e00005003200170020003a0007009dff370081037000f9ff3a00860078004f0678004f05be004f04be0000000500"), 2),
Segment(21904, 22144, hexStringToBytes("83037100f9ff3200270020002e00070094ff370001f8270086807000f4ff37000100e00026003200610111007810e10023003c006022b8007010e1000400350080027800010078008000eb00700151000200e0000900340070031100062add00822ade008603dd00878272000200de00860bdd00070070008208de0084817100f4ff2700048262008481710004002800848262006102600005f0a6000000060004827100070032000000e800e0804800000006000002be006000b800efff37006000b80000000600889fbe000004eb006138e10016003a000100e00008003a00c800de004800dd00880020000100e000"), 2),
Segment(22144, 22384, hexStringToBytes("03003a00c800de004800dd00680444008184cf00e9845400060034008908dd00f08314008703de00878070000900dd0009044400610214004f04be00000006000300e00008003a00c811de004811dd00880020000300e00003003a00c811de004811dd00680444008384cf00e9845400060034008919dd00f08314008713de00878171000911dd0009044400e1021400e9ff37002700200001f0a70017002000470bde00f60fb200040032000643e8000a0032004702b3000000060001037800f607b2000603700002003a000703b300000006008702b3000000060001037800f607b20006037000020032000770a000"), 2),
Segment(22384, 22624, hexStringToBytes("000006000760a000000006000478a300040032000578a300030032000168a30001003a000200be000160a0000000060081017000270032008002eb0001f8a3000300320060001000e080180015002000f40720000202420020003400f703200087036000060420000003630002082000000161004700de00c909dd0000807100c708de000600e0000800320087037100060032001000b0000180b0000188a30002003200c108de000402e800f107b200f30f20000320e10003003d004722dd00810072002900370001f827000000eb00260037006000b80000000600680212007f20e100020034006000b8001f003700"), 2),
Segment(22624, 22864, hexStringToBytes("6011b8007020e1000400350080017800010078008000eb00700252000400e00009003400f00312000719dd008419de000703dd00868171000400de00070bdd00060070008408de00f7ff270083836300870371000600280003036300070032000700e00003003a006101600002817300020032001000b0000180b0000500a6000000060001f0a000000006004f0ade004709de00f107b200f20fb2000b003200f207b1000170a000c708dd00c901de00838070004700dd000400a6000000060060001000e080180000000600810f700001003a00000006008182cf000500e00010003e008082cf00ee8242007028e100"), 2),
Segment(22864, 23104, hexStringToBytes("0400390007003e00800078000000eb000e003700708312008600de000500dd000a003700708352008600dd000000eb0006003700e28252008508dd00708312000603de00868070000500dd007507b0000501ea000400a6000000060060001000e080180000000600889fbe008a9fbe00841f78007c0007004f00780011003300f0ff2f00838f6c0006003b00040565000a00a7000800370009f0a6001000200008003700820f5400838f5c00030039001000200001003e000000200009f0a7000000ea004f05be004f04be000000e00000000600881f7800030478000300e00007003d0060001000e080180060011900"), 2),
Segment(23104, 23344, hexStringToBytes("e081190002003b0001f02d00030037000400070008f0a70001f0a0004f04780000000600889fbe008a9fbe00008270000402710004827100260032000004be000200be006011b8006b092000950220000182cf000a0039000541b1000082cf00070039000541b1000982cf00040039000541b1000882cf00010039000541b10005425200120032000a003b0082817100610164008100d1000080d3008984d3000884d3008b05e8000442e800f7ff3a00070037000804440089844c0000004800818048008b05e9000442e900f9ff3a00030007004f05be004f04be000000060081002000618055000b003d000b002000"), 2),
Segment(23344, 23584, hexStringToBytes("61fe2f000100e1001d00340082817100610164008904d1000884d3000000e800faff3a00710020006100640003007000020060000900320061044400e0844c000988a500050032008b05e8006808e10002003a008904d1000884d300f20f20000258e10005003d00c75ddd00f907b2008980750008007800000006000bf827008b007800000005000004be0004fc07000003be000405be000200be0000fc0700844f750000000600889fbe00020478000002be004709de0003002000f20fb200f207b100f60f51000f003400008cbe0003082000830f510007003a004909dd00c701de00830171004901dd00e00f5100"), 2),
Segment(23584, 23824, hexStringToBytes("e08f590025003a00020020000300280085806100190037000200e00006003d0006002000070028008581630006017800028cbe0019003700f6ff2f00f70720000201e900030033008783d1000683d300fbff3700050278008701620006016000e00f5100e08f590006003a00008cbe0002002000030028008300620002007800060037000683ea008783ea008701620006016000028cbe00eafb07004f04be00000006000000fa009e24ef0000002800d0248800e0042000c02488009a20a9000080fa00000006000000fa009a24ef000080fa00000006000000fa0050048000620060000000e0000e003a00e0cabf00"), 2),
Segment(23824, 24064, hexStringToBytes("0004e0000d00320000000000000000000000000000000000000000000000000000000000000000000000000000000000eeff37000000000001003700000000000080fa00000006000000fa008a20a9009a04a800e4ff07000080fa00000006000000fa008a20a9009a24a800deff07000080fa00000006000000fa008a20a9009a44a800d8ff07000080fa00000006000200fa00004f7800f0248000b05688008a20a9001e80fb00b0248800ceff0700f0248000c05688000080fa00000006000400fa0020479800314798002e40900000404000804078003e40900000cf40001e407800eaff07000080fa0000000600"), 2),
Segment(24064, 24304, hexStringToBytes("0400fa00004f78001147980022479800d1ff07008040eb001e407800ecff07001e409000deff07002e409000dcff0700d5ff07000080fa00000006000400fa00204798000040eb00004f78008a20a9009a64a800a8ff0700a0248000004f78008a20a9002e409000e14f500002003a009aa4a900010037009aa4a8009a84a8009dff07001e4078000080fa00000006000400fa002047980031479800aeff07008040eb002e409000c9ff07003e409000bbff0700aeff070011c0b3002e409000c3ff07000040eb00dcff0700004f7800adff07001e4078000080fa00000006000600fa00204798003147980042479800"), 2),
Segment(24304, 24544, hexStringToBytes("99ff07008040eb002e409000b4ff07003e409000a6ff070099ff070011c0b3002e409000aeff07000000eb00000f78000900370010c0b300c4ff0700c1ac20009e804000804878001e0fe8004e4090000040e900404798004e409000e14f5000f4ff3e000040eb00b8ff0700c1ac20009e8040008048780087ff07000080fa00000006000600fa00004f780011479800120798002307980073ff07008040eb001e4078008eff07001e40900080ff0700090037001e009000104078007cff07001e0090000000e800100798002e0090000000e900200798002e0090000000e000f4ff3c006cff07000080fa0000000600"), 2),
Segment(24544, 24784, hexStringToBytes("ffff370000000000"), 2),
Segment(24576, 24816, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(24816, 25056, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(25056, 25296, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(25296, 25536, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(25536, 25776, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(25776, 26016, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(26016, 26256, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(26256, 26496, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(26496, 26736, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(26736, 26976, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(26976, 27216, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(27216, 27456, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(27456, 27696, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(27696, 27936, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(27936, 28176, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(28176, 28416, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(28416, 28656, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(28656, 28896, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(28896, 29136, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(29136, 29376, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(29376, 29616, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(29616, 29856, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(29856, 30096, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(30096, 30336, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(30336, 30576, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(30576, 30816, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(30816, 31056, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(31056, 31296, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(31296, 31536, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(31536, 31776, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(31776, 32016, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(32016, 32256, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(32256, 32496, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(32496, 32736, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(32736, 32976, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(32976, 33216, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(33216, 33456, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(33456, 33696, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(33696, 33936, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(33936, 34176, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(34176, 34416, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(34416, 34656, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(34656, 34896, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(34896, 35136, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(35136, 35376, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(35376, 35616, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(35616, 35856, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(35856, 36096, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(36096, 36336, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(36336, 36576, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(36576, 36816, hexStringToBytes("000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"), 2),
Segment(36816, 37056, hexStringToBytes("0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000fa0083e0a80000000000000000000080fa00000006000000fa0083e0a90000000000000000000080fa00000006001000fa00889fbe00f7ff07000040eb00004f780008002400091020000800be00420a0700200798003107980050052000a10a2000c90907002e009000be009000f5090700004f78001e4078000004e000320032000000eb001007980010c0b300004f78000000eb0010079800280037001e009000800040006098200000804000100078008000eb004007980051079800"), 2),
Segment(37056, 37296, hexStringToBytes("1e0090000000e800800040006098200000804000100078008000eb0060079800710798001e84fb001e009000000040006101b9002e009000be00900002004000838048006e029000fe0290004e019000de019000da0907000080fb000000640000f0a7000000ea000000ea004f00de00004f78001e0090000080e800100798001e009000ef0f5000d5ff340094090700abff07001e4078004f04be000080fa00000006000a00fa00889fbe00aaff070008002400091020000800be00f709070010079800210798006000b80030079800410798000000eb00000f78000000eb00000f7800110037001e00780000004000"), 2),
Segment(37296, 37536, hexStringToBytes("6101b9001e009000ae0090000200400083804800930907003007980041079800be0090001e007800000140006098200000004100010878001e0fe8001e007800ef0f5000ecff340081ff07004f04be000080fa00000006000400fa00a50b07009a20a9009a00a900800880000040780068406000204798002e4090000004e00003003a0010c0b300dce9b70001003700dc69ef001027fc000060fe0000e924004c0a0700530a07009960a8009980a80099e3a8009b43a8006686a9000060fe0000402d0001032000700b07000060fe0000402d00010320006c0b07000060fe0000402d0001032000680b07000060fe00"), 2),
Segment(37536, 37776, hexStringToBytes("00402d0001032000640b07000060fe0000402d0001032000600b07000060fe0000402d00010320005c0b07000060fe0000402d0001032000580b07000060fe0000402d0001032000540b07000060fe0000402d0001032000500b07000060fe0000402d00010320004c0b07006686a8000060fe0000402d0001032000470b07000060fe0000402d0001032000430b07000060fe0000402d00010320003f0b07000060fe0000402d00010320003b0b07000060fe0000402d0001032000370b07000060fe0000402d0001032000330b07000060fe0000402d00010320002f0b07000060fe0000402d00010320002b0b0700"), 2),
Segment(37776, 38016, hexStringToBytes("0060fe0000402d0001032000270b07000060fe0000402d0001032000230b07006cff0700304c8000e10f50001000320010002000304c88000000eb00000f7800070037001e0078008000400060982000008040008000eb00010878001e0fe8001e007800ef0f5000f6ff340003003700404c80000000e800404c880008ff07001f070700580707002af2070000c0eb00e0eab70080c2b30000eb0700e14f500003003a0030c3b300a8e9b7001400370090c2b300f9ea0700e14f500003003a0040c3b300a8e9b7000d00370090c6b30075020700e14f500003003a0050c3b300a8e9b7000600370080c6b3006e020700"), 2),
Segment(38016, 38256, hexStringToBytes("e14f500002003a0060c3b300a8e9b70015f207000060fe0000402d0001032000e60a07007b26a900ac29ef00ae69ef00af69ef00d469ef00d629ef00d069ef000080eb00904e8800d869ef000080eb00d04e880000c2b300f6eab700326aef00342aef00dd69ef00de69ef00009e2000a299290093f1230041002000e9040700a09f2000a299290093f1230011002000e404070040a12000a299290093f1230021002000df0407000000fc000080fa00000006000800fa0033ff07000000eb00000f78002b0037006626a8000000eb00100798000000eb00200798000c0037001e0090000000e800100798009e009000"), 2),
Segment(38256, 38496, hexStringToBytes("f0cf2700808f5000f9ff36000000eb00100798002e0090000000e800200798002e009000e90f5000f4ff36006626a9000000eb00100798000000eb00300798000c0037001e0090000000e800100798009e009000f0cf2700808f5000f9ff36000000eb00100798003e0090000000e800300798003e009000e90f5000f4ff36001e0fe800300620009e007800808f5000d1ff36000500370000000000030037000000000001003700000000000060fe00d8c9bf00e14f500011003a00009e2000c7040700a09f2000c504070040a12000c30407009ff10700a0c0b300e0eab70020c8bf00e14f500002003a00e4ea0700"), 2),
Segment(38496, 38736, hexStringToBytes("01003700f80307009ff10700d869ef00d11c800000402000008060000000e00033003a00d0c9bf00e14f500010003a00dec9bf00614060000080fb0061006000c13380000100a10001007000c033880032cabf000040e80032eab7000060fe00f000200010010700d069ef0006003700d4c9bf00e14f500003003a001001200051010700d469ef00aec9bf000004e00008003200604d80000000e800604d8800604d80000000e00001003a000000fe00fa060700afc9bf000004e000baff32001d070700604d80000000e800604d8800614d8000b0032000808f5000b4ff360048070700b9060700af69ef00b3ff3700"), 2),
Segment(38736, 38976, hexStringToBytes("aac9bf00e14f500003003a006686a8000000fe00adff3700f7cabf00e14f5000a9ff3a0001000700a8ff37000000fa00f76aef0071ae20009140780040c5b30080cf50001c003a0061ae200091407800f0c4b30080cf500017003a0051ae200091407800f0c4b30080cf500012003a0041ae20009140780020c4b30080cf50000d003a0031ae20009140780050c4b30080cf500008003a0021ae20009140780020c5b30080cf500003003a0010c0b300aae9b700a100370071ae200091407800e0c4b30080cf50001c003a0061ae200091407800f0c4b30080cf500017003a0051ae20009140780010c3b30080cf5000"), 2),
Segment(38976, 39216, hexStringToBytes("12003a0041ae20009140780070c5b30080cf50000d003a0031ae200091407800f0c4b30080cf500008003a0021ae20009140780000c5b30080cf500003003a0010c0b300dde9b7008000370071ae20009140780060c4b30080cf50001b003a0061ae200091407800f0c4b30080cf500016003a0051ae20009140780010c3b30080cf500011003a0041ae20009140780070c5b30080cf50000c003a0031ae200091407800f0c4b30080cf500007003a0021ae20009140780000c5b30080cf500002003a00dd69ef006000370071ae200091407800e0c4b30080cf50001c003a0061ae200091407800f0c4b30080cf5000"), 2),
Segment(39216, 39456, hexStringToBytes("17003a0051ae20009140780020c3b30080cf500012003a0041ae20009140780070c5b30080cf50000d003a0031ae200091407800f0c4b30080cf500008003a0021ae20009140780000c5b30080cf500003003a0010c0b300dee9b7003f00370071ae20009140780060c4b30080cf50001b003a0061ae200091407800f0c4b30080cf500016003a0051ae20009140780020c3b30080cf500011003a0041ae20009140780070c5b30080cf50000c003a0031ae200091407800f0c4b30080cf500007003a0021ae20009140780000c5b30080cf500002003a00de69ef001f00370071ae20009140780040c5b30080cf5000"), 2),
Segment(39456, 39696, hexStringToBytes("1a003a0061ae20009140780040c4b30080cf500015003a0051ae20009140780070c5b30080cf500010003a0041ae20009140780040c7b30080cf50000b003a0031ae20009140780040c6b30080cf500006003a0021ae20009140780070c7b30080cf500001003a00342aef000080fa00000006000400fa000060fe000040eb00004f78000000eb0010079800080037009e009000009b200000804000104078001e4f68001e0090000000e800100798001e009000fe0f5000f5ff34001e417800f19c200082487800f66aef008980a900a00a2000e01c88009980a8009b43a8000080fa00000006000000fa000060fe00"), 2),
Segment(39696, 39936, hexStringToBytes("b0c4b300b0e9b700f0c0b300b1e9b70028c8bf00b2e9b70029c8bf00b3e9b70042c8bf00b4e9b70043c8bf00b5e9b7005cc8bf00b6e9b7005dc8bf00b7e9b7008ec8bf00b8e9b7008fc8bf00b9e9b700a8c8bf00bae9b700a9c8bf00bbe9b700c2c8bf00bce9b700c3c8bf00bde9b700f4c8bf00bee9b700f5c8bf00bfe9b7000ec9bf00c0e9b7000fc9bf00c1e9b70028c9bf00c2e9b70029c9bf00c3e9b7006cc9bf00c4e9b700e0c9bf00c5e9b700e1c9bf00c6e9b700705180000000e80070518800fac9bf00c7e9b700fbc9bf00c8e9b700dec9bf00c200dd00ddc9bf000040400000c040000040e800c9e9b700"), 2),
Segment(39936, 40176, hexStringToBytes("32cabf00cae9b700cb69ef0014cabf00cce9b70015cabf00cde9b7009dff07000080fa00000006000000fa000060fe00b0c4b300b0e9b70010c1b300b1e9b7007cc8bf00b2e9b7007dc8bf00b3e9b7007ec8bf00b4e9b7007fc8bf00b5e9b70080c8bf00b6e9b70081c8bf00b7e9b700e2c8bf00b8e9b700e3c8bf00b9e9b700e4c8bf00bae9b700e5c8bf00bbe9b700e6c8bf00bce9b700e7c8bf00bde9b70054c9bf00bee9b70055c9bf00bfe9b70056c9bf00c0e9b70057c9bf00c1e9b70058c9bf00c2e9b70059c9bf00c3e9b7005ac9bf00c4e9b7005bc9bf00c5e9b7005cc9bf00c6e9b7005dc9bf00c7e9b700"), 2),
Segment(40176, 40416, hexStringToBytes("5ec9bf00c8e9b7005fc9bf00c9e9b700a9c9bf00cae9b700a8c9bf00cbe9b700cc69ef005fff07000080fa00000006000000fa00d03380004e00de00614060000004a200614060000080fb00610060004e00dd00d133800001e0a10001007000d0338800805180000000e80080518800e0cabf000004e000050034007b26a800e0cabf000040e900e0eab700010037007b26a900d04e80000000e800d04e8800d04e8000f30f500003003400da29ef0010c0b300d8e9b700a05180000000e800a0518800a151800080382100808f50000200340010c0b300aae9b700904e80000000e800904e8800914e800010032000"), 2),
Segment(40416, 40656, hexStringToBytes("808f500012003400d229ef0010c0b300d0e9b700b04e80000000e800b04e8800b14e800040022000808f500003003a0010c0b300d4e9b70005003700b14e800010042000808f500001003400d629ef000080fa00000006000200fa00004f78001e417800518220008248780025c8bf000041eb00f1c7b300e9ef070025c8bf0002c8b30061c0b300e5ef07000060fe00e01520002e08070025c8bf0092c0b30061c0b300deef070025c8bf000041eb00f1c7b300daef070025c8bf008040eb00fbef070021e8b70021c8bf00f64f4000020032000040eb00760037007700070020c0b30020e8b70011c0b300c0c0b300"), 2),
Segment(40656, 40896, hexStringToBytes("efef070022e8b70012c0b30021c3b300c0c0b300c6ef07000060fe0040062000fe07070082c0b30011c3b300c0c0b300bfef070010c0b30038e8b70010c0b30052e8b70010c0b3006ce8b70010c0b3009ee8b70010c0b300b8e8b70010c0b300d2e8b70010c0b30004e9b70010c0b3001ee9b70010c0b30038e9b70000002000a1472400d0418800e14188004054800051548000f04188000142880000002000a1472400a0428800b14288004054800051548000c0428800d142880000002000a14724007043880081438800405480005154800090438800a14388000000200001f82300004588001145880020548000"), 2),
Segment(40896, 41136, hexStringToBytes("31548000020020000328240013ec070020458800314588000000200001f82300d0458800e14588002054800031548000020020000328240008ec0700f0458800014688000000200001f82300a0468800b146880020548000315480000200200003282400fdeb0700c0468800d146880000002000011c240030488800414888000000200001122400504888006148880000002000011c240000498800114988000000200001122400204988003149880000002000011c2400d0498800e14988000000200001122400f0498800014a880010c0b3000080fa00000006000000fa0025c8bf0002c2b300f1c7b30054ef0700"), 2),
Segment(41136, 41376, hexStringToBytes("25c8bf0012c0b30091c0b30050ef070025c8bf000041eb00f1c7b3004cef070025c8bf000041eb0031c0b30048ef070025c8bf0022c0b300f1c0b30044ef07000060fe00100020007c07070012c0b3008040eb0050c0b3000e00070012c0b3008040eb0050c0b3004900070080c0b3008600070080c0b3009000070025c8bf000041eb00f1c7b30031ef07000080fa00000006000600fa0020479800314798004247980025c8bf0002c2b300f1c7b30027ef07002e4090000080fb004300dd00804078003e4090000080fb00000040000040780080c070004e40900000c07000004f780025c8bf001e41780011c0b300"), 2),
Segment(41376, 41616, hexStringToBytes("17ef07003e4090000080fb00e20f50000f003200e20f500003003c000000e0000600320019003700e40f50000d003200e60f500010003200140037000000200031302400205488003154880012003700000020003128240020548800315488000d003700303323003120240020548800315488000800370030332300311824002054880031548800030037006000b80020548800315488000080fa00000006000600fa0020479800314798004247980025c8bf0002c2b300f1c7b300e8ee07002e4090000080fb004300dd00804078003e4090000080fb00000040000040780080c070004e40900000c07000004f7800"), 2),
Segment(41616, 41856, hexStringToBytes("25c8bf001e41780041c1b300d8ee07003e4090000080fb00e10f50000f003200e10f500003003c000000e0000600320019003700e20f50000d003200e30f500010003200140037000000200001682400405488005154880012003700000020000160240040548800515488000d003700000020000158240040548800515488000800370000002000015024004054880051548800030037006000b80040548800515488000080fa00000006000200fa00004f780025c8bf0002c2b300f1c7b300abee070025c8bf001e4178008040eb00a7ee07000080fa00000006000200fa00004f780025c8bf0002c2b300f1c7b300"), 2),
Segment(41856, 42096, hexStringToBytes("9fee070025c8bf001e41780011c1b3009bee07000080fa00000006000000fa0025c8bf000041eb00f1c7b30094ee070025c8bf0012c0b3008040eb00c8ee0700cccabf00f64f40000200320010c0b30003003700a0ceb30021e8b700a0ceb3000080fa00000006000200fa0001c1b300c0c0b300a6ee0700004f78001e80fb0061006000004078000004e0003500320051ee070011c0b300c0c0b3006cee070010c0b30085ee070036eab70010c0b30082ee070037eab70010c0b3007fee070050eab70010c0b3007cee070051eab70010c0b30079ee07006aeab70010c0b30076ee07006beab70010c0b30073ee0700"), 2),
Segment(42096, 42336, hexStringToBytes("0040eb0071ee07001047980042ee07001e4090000080fb00680060000000e00014003a001e41780031822000824878001e4190004182200082487800b051800080007800408f200052010700805280000000ea0080007800e09020004d010700505380000000ea008000780080922000480107000080fa00000006000000fa00881f780018ee070025c8bf008040eb0033ee0700d0c2b30025ee070018ee070025c8bf0011c0b3002dee070010c0b30046ee07000044780010c0b30043ee070013c0b3000841780080407800808220000f01070010c0b3003cee07000044780010c0b30039ee070013c0b30008417800"), 2),
Segment(42336, 42576, hexStringToBytes("80407800208420000501070010c0b30032ee07000044780010c0b3002fee070013c0b3000841780080407800c0852000fb00070010c0b30028ee07000044780010c0b30025ee070013c0b3000841780080407800e0882000f100070010c0b3001eee07000044780010c0b3001bee070013c0b3000841780080407800808a2000e700070010c0b30014ee07000044780010c0b30011ee070013c0b3000841780080407800208c2000dd00070010c0b3000aee0700004478000040eb0007ee070013c0b3000841780080407800c0962000d3000700d4ed07006bff07004f0478000080fa00000006000000fa0040418000"), 2),
Segment(42576, 42816, hexStringToBytes("b043880010428000c0438800e0428000d043880070448000e046880040458000f04688001046800000478800a0478000104a880070488000204a880040498000304a880095ff070041418000e0438000008050004041880011428000f04380000080500010428800e14280000044800000805000e04288007144800010478000008050007044880041458000204780000080500040458800114680003047800000805000104688000080fa00000006000200fa00000f78001e007800e30f500021003200e30f500005003e00e10f500011003200e10f500015003e0009003700e50f500024003200e50f50001c003900"), 2),
Segment(42816, 43056, hexStringToBytes("e60f500026003200e70f50002a0032002f003700d139800000fe2f0000806000d03988002a003700d139800000fe2f00008060000020a000d039880024003700d139800000fe2f00008060005000b300d03988001e003700d139800000fe2f00008060007000b300d039880018003700d139800000fe2f00008060009000b300d039880012003700d139800000fe2f0000806000c001b300d03988000c003700d139800000fe2f0000806000d001b300d039880006003700d139800000fe2f0000806000e001b300d0398800000000000080fa00000006000c00fa00881f780040079800510798006000b80020079800"), 2),
Segment(43056, 43296, hexStringToBytes("3107980064004700000178004e009000de009000e4ec0700008fbe0018c0b3000200200003f023001e00be00b6e807000000e00001003c000044eb000804e000070032002e009000be0090000200200003f8230000e9070020079800310798002e009000be0090004f0478000080fa00000006000800fa00000f78001107980022079800330798001e0078009e009000710098001e0078002e019000be01900032009800430098002e019000be0190000000200001f82300dee807001e01780050019800610198001e0178006000b80010019800210198001e0078008000eb00010878001e0078008040eb0001509800"), 2),
Segment(43296, 43536, hexStringToBytes("1e0178000000200001f8230010099800210998001e0178000000200001f8230030099800410998000080fa00000006000400fa00100798001e0090007000900068000700000f78001e007800800078001e009000230007000080fa00000006000800fa00100798004147980052479800634798001e009000005090000004e00005003200ce409000014f7800de4090001147980004003700de409000014f7800ce409000114798006e4090000004e00006003d001e0078000000ea00800078001e00900007000700040037001e007800800078001e009000020007000080fa00000006000800fa00889fbe0020079800"), 2),
Segment(43536, 43776, hexStringToBytes("310798003e009000cf80de0069e80700008fbe002e009000c0089000300890006011b8003ee807000000e00004003a000000200001f82b00008fbe00200037002e009000a0089000100890001e01be004dea07000002be002e009000c0089000300890000001be000400be0067e90700008fbe002e00900010029000a00290002e009000e0009000500090000001be000400be003cea07000004be002e009000c0009000300090001e01be0036ea07000001be000800be006fe80700008fbe002e0090001e01be0012009800230098001e00be004cff070015e80700800078002e009000010878004f04be000080fa00"), 2),
Segment(43776, 44016, hexStringToBytes("000006000600fa00200798003407a9002e009000fafe07003427a8000000eb00000f780002003700000000001e0fe8001e007800f30f5000fbff34003427a90000000000a0398000610060000000e000fcff320001388000110798001e0090000080fa00000006000000fa007646a8007e46a90076e6a8009823ef009863a8009a23ef009b43a9009ba3a8009be3a90020022000001d880099e3a8009960a800a020a9008960a9000080fa00000006000200fa00004f7800000000005104800000002800008060000000e000fbff32008be0a9001e80fb00901d88000080fa00000006000600fa002047980021079800"), 2),
Segment(44016, 44256, hexStringToBytes("2e00900010407800edff07002e0090000000e800200798002e4090000040e900204798002e4090000004e000f4ff3a00d0c0b300004f78001e407800e0ff0700a0c0b300004f78001e407800dcff0700d11c800000102000008060000000e000fbff32000080fa00000006000400fa00204798000040eb00004f78001e81fb009e80fb002e4090000080fb008080400020ae2000008040009040780020ae200000004100014878001e4fe8009e80fb002e4090000080fb0069001000808f5000eeff35000080fa00000006001600fa00100f9800210f98001000200001002000008fbe001e099000ae09900022079800"), 2),
Segment(44256, 44496, hexStringToBytes("330798002e009000be009000ce09dd004200de0000807100c208de0020079800310798001e00be000000400081804800008fbe002e009000be009000e00f5000e08f5800efff3a001e01be0022079800330798001e00be008100d1000080d300008fbe000040eb00004f98000040eb00104f98002e009000be0090003e014000ae8148000200be008100d1000080d3005007980061079800ee0090005e0090000088b90000017800ee0090005e0090000088b9000000780000014100de0090005e0090000008b800010141008200780070079800010f980070079800010f98007e0190008e0990001e089000ae089000"), 2),
Segment(44496, 44736, hexStringToBytes("800f5100818f590003003a0010c0b300004f9800220037007e0190008e0990001e089000ae089000800f5100818f59000f0036002e019000be0190005e009000ee009000800f5100818f590003003a0010c0b300004f9800110037005e019000ee01900022079800330798000c0037005e009000ee0090001e01be00800f5100818f590003003a0010c0b300004f9800030037005e019000ee019000028fbe000e4890000004e000b6ff32005e0090000080fa00000006000000fa0083e0a80000000000000000000080fa00000006000000fa0083e0a90000000000000000000080fa00000006001000fa00889fbe00"), 2),
Segment(44736, 44976, hexStringToBytes("f7ff07000040eb00004f780008002300091020000800be00a0020700200798003107980050052000a10a2000270207002e009000be00900053020700004f78001e4078000004e000320032000000eb001007980010c0b300004f78000000eb0010079800280037001e009000800040000080200000804000100078008000eb0040079800510798001e0090000000e800800040000080200000804000100078008000eb0060079800710798001e84fb001e009000000040006101b9002e009000be00900002004000838048006e029000fe0290004e019000de019000380207000080fb000000640000f0a7000000ea00"), 2),
Segment(44976, 45216, hexStringToBytes("0000ea004f00de00004f78001e0090000080e800100798001e009000ef0f5000d5ff3400f2010700abff07001e4078004f04be000080fa00000006000a00fa00889fbe00aaff070008002300091020000800be005502070010079800210798006000b80030079800410798000000eb00000f78000000eb00000f7800110037001e007800000040006101b9001e009000ae0090000200400083804800f10107003007980041079800be0090001e007800000140000080200000004100010878001e0fe8001e007800ef0f5000ecff340081ff07004f04be000080fa00000006000000fa00c0c9b30021e8b7002068ef00"), 2),
Segment(45216, 45456, hexStringToBytes("7300070085000700d2cc2c00c3f423008000eb0080822000fafd0700d2cc2c00c3f423008000eb0020842000f5fd0700d2cc2c00c3f423008000eb00c0852000f0fd0700d2cc2c00c3f423008000eb00e0882000ebfd0700d2cc2c00c3f423008000eb00808a2000e6fd0700d2cc2c00c3f423008000eb00208c2000e1fd07006266260063f623008000eb00408f2000dcfd07006266260063f623008000eb00e0902000d7fd07006266260063f623008000eb0080922000d2fd0700d2cc2c00c3e423008000eb00c0962000cdfd07000080fa00000006000000fa000060fe0020408000e043880030408000f0438800"), 2),
Segment(45456, 45696, hexStringToBytes("404080000044880050408000104788006040800020478800704080003047880080408000a04a880090408000b04a8800a0408000c04a8800b0408000d04a8800c0408000e04a8800d0408000f04a88000080fa00000006000000fa000060fe00a04a800080408800b04a800090408800c04a8000a0408800d04a8000b0408800e04a8000c0408800f04a8000d040880025ff07000080fa00000006000000fa000060fe00e043800020408800f043800030408800004480004040880010478000504088002047800060408800304780007040880014ff07000080fa00000006000000fa004e29ef005029ef005229ef00"), 2),
Segment(45696, 45936, hexStringToBytes("00002800d04a880000002800e04a880000002800f04a8800f0ff2700a04a8800f0ff2700b04a8800f0ff2700c04a880001ff07000080fa00000006000000fa008228ef008428ef008628ef008828ef008a28ef008c28ef00e828ef00ea28ef00ec28ef00ee28ef00f028ef00f228ef00f1fe07000080fa00000006000000fa00414a8000d04a8000808f500002003400404a8000d04a8800414a8000a04a8000808f500002003d00404a8000a04a8800514a8000e04a8000808f500002003400504a8000e04a8800514a8000b04a8000808f500002003d00504a8000b04a8800614a8000f04a8000808f500002003400"), 2),
Segment(45936, 46176, hexStringToBytes("604a8000f04a8800614a8000c04a8000808f500002003d00604a8000c04a88000080fa00000006000000fa00124480002344800040418000cf80de0002004000838048001044880021448800324480004344800010428000cf80de00020040008380480030448800414488005244800063448000e0428000cf80de0002004000838048005044880061448800424780005347800070448000cf80de0002004000838048004047880051478800624780007347800040458000cf80de0002004000838048006047880071478800824780009347800010468000cf80de00020040008380480080478800914788000080fa00"), 2),
Segment(46176, 46416, hexStringToBytes("000006000000fa001044800021448000c2032000030020009ee5070000007800e04388003044800041448000c20320000300200097e5070000007800f04388005044800061448000c20320000300200090e507008000780000002c0000804000004488004047800051478000c20320000300200087e5070000007800104788006047800071478000c20320000300200080e5070000007800204788008047800091478000c20320000300200079e5070000007800304788000080fa00000006000000fa00d14a8000a04a800000804000cf00de00008040000080d100704a8800e14a8000b04a800000804000cf00de00"), 2),
Segment(46416, 46656, hexStringToBytes("008040000080d100804a8800f14a8000c04a800000804000cf00de00008040000080d100904a88000080fa00000006000000fa0083e0a80000000000000000000080fa00000006000000fa0083e0a90000000000000000000080fa00000006001000fa00889fbe00f7ff07000040eb00004f780008802300091020000800be00e2000700200798003107980050052000a10a2000690007002e009000be00900095000700004f78001e4078000004e000320032000000eb001007980010c0b300004f78000000eb0010079800280037001e00900080004000c0aa200000804000100078008000eb004007980051079800"), 2),
Segment(46656, 46896, hexStringToBytes("1e0090000000e80080004000c0aa200000804000100078008000eb0060079800710798001e84fb001e009000000040006101b9002e009000be00900002004000838048006e029000fe0290004e019000de0190007a0007000080fb000000640000f0a7000000ea000000ea004f00de00004f78001e0090000080e800100798001e009000ef0f5000d5ff340034000700abff07001e4078004f04be000080fa00000006000a00fa00889fbe00aaff070008802300091020000800be009700070010079800210798006000b80030079800410798000000eb00000f78000000eb00000f7800110037001e00780000004000"), 2),
Segment(46896, 47136, hexStringToBytes("6101b9001e009000ae0090000200400083804800330007003007980041079800be0090001e00780000014000c0aa200000004100010878001e0fe8001e007800ef0f5000ecff340081ff07004f04be000080fa00000006000000fe00a2af20000019780001097800000006000000fe000000eb008000eb00f8ff07006627ef00000006000000fe000000fe00801f7800811f7800821f7800a1af20001204800083e0a90031007800303b880011007800303b880061e7a800000000000000000061e7af00feff370002f0a70083e0a8004f017800cf0078004f007800000006000000fe00a2028000a10288009080ba00"), 2),
Segment(47136, 47376, hexStringToBytes("1000ba00a2028800000006000000fe00a2028000a10288001000ba00a2028800000006000000fe00f27f20000001610008003a0032002400023b8800103b8800213b8800de5b0200000000001000200061a7af0000002000000006000000fe0061e7af00feff37000000a700130037000010a70011003700213b8800103b880010002400003b8800a0028000a10f2000a1028800010020008208bb008398bb008408bb008598bb00de5b020000000000a00288001000200061a7af0000002000000006000000fe0061e7af00feff37000000a700140037000010a70012003700213b8800103b8800a102800010002400"), 2),
Segment(47376, 47616, hexStringToBytes("003b8800a00f2000a0028800000020000208bb00f20f20000298bb000308bb000298bb00de5b020000000000a10288001000200061a7af000000200000000600f27f2000000061000000060002802f0000006100f2ff2f0081006100000006000000fa0080002000c01c88009a23ef0040042000001d880099e3a8009b43a8000080fa00000006000000fa0000000000d01c8000610060000000e000fcff3200d01c8000620060000000e000010032009a23a900f01c8000004078000080fa00000006000200fa00004f780000000000d11c800000202000008060000000e000fbff3a001e80fb00e01c88000080fa00"), 2),
Segment(47616, 47856, hexStringToBytes("000006000000fa00d01c800000407800614060000080fb0000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00d11c800000202000008060000000e00007003a00d11c800000402000008060000000e0000200320010002000010037000000eb00004078000080fa00000006000000fa00d01c80004800de00614060000080fb0000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00d01c80000080fa00000006000000fa0099e3a8009b43a8000080fa00000006000000fa0099e3a9009b43a9000080fa00000006000000fa009a21ef00f0e72300f00c8800"), 2),
Segment(47856, 48096, hexStringToBytes("00002800100d8800605780000000e00002003a00c0db25001e0007008900a9009900a800ee6aef000080fa00000006000200fa00000f78009e007800f10c8800ee6aef000080fa00000006000000fa00f00c80000080fa00000006000200fa00000f78009e007800d10c8800ee6aef000080fa00000006000000fa00d00c80000080fa00000006000000fa000080fa00000006000200fa00000f78009900a9009e007800615788009900a8000080fa00000006000000fa00ee6aef009900a800a3e1a8000080fa00000006000000fa00a3e1a9009900a9000080fa00000006000200fa00e1ae200091407800014f7800"), 2),
Segment(48096, 48336, hexStringToBytes("1e4078000004e00001003200ee6aef001e4078000080fa00000006000000fa00efcabf000080fb000080fa00000006000000fa00ef6aef000080fa00000006000000fa0000002800a03988003627ef0050902000c03988003a27ef003c27ef003e27ef004027ef004227ef004627ef004c27ef0020e32500050007000080fa00000006000000fa000080fa00000006000200fa00000f78001e007800905788000080fa00000006000000fa004104800000002200008060000000e00006003200905780000000e00002003200905780000000010089a0a9000080fa00000006000000fa003427a8000080fa0000000600"), 2),
Segment(48336, 48576, hexStringToBytes("0000fa003427a9000080fa00000006000800fa0030079800b03980004200de007f4060000080fb002007980000702000100798000000eb00000f78000b0037001e00780000004000be009000008040009e00900091007800010878001e0090000080e800100798001e0fe8009e0078002e009000808f5000f1ff36001e0078000080fa00000006000000fa00200020003033880000082000d03388001000200010338800f0162b00b03388007426ef008826ef007226ef008626ef007426ef008826ef007226ef008626ef006826ef007c26ef001000200050338800c0002b00f033880001088000f00b200000816000"), 2),
Segment(48576, 48816, hexStringToBytes("600420007105200003102000804978008149780082497800d13e8000f00f2800808060000030200001007000d03e8800a13d800000fc2f00008060000030a000a03d880000088000000178000260a0006004200071052000031020008049780081497800824978000080fa0000000600fa0a00000400000082000000ffffff00ff000000f00a00000200000082000000ffff00008c0a00002000000080000000f20a00000200000080000000ec0a00000400000080000000f40a00000200000080000000cc0a00001600000080000000000800008601000080000000ac0a00002000000080000000e20a00000a000000"), 2),
Segment(48816, 49056, hexStringToBytes("80000000360a0000560000008000000086090000b000000080000000f60a00000200000082000000200b0000f80a00000200000080000000000000000200fa00000f78000300370000e82300010020004e0007001e00780000f0a7000000ea000000ea004f00de00004078001e0fe9000004e000f4ff3a000080fa00000006000200fa00000f78000500370000202000010020003d00070001fe2f001e8f40001e007800ff0f5000f8ff3e00030037000001200001002000340007001e00780000f0a7000000ea000000ea004f00de00004078001e0fe9000004e000f4ff3a000080fa00000006000000fa0000042300"), 2),
Segment(49056, 49296, hexStringToBytes("100888000621ef006821ef006a21ef000c21ef000e21ef007821ef007c21ef007e21ef008021ef008421ef008621ef001200200080072000a109200013102000804978008149780082497800120020006004200071052000031020008049780081497800824978000000000000088000610060000000e000fcff3a00000000000108800000022000008060000000e000fbff32000080fa0000000600f03fb1000180b10006003500ee03090000000000403fb1000180b100fbff3d001000b000203fb000020035000080090000000000000006000200fa00000f78009e00780081578800ffff37000000fa00c0a82000"), 2),
Segment(49296, 49536, hexStringToBytes("8007780040aa2000000188000080fa00000006000000fa002bff0700cce00700b9ff0700dafe070089fe07002cfe07000080fa0000000600"), 2),
Segment(89600, 89840, hexStringToBytes("ffffff0000000000"), 2),
Segment(89632, 89872, hexStringToBytes("ffffff0000000000"), 2),
Segment(89648, 89888, hexStringToBytes("00ffff0000000000"), 2),
Segment(89656, 89896, hexStringToBytes("63ffff0000000000"), 2),
Segment(89664, 89904, hexStringToBytes("9fffff0000000000"), 2),
Segment(89672, 89912, hexStringToBytes("ffffff0000000000"), 2),
Segment(89680, 89920, hexStringToBytes("dfffff0000000000"), 2),
Segment(89688, 89928, hexStringToBytes("0000ff0000000000"), 2),
Segment(89696, 89936, hexStringToBytes("0000ff0000000000"), 2),
Segment(89704, 89944, hexStringToBytes("0000ff0000000000"), 2),
Segment(89712, 89952, hexStringToBytes("0000ff0000000000"), 2),
Segment(89720, 89960, hexStringToBytes("ffffff0000000000"), 2),
Segment(89728, 89968, hexStringToBytes("efffff0000000000"), 2),
};
}
std::vector<Segment> chunkSegmentsUMTSFromPython()
{
return std::vector<Segment>{
Segment(16384, 16624, hexStringToBytes("f0220400000000000000000002000000000000000200000002000000040000000000000000000000000000000600fa00000f780011079800220798001e0078008000eb00110098001e0078008000eb00210098001e007800ae009000310098001e0078009e009000010878000080fa00000006000200fa00000f78001e0078008000eb00110098001e0078008000eb00210098000080fa00000006000200fa00000f78001e007800900090001e007800300090000000e900808f500004003a001e007800200090000000e000070032001e007800900090001e007800200090000000e900808f500002003a0010c0b300"), 2),
Segment(16624, 16864, hexStringToBytes("010037000040eb000080fa00000006000200fa00000f78001e007800900090001e00780020009000808f500002003a0010c0b300010037000040eb000080fa00000006000200fa00000f78001e007800900090001e00780020009000808f500002003c000040eb00070037001e00780010009000804078001e007800200090000040780000c050000080fa00000006000400fa00000f7800214798001e007800c2ff07000004e000020032000040eb00160037001e007800900078001e0078001000900000804000ae409000014878001e007800100090008000e8001e007800110098001e007800900090001e007800"), 2),
Segment(16864, 17104, hexStringToBytes("30009000808f500003003a001e0078008000eb001100980010c0b3000080fa00000006000400fa00000f7800110798001e007800baff07000004e000020032000040eb00180037001e007800900078001e007800200090000080400010407800804078001e009000014878001e007800200090008000e8001e007800210098001e007800a00090001e00780030009000808f500003003a001e0078008000eb002100980010c0b3000080fa00000006000000fa0080002000701d8800b023ef0020022000b01d8800afe3a800b143a8000080fa00000006000000fa0000000000801d8000610060000000e000fcff3200"), 2),
Segment(17104, 17344, hexStringToBytes("801d8000620060000000e00001003200b023a900a01d8000004078000080fa00000006000200fa00004f780000000000811d800000202000008060000000e000fbff3a001e80fb00901d88000080fa00000006000000fa00801d800000407800614060000080fb0000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00811d800000202000008060000000e00007003a00811d800000402000008060000000e0000200320010002000010037000000eb00004078000080fa00000006000000fa00801d80004800de00614060000080fb0000f0a7000000ea000000ea004f00de0000407800"), 2),
Segment(17344, 17584, hexStringToBytes("0080fa00000006000000fa00801d80000080fa00000006000000fa00afe3a800b143a8000080fa00000006000000fa00afe3a900b143a9000080fa000000060004260400000000007a24040000000000bc24040000000000fc240400000000009a24040000000000dc240400000000001c250400000000000022040000000000002204000000000000220400000000003c25040000000000002204000000000072250400000000000022040000000000002204000000000000220400000000007c2504000000000008240400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17584, 17824, hexStringToBytes("002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000ac2504000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000064240400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17824, 18064, hexStringToBytes("00220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000cfa120000e7f22000e01880000000000000020000000e00002003200000120002002880014000700810107000000e00003003a00606b250001002000020037000000200001002000810f70000100320014000700000020000000e000020032000000020000000000b4340200000000000040da000000fe004440a900004e20000000e0000300320000202000900188004440a800000006008a1f78008b1f780000000600a1028800800478000000eb00"), 2),
Segment(18064, 18304, hexStringToBytes("1f003700e284440054a0b4009905ba00e284440054a0b4009906ba00e284440054a0b4000006eb00476fde00fd07b200ae018800636ce10003003a00eaff07000000eb000e003700606ce10008003a00004deb000a05e800020039003420ec000af0a0008b05e900f9ff3e00040037006168e100010032000086eb000b00070019c7ba001905ba000e04e00003003a000a00e000dbff3a0000000600fe07b200ae0288008a047800f5ff37000cd0a300e20f4d001c00390089027800354dba000a05e800020039003420ec000af0a0008b05e9000f003200254dba000a05e800020039003420ec000af0a0008b05e900"), 2),
Segment(18304, 18544, hexStringToBytes("080032000c00e0000600320015cdba000a05e800020039003420ec000af0a0008b05e9008984e80054a0b4000b00e000e2ff3a00000006009902ba00055d78008b05e900f7ff3200c82ade00055d78008b05e900f3ff32000c00e000f1ff320019ddba00eeff3700000000000000000000000000000000000000000000000000000000000000000000000000000000003600f800809fbe00829fbe00849fbe00869fbe000000fa00b0418000000001009141800080418000808f500002003a009980a900190037008980a9001000370090418000904078008180fb00e11c88000000e800904188009141800070a02000"), 2),
Segment(18544, 18784, hexStringToBytes("808f500002003a00e09f2000904188009141800080418000808f500006003200d11c800000202000008060000000e000ebff320001003700000000000080fa004f03be004f02be004f01be004f00be003600f90000400600801f78000000fa00d01c8000620060000000e000010032009a23a9009020a9000080fa004f007800004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008020a9000000eb009e1a07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00951a07008040a900100020008d1a07000080fa00"), 2),
Segment(18784, 19024, hexStringToBytes("4f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008060a900200020007d1a07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008080a900300020006d1a07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008600a900700020005d1a07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00"), 2),
Segment(19024, 19264, hexStringToBytes("85e0a900800020004d1a07000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00f04180000000e00002003200f041800000000100b0a12000104078008040e800b0a1200001487800a0a1200011c0b300014878008860a9000080fa004f03be004f02be004f01be004f00be003600f900004006000000fa0088e0a9009621ef000080fa00004006003600f800809fbe00829fbe00849fbe00869fbe000200fa0005003700f01c8000004f78009e4078004081200096fd0700d01c8000610060000000e000f7ff3a008960a9000080fa00"), 2),
Segment(19264, 19504, hexStringToBytes("4f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000200fa00801d8000620060000000e00002003200b023a90014003700801d8000640060000000e00003003200a01d8000004f78000d003700801d8000680060000000e00003003200a01d8000004f780006003700a01d8000004f78001e40780080407800c08120006afd0700801d8000610060000000e000e2ff3a008bc0a9000080fa004f03be004f02be004f01be004f00be003600f900004006000040da000000fe0000000500839f68000100e00002003d0060001000e08018000300e00002003d00"), 2),
Segment(19504, 19744, hexStringToBytes("60011100e0811900d90007004f00e00002003b0060001000e0801800000006000003be00ae0007006011b8000470a70007f0a1006509b1001b00320012003500860220000628e10008003500f3ff2700f2ff2f006110b9000700e00018003b00030028006000b80002000500000040008180480002014900838149008502e900faff3a0008003700f88f420002003c008000eb00000005008100d1000080d3008502e800fcff3a000700e00004003b0060001000e080180060011900e0811900000006000001be00850007000470a70003f0a10003f8a30013003a006509b10010003200090035006928e10002003500"), 2),
Segment(19744, 19984, hexStringToBytes("010028000000050000004000818048008502e900fcff3a0000000600f88f4200050035008100d1000080d3008502e800fcff3a00000006008000eb0000000500881f7800030478000300e00007003d0060001000e080180060011900e081190002003b0001f02d00030037000700070008f0a70001f0a0004f047800000006004f89de0082017800edff3700889fbe008a9fbe00008270000402710004827100260032000004be000200be006011b8006b092000950220000182cf000a0039000541b1000082cf00070039000541b1000982cf00040039000541b1000882cf00010039000541b1000542520012003200"), 2),
Segment(19984, 20224, hexStringToBytes("0a003b0082817100610164008100d1000080d3008984d3000884d3008b05e8000442e800f7ff3a00070037000804440089844c0000004800818048008b05e9000442e900f9ff3a00070007004f05be004f04be00000006006011b800cfff370004002000ef03370081002000618055000b003d000b00200061fe2f000100e1001d00340082817100610164008904d1000884d3000000e800faff3a00710020006100640003007000020060000900320061044400e0844c000988a500050032008b05e8006808e10002003a008904d1000884d300f20f20000258e10005003d00c75ddd00f907b2008980750008007800"), 2),
Segment(20224, 20464, hexStringToBytes("000006000bf827008b00780000000500c70ade00f107b200f50fb20008003200e1cf4200020032000170a00024000500810f7000010032000408050044000500810f700002003a00140005008502e9000000400081c04800fcff3b000170a00024000500811f78000100e00002003d0060001000e08018000300e00002003d0060011100e0811900150007004f00e00002003b0060001000e0801800000006006022b800060220000000d0008180d2000482d2008582d2000000a0000202520083825a00030031000202420083824a000000a1000603e900f3ff3a0000000600efff07000400be0000000600889fbe00"), 2),
Segment(20464, 20704, hexStringToBytes("8a9fbe008c9fbe001b0020000202be000586680006002800060666004709de00f20fb200820032000243e80080003200c729de00f30fb2007d0032000343e8007b003200f107b2000170a000f507b2000570a000c708dd004903de00868070004700dd00c72add004923de00868272004722dd000305510004035000858358000300310000004000818048000a05e9008c1f78008a9fbe0004005000858058000402420085824a0000004000818048000005eb000004be006033b8000406be000d48e10056003100110009004dccd8000c01b8000d02b8008481410060824a008283530003045c0084845c0060055d00"), 2),
Segment(20704, 20944, hexStringToBytes("0a00e00025003a00800578000d40e100490031008800780007007800110009004d88d8000c01b8000d02b8008481410060824a006003110083835b0004045c00e0845c000900e00021003a004f01be000300e0002b003200e3016000070673008c81710001003200640070004200de004e5edd000c007000c258de0001e0a00083010700cf017800818071004f06be004f05be004f04be00000006008c8343000d044c00e0844c0060054d000000e9000a00e000d4ff32008c8343000d044c00e0844c0060054d000000e900ceff37000c0343008d834b0060044c00e0844c000000e9000900e000d8ff32000c034300"), 2),
Segment(20944, 21184, hexStringToBytes("8d834b0060044c00e0844c000000e900d2ff37004200de004e5edd000c007000c258de0001e0a000cf0178000300e000daff320060001000e0801800d7ff3700f0ff2f00aaff3700f0ff2f00b9ff37000404be002f010700870678000004fd008104fd002b010700078366000678a300030032000960a7000800be002c0037000d78a300020032000800be00280037000778a30026003a0001f0a10009f0a1000668a30003003200f1ff2700f0ff2f00baff37000d68a300030032000800be008c807000b5ff37000768a30007003a000648a30003003200f1ff2700f0ff2f00aeff37000d48a300030032006000b800"), 2),
Segment(21184, 21424, hexStringToBytes("8c807000a9ff37000748a3000400320001f82700000020008c807000a3ff3700760107000004fd008104fd0002057800720107000802be008a01780059ff37000160a000120220002242880097ff37000100e000120032000500e00010003200889fbe008a9fbe008c9fbe000006eb0001f8a3000300320060001000e08018000cf0a00005f8a3000300320060021200e0821a000cf0a2008005eb0041ff37006000b80002000500038368000700280007036300470ade000480a100c71ade000580a100f70f20000720e100420032000728e10040003200889fbe008a9fbe008c1f7800f107b200f307b2000400e000"), 2),
Segment(21424, 21664, hexStringToBytes("640032000170a0000500e000680032000370a00085054200eb07b1000204b8000302b8008484440060854a00020ab800848444000a854a00030ab80004054500040033000804d0008984d2000a85d2008b05e9006158e1003d00350002102000090161000308200089816100f70720008783640008867300c84cde00c853dd00878474004855de000300e0000600320082037600040032008904e80060054d000a88a3000c003a00f70f20000758e10044003d000a70a100c75ddd000a8575008a007300090078004f0678004f05be004f04be00000006000a05d1008984d3008b05e800f0ff3700881f780006047800"), 2),
Segment(21664, 21904, hexStringToBytes("90000700070278000001fd008101fd008c00070087027800850372000778a300050032000001fd008101fd009f0007004f04780000000600850372000748a30003003200f0ff2f00f1ff2700f8ff37000000200001f8270088807000f4ff3700880178004848dd00808171004848de00c850dd0001007000c850de00060478000b0178001600070088807000d2ff37000500e00005003200170020003a0007009dff370081037000f9ff3a00860078004f0678004f05be004f04be000000050083037100f9ff3200270020002e00070094ff370001f8270086807000f4ff37000100e00026003200610111007810e100"), 2),
Segment(21904, 22144, hexStringToBytes("23003c006022b8007010e1000400350080027800010078008000eb00700151000200e0000900340070031100062add00822ade008603dd00878272000200de00860bdd00070070008208de0084817100f4ff2700048262008481710004002800848262006102600005f0a6000000060004827100070032000000e800e0804800000006000002be006000b800efff37006000b80000000600889fbe000004eb006138e10016003a000100e00008003a00c800de004800dd00880020000100e00003003a00c800de004800dd00680444008184cf00e9845400060034008908dd00f08314008703de00878070000900dd00"), 2),
Segment(22144, 22384, hexStringToBytes("09044400610214004f04be00000006000300e00008003a00c811de004811dd00880020000300e00003003a00c811de004811dd00680444008384cf00e9845400060034008919dd00f08314008713de00878171000911dd0009044400e1021400e9ff37002700200001f0a70017002000470bde00f60fb200040032000643e8000a0032004702b3000000060001037800f607b2000603700002003a000703b300000006008702b3000000060001037800f607b20006037000020032000770a000000006000760a000000006000478a300040032000578a300030032000168a30001003a000200be000160a00000000600"), 2),
Segment(22384, 22624, hexStringToBytes("81017000270032008002eb0001f8a3000300320060001000e080180015002000f40720000202420020003400f703200087036000060420000003630002082000000161004700de00c909dd0000807100c708de000600e0000800320087037100060032001000b0000180b0000188a30002003200c108de000402e800f107b200f30f20000320e10003003d004722dd00810072002900370001f827000000eb00260037006000b80000000600680212007f20e100020034006000b8001f0037006011b8007020e1000400350080017800010078008000eb00700252000400e00009003400f00312000719dd008419de00"), 2),
Segment(22624, 22864, hexStringToBytes("0703dd00868171000400de00070bdd00060070008408de00f7ff270083836300870371000600280003036300070032000700e00003003a006101600002817300020032001000b0000180b0000500a6000000060001f0a000000006004f0ade004709de00f107b200f20fb2000b003200f207b1000170a000c708dd00c901de00838070004700dd000400a6000000060060001000e080180000000600810f700001003a00000006008182cf000500e00010003e008082cf00ee8242007028e1000400390007003e00800078000000eb000e003700708312008600de000500dd000a003700708352008600dd000000eb00"), 2),
Segment(22864, 23104, hexStringToBytes("06003700e28252008508dd00708312000603de00868070000500dd007507b0000501ea000400a6000000060060001000e080180000000600889fbe008a9fbe0030044200b0844a0030054b0090854b006000b1000898be000a90be000440e10005c8e10006d0e10007d8e10002003100680040001008e8004f05be004f04be0000000600889fbe008a9fbe003004be002005be000418540005985c0006185d0007985d00110020000440e10005c8e10006d0e10007d8e100010039008000eb00108810004f05be004f04be00000006001200fa00889fbe008a9fbe008c9fbe00e0b79f00f1b79f0082bf9f0093bf9f00"), 2),
Segment(23104, 23344, hexStringToBytes("0605be000404be000000eb00d0b79f00c0b79f00b0b79f00a0b79f0090b79f00000678005fb19700cfb09700820141003fb097000200e00004003d00370007007e805700c0ff070003003700330007007e805700cfff0700dfb697000d00e0000c0035006fb29700ffb297000fbb97009fbb970010002000010020006011b800000272008182720002037300838373001b0007000c06e80001042000810f5600e0ff3a000d00e00004003d000802be000a03be007e805700a3ff07005fa897000000e00005003a001fb29700afb297003fb39700cfb39700090007006fb09700ffb097000fb997009fb997004f06be00"), 2),
Segment(23344, 23584, hexStringToBytes("4f05be004f04be000080fa00000006000100070000000600a4b79f00b5b79f00c6b79f00d7b79f00000006004f09de0082817100b3b79f004f01de008180400082807000a1b79f008fb097004f09de00000040000200700090b79f007fa897004f01de00818040008280700081b79f000d0007004f3ade000000400004007000f0af9f00080007000402420085824a0006034b0087834b00dfff07000802be000a03be00000006002fb29700bfb297004fb39700dfb3970000000600881f780018002000881f780089ff07008f87e9004f04780000000600801feb0084ff07008f87e90000000600889fbe008a9fbe00"), 2),
Segment(23584, 23824, hexStringToBytes("e00f5000e08f5800e00f5900e08f59000c003d006044b8006055b8000000540081805c0002015d0083815d00180020001500070008003d00180007000004eb00050037000004eb000f00070002003d001200070018002000dcff07000800e000060032006022b8006033b8000000520081805a0002015b0083815b004f05be004f04be0000000600e00f5200e08f5a00e00f5b00e08f5b00000006006044b8006055b8000402540085825c0006035d0087835d0000000600889fbe008a9fbe008c1f7800e00f5000e08f5800e00f5900e08f59000d003d006044b8006055b8000000540081805c0002015d0083815d00"), 2),
Segment(23824, 24064, hexStringToBytes("1c0020000820e10009a8e1000ab0e1000bb8e1000d003d00080037000006eb00e00f5200e08f5a00e00f5b00e08f5b0006003d006044b8006055b8000402540085825c0006035d0087835d00aaff07000c00e000060032006022b8006033b8000000520081805a0002015b0083815b004f0678004f05be004f04be0000000600889fbe008a9fbe008c1f78000006eb00e00f5000e08f5800e00f5900e08f590007003d006044b8006055b8000000540081805c0002015d0083815d001c002000e00f5200e08f5a00e00f5b00e08f5b0007003d006044b8006055b8000402540085825c0006035d0087835d000c00a200"), 2),
Segment(24064, 24304, hexStringToBytes("2f0007000c00e000060032006022b8006033b8000000520081805a0002015b0083815b004f0678004f05be004f04be0000000600889fbe008a9fbe00841f7800170007004f00780011003300f0ff2f00838f6c0006003b00040565000a00a7000800370009f0a6001000200008003700820f5400838f5c00030039001000200001003e000000200009f0a7000000ea004f05be004f04be000000e000000006000004be001afc07000003be000405be000200be0016fc0700844f750000000600889fbe008a9fbe008c9fbe000404b8000506b8008904460060854e000606b8000a054600e0854e000706b8008b054600"), 2),
Segment(24304, 24544, hexStringToBytes("040eb800890446000a854e00e0854d00050eb8000a0546008b854e00060eb8008b0546000416b8000a0546008b854e000516b8008b054600041eb8008b0546000800be000a01be004f06be004f05be004f04be000000060080007800040037003104e00002003a000000510000000600010178000108a300f9ff3a008101780031017800f4ef2f00020242000281ea00020162000408280004016100f7ff320083007800010178003104e000fdff3a000000510000000600745f0000332e0000302e00003000000007200000737400006174000065000000202a00002a2a00002000000052450000424f00004f540000"), 2),
Segment(24544, 24784, hexStringToBytes("2064000065660000617500006c740000002000003c3c0000003e00003e2000000043000048450000434b00005f4200004154000054200000544f00000043000048450000434b00005f42000041540000542000004f4b00000043000048450000434b00005f42000041540000542000005600000020200000004200004f4f0000545f00005155000045430000544500004c200000736500006e6400004364000065200000004200004f4f0000545f00005155000045430000544500004c200000544f00000052000044590000004f00004b000000435000004253000020730000656e0000644300006465000020000000"), 2),
Segment(24784, 25024, hexStringToBytes("49500000004d0000324d0000494e000054450000524e00004554000000410000542b000043470000444300004f4e0000543f0000004300005042000053200000544f0000002b000043470000444300004f4e0000543a0000203100002c22000000220000004900004e490000545f0000415000004e20000000410000542b00005149000043530000475000003d310000004900004e490000545f0000415000004e200000746f0000004e00004f2000004341000052520000494500005200000045520000524f00005200000047450000545f000047500000535f0000696e0000697400002000000047500000535f0000"), 2),
Segment(25024, 25264, hexStringToBytes("6f700000656e00005f7700006169000074200000544f000000470000505300005f720000756e0000206300006f6f0000726400002e4f00004b00000047500000535f0000727500006e200000544f000000670000707300005f6900006e6600006f7300002e5f0000636f00006e760000657200006765000064200000006300006f6e000076650000726700006564000000470000505300005f720000756e0000206300006f6f0000726400002e4f00004b3100000047000065740000434d0000455f000065720000726f0000725f0000636f0000646500003a000000736500006e640000206700007073000020630000"), 2),
Segment(25264, 25504, hexStringToBytes("6465000020000000434c00004f530000455f00004750000053200000004300004c4f0000534500005f470000505300005f6c00006f6f0000702000006e4f00004b00000047450000545f0000494d0000454900003020000000470000455400005f4900004d450000495f00006c6f00006f700000205400004f00000047450000545f0000494d0000454900005f7700006169000074200000726500006365000069760000656400002000000047450000545f00004943000043490000443000002000000047450000545f00004943000043490000445f00006c6f00006f700000205400004f0000004943000043490000"), 2),
Segment(25504, 25744, hexStringToBytes("4420000072650000636500006976000065640000004f0000504500004e5f000050440000505f0000696e000069740000004f0000504500004e5f000050440000505f00006c6f00006f700000205400004f0000004f500000454e00005f5400004350000030200000004f0000504500004e5f000054430000505f00006c6f00006f700000205400004f000000434f00004e4e00004543000054000000736500006e640000546f0000436c00006f75000064540000726100006d6500002047000050530000636f00006e760000657200006765000064000000736500006e640000546f0000436c00006f75000064540000"), 2),
Segment(25744, 25984, hexStringToBytes("726100006d65000020470000505300006e6f0000746300006f6e000076650000726700006564000000470000505300005f530000656e000064460000726100006d6500005f6c00006f6f000070200000544f0000003900003920000072650000636500006976000065640000204e00004f54000020770000616b000065750000702000004c6900006e75000078000000393900002072000065630000656900007665000064200000574100004b45000055500000204c0000696e000075780000003900003920000072650000636500006976000065640000203f00003f3f00003f000000434c00004f530000455f0000"), 2),
Segment(25984, 26224, hexStringToBytes("5149000020530000455400005550000020000000434c00004f530000455f0000514900005f6c00006f6f000070200000544f0000005300004c45000045500000494e0000475f0000696e000069740000002c000020000000534c000045450000504900004e470000202e00002e2e000061770000616b00006520000062790000204c0000696e00007578000000410000574100004b4900004e4700002021000020000000534c000045450000504900004e470000202e00002e2e0000006700006c690000746300006820000047500000494f0000335f0000494f0000303800005f4f0000464600002075000070640000"), 2),
Segment(26224, 26464, hexStringToBytes("6f7700006e000000557000005f660000726f00006d5f000074720000616300006b6900006e6700005f6c00006f6f0000702000004f46000046200000666900006e000000557000005f660000726f00006d5f000074720000616300006b6900006e6700005f6c00006f6f0000702000004f460000460000005155000045430000544500004c5f0000627900004c6900006e750000785f0000557000005f660000726f00006d5f0000736c000065650000705f0000707200006f6600006f6e0000645f00006c6f00006f70000000730000657400005f50000045520000535400005f4f0000464600000072000000740000"), 2),
Segment(26464, 26704, hexStringToBytes("6f4400006f7700006e00000050610000737300006167000065200000656e0000207300006c6500006570000020700000726f0000666f00006e640000007400006f5500007020000062610000636b00000020000072650000636500006976000065640000200000002b4300004d45000020450000525200004f5200003a20000000430000616c0000637500006c5f000050450000524900004f4400004520000042610000747400005f5600006f6c000074610000676500005f5200006177000000430000616c0000637500006c5f000050450000524900004f4400004520000070650000726900006f64000065000000"), 2),
Segment(26704, 26944, hexStringToBytes("4154000000410000542b000051490000434c00004f530000453d0000303b00002b5100004944000045410000435400003d31000000410000542b0000475300004e000000415400002b5100004343000049440000002b00005143000043490000443a000020000000415400002b51000047500000533d000031000000415400002b51000047500000534500004e44000000410000542b000051470000505300004c4f0000433d0000310000002b51000047500000534c00004f4300003a20000000410000542b00005149000041430000543d000031000000415400002b510000504f0000574400003d31000000000000"), 2),
Segment(26944, 27184, hexStringToBytes("63720000632000006f6b000020000000203c00003c0000003e3e0000200000002d5f0000200000000600fa000060fe00820720004186200040812000abf5070042012000c18d2000c0812000a7f507008b1207007606a8007626a9007a26a8007666a80076e6a9007706a9007b06a8007746a9007b46a9007786a9007b86a900f442a80035e7a80010c0b30013e8b7000000eb00805088000000eb009050880040a120008040eb000148780050a120008040eb00014878000000eb00c050880060a120008040eb00014878000a68ef0000182500110020002a09070060732300621107008860a90068110700d0c0b300"), 2),
Segment(27184, 27424, hexStringToBytes("30f60700a0c0b3002ef607000000fc00030037000000000001003700000000000060fe000ac8bf00e14f5000f9ff3a00d1338000000820000080600000f0a7000000ea000000e9004f00de00004078000080fb00610060004700dd00d13380000170a10001007000d0338800d1338000000021000080600000f0a7000000ea000000e9004f00de00004078000080fb00610060004c00dd00d133800001c0a10001007000d033880013c8bf000080fb008000eb000d0d070011c0b300d0fd2a00eb0c07000a68ef0060a12000104078000004e0000a00350060a120009040780070c7b30080cf500005003c0060a12000"), 2),
Segment(27424, 27664, hexStringToBytes("104078008040e80060a1200001487800c133800000802000008060000000e0002400320013c8bf00fe4f50002100320013c8bf00ff4f50001e003200318120009140780000c2b30080cf500019003200318120009140780010c2b30080cf500014003200318120009140780020c2b30080cf50000f003200318120009140780030c2b30080cf50000a003200318120009140780040c2b30080cf50000500320011c0b30040fe2a00b50c070010c2b30013e8b70013c8bf000080fb006101b9000080eb008080eb0002004000838048003202200003002000820f5000838f580069003e00006001002300370024003700"), 2),
Segment(27664, 27904, hexStringToBytes("25003700260037002b0037002c0037002500370026003700350037003600370037003700380037002700370028003700290037002a0037002b00370034003700350037003600370037003700520037003b0037003c0037004f0037004a0037004b00370032003700330037003c0037003d0037004200370035003700360037003b0037003c0037009700070047003700a000070045003700f300070043003700ff000700410037002e0107003f003700490107003d003700c00107003b003700dd01070039003700130207003700370034020700350037005e02070033003700ea02070031003700f50207002f003700"), 2),
Segment(27904, 28144, hexStringToBytes("170307002d003700200307002b0037007c030700290037008503070027003700dd03070025003700e3030700230037001d04070021003700260407001f0037005e0407001d0037006d0407001b003700b304070019003700bc040700170037003d0507001500370046050700130037006805070011003700730507000f003700850507000d0037008c0507000b003700a105070009003700e004070007003700f60407000500370011c0b300a0fe2a003b0c07003309070000000000c0812000dcf407000080fb00100798001e009000e60f50001dff340031c0b30090ff2a00030c07000000eb00000f780015003700"), 2),
Segment(28144, 28384, hexStringToBytes("c0812000900078001e0078000080400090407800414798004e409000ff4f500009003c0000c2b30036f507004e4090000000fb00cf80de003c0c070000c2b30030f50700020037004e4090002df507001e0fe8001e0090009e007800808f5000e7ff350031c0b300d0ff2a00e40b0700c081200083f40700f9fe37000000fa00704080000000e80070408800804080000000e8008040880071408000c0072000808f5000030036000e28ef0010c0b3000be8b70081408000900f2000808f5000030036001028ef0010c0b3000ae8b700303380004400de00614060000004a200614060000080fb00610060004400dd00"), 2),
Segment(28384, 28624, hexStringToBytes("313380000140a10001007000303388000080fa00000006000000fa00400120008050880040a120008040eb00014878001268ef0020c0b30013e8b7000080fa00000006000200fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000b00320011c0b30010002b00d00b070040c1b30012e8b700c012200001002000d4070700a0c1b30013e8b7003c00370040a1200010407800e44f50000c00360010c0b3009e0807007ac6a9004608070011c0b300f0002b00bd0b0700300220008050880030c0b30013e8b7002c0037000000eb00000f780050002000670b0700"), 2),
Segment(28624, 28864, hexStringToBytes("2041880010002000640b0700000f780020418000800078001e007800c40a070030418800400020005c0b0700000f780020418000800078001e007800d50a070040418800304180006101b8008040eb00d0012b00850b0700404180006101b80011c0b300a0022b00800b07003141800000c82000808f50000600360040a12000104078008040e80040a12000014878000300370040a120008040eb00014878000080fa00000006000000fa007ac6a80011c0b300d0022b00850b0700f00020008050880011c0b30080422b00bd0d070040c0b30013e8b7000080fa00000006000000fa00805080008000780001f0a700"), 2),
Segment(28864, 29104, hexStringToBytes("8100ea008100e900cf08de00814078000000e900805088000104e0000a00320011c0b30030042b006d0b070010c0b30012e8b7006000b80072070700a0c1b30013e8b7001900370012c0b3003100200030052b00e10407000000e00005003500f00020008050880070c0b30013e8b7000e00370012c0b3002100200070052b00d60407000000e00005003500f00020008050880070c0b30013e8b7000300370011c0b30080422b008a0d07000080fa00000006000000fa0011c0b300a0052b00470b0700a00020008050880022c0b300018f200080062b00ce090700208f20008040eb0001487800b2c0b30041902000"), 2),
Segment(29104, 29344, hexStringToBytes("b0062b00c7090700f09020008040eb0001487800b00020000042880011c0b30070072b006f0d070080c0b30013e8b7000080fa00000006000400fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000800320011c0b30030082b001f0b070010c0b30012e8b70050c0b30013e8b7006300370040812000bdf3070080407800408120002000900000407800d4c0b300b3082b00014178008040780040862000b2080700000f78001e0078000000e000500035009e0078006d8f400040812000abf30700804078001e0078000040780014c0b30093092b0001417800"), 2),
Segment(29344, 29584, hexStringToBytes("8040780040862000a1080700100798001e009000804078001e0078000040780080c050001e00780000407800014278008041eb0000417800018f200040862000940907001e0090001e0050000000e800018f20000041eb00827078001e0090006101b90011c0b300008f2000cb0a07001e009000630f40004081200085f30700804078001e007800004078000040e80014c0b30093092b000141780080407800408620007a080700100798001e0090001e0050000042880000428000804078001e00780000407800014278008041eb000041780041902000408620006d09070000428000419020000041eb0082707800"), 2),
Segment(29584, 29824, hexStringToBytes("004280006101b90011c0b30040902000a60a07004081200032f3070050c0b30013e8b700030037008040eb0070072b00f40c07000080fa00000006000000fa00004280000040780000427800f3c0b3000041eb00819120004090200051090700004280006f0040008191200022c2b300827078000042800070004000819120000041eb008270780011c0b300b0092b009f0a0700f00020008050880011c0b300500a2b00d70c070060c0b30013e8b7000080fa00000006000000fa0040812000030b0700805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a003200"), 2),
Segment(29824, 30064, hexStringToBytes("11c0b300100b2b00850a070020c0b30012e8b7006000b8008a060700a0c1b30013e8b7001e00370012c0b30091002000d00b2b00f90307000000e00006003d0012c0b30051002000800c2b00f30307000000e0000400350011c0b300500a2b00ac0c07000e00370012c0b3002100200070052b00e90307000000e00005003500e001200080508800d0c0b30013e8b7000300370011c0b300500a2b009d0c07000080fa00000006000000fa000000eb0090508800208620008040eb000148780050a120008040eb0001487800648420006000b8006011b800009abe000292be00e48420006000b8006011b800009abe00"), 2),
Segment(30064, 30304, hexStringToBytes("0292be00703e2000b0428800000120008050880011c0b300e00c2b00440a070011c0b300c0452b007e0c07000000eb00c0508800e0c0b30013e8b7000080fa00000006000000fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000800320011c0b300c00d2b002c0a0700400b200080508800f0c0b30013e8b7001600370012c0b3002100200070052b00a20307000000e00005003500400b200080508800f0c0b30013e8b7000b003700c05080000000e800c0508800c0508000e50f5000050036000000eb00c050880011c0b300c0452b004e0c07000080fa00"), 2),
Segment(30304, 30544, hexStringToBytes("000006000600fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000e00320020862000104078000004e0000400320011c0b300d00e2b00fc0907000300370011c0b300e00f2b00f809070000c1b30013e8b7007200370020862000104078000004a2000004e00003003200905080000000e800905088004081200090f20700004f7800408120002000900000407800a4c0b300e3472b001e417800804078004086200085070700100798001e0090000000e000470035004081200020009000804078001e0090000040780000c04000638420001e41780080407800"), 2),
Segment(30544, 30784, hexStringToBytes("408620002f0c07009e40780040862000a3090700d0c0b300e2f20700a0c0b300e0f20700408120003ef2070011c0b30090102b00c6090700608420005001be004000be0072f507006011b800b4f507000000e0003b003200e08420005001be004000be006af507006011b800acf507000000e0003300320020862000104078000004a2000004e0000a003200805080006101b80011c0b300f0112b0093090700c0002000805088002086200011c0b3000148780050a12000104078008040e80050a120000148780050a1200010407800ea4f50001b003600905080006101b80011c0b30090122b008009070000c1b300"), 2),
Segment(30784, 31024, hexStringToBytes("13e8b7001300370041030700200798002e0090000000e000060035002e0090006101b9008040eb00b0132b00730907000300370011c0b300e0142b008809070040812000fbf107008040eb0010472b00c00b07000080fa00000006000000fa008040eb00c0152b007d09070011c0b30060462b00b70b070010c1b30013e8b70050002000805088000080fa00000006000000fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000800320011c0b30070162b0065090700900120008050880090c0b30013e8b7000e00370012c0b3002100200070052b00db020700"), 2),
Segment(31024, 31264, hexStringToBytes("0000e00005003500900120008050880090c0b30013e8b7000300370011c0b30060462b008f0b07000080fa00000006000000fa008040eb00a0172b004c09070011c0b30030442b00860b0700a0c0b30013e8b7000080fa00000006000200fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a00320011c0b30050182b003609070040c0b30012e8b7006000b8003b050700a0c1b30013e8b7004600370012c0b30091002000d00b2b00aa0207000000e00006003d0012c0b30051002000800c2b00a40207000000e0000300350090c0b30013e8b70037003700"), 2),
Segment(31264, 31504, hexStringToBytes("40812000c3f1070080407800408120002000900000407800f3c0b30001417800804078004086200023070700000f78001e0078000000e000250035008040eb0060192b000e0907001e00780000407800f4c0b3008041eb0000417800819a200040862000ab0707001e00780000407800f4c0b30053c1b300004178003195200040862000a3070700d0c2b30011f207008040eb00809a2000f9080700d0c2b3000cf20700d0c0b3000af20700a0c0b30008f207004081200066f107004001200080508800b0c0b30013e8b7000300370011c0b30030442b00260b07000080fa00000006000000fa008040eb00e01a2b00"), 2),
Segment(31504, 31744, hexStringToBytes("e308070011c0b300a0442b001d0b0700c0c0b30013e8b7000080fa00000006000200fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a00320011c0b300a01b2b00cd08070050c0b30012e8b7006000b800d2040700a0c1b30013e8b7004200370012c0b30091002000d00b2b00410207000000e00006003d0012c0b30051002000800c2b003b0207000000e00003003500b0c0b30013e8b70033003700408120005af107008040780040812000200090000040780084c0b30033452b000141780080407800408620004f060700000f78001e0078000000e000"), 2),
Segment(31744, 31984, hexStringToBytes("200035001e007800004078006840400044c1b3008041eb0000417800719b200040862000430707004081200011f107001e0078006101b9008040eb00c01c2b007e080700d0c2b300aaf107008040eb00709b200092080700d0c2b300a5f10700d0c0b300a3f10700a0c0b300a1f10700700320008050880020c1b30013e8b7000300370011c0b300a0442b00c10a07000080fa00000006000000fa0011c0b300b01d2b007e08070030c1b30013e8b7000080fa00000006000000fa0040812000e7080700805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a003200"), 2),
Segment(31984, 32224, hexStringToBytes("11c0b300901e2b006908070060c0b30012e8b7006000b8006e040700a0c1b30013e8b7002200370012c0b3002100200070052b00dd0107000000e00005003500900120008050880040c1b30013e8b7001700370012c0b30091002000d00b2b00d20107000000e0000400350011c0b30090482b008b0a07000d00370012c0b30051002000800c2b00c80107000000e0000400350011c0b30090482b00810a07000300370011c0b30090482b007d0a07000080fa00000006000000fa008040eb00a01f2b003a08070011c0b30030952000740a070050c1b30013e8b7000080fa00000006000000fa008050800080007800"), 2),
Segment(32224, 32464, hexStringToBytes("01f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a00320011c0b30050202b002408070070c0b30012e8b7006000b80029040700a0c1b30013e8b7002200370012c0b3005100200060212b00980107000000e000050035003002200080508800c0c1b30013e8b7001700370012c0b3002100200070052b008d0107000000e00011003d0012c0b30091002000d00b2b00870107000000e0000300350040c1b30013e8b7000800370012c0b30051002000800c2b007e0107000000e0000200350040c1b30013e8b7000080fa00000006000000fa0020862000104078000004e00004003200"), 2),
Segment(32464, 32704, hexStringToBytes("11c0b300e0212b00f10707000300370011c0b300c0232b00ed070700c9010700d0c1b30013e8b7000080fa00000006000200fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000a00320011c0b300d0252b00d907070080c0b30012e8b7006000b800de030700a0c1b30013e8b7003000370012c0b30091002000d00b2b004d0107000000e00005003500408120003ff00700c0c1b30013e8b70025003700408120006af007000041780040812000200090008040780040862000bb040700000f78001e0078000000e00019003500408120002ef007001e007800"), 2),
Segment(32704, 32944, hexStringToBytes("0000e00005003a0011c0b30030272b00b30707007ba6a9000b0037001e007800e10f500005003a0011c0b30000292b00ab0707007ba6a8000300370011c0b300902a2b00a6070700900120008050880070c1b30013e8b7000080fa00000006000000fa008040eb00a02b2b009c07070011c0b300b0422b00d609070080c1b30013e8b7000080fa00000006000000fa004081200002080700805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000800320011c0b300a02c2b00840707006000b8008b030700a0c1b30013e8b7001c00370012c0b30091002000d00b2b00"), 2),
Segment(32944, 33184, hexStringToBytes("fa0007000000e0000300350070c1b30013e8b7001300370012c0b30051002000800c2b00f10007000000e0000300350070c1b30013e8b7000a00370012c0b3002100200070052b00e80007000000e000040035006000b8006e030700a0c1b30013e8b7000080fa00000006000000fa007aa6a9000040eb0039040700e90307002040800031408000000078008050880000408000114080000001be008040eb00b02d2b0039070700805080006101b80011c0b300902e2b0034070700b0c1b30013e8b7000080fa00000006000000fa00c133800000802000008060000000e00008003200805080006101b80011c0b300"), 2),
Segment(33184, 33424, hexStringToBytes("c02e2b0025070700e0c1b30013e8b70027003700805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e00008003200805080006101b80011c0b30070302b001207070010c0b30013e8b700140037000060fe00790b070035e7a9000140fe0035e7a8006d0b0700000000000000000000000000805080006101b8008040eb0020312b000107070000000000811d800000102000008060000000e000fbff32000080fa00000006000000fa007aa6a9000040eb00ea0307009a030700200020008050880020c2b30013e8b7000080fa00000006000000fa00c133800000802000"), 2),
Segment(33424, 33664, hexStringToBytes("008060000000e00008003a00200320008050880011c0b300f0312b00fc06070000c2b30013e8b70014003700805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000600320011c0b300c0332b00eb060700e0c1b30013e8b7000300370011c0b300a0352b00e50607000080fa00000006000000fa007aa6a80010c0b300bb0307006b0307007ba6a9007ac6a900a000200080508800f0c1b30013e8b7000080fa00000006000000fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e000060032007ac6a80011c0b300"), 2),
Segment(33664, 33904, hexStringToBytes("40372b00c606070040c2b30013e8b7000080fa00000006000000fa007ac6a8008040eb00f0392b00bd06070040c2b30013e8b7000080fa00000006000000fa008040eb00d03a2b00b5060700c133800000802000008060000000e0000c003a007aa6a9000040eb0089030700390307007ba6a900200320008050880011c0b300f03a2b00a606070000c2b30013e8b7000080fa00000006000000fa00805080008000780001f0a7008100ea008100e900cf08de00814078000000e900805088000104e0000900320011c0b300603b2b0093060700c01220000100200099020700a0c1b30013e8b7000a003700c1338000"), 2),
Segment(33904, 34144, hexStringToBytes("00802000008060000000e0000500320011c0b300f03c2b0085060700e0c1b30013e8b7000080fa00000006000800fa00881f78001007980021079800624798002e00900000447800408120001def070080407800408120002000900000407800084278009e01900001417800804078004086200012040700000f78001e0078000000e000100035008040eb001e009000670607008040eb00903d2b00640607001e007800cf80de008006070000c2b30074ef07006e4090000004e0000200320040812000cfee07009e007800614088001e0078004f0478000080fa00000006000a00fa000080eb00000f780040812000"), 2),
Segment(34144, 34384, hexStringToBytes("f4ee070080407800408120002000900000407800c4c0b300433e2b00014178008040780040862000e9030700100798001e0090000000e000190035001e0090006c004000100798004081200010009000804078001e0090000040780065014700020278008141780002c2b3008040780040862000fe030700404798004e4090000004e0000600320065004700ce4090009e090700000f7800408120009dee07009e007800414088001e0078000080fa00000006002000fa00889fbe000f0478000f00780080047800c0fd2a0010407800f044b000205798002e50900064405000305798002e5090008080fb008100e900"), 2),
Segment(34384, 34624, hexStringToBytes("210f98000080fb000000e8000000e8000000d100800040000f007800818747000000e8000000d10000004000300f98003e08900021c6b30001487800be5090003e089000114098003e0890008040eb00214098003e089000f1c0b300314098003e0890008040eb00414098003e089000f4c0b30053c0b3000041eb0080007800809a2000970407003e08900041c1b300415098003e0890008040eb00515098003e08900044c1b30063c1b3000041eb0080007800709b20008a040700c0fd2a0010407800804078003e089000216898003e0890008040eb0031689800c0fd2a00904078003e08900001427800c3c2b300"), 2),
Segment(34624, 34864, hexStringToBytes("0041eb008000780040fd2a0079040700608420003002be002003be00049fbe000697be00e08420003002be002003be00440798005507980066079800770798003e00be002e01be000080ea008180ea000281ea008381ea004f18de00005f98004e009000de0090006e019000fe0190000080ea008180ea000281ea008381ea004f18de00105f98000e5890000004a2000004e000070032006000b8006011b8001e1f50001e9f58001e1f59001e8f59006e00b1001e5890000004a2000004e0000e0032006022b8006033b8004e009000de0090006e019000fe0190000000520081805a0002015b0083815b0040079800"), 2),
Segment(34864, 35104, hexStringToBytes("5107980062079800730798000040eb00005798006000b80012002000030020003e02be002e03be000020e10001a8e10002b0e10003b8e100070034006022b80016002000070020003e00be002e01be00e5f40700005798000e5890000004e000330032008e5090003e089000317098003e02be002e03be000000200001f02f006011b800000062008180620002016300838163004808de00c813dd0000807300804078003e089000417098003e02be002e03be0000002000f10f20006011b8000000620081806200020163008381630001007800804078003e089000517098003e02be002e03be0000f02f0001002000"), 2),
Segment(35104, 35344, hexStringToBytes("6011b800000062008180620002016300838163004800de00c80add0000807200804078003e089000617098001e007800804078003e08900071709800370037000e50900080c0ea003e089000317098003e02be002e03be000000200001f02f006011b800000062008180620002016300838163004808de004813dd00000073000040780080c0ea003e089000417098003e02be002e03be0000002000f10f20006011b80000006200818062000201630083816300010078000040780080c0ea003e089000517098003e02be002e03be0000f02f00010020006011b800000062008180620002016300838163004800de00"), 2),
Segment(35344, 35584, hexStringToBytes("480add00000072000040780080c0ea003e089000617098001e0078000040780080c0ea003e089000717098000040eb00105798004e029000de0290006e039000fe0390006000b80012002000030020000020e10001a8e10002b0e10003b8e100090034006022b80016002000070020004e009000de0090006e019000fe01900061f40700105798001e5890000004e000390032009e5090003e089000017898004e029000de0290006e039000fe0390000000200001f02f006011b800000062008180620002016300838163004808de00c812dd0000807200804078003e089000117898004e029000de0290006e039000"), 2),
Segment(35584, 35824, hexStringToBytes("fe03900000002000f10f20006011b8000000620081806200020163008381630001007800804078003e089000217898004e029000de0290006e039000fe03900000f02f00010020006011b800000062008180620002016300838163004800de00c80bdd0000807300804078003e089000317898004e009000804078003e089000417898003d0037001e50900080c0ea003e089000017898004e029000de0290006e039000fe0390000000200001f02f006011b800000062008180620002016300838163004808de004812dd00000072000040780080c0ea003e089000117898004e029000de0290006e039000fe039000"), 2),
Segment(35824, 36064, hexStringToBytes("00002000f10f20006011b80000006200818062000201630083816300010078000040780080c0ea003e089000217898004e029000de0290006e039000fe03900000f02f00010020006011b800000062008180620002016300838163004800de00480bdd00000073000040780080c0ea003e089000317898004e0090000040780080c0ea003e08900041789800a085200010407800804078003e08900051789800b085200010407800804078003e08900061789800c085200010407800804078003e08900071789800e085200010407800804078003e08900001c09800f085200010407800804078003e08900011c09800"), 2),
Segment(36064, 36304, hexStringToBytes("0086200010407800804078003e08900021c098002086200010407800804078003e08900031c098006085200010407800804078003e08900041c098007085200010407800804078003e08900051c0980050a1200010407800804078003e08900061c098003e0890008040eb0071c0980020a1200010407800804078003e08900001c8980030a1200010407800804078003e08900011c898008085200010407800804078003e08900021c8980030418000500f9800de089000d0cc2c000008b8004308de00500f98002e589000804078003e08900031c898003e589000804078003e08900041c898003041800020030700"), 2),
Segment(36304, 36544, hexStringToBytes("804078003e08900051c8980000c8bf00804078003e08900061c8980001c8bf00804078003e08900071c8980040418000500f9800de089000d0cc2c000008b8004308de00500f98002e589000804078003e08900001d098003e589000804078003e08900011d098003e5090000080fb000080ea00600f98004e589000804078003e08900021d098005e589000804078003e08900031d098003e50900080c0e8003e089000014178008040eb0052030700700f98006e589000804078003e08900041d098007e589000804078003e08900051d098003e089000ae5090009f04070089077800880778004f04be000080fa00"), 2),
Segment(36544, 36784, hexStringToBytes("000006001600fa00100f9800210f98001e089000ae089000e00f5000e08f5800050032001e099000ae09900002408800134088002c003700100020009b030700000f78001000200098030700100798001000200095030700200798001000200092030700300798001e0090009e0040002e009000808040003e009000008040004200de004007980020418000800078004e009000ea02070030418800304180006101b80011c0b300103f2b00b30307003141800060032100808f500003003600700321005041880002003700304180005041880050418000520307008000eb0000408800114088000040800011408000"), 2),
Segment(36784, 37024, hexStringToBytes("6011b800500798006107980072079800030f9800843e2000050020006033b8005e009000ee0090007e0190008e0990006bf30700500798006107980072079800030f98005e009000ee0090007e0190008e09900084322200050020006033b80001f30700500798006107980072079800030f98005e029000ee0290007e0390008e0b900010002000010020006011b8000000420081804a0002014b0083814b00500798006107980072079800030f98005e009000ee009000204088003140880000408000114080000001be0011c0b30010412b006d0307000080fa00000006000400fa00004f7800110798009e009000"), 2),
Segment(37024, 37264, hexStringToBytes("815088009e40780032812000014978000080fa00000006000000fa00ab0507007666a8007706a9007b06a8000080fa00000006000000fa00a90507007666a9007a66a9007706a9007b06a9000080fa00000006000200fa00000f78001e007800e30f500022003200e30f500005003e00e10f500012003200e10f500016003e0009003700e50f500025003200e50f50001d003900e60f500027003200e70f50002b00320030003700d139800000fe2f00008060000000a000d03988002a003700d139800000fe2f00008060000020a000d039880024003700d139800000fe2f00008060006000b300d03988001e003700"), 2),
Segment(37264, 37504, hexStringToBytes("d139800000fe2f00008060000030a000d039880018003700d139800000fe2f00008060009000b300d039880012003700d139800000fe2f0000806000c001b300d03988000c003700d139800000fe2f0000806000d001b300d039880006003700d139800000fe2f0000806000e001b300d0398800000000000080fa00000006000200fa00004f78001e407800e14f500005003a007b46a80060a1200080c0eb000148780011003700d133800000402000008060000000e00008003a0060a12000104078000004e00008003d0060a120008040eb0001487800040037007b46a90060a120008040eb00014878000080fa00"), 2),
Segment(37504, 37744, hexStringToBytes("000006000000fa007b46a900ffff37001000fa0060079800614f9800724f98000040eb00004f780080c0b30010479800690037000060fe009e80fb006e4890000080fb0000804000100798001e009000ee009000008040009040780030c6b30080cf50005b003a001e0090000000e800ee00900000804000104078008080fb001e0090000080e8006e01900000004100104078000080fb004800dd0000804000200798009e80fb002e009000808040007e4890000080fb0063005000808f5000440031009e0090002e00900000804000ee0090000080400010407800204f98009e0090002e009000008040000000e800"), 2),
Segment(37744, 37984, hexStringToBytes("ee0090000080400010407800304f98005e019000020078000080ea008180ea0030079800ae0090003e009000808f50002c003a009e0090002e009000008040000080e800ee0090000080400010407800204f98009e0090002e0090000080400063004000ee0090000080400010407800304f98002e0090000040780080c0e8001e0090000040780001417800804078006e009000f001070040079800de0090004e009000808f50000e003a0011c0b300004a2b009e0207001e00900063004000ee0090000080400010407800e14f500002003a00100020000c0037000000eb000a0037001e4fe8009e80fb001e409000"), 2),
Segment(37984, 38224, hexStringToBytes("0080fb00808040007e4890000080fb00808f50008fff34000080eb000080fa00000006000a00fa0010079800414798005247980033079800044f98004e4090008080fb000e4890000080fb00808040005e4090000080fb00808f5000020034000040eb00180037000040eb00004f7800100037009e80fb004e4090000080fb00008040009e00900000804000904078001e80fb003e019000000041001040780080cf5000020032000040eb00060037001e4fe8000e4890009e40780080cf5000ecff390010c0b3000080fa00000006000c00fa0020079800614798007247980043079800244f98006e4090000080fb00"), 2),
Segment(38224, 38464, hexStringToBytes("100798000000eb00000f7800120037001e007800804078001e0090000040780000c040002e4a9000ce0190007e419000804078002e009000beff07000004e000040032009e0078001e00900000804000090037001e0fe8002e4890000080fb009e0040007e4090000080fb00808f5000e7ff35000080eb000080fa00000006000e00fa0030079800014f9800124f9800234f9800640798000040eb00004f78000e4890000080fb00be00900000804000100798000040eb0040479800290037008e4890002e48900080cf50000500390010c0b300404798000040eb00004f7800200037001e009000104078008000fb00"), 2),
Segment(38464, 38704, hexStringToBytes("1e4890000080fb00808f5000080032001e009000104078000004e000040032001e00900010407800ed4f500003003a0010c0b300404798000e0037001e009000904078006e009000014878006e0090000000e800600798001e0090000000e800100798000e4890000040e800004f98001e4fe8004e409000e14f5000d4ff3a006e009000a1c7b300014878001e4078000080fa00000006000a00fa00200798006147980072479800034f98006e4090000080fb00100798000000eb00000f78000f0037001e007800804078001e0090000040780000c040008e4990007e419000804078002e0090000f0007000004e000"), 2),
Segment(38704, 38944, hexStringToBytes("020032001e007800090037001e0fe8000e4890000080fb009e0040007e4090000080fb00808f5000eaff35000080eb000080fa00000006000800fa00100798004147980052479800634798004e4090008080fb006e4090000080fb00808040005e4090000080fb00808f5000020034000040eb00220037000040eb00004f780010c0b30010479800180037009e80fb004e4090000080fb00008040009e0090000080400090407800f0c2b30080cf50000a0034009e80fb004e4090000080fb00008040009e009000008040009040780090c3b30080cf5000030034000040eb0010479800050037001e4fe8006e409000"), 2),
Segment(38944, 39184, hexStringToBytes("9e40780080cf5000e4ff39001e4090000080fa00000006000600fa00000f78002147980032479800230798002e009000104078000080fb001e0f4000000000002e0090009040780010c0b3003e41900082cf5000010039000040eb000141e800ae009000824878000004e0000e0032001e007800104078008000fb002e4090000080fb000080680000f0a7000000ea000000ea004f00de00004078001e0fe8000004e000e6ff3a001e0078000080fa00000006000800fa001007980021079800624798000040eb00004f78000b0037001e009000904078002e009000014878002e0090000000e800200798001e009000"), 2),
Segment(39184, 39424, hexStringToBytes("0000e800100798001e4fe8006e4090009e40780080cf5000f1ff39000080fa00000006000a00fa0010079800210798006247980073479800044f98000040eb00004f78006e4090000080fb009e00900000804000100798007e4090000080fb00ae00900000804000200798000b0037001e009000904078002e009000014878002e0090000000e800200798001e0090000000e800100798001e4fe8000e4890009e40780080cf5000f1ff39000080fa00000006000800fa00000f7800110798004247980053479800644798004e4090000080fb001e0f40005e4090000080fb009e009000008040001007980008003700"), 2),
Segment(39424, 39664, hexStringToBytes("1e007800904078001e009000014878001e0090000000e800100798001e0fe8001e00780010407800ed4f5000f4ff3a001e0090000000e800100798001e0090008040eb00014878000080fa00000006000c00fa00889fbe0050079800de009000f0c72000808f500002003e000040eb0020003700de00900060032100808f50000200360040c6b3001a003700de00900000382f0000804000000f7800603b2000100798001e007800cf80de00bcec07000004be001e009000cf80de00b8ec07000001be000800be0048ed0700200798003107980002002000832c24002e009000be00900020ee070082ec0700004f9800"), 2),
Segment(39664, 39904, hexStringToBytes("0e4890004f04be000080fa00000006000a00fa00889fbe00300798004107980000002c00b14d2400008fbe003e0090008000eb00d0ec07000004be004e0090008000eb00ccec07000001be000800be002aed07001e01be0007ee070069ec0700200798002e0090004f04be000080fa00000006000a00fa00889fbe0030079800410798000040220081642400008fbe003e0090008000eb00b7ec07000004be004e0090008000eb00b3ec07000001be000800be0011ed07001e01be00eeed070050ec0700200798002e0090004f04be000080fa00000006001600fa00100f980041579800525798000080eb00000f7800"), 2),
Segment(39904, 40144, hexStringToBytes("0000eb0010079800360037001e0078004800de00200798004e5090008080fb001e009000008040009e08900000804000104078008080fb002e00900080806800f00f200000806000300798003e009000c480de00f00f20000080600040079800be0090004e00900080806800f00f20000080600030079800be00900051079800be009000610798006e0090004500dd0060079800be009000710798007e0090004c00dd00700798009e007800010f98001e0078004800dd00000f98008e0890007e009000808068006e009000808068005e009000008f68001e0090000000e800100798005e5090008080fb001e009000"), 2),
Segment(40144, 40384, hexStringToBytes("808f5000c5ff3c001e0078000080fa00000006000600fa00200798006000b800008fbe00ae00900010ff2f000088b90080007800e06a2f00008040008000eb00008fbe0030382000010020001e01be00800f5100818f590004003e004038200001002000008fbe000900370000842300010020001e01be00800f5100818f5900030036000018250011002000008fbe001e0078000080fa00000006000600fa00200798003407a9002e009000ddfc07000000eb00000f780002003700000000001e0fe8001e007800e90f5000fbff34003427a8000000eb00000f780002003700000000001e0fe8001e007800e90f5000"), 2),
Segment(40384, 40624, hexStringToBytes("fbff34003427a90000000000a0398000610060000000e000fcff320001388000110798001e0090000080fa00000006000600fa0010079800414798000040eb00004f7800060037001e80fb009e00900000804000104078001e4fe80035e907004e4090009e40780080cf5000f6ff39001e4078000080fa00000006000800fa00000f78001207980023079800614798008040eb001e0078001100070000c2b30024e907001e009000ae0090002b0007006e4090000004e00005003200d0c0b3001ce90700a0c0b3001ae907000200370000c2b30017e907000080fa00000006000600fa0010079800414798000040eb00"), 2),
Segment(40624, 40864, hexStringToBytes("004f7800060037001e80fb009e00900000804000104078000ae907001e4fe8001e80fb009e00900000804000104078000004e000f4ff3c004e4090000004e00005003200d0c0b300fee80700a0c0b300fce807000200370000c2b300f9e807001e4078000080fa00000006001400fa00000f9800110f98000000eb00000f78000040eb00604798000e0990009e0990000000280001002000800f5100818f590008003a000e0890009e08900061004000e0804800000f9800110f980010c0b300604798000e0890009e089000e00f5000e08f580009003d000e0890009e08900060001000e08018001007980021079800"), 2),
Segment(40864, 41104, hexStringToBytes("d0c2b300d3e80700040037000e0990009e09900012079800230798001e009000ae009000a200200003002000e5eb0700704798001e009000ae009000a2002000030020000beb070010079800210798007e40900003c3b30083404000680047001e004000014878001e0fe8001e009000ae009000e00f5000e08f5800e7ff3a006e4090000004e000030032000e4890000040e800004f98001e0fe900680047001e00400010407800aae807001e0078000000e000f8ff3a000080fa00000006000800fa00300798000040eb00204798003e0090002fe807000080fb00200798002e0090000000e0002300320031c0b300"), 2),
Segment(41104, 41344, hexStringToBytes("804a2b0056ff07000000eb00000f7800150037003e009000900078001e0078000080400010407800204798002e409000ff4f500009003e0000c2b30089e807002e4090000080fb008000eb008fff070000c2b30083e80700020037002e40900080e807001e0fe8002e0090009e007800808f5000e7ff350031c0b300c04a2b0037ff07000300370031c0b300004b2b0033ff07000080fa00000006000600fa0010079800414798000040eb00004f7800060037001e80fb009e00900000804000104078001e4fe800550007004e4090009e40780080cf5000f6ff39001e4078000080fa00000006000000fa009980a900"), 2),
Segment(41344, 41584, hexStringToBytes("9960a90080002000c01c88009a23ef0020022000001d8800e09f200090418800e09f20008041880070a020007041880070a02000604188003468ef00801025000700070060122500140007009960a80099e3a8009b43a8000080fa00000006000200fa00000f78001e0078000000e00003003a0080102500b0418800020037009e007800b14188000080fa00000006000000fa000080fa00000006000200fa00000f78001e0078000000e00003003a0060122500c0418800020037009e007800c14188000080fa00000006000000fa000080fa00000006000200fa000040eb00004f7800000000007141800060418000"), 2),
Segment(41584, 41824, hexStringToBytes("808f5000fcff320070418000104f7800704180000000e800704188007141800000a12000808f500002003a0070a02000704188001e4078000080fa00000006000200fa00004f7800000000001c0007000004a2000004e000fcff3a00804180001e487800804180000000e800804188008141800070a02000808f500002003a00e09f2000804188009980a8000080fa00000006000000fa0071418000604180000080680000f0a7000000ea000000ea004f00de00004078000080fa00000006000400fa009141800011079800814180001e009000808f5000060031009e00900080418000008050000000e900000f7800"), 2),
Segment(41824, 42064, hexStringToBytes("050037009e009000804180000080500068004000000f78001e00780000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa008141800090418000808f500009003a00d11c8000001020000080600000f0a7000000ea000000ea004f00de0000407800010037000040eb000080fa00000006000400fa006141800011079800704180009e009000808f5000060031009e009000704180000080500069004000000f7800030037009e00900070418000008f5000f00f20009e007800808f50000200360000c0eb00020037001e007800004078000080fa00000006000400fa009141800011079800"), 2),
Segment(42064, 42304, hexStringToBytes("814180001e009000808f5000060031009e00900080418000008050000000e900000f7800050037009e009000804180000080500068004000000f7800f00f20009e007800808f50000200360000c0eb00020037001e007800004078000080fa00000006000800fa002007980031079800c6ff07000080fb00000f78003e0090009e0f500002003100be009000010f78000000eb0010079800090037005aff0700ae009000804878002e0090000000e800200798001e0090000000e800100798001e0090009e0f5000f4ff39001e0078000080fa00000006000800fa002007980031079800c3ff07000080fb00000f7800"), 2),
Segment(42304, 42544, hexStringToBytes("3e0090009e0f500002003100be009000010f78000000eb0010079800090037002e00900010407800ae0090008100e800210798004eff07001e0090000000e800100798001e0090009e0f5000f4ff39001e0078000080fa00000006000400fa000000eb00000f78008cff070020479800a4ff0700304798002e4090000080fb000000e00003003200e90f500003003200040037001e20a000040037001e00a000020037001e10a000000000003e4090000080fb000000e00003003200e90f500003003200040037001e30a000020037001e40a000000000001e0078000080fa00000006000400fa001007980071418000"), 2),
Segment(42544, 42784, hexStringToBytes("1e009000008f4000020037009e007800698f500000a120009e007800808f5000faff3e001e007800104078000080fa00000006000000fa005cff07000080fb000000e9004f00de00004078000080fa00000006000000fa006eff07000080fb000000e9004f00de00004078000080fa00000006000000fa00d01c80000080fa00000006000000fa0062ff07000004e000100032009141800080418000808f500006003600904180008000780080418000008050000000e900070037009041800080007800804180000080500068004000010037000000eb000080fa00000006000000fa0031ff07000004e00010003200"), 2),
Segment(42784, 43024, hexStringToBytes("7141800060418000808f500006003600704180008000780060418000008050000000e900070037007041800080007800604180000080500068004000010037000000eb000080fa00000006000000fa0099e3a8009b43a8000080fa00000006000000fa0099e3a9009b43a9000080fa00000006000600fa0010079800414798000060fe001e009000e7ed0700004f78009e4078001e0090005cfe0700d0c0b300bbfe07004e4090000004e0000f003200e0c3b300c7e60700e0c3b300c5e607009e4078001e00900081fd0700c0c3b300c0e60700c0c3b300bee60700d0c0b300bce60700a0c0b300bae607000080fa00"), 2),
Segment(43024, 43264, hexStringToBytes("000006003000fa0050179800416f9800526f9800731798000040eb00006f980010c0b300004f78006000b8006011b800300798004107980052079800630798006000b8006011b80070079800010f9800120f9800230f98006000b8006011b800300f9800410f9800520f9800630f98006000b8006011b800700f98000117980012179800231798004e6890000080fb006a004000de10900000804000301798004e6890000080fb006a004000de109000008040003017980061c0b3003e109000e60007007e11900020099800310998000000eb0010079800d90037004e6890000080fb00de1090000080400081022000"), 2),
Segment(43264, 43504, hexStringToBytes("8e804000810178005e699000c1c2b300c9fb0700301798003e109000104078000004e000ce0032001e009000e30f500080003200e30f500007003c00e10f50003a003200e10f50004a003c000000e00008003200bb003700ea0f5000a8003200eb0f5000ad003200e40f500087003200b400370021c0b3003e109000bb0007006011b80004102e00555f20006033b800ffec0700300798004107980052079800630798003e1090000080e8003017980081c0b3003e109000ac0007006011b80070079800010f9800120f9800230f98007e0090008e0890001e099000ae099000dfe807005255250053fd23005eea0700"), 2),
Segment(43504, 43744, hexStringToBytes("97e807000203be000002be003e009000ce0090005e019000ee0190000000420081804a0002014b0083814b007e129000009abe000292be00860037003e1090009040780030c5b30080cf50007e003a007e1090005001be004000be006022b8006033b8000000520081805a0002015b0083815b007e129000009abe000292be007400370031c0b3003e1090007b0007006011b80004102e00555f20006033b800bfec0700300f9800410f9800520f9800630f98003e109000630040003017980081c0b3003e1090006c0007006011b800700f98000117980012179800231798007e0890008e1090001e119000ae119000"), 2),
Segment(43744, 43984, hexStringToBytes("9fe807005255250053fd23001eea070057e807000203be000002be003e089000ce0890005e099000ee0990000000420081804a0002014b0083814b007e12900040029800510298006202980073029800440037003e1090009040780070c5b30080cf50003e003a007e109000d000900060019000f0019000400090006022b8006033b8000000520081805a0002015b0083815b007e129000400298005102980062029800730298002e0037003e10900063004000301798003e10900090407800c0c2b30080cf5000020032000040eb00004f78003e109000630050003017980030c0b300404798001e4078000004a200"), 2),
Segment(43984, 44224, hexStringToBytes("0004e000030032004e4090000040e80040479800ce4090003e1090001f000700800078007e109000010898001100370061c0b3003e109000180007007e11900040099800510998000a00370021c0b3003e10900011000700804078007e10900021509800030037000000000001003700000000001e0090000000e800100798001e009000eb0f500024ff340001003700000000000080fa00000006000c00fa0040079800214f98006000b800008fbe006000b8002007980031079800270037001e0090006a00b900000178001e0078006000b90000007800000141009e007800a00020000008b8000101410082007800"), 2),
Segment(44224, 44464, hexStringToBytes("008fbe00008fbe004e009000104078000000fb000003b100cf80de0020079800310798002e009000be0090001e0f40005e9748004e0090000000e800400798002e4890000040e900204f98004e00900090407800e0c2b30080cf500003003a004e0090000000e800400798004e00900090407800f0c2b30080cf5000080034004e0090009040780090c3b30080cf500003003c002e4890000004e000ccff3a001e00be000080fa0000000600fe09000012000000800000002c0800000e00000080000000de09000020000000800000003a0800000200000082000000ffff00003c08000002000000800000001a0a0000"), 2),
Segment(44464, 44704, hexStringToBytes("02000000800000003e080000020000008000000046080000d200000080000000000800002c000000800000004008000002000000820000000b00000018090000900000008200000041542b0051494300534750003d312c00312c2200202020002020200020202000202020002020200020202000202020002020200020202000202020002020200020202000202020002020200020004100542b5100494f5000454e3d00312c30002c225400435022002c2230003030300030303000303030003030300030302e0074726100636b650072732e007669740069726f00766572002e657500222c3500303031002c302c00"), 2),
Segment(44704, 44944, hexStringToBytes("32004d00324d49004e544500524e45005400000000000000a809000036000000800000004208000002000000820000000b000000100a00000a00000080000000440800000200000080000000000000000000fa009021ef00f09f2f00900c880000002800a00c8800f04180000000e00002003a00007d2500240007008860a9009860a800a0a120008040eb00014878000080fa00000006000200fa00000f78009e007800910c8800a0a120008040eb00014878000080fa00000006000000fa00900c80000080fa00000006000200fa00000f78009e007800810c8800a0a120008040eb00014878000080fa0000000600"), 2),
Segment(44944, 45184, hexStringToBytes("0000fa00800c80000080fa00000006000000fa000080fa00000006000200fa00000f78009860a9009e007800f14188009860a8000080fa00000006000000fa00a0a120008040eb00014878009860a80095e1a8000080fa00000006000000fa0095e1a9009860a9000080fa00000006000200fa00a0a12000104f78001e4078000004e00003003200a0a120008040eb00014878001e4078000080fa00000006000000fa00b0a12000104078000080fb000080fa00000006000000fa00b0a120008040eb00014878000080fa00000006000000fa0000002800a03988003627ef0040a02000c03988003a27ef003c27ef00"), 2),
Segment(45184, 45424, hexStringToBytes("3e27ef004027ef004227ef004627ef004c27ef0020852500050007000080fa00000006000000fa000080fa00000006000200fa00000f78001e007800e04188000080fa00000006000000fa004104800000002200008060000000e00006003200e04180000000e00002003200e04180000000010089a0a9000080fa00000006000000fa003427a8000080fa00000006000000fa003427a9000080fa00000006000800fa0030079800b03980004200de007f4060000080fb002007980000702000100798000000eb00000f78000b0037001e00780000004000be009000008040009e00900091007800010878001e009000"), 2),
Segment(45424, 45664, hexStringToBytes("0080e800100798001e0fe8009e0078002e009000808f5000f1ff36001e0078000080fa00000006000000fa006626ef0000162000d03388002000200010338800f0a02d00b03388007426ef008826ef007226ef008626ef007426ef008826ef007226ef008626ef006826ef007c26ef00200020005033880040202d00f033880001088000f00b200000816000600420007105200003102000804978008149780082497800a13d800000fc2f00008060003000b300a03d8800e13e800000f82f00008060003000b300e03e8800a13e800000f82f00008060005000b300a03e8800b13d800000fc2f00008060000000a000"), 2),
Segment(45664, 45904, hexStringToBytes("b03d880000088000000178000260a0006004200071052000031020008049780081497800824978000080fa00000006000000fa0000042300100888000621ef006821ef006a21ef000c21ef000e21ef007821ef007c21ef007e21ef008021ef008421ef008621ef001200200080072000a109200013102000804978008149780082497800120020006004200071052000031020008049780081497800824978000000000000088000610060000000e000fcff3a00000000000108800000022000008060000000e000fbff32000080fa00000006000000fa0041068000f0f82f00008060000040a0004006880071058000"), 2),
Segment(45904, 46144, hexStringToBytes("80ff2f00008060000000a0007005880061058000f0ff28000080600000c0a0006005880041058000f0ff28000080600000c0a000400588000080fa00000006000200fa00000f78009e007800d1418800ffff37000000fa00e09d200080077800609f2000000188000080fa00000006000000fa0074ff0700b1ff0700d9ff0700afe3070068fb070021ff0700c4fe07000080fa0000000600ffff370000000000"), 2),
Segment(89600, 89840, hexStringToBytes("ffffff0000000000"), 2),
Segment(89632, 89872, hexStringToBytes("ffffff0000000000"), 2),
Segment(89648, 89888, hexStringToBytes("00ffff0000000000"), 2),
Segment(89656, 89896, hexStringToBytes("63ffff0000000000"), 2),
Segment(89664, 89904, hexStringToBytes("fbffff0000000000"), 2),
Segment(89672, 89912, hexStringToBytes("ffffff0000000000"), 2),
Segment(89680, 89920, hexStringToBytes("dfffff0000000000"), 2),
Segment(89688, 89928, hexStringToBytes("0000ff0000000000"), 2),
Segment(89696, 89936, hexStringToBytes("0000ff0000000000"), 2),
Segment(89704, 89944, hexStringToBytes("0000ff0000000000"), 2),
Segment(89712, 89952, hexStringToBytes("0000ff0000000000"), 2),
Segment(89720, 89960, hexStringToBytes("ffffff0000000000"), 2),
Segment(89728, 89968, hexStringToBytes("ffffff0000000000"), 2)};
}
BootAttrs xdbBootAttrsForTest()
{
BootAttrs bootattrs;
bootattrs.version = 258,
bootattrs.max_packet_length = 256,
bootattrs.device_id = 13398,
bootattrs.erase_size = 2048,
bootattrs.write_size = 8,
bootattrs.memory_start = 8192;
bootattrs.memory_end = 43006;
bootattrs.has_checksum = true;
return bootattrs;
}
std::vector<Segment> chunkSegmentsXdbUMTSFromPython()
{
return std::vector<Segment>{
Segment(16384, 16624, hexStringToBytes("f0220400000000000000000002000000000000000200000002000000040000000000000000000000000000000600fa00000f780011079800220798001e0078008000eb00110098001e0078008000eb00210098001e007800ae009000310098001e0078009e009000010878000080fa00000006000200fa00000f78001e0078008000eb00110098001e0078008000eb00210098000080fa00000006000200fa00000f78001e007800900090001e007800300090000000e900808f500004003a001e007800200090000000e000070032001e007800900090001e007800200090000000e900808f500002003a0010c0b300"), 2),
Segment(16624, 16864, hexStringToBytes("010037000040eb000080fa00000006000200fa00000f78001e007800900090001e00780020009000808f500002003a0010c0b300010037000040eb000080fa00000006000200fa00000f78001e007800900090001e00780020009000808f500002003c000040eb00070037001e00780010009000804078001e007800200090000040780000c050000080fa00000006000400fa00000f7800214798001e007800c2ff07000004e000020032000040eb00160037001e007800900078001e0078001000900000804000ae409000014878001e007800100090008000e8001e007800110098001e007800900090001e007800"), 2),
Segment(16864, 17104, hexStringToBytes("30009000808f500003003a001e0078008000eb001100980010c0b3000080fa00000006000400fa00000f7800110798001e007800baff07000004e000020032000040eb00180037001e007800900078001e007800200090000080400010407800804078001e009000014878001e007800200090008000e8001e007800210098001e007800a00090001e00780030009000808f500003003a001e0078008000eb002100980010c0b3000080fa00000006000000fa0080002000701d8800b023ef0020022000b01d8800afe3a800b143a8000080fa00000006000000fa0000000000801d8000610060000000e000fcff3200"), 2),
Segment(17104, 17344, hexStringToBytes("801d8000620060000000e00001003200b023a900a01d8000004078000080fa00000006000200fa00004f780000000000811d800000202000008060000000e000fbff3a001e80fb00901d88000080fa00000006000000fa00801d800000407800614060000080fb0000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa00811d800000202000008060000000e00007003a00811d800000402000008060000000e0000200320010002000010037000000eb00004078000080fa00000006000000fa00801d80004800de00614060000080fb0000f0a7000000ea000000ea004f00de0000407800"), 2),
Segment(17344, 17584, hexStringToBytes("0080fa00000006000000fa00801d80000080fa00000006000000fa00afe3a800b143a8000080fa00000006000000fa00afe3a900b143a9000080fa000000060004260400000000007a24040000000000bc24040000000000fc240400000000009a24040000000000dc240400000000001c250400000000000022040000000000002204000000000000220400000000003c25040000000000002204000000000072250400000000000022040000000000002204000000000000220400000000007c2504000000000008240400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17584, 17824, hexStringToBytes("002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000ac2504000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000064240400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000"), 2),
Segment(17824, 18064, hexStringToBytes("00220400000000000022040000000000002204000000000000220400000000000022040000000000002204000000000000220400000000000022040000000000afa120000e7f22000e01880000000000000020000000e00002003200000120002002880014000700810107000000e00003003a00202d250001002000020037000000200001002000810f70000100320014000700000020000000e000020032000000020000000000ce300200000000000040da000000fe004440a900004e20000000e0000300320000202000900188004440a800000006008a1f78008b1f780000000600a1028800800478000000eb00"), 2),
Segment(18064, 18304, hexStringToBytes("1f003700e284440054a0b4009905ba00e284440054a0b4009906ba00e284440054a0b4000006eb00476fde00fd07b200ae018800636ce10003003a00eaff07000000eb000e003700606ce10008003a00004deb000a05e800020039003420ec000af0a0008b05e900f9ff3e00040037006168e100010032000086eb000b00070019c7ba001905ba000e04e00003003a000a00e000dbff3a0000000600fe07b200ae0288008a047800f5ff37000cd0a300e20f4d001c00390089027800354dba000a05e800020039003420ec000af0a0008b05e9000f003200254dba000a05e800020039003420ec000af0a0008b05e900"), 2),
Segment(18304, 18544, hexStringToBytes("080032000c00e0000600320015cdba000a05e800020039003420ec000af0a0008b05e9008984e80054a0b4000b00e000e2ff3a00000006009902ba00055d78008b05e900f7ff3200c82ade00055d78008b05e900f3ff32000c00e000f1ff320019ddba00eeff3700000000000000000000000000000000000000000000000000000000000000000000000000000000003600f800809fbe00829fbe00849fbe00869fbe000000fa00b0418000000001009141800080418000808f500002003a009980a900190037008980a9001000370090418000904078008180fb00e11c88000000e800904188009141800050a02000"), 2),
Segment(18544, 18784, hexStringToBytes("808f500002003a00c09f2000904188009141800080418000808f500006003200d11c800000202000008060000000e000ebff320001003700000000000080fa004f03be004f02be004f01be004f00be003600f90000400600801f78000000fa00d01c8000620060000000e000010032009a23a9009020a9000080fa004f007800004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008020a9000000eb00a91807000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00a01807008040a90010002000981807000080fa00"), 2),
Segment(18784, 19024, hexStringToBytes("4f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008060a90020002000881807000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008080a90030002000781807000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa008600a90070002000681807000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00"), 2),
Segment(19024, 19264, hexStringToBytes("85e0a90080002000581807000080fa004f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000000fa00f04180000000e00002003200f04180000000010090a12000104078008040e80090a120000148780080a1200011c0b300014878008860a9000080fa004f03be004f02be004f01be004f00be003600f900004006000000fa0088e0a9009621ef000080fa00004006003600f800809fbe00829fbe00849fbe00869fbe000200fa0005003700f01c8000004f78009e4078004081200096fd0700d01c8000610060000000e000f7ff3a008960a9000080fa00"), 2),
Segment(19264, 19504, hexStringToBytes("4f03be004f02be004f01be004f00be003600f900004006003600f800809fbe00829fbe00849fbe00869fbe000200fa00801d8000620060000000e00002003200b023a90014003700801d8000640060000000e00003003200a01d8000004f78000d003700801d8000680060000000e00003003200a01d8000004f780006003700a01d8000004f78001e40780080407800c08120006afd0700801d8000610060000000e000e2ff3a008bc0a9000080fa004f03be004f02be004f01be004f00be003600f900004006000040da000000fe0000000500889fbe008a9fbe008c1f7800120107001901330003866c006450e100"), 2),
Segment(19504, 19744, hexStringToBytes("2e0032006420e100330032006150e1002f0032006120e1003100320085855500eb07b0000900200008042000050037000804440089844c000a0031000603430087834b000001530081815b00f8ff33000203be000800a0000804440089844c00f6ff3900c639dd008301730001003200130020008904d1000884d3000998a300050032000800a7000300a0008904d1000884d3008b05e8008904d1000884d3000001eb000281d200a900070001f0a1000cf0a70001f0a000f10037006420e100f30032000801be000200be00f7ff37006120e100ee0032006000b800f3ff37000000200001f82700f0ff3700839f6800"), 2),
Segment(19744, 19984, hexStringToBytes("0100e00002003d0060001000e08018000300e00002003d0060011100e0811900250107004f00e00002003b0060001000e0801800000006000003be00ae0007006011b8000470a70007f0a1006509b1001b00320012003500860220000628e10008003500f3ff2700f2ff2f006110b9000700e00018003b00030028006000b80002000500000040008180480002014900838149008502e900faff3a0008003700f88f420002003c008000eb00000005008100d1000080d3008502e800fcff3a000700e00004003b0060001000e080180060011900e0811900000006000001be00850007000470a70003f0a10003f8a300"), 2),
Segment(19984, 20224, hexStringToBytes("13003a006509b10010003200090035006928e10002003500010028000000050000004000818048008502e900fcff3a0000000600f88f4200050035008100d1000080d3008502e800fcff3a00000006008000eb0000000500881f7800030478000300e00007003d0060001000e080180060011900e081190002003b0001f02d00030037000700070008f0a70001f0a0004f047800000006004f89de0082017800edff3700889fbe008a9fbe00008270000402710004827100260032000004be000200be006011b8006b092000950220000182cf000a0039000541b1000082cf00070039000541b1000982cf0004003900"), 2),
Segment(20224, 20464, hexStringToBytes("0541b1000882cf00010039000541b10005425200120032000a003b0082817100610164008100d1000080d3008984d3000884d3008b05e8000442e800f7ff3a00070037000804440089844c0000004800818048008b05e9000442e900f9ff3a00070007004f05be004f04be00000006006011b800cfff370004002000d401370081002000618055000b003d000b00200061fe2f000100e1001d00340082817100610164008904d1000884d3000000e800faff3a00710020006100640003007000020060000900320061044400e0844c000988a500050032008b05e8006808e10002003a008904d1000884d300f20f2000"), 2),
Segment(20464, 20704, hexStringToBytes("0258e10005003d00c75ddd00f907b2008980750008007800000006000bf827008b00780000000500c70ade00f107b200f50fb20008003200e1cf4200020032000170a00024000500810f7000010032000408050044000500810f700002003a00140005008502e9000000400081c04800fcff3b000170a000240005000004be00e9ff07000003be000405be000200be00e5ff0700844f7500000006000200be006450e100050036006420e100020036000968a30001003a000800be000160a0004f0678004f05be004f04be0000000600f0ff2f00f1ff2700f9ff3700811f78000100e00002003d0060001000e0801800"), 2),
Segment(20704, 20944, hexStringToBytes("0300e00002003d0060011100e0811900490007004f00e00002003b0060001000e080180000000600889fbe008a9fbe008c1f7800d5ff0700dcff330003866c006450e100240032006420e100270032006150e100220032006120e100210032008b854200eb07b1000134b800003ab8000804420089844a00013ab8000030b8008880400009014a00040033000000400081804800020149008b05e900c909dd00830170000100320013002000c814de004814dd004709de001200b200c808de000884700076ff070001f0a1000cf0a70001f0a000beff37006120e100c0ff32000801be000200be00f7ff37006150e100"), 2),
Segment(20944, 21184, hexStringToBytes("fcff3a00baff37006022b800060220000000d0008180d2000482d2008582d2000000a0000202520083825a00030031000202420083824a000000a1000603e900f3ff3a0000000600efff07000400be0000000600889fbe008a9fbe0030044200b0844a0030054b0090854b006000b1000898be000a90be000440e10005c8e10006d0e10007d8e10002003100680040001008e8004f05be004f04be0000000600889fbe008a9fbe003004be002005be000418540005985c0006185d0007985d00110020000440e10005c8e10006d0e10007d8e100010039008000eb00108810004f05be004f04be00000006001200fa00"), 2),
Segment(21184, 21424, hexStringToBytes("889fbe008a9fbe008c9fbe00e0b79f00f1b79f0082bf9f0093bf9f000605be000404be000000eb00d0b79f00c0b79f00b0b79f00a0b79f0090b79f00000678005fb19700cfb09700820141003fb097000200e00004003d00370007007e805700c0ff070003003700330007007e805700cfff0700dfb697000d00e0000c0035006fb29700ffb297000fbb97009fbb970010002000010020006011b800000272008182720002037300838373001b0007000c06e80001042000810f5600e0ff3a000d00e00004003d000802be000a03be007e805700a3ff07005fa897000000e00005003a001fb29700afb297003fb39700"), 2),
Segment(21424, 21664, hexStringToBytes("cfb39700090007006fb09700ffb097000fb997009fb997004f06be004f05be004f04be000080fa00000006000100070000000600a4b79f00b5b79f00c6b79f00d7b79f00000006004f09de0082817100b3b79f004f01de008180400082807000a1b79f008fb097004f09de00000040000200700090b79f007fa897004f01de00818040008280700081b79f000d0007004f3ade000000400004007000f0af9f00080007000402420085824a0006034b0087834b00dfff07000802be000a03be00000006002fb29700bfb297004fb39700dfb3970000000600881f780018002000881f780089ff07008f87e9004f047800"), 2),
Segment(21664, 21904, hexStringToBytes("00000600801feb0084ff07008f87e90000000600889fbe008a9fbe00e00f5000e08f5800e00f5900e08f59000c003d006044b8006055b8000000540081805c0002015d0083815d00180020001500070008003d00180007000004eb00050037000004eb000f00070002003d001200070018002000dcff07000800e000060032006022b8006033b8000000520081805a0002015b0083815b004f05be004f04be0000000600e00f5200e08f5a00e00f5b00e08f5b00000006006044b8006055b8000402540085825c0006035d0087835d0000000600889fbe008a9fbe008c1f7800e00f5000e08f5800e00f5900e08f5900"), 2),
Segment(21904, 22144, hexStringToBytes("0d003d006044b8006055b8000000540081805c0002015d0083815d001c0020000820e10009a8e1000ab0e1000bb8e1000d003d00080037000006eb00e00f5200e08f5a00e00f5b00e08f5b0006003d006044b8006055b8000402540085825c0006035d0087835d00aaff07000c00e000060032006022b8006033b8000000520081805a0002015b0083815b004f0678004f05be004f04be0000000600889fbe008a9fbe008c1f78000006eb00e00f5000e08f5800e00f5900e08f590007003d006044b8006055b8000000540081805c0002015d0083815d001c002000e00f5200e08f5a00e00f5b00e08f5b0007003d00"), 2),
Segment(22144, 22384, hexStringToBytes("6044b8006055b8000402540085825c0006035d0087835d000c00a200270007000c00e000060032006022b8006033b8000000520081805a0002015b0083815b004f0678004f05be004f04be0000000600889fbe008a9fbe00841f780063fe07004f00780011003300f0ff2f00838f6c0006003b00040565000a00a7000800370009f0a6001000200008003700820f5400838f5c00030039001000200001003e000000200009f0a7000000ea004f05be004f04be000000e00000000600889fbe008a9fbe008c9fbe000404b8000506b8008904460060854e000606b8000a054600e0854e000706b8008b054600040eb800"), 2),
Segment(22384, 22624, hexStringToBytes("890446000a854e00e0854d00050eb8000a0546008b854e00060eb8008b0546000416b8000a0546008b854e000516b8008b054600041eb8008b0546000800be000a01be004f06be004f05be004f04be000000060080007800010178003104e000fdff3a000000510000000600745f0000332e0000302e00003000000007200000737400006174000065000000202a00002a2a00002000000052450000424f00004f5400002064000065660000617500006c740000002000003c3c0000003e00003e2000000043000048450000434b00005f4200004154000054200000544f00000043000048450000434b00005f420000"), 2),
Segment(22624, 22864, hexStringToBytes("41540000542000004f4b00000043000048450000434b00005f42000041540000542000005600000020200000004200004f4f0000545f00005155000045430000544500004c200000736500006e6400004364000065200000004200004f4f0000545f00005155000045430000544500004c200000544f00000052000044590000004f00004b000000435000004253000020730000656e000064430000646500002000000049500000004d0000324d0000494e000054450000524e00004554000000410000542b000043470000444300004f4e0000543f0000004300005042000053200000544f0000002b000043470000"), 2),
Segment(22864, 23104, hexStringToBytes("444300004f4e0000543a0000203100002c22000000220000004900004e490000545f0000415000004e20000000410000542b00005149000043530000475000003d310000004900004e490000545f0000415000004e200000746f0000004e00004f2000004341000052520000494500005200000045520000524f00005200000047450000545f000047500000535f0000696e0000697400002000000047500000535f00006f700000656e00005f7700006169000074200000544f000000470000505300005f720000756e0000206300006f6f0000726400002e4f00004b00000047500000535f0000727500006e200000"), 2),
Segment(23104, 23344, hexStringToBytes("544f000000670000707300005f6900006e6600006f7300002e5f0000636f00006e760000657200006765000064200000006300006f6e000076650000726700006564000000470000505300005f720000756e0000206300006f6f0000726400002e4f00004b3100000047000065740000434d0000455f000065720000726f0000725f0000636f0000646500003a000000736500006e6400002067000070730000206300006465000020000000434c00004f530000455f00004750000053200000004300004c4f0000534500005f470000505300005f6c00006f6f0000702000006e4f00004b00000047450000545f0000"), 2),
Segment(23344, 23584, hexStringToBytes("494d0000454900003020000000470000455400005f4900004d450000495f00006c6f00006f700000205400004f00000047450000545f0000494d0000454900005f7700006169000074200000726500006365000069760000656400002000000047450000545f00004943000043490000443000002000000047450000545f00004943000043490000445f00006c6f00006f700000205400004f00000049430000434900004420000072650000636500006976000065640000004f0000504500004e5f000050440000505f0000696e000069740000004f0000504500004e5f000050440000505f00006c6f00006f700000"), 2),
Segment(23584, 23824, hexStringToBytes("205400004f0000004f500000454e00005f5400004350000030200000004f0000504500004e5f000054430000505f00006c6f00006f700000205400004f000000434f00004e4e00004543000054000000736500006e640000546f0000436c00006f75000064540000726100006d6500002047000050530000636f00006e760000657200006765000064000000736500006e640000546f0000436c00006f75000064540000726100006d65000020470000505300006e6f0000746300006f6e000076650000726700006564000000470000505300005f530000656e000064460000726100006d6500005f6c00006f6f0000"), 2),
Segment(23824, 24064, hexStringToBytes("70200000544f0000003900003920000072650000636500006976000065640000204e00004f54000020770000616b000065750000702000004c6900006e75000078000000393900002072000065630000656900007665000064200000574100004b45000055500000204c0000696e000075780000003900003920000072650000636500006976000065640000203f00003f3f00003f000000434c00004f530000455f00005149000020530000455400005550000020000000434c00004f530000455f0000514900005f6c00006f6f000070200000544f0000005300004c45000045500000494e0000475f0000696e0000"), 2),
Segment(24064, 24304, hexStringToBytes("69740000002c000020000000534c000045450000504900004e470000202e00002e2e000061770000616b00006520000062790000204c0000696e00007578000000410000574100004b4900004e4700002021000020000000534c000045450000504900004e470000202e00002e2e0000006700006c690000746300006820000047500000494f0000335f0000494f0000303800005f4f00004646000020750000706400006f7700006e000000557000005f660000726f00006d5f000074720000616300006b6900006e6700005f6c00006f6f0000702000004f46000046200000666900006e000000557000005f660000"), 2),
Segment(24304, 24544, hexStringToBytes("726f00006d5f000074720000616300006b6900006e6700005f6c00006f6f0000702000004f460000460000005155000045430000544500004c5f0000627900004c6900006e750000785f0000557000005f660000726f00006d5f0000736c000065650000705f0000707200006f6600006f6e0000645f00006c6f00006f70000000730000657400005f50000045520000535400005f4f00004646000000720000007400006f4400006f7700006e00000050610000737300006167000065200000656e0000207300006c6500006570000020700000726f0000666f00006e640000007400006f5500007020000062610000"), 2),
Segment(24544, 24784, hexStringToBytes("636b00000020000072650000636500006976000065640000200000002b4300004d45000020450000525200004f5200003a20000000430000616c0000637500006c5f000050450000524900004f4400004520000042610000747400005f5600006f6c000074610000676500005f5200006177000000430000616c0000637500006c5f000050450000524900004f4400004520000070650000726900006f640000650000004154000000410000542b000051490000434c00004f530000453d0000303b00002b5100004944000045410000435400003d31000000410000542b0000475300004e000000415400002b510000"), 2),
Segment(24784, 25024, hexStringToBytes("4343000049440000002b00005143000043490000443a000020000000415400002b51000047500000533d000031000000415400002b51000047500000534500004e44000000410000542b000051470000505300004c4f0000433d0000310000002b51000047500000534c00004f4300003a20000000410000542b00005149000041430000543d000031000000415400002b510000504f0000574400003d3100000000000063720000632000006f6b000020000000203c00003c0000003e3e0000200000002d5f0000200000000600fa000060fe008207200021862000408120009ef7070042012000a18d2000c0812000"), 2),
Segment(25024, 25264, hexStringToBytes("9af70700891207007606a8007626a9007a26a8007666a80076e6a9007706a9007b06a8007746a9007b46a9007786a9007b86a900f442a80035e7a80010c0b30013e8b7000000eb00705088000000eb008050880020a120008040eb000148780030a120008040eb00014878000000eb00b050880040a120008040eb00014878000a68ef0000182500110020002a09070000352300601107008860a90066110700d0c0b30023f80700a0c0b30021f807000000fc00030037000000000001003700000000000060fe000ac8bf00e14f5000f9ff3a00d1338000000820000080600000f0a7000000ea000000e9004f00de00"), 2),
Segment(25264, 25504, hexStringToBytes("004078000080fb00610060004700dd00d13380000170a10001007000d0338800d1338000000021000080600000f0a7000000ea000000e9004f00de00004078000080fb00610060004c00dd00d133800001c0a10001007000d033880013c8bf000080fb008000eb000d0d070011c0b30070bf2a00eb0c07000a68ef0040a12000104078000004e0000a00350040a120009040780070c7b30080cf500005003c0040a12000104078008040e80040a1200001487800c133800000802000008060000000e0002400320013c8bf00fe4f50002100320013c8bf00ff4f50001e003200318120009140780000c2b30080cf5000"), 2),
Segment(25504, 25744, hexStringToBytes("19003200318120009140780010c2b30080cf500014003200318120009140780020c2b30080cf50000f003200318120009140780030c2b30080cf50000a003200318120009140780040c2b30080cf50000500320011c0b300e0bf2a00b50c070010c2b30013e8b70013c8bf000080fb006101b9000080eb008080eb0002004000838048003202200003002000820f5000838f580069003e0000600100230037002400370025003700260037002b0037002c0037002500370026003700350037003600370037003700380037002700370028003700290037002a0037002b00370034003700350037003600370037003700"), 2),
Segment(25744, 25984, hexStringToBytes("520037003b0037003c0037004f0037004a0037004b00370032003700330037003c0037003d0037004200370035003700360037003b0037003c0037009700070047003700a000070045003700f300070043003700ff000700410037002e0107003f003700490107003d003700c00107003b003700dd01070039003700130207003700370034020700350037005e02070033003700ea02070031003700f50207002f003700170307002d003700200307002b0037007c030700290037008503070027003700dd03070025003700e3030700230037001d04070021003700260407001f0037005e0407001d0037006d040700"), 2),
Segment(25984, 26224, hexStringToBytes("1b003700b304070019003700bc040700170037003d0507001500370046050700130037006805070011003700730507000f003700850507000d0037008c0507000b003700a105070009003700e004070007003700f60407000500370011c0b30040c02a003b0c07003309070000000000c0812000cff607000080fb00100798001e009000e60f50001dff340031c0b30030c12a00030c07000000eb00000f780015003700c0812000900078001e0078000080400090407800414798004e409000ff4f500009003c0000c2b30029f707004e4090000000fb00cf80de003c0c070000c2b30023f70700020037004e409000"), 2),
Segment(26224, 26464, hexStringToBytes("20f707001e0fe8001e0090009e007800808f5000e7ff350031c0b30070c12a00e40b0700c081200076f60700f9fe37000000fa00704080000000e80070408800804080000000e8008040880071408000c0072000808f5000030036000e28ef0010c0b3000be8b70081408000900f2000808f5000030036001028ef0010c0b3000ae8b700303380004400de00614060000004a200614060000080fb00610060004400dd00313380000140a10001007000303388000080fa00000006000000fa00400120007050880020a120008040eb00014878001268ef0020c0b30013e8b7000080fa00000006000200fa0070508000"), 2),
Segment(26464, 26704, hexStringToBytes("8000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000b00320011c0b300b0c12a00d00b070040c1b30012e8b700c012200001002000d4070700a0c1b30013e8b7003c00370020a1200010407800e44f50000c00360010c0b3009e0807007ac6a9004608070011c0b30090c22a00bd0b0700300220007050880030c0b30013e8b7002c0037000000eb00000f780050002000670b07002041880010002000640b0700000f780020418000800078001e007800c40a070030418800400020005c0b0700000f780020418000800078001e007800d50a070040418800304180006101b800"), 2),
Segment(26704, 26944, hexStringToBytes("8040eb0070c32a00850b0700404180006101b80011c0b30040c42a00800b07003141800000c82000808f50000600360020a12000104078008040e80020a12000014878000300370020a120008040eb00014878000080fa00000006000000fa007ac6a80011c0b30070c42a00850b0700f00020007050880011c0b30020042b00be0d070040c0b30013e8b7000080fa00000006000000fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000a00320011c0b300d0c52a006d0b070010c0b30012e8b7006000b80072070700a0c1b30013e8b7001900370012c0b300"), 2),
Segment(26944, 27184, hexStringToBytes("31002000d0c62a00e10407000000e00005003500f00020007050880070c0b30013e8b7000e00370012c0b3002100200010c72a00d60407000000e00005003500f00020007050880070c0b30013e8b7000300370011c0b30020042b008b0d07000080fa00000006000000fa0011c0b30040c72a00470b0700a00020007050880022c0b300e18e200020c82a00ce090700008f20008040eb0001487800b2c0b3002190200050c82a00c7090700d09020008040eb0001487800b00020000042880011c0b30010c92a00700d070080c0b30013e8b7000080fa00000006000400fa00705080008000780001f0a7008100ea00"), 2),
Segment(27184, 27424, hexStringToBytes("8100e900cf08de00814078000000e900705088000104e0000800320011c0b300d0c92a001f0b070010c0b30012e8b70050c0b30013e8b7006300370040812000b0f5070080407800408120002000900000407800d4c0b30053ca2a00014178008040780020862000b2080700000f78001e0078000000e000500035009e0078006d8f4000408120009ef50700804078001e0078000040780014c0b30033cb2a00014178008040780020862000a1080700100798001e009000804078001e0078000040780080c050001e00780000407800014278008041eb0000417800e18e200020862000940907001e0090001e005000"), 2),
Segment(27424, 27664, hexStringToBytes("0000e800e18e20000041eb00827078001e0090006101b90011c0b300e08e2000cb0a07001e009000630f40004081200078f50700804078001e007800004078000040e80014c0b30033cb2a000141780080407800208620007a080700100798001e0090001e0050000042880000428000804078001e00780000407800014278008041eb000041780021902000208620006d09070000428000219020000041eb0082707800004280006101b90011c0b30020902000a60a07004081200025f5070050c0b30013e8b700030037008040eb0010c92a00f50c07000080fa00000006000000fa00004280000040780000427800"), 2),
Segment(27664, 27904, hexStringToBytes("f3c0b3000041eb00619120002090200051090700004280006f0040006191200022c2b300827078000042800070004000619120000041eb008270780011c0b30050cb2a009f0a0700f00020007050880011c0b300f0cb2a00d80c070060c0b30013e8b7000080fa00000006000000fa0040812000030b0700705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000a00320011c0b300b0cc2a00850a070020c0b30012e8b7006000b8008a060700a0c1b30013e8b7001e00370012c0b3009100200070cd2a00f90307000000e00006003d0012c0b3005100200020ce2a00"), 2),
Segment(27904, 28144, hexStringToBytes("f30307000000e0000400350011c0b300f0cb2a00ad0c07000e00370012c0b3002100200010c72a00e90307000000e00005003500e001200070508800d0c0b30013e8b7000300370011c0b300f0cb2a009e0c07000080fa00000006000000fa000000eb0080508800008620008040eb000148780030a120008040eb0001487800448420006000b8006011b800009abe000292be00c48420006000b8006011b800009abe000292be00703e2000a0428800000120007050880011c0b30080ce2a00440a070011c0b30060072b007f0c07000000eb00b0508800e0c0b30013e8b7000080fa00000006000000fa0070508000"), 2),
Segment(28144, 28384, hexStringToBytes("8000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000800320011c0b30060cf2a002c0a0700400b200070508800f0c0b30013e8b7001600370012c0b3002100200010c72a00a20307000000e00005003500400b200070508800f0c0b30013e8b7000b003700b05080000000e800b0508800b0508000e50f5000050036000000eb00b050880011c0b30060072b004f0c07000080fa00000006000600fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000e00320000862000104078000004e0000400320011c0b30070d02a00"), 2),
Segment(28384, 28624, hexStringToBytes("fc0907000300370011c0b30080d12a00f809070000c1b30013e8b7007200370000862000104078000004a2000004e00003003200805080000000e800805088004081200083f40700004f7800408120002000900000407800a4c0b30083092b001e417800804078002086200085070700100798001e0090000000e000470035004081200020009000804078001e0090000040780000c04000438420001e4178008040780020862000300c07009e40780020862000a3090700d0c0b300d5f40700a0c0b300d3f407004081200031f4070011c0b30030d22a00c6090700408420005001be004000be00a7f707006011b800"), 2),
Segment(28624, 28864, hexStringToBytes("e9f707000000e0003b003200c08420005001be004000be009ff707006011b800e1f707000000e0003300320000862000104078000004a2000004e0000a003200705080006101b80011c0b30090d32a0093090700c0002000705088000086200011c0b3000148780030a12000104078008040e80030a120000148780030a1200010407800ea4f50001b003600805080006101b80011c0b30030d42a008009070000c1b30013e8b7001300370041030700200798002e0090000000e000060035002e0090006101b9008040eb0050d52a00730907000300370011c0b30080d62a008809070040812000eef307008040eb00"), 2),
Segment(28864, 29104, hexStringToBytes("b0082b00c10b07000080fa00000006000000fa008040eb0060d72a007d09070011c0b30000082b00b80b070010c1b30013e8b70050002000705088000080fa00000006000000fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000800320011c0b30010d82a0065090700900120007050880090c0b30013e8b7000e00370012c0b3002100200010c72a00db0207000000e00005003500900120007050880090c0b30013e8b7000300370011c0b30000082b00900b07000080fa00000006000000fa008040eb0040d92a004c09070011c0b300d0052b00870b0700"), 2),
Segment(29104, 29344, hexStringToBytes("a0c0b30013e8b7000080fa00000006000200fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000a00320011c0b300f0d92a003609070040c0b30012e8b7006000b8003b050700a0c1b30013e8b7004600370012c0b3009100200070cd2a00aa0207000000e00006003d0012c0b3005100200020ce2a00a40207000000e0000300350090c0b30013e8b7003700370040812000b6f3070080407800408120002000900000407800f3c0b30001417800804078002086200023070700000f78001e0078000000e000250035008040eb0000db2a000e0907001e007800"), 2),
Segment(29344, 29584, hexStringToBytes("00407800f4c0b3008041eb0000417800619a200020862000ab0707001e00780000407800f4c0b30053c1b300004178001195200020862000a3070700d0c2b30004f407008040eb00609a2000f9080700d0c2b300fff30700d0c0b300fdf30700a0c0b300fbf307004081200059f307004001200070508800b0c0b30013e8b7000300370011c0b300d0052b00270b07000080fa00000006000000fa008040eb0080dc2a00e308070011c0b30040062b001e0b0700c0c0b30013e8b7000080fa00000006000200fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e000"), 2),
Segment(29584, 29824, hexStringToBytes("0a00320011c0b30040dd2a00cd08070050c0b30012e8b7006000b800d2040700a0c1b30013e8b7004200370012c0b3009100200070cd2a00410207000000e00006003d0012c0b3005100200020ce2a003b0207000000e00003003500b0c0b30013e8b70033003700408120004df307008040780040812000200090000040780084c0b300d3062b000141780080407800208620004f060700000f78001e0078000000e000200035001e007800004078006840400044c1b3008041eb0000417800519b200020862000430707004081200004f307001e0078006101b9008040eb0060de2a007e080700d0c2b3009df30700"), 2),
Segment(29824, 30064, hexStringToBytes("8040eb00509b200092080700d0c2b30098f30700d0c0b30096f30700a0c0b30094f30700700320007050880020c1b30013e8b7000300370011c0b30040062b00c20a07000080fa00000006000000fa0011c0b30050df2a007e08070030c1b30013e8b7000080fa00000006000000fa0040812000e7080700705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000a00320011c0b30030e02a006908070060c0b30012e8b7006000b8006e040700a0c1b30013e8b7002200370012c0b3002100200010c72a00dd0107000000e00005003500900120007050880040c1b300"), 2),
Segment(30064, 30304, hexStringToBytes("13e8b7001700370012c0b3009100200070cd2a00d20107000000e0000400350011c0b300300a2b008c0a07000d00370012c0b3005100200020ce2a00c80107000000e0000400350011c0b300300a2b00820a07000300370011c0b300300a2b007e0a07000080fa00000006000000fa008040eb0040e12a003a08070011c0b30010952000750a070050c1b30013e8b7000080fa00000006000000fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000a00320011c0b300f0e12a002408070070c0b30012e8b7006000b80029040700a0c1b30013e8b70022003700"), 2),
Segment(30304, 30544, hexStringToBytes("12c0b3005100200000e32a00980107000000e000050035003002200070508800c0c1b30013e8b7001700370012c0b3002100200010c72a008d0107000000e00011003d0012c0b3009100200070cd2a00870107000000e0000300350040c1b30013e8b7000800370012c0b3005100200020ce2a007e0107000000e0000200350040c1b30013e8b7000080fa00000006000000fa0000862000104078000004e0000400320011c0b30080e32a00f10707000300370011c0b30060e52a00ed070700c9010700d0c1b30013e8b7000080fa00000006000200fa00705080008000780001f0a7008100ea008100e900cf08de00"), 2),
Segment(30544, 30784, hexStringToBytes("814078000000e900705088000104e0000a00320011c0b30070e72a00d907070080c0b30012e8b7006000b800de030700a0c1b30013e8b7003000370012c0b3009100200070cd2a004d0107000000e000050035004081200032f20700c0c1b30013e8b70025003700408120005df207000041780040812000200090008040780020862000bb040700000f78001e0078000000e000190035004081200021f207001e0078000000e00005003a0011c0b300d0e82a00b30707007ba6a9000b0037001e007800e10f500005003a0011c0b300a0ea2a00ab0707007ba6a8000300370011c0b30030ec2a00a607070090012000"), 2),
Segment(30784, 31024, hexStringToBytes("7050880070c1b30013e8b7000080fa00000006000000fa008040eb0040ed2a009c07070011c0b30050042b00d709070080c1b30013e8b7000080fa00000006000000fa004081200002080700705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000800320011c0b30040ee2a00840707006000b8008b030700a0c1b30013e8b7001c00370012c0b3009100200070cd2a00fa0007000000e0000300350070c1b30013e8b7001300370012c0b3005100200020ce2a00f10007000000e0000300350070c1b30013e8b7000a00370012c0b3002100200010c72a00e8000700"), 2),
Segment(31024, 31264, hexStringToBytes("0000e000040035006000b8006e030700a0c1b30013e8b7000080fa00000006000000fa007aa6a9000040eb0039040700e90307002040800031408000000078007050880000408000114080000001be008040eb0050ef2a0039070700705080006101b80011c0b30030f02a0034070700b0c1b30013e8b7000080fa00000006000000fa00c133800000802000008060000000e00008003200705080006101b80011c0b30060f02a0025070700e0c1b30013e8b70027003700705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e00008003200705080006101b80011c0b300"), 2),
Segment(31264, 31504, hexStringToBytes("10f22a001207070010c0b30013e8b700140037000060fe00770b070035e7a9000140fe0035e7a8006b0b0700000000000000000000000000705080006101b8008040eb00c0f22a000107070000000000811d800000102000008060000000e000fbff32000080fa00000006000000fa007aa6a9000040eb00ea0307009a030700200020007050880020c2b30013e8b7000080fa00000006000000fa00c133800000802000008060000000e00008003a00200320007050880011c0b30090f32a00fc06070000c2b30013e8b70014003700705080008000780001f0a7008100ea008100e900cf08de00814078000000e900"), 2),
Segment(31504, 31744, hexStringToBytes("705088000104e0000600320011c0b30060f52a00eb060700e0c1b30013e8b7000300370011c0b30040f72a00e50607000080fa00000006000000fa007aa6a80010c0b300bb0307006b0307007ba6a9007ac6a900a000200070508800f0c1b30013e8b7000080fa00000006000000fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e000060032007ac6a80011c0b300e0f82a00c606070040c2b30013e8b7000080fa00000006000000fa007ac6a8008040eb0090fb2a00bd06070040c2b30013e8b7000080fa00000006000000fa008040eb0070fc2a00b5060700"), 2),
Segment(31744, 31984, hexStringToBytes("c133800000802000008060000000e0000c003a007aa6a9000040eb0089030700390307007ba6a900200320007050880011c0b30090fc2a00a606070000c2b30013e8b7000080fa00000006000000fa00705080008000780001f0a7008100ea008100e900cf08de00814078000000e900705088000104e0000900320011c0b30000fd2a0093060700c01220000100200099020700a0c1b30013e8b7000a003700c133800000802000008060000000e0000500320011c0b30090fe2a0085060700e0c1b30013e8b7000080fa00000006000800fa00881f78001007980021079800624798002e0090000044780040812000"), 2),
Segment(31984, 32224, hexStringToBytes("10f1070080407800408120002000900000407800084278009e01900001417800804078002086200012040700000f78001e0078000000e000100035008040eb001e009000670607008040eb0030ff2a00640607001e007800cf80de008006070000c2b30067f107006e4090000004e0000200320040812000c2f007009e007800614088001e0078004f0478000080fa00000006000a00fa000080eb00000f780040812000e7f0070080407800408120002000900000407800c4c0b300e3ff2a00014178008040780020862000e9030700100798001e0090000000e000190035001e0090006c0040001007980040812000"), 2),
Segment(32224, 32464, hexStringToBytes("10009000804078001e0090000040780065014700020278008141780002c2b3008040780020862000fe030700404798004e4090000004e0000600320065004700ce4090009f090700000f78004081200090f007009e007800414088001e0078000080fa00000006002000fa00889fbe000f0478000f0078008004780060bf2a0010407800f044b000205798002e50900064405000305798002e5090008080fb008100e900210f98000080fb000000e8000000e8000000d100800040000f007800818747000000e8000000d10000004000300f98003e08900021c6b30001487800be5090003e089000114098003e089000"), 2),
Segment(32464, 32704, hexStringToBytes("8040eb00214098003e089000f1c0b300314098003e0890008040eb00414098003e089000f4c0b30053c0b3000041eb0080007800609a2000970407003e08900041c1b300415098003e0890008040eb00515098003e08900044c1b30063c1b3000041eb0080007800509b20008a04070060bf2a0010407800804078003e089000216898003e0890008040eb003168980060bf2a00904078003e08900001427800c3c2b3000041eb0080007800e0be2a0079040700408420003002be002003be00049fbe000697be00c08420003002be002003be00440798005507980066079800770798003e00be002e01be000080ea00"), 2),
Segment(32704, 32944, hexStringToBytes("8180ea000281ea008381ea004f18de00005f98004e009000de0090006e019000fe0190000080ea008180ea000281ea008381ea004f18de00105f98000e5890000004a2000004e000070032006000b8006011b8001e1f50001e9f58001e1f59001e8f59006e00b1001e5890000004a2000004e0000e0032006022b8006033b8004e009000de0090006e019000fe0190000000520081805a0002015b0083815b00400798005107980062079800730798000040eb00005798006000b80012002000030020003e02be002e03be000020e10001a8e10002b0e10003b8e100070034006022b80016002000070020003e00be00"), 2),
Segment(32944, 33184, hexStringToBytes("2e01be00fff40700005798000e5890000004e000330032008e5090003e089000317098003e02be002e03be000000200001f02f006011b800000062008180620002016300838163004808de00c813dd0000807300804078003e089000417098003e02be002e03be0000002000f10f20006011b8000000620081806200020163008381630001007800804078003e089000517098003e02be002e03be0000f02f00010020006011b800000062008180620002016300838163004800de00c80add0000807200804078003e089000617098001e007800804078003e08900071709800370037000e50900080c0ea003e089000"), 2),
Segment(33184, 33424, hexStringToBytes("317098003e02be002e03be000000200001f02f006011b800000062008180620002016300838163004808de004813dd00000073000040780080c0ea003e089000417098003e02be002e03be0000002000f10f20006011b80000006200818062000201630083816300010078000040780080c0ea003e089000517098003e02be002e03be0000f02f00010020006011b800000062008180620002016300838163004800de00480add00000072000040780080c0ea003e089000617098001e0078000040780080c0ea003e089000717098000040eb00105798004e029000de0290006e039000fe0390006000b80012002000"), 2),
Segment(33424, 33664, hexStringToBytes("030020000020e10001a8e10002b0e10003b8e100090034006022b80016002000070020004e009000de0090006e019000fe0190007bf40700105798001e5890000004e000390032009e5090003e089000017898004e029000de0290006e039000fe0390000000200001f02f006011b800000062008180620002016300838163004808de00c812dd0000807200804078003e089000117898004e029000de0290006e039000fe03900000002000f10f20006011b8000000620081806200020163008381630001007800804078003e089000217898004e029000de0290006e039000fe03900000f02f00010020006011b800"), 2),
Segment(33664, 33904, hexStringToBytes("000062008180620002016300838163004800de00c80bdd0000807300804078003e089000317898004e009000804078003e089000417898003d0037001e50900080c0ea003e089000017898004e029000de0290006e039000fe0390000000200001f02f006011b800000062008180620002016300838163004808de004812dd00000072000040780080c0ea003e089000117898004e029000de0290006e039000fe03900000002000f10f20006011b80000006200818062000201630083816300010078000040780080c0ea003e089000217898004e029000de0290006e039000fe03900000f02f00010020006011b800"), 2),
Segment(33904, 34144, hexStringToBytes("000062008180620002016300838163004800de00480bdd00000073000040780080c0ea003e089000317898004e0090000040780080c0ea003e089000417898008085200010407800804078003e089000517898009085200010407800804078003e08900061789800a085200010407800804078003e08900071789800c085200010407800804078003e08900001c09800d085200010407800804078003e08900011c09800e085200010407800804078003e08900021c098000086200010407800804078003e08900031c098004085200010407800804078003e08900041c098005085200010407800804078003e089000"), 2),
Segment(34144, 34384, hexStringToBytes("51c0980030a1200010407800804078003e08900061c098003e0890008040eb0071c0980000a1200010407800804078003e08900001c8980010a1200010407800804078003e08900011c898006085200010407800804078003e08900021c8980030418000500f9800de089000d0cc2c000008b8004308de00500f98002e589000804078003e08900031c898003e589000804078003e08900041c898003041800020030700804078003e08900051c8980000c8bf00804078003e08900061c8980001c8bf00804078003e08900071c8980040418000500f9800de089000d0cc2c000008b8004308de00500f98002e589000"), 2),
Segment(34384, 34624, hexStringToBytes("804078003e08900001d098003e589000804078003e08900011d098003e5090000080fb000080ea00600f98004e589000804078003e08900021d098005e589000804078003e08900031d098003e50900080c0e8003e089000014178008040eb0052030700700f98006e589000804078003e08900041d098007e589000804078003e08900051d098003e089000ae5090009f04070089077800880778004f04be000080fa00000006001600fa00100f9800210f98001e089000ae089000e00f5000e08f5800050032001e099000ae09900002408800134088002c003700100020009b030700000f78001000200098030700"), 2),
Segment(34624, 34864, hexStringToBytes("100798001000200095030700200798001000200092030700300798001e0090009e0040002e009000808040003e009000008040004200de004007980020418000800078004e009000ea02070030418800304180006101b80011c0b300b0002b00b30307003141800060032100808f500003003600700321005041880002003700304180005041880050418000520307008000eb00004088001140880000408000114080006011b800500798006107980072079800030f9800843e2000050020006033b8005e009000ee0090007e0190008e09900085f30700500798006107980072079800030f98005e009000ee009000"), 2),
Segment(34864, 35104, hexStringToBytes("7e0190008e09900084322200050020006033b8001bf30700500798006107980072079800030f98005e029000ee0290007e0390008e0b900010002000010020006011b8000000420081804a0002014b0083814b00500798006107980072079800030f98005e009000ee009000204088003140880000408000114080000001be0011c0b300b0022b006d0307000080fa00000006000400fa00004f7800110798009e009000715088009e40780032812000014978000080fa00000006000000fa00ac0507007666a8007706a9007b06a8000080fa00000006000000fa00aa0507007666a9007a66a9007706a9007b06a900"), 2),
Segment(35104, 35344, hexStringToBytes("0080fa00000006000200fa00000f78001e007800e30f500022003200e30f500005003e00e10f500012003200e10f500016003e0009003700e50f500025003200e50f50001d003900e60f500027003200e70f50002b00320030003700d139800000fe2f00008060000000a000d03988002a003700d139800000fe2f00008060000020a000d039880024003700d139800000fe2f00008060006000b300d03988001e003700d139800000fe2f00008060000030a000d039880018003700d139800000fe2f00008060009000b300d039880012003700d139800000fe2f0000806000c001b300d03988000c003700d1398000"), 2),
Segment(35344, 35584, hexStringToBytes("00fe2f0000806000d001b300d039880006003700d139800000fe2f0000806000e001b300d0398800000000000080fa00000006000200fa00004f78001e407800e14f500005003a007b46a80040a1200080c0eb000148780011003700d133800000402000008060000000e00008003a0040a12000104078000004e00008003d0040a120008040eb0001487800040037007b46a90040a120008040eb00014878000080fa00000006000000fa007b46a900ffff37001000fa0060079800614f9800724f98000040eb00004f780080c0b30010479800690037000060fe009e80fb006e4890000080fb000080400010079800"), 2),
Segment(35584, 35824, hexStringToBytes("1e009000ee009000008040009040780030c6b30080cf50005b003a001e0090000000e800ee00900000804000104078008080fb001e0090000080e8006e01900000004100104078000080fb004800dd0000804000200798009e80fb002e009000808040007e4890000080fb0063005000808f5000440031009e0090002e00900000804000ee0090000080400010407800204f98009e0090002e009000008040000000e800ee0090000080400010407800304f98005e019000020078000080ea008180ea0030079800ae0090003e009000808f50002c003a009e0090002e009000008040000080e800ee00900000804000"), 2),
Segment(35824, 36064, hexStringToBytes("10407800204f98009e0090002e0090000080400063004000ee0090000080400010407800304f98002e0090000040780080c0e8001e0090000040780001417800804078006e009000f001070040079800de0090004e009000808f50000e003a0011c0b300a00b2b009e0207001e00900063004000ee0090000080400010407800e14f500002003a00100020000c0037000000eb000a0037001e4fe8009e80fb001e4090000080fb00808040007e4890000080fb00808f50008fff34000080eb000080fa00000006000a00fa0010079800414798005247980033079800044f98004e4090008080fb000e4890000080fb00"), 2),
Segment(36064, 36304, hexStringToBytes("808040005e4090000080fb00808f5000020034000040eb00180037000040eb00004f7800100037009e80fb004e4090000080fb00008040009e00900000804000904078001e80fb003e019000000041001040780080cf5000020032000040eb00060037001e4fe8000e4890009e40780080cf5000ecff390010c0b3000080fa00000006000c00fa0020079800614798007247980043079800244f98006e4090000080fb00100798000000eb00000f7800120037001e007800804078001e0090000040780000c040002e4a9000ce0190007e419000804078002e009000beff07000004e000040032009e0078001e009000"), 2),
Segment(36304, 36544, hexStringToBytes("00804000090037001e0fe8002e4890000080fb009e0040007e4090000080fb00808f5000e7ff35000080eb000080fa00000006000e00fa0030079800014f9800124f9800234f9800640798000040eb00004f78000e4890000080fb00be00900000804000100798000040eb0040479800290037008e4890002e48900080cf50000500390010c0b300404798000040eb00004f7800200037001e009000104078008000fb001e4890000080fb00808f5000080032001e009000104078000004e000040032001e00900010407800ed4f500003003a0010c0b300404798000e0037001e009000904078006e00900001487800"), 2),
Segment(36544, 36784, hexStringToBytes("6e0090000000e800600798001e0090000000e800100798000e4890000040e800004f98001e4fe8004e409000e14f5000d4ff3a006e009000a1c7b300014878001e4078000080fa00000006000a00fa00200798006147980072479800034f98006e4090000080fb00100798000000eb00000f78000f0037001e007800804078001e0090000040780000c040008e4990007e419000804078002e0090000f0007000004e000020032001e007800090037001e0fe8000e4890000080fb009e0040007e4090000080fb00808f5000eaff35000080eb000080fa00000006000800fa0010079800414798005247980063479800"), 2),
Segment(36784, 37024, hexStringToBytes("4e4090008080fb006e4090000080fb00808040005e4090000080fb00808f5000020034000040eb00220037000040eb00004f780010c0b30010479800180037009e80fb004e4090000080fb00008040009e0090000080400090407800f0c2b30080cf50000a0034009e80fb004e4090000080fb00008040009e009000008040009040780090c3b30080cf5000030034000040eb0010479800050037001e4fe8006e4090009e40780080cf5000e4ff39001e4090000080fa00000006000600fa00000f78002147980032479800230798002e009000104078000080fb001e0f4000000000002e0090009040780010c0b300"), 2),
Segment(37024, 37264, hexStringToBytes("3e41900082cf5000010039000040eb000141e800ae009000824878000004e0000e0032001e007800104078008000fb002e4090000080fb000080680000f0a7000000ea000000ea004f00de00004078001e0fe8000004e000e6ff3a001e0078000080fa00000006000800fa001007980021079800624798000040eb00004f78000b0037001e009000904078002e009000014878002e0090000000e800200798001e0090000000e800100798001e4fe8006e4090009e40780080cf5000f1ff39000080fa00000006000a00fa0010079800210798006247980073479800044f98000040eb00004f78006e4090000080fb00"), 2),
Segment(37264, 37504, hexStringToBytes("9e00900000804000100798007e4090000080fb00ae00900000804000200798000b0037001e009000904078002e009000014878002e0090000000e800200798001e0090000000e800100798001e4fe8000e4890009e40780080cf5000f1ff39000080fa00000006000800fa00000f7800110798004247980053479800644798004e4090000080fb001e0f40005e4090000080fb009e0090000080400010079800080037001e007800904078001e009000014878001e0090000000e800100798001e0fe8001e00780010407800ed4f5000f4ff3a001e0090000000e800100798001e0090008040eb00014878000080fa00"), 2),
Segment(37504, 37744, hexStringToBytes("000006000c00fa00889fbe0050079800de009000f0c72000808f500002003e000040eb0020003700de00900060032100808f50000200360040c6b3001a003700de00900000382f0000804000000f7800603b2000100798001e007800cf80de00f1ee07000004be001e009000cf80de00edee07000001be000800be0045ee0700200798003107980002002000832c24002e009000be0090007bef0700b7ee0700004f98000e4890004f04be000080fa00000006000a00fa00889fbe00300798004107980000002c00b14d2400008fbe003e0090008000eb0005ef07000004be004e0090008000eb0001ef07000001be00"), 2),
Segment(37744, 37984, hexStringToBytes("0800be0027ee07001e01be0062ef07009eee0700200798002e0090004f04be000080fa00000006000a00fa00889fbe0030079800410798000040220081642400008fbe003e0090008000eb00ecee07000004be004e0090008000eb00e8ee07000001be000800be000eee07001e01be0049ef070085ee0700200798002e0090004f04be000080fa00000006001600fa00100f980041579800525798000080eb00000f78000000eb0010079800360037001e0078004800de00200798004e5090008080fb001e009000008040009e08900000804000104078008080fb002e00900080806800f00f20000080600030079800"), 2),
Segment(37984, 38224, hexStringToBytes("3e009000c480de00f00f20000080600040079800be0090004e00900080806800f00f20000080600030079800be00900051079800be009000610798006e0090004500dd0060079800be009000710798007e0090004c00dd00700798009e007800010f98001e0078004800dd00000f98008e0890007e009000808068006e009000808068005e009000008f68001e0090000000e800100798005e5090008080fb001e009000808f5000c5ff3c001e0078000080fa00000006000600fa00200798006000b800008fbe00ae00900010ff2f000088b90080007800e06a2f00008040008000eb00008fbe003038200001002000"), 2),
Segment(38224, 38464, hexStringToBytes("1e01be00800f5100818f590004003e004038200001002000008fbe000900370000842300010020001e01be00800f5100818f5900030036000018250011002000008fbe001e0078000080fa00000006000600fa00200798003407a9002e009000ddfc07000000eb00000f780002003700000000001e0fe8001e007800e90f5000fbff34003427a8000000eb00000f780002003700000000001e0fe8001e007800e90f5000fbff34003427a90000000000a0398000610060000000e000fcff320001388000110798001e0090000080fa00000006000600fa0010079800414798000040eb00004f7800060037001e80fb00"), 2),
Segment(38464, 38704, hexStringToBytes("9e00900000804000104078001e4fe80028eb07004e4090009e40780080cf5000f6ff39001e4078000080fa00000006000800fa00000f78001207980023079800614798008040eb001e0078001100070000c2b30017eb07001e009000ae0090002b0007006e4090000004e00005003200d0c0b3000feb0700a0c0b3000deb07000200370000c2b3000aeb07000080fa00000006000600fa0010079800414798000040eb00004f7800060037001e80fb009e0090000080400010407800fdea07001e4fe8001e80fb009e00900000804000104078000004e000f4ff3c004e4090000004e00005003200d0c0b300f1ea0700"), 2),
Segment(38704, 38944, hexStringToBytes("a0c0b300efea07000200370000c2b300ecea07001e4078000080fa00000006001400fa00000f9800110f98000000eb00000f78000040eb00604798000e0990009e0990000000280001002000800f5100818f590008003a000e0890009e08900061004000e0804800000f9800110f980010c0b300604798000e0890009e089000e00f5000e08f580009003d000e0890009e08900060001000e08018001007980021079800d0c2b300c6ea0700040037000e0990009e09900012079800230798001e009000ae009000a20020000300200032ee0700704798001e009000ae009000a20020000300200040ed070010079800"), 2),
Segment(38944, 39184, hexStringToBytes("210798007e40900003c3b30083404000680047001e004000014878001e0fe8001e009000ae009000e00f5000e08f5800e7ff3a006e4090000004e000030032000e4890000040e800004f98001e0fe900680047001e004000104078009dea07001e0078000000e000f8ff3a000080fa00000006000800fa00300798000040eb00204798003e00900022ea07000080fb00200798002e0090000000e0002300320031c0b300200c2b0056ff07000000eb00000f7800150037003e009000900078001e0078000080400010407800204798002e409000ff4f500009003e0000c2b3007cea07002e4090000080fb008000eb00"), 2),
Segment(39184, 39424, hexStringToBytes("8fff070000c2b30076ea0700020037002e40900073ea07001e0fe8002e0090009e007800808f5000e7ff350031c0b300600c2b0037ff07000300370031c0b300a00c2b0033ff07000080fa00000006000600fa0010079800414798000040eb00004f7800060037001e80fb009e00900000804000104078001e4fe800550007004e4090009e40780080cf5000f6ff39001e4078000080fa00000006000000fa009980a9009960a90080002000c01c88009a23ef0020022000001d8800c09f200090418800c09f20008041880050a020007041880050a02000604188003468ef0020d224000700070000d4240014000700"), 2),
Segment(39424, 39664, hexStringToBytes("9960a80099e3a8009b43a8000080fa00000006000200fa00000f78001e0078000000e00003003a0020d22400b0418800020037009e007800b14188000080fa00000006000000fa000080fa00000006000200fa00000f78001e0078000000e00003003a0000d42400c0418800020037009e007800c14188000080fa00000006000000fa000080fa00000006000200fa000040eb00004f7800000000007141800060418000808f5000fcff320070418000104f7800704180000000e8007041880071418000e0a02000808f500002003a0050a02000704188001e4078000080fa00000006000200fa00004f780000000000"), 2),
Segment(39664, 39904, hexStringToBytes("1c0007000004a2000004e000fcff3a00804180001e487800804180000000e800804188008141800050a02000808f500002003a00c09f2000804188009980a8000080fa00000006000000fa0071418000604180000080680000f0a7000000ea000000ea004f00de00004078000080fa00000006000400fa009141800011079800814180001e009000808f5000060031009e00900080418000008050000000e900000f7800050037009e009000804180000080500068004000000f78001e00780000f0a7000000ea000000ea004f00de00004078000080fa00000006000000fa008141800090418000808f500009003a00"), 2),
Segment(39904, 40144, hexStringToBytes("d11c8000001020000080600000f0a7000000ea000000ea004f00de0000407800010037000040eb000080fa00000006000400fa006141800011079800704180009e009000808f5000060031009e009000704180000080500069004000000f7800040037009e0090007041800000805000000f7800f00f20009e007800808f50000200360000c0eb00020037001e007800004078000080fa00000006000400fa009141800011079800814180001e009000808f5000060031009e00900080418000008050000000e900000f7800050037009e009000804180000080500068004000000f7800f00f20009e007800808f5000"), 2),
Segment(40144, 40384, hexStringToBytes("0200360000c0eb00020037001e007800004078000080fa00000006000800fa002007980031079800c5ff07000080fb00000f78003e0090009e0f500002003100be009000010f78000000eb00100798000900370059ff0700ae009000804878002e0090000000e800200798001e0090000000e800100798001e0090009e0f5000f4ff39001e0078000080fa00000006000800fa002007980031079800c3ff07000080fb00000f78003e0090009e0f500002003100be009000010f78000000eb0010079800090037002e00900010407800ae0090008100e800210798004dff07001e0090000000e800100798001e009000"), 2),
Segment(40384, 40624, hexStringToBytes("9e0f5000f4ff39001e0078000080fa00000006000400fa000000eb00000f78008bff070020479800a4ff0700304798002e4090000080fb000000e00003003200e90f500003003200040037001e20a000040037001e00a000020037001e10a000000000003e4090000080fb000000e00003003200e90f500003003200040037001e30a000020037001e40a000000000001e0078000080fa00000006000400fa0010079800714180001e009000008f4000020037009e007800698f5000e0a020009e007800808f5000faff3e001e007800104078000080fa00000006000000fa005bff07000080fb000000e9004f00de00"), 2),
Segment(40624, 40864, hexStringToBytes("004078000080fa00000006000000fa006eff07000080fb000000e9004f00de00004078000080fa00000006000000fa00d01c80000080fa00000006000000fa0062ff07000004e000100032009141800080418000808f500006003600904180008000780080418000008050000000e900070037009041800080007800804180000080500068004000010037000000eb000080fa00000006000000fa0030ff07000004e000100032007141800060418000808f500006003600704180008000780060418000008050000000e900070037007041800080007800604180000080500068004000010037000000eb000080fa00"), 2),
Segment(40864, 41104, hexStringToBytes("000006000000fa0099e3a8009b43a8000080fa00000006000000fa0099e3a9009b43a9000080fa00000006000600fa0010079800414798000060fe001e009000f8ed0700004f78009e4078001e0090005bfe0700d0c0b300bafe07004e4090000004e0000f003200e0c3b300b9e80700e0c3b300b7e807009e4078001e00900080fd0700c0c3b300b2e80700c0c3b300b0e80700d0c0b300aee80700a0c0b300ace807000080fa00000006003000fa0050179800416f9800526f9800731798000040eb00006f980010c0b300004f78006000b8006011b800300798004107980052079800630798006000b8006011b800"), 2),
Segment(41104, 41344, hexStringToBytes("70079800010f9800120f9800230f98006000b8006011b800300f9800410f9800520f9800630f98006000b8006011b800700f98000117980012179800231798004e6890000080fb006a004000de10900000804000301798004e6890000080fb006a004000de109000008040003017980061c0b3003e109000e60007007e11900020099800310998000000eb0010079800d90037004e6890000080fb00de10900000804000810220008e804000810178005e699000c1c2b300c8fb0700301798003e109000104078000004e000ce0032001e009000e30f500080003200e30f500007003c00e10f50003a003200e10f5000"), 2),
Segment(41344, 41584, hexStringToBytes("4a003c000000e00008003200bb003700ea0f5000a8003200eb0f5000ad003200e40f500087003200b400370021c0b3003e109000bb0007006011b80004102e00555f20006033b80018ed0700300798004107980052079800630798003e1090000080e8003017980081c0b3003e109000ac0007006011b80070079800010f9800120f9800230f98007e0090008e0890001e099000ae09900013eb07005255250053fd2300b8eb0700cbea07000203be000002be003e009000ce0090005e019000ee0190000000420081804a0002014b0083814b007e129000009abe000292be00860037003e1090009040780030c5b300"), 2),
Segment(41584, 41824, hexStringToBytes("80cf50007e003a007e1090005001be004000be006022b8006033b8000000520081805a0002015b0083815b007e129000009abe000292be007400370031c0b3003e1090007b0007006011b80004102e00555f20006033b800d8ec0700300f9800410f9800520f9800630f98003e109000630040003017980081c0b3003e1090006c0007006011b800700f98000117980012179800231798007e0890008e1090001e119000ae119000d3ea07005255250053fd230078eb07008bea07000203be000002be003e089000ce0890005e099000ee0990000000420081804a0002014b0083814b007e1290004002980051029800"), 2),
Segment(41824, 42064, hexStringToBytes("6202980073029800440037003e1090009040780070c5b30080cf50003e003a007e109000d000900060019000f0019000400090006022b8006033b8000000520081805a0002015b0083815b007e129000400298005102980062029800730298002e0037003e10900063004000301798003e10900090407800c0c2b30080cf5000020032000040eb00004f78003e109000630050003017980030c0b300404798001e4078000004a2000004e000030032004e4090000040e80040479800ce4090003e1090001f000700800078007e109000010898001100370061c0b3003e109000180007007e1190004009980051099800"), 2),
Segment(42064, 42304, hexStringToBytes("0a00370021c0b3003e10900011000700804078007e10900021509800030037000000000001003700000000001e0090000000e800100798001e009000eb0f500024ff340001003700000000000080fa00000006000c00fa0040079800214f98006000b800008fbe006000b8002007980031079800270037001e0090006a00b900000178001e0078006000b90000007800000141009e007800a00020000008b8000101410082007800008fbe00008fbe004e009000104078000000fb000003b100cf80de0020079800310798002e009000be0090001e0f40005e9748004e0090000000e800400798002e4890000040e900"), 2),
Segment(42304, 42544, hexStringToBytes("204f98004e00900090407800e0c2b30080cf500003003a004e0090000000e800400798004e00900090407800f0c2b30080cf5000080034004e0090009040780090c3b30080cf500003003c002e4890000004e000ccff3a001e00be000080fa0000000600fc09000012000000800000002c0800000e00000080000000dc09000020000000800000003a0800000200000082000000ffff00003c0800000200000080000000180a000002000000800000003e080000020000008000000044080000d200000080000000000800002c000000800000004008000002000000820000000b000000160900009000000082000000"), 2),
Segment(42544, 42784, hexStringToBytes("41542b0051494300534750003d312c00312c2200202020002020200020202000202020002020200020202000202020002020200020202000202020002020200020202000202020002020200020004100542b5100494f5000454e3d00312c30002c225400435022002c2230003030300030303000303030003030300030302e0074726100636b650072732e007669740069726f00766572002e657500222c3500303031002c302c0032004d00324d49004e544500524e45005400000000000000a609000036000000800000004208000002000000820000000b0000000e0a00000a00000080000000000000000000fa00"), 2),
Segment(42784, 43024, hexStringToBytes("9021ef00f09f2f00900c880000002800a00c8800f04180000000e00002003a00603e2500240007008860a9009860a80080a120008040eb00014878000080fa00000006000200fa00000f78009e007800910c880080a120008040eb00014878000080fa00000006000000fa00900c80000080fa00000006000200fa00000f78009e007800810c880080a120008040eb00014878000080fa00000006000000fa00800c80000080fa00000006000000fa000080fa00000006000200fa00000f78009860a9009e007800f14188009860a8000080fa00000006000000fa0080a120008040eb00014878009860a80095e1a800"), 2),
Segment(43024, 43264, hexStringToBytes("0080fa00000006000000fa0095e1a9009860a9000080fa00000006000200fa0080a12000104f78001e4078000004e0000300320080a120008040eb00014878001e4078000080fa00000006000000fa0090a12000104078000080fb000080fa00000006000000fa0090a120008040eb00014878000080fa00000006000000fa0000002800a03988003627ef0040a02000c03988003a27ef003c27ef003e27ef004027ef004227ef004627ef004c27ef0080462500050007000080fa00000006000000fa000080fa00000006000200fa00000f78001e007800e04188000080fa00000006000000fa004104800000002200"), 2),
Segment(43264, 43504, hexStringToBytes("008060000000e00006003200e04180000000e00002003200e04180000000010089a0a9000080fa00000006000000fa003427a8000080fa00000006000000fa003427a9000080fa00000006000800fa0030079800b03980004200de007f4060000080fb002007980000702000100798000000eb00000f78000b0037001e00780000004000be009000008040009e00900091007800010878001e0090000080e800100798001e0fe8009e0078002e009000808f5000f1ff36001e0078000080fa00000006000000fa006626ef0000162000d03388002000200010338800f0a02d00b03388007426ef008826ef007226ef00"), 2),
Segment(43504, 43744, hexStringToBytes("8626ef007426ef008826ef007226ef008626ef006826ef007c26ef00200020005033880040202d00f033880001088000f00b200000816000600420007105200003102000804978008149780082497800e13e800000f82f00008060003000b300e03e8800a13d800000fc2f00008060003000b300a03d8800a13e800000f82f00008060005000b300a03e8800b13d800000fc2f00008060000000a000b03d880000088000000178000260a0006004200071052000031020008049780081497800824978000080fa00000006000000fa0000042300100888000621ef006821ef006a21ef000c21ef000e21ef007821ef00"), 2),
Segment(43744, 43984, hexStringToBytes("7c21ef007e21ef008021ef008421ef008621ef001200200080072000a109200013102000804978008149780082497800120020006004200071052000031020008049780081497800824978000000000000088000610060000000e000fcff3a00000000000108800000022000008060000000e000fbff32000080fa00000006000000fa0041068000f0f82f00008060000040a000400688007105800080ff2f00008060000000a0007005880061058000f0ff28000080600000c0a0006005880041058000f0ff28000080600000c0a000400588000080fa00000006000200fa00000f78009e007800d1418800ffff3700"), 2),
Segment(43984, 44224, hexStringToBytes("0000fa00c09d200080077800409f2000000188000080fa00000006000000fa0074ff0700daff0700b0ff0700a4e507006afb070021ff0700c4fe07000080fa0000000600ffff3700"), 2)};
}
// only the second one survive
std::vector<Segment> debugSegmentsBeforeCropFromPython()
{
return std::vector<Segment>{
Segment(0, 1024, hexStringToBytes("e01a040000000000041a0000081a00000c1a0000101a0000141a0000181a00001c1a0000001a0000201a0000241a0000281a00002c1a0000301a0000341a0000381a00003c1a0000401a0000441a0000481a00004c1a0000501a0000541a0000581a0000001a00005c1a0000601a0000641a0000681a00006c1a0000001a0000001a0000001a0000701a0000741a0000781a00007c1a0000801a0000841a0000881a00008c1a0000901a0000941a0000001a0000001a0000981a00009c1a0000a01a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000a41a0000a81a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000ac1a0000001a0000001a0000001a0000001a0000001a0000001a0000b01a0000b41a0000b81a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000bc1a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000c01a0000c41a0000001a0000c81a0000cc1a0000d01a0000d41a0000d81a0000dc1a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000001a0000"), 2),
Segment(12288, 13304, hexStringToBytes("e01a0400000000000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00020a8000f13f2e008100610001007000000a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000020a800081ff2f008100610001007000000a88000080fa00000006000000fa004301a8000080fa00000006000000fa000028a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00420a8000f13f2e008100610001007000400a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000420a800081ff2f008100610001007000400a88000080fa00000006000000fa004b01a8000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00820a8000f13f2e008100610001007000800a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000820a800081ff2f008100610001007000800a88000080fa00000006000000fa005301a8000080fa00000006000000fa0004a8a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00c20a8000f13f2e008100610001007000c00a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000c20a800081ff2f008100610001007000c00a88000080fa00000006000000fa005b01a8000080fa00000006000600fa00004f78001147980012079800230798001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060007235800001f82f008100610001007000703588001e4090000080fb00a1b9260000804000104078000074a1008080fb00f0072000008060008235800001f82f008100610001007000803588003048070093480700f648070060470700700020004eff07007000200071ff07007000200090ff070070002000b3ff070064ff070088ff0700a8ff0700ccff070064ff0700a9ff07001e0090004fff07001e00900072ff07002e00900091ff07002e009000b4ff070050480700b348070016490700804707000080fa00000006000200fa00fb420700004f7800054d07001021a8001e407800e44f500002003a00b24b0700164107001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060003235800001f82f008100610001007000303588000b4d070010c0b3000080fa00000006000000fa00024d07000643070010c0b3000080fa0000000600f03fb1000180b10006003500ee03090000000000403fb1000180b100fbff3d001000b000203fb00002003500008009000000000000000600ffff3700"), 2),
};
}
TEST_CASE("chunked function debug_segments generation")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
hex.chunked(FLASH_HEX_FILE, bootattrs);
CHECK(hex.debug_segments.size() == 128);
std::vector<Segment> debugSegments = debugSegmentsFromPython();
for (unsigned int i = 0; i < debugSegments.size(); i++)
{
CHECK(hex.debug_segments[i] == debugSegments[i]);
}
}
TEST_CASE("crc_ihex check 1")
{
HexFile hex;
// in python : "010203aaff"
std::vector<uint8_t> bytes{0x01, 0x02, 0x03, 0xAA, 0xFF};
unsigned int crc = hex.crc_ihex(bytes);
CHECK(crc == 81);
}
TEST_CASE("crc_ihex check 2")
{
HexFile hex;
std::vector<uint8_t> bytes{67, 56, 89, 45};
unsigned int crc = hex.crc_ihex(bytes);
CHECK(crc == 255);
}
TEST_CASE("crc_ihex check 3")
{
HexFile hex;
// "588405bc7be1f154bbab51427e254050425dcf55"
std::vector<uint8_t> bytes{0x58, 0x84, 0x05, 0xbc, 0x7b, 0xe1, 0xf1, 0x54, 0xbb, 0xab, 0x51, 0x42, 0x7e, 0x25, 0x40, 0x50, 0x42, 0x5d, 0xcf, 0x55};
unsigned int crc = hex.crc_ihex(bytes);
CHECK(crc == 211);
}
TEST_CASE("crc_ihex check 4")
{
std::string hexAsStr("10000000E01A040000000000041A0000081A0000");
std::vector<uint8_t> bytes = hexStringToBytes(hexAsStr);
HexFile hex;
unsigned int crc = hex.crc_ihex(bytes);
CHECK(crc == 178);
}
TEST_CASE("unpack_ihex check if IHEX_DATA")
{
HexFile hex;
std::string record(":10000000E01A040000000000041A0000081A0000B2");
unsigned int type = 54;
unsigned int address = 0;
unsigned int size = 0;
std::vector<uint8_t> data;
hex.unpack_ihex(record, type, address, size, data);
CHECK(type == IHEX_DATA);
CHECK(address == 0);
CHECK(size == 16);
CHECK(bytesToHexString(data) == "e0 1a 04 00 00 00 00 00 04 1a 00 00 08 1a 00 00");
}
TEST_CASE("unpack_ihex check if IHEX_END_OF_FILE")
{
HexFile hex;
std::string record(":00000001FF");
unsigned int type = 54;
unsigned int address = 0;
unsigned int size = 0;
std::vector<uint8_t> data;
hex.unpack_ihex(record, type, address, size, data);
CHECK(type == IHEX_END_OF_FILE);
}
TEST_CASE("chunked function all segments for vitiapp")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE_VITIAPP, bootattrs);
std::vector<Segment> fromPython = chunkSegmentsVitiAppFromPython();
CHECK(chunks.size() == fromPython.size());
unsigned int i = 0;
for (i = 0; i < chunks.size(); i++)
{
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
}
TEST_CASE("chunked function all segments for Inertiel")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE_INERTIEL, bootattrs);
std::vector<Segment> fromPython = chunkSegmentsInertielFromPython();
CHECK(chunks.size() == fromPython.size());
unsigned int i = 0;
for (i = 0; i < chunks.size(); i++)
{
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
}
TEST_CASE("chunked function all segments for UMTS")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE_UMTS, bootattrs);
std::vector<Segment> fromPython = chunkSegmentsUMTSFromPython();
CHECK(chunks.size() == fromPython.size());
unsigned int i = 0;
for (i = 0; i < chunks.size(); i++)
{
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
}
TEST_CASE("chunked function all segments for XDB UMTS")
{
BootAttrs bootattrs = xdbBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE_XDB_UMTS, bootattrs);
std::vector<Segment> fromPython = chunkSegmentsXdbUMTSFromPython();
CHECK(chunks.size() == fromPython.size());
unsigned int i = 0;
for (i = 0; i < chunks.size(); i++)
{
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
}
TEST_CASE("chunked function addSegments : debug_segment_before_crop")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
hex.chunked(FLASH_HEX_FILE, bootattrs);
std::vector<Segment> debugSegmentsBeforeCrop = debugSegmentsBeforeCropFromPython();
CHECK(hex.debug_segments_before_crop.size() == debugSegmentsBeforeCrop.size());
for (unsigned int i = 0; i < debugSegmentsBeforeCrop.size(); i++)
{
CHECK(hex.debug_segments_before_crop[i].minimum_address == debugSegmentsBeforeCrop[i].minimum_address);
CHECK(hex.debug_segments_before_crop[i].maximum_address == debugSegmentsBeforeCrop[i].maximum_address);
CHECK(hex.debug_segments_before_crop[i].data == debugSegmentsBeforeCrop[i].data);
CHECK(hex.debug_segments_before_crop[i].word_size_bytes == debugSegmentsBeforeCrop[i].word_size_bytes);
}
}
TEST_CASE("chunked function crop : only one segment must survive, the second one")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
hex.chunked(FLASH_HEX_FILE, bootattrs);
std::vector<Segment> debugSegmentsBeforeCropInPython = debugSegmentsBeforeCropFromPython();
Segment cropSurvivorInPython = debugSegmentsBeforeCropInPython[1];
CHECK(hex.segments.size() == 1);
Segment cropSurvivorInSegments = hex.segments[0];
CHECK(cropSurvivorInPython.minimum_address == cropSurvivorInPython.minimum_address);
CHECK(cropSurvivorInSegments.maximum_address == cropSurvivorInPython.maximum_address);
CHECK(cropSurvivorInSegments.data == cropSurvivorInPython.data);
CHECK(cropSurvivorInSegments.word_size_bytes == cropSurvivorInPython.word_size_bytes);
}
std::vector<Segment> chunksSegmentsResultFromPython()
{
return std::vector<Segment>{
Segment(12288, 12528, hexStringToBytes("e01a0400000000000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00020a8000f13f2e008100610001007000000a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000020a800081ff2f008100610001007000000a88000080fa00000006000000fa004301a8000080fa00000006000000fa000028a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00420a8000f13f2e008100610001007000400a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb00"), 2),
Segment(12528, 12768, hexStringToBytes("67006000420a800081ff2f008100610001007000400a88000080fa00000006000000fa004b01a8000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00820a8000f13f2e008100610001007000800a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000820a800081ff2f008100610001007000800a88000080fa00000006000000fa005301a8000080fa00000006000000fa0004a8a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00c20a8000f13f2e0081006100"), 2),
Segment(12768, 13008, hexStringToBytes("01007000c00a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000c20a800081ff2f008100610001007000c00a88000080fa00000006000000fa005b01a8000080fa00000006000600fa00004f78001147980012079800230798001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060007235800001f82f008100610001007000703588001e4090000080fb00a1b9260000804000104078000074a1008080fb00f0072000008060008235800001f82f008100610001007000803588003048070093480700f648070060470700700020004eff0700"), 2),
Segment(13008, 13248, hexStringToBytes("7000200071ff07007000200090ff070070002000b3ff070064ff070088ff0700a8ff0700ccff070064ff0700a9ff07001e0090004fff07001e00900072ff07002e00900091ff07002e009000b4ff070050480700b348070016490700804707000080fa00000006000200fa00fb420700004f7800054d07001021a8001e407800e44f500002003a00b24b0700164107001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060003235800001f82f008100610001007000303588000b4d070010c0b3000080fa00000006000000fa00024d07000643070010c0b3000080fa0000000600f03fb100"), 2),
Segment(13248, 13488, hexStringToBytes("0180b10006003500ee03090000000000403fb1000180b100fbff3d001000b000203fb00002003500008009000000000000000600ffff3700"), 2),
};
}
TEST_CASE("chunked function all segments")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE, bootattrs);
std::vector<Segment> fromPython = chunksSegmentsResultFromPython();
CHECK(chunks.size() == fromPython.size());
unsigned int i = 0;
for (i = 0; i < chunks.size(); i++)
{
// std::cout << "chunk number " << i << std::endl;
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
}
TEST_CASE("chunked function last segment")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
std::vector<Segment> chunks = hex.chunked(FLASH_HEX_FILE, bootattrs);
std::vector<Segment> fromPython = chunksSegmentsResultFromPython();
unsigned int i = chunks.size() - 1;
CHECK(chunks[i].word_size_bytes == fromPython[i].word_size_bytes);
CHECK(chunks[i].minimum_address == fromPython[i].minimum_address);
CHECK(chunks[i].maximum_address == fromPython[i].maximum_address);
CHECK(chunks[i].data == fromPython[i].data);
}
TEST_CASE("Segment.chunked function for last segment")
{
BootAttrs bootattrs = defaultBootAttrsForTest();
HexFile hex;
hex.chunked(FLASH_HEX_FILE, bootattrs);
std::vector<Segment> segments = hex.segments;
Segment last = hex.segments[hex.segments.size() - 1];
// from C++, not sure about this, but first 4 segments were right, so I guess it's good enough
unsigned int chunk_size = 120;
unsigned int align = 4;
std::vector<uint8_t> twoBytes{0, 0};
std::vector<Segment> lastSegmentChunks = last.chunks(chunk_size, align, twoBytes);
std::vector<Segment> lastSegmentChunksFromPython = std::vector<Segment>{
Segment(12288, 12528, hexStringToBytes("e01a0400000000000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00020a8000f13f2e008100610001007000000a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000020a800081ff2f008100610001007000000a88000080fa00000006000000fa004301a8000080fa00000006000000fa000028a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00420a8000f13f2e008100610001007000400a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb00"), 2),
Segment(12528, 12768, hexStringToBytes("67006000420a800081ff2f008100610001007000400a88000080fa00000006000000fa004b01a8000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00820a8000f13f2e008100610001007000800a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000820a800081ff2f008100610001007000800a88000080fa00000006000000fa005301a8000080fa00000006000000fa0004a8a9000080fa00000006000200fa00000f78001e00780000407800674060000080fb00670060004a00dd00c20a8000f13f2e0081006100"), 2),
Segment(12768, 13008, hexStringToBytes("01007000c00a88000080fa00000006000200fa00000f78001e00780000407800674060000080fb0067006000c20a800081ff2f008100610001007000c00a88000080fa00000006000000fa005b01a8000080fa00000006000600fa00004f78001147980012079800230798001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060007235800001f82f008100610001007000703588001e4090000080fb00a1b9260000804000104078000074a1008080fb00f0072000008060008235800001f82f008100610001007000803588003048070093480700f648070060470700700020004eff0700"), 2),
Segment(13008, 13248, hexStringToBytes("7000200071ff07007000200090ff070070002000b3ff070064ff070088ff0700a8ff0700ccff070064ff0700a9ff07001e0090004fff07001e00900072ff07002e00900091ff07002e009000b4ff070050480700b348070016490700804707000080fa00000006000200fa00fb420700004f7800054d07001021a8001e407800e44f500002003a00b24b0700164107001e80fb00a1b9260000804000104078000074a1008080fb00f0072000008060003235800001f82f008100610001007000303588000b4d070010c0b3000080fa00000006000000fa00024d07000643070010c0b3000080fa0000000600f03fb100"), 2),
Segment(13248, 13488, hexStringToBytes("0180b10006003500ee03090000000000403fb1000180b100fbff3d001000b000203fb00002003500008009000000000000000600ffff3700"), 2),
};
CHECK(lastSegmentChunks.size() == lastSegmentChunksFromPython.size());
for (unsigned int i = 0; i < 5; i++)
{
// std::cout << "chunk number " << i << std::endl;
CHECK(lastSegmentChunks[i].word_size_bytes == lastSegmentChunksFromPython[i].word_size_bytes);
CHECK(lastSegmentChunks[i].minimum_address == lastSegmentChunksFromPython[i].minimum_address);
CHECK(lastSegmentChunks[i].maximum_address == lastSegmentChunksFromPython[i].maximum_address);
CHECK(lastSegmentChunks[i].data == lastSegmentChunksFromPython[i].data);
}
}