Click here to monitor SSC
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


Binary Files Import and Export


Binary Files Import and Export

Author
Message
joe-549674
joe-549674
Forum Newbie
Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)Forum Newbie (3 reputation)

Group: General Forum Members
Points: 3 Visits: 35
How to I extract binary data greater than 8000 Bytes (varchar(max))? Thank you for any help you can provide.
sergey.benner
sergey.benner
SSC Veteran
SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)

Group: General Forum Members
Points: 210 Visits: 164
Robert (8/28/2008)
I'm also having trouble implementing this without corruption of the file after it's undergone a round trip. I am importing a text file using OPENROWSET and as far as I can see that arrives in the varbinary field perfectly. The query:

SELECT DATALENGTH(FileData) FROM TestFiles

returns a number exactly equal to the test file size.

However when I output it back to a file using the options you specify for bcp, I get a file that is 4 bytes longer than the original. The 4 extra bytes are right at the beginning of the file before the expected data starts and are as follows (in hex):

B5 42 00 00

Any ideas?



try to remove -N in the bcp queryout.
sergey.benner
sergey.benner
SSC Veteran
SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)

Group: General Forum Members
Points: 210 Visits: 164
josephstran (8/28/2008)
How to I extract binary data greater than 8000 Bytes (varchar(max))? Thank you for any help you can provide.


varchar(max) != varbinary(max)

The varbinary(max) can store upto 2GB data.

You can export the data using the bcp command.
I've written an example in the article. It will just take awhile if you want to import/export
big files.
Bala'
Bala'
SSC-Addicted
SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)SSC-Addicted (446 reputation)

Group: General Forum Members
Points: 446 Visits: 620
sergey.benner , I tried with the single image file as you specified ,, still the image was correpted .. Is there some thing else we need to check ?

Sample code
CREATE TABLE data(data varbinary(max));

INSERT INTO data(data)
SELECT * FROM
OPENROWSET(BULK 'D:\Bals\Potos\Bals\BalsGettap.JPG', SINGLE_BLOB) as f;


declare @cmd varchar(512);
SET @cmd =
'bcp "SELECT data FROM test.dbo.data" queryout D:\Temp\01.jpg -T -N';
EXEC master..xp_cmdshell @cmd;

DATA

