3 Replies - 457 Views - Last Post: 04 June 2014 - 11:20 AM Rate Topic: -----

#1 KKUser  Icon User is offline

  • New D.I.C Head

Reputation: 1
  • View blog
  • Posts: 27
  • Joined: 10-November 13

RichTextBox RTF to PDF (PDFSharp)

Posted 11 May 2014 - 11:14 AM

Hi,
This has been bugging me for nearly ever & I have admitted to myself I need help.

I have a RichTextBox with formatted text & images (see sample). I have managed to add the text by each character to the PDF & the spacing is good, but the image has got me beat.

SampleRTF (Sorry for the long post)
{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}
\viewkind4\uc1\pard\lang2057\f0\fs17 G Code Group C (Equivalent in Group A/Normal is G00)\par
\par
\fs17{\pict\wmetafile8\picw3863\pich2064\picwgoal3045\pichgoal1950 
010009000003024900000000931e000000001610000026060f002220574d464301000000000001
00be55000000000300000000200000f0330000f0530000010000006c0000000000000000000000
910000004d00000000000000000000001b140000bf0a000020454d4600000100f05300000c0000
00010000000000000000000000000000008007000038040000a50200007d010000000000000000
000000000000d5550a0048d00500460000002c00000020000000454d462b014001001c00000010
0000000210c0db010000006000000060000000460000003015000024150000454d462b22400400
0c000000000000001e4009000c00000000000000244001000c0000000000000030400200100000
00040000000000803f214007000c00000000000000084000057c140000701400000210c0db0100
0000000000000000000000000000000000000100000089504e470d0a1a0a0000000d4948445200
0000ad0000005308020000006255107d000000017352474200aece1ce900000009704859730000
117e00000fb501880af0af000013f849444154785eeddd658c6c451607f085872eeeeeeeee123c
c1099010429010dc9d400812dcf940708204d7e01e08eef270777777d81ffbdfbde9f4ccbc69b9
3d3dddafe7c3a4a66ec991ff3975ea54dd3b63fcfdf7dfffeafd8cf6121873b497404f00ff48a0
87831e0e7a38e861e0ff12e8f9831e16dae70fde7cf3cd42fc975d76d973cf3d578a36fefcf3cf
8c53144a19767418a40dfee0a79f7eda6bafbd0ae17efffdf723478e2c45d623468cc83845a194
61478741da80837ffff7a7cb84fbf3cf3f7734476dc001a7dd7d7e7bfcf1c7efe1a03e0970da55
7efbd34f3fad6f885eebb225d0067f20835995c4fcedb7dfcae6ab375e7d1268030ec6f8ef4fed
6476e53a523bfb43d3b20d38a897b1beeb48bd23f4da0f2a8196e3a0fb42c24165da890d5a8e83
de56be4658b4d7605a8e837ea5f0cb2fbfd4289d76356ba9567efffdf7bec7fded359896e3a0df
bd801c62bb145ce3bcd14adfad4d55f781e0326a188d3df6d87545ca35d2dc4cb396e3609c71c6
e94bdfafbffe5a59396cddc3a05b9b818cb8bdc6dd00205a8e835a1c6c2f7fd080e6caedd2721c
d462193ffef863b95c75d968b5d852932cb71c07b5d037047cd642c6b06d538b2d3549fcb0c041
933cf4ba372f811e0e9a9761378cd0c3413768b1791ec668cbfb0b2badb4d2269b6c9203a47bef
bd7781051638e9a4939a67a63742c312688f3f9875d659ed11bef9e61b09a52fbffc7296596669
98815ec772249094d950fe3cf2c82355f7d2f6df7fffa124a037575f09fc2f753a94a259669965
4078db6db75d7ffdf50b2c3ffef8e3cdd070e185172ebffcf23ffcf04333838cce7d871a079683
ec863ff8e083575e79a5c0c1b1c71edb981a3efbecb3024f0a028ec6c6d1ebafbffe72ddb4e1ee
1ddd71a8e30320186bacb1a87fb3cd36db6aabad0a1cb8ccded83a37e9a493fef1c71fe97bd34d
371d76d8618d8d63906db6d966cd35d7ecf49bc78db13fd4fe80d1acb3ce3a7d697de08107f6dc
73cfe38e3beec30f3facd7b0befefaebf9e79f3f63c2d915575c51ef08bcc8ce3bef9c1136d860
03e71df58ed0e9eddb808337de78639a69a6a98402c7408e2fbffcf241071d34c71c73acbdf6da
d75c738d33c9da85fbfaebaf4f32c9241973820926a82bdab01c6cbffdf6053df3cc33cf175f7c
51fbd4ddd1b20d3820388bfa3efbecb3e4924b4a249c7beeb9345129cdbbefbe5b1409107becb1
47ed1abdebaebb9ceb479d33cd34d3e79f7f5e8b867882cd37dfbc00c17cf3cdf7fefbefd7d2b1
cbdab4278f54cb1a26b570fdf5d77bfbd1db0d5b6cb185bcd36cb3cd36ea8ee79d77de0e3bec40
439a2dbae8a24b2fbdf4a01331fdebaebb2ecd2c2ef7dd77df54534d3568afee6b307c7150c8fa
a38f3ebaf1c61bcf3efbece9a79f1e20acdf134e38e1409ad875d75dcf38e38c3c9d6cb2c92c34
c252462f86f07ba2892602afdc82b173b9e0820b8a1873892596b8f3ce3b279f7cf2eed3712d1c
0df57ea1169aaada50ff4e3bedf4d4534f1d7cf0c1f7dc73cf820b2e68d578f0c10763f7553fcb
2db7dc8c33ce984abaa76638b047fdf6db6f65173efef863bf5d0f7cefbdf7a41c0a10486cdf7e
fbeda32d08c8aa03fc4195a659f3adb7de7aeaa9a7f2139b6ebaa9f562a9a5962ada9c7efae9d6
91f3cf3f9fca558e39e6987befbdb750233722ed26aebcf24a2340c6575f7d955ebadf76db6d53
4c31450318ed9a2e9d878342f47698a207be9d7d5b3884781e495af30774bcf2ca2b7ff7dd776a
2418ec3ea69e7aea74e45776db6db7e206941b88c2d2d5565bad6b34da18231d8c83306caff1d8
638f4d3bedb48922b7de7a6b089861861984fdbbefbe7b42015bca1b6eb861ca29a7b4acc85214
925a68a1855ca33df4d043c51c8d89af6b7a8d38fcf0c33b9a19066d9728240c17ae3e5b2f7882
71c71d5722e1f9e79f57090d72d88e3765af398f825f1b57efab8b3a575c71c58e164209c477fa
3ed82e404ebaf891167cedb5d7e0400c88b5030e38a09051e52b03760792d04f3cf18404c65557
5dd5e942689efece5e172892e22df9513607201a5088952b88076508fa9a4bde9d953ff65b2cc9
9d408925464b71863073ce39e72cc1c83a67880ec68104a2acd1f1c71fbfeaaaab8af6858d928f
1b6db491a5e1fefbefb70ad08298e0e28b2fbee4924b0a8d2cbbecb2c71c73ccdb6fbf9dbc21e8
881941c16938f4d85ede71c71d3c84fb5195c7609da3d046296ddea5b46b848b2ebae8acb3ceaa
9afdc4134facacb1a1a8baf43df3cc33cb6a176d689df5570d72c82187acb5d65aede2ab2df376
401ea92e84276d909f4b2fbdd4f6a1eae50819245987e2c53a3ea0ef9b7762ccba26ed82c61dbc
2e70f8ee0aecb8e38e956ad877df7d4f3ef96435acdca302043204324e3207c942c2877ca282f3
6e5f6f545f39c851471da59eab2857c1125c279c7082003639abe43a1b9b027613dfe8ae2c136a
691b6828b700d758638d5127caba13078e180a95938e7b4ab44e58071e78204d445e5690fdf6db
8fbe9d594b540f010eec5d9d7e096c6b7c3f29c722b0ce3f816f636f81066d185f7cf1c54785b9
b6ac46a54cda6f7ce038fb94534ea9340e475395f74a04921187436a670a224aa0a9a2e7c8238f
147b964264e5202e584c3cf1c4a50f5bca80dd161fd808804276807edc2db07c14f712d4700c4e
aa142494dc8d7bf6d967fbbe5dc9fe1862228c679e79a631d7dd59bdba0a07d67557160a056cb7
dd764050b570ca31cb2025ff689708347d15660549202909210fed20caa97790d1ad3fdd830337
549d14147af20967caeb3710f316cd2db7dc122761f9bcf6da6b8b03e8742f54bee1861b5a382e
bffcf2b7de7acbad16d1e540e7dd1d8f8f525697b60c52191f549d92ecb2cb2e839264435128cf
cea2b2fd99679ee908aa6a04ebc8d5575fbdfaeaab4b351e7df4d14e31069da2aa412f3e68adb5
48fb1c71c411c51c6263b710069dd21ea1d82e9e73ce39952f583aada8f21046e35a241e1c52f3
1092d02ed3ba78cd5574c93df77a413d7cda3ffcf0c30e0ca5962b556e330d160f3df490ecf2a8
49954e769f25e71151b353695d2c0186b5cb1894d3279f7cd245a9b9e69acb01f7d34f3f3d68fb
e1ec0f3a387f2075e85db677de79a7c08185dffd449b05d74d1d41398fe6c32592c5ff49113274
6b3f976e5be100c2253637d24497d932c8b4e8e25abdbb6b3cbf6b70833a150d6c4a451b561937
a46d4fbc0c5360cb53701c6fbcf1320e842db6d86282d35a861de2361d8c03e74c7241147cf3cd
37cbcc88136bb9a05c255f0870dce045db1c4b1ac7bb34f4ca3d18bf2e6538b872a025ea740dce
56450acfb997d0d54db82003f8e49186270edaf3fec2a02eb49606dc38e3a34537cd2df0b57419
a88d147261b51b6fbc3167d0cc3993fb519286b214b44efdaec3bffaeaaba6f6df88866d1ea9e3
7140be12c3cd80207d4f3bedb458bfc5c5b5a5667090013ff9e493e2044bbac2a5f8e11c1f7443
fea0943b23f2455e727524e3266329afb2b07e90ca5182a064dd75d7b5d1cd9b5b752d3743d3b8
837120ac2bee9e97222c77e1dd405978e1856b3c071af5a46258cb81fda778d635497b939c0a0e
b72fea868b0ec681ab030dbf2ddfaf0aed1d586d2990aa1cc45d6ab182b0b178a5baf4299a1fb0
8371d03cf3bd110a09f470d03f1886e9eeae65c8ede1a07fd1567d11be14f9cb5f95324e2b06e9
601cd898b5422219b31538e8f75f10b48e85ba46ee601cf43d0aaa8bf3a16fec12fdd04f5ae38c
1d8c831a391c56cd7af98361a58ef610e32cc3a1542b569ce6f9e9f9837e6448610ddf281f854a
7c83c15a56f9a26df3fa2b6b8432cf1b89cf55b0be5fcc26534934691f57c1c44ab930989c5d3e
b5ad5e9bbc6d18c67cc0468e28c7c12a533082667ef22935793aefb249fe140dd2d7a70e9cf69a
d13b6bf9fc45a5151a598dfc71f1b24ae20cc3162f1408ecdd2d68e665783c8623fc16f7cd1d67
bb3ee9726c55c08898aa84581a84eb1016d62246572c31084f062c44849d0ca2af6b9578af8448
3e5be933750ace42fba2a74c1c38577539c72d7de7fa2e89205a6ed5d92bfa5659651592259115
5658c11561eaf1c6b1962e8338947330ef0d6509dd5c0b70d3dead023b783aa66935de3df51288
368e74fde9d3dc580205055fcd31ac66a449fa5448109e3a7c92c7957b7ee18517fcf645849123
473aeff14d6f944083ab00ae299097e914d438b676d7c8381e3dfae8a304e7420afa89581ba788
84e835483514a3e005183420db0112c69d2b229b621c4f60441b9fe0f3a22d8539660cd9b3cf3e
3b2eb08fa4a49c1116b29d4dd39f4b0c4e3ed1e914db6fc4d8160930b57760815a837b258b2275
7cf7dd7715dc99d0d82c4491af4f9ace3886d598dc1488c21907fa3d72c8de5a1c38a1997beeb9
d12d1ac292df104088e62682bc41461cac9fd08900c3144676eadd1679f1c517f14952d2f274e0
f4882e7577e1279f3120f1975e7a89a0e98952899e32a00a9f50e5ad67234315351b1086b4d1d8
4d436fc26b63400a2326a832a9ee6a50cbaa8003a9646776d0d4cc14244b88d34d379d2e44af0d
39822c527187121f5ee17bdc44c2051d984e3d09000a66c1c2231c294015461659641105b429a4
0d8eb0863644ba204f621e61441bbd14f402a6d0efd40a19384292db12cc0c74504856d40c5e9c
04c4f88d0594f84d20f1b8c8c0af414067cb2db76c2d0ed877bea3cf71f98d50f4a138843a130a
02889e087088320cab443a42d90765e8ab9e896332de4f5fbe01331e291836c0a21e56a2069e0c
a2c62054652296a4af298c4f40e44b7644a6408bac8744e895d59208f91234cb03025ad18b765d
6bf0c8375658211a28c33d2583a7178e34d6cbd4ba03ae01694e1b8d411092b4f18881c6524906
5f0a78640ca0835f94009361353329e1188a117bca8d055ef08178ac999728e00c98b47466e123
40a86503813eec2a100bc7e65e3566b96157f4147ce681abd38663ab5a32828932e344d3f8312b
f1a14f81cb4a584022b9278e496d2cf0da04aa5825446ac3b60214635b1b664a34a44982f46a1c
05824801de837d9830975e50e2911a32caec66c9e70d8886d073a154a547e655c8d11fcc2968a0
260bb35e391df60801865540bf7a7d1582dd8cccdf261661ac46404f0ae8617c60aac0b141a102
5361061aabb1163882a25dcd88051494d580a0a7a4614d810640f18803c3af1a0b2ef900bd02d1
91920241411b1f637644aa31a0a70a7a29e4bb900aa0d3d719948c03caa60006c7aa825c66c1ac
a99ccf44621c322306613c7b94e0201e12b7840ed4e448dcda601b57da100dcd5905581285c1bb
3f1996c6244ec15e35a112656d8233a1096238032ed7f83a1ad08c04c79208852859393a155048
4654c5dcfd58202058a55e44ccf4f5a2181cd1babe38f508235616ddc154639a0041ab9849c194
46a1130d3491f84e7becc0503eda8560ed3d52f0548d1112532bc04a8c2a61b51a2c27ca564ec4
6d7c7df3f65540ac6076c3c21fe921430dc162d39f7cdb40df222d394e4cc042643c241e0885be
d107d4096a3c6210982114dac536315100078b7a44e3306a23084c32441e9beed99fc6b1c830ef
b7b90ca54bde60a40fae4281be733581e940958e02cc3876584cb4011f092940d0a556b32870c2
1a739e6c0b49daf0b445d841433054ace8021ac4a80165049882ace963de79e72571d01166e21a
aa0ce8b790c8ec285480334c69065ba8e2000091c360272881219e033be86742240370a8654b56
1fb451700aba2870fe5917d4a01f2362d8f0a8bb025bb25260849df49bd62cf33b595980050440
97f595fa019368b2c6aba17e769c40129c511f678e44aaa557bfc925e8c612a516173762e86a34
d0259bccb48486ac32ba24308ec388eb6622d9c5255650afcc8b642bef4fe5b4a7245d344bb627
c19702cd511b0dd1b4960a6a8c8c0b35896614e236c002b3e279c88b34048ca8e257a887ff0094
d48045ae47c3104ca8e18d021dbe0a268831a1b7c1199506ca0644277c03070a3dd226a8024a0c
0a5cc4285836829111c91a350635c06af9ba801af4adb7de7a66b53ac0295af9403130b98002cf
8c43e8662859e3e11427b13c3e800e60590d58b0216d30a35736d096032d130765f7af8d41a893
40b5a448c2ca9791c89aade848fa5c4b14a3c698686313b0920fad111c3f8f3c8ff8fcb451607c
7a016efec583dfc93da0212e0a409151e0cf9fc53ff03678609d0b48898df26fdefd99f54225a7
a512e6c005191e650534453edba340cd59383c4a42221f844343e20fdc415e820c2e8acc999f6d
54b636220cb1a79a4424fd82e09f90a8c4efe6610354138a6306653e46c4bf4131302202b72823
652b166062462191336e53d08c92488720e886b0a08a6ab10dddd9852a107402b138ff44fe6667
0a44a6806d22030b05d2641fe46234ce330b04c0a10dcd6a3c3223781907e5c8d6c68012218c8c
9ea43dd0c33704ca00a726290d6da81388c13d9f6d3372366f79392eec9b280e00795c02390016
66a1139b74cc6060cee0d4e9911abfb38c6239fb1d8cb06962c4888e596181382b2c586b836b6d
72189b8d0fa040b0114c1428f7fd29333ee87782d834f9a21895c175328364874302d206cf0447
075941889e08b2b84404892dd4180702c80b38c8857081438d47fe346064c11f52862938580312
9c91d5580292bfd38c9540005515efc99b97d462b829a8d13e85ecd70d6eba7c874b2104180a62
3ca272b688362ae7fccdcb575bdad196f8c36840a98d2940500df48b739336c8d24e387a297804
79d67805be53d202e5bc2904e34563e8243d7359a714e01e8580826b149a2bff0b6fd04b912dc7
4125384813411c176de5453016634f41fde19f99f2e70a9af1e7ccdd238210fe44a0c923291004
1db000ccf31fc4946c0130d57bbc8b0c30d59d591322d9253e0556042738071405ba3451a2d4c4
0df4ad573277f9ef1d4c500d6d2958f8a1272935035a83e8068f09e30daba30659ecb21c605c5f
0df0a546177f9a1a04a1d9ecdc4072856249928cf5a33ff2e1fc583c9c452003ad026df007b593
d26bd946099499476a231bbda99b94c07f0035b9f120f72b50d70000000049454e44ae42608200
0840010824000000180000000210c0db01000000030000000000000000000000000000001b4000
0040000000340000000100000002000000000000bf000000bf00002d430000a642030000000000
008000000080ffff11430000008000000080ffff9b422100000008000000620000000c00000001
000000150000000c00000004000000150000000c00000004000000510000005c3d000000000000
00000000910000004d00000000000000000000000000000000000000ad00000053000000500000
00fc0300004c04000010390000000000002000cc00920000004e00000028000000ad0000005300
00000100080000000000000000000000000000000000f50000000000000000000000ffffff00dc
dcdc00a5a5a500d0d0d000fcfcfc00f5f5f5004c4c4c0098989800a2a2a20056565600f6f6f600
535353008b8b8b00fefefe0055555500858585004e4e4e00fafafa00f9f9f900414141003a3a3a
007d7d7d00777777006c6c6c00696969003c3c3c008f8f8f008c8c8c0089898900484848007373
73005c5c5c00848484007c7c7c003535350092929200c7c7c7000a0a0a00757575003737370062
6262004d4d4d00cacaca00a0a0a000f4f4f40003030300e4e4e400d8d8d80087878700eaeaea00
fdfdfd00f7f7f700f8f8f800070707003b3b3b003636360049494900fbfbfb005e5e5e004a4a4a
00c3c3c3006f6f6f0088888800e5e5e500efefef002a2a2a00a8a8a80017171700d7d7d7007979
790023232300acacac00dbdbdb000f0f0f000b0b0b006565650027272700ececec007272720034
3434003d3d3d009b9b9b00bcbcbc006e6e6e00bbbbbb00050505001d1d1d00ebebeb0059595900
29292900e3e3e300f2f2f200a1a1a1004747470030303000dedede000101010066666600525252
0097979700f3f3f3006a6a6a00111111008a8a8a008e8e8e007a7a7a0070707000040404003333
3300ededed00c4c4c4001f1f1f0061616100a3a3a3001c1c1c00868686006b6b6b002b2b2b00ae
aeae00939393001919190002020200969696002e2e2e001212120024242400d6d6d600c6c6c600
e2e2e2000e0e0e0010101000d2d2d2009f9f9f00bdbdbd009c9c9c00b7b7b7009a9a9a00c0c0c0
00d4d4d400919191002d2d2d00b1b1b100a6a6a6003838380076767600dadada00b3b3b300cbcb
cb00aaaaaa001b1b1b00141414000606060016161600151515003e3e3e00bababa0020202000a9
a9a900b6b6b600bebebe009d9d9d00808080007f7f7f0081818100b8b8b800c1c1c100b2b2b200
1e1e1e00b9b9b90046464600a4a4a400c2c2c2008383830042424200959595005f5f5f00e8e8e8
009e9e9e005d5d5d00cdcdcd005b5b5b005050500051515100f0f0f0002c2c2c00cecece006464
6400dfdfdf00b0b0b000eeeeee007e7e7e004040400067676700ababab0043434300e6e6e6007b
7b7b008d8d8d002f2f2f00c5c5c500cccccc0068686800252525006d6d6d003131310054545400
131313000c0c0c004b4b4b00dddddd004545450082828200b5b5b50044444400c8c8c800606060
0008080800c9c9c900d9d9d90090909000d1d1d1002626260078787800b4b4b400e7e7e700d3d3
d300212121003f3f3f0039393900636363005757570071717100d5d5d500adadad00a7a7a700af
afaf009494940099999900cfcfcf00bfbfbf00e0e0e000e1e1e100f1f1f100e9e9e90001010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010000000101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101000000010101
010101010101010101010101010101010101010101010101010101010101010101123ad258a9a5
4053a9e1a5555be0d545a5d5b1a7885ba99f819cdac4db6ef4b80b580101010101010101010101
01010101010ed22f8455c86fa025ac86ac8a553df0a0c88686da88a9ba9ca9ef8693da869fac8a
9c9455a02ba9a08aa9a68a86c88053d755a5daf09c2b55888486f045a9f0dba586f46fdd053501
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101015c0be9458ada93538abda0f0a7ac88e08088bd258e8e2b93932be09fc8
bd536f939cda9355daa7a549e23d3249f15c32f258f22bc46f3da6a6a69cc88af02bc8a0d73d53
c9d5552b9c9cdaa5f049a5a081a7a0e1d59cc49355f4a5ac6e86536e53a56e9c8abef03d418a53
41a6866e3da96ec88658baa632dd6ff484a040e9bc0e0e01010101010101010101010000000101
0101010101010101010101010101010101010101010101010101012ff00ba9555b9c5392ac9c8b
5588dd6f55dd3df0ef8a539494a0dac9a625b48aacef8aa6308af00253c82ff080f4f06f58f03d
b8a0c86555ac658aa0f355a065533d0b868606a68a41aca0343d55656f5558da6f6ed76f32b4a6
60daa0f184a6304588047f55ba3055c97f8825498880029cac6086f0d29fa5f29c88f19fa9f1a7
a7d2a78692f2c40101010101010101000000010101010101010101010101010101010101010101
0101010133863aa604dba0b4bc6f80e186c8b186f03286f0589c86b8a5556588a62d5355348aa5
65a0f041ac8632f088f453ac2fa6acf19c5330a053e98080e2d73d8480a525d7a9b42ba59494a5
2504a9f0ba9ca0049ca984a055e255e0459f9345e0a7e9bd937fe08894e0a9c9d586dae0a6c888
ac6f9c8a809c806f88808a88948aeaef9c8ee2e0a70293a7d288d7010101010101010100000001
010101010101010101010101010101010101010101010101452bec81a7ec0288bde2e0e084a5e0
2b939c9488a02b55ac809fa66f86a68a55a6a5a98688f0869faca655a66fbdac53a780a0ec9486
ecda88a73d9f88c8a7e0c8a7a980a55325a55553883da9886fa086da8653ba869f84558e04558e
7feca7928ea7f2eaa7d2a98af18853bc88a981a59cf15588028a8a60c853bc808a81c99c40ef88
2f8ba0bcdba6028101010101010101010000000101010101010101010101010101010101010101
010101010160a653e2ecea848e88e2e0e09493d5d7a79f2b9355d78853c8d58af0a93df08855a0
5355aca653a03d8653b48af0ef86867fa553bc55a0e19c9ce1e0a9e1a75332a98641a9a6be9cf0
415553b1558632f086f425a62fd7a6f4809cbeef9c4e45a0e192a6609288d2f155e92f6fbac4a0
efb19c2558a580b89c80b89cda65a5a041a986585353f4555558ece05801010101010101000000
010101010101010101010101010101010101010101010101013345e29cc9309c94029cda2f86da
408a6f329cc85886864ea555bea9a641a58a65538a5cf0f0f31610000026060f002220574d4643
01000000000001000000000000000300000000200000f0130000f05300008af0b8a68ab8ac8ab8
f09cc4869cf2c88af12b8660d7868404a08be99c8445a6ba926fba60a6b402a6d76088808186ac
329fa02f939cf193535b9fa08193a902939fdb9fa5e288a9dba59ce9d59f949f9cbaa9f0dae0a6
c89c258a8894aca5c9ac53c9d5a902010101010101010000000101010101010101010101010101
0101010101010101010101d204d5e19ca75b5555b15555d29fa7f2e09c02538630a9557f8655e9
a0f0ba3d53c96f53acda8a25d755ac25a953259fa5d7a9e02b77d5c9e0d504889f048e9fe9d59f
efd59fdda5a50488a584a553ddd59c2bd5a6acd5c86fa7c9a093c9a7930493a9c9939cefa78804
9f86ef9fa0baa753e2d555babda5e2e0a98bd59c7fa6a6ddc8a0dd8b8ae2459cdd025501010101
01010100000001010101010101010101010101010101010101010101010101452b888093e080a7
9fd79f55d7bda98a8886ac9cc8a68880868825f09cc9869cda9c55da9fd5d7a9a68093a0a6ec8a
a5f0c888d5ba88d5e29fa5459f9f7fbd9c02ec9fc99f9f45e0ec7fa7d58b9388db935549e09ff1
538881a986d2ac86452ba649dda6308b88e27f55dd6088c95b88bab18804499cc95c9c25659ca6
2d8a80343dac35539c12f0861253ac2d0101010101010100000001010101010101010101010101
010101010101010101010101bd7fa053d780533ddda025b486acef9fa0e9d555db77a949e0a502
88a05b9f9f2f9c88b19c8eb1a59c6e9cf04155a64ea055b1ac6fb1f0a0e125a0812ba0d2e2a0f1
e948d230a692db5592d255db4055456e55844ea02bb89c3d6e5580b8a5f0be9f5358d5a04ef0a6
be8655328886e1e0558153a0608a867fac3de2538a846f5304d786daa03d8a86d7f0a609010101
010101010000000101010101010101010101010101010101010101010101010160e9eac448eae1
8eebe193eab1a5c2609fc249a9c2dba543929cc27f55c28b86ec84acec80c8a7c980c2d588a172
9cafeb9c695d536985a06864d73f78c81024d768edc8c68cc81b7bd78ced94af8cd7ee0880a1ed
a0b252bd1b0da77b8c851b22b2dcad7b2446ed7b221c08ad0d87a3dc89d47b9e748c8f3f3f7221
215d21a3eebf160d91dfc691df6846226801010101010101000000010101010101010101010101
0101010101010101010101010105afe3e3e3e3e3e3cbdec750151a1ae4e41ae59bae1ae4e4e407
aee4e4aee4e41e07b6391ec797e4aee4e4e4e40f2a11590707aae4e4e407070ab3b3b35959b359
b3b3c34ab3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b0e6b3e6b3b3b3b700e7b3b3b3b3b3
c1b3b3b3b3b3e6e6d8d8bbd8d8d8716646e818d8b3b3d8c1b3b3e63e6a6a6a6a6a16a408520101
010101010100000001010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010186d6010101010101
01010101010101010101010101010101010101010101878d010101010101010101010101010101
0101010101010101010101015b7a5c010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010000000101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010186d601010101010101010101010101010101010101010101010101
010101855a010101010101010101010101010101010101010101010101010101b8983401010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101000000010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010186d60101010101
0101010101010101010101010101010101010101010101855a0101010101010101010101010101
0101010101010101010101010165d00e0101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010100000001010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010186d6010101010101010101010101010101010101010101010101
01010101855a010101010101010101010101010101010101010101010101010101658201010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010000000101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101a6d601010101
010101010101010101010101010101010101010101010101855a01010101010101010101010101
0101010101010101010101010101bc820101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101000000010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101dbd60101010101010101010101010101010101010101010101
0101010101855f010101010101010101010101010101010101010101010101010101db82010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010100000001010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101dbd6010101
010101010101010101010101010101010101010101010101018528010101010101010101010101
010101010101010101010101010101658201010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010000000101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101dbd601010101010101010101010101010101010101010101
01010101010185aa01010101010101010101010101010101010101010101010101010165820101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101000000010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010101010101dbd60101
010101010101010101010101010101010101010101010101010185aa0101010101010101010101
010101010101010101010101010101016582010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010100000001010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010411010101010101010101010101010101010101010101
010101018be00185aa010101010101010101010101010101010101010101010101e1e255688201
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010000000101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101010186d801
010101010101010101010101010101010101010101010101d326dd87aa01010101010101010101
0101010101010101010101c8de2e000056dfd00e01010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101000000010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010186d80149010101010101010101010101010101010101
01010101dc00009d31aa010101010101010101010101010101010101010101b1980000679c4582
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010100000001010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010101010101010186d8
329a890101010101010101010101010101010101010101a9d900006310aa010101010101010101
01010101010101010101da19b95f0042db01d28201010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010000000101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101019cd307002ed4a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5
a5a5d5859700002e0dc0d60101010101010101010101010101010181746d0a9c0ed7aa41010160
820101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101000000010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010101010101010101c4
9d000000009d0d1d3997cd0f1f6aa4a41762077696cea32e0000cf5fd000100101010101010101
01010101011377d1381b410101010134010101d282010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010100000001010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101805062000000009822c835010101010101010101
01069f8300006c86016050b50101010101010101010101c9cacbccba0101010101010101010101
458201010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010000000101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
5d0801c561000000170e010101010101010101010101180000610d010101c65a01010101010101
01c474c7398f0b0101010101010101010101010145820101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101000000010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101015d080101a20000000066010101010101010101
0101a1000000c101010101648d01010101013ac2c37e10c4010101010101010101010101010101
014582010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
015d08010101bf610000006b33010101010101010180560000c03a010101010d5a01010149917e
3b3d0e010101010101010101010101010101010101458201010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010000000101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101015d0801010101ad00000000bb3a0101010101
01bc6700006c780101010101875a01bd515008be01010101010101010101010101010101010101
010145820101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101000000010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01015d080101010101b700000000593301010101b8b900004a24780101010101685f01abba0101
010101010101010101010101010101010101010101014582010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010100000001
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101015d0801010101014f697a000000b5120101
01b6000056a5ac7b0101010101ad14010101010101010101010101010101010101010101010101
010101458201010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010000000101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101015d0801010101014f01af610000002a6e01910000000d01aca10101010101adaa01010101
010101010101010101010101010101010101010101010145366b1f1f1f1f1f1f1f1f1f1f1f1f1f
6bb00ab3200a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a630ab401010101010101010101000000
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101015d0801010101014f0101872e000000ae
af610000b00101ac780101010101adaa0101010101010101010101010101010101010101010101
01010101b14f54a4a416a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4316821216887b2b2b2b2
b2b2b2b2b2434e0101010101010101010100000001010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101015d0801010101014f010101ab560000000000009b350101ac720101010101adaa010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010000
000101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101015d0801010101010d010101018f2e00
000000a832010101a9a1010101010122aa01010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101000000010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101019c9d9e32338148052d9f8f8f9c200000000090a0a1a2a368a3a4a5a6a7759a5d0101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010100
000001010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101012b6d0000004b96967e5f5f9700
0000000000002e98002e5699449a9a9b4901010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010000000101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101330b0b0b0b19925c050191000000610000006d939451950101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
000000010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010101018f318c872061
0000909126000000003c5e3f010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010100000001010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010133806001013b8788893600004a8a8b8c000000008d6d8e01010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010000000101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101012f685a7e7f01018081048200
008353848484854b00000061860101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101000000010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010135775147172b0101010178227900007a1f7b1d1d1c237c7d000000234e0101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010100000001010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101336f2970713d0e01010101010172730000
0074243e7575757575635600000076580101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010000000101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0140645f3c0365010101010101010101660000006768690d6a1721176b6b4c6c0000006d6e0101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101000000010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101015c5d5e5f0d60010101010101010101010152610000
5f6262626262626262626262626300000042320101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010100000001010101010101010101010101
0101010101010101010101010101010101010101010101010101324f5051520e01010101532947
542b0101010101010101010101010155560000575801010101010101010101010133590000005a
5b0101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010000000101010101010101010101010101010101010101010101010101010101010101
0101010101010244000000003b014546473948130101010101010101010101010101494a00004b
2b01010101010101010101010101010e4c0000004d4e0101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101000000010101010101010101010101
01010101010101010101010101010101010101010101010101013c0000000000003d3e3f400101
0101010101010101010101010101414200002e4301010101010101010101010101010101331900
001112010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010100000001010101010101010101010101010101010101010101010101010101010101
010101010101353600373800000016010101010101010101010101010101010101123900000022
0101010101010101010101010101010101013a3b1a0b0101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010000000101010101010101010101
0101010101010101010101010101010101010101010101010101062e002f300000003101010101
0101010101010101010101010101322a00002a3301010101010101010101010101010101010101
0e3401010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010e0a000026060f
001214574d4643010000000000010000000000000003000000f013000000000000f05300000101
010101010101010101010100000001010101010101010101010101010101010101010101010101
010101010101010101010101012800292a0000002b010101010101010101010101010101010101
01012c152d01010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010000000101010101
010101010101010101010101010101010101010101010101010101010101010101252600000000
270101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101000000010101010101010101010101010101010101010101010101
010101010101010101010101010101202122222324010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010100000001010101
01010101010101010101010101010101010101010101010101010101010101010101011a1b1c1d
1e1f01010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010000000101010101010101010101010101010101010101010101
010101010101010101010101010101011501010108190101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101000000010101
010101010101010101010101010101010101010101010101010101010101010101010101150101
010819010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101010101010101010115010101081901010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010000000101
010101010101010101010101010101010101010101010101010101010101010101010101011501
010108190101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101000000010101010101010101010101010101010101010101
010101010101010101010101010101010101150101010818010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010105010101010101010101010101010101010101010101010101010101010101010100000001
010101010101010101010101010101010101010101010101010101010101010501010101010115
010101081701010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010000000101010101010101010101010101010101010101
010101010101010101010101010101010101011501010108160101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101000000
010101010101010101010101010101010101010101010101010101010101010113010101010101
140101010810010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010e0e0101010101010101010501010101010101050101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010100000001010101010101010101010101010101010101
010101010101010101010101010101010101010111010101081001010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010105010101
010101010101010101010101010101010101010101010101010101120e01010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010000
000101010101010101010101010101010101010101010101010101010101010101010101010101
010a01010108100101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101050101010101010101010101010101010101010101010101
010101010101010101010101010101010101000000010101010101010101010101010101010101
0101010101010101010101010101050101010101010a0101010810010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010100
000001010101010101010101010101010101010101010101010101010101010101010101010101
01010a010101081001010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010000000101010101010101010101010101010101
010101010101010101010101010101010101010101010a01010108100101010101010101010505
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
000000010101010101010101010101010101010101010101010101010101010101010101010101
01010e0f0101010810010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010100000001010101010101010101010101010101
01010101010101010101010101010101010101010101010a010101080d01010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010000000101010101010101010101010101010101010101010101010101010101010101010101
010101050c01010108090101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101000000010101010101010101010101010101
0101010101010101010101010101010101010101010101010a0101010809010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010b01010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010100000001010101010101010101010101010101010101010101010101010101010101010101
010101010607010101080901010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010000000101010101010101010101010101
010101010101010101010101010101010101010101010101010201010103040101010101010101
010101010101010101010101010101050101050101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101000000010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010100000001010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010000000101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101000000010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010100000001010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010000004c00000064000000000000
0000000000910000004d0000000000000000000000920000004e0000002900aa00000000000000
00000000803f00000000000000000000803f000000000000000000000000000000000000000000
0000000000000000000000220000000c000000ffffffff460000001c00000010000000454d462b
024000000c000000000000000e0000001400000000000000100000001400000004000000030108
00050000000b0200000000050000000c024e009200030000001e00040000000701040004000000
07010400931e0000410b2000cc005300ad00000000004e0092000000000028000000ad00000053
0000000100080000000000000000000000000000000000f50000000000000000000000ffffff00
dcdcdc00a5a5a500d0d0d000fcfcfc00f5f5f5004c4c4c0098989800a2a2a20056565600f6f6f6
00535353008b8b8b00fefefe0055555500858585004e4e4e00fafafa00f9f9f900414141003a3a
3a007d7d7d00777777006c6c6c00696969003c3c3c008f8f8f008c8c8c00898989004848480073
7373005c5c5c00848484007c7c7c003535350092929200c7c7c7000a0a0a007575750037373700
626262004d4d4d00cacaca00a0a0a000f4f4f40003030300e4e4e400d8d8d80087878700eaeaea
00fdfdfd00f7f7f700f8f8f800070707003b3b3b003636360049494900fbfbfb005e5e5e004a4a
4a00c3c3c3006f6f6f0088888800e5e5e500efefef002a2a2a00a8a8a80017171700d7d7d70079
79790023232300acacac00dbdbdb000f0f0f000b0b0b006565650027272700ececec0072727200
343434003d3d3d009b9b9b00bcbcbc006e6e6e00bbbbbb00050505001d1d1d00ebebeb00595959
0029292900e3e3e300f2f2f200a1a1a1004747470030303000dedede0001010100666666005252
520097979700f3f3f3006a6a6a00111111008a8a8a008e8e8e007a7a7a00707070000404040033
333300ededed00c4c4c4001f1f1f0061616100a3a3a3001c1c1c00868686006b6b6b002b2b2b00
aeaeae00939393001919190002020200969696002e2e2e001212120024242400d6d6d600c6c6c6
00e2e2e2000e0e0e0010101000d2d2d2009f9f9f00bdbdbd009c9c9c00b7b7b7009a9a9a00c0c0
c000d4d4d400919191002d2d2d00b1b1b100a6a6a6003838380076767600dadada00b3b3b300cb
cbcb00aaaaaa001b1b1b00141414000606060016161600151515003e3e3e00bababa0020202000
a9a9a900b6b6b600bebebe009d9d9d00808080007f7f7f0081818100b8b8b800c1c1c100b2b2b2
001e1e1e00b9b9b90046464600a4a4a400c2c2c2008383830042424200959595005f5f5f00e8e8
e8009e9e9e005d5d5d00cdcdcd005b5b5b005050500051515100f0f0f0002c2c2c00cecece0064
646400dfdfdf00b0b0b000eeeeee007e7e7e004040400067676700ababab0043434300e6e6e600
7b7b7b008d8d8d002f2f2f00c5c5c500cccccc0068686800252525006d6d6d0031313100545454
00131313000c0c0c004b4b4b00dddddd004545450082828200b5b5b50044444400c8c8c8006060
600008080800c9c9c900d9d9d90090909000d1d1d1002626260078787800b4b4b400e7e7e700d3
d3d300212121003f3f3f0039393900636363005757570071717100d5d5d500adadad00a7a7a700
afafaf009494940099999900cfcfcf00bfbfbf00e0e0e000e1e1e100f1f1f100e9e9e900010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010000000101
01010101010101010101010101010101010101010101010101010101010101010101123ad258a9
a54053a9e1a5555be0d545a5d5b1a7885ba99f819cdac4db6ef4b80b5801010101010101010101
0101010101010ed22f8455c86fa025ac86ac8a553df0a0c88686da88a9ba9ca9ef8693da869fac
8a9c9455a02ba9a08aa9a68a86c88053d755a5daf09c2b55888486f045a9f0dba586f46fdd0535
010101010101010101010101010101000000010101010101010101010101010101010101010101
01010101010101010101015c0be9458ada93538abda0f0a7ac88e08088bd258e8e2b93932be09f
c8bd536f939cda9355daa7a549e23d3249f15c32f258f22bc46f3da6a6a69cc88af02bc8a0d73d
53c9d5552b9c9cdaa5f049a5a081a7a0e1d59cc49355f4a5ac6e86536e53a56e9c8abef03d418a
5341a6866e3da96ec88658baa632dd6ff484a040e9bc0e0e010101010101010101010100000001
010101010101010101010101010101010101010101010101010101012ff00ba9555b9c5392ac9c
8b5588dd6f55dd3df0ef8a539494a0dac9a625b48aacef8aa6308af00253c82ff080f4f06f58f0
3db8a0c86555ac658aa0f355a065533d0b868606a68a41aca0343d55656f5558da6f6ed76f32b4
a660daa0f184a6304588047f55ba3055c97f8825498880029cac6086f0d29fa5f29c88f19fa9f1
a7a7d2a78692f2c401010101010101010000000101010101010101010101010101010101010101
010101010133863aa604dba0b4bc6f80e186c8b186f03286f0589c86b8a5556588a62d5355348a
a565a0f041ac8632f088f453ac2fa6acf19c5330a053e98080e2d73d8480a525d7a9b42ba59494
a52504a9f0ba9ca0049ca984a055e255e0459f9345e0a7e9bd937fe08894e0a9c9d586dae0a6c8
88ac6f9c8a809c806f88808a88948aeaef9c8ee2e0a70293a7d288d70101010101010101000000
01010101010101010101010101010101010101010101010101452bec81a7ec0288bde2e0e084a5
e02b939c9488a02b55ac809fa66f86a68a55a6a5a98688f0869faca655a66fbdac53a780a0ec94
86ecda88a73d9f88c8a7e0c8a7a980a55325a55553883da9886fa086da8653ba869f84558e0455
8e7feca7928ea7f2eaa7d2a98af18853bc88a981a59cf15588028a8a60c853bc808a81c99c40ef
882f8ba0bcdba60281010101010101010100000001010101010101010101010101010101010101
01010101010160a653e2ecea848e88e2e0e09493d5d7a79f2b9355d78853c8d58af0a93df08855
a05355aca653a03d8653b48af0ef86867fa553bc55a0e19c9ce1e0a9e1a75332a98641a9a6be9c
f0415553b1558632f086f425a62fd7a6f4809cbeef9c4e45a0e192a6609288d2f155e92f6fbac4
a0efb19c2558a580b89c80b89cda65a5a041a986585353f4555558ece058010101010101010000
00010101010101010101010101010101010101010101010101013345e29cc9309c94029cda2f86
da408a6f329cc85886864ea555bea9a641a58a65538a5cf0f0f38af0b8a68ab8ac8ab8f09cc486
9cf2c88af12b8660d7868404a08be99c8445a6ba926fba60a6b402a6d76088808186ac329fa02f
939cf193535b9fa08193a902939fdb9fa5e288a9dba59ce9d59f949f9cbaa9f0dae0a6c89c258a
8894aca5c9ac53c9d5a90201010101010101000000010101010101010101010101010101010101
01010101010101d204d5e19ca75b5555b15555d29fa7f2e09c02538630a9557f8655e9a0f0ba3d
53c96f53acda8a25d755ac25a953259fa5d7a9e02b77d5c9e0d504889f048e9fe9d59fefd59fdd
a5a50488a584a553ddd59c2bd5a6acd5c86fa7c9a093c9a7930493a9c9939cefa788049f86ef9f
a0baa753e2d555babda5e2e0a98bd59c7fa6a6ddc8a0dd8b8ae2459cdd02550101010101010100
000001010101010101010101010101010101010101010101010101452b888093e080a79fd79f55
d7bda98a8886ac9cc8a68880868825f09cc9869cda9c55da9fd5d7a9a68093a0a6ec8aa5f0c888
d5ba88d5e29fa5459f9f7fbd9c02ec9fc99f9f45e0ec7fa7d58b9388db935549e09ff1538881a9
86d2ac86452ba649dda6308b88e27f55dd6088c95b88bab18804499cc95c9c25659ca62d8a8034
3dac35539c12f0861253ac2d010101010101010000000101010101010101010101010101010101
0101010101010101bd7fa053d780533ddda025b486acef9fa0e9d555db77a949e0a50288a05b9f
9f2f9c88b19c8eb1a59c6e9cf04155a64ea055b1ac6fb1f0a0e125a0812ba0d2e2a0f1e948d230
a692db5592d255db4055456e55844ea02bb89c3d6e5580b8a5f0be9f5358d5a04ef0a6be865532
8886e1e0558153a0608a867fac3de2538a846f5304d786daa03d8a86d7f0a60901010101010101
0000000101010101010101010101010101010101010101010101010160e9eac448eae18eebe193
eab1a5c2609fc249a9c2dba543929cc27f55c28b86ec84acec80c8a7c980c2d588a1729cafeb9c
695d536985a06864d73f78c81024d768edc8c68cc81b7bd78ced94af8cd7ee0880a1eda0b252bd
1b0da77b8c851b22b2dcad7b2446ed7b221c08ad0d87a3dc89d47b9e748c8f3f3f7221215d21a3
eebf160d91dfc691df684622680101010101010100000001010101010101010101010101010101
01010101010101010105afe3e3e3e3e3e3cbdec750151a1ae4e41ae59bae1ae4e4e407aee4e4ae
e4e41e07b6391ec797e4aee4e4e4e40f2a11590707aae4e4e407070ab3b3b35959b359b3b3c34a
b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b3b0e6b3e6b3b3b3b700e7b3b3b3b3b3c1b3b3b3
b3b3e6e6d8d8bbd8d8d8716646e818d8b3b3d8c1b3b3e63e6a6a6a6a6a16a40852010101010101
010000000101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010186d601010101010101010101
010101010101010101010101010101010101878d01010101010101010101010101010101010101
01010101010101015b7a5c01010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101000000010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010186d60101010101010101010101010101010101010101010101010101010185
5a010101010101010101010101010101010101010101010101010101b898340101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010100000001010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010186d6010101010101010101
01010101010101010101010101010101010101855a010101010101010101010101010101010101
01010101010101010165d00e010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010000000101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010186d601010101010101010101010101010101010101010101010101010101
855a01010101010101010101010101010101010101010101010101010165820101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101000000010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101a6d60101010101010101
0101010101010101010101010101010101010101855a0101010101010101010101010101010101
01010101010101010101bc82010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010100000001010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101dbd6010101010101010101010101010101010101010101010101010101
01855f010101010101010101010101010101010101010101010101010101db8201010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010000000101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101dbd601010101010101
010101010101010101010101010101010101010101852801010101010101010101010101010101
010101010101010101010165820101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101000000010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101dbd60101010101010101010101010101010101010101010101010101
010185aa0101010101010101010101010101010101010101010101010101016582010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010100000001010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101dbd6010101010101
0101010101010101010101010101010101010101010185aa010101010101010101010101010101
010101010101010101010101658201010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010000000101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101041101010101010101010101010101010101010101010101010101
8be00185aa010101010101010101010101010101010101010101010101e1e25568820101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101000000010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010186d80101010101
0101010101010101010101010101010101010101d326dd87aa0101010101010101010101010101
01010101010101c8de2e000056dfd00e0101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010100000001010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010186d8014901010101010101010101010101010101010101010101
dc00009d31aa010101010101010101010101010101010101010101b1980000679c458201010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010000000101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010186d8329a8901
01010101010101010101010101010101010101a9d900006310aa01010101010101010101010101
010101010101da19b95f0042db01d2820101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101000000010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101019cd307002ed4a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5a5d585
9700002e0dc0d60101010101010101010101010101010181746d0a9c0ed7aa4101016082010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010100000001010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101c49d000000
009d0d1d3997cd0f1f6aa4a41762077696cea32e0000cf5fd00010010101010101010101010101
011377d1381b410101010134010101d28201010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010000000101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101805062000000009822c83501010101010101010101069f83
00006c86016050b50101010101010101010101c9cacbccba010101010101010101010145820101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101000000010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101015d0801c5
61000000170e010101010101010101010101180000610d010101c65a0101010101010101c474c7
398f0b010101010101010101010101014582010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010100000001010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101015d080101a200000000660101010101010101010101a100
0000c101010101648d01010101013ac2c37e10c401010101010101010101010101010101458201
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010000000101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101010101010101010101010101010101010101015d0801
0101bf610000006b33010101010101010180560000c03a010101010d5a01010149917e3b3d0e01
010101010101010101010101010101010145820101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101000000010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101015d0801010101ad00000000bb3a010101010101bc6700
006c780101010101875a01bd515008be0101010101010101010101010101010101010101014582
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010100000001010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101015d08
0101010101b700000000593301010101b8b900004a24780101010101685f01abba010101010101
010101010101010101010101010101010101458201010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010000000101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0101010101010101010101010101010101015d0801010101014f697a000000b512010101b60000
56a5ac7b0101010101ad1401010101010101010101010101010101010101010101010101010145
820101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101000000010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101010101015d
0801010101014f01af610000002a6e01910000000d01aca10101010101adaa0101010101010101
0101010101010101010101010101010101010145366b1f1f1f1f1f1f1f1f1f1f1f1f1f6bb00ab3
200a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a0a630ab40101010101010101010100000001010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101015d0801010101014f0101872e000000aeaf610000
b00101ac780101010101adaa010101010101010101010101010101010101010101010101010101
b14f54a4a416a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4a4316821216887b2b2b2b2b2b2b2b2
b2434e010101010101010101010000000101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
5d0801010101014f010101ab560000000000009b350101ac720101010101adaa01010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101000000010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101015d0801010101010d010101018f2e00000000a8
32010101a9a1010101010122aa0101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
019c9d9e32338148052d9f8f8f9c200000000090a0a1a2a368a3a4a5a6a7759a5d010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010000000101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101012b6d0000004b96967e5f5f970000000000
00002e98002e5699449a9a9b490101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101000000010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101330b0b0b0b19925c050191000000610000006d93945195010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010100000001
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101018f318c87206100009091
26000000003c5e3f01010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010000000101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010133806001013b8788893600004a8a8b8c000000008d6d8e0101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101000000
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101010101010101010101012f685a7e7f0101808104820000835384
8484854b0000006186010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010100000001010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
0135775147172b0101010178227900007a1f7b1d1d1c237c7d000000234e010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010000
000101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101336f2970713d0e010101010101727300000074243e
757575757563560000007658010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101000000010101010101010101010101010101010101
01010101010101010101010101010101010101010101010101010101010101010101010140645f
3c0365010101010101010101660000006768690d6a1721176b6b4c6c0000006d6e010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010100
000001010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010101010101015c5d5e5f0d600101010101010101010101526100005f626262
626262626262626262630000004232010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010000000101010101010101010101010101010101
01010101010101010101010101010101010101010101324f5051520e01010101532947542b0101
010101010101010101010155560000575801010101010101010101010133590000005a5b010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
000000010101010101010101010101010101010101010101010101010101010101010101010101
01010244000000003b014546473948130101010101010101010101010101494a00004b2b010101
01010101010101010101010e4c0000004d4e010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010100000001010101010101010101010101010101
010101010101010101010101010101010101010101013c0000000000003d3e3f40010101010101
01010101010101010101414200002e430101010101010101010101010101010133190000111201
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010000000101010101010101010101010101010101010101010101010101010101010101010101
010135360037380000001601010101010101010101010101010101010112390000002201010101
01010101010101010101010101013a3b1a0b010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101000000010101010101010101010101010101
01010101010101010101010101010101010101010101062e002f30000000310101010101010101
01010101010101010101322a00002a33010101010101010101010101010101010101010e340101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010100000001010101010101010101010101010101010101010101010101010101010101010101
010101012800292a0000002b01010101010101010101010101010101010101012c152d01010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010000000101010101010101010101010101
010101010101010101010101010101010101010101010101252600000000270101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101000000010101010101010101010101010101010101010101010101010101010101010101
010101010101202122222324010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010100000001010101010101010101010101
01010101010101010101010101010101010101010101010101011a1b1c1d1e1f01010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010000000101010101010101010101010101010101010101010101010101010101010101
010101010101011501010108190101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101000000010101010101010101010101
010101010101010101010101010101010101010101010101010101150101010819010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010100000001010101010101010101010101010101010101010101010101010101010101
010101010101010115010101081901010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010000000101010101010101010101
010101010101010101010101010101010101010101010101010101011501010108190101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101000000010101010101010101010101010101010101010101010101010101010101
010101010101010101150101010818010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010105010101010101
010101010101010101010101010101010101010101010101010100000001010101010101010101
010101010101010101010101010101010101010101010501010101010115010101081701010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010000000101010101010101010101010101010101010101010101010101010101
010101010101010101011501010108160101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101000000010101010101010101
010101010101010101010101010101010101010101010113010101010101140101010810010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
01010101010101010e0e0101010101010101010501010101010101050101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010100000001010101010101010101010101010101010101010101010101010101
010101010101010101010111010101081001010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010105010101010101010101010101
010101010101010101010101010101010101120e01010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010000000101010101010101
010101010101010101010101010101010101010101010101010101010101010a01010108100101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101050101010101010101010101010101010101010101010101010101010101010101
010101010101010101000000010101010101010101010101010101010101010101010101010101
0101010101050101010101010a0101010810010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010100000001010101010101
01010101010101010101010101010101010101010101010101010101010101010a010101081001
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010000000101010101010101010101010101010101010101010101010101
010101010101010101010101010a01010108100101010101010101010505010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101000000010101010101
01010101010101010101010101010101010101010101010101010101010101010e0f0101010810
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010100000001010101010101010101010101010101010101010101010101
01010101010101010101010101010a010101080d01010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010000000101010101
010101010101010101010101010101010101010101010101010101010101010101050c01010108
090101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101000000010101010101010101010101010101010101010101010101
0101010101010101010101010101010a0101010809010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010b01010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010100000001010101
010101010101010101010101010101010101010101010101010101010101010101010607010101
080901010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010000000101010101010101010101010101010101010101010101
010101010101010101010101010101010201010103040101010101010101010101010101010101
010101010101050101050101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101000000010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010100000001010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010000000101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101000000010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010100000001
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010101010101010101010101010101010101010101010101
010101010101010101010101010101010000000c00000040092900aa000000000000004e009200
00000000040000002701ffff030000000000
}}



