You are now following this question
- You will see updates in your followed content feed.
- You may receive emails, depending on your communication preferences.
How to find a pattern in an array?
12 views (last 30 days)
Show older comments
Hi All,
I have an array (attached) and I'd like to find where a specific pattern happens in the array.
I know that by knowing the pattern we can find how many times and where in the array this pattern happens using the following code (How to find pattern in an array? - (mathworks.com))
clear all
clc
data = importdata('C:\User\Downloads\test\TEST.txt');
A = '118'; % Pattern
B = convertStringsToChars(data{1,1});
SIZE = length(B) - length(A);
match = zeros(1, SIZE);
for i=1:SIZE
match(i) = all(B(i:i-1+length(A)) == A);
end
output = find(match == 1);
size(output)
However, my question is if I know a pattern happens X times, say 100 times, in the array while I don't know what the pattern is, Is it possible to find the pattern?
Many thanks in advance!
51 Comments
Star Strider
on 12 Aug 2022
It appears to be a long hex string —
C = readcell('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1096715/TEST.txt');
M = cell2mat(C)
M = '010000000000000000000042343137343138383156312E32302020204E6F6E6520202020313032342020434343434343434346464646464646464646464646464646464646464646464646464646464646464646464646464646464649202049492056312056322056332056342056352056362020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202020202031302020202020313130202031302E30354F4646203630202020202020202020202020202020202020202020202020202020202020202020202020203232323232323232FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF32322F30362F333030313A323400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005D85019601A300830090007D0096008A008707D90722038502C8026302E302AD028A103C11DF068705170639055606DD0518182119000A1008D708990739098008251D6B1E130CC809AE0A2F09210B3E0A7F20F121700DEB0AEC0B410A660C690BB9224724570EA80BC20CF70A450D350C3A24D325ED0E250C520D690BDB0DBB0C3925DC264F0F7D0CB70DB30B3D0E0F0DE1259127900FB70CF90DE60B710E3F0D52260D28BB0FE20C210E0A0C8B0E5F0D9D265928DF0F020D3C0E210CA60E780DCD268328FF0F120D540E2C0CC00E8B0DEA269C281010130D690E330CCC0E960DFA26AA281910140D7A0E3D0CD20EA10D0627B4282110190D7A0E450CD90EA70D1227C3282610160D6A0E420CDB0EAA0D1627D02826100D0D5E0E370CD70EAA0D1A27D9282110030D5B0E310CD30EA60D1C27E0281A10FD0C5A0E2D0CD30EA20D1427E4281B10FD0C5C0E2A0CD40EA10D0A27DD282610010D630E340CD40EA20D0027D0282F10060D6A0E440CD60EAA0DF826C22830100A0D6C0E500CDF0EB80DF726B9282A100C0D650E530CE30EBF0DF926B82820100A0D590E4A0CDD0EBC0DFA26BE2819100A0D510E410CD40EB50DF526C5281310060D510E400CD00EAC0DF226C4281210010D540E410CCF0EA30DF726C2281010000D550E400CCA0E9E0DFD26C2281010000D530E410CC60E9D0DFE26C2281710030D4E0E470CC90E9B0DF726BB2820100D0D4F0E4F0CCE0E9D0DEF26B0282610130D560E4F0CD60EA10DEB26A8282810110D5E0E4C0CDC0EA50DE926A42825100B0D640E4A0CDA0EAA0DE926A6281D10010D600E460CCD0EA90DEB26A8281510FD0C560E3D0CBA0E9F0DEB26A3280D10010D510E390CB50E9D0DEA2697280810030D4F0E3B0CB80E9F0DEC268A280510010D500E3E0CBF0E9A0DEE2683280610FF0C520E420CC60E950DEB2680280C10000D540E420CCA0E980DE0267D281210080D540E3F0CCB0EA10DD8267D2812100C0D4F0E3B0CC70EA60DD8267D280F10000D460E310CB80EA10DD6267E280B10F20C3E0E240CAA0E9A0DD0267B280810F20C3B0E240CAD0E960DC72671280710FC0C3D0E2F0CBA0E940DBD2668280810FF0C410E3E0CC40E920DB6265F280C10FD0C470E460CC90E980DB42658280F10F90C4B0E460CCE0E9D0DB42655280610F70C490E480CD40EA10DB6265828FA0FF40C420E480CD20E9B0DB5265B28F90FF20C3E0E430CC80E900DAE265828FD0FF40C3D0E3F0CC00E890DA7265228FE0FFC0C410E400CBE0E890DA5264E28FB0F080D490E430CBD0E8E0DA3264D28F70F0E0D4B0E420CBE0E920DA3264D28F00F0C0D470E3C0CBE0E980DA5265228EB0F020D400E350CB40E9E0DA3265828EE0FFD0C3A0E330CAC0EA00D9A265728F10F010D360E350CB10EA10D92265228F00F000D3B0E350CBB0EA20D8C264D28EE0FF50C3E0E310CBF0E9F0D87264828F00FF00C360E2D0CC00E9A0D82264228F50FF70C2D0E2D0CBF0E940D82263528FA0FFC0C2C0E2F0CBB0E8C0D83262828FC0FFB0C2F0E320CBB0E870D83262528F70FF60C2F0E370CBD0E870D85262D28EE0FF30C310E390CBA0E840D85263528EA0FF70C350E330CB30E7D0D87263A28E30FF20C320E2A0CA70E740D87263C28DD0FEB0C290E200C9E0E6D0D83263928E40FEC0C240E1A0C9E0E690D7B263328EC0FF20C240E190C9F0E6C0D76262A28E90FF60C260E1C0CA20E700D73262228E50FF50C260E1E0CA80E700D71261A28E80FFA0C230E1E0CA90E6E0D6B261428EC0F000D200E200CA50E6C0D62261128E80FFB0C1C0E240CA40E6A0D59260F28E40FF40C160E220CA20E6C0D52260F28E10FEC0C140E170C9C0E6A0D50260D28DD0FE00C180E0F0C9D0E660D54260928DD0FD50C190E130CA20E660D5B260A28DD0FCC0C160E190CA00E690D5C260628DD0FD00C160E200C9A0E710D5826FA27DD0FDD0C1B0E230C990E770D5126F127DB0FE40C210E210C9E0E740D4826EC27D90FE60C270E200CA00E6C0D4226E627D50FE60C2A0E1D0C9A0E610D4226E427CC0FDD0C240E150C950E550D4226E227C50FD90C180E120C950E520D3F26DC27C40FE00C100E190C990E590D3926D627C70FE40C0C0E220C9B0E620D3426D327C80FE00C0E0E240C9A0E690D3026D327C40FD90C110E1D0C940E670D2E26D827BE0FC90C0F0E100C8D0E650D3026DF27B70FB70C0A0E030C8B0E620D2D26E127B30FB30C080EFD0B8B0E5D0D2626DE27B30FB60C050EF20B890E590D2426D927B40FB50C030EE30B830E5C0D2C26D327B90FB40C050EDE0B7E0E610D3726CA27C00FBB0C090EE50B7B0E650D3826C327C80FC40C0C0EEF0B7A0E650D2B26C227CF0FC70C120EFA0B7D0E690D1D26BE27D30FC80C180E080C830E6D0D1926B827D00FC70C150E0D0C840E6C0D1B26B127CC0FC10C0F0E020C7D0E650D1C26AA27C60FB90C0D0EF50B780E590D1726A627BA0FAE0C0A0EF30B780E4F0D0D26A627AD0FA60C020EF60B790E4F0D0626A427A80FA90CFE0DFC0B780E510D06269E27A30FB00CFE0D020C750E4C0D03269A279B0FB30CFB0D080C720E4E0DFE259C27940FB30CF70D080C720E540DFB259A27930FB50CF70D040C740E520DF7259627980FB70CF80D000C770E4A0DF5259A27A00FAE0CF20DFA0B720E3F0DF625A027A80F9E0CED0DF40B680E360DF4259D27AC0F970CEA0DEF0B620E2F0DEC259A27AA0F9B0CE70DEB0B640E2F0DE2259E27A60F9F0CE50DE80B640E380DDF259E27A50F9F0CE70DE90B620E440DE1259627A90FA10CEA0DEF0B680E4C0DE4258D27AA0FA50CE90DEF0B6D0E480DE6258827A40FA60CE80DEB0B6C0E410DE62582279A0FA30CE50DEA0B670E400DE4257A27960F9E0CE10DEB0B640E450DE0257427970F9C0CDF0DEB0B650E460DDB256D279A0FA40CE20DED0B6B0E480DD42568279B0FAC0CE80DF00B6A0E4D0DCC2567279D0FAE0CEC0DF10B620E4E0DC62565279D0FB20CF20DED0B620E4B0DC1255E279F0FBB0CF90DEB0B690E4D0DBF255427A20FBE0CF90DF00B6F0E550DBF254F27A10FB30CF30DF00B6B0E560DC1255027980FA00CEB0DE70B650E500DC12550278C0F990CE50DE20B630E4A0DBE254D27880FA40CE10DE20B5C0E4A0DB7254D27870FAE0CDF0DE30B520E500DB0254E27870FAF0CE00DE40B540E560DAD254D27840FAE0CE00DE00B5D0E530DAE254E277F0FAB0CD90DDF0B620E4B0DB1254B27800FA20CD20DE30B600E440DB22543277F0F950CCC0DE20B5E0E380DAE253D277B0F920CCC0DDC0B5C0E270DA92536277D0F970CD20DDC0B560E1F0DA6252D27810F990CD50DE00B4B0E1D0DA6252A27860F950CD20DE40B460E180DA72529278A0F910CCE0DE90B490E180DA5252627860F8C0CC90DE50B4C0E1F0DA32525277D0F8D0CC90DDA0B4F0E2A0D9F252327770F910CCB0DD30B550E300D95252127750F910CCE0DCD0B5A0E290D88252127770F900CD30DC20B560E250D7A251E277E0F900CDA0DBA0B4B0E2A0D71251A27840F8C0CDE0DC00B490E2E0D6F251827870F880CDC0DCD0B4F0E2C0D742516278B0F860CDA0DD10B510E2A0D7D2514278B0F880CD60DCC0B4C0E2C0D82251327830F8B0CD20DC70B4B0E2E0D7D251227770F8E0CD00DC90B520E300D712510276F0F900CCB0DCB0B530E2A0D65250D276F0F8E0CC50DCA0B490E1E0D602507276E0F8D0CC30DC60B420E170D5D25FF266F0F900CC50DC80B450E1B0D5C25FC26760F8E0CCB0DCD0B450E200D5725FB267B0F8A0CCD0DD30B430E1F0D5125F826790F8A0CC90DD60B450E190D4B25F7266D0F890CC40DD10B4B0E100D4825F6265F0F850CC30DC90B4C0E080D4C25EA265B0F7F0CC20DC10B490E0B0D5525DB26600F780CC10DBE0B430E100D5B25D026640F760CC30DC20B3C0E120D5525CB26630F7B0CC50DD10B380E170D4C25CF26620F800CC00DD90B360E1D0D4225D826630F840CBC0DD50B390E200D3C25DE26630F810CBB0DCF0B3A0E1C0D3E25DD265E0F770CBC0DC90B390E140D4325DE26570F6C0CBD0DC20B330E0A0D4325E326530F660CBA0DBA0B270E000D3D25E326530F640CAF0DB20B200EFD0C3425DC26550F660CA60DB10B280EFF0C2A25D6265A0F6F0CA70DB60B380E030D2825D126590F7A0CA80DB80B3D0E060D2D25CB26540F7E0CA90DAD0B370E060D2F25C326520F790CAD0DA40B300E060D2D25BC26520F720CAC0DAB0B2F0E080D2C25BB26520F700CA60DBA0B340E0C0D2825BD264E0F700C9B0DB90B350E100D2525B8264A0F700C900DAD0B2D0E120D2325AF264D0F730C890DA40B280E0E0D2225A726510F750C870DA60B2A0E040D2025A326510F750C8A0DAD0B2C0EFE0C1725A526530F760C900DB20B2D0EFF0C1125A726580F770C980DB30B2E0E020D1525A6265E0F730C9D0DB20B310E050D1725A526600F6E0C9E0DB00B360E0B0D0F25A326600F6A0CA30DAD0B380E0E0D0125A126600F690CA70DAA0B390E0A0DF8249D265D0F640CA50DA60B360E070DFA249226570F5A0CA40DA20B2F0E070D00258C26520F570CA30DA40B270E030D05258E26480F5E0C9F0DA40B1D0EF80C0A2594263C0F600C970D9F0B170EF00C0F259926350F590C8F0DA10B160EF00C0E259E26310F500C890DA80B150EF00C04259F262D0F4A0C890DAC0B130EEA0CF9249A262D0F4B0C8B0DB10B100EDE0CEF2493262C0F510C8B0DB80B120EDD0CE8248F26280F500C880DB80B120EE40CE7248E26200F4C0C830DAD0B050EEA0CE7248926220F4E0C830DA10BFF0DEE0CE42481262C0F4F0C830D9F0B060EF20CE4247626330F4F0C8A0DA50B0F0EF50CE52470262F0F4E0C910DA40B100EF00CE6247026260F4F0C940D980B050EE60CE42470261E0F4F0C910D8B0BFA0DDC0CDC246F261A0F4C0C8B0D8B0BFA0DD90CCF246C261C0F4C0C8C0D920BFE0DDC0CC6246426220F500C920D980BFE0DE60CC5245E26270F540C900D980BFD0DEE0CC3245F26260F580C8C0D970BFE0DEA0CBD246326200F590C8C0D920B000EE30CB82465261C0F580C850D870B030EDD0CB12465261E0F550C7B0D810B060EDD0CAD2463261E0F4D0C740D840B0A0EDB0CB1245E261D0F460C6F0D840B0C0ECC0CB8245D26150F440C6A0D7F0B050EBC0CBE2459260E0F450C6C0D7A0BFA0DB70CBE244A26100F460C740D7C0BF90DBE0CBB243D26190F4E0C810D860BFE0DCA0CBD243B26280F5D0C960D980B090ED80CC5244926370F730CB20DB30B1A0EEA0CCA246026440F8A0CD30DD40B300E010DCD247C26530F9A0CF60DF00B480E140DD9249A265E0FA60C1C0E050C600E230DF024B626670FBB0C420E200C7A0E340D0825D4266F0FD80C620E440C960E480D1925EA26750FF00C7F0E670CB20E5A0D2825F826820F0A0D9C0E860CCF0E6E0D3B2507278F0F270DB80EA50CEC0E7D0D51251D27970F420DD80EC40C070F860D642536279D0F5A0DFC0EDF0C1E0F950D72254F27A50F6C0D1E0FF50C2E0FA70D80256727AE0F7B0D460F0C0D3C0FB80D93257E27B90F8C0D730F280D4F0FCD0DA5258D27C60FA10D9D0F480D680FE40DAC259A27D00FB90DC00F670D800FF60DAF25AA27DA0FCE0DDD0F810D920FFF0DB725B527E70FE40DF40F9C0DA20F070EC125BC27F20FF60D0910BA0DB40F170EC425C227F90F010E1F10D00DC80F290EC825D327FE0F120E3910D90DD60F330EDC25F127FE0F230E5610E20DDC0F340EF9251128FC0F340E7910F00DE70F3A0E0A2624280410480EA1100B0EFB0F4D0E12262F2817105F0EC810320E1810620E1B2637282A10720EE510520E3210740E1D263E283910850EFC106D0E46108A0E1D2645283D109A0E1011830E5410A20E26264F284210AF0E2711930E6010B00E33265B284810BE0E3C119F0E6710B30E392668284710C40E4E11A90E6510BA0E3B2676284A10CC0E6711B90E6A10C50E3F267F285210DD0E8411CE0E7E10D10E452684285B10F10E9A11E40E9710DF0E4A2685286110FC0EA511F10EA510E90E4C2680286110FD0EA511F40EAA10EB0E4E2677285D10FA0E9E11F00EA710E80E4B2674285910F80E9411E90E9E10E50E3F2677285010F50E8B11DE0E9010E20E352676284610F10E8311D10E8410D80E322673284410F10E7E11CB0E8210CF0E302671284110F30E7C11D00E8310C90E322674284210ED0E7E11D60E8210C00E302676284810E80E8011D50E8110B40E242670284E10E80E7A11D10E7C10B00E162661284F10E10E6B11CB0E7210B30E0A2653284910D90E5B11C10E6E10B40E05264C283B10CF0E4711AD0E6810AE0E01264C282E10C10E3211990E5910A50EFB254D282B10B80E2911920E4B109C0EF72546283010B40E2B11950E4A10940EF22539283210AE0E2811910E5210930EE92529282F10A00E1B11840E5210970EDB25172829108C0E0B116F0E3F10930ECA2502282410780EFC105D0E2C108B0EBA25E8271C10620EE210490E17107C0EA825CE270810470EB810270EF20F670E9725B727EB0F2F0E8A10FC0DCC0F4D0E8625A327D50F1C0E6510DF0DB60F320E71258B27CF0F0C0E4A10D40DAA0F1F0E5D256D27D00FFC0D2C10CF0D9B0F150E4E255427C80FEA0D0410C10D8A0F0A0E40253D27B90FD80DE40FAE0D7B0FFD0D32252B27AE0FC40DC80F990D690FEF0D1F251A27A60FB20DAB0F810D560FDD0D022505279E0F9F0D900F610D420FCA0DE724EB26940F880D6C0F380D270FB20DDA24CF26860F700D3D0F0B0D050F960DCF24B426790F5B0D0F0FE40CE60E840DC2249F266E0F440DE50EC00CCF0E760DB2248C26620F280DC30EA40CC00E680D9E247826510F0D0DA50E900CB20E570D84245F26430FF70C860E7D0CA60E470D69243F26370FDC0C620E640C910E360D49241B26260FBB0C3C0E420C6C0E220D2A24F9250F0F910C0D0E130C3F0E060D1224D525F70E660CD80DDA0B160EE90CFB23AC25E60E420CA00D9F0BF40DCF0CE5238425D80E290C6E0D750BDC0DBD0CD6236825CC0E170C4A0D600BC80DAD0CD0235325C70E080C300D580BBB0D9B0CC8233F25C60EFE0B1F0D510BB40D8D0CC1233425C80EF90B1B0D4B0BB00D880CB6233725C70EF70B1B0D400BAA0D860CAE233D25BE0EF30B160D290B9B0D820CAC233A25B80EED0B100D1A0B8B0D7B0CA9233225B80EE60B110D1C0B850D760CA7232A25BB0EE00B100D220B860D710CA7232A25BC0EE00B0C0D270B840D6F0CA4232B25BA0EE20B0A0D2C0B850D770CA1232D25B40EE00B0A0D2D0B8E0D810CA0233425AF0EDB0B0C0D260B910D820C9F233725AB0EDB0B100D1C0B8F0D7C0C96233125A80EDE0B170D150B8B0D750C89232825A70EDC0B1C0D110B800D6F0C82232225A40EDA0B1B0D130B720D6C0C82231A259E0EDA0B120D1D0B690D6F0C83231425930EDC0B070D250B670D740C852314258C0EDA0BFE0C260B6A0D750C832315258D0ED30BFA0C270B700D760C79231125950EC90BF70C290B780D750C70230A259C0EC30BFB0C2C0B7D0D6E0C6E23FE249A0EC20B010D2A0B7A0D640C7023F524940EC30B040D230B760D5F0C7423F324920EC60B020D1E0B740D5E0C7523F424940ECB0B000D1A0B760D610C7823F624940ECB0BFF0C0F0B7B0D600C7623FA24910ECA0B020D0A0B830D5E0C7123F9248F0ECC0B060D0D0B8A0D5D0C7223F3248B0ED00B080D0F0B900D5C0C7223ED248B0ED70B080D140B920D5D0C6723E624920EDE0B060D190B8E0D630C5723E024930EDA0B020D170B840D640C4E23E0248D0ECF0B030D0C0B780D5C0C4E23E0248E0EC90B050D050B720D530C5123DA24980EC70B060D100B700D540C5023D4249F0EC50B010D1E0B700D560C4E23D124A10EC40BF90C250B730D550C4D23D1249D0EC20BF00C230B780D550C4C23D224940EC10BEC0C1D0B790D560C4C23D324840EBA0BE40C120B700D490C4923D124760EB30BD90C080B610D390C4123CD24750EB60BD50C060B5B0D350C3D23C9247C0EBC0BD60C090B5B0D390C4423C3247E0EBD0BD90C0C0B500D370C4A23BA247E0EBA0BDF0C0D0B490D350C4523B424830EB60BE60C0D0B4C0D390C3F23B424870EB20BE60C0B0B4F0D400C3D23B424850EAF0BE80C0B0B500D480C3823B5247C0EAD0BE80C0D0B510D470C3023B824730EAC0BE70C0E0B510D400C2423B324740EB10BE90C090B4E0D3F0C1923A224810EBB0BF00C040B520D490C14238F248A0EBE0BF50C010B5D0D570C18238B24880EBB0BF00CFF0A600D5C0C1D238E24840EBB0BEA0CFE0A5F0D5A0C1A238B24820EBA0BEA0CFE0A5D0D5D0C12238824810EB80BE90CFE0A5A0D620C0C2389247C0EBB0BE20CFC0A5F0D600C08238F24750EB90BD50CF90A630D570C05239524740EAF0BCC0CF40A5E0D510C06239B24780EA90BCC0CEC0A530D4D0C0C239B24790EA50BD00CEC0A4B0D4A0C14239C24700EA10BD50CF10A4C0D440C1623A024650E9D0BD40CED0A4D0D3A0C1323A2245F0E9C0BCE0CE70A4B0D2F0C0C2398245C0EA00BC60CE90A4E0D280C07238A245E0EA10BC10CED0A520D250C08238724600E9B0BBC0CE90A4E0D1E0C0A238A245E0E950BBA0CE50A460D180C04238924590E980BBB0CE70A450D170CF7227E245A0E990BBC0CEF0A470D1C0CE8227824650E980BBF0CFA0A470D220CDE2273246D0E9C0BCA0C010B490D270CDE226D24690EA50BD40CFD0A4A0D2C0CE52267245F0EAF0BD20CFA0A4A0D2F0CEC2260245C0EB00BCC0CFB0A4B0D360CED2253245F0EA80BC00CE80A440D3B0CF0223B24560E980BA50CA80A360D330CFB221524420E7B0B790C4F0A220D200CFB22E023320E5A0B4B0C010A020D080CE722A1232D0E480B250CBD09D50CEA0BC2225F23320E3F0BFD0B75099B0CC00B93221B23340E2B0BC80B2909590C890B5E22D4222F0E0D0B950BE608160C4F0B242295222F0EF40A6B0BB008C40B140BE7216222330EE70A460B7C08670BD20AAD213222350EDD0A270B50080D0B8C0A7B2104223A0ED70A160B3C08BC0A4A0A4C21E221430EE10A1D0B4A08770A1A0A2521D6214D0EF60A380B7308400AFA090F21DF21580E110B630BAB08180AE10909210422680E330BA30BFC08020AD20910214822850E5A0BF70B7109050ADC092A21A922A30E830B5B0C0A0A1D0A010A5C212423BA0EB50BD20CBF0A4B0A390AA421B823D80E010C740D990B980A850A00226924020F660C440EA50C0F0BEB0A71223825390FD90C350FDA0DAD0B700BF82223267A0F560D3D10240F6A0C170C99232B27BA0FDA0D54117C10450DD50C4D244F28FB0F690E7F12E911410EA00D122587293E10030FB51369135F0F760EEA25D32A8710A40FF814F8149E105B0FDA263B2CD710501052169A16F8115510E627C22D31110B11C9175C186E136F110629612F9111D3115A19381A0415A312292A0031F111A212F31A0E1CAF16E113462B8A3246126913821CCE1D5F182015572C003494122114FD1D761F0F1A59165F2D6535DA12C014541F0321BE1B8917622EAC361813461583206722651DB2185A2FD8374E13B41598219E23FC1ECE194930F43876130F169622B3248E20DF1A3B310A3A8E135A168123B9252A22F11B2A32103B991391165224AB26C723FD1CF932E63B9513A216E82462273825E41D87335F3C6E1368161025DC272A267D1EB6335A3C0A13C415992422285026A01E8A33DF3B6D12D31492230428C825531E1933183BBC11BC133D226F27EE24C11D7532243A0B118F12C1207D26E9230A1DBB31213955104F112D1F5425CE22431C043120389B0F04109D1D2224BA21801B4D301E37E40EB60E151CF622B420C51A8E2F1536310E620D821AC021A41F051ABF2EF7347A0D0E0CDF186E207A1E3519E92DC333B80CBD0A2E17F81E441D4D180B2D8532F00B6E0975156D1D081C54171F2C4631310B2508BA13DB1BC31A5716302B0E30770ADE06FD11481A79195E15492AD72EB80989053E10B818301864146A299E2DF4082704830E3717F61672138B286B2C2D08C102CA0CC415CF158D12AD27372B68075901150B4F14AE14B011D026FE29A006F6FF6409D0128313D110EE25C128DC05A0FEB4074E115412F10F0D2584271E0559FD0206CF0F23110B0F2C244A26680418FC5704530EEC0F200E4C231425B703D8FAB702D50CB30E360D6E22E223FE0290F914014A0B770D4B0C9621BB22410247F870FFC109410C680BE120C121AC013DF70DFE7308380BA50A66201C216B01C5F63CFD9007810A1C0A2020BF208801F1F609FD17071D0AD809FE1F9220F1019AF754FDF006F209C409F51F8E208A0290F8F6FDF206EB09C109FE1FA5203F03AFF9CCFE0907FD09CB090E20C9200404E8FABFFF35071F0AE8092720F620CA042EFCBB0069074C0A0B0A4C202521900572FDB8019A077B0A280A73204E215606B5FEB902D307A90A410A962077211A07FEFFC1031908D60A610AB820AA21E5075001CF046508030B890ADD20E421B708AA02DF05B2083A0BB80A09211E2293090704F10603097C0BE90A3A2155226F0A680507085309BA0B180B67218C22440BC80620099709F80B440B8D21C622040C0808260AD209330C6D0BA421F422990C0209F00AFF095E0C8B0BB2211323FF0CAF09740B1E0A7D0C9B0BC0212923460D220ACB0B340A910CA30BC7213223760D700A090C440AA10CAB0BC6213223940DA50A360C570AB10CB30BC1212E23AF0DC80A550C6F0ABE0CB90BBE212E23C30DDA0A690C7F0AC50CBC0BC0213223CE0DE10A770C800AC80CBB0BC1213023D50DE70A790C7A0AC80CB90BBE212D23D80DEF0A720C740AC20CB80BBE212E23D60DF20A6F0C6A0AB80CBA0BBD212B23D80DF40A750C600AB40CC20BBA212623DC0DFA0A770C5D0AB60CC80BB5212823DE0D010B700C5F0AB50CC00BB5212C23DA0D010B6D0C640AAE0CB50BB7212D23DE0D020B730C6A0AA80CB10BB8212C23E50DFE0A740C680AAC0CB10BB1212E23E70DF60A710C5D0AB50CB30BA6212E23E20DF10A710C540AB50CB60BA2212423E30DEF0A720C560AB00CB80B9F211623E80DF60A740C570AB00CB90B9C210E23E70D020B760C540AB30CB60B9C210C23DF0D070B750C560AB00CB20B9C210A23D80D0B0B750C5C0AAC0CB50B9A210823DC0D120B750C5E0AAC0CC20B9A210423DF0D160B760C5D0AAF0CC80B9B21FD22E10D120B7A0C5B0AB40CC00B9B21F622DF0D0B0B7D0C580AB40CB50B9C21F222D40D070B7B0C540AAB0CAE0B9A21EE22C90D050B780C510AA30CA90B9721EB22C70D000B7D0C520AA40CA50B9821EE22C50DF90A880C550AAA0CA60B9721F022C50DF60A950C570AB00CAC0B9421ED22C70DF80AA20C530AB30CB10B9321EC22C80DFE0AA80C4B0AB00CAD0B9121F122C80DFF0AAA0C490AA80CAB0B8F21F322C70DFA0AAF0C4A0A9E0CAB0B8D21F122BF0DF20AAE0C440A970CA60B8921EF22B60DEA0AA90C3B0A930C9F0B7F21EA22B50DEE0AAC0C390A960CA20B7721E122B90DF80AB70C450A9D0CAF0B7621D722BE0DF90AC00C500AAA0CB40B7521D222C30DF80AC40C540AB50CB30B6C21D022C50DF70ACE0C570AB00CB50B6321CD22C50DF50ADA0C5B0AA60CB70B5F21CA22BF0DF30ADF0C590A9D0CB00B5F21CB22B80DEF0ADE0C4E0A930CA30B6321CA22B90DEC0ADF0C430A8E0C980B6921C822BC0DEA0AE70C420A950C910B6921C822BA0DE80AF20C460A9E0C8F0B6321C922B60DE30AF70C450A9B0C950B5C21C722B70DE10AFD0C410A960C9B0B5121C322BE0DE70A010D410A9C0C9E0B4721BD22C90DF00A040D470AA90CA00B4621B622CE0DF00A050D4A0AAB0C980B4B21AE22C90DE80A080D410A9F0C8D0B5321AE22BD0DDC0A0F0D3E0A950C890B5221B322B30DDC0A190D450A950C890B4721B222B40DE30A230D4B0A980C8F0B4121AA22B60DE90A290D4D0A9B0C9B0B4221A422B30DED0A2A0D4B0A970CA40B4521A422AE0DEC0A2A0D4A0A900CA60B4921A722A70DE30A2F0D480A8B0CA40B4921AA22A20DDD0A3C0D440A8C0C9C0B4521AA22A20DDB0A4A0D410A930C8E0B4121A322A50DDB0A500D440A990C820B41219D22A40DE20A500D4E0A9A0C800B47219C229F0DEB0A550D5D0A990C860B4B21A1229F0DF00A5F0D6B0A9F0C900B4921AC22A60DF40A6A0D750AAE0C9F0B4521B322B20DFE0A6E0D810AB80CAD0B4921B622B40D060B650D850ABB0CB40B5021B722AD0D0C0B5B0D810AC30CB80B5621B822A70D130B570D7B0AC80CBA0B5E21B822A30D160B580D7F0AC80CB80B6521BC22A00D190B5C0D8A0AC70CB30B6A21C2229D0D1C0B640D950AC90CB50B6B21C4229D0D200B730D9E0ACE0CBD0B6821C7229E0D290B810DA30AD40CC20B6721CE229F0D3A0B890DAB0AD50CC40B6B21D6229F0D450B8C0DB80AD00CC40B6D21DC22A00D4A0B900DC50AD10CC60B6F21DF229A0D4E0B970DCB0AD90CC70B6D21E222940D4F0B9C0DCD0AE00CC70B6D21E622940D4E0B9F0DD20AEA0CCC0B7321E722920D4F0BA30DD60AF80CD70B7A21E7228D0D520BA70DD80A050DE40B7D21EB22890D580BAC0DE10A100DF20B7E21F2228B0D5E0BB00DEC0A160DF80B7D21FA22910D640BAF0DEE0A150DF60B76210523960D650BAA0DEB0A100DF50B6D210E23960D6B0BB00DF30A110DFB0B6A211023900D760BBB0D010B170DFE0B702111238C0D7E0BC70D0B0B1E0DFB0B7E210E238D0D840BD20D100B220DF90B8F2107238E0D8F0BDA0D150B270D000C942100238E0D990BDC0D1A0B2F0D0D0C8F210023940D9F0BE10D230B370D150C8A2108239B0DA00BEA0D2B0B370D140C8C211423960DA30BEB0D300B340D0D0C91211D238C0DA60BE80D2F0B340D040C932121238A0DA60BED0D330B380D020C90212423900DA40BFA0D3E0B3D0D080C89212823940DA90B0B0E4B0B430D170C842129239D0DB50B1A0E5A0B500D260C80212823A40DC20B250E6A0B610D350C80212823A20DCD0B280E730B6F0D480C82212A239B0DDB0B260E7D0B7A0D530C85212C23940DE50B230E870B7C0D4F0C83213423870DE30B260E8B0B780D480C83214123780DDA0B2F0E8B0B790D470C89215023730DD70B3A0E8C0B7E0D4B0C8F215723780DDE0B3E0E930B840D510C95215623850DE70B3B0E9F0B8C0D570C9B215A238D0DEE0B3A0EA30B900D580C9C215F238C0DF50B3F0EA40B940D590C9E216323820DF50B450EA40B9A0D550CA3216523780DF20B490EA80B9E0D4B0CA8216723770DF40B4F0EAE0B9E0D430CB22162237D0DF60B590EB30BA10D440CBD215C23830DF90B610EB80BAC0D500CBD215D23890D060C690EC40BBD0D5F0CBA216323890D130C6D0ED30BC70D650CB7216923830D1D0C710EDE0BCA0D6D0CB1216C237C0D250C780EEA0BCE0D800CA9216F237A0D2C0C800EF70BD70D920CA62172237E0D2A0C800EFA0BDB0D930CAC2177237D0D240C810EF00BD40D8B0CB1217923780D240C870EEF0BD00D840CB1217723770D340C920E020CDA0D820CAD2178237A0D490CA20E180CEC0D860CA92183237D0D570CAB0E240CFC0D8D0CAD218D23770D5A0CAD0E280C090E910CB4218E236D0D5B0CAF0E2C0C110E940CB5218E23680D600CB20E300C100E9B0CB5219023680D680CB10E2D0C070EA30CB7219623650D6F0CAE0E280CFE0DA80CB6219A23610D730CAD0E2D0CFB0DAC0CB5219923600D7B0CB50E3A0CFD0DB50CBA219923600D8B0CBC0E480C070EBD0CC5219F23600D990CBC0E4F0C110EBF0CD221A923600D9C0CBD0E560C190EBF0CDC21AD23600D9A0CC70E5E0C2A0EC30CDE21A823620D9F0CCF0E660C3C0ECA0CDC21A523600DA70CD30E6C0C400ECD0CD821A923560DA70CDC0E710C3D0EC80CD521B023500DA10CE40E740C3B0EBF0CD521BA234E0D9B0CEC0E7B0C3E0EBF0CD921C3234F0D9D0CF00E8A0C450EC70CDC21C523540DA80CF40E960C4A0ED00CE021C323580DB30CF90E970C500EDD0CE821C823510DB40CF30E900C540EE10CF221D0234B0DB10CED0E8A0C560EDA0CF621D523500DB20CF20E8D0C550ED70CF621D9235B0DB20CFB0E950C550EDB0CF921E023680DB10C090FA20C5C0EE00CFF21E823760DBD0C250FB90C660EE70C0422F423810DD40C400FD80C6F0EF20C092202248B0DE70C550FF10C7B0E000D0A220A24940DFA0C690F030D8A0E0A0D0C220B249E0D120D7B0F160D9C0E140D13221024A60D260D880F270DAA0E1F0D1B221A24AD0D2F0D910F300DB80E300D20222724B40D300D970F320DC10E3F0D28223224BE0D340DA00F310DC50E420D31224224CC0D430DB20F360DCD0E440D3D225624DB0D520DC60F410DD80E480D47226224E70D5F0DDD0F520DE50E4D0D48226524EE0D6A0DF70F670DF30E560D48226724F20D6B0D0F107D0D030F5D0D4C226424FA0D6D0D1B108E0D130F660D51226224050E720D1A10960D1E0F6E0D58226B240D0E7D0D1A109D0D200F700D5F227624180E8F0D2A10A90D240F760D64227D24290EA30D4C10BD0D2F0F840D6A2283243A0EBB0D7210D70D3D0F920D73228A24400ED20D8C10F20D4B0F9E0D78229524450EE30D9A10030E570FA60D7B22A3244B0EF40DA2100C0E5B0FAE0D8222AD24540EFF0DAE10160E5C0FBB0D8822B124670E010EBC10200E610FC80D8A22B8247E0EFE0DC710270E660FC60D8E22C9248B0EFF0DD610290E690FBE0D9822E124930E060EE910340E730FC40DA422FB24A10E110EFB104B0E850FD10DB0220B25B00E160E0B11600E9D0FD90DB9220F25B70E180E1E116F0EB40FDF0DBA220F25C00E210E3611800EC50FE90DB7221425CD0E2E0E4111920ED30FF70DB9221A25D60E390E3C11A10EDE0F030EBF221C25D90E400E3411AF0EE40F0D0EC6222225D80E470E3511BE0EE70F0E0ED0223625D10E4D0E4111CB0EE50F0C0EDB224925D00E5C0E5511D80EE90F180EE6224F25DC0E730E6311EB0EFB0F2B0EF0225125EA0E820E6B11000F15103E0EF5225525EF0E8C0E6F110D0F2A10480EF4225825F10E930E7111190F3D104D0EF7225C25F10E890E6F11210F4710510E02236225F10E750E6611200F43104F0E0F236825F90E6F0E6611220F40104E0E172371250D0F8C0E8211340F4510510E19237A25290FC70EBE11540F52105E0E1A2384253F0FFC0EF7116A0F5E106B0E18238D254D0F120F1312730F66106B0E11238A255D0F1C0F2012780F6C10610E08237D25680F260F2512710F6E10570EFE227425690F260F2112570F6710540EF2226E25650F1B0F18123E0F5B10550EE72264255E0F0E0F13122F0F5310510EE1225925580FFF0E12122A0F4C104F0EE0225425560FF60E0D12240F43104F0EDE224C25550FFB0E0112160F3C104A0ED6223925550FFF0EEF11090F3410400EC6222225530FF90ED511FF0E2B10340EB5220C254E0FED0EB711ED0E2010270EA122F824460FDB0E9B11CF0E10101A0E8B22E2243F0FC40E7F11AD0EFB0F110E7922CC24360FAA0E61118A0EE10F070E7422C0242C0F8B0E45116E0EC70FFB0D6E22B824220F770E3111620EB10FED0D5B22AB24150F6F0E2011580EA40FE30D49229824050F650E0711430E9C0FD70D3D228524F50E560EEB102D0E8E0FC70D35227124EA0E400ED010190E790FB10D2A225B24E20E240EB510000E620F980D17224524DC0E080E9610E00D4D0F840D00222F24D00EEA0D7010BF0D310F720DE7211924BF0ECE0D4710A30D0D0F5F0DCF210124B10EB60D1C10870DE90E4E0DBA21E123A20E9A0DED0F650DCB0E3D0D9E21B823910E7C0DBC0F410DA90E230D7C218C237A0E5B0D860F190D830E060D5E215B235C0E350D4F0FE60C5E0EE90C44212B233E0E070D120FAD0C310EC60C29210123230ED30CCF0E770CFE0D9E0C0821D7220B0E9F0C920E420CD60D820CE920AA22FA0D710C5C0E0A0CB60D6E0CD6207B22EA0D4D0C230ED90B970D5C0CC0205122D60D2A0CE50DB50B740D460CA4202C22C50D080CAF0D930B510D2F0C82200C22BB0DEB0B7F0D670B310D160C5C20EA21B30DCD0B4A0D340B130DFB0B3B20C621A40DAA0B110D050BEF0CD70B2120A421940D870BE40CE30ACE0CB80B0D2085218C0D6C0BC20CCC0AB90CA80BFC1F6821830D580B9B0CB10AA50C930BEC1F4D21780D4A0B790C980A910C7A0BDC1F3A216A0D3C0B630C830A7D0C690BCA1F2E215D0D300B590C720A720C640BBC1F2221520D230B4E0C610A660C620BB51F1521440D0B0B360C500A4C0C590BA81F03213D0DED0A170C3F0A360C4B0B951FF3203C0DDA0AF90B300A290C380B801FE8203B0DD40AE10B250A1F0C280B6B1FDE20330DCA0ACB0B130A0C0C1B0B561FD320210DB80AB00BFA09F30B0C0B441FC4200C0D9E0A8F0BDF09E10B010B3A1FB120FE0C870A740BC509D60BFA0A351F9C20F70C800A650BAF09CB0BF50A321F8820F30C810A580B9E09BD0BF00A341F7B20F50C800A4A0B9209B50BEB0A3A1F7420F90C7C0A420B8A09BB0BE50A371F6E20FF0C780A450B8409BE0BE40A2E1F6E20FF0C760A4B0B8009B80BE10A2A1F7220F40C700A470B8209B20BD80A2A1F7420E50C690A3C0B8509AE0BCF0A2A1F7420DC0C670A310B8309A50BC80A2B1F7220DB0C6E0A2C0B7F099C0BC50A231F6B20DF0C720A2D0B7F099E0BC70A151F6320E20C710A2F0B7D09A50BC70A0B1F5A20E50C720A340B7509A90BCB0A0A1F5720EC0C700A380B7009AA0BD20A0B1F5720F10C650A360B7409A70BCE0A0C1F5620F10C5F0A340B7B09A30BC80A0D1F5120F00C600A350B7B09A00BC70A0F1F4A20ED0C650A310B78099E0BBF0A131F4420EA0C690A2B0B7F099E0BB40A141F3D20E90C6A0A2D0B87099E0BB50A171F3720E80C690A310B87099D0BC10A1C1F3420E80C630A300B84099C0BC70A1C1F3220E60C5B0A2E0B81099B0BC30A131F3420E10C540A2A0B7A09930BB80A041F3B20DF0C530A220B77098C0BAF0AFB1E3E20DD0C580A180B7909890BA90AFE1E3D20DB0C5D0A140B7A09890BA90AFF1E3B20D90C5F0A1D0B77098B0BB00AFC1E3420DA0C610A270B7409930BB90AF91E2C20DA0C610A250B73099C0BBE0AF31E2E20D90C620A1C0B73099E0BBD0AEC1E3620DB0C600A160B6E09990BBC0AED1E3920E10C560A0E0B6609910BBE0AF11E3420DD0C4A0A0A0B5D09890BBB0AF31E2C20D10C460A0F0B5609890BB20AF31E2320C50C450A140B5509940BA90AEE1E1F20BE0C450A170B59099D0BA90AEA1E1920C00C4A0A160B5D099E0BAA0AE91E1220C80C540A150B64099D0BAC0AE41E1620C80C5C0A120B6309970BAB0AE11E1F20C60C5A0A0C0B5A098C0BA60ADD1E1E20CB0C530A0E0B5709840BA30AD31E1E20D20C4A0A140B5B097F0BA10ACC1E2120D40C450A1D0B61097C0BA10ACA1E1D20CC0C430A220B66097E0BA50ACC1E1620C80C420A1E0B6A09860BAB0AD51E1420CA0C440A170B6709890BAC0ADD1E1220CA0C4E0A140B5F09830BAB0ADA1E0E20CB0C5B0A120B5C09820BAD0ACF1E0C20CC0C5F0A0A0B5D09830BAB0AC81E0C20C50C560A050B59097D0BA50AC11E0520B80C4E0A060B5109750BA20AB91EFE1FB00C4D0A0D0B4F09750BA10AB71EFA1FB00C480A100B5309750B9A0AB41EF81FB50C3F0A0F0B5A09760B950AAF1EF41FBB0C3B0A120B6009760B940AAD1EEC1FC20C3B0A110B6609730B950AAF1EE61FC30C380A070B6A09760B980AB11EE21FC00C320A040B6709780B9A0AA91EE01FC40C300A0B0B60097A0B980A9D1EE51FC70C2E0A0F0B5B097C0B960A9D1EE71FC30C290A0F0B5809770B9A0AA61EE31FBC0C260A0E0B55096F0BA10AAD1EE41FB50C270A0A0B55096F0BA40AAD1EE51FB00C270A050B5709750BA50AA41EDF1FB20C280AFF0A5B09780BA90A9A1ED91FB70C2E0AFC0A63097A0BAA0A961ED91FB70C320AFF0A67097C0BA80A991EDA1FB00C2E0A030B5F09780BA50A9A1EDC1FA40C290AFC0A5209700B9B0A951EDD1F9C0C250AF20A4809640B8E0A8E1ED91FA40C2B0AF10A45095E0B8B0A891ED21FAE0C360AF40A4709620B900A841ED01FB20C360AF20A4A09680B960A821ED21FAF0C2F0AED0A4D09670B930A831ED41FAC0C2C0AEF0A51096B0B8C0A811ECE1FAA0C2D0AFA0A5209760B850A7E1EC31FA80C290A030B4C097C0B7D0A7F1EBD1FA00C230AFE0A4009730B750A7E1EBD1F9A0C200AF20A35096C0B740A751EBE1F9D0C1F0AEA0A3609700B760A6D1EBD1FA10C200AE90A4009710B760A6D1EBD1FA00C230AE80A4609670B6E0A751EB91F9B0C2A0AE60A44095C0B640A781EAC1F970C320AE90A43095B0B660A711EA61F960C350AEF0A42095D0B6E0A681EAA1F930C330AF00A3E095C0B730A661EAC1F8C0C2C0AE70A3C09560B710A6B1EA61F8A0C260AD80A3D09550B720A6B1EA11F8D0C290ACD0A40095B0B7A0A671E9F1F920C300ACD0A42095F0B810A641E9B1F960C340AD00A3E095E0B840A601E961F990C340ACF0A38095E0B870A611E8E1F980C340AD00A36095C0B850A611E8C1F950C2E0AD70A3809560B800A5A1E951F950C230ADE0A37094A0B7D0A531EA11F960C1A0AE10A2F093E0B780A531EA61F900C150ADE0A2609360B6E0A571EA11F840C160ADE0A2809360B690A581E951F7A0C180AE00A31093B0B720A591E861F790C160ADF0A3909400B850A5A1E791F7B0C180ADA0A3A09430B8F0A561E741F820C240AD40A3609450B8C0A511E771F860C2E0AD20A3209490B830A4B1E811F860C290ACF0A2A094D0B780A431E831F860C1F0ACD0A2809500B6E0A3C1E7D1F860C1A0ACF0A2F094D0B640A361E791F8E0C150AD10A33094F0B610A321E701F9D0C100AD60A35095A0B670A331E641FA60C0E0ADC0A3809600B6E0A381E5F1FA00C0D0ADB0A3C09600B720A3B1E5F1F950C0E0AD30A3B095B0B710A3A1E5B1F8D0C0D0AD00A3509570B700A371E531F880C0D0AD30A3109560B780A331E4E1F850C140AD70A33094F0B7D0A2D1E491F820C200AD80A3409490B790A291E461F7D0C290AD50A3609490B720A2A1E481F780C260AD50A39094B0B6A0A271E4C1F7B0C210ADE0A3E09470B6B0A201E4E1F820C1D0AE30A4009420B720A1F1E4A1F880C190AE10A4009440B780A201E481F8B0C160AE00A3C09470B7B0A1C1E4A1F8A0C140AE50A3509460B7B0A1C1E471F820C0C0AE40A2E093F0B760A1C1E411F780C040AD80A2409380B700A141E3B1F760C010AD20A20093A0B6E0A0A1E311F740C050AD20A2A093D0B6D0A051E261F710C0B0AD40A3509420B6C0A021E231F740C100AD50A3709460B690A011E231F790C120AD60A3109450B650A001E201F790C140ADC0A2C09450B630AFE1D1D1F770C180AE00A2A09490B650AFC1D1D1F710C170ADA0A2709490B670AF81D201F6E0C130AD40A2209410B680AEF1D241F6C0C110AD10A1D09360B680AE81D251F6E0C100AC70A21092F0B6C0AE71D201F760C0A0ABF0A2B09300B740AE51D151F840C040AC20A2F09390B7A0ADE1D0E1F8C0CFF09CA0A2E09450B7F0AD61D0F1F8A0CFD09CE0A2C094C0B7F0AD81D171F800CFF09CA0A27094D0B760ADC1D1D1F780CFF09C20A1D09470B6E0ADB1D1E1F720CFE09BD0A1909410B670ADB1D1D1F690CFB09BA0A19093A0B600ADA1D1E1F640CF709BA0A1A09340B580AD81D1B1F690CF809C50A1C09310B550AD81D111F740CFA09D40A1E09370B590AD81D081F780CFA09DA0A1F093C0B610AD21D051F750CF909DC0A24093A0B6C0ACA1D081F6E0CFB09DA0A2809340B6D0AC81D0B1F660CFA09D00A2109300B600ACF1D0C1F630CF309C10A10092C0B4F0ADC1D091F650CEB09B50A0409250B440AE31D041F680CE709B20A0809240B430ADF1D081F6A0CE409AF0A0F09220B460AD61D121F6C0CE109AF0A0F091F0B4C0AC91D121F6E0CE109B40A1109250B540ABC1D081F730CE709BB0A1B09320B620ABA1D001F760CEB09BC0A2509310B690ABC1DF81E6F0CEE09BA0A2109240B630ABE1DF01E610CF009B70A13091A0B580ABD1DE71E570CF309B20A09091B0B520AB91DE21E570CF209AC0A0C09220B4F0AB61DE21E5B0CF009AA0A1309220B4E0AB21DE11E5D0CEE09AB0A16091A0B4D0AAE1DE01E5C0CEC09A80A1709170B4B0AAB1DE21E5B0CED09A50A19091D0B450AA61DE81E590CF109A60A1909200B3C0A9C1DEF1E580CEF09A50A15091C0B360A931DEE1E5C0CE8099F0A1409140B320A8D1DEA1E5D0CE2099D0A1009080B320A871DE31E5B0CE209A50A0C09090B3D0A841DD91E5B0CE609A50A0909180B460A871DD11E600CE8099C0A0809290B430A881DCB1E620CE809940A0F09300B3D0A891DC31E5E0CEC09930A1709310B3D0A8B1DBA1E5C0CF2099A0A1E092F0B450A8B1DB91E5C0CF0099F0A1C09270B4D0A871DC01E5A0CE809A00A15091A0B520A7F1DC41E530CE1099E0A0F09140B4F0A7A1DC21E4A0CDC099B0A13091A0B480A7E1DBC1E430CD9099A0A1709200B400A851DB81E3E0CD7099C0A0F091B0B390A8A1DB31E3F0CDC09A60A0709140B370A891DAC1E420CE109B20A0A09120B380A821DA61E440CE109B40A0F09160B3B0A7F1DA11E420CD909A90A0C09160B410A7F1DA41E3D0CCF099F0A04090E0B410A7A1DAD1E370CCA099D0A0209010B3B0A761DB51E370CC8099D0AFE08F40A340A781DBA1E380CC3099C0AF708ED0A300A781DBA1E390CC2099A0AF508EC0A290A741DB51E3B0CC6099A0AFE08F70A210A721DAD1E3D0CCA099E0A08090C0B250A701DA41E3E0CD109A30A1009180B300A6B1D9F1E3E0CD909AA0A1609190B380A691D9E1E370CDD09AD0A14090F0B360A691D9D1E310CDB09A60A0809FC0A2C0A681D961E370CDA099C0A0009ED0A220A631D931E430CDA09950AFC08EA0A210A5F1D951E490CD909940AF708F00A240A5F1D901E480CDF09910AF508F50A250A5F1D8A1E480CE409880AF108F70A230A591D861E460CE4097F0AE808FC0A220A521D7E1E400CE6097D0AE408FE0A210A491D791E3A0CE7097D0AEA08F80A1D0A431D791E330CE3097E0AED08F30A1D0A431D7B1E2F0CDD097F0AED08F00A200A451D801E310CD409820AED08ED0A1F0A411D801E320CCD098E0AEE08F30A210A3C1D751E300CCC09980AED08FB0A250A3D1D6B1E2B0CCC09980AEA08FC0A250A3F1D6B1E230CC609940AE108F60A210A411D711E1D0CBD09900AD908F00A1B0A431D771E170CB9098C0AD708E90A120A411D761E170CBC098A0AD908E40A0A0A3D1D701E1C0CC1098D0AD708E10A040A3A1D671E220CC309940AD508E40A060A321D5B1E2A0CC6099A0AD908ED0A0E0A251D551E2E0CC7099C0ADF08F80A100A1C1D5A1E2A0CC409960AE508F70A0F0A1B1D611E200CBD098E0AE908EC0A120A1D1D631E170CBE098A0AED08E50A160A1F1D661E130CBF098A0AED08E10A170A1F1D661E130CBD09860AE508E00A190A251D5D1E150CBD097D0AE008DE0A1B0A281D4F1E1E0CBF09760AE408E10A1C0A221D451E240CC609740AE808EC0A1F0A1E1D3F1E1F0CCC09770AE808F50A230A1E1D421E140CCA097A0AE508F30A230A1E1D481E0D0CC309770AE208EE0A1B0A1A1D471E100CBE09790AE208E90A160A121D441E150CB909810AE508E30A120A101D461E110CAE097F0AE208DA0A0A0A161D491E060CA209760AD808D70A050A211D4B1EFE0BA209700AD308DC0A010A261D461E000CA809730ADD08DE0A010A1F1D3F1E060CAF097A0AE708DD0A030A101D3C1E0A0CB5097E0AE708DD0A0A0A041D381E0D0CBB097E0AE208E10A120A011D311E110CC2097E0AE208E50A190A051D2F1E150CC109780AE708DF0A190A091D311E130CB4096F0AE208D30A0E0A091D331E0B0CA709670ACF08CB0AFC09051D311E080CA609670AC808CC0AF709FD1C2A1E0E0CAD096C0AD208D50A010AF91C221E170CAF09700AD808DA0A050AFD1C1A1E1C0CAD09760AD908DB0AFD09FB1C0F1E1C0CAE09830ADD08DD0AFB09F21C071E130CAE098C0AE408E00A020AED1C041E050CA909870AE708DD0A030AEA1C021E000CA709800AE108DA0A030AE71C001E070CA9097E0AD808DA0A020AE51C001E0D0CA9097A0AD908D80AFE09E81C031E090CA7096E0AD908D20AF909E81C051E070CAC095F0AD108D00AF809E21C041E0C0CB709540ACF08D50AFA09DB1C021E0F0CBC09540AD608DF0AF709D71C001E0B0CBB095F0AD608E80AF109D51CFD1DFF0BB409670ACB08E80AEB09D91CFB1DF30BA6095F0ABD08DA0AE009DF1C001EEB0B9709550AB308C70AD409DB1C091EEA0B9309570AB108BF0AD609CF1C0F1EEC0B99095C0AB508BF0AE309C81C111EEA0B9E095C0AB908C40AEC09C91C0E1EE40B9F095C0ABA08C50AEC09CC1C071EE20B9D095D0ABB08C50AEE09D11CFE1DE70B99095E0ABA08C70AF709D91CF61DEA0B97095F0ABA08C30AFF09DF1CFB1DEF0B9D09670AC008C00A010AE61C0D1EFC0BB009800AD608CF0A090AF01C201E0F0CC709A60AF908F00A1F0AFD1C311E200CE009CC0A1E09140B370A0D1D451E300CFE09F60A4209320B470A1A1D5D1E3E0C1A0A230B67094D0B560A271D701E460C2C0A4B0B8709680B6A0A3A1D821E480C3A0A660BA109800B7E0A4D1D971E4C0C4E0A7D0BB709930B8E0A591DAD1E560C680A9E0BD209A60B9B0A651DC61E600C870AC90BF909BC0BAC0A791DE01E6C0CAE0AF40B260AD70BC10A8D1DF91E7B0CD40A1A0C4A0AF30BD40A9E1D0C1F8C0CF20A3E0C650A0A0CE90AB01D191F9F0C070B620C850A200CFF0AC21D291FAB0C0F0B800C9F0A300C0D0BD11D3C1FB10C1A0B9C0CB00A3E0C180BDA1D4E1FB30C2A0BB40CBE0A4C0C250BDF1D621FB30C380BCA0CCC0A5B0C350BE41D7A1FB30C490BDE0CDE0A680C410BEA1D8F1FBE0C5E0BF50CF70A770C4D0BF61D9C1FD20C740B180D100B8A0C5A0B071EA81FE00C8A0B440D2D0BA70C6B0B1A1EB91FE20C9E0B6E0D470BC30C780B2D1ECF1FE00CB50B8E0D590BDC0C7F0B381EDF1FE80CCB0BA70D6E0BF90C8C0B381EEA1FF90CDF0BBA0D8B0B0F0D9E0B3C1EFC1F040DED0BC70D9E0B170DA60B491E19200C0DF70BDE0DA60B1A0DA60B5B1E3320120D080CFC0DB50B280DAB0B661E42201C0D220C190ED20B3E0DBC0B681E4820290D370C350EEC0B4E0DCF0B6A1E5020340D420C4B0EFE0B570DDD0B6D1E5D20360D480C570E130C600DE40B6E1E6120350D4A0C5E0E240C660DEA0B6F1E6120350D4A0C650E270C670DEC0B721E6620340D460C650E210C650DE80B711E6E20340D440C630E1E0C650DE20B711E6D20370D430C680E220C670DE20B781E6420380D410C6D0E230C6C0DE60B7C1E5B20320D3E0C6A0E1E0C6C0DE40B781E51202E0D3B0C620E170C660DE40B6D1E4720290D330C5E0E130C610DE80B621E4220220D2D0C5F0E0E0C630DE80B621E3D201C0D2C0C5E0EFE0B630DDB0B621E3820170D280C560EE90B5A0DCB0B5C1E3620150D240C4F0EE20B510DC20B4F1E3620150D260C4D0EE80B470DC00B421E3420160D2A0C470EF10B3B0DBE0B391E2520160D250C3B0EF40B360DBC0B301E1120170D1D0C310EF00B3A0DBD0B281EFF1F180D180C220EE60B3D0DBA0B1D1EF01F1B0D110C120EDA0B3F0DB50B0E1EE11F170D030C000ECC0B360DAB0B011ED11F080DF30BEA0DB80B200D980BF61DC01FF90CE60BD30D9C0B0A0D890BED1DB51FEE0CD70BB60D7F0BF50C800BE01DA41FE30CC20B8F0D670BDF0C7A0BCD1D831FDF0CAE0B6F0D540BCD0C710BB91D661FE00C980B590D3F0BBB0C630BAD1D551FD50C7E0B3D0D290BA30C4F0BA11D431FBF0C630B1B0D0F0B880C3B0B901D2A1FAA0C4C0BF60CF10A6F0C2A0B7D1D131F950C3A0BCF0CD30A570C160B6B1D021F880C290BAB0CB90A3C0C010B5C1DF51E820C160B8E0CA50A270CF20A4C1DE61E7E0CFF0A710C8B0A170CE30A331DCF1E790CE70A500C6C0A030CD80A1B1DAF1E720CCF0A2F0C4C0AE80BD30A0C1D921E6C0CB40A0F0C290ACD0BC90A011D7E1E650C940AED0B050AB70BB80AF41C681E5A0C760AC40BE509A30B9C0AE91C4E1E480C5E0A9D0BC8098D0B7D0ADE1C351E300C430A770BAA096F0B630ACD1C1B1E190C2A0A4D0B8C094D0B500AB51C001EFF0B130A1E0B69092B0B3F0A9A1CDE1DE80BF909F00A44090B0B2D0A7E1CB11DD80BDB09C10A1709EF0A180A621C841DC90BBD098E0AE608D80A000A4C1C651DB80BA409600ABF08C10AE3093D1C541DA90B9209430AA808A70AC8092E1C4A1DA50B7F092F0A9708900AB0091F1C3E1DA60B6F09190A86087F0AA209121C301DA00B66090B0A7A08750AA1090B1C261D9A0B5909080A7308700AA509061C1F1D9E0B4F09080A78086E0AA709FD1B171DA60B4C09090A81086D0AA609F41B151DA70B4909080A80086B0AA609EF1B181DA40B4709020A7A08690AA109EC1B181DA60B4A09FD0978086E0A9909ED1B141DA40B4709FB097808710A9809EF1B141D9B0B4209FB0978086C0A9D09EC1B141D950B4509FD097608670A9D09E61B101D9C0B5109010A7908690A9A09E01B0A1DA30B5509FD097C086C0A9E09DD1B071D9C0B4E09F0097808670A9F09DE1B0A1D890B4409EA0974085E0A9909DB1B0C1D810B4309F50977085D0A9D09D91B061D810B4809000A7A08670AA109DE1B011D7D0B4709FE0975086F0A9709E21B021D780B4009F8096B08670A8809E21B031D7C0B3D09F40963085B0A7F09E21BFE1C850B4109EE095E08580A8309DE1BF61C8F0B4409EA096208610A8809D41BEF1C940B4B09EC0972086C0A8D09CC1BEC1C950B5709F1097D08750A9909C91BEA1C950B5E09F2097A08780AA309C81BE81C920B5709F00976086F0AAA09C41BE51C8E0B4909EC097308610AAE09BA1BE21C8F0B3D09EA0970085D0AAE09B51BE51C910B2F09E6096808620AA909BB1BED1C8B0B2209E3095C085F0AA309C01BF21C810B2009E8095608590A9909BD1BED1C800B2C09F4095D085D0A9309B71BE31C870B3909FE096808660A9909B61BDA1C8B0B3D09020A6908670AA209B61BD51C8A0B4109020A6908610AA509B31BD31C8B0B4909030A71085B0A9F09AA1BD01C8B0B4909020A7608590A9909A11BCE1C870B4209F80973085D0A94099D1BCC1C810B3A09EB0971085F0A8E09A41BCB1C7C0B3109E6096E085F0A8E09AB1BCB1C7E0B2E09E50966085F0A9309AB1BC81C850B3709E1096408610A9B09A81BBF1C8C0B3E09DE096A08640AA509A41BBB1C8D0B3909DD097108650AA509A61BBD1C870B2F09DD097108600A9709A71BBF1C7A0B2609DF096608550A8209A41BBF1C6D0B2309DC0953084A0A7809A11BC11C690B2509D6094B08410A73099F1BC11C6D0B2F09D7095108410A70099B1BBD1C6A0B3D09DB095808450A76099A1BB61C640B4009DA095A08430A8009981BAE1C660B3A09D5095D083E0A8609931BA61C6A0B3909D9096108400A84098F1BA61C680B3D09DD095E08440A8009871BAD1C630B3F09D9095508440A8009801BB41C5E0B3909D2094F083A0A7C09801BB41C5C0B2F09CE094D082F0A7309831BAE1C5C0B2909D0094B08300A7009861BA61C5D0B2409CF0948083A0A7709871B991C640B2209CB094D08440A7E09861B8F1C670B2709CC0956084B0A7F09821B911C620B2D09D1095A084C0A7B097C1B951C630B3109D7095B084C0A7709771B961C640B2F09DD0958084A0A7309731B961C5D0B2509E1095108430A7109741B911C540B1C09E1094D083B0A6F097B1B8B1C4A0B1D09DB094908330A71097E1B841C490B2309D5094908320A7509771B7C1C560B2A09D3094908320A7509701B791C620B3309D2094A08360A7509701B771C650B3909CE094D083D0A7E09711B721C680B3909CA095208410A8A096C1B721C670B3B09C40953083F0A8C09661B7D1C5F0B3A09BC094F08360A8109641B871C5B0B3209B9094D082B0A7309621B831C5E0B3109BD095008260A7109651B721C640B3309C10945082B0A74096D1B591C650B2209B10919082F0A6C096F1B2E1C5C0B06098E09DD07250A5D09641BF51B4E0BF10863099A070A0A4E094E1BB51B450BDB0837094C07E1093509291B771B3C0BC0080A09FC06AC090609F81A381B310BA908DA08AF066B09C508C01AF41A2B0B9608AA0864061F098308871AAB1A2D0B84087F082006CB084908501A671A330B73085808EA057A080E081F1A311A3F0B64083808C3052B08CD07F419071A4B0B5F082908B105DC079407CE19EC19500B61082B08BE058E076707AD19E919580B67084908E4054C0744079719FF19650B73087E0818061C072A078B19291A780B8E08C108650601071F079019671A8F0BB7081309D206FB062907AE19C11AA00BF008750965070B074607E3193C1BB90B3109F50923083B077A072E1AD91BDD0B76099D0A09099407C9078F1A981C040CC809610B0E0A17082D08091B711D2F0C2E0A3B0C2B0BB508AA08961B5E1E660CA70A2A0D640C6C094409331C611FA10C2E0B310EB30D460AFC09E61C8620E20CC20B5A0F1E0F450BCF0AB01DD521320D620CAC10B410660CB80B8D1E4323880D100D1B126F12B00DB60C7A1FBC24DE0DCB0D921336141F0FC30D76203426350E910E0B15FB15A010DB0E7B21A927860E560F8416B7172E12FD0F84221729D30E1910F9176A19CB13271190237F2A290FD5106419111B6A155012A924E32B860F8211C41AA51C07177D13CD25502DDF0F2412261C331EAF18B614F726D02E2810BB12921DC61F721AF8151828483063104313EE1E4D21441C3717232991319410B41314209F22031E64180F2AA132B4100214F020A123971F7119DA2A7833B310211483215624FB205A1A812B163494100814D121C22425221A1BEC2B61345610B013C4210225DD229A1B052C4434E60F081330212225DD22B11BD82BD8334D0F1A12312008254E226A1B842B4333A70E0711041FA0249621F41A102B8A32FB0DE60FBC1DF623D0206A1A782AA831480DB70E531C0C23EE1FC419BE29A030950C760DC91AE021E71EF718EE28792FE30B2E0C29198620C41D181810283F2E2F0BE30A7A17111F901C34172A27002D7D0A9809C615941D4F1B49164426C42BCA094D081014121C061A561566258F2A0809F70657128C1AC2186714922469293A089305A41011198D178013C523492868073204ED0EA0176616A212F5221E279C06DB02330D2F164215C4111D22E825D40584017C0BB6141914DB103E21AD2415053200C9093413E712EF0F5A206D236604EBFE1B08AD11AE11060F771F2F22BA03A4FD710622107010180E951EFC20010359FCCB04950E320F2A0DAE1DCF1F3B0202FB1F030B0DF80D370CCA1C9E1E6A0195F967018A0BBC0C3F0BEA1B671D95001CF8A4FF0D0A7C0B520A061B2C1CC9FFB2F6DAFD8F08440A7509261AFC1A13FF72F532FC1D071F099D086E19011A9BFE96F4F0FAE2052908E107F8185B1985FE58F453FA0D0583076307BA180219C7FEAAF455FA9C0425072107A218E0183EFF60F5BDFA6B04F6060507A318DB18D0FF4DF655FB5D04E606FE06B018E81872004FF705FC6904EE060407C21802191D015FF8CCFC830408071907DB182719CD0187F9B0FDAE0433073B07FA1855198902C8FAB1FEF0046B075F071F198719570317FCC7FF3E05A50781074919BB19300469FDDE008905DC07A9077319F0190E05C4FEF601D0051708DA079719271AEA052D000D0316065A080C08B619631ABF069B011F045C0698083608D819A31A9107FD022A05A106CF085A08FB19DE1A630858043506EB060A0989081B1A111B26099B052F0732074809B9083B1A3A1BC1099806F80767077909D608581A5C1B2E0A440780088B079309E308741A761B6F0AB207D208A3079C09ED08851A811B980AFD070909B207A109F708831A841BB80A39083709BC07AC0901097A1A821BCB0A66085D09C107B4090809721A7E1BDC0A84087609C507B7090B096A1A7B1BF00A92088309CC07B8090909641A771B010B9A088E09D907BD090609611A701B0C0BA3089909E707C3090509601A6C1B0D0BA6089F09ED07C3090409641A6D1B010BA0089E09EB07BF0906096B1A711BF40A96089F09EB07C4090F096F1A721BEA0A8D08A809E907C80912096D1A721BE70A8908AB09E107C6090D096D1A701BEB0A8B08A409D407C30905096F1A6D1BEB0A90089F09C807C109FD086D1A6A1BE80A90089F09C907C109F9086B1A691BE70A8B089B09D607BF09FE086B1A6B1BE50A89089109DB07BB0905096E1A6D1BE00A89089309D607BD090909701A691BDE0A8D089509D407C1090809661A601BE40A92089609DA07CA090A09531A5B1BE90A97089709DA07D0090E09451A5E1BEB0A9A089409D307D2090D09431A601BE60A9A089809CD07CE090A09491A5D1BE00A9C08AA09CA07C70906094B1A561BE50AA308BF09C807C4090509491A501BEC0AA908C809C607C5090609491A511BEF0AA708C409C207C109FE08481A511BEE0AA008BA09BE07BF09F7084B1A4B1BED0A9608B609C107BF09F808521A431BEC0A9108B709C807BF09F908561A411BE90A9308BC09C807BC09F408541A411BE40A9508C409C307B009EE08531A3C1BDF0A9508C909C307A609EF08511A371BDB0A9608CC09C107AA09EF084B1A311BDD0A9A08D409C007B909F008451A2B1BE50A9A08DD09C107C109F208411A2A1BE90A9608E309C407BE09F608421A2A1BE50A9408E909C507C009F508461A2B1BDE0A8D08EC09BC07C209E608481A361BD90A7F08EC09B407B609D4084C1A421BD90A6F08EA09B307A109C9084E1A481BDB0A6208EC09B9079609C908451A461BDE0A6108F409C1079809D0083C1A431BDE0A6508FB09C5079F09D808361A451BDA0A6608010AC507A609E6082E1A441BD70A65080A0AC207A709F708281A3E1BDA0A6808120AC307A5090009231A371BE20A6D08190AC507A409FD081E1A2F1BEA0A70081E0AC707A409F9081F1A291BE90A6E081F0AC2079F09F6081F1A2A1BE60A6D08230ABB079909F308181A2B1BE50A70082C0AB7079709F108141A2C1BE20A73082D0AB0079509EF08151A2D1BD90A75082A0AAB079609EF08161A2E1BD20A7608300AB0079B09F308181A301BD10A7408390AB4079A09F308181A311BD30A73083E0AB1079609E808181A311BD40A7008410AAF079109DC08161A321BD20A6F08470AB0078F09D408161A311BCB0A72084F0AB3079309D408181A291BC50A7A085A0AB6079B09D908171A201BC50A8408650ABE07A409E008141A1D1BCC0A92086D0ACD07AE09E808111A1A1BD80A9C08720ADC07BB09F108101A151BDB0AA5087D0AE307C609F908171A141BD40AAE08870AE307CD09FE08201A1A1BCC0AAD08890AE207CC09FF08201A241BC50AA8088F0AE307C909FA081A1A2F1BC20AA7089B0AE907CB09F508161A351BC90AAB08A40AF207D509FA08181A3A1BD00AB108A50AFC07E1090209211A3A1BCD0AB608A20A0D08EC0908092A1A3C1BC70AB408A10A2108F20910092E1A411BCD0AB308A20A3108F4091909311A441BD70AB408A50A3608F7092209321A491BD90AB608A70A3208FA0922092F1A4F1BD30AC008AB0A2E08FB091A09291A511BC90AD008B60A2D08010A1E092C1A531BC00AE108C10A3608090A2709391A571BBC0AEA08C90A46080E0A3109471A5D1BBF0AEB08D20A5608120A3E094F1A661BC20AEE08DB0A6008170A4609521A6B1BBF0AF808E00A63081D0A4B094E1A661BBD0A0809E30A6D08220A5009461A671BBD0A1209E30A7A08250A4A093D1A731BBB0A0F09E10A7E08280A3F093B1A7E1BB70A1009E30A7A082B0A3D09441A841BB60A1909ED0A7B08300A44094E1A881BBA0A1E09F60A8408360A4B09531A8E1BBF0A1C09F90A8D083C0A4E09541A951BBD0A1A09FE0A9108430A5209571A9B1BB60A1A09050B93084B0A56095E1A9F1BB20A1C090A0B9508540A5D09691AA11BB00A2209100B98085E0A6409761AA01BAB0A2F091A0B9D08670A69097C1A9D1BAA0A3D09220BA408690A7309791A9A1BA90A4409220BAF08690A7E09751AA01BA60A44091F0BBB086B0A8009781AAC1BA40A4009200BC008720A7A097B1AB41BA30A4209270BC008790A7909781AB31BA60A52092D0BC6087A0A79096F1AB01BAE0A6809380BD2087C0A7909691AB31BB40A7609450BDD08800A7D096E1AB71BBA0A77094D0BE508800A8509751ABD1BBC0A7809540BEF08810A91097A1AC81BB40A7B095E0BFA08880A9C09821ACD1BA90A7C09690B02098E0AA6098C1ACB1BA00A7D096F0B0809940AAE09931AD21B960A8109720B0F099A0AAE09901ADB1B900A8209740B1309A10AAE09891AE21B900A8109730B1909A90AB2098B1AE81B920A84096D0B2009B10AB609951AEC1B900A8609650B2609B10AB7099D1AF21B850A8709650B2C09AE0AB5099E1AF71B7F0A90096F0B3509B10AB9099C1AF91B850A9F097C0B3D09BA0AC4099B1AF71B8D0AAB09850B4A09C30ACE099E1AF51B940AB5098F0B5909CC0AD709A21AF81B960AB709970B6109CD0ADF09A11AFE1B960AB7099A0B6009C80AE4099B1AFF1B970ABF099F0B5D09C90AE3099A1AFB1B9B0AC809A40B5E09D10ADD09A31AF91BA30ACD09AD0B6809DF0ADF09A91AFF1BA40AD509BC0B7309F00AED09AA1A091CA10ADF09C80B7A09FD0AF909A91A101CA40AE609D00B8109070BFB09A91A171CAB0AE409D10B85090C0BF309A91A1D1CAE0AE309CA0B8A090D0BF309A81A1E1CA80AE909C50B91090D0BF909AA1A1A1CA30AEE09CB0B9A09160BF909B21A161CA10AF209DA0B9E091B0BF209BF1A1B1C9D0AF709E60B9B09150BEF09CC1A2A1C970AFA09ED0B9D09160BF209DA1A371C8F0AFB09EC0BA6091F0BF609E31A3B1C8A0A000AE80BB0092A0BFE09E01A391C8C0A090AE60BBC09350B0D0AD21A321C960A160AED0BD009440B1A0ACA1A271CA00A250AFC0BE609530B200ACB1A241C9F0A2C0A040CED095A0B220ACC1A2C1C9B0A2A0A050CE609560B220AD21A371C960A2C0A070CE1094F0B1F0ADE1A461C8C0A310A0D0CE5094F0B1D0AE71A571C850A360A140CF2095A0B230AE51A641C8B0A3B0A190CFF09670B2E0AE21A661C960A3E0A1D0C0A0A700B370ADE1A611C9D0A430A210C150A760B3D0AD91A5D1C9F0A520A210C1A0A790B410AD81A5F1C960A620A1E0C110A760B3F0ADC1A6A1C860A650A1F0C0B0A710B3C0AE51A751C770A5F0A280C140A6F0B3D0AF61A781C720A5B0A3A0C230A6F0B450A061B7B1C760A5F0A4A0C300A730B540A111B841C7E0A680A550C3A0A7C0B650A151B901C8C0A770A5C0C430A890B730A121B951C9A0A8C0A670C4C0A950B7C0A111B971CA90A990A770C580A9F0B7F0A0F1B991CB90A9D0A8B0C6D0AAB0B860A0F1B9D1CC50A990A9F0C830AB70B8F0A141BA71CCF0A9A0AB70C960AC20B960A181BB81CDC0AA90AD50CA90AD30BA10A1A1BCC1CEB0ABD0AF10CBC0AE80BAE0A231BDE1CF70ACE0A040DCD0AFA0BB40A2D1BF01CFC0ADB0A130DDA0A0A0CB40A361BFF1C010BE30A220DE50A160CB70A431B051D060BEC0A2A0DED0A1B0CBB0A511B061D0C0BF70A2B0DF50A1F0CBD0A5A1B0C1D160B020B300DFC0A260CBF0A621B141D290B0F0B410D050B300CC70A6A1B211D400B1D0B5B0D170B400CD80A711B301D520B2E0B770D2C0B5A0CE90A741B411D5B0B3C0B910D3D0B6D0CF80A751B501D5C0B470BA70D4E0B700C020B751B591D600B550BB80D670B730C080B771B5E1D6A0B650BC70D7F0B7F0C0F0B7A1B5E1D750B730BD60D890B8A0C180B821B601D7F0B7F0BE60D8B0B910C1D0B8E1B6E1D870B880BF60D930B960C200B9C1B821D930B920B080EA20BA20C270BA61B901DA90BA20B1B0EB50BB70C330BAD1B961DC20BB40B2E0ECB0BCA0C3E0BB11B9E1DD60BC20B3B0EE20BD70C450BB31BA41DE90BD00B440EF40BE50C4C0BB21BAB1DF50BD90B4F0EF80BF00C560BB51BB71DF30BDA0B570EF20BF20C5F0BBC1BC01DF10BDB0B5C0EF10BF20C630BC41BC91DF50BDF0B660EF80BF90C670BCD1BD61DF90BE90B710E0D0C020D720BDB1BE51DFE0BF70B820E2C0C110D800BEB1BEE1DFF0B030C8E0E480C240D920BF51BEF1D060C110C930E5F0C350DA90BF91BED1D180C1D0C9C0E730C460DB80BFA1BF61D200C200CA20E7D0C520DBA0BF81B051E220C1D0C9D0E840C4F0DB60BF61B161E260C170C960E880C450DB10BFB1B271E2A0C110C980E8E0C430DAE0B0B1C341E2D0C130CA50EA00C4E0DB80B1B1C3F1E370C210CB80EBA0C640DCA0B241C491E460C330CCF0ED30C7B0DDA0B2A1C4C1E5D0C4D0CF30EEB0C8C0DE20B331C4A1E750C740C220FFA0C9A0DE40B331C421E890CA10C460FFD0CA50DE20B241C3A1E970CC10C540FF70CA30DDA0B151C381E9E0CCB0C580FEB0C970DCD0B161C3A1E9F0CCC0C590FDD0C8E0DC50B1C1C401E9F0CD30C5E0FDE0C8A0DC90B1B1C461EA60CDF0C660FEE0C920DD10B171C421EA90CE20C660FFA0C9E0DD50B111C391EA30CD80C5D0FF40C9F0DD20B061C2C1E990CC40C490FE20C900DC90BF51B1C1E910CAE0C2F0FD00C7B0DBD0BE41B0C1E880C9A0C140FB90C650DAC0BD31BFA1D7B0C860CFA0E990C500D980BC21BE21D710C760CE70E790C3D0D890BB31BC91D6C0C6C0CDC0E640C2B0D870BA61BB51D690C630CD40E500C1A0D8D0B9E1BAA1D610C520CC20E340C0C0D8B0B9C1B9F1D520C3C0CA20E170CFD0C780B9A1B881D420C280C800E000CED0C5E0B8F1B6B1D390C130C620EEC0BDD0C4C0B7C1B4F1D350CFD0B420ED30BCC0C420B611B381D2F0CE60B210EBA0BBC0C3C0B441B291D240CD20B070E9F0BA90C360B2E1B211D1C0CC60BF50D830B940C290B211B1A1D110CBE0BE00D6D0B820C0E0B161B0A1D040CB10BC20D5A0B6E0CF50A041BEA1CF70B9C0B9D0D3F0B510CE10AED1AC31CE90B840B710D1A0B2F0CCB0AD81A9D1CD70B5F0B390DF20A080CAE0AC11A761CC10B2F0BF90CC90AE00B890AA51A501CAB0B010BB90C990ABA0B610A861A2E1C9A0BD80A730C600A950B3F0A6B1A061C8B0BAE0A310C260A6D0B230A4D1AD91B7C0B890AFF0BF409450B0D0A2E1AB01B6A0B670AD40BCA09230BFB09141A8E1B560B430AA50BA609030BE709F819691B420B1D0A730B8209E10ACD09D9193C1B310BF8093A0B5909BB0AB509BB190C1B250BD809FC0A3309980A9D099C19DE1A1C0BB709C30A1009780A80097F19B41A0E0B93098C0AEA08550A60096619961AF30A6A09510AC008290A44094F19821ADC0A46091D0A9808000A2D093B19701ACA0A2A09F9097208E0091B0926195A1ABD0A1409DB094B08C60906091619401AB60A0009B7092608B109ED080A19251AAF0AED0897090C08A309E00802190C1AA70ADE087E09FC079D09DC08FA18F7199F0ACD086E09F4079909D508EE18E819960AB3086009E4078809C808DC18D8198C0A9E084C09C6076E09B508CB18CB197C0A90083509AB075B099E08C018C319690A89081E09A10752098E08B818BA19590A81080C0998074B098408AB18AB194E0A7108F70884073D097E0899189B19450A5C08DD086D0726097A088A188F19470A4E08C4085F0711097508821880194A0A4408B008540703096A087C187519430A37089F084707F7085C0879187319390A280891083607EB084C087C186F192F0A200890082807E70841087E1865192B0A1E0897082407E7084008791860192D0A210897082507E6084408751862192E0A280891082507E808400873185D192F0A2D088F082907EF08390871184D193A0A2E0891082C07F5083B086A184019490A310893082F07F3084508621840194D0A320890082C07EA084708601842194A0A2F088A082107E008420863183F194A0A29088A081607D8084108631837194C0A27088D081907D70849085A182F194C0A2B088F082307E008550851182B194B0A30088F082A07EB085E0853182A19470A2F0890082707ED08640857182C193D0A290890081F07E308680859183119360A20088F081A07DC08630859183719360A130889081107E308580855183B19370A0B087C080307ED084C0849183B19330A12087208FC06EE0847083C1833192D0A200874080607ED084A0839182F19280A220875081107E9084B083F183119230A1B0872080B07E1084B0842183919210A15086F08FF06DB084A0842183F191F0A0E086608FE06D708450842183E19200A0C085C080407D508420841183B19200A100860080A07D108420838183B191B0A10086F080F07CA08400832183619130A060876081007C208360835182D19100AFD076E080F07BF082F083C182519130A000861080F07C00833083E182119160A09085E081007C30839083D181E19190A120866081007C9083D083F1817191B0A19086F081207CF083E0838181119230A20087C081E07D20840082B180E192B0A230887082807D308400826180E192E0A1E0888082A07CD083F082A181019280A0C0883082407C4083D082C180C191F0AFC077E081C07C5083F082A1806191B0AF80779081707C708400826180519190AFF0774081207C608390827180919180A09086B080E07CB08310829180C19140A0F0862080907D108300825180A19100A110860080307D708360819180719100A14086008FD06D908360810180719120A12085B08F906DA0833080F180619100A0D085908FA06DC0835080F180019120A0B085C08FE06E3083A080F18F918150A0F0860080307E80838081018F318150A120867080B07EA0833080B18EC181C0A110870081307ED0835080718EA18270A0F0873081407EC0837080618EE18290A110874081007E60833080418F318220A110871080B07DE082F08FE17F3181D0A09086B080907D6083108FC17F718180AFE0761080707D0082E080418FD18120AFB0756080307CB0825080D1802190B0AFC074E080507C80823080818FE18050A01084D080A07C3082D080018F118030A090851080C07BD083B080118E218030A0D0858080E07BA083F080018DC18000A0D085C081007B8083808FA17D918FE090B085D080C07B7082908F517D518FF09050858080707B3081808ED17D818FE09FE074F080307AD081108E917E018F809FB0749080107A9081308EA17DF18F509FE074E08FD06AD081808E917D918FA0903085408FD06B8082008E417D618010A070858080907C2082C08E017D118050A0D0860081307C6083208DE17CB18030A13086B081607C6082F08DC17C618FF09140871081507C0083008D617C818F909120870081007B4083308CF17CA18F5090E086D080A07AD082B08CC17C518F809040869080A07B2082108CB17BD18FB09FC0766080C07B9082008C917B718FE09FB0763080D07BF082308CB17B118FF09FA0761080E07C4081F08D117AA18FD09F5075F080B07CB081A08D717A918F509F0075B080707D3081608D317B118EC09ED075A080607D3081008CB17BC18E709E9075E080A07C8080D08C617C418E609E70759080907BB080908C217C618EC09E9074F080107B6080708C017C418F209EF074F08F706B3080D08BF17C018F809F4075208F006B0081608BA17B818F909FC075908F106B5081E08B517AD18F2090A086408F906B8082208BA17A818EA0915086B08FB06B2082008C217AA18E80913086B08FD06AB081E08C917AC18E809040865080207A9081408CF17AA18E609F2075E08FF06A4080308D117A918DF09E4075708F2069C08F807CE17A818D909DE075108F0069B08F807C917A418DB09E3074F08FF069F08FE07C517A218E309EE074B080A07A2080708C017A218E909FA0748080A07A5080E08B9179E18E909050846080807AD081708B4179718E709090849080707B5081C08B4179418E80905084D080107B4081608B6178D18EA09FC074F08F806AD081408B4178618E309F3074A08EC06A9081A08B0178418DC09E9074208E506AB082008AF178618E109DF073C08E806AF082208AE178A18E809D4073708E806AF082108AD178918EE09CB073908EA06AF082108AC178318F409D2074308F206B3082008AB178118F409E2074908F506B3081808AA178418F209E9074808F206AD080708A9178718F209DF074308E906A708F607A5178218F009D7074008E206A608EF079D177518ED09D8074208E706AB08F00796176718EE09DE074508F006B008F40792176218ED09E5074408F306B008FD0794176418EA09E6074008F006AD0807089A176B18E609E1074108EB06A6080B089D177318DE09DB074308E10698080C089A177918D509D5073C08D9069108100897177918C809CE073408D6069508110892177518BF09CD073208DB06A1080D0889177218C409D1073508EA06AA080D0883176E18CD09D1073408F806A9080C0884176B18D009D2073208F306A408060885176C18D409D9073208E806A008030885177118DD09DB073108EA069D08030889177518DF09D1073408F2069F0805088E177718D309BF073A08F0069A0804088D177718C609B7073A08E9068C08FC0783176F18C609BC073808E5068808F6077A176318D209C5073808E4069108FE077B175E18D709C6073608DD069708050880176218D509C1073508D5069508030880176718D709B9073108D2069108FC077C176718DB09BA072E08D4068C08FA0778176018DD09C2073008D2068A08FB0772175718E209C6073408CE068B08FC076B175318E809C9073108CD068D08FE0763174F18E809C7072908CE069208FB0763174B18DF09BD072508CD068F08F6076D174C18D509B7072408CC068808F20777174718D109BA072708D6068808F00776173E18D009C3072D08E1068B08F40773173718D009C9073108E7069308FB0773173518D009CD072B08E606980800086F173A18CE09D3072208DF069308030869174418C709D4072008D4068308FE0761174918C409CD072008CA067608F6075A174818C609C9072208C3067708F30758174018C809C7072B08C5067D08F50756173618C509C5073108CD068308F5074F172D18C409C6072F08D2068B08EF074B172718C809C9072908CE069108E8074D172718CA09C5071F08C6068D08E50752172A18C609C1071608BF068408E6074E172D18C409BE071108BC067908E40745173118C409B8070D08BF067208E10740172D18C509B2070E08C9067408E1073E172318C909B2071408D8068008E40738172018CA09B0071808E5068B08E40734172018C509AE071E08EA069208E60733171F18BF09AB072108E5069408EC0735171818BD09AE072008DF068F08EF0739171318BB09B2071A08DA068408EF0737171118B709B0071608D7067808F10731171118B509AD071A08D4066F08F2072D171418B209AD072008CF066C08ED072E171318AE09B2072408C7066B08EB0735170C18AE09B6072208BE066808ED0739170418B409BC071E08BE066A08ED073817FC17B909C3071C08CA067408ED073617F917B209C9071B08D1067908EA0736170218A309CC071C08CA067508E10732170A189509CB071E08BB067808D6072C1704189309C8072208AF067D08D0072917FB179B09C3072008A6067908CB072817F717A409C0071708A8067308C2072717F417A409BC070F08B3067408BB072617EF17A409BA070F08BE067508C2072117E717AA09BD071808C2067208CD071A17E317B009C3072208C4067008D2071817E717AF09C8072608C1067108D2071A17EB17A909C9072308BD067408D0072117EB17A209C3071808BA067108CB072617EF179F09BC070908B7066608C6072117F417A409BA070108B5066008C7071A17F417A609B9070008B3066408CE071B17EF17A809B9070008B2066708D5071F17E717B209BA07FF07AF066908D8072217DF17BD09BA070308AC066D08DC072217DA17BF09B5071108B1067108E3071B17DA17BD09AE071E08BF066F08E9071417DC17B609AB072108C7066808E2071017E017AD09AE072208C3066808D8070C17DE17AA09B6072008C3066B08DD070B17D617AB09BC071A08C6066D08EB071317D517A909BA071208C2066C08EF071417E017A409BD070B08BB066808E5070617E917A309C3070B08BB066508DC07F616EB17A309C7071008C4066908DB07EC16EB179D09C3071008C7066A08D807E816EB179909BA070908BF066608D107E916E9179409AD070508B8066408CD07E916E0179009A5070708B4066808D007E916D4179509A8070D08AF066D08D507EE16CB179809AD071108AE066E08D607F116C5179409AB071008B2066908D407EC16C1178E09AB071308BB066308D707E516BE178B09A8071808BF066408D807E316BE178A09A1071A08B6066308D107E316C4178F099B071808A8065E08C807DD16C91793099A071308A0065B08C607D716C3179309A1070F08A1065D08D007D816B8179509AB071108A4066308D707DD16B5178E09AF0712089F066508D407E416B9178809AF07100897066008D007E616BE178809AE070D0894065A08CF07E216C7178A09A907080897065508CC07E216D1178A099907010897065108C807E416CF1788098A07FC0797065308C307E516C61787098707F8079B065908BC07E316BA178B099007FA07A1066008BE07DD16AF178F099C07FE07A1066908C407D616A8179409A807FF079D066B08C707D216A3179909B407FF079C066708C807D0169F179B09B907FE07A2066A08C507CA169B179D09B707FE07AC067208C207C5169B179D09AF07FE07B2067308BF07C116A3179B09A307F607B1066708B807BD16AB1798099807EA07AC065A08B207BD16AB1793099507E307AD065408B207BF16A7178D099707E407B3065308B707C216A81787099707EA07B5065308BA07C616A71785099707F007AE065608B707C516A21783099C07F807A5065908B507BF1699177E09A5070008A2065B08B807BC168E177B09AE07FE07A2065808BE07BF1683177D09B007F507A3064F08BE07C2167F177B09AB07EB07A3064708B407C31681176E09A807DF079F064208AB07C51685176809AE07D8079B064608AD07C6168B176909B207D40798064E08B107C6168E176C09AF07D0079A065108B607C41686177509AC07D007A0064E08C107BD167B177F09AF07D207A7064908CB07B21678178509B007D507AC064808CF07AE167D178309A707D007A8064908C507B01686177D099607C7079D064508B407AE16891777099207C80797063F08B207AE16811777099407D40799064208BE07AE1677177A099207E007A1064608C907AB16751782099407E907AC064908CF07A516781788099A07EC07B5064908CE07A3167C1788099B07ED07B4064908C707A3167E1784099707EC07AB064908BE07A6167D177F098F07E5079E063D08AF07A416781779098607E10797063108A4079F16721775097D07DE078E063008A2079F166E1772097407D90781063608A5079F1671176C096F07D6077A063908A507A01671176A096F07DD077C063808A507A316691770097407E80786063908A707A116621774097507EA0790063B08A8079A16631776097207EB0797063B08A7079616651775096E07F20796063908A207951663176E096B07F307890634089E0791165E1768097007EB077B0633089E07871659176B097707E5077D063A08A30784165C177A098407EF0795064708AD0792166B178E099E070D08BB065C08BA07A81686179B09BC073408DA067308C807B716A417A609D9075C08F4068908D807C316BC17AE09F6077E0810079B08E507D516D617B2090D089A082D07A908ED07ED16F617B2091A08AF084307B308F20703171218BB092508CD085807C208000815172618D2093108F4087807E0081D0826173518EA0947082009A2070D09420836174618F70968085009CD073709640849176018030A8B087B09EE0757097D0860177E180F0AA6089E09080870098C0872179518150ABE08BA092708860995087C17A6181B0AD908D90949089A099C088717B818240AED08FD096008AB09A6089817C9182F0AFC081F0A7108B909B708A817D6183D0A13093F0A8908CD09CC08B117DF184F0A2C095C0AA608EC09E508BA17EA185F0A4209760AC108010AFB08C417FB186C0A5609910AD9080A0A0909CB170E19760A6809AC0AEE08160A1709D21727197B0A7909C50AFE082A0A2009DC173D19770A8509DD0A0D09370A2409E7174C19720A9509FA0A2109410A2E09F6176419760AA9091D0B3F09520A3D0909188319840ABB09410B5B09670A4D091C189F19940ACE09610B70097D0A5B092B18B2199B0ADB097A0B8109900A66093718C519A10AE6098D0B9409A20A74093E18CF19A80AF709990BA509AF0A83093F18CB19B00A090A9E0BB309B40A8C094018CB19B80A120AA60BC309B80A8E094418DB19BA0A160AB90BCF09BC0A8E094918EE19BA0A200AD50BD609BD0A8F094B18F719BC0A300AE70BE209C00A90094F18F619C30A3F0AED0BF909C90A92095918F019C70A410AF30B080AD20A94095E18E419CB0A3D0AFC0B0A0AD60A9A095818D619CF0A3D0AFE0B0C0ADB0AA0094818C919CF0A410AFC0B0A0AE30AA1093818C119CE0A3F0AF40BFE09E40A9D093318C119C70A360AEC0BF009DB0A93093718C519BA0A330AEF0BF009D60A8E093918C419B60A340AF90BFC09DD0A96093A18C019B80A320AFE0B030AE50AA1093A18BD19B10A2A0AF40BFB09E10AA1093818B319A80A240AE50BEB09DD0A9B093118A619A10A1E0AD70BDF09D80A9609241899199D0A140AC40BD809C90A900915188C19980A030AB00BCC09B60A830909188C19900AF109A20BB909A60A7609FE1792198F0AE809980BA709970A6E09F5178E19920AEA098B0B9909890A6909ED1786198C0AEB097A0B90097F0A6609E5177B19850ADF09640B8209780A5D09D8176619810ACA094B0B6B096F0A5709C9174A19780AB009270B4C095B0A4E09B9172D196D0A9009FE0A2D09450A3909A6170B19640A7409DB0A1009320A1F098C17EA185E0A5E09BE0AF5081F0A06097817D0185B0A48099D0AE008080AF0086C17BB18520A3109810AD008F109E0085E17AD18440A1C096D0AC008E009D2084D17A118350A10095D0AB008D209C5083F1791182B0A0509480A9C08BD09BB0834177918230AF108270A7D08A409B10826175E18160AD608FD0951088C09A00814174318FD09BA08CC0920086C09890805173018DE099B089709F20744096D08F6161F18C8097E086509CE0724094D08E3160718C00967083909B70716093608CF16EF17BB0950081909AB070F093008BA16D817B0093C08FC089B07FE082C0...
Mr = reshape(M, 8, []).'
Mr = 100396×8 char array
'01000000'
'00000000'
'00000042'
'34313734'
'31383831'
'56312E32'
'30202020'
'4E6F6E65'
'20202020'
'31303234'
'20204343'
'43434343'
'43434646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'46464646'
'49202049'
'49205631'
'20563220'
'56332056'
'34205635'
'20563620'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20203130'
'20202020'
'20313130'
'20203130'
'2E30354F'
'46462036'
'30202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20202020'
'20203232'
'32323232'
'3232FFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'FFFFFFFF'
'32322F30'
'362F3330'
'30313A32'
'34000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'00000000'
'0000005D'
'85019601'
'A3008300'
'90007D00'
'96008A00'
'8707D907'
'22038502'
'C8026302'
'E302AD02'
'8A103C11'
'DF068705'
'17063905'
'5606DD05'
'18182119'
'000A1008'
'D7089907'
'39098008'
'251D6B1E'
'130CC809'
'AE0A2F09'
'210B3E0A'
'7F20F121'
'700DEB0A'
'EC0B410A'
'660C690B'
'B9224724'
'570EA80B'
'C20CF70A'
'450D350C'
'3A24D325'
'ED0E250C'
'520D690B'
'DB0DBB0C'
'3925DC26'
'4F0F7D0C'
'B70DB30B'
'3D0E0F0D'
'E1259127'
'900FB70C'
'F90DE60B'
'710E3F0D'
'52260D28'
'BB0FE20C'
'210E0A0C'
'8B0E5F0D'
'9D265928'
'DF0F020D'
'3C0E210C'
'A60E780D'
'CD268328'
'FF0F120D'
'540E2C0C'
'C00E8B0D'
'EA269C28'
'1010130D'
'690E330C'
'CC0E960D'
'FA26AA28'
'1910140D'
'7A0E3D0C'
'D20EA10D'
'0627B428'
'2110190D'
'7A0E450C'
'D90EA70D'
'1227C328'
'2610160D'
'6A0E420C'
'DB0EAA0D'
'1627D028'
'26100D0D'
'5E0E370C'
'D70EAA0D'
'1A27D928'
'2110030D'
'5B0E310C'
'D30EA60D'
'1C27E028'
'1A10FD0C'
'5A0E2D0C'
'D30EA20D'
'1427E428'
'1B10FD0C'
'5C0E2A0C'
'D40EA10D'
'0A27DD28'
'2610010D'
'630E340C'
'D40EA20D'
'0027D028'
'2F10060D'
'6A0E440C'
'D60EAA0D'
'F826C228'
'30100A0D'
'6C0E500C'
'DF0EB80D'
'F726B928'
'2A100C0D'
'650E530C'
'E30EBF0D'
'F926B828'
'20100A0D'
'590E4A0C'
'DD0EBC0D'
'FA26BE28'
'19100A0D'
'510E410C'
'D40EB50D'
'F526C528'
'1310060D'
'510E400C'
'D00EAC0D'
'F226C428'
'1210010D'
'540E410C'
'CF0EA30D'
'F726C228'
'1010000D'
'550E400C'
'CA0E9E0D'
'FD26C228'
'1010000D'
'530E410C'
'C60E9D0D'
'FE26C228'
'1710030D'
'4E0E470C'
'C90E9B0D'
'F726BB28'
'20100D0D'
'4F0E4F0C'
'CE0E9D0D'
'EF26B028'
'2610130D'
'560E4F0C'
'D60EA10D'
'EB26A828'
'2810110D'
'5E0E4C0C'
'DC0EA50D'
'E926A428'
'25100B0D'
'640E4A0C'
'DA0EAA0D'
'E926A628'
'1D10010D'
'600E460C'
'CD0EA90D'
'EB26A828'
'1510FD0C'
'560E3D0C'
'BA0E9F0D'
'EB26A328'
'0D10010D'
'510E390C'
'B50E9D0D'
'EA269728'
'0810030D'
'4F0E3B0C'
'B80E9F0D'
'EC268A28'
'0510010D'
'500E3E0C'
'BF0E9A0D'
'EE268328'
'0610FF0C'
'520E420C'
'C60E950D'
'EB268028'
'0C10000D'
'540E420C'
'CA0E980D'
'E0267D28'
'1210080D'
'540E3F0C'
'CB0EA10D'
'D8267D28'
'12100C0D'
'4F0E3B0C'
'C70EA60D'
'D8267D28'
'0F10000D'
'460E310C'
'B80EA10D'
'D6267E28'
'0B10F20C'
'3E0E240C'
'AA0E9A0D'
'D0267B28'
'0810F20C'
'3B0E240C'
'AD0E960D'
'C7267128'
'0710FC0C'
'3D0E2F0C'
'BA0E940D'
'BD266828'
'0810FF0C'
'410E3E0C'
'C40E920D'
'B6265F28'
'0C10FD0C'
'470E460C'
'C90E980D'
'B4265828'
'0F10F90C'
'4B0E460C'
'CE0E9D0D'
'B4265528'
'0610F70C'
'490E480C'
'D40EA10D'
'B6265828'
'FA0FF40C'
'420E480C'
'D20E9B0D'
'B5265B28'
'F90FF20C'
'3E0E430C'
'C80E900D'
'AE265828'
'FD0FF40C'
'3D0E3F0C'
'C00E890D'
'A7265228'
'FE0FFC0C'
'410E400C'
'BE0E890D'
'A5264E28'
'FB0F080D'
'490E430C'
'BD0E8E0D'
'A3264D28'
'F70F0E0D'
'4B0E420C'
'BE0E920D'
'A3264D28'
'F00F0C0D'
'470E3C0C'
'BE0E980D'
'A5265228'
'EB0F020D'
'400E350C'
'B40E9E0D'
'A3265828'
'EE0FFD0C'
'3A0E330C'
'AC0EA00D'
'9A265728'
'F10F010D'
'360E350C'
'B10EA10D'
'92265228'
'F00F000D'
'3B0E350C'
'BB0EA20D'
'8C264D28'
'EE0FF50C'
'3E0E310C'
'BF0E9F0D'
'87264828'
'F00FF00C'
'360E2D0C'
'C00E9A0D'
'82264228'
'F50FF70C'
'2D0E2D0C'
'BF0E940D'
'82263528'
'FA0FFC0C'
'2C0E2F0C'
'BB0E8C0D'
'83262828'
'FC0FFB0C'
'2F0E320C'
'BB0E870D'
'83262528'
'F70FF60C'
'2F0E370C'
'BD0E870D'
'85262D28'
'EE0FF30C'
'310E390C'
'BA0E840D'
'85263528'
'EA0FF70C'
'350E330C'
'B30E7D0D'
'87263A28'
'E30FF20C'
'320E2A0C'
'A70E740D'
'87263C28'
'DD0FEB0C'
'290E200C'
'9E0E6D0D'
'83263928'
'E40FEC0C'
'240E1A0C'
'9E0E690D'
'7B263328'
'EC0FF20C'
'240E190C'
'9F0E6C0D'
'76262A28'
'E90FF60C'
'260E1C0C'
'A20E700D'
'73262228'
'E50FF50C'
'260E1E0C'
'A80E700D'
'71261A28'
'E80FFA0C'
'230E1E0C'
'A90E6E0D'
'6B261428'
'EC0F000D'
'200E200C'
'A50E6C0D'
'62261128'
'E80FFB0C'
'1C0E240C'
'A40E6A0D'
'59260F28'
'E40FF40C'
'160E220C'
'A20E6C0D'
'52260F28'
'E10FEC0C'
'140E170C'
'9C0E6A0D'
'50260D28'
'DD0FE00C'
'180E0F0C'
'9D0E660D'
'54260928'
'DD0FD50C'
'190E130C'
'A20E660D'
'5B260A28'
'DD0FCC0C'
'160E190C'
'A00E690D'
'5C260628'
'DD0FD00C'
'160E200C'
'9A0E710D'
'5826FA27'
'DD0FDD0C'
'1B0E230C'
'990E770D'
'5126F127'
'DB0FE40C'
'210E210C'
'9E0E740D'
'4826EC27'
'D90FE60C'
'270E200C'
'A00E6C0D'
'4226E627'
'D50FE60C'
'2A0E1D0C'
'9A0E610D'
'4226E427'
'CC0FDD0C'
'240E150C'
'950E550D'
'4226E227'
'C50FD90C'
'180E120C'
'950E520D'
'3F26DC27'
'C40FE00C'
'100E190C'
'990E590D'
'3926D627'
'C70FE40C'
'0C0E220C'
'9B0E620D'
'3426D327'
'C80FE00C'
'0E0E240C'
'9A0E690D'
'3026D327'
'C40FD90C'
'110E1D0C'
'940E670D'
'2E26D827'
'BE0FC90C'
'0F0E100C'
'8D0E650D'
'3026DF27'
'B70FB70C'
'0A0E030C'
'8B0E620D'
'2D26E127'
'B30FB30C'
'080EFD0B'
'8B0E5D0D'
'2626DE27'
'B30FB60C'
'050EF20B'
'890E590D'
'2426D927'
'B40FB50C'
'030EE30B'
'830E5C0D'
'2C26D327'
'B90FB40C'
'050EDE0B'
'7E0E610D'
'3726CA27'
'C00FBB0C'
'090EE50B'
'7B0E650D'
'3826C327'
'C80FC40C'
'0C0EEF0B'
'7A0E650D'
'2B26C227'
'CF0FC70C'
'120EFA0B'
'7D0E690D'
'1D26BE27'
'D30FC80C'
'180E080C'
'830E6D0D'
'1926B827'
'D00FC70C'
'150E0D0C'
'840E6C0D'
'1B26B127'
'CC0FC10C'
'0F0E020C'
'7D0E650D'
'1C26AA27'
'C60FB90C'
'0D0EF50B'
'780E590D'
'1726A627'
'BA0FAE0C'
'0A0EF30B'
'780E4F0D'
'0D26A627'
'AD0FA60C'
'020EF60B'
'790E4F0D'
'0626A427'
'A80FA90C'
'FE0DFC0B'
'780E510D'
'06269E27'
'A30FB00C'
'FE0D020C'
'750E4C0D'
'03269A27'
'9B0FB30C'
'FB0D080C'
'720E4E0D'
'FE259C27'
'940FB30C'
'F70D080C'
'720E540D'
'FB259A27'
'930FB50C'
'F70D040C'
'740E520D'
'F7259627'
'980FB70C'
'F80D000C'
'770E4A0D'
'F5259A27'
'A00FAE0C'
'F20DFA0B'
'720E3F0D'
'F625A027'
'A80F9E0C'
'ED0DF40B'
'680E360D'
'F4259D27'
'AC0F970C'
'EA0DEF0B'
'620E2F0D'
'EC259A27'
'AA0F9B0C'
'E70DEB0B'
'640E2F0D'
'E2259E27'
'A60F9F0C'
'E50DE80B'
'640E380D'
'DF259E27'
'A50F9F0C'
'E70DE90B'
'620E440D'
'E1259627'
'A90FA10C'
'EA0DEF0B'
'680E4C0D'
'E4258D27'
'AA0FA50C'
'E90DEF0B'
'6D0E480D'
'E6258827'
'A40FA60C'
'E80DEB0B'
'6C0E410D'
'E6258227'
'9A0FA30C'
'E50DEA0B'
'670E400D'
'E4257A27'
'960F9E0C'
'E10DEB0B'
'640E450D'
'E0257427'
'970F9C0C'
'DF0DEB0B'
'650E460D'
'DB256D27'
'9A0FA40C'
'E20DED0B'
'6B0E480D'
'D4256827'
'9B0FAC0C'
'E80DF00B'
'6A0E4D0D'
'CC256727'
'9D0FAE0C'
'EC0DF10B'
'620E4E0D'
'C6256527'
'9D0FB20C'
'F20DED0B'
'620E4B0D'
'C1255E27'
'9F0FBB0C'
'F90DEB0B'
'690E4D0D'
'BF255427'
'A20FBE0C'
'F90DF00B'
'6F0E550D'
'BF254F27'
'A10FB30C'
'F30DF00B'
'6B0E560D'
'C1255027'
'980FA00C'
'EB0DE70B'
'650E500D'
'C1255027'
'8C0F990C'
'E50DE20B'
'630E4A0D'
'BE254D27'
'880FA40C'
'E10DE20B'
'5C0E4A0D'
'B7254D27'
'870FAE0C'
'DF0DE30B'
'520E500D'
'B0254E27'
'870FAF0C'
'E00DE40B'
'540E560D'
'AD254D27'
'840FAE0C'
'E00DE00B'
'5D0E530D'
'AE254E27'
'7F0FAB0C'
'D90DDF0B'
'620E4B0D'
'B1254B27'
'800FA20C'
'D20DE30B'
'600E440D'
'B2254327'
'7F0F950C'
'CC0DE20B'
'5E0E380D'
'AE253D27'
'7B0F920C'
'CC0DDC0B'
'5C0E270D'
'A9253627'
'7D0F970C'
'D20DDC0B'
'560E1F0D'
'A6252D27'
'810F990C'
'D50DE00B'
'4B0E1D0D'
'A6252A27'
'860F950C'
'D20DE40B'
'460E180D'
'A7252927'
'8A0F910C'
'CE0DE90B'
'490E180D'
'A5252627'
'860F8C0C'
'C90DE50B'
'4C0E1F0D'
'A3252527'
'7D0F8D0C'
'C90DDA0B'
'4F0E2A0D'
'9F252327'
'770F910C'
'CB0DD30B'
'550E300D'
'95252127'
'750F910C'
'CE0DCD0B'
'5A0E290D'
'88252127'
'770F900C'
'D30DC20B'
'560E250D'
'7A251E27'
'7E0F900C'
'DA0DBA0B'
'4B0E2A0D'
'71251A27'
'840F8C0C'
'DE0DC00B'
'490E2E0D'
'6F251827'
'870F880C'
'DC0DCD0B'
'4F0E2C0D'
'74251627'
'8B0F860C'
'DA0DD10B'
'510E2A0D'
'7D251427'
'8B0F880C'
'D60DCC0B'
'4C0E2C0D'
'82251327'
'830F8B0C'
'D20DC70B'
'4B0E2E0D'
'7D251227'
'770F8E0C'
'D00DC90B'
'520E300D'
'71251027'
'6F0F900C'
'CB0DCB0B'
'530E2A0D'
'65250D27'
'6F0F8E0C'
'C50DCA0B'
'490E1E0D'
'60250727'
'6E0F8D0C'
'C30DC60B'
'420E170D'
'5D25FF26'
'6F0F900C'
'C50DC80B'
'450E1B0D'
'5C25FC26'
'760F8E0C'
'CB0DCD0B'
'450E200D'
'5725FB26'
'7B0F8A0C'
'CD0DD30B'
'430E1F0D'
'5125F826'
'790F8A0C'
'C90DD60B'
'450E190D'
'4B25F726'
'6D0F890C'
'C40DD10B'
'4B0E100D'
'4825F626'
'5F0F850C'
'C30DC90B'
'4C0E080D'
'4C25EA26'
'5B0F7F0C'
'C20DC10B'
'490E0B0D'
'5525DB26'
'600F780C'
'C10DBE0B'
'430E100D'
'5B25D026'
'640F760C'
'C30DC20B'
'3C0E120D'
'5525CB26'
'630F7B0C'
'C50DD10B'
'380E170D'
'4C25CF26'
'620F800C'
'C00DD90B'
'360E1D0D'
'4225D826'
'630F840C'
'BC0DD50B'
'390E200D'
'3C25DE26'
'630F810C'
'BB0DCF0B'
'3A0E1C0D'
'3E25DD26'
'5E0F770C'
'BC0DC90B'
'390E140D'
'4325DE26'
'570F6C0C'
'BD0DC20B'
'330E0A0D'
'4325E326'
'530F660C'
'BA0DBA0B'
'270E000D'
'3D25E326'
'530F640C'
'AF0DB20B'
'200EFD0C'
'3425DC26'
'550F660C'
'A60DB10B'
'280EFF0C'
'2A25D626'
'5A0F6F0C'
'A70DB60B'
'380E030D'
'2825D126'
'590F7A0C'
'A80DB80B'
'3D0E060D'
'2D25CB26'
'540F7E0C'
'A90DAD0B'
'370E060D'
'2F25C326'
'520F790C'
'AD0DA40B'
'300E060D'
'2D25BC26'
'520F720C'
'AC0DAB0B'
'2F0E080D'
'2C25BB26'
'520F700C'
'A60DBA0B'
'340E0C0D'
'2825BD26'
'4E0F700C'
'9B0DB90B'
'350E100D'
'2525B826'
'4A0F700C'
'900DAD0B'
'2D0E120D'
'2325AF26'
'4D0F730C'
'890DA40B'
'280E0E0D'
'2225A726'
'510F750C'
'870DA60B'
'2A0E040D'
'2025A326'
'510F750C'
'8A0DAD0B'
'2C0EFE0C'
'1725A526'
'530F760C'
'900DB20B'
'2D0EFF0C'
'1125A726'
'580F770C'
'980DB30B'
'2E0E020D'
'1525A626'
'5E0F730C'
'9D0DB20B'
'310E050D'
'1725A526'
'600F6E0C'
'9E0DB00B'
'360E0B0D'
'0F25A326'
'600F6A0C'
'A30DAD0B'
'380E0E0D'
'0125A126'
'600F690C'
'A70DAA0B'
'390E0A0D'
'F8249D26'
'5D0F640C'
'A50DA60B'
'360E070D'
'FA249226'
'570F5A0C'
'A40DA20B'
'2F0E070D'
'00258C26'
'520F570C'
'A30DA40B'
'270E030D'
'05258E26'
'480F5E0C'
'9F0DA40B'
'1D0EF80C'
'0A259426'
'3C0F600C'
'970D9F0B'
'170EF00C'
'0F259926'
'350F590C'
'8F0DA10B'
'160EF00C'
'0E259E26'
'310F500C'
'890DA80B'
'150EF00C'
'04259F26'
'2D0F4A0C'
'890DAC0B'
'130EEA0C'
'F9249A26'
'2D0F4B0C'
'8B0DB10B'
'100EDE0C'
'EF249326'
'2C0F510C'
'8B0DB80B'
'120EDD0C'
'E8248F26'
'280F500C'
'880DB80B'
'120EE40C'
'E7248E26'
'200F4C0C'
'830DAD0B'
'050EEA0C'
'E7248926'
'220F4E0C'
'830DA10B'
'FF0DEE0C'
'E4248126'
'2C0F4F0C'
'830D9F0B'
'060EF20C'
'E4247626'
'330F4F0C'
'8A0DA50B'
'0F0EF50C'
'E5247026'
'2F0F4E0C'
'910DA40B'
'100EF00C'
'E6247026'
'260F4F0C'
'940D980B'
'050EE60C'
'E4247026'
'1E0F4F0C'
'910D8B0B'
'FA0DDC0C'
'DC246F26'
'1A0F4C0C'
'8B0D8B0B'
'FA0DD90C'
'CF246C26'
'1C0F4C0C'
'8C0D920B'
'FE0DDC0C'
'C6246426'
'220F500C'
'920D980B'
'FE0DE60C'
'C5245E26'
'270F540C'
'900D980B'
'FD0DEE0C'
'C3245F26'
'260F580C'
'8C0D970B'
'FE0DEA0C'
'BD246326'
'200F590C'
'8C0D920B'
'000EE30C'
'B8246526'
'1C0F580C'
'850D870B'
'030EDD0C'
'B1246526'
'1E0F550C'
'7B0D810B'
'060EDD0C'
'AD246326'
'1E0F4D0C'
'740D840B'
'0A0EDB0C'
'B1245E26'
'1D0F460C'
'6F0D840B'
'0C0ECC0C'
'B8245D26'
'150F440C'
'6A0D7F0B'
'050EBC0C'
'BE245926'
'0E0F450C'
'6C0D7A0B'
'FA0DB70C'
'BE244A26'
'100F460C'
'740D7C0B'
'F90DBE0C'
'BB243D26'
'190F4E0C'
'810D860B'
'FE0DCA0C'
'BD243B26'
'280F5D0C'
'960D980B'
'090ED80C'
'C5244926'
'370F730C'
'B20DB30B'
'1A0EEA0C'
'CA246026'
'440F8A0C'
'D30DD40B'
'300E010D'
'CD247C26'
'530F9A0C'
'F60DF00B'
'480E140D'
'D9249A26'
'5E0FA60C'
'1C0E050C'
'600E230D'
'F024B626'
'670FBB0C'
'420E200C'
'7A0E340D'
'0825D426'
'6F0FD80C'
'620E440C'
'960E480D'
'1925EA26'
'750FF00C'
'7F0E670C'
'B20E5A0D'
'2825F826'
'820F0A0D'
'9C0E860C'
'CF0E6E0D'
'3B250727'
'8F0F270D'
'B80EA50C'
'EC0E7D0D'
'51251D27'
'970F420D'
'D80EC40C'
'070F860D'
'64253627'
'9D0F5A0D'
'FC0EDF0C'
'1E0F950D'
'72254F27'
'A50F6C0D'
'1E0FF50C'
'2E0FA70D'
'80256727'
'AE0F7B0D'
'460F0C0D'
'3C0FB80D'
'93257E27'
'B90F8C0D'
'730F280D'
'4F0FCD0D'
'A5258D27'
'C60FA10D'
'9D0F480D'
'680FE40D'
'AC259A27'
'D00FB90D'
'C00F670D'
'800FF60D'
'AF25AA27'
'DA0FCE0D'
'DD0F810D'
'920FFF0D'
'B725B527'
'E70FE40D'
'F40F9C0D'
'A20F070E'
'C125BC27'
'F20FF60D'
'0910BA0D'
'B40F170E'
'C425C227'
'F90F010E'
'1F10D00D'
'C80F290E'
'C825D327'
'FE0F120E'
'3910D90D'
'D60F330E'
'DC25F127'
'FE0F230E'
'5610E20D'
'DC0F340E'
'F9251128'
'FC0F340E'
'7910F00D'
'E70F3A0E'
'0A262428'
'0410480E'
'A1100B0E'
'FB0F4D0E'
'12262F28'
'17105F0E'
'C810320E'
'1810620E'
'1B263728'
'2A10720E'
'E510520E'
'3210740E'
'1D263E28'
'3910850E'
'FC106D0E'
'46108A0E'
'1D264528'
'3D109A0E'
'1011830E'
'5410A20E'
'26264F28'
'4210AF0E'
'2711930E'
'6010B00E'
'33265B28'
'4810BE0E'
'3C119F0E'
'6710B30E'
'39266828'
'4710C40E'
'4E11A90E'
'6510BA0E'
'3B267628'
'4A10CC0E'
'6711B90E'
'6A10C50E'
'3F267F28'
'5210DD0E'
'8411CE0E'
'7E10D10E'
'45268428'
'5B10F10E'
'9A11E40E'
'9710DF0E'
'4A268528'
'6110FC0E'
'A511F10E'
'A510E90E'
'4C268028'
'6110FD0E'
'A511F40E'
'AA10EB0E'
'4E267728'
'5D10FA0E'
'9E11F00E'
'A710E80E'
'4B267428'
'5910F80E'
'9411E90E'
'9E10E50E'
'3F267728'
'5010F50E'
'8B11DE0E'
'9010E20E'
'35267628'
'4610F10E'
'8311D10E'
'8410D80E'
'32267328'
'4410F10E'
'7E11CB0E'
'8210CF0E'
'30267128'
'4110F30E'
'7C11D00E'
'8310C90E'
'32267428'
'4210ED0E'
'7E11D60E'
'8210C00E'
'30267628'
'4810E80E'
'8011D50E'
'8110B40E'
'24267028'
'4E10E80E'
'7A11D10E'
'7C10B00E'
'16266128'
'4F10E10E'
'6B11CB0E'
'7210B30E'
'0A265328'
'4910D90E'
'5B11C10E'
'6E10B40E'
'05264C28'
'3B10CF0E'
'4711AD0E'
'6810AE0E'
'01264C28'
'2E10C10E'
'3211990E'
'5910A50E'
'FB254D28'
'2B10B80E'
'2911920E'
'4B109C0E'
'F7254628'
'3010B40E'
'2B11950E'
'4A10940E'
'F2253928'
'3210AE0E'
'2811910E'
'5210930E'
'E9252928'
'2F10A00E'
'1B11840E'
'5210970E'
'DB251728'
'29108C0E'
'0B116F0E'
'3F10930E'
'CA250228'
'2410780E'
'FC105D0E'
'2C108B0E'
'BA25E827'
'1C10620E'
'E210490E'
'17107C0E'
'A825CE27'
'0810470E'
'B810270E'
'F20F670E'
'9725B727'
'EB0F2F0E'
'8A10FC0D'
'CC0F4D0E'
'8625A327'
'D50F1C0E'
'6510DF0D'
'B60F320E'
'71258B27'
'CF0F0C0E'
'4A10D40D'
'AA0F1F0E'
'5D256D27'
'D00FFC0D'
'2C10CF0D'
'9B0F150E'
'4E255427'
'C80FEA0D'
'0410C10D'
'8A0F0A0E'
'40253D27'
'B90FD80D'
'E40FAE0D'
'7B0FFD0D'
'32252B27'
'AE0FC40D'
'C80F990D'
'690FEF0D'
'1F251A27'
'A60FB20D'
'AB0F810D'
'560FDD0D'
'02250527'
'9E0F9F0D'
'900F610D'
'420FCA0D'
'E724EB26'
'940F880D'
'6C0F380D'
'270FB20D'
'DA24CF26'
'860F700D'
'3D0F0B0D'
'050F960D'
'CF24B426'
'790F5B0D'
'0F0FE40C'
'E60E840D'
'C2249F26'
'6E0F440D'
'E50EC00C'
'CF0E760D'
'B2248C26'
'620F280D'
'C30EA40C'
'C00E680D'
'9E247826'
'510F0D0D'
'A50E900C'
'B20E570D'
'84245F26'
'430FF70C'
'860E7D0C'
'A60E470D'
'69243F26'
'370FDC0C'
'620E640C'
'910E360D'
'49241B26'
'260FBB0C'
'3C0E420C'
'6C0E220D'
'2A24F925'
'0F0F910C'
'0D0E130C'
'3F0E060D'
'1224D525'
'F70E660C'
'D80DDA0B'
'160EE90C'
'FB23AC25'
'E60E420C'
'A00D9F0B'
'F40DCF0C'
'E5238425'
'D80E290C'
'6E0D750B'
'DC0DBD0C'
'D6236825'
'CC0E170C'
'4A0D600B'
'C80DAD0C'
'D0235325'
'C70E080C'
'300D580B'
'BB0D9B0C'
'C8233F25'
'C60EFE0B'
'1F0D510B'
'B40D8D0C'
'C1233425'
'C80EF90B'
'1B0D4B0B'
'B00D880C'
'B6233725'
'C70EF70B'
'1B0D400B'
'AA0D860C'
'AE233D25'
'BE0EF30B'
'160D290B'
'9B0D820C'
'AC233A25'
'B80EED0B'
'100D1A0B'
'8B0D7B0C'
'A9233225'
'B80EE60B'
'110D1C0B'
'850D760C'
'A7232A25'
'BB0EE00B'
'100D220B'
'860D710C'
'A7232A25'
'BC0EE00B'
'0C0D270B'
'840D6F0C'
'A4232B25'
'BA0EE20B'
'0A0D2C0B'
'850D770C'
'A1232D25'
'B40EE00B'
'0A0D2D0B'
'8E0D810C'
'A0233425'
'AF0EDB0B'
'0C0D260B'
'910D820C'
'9F233725'
'AB0EDB0B'
'100D1C0B'
'8F0D7C0C'
'96233125'
'A80EDE0B'
'170D150B'
'8B0D750C'
'89232825'
'A70EDC0B'
'1C0D110B'
'800D6F0C'
'82232225'
'A40EDA0B'
'1B0D130B'
'720D6C0C'
'82231A25'
'9E0EDA0B'
'120D1D0B'
'690D6F0C'
'83231425'
'930EDC0B'
'070D250B'
'670D740C'
'85231425'
'8C0EDA0B'
'FE0C260B'
'6A0D750C'
'83231525'
'8D0ED30B'
'FA0C270B'
'700D760C'
'79231125'
'950EC90B'
'F70C290B'
'780D750C'
'70230A25'
'9C0EC30B'
'FB0C2C0B'
'7D0D6E0C'
'6E23FE24'
'9A0EC20B'
'010D2A0B'
'7A0D640C'
'7023F524'
'940EC30B'
'040D230B'
'760D5F0C'
'7423F324'
'920EC60B'
'020D1E0B'
'740D5E0C'
'7523F424'
'940ECB0B'
'000D1A0B'
'760D610C'
'7823F624'
'940ECB0B'
'FF0C0F0B'
'7B0D600C'
'7623FA24'
'910ECA0B'
'020D0A0B'
'830D5E0C'
'7123F924'
'8F0ECC0B'
'060D0D0B'
'8A0D5D0C'
'7223F324'
'8B0ED00B'
'080D0F0B'
'900D5C0C'
'7223ED24'
'8B0ED70B'
'080D140B'
'920D5D0C'
'6723E624'
'920EDE0B'
'060D190B'
'8E0D630C'
'5723E024'
'930EDA0B'
'020D170B'
'840D640C'
'4E23E024'
'8D0ECF0B'
'030D0C0B'
'780D5C0C'
'4E23E024'
'8E0EC90B'
'050D050B'
'720D530C'
'5123DA24'
'980EC70B'
'060D100B'
'700D540C'
'5023D424'
'9F0EC50B'
'010D1E0B'
'700D560C'
'4E23D124'
'A10EC40B'
'F90C250B'
'730D550C'
'4D23D124'
'9D0EC20B'
'F00C230B'
'780D550C'
'4C23D224'
'940EC10B'
'EC0C1D0B'
'790D560C'
'4C23D324'
'840EBA0B'
'E40C120B'
'700D490C'
'4923D124'
'760EB30B'
'D90C080B'
'610D390C'
'4123CD24'
'750EB60B'
'D50C060B'
'5B0D350C'
'3D23C924'
'7C0EBC0B'
'D60C090B'
'5B0D390C'
'4423C324'
'7E0EBD0B'
'D90C0C0B'
'500D370C'
'4A23BA24'
'7E0EBA0B'
'DF0C0D0B'
'490D350C'
'4523B424'
'830EB60B'
'E60C0D0B'
'4C0D390C'
'3F23B424'
'870EB20B'
'E60C0B0B'
'4F0D400C'
'3D23B424'
'850EAF0B'
'E80C0B0B'
'500D480C'
'3823B524'
'7C0EAD0B'
'E80C0D0B'
'510D470C'
'3023B824'
'730EAC0B'
'E70C0E0B'
'510D400C'
'2423B324'
'740EB10B'
'E90C090B'
'4E0D3F0C'
'1923A224'
'810EBB0B'
'F00C040B'
'520D490C'
'14238F24'
'8A0EBE0B'
'F50C010B'
'5D0D570C'
'18238B24'
'880EBB0B'
'F00CFF0A'
'600D5C0C'
'1D238E24'
'840EBB0B'
'EA0CFE0A'
'5F0D5A0C'
'1A238B24'
'820EBA0B'
'EA0CFE0A'
'5D0D5D0C'
'12238824'
'810EB80B'
'E90CFE0A'
'5A0D620C'
'0C238924'
'7C0EBB0B'
'E20CFC0A'
'5F0D600C'
'08238F24'
'750EB90B'
'D50CF90A'
'630D570C'
'05239524'
'740EAF0B'
'CC0CF40A'
'5E0D510C'
'06239B24'
'780EA90B'
'CC0CEC0A'
'530D4D0C'
'0C239B24'
'790EA50B'
'D00CEC0A'
'4B0D4A0C'
'14239C24'
'700EA10B'
'D50CF10A'
'4C0D440C'
'1623A024'
'650E9D0B'
'D40CED0A'
'4D0D3A0C'
'1323A224'
'5F0E9C0B'
'CE0CE70A'
'4B0D2F0C'
'0C239824'
'5C0EA00B'
'C60CE90A'
'4E0D280C'
'07238A24'
'5E0EA10B'
'C10CED0A'
'520D250C'
'08238724'
'600E9B0B'
'BC0CE90A'
'4E0D1E0C'
'0A238A24'
'5E0E950B'
'BA0CE50A'
'460D180C'
'04238924'
'590E980B'
'BB0CE70A'
'450D170C'
'F7227E24'
'5A0E990B'
'BC0CEF0A'
'470D1C0C'
'E8227824'
'650E980B'
'BF0CFA0A'
'470D220C'
'DE227324'
'6D0E9C0B'
'CA0C010B'
'490D270C'
'DE226D24'
'690EA50B'
'D40CFD0A'
'4A0D2C0C'
'E5226724'
'5F0EAF0B'
'D20CFA0A'
'4A0D2F0C'
'EC226024'
'5C0EB00B'
'CC0CFB0A'
'4B0D360C'
'ED225324'
'5F0EA80B'
'C00CE80A'
'440D3B0C'
'F0223B24'
'560E980B'
'A50CA80A'
'360D330C'
'FB221524'
'420E7B0B'
'790C4F0A'
'220D200C'
'FB22E023'
'320E5A0B'
'4B0C010A'
'020D080C'
'E722A123'
'2D0E480B'
'250CBD09'
'D50CEA0B'
'C2225F23'
'320E3F0B'
'FD0B7509'
'9B0CC00B'
'93221B23'
'340E2B0B'
'C80B2909'
'590C890B'
'5E22D422'
'2F0E0D0B'
'950BE608'
'160C4F0B'
'24229522'
'2F0EF40A'
'6B0BB008'
'C40B140B'
'E7216222'
'330EE70A'
'460B7C08'
'670BD20A'
'AD213222'
'350EDD0A'
'270B5008'
'0D0B8C0A'
'7B210422'
'3A0ED70A'
'160B3C08'
'BC0A4A0A'
'4C21E221'
'430EE10A'
'1D0B4A08'
'770A1A0A'
'2521D621'
'4D0EF60A'
'380B7308'
'400AFA09'
'0F21DF21'
'580E110B'
'630BAB08'
'180AE109'
'09210422'
'680E330B'
'A30BFC08'
'020AD209'
'10214822'
'850E5A0B'
'F70B7109'
'050ADC09'
'2A21A922'
'A30E830B'
'5B0C0A0A'
'1D0A010A'
'5C212423'
'BA0EB50B'
'D20CBF0A'
'4B0A390A'
'A421B823'
'D80E010C'
'740D990B'
'980A850A'
'00226924'
'020F660C'
'440EA50C'
'0F0BEB0A'
'71223825'
'390FD90C'
'350FDA0D'
'AD0B700B'
'F8222326'
'7A0F560D'
'3D10240F'
'6A0C170C'
'99232B27'
'BA0FDA0D'
'54117C10'
'450DD50C'
'4D244F28'
'FB0F690E'
'7F12E911'
'410EA00D'
'12258729'
'3E10030F'
'B5136913'
'5F0F760E'
'EA25D32A'
'8710A40F'
'F814F814'
'9E105B0F'
'DA263B2C'
'D7105010'
'52169A16'
'F8115510'
'E627C22D'
'31110B11'
'C9175C18'
'6E136F11'
'0629612F'
'9111D311'
'5A19381A'
'0415A312'
'292A0031'
'F111A212'
'F31A0E1C'
'AF16E113'
'462B8A32'
'46126913'
'821CCE1D'
'5F182015'
'572C0034'
'94122114'
'FD1D761F'
'0F1A5916'
'5F2D6535'
'DA12C014'
'541F0321'
'BE1B8917'
'622EAC36'
'18134615'
'83206722'
'651DB218'
'5A2FD837'
'4E13B415'
'98219E23'
'FC1ECE19'
'4930F438'
'76130F16'
'9622B324'
'8E20DF1A'
'3B310A3A'
'8E135A16'
'8123B925'
'2A22F11B'
'2A32103B'
'99139116'
'5224AB26'
'C723FD1C'
'F932E63B'
'9513A216'
'E8246227'
'3825E41D'
'87335F3C'
'6E136816'
'1025DC27'
'2A267D1E'
'B6335A3C'
'0A13C415'
'99242228'
'5026A01E'
'8A33DF3B'
'6D12D314'
'92230428'
'C825531E'
'1933183B'
'BC11BC13'
'3D226F27'
'EE24C11D'
'7532243A'
'0B118F12'
'C1207D26'
'E9230A1D'
'BB312139'
'55104F11'
'2D1F5425'
'CE22431C'
'04312038'
'9B0F0410'
'9D1D2224'
'BA21801B'
'4D301E37'
'E40EB60E'
'151CF622'
'B420C51A'
'8E2F1536'
'310E620D'
'821AC021'
'A41F051A'
'BF2EF734'
'7A0D0E0C'
'DF186E20'
'7A1E3519'
'E92DC333'
'B80CBD0A'
'2E17F81E'
'441D4D18'
'0B2D8532'
'F00B6E09'
'75156D1D'
'081C5417'
'1F2C4631'
'310B2508'
'BA13DB1B'
'C31A5716'
'302B0E30'
'770ADE06'
'FD11481A'
'79195E15'
'492AD72E'
'B8098905'
'3E10B818'
'30186414'
'6A299E2D'
'F4082704'
'830E3717'
'F6167213'
'8B286B2C'
'2D08C102'
'CA0CC415'
'CF158D12'
'AD27372B'
'68075901'
'150B4F14'
'AE14B011'
'D026FE29'
'A006F6FF'
'6409D012'
'8313D110'
'EE25C128'
'DC05A0FE'
'B4074E11'
'5412F10F'
'0D258427'
'1E0559FD'
'0206CF0F'
'23110B0F'
'2C244A26'
'680418FC'
'5704530E'
'EC0F200E'
'4C231425'
'B703D8FA'
'B702D50C'
'B30E360D'
'6E22E223'
'FE0290F9'
'14014A0B'
'770D4B0C'
'9621BB22'
'410247F8'
'70FFC109'
'410C680B'
'E120C121'
'AC013DF7'
'0DFE7308'
'380BA50A'
'66201C21'
'6B01C5F6'
'3CFD9007'
'810A1C0A'
'2020BF20'
'8801F1F6'
'09FD1707'
'1D0AD809'
'FE1F9220'
'F1019AF7'
'54FDF006'
'F209C409'
'F51F8E20'
'8A0290F8'
'F6FDF206'
'EB09C109'
'FE1FA520'
'3F03AFF9'
'CCFE0907'
'FD09CB09'
'0E20C920'
'0404E8FA'
'BFFF3507'
'1F0AE809'
'2720F620'
'CA042EFC'
'BB006907'
'4C0A0B0A'
'4C202521'
'900572FD'
'B8019A07'
'7B0A280A'
'73204E21'
'5606B5FE'
'B902D307'
'A90A410A'
'96207721'
'1A07FEFF'
'C1031908'
'D60A610A'
'B820AA21'
'E5075001'
'CF046508'
'030B890A'
'DD20E421'
'B708AA02'
'DF05B208'
'3A0BB80A'
'09211E22'
'93090704'
'F1060309'
'7C0BE90A'
'3A215522'
'6F0A6805'
'07085309'
'BA0B180B'
'67218C22'
'440BC806'
'20099709'
'F80B440B'
'8D21C622'
'040C0808'
'260AD209'
'330C6D0B'
'A421F422'
'990C0209'
'F00AFF09'
'5E0C8B0B'
'B2211323'
'FF0CAF09'
'740B1E0A'
'7D0C9B0B'
'C0212923'
'460D220A'
'CB0B340A'
'910CA30B'
'C7213223'
'760D700A'
'090C440A'
'A10CAB0B'
'C6213223'
'940DA50A'
'360C570A'
'B10CB30B'
'C1212E23'
'AF0DC80A'
'550C6F0A'
'BE0CB90B'
'BE212E23'
'C30DDA0A'
'690C7F0A'
'C50CBC0B'
'C0213223'
'CE0DE10A'
'770C800A'
'C80CBB0B'
'C1213023'
'D50DE70A'
'790C7A0A'
'C80CB90B'
'BE212D23'
'D80DEF0A'
'720C740A'
'C20CB80B'
'BE212E23'
'D60DF20A'
'6F0C6A0A'
'B80CBA0B'
'BD212B23'
'D80DF40A'
'750C600A'
'B40CC20B'
'BA212623'
'DC0DFA0A'
'770C5D0A'
'B60CC80B'
'B5212823'
'DE0D010B'
'700C5F0A'
'B50CC00B'
'B5212C23'
'DA0D010B'
'6D0C640A'
'AE0CB50B'
'B7212D23'
'DE0D020B'
'730C6A0A'
'A80CB10B'
'B8212C23'
'E50DFE0A'
'740C680A'
'AC0CB10B'
'B1212E23'
'E70DF60A'
'710C5D0A'
'B50CB30B'
'A6212E23'
'E20DF10A'
'710C540A'
'B50CB60B'
'A2212423'
'E30DEF0A'
'720C560A'
'B00CB80B'
'9F211623'
'E80DF60A'
'740C570A'
'B00CB90B'
'9C210E23'
'E70D020B'
'760C540A'
'B30CB60B'
'9C210C23'
'DF0D070B'
'750C560A'
'B00CB20B'
'9C210A23'
'D80D0B0B'
'750C5C0A'
'AC0CB50B'
'9A210823'
'DC0D120B'
'750C5E0A'
'AC0CC20B'
'9A210423'
'DF0D160B'
'760C5D0A'
'AF0CC80B'
'9B21FD22'
'E10D120B'
'7A0C5B0A'
'B40CC00B'
'9B21F622'
'DF0D0B0B'
'7D0C580A'
'B40CB50B'
'9C21F222'
'D40D070B'
'7B0C540A'
'AB0CAE0B'
'9A21EE22'
'C90D050B'
'780C510A'
'A30CA90B'
'9721EB22'
'C70D000B'
'7D0C520A'
'A40CA50B'
'9821EE22'
'C50DF90A'
'880C550A'
'AA0CA60B'
'9721F022'
'C50DF60A'
'950C570A'
'B00CAC0B'
'9421ED22'
'C70DF80A'
'A20C530A'
'B30CB10B'
'9321EC22'
'C80DFE0A'
'A80C4B0A'
'B00CAD0B'
'9121F122'
'C80DFF0A'
'AA0C490A'
'A80CAB0B'
'8F21F322'
'C70DFA0A'
'AF0C4A0A'
'9E0CAB0B'
'8D21F122'
'BF0DF20A'
'AE0C440A'
'970CA60B'
'8921EF22'
'B60DEA0A'
'A90C3B0A'
'930C9F0B'
'7F21EA22'
'B50DEE0A'
'AC0C390A'
'960CA20B'
'7721E122'
'B90DF80A'
'B70C450A'
'9D0CAF0B'
'7621D722'
'BE0DF90A'
'C00C500A'
'AA0CB40B'
'7521D222'
'C30DF80A'
'C40C540A'
'B50CB30B'
'6C21D022'
'C50DF70A'
'CE0C570A'
'B00CB50B'
'6321CD22'
'C50DF50A'
'DA0C5B0A'
'A60CB70B'
'5F21CA22'
'BF0DF30A'
'DF0C590A'
'9D0CB00B'
'5F21CB22'
'B80DEF0A'
'DE0C4E0A'
'930CA30B'
'6321CA22'
'B90DEC0A'
'DF0C430A'
'8E0C980B'
'6921C822'
'BC0DEA0A'
'E70C420A'
'950C910B'
'6921C822'
'BA0DE80A'
'F20C460A'
'9E0C8F0B'
'6321C922'
'B60DE30A'
'F70C450A'
'9B0C950B'
'5C21C722'
'B70DE10A'
'FD0C410A'
'960C9B0B'
'5121C322'
'BE0DE70A'
'010D410A'
'9C0C9E0B'
'4721BD22'
'C90DF00A'
'040D470A'
'A90CA00B'
'4621B622'
'CE0DF00A'
'050D4A0A'
'AB0C980B'
'4B21AE22'
'C90DE80A'
'080D410A'
'9F0C8D0B'
'5321AE22'
'BD0DDC0A'
'0F0D3E0A'
'950C890B'
'5221B322'
'B30DDC0A'
'190D450A'
'950C890B'
'4721B222'
'B40DE30A'
'230D4B0A'
'980C8F0B'
'4121AA22'
'B60DE90A'
'290D4D0A'
'9B0C9B0B'
'4221A422'
'B30DED0A'
'2A0D4B0A'
'970CA40B'
'4521A422'
'AE0DEC0A'
'2A0D4A0A'
'900CA60B'
'4921A722'
'A70DE30A'
'2F0D480A'
'8B0CA40B'
'4921AA22'
'A20DDD0A'
'3C0D440A'
'8C0C9C0B'
'4521AA22'
'A20DDB0A'
'4A0D410A'
'930C8E0B'
'4121A322'
'A50DDB0A'
'500D440A'
'990C820B'
'41219D22'
'A40DE20A'
'500D4E0A'
'9A0C800B'
'47219C22'
'9F0DEB0A'
'550D5D0A'
'990C860B'
'4B21A122'
'9F0DF00A'
'5F0D6B0A'
'9F0C900B'
'4921AC22'
'A60DF40A'
'6A0D750A'
'AE0C9F0B'
'4521B322'
'B20DFE0A'
'6E0D810A'
'B80CAD0B'
'4921B622'
'B40D060B'
'650D850A'
'BB0CB40B'
'5021B722'
'AD0D0C0B'
'5B0D810A'
'C30CB80B'
'5621B822'
'A70D130B'
'570D7B0A'
'C80CBA0B'
'5E21B822'
'A30D160B'
'580D7F0A'
'C80CB80B'
'6521BC22'
'A00D190B'
'5C0D8A0A'
'C70CB30B'
'6A21C222'
'9D0D1C0B'
'640D950A'
'C90CB50B'
'6B21C422'
'9D0D200B'
'730D9E0A'
'CE0CBD0B'
'6821C722'
'9E0D290B'
'810DA30A'
'D40CC20B'
'6721CE22'
'9F0D3A0B'
'890DAB0A'
'D50CC40B'
'6B21D622'
'9F0D450B'
'8C0DB80A'
'D00CC40B'
'6D21DC22'
'A00D4A0B'
'900DC50A'
'D10CC60B'
'6F21DF22'
'9A0D4E0B'
'970DCB0A'
'D90CC70B'
'6D21E222'
'940D4F0B'
'9C0DCD0A'
'E00CC70B'
'6D21E622'
'940D4E0B'
'9F0DD20A'
'EA0CCC0B'
'7321E722'
'920D4F0B'
'A30DD60A'
'F80CD70B'
'7A21E722'
'8D0D520B'
'A70DD80A'
'050DE40B'
'7D21EB22'
'890D580B'
'AC0DE10A'
'100DF20B'
'7E21F222'
'8B0D5E0B'
'B00DEC0A'
'160DF80B'
'7D21FA22'
'910D640B'
'AF0DEE0A'
'150DF60B'
'76210523'
'960D650B'
'AA0DEB0A'
'100DF50B'
'6D210E23'
'960D6B0B'
'B00DF30A'
'110DFB0B'
'6A211023'
'900D760B'
'BB0D010B'
'170DFE0B'
'70211123'
'8C0D7E0B'
'C70D0B0B'
'1E0DFB0B'
'7E210E23'
'8D0D840B'
'D20D100B'
'220DF90B'
'8F210723'
'8E0D8F0B'
'DA0D150B'
'270D000C'
'94210023'
'8E0D990B'
'DC0D1A0B'
'2F0D0D0C'
'8F210023'
'940D9F0B'
'E10D230B'
'370D150C'
'8A210823'
'9B0DA00B'
'EA0D2B0B'
'370D140C'
'8C211423'
'960DA30B'
'EB0D300B'
'340D0D0C'
'91211D23'
'8C0DA60B'
'E80D2F0B'
'340D040C'
'93212123'
'8A0DA60B'
'ED0D330B'
'380D020C'
'90212423'
'900DA40B'
'FA0D3E0B'
'3D0D080C'
'89212823'
'940DA90B'
'0B0E4B0B'
'430D170C'
'84212923'
'9D0DB50B'
'1A0E5A0B'
'500D260C'
'80212823'
'A40DC20B'
'250E6A0B'
'610D350C'
'80212823'
'A20DCD0B'
'280E730B'
'6F0D480C'
'82212A23'
'9B0DDB0B'
'260E7D0B'
'7A0D530C'
'85212C23'
'940DE50B'
'230E870B'
'7C0D4F0C'
'83213423'
'870DE30B'
'260E8B0B'
'780D480C'
'83214123'
'780DDA0B'
'2F0E8B0B'
'790D470C'
'89215023'
'730DD70B'
'3A0E8C0B'
'7E0D4B0C'
'8F215723'
'780DDE0B'
'3E0E930B'
'840D510C'
'95215623'
'850DE70B'
'3B0E9F0B'
'8C0D570C'
'9B215A23'
'8D0DEE0B'
'3A0EA30B'
'900D580C'
'9C215F23'
'8C0DF50B'
'3F0EA40B'
'940D590C'
'9E216323'
'820DF50B'
'450EA40B'
'9A0D550C'
'A3216523'
'780DF20B'
'490EA80B'
'9E0D4B0C'
'A8216723'
'770DF40B'
'4F0EAE0B'
'9E0D430C'
'B2216223'
'7D0DF60B'
'590EB30B'
'A10D440C'
'BD215C23'
'830DF90B'
'610EB80B'
'AC0D500C'
'BD215D23'
'890D060C'
'690EC40B'
'BD0D5F0C'
'BA216323'
'890D130C'
'6D0ED30B'
'C70D650C'
'B7216923'
'830D1D0C'
'710EDE0B'
'CA0D6D0C'
'B1216C23'
'7C0D250C'
'780EEA0B'
'CE0D800C'
'A9216F23'
'7A0D2C0C'
'800EF70B'
'D70D920C'
'A6217223'
'7E0D2A0C'
'800EFA0B'
'DB0D930C'
'AC217723'
'7D0D240C'
'810EF00B'
'D40D8B0C'
'B1217923'
'780D240C'
'870EEF0B'
'D00D840C'
'B1217723'
'770D340C'
'920E020C'
'DA0D820C'
'AD217823'
'7A0D490C'
'A20E180C'
'EC0D860C'
'A9218323'
'7D0D570C'
'AB0E240C'
'FC0D8D0C'
'AD218D23'
'770D5A0C'
'AD0E280C'
'090E910C'
'B4218E23'
'6D0D5B0C'
'AF0E2C0C'
'110E940C'
'B5218E23'
'680D600C'
'B20E300C'
'100E9B0C'
'B5219023'
'680D680C'
'B10E2D0C'
'070EA30C'
'B7219623'
'650D6F0C'
'AE0E280C'
'FE0DA80C'
'B6219A23'
'610D730C'
'AD0E2D0C'
'FB0DAC0C'
'B5219923'
'600D7B0C'
'B50E3A0C'
'FD0DB50C'
'BA219923'
'600D8B0C'
'BC0E480C'
'070EBD0C'
'C5219F23'
'600D990C'
'BC0E4F0C'
'110EBF0C'
'D221A923'
'600D9C0C'
'BD0E560C'
'190EBF0C'
'DC21AD23'
'600D9A0C'
'C70E5E0C'
'2A0EC30C'
'DE21A823'
'620D9F0C'
'CF0E660C'
'3C0ECA0C'
'DC21A523'
'600DA70C'
'D30E6C0C'
'400ECD0C'
'D821A923'
'560DA70C'
'DC0E710C'
'3D0EC80C'
'D521B023'
'500DA10C'
'E40E740C'
'3B0EBF0C'
'D521BA23'
'4E0D9B0C'
'EC0E7B0C'
'3E0EBF0C'
'D921C323'
'4F0D9D0C'
'F00E8A0C'
'450EC70C'
'DC21C523'
'540DA80C'
'F40E960C'
'4A0ED00C'
'E021C323'
'580DB30C'
'F90E970C'
'500EDD0C'
'E821C823'
'510DB40C'
'F30E900C'
'540EE10C'
'F221D023'
'4B0DB10C'
'ED0E8A0C'
'560EDA0C'
'F621D523'
'500DB20C'
'F20E8D0C'
'550ED70C'
'F621D923'
'5B0DB20C'
'FB0E950C'
'550EDB0C'
'F921E023'
'680DB10C'
'090FA20C'
'5C0EE00C'
'FF21E823'
'760DBD0C'
'250FB90C'
'660EE70C'
'0422F423'
'810DD40C'
'400FD80C'
'6F0EF20C'
'09220224'
'8B0DE70C'
'550FF10C'
'7B0E000D'
'0A220A24'
'940DFA0C'
'690F030D'
'8A0E0A0D'
'0C220B24'
'9E0D120D'
'7B0F160D'
'9C0E140D'
'13221024'
'A60D260D'
'880F270D'
'AA0E1F0D'
'1B221A24'
'AD0D2F0D'
'910F300D'
'B80E300D'
'20222724'
'B40D300D'
'970F320D'
'C10E3F0D'
'28223224'
'BE0D340D'
'A00F310D'
'C50E420D'
'31224224'
'CC0D430D'
'B20F360D'
'CD0E440D'
'3D225624'
'DB0D520D'
'C60F410D'
'D80E480D'
'47226224'
'E70D5F0D'
'DD0F520D'
'E50E4D0D'
'48226524'
'EE0D6A0D'
'F70F670D'
'F30E560D'
'48226724'
'F20D6B0D'
'0F107D0D'
'030F5D0D'
'4C226424'
'FA0D6D0D'
'1B108E0D'
'130F660D'
'51226224'
'050E720D'
'1A10960D'
'1E0F6E0D'
'58226B24'
'0D0E7D0D'
'1A109D0D'
'200F700D'
'5F227624'
'180E8F0D'
'2A10A90D'
'240F760D'
'64227D24'
'290EA30D'
'4C10BD0D'
'2F0F840D'
'6A228324'
'3A0EBB0D'
'7210D70D'
'3D0F920D'
'73228A24'
'400ED20D'
'8C10F20D'
'4B0F9E0D'
'78229524'
'450EE30D'
'9A10030E'
'570FA60D'
'7B22A324'
'4B0EF40D'
'A2100C0E'
'5B0FAE0D'
'8222AD24'
'540EFF0D'
'AE10160E'
'5C0FBB0D'
'8822B124'
'670E010E'
'BC10200E'
'610FC80D'
'8A22B824'
'7E0EFE0D'
'C710270E'
'660FC60D'
'8E22C924'
'8B0EFF0D'
'D610290E'
'690FBE0D'
'9822E124'
'930E060E'
'E910340E'
'730FC40D'
'A422FB24'
'A10E110E'
'FB104B0E'
'850FD10D'
'B0220B25'
'B00E160E'
'0B11600E'
'9D0FD90D'
'B9220F25'
'B70E180E'
'1E116F0E'
'B40FDF0D'
'BA220F25'
'C00E210E'
'3611800E'
'C50FE90D'
'B7221425'
'CD0E2E0E'
'4111920E'
'D30FF70D'
'B9221A25'
'D60E390E'
'3C11A10E'
'DE0F030E'
'BF221C25'
'D90E400E'
'3411AF0E'
'E40F0D0E'
'C6222225'
'D80E470E'
'3511BE0E'
'E70F0E0E'
'D0223625'
'D10E4D0E'
'4111CB0E'
'E50F0C0E'
'DB224925'
'D00E5C0E'
'5511D80E'
'E90F180E'
'E6224F25'
'DC0E730E'
'6311EB0E'
'FB0F2B0E'
'F0225125'
'EA0E820E'
'6B11000F'
'15103E0E'
'F5225525'
'EF0E8C0E'
'6F110D0F'
'2A10480E'
'F4225825'
'F10E930E'
'7111190F'
'3D104D0E'
'F7225C25'
'F10E890E'
'6F11210F'
'4710510E'
'02236225'
'F10E750E'
'6611200F'
'43104F0E'
'0F236825'
'F90E6F0E'
'6611220F'
'40104E0E'
'17237125'
'0D0F8C0E'
'8211340F'
'4510510E'
'19237A25'
'290FC70E'
'BE11540F'
'52105E0E'
'1A238425'
'3F0FFC0E'
'F7116A0F'
'5E106B0E'
'18238D25'
'4D0F120F'
'1312730F'
'66106B0E'
'11238A25'
'5D0F1C0F'
'2012780F'
'6C10610E'
'08237D25'
'680F260F'
'2512710F'
'6E10570E'
'FE227425'
'690F260F'
'2112570F'
'6710540E'
'F2226E25'
'650F1B0F'
'18123E0F'
'5B10550E'
'E7226425'
'5E0F0E0F'
'13122F0F'
'5310510E'
'E1225925'
'580FFF0E'
'12122A0F'
'4C104F0E'
'E0225425'
'560FF60E'
'0D12240F'
'43104F0E'
'DE224C25'
'550FFB0E'
'0112160F'
'3C104A0E'
'D6223925'
'550FFF0E'
'EF11090F'
'3410400E'
'C6222225'
'530FF90E'
'D511FF0E'
'2B10340E'
'B5220C25'
'4E0FED0E'
'B711ED0E'
'2010270E'
'A122F824'
'460FDB0E'
'9B11CF0E'
'10101A0E'
'8B22E224'
'3F0FC40E'
'7F11AD0E'
'FB0F110E'
'7922CC24'
'360FAA0E'
'61118A0E'
'E10F070E'
'7422C024'
'2C0F8B0E'
'45116E0E'
'C70FFB0D'
'6E22B824'
'220F770E'
'3111620E'
'B10FED0D'
'5B22AB24'
'150F6F0E'
'2011580E'
'A40FE30D'
'49229824'
'050F650E'
'0711430E'
'9C0FD70D'
'3D228524'
'F50E560E'
'EB102D0E'
'8E0FC70D'
'35227124'
'EA0E400E'
'D010190E'
'790FB10D'
'2A225B24'
'E20E240E'
'B510000E'
'620F980D'
'17224524'
'DC0E080E'
'9610E00D'
'4D0F840D'
'00222F24'
'D00EEA0D'
'7010BF0D'
'310F720D'
'E7211924'
'BF0ECE0D'
'4710A30D'
'0D0F5F0D'
'CF210124'
'B10EB60D'
'1C10870D'
'E90E4E0D'
'BA21E123'
'A20E9A0D'
'ED0F650D'
'CB0E3D0D'
'9E21B823'
'910E7C0D'
'BC0F410D'
'A90E230D'
'7C218C23'
'7A0E5B0D'
'860F190D'
'830E060D'
'5E215B23'
'5C0E350D'
'4F0FE60C'
'5E0EE90C'
'44212B23'
'3E0E070D'
'120FAD0C'
'310EC60C'
'29210123'
'230ED30C'
'CF0E770C'
'FE0D9E0C'
'0821D722'
'0B0E9F0C'
'920E420C'
'D60D820C'
'E920AA22'
'FA0D710C'
'5C0E0A0C'
'B60D6E0C'
'D6207B22'
'EA0D4D0C'
'230ED90B'
'970D5C0C'
'C0205122'
'D60D2A0C'
'E50DB50B'
'740D460C'
'A4202C22'
'C50D080C'
'AF0D930B'
'510D2F0C'
'82200C22'
'BB0DEB0B'
'7F0D670B'
'310D160C'
'5C20EA21'
'B30DCD0B'
'4A0D340B'
'130DFB0B'
'3B20C621'
'A40DAA0B'
'110D050B'
'EF0CD70B'
'2120A421'
'940D870B'
'E40CE30A'
'CE0CB80B'
'0D208521'
'8C0D6C0B'
'C20CCC0A'
'B90CA80B'
'FC1F6821'
'830D580B'
'9B0CB10A'
'A50C930B'
'EC1F4D21'
'780D4A0B'
'790C980A'
'910C7A0B'
'DC1F3A21'
'6A0D3C0B'
'630C830A'
'7D0C690B'
'CA1F2E21'
'5D0D300B'
'590C720A'
'720C640B'
'BC1F2221'
'520D230B'
'4E0C610A'
'660C620B'
'B51F1521'
'440D0B0B'
'360C500A'
'4C0C590B'
'A81F0321'
'3D0DED0A'
'170C3F0A'
'360C4B0B'
'951FF320'
'3C0DDA0A'
'F90B300A'
'290C380B'
'801FE820'
'3B0DD40A'
'E10B250A'
'1F0C280B'
'6B1FDE20'
'330DCA0A'
'CB0B130A'
'0C0C1B0B'
'561FD320'
'210DB80A'
'B00BFA09'
'F30B0C0B'
'441FC420'
'0C0D9E0A'
'8F0BDF09'
'E10B010B'
'3A1FB120'
'FE0C870A'
'740BC509'
'D60BFA0A'
'351F9C20'
'F70C800A'
'650BAF09'
'CB0BF50A'
'321F8820'
'F30C810A'
'580B9E09'
'BD0BF00A'
'341F7B20'
'F50C800A'
'4A0B9209'
'B50BEB0A'
'3A1F7420'
'F90C7C0A'
'420B8A09'
'BB0BE50A'
'371F6E20'
'FF0C780A'
'450B8409'
'BE0BE40A'
'2E1F6E20'
'FF0C760A'
'4B0B8009'
'B80BE10A'
'2A1F7220'
'F40C700A'
'470B8209'
'B20BD80A'
'2A1F7420'
'E50C690A'
'3C0B8509'
'AE0BCF0A'
'2A1F7420'
'DC0C670A'
'310B8309'
'A50BC80A'
'2B1F7220'
'DB0C6E0A'
'2C0B7F09'
'9C0BC50A'
'231F6B20'
'DF0C720A'
'2D0B7F09'
'9E0BC70A'
'151F6320'
'E20C710A'
'2F0B7D09'
'A50BC70A'
'0B1F5A20'
'E50C720A'
'340B7509'
'A90BCB0A'
'0A1F5720'
'EC0C700A'
'380B7009'
'AA0BD20A'
'0B1F5720'
'F10C650A'
'360B7409'
'A70BCE0A'
'0C1F5620'
'F10C5F0A'
'340B7B09'
'A30BC80A'
'0D1F5120'
'F00C600A'
'350B7B09'
'A00BC70A'
'0F1F4A20'
'ED0C650A'
'310B7809'
'9E0BBF0A'
'131F4420'
'EA0C690A'
'2B0B7F09'
'9E0BB40A'
'141F3D20'
'E90C6A0A'
'2D0B8709'
'9E0BB50A'
'171F3720'
'E80C690A'
'310B8709'
'9D0BC10A'
'1C1F3420'
'E80C630A'
'300B8409'
'9C0BC70A'
'1C1F3220'
'E60C5B0A'
'2E0B8109'
'9B0BC30A'
'131F3420'
'E10C540A'
'2A0B7A09'
'930BB80A'
'041F3B20'
'DF0C530A'
'220B7709'
'8C0BAF0A'
'FB1E3E20'
'DD0C580A'
'180B7909'
'890BA90A'
'FE1E3D20'
'DB0C5D0A'
'140B7A09'
'890BA90A'
'FF1E3B20'
'D90C5F0A'
'1D0B7709'
'8B0BB00A'
'FC1E3420'
'DA0C610A'
'270B7409'
'930BB90A'
'F91E2C20'
'DA0C610A'
'250B7309'
'9C0BBE0A'
'F31E2E20'
'D90C620A'
'1C0B7309'
'9E0BBD0A'
'EC1E3620'
'DB0C600A'
'160B6E09'
'990BBC0A'
'ED1E3920'
'E10C560A'
'0E0B6609'
'910BBE0A'
'F11E3420'
'DD0C4A0A'
'0A0B5D09'
'890BBB0A'
'F31E2C20'
'D10C460A'
'0F0B5609'
'890BB20A'
'F31E2320'
'C50C450A'
'140B5509'
'940BA90A'
'EE1E1F20'
'BE0C450A'
'170B5909'
'9D0BA90A'
'EA1E1920'
'C00C4A0A'
'160B5D09'
'9E0BAA0A'
'E91E1220'
'C80C540A'
'150B6409'
'9D0BAC0A'
'E41E1620'
'C80C5C0A'
'120B6309'
'970BAB0A'
'E11E1F20'
'C60C5A0A'
'0C0B5A09'
'8C0BA60A'
'DD1E1E20'
'CB0C530A'
'0E0B5709'
'840BA30A'
'D31E1E20'
'D20C4A0A'
'140B5B09'
'7F0BA10A'
'CC1E2120'
'D40C450A'
'1D0B6109'
'7C0BA10A'
'CA1E1D20'
'CC0C430A'
'220B6609'
'7E0BA50A'
'CC1E1620'
'C80C420A'
'1E0B6A09'
'860BAB0A'
'D51E1420'
'CA0C440A'
'170B6709'
'890BAC0A'
'DD1E1220'
'CA0C4E0A'
'140B5F09'
'830BAB0A'
'DA1E0E20'
'CB0C5B0A'
'120B5C09'
'820BAD0A'
'CF1E0C20'
'CC0C5F0A'
'0A0B5D09'
'830BAB0A'
'C81E0C20'
'C50C560A'
'050B5909'
'7D0BA50A'
'C11E0520'
'B80C4E0A'
'060B5109'
'750BA20A'
'B91EFE1F'
'B00C4D0A'
'0D0B4F09'
'750BA10A'
'B71EFA1F'
'B00C480A'
'100B5309'
'750B9A0A'
'B41EF81F'
'B50C3F0A'
'0F0B5A09'
'760B950A'
'AF1EF41F'
'BB0C3B0A'
'120B6009'
'760B940A'
'AD1EEC1F'
'C20C3B0A'
'110B6609'
'730B950A'
'AF1EE61F'
'C30C380A'
'070B6A09'
'760B980A'
'B11EE21F'
'C00C320A'
'040B6709'
'780B9A0A'
'A91EE01F'
'C40C300A'
'0B0B6009'
'7A0B980A'
'9D1EE51F'
'C70C2E0A'
'0F0B5B09'
'7C0B960A'
'9D1EE71F'
'C30C290A'
'0F0B5809'
'770B9A0A'
'A61EE31F'
'BC0C260A'
'0E0B5509'
'6F0BA10A'
'AD1EE41F'
'B50C270A'
'0A0B5509'
'6F0BA40A'
'AD1EE51F'
'B00C270A'
'050B5709'
'750BA50A'
'A41EDF1F'
'B20C280A'
'FF0A5B09'
'780BA90A'
'9A1ED91F'
'B70C2E0A'
'FC0A6309'
'7A0BAA0A'
'961ED91F'
'B70C320A'
'FF0A6709'
'7C0BA80A'
'991EDA1F'
'B00C2E0A'
'030B5F09'
'780BA50A'
'9A1EDC1F'
'A40C290A'
'FC0A5209'
'700B9B0A'
'951EDD1F'
'9C0C250A'
'F20A4809'
'640B8E0A'
'8E1ED91F'
'A40C2B0A'
'F10A4509'
'5E0B8B0A'
'891ED21F'
'AE0C360A'
'F40A4709'
'620B900A'
'841ED01F'
'B20C360A'
'F20A4A09'
'680B960A'
'821ED21F'
'AF0C2F0A'
'ED0A4D09'
'670B930A'
'831ED41F'
'AC0C2C0A'
'EF0A5109'
'6B0B8C0A'
'811ECE1F'
'AA0C2D0A'
'FA0A5209'
'760B850A'
'7E1EC31F'
'A80C290A'
'030B4C09'
'7C0B7D0A'
'7F1EBD1F'
'A00C230A'
'FE0A4009'
'730B750A'
'7E1EBD1F'
'9A0C200A'
'F20A3509'
'6C0B740A'
'751EBE1F'
'9D0C1F0A'
'EA0A3609'
'700B760A'
'6D1EBD1F'
'A10C200A'
'E90A4009'
'710B760A'
'6D1EBD1F'
'A00C230A'
'E80A4609'
'670B6E0A'
'751EB91F'
'9B0C2A0A'
'E60A4409'
'5C0B640A'
'781EAC1F'
'970C320A'
'E90A4309'
'5B0B660A'
'711EA61F'
'960C350A'
'EF0A4209'
'5D0B6E0A'
'681EAA1F'
'930C330A'
'F00A3E09'
'5C0B730A'
'661EAC1F'
'8C0C2C0A'
'E70A3C09'
'560B710A'
'6B1EA61F'
'8A0C260A'
'D80A3D09'
'550B720A'
'6B1EA11F'
'8D0C290A'
'CD0A4009'
'5B0B7A0A'
'671E9F1F'
'920C300A'
'CD0A4209'
'5F0B810A'
'641E9B1F'
'960C340A'
'D00A3E09'
'5E0B840A'
'601E961F'
'990C340A'
'CF0A3809'
'5E0B870A'
'611E8E1F'
'980C340A'
'D00A3609'
'5C0B850A'
'611E8C1F'
'950C2E0A'
'D70A3809'
'560B800A'
'5A1E951F'
'950C230A'
'DE0A3709'
'4A0B7D0A'
'531EA11F'
'960C1A0A'
'E10A2F09'
'3E0B780A'
'531EA61F'
'900C150A'
'DE0A2609'
'360B6E0A'
'571EA11F'
'840C160A'
'DE0A2809'
'360B690A'
'581E951F'
'7A0C180A'
'E00A3109'
'3B0B720A'
'591E861F'
'790C160A'
'DF0A3909'
'400B850A'
'5A1E791F'
'7B0C180A'
'DA0A3A09'
'430B8F0A'
'561E741F'
'820C240A'
'D40A3609'
'450B8C0A'
'511E771F'
'860C2E0A'
'D20A3209'
'490B830A'
'4B1E811F'
'860C290A'
'CF0A2A09'
'4D0B780A'
'431E831F'
'860C1F0A'
'CD0A2809'
'500B6E0A'
'3C1E7D1F'
'860C1A0A'
'CF0A2F09'
'4D0B640A'
'361E791F'
'8E0C150A'
'D10A3309'
'4F0B610A'
'321E701F'
'9D0C100A'
'D60A3509'
'5A0B670A'
'331E641F'
'A60C0E0A'
'DC0A3809'
'600B6E0A'
'381E5F1F'
'A00C0D0A'
'DB0A3C09'
'600B720A'
'3B1E5F1F'
'950C0E0A'
'D30A3B09'
'5B0B710A'
'3A1E5B1F'
'8D0C0D0A'
'D00A3509'
'570B700A'
'371E531F'
'880C0D0A'
'D30A3109'
'560B780A'
'331E4E1F'
'850C140A'
'D70A3309'
'4F0B7D0A'
'2D1E491F'
'820C200A'
'D80A3409'
'490B790A'
'291E461F'
'7D0C290A'
'D50A3609'
'490B720A'
'2A1E481F'
'780C260A'
'D50A3909'
'4B0B6A0A'
'271E4C1F'
'7B0C210A'
'DE0A3E09'
'470B6B0A'
'201E4E1F'
'820C1D0A'
'E30A4009'
'420B720A'
'1F1E4A1F'
'880C190A'
'E10A4009'
'440B780A'
'201E481F'
'8B0C160A'
'E00A3C09'
'470B7B0A'
'1C1E4A1F'
'8A0C140A'
'E50A3509'
'460B7B0A'
'1C1E471F'
'820C0C0A'
'E40A2E09'
'3F0B760A'
'1C1E411F'
'780C040A'
'D80A2409'
'380B700A'
'141E3B1F'
'760C010A'
'D20A2009'
'3A0B6E0A'
'0A1E311F'
'740C050A'
'D20A2A09'
'3D0B6D0A'
'051E261F'
'710C0B0A'
'D40A3509'
'420B6C0A'
'021E231F'
'740C100A'
'D50A3709'
'460B690A'
'011E231F'
'790C120A'
'D60A3109'
'450B650A'
'001E201F'
'790C140A'
'DC0A2C09'
'450B630A'
'FE1D1D1F'
'770C180A'
'E00A2A09'
'490B650A'
'FC1D1D1F'
'710C170A'
'DA0A2709'
'490B670A'
'F81D201F'
'6E0C130A'
'D40A2209'
'410B680A'
'EF1D241F'
'6C0C110A'
'D10A1D09'
'360B680A'
'E81D251F'
'6E0C100A'
'C70A2109'
'2F0B6C0A'
'E71D201F'
'760C0A0A'
'BF0A2B09'
'300B740A'
'E51D151F'
'840C040A'
'C20A2F09'
'390B7A0A'
'DE1D0E1F'
'8C0CFF09'
'CA0A2E09'
'450B7F0A'
'D61D0F1F'
'8A0CFD09'
'CE0A2C09'
'4C0B7F0A'
'D81D171F'
'800CFF09'
'CA0A2709'
'4D0B760A'
'DC1D1D1F'
'780CFF09'
'C20A1D09'
'470B6E0A'
'DB1D1E1F'
'720CFE09'
'BD0A1909'
'410B670A'
'DB1D1D1F'
'690CFB09'
'BA0A1909'
'3A0B600A'
'DA1D1E1F'
'640CF709'
'BA0A1A09'
'340B580A'
'D81D1B1F'
'690CF809'
'C50A1C09'
'310B550A'
'D81D111F'
'740CFA09'
'D40A1E09'
'370B590A'
'D81D081F'
'780CFA09'
'DA0A1F09'
'3C0B610A'
'D21D051F'
'750CF909'
'DC0A2409'
'3A0B6C0A'
'CA1D081F'
'6E0CFB09'
'DA0A2809'
'340B6D0A'
'C81D0B1F'
'660CFA09'
'D00A2109'
'300B600A'
'CF1D0C1F'
'630CF309'
'C10A1009'
'2C0B4F0A'
'DC1D091F'
'650CEB09'
'B50A0409'
'250B440A'
'E31D041F'
'680CE709'
'B20A0809'
'240B430A'
'DF1D081F'
'6A0CE409'
'AF0A0F09'
'220B460A'
'D61D121F'
'6C0CE109'
'AF0A0F09'
'1F0B4C0A'
'C91D121F'
'6E0CE109'
'B40A1109'
'250B540A'
'BC1D081F'
'730CE709'
'BB0A1B09'
'320B620A'
'BA1D001F'
'760CEB09'
'BC0A2509'
'310B690A'
'BC1DF81E'
'6F0CEE09'
'BA0A2109'
'240B630A'
'BE1DF01E'
'610CF009'
'B70A1309'
'1A0B580A'
'BD1DE71E'
'570CF309'
'B20A0909'
'1B0B520A'
'B91DE21E'
'570CF209'
'AC0A0C09'
'220B4F0A'
'B61DE21E'
'5B0CF009'
'AA0A1309'
'220B4E0A'
'B21DE11E'
'5D0CEE09'
'AB0A1609'
'1A0B4D0A'
'AE1DE01E'
'5C0CEC09'
'A80A1709'
'170B4B0A'
'AB1DE21E'
'5B0CED09'
'A50A1909'
'1D0B450A'
'A61DE81E'
'590CF109'
'A60A1909'
'200B3C0A'
'9C1DEF1E'
'580CEF09'
'A50A1509'
'1C0B360A'
'931DEE1E'
'5C0CE809'
'9F0A1409'
'140B320A'
'8D1DEA1E'
'5D0CE209'
'9D0A1009'
'080B320A'
'871DE31E'
'5B0CE209'
'A50A0C09'
'090B3D0A'
'841DD91E'
'5B0CE609'
'A50A0909'
'180B460A'
'871DD11E'
'600CE809'
'9C0A0809'
'290B430A'
'881DCB1E'
'620CE809'
'940A0F09'
'300B3D0A'
'891DC31E'
'5E0CEC09'
'930A1709'
'310B3D0A'
'8B1DBA1E'
'5C0CF209'
'9A0A1E09'
'2F0B450A'
'8B1DB91E'
'5C0CF009'
'9F0A1C09'
'270B4D0A'
'871DC01E'
'5A0CE809'
'A00A1509'
'1A0B520A'
'7F1DC41E'
'530CE109'
'9E0A0F09'
'140B4F0A'
'7A1DC21E'
'4A0CDC09'
'9B0A1309'
'1A0B480A'
'7E1DBC1E'
'430CD909'
'9A0A1709'
'200B400A'
'851DB81E'
'3E0CD709'
'9C0A0F09'
'1B0B390A'
'8A1DB31E'
'3F0CDC09'
'A60A0709'
'140B370A'
'891DAC1E'
'420CE109'
'B20A0A09'
'120B380A'
'821DA61E'
'440CE109'
'B40A0F09'
'160B3B0A'
'7F1DA11E'
'420CD909'
'A90A0C09'
'160B410A'
'7F1DA41E'
'3D0CCF09'
'9F0A0409'
'0E0B410A'
'7A1DAD1E'
'370CCA09'
'9D0A0209'
'010B3B0A'
'761DB51E'
'370CC809'
'9D0AFE08'
'F40A340A'
'781DBA1E'
'380CC309'
'9C0AF708'
'ED0A300A'
'781DBA1E'
'390CC209'
'9A0AF508'
'EC0A290A'
'741DB51E'
'3B0CC609'
'9A0AFE08'
'F70A210A'
'721DAD1E'
'3D0CCA09'
'9E0A0809'
'0C0B250A'
'701DA41E'
'3E0CD109'
'A30A1009'
'180B300A'
'6B1D9F1E'
'3E0CD909'
'AA0A1609'
'190B380A'
'691D9E1E'
'370CDD09'
'AD0A1409'
'0F0B360A'
'691D9D1E'
'310CDB09'
'A60A0809'
'FC0A2C0A'
'681D961E'
'370CDA09'
'9C0A0009'
'ED0A220A'
'631D931E'
'430CDA09'
'950AFC08'
'EA0A210A'
'5F1D951E'
'490CD909'
'940AF708'
'F00A240A'
'5F1D901E'
'480CDF09'
'910AF508'
'F50A250A'
'5F1D8A1E'
'480CE409'
'880AF108'
'F70A230A'
'591D861E'
'460CE409'
'7F0AE808'
'FC0A220A'
'521D7E1E'
'400CE609'
'7D0AE408'
'FE0A210A'
'491D791E'
'3A0CE709'
'7D0AEA08'
'F80A1D0A'
'431D791E'
'330CE309'
'7E0AED08'
'F30A1D0A'
'431D7B1E'
'2F0CDD09'
'7F0AED08'
'F00A200A'
'451D801E'
'310CD409'
'820AED08'
'ED0A1F0A'
'411D801E'
'320CCD09'
'8E0AEE08'
'F30A210A'
'3C1D751E'
'300CCC09'
'980AED08'
'FB0A250A'
'3D1D6B1E'
'2B0CCC09'
'980AEA08'
'FC0A250A'
'3F1D6B1E'
'230CC609'
'940AE108'
'F60A210A'
'411D711E'
'1D0CBD09'
'900AD908'
'F00A1B0A'
'431D771E'
'170CB909'
'8C0AD708'
'E90A120A'
'411D761E'
'170CBC09'
'8A0AD908'
'E40A0A0A'
'3D1D701E'
'1C0CC109'
'8D0AD708'
'E10A040A'
'3A1D671E'
'220CC309'
'940AD508'
'E40A060A'
'321D5B1E'
'2A0CC609'
'9A0AD908'
'ED0A0E0A'
'251D551E'
'2E0CC709'
'9C0ADF08'
'F80A100A'
'1C1D5A1E'
'2A0CC409'
'960AE508'
'F70A0F0A'
'1B1D611E'
'200CBD09'
'8E0AE908'
'EC0A120A'
'1D1D631E'
'170CBE09'
'8A0AED08'
'E50A160A'
'1F1D661E'
'130CBF09'
'8A0AED08'
'E10A170A'
'1F1D661E'
'130CBD09'
'860AE508'
'E00A190A'
'251D5D1E'
'150CBD09'
'7D0AE008'
'DE0A1B0A'
'281D4F1E'
'1E0CBF09'
'760AE408'
'E10A1C0A'
'221D451E'
'240CC609'
'740AE808'
'EC0A1F0A'
'1E1D3F1E'
'1F0CCC09'
'770AE808'
'F50A230A'
'1E1D421E'
'140CCA09'
'7A0AE508'
'F30A230A'
'1E1D481E'
'0D0CC309'
'770AE208'
'EE0A1B0A'
'1A1D471E'
'100CBE09'
'790AE208'
'E90A160A'
'121D441E'
'150CB909'
'810AE508'
'E30A120A'
'101D461E'
'110CAE09'
'7F0AE208'
'DA0A0A0A'
'161D491E'
'060CA209'
'760AD808'
'D70A050A'
'211D4B1E'
'FE0BA209'
'700AD308'
'DC0A010A'
What else do you know about it?
.
Susan
on 12 Aug 2022
Edited: Susan
on 12 Aug 2022
@Star Strider Thanks for your response. It's the same data that I get from the .dat file that you helped me out with yesterday. I know the sampling frequency, however, we came to the conclusion that we shouldn't trust the sampling frequency because the intervals do not appear to be correct.
I know how many peaks there are in these ECG signals, however, I don't know when the signal starts.
When I open the .dat file using Note++, I can tell that there are some headers and then the data is started. However, I don't know where exactly the data started. To be specific, I just want to grab part of this file that has the measured data and get rid of the header.
Star Strider
on 12 Aug 2022
Well, we can assumed that they’re at lleast signed integers. Beyond that, I have no idea who to parse them.
Susan
on 12 Aug 2022
Edited: Susan
on 12 Aug 2022
@Star Strider Thanks for the suggestions. If I assume they are all signed integers, could you please tell me how I can parse them? I know there is 2byte per sample. Does this information help me to figure out where is the begginig of the signal?
Moreover, I used the following code to open .dat file (attached). Do you know how can I get and save Hex data? I am using the following code and it seems I'm not getting what I want.
FidMain = fopen(file_main);
hline = fgetl(FidMain); % read first line-- header
tline = fgetl(FidMain);
k = 1;
while ~feof(FidMain)
A{k} = char(tline);
B{k} = hex2dec(tline); % Convert to Hex-- this line gives me an error
tline = fgetl(FidMain);
k = k+1;
%disp(tline)
%fprintf('%X', tline)
end
Thanks again for your help!
dpb
on 12 Aug 2022
I went and read the past conversation with @Star Strider -- my Q? is a simple one -- why can't you go back to from whence you got these files and find out there what the structure of the header is? -- Most vendors have support code that reads their proprietry formats if it is from some instrument. But, I'm an engineer and never messed with physiological data nor their instrumentation so all I'm familiar with are conventional o'scopes, spectrum analyzers, etc., etc., etc., ... and those manufacturers so you're dealing in a whole different playground, granted.
Susan
on 12 Aug 2022
Edited: Susan
on 12 Aug 2022
@dpb Thanks for your comments. Good point! I thought the same and reached out to them before starting digging into the problem and data files and haven't heard back from them yet :) They provided me with software that I can see what the signals look like for these .dat files, but I need the raw data.
That's why I'm doing reverse engineering to figure out which part of data is important to me. Any suggestions for me now :) ?
dpb
on 12 Aug 2022
Well, if they don't document the format of the structure and if @Star Strider with his medical background besides being Merlin-like in MATLAB can't decipher it, it's unlikely I'll be able to provide much more, sorry.
If the data really are just a string of bytes, anything is possible -- including the packing of integers as 12 or some other of odd bits into 16- or 32-bit or other integers or some proprietary floating point format they invented or who knows what else...I've seen some really bizarro things over the years.
I guess the other dumb Q? would be if their visualization tools work, can you not strip those data -- you think there's some nonlinear processing going on in between that they're not representative of the raw data?
Susan
on 12 Aug 2022
Edited: Susan
on 12 Aug 2022
@dpb Thank you so much for your comment and suggestions.
The issue is I really don't know what the data are. The recorder gives me 4 sets of data, attached here. The DATA.dat file is the file I assume contains a header and raw data and the DATA.inf file has some information that shows up in the header line of the DATA.dat file.
Could you please kindly take a look at these data files and let me know if based on your experiences you have any suggestions for me on how to get the raw data?
Regarding your question, their visualization tools work but as you mentioned I think there's some nonlinear processing going on in between that they're not representative of the raw data. I expect the size of raw data to be equal to (Sampling rate) * (recording time) * 12 (the recorder has 12 leads), however, the length of the DATA.dat file has nothing to do with this data, or at least I haven't been able to figure that out yet. Moreover, based on the DATA.inf file I think the raw data goes through a banpass filter, not sure though.
Based on the visualization software, I can tell that the ECG signal is normal or not with X (for the attached data x=109) number of heartbeats. That's why I am trying to see if by knowing this information I can figure out the raw data. Here is a pic associate with the attached data. Any help would be truly appreciated.
dpb
on 12 Aug 2022
This kind of data is so far removed from my field of expertise I've no idea...it's probably true that the final data have been filtered; I was presuming the routines available could also plot the raw data -- if they don't have the facility to do that but only processed results, then as you say, they probably don't help any and you're at the mercy of whoever built the data files as to what their content and structure is.
dpb
on 13 Aug 2022
Edited: dpb
on 13 Aug 2022
As far as trying to find a repetitive pattern in the data in the file to try to match the time trace, I suspect that there isn't going to be one that can be recognized from the bit encoding since the random noise plus variability in the signal itself will not produce identical matches of exact sequences of sampled data preceding each beat -- and, conversely, there could/will be random occurrences of subsequent data values as well to confound the problem.
Secondly, do you even know that the data are recorded sequentially by channel or are the channels interleaved, for example? That would be something more likely to be the case if these are the real-time recordings (or images thereof) of the raw data. OTOH, if the file was created by some other software package during post processing, again, they could have done anything in outputting the data.
I'd think about the only way to reverse engineer this would be to have several files that included different numbers of channels, sample rates, time, etc.,etc., and know what those variables are and see how things vary in the file size and structure as indicators to help figure out what's written where.
Walter Roberson
on 13 Aug 2022
At a random place in the file, I start to find values that look likely to be double precision.
format long g
typecast(0x3FFFDBFE6CFFABFF,'double')
ans =
1.99120943620323
at offset 327889 (yes, an odd offset),
dpb
on 13 Aug 2022
Edited: dpb
on 14 Aug 2022
There doesn't seem to be enough data in the file to match up -- it says it's supposed to be 1:24 @ 128 Hz -- if it were four channels, that would be
Ntot = 4*128 => 512 samples per second total
The file only 171,328 bytes long; there appears to be a 512 byte header section which leaves
Ndata= 171328 - 512 = 171327 bytes
If each were an 8-byte value as a double, that would only be
>> Ndata/(8*Ntot)
ans =
41.7031
>>
41 seconds of recording; about half. Ergo, one must conclude it can't be more than 4-bytes which would be
>> Ntot*84*4
ans =
172032
>>
The header INF file doesn't say how many channels were recorded and the data in the header aren't easy to decipher but it must be encoded in there somewhere/somehow in order for their code to read it. All one sees there is
I wonder given the above attached figure (from a hex viewer of the beginning of the file) if the two "I" before the list of V1 ... V6 might be that the first two channels are inactive given the plot begins @ channel 3??? Just a guess.
What that tells next to try to do, I'm still at a loss, but doesn't look to me like there's any chance there are multiple sets of data collection in the file as far as both raw and processed data -- just doesn't look to be long enough.
Susan
on 16 Aug 2022
Edited: Susan
on 16 Aug 2022
@dpb So sorry for my late response. I truly appreciate your taking the time and value the insights you provide.
Regarding your question "Secondly, do you even know that the data are recorded sequentially by channel or are the channels interleaved, for example? " All I know is that the recorder is a 12-channel digital recording.
Thanks for your great suggestion as well. I've already done that. The number of channels is fixed, however, I collected data for 4 different sample rates and tried to figure out what is the relationship between the recording time, the sampling rate, and the file size. I was hoping to understand the header and what's written where. I noticed that the recording time in all cases is 3 sec less than what is shown in .inf files for each data set. This is what I get by changing the sampling rate and the recording time.
It seems that each sample is 1.37 bytes!!!
I know this is a long shot, but I attached those data here just in case you get a chance to look at them.
Susan
on 16 Aug 2022
Edited: Susan
on 16 Aug 2022
@dpb Could you please tell me where/how you got the header section byte size? "The file only 171,328 bytes long; there appears to be a 512 byte header section"
Regarding your point " if the two "I" before the list of V1 ... V6 might be that the first two channels are inactive given the plot begins @ channel 3??? Just a guess." I don't think this is the case. Because when I record the data, I can see that all 12 channels, i.e., I II III avR avL avF V1 V2 V3 V4 V5 V6, have waveforms and when I use their software, it provides me with 12 different ECG signals, each for one channel as it's shown bellow
Any help would be greatly appreciated.
dpb
on 16 Aug 2022
Edited: dpb
on 16 Aug 2022
"...here/how you got the header section byte size? "
Purely guesswork based on looking at the file in hex viewer -- the obvious header data that matches up with what's in the .inf file (more or less; not all is in ASCII, apparently) is at the very beginning, then there's a block of nul (0) bytes to close out the first 512 bytes.
To poke at these kinds of files you need a tool capable of showing you the content of the file -- regular text editors don't help unless they have a hex/binary mode (some programmers' editors do, many such as the MATLAB editor don't and Notepad and its ilk are worthless for any code work because they throw other stuff into the file if you're not careful).
I'm sure there are many shareware/freeware utilities one can find, but I use the command replacement TCC (Take Command Console) from JP Software which has a couple builtin/supplied with it. There's a trial version or a free version ("LE") that you can use at <tcc-le>
The screenshot I posted wasn't big enough to show all the way to Hex 200 and beyond; will try again...
OK, now you can see other data beginning at 200 -- so, I called 0:01FF the header -- you note the last digit of the date string rolls over to 0131; I was presuming the initial section could possibly be variable length and so they just padded to fill out so the data itself always began at byte 200.
Susan
on 16 Aug 2022
@dpb thank you so much for your detailed reply. I checked all the data set for different sampling rate and recording time and as you said, the data begining at 200 (or 01FF). Can we consider 0:01FE the header insted of 0:01FF? Does what I suggested make sense/matter at all?
Assuming the header is 512 bytes, does it make sense that each sample is 1.37 bytes?
Know that we call 0:01FF the header, is there a way that using Matlab I can get rid off this header and plot the rest of data?
Many thanks in advance.
dpb
on 16 Aug 2022
OK, I did look at the beginning of all four of those files -- indeed, they do all have the same footprint at the beginning, but the length of the initial ASCII data section doesn't change -- could one insert comments or other data, somehow, before beginning a recording, maybe? Maybe haven't exercised whatever it is that the apparently empty space is for, or maybe it is just empty space left as room for future modifications.
The 1.37 mean ratio is interesting -- that is consistent with my previous thought, the "obvious has to be so" that the data can't be longer word length per sample if there is, indeed, the amount of data in the file as is.
NB that 16/12 --> 1.33333 -- that would mean they've packed 12 bit A/D data into 16-bit words. Wouldn't be only vendor to have done; there was another case/Q? here on the Answers forum to decode such data here not all that long ago.
The file headers between the files are identical to the byte for the first 200H bytes except for the sampling rate and date string; there's nothing else between files that changes until offset 200H where data begins -- it's different between two cases so that is also a klew that there's not an encoded channel number or the like; it's just the data from then on. I'd say it's a pretty good bet it is 12-bits/sample packed into 16-bit words.
Who's the equipment vendor and its model number? It have a datasheet that indicates its data acq resolution, etc., etc., ...? I did a search for the string SE 20212
Walter Roberson
on 16 Aug 2022
I find a hint that maybe these might have to do with NIRx eeg
dpb
on 16 Aug 2022
OK, I found brouchures and stuff on it -- but there are absolutely no technical details about the device whatsoever -- never sell a data acq device into the industrial market without any performance specifications, but it appears this puppy gets by in medical arena without any. I dunno what kind of processes they might have to go through to release it on the market so maybe that covers it...
Anyways, thanks, but it turns out to be of no help in trying to reverse engineer the data files.
It looks like a case where the idea is it is "not user repairable" and so the end user isn't supposed to even want to look at anything except the prepackaged data processing/presentations.
Susan
on 16 Aug 2022
Edited: Susan
on 16 Aug 2022
@Walter Roberson thanks for your reply. Could you please elabore your idea? What is NIRx eeg?
Susan
on 16 Aug 2022
@dpb I'd like to know more about what you suggest, i.e., I'd say it's a pretty good bet it is 12-bits/sample packed into 16-bit words. I collected another set of data for the sampling rate of 1024 and different AD resolutions that are set to 8, 14, and 18 bits (attached here). Could you please kindly look at these data and tell me if there is any clue there?
Many thanks in advance.
Walter Roberson
on 17 Aug 2022
NIRx is one of the few systems I could find that uses .hdr and .inf files as well.
... But I posted that before I saw anything about the model number for the device, which leads us to a completely different manufacturer, https://edanusa.com/product/se-2012-12-channel-holter-system/ . Unfortunately I cannot seem to locate any information about the file format.
dpb
on 17 Aug 2022
Edited: dpb
on 17 Aug 2022
Based on the number of bytes in the file purely; as you computed it's close match to the number of bytes calculated needed to store 12 bits of sampled data for the sample rate and supposed time of recording for the 12 channels. I did miss the odd byte at 01FFH before, though, that would seem to make the header 511 instead of 512 bytes. That also seems somewhat odd, but the whole thing is odd and if one had the design spec in front of one to look at, it probably would make sense.
I've tried things like
N=12; % presumed number channels
fid=fopen('Data\DATA.DAT','r'); % open
fseek(fid,511,"bof"); % skip header
data=fread(fid,[N,inf],'bit12').'; % read data assuming signed 12-bit
fid=fclose(fid);
plot(data(1:1000,1)) % look at what think would be first channel
and all combinations of little|big-endian, signed/unsigned integers, linear addressing assuming interleaved or not, etc., etc., etc., ... and nothing produces anything at all resembling the traces shown in the vendor software.
I notice there's the item
EDAN Key=22
with a differing value in the various .INF files; I'm beginning to think these data files may also have some sort of encryption algorithm in them owing to HIPAA rules about patient confidentiality. Again, I have no way to know that; it's just a guess, but nothing have tried so far is at all successful in reconstructing the waveforms observed.
You may have run into the proverbial brick wall here...then again, maybe it's simple but we just haven't yet stumbled onto the magic cookie.
ADDENDUM
I don't suppose there's any way to generate an identical dataset, is there? Wondering if you were to be able to do so if the data files themselves would also be identical or if they would, in fact, also be different because the encryption key changed...
I've not looked exhaustively, does the key indeed change more or less randomly from run to run?
Susan
on 17 Aug 2022
@Walter Roberson got it. Thanks for the info!
Susan
on 17 Aug 2022
Edited: Susan
on 17 Aug 2022
@dpb Thanks again for all your help. Truly appreciate it. I've noticed the item "EDAN Key" in the .inf file as well. However, I had no clue what is about, and searching on the net and in their manual didn't help at all. Your guess gave me at least an idea that what it could be for.
Regarding your question, I don't think there's any way to generate an identical dataset, or at least, I haven't been able to do so. I went through all the collected data and saw that they all have different encryption keys even when I didn't change the sampling rate.
I think the key change more or less randomly from run to run, as it's shown bellow
% Sampling rate = 1024, Keys = 46,63,84,212,197,22,93
% Sampling rate = 128, Keys = 71, 161,169
% Sampling rate = 256, Key= 32
% Sampling rate = 512, Key 249
I also would like to know how the "Record gain" in the .inf file changes the amplitude of the signal. If I open and read the .dat file using the following Matlab code, the amplitude is so high for an ECG signal. Moreover, it seems that there is a repeating/redundant pattern in the data set and the length of the data is 4 times longer than the record time multiplied by the sampling rate, so by parsing the data into 4 sets, we get a more clear ECG signal (I have no idea if it makes any sense or not, just exploring :). I'm thinking maybe, they somehow get the data from 12 channels and then use the standard format for ECG signals to generate the outputs' waveform?!?
FidMain = fopen('Data\DATA.DAT'); % open
data = fread(FidMain,'int');
fclose(FidMain);
time = (0:length(data)-1)*(1/(samplerate*4)); % the length of the data is ~4 times longer than record time multiplied by sampling rate
figure;plot(time, data)
m = 1;
for n = 1:4:length(data)
time(m) = (m)/samplerate;
Data1(m) = data(n);
Data2(m) = data(n+1);
Data3(m) = data(n+2);
Data4(m) = data(n+3);
m = m+1;
end
figure;plot(time,Data1)
figure;plot(time,Data2)
figure;plot(time,Data3)
figure;plot(time,Data4)
dpb
on 17 Aug 2022
I don't see how you get the files are 4X as long -- just counting bytes we showed that there's only about 12 bits of data per sample based on the presumption of there being 12 channels being recorded???
The MeasInfo array isn't defined in the above code...where did it come from?
Reading the file
data = fread(FidMain,'int');
from the beginning ignores there being a header at all???
And, of course, when you presume the data are 16-bit integers, then the scaling is such the values are something like 10^9; clearly that isn't so in reality, either.
The plot images you've posted don't have any scaling on them; is there not any or are they simply considered by shape and such comparisons? Do you have the other analysis software to go along with the instrument to do more exhaustive analyses that I saw that apparently it can do from the brochure? Might that provide additional klues...???
Susan
on 17 Aug 2022
Edited: Susan
on 17 Aug 2022
@dpb thanks again for your quick reply.
Even though based on the user manual and device setting we presumed that there is 12 channel being recorded, I thought maybe the output is converted from 12 outputs to 4 outputs based on the international standards for recording medical data such as ECG. Just a pure guess.
I read data from the beginning and ignore "12 bits of data per sample" and that "there is a header"! (crazy, I know :)
I got the overall fig, attached, which shows x = 0: ~0.25 has nothing to do with data (expected that because we know there is a header)
the length of "data" is 42832 which is ~ 4*[128(Sampling rate)*81(record time)]. Why 4 times? No idea. maybe converting the raw data to standard form?!? Then I parsed data into 4 sets and got Fig 1-4 attached.
Regarding your question, there is actually a scaling on them, every 10 small boxes are equal to 1 mV. At least they answered this question :D and unfortunately, I don't have other analysis software to go along with the instrument to do more exhaustive analyses.
Could you please elaborate on this point that you mentioned above "when you presume the data are 16-bit integers, then the scaling is such the values are something like 10^9; "? If we go with 12 bits you think we get a more reasonable amplitude?
dpb
on 17 Aug 2022
Edited: dpb
on 17 Aug 2022
Well, that's simply bizarre, but will grant it seems to make for a more meaningful-looking signal. Of course, reading the data as 4-byte integers is what's scaling the magnitude to be 10E9 -- which is, I'm bound to say, almost assuredly NOT the scaling intended unless it's in nV or somesuch.
Also, the plot has a decaying baseline this way which doesn't seem as though that ought to be so, either...
Even to do this, though, you need to fseek(fid,512,'bof') first -- it looks like the idea of 511 for the header section is wrong; if you use it you get numeric values, but nothing like the smoother plot. Try that and I think you'll see even with the scaling issue what mean -- the early junky transient will go away and the traces will start from time zero.
The red line is with fseek, the blue from your code for the first subset.
Also note that in your loop you can get the same result by
Data1=data(1:4:end);
but it's much more efficient to say
Data=reshape(data,[],4);
which gives you an array of each trace by column.
I still can't reconcile that 128Hz * 12 channels * 84 seconds --> 129024 samples in a dataset whereas the total file size is 171,328 bytes with the 512 byte header so that 4-byte integers are only 42,704 total samples which seems to be back to the previous supposition about there being fewer channels.
I've no klew what to tell you -- the read data are indeed smoother with that assumption but leaves a lot of other unanswered questions as to what it means and why it works out that way.
ADDENDUM
How important is this -- is there any other way to collect needed data for whatever purpose? IOW, how much time/effort is it worth to try to actually figure out how this product works? Is there any budget/support?
I have never looked into medical instrumentation field so I've no klew about the details -- but, could you possibly build test input rig to replace the default electrodes? I'm thinking if you could produce a proper input voltage at matching impedance with a substitute signal generator that could input a known waveform shape and magnitude for a single channel wiith the other channels at ground, then you could have a known input that should be able to reproduce IF the device is actually recording the raw data itself at all; not just processed artifacts from the inputs.
Susan
on 17 Aug 2022
@dpb Thank you so much for sharing your thoughts and brainstorming about this with me. It was so beneficial to me. Appreciate it!
Agree with you that the amplitude of 10E9 isn't in reality. But still, I don't see how you get the parsing engaged with the amplitude when you pointed out "reading the data as 4-byte integers is what's scaling the magnitude to be 10E9". Could you please explain it to me?
You mentioned that I need to fseek(fid,512,'bof') first, if I use it I get numeric values, but nothing like the smoother plot. Maybe here is where they applied the bandpass filter with the values they mentioned in the .inf file?? However, I wasn't able to apply the bandpass filter to the signal. Could you please help me with that too?
And as you mentioned, I may need to find another medical recorder or way to collect needed data for our purpose, and really like what you suggested and gonna explore that next. Thanks for the suggestion!
dpb
on 17 Aug 2022
As in the above figure, those are the same data with/without fseek() it doesn't matter -- the following code duplicates the same results --
fid=fopen('Data\DATA.DAT','r');
data=fread(fid,'int');
figure
plot(data(1:4:end))
xlim([0 1000])
hold on
frewind(fid)
fseek(fid,512,"bof");
data=fread(fid,'int');
hL=plot([nan(512/4/4,1);data(1:4:end)]);
legend('No fseek','With fseek')
produced
from the first dataset. The gold/yellow is the result of the two overlaying each other exactly where the NaN values aren't -- I just didn't shift the shorter above to the length of the header "values" before. You can get the same effect without fseek if you just throw away the first 32 values (512/4 values total, 1/4th of those by the assumed selection.
Those are plotted against ordinal position; you can convert to time, of course.
What still doesn't make sense to me there besides simply the logistics of how this could be given the description of the equipment is what would cause the decaying exponential in the signal? Their software plots don't show any such thing do they -- at least none that you've attached have; I presume one of those was for these same data?
As far as the magnitude; that's simply that you're now reading a 4-byte integer that has bits set throughout all four bytes -- that's going to be a big number --
>> dec2hex(123,8) % what a smallish integer is in hex
ans =
'0000007B'
>> int32(data(1)) % our first data value as integer
ans =
int32
1201489066
>> dec2hex(ans,8) % and what it is in hex
ans =
'479D44AA'
>>
That's the byte sequence in the file neglecting endianess; you'll see those are the bytes in the file itself...
>> frewind(fid) % go back to beginning
>> fseek(fid,512,"bof"); % get that first value location again
>> dec2hex(fread(fid,8,'char').') % and look at the file content first eight bytes as char
ans =
8×2 char array
'AA'
'44'
'9D'
'47'
'5F'
'1C'
'E3'
'16'
>>
BTW, the fseek back to 512 instead of the 511 we had thought before works to match your reading without because you're reading as four-byte integers so it has to be a multiple of 4.
That's where again, this doesn't really make any sense when looking at the raw data files because clearly there's a value at byte 511 in every file that isn't the same for any of the files so it isn't some sort of channel marker but must be part of the data itself.
You can/will get smaller magnitudes by making other assumptions about word length because the maximum magnitude an integer can hold is based on the number bits...0-2^N-1 for unsigned, half that if signed. If you revert back to the idea of 12-bits that seemed to hold based on the size of the file, then the max value would be 2047. From the file
>> frewind(fid)
>> fseek(fid,512,"bof");
>> fread(fid,1,'bit12')
ans =
1194
>> dec2hex(ans)
ans =
'4AA'
>>
So, then you'll always have values in that range -- now what the normalized range for a normal trace would be I've now klew...
If you build a test rig, the first test will be to just put in a DC value..."keep it simple...."
Susan
on 18 Aug 2022
Edited: Susan
on 19 Aug 2022
@dpb Thank you so much for your time and effort. I appreciate your detailed response. I'll build a test rig and keep you posted! Thaks again
PS. I forgot to answer your question regarding the decaying exponential in the signal. You're right, their software plots don't show any such thing
Susan
on 19 Aug 2022
Edited: Susan
on 19 Aug 2022
@dpb Hi, I found out some new info that would like to share with you and see if you have any thoughts on that :) I also heard back from the vendor that they can’t support us on this :D Anyway, the file is attached here. Many thanks in advance!
dpb
on 19 Aug 2022
Well, it's of some help/confirmation -- it confirms the 512-byte header, but leaves the content of the header undefined for the end user as vendor-specific content; and we don't know the content except for the few ASCII bits reflected in the corolllary .INF file.
It says the subsequent data are 16-bit signed integers which is some help; but, I've been unable to find a matching arrangement using 'int16' that seems to produce meaningful-looking ECG data traces; we're still hung up on just how many traces and the organization of the trace storage when it was written in the file.
And, that leads back to the Q? before about how many bytes are in the file past the header and the sampling frequency and number of channels.
> !dir Data\DATA.DAT
...
08/11/2022 03:31 AM 171,328 DATA.DAT
1 File(s) 171,328 bytes
>> (171328-512)/2 % data bytes/2-bytes per sample
ans =
85408
>> ans/128 % how many seconds all those samples would be
ans =
667.2500
>> ans/8 % assume 8 channels about matches what
ans =
83.4063
>>
>> type data/DATA.INF
...
Sample Rate=128
...
Record Date=2022-08-11
Record Time=02:29:46
Finish Reasons=Manual
Stop Date=2022-08-11
Stop Time=02:31:10
Time Passed=00:01:24
>>
So, let's give 'er a go...
fid=fopen('Data\DATA.DAT','r','l');
fseek(fid,512,'bof')
data=fread(fid,'int16=>double');
data=fread(fid,'int16=>double');
>> whos data
Name Size Bytes Class Attributes
data 85408x1 683264 double
>> 85408/8
ans =
10676
>> 85408/8/128
ans =
83.4063
>> data=reshape(data,8,[]).'; % what says would have to be to match time
>> plot(t,data)
>> xlim([0 5])
That looks like
That looks at least somewhat reasonable although I don't know about the negative counter-peaks??? Just one or two to not clutter it up
Those look at somewhat reasonable, but there's still the issue about how many channels really were recorded. If I presume the arbitrary 12, then there's only enough data for 55 sec or so and the signals are obviously not right, either.
Susan
on 19 Aug 2022
Edited: Susan
on 19 Aug 2022
@dpb Thank you very much again for your detailed response. Appreciate it.
Since you've been unable to find a matching arrangement using 'int16' that seems to produce meaningful-looking ECG data traces, I think perhaps it's what you suggested before; i.e., packing 12-bit A/D data into 16-bit words? and as you mentioned we're still hung up on just how many traces are written in the file. To me, your assumption of having 8 channels makes sense since they mentioned about 8 channels in the header (I, II, V1, ..., V6) and the document says that there are 2 bytes per sample. So, I go by the assumption that there are 8 channels, however, I still don't understand why is the number of channels fixed on 12 in the device. Why their software does provide me with 12 waveforms, each for one channel? What would cause the decaying exponentially in the signal while their software plots don't show any such thing? Why do we need a band pass filter to the data? And what is the y-axis unit? ... as you said it still leaves a lot of unanswered questions.
dpb
on 19 Aug 2022
Edited: dpb
on 20 Aug 2022
"unable to find a matching arrangement using 'int16' "
Sorry, that didn't come out precisely way had intended -- I thought I had tried 16-bit (in fact, I'm sure I did, but I'll bet I was still hung up on the idea of the header being 511 instead of 512 bytes; presuming that oddball byte at offsett 01FFH was data).
I had thought possibly about the same thing re: the 8 channels; there's also that string of eight 2's in the header that I wonder if aren't the gains for the number of channels recorded that's perhaps a clue. But, it's just a guess.
With the offset to 512, one gets the above traces which look like real data (is a time scale realistic for whatever was the subject/source of the data?); the decay pattern is an unknown for sure; just don't know why that should be.
As far as the number of channels, maybe there were/are versions of the device with firmware embedded in them that only utilize some lesser number of channels than the maximum the hardware can handle? Or, maybe some of the leads aren't/weren't functional and it has internal logic/signal quality detection software to recognize unused channels? Without a detailed users manual that describes the operation of the device, you're left to try to see what it does.
The magnitude of the data is known and is about the only thing that makes any sense at all based on the documentation you provided -- it's recorded as 16-bit signed integers and those by definition have the magnitude of -32k to +32k which is what you get. All the scaling factors to convert that back to whatever was the actual recorded inputs or processed data that were written to the file is terra incognito -- we just have no way to know.
Again, unless and until you can design an input test device and put some known signals into the device channel by channel with known waveform and level and see how those are recorded, you're pretty-much stuck where we are.
I've yet to go back and try to figure out why the 32-bit assumption before also looked very much like the above traces; that's very bizarre result on the face of it, but it has to be because of the spacing of 16 versus 32-bit values that just makes them be consistent. But, I've not sat down and tried to decode the magic encoder ring to see just how/why.
But, I don't know the source of the document you found; unless it was from the manufacturer of the instrument and refers to the specific instrument, I don't know that just as the header description gives leeway to the vendor for use as see fit that they couldn't just as well aribrarily use 32-bit integers instead of 16-bit as the document states. Unless there is some industry-wide standard that all medical devices must follow.
Susan
on 20 Aug 2022
Edited: Susan
on 20 Aug 2022
@dpb Thanks again for your response, for sharing your thoughts, and for your suggestions. These are really useful to me. Appreciate it!
You mentioned "there's also that string of eight 2's in the header that I wonder if aren't the gains for the number of channels recorded that's perhaps a clue. " I really like the idea, so I recorded some data with different gains that gain was adjusted to 0.5mV = 5mm/mV, 1 mV = 10mm/mV, 2mV = 20mm/mV (attached here) and checked the headers. It turned out that the string of eight 2's in the header shows up in all of them but in the header, there is a string of "10 110 <Record Gain> <HP Filter> OFF <LP Filter> 22222222...."
I checked the user manual of the device and didn't find any useful information regarding the output data. Regarding the document, here is the source
but there is a complaint that "There are international standards for recording medical data, including ECG data. Indeed one has the Holter name associated with it, namely the Holter ECG Standard, clearly they are just paying lip service to the idea of international standards if they don't even support their own format as an export option."
dpb
on 20 Aug 2022
You could start a test matrix of making a change in each parameter that can be modified similar to what you've done so far with sample rate and just done with scale factors and see what does change in the header for each -- that would let decode as much as can find in the header.
Back on the thing about channels and IDs and all -- is there something different about the first two channels in that we've noted the two "I"'s before V1 thru V6? Do they have either a different input sensor or specific purpose different than the remaining?
Also, can you disconnect individual channels from the input and collect data? If you could isolate each channel in turn with a one-channel-at-a--time input, that would confirm for sure just where data are stored and that we're decoding the same channel across time. The traces look continuous so one presumes are, but that would be a way to confirm. That, if were not sequential as we've assumed, could have some bearing on the decay appearance although that it seems so smooth just doesn't make that seem likely...
Susan
on 21 Aug 2022
Edited: Susan
on 21 Aug 2022
@dpb Good suggestions! Thanks. As you suggested, I started a test matrix of making a change in each parameter that can be modified. Having the same sample rate and just by changing the gain (scale factor) the header changes as bellow
I noticed that if the gain is less than 1 (i.e., 0.5), it shows up at the exact value we set on the device (i.e., 0.5), but if it's above 1, then it shows up at 10 times bigger, i.e., set the gain as 1 (resp. 2) and in the header, it shows up as 10 (resp. 20). shall we divide the magnitude by the record gain to get the raw data amplitude?? I also don't get what the fixed values of "10" and "110" are that show up in the header, before the record gain value, and why they don't change regardless of the sampling rate and record gain values.
I'll add more parameters such as filter parameters to this test matrix and see what does change in the header for each.
Regarding your question-- is there something different about the first two channels in that we've noted the two "I"'s before V1 thru V6? Do they have either a different input sensor or a specific purpose different than the remaining?-- I don't have a medical background either, but what I know so far is that channels I, II, and III are outputs of electrodes that are connected to the arms and the left leg while channels V1-V6 are the output of electrodes on the chest. Based on the output of channels I, II, and III we can calculate the waveform of avR, avL, and avF. I was hoping to have access to the output/waveform of the first 9 channels and then calculate the rest 3 based on some of the outputs. Still don't understand why channels I and II show up on the header and not channel III. And why 8 channels and not 9 channels?!?
I'm able to disconnect individual channels from the input and collect data. Haven't done this yet, so I don't know if I'll get any data if some of the leads are disconnected, but it worth a try. I will do that and let you know what the results look like.
Thanks again for all your help!
dpb
on 21 Aug 2022
Edited: dpb
on 21 Aug 2022
I don't know about the 110, either -- does the instrument use line AC power? I wondered if it were somehow related to that, maybe, but again, just a guess.
OK, that makes sense about three "I" and the 6 "V" although one would think they would have also numbered the I channels.
I'd really like to know what that string of "C" and "F" prior to that represents -- I'm guessing it has some useful bearing on interpretation or it wouldn't be there, but I've no klew as to what that might be...
Be sure you also compare to the .INF file going with the .DAT file of the same collection -- that will also help confirm "who's who in the zoo". I'm pretty sure the "0" in the "20" you circled for Gain above is NOT associated with the gain but is a leading 0 in the HP Filter corner frequency 0.05 -- note that it is written with the leading zero in the .INF file while the LP corner frequency of 60 is written as integer. I don't know what the "OFF" indicates; I presume there's probably some other optional filtering/shaping parameter that can be either "ON|OFF" that hasn't been fiddled with yet (or may not be implemented on the particular device you have but is an option on others, perhaps, but the firmware has the code builtin for it if present. Who knows, just guessing...but it's cheaper to have just one firmware package and code it with supplied inputs to ignore unavailable options than to have to support different packages for every possible configuration.)
Susan
on 22 Aug 2022
Edited: Susan
on 22 Aug 2022
@dpb Thanks again for your comments and suggestions.
I've collected more data (some are attached here) and here is what I observed. I'd love to hear your thoughts and feedback on this.
1- As you suggested, for all of the collected data set, I made sure to compare the .INF file going with the .DAT file of the same collection. The info in both files were the same (at least part of I can decode)
2- I started a test matrix of making a change in each parameter that can be modified such as "sample rate", "Record Gain", "HP Filter", and "LP Filter". By changing the values of <Record Gain>, <HP Filter>, and <LP Filter> on the device, the value for these variables change in the header as we found out earlier, i.e., "10 110 <Record Gain> <HP Filter> OFF <LP Filter> 22222222...." ( BTW, thanks for the note! you were right when you said "I'm pretty sure the "0" in the "20" you circled for Gain above is NOT associated with the gain but is a leading 0 in the HP Filter corner frequency 0.05" ). NOTE: Except for the value of "sample rate", "Record Gain", "HP Filter", "LP Filter" and "date string", NOTHING changed in the header. the 10, 110, strings of eight 2, and strings of "C" and "F" prior show up in all the files :(
3- I disconnect individual channels from the input and collect data. I disconnected each channel once at a time while the rest were connected.
Nothing changed in the header at all. the channels I II V1 ...V6 still show up.
I observed that when I disconnect each of the V1 to V6 channels, the output waveform of all the channels, except the one that is disconnected, are almost the same and the disconnected channel has a constant output value of 3000 as it it's shown in this figure (this is for the case V6 was disconnected but it's the case for all of them, i.e., V1-V5 be disconnected). Note: in all of these cases the software is able to calculate the number of heart beats.
Then I disconnected LA lead (Left Arm/channel I). At their software only II, III, aVR, aVL, aVF have waveforms and the rest, i.e., channels I and V1-V6 don't have any waveform. Again the channel I and V1-V6 have a constant output of 3000 as it's shown here (the software is still able to calculate the number of heart beats.)
By disconnecting LL lead(Left Leg/channel II), their software shows the waveform for only channels I, III, aVR, aVL, aVF and the rest of channels, i.e., II and V1-V6 don't have any waveform as it's shown below ( the software is NOT able to calculate the number of heart beats and returns 0 as the # of heart beats.)
When I disconnected RA lead(Right arm), the output of all channels are empty and I get this.
when I disconnected the RL lead (Rigth leg. Based on the manual it is the reference/ground!!!), all of the channels have waveforms to display at the software and the software was able to count the number of the heart beats.
Susan
on 22 Aug 2022
@Star Strider I'd love to hear your thoughts on the above figures too. Does it make sense at all to discount some of the leads and collect data? I'm sure your medical background can help me to underestand these results. Thanks in advance!
dpb
on 22 Aug 2022
The point there is nothing at all about the data itself -- only to find out where in memory it goes when we know precisely which channel is being recorded.
And, if we can set a fixed input signal magnitude and known gain, that's all the better...
Then, finally put in a known sine wave of known frequency and magnitude and you can answer the question about whether you have raw or filtered data only if you vary the frequency at/near corner frequency...
Susan
on 26 Aug 2022
@dpb I just wanted to thank you again for all your help. I finally found out where in memory the data go when we know which channel is being recorded. I have not been able to try a set of fixed/known input signals yet, but there was some progress there!
I've got another question for you and hope you can help me with that too. I figured out that when a channel is discounted, the output would be 3000 (still, I don't know what the unit is on the y-axis). Based on their manual, there is a +_300mV DC offset. Any idea what would be the y-axis unit?
Many thanks in advance!
dpb
on 26 Aug 2022
If our presumptions were correct, the orientation in the file should be sequentially in time for each channel -- so if you have a channel disconnected, its constant signal should show up as every 1:8:N values if our assumption that the channels are multiplexed is correct. This appears must be so given the flat line in your plot, but would be good to visually inspect the layout directly to be sure.
A 300 mV DC signal at G=10 counts/mV would output 3000 counts.
That then I presume is with an open input channel? What if you ground the unconnected channel(s)?
Susan
on 27 Aug 2022
@dpb Thanks for your quick response. Appreciate it. When I knew that only one channel was recorded and the rest were open input channels, I got a t*8 matrix that only one channel had data, and all the rest values/matrix entries were fixed to 3000.
You're right; it is with an open input channel. I haven't grounded the unconnected channels yet, but I will.
Then, if I assume every ten units (or whatever) equals 1mV, then how to interpret the 2*10^3mV of ECG's amplitude?
Answers (0)
See Also
Categories
Find more on Text Files in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!An Error Occurred
Unable to complete the action because of changes made to the page. Reload the page to see its updated state.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom(English)
Asia Pacific
- Australia (English)
- India (English)
- New Zealand (English)
- 中国
- 日本Japanese (日本語)
- 한국Korean (한국어)