0xFFD8FFE000104A46494600010101004800480000FFE101F845786966000049492A000800000006000F0102000E0000005600000010010200060000006400000031010200280000006A00000032010200140000009200000013020300010000000200350E6987040001000000A600000000000000536F6E79204572696373736F6E004B353530690052314B473030312020202020707267435843313235303636395F47454E455249435F4C20302E3000323030383A30363A32312031323A33353A35340015009A82050001000000A80100009D82050001000000B001000027880300010000006400B6000090070004000000303232300390020014000000B80100000490020014000000CC01000001910700040000000102030004920A0001000000E001000007920300010000000200000008920300010000000000000009920300010000001000000000A00700040000003031303001A00300010000000100020002A00400010000006006000003A0040001000000C804000001A40300010000000000584002A40300010000000000000003A40300010000000100000004A4050001000000E801000006A4030001000000010000000CA4030001000000030000000000000001000000200300001C0000000A000000323030383A30363A32312031323A33353A353400323030383A30363A32312031323A33353A353400000000000A0000000000000064000000FFDB0043000503040404030504040405050506070C08070707070F0B0B090C110F1212110F111113161C1713141A1511111821181A1D1D1F1F1F13172224221E241C1E1F1EFFDB0043010505050706070E08080E1E1411141E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1EFFC000110804C8066003012200021101031101FFC4001F0000010501010101010100000000000000000102030405060708090A0BFFC400B5100002010303020403050504040000017D01020300041105122131410613516107227114328191A1082342B1C11552D1F02433627282090A161718191A25262728292A3435363738393A434445464748494A535455565758595A636465666768696A737475767778797A838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE1E2E3E4E5E6E7E8E9EAF1F2F3F4F5F6F7F8F9FAFFC4001F0100030101010101010101010000000000000102030405060708090A0BFFC400B51100020102040403040705040400010277000102031104052131061241510761711322328108144291A1B1C109233352F0156272D10A162434E125F11718191A262728292A35363738393A434445464748494A535455565758595A636465666768696A737475767778797A82838485868788898A92939495969798999AA2A3A4A5A6A7A8A9AAB2B3B4B5B6B7B8B9BAC2C3C4C5C6C7C8C9CAD2D3D4D5D6D7D8D9DAE2E3E4E5E6E7E8E9EAF2F3F4F5F6F7F8F9FAFFDA000C03010002110311003F00FB228A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A00439A39A0E4528A04146051450160A28A28181A6373DE9C466984E3B53444FCC380291473D39A00001269FB453B892EC35453B6D3BA519A5729450981499029D4D2DCE2840D0983D4534E7BD297E38A664F4F5AA4896BA08C0134000F03B521E7A9A369EC6A81590630734D6503B8A7BB7A0A818B669A4D8DCAC3C91EB49B80A8F3918A463DAAF948E7B8F6618EB5116C8EB4D3DE8FBB54958C65AF41E18FAD3C3F3C5459C74A01EF458CDB68D5A28A2B90F4028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28271400514526680B8B45213406A057429A61E4D04E6940CD321EAC0AE6940C0A318A3340D590B4D27B51BB34D6E09A12072D00F1DE9A7F9D2E7D6838E9544DF4D06F02902E7A53B6669E8B8A2F605A82A83C9A52052E297153734217CE7DAA364DD565803DA98E2A948968A8C9C734C618A9D87351B8AD5325DAC46429A4E00EB4E20E29879EB568C64EDD3413DE8EA68DA7B76A09C77AA32927BA35A8A28AE23D00A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A28010D18A5A2815829314B46280686914DF6A56534801AA464F71D86EF4138EB47347348A1738A6B35385230A10DA7601484F6A4E7D2940A64DC300F4A50BCF4A5C52D2B96A21451487D290F6168A4CE29AC79EB4EC0E561C69AD8149B8E28273C8A76239AE46C33DEA261CF152914C20D6898AC42C3E5C1A6818ED5330A8C035A2666E1695C6F238F5A6F434F38CE29B8CD3429479BD0D4A28A2B90EA0A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A422968A04D5C6D213CD29069B83D73548CDDC76E00D1D68C66940A43B3169334B498A45EA2D151E185196A76239FBA1E78A6E7149462989BBEC2E41EF41C1E945078A013108C71499C1A5C1CD1823A9A621AC3918A61EA40EB4FEB9A4E829A288CF039ED4C622A522A323D2AD086118E8299D2A6231DFAD33192702A93279743428A28AE6370A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A439A5A2801A39A75145024AC145145030A28A2800A69F4A752114D13242714629086A701EB412B50C51834BD293AD22831EB48C05193464D317321081ED4D217A66826949CF4A624C888E69081D734F20F534C22AD05EDA8C66C8A8FA74A940C75A423A55A643B6E8BB45145739B851451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140084D3777AD29E6936D523295FA06E349CE68C1A4C9A09BBEA3D4F34EA664D282691698A69B839C53EA3734209596A07A5264D20C52E07AD5109B631B3D475A767147414D39C6698EED8B914C39A7F38A6B648C0E29A26CC6D31CE29C3764823A743EB48C33DEA90D6DA9768A28AC0DC28A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A4CD2D02B8514868CD017168A05140C28A28A0421A4CD2E6931CD325F909F31A3A76A700450541A2E2E5633AF5A5040A7600A08068B859A13147D28C134A06280498829714B45172AC30A0A6ED2B52D145C4E09EA573D7AD254CE3350BA76AB4CCDAEE286038A339E29B8E3EF5274A761293E83DF1D00A638C36690B13C03413FED534AC5F42E51451589A85145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051914119A6E281362F5A4E941A4A64362B11EB4DDC69F806985714D132BEE8706CD26EC534350DC9CD16173E8480E696A35E2A41CD26691770A28A29160690002968A0560A28A28185145140051451400879A8DD58F5A968A69D89947991576766A61016AE1519CE2A368D719C55A999BA7656457148DCD4CE9509073569DC949AD0BD451456074051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005212052D260502619CD26297146298AD71B4DF6A9319A6ECE69A666E2C45C014A49A3A51CD00B44282475A50C29BDE93068B0F99A1E0E6969838EB4BBD477A56294B4D4519EE2969010696914828A28A06145145001451450014526E14849A64B9211D411519522A53D69BD7BD34C86494514549A851451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140828A28A061474A28A0029314B450026050714B49D282442334D2314F1D686A7725C534479029EAC2908A01029EE4ABA6296029A5C9E94312D400451642726DE800B77A0F14B4A4503B0C07DE94B52F1E9460502498BC52628E6978EF41418349CE734AE38A45E94075B0FA28A2A4D428A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A002908A5A280100A5A28A02C028A28A0028A28A0028A28A004A4A773498A09B0114829C293834C2C21E39A69C9A56269A0134D19CB7B0ABBBBD07239A51F2D28E68B828DC6A63AD2B102976E29085EF4059A560073D29C053576F6A539F4A435B6A2608EB41228CD27B1A626494514549B0514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514001A4C52D140AC145145031BB6971412052839A64D9084034018A5A290EC808CD3768E94EA280B20A3145140EC376D0578A7514EE2514828A28A430A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2801A57E7DC09CE31D78FCAB2AF35D8EC2DA192FED6E236925F2F11C65C0C1E4920703BD6BD67EBB3DEDADAA5D5940B71E53832C44E0B277DA7D69A024B7D4ADE6B97B6F9D25538C30E09F407A55879A2495226701E4CEC07BE3AD719E3D377A6CB67AD6957C90195D6392DA43859723E52076619EB5CEEA373A9E83036B56BAF869A62B1CD6E50B46BCFCA70470793C8A3416A7ACD61EA1E24B7B3D4E4D3DEDA6695177023A3579A5BFC46D2AEF58D3964F105FC06585967893E6447527907B935C7F8AF5CFED2D62686C75092EEE1660629F79562A4743E878E950E6A3B86FB1EF3A2F892DB56D49ECED577346BBA5072AC80F4383DBAD6EEE5CE322BC97E14699ABDFEBD2EB7AB6AB9BB8E11198D540678CE70C7F2EB5E9BA669A96334F2ACF34A66393E61CEDF614D3BAB822F514514C61451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451542F355B5B76DB9F31B383B7A0FA9AA8C5C9D909BB17E8AE765D72E58304112678538271CD1FDBB70587CB1000F39079157EC9F744F39D15159306BB6CCA3CE478D89C70370FCEAF595EDADE2B1B6943EC3861D083EE2A5D39475686A699628A28A82828A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A8E59A389599DC0DABB88EE07AD64C5E23B393536B30ADB40C897236E7D3D8D006D532576400AC4CFF00434C37500BA16A6451295DE173D4543A95CAC4890798F13DC652395577056C719A6055B9D7ACEDA2496E1268A332796E5D08D9EE7FD9F715CDEB9F1234FD3F528ADE0B67BC809024951B1B72700FD2ACDF2D95C68F73A5EB0975773C2332472B051216381B1B1C83D4570375E0FB98B4B6D4ED629E11E61CA32F983603EA3A7FF5EA66DA5743567A1D2E9474FF001378E277173772416BF34313A8D8091C37B8F7AED3C430592E9122DCBDB40ADC09648432A9F523F0AF28F04EA56BA1EA8D25CDDB5BC7215433852C00CF461D80CF35AFF1C6E20D474745D275BB35B9B593F7D179C0EEDC06D040EBF854C6A73C79897A3D4F3EBFF0BC4FE339C4212683CEDC6684FCA3D7141D0BCAD712E95A39ADC657CBF2F1B8F639EC45417D2BD9C443DBC96B77204F35639B721207622AB69DA96B12C92D9E9E1E69593CC214E7A7438AF0AACAA54AAF95DCD53BA3AED1F579741944904D249741CE15C9257FD9FA7B5741E1BF177881ECEE2E6EAE616D8C728CD9C67B0FA5737E0FF0CEA9AAEFBE9EF6D922D8CC5D948FDE0EA0F5E79E958F178635D36F25E69D2092DE3665781490739FBC33D41F5AEEA54F1518DAE4DA2F547D2B451457A4485145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051485940C9603F1A805ED99CE2E61E0E3EF8A6A2DEC2BA2C515035DDAA8C9B8887FC08544DAA58A923ED00E0E0E0134D424F641CC8B94567CBAC59A74323F19F950D42DAE5B8FBB14847BE0557B29F6173235A8AC83AF5B820793274CF38AAB37882563FB8B650BC72E7342A520E74742480324E0555B8BFB481B6BCCBBBFBA3935CBDFEA17173216925609C6114E07155C484F434F9631DD85DB35756D564B8061877469DFD4D63CB2045E0F34D9A50BCF24D42E4B9C9A7CCED65A2159751EB2168CF393DE9DB8E324D40ACA067B54892A1601DB683DE8B76024663D01A239E48F98E4656030194E08A866383F29C81DEA30E72722AA2DA0767B9B967ADDE4520DCE24880C156EBF9D6D586B56772423379321FE1723AD713BF0319A709071BC679C834DF2CBE25F7116E5F84F47041190734570969A85C5A8090CCEAA3A0CE715A56DE20BB40A25114A32324FCA6B374AFB32D49F54753456143E25B5326D9A09635E06E0370CF7FC2B66DA786E6159A091644619041A994251DD0D493D0928A28A82828A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028AAFA949710D8CD2DAC42599572887B9AF30D13C633DAF8CD2D7519EE24498334C482628471DFB629A570E973D5EA3B9595A1610C8237EC4AE6ABDE6A305B4D14721016552C242C02E07BFE22AC2BA04F33CD0C8DC862463F0A2C06078A63BCD43478AE7498945DE76891B21914901C7E9D0D7137BF0FF51D50DCDD7F685D5A48ADB25485C666C7A7BFF3AF41D5F5FB4D2F55B2B2BA8E454BB572B381F229500E3F1CD66685E27D2EE7FB4EEADEF22911663B536ED6C8E0D26BAB0BD8D5B2D0AC63B5804AAF35C47108C5C49FEB318F5A8F51D2640239EDE69A53064A42EDC1CF5E6A0D2FC469A8F9296412672C525590943C771C60E47F2ACEF15EA9090D21BBBBD32EAD98AC6EAD94901E390293924AED8F7D0C0F106B7A847E2B821D554269B748BB4A387F2587DF5E3A11E87A54B14F142352D76CBC453B5BDA031C509202B0E9C03D4E2BCD3C4DA8C5A8EA0CBA9EACD1DD4A772BAF1BDC70791C74A8AEFC4F756FA05C59398AE23046F0E9861FED67BE6B8DE362AF61B85F4269358B58A5962775B8469199770C1C1FA57297505BDDDF3C49716D144A3CDC31DA64F5159977A93CB7892A5B7D9C13909CE0A7AD5CBFFB0DCCC6F8BA5B98E3DD8C9E4F4C66B91AA949B937B9492DD1D9695E1E935791E3D2218E39A10AC219A7D81874E09EBDCD6878574BD174EF19EAA9753246F04254C104C5981F40476CF35E7971E23BBB885608A4F2E4886D1839E054DE09FB743AFCD7F706E6CE2703CE9847B80FF68E3B7BD74D1F674F5B6A44948F77F0BF8A6DECF5B8F49B7F0EDCC5A45CB6DFED0900F9A5230C48EB82DC73F5AED6F45A5D24D676CD044E9F7D87CBB7F2AF9B351D47573A9CB1C37771731A4A08489880D8E879AF49F06F8E2D1AE223ABCE13670E7691B9BAF3EA6B5A38C8556E2F7138CA2AE7B0D14515D4014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145516D5F4F0EC9F694254E0E39AA77FAF4512916F1348D8382DC01E95A2A337D08F691EE6D515C84DADDFCA0AF9A91E7FE79AF4FCE9875CD43767CF195C7F08209F7156E85B76839FC8ECAB075ED50E4DA5A3F3FF2D2407A73D3F4ACBB9D76F644C6E00918F94607E5594F34996207524FE74E3051D5BB89C9B340CA71966CF7E4E6A19AE187CC0F00D50F3DC039638349E6EEEAD57CD2DEE4BB3D2C5E5B9CE304E2A58E50CF9E73594F291D0F4A7DB5CBAB124E7352EEFA8D1AC5F68C91F8D359C311C5561705931BB23AE297CF0318AC5F375344D741D316FBCD90A0D42D38E8849FAD365B8DF9504D320211B77522AAEEDA93A5F425058E73DA8329030053410F9C939CF02A37043E715298F615D8B7534348027D3AD44E5874A8DFA65BAD68ACD0B51CCF9E053964DE36E06477EF55C1CE29C4953C1C71571EC4B5D4D0478CC401FBD50C8063703551A420039EB4E8652A30DC8229726972AE4B93BBDA9DB8E318A8C383C8A5DC30303352F405707048F94E0D344AE980E7EA6A51C7350CA0370073427D02C49F69C103391576CB5096DF06095A3607271DFEA3D2B199598E00A50ECAF824D5A27D4EEECBC450B205B88D8381CB2F43532F882CF700E92A82719C6715C3C7700285EF5209C16C6ECD4DA1D506BB5CF4582F2D678C4915C46CA7907754914B1CB1892275743D0A9C8AF3769CF23352417D3DBA816F2B43839F978A3D942DB8F9A47A3D15C758F892E6263E71132E3A74C7E35B561E20B0B956DEC61653821C601FA1A87465D351F3AEA6BD148AC1802A4107B8A5AC8B0A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800AE51BC37168DACDC6B7A32307BA655BCB773BE39549E4AE79561D7D0D7574534C2E606B57505ADEE9F70DA7BCB68A5A292409F2C218704AE338C8038F5AD2B531DD4332ACD04D6CFF002A88F1F28E8454F2C4CD324A2571B01F901E1BEB5424863BE86592C5CD9DDC7211E60419DDFED0EE0D3E80CF3CF12697A743E2CB5D3A7D42F27B45CCAD117DBE58E0100D61FC43D122D0F598E4D02D8A413C7B8CDE76E52DC9271D88AED6FA6B5B4F18E9535E69AB35CCB04AB24A13219FA0C7AE78FCAAE595BDBEB1A64B7422B74B73293E43AE08C13F2FB5454A7CFB8EE96E79A687A678AA28A1D627BE8D74E2C4F120E173C9C75FC6B4FC75756322A7F665E25CCAB1E4E641C9EE2B5AFED574F82C56C34D92CED2E256F2D11F7AAFFB3CF51EDEF5CCDFCAD1FDA55ADB4E8DA7629B9A2F998F6FA11ED58D4A768D812B3BA38092E7CD91D05A090A9EC79CF5CD516D49E2D64068633192418E424E056CC769A747A9C4D732CB0A99489445D8566F88B4AD2F4E3E6DBDE4B78E58BEE64D848CFB7B579335ADADF81A28DF73A5F0A6A9632C137876FB4FB1D5A29D1BC804E248475383D80FD2B92BF934EB6BFF00ECFBD3F667924D8AC53775E878EDEF577C0D7BA3C53BEA7752DBDBB85317CA9FBC3C1EE2B9DB0B3D22E35C927D424B816C57F77245265E33DBAF6AF47DC70B493BA46715CB7B1D0CBE178A192332481084F9823647E95D5787F58D46381E1B09EDE080030B34A8338E9DFAF7AE72CF5092E64B58EDEE6DA4891B6BC97276E07A923B57A768674BD474DD62D750B7D16E6530036EF6E03ACEA0FE8E31F8E6B0A34A73B393D3A04A7A599837DA5F87AC20934F6D744F7D2B8F2D620002319FC3154F53D234CD23C2714F06A32497171336F89DF38F4C7BD4B3F897C269E1816B0F87962BD12953394DA4E3BE3FCF4AF3CD5F5BB4B9B297F77BB1D101E8FF00D0D6F2A714F44C13D5267DA145145760828A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28240192702800AC0F126AA23CD9451970EA448E0E00F6A8B5BD7239237B5B46719CAB4806391C715CF4D26F62C58927A93D6BA21050F7A466DF36889146F938E0D2CD1C88BC8247AD4715C2C43008E7A93563ED20C4583601E2894E52638A8AD0A4495C8CD46243CF5A2570CC4D44C48618EF427DC45A56E771A4693E4C8239E31510665015A98C40276F26924B71DFA12329239EF503820D5807A64D212846186E3426D12E09BB95F2339CFE140233915232291B81C1A8991D06ED8769EF549A6269A25460189A59240BC03C9A8438240C504FCC0D0B707AABA1E091C9A96363D0F7AAED202783C548B212723903AD0F5DC9D22EE5956646DCBC114CF306F258F27B544F281D7BD4334858EE0724D28C2E5F3F56587993B0EB513B6466A3470465BAD39B8EB4D5906FA881B1CF7A56218658D3243DF350F984F7AA4AFB09BB6E4CD8C7538ED4B92BDF8A8439270698D21CFD28B5D85CB1190AC5B919A915B1920D570C1941F4A767E5343EC357EA5859148C679C533CC01B19A8958F5CF150B310491D2A547A13295B545C5C6320D058630467E82A9ACD8E09E297CC6271918A1C751C65A6A3A4524FC99DC7B522C8C98E76B7B5058862091C501C8604A823AF229A61A08D213904F5F6A916707820D445C1EA3F2A5555CF5AABDF704F4D09E2725B8AB024382A4551DCC872A6A559B032C739EA6A5B6B61C5DD1B165AC5D5BA08E398A818C7191C56FC1E26511932C3BF0A4FC9C1EBE95C7248A7A60D59898000AD2734FE240A3D8F40D3B50B5BFB759A07E1BF8586187E156EBCF56760B92803A9E0D3AD353BEB672B1DECA074DAE7728E7238ACDC22DE8CABB4B53D028AE7AC7C443685BE54562D80C99208F71EB5B315EDAC9B42DC4796E80B006A5C1A1A9A658A291486190411EA296A0A0A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2801AFBF194E48EDEB4824533B459F982838A49A510C6D2383B57938E7155B505B89218E7B3D9E60C1C3646E53DB23A5525DC09A47733F9203A82BBBCC038EBD3EB595A869B7515D497B62C1DA51FBE8CF1B881C11EF53C5A85ADB5E082EC9B79E61C6F276BB0EA01E99C738AD092E228E35767186E17DCFA53D63B05FA1CA6A5A741AAFD9ADEEAD8081A32C8BE66C93CC4E480DD88EBCF35534DD767B445B9D76DA592C17319BD58815C87C2BC98EF8C64818ABDE3CF22586DED6DAFE3B3BDB9914C64F46FA8EE08EB5CEE96D7BA726ABE11B98228E457FB458F94DF2DC824129F37E3C77ED4AE16D0DCB9D56C751B913D95F437705B7CCD1A38C21CE3A75EB591AAE9DA56A9AE5E6A43C3D7725EA2A4A521703CD238DD83D4E2B2FC67A3785992FB51BDB39F46BE6552B2DB12ACAC463903D4D731E18F1878DEE3C4CB126A515C3055836C9002248C7DD76C721811D6A5EAC395DAE83E31B41ACBADFE97E1DB8804640BC32A885C1CE4315EF93C67D6BCF24D413549EC6D6E5331C0FB7CB75DA08CF3923DEBD7FE295F6A9268D2BEB9E196FB480A914D68E581620EE5E3AF6EB5E0046A5A75EA42B637514AE0926688A919FAD6556178DD22A29B46A78AE7823D40D945A741621A4DF179649DE3D726AB0D32433491450798B20C7960EE06A95F49AADC5C4297B2A04878048E71F5AB961712CB748AAFE648E0FCE3815CAB995B9582F33D13E16E8097D617AD0CFA640561C4D05E82A4E78CAD5EF147842F2DB50B2BAD00DB3DFC20098598396EDD7BE45743E079441A1DA477DE1ABFD4F507C88FCA5DB8EE46EE8548E6A6BBB1BA3AADC6A76DA65EE82EAA0ECBA9576E0608C60F3FFEBAF462924677773CB2F742F10C1AF430EA56F751413C9987CF4C46581E4559F8ADA04E979297D3E0B3BC51E61488E3CCE3A8FC2BADF8A17DA878B11C5B4D6865B68D276B5131263231D08EFD0D790BEADAFEBBE27B1B7BFD4E546198B3221215475E7B62851B6C559FC48FB828A28A900A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A29B23A4685DD82A8EA49AC2D4FC40815E2B1397039908E07D07735718396C4CA4A3B9AD7B7D6D68B99A5507B2E793F85731AB6A9737D9894B451370117A91EFEA4D664972ED3B3B9666739624E684B98D5CC8C4F4E315B28A8EDAB22F7D5914CAC4E49C629AB14921DAA339E944B76AC855633927A9A80CF20C6D6C52F7BA95A74277B29482C149C75AAEECE83690455D8EF99719C532E665BB00A458719C9CD2BCBA8251E8506978C0E0D4C8F194058E0E7BD446065725CE73D291222CD80DC76CD5684AE6B97F643244092DB81EC6A17B7289E603C1A660A2E03647434E6B96236B13B7D3B54A5D9957D351B92A324D44D216254639AB8A90BA852C093D2AAC90B47C2A8C76E684F51B5A11E4A9E49E6AC5BCD1B27932AF7C86F4AAE72537E548C7AD461C8357F110ED1249A2C3964CF5C546CCC3EF53C4CC7009381D2954AB6437D692BADC4ECC606CF39A40428001C7D2A478B0BB941C55791B675A774269A44AC78C7350B1C7147983A8A639C73B6A9684CB543F763BD38C85BBE2A02DEA29F91B78A765D4CD36B4449E602393CD46C30339EB51EE19E4D48090B91F7A86AC5A95F71B923A1A40C7383CE69AE4FA73D68072878ED4DED717349E84AA76D3CB7CB9047D2AA6EA7EF2474A9E5BEACB8CB4B12B649F6A18A9E4714237418E4D3986467183D2A1B2ED7444C3B9C5332453E4623EE8E6A37624671CE2AE24C90FE4F20F38C75A72EE3804F06920231D39A9A165270C294C516B719804638CE6A5452401D29C6007013A9349BB6F04F4ACF9BB1AD9018994039C814EDA08077018EDEB4B1B9618350B20E89C63A50B7D46C78461921B8A9EDE544186DD92719CD431391C63F3A5941DD8029BEC2B763403EE19DD9A44652707154A30FDB8A78671C93CD472A04DF52D3E776E07F0A1A5DEBB1D8E7EB8A844FBB716007A0151B9C1049E33CD545D86D2669DBEA77912B46B3C8AA46061BA56A69BE21BA86358EE009C742E786AE604836E48A9639801919FA5539B7A32791743B4B7F125BBC8526B7963C0EB90466AC41AF5848E5599E3C13CB2F15C409B1D0F1425C63938FA567EEBE8559F4677171AFE970AC8CF73F7177700F3F4A8EDBC45A74F73E48F3631B72249136A9FC6B856949724F22AD0944F088CFCC00E98CE2A94216D45767A346E922078D9594F420E41A7579CD96A3776276C372E880636755ADBD2BC524111EA48B8CF12A7A7B8A4E93FB3A8735B73ABA2A0B4BBB6BA8FCCB799245F6353D64D35A32934F60A28A290C28A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A0028A28A00291881D4814D9D1A485D15CA3329018763EB4A9911A873938C1F7A6055B7BFB69ED924F35007257AF53D08FAD51D7E4BBD2EDBFB4E19F7DBDB8CCD6E57EFA77DA7B1EE2A2F1369D34FA7ECD2E08A52640F2427E50E33D43766CF34DBD9AEEE2CA7B0B8B1B8F9A220EE50CADC8EF576EC0917A0934CD7EC7CD8C473A06C7CCBCA30F5AE7EE34B4CC9650EA92E96F6832ABE66E8E41D54907A632791D7F0A66991EA5A7DB1B9B1D36586689B6DCC4B000B743B3019E187AF7EF56B5CB89F52B378F4E78A7B8688130496EC8E4673DC718A766B405E672DABF8622D6EE21986A0F2DFD98C4D0BE4720643232F183C106A8F899EF60F0F43A96B160E6EEC6E942DDC5283243BB8E7B9538FC2BACD2AEFC43A7451DBC1E1870B805DA499463FBC037A7D6ABCDE2713DC9D2EF7C21A821763978B648A39E486EF9EB4F95DEE869D9EA8E7AF75E9EFAFA2D3F5A81ADE09E20BFBC8C61D979043772739AE5EFBC396DA5EBA7514F100B77D8EC90F99B2485C024007A18C8FC8D74FF102DB5592CAD6F3C35A4EA171696938965865006DDADF3000F6C559D2BC4BE12F1BDA5F5A6AF6715887508CB8F9D7B0EDC1EBD2A5AB6A5376F876380BEF13DF42C62BFB6D4E482D963964930CF1678E7238CF20E7D2B33E3178A759F11AD95C5C25B45696C48DF01059891FC5E9D2B774FD46E3447D67C1B672DD6A1F6362F66CAA144919FE12A7AF1C62BC57C49AA347AA5CAC76F2DBDB45300D684600F51F5AC26D4B4D905ECCB5FDB715D5BAC7731E338C10066BB9F0A784AE22D3A1D6ACA3BCB567C1B4988CC4C0F623F9FB5797F8764D36F359B5B6D48245673384E4741EDEF5F46E9DE20BC927D0B41FB52BE9F6CC50489011E68FE1CE3A1C544211A6D729937AD99E85A5E9DE30934A86C26D674EB12B0004436DBA451D9864E33EF59BE2BF86AFAE58CB35F788B50BABE48C18C80A88CCA0F0CAA390781EBEF5D0DD6A1656D711A5A6EBAB810B7970B1DAC4760A4F6F4ACEF0D5E6B92E813DE6A7733BBDC063046814342CBD5491DFBE0D755DF404EDA9CA687A945A5D841AE49656B61676E7ECD76F120768BF85B39E47E23BD78978F1A4B7F16DD5D7876F4EA1039DC25450848239E2BDA3E2468725DFC37BB99AC92D755B975669A2946F98F7F3067078EBEB5E0705ADEC2AD67138321511FEEC824678AE7C4549452B2D595171926D33EE3A28A2B400A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A64934518F9E451F8D095C4DA43E9934B1C3134B2B84451924F6AA37FAAC56EBF20F318F4E78AE7351D56E6EF2B3155407845E2B5549EEF444F3A7A21FAF5FB5E5D7CACC218F2117D4FF7AB18B36E24F3ED9E2A591F70383CD567908E0FE757CDF656C4DBB89863C33649EB51C8CAA7EF669BE61E46EEB5093824934E2BB8A52B6C3DA50E9F282013E98A6AB81D4E698C411F31E2802265CE727D2A912DDFA8AF372BB41AB36126246DF9F9B81CD56C61B815282BB3DE86D6C524D752F4A3CC04EE031D3DEA99CA9CF4A6A4C429193492397392062A2D6D0A4EFB8EDE7A1348EEA620B8F981F4A6B3724F7EB4CCEE19269A626DA15266575CF233F95684738270C036E18F5ACD206DEBC9F6A588B46720E453959EE24DA7A162F5446C0A9C83CF1DAAA8196CD49712876C81F85314F3C1CD251B22AFA8A579CD029C08C60FE74870A39EB4276D05CADEAC1652A854938355FEF311938F4A9C10C36E6992C4E986C119E9C555C5CB76479C100AD2B63A118CD0D21385E86A42AB244483CD17D034BD88188E94DC93C0A52854E0F34655464019A77D2C4B8DD86D279C74A923E46083C54224C1258F4E95242E73907149B762528DF542B22138E738EB41036617834F6B857E01E0546D8232A6A57375347C88AC53E7E5AA7B65DDC93509383EBEB9A7C330C903B55BBDAC67171279546E0476E948B92FB6A409248408D1989F419A7A45142DBAE2E234DDCE33CE3E9593A8968CEA8D294B62078DF3C0CD31209DCE021FCAADDCEBBA258A0DB1B5C37653D5BDB02AB5E5D7896EED52E12DA1D22CA65F90BA6D738FE75CF2C4381D31C1396E4CF6AF6F1EE9248C67A2EF19FCAA10083C8E3D6B3ACAD745B5FF0049BFBD9AF661C932FDD1C7200AC5F13FC40D22CE331C4D195C101718C7E359AC4CA52B25735FAAD25A1D41BD8A1B830B4C81B38E5A97ED30CA40F3003DEBC423F195ACBA93CD212E7208E9F25759A678A6D1D57CC9719E40ADBDA3225858257B9E8A92638278A91260491DC564695AC59DC9004D173819CD6FC56892A8915B0A46E07D452FACD3BFBC64F0B2BE8C8BCD53C6719A993819CD57BCB6443F24C08ED918A2171B300820568AA464B421D19C772D799818CF5ED48CC9819E9ED51EFEC2988CDBB735356664F413783CA92314EF301182783516087C83804D432310703B75ABDF62755A963AF7E7D2903807827E98A8D4FCB8269ACDF36477A6974617BA34048AC9F853432AF1DAAAC6C5782D907A0F4A9A56E8783F4A4D2295D8F2E3763B1A5B7B868640C1C853C363D2AAB127AD30B301827BD3B244B2FF00DA125624823D28CE08E722B356420E09AB266C26CE0F3D69EDB0FD4B70CC6190CD1B14246D24715734ED66F6C24778AE19C3F58E43B97DAB21643B7939C7352A4836E08C9F5A7CEFAEA2B1DCE9FE2AB09BE5B906DDBFBC4657F3ADF8DD2440F1B2B29E841C835E51BF0300F5ABDA3EBF79A638D8CD71116F9A1623907D3D08A974E33F874625271DCF4BA2A8691AADAEA70EF818871F790F55ABF5CF28B8BB3344D3D828A28A430A28A2800A28A2800A28A4665552CC4003B9A005A64F2C7044D2CAE11146493DAB9ED6FC5B65647C9B60679CF603815C96B3AF5EEAA08B9F2D230D858E32718F7F5ADA345BD5E888E65D0F428758D32681678AF2178D8E010DCFE551A6BDA43DE0B45BF87CE23214B62BCA52E4C5F73E5FA0C5384B6F70C44A7E6C7DE039AD1D282EE4A9499EBB3EA363021792EA2007A30355D35DD2245668EFE170BD706BCA2E7CE451219FCE03E5C93CE3E95125E30079FAD0A8C2DA31F348F65B5BEB5B95DD14C879C6323353ABA37DD653F435E351EA8CA9B779F6A906A72F95B16EA54CB06CAB1ED49D1425267B1D15E7B6BE35BBC448FE5B951827182C7DEB46C3C6036CAD788ADCFC823ED59FB1915CE91D8D15910F88B4B789247B958C32EE3BBB7D6B4E09A29E25961916446190CA720D4384A3BA1A9263C8C82338AC48008F58F267B5D983E64336ECAB0C72BECC3D2B666731A170BBB1D6A08A7B6BD80ED7575CF23382A73FA11425A0DB2BDBCC249A659940E4AE71DBF91C8AF38F1E782F4EBCD42DA6D1AC85A6A227025BB864C0D9D7732F73D8E2BD24DC2C3308679D1642A7CB763F7C0F51DB1DFD6A86A9A9E9B69347713DCDBDB4A576C739C1439EB9F4C537E438371D8F9F6F2CBC42358B8594DA6A17087CBFB506F2E4E0FA0FC2BCA7C63662EAF0DC436B72B77E711731B1E58FA83DF35F417C515D6353CDD278721177048439B7C348323875231BD5B00E7DC578EF887506923173A847B2F63E8517613F51D8D72D56E9ABADC7CF77A987E15D26E24BB82416D1C92ABE62865600C847603D6BEA0F86FE142749B4D4A23A96992BA1796D26C3C4AC4FF093D457C87AB6BB74D73E7452ED95181127A57D19F057E2FE9B69E0B7B1D73ED5E6589263973BC383CE33FE7AD6B8752A91E692D4E794DADF63D935BD36D959354B89C2C902E3730C2A8EFF008715E69F113C51AA68734FAEE8DA869D79A5C8A23B88E23906507B8C601C7E35E9365AEE95AF78722BE4F2E6B6BB8FE58651F330271D2BC77E38FF00C23361E1A8AD6DAC66D3A592E08920B643890E33BB07B8C62B5968B535834CE3A4D662F133492DF6AF2E9E8AAD208C02573D87D2B8BB6D574DB6D5A19E292756C9DF260718EE2B30DD0F398C531F2F942B2638155B4CD2AE751BBB9934D8A5D4634C285853247E158296BE6351DF5D0FD04A28A2B4185145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140054534F1424091C02DD0773542FB5444CA43F31FEF0FE95897376EEC5998B1F52726B78D176BC8C9D5D6C8D4BBD41DD5FE61B08C6D07A0FEA4D66CD763276A804F5AA4F2124924D42D38009C568DF2AF7488DEFA8FBA9CC870CDC28ACF331C9C9FA51339620100E4E6A27393C60547A9A7A122381D4E6A090EE269C09D9C81F9D2628D834D8600BB48CFE951B2920F4E2A57CB7B542F26D200191DE9AB932B2576204CF06976AA77A43203DB14C20B9EB8A35146506F425DCA39041A687F972DC67B5465415C96A8DD57A119C55249EA0DBBD99612442FB4EE008EA0669FB86DC66A0248390BB6A33301927B50E2D8F9E2BA968608FAD215073820E292270C99F6A8DFD41A9B6BA8277D857CE3E942CA402A7F3A69738C1A8989C7156977235B9331C2E01CD2216070463BD441F352193CC554E72383DE9345A7A6A4A9264E18539B0393D0D55C91CE0FA8A709490413CD251B85FB133ED3C8352ABABC2109C95E99355A300FB52C8BB46738A1A4C6AE98E31B31C0049EC07350891D1B18A5F31C1043904523B2B904E16857426D363D9B7A7278AA7333B31E4F5C73568A150483D2A2650E4834E1DC53DAC40A0F033CD38CBB3E53CF6A2588AA65B18155A6BD8618DDEE0A471C632589E9577316D5F55A96E439E41149E679019A47558F1C963815C56B3E38B3B0BB64B60F74146E2C47CA78AE2F58F16EAFAB5BA5D497A9E548D858426DC2FD3F1A569757A0D439D68B53D6AE755D3E11BE4BFB7407FDACD5787C4DE1B8ADA76BCBE76753858A25C93C673F4AF1A9A6B90517CE8C79919383CFE14C135CC56B1A4BB6470304818CD4DE16D19A284959B3DB358F89D631DAC916856BE5AB003328F98FE35CB785B538FC47E28FB3788F57934EB355DC648C6771CF4CFF0D79AC974EF324464778F24EC1C7EB505BDC5CAE210C247593085F9C835CEE0B789DD1AF34B53E95D5FC6DF0A7C1567E7DABDBDE5CC49F24B9DCCCC30064FFF005ABC7BE23FC71BAD76668ECCC71C498DA109E01E848AE56296DEF564FB55923E4E1C8EA3DC560EA1E1F81E62F6B2A6F879507AD47B3827AABBF334A75D6F264B2EADE2DD46DE4BA8D2EDA08FEF900E2B93D4753D484EEB77249BD5B1835D4C7AB78B5AD1ADAD2E977C7FF2CC1DA7FF00D5815CAEABAADD5E6A27EDE10B6FCC84AFCD4A2EAA76695BE66AE516AECA967A85CC7239925660D8FE1ADE8EEEF86966EE325A3040F95B38ABB7B2F86D3C2B1456D1A5C5F4C77F99B7EE8F4FAD72097F35BA1876BAC6FDB771494E724DA561C9538C5753B2D17C4D79E7891EE64518E137715E8DE1BF1CEA21B7DD5E92A3848F3D05784437E2366F2DB8FE215A96DACB2439CAB2631CD3B732B8A3C897BACFA9B4AF16585F6C865BD0663D013C0AEA74D8A39E3F3048A38E3D4D7C97E1BD6E48EE7ED6CCA0918CEEAF53F0FF008D678C2059895AE6A94DC754ECCD233BE87B5CB01C7C8D8FAF4AA92C9244E2365246DC920702B9DD17C6115D98E141BB20FCDF4AE9D352B6936813C592BD071DAA556AB0F8B514E9427BAB154DCA6704F23B548363F18EB52C86C25CB144DC7AB01CD57B836D190D0CA5811C8C6315D10C641BB3D19CD3C2CAD78BB8C90807E53902A2F3003863D7A559859181279CD472C4AF9DB8CD7646699C8E2D3B32BEE7520AB71E87B5598AE95D883C11C7155978C8CD21443D73CFA55EEB5337BE8CBA5D739DC306A394679078A84FEEF386DC3A8A16719C11472681CDD18F71B572C69639549C1A8AE260405C66A2E7A8E39A6909CAC69273C834A0E3A9AA91CCA0F269E262DDE972BE857322D6432F5C534864018531650A0E7A52EF2E00E703DEA6CD0D3B925B5E4F6B702582468E41FC4A706BA3D0FC577D08486F61F3E250419471FE4D72EE18742052C73BA7CA49DB9C9AB52BAB3D499456FB1EA1A3EB967A936C88BAC9D76B0C66B52BCAAD6E916449125647073907152DE6B3AA4533CC97D390ED9C2B000E3B564E9C5BD342936BCCF50AA3A8EA967656B24F24F19D83EE861926BCBAF75CD466977B5CC9BB18C9638FCAAABDF3386258966EA7D6A9505BDEE1ED0EE6F3C5D29907D8E288818CAB9EBF8D451F8AEF50B3482090311B4118DBC73CF7AE1964CE332E3DB34E9EEB74463C1C7424F7A3956C905FB9D7DDF8E2758808EDA3390433723F11EF5837BAEDEDE06324CEC58F3DAB232667007029EFFBB5C03C0AD2EA3A2466A2DEA13CAFB8B31CB1E49AAB2CEF9DC5B20D123B31C134D2BB81C0E9EB4D5BA8EE34CE4614BF5A9A01819CD44B006209E48E95622F97E5C0C74A6E5A590EDADC712BD0BFE14B9429B586E1DA992B229C9EF51F52181E0FAD67CAF76C77D6C86CD12EDDEAC01A80290BD4F5A9198746A15F6F43FA5529488938C77163CF76207B54A44E7A49C55473C606052AC8D110CA3357AEE24E25A1717311F998E3D2B4749D7AF2C27596071955DAB9E40F5E2B165B82FD4629B0C9B493F7B27A1A2EFB029464B43D034DF1FC8B1469A85B248D8C3BC5C11CF5C569C3AE787F55B896786EDAD1A32BE633AECDFF005AF2F02324BB0F9BD8D2ABE3747D55B8208C8350E31BED62B5B6E7B7DAD95B075B846572467270E30471CFD2A568A1948491229064E14A023F222BCA342F11EADA5958EDA68DADD40020917E5007A1AE8EDFC7B289585D69C9B4AFCAD1BE39FC6B39D296F7B94A5741E30D0F47824B7BEB8D3AF61B78B111B8B198FEE47F0968FF00BBD891D38AF967E2E0B2B3D5CC36DACB5F2BB36F568B6C89CFEA0D7D15E31F893730787AEE18347433BAB21DEE428523EF03EBDEBE5DD762BFBED49E5FB13B0FEF0E778EF8AE1C44E34DFBCCDA1AA3134BB1F350B5C5C28F2F24348BC1FC056B691A88D1ECE58ADB588BCA9F0F2C51C5903F3EF58DAD2B4569B6DDE48D13878E43922B1ED1838DE595C37CD58D3A8EEE6EE88E54EF63D96CBC6FE20BED3EDEC6D3547862B45DD14922ED23B9C62AAF88FC45E22BCD2E54BED65E701F39639C91FF00EBAE574FBB36F35BC0ADC3C7F7F3C0CF5CD457F7C915D3426E018C9C100673533C4549BF7762572A76655D3228D9F3245E746243E66CE38AF57F8116D6DE1BD762D6AF351B76B121D65B79D823C6DD9B23B579359B4F757460D3700BE491F7781FD6B63C21AFD9DA4D25BDC096E473907A0FAD6D4EA2E6B75F21557689F7D514515B9A851451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051454724F0C7BB7CAA0A8C919E40FA534AFB09B4B724A2A9CBA85BA6304B7E18C551B8D67E43E5281EF9E7F2AB54A4C875628DAA42EA0E0B28FC6B919EFAE642435CCC464FF0016DFE5F4A83E793048E9DEB5FABA5BC8CFDAC9BB24759717F6902B334CA4A8E554E4FE558BA86A92DCAEC8CB451B0C15FE2FC48E959C232324606793C75A8A43B4E3355054E2F4D58A4E6F7257933DF9A8770CF5A633E0D26FEA4F614A727D421AEC36E250AB80326AB338233DBB512967762A40C0E326A1258B107F4A85AEE6BB6C05863AE08EF51672C79A73EDDD819C01D4D314007A714C6879C704F4A15BD0714AA412411D6893E55E3AD4B7AD87B6A46E703355C923F841F426A6219BAD37CA381814EF6466D7332AB172C4E0014F2EBD01E4D4B2C2C70BD3079A63A2C6801539EFDE9A973684A872BB911901381D29CA993CF4CD3B6A10081D69B2380D800F1577E8851B2D58E7654E1474F4A6657A9EBE94D0497F4A8E6F34821075EF4256D06D27A92C93471B900E7E95035C8DC306A330B632DD69F1C11C6800FC2AFDD5E64F2B7B310CEC4E07F2A72C85B248F6A4C12D8029492A30687AE825EEBB8A8E338229636190477AAE4A8F9B3CFA50B2114B94A525B96CB0CD351F07A0C1E6A2620E09E45355CF20F201A2CC5CD6659F306718EB4F3B990B28CE07355C346C808E4D384A55481919A96AFB1A29596A0AC778DFF773CE29CC46495CE3B543BF008A5CE53269D84BDE64A18A8DB9CE79A6C93201C9031DE9A8C0862C0800139AE27C59AF9493ECD6A72CDD481536BB2ECDEC6BF8A3C5163A5DBB17990B8C8201CE3D2BCAF50F12DD6AD2492DCCAEB1483FD5E29DADA79902C52212657E9FD6A010C11145963198F8471FE150EAF2AB245AA6B7656B4C491BB499488820823FA5568A58EE1C9847EEC74C56849702DA59E1962CEF00A9C7404555B18CDBA79AA09DC7FEF8ACB9E4F565AB0E9E6FF49C8836803673D09A965654DF1BBA7DCEC7AF7FCEA782C52597F7A5F638C87C639ED4C82C5DA692DEE02096301CB81F7C7AD4F35812E67633EDE289EFBCE8E42D1A72401D8D55B92D08774210C63E5E3A56C4F088A0B88E47F29DD331B84E0D605FDFAAE9602C64C9CAB3741F9F7AA4EFAA25FBAAC2CDA8CB6ED1BC58123F2E71D7FC8A2DA6952E4DD2A89770C483A77EB8ED58D1C9E6A492489FEA930093D49352DBCCF18E24901230476ABD6C24D16B5212315B98C8F383F32631C0EC40A3ECDA76BB6D2830C715CAB95DC3233F87A555FB479692465B183C8F5CF5A8ACA73A75D8B8B5631CE0E40238C7B8EF492D0AE656BA30B52D32E2C2E4DBA06C05F95547DEAC59A625B6BAFDDAF4196783546F2B0565F9DE20391EE07B7B5717AED89121996328BF77EED4A8BEBB970A9CCDB3377A11B82F5F7A9627E115B1B45576400EE65F9BFDAA916556FBDFF01A5669D8D149297BC6BDA5EC48A6354FF7775749A4EAEC254646C0AE3ADD2366E3EEFF00B556E39E4B6C9DBF27F177A995352DCD15E2F73D5B49D6CC2DB2190E3AF06BA3B3F10CDC379B9C7E75E4BA76A224C6CF6E2B7ECEFF001F7D79F5AE3A94E4BE1FF8275C657D19E9B0F8A278E353E7E571D8D28F17827123E31CF5AF3CB7B91B78083E839AB125C429C203CF538AC9C62B592D4B5A2BA3D7BC35AFA4F260CA8C070475EB5D42C96139DE5CC6C7A9519CD78BF872FA28940F342118C7D2BB6D3F508DD7734C40E30077AB955941A717A19F2466F53AF0910391708C3DF8C5365199084E76F520E45615A5F4124BB4CB906B5ADBCA75043E01E83D6AE38DEE43C2536C9379001209CFB74A590214DC0629CCB12F4938A8D620E488DFE80F19AEBA78C8B39E782B7C2C43DB34C328C603714C9E57881DEA76F5CE298B716FB82BB1049E38EB5D7192670D5A324BDE449E60EA6944CDE696DC718E98A91511863927BF14C64C0C29CD5A664936AC59864462473F5AB39455C679359C3720C819FAD3F793DFA54B5CCCA8B51562D33EE19CF4A6F041CBF3E951062AA4E78A6860467345ADB15788FDE51B918CF4A905D1CE09C8ED514D287001238155663FC4A40C93C669AD7725F90F9252CE79E29818815089581C38CD39A40720552D34337BEA38BE29DBFF00759C915016E831D69F3C52467648854F519A1B6B4638D9EA5B5B8022D8831EBC534C8586335562603B13EE29B25C246A4960003D4F6ACEAD48D3576541F3685B9785F336923A66A3F30ECC802ABC7751CAE10CC319E5874AA9A85FC16B6EB34930489865581AF2EAE654609BE6365035627EC473ED46EDCC154E7233C7F2AE62E3598DC816776B2E54671DBBE2ACE93ADC492ADACD0C85E4071276C8ED5143348569249581D3695F7375B27EF544CAC460038EA0522C825412A93EB83C54DE60271DC57AF1A89AD0C9C5DF5206254608E9D298AC5F3B46707078AB6CC1A3C3F1EF55A59A4813CC8E369141FBAA704FFF005EA2788505EF3054D5F41A7EF60D29520633C5367BCD3864ADC0CE33B24186FCA9825494078A40E87D0E6B38E3E949F2DCAE4E5D479E99C5465F07A52A30238CD3D62DD2AABC8B1827196E2BAE1356D5994D37B6E3A191477FAD39DD41C8E3351BC6B1070406C1EABC83F8D426452318CD1CD193B06B05765C370070A7F2A64B7471CBD5305738DBCD24F1A48A54CDE4961C37A5439462B51CA5A5D181E29D5350D3CB34F3936D281E5E4657F2AF2CD635C5D41CA460A9470488C90300F4FA5767E2E124169E54F7324C77F5F41DABCDE2D3F4D69A59A4BABB8E68D9BCB2171BC1AF0AAC215A4E6FA6C6AA2D24D334BFB30B5B477535E46D15C47E602063BF20FBD737AA1B1B29248C31555E456C4D308C476F0CAD226CCFCE71F87D6B0EE2D5B51B9740360FE16C66973B94B9A5A222DCBAC9AD4BB0EAB6B3428CD180428CE3BD549F5640A59CA1C938C8ABD7FA5D8D9D9042D2452C881D180CFF003AC07B731128E8642DFDE5AAA50A4A4EDB7DE6CAD08EA6BDBDDC3E4192D1CE63C0719E79ABFA6EC6BB5B8B78F618F391273BB159D6561F66B4134AEA8263B707AE6AFE98E965FBC6B749A39323631C0FAD2AB7A6B9A9EE2D26ADD0FD18A28A2BD218514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145140051451400514514005145364748D4B3B0551D4938A0361D505CDDC16E0F98E377F74727F2ACFBED5971B2D1BEB211C7E1EB58F24C09C977639272C727939AE88507BC8C25596D1356E75694A622558C9CFB9031FCEAB3EA37A547FA4EDC0EC8327EB59CC4B9C834E11BB2971F757AFB56BEE47A19EB27B97D356BB55C19377BED19A92DF57B956C4852407D4608FCAB20727970053BE5038947AD2BC5E9CA5D9A5B9AF36B1723854814E0F5C9FA5536D52F99C9FB495CF60AB81F4ACE6909EA7348ADDCD3568F423E2EA6C7F69CE63C3CA4FCB8E3033EF551AE46F2EC41278CD53693B546EC4F4A49DBC86DA45996E598E01EB5033963D69B8032739A664F614AFD89B93A320FBC334E69C0185E9554B91D690B1C67352EDBB2B9A4B42C34EE78CD440B3E4E0E05441C9E71D29269C94C703B7145FB0E29B7A8F0C0B1534C94EE5C29E2A34700E1BBD1732285C035177735492D869D8B9DE49F4C7AD35D0C2AAC59493C8C1CE2A3DDB80F414D725B9357D350DC4724F4A744A72314A9192324D59540232D8F6A86EC558ADB5837029C533C91FAD48D8E589E053371604A826A5BB8C722E72CB8C81D2A27DCAFB58F4ED4C2F8192314C767EA3183D73D69584DD91216F31800718F7C51E509548DC7E839CD57762BDA9C92B260A9C53B69A12BB913C6CAE141F702A220A93B9CB7352CAC24EE73EF55A5C86C0E95A46FD4896FA6E3CC8A738EB4B0C8A4E1980CE6A021FA019CD42EC37FCA08FC69A8DF4239E51F32ECE39C67A75AAECC7183C9ED4C01CF280E287F347256AD2B680A4DBD87248E39C50013C934C3367E53DBD0537CC61F757F4A06E5663843BDCFCF81DA80B838C73D2944A09DC78FA544D744CB92724F73549489F690BDC9813D0E690ED1C914DF3D58F51417C726A1265FB48F463E26DC7AD595284E191704631F85526DA0E430E7B52A4841E4F143574545A5A96248361F958804679A85CB2F4E7E94B2DC6400589C564EB17221819F2318E326A5F346371394252E5B99BE26D756DA296186E1893C302319F6AF3D8EF4BC31CADC1193F20E739A7EA92C977704993393F38AB3A7584D71144F1C45243CE3DBBD633969A9D30A4CC949E4B8BA8DA160766410E3273F5A8AE52E1BEFBFCC38C7A8AEBA0D0D22C858F691CF4F5A8A6B6511185941E7AECAE69555BC753B214524705E6C697B2CE5CBA0183919AB36DAA2BA79768431270508EB50F89AC24B79E52803C4E78E3F9D622DC4B0DB3308A349038DAE78C56F19291CF3A7CAD248EB3C31A8462E5A1B893680FF0032824E076E0D6A5F5D5BC715BA87124E81C6F7E32339ED5C9417D6C9A72DC12249509079C63FFAD55352BF92EEDA31B94C8783B78A9946C649F2B687EADAA5DC277CA048B21CE7D39ED595A9DFA5F6D2648D53BA7A1F5AA7A96A33A5C224E99806401D7B551B2B8517AE11B2B2FDD455FBB5A7D9D04ACF5356E2291AE63000D8B83EA0D5850CD312536853C81DBDAA18A0BB79B62EDDA31B40EB566DAD6F16424FDC3D78C9FAD4B6D2B9518CAD745796D448644E7048C7BD477B11B7500B92700723A66BA3856386C4DB7CBE649264B15AA97902EF01CE467D3A1ACA351DFC8D9D26D6861731B3C902F20E1AA440F7904914F188C839C76CD5B9ED64F3259B710AFD41AAD1A334530690649181E95A5D4D194E2E1A985AAE982681E6B7E1D7F83AEEAC68ADDD1B73AFFDF55D9BEC01F632968CE5D31DAB9DD5A19A3BA391B11CFCAB4AD2BDD3D0232BBF7B5220932FCFDBFD9A991D81DB2A7FF654C8D9F1B976D5B8D8B86059170BB96A5DEE75C1A65669CC2DB93EEFF76B674FBD694A867D89FED726B366806E67DEBBBEF73F76880C91386DA8CC17FBB52ED6BADCAB5AF767596F725532E54A1E3EF62A57BA661952073D33583A75EAB298D474F7E95A88D94C82B91DEB0B4A09B668A565645F86EE44E19F8CE714FBDF115CC08823951719EE7358AF712A970194F6C552BA9DDCB2F1951856DB9A708C9352903764771E1FF1648A6359A4EA72E77D7A1693E208CC71937218B7F027E95E096F2676703E5FFC7AB5B4ED52E6D7698E4D807A71573A4A6B989537B3D8F7B5D6D480049838EA6AF5A6A6091871CF7AF15B1F11CB20C4879CF07D6B774DF10FCAB97C76C66B81D39465E66EA71B58F6182FA178C8661CF06ABDE5BE9F7C583C40138391C722B821E23478FCB89C29F5EB5AF67AD44F1A3ABFCDEBD6B65CF169B76139465B1D1C766D00FDC4CE475C31CD598E69224CCB8C742719AC7B7D56375C679F535A7F6A8FC9561D7EB5D11C5CA3F1184B0B093DB526FB52E70D8523B7AD279858831F39EC2A16B8B7B8FBE1727BD24502F9A3CA98807A83CD74D2C4DD1CD3C23E8C9198E4F2706A4562A3839AAB28B95CF96914A3DCE08A3CF8C7DF6F2CFA115D2AAC64724F0F28BB96096C925BAF34C73839CD0ACB280CAD91D3AD4BE59EA39CD68A7D0C5425B90658519C70453C0C9208E9E94AA237B29E6474F908049E48CD6556BC63EA09756376AE010EA72338A845F424B6FCEC8CEDE78FF22A98B0690B4914F2A2EDCF98392BFF00D6AABAD4714B6B2246ECE59001E59E7D339AF33115EAD9F26E7445459A126ADA75BC723CD1BBA32E17CB39DADEFED5992C915DCA6586D0CB6A4869E276FD3D719AE67525B9B58E3B221C13DCF1FAD56B3D56F34EBEFB189E38A75398A51CB7BF3F8D798DD79C6F2636E37D1E86E6A1A9DADB63EC016243C188FF000D6178935237DA77D9E66923914A796821F9241DFE6EC6B3EE6CAFAE355785E33B1B03CE64247E357AD6EAE6C9ADADF529774449C14195DFD857955E2D3BAD7F3344DA22F08E957D1F9B7374122B7FEE07E7D057422CAD74F592F4DE4AFE64993193D3D2AB59451EB5343707508AD911BE606221C01D715A5E2DB4B410C3F67BC79E28DC0219366F15857C54A324E4EDE4854E4DAB6C2D8EAB757B2449672996339CA138208EA01E8722AFDDDFCD691859810C721080413F515E7BAD6A77BE1FBC75B2B2962B6B9C4A017DC091E95B173AF5F1B58DDB4CB98D55371F9094C1E735D1EDF134E1ED29BD01DAF668EB6F3C493D9DB2C423B7915B9DCC3E61C74AC9D1758BCD42F8E9EF7500798E620D85C7B66B9DD5751BAD4DDAED6D2E31E58DCD1C448C01FCEAAE87A84325BEDF28ACE0E37C830C2B29622ACE2DD4DC6B963ADCE8F5FD3AF2D750656B9B69C3FCB2C65B263FA1EF5BBA6DC4F6AA4405409E2C301CE3F3FA57376BA78B94FB53DCB0947319419E7B669B79AD4B6163143288BED0AE4C98FE59AC16266A3CAB5655E0DDDF43AE6BE88C90F91312C32258D9791EFF004A9A78A26413CB2E77763CF4AE22DB5F6B9D3DE68913CC1D70F8CFB5353C4F7F728BA6AC6C21525A39E44C7A6466BD3C2661898FB9242718CB54CEDE17324436B08D46460F148E003949335C25AF88E6BDB94B2FB57CE84AE0719EF5D1DA5F208B649C11C8CF5AF7E862D38F3BD0C2514F4356795F07639DC7F8AB0B518AF9EDDB338F9392DD723D38E86AF5CDF4A20FB5DA5A2DCBC441783FBE2B93BCD66C25BC94436525B49372E0C8481DB18AC7138A8D58DA1B8ED6B15B54B696EB4E9A66BC90A2024230C015C4002DADA4334B1070C366FC9CFD2BBFF1F5F5A69FE0E82CA1909BD907CC01E31F4F5AF2D8EE26B85F2DD5148E42E33FAD723A33F64D6C6BA2436E584CDF320DB9E40ED57ED6FC5ACA1E18A123AE0A64E7FC2B3AEA4171079B1F96B8F9303B9154E2BA7B50249B9FF68FDD5ADE1424E9A4669A66C6A7A95CDCB879642DE5FF00AB07F807A7D2A8D8E2FEF364AA51D7818F5A905C5BDE797008F12E79643D7D2A0983D980648A43197CA7CB90706B4947D9D925A99B873A69334AE85BD869FBDE4B7965F3388DC92E9F85648BA6B86323EC45C723763BD5B8EDACB5691D16EE0B5C8CFEF33D7FC2AAC90B59C78792191F38529D2B269C924F7F3348A51D0FD2FA28A2BD700A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28A2800A28AA773A8DBC51875266CF4D9823F3E94D45CB613928EE5CAAF75796F6E3F78FC9E81464D625E6AB71387401628CF0029CB1FC6A83392304E2BA23412F89984EACBECA34EF358B87DC900488104063CB03FCB359B2CF248774B2B4878E58FA0C546DB430C36E1EB43797D0B0E95AF3A86914472DF593D447739C914C79323200A594A7DD539F7A809C3509F36E26EDAA1DE61CF1C535A563C063F9D35CE4FA5348C75A1A57B073B4877984F534E405875A8D460F353A15EB5339762A167B8C64340DD8CE29EF20F5A8BCE0AB8CE6A799B436A2981639E7B504E39CD465C939F5A4049E334BA0297443C313C1349E676E38A63124533612C0138CD175D44D49B2467079CD34480F04531C6DEF5106C9FBD4681664A5DB900902942958CC8DF4E69AAE8AA5D9BA741EB4C9646957711841D3D3353746B143370C93F95579A520F073F5A91C863B54E2A278C1190734D49751B4DAD07C2FB9086A79258E055759154E0B019AB36A51D865873EF43689836F427C1DB85383EB492395F943645492322461DB85270BEF55DA4566C638F5ACEF766BB0E6242900F5AB5118D2CFE60BB99B9F5C5515396E7A54923EF2154E00E94DEA244372A0838E7E951E09C7CB5A57D62D6F6714A6556593AAA9E4719191E95441DA9EA7A74A9D1EC0D771878E314D651DC10053919FB9E291CFCA431C9AA4B5D41156E246CE49249E7351ED1B565DC083C11DEA62413827AD472602E31D6B4564AC4B4EF71C141042374EFDEABF9782401907B9A9628CE783815314558FE53963EA693767B936E6238C948950F3C76144A63238A565656C11D0D26D53C91C8FD2A74DCBB323748DB92283100396029F711F944E24E3F955749C676B64FA534EFB09AB315A14DD9033ED55DA119C8503D2AFA8565528D9247229932A06DAE704D529D89943997914BCB010763EB4E241E3763EB56DE10572067DEAACB00EB54A77DCCE745F41225DCBC49C7A52B210B814DD817254922970E899C371F8D2E7EA0A9CAD62095641C0EFCE715C978D2FE381A2B7925C348B922BB524E377007A9AF12F891AAF99E299628595511B6467D477E2A653BB2E14ACEE6F785F4E8EEEE4823E4EBD3FCF35DDDAE9715A2E31CE315CF7C3E45834F8E4070CD5D2DC5C92482D915E46227294DEBA1ECD18DA24375142A87001279CF7FA573DAABC60E1DF667BE3AD6BCF7299DA5B8EF593A83AC9819C7A561CE92B58E851BB393F1098AE7388FEBEB9AE36FED3CC5C796D9EA323A57A35F20C2938E3D00E6B02EA28B7E011B88F4AD2359C1F744BA2A5B9C15C19625F2BCA1EE718AC56BAB8120442E181FEED7A0DFD8AB903CC039C9279AC79AD22DC589F9CFB66BB2957535AEE734F0A93F74E5AFE4798F94EBB7FBB573C2B62ED76B332EF087E60475AD26D3209AE37CA4A01C9C266B634782DAD426C6073CFD294F170E4D37F98E18551D4D38F4E5DE1C0507A8E318CD173000B1852063A93CF14B73AA2E321B923FBBE9C5635C6A8E1406902E0E31EB5C14A6EA5ECED6F53A941256B16E5704201D9B35048E04640277E73C8E959736A8C58ED75F4E38E9524977B9318D8C4536DEB664350BD90EB9BA21C23AF3D467BD626A57CD6F71E6C6FB0E41DA16ADCF3B285DCE1DB032718CD739ADCB8DCE8FF0075B6EDAEBA155B769239ABD2F7798B0756314F994ED439071E869D75769716A1102B38FF0067AAD7337778CC367CBF951A75F3432E1BEEB577DE125A9E77BD7B9B70C5F2A333FCDFDDDB53ED466F97FF0041ACE8AEB7A82BB8B16FE1FE1AB092CABFDEDBFDEAC24DA564CEB8F3349A2F2B31F971F7A9F3985B6305FE1F4FBB55E299D599B7676FF7969CB2EE42037CADDAB39AB6A6F1E66F51DB36A8DA392DF2FCB5784C63830D2FCC5AB372FB5519F23AAD2CAFB62C3B9CE7F8BB54B8CA49390EDCB765C9267745DB2FC83AB6CEB55E4B8519C7CC47DEA4471E53659B3509778FEEB2FCDFEC554799BEC1CCA2B526F3D15955B0BB9B6EEDB41B85C2AC727F15566765F94955A6FF000A156DD56AC89574F566B4572C11555DFF00DAF9BEF559B7BC657044C7E435911BB23B146E0D2C5302BB58E3FE03594B5D62573799D2DBEA9343E66254740476ADAD3F5C78D3734840CF53C5712937945CA49B90F1D2AC9B9911371763B79F9BFC6A79D49A4D0A3748F4FD37C43F20258650D74165AEC72A3832640F4AF18B7BD659B86F9B19E5FF00956A586A7247B009C820E738CD4D48456ACB854B1EB22FD4A798926DCFBD68691ADA826298E48230FDABCCE0D648E5E4CA8F4E2A7B6D5C48331CFE513C83DFF2A9A6A4EEA46929368F5917F1B9C8900AB06F63E3710C0FB579ADB6BE32533C7F7C9AD4B6D61A58C46F31250719EF4D3B3B221BD353B349226CED729CF6A9259AE222120B8F3541E378C1F7AE66D35095584B29241CD6AC7761882EDD6B48D792D0974E125AA2EBDC3E489227507BF506AA35A5A4EE65512091B871BF19ED524972042DE5C837F6A92178A4D8CD170476F5FAD0AB4652BBDCC6784D3DD6674B16AB6D7F0C3737571FD9F2466360A4600CF7A96CFECA923FD9EE448B9C039E78AB5E5B248C62949539C87E6AACC8B0A9912144CF271DAA93524F530746517E4645E4A2DA417773B2486563B327B8FF00EB57337C74C96F42E96A9BCC98328E3E9F402B6F54B9FB44B9B84CAC4BF2613A9C7191543C356135CDCCACB145109472E63C271FD6B8638594AA3D452972EE56B9975AD3DDEDEE2FA09B6004481B39CF6A6DB5D47A9CE20B9B88A0F2BE6D8E3009F63EB5ABADF85F73492C717EF480DE613EDDAB2FC39A34F6E4482E24BDB80F97063CA707A7FF005AB2AF972B393DFEE2346EEBFE01DB5F4CBA3A096FD229A798672BF3003B1245625DEA82326658627206DD9267073DC7A1155F567D467BB27CB8A1464DDB44982A3D31583193048F34971E6AA1C9F33B76AF93AD82A8A6E55168CD12E55A1D346D633FFA6DCB7C862188972C01FC7B5175E24BC8B30AC7F658C6230AA770DA3B1F507B8AC58BC47A60914C6E772A7C881FA1FF000AA77FACFDAE513BC6A3A070A31F8D52A5560AEA24EED5CD7BEF153D95AB5AC127D9F391B50E1083E82B2FC35AC69536A822BED323954A1DC48FBFEFD7AD674B1A5DCAE58C7BD0640714FD2EED74CB8FB4DEDBD93FEE8C64797B7713D0F1DEBB70B4A3C8E52BA7D89AB09CDD94B43A2D5FC4315B242B62920B21948CF958284D711E2A7D4E6903C271081E61C9CF19EF5BB2EBD05898E3FB0A49148E5C02338CF5A8F58D2ADAEA437B64ACF21C811A37507B62AA8D374A519C96FD4DE2B9935739DB099238B22E124925397403A7A56E69DAAACA638105C2FCFE5B909C554D0AC8C2C65D46DC41374002E41E78CD6CC5132EA588E29A28C1CB2638CFB7B56F5ABD252E69C39BCCC9539AD9D917EDF4D81479B2C914698DFC9E456EDAFD822825B8999E4BA8C80A07CC187E15CFEA771617291FDA62DA3843F2E727A56CE99A621B2967B8BD86D2DA39331498C161D318EBD6B39662E9C14A3A790BD94B995E453BFBF4B772F2C8D1367188F835C8C57C24D51AF675FDDC47FD694E4FD6A7F1CC1750E658E75781B94910F4FF00EBD600CD9E85F6892E4BACBC1079FC715D395C95793A92653859D8CFF11EB375ABDFCB34B26D033B40E805634178B6BBA697EE61B6D364679A66D8CDF77E6DA29D7BE65ADBA193E6CAE4A94E95ECD4B4256B27F99368C9B49EA53BDD41E462CA02E7E62CA3EF7FB5569DB75BA65D7EE6E6DD55F6A3A2BAAEE3F776EDA6DECCFE547965551F284FBCD5BB9FBA94624FB36E4B5B00BE953623ED450FC36DF9AB6E1BF12C088434AAC73E593C1AACB209AC05ADD409BB68D8E53A7355E0B56567B88E51B22FBBFDDAE7C4F2B8A4B70E456B22EC5736D6E1637B7F372EC7798FEEFB7D296F05B4D6CA431FFA680763ED59B75AD5DCCD1C372A916D66030319FAD4D6CAF708272BB6D5CE0BA7F7AB2845D35CD25A8DA92D59FA6B451457AC01451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014514500145145001451450014C9E548633248700552BFD4E3B7631C4165914FCE037DDFF00EBD616A37725CCE1D98F07E55CF0BF856D0A37D65A2329D5B6889EFF005269E50F97445CE173DBDC77354E798C8D904D4441239349B08E09C57439452B44C126DDD8AED8E734846464D007A9A6B3E0707A566E6BA1693EE234840C014C1B8824D064C382013403BB93C0A399D839500E3BE293058F5A50AA464B0EB8A955547538350E762946FB0D8D107045399631C1DA063BD23B2E783519642D962C7E950DBBDCBB2118739C714C662071C629CCD9E074A660927D315570690CDDB89E79148CA73D6A55D838185151EE0BC814D49DF4125A6A37A00314F00019CF6AAD7D70D0C7B95416CF43C55296EAEBC9F30CB18C0C610E4D44A43B5B634DE441EB9F414ACC36E73C0EF5CCFDBA5562434849F6CD584BC9268FE71803D7AD4B92411773664957B1E4D549E648D465B2C7A8AA9179EF0E448A589200231DEA3BCB5BD8A64DA15D194B373C8F4153EDA3B5CA54A4F51BA8DDBA8055B00F4E793597FDA176851034849E8704FE34E9D7CC20BAE4E78A924B899555DA4DA0AE00CF6A51ABA89538A228EF6F96E36CCEDE8DEF53B6A171086DEE361E0540C15834CF23F99BB3C0E0D5AB46B799D95D847D31BB900D539B7B2294229144DE33CABE6391CF1CD4E656DF85918023F2AA8444F2B8F2651E59C8931F29FA1AD081206B6DCB265BFDAA4DB48A8A52571AF753C326E49CC8080304702962D52E48FDE90AA0E7A5569E6416C406F9F76391502CFBF01882A28E69588E557B9D15A6A36F32925C27D69CB748EE4238201C66B9C6995E02A90BB4991F4C52C72B44F86E08ED494F403B3BA6DA9126FDE426E200E141AAAF202081DAB0175077C86B9287181DF3ED551F50D45672C8C2405C1CE7B5691DACC4A777A1D2C44E7D854936D319C839AC1875768816683CD38FBBCFF4AB175AD42B0F9D2284040040A69B6F41AD0B98E73514B924807E951C77914B82ADC1E84D3A599125E8700649C55735B7264B99684A85953248E94E570B329241EF55CDDC333B2C6F9C71CF6A6C618C9901CE3D28566849B8BD4BB33AB0E0F3509CED241AA503491B3B1DC4524F70DEBD7A0A6A16D2E0E571F7939500039CD31590C793F7AA13E6B1C90290EE6E003C555BA5C97EF6A59F3CC5C90C314E3728FCB039ED51209C8F9F900719A8CA3AF5145A3726F25B1763BB5FB9E94F91E23106E49CF4ACD432062541F4AB316194B39287DA94A291A464D9300AFF00329C63B501A518463951C66A8A39473F366A58A731B0607F314D6A2949477249C1116D66DC3A6715F3BF8C101F1B5CA48C3CC3366BE8D8A68DDD4E3A36702BE7AF8811C969F10E60C240C24DC7201C67A565D59B5292B5CF4DF0D308F4E8D10280055BBDB858F277F4EE2B98D0B532B66B83F73A66AD5DDD978F008C75AF1EA2F7EC99EC536DC465E6A0A9BFF787158B26B11E4A994923A5375159A512B96721FB81D2B37FB3A5F30E327D4D54F95AD7734836F42CC9AA023767BFA5529AEE3993F7441C1382284D2EFB684C31E7938AB36FA4CC83322107D71D2A252A704ADB96A2DBB9972BB94FBFCFF2ACF9898E46C8E5BBE2BA89746983020641E800E73542FB4B9A41B5C98C0E7EE75A7EDDBD13B11CAD239A966D87E6C92286BDC0E24C60641AB577A75C07FBBED9AA1369F74181507695F4AB972B493D1911BA77457B9D44AEF52CA7EB596D7BBD0176E5BE62A3F86AC5D69F387767523E6F9722A8BDB3AA8DCAAA5F3F353F6768DD0E4DECC58EE14AEFF33EF0F9B2B53B5C3267E7DCA7FBD5598EDF91DE2FF6BE5A864B820380EAA57DAAE31697B4B19ADAEC9269CAA96DC79ACBD465464E4F3F768B8BA654C31AA3733332B0CF5F6ADA3CD2D5FE06152A5D3452B86DA796A8E376F301E94392F96ADFF017872E7C55E208746B59238A69559816E0715D508B968714E6AC52B47740ACAFFF0001AD00EC63DACECABF7ABD38FC12D7E16DA27B075E8089473522FC1FF10A111C8D6B924818947DDA994237BA66F09A51F88F328A6D9B87F7FF008AAC2B607CCDFC3F2D7A6C1F0875E62EA64B51CECC19456D5B7C199901965D56D0E3FE5985CE6A5C636BB1FB78DACCF1BF95C6559776DFE21FFA0D5FD3B4CBED46610C0AF2484FA57B769FF07B4C251EF353270BFF002CE2AEBF41F0E68FA24420B4B50187FCB4239A708C5BEECCE75924DA479059FC2AD5CC70CDA8C8902C833D33FE4D6C49F0AEC0464BEA93161CE445D6BD9845E7A6FF00BC14E08EF5564B7552463F3156EF72156933C326F85A1EE48B2BDC469D1E54EBF9567DDFC2AD73CB2F0343388CE0EC936EEFC0D7D02B6D12F20E185579A0403E51B5A869B5A03AD2EA7CC1AAF86755D2E4227B7902A75C213F2D633821CA1C82BD7E5AFAA6EECE39A2F2E68BCCE31827A7D2B8AD7FE1D5AEA2EF32C197C67E5E0D4F235A954EB41AB753C3924641F232AECF9BE65A78B875198DFF00E025735D1F89FC19AA69825B8899E48DDB1B31838EC715C64AD3428F09DC1BF8AA1C6CBB9BC6A26FDED51A114BFBA46F9576FF00085C55A86E0A1DA66DC33F29DB58B6F74EAA0FDEDBFDEAB0934A8C1F1F77EEB54544A51E51D3B2775A1BD1DDFCA4B5594BE20828C401D0560ADC46C836336E2BF37CBF76AC0B92CEBFDDA8A916A06929B7A9D0DB6A1B64008E3B83CE6B6E0D4D246551284191D46715C6472BFDE0E8A1BD45584BA6893109009E9C7158C22D2BB25BEE8F46B0D5C81E5C9D73F5AD88AFFCD00C536533C7AD799DB5FCB1E369D98F418AD7D3F532B161E52C47F11E29AE66F47A9AC1A4AE8F408F5065529BF8EF572CB5405111A44CE3A0AE334FD4B1107908D98EC335AB6B766EA7486DE30EE3FAD671569BFCCB7356D4EA567DE33E674AB10DCC80E00DD9182315CAEA7E24D0F41D32792FE6965BB8982476D08C973EE7B557F0F7C446D4EFCA5AE9ED66C06638E6009E9EBDEBA2145CD5EDA18D5AF08AD0ED7FB361BC8C992DC664039031562CEC65B2B4F2160336082067693CFF003C563AF89A6907985A48B230D11CE38F4A9EC6EB56D5770B48A2455383248DD2B554F975D8E49D5535B1D0DB5AD9DCE1E4B836C003BBCC4DC0543797FE17D0FF00732CD6E2490062106371F7AA17108FB9717608C1DDCF15CAE9DE18D23C4FAFDDEB5772CDF6584F956EA80E1C7AD538426FDE324AC8E9BC47E24F0AE87A3CBA96A56D14F11185511E19FB8C1AF251F1AFC3A2F9913C156EB685B20CAE5980EF8AF5AF1269D25E68A2D2D2D12EA1847FC7B38073F4F7AF03F887E08B54892E348B0B9B3B961BD6D8A1643DC8071C11E9512C361EA2E59C6FF32A2AEAE99D5EABAEF87BC5F20BBD20DAC7245858E158842471F5E49AAF6D65E523CB29327387078383D315E1EF1DE59FEF48785D1BA10C0A9AEE7C05E22BBD5641A1EA5334A0A3B5BB67907AE2B8317977B2A7CD4765D19316D3B33B08AE6CADEE0C9215C87C191C65C67A71E959DADB4A6213649473C6462A85FBCA751C49161233825F207FFAEB7F46B6D475259733472476E003197C9233DB3DEB85A8C63CF366AA4DE8732F7AD6DB2391BBF19F4EF576CB5C16A5E52E248CFDF00735B5AEF86747B95924B0D584572A7CC486E060918E467A572361677314A4C922411A1C3BBF719EC2887B1C4C6D07B03938ABB3B3B7D5D6F2D9D34F28273C0DE327D6AEC7A8CF7B02A5EF9A93BB805E223047F4C57276F6D1DAC91DD432978E54C8D8781515D7882F52F1626543038F95BA1CD6B5F0768A54C4A778B933D85EE742D2ED7CA8E05BC9E3E6267
DeafEater
DeafEater
SSC-Enthusiastic
SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)