Here is the Code I have so far
 
Private Sub PDFSelectedRecordToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles PDFSelectedRecordToolStripMenuItem.Click
        'Open Save Dialog
        Dim saveFileDialog1 As New SaveFileDialog()
        Dim filename As String

        saveFileDialog1.Filter = "PDF files (*.PDF)|*.PDF"
        saveFileDialog1.FilterIndex = 2
        saveFileDialog1.RestoreDirectory = True

        If saveFileDialog1.ShowDialog() = DialogResult.OK Then
            filename = saveFileDialog1.FileName
        Else
            Exit Sub 'exit if cancel is clicked
        End If

        ' Create a new PDF document
        Dim document As PdfDocument = New PdfDocument

        ' Create an empty page
        Dim page As PdfPage = document.AddPage
        page.Orientation = PageOrientation.Landscape
        page.Size = PageSize.A4
        page.TrimMargins.Top = 0
        page.TrimMargins.Right = 0
        page.TrimMargins.Bottom = 0
        page.TrimMargins.Left = 0


        ' Get an XGraphics object for drawing
        Dim gfx As XGraphics = XGraphics.FromPdfPage(page)

   
        Dim tf As New XTextFormatter(gfx)
        tf.Alignment = XParagraphAlignment.Left
 

        Dim startIndex As Integer = 0
        Dim textLength As Integer = rtxtp_Notes.Text.Length
        Dim x2 As Single = 10 'Lefthand margin
        Dim y2 As Single = 10 'start top
       



        For i As Integer = startIndex To startIndex + textLength - 1
            rtxtp_Notes.Select(i, 1)
 
            Dim font As XFont


            If rtxtp_Notes.SelectedRtf.Contains("\par" & vbCrLf & "}") Then ' Carriage Return
                x2 = 10
                font = New XFont(rtxtp_Notes.SelectionFont.Name, rtxtp_Notes.SelectionFont.Size, rtxtp_Notes.SelectionFont.Style)
                y2 += gfx.MeasureString(rtxtp_Notes.SelectedText, font).Height
            Else

                If rtxtp_Notes.SelectedRtf.Contains("\pict\wmetafile8\") Then
                    


               'Here is where the Problem is
			   'Being able extract the image from the RTF string
			   'and 
			   '    gfx.DrawImage(????, x2, y2, 100, 100)
			   
			  'Into the ODF a a image










                    If rtxtp_Notes.SelectedRtf.ToString.Contains(" }") Then
                        font = New XFont(rtxtp_Notes.SelectionFont.Name, rtxtp_Notes.SelectionFont.Size, rtxtp_Notes.SelectionFont.Style)
                        tf.DrawString(" ", font, XBrushes.Black, _
            New XRect(x2, y2, page.Width.Point - 20, page.Height.Point - 180), XStringFormats.TopLeft)
                        x2 += gfx.MeasureString("i", font).Width' Just Give a standard space between words
                    Else
                        font = New XFont(rtxtp_Notes.SelectionFont.Name, rtxtp_Notes.SelectionFont.Size, rtxtp_Notes.SelectionFont.Style)
                        tf.DrawString(rtxtp_Notes.SelectedText, font, XBrushes.Black, _
            New XRect(x2, y2, page.Width.Point - 20, page.Height.Point - 180), XStringFormats.TopLeft)
                        x2 += gfx.MeasureString(rtxtp_Notes.SelectedText, font).Width
                    End If






                End If

            End If



        Next




        Try

            ' Save the document...
            document.Save(filename)

            ' ...and start a viewer.
            Process.Start(filename)
        Catch
            MessageBox.Show("Data Only .pdf is open - Please close before trying again", "PDF Document Open", MessageBoxButtons.OK, MessageBoxIcon.Error)
        End Try


    End Sub




I have search & searched for a answer but with no result.

Maybe I should of came here first.

Is This A Good Question/Topic? 0
  • +

Replies To: RichTextBox RTF to PDF (PDFSharp)

#2 KKUser  Icon User is offline

  • New D.I.C Head

Reputation: 1
  • View blog
  • Posts: 27
  • Joined: 10-November 13

Re: RichTextBox RTF to PDF (PDFSharp)

Posted 03 June 2014 - 10:40 AM

I am assuming this is question to far.

Has anyone got something similar that I could modify to make it work?
Was This Post Helpful? 0
  • +
  • -

#3 thecoat  Icon User is offline

  • D.I.C Regular

Reputation: 81
  • View blog
  • Posts: 288
  • Joined: 07-December 13

Re: RichTextBox RTF to PDF (PDFSharp)

Posted 03 June 2014 - 02:16 PM

Based on this:

        Dim document As PdfDocument = New PdfDocument



I'm thinking you are using a third party library?
Was This Post Helpful? 0
  • +
  • -

#4 KKUser  Icon User is offline

  • New D.I.C Head

Reputation: 1
  • View blog
  • Posts: 27
  • Joined: 10-November 13

Re: RichTextBox RTF to PDF (PDFSharp)

Posted 04 June 2014 - 11:20 AM

I am using PDFSharp & have good results with simular projects (& it free)
Was This Post Helpful? 0
  • +
  • -

Page 1 of 1