Group: General Forum Members
Points: 153 Visits: 258
try to remove -N in the bcp queryout.

If you do that bcp doesn't output anything it just displays the prompt:

Enter the file storage type of field FileData [image]:

which isn't very helpful!
sergey.benner
sergey.benner
SSC Veteran
SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)

Group: General Forum Members
Points: 210 Visits: 164
Here is what I did.

create table data(data varchar(max));
INSERT INTO data(data)
SELECT * FROM
OPENROWSET(BULK 'D:\docs\DB\oracle.txt', SINGLE_BLOB) as f ;
declare @cmd varchar(512);
SET @cmd =
'bcp "SELECT data FROM woof.dbo.data" queryout c:\1.txt -T -c -C 1251';
EXEC master..xp_cmdshell @cmd;


Even the Russian characters were preserved perfectly whithin the text file and no jarbled ones.
sergey.benner
sergey.benner
SSC Veteran
SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)

Group: General Forum Members
Points: 210 Visits: 164
Errrrrr this line is too long. You could've shown me at least the code
of the create table I would've believed you.
I've just tried even to dump the mp3 and pdf files with this code
I haven't noticed any corruption.
Show me please the output of your
xp_msver.
DeafEater
DeafEater
SSC-Enthusiastic
SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)

Group: General Forum Members
Points: 153 Visits: 258
Errrrrr this line is too long. You could've shown me at least the code
of the create table I would've believed you.
I've just tried even to dump the mp3 and pdf files with this code
I haven't noticed any corruption.
Show me please the output of your
xp_msver.


OK - the Create table and insert is as follows:
CREATE TABLE TestFiles (
FileId bigint IDENTITY(1,1),
FileDesc nvarchar(100),
FileData varbinary(max)
)

INSERT INTO TestFiles(FileDesc, FileData)
SELECT
'This is my uploaded file',
(SELECT * FROM OPENROWSET(BULK '\\NTSERVER3\Users\Robert\Data\Dump1.txt', SINGLE_BLOB) as f);


When I bcp using your latest suggestion the output file contains ascii characters that are the hex representation of those ascii characters. So if the original file began with the characters 'pti', the output file begins '707469'. Hence the output file is exactly twice as long as the source file except that it has a carriage return line feed combination immediately after the strangely formatted data.

Output from xp_msver is as follows:
Index Name Internal_Value Character_Value
1 ProductName NULL Microsoft SQL Server
2 ProductVersion 589824 9.00.1399.06
3 Language 1033 English (United States)
4 Platform NULL NT INTEL X86
5 Comments NULL NT INTEL X86
6 CompanyName NULL Microsoft Corporation
7 FileDescription NULL SQL Server Windows NT
8 FileVersion NULL 2005.090.1399.00
9 InternalName NULL SQLSERVR
10 LegalCopyright NULL © Microsoft Corp. All rights reserved.
11 LegalTrademarks NULL Microsoft® is a registered trademark of Microsoft Corporation. Windows(TM) is a trademark of Microsoft Corporation
12 OriginalFilename NULL SQLSERVR.EXE
13 PrivateBuild NULL NULL
14 SpecialBuild 91684864 NULL
15 WindowsVersion 248381957 5.2 (3790)
16 ProcessorCount 4 4
17 ProcessorActiveMask 15 0000000f
18 ProcessorType 586 PROCESSOR_INTEL_PENTIUM
19 PhysicalMemory 8191 8191 (8588959744)
20 Product ID NULL NULL


And yes I know I'm running this on a SQL installation that hasn't had the service packs installed yet.
sergey.benner
sergey.benner
SSC Veteran
SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)SSC Veteran (210 reputation)

Group: General Forum Members
Points: 210 Visits: 164
Robert (8/29/2008)
Errrrrr this line is too long. You could've shown me at least the code
of the create table I would've believed you.
I've just tried even to dump the mp3 and pdf files with this code
I haven't noticed any corruption.
Show me please the output of your
xp_msver.



OK - the Create table and insert is as follows:
CREATE TABLE TestFiles (
FileId bigint IDENTITY(1,1),
FileDesc nvarchar(100),
FileData varbinary(max)
)


First of all I would strongly reccomend you to use
the varchar(max) type for the text files.


INSERT INTO TestFiles(FileDesc, FileData)
SELECT
'This is my uploaded file',
(SELECT * FROM OPENROWSET(BULK '\\NTSERVER3\Users\Robert\Data\Dump1.txt', SINGLE_BLOB) as f);



Try to use (SELECT * FROM OPENROWSET(BULK '\\NTSERVER3\Users\Robert\Data\Dump1.txt', SINGLE_CLOB) in conjunction with the varchar(max)


When I bcp using your latest suggestion the output file contains ascii characters that are the hex representation of those ascii characters. So if the original file began with the characters 'pti', the output file begins '707469'. Hence the output file is exactly twice as long as the source file except that it has a carriage return line feed combination immediately after the strangely formatted data.


Ok looks like by default the bcp dumps the file using the UTF8 that what makes your
file twice as big - for each character it takes two bytes although you have to use -w
option in order to dump the text file using Unicode characters instead of -N for binaries.
So try to use e.g.
bcp "select field from yourdb.table" -T -c -C 1250.


Output from xp_msver is as follows:
Index Name Internal_Value Character_Value
1 ProductName NULL Microsoft SQL Server
2 ProductVersion 589824 9.00.1399.06
3 Language 1033 English (United States)
4 Platform NULL NT INTEL X86
5 Comments NULL NT INTEL X86
6 CompanyName NULL Microsoft Corporation
7 FileDescription NULL SQL Server Windows NT
8 FileVersion NULL 2005.090.1399.00
9 InternalName NULL SQLSERVR
10 LegalCopyright NULL © Microsoft Corp. All rights reserved.
11 LegalTrademarks NULL Microsoft® is a registered trademark of Microsoft Corporation. Windows(TM) is a trademark of Microsoft Corporation
12 OriginalFilename NULL SQLSERVR.EXE
13 PrivateBuild NULL NULL
14 SpecialBuild 91684864 NULL
15 WindowsVersion 248381957 5.2 (3790)
16 ProcessorCount 4 4
17 ProcessorActiveMask 15 0000000f
18 ProcessorType 586 PROCESSOR_INTEL_PENTIUM
19 PhysicalMemory 8191 8191 (8588959744)
20 Product ID NULL NULL


And yes I know I'm running this on a SQL installation that hasn't had the service packs installed yet.


Nasty Smile
DeafEater
DeafEater
SSC-Enthusiastic
SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)SSC-Enthusiastic (153 reputation)

Group: General Forum Members
Points: 153 Visits: 258
First of all I would strongly reccomend you to use the varchar(max) type for the text files.

For the purposes of experimentation I did so but really I'm looking for a generic solution to store and retrieve any kind of file to and from a database.

Try to use (SELECT * FROM OPENROWSET(BULK '\\NTSERVER3\Users\Robert\Data\Dump1.txt', SINGLE_CLOB) in conjunction with the varchar(max)

I did this with the amended table structure.

Ok looks like by default the bcp dumps the file using the UTF8 that what makes your
file twice as big - for each character it takes two bytes although you have to use -w
option in order to dump the text file using Unicode characters instead of -N for binaries.
So try to use e.g.
bcp "select field from yourdb.table" -T -c -C 1250.

The output file was 2 bytes larger than the input file and those two bytes were an extra carriage return line feed combination on the end of the output file.

I'm beginning to wish I'd never started this!
Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum

































































































































































SQLServerCentral


Search